我从许多帧的姿势估计中获得了许多旋转矢量(当相机静止时),我想要最准确的测量方法。从理论上讲,我可以通过旋转矢量\矩阵\其他类型的数据求平均值吗?还是那是错的? 另外,我怎么知道旋转向量\矩阵何时是异常值(即与所有其他值非常不同,可能是计算错误)?例如,在翻译矩阵中,我看到每个条目的厘米差异,并且可以有一个直观的阈值。是否有类似的轮换方式?
答案 0 :(得分:0)
使用术语“最准确”时,可能无法对旋转矩阵求平均,特别是不能。但是让我们重新开始:矩阵乘法,即旋转,不上下班。 ABC!= BAC!= CBA ...结果可以想象到的相距甚远。
就离群值而言:使用四元数代替旋转矩阵。首先,可以最大程度地减少计算步骤,从而提高性能,在线上有大量的实现。其次,通过在四元数上建立欧几里得范数,您可以很好地衡量异常值。
答案 1 :(得分:0)
如果要对“接近”的旋转进行平均,一种方法是,类似于说数字的平均值,寻求使“离散”最小的值。对于数字x [],均值是拟量值
disp = Sum{ i | sqr( x[i]-mean)}
因此对于旋转R [],我们可以求出旋转Q以最小化
disp = Sum{ i | Tr( (R[i]-Q)'*(R[i]-Q))}
对色散的特殊测量导致了一种计算Q的实用方法:
a /计算旋转的“均值矩阵”
M = Sum{ i | R[i] } /N
b /获取该SVD
M = U*D*V'
c /计算最接近M的旋转
Q = U*V'