实验一(显示深度图和彩色图):
(1)终端1:roscore
(2)终端2:roslaunch freenect_launch freenect-registered-xyzrgb.launch
在终端启动kinect
(3)终端3:rosrun image_view image_view image:=/camera/rgb/image_color
启动kinect后查看彩色图像
(4)终端4:rosrun image_view image_view image:=/camera/depth_registered/image
启动kinect后查看深度图像
关闭终端2,3,4
实验二(ORB_SLAM2跑数据集):
(5)终端5:cd home/ORB_SLAM22/ 我把解压后的文件夹命名为ORB_SLAM22
./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml /home/midi/下载/rgbd_dataset_freiburg2_pioneer_slam3 /home/midi/下载/rgbd_dataset_freiburg2_pioneer_slam3/associate.txt
运行数据集,数据集在/下载里面
python associate.py rgb.txt depth.txt > associate.txt 来生成上面的associate.txt
./draw_groundtruth.py 在程序呢运行完之后(或者ctrl+c后)运行,绘制估计的相机位姿
关闭终端5
注意:这里遇到的情况:首先把./build.sh里最后的 make -j 改成 make,./build_ros.sh的也是一样,否则有的电脑就会卡死;然后,./build.sh应该能编译过,但是./build_ros.sh不行,主要有两步还没做,第一是~/.bashrc中还没加export那一行(新位置),第二是需要把旧的ORB-SLAM2删了才行,不然会有same directory之类的错误。
实验三(ORB_SLAM2在机器人上运行)
(6)终端6:roslaunch turtlebot_bringup minimal.launch
在终端启动turtlebot机器人
(7)终端7:roslaunch freenect_launch freenect-registered-xyzrgb.launch
在终端启动kinect
(8)终端8:cd ORB_SLAM22
到ORB_SLAM22目录下
rosrun ORB_SLAM2 RGBD Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml
在机器人平台上运行ORB_SLAM2,注意这里不是22.
(9)终端9:roslaunch turtlebot_teleop keyboard_teleop.launch
通过键盘控制机器人移动