基于图像处理的转辙机接点组打入深度提取算法
Penetrating Depth of Contact Group Extraction Algorithm for Switch Machine Based on Image Processing
DOI: 10.12677/CSA.2021.1112292, PDF, HTML, XML, 下载: 318  浏览: 610  国家自然科学基金支持
作者: 杨晨威, 徐尚志, 李志鹏:同济大学信息与通信工程系,上海
关键词: 转辙机图像测量图像滤波颜色分割Switch Machine Image Measurement Image Filtering Color Segmentation
摘要: 转辙机是铁路上改变轨道方向,反映道岔位置的重要器械,转辙机腔内接点组中动接点与静接点的打入深度是判断转辙机是否正常工作的重要指标。由于转辙机内部结构非常复杂,传统工业物件的图像测量方法并不适用,为了提高转辙机检修的准确性、减小人力开销,本文设计了基于图像处理技术,针对广泛使用的ZD(J)9型转辙机的内部打入深度的测量算法。首先该算法通过模板匹配的方式准确定位整个接点组区域,排除其他区域结构的干扰。同时针对拍摄图像可能存在的倾斜问题,提出了基于图像仿射变换的预处理算法将倾斜的接点组图像校正。从图像距离到实际距离需要一个比例尺进行换算,算法在校正后的图像中选取长度明确、畸变较小的物体长度作为比例尺计算的参照物。为进一步精确定位动接点和静接点的位置,设计了基于meanshift的滤波算法,HSV色彩空间中的颜色阈值分割算法,以及按照数字图像连通域的去噪算法。最后,在精确定位的基础上加以一定误差补偿,进行参数计算。本文算法在不同拍摄高度下得到的图像中进行实验,对比了不同拍摄高度下的参数提取效果,对误差原因进行详细分析。
Abstract: Switch machine is an important instrument to change track direction and reflect switch position in railway. The penetrating depth between dynamic contact group and static contact group is an important index to judge whether switch machine worked normally. Owing to complicated internal structure of switch machine, traditional image measurement methods of industrial objects are not applicable. In order to improve the accuracy of switch machine maintenance and reduce the cost of manpower, this paper designed an algorithm for measuring the internal penetrating depth of ZD(J)9 switch machine based on image processing. First of all, this algorithm can accurately locate the whole contact group region by means of template matching, which eliminated the interference of other region structures. Meanwhile, a preprocessing algorithm based on affine transformation is also proposed to rectify oblique images, after which the object length with clear length and small distortion will be selected as the reference for scale calculation used for converting image distance to actual distance. Some methods help further accurately locate the positions of contact groups including meanshift filtering, color threshold segmentation in HSV color space and a denoising algorithm based on connected domain were also proposed. Finally, with the help of error compensation algorithm, the calculation result can be more precise. This algorithm was tested on images obtained at different shooting heights, revealing the effect of parameter extraction by comparison. The causes of error were also analyzed in detail.
文章引用:杨晨威, 徐尚志, 李志鹏. 基于图像处理的转辙机接点组打入深度提取算法[J]. 计算机科学与应用, 2021, 11(12): 2872-2889. https://doi.org/10.12677/CSA.2021.1112292

1. 引言

图像处理技术在今天已经应用于许多方面,在工、农业领域的应用主要包括检测、测量、机械控制等方面,其中图像测量的目的就是用高精度、高速度的测量算法替代传统的人工测量,减少人力资源的消耗并且避免人与物件的直接接触,具有非常明显的优势 [1] [2] [3] [4] [5]。图像测量通常会基于精密的光学仪器如CCD、CMOS相机对物件进行拍摄,通过数字图像处理中的边缘检测、特征提取等算法计算相应的参数。同时为提高图像测量的精度,许多学者也对图像测量的误差来源 [6] [7] 进行广泛的研究。

目前的图像测量对象大多是几何形状简单,便于得到边缘特征的小尺度单一目标,如轴类物件、方形物件 [8] [9] [10] [11];同时还有体积较大的大尺度物体如树木、汽车 [12] [13] [14] 等,通常会借助三维重建进行大尺度测量。但工业上包括转辙机在内的许多工业器械,由于内部结构复杂,特征较多,通过它们的图像进行测量也并不容易。以转辙机为例,基于图像处理算法测量其内部的接点组的打入深度,要求算法对接点组进行比较精确的定位得到准确的图像距离,再精确计算图像的比例尺从而将图像距离转换至实际距离。本文将对ZD(J)9型转辙机内部结构进行分析,结合数字图像处理的经典算法,设计开发一套具有测量高精度、图像易获取、低成本等优点的测量算法。

2. 转辙机介绍

转辙机在工作时,转辙机内部接点组移动、分离牵连整体杆运动,带动电液装置改变道岔,但如果初始位置存在较大误差,很可能造成道岔转动不足的严重情况,因此接点组是否处在正确的工作位置尤为重要。动接点组在静接点组之间移动,通常可以通过动接点组与静接点组金属簧片的打入深度来判断动接点组的一次移动是否到位,即动接点组对连动杆的牵引是否正常进行,因此对转辙机内部图像测量的主要测量参数就是动接点组与静接点组之间的打入深度,一般认为打入深度大于4 mm时转辙机接点组处在正常工作状态下。ZD(J)9型转辙机是中国铁路通信信号集团(CRSC)设计的转辙机,是目前应用非常广泛的一种转辙机,其内部的接点组安装在褐色木制底座上,接点组由动接点柱、静接点接触簧片、静接点螺丝螺母、底座等组成,结构复杂且数量较多,拍摄转辙机的内部俯视图需要将所有零件结构包括在内,这使得图像的整体尺寸较大,局部图像质量受到限制。

3. 转辙机参数提取算法设计

ZD(J)9型转辙机内部重要部件和参数都集中在自动开闭器(又称接点组,下同)上。图1为转辙机俯视图像,接点组为蓝色框中、安装在红色支架上的结构。一个转辙机中通常有左右两组动接点组,一组动接点组在其两侧静接点组之间运动,静接点组上的金属簧片可以咬合动接点柱,达到稳定状态。

Figure 1. Internal contact group of switch machine

图1. 转辙机内部接点组

Figure 2. Basic flow chart of the algorithm

图2. 算法基本流程图

相较整个转辙机来说,接点组的区域较小但结构复杂,本文设计算法的思路是减少图像冗余信息,通过特征提取分离出关键区域的位置,从而达到测量计算的目的。本文设计算法的完整流程图如图2所示,首先通过模板匹配算法,截取原始图像中接点组的大致位置;同时利用霍夫变换检测接点组红色支架边界处的长直线,计算这些直线的平均倾斜角作为整张图像的倾斜角,进而通过图像仿射变换将倾斜图像进行校正。对校正得到的图像,本文还采用了使图像颜色特征更突出的均值漂移滤波算法,在滤波降噪的同时,消除大部分可能存在的局部差异色块。在此基础上,计算了图像畸变补偿系数和比例尺,并在HSV色彩空间中将接点组图像二值化分割,结合基于连通域去噪和形态学优化图像,对二值化分割图像计算打入深度在图像中的像素距离,结合畸变补偿系数和比例尺计算得到打入深度的实际距离。

3.1. 截取接点组的位置

为了截取接点组区域图像,本文设计了基于相关系数的模板匹配算法。

模板匹配法遍历原图像中的每个可能位置,比较每一个位置与已知模板的特征相似度,匹配的结果用一个相似度函数来表征。当匹配得到的相似度达到一定值时,就有足够把握认为匹配到了目标。算法用T (Template)表示模板图像,用I (Image)表示原图中的待匹配图像。预先设定的模板图像高度为h,宽度为w,匹配相似度函数为R。 T i ( x i , y i ) 代表匹配模板中的每一个像素点, I i ( x i , y i ) 则代表待匹配图像中的每一个像素点。算法的核心是对匹配相似度函数的构造,该函数是基于统计学中相关性检测的理论来设计的。常见的匹配函数有3类,包括平方差匹配法(最佳的匹配值为0,寻找匹配函数的最小值)、相关匹配法(取二者乘积,寻找匹配函数的最大值)、相关系数匹配法(类似于统计学相关系数,1表示最佳匹配,−1表示最差匹配),此外还有各自归一化之后的3种形式,与不做归一化处理的差异并不大。

1) 平方差匹配法:

R ( x , y ) = x , y ( T ( x , y ) I ( x + x , y + y ) ) 2 (1)

2) 相关匹配法:

R ( x , y ) = x , y ( T ( x , y ) I ( x + x , y + y ) ) (2)

3) 相关系数匹配法:

R ( x , y ) = x , y T ( x , y ) I ( x + x , y + y ) 1 w h x , y ( T ( x , y ) x ' , y ' I ( x + x , y + y ) ) (3)

基于以上的三种相似度评价函数,可以计算得到一个最佳匹配图像。上述的公式中,平方差匹配与相关匹配法的匹配函数比较简单、运算速度快,相关系数匹配法的匹配函数最复杂也最符合统计学相关性检测特性,但带来了更大的时间开销。在实验过程中,对以上的几种相似度评估函数均进行了测试,结果显示相关系数匹配的效果最佳,匹配得到的图像能够包括模板图像的边界,使得截取得到的图像能够囊括所有模板特征信息。

对于图像尺度没有较大变化的转辙机图像,由于接点组模板图像的面积较大、特征丰富,原始模板尺寸可以略大于接点组图像,图像即使存在一定程度的倾斜角度,也能够完整地识别到接点组图像;模板匹配的示例效果如图3所示。

