CV / YOLOv8

YOLOv8-seg

reComputer R Series (CM5 + Hailo-10H)

reComputer RK3588/RK3576(RKNN)および reComputer R Series(Hailo-8 / Hailo-10H、HailoRT)向け YOLOv8n/s/m インスタンスセグメンテーション

599 ダウンロード
サイズ
~7.2MB
メモリ
1GB+
精度
INT8

使用しているデバイスを選択してください。セットアップガイドとドキュメントがそれに応じて更新されます。

はじめる

デプロイ
sudo docker run --rm \
  --name cm5-hailo10h-yolov8n-seg \
  --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/yolov8n_seg:latest \
  python web_detection.py --model_path model/yolov8n_seg.hef --video_path video/test.mp4

モデル詳細

reComputer R Series (CM5 + Hailo-10H)

YOLOv8-seg を reComputer CM5 + Hailo-10H で実行

YOLOv8n/s/m-seg モデルは HailoRT 5.1.1 を介して Hailo-10H 上で実行されます。HEF は raw ヘッドを 公開します(オンチップ NMS なし)。ホストはボックスヘッド(DFL またはフォールドレイアウト)を デコードし、シグモイド + クラスごとの NMS を適用して、80 COCO クラス向けのプロトタイプマスク (32 係数 × 160×160×32 プロトタイプ、各ボックスにクロップ)を組み立てます。

モデル情報

バリアント入力パッケージ済み HEFコンテナイメージ
YOLOv8n-seg640×640×3 RGB6.1 MByolov8n_seg
YOLOv8s-seg640×640×3 RGB18.6 MByolov8s_seg
YOLOv8m-seg640×640×3 RGB28.9 MByolov8m_seg

ハードウェアとホストのセットアップ

項目値
ボードRaspberry Pi CM5
アクセラレータHailo-10H、/dev/hailo0
ランタイムHailoRT 5.1.1
OSRaspberry Pi OS Bookworm、aarch64
bash
sudo apt update
sudo apt install hailo-h10-all -y
sudo reboot

# After reboot
hailortcli fw-control identify
ls /dev/hailo0

デモ動画で実行

モデルバリアントに対応するコマンドを選択してください。

YOLOv8n-seg

bash
sudo docker run --rm --privileged --net=host \
  --name cm5-hailo10h-yolov8n-seg \
  -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/yolov8n_seg:latest \
  python web_detection.py --model_path model/yolov8n_seg.hef --video_path video/test.mp4

YOLOv8s-seg

bash
sudo docker run --rm --privileged --net=host \
  --name cm5-hailo10h-yolov8s-seg \
  -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/yolov8s_seg:latest \
  python web_detection.py --model_path model/yolov8s_seg.hef --video_path video/test.mp4

YOLOv8m-seg

bash
sudo docker run --rm --privileged --net=host \
  --name cm5-hailo10h-yolov8m-seg \
  -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/yolov8m_seg:latest \
  python web_detection.py --model_path model/yolov8m_seg.hef --video_path video/test.mp4

http://<Board_IP>:8000 を開くと Web プレビューを表示できます。インスタンスマスクとボックスを 重ねた MJPEG ストリームには /api/video_feed を使用します。

REST API

各バリアントには専用のエンドポイントがあります。

バリアントエンドポイント
YOLOv8n-segPOST /api/models/yolov8n_seg/predict
YOLOv8s-segPOST /api/models/yolov8s_seg/predict
YOLOv8m-segPOST /api/models/yolov8m_seg/predict

例:

bash
curl -X POST "http://<Board_IP>:8000/api/models/yolov8n_seg/predict" \
  -F "file=@test.jpg"

レスポンスには class、confidence、box フィールドを持つ predictions エントリが含まれます (box は元フレームのピクセル単位の x1/y1/x2/y2 です)。

期待される結果とよくあるエラー

最初の推論時に、モジュールは読み込まれた vstream リストと、推論タイプごとに 1 行のレイアウト 行を出力します。10 個の出力テンソル、それらの値の範囲、シグモイドが適用されたかどうかです。 期待される内容:3 つのボックスヘッド、3 つの 80 チャネルスコアヘッド、3 つの 32 チャネル マスク係数ヘッド、1 つの 160×160×32 プロトタイプ。マスクがインスタンスに張り付くプレビュー。

症状考えられる原因対処
ログの unexpected output layout異なる HEF コンパイル出力された形状を上記のリストと照合してください。レイアウトを推測しないでください
起動時の HailoRT バージョンエラーホストライブラリが 5.1.1 でないホストに hailo-h10-all をインストールし、コンテナのマウントを libhailort.so.5.1.1 のままにします
docker: container name already in use以前のコンテナが削除されていないdocker rm -f cm5-hailo10h-yolov8n-seg を実行するか、--name を変更します
コンテナ内に /dev/hailo0 がない--device /dev/hailo0:/dev/hailo0 が欠落デバイスマッピングと --privileged --net=host を追加します

開発

バリアントソースDockerfile
YOLOv8n-segsrc/hailo10h_yolov8n_seg/docker/hailo10h/yolov8n_seg.dockerfile
YOLOv8s-segsrc/hailo10h_yolov8s_seg/docker/hailo10h/yolov8s_seg.dockerfile
YOLOv8m-segsrc/hailo10h_yolov8m_seg/docker/hailo10h/yolov8m_seg.dockerfile
  • 実行部:HailoRT 5.1.1 の InferModel ラッパー(Python 3.13 + 同梱の cp313 ホイール)。 回帰テストは各モジュールの tests/ にあります。
  • HEF:Hailo Model Zoo v5.4.0 の Hailo-10H ビルド。
  • レターボックスのパディングは 114 です(Model Zoo base/yolo.yaml)。正規化は HEF に コンパイルされています。記載されている mAP 値は Model Zoo のフル精度の数値であり、 このボードでの測定値ではありません。