什么是旋转矩阵?

4
我看到这段代码使用手机传感器获取设备沿3个轴的方向角度,这个值是从一个名为旋转矩阵的4x4矩阵计算出来的。那么我想知道旋转矩阵中存储了什么类型的数据?
该代码类似于以下示例中的代码: Android: Problems calculating the Orientation of the Device

1
这是一个变换矩阵:旋转 - Blackbelt
那么矩阵中的值代表什么向量? - user2462435
1
有一个叫谷歌的东西: http://inside.mines.edu/~gmurray/ArbitraryAxisRotation/ - Bull
1个回答

7

维基百科中关于旋转矩阵的文章是合理的。简单来说,旋转矩阵告诉您如何将一个坐标系中的点映射到另一个坐标系中的点。在Android传感器的上下文中,旋转矩阵告诉您如何将一个点从手机的坐标系(其中手机本身位于x-y平面)映射到现实世界的北/东/“重力方向”坐标系。

Android使用3x3或4x4旋转矩阵。当使用4x4矩阵时,它是旋转的四元数表示。对于3x3情况,以欧拉角的方位角、俯仰角和横滚角表示,请参见我对“使用磁场计算旋转矩阵”的问题的回答,了解这些角度嵌入旋转矩阵的方式(注意:该问题的被接受的答案是错误的),链接:my answer to 'Compute rotation matrix using the magnetic field'


1
我知道这已经过时了,但只是为了澄清这个答案中让我困惑的一点:虽然你可以从一个3x3的旋转矩阵计算欧拉角,但是3x3矩阵中的值不是欧拉角,并且如果你想要一个简单的旋转矩阵,它们可以被用作直接的旋转矩阵。 - Bob Liberatore

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接