CN113554589A - 基于深度学习的半导体芯片金线分割方法及系统 - Google Patents
基于深度学习的半导体芯片金线分割方法及系统 Download PDFInfo
- Publication number
- CN113554589A CN113554589A CN202110626533.0A CN202110626533A CN113554589A CN 113554589 A CN113554589 A CN 113554589A CN 202110626533 A CN202110626533 A CN 202110626533A CN 113554589 A CN113554589 A CN 113554589A
- Authority
- CN
- China
- Prior art keywords
- image
- chip
- module
- gold wire
- semiconductor chip
- 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
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 title claims abstract description 57
- 239000004065 semiconductor Substances 0.000 title claims abstract description 31
- 230000011218 segmentation Effects 0.000 title claims abstract description 28
- 238000013135 deep learning Methods 0.000 title claims abstract description 22
- 239000010931 gold Substances 0.000 claims abstract description 41
- 229910052737 gold Inorganic materials 0.000 claims abstract description 41
- 238000012549 training Methods 0.000 claims abstract description 40
- 238000010586 diagram Methods 0.000 claims abstract description 21
- 238000013528 artificial neural network Methods 0.000 claims abstract description 13
- 238000004519 manufacturing process Methods 0.000 claims abstract description 7
- 238000013434 data augmentation Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 11
- 235000002566 Capsicum Nutrition 0.000 claims description 7
- 239000006002 Pepper Substances 0.000 claims description 7
- 241000722363 Piper Species 0.000 claims description 7
- 235000016761 Piper aduncum Nutrition 0.000 claims description 7
- 235000017804 Piper guineense Nutrition 0.000 claims description 7
- 235000008184 Piper nigrum Nutrition 0.000 claims description 7
- 150000003839 salts Chemical class 0.000 claims description 7
- 230000003321 amplification Effects 0.000 claims description 6
- 230000003416 augmentation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 6
- 238000012805 post-processing Methods 0.000 claims description 6
- 238000003708 edge detection Methods 0.000 claims description 5
- 238000012216 screening Methods 0.000 claims description 5
- 230000003190 augmentative effect Effects 0.000 claims description 3
- 230000007547 defect Effects 0.000 abstract description 29
- 238000001514 detection method Methods 0.000 abstract description 17
- 230000008901 benefit Effects 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 20
- 230000008569 process Effects 0.000 description 19
- 244000247747 Coptis groenlandica Species 0.000 description 12
- 235000002991 Coptis groenlandica Nutrition 0.000 description 12
- 230000000694 effects Effects 0.000 description 12
- 239000011159 matrix material Substances 0.000 description 12
- 238000011176 pooling Methods 0.000 description 12
- 230000004913 activation Effects 0.000 description 9
- 238000009826 distribution Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000006073 displacement reaction Methods 0.000 description 6
- 230000036961 partial effect Effects 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000015654 memory Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 3
- 241000282326 Felis catus Species 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000000306 component Substances 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 229910052751 metal Inorganic materials 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 229910052782 aluminium Inorganic materials 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007797 corrosion Effects 0.000 description 1
- 238000005260 corrosion Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003628 erosive effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 150000002343 gold Chemical class 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 150000002736 metal compounds Chemical class 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000010301 surface-oxidation reaction Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
- 239000010938 white gold Substances 0.000 description 1
- 229910000832 white gold Inorganic materials 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
- 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/70—Denoising; Smoothing
-
- 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
- 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/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30148—Semiconductor; IC; Wafer
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种基于深度学习的半导体芯片金线分割方法及系统,包括:芯片区域分割步骤:拍摄芯片得到灰度图和深度图,对灰度图和深度图进行分割,得到芯片区域图;数据集制作步骤:对所述芯片区域图中的金线进行标注和归类,并转换为掩膜图,得到数据集;训练步骤:采用数据集进行神经网络训练;分割步骤:采用训练后的神经网络对半导体芯片图进行金线分割。本发明采用“光场相机+深度学习”方案,同时利用光场相机和深度学习的优势,实现高质量、高精度、高速度的三维缺陷检测。
Description
技术领域
本发明涉及缺陷检测领域,具体地,涉及一种基于深度学习的半导体芯片金线分割方法及系统。
背景技术
金线焊接方法最常使用的是引线键合技术,因为它的流程简单、成本较低,在当前的芯片封装方案中占据主流引导地位。它的基本原理为使用半径在几十到几百微米的金属材质导线(金、铜、铝等),在热超声的持续作用下连接在所需位置上。连接处金属原子进行扩散运动,形成金属的化合物,实现金线与引脚位置的连接。在引线键合中,焊盘不干净、表面氧化、腐蚀以及工艺参数不合理等缺陷会导致裂纹、断丝和焊点脱落,直接导致芯片整体失效或严重影响其可靠性。所以在现代半导体集成电路器件的开发和加工中,必须对金线的质量进行检测,以保证芯片内部连接的可靠与稳定性。
传统的检测方案包括:
(1)人工缺陷检测
人工缺陷检测一般通过光束扫描或专业设备成像,生成芯片图像与标准芯片图像做人工对比来检测缺陷。适用于检测简单芯片和需求供应较大的低端芯片。人工检测一般流程长,步骤繁琐,工作环境恶劣,检测准确率不稳定,不同检测员主观上有不同的检测标准。随着集成电路线宽的缩小,芯片的集成化,需要检测的细节越来越多,人工检测流程耗时越来越长,难以检测到较小的缺陷。另外,在失效分析中,对芯片缺陷的判断则通过肉眼分辨来实现,效率低且容易产生遗漏。
(2)基于区域生长法的金线缺陷检测
该方法主要采用区域生长法求出金线总数及各金线主体的质心坐标和面积。通过比较完整芯片中的管脚数差,检测出可能的缺陷。同时,对比完整芯片中的面积和金线间距标准值,当被测芯片的相关数据超过设定阈值时,判断芯片存在金线偏移、高度偏移等缺陷。由于要准确计算面积和形心坐标,该种方法较依赖高质量的芯片图片和相对固定的拍摄位置。
(3)基于游程标记法和邻接关系的金线缺陷检测
该方法处理的输入图像种类是灰度图。首先,程序使用游程标记法来计算目标像素点周围的相似像素作为连通域。在那之后,利用目标像素点周围的八个相邻像素的值来计算该像素点的欧拉数。最终,利用所检测到的各项数据和标准图像数据进行对比,确定所检测芯片中的金线类型。但该种方法因为对每个像素点都要做邻接关系的处理和计算,检测速度较慢,难以做到实时的检测,而且对于环境变化敏感,需要大量的调参工作。
现有的工业检测方案主要针对芯片的二维图像,对于普通的二维金线缺陷,如漏线、断线等,检测效果较好,但对于三维缺陷,如向上和向下的偏线、脚起或堕线,检测效果较差。具有这些三维缺陷的金线,从XY面上的俯视图来看,都是一条完整的、笔直的金线。因此绝大多数二维芯片缺陷检测系统会认为其是完好的金线,从而顺利通过检验。但实际上,这样的金线由于在Z轴上有较大的曲率变化,其实际工作和信息传输效率很差,会影响产品最终性能,是应该被检测出来、无法通过检验的。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于深度学习的半导体芯片金线分割方法及系统。
根据本发明提供的一种基于深度学习的半导体芯片金线分割方法,包括:
芯片区域分割步骤:拍摄芯片得到灰度图和深度图,对灰度图和深度图进行分割,得到芯片区域图;
数据集制作步骤:对所述芯片区域图中的金线进行标注和归类,并转换为掩膜图,得到数据集;
训练步骤:采用所述数据集进行神经网络训练;
分割步骤:采用训练后的神经网络对半导体芯片图进行金线分割。
优选地,在所述训练步骤之前还包括:
数据增广步骤:对所述掩膜图进行数据增广,得到增广后的数据集。
优选地,所述芯片区域分割步骤包括:
步骤S1.1、遍历拍摄芯片得到的灰度图和深度图,筛去不符合预定要求的灰度图和深度图;
步骤S1.2、设置阈值,对所述灰度图进行二值化操作;
步骤S1.3、去除二值化后的灰度图中的噪声和噪点;
步骤S1.4、通过边缘检测获得去噪后的灰度图中的轮廓;
步骤S1.5、提取连续的轮廓,去掉长度不符合要求的轮廓;
步骤S1.6、对提取的轮廓进行矩形拟合,去掉面积不符合要求的轮廓;
步骤S1.7、记录从灰度图中得到的矩形的顶点坐标,同时对灰度图、深度图进行分割。
优选地,所述数据增广步骤包括:
增加椒盐噪声:在所述掩膜图进行随机覆盖预设大小的黑白区域,从而增加遮挡和干扰;
重组金线:对芯片不同部分中的多个金线进行重组;
像素偏移:将所述掩膜图整体水平方向和/或垂直方向随机位移一个或多个像素点;
额外增广:对于归类结果中出现概率小于预设值的所述掩膜图进行额外多次的数据增广步骤。
优选地,在所述分割步骤后还包括后处理步骤:
通过图像处理对分割后的半导体芯片图各部分区域进行面积计算,保留超过预设面积阈值的区域,忽略其余的区域。
根据本发明提供的一种基于深度学习的半导体芯片金线分割系统,包括:
芯片区域分割模块:拍摄芯片得到灰度图和深度图,对灰度图和深度图进行分割,得到芯片区域图;
数据集制作模块:对所述芯片区域图中的金线进行标注和归类,并转换为掩膜图,得到数据集;
训练模块:采用所述数据集进行神经网络训练;
分割模块:采用训练后的神经网络对半导体芯片图进行金线分割。
优选地,还包括:
数据增广模块:对所述掩膜图进行数据增广,得到增广后的数据集供所述训练模块训练。
优选地,所述芯片区域分割模块包括:
模块S1.1、遍历拍摄芯片得到的灰度图和深度图,筛去不符合预定要求的灰度图和深度图;
模块S1.2、设置阈值,对所述灰度图进行二值化操作;
模块S1.3、去除二值化后的灰度图中的噪声和噪点;
模块S1.4、通过边缘检测获得去噪后的灰度图中的轮廓;
模块S1.5、提取连续的轮廓,去掉长度不符合要求的轮廓;
模块S1.6、对提取的轮廓进行矩形拟合,去掉面积不符合要求的轮廓;
模块S1.7、记录从灰度图中得到的矩形的顶点坐标,同时对灰度图、深度图进行分割。
优选地,所述数据增广模块包括:
增加椒盐噪声:在所述掩膜图进行随机覆盖预设大小的黑白区域,从而增加遮挡和干扰;
重组金线:对芯片不同部分中的多个金线进行重组;
像素偏移:将所述掩膜图整体水平方向和/或垂直方向随机位移一个或多个像素点;
额外增广:对于归类结果中出现概率小于预设值的所述掩膜图进行额外多次的数据增广模块。
优选地,在所述分割模块后还包括后处理模块:
通过图像处理对分割后的半导体芯片图各部分区域进行面积计算,保留超过预设面积阈值的区域,忽略其余的区域。
与现有技术相比,本发明具有如下的有益效果:
本发明采用“光场相机+深度学习”方案,同时利用光场相机和深度学习的优势,实现高质量、高精度、高速度的三维缺陷检测。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的流程图;
图2为光场相机拍摄的灰度图;
图3为分割芯片区域后的灰度图;
图4为灰度图和对应的多个掩膜图;
图5为数据增广后的灰度图;
图6为3编码-3解码U-Net网络结构示意图;
图7为120次训练过程中的Loss值变化示意图;
图8为120次训练过程中后100次的Loss值变化示意图;
图9为整个芯片的三维点云重建图;
图10为金线的三维点云重建图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
如图1所示,本实施例提供的一种基于深度学习的半导体芯片金线分割方法,包括:
1、分割芯片区域
首先,使用光场相机拍摄芯片,用于制作数据集。通过调整焦距,同时防止周围环境抖动,提高拍摄得到的图片质量。使用光场相机对半导体芯片进行拍照获得灰度图和深度图之后,使用C++版本的OpenCV库或者其他图像处理技术对图片进行分割,得到芯片区域的图片,如图2和图3所示。
对图像进行分割的具体步骤为:
(1)遍历图片,筛去由于人工拍摄原因拍得的低质量图片,如没有完整芯片区域的图片或者过于模糊的图片等。
(2)设定阈值,对灰度图像进行二值化操作,突出一定范围的信息。
(3)开运算,用于去除输入灰度图中的各种噪声和早点。开运算的原理是先对输入图像作腐蚀运算,再对图像作膨胀运算。图片的总形貌和位置关系在处理前后不发生变化。使用时,适当地调整运算核的大小与数值,以实现较好的去噪效果。
(4)Canny边缘检测,获得芯片灰度图中所有轮廓的集合。
(5)提取连续的轮廓,手动调参,去掉过长或过短的轮廓。
(6)对剩余轮廓作矩形拟合(因为芯片区域近似矩形),手动调参,去掉过大或过小的矩形。一般来说,一张光场相机灰度原图会获得两个大矩形区域,这个矩形区域就是芯片区域。
(7)记录从灰度图中得到的两个大矩形区域的顶点坐标,同时对灰度图、深度图进行分割。
最后,需要适当修剪图片的尺寸。因为不同的神经网络对输入矩阵,即图片的大小有不同的要求(通常来说,网络内部要对输入数组做卷积池化等操作)。因此,图片的长与宽需要为2n的倍数,指数n随网络深度和网络结构变化而变化。
2、制作数据集
裁剪获得图片之后,制作神经网络需要的数据集。制作数据集是对裁剪之后的图片用标注工具进行标注。标注工具常见的有在线版本(VIA等)和离线版本(LabelMe等),考虑到稳定性和长期工作,选择离线版本的LabelMe软件进行数据集的标注。
如图4所示,一片完好的芯片上有九根金线,四根分布在上半部分,五根分布在下半部分。做标注时,尽量贴合金线轮廓,作出标记。若是芯片中没有金线,则不标记。
通过LabelMe标注后,得到的是“.json”文件。然后通过Python程序将其转换为掩膜图像(Mask)。转换步骤如下:
(1)配对读取“.json”文件与分割后的灰度图像。
(2)读取“.json”文件中的“imageHeight”与“imageWidth”信息,生成的Mask大小要与原图一致。
(3)生成与分割后的灰度图大小相同的全黑图片,即Mask图像的背景。
(4)取“.json”文件中的标注信息(即金线轮廓的坐标点),生成内部联通区域,并在掩模图(Mask)中以白色(255)标注。
转换完成的Mask图像如图4所示,每张芯片原图都能得到9张金线的Mask图像。最后,将金线归类,完成数据集的初始制作。
3、数据增广
在其他实施例中,由于数据集中金线特征的分布并不是均匀的,即各种金线缺陷出现的概率并不相同,造成在网络训练时,一部分出现概率较大的金线缺陷经常被训练学习,可以得到很好的识别效果,而一部分出现概率较小的金线学习机会小,识别效果很差,导致网络整体准确率无法进一步提升。另外,由于初始的数据过少,网络容易出现过拟合等现象。因此,需对数据集做数据增广,增强了之后训练的网络鲁棒性。本发明的数据增广主要通过以下几个方面:
(1)增加椒盐噪声
椒盐噪声就是在图片上随机覆盖适当大小的黑白区域,人为地增加遮挡和干扰。这样的操作一方面可以增加网络的鲁棒性和泛化性,一方面可以增强网络的想象能力,当出现两条金线相互遮挡的时候,网络可以更好地分割出完整金线,而不是直接忽略被遮挡的金线部分。
(2)重组金线
由于金线分布位置的特殊性(金线在芯片上的分布位置是固定的),不适合进行水平翻转、垂直翻转、绕中心旋转等操作。所以选择将一个芯片的上下两部分金线进行重组,例如将A芯片图的上半部分(四根金线)与B芯片图的下半部分(五根金线)进行重新组合获得C芯片图,以获得更多的数据。
(3)像素偏移
像素偏移是图像整体水平方向或垂直方向随机位移数个像素点。为了使增广得到的图片数据更加有效。单纯的重组或者增加噪声,给网络增加的新的信息输入其实很有限,而通过像素偏移可以很好的增加数据的陌生程度,更好地训练网络。
(4)对部分数据进行额外增广
由于数据的分布并不是均匀的,对于一些稀缺缺陷,需要额外多次增广,以便网络能更多地学习到它们的特征,进一步提高实际分割时地准确率。
图5是做完数据增广后新生成的某张图像。图像上方的重影是因为像素偏移产生的,偏移所产生的图像区域空白将由原图像覆盖,保证图像整体风格不变。而椒盐噪声的产生更大概率出现在金线附近,更好地覆盖与遮挡图像特征。
4、网络搭建
所获得的半导体芯片数据集有如下特征:图像语义较为简单,结构较为固定,风格较为统一,金线出现位置相对于芯片是固定的;数据量少,原始数据集大小为340张芯片灰度图。综上,考虑采用U-Net网络结构,并对其稍加修改,将原先“4编码-4解码”的网络结构删减为更加精简的“3编码-3解码”结构。在防止过拟合的同时减少网络参数,更合适部署于工业检测终端。
搭建具体网络,首先,定义U-Net核心部件——双层卷积double_conv。它是含有两个卷积和两个激活函数的torch.nn类型容器(nn.Sequential)。容器内按照顺序依次定义为二维卷积nn.Conv2d,激活函数ReLU,二维卷积nn.Conv2d,激活函数ReLU。其作用是改变图像的通道数,同时通过边缘扩充,保证图像的长与宽不变。在此基础上,本发明的U-Net网络结构为:
(1)双卷积层double_conv1,将输入的单通道灰度数据变为64通道;
(2)池化层nn.MaxPool2d1,通道不变,图像长宽减半;
(3)双卷积层double_conv2,将64通道数据变为128通道;
(4)池化层nn.MaxPool2d2,通道不变,图像长宽减半;
(5)双卷积层double_conv3,将128通道变为256通道;
(6)池化层nn.MaxPool2d3,通道不变,图像长宽减半;
(7)双卷积层double_conv4,将256通道变为512通道;
(8)双线性插值nn.Upsample,还原“图片”,通道数不变;
(9)用torch.cat拼接步骤5的数据和步骤8处理后的数据,通道数变为256+512个;
(10)双卷积层double_conv5,将256+512通道变为256通道,和左边的图像解码部分相对应;
(11)双线性插值nn.Upsample,还原“图片”,通道数不变;
(12)用torch.cat拼接步骤3的数据和步骤11处理后的数据,通道数变为128+256个;
(13)双卷积层double_conv6,将128+256通道变为128通道;
(14)(2)双线性插值nn.Upsample,还原“图片”,通道数不变;
(15)用torch.cat拼接步骤1的数据和步骤14处理后的数据,通道数变为64+128个;
(16)双卷积层double_conv7,将64+128通道变为64通道;
(17)单卷积层conv2d,将64通道变为9通道。输出设为9通道的原因是我们所要检测的半导体芯片上有9根金线,相当于要识别9种不同的目标。
本发明“3编码-3解码”U-Net网络的基本结构如图6所示。
神经网络的训练过程,即反向传播过程,就是根据梯度差异,来学习每个局部映射所需的权值,这个过程相当于一个拟合的过程,拟合的主体是网络模型的各个参数,目标是将映射关系变为所期望的变换。每一个不同的卷积核,都可以将一个区域的值映射为一个不同的值。卷积操作可以帮助提取图像区域中的某些特征,举例来说,当整个图像区域明亮且像素值较大时,通过卷积获得的值将较大。图像区域较暗,因此卷积值较小。当然,网络可以通过改变卷积核来获得更为详细的图像特征。
从模板匹配的角度来看,可以把卷积核看作为某种模板。卷积运算是在计算每个位置和模板之间的匹配程度。卷积位置越接近卷积核模式,则最后产生的新值越大,新值的大小可理解为匹配程度的数值化。模板匹配既可以在特征层进行,也可以在网络的隐藏层中进行。此时,响应图中的每个数值表示当前位置与卷积核模式之间的匹配程度。值越大,它就越像一个卷积核。对于任意一个输出图像,都可以通过反卷积来恢复原始图像。但若是只有卷积层或者其他线性变换,就将原图像复现出来。但当增加了像激活函数这样的非线性处理时,那么就可以在图像复现的同时,选择性地屏蔽原图像中的一些特征,例如背景,噪声等等,得到需要的更为“纯净”的图像。在本发明中的实现就是从一块复杂芯片区域中得到单根金线,完成图像分割的目的。
常用的激活函数Sigmoid、tanh、ReLU及其变种激活函数。本发明涉及的网络主要使用ReLU这个激活函数。
池化层的主要作用就是完成图像编码(即下采样)的作用。通过池化层,减小了输入图像的尺寸,去除了输入图像中的冗余信息。通过压缩和提取图像中包含的特征,简化了网络的复杂度,减少了网络层的参数总数和训练时的计算量,减少了网络的内存消耗。池化层在扩大感知野的同时还能实现某种非线性,相当于前面所讲的“卷积层+激活函数”的功能组合,更加简单粗暴,提取的特征也更少。另外,池化层可以实现多种不变性(平移、旋转、尺度等),因为池化操作并不改变图像整体形貌特征,相当于只是给图像进行了某种程度的模糊化、缩小处理,但大体的特征是不变的。
既然池化层可以起到某种程度的“卷积层+激活函数”的作用,而且更加简单,那为什么不能仅使用池化层来代替“卷积层+激活函数”,快速处理图像呢?原因是池化层的使用需要特定条件。那对于一般的特征处理,需要我们通过“卷积层+激活函数”这个步骤,来将其转化为区域中的最大值,再让池化层进行提取。这两个部分是缺一不可的。
U-net采用了多维度特征融合的方法——图像拼接,即机构实现部分的torch.cat函数。U-net可以将不同维度的图像数据拼接在一起,组成更为详细、完整的图像特征。其祖先FCN网络在融合时,用的方法只是点与点的简单相加,无法形成更为全面的特征,所以FCN的准确率也较低。一般来讲,网络的层数越多,其最终得到的特征图像有着更大的感受野,相当于浓缩了图像的精华,容易把握整体特征,但损失了很多细节信息。简单来说,浅层卷积关注细节局部特征,深层网络关注本质整体特征,它们各司其职,都是有具体含义的。需要将它们的信息融合,全方位、多维度地来观察整张图像的特征;从另一方面来说,网络右边部分通过双线性插值(上采样)得到的图像是缺少部分信息的,而这部分信息损失是由左边部分图像编码(下采样)引起,只有通过图像的拼接(torch.cat),才能同时收集这两方面的信息。总的来说,Encoder部分是图像空间(高维)到特征空间(低维)的映射,相当于给图像进行压缩、编码;而Decoder部分是特征空间到图像空间的映射,相当于用我们所期望的方式来给图像解压缩、解码。它们互为反过程。
5、网络训练
训练“3编码-3解码”U-Net,需要用到下面两个损失函数
(1)Dice Coefficient
Dice coefficient的产生是二分类的思想,它实际上是在衡量两个矩阵的重叠部分。Dice结果范围从0~1。当Dice为1时,表示|A|、|B|这两个矩阵完全重合;当Dice为0时,表示|A|、|B|这两个矩阵完全不重合。计算公式为:
其中,|A∩B|表示集合A、B之间的共同元素,|A|表示A中的元素的个数。在实际训练中,更常用的Dice系数计算公式为:
其中,pi为前景预测概率,yi为二值标签(也就是黑白的Mask)。在此基础上,V-Net提出了基于Dice系数的Dice Loss:
但是,Lossdice也有它的局限性——该损失函数只适用于二分类情况(正如Dice一样),
且适用于数据分布十分不均匀的清醒;除此以外,使用Lossdice还会对网络反向传播造成一定程度的不利影响,它会使训练过程难以收敛,通常需要其他技巧来平衡这种影响。
Sudre等提出了广义Lossdice,将其扩展到了多类别,并统计各类别标签数以增大标签少的类别的权重,从而实现不同类别的平衡。
对U-Net网络来说,它的输出(掩膜,Mask)本质上是一副图像,并且可能的值为0或者1,相当于二分类。另一方面,芯片数据集中的金线形态各异,样本分布不均匀,适合使用Lossdice这个损失函数。
(2)交叉熵损失(Cross Entropy Loss)。
交叉熵损失(Cross Entropy Loss)函数是图像分割模型中使用最为广泛的损失函数。用于二分类的Lossce形式如下:
Lossce=-yi·log(pi)+(1-yi)·log(1-pi)
其中,pi为网络预测第i个样本为前景的概率,yi为标注图中对应样本的标签,目标为1,背景为0。
Lossdice可以单独评估图像中每个像素点的分类预测概率值,然后再求平均值,作为这副图像的分类结果,这样做可以让图像中的每一个像素点的特征都被学习到。这种按像素点数分配权重的处理方法有很明显的缺陷,实际上在绝大部分的数据集中,不同类别各自所占的图像区域并不相等,比如一张图片中的高楼大厦和窗户,高楼所占的像素点更多,它就能被更多的学习,而窗户的特征则容易被忽略。
(3)Binary Cross Entropy
Binary Cross Entropy(BCE)和交叉熵(Cross Entropy)很像,它们的区别是交叉熵损失是用于多类别分类,而Binary Cross Entropy Loss主要用于单标签的二分类或者多标签的二分类。
由于U-Net的期望输出是只含0与1的掩膜图像(Mask),并且对九根金线都生成一张Mask图像。这九张Mask图像,分布于九个不同的Channel。对于每个Channel来说,就是典型的单标签二分类(单标签——一次判断,二分类——判断图上的这个点是否属于这根金线)。每个Mask都需要判断一次,共需九次。
用一个复合损失函数来训练我们的U-Net,其形式为如下。经过实验,当两个损失函数的权重比为1:1时,网络既能快速收敛,又能较好地分割出金线区域。它们在训练过程中各自的作用是,Lossbce可以快速使网络输出的图像收敛到全黑背景,Lossdice可以帮助网络训练生成白色金线区域。
Lossall=0.5*9Lossdice+0.5*Lossbce
6、训练过程
训练过程使用torch.optim.lr_scheduler来调整学习率调整学习率,该函数内部集成了一些如何随训练次数进行来减小网络学习率的方法。为了网络能更好地学习特征和训练,最好设置自动调整学习率的方法,从而达到更好的训练效果。因为刚开始训练时,初始化的参数与最优解的参数差别很大,需要使用大学习率使模型更快速地收敛,而当训练进行到一定程度,网络参数离最优解已经较为接近,此时,需要小的学习率来使网络参数逐渐逼近最优解。若是步长过大,网络参数则容易跳出“谷底”的最优解,在“山坡”之间反复横跳,反映在宏观上便是损失下不去,网络训练缓慢。
同时,使用优化算法torch.optim.Adam。简单来说,Adam(全称AdaptiveMomentEstimation)的算法原理是增加了动量项的RMSprop。Adam模拟物理学中的物体惯性和动量定理来调整网络层中的参数的学习率,使学习率的变化不再突兀。因为现实物体具有惯性,其速度的变化是连续的,不会是离散的。同理,应用了动量定理的Adam算法可以保持参数变化不会超出某个范围。其算法策略可以表示为:
mt=β1mt-1+(1-β1)gt
其中,超参数0<β1<1,0<β2<1一般取0.9与0.999;mt、vt分别为一阶动量变量和二阶动量变量,分别为所对应的动量的修正值;Wt表示在第t迭代时,模型的各个参数;gt=ΔJ(Wt)表示第t次迭代时,代价函数关于W的梯度;ε是一个微小的数(小于等于10-8),放置于分母处,防止分母为零,分数无穷大。
最后,设置网络训练次数(Epoch)为120,设置初始学习率为10-4,开始在GTX 1070上进行训练。训练过程中的各个Loss值绘图如图7、图8所示。
模型的Loss一开始下降很快,随后逐渐变慢并趋于平缓。这和设置的学习率随训练次数Epoch递减有关。不论是Lossdice还是Lossce,训练集上的值都比验证集上的值小,这是因为模型有一定程度的过拟合,是无法避免的。但总体来看,模型地过拟合现象并不严重。在模型的训练过程中,随时保存在验证集上性能最好的模型参数。
7、后处理
U-Net网络分割完金线后,部分网络分割所获得Mask图片中带有噪点,需要对其进行后处理。后处理的步骤主要通过OpenCV对图像各部分区域进行面积计算,保留超过一定面积阈值的区域,忽略小于某个面积阈值的区域。经过这样处理的金线Mask图像更加纯净。
最后,按照金线Mask图像对芯片的灰度图和深度图进行分割处理,得到分割后的灰度图与深度图。这两种图像包含了金线的颜色信息和三维位置信息(XYZ三个维度),可用于检测三维缺陷,实现更为细致的金线缺陷分类。由于金线缺陷分类不是本发明的重点,故不再赘述。
8、OpenGL三维金线显示
利用U-Net网络分割完金线的灰度图,需要作简单的处理之后,我们得到的是每根金线的黑白二值图像。将金线的二值图片与深度图像作与运算,得到金线区域的深度图像,而由于金线是3D的,要分辨缺陷种类需要在三维图像上进行观察,因此我们还需要把平面的深度图转化为三维的点云图。
本发明选择OpenGL作为三维点云重建图形库。OpenGL的点云重建研究大多都是基于老版本的GL库(其配套使用的其他库也是老旧版本),考虑到未来版本迭代和弃用旧库的可能性,将使用最新的OpenGL库和与之配套的库来自写代码。本发明三维点云重建方案将使用最新的OpenGL+GLAD+GLFW版本来实现。其中,GLAD是GL3W,GLEW的升级版,是一个可以更加便捷地访问OpenGL标准接口的工具库,它对底层OpenGL接口进行封装,可以更加方便地使用,而不用纠结一些繁琐地底层实现;GLFW可用于创建OpenGL窗口、监听鼠标操作等,是Freeglut库的升级版和优化版。
OpenGL显示图像的程序步骤主要为:
(1)通过GLFW创建显示窗口,并实现窗口的初始化,包括窗口大小,窗口名称,内核版本等等;
(2)加载着色器信息。这些信息包含如何构建并使用顶点数据。在OpenGL图形库语言中,所有物体的显示都要先把它的三维坐标转换为适合窗口的二维像素点。三维坐标转为二维坐标这一过程主要是由OpenGL的管线实现的,着色器就是管线的控制器。
(3)读取图像颜色信息和三维位置信息并存入顶点缓冲对象(Vertex BufferObjects,VBO)。VBO相当于计算机中一段存储了点的各种数据的内存,比如存储了各个显示点云的三维坐标信息和RGB颜色信息。使用VBO的好处是,每当绘图窗口需要调用数据时,着色器能更快的访问这些数据。
(4)生成相应的索引缓冲对象(Element Buffer Object,EBO,在一些旧的版本和教程中成为Index Buffer Object,IBO)。它存储了用于绘制三角形的点组合,因为OpenGL渲染图像是用一个一个小三角形实现的,每三个点组成一个三角形,用于颜色显示、图案显示等操作。
(5)将VBO、EBO绑定至顶点数组对象(Vertex Array Object,VAO),并告诉指针如何读取数据。使用VAO的好处是可以在配置顶点属性时免除很多重复性的工作,比如读取顶点从哪里开始、顶点的偏移量是多少。配置好VAO后,每次使用时只要调用即可。
(6)设定视角控制/视角变换方式,一般的视角控制有第三人称和第一人称的方式,具体实现在下一小节详细说明。
(7)在窗口中循环绘图,显示模型三维图像。设置图像刷新率,避免占用过多内存,并设置退出循环的方式。
(8)退出窗口,释放VAO、VBO、EBO相应的内存。
OpenGL实现视角变换主要通过三个矩阵:模型矩阵(Mmodel),在世界坐标系中,控制物体的位移缩放和旋转,相当于线性变换矩阵;观察矩阵(Mview),用来将世界坐标系变换到观察空间;投影矩阵(Mprojection),为了形成透视效果,模拟现实中远小近大的分布特点。整体变换公式为:
Vclip=Mprojection·Mview·Mmodel·Vlocal
这三个矩阵的具体含义和作用为:
(1)模型矩阵Mmodel:在世界坐标系中,控制物体的位移缩放和旋转,相当于一个线性变换;
(2)观察矩阵Mview:用来将世界坐标系变换到观察空间的坐标系,观察空间即摄像头所看到的空间,也就是窗口所展示的图像;
(3)投影矩阵Mprojection:为了形成真实视觉上近大远小的透视效果。
对于显示模型的视角控制方式,采用第三人称。第三人称的控制实现原理如下,其中第一、第二部分是模型自身的旋转控制,第三、第四部分是观察者(即摄像机)的运动控制:
(1)当鼠标左键按下时,记录鼠标此时的坐标,进入XY轴的旋转模式。随后鼠标拖动,记录实时位置为与前一时刻的做差,得到偏移量。通过这个偏移量乘以时间间隔Δt(时间间隔Δt正比于OpenGL显示窗口的刷新间隔。当窗口刷新率越高,刷新间隔越短,时间间隔也越短。为了实现较好的展示效果,每次刷新间隔中需要实现的模型变化则要越小),在XY轴上以增量形式旋转模型矩阵Mmodel,实现模型绕XY轴的旋转。旋转完成后,将前一时刻的修改为这一时刻的继续处理鼠标拖动事件。当鼠标左键被释放时,退出XY轴的旋转模式,此时鼠标的移动将不再改变模型的位姿。
(2)同理,当鼠标右键按下时,记录鼠标此时的坐标,进入YZ轴的旋转模式。随后鼠标拖动,记录实时位置为与前一时刻的 做差,得到偏移量。通过这个偏移量乘以时间间隔Δt,在YZ轴上以增量形式旋转模型矩阵Mmodel,实现模型绕YZ轴的旋转。旋转完成后,将前一时刻的修改为这一时刻的继续处理鼠标拖动事件。当鼠标右键被释放时,退出YZ轴的旋转模式。
(3)当鼠标中键被按下时,记录鼠标此时的坐标,进入XY平面内的位移模式。随后鼠标拖动,记录实时位置为与前一时刻的做差,得到偏移量。通过这个偏移量乘以时间间隔Δt,在XY平面上以增量形式位移观察矩阵Mview,实现摄像机在XY平面内的位移。位移完成后,将前一时刻的修改为这一时刻的继续处理鼠标拖动事件。当鼠标右键被释放时,退出XY平面的位移模式。
(4)当鼠标滚轮滚动时,根据滚轮向前和向后的滚动距离,改变投影矩阵Mprojection,实现显示窗口靠近模型与远离模型的效果。
程序可以选择显示整块芯片或者单根金线。另外,为方便操作和控制,将OpenGL图像显示流程自动化,可以通过键盘操作来显示上一张或是下一张图片。显示效果如下。芯片的三维点云图像可以观察整体特征,单根金线的三维点云图像可以更多的观察细节和起伏,后续也可以用来标注金线缺陷的种类,制作缺陷分类数据集,如图9、图10所示。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种基于深度学习的半导体芯片金线分割方法,其特征在于,包括:
芯片区域分割步骤:拍摄芯片得到灰度图和深度图,对灰度图和深度图进行分割,得到芯片区域图;
数据集制作步骤:对所述芯片区域图中的金线进行标注和归类,并转换为掩膜图,得到数据集;
训练步骤:采用所述数据集进行神经网络训练;
分割步骤:采用训练后的神经网络对半导体芯片图进行金线分割。
2.根据权利要求1所述的基于深度学习的半导体芯片金线分割方法,其特征在于,在所述训练步骤之前还包括:
数据增广步骤:对所述掩膜图进行数据增广,得到增广后的数据集。
3.根据权利要求1所述的基于深度学习的半导体芯片金线分割方法,其特征在于,所述芯片区域分割步骤包括:
步骤S1.1、遍历拍摄芯片得到的灰度图和深度图,筛去不符合预定要求的灰度图和深度图;
步骤S1.2、设置阈值,对所述灰度图进行二值化操作;
步骤S1.3、去除二值化后的灰度图中的噪声和噪点;
步骤S1.4、通过边缘检测获得去噪后的灰度图中的轮廓;
步骤S1.5、提取连续的轮廓,去掉长度不符合要求的轮廓;
步骤S1.6、对提取的轮廓进行矩形拟合,去掉面积不符合要求的轮廓;
步骤S1.7、记录从灰度图中得到的矩形的顶点坐标,同时对灰度图、深度图进行分割。
4.根据权利要求1所述的基于深度学习的半导体芯片金线分割方法,其特征在于,所述数据增广步骤包括:
增加椒盐噪声:在所述掩膜图进行随机覆盖预设大小的黑白区域,从而增加遮挡和干扰;
重组金线:对芯片不同部分中的多个金线进行重组;
像素偏移:将所述掩膜图整体水平方向和/或垂直方向随机位移一个或多个像素点;
额外增广:对于归类结果中出现概率小于预设值的所述掩膜图进行额外多次的数据增广步骤。
5.根据权利要求1所述的基于深度学习的半导体芯片金线分割方法,其特征在于,在所述分割步骤后还包括后处理步骤:
通过图像处理对分割后的半导体芯片图各部分区域进行面积计算,保留超过预设面积阈值的区域,忽略其余的区域。
6.一种基于深度学习的半导体芯片金线分割系统,其特征在于,包括:
芯片区域分割模块:拍摄芯片得到灰度图和深度图,对灰度图和深度图进行分割,得到芯片区域图;
数据集制作模块:对所述芯片区域图中的金线进行标注和归类,并转换为掩膜图,得到数据集;
训练模块:采用所述数据集进行神经网络训练;
分割模块:采用训练后的神经网络对半导体芯片图进行金线分割。
7.根据权利要求6所述的基于深度学习的半导体芯片金线分割系统,其特征在于,还包括:
数据增广模块:对所述掩膜图进行数据增广,得到增广后的数据集供所述训练模块训练。
8.根据权利要求6所述的基于深度学习的半导体芯片金线分割系统,其特征在于,所述芯片区域分割模块包括:
模块S1.1、遍历拍摄芯片得到的灰度图和深度图,筛去不符合预定要求的灰度图和深度图;
模块S1.2、设置阈值,对所述灰度图进行二值化操作;
模块S1.3、去除二值化后的灰度图中的噪声和噪点;
模块S1.4、通过边缘检测获得去噪后的灰度图中的轮廓;
模块S1.5、提取连续的轮廓,去掉长度不符合要求的轮廓;
模块S1.6、对提取的轮廓进行矩形拟合,去掉面积不符合要求的轮廓;
模块S1.7、记录从灰度图中得到的矩形的顶点坐标,同时对灰度图、深度图进行分割。
9.根据权利要求6所述的基于深度学习的半导体芯片金线分割系统,其特征在于,所述数据增广模块包括:
增加椒盐噪声:在所述掩膜图进行随机覆盖预设大小的黑白区域,从而增加遮挡和干扰;
重组金线:对芯片不同部分中的多个金线进行重组;
像素偏移:将所述掩膜图整体水平方向和/或垂直方向随机位移一个或多个像素点;
额外增广:对于归类结果中出现概率小于预设值的所述掩膜图进行额外多次的数据增广模块。
10.根据权利要求6所述的基于深度学习的半导体芯片金线分割系统,其特征在于,在所述分割模块后还包括后处理模块:
通过图像处理对分割后的半导体芯片图各部分区域进行面积计算,保留超过预设面积阈值的区域,忽略其余的区域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110626533.0A CN113554589B (zh) | 2021-06-04 | 2021-06-04 | 基于深度学习的半导体芯片金线分割方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110626533.0A CN113554589B (zh) | 2021-06-04 | 2021-06-04 | 基于深度学习的半导体芯片金线分割方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113554589A true CN113554589A (zh) | 2021-10-26 |
CN113554589B CN113554589B (zh) | 2023-05-02 |
Family
ID=78101994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110626533.0A Active CN113554589B (zh) | 2021-06-04 | 2021-06-04 | 基于深度学习的半导体芯片金线分割方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113554589B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116664566A (zh) * | 2023-07-28 | 2023-08-29 | 成都数智创新精益科技有限公司 | 一种oled面板丝印质量控制方法及系统及装置及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301408A (zh) * | 2017-07-17 | 2017-10-27 | 成都通甲优博科技有限责任公司 | 人体掩膜提取方法及装置 |
CN108120392A (zh) * | 2017-11-30 | 2018-06-05 | 东南大学 | 气液两相流中气泡三维测量系统及方法 |
CN111402248A (zh) * | 2020-03-23 | 2020-07-10 | 华南理工大学 | 一种基于机器视觉的输电线路导线缺陷检测方法 |
CN111507990A (zh) * | 2020-04-20 | 2020-08-07 | 南京航空航天大学 | 一种基于深度学习的隧道表面缺陷分割方法 |
CN111563908A (zh) * | 2020-05-08 | 2020-08-21 | 展讯通信(上海)有限公司 | 一种图像处理方法及相关装置 |
CN111897433A (zh) * | 2020-08-04 | 2020-11-06 | 吉林大学 | 一种集成成像显示系统中实现动态手势识别与控制方法 |
CN111951232A (zh) * | 2020-07-24 | 2020-11-17 | 上海微亿智造科技有限公司 | 一种金属粉末注射成型外观缺陷检测方法及系统 |
CN112365434A (zh) * | 2020-11-10 | 2021-02-12 | 大连理工大学 | 一种基于双掩膜图像分割的无人机狭窄通道检测方法 |
-
2021
- 2021-06-04 CN CN202110626533.0A patent/CN113554589B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301408A (zh) * | 2017-07-17 | 2017-10-27 | 成都通甲优博科技有限责任公司 | 人体掩膜提取方法及装置 |
CN108120392A (zh) * | 2017-11-30 | 2018-06-05 | 东南大学 | 气液两相流中气泡三维测量系统及方法 |
CN111402248A (zh) * | 2020-03-23 | 2020-07-10 | 华南理工大学 | 一种基于机器视觉的输电线路导线缺陷检测方法 |
CN111507990A (zh) * | 2020-04-20 | 2020-08-07 | 南京航空航天大学 | 一种基于深度学习的隧道表面缺陷分割方法 |
CN111563908A (zh) * | 2020-05-08 | 2020-08-21 | 展讯通信(上海)有限公司 | 一种图像处理方法及相关装置 |
CN111951232A (zh) * | 2020-07-24 | 2020-11-17 | 上海微亿智造科技有限公司 | 一种金属粉末注射成型外观缺陷检测方法及系统 |
CN111897433A (zh) * | 2020-08-04 | 2020-11-06 | 吉林大学 | 一种集成成像显示系统中实现动态手势识别与控制方法 |
CN112365434A (zh) * | 2020-11-10 | 2021-02-12 | 大连理工大学 | 一种基于双掩膜图像分割的无人机狭窄通道检测方法 |
Non-Patent Citations (2)
Title |
---|
张丹丹: "《基于深度神经网络技术的高分遥感图像处理及应用》", 31 August 2020, 北京:中国宇航出版社 * |
武玉伟编著: "《深度学习基础与应用》", 30 April 2020, 北京:北京理工大学出版社 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116664566A (zh) * | 2023-07-28 | 2023-08-29 | 成都数智创新精益科技有限公司 | 一种oled面板丝印质量控制方法及系统及装置及介质 |
CN116664566B (zh) * | 2023-07-28 | 2023-09-26 | 成都数智创新精益科技有限公司 | 一种oled面板丝印质量控制方法及系统及装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113554589B (zh) | 2023-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10789686B2 (en) | Denoising Monte Carlo renderings using machine learning with importance sampling | |
WO2020238560A1 (zh) | 视频目标跟踪方法、装置、计算机设备及存储介质 | |
CN108416266B (zh) | 一种利用光流提取运动目标的视频行为快速识别方法 | |
CN109584248B (zh) | 基于特征融合和稠密连接网络的红外面目标实例分割方法 | |
US20180293711A1 (en) | Kernel-predicting convolutional neural networks for denoising | |
KR102154393B1 (ko) | 기계 학습 기반의 자동 결함 분류 방법 | |
CN112070727B (zh) | 一种基于机器学习的金属表面缺陷检测方法 | |
CN111768415A (zh) | 一种无量化池化的图像实例分割方法 | |
CN111951292B (zh) | 物体表面反射属性提取方法、装置、设备及存储介质 | |
CN114757904A (zh) | 一种基于ai深度学习算法的表面缺陷检测方法 | |
CN110310305A (zh) | 一种基于bssd检测与卡尔曼滤波的目标跟踪方法与装置 | |
CN115218798A (zh) | 测量板材孔和/或槽尺寸的光学测量系统、方法及介质 | |
CN114170231A (zh) | 基于卷积神经网络的图像语义分割方法、装置及电子设备 | |
CN113554589B (zh) | 基于深度学习的半导体芯片金线分割方法及系统 | |
CN111832508B (zh) | 基于die_ga的低照度目标检测方法 | |
CN117079125A (zh) | 一种基于改进型YOLOv5的猕猴桃授粉花朵识别方法 | |
CN116740375A (zh) | 一种图像特征提取方法、系统及介质 | |
CN115170825A (zh) | 图像生成系统训练方法、图像生成方法以及图像生成系统 | |
CN110659694B (zh) | 一种基于机器学习的柑橘果蒂的检测方法 | |
Pohle-Fröhlich et al. | Roof Segmentation based on Deep Neural Networks. | |
CN116363085B (zh) | 基于小样本学习和虚拟合成数据的工业零件目标检测方法 | |
JP7432634B2 (ja) | 深度レンダリングからのデジタルオブジェクトの立体表現 | |
US20230386004A1 (en) | Device and computer-implemented method for evaluating a control of a generator for determining pixels of a synthetic image | |
CN116343010A (zh) | 一种基于经验参照学习框架目标检测方法、系统及终端设备 | |
CN114842347A (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 | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: Room 102, 1st Floor, Building 98, No. 1441 Humin Road, Minhang District, Shanghai, 2019; Room 302, 3rd Floor, Building 98; Room 402, 4th Floor, Building 98 Patentee after: Yimu (Shanghai) Technology Co.,Ltd. Address before: 201100 room 1206, building 1, No. 951, Jianchuan Road, Minhang District, Shanghai Patentee before: Yimu (Shanghai) Technology Co.,Ltd. |