1
0
mirror of https://github.com/imgproxy/imgproxy.git synced 2025-01-03 10:43:58 +02:00
imgproxy/docs/object_detection.md
Travis-Turner c51521961f
Docs/edits overhaul (#785)
* Update landing page / README.md

* Update GETTING_STARTED.md

* Update installation.md

* Update getting_the_image_info.md

* update signing_the_url.md

* Update watermark.md

* Update presets.md

* Update object_detection.md

* Update autoquality.md

* Update serving_local_files.md

* Update docs/serving_files_from_s3.md

* Update configuration.md

* Update generating_the_url.md

* Update chained_pipelines.md but chained pipelines section is not finished

* Update serving_files_from_google_cloud_storage.md

* Update new_relic.md

* Update prometheus.md

* Update datadog.md

* Update image_formats_support.md

* Update about_processing_pipeline.md

* Update healthcheck.md

* Update memory_usage_tweaks.md

* Remove GIF/ICO/BMP/HEIF/AVIF support sections from docs/image_formats_support.md

* Minor fixes of the docs

* Update serving_files_from_azure_blob_storage.md

* Fix issue with x and y offset for 're' watermark property

* Fix params description in docs/watermark.md

* Fix Alexander Madyankin GH name

* Special thanks to Travis

* Fix README

Co-authored-by: DarthSim <darthsim@gmail.com>
2022-02-01 15:43:36 +06:00

1.9 KiB

Object detection

imgproxy can detect objects on the image and use them for smart cropping, bluring the detections, or drawing the detections.

For object detection purposes, imgproxy uses the Darknet YOLO model. We provide Docker images with a model trained for face detection, but you can use any Darknet YOLO model found in the zoo or you can train your own model by following this guide.

Configuration

You need to define four config variables to enable object detection:

  • IMGPROXY_OBJECT_DETECTION_CONFIG: a path to the neural network config
  • IMGPROXY_OBJECT_DETECTION_WEIGHTS: a path to the neural network weights
  • IMGPROXY_OBJECT_DETECTION_CLASSES: a path to the text file with the classes names, one per line
  • IMGPROXY_OBJECT_DETECTION_NET_SIZE: the size of the neural network input. The width and the heights of the inputs should be the same, so this config value should be a single number. Default: 416

Read the configuration guide for more config values info.

Usage examples

Object-oriented crop

You can crop your images and keep objects of desired classes in frame:

.../crop:256:256/g:obj:face/...

Bluring detections

You can blur objects of desired classes, thus making anonymization or hiding NSFW content possible:

.../blur_detections:7:face/...

Draw detections

You can make imgproxy draw bounding boxes for the detected objects of the desired classes (this is handy for testing your models):

.../draw_detections:1:face/...