RC-MVSNet:无监督的多视角立体视觉与神经渲染--论文笔记(2022年)

news2024/11/29 22:48:40

RC-MVSNet:无监督的多视角立体视觉与神经渲染--论文笔记(2022年)

    • 摘要
    • 1 引言
    • 2 相关工作
      • 2.1 基于监督的MVS
      • 2.2 无监督和自监督MVS
      • 2.3 多视图神经渲染
    • 3 实现方法
      • 3.1 无监督的MVS网络

Chang, D. et al. (2022). RC-MVSNet: Unsupervised Multi-View Stereo with Neural Rendering. In: Avidan, S., Brostow, G., Cissé, M., Farinella, G.M., Hassner, T. (eds) Computer Vision – ECCV 2022. ECCV 2022. Lecture Notes in Computer Science, vol 13691. Springer, Cham. https://doi.org/10.1007/978-3-031-19821-2_38
Source Code Link

摘要

(问题–方法–效果)
问题】在不同的视图之间找到准确的对应关系是无监督的多视图立体声音响(MVS)的致命弱点。现有的方法建立在相应像素具有相似光度特征的假设上。然而,在真实场景中,多视图图像观察到非兰伯表面和遭遇遮挡。【方法】在2022年8月,我们提出了一种新的神经渲染方法(RC-MVSNet)来解决这种视图间对应的模糊性问题。具体地说,我们施加深度渲染一致性损失来约束靠近对象表面的几何特征,以减少遮挡。同时,我们引入了一个参考视图合成损失,以产生一致的监督,即使对非兰伯表面。【效果】在DTU和坦克和寺庙数据集上进行的大量实验表明,我们的RC-MVSNet方法在无监督的MVS框架上取得了最先进的性能,并且与许多监督方法相比具有一定的竞争力。

1 引言

多视图立体视觉(Multi-View Stereo,MVS)是三维计算机视觉中一项长期存在的基本任务。MVS的目标是从多视点图像和相应的校准摄像机中恢复真实场景的三维点云。近年来,深度学习的广泛应用导致了端到端MVS深度估计网络的出现。一种流行的基于学习的方法MVSNet将来自不同摄像机视图的RGB信息编码为一个代价体,并预测用于点云重建的深度图。后续的全监督方法进一步改进了神经网络架构,降低了内存使用,并在几个基准测试集上具有最突出的深度估计性能。但那些方法严重依赖于监督真实的深度,这需要一个深度传感器来收集训练数据。它将这些方法限制在有限的数据集和主要的室内场景中。为了使MVS在更一般的现实场景中实用,考虑基于无监督学习的替代方法是至关重要的,这些方法可以提供与有监督的方法相比具有竞争力的精度,而不需要任何真实深度。

现有的无监督MVS方法基于光度一致性假设,该假设即属于同一三维点的像素在不同视图方向下具有相同的颜色属性。然而,在现实世界的环境中,如图2所示,遮挡,反射,非兰伯特面、不同的相机曝光和其它变量会使这种假设无效。因此,不准确匹配的点会导致错误的几何重建。虽然有学者提出使用语义线索来消除立体匹配中的歧义,但由于其高度依赖于预先训练的语义特征提取模型(带监督)的准确性,改进非常有限。为了消除与监督的不一致,在本文中,我们建议使用神经渲染来解决在视图依赖的光度效应和遮挡的情况下的模糊性

在这里插入图片描述
最近,人们对新的视图合成越来越感兴趣,特别是随着神经辐射场的引入,它可以模拟依赖的光度效应的基于可微体素渲染的视图。虽然最初关注的是使用输入密集采样视图对每个场景优化,但后续方法建议使用二维CNN编码器,即使用很少的输入图像预测新的视图。除了视图依赖辐射来定义沿视图光线的颜色外,这些方法还学习体积密度,当合成光线时,体积密度可以解释为深度。值得注意的是,深度是以一种纯粹的无监督的方式来学习的。然而,由于主要目标是新的视图合成,从体积密度获得的深度往往是不准确的。在我们的方法中,我们提出体素渲染方法构建新的损失函数,可以解决视图依赖效应和遮挡,同时沿用MVS方法中使用的深度表示,以确保局部准确和平滑的深度预测。

