DDG课程笔记4-曲面参数化
这个系列是对CMU离散微分几何课程(CMU CS 15-458/858: Discrete Differential Geometry)的总结和回顾。本节我们介绍基于共形映射的曲面参数化方法。
Overview
曲面参数化可以理解为将空间曲面展开成平面的过程。在日常生活中曲面参数化最常见的例子是世界地图,这里我们将球面展开成平面矩形或是其他平面图形。

对曲面进行参数化时可能会导致各种各样的扭曲。还是以世界地图为例,地图上的面积并不能表示实际的面积大小:在地图上格陵兰岛看着比澳大利亚要大,但实际的面积却要小得多(Greenland: 2.166m km², Australia: 7.692m km²)。

显然,我们希望参数化后的曲面能够保持原始曲面上的几何量,比如说角度、长度、面积等。其中能够保证角度在变换前后保持不变的映射称为共形映射(conformal map),稍后我们会介绍共形映射的各种性质。使用共形映射的好处之一我们有非常扎实的理论保证,比如说我们可以保证对于开放曲面共形映射是一定存在的;同时基于共形映射的参数化方法在计算上也大多比较高效,很多算法甚至可以做到实时;此外共形映射往往会得到比较平滑的结果,而其它的参数化方法则不一定能够保证这点。

Conformal Map
Complex Numbers
在这一节我们开始介绍共形映射的相关理论。由于共形映射与复分析有着深刻的联系,因此在正式介绍前首先来补充一些复数的基本知识。我们知道复平面上的点可以表示为实部和虚部的形式:
从几何的角度上看,虚数单位

同时复数的代数运算法则也可以理解为平面向量的运算法则:

利用欧拉公式(Euler’s formula)我们还可以把复数表示成极坐标的形式:

此时复数的乘法相当于对向量的长度进行缩放同时对角度进行加减:

Conformal Structure
对于曲面切平面上的向量
显然旋转后的向量一定也位于切平面上,因此存在一个映射
我们称

不难发现共形结构
其中
Cauchy-Riemann Equation
对于共形映射我们要求切平面上任意两个向量的夹角在变换前后保持不变,实际上我们并不需要考虑所有的夹角只需考虑共形结构

Cauchy-Riemann方程表明在切平面上进行旋转和在参数化平面上进行旋转是一致的,因此曲面上的角度在参数化后保持不变。
Riemann Metrics
此外我们还可以通过黎曼度量来认识共形映射。对于同一个曲面的两个度量
其中
不难验证对于共形等价的两个度量,它们关于角度的定义是相同的。
Spectral Conformal Parameterization
本节最后来介绍基于共形映射的曲面参数化算法,限于篇幅和自身水平有限这里仅介绍使用Cauchy-Riemann方程的SCP算法。
Complex Differential Forms
设
同时定义2-form的Hodge star算子为:
上式意为度量面积微元只需要考虑切平面上相互垂直的两个向量
接着定义1-form之间的内积为:
因此函数的模为:
同时可以证明Hodge star算子不会改变模长(旋转不改变面积):
然后我们需要将微分形式拓展到复数域上,定义微分形式的共轭为:
在此基础上可以定义complex 1-form的内积为:
可以证明上式定义的内积是(半)正定的,而且是Hermitian内积(Hermitian inner product):
Conformal Parameterization
利用Hodge star算子我们可以将Cauchy-Riemann方程改写为:
在此基础上定义共形能量(conformal energy)为:
共形能量
将共形能量
其中
其中
Optimization
最后我们来介绍如何求解最小化共形能量。对于Dirichlet能量项,利用Laplace算子可以转换为:
需要说明的是此时的Laplace算子与我们之前定义的符号相反,即
其中
进而得到离散后的约束优化问题:
不难发现此时优化问题相当于求解复数矩阵
- 初始化向量
; - 求解线性方程:
; - 平移到原点:
; - 进行缩放:
; - 返回步骤2直至残差
收敛。
由于函数内积与向量内积是不完全等价的,优化问题的第一个约束条件应该修改为:
其中
对反幂法进行修改得到最终的迭代格式如下:
- 初始化向量
; - 令
; - 求解线性方程:
; - 平移到原点:
; - 进行缩放:
; - 返回步骤2直至残差
收敛。
总结一下,SCP是一种基于共形映射的曲面参数化方法,通过最小化共形能量来寻找共形映射。在网格上我们利用广义特征值迭代来求解最小化共形能量,得到网格顶点到复数域的映射(向量)
