0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NerfingMVS:引导优化神经辐射场实现室内多视角三维重建

3D视觉工坊 来源:3D视觉工坊 2023-02-13 11:20 次阅读

本文是对我们ICCV 2021被接收的文章NerfingMVS: Guided Optimization of Neural Radiance Fields for Indoor Multi-view Stereo 的介绍。在这个工作中,我们通过对神经辐射场(NeRF)进行引导优化,实现了室内的多视角三维重建(multi-view stereo)。很荣幸地,我们的文章被接收为ICCV 2021的Oral论文,目前项目代码已开源,欢迎大家试用和star~

a062c806-ab48-11ed-bfe3-dac502259ad0.png

a07158bc-ab48-11ed-bfe3-dac502259ad0.gif

效果展示

arXiv:https://arxiv.org/abs/2109.01129

主页:https://weiyithu.github.io/NerfingMVS/

Code:https://github.com/weiyithu/NerfingMVS

概述

熟悉3D视觉领域的朋友们都知道,近一年来NeRF大火。NeRF概括来说是一个用MLP学习得到的神经辐射场。它的训练数据是多视角的RGB图片。学得的神经辐射场可以表示场景的三维结构,从而实现新视角的视图合成。对NeRF更加具体的介绍,请大家参考林天威:https://zhuanlan.zhihu.com/p/360365941

既然Nerf可以表示场景的三维信息,一个自然的想法是能不能将NeRF应用到室内场景三维重建任务中呢。NeRF有着一些优势:相较于传统的MVS,SfM算法,NeRF蕴含了整个场景的信息,所以有潜力重建出低纹理区域的三维结构;而相较于另一个在线优化的深度估计算法CVD ,NeRF不需要显示地对不同视角的像素进行匹配,这一点在室内场景是很难做到的。但可惜的是,原生NeRF在室内场景中存在形状辐射歧义(shape-radiance ambiguity)的问题。这个问题的大致意思是NeRF可以合成出高质量的新视角的RGB图片,但它却没有学会场景的三维结构。

为了解决这个问题,我们提出了NerfingMVS。我们方法的核心是用网络预测出来的深度先验去引导神经辐射场的优化过程。我们首先用SfM得到的稀疏深度训练一个专属于当前场景的单目深度网络。之后用这个单目深度网络预测的深度图来指导NeRF的学习。最后我们根据视角合成的结果利用滤波器去进一步提升深度图的质量。在ScanNet上的实验结果表明,我们的方法超过了当前最好方法的性能,并且我们还提升了新视角RGB图片的质量以及缩短了三倍的NeRF训练时间。

方法

a90a4970-ab48-11ed-bfe3-dac502259ad0.jpg

我们的方法分为三个步骤:场景敏感的深度先验,神经辐射场的引导优化,基于合成视图的深度图滤波。

场景敏感的深度先验:与CVD类似,我们同样利用了神经网络预测出来的深度先验。但不同的是,为了进一步提升深度先验在当前场景的精度,我们利用SfM重建出的稀疏深度对单目深度网络进行了微调(finetune)。这一步的目的其实是让这个深度网络过拟合在当前场景上。具体来说,我们使用了COLMAP算法得到了多视角融合的点云,并将点云投影到各个视角下得到每个视角的稀疏深度。由于多视角融合的点云是经过了几何一致性校验的,因此虽然深度是稀疏的,但也是相对准确的。此外,由于尺度歧义的问题,我们使用了尺度不变的损失函数:

a939fe54-ab48-11ed-bfe3-dac502259ad0.png

神经辐射场的引导优化:我们发现如果简单地在室内场景应用NeRF无法得到正确的三维重建结果。这其实就是所谓的形状辐射歧义现象,换句话说,NeRF可以很好地拟合出训练视角的RGB图片(图(a)),但却没有学到正确的场景3D结构(图(c))。造成这个问题的本质原因是对于同一组RGB图片,会有多个神经辐射场与之对应。此外,现实室内场景的RGB图片会比较模糊并且图片之间的位姿变换也会比较大,这导致了网络的学习能力下降,加剧了这个问题。

