没有合适的资源?快使用搜索试试~ 我知道了~
12991×高效多视点立体图像的广义二分搜索网络香港科技大学电子工程系{zmiaa,dchangac} @ connect.ust.hk,danxu@cse.ust.hk摘要具有已知相机参数的多视图立体(MVS)本质上是在有效深度范围内的1D搜索问题最近的基于深度学习的MVS方法通常在深度范围内密集地采样深度假设,然后构建用于深度预测的过度消耗内存的3D成本体积。虽然从粗到细的采样策略在一定程度上缓解了这一开销问题,但MVS的效率仍然是一个公开的挑战。在这项工作中,我们提出了一种新的方法,高效的MVS,显着减少内存足迹,同时明显推进国家的最先进的深度预测性能。我们调查什么样的搜索策略可以合理地最佳的MVS考虑到帐户的效率和有效性。我们首先将MVS表示为一个二叉搜索问题,并据此提出了一个广义二叉搜索网络。具体地,在每个步骤中,深度范围被分成2个箱,在两侧具有额外的1个误差容限箱。执行分类以识别哪个仓包含真实深度。我们还设计了三种机制来分别处理分类错误、处理超范围样本和减少训练记忆。新的公式使得我们的方法在每一步中只需要采样很少的深度假设,这是非常高效的记忆,也大大有助于快速训练收敛。在竞争性基准测试上的实验表明,我们的方法以更少的内存实现了最先进的精度。特别是,我们的方法在DTU数据集上获得了0.289的总分,在所有基于学习的方法中,在挑战Tanks and Temples 高 级 数 据 集 我 们 的 代 码 将 在https://github.com/MiZhenxing/GBi-Net 上发布。1. 介绍多视图立体(MVS)是计算机视觉中一个长期存在的基本课题,其目的是从一组重叠图像中重建场景的3D几何形状[9,10,26,32,35]。用已知的摄像头-密集线性回归搜索通过回归进行密集粗到细搜索分类二分查找假设仓边不同检索(a)(b)第(1)款图1. (a)与DTU [2]上先前最先进的基于学习的MVS方法[5,11,33,34,41,44,45]的之间的关系,整体错误和GPU内存开销与图像大小1152 - 1600和图像数5。(b)比较了以前的密集搜索和提出的二分搜索。MVS匹配图像中的像素以计算密集对应并恢复3D点,这本质上是一个1D搜索问题[8]。深度图由于其规则的形状而被广泛用作3D表示。为了克服复杂的纯基于几何的方法中的粗匹配问题,最近基于学习的MVS方法[14,21,41,42]设计了用于密集深度预测的深度网络,以显着推进传统管道。例如,MVSNet [41]和RMVSNet [42]建议从具有密集深度假设的2D图像特征构建3D成本体积。 3D成本体积是5D张量,并且通常 由 3D 卷 积 神 经 网 络 ( CNN ) 或 递 归 神 经 网 络(RNN)正则化以用于深度预测。3D成本体积正则化对于精确深度预测的重要性已由其他工作[4,5,11]证实。然而,一个严重的问题是,3D成本卷是高度消耗内存的。现有的工作通过降低特征图的分辨率来解决这个问题[41],使用从粗到细的策略,逐渐提高特征图的分辨率,同时降低深度假设数[4,5,11],并删除昂贵的3D CNN或RNN[33,40]。虽然记忆可以在一定程度上减轻,但通常观察到相对较低的准确性。3D成本体积的大小,特别是深度假设数,12992在造成大内存占用方面起着主导作用。由于3D成本量在模型效率和有效性方面的重要性,自然会出现一个关键问题:在保持尽可能小的内存开销的同时,确保满意的精度的最小卷大小是多少?在这项工作中,我们调查这个问题,从离散搜索策略的角度探索,以确定一个最小的深度假设数,在3D成本卷的一个关键因素。如图1 b,vanilla MVSNet [41]可以被视为一种密集搜索方法,它以并行方式检查所有深度假设,类似于线性搜索。从粗到细的方法[5,11]执行多粒度搜索,从粗级别开始并逐渐细化预测。然而,这两种类型的方法都考虑密集搜索在每个阶段。我们认为,密集搜索并不一定保证更好的准确性,由于更大的预测空间,并显着增加模型的复杂性,导致更高的优化难度在模型训练。为了探索合理的最优搜索策略,我们首先将MVS表示为二分搜索问题,它可以显著地将成本体积大小降低到极低的界限。 它执行比较,并消除了每一阶段搜索空间的一半(见图1)。1b),并且可以在对数级内快速收敛到细粒度。与从深度范围直接采样深度值的基于回归的方法相比,我们首先将深度范围划分为2个箱。在我们的设计中,网络的我们使用两个箱的中心点来表示它们并构建3D成本量。二进制搜索提供了优越的效率,但它带来了out-of- bin错误的问题如果在某个阶段,预测选择了错误的bin,则误差将在稍后的搜索阶段中累积,从而导致不稳定的优化梯度和相对较低的准确度。为了解决这个问题,我们进一步设计了三种有效的机制,并相应地提出了一种用于高效MVS的广义二进制搜索深度网络,称为GBi-Net。第一种机制是我们在两侧填充两个误差容限箱,以减少超出箱的预测误差。第二个机制是培训。 如果网络在搜索阶段对像素的bin产生预测错误,我们将在下一阶段停止该像素的前向传递,并且该阶段的梯度不用于更新网络。大量的实验表明,所提出的GBi-Net可以大大减少3D成本体积的大小,以获得显着有效的网络,更重要的是,在深度预测性能上没有任何权衡。第三是有效的梯度更新。它在每个搜索阶段立即更新网络参数,而不像大多数工作那样在不同阶段它可以大大减少在保持成绩的同时训练记忆力。我们的方法在不同的竞争数据集上实现了最先进的性能,包括DTU [2]和Tanks Temples [17]。值得注意的是,在DTU上,我们实现了0.289的总得分(越低越好),显著改进了先前的最佳性能方法,并且还获得了与UCSNet [5]相比48.0%的存储器效率改进和与CasMVSNet [11]相比54.1%的存储器效率改进1a)。总之,我们的贡献有三个方面:• 我们从搜索策略的角度研究了有效的MVS,并提出了一种离散二分搜索方法MVS(Bi-Net),可以大大减少3D成本卷的内存使用。• 通过进一步设计三种机制(即:填充误差容限箱、梯度掩蔽和有效梯度更新),以避免错误网络预测的误差累积并提高效率。• 我们在几个具有挑战性的MVS数据集上评估了我们的方法,并在深度预测精度和内存效率方面显着提高了现有的最先进的方法。2. 相关工作本文从两个方面对相关文献进行了综述,即:传统的MVS和基于学习的MVS。传统的多视图立体。 在3D重建中,使用各种3D表示,例如体积表示[18,27]、点云[9,19]、网格[6,16,29,30]和深度图[3,10,26]。在MVS [23,26,35]中,深度图在鲁棒性、效率方面具有优势。他们估计每个参考图像的深度图,并将它们融合到一个3D点云中。例如,COLMAP [26]同时估计逐像素视图选择、深度和表面法线。ACMM [35]利用多假设联合投票方案从不同候选人中进行视图选择这些现有的方法进行建模的遮挡,照明跨相邻视图的深度估计。虽然可以获得稳定的结果,但在复杂场景中匹配噪声高和对应定位差仍然是严重的限制。因此,我们的方法主要集中在开发一个基于深度学习的MVS流水线,以提高估计性能。基于学习的多视点立体。基于深度学习的MVS方法[13,15,34,41]最近已经取得了显著的性能。基于深度学习的方法通常利用Deep CNN来估计密集深度图。最近,3D成本体积已广泛用于MVS [33,37,41,45]。作为一种开创性的方法,MVSNet [41]从特征扭曲中构建3D成本体积,并使用3D CNN对成本体积进行深度回归。12993Stage1体积概率1/4预测深度WF3Dargmax掩模1/4初始假设4一热损失阶段2体积概率argmax掩模10/8预测深度WF3D4U独热损失阶段3体积概率预测深度简体中文WF3Dargmax掩模4独热损失W型翘曲3D 3D CNNF体积融合U向上采样2D要素i=0时i=1联系我们- -图2.我们的GBi-Net的多阶段框架。2D CNN首先提取2D特征图。然后构造一个3D代价体,并通过可微翘曲和仅4个深度假设进行融合。通过3D CNN对成本量进行正则化,并使用独热标签和训练掩码获得损失计算我们使用argmax操作选择当前阶段的深度仓然后,我们用我们提出的广义二叉搜索更新下一阶段的深度假设。vanilla MVSNet的主要问题是3D成本卷的大量内存消耗。循环MVSNet架构[34,38,42]利用循环网络来调节成本量,这可以在测试阶段在一定程度上减少内存使用。然而,来自3D成本量的主要开销并没有通过这些现有方法具体地解决。为了重建高分辨率深度图,同时获得存储器有效的成本体积,提出了基于级联的流水线[5,11,39],考虑从粗到细的密集搜索策略以逐渐细化深度。例如,CasMVSNet [11]在第一阶段利用粗略特征图和深度假设进行粗略深度预测,然后在下一阶段对深度图进行上采样并缩小Patch- matchnet [33]学习深度假设的自适应传播和评估。它消除了3D成本体积的重正则化,以实现有效的模型,同时在效率和准确性之间进行然而,这些现有的工作仍然考虑在每个回归阶段的密集搜索。 昂贵的3D成本体积上的存储器开销显然没有被优化,而所提出的方法利用所设计的二分搜索网络来瞄准高效的MVS,这在很大程度上提高了模型效率,并且更重要的是,不牺牲任何深度预测性能。3. 所提出的方法在本节中,我们将介绍所提出的用于高效MVS的广义二叉搜索网络(GBi-Net)的详细结构。总体框架是示于图二、它主要包括两个部分,即。用于学习视觉图像表示的2D CNN网络,以及用于迭代深度估计的广义二进制搜索网络。GBi-Net包含K个搜索阶段。在每个搜索阶段中,我们首先通过在特定的对应尺度中的参考和源特征图之间的可微分变形来计算3D成本体积。然后通过3D CNN正则化3D成本体积以用于深度标签预测。广义二进制搜索负责根据预测的标签迭代地初始化和更新深度假设在每两个阶段中,网络处理相同比例的特征图,并且共享网络参数。最后,从地面实况深度图计算用于训练整个网络的接下来,我们首先介绍了第二章中的二维图像3.1节中的3D成本体积正则化。3.2.然后,我们详细介绍了我们提出的二叉搜索MVS和广义二叉搜索MVS在第二节。3.3和Sec. 3.4分别。最后,我们在第二节中介绍了整体网络优化。三点五3.1. 图像编码输入由N个图像IiN−1组成。I0是一个参考图像,IiN−1是N的集合1来源im-年龄我们使用特征金字塔网络(FPN)[20]作为图像编码器来学习具有共享网络参数的图像的通用表示。从FPN,我们得到了一个金字塔的特征地图与4个不同的尺度。为了获得更强大的图像表示,一个可变形卷积网络(DCN)[7]层被用作每个尺度的输出层,以更有效地捕获对MVS任务非常有益的场景上下文。共享参数12994{|}i=1联系我们{|}我·⟨··⟩W( p)iV(j,p,g)ii·i=1i=13.2. 成本量规范化构建3D成本卷是基于深度学习的MVS的关键步骤[41]。我们提出的建议广义二叉搜索网络的成本卷建设和正则化在第k个搜索阶段给出D个深度假设,即. dk,jj= 1,...,D,可以通过在学习的图像特征图上进行可重构变形来构建像素密集的3D成本体积[33,41]。为了简化描述,我们在以下公式中忽略阶段指数kMVS的输入包括相对摄像机旋转[5,11]建议以从粗到细的方式构建成本卷,这在一定程度上减少了内存使用然而,在每个迭代阶段中,采样仍然非常密集,因此模型效率远低于最优。在这项工作中,我们探索了一个合理的最佳抽样策略,从离散搜索的角度高效的MVS,并提出了一个二叉搜索方法(Bi-Net)。具体而言,我们将当前深度范围划分为仓,而不是直接对给定深度范围R中的深度值进行采样。对于第k个搜索阶段,我们将深度范围划分为2个相等的区间,即.{B k,j|j= 1,2},其中B k,j表示aRF0→Fi 翻译TF0→Fi 从参考特征图斌 第一阶段中B1,j的面元宽度为R/2。 正如我们不能直接使用离散箱来扭曲特征图,F0到源特征图Fi。它们对应的相机本征函数K0、Ki也是已知的。 我们首先通过可微扭曲和分组相关性从N 1个源图像特征图构建一组2视图成本体积 ViN-1[12,33,37]。 设p是I0中的一个像素,p′是源图像Ii中p的第j个深度假像的变形像素,即, dj。那么p′可以通过下式计算:我们对2个面元的中心点进行采样,以表示面元的深度假设,然后构造成本量并对2个面元执行标签预测设2个区间的从左到右的三个边为ek,m m= 1,2,3。然后,binBk,j的两个边缘是ek,j和ek,j+1。例如,ek,1和ek,2是Bk,1的边。然后,可以如下计算2个区间的深度假设dk,jp′=Ki·(RF→F·K−1·p·dj+tF→F),(1)e+e我我我dk,j =k,jk,j+1,j= 1,2。(四)2其中特征图F0和Fi都具有Nc的通道尺寸。在[12]之后,我们沿着通道维度将特征映射的通道划分为Ng组,因此每个特征组具有Nc/Ng通道。设Fg是Fi的第g个特征群.然后,我们可以从Fi计算第i个成本体积Vi,如下所示:V(j,p,g)=Ng<$Fg(p),Fg(p′)<$.(二)深度假设的预测标签指示真实深度值是否在对应的仓中。在第k个搜索阶段,在网络输出概率体积P之后,我们沿着P的D维应用argmax()操作,其返回标签j,指示真实深度值在binBk,j中。 在第(k+ 1)搜索阶段的新的2个二进制可以通过如下方式进一步生成:iNc0iBk,j 分成两个等宽的箱子Bk+1,1和Bk+1,2,以及其中, 表示通过内积运算的相关性计算。分组相关性使我们能够在该阶段对应的三个边可以定义为:ek,j+ek,j+1更有效地构建全成本卷。在每个2视图成本体积的构造之后,我们应用几个3Dek+1,1=ek,j;ek+1,2=2;ek+1,3 =ek,j+1。(五)CNN层预测一组像素权重矩阵{Wi}N −1。 然后,我们通过加权融合[33,37]将这些成本量融合成一个成本量V,其中{Wi}N-1为:N−1V(j,p,g)=i=1。(三)i=1然后通过3D UNet [24,41]对融合的3D成本体积V进行正则化,其逐渐将V的通道大小减小到1并输出大小为D,H,W的体积,即体积的空间最后,沿着D维执行Softmax()函数以产生用于计算训练损失和标签的概率量P3.3. 二进制搜索MVS多视图立体网络[11,41,42]通常对每个像素的深度假设进行密集采样以构建3D成本体积,从而导致非常高的内存占用。为了缓解这个问题,最近的基于级联的MVS方法12995然后从中心采样新的深度假设对于第(k+ 1)级,仓Bk+1,1和Bk+1,2在所提出的二分搜索中的初始bin宽度是R/2,并且在第k阶段中,bin宽度是R/2k。利用我们提出的二分搜索策略,3D成本体积的深度维度可以减少到2,这将成本体积大小推到极低的界限,并且内存占用显著减少。在我们的实验中,二进制搜索MVS取得了令人满意的结果,优于现有的几个竞争方法,和整个MVS网络的内存开销成为主导的2D图像编码器,不再由3D成本卷。然而,如引言中所讨论的,网络分类错误的问题可能导致不稳定的优化和降低的准确性。3.4. MVS的广义二叉搜索为了处理MVS的二叉搜索中的错误积累和训练问题,我们扩展了它,12996{|}−{|}{|}{|}ΣΣ阶段11/42 2更新ETB阶段210/823更新ETB阶段3简体中文44更新ETB深度箱ETB深度假设预测标签GT深度图3.广义二进制搜索(Generalized Binary Search)我们根据标签将选定的bin细分为两个bin。然后,我们在两侧填充容错箱(ETB)。我们检查这个像素的渐变蒙版。只有当它是有效的,损失可以参与反向传播。一个用于MVS的广义二进制搜索。具体地说,我们进一步设计了三种有效的机制:容错箱、梯度屏蔽优化和高效的梯度更新机制,对二叉搜索方法进行了实质性的误差容限区间。 获取所选bin后bin,当在第3搜索阶段真实深度在B3,4中时,网络可以预测正确的标签4,而原始的二进制搜索失败。屏蔽优化。所提出的GBi-Net以监督的方式进行训练。从地面实况深度图生成地面实况标签。在第k个搜索阶段,在我们获得bin之后,我们计算哪个bin被地面实况深度值占据。然后,我们可以利用独热编码将地面实况深度图转换成地面实况占用体积G,其进一步用于损失计算。迭代搜索中的一个问题是一些像素的地面实况深度值可能在D面元之外。在这种情况下,没有有效的标签存在,损失无法计算。这是网络优化中的一个关键问题。粗到细方法通常利用连续回归损失,而具有离散分类损失的现有MVS方法[42]广泛采用密集空间离散化。在我们的GBiNet中,针对这个问题设计的机制是基于bin和地面真实深度图计算每个阶段的掩码图。如果像素的地面实况深度设像素的地面实况深度为dgt,Bk,j在第k个搜索阶段,我们首先将其分为两个新的箱边 e m m= 1,.,D+ 1,省略阶段索引为简单起见。则像素仅在以下情况下有效:如图2所示,对于下一个第(k + 1)级的bin B k+1,1和B k+1,2。3.第三章。为了使网络具有一定的容忍预测误差的能力,我们建议在Bk+1,1的左侧和Bk+1,2的右侧分别增加一个小的bin.这个过程被称为误差容限箱(ETB)。更正式地,给定D(D是偶数并且足够小)作为最后的箱数,我们将(D2)/2个箱填充到原始两个箱的两侧。 填充后,D个新的垃圾箱,I.E. B k+1,jj = 1,...,D,以及它们相应的面元边缘,即, e k+1,mm = 1,.,D +1。我们仍然对中心点进行采样,作为深度假设d k+1,jj= 1,.,D从这些箱与方程。4.第一章误差容限箱将深度假设的采样扩展到二进制搜索中的两个原始箱之外的范围,从而使网络能够校正预测并在一定程度上减少误差累积。 由于深度假设数现在是D,因此我们还改变了第一阶段中深度假设的初始化。 由于初始深度范围R被分割成D个仓,因此初始仓宽度为R/D,并且在第k级中,仓宽度为R/(D × 2k-1)。在我们的网络实现中,我们在两侧仅填充1个ETB这导致深度假设数为4,I.E. D= 4。在实验中,我们观察到显着的IM-证明了深度预测精度,同时值得注意的是,由于存储器仍然由2D图像编码器支配,因此存储器消耗可以与原始二进制搜索相同图3显示了我们的GBi-Net的一个真实示例。假设数D被设置为4。有了容错能力e1≤d gt
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++标准程序库:权威指南
- Java解惑:奇数判断误区与改进方法
- C++编程必读:20种设计模式详解与实战
- LM3S8962微控制器数据手册
- 51单片机C语言实战教程:从入门到精通
- Spring3.0权威指南:JavaEE6实战
- Win32多线程程序设计详解
- Lucene2.9.1开发全攻略:从环境配置到索引创建
- 内存虚拟硬盘技术:提升电脑速度的秘密武器
- Java操作数据库:保存与显示图片到数据库及页面
- ISO14001:2004环境管理体系要求详解
- ShopExV4.8二次开发详解
- 企业形象与产品推广一站式网站建设技术方案揭秘
- Shopex二次开发:触发器与控制器重定向技术详解
- FPGA开发实战指南:创新设计与进阶技巧
- ShopExV4.8二次开发入门:解决升级问题与功能扩展
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功