introlab / rtabmap_ros

RTAB-Map's ROS package.
http://wiki.ros.org/rtabmap_ros
BSD 3-Clause "New" or "Revised" License
1.01k stars 558 forks source link

Did not receive data since 5 seconds! #189

Open mertmzk opened 7 years ago

mertmzk commented 7 years ago

Hi all, I have no success to run rtabmap with my two webcams stereo setup camera.

here my rqt_graph

rosgraph

and the warning mesage with approx_sync:=false

[ WARN] [1500890325.598924032]: /rtabmap/rtabmapviz: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their header are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). Parameter "approx_sync" is false, which means that input topics should have all the exact timestamp for the callback to be called. /rtabmap/rtabmapviz subscribed to (exact sync): /rtabmap/odom, /stereo_camera/left/image_rect_color, /stereo_camera/right/image_rect, /stereo_camera/left/camera_info, /stereo_camera/right/camera_info, /rtabmap/odom_info

if I make it approx_sync:=true here the error:

[ WARN] [1500890522.000583488]: odometry: Could not get transform from base_link to yuyv (stamp=1500890521.696677) after 0.200000 seconds ("wait_for_transform_duration"=0.200000)! Error=". canTransform returned after 0.201409 timeout was 0.2."

I also attached the aoutput of the tf view_frames with approx_sync:=false . frames.pdf

Can anyone help me to solve the problem please?

Thanks

matlabbe commented 7 years ago

What is your launch file or command line used? "base_link" is the default frame_id, you may want to change it to "yuyv" for example. Well, I don't recommend using to seperate webcams to do stereo, as synchronization is crucial between left and right camera. In general, stereo cameras are synchronized by the hardware, so that exact synchronization can be used.

cheers, Mathieu

TothMateGit commented 7 years ago

I have also the same problem. I started to create a stereo system with two cameras, but I've also got the same warning messages. I created an approx synchronizer node to avoid the problem mentioned by matlabbe, but that solution did not help me out, and I opened another ROS topic here.

I'm afraid about we can not fix the problem, and I should to use a real stereo camera and a frame grabber, shame.

mertmzk commented 7 years ago

Hi @TothMateGit

I fixed the problem as I was not producing proper tf's for the base_link. Make sure that you publish tf's for right and left camera as child, stereo_camera as parent. And connect stereo_camera tf to base_link.

I hope it helps.

TothMateGit commented 7 years ago

Yes, the problem is the bad tf generation and tf tree, tf connection between the nodes and topics. We found the solution to fix this issue as well, if you want more information about the solution please check the following links: ROS answers Stack Overflow

hychiang-git commented 5 years ago

I am not sure whether my issue is the same. I post my issue here because it seems related and this issue is not yet closed.

I am using realsense RS200 (driver: https://github.com/SyrianSpock/realsense_gazebo_plugin) as my RGBD camera in Gazebo simulator. I was trying to map the color and depth from RS200 in the Gazebo to RTAB-MAP, but I got this warning when I run my rtabmap launch file.

I also read this #181 but got not much help from it.

[ WARN] [1553082244.099429564, 7862.743000000]: /rtabmap/rtabmap: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their header are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_size" parameter (current=10).
/rtabmap/rtabmap subscribed to (approx sync):
   /rtabmap/odom,
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info

Here is the result I run ros topic hz and both color and depth topics are published, but I still get the warning and see nothing in my Rivz.

$ rostopic hz /realsense/camera/color/image_raw /realsense/camera/depth/image_raw                                                                                                    
subscribed to [/realsense/camera/color/image_raw]
subscribed to [/realsense/camera/depth/image_raw]
WARNING: may be using simulated time
              topic                  rate   min_delta   max_delta   std_dev    window
=====================================================================================
/realsense/camera/color/image_raw   22.59   0.034       0.052       0.004351   20    
/realsense/camera/depth/image_raw   22.43   0.037       0.057       0.005641   20    

              topic                  rate   min_delta   max_delta   std_dev    window
=====================================================================================
/realsense/camera/color/image_raw   22.34   0.034       0.054       0.004011   42    
/realsense/camera/depth/image_raw   22.37   0.036       0.057       0.004697   42    

              topic                  rate   min_delta   max_delta   std_dev    window
=====================================================================================
/realsense/camera/color/image_raw   22.1    0.034       0.054       0.003899   62    
/realsense/camera/depth/image_raw   22.13   0.036       0.057       0.004471   62    

              topic                  rate   min_delta   max_delta   std_dev    window
=====================================================================================
/realsense/camera/color/image_raw   22.28   0.026       0.054       0.004334   84    
/realsense/camera/depth/image_raw   22.25   0.031       0.058       0.005172   84    

              topic                  rate   min_delta   max_delta   std_dev    window
=====================================================================================
/realsense/camera/color/image_raw   22.2    0.026       0.057       0.004835   105   
/realsense/camera/depth/image_raw   22.18   0.031       0.062       0.005577   105   

              topic                  rate   min_delta   max_delta   std_dev    window
=====================================================================================
/realsense/camera/color/image_raw   22.23   0.026       0.058       0.005195   126   
/realsense/camera/depth/image_raw   22.24   0.031       0.07        0.005845   126   

              topic                  rate   min_delta   max_delta   std_dev    window
=====================================================================================
/realsense/camera/color/image_raw   22.26   0.026       0.058       0.005144   132   
/realsense/camera/depth/image_raw   22.27   0.031       0.07        0.005781   132   

I provide my rtabmap launch file here. I changed the value of frame_id to origin here, since the point cloud shown in Rviz with fixed frame origin.

<launch>
  <!-- Mapping -->
  <group ns="rtabmap">

    <node name="rtabmap" pkg="rtabmap_ros" type="rtabmap" output="screen">
          <param name="database_path"       type="string" value="rtabmap.db"/>
          <param name="frame_id"            type="string" value="origin"/>
          <param name="subscribe_depth"     type="bool"   value="true"/>
          <param name="subscribe_scan"      type="bool"   value="false"/>
          <param name="map_negative_poses_ignored" type="bool" value="true"/>

          <!-- inputs -->
          <remap from="scan"            to="/scan"/>
          <remap from="rgb/image"       to="/realsense/camera/color/image_raw"/>
          <remap from="depth/image"     to="/realsense/camera/depth/image_raw"/>
          <remap from="rgb/camera_info" to="/realsense/camera/color/camera_info"/>

          <!-- output -->
          <remap from="grid_map" to="/map"/>

          <!-- RTAB-Map's parameters: do "rosrun rtabmap rtabmap (double-dash)params" to see the list of available parameters. -->
          <param name="RGBD/ProximityBySpace"        type="string" value="true"/>   <!-- Local loop closure detection (using estimated position) with locations in WM -->
          <param name="RGBD/OptimizeFromGraphEnd"    type="string" value="false"/>  <!-- Set to false to generate map correction between /map and /odom -->
          <param name="Kp/MaxDepth"                  type="string" value="4.0"/>
          <param name="Reg/Strategy"                 type="string" value="0"/>      <!-- Loop closure transformation: 0=Visual, 1=ICP, 2=Visual+ICP -->
          <param name="Icp/CorrespondenceRatio"      type="string" value="0.3"/>
          <param name="Vis/MinInliers"               type="string" value="15"/>      <!-- 3D visual words minimum inliers to accept loop closure -->
          <param name="Vis/InlierDistance"           type="string" value="0.1"/>    <!-- 3D visual words correspondence distance -->
          <param name="RGBD/AngularUpdate"           type="string" value="0.1"/>    <!-- Update map only if the robot is moving -->
          <param name="RGBD/LinearUpdate"            type="string" value="0.1"/>    <!-- Update map only if the robot is moving -->
          <param name="RGBD/ProximityPathMaxNeighbors" type="string" value="0"/>
          <param name="Rtabmap/TimeThr"              type="string" value="700"/>
          <param name="Mem/RehearsalSimilarity"      type="string" value="0.30"/>
          <param name="Optimizer/Slam2D"             type="string" value="true"/>
          <param name="Reg/Force3DoF"                type="string" value="true"/>
          <param name="GridGlobal/MinSize"           type="string" value="20"/>
          <param name="RGBD/OptimizeMaxError"        type="string" value="0.1"/>

    </node>

  </group>
</launch>

Snapshots of Gazebo:

image

Snapshots of Rivz: image

Rviz shows nothing when I subscribe to rtabmap/mapData. image

Would someone point out where did I get wrong? Thanks!

matlabbe commented 5 years ago

Did you check if the camera_info is also published? $ rostopic hz /realsense/camera/color/image_raw /realsense/camera/depth/image_raw /realsense/camera/color/camera_info

hychiang-git commented 5 years ago

Hmm, it seems that camera_info is also published.

$ rostopic hz /realsense/camera/color/image_raw /realsense/camer
a/depth/image_raw /realsense/camera/color/camera_info
subscribed to [/realsense/camera/color/image_raw]
subscribed to [/realsense/camera/depth/image_raw]
subscribed to [/realsense/camera/color/camera_info]
WARNING: may be using simulated time
               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     24.44   0.028       0.051       0.00662    24    
/realsense/camera/depth/image_raw     24.52   0.025       0.053       0.006234   24    
/realsense/camera/color/camera_info   24.44   0.028       0.051       0.006281   24    

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     24.34   0.028       0.051       0.005315   48    
/realsense/camera/depth/image_raw     24.4    0.025       0.053       0.005152   48    
/realsense/camera/color/camera_info   24.39   0.028       0.063       0.006108   47    

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     24.44   0.026       0.056       0.005403   71    
/realsense/camera/depth/image_raw     24.43   0.022       0.056       0.005632   71    
/realsense/camera/color/camera_info   24.45   0.028       0.063       0.005806   71    

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     24.42   0.026       0.056       0.00524    95    
/realsense/camera/depth/image_raw     24.45   0.022       0.056       0.005973   95    
/realsense/camera/color/camera_info   24.43   0.026       0.063       0.005572   95    

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     24.34   0.026       0.056       0.005376   119   
/realsense/camera/depth/image_raw     24.36   0.022       0.056       0.006017   119   
/realsense/camera/color/camera_info   24.34   0.026       0.063       0.005683   118   

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     24.23   0.026       0.056       0.005376   142   
/realsense/camera/depth/image_raw     24.23   0.022       0.056       0.006029   142   
/realsense/camera/color/camera_info   24.23   0.026       0.063       0.005671   141  
matlabbe commented 5 years ago

What is rgbd_odometry telling? The other topic is /rtabmap/odom, maybe odometry is lost

hychiang-git commented 5 years ago

Yes, you are right. There is no /rtabmap/rgbd_odometry and /rtabmap/odom under my topic list. How would I fix this?

$ rostopic hz /rtabmap/rgbd_odometry
WARNING: topic [/rtabmap/rgbd_odometry] does not appear to be published yet
$ rostopic hz /rtabmap/rgbd_odom
WARNING: topic [/rtabmap/rgbd_odom] does not appear to be published yet

Here is the result of rostopic list

$ rostopic list
/clicked_point
/clock
/gazebo/link_states
/gazebo/model_states
/gazebo/parameter_descriptions
/gazebo/parameter_updates
/gazebo/set_link_state
/gazebo/set_model_state
/gazebo_gui/parameter_descriptions
/gazebo_gui/parameter_updates
/initialpose
/map
/move_base_simple/goal
/realsense/camera/color/camera_info
/realsense/camera/color/image_raw
/realsense/camera/color/image_raw/compressed
/realsense/camera/color/image_raw/compressed/parameter_descriptions
/realsense/camera/color/image_raw/compressed/parameter_updates
/realsense/camera/color/image_raw/compressedDepth
/realsense/camera/color/image_raw/compressedDepth/parameter_descriptions
/realsense/camera/color/image_raw/compressedDepth/parameter_updates
/realsense/camera/color/image_raw/theora
/realsense/camera/color/image_raw/theora/parameter_descriptions
/realsense/camera/color/image_raw/theora/parameter_updates
/realsense/camera/depth/camera_info
/realsense/camera/depth/image_raw
/realsense/camera/depth/image_raw/compressed
/realsense/camera/depth/image_raw/compressed/parameter_descriptions
/realsense/camera/depth/image_raw/compressed/parameter_updates
/realsense/camera/depth/image_raw/compressedDepth
/realsense/camera/depth/image_raw/compressedDepth/parameter_descriptions
/realsense/camera/depth/image_raw/compressedDepth/parameter_updates
/realsense/camera/depth/image_raw/theora
/realsense/camera/depth/image_raw/theora/parameter_descriptions
/realsense/camera/depth/image_raw/theora/parameter_updates
/realsense/camera/depth/image_rect
/realsense/camera/depth/image_rect/compressed
/realsense/camera/depth/image_rect/compressed/parameter_descriptions
/realsense/camera/depth/image_rect/compressed/parameter_updates
/realsense/camera/depth/image_rect/compressedDepth
/realsense/camera/depth/image_rect/compressedDepth/parameter_descriptions
/realsense/camera/depth/image_rect/compressedDepth/parameter_updates
/realsense/camera/depth/image_rect/theora
/realsense/camera/depth/image_rect/theora/parameter_descriptions
/realsense/camera/depth/image_rect/theora/parameter_updates
/realsense/camera/depth_registered/points
/realsense/camera/ir/camera_info
/realsense/camera/ir/image_raw
/realsense/camera/ir/image_raw/compressed
/realsense/camera/ir/image_raw/compressed/parameter_descriptions
/realsense/camera/ir/image_raw/compressed/parameter_updates
/realsense/camera/ir/image_raw/compressedDepth
/realsense/camera/ir/image_raw/compressedDepth/parameter_descriptions
/realsense/camera/ir/image_raw/compressedDepth/parameter_updates
/realsense/camera/ir/image_raw/theora
/realsense/camera/ir/image_raw/theora/parameter_descriptions
/realsense/camera/ir/image_raw/theora/parameter_updates
/realsense/camera/ir2/camera_info
/realsense/camera/ir2/image_raw
/realsense/camera/ir2/image_raw/compressed
/realsense/camera/ir2/image_raw/compressed/parameter_descriptions
/realsense/camera/ir2/image_raw/compressed/parameter_updates
/realsense/camera/ir2/image_raw/compressedDepth
/realsense/camera/ir2/image_raw/compressedDepth/parameter_descriptions
/realsense/camera/ir2/image_raw/compressedDepth/parameter_updates
/realsense/camera/ir2/image_raw/theora
/realsense/camera/ir2/image_raw/theora/parameter_descriptions
/realsense/camera/ir2/image_raw/theora/parameter_updates
/rosout
/rosout_agg
/rtabmap/cloud_ground
/rtabmap/cloud_map
/rtabmap/cloud_obstacles
/rtabmap/global_path
/rtabmap/goal
/rtabmap/goal_node
/rtabmap/goal_out
/rtabmap/goal_reached
/rtabmap/grid_prob_map
/rtabmap/info
/rtabmap/initialpose
/rtabmap/labels
/rtabmap/local_path
/rtabmap/localization_pose
/rtabmap/mapData
/rtabmap/mapGraph
/rtabmap/mapPath
/rtabmap/move_base/cancel
/rtabmap/move_base/feedback
/rtabmap/move_base/goal
/rtabmap/move_base/result
/rtabmap/move_base/status
/rtabmap/octomap_binary
/rtabmap/octomap_empty_space
/rtabmap/octomap_full
/rtabmap/octomap_grid
/rtabmap/octomap_ground
/rtabmap/octomap_obstacles
/rtabmap/octomap_occupied_space
/rtabmap/proj_map
/rtabmap/scan_map
/standalone_nodelet/bond
/tf
/tf_static

As I subscribe some topic from rtabmap like rostopic hz /rtabmap/cloud_map, I got no new messages

$ rostopic hz /rtabmap/cloud_map
subscribed to [/rtabmap/cloud_map]
WARNING: may be using simulated time
no new messages
no new messages
no new messages
no new messages
no new messages
no new messages
no new messages
matlabbe commented 5 years ago

Can you post the launch file you are using? It seems you don't have any nodes publishing odometry.

hychiang-git commented 5 years ago

I am using the launch files from realsense_gazebo_plugin

Here is what I do:

  1. launch realsense.launch, then Gazebo is launched. image

Some warnings and errors are shown here, but I think they are minor.

SUMMARY
========

PARAMETERS
 * /rosdistro: kinetic
 * /rosversion: 1.12.14
 * /use_sim_time: True

NODES
  /
    gazebo (gazebo_ros/gzserver)
    gazebo_gui (gazebo_ros/gzclient)

auto-starting new master
process[master]: started with pid [21755]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 08ad5056-55b3-11e9-8227-ac220b8958ba
process[rosout-1]: started with pid [21768]
started core service [/rosout]
process[gazebo-2]: started with pid [21771]
process[gazebo_gui-3]: started with pid [21784]
Gazebo multi-robot simulator, version 7.0.0
Copyright (C) 2012-2016 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

Gazebo multi-robot simulator, version 7.0.0
Copyright (C) 2012-2016 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

[ INFO] [1554256305.612527465]: Finished loading Gazebo ROS API Plugin.
[Msg] Waiting for master.
[ INFO] [1554256305.613125571]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 192.168.0.172
[ INFO] [1554256305.660957967]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1554256305.661593587]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[Msg] Waiting for master.
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 192.168.0.172
[Wrn] [msgs.cc:1655] Conversion of sensor type[depth] not suppported.
[ INFO] [1554256307.806725369]: Realsense Gazebo ROS plugin loading.

RealSensePlugin: The realsense_camera plugin is attach to model realsense_camera_0
[Wrn] [msgs.cc:1655] Conversion of sensor type[depth] not suppported.
[Wrn] [msgs.cc:1655] Conversion of sensor type[depth] not suppported.
[ INFO] [1554256308.073718367, 1286.735000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1554256308.074983481, 1286.737000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1554256308.181066389, 1286.833000000]: Physics dynamic reconfigure ready.
[ INFO] [1554256308.189281499, 1286.840000000]: Physics dynamic reconfigure ready.
[Wrn] [msgs.cc:1655] Conversion of sensor type[depth] not suppported.
[Err] [Scene.cc:2927] Light [sun] not found. Use topic ~/factory/light to spawn a new light.
[Wrn] [Publisher.cc:140] Queue limit reached for topic /gazebo/default/pose/local/info, deleting message. This warning is printed only once.
  1. launch depth_proc.launch
    
    SUMMARY
    ========

PARAMETERS

NODES / convert_metric (nodelet/nodelet) fake_tf (tf/static_transform_publisher) points_xyzrgb (nodelet/nodelet) standalone_nodelet (nodelet/nodelet)

ROS_MASTER_URI=http://localhost:11311

process[standalone_nodelet-1]: started with pid [22450] process[convert_metric-2]: started with pid [22451] process[points_xyzrgb-3]: started with pid [22452] process[fake_tf-4]: started with pid [22461] [ INFO] [1554256331.873388002]: Initializing nodelet with 8 worker threads.


3. launch `realsense_rtabmap.launch`. It produces the warning: `Did not receive data since 5 seconds!`

SUMMARY

PARAMETERS

NODES /rtabmap/ rtabmap (rtabmap_ros/rtabmap) nnp ROS_MASTER_URI=http://localhost:11311

process[rtabmap/rtabmap-1]: started with pid [22960] [ INFO] [1554256388.738121181]: Starting node... [ INFO] [1554256388.843398993]: Initializing nodelet with 8 worker threads. [ INFO] [1554256389.389227804, 1367.177000000]: /rtabmap/rtabmap(maps): map_filter_radius = 0.000000 [ INFO] [1554256389.389277874, 1367.178000000]: /rtabmap/rtabmap(maps): map_filter_angle = 30.000000 [ INFO] [1554256389.389307087, 1367.178000000]: /rtabmap/rtabmap(maps): map_cleanup = true [ INFO] [1554256389.389333815, 1367.178000000]: /rtabmap/rtabmap(maps): map_negative_poses_ignored = true [ INFO] [1554256389.389361083, 1367.178000000]: /rtabmap/rtabmap(maps): map_negative_scan_ray_tracing = true [ INFO] [1554256389.389402029, 1367.178000000]: /rtabmap/rtabmap(maps): cloud_output_voxelized = true [ INFO] [1554256389.389429234, 1367.178000000]: /rtabmap/rtabmap(maps): cloud_subtract_filtering = false [ INFO] [1554256389.389458630, 1367.178000000]: /rtabmap/rtabmap(maps): cloud_subtract_filtering_min_neighbors = 2 [ INFO] [1554256389.405144125, 1367.195000000]: /rtabmap/rtabmap(maps): octomap_tree_depth = 16 [ INFO] [1554256389.476287776, 1367.262000000]: rtabmap: frame_id = origin [ INFO] [1554256389.476353483, 1367.262000000]: rtabmap: map_frame_id = map [ INFO] [1554256389.476388602, 1367.262000000]: rtabmap: tf_delay = 0.050000 [ INFO] [1554256389.476416800, 1367.262000000]: rtabmap: tf_tolerance = 0.100000 [ INFO] [1554256389.476442244, 1367.262000000]: rtabmap: odom_sensor_sync = false [ INFO] [1554256390.076072553, 1367.855000000]: Setting RTAB-Map parameter "GridGlobal/MinSize"="20" [ INFO] [1554256390.111875594, 1367.895000000]: Setting RTAB-Map parameter "Icp/CorrespondenceRatio"="0.3" [ INFO] [1554256390.327538394, 1368.103000000]: Setting RTAB-Map parameter "Kp/MaxDepth"="4.0" [ INFO] [1554256390.639076019, 1368.406000000]: Setting RTAB-Map parameter "Mem/RehearsalSimilarity"="0.30" [ INFO] [1554256391.392632661, 1369.164000000]: Setting RTAB-Map parameter "RGBD/AngularUpdate"="0.1" [ INFO] [1554256391.425929426, 1369.196000000]: Setting RTAB-Map parameter "RGBD/LinearUpdate"="0.1" [ INFO] [1554256391.460584645, 1369.232000000]: Setting RTAB-Map parameter "RGBD/OptimizeFromGraphEnd"="false" [ INFO] [1554256391.461577479, 1369.234000000]: Setting RTAB-Map parameter "RGBD/OptimizeMaxError"="0.1" [ INFO] [1554256391.489547247, 1369.262000000]: Setting RTAB-Map parameter "RGBD/ProximityBySpace"="true" [ INFO] [1554256391.515653877, 1369.275000000]: Setting RTAB-Map parameter "RGBD/ProximityPathMaxNeighbors"="0" [ INFO] [1554256391.537354821, 1369.292000000]: Setting RTAB-Map parameter "Reg/Force3DoF"="true" [ INFO] [1554256391.541647808, 1369.304000000]: Setting RTAB-Map parameter "Reg/Strategy"="0" [ INFO] [1554256391.650595222, 1369.419000000]: Setting RTAB-Map parameter "Rtabmap/TimeThr"="700" [ INFO] [1554256391.977166136, 1369.748000000]: Setting RTAB-Map parameter "Vis/InlierDistance"="0.1" [ INFO] [1554256392.010793451, 1369.780000000]: Setting RTAB-Map parameter "Vis/MinInliers"="15" [ WARN] [1554256392.589124071, 1370.346000000]: Rtabmap: Parameter name changed: "Optimizer/Slam2D" -> "Reg/Force3DoF". Please update your launch file accordingly. Value "true" is still set to the new par ameter name. [ INFO] [1554256393.611438826, 1371.356000000]: RTAB-Map detection rate = 1.000000 Hz [ INFO] [1554256393.612576359, 1371.356000000]: rtabmap: Using database from "/home/hychiang/.ros/rtabmap.db" (2 MB). [ INFO] [1554256393.635563962, 1371.375000000]: rtabmap: 2D occupancy grid map loaded (421x421). [ INFO] [1554256393.641751570, 1371.385000000]: rtabmap: Database version = "0.17.6". [ INFO] [1554256393.742098018, 1371.483000000]: /rtabmap/rtabmap: queue_size = 30 [ INFO] [1554256393.742147084, 1371.483000000]: /rtabmap/rtabmap: rgbd_cameras = 1 [ INFO] [1554256393.742182180, 1371.483000000]: /rtabmap/rtabmap: approx_sync = true [ INFO] [1554256393.742322136, 1371.484000000]: Setup depth callback [ INFO] [1554256393.793504675, 1371.541000000]: /rtabmap/rtabmap subscribed to (approx sync): /rtabmap/odom, /realsense/camera/color/image_raw, /realsense/camera/depth/image_raw, /realsense/camera/color/camera_info [ INFO] [1554256393.816021425, 1371.555000000]: rtabmap 0.17.6 started... [ WARN] [1554256398.858495728, 1376.542000000]: /rtabmap/rtabmap: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their head er are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_size" parameter (current=30). /rtabmap/rtabmap subscribed to (approx sync): /rtabmap/odom, /realsense/camera/color/image_raw, /realsense/camera/depth/image_raw, /realsense/camera/color/camera_info [ WARN] [1554256403.960503131, 1381.543000000]: /rtabmap/rtabmap: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their head er are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_size" parameter (current=30). /rtabmap/rtabmap subscribed to (approx sync): /rtabmap/odom, /realsense/camera/color/image_raw, /realsense/camera/depth/image_raw, /realsense/camera/color/camera_info [ WARN] [1554256409.025077108, 1386.543000000]: /rtabmap/rtabmap: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their head er are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_size" parameter (current=30). /rtabmap/rtabmap subscribed to (approx sync): /rtabmap/odom, /realsense/camera/color/image_raw, /realsense/camera/depth/image_raw, /realsense/camera/color/camera_info


4. Finally, I ran `$ rviz`. As Rviz is open, I select `origin` at `Fixed Frame` under `Global Options` and add `/realsense/camera/depth_registered/points` and `/realsense/camera/color/image_raw`

[ INFO] [1554256400.639810124]: rviz version 1.12.16 [ INFO] [1554256400.639882833]: compiled against Qt version 5.5.1 [ INFO] [1554256400.639902548]: compiled against OGRE version 1.9.0 (Ghadamon) [ INFO] [1554256401.952788719, 1379.570000000]: Stereo is NOT SUPPORTED [ INFO] [1554256401.953552355, 1379.570000000]: OpenGl version: 4.5 (GLSL 4.5).



Here is the snapshot of rviz.
![image](https://user-images.githubusercontent.com/9960543/55448070-eb555800-55f8-11e9-86d7-e2a300673848.png)
matlabbe commented 5 years ago

Can you check: $ rostopic hz /realsense/camera/color/image_raw /realsense/camera/depth/image_raw /realsense/camera/color/camera_info

If there is no depth image, you would have to reconstruct one from the point cloud. To do that: $ rosrun rtabmap_ros pointcloud_to_depthimage cloud:=/realsense/camera/depth_registered/points camera_info:=/realsense/camera/color/camera_info image_raw:=/realsense/camera/depth/image_raw image:=/realsense/camera/depth/image _approx:=false _fill_holes_size:=2

cheers, Mathieu

hychiang-git commented 5 years ago

Hmm... I ran rosrun rtabmap_ros pointcloud_to_depthimage cloud:=/realsense/camera/depth_registered/points camera_info:=/realsense/camera/color/camera_info image_raw:=/realsense/camera/depth/image_raw image:=/realsense/camera/depth/image _approx:=false _fill_holes_size:=2 before launch realsense_rtabmap.launch, but it seems that RTABMAP is still not receiving the camera data.

I also checked the depth image. There was the result when I ran $ rostopic hz /realsense/camera/color/image_raw /realsense/camera/depth/image_raw /realsense/camera/color/camera_info

$ rostopic hz /realsense/camera/color/image_raw /realsense/camera/depth/image_raw /realsense/camera/color/camera_info
subscribed to [/realsense/camera/color/image_raw]
subscribed to [/realsense/camera/depth/image_raw]
subscribed to [/realsense/camera/color/camera_info]
WARNING: may be using simulated time
               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     32.13   0.023       0.052       0.005504   33    
/realsense/camera/depth/image_raw     32.46   0.021       0.042       0.00548    33    
/realsense/camera/color/camera_info   33.03   0.024       0.038       0.003713   32    

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     32.81   0.021       0.052       0.005114   66    
/realsense/camera/depth/image_raw     32.96   0.021       0.042       0.004935   66    
/realsense/camera/color/camera_info   33.24   0.018       0.039       0.004452   65    

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     33.38   0.016       0.052       0.00493    100   
/realsense/camera/depth/image_raw     33.42   0.021       0.042       0.004577   100   
/realsense/camera/color/camera_info   33.68   0.018       0.039       0.004309   99    

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     33.56   0.016       0.052       0.004803   133   
/realsense/camera/depth/image_raw     33.6    0.021       0.043       0.004726   133   
/realsense/camera/color/camera_info   33.8    0.018       0.04        0.004289   132   

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     33.77   0.016       0.052       0.004716   167   
/realsense/camera/depth/image_raw     33.84   0.017       0.043       0.004638   167   
/realsense/camera/color/camera_info   33.92   0.018       0.04        0.004387   165   

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     33.81   0.016       0.052       0.004727   200   
/realsense/camera/depth/image_raw     33.86   0.017       0.043       0.004655   200   
/realsense/camera/color/camera_info   33.97   0.018       0.04        0.004321   199   

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     33.99   0.016       0.052       0.004629   234   
/realsense/camera/depth/image_raw     34.02   0.017       0.043       0.004589   234   
/realsense/camera/color/camera_info   34.13   0.018       0.04        0.004261   233   

               topic                   rate   min_delta   max_delta   std_dev    window
=======================================================================================
/realsense/camera/color/image_raw     34.1    0.016       0.052       0.004597   262   
/realsense/camera/depth/image_raw     34.13   0.014       0.043       0.004729   262   
/realsense/camera/color/camera_info   34.23   0.018       0.04        0.004296   261   

I can subscribe to the depth image topic and visualize the depth map in Rviz. Here is the snapshot, lower left is the depth map: image


Besides, I also tried to start from turtlebot and modified kobuki_hexagons_r200.urdf.xacro as follow (placed a realsense r200 only in Gazebo) would produce the same warning: Did not receive data since 5 seconds!

<?xml version="1.0"?>
<!--
    - Base      : kobuki
    - Stacks    : hexagons
    - 3d Sensor : r200
-->
<robot name="turtlebot" xmlns:xacro="http://ros.org/wiki/xacro">

  <xacro:include filename="$(find turtlebot_octomap)/urdf/turtlebot_common_library.urdf.xacro" />
  <xacro:include filename="$(find turtlebot_octomap)/urdf/kobuki/kobuki.urdf.xacro" />
  <xacro:include filename="$(find turtlebot_octomap)/urdf/stacks/hexagons.urdf.xacro"/>
  <xacro:include filename="$(find turtlebot_octomap)/urdf/sensors/r200.urdf.xacro"/>

  <!-- 
  <kobuki/>
  <stack_hexagons parent="base_link"/>   
  <sensor_r200  parent="base_link"/>
  -->
  <link name="world" />
  <sensor_r200 parent="world" />
</robot>

Warnings from turtlebot

[ WARN] [1554270428.847831910, 499.250000000]: /rtabmap/rtabmap: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their header are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_size" parameter (current=30).
/rtabmap/rtabmap subscribed to (approx sync):
   /odom,
   /camera/rgb/image_raw,
   /camera/depth/image_raw,
   /camera/rgb/camera_info
[ WARN] [1554270430.962925137, 501.360000000]: Timed out waiting for transform from base_footprint to map to become available before running costmap, tf error: canTransform: target_frame map does not exist. canTransform: source_frame base_footprint does not exist.. canTransform returned after 0.1 timeout was 0.1.
[ WARN] [1554270433.855918684, 504.250000000]: /rtabmap/rtabmap: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their header are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_size" parameter (current=30).
/rtabmap/rtabmap subscribed to (approx sync):
   /odom,
   /camera/rgb/image_raw,
   /camera/depth/image_raw,
   /camera/rgb/camera_info
[ WARN] [1554270436.058122819, 506.460000000]: Timed out waiting for transform from base_footprint to map to become available before running costmap, tf error: canTransform: target_frame map does not exist. canTransform: source_frame base_footprint does not exist.. canTransform returned after 0.1 timeout was 0.1.
[ WARN] [1554270438.860224114, 509.250000000]: /rtabmap/rtabmap: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their header are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_size" parameter (current=30).
/rtabmap/rtabmap subscribed to (approx sync):
   /odom,
   /camera/rgb/image_raw,
   /camera/depth/image_raw,
   /camera/rgb/camera_info
matlabbe commented 5 years ago

I just realized in the previous post that you launched only rtabmap node (without rgbd_odometry node), so /rtabmap/odom topic was indeed not published. In realsense_rtabmap.launch, to launch visual odometry, add the following in rtabmap namespace:

    <node name="rtabmap" pkg="rgbd_odometry" type="rgbd_odometry" output="screen">
          <param name="frame_id"            type="string" value="origin"/>
          <param name="approx_sync"        type="bool" value="false"/> 

          <remap from="rgb/image"       to="/realsense/camera/color/image_raw"/>
          <remap from="depth/image"     to="/realsense/camera/depth/image_raw"/>
          <remap from="rgb/camera_info" to="/realsense/camera/color/camera_info"/>
    </node>

In your last message, you are using the /odom topic as odometry, make sure it is published from the kuboki.

cheers, Mathieu

hychiang-git commented 5 years ago

It works for me. Thanks for catching the bug.

SUMMARY
========

PARAMETERS
 * /rosdistro: kinetic
 * /rosversion: 1.12.14
 * /rtabmap/rtabmap/Grid/FromDepth: true
 * /rtabmap/rtabmap/GridGlobal/MinSize: 20
 * /rtabmap/rtabmap/Icp/CorrespondenceRatio: 0.3
 * /rtabmap/rtabmap/Kp/MaxDepth: 4.0
 * /rtabmap/rtabmap/Mem/RehearsalSimilarity: 0.30
 * /rtabmap/rtabmap/Optimizer/Slam2D: true
 * /rtabmap/rtabmap/RGBD/AngularUpdate: 0.1
 * /rtabmap/rtabmap/RGBD/LinearUpdate: 0.1
 * /rtabmap/rtabmap/RGBD/OptimizeFromGraphEnd: false
 * /rtabmap/rtabmap/RGBD/OptimizeMaxError: 0.1
 * /rtabmap/rtabmap/RGBD/ProximityBySpace: true
 * /rtabmap/rtabmap/RGBD/ProximityPathMaxNeighbors: 0
 * /rtabmap/rtabmap/Reg/Force3DoF: true
 * /rtabmap/rtabmap/Reg/Strategy: 0
 * /rtabmap/rtabmap/Rtabmap/TimeThr: 700
 * /rtabmap/rtabmap/Vis/InlierDistance: 0.1
 * /rtabmap/rtabmap/Vis/MinInliers: 15
 * /rtabmap/rtabmap/database_path: rtabmap.db
 * /rtabmap/rtabmap/frame_id: origin
 * /rtabmap/rtabmap/map_negative_poses_ignored: True
 * /rtabmap/rtabmap/queue_size: 30
 * /rtabmap/rtabmap/subscribe_depth: True
 * /rtabmap/rtabmap/subscribe_scan: False
 * /rtabmap/rtabmap_odometry/approx_sync: False
 * /rtabmap/rtabmap_odometry/frame_id: origin

NODES
  /rtabmap/
    rtabmap (rtabmap_ros/rtabmap)
    rtabmap_odometry (rtabmap_ros/rgbd_odometry)

ROS_MASTER_URI=http://localhost:11311

process[rtabmap/rtabmap-1]: started with pid [11513]
process[rtabmap/rtabmap_odometry-2]: started with pid [11514]
[ INFO] [1554691905.638331717]: Starting node...
[ INFO] [1554691905.843780351]: Initializing nodelet with 8 worker threads.
[ INFO] [1554691905.917893956]: Initializing nodelet with 8 worker threads.
[ INFO] [1554691906.800374415, 4114.650000000]: Odometry: frame_id               = origin
[ INFO] [1554691906.800437312, 4114.650000000]: Odometry: odom_frame_id          = odom
[ INFO] [1554691906.800464724, 4114.650000000]: Odometry: publish_tf             = true
[ INFO] [1554691906.800486958, 4114.650000000]: Odometry: wait_for_transform     = true
[ INFO] [1554691906.800520627, 4114.650000000]: Odometry: wait_for_transform_duration  = 0.200000
[ INFO] [1554691906.800571422, 4114.650000000]: Odometry: initial_pose           = xyz=0.000000,0.000
000,0.000000 rpy=0.000000,-0.000000,0.000000
[ INFO] [1554691906.800594991, 4114.650000000]: Odometry: ground_truth_frame_id  = 
[ INFO] [1554691906.800616363, 4114.650000000]: Odometry: ground_truth_base_frame_id = origin
[ INFO] [1554691906.800638094, 4114.650000000]: Odometry: config_path            = 
[ INFO] [1554691906.800657615, 4114.650000000]: Odometry: publish_null_when_lost = true
[ INFO] [1554691906.800677883, 4114.650000000]: Odometry: guess_frame_id         = 
[ INFO] [1554691906.800700942, 4114.650000000]: Odometry: guess_min_translation  = 0.000000
[ INFO] [1554691906.800723207, 4114.650000000]: Odometry: guess_min_rotation     = 0.000000
[ INFO] [1554691906.839224333, 4114.688000000]: /rtabmap/rtabmap(maps): map_filter_radius          = 
0.000000
[ INFO] [1554691906.839281211, 4114.688000000]: /rtabmap/rtabmap(maps): map_filter_angle           = 
30.000000
[ INFO] [1554691906.839304592, 4114.688000000]: /rtabmap/rtabmap(maps): map_cleanup                = 
true
[ INFO] [1554691906.839327766, 4114.688000000]: /rtabmap/rtabmap(maps): map_negative_poses_ignored = 
true
[ INFO] [1554691906.839349361, 4114.688000000]: /rtabmap/rtabmap(maps): map_negative_scan_ray_tracing
 = true
[ INFO] [1554691906.839369311, 4114.688000000]: /rtabmap/rtabmap(maps): cloud_output_voxelized     = 
true
[ INFO] [1554691906.839390342, 4114.688000000]: /rtabmap/rtabmap(maps): cloud_subtract_filtering   = 
false
[ INFO] [1554691906.839409438, 4114.688000000]: /rtabmap/rtabmap(maps): cloud_subtract_filtering_min_
neighbors = 2
[ INFO] [1554691906.854853975, 4114.706000000]: /rtabmap/rtabmap(maps): octomap_tree_depth         = 
16
[ INFO] [1554691907.105242019, 4114.959000000]: rtabmap: frame_id      = origin
[ INFO] [1554691907.105311230, 4114.959000000]: rtabmap: map_frame_id  = map
[ INFO] [1554691907.105347056, 4114.959000000]: rtabmap: tf_delay      = 0.050000
[ INFO] [1554691907.105543001, 4114.959000000]: rtabmap: tf_tolerance  = 0.100000
[ INFO] [1554691907.105574519, 4114.959000000]: rtabmap: odom_sensor_sync   = false
[ INFO] [1554691908.178642855, 4116.009000000]: Setting RTAB-Map parameter "Grid/FromDepth"="true"
[ INFO] [1554691908.550330596, 4116.366000000]: Setting RTAB-Map parameter "GridGlobal/MinSize"="20"
[ INFO] [1554691908.643868392, 4116.473000000]: Setting RTAB-Map parameter "Icp/CorrespondenceRatio"=
"0.3"
[ INFO] [1554691909.304961155, 4117.104000000]: Setting RTAB-Map parameter "Kp/MaxDepth"="4.0"
[ INFO] [1554691909.896867164, 4117.672000000]: Setting RTAB-Map parameter "Mem/IncrementalMemory"="t
rue"
[ INFO] [1554691909.916844570, 4117.694000000]: Setting RTAB-Map parameter "Mem/InitWMWithAllNodes"="
false"
[ INFO] [1554691910.211024872, 4117.989000000]: Setting RTAB-Map parameter "Mem/RehearsalSimilarity"=
"0.30"
[ INFO] [1554691911.589108980, 4119.353000000]: RGBDOdometry: approx_sync    = false
[ INFO] [1554691911.589156074, 4119.353000000]: RGBDOdometry: queue_size     = 5
[ INFO] [1554691911.589180019, 4119.353000000]: RGBDOdometry: subscribe_rgbd = false
[ INFO] [1554691911.589202379, 4119.353000000]: RGBDOdometry: rgbd_cameras   = 1
[ INFO] [1554691911.725869291, 4119.481000000]: 
/rtabmap/rtabmap_odometry subscribed to (exact sync):
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ INFO] [1554691912.307342766, 4120.039000000]: Setting RTAB-Map parameter "RGBD/AngularUpdate"="0.1"
[ INFO] [1554691912.353929948, 4120.084000000]: Setting RTAB-Map parameter "RGBD/LinearUpdate"="0.1"
[ INFO] [1554691912.420549676, 4120.147000000]: Setting RTAB-Map parameter "RGBD/OptimizeFromGraphEnd
"="false"
[ INFO] [1554691912.421429624, 4120.148000000]: Setting RTAB-Map parameter "RGBD/OptimizeMaxError"="0
.1"
[ INFO] [1554691912.497288206, 4120.213000000]: Setting RTAB-Map parameter "RGBD/ProximityBySpace"="t
rue"
[ INFO] [1554691912.600714231, 4120.314000000]: Setting RTAB-Map parameter "RGBD/ProximityPathMaxNeig
hbors"="0"
[ INFO] [1554691912.663331004, 4120.372000000]: Setting RTAB-Map parameter "Reg/Force3DoF"="true"
[ INFO] [1554691912.692238760, 4120.401000000]: Setting RTAB-Map parameter "Reg/Strategy"="0"
[ INFO] [1554691913.003994568, 4120.690000000]: Setting RTAB-Map parameter "Rtabmap/TimeThr"="700"
[ INFO] [1554691913.851555730, 4121.529000000]: Setting RTAB-Map parameter "Vis/InlierDistance"="0.1"
[ INFO] [1554691913.886288992, 4121.562000000]: Setting RTAB-Map parameter "Vis/MinInliers"="15"
[ WARN] [1554691915.092886750, 4122.727000000]: Rtabmap: Parameter name changed: "Optimizer/Slam2D" -
> "Reg/Force3DoF". Please update your launch file accordingly. Value "true" is still set to the new p
arameter name.
[ WARN] [1554691916.905447381, 4124.482000000]: /rtabmap/rtabmap_odometry: Did not receive data since
 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in
 their header are set. Parameter "approx_sync" is false, which means that input topics should have al
l the exact timestamp for the callback to be called.
/rtabmap/rtabmap_odometry subscribed to (exact sync):
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ INFO] [1554691917.069623410, 4124.648000000]: RTAB-Map detection rate = 1.000000 Hz
[ INFO] [1554691917.069720000, 4124.648000000]: rtabmap: Using database from "/home/hychiang/.ros/rt$
bmap.db" (6 MB).
[ INFO] [1554691917.128815297, 4124.710000000]: rtabmap: Database version = "0.17.6".
[ INFO] [1554691917.288461305, 4124.865000000]: /rtabmap/rtabmap: queue_size    = 30
[ INFO] [1554691917.288503215, 4124.865000000]: /rtabmap/rtabmap: rgbd_cameras = 1
[ INFO] [1554691917.288526278, 4124.865000000]: /rtabmap/rtabmap: approx_sync   = true
[ INFO] [1554691917.288719386, 4124.865000000]: Setup depth callback
[ INFO] [1554691917.363949541, 4124.925000000]: 
/rtabmap/rtabmap subscribed to (approx sync):
   /rtabmap/odom,
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ INFO] [1554691917.402647680, 4124.976000000]: rtabmap 0.17.6 started...
[ WARN] [1554691922.149860752, 4129.484000000]: /rtabmap/rtabmap_odometry: Did not receive data since
 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in
 their header are set. Parameter "approx_sync" is false, which means that input topics should have al
l the exact timestamp for the callback to be called.
/rtabmap/rtabmap_odometry subscribed to (exact sync):
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ WARN] [1554691922.648173323, 4129.925000000]: /rtabmap/rtabmap: Did not receive data since 5 second
s! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their he
ader are set. If topics are coming from different computers, make sure the clocks of the computers ar
e synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_s
ize" parameter (current=30).
/rtabmap/rtabmap subscribed to (approx sync):
   /rtabmap/odom,
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ WARN] [1554691927.611726304, 4134.485000000]: /rtabmap/rtabmap_odometry: Did not receive data sinc$
 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps i$
 their header are set. Parameter "approx_sync" is false, which means that input topics should have a$
l the exact timestamp for the callback to be called.
/rtabmap/rtabmap_odometry subscribed to (exact sync):
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ WARN] [1554691928.064687283, 4134.926000000]: /rtabmap/rtabmap: Did not receive data since 5 secon$
s! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their h$
ader are set. If topics are coming from different computers, make sure the clocks of the computers a$
e synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_$
ize" parameter (current=30).
/rtabmap/rtabmap subscribed to (approx sync):
   /rtabmap/odom,
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ WARN] [1554691932.966566606, 4139.485000000]: /rtabmap/rtabmap_odometry: Did not receive data sinc$
 5 seconds! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps i$
 their header are set. Parameter "approx_sync" is false, which means that input topics should have a$
l the exact timestamp for the callback to be called.
/rtabmap/rtabmap_odometry subscribed to (exact sync):
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ WARN] [1554691933.432164170, 4139.926000000]: /rtabmap/rtabmap: Did not receive data since 5 second
s! Make sure the input topics are published ("$ rostopic hz my_topic") and the timestamps in their he
ader are set. If topics are coming from different computers, make sure the clocks of the computers ar
e synchronized ("ntpdate"). If topics are not published at the same rate, you could increase "queue_s
ize" parameter (current=30).
/rtabmap/rtabmap subscribed to (approx sync):
   /rtabmap/odom,
   /realsense/camera/color/image_raw,
   /realsense/camera/depth/image_raw,
   /realsense/camera/color/camera_info
[ INFO] [1554691935.952609264, 4142.298000000]: Odom: quality=0, std dev=99.995000m|99.995000rad, upd
ate time=0.040163s
[ WARN] (2019-04-08 10:52:15.966) Rtabmap.cpp:1027::process() Odometry is reset (identity pose detect
ed). Increment map id to 2!
[ INFO] [1554691936.232666910, 4142.565000000]: rtabmap (34): Rate=1.00s, Limit=0.700s, RTAB-Map=0.26
59s, Maps update=0.0002s pub=0.0004s (local map=2, WM=3)
[ INFO] [1554691936.743115506, 4143.047000000]: Odom: quality=145, std dev=0.006540m|0.054957rad, upd
ate time=0.140309s
[ INFO] [1554691939.677566274, 4145.821000000]: Odom: quality=206, std dev=0.018640m|0.057944rad, upd
ate time=0.164295s
[ INFO] [1554691939.836285792, 4145.951000000]: rtabmap (35): Rate=1.00s, Limit=0.700s, RTAB-Map=0.15
44s, Maps update=0.0002s pub=0.0002s (local map=2, WM=3)
[ INFO] [1554691941.135232378, 4147.172000000]: Odom: quality=222, std dev=0.019168m|0.058976rad, upd
ate time=0.218870s
[ INFO] [1554691941.298939982, 4147.326000000]: rtabmap (36): Rate=1.00s, Limit=0.700s, RTAB-Map=0.15
95s, Maps update=0.0002s pub=0.0004s (local map=2, WM=3)
[ INFO] [1554691960.706703398, 4165.770000000]: Odom: quality=229, std dev=0.032212m|0.064769rad, upd
ate time=0.166722s
[ INFO] [1554691960.875323287, 4165.926000000]: rtabmap (37): Rate=1.00s, Limit=0.700s, RTAB-Map=0.16
22s, Maps update=0.0002s pub=0.0003s (local map=2, WM=3)
[ INFO] [1554691966.128255827, 4170.782000000]: Odom: quality=225, std dev=0.010423m|0.052765rad, upd
ate time=0.186210s
[ INFO] [1554691966.286974088, 4170.943000000]: rtabmap (38): Rate=1.00s, Limit=0.700s, RTAB-Map=0.15
17s, Maps update=0.0001s pub=0.0003s (local map=2, WM=3)
[ INFO] [1554692019.737320417, 4222.591000000]: Odom: quality=214, std dev=0.011264m|0.050827rad, upd
ate time=0.219605s
[ INFO] [1554692019.849893498, 4222.684000000]: rtabmap (39): Rate=1.00s, Limit=0.700s, RTAB-Map=0.10
49s, Maps update=0.0002s pub=0.0002s (local map=2, WM=3)
[rtabmap/rtabmap_odometry-2] killing on exit
[rtabmap/rtabmap-1] killing on exit
rtabmap: Saving database/long-term memory... (located at /home/hychiang/.ros/rtabmap.db)
rtabmap: Saving database/long-term memory...done! (located at /home/hychiang/.ros/rtabmap.db, 7 MB)
shutting down processing monitor...
... shutting down processing monitor complete
done

Here is the output ply file from RTAB-MAP image

hychiang-git commented 5 years ago

@matlabbe Thank you for your help so far!

Also, I checked the turtlebot project again and followed your suggestion. As you suggested, I found rtab-map using the /odom topic as odometry published from the kuboki (from the imu and sensor defined in kobuki_gazebo.urdf.xacro) [reference].

I tried to switch the rtab-map odometry from the /odom publiched by kuboki to rgbd_odmetry by setting the flag rgbd_odometry to true.

However, the odometry seems failed to be calculated from rgbd images due to not enough inliners from realsense r200 camera.

How do I fix this?

Thanks.

