ROS 2 中 Astra Pro 相机与 YOLOv5 检测功能编译启动全记录

先记录大概主要流程,后期有时间了再完善细节以及附上截图
一、编译 Astra Pro 相机功能包
1. 清理并编译相机包
cpp 复制代码
cd ~/Astra_ws
rm -rf build/astra_camera install/astra_camera  # 清理旧编译
colcon build --packages-select astra_camera --parallel-workers 2  # 编译相机包
source install/setup.bash  # 激活环境
  • 指令解析
    • --packages-select 仅编译指定包,节省时间;
    • --parallel-workers 2 设置 2 线程并行编译,可根据 CPU 核心数调整。

最终显示 Finished <<< astra_camera,即编译成功。

二、编译 YOLOv5 Rockchip 检测包
1. 清理并编译检测包
cpp 复制代码
cd ~/Astra_ws
rm -rf build/yolov5_rockchip install/yolov5_rockchip  # 清理旧编译
colcon build --packages-select yolov5_rockchip --parallel-workers 2  # 编译检测包
source install/setup.bash
  • 核心依赖
    需提前安装 rknn-toolkit-lite2pip install rknn-toolkit-lite2),用于 Rockchip NPU 推理。
2. 模型路径确认

确保检测节点配置的模型路径正确:

cpp 复制代码
# yolov5_node.py中模型路径
self.declare_parameter('model_path', '/home/elf/Astra_ws/src/yolov5_rockchip/models/yolov5s_relu_rk3588.rknn')
三、启动 Astra Pro 相机
1. 启动相机节点
cpp 复制代码
source install/setup.bash
ros2 launch astra_camera astra_pro.launch.py  # 启动Pro型号相机

关键日志

cpp 复制代码
[INFO] [camera.camera]: Device connected: Astra serial number: xxx  # 设备连接成功
[INFO] [camera.camera]: set color video mode Resolution :640x480@30Hz  # 图像参数

2. 查看相机话题

cpp 复制代码
ros2 topic list  # 确认包含/camera/color/image_raw等图像话题
四、启动 YOLOv5 检测功能
1. 运行检测节点(指定图像输入)
cpp 复制代码
source install/setup.bash
ros2 run yolov5_rockchip yolov5_node --input /camera/color/image_raw
  • 参数说明
    --input 需与相机发布的彩色图像话题一致(通过ros2 topic list查询)。
2. 检测日志验证

正常运行时可见:

cpp 复制代码
[INFO] [yolov5_rockchip_node]: RKNN Lite 初始化成功
[INFO] [yolov5_rockchip_node]: 检测到目标: person, 置信度: 0.92
五、常用调试指令汇总

查看系统日志

cpp 复制代码
ros2 topic echo /rosout | grep -E "yolov5|camera"  # 过滤关键日志

统计话题发布频率

cpp 复制代码
ros2 topic hz /yolov5/detections  # 检测结果帧率
ros2 topic hz /camera/color/image_raw  # 相机图像帧率

保存检测图像(无图形界面时)

修改yolov5_node.py添加:

cpp 复制代码
cv2.imwrite(f"/home/elf/det_{int(time.time())}.jpg", result_image)
七、完整流程指令速查表
操作阶段 指令示例 说明
编译相机包 colcon build --packages-select astra_camera 仅编译相机功能包
编译检测包 colcon build --packages-select yolov5_rockchip --parallel-workers 2 2 线程编译检测包
启动相机 ros2 launch astra_camera astra_pro.launch.py 加载 Pro 型号相机配置
启动检测 ros2 run yolov5_rockchip yolov5_node --input /camera/color/image_raw 指定相机图像作为检测输入
查看检测日志 `ros2 topic echo /rosout grep yolov5`

通过以上步骤,可在 ROS 2 中实现 Astra Pro 相机与 YOLOv5 检测的联动,利用 Rockchip NPU 加速推理,适用于机器人视觉、目标跟踪等场景。

相关推荐
2501_9361460419 小时前
【计算机视觉系列】:基于YOLOv8-RepHGNetV2的鱿鱼目标检测模型优化与实现
yolo·目标检测·计算机视觉
羊羊小栈19 小时前
基于YOLO和多模态大语言模型的智能电梯安全监控预警系统(vue+flask+AI算法)
人工智能·yolo·语言模型·毕业设计·创业创新·大作业
adaAS141431521 小时前
【深度学习】YOLOv8-SOEP-RFPN-MFM实现太阳能电池板缺陷检测与分类_1
深度学习·yolo·分类
Coding茶水间21 小时前
基于深度学习的驾驶行为检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
深度学习·qt·yolo
无人装备硬件开发爱好者1 天前
ROS2:无人机从 “能飞” 到 “会思考” 的全栈技术引擎 —— 深度拆解与落地指南(上)
无人机·ros2·无人机飞控
njsgcs1 天前
ppo靠近门模型 试训练 yolo评分
yolo·ppo
Dev7z1 天前
服装厂废料(边角料)YOLO格式分类检测数据集
yolo·服装厂废料·边角料
黑客思维者1 天前
机器学习071:深度学习【卷积神经网络】目标检测“三剑客”:YOLO、SSD、Faster R-CNN对比
深度学习·yolo·目标检测·机器学习·cnn·ssd·faster r-cnn
棒棒的皮皮1 天前
【深度学习】YOLO 模型部署全攻略(本地 / 嵌入式 / 移动端)
人工智能·深度学习·yolo·计算机视觉
棒棒的皮皮1 天前
【深度学习】YOLO模型速度优化全攻略(模型 / 推理 / 硬件三层维度)
人工智能·深度学习·yolo·计算机视觉