CV / FCN ResNet
FCN8 ResNet-18
reComputer R Series (CM5 + Hailo-10H)
在搭载 Hailo-10H 的 reComputer R Series 上使用 ResNet-18 骨干网络的 FCN-8s 进行语义分割。
29 次下载
大小
9.2 MB内存
4GB+精度
Hailo HEF / HailoRT选择你正在使用的设备,设置指南和文档将相应更新。
快速开始
部署
sudo docker run --rm \
--name cm5-hailo-fcn8-resnet \
--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/fcn8_resnet_v1_18:latest \
python web_detection.py --model_path model/fcn8_resnet_v1_18.hef --video_path video/test.mp4REST API
使用 REST API 进行推理。复制以下命令。
Curl
curl -X POST "http://<Board_IP>:8000/api/models/fcn8_resnet/predict" \
-F "file=@test.jpg"Python
import requests
resp = requests.post(
"http://<Board_IP>:8000/api/models/fcn8_resnet/predict",
files={"file": open("test.jpg", "rb")},
timeout=30,
)
print(resp.json())模型详情
FCN8 ResNet-18 在 reComputer R Series(CM5 + Hailo-10H)上运行
FCN-8s(全卷积网络)采用 ResNet-18 骨干网络进行语义分割,通过 HailoRT 在 Hailo-10H 上运行。
本页面向配备 PCIe Hailo-10H 加速器的 reComputer R Series(CM5 + Hailo-10H)。
模型信息
| 属性 | 值 |
|---|---|
| 架构 | FCN-8s + ResNet-18 |
| 任务 | 语义分割 |
| 输入 | 1024×1920×3 RGB |
| 输出 | 1024×1920 类别掩码(19 类) |
| 参数量 | 11.20M |
| mIoU(Cityscapes) | 69.2%(硬件) |
| 来源 | Hailo Model Zoo |
Cityscapes 类别
| ID | 类别 | ID | 类别 | ID | 类别 |
|---|---|---|---|---|---|
| 0 | 道路 | 7 | 交通标志 | 14 | 卡车 |
| 1 | 人行道 | 8 | 植被 | 15 | 公交车 |
| 2 | 建筑 | 9 | 地形 | 16 | 火车 |
| 3 | 墙 | 10 | 天空 | 17 | 摩托车 |
| 4 | 围栏 | 11 | 行人 | 18 | 自行车 |
| 5 | 杆 | 12 | 骑行者 | ||
| 6 | 交通信号灯 | 13 | 汽车 |
硬件与主机设置
| 项目 | 值 |
|---|---|
| 开发板 | 配备 Raspberry Pi CM5 的 reComputer R Series |
| 加速器 | Hailo-10H 通过 PCIe 连接,设备为 /dev/hailo0 |
| 操作系统 | Raspberry Pi OS Bookworm, aarch64 |
| 主机驱动 | hailo-h10-all apt 软件包 |
bash
sudo apt update
sudo apt install hailo-h10-all -y
sudo 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使用演示视频运行
bash
sudo docker run --rm --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/fcn8_resnet_v1_18:latest \
python web_detection.py --model_path model/fcn8_resnet_v1_18.hef --video_path video/test.mp4打开 http://<Board_IP>:8000 查看网页预览。镜像包含模块源码、演示视频、HailoRT Python wheel 和下列 HEF 文件。
USB 摄像头模式
bash
sudo docker run --rm --privileged --net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
--device /dev/video0:/dev/video0 \
-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/fcn8_resnet_v1_18:latest \
python web_detection.py --model_path model/fcn8_resnet_v1_18.hef --camera_id 0HEF 文件
| HEF | 大小 | 备注 |
|---|---|---|
fcn8_resnet_v1_18.hef | 9.2 MB | 语义分割模型 |
REST API
预测端点:
text
POST http://<Board_IP>:8000/api/models/fcn8_resnet/predict图像请求示例:
bash
curl -X POST "http://<Board_IP>:8000/api/models/fcn8_resnet/predict" \
-F "file=@test.jpg"常用服务端点:
| 端点 | 方法 | 用途 |
|---|---|---|
/ | GET | 网页预览界面 |
/api/models/fcn8_resnet/predict | POST | 各类别像素占比(JSON) |
/api/video_feed | GET | MJPEG 预览流 |
开发说明
- 源码模块:
src/hailo10h_fcn8_resnet_v1_18/ - Dockerfile:
docker/hailo10h/fcn8_resnet_v1_18.dockerfile - 主服务:
web_detection.py封装 HailoRT 推理、后处理、MJPEG 预览和 REST 预测。
输入与输出
Input: image (1024x1920 RGB). Output: 19-class semantic segmentation mask (Cityscapes).