1.尤拉角
我們這裡談論尤拉角只討論在笛卡爾座標系下,不考慮飛機座標系(我不確定正規是不是叫這個名字)那種。
也就是右手定則確定的笛卡爾座標系。
可以把x和y放在水平面,z軸朝上,這樣想象一下。
然後,很顯然存在三種旋轉方式,也就是分別繞x,繞y和繞z旋轉。我們分別把三種旋轉稱為roll(繞x軸旋轉),pitch(繞y軸旋轉),yaw(繞z軸旋轉)。
但是這個存在乙個萬向鎖的問題,在另一篇講rpy的文章裡面有介紹,大致就是pitch90度之後,另外兩個維度的旋轉會變得等價。
2.四元數
為了解決萬向鎖問題,四元數被提了出來。
四元數表示繞軸旋轉θ角度
軸和角與四元數的轉換為
x = x0 * sin(θ/2)
y = y0 * sin(θ/2)
z = z0 * sin(θ/2)
w = cos(θ/2)
例如,如果是乙個只會左右擺頭的機械人,那麼它的頭部運動就是繞(0,0,1)這個軸,yaw旋轉角為θ(前面說的,yaw就是繞z軸旋轉,擺頭很明顯就是繞z軸旋轉),那麼對應的四元數為
x = 0 * sin(θ/2) = 0
y = 0 * sin(θ/2) = 0
z = 1 * sin(θ/2) = sin(θ/2)
w = cos(θ/2)
四元數和尤拉角學習
在3d圖形學中,最常用的旋轉表示方法便是四元數和尤拉角,比起矩陣來具有節省儲存空間和方便插值的優點。本文主要歸納了兩種表達方式的轉換,計算公式採用3d笛卡爾座標系 圖1 3d cartesian coordinate system from wikipedia 定義圖2 tait bryan ang...
matlab 角度轉四元數 尤拉角和四元數
用一句話說,尤拉角就是物體繞座標系三個座標軸 x,y,z軸 的旋轉角度。尤拉角將方位 角位移 分解為繞三個互相垂直軸的旋轉。任意三個軸和任意順序都可以,但最有意義的是使用笛卡爾座標系並按一定順序所組成的旋轉序列。最常用的約定是所謂的 heading pitch bank 約定。它的基本思想是讓物體開...
尤拉角與四元數
尤拉角是表達旋轉的最簡單的一種方式,形式上它是乙個三維向量,其值分別代表物體繞座標系三個軸 x,y,z軸 的旋轉角度。第一張 pitch,航空領域表示飛機的俯仰角。繞x軸轉動結果 第二張 yaw,表示飛機的偏航角,繞y軸轉動結果 第三張 roll,表示飛機的翻滾角,繞z軸轉動結果。四元數是由愛爾蘭數...