Rtabmap is not storing pointcloud

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

Rtabmap is not storing pointcloud

kolohe113
Hi, I created a Rtabmap launch file but when I tried to run it, Rtabmap does not save the point cloud as I rotate my camera. I have posted a picture below


The code:

<div style="background: #ffffff; overflow:auto;width:auto;border:solid gray;border-width:.1em .1em .1em .8em;padding:.2em .6em;"><pre style="margin: 0; line-height: 125%"><launch>
  <group ns="rtabmap">
  <arg name="launch_prefix"           default=""/> 
  <arg name="output"                  default="screen"/>

    <!-- Odometry -->
    <node pkg="rtabmap_ros" type="rgbd_odometry" name="rgbd_odometry" output="screen">
        <remap from="rgb/image" to="/camera/rgb/image_rect_color"/>
        <remap from="depth/image" to="/camera/depth_registered/image_raw"/>
        <remap from="rgb/camera_info" to="/camera/rgb/camera_info"/>
        <remap from="rgbd_image"      to="/camera/rgb/image_rect_color"/>
        <remap from="odom"      to="/odom"/>

      <param name="frame_id" type="string" value="camera_link"/>
    </node>

    <node name="rtabmap" pkg="rtabmap_ros" type="rtabmap" output="screen" args="--delete_db_on_start">
          <param name="frame_id" type="string" value="camera_link"/>
          <param name="subscribe_depth" type="bool" value="true"/>
          <param name="subscribe_scan" type="bool" value="true"/>

          <remap from="odom" to="odom"/>
          <remap from="scan" to="/scan"/>
          <remap from="rgb/image" to="/camera/rgb/image_rect_color"/>
          <remap from="depth/image" to="/camera/depth_registered/image_raw"/>
          <remap from="rgb/camera_info" to="/camera/rgb/camera_info"/>

          <param name="queue_size" type="int" value="10"/>

          <!-- RTAB-Map's parameters -->
          <param name="RGBD/NeighborLinkRefining" type="string" value="true"/>
          <param name="RGBD/ProximityBySpace"     type="string" value="true"/>
          <param name="RGBD/AngularUpdate"        type="string" value="0.01"/>
          <param name="RGBD/LinearUpdate"         type="string" value="0.01"/>
          <param name="RGBD/OptimizeFromGraphEnd" type="string" value="false"/>
          <param name="Optimizer/Slam2D"          type="string" value="true"/>
          <param name="Reg/Strategy"              type="string" value="1"/> <!-- 1=ICP -->
          <param name="Reg/Force3DoF"             type="string" value="false"/>
          <param name="Vis/MinInliers"            type="string" value="5"/>
          <param name="Vis/InlierDistance"        type="string" value="0.1"/>
          <param name="Rtabmap/TimeThr"           type="string" value="700"/>
          <param name="Mem/RehearsalSimilarity"   type="string" value="0.45"/>
          <param name="Grid/NoiseFilteringRadius" type="string" value="0.05"/>
          <param name="Grid/NoiseFilteringMinNeighbors" type="string" value="8"/>
          <param name="Grid/FromDepth" type="string" value="false"/>
          <param name="RGBD/ProximityPathMaxNeighbors" type="string" value="10"/>
    </node>
    <node if="true" pkg="rtabmap_ros" type="rtabmapviz" name="rtabmapviz" output="$(arg output)" launch-prefix="$(arg launch_prefix)">
      <param name="subscribe_depth" type="bool" value="true"/>
      <param name="subscribe_scan"       type="bool"   value="true"/>
      <param name="subscribe_odom_info" type="bool" value="true"/>
      <param name="subscribe_scan_cloud" type="bool"   value="false"/>
      <param name="frame_id"             type="string" value="camera_link"/>
      <param name="odom_frame_id"        type="string" value="odom"/>
      <param name="wait_for_transform_duration" type="double"   value="0.2"/>
      <param name="queue_size"           type="int"    value="10"/>
      <param name="approx_sync"          type="bool"   value="true"/>
   
      <remap from="rgb/image" to="/camera/rgb/image_rect_color"/>
      <remap from="depth/image" to="/camera/depth_registered/image_raw"/>
      <remap from="rgb/camera_info" to="/camera/rgb/camera_info"/>
      <remap from="rgbd_image"      to="/camera/rgb/image_rect_color"/>
       
     
     
      <remap from="scan"                   to="/scan"/>
     

      <remap from="odom"                   to="/odom"/>
    </node>


    <node pkg="tf" type="static_transform_publisher" name="cam_to_laser" 
      args="0.0 0.0 0.02 0.0 0.0 0.0 /camera_link /laser 100" />
  </group>
</launch>
</pre></div>
Reply | Threaded
Open this post in threaded view
|

Re: Rtabmap is not storing pointcloud

matlabbe
Administrator
Odometry looks running, as you can see an image in Odometry panel and that the corresponding point cloud with laser scan are shown in the 3D Map window. Loop closure detection panel should show something when rtabmap is started. Do you have any warnings on terminal from rtabmap node?
Reply | Threaded
Open this post in threaded view
|

Re: Rtabmap is not storing pointcloud

kolohe113
I got one warning:
"odometry: Could not get transform from camera_link to camera_rgb_optical_frame (stamp=1537143964.258749) after 0.200000 seconds ("wait_for_transform_duration"=0.200000)! Error="Lookup would require extrapolation into the past.  Requested time 1537143964.258749001 but the earliest data is at time 1537143971.068514269, when looking up transform from frame [camera_rgb_optical_frame] to frame [camera_link]. canTransform returned after 0.201885 timeout was 0.2."
 But it disappeared after a while
Reply | Threaded
Open this post in threaded view
|

Re: Rtabmap is not storing pointcloud

matlabbe
Administrator
What is the framerate of those topics?
$ rostopic hz /rtabmap/odom
$ rostopic hz /scan
$ rostopic hz /camera/rgb/image_rect_color
$ rostopic hz /camera/depth_registered/image_raw
$ rostopic hz /camera/rgb/camera_info

Can you copy/paste the whole terminal output after waiting 10 sec after everything is started?
Reply | Threaded
Open this post in threaded view
|

Re: Rtabmap is not storing pointcloud

kolohe113
for
$ rostopic hz /camera/rgb/image_rect_color
$ rostopic hz /camera/depth_registered/image_raw
$ rostopic hz /camera/rgb/camera_info

I got average rate of 29+.

I did not subscribe to scan this time.

The issue is, for rostopic hz /rtabmap/odom, I got "no new messages""
Reply | Threaded
Open this post in threaded view
|

Re: Rtabmap is not storing pointcloud

matlabbe
Administrator
Can you show rqt_graph?