Python 官方文档:入门教程 => 点击学习
文档创建日期:2023年3月27日 文档内容:将yolov5整合进ROS的过程记录 文档作者:RobotFreak yolo系列是很方便的开源视觉识别检测算法,到目前为止已经更新到了yolo
文档创建日期:2023年3月27日
文档内容:将yolov5整合进ROS的过程记录
文档作者:RobotFreak
yolo系列是很方便的开源视觉识别检测算法,到目前为止已经更新到了yolov8,并且有很多相关资料,便于学习与部署。本文介绍了我将yolov5整合到ROS中的过程。
虚拟机->可移动设备->连接camera,camera前有勾则已经与虚拟机连接
首先需要将yolov5源码下载或clone下来,最好测试在本地能用python跑通
部署参考:linux下yolov5环境配置
参考博客以及yolov5的README中都说的python版本>=3.7,但是实际在安装依赖的时候遇到过python版本不够的情况,所以可能需要安装python>=3.8
部署完跑通之后文件夹内状态如下:
这里我是直接将yolov5文件夹都放到了功能包的scripts目录下。也可以选择将yolov5文件夹内的文件都直接复制到scripts文件夹下,但是考虑到scripts中一般都是只放.py和.sh文件,所以我选择了将整个文件夹放到scripts目录下,这样更整洁一点。
这里我的workspace使用的原生环境的Python,不是anaconda的python。
给detec.py添加可执行权限:
chmod +x detect.py
编辑功能包的CMakeLists.txt:
catkin_install_python(PROGRAMS scripts/yolov5/detect.py DESTINATioN ${CATKIN_PACKAGE_BIN_DESTINATION} )
进入工作空间目录进行编译:
catkin_make
开启roscore,运行节点:
rosrun yolo detect.py
整合完成
将yolov5的检测改为实时检测之后,调用本地摄像头,运行detect.py,出现这个报错。
参考这个博客:(29条消息) tryIoctl VIDEOIO(V4L2:/dev/video0): select() timeout._一WILLPOWER一的博客-CSDN博客
直接运行以下命令:
ffplay -f video4linux2 -input_fORMat mjpeg -framerate 30 -video_size 640*480 /dev/video0
调用摄像头效果如下:
按照博客中所说,虚拟机->设置->USB控制器,将USB兼容性选为USB3.1
再次使用命令调用摄像头:
再次运行detect.py没有问题
运行detect.py时出现此报错
参考博客:(29条消息) 【Python】cannot import name ‘ParserError‘ from ‘dateutil.parser‘_Raurean的博客-CSDN博客
按照博客中所说,将python-dateutil更新到最新的2.8.2版本,再次运行detect.py,没问题。
来源地址:https://blog.csdn.net/svfsvadfv/article/details/129825613
--结束END--
本文标题: 将yolov5整合进ROS中
本文链接: https://lsjlt.com/news/389738.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0