宋坤骏 中国铁路上海局集团有限公司科研所
高铁作为长三角地区的城际客运铁路线网的主骨架,其安全运营关系到人民生命财产安全,对经济社会健康发展具有重要意义。对轨道巡检采集回的图像数据的正确处理,其基础是对原始数据的正确分割和拼接。
CRTS1 型轨道板按照板长可以分为5 扣件,6 扣件,8 扣件,9 扣件长,其中以8 扣件和6 扣件长最为常见。原始图片数据随车采集,其宽高固定,像素宽度为2048,像素高度为2087,原始图片中可能出现轨道板间缝隙也可能不出现。(图1 中原始图片统一缩小至100×100 大小来展示。)图1 中第1,2 列是下行线路1相机采集到的数据,第3 列是下行2 相机采集的数据。上行线路图片数据是类似的,算法也相同。
切割、拼接完成的 5 扣件,6 扣件,8扣件长轨道板样例图片如图2 所示(图2 中完整轨道板图片统一缩小至200×100 大小来展示。),图 2 中第 1 第 2 列是1 相机采集的图像拼接而成,第3 列是2 相机采集的图像拼接而成。不同相机采集的图像的拼接算法是相同的,切换相机时仅有2 个参数需要修改。
此外,原始数据中还包含道岔图像,道岔没有规律间隔,清晰明确的板缝,无法拼接成完整的轨道板,因而需要在切割前单独提取,部分道岔样例图片如图3 所示。
图3 原始道岔图片数据
原始数据按照采集时第一张图片的采集时间分为多个文件夹。原始数据拼接为完整轨道板的关键在于将图中的板缝准确地找出,而道岔段中不存在完整轨道板,因而运行切割拼接算法前将所有连续道岔段找出,将每一道岔段的末尾图也就是下一非道岔段的起始图中板缝y 坐标作为算法的一个输入参数。对每一非道岔段执行以下算法,算法在matlab 环境中执行。
(1)拼接多张原图直到长度大于9扣件板长上限
(2)提取原图感兴趣区域为原图某两列之间的长条状子图
(3)将子图二值化,分别在6,8,5,9扣件长度附近区域求区域内二值图行和
(4)优先统计6,8 扣件附近区域行和小于阈值的行数
(5)6(8)扣件附近存在满足条件的行且8(6)扣件附近不存在满足条件的行,则板缝在 6(8)扣件长处
(6)若6 扣件和8 扣件附近均存在满足条件的行,则比较6 扣件附近最黑行和8 扣件附近最黑行哪个行和更小,小者为板缝所在
(7)若还无法确定板缝,则在板长下限以后每一行找二值图行和小于一定阈值的,认为这种行中行和最小的行为板缝所在
(8)若还无法确定板缝,则在5,6,8,9扣件长附近找原图行和最小行,比较四个最小值,其中最小者认为是板缝所在。
运行上述算法后,每一非道岔段被分割为一块块完整的轨道板,但是算法无法保证100%的切割准确率,由于轨道板的连续性,一块板切错会递推地影响后续板的准确性。100%准确切割对于板号识别有重要意义,因为在完全正确切割的前提下,每一非道岔段中的板号无需识别,而可以根据该段初始板号计算得出。切割错误的类型包括板缝泛白,将框架板/引接线/导接线误认为板缝,递推错误(因为上一张错误所以本张图也错误)等(具体见图4)。作者发现对于所有的切割错误类型可以用统一的补丁程序予以纠正,从而达成数据库中图片数据100%正确的要求。作者编写的这个补丁程序对于纠正过程中出现的板数增多或减少的情况具有很好的适应性。它的原理在于,不论对于什么类型的错误,总能找出一块起始板,其上板缝是切割正确的,后面跟着切错的板都是递推错误类型,因此可以手工读出这一段连续出错板的长度,输入补丁程序中予以纠正。为了减少补丁程序的工作量,可以运用的技巧包括查错时将1,2 相机拍摄的图片左右拼合,方便根据一侧有导接线/引接线而另一侧无导接线/引接线等标志物判断错误板段的起始板号,还可以调节切割算法参数减少出错板数。经反复试验,取合适的阈值能够有效降低出错板数。
综上,通过先后运行轨道板切割拼接算法和补丁程序,就可以完成CRTS1型轨道板的100%正确分割。
图4 切割错误类型,从左到右依次为:板缝泛白,框架板误认为板缝,引接线误认为板缝,递推错误
本文综合运用二值化等经典图像处理手段实现了CRTS1 型轨道板图像的切割拼接,原算法准确率在98%以上,通过补丁程序达到了100%准确率。轨道板的完全正确分割有望应用于工务的多种应用场景中。