Basic maths for [shapes] as [spatial surfaces]
将 [形状] 视作 空间曲面 的基本数学
目录
math: implicit surface
- 参考资料
- wiki: implicit surface
- wiki: atlas
- 知乎: 光滑流形
- Clemson University - Computer Graphics 计算机图形学课程
- chapter 12 Implicit and Parametric Surfaces
- JKU - Commulative Algebra and Algebraic Geometry - 交换代数与代数几何课程
- chapter 7 Local properties of plane algebraic curves
- chapter 8 Rational Parametrization of Curves
- 这则课程主要研究平面代数曲线,所有的定理、证明都十分严谨;大多数定理其实都可以延伸至空间超曲面
- 中科大 - 近世代数
- [1990]Purdue University - Conversion methods beween parametric and implicit curves and surfaces
- 非常老的手稿影印版,过程比较简略
- [2002]Purdue University - Geometric and Solid Modeling - 几何与实体造型课程
- chapter 5 Representation of Curved Edges and Faces
- 有些不严谨,跳步很多,需要一定代数几何基础
- [2006]arXiv monoid hypersurfaces
- [2020]Thibault GROUEIX’s slice - Deep Learning for 3D Toward Surface Generation
- 非常详细,非常总结,概括性很好
surface: implicit form & parametric form
- 一个球面形状的隐式形式和参数化形式:
implicit form
¶metric form
- implicit的形式无法直接通过其生成点,但是一般可以通过test来判断点在object内还是object外,对于ray-tracing非常友好
- parametric的形式可以直接通过其生成surface上的点,对于OpenGL等方法很有帮助
形状(geometry) 与 拓扑(topology)
- 如果用mesh的数据结构来理解拓扑:
- 同形状代表相同的顶点位置和连接关系;同拓扑代表相同的顶点连接关系
- 若顶点之间的连接关系不变,可以通过顶点位移变化出的几个形状,互相之间是同拓扑的
- 如甜甜圈和咖啡杯
- 拓扑不同的形状,只要顶点之间的连接关系保持不变,怎么位移顶点都无法得到
- 当然,上述的“位移顶点位置”是一个粗糙的描述,具体在形变时是要符合一定规则的,即【光滑同胚/微分同胚】 [bilibili视频:斯梅尔悖论:内翻球面和外翻球面是微分同胚的 ]
manifold
流形,chart
卡(坐标卡),atlas
图册
homeomorphism
同胚- 同胚是两个
topological space
拓扑空间之间的函数 - a function $f: X \rightarrow Y$ between two topological spaces is a homeomorphism if:
- $f$ is a
bijection
(i.e.one-to-one
andonto
)
$f$ 是一个双射,i.e.单射且满射 - $f$ is a continuous function
- the inverse function $f^{-1}$ is continuous
- $f$ is a
- e.g. 咖啡杯和甜甜圈这两个拓扑空间同胚
- 同胚是两个
manifold
流形,chart
坐标卡,parameterization
参数化- 流形是一个拓扑空间
2-manifold
(two-dimensional manifold
)二维流形的定义:- a subset $\mathcal{S}$ of $\mathbb{R}^3$ is a 2-manifold if
- for every point $\boldsymbol{p}\in\mathcal{S}$
there is an open set $V$ in $\mathbb{R}^2$ and an open set $W$ in $\mathbb{R}^3$ containing $\boldsymbol{p}$
such that $U=\mathcal{S} \cap W$ is homeomorphic to $V$ - 对于 $\mathcal{S}$ 中的任意一个点 $\boldsymbol{p}$, 都存在 [$\mathbb{R}^2$ 中的一个开集 $V_{欧式空间中的一个开子集}$] 和 ${[\mathbb{R}^3中的包含点\boldsymbol{p}的一个开集W}]$
使得 ${[\mathcal{S}和W的交集U]}$ ($\mathcal{S}$ 的一个包含点 $\boldsymbol{p}$ 的开子集) 与 $V_{欧式空间的一个开子集}$ 同胚 - 这个同胚记为 $\varphi: U \rightarrow V$,有序对 $(U,\varphi)$ 叫做包含 $p$ 的坐标卡
- for every point $\boldsymbol{p}\in\mathcal{S}$
- a subset $\mathcal{S}$ of $\mathbb{R}^3$ is a 2-manifold if
- 人话
- $S$ 的一个开子集和欧式空间的一个开子集同胚,那么 $S$ 就是一个流形
- 从$S$的一个开子集到欧式空间的开子集的同胚叫做
chart
坐标卡 - 坐标卡的逆(从低维欧式空间的开子集 到 $S$的一个开子集的同胚)叫做
parameterization
参数化
manifold
理解:局部区域线性,与(低维)欧式空间拓扑同胚- “自由度”的理解:
一个m维空间的中的曲线/曲面有n个自由度,其实严格数学定义指的是这个曲面/曲线是一个n维流形,与某一个n维欧式空间(局部)同胚
chart
卡/坐标卡- 坐标卡是一个同胚,一个函数,一个映射。
- A
chart
for atopological space
M is ahomeomorphism
$\varphi$ from an open subset U of M to an open subset of a Euclidean space.
一个拓扑空间的坐标卡,就是这个拓扑空间的一个开子集到一个欧式空间的开子集的同胚 - the chart is traditionally recorded as the ordered pair $(U,\varphi)$
坐标卡一般用有序对$(U,\varphi)$表示
parameterization
参数化- 参数化是一个同胚,一个函数,一个映射
chart
坐标卡的逆映射就是参数化:从一个欧式空间的开子集到拓扑空间的开子集的同胚- 举例:
- NeRF++中,显式手动建立了一种从欧式空间到球面坐标(4维,x,y,z定义方向,r定义球内球外)的映射,其本质就是一个从3维欧式空间到一个4维拓扑空间的同胚,一种参数化
- AtlasNet中,隐式地学出了一种从2维单位均匀分布到空间中一个物体表面局部patch的坐标的映射,其本质就是一个从2维欧式空间到一个3维拓扑空间(3维中的一个曲面)的同胚,一种参数化
- 在代数几何/计算机视觉中,一个平面曲线的参数化,本质就是从一个1维欧式空间(参数的集合)到一个2维拓扑空间的映射;一个空间曲面的参数化,本质就是从一个2维欧式空间(参数的集合)到一个3维拓扑空间的映射;都是同胚,都是参数化
image
像- 像是一个点集。
- 设$f$是一个从定义域$X$到值域$Y$的一个函数
- image of an element If x is a member of X, then the image of x under f, denoted f(x), is the value of f when applied to x.
- image of a subset
the image of subset $A \subseteq X$ under f, denoted $f[A]$ is the subset of Y which can be defined as:
$f[A] = \lbrace f(x) \vert x \in A\rbrace$
when there is no risk of confusion, $f[A]$ is simply written as $f(A)$ inverse image / preimage
原像:
the preimage or inverse image of set $B \subseteq Y$ under f , denoted by $f^{-1}[B]$, is the subset of X defined by
$ f^{-1}[B]=\lbrace x\in X \vert f(x) \in B\rbrace $
atlas
图册- 图册是一族坐标卡,一族同胚,一族函数,一族映射
- a index family $\lbrace (U_\alpha,\varphi_{\alpha}):\alpha \in I \rbrace$ of charts on M which
covers
M (that is, $\cup_{\alpha \in I} U_{\alpha}=M$) - 流形M上的一个图册是: 一族M上的卡$\mathcal{A}=\lbrace (U_{\alpha}, \varphi_{\alpha})\rbrace$ ,使得定义域盖住了整个M
disk-topology
圆盘拓扑disk
, also spelled asdisc
- the region in a plane bounded by a circle
- 在cartesian coordinates下的:
open disk
$D=\lbrace (x,y)\in \mathbb{R}^2: (x-a)^2+(y-b)^2<R^2\rbrace$ closed disk
$D=\lbrace (x,y)\in \mathbb{R}^2: (x-a)^2+(y-b)^2 \leq R^2\rbrace$
- a surface homeomorphic to a disc in a plane
algorithms
marching cubes [explain]
losses
- chamfer loss /
chamfer distance
(CD)
Earth Mover Distance
(EMD)- Sinkhorn 近似
implicit form / implicit field 与 parametric form 之间的转换
affine space
仿射空间projective space
射影空间- 射影空间是齐次坐标系
multiplicity
重数rational function
有理函数(多项式加减乘除,只在有限个点没有定义)monoid
,monoidal
幺半群 / 单位半群 / 具幺半群 / 独异点monoidal surfaces
独异点曲面- an algebraic(polynomial) surface $f(x,y,z)=0$ of degree n that has an $(n-1)-fold$ point (a point of multiplicity n-1)
一个有n-1重点的n次代数曲面(线)即为一个monoidal curve - monoidal surfaces include:
- quadrics 二次曲面
- cubic surface with a double point 有二重点的三次曲面
- quartic surface with a triple point 有三重点的四次曲面
- etc.
- an algebraic(polynomial) surface $f(x,y,z)=0$ of degree n that has an $(n-1)-fold$ point (a point of multiplicity n-1)
parameterization
: implicit -> parametric- ==本质==
- 这里的参数化,和拓扑学中的参数化,是一回事:从一个欧式空间到一个拓扑空间的同胚(映射)
- curve
- Noether’s theorem
A plane algebraic curve f(x,y)=0 possesses a rational paramtric form iff f has genus 0
- Noether’s theorem
- surface
- 没有已知的通用工具来判断一个给定的implicit surface是否可以被参数化,以及if so, how
- monoidal curves/ surfaces can be parameterized in a simple manner
- 参数化时常用方式:parameterization using a
pencil
of linespencil
- in geometry, a pencil is a family of geometric objects with a common property
- a pencil of lines through a point p is a set of lines each containing p
Bezout's Theorem
贝组定理- Let $\mathcal{C}$ and $\mathcal{D}$ be projective plane curves without common components and degrees n and m, respectively. Then
$n \cdot m = \underset{P \in \mathcal{C} \cap \mathcal{D}}{\sum} mult_P(\mathcal{C},\mathcal{D})$ - 即:在考虑重数设定的前提下,两个分别次数为n和m的仿射空间代数曲线(也可以是射影空间),二者要么有共同项,要么没有共同项且相交mn次(相交点的重数和为mn)
- Let $\mathcal{C}$ and $\mathcal{D}$ be projective plane curves without common components and degrees n and m, respectively. Then
- 因此,对于monoidal curves/surfaces来说,只要让a pencil of lines共同经过那个(n-1)重点,则这些直线一定与曲线/曲面还剩一个交点,如此便可实现参数化
- ==本质==
让直线束经过二次曲线的一个"一重点"来参数化 | 让直线束经过三次曲线的一个二重点来参数化 |
---|---|
- a
rational parameterization
of a surface in affine (x,y,z)-space corresponds to apolynomial parameterization
of the same surface inprojective (w,x,y,z)-space
一个曲面在(x,y,z)-仿射空间的有理参数化 对应 同样曲面在(w,x,y,z)-射影空间的多项式参数化 implicitization
: parametric -> implicit- all curves and surfaces with a rational parametric form can be converted to implicit form
- elimination algorithm, resultant, etc.
representation for shapes
- 现有的形状表征模型:(a) voxel, (b) pointcloud, (c) mesh, (d) implicit field (occupancy, SDF, inside/outside, etc.) (e) parametric patches.
本篇笔记主要考虑implicit field与parametric patches.