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 实例分割。
575 次下载
大小
~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)reComputer CM5 + Hailo-10H 上的 YOLOv8-seg
YOLOv8n/s/m-seg 通过 HailoRT 5.1.1 在 Hailo-10H 上运行。HEF 输出原始分支头(无片上 NMS):主机侧完成框解码(DFL 或折叠布局)、sigmoid 与逐类 NMS,并合成实例掩码 (32 个系数 × 160×160×32 原型,按框裁剪),支持 80 个 COCO 类别。
模型信息
| 变体 | 输入 | 打包 HEF | 容器镜像 |
|---|---|---|---|
| YOLOv8n-seg | 640×640×3 RGB | 6.1 MB | yolov8n_seg |
| YOLOv8s-seg | 640×640×3 RGB | 18.6 MB | yolov8s_seg |
| YOLOv8m-seg | 640×640×3 RGB | 28.9 MB | yolov8m_seg |
硬件与宿主环境
| 项目 | 值 |
|---|---|
| 主板 | Raspberry Pi CM5 |
| 加速器 | Hailo-10H,/dev/hailo0 |
| 运行时 | HailoRT 5.1.1 |
| 系统 | Raspberry 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.mp4YOLOv8s-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.mp4YOLOv8m-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 预览;/api/video_feed 提供叠加实例
掩码与检测框的 MJPEG 流。
REST API
每个变体有独立接口:
| 变体 | 接口 |
|---|---|
| YOLOv8n-seg | POST /api/models/yolov8n_seg/predict |
| YOLOv8s-seg | POST /api/models/yolov8s_seg/predict |
| YOLOv8m-seg | POST /api/models/yolov8m_seg/predict |
示例:
bash
curl -X POST "http://<Board_IP>:8000/api/models/yolov8n_seg/predict" \
-F "file=@test.jpg"返回的 predictions 条目包含 class、confidence 与 box 字段(box 为原图
像素坐标的 x1/y1/x2/y2)。
预期结果与常见错误
首次推理时模块会打印已加载的张量列表和布局摘要:10 个输出张量、各自的数值范围 以及是否补做了 sigmoid。预期为三个框分支、三个 80 通道类别分支、三个 32 通道掩码 系数分支和一个 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-seg | src/hailo10h_yolov8n_seg/ | docker/hailo10h/yolov8n_seg.dockerfile |
| YOLOv8s-seg | src/hailo10h_yolov8s_seg/ | docker/hailo10h/yolov8s_seg.dockerfile |
| YOLOv8m-seg | src/hailo10h_yolov8m_seg/ | docker/hailo10h/yolov8m_seg.dockerfile |
- 执行器为 HailoRT 5.1.1 的 InferModel 封装(Python 3.13 + 随模块附带的 cp313
wheel);回归测试位于各模块的
tests/。 - HEF 来自 Hailo Model Zoo v5.4.0 的 Hailo-10H 构建。
- letterbox 填充为 114(Model Zoo
base/yolo.yaml),归一化已编译进 HEF;文中引用 的 mAP 为 Model Zoo 全精度参考值,并非本板实测。