点击蓝字

关注我们

关注并星标

从此不迷路

计算机视觉研究院

公众号ID计算机视觉研究院

学习群扫码在主页获取加入方式

https://www.sciencedirect.com/science/article/pii/S0925231225005764

计算机视觉研究院专栏

Column of Computer Vision Institute

本文基于YOLOv3,提出了一种适用于车载目标检测的基于YOLO的高效轻量化网络(YOLO-ELWNet)。

PART/1

     概述   

在骨干网络块中,设计了一种结合坐标注意力的通道分割与打乱模块,该模块在保持检测精度的同时,有效减少了模型参数规模和计算成本。在颈部网络块中,提出了一种新的特征融合网络,其中引入了带有高效瓶颈模块的跨阶段局部模块,以提升特征提取能力并降低计算成本。在头部网络块中,采用了基于Scylla交并比的损失函数,加快了YOLO-ELWNet的收敛速度。在开源的KITTI视觉基准数据集上对所提YOLO-ELWNet的有效性进行了验证。结果表明,YOLO-ELWNet在检测精度和计算成本方面的性能优于一些主流轻量化目标检测模型,证明其适用于资源受限的车载目标检测场景。

PART/2

     背景   

目标检测在自动驾驶、人脸识别、机器人视觉等众多领域发挥着关键作用。在过去几十年里,人们基于通过专家知识获取的手工特征,开发出了多种目标检测技术。随着深度学习技术的快速发展,基于卷积神经网络(CNN)的现代目标检测技术应运而生。目前,流行的基于CNN的目标检测方法可分为两类:单阶段目标检测器和两阶段目标检测器。

到目前为止,针对资源受限的应用场景,已经开发出许多基于YOLO的轻量化网络。例如,文献中提出了YOLOv3-tiny算法,它比原始YOLOv3包含更少的卷积层,因此对硬件内存的需求大幅降低。文献中提出了一种增强的YOLOv3-tiny算法,以解决车辆检测中检测精度低的问题。文献中在YOLOv4-tiny中提出一种锚框配置策略,用于解决移动设备目标检测中遗漏小目标的问题。近期,文献中通过集成自注意力机制和空间金字塔池化方案引入了一种改进的YOLOv4-tiny,在保持检测速度不变的情况下,比原始YOLOv4-tiny实现了更高的检测精度。更近一些,文献中开发了一种基于改进YOLOv5的轻量化网络,用于在移动设备上实时检测绝缘子故障。非常近期,文献中引入了一种基于YOLOv5n的轻量化网络,用于铁路扣件的检测与定位。

需要注意的是,现有的轻量化目标检测方法仍面临以下挑战:

1)如何在车载目标检测中实现检测精度与检测速度的合理平衡?

2)如何保持车载目标检测器的泛化能力?

3)如何在资源有限的情况下构建可靠的车载目标检测器以应对复杂场景?

鉴于上述挑战,本文基于原始YOLOv3提出了一种适用于车载目标检测的基于YOLO的高效轻量化网络(YOLO-ELWNet)。在引入的YOLO-ELWNet中,我们对原始YOLOv3的骨干网络、颈部网络和头部网络进行了修改,以提升检测器在资源受限条件下的检测精度和检测速度性能。

本文的主要贡献如下:

1)为YOLO-ELWNet的骨干网络提出了一种结合坐标注意力的通道分割与打乱(CSS-CA)模块,从而在保持较高检测精度的同时,显著减小网络的参数规模和计算成本。

2)为YOLO-ELWNet的颈部网络开发了一种带有跨阶段局部模块的特征金字塔网络(FPN-CSP),其中设计了一种新型的含高效瓶颈模块的跨阶段局部(CSP-EB)模块,以降低YOLO-ELWNet的内存访问成本(MAC)。

3)采用Scylla交并比(SIoU)损失函数对头部网络进行更新,明显加快了YOLO-ELWNet的收敛速度。

4)实验结果表明,在KITTI视觉基准数据集上,YOLO-ELWNet的性能优于一些当前流行的轻量化网络和目标检测器。

PART/3

     新算法框架解析   

本文专门针对资源受限设备,设计了一种基于YOLO的高效轻量化网络(YOLO-ELWNet),主要在YOLO-ELWNet的骨干网络、颈部网络和头部网络这三个方面进行改进。所提出的YOLO-ELWNet的网络结构如下图所示。

轻量化骨干网络

在骨干网络块中,采用卷积-批量归一化-hardswishCBH)模块以减轻计算负担。CBH模块中使用Hardswish激活函数来提高训练效率。提出一种基于坐标注意力(CA)机制的CSS-CA模块,以替代原始YOLOv3骨干网络中的残差块(Resblock)。应用空间金字塔池化-快速(SPPF)模块来提升骨干网络块的检测速度。

CBH模块

YOLOv3CBL模块中,选用leakyReLU作为激活函数。为应对嵌入式设备的计算限制,轻量化网络中常采用ReLU6激活函数,它适用于低精度计算。然而,当激活函数的输入值超过6时,ReLU6激活函数会面临梯度消失问题。需要注意的是,Swish激活函数结合了ReLUSigmoid函数的优点,在各种YOLO变体方法中被广泛应用。由于曲线平滑且有界的特性,Swish激活函数能够防止过拟合。但Swish激活函数的指数运算会给资源受限设备带来计算负担。因此,通过整合ReLU6Swish函数,Hardswish激活函数被提出。

在本文中,基于Hardswish激活函数构建CBH模块,以替代原始YOLOv3中的CBL模块。Hardswish激活函数的表达式可表述如下:

CSS-CA模块

