【论文简述】Bi-ClueMVSNet: Learning Bidirectional OcclusionClues for Multi-View Stereo(IJCNN 2023)_ijcnn论文集-程序员宅基地

技术标签: 遮挡  3D重建  深度学习  MVS  双向投影  

一、论文简述

1. 第一作者:Zhe Zhang

2. 发表年份:2023

3. 发表期刊:IJCNN

4. 关键词:MVS、深度学习、遮挡、双向投影

5. 探索动机:现有的工作很少考虑遮挡问题,导致边界和遮挡区域的重建效果不佳。

In traditional MVS methods, taking COLMAP as an example, the occlusion issue can be modeled under the probabilistic framework. However, very few learning-based methods have taken the occlusion problem into consideration.

However, these methods all apply a variance-based cost metric, assuming that a given pixel is visible in all input images. In fact, many pixels only appear at some baseline angles and are occluded in others. As a result, an increasing number of input images lead to even worse depth estimation.

6. 工作目标:在上述挑战的激励下,本工作通过明确建模遮挡问题,提出了一个基于端到端学习的MVS网络。

7. 核心思想:In this paper, the Bidirectional Occlusion Cluesbased Multi-View Stereo Network (Bi-ClueMVSNet) is proposed as an end-to-end MVS framework that explicitly models the occlusion obstacle for depth map inference and 3D modeling.

  1. We introduce bi-directional projection and occlusionaware aggregation for constructing the cost volume, which reduces the risk of propagation and accumulation of incorrect matches at the root.
  2. We propose the occlusion-enhanced network to transfer 2D visibility maps to 3D occlusion clues, improving the representational ability of regularization.
  3. We combine regression and classification strategies for adaptive depth map inference and build occlusion cluesbased loss for robust convergence.

8. 实验结果:

The proposed method is evaluated on DTU and Tanks and Temples datasets. Our method achieves very competitive results compared with previous methods and gets significantly better reconstruction results in boundaries and areas with severe occlusion.

9.论文下载:

https://ieeexplore.ieee.org/abstract/document/10191325

二、实现过程

1. Bi-ClueMVSNet

Bi-ClueMVSNet的总体架构如图所示。从粗到细的管道(上)和详细的架构(下)。首先使用多尺度特征金字塔网络(M-FPN)从输入图像中提取深度特征。然后,从双向投影(BDP)和遮挡感知聚合(OAA)模块构造代价体,并结合遮挡增强网络(OEN)进行正则化。最后,使用自适应深度图推理(ADMI)策略来估计深度,并使用基于遮挡线索的损失(OCL)进行监督训练。

2. 多尺度特征

多尺度金字塔网络(M-FPN)用于从{Ii}中提取深度特征。一般作品通常使用高分辨率图像作为输入,在网络中进行下采样。不同的是,我们使用9层2D CNN从低分辨率图像中提取全尺寸特征,以避免信息退化。(对于训练,输入图像的数量设置为N = 5,分辨率为160 × 128。)

3. 遮挡感知代价体

以往的方法在构造和聚合代价体时没有考虑遮挡问题。为此,我们提出了双向投影来扩展扭曲特征表示的能力,并提出了闭塞感知聚合策略来减少源遮挡的影响。

单应性和双向投影。在MVSNet中,受传统平面扫描的启发,将特征warp到参考相机的D个前平行平面,构建特征体Vi。同样,根据相机参数的可逆性,也可以建立从源视图到参考视图的反向单应性变化。深度d处的Ii的每个像素经过单应性变化的数学表示为:

​那么自然可以使用双向投影Hi→0(d)和H0→i(d),以及微分双线性插值对参考图像和源图像之间的深层特征进行warp,得到参考视图中W(Vi),在源视图中W’(Vi)的特征体。

遮挡感知聚合。对于单向投影,基于方差的代价度量用于成对特征体聚合,因为明确的遮挡处理不能仅通过两个视点(一个参考视图和一个源视图)建模。具体地说,成对的代价体计算为:

其中Npair = 2, W(Vi)为代价体的数值平均值。由W′(Vi)从相反方向构造的Cpair′也是如此。

在获得每个视点成对的代价体Cpair和Cpair’之后,一个轻量级的3D沙漏CNN用于匹配代价增强。然后可以得到成对概率体Ppair和Ppair ',通过沿深度方向应用softmax运算,来估计精确遮挡线索的“置信度”,表示为Oi和Oi'。直接使用遮挡线索聚合W(Vi)。这避免了由根源遮挡引起的不正确匹配的传播和积累。遮挡感知聚合最终可以建模为:

其中,clue是最终的双向遮挡线索,OEN是遮挡增强网络,⊙表示逐元素乘法。

4. 遮挡增强代价体正则化

