【OpenVI—论文解读系列】ICCV | 开源融合不确定度的自监督MVS框架

简介: 论文链接:Digging into Uncertainty inSelf-supervised Multi-view Stereo多视图立体视觉作为计算机视觉领域的一项基本的任务,利用同一场景在不同视角下的多张图片来重构3D的信息。自监督多视角立体视觉(MVS)近年来取得了显著的进展。然而,以往的方法缺乏对自监督MVS中pretext任务提供的监督信号进行有效性的全面解释。本文首次提出在自监督MVS中估计认知不确定性(epistemic uncertainty)。

一、背景


多视图立体视觉作为计算机视觉领域的一项基本的任务,利用同一场景在不同视角下的多张图片来重构3D的信息。如下图所示:



自监督多视角立体视觉(MVS)近年来取得了显著的进展。然而,以往的方法缺乏对自监督MVS中pretext任务提供的监督信号进行有效性的全面解释。本文首次提出在自监督MVS中估计认知不确定性(epistemic uncertainty)。具体而言,信号不确定可分为两类:前景的监督信号模棱两可性和背景监督信号无效性。为了解决这些问题,本文提出了一个新的减少不确定性的多视角立体(U-MVS)自监督学习框架:1.)本文引入了额外的光流深度一致性损失,利用光流的密集二维对应关系来正则化MVS中的三维立体对应关系,缓解前景监督的模凌两可。2.)为了处理背景的无效监督信号,本文使用Monte-Carlo Dropout获取不确定性映射,进一步过滤无效区域上的不可靠的监督信号。


     最后通过在DTU和Tank&Temples数据集的大量实验表明,本文提出的U-MVS框架在无监督MVS方法中取得了最好的性能,与完全监督的MVS方法相比具有相媲美的性能。


1.1 完全监督MVS


     随着深度学习的蓬勃发展,在多视角立体视觉领域已经出现越来越多的神经网络方法。作为新型技术的代表,MVSNet构建了端到端的基于神经网络来进行多视角重建的pipeline。首先利用2D的卷积网络来获得多视角图片的特征,然后运用3D CNN对由feature构建得到的costvolume进行正则化操作,而后基于soft argmin操作回归得到深度信息。如下图所示:



     为了缓解存储和计算3D cost volume消耗大量的资源的压力,一些方法运用coarse-to-fine的机制将之前单步的cost volume的计算变为多阶段的cost volume 计算。CascadeMVSNet提出基于特征金字塔编码的cost volume,缩小每个阶段的深度(或视差)范围的预测,随着分辨率的逐渐提高和深度(或视差)间隔的自适应调整,输出coarse-to-fine的深度估计。如下图所示:



1.2 无监督MVS


     此外,完全监督学习存在一个不可忽视的问题,标注large scale的数据集对于场景重建来讲,需要繁琐和昂贵的程序。近年来人们致力于发展自监督学习来替代有监督学习。Unsup MVS 利用预测的深度信息结合相机内外参数,通过homographywarping来重构图像,并通过减小重构图像和原始图像之间的差异来优化深度信息。如下图所示:



     M^ 3VSNet在Unsup MVS 的基础上,增加了深度信息和法向的一致性loss来进一步优化pipiline,而JDACS则利用非负矩阵分解(Non-Negative-Factorization)来生成Co-Segmentationmaps,借鉴photometric loss,构造更鲁棒的cross-viewsemantic consistency,同时利用数据增强模块来提升泛化能力。如下图所示:




     之前这些方法都是基于对于自监督学习的直观的分析,缺乏对于自监督信号有效性的研究和解释。对于完全监督学习,如Figure 1 (a)所示,有效监督信号因为ground truth的原因是显性可用的,然而对于自监督框架来讲,如Figure 1 (b)所示,基于图像重建的pretext任务提供的监督信号是模糊不确定的,这将直接影响深度估计的效果。



1.3 核心解决问题


     为了更直接地提供监督信号的有效性描述,本文利用了Monte-Carlo Dropout方法来可视化epistemic uncertainty,如上图Figure 1(c)所示。那么不确定性到底可以给我们哪一些启示呢?



     如上图Figure 2 所示,本文提供了完全监督和自监督信号的不确定性直观比较,来加深理解导致自监督信号失败的原因。由图可知,自监督信号相比完全监督的信号有更多不确定性,基于自监督作为图像重建任务的前提,将不确定性归结为两类:第一类为图像前景中的监督信号的模凌两可性,主要来自于不同视角下像素点的颜色变化以及物体之间的遮挡,导致了reference image和source image的部分像素点没法很好的匹配;第二类为背景的监督信号的无效性,譬如无纹理区域没法提供有效信息。


二、方法


2.1 前景监督信号


     为了解决前景监督信号的模凌两可,本文通过增加额外的先验相关性来增强自监督信号的可靠性,并引入一种新的多视图中的光流深度一致性损失。如下图所示:



     直观地说,在自监督MVS中,可以利用光流来构造图像对的像素点之间密集的相关性来正则化3D的相关性。本文提出了一个可微的Depth2Flow模块,将视图间的深度图转换为虚拟光流。如下图所示:



     RGB2Flow模块可以无监督地预测相应视图的光流。然后强制虚拟光流和真实光流保持一致,起到正则化的作用。如下图所示:



