通过传感器,我得到坐标系 A 中的点到坐标系 B 中的点之间的旋转。由于传感器的噪声,坐标系之间的测量旋转不是 100% 相同的。
如何确定坐标系之间的平均或最佳旋转矩阵?与此问题类似:stackoverflow:平均四元数,但与此相反,我不想使用四元数,而是尝试一些最小二乘方法。
Given: Rba(n): Rotation matrix from a to b, measured at n different time points
Wanted: Rba optimal
我的方法:最小化平方距离。
首先,我在空间中定义 n 个随机点并将旋转应用于这些点。
现在我可以通过 Krabsch 算法使用奇异值分解来计算旋转,以最小化输入点和变换点之间的平方距离。但是,我不明白的是,计算出的旋转矩阵似乎取决于输入点。也就是说,尽管应用的旋转矩阵 Rba(n) 保持不变,但对于不同的输入点,我得到了不同的旋转矩阵。这是为什么?什么是正确的方法?
