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

文档序号:35200831发布日期:2023-08-22 05:43阅读:27来源:国知局
一种基于目标编解码的表盘指针读数的识别方法与流程

本发明涉及计算机视觉,具体涉及一种基于目标编解码的表盘指针读数的识别方法。


背景技术:

1、人工智能技术现在已经广泛运用于教育行业,例如自动批阅中学的物理实验。物理实验的操作离不开各种仪表盘,其中包括且不限于电压表,电流表,天平刻度尺等,想要保证实验自动批阅的准确性和完备性,需要使用机器视觉技术自动识别上述表盘的指针读数。

2、现有表盘读数识别大多分为两类方法,分别是角度计算识别和读数直接识别,角度计算识别可以通过传统直线检测,轮廓检测,也可以通过深度学习的指针关键点检测,指针语义分割,最终计算出指针的刻度和所在位置,再利用指针和刻度位置之间的关系计算出指针的读数;读数直接识别是通过机器学习的方法,提取表盘的图像特征,然后通过分类或者回归的方法直接得到读数。

3、物理实验中,表盘的种类较多,格式各有不同,每个仪表盘的量程,刻度不同,指针的的关键点,外观也不同。传统方法需要针对不同的表盘设计不同的算法和参数,机器学习的方法也存在类似的问题,并且无法得到准确的指针和每一个刻度之间的关系,通过角度计算指针读数的方法无法还原真实的指针和刻度的关系,所以会存在误差。

4、中学物理实验场景存在着更多的挑战,会出现如下问题:光线明暗,场景复杂,表盘设备摆放角度不同,倾斜,颠倒会导致传统图像处理不具有兼容性;关键点检测,分割等方法需要标注大量的样本,标注量较大,并且模型较为复杂,不适合作为实验识别中的一个识别分支。

5、中国专利(申请号cn 112990179 a)公开了一种基于图片处理的单指针型表盘读数自动识别方法,其实施方法中提到:将待识别图像对应的表盘矫正图像输入成熟的分类模型中,根据类别信息,确定待识别图像所对应的表盘矫正图像的指针整刻度,找到初识别相邻的两个刻度位置,分别表示为p和p2,找到指针与刻度线相交的位置p0,求取刻度点p0到p1和p2的距离,表示为l1和l2,估计指针的偏移读数为(l1/(l1+l2))*k。将初识别结果与偏移读数相加,得到最终的读数结果。上述方法虽然用到了表盘检测,但这是表盘读数识别中通用的步骤,该技术方案的步骤繁琐,需使用多个步骤进行表盘读数的识别,即分类模型找到整刻度,再用传统图像处理找到精确刻度,而传统图像处理无法适应适应复杂多变的场景,无法使用一个模型识别不同的表盘且仅限于表盘中的一个指针。

6、中国专利(申请号cn 115457556 a)公开了一种核电厂圆盘指针式仪表读数方法,包括以下步骤:步骤1:摄像头采集现场仪表图像;步骤2:检测图像中的仪表并分离表盘的前景和背景;步骤3:指针直线拟合;步骤4:构建参考标准系;步骤5:表计示数判读。有益效果在于:利用摄像头等图像采集设备,获取指针式仪表图像;利用深度学习等模型对仪表表盘、关键参数、指针进行了检测、识别、和提取;计算指针在表盘中的相对位置,消除角度偏转带来的读数偏差;基于指针与刻度参考线之间的相对角度计算出当前仪表读数。该技术方案是基于欧式距离公式判断指针的起点和终点,计算指针在表盘中的相对角度位置基于最小二乘法的线性回归模型拟合指针直线,计算指针在表盘中的相对角度位置;会因为原始图片的细微偏斜对结果造成较大的误差。

7、因此,有必要开发一种基于目标编解码的表盘指针读数的识别方法,在满足标注简单的基础上,还可以支持复杂场景,多种设备,直接且精准的返回指针和刻度之间的关系,从而得到准确的表盘指针读数。


技术实现思路

1、本发明要解决的技术问题是提出一种基于目标编解码的表盘指针读数的识别方法,能够精准的返回指针和刻度之间的关系,从而准确的识别出表盘指针读数;用于解决物理实验中各种类型的仪表盘读数识别。

2、为了解决上述技术问题,本发明采用的技术方案是:该基于目标编解码的表盘指针读数的识别方法,具体包括以下步骤:

3、s1:构建表盘目标检测模型和表盘读数识别模型;

4、s2:输入实验待识别图像,使用表盘目标检测模型识别表盘和表盘角点,根据检测信息获取初步检测结果;

5、s3:将初步检测结果中的图像中存在的多个表盘进行组装,生成一组表盘信息;

