光流模型概述:从 PWC-Net 到 RAFT

2022-01-18 09:46:49 浏览数 (1)

本文内容

背景

PWC-Net:传统算法与深度学习的结合

RAFT:All pairs correlation recurrent refinement

总结

1. 背景

从 2015 年的 FlowNet 到现在 Sintel 榜单第一(更新日期:2021.11.29 )GMA,已有数十篇基于深度学习的光流估计的论文。仔细读下来,会发现 PWC-Net 应该是经典中的经典,很多光流算法是基于 PWC-Net 的框架来是实现的;而 2020 的 RAFT 则是另一个划时代意义的算法,也已经有若干篇论文基于它的结构来拓展。本文主要介绍这两种算法的结构,希望能帮助大家能快速了解光流领域的经典算法。

2. PWC-Net:传统算法与深度学习的结合

图 1:传统算法 v.s. PWC-Net

PWC-Net 的设计遵循了三个简单而成熟的原则:金字塔处理,warping 操作和代价计算 ( cost volume )。在传统算法中,如图1左部分所示,通过代价计算得到图像之间的相似度,构建图像金字塔,以处理对不同尺度的光流,再利用 warp 操作按 coarse-to-fine 的顺序,将上一层估计出的光流应用到当前层,以达到逐步优化的目的。

基于传统算法框架设计的 PWC-Net 的模型结构如图 1 右部分所示,一共包括 5 个部分,分别是:

Feature pyramid

Warping layer

cost volume layer

Optical flow estimator

Context network

借鉴传统光流算法的框架设计出来的 PWC-Net 模型是非常简洁且高效的,因此后续的算法大多是在此基础上实现的,直到 2020 年的 RAFT,跳出了这个框架,也大幅度刷新了 SOTA 的记录

3. RAFT: All pairs correlation recurrent refinement

RAFT 是 ECCV2020 的 best paper,将一种全新的模型结构引入到光流领域。它的模型由三个部分组成:

特征提取

相关性计算

循环迭代更新

图 2:RAFT 算法

4. 总结

本文主要介绍了光流估计中两个经典算法的模型结构,PWC-Net RAFT,初看时觉得它俩相差还挺大的,但实际上,虽然 RAFT 没有特征金字塔,但为了对不同尺度的光流估计提供更好的相关性特征,也构建了相关性金字塔(correlation pyramid);虽然 RAFT计算的是 all-pairs correlation,但是查找表操作在每个iteration 查找的 correlation 也还是局部的。最后也建议大家去读一下 PWC-Net 和 RAFT 的原文以及代码,也可以参考这两个算法在 MMFlow 里的实现

除了模型结构,还有很多模型实现细节和训练技巧本文没有展开讲解,另外也有其他很精彩的光流模型也很值得解读分享。如果有想了解的内容,可以评论告诉我们。

0 人点赞