yolo-detection-2026-openvino
GitHub基于 OpenVINO 的实时目标检测技能,通过 Docker 支持 NCS2、Intel GPU/CPU 等多平台硬件加速。自动下载并转换 YOLO 模型,提供标准化 JSONL 接口实现跨设备推理。
Trigger Scenarios
Install
npx skills add SharpAI/DeepCamera --skill yolo-detection-2026-openvino -g -y
SKILL.md
Frontmatter
{
"icon": "assets\/icon.png",
"name": "yolo-detection-2026-openvino",
"entry": "scripts\/detect.py",
"mutex": "detection",
"deploy": "deploy.sh",
"runtime": "docker",
"version": "1.0.0",
"category": "detection",
"parameters": [
{
"name": "auto_start",
"type": "boolean",
"group": "Lifecycle",
"label": "Auto Start",
"default": false,
"description": "Start this skill automatically when Aegis launches"
},
{
"max": 1,
"min": 0.1,
"name": "confidence",
"type": "number",
"group": "Model",
"label": "Confidence Threshold",
"default": 0.5,
"description": "Minimum detection confidence (0.1–1.0)"
},
{
"name": "classes",
"type": "string",
"group": "Model",
"label": "Detect Classes",
"default": "person,car,dog,cat",
"description": "Comma-separated COCO class names (80 classes available)"
},
{
"name": "fps",
"type": "select",
"group": "Performance",
"label": "Processing FPS",
"default": 5,
"options": [
0.2,
0.5,
1,
3,
5,
15
],
"description": "Frames per second — OpenVINO on GPU\/NCS2 handles 15+ FPS"
},
{
"name": "input_size",
"type": "select",
"group": "Performance",
"label": "Input Resolution",
"default": 640,
"options": [
320,
640
],
"description": "640 is recommended for GPU\/CPU accuracy, 320 for fastest inference"
},
{
"name": "device",
"type": "select",
"group": "Performance",
"label": "Inference Device",
"default": "AUTO",
"options": [
"AUTO",
"CPU",
"GPU",
"MYRIAD"
],
"description": "AUTO lets OpenVINO pick the fastest available device"
},
{
"name": "precision",
"type": "select",
"group": "Performance",
"label": "Model Precision",
"default": "FP16",
"options": [
"FP16",
"INT8",
"FP32"
],
"description": "FP16 is fastest on GPU\/NCS2; INT8 is fastest on CPU; FP32 is most accurate"
}
],
"description": "OpenVINO — real-time object detection via Docker (NCS2, Intel GPU, CPU)",
"capabilities": {
"live_detection": {
"script": "scripts\/detect.py",
"description": "Real-time object detection via OpenVINO runtime"
}
},
"requirements": {
"docker": ">=20.10",
"platforms": [
"linux",
"macos",
"windows"
]
}
}
OpenVINO Object Detection
Real-time object detection using Intel OpenVINO runtime. Runs inside Docker for cross-platform support. Supports Intel NCS2 USB stick, Intel integrated GPU, Intel Arc discrete GPU, and any x86_64 CPU.
Requirements
- Docker Desktop 4.35+ (all platforms)
- Optional hardware: Intel NCS2 USB, Intel iGPU, Intel Arc GPU
- Falls back to CPU if no accelerator present
How It Works
┌─────────────────────────────────────────────────────┐
│ Host (Aegis-AI) │
│ frame.jpg → /tmp/aegis_detection/ │
│ stdin ──→ ┌──────────────────────────────┐ │
│ │ Docker Container │ │
│ │ detect.py │ │
│ │ ├─ loads OpenVINO IR model │ │
│ │ ├─ reads frame from volume │ │
│ │ └─ runs inference on device │ │
│ stdout ←── │ → JSONL detections │ │
│ └──────────────────────────────┘ │
│ USB ──→ /dev/bus/usb (NCS2) │
│ DRI ──→ /dev/dri (Intel GPU) │
└─────────────────────────────────────────────────────┘
- Aegis writes camera frame JPEG to shared
/tmp/aegis_detection/volume - Sends
frameevent via stdin JSONL to Docker container detect.pyreads frame, runs inference via OpenVINO- Returns
detectionsevent via stdout JSONL - Same protocol as
yolo-detection-2026— Aegis sees no difference
Platform Setup
Linux
# Intel GPU and NCS2 auto-detected via /dev/dri and /dev/bus/usb
# Docker uses --device flags for direct device access
./deploy.sh
macOS (Docker Desktop 4.35+)
# Docker Desktop USB/IP handles NCS2 passthrough
# CPU fallback always available
./deploy.sh
Windows
# Docker Desktop 4.35+ with USB/IP support
# Or WSL2 backend with usbipd-win for NCS2
.\deploy.bat
Model
Ships without a pre-compiled model by default. On first run, detect.py will auto-download yolo26n.pt and export to OpenVINO IR format. To pre-export:
# Runs on any platform (unlike Edge TPU compilation)
python scripts/compile_model.py --model yolo26n --size 640 --precision FP16
Supported Devices
| Device | Flag | Precision | ~Speed |
|---|---|---|---|
| Intel NCS2 | MYRIAD |
FP16 | ~15ms |
| Intel iGPU | GPU |
FP16/INT8 | ~8ms |
| Intel Arc | GPU |
FP16/INT8 | ~4ms |
| Any CPU | CPU |
FP32/INT8 | ~25ms |
| Auto | AUTO |
Best | Auto |
Protocol
Same JSONL as yolo-detection-2026:
Skill → Aegis (stdout)
{"event": "ready", "model": "yolo26n_openvino", "device": "GPU", "format": "openvino_ir", "classes": 80}
{"event": "detections", "frame_id": 42, "camera_id": "front_door", "objects": [{"class": "person", "confidence": 0.85, "bbox": [100, 50, 300, 400]}]}
{"event": "perf_stats", "total_frames": 50, "timings_ms": {"inference": {"avg": 8.1, "p50": 7.9, "p95": 10.2}}}
Bounding Box Format
[x_min, y_min, x_max, y_max] — pixel coordinates (xyxy).
Installation
./deploy.sh
The deployer builds the Docker image locally, probes for OpenVINO devices, and sets the runtime command. No packages pulled from external registries beyond Docker base images and pip dependencies.
Version History
- 2264fcb Current 2026-08-20 16:02


