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