2.2 背景监督信号


     为了缓解背景信号的无效性,本文建议除去不可靠的监督信号在完全无监督的情况下。首先使用自监督预训练模型标注数据集,并用Monte-Carlo-Dropout算法获取不确定性映射。如下图所示:



    然后利用不确定性映射过滤之后的伪标签对模型进行监督。同时对输入的多视图图像进行随机数据增强,增强有效监督区域对干扰的鲁棒性。如下图所示:





三、结果


 为了评价本文提出的方法的性能,在DTU数据集上进行了验证。在Table 1,本文给出了UMVS与最好的(SOTA)完全监督/自监督和传统方法的性能对比。从表中可以看出,本文提出的方法比之前的自监督方法性能更好。在整体误差(overall)的指标下,当前SOTA的完全监督方法的性能约为0.351 - 0.355mm。在没有利用任何ground truth标签的前提下,本文基于CascadeMVSNet的backbone可以在overall达到0.3537,这与完全监督的SOTA相媲美。Figure 5 给出了DTU数据集上多个场景的三维重建结果的定性比较。如下图所示:




    为了评价本文方法的泛化能力,给出了Tanks and Temples数据集上(intermediate/advanced)与SOTA的完全监督和无监督方法的性能比较(Table 4和Table 5)。




     如下图例为Tanks&Temples的intermediate/advancedpartition部分的效果可视化。




四、应用


      接下来给大家介绍下我们平台上展示的功能,欢迎大家体验。


阿里云—视觉智能开放平台


阿里云—视觉智能开放平台—人脸人体

基于图像或视频中的人脸检测、分析/比对技术,以及人体检测技术,提供人脸/人体的检测定位、人脸属性识别和人脸比对等独立模块。可以为开发者和企业提供高性能的在线API服务,应用于人脸AR、生物识别和认证、大规模人脸检索、照片管理等各种场景。


阿里云—视觉智能开放平台—视频生产

基于阿里云计算机视觉与深度学习技术,提供视频内容的编辑、生成、增强与摘要等能力。视频生产可广泛应用于互联网媒体、短视频、娱乐直播、在线教育、广电传媒等行业应用。




相关文章
|
机器学习/深度学习 数据可视化 TensorFlow
TensorFlow的可视化工具:TensorBoard的使用
【4月更文挑战第17天】TensorBoard是TensorFlow的官方可视化工具,用于展示和分析模型训练过程、结构和数据。它包括标量、图像、音频、模型图和直方图等多种可视化功能。通过`tf.summary`记录数据,使用`tensorboard --logdir`启动。高级功能包括自定义仪表板、嵌入和插件,助力深度学习的调试与优化。
1073 0
|
存储 编译器 数据库
【C/C++ 数据结构 】线索二叉树全解析:从数学原理到C++实现
【C/C++ 数据结构 】线索二叉树全解析:从数学原理到C++实现
639 0
|
机器学习/深度学习 算法 PyTorch
论文阅读笔记 | 目标检测算法——DETR
论文阅读笔记 | 目标检测算法——DETR
2085 0
论文阅读笔记 | 目标检测算法——DETR
|
传感器 机器学习/深度学习 编解码
一文尽览 | 基于点云、多模态的3D目标检测算法综述!(Point/Voxel/Point-Voxel)(下)
目前3D目标检测领域方案主要包括基于单目、双目、激光雷达点云、多模态数据融合等方式,本文主要介绍基于激光雷达雷达点云、多模态数据的相关算法,下面展开讨论下~
一文尽览 | 基于点云、多模态的3D目标检测算法综述!(Point/Voxel/Point-Voxel)(下)
|
JavaScript 前端开发 数据可视化
6 个用于 3D 网页图形渲染的最佳 WebGL 库
现代前端、游戏和Web开发正是WebGL可以转化为数字杰作的东西。使用GPU绘制在浏览器屏幕上生成的矢量元素,WebGL创建交互式Web图形,从而获得用户体验。视觉元素的质量和复杂性使该工具在HTML或CSS等其他方法中脱颖而出。
1001 0
|
并行计算 Linux 开发工具
物体检测框架YoloDotNet初体验
【11月更文挑战第3天】YoloDotNet 是一个基于 .Net 平台的物体检测框架,支持多种视觉任务,包括物体检测、分类、OBB 检测、分割和姿态估计。安装过程较为复杂,需要配置 CUDA 和 CUDNN 支持 GPU 加速。代码简洁易用,检测速度快且准确,适用于实时应用。该框架跨平台、开源免费,适合熟悉 .Net 的开发者使用。
1085 4
|
自然语言处理 算法 搜索推荐
基于LLM(Large Language Model,大语言模型)的智能问答系统
基于LLM(Large Language Model,大语言模型)的智能问答系统
1206 6
|
存储 安全 云计算
私有云与公共云:选择哪一个?
【8月更文挑战第14天】
2046 5
|
存储 关系型数据库 数据库
SQLite 与 PostgreSQL:详细比较
【8月更文挑战第13天】
1679 4
|
算法 Serverless 计算机视觉
使用OpenCV和Python进行极线校正
使用OpenCV和Python进行极线校正
673 1

热门文章

最新文章