ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

Stereo mapping use an external Odometry

asked 2016-08-04 20:48:11 -0500

fudekun gravatar image

updated 2016-08-17 04:30:35 -0500

gvdhoorn gravatar image

I am challenging the stereo mapping using the ZED Camera. http://wiki.ros.org/rtabmap_ros/Tutor...

The hand-held mapping, was successful. (Use Visual Odometry)

However, when I use an external Odometry (Odometry by my robot), mapping failed. http://wiki.ros.org/rtabmap_ros/Tutor...


rtabmap version is 0.11.7-indigo.

launch command is as follows: I've used.

roslaunch rtabmap_ros stereo_mapping.launch stereo_namespace:=/camera right_image_topic:=/camera/right/image_rect_color frame_id:=base_link visual_odometry:=false odom_topic:=/myOdometry rtabmap_args:="--Vis/CorFlowMaxLevel 5 --Stereo/MaxDisparity 200" approximate_sync:=true rviz:=true rtabmapviz:=false

As it follows output results of the launch command I used.(It does not proceed to the first.)

[ INFO] [1470359443.524334573]: Update RTAB-Map parameter "Stereo/MaxDisparity"="200" from arguments
[ INFO] [1470359443.524388849]: Update RTAB-Map parameter "Vis/CorFlowMaxLevel"="5" from arguments
[ INFO] [1470359443.685933381]: RTAB-Map detection rate = 1.000000 Hz
[ INFO] [1470359443.685983418]: rtabmap: Using database from "/home/fukuta/.ros/rtabmap.db".
[ INFO] [1470359445.966125352]: rtabmap: Database version = "0.11.7".
[ INFO] [1470359446.342636926]: Registering Stereo Exact callback...
[ INFO] [1470359446.343230456]: 
/rtabmap/rtabmap subscribed to:
  /camera/left/image_rect_color_relay,
  /camera/right/image_rect_color_relay,
  /camera/left/camera_info,
  /camera/right/camera_info,
  /myOdometry 
[ INFO] [1470359446.343568287]: rtabmap 0.11.7 started...

/myOdometry is here. VisualOdometry of rtabmap is publishing so there is a difference between /rtabmap/odom does not appear to me.

header: 
  seq: 12762
  stamp: 
    secs: 1470359835
    nsecs: 702744122
  frame_id: odom
child_frame_id: base_link
pose: 
  pose: 
    position: 
      x: 0.0
      y: 0.0
      z: 0.0
    orientation: 
      x: 0.0
      y: 0.0
      z: 0.0
      w: 1.0
  covariance: [1e-05, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1e-05, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1000000000000.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1000000000000.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1000000000000.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.001]
twist: 
  twist: 
   linear: 
     x: 0.0
     y: 0.0
     z: 0.0
   angular: 
     x: 0.0
     y: 0.0
     z: 0.0
 covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

I hope you can help me! Thank you!


Edit: now try 0.11.8. but I failed mapping with a next messages.

[ERROR] [1471423061.039552705]: Failed to load nodelet [/rtabmap/stereo_odometry] of type [rtabmap_ros/stereo_odometry] even after refreshing the cache: MultiLibraryClassLoader: Could not create object of class type rtabmap_ros::StereoOdometry as no factory exists for it. Make sure that the library exists and was explicitly loaded through MultiLibraryClassLoader::loadLibrary()
[ERROR] [1471423061.039601785]: The error before refreshing the cache was: MultiLibraryClassLoader: Could not create object of ...
(more)
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2016-08-05 15:25:41 -0500

matlabbe gravatar image

Hi,

rtabmap is subscribed to /camera/left/image_rect_color_relay and /camera/right/image_rect_color_relay, which looks strange to me as compressed argument is not set on your command line. It should be /camera/left/image_rect_color and /camera/right/image_rect_color.

It is also "Registering Stereo Exact callback...", so rtabmap expects that all input topics have the exact time stamp. Not sure about your exact version of stereo_mapping.launch, but now the approximate sync argument is approx_sync:=false. Note that latest indigo binaries have been just released (with rtabmap 0.11.8).

However, if you have synchronized stereo images, I would recommend to keep exact time synchronization with odometry from TF (make sure you have the latest stereo_mapping.launch and rtabmap.launch to use odom_frame_id argument):

roslaunch rtabmap_ros stereo_mapping.launch stereo_namespace:=/camera right_image_topic:=/camera/right/image_rect_color frame_id:=base_link visual_odometry:=false odom_frame_id:=/odom rtabmap_args:="--Vis/CorFlowMaxLevel 5 --Stereo/MaxDisparity 200" rviz:=true rtabmapviz:=false

cheers

edit flag offensive delete link more

Comments

thank you for the advice.I was saved. We set the "odom_frame_id", but the behavior of my rtabmap did not change. To be checked again after the update to 0.11.8 the rtabmap. (Now, I can be installed only version 0.11.7 In the apt-get.)

fudekun gravatar image fudekun  ( 2016-08-10 00:31:17 -0500 )edit

Indigo binaries are on 0.11.8. $ sudo apt-get update$ sudo apt-get upgrade

matlabbe gravatar image matlabbe  ( 2016-08-10 08:25:18 -0500 )edit

now try 0.11.8. but I failed mapping with a next messages.

fudekun gravatar image fudekun  ( 2016-08-17 03:40:08 -0500 )edit

Try to re-source $ source /opt/ros/indigo/setup.bash.

matlabbe gravatar image matlabbe  ( 2016-08-22 09:12:44 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2016-08-04 20:48:11 -0500

Seen: 546 times

Last updated: Aug 17 '16