Skip to content
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

Rotations don't match after alignment #616

Closed
qinjunj opened this issue Dec 22, 2023 · 2 comments
Closed

Rotations don't match after alignment #616

qinjunj opened this issue Dec 22, 2023 · 2 comments
Labels

Comments

@qinjunj
Copy link

qinjunj commented Dec 22, 2023

Hi there. I'm applying -a to align two trajectories when plotting them. However, this alignment only works for the xyz part (shown in the first two pics), but not the rotation part (as in the last two pics).
xyz_na
xyz_a
rpy_na
rpy_a

From the last two pictures, I can see that the rotation part (roll, pitch, yaw) will be better aligned if I switch roll and pitch, and probably make some rotation around the yaw axis. I understand that this will not be taken care of by the Umeyama algorithm because it is based on minimizing the difference in the xyz part only #299. What I'm not sure is, does this misalignment imply that the rotation has a different coordinate system as the xyz part? If so, is it valid if I transform the rotation part manually in the way stated above?

Thanks for any guidance!

@MichaelGrupp
Copy link
Owner

In this case, you would need to investigate the orientations in your data. For example you could enable pose axis markers to see them in plots:
https://github.com/MichaelGrupp/evo/wiki/Plotting#coordinate-axis-markers

...and/or use the RPE or APE with --pose_relation angle_deg to check the rotation errors between the two trajectories.

@LeeBY68
Copy link

LeeBY68 commented Jan 14, 2024

I have the same problem (Umeyama ONLY aligns positions instead of rotation) with evaluation using EVO in TextSLAM, inducing the wrong RPE results.

In response to this, I've developed a complementary solution for EVO that addresses the problem. You can use and find the details in the GitHub project: https://github.com/SJTU-ViSYS/SLAM_Evaluation/.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants