计算机图形学 期末总复习

1. 数学基础

1.1. 拟合

完备函数空间

image-20200819201319282

万能逼近定理:多项式函数空间是稠密的

上的任意连续函数,及任意给定的,必存在次代数多项式,使得

最小二乘拟合

径向基函数

Lagrange插值函数

插值个点、次数不超过的多项式是存在而且是唯一的——(个变量,个方程)

插值函数的自由度 = 未知量个数 - 已知量个数

避免过拟合的常用方法

岭回归正则项

稀疏学习:稀疏正则化

压缩感知

image-20200819210727092

1.2. 高阶PDE插值/拟合

1.2.1. 偏微分方程基础

PDE

二阶线性PDE

image-20200819212757789

泊松方程

边界条件

image-20200819212939499

离散泊松方程

image-20200819213111911

离散线性系统形式:

image-20200819213257119

解方程算法:

变分插值

利用欧拉方程:

可得

1.3. 离散微分几何

1.3.1. 曲线

image-20200820153412513

在曲线的

image-20200820153449564

曲线处的切线

image-20200820153517548

曲线处的法向量和副法向量

image-20200820153647461

曲线处的曲率和曲率半径

image-20200820153825213

曲线处的曲率是沿的分量

image-20200820153953659

曲线曲率的计算

对于参数方程曲线

切向量

单位切向量

曲率

1.3.2. 曲面

image-20200820155017438

曲面上处的一点

image-20200820155057149

方向上的切向量

image-20200820155138042

方向上的切向量

image-20200820155203323

切平面

image-20200820155225042

曲面第一基本形式

法向量

image-20200820160327708

法截面

image-20200820160449629

曲率

image-20200820160728399

曲率半径

image-20200820160808444

曲面第二基本形式

张量计算

取曲面的切平面

image-20200820161317955

构造正交基

image-20200820162049612

第一基本形式

表示点

image-20200820162506319

曲率

image-20200820164004308

是关于方向的函数

的特征分析

image-20200820164650368

特征值:

特征向量:

的特征分解

image-20200820165156343

Weingarten Operator

其中,

否则选择正交向量

Bending Energy

1.3.3. 曲面逼近

连续二次型逼近

二次型逼近函数:

最小二乘拟合:

写成矩阵形式:

最小二乘解:

该二次型曲面下的曲率为以下方程的实根:

离散逼近

平均曲率:

image-20200820181024794

image-20200820181035149

高斯曲率

image-20200820181100233

1.3. 变换

1.3.1. 变换基础

不同的坐标系

变换:左乘规则

变换合成问题举例

image-20200823192244105

  1. 是世界坐标
  2. 的初始标架是,绕做了旋转,平移
  3. 的初始标架是,绕做了旋转,平移
  4. 的初始标架是,绕做了旋转,平移

问:相对的坐标是多少?

答:

的标架为(世界坐标架)

设变换矩阵,或

作变换:

1.3.2. 几何

坐标系

image-20200823194943330

基本几何要素

标量

向量

线性空间

仿射空间

直线

image-20200823201855744

具有以下形式的所有点:

射线和线段

两点的线性插值

凸体

image-20200824003411986

仿射凸组合

凸包

曲线与曲面

平面

三角形

image-20200824004126726

向量的内外积

法向量

1.3.3. 表示

线性空间

维数

坐标系

标架

image-20200824091336997

在标架中的表示

统一的表示:

从而得到维齐次坐标表示

齐次坐标

变换坐标系

改变标架

表示的变换

世界标架与摄像机标架

摄像机的移动

image-20200824100031484

1.3.4. 变换

一般变换

所谓变换就是把点映射到其他点,把向量映射到其他向量

image-20200824100120780

连续变换

仿射变换

变换的应用

流水线实现

image-20200824100456202

记号

平移

二维旋转

考虑绕原点旋转

image-20200824101930628

image-20200824102928916

三维旋转

image-20200824102943994

放缩

沿每个坐标轴伸展或收缩(原点为不动点)

image-20200824103010103

其中,

放缩因子:

image-20200824103250649

反射:

逆变换

虽然可以直接计算变换矩阵的逆,当根据几何意义可以给出各种变换的逆

变换的复合

绕原点的一般旋转

image-20200824105847458

绕过原点任一轴旋转角可以分解为绕轴旋转的复合:

称为Euler角。注意旋转顺序不可交换,可以用不同的旋转顺序,不同的旋转角度得到同样的效果

绕不同于原点的固定点旋转

image-20200824110318742

错切

image-20200824110404938

错切矩阵

四元数

1.3.5. OpenGL中的变换

OpenGL中的矩阵

当前变换矩阵(CTM)

image-20200824140534781

CTM运算

在OpenGL中的CTM

image-20200824143214700

1.4. 三维视图

1.4.1 经典视图

简介

平面几何投影

image-20200824144800416

基准面

透视投影

image-20200824153203200

正交投影

image-20200824153259465

多视点正交投影

image-20200824153405473

轴测投影

倾斜投影

透视投影

1.4.2. 计算机视图

简介

合成照相机

OpenGL中的照相机

image-20200824165610193

缺省投影

image-20200824165835556

定义可见的对象

移动照相机标架

照相机参数

飞机操纵模拟

image-20200824193238634

星空观察

投影与规范化

简单透视

image-20200824193938184

透视除法

透视变换

投影流水线

image-20200824201024932

视角

image-20200824201046987

视景体

image-20200824201147955

OpenGL的正交视图

image-20200824201255056

OpenGL的透视

image-20200824201314952

视野的应用

image-20200824201426721

1.4.3. 投影矩阵

流水线

image-20200824201513962

正交规范化

规范化求出把指定裁剪体转化为默认裁剪体的变换

image-20200824201912950

正交规范化矩阵:

  1. 把中心移到原点,对应的变换为

  2. 进行放缩从而使视景体的边长为2

最后的投影

倾斜投影

简单透视

image-20200824204504214

规范变换

image-20200824204120656

OpenGL的透视

2. 图形学基础

2.1. 光栅化

2.1.1. 基本模型

像素构成的矩阵:连续空间的离散采样

2.1.2. 线段的光栅化

DDA算法(数字微分分析法)

直线满足微分方程

沿扫描线

image-20200819160148693

Bresenham算法

image-20200819160344609

image-20200819160356592

增量形式:

2.1.3. 多边形区域的光栅化

内外检测:奇偶检测法

从一点引射线,如果与多边形边界交点数为偶数,则在多边形外,否则在多边形内部

image-20200819200204692

扫描线转化算法

通过维持一个特别的数据结构(结构中保存扫描线与多边形的交点)进行填充

image-20200819200440533

数据结构:

image-20200819200456101

2.1.4. 圆的光栅化

中点法:Bresenham算法

image-20200819200631436

正负判定法

image-20200819200648367

2.1.5. 参数曲线的离散:采样

image-20200819200834922

2.1.6. 反走样

锯齿现象

image-20200819200918886

走样现象的缓解

image-20200819200947548

3. 几何

3.1. 重心坐标

概述

对给定点集合

重心坐标表示为:

其中,对所有

各种重心坐标的计算方法

image-20200819211932975

3.2. 三角剖分

3.2.1. 2D Delaunay Triangulation

image-20200820095034819

image-20200820095044467

Properties

  1. Empty sphere property: no points inside the circum-sphere of any simplex

image-20200820095223444

  1. DT maximizes the smallest angle

    image-20200820095247793

  2. Convex hull: union of all triangles

    image-20200820095319235

  3. DT maximizes the arithmetic mean of the radius of inscribed circles of the triangles.

    DT minimizes roughness (the Dirichlet energy of any piecewise-linear scalar function)

    DT minimizes the maximum containing radius (the radius of the smallest sphere containing the simplex)

  4. The DT in d-dimensional spaces is the projection of the points of convex hull onto a (d+1)-dimensional paraboloid.

    image-20200820095424027

  5. DT minimizes the spectrum of the geometric Laplacian (spectral characterization)

3.2.2. Simple Method: Edge Swapping/Flipping

3.2.3. Algorithms for Voronoi Diagrams

3.2.4. Centroidal Voronoi Tessellation

Definition: The VT is a centroidal Voronoi tessellation (CVT) , if each seed coincides with the centroid of its Voronoi cell

image-20200820095908725

CVT energy function

The Gradient of CVT Energy

The gradient of

其中,

Lloyd Algorithm

image-20200820100007484

3.4.5. Optimal Delaunay Triangulation

ODT energy function

Compare ODT and CVT

image-20200820100651137

3.3. 网格基础

3.3.1. 图数据结构

image-20200820102057639

image-20200820102116180

image-20200820102128537

image-20200820102143398

3.3.2. 欧拉公式

对于简单多面体

V:顶点数,F:面数,E:边数

如果多面体不是简单的,在面上有H个洞,通过多面体的洞有个,那么

image-20200820101659327

3.3.3. 网格数据结构

image-20200820102237611

Topology

image-20200820102411112

Orientability

image-20200820104048211

Developablility

image-20200820104120460

OBJ文件格式

image-20200820102337794

定义网格

3.3.4. List of Faces

image-20200820105757042

Pros

Cons

3.3.5. Adjacency Matrix

Definition

Example

image-20200820110112139

Pros

Cons

3.3.6. Doubly-Connected Edge List (DCEL)

image-20200820110353393

image-20200820110401715

Example

image-20200820110415347

image-20200820110435715

Pros

Cons

3.3.7. Corner Table

image-20200820110538192

Example

image-20200820110557940

Pros

Cons

3.4. 微分坐标(Laplacian 坐标)

3.4.1. Detail

image-20200820111243473

3.4.2. 微分坐标

image-20200820111407972

权重的选择:

3.4.3. Laplacian矩阵

用矩阵形式表示微分坐标

image-20200820111842851

其中,

image-20200820111854117

对三个分量有

image-20200820114027143

重建:

解稀疏线性方程组

image-20200820114115861

若Laplacian矩阵非方阵,则

求解最小二乘解

从变分角度看

Laplacian近似

Gradient近似

3.4.4. 极小曲面

定义:平均曲率处处为0的曲面

image-20200820114753285

3.5. 曲面参数化

3.5.1. Tutte’s Method

If G=<V,E> is a 3-connected planar graph (triangular mesh) then any barycentric embedding provides a valid parameterization

image-20200820152822579

如果边界位于凸多边形上,则三角形一定不会发生翻转

3.5.2. Floater参数化方法

3.5.3. 自由边界的平面参数化方法

image-20200820153005303

3.5.4. 参数化的数学本质:映射

image-20200820153054288

不同的参数化定义域:

image-20200820153113548

求解映射的方法:

3.6. 数字几何处理

3.6.1. 表面重建

问题描述

希望拥有的特性

主要方法

3.6.2. 网格光滑化

Laplacian Smoothing

image-20200820181920572

image-20200820182150259

Discrete Mean Curvature Flow Filtering

image-20200820182249285

image-20200820182306745

image-20200820182440096

3.6.3. 网格简化

image-20200820182512871

简化策略:删除不重要的顶点/边/面

image-20200820182534677

3.6.4. 表面编辑

Free-form Deformation (FFD)

Detail-Preserving Editing

  1. Laplacian Editing

    • Local detail representation – enables detail preservation through various modeling tasks
    • Representation with sparse matrices
    • Efficient linear surface reconstruction
  2. Poisson Mesh Editing

    • The representation: the gradients of the functions X, Y, Z on each triangle of the mesh
    • Deformation: propagate the transformation of the handle onto the ROI using geodesic distances

    image-20200820193227755

  3. Linear Rotation-invariant Coordinates

    • Keep a local frame at each vertex

    • Prescribe changes to some selected frames

      image-20200820193408767

      • Encode the differences between adjacent frames
      • Solve for the new frames in least-squares sense
    • Reconstruction

      • After having the frames, solve for positions