双向投影和遮挡感知的代价体聚合明确地对遮挡问题进行建模,Oi和Oi'已经编码了每个像素的空间遮挡线索。此外,我们提出了遮挡增强网络,将遮挡线索进一步扩展到通道维度和深度假设维度。首先,连接Oi和Oi'有一个统一的输入表示,使用2D CNN的作用类似于U-Net,它扩展了搜索感受野以促进原始遮挡线索。最后一个卷积层产生M通道特征,然后是tanh激活函数和截断,将遮挡感知权重归一化为0 ~ 1。根据均匀深度假设,使用通道扩展线索进行深度插值。最后,遮挡感知的代价体可以通过公式3得到,最终的遮挡线索clue可以通过公式4得到。遮挡感知代价体C表示当前从空间方向、通道方向和深度方向上的遮挡线索。还应用3D CNN进行进一步正则化。

5. 深度图推断

沿深度方向应用softmax运算生成概率体P∈D×H×W,可得到深度估计D0。现有的基于学习的方法采用回归或分类方法。回归达到亚像素精度,但由于权值和的平滑效应,边界往往缺乏细节。分类方法可以防止估计平面受到周围深度假设的污染(只选择一个平面)。然而,它很容易造成深度不连续,特别是在前景目标中。

自适应深度图推断策略:结合回归方法和分类方法的优点,提出了自适应深度图推断策略,该策略利用上述遮挡线索自适应地选择合适的深度图估计方法。更具体地说,首先沿着深度维度取clue的平均值,并设置δ为概率连续性阈值。当概率足够连续时,自适应地采用回归策略进行深度图估计。反之亦然,Bi-ClueMVSNet转换为分类模式,用于深度概率分布明显不连续的遮挡区域和边界。边界和遮挡区域概率分布的可视化如图所示,ADMI策略预测了更平滑的主体、更清晰的边界和正确的透视关系。

边界(上)和遮挡区域(下)的概率分布。与单一方法相比,ADMI实现了清晰的边界和正确的透视关系(蓝色矩形),分类方法(绿色虚线)根据强遮挡线索预测合理深度。

6. 基于遮挡线索的损失函数

回归方法通常直接使用真值深度图DGT和估计深度图D ~之间的l1损失,分类方法计算潜在深度表示P与其真值分布PGT之间的交叉熵。基于监督遮挡线索的训练损失和总损失定义为:

式中,p为参考图像的像素,Ω为具有真值精度的有效像素集,L为金字塔层级,每个层级采用组合权值λl = 1。 

7. 实验

7.1. 实现细节

使用PyTorch实现,并使用Adam优化器在NVIDIA上以0.001的起始学习率训练模型16次特斯拉V100 (16G虚拟内存)。

7.2. 与先进技术的比较

7.3. 时间和内存开销

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43307074/article/details/132101254

智能推荐

华为云-容器引擎CCE-基本概念-程序员宅基地

文章浏览阅读1.4w次。云容器引擎(Cloud Container Engine,简称CCE)提供高度可扩展的、高性能的企业级Kubernetes集群,支持运行Docker容器。借助云容器引擎,您可以在华为云上轻松部署、管理和扩展容器化应用程序。云容器引擎提供Kubernetes原生API,支持使用kubectl,且提供图形化控制台,让您能够拥有完整的端到端使用体验,使用云容器引擎前,建议您先了解相关的基本概念。集群(Cluster)集群指容器运行所需要的云资源组合,关联了若干云服务器节点、负载均衡等云资源。您可以理解为集群_cce

ZYNQ的定时器们(三)TTC定时器到底能干啥?_zynq xttcps_setinterval-程序员宅基地

文章浏览阅读3.5k次。ZYNQ的定时器们(三)TTC定时器到底能干啥?本文转载自:https://zhuanlan.zhihu.com/p/31643799?from_voters_page=trueZYNQPS部分的最后一种定时器TTC在UG585中的描述只有6页(P244-249),SDK中的API函数有15个,宏定义太多了,就没数了。那么TTC能干啥?忙完这阵子后终于可以来跟各位说道说道了。TTC定时器直译过来就是三路定时器,而ZYNQ中的PS有两个TTC,每一个定时器有三路,一共是6路。从上面的框图可以看出TTC每一_zynq xttcps_setinterval

MATLAB代码:基于二阶锥规划的主动配电网动态重构研究-程序员宅基地

文章浏览阅读42次。MATLAB代码:基于二阶锥规划的主动配电网动态重构研究参考文档:《考虑动态网络重构的主动配电网优化运行策略》参考了重构部分公式《主动配电网最优潮流研究及其应用实例》参考了二阶锥松弛部分公式仿真平台:MATLAB YALMIP+CPLEX优势:代码注释详实,适合参考学习,全程有讲解!,全程有讲解!程序非常精品!主要内容:代码主要主要研究的配电网优化,具体为配电网中的动态重构问题,代码分为两个部分,第一部分1)主动配电网单时段重构问题,重构结果以0-1变量表示,结果清晰明了;2)主动配电网多时段动态

无涯教程-PHP - xml_parse_into_struct函数-程序员宅基地

