基于机器视觉的指针式航空仪表图像处理设计
2022-12-03宋中建周章勇国营芜湖机械厂
文/周 虎 宋中建 周章勇(国营芜湖机械厂)
目前,在航空仪表的维修中,对指针式仪表读数或刻度指示判别都是由人工完成的。维修人员通过人眼判读指针的位置、记录各种仪表的数据来反映检测产品的工作运行状态。然而指针式航空仪表具有多样性,对测量精度要求较高,维修存在不确定性,而且对人眼判读所得的数据存储和管理困难,不便于后期数据分析和故障预测。
随着机器视觉的发展和对航空仪表自动化检测要求的提高,采用图像识别技术对指针式仪表示数进行自动识别,对于实现航空仪表的自动化检测和智能分析具有重要作用。针对指针式仪表示数的自动识别,其核心技术包括表盘区域检测、指针提取与检测读数计算两部分。实现流程主要有两种模式,一种是传统方式,先检测表盘区域,然后进行指针线的提取,再计算读数;另一种是传统与深度学习相结合的方式,检测和识别合二为一,在检测到表盘区域的同时提取指针、数字刻度线等关键信息的位置,再计算读数。本方案拟采用传统与深度学习相融合的方式,针对某型指针式航空电压表设计一套自动化检测系统。
一、系统总体设计
检测系统采用工业相机采集仪表工作画面图像,通过视觉算法编程开发的智能检测软件对图像进行处理,得出测量数据结果后,进行判断和输出。系统主要由图像采集、图像参数处理、信息输出和外部通信控制4 部分组成。系统总体架构如图1 所示。
图1 系统总体架构
二、图像处理软件设计
系统软件通过工业相机采集被检测仪表画面图像,使用HALCON 和C++混合编程开发的图像处理软件对采集到的图像进行处理,得出测量数据结果后,根据被检测项目的目标进行判断和输出。软件主要由通信控制、图像采集与显示、图像预处理、图像处理、解析处理结果、显示与存储、检测模板等部分组成。
算法实现部分,分为输入、中间处理、输出3 部分。从工业相机设备获取图像,作为图像输入,这一步也是图像处理的第一步输入。Halcon 图像处理,包括图像预处理、图像增强、图像分割、特征提取、图像理解等,是中间的处理部分,这一部分主要作为算法代码实现,导出为C++代码。
交互实现部分,主要是为了方便用户操作与实用软件,这部分不涉及图像处理算法,主要是用Qt 框架,用于实现用户界面与数据表现。
三、图像处理算法设计
航空电压表为典型的指针式仪表,静态数据读取包含仪表表盘区域的检测和仪表关键点的检测两大部分。其中表盘区域的检测采用基于深度学习的算法,在检测到仪表区域的基础上,针对指针式仪表的识别问题,设计了两种电压表数据读取的算法。
1.基于深度学习的关键点检测算法
根据电压表的结构特点,采用基于深度学习的关键点检测实现对电压表的数据读取,通过检测表盘的3 类关键点(仪表中心点、指针末端点、数字刻度关键点)来计算指针相对于数字刻度关键点的偏移角度,然后由相对偏移角度来计算读数。定义的3 类关键点如图2 所示,其中红色方块是仪表中心点,绿色三角是指针末端点,蓝色圆点是数字刻度关键点。
图2 电压表关键点检测定义
采用传统图像处理算法来检测刻度关键点的位置需要人工设计特征,如指针和刻度线的几何形状、颜色等特征。这种算法适应性较弱,同时检测效果容易受到光照、拍摄角度等因素的影响,导致检测算法失效。而采用深度学习技术,由于神经网络结构的深度和广度可以达到很大,理论上可以拟合到任意函数,有很强的特征提取和学习能力。
2.基于SURF 特征点的仪表示数读取算法
航空电压表盘面的图像相对简单,为了降低读数算法的复杂度,优化算法实时性,本方案提出了基于SURF 特征点匹配的指针式仪表示数自动读取算法,包括仪表关键点位置的检测和指针线的提取。通过SURF 特征点匹配的方式来检测仪表图像的关键点位置,关键点的定义如图3 所示,其中红色方块是仪表中心点,绿色三角是指针末端点,蓝色圆点是数字刻度关键点。通过对模板图像和待识别图像分别提取SURF 特征点,然后对特征点进行匹配,计算出单应性变换矩阵,即可将模板图像的关键点位置映射至待测图像上,为进一步的读数识别奠定基础。
图3 仪表示数读取投影计算示意图
在检测到仪表表盘的关键点后,就需要对表盘中的指针线进行检测提取,可以根据中心点的位置采用中心投影法来检测指针。在得到指针式仪表的数字刻度关键点和指针的位置后,即可根据指针相对于数字刻度关键点的偏转角度计算读数,具体计算过程如下:
设仪表的量程为(S1,S2),共有n个数字刻度关键点,相对于仪表中心点的偏转角度分别为m0,m1,m2,…,mn-1,指针的偏转角度为α,位于mp和mq之间。示意图如图4 所示,仪表读数的计算公式如下:
3.基于关键点检测的读取网络
基于关键点检测的读取网络架构如图4 所示。主干网络采用全卷积的神经网络来提取特征,残差网络(ResNet)在图像特征提取方面是最常用的网络结构,由一系列残差块组成,它解决了深层次神经网络带来的精度退化现象。基于残差网络的主干网络与CenterNet 类似,在ResNet 后加3 层动态卷积和转置卷积就可以得到高分辨率的热值图,提高预测关键点位置的精度。
图4 残差主干网络架构图
热值图的训练过程与CornerNet 类似,对于每一个仪表关键点采用未归一化的二维高斯函数分布作为标签值。其中(x,y)为关键点附近位置点的坐标,(xt,yt)为真实关键点的坐标,σp为标准差。经过验证发现σp=1 时效果最好。
四、结语
本文针对传统的指针式航空仪表检测中存在的主要问题,提出了一种基于机器视觉的图像处理设计方案,使用HALCON 和C++混合编程开发了一套图像处理软件,采用基于深度学习的关键点检测算法、基于SURF 特征点的仪表示数读取算法和基于关键点检测的读取网络,实现了仪表的读数识别,并进行了充分的效果验证,保证了某型指针式航空电压表自动化检测、数据采集和存储项目的可行性。项目的顺利实施,对工厂在机器视觉技术应用、设备自动化检测和数据采集应用方面具有重要应用价值和推广前景。