Login  Register

using icp and visual odometry at the same time!

classic Classic list List threaded Threaded
2 messages Options Options
Embed post
Permalink
Reply | Threaded
Open this post in threaded view
| More
Print post
Permalink

using icp and visual odometry at the same time!

Masoumeh
158 posts
This post was updated on Jan 26, 2022; 3:19pm.
hi mattieu,

I am using demo-husky and rtabmap.launch files for my robot (my robot is warthog).
I have activated visual odometry, but in rviz i can see that even the vehicle is in one location, the map starts drifting:




Now, i want to activate icp, as well. but accoriding to the setting which have been defined in rtabmap.launch file. if icp-odometry is false, it will starts checking for visual odometry: https://github.com/introlab/rtabmap_ros/blob/master/launch/rtabmap.launch


    <group unless="$(arg icp_odometry)">
      <group if="$(arg visual_odometry)">


so how can i have both of them at the same time, and besynched with each other as well.
the frequency rate of 3D lidar is 10, and the freq rate of my rgbd is about 30 hz.

thanks

Reply | Threaded
Open this post in threaded view
| More
Print post
Permalink

Re: using icp and visual odometry at the same time!

matlabbe
Administrator
4446 posts
Hi,

I would start without visual and icp odometry first, to see if the drift is coming from your /odometry/filtered topic. Like in demo_husky.launch, if you launch with icp_odometry:=false. If it is drifting, debug your robot odometry (maybe your IMU is drifting).

Why would you want to start visual odometry and icp odometry at the same time? One or the other is not enough? With rtabmap.launch, we cannot do that, it is one or the other to avoid TF conflicts.

It is possible to start icp_odometry and rgbd_odometry at the same time (by launching the nodes directly), but you should make sure topics are not sent on same name, and there are no TF conflicts. If you would want to do fusion of icp odometry, visual odometry and wheel odometry with robot_localization, you can set publish_tf=false for icp and visual odometry.

To use icp odometry, rtabmap should be built with libpointmatcher as stated here.

cheers,
Mathieu