CN118172779A - 一种表针识别的方法、装置及电子设备 - Google Patents
一种表针识别的方法、装置及电子设备 Download PDFInfo
- Publication number
- CN118172779A CN118172779A CN202410280624.7A CN202410280624A CN118172779A CN 118172779 A CN118172779 A CN 118172779A CN 202410280624 A CN202410280624 A CN 202410280624A CN 118172779 A CN118172779 A CN 118172779A
- Authority
- CN
- China
- Prior art keywords
- dial
- image
- target
- pointer
- target image
- 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 62
- 238000001514 detection method Methods 0.000 claims abstract description 107
- 238000003860 storage Methods 0.000 claims abstract description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 24
- 238000012549 training Methods 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 14
- 238000003064 k means clustering Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000012216 screening Methods 0.000 claims description 8
- 238000005520 cutting process Methods 0.000 claims description 7
- 230000007547 defect Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 9
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 7
- 238000012795 verification Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
- G06V10/23—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition based on positionally close patterns or neighbourhood relationships
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/02—Recognising information on displays, dials, clocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种表针识别的方法。所述方法包括:获取待识别指针式仪表的表盘图像;将表盘图像输入至预设的目标检测模型中;获取目标检测模型输出的目标图像;针对每个目标图像,计算出每个目标图像中表针的旋转角度;根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。本发明实施例所提供的方法,可以实现对多表盘仪表的自动识别,并且对于子表盘位置不固定的任意仪表都可以通用,因此解决了现有技术存在的只能识别单个表盘的缺陷,提高了表针识别方法的通用性和复用性,能够覆盖更多的通用场景。本发明还公开了用于实现所述方法的装置、电子设备和存储介质。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种表针识别的方法、装置及电子设备。
背景技术
指针式仪表具有结构简单、维护方便、可靠性高、价格便宜及防水、防冻、防尘等优点,所以被广泛应用于多个行业比如水、电力行业。发明人发现目前常见的指针式仪表表针识别的方法大都是基于单个表盘进行识别,对于多表盘仪表,如图1和图2所示的多表盘水表,现有的表针识别的方法就无法识别了,只能依懒于人工检定,这也就是说,现有的表针识别的方法存在着通用性和复用性差的问题。
发明内容
本发明实施例提供一种表针识别的方法、装置及电子设备,用于解决现有的表针识别的方法中存的通用性和复用性差的问题。
具体技术方案如下:
第一方面,本发明实施例提供了一种表针识别的方法,包括以下步骤:
获取待识别指针式仪表的表盘图像;
将所述表盘图像输入至预设的目标检测模型中;
获取所述目标检测模型输出的目标图像;
针对所述每个目标图像,计算出所述每个目标图像中表针的旋转角度;
根据所述每个目标图像中表针的旋转角度,计算出所述每个目标图像对应的表盘中表针的读数。
可选的,所述目标检测模型用于:
获取所述表盘图像中每个表盘的位置坐标;
根据所述每个表盘的位置坐标,获取所述表盘图像中每个表盘对应的图像,作为目标图像,并输出目标图像。
可选的,所述获取所述表盘图像中每个表盘的位置坐标的步骤,包括:
对所述待识别指针式仪表的表盘图像进行检测,确定出所述表盘图像中每个表盘的位置坐标;
获取所述表盘图像中每个表盘的位置坐标,并将所述表盘图像中每个表盘的位置坐标存储至预设的配置文件中。
可选的,所述根据所述每个表盘的位置坐标,获取所述表盘图像中每个表盘对应的图像,作为目标图像,并输出目标图像的步骤,包括:
分别从所述配置文件中获取所述表盘图像中每个表盘的位置坐标;
根据所述表盘图像中每个表盘的位置坐标,对所述待识别指针式仪表的表盘图像进行裁剪,获得每个表盘对应的图像,作为目标图像,并输出目标图像。
可选的,在所述将所述表盘图像输入至预设的目标检测模型中的步骤之前,还包括:
获取初始目标检测模型;
将带有目标检测框标签的训练样本输入初始目标检测模型中,获得所述初始目标检测模型输出的各个训练样本对应的目标图像;
根据所述初始目标检测模型的输出结果和所述训练样本的标签,使用预设的损失函数计算损失值;
根据所述损失值,调整所述初始目标检测模型中的参数,得到所述目标检测模型。
可选的,所述针对所述每个目标图像,计算出所述每个目标图像中表针的旋转角度的步骤,包括:
针对所述每个目标图像分别从预设的模板表盘图像选取与所述目标图像对应的模板表盘图像;
将所述目标图像与所述目标图像对应的模板表盘图像进行匹配;其中,一个所述模板表盘图像中仅包含一个表盘,所述模板表盘图像是一个表盘的表盘图像;
根据匹配度,选取所述目标图像中与所述模板表盘图像相匹配的一个区域,作为待筛选区域;
利用预设的算法从所述待筛选区域中筛选出目标区域;
拟合表针由0度位置顺时针绕所述模板表盘图像的旋转中心旋转到所述目标区域中表针的当前位置所旋转的角度。
可选的,所述利用预设的算法从所述待筛选区域中筛选出目标区域的步骤,包括:
以所述待筛选区域的中心点为圆心,以预设长度为半径,从所述待筛选区域中截取一个聚类区域,作为k-means聚类算法的样本点,进行聚类;
根据聚类结果对所述待筛选区域进行二值化处理;
将经过二值化处理后的待筛选区域的内切圆部分确定为所述目标区域。
第二方面,本发明实施例提供了一种表针识别的装置,所述装置包括:
第一获取模块,用于获取待识别指针式仪表的表盘图像;
输入模块,用于将所述表盘图像输入至预设的目标检测模型中;
第二获取模块,用于获取所述目标检测模型输出的目标图像;
角度计算模块,用于针对所述每个目标图像,计算出所述每个目标图像中表针的旋转角度;
读数计算模块,用于根据所述每个目标图像中表针的旋转角度,计算出所述每个目标图像对应的表盘中表针的读数。
可选的,所述目标检测模型用于:
获取所述表盘图像中每个表盘的位置坐标;
根据所述每个表盘的位置坐标,获取所述表盘图像中每个表盘对应的图像,作为目标图像,并输出目标图像。
可选的,所述目标检测模型,具体用于:
对所述待识别指针式仪表的表盘图像进行检测,确定出所述表盘图像中每个表盘的位置坐标;
获取所述表盘图像中每个表盘的位置坐标,并将所述表盘图像中每个表盘的位置坐标存储至预设的配置文件中。
可选的,所述目标检测模型,具体用于:
分别从所述配置文件中获取所述表盘图像中每个表盘的位置坐标;
根据所述表盘图像中每个表盘的位置坐标,对所述待识别指针式仪表的表盘图像进行裁剪,获得每个表盘对应的图像,作为目标图像,并输出目标图像。
可选的,所述装置,还包括:训练模块,所述训练模块,用于:
获取初始目标检测模型;
将带有目标检测框标签的训练样本输入初始目标检测模型中,获得所述初始目标检测模型输出的各个训练样本对应的目标图像;
根据所述初始目标检测模型的输出结果和所述训练样本的标签,使用预设的损失函数计算损失值;
根据所述损失值,调整所述初始目标检测模型中的参数,得到所述目标检测模型。
可选的,所述角度计算模块,具体用于:
针对所述每个目标图像分别从预设的模板表盘图像选取与所述目标图像对应的模板表盘图像;
将所述目标图像与所述目标图像对应的模板表盘图像进行匹配;其中,一个所述模板表盘图像中仅包含一个表盘,所述模板表盘图像是一个表盘的表盘图像;
根据匹配度,选取所述目标图像中与所述模板表盘图像相匹配的一个区域,作为待筛选区域;
利用预设的算法从所述待筛选区域中筛选出目标区域;
拟合表针由0度位置顺时针绕所述模板表盘图像的旋转中心旋转到所述目标区域中表针的当前位置所旋转的角度。
可选的,所述角度计算模块,具体用于:
以所述待筛选区域的中心点为圆心,以预设长度为半径,从所述待筛选区域中截取一个聚类区域,作为k-means聚类算法的样本点,进行聚类;
根据聚类结果对所述待筛选区域进行二值化处理;
将经过二值化处理后的待筛选区域的内切圆部分确定为所述目标区域。
第三方面,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现上述第一方面所述的表针识别的方法步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的表针识别的方法步骤。
本发明实施例提供的表针识别的方法,可以实现获取待识别指针式仪表的表盘图像;将表盘图像输入至预设的目标检测模型中;获取目标检测模型输出的目标图像;针对每个目标图像,计算出每个目标图像中表针的旋转角度;根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。可见,本发明实施例所提供的方法,可以实现对多表盘仪表的自动识别,并且对于子表盘位置不固定的任意仪表都可以通用,因此解决了现有技术存在的只能识别单个表盘的缺陷,提高了表针识别方法的通用性和复用性,能够覆盖更多的通用场景。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为多表盘水表的一种示意图;
图2为多表盘水表的另一种示意图;
图3为本发明实施例提供的表针识别的方法的一种流程示意图;
图4为本发明实施例提供的表针识别的方法的另一种流程示意图;
图5为本发明实施例提供的表针识别的装置的一种结构示意图;
图6为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图3为本发明实施例提供的表针识别的方法的一种流程示意图;如图3所示,该方法包括:
S301:获取待识别指针式仪表的表盘图像;
在一种具体的实施例中,可以是利用机器视觉产品,即图像摄取装置,摄取待识别指针式仪表的表盘图像,并将摄取到的表盘图像转换成图像信号,传送给目标检测模型。
在实际应用中指针式仪表可以是指针式水表。
S302:将表盘图像输入至预设的目标检测模型中;
在一种具体的实施例中,目标检测模型用于:
获取表盘图像中每个表盘的位置坐标;
根据每个表盘的位置坐标,获取表盘图像中每个表盘对应的图像,作为目标图像,并输出目标图像。
具体的,获取表盘图像中每个表盘的位置坐标的步骤,可以包括:
对待识别指针式仪表的表盘图像进行检测,确定出表盘图像中每个表盘的位置坐标;
获取表盘图像中每个表盘的位置坐标,并将表盘图像中每个表盘的位置坐标存储至预设的配置文件中。
具体的,根据每个表盘的位置坐标,获取表盘图像中每个表盘对应的图像,作为目标图像,并输出目标图像的步骤,可以包括:
分别从配置文件中获取表盘图像中每个表盘的位置坐标;
根据表盘图像中每个表盘的位置坐标,对待识别指针式仪表的表盘图像进行裁剪,获得每个表盘对应的图像,作为目标图像,并输出目标图像。
在实际应用中,在将表盘图像输入至预设的目标检测模型中的步骤之前,还包括:
获取初始目标检测模型;
将带有目标检测框标签的训练样本输入初始目标检测模型中,获得初始目标检测模型输出的各个训练样本对应的目标图像;
根据初始目标检测模型的输出结果和训练样本的标签,使用预设的损失函数计算损失值;
根据损失值,调整初始目标检测模型中的参数,得到目标检测模型。
目标检测框标签可以是为指针式仪表的表盘图像中为的各个目标图像设置的标签。
在具体的实施例中,目标检测模型可以是YOLOv5(You Only Look Once version5)目标检测模型。YOLOv5是一种单阶段目标检测算法,该算法可用于找出图像中所有感兴趣的目标或物体,确定目标或物体的类别和位置,在本发明实施例中,目标检测的目的是找出图像中所有的表盘,并且得到每个表盘的位置坐标。YOLOv5的网络结构分为三部分:Backbone骨干网络、Neck颈部结构、Head头部结构。其中,Backbone负责特征提取;Neck负责特征融合;Head包含了三个检测头:检测小目标检测头、检测中目标检测头、检测大目标检测头,负责输出检测信息。
S303:获取目标检测模型输出的目标图像;
在本发明实施例中,目标图像为待识别指针式仪表的表盘图像中每个表盘的图像。例如:如果待识别指针式仪表的表盘图像中仅有一个表盘,那么,目标图像为该表盘的图像;如果待识别指针式仪表的表盘图像中有一个主表盘和多个子表盘,那么,目标图像为主表盘的对应图像和各个子表盘对应的图像。
S304:针对每个目标图像,计算出每个目标图像中表针的旋转角度;
具体的,针对每个目标图像,计算出每个目标图像中表针的旋转角度的步骤,可以包括:
针对每个目标图像分别从预设的模板表盘图像选取与目标图像对应的模板表盘图像;
将目标图像与目标图像对应的模板表盘图像进行匹配;其中,一个模板表盘图像中仅包含一个表盘,模板表盘图像是一个表盘的表盘图像;
根据匹配度,选取目标图像中与模板表盘图像相匹配的一个区域,作为待筛选区域;
利用预设的算法从待筛选区域中筛选出目标区域;
拟合表针由0度位置顺时针绕模板表盘图像的旋转中心旋转到目标区域中表针的当前位置所旋转的角度。
具体的,利用预设的算法从待筛选区域中筛选出目标区域的步骤,可以包括:
以待筛选区域的中心点为圆心,以0.6厘米为半径,从待筛选区域中截取一个聚类区域,作为k-means聚类算法的样本点,进行聚类;
根据聚类结果对待筛选区域进行二值化处理;
将经过二值化处理后的待筛选区域的内切圆部分确定为目标区域。
S305:根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。
在具体的实施例中可以基于指针式仪表盘中的刻度分布,根据表针的起始位置和表针当前位置及表针的旋转角度,采用角度法计算出表盘中表针的读数。
由图3可见,本发明实施例提供的表针识别的方法,可以实现获取待识别指针式仪表的表盘图像;将表盘图像输入至预设的目标检测模型中;获取目标检测模型输出的目标图像;针对每个目标图像,计算出每个目标图像中表针的旋转角度;根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。可见,本发明实施例所提供的方法,可以实现对多表盘仪表的自动识别,并且对于子表盘位置不固定的任意仪表都可以通用,因此解决了现有技术存在的只能识别单个表盘的缺陷,提高了表针识别方法的通用性和复用性,能够覆盖更多的通用场景。
下面来举一个实际的例子对本发明实施例所提供的方法做进一步更为详细的说明。
在该实施例中指针式仪表为指针式水表。目标检测模型为YOLOv5目标检测模型。在该实施例中YOLOv5目标检测模型可以通过以下过程获得的:首先收集上万张不同类型不同规格不同大小的表盘图像,通过labelImg(可视化的图像标定工具)对获取到的表盘图像进行目标检测框的标注,获得数据集,将数据集分为训练集和验证集。对YOLOv5算法进行参数配置,获得初始YOLOv5目标检测模型。把训练集输入至初始YOLOv5目标检测模型中,对初始YOLOv5目标检测模型进行训练,得到训练好的目标检测模型。再将验证集输入至训练好的目标检测模型中对训练好的目标检测模型进行验证,将验证通过的目标检测模型作为待使用目标检测模型。
参见图4,本实施例所提供的方法的具体步骤如下:
S401:利用机器视觉产品获取待识别指针式仪表的表盘图像;
具体的,可以是利用机器视觉产品,摄取待识别指针式仪表的表盘图像,并将摄取到的表盘图像转换成图像信号,传送给目标检测模型。
S402:将表盘图像输入至预设的目标检测模型中;
在该实施例中,目标检测模型是YOLOv5目标检测模型,该目标检测模型用于:对待识别指针式仪表的表盘图像进行检测,确定出表盘图像中每个表盘的位置坐标;获取表盘图像中每个表盘的位置坐标,并将表盘图像中每个表盘的位置坐标存储至预设的配置文件中。分别从配置文件中获取表盘图像中每个表盘的位置坐标;再根据表盘图像中每个表盘的位置坐标,对待识别指针式仪表的表盘图像进行裁剪,获得每个表盘对应的图像,作为目标图像,并输出目标图像。
S403:获取目标检测模型输出的目标图像;
目标图像为待识别指针式仪表的表盘图像中每个表盘的图像。例如:如果待识别指针式仪表的表盘图像中仅有一个表盘,那么,目标图像为该表盘的图像;如果待识别指针式仪表的表盘图像中有一个主表盘和多个子表盘,那么,目标图像为主表盘的对应图像和各个子表盘对应的图像。
S404:针对每个目标图像分别从预设的模板表盘图像选取与目标图像对应的模板表盘图像;
在实际应用中,有时候会存在利用目标检测模型对摄像头采集到的图像进行裁剪获得的目标图像的大小与预设的模板表盘图像的大小不一致的问题,本发明实施例所提供的方法,还可以实现对模板表盘图像在预设范围内进行缩放,使得模板表盘图像的大小与目标图像的大小相同,这样在后续的目标图像与目标图像对应的模板表盘图像进行匹配过程中,可以提高匹配的准确率。
S405:将目标图像与目标图像对应的模板表盘图像进行匹配;
其中,一个模板表盘图像中仅包含一个表盘,模板表盘图像是一个表盘的表盘图像。
在一种具体实施例中,可以利用OpenCV(Open Source Computer VisionLibrary)中的模板匹配算法来进行目标图像与目标图像对应的模板表盘图像的匹配。OpenCV是一个跨平台的计算机视觉处理开源软件库,支持与计算机视觉和机器学习相关的众多算法。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序。
在该实施例中,可以利用OpenCV中的模板匹配算法实现根据一个模板表盘图像到目标图像上去寻找与模板表盘图像对应的表盘的位置。当然如果模板表盘图像选的比较标准,将目标图像与模板表盘图像进行匹配的结果就比较好,所以在选择与目标图像对应的模板表盘图像时,可以进行多次匹配以从预设的模板表盘图像库选取与目标图像最匹配的模板表盘图像。
S406:根据匹配度,选取目标图像中与模板表盘图像相匹配的一个区域,作为待筛选区域;
具体的,可以是选取目标图像中与模板表盘图像匹配度最高的一个区域,作为待筛选区域。
S407:以待筛选区域的中心点为圆心,以预设长度为半径,从待筛选区域中截取一个聚类区域,作为k-means聚类算法的样本点,进行聚类;
具体的,可以是以待筛选区域的中心点为圆心,以0.6厘米为半径,从待筛选区域中截取一个聚类区域,作为k-means(K-means中的“means”是指计算数据平均值或查找中心的任务)聚类算法的样本点也就是作为k-means聚类算法的数据集。k-means聚类算法能够识别数据集中一定数量的中心,而中心属于特定集群所有数据点的算术平均值。k-means聚类算法关注空间中每一物体的位置,并试图使得每个类别的物体尽可能的接近,而不同类别的物体尽可能的远。
S408:根据聚类结果对待筛选区域进行二值化处理;
二值化是图像分割的一种最简单的方法。二值化可以把灰度图像转换成二值图像。把大于某个临界灰度值(阈值)的像素灰度设为灰度极大值(255),把小于这个值的像素灰度设为灰度极小值(0),从而实现二值化,
图像的二值化,就是将图像上的像素点的灰度值设置为0或255,例如:设定一个阈值,对于图像上的每一个像素点,比较各像素点的灰度值和阈值的大小,若某像素点的灰度值大于或等于阈值,则将该像素的灰度值设置为255;反之,若某像素点的灰度值小于阈值,则将该像素的灰度值设置为0。将整个图像呈现出明显的只有黑和白的视觉效果。
在该实施例中,利用k-means聚类算法计算得到的聚类结果对待筛选区域对应的图像进行二值化处理,得到待筛选区域对应的二值化图像。例如,聚类结果为2,求聚类结果的中值,将求得的中值作为阈值,对于图像上的每一个像素点,比较各像素点的灰度值和该阈值的大小,若某像素点的灰度值大于或等于阈值,则将该像素的灰度值设置为255;反之,若某像素点的灰度值小于阈值,则将该像素的灰度值设置为0,从而得到待筛选区域对应的二值化图像。
S409:将经过二值化处理后的待筛选区域的内切圆部分确定为目标区域;
具体的,可以是仅保留经过二值化处理后的待筛选区域的内切圆部分,删除内切圆以外的无用区域,这样可以有效避免无用区域给后续表针拟合带来负面影响。
S410:拟合表针由0度位置顺时针绕模板表盘图像的旋转中心旋转到目标区域中表针的当前位置所旋转的角度;
具体的,可以是选取模板表盘图像的旋转中心,拟合表针也就是模拟表针,首先拟合一条直线,利用旋转虚拟直线的方法,假设一条直线从0度位置顺时针绕中心旋转,当拟合指针和真实指针也就是目标区域中表针的像素重合程度最高时,表明该直线已旋转到目标区域中表针当前指向的位置,记录该角度,该角度就是目标图像中表针的旋转角度。
S411:根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。
当然,在计算出每个目标图像对应的表盘中表针的读数后,还可以将每个目标图像对应的表盘的读数显示在显示屏中,供用户读取或使用。
在具体的实施例中可以是基于指针式仪表盘中的刻度分布,根据表针的起始位置和表针当前位置及表针的旋转角度,采用角度法计算出表盘中表针的读数。
由图4可见,本发明实施例所提供的方法,可以实现利用机器视觉产品获取待识别指针式仪表的表盘图像,再将获取的表盘图像上传至预设的目标检测模型中,利用目标检测模型获得目标图像,再利用模板匹配、k-means二值化和直线拟合的方法计算得到目标图像中表针的旋转角度,根据该旋转角度计算出目标图像对应的表盘中表针的读数,从而实现了对表盘仪表的自动识别。本发明实施例提供的方法不仅适用于单表盘仪表也适用于多表盘仪表,从而解决了现有技术中存在的只能识别单个表盘的缺陷,提高了表针识别方法的通用性和复用性,能够覆盖更多的通用场景。
另外,由于机器视觉产品具有不易疲劳、精度高、自动化程度及工作效率高等优点,所以通过机器视觉技术实现表盘图像的自动采集,再将采集到的表盘图像上传至目标检测模型,利用目标检测模型获得目标图像,再利用模板匹配、k-means二值化和直线拟合的方法自动识别表盘中表针的读数,可以使抄表人员从繁琐、效率低下、重复性高的工作中解放出来,大大节省了人工和时间成本。
与图3所示的实施例相对应,本发明实施例还提供了一种表针识别的装置。如图5所示,该装置包括:第一获取模块501,输入模块502,第二获取模块503,角度计算模块504,读数计算模块505,其中,
第一获取模块,用于获取待识别指针式仪表的表盘图像;
输入模块,用于将表盘图像输入至预设的目标检测模型中;
第二获取模块,用于获取目标检测模型输出的目标图像;
角度计算模块,用于针对每个目标图像,计算出每个目标图像中表针的旋转角度;
读数计算模块,用于根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。
可选的,目标检测模型用于:
获取表盘图像中每个表盘的位置坐标;
根据每个表盘的位置坐标,获取表盘图像中每个表盘对应的图像,作为目标图像,并输出目标图像。
可选的,目标检测模型具体用于:
对待识别指针式仪表的表盘图像进行检测,确定出表盘图像中每个表盘的位置坐标;
获取表盘图像中每个表盘的位置坐标,并将表盘图像中每个表盘的位置坐标存储至预设的配置文件中。
可选的,目标检测模型具体用于:
分别从配置文件中获取表盘图像中每个表盘的位置坐标;
根据表盘图像中每个表盘的位置坐标,对待识别指针式仪表的表盘图像进行裁剪,获得每个表盘对应的图像,作为目标图像,并输出目标图像。
可选的,该装置还包括:训练模块,该训练模块用于:
获取初始目标检测模型;
将带有目标检测框标签的训练样本输入初始目标检测模型中,获得初始目标检测模型输出的各个训练样本对应的目标图像;
根据初始目标检测模型的输出结果和训练样本的标签,使用预设的损失函数计算损失值;
根据损失值,调整初始目标检测模型中的参数,得到目标检测模型。
可选的,角度计算模块504,具体用于:
针对每个目标图像分别从预设的模板表盘图像选取与目标图像对应的模板表盘图像;
将目标图像与目标图像对应的模板表盘图像进行匹配;其中,一个模板表盘图像中仅包含一个表盘,模板表盘图像是一个表盘的表盘图像;
根据匹配度,选取目标图像中与模板表盘图像相匹配的一个区域,作为待筛选区域;
利用预设的算法从待筛选区域中筛选出目标区域;
拟合表针由0度位置顺时针绕模板表盘图像的旋转中心旋转到目标区域中表针的当前位置所旋转的角度。
可选的,角度计算模块504,具体用于:
以待筛选区域的中心点为圆心,以预设长度为半径,从待筛选区域中截取一个聚类区域,作为k-means聚类算法的样本点,进行聚类;
根据聚类结果对待筛选区域进行二值化处理;
将经过二值化处理后的待筛选区域的内切圆部分确定为目标区域。
由图5可见,本发明实施例提供的表针识别的装置,可以实现获取待识别指针式仪表的表盘图像;将表盘图像输入至预设的目标检测模型中;获取目标检测模型输出的目标图像;针对每个目标图像,计算出每个目标图像中表针的旋转角度;根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。可见,本发明实施例所提供的装置,可以实现对多表盘仪表的自动识别,并且对于子表盘位置不固定的任意仪表都可以通用,因此解决了现有技术存在的只能识别单个表盘的缺陷,提高了表针识别方法的通用性和复用性,能够覆盖更多的通用场景。
与图3所示的实施例相对应,本发明实施例还提供了一种电子设备,参见图6,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信;
存储器603,用于存放计算机程序;
处理器601,用于执行存储器上所存放的程序时,实现上述实施例中的任一表针识别的方法步骤。
本发明实施例提供的电子设备,可以实现获取待识别指针式仪表的表盘图像;将表盘图像输入至预设的目标检测模型中;获取目标检测模型输出的目标图像;针对每个目标图像,计算出每个目标图像中表针的旋转角度;根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。可见,应用本发明实施例所提供的电子设备,可以实现对多表盘仪表的自动识别,并且对于子表盘位置不固定的任意仪表都可以通用,因此解决了现有技术存在的只能识别单个表盘的缺陷,提高了表针识别方法的通用性和复用性,能够覆盖更多的通用场景。
与图3所示的实施例相对应,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述实施例中的任一表针识别的方法步骤。
本发明实施例提供的存储介质,可以实现获取待识别指针式仪表的表盘图像;将表盘图像输入至预设的目标检测模型中;获取目标检测模型输出的目标图像;针对每个目标图像,计算出每个目标图像中表针的旋转角度;根据每个目标图像中表针的旋转角度,计算出每个目标图像对应的表盘中表针的读数。可见,应用本发明实施例所提供的存储介质,可以实现对多表盘仪表的自动识别,并且对于子表盘位置不固定的任意仪表都可以通用,因此解决了现有技术存在的只能识别单个表盘的缺陷,提高了表针识别方法的通用性和复用性,能够覆盖更多的通用场景。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种表针识别的方法,其特征在于,包括以下步骤:
获取待识别指针式仪表的表盘图像;
将所述表盘图像输入至预设的目标检测模型中;
获取所述目标检测模型输出的目标图像;
针对所述每个目标图像,计算出所述每个目标图像中表针的旋转角度;
根据所述每个目标图像中表针的旋转角度,计算出所述每个目标图像对应的表盘中表针的读数。
2.根据权利要求1所述的方法,其特征在于,所述目标检测模型用于:
获取所述表盘图像中每个表盘的位置坐标;
根据所述每个表盘的位置坐标,获取所述表盘图像中每个表盘对应的图像,作为目标图像,并输出目标图像。
3.根据权利要求2所述的方法,其特征在于,所述获取所述表盘图像中每个表盘的位置坐标的步骤,包括:
对所述待识别指针式仪表的表盘图像进行检测,确定出所述表盘图像中每个表盘的位置坐标;
获取所述表盘图像中每个表盘的位置坐标,并将所述表盘图像中每个表盘的位置坐标存储至预设的配置文件中。
4.根据权利要求2所述的方法,其特征在于,所述根据所述每个表盘的位置坐标,获取所述表盘图像中每个表盘对应的图像,作为目标图像,并输出目标图像的步骤,包括:
分别从所述配置文件中获取所述表盘图像中每个表盘的位置坐标;
根据所述表盘图像中每个表盘的位置坐标,对所述待识别指针式仪表的表盘图像进行裁剪,获得每个表盘对应的图像,作为目标图像,并输出目标图像。
5.根据权利要求1所述的方法,其特征在于,在所述将所述表盘图像输入至预设的目标检测模型中的步骤之前,还包括:
获取初始目标检测模型;
将带有目标检测框标签的训练样本输入初始目标检测模型中,获得所述初始目标检测模型输出的各个训练样本对应的目标图像;
根据所述初始目标检测模型的输出结果和所述训练样本的标签,使用预设的损失函数计算损失值;
根据所述损失值,调整所述初始目标检测模型中的参数,得到所述目标检测模型。
6.根据权利要求1所述的方法,其特征在于,所述针对所述每个目标图像,计算出所述每个目标图像中表针的旋转角度的步骤,包括:
针对所述每个目标图像分别从预设的模板表盘图像选取与所述目标图像对应的模板表盘图像;
将所述目标图像与所述目标图像对应的模板表盘图像进行匹配;其中,一个所述模板表盘图像中仅包含一个表盘,所述模板表盘图像是一个表盘的表盘图像;
根据匹配度,选取所述目标图像中与所述模板表盘图像相匹配的一个区域,作为待筛选区域;
利用预设的算法从所述待筛选区域中筛选出目标区域;
拟合表针由0度位置顺时针绕所述模板表盘图像的旋转中心旋转到所述目标区域中表针的当前位置所旋转的角度。
7.根据权利要求6所述的方法,其特征在于,所述利用预设的算法从所述待筛选区域中筛选出目标区域的步骤,包括:
以所述待筛选区域的中心点为圆心,以预设长度为半径,从所述待筛选区域中截取一个聚类区域,作为k-means聚类算法的样本点,进行聚类;
根据聚类结果对所述待筛选区域进行二值化处理;
将经过二值化处理后的待筛选区域的内切圆部分确定为所述目标区域。
8.一种表针识别的装置,其特征在于,所述装置,包括:
第一获取模块,用于获取待识别指针式仪表的表盘图像;
输入模块,用于将所述表盘图像输入至预设的目标检测模型中;
第二获取模块,用于获取所述目标检测模型输出的目标图像;
角度计算模块,用于针对所述每个目标图像,计算出所述每个目标图像中表针的旋转角度;
读数计算模块,用于根据所述每个目标图像中表针的旋转角度,计算出所述每个目标图像对应的表盘中表针的读数。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410280624.7A CN118172779A (zh) | 2024-03-12 | 2024-03-12 | 一种表针识别的方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410280624.7A CN118172779A (zh) | 2024-03-12 | 2024-03-12 | 一种表针识别的方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118172779A true CN118172779A (zh) | 2024-06-11 |
Family
ID=91349794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410280624.7A Pending CN118172779A (zh) | 2024-03-12 | 2024-03-12 | 一种表针识别的方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118172779A (zh) |
-
2024
- 2024-03-12 CN CN202410280624.7A patent/CN118172779A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110659636B (zh) | 基于深度学习的指针式仪表读数识别方法 | |
CN107067003B (zh) | 感兴趣区域边界的提取方法、装置、设备和计算机存储介质 | |
CN109977191B (zh) | 问题地图检测方法、装置、电子设备和介质 | |
CN109886928B (zh) | 一种目标细胞标记方法、装置、存储介质及终端设备 | |
CN103994786B (zh) | 圆弧标尺线指针式仪表刻度的图像检测方法 | |
CN110493595B (zh) | 摄像头的检测方法和装置、存储介质及电子装置 | |
CN112149667A (zh) | 一种基于深度学习的指针式仪表的自动读数的方法 | |
CN108955901B (zh) | 一种红外测温方法、系统及终端设备 | |
CN113780201B (zh) | 手部图像的处理方法及装置、设备和介质 | |
US10679094B2 (en) | Automatic ruler detection | |
CN112258507B (zh) | 互联网数据中心的目标对象检测方法、装置和电子设备 | |
CN114549390A (zh) | 电路板检测方法、电子装置及存储介质 | |
CN114419038A (zh) | 轮毂表面缺陷的识别方法及装置、存储介质、电子设备 | |
CN113532882A (zh) | 一种汽车仪表测试方法、装置、系统及存储介质 | |
CN114549513B (zh) | 零件识别方法、装置、质检方法、电子设备及存储介质 | |
CN114897872A (zh) | 一种适用于细胞团中细胞的识别方法、装置及电子设备 | |
CN111368823B (zh) | 一种指针式仪表读数识别方法及装置 | |
CN111079752A (zh) | 识别红外图像中的断路器的方法、装置及可读存储介质 | |
CN118172779A (zh) | 一种表针识别的方法、装置及电子设备 | |
CN110866440B (zh) | 一种指针仪表深度学习网络搭建方法、检测方法及其系统 | |
CN115588196A (zh) | 基于机器视觉的指针型仪表读数方法和装置 | |
CN115438945A (zh) | 基于电力设备巡检的风险识别方法、装置、设备及介质 | |
CN114255458A (zh) | 一种巡检场景下指针仪表读数的识别方法与系统 | |
CN114782822A (zh) | 电力设备的状态检测方法、装置、电子设备及存储介质 | |
CN114612889A (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 |