工程科学学报 Chinese Journal of Engineering 基于梯度压缩的Y0L0v4算法车型识别 牟亮赵红李燕仇俊政孙传龙刘晓童 Vehicle recognition based on gradient compression and YOLO v4 algorithm MU Liang.ZHAO Hong,LI Yan,QIU Jun-zheng.SUN Chuan-long,LIU Xiao-Tong 引用本文: 牟亮,赵红,李燕,仇俊政,孙传龙,刘晓童.基于梯度压缩的Y0L0v4算法车型识别[.工程科学学报,优先发表.doi: 10.13374j.issn2095-9389.2020.10.28.006 MU Liang,ZHAO Hong.LI Yan,QIU Jun-zheng,SUN Chuan-long.LIU Xiao-Tong.Vehicle recognition based on gradient compression and YOLO v4 algorithm[J].Chinese Journal of Engineering.In press.doi:10.13374/j.issn2095-9389.2020.10.28.006 在线阅读View online::htps/ldoi.org10.13374/.issn2095-9389.2020.10.28.006 您可能感兴趣的其他文章 Articles you may be interested in 分布式一致性最优化的梯度算法与收敛分析 Distributed gradient-based consensus optimization algorithm and convergence analysis 工程科学学报.2020.42(4:434 https:doi.org10.13374.issn2095-9389.2019.09.05.005 基于群体智能优化的MKL-SVM算法及肺结节识别 MKL-SVM algorithm for pulmonary nodule recognition based on swarm intelligence optimization 工程科学学报.2021,43(9%:1157 https:/doi.org10.13374.issn2095-9389.2021.01.14.004 基于圆环压缩和挤压模拟法的Z“-4合金塑性成形摩擦因子测定 Measurement of friction factor in plastic forming of Zr-4 alloy based on ring compression and extrusionsimulation 工程科学学报.2020,42(2:209 https::/1doi.org/10.13374j.issn2095-9389.2019.01.07.002 基于深度学习的高效火车号识别 Efficient wagon number recognition based on deep learning 工程科学学报.2020,42(11:1525htps:oi.org10.13374.issn2095-9389.2019.12.05.001 基于增强学习算法的插电式燃料电池电动汽车能量管理控制策略 Energy management control strategy for plug-in fuel cell electric vehicle based on reinforcement learning algorithm 工程科学学报.2019.41(10:1332 https:/doi.org10.13374.issn2095-9389.2018.10.15.001 基于深度学习的人体低氧状态识别 Recognition of human hypoxic state based on deep learning 工程科学学报.2019,41(6:817htps:/doi.org10.13374issn2095-9389.2019.06.014
基于梯度压缩的YOLO v4算法车型识别 牟亮 赵红 李燕 仇俊政 孙传龙 刘晓童 Vehicle recognition based on gradient compression and YOLO v4 algorithm MU Liang, ZHAO Hong, LI Yan, QIU Jun-zheng, SUN Chuan-long, LIU Xiao-Tong 引用本文: 牟亮, 赵红, 李燕, 仇俊政, 孙传龙, 刘晓童. 基于梯度压缩的YOLO v4算法车型识别[J]. 工程科学学报, 优先发表. doi: 10.13374/j.issn2095-9389.2020.10.28.006 MU Liang, ZHAO Hong, LI Yan, QIU Jun-zheng, SUN Chuan-long, LIU Xiao-Tong. Vehicle recognition based on gradient compression and YOLO v4 algorithm[J]. Chinese Journal of Engineering, In press. doi: 10.13374/j.issn2095-9389.2020.10.28.006 在线阅读 View online: https://doi.org/10.13374/j.issn2095-9389.2020.10.28.006 您可能感兴趣的其他文章 Articles you may be interested in 分布式一致性最优化的梯度算法与收敛分析 Distributed gradient-based consensus optimization algorithm and convergence analysis 工程科学学报. 2020, 42(4): 434 https://doi.org/10.13374/j.issn2095-9389.2019.09.05.005 基于群体智能优化的MKL-SVM算法及肺结节识别 MKL-SVM algorithm for pulmonary nodule recognition based on swarm intelligence optimization 工程科学学报. 2021, 43(9): 1157 https://doi.org/10.13374/j.issn2095-9389.2021.01.14.004 基于圆环压缩和挤压模拟法的Zr-4合金塑性成形摩擦因子测定 Measurement of friction factor in plastic forming of Zr-4 alloy based on ring compression and extrusionsimulation 工程科学学报. 2020, 42(2): 209 https://doi.org/10.13374/j.issn2095-9389.2019.01.07.002 基于深度学习的高效火车号识别 Efficient wagon number recognition based on deep learning 工程科学学报. 2020, 42(11): 1525 https://doi.org/10.13374/j.issn2095-9389.2019.12.05.001 基于增强学习算法的插电式燃料电池电动汽车能量管理控制策略 Energy management control strategy for plug-in fuel cell electric vehicle based on reinforcement learning algorithm 工程科学学报. 2019, 41(10): 1332 https://doi.org/10.13374/j.issn2095-9389.2018.10.15.001 基于深度学习的人体低氧状态识别 Recognition of human hypoxic state based on deep learning 工程科学学报. 2019, 41(6): 817 https://doi.org/10.13374/j.issn2095-9389.2019.06.014
工程科学学报.第44卷,第X期:1-11.2021年X月 Chinese Journal of Engineering,Vol.44,No.X:1-11,X 2021 https://doi.org/10.13374/j.issn2095-9389.2020.10.28.006;http://cje.ustb.edu.cn 基于梯度压缩的YOLO V4算法车型识别 牟亮,赵红四,李燕,仇俊政,孙传龙,刘晓童 青岛大学机电工程学院,青岛266071 ☒通信作者,E-mail:qdlizh@163.com 摘要为进一步提高智能交通系统对车辆及不同车型识别的泛化性、鲁棒性与实时性.根据检测区域的特征有针对性地 构建数据集,改变余弦退火衰减(CD)学习率的更新方式,提出一种基于梯度压缩(GC)的Adam优化算法(Adam-GC)来提高 YOLO V4算法的训练速度、检测精度以及网络模型的泛化能力.为验证改进后YOLO v4算法的有效性,对实际路况的车流 进行采集后,利用训练完成的网络模型对不同密度车流进行定量的车型检测实验验证.经实验验证,改进后方法的整体检测 结果要优于改进前,YOL0v4和YOL0v4GCCD训练得到的网络模型在阻塞流样本下检测得到的准确率分别为94.59%和 96.46%;在同步流样本下检测得到的准确率分别为95.34%和97.20%:在自由流样本下检测得到的准确率分别为95.98%和 97.88%. 关键词梯度压缩:学习率;Adam优化算法:YOLO v4:车型识别 分类号TP391.4 Vehicle recognition based on gradient compression and YOLO v4 algorithm MU Liang,ZHAO Hong,LI Yan,OIU Jun-zheng,SUN Chuan-long,LIU Xiao-Tong College of Mechanical and Electrical Engineering,Qingdao University,Qingdao 266071,China Corresponding author,E-mail:qdlizh@163.com ABSTRACT Intelligent transportation systems (ITS)are the development direction of future transportation systems.ITS can effectively reduce traffic load and environmental pollution and ensure traffic safety,which has been a concern in all countries.In the field of intelligent transportation,vehicle detection has always been a hot spot but a difficult matter.To further improve the generalization,robustness,and real-time performance of the intelligent transportation system for the recognition of vehicles and different vehicle types,this study proposes an improved vehicle detection algorithm and chooses a road in the city as the background of the article. According to the characteristics of the detection region,the data set is constructed pertinently and the data set size is reduced using a video frame extraction method,aiming at achieving better detection performance with less training cost.The updating method of cosine decay with warm-up(CD)learning rate is then changed.An Adam gradient compression(GC)based on GC is proposed to improve the training speed,detection accuracy,and generalization ability of the YOLO v4 algorithm.To verify the effectiveness of the proposed algorithm,the trained network model is used to verify the quantitative vehicle type detection experiment of different density traffic flows after collecting the traffic flow information under actual road conditions.Experimental results show that the overall detection of the improved method is better than that of the original method.The accuracy rates of the network models trained by YOLO v4 and YOLO v4 GC CD under the blocking flow samples,synchronous flow samples,and free flow samples are 94.59%and 96.46%,95.34%and 97.20%,95.98%,and 97.88%,respectively.Simultaneously,the detection effect of YOLOV4 GC CD was verified at night and on rainy days with an accuracy rate of 92.06%and 95.51%,respectively. KEY WORDS gradient compression;learning rate;Adam optimization algorithm;YOLO v4;vehicle recognition 收稿日期:2020-10-28 基金项目:青岛市民生科技计划资助项目(19-6-1-88-nsh),山东省重点研发计划资助项目(2018GGX105004)
基于梯度压缩的 YOLO v4 算法车型识别 牟 亮,赵 红苣,李 燕,仇俊政,孙传龙,刘晓童 青岛大学机电工程学院, 青岛 266071 苣通信作者, E-mail: qdlizh@163.com 摘 要 为进一步提高智能交通系统对车辆及不同车型识别的泛化性、鲁棒性与实时性. 根据检测区域的特征有针对性地 构建数据集,改变余弦退火衰减(CD)学习率的更新方式,提出一种基于梯度压缩(GC)的 Adam 优化算法(Adam−GC)来提高 YOLO v4 算法的训练速度、检测精度以及网络模型的泛化能力. 为验证改进后 YOLO v4 算法的有效性,对实际路况的车流 进行采集后,利用训练完成的网络模型对不同密度车流进行定量的车型检测实验验证. 经实验验证,改进后方法的整体检测 结果要优于改进前,YOLO v4 和 YOLO v4 GC CD 训练得到的网络模型在阻塞流样本下检测得到的准确率分别为 94.59% 和 96.46%;在同步流样本下检测得到的准确率分别为 95.34% 和 97.20%;在自由流样本下检测得到的准确率分别为 95.98% 和 97.88%. 关键词 梯度压缩;学习率;Adam 优化算法;YOLO v4;车型识别 分类号 TP391.4 Vehicle recognition based on gradient compression and YOLO v4 algorithm MU Liang,ZHAO Hong苣 ,LI Yan,QIU Jun-zheng,SUN Chuan-long,LIU Xiao-Tong College of Mechanical and Electrical Engineering, Qingdao University, Qingdao 266071, China 苣 Corresponding author, E-mail: qdlizh@163.com ABSTRACT Intelligent transportation systems (ITS) are the development direction of future transportation systems. ITS can effectively reduce traffic load and environmental pollution and ensure traffic safety, which has been a concern in all countries. In the field of intelligent transportation, vehicle detection has always been a hot spot but a difficult matter. To further improve the generalization, robustness, and real-time performance of the intelligent transportation system for the recognition of vehicles and different vehicle types, this study proposes an improved vehicle detection algorithm and chooses a road in the city as the background of the article. According to the characteristics of the detection region, the data set is constructed pertinently and the data set size is reduced using a video frame extraction method, aiming at achieving better detection performance with less training cost. The updating method of cosine decay with warm-up (CD) learning rate is then changed. An Adam gradient compression (GC) based on GC is proposed to improve the training speed, detection accuracy, and generalization ability of the YOLO v4 algorithm. To verify the effectiveness of the proposed algorithm, the trained network model is used to verify the quantitative vehicle type detection experiment of different density traffic flows after collecting the traffic flow information under actual road conditions. Experimental results show that the overall detection of the improved method is better than that of the original method. The accuracy rates of the network models trained by YOLO v4 and YOLO v4 GC CD under the blocking flow samples, synchronous flow samples, and free flow samples are 94.59% and 96.46%, 95.34% and 97.20%, 95.98%, and 97.88%, respectively. Simultaneously, the detection effect of YOLOV4 GC CD was verified at night and on rainy days with an accuracy rate of 92.06% and 95.51%, respectively. KEY WORDS gradient compression;learning rate;Adam optimization algorithm;YOLO v4;vehicle recognition 收稿日期: 2020−10−28 基金项目: 青岛市民生科技计划资助项目(19-6-1-88-nsh),山东省重点研发计划资助项目(2018GGX105004) 工程科学学报,第 44 卷,第 X 期:1−11,2021 年 X 月 Chinese Journal of Engineering, Vol. 44, No. X: 1−11, X 2021 https://doi.org/10.13374/j.issn2095-9389.2020.10.28.006; http://cje.ustb.edu.cn
工程科学学报,第44卷,第X期 随着人工智能与计算机视觉的发展,智能交 R-CNN(Faster region-based convolution neural 通系统u(Intelligent traffic system,ITS)在两者的基 networks)!31 SPP-Net(Spatial pyramid pooling in 础上得到了快速的发展,车辆及其车型的识别也 deep convolutional networks))l等.其中基于回归 在该领域受到了广泛的关注.智能交通系统将先 的YOLO系列算法是当前比较流行的目标检测算 进的信息技术、数据通信技术、传感器技术、电子 法,将模型的训练与检测均放到一个单独的网络 控制技术以及计算机技术等有效地综合运用于整 中来完成原始数据从输入到检测类别和检测目标 个交通运输管理体系,从而建立起一种大范围内、 位置输出的过程.赵坤等)针对弱光照下交通标 全方位发挥作用的,实时、准确、高效的综合运输 志易发生的问题改进了YOLO V3算法来提高交通 和管理系统.车辆检测是智能交通系统数据前 标志的检测和识别;曹凯宁针对在视频检测过 端采集的一个重要环节,并且分不同车型进行识 程中对远端物体检测效率低下和实时性等问题, 别,能够为交通流量统计、交通智能控制以及解决 基于改进的YOLO算法来提升车辆目标检测的速 拥堵问题提供更加详细的数据保障 率和准确率 近几儿年,深度学习在目标检测、语音识别等方 针对交通复杂多变的环境特点及智能交通领 面取得了重大的突破,这很大程度上归功于大型 域对目标检测的实时性要求,本文选取YOLO 数据集、计算机强大的计算能力、复杂网络架构和 V4目标检测算法作为基本算法进行研究,最新的 优化算法的进展.本文所涉及的车辆检测属于目 YOLO V4算法在YOLO v3的基础上实现了检测精 标检测算法的一项应用,目前应用到车辆检测的 度的提升,但是增加了网络的复杂程度,造成训练 主要有传统机器学习和基于深度学习的目标检测 时间较长,本文在该算法的基础上进行了如下工作: 对于传统机器学习的目标检测算法主要是通 (1)针对青岛地区道路及车辆特点进行数据 过对选定区域中车辆的基本信息及其运动特征 采集,拍摄青岛地区四个路段的车流,根据不同的 进行分析,并提取候选区中的特征,将提取到的特 车流密度对每个视频进行分帧,从中剔除冗余的 征送入分类器阿来判断是否为车辆.现有的主要 训练集,剩下2870张构成自建数据集,在网络车 研究有,马泊宁m提出的基于方向梯度直方图 辆信息检测数据集UA-DETRAC中采用同样的方 (Histogram of gradient,HOG)特征、支持向量机 法挑选1500张,对货车进行数据增强所构建的数 (Support vector machine,SVM)的车辆识别算法和 据集包含210张3D图片,共组成含有4580张图片 基于卡尔曼滤波的车辆跟踪算法;Cai等提出了 的训练集 一种基于场景模型和模式识别相结合的概率框 (2)改变学习率余弦退火衰减法的更新方式, 架,由可变形组件模型(Deformable part model,DPM) 学习率的改变会帮助算法在训练过程中跳出局部 和条件随机场(Conditional random field,CRF)描述 最优并防止网络模型超调. 的车辆模型,使用DPM生成的根和组件的分数及 (3)对于检测算法的检测精度及泛化能力,本 其空间配置来学习CRF模型.基于机器学习的目 文考虑直接在梯度上进行操作,通过采用一种合 标检测算法没有针对性区域选择会造成大量的冗 适的梯度压缩方法来平滑梯度曲线,同时梯度压 余窗口,并且因为交通场景的复杂性与多变性,难 缩也会带来权重空间与输出特征空间的正则化, 以实现针对该任务设计的特征提取,数据规模的 从而提高检测算法的性能 缺失和提取特征的质量问题,会造成泛化能力差 1YOL0v4算法 及识别精度低等问题 基于深度学习的目标检测算法,主要是通过 本文选用的YOLO V4是在YOLO V3检测框 建立数据之间多层的、非线性的模型,通过数据集 架的基础上从主干特征提取网络、激活函数、数 的训练来更新层与层之间的权重.该类目标检测 据处理和损失函数等方面进行优化,检测部分与 算法主要分为两类,一类是以SSD(Single shot YOLO v3相似,经参考得知YOLO V4算法具有较 multibox detector)1 YOLO(You only look once)101 好的检测速度与精度,故本文将在YOLO v4算法 RefineDet(Single-shot refinement neural network for 的基础上开展工作 object detection)川等为代表的分类回归算法,而另 1.1主干特征提取网络 一类是基于候选区域生成的算法,主要有RCNN YOLO V4算法的主干特征提取网络采用 (Region-based convolution neural networks)Faster CSPDarknet5:3,如图l所示.该特征提取网络主要
随着人工智能与计算机视觉的发展,智能交 通系统[1] (Intelligent traffic system, ITS)在两者的基 础上得到了快速的发展,车辆及其车型的识别也 在该领域受到了广泛的关注. 智能交通系统将先 进的信息技术、数据通信技术、传感器技术、电子 控制技术以及计算机技术等有效地综合运用于整 个交通运输管理体系,从而建立起一种大范围内、 全方位发挥作用的,实时、准确、高效的综合运输 和管理系统. 车辆检测[2] 是智能交通系统数据前 端采集的一个重要环节,并且分不同车型进行识 别,能够为交通流量统计、交通智能控制以及解决 拥堵问题提供更加详细的数据保障. 近几年,深度学习在目标检测、语音识别等方 面取得了重大的突破[3−5] ,这很大程度上归功于大型 数据集、计算机强大的计算能力、复杂网络架构和 优化算法的进展. 本文所涉及的车辆检测属于目 标检测算法的一项应用,目前应用到车辆检测的 主要有传统机器学习和基于深度学习的目标检测. 对于传统机器学习的目标检测算法主要是通 过对选定区域中车辆的基本信息及其运动特征 进行分析,并提取候选区中的特征,将提取到的特 征送入分类器[6] 来判断是否为车辆. 现有的主要 研究有 ,马泊宁[7] 提出的基于方向梯度直方图 ( Histogram of gradient, HOG)特征 、支持向量机 (Support vector machine,SVM)的车辆识别算法和 基于卡尔曼滤波的车辆跟踪算法; Cai 等[8] 提出了 一种基于场景模型和模式识别相结合的概率框 架,由可变形组件模型 (Deformable part model,DPM) 和条件随机场 (Conditional random field,CRF) 描述 的车辆模型,使用 DPM 生成的根和组件的分数及 其空间配置来学习 CRF 模型. 基于机器学习的目 标检测算法没有针对性区域选择会造成大量的冗 余窗口,并且因为交通场景的复杂性与多变性,难 以实现针对该任务设计的特征提取,数据规模的 缺失和提取特征的质量问题,会造成泛化能力差 及识别精度低等问题. 基于深度学习的目标检测算法,主要是通过 建立数据之间多层的、非线性的模型,通过数据集 的训练来更新层与层之间的权重. 该类目标检测 算 法 主 要 分 为 两 类 , 一 类 是 以 SSD(Single shot multibox detector)[9]、 YOLO(You only look once) [10]、 RefineDet(Single-shot refinement neural network for object detection)[11] 等为代表的分类回归算法,而另 一类是基于候选区域生成的算法,主要有 R−CNN (Region-based convolution neural networks)[12]、Faster R−CNN(Faster region-based convolution neural networks)[13]、 SPP−Net(Spatial pyramid pooling in deep convolutional networks)[14] 等. 其中基于回归 的 YOLO 系列算法是当前比较流行的目标检测算 法,将模型的训练与检测均放到一个单独的网络 中来完成原始数据从输入到检测类别和检测目标 位置输出的过程. 赵坤等[15] 针对弱光照下交通标 志易发生的问题改进了 YOLO v3 算法来提高交通 标志的检测和识别;曹凯宁[16] 针对在视频检测过 程中对远端物体检测效率低下和实时性等问题, 基于改进的 YOLO 算法来提升车辆目标检测的速 率和准确率. 针对交通复杂多变的环境特点及智能交通领 域对目标检测的实时性要求 ,本文选 取 YOLO v4 目标检测算法作为基本算法进行研究,最新的 YOLO v4 算法在 YOLO v3 的基础上实现了检测精 度的提升,但是增加了网络的复杂程度,造成训练 时间较长,本文在该算法的基础上进行了如下工作: (1)针对青岛地区道路及车辆特点进行数据 采集,拍摄青岛地区四个路段的车流,根据不同的 车流密度对每个视频进行分帧,从中剔除冗余的 训练集,剩下 2870 张构成自建数据集,在网络车 辆信息检测数据集 UA-DETRAC 中采用同样的方 法挑选 1500 张,对货车进行数据增强所构建的数 据集包含 210 张 3D 图片,共组成含有 4580 张图片 的训练集. (2)改变学习率余弦退火衰减法的更新方式, 学习率的改变会帮助算法在训练过程中跳出局部 最优并防止网络模型超调. (3)对于检测算法的检测精度及泛化能力,本 文考虑直接在梯度上进行操作,通过采用一种合 适的梯度压缩方法来平滑梯度曲线,同时梯度压 缩也会带来权重空间与输出特征空间的正则化, 从而提高检测算法的性能. 1 YOLO v4 算法 本文选用的 YOLO v4 是在 YOLO v3 检测框 架的基础上从主干特征提取网络、激活函数、数 据处理和损失函数等方面进行优化,检测部分与 YOLO v3 相似,经参考得知 YOLO v4 算法具有较 好的检测速度与精度,故本文将在 YOLO v4 算法 的基础上开展工作. 1.1 主干特征提取网络 YOLO v4 算 法 的 主 干 特 征 提 取 网 络 采 用 CSPDarknet53,如图 1 所示. 该特征提取网络主要 · 2 · 工程科学学报,第 44 卷,第 X 期
牟亮等:基于梯度压缩的YOLO v4算法车型识别 3· 由卷积块CBM(Conv+Batchnorm+Mish)与通过 成两部分,主干部分继续进行原先的残差块堆叠 CSPnet结构修改的残差块(Resblock body)组成. 的操作,而另一部分则通过一个大的残差边实现 YOLOv4采用Mish激活函数替换原有的LeakyReLU 跨阶段层次合并,在减少计算量的同时保证了特 激活函数,CSPnet结构将原来的堆叠残差块拆分 征提取的完整 ×3CBM ResBlock enseBloc 3CBM ResBlock enseBlock ×3CBM 3x3DBM2 ResBlockx2 ResBlock×8 ResBlock ×3CBM esBlock *3CBM Output ResBlock×4 ResBlockx8 BM CONV BN Mish ResBlock *ICBM DenseBlock× xICBM ZeroPaddin 3CBM 图1 CSPDarknet53特征提取网路 Fig.1 CSPDarknet53 feature extraction network 1.2激活函数 具有重要的作用.目前广泛使用的激活函数 激活函数将非线性的特性引入神经网络算 RLUI)存在着负值时会被直接截断和梯度下降 法中,就是在神经元中运行的函数,负责神经元 不够平滑的问题,因此YOLO V4采用Mish激活 输人端与输出端之间的映射,其对于神经网络 函数8I来代替ReLU,图2为Mish与ReLU激活 模型学习并理解非常复杂和非线性的输入特性 函数的图像 (a) 5 (b) 3 -4 -4 -2 图2两种激活函数图像.(a)Mish激活函数:(b)ReLU激活函数 Fig.2 Two kinds of activation function images:(a)Mish activation function;(b)ReLU activation function Mish和ReLU激活函数的公式如下: 时不是像ReLU一样完全不被激活,而是以较小的 Mish =x*tanh(In(1 +e)) (1) 负梯度流入神经网络进而保证了信息的流动性 ReLU max(0,x) (2) 并且Mish也保留了激活函数无边界的优点,巧妙避 其中,x表示输入节点的值.Mish激活函数在负值 开了在两边极限梯度趋向于1而造成的饱和问题
由卷积块 CBM(Conv + Batchnorm + Mish)与通过 CSPnet 结构修改的残差块(Resblock_body)组成. YOLO v4 采用Mish 激活函数替换原有的LeakyReLU 激活函数,CSPnet 结构将原来的堆叠残差块拆分 成两部分,主干部分继续进行原先的残差块堆叠 的操作,而另一部分则通过一个大的残差边实现 跨阶段层次合并,在减少计算量的同时保证了特 征提取的完整. Input ZeroPadding CBM CONV BN Mish 1×1CBM 1×1CBM 1×1CBM DenseBlock×n Add 3×3CBM Output 3×3DBM×2 3×3CBM 3×3CBM 3×3CBM 3×3CBM ResBlock 3×3CBM ResBlock ResBlock ResBlock ResBlock×2 ResBlock×4 ResBlock×8 ResBlock×8 ResBlock ResBlock DenseBlock DenseBlock DenseBlock DenseBlock DenseBlock 图 1 CSPDarknet53 特征提取网络 Fig.1 CSPDarknet53 feature extraction network 1.2 激活函数 激活函数将非线性的特性引入神经网络算 法中,就是在神经元中运行的函数,负责神经元 输入端与输出端之间的映射,其对于神经网络 模型学习并理解非常复杂和非线性的输入特性 具有重要的作用 . 目前广泛使用的激活函 数 ReLU[17] 存在着负值时会被直接截断和梯度下降 不够平滑的问题,因此 YOLO v4 采用 Mish 激活 函数[18] 来代替 ReLU,图 2 为 Mish 与 ReLU 激活 函数的图像. 5 (a) (b) f(x) 4 3 2 1 0 −4 −2 0 2 4 x 5 f(x) 4 3 2 1 0 −4 −2 0 2 4 x 图 2 两种激活函数图像. (a)Mish 激活函数;(b)ReLU 激活函数 Fig.2 Two kinds of activation function images: (a) Mish activation function; (b) ReLU activation function Mish 和 ReLU 激活函数的公式如下: Mish = x ∗ tanh(ln(1+e x )) (1) ReLU = max(0, x) (2) 其中,x 表示输入节点的值. Mish 激活函数在负值 时不是像 ReLU 一样完全不被激活,而是以较小的 负梯度流入神经网络进而保证了信息的流动性. 并且 Mish 也保留了激活函数无边界的优点,巧妙避 开了在两边极限梯度趋向于 1 而造成的饱和问题. 牟 亮等: 基于梯度压缩的 YOLO v4 算法车型识别 · 3 ·
工程科学学报,第44卷,第X期 1.3损失函数 IoU(Intersection over Union)就是所谓的交并 Gc(VwiL)= 〉VwL (6) V2πo 比,是目前检测中比较常用的指标,可以反映出预 测检测框与真实检测框的检测效果. 其中,w:(i=1,2,,W)代表权重向量,VwL代表损 YOLO V4目标检测算法回归损失函数采用 失函数对权重向量w:的梯度,μ为当前训练次数 CIoU Loss(Complete-IoU Loss),该回归损失函数将 与总训练次数epochf的比值.在这里v(=, V2元d 目标与anchors之间的距离、重叠率、尺度及惩罚 项都考虑进去,使得目标框回归变得更加稳定,不 。-兮为梯度平滑曲线,选取σ的值为04,该曲线的 图像如图3所示 会出现训练中发散的问题,公式如下: p2(b,b8) 1.00 CIoU=IoU- -av (3) c2 0.95 0.90 = (4) 1-loU+v 0.85 V= π2 arctan (5) 复0.80 0.75 其中,gt为groundtruth的缩写,表示真实框的信 0.70 息,d为真实框的宽度,h为真实框的高度, 0.65 ρ(亿,b)代表了预测框和真实框中心点的欧式距 0.6 离,c表示同时包含预测框和真实框的最小闭包区 0 500 1000 1500 2000 Epoch 域的对角线距离,α为权重函数,v用来度量长宽比 图3梯度平滑曲线 的相似度 Fig.3 Gradient smoothing curve 2算法改进 只需求得梯度矩阵的均值,在每个梯度的列 向量中减掉该均值后再与梯度平滑系数相乘,就 2.1梯度压缩 可以得到最优的权重更新方向.该方法的计算廉 目前目标检测算法的优化方法主要有在激活 价,不涉及除法运算,只需要几行代码就可以实 函数中起作用的BN(Batch normalization)l和在 现.实验表明,采用卷积神经网络模型来训练 权重上操作的WS(Weight standardization)o,除了 Mnist数据集,每个epoch只需多花费0.5s左右的 在这两方面操作外,本文考虑直接在梯度方面进 时间 行操作,来优化训练过程和检测精度 将上述公式写成矩阵形式如下: 目标检测算法中对梯度进行操作的优化算法 1 中,最常用的就是计算梯度的动量.借用物理中动 Gc(VwL)=- -e-Σ(PTwL (7) 量的概念,模拟物体运动时的惯性,在更新时一定 程度上保留之前更新的方向,并根据梯度微调下 P=I-iiT (8) 一步的更新方向.利用动量思想的优化算法主要有 P2=P=P2 (9) SGDM(Stochastic gradient descent with momentum)211 iTPVwL=0 (10) 和Adam(Adaptive moment estimation)2.经过文献 其中,P表示权值空间法向量为e的超平面的投影 参考,Adam相比于SGDM算法具有更高的性能, 矩阵,i=1/VN为N维单位向量,I为N维单位矩阵 它利用梯度的一阶矩估计(即梯度的均值)与二阶 PvwL是在该平面上的投影梯度2),在超平面上的 矩估计(及梯度的方差)对更新步长进行动态调 投影梯度会压缩权值空间,并且图3所示梯度平 整.为进一步提高算法性能及方便操作者使用本 滑曲线值的范围在0.6~1之间,会进一步缩小投 文方法,提出了一种在Adam优化器上根据训练 影梯度进而压缩权值空间.本文的梯度压缩方法 的epoch自动更新梯度的方法,称为梯度压缩,改 可以简单地在Adam优化算法中实施,带梯度压缩 进后的优化器简称为Adam-GC. 的Adam优化算法的流程如下 梯度压缩的公式如下: Input:Weight vector,w
1.3 损失函数 IoU( Intersection over Union)就是所谓的交并 比,是目前检测中比较常用的指标,可以反映出预 测检测框与真实检测框的检测效果. YOLO v4 目标检测算法回归损失函数采用 CIoU Loss(Complete-IoU Loss),该回归损失函数将 目标与 anchors 之间的距离、重叠率、尺度及惩罚 项都考虑进去,使得目标框回归变得更加稳定,不 会出现训练中发散的问题,公式如下: CIoU = IoU− ρ 2 ( b,b gt) c 2 −αv (3) α = v 1−IoU+v (4) v = 4 π 2 ( arctan d gt h gt −arctan d h ) (5) d gt h gt ρ 2 ( b,b gt) c α ν 其中, gt 为 groundtruth 的缩写,表示真实框的信 息 , 为 真 实 框 的 宽 度 , 为 真 实 框 的 高 度 , 代表了预测框和真实框中心点的欧式距 离, 表示同时包含预测框和真实框的最小闭包区 域的对角线距离, 为权重函数, 用来度量长宽比 的相似度. 2 算法改进 2.1 梯度压缩 目前目标检测算法的优化方法主要有在激活 函数中起作用的 BN(Batch normalization) [19] 和在 权重上操作的 WS(Weight standardization) [20] ,除了 在这两方面操作外,本文考虑直接在梯度方面进 行操作,来优化训练过程和检测精度. 目标检测算法中对梯度进行操作的优化算法 中,最常用的就是计算梯度的动量. 借用物理中动 量的概念,模拟物体运动时的惯性,在更新时一定 程度上保留之前更新的方向,并根据梯度微调下 一步的更新方向. 利用动量思想的优化算法主要有 SGDM(Stochastic gradient descent with momentum)[21] 和 Adam(Adaptive moment estimation)[22] . 经过文献 参考,Adam 相比于 SGDM 算法具有更高的性能, 它利用梯度的一阶矩估计(即梯度的均值)与二阶 矩估计(及梯度的方差)对更新步长进行动态调 整. 为进一步提高算法性能及方便操作者使用本 文方法,提出了一种在 Adam 优化器上根据训练 的 epoch 自动更新梯度的方法,称为梯度压缩,改 进后的优化器简称为 Adam−GC. 梯度压缩的公式如下: φGC(∇wiL) = 1 √ 2πσ e − µ 2 2 ∇wiL− 1 N ∑ N j=1 ∇wi, jL (6) wi(i = 1,2,...,N) ∇wiL wi µ t epoch φ(µ) = 1 √ 2πσ e − µ 2 2 σ 其中, 代表权重向量, 代表损 失函数对权重向量 的梯度, 为当前训练次数 与总训练次数 的比值. 在这里 为梯度平滑曲线,选取 的值为 0.4,该曲线的 图像如图 3 所示. 1.00 0.95 0.90 0.85 0.80 0.75 0.70 0.65 0.60 0 500 1000 Epoch Value 1500 2000 图 3 梯度平滑曲线 Fig.3 Gradient smoothing curve 只需求得梯度矩阵的均值,在每个梯度的列 向量中减掉该均值后再与梯度平滑系数相乘,就 可以得到最优的权重更新方向. 该方法的计算廉 价,不涉及除法运算,只需要几行代码就可以实 现. 实验表明 ,采用卷积神经网络模型来训练 Mnist 数据集,每个 epoch 只需多花费 0.5 s 左右的 时间. 将上述公式写成矩阵形式如下: φGC(∇wL) = 1 √ 2πσ e − µ 2 2 (P∇wL) (7) P = I− iiT (8) P 2= P =P 2 (9) i T P∇wL = 0 (10) P e i = 1/ √ N N I N P∇wL 其中, 表示权值空间法向量为 的超平面的投影 矩阵, 为 维单位向量, 为 维单位矩阵 是在该平面上的投影梯度[23] ,在超平面上的 投影梯度会压缩权值空间,并且图 3 所示梯度平 滑曲线值的范围在 0.6~1 之间,会进一步缩小投 影梯度进而压缩权值空间. 本文的梯度压缩方法 可以简单地在 Adam 优化算法中实施,带梯度压缩 的 Adam 优化算法的流程如下. w 0 Input: Weight vector, · 4 · 工程科学学报,第 44 卷,第 X 期
牟亮等:基于梯度压缩的YOLO v4算法车型识别 5 Learning rates,a 成←-t/(1-) Exponential decay rates,B1B2. -v/1-) Initialize 1s moment vector,mo Initialize 2 moment vector,vo wl←w-am/(+e) for t in epoch: 其中,为一个很小的常数,m/(V+e)代表了 g←VwL 权值的更新方向,梯度压缩也可以从投影梯度的 角度进行解释,如图4所示为Adam优化算法使用 g←-Gc(TwL) 梯度压缩的儿何解释,首先将梯度投影到由 m←B1m-+(1-B1)g 严(w-w)=0确定的超平面中,随后权值沿着梯度 ←B21+(1-B2)g2 确定的更新方向进行更新 L -(0)PVwL 图4Adam-GC的几何解释 Fig.4 Geometric interpretation of Adam-GC 2.2更新余弦退火衰减 3.2实地采集的数据集 在深度学习的算法中,对学习率的调整策略 本文旨在建立针对市区的车辆目标检测系 有着十分重要的作用.合适的学习率不仅会帮助 统,故采集实际交通道路中的车流图作为网络训 模型在训练过程中跳出局部最优,更会加速模型 练的数据集,对于提高系统的实用性及准确性有 收敛、提高模型识别精度 着十分重要的意义.选用型号为Canon EOS700D 余弦退火衰减法会使学习率先线性上升后模 的摄像机,数据采集地点位于青岛市福州北路及 拟余弦函数下降,更新前的学习率衰减法只一次 重庆南路的两处过街天桥,摄像机的安装位置、角 上升与下降,但经过验证可知该方法的学习率变 度及高度均与交管部门安装的摄像头的方式相 化缓慢,导致训练收敛速度较慢,并且易陷入局部 似.本文主要研究市区交通中3个具有代表性的 最优值,所以实现学习率的多次上升与下降,更新 前后的学习率对比如图5(a)所示. 时段,分别为8:00一9:00为阻塞流(900<每小时 将更新前后的学习率衰减方法在Mnist数据 车流量≤1300)、9:00一10:00为同步流(300<每小 集中利用卷积神经网络进行验证,设置epoch为 时车流量≤600)、10:00一11:00为自由流(每小时 50,learning_rate base为0.l,训练过程的Loss及 车流量≤300). Acc如图5(b)~(c)所示,经过更新后的学习率衰 为使训练样本保持多样性并减少冗余和训练 减方式对训练收敛更加快速,更加稳定 成本,采取将视频隔帧抽取的方法,根据不同密度 车流采取不同间隔帧数来优化训练样本,阻塞流 3车辆检测数据集 因车速最低故每10帧抽取一次,同步流每5帧抽 3.1车型描述 取一次,自由流则每2帧抽取一次,抽取数据采集 市区中主要车辆类型分为轿车、公交车和货 后的样本,如图7~9所示: 车,本文将分这三种车型进行识别,获取的样本如 3.3数据增强 图6所示. 在构建数据集的过程中,发现货车的样本数
Learning rates, α Exponential decay rates, β1β2, Initialize 1 m0 st moment vector, Initialize 2 v0 nd moment vector, for t in epoch: g t ← ∇w t L gˆ t ← ψGC ( ∇w tL ) mt ← β1mt−1 +(1−β1)gˆ t v t ← β2v t−1 +(1−β2) gˆ t 2 mˆ t ← mt /(1−β t 1 ) vˆ t ← v t /(1−β t 2 ) w t+1 ← w t −αmˆ t / ( √ vˆ t +ϵ ) ϵ mˆ t /( √ vˆ t +ϵ) i T ( w−w 0 ) = 0 其中, 为一个很小的常数, 代表了 权值的更新方向,梯度压缩也可以从投影梯度的 角度进行解释,如图 4 所示为 Adam 优化算法使用 梯度压缩的几何解释 ,首先将梯度投影到由 确定的超平面中,随后权值沿着梯度 确定的更新方向进行更新. −∇w0L −∇w1L −∇wtL w1 w0 wt i wt+1 −φ(0)P∇w0L −φ(1)P∇w1L −φ(t)P∇wtL v 0+ϵ m0 v 1+ϵ m1 v t+ϵ mt 图 4 Adam-GC 的几何解释 Fig.4 Geometric interpretation of Adam-GC 2.2 更新余弦退火衰减 在深度学习的算法中,对学习率的调整策略[24] 有着十分重要的作用. 合适的学习率不仅会帮助 模型在训练过程中跳出局部最优,更会加速模型 收敛、提高模型识别精度. 余弦退火衰减法会使学习率先线性上升后模 拟余弦函数下降,更新前的学习率衰减法只一次 上升与下降,但经过验证可知该方法的学习率变 化缓慢,导致训练收敛速度较慢,并且易陷入局部 最优值,所以实现学习率的多次上升与下降,更新 前后的学习率对比如图 5(a) 所示. 将更新前后的学习率衰减方法在 Mnist 数据 集中利用卷积神经网络进行验证,设置 epoch 为 50, learning_rate_base 为 0.1, 训 练 过 程 的 Loss 及 Acc 如图 5(b)~(c) 所示,经过更新后的学习率衰 减方式对训练收敛更加快速,更加稳定. 3 车辆检测数据集 3.1 车型描述 市区中主要车辆类型分为轿车、公交车和货 车,本文将分这三种车型进行识别,获取的样本如 图 6 所示. 3.2 实地采集的数据集 本文旨在建立针对市区的车辆目标检测系 统,故采集实际交通道路中的车流图作为网络训 练的数据集,对于提高系统的实用性及准确性有 着十分重要的意义. 选用型号为 Canon EOS700D 的摄像机,数据采集地点位于青岛市福州北路及 重庆南路的两处过街天桥,摄像机的安装位置、角 度及高度均与交管部门安装的摄像头的方式相 似. 本文主要研究市区交通中 3 个具有代表性的 时段[25] ,分别为 8:00—9:00 为阻塞流(900<每小时 车流量≤1300)、9:00—10:00 为同步流(300<每小 时车流量≤600)、10:00—11:00 为自由流(每小时 车流量≤300). 为使训练样本保持多样性并减少冗余和训练 成本,采取将视频隔帧抽取的方法,根据不同密度 车流采取不同间隔帧数来优化训练样本,阻塞流 因车速最低故每 10 帧抽取一次,同步流每 5 帧抽 取一次,自由流则每 2 帧抽取一次,抽取数据采集 后的样本,如图 7~9 所示: 3.3 数据增强 在构建数据集的过程中,发现货车的样本数 牟 亮等: 基于梯度压缩的 YOLO v4 算法车型识别 · 5 ·
6 工程科学学报,第44卷,第X期 (a) (b) 1.0 10-3 0.050 -Before update -Before update After update 0.045 -e-After update 0.040 0.035 0.030 至025 04 0.020 0.015 620 0.010 0.005 0. 0.000 0 2000 2500 0 500 1000 1500 5101520253033404550 Epoch Epoch 1.000 0000900000060090600000064 (c) 0.998 Before update -e-After update 0.996 0.994 0.992 0.990 0.988 0.986 0.984 0.982 0.980 05101520253035404550 Epoch 图5学习率衰减策略及Loss、Accuracy图.(a)更新前后学习率衰减策略:(b)Loss图;(c)Accuracy图 Fig.5 learning rate decay strategy and Loss,Accuracy chart:(a)learning rate decay strategy before and after update;(b)Loss chart,(c)Accuracy chart (a) (b) (c) 图6市区中主要车型样本图.(a)小汽车:(b)公交车;(c)货车 Fig.6 Sample map of the main models in the urban area:(a)car;(b)bus;(c)truck (a) (d) 图7阻塞流车流样本.(a)福州北路1:(b)福州北路2:(c)重庆南路1:(d)重庆南路2 Fig.7 Traffic flow sample of blocked flow:(a)Fuzhou North Road 1;(b)Fuzhou North Road 2;(c)Chongqing South Road 1;(d)Chongqing South Road 2
0 5 10 15 20 25 30 35 40 45 50 Epoch 0.980 0.982 0.984 0.986 0.988 0.990 0.992 0.994 0.996 0.998 1.000 Accuracy 0 5 10 15 20 25 30 35 40 45 50 0.000 0.005 0.010 0.015 0.020 0.025 0.030 0.035 0.040 0.045 0.050 Loss Before update After update Before update After update (b) (c) Epoch 1.0 (a) ×10−3 0.9 0.8 Learning rate 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0 0 500 1000 Epoch 1500 2000 2500 Before update After update 图 5 学习率衰减策略及 Loss、Accuracy 图. (a)更新前后学习率衰减策略;(b)Loss 图; (c)Accuracy 图 Fig.5 learning rate decay strategy and Loss, Accuracy chart: (a) learning rate decay strategy before and after update; (b) Loss chart; (c) Accuracy chart (a) (b) (c) 图 6 市区中主要车型样本图. (a)小汽车;(b)公交车;(c)货车 Fig.6 Sample map of the main models in the urban area: (a) car; (b) bus; (c) truck (a) (b) (c) (d) 图 7 阻塞流车流样本. (a)福州北路 1;(b)福州北路 2;(c)重庆南路 1;(d)重庆南路 2 Fig.7 Traffic flow sample of blocked flow: (a) Fuzhou North Road 1; (b) Fuzhou North Road 2; (c) Chongqing South Road 1; (d) Chongqing South Road 2 · 6 · 工程科学学报,第 44 卷,第 X 期
牟亮等:基于梯度压缩的YOLO V4算法车型识别 7 (c) 图8同步流车流样本.(a)福州北路1:(b)福州北路2:(c)重庆南路1:(d)重庆南路2 Fig.8 Traffic flow sample of synchronous flow:(a)Fuzhou North Road 1;(b)Fuzhou North Road 2;(c)Chongqing South Road 1;(d)Chongqing South Road 2 (a) (b) (d) 图9自由流车流样本.(a)福州北路1:(b)福州北路2:(c)重庆南路1:(d)重庆南路2 Fig.9 Traffic flow sample of free flow:(a)Fuzhou North Road 1;(b)Fuzhou North Road 2;(c)Chongqing South Road 1;(d)Chongqing South Road 2 量较少,会造成因样本缺少而识别不准确,为解决 摄像头的角度上截取厢式货车3D场景下的图片 该问题,需对货车样本进行数据增强,在交管部门 作为训练的数据增强样本,部分如图10所示 (a) h 图10货车数据增强样本图.(a)样本1:(b)样本2:(c)样本3 Fig.10 Truck data enhancement sample diagram:(a)sample 1;(b)sample 2;(c)sample 3 3.4UA-DETRAC网络数据集 搭建的,硬件配置CPU为Intel(R)Core(TM)i7- UA-DETRAC车辆检测数据集是北京和天津 9700 CPU@3.00GHz,GPU NVIDIA GeForce RTX 地区中24个不同地点由交管部门摄像头拍摄的 2070 SUPER,8GB显存,CUDA核心数2560个,运 视频,以每秒25帧的拍摄速度录制,共超过14万 行内存为16GB,操作系统为Windows100 帧,手动标注了8250辆车.从中选取与市区道路 4.1模型训练 状况相似的1500张图片作为样本输入到训练网络 根据上文中提到的改进方式,分别组合来验 中,来提高训练样本的数量及多样性 证这些方法的有效性,记录其在训练过程中 L0ss的变化情况,为防止训练模型过拟合导致模 4试验验证及结果分析 型泛化能力差,采用Pytorch中的早停法(Early 本次实验的数据集包括自建的市区数据集 stopping),当训练达到收敛和权重更新小于一定的 2870张,UA-DETRAC网络数据集1500张,货车 阈值时,则停止训练,最大迭代次数设为2000次, 数据增强数据集200张,在训练模型的过程中用 每隔100代保存一次模型权重.训练过程的Loss 于训练与验证的图像随机按照90%和10%的比例 如图11所示 分开,用这个训练集来训练一个可以综合有效地 图11表示加入GC后的YOLO v4算法训练过 识别不同车流密度场景下车辆的模型.本文关于 程的Loss更加稳定,收敛更快并且平均的Loss值 YOLO v4的一系列算法均是在Pytorch1.2框架下 更低,在I950代左右达到early stopping的条件停
量较少,会造成因样本缺少而识别不准确,为解决 该问题,需对货车样本进行数据增强,在交管部门 摄像头的角度上截取厢式货车 3D 场景下的图片 作为训练的数据增强样本,部分如图 10 所示. (a) (b) (c) 图 10 货车数据增强样本图. (a)样本 1;(b)样本 2;(c)样本 3 Fig.10 Truck data enhancement sample diagram: (a) sample 1; (b) sample 2; (c) sample 3 3.4 UA-DETRAC 网络数据集 UA-DETRAC 车辆检测数据集是北京和天津 地区中 24 个不同地点由交管部门摄像头拍摄的 视频,以每秒 25 帧的拍摄速度录制,共超过 14 万 帧,手动标注了 8250 辆车. 从中选取与市区道路 状况相似的 1500 张图片作为样本输入到训练网络 中,来提高训练样本的数量及多样性. 4 试验验证及结果分析 本次实验的数据集包括自建的市区数据集 2870 张 ,UA−DETRAC 网络数据集 1500 张,货车 数据增强数据集 200 张,在训练模型的过程中用 于训练与验证的图像随机按照 90% 和 10% 的比例 分开,用这个训练集来训练一个可以综合有效地 识别不同车流密度场景下车辆的模型. 本文关于 YOLO v4 的一系列算法均是在 Pytorch 1.2 框架下 搭 建 的 , 硬 件 配 置 CPU 为 Intel(R) Core(TM) i7- 9700 CPU@3.00GHz,GPU 为 NVIDIA GeForce RTX 2070 SUPER,8 GB 显存,CUDA 核心数 2560 个,运 行内存为 16 GB,操作系统为 Windows10. 4.1 模型训练 根据上文中提到的改进方式,分别组合来验 证 这 些 方 法 的 有 效 性 , 记 录 其 在 训 练 过 程 中 Loss 的变化情况,为防止训练模型过拟合导致模 型泛化能力差 ,采 用 Pytorch 中的早停法 ( Early stopping),当训练达到收敛和权重更新小于一定的 阈值时,则停止训练,最大迭代次数设为 2000 次, 每隔 100 代保存一次模型权重. 训练过程的 Loss 如图 11 所示. 图 11 表示加入 GC 后的 YOLO v4 算法训练过 程的 Loss 更加稳定,收敛更快并且平均的 Loss 值 更低,在 1950 代左右达到 early stopping 的条件停 (a) (b) (c) (d) 图 8 同步流车流样本. (a)福州北路 1;(b)福州北路 2;(c)重庆南路 1;(d)重庆南路 2 Fig.8 Traffic flow sample of synchronous flow: (a) Fuzhou North Road 1; (b) Fuzhou North Road 2; (c) Chongqing South Road 1; (d) Chongqing South Road 2 (a) (b) (c) (d) 图 9 自由流车流样本. (a)福州北路 1;(b)福州北路 2;(c)重庆南路 1;(d)重庆南路 2 Fig.9 Traffic flow sample of free flow: (a) Fuzhou North Road 1; (b) Fuzhou North Road 2; (c) Chongqing South Road 1; (d) Chongqing South Road 2 牟 亮等: 基于梯度压缩的 YOLO v4 算法车型识别 · 7 ·
工程科学学报,第44卷,第X期 YOLO v4 GC CD 前的.图13~14为同步流与阻塞流测试样本的检 YOLOv4GC YOLO v4 CD 测,车辆数量的增加导致场景更加复杂,车辆遮挡 YOLO v4 情况严重,目标检测难度大大增加.YOLO v4GC o CD算法可以在相同的训练迭代次数中很好地学 习到模糊不清、远处的小目标和被遮挡车辆的特征 Ln wn 4.3车型识别的准确性分析 为分析训练后的模型对车型的识别性能,从 上述验证数据集中选取100张包含3种不同车流 密度的图片,车型包括小轿车2316辆,公交车 0200400600800100012001400160018002000 Epoch 172辆,货车108辆,分别绘制针对不同车型识别 图11各种算法训练的Loss曲线 的P-R曲线如图I5所示. Fig.11 Loss curves trained by various algorithms 从上图可知,YOLO V4GCCD算法的模型在识 止迭代.同时加入CD优化算法的学习率调整策 别小轿车和公交车时的平均精度(Average precision, AP)均大于原始算法的,由于加入货车的3D模型 略使得跳出局部最优的能力变强,L0ss值相对降 图使得两个算法都可以很好地学习到货车的特 低,在1900代左右时满足停止条件,得到的训练 征,从而两个算法模型的AP值相差不大 效果更优.接下来仅拿出YOLO v4与YOLO V4 4.4不同车流密度的准确性分析 GCCD训练得到的模型进行测试对比, 同上述实验方法类似,取100张不同车流密度 4.2试验验证及对比分析 下的图片输入到网络中进行检测,通过记录模型 为验证本文方法的泛化性能,分析不同交通 在检测过程中出现的错检的个数来分析两个模型 道路条件对检测结果的影响,在第二天拍摄同一 的准确性,其中错检个数是漏检和误检个数的总 地点同一时间段内的3种不同车流密度的数据作 和,实际个数是由人工计数得到的实际车辆数量, 为检测的样本,进行测试对比的模型均采用算法 正确检测的个数与实际个数的比值为准确率,两 在训练迭代1900次保存的模型,分别验证其在 个模型在不同车流密度上的准确率测试结果对比 3种不同车流密度场景下对车型的识别能力. 如表1所示 图12为自由流样本检测,自由流测试样本在 经实验验证,在检测时由于阻塞流具有复杂 相同时间内通过的车辆数较少,场景复杂度与检 的道路状况和严重的遮挡,检测难度较高.YOLO 测难度相对较低,两种算法检测的准确率都相对 V4GCCD在三种密度的车流中检测的准确率均优 较高,但改进后算法在整体的精确度上优于改进 于原始算法,在自由流的检测时较原始算法准确 (a (hi (c) ( 图12自由流样本检测对比.(a)YOL0v4在场景1的检测结果;(b)YOL0v4在场景2的检测结果:(c)YOL0v4在场景3的检测结果:(d) YOLO v4GCCD在场景1检测结果:(e)YOLO V4GCCD在场景2检测结果:(f)YOLO v4GCCD在场景3检测结果 Fig.12 Comparison of free flow sample detection:(a)detection results of YOLO v4 in scenario 1;(b)detection results of YOLO v4 in scenario 2;(c) detection results of YOLO v4 in scenario 3;(d)detection results of YOLO v4 GC CD in scenario 1;(e)detection results of YOLO v4 GC CD in scenario 2;(f)detection results of YOLO v4 GC CD in scenario 3
止迭代. 同时加入 CD 优化算法的学习率调整策 略使得跳出局部最优的能力变强,Loss 值相对降 低 ,在 1900 代左右时满足停止条件,得到的训练 效果更优. 接下来仅拿出 YOLO v4 与 YOLO v4 GC CD 训练得到的模型进行测试对比. 4.2 试验验证及对比分析 为验证本文方法的泛化性能,分析不同交通 道路条件对检测结果的影响,在第二天拍摄同一 地点同一时间段内的 3 种不同车流密度的数据作 为检测的样本,进行测试对比的模型均采用算法 在训练迭代 1900 次保存的模型,分别验证其在 3 种不同车流密度场景下对车型的识别能力. 图 12 为自由流样本检测,自由流测试样本在 相同时间内通过的车辆数较少,场景复杂度与检 测难度相对较低,两种算法检测的准确率都相对 较高,但改进后算法在整体的精确度上优于改进 前的. 图 13~14 为同步流与阻塞流测试样本的检 测,车辆数量的增加导致场景更加复杂,车辆遮挡 情况严重,目标检测难度大大增加. YOLO v4 GC CD 算法可以在相同的训练迭代次数中很好地学 习到模糊不清、远处的小目标和被遮挡车辆的特征. 4.3 车型识别的准确性分析 为分析训练后的模型对车型的识别性能,从 上述验证数据集中选取 100 张包含 3 种不同车流 密度的图片 ,车型包括小轿 车 2316 辆 ,公交 车 172 辆,货车 108 辆,分别绘制针对不同车型识别 的 P−R 曲线如图 15 所示. 从上图可知,YOLO v4 GC CD 算法的模型在识 别小轿车和公交车时的平均精度(Average precision, AP)均大于原始算法的,由于加入货车的 3D 模型 图使得两个算法都可以很好地学习到货车的特 征,从而两个算法模型的 AP 值相差不大. 4.4 不同车流密度的准确性分析 同上述实验方法类似,取 100 张不同车流密度 下的图片输入到网络中进行检测,通过记录模型 在检测过程中出现的错检的个数来分析两个模型 的准确性,其中错检个数是漏检和误检个数的总 和,实际个数是由人工计数得到的实际车辆数量, 正确检测的个数与实际个数的比值为准确率,两 个模型在不同车流密度上的准确率测试结果对比 如表 1 所示. 经实验验证,在检测时由于阻塞流具有复杂 的道路状况和严重的遮挡,检测难度较高. YOLO v4 GC CD 在三种密度的车流中检测的准确率均优 于原始算法,在自由流的检测时较原始算法准确 14 12 10 8 6 4 2 0 200 400 600 800 1000 Epoch YOLO v4 GC CD YOLO v4 GC YOLO v4 CD YOLO v4 Loss 1200 1400 1600 1800 2000 图 11 各种算法训练的 Loss 曲线 Fig.11 Loss curves trained by various algorithms (a) (b) (c) (d) (e) (f) 图 12 自由流样本检测对比. (a)YOLO v4 在场景 1 的检测结果;(b)YOLO v4 在场景 2 的检测结果;(c)YOLO v4 在场景 3 的检测结果;(d) YOLO v4 GC CD 在场景 1 检测结果;(e)YOLO v4 GC CD 在场景 2 检测结果;(f)YOLO v4 GC CD 在场景 3 检测结果 Fig.12 Comparison of free flow sample detection: (a) detection results of YOLO v4 in scenario 1; (b) detection results of YOLO v4 in scenario 2; (c) detection results of YOLO v4 in scenario 3; (d) detection results of YOLO v4 GC CD in scenario 1; (e) detection results of YOLO v4 GC CD in scenario 2; (f) detection results of YOLO v4 GC CD in scenario 3 · 8 · 工程科学学报,第 44 卷,第 X 期
牟亮等:基于梯度压缩的YOLO V4算法车型识别 9 h) (c) (d) e (f) 图13同步流样本检测结果对比.(a)YOLO V4在场景1的检测结果:(b)YOLO V4在场景2的检测结果:(c)YOLO v4在场景3的检测结果:(d) YOLO V4GCCD在场景1检测结果:(e)YOLO V4GCCD在场景2检测结果:(f)YOLO V4GCCD在场景3检测结果 Fig.13 Comparison of synchronous flow sample detection:(a)detection results of YOLO v4 in scenario 1:(b)detection results of YOLO v4 in scenario 2;(c)detection results of YOLO v4 in scenario 3;(d)detection results of YOLO v4 GC CD in scenario 1;(e)detection results of YOLO v4 GC CD in scenario 2;(f)detection results of YOLO v4 GC CD in scenario 3 (b) d el (f0 图14阻塞流样本检测结果对比.(a)YOLO v4在场景1的检测结果:(b)YOL0v4在场景2的检测结果:(c)YOLO V4在场景3的检测结果:(d) YOLO V4GCCD在场景1检测结果:(e)YOLO v4GCCD在场景2检测结果:(f)YOLO V4GCCD在场景3检测结果 Fig.14 Comparison of blocked flow sample detection:(a)detection results of YOLO v4 in scenario 1;(b)detection results of YOLO v4 in scenario 2;(c) detection results of YOLO v4 in scenario 3;(d)detection results of YOLO v4 GC CD in scenario 1:(e)detection results of YOLO v4 GC CD in scenario 2;(f)detection results of YOLO V4 GC CD in scenario 3 1.00 1.00 1.00 (b) 0.98 (a) 0.95 (c) 0.95 0.96 0.90 0.85 0.90 080 0.80 0.88 0.65 0.75 0.60 0.86 0.55 0.70 0.8 0.00.10.20.30.40.50.60.70.80.91.0 0.50.0010.20.30.40.50.60.70.80.91.0 0.66.00.1020.30.40.50.60.70.80.91.0 Kecall Recall Recall 图15针对不同车型的P-R曲线.(a)小汽车:(b)公交车:(c)货车 Fig.15 P-R curves for different models:(a)car,(b)bus;(c)truck
(a) (b) (c) (d) (e) (f) 图 13 同步流样本检测结果对比. (a)YOLO v4 在场景 1 的检测结果;(b)YOLO v4 在场景 2 的检测结果;(c)YOLO v4 在场景 3 的检测结果;(d) YOLO v4 GC CD 在场景 1 检测结果;(e)YOLO v4 GC CD 在场景 2 检测结果;(f)YOLO v4 GC CD 在场景 3 检测结果 Fig.13 Comparison of synchronous flow sample detection: (a) detection results of YOLO v4 in scenario 1; (b) detection results of YOLO v4 in scenario 2; (c) detection results of YOLO v4 in scenario 3; (d) detection results of YOLO v4 GC CD in scenario 1; (e) detection results of YOLO v4 GC CD in scenario 2; (f) detection results of YOLO v4 GC CD in scenario 3 (a) (b) (c) (d) (e) (f) 图 14 阻塞流样本检测结果对比. (a)YOLO v4 在场景 1 的检测结果;(b)YOLO v4 在场景 2 的检测结果;(c)YOLO v4 在场景 3 的检测结果;(d) YOLO v4 GC CD 在场景 1 检测结果;(e)YOLO v4 GC CD 在场景 2 检测结果;(f)YOLO v4 GC CD 在场景 3 检测结果 Fig.14 Comparison of blocked flow sample detection: (a) detection results of YOLO v4 in scenario 1; (b) detection results of YOLO v4 in scenario 2; (c) detection results of YOLO v4 in scenario 3; (d) detection results of YOLO v4 GC CD in scenario 1; (e) detection results of YOLO v4 GC CD in scenario 2; (f) detection results of YOLO V4 GC CD in scenario 3 1.00 (a) 0.98 0.96 0.94 0.92 0.90 0.88 0.86 0.84 0.0 0.1 0.2 Precision Recall 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Precision Recall (b) 1.00 0.95 0.90 0.85 0.80 0.75 0.70 0.65 0.60 0.55 0.500.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Precision Recall (c) 1.00 0.90 0.85 0.80 0.75 0.70 0.65 0.95 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 YOLO v4 GC CD YOLO v4 YOLO v4 GC CD YOLO v4 YOLO v4 GC CD YOLO v4 图 15 针对不同车型的 P−R 曲线. (a)小汽车;(b)公交车;(c)货车 Fig.15 P−R curves for different models: (a) car; (b) bus; (c) truck 牟 亮等: 基于梯度压缩的 YOLO v4 算法车型识别 · 9 ·