当前课程知识点:线性代数(2) > 第十一讲:计算机图像 > 11.5 投影和反射 > 11.5 投影和反射
下面我们来看投影和反射
设π0为平面 这个平面过原点
所以我们这个小角这儿用0
假设它的法向量为n
n的长度是1
我们取单位向量
那么π0的方程
就可以用n^T v = 0
而v可以随便变化
只要跟n垂直
这个就是
n^T v = 0里面互相垂直的
那么我们现在假设T
从R^3到R^3是一个投影变换
也就是说
将(x y z)映到
它在这个平面上的投影
那么对于这样的一个情况呢
我们写出这样一个
投影的变换矩阵
那么我们确切算一下
首先(x y z)属于
这个三维空间中的向量α
就可以分成两部分
因为我们现在
有了这样一个平面π0
还有了这样一个n
那么这个是原点
那么任何一个向量呢
空间中的向量
我们都可以把它分解到
给平面上的投影
和在n上的这个向量
叫α1 α2α
2是跟n垂直的α
1就是向量在n上的投影
那么实际上呢
我们这个变换
就是把Tα映成α2
T就把任何一个α映到了α2
我们来确切地算
通过n和α的信息来算出α2
设α1等于λn
因为α1跟n在一条直线上
所以它是n的一个倍数
那么这个倍数
我们可以通过对这个式子两边
同时左边乘上n^T
那么这个式子就变成了
n^T α1等于λ n^Tn
但是n的长度是1
所以这个就等于λ
这样推出了λ可以用
n和α1的内基来表示
那另一方面呢
因为n跟α2是垂直的
所以
我们的n^Tα等于n^Tα1
因为n^Tα2是0
我们做的目的是什么呢
我们做的目的是希望
把α2这个向量
用α和n所作出来的矩阵来刻画
那么现在这个α1呢
这个实际上我们希望把这个α1
给它换成α2来刻画
这样子我们就可以表示出
这个λ实际上是n跟α的内积
那么α2呢
就是α减去它在n上的投影
也就是说α
1就是n^Tα乘上n
那么最后呢
我们就可以把它写成一个矩阵
(I-nn^T)α这样一个形式
也就是说
我们把α变到α2呢
实际上就是等于乘了一个矩阵
I-nn^T
那么我们看到这样一个矩阵呢
它把n变成什么呢
我们来算一下
这里n-nn^Tn
那么这个是长度1
所以0
也就是说直观上
跟n平行的向量
它的投影就是原点
所以这是为0
我们来看个例子
比如说关于平面
2/3x+2/3y+1/z等于0
这个投影矩阵
那么我们就可以确切地算一下
n这时候等于(2/3 2/3 1/3)
这是我们的n
那么代入公式
算一下这个投影矩阵
最后算出来是1/9 5 -4 -2
-4 5 -2
-2 -2 8
那么下面我们来看一下
这个投影矩阵的一些性质
首先这个投影矩阵
是一个幂等对称阵
我们来验证一下
I-nn^T然后再乘上I-nn^T
我们看自己乘自己会怎么样
那么我们算一下
I-nn^T然后再减去nn^T
然后再加上nn^T nn^T
那么这一块呢
n^Tn我们知道
它的单位长度等于1
所以这一项也是nn^T
像我们最后我们得到I-nn^T
也就是说
这个矩阵它跟自己相乘以后
等于它自己
这就是幂等对称阵
那么对于这样一个矩阵
我们原来知道
它的特征值实际上有0和1
它的特征值为0的
对应的特征向量
就是我们的平面的轴n
它的特征值为0
对应的这个特征向量
就是n的倍数
我们用tn表示
还有它的特征值为1
有些向量在这样一个变换下没动
我们看到如果一个向量
在跟n垂直的平面上
也就是我们的π0上
那么它的投影呢等于没有动
所以就是任何一个向量
如果属于π0
那么用这个矩阵乘上这个向量
就没有动
也就是说
它是关于特征值1的特征向量
这时候投影在
关于一个过原点的平面上的投影
那么如果这个平面不经过原点
我们把πv0
πv0 这时候v0它不等于0
这个平面不经过原点
那么这时候我们来考虑
任何一个向量
或者空间中的点 (x y z)
在πv0上的投影
因为πv0它不经过原点
所以这样操作的过程呢
它并不是一个线性变换
这样一个投影不是个线性变换
因为它并不会把0映到0
因为0在这个平面上的投影
不会是0
这个平面不经过原点
好 那要写出这样一个矩阵形式
我们就要考虑射影形式
首先πv0的方程是n^Tv-v0等于0
这样一个形式怎么写出来的呢
比如说
这个是原点
这个是那个平面 πv0
它经过一个点 v0
那么这个平面上的任何一个向量
或者任何一个点
它的坐标怎么来呢
首先这个向量或者这个点v
跟v0的差
得到的这个向量呢
两点的差形成的向量
这个向量肯定跟
这个平面的法向量是垂直的
所以n^Tv-v0等于0
所以
这个是我们的这个平面的方程
那么我们要确切地写出
关于这个平面的投影
我们使用的办法是
先把这个平面坐标系改动一下
使得v0作为原点
然后我们看第一步
先把(x y z 1)变到
(x-x0 y-y0 z-z0 1)
那么这样一个变换过程呢
实际上就把v0这一点
变到了原点
新坐标系的原点
那么这时候变完以后
这个平面就经过了
新坐标系的原点
那么在新坐标系
这个原点经过它的平面投影
我们在刚才已经说过
所以它的投影
我们可以使用这样一个矩阵
去刻画
这时候我们得到了(u v w 1)
这个在新坐标系下的坐标
投影点的坐标
那么投影点的坐标
我们希望看到它在旧坐标系中
那么我们再把P再平移一次
再回去
就是用Tv0再回去
我们看这样一个过程
就把新坐标系这个原点
(0 0 0 1)
又变回到了(v0 1)
所以我们通过这样一个过程
就计算出了任何一个点
(x y z)
它在这个
不过原点的平面上的投影
而确切地写出来
这个投影它的方程是这样的
那么矩阵是这个
其中这个对应的是平移
中间这个对应的是投影
看个例子
考虑平面x+y+z等于1
求原点在这个平面上的投影
那么我们
这个平面的法向量是
(根号3分之1 1 1)
那么这时候我们在这个平面上
随便取一点作为v0
那么我们取成(1 0 0)
那么这时候原点
在这上面的投影呢
我们可以用刚才这个矩阵乘一遍
最后算出来
它的投影是(1/3 1 1 1)
下面我们来看反射
关于一个平面的反射
我们可以使用投影的一些知识
我们来看图
这个平面我们叫πv0
它经过了点v0
但是可能这个平面经过原点
也可能不经过原点
那么我们可以看到
A通过这个平面作为镜面
进行反射到AF
那么这个平面呢
它当连接这个A和AF的时候
它跟平面的交点就是A
在这个平面上的投影点AP
那么通过这一点我们可以看出
实际上我们已经知道投影点
Ap了以后
我们就能算出反射点
确切地 首先
投影点的坐标呢
我们通过刚才那个公式
先把v移到 v0移到原点
就是这样一个过程
然后再投影
乘上这样一个矩阵
最后再移回来
这样我们就算出了
A的投影点坐标
那么要算A的反射点坐标
那么我们看到
A AF和Ap
那么这个Ap正好是在中间的位置
另外这个O
那么OAF我们可以看到
它应该是OA+2AAp
然后我们算起来就是
I-2nn^T再乘上(x y z)
和(x0 y0 z0)之间的差
所以呢
当平面不管它过不过原点呢
我们都可以找反射点
通过这样一个公式
如果v0是原点的话
那么这两个都是单位阵
所以无论平面过不过原点
我们(x y z 1)投影和反射以后
就相当与这个矩阵乘上这个
(x y z 1)
那最后我们来说一下
就是二阶的反射阵呢
实际上
我们也可以特别进行刻画
就像我们旋转一样
我们可以确切地算出
它的一些特征向量
把它变成一个
相似到一个简单的形式
那我们来看一下
设l是二维空间一条过原点的直线
那么关于
我们刚才是关于平面的反射
现在我们在二维空间
关于这条直线做反射
这条直线作为一个镜面进行反射
我们来看一下
它的所用的矩阵
那么这时候我们的手法呢
我们可以使用刚才的手法
也可以通过求特征值的特征向量
找出它相似的一个
简单的标准形来看
比如说
如果l最简单地是我们的x轴
那么这时候这个反射呢
我们很容易可以算出来
那么任何一个点(x y)
通过x轴进行反射呢
它就变成了(x -y)
所以我们看它使用的矩阵
就等于1 -1 0 0
乘上(x y)
就等于 变换完以后
所以呢我们看到
所用的反射矩阵是这样一个形式
我们说一般的呢
如果这个轴反射的镜面
不是x轴
那么跟旋转很相似
我们可以通过调整特征向量
使用相似
把它变成这种形式
好 我们来看一下
我们现在假设l是这样一条直线
这个l跟x轴的夹角
逆时针夹角是θ角
那么我们可以看到
用这个Bcosθ -sinθ
这是个旋转矩阵
u和u是B的两个列
那么我们可以看到
u是l上的单位向量
就是u实际上是在l上
v实际上是跟l垂直的
这样两个向量
那么由这个性质我们可以看到
B乘以e1等于u
B乘以e2就等于v
也就是说u是B的第一列
v是B的第二列
那么按照我们这个反射的性质
因为这个反射呢
这个镜面它没有被动
所以Rl这个反射矩阵乘上u
应该等于u
Rl乘v呢 v跟这个直线是垂直的
所以它被反射到的-v
那么从这两点我们看到
u应该是这个反射矩阵
关于特征值1的特征向量
v是关于特征值-1的特征向量
那么由这两点
我们可以上可以作一个可逆矩阵
这个可逆矩阵就是我们这个B
也就是说Rl乘B
和Rl乘上B的第一列和第二列
得到的结果
最后我们可以写出来
B^-1 Rl B就等于1 -1
这样一个对角阵
换句话说
就是Rl跟1 -1是相似的
那么由此呢
我们可以确切地算出Rl的矩阵
把B移到右边
最后算出是cos2θ sin2θ
和-cos2θ
这个矩阵
大家注意跟旋转矩阵之间的区别
我们关于跟x轴逆时针夹角
为θ角的这样一个直线
作为镜面的反射
所用的反射矩阵
就是这样一个形式
-1.1 实对称矩阵A正定的充要条件
-1.2 典型例题
--1.2 典型例题
-1.3 半正定矩阵及其判别条件
-1.4 二次型
--1.4 二次型
-1.5* 有心二次曲线(central conic)
-1.6* 三维空间中的二次曲面-6类基本的二次曲面
-1.7 二次型的分类
-1.8 矩阵的合同
-1.9* 惯性定理的证明
-1.10 惯性定理的应用 —— 实对称矩阵的特征值与主元符号
--1.10 惯性定理的应用 —— 实对称矩阵的特征值与主元符号
-1.11* 正(负)定矩阵在函数极值问题中的应用
-第一讲:正定矩阵--课后习题
-2.1 引言
--2.1 引言
-2.2 相似矩阵的性质
-2.3 Jordan标准形
-2.4 定理的证明
-2.5 Jordan标准形的应用
-第二讲:相似矩阵--课后习题
-3.1 引言
--3.1 引言
-3.2 奇异值分解(Singular Value Decomposition)
--3.2 奇异值分解(Singular Value Decomposition)
-3.3 例题
--3.3 例题
-3.4 奇异值分解的应用
-第三讲:奇异值分解--课后习题
-4.1 线性变换的定义和性质
-4.2 线性变换的运算
-4.3 线性变换的矩阵表示
-4.4 线性变换与矩阵之间的关系
-第四讲:线性变换 I--课后习题
-5.1 恒同变换与基变换
-5.2 图像压缩——基变换的应用
-5.3 线性变换在不同基下的矩阵
-5.4 矩阵分解与基变换
-5.5 线性变换的核与像
-5.6 不变子空间
-5.7* 幂零变换
-5.8* Jordan标准形
-第五讲:线性变换 II--课后习题
-6.1 伪逆
--6.1 伪逆
-6.2 Moore – Penrose 伪逆
-6.3 最小二乘法
-第六讲:伪逆--课后习题
-7.1 简介
--7.1 简介
-7.2 弹簧模型
--7.2 弹簧模型
-7.3 变量的线性关系
-7.4 刚度矩阵
--7.4 刚度矩阵
-7.5 从离散到连续
-第七讲:工程中的矩阵--课后习题
-8.1 简介
--8.1 简介
-8.2 图和矩阵
--8.2 图和矩阵
-8.3 网络和加权Laplacian矩阵
-8.4 关联矩阵的四个基本子空间
-8.5 注记
--8.5 注记
-第八讲:图与网络--课后习题
-9.1 问题引入
--9.1 问题引入
-9.2 Markov矩阵
-9.3 正Markov矩阵
-9.4 正矩阵
-第九讲:Markov矩阵和正矩阵--课后习题
-10.1 引言
--10.1 引言
-10.2 内积空间
-10.3 傅里叶级数
-10.4 投影
--10.4 投影
-10.5 关于Fourier变换的注记
-第十讲:Fourier级数--课后习题
-11.1 引言
--11.1 引言
-11.2 平移
--11.2 平移
-11.3 伸缩
--11.3 伸缩
-11.4 旋转
--11.4 旋转
-11.5 投影和反射
-第十一讲:计算机图像--课后习题
-12.1 引言
--12.1 引言
-12.2 复矩阵
--12.2 复矩阵
-12.3 复正规阵
-12.4 离散Fourier变换
-12.5 快速Fourier变换
-第十二讲:复数与复矩阵--课后习题
-结课寄语
--结课寄语