https://github.com/introlab/rtabmap_ros
이거대로 설치한다.
혹시 catkin_make 후
ERROR: cannot launch node of type [rtabmap_odom/rgbd_odometry] : Cannot locate node of type
이런 에러가 뜬다면 빌드가 안 된 것.
catkin_make --only-pkg-with-deps rtabmap_ros 해보기
혹은$ source /opt/ros/<ros-distro>/setup.bash $ source ~/catkin_ws/devel/setup.bash
$ roslaunch realsense2_camera demo_pointcloud.launch
or $roslaunch realsense2_camera opensource_tracking.launch
$ roslaunch rtabmap_ros rtabmap.launch rtabmap_args:="--delete_db_on_start" rtabmapviz:=false rviz:=true
Edit -> Update Cache from a local database copy... -> ~/.ros/rtabmap.db 선택
맵핑 끝난 후
Edit -> Localization 클릭, Window -> Show view -> Graph View 하여 localization 확인 가능
Ctrl-C하면 Map 저장 rgbd.launch이나 stereo_mapping.launch도 가능
$ roslaunch rtabmap_ros rtabmap.launch depth_topic:=/camera/depth/image_rect_raw/ rgb_topic:=/camera/color/image_raw camera_info_topic:=/camera/color/camera_info rtabmapviz:=true localization:=true
$roslaunch realsense2_camera opensource_tracking.launch
약간 기다린 후
먼저 rosbag 실행한 후 위 명령어 slam하기.
rosbag record -O my_bagfile_1.bag /camera/aligned_depth_to_color/camera_info camera/aligned_depth_to_color/image_raw /camera/color/camera_info /camera/color/image_raw /camera/imu /camera/imu_info /tf_static
sudo apt-get install pcl-tools
로 pcl tools 설치한 후
rosrun pcl_ros pointcloud_to_pcd input:=/rtabmap/cloud_map
다른 터미널에서 실행하면 터미널 창에 긴 숫자.pcd로 저장되는 것을 알려준다.
pcl_viewer 1543906154413083.pcd
로 pcl cloud 결과물 보면 된다.
참고
https://github.com/IntelRealSense/realsense-ros/wiki/SLAM-with-D435i
https://admantium.medium.com/ros-simultaneous-mapping-and-localization-with-rtabmap-e527e6a6716