Skip to main content

Plate Recognizer Blur

Install​

info

If looking to Blur Video Files, use this install guide instead.

1. Install Docker and Compose​

Install Docker and Docker Compose

2. Create Configuration File​

Create a folder with a .env file containing the following contents. Remember to edit TOKEN and LICENSE_KEY.

danger

TOKEN and LICENSE_KEY can be found here.

In case you are using Snapshot Cloud, the LICENSE_KEY must be replaced with your registered email.

# Prefix added to names of docker resources created by compose
COMPOSE_PROJECT_NAME=blur

# Snapshot SDK License Key. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#license_key
LICENSE_KEY=6xD#####

# Snapshot SDK token. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#token
TOKEN=4805bee1222ce85e0b#####################

# Snapshot SDK url. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#sdk_url
# SDK_URL=http://localhost:8080

# Plate blur intensity. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#plates
# PLATES=10

# Face blur intensity. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#faces
# FACES=10

# Blur with logo. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#logo
# LOGO=/logos/logo.png

# Snapshot regions. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#regions
# REGIONS=

# Blur shape. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#shape
# SHAPE=ellipse

# Snapshot engine config. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#config
# CONFIG={\"threshold_d\":0.2,\"threshold_o\":0.6,\"detection_rule\":\"strict\"}

# Skip Plate Regex. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#skip_regexp
# SKIP_REGEXP=

# Camera ID forwarded to Snapshot. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#camera_id
# CAMERA_ID=camera1

# Webp Image output quality. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#webp_quality
# WEBP_QUALITY=100

# Jpeg image output quality. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#jpeg_quality
# JPEG_QUALITY=100

# Png image output compression level. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#png_compression
# PNG_COMPRESSION=9

# Set logging level. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#logging
# LOGGING=20

# Skew correction docker image tag. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#skew_correction_image_tag
SKEW_CORRECTION_IMAGE_TAG=latest

# Copy original image metadata to blurred image. See https://guides.platerecognizer.com/docs/other-apps/blur/configuration#copy_metadata
# COPY_METADATA=false

# Server workers counts. See https://platerecognizer.com/docs/other-apps/blur/configuration#workers
# WORKERS=1

# Server threads count per worker. See https://platerecognizer.com/docs/other-apps/blur/configuration#threads
# THREADS=1

# Resize images larger than resolution. See https://platerecognizer.com/docs/other-apps/blur/configuration#face_max_resolution
# FACE_MAX_RESOLUTION=1280,720

Lines beginning with a '#' are comments and so ignored.

Refer to the configuration options for more details on the configuration options.

3. Docker Compose File​

Add a text file named docker-compose.yml in the same folder with the following content. This step is needed for both Snapshot Cloud API and Snapshot On-premise.

docker-compose.yml
x-logging:
&default-logging
driver: "json-file"
options:
max-size: "100m"
max-file: "5"
mode: non-blocking

services:
skew_correction:
image: platerecognizer/skew-correction:${SKEW_CORRECTION_IMAGE_TAG}
logging: *default-logging
ports:
- "8001:8001"
env_file:
- ./.env
volumes:
- ./logos:/logos

4. Snapshot On-premise Configuration​

Create a file named docker-compose.override.yml in the same folder with the following content.

caution

The docker-compose.yml file from the previous step must also be present. This step is not needed if using Snapshot Cloud.

docker-compose.override.yml

x-logging:
&default-logging
driver: "json-file"
options:
max-size: "100m"
max-file: "5"
mode: non-blocking

services:
skew_correction:
environment:
- SDK_URL=http://snapshot_sdk:8080
depends_on:
snapshot_sdk:
condition: service_healthy

snapshot_sdk:
image: platerecognizer/alpr
volumes:
- snapshot_license:/license
logging: *default-logging
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:8080/info" ]
interval: 5s
timeout: 2s
retries: 10
env_file:
- ./.env

volumes:
snapshot_license:

Run​

Start containers by running the following commands in the same folder with the compose files.

docker compose pull
docker compose up -d
caution

The container captures the values in the .env file on each startup. Any changes made while the container is running will not take effect and require a container rebuild by running below command.

docker compose up --build -d

Check here for blur API reference used to upload images. Check here for how to blur bulk images.

Upgrade​

Open a terminal in the folder with the Compose file and run the following commands:

docker compose pull
docker compose up --build -d
note

An internet connection is required for license verification to run Blur. If your firewall is blocking connections, Whitelist these IPs.

Floating button icon
CTRL + .