-
Notifications
You must be signed in to change notification settings - Fork 328
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
how can i get the covariance matrix after matching? #20
Comments
Hello koide3, thanks for your great work! There is no implementation of AndreaCensis work (2007) (covariance estimation), right? In the ndt_omp_impl.hpp file (l: 935) is a function called calculateScore(). Is this the same implementation as the ndt score function of Magnusson2009 (negative logarithmic likelihood function) ? |
No, I didn't implement Censi's method and haven't seen any open source implementation of it. If you want to implement it you can find the Hessian at the following line. You would need a slight modification to access to it though. ndt_omp/include/pclomp/ndt_omp_impl.hpp Line 113 in 399d613
Yes, it is the negative log likelihood defined in Magnusson2009. But, in my experience, it didn't help to assess the registration result because it got often small for corrupted registration results. |
Hey koide3,
Good to know you haven't found an implementation of Censi's work either. I found the hessian but what do you mean with "a slight modification to access to it"? What would be the best solution to access the hessian in your opinion? Something like getter-method or a global access?
Alright - thanks for the information. I know it's not the best reference but I would like to include this score in a comparison. |
Hey koide3, ndt_omp/include/pclomp/ndt_omp_impl.hpp Line 170 in 399d613
Is this is the right place to take off the Hessian? When i invert the hessian matrix and calculate the eigenvalues with // calculate eigenvalues
All six eigenvalues are negative. Can you give me a hint why this is so or whether i can simply use the absolute vlaue of the eigenvalues with many thanks in advance |
Hi @idref ,
Yes, I think it's a correct place to get the final Hessian.
If I remember correctly, this NDT implementation does maximization rather than minimization. If so, it's ok that the eigenvalues of the Hessian are negative. If you need only the magnitude of the largest eigenvalue, I think you can just take an absolute. |
Needed so that `CMakeLists.txt` can access the `$ROS_VERSION` environment variable in the ROS buildfarm Signed-off-by: Esteve Fernandez <[email protected]>
build(ndt_omp): add ros_environment dependency (#20)
hello kode3, thanks for your work! i have a question.when i use your ndt omp library for localization, i do not know how to get the covariance matrix which can evaluate my result?
The text was updated successfully, but these errors were encountered: