李 岩 徐信芯,2 李世豪,2 叶 敏
(1.长安大学公路养护装备国家工程实验室 西安 710064; 2.河南省高远公路养护技术有限公司 新乡 453000)
在经济的发展和公路里程的增加给人们的出行和生活提供便捷的同时,随着公路交通量急剧增加、使用时间不断增长、车辆重载等多种因素的影响,公路的破坏和修复已经成为城市交通的主要问题。沥青路面病害的存在会缩短路面的使用寿命,影响路面的使用性能,需要及时对其进行修复作业。在当今公路里程数及公路交通量极大的情况下,应用传统的人工检测手段来判定沥青路面病害破损情况执行起来费时费力,并且人工检测方法较智能方法精度差、效率低,同时也会影响交通的正常运行[1-2]。
深度学习指的是学习输入对象的表示层次和内在规律,其在许多行业已经得到了迅速的发展,也取得了许多优异的成果,且在图像分类领域中使用的效果优异[3]。深度学习的最终目的是为了得到具有学习能力的机器,它能够完成数据识别等任务。但是由于发展时间的限制,在一些具体的领域还没有被广泛地应用[4-5]。模糊神经网络综合评价引入了模糊逻辑推理规则,赋予计算机相关运算逻辑,避免人为干预,有评价结果客观、步骤简单、效率高等特点[6]。国内外不少学者对沥青路面病害识别方向进行研究,但大多是单一的利用深度学习进行病害识别或单一的利用模糊神经网络等进行评判,本研究拟将其结合起来,对输入图像进行处理,利用Alexnet网络识别出病害类型,再利用模糊神经网络进一步评判。
该方法根据不同沥青路面病害图像创建了一个含有3类沥青路面病害的样本数据集,包括裂缝、水损坏、车辙,共300张图像,每一类沥青路面病害共搜集到100张照片,基本涵盖了目前沥青路面的主要病害。为了确保识别精度,每个图像中仅包含单一沥青路面病害,并且其中沥青路面病害特征未堆叠或损坏,图像示例见图1。
图1 沥青路面病害数据集中的图像示例
对收集的病害图片进行整理,归纳出沥青路面病害类型见图2,该病害类型构成评价指标,主要评价指标包括裂缝、车辙和水损害3大类,共计11个小类。例如对于裂缝来说,可细分为横向裂缝、纵向裂缝、网状裂缝及不规则裂缝。
图2 沥青路面病害评价指标
为实现沥青路面病害的自动化和智能化识别,建立了图像处理和病害智能识别2个子评估系统,其流程图见图3、图4。
图3 图像处理子系统流程图
图4 病害智能识别子系统流程图
对于图像处理子系统,首先选择所处理对象合适的网络模型,根据现有沥青路面病害图像构建病害数据集,再对沥青路面病害图像的特征进行提取,通过标签化处理、归一化处理、数据集扩充后建立沥青路面病害图像典型特征数据集。沥青路面病害图像经图像处理子系统后进入病害智能识别子系统,该系统对输入的图像进行预处理使其达到该子系统可识别的状态,随即与上述所建立的典型数据集中的图像进行对比,找到与该输入图像特征一致的数据集图像,最后输出该沥青路面病害图像的类型及其危险度等级。
至今为止,众多图像识别相关研究都应用了深度学习方法,在深度学习中可用于目标识别任务的网络种类庞杂,且性能不一,针对该沥青路面病害图谱智能识别方法的研究,所需深度学习网络性能应满足下述要求。
1) 该系统用以识别沥青路面病害图像所需识别目标面积大,因此相对应识别网络应可处理中、大型目标。
2) 考虑到实际应用价值,学习网络不仅需要较高的模型识别率,而且需要较短的模型训练时间。
3) 本研究所创建的沥青路面病害图像数据集与ImageNet等大型数据集相比小得多,这就要求所选网络模型应当具备优秀的的特征学习能力和良好的的抗过拟合性能。
4) 由于实验电脑的CPU与GPU的限制,且需要不断调试网络参数,故在维持模型识别率的前提下,应尽可能地要求网络结构简单,层数较少,保持较快的识别速度。
结合上述要求,与主流的几大图像分类方法比较,其中AlexNet和Vgg16等网络在训练速度和精度方面性能较优。因实验设备条件原因,最终选择AlexNet网络作为本研究的网络模型。
根据样本数据集的建立过程绘制其流程图见图5。
图5 数据集建立流程图
根据样本数据集标定的过程绘制其流程图见图6。
图6 数据集标定流程图
采用监督式的深度学习算法,所输入训练数据即沥青路面病害图像数据集中的样本图像需进行标签化处理。标签的实际意义在于将照片中有用的,需要被学习的信息框选出来,剔除掉无用的干扰信息,使用MATLAB内置软件Image Labeler对沥青路面病害图像进行标定[7]。将标定后含有标签信息的mat文件统一保存在对应文件夹,随后使用MATLAB循环程序可以批量将所保存文件导出为jpg标签图片,保存训练样本图片用于沥青路面病害识别网络的训练。
因识别的目标为沥青路面病害图像,理论上打标签的对象为沥青路面病害上特殊的样貌特征,但是在实际的应用中需要识别的是含病害沥青路面的整体目标区域,因此若只应用特殊样貌特征则会出现不识别整体目标区域的情况,若只应用整体目标区域的图像,由于沥青路面病害特殊样貌特征不够明确会使得识别效果较差。为确保识别精度及较优的识别效果,创建了3类数据集即特殊样貌特征数据集,整体目标区域数据集和特殊样貌特征与整体目标区域数据集,通过比较3类数据集的训练结果,确定最优数据集方案。
使用Image Labeler对数据集中的图像进行剪裁,提取其中有用信息,此时,经其处理后的图像规格不完全统一,需对数据集中的的图像进行归一化处理,确保其尺寸统一。使用imread函数将照片循环读取后,再使用imresize调整图像的尺寸为227×227。
根据样本数据集扩充的过程绘制其流程图见图7。
图7 数据集扩充流程图
为获得更好的训练效果,提高识别精度,应扩大数据集的规模,使网络模型能学习到更多特征。若数据集的规模过小,会使得训练结果不够理想,产生欠拟合等问题。但是通过人工采集的方式来获得大量的样本图像会耗费大量的时间和精力,因此对已有数据进行增强处理可以高效地扩充数据集。该子系统采取图像旋转、图像镜像,以及添加噪声进行数据增强处理。
1) 图像旋转。输入imrotate指令能够使图像以其中心点为旋转点进行旋转,将原图像旋转90°得到新图像,采用双三次插值的默认算法,使用剪切指令对旋转后图像剪裁,使得输入输出图像尺寸一致。
2) 图像镜像。图像镜像处理包括水平镜像与竖直镜像2种变换,将图像分别以其竖直中轴线为轴的左右两部分调换位置,和以其水平中轴线为轴的上下两部分调换位置。
3) 图像添加噪声。为了增大数据样本量并且增强模型的抗噪能力,给输入的样本图像分别添加高斯噪声与椒盐噪声,将输入样本图像添加噪声系数为0.1的高斯噪声和椒盐噪声,高斯噪声在理论研究中十分常用,给人视觉感受最清晰的是椒盐噪声。对输入的图像添加噪声,使模型能学习带有噪声干扰的新特征,从而提高网络的抗噪能力,因此增加噪声到输入的数据样本中是必要的。通过向一部分输入图像样本中添加噪声密度为0.1的高斯噪声和椒盐噪声,使得所有的数据集中有部分图像有噪声干扰,既能够达到扩充样本数据量的目的,又能够模拟现实使用中的噪声干扰,提高网络在噪声下的识别能力。
经过上述数据预处理之后,生成了涵盖三大类沥青路面病害的1 500幅图像,每类沥青路面病害有500张图像。在训练开始前,将样本数据集进行划分为训练集和测试集两部分,因样本数据集所含样本相对较少,为达到较优的训练效果,应适当扩大训练集比例并减小测试集比例,规定每类沥青路面病害的样本图像中4/5为训练集,1/5为测试集。通过训练集进行网络模型的训练,通过测试集来检测模型的识别精度,以及对网络模型进行自我评估。
网络模型训练流程图见图8。
图8 网络训练流程图
因使用迁移学习训练得到的网络模型具有识别精度高、训练效果好等特点,本文采取该方法并选用ImageNet数据集上进行过预训练的AlexNet网络模型,将先前自建的样本数据集输入网络结构的后3层中,经预训练后的新模型,其收敛速度得到了提升。在数据集训练结束后,通过对AlexNet网络模型参数进行调整,使选择的网络模型与创立的数据集达到最优匹配状态,提高训练精度,缩短训练时长,得到了网络性能和实用性能最佳的模型,其具体数据如下。
学习率:0.000 1;测验频率:10;权重:5;偏差:5;Minibatchsize:10;MaxEpochs:6;准确率:89.97%。
因素集是指以各致灾因子为元素所组成的集合,致灾因子是指与沥青路面病害出现及发育相关联的因素,即
U={U1,U2,…,Ui}
Ui={Ui1,Ui2,Ui3,…,Uin}
(1)
式中:Ui为因素集U中某类致灾因子;Uij为致灾因子Ui中的分因子。
通过赋予不同致灾因子权重ai来表征致灾因子对沥青路面病害的影响程度,不同的权重ai构成权向量A。结合层次分析法,比较评价体系中同层因子,得到判断矩阵N。计算出上述矩阵的最大特征值λmax,再结合平均随机一致性指标RI,根据式(2)计算其随机一致性比率CR,由此对判断矩阵N做一致性检验,当随机一致性比率CR<0.10表示一致性检验通过,否则需重新确定判断矩阵N。
(2)
(3)
利用AHP处理评价体系各层,计算出各层权向量Ai,获得致灾因子最终权向量A。
对沥青路面病害评价时将可能得出的评价结果组成评价集V,即
V=(V1,V2,V3)
(4)
评价集中元素分别代表重度、中度、轻度。
以致灾因子Ui单独对沥青路面病害进行评价,确定其对评价集V中各元素的权重Ri=(ri1,ri2,ri3),得到单因素评价向量,所有单因素评价向量按行组成评判矩阵P。
结合上述评判矩阵P和权向量A,得模糊综合评价式如式(5)所示。
B=A·P=(bij)
(5)
令bij=∨(aik∧rkj),aik、rkj分别为权向量A和评判矩阵P中的元素,A·P的计算方式类似于矩阵乘法,将其中原本对应行、列向量乘法运算换为取最小值(∧),将其中原本在乘法运算后的加法运算换为取最大值(∨),再对得到的B进行归一化处理。
将进行归一化处理后的B带入式(6)
M=B·Z
(6)
其中,列向量Z是根据危险度等级所划分数量确定的,Z=(1.0,0.666 7,0.333 3)T,将计算得到的值M与所确立的危险度指数进行比对,最终确定所评判沥青路面病害的危险度等级,危险度等级划分见表1。
表1 危险度等级划分
在神经网络训练过程中,通过反复调试与比较分析,才能获得兼顾识别效率和识别精度的网格模型。每一个在隐含层和输出层中的神经元都有独自的权重值及传递函数。总的来说,神经网络的体系结构和其参数的设置决定了它处理信息的能力。在获取最优神经网络的过程中最关键的问题在于确保隐含层处于最优化状态[8]。其各输入值权重与人工神经网络的算法由各层使用函数类型决定。在Back Propagation(BP)神经网络结构中,以输入输出为基础,将训练所用实例输至网络,得到其输出,分析输出值与其相对应的实测值,记录其偏差,再借助反向传播,基于网络输出调整输入的权重,通过这种方法能够减少神经网络的错误[9]。训练过程在实际值与其对应的网络收敛完成后结束,通过均方差(MSE)寻找最优神经网络,误差越小代表其性能越好。神经网络的训练过程见图9。
图9 神经网络的训练过程
由图9可知,训练应在神经网络达到其效果最优点(13个周期)时结束,在该神经网络中,用于验证的数据集相关系数为0.976 69,用于测试的数据集相关系数为0.990 06。
以滇藏公路青海段为例,采用模糊神经网络综合评价法分析该段桩号K170处路基横向裂缝的危险度。该段路面由于排水设施不足而导致积水进入路面结构,致使半刚性基层水毁,形成了间隔5~6 m分布的路面开裂病害,见图10。
图10 桩号K170处横缝
从相关研究[10-12]中总结出诱发该处横向裂缝裂缝的相关致灾因子,通过划分得到外部环境因素、冻土因素和设计因素3大类致灾因子,同时对每一大类致灾因子进行细分,例如外部环境因素又可具体细分为地表温度、行车载荷、日照强度、降水量。经过上述步骤得到11个致灾因子,具体见图11。
图11 致灾因子类型图
根据对滇藏公路K170路段现场实际环境以及铺筑时相关路基参数的研判,结合神经网络的训练得出所述3大类致灾因子的权重a1、a2、a3,有:(a1,a2,a3)=(0.5,0.2,0.3)。通过AHP建立外部环境因素下4类致灾因子(地表温度、交通流量、日照强度、降水量)的判断矩阵N1。
(7)
计算得最大特征值λmax=4.013 0,在4阶矩阵中,RI=0.9 ,根据式(2)有
RI=0.011<0.10
(8)
故一致性检验通过,计算得到行向量的几何平均数Wi;W1=0.451 8,W2=1.189 2,W3=0.804 9,W4=2.213 4,再根据式(3)经归一化处理后求出在该因素下各致灾因子权向量:A1=(0.096 2,0.253 3,0.179 1,0.471 4);按照上述步骤,依次可求得在设计因素以及冻土因素下致灾因子的权向量A2和A3,并结合3大类致灾因子的权重得到该评价体系权向量A。
(9)
根据现场环境条件及其致灾因子类型,确定11小类致灾因子对评价集元素的权重,11个单因素评价横向量构成评判矩阵P如下。
(10)
将评判矩阵P和权向量A带入式(5)并做归一化处理,得:B=(0.412 5,0.412 5,0.175 0),带入式(6),得:M=0.745 8。由表1危险度等级与指数的对应关系可知,该路段横向裂缝的危险度为重度。根据现场的实际勘察结果可知,该路段横向裂缝宽度、深度大,贯穿长度长,裂缝分布集中,有劣化迹象,对路基造成了恶劣影响,同时也危及行车安全,故所得评价结果为重度,符合该段横向裂缝实际状况。
本文针对具有工程实际应用意义和研究价值的沥青路面病害智能识别系统这一方向展开研究与探讨,介绍了该系统的建立全过程。通过数据库建立、标签处理,以及图像预处理和深度学习网络的构建等步骤,使得网络建立逻辑明晰。在图像处理的基础上引入模糊逻辑推理与神经网络相关知识,评价所识别出的沥青路面病害危险度等级,借助模糊神经网络来完成对沥青路面病害危险度等级评价的逻辑推理,较传统评价方法有评价结果精确、评价过程客观、评价速度快等优点。以滇藏公路K170路段的横向裂缝病害为例进行评价,得出该路段横向裂缝等级为重度,与专家现场评判结果一致,表明此方法能够准确、高效、客观地识别沥青路面病害类型并分析其危险度等级。