【線性代數】正交投影


       我們在初中就應該學過投影。那么什么是投影呢?形象點說,就是將你須要投影的東西上的每一點向你要投影的平面作垂線,垂線與平面的交點的集合就是你的投影。

注意這里我們的投影是向量的投影,幾何的投影(並不一定是垂直投影的)可見度娘百科。

相同的,我們從簡單的二維投影來開始討論。

   1、二維投影


上圖表示的是,向量b在向量a上的投影。顯然有例如以下表達式:


當中,P為投影矩陣,由P的表達式能夠看出,它具有例如以下性質:


2、三維投影

       三維投影,就是將一個向量投影到一個平面上。同上面一樣,如果是將b向量投影到平面上的p向量,則有表達式:

e是垂直與平面的向量。

因為p向量在平面上。則p向量能夠由該平面的2個線性無關向量(正如。在xy平面的不論什么向量都能夠由x軸,y軸表示)表示:


因為e垂直平面,則e向量垂直與平面中的隨意向量。則有:


將上式化簡求得x:


又由於p=Ax,Pb=p,則得到投影矩陣為:


由P的表達式能夠看出,它具有例如以下性質:


上面的投影矩陣是通式。當投影在一維情況時,A即為直線上的隨意一個向量a,投影矩陣為:


注意:一個數值的逆是它的倒數。


3、舉例說明

以下以一個實例來說明:

如上圖,如果我們要將向量b投影到水平面上。其投影為p,a1,a2為水平面的兩個線性無關向量,它們的參數分別為:


那么A=[a1 a2]即:


由上面我們求得的通式,可得投影矩陣P:


知道投影矩陣P后。我們能夠得到b在水平面上的投影p為:


顯然,p與我們圖中所看到的的結果同樣。這里我們是以三維情況進行舉例的,更高維情況。我們無法用圖像來描寫敘述,可是通式也是成立的。

三維圖的matlab程序例如以下:

clear all
clc
 
a1=[1 0 0];
a2=[0 1 0];
b=[1 1 1];
p=[1 1 0];
e=b-p;
quiver3(0,0,0,a1(1),a1(2),a1(3),1,'color','r')
hold on
quiver3(0,0,0,a2(1),a2(2),a2(3),1,'color','r')
hold on
quiver3(0,0,0,b(1),b(2),b(3),1,'color','g')
hold on
quiver3(0,0,0,p(1),p(2),p(3),1,'color','g')
hold on
quiver3(p(1),p(2),p(3),e(1),e(2),e(3),1,'color','b')

原文:http://blog.csdn.net/tengweitw/article/details/41174555

作者:nineheadedbird





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM