作者:iscream | 已授权转载(源:知乎)编辑:CVer
https://zhuanlan.zhihu.com/p/477669603
论文:https://arxiv.org/abs/2203.10887
代码: github.com/jiaw-z/FCStereo
太长不看导读三维空间中的一个场景在一组双目相机中成像得到左右两张图像。通过极线矫正后,同一个三维点在左右目图像中的映像点有着不同的水平方向坐标。通过把左右图像中的映像点对应起来,获得它们的相对位移(也称为视差),我们能够恢复出恢复三维场景的深度信息。
目前基于深度学习的端对端双目网络是当前的主流方法,但是他们的泛化性能普遍较差。比如在生成数据集(SceneFlow、VKITTI等)训练的网络,在真实数据集(KITTI、Middlebury等)上性能会显著下降。数据集的变化会使哪怕是类似场景下网络的表现也出现较大波动,例如两个数据集中同样在白天街道的场景下,网络预测视差的能力表现出很大的差异。

我们从特征一致性的角度出发,提出了一种相当简单的无痛提高双目匹配网络泛化性能的方法。如下图所示,目前通用的双目网络,使用一组权重共享的网络对左右目图像分别提取特征表示,并在特征上进行匹配获得视差信息。

具体来说,本篇文章从特征出发的同时,认为泛化的双目网络在跨域时并不需要特征的全部属性都具有不变,从而提出了一个比限制全部属性具有不变性更弱的限制——跨域时保持匹配点的特征表示一致性。我们的思路主要来源于对双目任务的思考:在深度学习前的传统方法,它们在RGB图像上根据先验的设计进行匹配,能在大多数场景下稳定地输出合理的视差图。对于由双目相机拍摄得到的一组左右RGB图像,它们之间的变化是相对较小的。由于各个场景中RGB图像左右目之间的一致性,传统方法能得到合理的匹配结果。如果我们能只通过约束双目一致性来提高双目网络的泛化性能的话,会比约束所有属性跨域一直保留更多的利于匹配的信息,例如,跨域方法往往考虑对颜色变化的鲁棒性,然而双目图像之间的颜色变化总是在一定(且一般较小)范围内,过度的去除掉某些属性虽然会使网络泛化变好,但也会损失某些本来利于匹配的信息。
论文详解近年来,基于深度学习的双目网络迅速发展起来,尤其是端到端的方法成为了当前的主流。它们通常使用一组权重共享的网络对左右目图像分别提取特征表示,并在特征上进行匹配获得视差信息。这些端到端的双目网络在各个公开的数据集上达到了最好的精度。然而,主流的双目网络泛化性能较差,限制了他们的实际应用。当前主流解决泛化问题的方法主要从网络的特征入手,使网络学习到跨域时具有不变性的特征表示。

端到端立体匹配网络框架
本篇文章从特征出发的同时,认为泛化的双目网络在跨域时并不需要特征的全部属性都具有不变,从而提出了一个比限制全部属性具有不变性更弱的限制——跨域时保持匹配点的特征表示一致性。我们的思路主要来源于对双目任务的思考:在深度学习前的传统方法,它们在RGB图像上根据先验的设计进行匹配,能在大多数场景下稳定地输出合理的视差图。对于由双目相机拍摄得到的一组左右RGB图像,它们之间的变化是相对较小的,可以认为具有对双目视角的不变性,而不同场景的RGB图像变化相比起来是变化极大地,可以认为RGB并没有完全的跨域不变性。由于各个场景中RGB图像左右目之间的一致性,传统方法能得到合理的匹配结果。如果我们能只通过约束双目一致性来提高双目网络的泛化性能的话,会比约束所有属性跨域一直保留更多的利于匹配的信息,例如,跨域方法往往考虑对颜色变化的鲁棒性,然而双目图像之间的颜色变化总是在一定(且一般较小)范围内,过度的去除掉某些属性虽然会使网络泛化变好,但也会损失某些本来利于匹配的信息。

我们验证了主流方法在生成数据集SceneFlow训练后在各个数据集上的匹配点特征相似度,发现特征的一致性不仅在跨域的时候出现明显下降,并且在训练集上的一致性也不尽人意。

一些对匹配点特征表示的可视化,即使左右目图像十分相近,网络得到的特征依然呈现出明显的不一致:

SceneFlow

KITTI-2015
因此我们需要面临两个挑战,对应着我们从特征一致性角度使双目网络泛化的出发点:
-
在训练集中学习到匹配点一致的特征表示。
-
使学习到的特征一致性能够泛化到未知的数据集中。
对于在训练集上的低相似度,我们认为这是缺乏约束造成的过拟合造成的。图像中的深度信息也可以从单张图像中很好的恢复出来,在这种情况下,尽管使用了左右目图像,网络的实质更倾向于用右目信息做补充来回归左目的深度信息,而非特征匹配。我们将基于像素级对比学习的损失应用于特征表示上,在特征空间上拉近匹配点并推远无关点。使用对比学习有效的达成了第一个要求,此时如何更好地将训练集上的特征一致性泛化到未知的domain上成了限制网络泛化性能进一步提高的瓶颈。当前的方法在网络中默认使用Batch Normalization来加速训练和收敛。然而,BN这种标准化的方式对于训练数据具有很强的依赖性。我们将部分BN替换为不依赖于训练集的Instance Normalization方式。在此基础上我们进一步考虑存储在特征协方差矩阵中的信息。我们根据协方差矩阵在双目图像中变化幅度的大小,去除掉对双目变化敏感的协方差矩阵中的信息。

我们的方法应用在主流模型上,明显地提高了他们的泛化性能。我们的方法从左右目特征一致性而不是通常的从domain shift的不变性出发,看似有些反直觉,却在泛化性能的表现上取得了很好的结果。本篇论文是对于双目网络新的泛化思路的一个很好的尝试,并表明双目特征的一致性与双目匹配网络的泛化性能有着密切的联系。


备注:作者也是我们「3D视觉从入门到精通」特邀嘉宾:一个超干货的3D视觉学习社区
本文仅做学术分享,如有侵权,请联系删文。
3D视觉工坊精品课程官网:3dcver.com
1.面向自动驾驶领域的多传感器数据融合技术
2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码) 3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进 4.国内首个面向工业级实战的点云处理课程 5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解 6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦 7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化 8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)
9.从零搭建一套结构光3D重建系统[理论+源码+实践]
10.单目深度估计方法:算法梳理与代码实现
11.自动驾驶中的深度学习模型部署实战
12.相机模型与标定(单目+双目+鱼眼)
13.重磅!四旋翼飞行器:算法与实战
14.ROS2从入门到精通:理论与实战
15.国内首个3D缺陷检测教程:理论、源码与实战
重磅!3DCVer-学术论文写作投稿 交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。
一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、答疑解惑、助你高效解决问题
觉得有用,麻烦给个赞和在看~