APP下载

基于深度学习的公路路面病害检测算法

2022-06-14罗晖余俊英涂所成

科学技术与工程 2022年13期
关键词:尺度准确率卷积

罗晖, 余俊英, 涂所成

(华东交通大学信息工程学院, 南昌 330013)

在公路的运营过程中,受环境温度、湿度、超载和保护不当等因素影响,路面会出现各种病害,如裂缝、坑槽和车辙等。裂缝和坑槽等主要路面病害会影响公路结构的强度和使用寿命,给公路交通带来严重的安全隐患[1]。因此,落实公路路面养护工作的重点是落实公路路面主要病害高效准确的检测工作。

早期通过巡检人员用肉眼或小型辅助设备直接观察路面病害,这种方式不仅费时费力,而且安全指数低,结果也不够准确[2]。随着图像处理技术的发展,人工检测方法已逐步被基于图像处理的检测方法所取代,采用边缘检测法[3]、小波变换法[4]和种子生长算法[5]等对公路路面病害进行自动检测,但由于公路路面背景干扰多,路面的车道线、车辙印、落叶、井盖、油污和水污等干扰物会影响公路路面病害特征的提取,致使在公路路面病害检测过程中常常会出现漏检、误检等现象,而且检测准确率较低、泛化性能较差[6]。

近年来,深度学习技术取得了巨大的发展,其不仅可以实现目标的识别,还可以框定目标的位置。Ju等[7]提出了基于Fast R-CNN的裂缝检测网络。罗晖等[8]采用Faster R-CNN实现了钢轨表面缺陷的自动高准确度识别和定位。以上方法都是基于两阶段的目标检测方法,虽然达到了较高的检测准确率,但是检测速度较差,没有达到实时性的要求。Mandal等[9]使用YOLOv2算法实现了路面裂缝自动检测。Zhang等[10]使用YOLOv3算法进行公路路面裂缝的自动检测,极大地提升了病害的检测速度,实现了特征的自适应学习。以上方法都是基于单阶段的目标检测方法,虽然在检测准确率和检测速度上达到了较好的平衡,但公路路面病害具有背景干扰多、病害信息弱、尺度差异大等问题,检测准确率还有待进一步提高。

因此,为了保证公路路面病害的实时检测,现选用目前使用最广泛的YOLOv4[11]单阶段检测算法作为基础网络,并结合YOLOv4算法在公路路面病害检测上的不足之处进行改进,使其满足公路路面病害检测的准确性和实时性需求。

1 YOLOv4算法简介

YOLOv4算法在具备较快检测速度的同时兼顾了检测准确率。如图1所示,YOLOv4算法采用CSPDarkNet53作为骨干网络,CSPDarkNet53网络是在DarkNet53网络基础上改进的,它在减少了网络参数量的同时保证了特征提取效果;输入图像经过CSPDarkNet53网络进行特征提取后,可以获得输入图像1/2(C1)、1/4(C2)、1/8(C3)、1/16(C4)、1/32(C5)大小的特征图;YOLOv4算法使用路径聚合网络(path aggregation network, PANet)[12]作为颈部连接层,PANet在特征金字塔网络(feature pyramid networks, FPN)[13]的基础上增加了自下而上的融合操作,实现了对骨干网络的不同尺度特征图的双向特征融合,从而改善了深层网络丢失浅层特征信息的问题;最后,经过特征融合后的三组特征图将预测待检测目标对应的位置、类别和置信度信息。

2 改进YOLOv4算法

2.1 可变形卷积的引入

由于公路路面病害尺度差异较大,且形状各异,如图2所示,使用传统的卷积操作限制了检测网络对公路路面病害各种形状特征的学习能力,而可变形卷积(deformable ConvNetsv2, DCNv2)[14]在传统卷积操作的基础上不仅对采样点进行了偏移,还可以调整采样点的权重,使采样位置更加贴合检测目标的形状。因此,将可变形卷积引入到特征提取网络中。

以3×3卷积为例,传统卷积核的感受野的位置定义为R={(-1,-1),(-1,0),…,(0,1),(1,1)},可变形卷积对感受野R增加一个偏移量{Δpk|n=1,2,…,N}(N=|R|)来改变感受野的位置信息,并对每个采样点的权重引入了一个调节参数Δmk∈[0,1]避免极端采样点对特征提取的影响,表达式为

(1)

式(1)中:wk为采样点的权重;p为特征图上的采样点的位置;pk为对R中所有位置的枚举;Δpk为采样点的偏移量;Δmk为对每个采样点权重的调节参数。

图2 传统卷积和可变形卷积采样点对比图Fig.2 Comparison of sampling between traditional convolution and deformable convolution

图1 YOLOv4网络结构Fig.1 YOLOv4 network structure

2.2 基于PANet的自适应空间特征融合结构

