Matrix 如何从旋转矩阵计算角度

Matrix 如何从旋转矩阵计算角度,matrix,rotation,Matrix,Rotation,我有一个给定的3x3旋转矩阵,我想计算绕z轴的旋转角度。我怎么去那里? 例如,在下面的例子中,他们如何计算围绕x轴的“-30度旋转”?或者他们是如何得到围绕该轴的“-74度”值的 这是我的原始矩阵: 谢谢大家! 如果旋转矩阵只是一个旋转矩阵,并且没有缩放,那么这很简单。这里有一个网站,解释更漂亮的话,然后我愿意在这里图表。基本上,旋转矩阵由欧拉角的sinf(x)和cosf(x)组成(至少你可以这样想)。因此,可以使用其中的值反向计算欧拉角度 如果涉及到缩放,则需要首先规范化矩阵的每一行。然

我有一个给定的3x3旋转矩阵,我想计算绕z轴的旋转角度。我怎么去那里? 例如,在下面的例子中,他们如何计算围绕x轴的“-30度旋转”?或者他们是如何得到围绕该轴的“-74度”值的

这是我的原始矩阵:


谢谢大家!

如果旋转矩阵只是一个旋转矩阵,并且没有缩放,那么这很简单。这里有一个网站,解释更漂亮的话,然后我愿意在这里图表。基本上,旋转矩阵由欧拉角的sinf(x)和cosf(x)组成(至少你可以这样想)。因此,可以使用其中的值反向计算欧拉角度


如果涉及到缩放,则需要首先规范化矩阵的每一行。然后应用上述方法。

谢谢您的回复。但是,我没有matlab来使用您发送的代码。有没有一个方法/网站可以让我输入我的值,然后给我角度?你不需要matlab,只需要Z轴的数学,你需要atan2(r21,r11),你的原始矩阵是atan2(0,1),看看链接的分解矩阵部分。它有所有3个欧拉角的方程。