3.2. 图像预处理

在一般情况下,拍摄时存在抖动、虚焦等情形,因此图像样本中加入了许多倾斜、对焦不准的图像,这类图像由于有一定的旋转角度,在图像定位时会带来误差。为模拟这类可能出现的图像,在拍摄时刻意拍摄了与镜头存在一定夹角的倾斜图像(如图4所示)。针对此类倾斜图像的预处理,将原先存在的倾斜角尽可能减小是十分必要的,同时为了提高图像质量,使后续定位有更好的效果,还需要对图像进行初步滤波降噪。

Figure 3. Template image, image to be matched and matching result (from left to right)

图3. 模板图像、待匹配图像、匹配结果(从左至右)

Figure 4. Oblique image

图4. 倾斜的图像

3.2.1. 图像旋转角度校正

本文对倾斜的图像采用边缘检测与霍夫变换对红色支架的边缘长直线进行检测,通过计算长直线与水平线的平均夹角,借助仿射变换 [15] 将图像变换回正常视角,校正算法的详细过程如表1所示。

为了得到旋转角度,在已经截取的接点组图像中找到一条比较明显的直线,显然,图中红色支架的边界是非常明显的直线,通过对原始图像进行边缘检测,并借助霍夫变换可以找到这条较长、较为明显的直线。

边缘检测是一个非常悠久的问题,经典的边缘检测算子有Sobel算子、Prewitt算子、Laplace算子、Canny算子等,本文对几种算子都进行了实验,检测效果如图5所示。其中Canny算子 [16] 采用非极大值抑制和双阈值限制算法的思想,具有边缘单一性好、干扰噪声少的优点。值得说明的是,边缘检测的结果图通常会引入大量局部微小噪点,因此使用基于连通域的去噪方法,去除小于一定面积的像素点。

Table 1. Rotation correction algorithm

表1. 旋转校正算法

(a) Sobel算子 (b) Prewitt算子 (c) Laplace算子 (d) Canny算子

Figure 5. Detection result of four operators

图5. 4种边缘检测算子检测效果

接点组区域中,红色支架边缘非常明显,因此选择使用基于概率的霍夫变换检测该边缘直线。通过对图像中红色支架像素距离的测量以及对不同参数设置下的检测实验,得出了比较合适的检测参数。直线检测的距离分辨率设为1个像素,角度分辨率设为 π 180 弧度,确保了检测的精度最大化。同时基于图中比较明显的红色直线的长度与间隔,将检测的最小直线长度以及两条可能的直线之间的最大间隔均设为150像素。在数据集中图像的倾斜角一般小于45˚,为排除异常直线,在检测到的直线中筛选斜率处在 [ 3 , 3 ] 区间内的直线,计算这些直线的平均倾斜角作为整张图像的倾斜角度。图6展示了霍夫变换检测红色边缘直线的检测效果,不同的倾斜角度下均能检测到边缘的长直线。

Figure 6. Line detection on the edge of red bracket

图6. 红色支架边缘直线检测

在得到图像的倾斜角度之后,通过图像的仿射变换,即可将图像校正为水平的图像。图像的仿射变换是指原始图像进行线性变换后,再加上一个偏移量的结果。其中旋转矩阵是基于旋转角度和缩放系数变换得到的2 × 3矩阵,在此不需要改变图像尺度,设定旋转中心为原图中心,进行旋转校正。

校正图像R与原始图像I的线性关系为:

R ( x , y ) = I ( M 11 x + M 12 y + M 13 , M 21 x + M 22 y + M 23 ) (4)

其中,M为旋转矩阵:

M = ( α β ( 1 α ) w 2 β h 2 β α β w 2 + ( 1 α ) h 2 ) (5)

参数w和h为图像的长和宽, α β 则是由图像旋转角 θ 和缩放系数决定的参数,此处缩放系数设为1。

α = cos θ (6)

β = sin θ (7)

本文对拍摄高度为60 cm、80 cm、100 cm、120 cm、140 cm的五组图像进行校正实验,实验规定:当能正确检测出所需直线,并且对图像原有的旋转角度进行校正时,认为是一次成功的图像校正;而如果原图像的旋转角度很小,检测得到的直线的倾斜角也很小,几乎为水平直线时,此时无需进行仿射变换,只要能成功检测到直线,同样认为是一次成功的图像校正。

Table 2. Image correction result

表2. 图像校正情况

图像校正算法的性能测试情况如表2所示,在五组拍摄高度拍摄得到的共551张图像中,校正算法的成功率达到了97.5%,故该算法对于转辙机图像的校正具有很好的效果。

3.2.2. 均值漂移滤波

由于原始图像存在高频噪点,并且还会存在局部光线分布不均等问题,对后续的局部图像识别有不良影响,因此图像滤波是必须要经过的一个步骤。基于数字信号处理的滤波有许多经典的算法,如均值滤波、中值滤波、高斯滤波等基本滤波算法,通过简单的卷积操作实现平滑滤波,此外,均值漂移滤波、高斯双边滤波、导向滤波 [17] 等滤波算法则具有一定的边缘保留功能。

在转辙机图像中,能够区分这些不同零件的特征就是颜色特征,因此需要滤波算法增大颜色识别的可行性。一种针对图像颜色的平滑滤波方法就是均值漂移滤波,它能够对图像的颜色进行平滑,调和图像中分布相近的颜色,同时消除一些比较小的色块区域。该算法的思想来自于图像追踪中的均值漂移算法(meanshift) [18]。均值漂移滤波算法构造了一个物体空间中半径为 r 1 ,色彩空间中半径为 r 2 的球型空间,即图像二维坐标空间 ( x , y ) 和RGB三维色彩空间,以原图像中的任意一点作为球心,形成一个5维球体。在这个高维球体中,计算所有点对中心点的色彩向量和,得到向量和的终点,将原球心移动到终点,完成一次迭代,通过设置合适的迭代终止条件,最后一次迭代的向量和终点的色彩值即为最初球心点的滤波值。当原始图像上的每一个点依次进行滤波后,整幅图像的均值漂移滤波完成。

均值漂移滤波与基于卷积的滤波都是通过一定大小的邻域内像素来对中心像素点进行均衡。二者不同之处在于卷积是以带权求和的方式对像素进行均衡,而均值漂移滤波则是不断在邻域内计算向量和迭代原中心像素值,利用更多的像素影响原有的中心像素值,使得平滑效果更加明显。同时由于局部的图像识别需要精细的边缘,如只利用卷积来进行平滑,仅考虑了不同像素点之间距离因素对卷积和权值的影响,这对边缘处的图像是不利的。图像边缘是像素值差异显著的区域,因此在滤波时对边缘保护非常重要,当邻域内的像素差异过大时,差值大的像素对中心点像素的影响应减小。均值漂移滤波计算向量和时,将三通道像素值和二维图像坐标结合进行中心点像素漂移迭代,具有一定的边缘保留作用。

图7展示了经过算法预处理后得到的接点组图像,包括动、静接点组的局部放大图像。图8图9分别为经过不同滤波算法后接点组图像的放大效果图,经过均值滤波、高斯滤波、中值滤波等线性滤波之后,原始图像整体有一定程度的平滑,但图像边缘变得明显模糊。高斯双边滤波、导向滤波、均值漂移滤波的平滑效果相对明显,并且有效避免了因线性滤波带来的图像糊化。值得说明的是,均值漂移滤波由于迭代次数多,在局部消去了许多小的色块,因此滤波效果最好,同时均值漂移滤波的时间开销也更大。

Figure 7. Contact group image and local magnified images

图7. 接点组整体图像及局部放大图像

(a) 均值滤波高斯滤波 中值滤波 (b) 双边滤波 导向滤波均值漂移滤波

Figure 8. Magnified filtering results comparison of dynamic contact group images

图8. 动接点组图像滤波效果放大对比

(a) 均值滤波 (b) 高斯滤波 (c) 中值滤波 (d) 双边滤波 (e) 导向滤波 (f) 均值漂移滤波

Figure 9. Magnified filtering results comparison of static contact group images

图9. 静接点组图像滤波效果放大对比

3.3. 图像局部分割与降噪

在对图像进行预处理之后,图像的质量有一定程度的提高,可以对接点组进行二值化分割。图像分割是基于图像的特征进行的,数字图像的主要特征包括颜色特征、纹理特征和变换域内的特征,在转辙机图像中,由于零件结构、纹理非常多且复杂,常用的边缘检测和角点检测都没有很好的效果,小波变换等变换域检测和边缘检测的性能也比较接近,无法提供足够有效的识别信息。而颜色识别则是区分不同区域的一个比较直观的特征,动接点组的颜色是带有金属光泽的色彩,动、静接点组底座的颜色则是褐色,因此只要将这两种颜色区域识别出来就能实现局部图像分割,3.2中的平滑滤波也为颜色识别提供了帮助。

3.3.1. 基于HSV色彩空间的图像分割

HSV色彩空间(Hue, Saturation, Value),顾名思义它的三个通道对应着色调、饱和度、明度。色调H通道为角度,取值为0˚至360˚,从红色开始沿逆时针方向依次为0˚红色,120˚绿色,240˚蓝色;饱和度S通道则表示色彩的深浅度,取值范围为0%至100%;明度V通道则称为色彩的明亮程度,取值范围也为0%至100%。HSV空间三通道相互独立,对于色彩的明暗、色调、鲜艳程度有非常直观的表示方式,因此对于图像进行色彩分割通常会在HSV色彩空间中进行 [19]。