a94f5c68-ab48-11ed-bfe3-dac502259ad0.jpg

为了解决这个问题,我们利用深度先验去指导NeRF的采样过程。我们首先根据几何一致性校验计算得到每个视角深度先验的误差图。具体来讲,我们将每个视角的深度投影到其它视角下并与其它视角的深度计算相对误差。NeRF中每个视角下每条ray的采样中心点为对应位置处的深度先验,采样范围由误差图决定。误差越小,深度先验的置信度越高,那么采样范围就越小;反之,误差越大,深度先验的置信度越低,那么采样范围就越大。

a96e42a4-ab48-11ed-bfe3-dac502259ad0.jpg

基于合成视图的深度图滤波:为了进一步提升深度图的质量,我们最后进行了一步滤波。这步操作是基于一个假设:如果渲染出的RGB都不对,那么对应位置处算出来的深度也往往是错的。因此我们可以根据渲染得到的RGB与真实RGB之间的误差计算逐像素的置信度图:

a98438ac-ab48-11ed-bfe3-dac502259ad0.png

这个置信度图可以被用来滤波,我们这里使用的是平面双边滤波器(plane bilateral filtering)。

实验结果

与SOTA方法对比:

a9a1190e-ab48-11ed-bfe3-dac502259ad0.jpg

a9d9900e-ab48-11ed-bfe3-dac502259ad0.jpg

无论是从定量还是定性的结果来看,我们的方法都达到了当前最好性能,甚至超过了一些有监督的方法:DELTAS,Atlas,DeepV2D。

视图合成结果:

a9f5be0a-ab48-11ed-bfe3-dac502259ad0.jpg

前两行是训练视角,后两行是新视角。尽管视图合成不是我们的主要任务,我们的方法仍显著地提升了NeRF视图合成的结果。训练视角的提升也说明了我们的方法可以帮助NeRF聚焦在更重要的区域并提升网络的性能。此外,我们将NeRF的训练时间缩短至三分之一。

In-the-wild结果展示:

我们用手持相机在家拍摄了一些demo。

aa06ff76-ab48-11ed-bfe3-dac502259ad0.gif

aa6ad9c4-ab48-11ed-bfe3-dac502259ad0.gif

总结与讨论

在这个工作中,我们将传统SfM算法与NeRF结合解决室内多视角重建问题。我们方法的核心是将深度先验引入NeRF中指导它的采样过程。在真实室内场景数据集ScanNet上的实验结果表明,NerfingMVS取得了很好的效果。当然我们的方法现在也存在一些limitations:1. 尽管我们大大加速了NeRF的训练过程,但现在仍无法达到实时。2. 我们需要SfM提供位姿和稀疏深度,因此比较依赖COLMAP的重建结果。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4455

    浏览量

    90756
  • 数据集
    +关注

    关注

    4

    文章

    1178

    浏览量

    24351
  • 3D视觉
    +关注

    关注

    4

    文章

    393

    浏览量

    27299

原文标题:ICCV 2021 Oral | NerfingMVS:引导优化神经辐射场实现室内多视角三维重建

