模糊图像中仪表盘修正力Snake模型检测

http://img1.qikan.com.cn/qkimages/hldx/hldx201802/hldx20180212-2-l.jpghttp://img1.qikan.com.cn/qkimages/hldx/hldx201802/hldx20180212-1-l.jpg
  摘 要:针对模糊图像中仪表盘检测准确率不高的问题,提出了一种基于修正力的改进Snake模型。首先,采用Hough变换确定模糊图像中仪表盘所在的区域。其次,以Hough变换检测到的区域边界为Snake算法的初始边界,引入修正力参数,扩大Snake算法的控制范围,调整能量函数对目标曲线的连续控制,实现模糊图像中仪表盘的精确定位。实验结果表明,基于修正力的改进Snake算法,对于模糊图像中的仪表盘检测准确率,比传统Snake算法提升近20%。
  关键词:模糊图像,仪表盘,Snake模型,准确率
  DOI:10.15938/j.jhust.2018.02.012
  中图分类号: TP391
  文献标志码: A
  文章编号: 1007-2683(2018)02-0065-05
  Abstract:In order to solve the problem that the accuracy of the dashboard detection in fuzzy images is not high, an improved Snake model based on the correction force is proposed. First, the Hough transform is used to determine the area of the dashboard in the fuzzy image. Secondly, the boundary area detected by Hough transform is the initial boundary of Snake algorithm. The correction force parameter is introduced to expand the control range of Snake algorithm, adjust the continuous control of energy function to the target curve, and achieve the precise location of the dashboard in the fuzzy image. The experimental results show that the improved Snake algorithm based on the correction force is nearly 20% better than the traditional Snake algorithm for the accuracy of the dashboard detection in the fuzzy image.
  Keywords:fuzzy image, dashboard, Snake model, accuracy rate
  0 引 言
  指针仪表在汽车领域、工业制造领域大量使用,用于反馈油气流量、压力、压强、温度等物理参数[1-2]。
  在一些特殊场合中,加工制造的过程具有一定危险性,用机器视觉的方法完成指针仪表的远程读数是一种理想的方法[3-4]。从视觉检测过程来看,要完成指针仪表的智能读数,需要对指针仪表图像進行噪声去除、前景背景分割、边缘检测、轮廓提取、刻度识别、字符识别等处理[5-10]。
  指针式仪表大多配置圆形表盘,刻度、指针都分布在表盘区域以内。因此,对于视觉检测而言,能够准确地检测到圆形表盘是完成智能读数的关键工作[11]。对于圆形轮廓的提取和定位,在视觉检测领域一般采用链码追踪、轮廓提取、Hough变换等方法[12-13]。
  指针仪表图像在工业现场中的拍摄,有时会出现模糊的情况,这是因为:成像系统有可能出现故障,成像环境中气体构成发生变化,成像过程中摄像系统被震动影响,成像区域受到运动影响[14]。
  如果指针仪表图像出现了模糊,常规的视觉检测方法就无法有效地检测到圆盘区域。Snake检测算法,通过设计力学参数控制的能量模型,在迭代过程中不断向精确的圆盘边界靠拢,即便是图像模糊时,也可以检测到圆盘边界[15-16]。Snake算法的主要不足是,模型中力的控制范围有限,边界定位的准确率较低[17]。据此,本文对Snake算法进行改进,提出了基于修正力的Snake模型,更好地适用于指针仪表的圆盘检测。
  1 Snake算法及模型
  Snake算法以最终要定位的闭合曲线为逼近目标,它可以用Z(s)=(x(s),y(s))来表达,参数s在0到1的范围上变化。参数x、y代表了目标曲线上点的坐标,参数s代表了目标曲线的弧长。
  为了达到对目标曲线定位过程的控制,Snake算法在曲线内外设置了两个能量参数。通过这两个参数的不断调整,实现在目标曲线内外两个力场的控制,进而引导目标曲线逼近目标位置。
  2 本文对Snake算法的改进处理
  在Snake算法的迭代过程中,对目标曲线的初始位置设定具有重要意义。相对准确的初始位置设定,有利于提升仪表表盘区域定位的准确性,也会加快算法的执行速度。
  所以,本文执行指针仪表圆盘区域检测之前,先用Hough变换进行初始定位。当然,因为受到图像模糊的影响,Hough变换检测到的会是一个圆环或椭圆环区域。将这个区域作为Snake算法的初始位置,会大大提升检测效果。
  Snake算法进入迭代过程后,曲线位置的更新主要受到内力和外力的控制。但在传统Snake模型中,外力的控制作用较弱。为了达到更好的定位效果,本文提出基于修正力的改进,改进处理过程如下:
  3 指针仪表表盘检测实验
  为了验证本文方法对于指针仪表表盘区域检测的有效性,展开如下的实验研究。