当前位置:网站首页>空洞卷积、可变形卷积、可变形ROI Pooling
空洞卷积、可变形卷积、可变形ROI Pooling
2022-07-04 04:39:00 【BubbleCodes】
- 为什么要提空洞卷积、可形变卷积、可形变ROI池化?
答:这些技术的提出与卷积核的感受野有关系,感受野指的是:特征图在原图上的映射区域,一般来说使用更大的卷积核和池化会增大感受野的大小(或者使用卷积+池化的操作),但是这种提升有限或者会损失精度。空洞卷积、可形变卷积、可形变ROI池化能够在不损失较多精度的情况下,有效增大感受野。
空洞卷积(Dilated Convolution)
基本原理:Dilated/Atrous Convolution(中文叫做空洞卷积或者膨胀卷积) 或者是 Convolution with holes 从字面上就很好理解,是在标准的 convolution map 里注入空洞,以此来增加 reception field。相比原来的正常convolution,dilated convolution 多了一个 hyper-parameter 称之为 dilation rate,指的是kernel的间隔数量(e.g. 正常的 convolution 是 dilatation rate 1)。

感受野计算公式
PyTorch实现:在Conv2d中使用参数dilation来实现
空洞卷积的好处:
- 扩大感受野:在deep net中为了增加感受野且降低计算量,总要进行降采样(pooling或s2/conv),这样虽然可以增加感受野,但空间分辨率降低了。为了能不丢失分辨率(持怀疑态度),且仍然扩大感受野,可以使用空洞卷积。这在检测,分割任务中十分有用。一方面感受野大了可以检测分割大目标,另一方面分辨率高了可以精确定位目标。
- 捕获多尺度上下文信息:空洞卷积有一个参数可以设置dilation rate,具体含义就是在卷积核中填充dilation rate-1个0,因此,当设置不同dilation rate时,感受野就会不一样,也即获取了多尺度信息。
空洞卷积的缺点:
- 局部信息丢失The Gridding Effect:由于空洞卷积的计算方式类似于棋盘格式,某一层得到的卷积结果,来自上一层的独立的集合,没有相互依赖,因此该层的卷积结果之间没有相关性,即局部信息丢失。
- 远距离获取的信息没有相关性Long-ranged information might be not relevant:由于空洞卷积稀疏的采样输入信号,使得远距离卷积得到的信息之间没有相关性,影响分类结果。
解决方案:Hybrid Dilated Convolution (HDC)、Atrous Spatial Pyramid Pooling (ASPP)
可变形卷积(Deformable Convolution)
基本原理:
- 不需要额外监视的情况下,使用附加偏移量来增加模块中的空间采样位置,并从目标任务中学习偏移量。新的模块可以很容易地取代现有cnn中的普通模块,并且可以通过标准的反向传播进行端到端的简单训练,从而产生可变形卷积网络。
- 偏移矩阵的维度为hw2N,为什么为hw?经过卷积之后二者尺寸最多相同,所以每个位置存储卷积核尺寸两倍2N=2kk个偏移量

PyTorch:torchvision.ops.deform_conv2d
注意:这里有一个非常非常非常容易混淆的点,所谓的deformable,到底deformable在哪?很多人可能以为deformable conv学习的是可变形的kernel,其实不是不是不是!本文并不是对kernel学习offset而是对feature的每个位置学习一个offset。
可变形ROI Pooling
- 基本原理

参考文献
[1] https://zhuanlan.zhihu.com/p/43784441
[2] https://blog.csdn.net/qq_41076797/article/details/114593840
[3] https://www.zhihu.com/question/54149221
[4] https://zhuanlan.zhihu.com/p/138886700
[5] https://blog.csdn.net/C1nDeRainBo0M/article/details/123104016?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165608484916782248594568%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=165608484916782248594568&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-1-123104016-null-null.142v21pc_rank_34,157v15new_3&utm_term=torchvision.ops.deform_conv2d&spm=1018.2226.3001.4187
[6] https://blog.csdn.net/qq_45122568/article/details/124190576
边栏推荐
- Just do it with your hands 7 - * project construction details 2 - hook configuration
- The second case analysis of the breakthrough of defense system from the perspective of the red team
- 2022广东省赛——编码信息获取 解析flag
- Sécurité du réseau dans les écoles professionnelles secondaires - preuve de mémoire
- 在代碼中使用度量單比特,從而生活更美好
- 【QT】定时器
- 2022G2电站锅炉司炉特种作业证考试题库及答案
- Remote desktop client RDP
- [matlab] matlab simulates digital bandpass transmission systems - QPSK and OQPSK systems
- 2022 Guangdong provincial competition - code information acquisition and analysis flag
猜你喜欢
随机推荐
ping端口神器psping
[技术发展-25]:广播电视网、互联网、电信网、电网四网融合技术
Annex I: power of attorney for 202x XXX attack and defense drill
拼夕夕二面:说说布隆过滤器与布谷鸟过滤器?应用场景?我懵了。。
Simulated small root pile
[technology development -25]: integration technology of radio and television network, Internet, telecommunication network and power grid
海力士EMMC5.0及5.1系列对比详解
flink1.13 sql基础语法(二)join操作
KMP匹配字符串
Maui introductory tutorial series (5.xaml and page introduction)
【MATLAB】MATLAB 仿真 — 低通高斯白噪声
Trie number dictionary tree
Flutter ‘/usr/lib/libswiftCore. dylib‘ (no such file)
A summary of the 8544 problem that SolidWorks Standard cannot obtain a license
2022G2电站锅炉司炉特种作业证考试题库及答案
[matlab] general function of communication signal modulation bandpass filter
Using jsts in esmodule environment
laravel 中获取刚刚插入的记录的id
YoloV6实战:手把手教你使用Yolov6进行物体检测(附数据集)
我们认为消费互联网发展到最后,依然会局限于互联网行业本身









