一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于边缘特征的晶粒缺陷检测方法

2022-08-13 20:27:29 来源:中国专利 TAG:


1.本发明涉及机器视觉领域,具体涉及一种基于边缘特征的晶粒缺陷检测方法。


背景技术:

2.近几年来,多国释放促进半导体产业发展的政策信号,表明在“芯片荒”持续蔓延的背景下,全球各国正加快在该领域布局。生产得到的晶粒可能存在破损和双胞等缺陷,不合格的晶粒要及时检出并剔除,这就需要一种检测方法能高效准确地检测出有缺陷的晶粒。传统的人工检测方法,用人眼去观察,受限于晶粒较小的体积和密集的排布,效率低,精度差,很容易产生误检漏检,传统的人工检测方法并不能满足现代工业生产中的晶粒缺陷检测要求。


技术实现要素:

3.本发明的目的在于提供一种基于边缘特征的晶粒缺陷检测方法,其使用灰度直方图相似性模板匹配的方法实现晶粒查找并设置检测框检测边缘判断晶粒缺陷。
4.在本发明的一个方面,本发明提出了一种基于边缘特征的晶粒缺陷检测方法。根据本发明的实施例,包括以下步骤:
5.(1)使用分辨率为3072
×
2048的工业相机进行拍摄,获取待检测的晶粒图像和模板晶粒图像;
6.(2)对待检测的晶粒图像和模板晶粒图像进行预处理,然后对模板晶粒图像进行轮廓检测,计算模板晶粒的尺寸参数,再寻找待检测的晶粒图像的所有轮廓,对找到的轮廓依次进行初步筛选根据用户自主设置的精度等级,将待检测轮廓长宽与模板晶粒长宽进行比较:模板晶粒长宽乘以一个小值(大于0,小于1)作为范围下限,模板晶粒长宽乘以一个大值(大于1)作为范围上限。若待检测的轮廓长宽在限定范围内,则初步认定该轮廓是晶粒,再对其进行下一步检测;
7.(3)模板匹配:将步骤(2)中初步认定为晶粒的轮廓与模板晶粒进行模板匹配,得到二者相关性d(大于0,小于1,越接近1说明正相关性越强),由用户根据需求设置相关性阈值t,当d小于t时,不认为待检测轮廓为晶粒,反之认可待检测轮廓为晶粒;
8.(4)设置边缘检测框检测缺陷:对第(3)步认定的晶粒建立大检测框和小检测框,小检测框在晶粒内部,计算检测框内部黑点总数,超过设定的阈值,则认为该晶粒为破损,大检测框在晶粒外部,计算检测框四边上白点总数,超过设定的阈值,则认为该晶粒为双胞。
9.另外,根据本发明上述实施例的一种基于边缘特征的晶粒缺陷检测方法,还可以具有如下附加的技术特征:
10.在本发明的一些实施例中,所述步骤(1)中,使用分辨率为3072
×
2048的工业相机进行拍摄,获取待检测的晶粒图像和模板晶粒图像。
11.在本发明的一些实施例中,所述步骤(2)中,预处理方法具体如下,对待检测图像
和模板晶粒图像分别进行中值滤波,然后进行二值化阈值分割处理,再进行先腐蚀后膨胀的形态学操作。
12.在本发明的一些实施例中,所述步骤(2)中,尺寸参数包括晶粒宽度w(pixel)、晶粒长度h(pixel)、横向间隙spacex(pixel)、纵向间隙spacey(pixel),由用户根据标准晶粒大小、实际要求的排布间隙、实际成像系统参数自主设置的晶粒宽度w(μm)、晶粒长度h(μm)、横向间隙sx(μm)、纵向间隙sy(μm)、像素当量factor(μm/pixel),计算出模板晶粒图像对应的晶粒宽度(pixel)、晶粒长度(pixel)、横向间隙(pixel)、纵向间隙(pixel),计算公式如下所示,
13.w=w/factor,
14.h=h/factor,
15.spacex=sx/factor,
16.spacey=sy/factor。
17.在本发明的一些实施例中,所述步骤(3)中,模板匹配使用灰度直方图比较得到初步认定为晶粒的轮廓与模板晶粒的相关性。
18.在本发明的一些实施例中,灰度直方图的横坐标表示灰度级,纵坐标表示图像中对应某一灰度级所出现的像素个数或灰度级的频率,获得待检测晶粒与模板晶粒的灰度直方图h1和h2,相关性比较公式如下,
[0019][0020]
h1与h2越正相关,相关系数越接近于1,计算出来的值d如果不小于设置的相关性阈值t,则进入下一步判断。
[0021]
在本发明的一些实施例中,所述步骤(4)中,大检测框和小检测框建设方法如下,根据晶粒倾斜角度、中心点坐标与设置的最小长、宽可得到小检测框四个顶点坐标;根据晶粒倾斜角度、中心点坐标与设置的最大长、宽可得到大检测框四个顶点坐标。
[0022]
在本发明的一些实施例中,检测框顶点坐标计算方法如下:
[0023]

首先对晶粒的四个顶点进行标号,坐标y值最小的是0点,坐标x值最大的是1点,坐标y值最大的是2点,坐标x值最小的是3点;
[0024]

设晶粒倾斜角度绝对值为α
°
,设置检测框的四个顶点为p4,坐标y值最小的是p4[0]点,坐标x值最大的是p4[1]点,坐标y值最大的是p4[2]点,坐标x值最小的是p4[3]点,则根据已知的中心坐标(x0,y0)、角度α以及最小长宽或者最大长宽其中,长为h,宽为w,可由以下公式计算得到四个顶点坐标:
[0025]
晶粒向右倾斜时:
[0026]
p4[0].x=x0 0.5*w*cos(α)-0.5*h*sin(α)
[0027]
p4[0].y=y0-0.5*h*cos(α)-0.5*w*sin(α)
[0028]
p4[1].x=x0-0.5*w*cos(α)-0.5*h*sin(α)
[0029]
p4[1].y=y0-0.5*h*cos(α) 0.5*w*sin(α)
[0030]
晶粒向左倾斜时:
[0031]
p4[0].x=x0-0.5*w*cos(α) 0.5*h*sin(α)
[0032]
p4[0].y=y0-0.5*h*cos(α)-0.5*w*sin(α)
[0033]
p4[1].x=x0-0.5*w*cos(α)-0.5*h*sin(α)
[0034]
p4[1].y=y0 0.5*h*cos(α) 0.5*w*sin(α)
[0035]
根据对称性,p4[2]和p4[3]点的坐标可由以下公式得到:
[0036]
p4[2].x=2*x0-p4[0].x
[0037]
p4[2].y=2*y0-p4[0].y
[0038]
p4[3].x=2*x0-p4[1].x
[0039]
p4[3].y=2*y0-p4[1].y。
[0040]
在本发明的一些实施例中,所述步骤(4)中,晶粒破损检测方法包括以下步骤:
[0041]

找到小检测框最小外接正矩形,检测其内部黑点总数;
[0042]

根据小检测框的四个顶点计算其四边直线方程,由此判断检测出的黑点是否在小检测框内部,计算在小检测框内部的黑点总数;
[0043]

黑点总数超过设定的阈值,则认为该晶粒破损,反之认为该晶粒没有破损。
[0044]
在本发明的一些实施例中,所述步骤(4)中,晶粒是否为双胞的检查方法包括以下步骤:
[0045]

根据大检测框的四个顶点计算其四边直线方程;
[0046]

当晶粒向右倾斜时,短边方向跨度比y方向大,根据相应直线方程对x进行采样;长边y方向跨度比x方向大,根据相应直线方程对y进行采样;当晶粒向左倾斜时,对于短边根据相应直线方程对x进行采样,对于长边根据相应直线方程对y进行采样;该采样方法仅针对图像上纵向长度大于横向长度的晶粒,而对于图像上横向长度大于纵向长度的晶粒,可以根据同样的思想进行改变采样算法。
[0047]

计算采样得到的白点总数,超过设定的阈值,则认为该晶粒为双胞,反之认为该晶粒不是双胞。
[0048]
与现有技术相比,本发明的有益效果是:
[0049]
1)本发明使用灰度直方图相似性模板匹配的方法,基于缺陷晶粒的边缘特点,设置不同检测框检测破损和双胞缺陷,提出了一种检测晶粒缺陷的简单高效的方法。
[0050]
2)本发明提出的方法能让用户根据实际需求自主设置晶粒大小、精度等级、相关性阈值、像素级缺陷判断阈值等参数,适用于不同大小的方形晶粒缺陷检测。
[0051]
3)本发明便于统计缺陷数据,包括晶粒个数、晶粒位置、缺陷类型等信息。
附图说明
[0052]
图1是本发明实施例中输入的待检测的晶粒图像;
[0053]
图2是本发明实施例中输入的模板晶粒图像;
[0054]
图3是本发明实施例中预处理之后的待检测的晶粒图像;
[0055]
图4是本发明实施例中预处理之后的模板晶粒图像;
[0056]
图5是本发明实施例中模板晶粒灰度直方图;
[0057]
图6是本发明实施例中晶粒四个顶点编号示意图;
[0058]
图7是本发明实施例中晶粒检测框示意图;
[0059]
图8是本发明实施例中晶粒检测完成的结果图像。
具体实施方式
[0060]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0061]
根据实际应用和客户需求,晶粒的标准长宽(μm)、晶粒排布的标准横向间隙(μm)和纵向间隙(μm)、像素当量(μm/pixel)等参数都应该是已知的,而二值化阈值、晶粒长度范围、宽度范围、精度等级等参数是可以由用户根据需求自主设置的。使用灰度直方图相似性模板匹配的方法实现晶粒的查找后,设置大小检测框,分别用于检测双胞和破损缺陷。
[0062]
一种基于边缘特征的晶粒缺陷检测方法。根据本发明的实施例,包括以下步骤:
[0063]
1.使用分辨率为3072
×
2048的工业相机进行拍摄,获取待检测的晶粒图像和模板晶粒图像;
[0064]
2.图像预处理
[0065]
输入待检测图像和模板图像,分别如图1和图2所示。
[0066]
首先对两幅图像分别进行尺寸大小为3的中值滤波,能够有效抑制杂散点噪声,同时还能保持图像的细节。然后进行二值化阈值分割处理,再进行结构元尺寸为5的先腐蚀后膨胀的形态学操作,用于抑制比结构元小的亮细节,消除由于二值化处理导致的个别相邻晶粒间的微小连接,平滑晶粒边界,填充由于二值化处理导致的个别晶粒内部的微小空缺,处理后的待检测图像和模板图像如图3和图4所示。
[0067]
对模板图像进行轮廓检测,计算出模板晶粒的长宽(单位为像素pixel)。由用户根据标准晶粒大小、实际要求的排布间隙、实际成像系统参数自主设置的晶粒宽度w(μm)、晶粒长度h(μm)、横向间隙sx(μm)、纵向间隙sy(μm)、像素当量factor(μm/pixel),计算出模板晶粒图像对应的晶粒宽度(pixel)、晶粒长度(pixel)、横向间隙(pixel)、纵向间隙(pixel)。
[0068]
w=w/factor
[0069]
h=h/factor
[0070]
spacex=sx/factor
[0071]
spacey=sy/factor
[0072]
再寻找待检测图像所有轮廓,对找到的轮廓依次进行初步筛选根据用户自主设置的精度等级,将待检测轮廓长宽与模板晶粒长宽进行比较:模板晶粒长宽乘以一个小值(大于0,小于1)作为范围下限,模板晶粒长宽乘以一个大值(大于1)作为范围上限。若待检测轮廓长宽在限定范围内,则初步认可该轮廓是晶粒,再对其进行下一步检测。
[0073]
3.模板匹配
[0074]
寻找待检测图像所有轮廓,并对找到的轮廓依次进行初步筛选。对于其中一个得到认可的晶粒,将其与模板晶粒进行模板匹配。模板匹配使用灰度直方图比较得到二者相关性的方法。
[0075]
灰度直方图是灰度级的函数,是对图像中灰度级分布的统计,反映的是一幅图像中的各灰度级像素出现的频率。模板晶粒灰度直方图如图5所示,横坐标表示灰度级,纵坐标表示图像中对应某一灰度级所出现的像素个数,当然,灰度直方图的纵坐标也可以是某
一灰度值的像素数占全图像素数的百分比,即灰度级的频率。
[0076]
分别得到待检测晶粒与模板晶粒的灰度直方图h1和h2,相关性比较公式如下:
[0077][0078]
相关性比较公式来源于统计学中的相关系数,h1与h2越正相关,相关系数d越接近于1,计算出来的值d如果不小于设置的相关性阈值t,则进入下一步判断。
[0079]
4.设置边缘检测框检测缺陷
[0080]
经过前两步得到认可的晶粒,首先对晶粒的四个顶点进行标号,逻辑是:坐标y值最小的是0点,坐标x值最大的是1点,坐标y值最大的是2点,坐标x值最小的是3点,如图6所示。其角度、中心点坐标是可知的,根据其角度(angle)、中心点坐标(x0,y0)与设置的最小长(minh)、宽(minw)可得到小检测框四个顶点坐标,同理,根据设置的最大长(maxh)、宽(maxw)可得到大检测框四个顶点坐标,检测框示意图如图7所示。
[0081]
(1)计算检测框顶点坐标。
[0082]
以小检测框为例,设倾斜角度angle绝对值为α
°
,按一定设置小检测框四个顶点p4,坐标y值最小的是p4[0]点,坐标x值最大的是p4[1]点,坐标y值最大的是p4[2]点,坐标x值最小的是p4[3]点,则根据已知的中心坐标(x0,y0)、角度α以及最小长宽(minh与minw),可由以下公式计算得到四个顶点坐标:
[0083]
晶粒向右倾斜(angle》0)时:
[0084]
p4[0].x=x0 0.5*minw*cos(α)-0.5*minh*sin(α)
[0085]
p4[0].y=y0-0.5*minh*cos(α)-0.5*minw*sin(α)
[0086]
p4[1].x=x0-0.5*minw*cos(α)-0.5*minh*sin(α)
[0087]
p4[1].y=y0-0.5*minh*cos(α) 0.5*minw*sin(α)
[0088]
晶粒向左倾斜(angle《0)时:
[0089]
p4[0].x=x0-0.5*minw*cos(α) 0.5*minh*sin(α)
[0090]
p4[0].y=y0-0.5*minh*cos(α)-0.5*minw*sin(α)
[0091]
p4[1].x=x0-0.5*minw*cos(α)-0.5*minh*sin(α)
[0092]
p4[1].y=y0 0.5*minh*cos(α) 0.5*minw*sin(α)
[0093]
根据对称性,p4[2]和p4[3]点的坐标可由以下公式得到:
[0094]
p4[2].x=2*x0-p4[0].x
[0095]
p4[2].y=2*y0-p4[0].y
[0096]
p4[3].x=2*x0-p4[1].x
[0097]
p4[3].y=2*y0-p4[1].y
[0098]
大检测框的四个顶点同理可以求得。
[0099]
(2)检测边缘判断缺陷。
[0100]
小检测框在晶粒内部,计算检测框内部黑点总数,超过设定的阈值,则认为该晶粒为破损。检测方法为:
[0101]

找到小检测框最小外接正矩形(左上顶点(p4[3].x,p4[0].y),右下顶点(p4[1].x,p4[2].y)),检测其内部黑点总数;
[0102]

根据小检测框的四个顶点计算其四边直线方程,由此判断检测出的黑点是否在小检测框内部,计算在小检测框内部的黑点总数;
[0103]

黑点总数超过设定的阈值,则认为该晶粒破损,反之认为该晶粒没有破损。
[0104]
大检测框在晶粒外部,计算检测框四边上白点总数,超过设定的阈值,则认为该晶粒为双胞。检测方法为:
[0105]

根据大检测框的四个顶点计算其四边直线方程;
[0106]

当晶粒向右倾斜时(01边、23边是短边,03边、12边是长边),01边、23边x方向跨度比y方向大,所以根据相应直线方程对x进行采样;03边、12边y方向跨度比x方向大,所以根据相应直线方程对y进行采样。当晶粒向左倾斜时(01边、23边是长边,03边、12边是短边),同理,对于短边根据相应直线方程对x进行采样,对于长边根据相应直线方程对y进行采样。该采样方法仅针对图像上纵向长度大于横向长度的晶粒,目的是为了尽量减少漏采样,而对于图像上横向长度大于纵向长度的晶粒,也可以根据同样的思想进行改变采样算法。
[0107]

计算采样得到的白点总数,超过设定的阈值,则认为该晶粒为双胞,反之认为该晶粒不是双胞。
[0108]
检测完成的结果图像如图8所示,合格晶粒用绿色框框出,破损晶粒用红色框框出,双胞晶粒用蓝色框框出。
[0109]
以上内容仅仅是对本发明结构所作的举例和说明,所属本技术领域的技术人员对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献