杨世杰,张 平
(广东工业大学 机电工程学院,广东 广州 510006)
一种指针式仪表的识别方法
杨世杰,张 平
(广东工业大学 机电工程学院,广东 广州 510006)
当前指针式仪表识别技术日益成熟,其中指针形状和位置的识别大多采用Hough变换算法,传统的Hough变换算法运算时间长、储存空间大,使得识别过程效率低下。针对以上缺点,提出一种改进型Hough变换。通过限定指针式仪表表盘环形区域、运用差影法确定指针的大致区域、指针通过表盘圆心这三个限制条件来缩减Hough变换扫描的范围,以此缩减Hough变换算法的存储空间和计算量。将改进型Hough变换算法与传统的Hough变换算法相比较,实验结果表明:改进型Hough变换可有效地减少算法运行时间,提高指针仪表识别的实时性。
指针识别;Hough变换;图像处理
由于指针式仪表具备性能可靠、工作原理简单、价格低廉、抗干扰能力强等优点,在日常生活和工业现场具有广泛的应用。目前大多数指针式仪表不具备数据接口,仪表显示数据的识别记录要靠人工来完成,由于人为因素,数据容易产生误差,此外有些环境恶劣的工业现场不适合人工抄表记录数据,因而研究实现指针式仪表显示数据的自动识别在一些工业现场具有重要的实用意义[1-2]。
指针的提取以及识别是指针式仪表数据自动识别的关键技术之一。针对指针的识别,已有很多成果。主要包括最小二乘法、传统的Hough直线变换法、减影法等。最小二乘法是通过最小距离直线拟合法来拟合指针所在的直线,能够比较精准地确定指针所在的直线方程[3];减影法是将两张获得的图像进行减法运算,得到只包含少量噪声的指针图像[4]。目前最常使用的方法是Hough变换,Hough变换能够较好地提取出图像中带有几何特征的物体,比如圆形轮廓、直线轮廓等,Houhg变换具有很好的抗干扰能力以及稳定性。但Hough变换的过程是穷尽式、累加式的,扫描的范围比较大,这就造成该算法计算时间长、储存空间大等缺点。这些缺点使得指针式仪表识别系统在工业现场工作时缺乏良好的实时性,且要求的硬件条件比较高。考虑到具体的工业要求,在传统的Hough变换算法的基础上,本文研究出一种改进型Hough算法。
指针式仪表图像在工业现场获取的过程中,由于各种各样的环境因素影响,比如环境粉尘大、光照不均匀等使得图像中包含大量噪声。若不做处理,将影响后续指针准确高效的识别。因此需要对实时采集的图像进行适当的预处理操作,合理的预处理对于图像信息的提取和后续处理有很大的帮助[5]。
1.1图像的灰度化
工业现场摄像机采集到的图像是彩色图像,由于彩色图像信息量大,不利于提高运算速度,因此需要将采集的图片灰度化,减少图像的原始数据量。R、G、B三个分量决定了彩色图像中的每个像素的颜色,三个分量各有255个取值,所以单个像素点可以有1 600多万(255×255×255)种颜色的变化。灰度图像是三个分量取值都相同的一种特殊的彩色图像,颜色的变化是255种。因此转变成灰度图像会使后续的计算量变少很多[6]。
1.2去噪
工业现场图像在采集的过程中噪声污染的主要来源为椒盐噪声和随机噪声。为了去除图像中的噪点,本文采用二维中值滤波对图像进行去噪处理,通过图像中某一特征点的邻域灰度中间值来替代该点的灰度值从而去除噪点。过程如下:
图1 图像空间与kb参数空间的对应关系
(1)对于图像f(x,y),取其中一点(x,y)的邻域为Q;
(2)对Q中的m个像素按照灰度大小重新排列为(a1,a2,a3…am);
(3)当m为奇数时,二维中值滤波后图像g(x,y)中该点像素为原图像f(x,y)中该点邻域排序中灰度值为a(m+1)/2处的像素值;
(4)当m为偶数时,二维中值滤波后图像g(x,y)中该点像素为原图像f(x,y)中该点邻域排序中中间两个值的平均值。
1.3图像分割
实时采集的图像中背景部分(仪表表盘背景)和目标部分(指针)的灰度值差别较大,本文采用动态阈值法对图像中背景部分和目标部分进行分割。首先计算图像最大灰度值和最小灰度值的平均值,将其作为阈值,图像中灰度值大于该阈值的置0,小于该阈值的置1。这样处理的优点是在外部影响因素发生激烈变化时,图像也可以被精准分割[1]。
1.4图像细化
图2 图像空间与ρθ参数空间的对应关系
为了方便提取图像中指针结构特征以及减少像素运算量,提高识别指针时的精度和速度,需要在图像分割后对指针进行细化处理提取指针的骨架。指针细化的本质就是扫描图像,找到图形的骨架,用得到的骨架来代表该图形。本文图像中指针细化的结果是含有单个像素宽度的线条图像,但保持了原图像的连通性。
在指针式仪表识别过程中,最关键的步骤之一就是仪表指针的识别,这也是本文重点介绍的环节。
2.1 Hough变换原理
霍夫变换(Hough Transform)是Paul Hough在1962年首次提出的。Hough变换有较好的抗噪声性能,被广泛地应用在图像处理、模式识别等领域。例如:圆或椭圆的检测、直线检测等。传统Hough变换是比较一个坐标空间中特征点累加综合的局部最大值,获得一个契合该特征形状的集合作为Hough变换的结果,从而得到一种参数空间与图像空间的映射关系[7]。Hough变换的基本原理是线与点的对偶性,在图像空间xy中,通过点(x,y)的直线都满足方程:
y=kx+b
(1)
其中k为该直线的斜率,b为该直线的截距。通过变换,式(1)也可以写成:
b=-kx+y
(2)
参数空间与图像空间的关系如图1所示。
由图可知,图像空间xy中直线l0上的任意一点都对应参数空间kb中的一条直线,也就是空间kb中的直线l1,l,2l3…ln都对应空间xy中直线l0上的点。参数空间kb中直线的交点(m,n)对应于图像空间xy中的直线l0。图像空间中直线段距离越长,在参数空间kb中通过交点的直线段就越多。因此,可以利用参数空间kb中交点累加值的最大值计算得出图像空间xy中相对应的直线。但是,当直线的斜率无穷大时,即当x=c时,参数空间kb中b=-kx+y形式的方程无法表示x=c类型的直线,此时可以采用极坐标系的方式来表示图像空间的任意一条直线。极坐标参数空间中的两个参数ρ和θ可以表示图像空间中任意一条直线,其中ρ表示直线到原点的距离,θ表示直线与x轴的正向夹角度数。对于图像空间中直线l0上任意一点(m,n),其极坐标表示如式(3)所示。
ρ=mcosθ+nsinθ
(3)
图像空间与极坐标参数空间的对应关系如图2所示。
同理可知,在图像空间中直线l0上任意一点都对应极坐标参数空间ρθ中一条曲线,也就是在参数空间ρθ中曲线1,2,3…n都对应图像空间直线上的点。通过计算得到参数空间ρθ中通过交点的曲线累加局部最大值,确定图像空间中的直线。由以上所述原理,图像空间中的直线检测问题映射到参数空间中。
2.2改进型Hough变换算法
尽管传统的Hough变换具有很多优点,比如:实用性强、抗干扰能力强、稳定性高等,但Hough变换需要将图像空间中每个点进行扫描,将极坐标空间中通过交点的曲线数量进行累加,扫描比较参数空间中这些累加值的局部最大值。因此传统Hough变换算法运行的时间长,占用的内存空间较大。本文利用指针通过表盘圆心,指针转动具有一定的角度,以及限定环形ROI区域改进Hough变换算法,较大程度地减小了变换过程中扫描范围,从而减小了算法的计算量。
第一,限定环形扫描区域,环形两圆的半径为r1和r2,Hough变换只扫描半径在(r1,r2)范围内圆环中的特征点即可,这样就排除了刻度线区域以及多数噪声的干扰,有效地减少了Hough变换扫描的范围。第二,由于指针式仪表的量程有一定的角度范围,通过限定扫描角度,可以减少计算量。前人在这方面已有研究,比如在图像处理之前先确定指针旋转的起始角度θ1和终止角度θ2,图像在处理时只在(θ1,θ2)范围内进行扫描,这种方法只能在一定程度上减少算法的运算时间。本文在实时处理图片时先采用差影法检测出指针的大致角度θ,然后在此基础上左右扩大扫描角度,按量化步长对θ依次从1度开始增加取值,试验表明当取3度时实验效果最佳,算法运算时间最短。第三,指针式仪表无论指针如何转动,指针必然经过表盘的圆心(xo,yo),本文在实时处理图像之前先确定表盘圆心的位置(xo,yo),在有圆心约束的情况下,Hough变换只扫描通过圆心(xo,yo)的直线。通过以上3个约束条件,Hough变换对限定区域内的点进行累加统计,选出出现次数最多的角度,即为指针的角度θl。
对于刻度均匀的指针式仪表,仪表的读数w和指针的角度θl有某种线性关系,这种线性关系在仪表出厂时已经人为设定好了。通过识别的指针角度θl和设定的公式,可以计算得到指针式仪表的示值[8]。公式如下:
(4)
式中,w表示仪表的读数,h表示仪表的量程,θl表示指针角度,θ1、θ2分别表示指针的起止角度。
本文针对压力表,基于MATLAB实验平台来实现指针仪表的自动读数,测试传统Hough变换算法以及本文提出的改进型Hough变换算法的识别时间。对比结果如表1所示。
表1 算法运行时间比较
本文针对传统的Hough变换的缺点,通过环形ROI区域、差影法确定大致指针角度、确定圆心位置坐标等限制条件,限制了Hough变换算法的累加量和扫描范围,在传统Hough变换的基础上,改进了Hough变换算法。与传统Hough变换算法相比较,指针的识别速度提高了4~6倍,与此同时算法占用的内存空间大大减少,取得了比较好的实验效果,能够满足工业现场指针式仪表实时识别的要求,并且对硬件要求水平较低,具有一定的实用价值。
[1] 冯养杰,林小竹. 基于改进Hough变换的指针式仪表自动识别方法研究[J].北京印刷学院学报,2015,23(4):62-66.
[2] 罗大成,王仕成,曾洪贵,等. 指针式仪表识别系统的设计[J].激光与红外,2007,37(4):376-380.
[3] 陈彬,金连文.一种仪表指针位置检测的中心投影法[J].计算机应用研究,2005,13(1):246-248.
[4] 施健,张冬,何建国,等. 一种指针式化工仪表的远程抄表设计方法[J].自动化仪表,2014,35(5):77-79.
[5] 林剑萍,廖一鹏.基于OpenCV和LSSVM的数字仪表读数自动识别[J].微型机与应用,2017,36(2):36-40.
[6] 张桂华,冯艳波. 图像处理的灰度化及特征区域的获取[J].齐齐哈尔大学学报,2007,21(7):49-51.
[7] 王高登,钟俊.基于改进的 Hough 变换的指针识别算法[J].现代电子技术,2016,39(16):23-26.
[8] 宋人杰,张立亚. Hough变换的改进及其在电厂指针式仪表自动识别中的应用[J].东北电力大学学报,2011,31(3):42-46.
A method for reading recognition of index-instrument
Yang Shijie, Zhang Ping
(School of Electromechanical Engineering, Guangdong University of Technology, Guangzhou 510006, China)
Current identification of index-instrument technique is getting mature, the recognition method of shape and position almost is Hough transform,but disadvantages of the large storage space and the long calculating time make the recognition process inefficient.In view of the above disadvantages,this paper proposed an improved Hough transform.By constraining the pointer instrument dials ring area, using the image subtraction algorithm determined broadly regional, the pointer through the dial the center, by these three restrictions to reduce the scope of the Hough transform scanned.Improved Hough transform algorithm compared with the classical Hough transform algorithm,experimental resualts show that the improved method can effectively reduce the running time of the algorithm of Hough transform, enhance pointer instrument recognition in real-time.
pointer identifying; Hough transform; image processing
TP391
:A
10.19358/j.issn.1674- 7720.2017.17.017
杨世杰,张平.一种指针式仪表的识别方法[J].微型机与应用,2017,36(17):59-61.
2017-03-10)
杨世杰(1989-),通信作者,男,硕士研究生,主要研究方向:机器视觉、图像处理。E-mail:1006645070@qq.com。张平(1965-),男,博士,教授,主要研究方向:数字化制造与装备、五轴数控技术。