为此,我们引入了RC-MVSNet,一种新的端到端可微分的无监督多视图立体视觉网络。结合视图依赖渲染和结构化深度表示的优点,我们的方法在竞争激烈的DTU数据集中实现了最先进的深度预测结果,并在坦克和寺庙数据集的超范围样本上展现了鲁棒性能。综上所述,我们的贡献如下:

  • 我们提出了一种基于神经体素渲染的参考视图合成损失,以生成RGB监督,能够解释视图依赖的光度效应。
  • 我们引入高斯-均匀混合采样来学习接近物体表面的几何特征,以克服现有的无监督MVS方法中存在的遮挡伪影。
  • 我们引入了一种深度渲染一致性损失,通过深度先验来细化初始深度图,并确保预测的鲁棒性和平滑性。

2 相关工作

2.1 基于监督的MVS

许多监督方法已经提出使用CNN网络来预测RGB输入的深度图和深度图过滤来重建点云。大多数最先进的方法采用3D代价体。MVSNet作为一项具有代表性的工作,通过单应性变换将相机参数和特征编码为代价体,并通过三维CNN对体积进行正则化,以生成深度预测。之后有一些工作通过引入多阶段架构和从粗到细的方式学习深度预测,提高了MVSNet的性能和降低了内存消耗。此外,还有用卷积循环的GRU或LSTM单元代替了密集的三维卷积。然而,对真实深度的依赖限制了它们在特定数据集的应用,因此,探索无监督的方法是有必要的。

2.2 无监督和自监督MVS

端到端无监督和基于伪标签的多阶段自监督学习在三维视觉中起着关键的作用,特别是在多视图重建系统中。光度一致性的基本假设为无监督的MVS提供了可行性。例如,Unsupvised MVS提出了第一个基于端到端学习的无监督MVS框架:相邻视图用于测得深度反向变换成参考视图,并强制执行光度一致性和结构相似性(the structured similarity of image,SSIM)来最小化参考图像和变换后的图像之间的差异。JDACS提取的语义特征的交叉视图一致性,并通过非负矩阵分解对分割图进行监督。然而,它仍然需要一个预先训练的语义特征提取主干,且交叉视图语义一致性的收敛不稳定,无法提供可靠的监督。U-MVSNet采用流深一致性损失来解决有歧义的监督问题。利用密集的二维光流对应关系来生成具有不确定性感知一致性的伪标签,在一定程度上提高了监督能力。然而,这种方法不能以端到端的方式进行训练,因为它需要复杂的预训练和微调。Self-supervised CVP-MVSNet也提出通过无监督预训练出深度伪标签,然后进行迭代自监督训练来细化伪标签;但它仍然受到有歧义的监督影响。此外,这些无监督和自监督的方法缺乏一个遮挡感知模块学习来自的不同方向的特征,导致点云重建不完整。

相反,我们的简单但有效的模型通过参考视图合成损失直接学习场景的几何特征。这大大降低了训练的复杂性,并减轻了有歧义的光度监督。它还通过类似于NeRF的渲染,避免了由遮挡引起的问题。

2.3 多视图神经渲染

近年来,各种神经渲染方法被提出,主要集中于新视图合成的任务。特别是,神经辐射场用一个具有位置和方向的连续隐式函数表示场景用于高质量的视图合成;一些后续工作,提高了其效率和性能。NeRF也有一些扩展,它们引入了多视图信息,以增强视图合成的泛化能力。MVSNeRF提出利用平面扫描代价体,已广泛应用于多视图立体视觉和几何感知场景理解,并将其与体素渲染相结合,用于神经辐射场重建;然而,它不能在无监督的情况下产生高质量的深度预测NerfingMVS使用SfM的稀疏深度点来学习完整的深度来指导NeRF的优化过程我们的方法利用了精确的神经渲染和代价体的有效泛化能力,并提供了基于端到端无监督学习的精确深度估计,这超过了以往所有的无监督多视角立体视觉方法,并演示了室内对象和超范围的室外场景的精确重建。

3 实现方法

在本节中,我们描述了RC-MVSNet。给定N个图像作为输入,以及它们相应的相机的内参K和外参(R,T),我们的方法预测了在参考相机视图中的深度图。整个流程图如图3所示。
在这里插入图片描述

它由一个主干分支和一个辅助分支组成。主干建立在Cascade MVSNet基础上,它以从粗到细的方式预测深度图 。辅助分支建立在神经辐射场基础之上,除了几何图形之外,它也建模了与视图相关的场景外观。使用体素渲染,合成参考视图,并与输入图像进行比较,即使在视图依赖效应的情况下,也能产生准确的监督。为了保证网络分支之间的几何一致性,在引入了额外的深度渲染一致性损失,即使在遮挡的情况下也能获得更完整和准确的深度预测。请注意,在训练过程中,这两个分支同时进行优化,相互提供监督。在推理过程中,只使用主干网来进行深度预测。

