I'm working in ros2 humble with a 2D lidar and an IMU sensor and I'm willing to do a 3D mapping with this things. I have already done a 2D mapping using RF2O pkg (that gives me an odometry only with the 2D Lidar) and using slam_toolbox for the mapping. But now I want to add an IMU sensor for doing a 3D mapping,

Is there a pkg that can help me doing that?

  • $\begingroup$ Is your 2D lidar mounted in a way you can obtain 3D data (e.g. not just mounted horizontally)? $\endgroup$ Nov 10, 2023 at 1:00
  • $\begingroup$ My idea is to use it as handheld sensor. The idea is not to tilt it a lot, it is for doing 2D mapping and detecting when is tilt to do the projection to the XY plane. Hope you can understand my idea. $\endgroup$ Nov 11, 2023 at 1:14
  • $\begingroup$ Also, I was looking for doing visual odometry in ros2 and I didn't find so much. Do you know if there is some pkg or solution for this? (To do odometry for mapping without knowing anything about the surroundings) $\endgroup$ Nov 11, 2023 at 1:23

1 Answer 1


The simple solution is externally rotating the lidar but I don't recommand it. See the video below.


Just using a low cost 3D lidar like mid-360 is much more beneficial than making such a complicated system. The solution above was needed when even 2D lidar was over 20k. Mid-360 is just 800 bucks now.

And even if you were able to make 3D scanner using IMU+2D configuration, your system won't be able to stop moving even for a second due to the observability problem.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.