论文阅读:Deformable ConvNets v2
论文地址:http://arxiv.org/abs/1811.11168
作者:pprp
时间:2019年5月11日
0. 摘要
DCNv1引入了可变形卷积,能更好的适应目标的几何变换。但是v1可视化结果显示其感受野对应位置超出了目标范围,导致特征不受图像内容影响(理想情况是所有的对应位置分布在目标范围以内)。
为了解决该问题:提出v2, 主要有
- 扩展可变形卷积,增强建模能力
- 提出了特征模拟方案指导网络培训:feature mimicking scheme
结果:性能显著提升,目标检测和分割效果领先。
1. 简介
Geometric variations due to scale, pose, viewpoint and part deformation present a major challenge in object recognition and detection.
目标检测一个主要挑战:尺度,姿势,视角和部件变形引起的几何变化
v1 引入两个模块:
- Deformable Convolution : 可变形卷积
- 通过相对普通卷积基础上添加的偏移解决
- Deformable RoI pooling : 可变形 RoI pooling
- 在RoI pooling 中的bin学习偏移
为了理解可变形卷积,进行了可视化操作:
samples for an activation unit tend to cluster around the object on which it lies.
激活单元样本点聚集在目标附近
但是覆盖范围不够精确,超出the area of interest
由此提出DCNv2, 具有增强建模的能力,可用于学习可变形卷积
with enhanced modeling power for learning deformable convolutions.
添加了两种互补的模式:
- 更广泛应用可变形卷积,在更多层上使用可变形卷积
- 在原有基础上不仅加上偏移(offset),而且加上幅值(amplitude)的控制
为了充分利用可变形卷积提取的信息,吸取知识蒸馏的手段,进行培训。
- 教师网络:R-CNN, 针对裁剪内容进行分类的一个网络,防止学习不在目标范围以外的内容
- 学生网络:Faster R-CNN
2. 可变形卷积行为分析
2.1 空间支持可视化
可视化三个内容:
- 有效感受野 : 可视化感受野
- 有效采样位置: 对采样点求梯度,然后可视化
- 误差界限显著性区域 : 参考显著性分析理论,进行可视化
2.2 可变形网络空间支持

Faster R-CNN中Conv1-Conv4使用在Head中的,Conv5使用在Classification network上

ResNet-50 Conv5里边的3$\times$3的卷积层都使用可变形卷积替换。Aligned RoI pooling 由 Deformable RoI Pooling取代,当offset学习率设置为0,那么Deformable RoI Pooling就退化为Aligned RoI Pooling。 ps: 这是V1中的操作。

从中观察到:
- 常规卷积可以一定程度上模拟几何变化,通过网络权重做到的
- 可变形卷积模拟几何变化能力显著提升,但是不够精确。
3. 更多可变形卷积层
v2 中进行改进的部分主要有三点
3.1 使用更多的可变形卷积
在Conv3, Conv4, Conv5中所有的3$\times$3的卷积层全部被替换掉。对于pascal voc简单数据集,堆叠三层以上就会饱和。
3.2 在DCNv1基础(添加offset)上添加幅值参数
回顾一下DCNv1:

R 是相当于3$\times$3的kernel, \(p_0\)是当前中心点,\(p_n\)枚举每一个点。

可见,在普通卷积基础上,offset \(\Delta p_n\)是主要改进点。
那DCNv2主要改了哪些地方?

在v1基础上,添加了\(\Delta m_k\), 一个控制幅值变化的量。
ROI pooling是如何改进的?
先看Faster R-CNN中的ROI Pooling:

然后先看DCNv1的Deformable RoI Pooling


主要是添加了offset fields \(\Delta p_{ij}\) 来控制偏移部分。
DCNv2的Deformable RoI Pooling也是将幅值引入,如下图:

类似的也添加了幅值变量,在训练的过程中进行学习。
3.3 R-CNN Feature Mimicking

采用了类似知识蒸馏的方法,用一个R-CNN分类网络作为teacher network 帮助Faster R-CNN更好收敛到目标区域内。
得到ROI之后,在原图中抠出这个ROI,resize到224x224,再送到一个RCNN中进行分类,这个RCNN只分类,不回归。然后,主网络fc2的特征去模仿RCNN fc2的特征,实际上就是两者算一个余弦相似度,1减去相似度作为loss即可
代码
GitHub几个源码
<https://github.com/msracver/Deformable-ConvNets> 官方提供的版本,有DeepLab, Faster R-CNN, FPN, R-FCN等。源码使用的是mxnet。
https://github.com/open-mmlab/mmdetection 集成了可变形卷积,源码使用的是pytorch。
- https://github.com/ChunhuanLin/deform_conv_pytorch 测试deform_conv_V1的准确度的demo.py,源码使用的是pytorch。
- https://github.com/4uiiurz1/pytorch-deform-conv-v2一个简单版本的DCNv2 ,源码使用的是pytorch
https://github.com/chengdazhi/Deformable-Convolution-V2-PyTorch/tree/pytorch_1.0.0 Pytorch 1.0 最新的完整的DCNv2
参考文献
https://blog.csdn.net/u013841196/article/details/80713314
http://arxiv.org/abs/1811.11168
https://www.cnblogs.com/jiujing23333/p/10059612.html
https://www.jianshu.com/p/23264e17d860
论文阅读:Deformable ConvNets v2的更多相关文章
- 论文阅读笔记四十:Deformable ConvNets v2: More Deformable, Better Results(CVPR2018)
论文源址:https://arxiv.org/abs/1811.11168 摘要 可变形卷积的一个亮点是对于不同几何变化的物体具有适应性.但也存在一些问题,虽然相比传统的卷积网络,其神经网络的空间形状 ...
- 论文笔记:Deformable ConvNets v2: More Deformable, Better Results
概要 MSRA在目标检测方向Beyond Regular Grid的方向上越走越远,又一篇大作推出,相比前作DCN v1在COCO上直接涨了超过5个点,简直不要太疯狂.文章的主要内容可大致归纳如下: ...
- 论文阅读笔记三十八:Deformable Convolutional Networks(ECCV2017)
论文源址:https://arxiv.org/abs/1703.06211 开源项目:https://github.com/msracver/Deformable-ConvNets 摘要 卷积神经网络 ...
- Deformable ConvNets
Deformable ConvNets 论文 Deformable Convolutional Networks(arXiv:1703.06211) CNN受限于空间结构,具有较差的旋转不变性,较弱的 ...
- YOLO 论文阅读
YOLO(You Only Look Once)是一个流行的目标检测方法,和Faster RCNN等state of the art方法比起来,主打检测速度快.截止到目前为止(2017年2月初),YO ...
- BERT 论文阅读笔记
BERT 论文阅读 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 由 @快刀切草莓君 ...
- Action4D:人群和杂物中的在线动作识别:CVPR209论文阅读
Action4D:人群和杂物中的在线动作识别:CVPR209论文阅读 Action4D: Online Action Recognition in the Crowd and Clutter 论文链接 ...
- 论文阅读(Xiang Bai——【PAMI2017】An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition)
白翔的CRNN论文阅读 1. 论文题目 Xiang Bai--[PAMI2017]An End-to-End Trainable Neural Network for Image-based Seq ...
- BITED数学建模七日谈之三:怎样进行论文阅读
前两天,我和大家谈了如何阅读教材和备战数模比赛应该积累的内容,本文进入到数学建模七日谈第三天:怎样进行论文阅读. 大家也许看过大量的数学模型的书籍,学过很多相关的课程,但是若没有真刀真枪地看过论文,进 ...
随机推荐
- Form表单的传递与接收
目录 表单的构建 后端接收 创建model 用Model接收表单的后端 表单的构建 我才知道这个东西,在开发中经常遇到表单的情况.一下子提交一串内容.表单元素 form,里面的内容必须有name字段. ...
- redis添加到linux系统服务
http://blog.csdn.net/justfor3l/article/details/53187795
- HTML布局排版2如何设置div总是相对于页面居中
由于浏览器页面有大有小,为了适应浏览器宽度,可以让div总是对于浏览器居中,设置div左右两边的margin为auto可以实现这个效果.如图,第一个是默认div,无上下左右外边距,第二个是设置了mar ...
- npm 全局安装路径 在哪里
注意:在Admin下,需要把隐藏文件显示出来,才能找到对应的文件路径.
- 原生JavaScript常用本地浏览器存储方法二(cookie)
JavsScript Cookie概述 cookie是浏览器提供的一种机制,它将document对象的cookie属性提供给JavaScript.可以由JavaScript对其进行控制,而并不是Jav ...
- js 常用操作 -- 持续更新
替换数组中某一元素: array.splice(2, 1, '哈哈'); // 2 表示指定数组中2下标元素,1表示要删除的项数,哈哈 是替换后的值 在数组中某元素之前增加元素: array.spli ...
- php设计模式;抽象类、抽象方法
设计模式 什么叫设计模式 所谓设计模式,就是一些解决问题的“常规做法”,是一种认为较好的经验总结.面对不同的问题,可能会有不同的解决办法,此时就可以称为不同的设计模式. 工厂模式 在实际应用中,我们总 ...
- 分布式 ID
[参考文章] Leaf——美团点评分布式ID生成系统 分布式全局唯一ID生成策略 从一次 Snowflake 异常说起 [雪花算法问题] 微服务架构下 机器码如何生成? 如何处理时钟回调问题?
- LocalDate LocalTime LocalDateTime Instant的操作与使用
一.简介 LocalDate表示当前(或指定)日期,格式为:yyyy-MM-dd LocalTime表示当前(或指定)时间,格式为:HH:mm:ss SSS LocalDateTime表示当前(或指定 ...
- Bean配置
1.xml配置(摘抄自:https://www.cnblogs.com/zyx1301691180/p/7665971.html) 一.setter方法配置Bean: 1.创建一个 Spring Be ...