论文地址:Fast-MVSNet: Sparse-to-Dense Multi-View StereoWith Learned Propagation and Gauss-Newton Refine

一、摘要

  以往的MVSNet都聚焦于提高精度,这篇文章从效率入手,提出了Fast-MVSNet。在重建过程中采用从稀疏到稠密,从粗糙到精细的策略。网络主要分为三个部分:

  1. 构造稀疏代价体来学习得到稀疏但高分辨率的深度图;
  2. 使用小型的CNN模块对局部区域内像素的深度依赖关系进行抽取,以此来稠密化深度图;
  3. 3.使用可微分的高斯牛顿层来处理得到亚像素精度的深度图。

二、网络结构

2.1 稀疏深度图生成

  第一步是针对参考视图 I0I_{0}I0​ 生成稀疏的高分辨率的深度图如图所示:

  一般的MVSNet方法使用分辨率的深度图进行训练需要将ground true图像下采样,下采样过程中会导致不对齐,丢失细节;下采样过程中,在视差不连续的区域会产生错误插值。
  和一般的做法一样,先是使用卷积神经网络提取图像特征,经过相机参数warp到参考视图构建代价体,得到 14H×14W×N×F\frac{1}{4}H \times\frac{1}{4}W \times N\times F41​H×41​W×N×F的稀疏代价体 ,其中 NNN 为深度范围,FFF 为特征通道数。由于稀疏的代价体的表现像空洞卷积,因此能拥有更大的感受野。最后使用一个3D U-Net来对稀疏代价体正则化,经过可微分的 argmax操作得到一个稀疏的初始深度图。

2.2 深度传播


  初始深度图估计得到了一个稀疏的初始深度图 DDD,在这一步需要将初始深度图经深度传播得到一个稠密的深度图 D~\tilde{D}D~ ,使用联合双边上采样,使用原始图像作引导信息如式1所示:
D~(p)=1zp∑q∈N(p)D(q)f(∥p−q∥)g(∥Ip−Iq∥)(1)\tilde{D}(p)=\frac{1}{z_{p}} \sum_{q \in N(p)} D(q) f(\|p-q\|) g\left(\left\|I_{p}-I_{q}\right\|\right)\tag{1}D~(p)=zp​1​q∈N(p)∑​D(q)f(∥p−q∥)g(∥Ip​−Iq​∥)(1)
其中,fff用于衡量两个像素之间的空间距离, ggg 用于衡量两个像素之间的特征相似性, N(p)N(p)N(p) 为k×kk\times kk×k的邻域像素,zpz_{p}zp​是归一化项;使用一个简单的神经网网络来表示 f(∥p−q∥)g(∥Ip−Iq∥)f(\|p-q\|) g\left(\left\|I_{p}-I_{q}\right\|\right)f(∥p−q∥)g(∥Ip​−Iq​∥)如式2所示:
D~(p)=1zp∑q∈N(p)D(q)⋅wp,q(2)\tilde{D}(p)=\frac{1}{z_{p}} \sum_{q \in N(p)} D(q) \cdot w_{p, q}\tag{2}D~(p)=zp​1​q∈N(p)∑​D(q)⋅wp,q​(2)
其中权重wp,qw_{p,q}wp,q​可以通过神经网络来学习到;

2.3 高斯牛顿层优化


  由于前面的步骤为了兼顾效率,因此得到的稠密深度图的精度需要进一步提升,为此使用可微分的高斯牛顿法来优化深度图,优化的目标是最小化一下的代价函数:
