1.本发明涉及配电网电量表计自动读取技术领域,特别涉及一种基于图像处理的配电柜电量表自动识别装置及识别方法。
背景技术:2.电量表计作为一种传统的指针式仪表因其结构简单、数值读取方便被广泛应用于配电网和用户侧中。尽管目前在很多用户侧层面,电量表计内部集成了基于lora无线或电力线载波方式等无线数值读取方式,但是在高低压配电柜里面,由于特殊环境的原因,电量表计仍然采用传统的指针式仪表在进行校验和使用,而这需要大量工作人员进行人工读数。人工读数准确率依赖于人的主观意识,容易受到环境、疲劳等多种因素的影响。而且一旦发生故障,无法第一时间获取设备故障产生的原因。为了提高配电网层面的效率和准确率,降低设备故障产生的频率和人工巡检带来的大量开销,国家电网2019年初提出了建立泛在电力物联网的概念,期望通过3年时间,在所有数据感知层建立智能化的数值自动获取方式,而电表作为非常重要的变配电环节状态实时监测的一种仪表,通过图像方式自动识别自动感知是实现泛在电力物联网边缘侧最重要的环节之一。
3.现有的指针式仪表图像识别方式自动读数算法一般都是针对专业的工控机部署的,处理器处理速度快、内存容量大,同时通过专业的摄像机相对仪表固定安装、工作环境固定的场景下开发,所用算法一般都采用hough变换对仪表图像全局提取直线段,这类算法及相关装置成本高、算法需求开销大、数据处理速度慢、无法直接应用于资源受限的基于嵌入式和物联网的边缘侧电表智能化读取。文章《基于图像处理的变电站指针式仪表读数的研究》《(电子科技》),其算法流程为:先对读入的图片实现灰度化和阈值分割,然后采用改进的hough变换提取图像中的直线、计算指针角度和显示指针读数。但读数时需要人工通过鼠标点击获取起点、终点坐标和中点坐标,需要提前设置量程等信息,不能完全实现自动化。《一种基于图像处理的指针式仪表读数自动识别方法》(公开号cn108460327a),该发明在上述文献基础上,将算法流程分为两个过程,第一个过程用lsd算法和最小二乘拟合算法获取表盘的中心点和轮廓,第二个采用标准的hough变换提取图像中的所有直线段、指针角度和显示指针读数判断指针在刻度线之间的位置情况,分别计算表盘指针主刻度、细分刻度以及指针线位置读数,然后再和字符识别算法结合后得到指针的最终读数的方法。从其给出的实施例来看,该发明采用多核工业计算机和图像采集卡结合获取图像,尽管一定程度上适用于移动领域,但是计算机开销大、用标准的hough算法获取直线段方式运行速度慢,无法将算法直接应用到处理器速度慢、内存资源小的嵌入式领域,一般嵌入式处理器采用risc指令,主频一般都在200~800m之间,运行速度是多核工业计算机的几分之一甚至十分之一,内存容量更加无法相比,嵌入式内存采用sram,一般都只有几十k到几百k不等,而工业计算机一般内存都采用sdram,容量都是基本从2gb起步。所以当前的图像自动识别仪表指针算法为了在嵌入式领域应用,必须对算法进行深层次改动。
技术实现要素:4.针对现有技术存在以上缺陷,本发明提供一种基于图像处理的配电柜电量表自动识别装置如下:
5.本发明的技术方案是这样实现的:
6.一种基于图像处理的配电柜电量表自动识别装置,所述装置包括基于嵌入式mcu处理器及搭载有freertos操作系统且可运行图像识别程序的硬件装置,所述硬件装置包括:
7.基于嵌入式mcu的处理器单元,所述基于嵌入式mcu的处理器单元为cortex m7f处理器rt1064的arm芯片,所述处理器内部集成浮点dsp处理单元,可对图像数据进行并行实时算法处理;
8.sdram和flash组成的存储单元,所述sdram大小为32mb,所述flash大小为128mb,所述存储单元用于存储设定时间段的电量表计图像的数据,以供追溯所用;
9.前置cmos高清摄像头单元,所述前置cmos高清摄像头单元用于图像采集,实时拍摄电量表计的图像,所述cmos高清摄像头分辨率为720p、帧率为30fps的高清数字摄像头,通过csi和mcu连接;
10.网络通信传输单元,所述网络通信传输单元用于将前置cmos高清摄像头单元采集的图像数据传输至后台服务器,所述网络通信单元包含1个10/100m自适应网卡和1个4g无线全网通模块;
11.带有掉电保护功能的acdc供电单元,所述acdc供电单元包含一个1f的大电容,用于后备电源供电,在掉电情况下用于1分钟左右供电,以便紧急情况下数据备份,包含一个220v和380v交流电源输入,12v直流电源输出的acdc模块,
12.所述基于嵌入式mcu的处理器单元分别与sdram和flash组成的存储单元、前置cmos高清摄像头单元、网络通信传输单元以及带有掉电保护功能的acdc供电单元连接。
13.本发明还提供了一种基于图像处理的配电柜电量表自动识别流程,包括如下步骤:
14.(1)将所述识别装置悬挂于配电柜电量表上方,每一个表计放置一个所述识别装置,所述识别装置上的cmos高清摄像头正对电量表,直线距离保持在50厘米到70厘米之间;角度保持在0~30度之间;
15.(2)所述识别装置初始化的时候,需要通过以太网连接路工作人员电脑,通过web server登陆,配置和后台服务器的通信协议、本地的网络协议和端口号后,点击”连接“按钮开始启动和后台服务器的连接;
16.(3)所述识别装置成功连接到后台服务器后,会自动从后台服务器下载最新版本的电量表标准刻度值和极坐标对应值的数据库表格,存入到内存中备用;
17.(4)所述识别装置在上述电量表刻度值极坐标对应表格下载完成后,启动所述cmos高清摄像头拍摄电量表图像,进入图像处理流程对图像进行识别处理,检测出当前电表的读数;
18.(5)所述识别装置在识别出指针对应的主刻度值后,将值转换成对应的电量表计值通过有线网络发送给后台服务器。
19.优选地,步骤(4)中,所述图像处理流程及图像识别处理是通过在所述识别装置的
软件freertos操作系统上面运行一种面向嵌入式系统应用的直线段检测算法进行,所述直线段检测算法具有如下检测流程:
20.1)所述识别装置通过网络从后台服务器下载最新的电量表数值坐标对应表预先存入到数据库,根据后续需要读入到内存备用;
21.2)用程序控制所述cmos高清摄像头云台,使得cmos高清摄像头对准电量表计,初始化调焦完成后,连续拍摄表计仪表盘图像5~10张;
22.3)对所述图像进行初始化处理:进行小波变换后,提取特征值最佳的一副图像p1作为后续图像处理的对象;
23.4)对所述图像p1继续灰度变换以局表盘圆形形状特征,对所述图像p1进行背景值提取和边缘分割检测,初步实现表盘的直线轮廓,并获取表盘区域图像p2;
24.5)对所述图像p2内以数据库内存储的表盘半径r作为定位线,连续检测和比较出图像的中心点,所述中心点即表盘圆心o,同时经过图像增强,构造出所述圆心o为中心,半径r的环状边沿图p3;
25.6)对所述表盘的区域图像p2内通过一种面向嵌入式应用的新型直线段检测算法检测出指针直线段另外一个端点a(x2,y2),所述端点a(x2,y2)与所述图像p3中的所述圆心o(x1,y1)连线作为指针直线;
26.7)对所述端点a(x2,y2)和圆心o(x1,y1)进行坐标变换,从笛卡尔坐标变换到极坐标,计算出角度值θ;
27.8)将指针直线的角度值θ和预先存入到数据库中的对应表所有角度的表计值进行查询对比,获得精确的当前电量表读数,通过网络发送到后台服务器端。
28.优选地,所述步骤6)中一种面向嵌入式应用的新型直线段检测算法,其具体算法流程为:
29.(a)对所述图像p2进行边缘检测后标记为图像p2a,对所述图像p2a进行自适应阈值分割后标记为图像p2b;
30.(b)对所述图像p2b采用直线段检测算法检测出所有图像包含的直线段,将所有直线段信息以笛卡尔坐标方式存入到矢量数组l1(x,y)中;
31.(c)对所述矢量数组l1的所有直线段的像素点检测扫描,当扫描到像素特征值为1的直线段坐标点l11(x0,y0)后,以该数值l11(x0,y0)为圆心,半径为阀值dth(r)扫描同一直线段数组坐标内是否存在特征值为1的像素点,如果存在则标记为l11[x1,y1],如果不存在继续扫描,如果该直线段不存在特征值1的其他像素点,则从矢量数组l1[x,y]中删除该直线段,全部扫描完成后构成新的直线段矢量数组l2[x,by];
[0032]
(d)将特征值检测后的所述矢量数组l2[x,y]与所述表盘圆心o每条所述线段的距离作升序排列得到一个序列,所述序列中权重比例最大的两个线段之间的角度标记为α;
[0033]
(e)判断α的取值,若α>0.5的权重系数,则所述序列中第1,2线段的交点即为指针线段的端点a(x,y);
[0034]
(f)所述表盘圆心o与所述端点a的连线为指针所在直线;
[0035]
(g)将圆心o和端点a的坐标转换为极坐标,计算出指针直线与圆心o的角度值θ。
[0036]
优选地,所述电量表计值包括电压、电流、有功功率、无功功率。
[0037]
优选地,所述电量表数值对应标准电力系统内部电压电流功率表计。
[0038]
与现有技术相比,本发明有以下有益效果:
[0039]
本发明的基于图像处理的配电柜电量表自动识别装置及识别方法,识别装置采用一种基于nxp的最新型cortex m7f处理器上面的嵌入式硬件方案,可以有效部署本发明提出的识别方法所运用的算法程序,实际设计和操作结果说明了该方法的有效性。本发明摒弃了传统嵌入式系统处理器速度慢、内存空间小以致当前算法和程序无法直接部署上去的方式,提出了一种面向嵌入式应用的新型直线段图像检测算法,该算法充分利用电量表表计尺寸和刻度线为标准化的特点,将表计刻度线和中心之间的极坐标值预先存入到内存中,然后利用传统lsd直线段检测算法和最小二乘法拟合,精确定位表盘中心点和表盘轮廓特征;同时本发明采用一种新型的边缘检测后的直线段像素特征值匹配方法,检测出直线段另外一个交点值,与表盘中心连线作为指针所在直线,提高了指针位置的提取精度,消除了hough变换对全局性像素点的特征值提取对处理器和内存资源的巨大开销,提高了数据处理的实时性和有效性。
附图说明
[0040]
图1为本发明基于图像处理的配电柜电量表自动识别装置的电路原理框图;
[0041]
图2为本发明基于图像处理的配电柜电量表自动识别流程图。
[0042]
图中:基于嵌入式mcu的处理器单元100,sdram和flash组成的存储单元200,前置cmos高清摄像头单元300,网络通信传输单元400,后台服务器500,带有掉电保护功能的acdc供电单元600。
具体实施方式
[0043]
下面将结合本发明实施例中的附图,对本发明进行清楚、完整地描述。
[0044]
如图1所示,一种基于图像处理的配电柜电量表自动识别装置,所述装置包括基于嵌入式mcu处理器及搭载有freertos操作系统且可运行图像识别程序的硬件装置,所述硬件装置包括:
[0045]
基于嵌入式mcu的处理器单元100,所述基于嵌入式mcu的处理器单元100为cortex m7f处理器rt1064的arm芯片,所述处理器内部集成浮点dsp处理单元,可对图像数据进行并行实时算法处理;
[0046]
sdram和flash组成的存储单元200,所述sdram大小为32mb,所述flash大小为128mb,所述存储单元用于存储设定时间段的电量表计图像的数据,以供追溯所用;
[0047]
前置cmos高清摄像头单元300,所述前置cmos高清摄像头单元300用于图像采集,实时拍摄电量表计的图像,所述cmos高清摄像头分辨率为720p、帧率为30fps的高清数字摄像头,通过csi和mcu连接;
[0048]
网络通信传输单元400,所述网络通信传输单元400用于将前置cmos高清摄像头单元400采集的图像数据传输至后台服务器500,所述网络通信单元400包含1个10/100m自适应网卡和1个4g无线全网通模块;
[0049]
带有掉电保护功能的acdc供电单元600,所述acdc供电单元包含一个1f的大电容,用于后备电源供电,在掉电情况下用于1分钟左右供电,以便紧急情况下数据备份,包含一个220v和380v交流电源输入,12v直流电源输出的acdc模块,
[0050]
所述基于嵌入式mcu的处理器单元100分别与sdram和flash组成的存储单元200、前置cmos高清摄像头单元300、网络通信传输单元400以及带有掉电保护功能的acdc供电单元600连接。
[0051]
如图2所示,本发明还提供了一种基于图像处理的配电柜电量表自动识别流程,所述识别流程基于上述识别装置,所述自动识别流程包括如下步骤:
[0052]
(1)将所述识别装置悬挂于配电柜电量表上方,每一个表计放置一个所述识别装置,所述识别装置上的cmos高清摄像头正对电量表,直线距离保持在50厘米到70厘米之间;角度保持在0~30度之间;
[0053]
(2)所述识别装置初始化的时候,需要通过以太网连接路工作人员电脑,通过web server登陆,配置和后台服务器的通信协议、本地的网络协议和端口号后,点击”连接“按钮开始启动和后台服务器的连接;
[0054]
(3)所述识别装置成功连接到后台服务器后,会自动从后台服务器下载最新版本的电量表标准刻度值和极坐标对应值的数据库表格,存入到内存中备用;
[0055]
(4)所述识别装置在上述电量表刻度值极坐标对应表格下载完成后,启动所述cmos高清摄像头拍摄电量表图像,进入图像处理流程对图像进行识别处理,检测出当前电表的读数;
[0056]
(5)所述识别装置在识别出指针对应的主刻度值后,将值转换成对应的电量表计值(电压/电流/有功功率/无功功率等)通过有线网络发送给后台服务器。
[0057]
优选地,步骤(4)中,所述图像处理流程及图像识别处理是通过在所述识别装置的软件freertos操作系统上面运行一种面向嵌入式系统应用的直线段检测算法进行,所述直线段检测算法具有如下检测流程:
[0058]
1)所述识别装置通过网络从后台服务器下载最新的电量表数值坐标对应表预先存入到数据库,根据后续需要读入到内存备用(该数据数值对应标准电力系统内部电压电流功率表计);
[0059]
2)用程序控制所述cmos高清摄像头云台,使得cmos高清摄像头对准电量表计,初始化调焦完成后,连续拍摄表计仪表盘图像5~10张;
[0060]
3)对所述图像进行初始化处理:进行小波变换后,提取特征值最佳的一副图像p1作为后续图像处理的对象;
[0061]
4)对所述图像p1继续灰度变换以局表盘圆形形状特征,对所述图像p1进行背景值提取和边缘分割检测,初步实现表盘的直线轮廓,并获取表盘区域图像p2;
[0062]
5)对所述图像p2内以数据库内存储的表盘半径r作为定位线,连续检测和比较出图像的中心点,所述中心点即表盘圆心o,同时经过图像增强,构造出所述圆心o为中心,半径r的环状边沿图p3;
[0063]
6)对所述表盘的区域图像p2内通过一种面向嵌入式应用的新型直线段检测算法检测出指针直线段另外一个端点a(x2,y2),所述端点a(x2,y2)与所述图像p3中的所述圆心o(x1,y1)连线作为指针直线;
[0064]
7)对所述端点a(x2,y2)和圆心o(x1,y1)进行坐标变换,从笛卡尔坐标变换到极坐标,计算出角度值θ;
[0065]
8)将指针直线的角度值θ和预先存入到数据库中的对应表所有角度的表计值进行
查询对比,获得精确的当前电量表读数,通过网络发送到后台服务器端。
[0066]
优选地,所述步骤6)中一种面向嵌入式应用的新型直线段检测算法,其具体算法流程为:
[0067]
(a)对所述图像p2进行边缘检测后标记为图像p2a,对所述图像p2a进行自适应阈值分割后标记为图像p2b;
[0068]
(b)对所述图像p2b采用直线段检测算法检测出所有图像包含的直线段,将所有直线段信息以笛卡尔坐标方式存入到矢量数组l1(x,y)中;
[0069]
(c)对所述矢量数组l1的所有直线段的像素点检测扫描,当扫描到像素特征值为1的直线段坐标点l11(x0,y0)后,以该数值l11(x0,y0)为圆心,半径为阀值dth(r)扫描同一直线段数组坐标内是否存在特征值为1的像素点,如果存在则标记为l11[x1,y1],如果不存在继续扫描,如果该直线段不存在特征值1的其他像素点,则从矢量数组l1[x,y]中删除该直线段,全部扫描完成后构成新的直线段矢量数组l2[x,by];
[0070]
(d)将特征值检测后的所述矢量数组l2[x,y]与所述表盘圆心o每条所述线段的距离作升序排列得到一个序列,所述序列中权重比例最大的两个线段之间的角度标记为α;
[0071]
(e)判断α的取值,若α>0.5的权重系数,则所述序列中第1,2线段的交点即为指针线段的端点a(x,y);
[0072]
(f)所述表盘圆心o与所述端点a的连线为指针所在直线;
[0073]
(g)将圆心o和端点a的坐标转换为极坐标,计算出指针直线与圆心o的角度值θ。
[0074]
综合本发明的电路结构以及控制方法可知,本发明的基于图像处理的配电柜电量表自动识别装置及识别方法,识别装置采用一种基于nxp的最新型cortex m7f处理器上面的嵌入式硬件方案,可以有效部署本发明提出的识别方法所运用的算法程序,实际设计和操作结果说明了该方法的有效性。本发明摒弃了传统嵌入式系统处理器速度慢、内存空间小以致当前算法和程序无法直接部署上去的方式,提出了一种面向嵌入式应用的新型直线段图像检测算法,该算法充分利用电量表表计尺寸和刻度线为标准化的特点,将表计刻度线和中心之间的极坐标值预先存入到内存中,然后利用传统lsd直线段检测算法和最小二乘法拟合,精确定位表盘中心点和表盘轮廓特征;同时本发明采用一种新型的边缘检测后的直线段像素特征值匹配方法,检测出直线段另外一个交点值,与表盘中心连线作为指针所在直线,提高了指针位置的提取精度,消除了hough变换对全局性像素点的特征值提取对处理器和内存资源的巨大开销,提高了数据处理的实时性和有效性。