一种基于目标编解码的表盘指针读数的识别方法技术

技术编号:38561475 阅读:15 留言:0更新日期:2023-08-22 21:02
本发明专利技术公开了一种基于目标编解码的表盘指针读数的识别方法,步骤为:S1:构建表盘目标检测模型和表盘读数识别模型;S2:输入实验待识别图像,使用表盘目标检测模型识别表盘和表盘角点,根据检测信息获取初步检测结果,S3:将初步检测结果中的图像中存在的多个表盘进行组装,生成一组表盘信息;S4:使用透视变换根据表盘的四个角点对表盘进行矫正;S5:通过表盘读数识别模型识别表盘读数,循环生成多个预测结果,并将循环生成的预测序列编码转成读数结果;S6:输出表盘读数。该基于目标编解码的表盘指针读数的识别方法能够直接识别表盘的指针读数,极大的简化了图像预处理和识别流程,提高了识别精度。高了识别精度。高了识别精度。

【技术实现步骤摘要】
一种基于目标编解码的表盘指针读数的识别方法


[0001]本专利技术涉及计算机视觉
,具体涉及一种基于目标编解码的表盘指针读数的识别方法。

技术介绍

[0002]人工智能技术现在已经广泛运用于教育行业,例如自动批阅中学的物理实验。物理实验的操作离不开各种仪表盘,其中包括且不限于电压表,电流表,天平刻度尺等,想要保证实验自动批阅的准确性和完备性,需要使用机器视觉技术自动识别上述表盘的指针读数。
[0003]现有表盘读数识别大多分为两类方法,分别是角度计算识别和读数直接识别,角度计算识别可以通过传统直线检测,轮廓检测,也可以通过深度学习的指针关键点检测,指针语义分割,最终计算出指针的刻度和所在位置,再利用指针和刻度位置之间的关系计算出指针的读数;读数直接识别是通过机器学习的方法,提取表盘的图像特征,然后通过分类或者回归的方法直接得到读数。
[0004]物理实验中,表盘的种类较多,格式各有不同,每个仪表盘的量程,刻度不同,指针的的关键点,外观也不同。传统方法需要针对不同的表盘设计不同的算法和参数,机器学习的方法也存在类似的问题,并且无法得到准确的指针和每一个刻度之间的关系,通过角度计算指针读数的方法无法还原真实的指针和刻度的关系,所以会存在误差。
[0005]中学物理实验场景存在着更多的挑战,会出现如下问题:光线明暗,场景复杂,表盘设备摆放角度不同,倾斜,颠倒会导致传统图像处理不具有兼容性;关键点检测,分割等方法需要标注大量的样本,标注量较大,并且模型较为复杂,不适合作为实验识别中的一个识别分支
[0006]中国专利(申请号CN 112990179 A)公开了一种基于图片处理的单指针型表盘读数自动识别方法,其实施方法中提到:将待识别图像对应的表盘矫正图像输入成熟的分类模型中,根据类别信息,确定待识别图像所对应的表盘矫正图像的指针整刻度,找到初识别相邻的两个刻度位置,分别表示为P和P2,找到指针与刻度线相交的位置P0,求取刻度点P0到P1和P2的距离,表示为L1和L2,估计指针的偏移读数为(L1/(L1+L2))*k。将初识别结果与偏移读数相加,得到最终的读数结果。上述方法虽然用到了表盘检测,但这是表盘读数识别中通用的步骤,该技术方案的步骤繁琐,需使用多个步骤进行表盘读数的识别,即分类模型找到整刻度,再用传统图像处理找到精确刻度,而传统图像处理无法适应适应复杂多变的场景,无法使用一个模型识别不同的表盘且仅限于表盘中的一个指针。
[0007]中国专利(申请号CN 115457556 A)公开了一种核电厂圆盘指针式仪表读数方法,包括以下步骤:步骤1:摄像头采集现场仪表图像;步骤2:检测图像中的仪表并分离表盘的前景和背景;步骤3:指针直线拟合;步骤4:构建参考标准系;步骤5:表计示数判读。有益效果在于:利用摄像头等图像采集设备,获取指针式仪表图像;利用深度学习等模型对仪表表盘、关键参数、指针进行了检测、识别、和提取;计算指针在表盘中的相对位置,消除角度偏
转带来的读数偏差;基于指针与刻度参考线之间的相对角度计算出当前仪表读数。该技术方案是基于欧式距离公式判断指针的起点和终点,计算指针在表盘中的相对角度位置基于最小二乘法的线性回归模型拟合指针直线,计算指针在表盘中的相对角度位置;会因为原始图片的细微偏斜对结果造成较大的误差。
[0008]因此,有必要开发一种基于目标编解码的表盘指针读数的识别方法,在满足标注简单的基础上,还可以支持复杂场景,多种设备,直接且精准的返回指针和刻度之间的关系,从而得到准确的表盘指针读数。

