机器视觉测量是一种重要的测量技术,在杂质、缺陷检测等多个领域有广泛的应用。它的基本原理是通过电荷耦合元件(charge-coupled device,CCD)传感器获取图像,并采用特定的图像处理算法进行高精度的几何尺寸测量。其中,线宽是图像重要的几何尺寸,线宽检测技术对弱小目标检测有重要的意义,在印制电路板(printed circuit board,PCB)缺陷检测[1]、 药液杂质检测[2]、 带钢宽度测量[3]等领域中有着广泛的应用。
传统的线宽检测方法多是通过分别检测两条边缘来计算得到线宽。为了得到亚像素级线宽,传统的检测方法有插值法[4]、 拟合法[5]等,这些方法或计算量大,或精度不高,不能满足在线检测的需要。Ghosal等提出的基于正交矩的亚像素级理想阶跃边缘检测模型[6]得到广泛应用,但对于像素数在3个或以内的细小边缘的检测,其误差较大。本文提出了一种基于Legendre正交矩的针对小线宽(≤3 像素)的线宽测量方法。实验结果表明,该方法可以比较精确地计算得到亚像素级精度的线宽值。
1 Legendre正交矩模型及其检测原理正交矩是以正交基替换规则矩中的单项式基得到的具有近似逆矩变换特性的正交矩集,主要包括Legendre矩[7]、 Zernike矩[8]、 伪Zernike矩[9]和Tchebycheff矩[10]。从Hu首先提出矩的图像处理理论[11]至今,Legendre正交矩以其信息冗余最少、逆变换简单等优点在图像处理领域得到广泛应用[12]。
Legendre矩是以Legendre正交多项式为权核的矩。 m阶Legendre多项式定义为
${P_m}(x) = \sum\limits_{k = 0}^m {{C_{mk}}\left[ {{{\left( {1 - x} \right)}^k} + {{( - 1)}^m}(1 + x)} \right]} .$
(1)
${C_{mk}} = \frac{{{{( - 1)}^k}}}{{{2^{k + 1}}}}\frac{{\left( {m + k} \right)!}}{{\left( {m - k} \right)!{{(k!)}^2}}}.$
(2)
该多项式的重要特点是在单位圆内正交,
$\int {_{ - 1}^1{P_m}\left( x \right)} {P_n}\left( x \right)dx = \frac{2}{{2m + 1}}{\delta _{mn}}$
(3)
${\delta _{mn}} = \left\{ {\begin{array}{*{20}{c}}
{1,当m = n}\\
{0,当m \ne n}
\end{array}} \right..$
(4)
x方向m阶、 y方向n阶2维正交矩为
$\begin{array}{l}
{L_{mn}} = \frac{{\left( {2m + 1} \right)\left( {2n + 1} \right)}}{4}.\\
\int {_{ - 1}^1} \int {_{ - 1}^1} {P_m}\left( x \right){P_n}\left( y \right)f\left( {x,y} \right)dxdy.
\end{array}$
(5)
该正交矩即可用于图像的检测。
2 基于Legendre正交矩的亚像素线宽检测 2.1 线宽模型及求解过程在利用Legendre正交矩求解线宽时,仍遵循边缘检测模型的假设,即线宽的两条边缘处均为理想阶跃。因此,基于Legendre正交矩的线宽模型如图1所示。其中: 图1a中ψ为线宽与单位圆x轴的夹角,背景灰度为g,灰度阶跃值为h,即线宽灰度值为g+h。线宽值为l1+l2。将该线旋转至与y轴平行后得到图1b,y轴左侧部分宽度为l1,右侧宽度为l2。
图1中的线宽在直接利用正交矩求解时比较复杂,且通过求解可以发现正交矩的表达式中l1、 l2是相互独立的。因此,本文通过分别求解l1、 l2再相加的方法求解正交矩。
将图1a中的图像顺时针旋转角度ψ后可以得到图1b。为了分别求解l1、 l2,将图1b中y轴的左半部分、右半部分分别以y轴为对称轴构建镜像,分别得到图2a与2b。
图2a与2b均是图1b镜像后得到的对称线宽,其求解原理是完全相同的,具体的求解原理将在2.2节中论述。
由于实际图像是由离散像素点构成,在构造对称线宽时,综合考虑计算量和精度,取一个5×5的模板,以旋转后线宽的累积像素值最高一列(即最亮一列)为中心列(第3列),分别进行镜像操作,即可得到两幅对称图像,即对图2a有
bi5=a'i1,bi4=a'i2;
(6)
ci1=a'i5,ci2=a'i4.
(7)
在2.1节的求解过程中,核心步骤是利用Legendre正交矩计算旋转角度ψ和左右两侧的线宽值l1、 l2。
由式(1)可以构造0、 1、 2、 4阶Legendre正交多项式:
$\left\{ {\begin{array}{*{20}{c}}
{{P_0}\left( x \right) = 1,}\\
{{P_1}\left( x \right) = x,}\\
{{P_2}\left( x \right) = \frac{{3{x^2} - 1}}{2}}\\
{{P_4}\left( x \right) = \frac{{35}}{8}{x^4} - \frac{{15}}{4}{x^2} + \frac{3}{8}.}
\end{array}} \right.$
(8)
线宽由图1a旋转得到图1b后,原正交矩L与旋转后的正交矩L′满足以下关系:
$\begin{align}
&{{{{L}'}}_{01}}=\frac{3}{4}\iint\limits_{{{x}^{2}}+{{y}^{2}}\le 1}{y'F'\left( x+y \right)dxdy=\frac{3}{4}}\iint\limits_{{{x}^{2}}+{{y}^{2}}\le 1}{\left( -x\sin \varphi +y\cos \varphi \right)}F\left( x+y \right)dxdy= \\
&{{L}_{10}}\left( -\sin \varphi \right)+{{L}_{01}}\cos \varphi . \\
\end{align}$
(9)
旋转后的图像关于x轴对称,L′01=0。因此,可以得到
$\tan \varphi =\frac{{{L}_{01}}}{{{L}_{10}}},$
(10)
由于l1、 l2的计算过程完全相同,因此仅以l1的计算过程为例说明。根据图2a所示的对称线宽模型,可以推导出其0、 2、 4阶正交矩:
$\begin{align}
&L{{'}_{00}}=\frac{1}{4}\iint\limits_{{{x}^{2}}+{{y}^{2}}\le 1}{{}}F'\left( x,y \right)dxdy= \\
&-\frac{g}{4}\pi -\frac{h}{2}\left( {{l}_{1}}\sqrt{1-l_{1}^{2}}-\arcsin {{l}_{1}} \right), \\
& \\
\end{align}$
(11)
$\begin{align}
&L{{'}_{20}}=\frac{5}{4}\iint\limits_{{{x}^{2}}+{{y}^{2}}\le 1}{\left( \frac{3}{2}{{x}^{2}}-\frac{1}{2} \right)}F'\left( x,y \right)dxdy= \\
&-\frac{5}{32}g\pi -\frac{5}{16}h{{l}_{1}}\sqrt{1-l_{1}^{2}}- \\
&\frac{5}{16}h\arcsin {{l}_{1}}-\frac{15}{8}h{{l}_{1}}\sqrt{{{\left( 1-l_{1}^{2} \right)}^{3}},} \\
\end{align}$
(12)
$\begin{align}
&L{{'}_{02}}=\frac{5}{4}\iint\limits_{{{x}^{2}}+{{y}^{2}}\le 1}{\left( \frac{3}{2}{{y}^{2}}-\frac{1}{2} \right)}F'\left( x,y \right)dxdy= \\
&-\frac{5}{32}g\pi -\frac{5}{16}k{{l}_{1}}\sqrt{1-l_{1}^{2}}-\frac{5}{16}k\arcsin l+ \\
&\frac{5}{8}kl\sqrt{{{\left( 1-l_{1}^{2} \right)}^{3}}}, \\
\end{align}$
(13)
$\begin{align}
&L{{'}_{40}}=\frac{9}{4}\iint\limits_{{{x}^{2}}+{{y}^{2}}\le 1}{\left( \frac{35}{8}{{x}^{4}}-\frac{15}{4}{{x}^{2}}+\frac{3}{8} \right)}F'\left( x,y \right)dxdy= \\
&-\frac{9}{256}g\pi -\frac{165}{16}hl_{1}^{3}\sqrt{{{\left( 1-l_{1}^{2} \right)}^{3}}}+ \\
&\frac{225}{6}h{{l}_{1}}\sqrt{{{\left( 1-l_{1}^{2} \right)}^{3}}}-\frac{9}{128}h{{l}_{1}}\sqrt{1-l_{1}^{2}}- \\
&\frac{9}{128}h\arcsin {{l}_{1}}. \\
\end{align}$
(14)
根据式(11)、 (12)、 (14),可以得到左侧线宽l1和灰度阶跃值h:
$\left\{ {\begin{array}{*{20}{c}}
{{l_1} = \sqrt {\frac{2}{7} \bullet \frac{{\frac{{2l}}{{16}}L{'_{00}} + \frac{{15}}{8}L{'_{20}} + L{'_{40}}}}{{L{'_{20}} + \frac{5}{8}L{'_{00}}}}} }\\
{h = \frac{{L{'_{02}} - L{'_{20}}}}{{\frac{5}{2}{l_1}\sqrt {{{\left( {1 - l_1^2} \right)}^3}} }}.}
\end{array}} \right.,$
(15)
用同样方法计算得到右侧线宽l2,与l1相加,即可得到线宽值l。
在实际应用中,由于数字图像的离散性,选取5×5像素构成的正方形的内切圆为图1中的单位圆检测区域,如图3所示。
在实际计算时,只需先根据式(11)—(14)计算出模板系数,再用5×5像素的线宽图像与模板卷积,即可得到Legendre正交矩。根据式(11)—(14)计算得到的各阶正交矩对应的模板系数如下:
${C_{00}} = \left[ {\begin{array}{*{20}{l}} {{\rm{0}}{\rm{.0055 0}}{\rm{.0308 0}}{\rm{.0393 0}}{\rm{.0308 0}}{\rm{.0055}}}\\ {{\rm{0}}{\rm{.0308 0}}{\rm{.0400 0}}{\rm{.0400 0}}{\rm{.0400 0}}{\rm{.0308}}}\\ {{\rm{0}}{\rm{.0393 0}}{\rm{.0400 0}}{\rm{.0400 0}}{\rm{.0400 0}}{\rm{.0393}}}\\ {{\rm{0}}{\rm{.0308 0}}{\rm{.0400 0}}{\rm{.0400 0}}{\rm{.0400 0}}{\rm{.0308}}}\\ {0.0055{\rm{ }}0.0308{\rm{ }}0.0393{\rm{ }}0.0308{\rm{ }}0.0055} \end{array}} \right]$ | (16) |
${C_{20}} = \left[ {\begin{array}{*{20}{l}} {0.0048{\rm{ - }}0.0405{\rm{ - }}0.0945{\rm{ - }}0.0405{\rm{ }}0.0048}\\ {0.0579{\rm{ - }}0.0480{\rm{ - }}0.0960{\rm{ - }}0.0480{\rm{ }}0.0579}\\ {{\rm{0}}{\rm{.0927 - 0}}{\rm{.0480 - 0}}{\rm{.0960 - 0}}{\rm{.0480 0}}{\rm{.0927}}}\\ {{\rm{0}}{\rm{.0579 - 0}}{\rm{.0480 - 0}}{\rm{.0960 - 0}}{\rm{.0480 0}}{\rm{.0579}}}\\ {{\rm{0}}{\rm{.0048 - 0}}{\rm{.0405 - 0}}{\rm{.0945 - 0}}{\rm{.0405 0}}{\rm{.0048}}} \end{array}} \right],$ | (17) |
${C_{02}} = \left[ {\begin{array}{*{20}{l}} {{\rm{ 0}}{\rm{.0048 0}}{\rm{.0579 0}}{\rm{.0927 0}}{\rm{.0579 0}}{\rm{.0048}}}\\ {{\rm{ - 0}}{\rm{.0405 - 0}}{\rm{.0480 - 0}}{\rm{.0480 - 0}}{\rm{.0480 - 0}}{\rm{.0405}}}\\ {{\rm{ - 0}}{\rm{.0945 - 0}}{\rm{.0960 - 0}}{\rm{.0960 - 0}}{\rm{.0960 - 0}}{\rm{.0945}}}\\ {{\rm{ - 0}}{\rm{.0405 - 0}}{\rm{.0480 - 0}}{\rm{.0480 - 0}}{\rm{.0480 - 0}}{\rm{.0405}}}\\ {{\rm{ 0}}{\rm{.0048 0}}{\rm{.0579 0}}{\rm{.0927 0}}{\rm{.0579 0}}{\rm{.0048}}} \end{array}} \right],$ | (18) |
${C_{02}} = \left[ {\begin{array}{*{20}{l}} {{\rm{ - 0}}{\rm{.0201 - 0}}{\rm{.0202 0}}{\rm{.1158 - 0}}{\rm{.0202 - 0}}{\rm{.0201}}}\\ {{\rm{ - 0}}{\rm{.0631 - 0}}{\rm{.0380 0}}{\rm{.1175 - 0}}{\rm{.0380 - 0}}{\rm{.0631}}}\\ {{\rm{ - 0}}{\rm{.0264 - 0}}{\rm{.0380 0}}{\rm{.1175 - 0}}{\rm{.038 0 - 0}}{\rm{.0264}}}\\ {{\rm{ - 0}}{\rm{.0631 - 0}}{\rm{.0380 0}}{\rm{.1175 - 0}}{\rm{.0380 - 0}}{\rm{.0631}}}\\ {{\rm{ - 0}}{\rm{.0201 - 0}}{\rm{.0202 0}}{\rm{.1158 - 0}}{\rm{.0202 - 0}}{\rm{.0201}}} \end{array}} \right].$ | (19) |
本文方法在测量线宽时的误差主要来源于3个方面: 阶跃线宽模型在实际应用中的原理误差,正交矩模板系数的舍入误差,以及CCD传感器获取图像时的噪声,该噪声通常可视为Gauss分布。
在图2构造的对称线宽模型中,线宽边缘处的像素值变化是阶跃的; 但是实际的图像是离散像素点构成的,线宽边缘所在处不会出现阶跃变化,而是形成像素值介于g+h与g之间的过渡边缘。因此,在利用2.2中的方法求取正交矩时会产生原理误差。
为了对原理误差进行估计并补偿,构造实际过渡线宽模型为
$S = \left[ {\begin{array}{*{20}{l}}
{g g + mh g + h g + mh g}\\
{g g + mh g + h g + mh g}\\
{g g + mh g + h g + mh g}\\
{g g + mh g + h g + mh g}\\
{g g + mh g + h g + mh g}
\end{array}} \right].$
(20)
可以看到,原理误差使得直接计算得到的结果大于理论线宽值。用理论值与实际值的误差对原计算结果进行补偿,就可以得到比较精确的结果。
理论上,在m=0,1时,由于不存在过渡像素,误差应为0。实际计算发现,两处分别存在0.003 2和0.000 9像素的误差。这是由于模板系数的舍入误差造成的,但该误差小于0.01像素,基本不会对结果造成显著影响。在精度要求高的场合,可以通过增加模板系数的精度来减小该舍入误差。
3.2 实验测量结果线宽测量的一个重要实际应用是药液异物检测[13]。由于工艺、环境等因素的影响,安瓿药液中会存在少量的不溶异物颗粒,如玻屑、毛发、纤维等。为了保证用药安全,需对安瓿瓶中的异物大小和数量进行检测。在基于机器视觉的检测中,异物颗粒会因高速旋转在图像中呈线状,通过测量线宽可以确定异物的粒径。本文以100 μm的聚合乳胶微粒作为实验标准物质,将其装入安瓿药液中,并用CCD相机获取其旋转后的图像。其局部图像如图5所示。
采用本文提出的基于Legendre正交矩的亚像素线宽测量方法对图5中的线宽进行测量,10个线宽测量数据见表1。
测量结果平均值为
$\bar l = \sum\limits_{i = 1}^{10} {{l_i}/10 = 2.21.} $ |
测量结果标准差为
$d = \sum\limits_{i = 1}^{10} {{{\left( {\bar l - {l_i}} \right)}^2}/10 = 0.1204.} $ |
可以看到,同一粒径的不同颗粒的测量结果接近程度很高,大部分结果与平均值非常接近,也有个别结果偏大或偏小。这主要有2方面原因: 1) 标准颗粒的资料显示该颗粒具有2.5%的不确定度,考虑到该不确定度的影响,测量结果仍是比较准确的; 2) 实验条件下粒径的大小与多方面因素有关,相机的离焦成像误差、光照条件的不均匀等也都会带来测量误差。这些误差有待于在实际应用中根据具体测量环境进行修正。
4 结 论本文提出了一种基于Legendre正交矩的亚像素线宽测量方法。建立了窄线宽的理想阶跃模型,并推导出了利用Legendre正交矩计算得到的线宽表达式和相应的模板系数。对数字图像中存在的过渡像素问题,计算了其带来的原理误差,并采用插值的方法对误差进行了补偿。将该方法应用于安瓿药液中100 μm标准颗粒的线宽测量,测量结果表明: 该方法的精度较高,可以用于线宽的实际测量。
[1] | 蔡茂容. PCB图像线宽线距缺陷检测算法研究 [J]. 微计算机信息, 2009, 25(9): 116-118.CAI Maorong. Study on arithmetic of PCB images inspection of circuitry width and the distance between circuitry [J]. Microcomputer Information, 2009, 25(9): 116-118.(in Chinese) |
[2] | 秦垚, 王伯雄, 李伟, 等. 应用级联分类器检测安瓿内弱小运动目标 [J]. 光学精密工程, 2012, 20(1): 190-196.QIN Yao, WANG Boxiong, LI Wei, et al. Inspection of small moving foreign substances in ampoule based on cascade classifiers [J]. Optics and Precision Engineering, 2012, 20(1): 190-196. (in Chinese) |
[3] | 李运祥, 丁卫霞, 苏兰海, 等. 热轧带钢在线测宽中的图像分割 [J]. 北京科技大学学报, 2003, 25(4): 365-369.LI Yunxiang, DING Weixia, SU Lanhai, et al. Image segmentation in on-line width measurement of hot strip [J]. Journal of University of Science and Technology Beijing, 2003, 25(4): 365-369. (in Chinese) |
[4] | Frischholz R W, Spinnler K P. Class of algorithms for realtime subpixel registration [C]//Proceedings of the SPIE: The International Society for Optical Engineering. Munich: SPIE, 1993: 50-59. |
[5] | 黎俊, 彭启民, 范植华. 亚像素级图像配准算法研究 [J]. 中国图象图形学报, 2008, 13(11): 2070-2075.LI Jun, PENG Qimin, FAN Zhihua. A survey of sub-pixel image registration methods [J]. Journal of Image and Graphics, 2008, 13(11): 2070-2075.(in Chinese) |
[6] | Ghosal S, Mehrotra R. Orthogonal moment operators for subpixel edge detection [J]. Pattern Recognition, 1993, 26(2): 295-306. |
[7] | Teague M R. Image analysis via the general theory of moments [J].Journal of the Optical Society of America, 1980, 70: 920-930. |
[8] | 魏本征, 赵志敏, 华晋. 基于改进形态学梯度和Zernike矩的亚像素边缘检测方法 [J]. 仪器仪表学报, 2010, 31(4): 838-844. WEI Benzheng, ZHAO Zhimin, HUA Jin. Sub-pixel edge detection method based on improved morphological gradient and Zernike moment [J]. Chinese Journal of Scientific Instrument, 2010, 31(4): 838-844. (in Chinese) |
[9] | Zenkouar H, Nachit A. Images compression using moments method of orthogonal polynomials [J]. Materials Science and Engineering, 1997, 49(3): 211-215. |
[10] | 黄荣兵, 杜明辉, 梁帼英, 等. 一种改进的伪Zernike矩快速计算方法 [J]. 华南理工大学学报: 自然科学版, 2009, 37(1): 54-58.HUANG Rongbing, DU Minghui, LIANG Guoying, et al. An improved approach to fast computation of pseudo-Zernike moments [J]. Journal of South China University of Technology: Natural Science Edition, 2009, 37(1): 54-58. (in Chinese) |
[11] | Hu M-K. Visual pattern recognition by moment invariants [J]. Ire Transactions on Information Theory, 1962, 8(2): 179-187. |
[12] | 葛云, 章东. 基于Legendre正交矩的配准方法在放疗导航中的应用研究 [J]. 电子学报, 2009, 37(7): 1529-1531.GE Yun, ZHANG Dong. A fast matching way using the Legengre orthogonal moment and application in image guided radiotherapy [J]. Acta Electronica Sinica, 2009, 37(7): 1529-1531. (in Chinese) |
[13] | 秦垚, 王伯雄, 李伟. 基于液面分割的安瓿内漂浮小目标检测算法 [J]. 清华大学学报: 自然科学版, 2012, 52(1): 21-24.QIN Yao, WANG Boxiong, LI Wei. Floating impurity inspection algorithm in ampoule based on liquid level segmentation [J]. Journal of Tsinghua University: Science and Technology, 2012, 52(1): 21-24.(in Chinese) |