本文采用CSS-CA模块来替换原始YOLOv3中的残差模块。由于ShuffleNetV2CSS模块具有轻量化的特点,故将其用于特征提取。为进一步捕捉空间和通道特征,将CA模块嵌入CSS模块。实际上,已有多个注意力模块成功用于提取空间特征和通道特征。我们选择CA模块是因为与其他模块相比,它所需参数更少、计算成本更低。在这种情况下,引入的CSS-CA模块相较于原始ResNet模块,能够在保证检测效率的同时,降低计算成本。CSS-CA模块的结构如下图所示。

具体而言,根据步长(stride)大小的不同,CSS-CA模块有两种不同的设置。当步长等于1时,CSS-CA模块通过通道分割(channelsplit)分为两个分支。

如上图所示,输入先进入卷积层进行1×1卷积,接着是3×3的深度可分离卷积(DWC)、CA模块以及1×1的标准卷积层,然后与输入自身进行通道打乱(channelshuffle)拼接。当步长大小为2时,输入被送入两组卷积层。第一组包括3×3的深度可分离卷积和1×1的标准卷积层。第二组包括1×1的卷积层、3×3的深度可分离卷积以及1×1的标准卷积层。然后,将两组的输出进行通道打乱拼接。需要注意的是,在CSS-CA模块中采用通道打乱操作以确保信息传递。

改进的颈部网络

YOLOv3的颈部网络采用特征金字塔网络(FPN)。遗憾的是,由于只是简单堆叠CBL模块,基本的FPN存在特征提取能力弱和计算成本高的问题。为解决上述问题,提出一种含高效瓶颈的跨阶段局部(CSP-EB)模块,该模块受CSPNetConvNeXt的启发,用于替换FPN中重复的五个CBL模块。CSP-EB模块的结构如下图所示。

CSP-EB替换FPN中的CBL模块后,设计出一种名为FPN-CSP的高效特征融合网络,作为YOLO-ELWNet的颈部网络。

如上图所示,除了使用CSP-EB模块替换五个CBL模块,并将其他CBL模块改为CBH模块外,FPN-CSP保留了与YOLOv3FPN相同的结构。输入被送入CSP-EB模块中的两组卷积层。第一组包含一个3×3的标准卷积层。第二组由一个3×3的标准卷积层、一个包含7×7核的深度可分离卷积(DWC)的残差结构以及两个1×1的标准卷积层组成。然后,将两组的输出进行拼接,再使用一个3×3的标准卷积层进行通道调整。CSP-EB结构有效消除了计算瓶颈,使网络模型能够以更少的计算资源实现更优性能。这种拼接技术加深了不同层之间的连接,增强了卷积神经网络(CNN)的特征提取能力。

改进的头部网络

所提YOLO-ELWNet的头部网络包含CBH模块,其后跟着卷积算子。与基准YOLOv3相比,CBL模块被替换为CBH模块。头部网络的结构如上图所示。

PART/4

     新算法框架解析   

轻量化骨干网络对比

在本节中,将YOLO-ELWNet的骨干网络(记为ELWNet-B)与其他一些骨干网络进行对比,因为骨干网络在轻量化网络中起着关键作用。为评估ELWNet-B的性能,我们用它替换DarkNet53(作为YOLOv3的骨干网络),并选取一些流行网络,包括MobileNetV3MobileNeXtGhostNetEfficientNetV2,在KITTI数据集上测试所有检测器。ELWNet-B的网络参数如下表所示。

上述四个轻量化网络均采用其原始结构,即MobileNetV3对应的是MobileNetV3-largeMobileNeXt对应的是MobileNeXt-1.0GhostNet对应的是GhostNet-1.0EfficientNetV2对应的是其基准网络。与DarkNet53类似,这四个轻量化网络得到的特征图F3F4F5被输入到颈部网络。对于作为YOLO-ELWNet骨干网络的这四个轻量化网络,F3对应第4CSS-CA模块,F4对应第14CSS-CA模块,F5对应SPPF模块。

考虑到网络特征提取能力有限,在训练阶段(数据增强环节)调整缩放比例后,mAP85.08%,相较于YOLOv3基准提升了5.91%。消融研究的柱状图结果见下图。

消融研究结果表明,每项改进都能在不同程度上提升网络模型,实现更高的检测精度、更快的检测速度和更小的模型尺寸。引入相关模块并进行改进的所提方法,能够有效解决车载设备中的行人与车辆检测问题。

此外,选取了4张复杂场景的图像,以展示各算法在车辆检测、行人检测、近距离检测和远距离检测中的性能。每张图像都呈现出存在明显树木阴影和遮挡的复杂场景。所有所选方法的检测结果分别如下图所示。

可以看出,CenterNet存在严重的漏检问题;YOLOv5-M有少量漏检;YOLOX-M在捕捉小目标方面表现不佳。值得注意的是,所提出的YOLO-ELWNet在复杂场景中的表现优于YOLOv3YOLOv4

综上所述,所提出的YOLO-ELWNet在检测精度、计算成本和模型参数方面均优于所选的主流目标检测器,这表明其适用于车载设备的实时检测任务。

有相关需求的你可以联系我们!

END

转载请联系本公众号获得授权

计算机视觉研究院学习群等你加入!

ABOUT

计算机视觉研究院

计算机视觉研究院主要涉及深度学习领域,主要致力于目标检测、目标跟踪、图像分割、OCR、模型量化、模型部署等研究方向。研究院每日分享最新的论文算法新框架,提供论文一键下载,并分享实战项目。研究院主要着重”技术研究“和“实践落地”。研究院会针对不同领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!


往期推荐 

🔗

更多推荐