基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法转让专利

申请号 : CN201610839952.1

文献号 : CN106373124B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 高会军靳万鑫于金泳杨宪强林伟阳孙光辉李湛

申请人 : 哈尔滨工业大学

摘要 :

基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法,本发明涉及灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法。本发明是为了解决传统表面缺陷检测方法适用范围窄、计算复杂、检测精度低的问题。本发明缺陷面积检测精度可达95%,可以用于金属元件的表面检测,且对玻璃元件、纸张、电子元器件等表面缺陷检测都有很强的适用性。在C++环境下,本发明算法针对640×480的工业图像的检测时间为200ms,较现有主流方法,检测效率高,稳定性好,适用于工业产品的快速检测场合。本发明应用于工业产品表面检测领域。

权利要求 :

1.基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法,其特征在于,所述视觉检测方法的具体过程为:步骤一:对工业相机采集到的图像进行灰度化和中值滤波操作;

步骤二:对步骤一中经灰度化和中值滤波操作后的图像,采用预存的图像模板,对中值滤波操作后的图像上的待检测表面块进行匹配与定位,并对该图像进行旋转,使其中的待测表面块与模板图像中的待检测表面块朝向一致;

所述预存的图像模板是通过采集标准工业产品的相同检测表面得到的;

步骤三:对步骤二得到的待检测表面块图像进行区域等分分割,得到N个局部图像区域,每个局部图像区域尺寸大小是H×W,其中H和W为系统预设值;

步骤四:根据步骤三等分分割后的待检测表面块中的每个局部图像区域,计算灰度共生矩阵,并对灰度共生矩阵进行归一化,求解灰度共生矩阵的对比度、能量、相关度和同质性四个特征量,将所述四个特征量构成的向量作为局部图像区域的特征向量;

步骤五:根据于步骤四得到的所有局部图像区域的特征向量,采用RANSAC算法进行一致性检测,在阈值T1条件下,将最大数目特征向量所对应的模型,作为待检测表面块上正常区域的标准特征向量,并求解该模型对应的所有特征向量的欧式距离标准差σ;

步骤六:根据步骤五得到的标准特征向量以及欧式距离标准差σ,判断每个局部图像区域的特征向量:若局部图像区域的特征向量与标准特征向量的欧式距离小于3σ,则标记此局部图像区域为正常区域;否则,标记此图像区域为缺陷区域;

步骤七:累加步骤六中所有缺陷区域得到其总面积,并求解缺陷区域总面积相对于待检测表面块面积的缺陷面积比,若缺陷面积比小于预设阈值T2,则判断该待检测表面块的缺陷检测结果为合格;否则,则判断该待检测表面块的缺陷检测结果为不合格。

2.根据权利要求1所述的基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法,其特征在于,所述步骤三中H×W取值为小于待测表面块中最小缺陷区域面积的1/2。

3.根据权利要求2所述的基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法,其特征在于,所述步骤四中四个特征量的求解方法为:对比度C:

式中,i、j为归一化后的灰度共生矩阵的行列坐标;p(i,j)为归一化后的灰度共生矩阵中第i行j列的值;

能量E:

相关度R:

式中,ui为归一化灰度共生矩阵中行坐标的平均值;uj为归一化灰度共生矩阵中列坐标的平均值;σi为归一化灰度共生矩阵中行坐标的标准差;σj为归一化灰度共生矩阵中列坐标的标准差;

同质性B:

4.根据权利要求3所述的基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法,其特征在于,所述步骤五中欧式距离标准差σ的求解过程具体为:步骤五一、在N个局部图像区域得到的N个特征向量[Ck Ek Rk Bk]中,选择任意一个特征向量作为模型,其中k=1,2,3,...,N;

步骤五二、遍历剩余特征向量,若当前特征向量与模型的欧式距离小于预设阈值T1,则将该特征向量加入到该模型所对应的特征向量集合中,并将该集合中所有特征向量的均值重新作为该模型;

步骤五三、重复步骤五一到五二,直到在规定循环次数n内,模型所对应的特征向量集合中的向量数目达到最大值,执行步骤五四;

步骤五四、将步骤五三得到的模型作为待检测表面块上正常区域的标准特征向量,并求解步骤五三得到的模型对应的特征向量集合中,所有向量的欧式距离标准差σ。

5.根据权利要求4所述的基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法,其特征在于,所述步骤七中总面积为:Adefects=M×WH,其中M为标记为缺陷区域的个数;

缺陷区域总面积相对于待检测表面块面积的缺陷面积比为:r=(M×WH)/(N×WH)=M/N。

说明书 :

基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测

方法

技术领域

[0001] 本发明涉及灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法。

背景技术

[0002] 工业产品检测是工业产品质量控制的关键环节。目前,产品检测主要依靠人工检测方法,然而这种方法不仅生产效率低,而且人的视觉疲劳、主观判断等因素都会导致检测结果一致性较差。特别是随着生产过程自动化程度的不断提高,人工检测越来越不能满足当今工业领域在效率和精度等方面的要求。基于机器视觉技术的工业产品质量检测具有检测速度快、成本低和检测结果可靠等优点,因而被广泛应用于工业产品质量检测。
[0003] 表面缺陷不仅决定工业产品外观,也直接影响产品的内部性能,所以表面缺陷检测是产品质量检测最重要的环节之一。计算机科学的发展使得工业产品表面缺陷检测技术日趋多样化,传统的方法如滤波器方法以及统计学方法也得到了改进。基于滤波器的分析方法可以在任意方向和维度对图像进行分解,灵活性较强。基于统计学的方法有简单易行、自适应能力显著和鲁棒性强的特点,因而得到广泛应用;近年来,基于小波变换的多尺度分解的提出使得表面检测更具灵活性。
[0004] 但已有的工业产品表面检测技术仍然存在着很多不足。在实际的工业检测过程中,往往存在很大的干扰,这使得现有主流表面缺陷检测技术存在检测精度低、稳定性差、计算复杂度高等问题。此外,现有的绝大部分表面缺陷检测技术只能针对于某类缺陷而无法广泛应用,所以适用范围窄。

发明内容

[0005] 本发明是为了解决传统表面缺陷检测方法适用范围窄、计算复杂、检测精度低的问题,而提出的基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法。
[0006] 基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法方法按以下步骤实现:
[0007] 步骤一:对工业相机采集到的图像进行灰度化和中值滤波操作;
[0008] 步骤二:对步骤一中经灰度化和中值滤波操作后的图像,采用预存的图像模板,对中值滤波操作后的图像上的待检测表面块进行匹配与定位,并对该图像进行旋转,使其中的待测表面块与模板图像中的待检测表面块朝向一致;
[0009] 所述预存的图像模板是通过采集标准工业产品的相同检测表面得到的;
[0010] 步骤三:对步骤二得到的待检测表面块图像进行区域等分分割,得到N个局部图像区域,每个局部图像区域尺寸大小是H×W,其中H和W为系统预设值;N的值是根据H、W的值来给定的;
[0011] 步骤四:根据步骤三等分分割后的待检测表面块中的每个局部图像区域,计算灰度共生矩阵,并对灰度共生矩阵进行归一化,求解灰度共生矩阵的对比度、能量、相关度和同质性四个特征量,将所述四个特征量构成的向量作为局部图像区域的特征向量;
[0012] 步骤五:根据于步骤四得到的所有局部图像区域的特征向量,采用RANSAC算法进行一致性检测,在阈值T1条件下(根据实际待测表面块确定T1取值),将最大数目特征向量所对应的模型,作为待检测表面块上正常区域的标准特征向量,并求解该模型对应的所有特征向量的欧式距离标准差σ;
[0013] 步骤六:根据步骤五得到的标准特征向量以及欧式距离标准差σ,判断每个局部图像区域的特征向量:若局部图像区域的特征向量与标准特征向量的欧式距离小于3σ,则标记此局部图像区域为正常区域;否则,标记此图像区域为缺陷区域;
[0014] 步骤七:累加步骤六中所有缺陷区域得到其总面积,并求解缺陷区域总面积相对于待检测表面块面积的缺陷面积比,若缺陷面积比小于预设阈值T2(此阈值同样根据实际情况中对缺陷的容忍程度确定),则判断该待检测表面块的缺陷检测结果为合格;否则,则判断该待检测表面块的缺陷检测结果为不合格。
[0015] 发明效果:
[0016] 本发明针对现有主流工业产品表面缺陷检测技术存在检测精度低、稳定性差、计算复杂度高和适用范围窄等问题,提出了一种基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法,本发明可以应用到工业产品的自动生产和监测中,去除掉表面缺陷比较大的元件,保证出厂的产品的表面缺陷都控制在合理的范围内,检测精度高、稳定性好。
[0017] 1)本发明解决了现有主流工业产品表面缺陷检测技术存在的检测精度差、适用范围窄的问题。该算法的缺陷面积检测精度可达95%,且本发明不仅可以用于金属元件的表面检测,而且对玻璃元件、纸张、电子元器件等表面缺陷检测都有很强的适用性。
[0018] 2)在C++环境下,本发明算法针对640×480的工业图像的检测时间为200ms,较现有主流方法,检测效率高,稳定性好,适用于工业产品的快速检测场合。

附图说明

[0019] 图1为本发明流程图;
[0020] 图2为工业相机采集到的原始灰度图像的示意图;
[0021] 图3为原始灰度图像经过中值滤波操作后的灰度图像;
[0022] 图4为对应原始图像的缺陷区域标记图像。

具体实施方式

