Flow-Guided Feature Aggregation for Video Object Detection论文笔记
摘要
目前检测的准确率受物体视频中变化的影响,如运动模糊,镜头失焦等。现有工作是想要在框的级别上寻找时序信息,但这样的方法通常不能端到端训练。我们提出了flow-guided feature aggregation,一个用于视频物体检测的端到端学习框架。在特征级别上利用时序信息,通过相邻帧的运动路径提高每帧的特征,从而提高检测的准确率。
简介
特征提取网络提取出每帧的feature maps。为了enhance被处理帧的特征,用一个光流网络(flownet)预测相邻帧和该帧之间的motions。从邻近帧得到的feature maps 被光流 warped to the reference frame。The warped feature maps以及its own feature maps在一个自适应的加权网络中聚合。聚合后的feature maps are fed to 检测网络得到该帧最后的检测结果。其中,所有的特征提取模型都是trained end-to-end。

框架的主要思想如上图。最后一层为原图,可以发现第t帧经过光流处理的特征并不明显,而第t-10帧及t+10帧较明显,于是用motion-guided spatial warping预测帧之间的motion。得到warping后的feature maps,将这些特征融合。将融合后的feature map fed to detection network得到最后的检测结果。
由上文可知,框架需要两个主要模型,一是motion-guided spatial warping, 另一个是feature融合。
框架介绍
1. flow-guided warping
对于相邻两帧,首先用flownet得到 a flow field(Mi->j = F(Ii,Ij))。之后warping得到的初始化feature maps,得到flow-guided warp(fj->i = W(fj, Mi->j))。
2. feature aggregation
如何求解融合的weights?首先在不同的空间位置用不同的weights,让所有的特征通道用相同的空间weights。得到的weights记作wj->i。每个位置的wj->i(p)都被normalized,即相邻2k+1帧该点的weights之和为1。
3. adaptive weight
adaptive weight表示相邻2K帧对当前帧影响的程度。if fj->i(p) is close to fi(p), 则将被分配一个较大的weight,相反。用余弦相似度来测量两者之间close的程度。
除此之外,不直接用融合得到的特征,而是用一个tiny fcn处理 fi 和 fj->i,用于计算embedding features。
4. 算法流程

上图对算法流程介绍的很详细,就不再一一解释了。
实验
光流用的flownet, feature network实验了resnet-50, resnet-101,tiny fcn只有三层,检测网络用的R-FCN。
论文中对不同运动速度及不同网络不同条件下的实验结果做了详细介绍。

福利:代码这个月已经在github上开源 : https://github.com/msracver/Flow-Guided-Feature-Aggregation
Flow-Guided Feature Aggregation for Video Object Detection论文笔记的更多相关文章
- video object detection
先说一下,我觉得近两年最好的工作吧.其他的,我就不介绍了,因为我懂得少. 微软的jifeng dai的工作. Deep Feature Flow github: https://github.co ...
- 【Network Architecture】Feature Pyramid Networks for Object Detection(FPN)论文解析(转)
目录 0. 前言 1. 博客一 2.. 博客二 0. 前言 这篇论文提出了一种新的特征融合方式来解决多尺度问题, 感觉挺有创新性的, 如果需要与其他网络进行拼接,还是需要再回到原文看一下细节.这里 ...
- 论文笔记:AdaScale: Towards real-time video object detection using adaptive scalingAdaScale
AdaScale: Towards real-time video object detection using adaptive scaling 2019-02-18 16:14:17 Paper: ...
- Parallel Feature Pyramid Network for Object Detection
Parallel Feature Pyramid Network for Object Detection ECCV2018 总结: 文章借鉴了SPP的思想并通过MSCA(multi-scale co ...
- 目标检测--Rich feature hierarchies for accurate object detection and semantic segmentation(CVPR 2014)
Rich feature hierarchies for accurate object detection and semantic segmentation 作者: Ross Girshick J ...
- Feature Pyramid Networks for Object Detection比较FPN、UNet、Conv-Deconv
https://vitalab.github.io/deep-learning/2017/04/04/feature-pyramid-network.html Feature Pyramid Netw ...
- 论文笔记:Rich feature hierarchies for accurate object detection and semantic segmentation
在上计算机视觉这门课的时候,老师曾经留过一个作业:识别一张 A4 纸上的手写数字.按照传统的做法,这种手写体或者验证码识别的项目,都是按照定位+分割+识别的套路.但凡上网搜一下,就能找到一堆识别的教程 ...
- 『计算机视觉』FPN:feature pyramid networks for object detection
对用卷积神经网络进行目标检测方法的一种改进,通过提取多尺度的特征信息进行融合,进而提高目标检测的精度,特别是在小物体检测上的精度.FPN是ResNet或DenseNet等通用特征提取网络的附加组件,可 ...
- 目标检测系列 --- RCNN: Rich feature hierarchies for accurate object detection and semantic segmentation Tech report
目标检测系列 --- RCNN: Rich feature hierarchies for accurate object detection and semantic segmentation Te ...
随机推荐
- Ajax获取数据的几种格式和解析方式
一.什么是ajax AJAX的全称是Asynchronous JavaScript and XML(是异步的 javascript 和 XML). ajax不是新的编程语言,而是一种使用现有标准的 ...
- Java自学手记——集合
- git的一些基本命令
1.创建一个新的仓库:(选择一个合适的地方,创建一个空目录) $mkdir learngit //learngit是用git新建的一个目录 $cd learngit $pwd //pwd命令用于显示当 ...
- C++学习(三)入门篇——函数
C++函数分两种:有返回值的和没返回值的 1.有返回值的函数 调用函数流程 如图,sqrt(6.25)为函数调用,被调用的函数叫做被调用函数,包含函数调用的函数叫做调用函数. 参数是发送给函数的信息, ...
- C++第一篇--类的引入
C++第一篇--类的引入 1. 用C语言输出两个人的信息 Person1.c:通过字符实现 #include <stdio.h> int main(int argc,int **argv) ...
- 如何快速轻松学习bootstrap
我以前也是通过看一些视频教程来学的,比如慕课网上的,比如51cto上的那些零基础入门bootstrap什么的,还有一些培训班里流传出来的,感觉晕乎乎的,不知所云. 还是在后面不断使用的过程中慢慢体会到 ...
- 基于.NET CORE微服务框架 -谈谈surging的服务容错降级
一.前言 对于不久开源的surging受到不少.net同学的青睐,也受到.net core学习小组的关注,邀请加入.NET China Foundation以方便国内.net core开源项目的推广, ...
- Docker进阶使用1
容器间共享文件 Docker 的容器和外部环境是相对隔离的,并且容器是一次性的,运行结束后并不会有任何的持久化的文件或者数据.所以当我们需要做应用数据的持久化,或者保留应用的日志文件时,我们需要用到 ...
- 【Log4j】分包,分等级记录日志信息
在开发中我们经常会将不同包下的日志信息在不同的地方输出,以便于以后出问题能够直接在对应的文件中找到对应的信息! 例如:在spring+SpringMVC+mybatis的框架中,我们经常会将sprin ...
- 显示引擎innodb状态详解
很多人让我来阐述一下 SHOW INNODB STATUS 的输出信息,了解SHOW INNODB STATUS都输出了几个什么信息,并且我们能够这些信息中获取什么资讯,得以提高MySQL性能. 首 ...