CN113409234A - 卷积神经网络(cnn)算法支持的晶片的最小监督自动检查(ai) - Google Patents
卷积神经网络(cnn)算法支持的晶片的最小监督自动检查(ai) Download PDFInfo
- Publication number
- CN113409234A CN113409234A CN202010180887.2A CN202010180887A CN113409234A CN 113409234 A CN113409234 A CN 113409234A CN 202010180887 A CN202010180887 A CN 202010180887A CN 113409234 A CN113409234 A CN 113409234A
- Authority
- CN
- China
- Prior art keywords
- image
- images
- training
- processor
- scanned
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 45
- 238000007689 inspection Methods 0.000 title abstract description 31
- 235000012431 wafers Nutrition 0.000 title abstract description 29
- 230000007547 defect Effects 0.000 claims abstract description 74
- 238000012549 training Methods 0.000 claims abstract description 52
- 238000013528 artificial neural network Methods 0.000 claims abstract description 51
- 230000000007 visual effect Effects 0.000 claims abstract description 12
- 238000000034 method Methods 0.000 claims description 48
- 230000003190 augmentative effect Effects 0.000 claims description 19
- 238000013135 deep learning Methods 0.000 claims description 18
- 230000002950 deficient Effects 0.000 claims description 16
- 230000011218 segmentation Effects 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 11
- 239000010931 gold Substances 0.000 claims description 7
- 229910052737 gold Inorganic materials 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 15
- 230000003416 augmentation Effects 0.000 description 12
- 238000013459 approach Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 239000013598 vector Substances 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 239000000523 sample Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 238000003908 quality control method Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000013074 reference sample Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000013106 supervised machine learning method Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
- G06T7/001—Industrial image inspection using an image reference approach
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/73—Deblurring; Sharpening
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/772—Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20224—Image subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30141—Printed circuit board [PCB]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30148—Semiconductor; IC; Wafer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
- Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
Abstract
本申请涉及卷积神经网络(CNN)算法支持的晶片的最小监督自动检查(AI)。计算装置包括存储器和处理器。存储器被配置为保存电子电路的一个或更多个参考图像。处理器被配置成(a)通过在参考图像中嵌入缺陷的视觉伪像来根据参考图像生成一组训练图像,(b)使用该一组训练图像来训练神经网络(NN)模型,以及(c)使用经训练的NN模型来识别在电子电路的复制品的经扫描的图像中的缺陷。
Description
发明领域
本发明总体上涉及机器学习技术,且特别是涉及深度学习技术在电子电路中的缺陷的自动检查中的使用。
发明背景
卷积神经网络(CNN)(其是人工神经网络(NN)的子类)被考虑为与其他类型的NN相比更适合于实际实现。特别是,CNN被研究用于在例如图像和自然语言处理的领域中的各种潜在应用,其中CNN可能在运行时间和所需的计算资源方面具有特别实用的优势。
原则上,CNN架构通过应用卷积步骤来降低计算的复杂性和持续时间,同时保留研究对象(例如图像)的基本特征,该卷积步骤降低在神经网络模型中的变量的数量。尽管卷积构成CNN架构的主干,但我们强调,这些网络还包含一些其他基本操作(例如,“转置卷积”、“池化(Pooling)”和“批量重正化”)和技术(例如“丢弃(Dropouts)”,其减少在小数据集上的过度拟合问题)。
此外,最近的CNN方法旨在减少常常在深度学习解决方案中需要的模型和数据库定制,以便实现全自动的基于NN的产品,并从而扩展NN的实际(例如,商业)应用的范围。
监督式机器学习方法(特别是CNN的训练)需要足够的训练数据,以便实现良好的泛化并避免过度拟合。不幸的是,由于可能的约束,获得足够的可靠真实训练数据并不总是可能的。需要足够的训练数据的一些解决方案因此旨在人工地增加训练数据的数量,以便实现NN的良好性能。
为了使用非常少的训练数据来构建可靠的NN模型,通常需要图像增广。图像增广通过不同方式的处理或多种处理(例如,随机旋转、移位、剪切和翻转等)的组合来人工地创建训练图像。替代上述图像或在上述图像的顶部,可以通过采用生成方法来执行附加的图像增广。对这种类型的增广的值得注意的方法是使用生成式深度学习模型,例如变分自编码器模型或生成式对抗网络模型。例如,生成式对抗网络模型可以使用涉及在两个神经网络之间的“竞争”的迭代过程来增广图像,如由Goodfellow等人在“Deep Learning”(MITPress,2016年,第20章第651-716页)中所述的。
发明概述
本发明的实施例提供了一种包括存储器和处理器的计算装置。存储器被配置为保存电子电路的一个或更多个参考图像。处理器被配置成(a)通过在参考图像中嵌入缺陷的视觉伪像来根据参考图像生成一组训练图像,(b)使用该一组训练图像来训练神经网络(NN)模型,以及(c)使用经训练的NN模型来识别在电子电路的复制品的经扫描的图像中的缺陷。
在一些实施例中,NN模型是卷积神经网络(CNN)模型。
在一些实施例中,在生成训练图像时,处理器还被配置成增广具有嵌入的视觉伪像的参考图像。在其他实施例中,在生成训练图像时,处理器还被配置成对已增广的参考图像进行图像相减,其中已增广的参考图像的图像相减包括从已增广的图像中减去无缺陷参考图像。
在一个实施例中,处理器被配置为通过将生成式深度学习(GDL)算法应用于选择的参考图像而生成所选择的参考图像的叠加来增广参考图像。
在另一个实施例中,处理器还被配置成通过应用生成式深度学习(GDL)算法来以光学方式校正在参考图像的一个或更多个中的模糊。
在一些实施例中,处理器还被配置为根据分类、对象检测和分割中的一个来标记被嵌有视觉伪像的参考图像中的一个或更多个。
在一些实施例中,电子电路是晶片的芯片的一部分。
在实施例中,处理器被配置为通过对经扫描的图像应用图像相减来识别在经扫描的图像中的缺陷,其中扫描图像的图像相减包括从经扫描的图像中减去无缺陷参考图像。
在另一个实施例中,参考图像中的至少一个包括下列项之一:(i)电子电路的实际复制品的经扫描的图像和(ii)通过几个复制品的扫描而生成的“金芯片”。
在又一实施例中,处理器被配置成识别以旋转扫描模式扫描的电子电路的复制品的图像中的缺陷。
根据本发明的另一实施例,另外提供了一种包括在存储器中保存电子电路的一个或更多个参考图像的方法。通过在参考图像中嵌入缺陷的视觉伪像来根据参考图像生成一组训练图像。使用该一组训练图像来训练神经网络(NN)模型。使用经训练的NN模型,识别出在电子电路的复制品的经扫描的图像中的缺陷。
根据本发明的实施例连同附图一起的下面的详细描述,本发明将被更完全地理解,其中:
附图简述
图1是示意性示出根据本发明的实施例的被配置为使用卷积神经网络(CNN)缺陷检测算法的自动晶片检查系统的框图;
图2是根据本发明的实施例的覆盖单个芯片(die)的参考分块图像(patch image)的阵列以及使用参考图像进行训练的多个相应神经网络(NN)模型的图;
图3A和3B是根据本发明的实施例的图2的参考图像之一在被嵌有人工缺陷之前和之后的图;
图4A和4B是根据本发明的实施例的检查图像和由检查图像生成的相应多标签分割掩模的图;
图5是示意性示出根据本发明的实施例的晶片的旋转扫描模式的图;
图6A和6B是示出根据本发明的实施例的图2的模糊参考图像和在通过生成式深度学习(GDL)模型调准焦距之后的图像的图;
图7是示意性示出根据本发明的实施例的使用最小监督卷积神经网络(MS-CNN)模型来检测电子电路中的缺陷的方法的流程图;以及
图8A-8C是根据本发明的实施例的描述通过生成式深度学习(GDL)模型进行图像增广的步骤的示意性框图。
实施例的详细描述
概要
所公开的发明的实施例提供了(最小)监督卷积神经网络算法的实现。监督学习是通过所标记的训练示例(输入对象和相应期望输出值的对)来达到学习目标(某个功能的实现)的机器学习任务。
用于所制造的电路(例如图案化的晶片和印刷电路板(PCB))的质量控制的自动检查(AI)在制造设施中定期地完成。在制造步骤之间使用AI来检测缺陷(例如,裂缝、划痕、空隙、残余沉积物)提高了产量并降低了制造成本。然而,建立和维护AI操作是在技术上有挑战性的和劳动密集的。首先,现有的AI系统必须按照产品且按照生产线被定制。此外,现有的AI系统由于例如在所制造的电路和由AI系统用于质量控制所使用的参考电路之间的无害的重复过程变化(例如,在导体线宽中)而产生高误报率。
检测缺陷的一种可能的方式是使用所制造的电路的减影图像,该减影图像通过从扫描(即检查)图像中减去无缺陷电路(也被称为“金芯片”)的图像来被得到。由于上面提到的良性过程变化,减影图像(即差异图像)常常包括可能被AI系统错误地识别为缺陷的总体特征,例如线条。其他复杂情况(complications)产生于AI装置(例如由AI系统使用的摄像机)相对于被检查样本(例如,晶片芯片)的紧密对准要求。
基于神经网络(NN)模型(例如,在基于NN的检查算法的基础上)的AI系统可以潜在地解决上面提到的困难中的大多数或全部。在NN模型的类别当中,卷积神经网络(CNN)类别可以被考虑为最适合于图像分析。特别是,相对于其他NN模型,训练CNN模型的计算和存储要求在可及范围内。CNN模型的实用性是由于在CNN模型中的卷积操作,其可以将AI的复杂性降低几个数量级,允许网络在可接受的时间和成本内执行AI任务。
在下文中描述的本发明的实施例提供了应用最小监督式NN(例如最小监督卷积神经网络(MS-CNN))来检测在电子电路中(例如在图案化的晶片和PCB)中的缺陷的缺陷检查系统和方法。
相应于缺陷检测解决方案的AI任务可被分类为下列类别中的任一个:
a)分类–确定样本图像是好的还是坏的;
b)对象检测-定位图像样本中可能的缺陷;
c)分割–将标签分配到输入样本的每个像素,产生相关联的掩模。这种输出标记了缺陷,并且也许还可能标记它们的类型和性质(例如,缺陷在导电线上或在台面上或在衬底上)。可以进一步分析分割掩模以识别缺陷的根本原因。
可选地或者除了生成分割掩模之外,为了标记缺陷的目的,输出可以包括有助于容易识别在其中发现缺陷的感兴趣区域的“热图”。热图可能是有利的,因为它们可以指示缺陷的原因而不会立即执行在分割掩模生成中涉及的密集计算。
相应地,所公开的CNN技术的输出可以对应于这些类型的输出中的任一个(尽管输出具有明显不同的形式,而训练方案几乎是相同的)。深度CNN算法可以完成任何前面提到的任务,即分类(VGG、Resnet、Inception等)、对象检测(更快的RCNN、SSD等)、分割(FCNN、Unet、DeepLab等)。这些得到许多已发布作品的支持。
所公开的基于MS-CNN的检查技术只需要无缺陷电路的有限数量的参考图像作为输入。劳动密集的定制努力(包括对于训练阶段的许多训练样本中的缺陷的人工标记)不是所公开的AI系统和方法的使用的必要部分,并且可能后来出现的任何较小定制(特别是包括少许的另外标记/标志的非无缺陷输入)仅仅是为了所公开的AI系统和基于CNN的方法的改进和微调的目的。
所公开的对AI的最小监督方法隐藏了基本的、完全监督的方法。有限数量的参考图像被上传到处理器,并且处理器在参考图像中嵌入人工缺陷(即,在参考图像中嵌入缺陷的视觉伪像)。然后,处理器增广所产生的人工图像以创建适合于训练神经网络的一组图像。图像增广步骤可以包括例如光随机变化,诸如翻转、平移、旋转、失真、缩放、裁剪、高斯噪声的添加以及在所感知的照明(例如亮度)中的变化。
另外或者可选地,处理器也可以将随机变化应用于随机地嵌入在参考图像中的人工缺陷。随机变化可以类似于上面列出的变化,然而允许明显更大范围的失真。最后,如上所述,处理器由嵌入人工缺陷的图像和增广的图像生成相应的一组减影图像。操作的顺序(例如,嵌入人工缺陷、增广和图像相减)可以改变。
在另一个实施例中,除了通过上述方法进行的图像增广之外,处理器可以应用生成式深度学习(GDL)模型以进一步增广图像(即,以超出上面引入的变化的方式,例如线性变换)。例如,使用卷积生成式对抗网络(cGAN)类型的GDL模型使一组虚假图像的产生成为可能,这些虚假图像是前述增广的图像的假设,并从而反映在制造中的没有另外被已增广的图像的原始训练集覆盖的潜在过程变化。
在又一个实施例中,代替增广参考图像,所公开的MS-CNN技术例如无需需要金芯片的离线准备步骤增广扫描检查图像本身中的一个或更多个。换句话说,参考图像中的一个或更多个可以包括电子电路的实际复制品的经扫描的图像。在这种情况下,MS-CNN模型被训练以使用来自检查线的缺陷较少或缺陷较多的芯片的检查图像的分布的统计模型来识别缺陷。然而迄今为止,使用上面提到的参考图像从所需的计算能力和检查步骤的持续时间方面来说通常是更实际的方法。
自动检查系统描述
图1是示意性示出根据本发明的实施例的被配置为使用卷积神经网络(CNN)缺陷检测算法的自动晶片检查系统10的框图。在本示例中,处理器110针对机器学习(ML)被优化,旨在ML推理事务(inference chores)和/或ML训练。处理器110的架构通常基于专用图形处理单元(例如,基于多个GPU)。然而,所公开的AI技术也适用于各种各样的处理器架构。
图1示出了包括载物台(stage)102的另一种典型的自动晶片检查系统,包括芯片106的晶片104被安装在载物台102上。载物台102在根据由处理器110命令的程序被载物台控制器108控制时水平和垂直地移动晶片(例如,执行X-Y移动)。可选地,可以在被保持在一个位置上的晶片上方移动图像获取单元116。
图像获取单元116获取被检查的芯片的图像,并且图像被存储在存储器114中。和处理器110根据待检查的芯片的一个或更多个参考图像生成的图像的训练集(例如,包含嵌入的人工缺陷的图像)一起,没有缺陷的参考芯片(也被称为金芯片)由处理器生成(或另外用户可以指定无缺陷芯片)。
载物台102可以以小的增量逐步移动,允许单元116在每个步骤内获取单个分块图像,或者沿着线连续移动,允许单元116拍摄完整的带状图像的图像(例如,通过TDI摄像机)。
芯片的典型尺寸是10x10毫米,而搜索到的缺陷尺寸通常小四个数量级,因此可以拍摄数百个高分辨率图像以覆盖每个芯片(这当然取决于放大倍数);可选地,使用线扫描,仅用很少的带状图像,整个晶片(特别是整组芯片)就可以被覆盖。使用利用MS-CCN算法上传的MS-CNN缺陷检测模块112,处理器110在短持续时间内对每个图像(或图像的一部分)进行分析(例如,分类)。
用户接口118可以包括远程地配置系统10(例如,使AI系统10生成要检查的新类型的芯片的图像的训练集)的通信装置(例如,到移动电话或网络应用的消息传递工具)和在有制造问题的情况下警告用户的视听装置,且因此系统10可以在最少人工干预的情况下进行远程操作。
在各种实施例中,图1所示的系统的不同电子元件可以使用合适的硬件(例如使用一个或更多个分立部件、一个或更多个专用集成电路(ASIC)和/或一个或更多个现场可编程门阵列(FPGA))来实现。所公开的处理器、单元和模块的一些功能(例如,处理器110的和MS-CNN缺陷检测模块112的一些或全部功能)可以在一个或更多个通用处理器中实现,这些通用处理器以软件编程为执行本文描述的功能。软件可例如通过网络或从主机以电子形式被下载到处理器,或者它可以可选地或另外被提供和/或存储在非暂时性有形介质(例如磁性、光学或电子存储器)上。
用于检查的单个或多个专用神经网络架构
如上面所提到的,覆盖整个芯片的单个图像不能提供检查芯片所需的分辨率。因此,在检查会话期间,系统10在固定的相对坐标处拍摄多个分块图像或带状图像以生成完全覆盖晶片的芯片的分块图像的阵列(例如,通过将多个分块图像拼接在一起或者通过裁剪拼接几个带状图像的成果来构建完整的芯片图像)。
此外,目前,在本文使用的NN架构的输入被优化以分析相对小的图像。鉴于下面的方法,这并不阻碍NN方法分析较大的图像(无需重新缩放(rescaling))。
图2是根据本发明的实施例的覆盖单个芯片106的参考分块图像202的阵列以及在图像202被嵌有人工缺陷并被增广之后由参考分块图像202训练的相应的多个神经网络(NN)模型204的示意图。对于芯片106的每个分块,(通过系统10或通过另一系统)从不同的角度和位置获取参考图像202,以便使系统10支持在不同角度处和从任意位置拍摄的检查图像。
参考芯片106的不同分块可以包括不同的电路。在所示实施例中,多个神经网络(NN1、NN2、...)由处理器使用相应的参考分块图像单独地训练以优化检查。因此,NN1、NN2、...中的每个与单个分块坐标相关联,并且每个分块使用专用NN配置被检查。
这种多个NN方法的其他实现是可能的;例如,使用单个然而是多输入的NN,使得输入中的每一个由NN的专用分支处理,以及最终特征被连结起来。
可选地,作为NN的输入的一部分,所公开的技术包括差异图像(在被检查的分块图像与没有缺陷的相应参考分块图像之间)。在差异图像中,缺陷不是通过被减去的图像的单独特征而是通过它们的差异被识别,因此图像被获取的确切位置是不重要的。这种方法也可以被结合到半-CNN推理中,其中通过计算差异图像来开始分析,并通过定位可疑缺陷来继续,然后是进一步应用NN以生成标签(其确定可疑区域是否对应于缺陷并且如果需要则对其标记)。
通过嵌入人工缺陷来生成图像的训练集
如上面所提到的,处理器必须嵌入人工缺陷,以便生成人工参考图像。
图3A和3B是根据本发明的实施例的在图2的参考图像202之一被嵌有人工缺陷303之前(302)和之后(304)的图。
如上所述,嵌有人工缺陷的参考图像304进一步经历增广(未示出)以生成人工图像的大数据库。所得到的人工图像集中的图像,每个进一步经历图像相减,且然后用于训练CNN模型以检测在扫描图像中的缺陷。
多标签分割掩蔽
如上面进一步提到的,分割掩模是用于缺陷检测(例如,在分类之前)的工具,其中处理器生成在本质上将标签(或类别)与输入图像的每个像素相关联的“语义分割掩模”。
尽管对于大多数目的来说,考虑两个标签“缺陷”或“非缺陷”就足够了(对于这两个标签,所生成的掩模是二元黑白图像),但附加的像素标签可以用于对应在输入图像上的不同感兴趣区域,在这种情况下,所生成的掩模将是多级(例如,多色)图像。
图4A和4B是根据本发明的实施例的检查图像402和根据检查图像402生成的相应多标签分割掩模的图。所示的检查图像包括在衬底406上的导电线404。处理器通过采用用于图像分割的卷积神经网络来生成掩模410,其本质上教导机器“理解”什么是背景(属于参考图像,例如线404)以及什么不是背景,因此被考虑为前景。如所看到的,所制造的元件识别出两个缺陷408。
使用多标签分割,实现了前景到感兴趣区域内的进一步分类。使用多标签分割掩模,以便区分开不同性质的区域,其中在掩模410中,在电极404上的缺陷由浅阴影412(或颜色)标记,而在电极404外部的缺陷由深阴影414(或另一种颜色)标记。
旋转扫描模式
通常,通过水平和垂直地扫描晶片(例如通过沿着线移动摄像机直到晶片被覆盖)来完成光学扫描,如图1所述。线性扫描模式对扫描速度强加了一些限制。
图5示意性地示出根据本发明的实施例的晶片104的旋转扫描模式。在公开的实施例中,晶片104安装在旋转(505)晶片的载物台上。图像获取单元径向地逐步移动(506)并拍摄(508)图像,直到晶片104被覆盖为止。如所看到的,所得到的图像(502,504)(无论是参考图像还是扫描图像)的阵列由角截面分块图像而不是矩形分块图像构成。通常,由于所涉及的算法复杂性,这种方法将被拒绝,因为分块图像以不同的相对角度被获取。
然而,考虑到对特定区域的专用NN的方法,使用所公开的CNN算法的处理器可以检测晶片缺陷,而实际上不需要参考图像用于相减以便获得差异图像(这是至关重要的,因为当使用旋转扫描时,对应的参考分块图像的分配需要非常复杂的对准,以便将经扫描的分块图像匹配到来自参考芯片的分块图像)。然而,我们终究并不排除使用参考图像的可能性。
使用神经网络的光学质量校正和增强
使用生成式深度学习方法,所公开的方法可以用于改善由AI系统获取的缺陷的经扫描的图像的光学质量。
例如,某种程度的图像模糊可能由各种原因(例如运动或差的聚焦)引起。甚至微量的模糊也可能降低自动检查系统的性能,因为小缺陷的可见性最易受模糊的影响。使用基于CNN的方法,本发明的实施例校正了图像以锐化聚焦。
图6A和6B是示出根据本发明的实施例的图2的模糊参考图像602和在通过生成式深度学习(GDL)模型调整焦距(608)之后的图像(604)的图。如所看到的,图像602的边缘特征606是模糊的而不是清晰的。所获取的图像的焦点不一致由所公开的实施例使用GDL模型(例如cGAN)来校正,用于对图像或图像的部分去模糊。如在图6B中看到的,模糊边缘606被转换成清晰边缘610。
此外,生成式深度学习方法可用于图像去噪以进一步提高实际缺陷的检测能力。在一些情况下,生成式深度学习方法(例如cGAN模型)可以进一步在所谓的“超分辨率”功能中被使用,其中模型会添加模型将其确定为缺失的细节,以便提高图像分辨率。
使用生成式深度学习方法,所公开的方法还可以用于解决AI系统本身的微小光学问题(例如,补偿透镜中的轻微缺陷或者补偿微小的未对准)。
由CNN算法支持的晶片的最小监督AI
图7是示意性示出根据本发明的实施例的使用最小监督卷积神经网络(MS-CNN)模型来检测在电子电路中的缺陷的方法的流程图。根据所呈现的实施例,该算法执行被分成训练阶段700和检查阶段701的过程。
训练开始于图像上传步骤702,在步骤702中电子电路的图像被上传到处理器(例如,处理器110)。在参考图像选择步骤703处,用户选择或生成参考图像。在步骤703处,用户可以使用普通的平均化/滤波方法或者通过明确地选择被认为没有缺陷的芯片的图像来获得“金芯片”参考图像(即,无缺陷芯片图像)。金芯片图像被存储,且系统为训练做好准备。
在标记步骤704处,用户针对参考图像的每个分块(具有NN输入的大小)分配标签,例如通过/未通过分类标签,以分配相应的任务。其他标签是可能的,例如以进一步识别引起故障的缺陷的类型和位置。如果训练基于无缺陷图像,例如基于金芯片图像,则处理器将相同的标签(即,没有缺陷)分配到构成它的所有分块。
接下来,处理器在图像训练集生成步骤706处通过嵌入人工缺陷和通过所标记的参考图像的增广来根据所标记的参考图像生成相应的训练图像集。接下来,在可选步骤中,处理器在图像相减步骤708处通过从训练集的每个图像中减去金芯片的相应图像来根据训练图像生成图像相减的训练图像。
使用图像的所标记的元组的训练集(其中元组可以包含被检查的分块图像、来自金芯片的相关联的分块图像以及它们的差异),处理器在CNN训练步骤710处训练MS-CNN模型以检测缺陷,如上所述。
在晶片扫描步骤712处,检查阶段701开始于AI系统(例如,系统10)扫描晶片(图像获取产生分块图像或带状图像)。处理器在图像输入步骤714处将所获取的图像的子分块图像转变成(具有在训练阶段中用于馈送CNN的形式的)图像的元组,这些元组作为几批元组被馈送到CNN内。元组应该包含差异图像或者至少包含从其中可获得关于差异图像的信息的图像,使得缺陷可以被发现。
然后,处理器在缺陷检测步骤716处应用已经训练的MS-CNN模型以检测由步骤714的图像输入步骤捕获的潜在缺陷。最后,处理器输出报告,处理器在报告中将每个芯片分类为正常的或有缺陷的。
纯粹为了清楚起见,图7的流程图作为示例被提出。附加或替代实施例可以包括诸如正常的芯片和有缺陷的芯片的进一步分析的步骤,以例如收集正常的芯片并执行根本原因分析。进一步分析可能需要多级分割掩模的生成。在另一个实施例中,处理器可以针对每个芯片生成热图,例如以快速识别(例如,在同一区域处的芯片中再次出现的)系统性缺陷的原因。
虽然由图7描述的检查过程针对晶片芯片,但其他电子电路(例如PCB的电路)可以以类似的方式被检查。
如上面已经提到的,可以根据任何现有图像生成(例如,增广)虚假图像(其也是人工图像)以反映除了可能的缺陷之外的在芯片中的其他过程变化。这种变化是不可避免的;这些改变可以用各种方式(例如以芯片的部分的尺寸(或相对尺寸)的微小差异以及它的颜色的差异或者甚至晶片几何形状(例如,它的深度或平面角度)的微小改变)被表示。人工图像增强了上述MS-CNN模型(其被馈送有仅仅几个真实样本用于训练)将真实缺陷与良性过程变化区分开的能力。
图8A-8C是根据本发明的实施例的描述通过生成式深度学习(GDL)模型进行图像增广的步骤的示意性框图。图8A示出了芯片的一部分的参考图像802,其被编码到“隐式(latent)”向量空间806的向量中。经训练的解码器能够由图像802的表示向量准确地重建图像802,并生成重建的图像810。
在图8B中,两个参考图像(图像(A)814和图像(B)818)具有相同芯片位置但具有不同芯片(例如,来自不同晶片的芯片)。如可以看到的,存在类似缩放的效果,其使图像(A)814和图像(B)818沿着图像的水平轴不同。
在图8B中,图像(A)814和图像(B)818作为向量A和向量B被编码到横向(lateral)空间822中。使用隐式空间的向量空间属性,线性组合向量C 826,C=αA+βB(α和β是实数),也仅是虚假图像的图像表示,而不是拍摄图像并随后增广图像。在这种情况下,经训练的解码器从向量C生成虚假图像830。
经训练的鉴别器能够在下面的意义上确定(834)虚假图像830是否是真实的:它适合于包含在训练图像集中或它是不应该用于训练的虚假图像。
通过生成代表可能的过程变化的虚假图像,例如图像830,上述MS-CNN模型被配备有增加的训练图像集,包括具有与通过上面提到的传统增广方法增广的图像的属性不同的属性的图像。
尽管本文描述的实施例主要解决电子电路的自动检查,但本文描述的方法和系统也可以用在其他应用中,例如在摄像机滤波器、LED或由类似于我们提出的系统的光学系统扫描的任何其他产品线的检查中,在这些检查中有缺陷的项的图像可以被识别为与参考样本(例如金芯片)具有相对小的偏差。
因此将认识到,上面描述的实施例作为示例被引用,以及本发明并不限于在上文中特别示出和描述的内容。更确切地,本发明的范围包括在上文所描述的各种特征的组合和子组合以及本领域中的技术人员在阅读前述描述时将想到的且在现有技术中未被公开的上述各种特征的变形和修改。通过引用并入本专利申请中的文件被考虑为本申请的组成部分,除了到任何术语在这些并入的文件中以与在本说明书中明确地或隐含地做出的定义相冲突的方式被定义的程度,只应考虑在本说明书中的定义以外。
Claims (22)
1.一种计算装置,包括:
存储器,所述存储器被配置为保存电子电路的一个或更多个参考图像;以及
处理器,所述处理器被配置成:
通过在所述参考图像中嵌入缺陷的视觉伪像来根据所述参考图像生成一组训练图像;
使用所述一组训练图像来训练神经网络(NN)模型;以及
使用经训练的NN模型来识别在所述电子电路的复制品的经扫描的图像中的缺陷。
2.根据权利要求1所述的计算装置,其中,所述NN模型是卷积神经网络(CNN)模型。
3.根据权利要求1所述的计算装置,其中,在生成所述训练图像时,所述处理器还被配置成增广具有嵌入的视觉伪像的所述参考图像。
4.根据权利要求3所述的计算装置,其中,在生成所述训练图像时,所述处理器还被配置成对已增广的参考图像进行图像相减,其中所述已增广的参考图像的图像相减包括从所述已增广的图像中减去无缺陷参考图像。
5.根据权利要求3所述的计算装置,其中,所述处理器被配置为通过将生成式深度学习(GDL)算法应用于选择的参考图像而生成所述选择的参考图像的叠加来增广所述参考图像。
6.根据权利要求1-5中的任一项所述的计算装置,其中,所述处理器还被配置成通过应用生成式深度学习(GDL)算法来以光学方式校正在所述参考图像的一个或更多个中的模糊。
7.根据权利要求1-5中的任一项所述的计算装置,其中,所述处理器还被配置为根据分类、对象检测和分割中的一个来标记被嵌有所述视觉伪像的所述参考图像中的一个或更多个。
8.根据权利要求1-5中的任一项所述的计算装置,其中,所述电子电路是晶片的芯片的一部分。
9.根据权利要求1-5中的任一项所述的计算装置,其中,所述处理器被配置为通过对经扫描的图像应用图像相减来识别在所述经扫描的图像中的缺陷,其中扫描图像的图像相减包括从所述经扫描的图像中减去无缺陷参考图像。
10.根据权利要求1-5中的任一项所述的计算装置,其中,所述参考图像中的至少一个包括下列项之一:(i)所述电子电路的实际复制品的经扫描的图像和(ii)通过几个复制品的扫描而生成的“金芯片”。
11.根据权利要求1-5中的任一项所述的计算装置,其中,所述处理器被配置成识别以旋转扫描模式扫描的所述电子电路的复制品的图像中的所述缺陷。
12.一种方法,包括:
在存储器中保存电子电路的一个或更多个参考图像;
通过在所述参考图像中嵌入缺陷的视觉伪像来根据所述参考图像生成一组训练图像;
使用所述一组训练图像来训练神经网络(NN)模型;以及
使用经训练的NN模型来识别在所述电子电路的复制品的经扫描的图像中的缺陷。
13.根据权利要求12所述的方法,其中,所述NN模型是卷积神经网络(CNN)模型。
14.根据权利要求12所述的方法,其中,生成所述训练图像包括增广具有嵌入的视觉伪像的所述参考图像。
15.根据权利要求14所述的方法,其中,生成所述训练图像包括对已增广的参考图像进行图像相减,其中已增广的参考图像的图像相减包括从所述已增广的图像中减去无缺陷参考图像。
16.根据权利要求14所述的方法,其中,增广所述参考图像包括通过将生成式深度学习(GDL)算法应用于选择的参考图像来生成所述选择的参考图像的叠加。
17.根据权利要求12-16中的任一项所述的方法,包括通过应用生成式深度学习(GDL)算法来以光学方式校正在所述参考图像的一个或更多个中的模糊。
18.根据权利要求12-16中的任一项所述的方法,包括根据指定的客观标签:分类、对象检测或分割,来标记被嵌有所述视觉伪像的所述参考图像中的一个或更多个。
19.根据权利要求12-16中的任一项所述的方法,其中,所述电子电路是晶片的芯片的一部分。
20.根据权利要求12-16中的任一项所述的方法,其中,识别在所述经扫描的图像中的缺陷包括对所述经扫描的图像应用图像相减,其中扫描图像的图像相减包括从所述经扫描的图像中减去无缺陷参考图像。
21.根据权利要求12-16中的任一项所述的方法,其中,所述参考图像中的至少一个包括下列项之一:(i)所述电子电路的实际复制品的经扫描的图像和(ii)通过几个复制品的扫描而生成的“金芯片”。
22.根据权利要求12-16中的任一项所述的方法,其中,识别所述缺陷包括识别以旋转扫描模式扫描的所述电子电路的复制品的图像中的所述缺陷。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010180887.2A CN113409234A (zh) | 2020-03-16 | 2020-03-16 | 卷积神经网络(cnn)算法支持的晶片的最小监督自动检查(ai) |
US16/838,055 US20210287352A1 (en) | 2020-03-16 | 2020-04-02 | Minimally Supervised Automatic-Inspection (AI) of Wafers Supported by Convolutional Neural-Network (CNN) Algorithms |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010180887.2A CN113409234A (zh) | 2020-03-16 | 2020-03-16 | 卷积神经网络(cnn)算法支持的晶片的最小监督自动检查(ai) |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113409234A true CN113409234A (zh) | 2021-09-17 |
Family
ID=77664791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010180887.2A Pending CN113409234A (zh) | 2020-03-16 | 2020-03-16 | 卷积神经网络(cnn)算法支持的晶片的最小监督自动检查(ai) |
Country Status (2)
Country | Link |
---|---|
US (1) | US20210287352A1 (zh) |
CN (1) | CN113409234A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114372984A (zh) * | 2022-03-22 | 2022-04-19 | 南京熊猫电子制造有限公司 | 一种超分辨率元器件角度识别装置及方法 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11954846B2 (en) * | 2020-06-16 | 2024-04-09 | Elementary Robotics, Inc. | Explainability and complementary information for camera-based quality assurance inspection processes |
US11328410B2 (en) * | 2020-08-03 | 2022-05-10 | KLA Corp. | Deep generative models for optical or other mode selection |
WO2023186833A1 (en) * | 2022-03-28 | 2023-10-05 | Carl Zeiss Smt Gmbh | Computer implemented method for the detection of anomalies in an imaging dataset of a wafer, and systems making use of such methods |
CN118135390B (zh) * | 2024-05-10 | 2024-06-28 | 国家海洋局北海信息中心(国家海洋局北海档案馆) | 基于gis的海底路由管道智慧管理识别系统 |
-
2020
- 2020-03-16 CN CN202010180887.2A patent/CN113409234A/zh active Pending
- 2020-04-02 US US16/838,055 patent/US20210287352A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114372984A (zh) * | 2022-03-22 | 2022-04-19 | 南京熊猫电子制造有限公司 | 一种超分辨率元器件角度识别装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
US20210287352A1 (en) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113409234A (zh) | 卷积神经网络(cnn)算法支持的晶片的最小监督自动检查(ai) | |
KR102422111B1 (ko) | 반도체 시편의 검사에 사용가능한 훈련 세트의 생성 | |
CN114240939B (zh) | 一种主板元器件外观缺陷检测方法、系统、设备及介质 | |
WO2021087014A1 (en) | Bbp assisted defect detection flow for sem images | |
CN112150460B (zh) | 检测方法、检测系统、设备和介质 | |
US11580634B2 (en) | System and method for automated surface assessment | |
CN113807378B (zh) | 训练数据增量方法、电子装置与计算机可读记录介质 | |
TW202041850A (zh) | 使用疊層去除雜訊自動編碼器之影像雜訊降低 | |
CN111474179A (zh) | 镜片表面清洁度检测装置及方法 | |
CN114742818A (zh) | 一种基于工业面阵摄像头视觉缺陷检测系统及其检测方法 | |
KR20220001445A (ko) | 반도체 시편의 검사에 사용가능한 훈련 세트의 생성 | |
US20230053085A1 (en) | Part inspection system having generative training model | |
CN113066088A (zh) | 工业检测中的检测方法、检测装置和存储介质 | |
CN114331961A (zh) | 用于对象的缺陷检测的方法 | |
WO2022119870A1 (en) | Image augmentation techniques for automated visual inspection | |
CN117115095A (zh) | 一种实现复杂纹理瓷砖细小缺陷检测的方法及系统 | |
CN116912144A (zh) | 一种基于大律算法与通道注意力机制的数据增强方法 | |
CN116433978A (zh) | 一种高质量瑕疵图像自动生成与自动标注方法及装置 | |
CN116152191A (zh) | 基于深度学习的显示屏裂纹缺陷检测方法、装置及设备 | |
CN115479891A (zh) | 基于图像识别的电路板载元器件自动检测系统和方法 | |
Golodov et al. | Weld segmentation and defect detection in radiographic images of pipe welds | |
CN112763506A (zh) | 兼具aoi及ai的瑕疵检测方法及其装置 | |
CN112085722B (zh) | 一种训练样本图像获取方法及装置 | |
CN116977334B (zh) | 一种光缆表面瑕疵检测方法及装置 | |
TWI845781B (zh) | 半導體缺陷偵測及分類的方法及系統,以及非暫時性電腦可讀儲存媒體 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |