matlab程序x投影但一个集合,【线性代数】正交投影

我们在初中就应该学过投影,那么什么是投影呢?形象点说,就是将你需要投影的东西上的每一点向你要投影的平面作垂线,垂线与平面的交点的集合就是你的投影。注意这里我们的投影是向量的投影,几何的投影(并不一定是垂直投影的)可见度娘百科。同样的,我们从简单的二维投影来开始讨论。

1、二维投影

442cb79dba86c3f237d1b377d5c41b99.png

上图表示的是,向量b在向量a上的投影。显然有如下表达式:

f36dcde9abad0628590bc7aba24d0b58.png

其中,P为投影矩阵,由P的表达式可以看出,它具有如下性质:

efa4be363b0f976f30b1cf30952c030c.png

2、三维投影

三维投影,就是将一个向量投影到一个平面上。同上面一样,假设是将b向量投影到平面上的p向量,则有表达式:

01be3a7471282d1df4a4c0081815ab21.png

e是垂直与平面的向量。由于p向量在平面上,则p向量可以由该平面的2个线性无关向量(正如,在xy平面的任何向量都可以由x轴,y轴表示)表示:

cb236a5827d9e40516a099a8c8a83f3b.png

由于e垂直平面,则e向量垂直与平面中的任意向量,则有:

e90cf609cd83ab34fc018ce2393b0bd3.png

将上式化简求得x:

8c0a483b4cde6973d105ffa8139561c7.png

又因为p=Ax,Pb=p,则得到投影矩阵为:

4a2120402c3c1ef01032122fa55f0bc3.png

由P的表达式可以看出,它具有如下性质:

ec8620a6506d51a06b80be6fd2d11782.png

上面的投影矩阵是通式,当投影在一维情况时,A即为直线上的任意一个向量a,投影矩阵为:

910a20c145080aab9ad0ec20851a9d0f.png

注意:一个数值的逆是它的倒数。

3、举例说明

下面以一个实例来说明:

41a6a88e462048c4145f8f58ac8a0756.png

如上图,假设我们要将向量b投影到水平面上,其投影为p,a1,a2为水平面的两个线性无关向量,它们的参数分别为:

77fc5be4805096f075cfbe08f75698c1.png

那么A=[a1 a2]即:

a7606e3021e03a93a89faebebadf66b3.png

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

afc4caed9cd209b93afdff518d42c70a.png

知道投影矩阵P后,我们可以得到b在水平面上的投影p为:

65041f3a88e322626f750f4a9a8247c1.png

显然,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

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值