CN113362306A - 一种基于深度学习的封装芯片缺陷检测方法 - Google Patents
一种基于深度学习的封装芯片缺陷检测方法 Download PDFInfo
- Publication number
- CN113362306A CN113362306A CN202110633367.7A CN202110633367A CN113362306A CN 113362306 A CN113362306 A CN 113362306A CN 202110633367 A CN202110633367 A CN 202110633367A CN 113362306 A CN113362306 A CN 113362306A
- Authority
- CN
- China
- Prior art keywords
- image
- detection
- chip
- packaged chip
- deep learning
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 105
- 230000007547 defect Effects 0.000 title claims abstract description 49
- 238000013135 deep learning Methods 0.000 title claims abstract description 22
- 238000012549 training Methods 0.000 claims abstract description 47
- 238000012360 testing method Methods 0.000 claims abstract description 39
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims abstract description 17
- 230000009467 reduction Effects 0.000 claims abstract description 17
- 238000007789 sealing Methods 0.000 claims abstract description 16
- 238000003709 image segmentation Methods 0.000 claims abstract description 11
- 238000012797 qualification Methods 0.000 claims abstract description 7
- 238000012937 correction Methods 0.000 claims abstract description 5
- 230000006870 function Effects 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 11
- 230000002146 bilateral effect Effects 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 9
- 238000004873 anchoring Methods 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 7
- 230000011218 segmentation Effects 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 230000002776 aggregation Effects 0.000 claims description 3
- 238000004220 aggregation Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 8
- 238000007689 inspection Methods 0.000 abstract description 3
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000007797 corrosion Effects 0.000 description 1
- 238000005260 corrosion Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012800 visualization 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
- 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
-
- G06T5/70—
-
- 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/12—Edge-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/181—Segmentation; Edge detection involving edge growing; involving edge linking
-
- 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/10116—X-ray 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/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30148—Semiconductor; IC; Wafer
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于深度学习的封装芯片缺陷检测方法,包括:对封装芯片的X射线图像进行降噪处理;对X射线图像进行图像分割,提取具有封装芯片的测试图像;基于模板匹配得到测试图像中芯片的密封圈内外边缘;建立训练数据集与目标检测模型,对目标检测网络进行训练;基于训练后的目标检测模型对测试图像进行检测,得到测试图像中缺陷区域对应的检测框;基于区域生长对检测框进行精定位修正;基于密封圈内外边缘与检测框的最短路径对芯片进行合格性判定。深入研究了以深度学习视觉检测技术为代表的计算机视觉技术,研制出电子元器件X射线检查气泡缺陷自动识别方法,解决了军工电子元器件质量检测的迫切需求。
Description
技术领域
本发明涉及封装芯片缺陷检测领域/图像处理技术领域,具体是一种基于深度学习的封装芯片缺陷检测方法。
背景技术
传统的人工视觉检测、自动光学检测等检测技术对元器件内部的质量检测几乎无能为力,X射线检测方式以透射原理对电子元器件进行X射线成像,其图像能反映电子元器件的内部缺陷,再由检测人员浏览X射线图像,根据检测标准进行人工判读、分析。这种人工判读分析方式受工人经验和身体状况等主观因素的影响,检测效率和可靠性低,元器件检测质量难以有效保证,给元器件的使用带来风险与隐患,已无法满足军用电子系统日益增加的需求。
发明内容
针对上述现有技术中的不足,本发明提供一种基于深度学习的封装芯片缺陷检测方法,以深度学习视觉检测技术研制电子元器件X射线检查气泡缺陷自动识别方法,解决了军工电子元器件质量检测的迫切需求。
为实现上述目的,本发明提供一种基于深度学习的封装芯片缺陷检测方法,包括如下步骤:
步骤1,获取封装芯片的X射线图像,并对其进行降噪处理;
步骤2,对降噪处理后的X射线图像进行图像分割,提取具有封装芯片的测试图像;
步骤3,基于模板匹配得到测试图像中芯片的密封圈内外边缘;
步骤4,建立训练数据集与目标检测模型,并基于训练数据集对目标检测网络进行训练;
步骤5,基于训练后的目标检测模型对测试图像进行检测,得到测试图像中缺陷区域对应的检测框;
步骤6,基于区域生长对检测框进行精定位修正;
步骤7,基于密封圈内外边缘与检测框的最短路径对芯片进行合格性判定。
在其中一个实施例中,步骤1中,所述降噪处理为双边滤波处理,具体为:
其中,所述权值具体为:
w(i,j)=wr(i,j)·ws(i,j)
式中,ws(i,j)为空间邻近度权值,wr(i,j)空间相似度权值,δs、δr为程序输入值。
在其中一个实施例中,步骤2中,所述对降噪处理后的X射线图像进行图像分割,具体为:基于寻找目标最小外接矩形对降噪处理后的X射线图像进行图像分割,具体包括如下步骤:
步骤2.1,对降噪处理后的X射线图像进行二值化处理,得到二值化图像;
步骤2.2,对二值化图像进行开运算操作,以滤除二值化图像上的小字符;
步骤2.3,基于OpenCV库中轮廓检测算法,对二值图像进行查找并绘制轮廓,再对绘制出的目标轮廓进行拟合,找出轮廓的最小外接矩形;
步骤2.4,基于最小外接矩形的中心点在X射线图像1/3~2/3处,搜寻中心处的芯片,并截取具有中心芯片的分割图像;
步骤2.5,对分割图像进行校正,得到测试图像。
在其中一个实施例中,步骤2.5中,所述对分割图像进行校正,得到测试图像,具体为:
步骤2.5.1,取最小外接矩形的四个角点和尺寸为800×600的图像四角做对应,然后根据这四对对应的角点,基于Opencv中的findHomography函数获取透视变换矩阵;
步骤2.5.2,基于透视变换矩阵,调用Opencv中的函数warpPerspective将分割图像变换到尺寸800×600校正后的视图中,得到测试图像;
步骤2.5.3,输出800×600的测试图像。
在其中一个实施例中,所述步骤3具体包括如下步骤:
步骤3.1,构建第一模板图像与第二模板图像,其中,第一模板图像为芯片的标准图像,第二模板图像为芯片的标准内框图像;
步骤3.2,分别将第一模板图像与第二模板图像在测试图像上滑动,寻找最佳匹配值最大的位置,即得到测试图像中芯片的密封圈内外边缘。
在其中一个实施例中,步骤4中,所述训练数据集的建立过程为:
步骤4.1,对训练图像进行缺陷区域与类别的人工标注,其中,缺陷区域的标注为锚定框;
步骤4.2,对人工标注后的训练图像进行扩充,得到初始训练集;
步骤4.3,基于K-means++聚类算法对初始训练集中的训练图像进行锚定框大小优化,得到训练数据集。
在其中一个实施例中,步骤4中,所述目标检测模型为仅具有中尺度预测层与小尺度预测层的Yolov4网络,该所述Yolov4网络的损失函数为:
式中,Lf为损失函数,α为平衡因子,γ为聚集参数,y′为待分类实例属于正类的概率。
在其中一个实施例中,步骤6中,所述区域生长的种子点为:检测框的中心点;
所述区域生长的生长准则为:基于区域灰度差准则,比较检测框图像区域的灰度均值与种子点邻域像素的灰度值,若两者之差的绝对值小于阈值,则将种子点与其邻域像素合并;
所述区域生长的生长停止条件为:当已经不存在满足生长准则的像素点,则生长停止。
在其中一个实施例中,步骤7中,所述合格性判定具体为:
以外封闭圈为起点、内封闭圈为终点,以各检测框自身为根节点,得到各检测框的最短路径,其中,检测框内部的距离默认为0;
若所有检测框的最短路径中的最小值小于外封闭圈与内封闭圈之间距离的15%,则判定为不合格,反之则认定为合格。
本发明提供的一种基于深度学习的封装芯片缺陷检测方法,通过建立目标检测模型对封装芯片上的缺陷进行检测,并基于区域生长对检测结果进行精定位修正,最终通过检测结果的最短路径对缺陷进行合格线判定,深入研究了以深度学习视觉检测技术为代表的计算机视觉技术,研制出电子元器件X射线检查气泡缺陷自动识别方法,解决了军工电子元器件质量检测的迫切需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明实施例中基于深度学习的封装芯片缺陷检测方法的流程示意图;
图2为本发明实施例中双边滤波前X射线图像的示意图;
图3为本发明实施例中双边滤波后X射线图像的示意图;
图4为本发明实施例中测试图像检测结果示意图;
图5为本发明实施例中检测框最短路径求解示意图;
图6为本发明实施例中缺陷检测的结果示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
另外,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接,还可以是物理连接或无线通信连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
由于芯片等电子元器件的缺陷主要为密封区的气泡、空腔内的多余物等,因此本实施例基于电子元器件X射线检查气泡缺陷自动识别需求,深入研究以深度学习视觉检测技术为代表的计算机视觉技术,研发出了一种基于深度学习的封装芯片缺陷检测方法。参考图1,该检测方法具体包括如下步骤:
步骤1,获取封装芯片的X射线图像,并对其进行降噪处理;
步骤2,对降噪处理后的X射线图像进行图像分割,提取具有封装芯片的测试图像;
步骤3,基于模板匹配得到测试图像中芯片的密封圈内外边缘;
步骤4,建立训练数据集与目标检测模型,并基于训练数据集对目标检测网络进行训练;
步骤5,基于训练后的目标检测模型对测试图像进行检测,得到测试图像中缺陷区域对应的检测框;
步骤6,基于区域生长对检测框进行精定位修正;
步骤7,基于密封圈内外边缘与检测框的最短路径对芯片进行合格性判定。
由于X射线图像混合噪声明显且缺陷对比度低,采用常规的降噪算法在滤除图像噪声的同时,也会平滑图像的边缘,影响缺陷的检测。因此本实施例在步骤1中基于双边滤波算法对X射线图像进行降噪处理,双边滤波是一种结合图像的空间邻近度与灰度相似度的非线性滤波方法,基本思想是基于高斯滤波的原理,利用空间邻近度消除噪声,同时使用灰度相似度保护图像的边缘,将空间相似度权值与像素相似度权值作乘积,用优化后的权值与图像做卷积运算,处理结果如图2-3所示。其具体处理过程为:
其中,所述权值具体为:
w(i,j)=wr(i,j)·ws(i,j)
式中,ws(i,j)为空间邻近度权值,wr(i,j)空间相似度权值,δs、δr为程序输入值。
在获取X射线图像时,由于实际检测设备工作机理的原因,所采集到的X光影像是九宫格式排布的芯片图像,这使得检测的难度和复杂程度变高,为提高检测准确度及效率,需利用相关图像分割算法将中心处的芯片提取出来。基于此,本实施例在步骤2中,基于寻找目标最小外接矩形对降噪处理后的X射线图像进行图像分割,具体包括如下步骤:
步骤2.1,设定合理的二值化阈值,对降噪处理后的X射线图像进行二值化处理,对于X射线图像中灰度值大于二值化阈值的像素点,将其灰度值设定为最大值,同时将灰度值小于或等于二值化阈值的像素,将其灰度值设定为0,得到二值化图像;
步骤2.2,对二值化图像进行开运算操作,以滤除二值化图像上的小字符,避免对结果造成影响,其中,开运算的具体实施过程为:先将图像腐蚀,再对腐蚀结果进行膨胀;
步骤2.3,基于OpenCV库中轮廓检测算法,对二值图像进行查找并绘制轮廓,再对绘制出的目标轮廓进行拟合,找出轮廓的最小外接矩形,以用于后续图像的分割;
步骤2.4,基于最小外接矩形的中心点在X射线图像1/3~2/3处,搜寻中心处的芯片,并截取具有中心芯片的分割图像;
步骤2.5,基于OpenCV计算出变化矩阵对分割图像进行校正,得到测试图像,其具体实施过程为:
步骤2.5.1,取最小外接矩形的四个角点和尺寸为800×600的图像四角做对应,然后根据这四对对应的角点,基于Opencv中的findHomography函数获取透视变换矩阵;
步骤2.5.2,基于透视变换矩阵,调用Opencv中的函数warpPerspective将分割图像变换到尺寸800×600校正后的视图中,得到测试图像;
步骤2.5.3,输出800×600的测试图像,同时输出最小外接矩形的长、宽以及旋转角度。
由于芯片等元器件的测试图像中气泡等缺陷存在于密封区,且位于密封圈内侧边界的气泡与内框融合,像素值相近,这会导致气泡检测不准确。如此会带来一些问题,其一,针对元器件的合格性判定除了气泡本身的定位以及轮廓信息外,还需要器件内框边缘位置;其二,如果直接提取与内框融合的气泡轮廓,将会求得包含内腔的“放大”后的气泡轮廓。为了后续提取气泡轮廓的检测以及元器件合格性的判定,因此需要对内腔部分进行准确的识别、定位,排除内腔的干扰,即识别测试图像中芯片的密封圈内外边缘。因此本实施例在步骤3采用了基于模板匹配的方法对芯片的密封圈内外边缘进行识别与定位,其具体包括如下步骤:
步骤3.1,构建第一模板图像与第二模板图像,其中,第一模板图像为芯片的标准图像,第二模板图像为芯片的标准内框图像;
步骤3.2,分别将第一模板图像与第二模板图像在测试图像上滑动,寻找最佳匹配值最大的位置,即得到测试图像中芯片的密封圈内外边缘。
本实施例中,寻找最佳匹配值最大的位置通过结合OpenCV库,调用函数matchTemplate,选择标准相关系数匹配的方式来实现,将第一模板图像与第二模板图像对其均值的相对值与测试图像对其均值的相关值进行匹配,提高了匹配的精度,有效减少了密封圈内外边缘提取不准确的情况,相关系数匹配计算公式如下:
式中,R(x,y)为输出图像结果,T′(x′,y′)为模板,I′(x+x′,y+y′)为输入图像,(x′,y′)表示位置信息。
目前,基于深度神经网络进行目标检测的主流算法有Faster R-CNN及SSD、YOLO等多种算法。其中,Yolov4是最近提出的一种高效而强大的目标检测模型,结构简单易于优化,在MS COCO数据集下可以达到65fps,适合工业检测。因此本文选择Yolov4作为元器件缺陷的目标检测网络。基于此,本实施例在步骤4中选择Yolov4网络作为目标检测模型,YOLOv4网络的原三个分支分别用来识别图像中的大中小三类目标。为了适合气泡缺陷尺寸特性,本实施例中去掉了大尺度预测层,保留中尺度预测层与小尺度预测层两个分支,如此避免了将芯片内部结构误检测为缺陷,融合中等特征图的细节信息和小特征图的语义信息,在剩余两个尺度上训练出最终的模型。
作为优选地实施方式,本实施例中引入了Focal Loss替换YOLOv4网络损失函数中负样本置信度部分的交叉熵公式,降低了模型训练时负样本损失在损失函数中的权重,以此纠正模型梯度的更新方向,使网络学到更有用的信息,对气泡缺陷进行更准确的检测。Focal Loss是基于交叉熵公式改进而来,主要是为了解决YOLOv4中正负样本比例严重失衡的问题。改进后的Yolov4网络损失函数为:
式中,Lf为损失函数,α为平衡因子,y为ground truth label,γ聚集参数,y′待分类实例属于正类的概率。其首先在原有的交叉熵公式基础上加了一个参数γ。当γ=0时,Focal Loss就为交叉熵公式。当γ>0时,会让损失函数减少对易分类样本的计算,增加对难分类样本的计算。此外,加入了平衡因子α,用来调整正负样本数量失衡的问题。
在构建好目标检测模型后,还需建立训练数据集以用于目标监测模型的训练。本实施例中,训练数据集的建立过程为:
步骤4.1,用Labelimg或其他类似工具对训练图像进行缺陷区域与类别的人工标注,包括缺陷区域的标注为锚定框、类别信息,即缺陷的坐标和分类;
步骤4.2,为提高目标检测模型的鲁棒性,避免过拟合,通过对训练图像进行数据扩增和数据增强,采用Mosaic数据增强的方式来对训练图像进行扩充,得到初始训练集,其中,Mosaic数据增强是把四张图片,通过随机缩放、随机裁剪、随机排布的方式进行拼接,这种方法丰富了检测物体的背景和小目标,并且在计算BatchNormalization的时候一次会计算四张图片的数据,使得mini-batch大小不需要很大,一个GPU就可以达到比较好的效果;
步骤4.3,基于K-means++聚类算法对初始训练集中的训练图像进行锚定框大小优化,得到训练数据集。
本实施例中通过采用K-means++聚类算法对目标样本进行锚定框优化,对初始训练集中目标的锚定框进行聚类分析,与传统的K-means聚类算法相比,K-means++优化了初试点的选择,能显著改善分类结果的误差,以获得更适合气泡缺陷数据集的Anchorbox的大小,提高气泡缺陷检测的精度。具体地,K-means++算法首先随机选取某一个样本目标框区域作为初始聚类中心,然后计算每个样本xi与已有聚类中心点的距离D(x),并计算每个样本被选为下一个聚类中心的概率P(x):
再通过轮盘法选出下一个聚类中心。重复上述计算距离D(x)和概率P(x)的步骤直到得出K个目标框。最后不断重复计算每个样本到聚类中心K个点的距离,并把该样本点划分到距离最小的聚类中心的类中并更新聚类中心,直到得到的Anchor box的大小不再发生改变。
最终设定预训练模型参数,将优化后的训练数据集放入模型中进行训练,通过训练样本对具有初始参数的卷积神经网络进行迭代训练,根据训练结果和可视化查看训练过程,从而不断修改优化训练模型相关训练参数,最终得到目标检测模型。模型测试阶段,将待检测样本,即测试图像输入目标检测模型得到检测结果。本实施例中,检测结果如图4所示。
经步骤5后,芯片上的气泡缺陷已被检测出来并进行检测框标注,其中一些检测框可能存在过定位,即过多的检测框框选非气泡缺陷的部分。针对这一问题,本实施例通过步骤6采用了基于区域生长对检测框进一步修正来达到精定位的要求。区域生长的基本思想是将具有相似性质的像素集合起来构成区域。首先对每个需要分割的区域找出一个种子像素作为生长的起点,然后将种子像素周围邻域中与种子有相同或相似性质的像素(根据事先确定的生长或相似准则来确定)合并到种子像素所在的区域中。而新的像素继续做种子向四周生长,直到再没有满足条件的像素可以包括进来,一个区域就生长而成了。本实施例中,所述区域生长算法设计流程如下:
区域生长的种子点为:检测框的中心点;
区域生长的生长准则为:基于区域灰度差准则,设检测框图像区域为R,其中检测框图像区域的像素点数为N′,比较检测框图像区域的灰度均值与种子点邻域像素的灰度值,若两者之差的绝对值小于阈值K′,则将种子点与其邻域像素合并,其中,较检测框图像区域的灰度均值为:
检测框图像区域的灰度均值与种子点邻域像素的灰度值之差的绝对值小于阈值K′可以表示为:
max|R(x,y)-m|(x,y)∈R<K′
本实施例中,阈值K′为5。
区域生长的生长停止条件为:当已经不存在满足生长准则的像素点,则生长停止。
图像中两个区域的最短距离是通过遍历区域边界上的所有像素点得出,设两个区域边界的像素点集合分别为E1、E2,其中(x1,y1)∈E1、(x2,y2)∈E2,用欧氏距离公式计算两区域边界点之间的距离。显然,两区域间的最短距离de可定义为:
本实施例的步骤7中,基于Floyd算法设计了一种针对芯片气泡的最短路径算法,起点为外封闭圈,终点为内封闭圈,芯片内外框的最短路径分为起点经过单个气泡直接到终点和经过若干个气泡到达终点两种情况。
下面给出某个气泡最短路径的具体求解示例对本实施例中的最短路径作出进一步的说明。
参考图5,外边界(即外封闭圈)标记为0,内边界(即内封闭圈)标记为n,气泡按从左到右的顺序分别编码为1、2、3、4,实线箭头路线为找到的最短路径。图5(a)中分别记录每个气泡到内外边界的距离,并选择2号气泡为根节点,其到内、外边框的距离分别为d2-n和d2-0;图5(b)为计算与右方相邻的3号气泡间的最短距离d2-3,由于d2-n>d2-3+d3-n,因此路径d2-n被d2-3+d3-n替代;图5(d)继续以3号气泡为下一个根节点,计算与右方相邻的4号气泡间的最短距离d3-4,由于d3-n>d3-4+d4-n,因此路径d3-n被d3-4+d4-n替代;图5(c)为计算与左方相邻的1号气泡间的最短距离d2-3,由于d2-n<d2-3+d3-n,所以d2-n被保留。最终通过比较气泡2的左子树(图5(c))和右子树(图5(d))最短路径,得出d2-0+d2-3+d3-4+d4-n为以气泡2为根节点的最短路径。
依照上面的求解过程,分别计算以每一个气泡(即检测框)为根结点的最短路径,其中的最小值即为芯片的最短路径,最终的实验结果如图6所示所示。本实施例中将芯片的最短路径定义为从外封闭圈到内封闭圈通过气泡时所经过的最短距离,气泡内部距离为0。如果最短路径小于内外框之间距离的15%,则判定为不合格,反之则认定为合格。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。
Claims (9)
1.一种基于深度学习的封装芯片缺陷检测方法,其特征在于,包括如下步骤:
步骤1,获取封装芯片的X射线图像,并对其进行降噪处理;
步骤2,对降噪处理后的X射线图像进行图像分割,提取具有封装芯片的测试图像;
步骤3,基于模板匹配得到测试图像中芯片的密封圈内外边缘;
步骤4,建立训练数据集与目标检测模型,并基于训练数据集对目标检测网络进行训练;
步骤5,基于训练后的目标检测模型对测试图像进行检测,得到测试图像中缺陷区域对应的检测框;
步骤6,基于区域生长对检测框进行精定位修正;
步骤7,基于密封圈内外边缘与检测框的最短路径对芯片进行合格性判定。
3.根据权利要求1所述基于深度学习的封装芯片缺陷检测方法,其特征在于,步骤2中,所述对降噪处理后的X射线图像进行图像分割,具体为:基于寻找目标最小外接矩形对降噪处理后的X射线图像进行图像分割,具体包括如下步骤:
步骤2.1,对降噪处理后的X射线图像进行二值化处理,得到二值化图像;
步骤2.2,对二值化图像进行开运算操作,以滤除二值化图像上的小字符;
步骤2.3,基于OpenCV库中轮廓检测算法,对二值图像进行查找并绘制轮廓,再对绘制出的目标轮廓进行拟合,找出轮廓的最小外接矩形;
步骤2.4,基于最小外接矩形的中心点在X射线图像1/3~2/3处,搜寻中心处的芯片,并截取具有中心芯片的分割图像;
步骤2.5,对分割图像进行校正,得到测试图像。
4.根据权利要求3所述基于深度学习的封装芯片缺陷检测方法,其特征在于,步骤2.5中,所述对分割图像进行校正,得到测试图像,具体为:
步骤2.5.1,取最小外接矩形的四个角点和尺寸为800×600的图像四角做对应,然后根据这四对对应的角点,基于Opencv中的findHomography函数获取透视变换矩阵;
步骤2.5.2,基于透视变换矩阵,调用Opencv中的函数warpPerspective将分割图像变换到尺寸800×600校正后的视图中,得到测试图像;
步骤2.5.3,输出800×600的测试图像。
5.根据权利要求1所述基于深度学习的封装芯片缺陷检测方法,其特征在于,所述步骤3具体包括如下步骤:
步骤3.1,构建第一模板图像与第二模板图像,其中,第一模板图像为芯片的标准图像,第二模板图像为芯片的标准内框图像;
步骤3.2,分别将第一模板图像与第二模板图像在测试图像上滑动,寻找最佳匹配值最大的位置,即得到测试图像中芯片的密封圈的内外边缘。
6.根据权利要求1至5任一项所述基于深度学习的封装芯片缺陷检测方法,其特征在于,步骤4中,所述训练数据集的建立过程为:
步骤4.1,对训练图像进行缺陷区域与类别的人工标注,其中,缺陷区域的标注为锚定框;
步骤4.2,对人工标注后的训练图像进行扩充,得到初始训练集;
步骤4.3,基于K-means++聚类算法对初始训练集中的训练图像进行锚定框大小优化,得到训练数据集。
8.根据权利要求1至5任一项所述基于深度学习的封装芯片缺陷检测方法,其特征在于,步骤6中,所述区域生长的种子点为:检测框的中心点;
所述区域生长的生长准则为:基于区域灰度差准则,比较检测框图像区域的灰度均值与种子点邻域像素的灰度值,若两者之差的绝对值小于阈值,则将种子点与其邻域像素合并;
所述区域生长的生长停止条件为:当已经不存在满足生长准则的像素点,则生长停止。
9.根据权利要求1至5任一项所述基于深度学习的封装芯片缺陷检测方法,其特征在于,步骤7中,所述合格性判定具体为:
以外封闭圈为起点、内封闭圈为终点,以各检测框自身为根节点,得到各检测框的最短路径,其中,检测框内部的距离默认为0;
若所有检测框的最短路径中的最小值小于外封闭圈与内封闭圈之间距离的15%,则判定为不合格,反之则认定为合格。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110633367.7A CN113362306B (zh) | 2021-06-07 | 2021-06-07 | 一种基于深度学习的封装芯片缺陷检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110633367.7A CN113362306B (zh) | 2021-06-07 | 2021-06-07 | 一种基于深度学习的封装芯片缺陷检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113362306A true CN113362306A (zh) | 2021-09-07 |
CN113362306B CN113362306B (zh) | 2023-01-31 |
Family
ID=77532915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110633367.7A Active CN113362306B (zh) | 2021-06-07 | 2021-06-07 | 一种基于深度学习的封装芯片缺陷检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113362306B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113496221A (zh) * | 2021-09-08 | 2021-10-12 | 湖南大学 | 基于深度双边滤波的点监督遥感图像语义分割方法及系统 |
CN114228950A (zh) * | 2021-11-26 | 2022-03-25 | 江苏科技大学 | 一种基于OpenCV与深度学习的水面物体打捞方法及打捞船 |
CN114842315A (zh) * | 2022-05-07 | 2022-08-02 | 无锡雪浪数制科技有限公司 | 轻量化高铁轮毂垫片防松识别方法及装置 |
CN115131357A (zh) * | 2022-09-01 | 2022-09-30 | 合肥中科类脑智能技术有限公司 | 一种输电通道挂空悬浮物检测方法 |
CN115131346A (zh) * | 2022-08-29 | 2022-09-30 | 江苏万容机械科技有限公司 | 基于人工智能的发酵罐加工工序检测方法及系统 |
CN115238706A (zh) * | 2022-07-15 | 2022-10-25 | 江苏柒捌玖电子科技有限公司 | 一种芯片检测及处理方法及系统 |
CN116051564A (zh) * | 2023-04-02 | 2023-05-02 | 广东仁懋电子有限公司 | 芯片封装缺陷检测方法和系统 |
CN116883434A (zh) * | 2023-09-05 | 2023-10-13 | 昆明理工大学 | 一种基于语义分割的加速度传感器芯片封装缺陷检测方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106412383A (zh) * | 2015-07-31 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 视频图像的处理方法和装置 |
CN107870181A (zh) * | 2017-06-20 | 2018-04-03 | 成都飞机工业(集团)有限责任公司 | 一种复合材料脱粘缺陷的后期识别方法 |
CN108982508A (zh) * | 2018-05-23 | 2018-12-11 | 江苏农林职业技术学院 | 一种基于特征模板匹配和深度学习的塑封体ic芯片缺陷检测方法 |
CN110930390A (zh) * | 2019-11-22 | 2020-03-27 | 郑州智利信信息技术有限公司 | 基于半监督深度学习的芯片管脚缺失检测方法 |
CN111028202A (zh) * | 2019-11-14 | 2020-04-17 | 苏州斯玛维科技有限公司 | Led芯片的x射线气泡缺陷图像处理方法、设备、存储介质及系统 |
CN112348840A (zh) * | 2020-10-19 | 2021-02-09 | 江苏师范大学 | 基于像素区域生长的qfp芯片引脚缺陷判别方法 |
CN112668490A (zh) * | 2020-12-30 | 2021-04-16 | 浙江托普云农科技股份有限公司 | 基于YOLOv4的害虫检测方法、系统、装置及可读存储介质 |
-
2021
- 2021-06-07 CN CN202110633367.7A patent/CN113362306B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106412383A (zh) * | 2015-07-31 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 视频图像的处理方法和装置 |
CN107870181A (zh) * | 2017-06-20 | 2018-04-03 | 成都飞机工业(集团)有限责任公司 | 一种复合材料脱粘缺陷的后期识别方法 |
CN108982508A (zh) * | 2018-05-23 | 2018-12-11 | 江苏农林职业技术学院 | 一种基于特征模板匹配和深度学习的塑封体ic芯片缺陷检测方法 |
CN111028202A (zh) * | 2019-11-14 | 2020-04-17 | 苏州斯玛维科技有限公司 | Led芯片的x射线气泡缺陷图像处理方法、设备、存储介质及系统 |
CN110930390A (zh) * | 2019-11-22 | 2020-03-27 | 郑州智利信信息技术有限公司 | 基于半监督深度学习的芯片管脚缺失检测方法 |
CN112348840A (zh) * | 2020-10-19 | 2021-02-09 | 江苏师范大学 | 基于像素区域生长的qfp芯片引脚缺陷判别方法 |
CN112668490A (zh) * | 2020-12-30 | 2021-04-16 | 浙江托普云农科技股份有限公司 | 基于YOLOv4的害虫检测方法、系统、装置及可读存储介质 |
Non-Patent Citations (2)
Title |
---|
BIN LIN 等: "Defect Contour Detection of Complex Structural Chips", 《MATHEMATICAL PROBLEMS IN ENGINEERING》 * |
吕浩: "基于实时视频对非机动车违法行为的自动判别关键技术研究", 《中国优秀博硕士学位论文全文数据库(硕士)社会科学Ⅰ辑》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113496221A (zh) * | 2021-09-08 | 2021-10-12 | 湖南大学 | 基于深度双边滤波的点监督遥感图像语义分割方法及系统 |
CN113496221B (zh) * | 2021-09-08 | 2022-02-01 | 湖南大学 | 基于深度双边滤波的点监督遥感图像语义分割方法及系统 |
CN114228950A (zh) * | 2021-11-26 | 2022-03-25 | 江苏科技大学 | 一种基于OpenCV与深度学习的水面物体打捞方法及打捞船 |
CN114842315A (zh) * | 2022-05-07 | 2022-08-02 | 无锡雪浪数制科技有限公司 | 轻量化高铁轮毂垫片防松识别方法及装置 |
CN114842315B (zh) * | 2022-05-07 | 2024-02-02 | 无锡雪浪数制科技有限公司 | 轻量化高铁轮毂垫片防松识别方法及装置 |
CN115238706A (zh) * | 2022-07-15 | 2022-10-25 | 江苏柒捌玖电子科技有限公司 | 一种芯片检测及处理方法及系统 |
CN115238706B (zh) * | 2022-07-15 | 2023-11-07 | 江苏柒捌玖电子科技有限公司 | 一种芯片检测及处理方法及系统 |
CN115131346A (zh) * | 2022-08-29 | 2022-09-30 | 江苏万容机械科技有限公司 | 基于人工智能的发酵罐加工工序检测方法及系统 |
CN115131357B (zh) * | 2022-09-01 | 2022-11-08 | 合肥中科类脑智能技术有限公司 | 一种输电通道挂空悬浮物检测方法 |
CN115131357A (zh) * | 2022-09-01 | 2022-09-30 | 合肥中科类脑智能技术有限公司 | 一种输电通道挂空悬浮物检测方法 |
CN116051564A (zh) * | 2023-04-02 | 2023-05-02 | 广东仁懋电子有限公司 | 芯片封装缺陷检测方法和系统 |
CN116883434A (zh) * | 2023-09-05 | 2023-10-13 | 昆明理工大学 | 一种基于语义分割的加速度传感器芯片封装缺陷检测方法 |
CN116883434B (zh) * | 2023-09-05 | 2023-11-17 | 昆明理工大学 | 一种基于语义分割的加速度传感器芯片封装缺陷检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113362306B (zh) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113362306B (zh) | 一种基于深度学习的封装芯片缺陷检测方法 | |
CN110992329B (zh) | 一种产品表面缺陷检测方法、电子设备及可读存储介质 | |
CN107507173B (zh) | 一种全切片图像的无参考清晰度评估方法及系统 | |
CN106846316B (zh) | 一种gis内部典型缺陷图像自动识别方法 | |
CN115829883B (zh) | 一种异性金属结构件表面图像去噪方法 | |
WO2018107939A1 (zh) | 一种基于边缘完备度的图像分割最优识别方法 | |
CN114219805B (zh) | 一种玻璃缺陷智能检测方法 | |
CN116740070B (zh) | 基于机器视觉的塑料管道外观缺陷检测方法 | |
WO2021109697A1 (zh) | 字符分割方法、装置以及计算机可读存储介质 | |
US11538261B2 (en) | Systems and methods for automated cell segmentation and labeling in immunofluorescence microscopy | |
CN111027446B (zh) | 一种高分辨率影像的海岸线自动提取方法 | |
CN115049669A (zh) | 金属缺陷识别方法 | |
CN105701491A (zh) | 固定格式文档图像模版的制作方法及其应用 | |
CN112734761A (zh) | 工业品图像边界轮廓提取方法 | |
CN111242026A (zh) | 一种基于空间层次感知模块和度量学习的遥感图像目标检测方法 | |
CN113609984A (zh) | 一种指针式仪表读数识别方法、装置及电子设备 | |
CN114037691A (zh) | 一种基于图像处理的碳纤维板裂纹检测方法 | |
CN110648330A (zh) | 摄像头玻璃的缺陷检测方法 | |
CN111582004A (zh) | 一种地面图像中的目标区域分割方法及装置 | |
CN116523922B (zh) | 一种轴承表面缺陷识别方法 | |
CN109241865B (zh) | 一种弱对比度交通场景下的车辆检测分割算法 | |
CN116363097A (zh) | 一种光伏板的缺陷检测方法及系统 | |
CN112734745A (zh) | 一种融合gis数据的无人机热红外影像供暖管道泄漏探测方法 | |
CN112489052A (zh) | 一种复杂环境下的线结构光中心线提取方法 | |
CN111882529A (zh) | 基于Gaussian-Surface保边滤波的显示屏Mura缺陷检测方法及装置 |
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 |