SIGGRAPH 2024 | Split-and-Fit: 基于维诺划分的边界表示学习方法

文摘   科技   2024-07-07 15:00   广东  

导读

本文是VCC刘奕林同学对论文 Split-and-Fit: Learning B-Reps via Structure-Aware Voronoi Partitioning 的解读,该工作来自深圳大学可视计算研究中心、西蒙菲莎大学和特拉维夫大学,并被发表在计算机图形学顶级会议SIGGRAPH 2024上。 

项目主页: 
https://vcc.tech/research/2024/BRepVP 

项目代码: 

https://github.com/yilinliu77/NVDNet 

项目论文: 

https://arxiv.org/abs/2406.05261 

该工作提出了一种获取三维计算机辅助设计 (Computer-Aided Design, CAD) 模型的边界表示 (Boundary Representation, B-Rep) 新方法,利用具结构感知的维诺图 (Voronoi Diagram, VD) 作为中间表示,通过预测不同输入条件下的维诺图,生成具有精确几何、一致拓扑和强泛化能力的高质量边界表示



I


 引言 
边界表示在CAD建模和编辑中被广泛使用。通过参数化曲面、曲线、顶点以及其拓扑关系,边界表示以紧凑且结构化的方式定义任意三维实体。与此同时,其逆向工程,即非结构化输入(例如点云或距离场)进行边界表示的重建也成为了一个被广泛关注的研究问题。现有方法不管是传统的采用聚类或通过RANSAC、区域增长进行基元拟合,还是近期基于深度特征进行实例分割或者直接检测基元及其拓扑关系,都只基于局部几何或拓扑特征,自底向上地构建边界表示。这些方法往往缺乏显式针对全局结构属性的优化或监督。

本次导读论文介绍了一种获取三维CAD模型边界表示的新方法,该方法涉及两步过程:首先对空间进行划分并构建对应维诺图,然后在每个维诺单元内进行基元拟合操作。与以往的自底向上的边界表示构建不同,本文提出的Split-and-Fit方法是一种结构感知的自顶向下的方法,因为维诺图明确揭示了模型所含基元的数量以及连接关系。本文通过训练一个简单的二元分类器 (NVD-Net) 来推断输入点云或距离场的维诺图。该网络将一个复杂的连续组合优化问题转化成了一个简单且定义清晰的二元分类问题,从而可以有效地从训练数据中学习CAD模型的维诺划分并获得对应的边界表示,表现出卓越的泛化能力。大量的实验和评估表明,本方法获得的边界表示比现有替代方案的结果拥有更高的几何、检测以及拓扑质量。同时,量化分析表明该方法在新数据上的泛化能力相较于现有方法显著提高。

II


 技术贡献 

本工作主要贡献如下:

  • 提出将维诺图作为重建边界表示的中间表示,将复杂的连续组合优化问题转换为简单的二元分类问题;

  • 提出了一种深度神经网络NVD-Vet,用于从点云或距离场中预测维诺图;

  • 提出了一种从维诺图中提取边界表示参数曲面、曲线、顶点及其连通性的有效方案。


III


 方法介绍 
Split-and-Fit方法由维诺图的预测和提取基元及其拓扑关系两部分组成。给定一个稀疏三维点云(有无法线均可)或一个连续的无符号距离场 (Unsigned distance field),该方法首先训练一个二元分类器,用于预测三维空间中每个体素是否位于维诺边界上;其次考虑如何在每个维诺单元内拟合对应的基元,如图1所示:

图1 Split-and-Fit流程图


维诺图的预测
本文提出了一个深度神经网络NVD-Net用于预测维诺图,即预测一个二元场 
   
其中  表示  位于维诺边界上,  表示  位于维诺单元内部。如图2所示,该网络以无符号距离场作为输入,首先将其离散化为  的体素空间,其中每个体素包含一个4维的特征向量 其中  表示距离场的距离值,  为距离场的梯度向量。该特征向量经过一个UNet网络被映射为每个体素的二元标记  ,用于指示该体素是否位于维诺边界上。此网络经过训练以最小化预测的二元场  和真实二元场  之间的误差:
  
