网刊加载中。。。

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读

两类YOLOv4-tiny简化网络及其裂缝检测性能比较  PDF

  • 宋立博 1
  • 费燕琼 2
1. 上海交通大学 学生创新中心,上海 200240; 2. 上海交通大学 机械与动力工程学院,上海 200240

中图分类号: TP391.4

最近更新:2022-02-16

DOI:10.11908/j.issn.0253-374x.21095

  • 全文
  • 图表
  • 参考文献
  • 作者
  • 出版信息
EN
目录contents

摘要

面向国内高大建筑物裂缝检测市场实际需求,考虑现有YOLOv4-tiny深度网络结构在树莓派等边缘设备上运行速度慢的缺点,使用去除第二层残差网络、增加一个maxpool池化层及改变最后一个route层连接的方法生成YOLOv4-lite1和YOLOv4-lite2两种新的简化版YOLOv4-tiny深度网络结构。使用从百度上搜索的裂缝图片生成裂缝检测的训练集、测试集和验证集数据,在Ubuntu16.04系统上使用Darknet深度学习框架进行了训练。同时,在树莓派4B上进行的实际测试表明,YOLOv4-lite1具有更快运行速度、检出率和稳定性。该研究创新点在于进一步精简了YOLOv4-tiny网络结构和最后一层route层的连接,从而获得两种新YOLOv4-tiny深度网络结构形式和较佳检测效果。

随着芯片计算能力的快速提高及深度网络技术的成熟,以深度学习为基础的机器智能时代已经来临。Tensorflow、MXNet、Pytorch和Caffe等开源深度网络尤其是高效的Darknet深度网络的推出,更促进智能技术在语音识

1-2、人脸及姿态识3-5、电力设备及设6-7、零件质量及缺陷检8-9、轮廓检10、垃圾回11及农业相12-13等领域成功工程应用的同时,也成为国内外学术机构的研究热点之一。

实际工程应用证实了深度网络实现的机器智能的高效性。但这些深度网络普遍运行在Python软件上,普遍存在硬件要求高、环境依赖项多、搭建难度大及对使用者有一定编程基础要求等的缺点。由于算力限制,深度网络在树莓派等边缘设备上运行速度更慢,从而限制了其在移动机器人领域的工程应用。本文以上海交通大学研发的裂缝检测机器人为例,研究简化YOLOv4-tiny网络及在树莓派上实现裂缝智能检测的方法和技术。

1 Darknet网络及YOLOv4-tiny深度网络结构

目标检测是深度网络及其算法的主要应用领域之一。传统上,物体检测有两阶段(two-stages)和一阶段(one-stage)两种方法。其中,基于候选区域(Region Proposal)的R-CNN,Fast R-CNN, Faster R-CNN等R-CNN系算

