-
Notifications
You must be signed in to change notification settings - Fork 724
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
covariance of the g2o optimzation #174
Comments
The covariance can be gets smaller after closing some loops and adding some other constraints (e.g., GPS). I've not tried to obtain marginals with g2o, and I'm not really sure, but I think your result may be correct. |
Thanks for your reply. But it seems too small... std 0.0009 if represents the translation. Is it possible the top-left (3x3) is the rotation std and the right bottom(3x3) is the translation std? |
I got it. It's in the form of information matrix. You can take the inverse of it to get the distribution. |
Yes I have already inverted the output as the output is the information matrix. . But the result of inverse's std is very small 0.0009.... |
thanks this should be ok to recover the covariance, might be I assume the top left 3x3 belongs to the rotation should be fine~ |
Hello, I have a problem with this line in the code, I get an error that there is no function computeMarginals. (which i verified by checking the graph_slam.cpp file), my question is how did you make this work |
Thank you so much Darren, this worked for me, do you also have any idea how i can access the individual covariences of observed points from scan matching, as this gives the covarience of the vehicle vertex? |
Might be you can refere to the code here for GICP point's covariance. https://github.com/PointCloudLibrary/pcl/blob/4766f4146b792ef833c773d35157fcc9c668110b/registration/include/pcl/registration/gicp.h#L388 |
Thank you Darren! |
We want to evaluate the g2o optimization result, try to add the below code to compute the covariance of the last keyframe refer to https://github.com/RainerKuemmerle/g2o/blob/4b9c2f5b68d14ad479457b18c5a2a0bce1541a90/g2o/examples/target/static_target.cpp#L107
The GTSAM have a similar interface will have a fine result.
But the covariance matrix computed by g2o seems not correct as it is smaller as time goes on.
Do you have any suggestions if we want to get the covariance of last keyframe after g2o optimization?
add code after
hdl_graph_slam/apps/hdl_graph_slam_nodelet.cpp
Line 582 in b1d9b51
the result at the beginning
![image](https://user-images.githubusercontent.com/5771106/104716136-71a54480-5762-11eb-90e2-84b10974528b.png)
the result after a few state( 400+), the covariance of the pose(the diagonal) is very small
![image](https://user-images.githubusercontent.com/5771106/104717657-9a2e3e00-5764-11eb-8130-d43c03c68c41.png)
The text was updated successfully, but these errors were encountered: