陈 树 王 磊
(江南大学物联网工程学院 无锡 214000)
基于机器视觉的指针式仪表检测方法*
陈树王磊
(江南大学物联网工程学院无锡214000)
针对传统指针式仪表耐久检测过程中存在的效率低,劳动强度大,精度不高等问题,论文把机器视觉和仪表检测两者融合,通过视觉实时图像的二值化、刻度轮廓提取、拟合圆、指针细化、求解指针直线方程、刻度圆环全景展开等步骤,实时读取表盘数值。实验结果表明:该算法具有鲁棒性好,准确率高,实时性强等优点。
汽车仪表; 指针检测; 最小二乘; 图像细化; Hough变换
Class NumberTP317.4
汽车仪表的耐久测试是汽车整体安全测试中的一个关键部分。早期的指针式仪表耐久检测主要是通过人眼目测,这种检测方法效率低、精度不高且劳动强度大,亟待采用机器视觉技术改变现状。机器视觉就是用机器代替人眼来做测量和判断,机器视觉和仪表检测的结合可以提高检测效率和自动化程度。
目前,一些学者在指针式仪表机器视觉检测方法方面做了一些研究和应用。这些研究工作主要是基于最小二乘的方法和Hough变换的方法。张冀等在提取到仪表指针后,运用二值化、细化和Hough变换识别出指针角度[1]。徐洋等采用一种改进的概率霍夫变换与RGB颜色通道相结合的方法,实现汽车仪表的指针检测[2]。张远辉等利用仪表盘指针的颜色特征信息提取指针,用最小二乘法拟合指针中心轴直线,通过腐蚀膨胀提取仪表刻度,计算指针与刻度的偏差,从而判断仪表是否合格[3]。周泓等将RGB模型下的表盘图像转到HSI模型以消除阴影影响,并利用色调和饱和度分量作为特征参数进行图像分割,并采用Hough变换检测目标;分别计算出指针指向主要刻度线时相对于零刻度线的偏转角,并与相对应的标准偏转角比较得出结果[4]。上述方法大都利用指针偏转的角度计算读数,一旦仪表位置发生偏转,就会导致读数误差增大。本文在利用K-Means聚类算法提取刻度轮廓基础上,用刻度轮廓质心拟合圆,将刻度圆环全景展开,并提取指针进行细化和用Hough变换检测出直线方程,最后通过直线和圆环交点识别读数。
本文指针式仪表检测算法主要步骤包括刻度轮廓提取拟合圆、指针轮廓提取检测直线、计算圆与直线的交点进行读数,如图1所示。常用的刻度轮廓提取方法主要是根据设置轮廓的大小阈值进行过滤,但是这种方法需要根据图像先验知识找出合适的阈值,本文使用K-Means聚类算法提取刻度轮廓更加灵活,容错性更好。在确定表盘圆心问题上,常用方法是先采集多张指针位置不同的图片,每张图片均通过 Hough 变换确定本幅图的指针直线,然后每两条直线确定出一个交点。最后统计重合次数最多的点,即为指针不动端的位置。这种方法需要大量的计算,实时性不高。本文提取刻度轮廓质心后,用最小二乘法拟合圆并确定圆心,这种方法精确度高,实时性好。在识别读数阶段,常用方法是直接计算刻度与指针直线的距离,本文先计算拟合圆和直线的交点,并转化为弧度与刻度圆环展开后进行比较,这种方法更加直观。
图1 算法整体流程图
算法关键在于刻度拟合圆的精确度和指针直线提取的精确度。要得到精确的拟合圆需要提取的刻度轮廓质心是准确的,没有误提取的轮廓质心,否则用最小二乘法拟合圆时会引起误差,本文结合刻度轮廓自有的特征和刻度轮廓之间的几何特征用K-Means聚类算法找出数量最多的轮廓类别即为需要提取的刻度轮廓。为了得到精确的指针直线,本文根据检测仪表盘图像中指针彩色图像中B通道的分量值比R,G通道的分量值高,报警灯是R通道的分量值比B,G通道的分量值高,为了去除报警灯的影响,可以提取彩色图像中B通道的分量值进行指针轮廓提取。
2.1刻度轮廓提取
刻度轮廓提取之前,首先进行预处理,将采集到图像进行矩形ROI分割,只对表盘区域进行处理,然后进行二值化,二值化阈值选取非常重要,既要保留指针、刻度的完整性,也要消除一些杂光的影响,因此需要根据实际情况选择合适的二值化阈值,图2为阈值取值为15时二值化的效果。刻度的提取决定了拟合圆的准确度,因此提取可靠的刻度质心是关键步骤,常用的是设定阈值过滤的方法,本文使用的是K-Means聚类。
图2 二值图像
2.1.1K-Means聚类算法
聚类特征选取直接决定K-Means聚类算法提取刻度轮廓的效果。本文对三组特征选取情况进行对比分析
1)矩形框长、矩形框宽、矩形框内部像素的均方差
文献[5]中使用选取外边界矩形框长、宽和矩形框内部像素的均方差作为聚类特征来提取刻度。图3是用此特征聚类的总体效果,横坐标为矩形框长度,纵坐标为矩形框宽度,其中每种颜色的点代表同一类轮廓,可以看出簇内的紧密度和簇间的分离度不是很好,图4是局部效果,数字标注表示矩形框内部像素的均方差。这种方法的缺点是误提取了一些非刻度轮廓,刻度轮廓提取不准确时需要进一步处理,本文选取聚类数量最多的类型为刻度轮廓。
图3 总体效果
图4 局部效果
根据图像先验知识,本文中聚类K值设置为10,聚类3次,取效果最好的那次,采用Arthur & Vassilvitskii在2007年发表的K-means++: The Advantages of Careful Seeding中的方法获取初始化种子点。经过聚类算法提取出来的刻度轮廓,如图5所示。
图5 刻度轮廓
2)矩形框长、矩形框宽、轮廓最近距离
为了克服其缺点,本文改进其特征,将矩形框内部像素的均方差改为为轮廓与最近轮廓的质心距离,计算矩形边界框,得到长度和宽度,质心计算公式为
式中:xc、yc为质心,xi、yi为轮廓像素点的横坐标和纵坐标。
根据质心公式得到每个轮廓的质心,然后计算得到每个轮廓与最近轮廓的质心距离。
由图6可以看出,加入轮廓之间的几何特征之后,刻度聚类结果的紧密度和分离度都比原始方法好。图7是聚类局部效果,数字标注表示质心距离。经过改进的特征进行聚类提取出来的刻度轮廓如图8所示。
3)最小外接圆半径、轮廓最近距离
使用长度、宽度和轮廓最近距离三个特征进行聚类在聚类结果上可以得到满意的效果, 本文继续改进其聚类特征,从轮廓特征中选择两个特征进行聚类,这样可以提高效率和降低特征的维数。第1个特征是计算每个轮廓的最小外接圆半径。第2个特征为轮廓与最近轮廓的质心距离。图9为聚类结果,横坐标为最小外接圆半径,纵坐标为最近距离,簇内的紧密度和簇间的分离度都比较好,可以有效的区分开刻度与非刻度轮廓,图10为聚类局部效果,图11为使用本方法提取的刻度轮廓。
图6 总体效果
图7 局部效果
图8 刻度轮廓
2.1.2拟合圆和刻度圆环全景展开
提取刻度得到刻度轮廓质心后,下一步是用质心拟合圆,得到圆心坐标和半径,本文用最小二乘法拟合圆[6]。之后使用全景展开算法将刻度圆环展开为矩形图,这里使用快速还原算法[7]实现展开,此算法用来将刻度图像水平展开。图12是对包含刻度的圆环进行全景展开的结果,展开后的刻度图像又平又直,用来提取刻度轮廓进一步处理。由图像可知,刻度之间的距离是相等的,因此刻度轮廓质心横坐标与轮廓序号是满足直线方程,公式如下:
Xi=kNi+b(i=1,…,M)
其中X表示刻度轮廓质心横坐标,N表示序号
图9 总体效果
图10 局部效果
图11 刻度轮廓
1) 当提取轮廓数量为M+1个,指针顶端轮廓夹杂在刻度轮廓中间,需要在M+1个轮廓中找出指针顶端轮廓,并去除掉。在这M+1个质心横坐标中依次删除其中一个,取剩下的M个坐标(X1,…,XM)与序号N(1,…,M)用最小二乘法进行直线拟合,拟合后计算实际值与拟合方程的均方差E1,…,EM+1,M+1种情况中,取均方差最小值对应的M个轮廓坐标为需要提取的刻度。
2) 当提取轮廓为M个,指针顶端轮廓与刻度融合,先判断指针顶端轮廓是否影响了融合的刻度,将X1,…,XM与序号N(1,…,M)用最小二乘法拟合直线方程,并计算出均方差Et,根据以下公式:Et≤th时,其中th为实际值与拟合直线的均方差,判定为指针顶端轮廓未对刻度轮廓造成影响,完全融合,所以不进行去除操作。Et>th时,对于M个坐标(X1,…,XM)依次删除其中一个,并在序号N(1,…,M)中删除对应的序号,剩下的坐标和序号进行直线拟合,计算出均方差,取均方差最小值对应的M-1个轮廓坐标为需要保留的刻度。根据M-1个轮廓坐标,计算出刻度间距离平均值lib。并在删除的刻度位置上根据平均值补上缺失刻度横坐标。
2.2指针直线提取
选取彩色图像B通道的分量值进行轮廓提取,选择合适的二值化阈值以消除报警灯对指针直线提取的影响,提取指针直线对后面的读数工作影响重大,稳定的提取指针直线决定了读数的精确性,下面主要研究了两种直线提取方法。
2.2.1最小距离法拟合直线
文献[7]中使用最小距离直线拟合方法拟合各刻度中心直线,使用刻度拟合直线相交点对拟舍直线进行最小二乘修正,提高刻度中心直线的拟合精度[8~9],但是这种方法只能适用于y=kx+b形式的直线方程,在面对平行于Y轴形式的直线时,拟合的直线方程不是本文想要的,本文在其基础上改进了用于Ax+By+C=0形式直线方程的拟合方法,并与细化和Hough变换的方法进行比较分析。
设直线的一般式方程为Ax+By+C=0,点集(x(n),y(n))到这条直线的距离为d(n):
设距离的平方和为F(A,B,C)
设n的取值为1≤n≤r,r为坐标点总数。根据F(A,B,C)对A,B,C的偏导数等于0可以得到A,B,C的值。
2.2.2细化+Hough变换
将图像先进行细化处理,本文采用的是“Zhang并行快速细化算法”[10],标准Hough算法(SHT)提出之后,为了降低算法的复杂性、提高SHT算法的效率, 提出了许多改进算法, 如概率霍夫变换算法( PPHT)[11]等。其特点第一是采用随机取点映射的方法,最明显的直线特征有望被最早检测到,第二是只有一小部分待处理点完成了映射, 其余的点作为被检测到的直线上的点从待处理点集中去除而不必进行向参数空间的映射, 减少了算法的运算时间,因为PPHT算法具有的这些优点, 在汽车仪表指针检测中, 本文应用 PPHT算法来进行直线的提取。
2.3读数识别
根据前面拟合的圆方程和直线方程求出它们的交点。并根据交点与指针的位置关系去除指针尾端与圆的一个交点。指针正方向与圆交点坐标为(x1,y1),计算出交点与圆心这条直线的斜率,根据斜率计算出倾斜角,然后转换为以图像底端为0度,顺时针的角度,公式如下:
斜率为k,则
其中A,B为拟合圆的圆心坐标
倾斜角为:th=arctan(k)
转换角度为thet:
根据弧长公式计算出弧长:arclen=thet*PI*R/180,其中R为拟合圆的半径。
得到的刻度轮廓质心横坐标为(X1,…,XM), 将X坐标与弧长进行比较得出读数,公式如下:
其中jg为读数,scale为刻度的分度值,lib为刻度质心横坐标距离平均值,arclen为交点的弧长。
采集指针分别指向指定刻度的图像,测试条件为WIN7 32位系统,VS2010开发环境,CPU为3.6GHz,内存为4GB。由表1可知,刻度提取算法中,K-Means和阈值法不影响后面的读数,区别主要在于K-Means不需要设置过滤阈值,具有更好的容错性,指针直线提取算法中,最小距离法的平均误差为13.34(r/min),细化和Hough变换方法的平均误差为8.6(r/min),可见后者比前者的精度要高,因此本文选用K-Means+细化+Hough变换的方法进行读数识别。
表1 指针读数检测数据
本文设计的指针仪表检测方法,比传统测量的方法误差要小 。在实际汽车仪表盘检测系统中应用表明,该算法准确率高,实时性强。
[1] 张冀,王俊宏,尉迟明,等.基于计算机视觉的汽车仪表指针检测方法[J].计算机工程与科学,2013,35(3):134-139.
ZHANG Ji,WANG Junhong,YU Chiming.Novel automobile meter pointer detection algorithm based on Computer vision[J].Computer Engineering& Science,2013,35(3):134-139.
[2] 徐洋,张清蓉.基于图像处理的汽车指针仪表检测研究[J].计算机应用与软件,2014,31(8):219-221.
Xu Yang,Zhang Qingrong.Research on image processing-based automotive pointer instruments detection[J].Computer Applications and Software,2014,31(8):219-221.
[3] 张远辉,张鼎,许昌,等.指针式仪表总体最小二乘图像校验算法[J].自动化仪表,2015,5(5):75-79.
Zhang Yuanhui,Zhang Ding. Image Calibration Algorithm Based on Total Least Squares Method for Pointer Instruments[J]Process Automation Instrumentation,2015,5(5):75-79.
[4] 周泓,徐海儿,耿晨歌.基于HSI模型和Hough变换的指针式汽车仪表自动校验[J].浙江大学学报:工学版,2010,44(06):1108-1112.
ZHOU Hong,XU Haier,Automatic checking of pointer Automotive dashboard based on HSI model and Hough Transformation[J].Journal of Zhejiang University(Engineering Science),2010,44(6):1108-1112.
[5] 钟贤德.基于图像处理的仪表功能检测系统[D].哈尔滨:哈尔滨工业大学,2013.
Zhong Xiande. Instrument Function Detecting System Based on image processing[D]. Harbin: Harbin Institute of Technology,2013.
[6] 刘志刚,鲍加贞,汤时虎.基于VC的最小二乘拟合圆在LAMOST中的应用[J].现代制造工程,2008,1(1):94-96.
Liu Zhigang,Bao Jiazhen,Tang Shihu.Application of least squares fitting circle based on VC in LAMOST[J].Modern Manufacturing Engineering,2008,1(1):94-96.
[7] 龚小林,田向阳.全景视觉还原算法分析与应用[J].计算机技术与发展,2014,6(6):233-235.Gong Xiaolin,Tian Xiangyang.Analysis and Application of Resuming Algorithm of Panoramic Vision[J].Computer Technology Development,2014,6(6):233-235.
[8] 李学聪,汪仁煌,刘洪江.指针表刻度中心直线拟合方法研究[J].计算机工程与设计,2012,33(7):2726-2729.
Li Xuecong,Wang Renhuang,Liu Hongjiang.Research on fitting method of pointer meters scales center straight-line[J].Computer Engineering And Design,2012,33(7):2726-2729.
[9] 吴一全,谢静.基于特征点最小距离拟合的文档图像倾斜检测[J].光学技术,2009,35(1):152-155.
WU Yiquan,Xie Jing.Document image skew detection Based on the least distance fitting of the feature points.
[10] Zhang T Y, Suen C Y. A fast parallel algorithm for thinning digital patterns[J]. Communications of the Acm,1984,27(3):236-239.
[11] Galamhos C, Matas J, Kittler J. Progressive Probablistic Hough Transform for line detection[C]//Proceedings of Computer Vision and Pattern Recognition,1999:23-25.
Method for Testing of Pointer Instrument Based on Machine Vision
CHEN ShuWANG Lei
(School of Internet of Things , Jiangnan University, Wuxi214000)
Focusing on the problem of low efficiency,high labor intensity,low accuracy in traditional pointer instrument durability test.In this paper, the machine vision and instrument detection are combined.Through the image of binarization, scale contour extraction, fitting circle, pointer refinement, the solution of the linear equation of the pointer, panoramic expansion of the scale ring and other steps,read the dial value in real time.Experimental results show that the algorithm has the advantages of good robustness, high accuracy, good real-time performance and so on.
automobile meter, pointer detection, least aquares method, image thinning, hough transform
2016年3月5日,
2016年4月27日
江苏省六大人才高峰基金(编号:2012-WLW-006)资助。
陈树,男,博士,副教授,研究方向:过程控制与优化、现场总线及控制技术、无线传感器网络及通信。王磊,男,硕士,研究方向:图像处理。
TP317.4DOI:10.3969/j.issn.1672-9722.2016.09.041