0
$\begingroup$

Rosanswers logo

Hi, I am using rtabmap using stereo on a robot. Everything seems to work fine, except that the MapCloud does not contain registered clouds. The individual 3D maps (from different graph nodes) "supposedly" are not registered to each other. For example there are multiple (3 or 4) replica of the same scene which are not registered. Here are some details.

Please help, thanks!


Originally posted by lealem on ROS Answers with karma: 1 on 2017-08-02

Post score: 0


Original comments

Comment by Blupon on 2017-08-03:
Could you give us details on how you launched RTABMap, what ROS topics you're having difficulties with, the result of view_frames ?

Comment by lealem on 2017-08-03:
I would say the problem is with the cloud data (mapping result), everything else seems to work perfect! And I am launching using the "stereo_mapping.launch" file, with minor modifications (like topic names etc) ps. all the demos work as expected

Comment by matlabbe on 2017-08-03:
If you can share the resulting database (dropbox or google drive link), it can be useful.

Comment by lealem on 2017-08-03:
here is a link to the launch file i used and the rtabmap database database https://www.dropbox.com/sh/vtp0xao60fbfg33/AADkBI-FDUYuz6F6L-YC79nca?dl=0 launch file https://www.dropbox.com/s/eiumj3fzs7bdbfj/tis_stereo_mapping.launch?dl=0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Hi lealem,

At first view the optimized trajectory after loop closure looks good: image description

For the 3D map, there are indeed some problems with the 3D projection. I noticed that the scale of some point clouds are not the same, which would be caused by a poor synchronization between the left and right frames, in particular when the robot is rotating. Here two examples of frames taken before and after rotating at the same place: image description image description

In first screenshot the far wall is about ~10/11 meters from the robot, as in the second screenshot the far wall is about ~5-6 meters from the robot. When rotating, as left and right frames are not synchronized, the disparity changes, making objects appearing more closer. With stereo, it is strongly recommend to use exactly synchronized cameras (e.g., hardware synchronization between left and right cameras), then with rtabmap use approx_sync parameter set to false.

PS: To get the 2D grid map as above, I used parameters: Grid/MaxObstacleHeight=2, Grid/NoiseFilteringRadius=0.15, Grid/NoiseFilteringMinNeighbors=10, Grid/NormalsSegmentation=false, Grid/3D=false and Grid/ProjRayTracing=true.

EDIT: just noticed that you were using approx_sync because of wheel odometry. To use approx_sync=false with wheel odometry, set odom_frame_id so that rtabmap uses TF to get odometry instead of the topic (for which approx_sync should be true).

cheers, Mathieu


Originally posted by matlabbe with karma: 6409 on 2017-08-04

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by lealem on 2017-08-16:
Hi Mathieu, Thank you for the insight. Changed my stereo setup to the "ZED" and works like a charm!

Best, Lealem

$\endgroup$

Your Answer

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