基于改进YOLOv5算法的直拉法单晶硅位错检测模型研究
1 引言
单晶硅作为半导体行业应用最为基础的材料之一,其生长品质至关重要。制备单晶硅的常规方法主要有直拉法和熔融法两种。直拉法生长出的单晶硅具有纯度高、生长缺陷少、生长尺寸大等优点[1]。随着生长尺寸的不断增加,生长缺陷产生也更加复杂,其中位错是单晶硅最常见的生长缺陷之一。它会降低少子寿命,严重影响半导体器件的性能,降低硅光电池的光电转换性能。因此,检测单晶硅位错分布是重点工作之一。检测硅位错可以通过化学腐蚀表征人工计数、扫描电镜图像处理、光学散射等[2]方法。为了能够直观地观测到单晶硅体内的位错分布,需要使用化学腐蚀液进行表征。通过光学显微镜获得单晶硅位错显微图像,结合MIT(Massachusetts Institute of Technology)开发的定量测量位错密度软件包实现自动化检测[3];NEEDLEMAN D B等人[4]利用高分辨率暗场成像设备和扫描仪实现快速检测硅位错密度;李孟等人[5]使用3D高深显微镜,通过激光扫描成像检测单晶硅位错分布。在实际腐蚀过程中,腐蚀液浓度的变化、温度的改变以及腐蚀时间差异性等问题,导致单晶硅位错腐蚀坑的形貌差异大,尺寸变化明显,背景复杂。传统的图像处理算法识别单晶硅硅片上的位错腐蚀坑难度较大,利用Hog特征提取算法[6]结合支持向量机(support vector machine,SVM)对单晶硅位错进行检测识别,检测位错的准确率低,检测速度慢,自动化程度不高。
随着深度学习图像处理技术的飞速发展,神经网络算法性能不断提升,网络参数不断降低,基于深度学习的机器视觉算法逐步具备在复杂背景中识别出形态多变目标的可能。卷积神经网络能够实现语义分割(semantic segmentation)、目标检测(object detection)等[7]各种检测任务。基于深度学习的目标检测方式主要包含两种:一种是以Faster-RCNN(region-based convolutional neural network)为代表的两阶段神经网络[8],此类神经网络实现目标检测,拥有精度高、定位精确的优点,但检测速度较慢;另一种是以YOLO(you only look once)为代表的一阶段神经网络,其中以YOLOv3[9]、YOLOv4[10]、YOLOv5[11]为代表,网络通过回归的方式直接预测物体的类别与位置,在大幅度提升检测速度的情况下也能够保持较高的检测准确率。基于深度学习的神经网络算法逐步应用于各个行业,JUBAYER M F等人[12]使用YOLOv5算法检测食物表面霉菌分布;陶志勇等人[13]使用改进后的VGG网络实现太阳能电池片表面缺陷检测;FU Y Z 等人[14]采用改进VGG-19网络实现硅光电池缺陷自动化检测。但深度学习算法在检测单晶硅位错应用较少,对低密度位错单晶硅检测精度低,定位难度高。
本文利用多种经典神经网络算法对实验获得的单晶硅位错腐蚀显微图像进行检测,重点针对YOLOv5算法检测过程中面临的难点,建立了改进的YOLOv5算法检测模型,旨在实现单晶硅位错金相显微图像的准确分类识别。本文在主干网络之后和FPN(feature pyramid networks)结构中增加注意力机制模块,优化网络结构,提升网络计算能力;其次将主干网络提取的特征向量与Neck结构得到的特征进行融合,加强深层信息和浅层信息的联系;进一步考虑目标物尺寸较小、长宽变化明显等特点,将YOLOv5现有损失函数中的GIoU(generalized intersection over union)替换为CIoU(complete-IoU),加快网络收敛,提升检测定位准确率。
1 检测算法原理
1.1 YOLOv5网络
YOLOv5网络结构简单、检测精度高,具有YOLOv5s、YOLOv5m、YOLOv5l等多个版本,其中YOLOv5s网络检测速度最快,网络参数少,但检测的平均精度低。本文选取YOLOv5s作为检测单晶硅位错缺陷的基础网络。YOLOv5的网络主体由3部分组成:主干提取网络(Backbone)、Neck、YOLO Head。首先,网络的主干部分(Backbone)主要由Focus、C3、SPP(spatial pyramid pooling)组成。Focus结构是将输入图像每个通道中每隔一个像素取一个值并组成新的通道,将输入图像的通道数扩充4倍,在不影响图像信息的情况下,提升数据量。多次使用CSPnet网络结构,C3模块将输入分成两个部分,一部分通过卷积输入到一个或者多个残差网络(Resnet)中,另一部分进行简单的处理,将两部分输出进行连接,形成一个大的残差结构,加快网络收敛,易于优化。SPP在通过不同尺寸的最大池化层后进行尺寸的统一,再进行连接,增加网络感受野,使不同尺寸的目标特征得到保留。其次将主干网络得到的特征层通过Neck结构进行特征融合,加强深层信息与浅层信息的融合。最后通过 YOLO Head获得预测结果。
YOLOv5使用的损失函数由3部分组成:分类损失、置信度损失、定位损失(LGIoU)。其中,GIoU(generalized intersection over union)[15]是IoU的改进,考虑到当IoU为零时,优化方向不明确,收敛缓慢,因此使用GIoU代替IoU。
式中:
YOLOv5网络在工业质检中能够取得很好的检测效果。但单晶硅硅片上位错腐蚀坑的尺寸较小,背景较为复杂,因此需要对YOLOv5网络进行改进,进一步提升位错腐蚀坑的检测效果。
1.2 改进的YOLOv5算法
YOLOv5网络往往会忽略小目标的特征。检测单晶硅位错显微图像时,视场中位错腐蚀坑的尺寸占比小,属于小目标检测,需要改进YOLOv5网络结构,加强网络对单晶硅位错腐蚀坑检测性能。本文在YOLOv5基础网络上引入注意力机制,将FPN+PAN网络结构得到的输出层与主干提取网络得到的特征层进行进一步交叉融合;为了更好地定位位错腐蚀坑,引入CIoU (complete intersection over union)损失函数进行训练,得到如
1.2.1 引入注意力机制
图像经过主干网络提取特征得到特征层,但目标在不同特征层的重要性不同,并且神经网络的计算资源是有限的,因此需通过增加注意力机制实现计算资源的有效利用,提升网络特征表达能力。注意力机制包含通道注意力机制(SENet)、空间注意力机制(SANet)、卷积模块注意力机制(CBAM)等[16]。CBAM结合了通道注意力机制和空间注意力机制的优点,能够更好地发挥注意力机制的效果。如
通道注意力机制如
如
注意力机制合理应用了计算资源,降低了参数的大小,汇总空间、通道注意力信息,将信息综合。在主干提取网络提取的特征层和Neck结构中引入CBAM(convolutional block attention module)注意力机制,能够自适应注意位错腐蚀坑,降低背景其他杂质的干扰,网络检测位错腐蚀坑的整体检测精度得到了提升。
1.2.2 加强特征融合
随着网络的加深,语义特征逐渐变强,但会丢失位置信息。除此之外,网络的加深会导致特征层尺寸减小,小目标的特征不明显。FPN+PAN结构能够将深层信息与浅层信息相结合,增强多尺度上的语义信息和位置信息。由于单晶硅位错腐蚀坑尺寸较小,所以需要保留浅层信息,实现位错腐蚀坑的精准定位。本文在原YOLOv5中FPN+PAN的基础上将主干提取网络提取的特征层进行进一步融合。如
1.2.3 CIoU损失函数
YOLOv5网络的GIoU损失函数能够解决预测框与真实框无交集时损失不下降的问题,但无法评价预测框与真实框的长宽比。使用CIoU损失函数,引入长宽比因子[17],如式(4)所示:
式中:
引入CIoU的损失函数,能够加快神经网络的训练,提升网络对单晶硅位错腐蚀坑的定位准确性。
2 实验与数据
2.1 实验材料
本文以直拉法生长的<100>品相单晶硅为研究对象,使用酸碱两种不同的化学择优腐蚀液进行腐蚀表征,得到如
实验通过使用尼康金相显微镜L300N、尼康工业相机、NIS-Elements软件对腐蚀后的单晶硅硅片进行观察采集。将腐蚀后的硅片放到金相显微镜载物台上,调整放大倍率,进行粗调焦、细调焦直至图像清晰,将观察到的位错腐蚀坑的图像通过尼康相机和NIS-Elements软件保存。
2.2 数据预处理
利用LabelMe软件对采集图像进行标注,标注的格式为VOC数据集格式。标签共分为两类:酸性腐蚀液位错和碱性腐蚀液位错。将标注得到的Json文件进行VOC数据集格式转换,得到训练所需要的XML文件和原始图像。
在训练网络之前,使用Mosaic数据增强对数据集进行扩充,将图像进行随机缩放、裁切拼接,增强小目标的检测能力。最后得到尺寸为640×640×3像素的输入图像。
2.3 实验设备
实验使用Linux操作系统,硬件使用显存为12 G 的RTX3080Ti显卡进行运算。在软件方面,使用Anaconda3和Pycharm构建Pytorch框架,采用Python 3.7编写程序,CUDA版本为11.5。配置如
表 1. 实验环境设置
Table 1. Experimental environment setting
|
3 结果与分析
3.1 模型训练
实验训练共迭代300次,迭代批次大小设置为4,选择Adam作为优化器。初始学习率为0.01,随着迭代次数的增加,通过余弦退火进行学习率衰减,并设置最小学习率为0.00005。如
3.2 评价指标
平均精度(AP)、召回率(recall, R)、精确率(precision,P)、平均精度均值(mAP)、FPS是常见的评价指标。平均精度与召回率和精确率密不可分,平均精度值越大,说明网络对这一类别物体的检测性能越好。精确度是指网络预测为正样本中正确的比例,召回率表示在所有正样本中,网络预测正确的比例,计算公式为
式中:
平均精度是指P-R曲线下的面积,是网络对某类别检测性能的强弱参量。平均精度越高,网络检测性能越好。计算公式如下:
实验中共有两种位错腐蚀坑,检测类别总数N=2,所以mAP是这两类平均精度的平均值。平均精度均值反应了网络对所有类别检测的性能。
3.3 实验结果与分析
将改进后的YOLOv5与Faster-Rcnn、YOLOv3、YOLOv5网络进行对比,进一步说明改进后的YOLOv5算法能够在单晶硅位错腐蚀坑检测上取得优秀的检测效果。如
总体而言,如
表 2. 不同模型的检测结果
Table 2. Test results of different models
|
3.4 实验结果对比
不同网络在目标置信度高于0.5情况下,检测使用酸性腐蚀液所形成的位错腐蚀坑的结果如
图 9. 不同模型对酸性腐蚀坑检测效果图
Fig. 9. Effect drawings of acid corrosion pits detected by different models
在检测碱性腐蚀坑中,如
图 10. 不同模型对碱性腐蚀坑检测效果图
Fig. 10. Effect drawings of alkaline corrosion pits detected by different models
4 结论
单晶硅生长缺陷的检测与定位对半导体器件的制备具有重要意义,本文提出一种改进的YOLOv5网络模型,用于直拉法生长单晶硅位错的检测。在YOLOv5算法的基础上,通过引入注意力机制CBAM,实现计算资源的有效分配;进一步加强特征融合,增加浅层信息与深层信息的融合,提升定位准确性;使用CIoU损失函数,提升训练速度,加强定位准确性。实验结果表明:改进后的YOLOv5算法对酸碱两种不同腐蚀液的位错腐蚀坑的检测平均精度分别达到93.52%、98.82%,有效地提升了对单晶硅位错腐蚀坑的检测性能,优于原始YOLOv5算法。FPS能够达到47,满足实时检测的需求,可以直接应用在工业检测现场,完成对单晶硅质量检测,单晶硅位错自动化检测提供技术参考。此外,对比检测结果可知,改进后的算法性能优于原有的YOLOv5网络和YOLOv3网络,尤其是在使用酸性腐蚀液的位错腐蚀坑检测方面,克服了背景中黑色杂质干扰的问题,以及在紧密连接位错定位上更加准确。
虽然改进后的YOLOv5网络取得了较高的检测精度,但检测速率有待提升。在未来的工作中,将进一步优化网络,保持高检测精度的同时,提升检测速率;并扩大单晶硅位错图像数据集,丰富检测内容与应用场景。
[1] 刘淑坤, 李占良, 孙宁宁. 晶体硅缺陷的腐蚀及表征[J]. 中国石油和化工标准与质量, 2011, 31(8): 43-48.
LIU Shukun, LI Zhanliang, SUN Ningning. Corrosion and characterization of defects in crystalline silicon[J]. China Petroleum and Chemical Standard and Quality, 2011, 31(8): 43-48.
[2] GALLIEN B, BAILLY S, DUFFAR T. Comparative study of dislocation density characterizations on silicon[J]. Crystal Research and Technology, 2017, 52(1): 201600224..
[3] WOO S, BERTONI M, CHOI K, et al. An insight into dislocation density reduction in multicrystalline silicon[J]. Solar Energy Materials and Solar Cells, 2016, 155: 88-100.
[4] NEEDLEMAN D B, CHOI H, POWELL D M, et al. Rapid dislocation-density mapping of as-cut crystalline silicon wafers[J]. Physica Status Solidi-Rapid Research Letters, 2013, 7(12): 1041-1044..
[5] 李孟, 刘俊飞. 直拉硅单晶位错与微缺陷的产生原理及其检测方法[J]. 物理通报, 2013(2): 121-123.
LI Meng, LIU Junfei. Generation principle and detection methods on straight pulling silicon crystal dislocation and micro defects[J]. Physics Bulletin, 2013, 2: 121-123.
[6] ZHOU Hongzhi, YU Gan. Research on pedestrian detection technology based on the SVM classifier trained by HOG and LTP features[J]. Future Generation Computer Systems, 2021, 125: 604-615.
[7] 李轩, 杨舟, 陶新宇, 等. 基于Mask R-CNN结合边缘分割的颗粒物图像检测[J]. 应用光学, 2022, 43(1): 93-103.
LI Xuan, YANG Zhou, TAO Xinyu, et al. Particle image detection based on Mask R-CNN combined with edge segmentation[J]. Journal of Applied Optics, 2022, 43(1): 93-103.
[8] JIANG D, LI G, TAN C, et al. Semantic segmentation for multiscale target based on object recognition using the improved Faster-RCNN model[J]. Future Generation Computer Systems, 2021, 123: 94-104.
[10] YU Z, SHEN Y, SHEN C. A real-time detection approach for bridge cracks based on YOLOv4-FPM[J]. Automation in Construction, 2021, 122: 103514.
[11] WANG Z, WU L, LI T, et al. A smoke detection model based on improved YOLOv5[J]. Mathematics, 2022, 10(7): 1-13..
[12] JUBAYER M F, SOEB MJA, PAUL M K, et al. Detection of mold on the food surface using YOLOv5[J]. Current Research in Food Science, 2021, 4: 724-728.
[13] 陶志勇, 杜福廷, 任晓奎, 等. 基于T-VGG的太阳电池片缺陷检测[J]. 太阳能学报, 2022, 43(7): 145-151.
TAO Zhiyong, DU Fuyan, REN Xiaokui, et al. , Defect detection of solar cells based on T-VGG[J]. Acta Energiae Solaris Sinica, 2022, 43(7): 145-151.
[14] FU Y Z, LI X, MA X, et al. Deep-learning-based defect evaluation of mono-like cast silicon wafers[J]. Photonics, 2021, 8(10): 426..
[16] NIU Z, ZHONG G, YU H. A review on the attention mechanism of deep learning[J]. Neurocomputing, 2021, 452: 48-62.
Article Outline
杨舟, 程莹, 张诗婧, 陶新宇, 莫绪涛, 马四海, 黄仙山. 基于改进YOLOv5算法的直拉法单晶硅位错检测模型研究[J]. 应用光学, 2023, 44(5): 1022. Zhou YANG, Ying CHENG, Shijing ZHANG, Xinyu TAO, Xutao MO, Sihai MA, Xianshan HUANG. Czochralski monocrystalline-silicon dislocation detection method based on improved YOLOv5 algorithm[J]. Journal of Applied Optics, 2023, 44(5): 1022.