CV / DAMO-YOLO
DAMO-YOLO
DAMO-YOLO(T/S/Mバリアント)によるreComputer Rシリーズ上のHailo-8またはHailo-10H向けCOCO 80クラス物体検出。
161 ダウンロード
サイズ
8.8 MBメモリ
4GB+精度
Hailo HEF / HailoRT 4.23.x (Hailo-8) / 5.1.1 (Hailo-10H)使用しているデバイスを選択してください。セットアップガイドとドキュメントがそれに応じて更新されます。
はじめる
デプロイ
sudo docker run --rm \
--name cm5-hailo8-damoyolo-l20t \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.4.23.0:/usr/lib/libhailort.so.4.23.0:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo8-cv/damoyolo_tinynas_l20_t:latest \
python web_detection.py --model_path model/damoyolo_tinynas_l20_t.hef --video_path video/test.mp4モデル詳細
reComputer R Series (CM5 + Hailo-8)reComputer Rシリーズ(CM5 + Hailo-8)でのDAMO-YOLO
DAMO-YOLOはTinyNASバックボーンとDFLボックス回帰を備えたnanodet_splitヘッドを使用し、HailoRTを介してHailo-8上で80クラスのCOCO物体検出を実行します。1枚のカードからサイズ選択で3つのバリアントを切り替えられます。
このページは、PCIe Hailo-8アクセラレータを搭載した reComputer Rシリーズ(CM5 + Hailo-8) を対象としています。
モデル情報
| バリアント | パラメータ数 | 演算量 | mAP(COCO) | 同梱 HEF |
|---|---|---|---|---|
| T (tinynasL20) | 11.35M | 18.0G | 42.8 | 8.8 MB |
| S (tinynasL25) | 16.25M | 37.6G | 46.5 | 14 MB |
| M (tinynasL35) | 33.98M | 61.6G | 49.7 | 27 MB |
| 項目 | 値 |
|---|---|
| タスク | 物体検出 |
| 入力 | 640x640x3 RGB(正規化は no-op、生の uint8) |
| 出力 | 6 ヘッド:box(80x80x68、40x40x68、20x20x68)+ cls(80x80x81、40x40x81、20x20x81) |
| クラス | 80(COCO) |
| 後処理 | nanodet_split(DFL、regression_length=16)、オンチップ sigmoid のみ |
| HEF | Hailo Model Zoo v2.19.0、Hailo-8 |
精度値はHailo Model Zooの参考値であり、CM5で測定したベンチマークではありません。
ハードウェアとホストの設定
| 項目 | 値 |
|---|---|
| ボード | reComputer R Series(Raspberry Pi CM5) |
| アクセラレータ | Hailo-8、PCIe 経由、/dev/hailo0 として認識 |
| ランタイム | HailoRT 4.23.x |
| コンテナ内 Python | 3.11、aarch64 |
bash
sudo apt update
sudo apt install hailo-all
sudo reboot
# After reboot
hailortcli fw-control identify
ls /dev/hailo0
# Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun
sudo systemctl enable docker
sudo systemctl start dockerデモ動画で実行
バリアントに対応するコマンドを選択してください。
DAMO-YOLO T (tinynasL20)
bash
sudo docker run --rm \
--name cm5-hailo8-damoyolo-l20t \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.4.23.0:/usr/lib/libhailort.so.4.23.0:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo8-cv/damoyolo_tinynas_l20_t:latest \
python web_detection.py --model_path model/damoyolo_tinynas_l20_t.hef --video_path video/test.mp4DAMO-YOLO S (tinynasL25)
bash
sudo docker run --rm \
--name cm5-hailo8-damoyolo-l25s \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.4.23.0:/usr/lib/libhailort.so.4.23.0:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo8-cv/damoyolo_tinynas_l25_s:latest \
python web_detection.py --model_path model/damoyolo_tinynas_l25_s.hef --video_path video/test.mp4DAMO-YOLO M (tinynasL35)
bash
sudo docker run --rm \
--name cm5-hailo8-damoyolo-l35m \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.4.23.0:/usr/lib/libhailort.so.4.23.0:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo8-cv/damoyolo_tinynas_l35_m:latest \
python web_detection.py --model_path model/damoyolo_tinynas_l35_m.hef --video_path video/test.mp4http://<Board_IP>:8000を開いてWebプレビューを確認します。
USBカメラモード(Sバリアントの例)
bash
sudo docker run --rm \
--name cm5-hailo8-damoyolo-l25s \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
--device /dev/video0:/dev/video0 \
-v /usr/lib/libhailort.so.4.23.0:/usr/lib/libhailort.so.4.23.0:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo8-cv/damoyolo_tinynas_l25_s:latest \
python web_detection.py --model_path model/damoyolo_tinynas_l25_s.hef --camera_id 0REST API
bash
curl -X POST "http://<Board_IP>:8000/api/models/damoyolo_tinynas_l25_s/predict" \
-F "file=@test.jpg"| エンドポイント | メソッド | 用途 |
|---|---|---|
/api/models/damoyolo_tinynas_<variant>/predict | POST | 検出結果(JSON) |
/api/video_feed | GET | MJPEG プレビュー |
/api/config | GET / POST | 信頼度しきい値 |
開発情報
- ソースモジュール:
src/rpi5_hailo8_damoyolo_tinynas_l20_t/、..._l25_s/、..._l35_m/ - Dockerfile:
docker/hailo8/damoyolo_tinynas_l*.dockerfile - コンテナイメージ:
ghcr.io/seeed-projects/recomputer-hailo8-cv/damoyolo_tinynas_l{20_t,25_s,35_m}:latest - 3 つのバリアントすべてで同じ nanodet_split CPU デコードを使用 — 異なるのはバックボーン(TinyNAS-L20/L25/L35)のみです。
- HEF:Hailo Model Zoo v2.19.0 の hailo8 ビルド。
入力と出力
入力:画像、動画、USBカメラフレーム。出力:信頼度付きCOCO 80クラス検出ボックスと注釈付きMJPEGプレビュー。