在计算机图形学一中介绍了一些具体的变换矩阵,如旋转,缩放,位移等等,但这些矩阵都有特定的形式,那么如何去理解一个任意的2维或3维变换矩阵的几何意义呢,在本节中将会利用特征分解和奇异值分解得出一些直观的结论。
一 实对称矩阵特征分解特征分解其实就是在本科所学线代中求出一个矩阵的特征值与特征向量,然后利用二者进行一个相似对角化,这一节中考虑较为特殊的实对称矩阵,可以我们可以利用定义如下:
A=RSRT\large{A = RSR^T}A=RSRT
其中A是被分解的实对称矩阵,其中R是正交矩阵,S是对角矩阵,且正交矩阵由A的特征向量v1,v2(假设2维)构成,对角矩阵则是对应的特征值λ1,λ2\lambda_1,\lambda_2λ1,λ2构成,想起在 计算机图形学一中所讲的,所有的旋转矩阵都是正交矩阵,而对角矩阵又恰好是scale矩阵的形式。因此我们可以把任意一个实对称矩阵的几何意义看作 旋转 缩放 再反旋转。具体如下:
(1) RTR^TRT: 将向量v1,v2旋转至x轴和y轴
(2) SSS: 沿着x轴和y轴方向分别放大λ1,λ2\lambda_1,\lambda_2λ1,λ2倍
(3) RRR: 将x轴和y轴旋转至向量v1,v2
(如果对基础的旋转矩阵几何意义不清晰的可以参考 计算机图形学一,或者在B站搜索3blue1brown的线代视频)
如此举一个具体的实对称矩阵的例子看看:
分解之后就可很清晰看出任何一个实对称矩阵都对应3个连续的矩阵变换,更简略一点
任何一个实对称的几何意义为:在特定的一些轴向上进行放缩
要注意的是在这里仅仅讨论了实对称矩阵的几何意义,那么对于更加普遍的非对称矩阵该去怎么理解呢,其实也对应着 旋转 缩放 旋转 三步,不过要使用的就不再是特征分解而是奇异值分解了。
二 非对称矩阵奇异值分解奇异值分解的结果与特征分解十分类似,可以定义如下:(这里并不会讲解详细计算,有兴趣的读者可以参考 Fundamentals of Computer Graphics第5章,或查阅其它资料)
A=USVT\large{A = USV^T}A=USVT
其中A是被分解的矩阵,U,V是正交矩阵,S是对角矩阵,很显然,我们依然可以分三步去理解任意一个矩阵的几何意义
(1) VTV^TVT: 将向量v1,v2旋转至x轴和y轴
(2) SSS: 沿着x轴和y轴方向分别放大δ1,δ2\delta_1,\delta_2δ1,δ2倍
(3) UUU: 将x轴和y轴旋转至向量u1,u2
如此我们在看一个具体的例子分解:
虽然本文只考虑了2维情况,但是推广到3维也是非常容易的。
至此我们便明白了任何一个矩阵作用的含义其实都是旋转和缩放的结合,其实仔细思考会发现这是一个非常合理而又直观的理论,我们不用去想什么特征分解,奇异值分解,因为没有引入齐次坐标之时,变换矩阵只能表示旋转,缩放! 而也就不奇怪为什么任意的普通矩阵表示的几何意义是旋转缩放的结合了。