天天看点

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

前文1 前文2 所说的方法都是通过调整顶点坐标来实现去噪效果。从信号处理的角度来理解,显式diffusion flow可以被视作有限冲激响应(FIR)滤波器,而Desbrun提出的隐式法可以被视作无限冲激动响应(IIR)滤波器。

为什么我要生拉硬拽地把上文扯到信号处理领域呢?哈哈 ,只是为了引出网格去噪中的另一大类处理方法:滤波法。滤波方法是个非常宽广的范畴,我无法面面俱到。因此本文只会聚焦在其比较窄的一个子集中---各项异性滤波(anisotropic filtering)。

各项异性滤波法

前文提到,各项同性的扩散流无法保持特征,因而需要引入各项异性滤波法来区别对待。滤波的对象有顶点坐标,顶点法向等。本文主要想聊聊法向滤波与顶点更新的两步法。两步法是将法向滤波和顶点更新分成两个阶段来迭代处理。不同的方法主要围绕在这两个步骤的处理效率、对特征的保持程度有区别。

为什么这类先对法向滤波的方法能取得成功?我想,一个主要原因是法向能提供几何特征更方便直观的描述。试想,特征边往往是相邻法向的差异来定义的。因此直接对法向滤波会比对顶点坐标滤波带来更有效的影响。

法向滤波

此类方法将法向和顶点坐标看做定义在网格上的两个信号,首先利用不同的滤波方法处理法向,然后更新顶点坐标来逼近滤波后的法向场。其滤波基本形式为:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

双边滤波法是其中最著名的一类方法,Zheng[6]提出的实现策略如下:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

Lee[7] 提出了不同的策略,其不同点在于相邻点法向的差异衡量:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

两个权重函数都是单调函数,随空间距离或信号差异的增大而单调下降。

Zhang[8] 在双边滤波的基础上提出了一个拓展框架。他指出传统的法向双边滤波过程在考虑信号权重

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

时直接使用带噪声的原始法向场,会带来结果的不稳定,应该换成结构更清晰的引导向量场:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

注意上式中

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

,前者代表原始信号,后者代表引导信号。具体的引导向量场实际上通过法向的聚类划分成多个patch,并对每个patch求取面积加权平均的法向来实现。

其他还有层出不穷的滤波方法,如更改法向差异度量的范数L1、L0 Zhao[10],更改引导向量场的迭代阶数 Wang[9],混合使用静态/动态更新的引导向量场 Zhang[11]等等,不计其数。

顶点更新

当得到了更新后的法向后,该如何更新顶点坐标呢?Taubin[2] 提出利用面法向

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

正交于三条边向量的性质:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

上述等式无法同时在所有面片上成立(因为该向量场未必可积),因而只能取最小二乘意义上的最小值:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

注意上式是齐次形式,我们真正想要的是非平凡解(non-trivial)。因而将前式改写成矩阵形式后,该问题可被视作寻找最小特征值对应的特征向量,即等价于优化如下能量:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

Taubin[2] 等人提出可以通过梯度下降法来迭代求解:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

同样的

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

取值也很关键,步长小耗时长,步长大则不稳定。Sun[1] 提出了一个计算简洁,效果不错的迭代策略:

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

这个方法本质上是明确了

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

的选取策略,

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

是顶点的邻接面片个数。对于规则三角网格,可以简单取为6,也就是在Taubin方法中取

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

结果

这个框架下的方法数不胜数,没有哪一个方法是包打天下,没有最好,只有最适合,运用之妙,存乎一心。还是先欣赏几个结果吧。

网格向量必须包含特征点。_聊聊网格处理-网格去噪3

参考

  1. Fast and Effective Feature-Preserving Mesh Denoising
  2. Linear Anisotropic Mesh Filtering
  3. Efficient Linear System Solvers for Mesh Processing
  4. Fuzzy Vector Median-Based Surface Smoothing
  5. Mesh Smoothing by Adaptive and Anisotropic Gaussian Filter Applied to Mesh Normals
  6. Bilateral Normal Filtering for Mesh Denoising
  7. Feature-Preserving Mesh Denoising via Bilateral Normal Filtering
  8. Guided Mesh Normal Filtering
  9. Rolling Guidance Normal Filter for Geometric Processing
  10. Robust and effective mesh denoising using L0 sparse regularization
  11. Static/Dynamic Filtering for Mesh Geometry