Neural 3D Reconstruction in the Wild

论文提出了一种针对野外环境的神经3D重建方法,结合体素和表面引导采样技术,提高重建效率和准确性。通过SfM点云初始化和外观嵌入处理光照变化,优化神经辐射场的采样策略,减少冗余样本,实现了大规模场景的高精度几何重建。同时,引入新的基准数据集Heritage-Recon进行评估。
摘要由CSDN通过智能技术生成

Neural 3D Reconstruction in the Wild :野外神经元的三维重建
摘要:论文提出了一种方法,根据不准确的照片集实现表面重建。提出了一种混合体素和表面引导采样技术,该技术允许在表面周围进行更有效的射线采样,并导致重建质量的显著改善。
主页:https://zju3dv.github.io/neuralrecon-w/
介绍:
各种类型的互联网数据集需要高度的可扩展性和鲁棒性,神经3D重建技术必须有效地处理这样的图像集合,而不牺牲以不同粒度的几何细节为特征的复杂场景中的准确性。除了对大场景和图像集合的可缩放性之外,现有的重构方法通常假设恒定照明并且利用输入图像上的光度一致性。相比之下,对于野外场景,对外观变化的鲁棒性是另一个关键要求。论文提出了方法,可以有效地重建表面几何的大规模场景在变化的照明存在
使用外观嵌入对外观变化进行建模,使用网格作为输出
为了提高效率,提出了一种采样技术,论文中介绍:a.用于优化神经辐射场(NeuS)的标准射线采样策略是高度冗余的。b.为了减少冗余训练样本,首先利用运动恢复结构(SfM)的稀疏点云来初始化生成样本的稀疏体积。c.将这种体素引导策略与表面引导采样技术相结合,将来自先前训练迭代的SDF值存储在稀疏体素中,并且在以估计的表面位置为中心的较小范围内生成样本,后者基于当前优化状态生成样本,如下图,从(a)到(b)到(c)的每个采样策略所考虑的体积的每个连续区域逐渐变小,如2D蓝色和红色边界框所示。
在这里插入图片描述

这里不仅使用SfM点云,而且使用表面近似,产生以真实表面为中心的新样本。该策略指导网络用近表面样本解释渲染颜色,从而实现更精确的几何拟合。

1、METHOD

通过优化图像重建损失来重建3D场景作为神经网络的权重,使用NeRF in the Wild中的潜在外观建模场景,扩展NeuS中的场景表示获得表面几何形状。
使用两个神经隐式函数表示场景,d和ci通过MLP编码,给定场景中的点x ∈ R3,观看方向v ∈ S2和图像索引𝑖,我们有:在这里插入图片描述
第一个是训练SDF网络,点的位置映射到物体的符号距离,
第二个网络对点,观看方向,外观特征进行训练,得到每张图片对应的颜色(公式强调了颜色c对每张图的依赖性,张图的外观特征由于光照时间等因素都是不一样的。具体参考NeRF in the wild)
ei(i=1~N)是与MLP的参数一起优化的、对应于每个输入照片的外观嵌入。使用函数𝑑来近似到真实曲面的带符号距离𝑆
在这里插入图片描述
函数𝑐𝑖模拟3D点x在给定图像中的外观𝑖,允许每个输入图像的不同外观。MLP参数和外观嵌入通过优化真实的照片和经由体绘制方案绘制的图像之间的颜色一致性来学习:给定一条射线,{r(𝑡)= o +𝑡v|𝑡≥ 0},其中o表示摄像机中心,可以将该光线对应于图像的期望颜色C𝑖(r)渲染𝑖为:𝑤(𝑡)是无偏和遮挡感知权重函数,参考NeuS在这里插入图片描述

2、Efficient Sampling during Training

