来源丨小张it

编辑丨计算机视觉工坊

论文题目:RAFT-Stereo: Multilevel Recurrent Field Transforms for Stereo Matching

作者:Lahav Lipson ;Zachary Teed; Jia Deng等人

作者机构:Princeton University(普林斯顿大学)

项目代码:https://github.com/princeton-vl/RAFT-Stereo(论文中提到的开源代码,用的是Pytorch框架)

在公众号「3D视觉工坊」后台回复「原论文」,可获取对应论文pdf文件。

RAFT-Stereo是一种用于立体匹配的算法,它使用多层循环场变换(Multilevel Recurrent Field Transforms)来精确定位左右两幅图像中的对应点。它包括一个RAFT网络和一个立体匹配分支,能够帮助解决深度估计中的一些挑战,如纹理缺失、遮挡和低纹理等问题。RAFT-Stereo能够有效地利用循环场变换来捕捉像素之间的长程依赖性,从而提高立体匹配的准确性。其次,它还使用了多个尺度和不同的分辨率,使算法对多尺度立体匹配具有良好的适应性。此外,RAFT-Stereo算法还采用了门控循环单元(GRU)来进一步提高处理速度。总的来说,RAFT-Stereo是一种有潜力的立体匹配算法,能够在多种深度估计应用中发挥作用。RAFT-Stereo也是作为middleburry排行榜中前五名中,唯一一个2021年就提出的算法,持续至今依然名列前茅。

1 前言

立体深度估计是一个基本的视觉问题,应用范围广泛。早期的研究集中在特征匹配和正则化两个关键部分。在处理中使用3D卷积神经网络计算代价体是主流方法,但代价较大,需要特殊方法才能操作高分辨率的图像。而光流问题则通常使用迭代精化的方法。光流和矫正立体镜头是紧密相关的问题,但两个任务的神经网络结构却有很大差异。这里,作者提出了RAFT-Stereo,一种新的双视立体结构体系,利用了RAFT特有的3D体积和迭代细化法。RAFT-Stereo仅使用2D卷积和一个轻量级的成本体积,相比之前的立体网络,具有更好的泛化能力且不需要复杂的损失项。RAFT-Stereo在KITTI、ETH3D和Middlebury等真实数据集上表现非常出色,且具有更好的跨数据集泛化能力。

2 相关背景

在计算机视觉领域,立体匹配一直是一个关键性的问题,早期方法集中在设计更好的匹配成本和高效的推断算法上,而深度学习被应用于改进立体匹配的成本函数。目前的方法更注重于端到端可训练的3D神经网络架构,该架构包括用于从图像块计算成本的2D卷积网络,构建3D成本体,以及3D卷积层用于处理该成本体。这些方法在一些数据集上表现出色,但3D卷积的计算成本很高,往往不能泛化到其被训练的领域之外。因此,尽管一些努力已经集中在提高它们的泛化能力上,但许多工作仍然需要通过替换更轻量级的模块来提高计算效率。RAFT-Stereo是一种内存效率更高的算法,能够在百万像素图像上预测全分辨率的立体。

3  方法

给定一对矫正后的图像(IL, IR),目标是估计一个视差场d,使每个IL中的像素都有水平的位移。与RAFT类似,RAFT-Stereo的方法由三个主要组件组成:特征提取器、相关金字塔和基于GRU的更新运算符,如图1所示。更新运算符迭代地从相关金字塔中检索特征并对视差场进行更新。

3.1  Feature Extraction - 特征提取

作者介绍了一种基于特征编码器和上下文编码器的特征提取方法。特征编码器应用于左右图像并生成密集的特征图,用于构造相关体积。上下文编码器与特征编码器结构相同,但采用批量归一化替代实例归一化,仅在左图像上应用。在作者的方法中,上下文特征用于初始化更新运算符的隐藏状态,并在每次迭代中注入GRU。

3.2  Correlation Pyramid - 相关金字塔

作者提出了相关金字塔,用于提高矫正立体视觉的精度和鲁棒性。相关体积基于特征向量之间的点积,用于计算图像之间的相似性;相关金字塔通过对最后一个维度进行平均池化构建,它具有增加的接受野,但仅通过对最后一个维度进行池化,可以保留原始图像中的高分辨率信息,从而允许恢复非常细微的结构;为了从相关金字塔中检索像素,作者使用相关查找算法,它利用一个类似于 RAFT 中定义的查找算子和线性插值来实现检索。该方法具有高效性和鲁棒性,并且易于实现。

3.3  Multi-Level Update Operator - 多级更新运算符

作者从一个初始的起点d0 = 0开始预测一系列视差场{d1、…、dN}。在每次迭代中,作者使用目前的视差估计来索引相关体积,产生一组相关特征。这些特征经过了2个卷积层。同样地,目前的视差估计也经过了2个卷积层。然后将相关特征、视差和上下文特征连接起来并注入到GRU中。GRU更新隐藏状态,新的隐藏状态然后用于预测视差更新。

