一种指示式仪表的识别方法、装置及可读存储介质
文献发布时间:2023-06-19 19:28:50
技术领域
本发明涉及指示式仪表技术领域,尤其涉及一种指示式仪表的识别方法、装置及可读存储介质。
背景技术
指针式仪表因其结构简单、价格低廉、抗干扰能力强、防尘等优点,广泛应用于军事、航空航天、工业等各个领域,特别是在高温,高压的天然气场站的复杂环境中,分布着各种指针式仪表。传统的读数采集的方式是通过人工定期的采集仪表读数,近年来,随着无人值守站概念的提出,天然气场站向着无人化,智能化方向发展。
然而,现阶段的指针式仪表识别方法大多采用特征匹配算法,
存在计算量大,在自然场景中适应性较低的问题。
发明内容
本发明所要解决的技术问题是针对现有技术的上述不足,提供一种指示式仪表的识别方法、装置及可读存储介质,用以解决现有的指针式仪表识别方法大多采用特征匹配算法,存在计算量大,在自然场景中适应性较低的问题。
第一方面,本发明提供一种指示式仪表的识别方法,包括:
采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域;
将所述仪表盘区域对应的目标图片进行灰度化;
对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度;
根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。
进一步地,所述采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域之前,所述方法还包括:
获取仪表样本数据集;
构建基于faster R-CNN算法的仪表识别模型;
采用所述仪表样本数据集训练所述仪表识别模型,得到训练好的所述仪表识别模型。
进一步地,所述仪表识别模型包括基础卷积层、池化层、全卷积网络RPN层和全连接层。
进一步地,所述faster R-CNN算法采用fast R-CNN损失和RPN损失联合训练的方法训练所述仪表识别模型,其中,fast R-CNN的损失函数为:
L=L
式中,L
其中,RPN的损失函数为:
式中,N
进一步地,所述方法还包括:
将预先设置的验证集输入训练好的所述仪表识别模型进行识别,得到识别结果的准确率和召回率;
根据所述准确率和召回率得到用于衡量所述仪表识别模型识别效果的平均精度均值mAP指标。
进一步地,所述根据所述准确率和召回率得到用于衡量所述仪表识别模型识别效果的平均精度均值mAP指标,具体包括:
采用以下公式得到所述准确率:
式中,Precision为准确率,N
采用以下公式得到所述召回率:
式中,N
采用以下公式得到所述mAP指标:
式中,AP是根据Precision和Recall得到的P-R曲线和坐标轴之间形成的面积,N
进一步地,所述根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数,具体包括:
根据以下公式得到所述待识别仪表的读数:
式中,v为读数,θ为所述指针在平面直角坐标系中的角度,θ
进一步地,所述角密度γ根据以下公式进行计算:
式中,θ
第二方面,本发明提供一种指示式仪表的识别装置,包括:
表盘区域获取模块,用于采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域;
灰度化处理模块,与所述表盘区域获取模块连接,用于将所述仪表盘区域对应的目标图片进行灰度化;
霍夫变换模块,与所述灰度化处理模块连接,用于对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度;
仪表读数模块,与所述霍夫变换模块连接,用于根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。
第三方面,本发明提供一种指示式仪表的识别装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以实现上述第一方面所述的指示式仪表的识别方法。
第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的指示式仪表的识别方法。
本发明提供的指示式仪表的识别方法、装置及可读存储介质。首先采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域,并将所述仪表盘区域对应的目标图片进行灰度化;然后对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度;最后根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。本发明通过采用基于faster R-CNN算法的仪表识别模型,可以在光照等因素影响下,快速检测出仪表盘区域,在自然场景中适应性较高,同时,通过霍夫变换检测和角度计算法,能够提高指针式仪表读数的精度,降低计算量。解决了现有的指针式仪表识别方法大多采用特征匹配算法,存在计算量大,在自然场景中适应性较低的问题。
附图说明
图1为本发明实施例1的一种指示式仪表的识别方法的流程图;
图2为本发明实施例的mAP随迭代次数的变化图;
图3为本发明实施例2的一种指示式仪表的识别装置的结构示意图;
图4为本发明实施例3的一种指示式仪表的识别装置的结构示意图。
具体实施方式
为使本领域技术人员更好地理解本发明的技术方案,下面将结合附图对本发明实施方式作进一步地详细描述。
可以理解的是,此处描述的具体实施例和附图仅仅用于解释本发明,而非对本发明的限定。
可以理解的是,在不冲突的情况下,本发明中的各实施例及实施例中的各特征可相互组合。
可以理解的是,为便于描述,本发明的附图中仅示出了与本发明相关的部分,而与本发明无关的部分未在附图中示出。
可以理解的是,本发明的实施例中所涉及的每个单元、模块可仅对应一个实体结构,也可由多个实体结构组成,或者,多个单元、模块也可集成为一个实体结构。
可以理解的是,在不冲突的情况下,本发明的流程图和框图中所标注的功能、步骤可按照不同于附图中所标注的顺序发生。
可以理解的是,本发明的流程图和框图中,示出了按照本发明各实施例的系统、装置、设备、方法的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可代表一个单元、模块、程序段、代码,其包含用于实现规定的功能的可执行指令。而且,框图和流程图中的每个方框或方框的组合,可用实现规定的功能的基于硬件的系统实现,也可用硬件与计算机指令的组合来实现。
可以理解的是,本发明实施例中所涉及的单元、模块可通过软件的方式实现,也可通过硬件的方式来实现,例如单元、模块可位于处理器中。
实施例1:
本实施例提供一种指示式仪表的识别方法,如图1所示,该
方法包括:
步骤S101:采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域。
在本实施例中,为了在光照等因素影响下,快速检测出仪表盘区域,本实施例采用训练好的基于faster R-CNN算法的仪表识别模型获取指示式仪表图片中待识别仪表的仪表盘区域。
可选地,所述采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域之前,所述方法还包括:
获取仪表样本数据集;
构建基于faster R-CNN算法的仪表识别模型;
采用所述仪表样本数据集训练所述仪表识别模型,得到训练好的所述仪表识别模型。
在本实施例中,为了提高模型训练的速度,样本数据集可以包括正样本和负样本,通过使用样本数据集训练仪表识别模型,能够得到训练好的仪表识别模型,具体可以使用监督或半监督的方式进行训练。
可选地,所述仪表识别模型包括基础卷积层、池化层、RPN(Region ProposalNetwork,全卷积网络)层和全连接层。
在本实施例中,仪表识别模型基于faster R-CNN的目标检测算法,faster R-CNN首先使用一组基础的卷积层和池化层提取图片的特征图。该特征图被共享用于后续的RPN和全连接层;RPN层用于生成候选区域,该层通过softmax判断anchors(锚点)属于前景或者背景,再利用边界框回归修正anchors获得精确的候选区域,softmax又称归一化指数函数,目的是将多分类的结果以概率的形式展现出来,它将多个神经元的输出,映射到(0,1)区间内,从而来进行多分类;感兴趣区池化层收集输入的特征图和候选区域,综合这些信息提取候选区域特征图,送入后续的全连接层判定目标类别;然后,利用候选区域特征图计算候选区类别,同时再次使用边界框回归获得检验框的最终精确地位置。
在本实施例中,faster R-CNN的基础卷积层可以使用Mobilenetv2作为特征提取器。Mobilenetv2是一种轻量级移动网络,它体积小,计算量小,精度高。MobileNetv2的主要思想是通过扩展层来扩展维度,深度可分离卷积提取扩展层特征。然后投影层压缩数据,使网络再次变小。
可选地,所述faster R-CNN算法采用fast R-CNN损失和RPN损失联合训练的方法训练所述仪表识别模型,其中,fast R-CNN的损失函数为:
L=L
式中,L
其中,RPN的损失函数为:
式中,N
具体地,分类损失函数为:
L
其中,p
具体地,边界框回归损失函数为:
其中,t
可选地,所述方法还包括:
将预先设置的验证集输入训练好的所述仪表识别模型进行识别,得到识别结果的准确率和召回率;
根据所述准确率和召回率得到用于衡量所述仪表识别模型识别效果的平均精度均值mAP指标。
在本实施例中,以mAP作为指标来衡量识别效果,mAP是由多个验证集评估的平均精度,用作目标检测中测量精度的指标。
可选地,所述根据所述准确率和召回率得到用于衡量所述仪表识别模型识别效果的平均精度均值mAP指标,具体包括:
采用以下公式得到所述准确率:
式中,Precision为准确率,N
采用以下公式得到所述召回率:
式中,N
采用以下公式得到所述mAP指标:
式中,AP是根据Precision和Recall得到的P-R曲线和坐标轴之间形成的面积,N
在本实施例中,根据准确率和召回率,可以得到P-R曲线。AP是P-R曲线和坐标轴之间形成的面积,图2示出了本发明实施例的mAP随迭代次数的变化图,由图2可知,随着迭代次数的增多,mAP值越大,模型越好,其中,1个epoch指用训练集中的全部样本训练一次。
在本实施例中,正负样本的区分方式为:当交并比IoU>0.5时,该样本被视为正样本,否则,被视为负样本。IoU是一个比率,即交并比,用于衡量预测框与真实框重合程度的标准,公式如下:
其中,A表示预测框,B表示实际框。在分子部分,该值是预测框和实际框之间的重叠区域。在分母部分,该值是预测框和实际框占用的总面积。
步骤S102:将所述仪表盘区域对应的目标图片进行灰度化。
在本实施例中,为了减少计算量,将仪表盘区域对应的目标图片进行灰度化处理,具体有多种方式,例如加权平均法、平均值法以及最大值法等,本发明对此不做限定。
步骤S103:对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度。
在本实施例中,利用Hough(霍夫)变换检测出指针中心线,可以得到指针在平面直角坐标系中的角度θ。
步骤S104:根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。
可选地,所述根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数,具体包括:
根据以下公式得到所述待识别仪表的读数:
式中,v为读数,θ为所述指针在平面直角坐标系中的角度,θ
在本实施例中,指针式仪表的基本参数为:仪表类型、最小角度θ
式中,θ
本发明实施例提供的指示式仪表的识别方法,首先采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域,并将所述仪表盘区域对应的目标图片进行灰度化;然后对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度;最后根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。本发明通过采用基于faster R-CNN算法的仪表识别模型,可以在光照等因素影响下,快速检测出仪表盘区域,在自然场景中适应性较高,同时,通过霍夫变换检测和角度计算法,能够提高指针式仪表读数的精度,降低计算量。解决了现有的指针式仪表识别方法大多采用特征匹配算法,存在计算量大,在自然场景中适应性较低的问题。
实施例2:
如图3所示,本实施例提供一种指示式仪表的识别装置,用于执行上述指示式仪表的识别方法,包括:
表盘区域获取模块11,用于采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域;
灰度化处理模块12,与所述表盘区域获取模块11连接,用于将所述仪表盘区域对应的目标图片进行灰度化;
霍夫变换模块13,与所述灰度化处理模块12连接,用于对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度;
仪表读数模块14,与所述霍夫变换模块13连接,用于根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。
可选地,所述装置还包括:
样本数据集获取模块,用于获取仪表样本数据集;
模型构建模块,用于构建基于faster R-CNN算法的仪表识别模型;
模型训练模块,用于采用所述仪表样本数据集训练所述仪表识别模型,得到训练好的所述仪表识别模型。
可选地,所述仪表识别模型包括基础卷积层、池化层、全卷积网络RPN层和全连接层。
可选地,所述faster R-CNN算法采用fast R-CNN损失和RPN损失联合训练的方法训练所述仪表识别模型,其中,fast R-CNN的损失函数为:
L=L
式中,L
其中,RPN的损失函数为:
式中,N
可选地,所述装置还包括:
模型验证模块,用于将预先设置的验证集输入训练好的所述仪表识别模型进行识别,得到识别结果的准确率和召回率;
模型评价模块,用于根据所述准确率和召回率得到用于衡量所述仪表识别模型识别效果的平均精度均值mAP指标。
可选地,所述模型评价模块具体用于:
采用以下公式得到所述准确率:
式中,Precision为准确率,N
采用以下公式得到所述召回率:
式中,N
采用以下公式得到所述mAP指标:
式中,AP是根据Precision和Recall得到的P-R曲线和坐标轴之间形成的面积,N
可选地,所述仪表读数模块14具体用于:
根据以下公式得到所述待识别仪表的读数:
式中,v为读数,θ为所述指针在平面直角坐标系中的角度,θ
可选地,所述角密度γ根据以下公式进行计算:
式中,θ
实施例2提供的指示式仪表的识别装置,首先采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域,并将所述仪表盘区域对应的目标图片进行灰度化;然后对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度;最后根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。本发明通过采用基于fasterR-CNN算法的仪表识别模型,可以在光照等因素影响下,快速检测出仪表盘区域,在自然场景中适应性较高,同时,通过霍夫变换检测和角度计算法,能够提高指针式仪表读数的精度,降低计算量。解决了现有的指针式仪表识别方法大多采用特征匹配算法,存在计算量大,在自然场景中适应性较低的问题。
实施例3:
参考图4,本实施例提供一种指示式仪表的识别装置,包括存储器21和处理器22,存储器21中存储有计算机程序,处理器22被设置为运行所述计算机程序以执行实施例1中的指示式仪表的识别方法。
其中,存储器21与处理器22连接,存储器21可采用闪存或只读存储器或其他存储器,处理器22可采用中央处理器或单片机。
实施例3提供的指示式仪表的识别装置,首先采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域,并将所述仪表盘区域对应的目标图片进行灰度化;然后对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度;最后根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。本发明通过采用基于fasterR-CNN算法的仪表识别模型,可以在光照等因素影响下,快速检测出仪表盘区域,在自然场景中适应性较高,同时,通过霍夫变换检测和角度计算法,能够提高指针式仪表读数的精度,降低计算量。解决了现有的指针式仪表识别方法大多采用特征匹配算法,存在计算量大,在自然场景中适应性较低的问题。
实施例4:
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例1中的指示式仪表的识别方法。
该计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、计算机程序模块或其他数据)的任何方法或技术中实施的易失性或非易失性、可移除或不可移除的介质。计算机可读存储介质包括但不限于RAM(Random Access Memory,随机存取存储器),ROM(Read-Only Memory,只读存储器),EEPROM(Electrically ErasableProgrammable read only memory,带电可擦可编程只读存储器)、闪存或其他存储器技术、CD-ROM(Compact Disc Read-Only Memory,光盘只读存储器),数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。
实施例4提供的计算机可读存储介质,首先采用训练好的基于faster R-CNN算法的仪表识别模型,获取指示式仪表图片中待识别仪表的仪表盘区域,并将所述仪表盘区域对应的目标图片进行灰度化;然后对灰度化处理后的目标图片使用霍夫变换检测出指针中心线,并得到指针在平面直角坐标系中的角度;最后根据预设的角度计算法以及所述指针在平面直角坐标系中的角度得到所述待识别仪表的读数。本发明通过采用基于faster R-CNN算法的仪表识别模型,可以在光照等因素影响下,快速检测出仪表盘区域,在自然场景中适应性较高,同时,通过霍夫变换检测和角度计算法,能够提高指针式仪表读数的精度,降低计算量。解决了现有的指针式仪表识别方法大多采用特征匹配算法,存在计算量大,在自然场景中适应性较低的问题。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
- 一种车牌识别方法、装置、计算机装置及计算机可读存储介质
- 一种多模式情绪识别方法、装置及计算机可读存储介质
- 一种垃圾评论识别方法、装置及计算机可读存储介质
- 一种构件识别方法、装置、设备及计算机可读存储介质
- 一种标识卡识别方法、装置、系统和可读存储介质
- 一种仪表读数识别方法及装置、可读存储介质
- 一种指针式仪表读数的识别方法、识别装置和计算机可读介质