CWF: Consolidating Weak Features in High-quality Mesh Simplification
Shandong University; The University of Texas at Dallas; Qingdao University of Science and Technology; Wayne State University; University of Hong Kong; Texas A&M University
一句话总结
提出一个同时刻画精度、三角形质量与特征对齐的光滑能量泛函(法向各向异性项 + CVT 能量项),并用一个随迭代衰减的权重自动平衡二者,从而在网格简化中不仅保留强特征,还能”聚合”(consolidate)那些不显著的弱特征,同时保持高质量三角化。
研究背景
网格简化的目标是在保持视觉/几何保真度的前提下降低三角面片数量,广泛用于压缩传输、AR/VR 渲染、交互式应用与仿真的代理网格等。业界通常关注三项需求:精度(简化前后差异小)、三角形质量(近等边三角形有利于数值稳定与仿真精度)、特征对齐(网格边与特征线对齐,提供形状识别的视觉线索)。
问题在于,这三项需求长期被视为”此消彼长”的权衡,已有算法往往只擅长其中一两项:
- QEM(Quadric Error Metrics):最流行的边收缩简化方法,精度高、能对齐强特征(尖锐棱线/角点),但难以保证三角形质量(会产生大量钝角三角形),并且会退化弱特征。
- CVT(Centroidal Voronoi Tessellation):通过优化可移动点得到均匀点分布、三角形质量优秀,但无法对齐任何特征线(无论强弱)。
- LpCVT:在 CVT 目标里加入法向各向异性以对齐特征,但两项之间的平衡权重需要针对每个模型手工调整,导致对强/弱特征的保持不一致。
核心难点在于弱特征:强特征表现为局部法向的剧烈变化,而弱特征是较大尺度上的细微形状变化(如有机模型 Mobius 环那种平滑过渡的轮廓),传统方法很容易把它们抹平。作者的关键洞察是:把 QEM 的精髓搬到连续设定下,与 CVT 能量统一到一个泛函里,再用一个衰减权重来自动协调两项冲突,就能在简化中”凸显”弱特征。
核心方法
统一泛函
方法以曲面上一组可移动点 \(\{x_i\}_{i=1}^{N}\) 为变量,交替进行”表面分解”与”点重定位”,类似 CVT 范式,把点的放置与连接关系解耦。目标函数由两项加权组成:
\[E(\{x_i\}_{i=1}^{N}) = \lambda_{NA} E_{NA} + \lambda_{CVT} E_{CVT}.\]
法向各向异性项(Normal Anisotropy,继承 QEM 精神、由 LpCVT 引入):
\[E_{NA} = \sum_i \int_{\Omega_i} \big((x - x_i)^T n_x\big)^2 \, ds = \sum_i \int_{\Omega_i} (x - x_i)^T n_x n_x^T (x - x_i)\, ds,\]
CVT 能量项:
\[E_{CVT} = \sum_{i=1}^{N} \int_{\Omega_i} (x - x_i)^T M_{CVT} (x - x_i)\, ds.\]
其中 \(\{\Omega_i\}\) 是曲面分解(一般由受限 Voronoi 图 RVD 给出)。两项可统一写为核矩阵 \(M = \lambda_{NA} M_{NA} + \lambda_{CVT} M_{CVT}\) 下的二次型积分。\(M_{CVT}\) 可取单位阵(欧氏距离)、各向同性阵(编码密度函数)或各向异性阵(编码方向变化)。
直观上:法向各向异性矩阵 \(n_x n_x^T\) 度量向量 \(x-x_i\) 与该处法向的正交程度,本质就是 QEM 的连续版——区别在于 QEM 在网格边及其两端点的关联三角形上评估二次误差,而这里在区域 \(\Omega_i\) 上积分。优化后,靠近特征的点会被”吸”向特征:控制平面区域的点保持不动,跨越特征线的点会移动到特征线上,控制角点的点会落到角点。
衰减权重:自动平衡的关键
两项的量级可能差异极大。若把总表面积归一化为 1,\(E_{CVT}\) 对 CAD 或有机模型都不会剧烈变化,但 \(E_{NA}\) 在多数 CAD 模型上能被压到接近 0(如立方体),使得 CVT 项占主导、反过来阻止 \(E_{NA}\) 归零。作者的策略是:保持 \(\lambda_{NA}\) 不变,让 \(\lambda_{CVT}\) 随迭代按几何衰减
\[\lambda_{CVT}^{(i)} = \lambda_{CVT}^{(i-1)} \times \tau, \quad \tau = 0.95.\]
这样优化初期优先均匀点分布(CVT 主导),后期逐渐把重心转向特征对齐(NA 主导)。例如 \(\tau=0.95\) 时,CVT 权重经 50 次迭代从 1.0 降到约 0.07。这一”先均匀、后对齐”的动态平衡,正是它能聚合弱特征、区别于其他方法的核心。
优化与梯度
用 L-BFGS 求解,每轮迭代先做表面分解(RVD),再用数值积分计算能量与梯度。多边形区域被剖分为 \(k-2\) 个三角形,用 Albrecht-Collatz 求积(每三角形 6 个采样点)。CVT 梯度直接可得;NA 梯度由 Reynolds 输运定理给出,含区域项与相邻单元边界项,但实验发现边界项相对区域项可忽略,故近似为
\[\nabla_{x_i} E_{NA} \approx \int_{\Omega_i} -2\big((x - x_i)\cdot n_x\big) n_x \, ds.\]
终止条件(满足其一即停):梯度范数小于 \(10^{-8}\);或 CVT 能量回升,即 \(E_{CVT}^{(i)} \ge \mu \cdot \min_{j=0}^{i-1} E_{CVT}^{(j)}\),其中 \(\mu = 1.05\)(防止有机模型迭代过多导致三角形质量退化)。
薄板模型上的 RVD 修复
当模型是薄板且点数不足时,RVD 会出现”一个站点主导两个及以上区域”、违反”一站点一区域”的问题。作者提出一个简单技巧:为每个点沿内法向偏移一个微小距离(如 0.01)生成一份内侧点集 \(\{x_i^-\}\)。第一阶段计算 \(\{x_i\}\cup\{x_i^-\}\) 的 Voronoi 图,把由偏移点主导的区域标出;第二阶段对每个这类区域找出”贡献站点”,忽略偏移站点后用真实站点重新划分并分配,从而得到有效的表面分解。该方法可并行处理,无需像已有工作那样对无主区域做繁琐分析。
实验结果
硬件为 AMD Ryzen 9 5950X + 64GB 内存。数据集包括从 ABC 数据集随机选取的 100 个水密流形 CAD 模型(含强特征),以及 21 个带弱特征的有机模型。所有模型统一用同一组参数:\(\lambda_{NA}=\lambda_{CVT}=1.0\)、\(\tau=0.95\)、\(\mu=1.05\)。评价指标涵盖 Chamfer Distance (CD)、F-score (F1)、Normal Consistency (NC)、Hausdorff Distance (HD)、三角形质量 TriangleQ、开边数 OpenB、非流形顶点数 NMV,CAD 上还额外用边 Chamfer 距离 (ECD) 与边 F-score (EF1) 度量特征线保持。
对比了 9 个 SOTA 方法:CVT、LpCVT、QEM、SMS、IEM、LPM、PQ(PQT/PQP 两种配置)、MD、ERB。
CAD 模型(表 1,目标点数 500/1000/2000):本方法在 F1、NC、ECD、EF1、TriangleQ 等多数指标上取得最优或次优,尤其同时兼顾精度、三角形质量与特征对齐;而且 OpenB 与 NMV 始终为 0(无开边、无非流形),CVT/LpCVT 同样为 0,但它们在特征保持上明显更差。QEM 类方法精度尚可但三角形质量差、且常出现开边和非流形顶点。以 2000 点为例,本方法 CD \(=0.076\times10^{-4}\)、TriangleQ \(=0.893\),均为最佳一档。
有机模型(表 2):本方法在 NC(0.976)、TriangleQ(0.861)上领先,CD/F1/HD 接近最优,同时 OpenB=NMV=0。定性对比(bunny、平滑输入等)显示它能保住耳朵、腿、脖颈等弱特征,而 QEM 家族常在特征线处产生”倒角”式伪影。
运行时间:主要开销在 RVD 构建(比 L-BFGS 更耗时),一般 40~50 次迭代收敛,实际耗时约 \(O(k(m+n))\)(\(m\) 为基网格复杂度,\(n\) 为目标点数,\(k\) 为迭代数)。在 40K 面的 block/bunny 上、0.5K~10K 点规模,总耗时约数秒到二十余秒量级,比 SMS、LPM、ERB 等快得多。
消融:\(\tau=1.0\) 会过度偏向 CVT 而损坏弱特征边,\(\tau\) 太小则点分布来不及均匀化;\(\lambda_{NA}\) 增大到 10 会让结果趋近 QEM 并使三角形质量下降;\(\mu\) 太小提前终止、特征对齐不充分,太大则迭代过多且质量退化。作者据此选定默认参数。方法还支持非欧度量(各向异性/密度自适应)、对 0.25%~0.5% 高斯噪声与低质量输入网格有较强鲁棒性,并可处理开边界与用户指定目标点数。作为下游应用,简化结果能改善网格分割(弱特征凸显使分割边界更直)与 CAD 模型轻量化。
贡献与局限
贡献:
- 提出一个统一泛函,将精度、三角形质量、特征对齐三项需求同时纳入,实现良好平衡;
- 引入衰减权重,随迭代逐步削弱 CVT 能量影响,自然协调两项冲突——这是它能聚合弱特征的关键,也是区别于绝大多数简化方法之处;
- 提出一个简单有效的技巧,在薄板模型上正确计算 RVD。
局限:
- 缺乏成熟的各向异性 RVD 求解器,无法充分发挥泛函对各向异性网格的潜力(当前各向异性/裁剪技术只能处理凸形状如椭球);
- 实现效率次优,尚未做 GPU 加速;
- 当目标点数过少时,RVD 的对偶无法定义流形三角网格,方法会失效;输入若含自交面片也会产生非流形顶点/边。总体上只要目标点数充足,该 RVD 策略表现良好。
延伸思考
这篇工作最精妙的地方是把”两个互相打架的能量项”通过一个动态衰减权重转化为”分阶段主导”:先让 CVT 把点铺匀,再让法向各向异性把点吸到特征上。这种”退火式”的权重调度思想(而非固定权重的硬平衡)值得在其他多目标几何优化问题中借鉴。另一方面,弱特征的”聚合”能力揭示了简化不只是”删减”,也可以是”提炼形状语义”,其在网格分割等形状理解任务中的前置价值值得进一步挖掘。若能补上各向异性 RVD 求解器与 GPU 加速,方法在大规模、特征敏感的重网格化场景下会更实用。