SVD分解求解超定方程组(求解旋转四元数)
考虑求解超定方程组,其中
是一个
的矩阵(计算旋转的时候四元数的左乘或右乘矩阵生成的矩阵),
是一个
的向量(表示旋转的单位四元数)。对
矩阵进行SVD分解,可以得到
,所以原方程组就变成
,其中
是酉矩阵,所以问题等价为求解
,又由于这是一个超定方程组,所以通常情况下没有办法求得精确解,所以需要求得最优解,问题又等价于
,由于
是正交矩阵,所以乘以
并不会改变
的模,
是表示旋转的单位四元数,模长为1,设
,求解
,由于
的模长为1,所以只需要将所有的模长全部分配到对应最小的特征值的位置上就行,此时再使用
就可以计算出
,显然
就是对应的最小奇异值的特征向量。
