宗圣康,程建鹏,张西良
(江苏大学 机械工程学院,江苏 镇江 212013)
起重机在当今工业经济中扮演重要角色,但由于大型设备的特殊性,起重机必须具有足够的安全性才能够被应用于工业生产中[1]。随着起重机轨道参数的不断扩大,实际应用中对起重机的安装和定期检测提出了更高的要求[2]。特种设备安全监督检验机构必须对起重机的安装改造和重大修理进行定期检验,以保证起重机安全运行[3]。
目前轨道检测技术主要包含计算机技术、激光光电技术和图象处理技术[4]。在工业生产中,轨道检测的平顺度参数测量主要使用图像处理技术[5]。将计算机技术与传感器和模拟处理系统相结合,可用于进行轨道相关数据检测与处理[6]。目前起重机轨道参数检测方法主要包括:(1)利用激光测距仪检测跨度。使用激光测距仪检测轨道跨度,具有成本低、便于移动与携带的优势。但是检测人员要手持激光测距仪在起重机轨道上前行,危险性高[7];(2)基于机器视觉技术的轨道自动检测。文献[8]提出利用机器视觉检测轨道距离参数的架构式检测系统。该方法检测精度和自动化程度较高,但仅适用于轨道跨度较小的检测环境[9]。
目前,光斑图像位置识别方法主要分为两类:(1)基于光斑形状拟合。对图像进行二值化处理,使用Canny、Sobel等算子提取光斑边缘[10-13],对提取的光斑边缘进行形状拟合,拟合曲线中心坐标即为光斑中心位置。2018年,文献[14]提出一种高精度光斑中心位置识别方法。该方法使用小波变换对图像进行多层分解与去噪,计算光斑图像中像素点的理想灰度值,建立查找表,通过FPGA硬件查表方法校正光斑图像。该方法有效校正了光斑图像中的畸变,但使用硬件校正使算法耗时增长,难以满足起重机轨道检测实时性要求;(2)基于光斑能量中心或质心的拟合方法。该方法利用激光能量分布理论或光电传感器识别光斑中心,利用灰度分布求取灰度质心[15-18]。文献[19]提出基于互相关和改进高斯拟合的光斑中心位置提取方法。该方法使用CCD相机采集光斑图像,提取光斑能量分布轮廓,对轮廓曲线进行高斯拟合计算光斑中心。该方法对噪声十分敏感,图像采集时混入的连续噪声会严重影响光斑能量分布轮廓形状,进而影响高斯拟合与中心识别精度。
通过对国内外起重机轨道参数检测方法的调研和相关文献的分析,发现目前起重机轨道检测主要停留在人工检测水平,自动化程度较低,且光斑图像位置识别存在实时性差、精度低等缺陷。
本文通过对起重机轨道高度差检测方法和长距离激光光斑中心位置识别方法的研究,对光斑图像的修整方法和二值化分割方法进行改进,提高了光斑位置起重机轨道高度差检测准确性。最后,通过试验证明了光斑位置起重机轨道高度差检测方法的可行性。
如图1和图2所示,将激光发射器与成像板分别放置在两侧轨道。调整发射器与成像板,使其处于某一测量点1,打开激光发射器,成像板上呈现测量点1的光斑图像。该光斑图像的纵向坐标作为高度差检测时的基准坐标。
图1 轨道高度差检测结构示意图Figure 1. Schematic diagram of track altitude difference detection structure
将发射器与成像板移动至测量点2,打开激光发射器,在成像板上呈现测量点2的光斑图像。
若起重机轨道两测量点之间存在高度差,则成像板竖直方向上光斑位置会发生偏移,其偏移量反映了测量点1与测量点2之间轨道高度差变化量。
设经过图像采集得到测量点1与测量点2的纵向位置坐标分别为H1、H2,则测量点1与测量点2之间轨道高度差如式(1)所示。
ΔH=H1-H2
(1)
图2 轨道测量点1和测量点2光斑位置坐标示意图Figure 2. Schematic diagram of spot position coordinates of track measurement point 1 and measurement point 2
光束在空气或者其他介质中传输会产生发散现象,导致光斑图像周围存在强烈噪声。当噪声灰度值与光斑灰度值接近时,对光斑图像有效区域与背景区域灰度的分辨较为困难。此时,若直接进行图像分割则会造成较大误差。因此,对光斑图像进行修整,降低散射噪声,提高光斑区域与背景区域灰度差异,是保证光斑位置识别准确性的关键所在。
光斑图像修整过程分为两步:
步骤1计算光斑图像初步中心位置。基于光束集中性,光斑图像背景为纯色背景,光斑图像灰度分布均匀。因此,采集的光斑图像灰度分布相对集中,可利用灰度重心法初步计算光斑中心。设采集到的图像尺寸大小为M×N,f(i,j)是光斑图像中像素点(i,j)处的灰度值,图像灰度重心为(x,y),则有
(2)
(3)
其中,L(i,j)是灰度权重,设L(i,j)=f(i,j);
步骤2修整光斑图像。如图3所示,通过灰度权重法得到光斑粗略中心O,灰度值为F。O作为图像出发点,沿x轴方向寻找灰度值下降为F-T的点,得像素点序列xn。设x1与O距离最近,距离记为r1。光斑中区域灰度值为240以上,优选T为30。遍历图像各个方向重复之前步骤,得r2,…,rn。如图3所示,连接所有r1,…,rn,得到闭合区域。对闭合区域边缘位置进行修正,使光斑像素尽可能包含在该区域内。沿闭合区域的外围8个像素点范围内,以圆心O为中心向外辐射的方向取行,计算行内像素点平均灰度值。若计算所得灰度均值与光斑边缘点灰度值的差不超过10,则将该行中的闭合区域向外移动8个像素点。该闭合区域可认为含有大部分光斑有效区域,但并非准确光斑形状。对闭合区域外辐射方向距离10像素点范围外的区域进行灰度降低处理,使光斑图像中背景色与有效区域之间存在明显差异。
图3 激光光斑图像修整方法示意图Figure 3. Schematic diagram of laser spot image trimming method
光斑图像修整前后效果对比如图4所示。
修整后光斑图像辨识度明显提高。由图5和图6可得图像灰度分布在修整前后情况。
图5 修整前灰度分布Figure 5. Gray distribution before trimming
图6 修整后灰度分布Figure 6. Gray distribution after trimming
结果表明,修整后的光斑图像可有效识别图像近似有效区域,抑制光斑外围复杂噪声,降低噪声灰度值,增加图像阈值分割的准确性。
Otsu算法常用于图像分割的聚类,其核心原理是将图像中背景区域与光斑有效区域的像素分为两类[19-20]。然后,计算阈值,使两类区域所包含的像素区分度最大,此时的阈值为图像最佳阈值。传统Otsu算法过程为:
步骤1定义Otsu算法变量,统计图像灰度分布;
步骤2计算图像各个灰度等级占图像整体百分比和图像的平均灰度;
步骤3计算激光光斑图像像素分离指标的最大值,得到最佳阈值。
当处理激光光斑图像表现出明显双峰特性时,使用Otsu算法可取得良好的分割效果[21]。但在起重机轨道参数检测过程中,光斑图像面积比较小,直接使用Otsu算法会影响光斑图像的阈值分割精度。因此,需要多维度计算光斑图像的分割阈值。
二维Otsu算法原理[12]是在激光光斑图像中取一定大小的窗口,例如3×3,取中心灰度与邻域均值灰度,组成二维灰度直方图,然后使用Outs算法计算最大类方差,确定最佳阈值。
设图像f尺寸为M×N,图像像素点有L个灰度等级, 分别为0,1,2,…,L-1,则其窗口g灰度均值的灰度等级也为L个,将像素点灰度记为i,窗口g灰度均值记为j,构成阈值分割算法的两个维度。统计像素点灰度为i且窗口灰度均值为j的像素点数量,记为fij,若激光光斑像素点总数为N,则激光光斑图像中fij出现的概率如式(4)所示。
(4)
如图7所示,设灰度阈值为s,窗口均值阈值为t,激光光斑图像可分为4个灰度等级。
图7 灰度分块示意图Figure 7. Schematic diagram of grayscale block
由图7可知,I是光斑图像背景区域,II是图像边缘区域,III为图像前景,IV是噪声区域,则光斑和背景区域的概率为
(5)
均值向量为
(6)
光斑有效区域与背景区域离散程度如式(7)所示。
(7)
图8所示为图像二值化分割后效果图。当矩阵Sb秩最大时,即可求得最佳分割阈值。
图8 分割后的激光光斑图像Figure 8. Aser spot image after segmentation
通过二维Otsu算法对激光光斑图像进行阈值分割,可较为准确地提取激光光斑的有效区域,取得良好的分割效果。
1.5.1 常用边缘提取算子
光斑图像边缘提取的核心思想是通过求取像素窗口导数,检测像素窗口内图像灰度值变化,并计算激光光斑图像像素点窗口极大值,进而判断边缘像素点。一阶导数表示像素点灰度变化规律,二阶导数表示激光光斑图像边缘类型。常用的边缘检测算子有:Roberts算子、Sobel算子、Prewitt算子、Canny算子。
Sobel算子的核心方法为:构造一定大小(例如3×3)的横向模板和纵向模板Gx和Gy,以图像像素点为中心获取相应大小的窗口,然后分别利用两模板计算窗口卷积,记为Gix和Giy。计算Gi,若Gi小于某阈值则认为该点是噪声像素。但Sobel算子在检测过程中不能有效区分光斑图像前景区域与背景区域,会造成边缘提取误差。
(8)
(9)
Roberts算子构造2×2模板,记为g1和g2。通过计算图像在该模板内对角线方向两像素点之差进行边缘检测。该算子对斜向边缘具有较高检测精度。
(10)
Prewitt算子与Sobel算子的区别在于在横向模板与纵向模板的构建方式不同。如式(11)所示,Prewitt算子核心原理是计算光斑图像的像素灰度平均值,进而提取图像边缘,对图像的噪声抑制有良好的效果。
(11)
Canny算子为边缘检测中常用算子,提取结果比较准确。计算过程如下:
设高斯函数如下所示,其中x和y是坐标点,σ是标准差。
(12)
(13)
(14)
设高阈值Th和低阈值Tl,对待选光斑边缘进行分类。像素点灰度值高于Th的边缘点集合为N1,像素点灰度值在Th和Tl之间的边缘点集合记为N2。N1包含的边缘点质量较高但存在间断,使用N2对N1的间断点进行补齐,完成边缘检测。
1.5.2 边缘检测算子效果分析
图9所示为4种算子的边缘检测效果对比。
对激光光斑图像进行阈值分割后,边缘区域仍存在一定的毛刺噪声。对4种不同算子的光斑边缘提取效果进行对比可知,Canny算子提取得到的激光光斑边缘最为准确平滑,噪声抑制效果较好。因此,采用Canny算子提取光斑边缘可使拟合结果最具准确性。
提取光斑边缘形状后,进行边缘拟合即可计算光斑中心位置。采用最小二乘圆拟合方法,构造光斑边缘与拟合圆残差平方和并令其最小,可解出拟合圆中心坐标。该方法令拟合误差最小,使边缘拟合结果具有一定抗干扰性[23]。圆的计算式为
(x-a)2+(y-b)2=r2
(15)
其残差为
εi=(xi-a)2+(yi-b)2-r2
(16)
式中,i∈E,E是激光光斑图像拟合圆的边界集合;激光光斑图像的边界坐标是(xi,yi)。
取残差平方和为
(17)
由最小二乘法可得
(18)
即
(19)
上式通过整理合并可得
(20)
式中的各个参数可表示为
(21)
通过圆方程得a和b为
(22)
如图10所示,拟合圆基本贴合光斑边缘,较为完整地反应了光斑边缘形状。
图10 激光光斑图像边缘拟合圆Figure 10. The edge fitting circle of the laser spot image
试验所需主要器件为650 nm波长激光器、JSH300f工业相机、工业相机支架、50分度游标卡尺、PC机,试验原理如图11所示。
图11 光斑图像位置识别试验原理示意图Figure 11. Schematic diagram of light spot image position recognition test principle
试验内容及步骤:
步骤1将工业相机在垂直方向移动不同的距离(例如3 mm、6 mm、10 mm)进行重复试验,利用游标卡尺测量移动量精确值。光斑在相机视场中的位置也将发生相应移动,使用工业相机采集工业相机移动前后的光斑图像,将上述步骤重复5次;
步骤2利用光斑图像修整拟合方法及现有方法中基于亮度阈值的光斑中心定位算法来识别光斑移动量,并对识别结果进行对比,结果如表1所示。
表1 移动距离识别结果
试验结果表明,采用修整拟合方法进行光斑位置识别的平均误差约为±0.22 mm,最大误差不超过±0.4 mm;传统亮度阈值方法进行光斑图像位置识别的平均误差约为±0.32 mm,即本文所提方法的识别精度提高了约0.10 mm。
试验所需主要器件为两根长度为4 m的轨道(型号QU-70)、650 nm波长激光器、成像板、PC机、JSH300f工业相机、相机支架、全站仪与塔尺。
试验内容及步骤:
步骤1将轨道A与轨道B并排平行放置,两根轨道间距为30 m;
步骤2在轨道A取测量点3、测量点4,在轨道B相应位置取测量点5、测量点6,如图12所示;
图12 轨道高度差检测试验原理示意图Figure 12. Schematic diagram of experimental principle of track altitude difference detection
步骤3将全站仪置于轨道A附近,塔尺被分别置于测量点3~测量点6。设全站仪读取的塔尺刻度分别为m、n、p、q,计算测量点3相对测量点5的高度差Δh1,以及测量点4相对测量点5的高度差Δh2。
(23)
重复该步骤5次,取平均值作为轨道相同位置截面高度差的真值;
步骤4将激光发射器与成像板分别置于两轨道起始端,采集光斑图像,识别光斑位置,作为光斑参考位置;
步骤7重复步骤4 ~步骤6共5次,将检测数据与全站仪检测数据对比,并分析轨道高度差检测性能。试验结果如表2所示。
表2 高度差检测结果
综上所述,当检测距离为30 m时,利用该轨道检测试验系统进行起重机轨道高度差检测,检测的平均误差数值为±0.8 mm,误差范围为-1.2~1.8 mm,其精度满足轨道检测要求,且具有良好的重复性。多次重复试验结果表明检测误差波动较小,因此可利用该检测系统代替人工手段进行轨道自动检测。
本文提出一种基于光斑位置的起重机轨道高度差自动检测方法。搭建了基于光斑位置的起重机轨道高度差自动检测系统,设计光斑图像灰度分布修整方法,并改进二维Otsu算法,准确地分割了光斑图像。此外,该方法使用Canny算子提取光斑边缘,通过最小二乘方法对光斑边缘进行圆拟合,计算边缘拟合圆中心坐标,完成光斑图像位置识别,并计算了光斑在竖直方向上的位置偏差,得到起重机轨道两检测点之间的高度差。试验结果表明,使用本文光斑图像位置识别检测方法进行光斑图像位置识别的平均误差值约为±0.22 mm,最大误差值不超过±0.4 mm,轨道高度差试验系统对轨道高度差检测的平均误差约为±0.8 mm,检测误差为±1.8 mm,检测准确性满足起重机轨道高度差自动检测要求。