3.1 无监督的MVS网络

主干网络密切遵循Cascade MVSNet架构。输入图像 ( I j ) j = 1 N (I_j) _{j=1}^N (Ij)j=1N最初使用一个共享的2D U-Net进行编码,从而生成像素级特征。然后,在参考相机的坐标系中构造了一个特征代价体。利用摄像机的内参和外参将每个代价体的体素位置投影到每个输入图像中,并通过双线性插值法查询像素特征。变换后的特征体 ( V j ) j = 1 N (V_j) _{j=1}^N (Vj)j=1N,通过计算特征方差,它们被跨视图融合成一个特征体C:
C = Var ⁡ ( V 1 , ⋯   , V N ) = ∑ j = 1 N ( V j − V ˉ j ) 2 N      ( 1 ) C=\operatorname{Var}\left(V_1, \cdots, V_N\right)=\frac{\sum_{j=1}^N\left(V_j-\bar{V}_j\right)^2}{N}~~~~(1) C=Var(V1,,VN)=Nj=1N(VjVˉj)2    (1)
使用3D U-Net进一步细化了特征代价体C,最后以从粗到细的方式在参考视图中输出一个深度图。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1256126.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

领域驱动设计总结——如何构造领域模型

领域驱动设计总结——如何构造领域模型 本文为领域驱动设计系列总结的第三篇,主要对领域驱动设计概念做个介绍,本系列领域驱动设计总结主要是在Eric Evans 所编写的《领域驱动设计》 一书的基础上进行归纳和总结。本文主要介绍在领域驱动设计中如何构造…

【数据中台】开源项目(2)-Dbus系统架构

大体来说,Dbus支持两类数据源: RDBMS数据源 日志类数据源 1 RMDBMS类数据源的实现 以mysql为例子. 分为三个部分: 日志抽取模块(最新版DBus已经废弃该模块,使用canal直接输出到kafka) 增量转换模块 全量拉取模块 1.1 日志抽…

紫光展锐 展讯芯片 展讯处理器解锁BL 各分区结构 ROM 分区列表代表什么 bin img 表示什么意思

是展锐 Android 10.0、Android 9.0 平台 ROM 空间划分情况以及分区格式、分区大小和分区功能的 初步描述。 prodnv 开机后系统中的 productinfo 分区,保 存 adc 校准参数、eng.db 数据库。 Miscdata 保存 ota、recovery 时的一些数据 recovery 存放 recovery.i…

【深度学习实验】图像处理(二):PIL 和 PyTorch(transforms)中的图像处理与随机图片增强

文章目录 一、实验介绍二、实验环境1. 配置虚拟环境2. 库版本介绍 三、实验内容0. 导入需要的工具包1. PIL图像处理a. 生成绿色和蓝色图像b. 缩放和合成图像c 在合成图像上添加文字d. 展示并保存图像 2. PIL随机图像增强a. 定义随机图像增强函数b. 实验结果展示 3. PyTorch&…

【Amazon】通过代理连接的方式导入 AWS EKS集群至KubeSphere主容器平台

文章目录 一、设置主集群方式一:使用 Web 控制台方式二:使用 Kubectl命令 二、在主集群中设置代理服务地址方式一:使用 Web 控制台方式二:使用 Kubectl命令 三、登录控制台验证四、准备成员集群方式一:使用 Web 控制台…

P17C++析构函数

目录 前言 01 什么是析构函数 1.1 举个栗子 02 为什么要写析构函数 前言 今天我们要讨论一下它的“孪生兄弟”,析构函数,它们在某些方面非常相似。 与构造函数相反,当对象结束其生命周期,如对象所在的函数已调用完毕时&…

[LaTex]arXiv投稿攻略——jpg/png转pdf

一、将图片复制进ppt,右键单击图片选择设置图片格式,获取图片高度和宽度 二、选择“设计-幻灯片大小-自定义幻灯片大小” 三、设置幻灯片大小为图片大小 四、 选择“最大化” 五、 检查幻灯片大小是否与图像大小一致 六、导出为PDF

web前端之vue和echarts的堆叠柱状图顶部显示总数、鼠标悬浮工具提示、设置图例的显示与隐藏、label、legend、tooltip

