王昆仑,王春德,郭玲玲,张思奇
(1. 哈尔滨飞机工业集团有限责任公司,黑龙江 哈尔滨 150060;2. 陆军装备部航空军事代表局驻哈尔滨地区军事代表室,黑龙江 哈尔滨 150066)
由于疲劳负荷、环境腐蚀、运行磨损等原因,直升机金属结构在服役过程中极有可能出现损伤、裂纹等情况。随着损伤和裂纹的不断发展,部件承载能力逐渐下降,最终导致部件失效甚至断裂的问题,造成无法挽回的飞行事故。防扭接头是直升机关键金属部件之一,其安全性直接关乎直升机的飞行安全。
机器视觉技术的不断发展加快了数字图像处理技术应用于自动监测的步伐[1]。图像监测技术经过众多科研院校及机构的深入探索,得到大量图像监测理论和相关产品,被广泛应用于机械、医学、物理等众多领域,但目前还需投入大量人力、物力与财力对其持续研究。采用数字图像处理技术自动监测结构裂纹具有非接触、效率高、可靠性高、操作简便等优点,目前已成为结构裂纹自动监测的主要方法之一。张玉婷等[2]采用高斯函数匹配滤波器提取裂纹图像的空间特征算子,通过微分匹配均值滤波器判断背景纹理和金属结构裂纹,依据阈值确定裂纹结构,引入Hough变换去除栅线并利用形态学算法实现裂纹自动监测。李涛涛等[3]提取裂纹图像轮廓以缓解外围轮廓干扰,采用次大值滤波均匀图像,通过边缘检测算法获取金属结构裂纹边缘后,将裂纹特征输入支持向量机,实现直升机防扭接头金属结构裂纹自动监测。郁文玺等[4]通过直线拟合方法拟合图像待检区域下边界,粗提取裂纹区域,利用自适应阈值分割算法进一步分割提取到的裂纹区域,基于Blob分析判定裂纹真伪,实现裂纹自动监测。虽然上述方法取得一定进展,但存在较大误差。
为了解决上述方法中存在的问题,本文设计一种针对直升机防扭接头的金属结构裂纹自动监测方法。
构建直升机防扭接头图像采集系统。该系统主要包括图像采集与测量设备、摄像头安装设备、运动控制设备以及计算机等,如图1所示。
图1 直升机防扭接头图像采集系统框图
图1中,摄像头安装设备连接摄像头运动机构,后者分为x轴位置调整机构、y轴位置调整机构和z轴位置调整机构,摄像头运动控制模块能够操控摄像头沿x轴、y轴和z轴方向执行直线运动,进而精准调控摄像头与待识别直升机防扭接头之间位置,实现直升机防扭接头图像实时采集。
构建图像采集系统采集直升机防扭接头金属结构图像后,需要对采集到的图像预处理。采集直升机防扭接头图像时会受到光线强度、摄像机角度等因素的影响,最终输出图像与原始图像之间存在一种非线性关系。同时,图像传输至计算机过程中受设备等因素影响也会造成原始图像与最终输出图像之间的非线性关系,导致最终输出的数字图像质量下降甚至畸变的情况。因此,在分析直升机防扭接头金属结构裂纹前需要对采集到的图像预处理。
1)裂纹图像灰度拉伸
由于采集直升机防扭接头图像时光线强度往往不够理想且金属结构裂纹颜色较暗,最终输出数字图像呈现效果较暗,整幅图像对比度较低,无法突出显示裂纹区域。因此本文方法采用灰度拉伸提升图像整体清晰度[5]。
假设采集到的直升机防扭接头图像中存在任意像素点(x,y),该点对应灰度值为f(x,y),用a表示灰度拉伸系数,b表示相应调整值,通过下式可得到调整后灰度值g(x,y):
g(x,y)=a×f(x,y)+b
(1)
在图像处理时,通常只需要突出一幅图像的重点关注部分,因此在实际应用中无需拉伸图像中的全部灰度值,只需要将重点关注的部分线性拉伸,即划分图像灰度图为多个部分后拉伸重点部分,压缩不重要部分,对图像实行分段拉伸或压缩,用(x1,y1)和(x2,y2)表示划分图像灰度图的两个像素点坐标,经过分段拉伸或压缩后得到的g(x,y)′如下:
g(x,y)′=f(x,y)×g(x,y)
(2)
采用改进后灰度拉伸能够有效消除直升机防扭接头图像灰度值两端噪声点,增强图像对比度和层次感,在使重点关注细节即裂纹信息更加明显的同时削弱不重要部分,保持图像整体特征,然后对裂纹图像去噪。
2)裂纹图像去噪
采集到的直升机防扭接头图像不可避免会存在部分噪声污染。这不但会造成图像模糊,而且会掩盖部分图像特征,影响后续裂纹自动监测效果,因此需要对裂纹图像去噪处理。
本文方法采用中值滤波法滤除图像噪声[6],用(x,y)表示直升机防扭接头图像中任意像素点,假设Med(·)表示取中值运算,则经过中值滤波处理后该点灰度值G(x,y)如下:
G(x,y)=Med[g(x,y)]×g(x,y)′
(3)
常用的中值滤波模板及对应矩阵模板如图2所示。
图2 中值滤波模板及对应矩阵模板
在实现图像采集与处理后,需提取裂纹片段特征,该特征提取是以对图像进行分割为依据的,因此在裂纹片段特征提取时,图像分割质量会对特征提取的精度和效果产生直接的影响。本文方法首先通过OTSU算法定位直升机防扭接头金属结构裂纹图像的裂纹片段,再采用Canny算子分割裂纹片段边缘,实现裂纹片段特征提取[7]。
(4)
满足下式的阈值T即为图像最佳分割阈值:
(5)
标准OTSU算法又称最大类间方差法,该算法较为复杂,效率较低,因此本文方法采用下式的σ2替代式(4)中的方差,改进OTSU算法,减少算法运算量,提高运算效率。
σ2=η0×η1×(v1-v0)2×T
(6)
本文方法将通过改进后OTSU算法得到的阈值设置为最高阈值,同时利用Canny多尺度空间边缘检测算法确定最低阈值,提出双阈值Canny算子边缘检测算法,实现图像分割与裂纹片段特征自适应提取,这样可以降低提取误差。采用双阈值Canny算子提取直升机防扭接头金属结构裂纹图像边缘片段主要流程如下。
步骤一,将采集到的直升机防扭接头图像预处理,得到质量提升的直升机防扭接头金属结构裂纹图像。
步骤二,采用Prewitt算子和Sobel算子计算预处理后图像x和y灰度方向上的偏导数,记作Gx和Gy,并计算梯度大小|Gxy和方向α如下:
(7)
步骤三,定义0°、45°、90°和135° 4种边缘梯度方向,将4个方向上相邻的像素进行比较,从而判断出一个区域的最大值点,如果一个像素点在其梯度方向前后两个像素点的灰度值比较相近,那么这个像素点就是一个无边缘的点。
步骤四,由经过改进后OTSU算法来决定最大阈值,由Canny多尺度空间边缘检测来决定最低阈值,通过两者判定像素点是否为边缘,判定规则如下所示:
1)若像素点灰度值高于最高阈值,则该点一定是边缘;
2)若像素点灰度值低于最低阈值,则该点一定不是边缘;
3)若像素点灰度值处于最高阈值和最低阈值之间,则需要依据像素点邻近像素中是否存在高于最高阈值的像素点对该点进一步判定。
对于直升机防扭接头金属结构裂纹图像来说,其裂纹长度和面积仅与裂纹边缘相关而不取决于其内部变化。因此,通过得到的直升机防扭接头金属结构裂纹边缘信息即可实现裂纹片段特征提取,然后获取完整直升机防扭接头金属结构裂纹图像。
1)核心裂纹特征的张量投票
(8)
式中λ1和λ2表示图像特征值,满足λ2<λ1。
张量投票的主要流程如下。
步骤一,转化图像像素点为球张量并投票。
步骤二,通过对像素点的选票进行统计和分析,获得像素点的初值。
步骤三,执行张量投票。假设在坐标系Oxy的O点和Q点处存在两个张量,O点和Q点分别为投票点和受票点,l表示弧长,k表示曲率,γ表示尺度因子,W(Q)表示Q点张量接收到O点投票,计算方式如下:
W(Q)=DF(l,k,γ)×NQ×NQ×T
(9)
式中:DF(l,k,γ)表示显著性衰减函数;NO和NQ表示两者对应法向量。
步骤四,统计每个像素点邻域内全部张量投票并融合为一个新张量,获取图像特征值,生成图像中每个像素点为裂纹概率的显著性图谱。
2)裂纹特征判断
在获得一个完整的直升机防扭接头金属结构裂纹特征时,首先将从其中抽取到的候选裂纹片段特征中的离散点删除掉,之后将裂缝碎片进行连接,完成识别。这两个步骤均通过张量投票完成,主要流程如下:
步骤一,经张量投票可获取到裂纹曲线,对该曲线膨胀处理,生成大于实际裂纹的区域;
步骤二,获取候选裂纹片段特征和步骤一所得区域的交集,去除离散点,得到只包含直升机防扭接头金属结构裂纹片段的图像;
步骤三,获取步骤二得到的图像与裂纹曲线图像的并集,通过裂纹曲线连接裂纹片段,生成完整直升机防扭接头金属结构裂纹图像,完成识别。
为了验证直升机防扭接头金属结构裂纹自动监测方法的整体有效性,需要测试研究。实验所用数据集中共包含2 000幅直升机防扭接头金属结构图像,其中1 000幅为裂纹图像,1 000幅为非裂纹图像,图像存在噪声较大、光线分布不均、模糊、曝光、亮度过暗、背景干扰等多种问题。
实验以文献[3] 方法和文献[4] 方法为对比,分别检测3种方法的图像预处理能力和直升机防扭接头金属结构裂纹自动监测能力,评估3种方法的整体性能。
引入峰值信噪比评价本文方法、文献[3] 方法和文献[4]方法预处理后的图像质量,其值与图像质量呈正相关。在数据集中随机选取1幅直升机防扭接头的原始金属图像,如图3所示。通过3种方法预处理后图像及对应峰值信噪比如图4所示。
图3 原始图像
图4 不同方法处理后图像及峰值信噪比
根据图4可知,对比本文方法、文献[3]方法和文献[4]方法处理后图像,本文方法处理后图像质量更好,明暗度更均匀,细节更丰富,且峰值信噪比更高,文献[3]方法和文献[4]方法处理后图像仍存在一定程度的明暗不均、模糊或噪声问题,峰值信噪比较低,说明本文方法具有更强的图像预处理能力。原因是本文方法采用改进后灰度拉伸能够有效消除直升机防扭接头图像灰度值两端噪声点,增强图像对比度和层次感,使重点关注细节即裂纹信息更加明显,同时削弱不重要部分,保持图像整体特征,对裂纹图像去噪,改变图像整体灰度值分布情况,提升图像整体清晰度。
对比本文方法、文献[3]方法和文献[4]方法对全部裂纹监测结果与实际值之间的误差平均值,结果如表1所示。
表1 3种方法提取到的裂纹误差 单位:μm
由表1可以看出,本文方法的监测误差平均值始终小于文献[3]方法和文献[4]方法,平均长度误差比文献[3]方法小522.754μm,比文献[4]方法小208.443μm,平均宽度误差比文献[3]方法小3.713μm,比文献[4]方法小4.472μm。这说明本文方法具有更优异的裂纹自动监测性能。原因是本文方法将通过改进后OTSU算法得到的阈值设置为最高阈值,利用Canny多尺度空间边缘检测算法确定最低阈值,提出双阈值Canny算子边缘检测算法,实现图像分割与裂纹片段特征自适应提取,可以降低提取误差。
为了进一步评估本文方法、文献[3]方法和文献[4]方法在直升机防扭接头金属结构裂纹自动监测中的性能,引入秒帧率衡量3种算法的运行效率,秒帧率越大,则对应算法运行效率越高,统计3种方法的秒帧率,如图5所示。
图5 3种方法秒帧率检测结果
由图5可以看出,本文方法的秒帧率高于文献[3]方法和文献[4]方法,即本文方法的运行效率高于另外两种方法,在直升机防扭接头金属结构裂纹自动监测中的实时性更强,更适合用于实际裂纹自动监测,其原因是本文方法重点关注部分图像的线性拉伸,即划分图像灰度图为多个部分后拉伸重点部分,压缩不重要部分,一定程度上有利于提高裂纹的自动监测效率。
直升机结构安全是保障其飞行安全可靠的前提和基础,若直升机部件出现裂纹问题且未被及时发现和修理,极有可能破坏直升机结构,对直升机飞行安全产生严重威胁。防扭接头是直升机的重要金属部件,传统直升机防扭接头金属结构裂纹监测通常由人工通过显微镜来完成识别,工作效率较低且监测过程中易受到主观因素影响,造成监测结果不理想的问题,无法满足监测精度要求。因此数字图像处理技术被引入直升机防扭接头金属结构裂纹自动监测中。为了解决目前存在的图像预处理效果不佳、提取到的直升机防扭接头金属结构裂纹误差较大、秒帧率较低等问题,提出直升机防扭接头金属结构裂纹自动监测方法,采用构建的图像采集系统采集直升机防扭接头图像,通过灰度拉伸和中值滤波预处理图像,结合OTSU算法和Canny多尺度空间边缘检测算法,提出双阈值Canny算子边缘提取算法获取候选裂纹片段特征,利用张量投票实现直升机防扭接头金属结构裂纹自动监测。该方法能够有效地提升图像预处理效果,减小提取到的直升机防扭接头金属结构裂纹误差,提升秒帧率,为直升机的安全平稳飞行奠定基础。