14就是典型的两阶段方法,其特点是先通过启发式方法或卷积神经网络(convolutional neural network,CNN)产生一系列候选框,再对这些候选框进行分类与回归。而一阶段方法则是采用不同尺度和长宽比在图片不同位置均匀采样,利用卷积CNN提取特征后直接进行分类与回归,将候选框产生与分类过程合二为一,典型的有单发多窗检测器(single shot multibox detector,SSD15-16和YOLO(you only look once)两种算法。相比较而言,一阶段方法速度较快、准确度稍低且训练较为困难。

YOLO算法建立在华盛顿大学Redmon J.团队推出的Darknet深度网络框架基础之上,采用C语言和CUDA编写,无依赖,速度快,可在Windows及Linux等系统及CPU和GPU等多种硬件上快速编译和运行。2020年4月,Bochkovskiy

17在考虑了边框重合度、中心距离和宽高比等尺度信息的完全交并比 (complete-intersection-over-union,CIoU)损失函数等基础上推出YOLOv4算法,Mosaic数据增广、DropBlock正则化等数据增强方法的应用使其在MS COCO数据集上的平均精度均值 (mean average precision,mAP)提升至43.5 % ,性能较其他版本YOLO算法有了很大提升。

YOLOv4具有162层网络结构,使用三个特征层进行分类。回归预测骨干网络采用CSPDarknet53,以空间金字塔池化(spatial pyramid pooling,SPP)和PANet为脖颈(Neck)的附加模块和特征融合模块。相对于一般PC和树莓派等算力较弱的计算设备,YOLOv4运行速度较慢,训练和检测时间较长。2020年6月,Bochkovskiy团

18在YOLOv4网络结构基础之上,推出只有38层结构的简化版YOLOv4,称为YOLOv4 -tiny。与YOLOv4相比,YOLOv4-tiny在主干特征提取网络、脖颈和头部(head)等方面均做了极大简化。YOLOv4-tiny主干特征提取网络采用CSPDarknet53-tiny,一般以416×416×3图像为输入。

2 简化版YOLOv4-tiny网络结构

在树莓派等边缘设备上运行时,38层网络结构的YOLOv4-tiny速度依然较慢,简化后再加速就是可能的技术途径了。学术界以YOLOv4系列算法为基础进行了改进,主要手段有如下几种。

(1)数据增强。结合采用Mosaic和CutMix等多种数据增强方法和策略,解决单类检测和小目标检测时正负样本不平衡问题,使用小样本构建具有多种数据特征的数据

19

(2)改进特征融合。结合低层信息丰富特征提取网络层次结构,使用多尺度融合及使用损失函数加权来约束权重和偏置以提高特征利用率。同时,使用CIoU等作为边框回归损失函数加快模型收敛速

20

(3)改动网络特征层数量。通过删减或增加网络中相关的特征提取层,以实现网络改

21-22

(4)改进特征提取网络。这是简化结构并提高性能的主要技术手段,主要方法有使用GhostNet

23、逆残差组件(Inverted Residual Unit24及将MobileNetV3作为主干特征提取网25,再结合特征融合层引入跨阶段部分网络(cross stage partial network,CSP)结构、融合卷积层和BN(batch normalization)层的方法或软性非极大值抑制(soft DIoU-non-maximum suppression, Soft-DIoU-NMS)等算法或K-means聚类方法优化锚框选取以提高网络检测能力。

除删减特征提取层外,文献[

19-25]所述简化方法依然没有显著减少CPU计算量及提高在树莓派上部署的可能性。本文采用的技术方法是删减一个用于特征提取的残差网络结构及改变最后一个route层连接的方法,在保证网络参数不变的条件下实现目标特征的尽早前向传播。其算法如图1所示。

图1 改进YOLOv4-tiny 网络结构

Fig. 1 Improved network structure of YOLOv4-tiny

由此可见,改进YOLOv4-tiny算法主要在于残差网络层的删减及特征的后向传递与route层连接。作为比较,本文设计了两种简化形式。

2.1 YOLOv4-lite1网络结构

YOLOv4-lite1网络结构是第一种简化形式。与标准YOLOv4-tiny相比,YOLOv4-lite1网络有如下几个特点:①去除了第二个残差网络结构,仅使用两个残差网络进行特征提取;②在第10层conv卷积层和第11层conv卷积层之间增加了一个maxpool池化层以匹配原第三个残差网络结构的输入;③最后一层route层与新结构中的第12层conv卷积层相连,新网络具有33层结构,未改变标准YOLOv4-tiny双YOLO头输出形式。

采用netron工具表示的YOLOv4-lite1网络结构(部分)如图2所示,虚线内结构为YOLOv4-lite1网络最大变化。最大变化之一是在原第三层残差网络之前增加一个maxpool池化层在降维的同时减少运算量,第二个变化是第一层残差网络前向传播后再上采样与第一个YOLO输出融合,以用于较小裂缝检测。

图2 YOLOv4-lite1网络结构

Fig. 2 Structure of YOLOv4-lite1

2.2 YOLOv4-lite2网络结构

与YOLOv4-lite1相比,YOLOv4-lite2网络最后一个route层连接的是第17层,其余与YOLOv4-lite1网络相同。去除与图2a相同部分,其余部分结构如图3所示。

图3 YOLOv4-lite2网络结构 (部分)

Fig. 3 Structure of YOLOv4-lite2 (part)

由此可见,除最后一个route层连接外,YOLOv4-lite1和YOLOv4-lite2网络是完全类似的。

3 深度网络学习及训练

3.1 数据集准备

因未能获取待测建筑物的实际裂缝图片,以“裂缝”为关键词在百度上使用Python爬虫程序下载了166张网络照片,街拍200余张裂缝图片。将图片分为大裂缝、小裂缝、斑驳裂缝和表面脱落等4种类型后,使用imagemagick软件将其裁剪为416×416的标准尺寸照片,再经旋转、镜像和曝光度调整等处理得到800余张有效照片数据集,严格按照Pascal VOC格式和目录组织。使用官配Python软件按7:2:1比例随机分为训练集、测试集和验证集。

3.2 编译GPU版本Darknet

https://github.com上下载了AlexeyAB版本的Darknet深度框架源代码,修改后以输出预测框中心坐标、置信度、类别统计、各类别物体数量及检测物体总计数等。在64位Ubuntu16.04环境下结合MX150显卡对应的CUDA编译生成GPU版本Darknet可执行文件。

3.3 训练

分别按照如图2图3所示简化版YOLOv4-tiny网络,修改YOLOv4-tiny.cfg配置文件,保存间隔burn_in和学习率learning_rate等采用默认参数,未调整其他参数。

无预训练权重文件的训练命令为:

./darknet detector train cfg/voc.data cfg/YOLOv4-tiny.cfg

至第10 000个迭代周期终止,分别得到YOLOv4-lite1_1000.weights,YOLOv4-lite1_2000.weights等10个权重文件及YOLOv4-lite2_1000.weights,YOLOv4-lite2_2000.weights等10个权重文件。

4 部署及实验

4.1 部署

为验证裂缝检测功能,作者将经NNpack深度网络工具包加速的AlexeyAB版Darknet部署在树莓派4B上,使用make all指令编译后生成./darknet可执行文件。将相关.cfg配置文件和.weights权重文件拷贝至MicroSD卡相关目录内,即完成裂缝智能检测系统在树莓派4B边缘设备上的部署。

4.2 实验

在树莓派4B上分别使用2 000、4 000、6 000和8 000次迭代周期生成的weights权重文件及YOLOv4-lite1及YOLOv4-lite2网络进行了验证。4个图片文件在验证集和测试集中随机抽选,采用默认thresh阈值时实验结果如图4~图7所示。其中, 图4~图7的分图a 为YOLOv4-lite1实验结果,b为YOLOv4-lite2实验结果,c为标准YOLOv4-tiny实验结果。

图4 2 000次迭代周期生成的weights权重文件实验结果

Fig. 4 Experiment results of the 2000-epoch weights file

图5 4 000次迭代周期生成的weights权重文件实验结果

Fig. 5 Experiment results of the 4000-epoch weights file

图6 6 000次迭代周期生成的weights权重文件实验结果

Fig. 6 Experiment results of the 6000-epoch weights file

图7 8 000次迭代周期生成的weights权重文件实验结果

Fig. 7 Experiment results of the 8000-epoch weights file

此时,各测试图片使用YOLOv4-lite1、YOLOv4-lite2和YOLOv4-tiny算法的检测时间和平均精度均值mAP如表1所示。其中,lite1、lite2及tiny分别表示YOLOv4-lite1、YOLOv4-lite2和YOLOv4-tiny算法。

表1 各测试图片检测时间表
Tab. 1 Detection time of different weights files and pictures ( ms )
迭代周期图片1图片2平均精度均值mAP/%
lite1lite2tinylite1lite2tinylite1lite2tiny
2 000 648.7 620.16 659.96 608.03 624.88 667.05 20.11 5.08 11.43
4 000 626.88 628.82 653.75 615.01 624.19 659.75 23.48 17.06 18.68
6 000 621.91 631.74 681.28 616.99 634.48 653.01 25.89 33.42 30.6
8 000 656.86 633.38 663.41 620.43 630.69 653.72 26.4 33.67 32.33

相应的,各图片裂缝检出数量如表2所示,“+”后面的数字为重复检测或误检数量。

表2 各测试图片检出数量对比表
Tab. 2 Detection number of different weights files and pictures
迭代周期图片1图片2
lite1lite2tinylite1lite2tiny
2 000 2 3 3 3 3+1 3+1
4 000 6+1 6+2 7+1 4 4+1 2
6 000 6+1 7+1 7+1 4 3+1 2
8 000 7 7+1 7+1 4 4+1 2

分析如上数据,可得如下结论:

(1)因残差网络结构相同而route层连接靠前,在较低迭代周期时YOLOv4-lite1网络平均精度均值mAP高于YOLOv4-lite2和YOLOv4-tiny网络,其置信度相对较高;而随着训练的进行,较高迭代周期时YOLOv4-lite2网络平均精度均值将高于YOLOv4-lite1和YOLOv4-tiny网络;

(2)两者权重文件均为23.7 M,一般情况下YOLOv4-lite1平均运行速度比YOLOv4- lite2快 0.86%。二者速度并无本质差别,但均高于YOLOv4-tiny网络;

(3)以2 000次迭代周期为例,在较少迭代周期时YOLOv4-lite1的裂缝检出率较YOLOv4-lite2高约22%;超过4 000个迭代周期后YOLOv4-tiny网络和YOLOv4-lite2网络因过拟合出现大量重复检测,而YOLOv4 -lite1网络因较为稳定的平均精度均值表现稳定且效果最好。这就是说,平均精度均值与检测效果并无必然关系,但过拟合将影响实际检测效果。

需说明的是,裂缝检测数据集较少,训练均不太充分,网络参数也未经完全优化。综合来讲,在使用图例图片检测时YOLOv4-lite1网络较YOLOv4-tiny网络和YOLOv4-lite2网络效果佳,虽然其平均精度均值较YOLOv4-lite2小。进一步的分析、训练和测试表明,增加网络的批量数batch和批次数subdivision参数确实能在一定程度上提高平均精度均值。例如,YOLOv4-lite1网络在batch=32和subdivision=4及batch=16和subdivision=2时,其平均精度分别如表3所示。

表3 不同参数的平均精度均值对比
Tab. 3 Comparision of mAP with different parameters
平均精度均值mAP/%
1 000 2 000 3 000 4 000 5 000 6 000 7 000 8 000
batch=32,subdivision=4 10.22 20.11 23.90 23.48 27.39 25.89 26.98 26.40
batch=16,subdivision=2 3.32 7.97 10.29 20.61 20.03 21.82 18.79 17.97

但在网络滤波因子filter等参数变化的情况下,表3所示结论未必成立。例如,某网络在batch=16和subdivision=2条件下,在迭代周期分别为6 000、7 000和8 000时,其平均精度均值为26.25、24.71和28.91; batch=32和subdivision=4条件下,在迭代周期为6 000、7 000和8 000时,其平均精度均值分别为24.16、24.51和24.58,平均精度均值mAP反而有所降低。

5 结语

在标准YOLOv4-tiny网络结构基础上,简化出两种YOLOv4-lite新网络结构。以裂缝检测为例,训练后在树莓派4B上进行了实际检测实验。结果表明,YOLOv4-lite1较YOLOv4-tiny和YOLOv4-lite2有更好的检出效果、稳定性和更快的运行速度。下一步作者将建立实际的远程图像采集和传输系统,并在裂缝检测机器人上进行实际测试。同时,采集更多实际裂缝图像扩大图像集数量和类型,进一步提高实际检测效果。

作者贡献声明

宋立博:设计YOLOv4-lite1比YOLOv4-lite2新网络结构,训练网络并进行测试。

费燕琼:网络上下载裂缝图片,处理并形成裂缝数据集。

参考文献

1

蔡青竹.基于人工智能的语音识别分析[J].集成电路应用2020379): 6. [百度学术

CAI Qingzhu. Speech recognition based on artificial intelligence[J].Application of IC2020379): 6. [百度学术

2

房爱东张志伟崔琳.基于人工智能的语音识别系统及应用研究[J].宿州学院学报2019348): 62. [百度学术

FANG AidongZHANG ZhiweiCUI Linet al. Research on speech recognition system based on artificial intelligence and its application[J].Journal of Suzhou University2019348): 62. [百度学术

3

傅山王嘉义宁华. 基于人工智能的人脸识别技术与评估体系研究[J].信息通信技术与政策2021474):71. [百度学术

FU ShanWANG JiayiNING Huaet al. Research on Face Recognition technology and evaluation system based on AI[J]. Information and Communications Technology and Policy2021474):71. [百度学术

4

冯文宇朱洪堃殷佳炜. 无人CT智能姿态识别算法研究[J]. 仪器仪表学报2020418):188. [百度学术

FENG WenyuZHU HhongkunYIN Jiaweiet al. Research on intelligent posture recognition algorithm of unmanned CT[J].Chinese Journal of Scientific Instrument2020418):188. [百度学术

5

张欣齐华.基于YOLOv4的人体异常行为检测算法研究[J].计算机与数字工程2021494):791. [百度学术

ZHANG XinQI Hua. Research on human abnormal behavior detection algorithm based on YOLOv4[J].Computer & Digital Engineering2021494):791. [百度学术

6

王曼然. 基于红外热像图的变电设备故障检测与识别研究[D].恩施湖北民族大学2020. [百度学术

WANG Manran.Study of substation equipment fault detection and recognition based on infrared thermal image[D].EnshiHubei Minzu University2020. [百度学术

7

孙兴达郝赫刘远.YOLOv4在电力巡检目标检测中的应用[J]. 现代信息科技2020420):115. [百度学术

SUN XingdaHAO HeLIU Yuanet al. Application of YOLOv4 in power inspection target detection[J]. Modern Information Technology2020420):115. [百度学术

8

袁纵青.基于机器视觉的汽车零部件字符检测系统设计与实现[D].徐州中国矿业大学2020. [百度学术

YUAN Zongqing. Design and implementation of character detection system for auto parts based on machine vision[D]. XuzhouChina University of Mining and Technology2020. [百度学术

9

唐小煜黄进波冯洁文.基于U-net和YOLOv4的绝缘子图像分割与缺陷检测[J].华南师范大学学报(自然科学版)2020526):15. [百度学术

TANG XiaoyuHUANG JinboFENG Jiewenet al. Image segmentation and defect detection of insulators based on U-net and YOLOv4[J].Journal of South China Normal University(Natural Science Edition)2020526):15. [百度学术

10

张明琦范影乐武薇. 基于初级视通路视觉感知机制的轮廓检测方法[J].自动化学报2020462):264. [百度学术

ZHANG MingqiFAN YingleWU Wei. A contour detection method based on visual perception mechanism in primary visual pathway[J].Acta Automatica Sinica2020462):264. [百度学术

11

王伟杰姚建涛张敏燕.基于YOLOV4的智能垃圾分类回收机器人[J].智能计算机与应用20201011):182. [百度学术

WANG WeijieYAO JiantaoZHANG Minyanet al. Intelligent garbage sorting and recycling robot based on YOLOV4[J].Intelligent Computer and Applications20201011):182. [百度学术

12

王淑青黄剑锋张鹏飞.基于YOLOv4神经网络的小龙虾质量检测方法[J].食品与机械2021373):120. [百度学术

WANG ShuqingHUANG JianfengZHANG Pengfeiet al.Crayfish quality detection method based on YOLOv4[J].Food & Machinery2021373):120. [百度学术

13

席芮姜凯张万枝.基于改进Faster R-CNN的马铃薯芽眼识别方法[J].农业机械学报2020514):216. [百度学术

XI RuiJIANG KaiZHANG Wanzhiet al.Recognition method for potato buds based on improved faster R-CNN[J]. Transactions of the Chinese Society for Agricultural Machinery2020514):216. [百度学术

14

钟嘉俊贺德强苗剑.基于改进Faster R-CNN的地铁车辆焊缝缺陷检测[J].铁道科学与工程学报2020174):996. [百度学术

ZHONG JiajunHE DeqiangMIAO Jianet al.Weld defect detection of metro vehicle based on improved faster R-CNN[J]. [百度学术

Journal of Railway Science and Engineering2020174):996. [百度学术

15

张骏朱标吉涛.基于MobileNet-SSD的红外人脸检测算法[J].激光与红外2021511):107. [百度学术

ZHANG JunZHU BiaoJI Tao.Infrared face detection algorithm based on MobileNet-SSD[J].Laser & Infrared2021511):107. [百度学术

16

王焕民张建柏裴华艳.基于MobileNet-SSD的铁路信号灯检测识别[J].兰州交通大学学报2020394):66. [百度学术

WANG HuanminZHANG JianbaiPEI Huayanet al.Research on railway signal lamp detection based on mobileNet-SSD[J].Journal of Lanzhou Jiaotong University2020394):66. [百度学术

17

Bochkovskiy AWAND C YLIAO H Y M.YOLOv4: Optimal speed and accuracy of object detection [EB/OL]. [2020-04-23].https://arxiv.org/abs/2004.10934. [百度学术

18

WAND C YBOCHKOVSKIY ALIAO H Y M.Scaled-YOLOv4: Scaling cross stage partial network [EB/OL]. [2020-11-16].https://arxiv.org/abs/2011.08036. [百度学术

19

万卓叶明刘凯.基于改进YOLOv4的电机端盖缺陷检测[J].计算机系统应用2021303):79. [百度学术

WAN ZhuoYE MingLIU Kai.Defect detection of motor cover based on improved YOLOv4[J].Computer Systems & Applications2021303):79. [百度学术

20

王兵乐红霞李文璟.改进YOLO轻量化网络的口罩检测算法[J].计算机工程与应用2021578):62. [百度学术

WANG BingLE HongxiaLI Wenjinget al.Mask detection algorithm based on improved YOLO lightweight network[J]. [百度学术

Computer Engineering and Applications2021578):62. [百度学术

21

解尧婷张丕状.基于改进的YOLOv4输电线路小目标检测[J].国外电子测量技术2021402):47. [百度学术

XIE YaotingZHANG Pizhuang.Small target detection of transmission line based on improved YOLOv4[J].Foreign Electronic Measurement Technology2021402):47. [百度学术

22

王昕寇云峰辛浪.手机拍摄行为智能识别优化研究[J].通信技术2021541):244. [百度学术

WANG XinKOU YunfengXIN Langet al. Intelligent recognition and optimization of mobile phone photography[J]. [百度学术

Communications Technology2021541):244. [百度学术

23

符惠桐王鹏李晓艳.面向移动目标识别的轻量化网络模型[J].西安交通大学学报2021557):124. [百度学术

FU HuitongWANG PengLI Xiaoyanet al. Lightweight network model for moving object recognition[J].Journal of Xi'an Jiaotong University2021557):124. [百度学术

24

蔡舒平孙仲鸣刘慧. 基于改进型YOLOv4的果园障碍物实时检测方法[J].农业工程学报2021372):36. [百度学术

CAI ShupingSUN ZhongmingLIU Huiet al. Real-time detection methodology for obstacles in orchards using improved [百度学术

YOLOv4[J].Transactions of the Chinese Society of Agricultural Engineering, 2021,372):36. [百度学术

25

张凯罗欣孙志刚.基于轻量化YOLOv4的发电机定子表面缺陷检测算法[J].计算机与数字工程2021494):686. [百度学术

ZHANG KaiLUO XinSUN Zhiganget al.Generator stator surface defect detection algorithm based on lightweight YOLOv4[J].Computer & Digital Engineering2021494):686. [百度学术