基于阈值的HSV色彩空间图像分割方法是通过确定具体的像素阈值,实现对不同颜色区域的图像分割。本文主要对接点组的木制底座和动接点柱进行分割,在数据集中对这两个区域的像素值计算均值与方差,确定了各自的颜色阈值。其中动接点柱区域的色彩阈值为[18:22, 160:200, 200:255],木制底座区域的色彩阈值为[5:15, 130:200, 85:255]。进一步,利用大津算法(OTSU) [20] 进行二值化得到局部图像分割的结果。本文在不同拍摄高度的图像中均使用该阈值进行分割,如图10所示,图像经过颜色阈值分割与二值化后,对于接点组和动接点柱有良好的分割效果。

(a) 接点组木制区域(分割结果及与原图对比) (b) 动接点柱(分割结果及与原图对比)

Figure 10. Binarization and image segmentation based on color

图10. 基于颜色特征的二值化图像分割

3.3.2. 图像降噪

基于颜色阈值的图像分割会因为局部偏差而带来许多噪点,为了使截取的结果更加精确,对图像进行进一步降噪处理是很有必要的。

分割好的图像经过二值化之后出现了许多小的噪点,它们大多游离于主体图像(目标图像)以外,根据图像形态学,像素点之间的连通方式有4连通域和8连通域两种,这些小的噪点就是与主体图像在4连通域意义上分离的连通域。记4连通域和8连通域分别为 D 4 , D 8 ,以坐标 ( x , y ) 的像素点为中心的4连通域和8连通域表示为:

D 4 = { ( x 1 , y ) , ( x + 1 , y ) , ( x , y 1 ) , ( x , y + 1 ) } (8)

D 8 = D 4 { ( x 1 , y 1 ) , ( x 1 , y + 1 ) , ( x + 1 , y 1 ) , ( x + 1 , y + 1 ) } (9)

对二值化图像遍历搜索所有的连通域,删除4连通域定义下面积较小的连通域,就能达到去噪的效果,大多游离噪点都能够完全清除。但是在原图像的边界上还是会有一些毛刺,需要进一步平滑处理。

本文构造2 × 2的矩形卷积核,通过卷积在水平和垂直方向上膨胀图像,选取较小的卷积核能够使图像在最小的变化下获得更加平滑的边界。

图11展示了经过连通域去噪及形态学运算后的图像,容易发现该图像相较于图10已基本没有小面积噪点,并且图像的边缘也更加平滑,许多毛刺也已被剔除。

(a) 接点组木质区域(b) 动接点柱

Figure 11. Result of denoising by connected domain and edge dilating

图11. 连通域去噪、边缘膨胀平滑效果图

3.4. 定位与测量

3.4.1. 接触点的定位

根据动接点柱的二值化定位图11(b),选择每一个连通域的几何中心作为动接点柱的定位点。但是由于拍摄时相机镜头与转辙机两侧存在一定的角度,使得动接点柱与静接点咬合簧片的接触点与动接点柱几何中心会有向左的一定偏移。经过实验,这部分偏移误差在5~10个像素左右。为了找到更加精确的接触点坐标,同时尝试了基于霍夫变换的圆形检测 [21],在右侧四分之一图像的范围内设置合适的检测半径,可以在该区域内检测到三个圆形(如图12所示),取圆心的平均水平坐标作为接触点坐标。经过实验,通过圆形检测计算得到的接触点坐标与图中接触点坐标误差在5个像素内,因此选择该坐标作为接触点的定位结果。

Figure 12. Hough circle detection determines the contact position

图12. 霍夫圆形检测确定接触点位置

3.4.2. 静接点座的定位

打入深度实际上为动、静接点组接触点与金属簧片外侧的水平距离(图13),在图像中不易直接获得,本文采取了间接法进行求解。为了计算动接点与静接点金属簧片的打入深度,需要计算静接点座的水平坐标,即静接点靠近动接点一侧的边界位置,即图14中红色竖线所示。

静接点座靠近动接点一侧的位置为左侧边界坐标,受其他边界影响,左侧边界较右侧边界更不容易求出。考虑到木制区域的实际长度在转辙机出厂时已经确定,通过比例尺换算可以得到图像中的像素距离,因此设计通过求出右侧边界来间接求出左侧边界坐标。右侧边界的检测用到了二值化点密度法 [22],对二值化图像进行列水平扫描,计算每一列像素的有效点密度 ρ

ρ = n w (10)

式中n为二值化图像中每一列像素值为255的像素点数量,w为图像的高度。

