CV / YOLOX
YOLOX
reComputer R Series (CM5 + Hailo-10H)
reComputer RK3576、RK3588、および Hailo-8 または Hailo-10H 搭載の CM5 で YOLOX の COCO 物体検出を実行します。
207 ダウンロード
サイズ
5.5 MBメモリ
4GB+精度
RKNN / Hailo HEF使用しているデバイスを選択してください。セットアップガイドとドキュメントがそれに応じて更新されます。
はじめる
デプロイ
sudo docker run --rm \
--name cm5-hailo10h-yolox-tiny \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.5.1.1:/usr/lib/libhailort.so.5.1.1:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo10h-cv/yolox_tiny:latest \
python web_detection.py --model_path model/yolox_tiny.hef --video_path video/test.mp4REST API
REST API を使用して推論を実行します。以下のコマンドをコピーしてください。
Curl
curl http://localhost:8080/v1/chat/completions -d '{
"model": "yolox-rknn",
"messages": [{"role": "user", "content": "Hello"}]
}'Python
import requests
resp = requests.post(
"http://localhost:8080/v1/chat/completions",
json={"model": "yolox-rknn", "messages": [{"role": "user", "content": "Hello"}]},
)
print(resp.json())モデル詳細
reComputer R Series (CM5 + Hailo-10H)reComputer R Series(CM5 + Hailo-10H)上の YOLOX
Hailo-10H の YOLOX サービスは、オンチップの Hailo HPP NMS による COCO 80 クラスの物体検出を提供します。HEF はデコード済みの検出結果を出力し、FastAPI アプリが画像推論、映像・カメラ入力、MJPEG プレビュー、オフライン映像解析を提供します。
モデル情報
| バリアント | 入力 | 同梱 HEF | コンテナイメージ |
|---|---|---|---|
| YOLOX-Tiny | 416x416x3 RGB | 8,880,128 bytes | yolox_tiny |
| YOLOX-S-Leaky | 640x640x3 RGB | 14,520,320 bytes | yolox_s_leaky |
| YOLOX-L-Leaky | 640x640x3 RGB | 48,189,440 bytes | yolox_l_leaky |
3 つのバリアントはいずれも Hailo Model Zoo v5.4.0 の Hailo-10H HEF を使用します(バイト数は上の表を参照)。
ハードウェアとホスト設定
| 項目 | 値 |
|---|---|
| ボード | reComputer R Series(Raspberry Pi CM5 搭載) |
| アクセラレータ | PCIe 接続の Hailo-10H(/dev/hailo0) |
| ランタイム | HailoRT 5.1.1 |
| コンテナ内 Python | 3.13, aarch64 |
ホストのドライバー、ファームウェア、ネイティブ HailoRT ライブラリ、コンテナ内の Python wheel は同じ HailoRT のメジャー/マイナーである必要があります。
bash
sudo apt update
sudo apt install hailo-h10-all -y
sudo reboot
# 再起動後
hailortcli --version
hailortcli fw-control identify
ls -l /dev/hailo0同梱デモ映像での実行
YOLOX-Tiny
bash
sudo docker run --rm --privileged --net=host \
--name cm5-hailo10h-yolox-tiny \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.5.1.1:/usr/lib/libhailort.so.5.1.1:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo10h-cv/yolox_tiny:latest \
python web_detection.py --model_path model/yolox_tiny.hef --video_path video/test.mp4YOLOX-S-Leaky
bash
sudo docker run --rm --privileged --net=host \
--name cm5-hailo10h-yolox-s-leaky \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.5.1.1:/usr/lib/libhailort.so.5.1.1:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo10h-cv/yolox_s_leaky:latest \
python web_detection.py --model_path model/yolox_s_leaky.hef --video_path video/test.mp4YOLOX-L-Leaky
bash
sudo docker run --rm --privileged --net=host \
--name cm5-hailo10h-yolox-l-leaky \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.5.1.1:/usr/lib/libhailort.so.5.1.1:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo10h-cv/yolox_l_leaky:latest \
python web_detection.py --model_path model/yolox_l_leaky.hef --video_path video/test.mp4http://<BOARD_IP>:8000 を開くと Web プレビューが表示されます。
REST API
各バリアントは個別の予測エンドポイントを提供します:
| バリアント | エンドポイント |
|---|---|
| YOLOX-Tiny | POST /api/models/yolox_tiny/predict |
| YOLOX-S-Leaky | POST /api/models/yolox_s_leaky/predict |
| YOLOX-L-Leaky | POST /api/models/yolox_l_leaky/predict |
bash
curl -X POST "http://<BOARD_IP>:8000/api/models/yolox_tiny/predict" \
-F "file=@test.jpg"レスポンスには COCO クラス ID、信頼度、バウンディングボックスが含まれます。
開発メモ
| バリアント | ソース | Dockerfile |
|---|---|---|
| YOLOX-Tiny | src/hailo10h_yolox_tiny/ | docker/hailo10h/yolox_tiny.dockerfile |
| YOLOX-S-Leaky | src/hailo10h_yolox_s_leaky/ | docker/hailo10h/yolox_s_leaky.dockerfile |
| YOLOX-L-Leaky | src/hailo10h_yolox_l_leaky/ | docker/hailo10h/yolox_l_leaky.dockerfile |
入力と出力
Input: image, video frame, or camera frame. Output: COCO classes, confidence scores, and boxes.