E(p)=∑i=1N∥Fi(pi′)−F0(p)∥2(3)E(p)=\sum_{i=1}^{N}\left\|F_{i}\left(p_{i}^{\prime}\right)-F_{0}(p)\right\|_{2}\tag{3}E(p)=i=1∑N​∥Fi​(pi′​)−F0​(p)∥2​(3)
其中 FiF_{i}Fi​ 和 F0F_{0}F0​ 分别表示源图像和参考图像提取得到的特征,pi′p_{i}^{\prime}pi′​ 表示参考视图中的 ppp 点在第 iii 个视图中的对应点,pi′p_{i}^{\prime}pi′​点计算公式如式4所示(先将p点反投影到到世界坐标系中,再投影到iii视角的图像坐标系中,D~(p)\tilde{D}(p)D~(p)为深度值):
pi′=Ki(RiR0−1(D~(p)K0−1p−t0)+ti)(4)p_{i}^{\prime}=K_{i}\left(R_{i} R_{0}^{-1}\left(\tilde{D}(p) K_{0}^{-1} p-t_{0}\right)+t_{i}\right)\tag{4}pi′​=Ki​(Ri​R0−1​(D~(p)K0−1​p−t0​)+ti​)(4)
其中{Ki,Ri,ti}i=0N\left\{K_{i}, R_{i}, t_{i}\right\}_{i=0}^{N}{Ki​,Ri​,ti​}i=0N​分别表示第 iii 视图的相机内参,旋转矩阵和平移矩阵;
  使用高斯牛顿法来最小化代价函数EpE_{p}Ep​,对于每个残差ri(p)r_{i}(p)ri​(p),计算关于初始深度值D~(p)\tilde{D}(p)D~(p)的一阶导数:
Ji(p)=∂Fi(pi′)∂pi′⋅∂pi′∂D~(p)(5)J_{i}(p)=\frac{\partial F_{i}\left(p_{i}^{\prime}\right)}{\partial p_{i}^{\prime}} \cdot \frac{\partial p_{i}^{\prime}}{\partial \widetilde{D}(p)}\tag{5}Ji​(p)=∂pi′​∂Fi​(pi′​)​⋅∂D(p)∂pi′​​(5)
以此得到当前深度值的增量δ\deltaδ
δ=−(JTJ)−1JTr(6)\delta=-\left(J^{T} J\right)^{-1} J^{T} r\tag{6}δ=−(JTJ)−1JTr(6)
式中,JJJ为雅克比矩阵{Ji(p)}i=1N\{J_{i}(p)\}_{i=1}^{N}{Ji​(p)}i=1N​,rrr 为残差向量 {ri(p)}i=1N\{r_{i}(p)\}_{i=1}^{N}{ri​(p)}i=1N​,更新后的深度值如式7所示:
D~′(p)=D~(p)+δ(7)\tilde{D}^{\prime}(p)=\tilde{D}(p)+\delta\tag{7}D~′(p)=D~(p)+δ(7)

三、损失函数

损失函数如式8所示:
Loss =∑p∈pvalid ∥D~(p)−D^(p)∥+λ⋅∥D~′(p)−D^(p)∥(8)\text { Loss }=\sum_{p \in \mathbf{p}_{\text {valid }}}\|\tilde{D}(p)-\hat{D}(p)\|+\lambda \cdot\left\|\tilde{D}^{\prime}(p)-\hat{D}(p)\right\|\tag{8} Loss =p∈pvalid ​∑​∥D~(p)−D^(p)∥+λ⋅∥∥∥​D~′(p)−D^(p)∥∥∥​(8)
其中 D^(p)\hat{D}(p)D^(p)为ground true深度图, pvaluep_{value}pvalue​为有效的像素点集合;同时使用了优化前和优化后的深度图求损失;

四、实验结果