6、s4:使用透视变换根据表盘的四个角点对表盘进行矫正;

7、s5:通过表盘读数识别模型识别表盘读数,循环生成多个预测结果,并将循环生成的预测序列编码转成读数结果;

8、s6:输出表盘读数。

9、采用上述技术方案,首先对于输入的图像使用表盘检测模型检测图中的表盘和表盘角点;其次,根据表盘角点和表盘直接的位置关系组装表盘信息;接着根据每个表盘的信息矫正表盘,得到没有倾斜颠倒的表盘;然后使用序列编解码网络对于表盘图像进行编码和解码;最后根据解码的结果获得表盘正确的读数。该基于目标编解码的表盘指针读数的识别方法能够精准的返回指针和刻度之间的关系,从而准确的识别出表盘指针读数。

10、优选地,所述步骤s1的具体步骤为:

11、s11:标注并制作表盘目标检测的数据集,构建表盘目标检测模型;

12、s12:制作表盘读数识别模型的数据集,构建基于图像特征序列编解码的神经网络的表盘读数识别模型。

13、优选地,在所述步骤s11中表盘标注包括表盘上角点标注和表盘下角点标注,所述表盘目标检测包括表盘检测、表盘上角点检测和表盘下角点检测;所述表盘上角点标注包括表盘左上角点标注和表盘右上角点标注,表盘下角点标注包括表盘左下角点标注和表盘右下角点标注;表盘目标检测模型采用yolov5或centernet或fasterrcnn;分别检测了上角点和下角点的目的是为了根据上下角点的位置关系判断表盘摆放的角度和方向,增强了对于各种识别场景的适应性;所述步骤s12中制作表盘读数识别模型的数据集时使用onehot编码将读数编码成一个序列,将表盘读数根据刻度和指针的不同将读数转化成一组不定长的读数序列编码,其中刻度所在位置表示编码0,指针所在位置表示编码1。使用的序列编解码网络直接使用读数的数值无法很好的表示其具体值,需要将读数编码成一个序列。常用的编码包括标准化编码、索引编码、onhot编码、词向量编码,所述标准化编码指将原有数据按顺序的压缩到正态分布上,所述索引编码是将原始值转换成索引值,所述onehot编码是使用n位来表示n个状态的编码,每个值都有它独立的编码位,其中只有一位有效;所述词向量编码是将一个索引值转化成一个多维空间下的向量;针对于表盘读数识别的场景,对于每一个刻度,指针,都可以代表了一位编码,本技术方案优选使用的编码形式类似于onehot编码,但是可以根据刻度,指针的不同将读数转化成一组不定长的读数序列编码,其中刻度所在位置表示编码0,指针所在位置表示编码1。每一个表盘图片对应一个读数序列编码;上述读数序列编码的标注可以使用程序根据原始读数自动生成,无需人工输入;本步骤将原始读数转化成读数编码,原始读数只能展示读数信息,无法展示指针刻度和其余刻度的关系,也无法表达总刻度数量,读数编码不仅解决了上述问题,而且编解码可以表示不定长的刻度,解决了分类模型中类别固定的问题,可以识别不同长度的刻度。

14、优选地,在所述步骤s2中的初步检测结果包括表盘的位置和表盘的角点的中心坐标;在所述步骤s3中图像中存在多个表盘,则根据目标检测出的表盘b,表盘上角点u,表盘下角点l,还原出每个表盘的位置信息;具体为:循环所有检测到的表盘位置,找到表盘坐标范围表盘位置中的表盘上角点和表盘下角点,将表盘bi,表盘上角点ui,表盘下角点li组装成一组表盘信息buli。

15、优选地,所述步骤s4的具体步骤为:

16、s41:获取步骤s3中的一组表盘信息buli,根据上角点ui和下角点li的位置关系确认表盘顺时针方向排序的四个角点[[x1,y1],[x2,y2],[x3,y3],[x4,y4]];

17、s42:将这四个角点作为源图像中待测矩形的四点坐标,使用透视变换将源图像中的表盘通过透视变换矩阵求得变换后的目标表盘图像。

18、优选地,所述步骤s42中使用透视变换将源图像中的表盘通过透视变换矩阵求得变换后的目标表盘图像的具体步骤为:首先通过透视变换取得畸变图像的一组4个角点的坐标,和目标图像的一组4个角点的坐标,再通过该两组坐标点计算出透视变换的变换矩阵,从而通过变换矩阵对源图像进行变换,实现图像校正;矫正的矩阵变换公式为:

19、

20、其中,x,y为源图像的像素点的坐标,参数z等于1,x,y,z是透视变换矩阵计算出的结果,最终得到结果图像坐标x′,y′;其中,x′,y′是变换矩阵的参数,具体为:

