本发明涉及图像采集与识别技术领域,尤其涉及一种基于机器视觉的指针式仪表读表方法。
背景技术:
目前风电厂电气控制柜部分仪表为传统的指针式仪表,该仪表无法通过网口或者串口发送数据与电厂监测系统进行集成,实现高层次的应用,目前指针式仪表的读书需要运行人员进行人工抄表,然而,风电厂风机分布广泛,电器设备众多,人工抄表存在周期长,成本高,实时性差的问题。目前更换电器柜,改用智能仪表,对电厂监测系统进行改造成本高,周期长,影响生产。基于此提出了一种基于机器视觉的指针式仪表读表方法,可以实现仅需通过加装视觉装摄像头便能实现仪表读数的智能识别,从而避免人工抄表或更换电气控制柜的问题。
2019年6月18日公开的中国发明专利公开了一种视觉数据智能读表方法,所述视觉数据智能读表方法包括以下设备:表头、半透镜、摄像头和处理器。该视觉数据智能读表方法,利用半透镜的方法不仅保证了现场人员的读数,而且可以通过图像采集的方法,获得实时的仪表数据。该发明专利虽然月也是通过摄像头设置传统指针式已标记下智能读数,将传统的指针式仪表采集到的指针读数转化成数字信号,但是,其采集方式是简单的加装摄像头拍摄指针图像,将图像传输给处理器,经过处理后得到数字信号形式的指针读数,但是此种方法非常依赖于摄像头拍摄到的照片的清晰度和处理器的图像处理能力,可靠性较差。
技术实现要素:
(一)要解决的技术问题
本发明实施例提供一种基于机器视觉的指针式仪表读表方法,通过机器视觉技术实现了对传统仪表的智能读数,从而避免了人工抄表或者更换电气控制柜的问题。
(二)发明内容
本发明的实施例提供一种基于机器视觉的指针式仪表读表方法,包括以下步骤:
步骤一:仪表标定,以仪表盘的中心线为x轴,分别测量仪表的初始位置的刻度线与x轴正向的夹角θ0,最大量程位刻度线与x轴正向的夹角θ1,记录初始位置的刻度值v0和最大量程刻度值v1,根据以下公式来计算该仪表指针的单位偏转角度对应的仪表的刻度值δ,则:
步骤二:获取正视图像,通过图像采集装置采集仪表的正视图像,存储备用;
步骤三:对步骤二中采集到的正视图像进行处理,将其转化至灰度空间;
步骤四:高斯降噪,对步骤三中经过灰度处理后的图像进行高斯降噪处理;
步骤五:图像边缘处理,设定区域阈值,通过边缘检测对高斯降噪后的图像的边缘进行精细化处理;
步骤六:确定指针所在直线的两个端点,通过对步骤五中处理过的图像进行直线检测确定指针所在的直线在参数空间中的坐标;
步骤七:确定指针的朝向,利用圆检测确定仪表盘的轮廓和圆心,根据步骤六中得到的指针的两个端点的坐标计算器到仪表盘圆心的距离,将距离仪表盘较远的端点确定为指针的针尖,此时可记指针尾端的坐标为(x0,y0),记指针针尖的坐标为(x1,y1);
步骤八:计算指针的偏转角度,利用三角函数计算指针的偏转角度θt;
步骤九:计算仪表盘读数,仪表盘读数为a,则a=θt*δ。
进一步的,步骤一中,进行仪表标定前需先对仪表盘上的仪表进行分组,全部相同类型的仪表为一组,即仪表组数与仪表类型数相同,分组完成后分别对每一组仪表进行标定。
进一步的,仪表采集装置为摄像头,所述摄像头安装于仪表盘上方,正对仪表盘设置。
进一步的,步骤四中高斯降噪选择的高斯卷积算子为大小为5*5。
进一步的,步骤六中直线检测包含以下步骤:
a)遍历图像轮廓点,计算出轮廓点与初始选取点的连线,转化到参数空间的特定的点;
b)通过累加器累加特定点的个数,同时累加器记录图像空间的点坐标;
c)当累加器达到最大值时,计算对应累加器下图像空间两坐标间的最大距离,并记录这两点;
d)设定最短距离阈值,过滤掉零星的线段,留下长度大于最短距离阈值的长的线段,从而确定指针所在的直线,并得到指针的两个端点。
进一步的,步骤七中采用了hough圆检测来确定仪表盘的轮廓和圆心。
进一步的,步骤八中,记指针所在直线与x轴正向的夹角为θr,记指针所实际偏转角度为θt,则有:
(三)有益效果
本发明实施例提供的一种基于机器视觉的指针式仪表读表方法,采用了机器视觉的方法通过仪表标定、获取正视图像、灰度处理、高斯降噪、边缘检测、确定指针坐标,最终计算出指针的偏转角度并且以数字方式给出,通过网口或者串口发送数据与电厂监测系统进行集成,实现高层次的应用,解决了传统指针式仪表读数无法与新安装的电气控制系统实现对接的缺陷,无需人工抄表也无需更换电气控制柜,且相比于现有的通过安装摄像头与图像处理设备来实现读数的方案相比,其算法更为科学合理,精确度更高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的一种基于机器视觉的指针式仪表读表方法的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例的描述中,需要说明的是,除非另有明确的规定和限定,术语“第一”“第二”“第三”是为了清楚说明产品部件进行的编号,不代表任何实质性区别。“上”“下”“左”“右”的方向均以附图所示方向为准。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明实施例中的具体含义。
需要说明的是,除非另有明确的规定和限定,术语“连接”应做广义理解,例如,可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在发明实施例中的具体含义。
图1是本发明实施例中的一种基于机器视觉的指针式仪表读表方法的流程示意图。其目的是为了将传统仪表读数进行数字化转化,将传统的指统针式仪表读数转化成能够与现有电气控制系统对接的数字化读数,以最小的代价实现传统生产线的完全电气化,主要采用以下思路实现:首先,采集仪表读数,然后通过一系列的机器视觉算法对图像进行预处理,优化成容易被机器视觉准确读数的图像,对指针式仪表进行标定,确定计算该仪表指针的单位偏转角度对应的仪表的刻度值δ;其次,通过直线检测和圆检测,分别确定指针的两个端点的坐标,以及指针的朝向,这样即能在坐标空间内实现对指针的定位;最后通过三角函数的知识计算出指针的实际读数,并将其以通过网口或者串口发送数据与电厂监测系统进行集成,实现高层次的应用。
其具体包括以下步骤:
s1、仪表盘标定
电器控制柜上具有有限种仪表类型,测量不同的仪表类型的起始位和满量程位的刻度线与轴正向位夹角、满量程位与轴正向夹角,记录起始位刻度值和满量程位刻度值,从而确定该仪表指针的单位偏转角度对应的仪表的数值,那么(确定4个标定参数和1个计算参数)。
s2、获取正视图像
通过摄像头采集仪表的正视图像,等待进一步处理。
s3、转换为灰度空间
正常摄像头采集到的图像为rgb三通道图像,为避免颜色通道对视觉读表的影响,将rgb彩色图像转化到灰度空间,其方法是将rgb各个通道内对应位置的值相加求平均。
s4、高斯模糊去噪点
原始采集的图像进行灰度处理后,图像会保留部分孤立的高频的部分(噪点),为避免噪点对边缘检测的影响,根据图像的大小选择但不限于大小为5*5的高斯卷积算子,对图像进行卷积计算,从而实现图像的降噪。
s5、边缘检测(计算图像梯度)
因为梯度是灰度变化明显的地方,而边缘也是灰度变化明显的地方,因此通过计算梯度获取图像可能的轮廓点;其次通过设定区域阈值,将局部内灰度变化最大的地方保留下来,其他地方不保留,这样可以将比较宽的边缘进行精细化,防止边缘形成环或重叠,最后设定梯度阈值,剔除梯度小于阈值的边缘,保留梯度大于阈值的边缘。
s6、仪表指针检测(直线检测)
通过仪表指针所在的直线确定指针所在的位置,由于图像空间的每一条直线对应于参数空间的一个点,遍历图像轮廓点,计算出轮廓点与初始选取点的连线,转化到参数空间的特定的点,通过累加器累加特定点的个数,同时每个累加器也记录了图像空间的点坐标,当累加器达到最大时,计算对应累加器下图像空间两坐标点间的最大距离,并记录这两点,通过对最短距离阈值的设定过滤掉零星的线段,最终留下较长的直线。由于仪表的指针比仪表盘的刻度或噪等其它特征的直线要长,因此可以通过阈值的设定仅保留指针所在的直线。
s7、计算表指针朝向(圆检测,确定圆心,根据定点到圆心的距离确定针尖朝向)
由步骤6可以获得指针所在的直线的两端点,对于仪表刻度扇面的圆心角大于180度的仪表,同一直线不同指向仪表读数不同(如下图),需要获取指针针尖的朝向,并且根据指尖朝向确定向量方向。方法:利用hough圆检测(已存在的技术)检测出仪表盘轮廓和圆心,根据获取的指针两端点的坐标分别计算到仪表盘圆心的距离,将距离仪表盘圆心较远的端点确定为指针的针尖,此时可记针跟坐标,针尖坐标。
s8、计算指针偏转角度
根据三角函数关系计算在锐角下,仪表指针所在直线与轴正向的夹角记为,那么,记指针实际偏转角度为,如图,如果,那么如果那么,如果,那么,如果那么,那么。
s9、计算仪表盘读数
有步骤8计算得到的指针偏转角,根据步骤1,仪表盘标定的,单位偏转角度对应的仪表的数值,那么仪表盘读数。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
1.一种基于机器视觉的指针式仪表读表方法,其特征在于,包括以下步骤:
步骤一:仪表标定,以仪表盘的中心线为x轴,分别测量仪表的初始位置的刻度线与x轴正向的夹角θ0,最大量程位刻度线与x轴正向的夹角θ1,记录初始位置的刻度值v0和最大量程刻度值v1,根据以下公式来计算该仪表指针的单位偏转角度对应的仪表的刻度值δ,则:
步骤二:获取正视图像,通过图像采集装置采集仪表的正视图像,存储备用;
步骤三:对步骤二中采集到的正视图像进行处理,将其转化至灰度空间;
步骤四:高斯降噪,对步骤三中经过灰度处理后的图像进行高斯降噪处理;
步骤五:图像边缘处理,设定区域阈值,通过边缘检测对高斯降噪后的图像的边缘进行精细化处理;
步骤六:确定指针所在直线的两个端点,通过对步骤五中处理过的图像进行直线检测确定指针所在的直线在参数空间中的坐标;
步骤七:确定指针的朝向,利用圆检测确定仪表盘的轮廓和圆心,根据步骤六中得到的指针的两个端点的坐标计算器到仪表盘圆心的距离,将距离仪表盘较远的端点确定为指针的针尖,此时可记指针尾端的坐标为(x0,y0),记指针针尖的坐标为(x1,y1);
步骤八:计算指针的偏转角度,利用三角函数计算指针的偏转角度θt;
步骤九:计算仪表盘读数,仪表盘读数为a,则a=θt*δ。
2.根据权利要求1所述的一种基于机器视觉的指针式仪表读表方法,其特征在于,所述步骤一中,进行仪表标定前需先对仪表盘上的仪表进行分组,全部相同类型的仪表为一组,即仪表组数与仪表类型数相同,分组完成后分别对每一组仪表进行标定。
3.根据权利要求1所述的一种基于机器视觉的指针式仪表读表方法,其特征在于,所述仪表采集装置为摄像头,所述摄像头安装于仪表盘上方,正对仪表盘设置。
4.根据权利要求1所述的一种基于机器视觉的指针式仪表读表方法,其特征在于,所述步骤四中高斯降噪选择的高斯卷积算子为大小为5*5。
5.根据权利要求1所述的一种基于机器视觉的指针式仪表读表方法,其特征在于,所述步骤六中直线检测包含以下步骤:
a)遍历图像轮廓点,计算出轮廓点与初始选取点的连线,转化到参数空间的特定的点;
b)通过累加器累加特定点的个数,同时累加器记录图像空间的点坐标;
c)当累加器达到最大值时,计算对应累加器下图像空间两坐标间的最大距离,并记录这两点;
d)设定最短距离阈值,过滤掉零星的线段,留下长度大于最短距离阈值的长的线段,从而确定指针所在的直线,并得到指针的两个端点。
6.根据权利要求1所述的一种基于机器视觉的指针式仪表读表方法,其特征在于,所述步骤七中采用了hough圆检测来确定仪表盘的轮廓和圆心。
7.根据权利要求1所述的一种基于机器视觉的指针式仪表读表方法,其特征在于,所述步骤八中,记指针所在直线与x轴正向的夹角为θr,记指针所实际偏转角度为θt,则有: