姚 坤
(中国电信股份有限公司山东分公司,山东 菏泽 274000)
基于OpenCV的水银体温计示数实时检测
姚坤
(中国电信股份有限公司山东分公司,山东 菏泽274000)
为了实现对水银体温计产品的在线非接触式检测,设计一种示数检测系统;基于特殊的机械运载平台设计配合线阵相机对体温计产品进行图像采集,基于OpenCV开源视觉库对图像进行处理,提出一种基于模板匹配和纵向扫描端点查找的图像搜索算法,通过确定刻度线和水银柱升降端在图像中的相对位置关系计算体温计示数;不借助外部测量仪器对产品示数进行实时检测,可有效取代传统的人工操作方式;实验结果表明,该系统运行稳定且具有较好的实时性,检测精度较高,满足测量不确定度小于0.1 ℃的检测要求。
示数检测;线阵相机;模板匹配;纵向扫描;OpenCV
水银体温计是目前使用最广泛的体温测量工具,在体温计的市场份额中占据着大部分比重。在水银体温计的生产过程中,产品的检定是出厂前必不可少的步骤。目前国内的生产线上普遍采用的检定方法是将产品放置在一定温度的恒温水箱中,一段时间后,取出进行人工目测,根据示数判断是否合格。传统方法存在准确度差、效率低等问题,由于生产环境对温控的严格要求,车间的高温会导致人员易疲劳等问题,从而检测结果更易受主观因素的影响。随着技术水平的不断提高,机器代替人工进行智能化生产检测已经成为工业发展的趋势。
在已有的相关研究中,陈恪等人提出一种基于边缘检测和霍夫变换的温度计检测方法[1]。另外,向毅等人提出一种基于霍夫变换和形态学运算的温度计读数识别方法,可有效读数温度计示数[2]。但是对于三棱体温计的检测以上方法适用性不强,且缺少系统化的相关设计,难以实现产品的在线检定。本文为了实现不借助外部测量仪器,对体温计进行实时检定的目的,设计了一套水银体温计示数检测系统。该系统可降低劳动力成本,有效提高产线工艺水平。
检测系统的硬件平台主要由图像采集模块、机械运载平台和工业控制计算机IPC组成。系统的硬件结构框图如图1所示。
图1 系统的硬件结构框图
其中,水银体温计置于水平运行的履带式传送带上,两侧装有固定夹,可保证体温计以理想的姿态经过相机视场。安装支架选择合适的高度固定CCD黑白线阵相机,在相机下方安装LED线光源。系统的成像要求为体温计图像能够同时清晰显示水银柱和刻度线区域。对于体温计的三棱玻璃体结构而言,水银柱和刻度线的观测角度不同,因此需要通过线阵相机配合体温计的旋转动作进行动态图像采集[3]。传送带上有一凸起的组合型滚筒装置,当体温计经过该区域的顶部位置,会完成一定程度的自转动作,此时由一侧的传感器触发相机工作完成图像的采集。
本文中系统算法设计的基本思想为通过确定刻度线和水银柱升降端在图像中的相对位置关系计算体温计示数。首先,在体温计图像中基于二者选定两个目标测量点。然后根据测量点在区域中的位置确定其在图像中的坐标,由此可知测量点之间的距离,经公式计算可得体温计的示数。本文中我们分别选定35℃刻度线和水银柱升降端顶部上的一点为目标测量点,然后对其进行查找和定位。系统的检测算法流程图如图2所示。
图2 系统的检测算法流程图
2.1图像的预处理
由于水银体温计生产工艺的不足,不同产品的三棱玻璃柱体规格存在细微的差别,这直接导致了水银柱显示效果的差异性,如部分图像中的水银柱会出现分叉或过细等问题。为了增强有关信息的可检测性,我们需要对相机采集的图像进行预处理。对图像进行纵向拉伸,以保证刻度线区域和水银柱的显示效果具有一定的不变性,该过程通过几何空间变换操作实现。
几何空间变换是最常用的图像处理手段之一,它可以改进图像中像素之间的空间关系。此类变换也可以称为“橡皮膜变换”,因为它可以看成是将一副图像印刷在橡皮膜上,根据预定的一组规则对薄膜拉伸,图像的显示也随之变化[4]。为了实现图像的拉伸效果,首先我们需要通过坐标空间变换对图像进行差值放大操作,数学表达式为:
(1)
经坐标空间变换后,原图像中的像素在输出图像中重新定位到新的位置,此过程中,经过纵向拉伸的图像矩阵行数增多,竖直方向上相比原图像出现了更多的位置,我们需要对新位置赋灰度值。上述过程通过灰度内插操作实现,为了保持变换后输出图像细节的完整性以及像素灰度级的连续性,我们采用双三次图像插值算法[5]。
采集的体温计图像及纵向拉伸后得到的结果图像如图3所示,其中刻度线增长,水银柱变宽,该效果有利于后续图像处理工作的进行。在OpenCV中,此过程通过仿射变换操作实现。
图3 纵向拉伸过程示意图
2.2刻度线区域目标测量点的定位
本文通过模板匹配操作实现对刻度线区域内目标测量点的检测和定位。模板匹配是一种基于区域的图像匹配算法,此算法在没有较强干扰的情况(遮挡,旋转等)下具有良好的性能表现。系统的图像采集环境稳定且背景单一,刻度线区域在采集的体温计图像中具有较强的区分性,匹配过程中不存在干扰性因素。
模板匹配通过对两幅图像相似区域的搜索实现目标区域的定位。算法基本原理为:首先确定待匹配的源图像,取一与目标区域对应的模板图像;然后令模板在源图像中进行滑动(从左往右,从上往下),保证其遍历源图像中的每一处位置,过程中根据一定的相似度量准则计算不同位置的相似度;最后,取相似度最高的位置作为输出结果,完成模板匹配操作[6]。模板匹配示意图如图4所示。
图4 模板匹配过程示意图
其中,源图像S大小为M*N,像素的灰度值为s(x,y),x∈[1,M],模板图T大小m*n,其中像素的灰度值为t(x,y),x∈[1,m],y∈[1,n],y∈[1,N]。模板匹配过程中,当在源图像S中找到和模板T匹配程度最高的区域,则满足公式(4):
(4)
式中,x∈[1,M-m+1],y∈[1,N-n+1],R(x,y)为结果矩阵,其中的元素表示模板图在源图像上滑动过程中每一次匹配所得的相似性度量结果,坐标(x',y')对应着源图像中目标区域的位置信息。结果矩阵的元素数为模板匹配过程中区域相似度量的计算次数,即(M-m+1)*(N-n+1)。
图像相似性度量实质上是两个二维向量相似性的度量,相似性度量准则是关于灰度相似性的度量函数,主要有两类,分别基于两种标准:差值和相关性。基于差值进行相似性度量,求得结果越小说明两幅图像差异越小,二者相似性越大;基于相关性进行相似性度量,求得结果越大说明两幅图像之间越接近。相比基于相关性的度量算法基于差值的算法复杂度较低,计算量小,但是匹配结果的可靠性不如前者理想。本文采取灰度相关匹配算法,此类算法的性能主要取决于相似性度量准则和极值搜索策略的选取。
本文选择归一化互相关(normalized correlation method,NCC)算法计算模板图像与目标图像之间的互相关值,以确定两幅图像之间的相似性大小。该算法具有较强的抗噪声能力以及较高的匹配准确率,因此广泛应用于工业检测、导航制导等重要领域的视觉工程中[7]。其定义如式(5):
(5)
模板匹配完成后得到结果矩阵,在OpenCV中被定义为32位浮点型单通道数据类型[8]。通过遍历搜索确定矩阵中数值最大的元素所在的位置坐标,此坐标对应着模板图像与源图像中相似度最大区域的左上角点,代表目标区域的位置信息。遍历搜索策略可以保证结果的准确性,另外收敛速度快,性能可靠。模板匹配输出的结果图像如图5所示。
图5 模板匹配输出的结果图像
根据刻度线区域预定义模板的大小和模板匹配输出的目标区域左上角点坐标,可知我们关注的刻度线区域目标测量点在体温计图像中的位置。
2.3水银柱升降端目标测量点的定位
本文提出一种纵向扫描查找算法对水银柱升降端顶部进行定位。首先我们需要“提取”图像中的水银柱区域,去除图像中的其它部分,该过程主要通过阈值化处理和数学形态学操作实现。图像处理操作流程图如图6所示。
图6 图像处理流程图
阈值化处理和数学形态学操作是常用的图像处理工具,可准确提取出图像中表达和描述区域形状的分量,如骨架、边界和凸壳等。腐蚀和膨胀两种操作是形态学运算的基础,可实现图像中像素集合区域的增长或收缩[9]。
腐蚀和膨胀经过不同的组合可实现另外两种形态学操作,闭运算是先膨胀后腐蚀,可清除图像中小型的黑洞,而开运算是先腐蚀后膨胀,可消除图像中的小面积白色团块。图像处理的过程示意图如图7所示。
图7 提取水银柱区域的图像处理过程示意图
经以上操作,可以得到独立的水银柱区域图像,如图7(f)所示。现对其进行纵向扫描,目的是得到水银柱升降端的顶部端点的坐标信息。具体操作为:使用嵌套循环实现从左到右逐列扫描整幅图像,终止条件为检测到第一个灰度值为0的像素点,即水银柱升降端顶部的一点,后返回该点的坐标值,这样就完成了对水银柱升降端顶点的检测和定位。
2.4示数的计算
由以上操作,可知我们关注的两个目标测量点在体温计图像中所在的位置,取二者的横坐标,可得在被采集图像中液柱顶端到基准刻度线之间的水平距离。根据本文提出的示数检测基本思想,经计算可知体温计产品的示数,计算公式如式(6)所示:
(6)
式中,K为体温计示数,Ks为设定基准刻度线位置对应的读数,L为图像中液柱超过基准刻度线的像素数,t为产品图像中相邻刻度线之间的像素数,其大小取决于相机的分辨率及工作距离。
实验中,采用PC的型号E5500,2 G内存、Visual Studio2010和OpenCV的软硬件环境,对示数不同的水银体温计进行检测。利用程序开发测试工具Intel®Parallel Studio XE 2013对100次程序执行过程进行监测,CPU平均耗时0.518 s,可见该系统具有较好的实时性。记录100次检测的输出结果并与目测结果进行对比,数据表明,本系统检测精度较高,满足厂家提出的测量不确定度小于0.1 ℃的设计要求。经过8小时不间断的运行,系统表现稳定,过程中未出现卡顿、崩溃等问题,可见本系统具有较高的可靠性。
有效性。实验结果表明,该方法的故障诊断准确率达97.5%。在相同条件下,采用VPMCD方法进行模式识别用以对比,准确率为87.5%。
将WVPMCD和层次模糊熵应用于液压泵的故障诊断,实验数据分析与比较结果表明,WVPMCD方法由于在训练时运用加权最小二乘参数估计法代替最小二乘参数估计法,克服了模型可能出现的异方差,提高了预测精度,有效实现了对液压泵的故障诊断。
[1]Raghuraj R,Lakshminaryanan S. Variable Predictive Models—A New Multivariate Classification Approach for Pattern Recognition Applications[J]. Pattern Recognition,2009,42(1):7-16.
[2] 程军圣,马兴伟,杨宇. 基于VPMCD和EMD的齿轮故障诊断方法[J]. 振动与冲击,2013,32(20):9-13.
[3] 罗颂荣,程军圣,郑近德等. GA-VPMCD方法及其在机械故障智能诊断中的应用[J]. 振动工程学报,2014,27(2):289-295.
[4] 杨宇,李永国,程军圣. WVPMCD及其在滚动轴承故障诊断中的应用[J]. 湖南大学学报(自然科学版),2014,41(2):52-57.
[5] Richmann J S,Moorman J R. Physiological Time Series Analysis Using Approximate Entropy and Sample Entropy[J]. American Journal of Physiology-Heart and Circulatory Physiology,2000,278:2039-2049.
[6] Jiang Ying, Peng C K,Xu Yuesheng. Hierarchical Entropy Analysis for Biological Signals[J]. Journal of Computational and Applied Mathematics,2011,(236):728-742.
[7] Zhu Keheng, Song Xigeng, Xue Dongxin. A Roller Bearing Fault Diagnosis Method Based on Hierarchical Entropy and Support Vector Machine with Particle Swarm Optimization Algorithm[J]. Measurement, 2014(47):669-675.
[8] 陈伟婷. 基于熵的表面肌电信号特征提取研究[D]. 上海:上海交通大学,2008.
Reading Inspection of Mercury Thermometer Based on OpenCV
Yao Kun
(China Telecom Co., Ltd,Shandong Branch, Heze274000, China)
In order to realize the non-contact inspection of mercury thermometer products in the assembly line, a kind of reading inspection system was designed. Images were acquired with line-scan digital camera based on the mechanical vehicle platform, the image was processed based on OpenCV open-source vision library, a kind of image algorithm based on template matching and longitudinal scanning for the endpoint lookup, thermometer reading was calculated through the interested points in the image, which are located in scale line and mercury lift side; The system can realize real-time inspection without external measuring instrument, which can effectively replace the traditional manual operation mode. The experimental results showed that the system has stable operation,good real-time performance and high precision, the measurement uncertainty is less than 0.1 ℃.
reading inspection; line-scan digital camera; template matching ; longitudinal scanning ; OpenCV
2015-08-09;
2015-09-16。
姚坤(1990-),男,硕士,工程师,主要从事网络系统构架和多媒体通信方向的研究。
1671-4598(2016)01-0089-03
10.16526/j.cnki.11-4762/tp.2016.01.024
TP391.4
A