Ultralytics YOLOv8-Seg
功能介绍
Ultralytics YOLOv8-Seg实例分割算法示例使用图片作为输入,利用BPU进行算法推理,发布包含检测和分割结果msg。
YOLOv8-Seg是使用COCO128-seg数据集训练出来的Onnx模型,模型来源: https://github.com/D-Robotics/hobot_model 。 支持对人、动物、水果、交通工具等共80种类型进行实例分割。
代码仓库: https://github.com/D-Robotics/hobot_dnn
应用场景:YOLOv8-Seg能够识别图像中的单个物体并对其进行精确分割。这种技术可以应用在自动驾驶、遥感图像分析、医疗影像分析等领域。
支持平台
平台 | 运行方式 | 示例功能 |
---|---|---|
RDK X5, RDK X5 Module | Ubuntu 22.04 (Humble) | · 启动MIPI/USB摄像头/本地回灌,渲染结果保存在本地 |
RDK S100 | Ubuntu 22.04 (Humble) | · 启动MIPI/USB摄像头/本地回灌,渲染结果保存在本地 |
算法信息
模型 | 平台 | 输入尺寸 | 推理帧率(fps) |
---|---|---|---|
yolov8n_seg | X5 | 1x3x640x640 | 126.64 |
yolov8n_seg | S100 | 1x3x640x640 | 443.39 |
准备工作
RDK平台
-
RDK已烧录好Ubuntu 22.04系统镜像。
-
RDK已成功安装TogetheROS.Bot。
-
RDK已安装MIPI或者USB摄像头,无摄像头的情况下通过回灌本地JPEG/PNG格式图片的方式体验算法效果。
使用介绍
RDK平台
使用摄像头发布图片
使用MIPI摄像头发布图片
YOLOv8-Seg实例分割示例订阅sensor package发布的图片, 经过推理后发布算法msg。默认不保存渲染图片, 如需保存, 需要在运行时设置 dnn_example_dump_render_img 为1, 会在运行路径下自动保存渲染后的图片,命名方式为render_frameid_时间戳秒_时间戳纳秒.jpg。
- Humble
# 配置tros.b环境
source /opt/tros/humble/setup.bash
# 配置MIPI摄像头
export CAM_TYPE=mipi
# 启动launch文件
ros2 launch dnn_node_example dnn_node_example.launch.py dnn_example_dump_render_img:=0 dnn_example_config_file:=config/yolov8segworkconfig.json dnn_example_image_width:=1920 dnn_example_image_height:=1080