CN113808110A - 一种晶圆缺陷检测方法 - Google Patents
一种晶圆缺陷检测方法 Download PDFInfo
- Publication number
- CN113808110A CN113808110A CN202111097347.9A CN202111097347A CN113808110A CN 113808110 A CN113808110 A CN 113808110A CN 202111097347 A CN202111097347 A CN 202111097347A CN 113808110 A CN113808110 A CN 113808110A
- Authority
- CN
- China
- Prior art keywords
- image
- fline
- gray
- value
- tmppeak
- 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.)
- Granted
Links
- 230000007547 defect Effects 0.000 title claims abstract description 79
- 238000001514 detection method Methods 0.000 title claims abstract description 17
- 238000001914 filtration Methods 0.000 claims abstract description 100
- 238000000034 method Methods 0.000 claims abstract description 35
- 230000002159 abnormal effect Effects 0.000 claims abstract description 34
- 101100182136 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) loc-1 gene Proteins 0.000 claims description 12
- 238000009432 framing Methods 0.000 claims description 6
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 claims description 4
- 238000003384 imaging method Methods 0.000 claims description 4
- 239000000741 silica gel Substances 0.000 claims description 4
- 229910002027 silica gel Inorganic materials 0.000 claims description 4
- 230000000717 retained effect Effects 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 3
- 230000005856 abnormality Effects 0.000 claims description 2
- 230000002950 deficient Effects 0.000 claims 1
- 235000012431 wafers Nutrition 0.000 description 35
- 238000012216 screening Methods 0.000 description 8
- 125000000205 L-threonino group Chemical group [H]OC(=O)[C@@]([H])(N([H])[*])[C@](C([H])([H])[H])([H])O[H] 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000005070 sampling 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
- G06T5/30—Erosion or dilatation, e.g. thinning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Image Processing (AREA)
Abstract
一种晶圆缺陷检测方法,涉及晶圆测试领域。该方法的过程为:S1:采集晶圆的图像,对所述图像进行图像处理,获得平均灰度值,若平均灰度值落入平均灰度值阈值区间范围内,则进入S2;否则重新采集晶圆图像,重复S1;S2:对图像采用RowMask卷积核对图像进行垂直滤波处理,若未找到竖线缺陷的位置,则进入S3,否则确定竖线缺陷的位置和宽度;步骤S3:对图像采用HorMask卷积核对图像进行水平滤波处理,若未找到横线缺陷的位置,则进入S4,否则确定横线缺陷的位置以及宽度;S4:对图像进行背景处理,判断背景是否异常,如果背景无异常,则晶圆正常,否则返回图像异常。基于上述方法可以自适应筛选晶圆的缺陷,降低人工成本,提高了晶圆缺陷的检出率。
Description
技术领域
本发明涉及晶圆测试领域,尤其涉及一种晶圆缺陷检测方法。
背景技术
晶圆在切割后,有可能内部会出现损害。比如出现瑕疵、断裂或者不可预估的损坏等问题,所以需要对颗粒进行筛选后,才能送入封装厂进行封装,否则会极大提高生产制造的成本。晶圆颗粒的删选,目前主要通过人工进行表面缺陷的筛选,判断颗粒表面是否存在明显的痕迹,比如竖线、横线或者其他的缺陷。但是晶圆体积较小,通过人工的方式筛选效率较低,且容易造成漏检和错检的问题。
发明内容
为了解决通过人工筛选表面缺陷的晶圆,效率较低,且容易造成漏检和错检的问题,本发明采用以下技术方案:
一种晶圆缺陷检测方法,包括以下步骤:
步骤S1:采集晶圆的图像,对图像进行图像处理,获得平均灰度值,若平均灰度值落入平均灰度值阈值区间范围内,则进入步骤S2;否则重新采集晶圆图像,重复步骤S1;
步骤S2:对图像采用RowMask卷积核对图像进行垂直滤波处理,若未找到竖线缺陷的位置,则进入步骤S3,否则确定竖线缺陷的位置和宽度;
步骤S3:对图像采用HorMask卷积核对图像进行水平滤波处理,若未找到横线缺陷的位置,则进入步骤S4,否则确定横线缺陷的位置以及宽度;
步骤S4:对图像进行背景处理,判断背景是否异常,如果背景无异常,则晶圆正常,否则返回图像异常。
具体的,其中RowMask卷积核用于检测图像垂直方向的卷积核,RowMask卷积核具体为:
具体的,其中HorMask卷积核用于检测水平方向的卷积核为,HorMask卷积核具体为:
具体的,步骤S1中,采集晶圆的图像的过程为:通过贴着45度斜纹图案的硅胶假手指按压晶圆表面按压晶圆表面,成像检测仪获取按压后的图像。
具体的,在步骤S2中,对垂直方向滤波处理的过程包括以下步骤:
步骤S21:采用RowMask卷积核对图像进行垂直方向滤波,获得垂直滤波图像,并统计垂直滤波图像的灰度值大于0的像素点个数num,以及灰度值大于0 的像素点所对应的灰度和sum,当sum/num大于第一阈值则返回图像异常;当 sum/num不大于第一阈值时,若num小于像素点个数阈值,则进入步骤S3,否则进入步骤S22;
步骤S22:遍历垂直滤波图像上所有像素点,获取每个像素点的灰度值,对于灰度值小于灰度阈值的像素点,将像素点的灰度值设置为0,生成第二垂直滤波图像;
步骤S23:删除第二垂直滤波图像上的干扰点,生成第三垂直滤波图像;
步骤S24:对第三垂直滤波图像进行处理,找出竖线的位置以及竖线的宽度。
具体的,在步骤S23中,删除干扰点过程为:
步骤S231:遍历第二垂直滤波图像上所有亮点,对每个亮点框定3*3邻域范围内,设置单独一个亮点的位置为(i,j),在邻域范围内,除亮点本身,统计对角线上的四个点中灰度值大于灰度阈值的个数numW;再统计邻域范围内非对角线剩余四个点中灰度值大于灰度阈值的个数numS;
步骤S232:如果numS+numW=0,则将亮点的灰度值设置为0;如果numS<2且 numW>0,将亮点灰度值置为0;如果numW=0且numS=1,那么就判断,亮点正上方(i,j-2)和亮点正下方(i,j+2)的像素点的灰度值是否都是0,如果是,则将亮点的灰度值置为0;经过灰度值设置完成后生成第三垂直滤波图像。
步骤S233:统计第三垂直滤波图像中灰度值大于0的所有像素点个数filterNum,如果filterNum大于像素点个数阈值,说明图像异常,否则进入步骤 S24。
具体的,步骤S24中,对第三垂直滤波图像进行处理包括以下步骤:
步骤S241:遍历第三垂直滤波图像上各列像素点,获取各列像素点的灰度值,统计灰度值大于0的像素点的个数总和inNum,以及灰度值大于0的像素点的灰度值总和inSum,求得该亮点组成的亮线在第三垂直滤波图像上的灰度均值 inFilterMean,其中inFilterMean=inSum/inNum。一列亮线中亮点个数占输入图像的高度的比例为inRatio,如果inRatio>1/3且inFilterMean>第一灰度均值阈值,则保留该列的信息到亮线fLine数组中,其中fLine数组包括亮线的位置fLine.loc、亮线的开始位置fLine.start、亮线的结束位置fLine.end、 inRatio、inFilterMean、inMeanGray信息;否则不保留该列的信息到亮线fLine 数组。
步骤S242:如果fLine数组元素的个数超过8,则说明图像异常;否则进入步骤S243;
步骤S243:如果fLine数组的大小为1,且inFilterMean>第二灰度均值阈值,则垂直方向的缺陷有一条,且其位置为fLine[0].loc;
如果fLine数组的大小为2,且fLine[1].loc-fLine[1].loc=2,且二者中滤波均值较大者inFilterMean>第二灰度均值阈值,那么垂直方向的缺陷有一条,且其位置为fLine[0].loc;
fLine数组的大小大于2,如果fline[i+1].loc-fline[i].loc>5,则就取 [fline[i].loc-1,fline[i].loc+3]共四列,否则取 [fline[i].loc-1,fline[i+1].loc+1]范围内的列数据,求各列在未做任何处理的原始图像上的[fline[i].start,fline[i].end]范围的灰度均值,存放在 tmpMean数组中,并获得tmpMean数组的最大值maxMean,和最小值minMean,该数组大小是n;对图像的图像灰度均值meanGray进行判断,如果meanGray小于80,则设置灰度差值的阈值grayThres为50,否则设置灰度差值的阈值grayThres 为30。如果abs(tmpMean[2]-minMean)<10,且 (tmpMean[2]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs (tmpMean[i]-minMean)<10,其中i从2到(n-1),该竖线宽度加1;如果 abs(tmpMean[1]-maxMean)<10,且(tmpMean[1]-tmpMean[0])>grayThres,遍历 tmpMean数组,如果abs(tmpMean[i]-maxMean)<10,其中i从1到(n-1),该竖线宽度加1。
具体的,步骤S3中,对背景异常的判断过程包括以下步骤:
步骤S31:将图像进行缩小处理生成缩略图,对缩略图进行全局阈值分割,求其暗区域,对暗区域进行腐蚀,然后求取连通域的个数,以及最大连通域面积;
步骤S32:对最大连通域的面积大小进行判定,若最大连通域的面积大于连通域面积阈值,则图像背景异常,否则进入步骤S33;
步骤S33:若连通域的个数符合连通域个数阈值范围内,则晶圆无缺陷,否则该图像背景异常。
具体的,在步骤S3中,对水平方向滤波处理的过程如下:
步骤S31:采用HorMask卷积核对图像进行水平方向滤波,获得水平滤波图像,并统计水平滤波图像的灰度值大于0的像素点个数num,以及灰度值大于0 的像素点所对应的灰度和sum,当sum/num大于第一阈值,则返回图像异常;当 sum/num不大于第一阈值时,若num小于像素点个数阈值,则进入步骤S4;否则进入步骤S32;
步骤S32:遍历水平滤波图像上所有像素点,获取每个像素点的灰度值,对于灰度值小于灰度阈值的像素点,将像素点的灰度值设置为0,生成第二水平滤波图像;
步骤S33:删除第二水平滤波图像上的干扰点,生成第三水平滤波图像;
步骤S34:对第三水平滤波图像进行处理,找出横线的位置以及横线的宽度。
具体的,在步骤S33中,删除干扰点过程为:
步骤S331:遍历第二水平滤波图像上所有亮点,对每个亮点框定3*3邻域范围内,设置单独一个亮点的位置为(i,j),在邻域范围内,除亮点本身,统计对角线上的四个点中灰度值大于灰度阈值的个数numW;再统计邻域范围内非对角线剩余四个点中灰度值大于灰度阈值的个数numS;
步骤S332:如果numS+numW=0,则将亮点的灰度值设置为0;如果numS<2且 numW>0,将亮点灰度值置为0;如果numW=0且numS=1,那么就判断,亮点正左方(i-2,j)和亮点正右方(i+2,j)上的灰度值是否都是0,如果是,则将亮点的灰度值置为0;经过灰度值设置完成后生成第三水平滤波图像。
步骤S333:统计第三水平滤波图像中灰度值大于0的所有像素点个数 filterNum,如果filterNum大于像素点个数阈值,说明图像异常,否则进入步骤 S34。
具体的,步骤S34中,对第三水平滤波图像进行处理包括以下步骤:
步骤S341:遍历第三水平滤波图像上各行像素点,获取各行像素点的灰度值,统计灰度值大于0的像素点的个数总和inNum,以及灰度值大于0的像素点的灰度值总和inSum,求得该亮点组成的亮线在第三水平滤波图像上的灰度均值 inFilterMean,其中inFilterMean=inSum/inNum。一行亮线中亮点个数占输入图像的宽度的比例为inRatio,如果inRatio>1/3且inFilterMean>第一灰度均值阈值,则保留该行的信息到亮线fLine数组中,其中fLine数组包括亮线的位置fLine.loc、亮线的开始位置fLine.start、亮线的结束位置fLine.end、 inRatio、inFilterMean、inMeanGray信息;否则不保留该行的信息到亮线fLine 数组。
步骤S342:如果fLine数组元素的个数超过8,则说明图像异常;否则进入步骤S343;
步骤S343:如果fLine数组的大小为1,且inFilterMean>第二灰度均值阈值,则水平方向的缺陷有一条,且其位置为fLine[0].loc;
如果fLine数组的大小为2,且fLine[1].loc-fLine[1].loc=2,且二者中滤波均值较大者inFilterMean>第二灰度均值阈值,那么水平方向的缺陷有一条,且其位置为fLine[0].loc;
fLine数组的大小大于2,如果fline[i+1].loc-fline[i].loc>5,则就取 [fline[i].loc-1,fline[i].loc+3]共四行,否则取 [fline[i].loc-1,fline[i+1].loc+1]范围内的行数据,求各行在未做任何处理的原始图像上的[fline[i].start,fline[i].end]范围的灰度均值,存放在 tmpMean数组中,并获得tmpMean数组的最大值maxMean,和最小值minMean,该数组大小是n;对图像的图像灰度均值meanGray进行判断,如果meanGray小于80,则设置灰度差值的阈值grayThres为50,否则设置灰度差值的阈值grayThres 为30。如果abs(tmpMean[2]-minMean)<10,且 (tmpMean[2]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs (tmpMean[i]-minMean)<10,其中i从2到(n-1),该横线宽度加1;如果 abs(tmpMean[1]-maxMean)<10,且(tmpMean[1]-tmpMean[0])>grayThres,遍历 tmpMean数组,如果abs(tmpMean[i]-maxMean)<10,其中i从1到(n-1),该横线宽度加1。
综上所述,本发明本装置具有以下优点:
原先通过人工的方式进行筛选,现在通过上述方法,基于图像处理可以自适应筛选晶圆上的横线、竖线以及图像自身的背景缺陷,从而降低了人工筛选的成本,并提高了晶圆缺陷的检出率以及筛选的工作效率。
附图说明
图1是一种晶圆缺陷检测方法的流程图;
图2是一种晶圆缺陷检测方法中45度斜纹图案的硅胶假手指的图像;
图3是一种晶圆缺陷检测方法中晶圆表面出现竖线和横线的缺损的图像。
具体实施方式
下面结合图1至图3对本发明做进一步说明。
一种晶圆缺陷检测方法,包括以下步骤:
步骤S1:将晶圆放置于成像检测仪上,通过贴着45度斜纹图案的硅胶假手指按压晶圆表面,成像检测仪获取按压后的图像。为了检测晶圆上的缺陷,由于晶圆的缺陷通常是在晶圆表面出现的至少一条的横线或者竖线,45度斜纹可以有效的区分晶圆上的横线和竖线的缺陷。对获取的图像进行图像处理,对图像上是否具有缺陷进行判断。图像处理以及判断的过程为:计算图像的平均灰度 meanGray,如果meanGray不在40到220之间,说明采图异常,且重新采集图像,重复步骤S1,否则进入步骤S2。其中造成采图异常的原因可能是由于假手指按压力度过轻或者光源未开导致。
步骤S2:对获取的原始图像采用RowMask卷积核进行垂直方向滤波处理,确定竖线缺陷的位置以及大小。若未找到所述竖线缺陷的位置,则进入步骤S3,否则确定竖线缺陷的位置和宽度。
其中检测垂直方向的卷积核为:
其中对垂直方向滤波处理的过程包括以下步骤:
步骤S21:采用RowMask卷积核对图像进行垂直方向滤波,获得垂直滤波图像,并统计垂直滤波图像的灰度值大于0的像素点个数num,以及灰度值大于0 的像素点所对应的灰度和sum,当sum/num>180,则返回图像异常,当sum/num ≤180时,如果num<1,则进入步骤S3;否则进入步骤S22;
步骤S22:遍历垂直滤波图像上所有像素点,获取每个像素点的灰度值,对于灰度值小于灰度阈值的像素点,将像素点的灰度值设置为0,生成第二垂直滤波图像。其中灰度阈值为lightGray,lightGray=sum/num+30。
步骤S23:删除第二垂直滤波图像上由于假手指上自身斜45度上的干扰点,生成第三垂直滤波图像。
其中步骤S23中,删除干扰点过程为:
步骤S231:遍历第二垂直滤波图像上所有亮点,对每个亮点,框定3*3邻域范围内,在邻域范围内,除亮点本身,统计对角线上的四个像素点,灰度值大于灰度阈值的个数为numW;再统计邻域范围内非对角线剩余四个点,灰度值大于灰度阈值的个数为numS;
步骤S232:如果numS+numW=0,则亮点为单独亮点,将亮点的灰度值设置为0;如果numS<2且numW>0,将亮点的灰度值设置为0;如果numW=0且numS=1,且亮点的正上方(i,j+2)和正下方(i,j-2)位置处像素点的亮度值都为0,则将(i,j) 点灰度值置为0,经过上述灰度值设置完成后生成第三垂直滤波图像。
步骤S233:为了去除第三垂直滤波图像中可能存在的图像异常的图片,所以统计第三垂直滤波图像中灰度值大于0的所有像素点个数filterNum。如果 filterNum大于1000,说明图像异常,否则进入步骤S24。
步骤S24:对第三垂直滤波图像进行处理,找出竖线的位置,以及获取竖线的宽度。其过程包括以下步骤:
步骤S241:遍历第三垂直滤波图像上各列像素点,获取各列像素点的灰度值,统计灰度值大于0的像素点的个数总和inNum,以及灰度值大于0的像素点的灰度值总和inSum,求得该亮点组成的亮线在第三垂直滤波图像上的灰度均值 inFilterMean,其中inFilterMean=inSum/inNum。一列亮线中亮点个数占输入图像的高度的比例为inRatio,如果inRatio>1/3且inFilterMean>180,则保留该列的信息到亮线fLine数组中,否则不保留该列的信息到亮线fLine数组。其中fLine数组的组成包括:
步骤S242:如果fLine数组元素的个数超过8,则说明背景异常;否则确定图像中缺陷的位置以及缺陷的大小,并进入步骤S243;
步骤S243:如果fLine数组大小为1,且其inFilterMean>200,则垂直方向的缺陷有一条,且其位置为fLine[0].loc;
如果fLine数组大小为2,且fLine[1].loc-fLine[1].loc=2,且二者中滤波均值较大者inFilterMean>200,那么垂直方向的缺陷有一条,且其位置为 fLine[0].loc;
fLine数组大小超过2,如果fline[i+1].loc-fline[i].loc>5,则就取 [fline[i].loc-1,fline[i].loc+3]共四列,否则取[fline[i].loc-1,fline[i+1].loc+1]范围内的列数据,求各列在未做任何处理的原始图像上的[fline[i].start,fline[i].end]范围的灰度均值,存放在tmpMean数组中,并获得tmpMean数组的最大值maxMean,和最小值minMean,该数组大小是n。此时对图像的图像灰度均值meanGray进行判断,如果meanGray小于80,则设置灰度差值的阈值grayThres为50,否则设置灰度差值的阈值 grayThres为30。
如果abs(tmpMean[2]-minMean)<10,且 (tmpMean[2]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs (tmpMean[i]-minMean)<10,其中i从2到(n-1),该竖线宽度加1;
如果abs(tmpMean[1]-maxMean)<10,且(tmpMean[1]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs (tmpMean[i]-maxMean)<10,其中i从1到(n-1),该竖线宽度加1。
通过这一步骤,确定竖线的位置以及宽度可以确定晶圆的受损程度,如果宽度较小且竖线缺陷位置不明显,晶圆的还可以继续被使用。
步骤S3:对获取的原始图像采用HorMask卷积核对图像进行水平方向滤波处理;若未找到横线缺陷的位置,则进入步骤S4;
其中检测水平方向的卷积核为:
其中对水平方向滤波处理的过程包括以下步骤:
步骤S31:采用HorMask卷积核对图像进行水平方向滤波,获得水平滤波图像,并统计水平滤波图像的灰度值大于0的像素点个数num,以及灰度值大于0 的像素点所对应的灰度和sum,当sum/num>180,则返回图像异常,当sum/num ≤180,若num<1,则进入步骤S4,否则进入步骤S32;
步骤S32:遍历水平滤波图像上所有像素点,获取每个像素点的灰度值,对于灰度值小于灰度阈值的像素点,将像素点的灰度值设置为0,生成第二水平滤波图像。其中灰度阈值为lightGray,lightGray=sum/num+30。
步骤S33:删除第二水平滤波图像上斜45度上的干扰点,生成第三水平滤波图像。
其中删除干扰点过程为:
步骤S331:遍历第二水平滤波图像上所有亮点,对每个亮点,框定3*3邻域范围内,亮点的坐标为(i,j)。在邻域范围内,除亮点本身,统计对角线上的四个像素点,灰度值大于灰度阈值的个数为numW;再统计邻域范围内非对角线剩余四个点,灰度值大于灰度阈值的个数为numS;
步骤S332:如果numS+numW=0,则亮点为单独亮点,将亮点的灰度值设置为0;如果numS<2且numW>0,将亮点的灰度值设置为0;如果numW=0且numS=1,那么就判断,亮点正左方(i-2,j)和亮点正右方(i+2,j)位置处的像素点的灰度是否都是0,如果是,则将(i,j)点灰度值置为0。经过上述灰度值设置完成后生成第三水平滤波图像。
步骤S333:为了去除第三水平滤波图像中可能存在的图像异常的图片,所以统计第三水平滤波图像中灰度值大于0的所有像素点个数filterNum。如果 filterNum大于1000,说明图像异常,否则进入步骤S24。
步骤S34:对第三水平滤波图像进行处理,找出横线的位置,以及获取横线的宽度。其过程包括以下步骤:
步骤S341:遍历第三水平滤波图像上各列像素点,获取各行像素点的灰度值,统计灰度值大于0的像素点的个数总和inNum,以及灰度值大于0的像素点的灰度值总和inSum,求得该亮点组成的亮线在第三水平滤波图像上的灰度均值 inFilterMean,其中inFilterMean=inSum/inNum。一行亮线中亮点个数占输入图像的宽度的比例为inRatio,如果inRatio>1/3且inFilterMean>180,则保留该行的信息到亮线fLine数组中,否则不保留该行的信息到亮线fLine数组。
步骤S342:如果fLine数组元素的个数超过8,则说明背景异常;否则确定图像中缺陷的位置以及缺陷的大小,并进入步骤S243;
步骤S343:如果fLine数组大小为1,且其inFilterMean>200,则水平方向的缺陷有一条,且其位置为fLine[0].loc;
如果fLine数组大小为2,且fLine[1].loc-fLine[1].loc=2,且二者中滤波均值较大者inFilterMean>200,那么水平方向的缺陷有一条,且其位置为 fLine[0].loc;
fLine数组大小超过2,如果fline[i+1].loc-fline[i].loc>5,则就取 [fline[i].loc-1,fline[i].loc+3]共四行,否则取 [fline[i].loc-1,fline[i+1].loc+1]范围内的行数据,求各行在未做任何处理的原始图像上的[fline[i].start,fline[i].end]范围的灰度均值,存放在 tmpMean数组中,并获得tmpMean数组的最大值maxMean,和最小值minMean,该数组大小是n。此时对图像的图像灰度均值meanGray进行判断,如果meanGray小于80,则设置灰度差值的阈值grayThres为50,否则设置灰度差值的阈值 grayThres为30。
如果abs(tmpMean[2]-minMean)<10,且 (tmpMean[2]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs (tmpMean[i]-minMean)<10,其中i从2到(n-1),该横线宽度加1;
如果abs(tmpMean[1]-maxMean)<10,且 (tmpMean[1]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs (tmpMean[i]-maxMean)<10,其中i从1到(n-1),该横线宽度加1。
通过这一步骤,确定横线的位置以及宽度可以确定晶圆的受损程度,如果宽度较小且横线缺陷位置不明显,晶圆的还可以继续被使用。
步骤S4:对图像进行背景处理,判断背景是否异常。
其中对背景异常的判断过程包括以下步骤:
步骤S41:将图像进行缩小处理生成缩略图,对缩略图进行全局阈值分割,求其暗区域,对暗区域进行腐蚀,然后求取连通域的个数,以及最大连通域面积;
步骤S42:对所述最大连通域的面积大小进行判定,若所述最大连通域的面积大于连通域面积阈值,则图像背景异常,否则进入步骤S43;
步骤S43:若所述连通域的个数符合连通域个数阈值范围内,则所述晶圆无缺陷,否则该图像背景异常。
通过这一步骤,可以排除由于背景异常导致的晶圆表面缺陷无法判别的现象,使得判断的过程更加合理,准确。
从上面描述可得,该装置具有以下优点:原先通过人工的方式进行筛选,现在通过上述方法,基于图像处理可以自适应筛选晶圆上的横线、竖线以及图像自身的背景缺陷,从而降低了人工筛选的成本,并提高了晶圆缺陷的检出率以及筛选的工作效率,运用该方法晶圆缺陷的检出率达到99.8%以上,误判率小于0.1%。
可以理解的是,以上关于本发明的具体描述,仅用于说明本发明而并非受限于本发明实施例所描述的技术方案。本领域的普通技术人员应当理解,仍然可以对本发明进行修改或等同替换,以达到相同的技术效果;只要满足使用需要,都在本发明的保护范围之内。
Claims (9)
1.一种晶圆缺陷检测方法,其特征在于,包括以下步骤:
步骤S1:采集晶圆的图像,对所述图像进行图像处理,获得平均灰度值,若所述平均灰度值落入平均灰度值阈值区间范围内,则进入步骤S2;否则重新采集晶圆图像,重复步骤S1;
步骤S2:对所述图像采用RowMask卷积核对图像进行垂直滤波处理,若未找到所述竖线缺陷的位置,则进入步骤S3,否则确定竖线缺陷的位置和宽度;
步骤S3:对所述图像采用HorMask卷积核对图像进行水平滤波处理,若未找到横线缺陷的位置,则进入步骤S4,否则确定横线缺陷的位置以及宽度;
步骤S4:对所述图像进行背景处理,判断背景是否异常,如果背景无异常,则所述晶圆正常,否则返回图像异常。
2.根据权利要求1所述一种晶圆缺陷检测方法,其特征在于,步骤S1中,采集晶圆的图像的过程为:通过贴着45度斜纹图案的硅胶假手指按压晶圆表面按压晶圆表面,成像检测仪获取按压后的图像。
3.根据权利要求1所述一种晶圆缺陷检测方法,其特征在于,在步骤S2中,对所述垂直方向滤波处理的过程包括以下步骤:
步骤S21:采用RowMask卷积核对所述图像进行垂直方向滤波,获得垂直滤波图像,并统计所述垂直滤波图像的灰度值大于0的像素点个数num,以及灰度值大于0的像素点所对应的灰度和sum,当sum/num大于第一阈值,则返回图像异常;当sum/num不大于第一阈值,若num小于像素点个数阈值,则进入步骤S3,否则进入步骤S22;
步骤S22:遍历所述垂直滤波图像上所有像素点,获取每个像素点的灰度值,对于灰度值小于灰度阈值的像素点,将像素点的灰度值设置为0,生成第二垂直滤波图像;
步骤S23:删除所述第二垂直滤波图像上的干扰点,生成第三垂直滤波图像;
步骤S24:对第三垂直滤波图像进行处理,找出所述竖线的位置以及竖线的宽度。
4.根据权利要求3所述一种晶圆缺陷检测方法,其特征在于,在步骤S23中,删除干扰点过程为:
步骤S231:遍历第二垂直滤波图像上所有亮点,对每个亮点框定3*3邻域范围内,设置单独一个亮点的位置为(i,j),在所述邻域范围内,除亮点本身,统计对角线上的四个点中灰度值大于灰度阈值的个数numW;再统计邻域范围内非对角线剩余四个点中灰度值大于所述灰度阈值的个数numS;
步骤S232:如果numS+numW=0,则将所述亮点的灰度值设置为0;如果numS<2且numW>0,将所述亮点灰度值置为0;如果numW=0且numS=1,那么就判断,(i,j-2)和(i,j+2)的位置处的像素点的灰度值是否都是0,如果是,则将亮点的灰度值置为0;经过灰度值设置完成后生成第三垂直滤波图像。
步骤S233:统计所述第三垂直滤波图像中灰度值大于0的所有像素点个数filterNum,如果filterNum大于像素点个数阈值,说明图像异常,否则进入步骤S24。
5.根据权利要求3所述一种晶圆缺陷检测方法,其特征在于,步骤S24中,对所述第三垂直滤波图像进行处理包括以下步骤:
步骤S241:遍历第三垂直滤波图像上各列像素点,获取各列像素点的灰度值,统计灰度值大于0的像素点的个数总和inNum,以及灰度值大于0的像素点的灰度值总和inSum,求得该亮点组成的亮线在第三垂直滤波图像上的灰度均值inFilterMean,其中inFilterMean=inSum/inNum。一列亮线中亮点个数占输入图像的高度的比例为inRatio,如果inRatio>1/3且inFilterMean>第一灰度均值阈值,则保留该列的信息到亮线fLine数组中,其中fLine数组包括亮线的位置fLine.loc、亮线的开始位置fLine.start、亮线的结束位置fLine.end、inRatio、inFilterMean、inMeanGray信息;否则不保留该列的信息到所述亮线fLine数组。
步骤S242:如果所述fLine数组元素的个数超过8,则说明图像异常;否则进入步骤S243;
步骤S243:如果fLine数组的大小为1,且inFilterMean>第二灰度均值阈值,则垂直方向的缺陷有一条,且其位置为fLine[0].loc;
如果fLine数组的大小为2,且fLine[1].loc-fLine[1].loc=2,且二者中滤波均值较大者inFilterMean>第二灰度均值阈值,那么垂直方向的缺陷有一条,且其位置为fLine[0].loc;
fLine数组的大小大于2,如果fline[i+1].loc-fline[i].loc>5,则就取[fline[i].loc-1,fline[i].loc+3]共四列,否则取[fline[i].loc-1,fline[i+1].loc+1]范围内的列数据,求各列在未做任何处理的原始图像上的[fline[i].start,fline[i].end]范围的灰度均值,存放在tmpMean数组中,并获得tmpMean数组的最大值maxMean,和最小值minMean,该数组大小是n;对图像的图像灰度均值meanGray进行判断,如果meanGray小于80,则设置灰度差值的阈值grayThres为50,否则设置灰度差值的阈值grayThres为30。如果abs(tmpMean[2]-minMean)<10,且(tmpMean[2]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs(tmpMean[i]-minMean)<10,其中i从2到(n-1),该竖线宽度加1;如果abs(tmpMean[1]-maxMean)<10,且(tmpMean[1]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs(tmpMean[i]-maxMean)<10,其中i从1到(n-1),该竖线宽度加1。
6.根据权利要求1所述一种晶圆缺陷检测方法,其特征在于,步骤S4中,对背景异常的判断过程包括以下步骤:
步骤S41:将所述图像进行缩小处理生成缩略图,对所述缩略图进行全局阈值分割,求其暗区域,对暗区域进行腐蚀,然后求取连通域的个数,以及最大连通域面积;
步骤S42:对所述最大连通域的面积大小进行判定,若所述最大连通域的面积大于连通域面积阈值,则图像背景异常,否则进入步骤S43;
步骤S43:若所述连通域的个数符合连通域个数阈值范围内,则所述晶圆无缺陷,否则该图像背景异常,所述晶圆有缺陷。
7.根据权利要求1所述一种晶圆缺陷检测方法,其特征在于,在步骤S3中,所述图像经过水平滤波处理后确定横线缺陷的位置和宽度的过程如下:
步骤S31:采用HorMask卷积核对所述图像进行水平方向滤波,获得水平滤波图像,并统计所述水平滤波图像的灰度值大于0的像素点个数num,以及灰度值大于0的像素点所对应的灰度和sum,当sum/num大于第一阈值,则返回图像异常,当num当sum/num小于等于第一阈值时,若num小于像素点个数阈值,则进入步骤S4;否则进入步骤S32;
步骤S32:遍历所述水平滤波图像上所有像素点,获取每个像素点的灰度值,对于灰度值小于灰度阈值的像素点,将像素点的灰度值设置为0,生成第二水平滤波图像;
步骤S33:删除所述第二水平滤波图像上的干扰点,生成第三水平滤波图像;
步骤S34:对第三水平滤波图像进行处理,找出所述横线的位置以及横线的宽度。
8.根据权利要求7所述一种晶圆缺陷检测方法,其特征在于,在步骤S33中,删除干扰点过程为:
步骤S331:遍历第二水平滤波图像上所有亮点,对每个亮点框定3*3邻域范围内,设置单独一个亮点的位置为(i,j),在所述邻域范围内,除亮点本身,统计对角线上的四个点中灰度值大于灰度阈值的个数numW;再统计邻域范围内非对角线剩余四个点中灰度值大于所述灰度阈值的个数numS;
步骤S332:如果numS+numW=0,则将所述亮点的灰度值设置为0;如果numS<2且numW>0,将所述亮点灰度值置为0;如果numW=0且numS=1,那么就判断,(i-2,j)和(i+2,j)上的像素点的灰度值是否都是0,如果是,则将亮点的灰度值置为0;经过灰度值设置完成后生成第三水平滤波图像。
步骤S333:统计所述第三水平滤波图像中灰度值大于0的所有像素点个数filterNum,如果filterNum大于像素点个数阈值,说明图像异常,否则进入步骤S34。
9.根据权利要求7所述一种晶圆缺陷检测方法,其特征在于,步骤S34中,对所述第三水平滤波图像进行处理包括以下步骤:
步骤S341:遍历第三水平滤波图像上各行像素点,获取各行像素点的灰度值,统计灰度值大于0的像素点的个数总和inNum,以及灰度值大于0的像素点的灰度值总和inSum,求得该亮点组成的亮线在第三水平滤波图像上的灰度均值inFilterMean,其中inFilterMean=inSum/inNum。一行亮线中亮点个数占输入图像的宽度的比例为inRatio,如果inRatio>1/3且inFilterMean>第一灰度均值阈值,则保留该行的信息到亮线fLine数组中,其中fLine数组包括亮线的位置fLine.loc、亮线的开始位置fLine.start、亮线的结束位置fLine.end、inRatio、inFilterMean、inMeanGray信息;否则不保留该行的信息到所述亮线fLine数组。
步骤S342:如果所述fLine数组元素的个数超过8,则说明图像异常;否则进入步骤S343;
步骤S343:如果fLine数组的大小为1,且inFilterMean>第二灰度均值阈值,则水平方向的缺陷有一条,且其位置为fLine[0].loc;
如果fLine数组的大小为2,且fLine[1].loc-fLine[1].loc=2,且二者中滤波均值较大者inFilterMean>第二灰度均值阈值,那么水平方向的缺陷有一条,且其位置为fLine[0].loc;
fLine数组的大小大于2,如果fline[i+1].loc-fline[i].loc>5,则就取[fline[i].loc-1,fline[i].loc+3]共四行,否则取[fline[i].loc-1,fline[i+1].loc+1]范围内的行数据,求各行在未做任何处理的原始图像上的[fline[i].start,fline[i].end]范围的灰度均值,存放在tmpMean数组中,并获得tmpMean数组的最大值maxMean,和最小值minMean,该数组大小是n;对图像的图像灰度均值meanGray进行判断,如果meanGray小于80,则设置灰度差值的阈值grayThres为50,否则设置灰度差值的阈值grayThres为30。如果abs(tmpMean[2]-minMean)<10,且(tmpMean[2]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs(tmpMean[i]-minMean)<10,其中i从2到(n-1),该横线宽度加1;如果abs(tmpMean[1]-maxMean)<10,且(tmpMean[1]-tmpMean[0])>grayThres,遍历tmpMean数组,如果abs(tmpMean[i]-maxMean)<10,其中i从1到(n-1),该横线宽度加1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111097347.9A CN113808110B (zh) | 2021-09-18 | 2021-09-18 | 一种晶圆缺陷检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111097347.9A CN113808110B (zh) | 2021-09-18 | 2021-09-18 | 一种晶圆缺陷检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113808110A true CN113808110A (zh) | 2021-12-17 |
CN113808110B CN113808110B (zh) | 2024-06-14 |
Family
ID=78939559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111097347.9A Active CN113808110B (zh) | 2021-09-18 | 2021-09-18 | 一种晶圆缺陷检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113808110B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115063413A (zh) * | 2022-08-04 | 2022-09-16 | 宁波鑫芯微电子科技有限公司 | 一种超大规模晶圆异常数据的特征提取方法 |
CN115661148A (zh) * | 2022-12-26 | 2023-01-31 | 视睿(杭州)信息科技有限公司 | 一种晶圆晶粒排列检测方法及系统 |
CN118297904A (zh) * | 2024-04-08 | 2024-07-05 | 常州市新创智能科技有限公司 | 碳纤维布面浅色异物检测系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002035470A1 (en) * | 2000-10-20 | 2002-05-02 | Lee Shih Jong | Image processing system with enhanced processing and memory management |
US20060034505A1 (en) * | 2004-08-13 | 2006-02-16 | Synopsys, Inc. | Method and apparatus for deblurring mask images |
CN102111635A (zh) * | 2009-12-28 | 2011-06-29 | 索尼公司 | 视频信号处理设备和视频信号处理方法 |
CN107992943A (zh) * | 2016-10-06 | 2018-05-04 | 想象技术有限公司 | 用于卷积神经网络的缓冲器寻址 |
CN109978839A (zh) * | 2019-03-08 | 2019-07-05 | 浙江大学 | 晶圆低纹理缺陷的检测方法 |
-
2021
- 2021-09-18 CN CN202111097347.9A patent/CN113808110B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002035470A1 (en) * | 2000-10-20 | 2002-05-02 | Lee Shih Jong | Image processing system with enhanced processing and memory management |
US20060034505A1 (en) * | 2004-08-13 | 2006-02-16 | Synopsys, Inc. | Method and apparatus for deblurring mask images |
CN102111635A (zh) * | 2009-12-28 | 2011-06-29 | 索尼公司 | 视频信号处理设备和视频信号处理方法 |
CN107992943A (zh) * | 2016-10-06 | 2018-05-04 | 想象技术有限公司 | 用于卷积神经网络的缓冲器寻址 |
CN109978839A (zh) * | 2019-03-08 | 2019-07-05 | 浙江大学 | 晶圆低纹理缺陷的检测方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115063413A (zh) * | 2022-08-04 | 2022-09-16 | 宁波鑫芯微电子科技有限公司 | 一种超大规模晶圆异常数据的特征提取方法 |
CN115063413B (zh) * | 2022-08-04 | 2022-11-11 | 宁波鑫芯微电子科技有限公司 | 一种超大规模晶圆异常数据的特征提取方法 |
CN115661148A (zh) * | 2022-12-26 | 2023-01-31 | 视睿(杭州)信息科技有限公司 | 一种晶圆晶粒排列检测方法及系统 |
CN118297904A (zh) * | 2024-04-08 | 2024-07-05 | 常州市新创智能科技有限公司 | 碳纤维布面浅色异物检测系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113808110B (zh) | 2024-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113808110A (zh) | 一种晶圆缺陷检测方法 | |
CN109870461B (zh) | 一种电子元器件质量检测系统 | |
CN110830795B (zh) | 一种图像传感器坏点检测方法、装置及电子设备 | |
US8391585B2 (en) | Defect detecting device, defect detecting method, image sensor device, image sensor module, defect detecting program, and computer-readable recording medium | |
JP4675949B2 (ja) | 映像処理技法を利用した構造物及び製品のクラック幅測定方法および装置 | |
JP4399494B2 (ja) | 欠陥検出装置、欠陥検出方法、イメージセンサデバイスおよびイメージセンサモジュール | |
CN109100363B (zh) | 一种贴合异物缺陷与灰尘的区分方法及系统 | |
CN103369347A (zh) | 相机瑕疵缺陷检测 | |
JP2005331929A (ja) | 画像解析方法、画像解析プログラム、及びそれらを有する画素評価システム | |
US6456318B1 (en) | Defect inspection apparatus and method by comparing two pairs of areas adjacent to one another | |
JP4230880B2 (ja) | 欠陥検査方法 | |
CN114972173A (zh) | 缺陷检测方法和缺陷检测装置及系统 | |
US7646892B2 (en) | Image inspecting apparatus, image inspecting method, control program and computer-readable storage medium | |
CN114723650A (zh) | 晶圆缺陷检测方法和装置、设备及存储介质 | |
WO2012063265A2 (en) | Method and apparatus for detecting the bad pixels in sensor array and concealing the error | |
JP2006047077A (ja) | 画面の線欠陥の検出方法及び検出装置 | |
KR102383577B1 (ko) | 스켈러톤 웨이퍼 검사 방법 | |
TWI689869B (zh) | 影像檢測方法 | |
JP4212702B2 (ja) | 欠陥検査装置、欠陥検査方法および記憶媒体 | |
JP2007081513A (ja) | 固体撮像素子のシミ欠陥検査方法 | |
CN111415611A (zh) | 亮度补偿方法、亮度补偿装置及显示装置 | |
JP3015325B2 (ja) | スジキズ検査方法及びその装置 | |
JP3829024B2 (ja) | 表示画面の検査方法と装置 | |
JP2004350104A (ja) | 信号処理装置、および電子カメラ | |
CN117557555B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |