CN114565911B - 一种仪表识读方法、装置、计算机设备和存储介质 - Google Patents
一种仪表识读方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114565911B CN114565911B CN202210190135.3A CN202210190135A CN114565911B CN 114565911 B CN114565911 B CN 114565911B CN 202210190135 A CN202210190135 A CN 202210190135A CN 114565911 B CN114565911 B CN 114565911B
- Authority
- CN
- China
- Prior art keywords
- scale
- pointer
- mark
- horizontal direction
- line
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 230000011218 segmentation Effects 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 5
- 238000005520 cutting process Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 15
- 238000001514 detection method Methods 0.000 description 7
- 238000005452 bending Methods 0.000 description 5
- 238000005286 illumination Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S20/00—Management or operation of end-user stationary applications or the last stages of power distribution; Controlling, monitoring or operating thereof
- Y04S20/30—Smart metering, e.g. specially adapted for remote reading
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Character Discrimination (AREA)
Abstract
本公开提供了一种仪表识读方法、装置、计算机设备和存储介质,其中,该方法包括:获取仪表图像;对仪表图像进行刻度线识别和文本识别,并基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,以及相邻主刻度线之间的最小刻度;基于刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置;目标主刻度线位置为在指针预设方向的主刻度线位置;距离识别到的指针最近的刻度线位置为一副刻度线位置或一主刻度线位置;基于距离指针最近的刻度线位置和目标主刻度线位置,以及确定的各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定仪表的读数。
Description
技术领域
本公开涉及计算机视觉技术领域,具体而言,涉及一种仪表识别方法、装置、计算机设备和存储介质。
背景技术
指针式仪表因具备构造简单、安装方便、成本低廉等优点而被广泛应用在各种工业场景中。在获取指针式仪表的读数时,一般主要依靠人工读数的方式,既耗费了大量的人力资源,又降低了读数效率。
为了提高读数效率,降低人工成本,虽然也相继出现了一些针对特定类型的指针式仪表的自动读数的方式,但这些方式通常存在着读数结果不精、只能适用于特定类型的仪表、通用性较差的问题。
发明内容
本公开实施例至少提供一种仪表识读方法、装置、计算机设备和存储介质。
第一方面,本公开实施例提供了一种仪表识读方法,包括:
获取仪表图像;
对所述仪表图像进行刻度线识别和文本识别,并基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,以及相邻主刻度线之间的最小刻度;
基于所述刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置;所述目标主刻度线位置为在指针预设方向的主刻度线位置;所述距离识别到的指针最近的刻度线位置为一副刻度线位置或一主刻度线位置;
基于所述距离所述指针最近的刻度线位置和所述目标主刻度线位置,以及确定的所述各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定所述仪表的读数。
该实施方式,通过对仪表图像进行刻度线识别,可以识别出仪表图像中包括的任一类型的仪表的各个主刻度线和副刻度线,也即得到刻度线识别结果;通过对仪表图像进行文本识别,可以识别出仪表中标识出的针对主刻度线的各个刻度值,以及相邻主刻度线之间的最小刻度(主刻度线对应的刻度值和主刻度线之间的最小刻度也即决定了各个副刻度线对应的刻度值),这样,能够实现对各种类型的仪表的识别,通用性较强。最后利用距离指针最近的刻度线位置、在指针预设方向的目标主刻度线位置及其对应的刻度值、和最小刻度进行仪表读数的确定,这里的预设方向可以选择趋向刻度线均匀的方向或称趋向刻度值升高的方向(一般仪表中开始的刻度线是不均匀的,比如最左边的两个主刻度线之间的刻度不均匀,此时选择的目标主刻度线可以为右主刻度线),通过上述方式确定的仪表读数能够尽量避免因仪表中开始的主刻度线之间的刻度不均匀导致的读数不准确的问题,从而能够提高仪表读数的精确度。
在一种可能的实施方式中,所述基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,包括:
基于所述刻度线识别结果,确定所述仪表对应的圆心位置;
基于所述圆心位置,将所述刻度线识别结果对应的各刻度线在所述仪表对应的极坐标系中的第一坐标,转换为在水平坐标系中的第二坐标;所述刻度线识别结果对应的各刻度线包括主刻度线和副刻度线;
将所述文本识别结果中的各刻度值在所述极坐标系中的第三坐标,转换为在所述水平坐标系中的第四坐标;
基于所述刻度线识别结果对应的所述各主刻度线对应的第三坐标,和所述各刻度值对应的所述第四坐标,确定所述各主刻度线对应的刻度值。
该实施方式,仪表对应的坐标系通常为极坐标系,基于确定的圆心位置、极坐标系与视频坐标系之间的转化关系,能够实现将刻度线识别结果对应的各刻度线在极坐标系中的第一坐标,转化为在水平坐标系中的第二坐标,进而实现将识别到的各刻度线进行水平化处理,同理,也可以实现对各刻度值的水平化处理。利用水平化处理后的刻度线和刻度值进行匹配,便于准确地确定出各主刻度线对应的刻度值。
在一种可能的实施方式中,所述基于所述刻度线识别结果对应的所述各主刻度线对应的第三坐标,和所述各刻度值对应的所述第四坐标,确定所述各主刻度线对应的刻度值,包括:
基于所述各主刻度线对应的第三坐标,确定所述各主刻度线在水平方向上对应的第一相对位置关系;
基于所述各刻度值对应的所述第四坐标,确定所述各刻度值在水平方向上对应的第二相对位置关系;
利用所述第一相对位置关系和所述第二相对位置关系,从所述刻度值中,确定所述各主刻度线对应的刻度值。
该实施方式,第一相对位置关系能够表征各主刻度线在水平方向上的左右位置关系,第二相对位置关系能够表征各刻度值在水平方向上的左右位置关系,左右位置关系相匹配的刻度值和主刻度线中的刻度值,大概率为主刻度线对应的刻度值,因此,基于上述第一相对位置关系和第二相对位置关系,进行主刻度线和刻度值的匹配,可以准确确定出各主刻度线对应的刻度值。
在一种可能的实施方式中,所述基于所述刻度线识别结果,确定所述仪表对应的圆心位置,包括:
基于所述刻度线识别结果指示的各刻度线的刻度线中心点,得到所述仪表对应的中心点集;
利用最小二乘法对所述中心点集中的中心点位置进行处理,确定所述仪表对应的圆心位置。
该实施方式,利用最小二乘法对所述中心点集中的中心点位置进行处理,能够实现对各刻度线对应的圆的准确拟合,从而确定出准确的圆心位置。
在一种可能的实施方式中,基于刻度线识别结果和文本识别结果,确定相邻主刻度线之间的最小刻度,包括:
基于所述各刻度线对应的第四坐标,将所述各刻度线转换为水平方向上的刻度线;
确定在所述水平方向上、每两个相邻的所述主刻度线之间的副刻度线的第一数量;
基于所述第一数量,以及两个相邻的所述主刻度线之间的刻度值差值,确定所述最小刻度。
该实施方式,两个相邻的主刻度线之间的刻度值差值,能够反映该两个相邻的主刻度线之间的量程跨域幅度,第一数量能够反映每两个相邻的主刻度线之间的量程跨域幅度被划分的段数,因此,基于第一数量和两个相邻的主刻度线之间的刻度值差值,可以准确确定出划分出的每一段对应的量程跨域幅度,也即,确定出最小刻度。
在一种可能的实施方式中,在基于所述刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置之前,还包括:
基于所述圆心位置,将识别到的指针在所述仪表对应的极坐标系中的第五坐标,转换为在水平坐标系中的第六坐标,并基于所述第六坐标,将所述指针转换为水平方向上的指针;
所述基于所述刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置,包括:
基于所述刻度线识别结果对应的所述各刻度线的第四坐标,将所述各刻度线转换为水平方向上的刻度线;
基于水平方向上的各刻度线,确定距离水平方向上的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置。
该实施方式,基于第六坐标,将指针转换为水平方向上的指针,也即实现了对识别到的指针的水平化处理。
在一种可能的实施方式中,所述基于水平方向上的各刻度线,确定距离水平方向上的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置,包括:
针对水平方向上每个所述刻度线,对所述刻度线进行垂直投影操作,得到所述刻度线对应的第一投影区域;
基于水平方向上每个所述刻度线对应的所述第一投影区域,对水平方向上的每个刻度线进行位置调整,得到调整后的水平方向上的每个刻度线;
对从水平方向上的所述指针中截取的目标指针段进行垂直投影,得到所述目标指针段对应的第二投影区域;
基于所述第二投影区域,对水平方向上的所述指针进行位置调整,得到调整后的水平方向上的指针;
基于调整后的水平方向上的每个刻度线,和所述调整后的水平方向上的指针,确定所述距离水平方向上的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置。
该实施方式,为避免水平化处理造成的指针和刻度线的弯曲,通过对水平化处理后的刻度线进行垂直投影的方式,对水平化处理后的刻度线进行位置调整,提高了调整后的水平方向上的每个刻度线的合理性。从水平方向上的指针中截取的目标指针段,即为指针前端的区域,即使水平化处理后使得指针弯曲,指针前端的区域指向的仪表位置,也将为最贴近水平化处理前的指针整体指向的仪表位置,通过对目标指针段进行垂直投影的方式,对水平化处理后的指针进行位置调整,既提高了调整后的水平方向上的指针的合理性,又提高了调整后的水平方向上的指针指向的仪表位置的准确性。
在一种可能的实施方式中,所述基于所述距离识别到的指针最近的刻度线位置和所述目标主刻度线位置,以及确定的所述各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定所述仪表的读数,包括:
在所述距离识别到的指针最近的刻度线位置为所述目标主刻度线位置的情况下,基于所述目标主刻度线对应的刻度值,确定所述仪表的读数;
在所述距离识别到的指针最近的刻度线位置为副刻度线位置的情况下,确定所述目标主刻度线与该副刻度线之间包括的其他副刻度线的第二数量;
基于所述第二数量、所述目标主刻度线对应的刻度值和所述最小刻度,确定所述仪表的读数。
该实施方式,基于第二数量和最小刻度,可以准确确定出识别到的指针对应的刻度值,与目标主刻度线对应的刻度值之间的差值,进而,基于目标主刻度线对应的刻度值和该差值,能够得到准确的仪表读数。
在一种可能的实施方式中,对所述仪表图像进行文本识别,包括:
对所述仪表图像进行文本区域识别,确定所述仪表图像中的各个文本区域,并分别对每个所述文本区域进行识别,确定每个所述文本区域对应的文本识别结果。
该实施方式,通过先识别文本区域,能够实现对仪表图像中的文本区域的准确定位;再通过对文本区域进行识别的方式,能够实现针对性的识别处理,从而,识别出准确得文本信息,得到准确的文本识别结果。
在一种可能的实施方式中,对所述仪表图像进行刻度线识别,包括:
利用目标分割网络对所述仪表图像进行刻度线识别,确定所述仪表图像对应的刻度线识别结果;其中,所述目标分割网络为利用预设数量的样本图像训练得到的;不同的所述样本图像中包括不同类型的仪表。
该实施方式,预先训练好的目标分割网络具有可靠的识别精度,利用目标分割网络进行刻度线识别,能够得到准确的刻度线识别结果。
在一种可能的实施方式中,在所述对所述仪表图像进行刻度线识别和文本识别之前,包括:
对所述仪表图像进行仪表区域的识别,并从所述仪表图像中裁剪出识别到的仪表区域,得到子仪表图像;
所述对所述仪表图像进行刻度线识别和文本识别,包括:
对所述子仪表图像进行刻度线识别和文本识别。
该实施方式,相比对仪表图像直接识别处理而言,通过对截取的子仪表图像进行刻度线识别和文本识别,能够降低识别处理的计算量。
第二方面,本公开实施例还提供一种仪表识读装置,包括:
获取模块,用于获取仪表图像;
第一确定模块,用于对所述仪表图像进行刻度线识别和文本识别,并基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,以及相邻主刻度线之间的最小刻度;
第二确定模块,用于基于所述刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置;所述目标主刻度线位置为在指针预设方向的主刻度线位置;所述距离识别到的指针最近的刻度线位置为一副刻度线位置或一主刻度线位置;
第三确定模块,用于基于所述距离所述指针最近的刻度线位置和所述目标主刻度线位置,以及确定的所述各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定所述仪表的读数。
在一种可能的实施方式中,所述第一确定模块,用于基于所述刻度线识别结果,确定所述仪表对应的圆心位置;
基于所述圆心位置,将所述刻度线识别结果对应的各刻度线在所述仪表对应的极坐标系中的第一坐标,转换为在水平坐标系中的第二坐标;所述刻度线识别结果对应的各刻度线包括主刻度线和副刻度线;
将所述文本识别结果中的各刻度值在所述极坐标系中的第三坐标,转换为在所述水平坐标系中的第四坐标;
基于所述刻度线识别结果对应的所述各主刻度线对应的第三坐标,和所述各刻度值对应的所述第四坐标,确定所述各主刻度线对应的刻度值。
在一种可能的实施方式中,所述第一确定模块,用于基于所述各主刻度线对应的第三坐标,确定所述各主刻度线在水平方向上对应的第一相对位置关系;
基于所述各刻度值对应的所述第四坐标,确定所述各刻度值在水平方向上对应的第二相对位置关系;
利用所述第一相对位置关系和所述第二相对位置关系,从所述刻度值中,确定所述各主刻度线对应的刻度值。
在一种可能的实施方式中,所述第一确定模块,用于基于所述刻度线识别结果指示的各刻度线的刻度线中心点,得到所述仪表对应的中心点集;
利用最小二乘法对所述中心点集中的中心点位置进行处理,确定所述仪表对应的圆心位置。
在一种可能的实施方式中,所述第一确定模块,用于基于所述各刻度线对应的第四坐标,将所述各刻度线转换为水平方向上的刻度线;
确定在所述水平方向上、每两个相邻的所述主刻度线之间的副刻度线的第一数量;
基于所述第一数量,以及两个相邻的所述主刻度线之间的刻度值差值,确定所述最小刻度。
在一种可能的实施方式中,所述第一确定模块,还用于在基于所述刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置之前,基于所述圆心位置,将识别到的指针在所述仪表对应的极坐标系中的第五坐标,转换为在水平坐标系中的第六坐标,并基于所述第六坐标,将所述指针转换为水平方向上的指针;
所述第二确定模块,用于基于所述刻度线识别结果对应的所述各刻度线的第四坐标,将所述各刻度线转换为水平方向上的刻度线;
基于水平方向上的各刻度线,确定距离水平方向上的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置。
在一种可能的实施方式中,所述第二确定模块,用于针对水平方向上每个所述刻度线,对所述刻度线进行垂直投影操作,得到所述刻度线对应的第一投影区域;
基于水平方向上每个所述刻度线对应的所述第一投影区域,对水平方向上的每个刻度线进行位置调整,得到调整后的水平方向上的每个刻度线;
对从水平方向上的所述指针中截取的目标指针段进行垂直投影,得到所述目标指针段对应的第二投影区域;
基于所述第二投影区域,对水平方向上的所述指针进行位置调整,得到调整后的水平方向上的指针;
基于调整后的水平方向上的每个刻度线,和所述调整后的水平方向上的指针,确定所述距离水平方向上的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置。
在一种可能的实施方式中,所述第三确定模块,用于在所述距离识别到的指针最近的刻度线位置为所述目标主刻度线位置的情况下,基于所述目标主刻度线对应的刻度值,确定所述仪表的读数;
在所述距离识别到的指针最近的刻度线位置为副刻度线位置的情况下,确定所述目标主刻度线与该副刻度线之间包括的其他副刻度线的第二数量;
基于所述第二数量、所述目标主刻度线对应的刻度值和所述最小刻度,确定所述仪表的读数。
在一种可能的实施方式中,所述第一确定模块,用于对所述仪表图像进行文本区域识别,确定所述仪表图像中的各个文本区域,并分别对每个所述文本区域进行识别,确定每个所述文本区域对应的文本识别结果。
在一种可能的实施方式中,所述第一确定模块,用于利用目标分割网络对所述仪表图像进行刻度线识别,确定所述仪表图像对应的刻度线识别结果;其中,所述目标分割网络为利用预设数量的样本图像训练得到的;不同的所述样本图像中包括不同类型的仪表。
在一种可能的实施方式中,所述装置还包括:
裁剪模块,用于在所述对所述仪表图像进行刻度线识别和文本识别之前,对所述仪表图像进行仪表区域的识别,并从所述仪表图像中裁剪出识别到的仪表区域,得到子仪表图像;
所述第一确定模块,用于对所述子仪表图像进行刻度线识别和文本识别。
第三方面,本公开可选实现方式还提供一种计算机设备,处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
第四方面,本公开可选实现方式还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
关于上述仪表识读装置、计算机设备、及计算机可读存储介质的效果描述参见上述仪表识读方法的说明,这里不再赘述。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种仪表识读方法的流程图;
图2示出了本公开实施例所提供的一种仪表图像的示意图;
图3示出了本公开实施例所提供的一种安培表的示意图;
图4示出了本公开实施例所提供的一种对各刻度线进行水平化处理前后的对比示意图;
图5示出了本公开实施例所提供的一种对水平化处理后的刻度线和指针进行调整前后的对比示意图;
图6示出了本公开实施例所提供的一种仪表读数的具体实施流程图;
图7示出了本公开实施例所提供的一种仪表识读装置的示意图;
图8示出了本公开实施例所提供的一种计算机设备结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
另外,本公开实施例中的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。
在本文中提及的“多个或者若干个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
经研究发现,针对指针仪表的自动识别方式,通常基于模板的方式进行,也即,利用实现训练好的、针对待识读型号的仪表的模板,对该待识读型号的仪表进行读数识别,这样,如果需要识别的仪表的类型与该待识读型号不同,将造成无法识别或识别结果精度较差的问题,导致该方式的通用性和准确性较差。此外,基于模板的方式在识别过程中,还需要利用二值化的方式,对仪表图像进行二值化处理,基于二值化处理的结果来确定仪表读数。但是,二值化处理容易受到仪表图像对应的光照强度、背景环境等因素的影响,导致二值化处理的结果较差,进一步的影响了仪表读数的精度。
基于上述研究,本公开提供了一种仪表识读方法、装置、计算机设备和存储介质,通过对仪表图像进行刻度线识别,可以识别出仪表图像中包括的任一类型的仪表的各个主刻度线和副刻度线,也即得到刻度线识别结果;通过对仪表图像进行文本识别,可以识别出仪表中标识出的针对主刻度线的各个刻度值,以及相邻主刻度线之间的最小刻度(主刻度线对应的刻度值和主刻度线之间的最小刻度也即决定了各个副刻度线对应的刻度值),这样,能够实现对各种类型的仪表的识别,通用性较强。最后利用距离指针最近的刻度线位置、在指针预设方向的目标主刻度线位置及其对应的刻度值、和最小刻度进行仪表读数的确定,这里的预设方向可以选择趋向刻度线均匀的方向或称趋向刻度值升高的方向(一般仪表中开始的刻度线是不均匀的,比如最左边的两个主刻度线之间的刻度不均匀,此时选择的目标主刻度线可以为右主刻度线),通过上述方式确定的仪表读数能够尽量避免因仪表中开始的主刻度线之间的刻度不均匀导致的读数不准确的问题,从而能够提高仪表读数的精确度。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种仪表识读方法进行详细介绍,本公开实施例所提供的在仪表识读方法的执行主体一般为具有一定计算能力的终端设备或其他处理设备,其中终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、个人数字处理设备(Personal Digital Assistant,PDA)、手持设备、计算机设备等;在一些可能的实现方式中,该仪表识读方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
下面以执行主体为计算机设备为例对本公开实施例提供的仪表识读方法加以说明。
如图1所示,为本公开实施例提供的一种仪表识读方法的流程图,可以包括以下步骤:
S101:获取仪表图像。
本公开实施例提供的仪表识读方法可以应用于任一工业场景,具体的,可以应用于对工业仪表的读数。工业仪表可以为任一类型的指针式仪表,例如,安培表、电压表、压力表等。同一类型的指针式体表,在具有不同量程、生产在不同厂家的情况下,其指针样式也将存在区别,这种情况下,本公开实施例提供的仪表识读方法均可以对其进行识读,也即,利用该仪表识读方法,可以实现对任一类型、任一样式的指针式仪表进行识别读数。
上述仪表图像可以为利用摄像装置拍摄的、包括待识别的仪表的图像,仪表图像中可以包括一个或多个待识别的仪表。如图2所示,为本公开实施例提供的一种仪表图像的示意图,图2中包括三个待识别的仪表——仪表A、仪表B和仪表C。
S102:对仪表图像进行刻度线识别和文本识别,并基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,以及相邻主刻度线之间的最小刻度。
上述刻度线识别结果即为识别到的位于仪表中的各个刻度线,以及各刻度线在仪表对应的极坐标系中的第一坐标。这里,针对仪表而言,其中的各刻度线通常以圆弧状呈现,因此,仪表可以对应于极坐标系,仪表中的刻度线对应的坐标可以为极坐标系中的坐标。上述仪表中的各个刻度线可以包括多个主刻度线和多个副刻度线。如图3所示,为本公开实施例提供的一种安培表的示意图,在该安培表中,包括多个主刻度线和多个副刻度线,在图3中,仅标注了部分主刻度线和部分副刻度线作为示意,此外,图3中还标注了安培表中的指针。
上述文本识别结果即为识别到的位于仪表中的各个文本,具体的,文本识别结果可以包括仪表中的刻度值、仪表类型标识、仪表量程、刻度分布等信息,具体的文本识别结果可由仪表图像中包括的具体仪表确定。在本公开实施例所提及的仪表中,通常仅仪表中的主刻度线存在对应的刻度值标注,副刻度线不存在对应的刻度值标注。因此,文本识别结果中包括的刻度值可以为主刻度线对应的刻度值。
最小刻度用于表征相邻的两个副刻度线之间的刻度跨度、以及主刻度线和相邻的副刻度线之间的刻度跨度。
具体实施时,可以对仪表图像进行刻度线识别,确定出仪表图像对应的仪表中的各个主刻度线及其对应的第一坐标、各个副刻度线及其对应的第一坐标,并且,还可以识别出的仪表中的指针,以及指针在仪表对应的极坐标系中的第五坐标(将在后文进行详细介绍);也即得到刻度线识别结果。并且,可以利用预先训练好的神经网络对仪表图像进行文本识别,确定出仪表中的各个文本信息,也即得到文本识别结果。
进一步的,可以根据刻度线识别结果指示的各个主刻度线的第一坐标,以及文本识别结果指示的各个刻度值的在极坐标系中的第三坐标,确定坐标匹配的主刻度线和刻度值,并将该匹配的刻度值作为该主刻度线对应的刻度值。从而,基于对第一坐标和第三坐标的匹配,可以确定出各主刻度线对应的刻度值。
其中,在主刻度线对应的第一坐标和刻度值对应的第三坐标之间的坐标位置最接近的情况下,或者,主刻度线对应的第一坐标和刻度值对应的第三坐标,在任一坐标轴上的坐标值存在重叠的情况下,可以认为该主刻度线和该刻度值相匹配。
在确定出各主刻度线对应的刻度值之后,针对确定最小刻度的步骤,可以基于各主刻度线对应的第一坐标,确定主刻度线之间的左右位置关系,进而,为避免仪表中起始的主刻度线和相邻的下一主刻度线之间的刻度划分,与其他相邻的两主刻度线之间的刻度划分不一致的情况,也即为避免仪表中起始的主刻度线和相邻的下一主刻度线之间的刻度划分不均匀的情况,可以根据除起始的主刻度线和相邻的下一主刻度线以外的,任一相邻的两主刻度线对应的刻度值差值,以及该任一相邻的两主刻度线之间的副刻度线的数量,确定相邻主刻度线之间的最小刻度。
另外,在一种实施方式中,在仪表图像中包括多个待识别的仪表的情况下,可以同步对多个待识别的仪表进行文本识别和刻度线识别,分别确定出每个待识别的仪表对应的刻度线识别结果和文本识别结果。之后,可以按照上述步骤,确定出各个仪表中的主刻度线对应的刻度值,以及各个仪表对应的最小刻度,此处不再赘述。
S103:基于刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置;目标主刻度线位置为在指针预设方向的主刻度线位置;距离识别到的指针最近的刻度线位置为一副刻度线位置或一主刻度线位置。
这里,预设方向可以选择趋向刻度线均匀的方向或称趋向刻度值升高的方向,例如,预设方向可以为右侧方向,也即,目标主刻度线位置为距离指针最近的、且位于指针右侧的主刻度线的位置。刻度线识别结果中包括识别到的各刻度线的位置和识别到的指针的位置,其中,位置即坐标。
具体实施时,可以根据识别到指针对应的第五坐标,以及各个主刻度线对应的第一坐标,确定出每个第一坐标和第五坐标之间的距离,以及每个主刻度线和指针之间的左右关系;进而,基于确定出的每个第一坐标和第五坐标之间的距离和上述左右关系,可以确定出距离指针最近的、且位于指针右侧的目标主刻度线,以及该目标主刻度线对应的目标主刻度线位置。同时,根据识别到指针对应的第五坐标,以及各个刻度线对应的第一坐标,可以确定出距离识别到的指针最近的刻度线位置。其中,该刻度线位置可以为一副刻度线位置或一主刻度线位置。
S104:基于距离指针最近的刻度线位置和目标主刻度线位置,以及确定的各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定仪表的读数。
示例性的,可以根据距离指针最近的刻度线位置对应的刻度线、与目标主刻度线位置对应的目标主刻度线之间相差的副刻度线数量,以及最小刻度,确定距离指针最近的刻度线位置对应的刻度线与目标主刻度线对应的刻度值之间的差值,再基于该差值和目标主刻度线对应的刻度值,确定出仪表的读数。
这样,通过对仪表图像进行刻度线识别,可以识别出仪表图像中包括的任一类型的仪表的各个主刻度线和副刻度线,也即得到刻度线识别结果;通过对仪表图像进行文本识别,可以识别出仪表中标识出的针对主刻度线的各个刻度值,以及相邻主刻度线之间的最小刻度,这样,能够实现对各种类型的仪表的识别,通用性较强。最后利用距离指针最近的刻度线位置、在指针预设方向的目标主刻度线位置及其对应的刻度值、和最小刻度进行仪表读数的确定,这里的预设方向可以选择趋向刻度线均匀的方向或称趋向刻度值升高的方向,通过上述方式确定的仪表读数能够尽量避免因仪表中开始的主刻度线之间的刻度不均匀导致的读数不准确的问题,从而能够提高仪表读数的精确度。
在一种实施例中,在获取到仪表图像之后,还可以先利用仪表检测网络,对仪表图像进行仪表区域的识别,确定出仪表图像中的仪表对应的仪表区域,并从仪表图像中裁剪出识别到的该仪表区域,得到子仪表图像。这里,对仪表图像进行仪表区域的识别的步骤可以利用预先训练好的RetinaNet网络执行,RetinaNet网络是由一个骨干网络和两个有特定任务的子网络组成的单一网络,用于对指定区域的识别。在对RetinaNet网络进行训练时,可以基于一定的数据分析,确定出常用仪表对应的表盘尺寸分布,之后,基于确定的表盘尺寸分布,设定RetinaNet网络对应的初始锚(anchor)值,也即设置初始的表盘规模scale范围,以及表盘对应的长宽比例范围ratio。例如,表盘规模scale范围可以为[2,8],长宽比例范围ratio可以为[0.5:1,1:1,1:0.5]。之后,可以基于初始锚值,利用在不同光照强度下拍摄的、包括不同类型和不同大小的仪表的图像,对RetinaNet网络进行训练,直至得到训练好的RetinaNet网络。
进一步的,针对对仪表图像进行刻度线识别和文本识别的步骤,可以直接对裁剪出的子仪表图像进行识别。这样,相比对仪表图像直接识别处理而言,通过对截取的子仪表图像进行刻度线识别和文本识别,能够降低识别处理的计算量。
在一种实施例中,针对上述S102中对仪表图像进行文本识别的步骤,可以先利用预先训练好的文本检测网络,对仪表图像(或上述裁剪得到的子仪表图像)进行文本区域识别,确定仪表图像中的各个文本区域。具体实施时,文本检测网可以为PSENet网络,DBNet网络等。其中,PSENet网络是一种基于语义分割的文字框检测模型,在检测不规则形状文本和弯曲文本上具有可靠的识别精度;DBNet网络是一种基于分割的网络,目的是将二值化操作***到分割网络中进行联合优化,这样网络可以自适应的预测图像中每一个像素点的阈值,从而实现对文本的检测。
进一步的,在得到仪表图像中的各个区域之后,可以利用预先训练好的文本识别网络,对每个文本区域进行识别,确定每个文本区域中的文本信息,也即得到文本识别结果。这里,文本识别网络可以为SAR网络。SAR网络是一种用于识别文本信息的深度卷积神经网络。其中,识别出的文本信息还可以包括仪表的类型指示信息,根据类型指示信息可以确定出仪表的类型,例如,在类型指示信息为符号“A”的情况下,可以确定仪表为安培表;在类型指示信息为符号“V”的情况下,可以确定仪表为电压表。
在一种实施例中,针对上述S102中对仪表图像进行刻度线识别的步骤,可以利用预先训练好的目标分割网络执行,也即利用目标分割网络对仪表图像进行刻度线识别,确定出仪表中的指针和各刻度线,具体的,目标分割网络可以具体用于识别主刻度线、副刻度线和指针三种类别的对象。其中,目标分割网络具体可以为Mask R-CNN模型,其中,Mask R-CNN网络是一个能够同时做目标检测和实例分割的模型。
上述目标分割网络可以为利用预设数量的样本图像训练得到的;不同的样本图像中包括不同类型的仪表。具体的,可以利用大量的包括待识别的仪表的样本图像对目标分割网络进行迭代训练,不同的样本图像中包括的待识别的仪表的类型可以不同。并且,为了提高训练好的目标分割网络的抗光照能力,以及识别精度,针对包括同一类型的仪表的多个样本图像,还多个样本图像可以对应于不同的光照强度、以及具有不同的图像背景。这样,在利用大量的上述样本图像对目标分割网络进行迭代训练之后,可以得到具有可靠的识别精度的目标分割网络,再利用训练好的目标分割网络对获取的仪表图像(或子仪表图像)进行刻度线识别,能够准确地分割出仪表中的指针和各刻度线。
在一种实施例中,针对上述S102中基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值的步骤,可以按照以下步骤实施:
S102-1:基于刻度线识别结果,确定仪表对应的圆心位置。
具体实施时,在得到刻度线识别结果之后,可以根据刻度线识别结果对应的各刻度线的位置,拟合出各刻度线组成的圆弧,再根据拟合出的圆弧,拟合出仪表对应的圆,进而,根据拟合出的仪表对应的圆,可以确定仪表对应的圆心位置。
S102-2:基于圆心位置,将刻度线识别结果对应的各刻度线在仪表对应的极坐标系中的第一坐标,转换为在水平坐标系中的第二坐标;刻度线识别结果对应的各刻度线包括主刻度线和副刻度线。
这里,第一坐标即为确定出的各刻度线在仪表对应的极坐标系中的坐标,用于指示识别出的各刻度线在仪表中的位置。这里,由于刻度线具有一定的长度和距离,所以第一坐标可以为识别出的各刻度线对应的中心位置坐标,或者可以为识别出的各刻度线的中心线对应的位置坐标,或者也可以为识别出的各刻度线中的一个或多个预设位置分别对应的位置坐标,例如,第一坐标可以包括各刻度线中的多个顶点分别对应的位置坐标。关于具体的第一坐标,可以根据实际的识别需要进行设定,此处不进行限定,但无论第一坐标如何设定,均用于指示识别出的各刻度线在仪表中的位置。第二坐标用于指示识别出的各刻度线在水平坐标系中对应的位置。
具体实施时,可以从确定出的圆心位置发出射线,之后,可以根据极坐标和水平坐标系之间的转换关系以及该射线,将识别出的各刻度线对应的第一坐标,转换为在水平坐标系中的第二坐标。
S102-3:将文本识别结果中的各刻度值在极坐标系中的第三坐标,转换为在水平坐标系中的第四坐标。
这里,第三坐标即为识别出的各个刻度值在极坐标系中的坐标,用于指示识别出的各刻度值在仪表中的位置。这里,由于刻度值对应的文本具有一定的面积,所以第三坐标可以为识别出的各刻度值对应的文本的中心位置坐标,或者可以为识别出的各刻度值对应的文本的中心线的位置坐标,或者也可以为识别出的各刻度值对应的文本中的一个或多个预设位置分别对应的位置坐标,例如,第三坐标可以包括各刻度值对应的文本的多个顶点分别对应的位置坐标。关于具体的第三坐标,可以根据实际的识别需要进行设定,此处不进行限定,但无论第三坐标如何设定,均用于指示识别出的各刻度值在仪表中的位置。第三坐标用于指示识别出的各刻度值在水平坐标系中对应的位置。
具体实施时,可以利用极坐标和水平坐标系之间的转换关系,将文本识别结果中的各刻度值对应的第三坐标,转换为在水平坐标系中的第四坐标。
S102-4:基于刻度线识别结果对应的各主刻度线对应的第三坐标,和各刻度值对应的第四坐标,确定各主刻度线对应的刻度值。
具体实施时,可以将各主刻度线对应的第三坐标与各刻度值对应的第四坐标进行匹配,确定出相匹配的第三坐标和第四坐标,将该相匹配的第四坐标对应的刻度值,作为该相匹配的第三坐标对应的主刻度线的刻度值。
这里,在主刻度线对应的第三坐标和刻度值对应的第四坐标之间的坐标位置最接近的情况下,或者,主刻度线对应的第三坐标和刻度值对应的第四坐标,在任一坐标轴上的坐标值存在重叠的情况下,可以认为该第三坐标和该第四坐标相匹配。
在一种实施例中,针对上述S102-4,可以按照以下步骤实施:
S102-4-1:基于各主刻度线对应的第三坐标,确定各主刻度线在水平方向上对应的第一相对位置关系。
这里,由于第三坐标为在水平坐标系中的坐标,所以第一相对位置关系可以用于表征各主刻度线在水平方向上的左右位置关系。
示例性的,可以根据各主刻度线对应的第三坐标,确定出各主刻度线对应于在水平方向上的坐标值,基于确定的各坐标值,确定各主刻度线在水平方向上左右位置关系,也即得到第一相对位置关系。例如,主刻度线1对应于水平方向上的坐标值为1,主刻度线2对应于水平方向上的坐标值为3,主刻度线3对应于水平方向上的坐标值为5,主刻度线4对应于水平方向上的坐标值为7,则可以确定主刻度线1位于主刻度线2左侧,主刻度线2位于主刻度线3左侧,主刻度线3位于主刻度线4左侧。
S102-4-2:基于各刻度值对应的第四坐标,确定各刻度值在水平方向上对应的第二相对位置关系。
这里,由于第四坐标也为在水平坐标系中的坐标,所以第二相对位置关系可以用于表征各刻度值在水平方向上的左右位置关系。
具体实施时,可以根据各刻度值对应的第四坐标,确定出各刻度值对应于在水平方向上的坐标值,再基于确定的各坐标值,确定各刻度值在水平方向上左右位置关系,也即得到第二相对位置关系。
S102-4-3:利用第一相对位置关系和第二相对位置关系,从刻度值中,确定各主刻度线对应的刻度值。
具体实施时,可以根据第一相对位置关系和第二相对位置关系,对各主刻度线和各刻度值进行匹配,将相对位置关系一致的主刻度线和刻度值作为相匹配的主刻度线和刻度值。继而,可以将相匹配的主刻度线和刻度值中的刻度值,作为相匹配的主刻度线和刻度值中的主刻度线对应的刻度值。
其中,相对位置关系一致的主刻度线和刻度值例如可以为,主刻度线1~4从左到右依次为主刻度线1、主刻度线4、主刻度线2和主刻度线3,刻度值1~4从左到右依次为刻度值2、刻度值1、刻度值4和刻度值3,则可以确定主刻度线1和刻度值2对应的相对位置关系一致,主刻度线4和刻度值1对应的相对位置关系一致,主刻度线2和刻度值4对应的相对位置关系一致,主刻度线3和刻度值4对应的相对位置关系一致。
在一种实施例中,针对S102-1,可以按照以下步骤实施:
S102-1-1:基于刻度线识别结果指示的各刻度线的刻度线中心点,得到仪表对应的中心点集。
具体实施时,基于刻度线识别结果对应的各刻度线,可以确定出各刻度线的中心点,进而,可以得到由各刻度线中心点组成的中心点集,将该中心点集作为仪表对应的中心点集。
S102-1-2:利用最小二乘法对中心点集中的中心点位置进行处理,确定仪表对应的圆心位置。
这里,中心点位置即为刻度线的中心点对应的位置,可以用刻度线的中心点对应的坐标表征。
具体实施时,可以利用最小二乘法,对中心点集中的各中心点位置对应的坐标进行拟合处理,从而得到仪表对应的圆心位置。
在一种实施例中,针对S102中基于刻度线识别结果和文本识别结果,确定相邻主刻度线之间的最小刻度的步骤,可以按照以下步骤实施:
步骤一、基于各刻度线对应的第四坐标,将各刻度线转换为水平方向上的刻度线。
这里,可以利用各刻度线对应的第四坐标,将识别出的各刻度线分别转换为水平方向上的刻度线,也即实现对仪表盘的水平化处理,使得水平方向上的各刻度线均垂直与水平方向。如图4所示,为本公开实施例提供的一种对各刻度线进行水平化处理前后的对比示意图,其中,图4中的a为在水平化处理前,识别出各刻度线和指针的示意图,a中未对识别出的各刻度线进行一一标注,图4中的b为水平化处理后,识别出的各刻度线和指针的示意图,b中未对水平化处理后各刻度线进行一一标注,另外,图4的a中还示出了拟合出的圆心。
步骤二、确定在水平方向上、每两个相邻的主刻度线之间的副刻度线的第一数量。
这里,第一数量为每两个相邻的主刻度线之间的副刻度线的数量。在仪表中起始的主刻度线和相邻的下一主刻度线之间的刻度划分,与其他相邻的两主刻度线之间的刻度划分不一致的情况,仪表中起始的主刻度线和相邻的下一主刻度线之间的副刻度线的第一数量,小于除起始的主刻度线和相邻的下一主刻度线以外的,任一相邻的两主刻度线之间的副刻度线的第一数量。在仪表中每相邻的两主刻度线之间的刻度划分一致的情况下,每两个相邻的主刻度线之间的副刻度线的第一数量相同。
这里,在确定主刻度线对应的刻度值的过程中,也可以在先执行完上述步骤一之后,再基于第三坐标和第四坐标确定的,也可以直接基于第三坐标和第四坐标确定的,不执行上述步骤一,此处不进行限定。
步骤三、基于第一数量,以及两个相邻的主刻度线之间的刻度值差值,确定最小刻度。
具体实施时,在仪表中每相邻的两主刻度线之间的刻度划分一致的情况下,可以直接利用任一两个相邻的主刻度线之间的刻度值差值,除以第一数量,将得到的数值作为最小刻度。
在仪表中起始的主刻度线和相邻的下一主刻度线之间的刻度划分,与其他相邻的两主刻度线之间的刻度划分不一致的情况,可以从上述确定的第一数量中选取最大的第一数量,再利用任一两个相邻的主刻度线之间的刻度值差值,除以选取出的最大的第一数量,将得到的数值作为最小刻度。
在一种实施例中,在执行S103之前,还可以基于确定的圆心位置,将识别到的指针在仪表对应的极坐标系中的第五坐标,转换为在水平坐标系中的第六坐标。这里,第五坐标即为确定出的指针在仪表对应的极坐标系中的坐标,用于指示识别出的指针在仪表中的位置。第六坐标用于指示识别出的指针在水平坐标系中对应的位置。
具体实施时,关于基于圆心位置,将第五坐标转换为第六坐标的过程,可以参照上述基于圆心位置将第一坐标转换为第二坐标的过程,此处不再赘述。
进一步的,在得到第六坐标之后,可以基于第六坐标,将指针转换为水平方向上的指针,也即实现对指针的水平化处理,具体的,关于对指针水平化处理前后的对比示意图,可以参照图4的a和b中示出的指针。
之后,针对S103中基于刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置的步骤,可以先参照上述步骤一,基于刻度线识别结果对应的各刻度线的第四坐标,将各刻度线转换为水平方向上的刻度线。之后,可以基于水平方向上的各刻度线,确定距离水平方向上的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置。
具体的,在得到水平方向上的各刻度线和水平方向上的指针之后,可以确定水平方向上的各刻度线的第四坐标,分别与水平方向上的指针对应的第六坐标之间的距离;之后,可以基于确定出各个距离,确定距离水平方向上的指针最近的刻度线的位置,以及距离指针最近的目标主刻度线的位置。
或者,以图4为例,在得到水平方向上的各刻度线和水平方向上的指针之后,也即得到图4中的b示出的各刻度线和指针之后,可以直接根据图4中的b示出的各刻度线和指针,确定出距离水平方向上的指针最近的刻度线的位置,以及距离指针最近的目标主刻度线的位置。
在一种实施例中,针对基于水平方向上的各刻度线,确定距离水平方向上的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置的步骤,还可以按照以下步骤实施:
T1:针对水平方向上每个刻度线,对刻度线进行垂直投影操作,得到刻度线对应的第一投影区域。
这里,由于对刻度线进行水平化处理后,可能会导致刻度线存在一定的弯曲,如图5所示,为本公开实施例提供的一种对水平化处理后的刻度线和指针进行调整前后的对比示意图,图5的c中示出的刻度线和指针为存在水平化处理后,带有一定弯曲的刻度线和指针,c中仅标注出了部分带有一定弯曲的刻度线作为示意。为了避免水平化处理后导致的弯曲,对确定出的距离水平方向上的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置的影响,进而产生对仪表读数的影响,还需要对水平化处理后的刻度线和指针进行调整。具体的调整过程可以参照本实施例的介绍。
上述第一投影区域为对水平方向上的刻度线进行垂直投影后,该刻度线对应的投影区域。
具体实施时,在对刻度线进行水平化处理后,针对得到的水平方向上每个刻度线,可以对该刻度线进行垂直投影操作,从而得到该刻度线对应的第一投影区域。
T2:基于水平方向上每个刻度线对应的第一投影区域,对水平方向上的每个刻度线进行位置调整,得到调整后的水平方向上的每个刻度线。
示例性的,在得到水平方向上每个刻度线对应的第一投影区域之后,针对水平方向上每个刻度线,可以基于该刻度线对应的第一投影区域,确定出该刻度线对应的水平中心,之后,可以将经过该水平中心且垂直于水平方向,并与该刻度线等长的线段,作为该刻度线对应的、调整后的水平方向上的刻度线。关于调整后的水平方向上的刻度线可以参照图5的d中示出的各刻度线,d中仅标注出了部分调整后的水平方向上的刻度线作为示意。
T3:对从水平方向上的指针中截取的目标指针段进行垂直投影,得到目标指针段对应的第二投影区域。
这里,第二投影区域为对目标指针段进行垂直投影后,该目标指针段对应的投影区域。从水平方向上的指针中截取的目标指针段,即为指针前端的区域,即使水平化处理后使得指针弯曲,指针前端的区域指向的仪表位置,也将为最贴近水平化处理前的指针整体指向的仪表位置。因此,利用选取目标指针段对水平方向上的指针进行位置调整,能够提高调整后的水平方向上的指针指向的仪表位置的准确性。
具体实施时,在得到水平方向上的指针之后,也可以先从该水平方向上的指针的前端顶点为起点,选取预设长度的指针段作为目标指针段,也即选取指针前端的区域作为目标指针段。其中,指针的前端为远离仪表的圆心位置的一端。
进一步的,可以对目标指针段进行垂直投影操作,从而得到目标指针段对应的第二投影区域。
并且,T1和T3不存在严格的执行顺序,可以同步执行。
T4:基于第二投影区域,对水平方向上的指针进行位置调整,得到调整后的水平方向上的指针。
示例性的,在得到第二投影区域之后,可以基于第二投影区域,确定出水平方向上的指针对应的水平中心,之后,可以将经过该水平中心且垂直于水平方向,并与水平方向上的指针等长的线段,作为该水平方向上的指针对应的、调整后的水平方向上的指针。关于调整后的水平方向上的指针可以参照图5的d中示出的指针。
并且,T2和T4之间也不存在严格的执行顺序。
T5:基于调整后的水平方向上的每个刻度线,和调整后的水平方向上的指针,确定距离水平方向上的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置。
这里,T5中确定出的距离水平方向上的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置,为确定出的距离调整后的水平方向上的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置。
示例性的,可以根据调整后的水平方向上的每个刻度线对应的刻度线位置,和调整后的水平方向上的指针的位置,确定出距离水平方向上的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置。
在一种实施例中,针对S104,在距离识别到的指针最近的刻度线位置为目标主刻度线位置的情况下,可以基于目标主刻度线对应的刻度值,确定仪表的读数。
这里,该实施例中提及的识别到的指针可以为对仪表图像进行识别之后得到的指针,或水平方向上的指针,或调整后的水平方向上的指针。下面以识别到的指针为调整后的水平方向上的指针为例,对该实施例进行详细说明。
示例性的,在距离识别到的指针最近的刻度线位置为目标主刻度线位置的情况下,也即在确定距离调整后的水平方向上的指针最近且位于该指针的右侧的刻度线为调整后的水平方向上的目标主刻度线的情况下,可以直接将该调整后的水平方向上的目标主刻度线对应的刻度值,作为仪表的读数。
或者,在确定距离调整后的水平方向上的指针最近且位于该指针的右侧的刻度线为调整后的水平方向上的目标主刻度线,且调整后的水平方向上的指针与调整后的水平方向上的目标主刻度线的位置未重叠的情况下,可以先确定调整后的水平方向上的指针距离调整后的水平方向上的目标主刻度线的距离,占调整后的水平方向上的目标主刻度线与前一个相邻的副刻度线的距离的比值,将该比值和最小刻度做乘积,利用调整后的水平方向上的目标主刻度线对应的刻度值,减去该乘积,作为仪表的读数。
例如,调整后的水平方向上的指针距离调整后的水平方向上的目标主刻度线的距离,占调整后的水平方向上的目标主刻度线与前一个相邻的副刻度线的距离的比值为1/3,也即,调整后的水平方向上的指针,位于调整后的水平方向上的目标主刻度线与前一个相邻的副刻度线之间的2/3位置,最小刻度为1,调整后的水平方向上的目标主刻度线对应的刻度值为5,则可以确定仪表的读数为14/3。
在另一种实施方式中,在距离识别到的指针最近的刻度线位置为副刻度线位置的情况下,可以确定目标主刻度线与该副刻度线之间包括的其他副刻度线的第二数量。之后,可以基于第二数量、目标主刻度线对应的刻度值和最小刻度,确定仪表的读数。
这里,仍以识别到的指针为调整后的水平方向上的指针为例进行说明。具体的,在距离调整后的水平方向上的指针最近的刻度线为副刻度线情况下,可以先确定该副刻度线和调整后的水平方向上的目标主刻度线之间的其他副刻度线的第二数量N,再确定最小刻度和(N+1)的乘积,将调整后的水平方向上的目标主刻度线对应的刻度值与最小刻度和(N+1)的乘积之间的差值,作为仪表的读数。
关于识别到的指针为对仪表图像进行识别之后得到的指针或水平方向上的指针的情况,确定仪表的读数的方式均可以参照识别到的指针为调整后的水平方向上的指针对应的内容的介绍,此处不再赘述。
如图6所示,为本公开实施例提供的一种仪表读数的具体实施流程图,在图6中,首先需要获取仪表图像,对仪表图像进行表盘检测,也即确定出仪表图像中的仪表对应的仪表区域,并从仪表图像中裁剪出识别到的该仪表区域,得到子仪表图像。对仪表图像进行文本识别,确定给仪表中的文本识别结果。并且,可以执行和表盘分割操作,得到分割结果,也即以对仪表图像进行文本识别刻度线识别,确定出仪表中的指针和各刻度线。再进行表盘中心拟合操作,也即基于刻度线识别结果,确定仪表对应的圆心位置。
之后,执行表盘水平化操作,得到表盘水平化的结果。也即,将识别到的各刻度线转换为水平方向上的刻度线,以及将识别到的指针转换为水平方向上的指针。进一步的,对水平化后的表盘进行分割细化,得到分割细化的结果,也即确定出水平方向上每个刻度线对应的第一投影区域,并基于第一投影区域,对水平方向上的每个刻度线进行位置调整,得到调整后的水平方向上的每个刻度线;以及对从水平方向上的指针中截取的目标指针段进行垂直投影,得到目标指针段对应的第二投影区域,并基于第二投影区域,对水平方向上的指针进行位置调整,得到调整后的水平方向上的指针。
最后,可以执行计算读数操作,也即确定距离识别到的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置;基于距离所述指针最近的刻度线位置和目标主刻度线位置,以及确定的各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定仪表的读数。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与仪表识读方法对应的仪表识读装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述仪表识读方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
如图7所示,为本公开实施例提供的一种仪表识读装置的示意图,包括:
获取模块701,用于获取仪表图像;
第一确定模块702,用于对所述仪表图像进行刻度线识别和文本识别,并基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,以及相邻主刻度线之间的最小刻度;
第二确定模块703,用于基于所述刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置;所述目标主刻度线位置为在指针预设方向的主刻度线位置;所述距离识别到的指针最近的刻度线位置为一副刻度线位置或一主刻度线位置;
第三确定模块704,用于基于所述距离所述指针最近的刻度线位置和所述目标主刻度线位置,以及确定的所述各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定所述仪表的读数。
在一种可能的实施方式中,所述第一确定模块702,用于基于所述刻度线识别结果,确定所述仪表对应的圆心位置;
基于所述圆心位置,将所述刻度线识别结果对应的各刻度线在所述仪表对应的极坐标系中的第一坐标,转换为在水平坐标系中的第二坐标;所述刻度线识别结果对应的各刻度线包括主刻度线和副刻度线;
将所述文本识别结果中的各刻度值在所述极坐标系中的第三坐标,转换为在所述水平坐标系中的第四坐标;
基于所述刻度线识别结果对应的所述各主刻度线对应的第三坐标,和所述各刻度值对应的所述第四坐标,确定所述各主刻度线对应的刻度值。
在一种可能的实施方式中,所述第一确定模块702,用于基于所述各主刻度线对应的第三坐标,确定所述各主刻度线在水平方向上对应的第一相对位置关系;
基于所述各刻度值对应的所述第四坐标,确定所述各刻度值在水平方向上对应的第二相对位置关系;
利用所述第一相对位置关系和所述第二相对位置关系,从所述刻度值中,确定所述各主刻度线对应的刻度值。
在一种可能的实施方式中,所述第一确定模块702,用于基于所述刻度线识别结果指示的各刻度线的刻度线中心点,得到所述仪表对应的中心点集;
利用最小二乘法对所述中心点集中的中心点位置进行处理,确定所述仪表对应的圆心位置。
在一种可能的实施方式中,所述第一确定模块702,用于基于所述各刻度线对应的第四坐标,将所述各刻度线转换为水平方向上的刻度线;
确定在所述水平方向上、每两个相邻的所述主刻度线之间的副刻度线的第一数量;
基于所述第一数量,以及两个相邻的所述主刻度线之间的刻度值差值,确定所述最小刻度。
在一种可能的实施方式中,所述第一确定模块702,还用于在基于所述刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置之前,基于所述圆心位置,将识别到的指针在所述仪表对应的极坐标系中的第五坐标,转换为在水平坐标系中的第六坐标,并基于所述第六坐标,将所述指针转换为水平方向上的指针;
所述第二确定模块703,用于基于所述刻度线识别结果对应的所述各刻度线的第四坐标,将所述各刻度线转换为水平方向上的刻度线;
基于水平方向上的各刻度线,确定距离水平方向上的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置。
在一种可能的实施方式中,所述第二确定模块703,用于针对水平方向上每个所述刻度线,对所述刻度线进行垂直投影操作,得到所述刻度线对应的第一投影区域;
基于水平方向上每个所述刻度线对应的所述第一投影区域,对水平方向上的每个刻度线进行位置调整,得到调整后的水平方向上的每个刻度线;
对从水平方向上的所述指针中截取的目标指针段进行垂直投影,得到所述目标指针段对应的第二投影区域;
基于所述第二投影区域,对水平方向上的所述指针进行位置调整,得到调整后的水平方向上的指针;
基于调整后的水平方向上的每个刻度线,和所述调整后的水平方向上的指针,确定所述距离水平方向上的指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置。
在一种可能的实施方式中,所述第三确定模块704,用于在所述距离识别到的指针最近的刻度线位置为所述目标主刻度线位置的情况下,基于所述目标主刻度线对应的刻度值,确定所述仪表的读数;
在所述距离识别到的指针最近的刻度线位置为副刻度线位置的情况下,确定所述目标主刻度线与该副刻度线之间包括的其他副刻度线的第二数量;
基于所述第二数量、所述目标主刻度线对应的刻度值和所述最小刻度,确定所述仪表的读数。
在一种可能的实施方式中,所述第一确定模块702,用于对所述仪表图像进行文本区域识别,确定所述仪表图像中的各个文本区域,并分别对每个所述文本区域进行识别,确定每个所述文本区域对应的文本识别结果。
在一种可能的实施方式中,所述第一确定模块702,用于利用目标分割网络对所述仪表图像进行刻度线识别,确定所述仪表图像对应的刻度线识别结果;其中,所述目标分割网络为利用预设数量的样本图像训练得到的;不同的所述样本图像中包括不同类型的仪表。
在一种可能的实施方式中,所述装置还包括:
裁剪模块705,用于在所述对所述仪表图像进行刻度线识别和文本识别之前,对所述仪表图像进行仪表区域的识别,并从所述仪表图像中裁剪出识别到的仪表区域,得到子仪表图像;
所述第一确定模块702,用于对所述子仪表图像进行刻度线识别和文本识别。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
本公开实施例还提供了一种计算机设备,如图8所示,为本公开实施例提供的一种计算机设备结构示意图,包括:
处理器81和存储器82;所述存储器82存储有处理器81可执行的机器可读指令,处理器81用于执行存储器82中存储的机器可读指令,所述机器可读指令被处理器81执行时,处理器81执行下述步骤:S101:获取仪表图像;S102:对仪表图像进行刻度线识别和文本识别,并基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,以及相邻主刻度线之间的最小刻度;S103:基于刻度线识别结果,确定距离识别到的指针最近的刻度线位置以及距离指针最近的目标主刻度线位置;目标主刻度线位置为在指针预设方向的主刻度线位置;距离识别到的指针最近的刻度线位置为一副刻度线位置或一主刻度线位置以及S104:基于距离指针最近的刻度线位置和目标主刻度线位置,以及确定的各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定仪表的读数。
上述存储器82包括内存821和外部存储器822;这里的内存821也称内存储器,用于暂时存放处理器81中的运算数据,以及与硬盘等外部存储器822交换的数据,处理器81通过内存821与外部存储器822进行数据交换。
上述指令的具体执行过程可以参考本公开实施例中所述的仪表识读方法的步骤,此处不再赘述。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的仪表识读方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例所提供的仪表识读方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的仪表识读方法的步骤,具体可参见上述方法实施例,在此不再赘述。
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种仪表识读方法,其特征在于,包括:
获取仪表图像;
对所述仪表图像进行刻度线识别和文本识别,并基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,以及相邻主刻度线之间的最小刻度;所述基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,包括:
基于所述刻度线识别结果,确定仪表对应的圆心位置;基于所述圆心位置,将所述刻度线识别结果对应的各刻度线在所述仪表对应的极坐标系中的第一坐标,转换为在水平坐标系中的第二坐标;所述刻度线识别结果对应的各刻度线包括主刻度线和副刻度线;将所述文本识别结果中的各刻度值在所述极坐标系中的第三坐标,转换为在所述水平坐标系中的第四坐标;基于所述刻度线识别结果对应的所述各主刻度线对应的第二坐标,和所述各刻度值对应的所述第四坐标,确定所述各主刻度线对应的刻度值;
基于所述圆心位置,将识别到的指针在所述仪表对应的极坐标系中的第五坐标,转换为在水平坐标系中的第六坐标,并基于所述第六坐标,将所述指针转换为水平方向上的指针;
基于所述刻度线识别结果对应的所述各刻度线的第二坐标,将所述各刻度线转换为水平方向上的刻度线;针对水平方向上每个所述刻度线,对所述刻度线进行垂直投影操作,得到所述刻度线对应的第一投影区域;
基于水平方向上每个所述刻度线对应的所述第一投影区域,对水平方向上的每个刻度线进行位置调整,得到调整后的水平方向上的每个刻度线;对从水平方向上的所述指针中截取的目标指针段进行垂直投影,得到所述目标指针段对应的第二投影区域;基于所述第二投影区域,对水平方向上的所述指针进行位置调整,得到调整后的水平方向上的指针;
基于调整后的水平方向上的每个刻度线,和所述调整后的水平方向上的指针,确定距离所述指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置;所述目标主刻度线位置为在指针预设方向的主刻度线位置;所述距离所述指针最近的刻度线位置为一副刻度线位置或一主刻度线位置;
基于所述距离所述指针最近的刻度线位置和所述目标主刻度线位置,以及确定的所述各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定所述仪表的读数。
2.根据权利要求1所述的方法,其特征在于,所述基于所述刻度线识别结果对应的所述各主刻度线对应的第二坐标,和所述各刻度值对应的所述第四坐标,确定所述各主刻度线对应的刻度值,包括:
基于所述各主刻度线对应的第二坐标,确定所述各主刻度线在水平方向上对应的第一相对位置关系;
基于所述各刻度值对应的所述第四坐标,确定所述各刻度值在水平方向上对应的第二相对位置关系;
利用所述第一相对位置关系和所述第二相对位置关系,从所述刻度值中,确定所述各主刻度线对应的刻度值。
3.根据权利要求1所述的方法,其特征在于,所述基于所述刻度线识别结果,确定所述仪表对应的圆心位置,包括:
基于所述刻度线识别结果指示的各刻度线的刻度线中心点,得到所述仪表对应的中心点集;
利用最小二乘法对所述中心点集中的中心点位置进行处理,确定所述仪表对应的圆心位置。
4.根据权利要求1所述的方法,其特征在于,基于刻度线识别结果和文本识别结果,确定相邻主刻度线之间的最小刻度,包括:
基于所述各刻度线对应的第二坐标,将所述各刻度线转换为水平方向上的刻度线;
确定在所述水平方向上、每两个相邻的所述主刻度线之间的副刻度线的第一数量;
基于所述第一数量,以及两个相邻的所述主刻度线之间的刻度值差值,确定所述最小刻度。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述基于所述距离识别到的指针最近的刻度线位置和所述目标主刻度线位置,以及确定的所述各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定所述仪表的读数,包括:
在所述距离识别到的指针最近的刻度线位置为所述目标主刻度线位置的情况下,基于所述目标主刻度线对应的刻度值,确定所述仪表的读数;
在所述距离识别到的指针最近的刻度线位置为副刻度线位置的情况下,确定所述目标主刻度线与该副刻度线之间包括的其他副刻度线的第二数量;基于所述第二数量、所述目标主刻度线对应的刻度值和所述最小刻度,确定所述仪表的读数。
6.根据权利要求1所述的方法,其特征在于,对所述仪表图像进行文本识别,包括:
对所述仪表图像进行文本区域识别,确定所述仪表图像中的各个文本区域,并分别对每个所述文本区域进行识别,确定每个所述文本区域对应的文本识别结果。
7.根据权利要求1所述的方法,其特征在于,对所述仪表图像进行刻度线识别,包括:
利用目标分割网络对所述仪表图像进行刻度线识别,确定所述仪表图像对应的刻度线识别结果;其中,所述目标分割网络为利用预设数量的样本图像训练得到的;不同的所述样本图像中包括不同类型的仪表。
8.根据权利要求1所述的方法,其特征在于,在所述对所述仪表图像进行刻度线识别和文本识别之前,包括:
对所述仪表图像进行仪表区域的识别,并从所述仪表图像中裁剪出识别到的仪表区域,得到子仪表图像;
所述对所述仪表图像进行刻度线识别和文本识别,包括:
对所述子仪表图像进行刻度线识别和文本识别。
9.一种仪表识读装置,其特征在于,包括:
获取模块,用于获取仪表图像;
第一确定模块,用于对所述仪表图像进行刻度线识别和文本识别,并基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值,以及相邻主刻度线之间的最小刻度;所述第一确定模块,在所述基于刻度线识别结果和文本识别结果,确定各主刻度线对应的刻度值时,用于:基于所述刻度线识别结果,确定仪表对应的圆心位置;基于所述圆心位置,将所述刻度线识别结果对应的各刻度线在所述仪表对应的极坐标系中的第一坐标,转换为在水平坐标系中的第二坐标;所述刻度线识别结果对应的各刻度线包括主刻度线和副刻度线;将所述文本识别结果中的各刻度值在所述极坐标系中的第三坐标,转换为在所述水平坐标系中的第四坐标;基于所述刻度线识别结果对应的所述各主刻度线对应的第二坐标,和所述各刻度值对应的所述第四坐标,确定所述各主刻度线对应的刻度值;
以及,所述第一确定模块,还用于:基于所述圆心位置,将识别到的指针在所述仪表对应的极坐标系中的第五坐标,转换为在水平坐标系中的第六坐标,并基于所述第六坐标,将所述指针转换为水平方向上的指针;
第二确定模块,用于基于所述刻度线识别结果对应的所述各刻度线的第二坐标,将所述各刻度线转换为水平方向上的刻度线;
针对水平方向上每个所述刻度线,对所述刻度线进行垂直投影操作,得到所述刻度线对应的第一投影区域;
基于水平方向上每个所述刻度线对应的所述第一投影区域,对水平方向上的每个刻度线进行位置调整,得到调整后的水平方向上的每个刻度线;
对从水平方向上的所述指针中截取的目标指针段进行垂直投影,得到所述目标指针段对应的第二投影区域;
基于所述第二投影区域,对水平方向上的所述指针进行位置调整,得到调整后的水平方向上的指针;
基于调整后的水平方向上的每个刻度线,和所述调整后的水平方向上的指针,确定距离所述指针最近的刻度线位置以及距离所述指针最近的目标主刻度线位置;所述目标主刻度线位置为在指针预设方向的主刻度线位置;所述距离所述指针最近的刻度线位置为一副刻度线位置或一主刻度线位置;
第三确定模块, 用于基于所述距离所述指针最近的刻度线位置和所述目标主刻度线位置,以及确定的所述各主刻度线对应的刻度值和相邻主刻度线之间的最小刻度,确定所述仪表的读数。
10.一种计算机设备,其特征在于,包括:处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述处理器执行如权利要求1至8任意一项所述的仪表识读方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被计算机设备运行时,所述计算机设备执行如权利要求1至8任意一项所述的仪表识读方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210190135.3A CN114565911B (zh) | 2022-02-28 | 2022-02-28 | 一种仪表识读方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210190135.3A CN114565911B (zh) | 2022-02-28 | 2022-02-28 | 一种仪表识读方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114565911A CN114565911A (zh) | 2022-05-31 |
CN114565911B true CN114565911B (zh) | 2024-05-28 |
Family
ID=81715478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210190135.3A Active CN114565911B (zh) | 2022-02-28 | 2022-02-28 | 一种仪表识读方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114565911B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116403204B (zh) * | 2023-06-09 | 2023-08-25 | 南京瀚元科技有限公司 | 一种圆形指针表智能读数的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460327A (zh) * | 2018-01-12 | 2018-08-28 | 河南大学 | 一种基于图像处理的指针式仪表读数自动识别方法 |
CN109211268A (zh) * | 2018-08-15 | 2019-01-15 | 惠州市德赛西威汽车电子股份有限公司 | 一种仪表指针校准方法、装置及计算机可读存储介质 |
CN110287887A (zh) * | 2019-06-26 | 2019-09-27 | 北京史河科技有限公司 | 一种刻度识别方法、装置及计算机存储介质 |
CN111160337A (zh) * | 2019-12-12 | 2020-05-15 | 武汉工程大学 | 一种指针式仪表读数的自动识别方法、***、介质及设备 |
CN112115893A (zh) * | 2020-09-24 | 2020-12-22 | 深圳市赛为智能股份有限公司 | 仪表盘指针读数识别方法、装置、计算机设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107590498B (zh) * | 2017-09-27 | 2020-09-01 | 哈尔滨工业大学 | 一种基于字符分割级联二分类器的自适应汽车仪表检测方法 |
-
2022
- 2022-02-28 CN CN202210190135.3A patent/CN114565911B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460327A (zh) * | 2018-01-12 | 2018-08-28 | 河南大学 | 一种基于图像处理的指针式仪表读数自动识别方法 |
CN109211268A (zh) * | 2018-08-15 | 2019-01-15 | 惠州市德赛西威汽车电子股份有限公司 | 一种仪表指针校准方法、装置及计算机可读存储介质 |
CN110287887A (zh) * | 2019-06-26 | 2019-09-27 | 北京史河科技有限公司 | 一种刻度识别方法、装置及计算机存储介质 |
CN111160337A (zh) * | 2019-12-12 | 2020-05-15 | 武汉工程大学 | 一种指针式仪表读数的自动识别方法、***、介质及设备 |
CN112115893A (zh) * | 2020-09-24 | 2020-12-22 | 深圳市赛为智能股份有限公司 | 仪表盘指针读数识别方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114565911A (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110659636B (zh) | 基于深度学习的指针式仪表读数识别方法 | |
CN102521560B (zh) | 高鲁棒仪表指针图像识别方法 | |
CN108182433B (zh) | 一种表计读数识别方法及*** | |
CN111950330A (zh) | 一种基于目标检测的指针式仪表示数检测方法 | |
CN110245654B (zh) | 指针读数识别方法及装置、计算机装置及可读存储介质 | |
CN110490181B (zh) | 一种基于ocr识别技术的表单填写审核方法、装置、设备以及计算机存储介质 | |
JP2002508069A (ja) | 測定マークおよび測定マークの検出方法並びに物体測量方法 | |
CN110796095B (zh) | 仪表模板建立方法、终端设备以及计算机存储介质 | |
CN110378227B (zh) | 修正样本标注数据的方法、装置、设备及存储介质 | |
CN114565911B (zh) | 一种仪表识读方法、装置、计算机设备和存储介质 | |
CN112990179A (zh) | 一种基于图片处理的单指针型表盘读数自动识别方法 | |
CN114266881A (zh) | 一种基于改进型语义分割网络的指针式仪表自动读数方法 | |
CN114863129A (zh) | 仪表数值分析方法、装置、设备及存储介质 | |
CN113705350A (zh) | 变电站的指针仪表读数识别方法、装置、介质和电子设备 | |
CN113222042A (zh) | 一种评测方法、装置、电子设备及存储介质 | |
CN111950553A (zh) | 一种指针式仪表自动对准方法及装置 | |
CN113689378B (zh) | 试纸带精准定位的判定方法、装置、存储介质及终端 | |
CN111199191A (zh) | 基于刻度搜索的指针式仪表自动读取方法 | |
CN111652244A (zh) | 一种基于无监督特征提取和匹配的指针式表计识别方法 | |
CN111141217A (zh) | 物体测量方法、装置、终端设备及计算机存储介质 | |
CN114037993B (zh) | 变电站指针仪表读数方法、装置、存储介质以及电子设备 | |
CN112464986B (zh) | 一种指针型圆盘仪表的读数方法及设备 | |
KR101849933B1 (ko) | 공분산 기술자와 퍼지 모델을 이용한 심볼 인식장치 | |
CN114882487A (zh) | 一种指针仪表示数读取方法及其*** | |
CN111401377B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |