摘要: 为了避免图像配准精度对液晶显示屏( LCD) 线路缺陷检测准确率的影响,采用一种基于图像轮廓分析的新方法,基于深度优先搜索寻找图像轮廓,并根据格林公式计算轮廓面积,将待检测LCD 的线路轮廓面积与标准模板的轮廓面积比较,从而判断是否存在短路。断路。孔洞和孤岛缺陷。该方法不需要图像配准,降低了算法精度要求,从而提高了检测的正确率。通过对200 片小型LCD 的测试,检测准确率达99%?结果表明,该方法可以快速正确地检测出图像上的所有轮廓,并计算出轮廓面积,用面积比较代替传统的图像像素比较,检测短路。断路等缺陷的正确率有了较大提升。该算法在LCD 线路缺陷检测方面具有很好的应用前景。
引言
近年来,随着液晶显示屏( liquid crystal disPlay,LCD) 的广泛应用,生产过程中对LCD 缺陷的检测变得越来越重要,而自动光学检测技术作为质量检测的重要手段,也已经在LCD 缺陷检测中得到了应用。
LCD 缺陷种类繁多,比如刮痕。杂质。Mura 缺陷以及线路缺陷等,本文中将讨论线路缺陷的检测。LCD 缺陷检测中常见的检测方法主要有3 种: 参考比较法。非参考校验法和混合法。非参考校验法主要基于数学形态学操作; 应用较多的是参考比较法,它基于图像配准和与标准模板作差进行缺陷检测,这种方法操作简单,可以有效地检测出常见缺陷,但是对配准精度要求很高,同时由于需要事先建立标准模板,内存消耗也较大。例如KANG 等人提出了一种基于模式比较和边界扩张的方法,首先由模式比较得到只包含缺陷的图像,然后对每个缺陷的每个像素作标记,对于同一个缺陷却被划分为多个区域的情况,采用边界扩张的方法进行区域合并,最后分析缺陷区域特征信息。本文中的方法其优点在于不需要模式比较。该线路缺陷检测算法基于图像轮廓分析,在目标区域提取过程中,采用了一种形态学操作的击中击不中变换( hit-miss transform,HMT) 方法,有效准确地提取出了待检测的线路区域。图像轮廓分析是本文中检测算法的核心,在阈值分割之后,进行边缘检测以得到单像素边界,根据这个特点采用基于深度优先搜索的方法来进行边界追踪,以寻找线路图像轮廓,并用离散化的格林公式计算轮廓面积。
1 系统组成及预处理
由于LCD 线路的线宽线距很小,需要很高的像素分辨率,同时又要保证足够的视场,因此面阵相机很难满足要求。本系统采用线扫描电荷耦合器件( chargecouPled device,CCD) 相机,有效像素7400; 另外,采用直线电机代替传统的旋转电机以提高系统精度。检测系统如图1 所示
图2 展示了该系统采集的1 幅LCD 线路图像的一部分。图2 中画出了L1,L2两条直线,L1和L2之间的区域为所要检测的目标区域,L1上面和L2下面部分是由于相机视场因素而多拍摄的图像,因此首先进行目标区域的提取。提取目标区域需要先找到一个定位标志,然后以定位标志为基准点提取出目标区域,LCD 上一般采用十字形作为定位标志。本文中采用基于击中击不中变换的方法来检测十字形的坐标。
HMT 针对二值图像操作,因此先要将线路图像进行阈值分割,然后应用HMT 找到十字形定位标志的中心,再根据液晶尺寸,以定位中心为基准点,向上下左右4 个方向偏移适当距离提取出目标区域。图3 显示了阈值分割后提取出的目标区域图像。
在轮廓分析之前,首先要提取线路单像素边缘,且由于二值化后的线路边缘明确,canny 边缘检测即可得到单像素边缘图像。图4 为采用canny 边缘检测后的结果的局部图。
2 LCD 线路轮廓分析
2. 1单个轮廓搜索在液晶线路的轮廓图像中,每一条线路或者一个标志( 例如十字形定位标志) 的轮廓均为一条封闭曲线。
轮廓分析已有相关算法被提出,在作者采用的检测方法中,结合LCD 线路轮廓的单像素特点,分析时采用八邻域连通的方法,但是在搜索轮廓过程中优先搜索中心像素的左右上下4 个像素,然后再搜索4个角的像素,并采用深度优先搜索策略[10]?基于八邻域连通的深度优先搜索如图5 所示,P 为中心像素,搜寻轮廓时先判断P5,P4,P2,P7,如果没有像素与P 连通,然后再判断P3,P8,P6,P1; 一旦找到一个与P 连通的像素,例如P5,那么立即停止搜索P 的其它相邻像素,而以P5为中心继续搜索。
在搜索过程中,定义如下数据结构来表示一个轮廓: tyPedef vector < Pair < int,int > > Contour; vector 和Pair 是C + + 标准库类型,Pair < int,int > 表示轮廓上的1 个像素,第1 个参量为行坐标,第2 个参量为列坐标。在搜索过程中每找到一个像素就将其加入到vector.图6 说明了对单个轮廓的搜索过程。
首先定义一个Contour 对象contour,假定从P1开始搜索,由于LCD 线路主要走向是横向,因此先搜索P1的左右像素,再搜索上下像素,最后搜索4 个角的像素; 当搜索到一个连通像素P2后,根据深度优先策略,停止对P1邻域的搜索,即使P1还可能有其它连通像素,例如这里的P5和P3,将P1存入contour,并将P1标记为已搜索; 然后以P2为中心搜索,虽然P1与P2连通,但标记为已搜索,因此,将搜索到P2的连通像素P3; 再以P3为中心搜索到P4,如此进行下去。当搜索到P5时,发现与其连通的像素均已标记为已搜索,于是对该轮廓的搜索结束。可见,对一个轮廓搜索结束的条件为: 某一像素的所有连通像素均标记为已搜索。
2. 2 轮廓面积计算
当得到一个轮廓的所有像素之后,就能很方便地计算其特征参量,比如周长。面积。质心等。由图6 可以看出,轮廓的周长即是该轮廓所包含的像素个数,因此可以很方便地计算出来; 质心可由质心公式计算,对于图像即是所有像素的坐标平均值。
本文中检测缺陷时需要用到轮廓的面积,对于曲线所围成区域,可以采用格林公式计算其面积,定义如下: 设单连通闭区域D 由分段光滑的曲线L 围成,函数R( x,y) 及Q( x,y) 在D 上具有1 阶连续偏导数,则有。
其中对于二值图像中的连通区域,用差分代替微分,用求和代替积分,可推导出轮廓的面积计算公式。设轮廓由m 个像素点Rk( Xk,Yk) 组成,其中k = 1,2,…,m;Rm + 1 = R1; R1,R2,…,Rm沿轮廓正向排列,则面积S 可表示为。
如果按轮廓曲线的正向来搜索像素,最后得到的contour 中的像素点即是按正向排列的,应用上面公式可快速计算出轮廓面积。在计算面积的时候,不管轮廓内部是否包含其它轮廓,均当做单连通区域处理,因为当一个轮廓内部包含其它轮廓的时候,内部轮廓则是由于线路的孔洞缺陷导致,将其也看作一个单连通区域,便于后面的缺陷判断检测。
2. 3 整幅图像轮廓分析
设经过二值化。目标区域提取以及边缘检测后的图像为image[m][n],轮廓为白色,背景为黑色。为了对已搜索过的像素作标记,建立一个与原图像尺寸一致的标记数组。将所有轮廓存储在一个vector <Contour > 对象中,算法具体步骤如下。
( 1) 建立一个与图像尺寸一致的标记数组flag[m][n],初始化为0,表示所有元素均没被标记。
( 2) 从左至右从上至下遍历图像所有像素,当扫描到一个白色且未被标记的像素Pix( i,j) 时,说明找到一个新轮廓,以该像素为起点,按照上面的单个轮廓分析算法搜索出该轮廓的所有像素,存入表示该轮廓的Contour对象中,搜索过程中已搜索过的白色像素在flag 数组中的对应元素置1?当本次搜索完毕时,将该轮廓的Contour 对象存入vector < Contour > 对象中。
( 3) 继续扫描图像,重复第( 2) 步,直到遍历完成个图像,至此已找出所有轮廓,算法结束。
对图2 应用上面的算法进行轮廓分析,统计了轮廓的面积,结果图7 所示。
为了测试该算法的性能,选择了不同尺寸和不同轮廓数目的LCD 线路图像,对每张图像进行50 次重复测试统计轮廓分析时间,其图像尺寸。轮廓数目以及轮廓分析平均消耗时间的关系如表1 所示。所用PC 配置Intel Core2 Duo T6670,2. 2GHz 处理器,2GB 内存,Windows7 系统,并在VS2008 开发环境下进行试验。
从表1 可以看出,该轮廓分析方法能快速地找出所有线路轮廓并计算出其面积。同时由表1 前4 行可知,在轮廓数目相同的情况下,随着图像尺寸的成倍增加,所需时间增加很缓慢; 由后4 行可知,在图像尺寸不变的情况下,轮廓分析时间随轮廓数目成近似线性关系; 因此,影响消耗时间的主要因素是轮廓数目。由于LCD 线路图像的像素分辨率高,图像尺寸很大,但线路数目相对较少,因此,用该方法可高效率地检测LCD 的线路缺陷。
3 检测流程和实验结果
本文中算法检测的LCD 线路的缺陷示意图如图8所示,包括短路。短路。孔洞和孤岛4 种缺陷。
缺陷检测流程如下。
( 1) 对某一型号的LCD,选择一定数目( 这里取10块) 标准样品,按上述算法过程计算出每块LCD 线路的轮廓数目和每个轮廓的面积,对于面积将10 次所得到的值取平均,以此作为这一型号的标准数据。
( 2) 对该型号任一待测LCD,同样按照上述算法计算出其轮廓数和每个轮廓的面积。如果轮廓数与标准数据不同,则必定是不良品; 否则转下一步。
( 3) 由于数目相同时可能是短路。断路等多种缺陷同时发生,因此将轮廓面积逐个与标准数据比较,如果有短路。断路。孔洞和孤岛等缺陷,则必定存在某些轮廓与标准数据差异很大,故设定适当阈值T,如果每个轮廓面积差值的绝对值都小于T,则判定为合格品,否则为不良品。
根据上述算法和检测流程,选择了10 种不同型号的小型LCD,每种选取了20 个样品进行测试,这些样品包含无缺陷及有短路。断路。孔洞及孤岛缺陷的LCD,在总共200 个样品中,只有2 片误检,正确率达99%,对误检的LCD 进行分析,其误检主要是线路受到灰尘的污染所致。同时,采用基于图像配准再作差的模板匹配法对上面200 个样品进行测试,结果有9片误检,正确率95. 5%,误检主要因素是图像配准的偏差。可见该方法可以有效地检测出含有上述4 种缺陷的LCD?
4 结论
基于图像轮廓分析的LCD 线路缺陷检测方法与传统的基于图像配准的方法相比,由于避免了配准偏差带来的影响,因此提高了检测正确率。在轮廓分析过程中,对单像素轮廓采用基于深度优先搜索的方法,有效地提取了线路轮廓,并根据离散化的格林公式快速地计算出了轮廓面积。将待检测LCD 的线路轮廓信息与标准信息比较以判断是否存在缺陷,经验证,本文中的算法可以有效地检测出LCD 中的短路。断路。孔洞以及孤岛缺陷,在LCD 线路缺陷检测方面具有很好的应用前景。