3.6.5. Mesh Morphing

Given two objects produce sequence of intermediate objects that gradually evolve from one object to the other

image-20200820195247052

Terminologies:

子问题:

3.7. 多视角几何

image-20200824210801255

摄像机模型中,目标点坐标为

齐次坐标:

几何关系如下:

image-20200824211147122

世界坐标和摄像头坐标的转换:

image-20200824211217340

原式可表示为

其中,为相机参数(相机投影矩阵),称为固有参数(内参Intrinsic),称为外部参数(外参Extrinsic)

3.8. 几何建模

3.8.1. 3D重建:已存在的物体

静态物体的3D重建

  1. 视觉方法(Stereo Vision)

    • Shape from X

      • Shape from shading, shape from silhouette, …

      image-20200824212407103

    • Multi-view stereo/geometry (MVS)

      • 双目扫描、结构光扫描

      image-20200824212704091

    • Structure from motion (SfM)

      SfM vs. SLAM

      image-20200824212737012

      SLAM的主要流程:

      image-20200824212754712

  2. 激光测点(三角几何)方法

    image-20200824212817386

  3. 基于深度相机的3D重建

动态物体的3D重建

人体动态重建:离线算法、在线算法

image-20200824212912816

3D动态重建的困难性:

基本流程:

image-20200824213036228

3.8.2. 3D设计:不存在的物体

  1. 人工建模:使用3D建模软件
  2. 基于草图交互的3D设计
  3. 基于子部件组装的3D建模
  4. 基于知识的草图交互建模

3.8.3. 3D形状的分析和理解

image-20200824213301429

核心问题:形状表征(描述子、特征)

image-20200824213351259

三维数据的信息

各种人工定义的3D形状特征

image-20200824213638942

三维数据深度学习的三种方法

image-20200824213430256

4. 仿真

4.1. 弹簧-质点模型

4.1.1. 单质点

image-20200820200536950

4.1.2. 质点系统(多质点)

4.1.3. 弹簧-质点

4.1.4. 弹簧质点系统的能量法

欧拉隐式方法:

原问题可转化为求解方程:

其中,

对于保守力可以写为,这里为势能

上述方程可以描述为以下优化问题的解:

如果用Newton-Raphson方法求解即为通常的欧拉隐式方法

数值解法:

4.1.5. 弹簧质点系统的加速方法

胡克定律:

能量极小化求解:

对每根弹簧:

加入辅助变量:,满足

image-20200820204132729

胡克定律改写为:

时,上述优化问题取得等号

弹性势能:

时间积分:

其中,

优化:

4.1.6. 一般线性系统

4.2. 刚体运动仿真

将弹簧质点系统中的弹力替换为质点间的约束

image-20200820213040569

6个自由度:位移,朝向

4.3. 弹性体仿真

4.3.1. 材料的力学特性

image-20200820222548670

应力

image-20200820223746988

应力张量

image-20200820223841040

平衡方程

image-20200820224433193

本构方程

image-20200820224739280

塑性材料

image-20200820224809620

变形梯度:

4.3.2. 有限元方法

空间离散:有限单元

image-20200820225015074

变形的分类

image-20200820225214105

通过分析物体任意两点之间距离的变化分析形变

image-20200820225322290

为参考构型中选取的坐标架

Green-Lagrange应变张量:

形变梯度,则

Cauchy应变张量:舍弃Green-Lagrange应变张量中二次项

Co-rotated:

其中,极分解

线性弹性模型

应力(广义胡克模型):

其中,为弹性张量(四阶张量),为应力,为应变

各向同性材料:

为拉梅常数,与材料有关

对杨氏模量为,泊松比为的材料:

势能:

力的计算:

超弹性模型

形变函数:

形变梯度张量:

image-20200820234418722

超弹性材料能量:

能量密度:

不同能量:

Neo-Hooken模型:

其中,为拉梅常数

对于杨氏模量为,泊松比为的材料:

离散计算

image-20200821090746381

将模型离散为四面体单元,设形变函数为分片线性函数,且在每个四面体单元上是线性的,由形变梯度定义:

在一个四面体单元(顶点)中:

总能量:,其中为四面体体积

力的计算:

欧拉隐式方法

求解的最小值

牛顿法求解方程

迭代步骤:

速度更新:

模拟的改进

4.4. 流体仿真

4.4.1. 流体的力学特性

流体

其中,为静水压力,为单位矩阵,为黏度系数,

Navier-Stokes方程

拉格朗日视角 vs 欧拉视角

image-20200821095634689

 

5. 渲染

5.1. 渲染简介

主要阶段

image-20200821100314136

基本图元

5.2. 渲染流水线的过程

image-20200821100409564

5.2.1. 几何变换逐顶点计算屏幕坐标

image-20200821100743479

成像模型:

image-20200821100605982

3D场景在虚拟相机下的投影

应用程序指定:

各种坐标系:

image-20200821100825454

顶点处理:

流水线中大部分工作是把对象在一个坐标系中表示转化为另一坐标系中的表示:

坐标的每个变换相当于一次矩阵乘法

image-20200821101000968

模型及视图变换:

image-20200821101051923

投影变换:

image-20200821101117621

裁剪:视景图裁剪(超出可视范围的几何元素需裁剪掉,不参加后面的计算)

image-20200821101214644

裁剪:窗口裁剪

image-20200821101340044

消隐:消除隐藏面

image-20200821101420024

屏幕映射变换

image-20200821101443093

光栅化

5.2.2. 像素着色逐片元计算颜色

image-20200821101945183

光照模型

局部光照模型

image-20200821102101129

三个主要部分:

漫反射:

image-20200821102539121

镜面反射:

image-20200821102831927

环境光:

光源与材质属性

着色结果

image-20200821104736098

顶点的着色

image-20200821104819648

片元的着色

由顶点处的信息插值得到

  1. Flat Shading(Shade each triangle)

    • 每个三角形中的像素的法向都一样(三角形的法向)

    • 相当于:视点在无穷远,光源在无穷远

      • 视点方向和入射方向都是常量

    image-20200821105014196

  2. Gouraud Shading(Shade each vertex)

    • 由3个顶点的颜色插值得到像素的颜色
    • OpenGL 提供的方法
  3. Phong Shading(Shader each pixel)

    • 根据每个顶点的法向,插值出三角形内部各点的法向,然后基于光照模型计算出各点的颜色

不同着色方法的比较:

image-20200821111455086

image-20200821111521614

更复杂的光照模型

说明

5.2.3.图形渲染API

常用的图形渲染API

固定(不可编程)渲染管线

image-20200821112308719

可编程渲染管线

image-20200821112352387

5.3. OpenGL

5.3.1. OpenGL简介

OpenGL的发展

image-20200821142505935

OpenGL 3.1

OpenGL ES

WebGL

OpenGL 4.1 and 4.2

5.3.2. Direct3D vs OpenGL

OpenGL

Direct 3D

5.3.3. OpenGL库

OpenGL核心库

OpenGL实用库

与窗口系统的连接

GLUT

GLFW

5.3.4. OpenGL应用程序简介

OpenGL应用程序结构

image-20200821143706633

OpenGL流水线架构

image-20200821143728900

OpenGL的函数

OpenGL的状态机模型

程序依赖

OpenGL变量命名准则

image-20200821144237582

OpenGL函数名称格式

image-20200821144331765

OpenGL程序的一般结构

image-20200821144404565

简单示例

image-20200821144503720

OpenGL中的摄像机

image-20200821144654958

变换与视图

image-20200821144739276

视窗

image-20200821144942239

OpenGL的基本几何形状

image-20200821145008290

image-20200821145028516

定义多边形的限制条件

image-20200821145113470

属性

RGB颜色

颜色的光滑化过渡:

Z缓冲隐藏面消除

5.4. 明暗(着色)处理

5.4.1. 基本算法

多边形网格模型

image-20200821150322815

隐藏面消除

image-20200821150355006

光滑明暗处理

image-20200821150428651

在计算了每个顶点处的亮度后,应用线性插值计算出内部的亮度——称为Gouraud明暗处理算法

镜面光

image-20200821150509048

阴影

image-20200821150525186

纹理映射

image-20200821150542278

5.4.2. 光源

image-20200821150714747

光源的描述

点光源

image-20200821151016648

聚光灯

image-20200821151439890

无穷远光源

image-20200821151817119

环境光

5.4.3. 对象表面

镜面

image-20200821152117757

理想反射:

image-20200821152421014

镜面光模型:

漫反射面

image-20200821152143580

Lambertian曲面:

image-20200821152654657

漫反射光强:

透明面

image-20200821152219797

折射光:

image-20200821153249403

分别表示两种物质的折射系数

,则

5.4.4. OpenGL中的明暗处理

在OpenGL中应用明暗处理的步骤

5.5. 纹理映射

5.5.1. 映射简介

三种映射方法

image-20200821161241193

映射技术是在输出流水线的最后阶段实现的

纹理映射框架

image-20200821161330675

映射函数

image-20200821161403926

逆映射

image-20200821161528136

5.5.2. 构建映射的方法

映射的确定

考虑由参数方程定义的曲面

此时通常采用如下形式从纹理元素对应到曲面上的点

只要,上述映射是可逆的

image-20200821161758628

圆柱映射

假设纹理坐标在单位正方形内变化,圆柱高,半径

那么圆柱的参数方程为

从纹理坐标到圆柱面上没有变形

适合于构造与无底的圆柱面拓朴同构的曲面上的纹理

球映射

球的参数方程

可用在环境映射中

立方体映射

image-20200821162302825

两步映射

image-20200821162438844

5.5.3. MipMap

image-20200821162511448

原因:采样不足

image-20200821162536152

图像金字塔

image-20200821162549369

MipMap存储

image-20200821162605180

MipMap层次计算:

image-20200821162635909

5.5.4. OpenGL中的纹理映射

应用纹理映射的三个步骤

应用纹理框架

多重纹理

image-20200821165203825

5.5.5. 环境映射

基本想法

两步策略

  1. 假设场景中没有表面镜子的多边形,照相机放在镜子的中心,指向镜子的法向

    • 如此得到环境的图像
    • 这个图像并不是完全正确的
  2. 把上述图像贴到镜子多边形上

存在的问题

经典解决方法

image-20200821182739216

球面映射

Cube Map

image-20200821183037060

image-20200821183100853

从中间曲面的映射

image-20200821183159205

把六个图像组合成一个环境映射,然后如图构造映射

5.5.6. 凹凸映射

基本想法

image-20200821183316470

法向

image-20200821183346916

法向扰动方法

计算方法

斜面效应

image-20200821184155533

5.5.7. 法向映射

image-20200821184336574

5.5.8. 偏置映射

image-20200821184408854

5.5.9. 阴影映射

image-20200821184459801

阶段1:从光源渲染

生成深度图

image-20200821184524923

image-20200821184537370

阶段2:从摄像头渲染

image-20200821184605619

比较:

image-20200821184628582

5.6. 着色器编程

5.6.1. 概述

渲染管线

固定管线 vs 可编程管线

固定流水线 vs 可编程流水线

顶点着色器的应用

片元着色器的应用

image-20200821185322453

5.6.2. GLSL着色语言

简介

顶点着色器 vs 片元着色器

顶点(片元)着色器是每个顶点(片元)都需要(并行)运行一遍的程序

image-20200821220155669

可编程渲染管线的工作流程

  1. 进行准备工作
  2. 编写顶点着色与片元着色代码,生成可执行的GPU程序
  3. 向GPU程序中传输数据
  4. 运行你的程序,绘制图像

image-20200821220247252

5.6. 真实感渲染简介

5.6.1. 局部光照模型

image-20200821211343170

漫反射

image-20200821211427248

光的衰减

image-20200821211445623

Lambertian漫反射

image-20200821211511167

镜面反射项

image-20200821211634436

Blinn-Phong

image-20200821211658801

漫反射项

image-20200821211712197

Blinn-Phong光照模型

image-20200821211731571

局部光照模型的不足

5.6.2. 全局光照模型

材料由双向反射分布函数BRDF(Bidirectional Reflectance Distribution Function)决定

Lambertian Material (BRDF)

光照均匀反射到每一个出射方向

image-20200821212004783

image-20200821212018842

假设入射光是常数

image-20200821212119012

其中,为反照率颜色

Glossy material (BRDF)

image-20200821212620142

image-20200821212459645

Reflective/Refractive material (BSDF)

image-20200821212612593

image-20200821212635397

5.6.3. 渲染方程

原理:光路的不断反射传播

Radiance辐射率

image-20200821212813398

 

渲染方程

image-20200821214819107

image-20200821214846448

5.6.4. 渲染方程的解

迭代:

image-20200821215051441

5.7. 光线跟踪算法

5.7.1. 反向跟踪

Ray Casting

基本原理:

递归光线跟踪

image-20200821215422899

image-20200821215442558

image-20200821215526739

递归终止条件

算法框架

计算效率

加速策略

image-20200821215747410

Spatial vs Object Partitions

image-20200821215916258

5.7.2. 路径追踪 Path Tracing

Whitted光线跟踪算法只是计算了一条反射光路,而不是整个半球面

Path Tracing基本思想

image-20200821220606572

Monte Carlo积分方法

目标:估计

思想:构造随机变量

上的任意概率密度函数,而是密度为的随机变量

流程

概率密度函数的选择

多重重要性采样MIS

为了估计

假设有个概率密度函数进行采样,则

的无偏估计只需满足:

平衡启发式权重计算:

光线追踪思想

目标:解积分

蒙特卡洛积分:

合并可得:

伪代码

image-20200823093606556

image-20200823093620936

无法收敛问题——俄罗斯赌盘(Russian Roulette RR)

image-20200823093641432

Path Tracing的优化:光源采样

image-20200823092952434

5.7.3. Advanced Path Tracing

Ray Tracing方法综述

Bidirectional path tracing (BDPT)

image-20200823095331086

image-20200823095603587

Metropolis Light Transport (MLT)

image-20200823112544406

Photon Mapping

Combine Method

image-20200823123346112

Denoise

image-20200823123446279

5.8. 辐射度渲染方法Radiosity

5.8.1. 简介

5.8.2. 渲染方程

渲染方程:

另一种形式的渲染方程:

几何项表示为:

可视性项表示为

解渲染方程:

令:

写成矩阵形式:

image-20200823130507589

5.8.3. 各种辐射度渲染方法

Radiosity

image-20200823130823004

Hierarchical Radiosity

image-20200823130842560

Instant Radiosity

image-20200823131137650

Many-light Rendering (PointGI)

image-20200823131205989

Matrix Sampling and Recovery via Sparsity Analysis

image-20200823131233910

5.8.4. 分析

5.9. 实时渲染

5.9.1. 简介

Path Tracing based Methods的问题

实时渲染

5.9.2. 实时渲染算法

Point light local shading

Point light local shading + shadow

Environment/area light local shading

image-20200823151700834

Rendering under environment lighting

image-20200823151901847

5.9.3. 渲染方程的简化

简化入射辐射度Incident Radiance

简化BRDF

加速Visibility

预计算辐射传输Precomputed Radiance Transfer (PRT)

渲染方程:

项为光线项,项为光线传输项