21、

22、且变换矩阵的参数中的未知数通过原始坐标和目标坐标求出。

23、优选地,所述步骤s5中使用基于图像特征序列编解码的神经网络的表盘读数识别模型对表盘读数进行识别的具体步骤为:

24、s51特征提取:使用卷积神经网络对于图像关键特征进行提取,获得图像关键特征;

25、s52特征序列化:将图像关键特征从二维图像特征转为一维序列特征;

26、s53特征解码:使用循环神经网络生成表盘读数编码,再将表盘读数编码还原为准确的表盘指针读数。

27、一般的表盘读数识别采用的是全连接分类或者回归表盘读数,分类模型因为类别固定,无法识别不同类别量程刻度的表盘;回归模型是将表盘特征通过全连接层直接回归成表盘读数,该方法只能回归一个简单的值,无法准确表示指针和刻度之间的关系,误差较大;本技术方案使用特征序列编解码的神经网络,将指针和刻度之间的关系转化成一组序列编码,该编码可以准确的表示刻度数量,指针位置,可以同时识别多种量程表盘,多个指针的表盘,应用范围广泛。

28、优选地,所述步骤s51中在卷积神经网络基础上加入带有空间注意力的残差卷积神经网络,从而该卷积神经网络架构为:在源图像使用一系列的卷积特征提取生成的特征图f上,特征图f的大小为[n,h,w,c],其中c表示特征图的通道数,h,w分别表示特征图的高和宽,然后对于特征图分别使用通道维度的最大池化和平均池化,获取两个新的大小为[n,h,w,1]的特征图f1和f2,将两个特征图堆叠在一起,形成新的大小为[n,h,w,2]的特征图f3,对特征图f3进行卷积操作和sigmoid空间权重归一化操作,生成[n,h,w,1]大小的空间注意力权重w1,将空间注意力权重w1和原始的特征图f相乘,生成空间注意力特征图f5,再将和原始的特征图f进行对应权值相加,最终生成带有通道注意力的残差特征图f6。

29、优选地,所述步骤s52的具体步骤为:将卷积神经网络的特征图f6加入位置编码pe中,然后将加入了位置编码的特征图f6转换成[n,h*w,c]大小的序列特征其中,c表示特征图的通道,h*w表示序列特征的长度,h,w分别为原始的特征图f6的高宽;位置编码是将图像中的表盘的位置信息加入到特征图f6中,使特征图f6从二维转换成一维序列之后位置信息不丢失;位置编码pe的计算公式为:

30、

31、

32、其中,pet表示在t位置的位置编码;表示这个位置向量里的第i个元素;i表示特征维度的顺序位置;wi表示的是当前特征的第i个元素。

33、优选地,在所述步骤s53中使用基于注意力的循环神经网络对结果进行解码,具体为:

34、s531:对解码器的第一个输入为sos,表示开始解码,对于第t个时间步,将输入内容xt和上一个解码器的隐藏层ht-1的内容进行输入到循环神经网络进行计算,得到当前解码器的隐藏层ht,将隐藏层ht和编码生成的特征序列进行关联性计算得到关联性向量et,关联性向量et的计算公式为:

35、

36、其中,wa和是ht和的加权参数;

37、s532:接着对关联性向量et进行softmax操作将其标准化得到注意力权重at,softmax操作的公式为:

38、

39、其中,atj表示特征序列中的第j个元素的注意力权重,etj表示特征序列中的第j个元素和ht的关联性向量;将注意力权重at和特征序列进行注意力加权计算得到注意力上下文向量ct,注意力加权计算的公式为:

40、

41、其中,hi表示特征序列的的第i个元素,ati表示注意力权重at的第i个权重;

42、s533:然后将上下文向量ct和当前解码器隐藏层ht拼接在一起,形成含有特征序列注意力的隐藏层向量最后对于隐藏层向量使用神经网络进行softmax操作得到当前时间预测结果yt∈{0,1,eos},0,1,eos分别表示刻度、指针和结束。

43、与现有技术相比,本发明具有的有益效果为:

44、(1)该基于目标编解码的表盘指针读数的识别方法创新在于对于表盘中读数的识别,使用了编解码网络直接输出指针的读数,即在读数识别中直接输出表盘图像的精准读数,无需使用多个步骤;避免了采用角度,位置,距离等方式换算出刻度读数,极大的简化了图像预处理和识别流程,提高了识别精度;

45、(2)该基于目标编解码的表盘指针读数的识别方法能适应复杂多变的场景,能使用一个模型识别不同的表盘,且使用编解码神经网络,在复杂多变的场景下比传统图像处理更精确且可以识别不限于表盘中一个指针。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1