文章浏览阅读378次,点赞4次,收藏6次。无涯教程网提供xml_parse_into_struct - 语法 int xml_parse_into_struct ( resource $parser , stri...PHP 中的 xml_parse_into_struct函数 - 无涯教程网。它用于将任何格式化的XML解析为数组结构。它用于指定要使用的XML解析器。它用于指定XML数据的目标数组。它用于指定要解析的XML数据。它用于指定索引数据的目标数组。成功时返回1,失败时返回0。

找不到wifi,提示适配器的驱动程序可能出现问题_xioami 802.11n usb wireless adapter 驱动错误-程序员宅基地

文章浏览阅读3.6k次,点赞6次,收藏12次。找不到wifi,提示适配器的驱动程序可能出现问题_xioami 802.11n usb wireless adapter 驱动错误

【人工智能简史】第三章 第一个AI研究的黄金时代-程序员宅基地

文章浏览阅读1.4w次。在 1950、1960 年代,早期 AI 研究者们开发了一系列实验项目,如西蒙和纽埃尔的逻辑理论机(Logic Theorist)、麦卡锡的 Lisp 语言和明斯基的微世界(Micro World)等。总的来说,从 20 世纪 40 年代末到 50 年代的 AI 理论形成和发展过程,为后续的 AI 研究和应用奠定了坚实的基础。在本章中,我们将分析第一个 AI 研究的黄金时代,探讨其重要突破和成就,以及此阶段对 AI 发展历程产生的长远影响。这些算法穿插在人工智能的各个领域,推动着技术的创新与突破。

随便推点

sam机架和kx连线图_创新声卡KX 3552驱动连线搭载SAM机架-程序员宅基地

文章浏览阅读3.5k次。一般情况下我们的创新声卡要使用宿主机架都选择安装KX 3552驱动,而这个KX 3552驱动对Win 10系统兼容性不是很好,这主要是在搭载宿主机架加载KX 3552驱动的ASIO上,部分Win 10系统会出信号错乱,还有会出现(无法初始化)的问题,这个需要宿主机架设置(Win 7兼容性),问题还存在的,无解,只能换Win 7系统。还有需要注意,在安装KX 3552驱动的时候,请把所以的杀毒软件和..._创新声卡kx 3552驱动连线搭载sam机架

Springboot毕设项目核酸检测采集管理系统jfxxo(java+VUE+Mybatis+Maven+Mysql)_jfx后台管理系统-程序员宅基地

文章浏览阅读372次。Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。若包含,则为maven项目,否则为非maven项目。Springboot毕设项目核酸检测采集管理系统jfxxo(java+VUE+Mybatis+Maven+Mysql)Springboot + mybatis + Maven + Vue 等等组成,B/S模式 + Maven管理等等。其他版本理论上也可以。_jfx后台管理系统

Robotics System Toolbox学习笔记(一):简单建立一个机器人rigidBody、rigidBodyJoint用法_简述如何运用robotics toolbox建立机器人模型-程序员宅基地

文章浏览阅读4.8k次,点赞8次,收藏68次。文章目录软件介绍代码功能介绍rigidBodyrigidBody的性质rigidBody的函数rigidBodyJointrigidBodyJoint的性质rigidBodyJoint的函数例子参考软件介绍Robotics System Toolbox提供了用于设计,模拟和测试操纵器,移动机器人和类人机器人的工具和算法。对于机械手和类人机器人,该工具箱包括用于碰撞检查,轨迹生成,正向和反向..._简述如何运用robotics toolbox建立机器人模型

【python爬虫 系列 最终篇】16.利用多线程多进程爬取qq音乐全站所有信息和音乐_python爬取qq音乐-程序员宅基地

文章浏览阅读1.2w次,点赞11次,收藏45次。实战 爬取qq音乐1.项目详情歌手分区:(a-#)整个爬虫项目按功能分为爬虫规则和数据入库,分别对应文件 music.py 和 music_db.py。爬虫规则大致如下:在歌手列表(https://y.qq.com/portal/singer_list.html)中按照字母类别对歌手进行分类,遍历每个分类下的每位歌手页面,然后获取每位歌手页面下的全部歌曲信息。根据该设计方案列出遍历..._python爬取qq音乐

crontab每天8点_linux定时任务crontab设置每分钟、每小时、每天、每周、每月、每年定时执行...-程序员宅基地

文章浏览阅读4.4k次。之前写过一篇《crontab定时任务的一些写法整理》,可以作为本文的参考。今天对几种情况再写一下例子。crontab每分钟定时执行:*/1 * * * * service mysqld restart //每隔1分钟执行一次*/10 * * * * service mysqld restart //每隔10分钟执行一次crontab每小时定时执行:0 */1 * * * service mysql..._crontab每天19点和8点

图解系列--HTTP报文,HTTP状态码_http响应报文中状态码的字段是什么-程序员宅基地

文章浏览阅读823次,点赞23次,收藏19次。Http报文,Http状态码_http响应报文中状态码的字段是什么

推荐文章

热门文章

相关标签