点击下方“PaperEveryday”,每天获得顶刊论文解读
点击加入论文投稿、写作、阅读分享交流群
自监督任意尺度隐式点云上采样研究
作者:Wenbo Zhao; Xianming Liu; Deming Zhai; Junjun Jiang; Xiangyang Ji
源码链接: https://github.com/xnowbzhao/PU-SSAS/
摘要
点云上采样(PCU)旨在从3D传感器(如LiDAR)捕获的稀疏输入生成密集且均匀的点云,这是一个实用但具有挑战性的任务。它在许多现实世界场景中都有潜在的应用,例如自动驾驶、机器人技术、AR/VR等。基于深度神经网络的方法在PCU中取得了显著的成功。然而,大多数现有的深度PCU方法要么采用端到端的监督训练,其中需要大量的稀疏输入和密集真实值对作为监督;或者将不同因子的上尺度视为独立任务,这需要多个网络来处理不同的尺度因子,导致模型复杂性和训练时间显著增加。在本文中,我们提出了一种新的方法,同时实现了自监督和放大灵活的PCU。我们不再显式地学习稀疏和密集点云之间的映射,而是将PCU表述为寻找种子点在隐式表面上的最近投影点的任务。然后我们定义了两个隐式神经函数,分别用于估计投影方向和距离,这两个函数可以通过预文本学习任务进行训练。此外,我们制定了投影校正策略,以去除异常值,从而使物体的形状清晰锐利。实验结果表明,我们的自监督学习方案实现了与最先进的监督方法相媲美甚至更好的性能。
关键字
任意尺度上采样
隐式神经表示
点云上采样
自监督学习
Ⅰ. 引言
点云,每个点代表3D空间中的一个位置,以其在描述具有复杂几何和拓扑的3D对象/场景时的灵活性和紧凑性而受到欢迎,因此成为3D应用的流行表示格式。点云可以由经济实惠的3D传感器(如LiDAR)常规捕获,因此在实际应用中得到了广泛应用,例如自动驾驶[1]、机器人技术[2]、AR/VR[3]等。然而,由于3D传感技术的固有限制,捕获的原始点云通常是稀疏的、嘈杂的且不均匀的。在许多下游应用中,例如表面重建和理解,需要密集、干净和均匀的点云,以忠实地表示3D形状并提供更丰富的几何细节。
与依赖硬件改进的替代方案不同,解决这个问题的另一种计算方法是点云上采样(PCU),它已经引起了学术界和工业界的广泛关注[4]。PCU的目标是从输入的稀疏、低分辨率点云生成密集点云。与2D图像中的对应物(即图像超分辨率)相比,由于点云在3D空间中的不规则和无序特性,PCU是一个特别具有挑战性的任务。一个理想的PCU方法应具备以下特性:1)从稀疏输入生成均匀且密集的点云,以提供有关物体更丰富的细节;2)去除异常点,以保持物体形状的清晰和锐利。
传统的PCU策略是基于优化的,它依赖于关于3D表面的统计先验。例如,通过假设表面在局部是平滑的,Lipman等人[5]引入了一种使用L1范数的无参数方案,使用局部最优投影(LOP)算子重新采样点并基于L1范数重建表面。[6]进一步提出了LOP的高效变体,即基于高斯混合描述输入点密度的加权LOP算子。Huang等人[7]提出了一种鲁棒的边缘感知方法,该方法计算出远离表面奇异性的可靠法线,然后通过双边投影器逐步向上采样到这些奇异性。
近年来,基于监督的深度神经网络PCU方法出现并变得流行,它们从数据中自适应地学习结构,并且比传统的基于优化的方法实现了更优越的性能。例如,PU-Net[8]被提出来学习每个点的多级特征,并通过特征空间中的多分支卷积单元隐式地扩展点集,然后将其分割为众多特征以重建上采样的点集。MPU[9]转向逐步训练一系列基于补丁的上采样网络,以处理不同级别的细节。为了更好地表示局部性并聚合点邻域信息,PU-GCN[10]被提出使用图卷积网络执行点云上采样。Li等人提出了PU-DR[11],这是一个端到端解耦的细化框架,由两个级联的子网络组成:一个密集生成器,它推断出一个粗糙但密集的输出;和一个空间细化器,它通过调整每个点的位置进一步微调粗糙输出。这些数据驱动的方法以端到端监督学习的方式工作,其训练依赖于大量的稀疏-密集对。
基于优化和基于学习的策略构成了点云上采样的主要方法,具有各种相对优势和劣势。基于优化的方法无需监督,因此在实际部署中更加灵活,但上采样性能有限且运行速度慢。基于监督的学习方法在重建性能和快速推理速度方面表现更好,但存在以下两个限制:
真实监督的需求。最先进的深度PCU方法需要大量的输入稀疏和真实密集点集对作为监督,以执行端到端训练,但实际上通常难以获得。因此,神经网络的训练限制在合成数据下进行,其分布不可避免地与真实扫描数据有偏差,导致测试阶段泛化能力差。例如,PU-Net[8]、MPU[9]、PU-GCN[10]和PU-DR[11]不能在ScanNet[12]和KITTI[13]等真实扫描数据集上进行训练,因为缺乏真实监督。
固定上采样因子。在实践中,不同用户和应用场景所需的上采样因子通常是不同的,这是由于不同的资源限制,如显示分辨率和传输带宽。这些现有的基于深度学习的方法[8]、[9]、[10]、[14]将不同尺度因子的上采样视为独立任务,为预定义因子训练特定的深度模型,并必须构建多个网络来处理不同因子的上采样。这种方式显然繁琐,显著增加了模型复杂性和训练时间,尤其是如果个别模型是大型神经网络。
鉴于上述限制,我们认为一个理想的基于学习的PCU方法应尽可能独立于真实监督,并且能够适应不同的缩放因子,并通过一次性训练。一些最近开发的方法[15]、[16]、[17]、[18]研究了这两个目标,并提供了解决方案:
自监督学习。为了解除对真实密集点云的依赖,一些自监督PCU方法最近被提出。Liu等人[15]提出了一个从粗到细的框架,将输入稀疏补丁下采样为更稀疏的补丁,然后将其作为监督信息对进行端到端训练。Zhao等人[16]提出了一种端到端自监督学习方式,其中损失函数强制输入稀疏点云和生成的密集点云具有相似的3D形状和渲染图像。然而,这两种方法仍然必须为不同因子构建多个网络。
任意尺度上采样。受Meta-SR[19]的启发,Ye等人[17]提出了Meta-PU,用于放大灵活的PCU,其中元子网络学习动态调整上采样块的权重。Qian等人[18]设计了一个神经网络,通过分析输入点云的局部几何形状,自适应地学习统一和排序的插值权重以及高阶细化。然而,这些方法仍然遵循端到端监督学习方式,需要构建一个大规模训练集,包括在广泛范围内具有不同尺度的真实密集点集。
在本文中,我们提出了一种通过隐式神经表示实现的新颖而强大的PCU方法,该方法可以同时实现自监督和放大灵活的上采样。具体来说,受隐式表面可以由有符号距离函数(SDF)[20]、[21]、[22]表示的概念的启发,我们转而寻找给定种子点在对象表面上的最近投影点,不再显式地学习稀疏和密集点云之间的映射。这种隐式PCU策略使我们能够摆脱对真实密集点云的需求。然后我们定义了两个隐式神经函数,分别用于估计投影方向和距离。它们可以通过构建的预文本自监督学习任务进行训练。这样,只要种子点被密集且均匀地采样,我们就可以产生高质量、密集、均匀且完整的点云。为了保证种子采样的均匀性,我们利用等间距的3D体素划分点集的空间。此外,我们还制定了专门的投影校正策略,以去除异常值,从而使形状清晰锐利。实验结果表明,我们的方案实现了与最先进的监督PCU方法相媲美甚至更好的性能。这项工作的主要贡献如下:
据我们所知,我们是文献中第一个同时考虑自监督和任意尺度点云上采样的。
我们将PCU表述为寻找种子点在隐式表面上的最近投影点的任务,这可以通过两个通过预文本任务训练的隐式神经函数来完成,无需真实密集点云的需求。我们的方法可以通过一次性训练实现任意尺度上采样。
尽管我们的方法是基于自监督的,但它产生了高质量、均匀且干净的密集点云,并在客观性能上实现了与最先进的监督方法相媲美甚至更好的性能。
本文是对初步版本[23]的全面扩展。具体来说,如第III-D节所述,我们引入了投影校正步骤来去除不可靠的种子和投影,这被证明有助于异常值的去除。本文提出的方法比[23]的性能要好得多。此外,我们与最近发表的最先进方法进行了广泛的实验比较。
Ⅲ. 方法论
在本节中,我们详细阐述了所提出的自监督和任意尺度点云上采样方法。
A. 概述
种子采样:我们通过3D体素网格表示点云的几何空间,并选择靠近底层表面 的体素中心作为种子点。 表面投影:对于种子点,我们将它们投影到底层表面 上以获得投影点。投影方向和距离由两个专门的隐式神经函数估计。 投影校正:由于表面 是未知的,我们不能信任所有的投影点。投影校正步骤,包括种子校正和投影距离校正,旨在去除不可靠的投影点。之后,我们获得了粗略的密集点云。 任意尺度点云生成:我们进一步去除了由远种子点生成的投影点,以实现精细的密集点云。最后,我们通过最远点采样调整生成的密集云的顶点数量,以获得所需的上采样因子。
B. 种子采样
C. 表面投影
投影方向估计。我们定义 作为估计投影方向 的函数,它以查询点 和稀疏点云 作为输入: 为了减少计算复杂性,我们取 中 个最近点作为输入,而不是整个 。我们将这个点的子集记作 。此外,为了方便神经网络的推理过程,我们通过将 设置为原点来对点坐标进行归一化。这样,我们可以简化估计函数为: 其中 。 投影距离估计。我们定义 作为估计投影距离 的函数,它以查询点 、最近点子集 和估计的投影方向 作为输入: 归一化在此也有所帮助。与 不同,这里输入 涉及方向。因此,它应该对位置和方向都进行归一化,这可以通过两个阶段完成:1) 将 移动到原点;2) 应用旋转矩阵 将 旋转到特定方向 ,即 。归一化后, 变为 ,这是 唯一需要的输入: 神经网络设计。 和 都遵循编码器-解码器框架[21],如图2所示。在本文中,我们采用DGCNN[27]作为编码器来处理归一化的点子集,它输出一个2048维的特征向量。然后这个特征向量被送入解码器,解码器由4个全连接(FC)层组成。前三层带有批量归一化和ReLU,它们的输出维度分别为1024、512和128。最后一层带有批量归一化,输出维度为3,用于估计方向 ,或1用于估计距离 。值得注意的是,这项工作的主要贡献不包括网络架构设计。在这里,我们使用一个简单的神经网络来验证我们的想法的可行性。我们的框架可以自由地使用更复杂和强大的神经网络。
D. 投影校正
种子校正:对于某个种子点 ,我们用隐式函数 估计的投影方向表示为 ,并且最近的三角形到 记为 。在理想情况下,这三个顶点 ,即参考顶点,应该位于对象的同一部分,如图3左侧所示。在这种情况下,我们可以正确估计投影方向,并在表面上获得正确的投影点。然而,如果对象的两个部分彼此靠近,例如图3中的小猫的头部和身体部分,参考顶点可能分布在不同的部分。这种情况会导致在这两部分之间中间的错误种子点,如图3右侧所示。这种情况下采样的种子进一步导致无数和无序的异常值,使上采样的点云变得嘈杂。不幸的是,以这种方式产生的异常值不能通过下一节将要介绍的后处理异常值去除策略有效去除。因此,需要种子校正机制来防止不良种子采样。
投影距离校正:由隐式函数 估计的投影距离也不可避免地存在一定程度的误差。如图6所示,尽管生成的点云看起来是平面的,但如果我们放大详细部分,可以发现投影点到底层表面仍有显著的偏差。为了减少投影误差,我们提出从多个视图进行投影,并选择平均投影点作为最终的表面重建。具体来说,如图7所示,我们围绕 采样额外的 个种子 ,这些种子应满足以下属性:
,意味着额外的种子位于 的同一平面内; ,意味着这些种子均匀分布; ,其中 是一个参数,决定了 到 的距离。
E. 任意尺度点云生成
细尺度异常值去除:在种子采样步骤中,由于近似误差,一些远离 的点可能被包含在种子点集 中。这些点的法向量和距离无法很好地估计,导致结果密集点云中的异常值。我们转向利用后处理程序来去除它们。具体来说,对于一个投影点 ,我们找到它的 个最近点 。然后我们计算 和它们的平均偏差:
最终点云生成:上述过程无法准确控制生成的顶点数量。因此,有必要调整顶点数量以实现所需尺度因子的上采样。在我们的上下文中,我们首先对生成的点云进行逆归一化,然后通过最远点采样算法[28]调整顶点数量到 。
F. 加速策略
种子校正的加速:我们不通过 估计 的投影方向,而是找到 最近的点,并使用它们的投影方向作为 的近似。 投影距离校正的加速:我们转而在最远点采样之后进行这一步。通过这种方式,需要校正的点的数量从种子点的数量 () 减少到输出点的数量 ()。
Ⅳ. 实验
A. 数据集
训练数据集。对于训练,我们从ShapeNet[29]的一个子集中构建了两个数据集来分别训练 和 。首先,我们使用TSDF-Fusion[21]、[30]预处理ShapeNet以获得标准化的水密网格。然后我们为 和 准备了训练数据集如下: 对于 ,每个训练数据包括三部分:一个种子点 和一个稀疏点云 作为输入,一个投影方向 作为真实值。对于每个网格,我们随机选择了50 K个种子点,这些种子点到网格表面的距离在预设范围内。由于在种子采样中引入的中点可能位于范围 之外,我们将 扩展到 以增加鲁棒性。然后对于每16个种子点,我们在网格上非均匀地采样了2048个点作为 。最后,对于每个种子点,我们找到表面上最近的点。由于预处理可能会引入噪声,我们在最近点周围采样了10个点,并使用从种子点到它们的归一化平均向量作为 。 对于 ,每个训练数据包括四部分: 和 作为输入,一个投影距离 作为真实值。 和 的生成与 相同。由于在距离校正中额外种子的投影方向可能不垂直于网格表面,我们向 添加噪声,然后计算 和网格表面之间的交角。如果角度大于预设阈值 ,则移除该种子点。否则,我们使用种子点和投影点之间的距离作为 。
测试数据集。对于测试,我们在合成和真实扫描的数据集上进行实验比较: 合成测试数据集是使用 [8]、[17] 采用的数据集生成的,包含 20 个测试网格模型。我们使用 Poisson 圆盘采样在每个模型上非均匀采样 2048 个点作为合成数据集,而真实点云由 [17] 提供。 为了评估比较方法的泛化能力,我们构建了一个包含 6 个来自不同数据集的真实扫描点云的全面测试数据集:1) Kitti [13],一个户外 LiDAR 数据集。2) ScanObjectNN [31],一个稀疏对象数据集。3) Visionair [32],另一个由不同设备扫描的对象数据集。4) 8iVFB v2 [33],一个密集的逼真动态数据集。我们从前三大数据集中选取一个点云,并从 8iVFB v2 的 Basketball 序列中提取 3 帧作为扫描数据集。
B. 比较研究
固定尺度上采样方法,包括 PU-GAN [14]、PU-GCN [10]、PU-DR [11]、PU-Flow [24]。这些方法使用针对特定尺度因子训练的各种神经网络。具体来说,对于 PU-GAN [14]、PU-GCN [10] 和 PU-DR [11],它们还采用 Poisson 圆盘采样生成非均匀数据集。为了公平比较,我们重新训练了四个特定模型,分别对应于尺度因子 2×、4×、8×、16× 在它们的训练数据集上,遵循它们的默认设置。PUFlow [24] 利用不同的训练数据集进行均匀和非均匀情况的训练。为了公平比较,我们在非均匀数据集上重新训练了四个不同的模型,分别对应于不同的尺度因子。 任意尺度上采样方法,包括 Meta-PU [17]、MAFU [18]、NeuralPoints [25] 和我们的。这些方法使用统一的神经网络处理所有尺度因子。具体来说,对于 Meta-PU [17],其模型在非均匀数据集上训练,并且可以实现高达 16× 的上采样,因此我们直接使用预训练模型进行比较。对于 MAFU [18] 和 NeuralPoints [25],由于它们在均匀数据集上训练,我们通过 PU-GAN [14] 采用的采样方法在它们的训练模型上生成非均匀数据集,并重新训练它们的模型。
C. 参数设置
D. 客观性能比较
评估指标。我们采用六个常用的指标进行客观性能评估:1) Chamfer Distance (CD) [8],2) Earth Mover Distance (EMD) [8],3) F-score [34],4) 点到表面距离的平均值 (P2F),5) P2F 的标准差 (std) [8],以及归一化均匀系数 (NUC) [8]。其中,CD、EMD 和 F-score 衡量上采样结果与真实密集点云之间的差异,而 P2F 平均值和 P2F 标准差衡量上采样结果与真实网格之间的距离。NUC 评估结果的均匀性。对于 F-score,值越大表示质量越好,而对于其他指标,值越小表示质量越好。 定量比较。在表 I 中,我们提供了四种不同尺度因子:2×、4×、8×、16× 的定量比较结果。这些值是合成数据集中 20 个测试点云关于 CD、EMD、F-score、平均值和标准差指标的平均结果。可以看出,尽管所提出的方法是基于自监督的,它在平均值和标准差指标方面实现了最佳性能,超过了其他基于监督学习的方法。由于所提出的种子校正,我们可以有效地移除显著降低性能的异常值。此外,我们的方法在 CD、EMD 和 F-score 指标方面实现了与比较的基于监督学习的方法相当的性能,且在训练中不需要访问真实点云。
E. 主观性能比较
合成数据的视觉比较。在图 9 中,我们展示了 4× 上采样的 Cow 和 Quadric 的视觉比较结果。可以看出,我们的方案产生了更均匀的密集点云,并更好地保留了对象的特征和结构。具体来说,对于 Cow 模型,我们的种子校正策略可以有效地移除大多数异常点,并很好地恢复对象的形状。在比较的方法中,只有 PU-DR 可以提供类似的结果。对于 Quadric,比较的基于监督学习的的方法在轮廓周围引入了一定的异常点,因为它们无法识别对象的结构,相比之下,我们的方法可以有效地减少异常点的数量,并在细尺度异常值去除后实现最佳的视觉结果。在图 10 中,我们提供了 16× 上采样的 Coverrear_Lp 和 Chair 的视觉比较结果。随着上采样尺度因子的增加,大多数算法识别对象特征的能力降低。因此,即使对于像 Coverrear_Lp 这样结构简单的模型,也会在上采样模型中引入一定数量的噪声点,导致重建表面不均匀。相比之下,我们的算法受尺度因子变化的影响较小。例如,对于包含更复杂结构的 Chair,其他比较的算法无法正确恢复对象的形状,而我们的算法仍然可以实现良好的视觉结果。 真实扫描数据的视觉比较。为了进一步展示我们方法的优越性,我们从真实扫描数据集 Kitti [13]、ScanObjectNN [31]、Visionair [32]、8iVFB v2 [33] 中选择了四个模型,并在它们上进行 4× 上采样。在图 11 中,我们展示了来自 Kitti 和 Visionair 数据集的两个模型的上采样结果。由于 Kitti 和 Visionair 中的点云尺寸较大,我们仅显示模型的部分以便于说明。可以发现,与最新的基于监督的方法相比,我们的方案可以有效地移除异常值,并产生均匀的密集点云。在图 12 中,我们展示了来自 ScanObjectNN 的一个模型的上采样结果,其中包含更复杂的结构。可以看到,只有我们的方案可以很好地恢复突出区域的结构。其他比较的方法受到噪声点的影响,这降低了重建结构的质量。在图 13 中,我们展示了来自 8iVFB v2 的 Soldier 模型的上采样结果,这是一个动态点云数据集。由于空间限制,这里我们仅展示了 Soldier 的三帧上采样结果。我们的方法也可以在相同序列的不同帧上保持稳定的上采样效果。它可以准确地恢复对象的轮廓,并生成均匀、连续且密集的动态点云。在不同真实扫描数据集上的实验表明,我们的算法具有令人满意的泛化能力,在不同扫描设备生成的点云上都能取得良好的上采样结果。
F. 消融研究
关于投影校正的有效性。我们进行消融研究以验证投影校正步骤的使用。从表 III 可以看出,关于平均值和标准差,仅使用种子校正可以在一定程度上提高性能;如果同时使用种子校正和距离校正,性能可以进一步提高。这些结果验证了投影校正步骤的有效性。此外,与原始版本的投影校正相比,其加速版本可以在几乎不损失性能的情况下将处理时间显著降低至 116%。 关于种子采样中 M 的选择。M 决定了种子点的一致性。M 的值越大,种子点的一致性越高。为了确定 M 的适当值,我们在 M = 5、10、15 和 4× 尺度因子下对 Cow 模型进行了实验。视觉比较结果如图 14 所示。观察到,当 M = 5 时种子点中存在孔洞,当 M = 10 时消除了这些孔洞。然而,进一步增加 M 超过 10 并不会提高一致性,反而会增加处理时间。因此,我们选择 M = 10。 关于种子采样中 l 的选择。l 决定了种子点的数量。由于本文中的尺度因子高达 64×,l 的值应该足够小,以生成足够数量的种子点。然而,使用过小的 l 值会增加表面投影的时间成本,因为其与种子点的数量成正比。为了找到合适的 l 值,我们测量了不同 l 值在合成数据集上的平均种子点数量,其中数据集中的每个输入云包含 2048 个点,种子点的最大数量是 2048 × 64 = 131072。结果如表 IV 所示。从表中可以观察到,当 l 设置为 0.004 时,平均种子点数量是最大数量的 1.7 倍。这确保了我们能够在大多数输入点云上实现 64× 的上采样。因此,我们在实验中将 l 设置为 0.004。 关于表面投影中 k 的选择。k 决定了输入到 或 的点的数量。为了确定 k 的最优值,我们在相同的训练数据集上训练了 4 个不同的网络,k = 50、100、200、400。然后我们使用不同的网络对合成数据进行上采样,并使用 4× 尺度因子。客观结果如表 VI 所示。所提出的方法在 k = 100 时表现最佳。 关于表面投影中归一化的必要性。为了证明归一化的效果,我们训练了两个网络 和 进行比较。由于所提出的网络架构只接受归一化的点云作为输入,我们引入了额外的全连接层,为 和 中的 生产 64 维特征向量,并将这些向量与相应解码器中的第一个全连接层的输出进行连接。客观结果如表 VII 所示。所提出的归一化策略显著提高了性能。 关于距离校正中 T 的选择。增加 T 可以提高客观性能,但同时也导致了处理时间的增加。我们使用 T 从 3 到 7 的值对合成数据进行上采样,以确定最优值。为了评估,我们引入了一个新的指标,称为总和,它是四个指标(CD、EMD、平均值和标准差)的总和,这些指标具有相似的值。结果如表 V 所示。每增加 1 个 T,平均时间增加 1.2 秒。因此,我们选择 T = 5 以在性能和成本之间取得良好的平衡。
Ⅴ. 结论
声明
#论 文 推 广#
让你的论文工作被更多人看到
你是否有这样的苦恼:自己辛苦的论文工作,几乎没有任何的引用。为什么会这样?主要是自己的工作没有被更多的人了解。
计算机书童为各位推广自己的论文搭建一个平台,让更多的人了解自己的工作,同时促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 计算机书童 鼓励高校实验室或个人,在我们的平台上分享自己论文的介绍、解读等。
稿件基本要求:
• 文章确系个人论文的解读,未曾在公众号平台标记原创发表,
• 稿件建议以 markdown 格式撰写,文中配图要求图片清晰,无版权问题
投稿通道:
• 添加小编微信协商投稿事宜,备注:姓名-投稿
△长按添加 PaperEveryday 小编