多个隐藏状态:原始的RAFT完全在固定的高分辨率上进行更新。这种方法的一个问题是,随着GRU更新次数的增加,接受域的增加非常缓慢。这可能对纹理较大、局部信息较少的场景有影响。作者通过提出一个同时在1/8、1/16和1/32分辨率上操作特征映射的多分辨率更新运算符来解决这个问题。

上采样:预测的视差场分辨率为输入图像的1/4或1/8。为了输出全分辨率的视差图,作者使用了和RAFT相同的凸上采样方法。RAFT-Stereo将全分辨率的视差值视为其粗略分辨率邻居3x3网格的凸组合。最高分辨率的GRU预测凸组合权重。

3.4  Slow-Fast GRU - Slow-Fast递归神经网络模型

在这个部分中,作者介绍了Slow-Fast GRU的方法,针对隐藏状态的1/8分辨率进行GRU更新所需的FLOPs大约是更新1/16分辨率隐藏状态的4倍。为了加快推理速度,在RAFT-Stereo的一个版本中,每次更新1/8分辨率的隐藏状态时都会多次更新1/16分辨率和1/32分辨率的隐藏状态。这种修改将运行时间降低了52%,但是不显著降低性能,使得RAFT-Stereo能够在实时运行中得到高效的计算结果。

3.5  Supervision - 监督

在整个预测序列中,作者监督预测和地面真相差距之间的距离l1, {d1,…, dN},权值呈指数增长。给定地真差dgt,损失定义为:

4 实验

4.1 数据集和评估指标

作者在ETH3D、Middlebury 和KITTI-2015上评估了RAFT-Stereo的性能。遵循以前的工作,使用合成Sceneflow数据集对模型进行预训练。在ETH3D和Middlebury的排行榜上,RAFT-Stereo取得了较为先进的性能,并且RAFT-Stereo在ETH3D、KITTI和Middlebury的零样本泛化设置中优于其他的方法。

4.2 实施细节

RAFT-Stereo使用Pytorch实现,并使用两个RTX 6000 GPU进行训练。所有模块都从头开始随机初始化。在训练期间,使用AdamW优化器。在训练计划中进行32次视差场更新后评估RAFT-Stereo:最终模型使用批量大小为8的合成数据进行200k步的训练,而去除实验使用批量大小为6进行100k步的训练。在训练过程中运行消融实验,使用16个视差场更新,最终结果使用22个更新进行训练。作者使用一个单周期学习率计划,学习率最小值为。所有RAFT-Stereo实验都在随机选择的360x720裁剪上进行训练(不包括基准提交),所有实验,除了消融实验外,都使用数据增强。具体来说:图像饱和度在0(灰度)和1.4之间调整;右图被扰动以模拟常见于ETH3D和Middlebury等数据集中的不完美矫正;作者通过在范围内使用随机因子来拉伸图像和视差,以模拟一系列可能的视差分布。

4.3  Ablations - 消融

RAFT-Stereo使用了多个隐藏状态和单独的backbone来提高性能。在运行时间和内存使用方面做了权衡,并通过简化成本体积和Slow-Fast技术进一步加快了运行时间。在视差估计上保持更高的分辨率可以提高性能,但会增加运行时间和内存使用。最优分辨率视场大小的选择需要在准确性和计算代价之间进行权衡。

4.4  Real-time Inferences - 实时推理

RAFT-Stereo在KITTI分辨率下可实现实时推理,可与DSMNet相媲美。Slow-Fast双级GRU和单个backbone的使用是实现实时推理的关键。RAFT-Stereo实现的双线性采样器可以进一步优化成像质量。

5 总结

RAFT-Stereo利用多级GRUs扩展了RAFT,实现了双视图立体结构。它在跨数据集上的表现达到了先进水平,并且在Middlebury基准测试中排名持续位列前五,在ETH3D上表现也非常优秀。

RAFT-Stereo是一种基于RAFT的深度图估计算法。是一种稠密光流算法,能够在输入图像之间估计像素之间的运动。RAFT-Stereo的主要思想是将光流作为控制变量来解决输入图像的深度图估计问题。该算法在流形空间中优化存储着光流场和深度图的全局能量函数。这种方法既可以考虑全局的能量函数,又可以在局部优化,具有高准确性和稳定性。

相比传统的基于视差的立体匹配算法,RAFT-Stereo在场景中具有更高的鲁棒性和鲁棒性。此外,RAFT-Stereo还支持在多GPU上进行训练和推理,并且速度非常快。总之,RAFT-Stereo是一种强大的深度估计算法,具有高准确性和鲁棒性。它可以用于许多应用程序,例如3D场景重建、自动驾驶汽车、虚拟现实和增强现实等。

添加小助理微信dddvisiona, 即可加入「立体匹配」微信群。

持续在榜的RAFT-Stereo,你确定不来了解吗?相关推荐

  1. 玩心马宗骥:游戏持续“霸榜”幕后的数据真相

    精细化运营对游戏玩家新增.留存.转化.收入等各环节都起到极大促进作用.从游戏复杂.琐碎数据中挖掘数据价值,不断优化游戏机制设计.场景设计.故事情节设计.位置和物品设计.界面设计等,是游戏产品持续优化与 ...

  2. MySQL持续霸榜,《高性能MySQL》第4版追新巨献!

    2022年5月,StackOverFlow社区发布开发者调查报告,全世界超过70000名开发人员参与了调研,回答了他们的技术.工具以及工作偏好. 值得关注的是,在最流行的技术调查中,专业开发者群体的倾 ...

  3. MySQL持续霸榜,《高性能MySQL》第4版,限时五折!(送书福利)

    文末送书活动 2022年5月,StackOverFlow社区发布开发者调查报告,全世界超过70000名开发人员参与了调研,回答了他们的技术.工具以及工作偏好. 值得关注的是,在最流行的技术调查中,专业 ...

  4. GitHub标星90K,这份持续霸榜的Leetcode刷题手册到底有多强?

    写在前面 最近一个读者和我反馈,他坚持刷题2个月,终于去了他梦寐以求的大厂,薪资涨幅非常可观,期间面字节跳动还遇到了原题...并表示目前国内的大厂和一些独角兽,已经越来越效仿硅谷公司的做法,通过面试给 ...

  5. 「CSDN 2020年度博客之星」总榜单在此揭晓

    诗歌合为事而作,文章合为时而著!! 历经海选评审,投票晋级 ,专家评审等阶段的激烈角逐,2020年终盛典 "博客之星"总评选终于在 2021 年 2 月 5 日完美的落下帷幕!! ...

  6. 谁是“顶会狂魔”?周明、张潼等上榜,清华第四,北大第六 | 2018 ML和NLP顶会论文统计出炉...

    乾明 编译整理 量子位 出品 | 公众号 QbitAI 谁是"顶会狂魔"?谁的一作最多?哪家机构发表论文最多? 2018年落下帷幕,但围绕着AI研究实力的讨论仍在继续. 近日,剑桥 ...

  7. 全球霸榜的Dell EMC VxRail,靠什么赢得超融合客户认可?

    说到超融合市场,就不能不提Dell EMC VxRail,自2014年问世至今6年来,VxRail始终保持着高速成长. 根据IDC发布的<全球融合系统市场季度追踪报告>显示,2020年第一 ...

  8. 连续10年霸榜第一?程序员「最常用」的编程语言是它?

    近日,StackOverflow 发布了<2022年度开发者调查报告>,了解的程序员朋友们应该知道,StackOverflow 年度开发者调查,是面向全球开发者进行的规模最大.最全面的一次 ...

  9. 霸榜GitHubTrending的设计模式教程出纸质书啦

    设计模式本身是一种通用场景的解决标准和方案,而不是实际场景开发落地的指导手册.这种通用的解决标准和方案是研发人员在大量的项目中验证和提炼的结果,如果只是学习理论知识,没有经历过大型的项目开发,则很难理 ...

最新文章

  1. Javaweb中提到的反射浅析(附源码)
  2. Python 运行 Python hello.py 出错,提示: File stdin , line 1
  3. 如何下载python软件-python如何下载
  4. “问答官”活动SQL专场来啦!小米行李箱、无线鼠标等你拿!
  5. linux识别新加存储盘,Linux下新加磁盘
  6. 简单说说Java程序和Android开发框架
  7. 基于CAShapeLayer和贝塞尔曲线的圆形进度条动画
  8. 色差仪软件的安装和电池充电
  9. SpringCloud学习笔记016---在windows下搭建的Redis服务_在SpringBoot中使用Redis
  10. 亚马逊E2主机的参数配置流程
  11. html里面布局的优劣,HTML与CSS布局技巧总结
  12. 删除WIN10右键解压缩菜单
  13. 2020年9月中国编程语言排行榜
  14. SSL单向认证和双向认证
  15. 浏览器端可以直接运行Python了
  16. linux下ps ef命令详解,linux命令中ps -ef详解
  17. 航海新说|掌舵绝招 -- 弹性 · 敏捷 · 开放
  18. 浏览器暗黑模式-Dark深色模式
  19. 入坑rockchip 基础信息资料
  20. 芯片在计算机中作用是什么,芯片的主要作用

热门文章

  1. MeasureSpec的理解和详尽源码分析
  2. 试用虚拟服务器,免费试用的虚拟服务器
  3. 1.我所了解的内网渗透
  4. 小车yolo机械臂(一)ros下gazebo搭建小车(可键盘控制)安装摄像头仿真 加载yolo检测识别标记物体
  5. Java————ActionListener
  6. 登顶KITTI!Mix-Teaching:适用于单目3D目标检测的半监督方法【清华大学】
  7. 构建Django模型
  8. Kubernetes Secret的应用
  9. uoj problem 31 猪猪侠再战括号序列
  10. 记录使用WIN10自带的恢复功能,还原系统