多尺度卷积

1.多尺度卷积(比如特征金字塔)的优势:

  • 多尺度信息:可以在不同层级的网络中提取特征来获取多尺度信息。在目标检测任务中,目标可能以不同的尺寸出现在图像中,因此需要在不同尺度上进行检测和定位。通过合并不同层次的特征图,可以检测和识别不同尺寸的目标。
  • 上下文信息:通过在不同的层级中提取特征,可以捕获更广泛的上下文信息。较深层次的特征通常对于全局语义信息具有较好的把握,而较浅层次的特征可以提供更多局部细节信息。通过多尺度卷积,算法可以在不同层级上同时利用全局和局部信息,从而更好地理解图像内容。
  • 减少信息丢失: 在深度卷积神经网络中,随着网络层数的增加,特征图的尺寸逐渐减小。这可能导致信息丢失,特别是对于较小目标或细节。通过融合多个尺度的特征,可以减少信息丢失的影响,提高网络的能力。

2. SSD

在这里插入图片描述
SSD的网络结构主要分为三个部分:VGG16 Base Layer, Extra Feature Layer, Detection layer

VGG16 Base Layer:
SSD网络以VGG16作为基础的特征提取层,并选取其中的Conv4_3作为第一个特征层用于目标检测。

Extra Feature Layer:
在Base Layer的基础上,作者将VGG16中的FC6,FC7改成了卷积层Conv6,Conv7,并且同时添加了Conv8,Conv9,Conv10,Conv11这几个特征层用于目标检测。

输入:reshape后 大小为 ( 300 × 300 × 3 ) (300 \times 300\times3) 300×300×3的图像
Conv1_2:两次 3 × 3 3 \times3 3×3卷积,得到 ( 300 × 300 × 64 ) (300 \times 300\times64) 300×300×64;再经过 2 × 2 2\times2 2×2最大池化,得到 ( 150 × 150 × 64 ) (150 \times 150\times64) 150×150×64
Conv2_2:两次 3 × 3 3 \times3 3×3卷积,得到 ( 150 × 150 × 128 ) (150 \times 150\times128) 150×150×128;再经过 2 × 2 2\times2 2×2最大池化,得到 ( 75 × 75 × 128 ) (75 \times 75\times128) 75×75×128
Conv3_3:三次 3 × 3 3 \times3 3×3卷积,得到 ( 75 × 75 × 256 ) (75 \times 75\times256) 75×75×256;再经过 2 × 2 2\times2 2×2最大池化,得到 ( 38 × 38 × 256 ) (38 \times 38\times256) 38×38×256
Conv4_3:三次 3 × 3 3 \times3 3×3卷积,得到 ( 38 × 38 × 512 ) (38 \times 38\times512) 38×38×512;再经过 2 × 2 2\times2 2×2最大池化,得到 ( 19 × 19 × 64 ) (19 \times 19\times64) 19×19×64
Conv5_3:三次 3 × 3 3 \times3 3×3卷积,得到 ( 19 × 19 × 512 ) (19 \times 19\times512) 19×19×512;再经过 3 × 3 3\times3 3×3最大池化,得到 ( 19 × 19 × 512 ) (19 \times 19\times512) 19×19×512
Conv6、Conv7:分别进行了一次 3 × 3 3\times3 3×3卷积和 1 × 1 1\times1 1×1卷积,得到 ( 19 × 19 × 1024 ) (19 \times 19\times1024) 19×19×1024
Conv8:经过一次 1 × 1 1\times1 1×1卷积,和 3 × 3 3\times3 3×3卷积,得到 10 × 10 × 512 10 \times 10 \times512 10×10×512
Conv9:经过一次 1 × 1 1\times1 1×1卷积,和 3 × 3 3\times3 3×3卷积,得到 5 × 5 × 256 5 \times 5\times256 5×5×256
Conv10:经过一次 1 × 1 1\times1 1×1卷积,和 3 × 3 3\times3 3×3卷积,得到 3 × 3 × 256 3 \times 3 \times256 3×3×256
Conv11:经过一次 1 × 1 1\times1 1×1卷积,和 3 × 3 3\times3 3×3卷积,得到 1 × 1 × 256 1 \times 1 \times256 1×1×256

