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

robot_localization: Differential parameters and covariance

asked 2017-09-27 05:40:05 -0600

cwalt gravatar image

I'm trying to fuse visual odometry with an IMU sensor to get pose estimates.

Neither of these give covariance by default, so I am setting them myself.

My question is: Is at least one absolute position required for the covariance to converge? Is this expected behaviour or is something wrong?

For whatever values I try, unless I use the visual odometry with differential=False, the covariance increases forever. I have tried having very small covariance diagonals in the messages, slightly bigger in the noise, and large (but not huge) for the initial estimate.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2018-01-02 03:24:35 -0600

Tom Moore gravatar image

If you want the pose covariance to be constrained (i.e., to not grow without bound), yes, you need at least one absolute pose reference. Differential mode is currently handled by differentiating the pose and treating it as a velocity. I have a branch of r_l in the Locus Robotics fork that computes relative pose differently, but it assumes that the message covariance can be used directly.

edit flag offensive delete link more


Thanks for the answer! It now seems reasonably intuitive. I have ended up using GPS with high covariance as the absolute source.

cwalt gravatar image cwalt  ( 2018-01-03 10:02:40 -0600 )edit

Question Tools

1 follower


Asked: 2017-09-27 05:40:05 -0600

Seen: 1,095 times

Last updated: Jan 02 '18