docs/content/features/object-detection.md
+++ disableToc = false title = "Object Detection" weight = 13 url = "/features/object-detection/" +++
LocalAI supports object detection through various backends. This feature allows you to identify and locate objects within images with high accuracy and real-time performance. Currently, RF-DETR is available as an implementation.
Object detection in LocalAI is implemented through dedicated backends that can identify and locate objects within images. Each backend provides different capabilities and model architectures.
Key Features:
/v1/detection endpointLocalAI provides a dedicated /v1/detection endpoint for object detection tasks. This endpoint is specifically designed for object detection and returns structured detection results with bounding boxes and confidence scores.
To perform object detection, send a POST request to the /v1/detection endpoint:
curl -X POST http://localhost:8080/v1/detection \
-H "Content-Type: application/json" \
-d '{
"model": "rfdetr-base",
"image": "https://media.roboflow.com/dog.jpeg"
}'
The request body should contain:
model: The name of the object detection model (e.g., "rfdetr-base")image: The image to analyze, which can be:
The API returns a JSON response with detected objects:
{
"detections": [
{
"x": 100.5,
"y": 150.2,
"width": 200.0,
"height": 300.0,
"confidence": 0.95,
"class_name": "dog"
},
{
"x": 400.0,
"y": 200.0,
"width": 150.0,
"height": 250.0,
"confidence": 0.87,
"class_name": "person"
}
]
}
Each detection includes:
x, y: Coordinates of the bounding box top-left cornerwidth, height: Dimensions of the bounding boxconfidence: Detection confidence score (0.0 to 1.0)class_name: The detected object classThe RF-DETR backend is implemented as a Python-based gRPC service that integrates seamlessly with LocalAI. It provides object detection capabilities using the RF-DETR model architecture and supports multiple hardware configurations:
Using the Model Gallery (Recommended)
The easiest way to get started is using the model gallery. The rfdetr-base model is available in the official LocalAI gallery:
# Install and run the rfdetr-base model
local-ai run rfdetr-base
You can also install it through the web interface by navigating to the Models section and searching for "rfdetr-base".
Manual Configuration
Create a model configuration file in your models directory:
name: rfdetr
backend: rfdetr
parameters:
model: rfdetr-base
Currently, the following model is available in the [Model Gallery]({{%relref "features/model-gallery" %}}):
You can browse and install this model through the LocalAI web interface or using the command line.
curl -X POST http://localhost:8080/v1/detection \
-H "Content-Type: application/json" \
-d '{
"model": "rfdetr-base",
"image": "https://example.com/image.jpg"
}'
base64_image=$(base64 -w 0 image.jpg)
curl -X POST http://localhost:8080/v1/detection \
-H "Content-Type: application/json" \
-d "{
\"model\": \"rfdetr-base\",
\"image\": \"data:image/jpeg;base64,$base64_image\"
}"
Model Loading Errors
Low Detection Accuracy
Slow Performance
Enable debug logging for troubleshooting:
local-ai run --debug rfdetr-base
LocalAI includes a dedicated object-detection category for models and backends that specialize in identifying and locating objects within images. This category currently includes:
Additional object detection models and backends will be added to this category in the future. You can filter models by the object-detection tag in the model gallery to find all available object detection models.