HIC-YOLOv5: Improved YOLOv5 For Small Object Detection
摘要
小目标检测是物体检测领域的一大难点。已有的一些工作对这一任务提出了改进,例如增加若干个注意块或改变特征融合网络的整体结构。然而,这些模型的计算开销很大,使得部署实时目标检测系统不可行,同时留下了改进的空间。为此,提出了一种改进的YOLOv5模型:HICYOLOv 5来解决上述问题。首先,添加专用于小对象的附加预测头,以提供更高分辨率的特征图,从而实现更好的预测。其次,在脊柱和颈部之间采用对合块来增加特征图的通道信息;此外,该算法在骨干网末端引入了CBAM注意机制,不仅降低了计算开销,而且在信道域和空域都能突出重要信息.
创新点
·额外的预测头是专为小物体设计的。它可以在更高分辨率的特征图中检测物体,这些特征图包含更多关于微小物体的信息。
·增加对合块作为骨干和颈部之间的桥梁,以增加特征图的通道信息。
· CBAM应用于骨干网的末端,从而提取更多的基本信道和空间信息,而忽略冗余信息。
方法
HIC-YOLOv 5的结构如图3所示。原始YOLOv 5由3个部分组成:用于特征提取的主干、用于特征融合的颈部和3个预测头部。在原有模型的基础上,本文提出了3点改进:1)增加一个预测头,用于检测具有高分辨率特征图的层,特别是针对小目标和微小目标; 2)在网络颈部的起始处引入一个卷积块,以提高PANet的性能; 3)在骨干网中加入卷积块注意模块(CBAM)。
A.卷积块注意模块(CBAM)
以前的工作是在生成特征金字塔时将CBAM添加到颈部块中。但是,由于CBAM连接的特征地图尺寸较大,增加了参数和计算成本。此外,该模型参数量大,训练难度大。因此,在主干网络中采用CBAM,目的是在提取主干中的特征时突出重要特征,而不是在颈部生成特征金字塔。此外,CBAM的输入特征图大小仅为20 × 20,是640 × 640全图的1/32,因此计算量不大。
CBAM是一种基于注意机制的有效模型,可以方便地集成到CNN体系结构中。它由两个模块组成:通道注意模块和空间注意模块,如图4所示。这两个模块分别生成通道和空间注意力图,然后将其与输入特征图相乘以便于自适应特征细化。因此,沿通道和空间轴沿着有意义的特征被强调,而冗余的特征被抑制。通道注意力模块对不同通道上的特征图执行全局最大池化和平均池化,然后执行逐元素求和和S激活。空间注意力模块对不同特征图上相同位置的像素值执行全局最大池和平均池,然后连接两个特征图,接着是Conv2d操作和S激活。
B.卷积信道特征融合(CFFI)
YOLOv5的颈部采用了PANet,在FPN的基础上引入了自底向上的路径增强结构。YOLOv5中FPN和自底向上路径增强是融合了高、低层特征,获得了高分辨率、强语义的特征,具有很强的检测微小目标的能力。但是,原YOLOv5中采用了1 × 1卷积来减少颈部起始处的信道数,在计算效率显著提高的同时,信道信息也有所减少,导致PANet性能较差。在脊椎和颈部之间添加了一个Involution块。信道信息被改善和共享,导致在FPN的初始阶段期间减少信息丢失。因此,这种改进有助于增强FPN的性能,特别是有利于检测具有较小尺寸的目标。此外,还强调了卷积算法在不同的空间位置上对各种视觉模式具有更好的适应性。
Involution的结构如图5所示。表示为H的Involution核被设计为包含在空间域和通道域中表现出逆属性的变换,其中H和W表示特征图的高度和宽度,K是核大小,G表示组的数量,其中每个组共享相同的Involution核。最后,如下获得InvolutionYijk的输出特征图:
因此,包含在单个像素的通道维度中的信息被隐含地分散到其空间附近,这对于获得丰富的感受野信息是有用的。
C.预测头
YOLOv5中3个预测头的不同分辨率(80 × 80、40 × 40、20 × 20),在各种应用场景下为探测能力做出了巨大贡献,但也给微小物体的探测带来了困难。YOLOv5在微小目标检测上的表现不佳的原因是,仅包含少量像素的微小目标的特征很可能被忽略。虽然卷积块在从特征图中提取特征方面发挥了重要作用,但当网络深度增加时,它们也会降低特征图的分辨率,从而难以提取微小对象的特征。为了解决这个问题,提出了一个额外的预测头--小对象检测头(SODH),旨在检测更大分辨率(160 × 160)的特征图。从微小物体中提取特征变得越来越容易。
每个预测头以提取的特征作为输入,通过骨架和颈部的融合,最终输出一个由回归包围盒(坐标和大小)、目标边界置信度和目标类别组成的向量。在生成最终边界框之前,生成锚点以形成候选边界框。这些锚点是根据数据集通过k均值生成的,并且针对3个预测头以3种不同的尺度定义,分别适应于小、中和大对象。附加预测头的锚点也通过k-均值生成。
D.损失函数
HIC-YOLOv 5的损失函数由三个部分组成:客观性、包围盒和类概率,可以表示如下:
使用二进制交叉熵损失来计算客观性和类概率,并使用CIoU损失[20]来计算边界框回归。
E.数据扩充
数据扩充是增强模型稳健性的重要技术。在YOLOv5中,它包括马赛克、复制粘贴、随机仿射、混合、HSV增强和剪切。除此之外,发现很多小人物和小汽车都在一张Visdrone2019的图片的中心。因此,将额外的中心裁剪添加到上述数据增强技术中。