新闻  |   论坛  |   博客  |   在线研讨会
持续在榜的RAFT-Stereo,你确定不来了解吗?
计算机视觉工坊 | 2023-05-20 17:10:27    阅读:149   发布文章

图片

论文题目: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框架)

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场景重建、自动驾驶汽车、虚拟现实和增强现实等。

图片图片图片


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客