三维视觉论文阅读:PWCNet2018双目光流

论文

PWC-Net: CNNs for Optical Flow Using Pyramid, Warping, and Cost Volume
Models Matter, So Does Training: An Empirical Study of CNNs for Optical Flow Estimation

摘要

PWCNet是Nvidia提出的光流估计方法,在网络模型和训练方法上都进行比较深入的讨论。这个组还复现了FlowNet2,比原作者的FlowNet2影响还大,可见这篇论文的作者对光流的理解之深刻。因此个人感觉,如果要做光流匹配的研究,本篇论文必不可少。

模型

FlowNet2证明了串联多个网络可以提高光流估计的质量,但是这样的后果是训练复杂和参数量成倍增加。针对此问题,PWCNet利用多尺度特征来替换网络串联,其大致网络结构如下。PWCNet首先通过CNN卷积得到多层的特征,然后从低分辨率开始估计光流,并将低分辨率的光流上采样到高分辨率,同时构建cost volume和预测当前分辨率的光流,最后逐步得到最终分辨率的光流结果。
在这里插入图片描述
针对其中光流的coarse-to-fine过程,有一个更详细的示意图如下,接下来就具体介绍各个模块的事情。
在这里插入图片描述

1. 多尺度特征提取

多尺度特征提取直接使用CNN网络即可,没有什么特别的地方。不过不同尺度,可以认为具有不同感受野,就和传统方法里的金字塔一个意思。

2. 多尺度光流估计

对于最低尺度,直接用cnn估计即可,类似于FlowNetS。
然后将其上采样一次,同时光流大小乘2(为什么要乘2,原因自己想);得到光流后,参照FlowNet的方法对右特征图(注意是特征图,不是原始影像)进行warp;最后参照FlowNetC的方法,直接对左特征图和warp后的右特征图进行关联计算,构建出cost volumn,并回归出当前尺度的光流。

3. 光流优化

完成最终尺度的光流估计后,还需要一步进行光流优化。这个也是一堆CNN网络,只是不需要降低分辨率。在本文里直接用了7个3*3的空洞卷积,在保证计算量的前提下提高视野,保证优化时能够提高光流质量。

训练

PWCNet的作者也意识到训练非常的麻烦,所以也进行了非常细致的讨论。为此,本文将训练分成两个阶段,预训练阶段和优化训练阶段

1. loss函数

PWCNet在预训练阶段使用了2范数,加快收敛速度,公式如下
在这里插入图片描述
在优化训练阶段使用了1范数,并在一定程度上去除外点,提升光流质量,公式如下
在这里插入图片描述

2. learning rate调整

在预训练阶段的learning rate,PWCNet和FlowNet2的方式一样,此处不展开。
在优化训练阶段,其learning rate有特殊的变化模式,如下图所示,即先逐步减小,然后再增大减小。不过我还没看到作者解释为啥这么做,不过估计是为了防止陷入局部解。
在这里插入图片描述

3. 数据增强

在数据增强方面,作者强调没有添加高斯噪声,但是增加了水平翻转。具体原因,论文里我似乎也没有看到,以后看代码在想想。

结果

相比FlowNet2,PWCNet实现的更加优雅,结果也是非常不错的。
在这里插入图片描述

  • 8
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值