通过设置合适的阈值,即可找到右侧边界的坐标,减去木制区域在图像中的像素长度,得到静接点座靠近动接点组一侧在图像中的坐标,在图像中通过间接法求得的静接点底座坐标与图像中的坐标平均误差在5像素左右。此时可计算出静接点组底座与动接点柱接触点之间的像素距离,为二者的横坐标之差。打入深度定义为动接点柱与金属簧片接触点到金属簧片外侧的距离,由于金属簧片外侧到静接点组底座的长度为定值20.5 mm,可以用总长度减去静接点底座到动接点柱接触点之间的距离得到打入深度。

Figure 13. Contact position (black points) and outer horizontal coordinates of metal reeds (red line)

图13. 接触点位置(黑色圆圈)与金属簧片外侧水平坐标(红色直线)

Figure 14. Both sides of static contact group

图14. 静接点座两侧边界

3.4.3. 计算打入深度

将图像距离转换为实际距离实际上是图像坐标向世界坐标转换的过程,但是由于相机的每一次成像都会受相机内参、外参、畸变参数的影响,事实上相机内参可以通过标定法求得,但是相机成像时的畸变参数并不容易得到,尤其是在小尺度图像上,零件彼此位置非常接近,想要直接建立世界坐标到图像坐标的转换关系难度很大。因此本文通过比例尺计算和标定修正系数(经验参数)的方式,化繁为简,求出打入深度的实际距离。

比例尺的计算需要找到图像中合适的定长距离,求出图中的像素距离,再由真实距离相除即可。在转辙机图像中,选择上、下红色支架边缘之间的距离作为标定像素距离,其真实距离经过测量为100 mm,在不同拍摄高度下可得到不同高度图像的比例尺。

此外,由于单目相机镜头成像一定会存在成像畸变,图像两侧的零件会因畸变看起来“被压缩”,尽管难以确定具体的畸变过程,但必须要对这部分畸变误差进行补偿。在原图像中,处于成像平面中央部分的转辙机图像畸变较小,通过比例尺计算得到的实际距离非常接近真实长度,因此预先将图像右侧金属簧片长度与图像中央金属簧片长度的比值作为修正系数。因为二者的真实长度相等,且打入深度包含在金属簧片的长度内,相机成像畸变带来的压缩误差可以量化为二者在图像中的像素距离差异,这样,在计算打入深度时,除以该比值可以进一步降低成像畸变带来的影响。表3为不同拍摄高度下计算得到的畸变系数,可以看出随着拍摄高度的增加,图像的畸变效应降低,用于矫正的系数也随之降低。

记图像整体比例尺为s,红色支架上下边界像素距离为d,右侧和靠近图像中央的金属簧片长度分别为 l 1 , l 2 ,畸变修正系数为k,静接点底座到动接点柱接触点的像素距离为 L p ,其对应的实际距离为 L t ,打入深度的实际距离L可以由式(11)~(14)求得:

s = d 100 ( mm ) (11)

k = l 1 l 2 (12)

L t = L p s k (13)

L = 20.5 ( mm ) L t (14)

Table 3. Distortion coefficients under different heights

表3. 不同拍摄高度计算得到的畸变系数

4. 测量结果与分析

本章将展示算法测量得到的打入深度结果和误差,对误差进行分析,同时还将从拍摄图像和算法原理中分析误差原因。

4.1. 测量结果误差

打入深度的实际测量真值为6.5 mm,接触点到静接点底座的测量真值为14 mm,现对拍摄高度为60 cm,80 cm,100 cm,120 cm和140 cm的五组图像测量,图像数量分别为114、96、107、110、110,总体的测量误差情况如表4所示。

Table 4. Overall error

表4. 总体误差情况

算法测量结果显示,对于不同拍摄高度下的图像,算法能正确进行测量的成功率非常高,总成功率达到99.4%,在排除不能测量的3例图像的情况下,算法测量的平均误差不超过8%,即误差范围为6.5 ± 0.52 (mm),完全能够达到实际误差容限。其中,拍摄高度为80 cm的一组图像的测量误差最小,仅为5.7%。在不能测量的3幅图像中,图像因为镜头的抖动严重,色彩质量很差,导致算法未实现对这3幅图像正确测量。

4.2. 拍摄高度对误差的影响

算法测量结果显示,在不同的拍摄高度下,由单目镜头拍摄得到的图像各不相同。当拍摄高度较低时,由于镜头光心更贴近物体,物距较小,不用大幅调整焦距就能获得完整、清晰的图像,此时的图像质量较好,分辨率较高;但随着拍摄高度不断增大,即物距增大,成像将变小,为了能够捕捉转辙机的局部细节,必须调节镜头的焦距改变成像大小,获得大小合适的成像图片。但是由于焦距的改变,原本较小的图像被放大,图像的局部分辨率将大大降低。