在公路路面病害检测过程中,路面病害存在尺度差异大的现象。目前,特征金字塔网络是解决多尺度变化问题的常用方法,YOLOv4算法使用PANet对骨干网络输出的多尺度特征图进行自下而上和自上而下的双向融合,但这种融合方式只是简单地将特征图变换成相同尺度后再进行相加或级联,削弱了多尺度特征图的表达能力,致使无法充分利用不同尺度的特征信息。此外,在特征金字塔网络中,大尺度目标通常与深层特征图映射关联,小尺度目标通常与浅层特征图映射关联,当目标在某一尺度特征图上被识别为正样本时,则在其他尺度的特征图中相应的区域会被识别为背景信息。因此,如果一幅图像中同时包含了不同尺度大小的目标时,不同层次的特征图之间的冲突往往会占据着主导地位,这种不一致性干扰了网络训练过程中的梯度计算,降低了特征金字塔的有效性。

由此,提出一种基于PANet的自适应空间特征融合结构。如图3所示,经CSPDarkNet53输出的C3、C4和C5作为输入,将C3和C4的输出与上采样特征图进行跳跃连接,并将自适应空间特征融合方式(adaptively spatial feature fusion, ASFF)[15]融入到PANet网络中,以实现更深层次特征的融合,最终得到3个特征图P3、P4、P5。ASFF在空间上过滤其他层次的无用特征,保留有效的信息进行融合,在每一尺度的特征融合过程中,将其他尺度的特征图尺寸调整到相同分辨率,然后进行训练,网络自适应地调整各尺度特征在融合过程中的权重,实现不同尺度特征信息的高效融合,从而改善了特征的尺度不变性。

ASFF的特征融合公式为

(2)

图3 基于PANet的自适应空间特征融合结构Fig.3 Adaptive spatial feature fusion structure based on PANet

(3)

2.3 损失函数的优化

在公路路面病害检测过程中,路面病害为前景信息,除去路面病害的路面或其他均为背景信息。在模型的训练过程中,一张图像会生成(13×13+26×26+52×52)×3=10 647张先验框,其中只有很少一部分是包含病害的,且病害特征与背景的纹理特征极为相似,不易识别,要从中找到最匹配目标的先验框十分困难。网络更多地聚焦在容易分类的背景框中,造成对病害的分类能力下降。

平均准确率损失(average precision loss,AP-loss)函数[16]可以有效地缓解正负样本不平衡问题,使网络训练侧重于正样本,提高模型的泛化性能。因此,使用AP-loss函数作为YOLOv4的分类损失函数。

AP-loss采用平均准确率作为目标损失优化条件,如图4所示,AP-loss将分类任务转变为排序任务,经检测模型输出所有预测框的得分,并对其进行排序,保证正样本预测框的得分排在负样本预测框得分的前面,使得模型对正样本和负样本的比例不敏感,从而缓解正负样本不平衡问题。

分类损失函数的具体设计如下。

步骤1计算所有预测框两两之间的得分差值xmn和二进制标签转换为排序形式ymn,表达式为

xmn=-(sm-sn)

(4)

ymn=1|tm=1, tn=0

(5)

式中:sm和sn分别为两个预测框的得分;tm和tn分别为两个预测框的二进制标签,1是一个指标函数,只有当tm=1、tn=0时,ymn=1,否则为ymn=0。

步骤2计算每个预测框在所有预测框的归一化排序,即

(6)

式(6)中:P={m|tm=1},|P|为正样本预测框集合P的数量;N={m|tm=1},|N|为负样本预测框集合N的数量;H()为阶跃函数。

图4 排序任务示意图Fig.4 Ranking task diagram

步骤3得到的分类损失函数为

(7)

式(7)中:AP为平均准确率。

2.4 改进后的YOLOv4网络结构

首先,在CSPDarkNet-53骨干网络提取的3个特征图C3、C4和C5分别进行一次可变形卷积操作;然后,将PANet结构替换成基于PANet的自适应空间特征融合结构;最后,使用AP-loss作为YOLOv4的分类损失函数。改进YOLOv4的公路路面病害检测总体框架如图5所示。

3 实验结果与分析

3.1 数据集的获取与预处理

使用大疆无人机携带云台相机分别在晴天和阴雨天采集公路路面病害样本图像,由于使用了云台设备可以更加精准的控制相机,有效地减少了相机的抖动,从而提高了采集样本图像的质量。在采集过程中,无人机镜头与路面尽量保持垂直,与此同时,镜头到路面的垂直距离也保持在90 cm左右,减少拍摄角度及拍摄距离对路面病害样本采集的影响。

所采集的1 000 张样本图像包括带有车道线、车辙印、落叶、井盖、油污和水污等不同纹理背景干扰物和不带干扰物的主要公路路面病害图像。如图6所示,公路路面主要病害图像包括:横向裂缝(transcrack)、纵向裂缝(longcrack)、网状裂缝(mapcracking)和坑槽(potholes)等。

为了提高算法的泛化能力,将拍摄到的公路路面病害图像通过翻转、添加高斯白噪声及旋转等方式进行数据集增强,结果如表1所示。由于横向裂缝和纵向裂缝旋转90°和270°时会出现横向裂缝变成纵向裂缝的情况,故不对其进行这两项的数据增强。

