CN114255458A - 一种巡检场景下指针仪表读数的识别方法与系统 - Google Patents
一种巡检场景下指针仪表读数的识别方法与系统 Download PDFInfo
- Publication number
- CN114255458A CN114255458A CN202111562253.4A CN202111562253A CN114255458A CN 114255458 A CN114255458 A CN 114255458A CN 202111562253 A CN202111562253 A CN 202111562253A CN 114255458 A CN114255458 A CN 114255458A
- Authority
- CN
- China
- Prior art keywords
- pointer
- image
- instrument
- scale
- fitting
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Character Discrimination (AREA)
- Character Input (AREA)
Abstract
本发明公开了一种巡检场景下指针仪表读数的识别方法与系统,其中所述方法包括:获取指针仪表图像;基于定位检测模型定位指针仪表图像中的指针、仪表,并定位图像中的仪表的刻度示数;基于上述定位的数据,采用OCR方向检测模型拟合出指针仪表图像中表盘图像;对表盘图像基于平面旋转和空间翻转的矫正操作,得到矫正后表盘图像;基于矫正后表盘图像进行指针直线拟合和刻度示数的数字识别,数字识别采用OCR识别模型;基于仪表先验信息,对数字识别结果进行校准;基于校准结果和指针直线拟合结果获取仪表读数。本发明可以准确进行仪表定位和矫正,保证最终对指针仪表读数的成功率和准确性。
Description
技术领域
本发明属于智能机器人领域,尤其涉及一种巡检场景下指针仪表读数的识别方法与系统。
背景技术
指针仪表作为重要指示仪器、仪表,在工业现场有极其广泛的应用,比如:压力计、电压表、电流表、温度计等。这些仪表被使用在工业现场,对现场的环境参数、生产指标参数、设备运行参数等进行衡量和指示。这些仪表的数值读取和记录,即抄表,是生产过程的一个必要环节。在传统的工业生产现场,仪表的数值读取是通过工人前往现场抄录的,需要大量人力才能完成这一任务。并且,在一些环境复杂的和危险生产场合,进行人工判读和数据记录更加困难。
随着图像处理领域技术的快速发展,和其使用高度结合的移动式巡检机器人在工业生产现场广泛地普及应用,使得抄表方式和方法有了很大的转变。它借助巡检机器人搭载的视觉摄像头,采集生产现场的仪表图片或视频,再通过图像处理领域相关算法解析仪表图片、判读以及入库来完成记录,这种方式能够很大程度的节约人力。专利文本(CN111598109A)提供一种变电站指针仪表读数智能识别方法,通过传统的图像处理技术(包括,图像校正、灰度化、边缘检测、圆变换检测表盘、Hough直线检测检测指针)来获取仪表示数;专利文本(CN111931776 A)提供一种基于深度学习的双指针仪表读数方法,利用深度学习方法定位仪表,然后对仪表图像进行霍夫圆检测,同时进行椭圆连通域筛选,结合两种方法得到仪表圆形表盘,方法受制于Hough圆检测方法不适用于目标成像旋转和翻转场景,实际应用不佳。
综上所述,现有指针仪表示数自动识别方法均存在一定的缺陷,在实际机房巡检应用中,容易因为目标图像在不同光照、角度、姿态而识别困难,且在部分遮挡、成像模糊、图像倾斜等条件下几乎很难进行有效识别,故难以满足实际应用的要求
发明内容
针对上述现有技术中存在的缺陷,本发明提供一种巡检场景下指针仪表读数的识别方法,包括以下步骤:
步骤S101、获取指针仪表图像;
步骤S103、基于定位检测模型定位所述指针仪表图像中的指针、仪表,并定位所述图像中的仪表的刻度示数;
步骤S105、基于上述定位的数据,采用OCR方向检测模型拟合出所述指针仪表图像中表盘图像;
步骤S107、对所述表盘图像基于平面旋转和空间翻转的矫正操作,得到矫正后表盘图像;
步骤S109、基于所述矫正后表盘图像进行指针直线拟合和所述刻度示数的数字识别,数字识别采用OCR识别模型;
步骤S111、基于仪表先验信息,对数字识别结果进行校准;
步骤S113、基于校准结果和指针直线拟合结果获取仪表读数。
其中,所述定位检测模型和所述OCR方向检测模型为采用历史采集的N张具有目标仪表的样本图像训练。
其中,所述步骤S105包括:
根据检测得到的仪表、指针、刻度示数在图像中的位置之间的包含关系将检测得到的刻度示数和指针与仪表进行筛选和关联,剔除目标之外的检测结果。
其中,所述步骤S107包括:
基于所述OCR方向检测模型获取刻度示数的水平旋转方向;
结合仪表先验信息,获取仪表的成像角度;
再依据所定位的刻度示数的位置信息,拟合仪表上刻度所在圆或椭圆的方程,求取空间旋转角度;
最后依据所求得的成像角度和旋转角度对仪表图像进行矫正。
其中,所述步骤S109中的指针拟合包括:
将所述表盘图像中的指针分别进行图像空间转化、图像形态学处理和数据拟合,得到一条与指针方向平行,且重合度最佳的一条包含位置信息的直线和/或直线段方程;
并基于所述位置信息判断获取指针的方向。
其中,所述仪表先验信息包括所述仪表的类型、测量范围和刻度分布的至少一个。
其中,图像形态学处理包括:
基于边界提取方法,从图像空间转化后的图像中分割出指针区域,并进行开运算,得到包括指针区域的连通区域;
基于骨架提取操作,根据连通区域获得指针的骨架,
根据指针的骨架获取在二维平面上位于骨架附近的一组点。
其中,所述刻度示数的数字识别采用paddleOCR进行识别。
其中,所述步骤S111包括:
根据仪表先验信息确定仪表的刻度示数为等差数列;
将数字识别的结果按照刻度示数,在其拟合的圆上以位于所述表盘图像左下角为起始点,沿着拟合圆按照顺时针方向对刻度的数字识别结果进行排序;
根据数字识别结果按序或间隔一个刻度值拟合为对应的等差数列,并求取等差数列的公差;
依次对比公差和数字识别结果的相邻差,判断当前刻度示数的数字识别结果是否存在误识别,对存在误识别的刻度示数按照相邻刻度示数的数字识别结果进行平均处理;
获得一组经过校验的刻度示数值。
其中,所述步骤S111包括:
根据仪表先验信息确定仪表的刻度示数为等比数列;
将数字识别的结果按照刻度示数,在其拟合的圆上以位于所述表盘图像左下角为起始点,沿着拟合圆按照顺时针方向对刻度的数字识别结果进行排序;
根据数字识别结果按序或间隔一个刻度值拟合为对应的等比数列,并求取等比数列的公比;
依次对比公比和数字识别结果的相邻商,判断当前刻度示数的数字识别结果是否存在误识别,对存在误识别的刻度示数按照相邻刻度示数的数字识别结果进行相乘并开方处理;
获得一组经过校验的刻度示数值。
本发明还提供一种巡检场景下指针仪表读数的识别系统,其包括:
图像获取模块,其用于获取指针仪表图像;
图像检测模块,其用于基于定位检测模型定位指针仪表图像中的指针、仪表,并定位图像中的仪表的刻度示数;
图像拟合模块,其用于基于上述定位的数据,采用OCR方向检测模型拟合出指针仪表图像中表盘图像;
图像处理模块,其用于对表盘图像基于平面旋转和空间翻转的矫正操作,得到矫正后表盘图像;
表盘识别模块,其用于基于矫正后表盘图像进行指针直线拟合和刻度示数的数字识别,数字识别采用OCR识别模型;
刻度校准模块,其用于基于仪表先验信息,对数字识别结果进行校准;
结果获取模块,其用于基于校准结果和指针直线拟合结果获取仪表读数。
与现有技术相比,本发明基于目标检测和OCR的指针仪表读数方法,能够适应目标(指针)成像发生旋转和翻转等场景,可以准确进行仪表定位和矫正,保证最终对指针仪表读数的成功率和准确性。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1是示出根据本发明实施例的一种巡检场景下指针仪表读数的识别方法流程图;
图2是示出根据本发明某一实施例的识别方法的流程图;
图3是示出根据本发明某一实施例的直线方程求取过程的流程图;
图4a是示出根据本发明某一实施例的角度法推算刻度的示意图一;
图4b是示出根据本发明某一实施例的角度法推算刻度的示意图二;
图5是示出根据本发明实施例的一种巡检场景下指针仪表读数的识别系统的示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。
下面结合附图详细说明本发明的可选实施例。
实施例一、
如图1所示,本发明实施例提供了一种巡检场景下指针仪表读数的的识别方法,包括以下步骤:
步骤S101、获取指针仪表图像;
步骤S103、基于定位检测模型定位指针仪表图像中的指针、仪表,并定位图像中的仪表的刻度示数;
步骤S105、基于上述定位的数据,采用OCR方向检测模型拟合出指针仪表图像中表盘图像;其中,定位检测模型和OCR方向检测模型为采用历史采集的N张具有目标仪表的样本图像训练;
步骤S107、对表盘图像基于平面旋转和空间翻转的矫正操作,得到矫正后表盘图像;具体可以包括:
基于OCR方向检测模型获取刻度示数的水平旋转方向;
结合仪表先验信息,获取仪表的成像角度;
再依据所定位的刻度示数的位置信息,拟合仪表上刻度所在圆或椭圆的方程,求取空间旋转角度;
最后依据所求得的成像角度和空间旋转角度对仪表图像进行矫正;
一般的,成像角度可以理解为包括水平、垂直两个方向。本实施例的成像角度是图像水平方向的旋转角度;
步骤S109、基于矫正后表盘图像进行指针直线拟合和刻度示数的数字识别,数字识别采用OCR识别模型;指针拟合可以包括:
将表盘图像中的指针分别进行图像空间转化、图像形态学处理和数据拟合,得到一条与指针方向平行,且重合度最佳的一条包含位置信息的直线和/或直线段方程;
并基于位置信息判断获取指针的方向;
在实际应用场景中,本实施例从表盘图像中分割出指针区域,并进行先开后闭处理,以此获得一个包括指针区域的连通区域,再利用形态学处理中的骨架提取方法,获得指针的骨架(可以理解为图像的中轴,一个长方形的骨架,是它的长方形上的中轴线,圆的骨架是它的圆心,直线的骨架是它自身);至此,可以获取在二维平面上位于指针(图像区域)中轴线的附近的一组,并基于最小二乘法直线拟合得到一条与指针方向平行,且重合度最佳的一条包含位置信息的直线和/或直线段方程;
其中,数字识别采用paddleOCR进行识别;
步骤S111、基于仪表先验信息,对数字识别结果进行校准;
步骤S113、基于校准结果和指针直线拟合结果获取仪表读数。
本发明实施例的先验信息是指一些关于指针仪表的信息,包括仪表的类型、测量范围和刻度分布等信息中的至少一个。这些先验信息是仪表的自身属性,是按个或按类别预先定义并存储起来的参数。
例如:
①仪表类型:(如:电压/电流/压力…)
②仪表测量范围:(0-100)
③刻度分布:(如顺时针/逆时针、等差/指数、递增/递减型。对于等差型指针仪表,其刻度数值分布可以表达为:an=a1+(n-1)*d,其中,a1表示起始位置的刻度值/零点刻度值,an表示第n个刻度的取值,d表示每相邻两个刻度的差,又叫公差,对于顺时针仪表d为正数;对于逆时针仪表d为负数)。
实施例二、
在上述实施例的基础上,本实施例还可以包括以下内容:
本发明实施例的OCR方向检测模型是用Mobilnet网络构成的分类模型。在OCR识别中有两类方法:一类是端对端的学习方法,另一类是非端对端的。端对端是指采用一个网络(模型)输入图片输出文字识别结果。非端对端的网络,则是由多个网络(模型)或部分构成,具体是由:文本检测模型(即OCR检测模型,输出文本位置结果)、文本方向检测模型(即OCR方向检测模型,输出文本角度结果)、文本识别模型(即OCR识别模型,输出最终文字结果)。
本发明实施例的OCR方向检测模型,就是指上述非端对端方法中的文本方向检测模型。具体的,采用的是MobileNet网络(模型)。
本实施例在实际应用OCR方向检测模型时,该步骤S105具体可以包括:
根据检测得到的仪表、指针、刻度示数在图像中的位置之间的包含关系将检测得到的刻度示数和指针与仪表进行筛选和关联,剔除目标之外的检测结果。
其中,进行筛选和关联是根据检测得到的仪表、指针、刻度示数在图像中的位置之间的包含关系来判断指针、刻度与仪表的归属,为了便于理解,本实施例需要说明的是,待检测图片(图像)中会包含多个仪表,上述检测模型会检测到多个仪表、多个指针、多个刻度示数,因此,该进行筛选和关联的目的就是将仪表、指针、数字进行归属判定。
实施例三、
在上述实施例的基础上,本实施例还可以包括以下内容:
为了便于理解本实施例的技术方案,本实施结合实际应用场景提供一种巡检场景下指针仪表读数的的识别方法,从而进行详细描述,如图2所示,该方法可以包括以下步骤:
步骤(1)图片获取,该步骤为在巡检现场采集N张具有目标仪表的样本图像,标注后获得图像数据集,并划分训练集和测试集,用于后续定位检测模型和OCR模型(包括OCR方向检测模型和OCR识别模型)的训练,以及算法测试。
步骤(2)仪表检测,该步骤包括对仪表盘面检测、仪表刻度示数检测和仪表指针检测。是指从待检测图片(图像)中获取感兴趣(目标)的仪表组成,获取其在图片上的位置信息,一般地,采用矩形框将其框取。具体使用yolov5模型完成仪表的检测任务。
Yolov5是当前深度学习领域主流的目标检测方法,在经过yoloV1-V5等一系列的发展或改版后,检测精度和速度在目标检测的各公开数据集上取得极好的成绩,在科研领域和工业生产现场备受关注。
Yolov5是一个端对端的目标检测网络,相比传统的多阶段处理过程,它仅采用一个深度网络完成推理,实现对目标的检测功能。对于一个确定网络的框架模型,它的推理、或者检测输出结果取决于它在训练过程中的输入(样本)和输出(标签)设计,用于训练模型的样本和标签,二者又统称为训练数据或训练样本,此处,用与训练样本是由图片获取得到。
模型训练时,输入一批包括指针仪表的图片,和标注有位置信息的标签,(具体为图盘中分别表示检测目标的表盘代号、刻度代号、指针代号以及位置)。
模型推理时(即检测),输入是一张的RGB三通道的图片,则其输出为感兴趣目标在图片上的位置及其代号。
步骤(3)刻度、指针与仪表关联,该步骤是根据检测得到的仪表、指针、刻度示数在图片中的位置之间的包含关系来判断这些候选框的归属,进而将检测得到的刻度示数和指针与仪表进行筛选和关联,剔除感兴趣(目标)之外的检测结果(候选框)。
算法上,这种包含关系可用IOU(Intersection over Union,交并比)来衡量。在检测得到的多个指针(候选框)中,当某一个指针(候选框)与仪表(框)的IOU值非零且取值最大,则该判定指针归属于该仪表,以此实现关联;对于刻度(候选框),取IOU非零的候选框归属于该仪表。其中IOU包括GIOU、DIOU和CIOU。
步骤(4)仪表方向判断和矫正,该步骤是指在图像上对检测得到的仪表区域进行平面和空间方向进行旋转和翻转判断,再对其进行矫正/放正,以得到成像上较规正的仪表图像,便于后续的处理。
该步骤中,利用OCR(Optical Character Recognition,光学字符识别)算法中的文本方向检测模型获取刻度示数的水平旋转方向,并结合仪表先验信息,来获取仪表的成像角度。再依据所定位的刻度示数的位置信息,拟合仪表上刻度所在圆或椭圆的方程,求取空间旋转角度。最后依据所求得的翻转和旋转角度对仪表图像进行矫正。具体的,
首先,依据步骤(3)中的关联信息,提取某一仪表与对应的刻度(框)及框内的图片区域;
其次,利用OCR方向检测模型(模型可查看刻度OCR识别部分),依次对该仪表的刻度图像进行处理,获取图片中数字的方向,或相对于图像x轴方向的角度。以此判断仪表成像相对于水平方向的旋转角。
然后,逐个计算刻度框中心点坐标,获得一组图像平面的二维数组[(x1,y1),(x2,y2),…,(xN,yN)],再利用最小二乘法(Least Sqaure Method,LSM),拟合刻度所在圆或椭圆的方程x^2/a^2+y^2/b^2=1,(a>b>0),并求取该椭圆的最大内切圆方程,利用透视变换求解椭圆方程到最大内切圆方程的倾斜角度,作为仪表在空间成像中的翻转角。
最后,依据求得的空间翻转角和平面旋转角,再利用仿射变换(又称仿射映射)将仪表图像进行矫正。
步骤(5)指针拟合,该步骤是指在图像上用一条有向的直线段表达指针,获取指针的方向信息和位置信息。通过提取检测框内指针主体,经过图像空间转化、图像形态学处理和数据拟合,得到一条与指针方向平行,且重合度最佳的一条直线/直线段方程(位置信息),并结合数字位置判断获取指针的方向信息。具体的,
指针的位置信息在图像二维空间内可以用一条直线方程来表:Ax+By+C=0,x∈[x1,x2],其中,x1和x2为直线段方程在水平方向(x方向)的最小和最大取值。如图3所示,该直线方程的求取过程如下:
首先,通过将检测得到的指针框提取指针区域图像;
其次,将指针区域的全部图像,转化灰度空间。并利用自适应二值化方法,在像素上差异化指针主体和背景;
然后,利用图像形态学处理的边界提取方法,从背景中分割出指针区域,并进行开运算,以此获得一个包括指针区域的连通区域,再利用形态学处理中的骨架提取方法,获得指针的骨架(可以理解为图像的中轴,一个长方形的骨架,是它的长方形上的中轴线,圆的骨架是它的圆心,直线的骨架是它自身)。至此,可以获取在二维平面上位于指针(图像区域)中轴线的附近的一组点。
最后,对这组骨架点进行直线方程拟合,即可计算得到一条表达指针的直线的方程。具体采用的方法,可以是hough直线拟合、最小二乘法LSTM、梯度下降法等。
其中,本实施例的边界提取是在二值化图像上进行的。具体的,如果一个点的8邻域都是1,则可以认为这个点是内部的点而不是边界上的点,可以删除这类点,剩下的就是边界上的点。具体步骤为:使用3*3的结构元素对图像进行腐蚀,可以得到内部的点,再用原图减去腐蚀图,就得到了图像的边界。
开运算为:使用结构元B(一个二维结构元素可以理解成一个二维矩阵,矩阵元素的值为0或者1)对集合A(图像像素块,本质也是一个二位矩阵)进行开操作,定义为:
骨架提取操作为:采用基于最大圆盘的方法,具体的,目标的骨架是由目标内所有内切圆盘的圆心组成。即,在获得得取连通区域拟合一组内切圆,然后提取其圆心位置,可作为指针的骨架。
其中,本实施例指针的方向信息为判断指直线段的起点(仪表指针的末端)和终点(仪表指针的针头段)。具体地,在图像上这两点指上述拟合得到直线方程的两个端点(x1,y1)和(x2,y2)。对于这两个点分别属于末端还是针头端,需要借助于上述方向校准中计算得到的刻度的圆心位置来判断:选取在图像上距离该圆心位置欧氏距离最近的端点为指针末端,距离最远的为针头端。
步骤(6)刻度OCR识别,即利用OCR中的文本识别模型对刻度(框)内图像进行处理,获取仪表刻度的数字或字符。
刻度识别环节利用paddleOCR框架来实现。它是一套实用的OCR算法/工具库。框架提供了包括文字检测、文字方向检测、和字符识别等模型。模型具备超轻量(不超过10M)、支持用户自定义训练、可运行于Linux、Windows、MacOS等多种系统、且支持PIP快速安装使用等特点。
仪表方向判断和矫正和刻度OCR识别环节,分别采用了它的文字方向检测模型和文本识别模型。
文字方向检测模型和文本识别模型分别被设计为两个端对端的网络。模型需要标注的刻度示数图片进行训练。前者的训练数据为一批仅含一组数字/字符以及组合的图片,标签为图片中字符(或字符组合)相对于水平方向的角度(0-360)。后者的训练数据为一批次包括一组或多组数字/字符及组合的图片(图片模拟生成的阿拉伯数字数据和实际场景标注的仪表刻度图片等构成),标签为图片中字符的位置和数字和字符(指[01234656789.])。
步骤(7)刻度读数校准,该步骤是将OCR识别模型得到的刻度示数进行校准,避免OCR识别模型误识别。这种误识别是由于图像受噪声、伪影、遮挡等因素影响导致的。校准过程结合刻度仪表的先验信息将OCR识别模型识别的仪表的识别结果进行校准或筛选。
该步骤在基于仪表经过方向校准的基础上,对检测出刻度按照顺势针进行排序;以单指针仪表为例,它往往遵循“顺时针方向”规律,即仪表的示数是按照“顺时针方向递增/递减”。而且,这种递增、递减规律属于等差数列或等比数列。
该步骤主要包括:
根据仪表先验信息确定仪表的刻度示数为等差数列或等比数列;
当根据仪表先验信息确定仪表的刻度示数为等差数列时;
首先,将刻度示数识别后的结果按照刻度框,在拟合的圆上以位于图片左下角为起始点,沿着拟合圆按照顺时针方向对刻度的识别结果进行排序。其次,按序或间隔一个刻度值分别拟合等差数列,并求取等差数列的公差。最后,依次对比公差和刻度(识别数字)的相邻差来判断当前识别刻度识别结果是否存在误识别,对存在误识别的刻度按照相邻刻度识别结果进行平均处理。最终获得一组有序(顺时针或逆时针)的且经过示数校验的刻度值。
对于该校准过程,本实施例以通过paddleOCR识别到“.10”、“20”、“30”、“40”、“50”字符时,将“.10”校准为数字10的过程为例,首先,本实施例从仪表的先验信息(刻度分布)中得知,该仪表刻度满足等差数列型。因此,首先需要定位识别错误的字符,此处,本实施例先将识别得到的字符按其在图像上位置的顺时针来排序,则得到字符‘.10’‘20’‘30’‘40’‘50’,并将字符转换数字的结果为0.1、20、30、40、50。然后,按照等差数列的通项公式,带入求取公差,可得到公差为10,并根据相邻两项或相隔的两项的差判断得到,“.10”对应的数字0.1是错误的,其他项是正确的,因此再将其校准为10。
等比数列型的仪表与此类似,不同指出是将其求差过程用求商代替。
即当根据仪表先验信息确定仪表的刻度示数为等比数列时;
首先,将刻度示数识别后的结果按照刻度框,在拟合的圆上以位于图片左下角为起始点,沿着拟合圆按照顺时针方向对刻度的识别结果进行排序。其次,按序或间隔一个刻度值分别拟合等比数列,并求取等比数列的公比。最后,依次对比公比和刻度(识别数字)的相邻商来判断当前识别刻度识别结果是否存在误识别,对存在误识别的刻度按照相邻刻度识别结果进行相乘并开方处理。最终获得一组有序(顺时针或逆时针)的且经过示数校验的刻度值。
步骤(8)读数推算,可采用利用角度法计算,其原理如下:
假设刻度示数位于一个平面圆形上(同刻度线),并取仪表表盘上任意2个刻度点计为a和b,且a、b不是重复刻度,分别对应的刻度数值为Va和Vb。同时,指针拟合得到的直线方程为Ax+By+C=0,则直线与这两个的刻度线在图像平面中相交于c点(若直线于刻度连线ab平行,则重新选取其中一点,保证于指针直线存在交点)。场景中,刻度和指针的位置分布大致分为图4a和图4b两种;
则仪表当前的读数计算为:
V=Va+∠aoc/∠aob*(Vb-Va)(如图4a所示)
或者
V=Va-∠aoc/∠aob*(Vb-Va)(如图4b所示)
基于以上公式,可以得到仪表当前的读数;
而对于本实施例中所需要的两个刻度点的数值,可以从校准后的刻度中选取;
考虑到受图像分辨率、成像干扰等制约或影响,任意选取的两个刻度点,所计算的结果偏差很大。因此,使用距离指针最近的两个刻度点来通过角度法来计算示数。需要使用计算得到的刻度位置、和指针方程和指针针头端点的位置信息。具体的,通过计算各刻度框的中心位置到指针直线(直线端)的最短距离/或距离指针端点的欧式距离来衡量远近,选取欧式距离最小的两个刻度点。
实施例四、
如图5所示,本发明还提出了一种巡检场景下指针仪表读数的识别系统,其包括:
图像获取模块,其用于获取指针仪表图像;
图像检测模块,其用于基于定位检测模型定位指针仪表图像中的指针、仪表,并定位图像中的仪表的刻度示数;
图像拟合模块,其用于基于上述定位的数据,采用OCR方向检测模型拟合出指针仪表图像中表盘图像;
图像处理模块,其用于对表盘图像基于平面旋转和空间翻转的矫正操作,得到矫正后表盘图像;
表盘识别模块,其用于基于矫正后表盘图像进行指针直线拟合和刻度示数的数字识别,数字识别采用OCR识别模型;
刻度校准模块,其用于基于仪表先验信息,对数字识别结果进行校准;
结果获取模块,其用于基于校准结果和指针直线拟合结果获取仪表读数。
实施例五、
本公开实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行如上实施例所述的方法步骤。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(AN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
以上介绍了本发明的较佳实施方式,旨在使得本发明的精神更加清楚和便于理解,并不是为了限制本发明,凡在本发明的精神和原则之内,所做的修改、替换、改进,均应包含在本发明所附的权利要求概括的保护范围之内。
Claims (10)
1.一种巡检场景下指针仪表读数的的识别方法,其特征在于,包括以下步骤:
步骤S101、获取指针仪表图像;
步骤S103、基于定位检测模型定位所述指针仪表图像中的指针、仪表,并定位所述图像中的仪表的刻度示数;
步骤S105、基于上述定位的数据,采用OCR方向检测模型拟合出所述指针仪表图像中表盘图像;
步骤S107、对所述表盘图像基于平面旋转和空间翻转的矫正操作,得到矫正后表盘图像;
步骤S109、基于所述矫正后表盘图像进行指针直线拟合和所述刻度示数的数字识别,数字识别采用OCR识别模型;
步骤S111、基于仪表先验信息,对数字识别结果进行校准;
步骤S113、基于校准结果和指针直线拟合结果获取仪表读数。
2.如权利要求1所述方法,其特征在于,所述定位检测模型和所述OCR方向检测模型为采用历史采集的N张具有目标仪表的样本图像训练。
3.如权利要求1所述方法,其特征在于,所述仪表先验信息包括所述仪表的类型、测量范围和刻度分布的至少一个。
4.如权利要求1所述方法,其特征在于,所述步骤S105包括:
根据检测得到的仪表、指针、刻度示数在图像中的位置之间的包含关系将检测得到的刻度示数和指针与仪表进行筛选和关联,剔除目标之外的检测结果。
5.如权利要求4所述方法,其特征在于,所述步骤S107包括:
基于所述OCR方向检测模型获取刻度示数的水平旋转方向;
结合仪表先验信息,获取仪表的成像角度;
再依据所定位的刻度示数的位置信息,拟合仪表上刻度所在圆或椭圆的方程,求取空间旋转角度;
最后依据所求得的成像角度和空间旋转角度对仪表图像进行矫正。
6.如权利要求1所述方法,其特征在于,所述步骤S109中的指针拟合包括:
将所述表盘图像中的指针分别进行图像空间转化、图像形态学处理和数据拟合,得到一条与指针方向平行,且重合度最佳的一条包含位置信息的直线和/或直线段方程;
并基于所述位置信息判断获取指针的方向。
7.如权利要求6所述方法,其特征在于,图像形态学处理包括:
基于边界提取方法,从图像空间转化后的图像中分割出指针区域,并进行开运算,得到包括指针区域的连通区域;
基于骨架提取操作,根据连通区域获得指针的骨架,
根据指针的骨架获取在二维平面上位于骨架附近的一组点。
8.如权利要求1所述方法,其特征在于,所述步骤S111包括:
根据仪表先验信息确定仪表的刻度示数为等差数列;
将数字识别的结果按照刻度示数,在其拟合的圆上以位于所述表盘图像左下角为起始点,沿着拟合圆按照顺时针方向对刻度的数字识别结果进行排序;
根据数字识别结果按序或间隔一个刻度值拟合为对应的等差数列,并求取等差数列的公差;
依次对比公差和数字识别结果的相邻差,判断当前刻度示数的数字识别结果是否存在误识别,对存在误识别的刻度示数按照相邻刻度示数的数字识别结果进行平均处理;
获得一组经过校验的刻度示数值。
9.如权利要求1所述方法,其特征在于,所述步骤S111包括:
根据仪表先验信息确定仪表的刻度示数为等比数列;
将数字识别的结果按照刻度示数,在其拟合的圆上以位于所述表盘图像左下角为起始点,沿着拟合圆按照顺时针方向对刻度的数字识别结果进行排序;
根据数字识别结果按序或间隔一个刻度值拟合为对应的等比数列,并求取等比数列的公比;
依次对比公比和数字识别结果的相邻商,判断当前刻度示数的数字识别结果是否存在误识别,对存在误识别的刻度示数按照相邻刻度示数的数字识别结果进行相乘并开方处理;
获得一组经过校验的刻度示数值。
10.一种实现如权利要求1-9任意一项所述方法的巡检场景下指针仪表读数的识别系统,其特征在于,包括:
图像获取模块,其用于获取指针仪表图像;
图像检测模块,其用于基于定位检测模型定位指针仪表图像中的指针、仪表,并定位图像中的仪表的刻度示数;
图像拟合模块,其用于基于上述定位的数据,采用OCR方向检测模型拟合出指针仪表图像中表盘图像;
图像处理模块,其用于对表盘图像基于平面旋转和空间翻转的矫正操作,得到矫正后表盘图像;
表盘识别模块,其用于基于矫正后表盘图像进行指针直线拟合和刻度示数的数字识别,数字识别采用OCR识别模型;
刻度校准模块,其用于基于仪表先验信息,对数字识别结果进行校准;
结果获取模块,其用于基于校准结果和指针直线拟合结果获取仪表读数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111562253.4A CN114255458A (zh) | 2021-12-17 | 2021-12-17 | 一种巡检场景下指针仪表读数的识别方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111562253.4A CN114255458A (zh) | 2021-12-17 | 2021-12-17 | 一种巡检场景下指针仪表读数的识别方法与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114255458A true CN114255458A (zh) | 2022-03-29 |
Family
ID=80795943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111562253.4A Pending CN114255458A (zh) | 2021-12-17 | 2021-12-17 | 一种巡检场景下指针仪表读数的识别方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114255458A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114494684A (zh) * | 2022-04-01 | 2022-05-13 | 深圳市海清视讯科技有限公司 | 指针式表盘的读数识别方法、装置、设备、存储介质 |
-
2021
- 2021-12-17 CN CN202111562253.4A patent/CN114255458A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114494684A (zh) * | 2022-04-01 | 2022-05-13 | 深圳市海清视讯科技有限公司 | 指针式表盘的读数识别方法、装置、设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107590498B (zh) | 一种基于字符分割级联二分类器的自适应汽车仪表检测方法 | |
CN109993166B (zh) | 基于刻度查找的指针式仪表读数自动识别方法 | |
CN110659636B (zh) | 基于深度学习的指针式仪表读数识别方法 | |
CN106529537A (zh) | 一种数字仪表读数图像识别方法 | |
CN110826549A (zh) | 基于计算机视觉的巡检机器人仪表图像识别方法及系统 | |
CN103759758A (zh) | 一种基于机械角度和刻度识别的汽车仪表指针的位置检测方法 | |
CN109284718B (zh) | 面向巡检机器人的变视角多仪表同时识别方法 | |
CN114549835A (zh) | 一种基于深度学习的指针式仪表矫正识别方法及装置 | |
CN111311576A (zh) | 基于点云信息的缺陷检测方法 | |
CN116245230B (zh) | 一种电站设备的运行巡检与趋势分析方法及系统 | |
CN114663744A (zh) | 基于机器学习的仪表自动识别方法及系统 | |
CN114266881A (zh) | 一种基于改进型语义分割网络的指针式仪表自动读数方法 | |
CN114255458A (zh) | 一种巡检场景下指针仪表读数的识别方法与系统 | |
CN116612461A (zh) | 一种基于目标检测的指针式仪表全过程自动读数方法 | |
CN116188755A (zh) | 一种基于深度学习的仪表角度校正与示数识别装置 | |
CN114037993B (zh) | 变电站指针仪表读数方法、装置、存储介质以及电子设备 | |
CN113065556A (zh) | 一种数字式仪表定位和数字识别方法、装置和计算机设备 | |
CN115239952A (zh) | 基于YOLOV5及U2-Net框架辅助读取工业表的方法 | |
CN115115889A (zh) | 一种仪表图像分析方法及装置 | |
CN114972714A (zh) | 表盘读取方法、设备、系统和计算机可读存储介质 | |
CN114529803A (zh) | 一种指针仪表识别增强检测方法 | |
Sablatnig et al. | Machine vision for automatic calibration of analog display instruments | |
Sowah et al. | Intelligent instrument reader using computer vision and machine learning | |
CN117372510B (zh) | 基于计算机视觉模型的地图注记识别方法、终端及介质 | |
Ameya et al. | Reading Gauges Using Computer Vision |
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 |