<launch>
  <arg name="database_path"     default="rtabmap.db"/>
  <arg name="rgbd_odometry"     default="false"/>
  <arg name="rtabmapviz"        default="false"/>
  <arg name="localization"      default="false"/>
  <arg name="simulation"        default="false"/>
  <arg name="sw_registered"     default="false"/>
  <arg     if="$(arg localization)" name="args"  default=""/>
  <arg unless="$(arg localization)" name="args"  default="--delete_db_on_start"/>

  <arg     if="$(arg simulation)" name="rgb_topic"   default="/camera/rgb/image_raw"/>
  <arg unless="$(arg simulation)" name="rgb_topic"   default="/camera/rgb/image_rect_color"/>
  <arg     if="$(arg simulation)" name="depth_topic" default="/camera/depth/image_raw"/>
  <arg unless="$(arg simulation)" name="depth_topic" default="/camera/depth_registered/image_raw"/>
  <arg name="camera_info_topic" default="/camera/rgb/camera_info"/>

  <arg name="wait_for_transform"  default="0.2"/>
  <!--
      robot_state_publisher's publishing frequency in "turtlebot_bringup/launch/includes/robot.launch.xml"
      can be increase from 5 to 10 Hz to avoid some TF warnings.
  -->

  <!-- Navigation stuff (move_base) -->
  <include unless="$(arg simulation)" file="$(find turtlebot_bringup)/launch/3dsensor.launch">
     <arg     if="$(arg sw_registered)" name="depth_registration" value="false"/>
     <arg unless="$(arg sw_registered)" name="depth_registration" value="true"/>
  </include>
  <include file="$(find turtlebot_navigation)/launch/includes/move_base.launch.xml"/>

  <!-- Mapping -->
  <group ns="rtabmap">

    <node name="rtabmap" pkg="rtabmap_ros" type="rtabmap" output="screen" args="$(arg args)">
          <param name="database_path"       type="string" value="$(arg database_path)"/>
          <param name="frame_id"            type="string" value="base_footprint"/>
          <param name="wait_for_transform_duration"  type="double"   value="$(arg wait_for_transform)"/>
          <param name="subscribe_depth"     type="bool"   value="true"/>
          <param name="subscribe_scan"      type="bool"   value="false"/>
          <param name="map_negative_poses_ignored" type="bool" value="true"/>

          <!-- inputs -->
          <remap from="scan"            to="/scan"/>
          <remap from="rgb/image"       to="$(arg rgb_topic)"/>
          <remap from="depth/image"     to="$(arg depth_topic)"/>
          <remap from="rgb/camera_info" to="$(arg camera_info_topic)"/>
          <remap unless="$(arg rgbd_odometry)" from="odom" to="/odom"/>
          <!-- output -->
          <remap from="grid_map" to="/map"/>

          <!-- RTAB-Map's parameters: do "rosrun rtabmap rtabmap (double-dash)params" to see the list of available parameters. -->
          <param name="RGBD/ProximityBySpace"        type="string" value="true"/>   <!-- Local loop closure detection (using estimated position) with locations in WM -->
          <param name="RGBD/OptimizeFromGraphEnd"    type="string" value="false"/>  <!-- Set to false to generate map correction between /map and /odom -->
          <param name="Kp/MaxDepth"                  type="string" value="4.0"/>
          <param name="Reg/Strategy"                 type="string" value="0"/>      <!-- Loop closure transformation: 0=Visual, 1=ICP, 2=Visual+ICP -->
          <param name="Icp/CorrespondenceRatio"      type="string" value="0.3"/>
          <param name="Vis/MinInliers"               type="string" value="15"/>      <!-- 3D visual words minimum inliers to accept loop closure -->
          <param name="Vis/InlierDistance"           type="string" value="0.1"/>    <!-- 3D visual words correspondence distance -->
          <param name="RGBD/AngularUpdate"           type="string" value="0.1"/>    <!-- Update map only if the robot is moving -->
          <param name="RGBD/LinearUpdate"            type="string" value="0.1"/>    <!-- Update map only if the robot is moving -->
          <param name="RGBD/ProximityPathMaxNeighbors" type="string" value="0"/>
          <param name="Rtabmap/TimeThr"              type="string" value="700"/>
          <param name="Mem/RehearsalSimilarity"      type="string" value="0.30"/>
          <param name="Optimizer/Slam2D"             type="string" value="true"/>
          <param name="Reg/Force3DoF"                type="string" value="true"/>
          <param name="GridGlobal/MinSize"           type="string" value="20"/>
          <param name="RGBD/OptimizeMaxError"        type="string" value="0.1"/>
          <param name="Grid/FromDepth"               type="string" value="true"/>

          <!-- localization mode -->
          <param     if="$(arg localization)" name="Mem/IncrementalMemory" type="string" value="false"/>
          <param unless="$(arg localization)" name="Mem/IncrementalMemory" type="string" value="true"/>
          <param name="Mem/InitWMWithAllNodes" type="string" value="$(arg localization)"/>
    </node>
    <!-- Odometry : ONLY for testing without the actual robot! /odom TF should not be already published. -->
    <node if="$(arg rgbd_odometry)" pkg="rtabmap_ros" type="rgbd_odometry" name="rgbd_odometry" output="screen">
      <param name="frame_id"                    type="string" value="base_footprint"/>
      <param name="wait_for_transform_duration" type="double" value="$(arg wait_for_transform)"/>
      <param name="Reg/Force3DoF"               type="string" value="true"/>
      <param name="Vis/InlierDistance"          type="string" value="0.05"/>

      <remap from="rgb/image"       to="$(arg rgb_topic)"/>
      <remap from="depth/image"     to="$(arg depth_topic)"/>
      <remap from="rgb/camera_info" to="$(arg camera_info_topic)"/>
    </node>

    <!-- visualization with rtabmapviz -->
    <node if="$(arg rtabmapviz)" pkg="rtabmap_ros" type="rtabmapviz" name="rtabmapviz" args="-d $(find rtabmap_ros)/launch/config/rgbd_gui.ini" output="screen">
          <param name="subscribe_depth"             type="bool" value="true"/>
      <param name="subscribe_scan"              type="bool" value="false"/>
      <param name="frame_id"                    type="string" value="base_footprint"/>
      <param name="wait_for_transform_duration" type="double" value="$(arg wait_for_transform)"/>

      <remap from="rgb/image"       to="$(arg rgb_topic)"/>
      <remap from="depth/image"     to="$(arg depth_topic)"/>
      <remap from="rgb/camera_info" to="$(arg camera_info_topic)"/>
      <remap from="scan"            to="/scan"/>
    </node>

  </group>
</launch>
[ INFO] [1554706974.496829696]: Starting node...
[ INFO] [1554706974.571389573]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1554706974.587909681]: waitForService: Service [/gazebo/set_physics_properties] has not been
 advertised, waiting...
[ INFO] [1554706974.617382562]: Initializing nodelet with 8 worker threads.
[ INFO] [1554706974.629217427]: Initializing nodelet with 8 worker threads.
[ INFO] [1554706974.660240410]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1554706974.674854321]: waitForService: Service [/gazebo/set_physics_properties] has not been
 advertised, waiting...
[ INFO] [1554706974.958893963]: Odometry: frame_id               = base_footprint
[ INFO] [1554706974.958927532]: Odometry: odom_frame_id          = odom
[ INFO] [1554706974.958949885]: Odometry: publish_tf             = true
[ INFO] [1554706974.958975586]: Odometry: wait_for_transform     = true
[ INFO] [1554706974.959016286]: Odometry: wait_for_transform_duration  = 0.200000
[ INFO] [1554706974.959064952]: Odometry: initial_pose           = xyz=0.000000,0.000000,0.000000 rpy
=0.000000,-0.000000,0.000000
[ INFO] [1554706974.959090769]: Odometry: ground_truth_frame_id  = 
[ INFO] [1554706974.959114505]: Odometry: ground_truth_base_frame_id = base_footprint
[ INFO] [1554706974.959138398]: Odometry: config_path            = 
[ INFO] [1554706974.959163340]: Odometry: publish_null_when_lost = true
[ INFO] [1554706974.959190959]: Odometry: guess_frame_id         = 
[ INFO] [1554706974.959214149]: Odometry: guess_min_translation  = 0.000000
[ INFO] [1554706974.959234093]: Odometry: guess_min_rotation     = 0.000000
[ INFO] [1554706975.409331520]: Setting odometry parameter "Reg/Force3DoF"="true"
[ INFO] [1554706975.516390153]: Setting odometry parameter "Vis/InlierDistance"="0.07"
[ INFO] [1554706975.676603013]: RGBDOdometry: approx_sync    = true
[ INFO] [1554706975.676667571]: RGBDOdometry: queue_size     = 5
[ INFO] [1554706975.676720178]: RGBDOdometry: subscribe_rgbd = false
[ INFO] [1554706975.676752061]: RGBDOdometry: rgbd_cameras   = 1
[ INFO] [1554706975.703439279]: 
/rtabmap/rgbd_odometry subscribed to (approx sync):
   /camera/rgb/image_raw,
   /camera/depth/image_raw,
   /camera/rgb/camera_info
[ INFO] [1554706977.554153475, 0.030000000]: waitForService: Service [/gazebo/set_physics_properties]
 is now available.
[ INFO] [1554706977.593105215, 0.070000000]: Physics dynamic reconfigure ready.
[ INFO] [1554706977.731765631, 0.200000000]: /rtabmap/rtabmap(maps): map_filter_radius          = 0.0
00000
[ INFO] [1554706977.731813208, 0.200000000]: /rtabmap/rtabmap(maps): map_filter_angle           = 30.
000000
[ INFO] [1554706977.731841832, 0.200000000]: /rtabmap/rtabmap(maps): map_cleanup                = tru
e
[ INFO] [1554706977.731863552, 0.200000000]: /rtabmap/rtabmap(maps): map_negative_poses_ignored = tru
e
[ INFO] [1554706977.731883135, 0.200000000]: /rtabmap/rtabmap(maps): map_negative_scan_ray_tracing = 
true
[ INFO] [1554706977.731902377, 0.200000000]: /rtabmap/rtabmap(maps): cloud_output_voxelized     = tru
e
[ INFO] [1554706977.731921505, 0.200000000]: /rtabmap/rtabmap(maps): cloud_subtract_filtering   = fal
se
[ INFO] [1554706977.731942727, 0.200000000]: /rtabmap/rtabmap(maps): cloud_subtract_filtering_min_nei
ghbors = 2
[ INFO] [1554706977.739516868, 0.210000000]: waitForService: Service [/gazebo/set_physics_properties]
 is now available.
[ INFO] [1554706977.740141475, 0.210000000]: /rtabmap/rtabmap(maps): octomap_tree_depth         = 16
[ INFO] [1554706977.815579784, 0.290000000]: rtabmap: frame_id      = base_footprint
[ INFO] [1554706977.815620469, 0.290000000]: rtabmap: map_frame_id  = map
[ INFO] [1554706977.815651942, 0.290000000]: rtabmap: tf_delay      = 0.050000
[ INFO] [1554706977.815680717, 0.290000000]: rtabmap: tf_tolerance  = 0.100000
[ INFO] [1554706977.815706194, 0.290000000]: rtabmap: odom_sensor_sync   = false
[ INFO] [1554706977.977436733, 0.310000000]: Setting RTAB-Map parameter "Grid/FromDepth"="true"
[ INFO] [1554706978.022133969, 0.310000000]: Setting RTAB-Map parameter "GridGlobal/MinSize"="20"
[ INFO] [1554706978.035836528, 0.310000000]: Setting RTAB-Map parameter "Icp/CorrespondenceRatio"="0.
3"
[ INFO] [1554706978.099174214, 0.310000000]: Setting RTAB-Map parameter "Kp/MaxDepth"="4.0"
[ INFO] [1554706978.136417133, 0.310000000]: Setting RTAB-Map parameter "Mem/IncrementalMemory"="true
"
[ INFO] [1554706978.136931894, 0.310000000]: Setting RTAB-Map parameter "Mem/InitWMWithAllNodes"="fal
se"
[ INFO] [1554706978.158347877, 0.310000000]: Setting RTAB-Map parameter "Mem/RehearsalSimilarity"="0.
30"
[ INFO] [1554706978.290028627, 0.310000000]: Camera Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1554706978.294794335, 0.310000000]: Camera Plugin (ns = /)  <tf_prefix_>, set to ""
[ INFO] [1554706978.427952083, 0.310000000]: Starting plugin Kobuki(ns = //)
[ WARN] [1554706978.428017910, 0.310000000]: Kobuki(ns = //): missing <rosDebugLevel> default is na
[ INFO] [1554706978.434437264, 0.310000000]: Kobuki(ns = //): <tf_prefix> = 
[ INFO] [1554706978.434695615, 0.310000000]: Will publish tf. [mobile_base]
[ INFO] [1554706978.440133422, 0.310000000]: Kobuki(ns = //): Advertise joint_states[joint_states]!
[ INFO] [1554706978.442694451, 0.310000000]: Kobuki(ns = //): Advertise Odometry[odom]!
[ INFO] [1554706978.464614143, 0.310000000]: Kobuki(ns = //): Try to subscribe to mobile_base/command
s/motor_power!
[ INFO] [1554706978.472946736, 0.310000000]: Physics dynamic reconfigure ready.
[ INFO] [1554706978.476253802, 0.310000000]: Kobuki(ns = //): Try to subscribe to mobile_base/command
s/reset_odometry!
[ INFO] [1554706978.483489153, 0.310000000]: Kobuki(ns = //): Try to subscribe to mobile_base/command
s/velocity!
[ INFO] [1554706978.485334028, 0.310000000]: Kobuki(ns = //): Advertise Cliff[mobile_base/events/clif
f]!
[ INFO] [1554706978.487218185, 0.310000000]: Kobuki(ns = //): Advertise Bumper[mobile_base/events/bum
per]!
[ INFO] [1554706978.490754184, 0.310000000]: Kobuki(ns = //): Advertise IMU[mobile_base/sensors/imu_d
ata]!
[ INFO] [1554706978.490816633, 0.310000000]: GazeboRosKobuki plugin ready to go! [mobile_base]
[spawn_turtlebot_model-4] process has finished cleanly
log file: /home/hychiang/.ros/log/53fefbbe-59cc-11e9-9ad3-ac220b8958ba/spawn_turtlebot_model-4*.log
[ INFO] [1554706978.634583618, 0.460000000]: Setting RTAB-Map parameter "RGBD/AngularUpdate"="0.1"
[ INFO] [1554706978.645537214, 0.470000000]: Setting RTAB-Map parameter "RGBD/LinearUpdate"="0.1"
[ INFO] [1554706978.661355486, 0.480000000]: Setting RTAB-Map parameter "RGBD/OptimizeFromGraphEnd"="
false"
[ INFO] [1554706978.661977174, 0.490000000]: Setting RTAB-Map parameter "RGBD/OptimizeMaxError"="0.1"
[ INFO] [1554706978.670657651, 0.490000000]: Setting RTAB-Map parameter "RGBD/ProximityBySpace"="true
"
[ INFO] [1554706978.678567737, 0.500000000]: Setting RTAB-Map parameter "RGBD/ProximityPathMaxNeighbo
rs"="0"
[ INFO] [1554706978.685194453, 0.510000000]: Setting RTAB-Map parameter "Reg/Force3DoF"="true"
[ INFO] [1554706978.687434224, 0.510000000]: Setting RTAB-Map parameter "Reg/Strategy"="0"
[ INFO] [1554706978.732900178, 0.560000000]: Setting RTAB-Map parameter "Rtabmap/TimeThr"="700"
[ INFO] [1554706978.827029393, 0.650000000]: Setting RTAB-Map parameter "Vis/InlierDistance"="0.1"
[ INFO] [1554706978.835348322, 0.660000000]: Setting RTAB-Map parameter "Vis/MinInliers"="15"
[ WARN] (2019-04-08 15:02:59.009) OdometryF2M.cpp:1036::computeTransform() 20 visual features require
d to initialize the odometry (only 0 extracted).
[ INFO] [1554706979.010027311, 0.830000000]: Odom: quality=0, std dev=0.000000m|0.000000rad, update t
ime=0.010540s
[ WARN] [1554706979.033976317, 0.860000000]: Rtabmap: Parameter name changed: "Optimizer/Slam2D" -> "
Reg/Force3DoF". Please update your launch file accordingly. Value "true" is still set to the new para
meter name.
[ INFO] [1554706979.320882996, 1.140000000]: RTAB-Map detection rate = 1.000000 Hz
[ INFO] [1554706979.321173224, 1.140000000]: rtabmap: Deleted database "/home/hychiang/.ros/rtabmap.d
b" (--delete_db_on_start or -d are set).
[ INFO] [1554706979.321211102, 1.140000000]: rtabmap: Using database from "/home/hychiang/.ros/rtabma
p.db" (0 MB).
[ INFO] [1554706979.356913860, 1.180000000]: Odom: quality=0, std dev=99.995000m|99.995000rad, update
 time=0.008190s
[ WARN] (2019-04-08 15:02:59.430) OdometryF2M.cpp:469::computeTransform() Registration failed: "Not e
nough inliers 0/20 (matches=19) between -1 and 3"
[ INFO] [1554706979.431088483, 1.250000000]: Odom: quality=0, std dev=0.000000m|0.000000rad, update t
ime=0.012286s
[ INFO] [1554706979.536182449, 1.360000000]: Odom: quality=21, std dev=0.015911m|0.045589rad, update 
time=0.014992s
[ INFO] [1554706979.636340683, 1.460000000]: Odom: quality=31, std dev=0.020062m|0.069613rad, update 
time=0.016044s
[ INFO] [1554706979.735679114, 1.560000000]: Odom: quality=32, std dev=0.105241m|0.117548rad, update 
time=0.017874s
[ INFO] [1554706979.832587401, 1.650000000]: Odom: quality=26, std dev=0.009359m|0.065413rad, update 
time=0.013099s
[ INFO] [1554706979.935762408, 1.760000000]: Odom: quality=31, std dev=0.080193m|0.099501rad, update 
time=0.016565s
[ INFO] [1554706980.036006384, 1.860000000]: Odom: quality=30, std dev=0.018365m|0.065231rad, update 
time=0.015830s
[ INFO] [1554706980.130485265, 1.950000000]: Odom: quality=28, std dev=0.019012m|0.086920rad, update 
time=0.016368s
[ INFO] [1554706980.230867408, 2.050000000]: Odom: quality=24, std dev=0.006036m|0.049272rad, update 
time=0.013941s
[ INFO] [1554706980.331186000, 2.150000000]: Odom: quality=22, std dev=0.008258m|0.054747rad, update 
time=0.014203s
[ INFO] [1554706980.433702056, 2.250000000]: Odom: quality=24, std dev=0.010281m|0.051268rad, update 
time=0.018160s
[ INFO] [1554706980.563645357, 2.380000000]: Odom: quality=26, std dev=0.007859m|0.038287rad, update 
time=0.019213s
[ INFO] [1554706980.671531382, 2.490000000]: Odom: quality=24, std dev=0.007327m|0.053019rad, update 
time=0.016696s
[ INFO] [1554706980.774456640, 2.590000000]: Odom: quality=23, std dev=0.004425m|0.032497rad, update 
time=0.018394s
[ INFO] [1554706980.828640500, 2.650000000]: rtabmap: Database version = "0.17.6".
[ INFO] [1554706980.850050298, 2.670000000]: /rtabmap/rtabmap: queue_size    = 10
[ INFO] [1554706980.850087385, 2.670000000]: /rtabmap/rtabmap: rgbd_cameras = 1
[ INFO] [1554706980.850107371, 2.670000000]: /rtabmap/rtabmap: approx_sync   = true
[ INFO] [1554706980.850172676, 2.670000000]: Setup depth callback
[ INFO] [1554706980.872202359, 2.690000000]: 
/rtabmap/rtabmap subscribed to (approx sync):
   /rtabmap/odom,
   /camera/rgb/image_raw,
   /camera/depth/image_raw,
   /camera/rgb/camera_info
[ INFO] [1554706980.877833814, 2.700000000]: rtabmap 0.17.6 started...
[ INFO] [1554706980.879087017, 2.700000000]: Odom: quality=21, std dev=0.009048m|0.049590rad, update 
time=0.021352s
[ INFO] [1554706980.976184126, 2.800000000]: Odom: quality=21, std dev=0.008871m|0.060417rad, update 
time=0.020747s
[ INFO] [1554706981.077102633, 2.900000000]: Odom: quality=21, std dev=0.007488m|0.050358rad, update 
time=0.020631s
[ INFO] [1554706981.120091604, 2.940000000]: rtabmap (1): Rate=1.00s, Limit=0.700s, RTAB-Map=0.0374s,
 Maps update=0.0019s pub=0.0008s (local map=1, WM=1)
[ INFO] [1554706981.181365601, 3.000000000]: Odom: quality=24, std dev=0.027706m|0.072287rad, update 
time=0.023601s
[ INFO] [1554706981.238763441, 3.060000000]: Using plugin "static_layer"
[ INFO] [1554706981.245326536, 3.060000000]: Requesting the map...
[ INFO] [1554706981.283597244, 3.100000000]: Odom: quality=22, std dev=0.004774m|0.031405rad, update 
time=0.025971s
[ INFO] [1554706981.376385045, 3.200000000]: Odom: quality=20, std dev=0.035797m|0.074972rad, update 
time=0.020520s
[ INFO] [1554706981.445634621, 3.270000000]: Resizing costmap to 421 X 421 at 0.050000 m/pix
[ INFO] [1554706981.500292416, 3.320000000]: Odom: quality=26, std dev=0.006123m|0.044249rad, update 
time=0.023488s
[ INFO] [1554706981.545355617, 3.370000000]: Received a 421 X 421 map at 0.050000 m/pix
[ INFO] [1554706981.549283069, 3.370000000]: Using plugin "obstacle_layer"
[ INFO] [1554706981.551489058, 3.370000000]:     Subscribed to Topics: scan bump
[ INFO] [1554706981.599179091, 3.420000000]: Odom: quality=20, std dev=0.196565m|0.147795rad, update 
time=0.021213s
[ INFO] [1554706981.601273354, 3.420000000]: Using plugin "inflation_layer"
[ INFO] [1554706981.662492734, 3.480000000]: Using plugin "obstacle_layer"
[ INFO] [1554706981.664857116, 3.480000000]:     Subscribed to Topics: scan bump
[ WARN] (2019-04-08 15:03:01.703) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 12<20"
[ WARN] (2019-04-08 15:03:01.703) OdometryF2M.cpp:258::computeTransform() Failed to find a transforma
tion with the provided guess (xyz=-0.077620,0.004933,0.000000 rpy=0.000000,-0.000000,0.001913), tryin
g again without a guess.
[ WARN] (2019-04-08 15:03:01.718) OdometryF2M.cpp:465::computeTransform() Trial with no guess still f
ail.
[ WARN] (2019-04-08 15:03:01.718) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 12<20"
[ INFO] [1554706981.718612833, 3.540000000]: Odom: quality=12, std dev=0.000000m|0.000000rad, update 
time=0.040889s
[ INFO] [1554706981.724192548, 3.540000000]: Using plugin "inflation_layer"
[ INFO] [1554706981.772055143, 3.590000000]: Created local_planner dwa_local_planner/DWAPlannerROS
[ INFO] [1554706981.779211280, 3.600000000]: Sim period is set to 0.20
[ WARN] (2019-04-08 15:03:01.807) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 14<20"
[ INFO] [1554706981.807967862, 3.630000000]: Odom: quality=14, std dev=0.000000m|0.000000rad, update 
time=0.029541s
[ WARN] (2019-04-08 15:03:01.924) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 17<20"
[ INFO] [1554706981.924492111, 3.740000000]: Odom: quality=17, std dev=0.000000m|0.000000rad, update 
time=0.025786s
[ WARN] (2019-04-08 15:03:02.026) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 13<20"
[ INFO] [1554706982.027003095, 3.850000000]: Odom: quality=13, std dev=0.000000m|0.000000rad, update 
time=0.029768s
[ WARN] (2019-04-08 15:03:02.132) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706982.132953232, 3.950000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.035766s
[ERROR] (2019-04-08 15:03:02.134) Rtabmap.cpp:1003::process() RGB-D SLAM mode is enabled, memory is i
ncremental but no odometry is provided. Image 87 is ignored!
[ INFO] [1554706982.134398962, 3.950000000]: rtabmap (1): Rate=1.00s, Limit=0.700s, RTAB-Map=0.0001s,
 Maps update=0.0000s pub=0.0000s (local map=1, WM=1)
[ WARN] (2019-04-08 15:03:02.224) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706982.224586405, 4.040000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.028008s
[ WARN] (2019-04-08 15:03:02.323) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 12<20"
[ INFO] [1554706982.323337363, 4.140000000]: Odom: quality=12, std dev=0.000000m|0.000000rad, update 
time=0.025758s
[ WARN] (2019-04-08 15:03:02.418) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706982.418924935, 4.240000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.019060s
[ WARN] (2019-04-08 15:03:02.527) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706982.527761670, 4.350000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.029543s
[ WARN] (2019-04-08 15:03:02.631) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706982.631398164, 4.450000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.032641s
[ WARN] (2019-04-08 15:03:02.742) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706982.743171056, 4.560000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.026429s
[ INFO] [1554706982.773034397, 4.590000000]: Recovery behavior will clear layer obstacles
[ INFO] [1554706982.778322085, 4.600000000]: Recovery behavior will clear layer obstacles
[ INFO] [1554706982.820893209, 4.640000000]: odom received!
[ WARN] (2019-04-08 15:03:02.850) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 13<20"
[ INFO] [1554706982.850463903, 4.670000000]: Odom: quality=13, std dev=0.000000m|0.000000rad, update 
time=0.031942s
[ WARN] (2019-04-08 15:03:02.937) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 18<20"
[ INFO] [1554706982.938369021, 4.760000000]: Odom: quality=18, std dev=0.000000m|0.000000rad, update 
time=0.022422s
[ WARN] (2019-04-08 15:03:03.036) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 19<20"
[ INFO] [1554706983.036930405, 4.860000000]: Odom: quality=19, std dev=0.000000m|0.000000rad, update 
time=0.029511s
[ INFO] [1554706983.139458177, 4.960000000]: Odom: quality=20, std dev=0.008632m|0.052814rad, update 
time=0.023378s
[ INFO] [1554706983.172961022, 4.990000000]: rtabmap (2): Rate=1.00s, Limit=0.700s, RTAB-Map=0.0302s,
 Maps update=0.0017s pub=0.0006s (local map=1, WM=1)
[ WARN] (2019-04-08 15:03:03.239) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 18<20"
[ INFO] [1554706983.240036521, 5.060000000]: Odom: quality=18, std dev=0.000000m|0.000000rad, update 
time=0.022698s
[ WARN] (2019-04-08 15:03:03.337) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 18<20"
[ INFO] [1554706983.337745488, 5.160000000]: Odom: quality=18, std dev=0.000000m|0.000000rad, update 
time=0.020455s
[ INFO] [1554706983.439539292, 5.260000000]: Odom: quality=20, std dev=0.011468m|0.062741rad, update 
time=0.023650s
[ WARN] (2019-04-08 15:03:03.542) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706983.543156108, 5.360000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.024079s
[ WARN] (2019-04-08 15:03:03.639) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706983.639548009, 5.460000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.022466s
[ WARN] (2019-04-08 15:03:03.749) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 18<20"
[ INFO] [1554706983.750232049, 5.570000000]: Odom: quality=18, std dev=0.000000m|0.000000rad, update 
time=0.032124s
[ WARN] (2019-04-08 15:03:03.843) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 19<20"
[ INFO] [1554706983.843842826, 5.660000000]: Odom: quality=19, std dev=0.000000m|0.000000rad, update 
time=0.026319s
[ INFO] [1554706983.964844095, 5.780000000]: Odom: quality=20, std dev=0.019150m|0.062715rad, update 
time=0.026119s
[ WARN] (2019-04-08 15:03:04.065) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706984.066131176, 5.880000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.028590s
[ WARN] (2019-04-08 15:03:04.162) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706984.163074300, 5.980000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.024337s
[ERROR] (2019-04-08 15:03:04.164) Rtabmap.cpp:1003::process() RGB-D SLAM mode is enabled, memory is i
ncremental but no odometry is provided. Image 149 is ignored!
[ INFO] [1554706984.164631847, 5.980000000]: rtabmap (2): Rate=1.00s, Limit=0.700s, RTAB-Map=0.0001s,
 Maps update=0.0000s pub=0.0000s (local map=1, WM=1)
[ WARN] (2019-04-08 15:03:04.264) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 17<20"
[ INFO] [1554706984.264694191, 6.080000000]: Odom: quality=17, std dev=0.000000m|0.000000rad, update 
time=0.027330s
[ WARN] (2019-04-08 15:03:04.368) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706984.368194938, 6.190000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.029648s
[ WARN] (2019-04-08 15:03:04.482) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 19<20"
[ INFO] [1554706984.483191104, 6.300000000]: Odom: quality=19, std dev=0.000000m|0.000000rad, update 
time=0.035707s
[ WARN] (2019-04-08 15:03:04.578) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 17<20"
[ INFO] [1554706984.578832474, 6.400000000]: Odom: quality=17, std dev=0.000000m|0.000000rad, update 
time=0.021807s
[ WARN] (2019-04-08 15:03:04.684) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706984.684529364, 6.500000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.036634s
[ WARN] (2019-04-08 15:03:04.784) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706984.784188241, 6.600000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.025866s
[ WARN] (2019-04-08 15:03:04.884) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 19<20"
[ INFO] [1554706984.885038755, 6.700000000]: Odom: quality=19, std dev=0.000000m|0.000000rad, update 
time=0.025948s
[ WARN] (2019-04-08 15:03:04.983) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 14<20"
[ INFO] [1554706984.984157057, 6.800000000]: Odom: quality=14, std dev=0.000000m|0.000000rad, update 
time=0.024329s
[ WARN] (2019-04-08 15:03:05.082) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 14<20"
[ INFO] [1554706985.082683414, 6.900000000]: Odom: quality=14, std dev=0.000000m|0.000000rad, update 
time=0.025174s
[ WARN] (2019-04-08 15:03:05.191) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706985.191564656, 7.010000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.033705s
[ERROR] (2019-04-08 15:03:05.192) Rtabmap.cpp:1003::process() RGB-D SLAM mode is enabled, memory is i
ncremental but no odometry is provided. Image 180 is ignored!
[ INFO] [1554706985.192955581, 7.010000000]: rtabmap (2): Rate=1.00s, Limit=0.700s, RTAB-Map=0.0001s,
 Maps update=0.0000s pub=0.0000s (local map=1, WM=1)
[ WARN] (2019-04-08 15:03:05.302) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706985.302510847, 7.120000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.024186s
[ WARN] (2019-04-08 15:03:05.402) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706985.402243256, 7.220000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.022933s
[ WARN] (2019-04-08 15:03:05.512) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706985.513145989, 7.330000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.034191s
[ WARN] (2019-04-08 15:03:05.628) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 16<20"
[ INFO] [1554706985.629181949, 7.450000000]: Odom: quality=16, std dev=0.000000m|0.000000rad, update 
time=0.025295s
[ WARN] (2019-04-08 15:03:05.723) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 15<20"
[ INFO] [1554706985.723438859, 7.540000000]: Odom: quality=15, std dev=0.000000m|0.000000rad, update 
time=0.024002s
[ WARN] (2019-04-08 15:03:05.825) OdometryF2M.cpp:469::computeTransform() Registration failed: "Too l
ow inliers after bundle adjustment: 18<20"
[ INFO] [1554706985.825990287, 7.640000000]: Odom: quality=18, std dev=0.000000m|0.000000rad, update 
time=0.023376s
matlabbe commented 5 years ago

Visual odometry won't work well in that kind of simulated environment (not a lot of discriminative visual features). I suggest to stick with kuboki odometry.

ju-mingyue commented 3 years ago

@matlabbe https://github.com/introlab/rtabmap/issues/747 Unfortunately, I also encountered some problems when using rtabmap, so I hope you can provide me with some solutions, I am very grateful