APP下载

基于机器视觉的路面病害检测技术对比研究

2022-02-20

黑龙江交通科技 2022年12期
关键词:病害路面裂缝

王 华

(江西九江长江公路大桥有限公司,江西 九江 332000)

1 引 言

公路系统不断发展,交通流量显著增加,同时重载、超载交通等不利因素以及环境影响导致公路路面出现多种病害,其养护和管理状态直接影响到区域交通的互联互通。针对不同病害需要采取的措施并不统一,因此能够正确地对路面病害进行检测是路面养护的前提,而对道路病害进行高效检测是道路养护质量水平的关键。

在深度学习框架下,基于端到端的目标病害检测算法能够更好地实现对目标特征的提取,具备检测精度高、速度快等特点。Redmon[1]等人提出了YOLO目标检测算法,将生成候选框、通过神经网络对边框进行分类和回归两个步骤合并到一个神经网络中,神经网络计算的复杂程度大大降低。Du[2]等人提出了一种基于YOLO网络的局部病害检测及分类技术,对7种病害进行识别和分类,准确率达到了73.64%。陈旭丹[3]等人采用了YOLO目标检测算法快速识别路面常见病害,并保证了一定准确率。黎洲[4]等人应用YOLOv2算法实现车载视频中的车辆检测,取得97.42%的准确率,解决了使用以往算法实时性不足的问题。将神经网络模型应用于工业领域可适当较少检测精度以提高网络模型检测速度,Adarsh[5]等人提出的YOLOv3-Tiny目标检测模型是基于YOLOv3网络通过剪枝操作减小结构体量,大大地提高了检测速度;Huang[6]等人提出的YOLO-Lite模型则注重适用性,实现了在无GPU的计算机上进行目标检测;Wong[7]等人提出的YOLO Nano模型在结构体量上相比YOLOv3-Tiny减小了近8.3倍,从而获得了更快的检测速度;随后Wang[8]等人提出了Scaled-YOLOv4模型在保持检测速度优势的同时提升了一定的检测精度。

在深度学习框架下探究YOLOv5网络结构建立病害图像的识别、提取与分类算法体系,并将YOLOv5与YOLOv3、R-CNN系列的快速区域神经网络与掩膜区域神经网络在同一个路面病害数据集下的训练时间、训练结果、相关参数进行分析,评估准确率、召回率训练指标,选择最优的网络架构更加直观地反映病害特征。

2 病害检测网络模型

2.1 基于YOLOv5的道路病害检测模型

YOLOv5的输入端对图像进行Mosaic数据增强,更好适用于小目标检测。YOLOv5改进自适应图片缩放功能,使其能够在调整图片大小时添加最少的灰边,并提高网络检测速度。主干网络的主要作用是在不同图像细粒度上聚合,形成对应图像特征的卷积神经网络。YOLOv5增加Focus结构,其原理是将图像进行切片操作,输入图像的原始大小为608×608×3、经过Focus层后转化成304×304×12、再经过一个卷积核大小为32×32的卷积层后转化成304×304×32的特征矩阵。此外YOLOv5将CSP(Cross Stage Paritial Network)模块插入主干网络及瓶颈层中,在不影响检测效率的同时增强网络的特征提取和学习能力。YOLOv5算法的结构示意图如图1所示。YOLOv5选择SiLU函数作为激活函数,其具体计算方法如公式(1)所示。

图1 YOLOv5结构示意图(以YOLOv5s 例)

SiLU(x)=x/Sigmoid(x)

(1)

YOLOv5的损失函数由中心坐标损失、宽高坐标损失、置信度损失与分类损失组成。

2.2 模型训练

本文选取裂缝作为路面病害的典型代表,训练网络所用的路面病害数据来源于以下公开数据集:Crack Forest[9]、Cracktree200、AEL、GAPs384、CFD、Crack 500[10]。初始的样本图像共1 509张,其中Crack Forest数据集包含118张样本、Cracktree200数据集包含206张样本、AEL数据集包含58张样本、GAPs384数据集包含509张样本、CFD数据集包含118张样本、Crack500数据集包含500张样本。为了模拟网络进行多目标检测的效果,将裂缝病害细分为横向裂缝、纵向裂缝、网状裂缝作为3种病害。

