我已经编辑了这个问题,以便进一步明确,并且由于下面的一些答案。
我有一个电磁运动跟踪器跟踪传感器并给我一个全球空间点(X,Y,Z)。它还跟踪传感器的旋转并给出欧拉角(Yaw,Pitch,Roll)。
传感器连接在棒球帽上的刚体上,棒球帽位于人的头上。但是,我希望跟踪特定面部特征(例如鼻子)的位置,我从运动跟踪器传感器的位置和方向推断出该特征。
我估计了运动跟踪器和我想要跟踪的面部特征之间的空间偏移。我通过简单地测量沿X,Y和Z轴的偏移来完成此操作。
根据之前对这个问题的回答,我根据运动追踪器给我的欧拉角创建了一个旋转矩阵。但是,我不知道应该如何使用这个旋转矩阵,传感器在全局空间中的位置以及传感器和鼻子之间的空间偏移,以便在全球空间中给出鼻子的位置。
答案 0 :(得分:0)
传感器将为您提供一个旋转矩阵(通过欧拉角)和一个位置(应该是旋转中心的位置)。
无论哪个物品刚性地固定在传感器上,例如鼻子,都会经历相同的运动。然后知道鼻子和传感器的相对坐标,就可以得到关系
Q = R.q + P
其中R
是旋转矩阵,P
是传感器的位置矢量,q
是鼻子的相对坐标。
请注意,旋转矩阵和角度之间的关系可以使用以下公式之一计算:https://en.wikipedia.org/wiki/Euler_angles#Rotation_matrix。 (您需要仔细阅读该文章,以确保您的案例属于12种可能性。)
原则上,您可以从传感器的读数中确定R
和P
,但是您缺少坐标q
。有几种方法:
通过测量位于旋转中心并正确对齐的虚轴上的距离,明确确定这些坐标。
您确定与已知Q
和R
对应的鼻子的绝对坐标P
;然后q
由R'(Q - P)
给出,其中R'
表示R
的转置(也是其反转)。要获得Q
,您只需将传感器中心移至鼻子而不移动头部。