MATLAB Answers

matrix determined by eul2rotm does not match a matrix calculated by euler angles using rotm2eul

5 views (last 30 days)
Imura Akiko
Imura Akiko on 19 Nov 2020
Answered: Yiping Liu on 23 May 2021
I calcurated euler angles from a rotation matrix using "rotm2eul".
And I tried to confirm if a matrix calculated from the euler angles using "eul2rotm" corresponds to the original matrix.
However, the recalculated matrix did not correspond to the original one.
I used a sequence "XYZ" for both calcurations.
Is this conformation process wrong?
I would like to reproduce a rotation matrix using euler angles.
If anyone knows solutions about this, please let me know.
Sincerely,
  7 Comments
David Goodmanson
David Goodmanson on 22 Nov 2020
Hello Akiko, it might be a small problem, but it's an interesting one, the finding that det = -1 changes things so radically.

Sign in to comment.

Answers (1)

Yiping Liu
Yiping Liu on 23 May 2021
When you feed in a rotation matrix to rotm2eul, if the matrix is not orthonormal, the rotm2eul will try to find the closest orthonormal matrix first. In that case if you try to convert the Euler angles back to rotation matrix, you won't get back the original one.

Products


Release

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by