本发明涉及缺陷检测,尤其涉及一种基于弱监督的芯片表面缺陷检测方法及装置、相关产品。
背景技术:
1、近年来,芯片需求量越来越大,要求芯片检测效率和准确率越来越高,然而在芯片封装制造过程中,封装尺寸越来越小,技术复杂、工艺参数、设备性能、材料、环境等诸多因素常常导致芯片表面产生缺陷,影响产品良率,比较常见的缺陷包括封装体缺陷、表面印刷缺陷和管脚缺陷等。
2、目前,以卷积神经网络为基础的图像识别方法通常需要海量的训练数据和充足的迭代次数,才可对特定的图像类别进行子类别的精准分类。然而在芯片缺陷检测领域,无法得到大量的标注样本,现有的深度学习网络不足以训练出一个好的深度神经网络,如何构建网络模型利用少标注样本实现芯片缺陷检测的高准确率成为亟待解决的问题。
技术实现思路
1、本发明的目的是针对现有技术所存在的缺陷,提供一种基于弱监督的芯片表面缺陷检测方法及装置、相关产品,以提高芯片缺陷检测的准确率。
2、为实现上述目的,本发明第一方面提供了一种基于弱监督的芯片表面缺陷检测方法,所述方法包括:
3、获取所述芯片表面的样本数据,所述样本数据包括正样本数据和负样本数据;
4、对正样本数据进行细粒度标注,所述细粒度标注包括芯片的缺陷类别标识、缺陷部位标注点及其属性和标注框信息;
5、在已标注的正样本数据和负样本数据中随机选取预设数量的样本数据,生成训练集、验证集和测试集;
6、构建基于主网络和注意力网络的网络模型;其中主网络和注意力网络均包括resnet卷积网络和特征融合网络;所述网络模型的总损失函数包括主网络损失、注意力网络损失和像素损失;
7、通过所述训练集对所述网络模型进行训练,生成缺陷检测模型;
8、通过所述验证集和测试集对所述缺陷检测模型分别进行调参和测试,若性能满足预设要求,则缺陷检测模型构建完成。
9、进一步,所述对正样本数据进行细粒度标注之前,所述方法还包括:
10、对所述样本数据进行数据扩增预处理,生成包括扩增数据的样本数据。
11、进一步,所述在已标注的正样本数据和负样本数据中随机选取预设数量的样本数据,生成训练集,具体为:
12、将样本数据中的扩增数据和原始数据进行随机组合,每次迭代生成的训练集中所述扩增数据和原始数据按预设比例选取,且每次迭代的预设比例不同,图片总数量为固定值。
13、进一步,所述通过所述训练集对所述网络模型进行训练,生成缺陷检测模型,具体为:
14、主网络采用resnet卷积网络提取图像的主网络特征图,将所述主网络特征图通过特征融合网络,生成整体细粒度特征数据;
15、通过弱监督学习的方式,将所述主网络特征图进行排序并筛选显著的特征放入注意力网络,生成细节细粒度特征数据;
16、将所述整体细粒度特征数据和细节细粒度特征数据送入softmax中进行联合训练,生成缺陷检测模型。
17、进一步,所述特征融合网络为双通道融合网络;所述双通道融合网络包括第一卷积核和第二卷积核,所述第一卷积核为1×1×n的卷积层,所述第二卷积核为1×3×m和3×1×m的卷积层。
18、进一步,所述像素损失公式如下所示:
19、
20、其中,losspixel为像素损失,a为分割得到的特征区域,i,j为特征像素的图像位置。
21、进一步,所述缺陷类别标识包括芯片封装损伤、管脚缺失、管脚变形、表面划痕、表面污染、管脚短路和管脚间距异样。
22、本发明第二方面提供了一种基于弱监督的芯片表面缺陷检测装置,包括:
23、样本采集模块,用于获取所述芯片表面的样本数据,所述样本数据包括正样本数据和负样本数据;
24、第一数据处理模块,用于对正样本数据进行细粒度标注,所述细粒度标注包括芯片的缺陷类别标识、缺陷部位标注点及其属性和标注框信息;
25、第二数据处理模块,用于在已标注的正样本数据和负样本数据中随机选取预设数量的样本数据,生成训练集、验证集和测试集;
26、模型构建模块,用于构建基于主网络和注意力网络的网络模型;其中主网络和注意力网络均包括resnet卷积网络和特征融合网络;;所述网络模型的总损失函数包括主网络损失、注意力网路损失和像素损失;
27、模型训练模块,用于通过所述训练集对所述网络模型进行训练,生成缺陷检测模型;
28、模型测试验证模块,用于通过所述验证集和测试集对所述缺陷检测模型分别进行调参和测试,若性能满足预设要求,则缺陷检测模型构建完成。
29、本发明第三方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面任一项所述方法的步骤。
30、本发明第四方面提供了一种控制器,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现第一方面任一项所述方法的步骤。
31、本发明实施例提供的基于弱监督的芯片表面缺陷检测方法及装置、相关产品,通过构建包括特征融合网络的主网络和注意力网络进行合作训练共享训练参数,提高了芯片缺陷检测的准确率;在总损失函数中加入像素损失,在只有少量标注样本的情况下,引入像素级的对比检测机制,可以将关注的特征区域与已知特征区域数据进行统计,提高了训练集的有效利用率。
1.一种基于弱监督的芯片表面缺陷检测方法,其特征在于,所述方法包括:
2.根据权利要求1所述的基于弱监督的芯片表面缺陷检测方法,其特征在于,所述对正样本数据进行细粒度标注之前,所述方法还包括:
3.根据权利要求2所述的基于弱监督的芯片表面缺陷检测方法,其特征在于,所述在已标注的正样本数据和负样本数据中随机选取预设数量的样本数据,生成训练集,具体为:
4.根据权利要求1所述的基于弱监督的芯片表面缺陷检测方法,其特征在于,所述通过所述训练集对所述网络模型进行训练,生成缺陷检测模型,具体为:
5.根据权利要求1所述的基于弱监督的芯片表面缺陷检测方法,其特征在于,所述特征融合网络为双通道融合网络;所述双通道融合网络包括第一卷积核和第二卷积核,所述第一卷积核为1×1×n的卷积层,所述第二卷积核为1×3×m和3×1×m的卷积层。
6.根据权利要求1所述的基于弱监督的芯片表面缺陷检测方法,其特征在于,所述像素损失公式如下所示:
7.根据权利要求1所述的基于弱监督的芯片表面缺陷检测方法,其特征在于,所述缺陷类别标识包括芯片封装损伤、管脚缺失、管脚变形、表面划痕、表面污染、管脚短路和管脚间距异样。
8.一种基于弱监督的芯片表面缺陷检测装置,其特征在于,所述装置包括:
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-8所述方法的步骤。
10.一种控制器,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-8所述方法的步骤。