技术实现思路

[0009]本专利技术要解决的技术问题是提出一种基于目标编解码的表盘指针读数的识别方法,能够精准的返回指针和刻度之间的关系,从而准确的识别出表盘指针读数;用于解决物理实验中各种类型的仪表盘读数识别。
[0010]为了解决上述技术问题,本专利技术采用的技术方案是:该基于目标编解码的表盘指针读数的识别方法,具体包括以下步骤:
[0011]S1:构建表盘目标检测模型和表盘读数识别模型;
[0012]S2:输入实验待识别图像,使用表盘目标检测模型识别表盘和表盘角点,根据检测信息获取初步检测结果;
[0013]S3:将初步检测结果中的图像中存在的多个表盘进行组装,生成一组表盘信息;
[0014]S4:使用透视变换根据表盘的四个角点对表盘进行矫正;
[0015]S5:通过表盘读数识别模型识别表盘读数,循环生成多个预测结果,并将循环生成的预测序列编码转成读数结果;
[0016]S6:输出表盘读数。
[0017]采用上述技术方案,首先对于输入的图像使用表盘检测模型检测图中的表盘和表盘角点;其次,根据表盘角点和表盘直接的位置关系组装表盘信息;接着根据每个表盘的信息矫正表盘,得到没有倾斜颠倒的表盘;然后使用序列编解码网络对于表盘图像进行编码和解码;最后根据解码的结果获得表盘正确的读数。该基于目标编解码的表盘指针读数的识别方法能够精准的返回指针和刻度之间的关系,从而准确的识别出表盘指针读数。
[0018]优选地,所述步骤S1的具体步骤为:
[0019]S11:标注并制作表盘目标检测的数据集,构建表盘目标检测模型;
[0020]S12:制作表盘读数识别模型的数据集,构建基于图像特征序列编解码的神经网络的表盘读数识别模型。
[0021]优选地,在所述步骤S11中表盘标注包括表盘上角点标注和表盘下角点标注,所述表盘目标检测包括表盘检测、表盘上角点检测和表盘下角点检测;所述表盘上角点标注包括表盘左上角点标注和表盘右上角点标注,表盘下角点标注包括表盘左下角点标注和表盘右下角点标注;表盘目标检测模型采用Yolov5或Centernet或FasterRCNN;分别检测了上角点和下角点的目的是为了根据上下角点的位置关系判断表盘摆放的角度和方向,增强了对于各种识别场景的适应性;所述步骤S12中制作表盘读数识别模型的数据集时使用onehot编码将读数编码成一个序列,将表盘读数根据刻度和指针的不同将读数转化成一组不定长的读数序列编码,其中刻度所在位置表示编码0,指针所在位置表示编码1。使用的序列编解
码网络直接使用读数的数值无法很好的表示其具体值,需要将读数编码成一个序列。常用的编码包括标准化编码、索引编码、onhot编码、词向量编码,所述标准化编码指将原有数据按顺序的压缩到正态分布上,所述索引编码是将原始值转换成索引值,所述onehot编码是使用N位来表示N个状态的编码,每个值都有它独立的编码位,其中只有一位有效;所述词向量编码是将一个索引值转化成一个多维空间下的向量;针对于表盘读数识别的场景,对于每一个刻度,指针,都可以代表了一位编码,本技术方案优选使用的编码形式类似于onehot编码,但是可以根据刻度,指针的不同将读数转化成一组不定长的读数序列编码,其中刻度所在位置表示编码0,指针所在位置表示编码1。每一个表盘图片对应一个读数序列编码;上述读数序列编码的标注可以使用程序根据原始读数自动生成,无需人工输入;本步本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于目标编解码的表盘指针读数的识别方法,其特征在于,具体包括以下步骤:S1:构建表盘目标检测模型和表盘读数识别模型;S2:输入实验待识别图像,使用表盘目标检测模型识别表盘和表盘角点,根据检测信息获取初步检测结果;S3:将初步检测结果中的图像中存在的多个表盘进行组装,生成一组表盘信息;S4:使用透视变换根据表盘的四个角点对表盘进行矫正;S5:通过表盘读数识别模型识别表盘读数,循环生成多个预测结果,并将循环生成的预测序列编码转成读数结果;S6:输出表盘读数。2.根据权利要求1所述的基于目标编解码的表盘指针读数的识别方法,其特征在于,所述步骤S1的具体步骤为:S11:标注并制作表盘目标检测的数据集,构建表盘目标检测模型;S12:制作表盘读数识别模型的数据集,构建基于图像特征序列编解码的神经网络的表盘读数识别模型。3.根据权利要求2所述的基于目标编解码的表盘指针读数的识别方法,其特征在于,在所述步骤S11中表盘标注包括表盘上角点标注和表盘下角点标注,所述表盘目标检测包括表盘检测、表盘上角点检测和表盘下角点检测;所述表盘上角点标注包括表盘左上角点标注和表盘右上角点标注,表盘下角点标注包括表盘左下角点标注和表盘右下角点标注;表盘目标检测模型采用Yolov5或Centernet或FasterRCNN;在所述步骤S12中制作表盘读数识别模型的数据集时使用onehot编码将读数编码成一个序列,将表盘读数根据刻度和指针的不同将读数转化成一组不定长的读数序列编码,其中刻度所在位置表示编码0,指针所在位置表示编码1。4.根据权利要求3所述的基于目标编解码的表盘指针读数的识别方法,其特征在于,在所述步骤S2中的初步检测结果包括表盘的位置和表盘的角点的中心坐标;在所述步骤S3中图像中存在多个表盘,则根据目标检测出的表盘B,表盘上角点U,表盘下角点L,还原出每个表盘的位置信息;具体为:循环所有检测到的表盘位置,找到表盘坐标范围表盘位置中的表盘上角点和表盘下角点,将表盘B
i
,表盘上角点U
i
,表盘下角点L
i
组装成一组表盘信息BUL
i
。5.根据权利要求4所述的基于目标编解码的表盘指针读数的识别方法,其特征在于,所述步骤S4的具体步骤为:S41:获取步骤S3中的一组表盘信息BUL
i
,根据上角点U
i
和下角点L
i
的位置关系确认表盘顺时针方向排序的四个角点[[x1,y1],[x2,y2],[x3,y3],[x4,y4]];S42:将这四个角点作为源图像中待测矩形的四点坐标,使用透视变换将源图像中的表盘通过透视变换矩阵求得变换后的目标表盘图像。6.根据权利要求5所述的基于目标编解码的表盘指针读数的识别方法,其特征在于,所述步骤S42中使用透视变换将源图像中的表盘通过透视变换矩阵求得变换后的目标表盘图像的具体步骤为:首先通过透视变换取得畸变图像的一组4个角点的坐标,和目标图像的一组4个角点的坐标,再通过该两组坐标点计算出透视变换的变换矩阵,从而通过变换矩阵对源图像进行变换,实现图像校正;矫正的矩阵变换公式为:
其中,x,y为源图像的像素点的坐标,参数z等于1,X,Y,Z是透视变换矩阵计算出的结果,最终得到结果图像坐标X

,Y

;其中,X

,Y

是变换矩阵的参数,具体为:且变换矩阵的参数中的未知数通过原始坐标和目标坐标求出。7.根据权利要求6所述的基于目标编解码的表盘指针读数的识别方法,其特征在于,所述步骤S5中使用基于图像特征序列编解码的神经网络的表盘读数识别模型对表盘读数进行识别的具体步骤为:S51特征提取:使用卷积神经网络对于图像...

【专利技术属性】
技术研发人员:江人杰田博帆
申请(专利权)人:南京红松信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1