前言
本来想直接用百度智能车比赛的数据集训练,但是发现在ROS中搭建红绿灯模型和提供的数据集在颜色亮度外形上都有点差别… …无奈从创建数据集开始。
目录:
基于paddledetection在ROS中搭建红绿灯检测控制车模运动(1)
—— 环境搭建准备以及软件安装
基于paddledetection在ROS中搭建红绿灯检测控制车模运动(2)
—— 数据集制作以及训练
基于paddledetection在ROS中搭建红绿灯检测控制车模运动(3)
—— 使用训练结果在ros中仿真红绿灯控制小车运动
项目地址
训练部分aistudio地址:
https://aistudio.baidu.com/aistudio/projectdetail/520705
racecar仿真软件下载地址:
https://github.com/xmy0916/racecar
本地项目下载地址:
https://github.com/xmy0916/paddleDetectLightInROS
效果演示
linux下数据集标注工具安装教程
这里参考国外wiki上的回答: https://stackoverflow.com/questions/49221565/unable-to-use-cv-bridge-with-ros-kinetic-and-python3 01.首先修改cv.so文件(不改会因为ros中有个cv2.so系统环境一个cv2.so导致报错导入cv2错误)下面把ros环境中的cv2.so换个名字就行了:
git clone https://github.com/Ruolingdeng/labelImg.gitcd labelImgsudo apt-get install pyqt4-dev-toolssudo pip install lxmlmake qt4py2 python labelImg.py
windows下安装教程
https://zhuanlan.zhihu.com/p/97807042
常用快捷键:
d:下一张图
a:上一张图
w:绘制矩形框
ctrl + s:保存
如下操作打开图片目录开始标注:
mkdir -p ~/racecar_ws/srccd ~/racecar_ws/srccatkin_init_workspacegit clone https://github.com/xmy0916/racecar.gitcd ..catkin_makeecho "source ~/racecar_ws/devel/setup.bash" >> ~/.bashrcsource ~/.bashrc
在pycharm安装paddle
首先安装一下模块(最好按顺序安装):
common、dual、tight 、data、prox、paddlepaddle、paddlehub、paddle
直接在:
file -> settings -> Project:project_name -> Project Interpreter -> +号
搜索这几个名字然后点击Install Package即可:
在pycharm中安装ROS
这个因为我是几个月之前装的了,过程也不记得了,大家可以网上找找参考:
https://blog.csdn.net/DinnerHowe/article/details/70170656
使用python3编译cv_bridge
这一步是必须的,cv_bridge是ROS库中用来将深度相机传感器图片数据类型转换成opencv的mat数据类型,不试用的话就没法处理图像了。然后ROS库中的cv_bridge编译用的是python2,生成的.so文件有一些不支持。而飞浆用的python是python3,所以需要用python3编译cv_bridge。
这里参考国外wiki上的回答: https://stackoverflow.com/questions/49221565/unable-to-use-cv-bridge-with-ros-kinetic-and-python3 01.首先修改cv.so文件(不改会因为ros中有个cv2.so系统环境一个cv2.so导致报错导入cv2错误)下面把ros环境中的cv2.so换个名字就行了:
cd /opt/ros/kinetic/lib/python2.7/dist-packages/sudo mv cv2.so cv2_ros.so
02.安装一些库
sudo apt-get install python-catkin-tools python3-dev python3-catkin-pkg-modules python3-numpy python3-yaml ros-kinetic-cv-bridge
03.创建工作区间(用来编译cv_bridge)
mkdir catkin_workspace
cd catkin_workspace
catkin init
04.配置
catkin config -DPYTHON_EXECUTABLE=/usr/bin/python3.5 -DPYTHON_INCLUDE_DIR=/usr/include/python3.5m -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so
这一步比较重要,大家检查下对应路径下是否有python3.5,python3.5m,x86_64-linux-gnu/libpython3.5m.so,如果版本不一样需要修改版本号。
01.安装配置
catkin config --install
02.下载cv_bridge源码
git clone https://github.com/ros-perception/vision_opencv.git src/vision_opencv
03.查看版本
apt-cache show ros-kinetic-cv-bridge | grep Version
04.确认git谷仓的版本正确
git checkout 1.12.8
05.编译
cd ../../
catkin build cv_bridge
source install/setup.bash --extend
如果没有出现error字眼就成功了!
编译完成后在catkin_workspace文件夹下会有cv_bridge编译的输出文件:
这时候还需要做件事,把ROS中原本python2编译的cv_bridge删了或者改个名字,这样就不会链接到python2编译的cv_bridge了,这里最好是改个名字,往后万一要用还能改回来。
cd /opt/ros/kinetic/lib/
sudo mv cv_bridge cv_bridge2
福利
请上周参加古月居优惠活动购买了ROS2GO的小伙伴,在古月居公众号后台回复“会员兑换”领取3个月的古月学院会员。