USB Camera YOLOv5x 推理
基于 hbm_runtime 的 Ultralytics YOLOv5x 实时推理示例,支持通过 USB 摄像头读取画面并进行目标检测,并以全屏方式可视化检测结果,本示例代码位于/app/pydev_demo/09_usb_camera_sample/目录下。
功能说明
-
模型加载
通过
hbm_runtime加载指定的 .hbm 模型文件,提取模型名称、输入输出形状、量化信息等。 -
摄像头采集
自动扫描 /dev/video* 下的设备,打开第一个可用的 USB 摄像头,设置为 MJPEG 编码、1080p 分辨率、30 FPS。
-
图像预处理
将 BGR 图像 resize 至模型输入分辨率(letterbox 模式或普通缩放),并转换为 NV12 格式。
-
推理执行
通过 run() 方法提交输入张量,在 BPU 上完成模型前向计算。
-
后处理
包括量化输出解码、候选框筛选(按 score 阈值过滤)、NMS 去重,以及坐标还原回原始图像大小。
-
可视化显示
将检测框及其类别、置信度绘制在图像上,并在窗口中全屏显示,支持实时处理和退出控制。
模型说明
参考 Ultralytics YOLOv5x 目标检测示例小结。
环境依赖
- 确保安装了pydev中的环境依赖
pip install -r ../requirements.txt
目录结构
.
├── usb_camera_yolov5x.py # 主程序
└── README.md # 使用说明