[0023] 具体实施方式一:如图1所示,基于灰度共生矩阵与RANSAC的工业产品表面缺陷视觉检测方法包括以下步骤:
[0024] 步骤一:对工业相机采集到的图像(如图2所示)进行灰度化和中值滤波操作;
[0025] 步骤二:对步骤一中经灰度化和中值滤波操作后的图像,采用预存的图像模板,对中值滤波操作后的图像上的待检测表面块进行匹配与定位,并对该图像进行旋转,使其中的待测表面块与模板图像中的待检测表面块朝向一致;
[0026] 所述预存的图像模板是通过采集标准工业产品的相同检测表面得到的;
[0027] 步骤三:对步骤二得到的待检测表面块图像进行区域等分分割,得到N个局部图像区域,每个局部图像区域尺寸大小是H×W,其中H和W为系统预设值;
[0028] 步骤四:根据步骤三等分分割后的待检测表面块中的每个局部图像区域,计算灰度共生矩阵,并对灰度共生矩阵进行归一化,求解灰度共生矩阵的对比度、能量、相关度和同质性四个特征量,将所述四个特征量构成的向量作为局部图像区域的特征向量;
[0029] 步骤五:根据于步骤四得到的所有局部图像区域的特征向量,采用RANSAC算法进行一致性检测,在阈值T1条件下,将最大数目特征向量所对应的模型,作为待检测表面块上正常区域的标准特征向量,并求解该模型对应的所有特征向量的欧式距离标准差σ;
[0030] 步骤六:根据步骤五得到的标准特征向量以及欧式距离标准差σ,判断每个局部图像区域的特征向量:若局部图像区域的特征向量与标准特征向量的欧式距离小于3σ,则标记此局部图像区域为正常区域;否则,标记此图像区域为缺陷区域(如图4所示);
[0031] 步骤七:累加步骤六中所有缺陷区域得到其总面积,并求解缺陷区域总面积相对于待检测表面块面积的缺陷面积比,若缺陷面积比小于预设阈值T2,则判断该待检测表面块的缺陷检测结果为合格;否则,则判断该待检测表面块的缺陷检测结果为不合格。
[0032] 具体实施方式二:本实施方式与具体实施方式一不同的是:所述步骤三中H×W取值为小于待测表面块中最小缺陷区域面积的1/2。
[0033] 当H、W的取值较小时,本检测算法对于待检测表面块上缺陷区域面积的检测精度较高;相反当H、W的取值较大时,对于待检测表面块上缺陷区域面积的检测精度较低。
[0034] 当H、W的取值较小时,说明检测算法对于待检测表面块的细分程度增加,其结果会提高算法的计算量;相反当H、W的取值较大时,说明检测算法对于待检测表面块的细分程度降低,会减少算法的计算量。
[0035] 其它步骤及参数与具体实施方式一相同。
[0036] 具体实施方式三:本实施方式与具体实施方式一或二不同的是:所述步骤四中四个特征量的求解方法为:
[0037] 对比度C:
[0038]
[0039] 式中,i、j为归一化后的灰度共生矩阵的行列坐标;p(i,j)为归一化后的灰度共生矩阵中第i行j列的值;
[0040] 能量E:
[0041]
[0042] 相关度R:
[0043]
[0044] 式中,ui为归一化灰度共生矩阵中行坐标的平均值;uj为归一化灰度共生矩阵中列坐标的平均值;σi为归一化灰度共生矩阵中行坐标的标准差;σj为归一化灰度共生矩阵中列坐标的标准差;
[0045] 同质性B:
[0046]
[0047] 其它步骤及参数与具体实施方式一或二相同。
[0048] 具体实施方式四:本实施方式与具体实施方式一至三之一不同的是:所述步骤五中欧式距离标准差σ的求解过程具体为:
[0049] 步骤五一、在N个局部图像区域得到的N个特征向量[Ck,Bk,Rk,Bk]中,选择任意一个特征向量作为模型,其中k=1,2,3,...,N;
[0050] 步骤五二、遍历剩余特征向量,若当前特征向量与模型的欧式距离小于预设阈值T1,则将该特征向量加入到该模型所对应的特征向量集合中,并将该集合中所有特征向量的均值重新作为该模型;
[0051] 步骤五三、重复步骤五一到五二,直到在规定循环次数n内,模型所对应的特征向量集合中的向量数目达到最大值,执行步骤五四;n的推荐值为10N;
[0052] 步骤五四、将步骤五三得到的模型作为待检测表面块上正常区域的标准特征向量,并求解步骤五三得到的模型对应的特征向量集合中,所有向量的欧式距离标准差σ。
[0053] 其它步骤及参数与具体实施方式一至三之一相同。
[0054] 具体实施方式五:本实施方式与具体实施方式一至四之一不同的是:所述步骤七中总面积为:Adefects=M×WH,其中M为标记为缺陷区域的个数;缺陷区域总面积相对于待检测表面块面积的缺陷面积比为:r=(M×WH)/(N×WH)=M/N。其它步骤及参数与具体实施方式一至四之一相同。
[0055] 实施例一:
[0056] 本发明实施实例中,先是对工业相机采集到的300×120的灰度图像进行中值滤波,滤波后的结果如图3所示;再将中值滤波后的图像分割为12等分,每个局部图像区域的大小为75×60;再采用RANSAC算法进行一致性检测,其阈值T1设置为40,得到标准特征向量对应的欧式距离标准差σ:16.0899;经过缺陷标记后,得到的缺陷检测结果图如图3所示,同时缺陷面积比为0.0298;实例中,选择判断是否合格的预设阈值T2为0.01,所以该元件为不合格产品。