3.Res2Net

在这里插入图片描述
文章方法从卷积神经网络中的最基本的常用单元入手。对于主流卷积神经网络中广泛存在的残差瓶颈结构进行多尺度增强。如上图右图所示,对于输入特征,我们首先通过 1 × 1 1\times1 1×1卷积进行通道数的调控。然后将这些特征分为4份。例如,x2可以经过一次卷积直接输出,其卷积结果可以进一步和x3相加再经过一次卷积后输出。这种做法的优势显而易见。比如说,输出y4可以是x4经过一次卷积,也可以是x3经过2次卷积,还可以是x2经过三次卷积。这种操作使得尺度种类组合爆炸,进而提供非常丰富的多尺度特征。虽然右侧的图看着更复杂,但是采用这种方式提升多尺度能力,仅需要增加十多行代码。而且,右侧的模块计算量和参数量小于左侧。左侧图中计算量最大的是 3 × 3 3\times3 3×3卷积。假如我们有512个通道,这里的计算量是 512 × 3 × 3 × 512 512\times3\times3\times512 512×3×3×512。像右图所示的分为四份之后,每一个 3 × 3 3\times3 3×3的卷积仅需要左侧1/16的计算量。因此,如果简单的分割为4块而不大幅增加通道数,右侧的计算量只有左侧的不到1/4。

4.OctaveConv

在这里插入图片描述
作者认为:不仅自然世界中的图像存在高低频,卷积层的输出特征图以及输入通道也都存在高、低频分量。低频分量支撑的是整体,比如企鹅的白色大肚皮。显然,低频分量是存在冗余的,在编码过程中可以节省。如下图,黄色部分表示高频特征图,蓝色部分表示低频特征图。这种特征图按照频率分成两部分的做法称为"Octave feature representation"。其中低频特征图和高频特征图的比例为 α : 1 − α , α ∈ [ 0 , 1 ] \alpha:1-\alpha, \alpha \in[0,1] α1α,α[0,1],表示低频特征图所占比例。

针对冗余问题,作者降低低频特征图的分辨率,即降低低频特征图的空间维度。这种方式不仅能够节省算力、储存,还有助于每个层获得更大的感受野,以捕获更多的上下文信息。
在这里插入图片描述
在这里插入图片描述
上半部分:输入 X H X^H XH经过卷积之后得到输出 Y H → H Y^{H \rightarrow H} YHH,输入 X L X^L XL经过卷积后,再进行上采样将分辨率扩大(与高频分辨率相同)得到输出 Y L → H Y^{L \rightarrow H} YLH Y H → H Y^{H \rightarrow H} YHH Y L → H Y^{L \rightarrow H} YLH再经过点加操作得到高频输出特征图 Y H Y^H YH
下半部分:输入 X L X^L XL经过卷积之后得到输出 Y L → L Y^{L \rightarrow L} YLL,输入 X H X^H XH经过卷积后,再进行下采样(池化)得到输出 Y H → L Y^{H \rightarrow L} YHL Y H → L Y^{H \rightarrow L} YHL Y L → L Y^{L \rightarrow L} YLL再经过点加操作得到低频输出特征图 Y L Y^L YL

作者还提到,不仅在普通的卷积中可以改造成八度卷积的方法,对于分组和可分离卷积同样也是适用的。而且八度卷积是一个可插拔的整体操作,基本上只需要在特定位置上改成相应的八度卷积即可,卷积参数基本上保持不变,只是增加了一个低频占比的参数,以及在输入输出的特征图上分成了高频和低频部分。

5.ScaleNet

6. MixConv在这里插入图片描述

旨在设计单个深度卷积的直接替换,目的是轻松利用不同的卷积核大小而不改变网络结构。

6.Pyramidal Convolution

猜你喜欢

转载自blog.csdn.net/weixin_48320163/article/details/131829049