基于机器视觉的医疗端子检测系统设计*
2015-04-16陈炽坤
徐 鹏,陈炽坤
(1.华南理工大学 机械与汽车工程学院,广东 广州 510640;2.华南理工大学 设计学院,广东 广州 510640)
机器视觉是一门涉及人工智能、神经生物学、心理物理学、计算机科学、图像处理和模式识别等诸多领域的交叉学科。机器视觉主要是用计算机来模拟人的视觉功能,但并不仅仅是人眼的简单延伸,更重要的是具有人脑的一部分功能——从客观事物的图像中提取信息,进行处理并加以理解,最终用于实际检测、测量和控制[1]。
近年来,越来越多的机器视觉技术被引入到工业应用中,如牛一帆提出了一种新的印刷图像检测系统的设计[2],贺超英等提出的基于视觉的罐盖质量检测系统设计等[3]。机器视觉技术的运用,使得效率和效益都得到了大幅提高。
本文的研究对象为用于医疗行业的电子连接器,此医疗端子分为公端和母端2种,pin数为2~14,各pin脚均布于圆周,其中的一部分端子如图1所示。当端子pin脚的偏转角过大时会影响到端子的装配,所以需要对pin脚的偏转角进行检测,判断是否有超差现象。现以公端6pin为例对此进行说明,公端6pin打光后的影像如图2所示。
图1 医疗端子 图2 角度定义
图2中,O点为待测样品的对称中心,线段AB是pin脚形成的弦,P点是弦上的点,现对偏转角ɑ的定义如下:
式中,Min()表示取较小值。若允许的最大偏转角为β,那么当α≤β时,产品为OK,否则为NG。
现有检测方法是根据各种pin数端子的尺寸,制作一套检测冶具。检测时,需将待测端子套入对应的检测孔中(见图3),若所有pin脚能顺利套入,视为OK,否则为NG。
图3 检测冶具
该方法有如下不足之处:1)检测时,有机械磨损,会对pin脚造成一定损伤;2)对每一种pin数,需制作对应的检测冶具;3)无法对产品的检测结果进行统计和分析;4)结果很大程度上取决于人的主观因素。
为了解决上述检测方法存在的不足,现研发了一套基于机器视觉的检测系统,较好地解决了上述问题。
1 系统组成
系统由工业相机、镜头、光源、检测台、工控机和显示器等组成,如图4所示。端子侧面都有定位凹槽,检测时需将此位置套入检测台的定位块中。工业相机、镜头和光源在工控机控制下构成了影像采集系统。影像采集完毕后,数据存入工控机内存,由工控机完成一系列的计算,最后将结果输出至显示器和LED结果显示灯。
图4 系统组成
2 系统硬件
硬件部分由工控电脑、130万像素USB相机、5018MP工业镜头、专用并口I/O卡和高亮度环形光源等组成。
图5 pin脚结构
硬件系统中最重要的是光源的选用。机器视觉中照明的目的是使被测物的重要特征显现,而抑制不需要的特征。合理的打光方案将为之后的图像处理奠定很好的基础。pin脚结构如图5所示,公端产品无台阶面,理论上用同轴光源最佳,而母端产品有台阶面,如果用同轴光源,待测圆弧和台阶面的反光效果很接近,会对之后的影像处理造成很大干扰。为了使得待测圆弧的反光效率高,而台阶面的反光效率低,经过理论分析和打光试验的结果,选用30°的环形LED灯较为合适。此时公、母端产品都有比较理想的影像质量。
3 系统软件
软件部分的开发平台为VS2010。软件界面如图6所示。现以公端6pin为例,对图像的处理过程做详细说明,整个流程图如图7所示。
图6 软件界面
图7 图像处理过程流程图
3.1 ROI图像
ROI图像的提取是为了进一步减小干扰,将图像处理限制在更小范围内进行。由于端子都有定位凹槽,并且待测圆弧分布在圆周上,所以针对每种pin数的端子,设置有对应的检测区域(见图6中虚线圆框),之后的图像处理便只在感兴趣的区域内进行。
3.2 图像分割
为了得到图像中的各pin脚信息,应对图像进行分割,即提取图像中与各个pin脚相对应的那些区域。由于各个pin脚的反光效果存在差异,导致了并非所有pin脚的灰度值都接近;因此,无法使用1个阈值对图像进行整体分割。然而,从单个pin脚的局部区域中看,pin脚明显要比背景更亮。根据这一特点,本文采用动态阈值分割处理。数学表达式如下:
S= {(r,c)∈R |f(r,c) -g(r,c) ≥diff}
式中,f(r,c)为原图像;g(r,c)为平滑后的图像;diff为阈值。
在动态阈值分割处理中,平滑滤波器的尺寸决定了能被分割出来的物体尺寸,凭经验,均值滤波器的宽度应大于被识别物体的宽度,但滤波器的掩码窗口也不能无限的大,因为邻近的物体可能对滤波结果产生不利的影响。根据这一原则,滤波尺寸稍大于pin脚影像的宽度即可。滤波器尺寸为61 mm×61 mm,阈值为50的分割结果如图8所示。
图8 图像分割结果
3.3 特征筛选
因为pin脚的尺寸基本固定,所以影像的区域特征也很明显,例如区域外轮廓长度、各向异性、凸性和最小外接圆等。本系统根据上述特点将其他干扰区域剔除。区域的矩的广义特征可用下式描述,当p≥0,q≥0时,(p,q)阶矩被定义为:
(1)
(0,0)阶矩即为区域的面积,式1的矩依赖于区域的尺寸,除以面积即为归一化矩,如下式:
(n1,0,n0,1)即为区域的重心,中心距是在重心的基础之上定义的,其特征值不随区域的位置变化,如下式:
式中,p+q≥2。
区域的等价椭圆长轴r1和短轴r2可由下式计算得到:
区域的各向异性可表示为r1/r2,此特征量体现了一个区域的细长程度。凸性为某区域的面积和该区域凸包面积之间的比值。
原图像经过合适的分割后,便可得到各个连通域。而各pin脚所在的区域的最小外接圆半径、凸性、各向异性和外轮廓长度等都处于一个稳定的范围波动,经过对大量正常pin脚区域的这些特征值进行统计,便可以得到对应pin数端子的各特征值筛选范围。6pin端子的各特征值范围见表1。将表1中的值适当扩大范围,作为目标区域的筛选范围,pin脚区域提取之后如图9所示。
图9 目标区域
外接圆半径/mm各向异性凸性轮廓长度/mm37.0~42.02.5~3.30.28~0.44210~248
3.4 后处理和计算
目标区域获取后,进行了形态学闭操作,目的在于填充空洞、缺口及平滑边界。为后述骨架化处理创造条件。骨架化处理的目的是为了得到单像素的中心线。骨架上的点至少对应着区域边界上到该点距离相等的2点。骨架化算法可看做是按顺序进行的击中—击不中变换,在区域边界上找到不属于骨架的点并删除[4]。对各pin脚区域的中线进行圆的拟合,得到所有pin脚的圆心坐标,那么pin数为n的端子对称中心可由下式求得:
式中,ri表示第i个pin脚圆心的行坐标;ci表示第i个pin脚圆心的列坐标。计算出来的对称中心坐标如图10所示。将计算出各个角度值并和允许偏差值做比较,输出检测结果见表2。由于设置的允许偏差为24.0°,所以该产品的检测结果为OK,并将检测结果和数据实现显示在界面上,且标有OK的LED灯亮。
图10 中心坐标
表2 检测结果 (°)
经验证,该软件的重复检测精度在0.8°以内,已达到设计要求。为了验证检测的准确性,随机选取100个端子,经过该系统的检测并记录结果。然后,用之前的方法重复检测,结果的吻合率为98%,其余2个处于临界状态,本身存在人为判断误差,故属于正常情况。
4 结语
本检测系统通过引入图像这一典型的无损检测方法,替代了原有检测方法。和原有检测方法比更具有灵活性,例如当要增加同类型新pin数端子时只需修改有关的配置文件即可。从这些来看,本检测系统有很大的工程实用价值,但在有些图像处理的算法上还有很大的改进空间,例如在分割阈值的选取上,目前采取的还是参考经验值的方法,还有特征参数的获取是建立在多个样本的先验值上,这些都有待进一步研究。
[1] 章炜.机器视觉技术发展及其工业应用[J].红外,2006,27(2):11-17.
[2] 牛一帆. 一种新的印刷图像检测系统的设计与实现[J]. 包装工程, 2012,33(1): 100-104.
[3] 贺超英,张辉.基于机器视觉的罐盖质量检测系统设计[J].仪表技术与传感器, 2011(2):85-87.
[4] Lam L, Lee S W, Suen C Y. Thinning methodologies-a comprehensive survey[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1992, 14(9):869-885.
*教育部人文社会科学项目(12YJC760081)