CN113469167A - 仪表读数识别方法、装置、设备及存储介质 - Google Patents
仪表读数识别方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113469167A CN113469167A CN202110824649.5A CN202110824649A CN113469167A CN 113469167 A CN113469167 A CN 113469167A CN 202110824649 A CN202110824649 A CN 202110824649A CN 113469167 A CN113469167 A CN 113469167A
- Authority
- CN
- China
- Prior art keywords
- determining
- character
- target
- area
- meter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 238000001514 detection method Methods 0.000 claims abstract description 19
- 239000013598 vector Substances 0.000 claims description 74
- 239000011159 matrix material Substances 0.000 claims description 38
- 230000015654 memory Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 10
- 230000008569 process Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 11
- 102100032202 Cornulin Human genes 0.000 description 7
- 101000920981 Homo sapiens Cornulin Proteins 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000000513 principal component analysis Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 239000000047 product Substances 0.000 description 3
- 238000013518 transcription Methods 0.000 description 3
- 230000035897 transcription Effects 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Abstract
本申请提供一种仪表读数识别方法、装置、设备及存储介质,涉及图像处理技术领域,用于提高仪表读数识别的准确性。该方法包括:对包含仪表的目标图像进行目标检测,确定所述目标图像中的仪表区域,以及确定所述仪表区域中的多个字符区域;对所述仪表区域进行指针识别,确定所述仪表的指针指向的方向所在的目标直线;分别对所述多个字符区域中各个字符区域进行字符识别,确定所述各个字符区域各自所对应的字符;根据确定的所述目标直线以及确定的各个字符,确定所述仪表的读数。
Description
技术领域
本申请涉及图像处理技术领域,提供一种仪表读数识别方法、装置、设备及存储介质。
背景技术
随着时代的发展,工业生产也步入信息化时代,其中,各类精密仪表是工业信息化的典型代表,然而由于仪表类别多种多样,且仪表数量巨大,使得通过人工读取仪表读数的方式显得耗时耗力,且存在一定的主观误差。进而,为了缩短确定仪表读数的时间,以及提高仪表读数的准确度,现目前逐渐发展为利用传统图像处理的方式来确定仪表指针读数。
但是,目前利用传统图像处理来进行指针读数识别的方法在读数识别过程中,均需要进行人工干预,读数识别过程仍然较为繁琐,且人工干预带来了主观误差,使得指针读数识别准确性不高。
发明内容
本申请实施例提供一种仪表读数识别方法、装置、设备及存储介质,用于提高仪表读数识别的准确性。
一方面,提供仪表读数识别方法,所述方法包括:
对包含仪表的目标图像进行目标检测,确定所述目标图像中的仪表区域,以及确定所述仪表区域中的多个字符区域;
对所述仪表区域进行指针识别,确定所述仪表的指针指向的方向所在的目标直线;
分别对所述多个字符区域中各个字符区域进行字符识别,确定所述各个字符区域各自所对应的字符;
根据确定的所述目标直线以及确定的各个字符,确定所述仪表的读数。
一方面,提供一种仪表读数识别装置,所述装置包括:
区域确定单元,用于对包含仪表的目标图像进行目标检测,确定所述目标图像中的仪表区域,以及确定所述仪表区域中的多个字符区域;
指针直线确定单元,用于对所述仪表区域进行指针识别,确定所述仪表的指针方向所在的目标直线;
字符确定单元,用于分别对所述多个字符区域中各个字符区域进行字符识别,确定所述各个字符区域各自所对应的字符;
读数确定单元,用于根据确定的所述目标直线以及确定的各个字符,确定所述仪表的读数。
在一种可能的实现方式,所述指针直线确定单元,具体用于:
对所述仪表区域进行特征提取,确定所述仪表区域中的指针特征信息;
根据所述指针特征信息,从所述仪表区域中确定至少一个候选指针区域;
根据所述至少一个候选指针区域中各个候选指针区域包含的像素点数量,从所述至少一个候选指针区域中,确定出目标指针区域;
在所述目标指针区域中,确定出所述目标直线。
在一种可能的实现方式在,所述指针直线确定单元,具体还用于:
根据所述目标指针区域包含的多个像素点的像素特征,构造特征向量集,所述特征向量集中的每个像素特征向量对应一个像素点;
对所述特征向量集进行标准化处理,并确定标准化后的特征向量集的协方差矩阵;
根据所述协方差矩阵,确定所述像素特征向量中各个像素特征元素各自对应的权重值和权重特征向量;其中,所述权重值用于表征像素特征信息量的大小,且所述各个像素特征元素各自对应的权重值和权重特征向量的乘积所组成的集合的模为所述多个像素点的特征向量集的模;
将确定的多个权重值按照降序进行排列,确定排序前K个的权重值所对应的K个权重特征向量;其中,K为正整数;
根据所述K个权重特征向量,确定K条候选直线,其中,每条候选直线为对应的权重特征向量的方向所在的直线;
根据所述多个像素点分别至所述K条候选直线之间的距离,从所述K条候选直线中确定所述目标直线。
在一种可能的实现方式,所述读数确定单元,具体用于:
从所述仪表区域确定所述仪表的基准像素点的第一坐标值,以及各个字符区域各自所对应的区域中心像素点的第二坐标值,所述基准像素点为所述仪表的指针围绕旋转的中心点;
根据确定的各个第二坐标值,确定与所述目标直线之间距离最近的两个第二坐标值;
根据所述第一坐标值与所述两个第二坐标值,分别确定出第一直线与第二直线;
根据所述目标直线分别与所述第一直线以及所述第二直线之间的夹角,确定所述仪表的读数。
在一种可能的实现方式,所述区域确定单元,具体用于:
从所述目标图像中确定多个候选目标区域,以及确定每个候选目标区域包含的候选目标属于各个类别的类别置信度,其中,每个候选目标区域包含一个候选目标;所述类别包括仪表类别和字符类别;
针对所述仪表类别,根据所述多个候选目标区域属于所述仪表类别的类别置信度,从多个候选目标区域中,确定目标图像中的仪表区域;以及,
针对所述字符类别,根据所述多个候选目标区域属于所述字符类别的类别置信度以及所述仪表区域,从多个候选目标区域中,确定所述仪表区域中的多个字符区域。
在一种可能的实现方式,所述区域确定单元,具体用于:
根据每个候选目标区域对应的多个类别置信度,确定所述仪表类别对应的候选目标区域集合;
针对所述候选目标区域集合循环迭代执行如下操作,直至所述候选目标区域集合中不存在候选目标区域:
针对所述仪表类别,确定候选目标区域集合中,类别概率最大的候选目标区域分别与剩余的所有候选目标区域之间的重合面积,是否大于预设重合面积;
在大于预设重合面积时,将大于预设重合面积所对应的剩余候选目标区域以及所述类别概率最大的候选目标区域从第一候选目标区域集合中删除,确定更新后的候选目标区域集合;
将所述类别概率最大的候选目标区域加入所述仪表类别对应的待输出目标区域集合中;其中,所述待输出目标区域集合中包含所述目标图像中的仪表区域。
在一种可能的实现方式,所述字符确定单元,具体用于:
分别针对所述多个字符区域,执行如下操作:
针对多个字符区域中的一个字符区域,对所述一个字符区域进行特征提取,确定相应的字符特征向量;
根据所述字符特征向量进行字符预测,确定所述一个字符区域的字符序列,所述字符序列包含所述一个字符区域中每个字符位置上的字符预测结果;
根据所述字符序列,确定所述一个字符区域所对应的字符。
在一种可能的实现方式,所述装置还包括预处理单元,所述预处理单元,用于:
确定所述目标图像中所有像素点的像素特征值的均值;
确定每个像素点的像素特征值与所述均值之间的差值,确定第一像素矩阵,所述第一像素矩阵中每一个值为一个像素点对应的差值;
对所述第一像素矩阵进行归一化处理,确定第二像素矩阵;
根据所述第二像素矩阵进行目标检测,确定所述目标图像中的仪表区域,以及所述仪表区域中的多个字符区域。
一方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方面所述的方法的步骤。
一方面,提供一种计算机存储介质,其上存储有计算机程序指令,该计算机程序指令被处理器执行时实现上述方面所述的方法的步骤。
本申请实施例中,可以对包含仪表的目标图像进行目标检测,以确定目标图像中的仪表区域,以及仪表区域中的多个字符区域;进而,可以对仪表区域进行指针识别,以确定仪表的指针方向所在的目标直线;并分别对多个字符区域中各个字符区域进行字符识别,以确定各个字符区域各自所对应的字符;进而,可以根据确定的目标直线以及确定的各个字符,来确定出仪表的读数。因此,本申请实施例,由于在整个读数识别过程不需要人工干预,而是直接进行端到端的读数确定,减少了由人为操作而引起的主观误差,提高了仪表读数识别的准确性,同时降低了仪表读数识别的繁琐程度。
此外,还可以通过确定至少一个候选指针区域中各个候选指针区域包含的像素点数量,从至少一个候选指针区域中,剔除因噪声而错误确定的候选指针区域,从而准确确定出目标指针区域,进而在该目标指针区域中,确定出指针所在的目标直线,以进一步提高了仪表读数识别的准确性。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的仪表读数识别方法的流程示意图;
图3为本申请实施例提供的识别仪表读数的一种示意图;
图4为本申请实施例提供的指针区域不唯一的一种示意图;
图5为本申请实施例提供的确定指针位置的一种流程示意图;
图6为采用PCA确定目标直线的一种流程示意图;
图7为检测仪表区域与字符区域的一种流程示意图;
图8为检测仪表区域的一种具体流程示意图;
图9为本申请实施例提供的错误检测字符的一种示意图;
图10为采用CRNN进行字符识别的一种流程示意图;
图11为本申请实施例提供的仪表读数识别装置的一种结构示意图;
图12为本申请实施例提供的计算机设备的一种结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所确定的所有其他实施例,都属于本申请保护的范围。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在目前的指针读数识别方法中,当确定仪表图像之后,需要人工在仪表盘图像中的预设区域内选择一点,以此为中心来查找指针,并在预设区域内逐点扫描,进而找到最为合适的指针旋转轴位置和对应指针方向,从而根据对应指针角度来得到指针读数;或者,当确定仪表图像之后,需要人手动设置分割角度n,进而将仪表图像以指针旋转轴为中心按照分割角度n分割为360/n个等角区域,进而确定指针位于各个等角区域的概率值,从而根据概率值最大的等角区域在仪表图像中的位置来确定指针读数。
可见,虽然目前的指针读数识别方法能够在一定程度的减少重复劳动,但是仍需进行人工干预,且基本上均不能实现端到端的读数确定,即在读数识别过程中,均需要进行人工干预,读数识别过程仍然较为繁琐,且人工干预带来了主观误差,使得指针读数识别准确性不高。
基于此,本申请实施例中,可以对包含仪表的目标图像进行目标检测,以确定目标图像中的仪表区域,以及仪表区域中的多个字符区域;进而,可以对仪表区域进行指针识别,以确定仪表的指针方向所在的目标直线;并分别对多个字符区域中各个字符区域进行字符识别,以确定各个字符区域各自所对应的字符;进而,可以根据确定的目标直线以及确定的各个字符,来确定出仪表的读数。因此,本申请实施例,由于在整个读数识别过程均不存在人工干预的过程,直接是端到端进行读数确定,减少了由人为操作而引起的主观误差,提高了仪表读数识别的准确性,同时降低了仪表读数识别的繁琐程度。
此外,还可以通过确定至少一个候选指针区域中各个候选指针区域包含的像素点数量,从至少一个候选指针区域中,剔除因噪声而错误确定的候选指针区域,从而准确确定出目标指针区域,进而在该目标指针区域中,确定出指针所在的目标直线,以进一步提高了仪表读数识别的准确性。
在介绍完本申请实施例的设计思想之后,下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
如图1所示,为本申请实施例提供的一种应用场景示意图,其中,该仪表读数识别的应用场景可以包括仪表读数识别设备10和图像采集设备11。
图像采集设备11可以为具有图像采集功能的设备,例如可以为监控设备,或者为具有图像采集功能的手机、照相机以及带有摄像头的笔记本电脑等。
仪表读数识别设备10是具有一定处理能力的计算机设备,例如可以为个人计算机(personal computer,PC)、笔记本电脑或者服务器等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
仪表读数识别设备10包括一个或多个处理器101、存储器102以及与其他设备交互的I/O接口103等。此外,仪表读数识别设备10还可以配置数据库104,数据库104可以用于存储本申请实施例提供的方案中涉及到的指针方向所在的目标直线、各个字符区域中字符以及仪表的读数等数据。其中,仪表读数识别设备10的存储器102中可以存储本申请实施例提供的仪表读数识别方法的程序指令,这些程序指令被处理器101执行时能够用以实现本申请实施例提供的仪表读数识别方法的步骤,以提高仪表读数识别的准确性。
在本申请实施例中,例如,需要对工业现场的气压仪表进行读数识别时,可以通过图像采集设备11来对该气压仪表进行图像采集,在采集到气压仪表图像之后,可以将该气压仪表图像通过I/O接口103输入至仪表读数识别设备10中,进而处理器101会调用存储器102中存储的仪表读数识别方法的程序指令,来对该气压仪表图像进行处理,以准确确定该气压仪表图像中的气压读数。
当然,本申请实施例提供的方法并不限用于图1所示的应用场景中,还可以用于其他可能的应用场景,本申请实施例并不进行限制。对于图1所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。下面,将结合附图对本申请实施例的方法进行介绍。
如图2所示,为本申请实施例提供的仪表读数识别方法的流程示意图,该方法可以通过图1中的仪表读数识别设备10来执行,该方法的流程介绍如下。
步骤201:对包含仪表的目标图像进行目标检测,确定目标图像中的仪表区域,以及确定仪表区域中的多个字符区域。
在对仪表图像中的仪表进行读数确定时,由于所采集的仪表图像中还可能包括除仪表之外的背景内容,例如还有可能包括各种物料管道等背景内容,而这些背景内容又会导致错误进行读数识别,因此,为了提高仪表读数识别的准确性,需要将仪表图像中有关仪表的仪表区域单独检测出来进行处理,进而,为了对仪表中的字符进行识别,还需要确定出仪表区域中的各个字符所对应的位置。
也就是说,在本申请实施例中,在将包含仪表的目标图像输入仪表读数识别设备10时,该仪表读数识别设备10会对包含仪表的目标图像进行目标检测,会确定该目标图像中的仪表区域,以及该仪表区域中的多个字符区域,为后续识别仪表中的指针读数作准备。
步骤202:对仪表区域进行指针识别,确定仪表的指针指向的方向所在的目标直线。
在本申请实施例中,由于是识别仪表中的指针读数,那么需要确定在仪表区域中指针所在的位置,也就是说,在确定了仪表区域之后,仪表读数识别设备10会对仪表区域进行指针识别,以确定仪表的指针指向的方向所在的目标直线。
步骤203:分别对多个字符区域中各个字符区域进行字符识别,确定各个字符区域各自所对应的字符。
本申请实施例中,若要确定仪表中的指针读数,那么就需要知道仪表中的指针位置以及该仪表中各个具体字符所在的位置,因此,在本申请实施例中,在确定指针位置以及各个字符的位置之后,还需要确定各个字符位置上具体是什么字符,从而才能够确定指针指向的位置其对应的读数。因此,可以分别对多个字符区域进行字符识别,以确定多个字符区域各自所对应的字符。
步骤204:根据确定的目标直线以及确定的各个字符,确定仪表的读数。
在确定了指针位置以及各个字符区域所对应的具体字符之后,可以通过采用计算指针所处角度,进而根据角度比例乘以相应读数差的方式,来确定仪表中指针的读数。
下面,以仪表为温度表,可对0-60℃范围内的温度进行测量为例,如图3所示,为本申请实施例提供的识别仪表读数的一种示意图。
在本申请实施例中,首先,可以从仪表区域确定出仪表的基准像素的第一坐标值,例如图3中的像素点O的坐标值(0,0),以及各个字符区域各自所对应的区域中心像素点的第二坐标值,例如图3中字符50区域的中心像素点A的坐标值字符60区域的中心像素点C的坐标值(1,-1)等。
其中,基准像素点为仪表的指针围绕旋转的中心点。由于仪表在通常情况下多为圆形,所以,该基准像素点在通常情况下为仪表的圆点。
进而,根据可以根据确定的各个第二坐标值,确定出与目标直线之间距离最近的两个第二坐标值。继续沿用上述例子,如图3所示,与目标直线之间距离最近的两个第二坐标值,即为距离指针最近的两个第二坐标值,在图3中,距离指针最近的两个第二坐标值分别为字符50区域和字符60区域各自所对应的中心像素点A和C的坐标值,即,坐标值和坐标值(1,-1)。
进而,可以根据第一坐标值与两个第二坐标值,分别确定出第一直线与第二直线。继续沿用上述例子,如图3所示,根据像素点O的坐标值(0,0)与像素点A的坐标值确定出第一直线OA,根据根像素点O的坐标值(0,0)与像素点A的坐标值(1,-1),确定出第二直线OC。
从而,便可以根据目标直线分别与第一直线以及第二直线之间的夹角,确定出仪表的读数。继续沿用上述例子,如图3所示,由于指针所在的目标直线为OB,那么便可获知目标直线OB与第一直线OA之间的夹角AOB为23°,目标直线OB与第一直线OA之间的夹角BOC为22°,那么根据夹角AOB与夹角BOC之间的比例,可以确定出夹角AOB对应的温度值为23÷45×10℃≈5.11℃,进而便可确定出仪表的读数为50+5.11=55.11℃。
在一种可能的实施方式中,由于在实际场景中,图像数据在产生、传输以及记录过程中,经常会受到各种噪声的干扰,因此,在确定指针区域时,所确定的指针区域可能不唯一,如图4所示,为本申请实施例提供的指针区域不唯一的一种示意图,其中,图4中包含2个指针区域,指针区域A为目标指针区域,指针区域B为噪声所产生的指针区域。那么在以指针区域B来进行读数识别时,则会出现错误读数的情况时,进而导致仪表读数识别的准确性降低。
因此,在本申请实施例中,可以通过寻找仪表区域中各个候选指针区域多对应的最大连通域的方式,确定出指针所对应的目标指针区域,进而根据该目标指针区域确定出指针所在的位置,如图5所示,为本申请实施例提供的确定指针位置的一种流程示意图,具体流程介绍如下。
步骤501:对仪表区域进行特征提取,确定仪表区域中的指针特征信息。
步骤502:根据指针特征信息,从仪表区域中确定至少一个候选指针区域。
在本申请实施例中,可以采用深度学习网络来确定指针区域,具体的,可以采用高分辨网络(High-Resolution Net,HRNet)来确定候选指针区域,在对该HRNet网络进行训练时,为了减少后续进行直线拟合的计算量,可以采用适应于指针形状的多边形来对指针进行标注。
因此,在将HRNet网络训练完成之后,可以将从仪表区域中确定的指针特征信息输入该HRNet网络中,进而根据该HRNet网络,可以从仪表区域中确定至少一个候选指针区域。
步骤503:根据至少一个候选指针区域中各个候选指针区域包含的像素点数量,从至少一个候选指针区域中,确定出目标指针区域。
由于确定的候选指针区域可能不唯一,所以,需要从至少一个候选指针区域中确定出目标指针区域,且由于除目标指针区域之外的其它候选指针区域一般为噪声所产生,且在通常情况下,其所占区域面积是小于目标指针区域的。
因此,在本申请实施例中,可以通过寻找仪表区域中各个候选指针区域多对应的最大连通域的方式,来确定出指针所对应的目标指针区域。也就是说,需要确定至少一个候选指针区域中各个候选指针区域包含的像素点数量,其中,所包含的像素点数量越多,表示越有可能是目标指针区域。进而,在确定出各个候选指针区域包含的像素点数量之后,可以将至少一个候选指针区域中像素点数量最大的区域确定为目标指针区域。
当然,仪表中所包含的指针数量也可能不止一个,那么此时,就可以根据仪表中实际所包含的指针数量,来确定目标指针区域的数据量,例如,在仪表中所包含的指针数量为2个时,根据最大连通域的方式,可以将像素点数量最多的2个候选指针区域作为目标指针区域。
步骤504:在目标指针区域中,确定出目标直线。
在通常情况下,指针是具有一定宽度的,继而,若是直接根据未处理的指针所指示的位置来确定读数,难免会产生误差,因此,为了提高仪表读数识别的准确性,可以通过寻找一条具有用于代表该指针的指向的目标直线来确定读数。
为了减少计算量,在本申请实施例中,可以采用主成分分析(PrincipalComponent Analysis,PCA)的方法,将目标指针区域中对确定目标直线的贡献较小的像素点去除,来减少计算量,具体的,如图6所示,为采用PCA确定目标直线的一种流程示意图,具体流程介绍如下。
步骤5041:根据目标指针区域包含的多个像素点的像素特征,构造特征向量集。
在申请实施例中,特征向量集中的每个像素特征向量对应一个像素点。例如,目标指针区域包含5个像素点,它们分别为X1、X2、X3、X4和X5,其中,X1的像素特征向量为X2的像素特征向量为X3的像素特征向量为X4的像素特征为X5的像素特征向量为进而,根据这5个像素点的像素特征向量,可以构造如下所示的特征向量集:
其中,该特征向量集X是一个5×n的矩阵。
步骤5042:对特征向量集进行标准化处理,并确定标准化后的特征向量集的协方差矩阵。
在构造特征向量集之后,由于在降维映射的过程中,存在映射误差,因此,在降维之前,需要对特征向量集进行标准化处理,使所有特征拥有相似的尺度,以增强降维的效果。在此处,可以采用零均值标准化的方式来对该特征向量集进行标准化处理。
进而,在对特征向量集进行标准化处理之后,可以根据如下式子确定该特征向量集X的协方差矩阵Cov:
其中,该协方差矩阵Cov是n×n的矩阵。
步骤5043:根据协方差矩阵,确定像素特征向量中各个像素特征元素各自对应的权重值和权重特征向量。
在本申请实施例中,权重值可以用于表征像素特征信息量的大小,且多个像素点各自对应的权重值和权重特征向量的乘积所组成的集合为多个像素点的特征向量集。
具体的,可以采用奇异值分解的方式来确定协方差矩阵Cov的特征值与特征向量,可以采用奇异值分解确定出多个像素点中各个像素点各自对应的权重值和权重特征向量。进而可得如下待降维矩阵U:
U=[1u1,α2u2,…,αnun]
其中,待降维矩阵U是n×n的矩阵,αn为权重值,un为权重值αn对应的权重特征向量。
步骤5044:将确定的多个权重值按照降序进行排列,确定排序前K个的权重值所对应的K个权重特征向量。
在本申请实施例中,K为正整数。
具体的,在对待降维矩阵U进行降维时,可将确定权重特征向量根据多个权重值的大小按照降序进行排列,用户可以根据需求确定需要将权重特征向量降到多少维,例如,可以将权重特征向量从n维降到K,那么,可以将排序前K个的权重值所对应的K个权重特征向量保留,而K之后的权重特征向量则去除。即可以确定如下的降维矩阵U′:
U′=[α1u1,α2u2,…,αKuK]
即,将像素特征向量中,不太重要的一些元素去除掉。
步骤5045:根据K个权重特征向量,确定K条候选直线。
在本申请实施例中,每条候选直线可以为对应的权重特征向量的方向所在的直线。
步骤5046:根据多个像素点分别至K条候选直线之间的距离,从K条候选直线中确定目标直线。
例如,共有100个像素点,且确定出3条候选直线,那么需要这100个像素点与100个像素点候选直线1之间的距离和,与100个像素点候选直线2之间的距离和,以及与100个像素点候选直线3之间的距离和,选择距离和最小的候选直线作为目标直线。
在一种可能的实施例中,为了快速检测到包含仪表的目标图像中的仪表区域以及仪表区域中的多个字符区域,在本申请实施例中,可以采用只看一次(You Only LookOnce,YOLO)网络来检测目标图像中的仪表区域和仪表区域中的多个字符区域,如图7所示,为本申请实施例提供的检测仪表区域与字符区域的一种流程示意图,具体流程介绍如下。
步骤701:从目标图像中确定多个候选目标区域,以及确定每个候选目标区域包含的候选目标属于各个类别的类别置信度。
在本申请实施例中,每个候选目标区域包含一个候选目标,且类别可以包括仪表类别和字符类别。
在实际使用过程中,在将目标图像输入YOLO网络之后,可以将该目标图像划分为S×S个栅格,例如7×7的栅格,每个栅格负责检测中心点落入自身栅格中的物体,因此,这里最多可以预设出7×7×2=98个候选目标区域。
且,在通常情况下,每个栅格可以预测2个候选目标区域,以及C个分类,在本申请实施例中,由于仅对仪表区域以及字符区域进行检测,因此,在本申请实施例中,每个栅格可以只预测2个类的分类概率即可。
进而,每个候选目标区域的类别置信度可用如下式子进行求解:
其中,Pr(Classi|Object)表示目标Object属于第i个类别Class的分类概率;Pr(Object)表示候选目标区域中存在目标Object的概率;表示真实truth的目标区域与预测pred的目标区域之间的相关度,即重叠面积;可表示候选目标区域的置信度。可见,类别置信度既包含了候选目标区域中预测的类别Class的概率probability信息,也反映了候选目标区域是否含有目标Object和候选目标区域坐标的准确度。因此,可以根据类别置信度值来具体确定每一类别所对应的目标区域。
步骤702:针对仪表类别,根据多个候选目标区域属于仪表类别的类别置信度,从多个候选目标区域中,确定目标图像中的仪表区域。
在一种可能的实施例中,由于要从目标图像中检测出仪表区域以及仪表区域中的多个字符区域,即需要从一张目标图像检测出多个检测目标,因此,在本申请实施例中,可以采用非极大值抑制(Non-Maximum Suppression,NMS)方法来具体检测目标图像中的仪表区域和仪表区域中的多个字符区域,即去除候选目标区域中的重复区域,由于检测字符区域与检测仪表区域过程类似,所以,这里以检测目标图像中的仪表区域为例,如图8所示,为本申请实施例提供的检测仪表区域的一种具体流程示意图,具体流程介绍如下。
步骤801:根据每个候选目标区域对应的多个类别置信度,确定仪表类别对应的候选目标区域集合。
针对每一个类别而言,在某个候选目标区域对应于该类别的类别置信度值较小时,即表示在对应候选目标区域中存在对应类别的概率较小,因此,为了减少计算量,可将类别置信度大于预设类别置信度的候选目标区域确定为仪表类别对应的候选目标区域集合。例如,预设类别置信度可以设置为0.5,那么类别置信度大于0.5的候选目标区域可以确定为仪表类别对应的候选目标区域集,例如,候选目标区域集为(候选目标区域1,候选目标区域2,候选目标区域3,候选目标区域4,候选目标区域5)。
步骤802:针对仪表类别,确定候选目标区域集合中,类别置信度最大的候选目标区域分别与剩余的所有候选目标区域之间的重合面积,是否大于预设重合面积。
具体的,继续沿用上述例子,候选目标区域集为(候选目标区域1,候选目标区域2,候选目标区域3,候选目标区域4,候选目标区域5),其中,假设这5个候选目标区域中,候选目标区域5的类别置信度最大,那么可以确定候选目标区域5分别与候选目标区域、2、3和4之间的重合面积,是否大于预设重合面积。其中,在大于预设重合面积时,表示这2个候选目标区域可能为同一个目标区域,而在大于预设重合面积时,表示这2个候选目标区域可能不为同一个目标区域。
步骤803:在大于预设重合面积时,将大于预设重合面积所对应的剩余候选目标区域以及类别概率最大的候选目标区域从候选目标区域集合中删除,确定更新后的候选目标区域集合;
具体的,由于在大于预设重合面积时,表示这2个候选目标区域可能为同一个目标区域,因此,这2个候选目标区域中有一个候选目标区域为重复的目标区域,即为无用的目标区域,例如,在将候选目标区域5与候选目标区域、2、3和4之间的重叠面积均确定完之后,发现候选目标区域5与候选目标区域1、3之间的重合面积均大于预设重合面积,那么可以将候选目标区域1和3从候选目标区域集合中删除,那么可以确定更新后的候选目标区域集合为(候选目标区域2,候选目标区域4)。
当然,在不大于预设重合面积时,表示这2个候选目标区域可能不为同一个目标区域,因此可以将不大于预设重合面积所对应的剩余候选目标区域保留至候选目标区域集合中。
步骤804:将类别概率最大的候选目标区域加入仪表类别对应的待输出目标区域集合中。
在本申请实施例中,待输出目标区域集合中包含目标图像中的仪表区域。
例如,继续沿用上述例子,可将候选目标区域5加入仪表类别对应的待输出目标区域集合中。
进而,针对更新后的候选目标区域集合,可以再执行步骤702-704所述的过程,直至候选目标区域集合中不存在候选目标区域。例如,最终可以确定待输出目标区域集合为(候选目标区域5,候选目标区域2),那么目标图像中可能存在2个仪表区域。
步骤703:针对字符类别,根据多个候选目标区域属于字符类别的类别置信度以及仪表区域,从多个候选目标区域中,确定仪表区域中的多个字符区域。
在本申请实施例中,与指针类别确定指针区域的过程类似,针对字符类别,可以根据多个候选目标区域属于字符类别的类别置信度以及仪表区域,从多个候选目标区域中,确定出仪表区域中的多个字符区域。
在一种可能的实施例中,由于通常情况下进行字符检测时,仅能对0-9这共10类数字字符进行检测,但是在仪表中有可能还存在其它种类的字符,例如温度仪表中的温度单位℃,这个字符被检测之后,若是送往字符识别网络模型中,则有较大可能被识别为数字0,进而,造成错误识别的情况,如图9所示,为错误检测字符的一种示意图。
因此,在本申请实施例中,为了提高字符识别的精确度,在原来10个分类的基础上,增加了“*”这一字符类,该“*”类可以用于表示除0-9之外的任何字符,进而能够对多余字符区域的问题进行解决。
在本申请实施例中,可以采用卷积神经网络(Convolutional Recurrent NeuralNetwork,CRNN)的方法来识别字符区域中字符,该CRNN可以由卷积层、循环层和转录层所构成,由于每一个字符区域的识别过程类似,因此,这里以多个字符区域中的字符区域A的识别过程为例进行介绍,如图10所示,为采用CRNN进行字符识别的一种流程示意图,具体流程介绍如下。
步骤1001:针对多个字符区域中的字符区域A,对字符区域A进行特征提取,确定相应的字符特征向量序列。
具体的,可以将字符区域A输入CRNN中的卷积层中,由于字符可能不是有单一个字符组成,例如字符区域A的50,就是由“5”和“0”所组成,因此,在通过卷积层会对字符区域A进行特征提取时,所确定字符特征向量可能为字符特征向量序列。
步骤1002:根据字符特征向量序列进行字符预测,确定字符区域A的字符序列,字符序列包含字符区域A中每个字符位置上的字符预测结果。
在本申请实施例中,确定字符特征向量之后,可以将该字符特征向量输入至CRNN中的循环层中,该循环层可以由一个双向的长短期记忆(Long Short-Term Memory,LSTM)网络构成,由于LSTM需要有个时间维度,因此,可以将字符特征向量序列的宽度当作LSTM的时间步。
步骤1003:根据字符序列,确定字符区域A所对应的字符。
在确定预测的字符序列之后,此时,字符序列所对应的字符是单个字符,例如,字符区域A的50来说,在经过循环层之后仅能确定到单个的字符“5”和字符“0”,这明显与字符“50”不符,因此,可以将该字符序列输入至CRNN中的转录层中,在该转录层中可以连接一个联接时间分类(Connectionist Temporal Classification,CTC)模型,去掉字符预测结果中间隔字符、去掉重复字符等,进而解决输入的字符序列与给定标签的对齐问题,进而,可以确定出字符区域A所对应的字符“50”。
在一种可能的实施方式中,由于图像数据在产生、传输以及记录过程中,经常会受到各种噪声的干扰,因此,在本申请实施例中,在对包含仪表的目标图像进行目标检测之前,可以先对该目标图像进行预处理,以降低噪声对图像影响。
例如,由于通常情况默认自然图像是一类平稳的数据分布,即数据每一维的统计都服从相同分布,那么,在每个样本上减去数据的统计平均值可以移除共同的部分,以凸显个体差异。因此,在本申请实施例中,可以通过减去整个图像的红绿蓝(Red Green Blue,RGB)均值的方式来以凸显目标图像中各个像素点之间的个体差异。进而在通过归一化处理的方式,使图像中各个像素点的像素值由0-255的范围变为0-1的范围,进而减弱了图像中因光照或者阴影等因素的影响。
具体的,可以先确定目标图像中所有像素点的像素特征值的均值。该均值为RGB均值,例如,可以为50。
进而,再确定每个像素点的像素特征值与均值之间的差值,来确定第一像素矩阵。其中,第一像素矩阵中每一个值为一个像素点对应的差值。
然后,再对该第一像素矩阵进行归一化处理,以确定第二像素矩阵。
最后,便可以根据该第二像素矩阵来进行目标检测,以确定出目标图像中的仪表区域,以及仪表区域中的多个字符区域,进而,以达到消除图像在传输过程中噪声对图像造成的影响。
综上所述,在本申请实施例中,由于在整个读数识别过程不需要人工干预,而是直接进行端到端的读数确定,减少了由人为操作而引起的主观误差,提高了仪表读数识别的准确性,同时降低了仪表读数识别的繁琐程度。且,还可以通过确定至少一个候选指针区域中各个候选指针区域包含的像素点数量,从至少一个候选指针区域中,剔除因噪声而错误确定到的候选指针区域,从而准确确定出目标指针区域,进而在该目标指针区域中,确定出指针所在的目标直线,以进一步提高了仪表读数识别的准确性。
如图11所示,基于同一发明构思,本申请实施例提供一种仪表读数识别装置110,该装置包括:
区域确定单元1101,用于对包含仪表的目标图像进行目标检测,确定目标图像中的仪表区域,以及确定仪表区域中的多个字符区域;
指针直线确定单元1102,用于对仪表区域进行指针识别,确定仪表的指针方向所在的目标直线;
字符确定单元1103,用于分别对所述多个字符区域中各个字符区域进行字符识别,确定所述各个字符区域各自所对应的字符;
读数确定单元1104,用于根据确定的所述目标直线以及确定的各个字符,确定所述仪表的读数。
作为一种实施例,指针直线确定单元1102,具体用于:
对仪表区域进行特征提取,确定仪表区域中的指针特征信息;
根据指针特征信息,从仪表区域中确定至少一个候选指针区域;
根据至少一个候选指针区域中各个候选指针区域包含的像素点数量,从至少一个候选指针区域中,确定出目标指针区域;
在目标指针区域中,确定出目标直线。
作为一种实施例,指针直线确定单元1102,具体还用于:
根据目标指针区域包含的多个像素点的像素特征,构造特征向量集,特征向量集中的每个像素特征向量对应一个像素点;
对特征向量集进行标准化处理,并确定标准化后的特征向量集的协方差矩阵;
根据协方差矩阵,确定像素特征向量中各个像素特征元素各自对应的权重值和权重特征向量;其中,权重值用于表征像素特征信息量的大小,且各个像素特征元素各自对应的权重值和权重特征向量的乘积所组成的集合的模为多个像素点的特征向量集的模;
将确定的多个权重值按照降序进行排列,确定排序前K个的权重值所对应的K个权重特征向量;其中,K为正整数;
根据K个权重特征向量,确定K条候选直线,其中,每条候选直线为对应的权重特征向量的方向所在的直线;
根据多个像素点分别至K条候选直线之间的距离,从K条候选直线中确定目标直线。
作为一种实施例,读数确定单元1104,具体用于:
从仪表区域确定仪表的基准像素点的第一坐标值,以及各个字符区域各自所对应的区域中心像素点的第二坐标值,基准像素点为仪表的指针围绕旋转的中心点;
根据确定的各个第二坐标值,确定与目标直线之间距离最近的两个第二坐标值;
根据第一坐标值与两个第二坐标值,分别确定出第一直线与第二直线;
根据目标直线分别与第一直线以及第二直线之间的夹角,确定仪表的读数。
作为一种实施例,区域确定单元1101,具体用于:
从目标图像中确定多个候选目标区域,以及每个候选目标区域包含的候选目标属于各个类别的类别置信度,其中,每个候选目标区域包含一个候选目标;类别包括仪表类别和字符类别;
针对仪表类别,根据多个候选目标区域属于仪表类别的类别置信度,从多个候选目标区域中,确定目标图像中的仪表区域;以及,
针对字符类别,根据多个候选目标区域属于字符类别的类别置信度以及仪表区域,从多个候选目标区域中,确定仪表区域中的多个字符区域。
作为一种实施例,区域确定单元1101,具体还用于:
根据每个候选目标区域对应的多个类别置信度,确定仪表类别对应的候选目标区域集合;
针对候选目标区域集合循环迭代执行如下操作,直至候选目标区域集合中不存在候选目标区域:
针对仪表类别,确定候选目标区域集合中,类别概率最大的候选目标区域分别与剩余的所有候选目标区域之间的重合面积,是否大于预设重合面积;
在大于预设重合面积时,将大于预设重合面积所对应的剩余候选目标区域以及类别概率最大的候选目标区域从第一候选目标区域集合中删除,确定更新后的候选目标区域集合;
将类别概率最大的候选目标区域加入仪表类别对应的待输出目标区域集合中;其中,待输出目标区域集合中包含目标图像中的仪表区域。
作为一种实施例,字符确定单元1103,具体还用于:
分别针对多个字符区域,执行如下操作:
针对多个字符区域中的一个字符区域,对一个字符区域进行特征提取,确定相应的字符特征向量;
根据字符特征向量进行字符预测,确定一个字符区域的字符序列,字符序列包含一个字符区域中每个字符位置上的字符预测结果;
根据字符序列,确定一个字符区域所对应的字符。
作为一种实施例,该装置110还包括预处理单元1105,该预处理单元1105,用于:
确定目标图像中所有像素点的像素特征值的均值;
确定每个像素点的像素特征值与均值之间的差值,确定第一像素矩阵,第一像素矩阵中每一个值为一个像素点对应的差值;
对第一像素矩阵进行归一化处理,确定第二像素矩阵;
根据第二像素矩阵进行目标检测,确定目标图像中的仪表区域,以及仪表区域中的多个字符区域。
该装置可以用于执行图2~图10所示的实施例中所述的方法,因此,对于该装置的各功能模块所能够实现的功能等可参考图2~图10所示的实施例的描述,不多赘述。需要说明的是,图11中的虚线框示出的功能模块为该装置的非必要功能模块。
请参见图12,基于同一技术构思,本申请实施例还提供了一种计算机设备120,可以包括存储器1201和处理器1202。
所述存储器1201,用于存储处理器1202执行的计算机程序。存储器1201可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据计算机设备的使用所创建的数据等。处理器1202,可以是一个中央处理单元(central processing unit,CPU),或者为数字处理单元等等。本申请实施例中不限定上述存储器1201和处理器1202之间的具体连接介质。本申请实施例在图12中以存储器1201和处理器1202之间通过总线1203连接,总线1203在图12中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线1203可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1201可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器1201也可以是非易失性存储器(non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)、或者存储器1201是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1201可以是上述存储器的组合。
处理器1202,用于调用所述存储器1201中存储的计算机程序时执行如图2~图10所示的实施例中设备所执行的方法。
在一些可能的实施方式中,本申请提供的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算机设备上运行时,所述程序代码用于使所述计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的方法中的步骤,例如,所述计算机设备可以执行如图2~图10所示的实施例中所述的方法。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (11)
1.一种仪表读数识别方法,其特征在于,所述方法包括:
对包含仪表的目标图像进行目标检测,确定所述目标图像中的仪表区域,以及确定所述仪表区域中的多个字符区域;
对所述仪表区域进行指针识别,确定所述仪表的指针指向的方向所在的目标直线;
分别对所述多个字符区域中各个字符区域进行字符识别,确定所述各个字符区域各自所对应的字符;
根据确定的所述目标直线以及确定的各个字符,确定所述仪表的读数。
2.如权利要求1所述的方法,其特征在于,对所述仪表区域进行指针识别,确定所述仪表的指针指向的方向所在的目标直线,包括:
对所述仪表区域进行特征提取,确定所述仪表区域中的指针特征信息;
根据所述指针特征信息,从所述仪表区域中确定至少一个候选指针区域;
根据所述至少一个候选指针区域中各个候选指针区域包含的像素点数量,从所述至少一个候选指针区域中,确定出目标指针区域;
在所述目标指针区域中,确定出所述目标直线。
3.如权利要求2所述的方法,其特征在于,在所述目标指针区域中,确定出所述目标直线,包括:
根据所述目标指针区域包含的多个像素点的像素特征,构造特征向量集,所述特征向量集中的每个像素特征向量对应一个像素点;
对所述特征向量集进行标准化处理,并确定标准化后的特征向量集的协方差矩阵;
根据所述协方差矩阵,确定所述像素特征向量中各个像素特征元素各自对应的权重值和权重特征向量;其中,所述权重值用于表征像素特征信息量的大小,且所述各个像素特征元素各自对应的权重值和权重特征向量的乘积所组成的集合的模为所述多个像素点的特征向量集的模;
将确定的多个权重值按照降序进行排列,确定排序前K个的权重值所对应的K个权重特征向量;其中,K为正整数;
根据所述K个权重特征向量,确定K条候选直线,其中,每条候选直线为对应的权重特征向量的方向所在的直线;
根据所述多个像素点分别至所述K条候选直线之间的距离,从所述K条候选直线中确定所述目标直线。
4.如权利要求1所述的方法,其特征在于,根据确定的所述目标直线以及确定的各个字符,确定所述仪表的读数,包括:
从所述仪表区域确定所述仪表的基准像素点的第一坐标值,以及各个字符区域各自所对应的区域中心像素点的第二坐标值,所述基准像素点为所述仪表的指针围绕旋转的中心点;
根据确定的各个第二坐标值,确定与所述目标直线之间距离最近的两个第二坐标值;
根据所述第一坐标值与所述两个第二坐标值,分别确定出第一直线与第二直线;
根据所述目标直线分别与所述第一直线以及所述第二直线之间的夹角,确定所述仪表的读数。
5.如权利要求1所述的方法,其特征在于,对包含仪表的目标图像进行目标检测,确定所述目标图像中的仪表区域,以及确定所述仪表区域中的多个字符区域,包括:
从所述目标图像中确定多个候选目标区域,以及确定每个候选目标区域包含的候选目标属于各个类别的类别置信度,其中,每个候选目标区域包含一个候选目标;所述类别包括仪表类别和字符类别;
针对所述仪表类别,根据所述多个候选目标区域属于所述仪表类别的类别置信度,从多个候选目标区域中,确定目标图像中的仪表区域;以及,
针对所述字符类别,根据所述多个候选目标区域属于所述字符类别的类别置信度以及所述仪表区域,从多个候选目标区域中,确定所述仪表区域中的多个字符区域。
6.如权利要求5所述的方法,其特征在于,针对所述仪表类别,根据所述多个候选目标区域属于所述仪表类别的类别置信度,从多个候选目标区域中,确定目标图像中的仪表区域,包括:
根据每个候选目标区域对应的多个类别置信度,确定所述仪表类别对应的候选目标区域集合;
针对所述候选目标区域集合循环迭代执行如下操作,直至所述候选目标区域集合中不存在候选目标区域:
针对所述仪表类别,确定候选目标区域集合中,类别概率最大的候选目标区域分别与剩余的所有候选目标区域之间的重合面积,是否大于预设重合面积;
在大于预设重合面积时,将大于预设重合面积所对应的剩余候选目标区域以及所述类别概率最大的候选目标区域从第一候选目标区域集合中删除,确定更新后的候选目标区域集合;
将所述类别概率最大的候选目标区域加入所述仪表类别对应的待输出目标区域集合中;其中,所述待输出目标区域集合中包含所述目标图像中的仪表区域。
7.如权利要求1所述的方法,其特征在于,分别对所述多个字符区域中各个字符区域进行字符识别,确定所述各个字符区域各自所对应的字符,包括:
分别针对所述多个字符区域,执行如下操作:
针对多个字符区域中的一个字符区域,对所述一个字符区域进行特征提取,确定相应的字符特征向量序列;
根据所述字符特征向量序列进行字符预测,确定所述一个字符区域的字符序列,所述字符序列包含所述一个字符区域中每个字符位置上的字符预测结果;
根据所述字符序列,确定所述一个字符区域所对应的字符。
8.如权利要求1~7任一所述的方法,其特征在于,对包含仪表的目标图像进行目标检测,确定所述目标图像中的仪表区域,以及确定所述仪表区域中的多个字符区域,包括:
确定所述目标图像中所有像素点的像素特征值的均值;
确定每个像素点的像素特征值与所述均值之间的差值,确定第一像素矩阵,所述第一像素矩阵中每一个值为一个像素点对应的差值;
对所述第一像素矩阵进行归一化处理,确定第二像素矩阵;
根据所述第二像素矩阵进行目标检测,确定所述目标图像中的仪表区域,以及确定所述仪表区域中的多个字符区域。
9.一种仪表读数识别装置,其特征在于,所述装置包括:
区域确定单元,用于对包含仪表的目标图像进行目标检测,确定所述目标图像中的仪表区域,以及确定所述仪表区域中的多个字符区域;
指针直线确定单元,用于对所述仪表区域进行指针识别,确定所述仪表的指针方向所在的目标直线;
字符确定单元,用于分别对所述多个字符区域中各个字符区域进行字符识别,确定所述各个字符区域各自所对应的字符;
读数确定单元,用于根据确定的所述目标直线以及确定的各个字符,确定所述仪表的读数。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,
所述处理器执行所述计算机程序时实现权利要求1至8任一项所述方法的步骤。
11.一种计算机存储介质,其上存储有计算机程序指令,其特征在于,
该计算机程序指令被处理器执行时实现权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110824649.5A CN113469167A (zh) | 2021-07-21 | 2021-07-21 | 仪表读数识别方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110824649.5A CN113469167A (zh) | 2021-07-21 | 2021-07-21 | 仪表读数识别方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113469167A true CN113469167A (zh) | 2021-10-01 |
Family
ID=77881499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110824649.5A Pending CN113469167A (zh) | 2021-07-21 | 2021-07-21 | 仪表读数识别方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113469167A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115082922A (zh) * | 2022-08-24 | 2022-09-20 | 济南瑞泉电子有限公司 | 基于深度学习的水表数字图片处理方法及系统 |
CN117095412A (zh) * | 2023-10-19 | 2023-11-21 | 四川泓宝润业工程技术有限公司 | 天然气数字仪表字符检测与识别方法、装置和存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295652A (zh) * | 2016-07-27 | 2017-01-04 | 中测高科(北京)测绘工程技术有限责任公司 | 一种直线特征匹配方法及系统 |
CN107490398A (zh) * | 2017-08-04 | 2017-12-19 | 湖北工业大学 | 一种仪表指针自动识别方法 |
CN110363202A (zh) * | 2019-07-23 | 2019-10-22 | 深圳中科捷飞科技有限公司 | 指针式仪表数值读取方法及计算机终端 |
CN110378225A (zh) * | 2019-06-14 | 2019-10-25 | 南京泛函智能技术研究院有限公司 | 指针式仪表自动读数的识别方法及识别装置 |
CN112052839A (zh) * | 2020-10-10 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 图像数据处理方法、装置、设备以及介质 |
CN112085752A (zh) * | 2020-08-20 | 2020-12-15 | 浙江华睿科技有限公司 | 一种图像的处理方法、装置、设备及介质 |
CN112115897A (zh) * | 2020-09-24 | 2020-12-22 | 深圳市赛为智能股份有限公司 | 多指针仪表报警检测方法、装置、计算机设备及存储介质 |
CN112257703A (zh) * | 2020-12-24 | 2021-01-22 | 北京世纪好未来教育科技有限公司 | 图像识别方法、装置、设备和可读存储介质 |
CN112257676A (zh) * | 2020-11-19 | 2021-01-22 | 南京天创电子技术有限公司 | 一种指针式仪表读数方法、系统以及巡检机器人 |
CN112686264A (zh) * | 2020-12-31 | 2021-04-20 | 中广核研究院有限公司 | 数字式仪表读数方法、装置、计算机设备和存储介质 |
US20210142099A1 (en) * | 2019-11-07 | 2021-05-13 | Sap Se | Pointer recognition for analog instrument image analysis |
-
2021
- 2021-07-21 CN CN202110824649.5A patent/CN113469167A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295652A (zh) * | 2016-07-27 | 2017-01-04 | 中测高科(北京)测绘工程技术有限责任公司 | 一种直线特征匹配方法及系统 |
CN107490398A (zh) * | 2017-08-04 | 2017-12-19 | 湖北工业大学 | 一种仪表指针自动识别方法 |
CN110378225A (zh) * | 2019-06-14 | 2019-10-25 | 南京泛函智能技术研究院有限公司 | 指针式仪表自动读数的识别方法及识别装置 |
CN110363202A (zh) * | 2019-07-23 | 2019-10-22 | 深圳中科捷飞科技有限公司 | 指针式仪表数值读取方法及计算机终端 |
US20210142099A1 (en) * | 2019-11-07 | 2021-05-13 | Sap Se | Pointer recognition for analog instrument image analysis |
CN112085752A (zh) * | 2020-08-20 | 2020-12-15 | 浙江华睿科技有限公司 | 一种图像的处理方法、装置、设备及介质 |
CN112115897A (zh) * | 2020-09-24 | 2020-12-22 | 深圳市赛为智能股份有限公司 | 多指针仪表报警检测方法、装置、计算机设备及存储介质 |
CN112052839A (zh) * | 2020-10-10 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 图像数据处理方法、装置、设备以及介质 |
CN112257676A (zh) * | 2020-11-19 | 2021-01-22 | 南京天创电子技术有限公司 | 一种指针式仪表读数方法、系统以及巡检机器人 |
CN112257703A (zh) * | 2020-12-24 | 2021-01-22 | 北京世纪好未来教育科技有限公司 | 图像识别方法、装置、设备和可读存储介质 |
CN112686264A (zh) * | 2020-12-31 | 2021-04-20 | 中广核研究院有限公司 | 数字式仪表读数方法、装置、计算机设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
HU WEI 等: "Intelligent recognition method of the typical pointer electric instrument based on machine vision", 《EITCE \'20: PROCEEDINGS OF THE 2020 4TH INTERNATIONAL CONFERENCE ON ELECTRONIC INFORMATION TECHNOLOGY AND COMPUTER ENGINEERING》, 1 February 2021 (2021-02-01), pages 464 * |
杨应彬 等: "基于Hough变换与特征聚类的指针轮廓识别方法", 《机械设计与研究》, 30 June 2019 (2019-06-30), pages 7 - 11 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115082922A (zh) * | 2022-08-24 | 2022-09-20 | 济南瑞泉电子有限公司 | 基于深度学习的水表数字图片处理方法及系统 |
CN117095412A (zh) * | 2023-10-19 | 2023-11-21 | 四川泓宝润业工程技术有限公司 | 天然气数字仪表字符检测与识别方法、装置和存储介质 |
CN117095412B (zh) * | 2023-10-19 | 2023-12-15 | 四川泓宝润业工程技术有限公司 | 天然气数字仪表字符检测与识别方法、装置和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110472675B (zh) | 图像分类方法、图像分类装置、存储介质与电子设备 | |
US8744176B2 (en) | Object segmentation at a self-checkout | |
CN113159147B (zh) | 基于神经网络的图像识别方法、装置、电子设备 | |
CN110781756A (zh) | 基于遥感图像的城市道路提取方法及装置 | |
CN113469167A (zh) | 仪表读数识别方法、装置、设备及存储介质 | |
CN111428557A (zh) | 基于神经网络模型的手写签名的自动校验的方法和装置 | |
CN111753863A (zh) | 一种图像分类方法、装置、电子设备及存储介质 | |
CN111814740B (zh) | 指针仪表读数的识别方法、装置、计算机设备和存储介质 | |
CN112560845A (zh) | 字符识别方法、装置、智能取餐柜、电子设备及存储介质 | |
CN114722958A (zh) | 网络训练及目标检测方法、装置、电子设备和存储介质 | |
CN113986674A (zh) | 时序数据的异常检测方法、装置和电子设备 | |
CN115311469A (zh) | 图像标注方法、训练方法、图像处理方法以及电子设备 | |
CN110135428B (zh) | 图像分割处理方法和装置 | |
CN112163019B (zh) | 基于区块链的可信电子批记录处理方法及区块链服务平台 | |
CN111931721B (zh) | 年检标签颜色和个数的检测方法、装置及电子设备 | |
CN116524477A (zh) | 一种识别检测盒检测结果的方法及系统 | |
CN109934185A (zh) | 数据处理方法及装置、介质和计算设备 | |
CN114782822A (zh) | 电力设备的状态检测方法、装置、电子设备及存储介质 | |
CN113127866B (zh) | 恶意代码的特征码提取方法、装置和计算机设备 | |
CN110533050B (zh) | 图片地理信息获取方法、装置、计算机设备及存储介质 | |
CN114663760A (zh) | 模型训练的方法、目标检测方法、存储介质及计算设备 | |
CN110232302B (zh) | 一种集成灰度值、空间信息和类别知识的变化检测方法 | |
CN113012189A (zh) | 图像识别方法、装置、计算机设备和存储介质 | |
CN108154107B (zh) | 一种确定遥感图像归属的场景类别的方法 | |
CN112750124A (zh) | 模型生成、图像分割方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |