參考課程P4:
https://www.bilibili.com/video/BV1X7411F744?p=4
一、正交矩陣和轉(zhuǎn)置矩陣
1.對(duì)稱矩陣
對(duì)稱矩陣(Symmetric Matrix)是指元素以主對(duì)角線為對(duì)稱軸對(duì)應(yīng)相等的矩陣,例如:

可以看到,對(duì)稱矩陣的轉(zhuǎn)置等于其自身
2.對(duì)角矩陣
對(duì)角矩陣(Diagonal Matrix)是指除主對(duì)角線之外其他元素都為0的矩陣,例如:

3.三角矩陣
三角矩陣(Triangular Matrix)分為上三角矩陣和下三角矩陣。
上三角矩陣(Upper Triangular Matrix)是指主對(duì)角線以下元素全為0的矩陣,如:

下三角矩陣(Lower Triangular Matrix)是指主對(duì)角線以上元素全為0的矩陣,如:

可以看到,對(duì)角矩陣一定是三角矩陣。
4.參考正交矩陣
正交矩陣是指其轉(zhuǎn)置等于逆的矩陣
正交:可以簡(jiǎn)單理解成就是垂直.

對(duì)于正交矩陣,組成它的列向量 構(gòu)成了一個(gè)空間的基,稱之為:規(guī)范正交基。 而我們知道:對(duì)于一個(gè)空間而言,我們是可以找到很多個(gè)不同的基來(lái)表示的(參考相似矩陣的基底變換),那對(duì)于一個(gè)空間:假設(shè)已知的基底是非規(guī)范正交基,有什么辦法獲取到它的規(guī)范正交基呢?【施密特正交法】。
以三維空間為例,我們希望正交矩陣是:

但是實(shí)際上他很可能是下邊這個(gè)樣子:

亦即以z軸為中心逆時(shí)針旋轉(zhuǎn)了45°, 此時(shí)向量a,b,c依然相互正交,但是其列向量并不都在標(biāo)準(zhǔn)軸上.而對(duì)角化的結(jié)果是一個(gè)對(duì)角矩陣,本質(zhì)就是把矩陣列向量都放到標(biāo)準(zhǔn)軸上。 那么很顯然:正交矩陣一定可以做到!
參考為何正交矩陣一定可以對(duì)角化?
正交矩陣是一個(gè)在三維坐標(biāo)系中歪著擺的立方體。對(duì)角化就是把這個(gè)立方體擺正來(lái)(也就是讓它某一個(gè)頂點(diǎn)放在原點(diǎn)上,同時(shí)這個(gè)頂點(diǎn)的三條邊正好對(duì)在三維坐標(biāo)系的xyz三條軸上)。所以這個(gè)定理的意思就是,任何歪著擺的立方體勞資都能把它擺正了。這定理還是蠻直觀的。
所以結(jié)論就是:凡是正交矩陣一定可以對(duì)角化!
5.轉(zhuǎn)置矩陣
將矩陣的行列互換得到的新矩陣稱為轉(zhuǎn)置矩陣,轉(zhuǎn)置矩陣的行列式不變。

轉(zhuǎn)置矩陣:

如果N階方陣和它的轉(zhuǎn)置相等,則稱為對(duì)稱矩陣。
轉(zhuǎn)置矩陣,在3Blue1Brown的線代視頻中沒有深入介紹,在此直接關(guān)注如何應(yīng)用即可。
5.在P4的開頭,閆大佬提到了正交矩陣和轉(zhuǎn)置矩陣

寫出旋轉(zhuǎn)θ和旋轉(zhuǎn)負(fù)θ的矩陣,會(huì)發(fā)現(xiàn)旋轉(zhuǎn)負(fù)θ,等于旋轉(zhuǎn)θ的轉(zhuǎn)置,這是正交矩陣的性質(zhì)。通常求逆矩陣是很費(fèi)性能的,而求轉(zhuǎn)置矩陣則非常簡(jiǎn)單。
二、3d transformations
1.平移和縮放比較簡(jiǎn)單

2.旋轉(zhuǎn),這里視頻講的有點(diǎn)快,我描述一下自己的理解

這里使用右手法則,以繞X軸旋轉(zhuǎn)為例,仍然使用3Blue1Brown的思路,去看i帽、j帽、k帽的基坐標(biāo)變換:
顯然,繞x旋轉(zhuǎn)時(shí),x方向的基向量不變,即豎著的(1,0,0),然后就是y和z軸:

顯然,y變成了(0,cos α,sin α)

顯然,z變成了(0,-sinα,cosα)
所以,繞x軸旋轉(zhuǎn)的線性變換就是:

繞y軸時(shí),我們可以看成有一個(gè)xz軸的平面在旋轉(zhuǎn),如圖,x軸旋轉(zhuǎn)到其左上方的紅軸,變成(cos α,0,-sin a),z變成了(sin α,0, cos α)

繞z旋轉(zhuǎn)同理,就不畫了。
3.羅德里格旋轉(zhuǎn)公式(Rodrigues' rotation formula)
視頻很快就開始講這個(gè)公式,然后我沒有聽懂,還是自己搜索一下吧。首先是百度百科,給了這個(gè)公式的定義:
向量旋轉(zhuǎn)公式最早由法國(guó)數(shù)學(xué)家本杰明·奧倫德·羅德里格(Benjamin Olinde Rodrigues(1795–1851))導(dǎo)出,后來(lái)被應(yīng)用在很多領(lǐng)域。設(shè)v是一個(gè)三維空間向量,k是旋轉(zhuǎn)軸的單位向量,則v在右手螺旋定則意義下繞旋轉(zhuǎn)軸k旋轉(zhuǎn)角度θ得到的向量可以由三個(gè)不共面的向量v, k和k×v構(gòu)成的標(biāo)架表示:
image.png
然后B站視頻有個(gè)公式推導(dǎo),有了前面的線代基礎(chǔ),可以直接看P2:https://www.bilibili.com/video/BV1yW41177Y8?p=2

視頻首先講了繞Z軸的旋轉(zhuǎn),此時(shí)定義k向量與Z軸平行,V向量與X軸平行,然后旋轉(zhuǎn)了θ,跑到了v rot位置。如圖的公式很容易理解,后半部分的kv點(diǎn)乘其實(shí)就是右手法則(四根手指指向K之后向V彎曲,拇指的方向正是Y)下的Y坐標(biāo)軸,再乘以sina θ,就是旋轉(zhuǎn)后的向量在Y軸的投影即Y坐標(biāo)值。


這里作者的思路就是,先把v分解成向上的向量和向左的向量。向左的向量經(jīng)過(guò)旋轉(zhuǎn)后,再加上向上的向量,就會(huì)組合成目標(biāo)向量v rot。

這里上圖打問(wèn)號(hào)的部分,應(yīng)該是作者搞錯(cuò)了。其實(shí)垂直分量的投影很容易理解,用v去點(diǎn)乘k,得到的是一個(gè)標(biāo)量,即在k方向的投影向量的長(zhǎng)度,為了表示這個(gè)投影向量,還需要指明它的方向,再乘以一個(gè)k單位向量即可:

然后就是求v垂直分量,這里用了向量的加法,等號(hào)兩邊換一下,就是v-v垂直分量。
然后就是用上面那個(gè)公式,利用v垂直分量,求出相應(yīng)的v垂直分量root。(v垂直分量root,這里不方便打出公式,用文字描述有點(diǎn)繁瑣了,就是上圖中最后一行的寫法……)
現(xiàn)在把上述結(jié)果合并后,提取公因式化簡(jiǎn)即可得到:


然后就是證明如上圖中方框內(nèi)的兩個(gè)東西是相等的,根據(jù)右手定則能看出方向是一致的。而大小呢,截圖中漏寫的,已經(jīng)在紅圈處補(bǔ)出來(lái),它的值正是上面式子中的|v| sin<k,v>。
在P3中,作者推導(dǎo)了矩陣表示,即vrot = R v,那個(gè)矩陣R是什么?這里沒細(xì)看,直接放結(jié)論了:

