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

Revision history [back]

click to hide/show revision 1
initial version

For the simple case most often considered by general users the covariance matrix is diagonal matrix. Each element on the diagonal can be considered as the variance of the corresponding state in the state vector.

The state is a length 15 vector with members given as (X,Y,Z,roll,pitch,yaw,X˙,Y˙,Z˙,roll˙,pitch˙,yaw˙,X¨,Y¨,Z¨). Where single dot is the first time derivative and two dot is the second time derivative (sorry about the messed up format :/).

With that understood, the element (1,1) of the covariance matrix is the variance of X, element (2,2) is the variance of Y, element (3,3) is the variance of Y and so on down the line.

To understand the covariance matrix in general check out the wikipedia page. And note that for the simple case that most users encounter (myself included) we do not consider cross correlation between states. That is why we the covariance matrix is a diagonal matrix.

So in order to make your GPS measurement have less of an impact on the estimate, you should figure out how to increase its (1,1) and (2,2) covariance matrix values because it only should measure (x,y) location and increasing the variance tells the filter to "trust" the measurement less.

Hope this helps! Cheers