时间:2024-08-31
刘志坚,陈 宁
西安工程大学,陕西 西安 710000
集成电路是现代化工业的基础产业和核心技术,发展集成电路产业是中国在经济结构质量化与工业结构智能化的主要方向之一,对中国现代化工业的发展影响深远[1]。随着国内外集成电路的高速发展,基于集成电路芯片的应用设备已广泛应用于军事工程、航空工业、工业信息化、家居智能化等领域。市场影响着需求,需求推动着创新,因此基于集成电路的微电子设备近年来持续高效地发展创新,功能齐全且完善稳定,迭代速度快。这促进了整个行业规模的扩大,集成电路设计复杂且体积已经从微米级进入纳米级[2]。在此背景下,集成电路的故障查询技术也得以快速发展。
集成电路常见故障类型为通孔缺陷、氧化介质缺陷、金属布线缺陷等[3]。集成电路的故障提升了其检测难度。传统的集成电路人工检测方法受经验影响较大,并且无法定量描述故障原因与故障类型。同时,人工检测方法准确性较低,稳定性较差,且不能快速检测,难以符合现代工业批量对集成电路故障检测的要求。因此,有必要研究集成电路的高效率无接触检测技术。随着计算机技术的蓬勃发展,在计算机技术领域寻求对集成电路检测的解决方案成为一种可能,可以弥补人工检测集成电路的不足,并且研究前景十分广阔,具有现实的应用价值。
基于机器视觉的集成电路互联线提取,本质上是集成电路图像中线段的检测。线段检测方法主要包括基于边缘检测的线段提取方法[4]、基于假设检验策略的直线提取方法[5-6]以及基于空间变换的直线提取方法[7]。基于边缘的直线检测方法,是根据图像中的边缘依据投票结果拟合图像中的线段信息。基于假设策略的线段检测方法,是先假设局部图像信息中存在线段,再利用全局信息判断是否存在线段。基于空间的线段提取方法,是将图像空间上的线段依据其参数,表达在参数空间内,在参数空间中检测图像空间内的直线。
目前,在线条检测技术方面,国内外研究都有一套比较完整的体系,最常用的是Hough变换和Radon变换,大多数的延伸算法也均是基于这2种方法进行改进。相比Radon变换,Hough变换更为简单高效,因此常选择Hough变换提取集成电路图像中的互联线信息。Hough变换的发展现状表明,在使用其检测复杂图像时,存在误检测以及错检测的问题。为此,使用卷积神经网络(CNN)对Hough变换所提取的互联线信息进行提纯,剔除错检测、误检测互联线信息。
基于Hough变换改进算法的集成电路互联线提取的流程如图1所示。首先,使用Canny算法对集成电路输入图像进行边缘提取;其次,使用Hough变换提取集成电路图像内的互联线;再次,使用神经网络对提取出的互联线结合数据集进行筛选;最后,由集成电路图像得到集成电路中互联线信息。
图1 集成电路互联线提取的流程图
使用Canny算法提取集成电路图像中的边缘,利用边缘梯度方向抑制图像中的非极大值,并使用双阈值的方法对滞后阈值进行处理。Canny算法流程如图2所示。
图2 Canny算法流程图
集成电路图像中的噪声主要集中在图像的高频区域,很容易识别为伪边缘,图像使用高斯模糊去噪后可降低边缘提取的错误率,高斯系数选择3×3。
计算垂直方向、水平方向、2个对角线方向的梯度幅值和方向:
式中:G为梯度;Gx为水平方向的差分;Gy为垂直方向的差分;θ为梯度角度(水平方向为0°、垂直方向为90°、2个对角线方向分别为45°和135°)。
经过提取的边缘线宽度不仅仅只有一个像素点的宽度,非最大值抑制目的是提高提取到边缘的精度。在已提取的边缘内保留局部梯度强度的极值,抑制非极值。即比较边缘的像素带中点在正负方向梯度的梯度强度,保留最大的梯度,抑制非最大梯度。
在边缘检测算法中,为了提高容错性,一般设定一个阈值对图像进行降噪或者降低由于颜色变化对结果的影响。Canny算法利用高阈值和低阈值2个阈值划分图像的像素区域。
当边缘内一点梯度高于高阈值,则为强边缘点;当边缘内一点梯度低于低阈值,则会被算法抑制。当边缘一点梯度在高、低阈值之间,则可认为弱边缘点。
受外部噪声的影响,某些真实的边缘点被误认为弱边缘点,为了更精确的提取边缘,对弱边缘点进行滞后边缘跟踪。即检查弱边缘点附近2个像素点中是否存在强边缘点,若存在则保留此弱边缘点,与强边缘点一同连接,构成基于Canny算法的边缘提取结果。
为了增加对比效果,使用Canny边缘提取算法对图像1和图像2进行边缘提取,结果如图3、图4所示。图3(a)、图4(a)为阈值3×3的边缘提取结果,图3(b)、图4(b)为阈值为1×1的边缘提取结果。由图3、图4可以看出,阈值选择3×3时效果均优于阈值为1×1时的结果,当阈值为3×3时,所提取的边缘图噪声较少,可用于后续的集成电路互联线工作。因此,该算法边缘提取阈值选择3×3。
图3 图像1边缘提取结果
图4 图像2边缘提取结果
Hough变换的算法流程如图5所示。首先,输入通过Canny边缘提取过后的图像;其次,将图像空间基于Hough变换转换至参数空间,设定所提取集成电路互联线的阈值,判断其是否满足阈值,若满足阈值则提取互联线信息并清零互联线上的极值点以及阈值点;再次,判断是否重复提取互联线;最后,输出未重复的互联线信息。
图5 Hough变换算法流程图
使用Hough变换提取到的集成电路互联线图像如图6所示。因为集成电路互联线长短参差不齐,无法确定线路长度的阈值,所以在Hough变换提取线段时将起点和终点阈值选取为全图像长度最大值。由图6可以看出,所提取的互联线线段横跨全图像,造成提取的互联线过长。同时,由于一些干扰,造成集成电路互联线存在错检现象。对图像中提取出的线段进行筛选,最终确定集成电路互联线信息。
图6 Hough变换提取的线段
利用Hough变换算法对集成电路互联线提取后,集成电路线段集合包含较多过长的线段,并且由于噪声的影响,在提取过程中,也会出现误提取的现象。为了得到真实的集成电路互联线信息,使用CNN对集成电路互联线信息进行筛选。
CNN可以自动构造特征,具有特征表达能力强、健壮性高等优点。设计一个基于CNN的线段分类器对线段集合进行筛选。利用线段的信息可以获取线段的感受域。感受域中的信息为线段所在位置的空间信息,互联线线段和非互联线线段所处的感受域不同。基于这种假设,对线段的分类转换为对线段感受域的分类结果。感受域即在图中标注出线段的起点Q(xmin,ymin),线段终点Z(xmax,ymax),线段斜率a,线段截距b。
已知线段的起点和终点之后,使用公式y=ax+b即可得出线段斜率以及截距。
(1)数据集。使用正确的线段感受域作为正样本,使用多提取或错误提取的线段感受域为负样本。为了获得更高的线段分类性能,借助更多的数据来训练网络,使用一张集成电路图片,每条线段可以提取出不同的感受域,从而扩增数据。
网络样本分布如表1所示。表1中,样本总数为1 500个,其中正样本750个,负样本750个;训练集样本总数为1 200个,正样本600个,负样本600个;测试集样本总数为300个,正样本150个,负样本150个。
表1 网络样本分布
神经网络中,作为数据集中部分样本代表的图像信息如图7所示。图7(a)为负样本感受与代表的图像信息,图7(b)为正样本展示的图像信息。负样本为使用Hough变换提取的非互联线信息的感受域,正样本为Hough变换提取的集成电路互联线真实信息图像的感受域。
图7 数据集图像
(2)模型介绍。CNN参数如表2所示。
表2 CNN参数
CNN结构如图8所示。网络结构为卷积层与池化层交替构成,网络中C1、C2为卷积层,P1、P2为最大池化层。第一个卷积层C1的卷积核大小为5×5,通道数为32,滑动窗口步长为1×1;第二个卷积层C2的卷积核大小为2,通道数为64,步长为1×1。最大池化层P1、P2核大小为2×2,步长为2×2。P2产生的5×5×128的特征向量将传入全链接层。
图8 CNN结构图
(3)模型训练。网络输入模型训练结果如图9所示。由图9可知,使用CNN训练次数越多,误差均方根越小;文本正确率为90.5%,误检率为4.25%(正确率与误检率和不为1,二者之间没有必然关系)。
图9 网络输入模型训练结果
根据感受域信息在图像上进行标注,如图10所示。互联线信息提取正确的线路为图10中的白线,错误信息为图10中所示的灰线。
图10 标注集成电路互联线图片
剔除错误线段的互联线信息如图11所示,去除背景后的集成电路图像信息如图12所示。对比集成电路图像可以得出,在线路筛选环节,提取的集成电路互联线信息与图像中的互联线信息误差低于0.1 mm。原因为在标注正样本和负样本时,可能产生偏差。
图11 剔除错误线段的互联线信息
图12 去除背景后的集成电路互联线信息
使用Hough变换对集成电路图像中的互联线进行提取时,互联线长度不一,线段长度阈值难以确定,并且可能发生互联线误提取的状况。为此,将线段长度阈值均设为最大进行预提取,标定图像中的集成电路互联线线段的感受域为正样本,标定图像中的集成电路非互联线线段的感受域为负样本,使用CNN进行训练,最终得到集成电路互联线信息。结果表明,该方法所得集成电路互联线信息可以用于集成电路的质量检查、故障诊断。但是,该方法仅针对一种布线金属材料的集成电路进行互联线提取工作,而集成电路集成线路材料多种多样,希望后续有更多研究针对不同材料的集成电路互联线提取。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!