一种工业缺陷检测方法及系统与流程

文档序号:29751053发布日期:2022-04-22 00:59阅读:340来源:国知局
一种工业缺陷检测方法及系统与流程

1.本发明涉图像处理领域,更具体的,涉及一种工业缺陷检测方法及系统。


背景技术:

2.在实际工业生产过程中,由于制作工艺及其他因素的影响,晶圆、封装和pcb等表面会出现诸如异物、芯片缺失、黑点、晶点、划伤、斑点等缺陷,这些缺陷会严重影响了电子芯片的质量和寿命,也给生产制造商带来了很大的经济损失。
3.工业缺陷不仅种类繁多,如金线缺失、金线不良、金线弯曲、多胶、少胶、漏焊、固晶不良以及裂晶等,而且缺陷往往面积较小,比如直径不到0.02mm的脏污点、条纹、破损、边缘裂缝、皱折、边缘破损、黑点疵点等。如果仅仅通过人工在显微镜下进行检测,不仅耗费大量的人力,而且人员主观专业知识差异,甚至不能够准确的判断出瑕疵,从而导致检测效率低、漏检率高、一致性差等问题。
4.为了提高生产效率,节省人力成本,必须使用机器来代替人工进行质检。以芯片为例,目前市面上现有的芯片检测方案存在诸多不足:1.传统视觉定位+传统缺陷检测方案,需要划分比较固定的若干区域,扩展性较差无法自由配置,需要人员必须需要专业技能。大部分自动光学检测都是基于正负标准样本库的图像差值对比提供公差类检测服务。工业界普遍使用传统检测多使用阈值或者模板匹配的方式。但是不同缺陷的种类复杂以及同类缺陷的差异较大,给缺陷分类带来了较大的难度,且算法不具备较强的鲁棒性,计算的效率也较低,几乎不借助gpu加速技术等。
5.2.深度学习定位+深度学习分类缺陷检测方案,定位芯片需要依赖标注数据,只有收集到足够数据之后才可以达到客户要求的定位精度。由于芯片产品往往更新迭代比较快,所以该方案存在建档慢的窘境。


技术实现要素:

6.鉴于上述问题,本发明的目的是提供一种工业缺陷检测方法及检测系统,以提高工业缺陷检测的检出率。
7.本发明一方面提供一种工业缺陷检测方法,所述方法包括以下步骤:初始化系统:分别初始化检测模型和分选模型;输入图片,并对图片进行校验,剔除坏的图片,获得待检测图像;根据输入待检测图像的数量,实时统计当前系统性能和当前进程的系统资源占用情况,调整检测模块的线程数;采用传统形状匹配等定位方式对待检测图像缺陷区域进行定位;然后再利用动态阈值、边缘检测等算法结合深度学习的分类模型对图片进行分选,分选出缺陷类型;将分选后的结果进行统计分析,再将最后的结果进行可视化。
8.本方案中,所述采用传统形状匹配等定位方式对待检测图像缺陷区域进行定位;然后再利用动态阈值、边缘检测等算法结合深度学习的分类模型对图片进行分选的具体操
作为:如果图片数量小于预设的目标数量,采用边缘检测或者动态阈值算法进行分选;如果前期收集的小料数量大于等于预设的目标数量,可以预先用分选后图片及标签,训练深度学习的分类模型;采用动态阈值等分选模型进行分选后,最后利用深度学习的分类模型对之后输入的小料图片进行分选。
9.本方案中,所述形状匹配定位方式包括以下步骤:首先根据预先设置的模板,从待检测的图像中定位出每颗产品的位置,然后粗略范围内,得到各产品中每颗晶粒的像素x坐标、像素y坐标和相对于模板的旋转角度;其次,根据定位到的坐标位置,和模板初始坐标位置生成一个仿射转换矩阵,将预先设置的检测区域基于该仿射转换矩阵进行一个仿射变换,然后将仿射变换之后的区域所对应的图像范围;最后,把对应的这些小料区域单独切割出来,并将其作为分选图像。
10.本方案中,所述训练深度学习的分类模型,包括以下步骤:收集至少预设张数经形状匹配等定位方式切割出来的小料区域图片数据,先粗略确定缺陷的种类;借助边缘检测算法或动态检测等传统算法对小料区域图片进行手动分类,确定这些缺陷的真实标签;最后,利用这些有用的小料区域图片和标签训练深度学习的分类模型。
11.本方案中,所述深度学习的分类模型的训练采用transformer算法进行训练。
12.本方案中,所述预先设置的模板采用预设的形状模板匹配,以准确定位出产品的位置。
13.本方案中,所述预设的形状模板匹配包括以下步骤:利用sobel梯度算子得到、和,其中公式分别如下面(1)、(2)和(3)所示;,其中公式分别如下面(1)、(2)和(3)所示;,其中公式分别如下面(1)、(2)和(3)所示;其中,代表图像的水平方向、代表图像的垂直方向、表示水平方向的卷积核、表示垂直方向的卷积核、分表示图像在水平方向上位置、垂直方向上位置上的像素值;通过canny算法得到边缘图像、基于轮廓发现得到所有的轮廓点集,基于每个点计算该点的、和三个值,生成模板信息;
然后对输入的图像进行sobel梯度图像之后,根据模型信息利用基于ncc的匹配算法进行匹配。
14.本方案中,所述基于ncc的匹配算法在匹配过程中,在任意一个点上,如果符合匹配ncc输出结果则趋近于1,给定一个最小阈值,如果在任意一点求和匹配小于最小阈值,就停止,继续从下一个点开始匹配。
15.本发明第二方面提供一种工业缺陷检测系统,所述检测系统包括:接收模块、检测模块、分选模块、性能分析模块、后处理模块、可视化模块;接收模块用来接收图片,并将接收到的图片进行分发给检测模块;检测模块用来对待检测图像进行检测,并将检测结果存入分选模块;分选模块用来对检测后的图像进行分选;性能分析模块用来实时统计当前的系统性能和当前进程的系统资源占用情况;后处理模块对分选后的结果进行统计分析,再将最后的结果发送给可视化模块进行可视化。
16.本方案中,所述分选模块采用transformer或resnet或densenet作为分类器。
17.所述预设的形状模板匹配,具体为采用图像特征匹配,具体的采用特征匹配中的形状或者轮廓匹配。
18.本发明公开了一种工业缺陷检测方法及系统,本发明是可以搭载传统的形状匹配定位算法和深度学习分类模型的缺陷检测系统,该系统可以根据自带的性能分析模块,实时对系统资源进行监控,动态调整检测模块和分选模块的负载,通过内部由核心调度实现的任务分发,可以进行快速无阻塞的计算。可以提高工业缺陷检测的检出率。本发明具有较强的性能,能够达到工厂对准确率和实时性的要求。不仅可以兼容传统的检测方案,如模板匹配和形状匹配等,而且分类部分可以采用cnn或者transformer系列的算法等。可以通过组件的形式进行灵活的搭建。
附图说明
19.图1示出了本技术一种工业缺陷检测方法的流程图;图2示出了本技术一种工业缺陷检测系统的框图;图3示出了某晶圆厂的拍摄原图;图4示出了某晶圆厂的拍摄原图的检测后的结果图;图5示出了划伤缺陷小料的展示图;图6示出了正常小料的展示图。
具体实施方式
20.为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本技术的实施例及实施例中的特征可以相互组合。
21.在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
22.图1示出了本技术一种工业缺陷检测方法的流程图。
23.如图1所示,本发明一方面提供一种工业缺陷检测方法,所述方法包括以下步骤:s102:初始化系统:分别初始化检测模型和分选模型;s104:输入图片,并对图片进行校验,剔除坏的图片,获得待检测图像;s106:根据输入待检测图像的数量,实时统计当前系统性能和当前进程的系统资源占用情况,调整检测模块的线程数;需要说明的是,性能分析模块会实时的统计当前的系统性能和当前进程的系统资源占用情况(如cpu时间片、内存、磁盘io和gpu等),调整检测模块的work线程数目,以做到资源的高效合理使用。
24.考虑到多线程负载情况,根据接收的图片数量,系统自动调整检测模块的线程数。这里的需要考虑每个线程的负载情况,使得所有线程能得到的尽量高的利用。举例来说,如果采用轮询的方式,发现a线程目前还在忙碌,可以考虑把对应的消息发送到b线程。总之,检测性能分析模块会实时的统计当前的系统性能和当前进程的系统资源占用情况(如cpu时间片、内存、磁盘io和gpu等),动态调整检测模块的work线程数目,以做到资源的高效合理使用。
25.s108:采用传统形状匹配等定位方式对待检测图像缺陷区域进行定位;然后再利用动态阈值等算法结合深度学习的分类模型对图片进行分选,分选出缺陷类型;需要说明的是,分类模块对图片进行分类,这里可以集成传统图像处理方法分类和深度学习的分类模块,如tensorflow、libtorch、onnx、tensorrt等。同样,考虑到多线程负载情况,根据负载情况,动态调整分选模块的线程数。在对缺陷进行分类过程中,为了提高算法精度和加速算法计算,往往需要标准化/归一化操作。归一化有最大-最小标准化和z-score标准化等,公式分别如下列式子所示,其中为均值,为标准差。
26.式中,和分别为图像的像素值以及归一化后的像素值大小。
27.s110:将分选后的结果进行统计分析,再将最后的结果进行可视化。
28.根据本发明实施例,所述采用形状匹配等定位方式对待检测图像缺陷区域进行定位;然后再利用深度学习的分类模型对图片进行分选的具体操作为:首先,对输入的图像中的小料进行定位,得到全部小料的中心点等信息;如果收集的小料数量小于预设的目标数量,采用传统算法(如动态阈值等)分选模型进行分选;如果前期收集的小料数量大于等于预设的目标数量,则则采用动态阈值或边缘检测分选模型进行分选,然后利用分选后的图片及标签,训练深度学习的分类模型;最后利用深度学习的分类模型对之后输入的小料图片进行分选。
29.需要说明的是,作为一个具体的实施例,本实施例所预设的目标数量为1000,当图片数量少于1000时,检测模块对图片进行检测,这里可以采用传统图像处理方法去检测。
30.如果目标数量多于1000个,可以采用多级连的方式,将分选模块的任务继续通过子任务分发的方式下发给子分选模块。其中前期的分选可以采用传统图像处理方法的方式,这样可以快速的收集一定量的图片,后期根据对应的图片及标签,训练深度学习的分类模型,从而得到更高的检出率。
31.如果目标数量多(比如某晶圆厂一片料含小料3*10^4),可以采用多级连的方式,将分选模块的任务继续通过子任务分发的方式下发给子分选模块。这种分发的方式类似于上面提到的方式,比如采用可以一次拍照中不同batch的小料分发到不同的线程来处理,每个子线程分别处理一个batch的数据,将归一化后的图片数据从cpu拷贝到gpu显存中,借助gpu的加速,从而实现快速的分选操作,最后分选主线程再将这些结果进行汇总。
32.根据本发明实施例,所述形状匹配定位方式包括以下步骤:首先根据预先设置的模板,从待检测的图像中定位出每颗产品的位置,然后在粗略范围内,得到各产品中每颗晶粒的像素x坐标、像素y坐标和相对于模板的旋转角度;其次,根据定位到的坐标位置,和模板初始坐标位置生成一个仿射转换矩阵,将预先设置的检测区域基于该仿射转换矩阵进行一个仿射变换,然后将仿射变换之后的区域所对应的图像范围;最后,把对应的这些小料区域单独切割出来,并将其作为分选图像。
33.根据本发明实施例子,所述训练深度学习的分类模型,包括以下步骤:收集至少预设张数经形状匹配等定位方式切割出来的小料区域图片数据,先粗略确定缺陷的种类;借助边缘检测算法或动态阈值算法等传统算法对小料区域图片进行手动分类,确定这些缺陷的真实标签;最后,利用这些有用的小料区域图片和标签训练深度学习的分类模型。
34.需要说明的是,所述预设张数可以是2000张,训练分类模型可以采用基于transformer算法等,图4给出了应用于图像分类的transformer框架图。它是直接应用于图像切片序列,在图像分类任务上表现良好的算法框架。为了处理二维图像,将图像x重塑为一连串扁平化的二维切片xp。由于变换器通过其所有层使用恒定的宽度,一个可训练的线性投影将每个矢量化路径映射到模型维度d上,他们将其输出称为切片嵌入。与bert的令牌类似,对嵌入切片序列采用了可学习的嵌入,其在变换编码器输出处的状态作为图像表示。在预训练和微调过程中,分类头的大小都是一样的。此外,在切片嵌入中加入1d位置嵌入以保留位置信息。当在足够的规模下进行预训练并转移到数据点较少的任务中时,transformer达到了很好的效果。
35.根据本发明实施例,所述深度学习的分类模型的训练采用transformer算法进行训练。
36.根据本发明实施例,所述预先设置的模板采用预设的形状模板匹配,以准确定位出产品的位置。
37.需要说明的是,作为一个具体的实施例,本实施例以芯片为待检产品,进行预先设置模板,制作能代表晶粒唯一特征的模板,采用该模板可以准确地定位出芯片的位置。这里采用基于预设的形状模板匹配,该方法不仅高效使内存快速匹配到所有晶粒,对图像尺寸大小无限制,而且可减轻后续处理缺陷时的压力。
38.该匹配算法主要时基于图像梯度,实现基于梯度级别的ncc模板匹配,基于sobel梯度算子得到、和。
39.通过canny算法得到边缘图像、基于轮廓发现得到所有的轮廓点集,基于每个点计算该点的、和三个值。生成模板信息。然后对输入的图像进行sobel梯度图像之后,根据模型信息进行匹配,这样的好处有两个:梯度对光照有很强的抗干扰能力,对模板匹配的抗光照干扰。
40.基于梯度匹配,可以对目标图像上出现的微小像素迁移进行抵消。
41.基于ncc的匹配算法在匹配过程中,在任意一个点上来说,如果符合匹配ncc输出结果应该趋近于1,给定一个最小阈值,如果在任意一点求和匹配小于最小阈值,就停止,继续从下一个点开始匹配。
42.根据本发明实施例,所述预设的形状模板匹配包括以下步骤:利用sobel梯度算子得到、和,其中公式分别如下面(1)、(2)和(3)所示;,其中公式分别如下面(1)、(2)和(3)所示;,其中公式分别如下面(1)、(2)和(3)所示;其中,代表图像的水平方向、代表图像的垂直方向、表示水平方向的卷积核、表示垂直方向的卷积核、分表示图像在水平方向上位置、垂直方向上位置上的像素值;通过canny算法得到边缘图像、基于轮廓发现得到所有的轮廓点集,基于每个点计算该点的、和三个值,生成模板信息;然后对输入的图像进行sobel梯度图像之后,根据模型信息利用基于ncc的匹配算法进行匹配。
43.根据本发明实施例,所述基于ncc的匹配算法在匹配过程中,在任意一个点上,如果符合匹配ncc输出结果则趋近于1,给定一个最小阈值,如果在任意一点求和匹配小于最小阈值,就停止,继续从下一个点开始匹配。
44.所述预设的形状模板匹配,具体为采用图像特征匹配,具体的采用特征匹配中的形状或者轮廓匹配。
45.图2示出了一种工业缺陷检测系统框图。
46.如图2所示,本发明提供一种工业缺陷检测系统,所述工业缺陷检测系统2包括:接收模块21、检测模块22、分选模块23、性能分析模块24、后处理模块25、可视化模块26;
接收模块21用来接收图片,并将接收到的图片进行分发给检测模块22;检测模块22用来对待检测图像进行检测,并将检测结果存入分选模块23;分选模块23用来对检测后的图像进行分选;性能分析模块24用来实时统计当前的系统性能和当前进程的系统资源占用情况;后处理模块25对分选后的结果进行统计分析,再将最后的结果发送给可视化模块26进行可视化。
47.根据本发明实施例,所述分选模块采用transformer或resnet或densenet作为分类器。
48.本发明公开了一种工业缺陷检测方法及检测系统,本发明是可以搭载传统图像处理方法定位方式和分选模型的缺陷检测系统,该系统可以根据自带的性能分析模块,实时对系统资源进行监控,动态调整检测模块和分选模块的负载,通过内部由核心调度实现的任务分发,可以进行快速无阻塞的计算。可以提高工业缺陷检测的检出率。本发明具有较强的性能,能够达到工厂对准确率和实时性的要求。不仅可以兼容传统的检测方案,如模板匹配和形状匹配等,而且分类部分可以采用cnn或者transformer系列的算法等。可以通过组件的形式进行灵活的搭建。
49.为直观展现本发明效果,选取一幅某晶圆厂的拍摄原图像,为便于展示截取部分图像,如图3和4所示。第一步通过检测模块后,得到结果,如图3所示。从图4可以看出,在检测部分,几乎所有小料都可以检出,而且回归框精度也很高,对下一步的分选提供了保障。图6为正常小料图,图5所示了原图中部分小料的缺陷类型,在分选部分,对缺陷的检出率也很高,实际统计中平均准确率达到99.3%。
50.在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
51.上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
52.另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
53.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
54.或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施
例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1