Lecture 2 线性代数基础

本文介绍了图形学中线性代数的基础概念,包括向量的定义、单位向量、向量的加法和乘法(点乘和叉乘),以及矩阵的乘法、转置和逆矩阵。点乘用于计算向量间夹角、投影和方向判断,叉乘则用于创建垂直向量和判断左右方向。矩阵在图形学中的作用体现在变换,如平移、旋转和缩放。
摘要由CSDN通过智能技术生成

图形学依赖关系

  • 基础数学

线性代数,微积分,统计学

  • 基础物理

光学、力学

  • 其他

信号处理,数值分析

  • 美学

线性代数

向量

      (点乘,叉乘,…)

矩阵

      (矩阵*矩阵,矩阵*向量, …).

向量→

  • 通常写成a(上面一个箭头→)或粗体a
  • 起点和终点AB (上面一个箭头→)= B - A
  • 方向和长度
  • 无绝对起始位置

向量的大小(长度)称之为向量的模 ,||a||(a上面一个箭头→)

单位向量

  • 一个大小为1的向量
  • 求向量的单位向量:aˆ = a/||a|| (向量本身除以他的长度,得到和原始向量同方向,并且长度为1的向量,即他的单位向量)
  • 用来表示方向(在图形学中可以用单位向量只表示方向)

向量加法

 平行四边形法则和三角形法则;代数上,直接坐标相加。

笛卡尔坐标系:(认为向量永远从(0,0)开始,一段为一个单位向量,一个向量由几个X加几个Y来表示)

A写作A=(x,y)表示有多少个X,多少个Y

一个向量缺省的设置是列向量(默认为列向量) T表示转置,转置为横向量 (transpose转置)。

表示为直角坐标系下的代数形式,有助于计算向量的长度

向量乘法

向量的点乘

向量点乘得到的是一个数(标量)

点乘满足的运算法则:

交换律、结合律、分配律

笛卡尔坐标系中的点乘运算:对应的元素相乘,然后相加

图形学中的点乘

1.求两个向量之间的夹角(如光源与表面夹角余弦值).

2.求一个向量在另一个向量上的投影

投影的点乘:b向量投影到a向量上,那么b向量的方向一定是沿着a向量的

b_perp(perpendicular):b向量在a向量上的投影

b_perp可以表示为a向量的单位向量a_hat乘以一个长度k

求长度k:b向量的模乘以a向量和b向量的夹角的余弦

把一个向量分解成两个向量:沿着a向量和垂直于a向量;

 

点乘可以:a.计算连个向量(方向)是否接近或者远离,测量两个方向的距离(1,-1) :如果向量a与向量b比较接近,点乘的值接近1;逐渐远离到垂直位置,点乘的值逐渐接近0;再远离,点乘的值逐渐接近-1.

b.决定向前/向后:向量b的终点落在上半圆(虚线上方),表示向量b与向量a处于相同方向(向前),向量c的终点落在下半圆(虚线下方),表示向量c与向量a方向相反(向后)

判定:

点乘的值>0 终点在虚线上方(方向一致) ;

点乘的值<0 终点在虚线下方(方向相反) ;

点乘的值=0 终点刚好落在虚线上(方向垂直) ;

向量的叉乘

两个向量叉乘的结果跟原本的两个向量都要垂直,即叉乘的结果垂直于原本两个向量所在的平面。

方向由右手定则确定:右手除姆指外的四指合并,姆指与其他四指垂直,四指由A向量的方向握向B向量的方向,这时姆指的指向就是A,B向量向量积的方向。就是说,AB向量积的方向垂直于AB向量确定的平面

向量的叉乘可以构建一个三维空间下的坐标系:

在三维空间下,给定了两个轴:x轴和y轴,通过x轴叉乘y轴的方式可以计算出z轴。

如果一个三维坐标系,通过x轴和y轴叉乘得到+z,则可以称为右手坐标系,得到-Z,称为左手坐标系。

  • 向量的叉乘并不满足交换律,交换后需要添加一个负号(-)
  • 一个向量叉乘他自己得到一个长度为0的向量
  • 分配律和结合律仍然适用

 向量的叉乘可以表示为矩阵形式,上图把向量a,写成了对应的矩阵A

图形学中叉乘的作用:

  • 判定左/右
  • 判定内部/外部

 

左边是一个xy平面,判定b向量在a向量的左侧还是右侧?

        用a向量去叉乘b向量,得到的结果是正的,说明b向量在a向量的左侧,反之在右侧

右图中,ABC三个点逆时针排布,判定点p在三角形内部还是外部?

        AB向量 叉乘 AP向量,得到P点在AB的左侧;

        BC向量 叉乘 BP向量,得到P点在BC的左侧;

        CA向量 叉乘 CP向量,得到P点在CA的左侧;

        说明这个P点在三角形内部,否则P点一定在某一条边的右侧。

若ABC三个点顺时针排布,则P点一定始终在三条边的右侧;所以,只要P点始终保持在三条边左侧,或者始终保持在三条边右侧,则点P一定在三角形内部,否则在三角形外部。

注:三角形光栅化,判断三角形覆盖了哪些像素,需要知道像素是否在三角形内部,然后进行着色,(若刚好等于0向量,则可以算在外部,也可以算在内部)。

正交基 / 坐标系

对于表示点,位置,位置很重要

通常有很多套坐标系

关键是这些坐标系之间的转换

右手坐标系:u向量、v向量、w向量(3个单位向量) 互相垂直(点乘的结果为0)

三个方向上投影的向量加起来就得到初始的向量

矩阵

在图形学中,广泛用于表示平移,旋转,剪切,缩放变换。

什么是矩阵?数组(m x n = m行,n列)

矩阵与矩阵的乘法:

(M x N) (N x P) = (M x P) 第一个矩阵的列数必须等于第二个矩阵的行数 (N必须相等)

乘积中的元素(i, j)为A的第i行和B的第j列的点乘

a.矩阵的乘积不满足任何交换律。AB和BA通常情况下都不会相等

b.满足结合律和分配律

  • (AB)C=A(BC)
  •    A(B+C) = AB + AC
  • (A+B)C = AC + BC

矩阵和向量的乘法

始终保持矩阵在左边,向量在右边,将向量始终认为是一个列向量,m x 1的矩阵,矩阵为 (?) x m就可以进行矩阵和向量的乘法。

旋转矩阵

矩阵的转置操作(行和列互换)

两个矩阵AB乘积的转置等于B矩阵的转置乘以A矩阵的转置(需要倒过来分别做转置再相乘)

单位矩阵与矩阵的逆

只有对角线上有非0的元素称之为单位矩阵(左上---右下)

矩阵的逆:如果一个矩阵和另一个矩阵相乘,不管顺序,得到的结果都是一个单位矩阵(I),那么称这两个矩阵互逆

两个矩阵AB乘积的逆,等于B矩阵的逆乘以A矩阵的逆(需要倒过来分别逆再相乘)

矩阵形式的向量乘法

其中A* 是指dual matrix(对偶矩阵)是由a向量转化成的矩阵。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值