卷积神经网络-可变形卷积

一、简介

如何有效地对几何图形的变化进行建模一直是一个挑战,大体上有两种处理方法:(1)构建一个包含各种变化的数据集,其本质是数据扩增(2)使用具有形变不变性的特征和算法(如SIFT)。这两种方法都有很大的局限性:几何形变被假设是固定和已知的,这是一种先验信息,用这些已知的形变去处理未知的形变是不合理的;手工设计的特征或算法无法应对过度复杂的形变,即使该形变是已知的。近年来,CNNs在计算机视觉领域取得了飞速的发展和进步,在图像分类,语义分割,目标检测领域都有很好的应用。然后鉴于CNNs固定的几何结构,导致对几何形变的建模受到限制。本文提出了两个新模块来提升CNNs的形变建模能力,称为“deformable convolution”和“deformable ROI pooling”,这两个方法都是基于在模块中增加额外偏移量的空间采样位置和从目标任务中学习到偏移量且不需要额外的监督。这些新的模块可以很容易的取代现有CNNs的普通模块并且利用反向传播进行端到端的训练,产生可变形的卷积神经网络。该方法在语义分割和目标检测上有很好的表现。

二、可变形卷积

CNNs对大型,未知形状变换的建模存在固有的缺陷,这种缺陷来源于CNNs模块固有的几何结构:卷积单元对输入特征图的固定位置进行采样;池化层以固定的比例进行池化;即使是ROI pooling也是将ROI分割到固定的bin中去。这些特性是有影响的,例如,在同一层Conv中,所有的激活单元的感受野是一样的,但由于不同位置可能对应着不同尺度或变形的物体,因此对尺度或者感受野大小进行自适应是进行精确定位所需要的。为了解决或者减轻这个问题,本文提出了两种新的模块,可变形卷积(deformable conv)和可变形感兴趣区域池化(deformable ROI Pooling),来提高对形变的建模能力。这两个模块都是基于一个平行网络学习offset(偏移),使得卷积核在input feature map的采样点发生偏移,集中于我们感兴趣的区域或者目标。通过研究发现,标准卷积中的规则格点采样是导致网络难以适应几何形变的“罪魁祸首”,为了削弱这个限制,对卷积核中每个采样点的位置都增加了一个偏移变量,可以实现在当前位置附近随意采样而不局限于之前的规则格点。如下图所示,是常见的采样点和可变形卷积采样的对比:
卷积神经网络-可变形卷积_第1张图片

(a)是常见的3x3卷积核的采样方式,(b)是采样可变形卷积,加上偏移量之后的采样点的变化,其中(c)(d)是可变形卷积的特殊形式
在可变形卷积中,可变形卷积操作和池化操作都是2维的,都是在同一channel上进行的,常规的卷积操作主要可以分为两部分:(1)在输入的feature map上使用规则网格R进行采样;(2)进行加权运算,R定义了感受野的大小和扩张:

在这里插入图片描述

可变形卷积的流程为:
卷积神经网络-可变形卷积_第2张图片
可变形卷积的使用:
一个深度全卷积网络用于对整张图片产生feature map。其次,一个浅层的目标明确的网络,从feature map产生我们需要的结果。下图展示了标准的卷积和可变形卷积之间的对比,可以看到,在标准卷积中,图中的区域表示在普通卷积和可变形卷积中的感受野。这张图怎么看呢,首先看顶层的feature map,我们取两个激活点(分别在大羊和小羊身上),代表的是不同尺度和形状。中间层:top层的feature map经过33的卷积后,需要抽样的一些点。最底层:再经过一个33的卷积,需要采样的点。通过对比可以明显的看出,可变形卷积的采样位置更符合物体本身的形状和尺寸,而标准卷积的形式却不能做到这一点。
卷积神经网络-可变形卷积_第3张图片

你可能感兴趣的:(sdk)