当前位置:网站首页>ROS learning (XX) robot slam function package -- installation and testing of rgbdslam
ROS learning (XX) robot slam function package -- installation and testing of rgbdslam
2022-07-07 01:52:00 【Ice cream with code】
List of articles
Preface
In the previous study ,slam The constructed maps are all two-dimensional maps , At present, many algorithms can realize the map construction of three-dimensional information , Robots not only know where obstacles are in the map , And also know what the obstacle is .
ROS Provides a variety of 3D SLAM Function pack ,rgbdslam That's one of them , This chapter mainly studies rgbdslam Installation and testing of .
One 、 New workspace
The order is as follows :
mkdir -p ~/catkin_rgbdslam_ws/src
cd ~/catkin_rgbdslam_ws/src
catkin_init_workspace
cd ~/catkin_rgbdslam_ws
catkin_make
Two 、 download rgbdslam_v2 Corresponding to the author g2o
The order is as follows :
cd ~/catkin_rgbdslam_ws/src
sudo apt-get install libsuitesparse-dev
git clone https://github.com/felixendres/g2o.git
cd g2o
mkdir build
cd build
cmake ..
make..
sudo make install
among , The second command is responsible for installing dependencies .
3、 ... and 、 install pcl1.8
download , The order is as follows :
cd ~
wget https://github.com/PointCloudLibrary/pcl/archive/pcl-1.8.0.tar.gz
tar -xvzf pcl-pcl-1.8.0.tar.gz
cd ~/pcl-pcl-1.8.0
gedit CMakeLists.txt
Add the following to CMakeLists.txt Of the 146 That's ok ( stay endif() after ), Add C++11 Support :
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
compile 、 install , The order is as follows :
cd ~/pcl-pcl-1.8.0
mkdir build
cd build
cmake ../
make VERBOSE=1
sudo make install
Four 、 To configure rgbdslam_v2
The order is as follows :
cd ~/catkin_rgbdslam_ws/src
git clone https://github.com/felixendres/rgbdslam_v2
cd rgbdslam_v2
gedit CMakeLists.txt
modify CMakeLists The contents of the document , take
find_package(PCL 1.7 REQUIRED COMPONENTS common io)
Change it to :
find_package(PCL 1.8 REQUIRED COMPONENTS common io)
And add the following at the lowest end :
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
modify /opt/ros/kinetic/share/pcl_ros/cmake/pcl_rosConfig.cmake file , Will all /usr/lib/x86_64-linux-gnu/libpcl_ Change the beginning to /usr/local/lib/libpcl_( A total of 34 individual )
5、 ... and 、 structure siftgpu library
The order is as follows :
cd ~/catkin_rgbdslam_ws/src/rgbdslam_v2/external/SiftGPU
sudo apt-get install libglew-dev
sudo apt-get install libdevil1c2 libdevil-dev
make
6、 ... and 、 compile rgbdslam_v2
The order is as follows :
cd ~/catkin_rgbdslam_ws
catkin_make
cd build/rgbdslam_v2
make VERBOSE=1
make install
If compiled opencv error , According to this blog openCV Step on the pit diary To operate , Then recompile .
7、 ... and 、 test
1、 A simple test
Open a new terminal , function roscore
roscore
Switch to /catkin_rgbdslam_ws/devel/lib/rgbdslam/ Under the table of contents , Open another terminal , Run the following command :
./rgbdslam
The interface is as follows :
If this interface displays normally , Then prove rgbdslam Installation successful .
2、 Dataset testing
Download datasets , Download address :http://vision.in.tum.de/data/datasets/rgbd-dataset/download#freiburg1_room, Will download okay .bag The documents are stored in catkin_rgbdslam_ws/rgdb_data Under the table of contents .
modify rgdbslam.launch file , Make sure the topic you subscribe to is consistent with the data set , The modification is as follows :
<param name="config/topic_image_mono" value="/camera/rgb/image_color"/>
<param name="config/topic_image_depth" value="/camera/depth/image"/>
Open the terminal , Enter the command as follows :
roscore
Switch to rgdbslam_v2/launch Under the table of contents , Open a new terminal , The order is as follows :
roslaunch rgbdslam rgbdslam.launch
The interface is as follows :
Switch to catkin_rgbdslam_ws/rgdb_data Under the table of contents , Open a new terminal , The order is as follows :
rosbag play rgbd_dataset_freiburg1_room.bag
When the data package starts publishing data , You can see the image data and slam The process of , as follows :
When the construction is finished , Directly select Save as point cloud data in the menu bar , I keep it in rgdb_data Under the table of contents , The file named quicksave.pcd.
have access to pcl_ros Function pack view the saved point cloud map :
rosrun pcl_ros pcd_to_pointcloud quicksave.pcd
边栏推荐
- ROS学习(十九)机器人SLAM功能包——cartographer
- Telnet,SSH1,SSH2,Telnet/SSL,Rlogin,Serial,TAPI,RAW
- 我如何编码8个小时而不会感到疲倦。
- Shell script quickly counts the number of lines of project code
- 搭建【Redis in CentOS7.x】
- 猫猫回收站
- Image watermarking, scaling and conversion of an input stream
- MySQL's most basic select statement
- Right mouse button customization
- ROS学习(26)动态参数配置
猜你喜欢
Yiwen takes you into [memory leak]
开发中对集合里面的数据根据属性进行合并数量时犯的错误
Box stretch and pull (left-right mode)
蓝桥杯2022年第十三届省赛真题-积木画
Today's question -2022/7/4 modify string reference type variables in lambda body
LeetCode. Sword finger offer 62 The last remaining number in the circle
今日问题-2022/7/4 lambda体中修改String引用类型变量
[advanced C language] 8 written questions of pointer
LeetCode:1175. Prime permutation
刨析《C语言》【进阶】付费知识【完结】
随机推荐
增加 pdf 标题浮窗
Yiwen takes you into [memory leak]
POJ 3177 redundant paths POJ 3352 road construction (dual connection)
What does front-end processor mean? What is the main function? What is the difference with fortress machine?
Modify the system time of Px4 flight control
The use of video in the wiper component causes full screen dislocation
搭建【Redis in CentOS7.x】
Appium基础 — Appium Inspector定位工具(一)
Box stretch and pull (left-right mode)
JS reverse -- ob confusion and accelerated music that poked the [hornet's nest]
Appium automation test foundation uiautomatorviewer positioning tool
Today's question -2022/7/4 modify string reference type variables in lambda body
AcWing 361. 观光奶牛 题解(spfa求正环)
Add PDF Title floating window
Ros Learning (23) Action Communication Mechanism
字符串转成日期对象
Hutool post requests to set the body parameter to JSON data
Shell script quickly counts the number of lines of project code
POJ 3177 Redundant Paths POJ 3352 Road Construction(双连接)
开发中对集合里面的数据根据属性进行合并数量时犯的错误