Poor mapping with RGBD slam

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Poor mapping with RGBD slam

aadith-warrier
I am running RTAB map on a drone with an RGBD camera in simulation using gazebo. The generated maps are not consistent with the actual environment. I am not sure what is causing this error. I have verified the transforms being published, and it seems to be correct.

I have attached relevant screenshots below.
Thanks in advance.
AW

Simulated world:
Simulated world

Mapping:
Mapping

Transforms:


Launch file:
<launch>
    <!-- rtabmap slam -->
    <node pkg="rtabmap_slam" exec="rtabmap" args="--Rtabmap/DetectionRate 5">
        <remap from="/rgb/image" to="/camera"/>
        <remap from="/rgb/camera_info" to="/camera_info"/>
        <remap from="/depth/image" to="/depth_camera"/>
        <remap from="/odom" to="/odometry"/>

        <param name="approx_sync" value="true"/>
        <param name="use_sim_time" value="true"/>
        <param name="queue_size" value="256"/>  
        <param name="map_always_update" value='true'/> 
        <param name="wait_for_transform_duration" value="1" /> 
    </node>

</launch>

Reply | Threaded
Open this post in threaded view
|

Re: Poor mapping with RGBD slam

matlabbe
Administrator
It feels like that the camera_info and/or depth image published by gazebo is/are wrong. Can you share the resulting database?
Reply | Threaded
Open this post in threaded view
|

Re: Poor mapping with RGBD slam

aadith-warrier
Yeah sure. Here is the link to the database.
Reply | Threaded
Open this post in threaded view
|

Re: Poor mapping with RGBD slam

matlabbe
Administrator
There are three issues I can see:
1) There is a missing optical rotation for the camera, there should be a -Pi/2 0 -Pi/2 rotation between the base camera frame of the camera and the optical frame.



2) It seems that different camera_info are published on same topic name



The fx=277 one makes the point cloud very wrong.


3) As you can see in images above, the depth registration between RGB and depth is not perfect.