• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天行健 君子當自強而不息

            3D數學 ---- 矩陣的更多知識(3)

             

            正交矩陣的運算法則

            若方陣M是正交的,則當且僅當M與它轉置矩陣MT的乘積等于單位矩陣,見公式9.8:

            矩陣乘以它的逆等于單位矩陣:M M-1 = I

            所以,如果一個矩陣是正交的,那么它的轉置等于它的逆:

            這是一條非常有用的性質,因為在實際應用中經常需要計算矩陣的逆,而3D圖形計算中正交矩陣出現又是如此頻繁。比如旋轉和鏡像矩陣是正交的,如果知道矩陣是正交的,就可以完全避免計算逆矩陣了,這也將大大減少計算量。

             

            正交矩陣的幾何解釋

            正交矩陣對我們非常有用,因為很容易計算它的逆矩陣。但怎樣知道一個矩陣是否正交,以利用它的性質呢?

            很多情況下,我們可以提前知道矩陣是如何建立的,甚至了解矩陣是僅包含旋轉、鏡像呢,還是二者皆有(記住:旋轉和鏡像矩陣是正交的)。這種情況非常普遍。

            如果無法提前清楚矩陣的某些情況呢?換句話說,對于任意矩陣M,怎樣檢測它是否正交?為了做到這一點,讓我們從正交矩陣的定義開始,以3x3階矩陣為例。設M是3x3矩陣,根據定義,當且僅當 M MT = IM是正交的。它的確切含義如下:

            現在做一些解釋:

            (1)當且僅當一個向量是單位向量時,它與自身的點積結果是1。因此,僅當r1r2r3是單位向量時,第1、5、9式才能成立。

            (2)當且僅當兩個向量是互相垂直時,它們的點積為0。因此,僅當r1r2r3互相垂直時其他等式才成立。

            所以,若一個矩陣是正交的,它必須滿足下列條件:

            矩陣的每一行都是單位向量,矩陣的所有行互相垂直。

            對矩陣的列也能得到類似的條件,這使得以下結論非常清楚:如果M是正交的,則MT也是正交的。

            計算逆矩陣時,僅在預先知道矩陣是正交的情況下才能利用正交性的優點。如果預先不知道,那么檢查正交性經常是浪費時間。即使在最好的情況下,先檢查正交性以確定矩陣是否正交再進行轉置,和一開始就進行求逆運算也將耗費同樣多的時間。而如果矩陣不是正交,那么這種檢查完全是浪費時間。

            注意,有一個術語上的差別可能會導致輕微的混淆。線性代數中,如果一組向量互相垂直,這組向量就被認為是正交基(orthogonal basis)。它只要求所有向量互相垂直,并不要求所有向量都是單位向量。如果它們都是單位向量,則稱它們為標準正交基(orthogonal basis)。這里所講的正交矩陣的行或列向量都是指標準正交基向量(orthogonal basis vectors),所以由一組正交基向量構造的矩陣并不一定是正交矩陣(除非基向量是標準正交的)。

             

            矩陣正交化

            有時可能會遇到略微違反了正交性的矩陣。例如,可能從外部得到了壞數據,或者是浮點運算的累積錯誤(稱作”矩陣爬行“)。這些情況下,需要做矩陣正交化,得到一個正交矩陣,這個矩陣要盡可能地和原矩陣相同(至少希望是這樣)。

            構造一組正交基向量(矩陣的行)的標準算法是施密特正交化。它的基本思想是,對每一行,從中減去它平行于已處理過的行的部分,最后得到垂直向量。

            以3x3矩陣為例,和以前一樣,用r1r2r3代表3x3階矩陣M的行。正交向量組r1'r2'r3'的計算如公式9.9所示:

            現在r1'r2'r3'互相垂直了,它們是一組正交基。當然,它們不一定是單位向量。構造正交矩陣需要使用標準正交基,所以必須標準化這些向量。注意,如果一開始就進行標準化,而不是在第2步中做,就能避免所有除法了。

            施密特正交化是有偏差的,這取決于基向量列出的順序。一個明顯的例子是,r1總不用改變。該算法的一個改進是不在一次正交化過程中將整個矩陣完全正交化。而是選擇一個小的因子k,每次只減去投影的k倍,而不是一次將投影全部減去。改進還體現在,在最初的軸上也減去投影。這種方法避免了因為運算順序不同帶來的誤差。算法總結如下:

            該算法的每次迭代都會使這些基向量比原來的基向量更為正交化,但可能不是完全正交的,多次重復這個過程,最終將得到一組正交基。要得到完美的結果,就得選擇一個適當的因子k并迭代足夠多次(如:10次)。接著,進行標準化,最后就會得到一組正交基。


            posted on 2008-01-16 12:20 lovedday 閱讀(1347) 評論(0)  編輯 收藏 引用

            公告

            導航

            統計

            常用鏈接

            隨筆分類(178)

            3D游戲編程相關鏈接

            搜索

            最新評論

            国产亚洲精久久久久久无码77777 国产亚洲精品久久久久秋霞 | 国产福利电影一区二区三区久久久久成人精品综合 | 久久国产精品久久国产精品| 美女写真久久影院| 精品久久久久久久久免费影院| 亚洲综合精品香蕉久久网| 伊人久久综合热线大杳蕉下载| 少妇久久久久久被弄到高潮| 精品国产一区二区三区久久久狼| 91精品国产综合久久香蕉 | 久久久国产精品福利免费| 女同久久| 国产精品久久一区二区三区| 伊色综合久久之综合久久| 精品精品国产自在久久高清 | 精品国产婷婷久久久| 久久精品亚洲精品国产色婷| 亚洲Av无码国产情品久久| 69久久精品无码一区二区| 中文精品99久久国产| 国産精品久久久久久久| 久久国产高清字幕中文| 7777久久久国产精品消防器材| 久久99精品国产麻豆婷婷| 久久久国产精品福利免费| 久久精品国产精品亚洲毛片| 国产亚洲美女精品久久久2020| 久久免费国产精品| 精品国产综合区久久久久久 | 日韩十八禁一区二区久久| 国产精品美女久久久久av爽| 国产亚洲美女精品久久久久狼| 无码日韩人妻精品久久蜜桃| 久久九九精品99国产精品| 久久国产高潮流白浆免费观看| 久久精品水蜜桃av综合天堂| 久久99精品国产自在现线小黄鸭 | 久久www免费人成精品香蕉| 国产精品美女久久久久AV福利| 国产精品青草久久久久福利99| 国产女人aaa级久久久级|