一种适用于智能变电站巡检机器人的双针仪表读数的识别算法

2013-10-15 03:23李红玉杨国庆
山东电力技术 2013年3期
关键词:读数指针仪表

房 桦 ,蒋 涛 ,李红玉 ,罗 浩 ,李 健 ,杨国庆

(1.山东鲁能智能技术有限公司,山东 济南 250002;2.长治供电局,山西 长治 046000)

1 背景

变电站设备巡检机器人基于自主导航,集成可见光、红外、声音等传感器,实现对设备热缺陷、分合状态、外观异常的判别,以及仪表读数、油位计位置的识别,并配合智能变电站顺控操作系统实现被控设备状态的自动校核[1]。电力系统的变电站有许多设备配置了指针仪表,如气压表、温度表、油温表、避雷器表等。特别是有一类油温表具有两条指针,一条为红色,记录历史最大值,一条为黑色,表示当前值。由于长时间暴露在阳光下,红色指针的颜色会出现褪色的情况,或在背光的条件下,红色素特征表现的并不明显,采用色彩分量特征的检测具有局限性。目前记录此类双针仪表数据主要靠人眼近距离观测,精度低、可靠性差,劳动强度大。随着智能变电站的试点建设与巡检机器人的发展及推广使用[2],仪表数据的记录工作已经向自动化操作方向改进,但仍需运行人员参与核实确认机器人采集的双指针仪表状态图像。因此,研发一种适用于巡检机器人的快速、准确、稳定可靠的双指针式仪表的自动识别系统具有重要意义。

变电站的仪表多数安置在室外,巡检机器人采集的仪表图像通常受到环境的影响。现有的识别算法为,利用仪表表盘的形状特征,通过模板匹配或椭圆拟合确定仪表表盘在图像中的基本位置及区域范围[3-4]。 虽然其算法具备一定实时性和鲁棒性,但并不适用于巡检机器人采集到的变电站仪表图像。这是由于变电站设备结构复杂,在机器人采集到的图像中,背景紊乱,并不仅仅包含仪表区域,还同时囊括了其它设备,其中不乏包含近似圆形的部件,在使用椭圆检测的算法时,极易出现错误的检测结果。在指针识别方面,通常在获取了仪表表盘的子图像后,再使用多种的图像处理方法提取仪表指针的位置及指向方向。文献[5]提到把刻度作为小段的直线,利用Hough变换同时识别指针与刻度,虽然可以保证一定的精度和计算时间,但对一些多符号、多条纹的等干扰的仪表并不适用。文献[6]提出用输入图像仪表指针位置减去零刻度时的指针位置的减影法,再以直线拟合得到指针的中心线的骨干精确位置,以此来提高计算速度和指针精度,在刻度识别时采用条件Hough变换(Constrained Hough Transform)结合中心投影分析的迭代方法去除噪音的干扰,得到完整的刻度读数。但此算法利用减影法的零刻度仪表指针图像要与输入图像保证在同一个拍摄平面,如果两幅图像存在角度差异,则会影响最终的指针读数,由此也不适合用于巡检机器人在远距离多角度下拍摄的仪表图像的识别。

智能机器人能够自动实现对仪表设备的状态识别,首先必须进行仪表设备在图像中的准确定位,在这基础上,实现仪表读数的自动识别。在此,根据双针式仪表的固有特点,本文提出一种适合变电站巡检机器人工作环境与流程的双针仪表设备的识别算法。首先针对各个检测位置的双针仪表设备图像,进行设备模板化处理,并在模板库中建立仪表的min刻度和max刻度的位置信息。对于机器人实时采集的仪表设备图像,在后台服务中调取相应位置的设备模板图,利用尺度不变特征变换(SIFT)算法,在输入图像中匹配提取仪表表盘区域子图像。而后对表盘子图像进行除阴影、二值化、仪表指针骨干化处理,利用快速霍夫变换(Fast Hough Transform)检测双指针直线去除噪音干扰,定位指针精确位置和指向角度,完成指针读数。此算法经过国内某500kV智能变电站巡检机器人实地反复测试,各种仪表综合识别率超过95%,对仪表的读数具有高精度高鲁棒性,完全满足变电站现场应用的要求。图1所示为巡检机器人在此变电站执行设备检测任务时的姿态图像。

2 双指针式仪表识别算法

2.1 利用SIFT算法实现仪表定位

SIFT算法是一种基于尺度空间的、对图像缩放、旋转甚至仿射变换保持不变的图像局部特征描述算子[7]。SIFT特征是图像的局部特征,对视角变化、仿射变换、噪声也保持一定程度的稳定性,其特征具有独特性、多量性、高速性、可扩展性等特点。

图1 变电站设备巡检机器人

2.1.1 尺度空间的生成

尺度空间的图像是利用一组连续的高斯卷积核与原图像进行卷积生成的。将相邻尺度的图像相减得到一组 Difference of Gaussian(DoG)图像 D(x,y,σ),搜索局部极值点,确定备选的特征点。若一幅图像的像素强度表示为I(x,y),则高斯卷积图像为:

DoG图像可表示为:

其中 m=1,2,…s,k=21/s,D(x,y,mσ)表示相邻尺度的DoG图像。

2.1.2 SIFT特征向量的生成

通过尺度空间极值的检测,初步确定关键点位置和所在尺度。图2为DoG尺度空间的三个相邻尺度,在检测尺度空间的极值时,图中标记为叉号的像素需要与相同和相邻尺度的26个像素进行比较,以确保在尺度空间和二维图像空间均检测到极值点。

通过拟和三维二次函数以精确确定关键点的位置和尺度,同时去除低对比度的关键点和不稳定的边缘响应点,以增强匹配稳定性、提高抗噪声能力。

图2 DoG尺度空间

利用关键点邻域像素的梯度方向分布特性为每个关键点指定方向参数,使算子具备旋转不变性。

在以关键点为中心的8×8的窗口内,分成4个4×4的小块,在每4×4的小块上计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值,即可形成一个种子点(图3)。实际计算过程中,为了增强匹配的稳健性,建议对每个关键点使用4×4共16个种子点来描述,这样对于一个关键点最终形成128维的SIFT特征向量。此时SIFT特征向量已经去除了尺度变化、旋转等几何变形因素的影响,再继续将特征向量的长度归一化,则可以进一步去除光照变化的影响。

图3 特征向量

2.1.3 SIFT特征向量的匹配

生成图像的SIFT特征向量后,采用两幅图像中关键点特征向量的欧氏距离作为相似性判定度量。取源图像(模板图像)中的某个关键点,并找出其与待匹配图像中欧氏距离最近的前两个关键点,在这两个关键点中,如果最近的距离除以次近的距离小于某个比例阈值,则接受这一对匹配点。

得到两幅图像的特征点的匹配关系后,两幅图像存在这样的一个变换过程:

H 为投影变换矩阵,[x′,y′,1]T,[x,y,1]T分别为某组特征匹配点在源图像和待匹配图像上的像点坐标。由已知点的坐标,求得H矩阵,根据模板图像中的设备位置,实现待检测图像中的设备的准确定位。

经过以上的步骤,可以在巡检机器人采集的仪表设备图像中依照模板图像准确的定位仪表位置,如图4所示,虽然有个别特征点在配准的过程中有误,但可以利用特征点对的分布状态将其去除,然后根据公式(3)将特征点在模板图像中的坐标位置映射到机器人采集图像中,从而得到仅保留仪表设备区域的子图像,如图5所示。

图4 利用仪表模板图像实现在采集图像中的仪表定位

图5 仪表设备区域

2.2 仪表图像预处理

双指针式仪表设备通常具有浅色表盘深色的刻度与红黑两条指针,由于两条指针均通过表盘圆心(或由圆心起始),往往是处于上方的表针与表盘存在一定的距离,当光源没有直射表盘时,上方的表针会在表盘上留下一条阴影,如图5所示,这条阴影同样具备指针的特征:具有一定的灰度值,并且呈现为一条直线,这样就会对最终的识别结果带来一定的影响。在完成仪表表盘定位之后,首先要消除指针阴影,降低阴影对指针读数识别的影响,而后再对两条指针进行识别、提取。

2.2.1 仪表图像灰度化、除阴影与二值化

为了提取仪表指针,需要对图像进行分割,去除对提取表针有干涉影响的背景。先将彩色图像转换为灰度图像,我们采用标准的平均值法,用g表示灰度化后的灰度值:

由于上方的指针与表盘存在缝隙,当光照没有直射仪表设备时,这个指针会在表盘上留下阴影。阴影通常会对目标分割结果造成影响,带来错误的目标检测结果[8]。在这里采用数学形态学的“开”操作去除此阴影的影响。开操作一般使对象的轮廓变的光滑,断开狭窄的间断和消除细长的突出物,使用结构元素B对集合A进行开操作,表示为A莓B,定义为:

使用开操作平滑了阴影区域后,使阴影部分的灰度强度减弱,在图像二值化时可以选取合适的二值化算法分割指针与阴影。

由于仪表指针在灰度图像中具有均一值,可以用灰度图像二值化去除背景噪音而保留仪表指针的区域。图像的二值化处理就是把图像中的像素按照给定的阈值分化成黑白两种颜色。变电站的仪表通常是安置在室外,由于现场的光线变化及其他设备阴影的遮挡,使得采集的仪表图像亮度不均,有时甚至会出现“阴阳”似的表盘图像。我们使用自适应阈值算法对图像进行二值化[9]。具体步骤为:首先定义一个区域大小为(2w+1)×(2w+1)的模板,同时定义(x,y)为该模板的中心坐标,f(x,y)为中心点灰度图像的灰度值,T(x,y)为中心点二值化阈值,按照公式(6)计算各像素的阈值,按照公式(7)对灰度图像进行二值化。

其中,I(x,y)为二值化后各个像素的图像强度。

2.2.2 二值化图像的细化

二值化后的结果过滤了部分的背景噪音,消除了其对定位待识别指针的影响。为了准确的检测出指针,需要对二值化的图像进行细化处理。图像细化的本质就是寻找图形的中轴线或骨架,并以其骨架来取代该图形。细化的结果应该是一个像素宽度的线条图像,但仍能保持原图像的连通性和拓扑结构[10]。本文采用数学形态学中的击中击不中变换来细化图像,这种算法处理速度快,细化效果好[11]。基本思想是在给定系列具有一定形状的结构元素后,顺序循环的删除满足击中变换的像素。设AC是待处理图像A的补集,结构元素B由两个不相交的部分B1和B2组成,一个探测图像内部,另一个探测图像外部,即 B=B1∪B2,且 B1∩B2=Φ(空集)。 击中击不中变换定义为:

其中Θ表示形态学腐蚀运算。利用B细化A定义为:

即在A中去掉A被B击中的结果。如果我们定义一个结构元素对序列{B}={B1,B2,…,Bn},其中 Bi+1代表Bi旋转的效果,则细化也可以定义为:

这个过程是先用B1细化一遍,然后再用B2对前面结果细化一遍,如此直到用Bn细化一遍,整个过程可再重复直到没有变化产生为止,最终得到一个细化的结果。图6表示了由图5所得的仪表区域图像的预处理过程。

图6 仪表图像的预处理

2.2.3 快速Hough变换识别仪表指针

Hough变换[12]是模式识别领域中对二值图像进行直线检测的有效方法,其核心思想是点线的对偶性,通过变换将图像空间转换到参数空间中。在标准参数化方式下,图像空间中的直线表达为:

直角坐标系中平面上的任意一点对应极坐标系上的一条正弦曲线,所以同一直线上的点转换到参数空间后都有相应的一条曲线,但是这些曲线必然相交于一点,参数空间中共点的正弦曲线条数即为直角坐标系平面上共线的点数。为了找到这些点组成的直线段,将极坐标空间量化成许多累加器小格,转换的时候,图像中的每一点(xi,yi)映射到 Hough空间中的一组累加器 List(ρi,θi)中,满足以上正弦曲线方程的每一点,将使相应的所有累加器加一。统计完所有的点后,累加器最大值对应于最长的直线。

Hough变换的容错性比较好,即使预处理后指针有轻微的残缺,也能很好的检测出直线,但是Hough的计算量比较大。我们采用限定角度来缩小Hough变换范围,减少需要计算的像素点。首先,根据模板库的仪表图像定制一个指针角度的偏转范围(θmin,θmax),即仪表刻度的最小值与最大值,而后标定出模板图像的指针位置θTP。在机器人输入的采集图像中,我们把角度约束在30°以内的范围θTP±15°进行Hough变换,如果没有检测到直线,则再在此范围外检测,这样就大大的减少了Hough变换不必要的计算量。快速Hough指针检测具体步骤如下:

