SEPC:使用3D卷积从FPN中提取尺度不变特征,涨点神器 | CVPR 2020
作者 | 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相关推荐
- SEPC:商汤提出使用3D卷积从FPN中提取尺度不变特征,涨点神器 | CVPR 2020
论文提出PConv为对特征金字塔进行3D卷积,配合特定的iBN进行正则化,能够有效地融合尺度间的内在关系,另外,论文提出SEPC,使用可变形卷积来适应实际特征间对应的不规律性,保持尺度均衡.PConv ...
- OpenCV中的尺度不变特征变换(SIFT Scale-Invariant Feature Transform)
OpenCV中的尺度不变特征变换(SIFT Scale-Invariant Feature Transform) 1. 效果图 2. 原理 2.1 步骤 2.2 opencv实现方法 2.3 SIFT ...
- 目标检测中多尺度:特征金字塔FPN_Feature Pyramid Networks for Object Detection
原始内容来源于: https://blog.csdn.net/cdknight_happy/article/details/100528127 https://blog.csdn.net/WZZ181 ...
- 特征点提取—尺度不变特征SIFT算法
目录 SIFT算法概述 尺度空间与与金字塔表达 1 高斯模糊 2 金字塔构建 2.1 金字塔多分辨率 3.空间极值点检测(关键点的初步探查) 4.关键点描述 4.1 KPD生成 4.2.关键点的主方向 ...
- 无需3D运动数据训练,最新人体姿势估计方法达到SOTA | CVPR 2020
作者 | Muhammed Kocabas 译者 | 刘畅 出品 | AI科技大本营(ID:rgznai100) 人体的运动对于理解人的行为是非常重要的.尽管目前已经在单图像3D姿势和动作估计方面取得 ...
- CVPR 2020 SEPC论文解析:使用尺度均衡金字塔卷积做目标检测
点击上方"AI公园",关注公众号,选择加"星标"或"置顶" 导读 只说重要的,计算量基本不变,涨AP,3.5个点! 论文:https://a ...
- 【论文解读】CVPR 2020 SEPC论文解析:使用尺度均衡金字塔卷积做目标检测
导读 只说重要的,计算量基本不变,涨AP,3.5个点! 论文:https://arxiv.org/abs/2005.03101 代码:https://github.com/jshilong/SEPC ...
- 深度学习(6)之卷积的几种方式:1D、2D和3D卷积的不同卷积原理(全网最全!)
深度学习(6)之卷积的几种方式:1D.2D和3D卷积的不同卷积原理(全网最全!) 英文原文 :A Comprehensive Introduction to Different Types of Co ...
- 多通道和单通道3D卷积及其运算过程详解
多通道和单通道3D卷积过程详解 前言 3D卷积作用 Pytorch中对应函数参数详解 单通道3D卷积详解 多通道3D卷积 前言 大家对1D卷积的介绍以及2D卷积中单通道和多通道的介绍已经十分完备了,我 ...
最新文章
- 众人皆醉我独醒——深入理解“特征值”和“特征向量”
- 邪恶的三位一体:机器学习、黑暗网络和网络犯罪
- mysql 数据目录迁移_MySQL数据库数据文件路径迁移步骤
- linux下将只读文件改为可读可写
- spark提交应用的全流程分析
- CXF与Web项目集成---without Spring
- ProgressDialog 一个使用类,多多提建议
- registerModulePath
- 图论--最短路--SPFA
- HALCON示例程序inspect_solar_fingers.hdev太阳能电池板电路缺陷检测
- 如何做好一场技术演讲?
- sqlmap 用户手册(续)
- 动态规划解题一般思路
- python 环境管理工具_python3环境管理器
- hzwap u.php_『THINKPHP』U 函数
- wince +C#拼音码形成代码
- 深度学习在内窥镜图像方面的研究:
- 位置不可用无法访问介质受写入保护的恢复方法
- linux服务器架设篇 下载_后渗透系列——下载(Windows篇)
- lofter 爬虫_Python网络爬虫1 - 爬取网易LOFTER图片