一、本文介绍
本文给大家带来的改进内容是SCConv,即空间和通道重构卷积,是一种发布于2023.9月份的一个新的改进机制。它的核心创新在于能够同时处理图像的空间(形状、结构)和通道(色彩、深度)信息,这样的处理方式使得SCConv在分析图像时更加精细和高效。这种技术不仅适用于复杂场景的图像处理,还能在普通的对象检测任务中提供更高的精确度(亲测在小目标检测和正常的物体检测中都有效提点)。SCConv的这种能力,特别是在处理大量数据和复杂图像时的优势。本文通过先介绍SCConv的基本网络结构和原理当大家对该卷积有一个大概的了解,然后教大家如何将该卷积添加到自己的网络结构中(值得一提的是该卷积的GFLOPs降低了0.3左右适合轻量化的读者) 。
适用检测目标:所有的目标检测均有一定的提点
推荐指数:⭐⭐⭐⭐⭐
专栏回顾:YOLOv5改进专栏——持续复现各种顶会内容——内含100+创新
二、网络结构讲解
2.1 SCConv的主要思想
SCConv(空间和通道重构卷积)的高效卷积模块,以减少卷积神经网络(CNN)中的空间和通道冗余。SCConv旨在通过优化特征提取过程,减少计算资源消耗并提高网络性能。该模块包括两个单元:
1.空间重构单元(SRU):SRU通过分离和重构方法来减少空间冗余。
2.通道重构单元(CRU):CRU采用分割-变换-融合策略来减少通道冗余。
下面是SCConv的结构示意图->
下面我将分别解释这两个单元->
2.2 空间重构单元(SRU)
空间重构单元(SRU)是SCConv模块的一部分,负责减少特征在空间维度上的冗余。SRU接收输入特征,并通过以下步骤处理:
1. 组归一化(Group Normalization):首先对输入特征进行归一化,以减少不同特征图之间的尺度差异。 2. 权重生成:通过应用归一化和激活函数,如Sigmoid,从归一化的特征图中生成权重。 3. 特征分离:根据生成的权重,对输入特征进行分离,形成多个子特征集。 4. 特征重构:最后,这些分离出来的特征集经过变换和重组,产生空间精炼的特征输出,以便进一步处理。
上图展示了空间重构单元(SRU)的架构。SRU的工作流程如下:
1. 输入特征X:首先进行组归一化(GN)处理。 2. 分离:通过一系列的权重,对特征进行加权,这些权重是通过输入特征的通道,经过归一化和非线性激活函数(如Sigmoid)计算得到的。 3. 重构:加权后的特征被分割成两个部分 ,然后这两部分各自经过变换,最终通过加法和拼接操作重构,得到空间精炼特征。
总结:这个单元的设计目的是为了减少输入特征的空间冗余,从而提高卷积神经网络处理特征的效率。
2.3 通道重构单元(CRU)
通道重构单元(CRU)是SCConv模块的一部分,旨在减少卷积神经网络特征的通道冗余。CRU对经过空间重构单元(SRU)处理后的特征进一步操作,通过以下步骤减少通道冗余:
上图详细展示了通道重构单元(CRU)的架构,该单元从空间精炼特征 \( X^W \) 开始进行处理。CRU的工作流程包括以下几个步骤:
1. 分割(Split):特征 被分割成两部分,通过不同比例的路径进行不同的1x1卷积处理。 2. 变换(Transform):通过全局卷积(GWC)和点卷积(PWC)进一步变换这两部分特征。 3. 融合(Fuse):两个变换后的特征,经过池化和SoftMax加权融合,形成最终的通道精炼特征 。
总结:这种结构旨在通过细致地处理各个通道,减少不必要的信息,并提高网络的整体性能和效率。通过这一过程,CRU有效地提高了特征的表征效率,同时减少了模型的参数数量和计算成本。