摘要
面向国内高大建筑物裂缝检测市场实际需求,考虑现有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深度网络的推出,更促进智能技术在语音识
实际工程应用证实了深度网络实现的机器智能的高效性。但这些深度网络普遍运行在Python软件上,普遍存在硬件要求高、环境依赖项多、搭建难度大及对使用者有一定编程基础要求等的缺点。由于算力限制,深度网络在树莓派等边缘设备上运行速度更慢,从而限制了其在移动机器人领域的工程应用。本文以上海交通大学研发的裂缝检测机器人为例,研究简化YOLOv4-tiny网络及在树莓派上实现裂缝智能检测的方法和技术。
目标检测是深度网络及其算法的主要应用领域之一。传统上,物体检测有两阶段(two-stages)和一阶段(one-stage)两种方法。其中,基于候选区域(Region Proposal)的R-CNN,Fast R-CNN, Faster R-CNN等R-CNN系算
YOLO算法建立在华盛顿大学Redmon J.团队推出的Darknet深度网络框架基础之上,采用C语言和CUDA编写,无依赖,速度快,可在Windows及Linux等系统及CPU和GPU等多种硬件上快速编译和运行。2020年4月,Bochkovskiy
YOLOv4具有162层网络结构,使用三个特征层进行分类。回归预测骨干网络采用CSPDarknet53,以空间金字塔池化(spatial pyramid pooling,SPP)和PANet为脖颈(Neck)的附加模块和特征融合模块。相对于一般PC和树莓派等算力较弱的计算设备,YOLOv4运行速度较慢,训练和检测时间较长。2020年6月,Bochkovskiy团
在树莓派等边缘设备上运行时,38层网络结构的YOLOv4-tiny速度依然较慢,简化后再加速就是可能的技术途径了。学术界以YOLOv4系列算法为基础进行了改进,主要手段有如下几种。
(1)数据增强。结合采用Mosaic和CutMix等多种数据增强方法和策略,解决单类检测和小目标检测时正负样本不平衡问题,使用小样本构建具有多种数据特征的数据
(2)改进特征融合。结合低层信息丰富特征提取网络层次结构,使用多尺度融合及使用损失函数加权来约束权重和偏置以提高特征利用率。同时,使用CIoU等作为边框回归损失函数加快模型收敛速
(3)改动网络特征层数量。通过删减或增加网络中相关的特征提取层,以实现网络改
(4)改进特征提取网络。这是简化结构并提高性能的主要技术手段,主要方法有使用GhostNe
除删减特征提取层外,文献[

图1 改进YOLOv4-tiny 网络结构
Fig. 1 Improved network structure of YOLOv4-tiny
由此可见,改进YOLOv4-tiny算法主要在于残差网络层的删减及特征的后向传递与route层连接。作为比较,本文设计了两种简化形式。
YOLOv4-lite1网络结构是第一种简化形式。与标准YOLOv4-tiny相比,YOLOv4-lite1网络有如下几个特点:①去除了第二个残差网络结构,仅使用两个残差网络进行特征提取;②在第10层conv卷积层和第11层conv卷积层之间增加了一个maxpool池化层以匹配原第三个残差网络结构的输入;③最后一层route层与新结构中的第12层conv卷积层相连,新网络具有33层结构,未改变标准YOLOv4-tiny双YOLO头输出形式。
采用netron工具表示的YOLOv4-lite1网络结构(部分)如

图2 YOLOv4-lite1网络结构
Fig. 2 Structure of YOLOv4-lite1
因未能获取待测建筑物的实际裂缝图片,以“裂缝”为关键词在百度上使用Python爬虫程序下载了166张网络照片,街拍200余张裂缝图片。将图片分为大裂缝、小裂缝、斑驳裂缝和表面脱落等4种类型后,使用imagemagick软件将其裁剪为416×416的标准尺寸照片,再经旋转、镜像和曝光度调整等处理得到800余张有效照片数据集,严格按照Pascal VOC格式和目录组织。使用官配Python软件按7:2:1比例随机分为训练集、测试集和验证集。
从https://github.com上下载了AlexeyAB版本的Darknet深度框架源代码,修改后以输出预测框中心坐标、置信度、类别统计、各类别物体数量及检测物体总计数等。在64位Ubuntu16.04环境下结合MX150显卡对应的CUDA编译生成GPU版本Darknet可执行文件。
分别按照如
无预训练权重文件的训练命令为:
./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个权重文件。
为验证裂缝检测功能,作者将经NNpack深度网络工具包加速的AlexeyAB版Darknet部署在树莓派4B上,使用make all指令编译后生成./darknet可执行文件。将相关.cfg配置文件和.weights权重文件拷贝至MicroSD卡相关目录内,即完成裂缝智能检测系统在树莓派4B边缘设备上的部署。
在树莓派4B上分别使用2 000、4 000、6 000和8 000次迭代周期生成的weights权重文件及YOLOv4-lite1及YOLOv4-lite2网络进行了验证。4个图片文件在验证集和测试集中随机抽选,采用默认thresh阈值时实验结果如

图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)因残差网络结构相同而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时,其平均精度分别如
但在网络滤波因子filter等参数变化的情况下,
在标准YOLOv4-tiny网络结构基础上,简化出两种YOLOv4-lite新网络结构。以裂缝检测为例,训练后在树莓派4B上进行了实际检测实验。结果表明,YOLOv4-lite1较YOLOv4-tiny和YOLOv4-lite2有更好的检出效果、稳定性和更快的运行速度。下一步作者将建立实际的远程图像采集和传输系统,并在裂缝检测机器人上进行实际测试。同时,采集更多实际裂缝图像扩大图像集数量和类型,进一步提高实际检测效果。
作者贡献声明
宋立博:设计YOLOv4-lite1比YOLOv4-lite2新网络结构,训练网络并进行测试。
费燕琼:网络上下载裂缝图片,处理并形成裂缝数据集。
参考文献
蔡青竹.基于人工智能的语音识别分析[J].集成电路应用,2020,37(9): 6. [百度学术]
CAI Qingzhu. Speech recognition based on artificial intelligence[J].Application of IC, 2020, 37(9): 6. [百度学术]
房爱东,张志伟,崔琳,等.基于人工智能的语音识别系统及应用研究[J].宿州学院学报,2019,34(8): 62. [百度学术]
FANG Aidong, ZHANG Zhiwei, CUI Lin,et al. Research on speech recognition system based on artificial intelligence and its application[J].Journal of Suzhou University, 2019,34(8): 62. [百度学术]
傅山,王嘉义,宁华,等. 基于人工智能的人脸识别技术与评估体系研究[J].信息通信技术与政策,2021,47(4):71. [百度学术]
FU Shan, WANG Jiayi, NING Hua, et al. Research on Face Recognition technology and evaluation system based on AI[J]. Information and Communications Technology and Policy, 2021,47(4):71. [百度学术]
冯文宇,朱洪堃,殷佳炜,等. 无人CT智能姿态识别算法研究[J]. 仪器仪表学报, 2020,41(8):188. [百度学术]
FENG Wenyu, ZHU Hhongkun, YIN Jiawei, et al. Research on intelligent posture recognition algorithm of unmanned CT[J].Chinese Journal of Scientific Instrument, 2020, 41(8):188. [百度学术]
张欣,齐华.基于YOLOv4的人体异常行为检测算法研究[J].计算机与数字工程,2021,49(4):791. [百度学术]
ZHANG Xin, QI Hua. Research on human abnormal behavior detection algorithm based on YOLOv4[J].Computer & Digital Engineering, 2021, 49(4):791. [百度学术]
王曼然. 基于红外热像图的变电设备故障检测与识别研究[D].恩施: 湖北民族大学,2020. [百度学术]
WANG Manran.Study of substation equipment fault detection and recognition based on infrared thermal image[D].Enshi: Hubei Minzu University, 2020. [百度学术]
孙兴达,郝赫,刘远,等.YOLOv4在电力巡检目标检测中的应用[J]. 现代信息科技,2020,4(20):115. [百度学术]
SUN Xingda, HAO He, LIU Yuan, et al. Application of YOLOv4 in power inspection target detection[J]. Modern Information Technology, 2020, 4(20):115. [百度学术]
袁纵青.基于机器视觉的汽车零部件字符检测系统设计与实现[D].徐州:中国矿业大学,2020. [百度学术]
YUAN Zongqing. Design and implementation of character detection system for auto parts based on machine vision[D]. Xuzhou: China University of Mining and Technology, 2020. [百度学术]
唐小煜,黄进波,冯洁文,等.基于U-net和YOLOv4的绝缘子图像分割与缺陷检测[J].华南师范大学学报(自然科学版),2020,52(6):15. [百度学术]
TANG Xiaoyu, HUANG Jinbo, FENG Jiewen, et al. Image segmentation and defect detection of insulators based on U-net and YOLOv4[J].Journal of South China Normal University(Natural Science Edition), 2020, 52(6):15. [百度学术]
张明琦,范影乐,武薇. 基于初级视通路视觉感知机制的轮廓检测方法[J].自动化学报,2020,46(2):264. [百度学术]
ZHANG Mingqi, FAN Yingle, WU Wei. A contour detection method based on visual perception mechanism in primary visual pathway[J].Acta Automatica Sinica,2020, 46(2):264. [百度学术]
王伟杰,姚建涛,张敏燕,等.基于YOLOV4的智能垃圾分类回收机器人[J].智能计算机与应用,2020,10(11):182. [百度学术]
WANG Weijie, YAO Jiantao, ZHANG Minyan, et al. Intelligent garbage sorting and recycling robot based on YOLOV4[J].Intelligent Computer and Applications, 2020, 10(11):182. [百度学术]
王淑青,黄剑锋,张鹏飞,等.基于YOLOv4神经网络的小龙虾质量检测方法[J].食品与机械,2021,37(3):120. [百度学术]
WANG Shuqing, HUANG Jianfeng, ZHANG Pengfei, et al.Crayfish quality detection method based on YOLOv4[J].Food & Machinery, 2021, 37(3):120. [百度学术]
席芮,姜凯,张万枝,等.基于改进Faster R-CNN的马铃薯芽眼识别方法[J].农业机械学报,2020,51(4):216. [百度学术]
XI Rui,JIANG Kai, ZHANG Wanzhi, et al.Recognition method for potato buds based on improved faster R-CNN[J]. Transactions of the Chinese Society for Agricultural Machinery, 2020, 51(4):216. [百度学术]
钟嘉俊,贺德强,苗剑,等.基于改进Faster R-CNN的地铁车辆焊缝缺陷检测[J].铁道科学与工程学报,2020,17(4):996. [百度学术]
ZHONG Jiajun, HE Deqiang, MIAO Jian, et al.Weld defect detection of metro vehicle based on improved faster R-CNN[J]. [百度学术]
Journal of Railway Science and Engineering, 2020, 17(4):996. [百度学术]
张骏,朱标,吉涛.基于MobileNet-SSD的红外人脸检测算法[J].激光与红外,2021,51(1):107. [百度学术]
ZHANG Jun, ZHU Biao, JI Tao.Infrared face detection algorithm based on MobileNet-SSD[J].Laser & Infrared, 2021,51(1):107. [百度学术]
王焕民,张建柏,裴华艳,等.基于MobileNet-SSD的铁路信号灯检测识别[J].兰州交通大学学报,2020,39(4):66. [百度学术]
WANG Huanmin, ZHANG Jianbai, PEI Huayan, et al.Research on railway signal lamp detection based on mobileNet-SSD[J].Journal of Lanzhou Jiaotong University, 2020, 39(4):66. [百度学术]
Bochkovskiy A, WAND C Y, LIAO H Y M.YOLOv4: Optimal speed and accuracy of object detection [EB/OL]. [2020-04-23].https://arxiv.org/abs/2004.10934. [百度学术]
WAND C Y,BOCHKOVSKIY A, LIAO H Y M.Scaled-YOLOv4: Scaling cross stage partial network [EB/OL]. [2020-11-16].https://arxiv.org/abs/2011.08036. [百度学术]
万卓,叶明,刘凯.基于改进YOLOv4的电机端盖缺陷检测[J].计算机系统应用,2021,30(3):79. [百度学术]
WAN Zhuo, YE Ming, LIU Kai.Defect detection of motor cover based on improved YOLOv4[J].Computer Systems & Applications, 2021, 30(3):79. [百度学术]
王兵,乐红霞,李文璟,等.改进YOLO轻量化网络的口罩检测算法[J].计算机工程与应用,2021,57(8):62. [百度学术]
WANG Bing, LE Hongxia, LI Wenjing, et al.Mask detection algorithm based on improved YOLO lightweight network[J]. [百度学术]
Computer Engineering and Applications, 2021,57(8):62. [百度学术]
解尧婷,张丕状.基于改进的YOLOv4输电线路小目标检测[J].国外电子测量技术, 2021,40(2):47. [百度学术]
XIE Yaoting, ZHANG Pizhuang.Small target detection of transmission line based on improved YOLOv4[J].Foreign Electronic Measurement Technology, 2021, 40(2):47. [百度学术]
王昕,寇云峰,辛浪,等.手机拍摄行为智能识别优化研究[J].通信技术,2021,54(1):244. [百度学术]
WANG Xin, KOU Yunfeng, XIN Lang, et al. Intelligent recognition and optimization of mobile phone photography[J]. [百度学术]
Communications Technology, 2021,54(1):244. [百度学术]
符惠桐,王鹏,李晓艳,等.面向移动目标识别的轻量化网络模型[J].西安交通大学学报, 2021 ,55(7):124. [百度学术]
FU Huitong, WANG Peng, LI Xiaoyan, et al. Lightweight network model for moving object recognition[J].Journal of Xi'an Jiaotong University, 2021, 55(7):124. [百度学术]