前言

解决目标检测任务中目标实例的尺度变化问题一般有两种方法:

  1. 图像金字塔(image pyramid),即对输入图像进行一系列的缩放,只在测试时被使用。这种方法会占用大量内存并且计算很复杂;
  2. 特征金字塔(feature pyramid),训练和测试时都可以使用。与图像金字塔相比,它占用的内存和计算开支都很少。

如下图所示,有四种不同构成方式的特征金字塔:

SSD中,独立地利用了主干网络的最后两层,和经过步长为2的卷积得到的另外4个层来构成特征金字塔。在STDN中,只用了DenseNet的最后一个dense块,通过池化和尺度变换操作得到特征金字塔。在FPN中,通过top-down的通路和横向连接将深层特征和浅层特征融合起来,得到特征金字塔。以上方法构建的特征金字塔有以下两个缺点:

  • 金字塔中的特征图对目标检测任务来说不够典型(表达能力不够),它们只是简单的从主干网络的不同层中构造,并且主干网络是被设计进行目标分类任务的;
  • 特征金字塔中的每个特征图仅来自主干网络中的单一层,只包含单层信息。

一般来说,深层的高级特征有助于分类,浅层的低级特征有助于目标位置的回归。而且,低级特征适合于表征外观简单的目标,而高级特征适合于表观外观高级的目标。在实际中,如果两个目标的尺度相同,但它们的外观复杂度可能会不同。比如,红绿灯和较远处的行人的大小可能是一样的,但明显行人的外观复杂度更高。因此,以上方法的检测器的性能不佳主要是因为,特征金字塔中的特征图只包含单极特征。

为了克服以上方法的缺点,本文提出了一种效率更高的特征金字塔结构MLFPN(Multi-Level Feature Pyramid Network),它包括三个模块:FFM,TUM和SFAM。MLFPN的工作方式如下

  1. 首先FFMv1将主干网络提取的多级特征进行融合,作为base feature;
  2. 将base feature送入交替连接的TUM和FFM中,提取出更典型的多级多尺度特征。具体来说就是,每个TUM生成一组尺度不同的特征图,FFMv2将base feature和前一个TUM生成的最大的特征图融合起来,送入下一个TUM中,最终通过交替连接的TUM和FFMv2提取出多层级多尺度的特征。注意第一个TUM不包含任何其他TUM的信息;
  3. 最后SFAM将多组多尺度特征图中相同尺度的特征图组合起来,构成最终的特征金字塔。从下图可以看出,特征金字塔中的每一层都包括不同层级的特征图。

为了评估MLFPN的效率,论文还设计了一个端到端的one-stage的目标检测模型,称为M2Det,它是通过将MLFPN整合进SSD的结构得到的。主干网络和MLFPN提取出输入图像的特征,然后和SSD一样,生成密集的bbox和类别得分,最后通过NMS操作产生最终的预测结果。


MLFPN的结构

MLFPN输出的多层级多尺度特征图可以被计算为:

其中XbaseX_{base}Xbase​是base feature,xilx^{l}_{i}xil​表示第lll个TUM中第iii种尺度的特征,LLL表示TUM的数量,TlT_{l}Tl​表示第lll个TUM的处理过程,FFF表示FFMv1处理过程。

1. FFMs

FFMs将M2Det中不同层级的特征融合起来,为生成最终的多层级多尺度的特征图做准备。在融合时需要用1x1的卷积对输入特征的通道数进行压缩。

如上图所示,FFMv1的输入是主干网络中两个不同尺度的特征图,深层特征的大小为1024x20x20,浅层特征的大小为512x40x40。在融合时,需要对深层特征进行2x2的上采样操作,将其变为256x40x40,然后和浅层特征连结,生成768x40x40的base feature。

上图是FFMv2的融合过程。FFMv2将base feature和前一个TUM生成的最大的特征图连结起来,这两个特征的尺度是一样大的,都是40x40,因此不必再做上采样。

2. TUMs

TUMs采用了更薄的U型结构,如下图所示:

其中encoder是一系列步长为2的3x3的卷积层,就是图中上半部分的U型结构。decoder将ecoder的输出作为特征图的参考,因为ecoder的输出并不直接作为最终的特征图,还要由decoder对它们进行处理。在上采样和element-wise相加操作之后,在decoder分支(也就是图中下半部分的6个卷积层)中添加1x1的卷积,以增强学习能力并保持特征的平滑度。每个TUM中的decoder的所有输出构成了当前层级的多尺度特征图。如上图所示,所有decoder的输出构成的是当前这个层级的多尺度特征图。从整体来看,所有TUM的输出共同构成多尺度多层级的特征图。其中,靠前的TUM提供的是浅层特征,中间的TUM提供的是中级特征,后面的TUM提供的是高级特征。

3. SFAM

SFAM将TUM生成的多层级多尺度特征图聚合成一个多层级特征金字塔,如下图所示:

首先first stage沿着通道维度将相同尺度的特征图进行连结,这样多层级金字塔中的每个尺度都包含了多个层级的特征。在second stage,借用SE bolck,引入channel-wise attention module,以更好的捕捉有用的特征。在最终得到的多层级特征金字塔中,每一层都包含不同层级的特征图,也就是multi-level。TUM数量为8,每个TUM输出6个不同尺度的特征图,因此最终生成的多层级特征金字塔共有6层,每层包括8个不同层级的特征图


网络的训练

预训练
在ImageNet 2012数据集中先对主干网络进行预训练。MLFPN的默认配置包括8个TUM,每个TUM有5个卷积层和5次上采样操作。为了减少参数的数量,TUM生成的不同尺度的特征图的通道数被设置为256。输入图像的大小为320,512和800。

训练检测器
在多层级特征金字塔的每一层(共有6层)添加两个卷积层,分别进行回归和分类操作。在每一层的每个像素上设置6个anchor,有3种长宽比。之后以0.05的阈值过滤掉大多数得分较低的anchor。然后用soft-NMS得到更多更精确的box。


实验部分

M2Det 论文笔记相关推荐

  1. ORB-SLAM3 论文笔记

    ORB-SLAM3 论文笔记 这篇博客 ORB-SLAM3系统 相机模型的抽象(Camera Model) 重定位的问题 图片矫正的问题 视觉惯性SLAM的工作原理 相关公式 IMU初始化 跟踪和建图 ...

  2. 【论文笔记】 LSTM-BASED DEEP LEARNING MODELS FOR NONFACTOID ANSWER SELECTION

    一.简介 这篇论文由IBM Watson发表在2016 ICLR,目前引用量92.这篇论文的研究主题是answer selection,作者在这篇论文基础上[Applying Deep Learnin ...

  3. 最新图神经网络论文笔记汇总(附pdf下载)

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要15分钟 Follow小博主,每天更新前沿干货 [导读]近年来,图神经网络变得非常火热,每年顶会在该领域内都会出现大量的研究论文,本文为大家提 ...

  4. [论文笔记] Fast Quality Driven Selection of Composite Web Services (ECOWS, 2006)

    Time: 4.0 hours Jae-Ho Jang, Dong-Hoon Shin, Kyong-Ho Lee, "Fast Quality Driven Selection of Co ...

  5. 论文笔记之:Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning

    论文笔记之:Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning  2017-06-06  21: ...

  6. 光流 速度_[论文笔记] FlowNet 光流估计

    [论文笔记] FlowNet: Learning Optical Flow with Convolutional Networks 说在前面 个人心得: 1. CNN的光流估计主要是速度上快,之后的v ...

  7. 论文笔记 《Maxout Networks》 《Network In Network》

    原文出处:http://zhangliliang.com/2014/09/22/paper-note-maxout-and-nin/ 论文笔记 <Maxout Networks> & ...

  8. 论文笔记:HKMF-T: Recover From Blackouts in TaggedTime Series With Hankel Matrix Factorization

    论文笔记:Hankel Matrix Factorization for Tagged Time Series to Recover Missing Values during Blackouts_U ...

  9. 论文笔记 A Spatial-Temporal Decomposition Based Deep Neural Network for TimeSeries Forecasting

    0 abstract 空间时间序列预测问题出现在广泛的应用中,如环境和交通问题.由于存在特定的空间.短期和长期模式,以及维度的诅咒,这些问题具有挑战性. 在本文中,我们提出了一个用于大规模空间时间序列 ...

  10. 论文笔记:Autoregressive Tensor Factorizationfor Spatio-temporal Predictions

    0 摘要 张量因子tensor factorization分解方法在时空数据分析领域很受欢迎,因为它们能够处理多种类型的时空数据,处理缺失值,并提供计算效率高的参数估计程序. 然而,现有的张量因子分解 ...

最新文章

  1. MySQL安装过程启动mysqld_safe中提示的pid ended错误导致无法启动问题处理
  2. JavaScript作用域学习笔记
  3. 科普:浅谈 Hellinger Distance
  4. Oracle下scott用户无法登录
  5. pycharm的console输入如何换行
  6. Python凭什么成为增速最快的编程语言:21条调查说明一切
  7. Java多线程学习十六:读写锁 ReadWriteLock 获取锁有哪些规则
  8. git统计每个人的代码行数_程序员实用工具,推荐一款代码统计神器GitStats
  9. 2010年的最后一天,我又辞工(日记)
  10. 吴恩达深度学习——编程1
  11. Ubuntu16.04编译Android源码系列一——7.1.2和4.4及踩坑
  12. 符冉迪 计算机 培训,采用多模糊支持向量机决策融合的积雨云检测.pdf
  13. google vr 简介
  14. [免费专栏] Android安全之Android Xposed插件开发,小白都能看得懂的教程
  15. 如何做好开发组长工作
  16. 如何学习一门计算机语言?
  17. 警惕:暮光之城破晓2免费电影票骗局
  18. 瑞吉外卖-2022微信小程序点餐项目
  19. OJ--童年生活二三事
  20. (一)VirtualBox及其扩展包下载安装

热门文章

  1. Java中遍历Map集合的3种方式
  2. xsd是什么文件,作用是什么?
  3. 微信读书 iOS 性能优化总结
  4. SQL Server 游标
  5. nodejs下载图片
  6. windows安装tomcat8
  7. Ubuntu 配置 SFTP 服务器
  8. 高等数学下——平面与直线
  9. 【预测模型】基于贝叶斯优化的LSTM模型实现数据预测matlab源码
  10. Flutter diff: /../Podfile.lock: No such file or directory AndroidStudio上的解决