CN115661446A - 基于深度学习的指针式仪表示数自动读取系统及方法 - Google Patents
基于深度学习的指针式仪表示数自动读取系统及方法 Download PDFInfo
- Publication number
- CN115661446A CN115661446A CN202211418881.XA CN202211418881A CN115661446A CN 115661446 A CN115661446 A CN 115661446A CN 202211418881 A CN202211418881 A CN 202211418881A CN 115661446 A CN115661446 A CN 115661446A
- Authority
- CN
- China
- Prior art keywords
- instrument
- picture
- area
- pointer
- scale
- 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
-
- 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
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Image Analysis (AREA)
Abstract
本发明公开一种基于深度学习的指针式仪表示数自动读取系统,包括:仪表图片模型训练单元、区域检测模型训练单元、仪表图片目标检测单元、区域检测单元和仪表示数读取单元;本申请是真正基于变电站场景中的实际应用需求提出的解决方案,具有更好的场景适应能力;对于仪表表盘信息的处理使用的方法针对感兴趣区域展开,该方法的检测速度快,系统方法具有高效的检测效率,更能满足实时检测的需求。
Description
技术领域
本发明涉及一种基于深度学习的指针式仪表示数自动读取系统及方法,属于变电站控制领域。
背景技术
变电站是我国家供电系统中的重要线路连接点,是实现电网改变电压、转换功率和收集、分配电能的关键设备,是国家电网中的重要一环。变电站进行电压等级变换和汇聚电能的工作决定了变电站中具有大量的仪器仪表来对电力系统进行实时检测,目前在变电站中大量应用的仪表大致上可分为数字型显示仪表和指针式显示仪表两大类。与数字式仪表相比,指针式仪表没有通信接口,所有的数据读取和记录只能通过人工巡检来完成。变电站人工巡检的过程会消耗大量的人力物力且工作量大、效率低,而且更突出的问题在于人工读取数据不可避免地会加入人为主观因素,易出现观测值与真值具有较大偏差的现象,进而对变电站的高效运转产生相应的影响。因此一套高效的变电站指针式显示仪表的自动化检测系统来实现对电气设备数据的实时检测,对于提高变电站工作效率、保证变电站高效、正常稳定运行具有极其重要的意义。
现在主要的检测方法可以分为基于数字图像处理的方法和基于深度学习的方法。基于数字图像处理的方法首先对图像进行预处理获得图片中所有要素的轮廓信息,然后通过轮廓拟合和要素检测来实现仪表目标的定位。由此可见,背景因素的复杂程度直接关系到了该方法对仪表目标的检测准确度。而且,室外环境还会有环境光线、拍摄角度、障碍物遮挡等一系列复杂的不可控因素的影响。由此可见,基于数字图像处理的方法具有很大的应用局限性。目前大多数仪表识别问题都是对仪表图像的特征点进行研究来进行仪表识别,而对于图片中特征点和特征线的检索过程的时间成本是较大的。
现有技术CN108399416公开一种有圆弧边界的变电站指针式仪表自动识别方法,没没有涉及给出仪表目标位置确定的具体方法,实际巡检中不能获得类似于该专利中使用的图片,系统的检测准确度可能会受到较大的影响。另外,现有技术CN108399416对于仪表表盘信息的处理是采用特征点和特征线展开,而对于图片中特征点和特征线的检索过程的时间成本是较大的。
发明内容
本发明的目的是针对现有技术问题,公开一种基于深度学习的指针式仪表示数自动读取系统,公开了基于YOLO v5s的仪表目标检测的方法,是真正基于变电站场景中的实际应用需求提出的解决方案,具有更好的场景适应能力;对于仪表表盘信息的处理使用的方法针对感兴趣区域展开,该方法的检测速度快,系统方法具有高效的检测效率,更能满足实时检测的需求。
本发明技术方案如下:
一种基于深度学习的指针式仪表示数自动读取系统,包括:仪表图片模型训练单元、区域检测模型训练单元、仪表图片目标检测单元、区域检测单元和仪表示数读取单元;
仪表图片模型训练单元通过历史变电站场景图片训练YOLO v5s深度学习模型,训练后的YOLO v5s深度学习模型为仪表图片目标检测网络;
区域检测模型训练单元将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片,将历史仪表图片输入到改进的PSPNet语义分割模型进行模型训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;
仪表图片目标检测单元将变电站场景图片输入到仪表图片目标检测网络,获得目标仪表图片;
区域检测单元将目标仪表图片输入到训练后的PSPNet语义分割模型,获取感兴趣区域,感兴趣区域包括刻度区域与指针区域;
仪表示数读取单元根据刻度区域与指针区域的相对位置关系得到仪表示数。
仪表图片模型训练单元工作过程具体包括以下步骤:
将变电站巡检的相机拍摄的具有仪表正面角度的历史图像作为历史变电站场景图片,对历史变电站场景图片进行标记,在历史变电站场景图片中框选出仪表图像中仪表所在位置,获得历史变电站场景图片具有仪表具体位置数据的.xml文件,使用文件格式转换程序将.xml文件转换成为.txt文件,将历史变电站场景图片和对应的.txt文件输入到YOLO v5s深度学习模型中进行深度学习训练,训练后的YOLO v5s深度学习模型为目标监测网络。
改进的PSPNet图像语义分割模型使用MobileNetV2深层神经网络,将卷积过程分解为Depthwise卷积和Pointwise卷积。
区域检测模型训练单元工作过程具体包括以下步骤:
将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片;
对历史仪表图片进行标注,将历史仪表图片中的感兴趣区域划分为仪表刻度区域和指针区域,生成消除了背景信息只包括刻度区域和指针区域的.json文件,将.json文件转换为对应的.png文件;将历史变电站场景图片与对应的.png文件输入到改进的PSPNet语义分割模型中进行训练,获得训练后的PSPNet语义分割模型。
区域检测单元工作过程具体包括以下步骤:
对目标仪表图片进行统一尺寸处理,获得标准仪表图片,将标准仪表图片输入到训练后的PSPNet语义分割模型,MobileNetV2深层神经网络对标准仪表图片进行卷积获得仪表图片的特征信息;将所述特征信息经过空间金字塔池化模块进行特征提取和特征融合,输出深层特征,深层特征经过全连接层和输出层进行语义分割完成对特征信息的分类,将特征信息分类为刻度区域特征信息和指针区域特征信息,实现目标仪表图片中的刻度区域和指针区域分割;
区域检测单元基于训练后PSPNet模型的进行语义分割后,输出图片中包括圆弧刻度区域、直线状指针区域和背景区域。
仪表示数读取单元工作过程具体包括以下步骤:
确定圆弧刻度区域所在圆的圆心和最大转换半径Rmax,使用极坐标转换法来将圆弧刻度区域的扇形区域转换成矩形特征区域,将角度关系转换成长度比例关系,获得极坐标转换后图片,得到长度比例关系后根据仪表量程,量化刻度区域与指针区域位置关系,得到仪表的示数。
常规的求解仪表示数的方法是求解在仪表扇形区域中的指针所在直线和刻度所在直线的角度关系;
圆弧刻度区域所在圆的圆心(x0,y0)位置确定具体包括以下步骤:
当圆弧刻度区域的角度大于180°,使用圆形拟合的方法获得圆心;
圆形拟合的方法具体包括以下步骤:将圆弧刻度区域进行灰度化和二值化图像处理,得到圆弧刻度区域的二值化图片后,使用cv2.findContours函数进行轮廓查询并将轮廓数据进行排序,将最大的轮廓数据运用cv2.minEnclosingCircle函数进行圆形拟合,获得拟合圆的圆心,即为所求极点。
当圆弧刻度区域的角度小于或者等于180°,圆弧刻度区域使用三线法获得圆心位置;
三线法获得圆心位置具体包括以下步骤:
设定三条线,第一条线为最小值刻度位置像素点与最大值刻度位置像素点的连线l1,第二条线为第一条直线的中垂线l2,第三条线为指针区域所在直线l3;通过遍历区输出图片检测单元中的像素并依据特殊点(特殊点指最小值刻度位置像素点、最大值刻度位置像素点)的位置特征来获取特征点位置(x1,y1)、(x2,y2),在得到目标像素点位置后,确定直线l1和l2的直线斜率和直线l2所在的方程;根据特征点(x1,y1)、(x2,y2)得到中点(x3,y3);
y=k2x-k2x3+y3 (4)
k1、k2指的是直线l1和l2的斜率,(x1,y1)、(x2,y2)表示系统根据位置特点确定的指代最小刻度点的像素位置和指代最大刻度点的像素位置;(x3,y3)是指(x1,y1)、(x2,y2)连线的中点;
公式(4)是直线l2的直线方程,x和y是直线l2像素点的横坐标和纵坐标。
对直线状指针区域使用最小二乘法拟合获取对应直线方程;
最小二乘法拟合过程具体包括以下步骤:
在直线状指针区域选择多个特征点来拟合指针所在直线(一条尽可能接近所有数据点的直线);
在得到中垂线l2与指针所在直线l3的方程后,联立公式(4)、(5)进行计算得到圆心位置。
联立公式(4),(5),求解这个两元一次方程组即可得到中垂线l2与指针所在直线l3的交点的具体位置,该交点即为圆心;
最大转换半径Rmax确定具体包括以下步骤:
因为要保证以圆心为中心的360°范围内所有圆弧像素都从直角坐标系转换到极坐标系,因此,系统选择圆心位置的横坐标和纵坐标中的极大值作为系统函数的最大转换半径Rmax,即Rmax=max(x0,y0)。
极坐标转换法具体包括以下步骤:
将圆弧刻度区域所在圆的圆心(x0,y0)作为极坐标系的极点,极坐标转换公式为:
将直角坐标系下的像素点(x,y)的位置转换到极坐标系下点(ρ,θ)的位置,实现将直角坐标系转换为极坐标系;
角度关系转变为长度比例关系,具体示数计算公式为:
其中,I表示被检测仪表的示数;Pp表示极坐标转换后图片的直线状指针区域中能够代表指针位置的一列像素所在的列值;Ps_mim表示极坐标转换后图片的圆弧刻度区域中最左侧代表最小刻度的像素所在的列值;Ps_max表示极坐标转换后图片的圆弧刻度区域中最右侧代表最大刻度的像素所在的列值;R表示仪表的量程;Imin表示仪表的最小刻度值;
Pp确定的方法:通过检索极坐标转换后图片中直线状指针区域每一列中的像素个数,像素个数最多的一列为Pp
Ps_min确定的方法:通过检索极坐标转换后图片中圆弧刻度区域中列值最小的像素所在列值,即为Ps_min;
Ps_max确定的方法:通过检索图极坐标转换后圆弧刻度区域中列值最大的像素所在列值,即为Ps_max。
一种基于深度学习的指针式仪表示数自动读取方法,包括以下步骤:
步骤S1,通过历史变电站场景图片训练YOLO v5s深度学习模型,训练后的YOLOv5s深度学习模型为仪表图片目标检测网络;将变电站场景图片输入到仪表图片目标检测网络,获得目标仪表图片;
步骤S2,将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片,将历史仪表图片输入到改进的PSPNet语义分割模型进行模型训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;将目标仪表图片输入到训练后的PSPNet语义分割模型,获取感兴趣区域,感兴趣区域包括刻度区域与指针区域;
步骤S3,根据刻度区域与指针区域的相对位置关系得到仪表示数。
通过历史变电站场景图片训练YOLO v5s深度学习模型具体包括以下步骤:
将变电站巡检的相机正常工作拍摄的具有仪表正面角度的历史图像作为历史变电站场景图片,对历史变电站场景图片进行标记,在历史变电站场景图片中框选出仪表图像中仪表所在位置,获得历史变电站场景图片具有仪表具体位置数据的.xml文件,使用文件格式转换程序将.xml文件转换成为.txt文件,将历史变电站场景图片和对应的.txt文件输入到YOLO v5s深度学习模型中进行深度学习训练,训练后的YOLO v5s深度学习模型为目标监测网络;
改进的PSPNet图像语义分割模型使用MobileNetV2深层神经网络,将卷积过程分解为Depthwise卷积和Pointwise卷积。
步骤S2具体包括以下步骤:
将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片;
对历史仪表图片使用可视化图像标定工具进行标注,将历史仪表图片中的感兴趣区域划分为仪表刻度区域和指针区域,生成消除了背景信息只包括刻度区域和指针区域的.json文件,将.json文件转换为对应的.png文件;将历史变电站场景图片与对应的.png文件输入到改进的PSPNet语义分割模型中进行训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;
区域检测单元工作过程具体包括以下步骤:
对目标仪表图片进行统一尺寸处理,获得标准仪表图片,将标准仪表图片输入到训练后的PSPNet语义分割模型,MobileNetV2深层神经网络对标准仪表图片进行卷积获得仪表图片的特征信息;将所述特征信息经过池化进行特征提取和特征融合,输出深层特征,深层特征经过全连接层和输出层进行语义分割完成对特征信息的分类,将特征信息分类为刻度区域特征信息和指针区域特征信息,实现目标仪表图片中的刻度区域和指针区域分割,经过改进的PSPNet语义分割模型的空间金字塔池化层对刻度区域特征信息和指针区域特征信息进行特征联系,获得刻度区域和指针区域在原始图像中的位置;
区域检测单元基于训练后PSPNet模型的进行语义分割后,输出图片中包括圆弧刻度区域、直线状指针区域和背景区域。
步骤S3具体包括以下步骤:
确定圆弧刻度区域所在圆的圆心和最大转换半径Rmax,使用极坐标转换法来将圆弧刻度区域的扇形区域转换成矩形特征区域,将角度关系转换成长度比例关系,获得极坐标转换后图片,得到长度比例关系后根据仪表量程,量化刻度区域与指针区域位置关系,得到仪表的示数。
圆弧刻度区域所在圆的圆心(x0,y0)位置确定具体包括以下步骤:
当圆弧刻度区域的角度大于180°,使用圆形拟合的方法获得圆心;
圆形拟合的方法具体包括以下步骤:将圆弧刻度区域进行灰度化和二值化图像处理,得到圆弧刻度区域的二值化图片后,使用cv2.findContours函数进行轮廓查询并将轮廓数据进行排序,将最大的轮廓数据运用cv2.minEnclosingCircle函数进行圆形拟合,获得拟合圆的圆心,即为所求极点。
当圆弧刻度区域的角度小于或者等于180°,圆弧刻度区域使用三线法获得圆心位置;
三线法获得圆心位置具体包括以下步骤:
设定三条线,第一条线为最小值刻度位置像素点与最大值刻度位置像素点的连线l1,第二条线为第一条直线的中垂线l2,第三条线为指针区域所在直线l3;通过遍历输出图片检测单元中的像素并依据特殊点(特殊点指最小值刻度位置像素点、最大值刻度位置像素点)的位置特征来获取特征点位置(x1,y1)、(x2,y2),在得到目标像素点位置后,确定直线l1和l2的直线斜率和直线l2所在的方程;根据特征点(x1,y1)、(x2,y2)得到中点(x3,y3);
y=k2x-k2x3+y3 (4)
k1、k2指的是直线l1和l2的斜率,(x1,y1)、(x2,y2)表示系统根据位置特点确定的指代最小刻度点的像素位置和指代最大刻度点的像素位置;(x3,y3)是指(x1,y1)、(x2,y2)连线的中点;
对直线状指针区域使用最小二乘法拟合获取对应直线方程;
最小二乘法拟合过程具体包括以下步骤:
在直线状指针区域选择多个特征点来拟合指针所在直线(一条尽可能接近所有数据点的直线);
在得到中垂线l2与指针所在直线l3的方程后,联立公式(4)和(5)进行计算得到圆心位置(x0,y0)。
最大转换半径Rmax确定具体包括以下步骤:
因为要保证以圆心为中心的360°范围内所有圆弧像素都从直角坐标系转换到极坐标系,因此,系统选择圆心位置的横坐标和纵坐标中的极大值作为系统函数的最大转换半径Rmax,即Rmax=max(x0,y0)。
极坐标转换法具体包括以下步骤:
将圆弧刻度区域所在圆的圆心(x0,y0)作为极坐标系的极点,极坐标转换公式为:
将直角坐标系下的像素点(x,y)的位置转换到极坐标系下点(ρ,θ)的位置,实现将直角坐标系转换为极坐标系;
角度关系转变为长度比例关系;具体示数计算公式为:
其中,I表示被检测仪表的示数;Pp表示极坐标转换后图片的圆弧刻度区域中中能够代表指针位置的一列像素所在的列值;Ps_min表示极坐标转换后图片的圆弧刻度区域中最左侧代表最小刻度的像素所在的列值;Ps_max表示极坐标转换后图片的圆弧刻度区域中最右侧代表最大刻度的像素所在的列值;R表示仪表的量程;Imin表示仪表的最小刻度值;
Pp确定的方法:通过检索极坐标转换后图片中直线状指针区域每一列中的像素个数,像素个数最多的一列为Pp;
Ps_min确定的方法:通过检索极坐标转换后圆弧刻度区域中列值最小的像素所在列值,即为Ps_min;
Ps_max确定的方法:通过检索图极坐标转换后圆弧刻度区域中列值最大的像素所在列值,即为Ps_max。
相对于现有技术,本发明具有如下有益效果:
本申请提出了一种基于充放循环特征的储能容量优化配置方法,
采用深度学习模型来实现对仪表目标的精准检测,通过合适的卷积神经网络实现仪表目标的定位,得到仪表表盘的图像,使用基于图像处理或者深度学习的方法来对仪表表盘进行处理,在得到指针与刻度的相对位置后便可以根据位置关系得到仪表的示数;
本申请基于深度学习的检测方法依靠计算机视觉技术,采用机器学习的方法来实现仪表目标的检测。系统通过对深度学习模型进行大规模数据的训练,通过不断的学习和更新系统数据获得对特定目标深层特征的检测能力;相较于图像处理的方法,本申请从仪表目标深层特征出发,具有更强的适应能力;本申请图片处理速度快,系统中基于深度学习方法的仪表图片目标检测单元、区域检测单元的检测速度均可以达到50ms/img,应用于变电站实时检测任务,能够轻松应对复杂多变的检测环境,具有更快的检测精度和检测速度,符合系统设计和实际应用需求。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
下面结合附图和实施例对本发明作进一步说明。
图1为本申请一种基于深度学习的指针式仪表示数自动读取系统的整体工作框图;
图2本实施例历史变电站场景图片示意图;
图3本实施例历史变电站场景图片框图示意图;
图4本申请YOLO v5s深度学习模型多层卷积网络部分和特征融合增强部分示意图;
图5本申请YOLO v5s深度学习模型中BottleneckCSP单元示意图;
图6本申请YOLO v5s深度学习模型中FPN单元和PAN单元示意图;
图7本实施例系统目标检测结果示意图;
图8为针对仪表表盘刻度区域和指针区域语义分割操作后的结果图片;
图9为极坐标转换操作的结果图片。
具体实施方式
下面将结合本发明中的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动条件下所获得的所有其它实施例,都属于本发明保护的范围。
如图1所示,一种基于深度学习的指针式仪表示数自动读取系统,实现在无人为干预的情况下,快速且准确的完成在变电站中指针式仪表的检测,包括:
仪表图片模型训练单元、区域检测模型训练单元、仪表图片目标检测单元、区域检测单元和仪表示数读取单元;
仪表图片模型训练单元通过历史变电站场景图片训练YOLO v5s深度学习模型,训练后的YOLO v5s深度学习模型为仪表图片目标检测网络;
区域检测模型训练单元将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片,将历史仪表图片输入到改进的PSPNet语义分割模型进行模型训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;
仪表图片目标检测单元将变电站场景图片输入到仪表图片目标检测网络,获得目标仪表图片;
区域检测单元将目标仪表图片输入到训练后的PSPNet语义分割模型,获取感兴趣区域,感兴趣区域包括刻度区域与指针区域;
仪表示数读取单元根据刻度区域与指针区域的相对位置关系得到仪表示数。
获取变电站场景图片,对变电站场景图片特征进行分析,如果要实现对仪表的检测,首先针对变电站场景图片进行处理将背景要素去除进而只保留仪表对象图片。因此系统首先需要进行针对仪表目标的目标检测操作:
仪表图片模型训练单元建立针对仪表目标的定位与分割部分,仪表图片目标检测单元来实现对于变电站中场景图片中的仪表位置的确定。
对仪表图片模型训练单元模型训练过程是指系统使用足够多数量的历史变电站场景图片进行目标检测能力的学习,随后进行的目标检测过程为系统进行仪表目标检测的部分。
仪表图片模型训练单元工作过程具体包括以下步骤:
将变电站巡检的相机正常工作拍摄的具有仪表正面角度的历史图像作为历史变电站场景图片(历史变电站场景图片例图如图2所示),对历史变电站场景图片进行人工标记,在历史变电站场景图片中人工框选出仪表图像中仪表所在位置。人工标记工作的如图3所示,获得历史变电站场景图片中具有仪表具体位置数据的.xml文件,使用文件格式转换程序将.xml文件转换成为.txt文件,用于YOLO v5s深度学习模型训练;将历史变电站场景图片和对应的.txt文件放入到YOLO v5s深度学习模型中进行深度学习训练,训练后的YOLOv5s深度学习模型为目标监测网络。
模型训练过程是模型基于图片实例的参数调整过程,以使得模型以最优的状态来进行后续目标检测过程;
模型训练的目标是通过样本数据找到统计规律的最近似表达;在训练过程中通过不断迭代来对模型进行优化,进而使模型具有针对具体工程应用的最优检测效果。
YOLO v5s深度学习模型的工作机制是通过模型算法不断学习并更新系统参数来获得自主检测对应目标的能力。
仪表图片目标检测单元工作过程具体包括以下步骤:
基于仪表图片模型训练单元模型训练阶段自主学习形成的目标检测网络,对变电站用于巡检的相机拍摄获得的变电站场景图片进行仪表位置获取,获取目标仪表图片,即实现仪表目标位置识别。
提取特征信息,进行特征信息融合和增强:基于目标检测网络的特征提取是通过对变电站场景图片进行多层卷积来获得图像中的特征信息(特征图),将不同卷积层的特征信息通过上采样(FPN)和下采样(PAN)进行特征信息融合进而提高模型的特征检测能力。具体过程如图4所示。
传统卷积操作存在卷积层数的加深导致图像中小目标的特征越来越小甚至消失,为了保证模型的检测准确度,目标检测网络(YOLO v5s深度学习模型)中增加BottleneckCSP单元来提高模型的特征提取能力,BottleneckCSP单元如图5所示。BottleneckCSP单元的结构在CSP结构的基础上增加了残差网络(具体残差结构如图5),与原始CSP结构不同的是在变电站场景图片(图5中的Input)输入后并没有按照通道划分成两个部分,而是直接将变电站场景图片(图5中的Input)进行复制后送入第一支路和第二支路两条支路(图5中的两条支路),进一步提高特征的重用性,其中第一支路通过卷积实现通道数缩减,第二支路在改变通道数后进行N次Bottlenneck操作,第一支路通过卷积进行卷积操作来改变输出的通道数,拼接第一支路和第二支路的输出进行第二次卷积操作,第二次卷积实现特征信息融合,让模型学习到更多的特征,有效增强了网络的学习能力,提升了检测的准确率。本申请通过对多层卷积网络获取的不同尺度的特征进行信息融合来增强模型特征检测的能力。
特征增强:YOLO v5s深度学习模型中FPN单元和PAN单元实现对于特征信息增强。如图6所示。FPN通过每一层卷积的特征信息构建特征金字塔(如图6中1/32、1/16、1/8三层特征图构成的特征金字塔),然后从小尺度特征图开始向下通过上采样的操作,将不同尺度的特征图进行特征融合获取到模型需要检测的特征信息。这个过程极大的提高了模型目标检测的能力。但是小尺度特征图上采样获取目标特征的方法并不能准确获得大中型目标的位置信息,因此,本申请YOLO v5s模型增加PAN结构来实现对于原始FPN结构的补充。与FPN结构相反,PAN结构是从大尺度特征图下采样,将浅层网络大中型目标位置信息叠加到深层网络中,即使在深层网络特征图中仍然可以获得准确的目标位置信息。FPN+PAN结构的设计可以保证模型对于各种尺寸目标的兼顾,提高了模型对目标的检测能力。
在模型完成对仪表目标的特征提取和特征增强后,基于变电站场景图片中的特征信息,使用矩形框选出图像中的目标,实现目标检测。系统目标检测结果示意图如图7所示。根据针对仪表目标生成的矩形框的位置进行截取操作,获得仪表图片。
进行训练工作和实际进行目标检测工作的模型都是YOLO v5s模型。进行训练工作的目的是让YOLO v5s模型通过训练学习进而获得检测特定目标(此项目中为仪表图片)的能力。目标检测工作是基于训练后的YOLO v5s模型(此时,YOLO v5s模型是经过训练后具有检测特定目标能力的),因此在检测时输入的图片也是要完整经过训练后YOLO v5s模型的检测。
模型进行目标检测的输出结果是,能够在对应输入图像中自动生成矩形框实现对仪表目标的框选。
将变电站场景图片输入到经过训练后的YOLO v5s模型中,该图片会经过YOLO v5s整个模型各个环节的处理,最后可以输出成功框选出仪表目标的图片(即输出图片是在输入图片的基础上增加了框选仪表目标的矩形框)。
仪表图像中的信息表达会随着多层卷积的加深变得越来越抽象,从一开始的低级的像素信息到形状信息、各个部分之间的关系等更有利于类别分析的高层信息。特征信息就是指图像经过目标检测网络后输出的更加有利于类别分析的高层信息。
目前系统可以实现对于仪表目标的100%检测,检测速度保持在0.016s/img左右。可以看出系统针对仪表目标的目标检测准确率和检测速度,而且相对于基于数字图像处理的方法具有更好的场景适应能力。
在得到仪表图片后,接下来就是要对仪表图片中仪表表盘的刻度信息和指针位置信息进行分析。本申请基于改进的PSPNet语义分割模型分析仪表图片中刻度信息和指针位置信息。基于改进的PSPNet语义分割模型对仪表图片的表盘特征区域的图像语义进行分割操作。
改进的PSPNet图像语义分割模型是一种深度学习模型,是通过特征检测得到图片中各个像素的类别,并根据像素的位置关系来确定目标区域,实现对图像的语义识别和分割操作。
区域检测模型训练单元工作过程具体包括以下步骤:第一部分是模型的训练环节。基于仪表图片模型训练单元使用变电站相机拍摄足够多的历史变电站场景图片进行系统的目标检测操作,获得足够多的经过目标检测操作后的历史仪表图片,用于改进PSPNet语义分割模型的训练操作。具体操作为:对用于训练的经过目标检测操作后的仪表图片使用可视化图像标定工具进行人工标注,对图像中的感兴趣区域进行区域划分(仪表刻度区域和指针区域),感兴趣的区域有仪表刻度区域和仪表指针区域。仪表标注过程忽略背景信息而只考虑刻度区域和指针区域的.json文件,将.json文件转换为对应的.png文件。在获得所有原始变电站场景图片对应的.png文件后,将所有原始变电站场景图片与对应的.png文件送到PSPNet模型中进行训练。PSPNet深度学习模型通过模型算法不断学习并更新系统参数来获得自主检测对应目标区域的能力。
区域检测单元工作过程具体包括以下步骤:
改进PSPNet语义分割模型在训练阶段通过针对大量图片的学习,实现对仪表图片中的两个感兴趣区域(刻度区域和指针区域)进行语义分割操作,能够准确的获得刻度区域和指针区域在原始图像中的位置。
具体实现过程为:经过目标检测操作后的目标仪表图片在输入端进行统一尺寸处理,进入模型的主干部分—卷积神经网络CNN,卷积神经网络对经过目标检测操作后的仪表图片进行卷积操作来获得仪表图片的特征信息。经过目标检测操作后的仪表图片在CNN网络中经过多层卷积操作和池化操作进行特征提取和特征融合,位于经过目标检测操作后的仪表图片浅层的粗糙特征会随着网络层数的加深逐渐转变为深层特征。深层特征随后经过全连接层和输出环节后会完成对特征信息的分类操作。然后通过PSPNet语义分割模型的关键部分——空间金字塔池化模块来对系统特征提取过程中的特征信息进行特征联系,获得所有区域(刻度区域和指针区域)中的语义信息和区域中所有特征信息之间的关系。空间金字塔池化模块将特征提取过程中尺度不同的特征信息进行上采样和连接层的处理进行特征联系,可以更加准确的获取图片的特征信息,然后将联系起来的特征进行卷积操作实现特征融合,最后得到完整的、清晰的图像语义信息。根据模型检测到的语义信息对系统感兴趣的区域进行筛选,进而可以获得系统感兴趣区域的类别信息和位置信息。空间金字塔池化模块如图所示。
语义信息:针对图片中信息的高层次表达,例如图像中各个物体的类别信息等;
类别信息:此处指感兴趣区域为刻度区域或者为指针区域;
位置信息:感兴趣区域在图像中的具体位置;
区域检测单元基于训练后PSPNet模型的进行语义分割后,输出图片中包括圆弧刻度区域、直线状指针区域和背景区域。
训练后PSPNet模型对经过目标检测操作后的仪表图片的语义分割操作的结果图像为仅具有感兴趣区域的背景图片,本实施例中,其中刻度区域位置使用红色像素进行重新描述、指针区域使用绿色像素进行重新描述。输出图像例图如图8所示。
改进的PSPNet图像语义分割模型的模型改进包括:
现有技术中的PSPNet图像语义分割模型使用的是ResNet系列模型作为主干特征提取网络。ResNet系列特征提取网络主要通过残差块组成,具有较深的网络结构,该网络的特征提取效果很好,但是时间成本较大。考虑到本系统的图像语义分割操作的对象是仪表表盘中的刻度区域和指针区域,特征简单易检测,不需要使用ResNet模型深层次网络模型。因此,本系统对PSPNet的深度神经网络部分进行更换,使用轻量级的MobileNetV2深层神经网络,能够满足系统需求且提高了模型的训练和检测效率。MobileNetV2网络的优势点在于该网络使用深度可分离卷积代替传统卷积。深度可分离卷积是将传统卷积过程分解为两个部分进行,由Depthwise卷积和Pointwise卷积组成,像常规卷积一样进行特征提取,但是计算量可以变为传统卷积方法的1/3,MobileNetV2的使用极大的降低了系统运行过程中运算量。
MobileNetV2深层神经网络是一个深度卷积神经网络,用于对经过目标检测操作后的仪表图片进行特征信息提取。输入输出都是图像信息,输入为经过目标检测操作后的仪表图片,输出为经过多层卷积网络进行卷积操作后的图像。
仪表示数读取单元工作过程具体包括以下步骤:观察针对经过目标检测操作后的仪表图片进行的基于改进PSPNet模型的语义分割操作的输出图片的特征后发现,输出图片构成要素包括三个部分:圆弧形状的刻度区域、直线状的指针区域和背景区域;将仪表示数检测问题转换为确定图像特征像素点位置关系问题。
仪表的刻度区域为圆弧状,使用极坐标转换法来将扇形区域转换成矩形特征区域,将角度关系转换成长度比例关系,量化特征区域的相对位置关系;
极坐标转换法具体包括以下步骤:
极坐标系是指在二维平面内由极点、极轴和极径组成的坐标系。在一个二维图像内取一点为极点O,从极点O出发的射线Ox为极轴,并规定围绕极点逆时针的方向为正,那么笛卡尔坐标系中的任意一点P都能够用与极点连线的相应线段OP的长度ρ和OP与Ox的夹角θ唯一表示,也就是说笛卡尔坐标系中所有的点都能在极坐标系中唯一表示。那么在笛卡尔坐标系x-y中的圆形区域转换到极坐标系θ-ρ中就会变为矩形区域,满足系统设计的要求。本系统将圆弧刻度区域所在圆的圆心(x0,y0)作为极坐标系的极点,由极点沿一定角度向外延伸获得此方向上的所有像素点的数据并根据函数关系转换到极坐标系中。在已知直角坐标系下的位置(x,y)的情况下,根据以下公式转换为极坐标(ρ,θ):
将直角坐标系下的像素点(x,y)的位置转换到极坐标系下点(ρ,θ)的位置,进而实现将直角坐标系转换为极坐标系。
圆心位置确定:
对于具有大角度(圆弧刻度区域角度大于180°)圆弧刻度区域的图片使用圆形拟合的方法获得圆心。首先将图片进行灰度化、二值化图像处理操作,在得到圆弧刻度区域的图片的二值化图片后,使用cv2.findContours函数进行轮廓查询并将轮廓数据进行排序。由原始图像可知,目前图像中轮廓最大的为圆弧刻度区域,因此在排序后的轮廓数据数组中找到最大的轮廓数据,然后再运用cv2.minEnclosingCircle函数进行圆形拟合,拟合结束后可以获得拟合圆的圆心,即为所求极点。圆形拟合效果如图所示。
对于具有小角度(圆弧区域角度小于180°)圆弧刻度区域的图片使用三线法获得圆心位置。第一条线为最小值刻度位置像素点与最大值刻度位置像素点的连线l1、第二条线为第一条直线的中垂线l2、第三条线为指针区域所在直线l3。通过遍历图像中的像素并依据特殊点(特殊点指最小值刻度位置像素点、最大值刻度位置像素点)的位置特征来获取特征点位置(x1,y1)、(x2,y2),在得到目标像素点位置后确定直线l1和l2的直线斜率和直线l2所在的方程。根据特征点(x1,y1)、(x2,y2)得到中点(x3,y3);
y=k2x-k2x3+y3 (4)
k1、k2指的是直线l1和l2的斜率,(x1,y1)、(x2,y2)表示系统根据位置特点确定的指代最小刻度点的像素位置和指代最大刻度点的像素位置;(x3,y3)是指(x1,y1)、(x2,y2)连线的中点;公式(4)是直线l2的直线方程,x和y是直线l2像素点的横坐标和纵坐标。
对于刻度区域所在直线,系统对直线状指针区域使用最小二乘法拟合获取对应直线方程。
最小二乘法拟合过程:
在直线状指针区域选择多个特征点来拟合指针所在直线(一条尽可能接近所有数据点的直线);
在得到中垂线l2与指针所在直线l3的方程后,联立公式(4)、(5)进行计算得到圆心位置(x0,y0)。联立公式(4)、(5)求解这个两元一次方程组即可得到中垂线l2与指针所在直线l3的交点的具体位置,该交点即为圆心。
最大转换半径Rmax的确定:
因为要保证以圆心为中心的360°范围内所有圆弧像素都从直角坐标系转换到极坐标系,因此,系统选择圆心位置的横坐标和纵坐标中的极大值作为系统函数的最大转换半径Rmax,即Rmax=max(x0,y0)。
本实施例系统使用OpenCV4工具库中的cv2.warpPolar函数来实现图像的极坐标转换。函数原型代码:
dst=cv2.warpPloar(src,dsize,center,maxRadius,flags)
其中,src表示原图像,dsize表示生成图像的大小,center表示极坐标变换时极坐标在原图像中的原点,maxRadius表示变幻时边界圆的半径,flags表示为插值方法与极坐标映射方法的标志。
系统使用的极坐标转换方法基于OpenCV的极坐标转换函数,首先确定圆弧状的刻度区域所在圆的圆心位置(A,B)和最大转换半径Rmax,然后使用函数将原图转化成目标大小的矩形特征区域图片,将角度问题转换为长度比例关系。在得到长度比例关系后再根据仪表量程便可以得到仪表的示数。本方法的设计相对于其他方法更加直接,可以将刻度位置和指针位置的确定整合为一个步骤,极大的减少了位置确定过程产生的误差。
基于训练后的PSPNet语义分割模型的语义分割操作的输出图片进行极坐标转换操作的输出图片如图9所示:
本实施例图9中圆弧刻度区域(红色)表示经过极坐标转换后的刻度区域,图9中绿色区域表示经过极坐标转换后的指针区域。直角坐标到极坐标的映射不会影响两者的相对位置关系。
在得到以上的图片后,角度关系会转变为更加容易计算的长度比例关系。
具体示数计算公式如下:
其中,I表示被检测仪表的示数;Pp表示直线状指针区域能够代表指针位置的一列像素所在的列值;Ps_min表示圆弧刻度区域中最左侧代表最小刻度的像素所在的列值;Ps_max表示圆弧刻度区域中最右侧代表最大刻度的像素所在的列值;R表示仪表的量程;Imin表示仪表的最小刻度值;
Pp确定的方法:通过检索直线状指针区域每一列中的像素个数,并规定像素个数最多的一列为Pp
Ps_min确定的方法:通过检索圆弧刻度区域中列值最小的像素所在列值,即为Ps_min;
Ps_max确定的方法:通过检索圆弧刻度区域中列值最大的像素所在列值,即为Ps_max。
一种基于深度学习的指针式仪表示数自动读取方法,包括以下步骤:
步骤S1,通过历史变电站场景图片训练YOLO v5s深度学习模型,训练后的YOLOv5s深度学习模型为仪表图片目标检测网络;将变电站场景图片输入到仪表图片目标检测网络,获得目标仪表图片;
步骤S2,将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片,将历史仪表图片输入到改进的PSPNet语义分割模型进行模型训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;将目标仪表图片输入到训练后的PSPNet语义分割模型,获取感兴趣区域,感兴趣区域包括刻度区域与指针区域;
步骤S3,根据刻度区域与指针区域的相对位置关系得到仪表示数。
通过历史变电站场景图片训练YOLO v5s深度学习模型具体包括以下步骤:
将变电站巡检的相机正常工作拍摄的具有仪表正面角度的历史图像作为历史变电站场景图片,对历史变电站场景图片进行标记,在历史变电站场景图片中框选出仪表图像中仪表所在位置,获得历史变电站场景图片具有仪表具体位置数据的.xml文件,使用文件格式转换程序将.xml文件转换成为.txt文件,将历史变电站场景图片和对应的.txt文件输入到YOLO v5s深度学习模型中进行深度学习训练,训练后的YOLO v5s深度学习模型为目标监测网络;
改进的PSPNet图像语义分割模型使用MobileNetV2深层神经网络,将卷积过程分解为Depthwise卷积和Pointwise卷积;
步骤S2具体包括以下步骤:
将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片;
对历史仪表图片使用可视化图像标定工具进行标注,将历史仪表图片中的感兴趣区域划分为仪表刻度区域和指针区域,生成消除了背景信息只包括刻度区域和指针区域的.json文件,将.json文件转换为对应的.png文件;将历史变电站场景图片与对应的.png文件输入到改进的PSPNet语义分割模型中进行训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;
区域检测单元工作过程具体包括以下步骤:
对目标仪表图片进行统一尺寸处理,获得标准仪表图片,将标准仪表图片输入到训练后的PSPNet语义分割模型,MobileNetV2深层神经网络对标准仪表图片进行卷积获得仪表图片的特征信息;将所述特征信息经过池化进行特征提取和特征融合,输出深层特征,深层特征经过全连接层和输出层进行语义分割完成对特征信息的分类,将特征信息分类为刻度区域特征信息和指针区域特征信息,实现目标仪表图片中的刻度区域和指针区域分割,经过改进的PSPNet语义分割模型的空间金字塔池化层对刻度区域特征信息和指针区域特征信息进行特征联系,获得刻度区域和指针区域在原始图像中的位置;
区域检测单元基于训练后PSPNet模型的进行语义分割后,输出图片中包括圆弧刻度区域、直线状指针区域和背景区域。
步骤S3具体包括以下步骤:
确定圆弧刻度区域所在圆的圆心和最大转换半径Rmax,使用极坐标转换法来将圆弧刻度区域的扇形区域转换成矩形特征区域,将角度关系转换成长度比例关系,获得极坐标转换后图片,得到长度比例关系后根据仪表量程,量化刻度区域与指针区域位置关系,得到仪表的示数;
圆弧刻度区域所在圆的圆心(x0,y0)位置确定具体包括以下步骤:
当圆弧刻度区域的角度大于180°,使用圆形拟合的方法获得圆心;
圆形拟合的方法具体包括以下步骤:将圆弧刻度区域进行灰度化和二值化图像处理,得到圆弧刻度区域的二值化图片后,使用cv2.findContours函数进行轮廓查询并将轮廓数据进行排序,将最大的轮廓数据运用cv2.minEnclosingCircle函数进行圆形拟合,获得拟合圆的圆心,即为所求极点。
当圆弧刻度区域的角度小于或者等于180°,圆弧刻度区域使用三线法获得圆心位置;
三线法获得圆心位置具体包括以下步骤:
设定三条线,第一条线为最小值刻度位置像素点与最大值刻度位置像素点的连线l1,第二条线为第一条直线的中垂线l2,第三条线为指针区域所在直线l3;通过遍历区输出图片检测单元中的像素并依据特殊点的位置特征来获取特征点位置(x1,y1)、(x2,y2),在得到目标像素点位置后,确定直线l1和l2的直线斜率和直线l2所在的方程;根据特征点(x1,y1)、(x2,y2)得到中点(x3,y3);
y=k2x-k2x3+y3 (4)
k1、k2指的是直线l1和l2的斜率,(x1,y1)、(x2,y2)表示系统根据位置特点确定的指代最小刻度点的像素位置和指代最大刻度点的像素位置;(x3,y3)是指(x1,y1)、(x2,y2)连线的中点;
对直线状指针区域使用最小二乘法拟合获取对应直线方程;
最小二乘法拟合过程具体包括以下步骤:
在直线状指针区域选择多个特征点来拟合指针所在直线(一条尽可能接近所有数据点的直线);
在得到中垂线l2与指针所在直线l3的方程后,联立公式(4)和(5)进行计算得到圆心位置(x0,y0);
最大转换半径Rmax确定具体包括以下步骤:
选择圆心位置的横坐标和纵坐标中的极大值作为系统函数的最大转换半径Rmax,Rmax=max(x0,y0);
极坐标转换法具体包括以下步骤:
将圆弧刻度区域所在圆的圆心(x0,y0)作为极坐标系的极点,极坐标转换公式为:
将直角坐标系下的像素点(x,y)的位置转换到极坐标系下点(ρ,θ)的位置,实现将直角坐标系转换为极坐标系;
角度关系转变为长度比例关系;具体示数计算公式为:
其中,I表示被检测仪表的示数;Pp表示极坐标转换后图片的直线状指针区域中能够代表指针位置的一列像素所在的列值;Ps_min表示极坐标转换后圆弧刻度区域中最左侧代表最小刻度的像素所在的列值;Ps_max表示极坐标转换后圆弧刻度区域中最右侧代表最大刻度的像素所在的列值;R表示仪表的量程;Imin表示仪表的最小刻度值;
Pp确定的方法:通过检索极坐标转换后图片中直线状指针区域每一列中的像素个数,像素个数最多的一列为Pp;
Ps_min确定的方法:通过检索极坐标转换后圆弧刻度区域中列值最小的像素所在列值,即为Ps_min;
Ps_max确定的方法:通过检索图极坐标转换后圆弧刻度区域中列值最大的像素所在列值,即为Ps_max。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
Claims (10)
1.一种基于深度学习的指针式仪表示数自动读取系统,其特征在于,包括:
仪表图片模型训练单元、区域检测模型训练单元、仪表图片目标检测单元、区域检测单元和仪表示数读取单元;
仪表图片模型训练单元通过历史变电站场景图片训练YOLO v5s深度学习模型,训练后的YOLO v5s深度学习模型为仪表图片目标检测网络;
区域检测模型训练单元将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片,将历史仪表图片输入到改进的PSPNet语义分割模型进行模型训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;
仪表图片目标检测单元将变电站场景图片输入到仪表图片目标检测网络,获得目标仪表图片;
区域检测单元将目标仪表图片输入到训练后的PSPNet语义分割模型,获取感兴趣区域,感兴趣区域包括刻度区域与指针区域;
仪表示数读取单元根据刻度区域与指针区域的相对位置关系得到仪表示数。
2.根据权利要求1所述的一种基于深度学习的指针式仪表示数自动读取系统,其特征在于,
仪表图片模型训练单元工作过程具体包括以下步骤:
将变电站巡检的相机拍摄的具有仪表正面角度的历史图像作为历史变电站场景图片,对历史变电站场景图片进行标记,在历史变电站场景图片中框选出仪表图像中仪表所在位置,获得历史变电站场景图片具有仪表具体位置数据的.xml文件,使用文件格式转换程序将.xml文件转换成为.txt文件,将历史变电站场景图片和对应的.txt文件输入到YOLO v5s深度学习模型中进行深度学习训练,训练后的YOLO v5s深度学习模型为目标监测网络。
3.根据权利要求1所述的一种基于深度学习的指针式仪表示数自动读取系统,其特征在于,
改进的PSPNet图像语义分割模型使用MobileNetV2深层神经网络,将卷积过程分解为Depthwise卷积和Pointwise卷积;
区域检测模型训练单元工作过程具体包括以下步骤:
将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片;
对历史仪表图片进行标注,将历史仪表图片中的感兴趣区域划分为仪表刻度区域和指针区域,生成消除了背景信息只包括刻度区域和指针区域的.json文件,将.json文件转换为对应的.png文件;将历史变电站场景图片与对应的.png文件输入到改进的PSPNet语义分割模型中进行训练,获得训练后的PSPNet语义分割模型。
4.根据权利要求1所述的一种基于深度学习的指针式仪表示数自动读取系统,其特征在于,
区域检测单元工作过程具体包括以下步骤:
对目标仪表图片进行统一尺寸处理,获得标准仪表图片,将标准仪表图片输入到训练后的PSPNet语义分割模型,MobileNetV2深层神经网络对标准仪表图片进行卷积获得仪表图片的特征信息;将所述特征信息经过空间金字塔池化模块进行特征融合,输出深层特征,深层特征经过全连接层和输出层进行语义分割完成对特征信息的分类,将特征信息分类为刻度区域特征信息和指针区域特征信息,实现目标仪表图片中的刻度区域和指针区域分割;
区域检测单元基于训练后PSPNet模型的进行语义分割后,输出图片中包括圆弧刻度区域、直线状指针区域和背景区域。
5.根据权利要求4所述的一种基于深度学习的指针式仪表示数自动读取系统,其特征在于,
仪表示数读取单元工作过程具体包括以下步骤:
确定圆弧刻度区域所在圆的圆心和最大转换半径Rmax,使用极坐标转换法来将圆弧刻度区域的扇形区域转换成矩形特征区域,将角度关系转换成长度比例关系,获得极坐标转换后图片,得到长度比例关系后根据仪表量程,量化刻度区域与指针区域位置关系,得到仪表的示数。
6.根据权利要求5所述的一种基于深度学习的指针式仪表示数自动读取系统,其特征在于,
圆弧刻度区域所在圆的圆心(x0,y0)位置确定具体包括以下步骤:
当圆弧刻度区域的角度大于180°,使用圆形拟合的方法获得圆心;
圆形拟合的方法具体包括以下步骤:将圆弧刻度区域进行灰度化和二值化图像处理,得到圆弧刻度区域的二值化图片后,使用cv2.findContours函数进行轮廓查询并将轮廓数据进行排序,将最大的轮廓数据运用cv2.minEnclosingCircle函数进行圆形拟合,获得拟合圆的圆心,所述拟合圆的圆心为所求极点;
当圆弧刻度区域的角度小于或者等于180°,圆弧刻度区域使用三线法获得圆心位置;
三线法获得圆心位置具体包括以下步骤:
设定三条线,第一条线为最小值刻度位置像素点与最大值刻度位置像素点的连线l1,第二条线为第一条直线的中垂线l2,第三条线为指针区域所在直线l3;通过遍历区输出图片检测单元中的像素并依据特殊点的位置特征来获取特征点位置(x1,y1)、(x2,y2),在得到目标像素点位置后,确定直线l1和l2的直线斜率和直线l2所在的方程;根据特征点(x1,y1)、(x2,y2)得到中点(x3,y3);
y=k2x-k2x3+y3(4)
k1、k2指的是直线l1和l2的斜率,(x1,y1)、(x2,y2)表示系统根据位置特点确定的指代最小刻度点的像素位置和指代最大刻度点的像素位置;(x3,y3)是指(x1,y1)、(x2,y2)连线的中点;
对直线状指针区域使用最小二乘法拟合获取对应直线方程;
最小二乘法拟合过程具体包括以下步骤:
在直线状指针区域选择多个特征点来拟合指针所在直线;
在得到中垂线l2与指针所在直线l3的方程后,联立公式(4)、(5)进行计算得到圆心位置;
最大转换半径Rmax确定具体包括以下步骤:
选择圆心位置的横坐标和纵坐标中的极大值作为系统函数的最大转换半径Rmax,Rmax=max(x0,y0);
极坐标转换法具体包括以下步骤:
将圆弧刻度区域所在圆的圆心(x0,y0)作为极坐标系的极点,极坐标转换公式为:
将直角坐标系下的像素点(x,y)的位置转换到极坐标系下点(ρ,θ)的位置,实现直角坐标系转换为极坐标系;
角度关系转变为长度比例关系,具体示数计算公式为:
其中,I表示被检测仪表的示数;Pp表示极坐标转换后直线状指针区域中能够代表指针位置的一列像素所在的列值;Ps_min表示极坐标转换后图片的圆弧刻度区域中最左侧代表最小刻度的像素所在的列值;Ps_max表示极坐标转换后图片的圆弧刻度区域中最右侧代表最大刻度的圆弧刻度区域中像素所在的列值;R表示仪表的量程;Imin表示仪表的最小刻度值。
7.根据权利要求6所述的一种基于深度学习的指针式仪表示数自动读取系统,其特征在于,
Pp确定的方法:通过检索极坐标转换后直线状指针区域每一列像素个数,像素个数最多的一列为Pp
Ps_min确定的方法:通过检索极坐标转换后圆弧刻度区域中列值最小的像素所在列值,为Ps_min;
Ps_max确定的方法:通过检索图极坐标转换后圆弧刻度区域中列值最大的像素所在列值,为Ps_max。
8.一种基于深度学习的指针式仪表示数自动读取方法,其特征在于,包括以下步骤:
步骤S1,通过历史变电站场景图片训练YOLO v5s深度学习模型,训练后的YOLO v5s深度学习模型为仪表图片目标检测网络;将变电站场景图片输入到仪表图片目标检测网络,获得目标仪表图片;
步骤S2,将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片,将历史仪表图片输入到改进的PSPNet语义分割模型进行模型训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;将目标仪表图片输入到训练后的PSPNet语义分割模型,获取感兴趣区域,感兴趣区域包括刻度区域与指针区域;
步骤S3,根据刻度区域与指针区域的相对位置关系得到仪表示数。
9.根据权利要求1所述的一种基于深度学习的指针式仪表示数自动读取方法,其特征在于,
通过历史变电站场景图片训练YOLO v5s深度学习模型具体包括以下步骤:
将变电站巡检的相机正常工作拍摄的具有仪表正面角度的历史图像作为历史变电站场景图片,对历史变电站场景图片进行标记,在历史变电站场景图片中框选出仪表图像中仪表所在位置,获得历史变电站场景图片具有仪表具体位置数据的.xml文件,使用文件格式转换程序将.xml文件转换成为.txt文件,将历史变电站场景图片和对应的.txt文件输入到YOLO v5s深度学习模型中进行深度学习训练,训练后的YOLO v5s深度学习模型为目标监测网络;
改进的PSPNet图像语义分割模型使用MobileNetV2深层神经网络,将卷积过程分解为Depthwise卷积和Pointwise卷积;
步骤S2具体包括以下步骤:
将历史变电站场景图片输入到仪表图片目标检测网络,获取历史仪表图片;
对历史仪表图片使用可视化图像标定工具进行标注,将历史仪表图片中的感兴趣区域划分为仪表刻度区域和指针区域,生成消除了背景信息只包括刻度区域和指针区域的.json文件,将.json文件转换为对应的.png文件;将历史变电站场景图片与对应的.png文件输入到改进的PSPNet语义分割模型中进行训练,获得用于自主检测目标区域的训练后的PSPNet语义分割模型;
区域检测单元工作过程具体包括以下步骤:
对目标仪表图片进行统一尺寸处理,获得标准仪表图片,将标准仪表图片输入到训练后的PSPNet语义分割模型,MobileNetV2深层神经网络对标准仪表图片进行卷积获得仪表图片的特征信息;将所述特征信息经过空间金字塔池化模块池化进行特征提取和特征融合,输出深层特征,深层特征经过全连接层和输出层进行语义分割完成对特征信息的分类,将特征信息分类为刻度区域特征信息和指针区域特征信息,实现目标仪表图片中的刻度区域和指针区域分割;
区域检测单元基于训练后PSPNet模型的进行语义分割后,输出图片中包括圆弧刻度区域、直线状指针区域和背景区域。
10.根据权利要求8所述的一种基于深度学习的指针式仪表示数自动读取方法,其特征在于,
步骤S3具体包括以下步骤:
确定圆弧刻度区域所在圆的圆心和最大转换半径Rmax,使用极坐标转换法来将圆弧刻度区域的扇形区域转换成矩形特征区域,将角度关系转换成长度比例关系,获得极坐标转换后图片,得到长度比例关系后根据仪表量程,量化刻度区域与指针区域位置关系,得到仪表的示数;
圆弧刻度区域所在圆的圆心(x0,y0)位置确定具体包括以下步骤:
当圆弧刻度区域的角度大于180°,使用圆形拟合的方法获得圆心;
圆形拟合的方法具体包括以下步骤:将圆弧刻度区域进行灰度化和二值化图像处理,得到圆弧刻度区域的二值化图片后,使用cv2.findContours函数进行轮廓查询并将轮廓数据进行排序,将最大的轮廓数据运用cv2.minEnclosingCircle函数进行圆形拟合,获得拟合圆的圆心,拟合圆的圆心为所求极点;
当圆弧刻度区域的角度小于或者等于180°,圆弧刻度区域使用三线法获得圆心位置;
三线法获得圆心位置具体包括以下步骤:
设定三条线,第一条线为最小值刻度位置像素点与最大值刻度位置像素点的连线l1,第二条线为第一条直线的中垂线l2,第三条线为指针区域所在直线l3;通过遍历区输出图片检测单元中的像素并依据特殊点的位置特征来获取特征点位置(x1,y1)、(x2,y2),在得到目标像素点位置后,确定直线l1和l2的直线斜率和直线l2所在的方程;根据特征点(x1,y1)、(x2,y2)得到中点(x3,y3);
y=k2x-k2x3+y3(4)
k1、k2指的是直线l1和l2的斜率,(x1,y1)、(x2,y2)表示系统根据位置特点确定的指代最小刻度点的像素位置和指代最大刻度点的像素位置;(x3,y3)是指(x1,y1)、(x2,y2)连线的中点;
对直线状指针区域使用最小二乘法拟合获取对应直线方程;
最小二乘法拟合过程具体包括以下步骤:
在直线状指针区域选择多个特征点来拟合指针所在直线(一条尽可能接近所有数据点的直线);
i表示直线拟合过程中随机选择的n个点中的第i个;表示这n个点横坐标的平均值;表示这n个点纵坐标的平均值;x`i、y`i分别表示拟合所得直线上的点对应的横坐标和纵坐标是系统使用最小二乘法求出的l3直线的斜率,是l3直线方程的截距;
在得到中垂线l2与指针所在直线l3的方程后,联立公式(4)和(5)进行计算得到圆心位置(x0,y0);
最大转换半径Rmax确定具体包括以下步骤:
选择圆心位置的横坐标和纵坐标中的极大值作为系统函数的最大转换半径Rmax,Rmax=max(x0,y0);
极坐标转换法具体包括以下步骤:
将圆弧刻度区域所在圆的圆心(x0,y0)作为极坐标系的极点,极坐标转换公式为:
将直角坐标系下的像素点(x,y)的位置转换到极坐标系下点(ρ,θ)的位置,实现直角坐标系转换为极坐标系;
角度关系转变为长度比例关系;具体示数计算公式为:
其中,I表示被检测仪表的示数;Pp表示极坐标转换后图片的直线状指针区域中能够代表指针位置的一列像素所在的列值;Ps_min表示极坐标转换后图片的圆弧刻度区域中最左侧代表最小刻度的像素所在的列值;Ps_max表示极坐标转换后图片的圆弧刻度区域中最右侧代表最大刻度的像素所在的列值;R表示仪表的量程;Imin表示仪表的最小刻度值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211418881.XA CN115661446A (zh) | 2022-11-14 | 2022-11-14 | 基于深度学习的指针式仪表示数自动读取系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211418881.XA CN115661446A (zh) | 2022-11-14 | 2022-11-14 | 基于深度学习的指针式仪表示数自动读取系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115661446A true CN115661446A (zh) | 2023-01-31 |
Family
ID=85020952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211418881.XA Pending CN115661446A (zh) | 2022-11-14 | 2022-11-14 | 基于深度学习的指针式仪表示数自动读取系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115661446A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117132943A (zh) * | 2023-10-20 | 2023-11-28 | 南京信息工程大学 | 一种安全帽佩戴检测方法、装置、系统及存储介质 |
-
2022
- 2022-11-14 CN CN202211418881.XA patent/CN115661446A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117132943A (zh) * | 2023-10-20 | 2023-11-28 | 南京信息工程大学 | 一种安全帽佩戴检测方法、装置、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110543878B (zh) | 一种基于神经网络的指针仪表读数识别方法 | |
CN112906694B (zh) | 变电站倾斜式指针式仪表图像的读数矫正系统及方法 | |
CN111161218A (zh) | 一种基于孪生卷积神经网络的高分遥感影像变化检测方法 | |
CN110826549A (zh) | 基于计算机视觉的巡检机器人仪表图像识别方法及系统 | |
CN109583324A (zh) | 一种基于单点多盒检测器的指针仪表读数自动识别方法 | |
CN111598942A (zh) | 一种用于对电力设施仪表进行自动定位的方法及系统 | |
CN112801094B (zh) | 一种指针式仪表图像倾斜校正方法 | |
CN105574161B (zh) | 一种商标图形要素识别方法、装置和系统 | |
CN109508709B (zh) | 一种基于机器视觉的单指针仪表读数方法 | |
CN111914767B (zh) | 一种基于多源遥感数据的散乱污企业检测方法及系统 | |
CN113850799B (zh) | 一种基于YOLOv5的微量DNA提取工作站工件检测方法 | |
CN110837839B (zh) | 一种高精度无人机正射影像制作及数据采集方法 | |
He et al. | A value recognition algorithm for pointer meter based on improved Mask-RCNN | |
CN111368906A (zh) | 一种基于深度学习的指针式油位计读数识别方法 | |
CN110909738A (zh) | 一种基于关键点检测的指针仪表自动读数方法 | |
CN112446844B (zh) | 一种基于点云特征提取与配准融合方法 | |
CN113837166B (zh) | 一种基于深度学习的指针式仪表自动读数方法 | |
CN114266881A (zh) | 一种基于改进型语义分割网络的指针式仪表自动读数方法 | |
CN115661446A (zh) | 基于深度学习的指针式仪表示数自动读取系统及方法 | |
Hou et al. | A pointer meter reading recognition method based on YOLOX and semantic segmentation technology | |
Sun et al. | A novel automatic reading method of pointer meters based on deep learning | |
CN113705564A (zh) | 一种指针式仪表识别读数方法 | |
Peng et al. | Automatic recognition of pointer meter reading based on Yolov4 and improved U-net algorithm | |
CN112529003A (zh) | 一种基于Faster-RCNN的仪表盘数字识别方法 | |
CN117152727A (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 |