Airborne Object Detection on reComputer RK3576
VisDrone-trained YOLOv8s for aerial object detection on RK3576, supporting 11 airborne classes including pedestrian, vehicle, and cyclist.
Airborne Object Detection on reComputer RK3576
VisDrone-trained YOLOv8s for aerial object detection on RK3576, supporting 11 airborne classes.
Source code: https://github.com/inteintegrity/rk3576-airborne-detection
Quick Start
Pull the project image via Docker
docker pull ghcr.io/seeed-projects/recomputer-rk-cv/rk3576-yolov8_airborne:latestTest the model effect using the built-in example
sudo docker run --rm --privileged --net=host \
-e PYTHONUNBUFFERED=1 \
-e RKNN_LOG_LEVEL=0 \
--device /dev/video0:/dev/video0 \
--device /dev/dri/renderD128:/dev/dri/renderD128 \
-v /proc/device-tree/compatible:/proc/device-tree/compatible \
ghcr.io/seeed-projects/recomputer-rk-cv/rk3576-yolov8_airborne:latest \
python3 web_detection.py --model_path model/yolov8s_airborne.rknn --video video/test.mp4After the project runs successfully, go to http://<board_ip>:8000/ to view the real-time inference effect.
11 VisDrone Aerial Classes
| Class | Description |
|---|---|
| pedestrian | Walking person |
| people | Group of people |
| bicycle | Bicycle |
| car | Passenger car |
| van | Van |
| truck | Truck |
| tricycle | Tricycle |
| awning-tricycle | Tricycle with awning |
| bus | Bus |
| motor | Motorcycle |
| others | Other objects |
Calling the Camera for Real-time Inference
sudo docker run --rm --privileged --net=host \
-e PYTHONUNBUFFERED=1 \
-e RKNN_LOG_LEVEL=0 \
--device /dev/video0:/dev/video0 \
--device /dev/dri/renderD128:/dev/dri/renderD128 \
-v /proc/device-tree/compatible:/proc/device-tree/compatible \
ghcr.io/seeed-projects/recomputer-rk-cv/rk3576-yolov8_airborne:latest \
python3 web_detection.py --model_path model/yolov8s_airborne.rknn --camera_id 0AI Inference Extensions
Inference Engine: Wrapped based on the RKNN C API, supporting RK3576 NPU hardware acceleration for YOLOv8s airborne detection. Model Input: Accepts the yolov8s_airborne.rknn quantized model with a fixed input size of 640×640. Post-processing: YOLOv8 DFL-based box decoding and NMS, with 11 VisDrone aerial classes.
Deployment Recommendations
Runtime Permissions: Must use the --privileged container mode and explicitly map /dev/video*, /dev/dri/renderD* (for RGA), and the device tree compatibility file.
Image Packaging: The image already includes all dependencies (RKNN Runtime, OpenCV, FastAPI). Use --net=host to avoid port mapping complexity.
Custom Classes: Add --class_path class_config.txt to override the default 11 VisDrone classes.