本发明涉及机器视觉与图像处理的技术领域,尤其是指一种基于双目视觉的配电柜开关状态识别方法。
背景技术:
配电柜广泛存在于工厂、社区以及电力输送等社会场景中,为电力系统的正常运行提供了重要保障。配电柜上安装有多种开关,实时精确的检测这些开关状态对于保障电力安全供应有着重要意义,且有助于提升供电效率、节省能源,为生产生活提供便利。目前,人工巡检是配电房开关状态监测的主要方法,但是人工巡检存在效率低、实时性差以及漏检率高等缺陷,尤其是在一些不适合人员进入的场景,如高压环境下的配电房,人工巡检具有很高的危险性和不可行性。近年来,随着机器视觉和图像处理技术的迅猛进展,使得基于图像采集设备的配电柜开关状态自动识别技术成为可能,使用自动识别技术可以有效规避人工巡检方法所存在的应用场景局限,且可以大幅提升效率、安全性以及稳定性。因此,对配电柜开关状态自动识别技术进行研究,具有非常重要的意义。
技术实现要素:
本发明的目的在于克服现有技术的缺点和不足,提出了一种基于双目视觉的配电柜开关状态识别方法,主要通过三维重建技术获取图像采集设备与配电柜之间的空间距离,通过图像处理技术利用此空间距离信息选用具体的图像处理参数,从而获取开关位置并进一步识别开关状态,具备实时性和高精度。
为实现上述目的,本发明提供的技术方案为:一种基于双目视觉的配电柜开关状态识别方法,包括以下步骤:
1)对双目相机进行系统标定,获得双目相机中左相机和右相机的参数,并进行立体标定获得左右相机之间的相对位置关系矩阵;
2)对左右相机进行立体校正,并通过图像处理技术检测校正图像中的特征点,通过视差法实现特征点的三维重建;
3)收集不同距离情况下圆形开关与线状开关在图像中的尺寸信息,分别拟合距离与圆形开关尺寸之间的线性关系以及距离与线状开关之间的线性关系;
4)对左相机校正图像进行预处理,通过图像处理算法获取圆形开关和线状开关位置,其中,图像处理算法参数由开关尺寸与距离之间的比例关系确定;
5)对圆形开关图像和线状开关图像进行状态识别,得到配电柜开关状态最终识别结果。
在步骤1)中,采用张正友标定法对双目相机进行系统标定获得左右相机的参数,包括左右相机的内参矩阵、畸变矩阵和外参矩阵,再由外参矩阵通过立体标定获得左右相机之间的相对位置关系矩阵,包括旋转矩阵和平移向量;其中,立体标定的公式如下:
t=tr-rtl
式中:r为旋转矩阵,t为平移向量,rr为右相机相对标定物的旋转矩阵,
所述步骤2)包括以下步骤:
2.1)立体校正
使用左右相机的内参矩阵和畸变矩阵以及左右相机之间的相对位置关系矩阵即旋转矩阵和平移向量,通过bouguet立体校正算法对左右相机图像进行校正,以得到重投影矩阵和左右相机校正图像,重投影矩阵q形式如下:
式中:xl、yl为左相机光心在图像中的横坐标和纵坐标,xr为右相机光心在图像中的横坐标,f为左相机焦距,t为平移向量;
2.2)特征点检测
设计包含多层轮廓的检测标志并将其粘贴在每个配电柜的左上角,通过灰度化和canny边缘检测算法获得边缘图像,采用轮廓检测算法提取并筛选出多层轮廓检测标志位置,以左右相机检测标志的重心作为各自的特征点;
2.3)特征点的三维重建
使用重投影矩阵和左右相机特征点位置通过视差法实现特征点的三维重建,以获取特征点和相机之间的距离,视差法公式如下:
式中:f为左相机焦距,t为平移向量,xl、xr分别为左、右相机光心在图像中的横坐标,z为特征点即配电柜与双目相机之间的距离。
在步骤3)中,通过等距离的移动双目相机靠近配电柜,收集不同距离时圆形开关和线状开关的尺寸构建数据集,并根据此数据集拟合出距离与圆形开关尺寸之间的线性关系及距离与线状开关之间的线性关系;距离与圆形开关尺寸之间的线性表达式y和距离与线状开关之间的线性表达式w形式如下:
y=k1d b1
w=k2d b2
式中:k1、b1分别为线性表达式y的斜率和截距,k2、b2分别为线性表达式w的斜率和截距,d为配电柜与双目相机之间的距离。
在步骤4)中,完成左相机校正图像的预处理和圆形开关以及线状开关的定位,包括以下步骤:
4.1)预处理
通过图像处理技术对配电柜上的包含多层轮廓的检测标志进行检测得到多层轮廓检测标志位置,并根据多层轮廓检测标志位置将左相机校正图像中该位置区域图像使用背景掩膜图像替代,再采用中值滤波算法在保留图像边缘的前提下进行噪声滤除并灰度化得到灰度图像,然后使用限制对比度的自使用直方图均衡化算法进行图像增强以获取预处理图像;
4.2)圆形开关定位
对预处理图像通过canny边缘检测算法获得边缘图像,使用霍夫圆检测算法检测圆形轮廓位置,其中霍夫圆检测的最小圆半径和最大圆半径参数由特征点与相机之间的距离代入圆形开关尺寸之间的线性关系所得,由左相机校正图像转换为hsv通道图以获取圆形轮廓区域内的亮度信息,并通过最小亮度和最小灰度约束筛选出预处理图像中的圆形开关位置;
4.3)线状开关定位
将左相机灰度图像转换为垂直梯度图和水平梯度图,使用三段式一维梯度检测器分别检测垂直梯度图和水平梯度图中线状开关所在的电路线位置,其中三段式一维梯度检测器每段的长度由特征点与相机之间的距离代入线状开关尺寸之间的线性关系所得,再根据电路线位置之间的垂直和水平位置关系确定其上线状开关的位置;三段式一维梯度检测器的公式形式如下:
式中:gray为每个像素点的梯度值,p为每个像素点的位置,lenm、lenr和lenl分别为中段长度、右段长度和左段长度,gdl、gdr和gdm分别为左段梯度累加和、右段梯度累加和、中段梯度累加和,thl、thr和thm分别为左段阈值、右段阈值和中段阈值,pixelgray为转换后像素点值。
在步骤5)中,实现圆形开关和线状开关的状态识别,包括以下步骤:
5.1)圆形开关状态识别
由hsv通道图计算得到整体亮度均值,并以此确定亮度阈值,根据亮度阈值判断圆形开关的状态,大于阈值则为开启状态,反之则为闭合状态;
5.2)线状开关状态识别
读取开启状态模板图像和闭合状态模板图像,并根据线状开关位置区域大小对开启状态模板图像和闭合状态模板图像进行同比例缩放,使用缩放后的模板图像进行模板匹配实现线状开关状态识别。
本发明与现有技术相比,具有如下优点与有益效果:
1、使用双目视觉实现三维重建,较其它三维重建方法所需器械更少、更易实现且精度相对较高。
2、使用配电柜和双目相机之间的距离与开关尺寸之间的线性关系确定开关定位算法的参数,使得开关定位算法更具有泛化能力且精确度更高。
3、通过检测特征点并对特征点进行三维重建,无需对整个配电柜进行三维重建,极大降低了算法复杂度,提升了算法效率,并规避了立体匹配算法可能带来的误差,提升了三维重建的精度。
附图说明
图1为本发明方法的流程图。
图2为检测标志示意图。
图3为三段式一维梯度检测器示意图。
具体实施方式
下面结合具体实施例对本发明做进一步的说明。
如图1所示,本实施例所提供的基于双目视觉的配电柜开关状态识别方法,包括以下步骤:
1)打印已知尺寸的黑白棋盘格作为标定板,固定左右相机之间的相对位置,使用双目相机对不同距离、不同角度以及不同姿态下的标定板进行拍摄,左右相机最少均需要拍摄三张图像,由所拍摄图像采用张正友标定法对双目相机进行系统标定获得左右相机的参数,包括左右相机的内参矩阵、畸变矩阵和外参矩阵,内参矩阵包括sx、sy、u0、v0、f,其中sx、sy是单个像素的物理长度和宽度,u0、v0为相机光心的像素坐标,f为相机的焦距,畸变矩阵包括切向畸变参数和径向畸变参数,外参矩阵包括相机相对标定物的旋转矩阵和平移向量,再由外参矩阵通过立体标定获得左右相机之间的相对位置关系矩阵,包括旋转矩阵和平移向量,立体标定的公式如下:
t=tr-rtl
其中r为旋转矩阵,t为平移向量,rr为右相机相对标定物的旋转矩阵,
2)实现立体校正、特征点检测及三维重建,包括以下步骤:
2.1)立体校正
利用步骤1)中所获得的左右相机的内参矩阵、畸变矩阵以及左右相机之间的相对位置关系矩阵即旋转矩阵和平移向量通过bouguet立体校正算法对左右相机图像进行校正,以得到重投影矩阵q和左右相机校正图像,重投影矩阵q形式如下:
式中:xl、yl为左相机光心在图像中的横坐标和纵坐标,xr为右相机光心在图像中的横坐标,f为左相机焦距,t为平移向量。
2.2)特征点检测
设计包含多层轮廓的检测标志并将其粘贴在每个配电柜的左上角,检测标志如图2所示,通过灰度化和canny边缘检测算法获得边缘图像,采用轮廓检测算法提取并筛选出包含三层轮廓及以上的轮廓,从而检测出检测标志位置,并以左右相机检测标志的重心作为左右相机特征点位置;
2.3)特征点的三维重建
使用重投影矩阵q和左右相机特征点位置通过视差法实现特征点的三维重建,从而得到特征点即配电柜与双目相机之间的距离z,视差法公式如下:
式中:f为左相机焦距,t为平移向量,xl、xr分别为左、右相机光心在图像中的横坐标。
3)通过等距离的移动双目相机靠近配电柜,收集不同距离时圆形开关和线状开关的尺寸数据以构建数据集,数据集中包含多个等间距的距离信息及其所对应的圆形开关尺寸信息和线状开关尺寸信息,并据此数据集由线性拟合方法拟合出距离与圆形开关尺寸之间的线性表达式y和距离与线状开关之间的线性表达式w,线性表达式公式如下:
y=k1d b1
w=k2d b2
式中:k1、b1分别为线性表达式y的斜率和截距,k2、b2分别为线性表达式w的斜率和截距,d为配电柜与双目相机之间的距离。
4)完成左相机校正图像的预处理和圆形开关以及线状开关的定位,包括以下步骤:
4.1)预处理
读取未粘贴标签的配电柜左上角图像按检测标志位置区域尺寸同比例缩放得到背景掩膜图像,根据步骤2)中获取的检测标志位置将左相机校正图像中该位置区域图像使用背景掩膜图像替代,采用中值滤波算法在保留图像边缘的前提下进行噪声滤除并灰度化得到灰度图像,然后使用限制对比度的自使用直方图均衡化算法(简称clahe算法)进行图像增强以获取预处理图像,clahe算法中的对比度阈值通过计算灰度图像整体均值与255之间的比值得到;
4.2)圆形开关定位
对预处理图像通过canny边缘检测算法获得边缘图像,使用霍夫圆检测算法检测圆形轮廓位置,由步骤2)所获得的配电柜与双目相机之间的距离z代入步骤3)所获得的圆形开关尺寸之间的线性表达式y得到圆形开关半径r,则霍夫圆检测的最小半径参数为r-10,最大半径参数则为r 10,由左相机校正图像转换为hsv通道图以获取圆形轮廓位置区域内的亮度信息,并通过最小亮度阈值和最小灰度阈值约束筛选出预处理图像中的圆形开关位置;
4.3)线状开关定位
通过将水平方向上一个像素灰度与前一个像素灰度的差值代替该像素灰度、最左边像素灰度则置0的方式将灰度图像转换为水平梯度图,通过将垂直方向上一个像素灰度与前一个像素灰度的差值代替该像素灰度、最上边像素灰度则置0的方式将灰度图像转换为垂直梯度图,使用三段式一维梯度检测器分别检测垂直梯度图和水平梯度图中线状开关所在的电路线位置,其中三段式一维梯度检测器形式如图3所示,其公式如下:
式中:gray为每个像素点的梯度值,p为每个像素点的位置,lenm、lenr和lenl分别为中段长度、右段长度和左段长度,gdl、gdr和gdm分别为左段梯度累加和、右段梯度累加和、中段梯度累加和,thl、thr和thm分别为左段阈值、右段阈值和中段阈值,pixelgray为转换后像素点值。
使用三段式一维梯度检测器在水平梯度图上逐行滑动,每行的滑动起始列为lenl 0.5lenm,终止列为col-lenr-0.5lenm,其中col为水平梯度图的宽度,对于每个像素点,当左段梯度累加和小于左段阈值、右段梯度累加和小于右段阈值且中段梯度累加和大于中段阈值时,判定该像素点位于线状开关所在的电路线区域并将该点像素灰度值置为255,反之则置0,未滑动到的像素点灰度值也置0,从而得到垂直电路线检测图;将三段式一维梯度检测器顺时针翻转90度,再使用它在垂直梯度图上逐列滑动,每列的滑动起始行为lenl 0.5lenm,终止行为row-lenr-0.5lenm,其中row为水平梯度图的高度,对于每个像素点,当左段梯度累加和小于左段阈值、右段梯度累加和小于右段阈值且中段梯度累加和大于中段阈值时,判定该像素点位于线状开关所在的电路线区域并将该点像素灰度值置为255,反之则置0,未滑动到的像素点灰度值也置0,从而得到水平电路线检测图,再将垂直电路线检测图和水平电路线检测图相融合得到电路线检测图,然后使用轮廓检测算法提取轮廓并为每个轮廓添加外接矩,若两个外接矩在水平方向的间距小于0.5倍较小外接矩宽度且在垂直方向上的间距在0.2到0.5倍较小外接矩高度的范围内,则判定两外接矩之间的区域为线状开关位置,或者当两个外接矩在垂直方向的间距小于0.5倍较小外接矩高度且在水平方向上的间距在0.2到0.5倍较小外接矩宽度的范围内,则判定两外接矩之间的区域为线状开关位置。
5)对圆形开关图像和线状开关图像进行状态识别,得到配电柜开关状态最终识别结果,其中,实现圆形开关和线状开关的状态识别,包括以下步骤:
5.1)圆形开关状态识别
由步骤4)所获得的hsv通道图计算得到整体亮度均值,并用作亮度阈值,根据亮度阈值判断圆形开关的状态,大于阈值则为开启状态,反之则为闭合状态;
5.2)线状开关状态识别
读取开启状态模板图像和闭合状态模板图像,对于每个线状开关位置,将开启状态模板图像和闭合状态模板图像进行缩放至线状开关位置区域大小,使用缩放后的模板图像进行模板匹配实现线状开关状态识别。
以上所述之实施例子只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
1.一种基于双目视觉的配电柜开关状态识别方法,其特征在于,包括以下步骤:
1)对双目相机进行系统标定,获得双目相机中左相机和右相机的参数,并进行立体标定获得左右相机之间的相对位置关系矩阵;
2)对左右相机进行立体校正,并通过图像处理技术检测校正图像中的特征点,通过视差法实现特征点的三维重建;
3)收集不同距离情况下圆形开关与线状开关在图像中的尺寸信息,分别拟合距离与圆形开关尺寸之间的线性关系以及距离与线状开关之间的线性关系;
4)对左相机校正图像进行预处理,通过图像处理算法获取圆形开关和线状开关位置,其中,图像处理算法参数由开关尺寸与距离之间的比例关系确定;
5)对圆形开关图像和线状开关图像进行状态识别,得到配电柜开关状态最终识别结果。
2.根据权利要求1所述的一种基于双目视觉的配电柜开关状态识别方法,其特征在于,在步骤1)中,采用张正友标定法对双目相机进行系统标定获得左右相机的参数,包括左右相机的内参矩阵、畸变矩阵和外参矩阵,再由外参矩阵通过立体标定获得左右相机之间的相对位置关系矩阵,包括旋转矩阵和平移向量;其中,立体标定的公式如下:
t=tr-rtl
式中:r为旋转矩阵,t为平移向量,rr为右相机相对标定物的旋转矩阵,
3.根据权利要求1所述的一种基于双目视觉的配电柜开关状态识别方法,其特征在于,所述步骤2)包括以下步骤:
2.1)立体校正
使用左右相机的内参矩阵和畸变矩阵以及左右相机之间的相对位置关系矩阵即旋转矩阵和平移向量,通过bouguet立体校正算法对左右相机图像进行校正,以得到重投影矩阵和左右相机校正图像,重投影矩阵q形式如下:
式中:xl、yl为左相机光心在图像中的横坐标和纵坐标,xr为右相机光心在图像中的横坐标,f为左相机焦距,t为平移向量;
2.2)特征点检测
设计包含多层轮廓的检测标志并将其粘贴在每个配电柜的左上角,通过灰度化和canny边缘检测算法获得边缘图像,采用轮廓检测算法提取并筛选出多层轮廓检测标志位置,以左右相机检测标志的重心作为各自的特征点;
2.3)特征点的三维重建
使用重投影矩阵和左右相机特征点位置通过视差法实现特征点的三维重建,以获取特征点和相机之间的距离,视差法公式如下:
式中:f为左相机焦距,t为平移向量,xl、xr分别为左、右相机光心在图像中的横坐标,z为特征点即配电柜与双目相机之间的距离。
4.根据权利要求1所述的一种基于双目视觉的配电柜开关状态识别方法,其特征在于,在步骤3)中,通过等距离的移动双目相机靠近配电柜,收集不同距离时圆形开关和线状开关的尺寸构建数据集,并根据此数据集拟合出距离与圆形开关尺寸之间的线性关系及距离与线状开关之间的线性关系;距离与圆形开关尺寸之间的线性表达式y和距离与线状开关之间的线性表达式w形式如下:
y=k1d b1
w=k2d b2
式中:k1、b1分别为线性表达式y的斜率和截距,k2、b2分别为线性表达式w的斜率和截距,d为配电柜与双目相机之间的距离。
5.根据权利要求1所述的一种基于双目视觉的配电柜开关状态识别方法,其特征在于,在步骤4)中,完成左相机校正图像的预处理和圆形开关以及线状开关的定位,包括以下步骤:
4.1)预处理
通过图像处理技术对配电柜上的包含多层轮廓的检测标志进行检测得到多层轮廓检测标志位置,并根据多层轮廓检测标志位置将左相机校正图像中该位置区域图像使用背景掩膜图像替代,再采用中值滤波算法在保留图像边缘的前提下进行噪声滤除并灰度化得到灰度图像,然后使用限制对比度的自使用直方图均衡化算法进行图像增强以获取预处理图像;
4.2)圆形开关定位
对预处理图像通过canny边缘检测算法获得边缘图像,使用霍夫圆检测算法检测圆形轮廓位置,其中霍夫圆检测的最小圆半径和最大圆半径参数由特征点与相机之间的距离代入圆形开关尺寸之间的线性关系所得,由左相机校正图像转换为hsv通道图以获取圆形轮廓区域内的亮度信息,并通过最小亮度和最小灰度约束筛选出预处理图像中的圆形开关位置;
4.3)线状开关定位
将左相机灰度图像转换为垂直梯度图和水平梯度图,使用三段式一维梯度检测器分别检测垂直梯度图和水平梯度图中线状开关所在的电路线位置,其中三段式一维梯度检测器每段的长度由特征点与相机之间的距离代入线状开关尺寸之间的线性关系所得,再根据电路线位置之间的垂直和水平位置关系确定其上线状开关的位置;三段式一维梯度检测器的公式形式如下:
式中:gray为每个像素点的梯度值,p为每个像素点的位置,lenm、lenr和lenl分别为中段长度、右段长度和左段长度,gdl、gdr和gdm分别为左段梯度累加和、右段梯度累加和、中段梯度累加和,thl、thr和thm分别为左段阈值、右段阈值和中段阈值,pixelgray为转换后像素点值。
6.根据权利要求1所述的一种基于双目视觉的配电柜开关状态识别方法,其特征在于,在步骤5)中,实现圆形开关和线状开关的状态识别,包括以下步骤:
5.1)圆形开关状态识别
由hsv通道图计算得到整体亮度均值,并以此确定亮度阈值,根据亮度阈值判断圆形开关的状态,大于阈值则为开启状态,反之则为闭合状态;
5.2)线状开关状态识别
读取开启状态模板图像和闭合状态模板图像,并根据线状开关位置区域大小对开启状态模板图像和闭合状态模板图像进行同比例缩放,使用缩放后的模板图像进行模板匹配实现线状开关状态识别。
技术总结