I am using Intel RealSense D435i and T265 on ROS Noetic for SLAM and 2D/3D mapping. I can generate 2D/3D maps successfully in some environments, such as streets and workshops. I have problems testing in a pipe. The pipe is narrow at one end. I put the robot at the wider end and start mapping. As the robot moves towards the narrower section, the odometry data from the Intel RealSense T265 starts to drift, causing positional errors. This makes the map inaccurate.
Do you have any suggestions? I can give you more information if you need it. I also have an RPLidar S3. Can I use this to fix the problem? How can I add it to RTAB-Map?
To start SLAM, I run the following commands (These opens Rtabmap and RVIZ):
roslaunch rtabmap_launch rtabmap.launch \
args:="-d --Mem/UseOdomGravity true --Optimizer/GravitySigma 0.3" \
odom_topic:=/t265/odom/sample \
frame_id:=t265_link \
rgbd_sync:=true \
depth_topic:=/d400/aligned_depth_to_color/image_raw \
rgb_topic:=/d400/color/image_raw \
camera_info_topic:=/d400/color/camera_info \
approx_rgbd_sync:=false \
visual_odometry:=false \
queue_size:=30
roslaunch realsense2_camera rs_rtabmap.launch