(a) 拍摄高度为60 cm的接点组图像 (b) 拍摄高度为80 cm的接点组图像 (c) 拍摄高度为100 cm的接点组图像 (d) 拍摄高度为120 cm的接点组图像(e) 拍摄高度为140 cm的接点组图像

Figure 15. Images of contact group under different heights

图15. 不同拍摄高度下的接点组图像

图15中能够明显地看出,物距较小时拍摄得到的图像分辨率较高,局部的色彩分布均匀,整体颜色更加贴近真实情况,物距较大时图像分辨率因成像大小人为改变,整体图像质量显著下降。接点组底座的木制区域图像质量下降尤为明显,容易出现存在差异的色块,对颜色特征提取产生影响。图16说明,不同拍摄高度下采用同一阈值进行HSV色彩空间的阈值分割,得到的二值化图像也存在一定的差异。

(a) 拍摄高度为60 cm的二值化分割图像 (b) 拍摄高度为80 cm的二值化分割图像 (c) 拍摄高度为120 cm的二值化分割图像 (d) 拍摄高度为120 cm的接点组图像(e) 拍摄高度为140 cm的接点组图像

Figure 16. Binarization and segmentation image of contact group under different heights

图16. 不同拍摄高度下的接点组二值化分割图像

此外,在物距较小时,两侧的图像会因与镜头存在夹角而产生非常明显的畸变,使得该区域(图17)的图像尺度发生变化。图中金属簧片的像素长度减小了,这也是引入修正系数k的原因。而在拍摄高度较高时,图像两侧的区域与镜头的夹角相应减小,原始畸变效应也随之减弱,因此修正系数也应减小。

Figure 17. Metal reeds in distorted (left) and undistorted regions (right)

图17. 畸变区域(左)和非畸变区域(右)的金属簧片

4.3. 测量算法的系统误差

图像分割误差:在对接点组图像进行分割时,区分分割区域和未分割区域的指标是HSV色彩空间的通道值,尽管经过均值漂移滤波之后图像的局部色彩分布更加均匀,但是在自然光源条件下转辙机的整体受光也并不均匀,金属元件因对光的反射比较敏感容易产生亮区与暗区,非金属区域也会不可避免地存在受光不均的异常色块。在图像分割时,容易发现许多较大的边界毛刺无法通过图像形态学操作平滑,对于接点组边界的定位会产生10个像素以内的误差。

接触点定位误差:转辙机维护工作中,动、静接点组的接触点一般认为是动接点柱与静接点组咬合簧片的接触点,但是在拍摄的俯视图像中,由于动接点组处于倾斜状态,接触点变得并不明确。在算法中通过霍夫圆形检测找到接触点的位置,实际上存在着个位像素级差异。

图像畸变误差:4.2节中提到,由于图像两侧与镜头存在着夹角,图像畸变效应是一定会存在的。观察到打入深度实际上包含在金属簧片的长度中,靠近中央的金属簧片与两侧的金属簧片的实际距离相等,因此用图像中两端金属簧片的像素长度比值量化图像畸变的影响。这种做法事实上借鉴了图像标定的思想,通过特征对比得到畸变区域的尺度压缩规律。这种修正方式相比传统的标定法简化了许多,但无法完全消除畸变效应带来的误差,其性能也需要更多的样本实验进行检验。

5. 总结与展望

在本文中,针对ZD(J)9型转辙机内部结构与特征,基于数字图像处理设计了转辙机内部参数的提取算法,对这类结构复杂的图像提取具有很强的借鉴意义。在算法的设计过程中,首先实现接点组区域的图像分割,基于相关系数评估预先截取的接点组模板图像和待匹配图像的相似程度,有非常好的匹配效果;同时针对拍摄图像可能出现的镜头抖动,采取了图像仿射变换进行预处理;对图像滤波的基本思想和几种经典算法特点对比总结,使用基于颜色向量求和漂移迭代的均值漂移滤波,在平滑颜色效果显著的同时尽可能保留了图像的边缘特征,甚至可以消除一些小的异常色块。图像的分割主要基于图像的特征完成,因此针对复杂结构的图像需要找到合适的特征区分不同的零件区域,一般情况下,当不同零件之间的颜色不同时,通过HSV色彩阈值法可以分离出图像中的不同零件区域。算法还针对图像颜色分割后的二值化图像设计了基于连通域去噪和边缘膨胀平滑的去噪算法,在一定程度上使得二值化图像的噪点更少、边界更准确。最后,以直接和间接计算相结合的方式,同时借鉴图像标定的思想,引入畸变修正系数,有很好的测量准确率。此外,本文还分析了图像拍摄高度对于图像质量、测量准确率的影响,得到了比较合适的拍摄高度。

