在矩陣的初等變換中,矩陣的左乘代表著行變換,TA=B。
矩陣的右乘相當(dāng)于列變換, AT=C。
當(dāng)三維坐標(biāo)發(fā)生旋轉(zhuǎn)、平移時,就需要考慮到矩陣是左乘還是右乘。
設(shè)有旋轉(zhuǎn)矩陣R,平移矩陣T, 坐標(biāo)矩陣A。
-若是繞著靜態(tài)的世界坐標(biāo)系旋轉(zhuǎn),有RA,即左乘旋轉(zhuǎn)矩陣
- 若是繞著動態(tài)的自身坐標(biāo)系旋轉(zhuǎn),有A’R’, 即右乘旋轉(zhuǎn)矩陣
- 若是進行平移,則有TA,即左乘平移矩陣, A’T’為右乘平移矩陣
在使用中,我們通常對三維點(云)的旋轉(zhuǎn)與平移進行左乘。
而旋轉(zhuǎn)矩陣在左乘時設(shè)逆時針為正。
以下是常用的旋轉(zhuǎn)矩陣。
有列向量A=[x,y,z];
則 RA 就是對 A 進行旋轉(zhuǎn)。注意這里 A 是列向量,因為是在對A的每行的元素進行變換。
若要寫成右乘形式,則有(RA)’=A’R’,此時R’變?yōu)橛页说男D(zhuǎn)矩陣,A’為行向量,對A’的每一列元素進行變換。
對于平移有平移矩陣T=
設(shè)有 3x3旋轉(zhuǎn)矩陣R, 平移列向量u,平移矩陣T 為上述表達形式, 坐標(biāo)列向量A
以下過程用常見的左乘形式
1 先旋轉(zhuǎn)再平移
RA+u = [ R , u ; 0 1]* [A , 1 ]
也可以寫成 T*R*A 的形式, A為齊次坐標(biāo)的形式
2 先平移再旋轉(zhuǎn)
R(A+u)=RA+Ru;
也可以寫成 R*T*A
若要將上述過程寫成右乘的形式,則要全部進行轉(zhuǎn)置