广东电网有限责任公司广州供电局 广东 广州 ,中国518000
摘要 探索解析、处理及应用非结构化数据资源的方法,确定电力配网运检图像识别局部特征提取算法,对于配网运检图像识别的电力应用场景具有非常重要意义。因此,提出一种鲁棒性强、能够适应不同光照、不同位置等情况下能够有效识别目标的方法,对SIFT算法进行优化,利用SIFT构建图像识别局部尺度空间、关键点检测、消除错配点、关键点描述、关键点匹配与极值点的过滤等过程,采用神经网络对局部特征进行训练学习,对电力设备各个部位进行准确识别和分析,使其适用电力应用场景。
关键字:SIFT算法,图像识别,局部特征
引言
国外电力设备图像检测和分析研究的主要工作是提高输电线路飞行巡检和图像监测的效率和准确性,研究重点集中在输电线、杆塔和绝缘子的提取识别及覆冰、断股、弧垂等特定缺陷或状态的识别,有初步的研究成果,弧垂图像测量等少量图像监测设备己形成应用产品。国外针对图像处理在电力设备状态检测中的研究工作不是很多,所采用的图像处理技术也不是最前沿的,对电力设备的图像特性较少涉及,没有开发出针对各类电力设备的图像分析系统软件。在国内,对于基于图像的电力设备检测和自动分析相关的研究主要集中在理论方法分析及可行性研究阶段。
探索解析、处理及应用非结构化数据资源的方法,确定运检图像识别局部特征提取算法,对于电力应用的配网运检图像识别场景就具有非常重要意义。因此,需要对 SIFT算法进行优化,利用SIFT构建图像识别局部尺度空间、关键点检测、消除错配点、关键点描述、关键点匹配与极值点的过滤等过程,采用神经网络对局部特征进行训练学习,对电力设备各个部位进行准确识别和分析,使其适用电力应用场景。本文将围绕基于改进SIFT的图像识别局部特征算法应用研究需求与设计进行阐述。
业务研究需求
传统图像匹配算法是直接提取角点或边缘,对环境的适应能力较差,需要提出一种鲁棒性强、能够适应不同光照、不同位置等情况下能够有效识别目标的方法。因此,提出SIFT优化算法是一种基于尺度空间的、对图像缩放、旋转甚至仿射变换保持不变性的图像局部特征描述算子。对SIFT算法进行优化,建立运检图像识局部特征提取算法,采用神经网络对局部特征进行训练学习,建立基于深度学习的设备局部特征识别模型,实现运检图像中配网设备各部位准确识别,提升图像识别能力,为多样性图像的识别提供支撑。例如可以支撑运检智能电房远程巡视报告、远程勘查报告、远程监护安健环识别、开关状态识别、两票信息自动回填等图像结构化应用。
在过去的几年,电力系统信息建设突飞猛进,生产业务信息化程度进一步提高,基本实现了各项业务信息化全覆盖。随着信息技术不断发展,智能预测技术不断应用在电力配网生产管理工作,但也面临数据缺失、不完整等问题,很大部分是非结构化数据,例如:检修、试验、不停电作业等信息化程度不高的业务应用,以往都是采用纸质进行存档。造成无法真实反映设备情况,给生产决策带来不确定性。随着智能配电房、智能安监等视频系统建设,生产过程产生海量照片,通过人工对图片或视频进行信息获取,费时费力。
方案设计
电力生产过程中大部分的识别与电力设备有关,因此,开展图像识别算法研究,基于深度学习的设备局部特征识别,建立电力设备特征值,对识别图片进行旋转、尺度缩放、亮度变化 保持不变性,对视角变化、变换、噪声也保持一定程度的稳定性。而且适用于在海量特征数据库中进行快速、准确的匹配。建立运检图像识局部特征提取算法,对设备各个部位进行准确识别和分析,支撑智能识别代替人工识别,提升工作效率。以下为方案设计详情。
3.1 技术路线
3.1.1 SIFT算法
SIFT,即尺度不变特征变换(Scale-invariant feature transform,SIFT),是用于图像处理领域的一种描述。这种描述具有尺度不变性,可在图像中检测出关键点,是一种局部特征描述子。
SIFT特征是基于物体上的一些局部外观的兴趣点而与影像的大小和旋转无关。对于光线、噪声、微视角改变的容忍度也相当高。基于这些特性,它们是高度显著而且相对容易撷取,在母数庞大的特征数据库中,很容易辨识物体而且鲜有误认。
使用SIFT特征描述对于部分物体遮蔽的侦测率也相当高,甚至只需要3个以上的SIFT物体特征就足以计算出位置与方位,辨识速度可接近即时运算。
3.1.2 基于SIFT的图像匹配
图像匹配算法分为三类:一类是基于变换域的匹配,其中包括小波变换、Gabor变换等;第二类是基于灰度的匹配,其中包括交互信息法、互相关法等;另一类是基于特征的匹配,包括面特征、线特征、点特征。主要介绍的是基于特征的匹配中的SIFT(Scale.invariantFeatureZrarlsform)算法。
SIFT特征对旋转、尺度缩放、亮度变化等都具有不变的特性,因此它是非常稳定的局部特征,算法的主要思想是,将图像间的匹配通过某种方式转化成特征向量之间的匹配。SIFT算法主要分为两个部分:特征点的提取和特征点匹配,具体流程为如图所示:
图1 SIFT的图像匹配流程图
SIFT特征提取
(1)尺度空间构造
生成尺度空间需要先构造图像的高斯金字塔,然后利用连续的高斯卷积核与原图像进行卷积生成,从而得到尺度空间。一幅二维图像在不同高斯尺度下的尺度空间可表示为:
L(x,y,σ)=G(x,y,σ)*I(x,y)
其中,G(x,y,σ)为高斯核函数,表示为:
G(x,y,σ)=
式中:(x,y)为图像的像素坐标,I(x,y)力为表示图像。σ称为尺度空间因子,反映了图像的平滑程度,σ越小,平滑程度越小,保留图像的细节信息越多,σ越大,平滑程度越大,图像中的细节信息越少,更多的是图像的概貌。
将相邻组别的高斯图像进行减法运算,可以得到一组高斯差分图像:
D(x,y,mσ)=(G(x,y,kmσ)-G(x,y,km-1)*I(x,y)
式中:m=1,2,…,S;k=21/s。
(2)寻找极值点。
极值点可以在尺度空间中进行查找,查找方式是将空间内所有的点以及相邻尺度与位置的点进行比较,以此来找到局部的极值点。然后将局部的极值点与采样点进行比较,使得在尺度空间和二维图像中的极值点都能得到检测。
(3)精确定位关键点。
利用式在极值点中求得关键点以及关键点的位置和尺度信息。
其中,上式是根据求导寻找极值点,上式采用三维二次拟合的方式将D(x)<=0.03的对比度低的点除去。
为了保证特征点的稳定性,去除对比度低的点之外,还需要去除那些对边缘具有较强响应的点。定义在边缘的高斯差分算子通常在一个方向上有很大的主曲率,而在与之垂直的方向上的主曲率比较小。可以使用Hessian矩阵实现对主曲率求取操作。采用α、β占分别表示H矩阵的最大特征值和最小特征值,且α=rβ。用Tr(H)表示H矩阵中对角线上的元素之和(迹)、Det(H)表示H矩阵的行列式,则:
对于式中而言,若矩阵H的两个特征值相等,则比值最小,随着两个特征值的差距增大,比值也越来越大。当出现边缘响应时,某一方可采用梯度直方图来统计邻域像素的梯度方向的梯度值会越小,所以通过检测Tr(H)2/Det(H)<(r+1)2/r是否成立就能判断该点是否去除。若不成立,则将该点去除,若成立,则将该点保留。
(4)关键点方向匹配
通过对关键点的主方向计算,可以实现SIFT算法的旋转不变性,利用两个算式计算以特征点为圆心、3*1.5σ为半径圆内的像素点的梯度和方向。
可采用梯度直方图来统计邻域像素的梯度方向。将梯度直方图分为36份,每份代表10度,则生成的梯度向量为36维,每一维代表该方向的大小。梯度直方图的峰值代表了该关键点处的邻域梯度的主方向,以此作为该关键点的方向。
(5)生成关键点描述子。
以关键点为中心,选取16*16个像素点,设置4个4*4的窗口,然后在每个窗口分别计算8个方向的梯度直方图,并将值进行累加,形成128维特征向量H=(h1,h2,...,h128),将这128维特征向量称为特征点描述子。
为了进一步去除光照变化产生的不良的影响,需要将特征向量H的长度进行归一化,得到L=(l1,l2,...,l128)
同时,为了减弱较大梯度值的影响,需要对每个方向图的方向梯度的幅值设置上限,一般将上限设为0.2。
SIFT特征匹配
图像的特征匹配是图像匹配算法的核心部分,其目的是在多幅图像间找到相互匹配的特征点,并以这些配对点为基础来计算图像的变换矩阵,实现图像空间的转换。传统的SIFT算法为实现模板图像与采集到的图像特征进行匹配,釆用的是欧式距离判断法。该算法通过设定一定的阈值来确定是否为匹配的特征向量。取模板图像中的某个关键点,根据欧式距离寻找两个匹配最近的点,如果最近距离除以次近距离小于所设定的阈值,则将该点确定为匹配点,阈值的范围控制在区间[0.6,0.75]内。
为了进一步优化匹配效果,还可以引入随机抽样一致算法(RANSAC,randomsampleconsensus)。此算法是一种通过反复循环、不断迭代从而寻找最优模型的参数估计方法,步骤如下:
(1)从经过初步匹配后保留的N对特征点中抽取M(N>>M)对特征点,作为参考特征点对;
(2)利用(1)中的M对特征点,对估计计算变换模型C;
(3)将全部的N对特征点对代入模型C中,计算符合此模型的特征点的对数;
(4)设定阈值,若L高于阈值,则证明符合大多数匹配对,即此变换矩阵就是最后匹配的模型,否则,返回(1)重新开始此算法,直到找到满足的变换模型为止。
3.2 方案设计
图2 基于电力场景的识别算法应用流程图
提供图像识别技术的局部特征算法的具体研究思路,包括如何通过算法实现图像识别对象关键点的准确检测、准确识别描述、准确匹配。
3.2.1.样本图片
依据图像识别技术的原理,图像识别技术首先识别的是图像的轮廓。计算机会将图像转换为数字形式的数组,因此图像识别实际上是对数字数组的分析。在本算法设计中,样本图片的预处理过程为:首先将样本图片作为输入,然后对其进行灰度转换,即将每个像素的彩色信息转换为灰度值,以排除其它信息。最后得到一个长*宽的灰度矩阵。
3.2.2.待分类图片
待分类图片的预处理过程同样本图片预处理过程一样,经过预处理后得到一个长*宽的灰度矩阵。
3.2.3.构建尺度空间
一个图像的尺度空间,定义为一个变化尺度的高斯函数与原图像的卷积。
其中,*表示卷积运算,
m,n表示高斯模板的维度(由确定)。(x,y)代表图像的像素位置。是尺度空间因子,值越小表示图像被平滑的越少,相应的尺度也就越小。大尺度对应于图像的概貌特征,小尺度对应于图像的细节特征。
尺度空间在实现时使用高斯金字塔表示,高斯金字塔的构建分为两部分:
1. 对图像做不同尺度的高斯模糊;
2. 对图像做降采样(隔点采样)。
将原始图像不断降阶采样,得到一系列大小不一的图像,由大到小,从下到上构成塔状模型。原图像为金子塔的第一层,每次降采样所得到的新图像为金字塔的一层(每层一张图像),每个金字塔共n层。金字塔的层数根据图像的原始大小和塔顶图像的大小共同决定,其计算公式如下:
其中M,N为原图像的大小,t为塔顶图像的最小维数的对数值。
检测极值点
使用高斯金字塔每组中相邻上下两层图像相减,得到高斯差分图像,如下图所示,进行极值检测。
图3高斯差分金字塔生成
空间极值点检测是关键点的初步探查。关键点是由DoG空间的局部极值点组成的,关键点的初步探查是通过同一组内各DoG相邻两层图像之间比较完成的。为了寻找DoG函数的极值点,每一个像素点要和它所有的相邻点比较,看其是否比它的图像域和尺度域的相邻点大或者小。如下图所示,中间的检测点和它同尺度的8个相邻点和上下相邻尺度对应的9×2个点共26个点比较,以确保在尺度空间和二维图像空间都检测到极值点。
图4 DoG空间极值检测图
由于要在相邻尺度进行比较,如DoG空间极值检测右侧每组含4层的高斯差分金子塔,只能在中间两层中进行两个尺度的极值点检测,其它尺度则只能在不同组中进行。为了在每组中检测S个尺度的极值点,则DoG金字塔每组需S+2层图像,而DoG金字塔由高斯金字塔相邻两层相减得到,则高斯金字塔每组需S+3层图像,实际计算时S在3到5之间。
这样产生的极值点并不全都是稳定的特征点,因为某些极值点响应较弱,而且DoG算子会产生较强的边缘响应。
3.2.4.去掉不稳定极值
离散空间的极值点并不是真正的极值点,如下图显示了二维函数离散空间得到的极值点与连续空间极值点的差别。
图5离散空间与连续空间极值点的差别图
为了提高关键点的稳定性,需要对尺度空间DoG函数进行曲线拟合。利用DoG函数在尺度空间的Taylor展开式(拟合函数)为:
其中,。求导并让方程等于零,可以得到极值点的偏移量为:
对应极值点,方程的值为:
其中, 代表相对插值中心的偏移量,当它在任一维度上的偏移量大于0.5时(即x或y或),意味着插值中心已经偏移到它的邻近点上,所以必须改变当前关键点的位置。同时在新的位置上反复插值直到收敛;也有可能超出所设定的迭代次数或者超出图像边界的范围,此时这样的点应该删除。另外,过小的点易受噪声的干扰而变得不稳定,所以将小于某个经验值(Lowe论文中使用0.03,RobHess等人实现时使用0.04/S)的极值点删除。同时,在此过程中获取特征点的精确位置(原位置加上拟合的偏移量)以及尺度()。
3.2.5.生成SIFT特征
为了使描述符具有旋转不变性,需要利用图像的局部特征为给每一个关键点分配一个基准方向。使用图像梯度的方法求取局部结构的稳定方向。对于在DoG金字塔中检测出的关键点点,采集其所在高斯金字塔图像3σ邻域窗口内像素的梯度和方向分布特征。梯度的模值和方向如下:
L为关键点所在的尺度空间值,按Lowe的建议,梯度的模值m(x,y)按的高斯分布加成,按尺度采样的3σ原则,邻域窗口半径为。
在完成关键点的梯度计算后,使用直方图统计邻域内像素的梯度和方向。梯度直方图将0~360度的方向范围分为36个柱(bins),其中每柱10度。如图所示,直方图的峰值方向代表了关键点的主方向。
图6 关键点方向直方图
至此,将检测出的含有位置、尺度和方向的关键点即是该图像的SIFT特征点。
3.2.6.图片SIFT特征库
通过以上步骤,对于每一个关键点,拥有三个信息:位置、尺度以及方向。接下来就是为每个关键点建立一个描述符,用一组向量将这个关键点描述出来,使其不随各种变化而改变,比如光照变化、视角变化等等。这个描述子不但包括关键点,也包含关键点周围对其有贡献的像素点,并且描述符有较高的独特性,便于提高特征点正确匹配的概率。
通过对关键点周围图像区域分块,计算块内梯度直方图,生成具有独特性的向量,这个向量是该区域图像信息的一种抽象,具有唯一性。将此向量保存至数据库,形成SIFT特征库。
3.2.7.算最近邻距离
将待分类的图片计算出SIFT特征值后,使用KNN算法将其与SIFT特征库的样本数据进行计算。使用大数据分治计算的思想,将SIFT特征库中的样本数据分为X组并发地与待分类的图片SIFT特征值计算。每组计算保留一个最接近的结果,最后将结果进行合并返回。
3.2.8.分类
在给定的特征库中,对待分类的图片,在特征库中找到与该图片特征最邻近的K个特征,这K个特征的多数属于某个类,就把该待分类的图片分类到这个类中。
4.结论
本研究通过采用优化SIFT算法、深度学习,对图像进行分析,建立配网运检图像局部识别,实现运检图像中配网设备各部位准确识别,提升图像识别能力,为多样性图像的识别提供有效支撑。通过解决视频、图片等非结构化数据利用率不足等问题,有效减少人员查看视频或图像工作量,释放人员劳动力,减少人工费用支出,可以提高生产管理运行效率,提高生产业务效率水平,能够提升智能电网服务能力,降低管理成本,提高现场作业工作效率,降低人工成本,同时加快智能电网建设步伐,进而提高电网的安全水平、提升电网企业的管理水平和服务水平。
参考文献
[1]王永明,王贵锦.图像局部不变性特征与描述[M].国防工业出版社, 2010.
[2]张洁玉.图像局部不变特征提取与匹配及应用研究[D].南京理工大学,2010.
罗家健,1985年6月,男,广东广州,汉,工程硕士,高级工程师,研究方向:数字配电网、配电运维与检修
本文系:广东电网有限责任公司广州供电局科技项目《基于图像结构化描述的配网运检识别应用研究》项目编号:082700KK52200001