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



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

论文: Scale-Equalizing Pyramid Convolution for Object Detection

Introduction


  特征金字塔是解决物体尺度问题的重要手段,但是不同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,论文采样$N=3$,首个卷积核的stride为2,最小的的卷积核的stride为0.5。

  PConv可表示为公式1,$w_1$、$w_0$和$w_{-1}$为3个独立的2-D卷积核,$x$为输入的特征图,$*_{s2}$代表stride为2的卷积核。

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

Pipeline

  如图5a所示,RetinaNet可看作是$N=1$的PConv,将4个Conv head替换成$N=3$的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层的输出$y=\gamma \frac{x-\mu}{\sigma} + \beta$,$\gamma$和$\beta$为参数,$\mu$和$\sigma$为统计结果,图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

CONCLUSION


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





如果本文对你有帮助,麻烦点个赞或在看呗~

更多内容请关注 微信公众号【晓飞的算法工程笔记】

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

  1. 基于3D卷积神经网络的人体行为理解(论文笔记)(转)

    基于3D卷积神经网络的人体行为理解(论文笔记) zouxy09@qq.com http://blog.csdn.net/zouxy09 最近看Deep Learning的论文,看到这篇论文:3D Co ...

  2. 基于3D卷积神经网络的行为识别:3D Convolutional Neural Networks for Human Action Recognition

    简介: 这是一片发表在TPAMI上的文章,可以看见作者有余凯(是百度的那个余凯吗?) 本文提出了一种3D神经网络:通过在神经网络的输入中增加时间这个维度(连续帧),赋予神经网络行为识别的功能. 相应提 ...

  3. 了解1D和3D卷积神经网络 | Keras

    当我们说卷积神经网络(CNN)时,通常是指用于图像分类的2维CNN.但是,现实世界中还使用了其他两种类型的卷积神经网络,即1维CNN和3维CNN.在本指南中,我们将介绍1D和3D CNN及其在现实世界 ...

  4. 从单一图像中提取文档图像:ICCV2019论文解读

    从单一图像中提取文档图像:ICCV2019论文解读 DewarpNet: Single-Image Document Unwarping With Stacked 3D and 2D Regressi ...

  5. 利用ROS工具从bag文件中提取图片

    bag文件是ROS常用的数据存储格式,因此要从bag文件中提取数据就需要了解一点ROS的背景知识. 1. 什么是ROS及其优势 ROS全称Robot Operating System,是BSD-lic ...

  6. (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)

    openssl  rsa      是RSA对称密钥的处理工具 openssl  pkey   是通用非对称密钥处理工具,它们用法基本一致,所以只举例说明openssl rsa. 它们的用法很简单,基 ...

  7. 硕毕论文_基于 3D 卷积神经网络的行为识别算法研究

    论文标题:基于 3D 卷积神经网络的行为识别算法研究 来源/作者机构情况: 中  国  地  质  大  学(北京),计算机学院,图像处理方向 解决问题/主要思想贡献: 1. 使用张量CP分解的原理, ...

  8. [数据科学] 从csv, xls文件中提取数据

    在python语言中,用丰富的函数库来从文件中提取数据,这篇博客讲解怎么从csv, xls文件中得到想要的数据. 点击下载数据文件http://seanlahman.com/files/databas ...

  9. 如何使用免费PDF控件从PDF文档中提取文本和图片

             如何使用免费PDF控件从PDF文档中提取文本和图片 概要 现在手头的项目有一个需求是从PDF文档中提取文本和图片,我以前也使用过像iTextSharp, PDFBox 这些免费的PD ...

随机推荐

  1. JavaScript实现选择排序

    一.选择排序简介 **冒泡排序.插入排序.选择排序合称为简单排序.**下面是选择排序的思想: 假设有一个数组a,我们想象成有一个班级名叫a班,现在全班随意排成一排,排头的位置是a[0],排尾的位置是a ...

  2. spark系列-4、spark序列化方案、GC对spark性能的影响

    一.spark的序列化 1.1.官网解释 http://spark.apache.org/docs/2.1.1/tuning.html#data-serialization 序列化在任何分布式应用程序 ...

  3. 数学--数论--HDU 2104 丢手绢(离散数学 mod N+ 剩余类 生成元)+(最大公约数)

    The Children's Day has passed for some days .Has you remembered something happened at your childhood ...

  4. 图论--割点--Tarjan模板

    #include <iostream> #include <algorithm> #include <cstdio> #include <cstring> ...

  5. mock-server 之 mock 接口测试

    1.mock 介绍 mock 除了用在单元测试过程中,还有一个用途,当前端开发在开发页面的时候,需要服务端提供 API 接口,此时服务端没开发完成,或者说没搭建测试环境,这个时候前端开发会自己 moc ...

  6. python(while 循环语句)

    一.循环语句 1.while 循环 当我们在 python 中需要重复执行一些动作的时候,这时我们就要用到循环 while 循环的结构,当条件成立的时候,就会执行里面的代码 while 循环不断的运行 ...

  7. libevent(五)event

    libevent使用struct event来表示一个事件. #define evutil_socket_t int #define ev_uint8_t unsigned char #define ...

  8. 一步一步教你PowerBI数据分析:制作客户RFM数据分析

    客户分析就是根据客户信息数据来分析客户特征,评估客户价值,从而为客户制订相应的营销策略与资源配置.通过合理.系统的客户分析,企业可以知道不同的客户有着什么样的需求,分析客户消费特征与商务效益的关系,使 ...

  9. 解决使用nlpir分词,遇到License过期问题

    问题:使用pynlpir分词,遇到License过期问题 抛出异常:pynlpir.LicenseError: Your license appears to have expired. Try ru ...

  10. FOC 电流采样方案对比(单电阻/双电阻/三电阻)

    如果本文帮到了你,帮忙点个赞: 如果本文帮到了你,帮忙点个赞: 如果本文帮到了你,帮忙点个赞: 创作不易 谢谢支持 文章目录 1 电流采样的作用 2 硬件架构 3 采样关键 4 采样方案 5 三电阻采 ...