作者 | VincentLee

来源 | 晓飞的算法工程笔记 公众号 

特征金字塔是解决物体尺度问题的重要手段,但是不同level的特征图其实存在较大的语义差距。为了消除这些语义差距,很多研究专注于如何加强特征的融合,但这些研究大都直接将特征图缩放相加,没有很好地考虑特征金字塔的内在属性。

受尺度空间理论(多尺度提取特征点)的启发,论文提出PConv(pyramid convolution),使用3-D卷积来关联相近的特征图,挖掘尺度间的相互作用。考虑到特征金字塔的层间特征变化较大,层间各点的对应无规律,论文提出SEPC(scale-equalizing pyramid convolution)对特征金字塔的高层特征进行可变形卷积,能够自适应实际的尺度变化,保持层间尺度均衡。

论文的主要贡献如下:

  • 提出轻量级金字塔卷积PConv,对特征金字塔进行3-D卷积来挖掘内在尺度的关联性。

  • 提出尺度均衡的金字塔卷积SEPC来减少特征金字塔与高斯金字塔间差异(论文证明了PConv在高斯金字塔上具有尺度不变性)。

  • 该模块能够提升SOTA single-stage目标检测算法的性能,而且几乎不影响推理速度。

Pyramid convolution

PConv(pyramid convolution)其实是个3-D卷积,横跨尺度和空间维度,如图4a所示,PConv可表示为N个不同的2-D卷积。

但不同pyramid level的特征图大小是不同的,为了容纳不同的尺寸,在PConv在处理不同的特征图时使用不同的stride,论文采样,首个卷积核的stride为2,最小的的卷积核的stride为0.5。

PConv可表示为公式1,、和为3个独立的2-D卷积核,为输入的特征图,代表stride为2的卷积核。

stride为0.5的卷积核先对特征图双线性上采样2倍,再用stride为1的卷积核进行处理。PConv也使用zero-padding,对于底层和顶层的pyramid level仅需使用公式2的其中两项即可,PConv的计算量大约为原始FPN的1.5倍。

Pipeline

如图5a所示,RetinaNet可看作是的PConv,将4个Conv head替换成的PConv head,堆叠的PConv能够有效地逐步提高相关性,而且不会带来过多的额外计算。但为了尽可能减少计算量,可以选择分类和定位分支先共享4层PConv,再额外分别添加一层普通卷积层,如图5b所示,这样设计的计算量甚至比原生的RetinaNet还要少,具体计算可以看原文Appendix 1。

Integrated batch normalization (BN) in the head

  PConv使用共享的BN层,统计feature pyramid中所有特征图,而不是单图统计。由于统计来自于pyramid内所有的特征图,方差会变得更小。这样,即使使用很小的batch size也可以很好地训练BN层(方差较稳定)。

Scale-equalizing pyramid convolution

PConv对于不同的level都使用固定的卷积核大小,在高斯金字塔上(模糊程度不严重且高斯核接近特征图缩放比例),PConv能够提取尺度不变的特征,具体证明可以看原文Appendix 3。

但实际中,由于多层卷积和非线性操作的存在,特征金字塔的模糊程度比高斯金字塔要严重得多(特征的缩放程度可能跟特征图大小不成比例),使用固定的卷积核大小很难提取尺度不变的特征。为此,论文提出SEPC(scale-equalizing pyramid convolution),对除最底层外的高层特征使用可变形卷积,单独预测一个offset,能够自适应各层的模糊程度,保持特征图间的尺度均衡,从而提取尺度不变的特征。

  SEPC主要有以下好处:

  • 可变形卷积的自适应性能够处理特征金字塔较大的层间模糊程度。

  • 消除特征金字塔与高斯金字塔间的差异(论文证明PConv能够对高斯金字塔提取特征不变的特征)。

  • 由于高层特征的卷积计算量相对于低层减少了4倍(面积减少),对高层加入可变形卷积仅带来少量额外的计算量。

  SEPC分为两个版本,SEPC-full对图5b的Combined head和Extra head加入SEPC,而SEPC-lite则仅对Extra head加入SEPC。

Experiments

Single-stage object detectors

Effect of each component

Comparison of different BN implementations in the head

BN层的输出,和为参数,和为统计结果,图7的三种BN的对比,其中Integrated BN(iBN)为论文提出的共享BN,全部参数和统计共享

Comparison with other feature fusion modules

Comparison with state-of-the-art object detectors

Extension to two-stage object detectors

结论

论文提出PConv为对特征金字塔进行3D卷积,配合特定的iBN进行正则化,能够有效地融合尺度间的内在关系,另外,论文提出SEPC,使用可变形卷积来适应实际特征间对应的不规律性,保持尺度均衡。PConv和SEPC对SOTA的检测算法有显著地提升,并且没有带来过多的额外计算量。

论文地址:https://arxiv.org/pdf/2005.03101.pdf

论文代码:https://github.com/jshilong/SEPC

推荐阅读

  • 真没想到,Python 还能实现 5 毛特效

  • Go远超Python,机器学习人才极度稀缺,全球16,655位程序员告诉你这些真相

  • 深度学习基础总结,无一句废话(附完整思维导图)

  • 第一个"国产"Apache 顶级项目 Kylin,了解一下!| 原力计划

  • 调查了 17,000 多位程序员,当前的云原生开发现状究竟如何?

  • CSW:惊天巨骗 or 比特币“图腾”中本聪?

  • 你点的每个“在看”,我都认真当成了AI

SEPC:使用3D卷积从FPN中提取尺度不变特征,涨点神器 | CVPR 2020相关推荐

  1. SEPC:商汤提出使用3D卷积从FPN中提取尺度不变特征,涨点神器 | CVPR 2020

    论文提出PConv为对特征金字塔进行3D卷积,配合特定的iBN进行正则化,能够有效地融合尺度间的内在关系,另外,论文提出SEPC,使用可变形卷积来适应实际特征间对应的不规律性,保持尺度均衡.PConv ...

  2. OpenCV中的尺度不变特征变换(SIFT Scale-Invariant Feature Transform)

    OpenCV中的尺度不变特征变换(SIFT Scale-Invariant Feature Transform) 1. 效果图 2. 原理 2.1 步骤 2.2 opencv实现方法 2.3 SIFT ...

  3. 目标检测中多尺度:特征金字塔FPN_Feature Pyramid Networks for Object Detection

    原始内容来源于: https://blog.csdn.net/cdknight_happy/article/details/100528127 https://blog.csdn.net/WZZ181 ...

  4. 特征点提取—尺度不变特征SIFT算法

    目录 SIFT算法概述 尺度空间与与金字塔表达 1 高斯模糊 2 金字塔构建 2.1 金字塔多分辨率 3.空间极值点检测(关键点的初步探查) 4.关键点描述 4.1 KPD生成 4.2.关键点的主方向 ...

  5. 无需3D运动数据训练,最新人体姿势估计方法达到SOTA | CVPR 2020

    作者 | Muhammed Kocabas 译者 | 刘畅 出品 | AI科技大本营(ID:rgznai100) 人体的运动对于理解人的行为是非常重要的.尽管目前已经在单图像3D姿势和动作估计方面取得 ...

  6. CVPR 2020 SEPC论文解析:使用尺度均衡金字塔卷积做目标检测

    点击上方"AI公园",关注公众号,选择加"星标"或"置顶" 导读 只说重要的,计算量基本不变,涨AP,3.5个点! 论文:https://a ...

  7. 【论文解读】CVPR 2020 SEPC论文解析:使用尺度均衡金字塔卷积做目标检测

    导读 只说重要的,计算量基本不变,涨AP,3.5个点! 论文:https://arxiv.org/abs/2005.03101 代码:https://github.com/jshilong/SEPC ...

  8. 深度学习(6)之卷积的几种方式:1D、2D和3D卷积的不同卷积原理(全网最全!)

    深度学习(6)之卷积的几种方式:1D.2D和3D卷积的不同卷积原理(全网最全!) 英文原文 :A Comprehensive Introduction to Different Types of Co ...

  9. 多通道和单通道3D卷积及其运算过程详解

    多通道和单通道3D卷积过程详解 前言 3D卷积作用 Pytorch中对应函数参数详解 单通道3D卷积详解 多通道3D卷积 前言 大家对1D卷积的介绍以及2D卷积中单通道和多通道的介绍已经十分完备了,我 ...

最新文章

  1. 众人皆醉我独醒——深入理解“特征值”和“特征向量”
  2. 邪恶的三位一体:机器学习、黑暗网络和网络犯罪
  3. mysql 数据目录迁移_MySQL数据库数据文件路径迁移步骤
  4. linux下将只读文件改为可读可写
  5. spark提交应用的全流程分析
  6. CXF与Web项目集成---without Spring
  7. ProgressDialog 一个使用类,多多提建议
  8. registerModulePath
  9. 图论--最短路--SPFA
  10. HALCON示例程序inspect_solar_fingers.hdev太阳能电池板电路缺陷检测
  11. 如何做好一场技术演讲?
  12. sqlmap 用户手册(续)
  13. 动态规划解题一般思路
  14. python 环境管理工具_python3环境管理器
  15. hzwap u.php_『THINKPHP』U 函数
  16. wince +C#拼音码形成代码
  17. 深度学习在内窥镜图像方面的研究:
  18. 位置不可用无法访问介质受写入保护的恢复方法
  19. linux服务器架设篇 下载_后渗透系列——下载(Windows篇)
  20. lofter 爬虫_Python网络爬虫1 - 爬取网易LOFTER图片

热门文章

  1. 如何用谷歌(Chorme) 浏览器查看请求头(header)、响应头?
  2. 苹果总部员工悼念乔布斯
  3. 运用if语句,制作年龄阶段判断
  4. 微信小程序之云数据库增删改查
  5. 171. Excel 表列序号/ 168. Excel表列名称 ( 26进制转换变形 )
  6. 哈啰是好单车,但哈啰出行是好生意吗?
  7. 邮箱投递简历注意哪些礼仪?
  8. nginx安装及部署
  9. 网页自适应手机、电脑屏幕的设置方法
  10. 第三节:整型数据和实型数据