15、三维表面重建-Occupancy Networks

简介

随着深度神经网络的到来,基于学习的三维重建方法逐渐变得流行。但是和图像不同的是,在3D中没有规范的表示,既能高效地进行计算,又能有效地存储,同时还能表示任意拓扑的高分辨率几何图形。很多先进的基于学习的三维重建方法只能表示粗糙的三维几何,或者限制于一个特定的领域。在这篇论文中,作者提出了占用网格,一种新的基于学习的三维重建方法。占位网络隐式地将三维曲面表示为深度神经网络分类器的连续决策边界。与现有方法相比,该表示方式编码了高分辨率的3D输出,并且没有过多的内存占用。同时该方法能够高效地编码三维结构,并且能够从不同种类的输入推断出模型。实验证明,无论是在质量上还是在数量上,对于从单个图像、有噪声的点云和粗糙的离散体素网格进行三维重建,该方法都获得了具有竞争力的结果。

和传统多视图立体几何算法相比,学习模型的方法能够编码3D形状空间中的丰富先验信息,这有助于解决输入的模糊性。生成模型的方法在高分辨率的图像上已经取得了很好的效果,但是还没有复制到3D领域。与2D领域相比,暂时还没有就3D输出表示达成一致,这种表示既能提高内存效率,又能从数据中有效推断

现存的表示方法能够大概分成三类:体素、网格、点云
在这里插入图片描述

贡献点

  • 介绍了一种基于学习连续三维映射的三维几何表示方法
  • 使用此表示法重建各种输入类型的3D几何图形
  • 此表示方法能够生成高质量的网格,并且达到先进技术水平

实现思路

占用网格

理想情况下,我们不仅要在固定的离散的3D位置(就像在体素表示中)考虑占用率,而且要在每一个可能的3D点p考虑占用率。称以下函数为3D物体的占用函数
在这里插入图片描述
这个函数的关键是,可以用一个神经网络来近似这个3D函数,该神经网络分配给每个位置p一个在0到1之间的占用概率。这个网络相当于一个用于二分类的神经网络,而我们关注的是对象表面的决策边界

根据对物体的观察(如图像、点云等),当使用这样的网络对物体进行三维重建时,必须以输入作为条件。作者使用了下面的简单的功能对等:一个函数,它接受一个观察x作为输入,输出一个从点p到R的函数,这可以通过一个函数等价描述:一对(p, x)作为输入和输出一个实数。后一种表示可以用一个神经网络参数化,该神经网络以一对(p,x)作为输入,输出一个表示占用概率的实数
在这里插入图片描述

训练

为了学习神经网络的参数,考虑在对象的三维边界体中随机采样点,对于第i个样本,采样K个点,然后评估这些位置的小批量损失Lb
在这里插入图片描述
xi是B批次的第i个观测值,Oij是点云的真实位置,L是交叉熵损失

该方法的性能取决于用于绘制用于训练的pij位置的采样方案,在带有附加小填充的对象的边界框内均匀采样会产生最好的结果。这个三维表示方法也可以用于学习概率潜在变量模型,定义损失函数如下
在这里插入图片描述
KL表示KL-散度,p0(z)是潜在变量zi(通常为高斯分布)的先验分布,编码器网络gψ(·),位置pij,占位oij,预测潜在z∈RL上高斯分布的qψ(z|(pij, oij)j=1:K)的平均μψ和标准偏差σψ,负对数似然的下界,p((oij )j=1:K |(pij )j=1:K )

推论

为了提取给定训练过的占用网络的新观测对应的等值面,引入了多分辨率等值面提取(MISE),这是一种层次化的等值面提取算法。通过增量构建八叉树,MISE使我们能够从占用网络中提取高分辨率网格,而无需密集评估高维占用网格的所有点

在这里插入图片描述

  • 把要判断的范围按一个粗粒度的初始分辨率分成grid。每个grid有一些角点(三维的话相当于一个cube,有8个顶点)
  • 所有这些角点,用训练好的网络计算出occupancy value (0-1之间的实数).
  • 网络超参数τ ,物体厚度。大于等于τ 的为occupied,否则为unoccupied. (可以认为边界点的occupancy value 为τ。)
  • 如果一个grid,他有的角点是occupied,有的是unoccupied,那他就是active的grid。(淡红色的那些grid)
  • 把所有active的grid再次细分,(对半分,最后一共八个)。重复以上步骤,直到满足目标分辨率。
  • 用marching cubes 算法来得到mesh。(线性插值认为一个grid的一条边中,和等值面的交点由顶点值做线性插值计算。(等值面是occupancy value为τ 的面)
  • 用一阶和二阶梯度来优化一下得到的mesh
  • 从输出网格的每个面随机采样点pk,并将损失降到最低
    在这里插入图片描述
    n(pk)为pk处网格的法向量,λ = 0.01
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 占用网络是一种用于3D形状建模的深度学习方法。它使用神经网络来预测物体的占用空间,即物体在3D空间中的位置和形状。这种方法可以用于物体识别、姿态估计、形状重建等应用。占用网络的优点是可以处理不规则形状和变形物体,并且可以从单张图像中进行3D重建。 ### 回答2: Occupancy Networks是一种用于3D形状生成和分割的机器学习框架。它与传统的基于网格的方法不同,因为它不需要先对形状进行分割或预处理,并且可以在不同的形状之间共享学习,并且可以生成不同的形状变体。 这个框架的核心是一个神经网络,它可以预测整个三维空间的占据概率函数,指示了该空间中是否存在形状点。 这个网络可以被训练来生成新的3D形状,即使在训练集中没有这些形状的情况下。 Occupancy Networks的优点之一是它可以处理高维空间数据,因为常规的基于网格的方法可以很快消耗内存和处理时间。与传统的3D形状生成方法相比,Occupancy Networks具有优点,因为它可以提供更加准确和一致的形状生成,还可以根据指定的条件生成不同的形状变体。此外,它也具有较强的通用性,可以用于多种形状生成任务,包括3D渲染,建筑设计,医学图像分割和创建虚拟现实环境等领域。在实际应用中,Occupancy Networks具有潜在的应用价值,可以帮助人们更好地掌握和创造3D形状,推进计算机视觉技术的进步和发展。 ### 回答3: Occupancy networks是一种用于三维物体重建和生成的深度学习模型,最初由一组德国和美国研究人员在2019年提出。 Occupancy networks的关键思想是建立一个函数,该函数将三维物体的空间位置映射到其占据体的概率。在训练期间,该函数被用来预测给定三维物体的占据情况,而在生成期间,该函数可以被用来生成新的三维模型。 与传统的三维重建和生成技术相比,Occupancy networks有多个优点。首先,该方法可以处理任意形状和复杂度的三维物体,而不需要特别的先验知识。其次,模型能够从不同的角度观察三维模型,并从这些观察中提取更丰富的表示,更好地反映真实世界中的物体。最后,Occupancy networks能够进行端到端的训练,并且能够在输出时进行随机采样,因此可以生成具有一定随机性的三维物体。 另外,Occupancy networks也有一些挑战和限制。例如,该方法可能需要大量的数据,以克服三维空间的样本稀缺性。此外,Occupancy networks的训练和生成成本很高,需要更强的计算资源。 总而言之,Occupancy networks是一种有前途的三维物体重建和生成模型,它在许多方面的性能都有了很大的进步,但仍需要更多的研究和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值