mirror of
https://github.com/imgproxy/imgproxy.git
synced 2024-12-14 10:02:57 +02:00
1.9 KiB
1.9 KiB
Object detection
imgproxy can detect objects on the image and use them for smart crop, bluring the detections, or drawing the detections.
For object detection purposes, imgproxy uses 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 following the guide.
Configuration
You need to define four config variables to enable object detection:
IMGPROXY_OBJECT_DETECTION_CONFIG
: path to the neural network config.IMGPROXY_OBJECT_DETECTION_WEIGHTS
: path to the neural network weights.IMGPROXY_OBJECT_DETECTION_CLASSES
: path to the text file with the classes names, one by 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 for anonymization or hiding NSFW content:
.../blur_detections:7:face/...
Draw detections
You can make imgproxy draw bounding boxes of detected objects of desired classes (handy for testing your models):
.../draw_detections:1:face/...