CN114663744A - 基于机器学习的仪表自动识别方法及系统 - Google Patents
基于机器学习的仪表自动识别方法及系统 Download PDFInfo
- Publication number
- CN114663744A CN114663744A CN202210569588.7A CN202210569588A CN114663744A CN 114663744 A CN114663744 A CN 114663744A CN 202210569588 A CN202210569588 A CN 202210569588A CN 114663744 A CN114663744 A CN 114663744A
- Authority
- CN
- China
- Prior art keywords
- scale
- line
- instrument
- pointer
- outline
- 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
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/66—Analysis of geometric attributes of image moments or centre of gravity
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geometry (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了基于机器学习的仪表自动识别方法及系统,包括:采集仪表图片;对仪表图片进行预处理,从预处理后的仪表图片背景中提取仪表盘图像;对仪表盘图像分离轮廓、刻度和指针;依据刻度信息判断读数是否受到影响,若受到影响,则将读数通过补全计算进行校正,得到校正读数作为识别结果,若未受到影响,则直接获取读数作为识别结果。本发明能够大大提供仪表刻度识别效率和精确性。
Description
技术领域
本发明属于仪表盘识别领域,具体涉及一种基于机器学习的仪表自动识别方法及系统。
背景技术
目前石油化工中的大多数仪表盘都是模拟仪表盘。相比于数字仪表盘,它有着便宜,费用小的价格优势。但是在实际的人力读取过程中,人力物力不断的消耗,检测者的长期工作会产生视觉疲劳,因此读数便会产生不确定性,产生误差,不利于巡检工作,并且不易于实时传输到系统。
由此可见,传统的人力巡检方式会带来很多问题,会严重影响石油工业生产的进度。发展并使用机器人技术来对设备进行自动巡检是巡检方式变化的新趋势。对于巡检机器人来说,它必须具备一个非常重要且不可或缺的功能就是对一些常见的现场指针式仪表,电压表、气压表、温度表的示数进行自动识别。
然而如果仪表出现磨损、模糊、划痕等情况,那么就会影响识别效率甚至影响度数的精确性,与此同时,如果系统度数错误,那这就给监控系统带来了安全隐患。
发明内容
本发明的目的在于提供一种基于机器学习的仪表自动识别方法及系统,以克服目前市面上的仪表识别设备无法准确识别存在划痕、雾气、反光的模拟仪表的问题,本发明能够大大提供仪表刻度识别效率和精确性。
为达到上述目的,本发明采用如下技术方案:
基于机器学习的仪表自动识别方法,所述方法包括:
采集仪表图片;
对仪表图片进行预处理,从预处理后的仪表图片背景中提取仪表盘图像;
对仪表盘图像分离轮廓、刻度和指针;
依据刻度的信息判断读数是否受到影响,若受到影响,则将读数通过补全计算进行校正,得到校正读数作为识别结果,若未受到影响,则直接获取读数作为识别结果,具体包括:
步骤1:运用opencv自带的数字库进行学习,得到所有刻度的刻度数值;根据n个刻度数值M i 以及刻度数值的包围框中心O i ,其中i=1,2,…n,将刻度数值序列{M i }按照从小到大的顺序依次排列成新的序列{ A i },已知待测仪表的零刻度数值为S 0 ,满刻度为S 1 ,通过序列{ A i }的特征判断指针位置和刻度数值的相对位置,有以下4种情况:
情况1:若S 0 、S 1 ∈A i 且序列{ A i }为等差数列,则指针位置没有遮挡刻度数值;
情况2:S 0 、S 1 ∈A i 且序列{ A i }不为等差数列,则指针位置遮挡刻度中间数值;
情况3:若S 0 ∉A i ,则指针位置遮挡零刻度数值;
情况4:若S 1 ∉A i ,则指针位置遮挡满刻度数值;
然后,针对以上4种情况,通过已检测到刻度数值位置对应的线段的长度L i,j+1 以及相邻线段的夹角θ j,j+1,j+2 完成对漏检刻度数值的定位,i=1,2,...,n-1,j=1,2,...,n-2;
最后按刻度数值从小到大的顺序依次将对应的包围框中心点连线,分别记为线段O i,i+1 i=1,2,…n-1;将线段进行比较,取最长线段的中点,中点坐标即为需要补全的数字刻度坐标,数值为最长线段两端的刻度数值之和的一半,以此对仪表图像进行补全;
步骤2:对补全后的仪表图像进行二值化处理,提取仪表图像的所有刻度线轮廓,具体为:在刻度线轮廓的宽高比满足式w/h<v的条件下,取与步骤1中每个刻度数值包围框距离最近的刻度线轮廓,式中,w和h分别为刻度线轮廓边界矩形的宽与高,v是一个经验值;
步骤3:从提取到的n个刻度线轮廓的重心中任取3个点p i ,p j ,p k ,对应的像素坐标为(x i ,y i ),(x j ,y j ),(x k ,y k ), i,j,k=1,2,…n,依据这三个点的像素坐标,建立
,,所示的三个方程,进而 得到临时的表盘中心坐标(x 0 (m) , y 0 (m) ),以及临时的表盘半径r (m) ,m=1,2,…C n 3 ,C n 3 为从n个刻度线轮廓中心随机选择三个点,依据三个点确定圆心的排列组合数量;
步骤4:遍历所有刻度线轮廓和线段O i,i+1 ,判断是否有刻度线轮廓与线段O i,i+1 相交,若存在刻度线轮廓与其中某个线段相交,则取该刻度线轮廓的中心线段,并且判断中心线段是否同时满足以下两个约束条件:
若满足两个约束条件,则所确定的中心线段所在直线为指针所在的直线,若不满足两个约束条件,那么即使刻度线轮廓与步骤中1的线段O i,i+1 相交,此刻度线轮廓也不是指针所在直线;
若存在某个刻度线轮廓与线段O i,i+1 不相交,那么将线段O i,i+1 向下平移,直到此刻度线轮廓与线段O i,i+1 相交且满足两个约束条件时,平移停止,并记录相交轮廓的中心线段,该中心线段即为指针所在的直线;
步骤5:通过步骤1-步骤4得到仪表刻度数值、仪表刻度线轮廓以及指针所在的直线后,通过距离法或角度法,得到仪表的读数。
进一步地,所述采集仪表图片具体为:通过相机采集需要识别的仪表图片,并判断仪表图片是否倾斜或歪曲,若是,则对相机角度进行自动调节,直至得到符合要求的仪表图片。
进一步地,所述对仪表图片进行预处理具体为:对仪表图片基于Gamma矫正和直方图均衡化方法进行对比度增强,得到增强图片;
所述从预处理后的仪表图片背景中提取仪表盘图像具体为:对预处理后的仪表图片基于YOLOv5神经网络的特征点进行学习模板匹配,从预处理后的仪表图片背景中提取仪表盘图像。
进一步地,所述对仪表盘图像分离轮廓、刻度和指针具体为:对仪表盘图像使用canny边缘检测算法和hough直线检测方法分离轮廓、刻度和指针。
进一步地,所述距离法具体为:
对于情况1和情况2,利用式即求出待测仪表的读数,对于情况3的计算方式,将指针直线右侧最近的刻度线轮廓视为左刻度线轮廓,将指针直线右侧第二近的刻度线轮廓视为右刻度线轮廓,对于情况4将指针直线左侧最近的刻度线轮廓视为左刻度线轮廓,将指针直线左侧第二近的刻度线轮廓视为右刻度线轮廓,情况3和情况4相应的仪表示数计算方式为,其中,M与N为分别表示左刻度线轮廓对应的刻度数字和右刻度线轮廓对应的刻度数字,d a 与d b 分别表示左刻度线轮廓重心到指针直线和右刻度线轮廓重心的距离,λ是一个修正值;
所述角度法具体为:
对于情况1和情况2,利用即求出待测仪表的读数,对于情况3将指针直线右侧最近的刻度线轮廓所在的直线视为左刻度线直线,将指针直线右侧第二近的刻度线轮廓所在的直线视为右刻度线直线,对于情况4将指针直线左侧最近的刻度线轮廓所在的直线视为左刻度线直线,将指针直线左侧第二近的刻度线轮廓所在的直线视为右刻度线直线,情况3和情况4相应的仪表示数计算方式为,其中,M与N为分别表示左刻度线轮廓对应的刻度数字和右刻度线轮廓对应的刻度数字,α与β分别表示左刻度线直线与右刻度线直线和指针直线的夹角。
进一步地,还包括将识别结果进行安全判断,若识别结果超过阈值,则进行报警,若识别结果未超过阈值,则显示识别结果。
基于机器学习的仪表自动识别系统,包括依次连接的图片摄取单元、模板匹配单元、边缘指针提取单元和刻度高精度识别单元,所述刻度高精度识别单元上连接有特殊补全单元;其中:
图片摄取单元:用于采集仪表图片;
模板匹配单元:用于对仪表图片进行预处理,从预处理后的仪表图片背景中提取仪表盘图像;
边缘指针提取单元:对仪表盘图像分离轮廓、刻度和指针;
刻度高精度识别单元:依据刻度信息判断读数是否受到影响,若受到影响,则将读数通过特殊补全单元进行校正,得到校正读数作为识别结果,若未受到影响,则直接获取读数作为识别结果。
进一步地,所述图片摄取单元上连接有相机角度调节单元,用于对采集仪表图片的相机角度进行自动调节,以获得符合要求的仪表图片。
进一步地,还包括依次连接在刻度高精度识别单元输出端的安全监控单元和显示单元,所述安全监控单元上连接有阈值报警单元;其中:
所述安全监控单元用于将识别结果进行安全判断,若识别结果超过阈值,则通过阈值报警单元进行报警,若识别结果未超过阈值,则通过显示单元显示识别结果。
与现有技术相比,本发明具有以下有益的技术效果:
本发明在采集仪表图片后,通过预处理后,提取仪表盘图像,并分离出轮廓、刻度和指针,依据刻度信息判断读数是否受到影响,若受到影响,则将读数通过补全计算进行校正,得到校正读数作为识别结果,若未受到影响,则直接获取读数作为识别结果,能够大大提供仪表刻度识别效率和精确性。
进一步地,本发明利用相机角度校准方法来采集仪表图片,此方法可以减少因为拍摄角度问题影响的模板匹配精度问题。
进一步地,本发明利用canny边缘检测和hough直线圆心检测方法检测出表盘的基本轮廓和指针数据,如果存在影响刻度识别的划痕或者模糊,能够自动进行删除相应刻度并补全刻度,同样可以进行高精度的识别。
进一步地,本发明采用的计算方法可以针对因指针覆盖刻度导致无法进行读数的仪表进行分类讨论,将所有的判读情况分为四种具体的情况,并针对不同情况选择运用角度法或者距离法进行读数,相比于传统无法识别的问题进行了改进。
附图说明
说明书附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
图1为本发明仪表识别方法流程图;
图2为本发明仪表识别系统示意图;
图3(a)为原图,图3(b)为模板匹配,图3(c)为Canny边缘检测,图3(d)为刻度线提取,图3(e)为刻度识别及补全,图3(f)为圆心识别,图3(g)为指针识别,图3(h)为距离法:指针挡零刻度数字,图3(i)为距离法:指针挡满刻度数字,图3(j)为角度法:指针挡零刻度数字,图3(k)为角度法:指针挡满刻度数字。
其中,1、图片摄取单元;2、模板匹配单元;3、边缘指针提取单元;4、刻度高精度识别单元;5、安全监控单元;6、显示单元;7、特殊补全单元;8、阈值报警单元;9、相机角度调节单元。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
本发明提供一种基于机器学习的仪表自动识别方法,如图1所示,包括以下步骤:
步骤1:通过相机采集需要识别的仪表图片,并判断仪表图片是否倾斜或歪曲,若是,则对相机角度进行自动调节,直至得到符合要求的仪表图片;
步骤2:对步骤1采集的仪表图片基于Gamma矫正和直方图均衡化方法进行对比度增强,得到增强图片,对增强图片基于YOLOv5神经网络的特征点进行学习模板匹配,从增强图片背景中提取仪表盘图像;
步骤3:对步骤2得到的仪表盘图像使用canny边缘检测算法和hough直线检测方法分离轮廓、刻度和指针;
步骤4:依据刻度的信息判断读数是否受到影响,若受到影响,则将读数通过补全计算进行校正,得到校正读数作为识别结果,若未受到影响,则直接获取读数作为识别结果;
优选地,还包括将识别结果进行安全判断,若识别结果超过阈值,则进行报警,若识别结果未超过阈值,则显示识别结果。
所述步骤4具体包括以下步骤:
步骤1:运用opencv自带的数字库进行学习,得到所有刻度的刻度数值,根据n个刻度数值M i 以及刻度数值的包围框中心O i ,其中i=1,2,…n,将刻度数值序列{M i }从小到大的顺序依次排列成新的序列{ A i },已知待测仪表的零刻度数值为S 0 ,满刻度为S 1 ,通过序列{A i }的特征判断指针位置和刻度数值的相对位置,有以下4种情况:
情况1:若S 0 、S 1 ∈A i 且A i 序列{ A i }为等差数列,则指针位置没有遮挡刻度数值;
情况2:S 0 、S 1 ∈A i 且序列{ A i }不为等差数列,则指针位置遮挡刻度中间数值;
情况3:若S 0 ∉A i ,则指针位置遮挡零刻度数值;
情况4:若S 1 ∉A i ,则指针位置遮挡满刻度数值;
然后,针对以上4种情况,通过已检测到刻度数值位置对应的线段的长度L i,j+1 以及相邻线段的夹角θ j,j+1,j+2 完成对漏检刻度数值的定位,i=1,2,...,n-1,j=1,2,...,n-2;
最后按刻度数值从小到大的顺序依次将对应的包围框中心点连线,分别记为线段O i,i+1 i=1,2,..n-1;将线段进行比较,取最长线段的中点,中点坐标即为需要补全的数字刻度坐标,数值为最长线段两端的刻度数值之和的一半,以此对仪表图像进行补全;
步骤2:对补全后的仪表图像进行二值化处理,提取仪表图像的所有刻度线轮廓,具体为:在刻度线轮廓的宽高比满足式w/h<v的条件下,取与步骤1中每个刻度数值包围框距离最近的刻度线轮廓,式中,w和h分别为刻度线轮廓边界矩形的宽与高,v是一个经验值,设为0.1;
步骤3:从提取到的n个刻度线轮廓的重心中任取3个点p i ,p j ,p k ,对应的像素坐标为(x i ,y i ),(x j ,y j ),(x k ,y k ), i,j,k=1,2,…n,依据这三个点的像素坐标,建立
,所示的三个方程,进而得到临时的表盘中心坐标(x 0 (m) , y 0 (m) ),以及临时的表盘半径r (m) ,m=1,2,… C n 3 ,C n 3 为从n个刻度线轮廓中心随机选择三个点,依据三个点确定圆心的排列组合数量;
步骤4:
遍历所有刻度线轮廓和线段O i,i+1 ,判断是否有刻度线轮廓与线段O i,i+1 相交,若存在刻度线轮廓与其中某个线段相交,则取该刻度线轮廓的中心线段,并且判断中心线段是否同时满足以下两个约束条件:
若满足两个约束条件,则所确定的中心线段所在直线为指针所在的直线,若不满足两个约束条件,那么即使刻度线轮廓与步骤中1的线段O i,i+1 相交,此刻度线轮廓也不是指针所在直线;
若存在某个刻度线轮廓与线段O i,i+1 不相交,那么将线段O i,i+1 向下平移,直到此刻度线轮廓与线段O i,i+1 相交且满足两个约束条件时,平移停止,并记录相交轮廓的中心线段,该中心线段即为指针所在的直线;
步骤5:通过步骤1-步骤4得到仪表刻度数值、仪表刻度线轮廓以及指针所在的直线后,通过距离法或角度法,得到仪表的读数;
所述距离法具体为:
对于情况1和情况2,利用式即求出待测仪表的读数,对于情况3的计算方式,将指针直线右侧最近的刻度线轮廓视为左刻度线轮廓,将指针直线右侧第二近的刻度线轮廓视为右刻度线轮廓,对于情况4将指针直线左侧最近的刻度线轮廓视为左刻度线轮廓,将指针直线左侧第二近的刻度线轮廓视为右刻度线轮廓,情况3和情况4相应的仪表示数计算方式为,其中,M与N为分别表示左刻度线轮廓对应的刻度数字和右刻度线轮廓对应的刻度数字,d a 与d b 分别表示左刻度线轮廓重心到指针直线和右刻度线轮廓重心的距离,λ是一个修正值,设为10;
所述角度法具体为:
对于情况1和情况2,利用即求出待测仪表的读数,对于情况3将指针直线右侧最近的刻度线轮廓所在的直线视为左刻度线直线,将指针直线右侧第二近的刻度线轮廓所在的直线视为右刻度线直线,对于情况4将指针直线左侧最近的刻度线轮廓所在的直线视为左刻度线直线,将指针直线左侧第二近的刻度线轮廓所在的直线视为右刻度线直线,情况3和情况4相应的仪表示数计算方式为,其中,M与N为分别表示左刻度线轮廓对应的刻度数字和右刻度线轮廓对应的刻度数字,α与β分别表示左刻度线直线与右刻度线直线和指针直线的夹角。
实施例2
本发明提供一种基于机器学习的仪表自动识别系统,如图2所示,包括依次连接的图片摄取单元1、模板匹配单元2、边缘指针提取单元3、刻度高精度识别单元4、安全监控单元5、显示单元6,所述图片摄取单元1上连接有相机角度调节单元9,所述刻度高精度识别单元4上连接有特殊补全单元7,所述安全监控单元5上连接有阈值报警单元8。
首先通过相机采集到需要识别的仪表图片,如果图片有倾斜或者歪曲,那么可以在仪表图片中心上设置水平和垂直两个分界线,如果可以平分上下左右圆,那么就是正确的拍摄位置否则会通过相机角度调节单元9进行自动调节,调节后将图片拍摄好传送到模板匹配单元2。在模板匹配单元2主要进行图像预处理,预处理中使用对比度增强方法来改善因为光照原因造成的图像不清晰的情况。然后预处理后的图像进行学习模板匹配,匹配的作用是将整个表盘从背景中提取出来。将提取的仪表图像传输到边缘指针提取单元3,此处主要是使用canny边缘检测算法和hough直线检测方法来分离轮廓、刻度和指针,将指针与刻度信息传送刻度高精度识别单元4,运用opencv自带的数字库进行学习,将所有刻度进行数列排列,如果为等差数列且存在零和最大量程,那么说明没有划痕污渍或者指针遮挡干扰表盘读数,或者说明可能有划污渍但是没有影响到刻度所以没有影响到读数。如果排列后不为等差数列,说明有划痕污渍影响到了刻度无法进行读数,所以将此数据传输到特殊补全单元7。在特殊补全单元7中,运用寻找离指针最近的两个左右刻度,将左右刻度设置为左右指针进行特殊角度法计算,将计算后的结果传输到安全监控单元5中。安全监控单元5为人为设置的仪表最高警报读数,如果超过警报读数,将数据传送到阈值报警单元8进行报警,如果是安全读数范围,将读数传送到显示单元6进行记录显示。
应用实施例
首先拍摄仪表图像原图,如图3(a),通过运用Yolov3神经网络算法将仪表的特征点与所测图片进行匹配,将仪表图从背景中提取出来,如图3(b),运用canny边缘检测算法,只保留仪表图的刻度,轮廓和指针信息,如图3(c),运用houghline检测算法,提取仪表刻度信息,如图3(d),通过自定义印刷体数字数据集,运用Yolov3神经网络进行识别,识别仪表图中的刻度数值,并进行定位刻度框的中心坐标,如图3(e),将所有刻度框和刻度线中心随机选择3个点确定圆心坐标位置,坐标位置最密集的点即为圆心坐标,如图3(f),通过检测长刻度线是否穿过两个刻度框中心所构成的线段,是否通过圆心,若是,则所在直线为指针直线,如图3(g),最后通过距离法或角度法获取读数,结果如表1和表2所示,距离法如图3(h)和图3(i),角度法如图3(j)和图3(k)。
表1距离法结果
表2 角度法结果
综上可以看出,本发明能够大大提供仪表刻度识别效率和精确性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用于说明本发明的技术方案而非对其保护范围的限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:本领域技术人员阅读本发明后依然可对发明的具体实施方式进行种种变更、修改或者等同替换,但这些变更、修改或者等同替换,均在发明待批的权利要求保护范围之内。
Claims (9)
1.基于机器学习的仪表自动识别方法,其特征在于,所述方法包括:
采集仪表图片;
对仪表图片进行预处理,从预处理后的仪表图片背景中提取仪表盘图像;
对仪表盘图像分离轮廓、刻度和指针;
依据刻度的信息判断读数是否受到影响,若受到影响,则将读数通过补全计算进行校正,得到校正读数作为识别结果,若未受到影响,则直接获取读数作为识别结果,具体包括:
步骤1:运用opencv自带的数字库进行学习,得到所有刻度的刻度数值;根据n个刻度数值M i 以及刻度数值的包围框中心O i ,其中i=1,2,…n,将刻度数值序列{M i }按照从小到大的顺序依次排列成新的序列{ A i },已知待测仪表的零刻度数值为S 0 ,满刻度为S 1 ,通过序列{A i }的特征判断指针位置和刻度数值的相对位置,有以下4种情况:
情况1:若S 0 、S 1 ∈A i 且序列{ A i }为等差数列,则指针位置没有遮挡刻度数值;
情况2:S 0 、S 1 ∈A i 且序列{ A i }不为等差数列,则指针位置遮挡刻度中间数值;
情况3:若S 0 ∉A i ,则指针位置遮挡零刻度数值;
情况4:若S 1 ∉A i ,则指针位置遮挡满刻度数值;
然后,针对以上4种情况,通过已检测到刻度数值位置对应的线段的长度L i,j+1 以及相邻线段的夹角θ j,j+1,j+2 完成对漏检刻度数值的定位,i=1,2,...,n-1,j=1,2,...,n-2;
最后按刻度数值从小到大的顺序依次将对应的包围框中心点连线,分别记为线段O i,i+ 1 i=1,2,…n-1;将线段进行比较,取最长线段的中点,中点坐标即为需要补全的数字刻度坐标,数值为最长线段两端的刻度数值之和的一半,以此对仪表图像进行补全;
步骤2:对补全后的仪表图像进行二值化处理,提取仪表图像的所有刻度线轮廓,具体为:在刻度线轮廓的宽高比满足式w/h<v的条件下,取与步骤1中每个刻度数值包围框距离最近的刻度线轮廓,式中,w和h分别为刻度线轮廓边界矩形的宽与高,v是一个经验值;
步骤3:从提取到的n个刻度线轮廓的重心中任取3个点p i ,p j ,p k ,对应的像素坐标为(x i ,y i ),(x j ,y j ),(x k ,y k ), i,j,k=1,2,…n,依据这三个点的像素坐标,建立
,,所示的三个方程,进而 得到临时的表盘中心坐标(x 0 (m) , y 0 (m) ),以及临时的表盘半径r (m) ,m=1,2,…C n 3 ,C n 3 为从n个刻度线轮廓中心随机选择三个点,依据三个点确定圆心的排列组合数量;
步骤4:遍历所有刻度线轮廓和线段O i,i+1 ,判断是否有刻度线轮廓与线段O i,i+1 相交,若存在刻度线轮廓与其中某个线段相交,则取该刻度线轮廓的中心线段,并且判断中心线段是否同时满足以下两个约束条件:
若满足两个约束条件,则所确定的中心线段所在直线为指针所在的直线,若不满足两个约束条件,那么即使刻度线轮廓与步骤中1的线段O i,i+1 相交,此刻度线轮廓也不是指针所在直线;
若存在某个刻度线轮廓与线段O i,i+1 不相交,那么将线段O i,i+1 向下平移,直到此刻度线轮廓与线段O i,i+1 相交且满足两个约束条件时,平移停止,并记录相交轮廓的中心线段,该中心线段即为指针所在的直线;
步骤5:通过步骤1-步骤4得到仪表刻度数值、仪表刻度线轮廓以及指针所在的直线后,通过距离法或角度法,得到仪表的读数。
2.根据权利要求1所述的基于机器学习的仪表自动识别方法,其特征在于,所述采集仪表图片具体为:通过相机采集需要识别的仪表图片,并判断仪表图片是否倾斜或歪曲,若是,则对相机角度进行自动调节,直至得到符合要求的仪表图片。
3.根据权利要求1所述的基于机器学习的仪表自动识别方法,其特征在于,所述对仪表图片进行预处理具体为:对仪表图片基于Gamma矫正和直方图均衡化方法进行对比度增强,得到增强图片;
所述从预处理后的仪表图片背景中提取仪表盘图像具体为:对预处理后的仪表图片基于YOLOv5神经网络的特征点进行学习模板匹配,从预处理后的仪表图片背景中提取仪表盘图像。
4.根据权利要求1所述的基于机器学习的仪表自动识别方法,其特征在于,所述对仪表盘图像分离轮廓、刻度和指针具体为:对仪表盘图像使用canny边缘检测算法和hough直线检测方法分离轮廓、刻度和指针。
5.根据权利要求1所述的基于机器学习的仪表自动识别方法,其特征在于,所述距离法具体为:
对于情况1和情况2,利用式即求出待测仪表的读数,对于情况3的计算方式,将指针直线右侧最近的刻度线轮廓视为左刻度线轮廓,将指针直线右侧第二近的刻度线轮廓视为右刻度线轮廓,对于情况4将指针直线左侧最近的刻度线轮廓视为左刻度线轮廓,将指针直线左侧第二近的刻度线轮廓视为右刻度线轮廓,情况3和情况4相应的仪表示数计算方式为,其中,M与N为分别表示左刻度线轮廓对应的刻度数字和右刻度线轮廓对应的刻度数字,d a 与d b 分别表示左刻度线轮廓重心到指针直线和右刻度线轮廓重心的距离,λ是一个修正值;
所述角度法具体为:
6.根据权利要求1所述的基于机器学习的仪表自动识别方法,其特征在于,还包括将识别结果进行安全判断,若识别结果超过阈值,则进行报警,若识别结果未超过阈值,则显示识别结果。
7.基于机器学习的仪表自动识别系统,其特征在于,包括依次连接的图片摄取单元、模板匹配单元、边缘指针提取单元和刻度高精度识别单元,所述刻度高精度识别单元上连接有特殊补全单元;其中:
图片摄取单元:用于采集仪表图片;
模板匹配单元:用于对仪表图片进行预处理,从预处理后的仪表图片背景中提取仪表盘图像;
边缘指针提取单元:对仪表盘图像分离轮廓、刻度和指针;
刻度高精度识别单元:依据刻度信息判断读数是否受到影响,若受到影响,则将读数通过特殊补全单元进行校正,得到校正读数作为识别结果,若未受到影响,则直接获取读数作为识别结果。
8.根据权利要求7所述的基于机器学习的仪表自动识别系统,其特征在于,所述图片摄取单元上连接有相机角度调节单元,用于对采集仪表图片的相机角度进行自动调节,以获得符合要求的仪表图片。
9.根据权利要求7所述的基于机器学习的仪表自动识别系统,其特征在于,还包括依次连接在刻度高精度识别单元输出端的安全监控单元和显示单元,所述安全监控单元上连接有阈值报警单元;其中:
所述安全监控单元用于将识别结果进行安全判断,若识别结果超过阈值,则通过阈值报警单元进行报警,若识别结果未超过阈值,则通过显示单元显示识别结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210569588.7A CN114663744A (zh) | 2022-05-24 | 2022-05-24 | 基于机器学习的仪表自动识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210569588.7A CN114663744A (zh) | 2022-05-24 | 2022-05-24 | 基于机器学习的仪表自动识别方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114663744A true CN114663744A (zh) | 2022-06-24 |
Family
ID=82036436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210569588.7A Pending CN114663744A (zh) | 2022-05-24 | 2022-05-24 | 基于机器学习的仪表自动识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114663744A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115019028A (zh) * | 2022-08-02 | 2022-09-06 | 北京中拓新源科技有限公司 | 一种多形态指针表读数智能识别方法及装置 |
CN115655576A (zh) * | 2022-12-13 | 2023-01-31 | 成都千嘉科技股份有限公司 | 一种指针式压力表位移异常的自动感知方法 |
CN115690771A (zh) * | 2022-12-29 | 2023-02-03 | 常州海图信息科技股份有限公司 | 电力房仪表巡检方法和系统 |
CN116828342A (zh) * | 2022-11-30 | 2023-09-29 | 慧之安信息技术股份有限公司 | 基于视觉的仪表示数识别系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108399416A (zh) * | 2018-01-19 | 2018-08-14 | 武汉科技大学 | 一种有圆弧边界的变电站指针式仪表自动识别方法 |
CN108460327A (zh) * | 2018-01-12 | 2018-08-28 | 河南大学 | 一种基于图像处理的指针式仪表读数自动识别方法 |
CN112949564A (zh) * | 2021-02-02 | 2021-06-11 | 电子科技大学 | 一种基于深度学习的指针式仪表自动读数方法 |
CN113627427A (zh) * | 2021-08-04 | 2021-11-09 | 中国兵器装备集团自动化研究所有限公司 | 一种基于图像检测技术的仪器仪表读数方法及系统 |
-
2022
- 2022-05-24 CN CN202210569588.7A patent/CN114663744A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460327A (zh) * | 2018-01-12 | 2018-08-28 | 河南大学 | 一种基于图像处理的指针式仪表读数自动识别方法 |
CN108399416A (zh) * | 2018-01-19 | 2018-08-14 | 武汉科技大学 | 一种有圆弧边界的变电站指针式仪表自动识别方法 |
CN112949564A (zh) * | 2021-02-02 | 2021-06-11 | 电子科技大学 | 一种基于深度学习的指针式仪表自动读数方法 |
CN113627427A (zh) * | 2021-08-04 | 2021-11-09 | 中国兵器装备集团自动化研究所有限公司 | 一种基于图像检测技术的仪器仪表读数方法及系统 |
Non-Patent Citations (2)
Title |
---|
徐发兵: "刻度均匀的圆形指针式仪表检测与识别方法研究", 《中国优秀博硕士学位论文全文数据库(硕士) 工程科技II辑》 * |
王周星: "指针式仪表读数自动识别系统研究", 《中国优秀博硕士学位论文全文数据库(硕士)》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115019028A (zh) * | 2022-08-02 | 2022-09-06 | 北京中拓新源科技有限公司 | 一种多形态指针表读数智能识别方法及装置 |
CN116828342A (zh) * | 2022-11-30 | 2023-09-29 | 慧之安信息技术股份有限公司 | 基于视觉的仪表示数识别系统 |
CN115655576A (zh) * | 2022-12-13 | 2023-01-31 | 成都千嘉科技股份有限公司 | 一种指针式压力表位移异常的自动感知方法 |
CN115690771A (zh) * | 2022-12-29 | 2023-02-03 | 常州海图信息科技股份有限公司 | 电力房仪表巡检方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114663744A (zh) | 基于机器学习的仪表自动识别方法及系统 | |
CN110659636B (zh) | 基于深度学习的指针式仪表读数识别方法 | |
CN107220645B (zh) | 基于动态图像处理的水表识别方法 | |
CN103994786B (zh) | 圆弧标尺线指针式仪表刻度的图像检测方法 | |
CN113570605B (zh) | 一种基于液晶显示面板的缺陷检测方法和系统 | |
CN111414934A (zh) | 一种基于Faster R-CNN和U-Net的指针式仪表读数自动识别方法 | |
CN111368906B (zh) | 一种基于深度学习的指针式油位计读数识别方法 | |
CN107239742B (zh) | 一种仪表指针刻度值计算方法 | |
CN103759758A (zh) | 一种基于机械角度和刻度识别的汽车仪表指针的位置检测方法 | |
CN109284718B (zh) | 面向巡检机器人的变视角多仪表同时识别方法 | |
CN103207987A (zh) | 一种指针式仪表的示数识别方法 | |
CN110992349A (zh) | 一种基于深度学习的地下管道异常自动化定位与识别方法 | |
CN114549835B (zh) | 一种基于深度学习的指针式仪表矫正识别方法及装置 | |
CN113643276B (zh) | 一种基于统计分析的纺织物纹理缺陷自动检测方法 | |
CN113608378B (zh) | 一种基于lcd制程的全自动缺陷检测方法和系统 | |
CN108955901B (zh) | 一种红外测温方法、系统及终端设备 | |
CN111507186B (zh) | 一种变电站指针式仪表读数识别方法 | |
CN115546795A (zh) | 一种基于深度学习的圆形指针式仪表自动读数方法 | |
CN115656182A (zh) | 基于张量投票主成分分析的板材点云缺陷检测方法 | |
CN113435442B (zh) | 水位测量方法、装置、水尺及电子设备 | |
CN113065556A (zh) | 一种数字式仪表定位和数字识别方法、装置和计算机设备 | |
CN112232209A (zh) | 用于变电站巡检机器人的指针式仪表盘读数的识别方法 | |
CN115452845B (zh) | 一种基于机器视觉的led屏幕表面损伤检测方法 | |
CN114255458A (zh) | 一种巡检场景下指针仪表读数的识别方法与系统 | |
CN115115889A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220624 |
|
RJ01 | Rejection of invention patent application after publication |