指针仪表读数的识别方法、系统、设备及计算机存储介质
技术领域
本申请涉及图像处理
技术领域
,特别是涉及一种指针仪表读数的识别方法、系统、设备及计算机存储介质。背景技术
当前以字符类识别为目的的机器视觉技术已经非常成熟。例如,利用深度神经网络模型对数字类仪表读数进行识别处理。但由于指针类仪表读数的自身属性,对拍摄图像的环境有较高要求,若直接利用深度神经网络模型对指针类仪表图像进行识别处理,存在仪表读书不准确的问题。
发明内容
本申请提供了一种指针仪表读数的识别方法、系统、设备及计算机存储介质,以解决现有技术中指针类仪表读数不准确问题。
为解决上述技术问题,本申请提供了一种指针仪表读数的识别方法,所述方法包括:
获取指针仪表图像,所述指针仪表图像包括图像偏转数据;
根据所述图像偏转数据对所述指针仪表图像进行图像纠正处理,得到目标图像;
将所述目标图像输入深度神经网络模型中,得到目标特征图像;
根据所述目标特征图像计算所述指针仪表读数。
为解决上述技术问题,本申请提供了一种指针仪表读数的识别系统,所述识别系统包括:
获取单元,用于获取指针仪表图像,所述指针仪表图像包括图像偏转数据;
图像纠正单元,用于根据所述图像偏转数据对所述指针仪表图像进行图像纠正处理,得到目标图像;
特征提取单元,用于将所述目标图像输入深度神经网络模型中,得到目标特征图像;
计算单元,用于根据所述目标特征图像计算所述指针仪表读数。
为解决上述技术问题,本申请提供了一种终端设备,所述设备包括存储器以及与所述存储器耦接的处理器;
所述存储器用于存储程序数据,所述处理器用于执行所述程序数据以实现如上述的指针仪表读数的识别方法。
为解决上述技术问题,本申请还提供了一种计算机存储介质,所述计算机存储介质用于存储程序数据,所述程序数据在被处理器执行时,用以实现如上述的指针仪表读数的识别方法。
本申请提供的指针仪表读数的识别方法利用拍摄图像的图像偏转数据对指针仪表图像进行纠正处理,得到目标图像,并将目标图像输入深度神经网络模型,得到目标特征图像,进而基于目标特征图像计算得到指针仪表读数,提高了指针仪表读数的准确性,避免因指针仪表图像质量较差而导致指针仪表读数准确性低的问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请提供的指针仪表读数的识别方法一实施例的流程示意图;
图2是图1所示的指针仪表读数的识别方法中S102的实施例的流程示意图;
图3是图2所示的指针仪表读数的识别方法中S201的实施例的流程示意图;
图4是图2所示的指针仪表读数的识别方法中S202的实施例的流程示意图;
图5是图1所示的指针仪表读数的识别方法中S104的实施例的流程示意图;
图6是本申请提供的识别系统一实施例的结构示意图;
图7是本申请提供的终端设备一实施例的结构示意图;
图8是本申请提供的计算机存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提出了一种指针仪表读数的识别方法,具体请参阅图1,图1是本申请提供的指针仪表读数的识别方法的实施例的流程示意图。本实施例中指针仪表读数的识别方法可以应用于识别装置,本申请的识别装置可以为服务器,也可以为移动设备,还可以为由服务器和移动设备相互配合的系统。相应地,移动设备包括的各个部分,例如各个单元、子单元、模块、子模块可以全部设置于服务器中,也可以全部设置于移动设备中,还可以分别设置于服务器和移动设备中。
进一步地,上述服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块,例如用来提供分布式服务器的软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。
本实施例的指针仪表读数的识别方法具体包括以下步骤:
S101:获取指针仪表图像,指针仪表图像包括图像偏转数据。
本公开实施例中,考虑到指针仪表图像质量对指针仪表读数识别的重大影响,为了避免因指针仪表环境光线或拍摄指针仪表图像角度等问题而导致获取的指针仪表图像质量较差,从而使得利用指针仪表图像识别出的指针仪表读数准确性低。为此,本实施例的识别装置应获取质量较高的指针仪表图像,以基于高质量的指针仪表图像识别得到准确性高的指针仪表读数。需要说明的是,质量较高的指针仪表图像为正视拍摄图像且指针仪表环境光线变化不大。
具体地,为了提高高质量指针仪表图像的获取效率,识别装置可获取指针仪表图像,并通过对指针仪表图像进行处理,得到指针仪表图像的图像偏转数据。具体地,识别装置可利用图像矩形特征分析技术对指针仪表图像进行处理,得到图像偏转数据。图像偏转数据为实际拍摄图像与所需指针仪表图像之间的偏转差距。
需要说明的是,识别装置可利用指针仪表图像与预设指针仪表图像之间的特征相似度计算图像偏转数据。也可利用安装于识别装置中的陀螺仪获取指针仪表图像的图像偏转数据。
其中,本实施例的识别装置可通过安装在指针仪表正视角方向的摄像头,拍摄指针仪表图像。也可通过抄表工作人员携带的移动终端获取指针仪表图像。采用安装在指针仪表正视方向的摄像头获取指针仪表图像的方式,可预设时间间隔获取指针仪表图像。采用抄表工作人员携带的移动终端获取指针仪表图像的方式,可于抄表工作人员每次到达指针仪表所在处时获取指针仪表图像。
在具体实施例中,采用抄表工作人员携带的移动终端获取指针仪表图像时,识别装置可利用移动终端中的陀螺仪获取指针仪表图像的图像偏转数据。
S102:根据图像偏转数据对指针仪表图像进行图像纠正处理,得到目标图像。
为了得到高质量的指针仪表图像,进而提高指针仪表读数的准确性。识别装置可纠正指针仪表图像。具体地,识别装置根据图像偏转数据对指针仪表图像进行图像纠正处理,得到目标图像。其中,目标图像为正视拍摄图像且指针仪表环境光线变化不大。也即质量较高的指针仪表图像。
S103:将目标图像输入深度神经网络模型中,得到目标特征图像。
为了识别得到目标图像中指针仪表读数,本实施例的识别装置将高质量的指针仪表图像输入深度神经网络模型中。具体地,识别装置将目标图像输入深度神经网络模型中,得到目标特征图像。
其中,深度神经网络模型为已经训练完成的网络模型。在具体实施例中,识别装置可利用大量训练图像和标注图像对深度神经网络模型进行训练,得到训练特征图像,并计算训练特征图像和目标特征图像之间的损失函数,以损失函数变小为目标训练深度神经网络模型,得到满足要求的深度神经网络模型。
在具体实施例中,识别装置可将目标图像输入第一子网络模型中,得到多维子特征图像。并将多维子特征图像输入第二子网络模型中,得到目标特征图像。
进一步地,目标特征图像包括特征位置信息、置信度和特征强度。特征位置信息可以为目标图像中指针所在位置的特征信息,也可以为刻度所在位置的特征信息。因此,特征位置信息需根据实际需求进行设置。本实施例对此不作限定。
S104:根据目标特征图像计算指针仪表读数。
基于S103中获取的目标特征图像,识别装置利用目标特征图像中的特征位置信息、置信度和特征强度确定指针仪表的仪表刻度、指针所指位置以及指针轴等,并利用指针仪表的仪表刻度、指针所指位置以及指针轴计算指针仪表读数。
上述方案中,识别装置利用拍摄图像的图像偏转数据对指针仪表图像进行纠正处理,得到目标图像,并将目标图像输入深度神经网络模型,得到目标特征图像,进而基于目标特征图像计算得到指针仪表读数,提高了指针仪表读数的准确性,避免因指针仪表图像质量较差而导致指针仪表读数准确性低。
可继续参阅图2,图2是图1所示的指针仪表读数的识别方法中S102的实施例的流程示意图。在上述实施例的基础上,S102还包括以下步骤:
S201:对指针仪表图像进行透视变换处理,得到正视拍摄图像。
可选地,本实施例可采用图3实施例实现S201,具体包括S301~S302:
S301:根据图像偏转数据确定矩阵透视变换方程参数,得到矩阵透视变换方程。
为了避免拍摄的指针仪表图像与预设图像之间的偏转数据较大而导致指针仪表读数识别准确性低,本实施例的识别装置利用指针仪表图像的偏转数据确定指针仪表图像和目标图像之间的图像转换关系参数。具体地,识别装置将指针仪表图像的偏转数据作为矩阵透视变换方程参数,得到矩阵透视变换方程。其中,预设图像为基于正视方向且环境光线变换不大时所拍摄图像的指针仪表图像。
S302:根据矩阵透视变换方程对指针仪表图像进行处理,得到正视拍摄图像。
基于S301中获取的矩阵透视变换方程,识别装置利用矩阵透视变换方程计算得到与指针仪表图像对应的正视拍摄图像。
S202:对正视拍摄图像进行图像预处理,得到目标图像。
考虑到正视拍摄图像的拍摄角度虽满足目标图像要求,但存在拍摄环境光线或其他原因导致的目标图像质量问题。为此,识别装置对正视拍摄图像进行图像预处理,得到目标图像。
可选地,本实施例可采用图4实施例实现S202,具体包括S401~S403:
S401:对正视拍摄图像进行灰度化处理,得到去灰度后的拍摄图像。
其中,识别装置对正视拍摄图像进行灰度化处理,得到去灰度后的拍摄图像。
S402:对去灰度后的拍摄图像进行中值滤波处理,得到滤波后的拍摄图像。
基于S401中获取的去灰度后的拍摄图像,识别装置采用滤波对去灰度后的拍摄图像进行降噪处理。具体地,识别装置对去灰度后的拍摄图像进行中值滤波处理,得到滤波后的拍摄图像。
S403:对滤波后的拍摄图像进行平滑处理,得到目标图像。
基于S402中获取的滤波后的拍摄图像,识别装置对滤波后的拍摄图像进行平滑处理,得到目标图像。
上述方案中,识别装置利用图像偏转数据作为矩阵透视变换方程参数,得到矩阵透视变换方程,并根据矩阵透视变换方程得到与指针仪表图像对应的正视拍摄图像,进而对正视拍摄图像进行图像预处理,得到目标图像,提高了指针仪表读数的准确性,避免因指针仪表图像质量较差而导致指针仪表读数准确性低。
可继续参阅图5,图5是图1所示的指针仪表读数的识别方法中S104的实施例的流程示意图。具体地,S104还包括以下步骤:
S501:利用特征位置信息、置信度及特征强度确定指针仪表的仪表刻度、指针所指位置以及指针轴。
其中,目标特征图像包括特征位置信息、置信度及特征强度。识别装置利用特征位置信息、置信度及特征强度计算指针仪表的刻度,指针所指位置和指针轴。
S502:获取仪表刻度中零刻度和指针轴之间的第一连线以及指针所指位置和指针轴之间的第二连线,并确定第一连线和第二连线之间的夹角。
基于获取的指针和刻度,识别装置获取刻度中零刻度与指针的轴心之间的第一连线,以及指针所指位置和指针的轴心之间的第二连线,并确定第一连线和第二连线之间的夹角。
S503:利用夹角与预设夹角之间的比值计算得到指针仪表读数,预设夹角为仪表刻度中零刻度和最大刻度之间的夹角。
由于刻度的总读数确定,识别装置利用第一连线和第二连线之间的夹角与预设夹角之间的比值计算指针仪表读数。具体地,识别装置利用比值与总读数之间的乘积计算指针仪表读数。其中,预设夹角为指针仪表刻度中零刻度和最大刻度之间的夹角。
需要说明的是,为了提高指针读数的准确性,识别装置在计算指针读数前,还通过判断轴心与刻度所在圆心是否重合,确定轮廓识别技术识别的指针和刻度的准确性,从而基于指针和刻度计算指针仪表读数,得到指针仪表读数,提高了指针仪表读数的准确性。
上述方案中,识别装置利用特征位置信息、置信度及特征强度确定指针仪表的仪表刻度、指针所指位置以及指针轴;获取仪表刻度中零刻度和指针轴之间的第一连线以及指针所指位置和指针轴之间的第二连线,并确定第一连线和第二连线之间的夹角;利用夹角与预设夹角之间的比值计算得到指针仪表读数,预设夹角为仪表刻度中零刻度和最大刻度之间的夹角,提高了指针仪表读数的准确性。
为实现上述实施例的指针仪表读数的识别方法,本申请提出了一种识别系统,具体请参阅图6,图6是本申请提供的识别系统一实施例的结构示意图。
其中,识别系统600包括获取单元61、图像纠正单元62、特征提取单元63和计算单元64。
具体地,识别系统600包括:获取单元61,用于获取指针仪表图像,指针仪表图像包括图像偏转数据。
图像纠正单元62,用于根据图像偏转数据对指针仪表图像进行图像纠正处理,得到目标图像。
特征提取单元63,用于将目标图像输入深度神经网络模型中,得到目标特征图像。
计算单元64,用于根据目标特征图像计算指针仪表读数。
为实现上述实施例的指针仪表读数的识别方法,本申请提出了一种终端设备,具体请参阅图7,图7是本申请提供的终端设备一实施例的结构示意图。
终端设备700包括存储器71和处理器72,其中,存储器71和处理器72耦接。
存储器71用于存储程序数据,处理器72用于执行程序数据以实现上述实施例的指针仪表读数的识别方法。
在本实施例中,处理器72还可以称为CPU(Central Processing Unit,中央处理单元)。处理器72可能是一种集成电路芯片,具有信号的处理能力。处理器72还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器72也可以是任何常规的处理器等。
本申请还提供一种计算机存储介质800,如图8所示,计算机存储介质800用于存储程序数据81,程序数据81在被处理器执行时,用以实现如本申请方法实施例中所述的指针仪表读数的识别方法。
本申请指针仪表读数的识别方法实施例中所涉及到的方法,在实现时以软件功能单元的形式存在并作为独立的产品销售或使用时,可以存储在装置中,例如一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。