NeuS使用由粗到细的分层采样策略,定义了一个单位边界球,以分离场景的背景和前景部分。粗采样点沿着射线和边界球的两个交点之间的射线被规则地采样。基于来自先前迭代的样本来迭代地生成精细级别样本。对于大规模场景来说,效率很低。
体素引导采样:为了加速训练,首先通过将搜索空间从整个单位球体减小到包含真实表面位置的较小空间范围来去除不必要的训练样本。具体地,粗糙的初始表面估计由SfM在估计的相机姿态旁边产生的稀疏点云提供。
因此,在训练开始时,从稀疏SfM点云生成稀疏体积Vsfm。该稀疏体积通过3D膨胀操作来扩展,以确保大多数可见表面被该体积包围。然后,给定射线的采样范围可以减小到每条射线与Vsfm之间的入交点和出交点,并且在该阶段期间采样𝑛𝑣个点。
称这种采样技术为体素引导采样。利用SfM中已经可用的3D信息作为更明确的指导,以减少点采样的搜索空间。此外,构建的稀疏体素提供了将场景粗略分离成前景和背景区域,并且通过去除不与稀疏体素相交的射线(例如,天空中的背景射线),所需的训练射线的数量通常可以减少30%以上。
表面引导取样:为了训练几何MLP𝑑以精确地拟合3D表面,在真实表面周围生成尽可能多的样本是有益的。NeuS通过多次迭代精细级重要性采样实现高采样密度,逐步引导样本向表面位置移动。这种策略很耗时,因为必须通过几何MLP生成大量不必要的样本𝑑 用于多次迭代。
因此,论文提出了一种表面引导采样策略,进一步增加了真实表面周围的采样密度。 在通过体素引导采样引导训练之后,利用来自先前训练迭代的表面位置估计来生成新样本。为了实现这一点,将来自先前迭代的SDF预测缓存在稀疏体素Vcache内,并在每次训练迭代时从该缓存查询表面位置。Vcache是在Vsfm上构建的八叉树,深度级别为l。对于查询的曲面位置𝑥,查询𝑛𝑠曲面位置周围较窄范围(𝑥−𝑡𝑠,𝑥+𝑡𝑠)内的多个样本。Vcache在训练期间定期更新,以确保存储的SDF值是最新的。
高速缓存的表面位置提供真实表面位置的良好近似,从而导致网络改进先前的估计。表面引导采样引导网络使用真实表面位置周围的采样解释渲染颜色,使网络能够更准确地拟合几何体。如消融研究所示,如果没有表面引导采样,即使给予足够的时间,训练也不能收敛到相同的准确度。
在这里插入图片描述
上图中可视化来自射线的样本,这些射线对应于右图中红色框中的像素。
NeuS中的分层采样(左上)使用了一组冗余的精细级别样本(总共1024个),而表面引导采样(左下)使用的样本要少得多(总共24个)。在精细级别采样的最后一次迭代中,来自表面引导采样(右下)的样本比来自NeuS(右上)的样本更密集,更接近表面,从而引导网络以更详细的信息准确拟合表面几何。

混合采样:仅使用表面引导采样将导致体素边界周围的伪影,因为对空白空间的监督不足。为了避免这个问题,使用体素和表面引导采样的混合。体素引导样本比表面引导样本稀疏得多,因为它们是在大得多的搜索范围内生成的。在表面引导采样之后,使用另一次重要性采样迭代,以确保良好的采样密度,使沿着每条射线的样本总数达到𝑛𝑣+2 ×𝑛𝑠

3、Additional Details

处理瞬态对象

实验发现,如果直接使用NeRF-W中提出的动态对象建模策略,瞬时NeRF将支配所渲染的颜色。结果,所有场景结构都将通过NeRF而不是几何MLP d建模为与视图相关的瞬态效应,因为𝑑与NeRF相比收敛得更慢。论文改为使用分割mask来移除训练期间属于动态对象的射线。

监督信号和处理没有纹理的天空

类似NeuS,使用L1损失来监督渲染的彩色图像Lcolor,并使用正则化项LREG来正则化SDF。
由于无纹理天空缺乏运动视差,因此如在NeuS中那样直接使用背景NeRF用于前景-背景分离将导致包含在球形壳中的重建。𝑉sfm中的其余背景光线(主要是天空)使用语义mask进行标记,并使用LMASK作为可用空间进行惩罚。应用具有小权重的LMASK,这可以去除天空而保持前景结构完整。

4、THE HERITAGE-RECON BENCHMARK

为了评估方法,需要真实3D几何图形。然而,目前还没有将互联网照片集与地面实况3D相匹配的数据集。因此,论文引入了一个新的基准数据集Heritage-Recon,它来自Open Heritage 3D。
使用SfM 配准每个场景的图像,以获得相机姿态和稀疏点云。为每次扫描手动选择边界框作为感兴趣区域(ROI),以进一步减小点云的大小。
坐标对齐:由于SfM重建和激光雷达扫描具有不同的坐标系,因此在评估之前必须将它们对齐。为了对准它们,首先通过SfM的轨迹长度和重投影误差对从SfM获得的稀疏点进行滤波,并使用经过仔细调整的参数的ICP将得到的点云对准激光雷达扫描。对准质量可以在图4中进行目视检查。通过使用激光雷达扫描渲染的深度图从SfM重新投影一组特征轨迹来定量检查对准质量。在所有场景中,由此产生的重投影误差都小于一个像素,其精度水平与SfM相当。
能见度检查:LiDAR扫描和图像覆盖场景的不同部分。仅应使用输入图像可见的扫描区域进行评价。从SfM点云导出LiDAR扫描的可见性信息,这保证了图像可观察到。为了最大限度地覆盖真实可见区域,使用LoFTR 运行SfM并生成半密集点云。通过在SfM点云周围生成具有相对较大体素大小的体素来过滤LiDAR点。
在这里插入图片描述
上图中,勃兰登堡门上LiDAR扫描的对准质量。我们将LiDAR扫描的点云绘制成深度图,方法是将点投影到对齐的SfM坐标系中的一组相机视图上。渲染的深度图按深度进行颜色编码(暖色更接近),并与相应的图像重叠。对准的精度可以例如在图像和深度边缘的一致性中观察到。

我们的方法继承了NeRF类方法的局限性。例如,不准确的摄像机配准会影响最终重建质量。此外,由于我们的模型只从已知的图像观测中学习表面位置,而没有强加特定于域的先验,因此它可能无法在不可见区域产生精确的几何形状。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值