目前,三维视觉受到了学术界和工业界的广泛关注,在目标检测、语义分割、三维重建等领域都取得了突破性的进展。然而,一个固有的问题是由于物体遮挡、镜面反射、物体自遮挡、视角变换和传感器分辨率的限制,传感器在真实场景下所获取的数据并不完整,阻碍了下游任务的研究进展。
同时,在点云后续一系列的处理中,比如点云去噪、平滑、配准和融合等操作中,也会大大加剧点云的缺失,直接影响了点云重构、模型重建、局部空间信息提取和后续处理的质量。
对人类来说,可以利用学到的先验知识估计出缺失区域的几何和语义信息,但对计算机而言是比较困难的。因此,进行三维点云补全更有利于提高场景理解的准确度。传统方法主要通过几何对称法、表面重建法、模板匹配法等方式进行补全。
1.几何对称法
由于许多自然和人造物体表现出显著的对称性或包含重复的子结构,因此,最初的形状补全方法主要是利用物体或空间呈现的几何对称性,恢复缺失区域的重复结构。该方法假设了缺失的几何部分在现有的部分观测信息中具有重复结构,对于大部分呈现立体对称结构的简单物体是有效的。
然而,对称性假设并不适用于自然界中的所有物体,故可以基于成对匹配简单的局部形状特征来适当积累变换空间中对称性。如图1所示,采用部分对称性或近似对称性进行匹配验证,从而提取欧几里得对的对称性表示,随后基于统计抽样分析,提高成功率。
图1 示例对称点云
2.表面重建法
现有的表面重建方法主要分为插值和拟合两种方式。
插值法是将表面上集中的数据点作为初始条件,通过不同算法执行插值操作得到密集表面。最常用的是以下几种方法:
(1)最近邻插值法:对于待插值点,直接选择离其最近的点作为插值结果。该方法简单快速,但可能会导致点云表面粗糙。
(2)线性插值:对于待插值点,根据其周围的点的位置和属性进行线性插值计算。该方法可以得到较为平滑的结果,但可能会在一些情况下引入误差。
(3)基于高斯过程的插值:利用高斯过程模型对点云进行建模,通过预测未知点的属性来进行插值。该方法可以考虑点云的全局特征,但计算复杂度较高。
(4)基于光滑度的插值:通过对点云进行平滑度估计,选择最佳的邻域来进行插值。该方法能够保持点云的平滑性,但可能会导致细节丢失。
(5)基于网格的插值:将点云转化为网格形式,利用网格内部数据进行插值。该方法可以有效地处理密集点云,但可能会引入网格化的误差。
基于拟合的三维表面重建方法则是利用采样点云直接重建近似表面,通常以隐式形式表示,以下是几种常见的方法:
(1)最小二乘法:可以用于拟合点云数据为平面、曲线或曲面。通过最小化点到拟合曲线或曲面的距离平方和,得到最佳的拟合结果。
(2)RANSAC:可以用于拟合点云数据为平面、直线或其他几何形状。它通过随机采样一组数据点进行拟合,并根据预设的阈值判断数据点是否属于拟合模型,迭代优化最佳拟合结果。
(3)B样条曲面:B样条曲面是一种常用的曲面拟合方法,可以用于重建光滑的曲面。它通过控制顶点和节点向量来定义曲面形状,并利用最小二乘法或其他优化算法进行拟合,得到点云的表面。
(4)网格拟合:网格拟合方法将点云数据转化为网格结构,然后通过优化网格形状来拟合点云表面。
3.模板匹配法
模板匹配法是基于已知的模板形状,通过匹配点云中的局部区域来估计缺失或不完整的形状,主要步骤如下:
①模板选择:从已有的点云数据中选择一个或多个典型的模板形状作为参考。模板可以是手动选择的、经验确定的或者通过其他方法生成的。
②模板匹配:对于待补全区域中的每个点,通过计算其与模板之间的相似度来匹配最合适的模板。相似度可以使用距离度量、形状特征等进行计算。
③形状重建:根据匹配到的模板,将待补全区域的点云进行形状重建。可以使用插值、拟合曲线或曲面等方法来生成缺失区域的形状。
④对齐和融合:将补全的形状与原始点云进行对齐和融合,以保持整体形状的连贯性和一致性。
由于模板匹配方法对于模板选择和匹配准确性要求较高,且对于复杂形状或大规模点云可能存在计算复杂度较高的问题。因此,在实际应用中需要根据具体情况选择合适的方法和策略。
4.总结
目前,基于对称方法已较少使用,主要是由于泛化性较低。在插值和拟合的表面重建法中,仍然需要根据不同的场景情形来选择具体的算法。最后的模板匹配方法,尽管取得了较好的补全结果,但通常存在寻优速度慢和对噪声比较敏感的问题,同时还比较依赖于较大的模型库来覆盖补全的全部形状。