文章出处:【微信号:3D视觉工坊,微信公众号:3D视觉工坊】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    怎样去设计一种基于RGB-D相机的三维重建无序抓取系统?

    为什么要开发一种三维重建无序抓取系统?三维重建无序抓取系统是由哪些部分组成的?三维重建无序抓取系统有哪些关键技术和创新点?
    发表于 07-02 06:29

    如何去开发一款基于RGB-D相机与机械臂的三维重建无序抓取系统

    基于RGB-D相机与机械臂的三维重建无序抓取系统有哪些关键技术?如何去开发一款基于RGB-D相机与机械臂的三维重建无序抓取系统?基于RGB-D相机与机械臂的三维重建无序抓取系统是由哪些部分组成的?
    发表于 09-08 06:12

    无人机三维建模的信息

    建模。(参考另外室内建模也是三维重建吧,基于激光扫描的。其他资料:三维重建技术在无人机方面的应用如何?三维重建未来的学术前景如...
    发表于 09-16 06:55

    智慧医疗//瑞迅科技ARM工控MTB-903助力医疗三维光学重建便携检测机稳定运行

    中,顶部投影机与顶部两个黑白相机进行双目三维重建,中部的个彩色相机补充拍摄人体外观照,快速实现非接触,无辐射全身表面和骨骼进行静态和动态测量,完成测量者身高体重,脂肪指标,骨密度,心
    发表于 12-02 10:03

    基于嵌入式的室内静态场景实时重建系统的相关资料分享

    点击上方“3D视觉工坊”,选择“星标”干货第一时间送达引导语:本文为“3D视觉创新应用(三维重建)竞赛”作品集系列之一,该作品由来自杭州电子科技大学团队完成,团队成员:路荣丰、许成浩、吕坤...
    发表于 12-22 06:48

    基于纹理映射的医学图像三维重建

    提出了一种基于纹理映射的体绘制算法,提高了图像的重建效率,增强了图像的重建效果。算法实现了对二维医学图像序列的三维重建,在目前通用的个人计算机上可以以近似实
    发表于 12-14 11:10 19次下载

    基于FPGA的医学图像三维重建系统设计与实现

    目前大部分的医学图像三维重建过程都是在PC机上完成的,由于PC机本身性能的限制和重建算法的复杂性,使得重建效率不高。针对这个问题,设计与实现了一个基于FPGA(Field Progra
    发表于 03-15 13:52 42次下载

    为什么说三维重建才是计算机视觉的灵魂?

    权龙教授为我们介绍了三维重建的历史发展与应用前景。
    的头像 发表于 07-02 14:18 3.1w次阅读

    透明物体的三维重建研究综述

    透明物体的三维重建一直以来都被认为是很有挑战性的问题。不同于传统重建算法对物体表面的漫反射属性假设,因为透明物体与光线之间存在复杂的,如反射和折射等,与视角相关的光学效应,将导致传统重建
    发表于 04-21 14:21 4次下载
    透明物体的<b class='flag-5'>三维重建</b>研究综述

    基于分布式传感的实时三维重建系统

    基于分布式传感的实时三维重建系统
    发表于 06-25 11:25 15次下载

    深度学习背景下的图像三维重建技术进展综述

    根据三维模型的表示形式可以将图像三维重建方法分类为基于体素的三维重建、基于点云的三维重建和基于网格的三维重建,其中基于网格的
    的头像 发表于 01-09 14:26 1476次阅读

    如何使用纯格雷码进行三维重建

    对于新手来说,使用格雷码做单目结构光三维重建是一个入门级的训练。但是在复现时往往会遇到一个问题,明明解码都很不错了,重建后的点云精度却很低,甚至重建出来的平面点云出现断层现象。
    的头像 发表于 01-13 11:41 848次阅读

    从多视角图像做三维场景重建 (CVPR&apos;22 Oral)

    最近,有方法提出基于隐式神经表示做三维重建。NeRF [3] 通过可微分的体积渲染技术从图像中学习隐式辐射场。NeRF可以实现有真实感的视角
    的头像 发表于 02-20 10:11 2311次阅读

    三维重建:从入门到入土

    经典三维重建系统的整个pipeline从相机标定、基础矩阵与本质矩阵估计、特征匹配到运动恢复结构(SFM),从SFM到稠密点云重建、表面重建、纹理贴图。熟悉SFM的工程师已经是行业内的佼佼者,能掌握
    的头像 发表于 03-03 10:17 739次阅读

    如何实现整个三维重建过程

    在计算机视觉中,三维重建是指根据单视图或者多视图的图像重建三维信息的过程。由于单视频的信息不完全,因此三维重建需要利用经验知识,而多视图的三维重建
    发表于 09-01 11:06 953次阅读
    如何<b class='flag-5'>实现</b>整个<b class='flag-5'>三维重建</b>过程