路面病害数据集中的80%作为训练集、10%作为验证集、10%作为测试集。训练集输入的图像数据分辨率为1 920×1 080,batchsize设置为2,学习率为0.001,Epoch迭代次数大小设定值为25 000,使用学习率指数衰减让学习率随着学习进度降低以达到更好的训练目的。识别模型的构建使用pytorch 1.3.1版本在ubuntu18.04上部署建模环境,并使用i9-9900k和RTX2080ti来进行模型的训练和测试。

3 研究成果讨论

4种网络训练的Loss值变化趋势如图2所示,迭代次数达到5 000次左右时4种网络的Loss值都有较大幅度下降,但YOLO系列网络早于另2个网络先趋于平稳,且趋于平稳时的Loss值较另2类网络较高,约为0.06,在后续的迭代过程中波动幅度较大;相反R-CNN系列网络的Loss值虽然下降趋势较缓,但是其趋于稳定时的表现更加优秀,约为0.03。YOLO系列的轻量化结构使其在梯度下降方面具有优势,可以在较少迭代次数的情况下获得较为理想的损失率;而R-CNN中兴趣候选框的机制以及多候选框重复率高的特点注定其在前期训练的过程中与验证集的偏差较大,需要更多的迭代次数获取目标的相关特征并成功收敛回归。在迭代次数为12 500次左右时,4种算法的Loss值变化基本稳定不变,平均数值分别为0.05与0.03。虽然存在微小差距,但是由于损失值均小于等于0.05,可以认为4种网络的训练参数设置情况比较合理,目标特征的学习工作较为成功。

图2 不同网络训练的Loss值变化趋势

通过在相同情况下对路面病害集中1 207张训练图像进行训练,并使用150张病害图像对4种网络进行网络效果测试,比较不同网络对横向裂缝、纵向裂缝、网状裂缝3种常见路面病害的检测直观效果、AP值、mAP值、帧率情况。另外也加入了基于传统机器学习的目标检测算法的典型代表SVM支持向量机算法进行纵向比较。具体的评价指标数值如表1所示。

表1 不同网络检测的评价指标数据表

图3 不同网络的性能指标比较

通过分析可以发现相较于SVM这样的基于传统机器学方法,基于深度学习的目标检测算法具有巨大的优势:R-CNN系列与YOLO系列网络分别相较于它mAP平均提高了22.69%和18.20%,这对于目标检测领域来说是非常巨大的差距,且在多类、数据量较小的检测条件下基于深度学习的目标检测算法具有显著的性能优势。

通过分析,网状裂缝的检测相比另两种裂缝效果较差,经过计算AP平均相差5.31%,主要有两个原因:一是在路面病害数据集中网状裂缝占比较少,仅有21.47%,虽然有大量的训练迭代次数作铺垫,但也可能导致网络的特征提取能力不足;二是网状裂缝病害特征复杂,很难完全准确检测,一旦出现检测假正例或假反例的情况都会影响最终的AP值。横向对比R-CNN系列算法和YOLO系列算法的检测表现,不难看出两种算法具备各自的优势:R-CNN系列算法侧重于高mAP值和优秀的检测表现,mAP相比YOLO系列算法平均提高了3.80%;而YOLO系列算法凭借其轻量化的优势,减少了一定比例的检测精度,而在帧率表现上远超前者,平均提高了193.57%。

4 结 论

本文详尽分析了YOLO、R-CNN等网络的具体结构、优化措施、损失函数等,使用4种算法对典型路面病害数据集进行了训练、验证、测试工作。研究成果表明,与基于传统机器学习的目标检测方法作对比,深度学习在多类、低数据量检测情景下体现了显著精度与效率优势。实际应用中,R-CNN算法具备较好的检测表现,mAP相比YOLO系列算法平均提高了3.80%;YOLO算法在检测效率上显著高于R-CNN算法,平均提高了193.57%。

猜你喜欢

病害路面裂缝
早春养羊需防六大病害
小麦常见三种病害咋防治
葡萄病害周年防治历
碳酸盐岩裂缝描述七大难点
果树休眠期咋防病害
完美“切割”,裂缝之谜
用艺术修补路面
地球的裂缝
一款透水路面养护车
BFRP连续配筋复合式路面配筋设计