基于嵌入式的硅晶片瑕疵检测
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《工业控制计算机》2019年第32卷第3期伴随太阳能的开发利用,硅晶片的需求也越来越多,而硅晶片的生产过程中,由于较长的工艺流程与硅晶片自身的性质,常常出现裂纹、隐裂、缺角、孔洞等瑕疵,降低了生产效率,造成损失。
高效、准确的瑕疵检测是硅晶片生产的一个重要需求。
而传统的检测算法,如基于独立成分方法[1]
、基于主成分分析方法[2]
、区域增长方法[3]
、Gabor 变换法[4]
等,在识别率和速度上存在各
自的缺点,难以满足现在硅晶片生产的需求。
随着深度学习的发展,其算法在目标检测与识别领域已成为主流,显示出了巨大的优越性,在速度与精度方面都已超过了传统的检测算法,尤其是
YOLOv3[5]的出现,实现了多目标的实时检测。
为了实现快速且准确地硅晶片瑕疵检测,本文在嵌入式系统下实现了瑕疵检测系统。
1基于嵌入式的硅晶片瑕疵检测1.1硅晶片瑕疵
在硅晶片生产的过程中,由于晶体结构本身的特性以及较
长的生产工艺流程,硅晶片会存在各种瑕疵,本文主要对裂纹(含隐裂)、缺角、孔洞这三种瑕疵进行检测,如图1。
硅晶片瑕疵具有较大的复杂性,在大小及形态上差异较大,
增加了检测的难度。
如图1(2)所示,隐裂瑕疵的表现十分细微,且与硅晶片的背景具有较大的相似性,肉眼难以分辨;图1(4)所示的孔洞瑕疵十分微小,对检测算法要求较高,需要算法能够
较好的识别细小目标。
1.2嵌入式瑕疵检测系统构成
基于嵌入式的瑕疵检测系统采用嵌入式平台NVIDIA Jet-
son TX2,主要由图像采集模块、瑕疵检测模块、处理模块、结果传输模块组成,如图2。
图2
嵌入式瑕疵检测系统
图像采集模块采用CDD 相机获取图像,经过存储模块对数
据进行缓存后,处理器从缓存器中读取缓存好的图像数据进行识别检测,将图像的检测结果通过网口传输到PC 机,同时通过处理模块将带瑕疵硅晶片剔除,这样整个系统工作才能实现对图像的高效检测处理。
2检测算法
2.1改进YOLOv3算法
近年来最具代表性有两类算法,一是基于区域建议的检测算法,通过生成候选区域,采用CNN 网络进行分类,如R -CNN [6]、
Fast -R-CNN [7]、Faster -R-CNN [8]等;二是基于回归的算法,通过CNN 对图像直接进行处理,同时实现目标的定位与分类,如YOLO [9]、SSD [10]、YOLOv 2[11]、YOLOv 3等。
对比两种算法,Faster-
基于嵌入式的硅晶片瑕疵检测*
杨
飚
原亚孟(北方工业大学城市道路交通智能控制技术北京市重点实验室,北京100144)
De fects of Silicon Wafer Detection Based on Improved YOLOv3
摘要:针对目前硅晶片瑕疵具有大小差异较大,与背景相似性高,存在大量细小瑕疵,检测算法具有较高复杂度的特
点,结合当前先进的目标检测技术与嵌入式技术,提出了基于嵌入式的硅晶片瑕疵检测方法。
利用现在流行的YOLOv3算法,通过改进网络结构,并融合了数据扩增等方法训练目标检测网络,使得算法更适合于硅晶片的瑕疵检测任务,并采用模
块化设计在Linux 嵌入式系统下实现了图像采集、处理、存储与输出。
实验表明,在较小的样本下,该方法实现了对硅晶片瑕疵的快速、准确的检测。
关键词:嵌入式,硅晶片,瑕疵检测,Y OLOv3,S enet ,跨层连接
Abstract :I n allusion to the characteristic of defects of silicon wafer having the characteristics of large difference in size,
high similarity with background and a large number of small defects,and the detection algorithm has a high complexity,com-bining the current advanced target detection technology and embedded technology,proposed a detection method based on embedded technology.Take advantage of the popular YOLOv3algorithm,make the algorithm more suitable for the defect de-tection task of silicon wafer by improving the network structure and integrating data amplification.In the linux embedded system,modular design is used to take image,processing,storage and output.
Keywords :embedded,silicon wafer,defect detection,YOLOv3,Senet,cross layer
connection
*国家自然科学基金资助项目(61374191);北京市教育委员会科技计划资助项目(KM201710009001
)
图1硅晶片瑕疵(1)裂纹(2)隐裂(3)缺角(4)孔洞
37
基于嵌入式的硅晶片瑕疵检测
R-C N N具有较高的精度,但在速度上难以达到实时的要求,而Y O L O v3算法在保证了精度的前提下,大大提高了检测速度,实现了实时检测,对于硅晶片瑕疵检测任务,具有更高的可行性。
基于嵌入式的硅晶片瑕疵检测系统拟采用改进的Y O L O v3算法作为检测算法。
2.1.1Y O L O v3算法
Y O L O(Y o u O n ly L o o k O n c e)算法作为一种基于回归的目标检测算法,区别于F a s t e r-R C N N等基于区域建议的检测算法,抛弃区域生成,将检测任务统一为一个回归问题,通过一次的前向运算直接输出目标的位置和类别,实现了对多目标的实时检测。
Y O L O v3在Y O L O v1、v2的基础上做出了改进,参考S S D和R e s N e t网络结构并使用了多尺度预测的方法,在保证Y O L O算法的速度优势的基础上,对检测精度做出来很大的提高。
2.1.2数据扩增
工业生产过程中难以得到足够的数据,往往会造成过拟合等问题,进行数据增强,可以减少网络的过拟合现象,通过对训练图像进行变换使网络泛化能力增强,更好地适应应用场景。
常用的扩增方法有旋转、反射变换、翻转变换、缩放变换、平移变换、尺度变换、对比度变换、噪声扰动、生成对抗网络[12]等。
使用硅晶片生产过程中拍摄的1000张硅晶片图片,包括裂纹(含隐裂)、缺角、孔洞缺陷,采用了旋转、形态变化、对比度变化以及生成对抗网络的方法进行了数据增强,生成数据集。
2.1.3改进的Y O L O v3网络结构
为了使算法更加符合硅晶片瑕疵检测的要求,进行了以下改进。
1)对硅晶片数据集进行目标候选框的维度聚类分析。
Y O L O v3使用F a s t e r-R C N N中a n c h o r b o x e s的方法,由V O C20类和C O C O80类计算得到了目标候选框,为了使算法更好的检测瑕疵,重新确定a n c h o r b o x e s。
不同于K-m e a n s常用的欧氏距离、曼哈顿距离、切比雪夫距离等距离量度,为了防止较大框会比较小框产生更多的错误,使用重叠度(i n t e r s e c t io n o v e r u-n io n,I O U)来计算距离。
距离公式为:
d(b o x,c e n t r o id)=1-I O U(b o x,c e n t r o id)(1)
c e n t r o id表示簇的中心,b o x表示样本,I O U(b o x,c e n t r o id)表示簇中心框和聚类框的交并比。
图3显示了随着k值得增加距离变化趋势,当k=5时,曲线趋于稳定,所以本文中选取五个a n c h o r b o x e s。
2)引入S e n e t(S q u e e z e a n d E x c it a t io n N e t w o r k s)[13]的思想。
在基础网络结构上引入S e n e t结构,通过一种特征重标定的策略来提升有用特征,并抑制意义不大的特征,可以有效提高目标的识别精度。
图3聚类结果
在残差网络的基础上加入S e n e t结构,通过学习的方式自动地获取了每个特征通道的重要程度,依照获取的重要程度提升有用的特征并抑制对当前任务用处不大的特征,有效地提高了瑕疵检测的准确率。
2.2算法检验
硅晶片瑕疵检测算法的网络训练过程如图4所示,首先是数据集的制作,通过标注软件对含瑕疵图片进行标注,生成标签文件,然后对训练样本进行数据扩增,包括镜像、旋转、对比度变化、生成对抗网络等,用得到的数据集进行维度聚类[14],确定a n c h o r的参数,使其更适合硅晶片瑕疵。
最后对瑕疵检测网络进行训练。
训练过程中采用了多尺度训练的方法[15],每隔一定批量进行r e s iz e,提高检测率。
图4网络训练流程
训练过程中,批处理大小设为16,动量设为0.9,权重衰减设为0.0005,最大迭代次数设为100000次。
学习率初始值设为0.0001,到40000次迭代后改为0.001;训练到60000次后改为0.0001,迭代到80000次后改为0.00001。
图5显示了改进网络的l o s s值,l o s s值代表了预测框图与实际框图(标定)的误差,其值越低,表示瑕疵检测的精度越高。
在网络训练30000次后,各参数变化基本稳定,通过损失值的收敛情况来看,网络训练结果比较理想。
图5网络损失值函数曲线
部分检测结果如图6所示,硅晶片中的三种瑕疵改进Y O L O v3网络都能较为精准的检测出来。
图6改进网络检测结果
图7显示了对于细小瑕疵的检测结果,(1)是Y O L O v3网络检测的结果,对于细小的孔洞网络检出率差,且对于瑕疵的定位较差,(2)中改进Y O L O v3网络则是将孔洞成功检出。
通过对比发现改进Y O L O v3网络对于细小瑕疵具有更高的检出率,而原Y O L O v3网络效果较差,对细小目标敏感性较差。
3结果分析
通过基于嵌入式的硅晶片瑕疵检测与I C A[1]、F C M[15]、R B F N N[16]、F a s t e r-R C N N[8]方法进行比较,从检测精度上看本文检测方法和F a s t e r-R C N N具有较大的优势,但在检测速度方面,基于改进Y O L O v3的方法比F a s t e r-R C N N要近10倍,对于硅晶片工业生产要求更加适合。
38
《工业控制计算机》2019年第32卷第3期
(上接第36页)
构建一阶微分方程:
dP(1)
dt
+aP(1)=u(12)使用最小二乘法查找参数:
Y N =B
N
=
P(0)(2)
P(0)(3)
┆
P(0)(n
┆
┆
┆
┆
┆
┆
┆
┆
┆
┆
)
,
-P(2)1
-P(3)1
┆┆
-P(n)
┆
┆
┆┆
┆
┆
┆
┆┆
┆
1
,a^=
a┆┆
u
=(B T B)-1B T Y
N
(13)
2.4.2BP神经网络
1)数据预处理。
使输入训练数据标准化,使输入数据值介于(0,1)之间。
2)执行这个模型。
将B P神经网络中的隐层神经元数取为4,设定初始权重,并利用MATLAB得到预测值。
3结束语
本文以软件工程为核心,利用数据库和Pyt hon、Open CV、C++等编程语言,建立了一套基于深度图像与大数据建模的双通道自习室管理系统,实现了从信息收集、处理到查询的一套完整方案,集合了学生通道和教师管理通道双通道,适应当今自习室管理系统的需求。
相信该系统美观的交互界面、方便适用的查询功能将得到学生的喜爱,从而推广到各大高校自习室系统。
参考文献
[1]孙发,吴代莉,曾为众.图书馆自习室管理系统的设计与实现[J].现代图书情报技术,2010(5)
[2]郭星歌,王健生,刘柱,等.基于高频RFID的图书馆自习室管理系统设计[J].徐州工程学院学报(自然科学版),2014(2)
[3]杜波.基于单片机及C AN技术的图书馆自习室座位管理系统的实现[J].情报探索,2008(3)
[4]刘飞,郝矿荣,丁永生,等.基于深度图像的人体动作识别方法[J].计算机工程,2014,8(8):168-172
[5]余妍.大学图书馆自习室占座现象分析与解决措施探讨[J].长江大学学报(自然科学版)理工卷,2010,7(2):395-396
[收稿日期:2018.12.7]
嵌入式系统下对改进的YOLOv3网络进行实现,结果表明系统在硅晶片瑕疵检测上具有较好的性能,最高识别率达到97.2%,计算速度快,单幅图片检测时间约为0.03s,能够满足在线检测的要求。
表1常用检测方法对比
4结束语
深度学习需要大量的数据集进行网络的训练,而工业生产中往往难以得到充足的数据集,且人工标注的生产成本较高,下一步将主要研究如何在小样本的情况下,提高深度学习算法的检测精度,并且采用有效的方法,降低数据制作的成本。
参考文献
[1]T sai D M,Wu S C,Chiu W Y.Automatic visual inspection of solar modules using independent component analysis[C]∥Proceedings of The14th Asia Pacific Industrial Engineering and Management Science Conference,Cebu:IEEE,2013[2]姚明海,李洁,王宪保.基于RPC A的太阳能电池片表面缺陷检测[J].计算机学报,2013,36(9)[3]C hiou Y C,Liu J Z,Liang Y T.Micro crack detection of multi-crystalline silicon solar wafer using machine vision techniques [J].Sensor Review,2011,31(2):154-165
[4]L i Wei Chen,Tsai Du Ming.Wavelet-based defect detection in solar wafer images with inhomogeneous texture[J].Pattern Recognition,2012,45(2):742-756
[5]Re dmon J,Farhadi A.YOLOv3:An Incremental Improvement[J].arXiv preprint,2018
[6]Girsh ick R,Donahue J,Darrell T,et al,Rich feature hierar-chies for accurate object detection and semantic segmenta-tion[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2014:580-587
[7]Girsh ick R.FastR-CNN[C]∥Proceedings of the IEEE Interna-tional Conference on Computer Vision.2015:1440-1448
[8]Re n S Q,He K M,Girshick R,et al.Faster R-CNN:towards real-time object detection with region proposal networks[C]∥Advances in Neural Information Processing Sustems,2015: 91-99
[9]Re dmon J,Divvala S,Girshick R,et al.You only look once: Unified,real-time object detection[C]∥Proceedings of the IEEE Conference on Computer Vision and Pattern Recogni-tion,2016:779-788
[10]L iu W,Anguelov D,Erhan D,et al.SSD:single shot multi-box detector[C]∥European Conference on Computer Vision, 2016:21-37
[11]Re dmon J,Farhadi A.YOLO9000:Better,Faster,Stronger[J].arXiv preprint,2016:1-9
[12]Ian J.Goodfellow,Jean Pouget-Abadie,Mehdi Mirza,et al.Generative Adversarial Networks[J].arXiv preprint,2014[13]Jie Hu,Li Shen,GangSun.Squeeze-and-Excitation Networks [J].arXiv preprint,2018
[14]张素洁,赵怀慈.最优聚类个数和初始聚类中心点选取算法研究[J].计算机应用研究,2017,34(6):1617-1620
[15]未冠楠,谭庆昌,张阔,等.基于电致发光影像的太阳能电池瑕疵检测[J].发光学报,2013,34(10):1400-1407
[16]沈凌云,朱明,陈小云.基于径向基神经网络的太阳能电池缺陷检测[J].发光学报,2015,36(1):1000-7032
[收稿日期:2019.1.4]
(1)YOLOv3检测结果(2)改进YO LOv3检测结果
图7
细小瑕疵检测结果
∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥∥
39。