Summary 计算机图形学
写在前面¶
这份文档是期末复习的时候,使用 Claude Code + Deepseek-V4-Pro + summarize-slides-skill 生成的总结文档,仅供参考。
计算机辅助设计与图形学 — 课程复习资料(详细版)¶
考核方式: 平时成绩 5% + 编程作业 45% + 考试 50%
课程: 2 学分(40 学时,其中上课 24 学时,实践 16 学时)
基于课程全部课件(Chap 1–9,共 1197 页幻灯片)整理
目录¶
第一章 引言¶
课程概述¶
- 课程目标:了解计算机图形学的基本问题,掌握基本概念、方法与算法;初步认识相关应用和研究热点;具备一定的三维图形编程能力。(p.2)
- 参考资料:《现代计算机图形学技术》(第二版)清华大学出版社;GAMES 在线平台。(p.3)
CG 定义与三大核心内容¶
计算机图形学 (Computer Graphics, CG) 是研究真实或虚拟世界的图形表示及人-机交互的交叉学科。(p.13)
- 建模 (Modeling):通过几何/图像/视频构造和表示物体及场景的模型。(p.14)
- 绘制 (Rendering):通过可视媒体呈现计算机建模的物体和场景。(p.15)
- 交互 (Interaction):通过I/O设备让用户操作计算机中的模型。(p.16)
CG vs CV vs 图像处理(重要考点)¶
| 领域 | 方向 | 说明 |
|---|---|---|
| CG | 模型→图像 | 正向生成 (p.17-19) |
| CV | 图像→理解 | 逆向 (p.17-19) |
| 图像处理 | 图像→图像 | 变换/增强/压缩 (p.19) |
三者的交集区域包括:基于图像的建模与渲染(IBR)、三维重建、计算摄影学等。(p.18-19)
CG 应用领域¶
- 工业设计和制造:CAD/CAE/CAM、逆向工程、3D打印 (p.6)
- VR/AR:文化遗产数字化(圆明园再现)、虚拟培训、手术模拟 (p.7)
- 科学研究:信息/数据/科学计算可视化 (p.8)
- 影视媒体:VFX、三维动画、数字替身 (p.9)
- 游戏娱乐:实时渲染、物理模拟、角色动画 (p.10)
CG 发展历史¶
1950s–1960s:萌芽期
| 年份 | 人物 | 贡献 |
|---|---|---|
| 1963 | Ivan Sutherland | Sketchpad——CG诞生标志,后获图灵奖(1988)和Coons奖。首次引入交互式图形编辑、约束求解。(p.25-26) |
| 1962 | Bézier | Bézier曲线:参数化、仿射不变性、凸包性、插值首尾控制顶点。(p.27) |
1970s:发展期
| 年份 | 人物 | 贡献 |
|---|---|---|
| 1971 | Gouraud | Gouraud着色——顶点光照后双线性插值。(p.35) |
| 1973 | Bui Tuong Phong | Phong着色和光照模型——插值法向量逐像素光照。(p.35) |
| 1974 | Utah大学 | B样条——分段多项式,局部支持性,de Boor递归。(p.32) |
| 1974 | Catmull | 纹理映射 (Texture Mapping)。(p.36) |
| 1978 | Catmull & Clark | Catmull-Clark细分曲面——任意多边形→四边形。(p.33) |
1980s–1990s:成熟期
| 年份 | 人物 | 贡献 |
|---|---|---|
| 1979/1980 | Whitted | 递归光线跟踪——第一种全局照明方法。(p.37) |
| 1985 | Cohen & Greenberg | 辐射度算法 (Radiosity)。(p.42) |
| 1987 | Lorensen & Cline | Marching Cube——体数据等值面提取。(p.40) |
| 1991 | — | NURBS 成为ISO CAD工业标准。(p.44) |
| 1995 | Pixar | 首部全电脑动画长片 《玩具总动员》。(p.12) |
| 1998 | Hertzmann | 开创非真实感绘制 (NPR) 领域。(p.46) |
深度学习时代
| 年份 | 机构 | 贡献 |
|---|---|---|
| 2020 | UC Berkeley | NeRF——MLP连续三维场景,体绘制新视角合成。(p.56) |
| 2023 | INRIA | 3DGS (3D Gaussian Splatting)——三维高斯椭球体。(p.56) |
| 2023 | Apple | Vision Pro(空间计算设备)。(p.57) |
顶级学术资源¶
- 会议:SIGGRAPH (1973,CG最高水平)、EUROGRAPHICS (1980)、IEEE VIS (p.58)
- 期刊:ACM TOG (1982)、IEEE TVCG (1995)、CGF (p.58)
第二章 基础知识¶
图形与图像¶
- 图形 (Graph):由点、线、面等基本几何元素作为"图元"(Primitive)构成。(p.3)
- 图像 (Image):由像素(Pixel)构成,需通过光栅化将图形转化为图像进行屏幕显示。(p.3-4)
图形流水线 (Graphics Pipeline)¶
三维模型 → 模型变换 → 视点变换 → 投影变换 → 光栅化 → 二维图像 (p.5-7)
几何变换¶
模型变换:局部坐标系 → 世界坐标系¶
平移 (p.11):
旋转——欧拉角 (p.12):\(R = R_x(\alpha) \cdot R_y(\beta) \cdot R_z(\gamma)\),按 X→Y→Z 顺序,顺序不可交换!
四元数 (Quaternion) (p.13):\(r = s + xi + yj + zk\),避免万向节锁(Gimbal Lock)。
缩放 \(S(s_x, s_y, s_z)\) (p.14);错切 (Shear) (p.15)
视点变换:世界坐标系 → 眼睛坐标系¶
\(M_{w2e} = M_{e2w}^{-1}\),其中 \((u, v, n)\) 为眼睛坐标系主轴方向,\(e\) 为眼睛在世界坐标系中的位置。(p.20)
投影变换¶
- 透视投影 (p.24-25):\(x_p/d = x/z\),\(y_p/d = y/z\)(近大远小)。分单点/两点/三点透视 (p.23)。
- 正视投影 (p.26-27):COP在无穷远处,平行投影线。
光栅化¶
四个子任务:(p.30)
-
画线:DDA (p.31)、Bresenham算法 (p.31)、梁友栋-Barsky算法(第一个以中国人命名的CG算法)(p.32)
-
剔除 (Culling):
- 视域剔除 (View Frustum Culling):包围盒/包围球判断 (p.34-35)
- 遮蔽筛选 (Occlusion Culling) (p.36)
- 背面剔除 (Back-face Culling):\(\mathbf{n} = (\mathbf{p}_1 - \mathbf{p}_0) \times (\mathbf{p}_2 - \mathbf{p}_0)\),CCW为可见面,约剔除50% (p.38)
-
简并剔除 (Degenerate Culling):退化三角形 (p.39)
-
填充 (Filling):边缘栅格化→跨行填充 (p.40-41)
-
可见性判断:
- 画家算法 (Painter's Algorithm):按深度排序,已过时 (p.43)
- Z-buffer算法:逐像素存储z值,保留最小——硬件友好,现代标准 (p.44)
可微绘制 (Differentiable Rendering)¶
端到端借助可微分梯度优化参数。(p.47) 核心难题:光栅化包含不可微操作。(p.50)
- OpenDR:MPI研究所。图像差分算子:边界 \([0, -1, 1]\),内部 \([-\frac{1}{2}, 0, \frac{1}{2}]\)。(p.48-50)
- Mitsuba:EPFL。迭代:初始场景→渲染→与Ground Truth对比loss→反向传播优化。(p.52-54)
GPU 架构¶
- 1999年 NVIDIA GeForce 256 首次提出GPU概念 (p.59)
- GPU:数千核心并行 vs CPU:多核心串行 (p.60-61)
- Vertex Shader→图元装配→光栅化→Fragment Shader→帧缓存 (p.64-67)
第三章 几何建模¶
三种数学表达形式(重要考点)¶
- 显式 (Explicit):y=f(x)。直观但无法表示封闭形状。(p.7)
- 隐式 (Implicit):f(x,y)=0。易判断内外,不易生成表面点。(p.8)
- 参数 (Parametric):\(\mathbf{p}(u) = [x(u), y(u), z(u)]^T\)。CG最常用。(p.9-12)
- 直线段:\(\mathbf{p}(t) = \mathbf{P}_1 + t(\mathbf{P}_2 - \mathbf{P}_1), \quad t \in [0,1]\)(高频考点!)(p.10)
三维模型三种表示¶
- 线框模型 (Wireframe):仅顶点+棱边 (p.5)
- 曲面模型 (Surface):仅外表面 (p.5)
- 实体模型 (Solid):含内部点 (p.5)
曲线几何性质¶
- 弧长 \(L = \int \|\dot{\mathbf{p}}\| \, du\) (p.13)
- 曲率 \(\kappa = \|\dot{\mathbf{p}} \times \ddot{\mathbf{p}}\| / \|\dot{\mathbf{p}}\|^3\) (p.13)
- 挠率 \(\tau = [\dot{\mathbf{p}}, \ddot{\mathbf{p}}, \dddot{\mathbf{p}}] / \|\dot{\mathbf{p}} \times \ddot{\mathbf{p}}\|^2\)(空间曲线特有,平面曲线 \(\tau = 0\))(p.14)
- 曲面法向 \(\mathbf{n} = (\frac{\partial \mathbf{p}}{\partial u} \times \frac{\partial \mathbf{p}}{\partial v}) / \|\cdot\|\) (p.15)
- 高斯曲率 \(K = \kappa_1 \cdot \kappa_2\) (p.15)
插值与拟合¶
- 插值 (Interpolation):曲线严格通过所有型值点。(p.16)
- 拟合 (Fitting):逼近但不一定通过。最小二乘。(p.16,22)
- 关键考点:过三点插值多项式不唯一——取决于参数化方式(均匀vs弦长)!(p.19)
Hermite 曲线¶
给定两端点位置和切向量。(p.23-24)
基函数:\(\alpha_0 = 2t^3 - 3t^2 + 1\),\(\alpha_1 = -2t^3 + 3t^2\),\(\beta_0 = t^3 - 2t^2 + t\),\(\beta_1 = t^3 - t^2\)
Bézier 曲线¶
Bernstein基函数 (p.27):\(B_i^n(t) = C(n,i) \cdot t^i \cdot (1-t)^{n-i}\)
de Casteljau 递归(考试重点)(p.29):
几何意义:在线段上按比例 t:(1−t) 取内分点,n层递归得到曲线上点。
性质:插值端点、端点切向 \(\mathbf{p}'(0) = n(\mathbf{c}_1 - \mathbf{c}_0)\)、凸包性(Convex Hull)、缺乏局部可控性(改一点改全曲线,最大缺陷)。(p.28,32)
Bézier曲面 (p.31):张量积 \(\mathbf{p}(t,s) = \sum_i \sum_j \mathbf{c}_{ij} \cdot B_i^m(t) \cdot B_j^n(s)\)
B样条 (B-Spline)¶
de Boor-Cox递推(核心公式)(p.36):
- \(N_i^0(t) = 1 \quad (t \in [t_i, t_{i+1}])\),否则 \(0\)
-
\[N_i^k(t) = \frac{t - t_i}{t_{i+k} - t_i} \cdot N_i^{k-1}(t) + \frac{t_{i+k+1} - t}{t_{i+k+1} - t_{i+1}} \cdot N_{i+1}^{k-1}(t)\]
- 分母为 \(0\) 时该项为 \(0\)。\(k\) 阶 = 次数 \(k-1\)
性质:保留Bezier优点、局部可控性(改一点最多影响k+1段,最大优势)、灵活拼接。(p.40)
NURBS¶
- 权重w_i:增大→拉向控制点,减小→推离。(p.44)
- 核心优势:可精确表示圆锥曲线(B样条只能近似)。(p.43-44)
- 1991年成为ISO CAD工业标准。
细分曲面 (Subdivision Surfaces)¶
| 方法 | 年份 | 连续性 | 网格类型 |
|---|---|---|---|
| Catmull-Clark | 1978 | C²(奇异点G¹) | 任意→四边形 |
| Doo-Sabin | 1978 | C¹ | 任意多边形 |
| Loop | 1987 | C²(除特殊点) | 三角形 |
| Butterfly | 1990 | C¹ | 三角形(插值型) |
三维重建¶
- 被动式:基于图像/视频,安全、成本低,但对纹理/光照敏感 (p.73-74)
- 主动式:激光/结构光/Kinect,精度高、对材质不敏感 (p.75-80)
多视角重建四步 (p.83-95):
- 摄像机标定:\(\mathbf{x} = \mathbf{P}\mathbf{X}\),\(\mathbf{P} = \mathbf{K}[\mathbf{R} \mid \mathbf{t}]\),DLT→分解→非线性优化
- 三角测量:多视图对应点→三维位置
- SfM:光束平差法 Bundle Adjustment
- 立体匹配:SSD 极线约束
KinectFusion (p.118-124):深度图转换→ICP配准→体积融合→渲染 vSLAM (p.125-130):视觉里程计→回环检测→后端优化→建图
数据结构¶
- CSG:元几何元素布尔操作(∪/∩/\),CSG树。(p.133-136)
- 边界模型 (B-rep):顶点+面列表。(p.137-144)
- 半边数据结构 (Half-edge):方向相反的半边对组成边,常量时间邻接查询。(p.140-144)
- 体素模型 (Voxel):SDF隐式表示。(p.145-146)
第四章 数字几何处理¶
几何表示¶
- 点云:p=(x,y,z,nx,ny,nz,...)。优点:简单、精致、拓扑无关;缺点:数据量大(≈10亿点)、无连接。(p.6-7)
- 多边形网格:顶点+边+面,\(C^0\) 分段线性逼近。(p.8-10)
- 欧拉-庞加莱公式 \(V - E + F = 2(1 - g)\):\(g=0\) → 球面,\(g=1\) → 环面。(p.15)
- 流形网格:局部同胚于圆盘,每边连1-2面。(p.13)
网格去噪/平滑¶
形状演化 (p.27):\(\partial P / \partial t = F(P)\),\(P_{new} = P_{old} + \Delta t \cdot F(P_{old})\)
直接拉普拉斯平滑 (p.29-31):
等价于最小化边长平方之和能量。缺点:对旋转敏感,网格可能收缩。
加权拉普拉斯平滑 (p.32-33):
- 伞型权重 \(w_k = 1\)
- 均值权重 \(w_k = [\tan(\varphi_{ij}/2) + \tan(\varphi_{ij+1}/2)] / r\)
- 余切权重 \(w_k = \cot \alpha_{ij} + \cot \beta_{ij}\)(推荐,保特征好)
全局拉普拉斯平滑 (p.34-37):求解 \(L \cdot V = 0\),\(\text{rank}(L) = n - k\),需控制点约束。
网格简化¶
- 顶点聚类:空间划分合并顶点。快但拓扑被改变。(p.42-46)
- 渐进式网格 (Progressive Mesh):边合并+点移除。质量好、拓扑保持。(p.47-51)
- QEM:Garland & Heckbert 1997。\(4 \times 4\) 二次误差矩阵,边折叠代价 \(= \mathbf{v}^T Q \mathbf{v}\)。(p.44,127)
网格参数化¶
雅可比矩阵与几何扭曲 (p.67-69): $\(\mathbf{J} = \frac{\partial \mathbf{X}}{\partial (u,v)}, \quad \mathbf{J} = \mathbf{U} \cdot [\Gamma, \gamma]^T \cdot \mathbf{V}^T\)$
- \(\gamma = \Gamma\) → 保角度 (Conformal)
- \(\gamma \cdot \Gamma = 1\) → 保面积 (Authalic)
- \(\gamma = \Gamma = 1\) → 保长度 (Isometric)(仅可展曲面)
方法对比: | 方法 | 特点 | 类型 | |------|------|------| | 弹簧模型 | \(E = \frac{1}{2}\sum\sum D_{ij}\|t_i - t_j\|^2\) | 线性 (p.72) | | ABF | \(E = \sum(\alpha_i - \beta_i)^2\),不翻转 | 非线性 (p.80-82) | | LSCM | 离散柯西-黎曼,保角度 | 线性 (p.83-85) | | ARAP | \(E = \sum A_f[(\Gamma_f - 1)^2 + (\gamma_f - 1)^2]\) | 迭代线性 (p.86) |
球面参数化:Steinitz定理。(p.93-95)
网格编辑与形变¶
- 拉普拉斯微分坐标 (p.107-108):\(\delta_i = \mathbf{v}_i - (1/d_i)\sum \mathbf{v}_j\)。方向≈法线,大小≈平均曲率。
- 拉普拉斯网格编辑 (p.109):保持微分坐标+约束顶点位置。
- 极分解插值 (p.120-121):\(\delta^t = \mathbf{R} \cdot \mathbf{S} \cdot \delta^s\),\(H_h = \mathbf{R}((1-h)\mathbf{I} + h\mathbf{S})\)。分别插值旋转和缩放。
- RIMD (p.124):\(\log \mathbf{R}_i^T \mathbf{R}_j\) 实现旋转不变特征,VAE生成形变。
第五章 真实感绘制¶
基本概念¶
- 真实感绘制:绘制的图像能像照片一样具有真实场景效果。(p.4-5)
- 光照模型 (Illumination Model):计算物体表面任一点光强度的数学模型。(p.8)
- 着色模型 (Shading Model):计算图像中每个像素光强度的数学模型。(p.8)
- 局部技术:仅考虑光源+表面性质(Phong/Gouraud),快。(p.9)
- 全局技术:模拟直接+间接照明(光线追踪/辐射度/光子映射),准确但慢。(p.10)
光源类型¶
- 环境光 (Ambient):均匀散射,避免纯黑阴影。(p.15)
- 点光源 (Point Light):各方向,反比于距离平方。(p.16)
- 聚光灯 (Spotlight):圆锥形。(p.17)
- 远光/平行光 (Directional):统一方向,模拟太阳。(p.18)
材质模型¶
五要素:反射率、透明度、吸收率、折射率、表面粗糙度。(p.20)
三种局部影响:镜面反射(Specular)、漫反射(Diffuse)、透射(Transmission)。(p.24)
Phong 光照模型(核心)¶
| 分量 | 公式 | 说明 |
|---|---|---|
| 环境光 | \(I_a = k_a \cdot L_a\) | 全局均匀光照 (p.37) |
| 漫反射(Lambert) | \(I_d = k_d \cdot (\mathbf{l} \cdot \mathbf{n}) \cdot L_d\) | \(\cos\theta = \mathbf{l} \cdot \mathbf{n}\),朗伯余弦定律 (p.38-39) |
| 镜面反射 | \(I_s \propto k_s \cdot L_s \cdot \cos^\alpha(f)\) | \(\mathbf{r} = 2(\mathbf{n} \cdot \mathbf{l})\mathbf{n} - \mathbf{l}\),\(\alpha\) 镜面指数 (p.41-42) |
Blinn-Phong 优化 (p.46-47)¶
中值矢量 \(\mathbf{h} = (\mathbf{l} + \mathbf{v}) / \|\mathbf{l} + \mathbf{v}\|\),用 \((\mathbf{n} \cdot \mathbf{h})^\beta\) 替代 \((\mathbf{v} \cdot \mathbf{r})^\alpha\)。优势:计算更快;远光+正交投影时 \(\mathbf{h}\) 为常数。
着色方法对比¶
| 方法 | 原理 | 特点 |
|---|---|---|
| Flat Shading | 面所有像素同色 | 最快最粗糙 (p.28) |
| Gouraud Shading | 顶点颜色双线性插值 | 计算少,高光可能丢失 (p.29-31) |
| Phong Shading | 法向量插值+逐像素光照 | 更准确,计算量大 (p.32-44) |
纹理映射¶
- 两步映射法:纹理→中间曲面(圆柱/球/立方体)→物体 (p.60-64)
- 环境映射:通过反射方向采样立方体六面 (p.66-68)
- 凹凸映射 (Bump Mapping):\(\mathbf{p}' = \mathbf{p} + d(u,v) \cdot \mathbf{n}\),仅扰动法向量不增加几何 (p.69-71)
- 位移映射 (Displacement Mapping):实际改变顶点位置 (p.70)
光线追踪¶
- 反向光线跟踪:从眼睛出发(实际使用)。(p.77)
- Whitted递归光线跟踪:初始光线+阴影光线+反射光线+折射光线。(p.83-84)
- \(I(P, d) = I_{direct} + I_{reflected} + I_{transmitted}\) (p.85)
- 求交:平面/三角形/球面求交。(p.89-90)
- 加速结构:BVH、八叉树、K-d树、BSP树——求交占>90%计算时间!(p.91-93)
辐射度量学与绘制方程¶
核心量:
- 辐射通量 \(\Phi\) (W)、辐照度 \(E = d\Phi/dA\)、辐射度 \(B = d\Phi/dA\) (出射) (p.110)
- 辐射强度 \(I = d\Phi/d\omega\) (W/sr)、辐射率 \(L = d^2\Phi/(d\omega \cdot \cos\theta \cdot dA)\)(沿光路不变)(p.111-112)
绘制方程 (Kajiya 1986)——CG最重要方程 (p.114):
BRDF (p.115):\(f_r = L_r / (L_{in} \cdot \cos\theta \cdot d\omega) =\) 出射辐射率/入射辐照度
离散辐射度 (p.121):\(B_i = E_i + \rho_i \sum F_{ij} \cdot B_j\) 形式因子 \(F_{ij}\) (p.127):计算占>90%时间。互易性 \(A_i \cdot F_{ij} = A_j \cdot F_{ji}\)。
深度学习渲染¶
| 方法 | 核心思想 | 问题 |
|---|---|---|
| NeRF | 5D→MLP→RGB+σ,体绘制 (p.153-156) | 慢(V100 1-2天) |
| NeuS | SDF约束替换密度σ (p.157-158) | 更准确表面 |
| SNeRG | 漫反射体素+镜面MLP (p.160-164) | 实时渲染 |
| Instant-NGP | 哈希编码+小型MLP (p.165-167) | 秒级训练 |
| MobileNeRF | 带纹理多边形网格 (p.168-171) | 移动端>20fps |
第六章 非真实感绘制¶
概述¶
- NPR定义:使现实影像呈现艺术绘画效果。(p.3)
- 与真实感区别:表现形式(复杂/特殊技巧 vs 可接受复杂度)、应用(记录真实 vs 解释说明)。(p.4-5)
- 三大特点:突出感性信息、更有用认知信息、更具吸引力。(p.6)
笔画建模¶
笔画五属性:尺寸(半径)、形状(外形)、方向(走向)、颜色(色彩)、浓度(密度)。(p.11)
NPR总流程:分析→表示→笔画建模→场景绘制+用户交互。(p.12)
油画风格化六大方法¶
- 交互式:鼠标指定参数,外形为线段。(p.15-16)
- 半自动:梯度E(I)驱动尺寸,细节损失(高频多/低频少)。(p.17-18)
- 自动分层绘制:Sobel算子(边缘方向)+B样条(外形)+高斯金字塔(粗层大笔画→细层小笔画)。(p.20-22)
- 结合视觉显著性:K-D树组织边缘能量,各向异性笔画。(p.24-28)
- 结合语义结构:语义解析树(人脸→物体→区域→边缘),方向场+笔画字典。(p.29-34)
- 笔画迁移:Gabor多频率/方向分析→参数化→迁移。(p.35-42)
水彩画¶
- 纸张:Perlin噪声(旋转不变性/能量集中/统计不变性)(p.44-45)
- 笔画:三层Navier-Stokes流体(浅水层/附着层/扩散层)(p.46)
- Kubelka-Munk模型:光吸收散射,分层融合。(p.48)
纹理合成 NPR¶
- 图像类比 (Image Analogies):A:A'::B:B',ANN匹配(邻域相似性+一致性)。(p.63-67)
卡通风格化¶
- ETF(边缘切向流):局部窗口主方向累积。(p.82)
- DoG(高斯差分):两个σ高斯滤波差,提取显著线条。(p.84)
- 流场双边滤波:沿ETF流场线平滑色块。(p.85)
- 纹理/结构分层:各向异性×非周期性×局部方向性,极值包络分离,优于传统双边滤波。(p.93-101)
视频 NPR¶
核心挑战:帧间时空连续性,否则闪烁。(p.103)
- 帧间光流传播:距离线性衰减浓度+光流传播笔画参数。(p.105-109)
- 光流分层:多层 alpha 融合 \(I = \sum \alpha_l \cdot I_l\)。(p.110-118)
- 视频体:Edison过分割+语义/物理连接→时空立方体。(p.119-123)
深度学习 NPR¶
神经风格迁移 (Gatys et al. 2016) (p.125-131):
- \(L_{total} = \alpha \cdot L_{content} + \beta \cdot L_{style}\)
- \(L_{content} = \frac{1}{2}\sum(F_{ij} - P_{ij})^2\),\(G_{ij} = \sum F_{ik} \cdot F_{jk}\)
CycleGAN (Zhu et al. 2017) (p.133-136):循环一致性,无需配对数据。
第七章 图形学方法的影像处理¶
图像 vs 图形¶
- 图像:位图/像素。(p.2)
- 图形:矢量图/图元。(p.2)
影像抠图 (Image Matting)¶
抠图方程 (p.7):\(I_z = \alpha_z \cdot F_z + (1 - \alpha_z) \cdot B_z\),\(\alpha \in [0,1]\)
病态问题:7未知量仅3方程!需引入先验。(p.8-9)
抠图方法总览: | 方法 | 核心 | |------|------| | 蓝屏抠图 | 已知 \(B_R = B_G = 0\),若 \(F_B = 0\) 依次求解 (p.11-13) | | 贝叶斯抠图 | \(\arg\max P(F, B, \alpha \mid C)\),迭代优化 (p.15-17) | | 泊松抠图 | \(\nabla I \approx (F - B)\nabla\alpha\),解 \(\Delta\alpha = \text{div}(\nabla I / (F - B))\) (p.19-21) | | 闭形式抠图 | 局部 \(\alpha_i = aI_i + b\) / 颜色线模型,\(\alpha^T L \alpha\) (p.25-28) | | 闪光抠图 | 正常+闪光双图,\(B_f \approx B\) (p.30-31) |
影像缩放¶
- Seam Carving:\(e(I) = |\partial I/\partial x| + |\partial I/\partial y|\),DP最优缝隙。局限:线结构扭曲。(p.38-42)
- 网格变形:结构保持相似变换,优于Seam Carving。(p.43-48)
- 视频缩放:3D时空图割。(p.49-54)
影像融合¶
- 泊松融合:\(\arg\min \iint \|\nabla f - \nabla I\|^2\),边界约束。(p.59-61)
- MVC插值融合:\(\lambda_i = w_i / \sum w_j\)。(p.63-65)
影像拼接¶
- 流程:SIFT→RANSAC→单应 \(H\) → 投影。(p.77)
- APAP:Moving DLT,\(w_i = \exp(-\|x - x_i\|^2 / \sigma^2)\)。(p.78-80)
- SPHP:重合区单应+非重合区相似渐变。(p.82-87)
- AANAP:局部单应线性化+全局相似混合。(p.89-92)
影像编辑¶
- 颜色迁移:色相/色温直方图匹配+笔画约束。(p.113-121)
- 编辑传播:K-D树加速(33GB/70min→45MB/13s)。(p.123-132)
- MLS变形:\(\arg\min \sum w_i |F_v(p_i) - \hat{p}_i|^2\),三种变换。(p.140-146)
- 视频去抖:2D光流+低通 vs 3D重建+路径平滑。(p.148-154)
第九章 计算机动画¶
基本概念¶
- 定义:连续播放画面产生连续变化的效果。(p.3)
- 视觉暂留:约0.05~0.1秒内画面不消失。(p.5)
- 传统技术:逐帧手绘、Cel Animation(1914)、Rotoscoping(1915)。(p.7)
传统动画12原则¶
- 挤压和伸展 (Squash and Stretch):形变表现刚度,保持体积不变。(p.13)
- 预期性 (Anticipation):准备→实际→完成。(p.14)
- 布局 (Staging):容易理解的方式展示。(p.15)
- 连贯动作法与关键动作法:CG中关键动作法更常用。(p.16)
- 跟随动作与重叠动作:动者恒动,部分接着部分运动。(p.17)
- 慢入和慢出 (Slow in & Slow out):加速和减速的自然规律。(p.18)
- 弧形动作 (Arcs):生物运动沿圆弧轨道。(p.19)
- 附属运动 (Secondary Action):点缀不喧宾夺主。(p.20)
关键帧插值¶
- 线性插值 \(\mathbf{v}_t = (1-t)\mathbf{v}_1 + t\mathbf{v}_2\):缺点——不真实、速度不连续、Shrinkage+Kink!(p.31-32)
- 样条插值:Hermite、Bezier、Catmull-Rom、B样条、NURBS。(p.33)
- ARAP形变插值:极分解 \(\mathbf{M} = \mathbf{R} \cdot \mathbf{S}\),插值 \(\mathbf{R}\) 和 \(\mathbf{S}\)。\(E = \sum \|\mathbf{M}_i - \mathbf{R}_i\|^2\)。(p.40-44)
关节动画¶
- DOF:根节点 6 DOF (3平移+3旋转),肩/腕/膝各3旋转。(p.49-51)
- FK (正向运动学):\(\mathbf{P}_{end} = f(\theta_1, \dots, \theta_n)\),DFS遍历。(p.53-55)
- IK (反向运动学):\(\boldsymbol{\theta} = f^{-1}(\mathbf{P}_{target})\)。二连杆解析解(余弦定理)。数值解 \(\Delta\boldsymbol{\theta} = \mathbf{J}^+ \Delta\mathbf{P}\),面临奇异点、病态方程、关节限制。(p.53,56-60)
- 蒙皮 (Skinning):\(\mathbf{v}' = \sum w_i \cdot \mathbf{M}_i \cdot \mathbf{v}\),\(\sum w_i = 1\)。(p.63-64)
运动捕捉¶
| 类型 | 优点 | 缺点 |
|---|---|---|
| 主动-电子机械 | 实时、无遮挡 | 动作类型有限 (p.70-71) |
| 主动-闪光标记 | 速度快、精度高 | 仅室内 (p.73) |
| 被动-光学图像 | 速度快、设备简单 | 受光照影响 (p.74) |
物理模拟与群体动画¶
- 粒子系统 (Reeves 1983):不规则形体(云/雾/火)。不碰撞、不投射阴影、有限生命周期。(p.77-82)
- Reynolds三原则:碰撞避免 ≻ 速度匹配 ≻ 群体合群。(p.85)
- Flock-and-Boid:边缘个体影响大,群体可分裂合并。(p.88-90)
- 社会力模型:恐慌下"羊群效应"。(p.91)
- 自编码器动画:n帧×m DOF→低维流形,运动修复和插值。(p.94-96)
附录:高频公式速查¶
几何变换¶
Bézier/B样条/NURBS¶
曲线几何性质¶
拉普拉斯平滑¶
欧拉-庞加莱¶
Phong/Blinn-Phong¶
绘制方程 (Kajiya 1986)¶
BRDF / 离散辐射度¶
抠图方程¶
泊松融合 / Seam Carving¶
神经风格迁移¶
NeRF 体绘制¶
FK/IK¶
ARAP / 蒙皮¶
Reynolds 三原则¶
详细版复习资料整理完毕 — 覆盖课程全部 8 章内容,基于 1197 页课件幻灯片