图2 NVD-Net网络架构图


提取基元及其拓扑关系
基于预测的二元场,本文首先在空间中进行区域生长来重建维诺单元。具体而言,本方法选择一个种子体素  作为起始点并不断添加满足  的邻近体素  来增长区域。重复区域增长过程,直到添加所有满足条件的邻近体素。最终,体素网格将被分割成多个区域,表示为维诺单元。根据维诺图的定义,每个维诺单元都包含一个几何基元。对于每一个维诺单元,本文使用最小二乘法迭代拟合所有可能的基元类型并选择拟合误差最低的类型,以获得对应的基元。由于维诺图蕴含了维诺单元之间的连通关系,通过简单地判断相邻的维诺单元的两个基元内点之间的距离是否小于规定的阈值,即可推断出基元之间的拓扑关系。 

提取基元及其拓扑关系后,通过计算两个相邻基元之间的交线以及曲线之间的交点,即可组合成一个完整的基于边界表示的CAD模型。

IV


 部分结果展示 

本文首先展示了维诺图预测的几何含义。现实中CAD模型大多都具有分段G2连续性,即每一个几何基元内部G2连续,而基元和基元的连接处具有不连续性。与此同时,每一个维诺单元的维诺边界恰好位于该不连续处。因此,识别维诺边界等效于识别CAD模型中的表面不连续处,也等效于识别CAD模型对应距离场的二阶导数的不连续处,如图3所示:

图3 维诺边界与模型距离场导数的对应关系


由于本文将一个复杂的连续组合优化问题转化为了一个简单的二元分类问题,其泛化性能相较于现有方法显著提高。如图4所示,现有领先方法ComplexGen [1],SED-Net [2],HPNet [3] 由于采用了复杂的编码器和基元信息交换,其性能随着测试形状与训练集相似度的降低而显著下降,重建误差持续增加。相比之下,本方法无论模型与训练集相似性如何,都保持一致的性能。这种稳定性很大程度上归功于本文对维诺图预测的方法。这种简化使本方法相比现有方法的混合学习过程更加稳健。此外,本方法限制了模型的感受野,主要依赖局部几何特征来预测目标维诺图,进一步提高了模型在新数据上的泛化能力。

图4 相较于现有方法,Split-and-Fit具有较高的泛化能力

如表1、表2、表3和图5所示,本方法在性能方面超越了所有基线 [1, 2, 3, 4],可以生成高几何精度、拓扑一致性的高质量CAD模型。ComplexGen [1] 等以检测为重点的方法很难准确地重建CAD模型,特别是对于与训练数据集不相似的复杂结构。HPNet [2] 和 SEDNet [3] 的泛化程度较高,但很容易将点不准确地分配到基元上,从而导致基元形状变形。此外,这些方法还经常错误地预测基元之间的拓扑关系。基元识别和拓扑结构的这种不准确性通常会导致Point2CAD [5]生成的CAD模型具有互不相连的组件。传统方法(如 RANSAC [4] )可以准确地识别基元,但其调参过程较为复杂。此外,这类方法在恢复曲线和顶点等低维基元时也很难准确识别基元之间的拓扑关系。相比之下,本方法采用了维诺图作为中间表示。点的分配和基元的拟合被分离成两个独立的过程,从而显著提高了基元重建和拓扑的准确性。

表1 本方法与各类方法的几何误差对比

表2 本方法与各类方法的拓扑误差对比

表3 本方法与各类方法的检测误差对比

图5 本方法与各类方法在ABC数据集上的定性对比

V


 总结与展望 
CAD模型在设计、工程、制造和机器人应用中扮演着至关重要的角色。基于边界的CAD表示形式成了通用的CAD建模标准,广泛用于内容创作、仿真、动画和渲染等领域。本方法的核心是预测代表底层形状的维诺图作为提取几何基元及其拓扑关系的基石,然后将这些基元整合起来重建边界表示的CAD模型。维诺图的唯一和确定性显著减少了重建过程中的歧义。大量实验验证本方法在几何精度、检测精度、拓扑一致性和泛化能力方面展示了比现有技术更优越的性能。其重建的边界表示与现有的CAD软件完全兼容,能够无缝集成到设计过程中。