(1)定义一个二维数组 H[ρ][θ]作为累加器。 ρ的范围为图像矩阵对角线的距离,θ最初定义仪表图像库中对应设备的最小刻度和最大角度范围(θmin,θmax)。

(2)把 θ值局限在 θTP±15°范围内利用 Hough 变换检测指针,如果H[ρ][θ]的最大值大于长度阈值T,说明检测到了指针,如果小于阈值T,说明没有检测到指针,则再把 θ限制在(θmin,θmax)内检测。

(3)计算直线检测的结果的端点距表盘圆心的距离,保留两条最近的直线结果为仪表的双针,如图7(a)中线段所示。

(4)在完成指针检测之后,根据指针直线所在的θ 值与(θmin,θmax)的比例分别对两条指针进行仪表的读数。

图7表示了由细化后的仪表图像得到的Hough直线检测结果,以及由此所得的在仪表图像中两条指针所在的位置。

图7 仪表指针检测及结果读数

3 实际应用

某500 kV智能变电站是目前国内首次采用智能巡检机器人自动识别户外敞开式断路器、隔离开关位置状态及仪表读数的示范站。该站通过变电站监控信息一体化平台与智能机器人双向交互,实现了智能机器人代替人工进行变电站设备巡检、状态识别的任务。

在实际应用中,变电站巡检机器人对仪表设备的读数识别流程如图8所示。

图8 巡检机器人仪表设备识别流程

4 结语

由于机器人需要全天候的在室外运作,实验测试结果表明本文提出的变电站仪表设备读数检测算法具有很好的鲁棒性。在不同的光照条件下,采用的SIFT特征配准算法可以准确的在机器人采集图像中获取仪表设备的区域,“开”操作阴影平滑技术可以大大的降低由于上位指针的阴影造成的对结果的影响,而后采用改进的快速Hough直线检测算法提高了后台服务器对实时输入图像的计算能力,并且具有高度的准确性,进而可以保证变电站监控平台可以及时的获得仪表读数结果。经在国内某500 kV变电站实地运行测试统计,应用本文算法的智能巡检机器人对双指针式仪表设备的读数正确率综合统计在95%以上,完全满足该智能变电站推进无人值守的仪表设备读数自动检测识别的要求。

[1]鲁守银,钱庆林,张斌,等.变电站设备巡检机器人的研制[J].电力系统自动化,2006,30(13):94-98.

[2]周立辉,张永生,孙勇,等.智能变电站巡检机器人研制及应用[J].电力系统自动化,2011,35(19):85–88.

[3]蔡文超,于骞,王宏,等.基于快速Hough变换的圆形仪表的检测与读取[C].中国人工智能学会第 10 届全国学术年会,2003,617-622.

[4]戴亚文,王三武,王晓良.基于灰度信息的多特征模板匹配法[J].电测与仪表,2004,41(4):56-58.

[5]岳国义,李宝树,赵书涛.智能型指针式仪表识别系统的研究[J].仪器仪表学报,2003,24(4):430-431.

[6]何智杰,张彬,金连文.高精度指针仪表自动读数识别方法[J].计算机辅助工程,2006,15(3):9-12.

[7]Lowe D.Distance Image Feature from Scale-invariant Key Points[J].International Journal of Computer Vision.2004, 60(2):91-100.

[8]邓亚丽,毋立芳,李云腾.一种有效的图像阴影自动去除算法[J].信号处理,2011,27(11):1724-1728.

[9]汪海洋,潘德炉,夏德深.二维Otus自适应阈值选取算法的快速实现[J].自动化学报,2007,33(9):968-971.

[10] C.J.Hilditch.Comparison of Thinning Algorithms on a Parallel Processor[J].Image and Vision Computing.1983, 3(1):115-132.

[11]李杰,彭月英,元昌安,等.基于数学形态学的细化算法的图像边缘细化[J].计算机应用,2012,32(2):514-516.

[12] 孙丰荣,刘积仁.快速霍夫变换算法[J].计算机学报,2001,24(10):1102-1109.

猜你喜欢
读数指针仪表
◆ 仪表
仪表
读数
读数
为什么表的指针都按照顺时针方向转动
读数
读数
奔驰E260车行驶过程中仪表灯熄灭
基于改进Hough变换和BP网络的指针仪表识别
Microchip推出全新零漂移仪表放大器