视图矩阵推导

线性代数知识背景

1.基本概念

α 1,α 2,...,α n 是 n 维空间 R n 中的线性无关 的向量组,则任一向量 βR n 均可由 α 1,α 2,...,α n 线性表示,即 β = k1*α 1 + k2*α 2 + ... + kn*α n,,称有序向量组 α 1,α 2,...,α n是 R n 的一个 ,基向量的个数 n 称为向量空间的维数 ,而 [k1,k2,...,kn] 称为向量 β 在基α 1,α 2,...,α n下的坐标 ,或称为 β 的坐标行(列)向量。

2.基变换、坐标变化

定理1:α 1,α 2,...,α n 和 β 1,β 2,...,β n 是R n中的两个基,且有关系 [α 1,α 2,...,α n] = [β 1,β 2,...,β n] * C ,则称此式为由基β 1,β 2,...,β n 到基 α 1,α 2,...,α n 的基变换公式 ,矩阵C 称为由基 β 1,β 2,...,β n 到基 α 1,α 2,...,α n 的过渡矩阵C 的第 i 列是α i 在基 β 1,β 2,...,β n 下的坐标列向量,且过渡矩阵 C可逆矩阵

定理2 γ 在基 α 1,α 2,...,α n 和 β 1,β 2,...,β n 下的坐标分别是y =[y1,y2,...,yn],x =[x1,x2,...xn],即 γ = [α 1,α 2,...,α n]*y = [β 1,β 2,...,β n]*x 若基 β 1,β 2,...,β3 到基α 1,α 2,...,α n 过渡矩阵为 C ,即 [α 1,α 2,...,α n] = [β 1,β 2,...,β n] * C ,则γ = [α 1,α 2,...,α n]*y = [β 1,β 2,...,β n]*x = [β 1,β 2,...,β n]*C *y ,得x = C *y ,此式称为坐标变换公式 。(过渡矩阵C可通过基所构成的逆矩阵求得)

空间中对边向量相等的四边形是平行四边形

视图矩阵推导

已知α 1,α 2,α 3为世界坐标系的基,β 1,β 2,β 3作为相机坐标系的基,且基α 1,α 2,...,α n 到基 β 1,β 2,...,β n 的过渡矩阵为M ;在世界坐标系中有点P(x,y,z)、向量α(x,y,z),求P点在相机坐标系中的坐标。

世界坐标系中,可将α 看作过起点o1 (0,0,0)和终点P 的向量,由定理2可得,在相机坐标系中向量α 可表示 β= α*M ;相机坐标系中将β 看作过起点o2 (0,0,0)和终点P1 (坐标同 β 坐标) 的向量;α、β表示三维空间中的同一向量,故四边形 o1,o2,P1,P为平行四边形,则向量(o1,o2)与向量(P,P1)为三维空间中的同一向量;在相机空间中,点o1,o2,P1坐标已知,所以点P在相机空间的坐标易得。

个人理解,不当之处,请各位大佬指出~~~

相关推荐
sweetheart7-71 小时前
LeetCode54. 螺旋矩阵(2024秋季每日一题 21)
线性代数·矩阵·力扣·数组·每日一题
奈斯。zs2 小时前
yjs08——矩阵、数组的运算
人工智能·python·线性代数·矩阵·numpy
q5673152314 小时前
如何在Django中创建新的模型实例
数据库·python·线性代数·django·sqlite
jianglq17 小时前
C++高性能线性代数库Armadillo入门
c++·线性代数
痛&快乐着1 天前
线性代数之QR分解和SVD分解
线性代数
sz66cm2 天前
数学基础 -- 线性代数之奇异值
人工智能·线性代数·机器学习
985小水博一枚呀3 天前
【混淆矩阵】Confusion Matrix!定量评价的基础!如何计算全面、准确的定量指标去衡量模型分类的好坏??
人工智能·python·深度学习·线性代数·矩阵·分类·cnn
tangfuling19913 天前
Games101笔记-线性代数(一)
笔记·线性代数
aimmon3 天前
深度学习之微积分预备知识点
人工智能·深度学习·线性代数·微积分
南斯拉夫的铁托3 天前
线性代数(宋浩版)(4)
经验分享·笔记·线性代数