本发明涉及航空发动机装配和维修领域,具体涉及一种基于机器视觉的航空发动机串联钢丝防松结构的检测方法。
背景技术:
为保证航空发动机连接结构可靠、安全,发动机上需要安装很多带有串联钢丝防松结构来保障螺纹的紧固性,故此类钢丝也称保险丝,结构如示意图1所示。螺栓等螺纹紧固件在飞机飞行过程中,由于发动机和飞机机体振动、温度变化等因素影响,会出现松动的趋势。因此,在航空器上对部分紧固件除了有拧紧力矩的要求外,还需要加装串联钢丝来阻止松动。
目前,航空发动机钢丝防松结构的安装工艺要求四项检查,分别是检查螺纹紧固件是否漏装,检查紧固件间钢丝是否缠绕,检查串联钢丝缠绕方向是否与螺纹拧紧方向一致,检查钢丝是否挠度超标(松弛)。传统方法,由技术人员进行人工检测,有漏装和错装的风险,尤其是对于大型航空发动机,人工检测效率相对较低。
机器视觉技术在诸多领域有应用,其核心是图像预处理与目标特征提取,方法上分为机器学习和传统算法两大类。其中,机器学习的方法在充足的有效图像数据支撑下,具有较强的适应性和识别准确度,其缺点也很突出,即可解释性差,大量有效图像数据难以获取。另外,传统方法在对于明确特征和场景下,具有明确的计算逻辑和较好的检测精度,缺点是算法复杂,多场景适应性差。综合上述背景,传统方法由于其可解释性强,对于特定场景准确率高,无需大量数据支撑,在螺栓和串联钢丝检测上具有可应用性。
技术实现要素:
本发明针对现有钢丝防松结构检测方法的不足,提出了一种基于机器视觉的钢丝防松结构检测技术,通过图像预处理的方法,排除划痕、光斑、阴影和边缘轮廓的干扰,识别紧固螺栓与钢丝,并检查是否漏装,并判定串联钢丝缠绕方向与拧紧方向的一致性,以及钢丝是否拉紧。本发明提高了发动机上串联钢丝防松结构的检测效率,以机器代替人工,提高了发动机装配中串联钢丝防松结构检测的智能化水平。
本发明的技术方案为:
所述一种基于机器视觉的串联钢丝防松结构检测方法,其特征在于:包括以下步骤:
步骤1:紧固螺栓漏装检查:
采集串联钢丝防松结构图像,将图像转换为灰度图像,按设定阈值对灰度图像作反向二值化处理,得到二值图像;设定内核区域对二值图像做形态学闭运算,再进行腐蚀和膨胀处理消除划痕影响,对螺栓进行hough圆检测,将圆心的像素坐标数据存入动态数组fasteningcenters;对hough圆检测所得的圆个数与图像对应串联钢丝防松结构中要求的紧固螺栓个数进行比较,判断图像对应串联钢丝防松结构中是否漏装螺栓紧固件;确定hough圆检测所得的圆与图像对应串联钢丝防松结构中要求的紧固螺栓一一对应后,进入步骤2;
步骤2:钢丝漏装检查:
引用步骤1中所得灰度图像,做高斯滤波处理,然后进行反向二值和形态学闭运算处理,得到高值点连通的二值图像,再进行腐蚀处理,腐蚀处理迭代次数少于步骤1中的腐蚀迭代次数;
调用步骤1中的fasteningcenters动态数组,通过对hough圆圆心点的像素坐标值比较,分别提取出圆心坐标在图像坐标系u轴和v轴上的最值umin,umax,vmin,vmax,将最值两两组合得a(umin,vmin)、b(umin,vmax)、c(umax,vmax)和d(umax,vmin)四点,将abcd四点用线段依次相连形成矩形包围盒,然后将包围盒的各边界分别扩大l,使之将螺栓完整包围,顶点坐标为a′(umin-l,vmin-l),b′(umin-l,vmax+l),c′(umax+l,vmax+l),d′(umax+l,vmin-l);
以a′b′c′d′四顶点依次相连的矩形轮廓为边界,将轮廓导入掩模函数,遮盖住矩形a′b′c′d′以外区域,并使用canny算子对矩形内轮廓进行边缘提取,然后执行hough线检测,将检测到的线段端点坐标存入linespoints动态数组;
遍历linespoints动态数组中所有线段数据,根据以下两条规则删除冗余线段:
规则1:利用线段端点像素坐标计算所有线段斜率对应倾斜角,当两条线段倾斜角之差在范围
其中根据斜率计算倾斜角的方式为:
斜率k的范围为(-∞,+∞),对斜率k取反正切计算,其值域为
规则2:将规则1中判定倾斜角相近的线段进行左侧端点距离计算,设定阈值m,若距离超过阈值,则认定为两条钢丝,但其像素倾斜角相近;若距离小于m则认定存在冗余线段,仅保留其中一条;
将删除冗余线段后的剩余线段个数与图像对应串联钢丝防松结构中要求的应加装钢丝数目进行比较,判断是否漏装钢丝;并将剩余线段端点坐标存入validlinesp动态数组;确定剩余线段与图像对应串联钢丝防松结构中要求的应加装钢丝一一对应后,进入步骤3;
步骤3:串联钢丝缠绕方向与螺栓拧紧方向一致性判定:
遍历fasteningcenters中圆心点像素坐标,使用嵌套循环让不同圆心点间两两相连,然后将得到的线段利用规则1和规则2进行去冗余操作,得到个数与图像对应串联钢丝防松结构中要求的应加装钢丝个数相同的相连线段,计算这些相连线段的倾斜角并存入bolt_θ动态数组;同时计算validlinesp中线段的倾斜角并存入fuse_θ数组;
对于bolt_θ中的某一倾斜角θb,在fuse_θ数组中找到与其相近的倾斜角θf,然后采用以下规则进行判断:
规则3:θf>θb,或者
规则4:分别读取θf,θb对应的线段端点坐标f1(uf1,vf1),f2(uf2,vf2)和b1(ub1,vb1),b2(ub2,vb2),将端点f1f2和b1b2分别代入直线方程,得到关于变量(u,v)两点式直线方程:
求解关于(u,v)的二元一次方程组,在变量u区间(uf1,uf2)内方程组有解;
若一组θf,θb同时满足规则3和规则4,则判定串联钢丝连接方向与螺栓拧紧方向一致,否则判定为不一致;
步骤4:判定串联钢丝挠度是否超标:
对于bolt_θ中的某一倾斜角θb,获取其对应的相连线段的两个端点坐标p1(up1,vp1)和p2(up2,vp2),并将步骤1中的二值图像旋转-θb,使
取umin=min{u′p1,u′p2},umax=max{u′p1,u′p2},并取矩形掩模的顶点坐标为m1(umin+w,v′p-h),m2(umin+w,v′p+h),m3(umax-w,v′p+h),m4(umax-w,v′p-h),对旋转后的二值图像进行矩形边缘掩模处理,其中w和h为设定的偏置量;
遍历二值图像掩模内部所有像素点,对所有高值像素点qi(ui,vi),做最小二乘回归直线拟合,可得直线方程au+bv+c=0,计算所有高值像素点相对于回归直线的距离:
对di取均值得
进一步的优选方案,所述一种基于机器视觉的串联钢丝防松结构检测方法,其特征在于:步骤2中,腐蚀处理迭代次数比步骤1中的腐蚀迭代次数少
有益效果
本发明提出一种基于机器视觉的航空发动机串联钢丝防松结构检测方法,通过图像处理的方法,提高了检测的效率和智能化水平,能有效防止串联钢丝漏装和错装,保障了航空发动机的安全。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1:串联钢丝防松结构示意图;
图2:步骤1螺栓紧固件漏装检查流程图;
图3:步骤2串联钢丝漏装检查流程图;
图4:步骤3串联钢丝错装检查流程图;
图5:螺栓中心连线与钢丝位置关系示意图;
图6:步骤4串联钢丝挠度检测流程图;
图7:步骤4掩模边界w与h参数设置示意图;
图8:原始采集图像示意图;
图9:螺栓紧固件中心检测示意图;
图10:边缘掩模处理后二值图像示意图;
图11:hough线检测产生冗余线段示意图;
图12:简化处理后的hough线示意图;
图13:缠绕方向错装检查结果示意图;
图14:串联钢丝正反安装识别结果示意图;
图15:掩模覆盖后钢丝局部灰度放大特征示意图;
图16:二值图像高值点最小二乘拟合直线示意图;
图17:串联钢丝挠度判别示意图。
具体实施方式
本发明针对现有钢丝防松结构检测方法的不足,提出了一种基于机器视觉的钢丝防松结构检测方法,包括以下步骤:
步骤1:紧固螺栓漏装检查,流程如图2所示:
对工业相机采集的串联钢丝防松结构图像数据,并按序编号,编号过程由程序根据拍摄顺序自动生成并存入存储设备;
采集图像由存储设备导入图像处理程序,并转换为灰度图像,按设定阈值对灰度图像作反向二值化处理;
设定内核区域对二值图像做形态学闭运算,再进行腐蚀和膨胀处理消除划痕影响,对螺栓进行hough圆检测,将圆心的像素坐标数据存入命名为fasteningcenters的动态数组,通过圆心像素点做圆环标记;
根据hough圆检测所得个数与对应编号工艺要求个数比较,程序判定图像对应位置是否漏装螺栓紧固件。
步骤2:钢丝漏装检查,流程如图3所示:
引用步骤1中所得灰度图像,做高斯滤波处理,由于实验用的相机图像分辨率为6240*4160,分辨率较高,所以这里采用的滤波内核size=(5,5),若滤波内核太小,滤波效果就不太明显,对检测有一定影响。
然后进行反向二值和形态学闭运算处理,得到高值点连通的二值图像,再进行腐蚀处理,由于钢丝像素特征较螺栓细长而易被腐蚀,为保留采集图像的串联钢丝轮廓,进行较步骤1迭代次数少
调用步骤1中的fasteningcenters动态数组,通过对hough圆圆心点的像素坐标值比较,分别提取出圆心坐标在图像坐标系u轴和v轴上的最值umin,umax,vmin,vmax,在图像坐标系下,图像左上角点为坐标原点,横轴为u轴,纵轴为v轴,轴上坐标均为正整数,代表像素位置。
将最值两两组合得a(umin,vmin)、b(umin,vmax)、c(umax,vmax)和d(umax,vmin)四点,将abcd四点用线段依次相连形成矩形包围盒,然后将包围盒的各边界分别扩大l,使之将螺栓完整包围,顶点坐标为a′(umin-l,vmin-l),b′(umin-l,vmax+l),c′(umax+l,vmax+l),d′(umax+l,vmin-l)。
以a′b′c′d′四顶点依次相连的矩形轮廓为边界,将轮廓导入掩模函数,掩模函数为:遍历图像所有像素点坐标,当像素点处于矩形边界内部或边界上时,则保留像素点色彩信息,否则去除像素色彩信息;通过掩模函数遮盖住矩形a′b′c′d′以外区域,并使用canny算子对矩形内轮廓进行边缘提取,然后执行hough线检测,将检测到的线段端点坐标存入linespoints动态数组。
由于使用hough线检测会产生冗余线段,所以遍历linespoints动态数组中所有线段数据,根据以下两条规则删除冗余线段:
规则1:倾斜角相近剔除原则。利用线段端点像素坐标计算所有线段斜率对应倾斜角,当两条线段倾斜角之差在范围
其中根据斜率计算倾斜角的方式为:
斜率k的范围为(-∞,+∞),对斜率k取反正切计算,其值域为
规则2:端点相近剔除原则。将规则1中判定倾斜角相近的线段进行左侧端点距离计算,设定阈值m,若距离超过阈值,则认定为两条钢丝,但其像素倾斜角相近;若距离小于m则认定存在冗余线段,仅保留其中一条;
遍历linespoints动态数组中所有线段数据,对由两条判定规则删除冗余线段后的剩余线段个数与图像对应串联钢丝防松结构中要求的应加装钢丝数目进行比较,判断是否漏装钢丝;并将剩余线段端点坐标存入validlinesp动态数组;确定剩余线段与图像对应串联钢丝防松结构中要求的应加装钢丝一一对应后,进入步骤3。
步骤3:串联钢丝缠绕方向与螺栓拧紧方向一致性判定:
遍历fasteningcenters中圆心点像素坐标,使用嵌套循环让不同圆心点间两两相连,然后将得到的线段利用规则1和规则2进行去冗余操作,得到个数与图像对应串联钢丝防松结构中要求的应加装钢丝个数相同的相连线段,计算这些相连线段的倾斜角并存入bolt_θ动态数组;同时计算validlinesp中线段的倾斜角并存入fuse_θ数组;
对于bolt_θ中的某一倾斜角θb,在fuse_θ数组中找到与其相近的倾斜角θf,然后采用以下规则进行判断:
规则3:θf>θb,或者
规则4:分别读取θf,θb对应的线段端点坐标f1(uf1,vf1),f2(uf2,vf2)和b1(ub1,vb1),b2(ub2,vb2),将端点f1f2和b1b2分别代入直线方程,得到关于变量(u,v)两点式直线方程:
求解关于(u,v)的二元一次方程组,在变量u区间(uf1,uf2)内方程组有解;
若一组θf,θb同时满足规则3和规则4,则判定串联钢丝连接方向与螺栓拧紧方向一致,程序在螺栓连线中心处标记正号;否则判定为不一致,连接方向错误,程序在螺栓连线中心处标记负号。
步骤4:判定串联钢丝挠度是否超标:
对于bolt_θ中的某一倾斜角θb,获取其对应的相连线段的两个端点坐标p1(up1,vp1)和p2(up2,vp2),并将步骤1中的二值图像旋转-θb,使
取umin=min{u′p1,u′p2},umax=max{u′p1,u′p2},并取矩形掩模的顶点坐标为m1(umin+w,v′p-h),m2(umin+w,v′p+h),m3(umax-w,v′p+h),m4(umax-w,v′p-h),对旋转后的二值图像进行矩形边缘掩模处理,其中w和h为设定的偏置量。
遍历二值图像掩模内部所有像素点,对所有高值像素点qi(ui,vi),做最小二乘回归直线拟合,可得直线方程au+bv+c=0,计算所有高值像素点相对于回归直线的距离:
对di取均值得
以下结合附图6~16详细描述本发明的实施例,所述实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
本实施例以一组缠绕串联钢丝的螺栓紧固件为例进行说明,如图8所示,用其演示前3步的结果,其中有5个螺栓紧固件,并分别用5根串联钢丝两两相连,构成五边形,图中能观察到明显的划痕和局部阴影,另选用图13和图16分别对步骤3和步骤4作补充说明。
步骤1,螺栓漏装检测:
图像采集阶段,选用工业相机采集的图像分辨率为6240×4160,保持螺栓像素直径在100~500pixel。按照图2所示流程,滤波前先转换为单通道的灰度图像,反向二值化阈值threshold=80,闭运算的内核为50×50的像素矩阵,分别对高值点腐蚀和膨胀iterations=30,腐蚀程度刚好将钢丝轮廓和划痕完全腐蚀。
hough圆检测的结果如图8所示,圆心相对螺栓中心有偏移,但在许可范围内。圆环对应位置若对应编号位置图像检测的hough圆个数与已知不符,则发送提醒。
步骤2,串联钢丝漏装检测:
根据步骤1检测出的5个圆心点的像素坐标,对u和v轴上的坐标分量遍历搜索出各轴上的最大值与最小值,并设l=200,得掩模的四个顶点,从而去除边缘干扰,然后将二值图像复制到掩模内部区域,如图9所示,掩模能掩盖因光照和拍摄位置条件引发的边缘干扰。
对掩模后的二值图像用40×40的内核进行形态学闭运算,并轻度腐蚀,腐蚀迭代次数iterations=10。
利用canny算子做边缘检测,参数设置为thrshold1=150,threshold2=500,然后执行hough线检测,设置累加器距离分辨率rho=0.5,累加器角度分辨率
使用规则1和规则2对冗余线段判断,设置规则2中的阈值m=500,得精简处理后的hough线段如图11所示,与钢丝一一对应。
串联钢丝检测结果与位置应有数目校核后输出无漏装信息。
步骤3,串联钢丝缠绕方向检查:
导入步骤1中识别的5个hough圆圆心点和步骤2中筛选后的hough线的端点数据。5个圆心两两相连产生10条连线,存在冗余。
用规则1计算出圆心连线和hough线的倾斜角,然后按照规则1和规则2筛选出与hough线相关联的5条圆心连线,每条圆心连线与对应的hough线编成一组。
根据图5所示,按照规则3和规则4判断每组hough线与圆心连线的位置关系是否正确,判断正确,则程序在圆心连线中心处标记正号,结果图12所示,5组连接关系均正确。另有图13所示对照组,左侧反接,右侧正接。
根据所测结果输出对应图片正反接的信息,若有错装,则发出提醒信息。
步骤4,串联钢丝挠度检测:
导入步骤3中与串联防松钢丝相关的圆心连线,以及圆心连线对应的倾斜角θ。以得出圆心为p′1(u′p1,v′p)和p′2(u′p2,v′p)的两螺栓为例,设w=200pixel,h=100pixel,得四个顶点的像素坐标值,掩模处理后得到图14所示的局部放大特征。其中,左图掩模顶点像素坐标为:(1923,2203),(1923,2403),(4077,2403),(4077,2203);右图掩模像素顶点坐标为:(2213,2061),(2213,2261),(4001,2261),(4001,2061)。
对掩模内的图像二值处理,按行和列遍历搜索区域内所有高值点,然后用最小二乘法拟合出直线,如图15所示。
由点到直线的距离公式计算所有高值点相对于直线的均偏差,设定阈值s为20,其中,左侧均偏差为6.157068,处于阈值内,为拉紧状态;右侧均偏差为46.205240,超过阈值,为松弛状态。
程序根据判断在图像上做出标记如图16所示,并根据松弛信息发出提醒,内容包含其均偏差超标的值。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。