MENU 效果图htmlJavaScripstyle解析 效果图 html <template><div><div><div id"idStackedColumnChart" style"width: 100%; height: 680px"></div></div></div> </template>JavaScrip export default {…

单细胞seurat入门—— 从原始数据到表达矩阵

根据所使用的建库方法&#xff0c;单细胞的RNA序列&#xff08;也称为读取&#xff08;reads&#xff09;或标签&#xff08;tags&#xff09;&#xff09;将从转录本的3端&#xff08;或5端&#xff09;&#xff08;10X Genomics&#xff0c;CEL-seq2&#xff0c;Drop-seq&…

Django(十一、auth认证模块)

文章目录 一、auth介绍auth认证相关模块及操作扩展auth_user表 一、auth介绍 Django自带一个admin路由&#xff0c;但是需要我们提供管理员账户和密码&#xff0c;如果想要使用admin后台管理&#xff0c;需要先创建表&#xff0c;然后创建管理员账户。 直接执行数据类迁移命令…

Redis:持久化RDB和AOF

目录 概述RDB持久化流程指定备份文件的名称指定备份文件存放的目录触发RDB备份redis.conf 其他一些配置rdb的备份和恢复优缺点停止RDB AOF持久化流程AOF启动/修复/恢复AOF同步频率设置rewrite压缩原理触发机制重写流程no-appendfsync-on-rewrite 优缺点 如何选择 概述 Redis是…

Kotlin应用——使用kt进行web开发 使用h2database进行初始化数据库 mybatis-plus使用

Kotlin 是一门现代但已成熟的编程语言&#xff0c;旨在让开发人员更幸福快乐。 它简洁、安全、可与 Java 及其他语言互操作&#xff0c;并提供了多种方式在多个平台间复用代码&#xff0c;以实现高效编程。 kt入门的合集文章如下&#xff1a; Kotlin学习——kt入门合集博客 &…

Node——Node.js基础

Node.js是一个基于Chrome V8引擎的JavaScript运行时环境&#xff0c;它能够让JavaScript脚本运行在服务端&#xff0c;这使得JavaScript成为与PHP、Python等服务端语言平起平坐的脚本语言。 1、认识Node.js Node.js是当今网站开发中非常流行的一种技术&#xff0c;它以简单易…

Less 安装教程

文章目录 前言LESS的系统要求安装LESS例子输出Less编译css工具后言 前言 hello world欢迎来到前端的新世界 &#x1f61c;当前文章系列专栏&#xff1a;Sass和Less &#x1f431;‍&#x1f453;博主在前端领域还有很多知识和技术需要掌握&#xff0c;正在不断努力填补技术短板…

一文从Vue2过渡到Vue3

文章目录 Vue3简介创建Vue3.0工程使用 vue-cli 创建使用 vite 创建Vue3工程结构变化 常用 Composition API拉开序幕的setupref函数reactive函数Vue3.0中的响应式原理vue2.x的响应式Vue3.0的响应式 reactive对比refsetup的两个注意点计算属性与监视computed函数watch函数watchEf…

强制删除文件

DEL /F /A /Q \\?\%1 RD /S /Q \\?\%1 强制删除文件,新建一个文本文件,将以上代码复制到文档中,保存,将文档重命名为delete.bat 如果弹窗提示修改后缀名可能导致文件不可用,也点击确认修改文件名称. 将需要强制删除的文件拖拽到这个delete.bat文件上,显示使用delete.bat打…

MetaObject-BeanWrapper-MetaClass-Reflector的关系

MetaObject、BeanWrapper、MetaClass、Reflector之间是通过装饰器模式逐层进行装饰的。其中MetaObject、BeanWrapper是操作对象&#xff1b;MetaClass、Reflector是操作Class ObjectWrapper类结构图 BaseWrapper是对BeanWrapper、MapWrapper公共方法的提取及类图的优化&#…

Jmeter接口测试快速入门 以飞致云平台为例

接口测试快速入门 以飞致云平台为例-CSDN博客 飞致云电商平台可以做接口测试练习。快速了解如何测试接口&#xff0c;如何做关联 系统基地址&#xff1a;https://gz.fit2cloud.com/ 接口测试快速入门 以飞致云平台为例-CSDN博客 博文中介绍了如何在swagger页面上进行接口测试。…

开发知识点-ArkTS-鸿蒙开发-Typescript

Typescript IED IED https://developer.harmonyos.com/cn/develop/deveco-studio/#download

【亚马逊云】基于EC2以 All-in-One 模式快速部署 KubeSphere 和 Kubernetes

文章目录 1. 云实例配置说明2. SSH连接云实例3. 查看系统版本4. 修改主机名5. 安装依赖项6. 安全组和DNS修改7. 下载KubeKey8. 同时安装Kubesphere和Kubernetes[可选]单独安装Kubernetes[可选]单独安装KubeSphere9. 验证KubeSphere安装结果10. 登录KubeSphere控制台[可选]安装K…