最近在做vr方面的研究,看到了google cardboard對感測器處理的**,對旋轉矩陣、羅德里格公式做了一些研究。
羅德里格公式是計算三維空間中,乙個向量繞旋轉軸旋轉給定角度以後得到的新向量的計算公式,具體的詳細推導可以看維基,我覺得只要能知道如何使用就可以了,注意旋轉軸為單位向量,來計算旋轉矩陣。
下面是google cardboard中羅德里格公式**:
public
static
void
so3frommu(vector3d w, matrix3x3d result) else
if (thetasq < 1.0e-6) else
so3util.rodriguesso3exp(w, ka, kb, result);
}private
static
void
rodriguesso3exp(vector3d w, double ka, double kb, matrix3x3d result)
**中羅德里格變換矩陣為:
ka和kb兩個引數在陀螺儀靜態狀態下,(x,y,z)角速度極小條件下做了修正,效果應該是能夠增強畫面移動的穩定性,這個還有待測試。
這裡為了計算方便有個推導公式:
這樣就和上面公式一樣了。
羅德里格斯公式推導
k為單位向量,向量v繞旋轉軸k旋轉 得到向量vrot,那麼就有下面的旋轉方程使等式成立 vrot rv 而這個旋轉方程就是羅德里格斯方程 r cos i 1 cos kk sin k 下面開始推導 向量分解 v v k k 向量點乘得標量,k為單位向量 vrot vrot v vrot a b 由圖...
羅德里格斯公式的證明
羅德里格斯的旋轉公式 這篇文章是關於羅德里格斯的旋轉公式,它與相關的尤拉羅德里格斯引數和尤拉羅德里格斯公式的3d旋轉不同。在三維旋轉理論中,對於給定旋轉軸和旋轉角度,以olinde rodrigues命名的羅德里格斯公式是用於在空間旋轉向量的高效演算法。通過擴充套件,它可以用於把所有軸角表達的三維向...
羅德里格斯(Rodrigues)旋轉方程推導
羅德里格斯旋轉方程是從角度和向量計算出相應的旋轉矩陣,這個旋轉方程在很多方面有重要的應用,這裡簡要概述一下方程的推導過程。維基百科 羅德里格斯方程 推導過程 整個推導過程都是圍繞上面的開展的,進行向量推導。首先,定義向量k是旋轉軸的單位向量,向量v是繞向量k旋轉角度 的任意向量 旋轉方向遵循右手定則...