表1 数据集增强Table 1 Data enhancement used in training

3.2 实验环境及评价指标

(1) 实验环境。本实验基于深度学习框架Pytorch,并使用Python语言进行编程。实验环境配置如下:处理器为Intel(R) Core (TM) i7-7800X CPU,操作系统为Windows 10,显卡为NVIDIA GeForce RTX 2080,显存为8 GB,内存容量为32 GB。

(2) 评价指标。通过计算每个类别的平均准确率(average precision, AP)、所有类别的平均准确率均值(mean average precision,mAP)和平均检测时间(average detection time)作为检测模型的评价指标。

(8)

图5 改进YOLOv4网络结构Fig.5 Improved YOLOv4 network structure

图6 公路路面病害数据集样例Fig.6 Sample of pavement diseases dataset

(9)

式中:P为准确率;R为召回率;c为分类数。

3.3 模型训练

从公路路面病害数据集中随机选取72%的图像作为训练集,8%的图像作为验证集,剩余20%的图像作为测试集,如表2所示。

为了确定更适合公路路面病害尺寸的先验框,提高检测算法的收敛速度,利用K-means++算法对公路路面病害数据集真实框的宽、高尺寸进行重新聚类,设定更适合公路路面病害尺寸特点的先验框。将其分配给3个尺度的特征图,其中尺度较小的特征图分配给面积较大的先验框,以获得更加细致的目标信息,重新聚类后的先验框尺寸如表3所示。

采用迁移学习的思想辅助骨干网络训练,首先,使用 COCO数据集对改进YOLOv4算法进行预训练,所得到的权重作为骨干网络的初始权重,使骨干网络具有提取轮廓、颜色等基础特征的能力;然后,冻结骨干特征提取网络,从而减少网络的训练参数,让网络着重于分类器的训练;最后,解冻骨干特征提取网络,对整个网络进行优化。图7为YOLOv4算法和改进YOLOv4算法在训练过程中损失值的变化图,可以看出,改进YOLOv4算法可以加快损失值的下降,有效地提高了模型的收敛速度。

表2 公路路面病害数据集样本分布Table 2 Sample distribution of pavement diseases dataset

表3 重聚类先验框尺寸Table 3 Dimensions of reunion class anchor box

图7 损失值变化图Fig.7 Change graph of loss

3.4 实验结果与分析

为了验证可变形卷积(DCN)、基于PANet的自适应空间特征融合结构(APAN)和AP-loss(AP)对YOLOv4算法的整体性能影响。消融实验设计如表4所示,以YOLOv4算法为基础。

为了对比不同算法在公路路面病害测试集上的检测效果,分别使用Faster R-CNN、单阶段多盒探测器(single shot multibox detector,SSD)、YOLOv3、YOLOv4和改进YOLOv4等方法进行公路路面病害检测。检测结果如表5和表6所示,Faster R-CNN算法虽然检测准确率较高,但其实时性较差;SSD算法虽然检测速度较快,但其检测准确率较差,且对微弱病害的检测能力有所欠缺;改进YOLOv4算法与YOLOv3和YOLOv4算法相比,在检测速度相当的情况下,改进YOLOv4算法取得了与Faster R-CNN算法相当的检测准确率,且检测速度远高于Faster R-CNN算法。

如图8所示,改进YOLOv4算法对图中存在水渍、阴影、斑马线等干扰物的公路路面病害表现出良好的检测效果,可以有效检测出较小尺度的裂缝和坑槽,能够对每类病害进行精准的分类和定位。

表4 消融实验Table 4 Ablation experiment

表5 公路路面病害测试集上不同算法结果对比Table 5 Comparison of results of different algorithms on pavement defect test set

表6 公路路面病害测试集上不同算法结果对比Table 6 Comparison of results of different algorithms onpavement defect test set

图中文字如“横向裂缝0.97”表示该目标的置信度为0.97,余同图8 检测结果对比Fig.8 Comparison of detection results

4 结论

针对公路路面病害存在背景干扰多、病害信息弱和尺度差异大等问题,造成现有算法应用在公路路面病害检测过程中存在部分漏检、误检、目标定位误差大等现象。使用无人机在真实路面场景拍摄,构建了公路路面病害数据集;通过引入可变形卷积、设计基于PANet的自适应空间特征融合结构和使用AP-loss作为分类损失函数等方法改进YOLOv4算法。实验结果表明,改进YOLOv4算法的检测准确率与Faster R-CNN算法相当,且检测速度优于Faster R-CNN算法,对公路路面病害具有更好的检测效果,可以实现对公路路面病害的准确、快速检测。

改进YOLOv4算法虽然能快速、准确地检测公路路面病害,但是并没有对病害的严重程度进行评测,因此,在之后的工作中,需要进一步对网络进行优化。

猜你喜欢

尺度准确率卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
财产的五大尺度和五重应对
卷积神经网络的分析与设计
从滤波器理解卷积
高速公路车牌识别标识站准确率验证法
基于傅里叶域卷积表示的目标跟踪算法
宇宙的尺度