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

AMCL Covariance : define a "good" covariance

asked 2019-10-21 11:09:34 -0600

luchko gravatar image

updated 2019-10-21 11:10:00 -0600


hello,I am using AMCL to localize my robot. When i suscribe to /amcl_pose, I get some geometry_msgs::StampedPoseWithCovariance.

I read a lot about AMCL and covariance and I understood what lines of the matrix represent (Position X,Y,Z and Rotation X,Y,Z) => Only position(X,Y) and Rotation(Z) are non null/usefull as my robot is not flying. This thread which contain usefull informations.

I now hace 2 questions and found only partial informations:
1) Are the covariance sent by amcl_pose relative to the last update (eg. at T1 covariance is relative to T0)
2) What define a "good covariance"? A threshold on values? How to determine it?

Thank you by advance !!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2019-10-21 12:24:51 -0600

The covariances are the current process uncertainty. Its not recursive (well, recursively updated, but the numbers you get out are relative to the current state).

"good" is automatically biased by requirements, you're better off either deriving some covariances from requirements probablistically or easier just take some data for what you define as "good" situations and get familiar with it.

edit flag offensive delete link more


Thank you Steven! Allow me to ask you some clarification
The covariances are the current process uncertainty.
Thank you, so the covariance at T time represent the uncertainty relative to the T-1 time?

"good" is automatically biased by requirements
Well... You're damn right. If it is possible to, for example, transform a X axis covariance into "real world" centimeters, I could find out what my requirments are... Do you know if it's possible?

luchko gravatar image luchko  ( 2019-10-21 15:28:46 -0600 )edit

The covariance given in update N is for measurement N, but computed from N-1 and measurement N's match/quality.

A covariance doesn't have units that can be trivially converted to distance units, I'd recommend becoming more familiar with probablistic representations to learn more about values

stevemacenski gravatar image stevemacenski  ( 2019-10-21 15:41:27 -0600 )edit

Thanks, Will do that :)

luchko gravatar image luchko  ( 2019-10-21 15:46:43 -0600 )edit

Question Tools



Asked: 2019-10-21 11:09:34 -0600

Seen: 590 times

Last updated: Oct 21 '19