1
$\begingroup$

I am currently trying to do 3D SLAM with two 2D Lidars and possibly additional IMU in ROS. However, there seems to be no ROS package available to meet my needs. The closest one would be laser_pipeline stack, but the documentation only tells me about fusioning LaserScans from "one source" although what I need is fusioning vertical scan and horizontal scan into one 3D PointCloud2. So I currently need another package to fusion scans from different sources. Anybody have an idea how to solve this problem?

$\endgroup$
12
  • $\begingroup$ Are you sure you need a package for that instead of quickly writing the function yourself? $\endgroup$
    – FooTheBar
    Oct 7 '19 at 11:26
  • $\begingroup$ @FooTheBar Because I'm pretty new in ROS? Even if I try to, it would take weeks to do that for me. $\endgroup$
    – anymate98
    Oct 7 '19 at 11:32
  • $\begingroup$ What would take weeks? To get the transformation between the Lidars? $\endgroup$
    – FooTheBar
    Oct 7 '19 at 12:06
  • $\begingroup$ @FooTheBar It seems that my problem is a very simple thing to you. Sharing some ideas about it would be much helpful, isn't it? $\endgroup$
    – anymate98
    Oct 7 '19 at 12:10
  • $\begingroup$ Then you first have to say what exactly is the problem? Do you know the transformation between the two sensors? $\endgroup$
    – FooTheBar
    Oct 7 '19 at 12:11
1
$\begingroup$

I think that you will find that the laser_assembler in the laser_pipeline does exactly what you are looking for.

The laser_scan_assembler node accepts one topic as input. But you can remap or mux multiple laser scanners into that input topic and the assembler should be able to handle it. The algorithm should be using the actual headers from the incoming laser scans and consequently should be able to assemble them separately.

ALternatively you could just assemble the two scanners separately and then fuse the point clouds using the point_cloud_assembler node in the same package.

There's a tutorial for using the package to assemble laser scans

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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