总的来说,对于结构复杂,颜色特征鲜明的机械图像都可以通过本算法进行局部零件图像的二值化分割,分割准确性主要依赖于图像的颜色质量。事实上,算法对于图像中的零件定位已经非常准确,最后的误差来源主要集中在因图像畸变带来的压缩误差上。本文通过计算近似修正系数减小图像畸变的影响,但是对于更高精度的测量还远不够,需要通过更多实验得出更加准确的误差补偿算法。

基金项目

这项工作得到了国家自然科学基金的资助,资助号为61773290。

利益冲突

作者声明没有利益冲突。

参考文献

[1] Khan, S. (2001) Object Based Segmentation of Video Using Color and Spatial Information. IEEE Computer Vision and Pattern Recognition Conference, Kauai, 8-14 December 2001, 746-751.
[2] Elias, N. (2003) A Survey on Industrial Vision Systems Applications and Tools. Image and Vision Computing, 21, 171-188.
https://doi.org/10.1016/S0262-8856(02)00152-X
[3] Zhang, Y. (2004) Deformation Visual Inspection of Indus-trial Parts with Image Sequence. Machine Vision and Application, 15, 115-120.
https://doi.org/10.1007/s00138-004-0136-7
[4] 汤勃, 孔建益, 伍世虔. 机器视觉表面缺陷检测综述[J]. 中国图象图形学报, 2017, 22(12): 1640-1663.
[5] 孙国栋, 赵大兴. 机器视觉检测理论与算法[M]. 北京: 科学出版社, 2015.
[6] 张云辉, 谭庆昌, 田原嫄. 图像测量系统精度影响因素的研究[J]. 微计算机信息, 2008, 8(2): 271-273.
[7] 吴晓波, 等. 图像测量系统中的误差分析及提高测量精度的途径[J]. 光学精密工程, 1997, 5(1): 133-141.
[8] 陈向伟, 王龙山, 刘庆民. 图像测量技术在微型齿轮测量中的应用[J]. 半导体光电, 2004, 25(6): 465-468.
[9] 王心悦. 基于机器视觉的轴承圆柱滚子尺寸测量关键技术研究[D]: [硕士学位论文]. 哈尔滨: 哈尔滨理工大学, 2021.
[10] Gadelmawla (2011) Computer Vision Algorithms for Measurement and Inspection of Spur Gear. Measurement, 44, 1669-1678.
https://doi.org/10.1016/j.measurement.2011.06.023
[11] He, J. (2010) Size Detection of firebricks based on machine vision technology. International Conference on Measuring Technology and Mechatronic Automation, Changsha, 13-14 March 2010, 2648-2651.
[12] 潘强. 车辆三维尺寸的图像测量方法研究[D]: [硕士学位论文]. 西安: 长安大学, 2019.
[13] Li, S., Jiang, X. and Qian, H. (2016) Vehicle 3-Dimension Meas-urement by Monocular Camera Based on License Plate. IEEE International Conference on Robotics and Biomimetics, Qingdao, 3-7 December 2016, 800-806.
https://doi.org/10.1109/ROBIO.2016.7866421
[14] 梁玉亮. 基于图像的树木三维建模与树木参数提取[D]: [硕士学位论文]. 哈尔滨: 东北林业大学, 2019.
[15] 管焱然, 管有庆. 基于OpenCV的仿射变换研究与应用[J]. 计算机技术与发展, 2016, 26(12): 58-63.
[16] Canny, J. (1986) A Computational Approach to Edge Detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 8, 679-698.
https://doi.org/10.1109/TPAMI.1986.4767851
[17] He, K.M. and Tang, X.O. (2013) Guided Image Filtering. IEEE Transactions on Pattern Analysis and Machine Intelligence, 35, 1397-1409.
https://doi.org/10.1109/TPAMI.2012.213
[18] Camaniciu (2002) Mean Shift—A Robust Approach toward Feature Space Analysis. IEEE Transactions on Pattern Analysis and Machine Intelligence, 24, 603-619.
https://doi.org/10.1109/34.1000236
[19] Sural, S. (2002) Segmentation and Histogram Generation Using the HSV Color Space for Image Retrieval. International Conference on Image Processing, Rochester, 22-25 September 2002, 589-592.
[20] Otsu, N. (2007) A Threshold Selection Method from Gray-Level Histograms. IEEE Transaction on Pat-tern Analysis and Machine Intelligence, 9, 62-66.
https://doi.org/10.1109/TSMC.1979.4310076
[21] Duda, R.O. and Hart, P.E. (1972) Use of the Hough Transformation to Detect Lines and Curves in Pictures. Communications of the ACM, 15, 11-15.
https://doi.org/10.1145/361237.361242
[22] Bai, H.L. and Liu, C.P. (2004) A Hybrid License Plate Extraction Method Based on Edge Statistic and Morphology. International Conference on Pattern Recognition, Cambridge, 23-26 August 2004, 831-835.