Re: Improving a lidar-only setup
Posted by
matlabbe on
URL: http://official-rtab-map-forum.206.s1.nabble.com/Improving-a-lidar-only-setup-tp11071p11137.html
Hi Robin,
I tried the bag using this:
ros2 run imu_filter_madgwick imu_filter_madgwick_node --ros-args -p use_mag:=false -p publish_tf:=false -p use_sim_time:=true
ros2 launch rtabmap_examples lidar3d.launch.py \
use_sim_time:=true \
frame_id:=runner_2/base_link \
lidar_topic:=/runner_2/localization/livox/points \
voxel_size:=0.2 \
imu_topic:=/imu/data
ros2 bag play slow-full-run \
--clock \
--qos-profile-overrides-path durability_override.yaml \
--remap /runner_2/localization/livox/imu:=/imu/data_raw
Note that my computer is running ROS2 Humble, so I needed to run
this to convert the bag to be compatible. Then run the bag with a durability_override.yaml to make /tf_static transient QOS.
# durability_override.yaml
/tf_static:
durability: transient_local
history: keep_all
Because the lidar looks like on a pole on the robot, the oscillations are noticeable, so I think the best results are achieved by using the IMU for deskewing.
With this setup, the results looks pretty good. Comparing the first and last clouds, they overlap nicely.

Even without loop closure optimization, the trajectory is close to the optimized one above (less than 10 cm of error between the first and last pose):

There are no IR or RGB images from the depth cameras, so if you want an example with the cameras integrated (useful for re-localization), I could try another bag.
Otherwise, if you try my example above with same bags, if you have still issues, it will be easier for me to compare with what I get.
cheers,
Mathieu