我是靠谱客的博主 大气小懒猪,最近开发中收集的这篇文章主要介绍YOLO V3学习(2)——在ROS下基于已训练好的模型实时检测对象1 安装OpenCV(至少3.4.0以上)2.下载与编译darknet_ros3.运行与结果,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
1 安装OpenCV(至少3.4.0以上)
1)安装编译
unzip OpenCV-3.4.5.zip
cd opencv3.4.5.
mkdir build
cd build
cmake ..
sudo make -j4
sudo make install
2.下载与编译darknet_ros
下载darknet_ros:
mkdir darknet_ws/src
cd src
catkin_init_workspace
git clone --recursive git@github.com:leggedrobotics/darknet_ros.git
执行catkin_make -DCMAKE_BUILD_TYPE=Release进行编译,完成。
最终生成文件如下:
1)这里采用CPU模式,因为还没有部署GPU环境,因此这里需要将GPU置为0,打开darknet/Makefile
GPU=0
CUDNN=0
OPENCV=1
OPENMP=0
DEBUG=0
2)打开darknet_ros/launch/darknet_ros.launch
<?xml version="1.0" encoding="utf-8"?>
<launch>
<!-- Console launch prefix -->
<arg name="launch_prefix" default=""/>
<arg name="image" default="/camera/rgb/image_raw" />
<!-- Config and weights folder. -->
<arg name="yolo_weights_path" default="$(find darknet_ros)/yolo_network_config/weights"/>
<arg name="yolo_config_path" default="$(find darknet_ros)/yolo_network_config/cfg"/>
<!-- ROS and network parameter files -->
<arg name="ros_param_file" default="$(find darknet_ros)/config/ros.yaml"/>
<arg name="network_param_file" default="$(find darknet_ros)/config/yolov3.yaml"/>
<!-- Load parameters -->
<rosparam command="load" ns="darknet_ros" file="$(arg ros_param_file)"/>
<rosparam command="load" ns="darknet_ros" file="$(arg network_param_file)"/>
<!-- Start darknet and ros wrapper -->
<node pkg="darknet_ros" type="darknet_ros" name="darknet_ros" output="screen" launch-prefix="$(arg launch_prefix)">
<param name="weights_path" value="$(arg yolo_weights_path)" />
<param name="config_path" value="$(arg yolo_config_path)" />
<remap from="camera/rgb/image_raw" to="$(arg image)" />
</node>
<!--<node name="republish" type="republish" pkg="image_transport" output="screen" args="compressed in:=/front_camera/image_raw raw out:=/camera/image_raw" /> -->
</launch>
主要修改
1.image图像的topic名称,这里dabai输出图像的topic为camera/rgb/image_raw
2.network_param_file,这里选择了yolov3.yaml
3.运行与结果
1)运行dabaiRGBD相机
roslaunch astra_camera dabai_u3.launch
2)查看cpu消耗
top
3)运行darknet
roslaunch darknet_ros darknet_ros.launch
结果:
存在的问题分析:
1.可以看到cpu消耗超过100%,整个检测过程都比较卡顿,作者描述GPU模式下检测的速度是CPU模式下的500倍数,因此接下里将在GPU模式下安装cuda进行测试;
2.图中的苹果没有被检测出来,即对于一些想要去识别但是又没有现有的数据集可用,这个时候就需要自己训练数据完成识别。
最后
以上就是大气小懒猪为你收集整理的YOLO V3学习(2)——在ROS下基于已训练好的模型实时检测对象1 安装OpenCV(至少3.4.0以上)2.下载与编译darknet_ros3.运行与结果的全部内容,希望文章能够帮你解决YOLO V3学习(2)——在ROS下基于已训练好的模型实时检测对象1 安装OpenCV(至少3.4.0以上)2.下载与编译darknet_ros3.运行与结果所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复