"); //-->
3D 计算机视觉和计算机图形学的一个基本问题是如何表示 3D 数据。鉴于深度学习在 2D 计算机视觉领域的成功推动了深度学习在 3D 视觉和图形领域的广泛采用,这个问题变得尤为重要。
事实上,深度网络已经在 3D 分类、3D 分割、3D 检测、3D 重建和新颖的视图合成。计算机视觉网络依赖于直接 3D 表示、图像上的间接 2D 投影或两者的混合。
使用间接方法处理 3D 视觉任务具有三个主要优势:
多视图方法在 3D 形状分类和分割方面取得了令人印象深刻的性能。然而,多视图表示(尤其是密集预测)的挑战在于将每个视图的特征与 3D 点云正确聚合。需要进行适当的聚合以获得具有代表性的 3D 点云,每个点具有适用于典型点云处理管道的单个特征。
以前的多视图工作依赖于将像素映射到点后的启发式方法(例如平均或标签模式池化),或与体素的多视图融合。由于某些原因,此类设置可能不是最佳设置。
为此,本文提出了一种新的混合 3D 数据结构,它继承了点云的优点(即紧凑性、灵活性和 3D 描述性),并利用了多视图投影丰富的感知特征的优势。将这种新表示称为多视图点云(或 Voint cloud),并在图 1 中进行了说明。
Voint cloud是一组 Voint,其中每个 Voint 是一组与视图相关的特征(视图特征),对应于3D 点云中的相同点。这些视图特征的基数可能因一个 Voint 而异。在表1 中,比较了一些广泛使用的 3D 表示和我们的 Voint cloud表示。
Voint cloud继承了显式 3D 点云的特征,这有助于学习用于各种视觉应用(例如点云分类和分割)的 Voint 表示。为了在新的 Voint 空间上部署深度学习,定义了 Voint 上的基本操作,例如池化和卷积。
基于这些操作,定义了一种构建 Voint 神经网络的实用方法,称之为 VointNet
(i) 本文提出了一种新颖的多视图3D点云表示方法,称为Voint cloud。在这种表示方法中,每个点(即Voint)由来自不同视角的一组特征表示。
(ii) 本文在Voint级别定义了池化和卷积运算,用于构建Voint神经网络(VointNet )。VointNet 能够学习从Voint空间中的多个视图聚合信息。
(iii) 本文的VointNet 在多个3D理解任务上取得了最好的性能,包括3D形状分类、检索和稳健的部分分割。此外,VointNet 还实现了对遮挡和旋转的鲁棒性改进。通过引入Voint cloud表示和VointNet 网络,在处理3D点云数据时取得了显著的改进,并在多个任务中取得了优越的性能,提高了对复杂3D场景的理解和分析能力。
相关背景3D 点云的学习3D点云学习是计算机视觉中广泛应用的一种方法,而点云由于其紧凑、灵活性以及可以通过LiDAR和RGB-D相机等传感器自然获取的特点,在3D表示中被广泛使用。
在这项研究中,本文提出了一种新颖的表示方法,称为Voint cloud,用于3D形状表示,并研究了一种新颖的架构,用于在3D点级别聚合视图相关的特征。通过引入Voint cloud表示和相关架构,对3D点云的学习和表示提出了新的方法,进一步推动了这一领域的发展。
3D 多视图多视图应用最初是于1994年提出的,使用2D图像来理解3D世界。这种直观的多视图方法与MVCNN(Multi-View Convolutional Neural Networks)中的3D理解深度学习相结合。随后,一系列工作通过改进每个图像视图的视图特征的聚合,继续开发用于分类和检索的多视图方法。
在本文中,将多视图的概念融合到3D结构本身中,使每个3D点根据可用的视点具有一组独立的视图特征。Voints与采样的3D点云对齐,提供紧凑的表示形式,既能高效计算和节省内存,又保持了视图相关的组件,促进了基于视图的视觉学习。
3D数据的多视图混合在一些3D语义分割任务中,也有一些方法尝试采用多视图方法。然而,当组合视图特征以表示局部点或体素并保留局部几何特征时,会遇到问题。这些方法往往会对视图特征进行平均、仅标签、从邻域中的重建点学习、对单个网格上的点进行排序,或将多视图特征与3D体素特征相结合。
因此,本文提出的VointNet 在Voint cloud空间中运行,同时保留了原始点云的紧凑性和3D描述性。VointNet 利用多视图功能的强大能力,并学习将视图特征独立应用于每个点并进行聚合。这样的设计使得VointNet 在多视图任务上取得了良好的性能表现。
Method 方法Pipeline研究工作中的主要假设是表面 3D 点是球面函数,即它们的表示取决于观察它们的视角。这种情况与大多数假设 3D 点云的视图独立表示的 3D 点云处理Pipeline形成对比。完整的Pipeline如下图所示。
从点云到 Voint cloud —— From Point Clouds to Voint clouds图2:从 Voint cloud中学习。
- 为了构建 3D Voint cloud ,渲染器 从视点 渲染点云 ,并通过 2D 主干 从生成的图像中提取图像特征。
- 然后,图像特征通过 投影到 Voint 云并通过到VointNet 。
- 为了学习 和 ,输出点上的 3D 损失与 上可选的辅助 2D 损失一起使用。
3D点云是由3D对象或场景表面上的采样点组成的紧凑3D表示,可以通过不同的传感器获取,如LiDAR或重建结果。
在本文中,目标是将视图依赖性融合到3D点中。受到NeRFs(Neural Radiance Fields)的启发,假设表面点的特征也取决于观察它们的视角方向。
Voint 将同一个 3D 点的多个视图特征结合在一起。这些视图特征来自于点云渲染器 对点云 进行多视图投影的结果:。
此外,渲染器 R 还为每个视图的每个点输出可见性二元矩阵 。
渲染图像通过函数 进行处理:,提取图像特征,具体示意如图2所示。
本文提出了一个模块 ,用于将每个像素的2D特征反投影为相应点的3D视图特征。利用由渲染器创建的映射, 形成Voint云特征 。
总之,输出的Voint云可以用方程(1)描述,其中 ,当 时,特征仅对Voint 的视图 定义。
3D Voint clouds 上的操作 —— Operations on 3D Voint clouds表 1:不同 3D 表示的比较。
- 将一些广泛使用的3D 表示与本文提出的 Voint 云进行了比较。
- 请注意, Voint 云共享 NeRF 的视图依赖性,同时继承了 3D 点云的优点。
在附录中,展示了一组角度的最大池化单个视图特征的函数形式可以近似球坐标中的任何函数。
本文提供了一个定理,该定理扩展了 PointNet 的点云函数组合定理及其对 Voints 基础球函数的通用逼近。
接下来,在 Voint 上定义一组操作作为 Voint 神经网络 (VointNet ) 的构建块。
池化—— VointMax将 VointMax 定义为沿 voint 的视图维度在可见视图特征上的最大池化。对于所有 和 ,
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。