旋轉矩陣的推導過程

剛體變換

定義

一個映射g:R3R3\R^3 \to \R^3如果滿足一下兩個特性,則是剛體變換
1. 長度保持不變:g(p)g(q)=pq\Vert g(p)-g(q)=\Vert p-q\Vert, 所有p,qR3p,q\in\R^3
2. 叉乘保持不變:g(v×w)=g(v)×g(w)g_*(v×w)=g_*(v)×g_*(w),所有向量v,wR3v,w\in\R^3


旋轉矩陣

在這裏插入圖片描述

A座標系

XA=[1 0]TX_A=[1\ 0]^T
YA=[0 1]TY_A =[0\ 1]^T

在A座標系下的B座標系

XB=cosθXAXA+sinθXAYA=[cosθ 0 0]T+[0 sinθ 0]T=[cosθ sinθ 0]TX_B=cos\theta \|X_A\|X_A+sin\theta\|X_A\| Y_A=[cos\theta \ 0 \ 0]^T+[0\ sin\theta\ 0]^T=[cos\theta \ sin\theta \ 0]^T
YB=sinθYAXA+cosθYAYA=[sinθ 0 0]T+[0 cosθ 0]T=[sinθ cosθ 0]TY_B=-sin\theta \|Y_A\|X_A+cos\theta \|Y_A\|Y_A=[-sin\theta \ 0 \ 0]^T+[0\ cos\theta\ 0]^T=[-sin\theta \ cos\theta \ 0]^T

構造矩陣

XB YBX_B\ Y_B放到一個矩陣裏Rab=[XB YB]R_{ab}=[X_B \ Y_B],將之稱爲旋轉矩陣

意義

將一個點的座標值在不同的基底下進行變換
P點在B座標系下爲PB(a,b)P_B(a,b),可以進行一下變換
P=[XB YB][ab]    =aXB+bYB    =(cosθXA+sinθYA)a+(sinθXA+cosθYA)b    =[XA YA][cosθsinθsinθcosθ][ab]    =[XA YA]Rab[ab]P=[X_B\ Y_B]\begin{bmatrix} a \\b\\ \end{bmatrix}\\ \ \ \ \ =aX_B+bY_B \\ \ \ \ \ =(cos\theta X_A+sin\theta Y_A)a+(-sin\theta X_A+cos\theta Y_A)b\\ \ \ \ \ =[X_A\ Y_A]\begin{bmatrix} cos\theta & -sin\theta \\ sin\theta & cos\theta \\ \end{bmatrix}\begin{bmatrix} a \\b \\ \end{bmatrix}\\ \ \ \ \ =[X_A\ Y_A]R_{ab}\begin{bmatrix} a \\b \\ \end{bmatrix}
可以看到,我們把基底從[XB YB][X_B\ Y_B]換成了[XA YA][X_A\ Y_A],也就是同一個點,在B座標系下的座標爲[a b]T[a \ b]^T,在A座標系下的座標爲R[a b]TR[a \ b]^T,可以理解爲是空間中同一個點在不同的座標系中(座標系旋轉了)的表示,也可以理解爲同一個座標系下,是點在運動(假設座標系沒動,那麼動的就是點)。


平移變換

剛體變換除了旋轉外還有平移運動,假設變換後的座標系B的原點在原來座標系A下爲PAB=[x1 y1]TP_{AB}=[x_1 \ y_1]^T
PA=RABPB+PABP_A=R_{AB}P_B+P_{AB}
結合以上的推導,我們可以將剛體變換寫成齊次座標的形式
PA=[RABPAB01][PB1]P_A=\begin{bmatrix} R_{AB} & P_{AB}\\ 0 & 1\end{bmatrix}\begin{bmatrix} P_{B} \\ 1\end{bmatrix}


以上的推導同樣可以拓展到三維空間裏

繞Z軸旋轉的旋轉矩陣

RZ(θ)=[cosθsinθ0sinθcosθ0001]R_Z(\theta)=\begin{bmatrix} cos\theta & -sin\theta &0\\ sin\theta & cos\theta & 0 \\0&0&1\end{bmatrix}

繞Y軸旋轉的旋轉矩陣

RY(θ)=[cosθ0sinθ010sinθ0cosθ]R_Y(\theta)=\begin{bmatrix} cos\theta &0& sin\theta \\ 0&1&0\\ -sin\theta &0& cos\theta \end{bmatrix}

繞X軸旋轉的旋轉矩陣

RX(θ)=[1000cosθsinθ0sinθcosθ]R_X(\theta)=\begin{bmatrix} 1&0&0\\0&cos\theta&-sin\theta \\0&sin\theta&cos\theta\end{bmatrix}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章