一种基于SVM的数字仪表显示值识别方法

分享到:

数字仪表结构简单,使用方便,已广泛应用于科学实验和生产中。为了提高检定效率、检定精度,实现自动化检定是十分必要的。由于数字仪表的检定是一项大批量、重复性的检测过程,其操作过程简单、规范,外界环境要求不高,这为其实现检定自动化提供了有利条件。近年来计算机视觉技术和数字图像处理技术的不断发展,为满足上述要求提供了可能。利用摄像机完成表盘及背景图像的采集,并将其转换成数字信号,然后利用数字图像处理技术实现关键操作,实现数字仪表的自动检定,提高了检定精度、生产效率、降低了生产成本。本文开发的仪表显示值自动实时识别系统主要包括:图像预处理、特征提取和数字识别3部分。其中数字识别是关键一环,主要采用了学习理论中的支持向量机方法。学习理论是一种研究有限样本情况下机器学习性质和规律的理论。在这一理论下发展出的一种通用的模式分类器——支持向量机,由于与传统的模式识别方法相比,具有推广能力强,能保证全局最优等优点,这使得支持向量机技术在数字识别系统中有很好的应用前景,因而引起了国内外学者的极大兴趣。支持向量机通过结构风险最小化准则和核函数方法,较好地解决了模式分类器复杂性与推广性之间的矛盾,因而也引起了模式识别领域学者的极大关注。

1 仪表示值自动识别原理
仪表显示值自动实时识别系统的流程:首先,由摄像头获取仪表显示的视频帧;然后,将视频帧进行灰度变换,二值化得到二值图像;再通过边缘检测,操作微分直方图,计算表盘水平和垂直投影,进行峰谷分析定位出数字区域,并切分出单个数字的二值图像;对单个数字的图像进行特征提取,得到一组特征;最后,将特征送入识别器进行识别。
1.1 预处理
数字仪表在检定过程中,首先要定位表盘区域,然后确定数字位置。摄像头提取图像后,经过灰度变换(见图1)和二值化(见图2),其效果将对后续的数字切分和特征提取产生直接的影响,其中二值化是图像预处理的关键环节,在实际应用中受室内灯光及仪表屏幕自身亮度等因素影响,图像中往往存在灰度分布不均和灰度突变的情况。本文采用了OTSU算法,根据最大方差二值化获得良好的二值图像,这里主要为了提取表盘区域。通过标识连通区域,连通区域的外接矩形,然后根据外接矩形的长与宽定位数字仪表的显示区域。本文采用了一个8连通区域提取算法。首先按照一定的标号规则扫描图像,得到一定数量的连通区域;然后针对同一区域内标号不一致的情况进行处理,即得到最终处理结果。

 


1.2 数字分割
表盘区域分割之后,继续分割数字区域。在实际应用中,摄像头是固定的,数字的显示区域在图像中的位置、大小等是基本相似的。本文根据数字仪表显示屏幕的特点,采用投影法找到显示屏的边框。图像中数字区域的准确定位分割是实现仪表显示值识别的重要前提。在表盘的二值图内,先通过边缘检测,利用微分直方图进行数字分割,图3为水平投影后的直方图。

 


经过水平投影将图像分割成上、中、下3部分。对中部数字区域的二值图像从上到下逐行扫描;获取到图像的水平投影图。利用行间间隔形成的水平投影间隙,即可将各数字行分割开来,如图4所示,然后提取中部截图,再对中部数字区域做垂直投影,如图5所示,计算峰谷可以将单个数字分割出来。字切割是从行切分后,得到的图像中将每一个数字分割出来,利用每行字符的垂直投影中字符之间的间隙即可将各个数字分割出来。


 

精彩活动