[0065] 由图4中的三维数据可知,弹条的轮廓不是规则的直线,因而提取扣件区域图像时采用从粗到细的策略间接性地定位扣件位置,即利用深度图像的深度梯度信息先定位钢轨和承轨台的直线边缘,之后结合扣件与钢轨、承轨台固定的相对位置关系确定扣件位置。高速铁路无砟轨道板均在工厂预制,其具有较高
[0066] 另外,通过将整张扣件区域图像旋转180度的处理,将钢轨两侧的扣件化为相同姿态的扣件图像,如图5所示。
[0067] 2.2提取弹条子图像
[0068] 弹条是扣件系统提供弹性的主要部件,弹条的状态代表了扣件的工作状态。为此,弹条的信息是扣件缺陷识别的关键。分析扣件的高度分布特征可知,弹条表面高于钢轨底部和承轨台,且低于T型螺栓表面,据此利用阈值分割法可将扣件深度图像中的弹条部分提取出来。初步提取的弹条图像包含大量噪音,故结合弹条轮廓特征利用形态学方法进行去噪处理,最后的弹条子图像如图6所示。
[0069] 2.3创建人工负样本
[0070] 现有监督式分类器的本质是用不同类别的训练样本来决定测试样本的最佳类别。为保证分类器良好的性能,所有线性或非线性分类器均需要相对平衡的正负样本数据集进行训练,然而即使在铁路现场正常扣件的数量远远大于扣件缺失、扣件断裂的数量,如现有技术采集4条铁路线路的数据,总共收集73058个扣件区域图像,而负样本仅有422个,其占数据集的0.6%。为此,本发明基于提取的正常弹条图像,创建人工负样本,从而解决正负样本数量不平衡的困境。
[0071] 根据弹条的力学分析可知,因
应力集中等原因弹条后肢的应力比其他各处的应力大,导致扣件主要在此处发生断裂。本发明基于正常的弹条图像,在弹条后肢处截断弹条,可获得弹条上侧断裂、下侧断裂以及两侧同时断裂的图像,如图7所示。
[0072] 3特征提取与分类
[0073] 传统的扣件特征提取算法属于经验驱动,其基于分治策略将扣件检测问题分解为预处理、特征提取与选择、分类器设计三个子步骤。在解决子步骤的过程中,人工设计的特征提取方法对特征抽象化程度低,不能高度表达扣件特性,导致即使性能非常优异的分类器也不能保证高稳定、高准确的扣件状态识别率,尤其是针对质量不佳的二维图像。分治策略不能取得良好效果的主要原因是子步骤虽然简化了整个问题的复杂度,但子步骤的局部最优解并不意味着全局过程的最优。深度卷积神经网络更强调端到端的学习,有机地将特征提取和分类融合,使其从原始训练数据中协同增效地进行隐式学习,有更大的可能获得全局上最优解。
[0074] 3.1深度卷积神经网络的结构
[0075] 卷积神经网络最初由LeCun应用于手写数字识别,其利用交替的卷积层、池化层逐层抽象特征。与早期全连接网络相比,卷积神经网络的重要特征就是引入卷积层,从而提取局部特征并有效保留空间位置信息。
[0076] 卷积阶段:在第m层的卷积层中,第m-1层输出(即第m层输入)的所有相关特征图被可学习的卷积核进行卷积,然后通过激活函数的非线性映射可得到进一步抽象的特征图。每个卷积核对应输出一个特征图,第m层输出特征图的总数量由第m层卷积核k的个数决定。
第m层第j个特征图Xjm的计算公式如下:
[0077]
[0078] 其中:*号实质是让卷积和k在第m-1层所有相关联的特征图上作卷积运算;b是加性偏置参数。
[0079] 池化阶段:有N个特征图输入,就对应有N个特征图输出。经过预处理后模型的原始输入仅包含扣件信息,均值池化通过减小估计值方差的误差能较好地保留图像信息。在第m+1层的均值池化中,采样窗口大小为n*n,计算公式为:
[0080]
[0081] 其中down(x)是n*n窗口中像素值均值采样,β是乘性偏置参数,b是加性偏置参数。
[0082] 深度卷积神经网络通过几层交替的卷积层、池化层获得高度抽象的特征图,之后把所有的特征图拉成一维纵向量并依次首尾相接,将其作为最终提取到的特征向量。最后的池化层连接一个权值可微的分类器,如全连接层的神经网络、多项式逻辑回归分类器及其扩展Softmax分类器对学习到的特征进行分类。随着学者们的进一步研究,如今甚至可应用权值不可微的分类器,如支持向量机(SVM)对特征进行分类。
[0083] 3.2深度卷积神经网络的训练
[0084] 由于反向传播(BP)算法和
梯度下降法实现简单,且能够收敛到更好的局部最优值而成为训练深度卷积神经网络的通行方法。该训练方法调整卷积核和分类器的参数以使整个网络的代价函数,即输出与标签值的平方误差最小化。由于扫描所有参数的时间成本太高,小批量训练方法常被用于
加速模型训练。
[0085] BP算法一次完整的计算包括激励传播和权重更新。前向传播和反向传播是激励传播的两个主要步骤。前向传播阶段是将输入图像送入网络,经过卷积层、池化层和分类器获得整个网络的输出。反向传播阶段是求得代价函数F后,计算代价函数对各个隐含层参数的偏导数。由于深度卷积神经网络中,代价函数是隐含层权值的隐函数,为计算导数需使用微积分的链式法则。
[0086] 每个卷积层m都会接一个池化层m+1,要求得m层每个神经元对应的权值更新,需求得每个神经节点的灵敏度s。其计算公式如下
[0087]
[0088] 其中up(x)是将第m+1层的大小扩展为和第m层大小一样,β是下采样层中的权重。u表示神经元j的输入,f'(·)表示激活函数的偏导数, 表示每个元素相乘。求出灵敏度后可计算卷积层中代价函数对各训练参数的梯度,其公式如下
[0089]
[0090] 其中 表示特征图 中与卷积核 逐元素相乘的图像块。
[0091] 计算m+1层池化层梯度时,需找到灵敏度图中给定像素对应于上一层的灵敏度图中的哪个区域块。在Matlab中池化层灵敏度的计算可通过以下公式实现,即[0092]
[0093] 其中第m+2层为卷积层。之后可求得池化层中代价函数对各训练参数的梯度,其公式如下
[0094]
[0095] 其中
[0096] 在权重更新时,采用近似的最速下降法更新权值和偏置值,利用以下公式计算参数的更新值
[0097]
[0098] 其中η为学习率。
[0099] 4试验验证与分析
[0100] 实验中所用计算机的
硬件主要参数:AMD Ryzen 3.60GHz CPU,32.0GB内存,软件环境为Matlab R2015b。
[0101] 4.1参数讨论
[0102] 课题组通过将扣件检测系统运输至高速铁路现场的方式获得了大量CRTSⅡ型双块式无砟轨道弹条图像数据。为方便确定卷积神经模型中的学习率α以及批量训练样本的数量n,从建立的96000张CRTSⅡ型双块式无砟轨道弹条图像数据库中选取8000张图像作为训练集,其中正常扣件、上侧扣件断裂、下侧扣件断裂、两侧扣件断裂的图像各2000张。
[0103] (1)学习率对模型误差收敛速度的影响
[0104] 在讨论学习率对模型收敛速度影响时,暂时将批量训练的数量n设置为50,即每次训练前都会从训练集中随机选取50张图像进行计算。学习率α分别设置为0.2、0.3、0.4、0.5、0.6、0.7、0.8,共七种训练工况。通过试算,发现卷积神经网络模型在
迭代计算3000多次后有开始收敛的趋势,因而在几种工况的模型训练中均只迭代计算4500次。
[0105] 七种工况下模型训练后的结果如图8(a)所示。由图可以看出,当学习率从0.2逐渐增加到0.6时,模型的误差收敛所需的迭代计算次数逐渐减少。然而当学习率为0.7时,模型的误差却在3700次计算后才开始收敛。只迭代计算4500次时,学习率为0.8的工况中模型误差刚开始进入收敛阶段,为此,重新对模型进行训练,此次将迭代计算6000次,训练后的结果如图8(b)所示,由图可看出当学习率从0.7增加到0.8后,模型误差收敛速度变得更加缓慢。学习率为0.7和0.8时收敛速度变慢的一个主要原因是在模型误差在接近误差曲面的最小值时,较大的学习率使得权重更新时的参数变化值较大,从而跨过了误差曲面上较窄的“凹坑”,训练出现微小的震荡,这样便增加了误差收敛时所需的迭代计算次数。因此可得出以下结论:学习率越大越有利于提高模型误差收敛速度,当学习率超过该范围后,模型误差收敛速度减小。学习率为0.6和学习率为0.5时,模型误差的收敛速度相近,鉴于较大的学习率有利于避免模型误差收敛到局部最小值,因而在后续的训练中将学习率设置为0.6。
[0106] (2)批量数量对模型误差收敛速度的影响
[0107] 在讨论批量数量对模型误差收敛速度的影响时,将学习率设为0.6。批量数量n分别设置为70、60、50、40、30五种工况,之后利用训练集对模型分别进行训练。五种工况下卷积神经网络模型训练的结果如图9所示。在五种工况中,模型的误差变化均可分为四个阶段:①第一次快速下降阶段。在本阶段,模型误差较大,且在完成每次迭代后误差的变化情况也较大。②较长一段的平稳阶段,在本阶段模型误差在迭代次数增加的情况下基本不变,均保持在0.375左右。③第二次的快速下降阶段。④误差收敛阶段。在批量数量参数为70、60、50、40、30的五种工况中,模型的输出误差在迭代计算了2180次、2420次、2450次、2600次、2650次后分别进入了第二次的快速下降阶段。由此可知批量数量的值越大,模型误差的收敛速度越快。
[0108] 批量数量的值越大越有利于提高模型误差的收敛速度,但批量数量值对模型完成一次训练(一次完整的前向传播、反向传播和权重更新)所需的时间有较大的影响。在五种工况下模型完成一次训练所需的平均时间的统计结果如图10所示。由计算结果可知,批量数量的值与模型完成一次训练的时间是正相关关系。当批量数量的值从40变为50时,模型完成一次训练的时间变化值最小。另外,批量数量值较大时对计算机的内存消耗较大,再结合批量数量对模型收敛速度的影响分析,本发明认为批量数量n的最佳值为50。
[0109] 4.2扣件状态识别测试结果
[0110] (1)CRTSⅡ型双块式无砟轨道弹条图像数据测试
[0111] 本发明用于实验测试的图像来于在高速铁路现场采集的96000张CRTSⅡ型双块式无砟轨道弹条图像数据库,其中弹条正常、弹条上侧断裂、弹条下侧断裂和弹条两侧均断裂的图像各24000张。由于卷积神经网络的训练需要大量的数据样本,因而在每类图像中选取20000张弹条图像用于模型的训练,其余的用于算法测试。训练集中包含80000张图像,测试集中包含16000张图像。
[0112] 基于上述的参数讨论结果,测试时将学习率设为0.6,批量数量设为50。训练时将迭代计算次数设置为4500次。大约花费57小时便可完成整个卷积神经网络模型的训练,模型在完成第一次训练后的误差为0.62765,之后逐渐减小。在完成4500次计算后,模型误差下降到0.00142。
[0113] 完成模型训练后分批次将测试集中的待测试图像输入模型进行识别分类,测试结果如表1所示。本发明提出的卷积神经网络识别算法能够完全准确地识别出四种状态的弹条子图像,识别准确率为100%。
[0114] 表1 CRTSⅡ型双块式无砟轨道扣件图像实验结果
[0115]
[0116] 为方便比较现在主流的几种扣件状态分类识别方法,曾有学者将其几种方法一一复现并使用同一个扣件图像测试集进行实验。表2展示了四种算法的实验结果。表中算法一是提取边缘特征后采用临近算法分类识别;算法二是提取方向场特征后用模板匹配方法分类;算法三是提取Harr-like特征后用Adaboost方法分类;算法四是提取IEOH_MSLBP融合特征后用贝叶斯压缩感知模型进行分类。算法五是本发明提出的HOHG特征和支持向量机的方法。相比之下,本发明的卷积神经网络扣件状态识别算法明显优于主流几种扣件状态分类识别方法。主要原因是表2中的五种算法均是采用分治策略方法,将扣件图像检测识别的过程主要分解为特征矢量提取和分类器设计两个子问题,在分步求出子问题的最优解后利用递归技术获得原问题的解。这样处理虽然简化了整个问题求解的复杂度,但组合后的各子问题局部最优解对应的不一定是原始问题在全局过程的最优解。卷积神经网络算法强调端到端的学习,将特征提取和分类有机融合,整个卷积神经网络可以从原始训练数据中协同增效地进行学习从而获得最优解。
[0117] 表2几种主流扣件识别算法准确率
[0118]
[0119] 卷积神经网络模型中卷积操作是需要针对每个像素进行计算,且需要从图像的左上方向右下方遍历一次,整个操作需要大量的时间。图11所示模型一的第一层卷积核数就多达36个,其模型基本参数如表3所示,这是模型完成一次训练需要较长时间的主要原因之一。为此,经过多次尝试,将模型一种的
单层感知机改变为多层感知机,并减少前期卷积核的个数,最后再次成功建立如图12所示的卷积神经网络(简称为模型二)。与图11所示的模型一相比,模型二中多了一层神经元个数为200的全连接层,且在初始卷积层中所用卷积核的数量相对较少。模型二的基本参数如表4所示。
[0120] 表3卷积神经网络模型一基本参数
[0121]
[0122]
[0123] 表4卷积神经网络模型二基本参数
[0124]
[0125] 将模型二中的学习率设置为0.6,批量数量设置为50。对模型二进行实验测试时,图像训练集和测试集与模型一的训练集和测试集相同。训练时将迭代计算次数设置为4500次。大约花费19.5小时后便可完成卷积神经网络模型二的训练,模型二的训练时间约为模型一训练时间的34%。模型二在完成第一次训练后的误差为0.4122,之后逐渐减小。在完成4500次计算后,模型误差降为0.0012。
[0126] 完成模型二训练后分批次将待测试图像输入模型二进行识别分类,测试结果如表5所示。模型二也能够完全准确地识别出四种状态的弹条子图像,算法识别准确率为100%。
[0127] 表5卷积神经网络模型二的实验结果
[0128]
[0129] 模型二的识别准确率和模型一的准确率相同,均为100%,但模型二训练的时间成本较小,因而模型二更具有实用前景。
[0130] (2)CRTSⅢ型板式无砟轨道弹条图像数据测试
[0131] 卷积神经网络通常需要大量的数据样本进行训练,室内实尺试验段的长度有限,即使采用重复采集数据的方式,获得的CRTSⅢ型板式无砟轨道弹条图像数据仍显不足。CRTSⅢ型板式无砟轨道弹条与CRTSⅡ型双块式无砟轨道弹条仅在尺寸上有微小的差异,而形状几乎相同。另外,卷积神经网络是模拟人脑进行工作,故在基于CRTSⅡ型双块式无砟轨道弹条图像获得训练好的模型二后,直接将CRTSⅢ型板式无砟轨道弹条图像分别输入模型二进行图像的分类识别测试。在本次实验中,CRTSⅢ型板式无砟轨道弹条图像来于4.3.1中所介绍的数据库,并将该数据库中1200张(每种状态的图像300张)弹条全部归为测试集。模型二对于CRTSⅢ型板式无砟轨道弹条图像的测试结果如表6所示,模型二的算法也能全部正确识别扣件状态,识别准确率均为100%。
[0132] 表6模型二的实验结果
[0133]
[0134] 利用CRTSⅡ型双块式无砟轨道弹条图像训练好卷积神经网络后能成功分类CRTSⅢ型板式无砟轨道弹条图像的主要原因有三个:一是卷积神经网络自身优异的结构使其具有很强的
图像处理能力;二是两种弹条图像的差异性较小;三是输入模型的测试图像质量均较好,且没有背景信息的干扰。由此可见,基于卷积神经网络的扣件状态识别算法对其他种类的弹条型铁路扣件具有一定的普适性。
[0135] 以上所述,仅为本发明较佳的具体实施方式,本发明的保护范围不限于此,任何熟悉
本技术领域的技术人员在本发明披露的技术范围内,可显而易见地得到的技术方案的简单变化或等效替换均落入本发明的保护范围内。