论文阅读《Fast-MVSNet: Sparse-to-Dense Multi-View StereoWith Learned Propagation and Gauss-Newton Refine》相关推荐

  1. 《基于卷积神经网络的深度迁移学习,用于燃气轮机燃烧室的故障检测》论文阅读

    目录 突出 抽象 引言 1.1动机 1.2文献综述获得的结论 1.3贡献 1.4组织 2方法 2.1燃汽轮机组故障知识共享 2.2迁移学习 2.3 基于卷积神经网络的深度迁移学习 2.4用于燃气轮机燃 ...

  2. 基于卷积神经网络和投票机制的三维模型分类与检索 2019 论文笔记

    作者:白静 计算机辅助设计与图形学学报 1.解决的问题 由于三维模型投影得到的视图是由不同视点得到,具有相对独立性,这种像素级的融合运算并没有直接的物理或者几何意义,更有可能造成图像有益信息淹没和混淆 ...

  3. TextCNN——基于卷积神经网络的文本分类学习

    1.CNN基础内容 CNN的全称是Convolutional Neural Network,是一种前馈神经网络.由一个或多个卷积层.池化层以及顶部的全连接层组成,在图像处理领域表现出色. 本文主要学习 ...

  4. 读懂深度迁移学习,看这文就够了 | 赠书

    百度前首席科学家.斯坦福大学副教授吴恩达(Andrew Ng)曾经说过:迁移学习将是继监督学习之后的下一个促使机器学习成功商业化的驱动力. 本文选自<深度学习500问:AI工程师面试宝典> ...

  5. 一种基于卷积神经网络的图像去雾研究-含matlab代码

    目录 一.绪论 二.去雾卷积网络 2.1 特征提取 2.2 多尺度映射 2.3 局部均值 2.4 非线性回归 三.实验与分析 四.Matlab代码获取 一.绪论 雾是一种常见的大气现象,空气中悬浮的水 ...

  6. 机械臂论文笔记(一)【基于卷积神经网络的二指机械手 抓取姿态生成研究 】

    基于卷积神经网络的二指机械手 抓取姿态生成研究 论文下载 摘要 第1章 绪论 1.1 抓取生成国内外研究现状 1.1.1已知物体抓取生成 1.1.2相似物体抓取生成 1.1.3 未知物体抓取生成 1. ...

  7. 毕业设计 - 基于卷积神经网络的乳腺癌分类 深度学习 医学图像

    文章目录 1 前言 2 前言 3 数据集 3.1 良性样本 3.2 病变样本 4 开发环境 5 代码实现 5.1 实现流程 5.2 部分代码实现 5.2.1 导入库 5.2.2 图像加载 5.2.3 ...

  8. 基于卷积神经网络与迁移学习的油茶病害图像识别

    基于卷积神经网络与迁移学习的油茶病害图像识别 1.研究思路 利用深度卷积神经网络强大的特征学习和特征表达能力来自动学习油茶病害特征,并借助迁移学习方法将AlexNet模型在ImageNet图像数据集上 ...

  9. Python深度学习实例--基于卷积神经网络的小型数据处理(猫狗分类)

    Python深度学习实例--基于卷积神经网络的小型数据处理(猫狗分类) 1.卷积神经网络 1.1卷积神经网络简介 1.2卷积运算 1.3 深度学习与小数据问题的相关性 2.下载数据 2.1下载原始数据 ...

  10. 基于卷积神经网络实现图片风格的迁移 1

    卷积神经网络详解 一.实验介绍 1.1 实验内容 Prisma 是最近很火的一款APP,它能够将一张普通的图像转换成各种艺术风格的图像.本课程基于卷积神经网络,使用Caffe框架,探讨图片风格迁移背后 ...

最新文章

  1. SAP MM初阶之采购信息记录里的Prior Supplier栏位
  2. 互联网1分钟 | 1017
  3. xfce开始菜单增加一个新的图标
  4. 使用IntelliJ调试Java流
  5. 我的职业生涯规划学习日记(软件工程)整理时间线
  6. asp.net学习之再论sqlDataSource
  7. Android 面试题总结
  8. 浅谈Nodejs应用主文件index.js组成部分——略详解
  9. 维控触摸屏编程手册_维控触摸屏AB PLC地址编辑说明
  10. 威纶通触摸屏上传错误_威伦触摸屏程序上传方式
  11. linux让别人电脑蓝屏,教你如何让别人电脑瞬间蓝屏!只需要两个键,装逼神器,值得拥有...
  12. [OpenJudge] 2.5基本算法之搜索 红与黑
  13. 关于Adobe flash player 本地播放器
  14. Android:在PC屏幕上显示Android手机屏幕
  15. 03基础自绘-18手机通讯录-telwidget
  16. 02-nation.sql
  17. OA 也有天下第一的座椅?
  18. Others6_USB Type-C到底是什么
  19. IBM 服务器系统安装,以windows server 2008 为例
  20. 电脑中的内存不足是什么意思

热门文章

  1. 怎么用notepad将html格式化,Notepad++如何使用Tidy2格式化HTML文档?
  2. uniapp树组件优化 树节点设置单选,单击单选框可以选中多个 偶尔根节点点击后会隐藏整棵树
  3. 整数转罗马数字(C++)
  4. 【iOS】—— 调用手机相机和相册
  5. 稳压二极管和TVS二极管的区别
  6. 稳压二极管与TVS管
  7. iOS音频播放之AudioQueue(一):播放本地音乐
  8. 淘宝教育视频加速观看(在淘宝教育上看学习视频,需要加速,在谷歌浏览器上安装视频加速插件)
  9. easyExcel设置水印
  10. 性能测试(二)-重要性能指标TPS、RT