微细电极的制备是微细电解、电火花加工过程中不可或缺的,微电极的尺寸及形位精度将严重影响到加工质量,对制备的微电极必须检测合格才能使用。传统的人工检测费时费力,随着对电极需求量的增大,人工检测的压力也逐渐增大,因此开发设计基于图像检测的微电极自动检测的系统很有必要。


由于国外欧美制造技术,计算机技术以及自动控制技术的发展,国外检测技术也得到快速进步。图像检测在医学及遥感领域都得到了广泛应用,在产业领域中,数字图像测量主要有以下几个方面:外观检查和筛选、视觉跟踪、表面缺陷的自动检查、工业材料的质量检验。国外在上述领域中的研究大部分是通过生产数字图像处理仪器的公司赞助的。随着研究的深入,目前已经扩展到化工、钢铁等一般制造业。霍莫尔的AMV923是图像检测的代表,它能根据CCD获得的零件图像检测零件的形状误差,速度快、精度高。


我国的图像测量从上世纪70年代末80年代初开始发展,90年代以来,随着图像捕获、计算机性能的发展,我国在图像测量领域的研究进入一个新的阶段。哈尔滨工业大学研制的图像式万工显微镜系统,实现了对目标对象轮廓的自动扫描定位,对小尺寸零件可直接测量如厚度、孔径直径等参数。图像测量技术在很大程度上解放了劳动力,提高了自动化生产水平,应用前景非常广阔。在国外,图像测量技术已广泛应用到生产生活中,我国起步较晚,虽已取得了一定进展,但仍需广大科研人员一起努力来提高我国图像测量检测技术的发展水平。


本文基于数字图像处理的理论基础,以Windows操作系统为开发平台,MATLAB作为编程工具,设计微电极的自动检测系统,实现读入电子显微镜下原始图片,通过一系列处理输出直径尺寸与同轴度误差。本文的主要研究内容如下:


以电化学腐蚀法制备的圆柱型和球头两种不同的微电极为实验对象,用电子显微镜获取微电极的原始图片,将其进行灰度化,滤波去噪,图像二值化,形态学处理等初级的图像预处理后,提取边缘轮廓。通过计算得到微电极前端有效部分直径的尺寸,并对其同轴度误差进行检测,实现了微电极直径尺寸及同轴度误差的自动检测,同时也为同类零件提供了自动检测方法。


1系统构成及检测原理


基于微细电极实验室的实际情况,微电极检测系统的成功开发可以实现一定精度范围内电极相关尺寸的精确检测。


实验室使用放大倍数达160倍的尼康体式显微镜SMZ1270获得微电极的俯视图,本系统读取电极图片后,处理图片并获取尺寸数据。系统的开发过程可大致分为三部分:


①对图片先做必要的图像处理:灰度化、二值化、中值滤波、形态学处理、去除大片背景噪声。


图像处理的目的是获得清晰的电极边缘特征,便于图像分割处理。


②分割图像,提取电极轮廓特征,便于后续测量。


③测量微电极直径尺寸,采用多种方法测量微电极同轴度误差,和人工测量值比较后,选取误差最小的算法置入系统。

工作流程如图1所示。


2图像处理


2.1灰度化处理


图像处理的第一步灰度化可以在保留图像的边缘特征的基础上,大大减小系统的计算量,从而减少运行时间。科学表明,人的眼睛对绿色的敏感比红色、蓝色高,而蓝色则相对最低,因此在灰度化过程中,系统对R、G、B三个分量按照眼睛敏感度的大小分配不同的权重。实验表明,下式中的各系数对R、G、B三个分量进行权重分配即可得到效果良好的灰度图像:


W1R=W2G=W3B=0.3R+0.59G+0.11B


灰度化处理后,使用mat2gray函数将像素亮度值归一化。按上式处理后得到的灰度化后的图片如图2所示。


2.2二值化处理


由于系统仅处理电极部分,图像的背景需要和电极有明显的区分,二值化处理可使图像呈现出黑白分明的效果。通过对阈值的适当选取,多灰度级的彩色图像转换为二灰度图像,在保留图像整体和局部特征的基础上,大大简化了后续处理的工作量。


阈值的选取决定了二值化处理的效果,是后续一系列图像处理的基础。在MATLAB中有专门的二值化处理函数im2bw,它将在未设定阈值时自动选择一阈值进行二值化。但应用到图像中的效果如图3所示。

可观察到电极内部有严重丢失,效果很不理想。因此,本系统采取了一套自适应阈值选取的算法,其原理如下:


观察待处理电极图片后可知背景色占据了整个图像的大部分,电极颜色与背景颜色有较明显的不同。根据图像的特点,本文二值化处理依据如下式:


|I(x,y)-μ|≤w×σ


上式确定了图像背景灰度的范围:I(x,y)为待处理图像,系统求得图像灰度的均值μ、图像灰度标准差σ并确定适当的背景面积加权w(即背景面积对图像的权重:


W=S背景面积/S图像面积


根据电极图像特征及多次实验,本文取w值为0.75),若每点的灰度值与均值的差的绝对值小于加权标准差,则将这一点划为背景范围内,像素置1,不在此范围内的像素则置0。此法可根据不同图像的情况自动确定背景色范围,适用范围较广。


使用本系统方法进行二值化处理后的图像如图4。

最终图像的像素点全部被置为0或1,成为了一幅二值图像。可看出相较于MATLAB的内置函数来说,此法处理后的电极图像较好地保存了其边缘特征,电极和背景也得到了有效的区分。但是电极内部与背景色灰度相近的像素没有得到有效处理,导致电极内部有小面积“空洞”。此外,在背景中存在着少量噪点,影响对轮廓的提取。因此,为去除噪点并使得电极内部完全被填充,系统需要进一步处理已经得到的二值图像。


2.3后续处理


得到二值图像后,MATLAB可用medfilt2函数对图像进行中值滤波,本文选用3×3邻域并进行中值滤波两次,效果如图5。

经过中值滤波后,孤立噪点被有效去除,但电极内部区域仍然存在的大量“空洞”和背景中的大片噪声,可使用腐蚀、膨胀等形态学处理来将其去除。


系统构造r=3的圆盘区域作为结构元素,对该图进行腐蚀操作,黑点附近圆盘范围内的区域将被腐蚀为黑色,腐蚀后使用bwareaopen函数删除电极内部的小面积空洞,再将图片黑白转置,再次使用bwareaopen函数去除背景中的小面积噪声。此时系统再次使用r=3的圆形结构元素对电极图片进行膨胀,消除腐蚀操作带来的影响。


效果图如图6所示。

在经过上述处理后,如果图像中的电极已和背景有了较好的二值区分,可以进行轮廓的提取工作。


2.4基于连通域的大片噪声处理


在经过上述处理之后,大部分电极图片的噪声都被去除,可以进行轮廓提取工作,但少部分图片的背景中依然存在大片噪声。使用bwlabel函数标注图像中的连通域,再用regionprops函数计算出各连通域的周长,系统检测整幅图片后在各个连通域的中间以红色标号。处理好后,操作者在GUI中选择需要保留的电极部分,系统就会自动删除剩余的噪声部分(图7)。经过噪声处理,电极图像的处理工作全部完成,系统可提取电极轮廓。

2.5轮廓提取


电极的轮廓包含着电极的尺寸及形位误差等重要电极特征信息,且处理轮廓部分计算量小,操作易行,因此系统需要提取出图像的完整边缘特征。系统对处理后的二值图像进行处理,其中包含轮廓信息的像素被置1,不包含轮廓信息的像素,如图像背景及电极内部,则置为0。本文设计了提取边缘特征的8邻域算法,算法思路如下:每一像素点周围的3×3邻域称之为8邻域,对于一个电极中的点来说,如果此点为边缘部分,那么它的8邻域中必定有至少一点值不为0;如果此点位于电极内部,那么它的8邻域中的像素则全部为0。系统程序检测每一值为0的像素的8邻域,若8邻域中的8个像素都为0,则可判断此点在电极内部,该点值不变;若8邻域中不是所有像素都为0,则将其视作电极边缘上的点,将这一点置1,也就是设为轮廓点。整幅图像检测完毕后,所有值为1的点的集合即为电极的轮廓线。

轮廓提取后的效果图如图8。