ECCV2020最佳论文解读之递归全对场变换光流计算模型

作者:周仲凯
来源:公众号|计算机视觉工坊(系投稿)
计算机视觉三大国际顶级会议之一的 ECCV 2020 已经召开 。 今年 ECCV 共收到有效投稿 5025 篇 , 是 ECCV 2018 论文投稿数量的二倍还要多 , 接收论文1361 篇 , 接收率为 27% , 相比上届会议下降了约 5% 。 在接收论文中 , oral论文数为 104 篇 , 占有效投稿总数的 2% , spotlight 论文数目为 161 篇 , 占比约 3% 。 其中 , 最佳论文奖由普林斯顿大学 Zachary Teed 和 Jia Deng 摘得 , 论文题名为RAFT: Recurre-nt All-Pairs Field Transforms for Optical Flow 。 论文提出的RAFT模型由于其卓越的泛化能力 , 成为最新的光流baseline模型:该模型在KITTI在线评价指标中获得5.10%的异常值比率 , 相比于当前公布的最佳模型提升了16% , 且在MPI-Sintel在线评价指标中获得2.855px的端点误差 , 相比于当前公布的最佳模型提升了30% 。 本文首先将对光流的基本概念进行阐述 , 接着对RAFT光流计算模型的具体实施步骤以及对应的思路进行介绍与分析 。
1 光流的基本概念
光流是运动物体或场景表面像素点在投影平面的二维瞬时速度 , 因此图像序列对应的光流不仅携带其中运动目标与场景的运动信息 , 更包含了其结构信息 。
ECCV2020最佳论文解读之递归全对场变换光流计算模型文章插图
图1-1 光流可视化效果展示
图1-1分别展示了光流计算技术在运动目标检测中的应用 , 可以看到:精确的光流不仅可以给出连续图像帧中每一像素点的运动信息 , 还可清晰地分割出运动目标轮廓 , 其中 , 通过不同的颜色区分运动方向 , 颜色的深浅定义运动矢量大小 。
ECCV2020最佳论文解读之递归全对场变换光流计算模型文章插图
图1-2光流计算技术应用
21世纪以来 , 随着计算机计算的不断提升 , 光流计算技术广泛的应用于各种更高级的计算机视觉任务中 。 例如 , 图1-2(a) 在针对视频的人体行为识别的研究中 , 可利用人体行为的光流特征 , 增强在时空域中人体行为特征的表述能力 , 显著降低异常值点对行为识别产生的不良影响 。 图1-2(b) 在运动目标检测与目标跟踪的研究中:可根据光流检测运动目标的结构、位移特性 , 减少运动目标之间的匹配时间消耗 , 提升在摄像机运动情况下 , 目标检测、跟踪的鲁棒性 。 图1-2(c) 在机器人导航避障的研究中 , 可利用光流针对图像区域的矢量信息 , 获得机器人前方区域的避障信息 , 提升机器人行动决策的精度 。
2 RAFT光流计算模型
RAFT光流计算模型由特征提取模块、context提取模块、视觉相似性(Visual Similarity)计算模块以及更新迭代模块共同组成 。 下文将分别对RAFT光流计算模型中各模块的计算流程以及原理进行分析介绍 。
2.1 特征提取模块与context提取模块
特征提取模块的作用为提取输入第一帧、第二帧图像中的特征 , 其中特征的分辨率为输入图像的1/8 。 Context提取模块的作用同样为提取特征 , 只不过只提取第一帧图像的上下文信息特征 , 分辨率同样为输入图像的1/8 。 在结构上 , 特征提取模块context提取模块的结构基本类似 , 区别有两点:首先模块中选择的规范化层不同 , 特征提取模块采用的为instance规划化技术 , 而context提取模块采用的为batch规划化技术 。 其次特征提取模块输出单一的输入图像特征 , 而context提取模块输出两份输入的图像特征 。
2.2 视觉相似性(Visual Similarity)计算模块
视觉相似性计算模块的作用和2018cvpr光流领域经典论文PWC-Net的思想类似 , 区别便是 , PWC-Net是在每一层特征金字塔中利用上层金字塔预测光流对当前层的第二帧图像特征向第一帧图像特征进行warp , 然后对warp的第二帧图像特征与原始第一帧图像特征进行匹配获得对应的cost volume , PWC-Net中cost volume的尺寸为[batch, d, h, w] , 例如[2,81,24,80] , 代表第一帧图像特征中的每一个像素点 , 与warp后第二帧图像中以这个像素点为中心的9x9邻域范围内的点做匹配(点乘操作) , 如上式所示 , 其中k=4,代表匹配的半径长度为4 , 与分别代表第一帧图像特征中的像素点与第二帧图像特征中的像素点 , 总共对2个batch进行上述操作 。
ECCV2020最佳论文解读之递归全对场变换光流计算模型文章插图
而RAFT中的视觉相似性计算模块的计算流程是首先对第一帧图像特征与第二帧图像特征匹配获得一个[batch, h, w, h, w]的cost volume , 代表第一帧图像中的每一个像素点 , 都与第二帧图像特征中所有像素点进行匹