物体识别全流程(Ubuntu16.04)结合ROS

物体识别全流程(Ubuntu16.04)结合ROS

1.使用labellmg,标记图片,生成xml标签

在此下载labellmg包
下载之后解压到要放置的目录
推荐使用Python3+Qt5
打开labellmg包
在当前目录终端下运行如下命令行

sudo apt-get install pyqt5-dev-tools
sudo pip3 install -r requirements/requirements-linux-python3.txt
make qt5py3
python3 labelImg.py

在运行第二行命令时可能会出现缺少pip3之类的提示,可以通过运行这个解决 sudo apt-get install python3-pip

关于labellmg的使用的关键步骤物体识别全流程(Ubuntu16.04)结合ROS_第1张图片

Ctrl + u Load all of the images from a directory
Ctrl + r Change the default annotation target dir
Ctrl + s Save
Ctrl + d Copy the current label and rect box
Space Flag the current image as verified
w Create a rect box
d Next image
a Previous image

del Delete the selected rect box
Ctrl++ Zoom in
Ctrl-- Zoom out
↑→↓← Keyboard arrows to move selected rect box
推荐使用voc格式

2.下载并安装darknet

可参考下列链接
https://pjreddie.com/darknet/yolo/

物体识别全流程(Ubuntu16.04)结合ROS_第2张图片
运行到此步骤即可,无需进行下面步骤

3.制作自己的数据集

可参考下列链接,十分详细
但是
因为此链接是在windows下配置的,所以多少有些不同,比如图片名字那一部分,那个脚本在ununtu下运行是无效的,不过可以通过写一个简单的c程序打印出来

https://blog.csdn.net/qq_34806812/article/details/81673798

4.利用训练好的数据集,开始在ros环境下进行物体识别

4.1 将下列链接的内容下载到ROS工作空间的src目录下

在此下载

4.2配置kinect2摄像头

该链接是我的一个学长写的,亲测有效,https://blog.csdn.net/dragongiri/article/details/98597607

4.3编译工作空间

在工作空间下使用 catkin_make 命令;

5.开始识别

5.1

将之前训练好的bakeup/.weights文件放到 /catkin_ws/src/darknet_ros/darknet_ros/yolo_network_config/weights
将之前改好的好的 .cfg 文件放到 /catkin_ws/src/darknet_ros/darknet_ros/yolo_network_config/cfg

将这个/catkin_ws/src/darknet_ros/darknet_ros/config/yolov3-voc.yaml文件中的config_fileweight_filenames根据实际情况修改,其实就是之前添加进来的两个文件物体识别全流程(Ubuntu16.04)结合ROS_第3张图片注意名字顺序一定要和之前在训练数据集时的名字顺序一致,否则极可能出错

大功告成,最后启动两个launch节点starting!!!

roslaunch kinect2_bridge kinect2_bridge.launch
roslaunch darknet_ros darknet_ros.launch

你可能感兴趣的:(ros)