刘洪涛,孙杰,王成松,许健宇,孙一博,靳方明,张璐璐,薄志忠,王忻
基于改进YOLO的边缘设备实时目标检测算法研究
刘洪涛,孙杰,王成松,许健宇,孙一博,靳方明,张璐璐,薄志忠,王忻
(国网黑龙江省电力有限公司 齐齐哈尔供电公司,黑龙江 齐齐哈尔 161006)
:针对边缘设备上目标检测模型检测精确度低、检测识别效率慢的问题,提出了一种改进YOLO的边缘设备实时目标检测算法。算法设计了多尺度特征融合模块,此模块利用现有方法中各种特征尺度之间缺失路径的组合进行连接来提高检测精确度。实验结果表明,与传统目标检测部署模型相比,改进YOLO算法在边缘设备上识别速度更快检测精确度更高,为目标检测模型向轻量化平台的移植提供了可能。
边缘设备;多尺度特征融合;YOLO
目标检测能够对图像或视频中的各种目标进行定位和分类,并在多个领域有着广泛的应用,如无人驾驶汽车、医学成像、运动分析等。其中许多应用场景需要高度精确地实时反馈。由于采用了深度学习算法,目标检测在精确度和效率方面都取得了重大进步。但将目标检测模型移植到边缘设备时,由于边缘设备的计算能力弱,故目标检测模型的执行速度会急剧下降。
目前实现轻量级目标检测模型主要通过减少模型尺寸和计算量,但这些方法并不能直接转化为更快的模型在边缘设备上应用。多尺度特征融合是解决目标尺度变化问题的核心。随着特征融合模块的日益复杂,效率和准确度之间的权衡已经饱和,因此需要新的特征融合方法[1]来提高准确度与效率。但大多数方法都侧重于自上而下或自下而上的特征提取的随机组合,忽略了非相邻特征尺度之间的特征融合,这些融合可以显著改善提取的特征细节。此外,现有的特征融合方法受到输出尺度数量的限制,因此会遗失底层特征。
为进一步提高目标检测模型的精确度,构建适合边缘设备移植的网络模型,本文提出了改进YOLO的目标检测算法,设计了一个原始特征收集和重新分配模块,能够有效地结合多尺度特征提高模型准确度,最终将目标检测模型移植到边缘设备上时,检测的准确度得到有效提升。
YOLO是基于深度神经网络的目标识别和检测算法,能够在图像与视频中同时检测和分类对象。本文以YOLOv4-Tiny为例,原始的YOLOv4-Tiny主干特征提取网络如图1所示。
图1 YOLOv4-Tiny主干特征提取网络
在YOLOv4-Tiny中,使用了CSPdarknet53-Tiny作为主特征提取网络[2],和CSPdarknet53相比,为了使检测速度更快将激活函数改为Leaky ReLU,其与ReLU的不同之处是其负半轴乘以了很小的系数,使得输入信息小于0时,信息并没有完全丢失,Leaky ReLU的表达公式如下:
式(1)中,表示前一层汇总的信号;通常取值为0.001;()激活后信号并传递给下一层神经元。
损失函数是用来评价模型预测值和真实值之间的符合程度,在YOLOv4-Tiny网络中,使用CIOU损失函数,它将目标与锚框之间重叠率、尺度、距离以及惩罚性都考虑了进去,使得目标框的回归更加稳定。CIOU损失函数计算公式如下:
式(2)~(5)中,2(,b)分别代表了预测框和真实框的中心点的欧式距离;代表的是包含预测框和真实框的最小闭包区域的对角线距离;是长宽比的相似性;是权重参数;是交并比。
本文基于CSPdarknet53-Tiny网络结构为基础,使用原始特征收集和重新分配模块来提高部署在边缘设备目标检测模型的准确度。目前多尺度特征融合方法都停留在自上而下和自下而上的方法,此类方法只关注相邻的特征尺度,因此非相邻的特征尺度间的组合会被忽视,导致特征信息在远距离的特征尺度之间的传播效率低。如果将非相邻的特征尺度间进行特征融合,再重新分配回对应的特征尺度中,目标检测模型的精确度将会获得较大提升。其中每个比例的特征尺度都包含其他比例尺度的直接连接,这样不会增加模型的计算量就能达到多不同特征尺度之间建立联系,其网络结构如图2所示。
图2 改进后的YOLOv4-Tiny主干特征提取网络
因为原始特征收集和重新分配模块输入与输出特征尺度没有制约,所以原来YOLOv4-Tiny虽然只有两个特征输出尺度,但是在最后特征尺度加权和阶段可以额外增加两条特征输出尺度,从而利用感受野较小的低级特征来提高模型性能,达到提高模型精确度的目的。原始特征收集和重新分配模块为了减少不必要的计算,在传递过程中通过1*1的卷积来保证不会产生额外计算,并在最后通过加权和将传递的特征融合在一起,然后使用5*5内核的MBConv模块继续传递融合后的特征图,最后重新分配到不同的YOLO检测头。这样的设计允许将网络尺寸保持在最小,因为原始特征收集和重新分配模块仅用四层表示,一个1*1卷积、一个加权和和MBConv块中的两层,以及所需的上采样和下采样层。还可以轻松优化功能的并行收集和重新分配,以加快执行速度。
实验采用COCO数据集,包含117264个图像,包含80个对象类,平均每个图像有7.4个边界框[3]。通过在各种边缘设备上模型识别的每秒帧数(FPS)来评估模型。对提出的原始特征收集和重新分配模块与主干截断方法进行研究,并将改进模型与各种实时目标检测模型的性能进行比较。
特征提取主干的执行速度和准确性的平衡对检测模型的选择至关重要。边缘设备的计算能力、理论计算和模型尺寸都是影响模型执行速度的重要因素。本文直接收集表1中Jetson设备上各种特征提取主干的FPS。根据该表,将改进的YOLOv4-Tiny主干特征提取模型与MobilenetV2(*1.4)和EfficientNet-B3进行比较,最终由表1知改进的YOLOv4-Tiny主干特征提取模型检测精度最高。
表1 特征提取主干模型对比
使用PANet与YOLOv4-Tiny检测头提出的特征聚合路径。与PANet中的传统卷积块不同,实验选择单个1*1逐点卷积层,用于各种特征级别之间的所有形式的连接。在每个功能融合路径之前,所有功能都通过单个MBConvSE块。实验期间还在特征融合时进行特征细节提取,最终使用单个1*1逐点卷积层将特征映射转换为目标检测输出。
实验在训练前准备工作:
(1)几何增强,随机裁剪、旋转、翻转、调整大小等;光度增强,HSV调整、亮度调整等;
(2)实验中使用余弦退火学习率衰减策略。
(3)实验模型使用CIOU损失函数。训练时首先冻结使用迁移学习权重初始化的层,并以0.001的学习率训练150轮。然后解冻所有层,并在较小的起始学习率0.0001上微调300个阶段的模型。实验在320*320输入分辨率上进行了所有消融实验,但同时实验也训练了224*224和416*416的模型进行最终比较。
(4)本文采用准确率(Accuracy)、精度(AP)、精度均值(mAP)作为模型的评价指标 Accuracy、AP和mAP值越大,表明目标检测精度越高。各评价指标公式定义如下:
式(6)中,x为每一类预测正确的数量,num为每一类的样本总数,为类别数。
对于消融实验,所有模型都在三台Jetson设备上实现,使用FPS作为评估指标。其中使用基于TensorRT的FP16优化来进一步加快执行速度。所有模型都以批量大小等于1的方式执行,因为实验的目标是实时应用程序。处理10000张图像,并计算FPS的平均执行时间[4]。除此之外还为基于TensorRT的INT8优化提供FPS值,以便与专门为整数计算设计的检测模型进行公平比较。应该注意的是,Jetson Nano没有支持基于INT8的优化的张量核,因此此类模型与Jetson Nano上的浮点计数器部件相比没有任何优势。
原始特征收集和重新分配模块,以及与轻量级检测层相适应的特征聚合路径,本文方法在性能上提供了改进,而不考虑主干或特征聚合路径。虽然这也是以FPS略有下降为代价的[5],但总体而言,两者之间的权衡是有利的,因此,原始特征收集和重新分配模块是模型中有利可图的轻量级应用。多尺度特征之间没有关联的时候,除了有特征提取主干提供融合特征外,重新分配的方式也提供了非常必要的特征进行融合。通过原始特征收集和重新分配模块,有无快捷连接进行消融实验,实验结果如表2所示。通过添加快捷连接可以让感受野低的特征加入融合达到提高模型精确度的目的[6]。由表2知通过使用原始特征收集和重新分配模块,能够加快模型执行速度并提高准确度。
YOLOv4-Tiny是基于主干CSPdarknet53-Tiny网络的,并在不使用迁移学习的情况下从头开始训练。实验仍使用4个特征提取输入到本文的特征集合中[7],并根据模型2个可分配数量用于YOLOv4-Tiny输出进行比例重新分配。实验在Jetson Nano设备上执行这两个模型,与其他两个平台相比,Jetson Nano设备的资源最少[8]。最终结果见表3,使用原始特征收集和重新分配模块的模型在准确度方面都优于原始版本。实验发现原始特征收集和重新分配模块模块为YOLOv4-Tiny在准确度上获得了较大改进。因为YOLOv4-Tiny只有两个输出尺度,加入模块后可以提高多尺度特征融合故而能提高模型准确度。
表3 与YOLOv4-Tiny模型进行比较
本文提出了一种改进YOLO的边缘设备实时目标检测算法,该方法是一种新的原始特征收集和重新分配模块。将此方法应用到边缘设备上,提高了轻量级目标检测模型的准确性和检测效率。此方法对边缘设备机器学习模型设计带来广泛的应用可能。深入了解目标检测模型的各种特征之间的相互融合可以进一步增强特征提取交互,这是在保证其效率的同时提高模型精度的一个重要方式。
[1] 方路平,何杭江,周国民. 目标检测算法研究综述[J]. 计算机工程与应用,2018, 54(13): 9-24, 33.
[2] YU, Y.S. ,LIU, C.Y. Optimization of Multi-Objective Optimal Control Problems and Its Application in Designing of Horizontal Well[J]. Journal of Lanzhou University of Technology, 2007, 33, 4.
[3] 金守峰,林强强,高磊,等. 帧间差分融合灰度投影的运动目标检测方法[J]. 现代电子技术,2019, 42(6): 100-127.
[4] GIRSHICK,R.,DONAHUE,J., DARRELL, T.,et al. Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation[C]. 2014 IEEE Conference on Computer Vision and Pattern Recognition, Columbus, 2014, 14632381.
[5] 肖红军,白冰鑫. 基于改进ViBe算法的动态目标检测[J]. 自动化与信息工程,2020, 41(5): 33-37.
[6] 周登浩,武斌. 基于景深和LK光流法的视频测速算法[J]. 传感器与微系统,2021, 40(8): 116-120.
[7] 龙浩,李庆党,张明月. 基于HSV颜色空间和局部纹理的阴影消除算法研究[J]. 电子测量技术,2020, 43(18): 81-87.
[8] 王冰洋,孟卿卿. 一种改进视觉背景提取算法研究[J]. 电子测量技术,2020, 43(22): 104-108.
Research on real-time target detection algorithm for edge devices based on improved YOLO
LIU Hong-tao,SUN Jie,WANG Cheng-song,XU Jian-yu,SUN Yi-bo,JIN Fang-ming,ZHANG Lu-lu,BO Zhi-zhong,WANG Xin
(Qiqihar Power Supply Company, State Grid Heilongjiang Electric Power Co. Heilongjiang Qiqihar 161006, China)
This paper proposes an improved YOLO algorithm for real-time target detection on edge devices to address the problems of low detection accuracy and slow detection recognition efficiency of target detection models on edge devices. The algorithm introduces a multi-scale feature fusion module. This module uses the combination of missing paths between various feature scales in existing methods to connect to improve the detection accuracy. Experimental results show that the improved YOLO algorithm identifies faster detection accuracy on edge devices compared to traditional target detection deployment models. This offers the possibility of porting the target detection model to lightweight platforms.
edge devices;multi-scale feature fusion;YOLO
2022-04-20
国网黑龙江省电力有限公司科技项目(5224132000G8)
刘洪涛(1977-),男,黑龙江佳木斯人,硕士学位,政工师,主要从事输配电及发电厂变电站技术的应用研究。1443345723@qq.com。
TP391.41
A
1007-984X(2022)05-0006-05