缺陷孔图像识别方法 【技术领域】
本发明涉及一种缺陷孔图像识别方法。
背景技术
零件加工过程中,如焊接、铸造、注塑等所形成的影响零件加工质量的表面孔隙,叫缺陷孔。现有的缺陷孔如焊接表面针孔、铸造表面气孔的检测方法主要还是依赖于人眼的识别,对人眼无法辨认的或者内在的孔隙缺陷,主要有磁粉检测、渗透检测、超声检测以及涡流检测等方法,这些方法很操作繁琐。
【发明内容】
本发明的目的就是提供一种可在线检测,精确度高、成本低的缺陷孔图像识别方法。
本发明的缺陷孔图像识别方法,首先采用灰度图像处理技术,根据缺陷孔图像的灰度值特征,即缺陷孔区域的灰度值与其表面周围区域灰度值的存在差别,对缺陷孔进行初步判断,并利用Matlab软件中的regionprops()函数找出可能的缺陷孔的区域坐标,然后运用三维数字图像技术,根据缺陷孔在三维图像中的数据特征,即缺陷孔区域在三维坐标(x,y,z)中的z值与其他区域的z值的差别,进一步确定缺陷孔的存在,并分别运用二维和三维数字图像处理技术计算缺陷孔的位置、大小和深度等参数,实现对缺陷孔识别,达到在线检测零件加工表面质量的目的。
本发明的缺陷孔图像识别方法,所采用的系统包括三维激光扫描仪、报警器、控制板卡、显示器和工业控制计算机,三维激光扫描仪用于获得被检测表面的三维数字图像信息,三维激光扫描仪同时接收来自工业控制计算机的指令,完成采集图像数据的任务;报警器通过控制板卡与工业控制计算机相连,当实施系统检测到缺陷孔存在时,系统通过控制板卡上的继电器接通报警器电路,使报警器发出报警信号;显示器从工业控制计算机中接受信号,用于显示缺陷孔的相关数据及图像信息。
所述的灰度图像是由三维激光扫描仪获得的三维图像信息转换成的灰度图像。
所述的三维数字图像信息中的高度值是指由三维激光扫描仪获得的三维数据图像信息(x,y,z)中的z值,其中x,y分别为像素点的坐标值。
所述的三维图像信息中缺陷孔的高度值是指缺陷孔底部像素点高度值的平均值,即三维数据信息(x,y,z)中的z值平均值Z
k,其平均值Z
k与缺陷孔表面周围像素点的高度值得平均值Z
z的差值D
k,其中:Z
k、Z
z和D
k分别由下式计算得到:
Z‾k=1mnΣi=0n-1Σi=0m-1Zi;]]>Z‾z=1jkΣi=0j-1Σi=0k-1Zi;]]>和D
k=Z
z-Z
k。
本发明的缺陷孔图像识别方法,同时采用二维灰度图像和三维数字图像处理技术,即首先利用灰度图像找出缺陷孔的位置,即中心坐标、缺陷孔区域像素点的坐标,并计算缺陷孔的大小如面积、直径等,然后利用三维数字图像信息,通过比较缺陷孔区域的三维信息中的高度值(z值)的差别D
k,该差值是否大于设定的阀值,进一步判断缺陷孔的存在与否。
本发明的缺陷孔图像识别方法与现有技术相比,具有以下优点:
1、缺陷孔监测的准确率更高,在二维图像信息的缺陷孔监测方法的基础上,利用三维数字图像中的信息进行判别,大大提高了判别的精确度;
2、同时采用二维和三维数字图像技术实现缺陷孔的在线检测,方法科学、合理、精确;
3、实现了缺陷孔检测的数据与信号的实时显示与监控;
4、所应用的设备简单可靠,有成本优势。
【附图说明】
图1为本发明的结构组成框图;
图2为本发明的系统主程序流程图。
【具体实施方式】
一种缺陷孔图像识别方法,所采用的系统包括三维激光扫描仪1、报警器2、控制板卡3、显示器4及工业控制计算机5,三维激光扫描仪1与工业控制计算机5相连,三维激光扫描仪1接受工业控制计算机5的指令采集被检测对象的三维数字图像信息,并将获得的图像信息传输给工业控制计算机5,报警器2通过控制板卡3与工业控制计算机5相连,当系统检测到缺陷孔存在时,控制板卡3上的继电器得电,接通报警器2,报警器2发出报警,显示器4与工业控制计算机5相连,并从工业控制计算机5中接受信号,用于显示缺陷孔的相关数据和图像信息。
对工业控制计算机5硬件要求:PIII500以上的微型机及其兼容机,至少256M内存,推荐512M,至少2G的硬盘剩余空间,VGA、SVGA及支持Windows 256色以上的图形显示卡,本实施例采用研华IPC-610,操作系统为Windows XP,软件开发平台为MATLAB 7。
程序存储在工业计算机5的硬盘中,其主要作用是:(1)对采集的三位数图像转换为二维灰度图像;(2)在二维灰度图像中判断缺陷孔的存在与否;(3)利用缺陷孔区域的三维数字图像信息计算缺陷孔的深度,如超过设定的阀值(该值可根据不同的精度要求进行设定,本实施例设定为2mm),则最终确定为缺陷孔;(4)显示输出缺陷孔的存在的信号(如本例直接在显示器幕上设定的区域用红色字体显示“存在缺陷孔”)及其相关信息(如位置、大小等);(5)通过控制板卡的继电器控制报警器2的报警(接通报警器电路使其发出报警信号)。
缺陷孔图像识别方法,包括以下几个步骤:
1、环境进入被检测状态时,软件初始化并开始运行;
2、三维激光扫描仪1按照设定的图像采集参数采集图像信息,并将图像信息存入工业控制计算机5中;
3、将采集的三维图像转为二维灰度图像,即根据缺陷孔所在区域的灰度值与其表面区域灰度值的差异初步判断缺陷孔是否存在,并用Matlab软件中的label2rgb()函数对缺陷孔区域进行标记;
4、利用三维数字图像信息,计算缺陷孔区域中的三维图像信息(X,Y,Z)中的高度(Z)值的平均值Z
k与该缺陷孔区域周围的三维图像中的高度(Z)值的平均值(Z
z)的差值D
k,如果该差别大于设定的阀值D
f(本例设定为2mm),则认为是缺陷孔,其中:Z
k、Z
z和D
k分别由下式计算得到:
Z‾k=1mnΣi=0n-1Σi=0m-1Zi;]]>Z‾z=1jkΣi=0j-1Σi=0k-1Zi;]]>和D
k=Z
z-Z
k。
5、根据确定为缺陷孔区域的二维数据图像信息,计算缺陷孔的中心坐标、面积、直径等参数,根据确定为缺陷孔区域的三维数据图像信息,计算缺陷孔的深度,即D
k=Z
z-Z
k。
6、输出缺陷孔实时监测结果(报警,并输出缺陷孔的位置、大小和深度等信息)。