杨 凯,罗 帅,王 勇,高晓蓉,彭建平,蒋天赐
(1.西南交通大学 光电工程研究所,成都 610031;2.早稻田大学 机械工程学院, 福冈 8080135)
在线结构光测量系统中拍摄的图像可能会因为光源质量、光线散射、成像设备的点扩散等原因,出现背景噪声、毛刺、亮斑、局部过亮或过暗等问题。这对于激光条纹中心的提取非常不利,加大了测量难度。在铁路运行系统中,列车轮对的测量是基于结构光测量技术发展起来的。图1为光截止图像测量方法及测量曲线,激光线光源沿一定角度投影到车轮踏面,会形成包含车轮外形尺寸信息的光截曲线,用高分辨率面阵CCD(电荷耦合器件)摄像机拍摄车轮外形光截曲线,经过图像采集可获取车轮外形轮廓及关键外形尺寸等信息。因此,激光条纹中心线的提取是精准检测列车轮对的关键因素。
图1 光截止图像测量方法及测量曲线
成像系统接收到的光线由光源的漫反射光、环境光以及镜面反射光等3部分组成。当轮对表面某处发生镜面反射时,反射光线和成像系统恰好在一条直线上,大量光线进入成像系统,则该位置的图像会特别亮[见图2(a)]。反之,当反射光线和成像系统不在一条直线上时,只有少部分光线进入成像系统,该位置的图像就会如图2(b)所示,局部地方会过暗,因此轮对表面的镜面反射光会直接影响激光条纹图像的明暗,进而影响测量精度。除此之外,环境光也会对拍摄带来一定的影响,如图2(c)所示;另一方面,激光打在列车轮对边缘,光线会被遮挡,也会对拍摄的照片产生一定的影响,如图2(d)所示,光线被遮挡,激光条纹出现中断。在测量过程中,均匀的漫反射光线经过成像系统生成的图像,能够较好地保持轮对的物理特性,而不均匀的漫反射会导致光条明暗分布。因此,要选用一种良好的分割方法把前景图像和背景分割出来,目前采用的图像二值化、光条骨架化以及阈值法分割等方法的分割效果都不理想[1]。笔者提出了基于深度学习的方法进行激光曲线提取,采用U-Net网络模型对激光曲线进行精确分割。以构建模板的方式对分割后的图像采用灰度重心法达到亚像素的提取。
图2 不同影响因素下的成像系统检测曲线
目前,激光条纹中心的提取方法有很多,大致可以分为像素级提取和亚像素级提取。其中,像素级提取最常见的是极值法;极值法要求激光条纹的灰度分布成理想高斯分布,由于受到环境噪声的影响,列车轮对表面的激光条纹灰度分布并不是理想的高斯分布。另一方面,列车轮对的检测环境信噪比较低,该方法难以适用于动态环境下列车轮对激光条纹图像的提取。亚像素提取法中最为常见的就是阈值法,阈值法是一种骨架提取的方法,其定位精度差;并且阈值法往往考虑不到条纹的方向性,在条纹变化较大的地方容易发生误判。总的来说,传统的激光条纹中心提取对于亮斑、不连续点、灰度值较低地方的提取效果不是很理想。图3为列车轮对激光条纹的灰度分布特征图。激光条纹图像如图3(a)所示,可以看出大部分区域为黑色背景,光条的灰度呈现出不均匀分布,如图3(b)所示。从图3可以看出,列车轮对激光条纹灰度分布并不呈现严格的高斯分布,灰度分布明暗不均,在这种情况下,传统的提取方法难以得到较好的结果。由于大部分图像为无效信息,并且受噪声干扰,所以首先要将光条区域从背景图像中分割出来。在外界干扰较小的情况下,可以通过阈值法分割光条区域,但是在复杂多变的环境下,无法找到合适的阈值将激光条纹从背景中分割出来,因此需要选用合适的分割方法。整个过程的流程图如图4所示,首先用U-Net网络进行目标分割和图像增强,然后再分区域统计法线方向,最后再用灰度重心法提取激光条纹中心。
图3 列车轮对激光条纹的灰度分布特征
图4 激光条纹提取流程图
深度学习神经网络是机器学习的一个新的研究方向,其解决了多项应用中复杂的模式识别难题,使得人工智能相关技术取得了很大进步。在目标分割领域中,基于深度学习算法提出了许多比较经典的网络模型,如U-Net网络模型。笔者采用经典的U-Net网络模型进行激光条纹分割。U-Net网络模型如图5所示,U-Net网络模型主要分为上采样和下采样两个部分。下采样主要利用连续的卷积池化层提取图像中的特征信息,并逐步将特征信息映射至高维。整个网络的最高维是整个图像中丰富的特征信息,与全卷积网络(FCN)不同,U-Net模型并没有将其池化层直接上采样至与原图大小一致的输出图像,而是通过反卷积,将高维特征再次向低维映射,为了增强分割的精度,映射过程中会将同维度下收缩网络中与其维度相同的图像进行特征融合,由于在融合的过程中,维度会变成原维度的2倍,此时需要再次卷积,以保证处理过后的维度与融合操作之前的维度相同,以保证再一次的反卷积后能够和同维度下的图像进行二次融合,一直到最终能够与原图像的维度相同时输出图像。 在这种网络模型的训练中,能够满足在较小的数据集中提取出较为精确的分割结果。由于列车轮对激光条纹图像受到环境的干扰,存在各种噪声,因此选择用U-Net网络模型进行目标分割。
图5 U-Net网络模型
用300张1 236像素X1 624像素的列车轮对数据集作为训练集训练网络,80张1 236像素X1 624像素的列车轮对数据集作为验证集,调节超参数。将网络模型训练好后,最后用30张1 236像素X1 624像素的列车轮对数据集作为测试集。图6为基于U-Net网络的条纹分割结果。左边是输入图像,右边是经过训练好的网络模型预测结果。从图6可以看出,在没有输入网络之前,图像存在许多背景噪声,经过网络预测后的图像是基本不含背景噪声的,因此U-Net网络能有效地滤除背景噪声和无效信息, 这将有利于后续准确地提取激光条纹中心。
图6 基于U-Net网络的条纹分割结果
研究发现,沿着光条法线方向提取激光条纹中心能得到较好的效果。传统的模板法提取激光条纹中心的做法主要是构建横向、纵向、左斜45°、右斜45°等4个模板,以保证覆盖激光条纹的各个方向,每次计算时需要同时代入4个模板进行交互运算,极大地提高了运算量,同时也很难准确地找到激光条纹中心[2]。在此基础上,采用梯度直方图来统计法线方向,能在降低算法复杂度的同时提高算法的精度。考虑到激光条纹的方向性,把走向相同或者近似相同的地方,划分成一个目标区域。根据列车轮对图像统计的结果,可以将列车轮对条纹区域划分成4个目标区域。图7所示为按照梯度方向将列车条纹图像目标区域划分的4个子区间,分别标记为R1,R2,R3,R4,每个子区间的法线方向分别为μ1,μ2,μ3,μ4[3]。这种做法提高了算法的速度,同时也提高了算法的精度。先分区域统计梯度方向,根据梯度方向获取每个目标区域法线的主方向,然后在法线方向上构造模板,初步找到光条中心,最后再利用灰度重心法进一步提取激光条纹中心。根据梯度的定义,列车轮对条纹图上任一点像素值梯度可以用横向坐标x和纵向坐标y的微分之比来表示,如式(1)所示。
图7 列车条纹图像目标区域划分的4个子区间
(1)
式中:G(i,j)为任意像素值;α为该像素值梯度方向与竖直方向的夹角;x,y分别为沿着法线方向的横坐标与纵坐标。
确定每个目标区域内的梯度方向后,近似认为该梯度方向就是目标区域的法线方向。最后根据所找到的法线方向构造相应的模板,该方法更符合实际情况,同时也减少了耗时的模板计算和匹配问题。图8为在目标区域R2建立的方向模板。
图8 目标区域R2所对应法线方向的模板
对于亮度不均匀的目标,传统的灰度重心法是按目标光强分布求出光强权重质心坐标,将灰度值分布中的质心记为光条纹的中心。为了提高激光条纹中心的提取精度,在该基础上进行了修改。先根据每个目标区域的法线方向构造模板,然后用所构造的模板和该对应的区域进行互相关运算,可以初步找到光条的中心位置。最后再利用灰度重心法提取激光条纹中心,以R2区域为例,激光条纹中心提取的方法如图9所示,且算法如式(2)所示。
图9 构造模板提取激光条纹中心的方法
(2)
式中:φ(i,j)为(i,j)处沿模板方向的所有像素值之和;E(i,j)为(i,j)沿模板方向的像素灰度值;S(m,n)为模板大小为MXN的元素;R(i,j)为目标区域S2在(i,j)这一点的放大图。
这里按行进行光条中心的提取,则第i行的激光中心(Ii,Ij)可以表示为
(3)
根据构造模板初步得到光条中心后,沿着光条的法线方向μ2,用灰度重心法进一步提取激光条纹中心的亚像素坐标,则进一步提高了激光条纹提取的效率。
在初步得到激光条纹中心的基础上,对该中心坐标(Ii,Ij)上下左右分别扩展Cj和Ci个像素,在行上可以得到(Ii-Ci,Ii+Ci)扩展区间,在列上得到(Ij-Cj,Ij+Cj)扩展区间,分别在行上和列上使用灰度重心法,可以得到中心坐标如式(4)所示。
(4)
经过U-Net网络进行目标分割,可以有效地去除背景噪声和环境光对激光条纹提取带来的影响,为后续激光条纹中心提取的准确性奠定了基础。没用U-Net网络进行目标分割提取的激光条纹中心结果如图10(a)所示,没用U-Net网络进行目标分割,背景噪声影响了激光条纹的提取。采用U-Net网络进行分割,消除了背景噪声和其他因素的干扰[见图10(b)]。因此,用U-Net网络进行目标分割,可以提高提取激光条纹的准确度。
图10 用U-Net网络进行目标分割提取的激光条纹中心结果
利用深度学习目标分割算法,有效地去除了环境噪声和背景光反射对激光条纹中心提取带来的影响,降低了激光条纹中心提取的干扰,提高了算法的稳定性。传统算法去除噪声和背景光反射主要是对图像进行卷积、膨胀、腐蚀、灰度化、二值化、滤波等处理,这些操作改变了原始图像的像素值,因此会给后续的激光条纹中心提取带来一定的误差。同时也降低了单幅图像的提取效率,不便于图像的实时处理。用神经网络分割图像,再对分割后得到的激光条纹图像分区域统计法线方向,以构建模板的方式初步提取激光中心,然后再用灰度重心法达到亚像素的提取。该方法减少了耗时的计算量,同时也提高了精度。