MichaelGrupp / evo

Python package for the evaluation of odometry and SLAM
https://michaelgrupp.github.io/evo/
GNU General Public License v3.0
3.32k stars 743 forks source link

Less than m non-colinear points #659

Closed Davidyao99 closed 1 month ago

Davidyao99 commented 2 months ago

I realize that when my trajectory is a straight line in 3D, umeyama_alignment throws an exception. This results in None results for some trajectories in my evaluation.

Is there anyway to prevent this from happening? I made a toy example and realized that if I ignore the exception, the alignment returned appears to be right. However, I am not sure if this will lead to other issues. Any suggestions / guidance on how to resolve this?

MichaelGrupp commented 2 months ago

The solution is only unique if there are >=3 non-colinear points in 3D space. For full details, I would recommend to check the original paper of the algorithm.