本方法的主要局限性在于体素化过程会引入量化误差,从而影响生成维诺图的精度。这种局限性特别影响微小结构的检测:在体素化后的维诺边界完全占据基元的维诺单元的情况下,该单元及相应的基元在后续过程中将被省略。此外,网络预测的维诺边界上的孔洞可能会将多个维诺单元连接起来,从而影响基元拟合的精度。如何结合隐函数、稀疏体素来表示维诺图将是一个值得探索的方向。

VI


 思考与讨论 
Q: 基于维诺图基元拟合对点云噪声是否敏感? 
A: 每一个维诺单元都是一个子空间。维诺单元内的基元由这一整个维诺单元的距离场共同决定。与此同时,维诺图的定义决定维诺单元内有且仅有一个基元。所以维诺图对点云噪声具有一定的容忍能力。 

Q: 该方法是否能重建具有大面积缺失的点云数据? 
A: 维诺图虽然对噪声有一定的容忍能力,但无法对大面积缺失的区域进行有效补全。维诺图的识别更多地依赖于局部的几何特征,同时残缺的点云数据并不具有很好的维诺图定义,所以该方法只能对点云有效区域进行重建。 

以下是开放性问题,欢迎读者朋友留言讨论: 
Q: 既然维诺图可以很好地作为构建边界表示的一个中间表征,那是否可以利用维诺图和距离场无条件或者有条件地生成新的边界表示?

-- End--



导 读 | 刘奕林
审 核 | 黄惠
编 辑 | 申


参考文献

[1] Haoxiang Guo, Shilin Liu, Hao Pan, Yang Liu, Xin Tong, and Baining Guo. ComplexGen: CAD reconstruction by B-Rep chain complex generation. ACM Transactions on Graphics (SIGGRAPH). 41(4), 129:1-129:18, 2022

[2] Yuanqi Li, Shun Liu, Xinran Yang, Jianwei Guo, Jie Guo, and Yanwen Guo. Surface and edge detection for primitive fitting of point clouds. SIGGRAPH Conference Proceedings. 44:1-44:10, 2023.

[3] Siming Yan, Zhenpei Yang, Chongyang Ma, Haibin Huang, Etienne Vouga, and Qixing Huang. HPNet: Deep primitive segmentation using hybrid representations. IEEE International Conference on Computer Vision (ICCV). 2733-2742, 2021. 

[4] Ruwen Schnabel, Roland Wahl, and Reinhard Klein. Efficient ransac for point-cloud shape detection. Computer Graphics Forum. 26(2), 214-226, 2007.

[5] Yujia Liu, Anton Obukhov, Jan Dirk Wegner, and Konrad Schindler. Point2CAD: Reverse engineering CAD models from 3D point clouds. IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). 3763-3772, 2024.




深圳大学可视计算研究中心
Visual Computing Research Center
----------------------------------
https://vcc.tech


中心以计算机图形学、计算机视觉、可视化、机器人、人工智能、人机交互为学科基础,致力促进多个学科的深入交叉与集成创新,重点推进大规模静动态数据获取与优化融合、多尺度几何建模与图像处理、可视内容生成与仿真渲染、复杂场景重建与识别理解、三维移动协同感知与人机交互、智能模拟学习与强化认知、海量信息可视化与可视分析等方面的科学研究。

📫
转载及合作:szuvcc@gmail.com


深圳大学可视计算研究中心
深圳大学可视计算研究中心致力于大力提升可视计算科学研究与高等教育水平,以计算机图形学、计算机视觉、人机交互、机器学习、机器人、可视化和可视分析为学科基础,促进多个学科的深入交叉和集成创新。详见官网: vcc.tech
 最新文章