中国移动门户网站,考试类网站如何做,天河网站建设哪家好,创建网站一#xff0c;要具备ROS环境
ROS环境搭建可以参考我之前的文章 ROS参考文章1 ROS参考文章2
建立ROS工作空间
ROS系统由自己的编译空间规则。 cd 你自己想要的文件夹#xff08;我一般是home目录#xff09;
mkdir -p (你自己的文件夹名字#xff0c;比如我是yolov5…一要具备ROS环境
ROS环境搭建可以参考我之前的文章 ROS参考文章1 ROS参考文章2
建立ROS工作空间
ROS系统由自己的编译空间规则。 cd 你自己想要的文件夹我一般是home目录
mkdir -p (你自己的文件夹名字比如我是yolov5_ws)/src(src不能更换名字举例mkdir -p yolov5/src)建立工具包catkin create_pkg yolov5_ros roscpp rospy std_msgs message_generation message_runtime在yolov5_ros 文件下建立如下几个文件夹 launch 文件夹launch文件media 文件夹测试视频文件可以不要scripts文件夹存放py的脚本文件weights文件存放yolov5的权重文件自己可以设置改完之后在launch文件夹里面记得同步更改yolov5文件夹存放yolov5源码版本不限制 新建消息文件夹yolo5_ros_msgs ,limian 里面新建msg文件夹存放我们的自定义消息包类型 msg里面新建我们需要自定义的消息类型xxx.msg ,如下所示 float64 probability int64 xmin int64 ymin int64 xmax int64 ymax int16 num string Class 备注自己定义的消息包类型不要忘记了CMakelist.txt文件里面修改编译规则。
cmake_minimum_required(VERSION 3.0.2)
project(yolov5_ros_msgs)find_package(catkin REQUIRED COMPONENTSstd_msgsmessage_generationmessage_runtimerospystd_msgs
)add_message_files(DIRECTORY msgFILESBoundingBox.msgBoundingBoxes.msg
)generate_messages(DEPENDENCIESstd_msgs
)catkin_package(CATKIN_DEPENDS message_generation message_runtime rospy std_msgs)include_directories(
# include${catkin_INCLUDE_DIRS}
)具体每一项的意义可以参考我如下博客写的非常详细 编译依赖项意义的参考博客
编写脚本封装yolo算法
这个根据自己的YOLO版本类型进行封装。我把该代码上传至我的个人github。 #启动脚本编写根据个人节点情况编写
?xml version1.0 encodingutf-8?launch!-- Load Parameter --param nameyolov5_path value$(find yolov5_ros)/yolov5/param nameuse_cpu valueTrue /!-- Start yolov5 and ros wrapper --node pkgyolov5_ros typeyolo_v5.py nameyolov5_ros outputscreen param nameweight_path value$(find yolov5_ros)/weights/yolov5s.pt/param nameimage_topic value/usb_cam/image_raw /param namepub_topic value/yolov5/BoundingBoxes /param namecamera_frame valuecamera_color_frame/param nameconf value0.3 //node/launch编译和添加环境变量
这个地方搞过ROS的都知道不做详细说明。
编译完毕之后运行脚本
roslaunch yolov5_ros 脚本名称
运行结果 运行的主题名称 riz显示 运行结果