APP下载

基于改进Faster-RCNN的绝缘子检测算法

2022-03-01马耀名

计算机应用 2022年2期
关键词:绝缘子特征提取卷积

马耀名,张 雨

(辽宁工程技术大学电气与控制工程学院,辽宁葫芦岛 125105)

0 引言

高压输电线路途径地形复杂,多在山区、河流等人迹罕至区域,传统人工巡检,成本和难度都较高。随着无人机技术快速发展,借助无人机完成电力巡线已成为趋势[1-2]。绝缘子是高压输电线路重要组成部分,在电气绝缘和输电线路支撑中有重大作用;绝缘子长期暴露室外,很易发生破损和掉串,严重影响电网安全。为了更高效、快速检测绝缘子缺陷,借助无人机航拍快速定位绝缘子是绝缘子缺陷检测的前提[3-4]。

传统绝缘子识别方法主要是通过航拍图像边缘轮廓、颜色特征和机器学习方法,例如:郝艳捧等[5]提出使用Grab Cut图论法分割提取绝缘子;黄新波等[6]先通过形态学运算尺度小波变换以及逆变换系数特征对航拍图像清晰化处理,再借助边缘检测方法提取绝缘子;苑利等[7]提出借助支持向量机算法识别红外绝缘子图像;姚晓通等[8]先通过Canny 边缘特征点,再利用特征点匹配方法识别绝缘子。上述传统方法虽可识别绝缘子,但需根据场景设计不同目标特征,稳定性和泛化性较差,识别准确率也较低。

为了提高绝缘子识别精度,白洁音等[9]采用Faster-RCNN(Faster Region-based Convolutional Neural Network)算法[10]提取绝缘子,引入了自适应图像预处理、基于面积非极大值抑制和切分检测等方法;虽可有效检测绝缘子,但交并比(Intersection Over Union,IoU)、归一化层等未改进,致使绝缘子定位精度和模型训练效率较低。赵文清等[11]提出一种注意力机制与Faster-RCNN 相结合的绝缘检测方法,该方法在卷积特征提取网络中引入压缩激励网络结构[12],使模型能够关注与目标相关特征通道并弱化其他无关特征通道;比原Faster-RCNN 算法更有效检测绝缘子,但仍未对IoU 和归一化层改进。蒋姗等[13]提出把特征金字塔结构网络(Feature Pyramid Network,FPN)[14]与Faster-RCNN 算法相结合检测绝缘子,针对遮挡绝缘子,使用软性非极大值抑制(Soft Non-Maximum Suppression,Soft NMS)算法[15]规避不同绝缘子相互遮挡而被误删情况;能有效识别图像中更小比例绝缘子,但未对交并比和归一化层改变,若单批次训练尺寸较小时,模型收敛速度较慢。赖秋频等[16]提出把边缘检测、直线检测等传统方法与YOLO-V2(You Only Look Once V2)算法[17]结合绝缘子识别方法,该方法可迅速准确地在输电线路巡检图像中识别出绝缘子;但YOLO-V2 算法损失函数、锚框等设计与YOLO-V3[18]差距较大,检测性能不及YOLOV3。故颜宏文等[19]在YOLO-V3 算法基础上改进,针对训练数据集正负样本不均衡现象,对YOLO-V3 引入焦点损失函数和均衡交叉熵函数;虽能有效定位绝缘子,但IoU 评价策略较差,致使回归框定位精度较差。杨焰飞等[20]结合YOLOV3 与Inception-Resnet-v2 算法[21]检测绝缘子,通过改变网络结构以增加网络宽度,按照绝缘子特性改进损失函数并借助K均值算法选择锚点框;相较于原YOLO-V3 算法有较大改进,但交并比和归一化层仍未改变。

基于Faster-RCNN 和YOLO 算法绝缘子检测方法,虽可有效定位绝缘子,但网络模型收敛速度较慢,目标回归框不够稳定,严重影响绝缘子定位精度和识别准确率。针对上述问题,本文提出一种基于改进Faster-RCNN 的绝缘子检测算法,首先在特征提取部分引入具有通道注意力机制动态选择机制网络(Selective Kernel Neural Network,SKNet)[22],使特征提取网络自动分辨不同特征通道重要程度,增强特征提取网络特性;然后使用滤波器响应归一化(Filter Response Normalization,FRN)层[23]替代原批归一化(Batch Normalization,BN)层[24],可消除模型在训练过程中对单批次训练数据大小依赖,当显卡内存较小时,可更有效提高网络收敛速度;最后使用更符合回归机制的距离交并比(Distance IoU,DIoU)[25]代替原IoU 方法,原IoU 方法无法准确反映预测框与真实框重合程度,DIoU 方法将锚框之间距离、重叠率以及目标尺度均计算在内,可更精确定位绝缘子。

1 相关技术

1.1 SKNet通道注意力模块

SKNet 启发自皮质神经元根据不同刺激可动态调节其自身感受野大小,在卷积层每个阶段增加不同尺寸滤波器分支。为了使神经元可自适应调整感受野大小,在不同卷积核大小的多卷积核中加入具有自动选择操作的动态选择卷积,SKNet 主要分为三个步骤:分解、融合和选取,如图1 所示。

图1 SKNet通道注意力模块Fig.1 SKNet channel attention module

具体步骤如下:

1)分解。对于任何输入特征映射X∈RH×W×C,首先分别对输入特征映射进行3×3 和5×5 卷积操作,得到:X→∈RH×W×C和。

2)融合。通过门级控制神经网络来自多个分支信息流,并将这些携带不同尺度信息卷积层传递到下一层网络中。先对分解步骤中得到通过元素智能求和得到:

得到卷积层U后,再使用全局平均池化操作得到sc:

通过全局平均池化层可统计卷积层每个通道携带信息,然后再对sc特征输出全连接层得到z,达到降低特征维度、提高网络效率的目的,则z为:

其中:δ为线性整流(Rectified Linear Unit,ReLU)激活函数;β为BN 层;Ws∈Rd×c。

3)选取。经过融合操作,可自适应得到不同空间尺度权重信息,则对z进行softmax 函数可得到a和b权重通道特征层,分别为:

其中:A,B∈Rc×d;a和b分别为软注意力机制。那么,输出最终特征映射V得到各个卷积核注意力权重,表示为:

其中:V=[V1,V2,…,VC],Vc∈RH×W。

1.2 DIoU

IoU 是目标检测最常用指标参数,不仅用来判断正负样本,还可评价预测框和真实框距离,可以写成:

其中:

其中:p、q分别为预测框和真实框横纵坐标。

图2 IoU与DIoU对比Fig.2 Comparison of IoU and DIoU

DIoU 更符合回归机制,将目标与锚框之间的距离、重叠率以及尺度都参考进去,能使Faster-RCNN 目标框回归更加稳定。

其中:d、dgt分别表示预测框和真实框中心点;ρ为两中心点欧氏距离;m表示能包含预测框和真实框最小外接矩形的对角线距离。

传统IoU 损失函数可写成:

对于DIoU 损失函数R(d,dgt)=,则DIoU 损失函数可写成:

1.3 FRN层

为了防止深层网络陷入梯度饱和区域,导致网络收敛速度下降,多会在深层网络中添加归一化层,使激活函数输入特征分布保持在一个稳定状态。常用BN 方法严重依赖每批训练数据大小,当单次训练样本数据过小时,会导致BN 层统计单批次训练数据维度存在偏差,致使网络精度下降。

FRN 层主要分为两部分:滤波器响应归一化层和阈值线性单元(Threshold Linear Unit,TLU),如图3 所示。主要步骤如下:

图3 FRN归一化层Fig.3 FRN normalization layer

1)FRN 层构建。

若是输入数据x尺寸为(j,g,k,w),分别表示一批训练数据个数、通道数、特征图尺寸,先对每个样本每个通道归一化处理,然后再对特征图上每个值进行式(13)计算:

其中:ν2为通道特征值平均平方和;ε为阈值,防止分母为0。

FRN 层相较BN 层,仅对单个样本在Nu=k×w维度上归一化,不依赖一批训练数据个数,有效消除了中间层带来尺度变化问题。

2)TLU 层构建。

在FRN 层中未减去均值,归一化后特征值不是关于0 对称,会以任意方式偏移零值。若是借助ReLU 函数作为激活函数,会导致误差,产生很多零值,严重影响模型性能。为了解决零值偏移问题,FRN 归一化引入阈值化ReLU 层,即TLU 层:

FRN 归一化层共引入了三个可学习参数γ、β、τ,分别学习变换重构尺度、偏移和阈值。

2 基于改进Faster-RCNN的绝缘子图像检测

本文基于改进Faster-RCNN 算法对电力巡线图像实现绝缘子检测,核心是对传统Faster-RCNN 算法卷积层特征提取层和候选区域提取层(Region Proposal Network,RPN)进行改进,以增强检测算法鲁棒性和提高检测精度。

图4 为Faster-RCNN 算法流程,为了增大卷积层特征提取层感受野,本文提出基于SKNet 通道注意力机制的残差神经网络(Residual Neural Network,ResNet)算法[26]作为特征提取网络;为降低单次获取训练样本大小对模型训练影响,提高模型收敛速度,使用FRN 层代替BN 层;为了提高边界框回归参数准确率和效率,借助DIoU 代替IoU 作为边界框回归评估指标。

图4 Faster-RCNN算法流程Fig.4 Flowchart of Faster-RCNN algorithm

2.1 基于SKNet的ResNet50网络特征提取

为了尽可能缓解随着网络层数增加而造成的梯度消失、爆炸和网络退化等问题,残差神经网络模型在堆叠卷积层中加入了残差网络。特征提取网络的卷积层和残差网络增加可提取更多图像特征,但会导致模型复杂度增加、模型运行效率下降。为了使ResNet 可根据输入特征信息,多个尺度自适应感受野大小,本文在残差网络中添加SKNet 模块,具体如图5 所示。

图5 基于SKNet的残差结构Fig.5 Residual structure based on SKNet

为了高效、快速提取图像特征信息,本文在ResNet50 网络模型上改进,如表1 所示,对ResNet50 模型残差结构替换成图5 结构,由此可得到具有通道注意力机制ResNet50模型。

表1 SKNet-ResNet50网络结构Tab.1 SKNet-ResNet50 network structure

为了加速和提升训练模型效果,原ResNet 算法在模型中添加BN 层,BN 层需在训练过程中,统计每批训练数据中间量,这使得BN 层严重依赖每批训练数据数量。本文使用单卡训练模型,显卡内存有限,无法增加单次获取训练样本数量训练模型。限于硬件条件,本文每次训练图像数量均为4,若使用BN 层会严重影响网络模型稳定性。在1.3 节分析知,FRN 归一化层不依赖单次训练样本大小,故在本文中使用FRN 归一化层代替原BN 层。

2.2 候选区域生成网络

Faster-RCNN 算法的候选区域提取层如图6 所示,主要执行了两个动作:在分类层判断候选区域内是否存在绝缘子,输出节点分别表示特征为前后景概率;在回归层,借助特征探测器预测目标候选区域中心点、长和宽四个参数。

图6 候选区域提取层Fig.6 Candidate region extraction layer

2.2.1 分类层

为了保证目标检测算法具有较好尺度不变性,原Faster-RCNN 算法遍历特征图时,会生成比例为{1∶1,2∶1,1∶2}且尺寸大小分别为64×64,128×128,256×256 锚框。原Faster-RCNN 算法锚框比例不适用于检测绝缘子比例,为了得到更好锚框比例,本文对数据集中绝缘子长宽比例统计,绝缘子长宽比4∶1 占60%左右、2∶1 占13%左右、6∶1 占10%左右、5∶1 占17%左右;故本文中锚框比例设为{2∶1,4∶1.5∶1,6∶1},尺寸大小分别为64×64,128×128,256×256。

遍历特征后,通过softmax 激活函数可得到特征图属于前后景概率,从中选择前景概率前300 区域作为绝缘子检测候选区域。

2.2.2 回归层

原Faster-RCNN 算法使用IoU 作为衡量候选区域框准确性评价指标,该方法计算简单易理解,但不能很好反映候选框相交状态,不利于候选区域框回归定位。DIoU 更符合回归机制,将目标与锚框之间距离、重叠率以及尺度都参考进去,使得Faster-RCNN 算法目标框回归更加稳定,具体计算方式参看1.2 节。

在检测到物体后,需要借助DIoU 抑制多余检测框,但由于仅考虑重叠区域交并比,会致使检测框精度下降,因此引入DIoU 作为非极大值抑制标准,不仅考虑重叠区域,还考虑中心点距离,则DIoU 非极大值抑制分类置信度hi为:

其中:ε为非极大值抑制阈值;G为最高置信框中心点;Di为预测框之间中心点。

3 实验与结果分析

本文基于Pytorch1.5 深度学习框架搭建模型,计算机主要配置为:Ubuntn18.04 操作系统,i7-7820X CPU,显卡为1080Ti,内存32 GB。

3.1 数据集和实验参数

本文使用中国电力线绝缘子数据集(Chinese Power Line Insulator Dataset,CPLID)提供图像数据[4],该数据集共有864张绝缘子图像,图像尺寸为1152×864。为了增强训练集,本文对数据样本进行以下操作:

1)平移,对绝缘子图像水平或垂直平移10°。

2)旋转,对数据集顺或逆时针旋转5°。

3)饱和度,在HSV(Hue,Saturation,Value)模型下调整数据集饱和度。

4)亮度,在HSV 模型下改变数据集亮度。

5)Cutout 操作[27],随机将绝缘子样本上部分区域剪掉,并填充像素值0,如图7 所示。

图7 Cutout操作Fig.7 Cutout operation

6)CutMix 操作[28],随机将样本部分区域剪掉,并随机填充训练集样本区域像素值,分类结果按一定比例分配,如图8 所示。

图8 CutMix操作Fig.8 CutMix operation

通过上述操作,可将数据集数量扩充到3 000 张,并随机选取500 张作为测试集,2 500 张绝缘子图像作为训练集。

3.2 实验结果

为了更好衡量本文算法优越性,采用平均准确率(Average Precision,AP)和平均召回率(Average Recall,AR)作为判定指标。实验主要分为三个部分:检测Faster-RCNN算法和本文算法在测试集上检测绝缘子数量;测试DIoU 交并比、FRN 归一化层和SKNet 模块对Faster-RCNN 算法影响;与YOLO-V2[16]、YOLO-V3[19]绝缘子检测算法比较。

为了验证本文算法有效性,在测试集中选择500 张电力线图像检测绝缘子,Faster-RCNN 算法交并比IoU 设为0.5,本文所用DIoU 交并比也为0.5,具体统计结果如表2 所示。由表2 可知,测试集的绝缘子总数为1 435 个,原Faster-RCNN 算法遗漏了123 个绝缘子,本文所提检测算法仅遗漏35 个;原Faster-RCNN 算法错误识别184 个绝缘子,本文算法错误检测89 个绝缘子。表2 表明,本文算法检测绝缘子数量和准确性都优于原Faster-RCNN 算法,能够精准有效检测输电线路中绝缘子。

表2 绝缘子漏检、错检统计结果Tab.2 Statistical results of missing and wrong insulator detection

本文在Faster-RCNN 算法中引入DIoU 交并比、FRN 归一化层和SKNet 模块,为了更好地表明DIoU 交并比、FRN 归一化层和SKNet 模块对Faster-RCNN 算法影响,分别统计Faster-RCNN、Faster-RCNN+DIoU、Faster-RCNN+FRN、Faster-RCNN+SKNet 和本文算法的AP 和AR 值,具体值见表3。

表3 Faster-RCNN算法改变网络后数据统计 单位:%Tab.3 Data statistics after Faster-RCNN algorithm changing network unit:%

Faster-RCNN 算法使用DIoU 代替IoU 交并比,可有效提高Faster-RCNN 算法准确性,AP 值提高了3.02 个百分点,平均召回率提高了0.45 个百分点,表明了DIoU 可更好表达候选框状态。限于GPU 资源,本文单次获取训练图像数量为4,致使原Faster-RCNN 算法收敛难度增加;Faster-RCNN+FRN 算法把原BN 层替换成不依赖单次训练数据尺寸FRN层,有效增加了检测算法稳定性。SKNet 模块使特征提取网络可自动判断不同特征通道重要性,增强了特征提取网络表达力,由此可增加算法检测精度。由表3 可知,Faster-RCNN+SKNet 算法相较原Faster-RCNN 算法AP 值提高0.31个百分点,AR 值增加0.23 个百分点。本文算法将DIoU 交并比、FRN 归一化层和SKNet 通道注意力模块整合到Faster-RCNN 算法中,由表3 知,本文算法相较原Faster-RCNN 算法AP 值提高了3.46 个百分点,平均召回率提高了2.76 个百分点;表明本文算法可更精确定位电力线路图像中绝缘子,稳定性更好。

使用YOLO-V2[16]、YOLO-V3[19]与本文算法对比,从表4所示的实验结果可以看出,所提改进Faster-RCNN 算法平均召回率和平均准确率均为最高,相较原Faster-RCNN 算法AP值增加3.46 个百分点,AR 值提高了2.76 个百分点。YOLOV3 算法平均召回率和平均准确率相较YOLO-V2 算法分别提高了4.53 个百分点、4.82 个百分点,但仍低于本文所提改进Faster-RCNN 算法。由表4 知,本文算法平均召回率和平均准确率均高于其他算法,表明本文算法具有较高稳定性。

表4 不同算法实验结果对比 单位:%Tab.4 Experiment result comparison of different algorithms unit:%

图9 为传统Faster-RCNN、YOL-V2、YOLO-V3 和本文改进Faster-RCNN 算法在测试集上部分检测效果。测试图像a中有两个绝缘子目标且尺度不同,其中:Faster-RCNN、YOLO-V2 和YOLO-V3 算法均漏检较小尺寸绝缘子;本文所提改进Faster-RCNN 算法检测效果最好,图中绝缘子均被提取,如图9(d)。测试图像b 中具有三个检测目标,绝缘子尺寸依次下降,其中:Faster-RCNN 算法漏检尺度较小绝缘子;YOLO-V2 算法漏检两个绝缘子,错检一个绝缘子;YOLO-V3算法漏检两个绝缘子,错检两个绝缘子;本文所提改进Faster-RCNN 算法仍未出现漏检或错检绝缘子,如图9(d)所示。测试图像c 中共有三个绝缘子,远景绝缘子尺度相似但只有部分在图像中,其中:Faster-RCNN 算法未漏检绝缘子,但是较大尺度绝缘子被检测到两次,如图9(a)所示;YOLOV2 算法漏检尺度较小两个绝缘子,YOLO-V3 算法漏检一个尺度较小绝缘子;本文所提改进Faster-RCNN 算法检测效果较好,测试图像中三个绝缘子均被框选,如图9(d)。由此可知,本文算法检测绝缘子的定位精度高、稳定性好,可应用于电力巡线绝缘检测场景中。

图9 不同算法检测效果对比Fig.9 Comparison of detection effect of different algorithms

4 结语

针对高压输电线路人工巡检难度较大、成本较高等问题,提出一种改进Faster-RCNN 算法电力巡线无人机航拍绝缘子检测方法。该方法在特征提取网络中引入注意力通道模块SKNet 层,增加特征提取网络特征提取视野和表达力;通过FRN 层归一化特征通道,使归一化不再依赖单次训练数据尺寸;在候选区域提取层,使用更精确表达目标框位置关系DIoU 交并比替代IoU,增加目标检测算法回归精度。经实验结果表明:所提改进Faster-RCNN 算法具有较高稳定性,可精确定位绝缘子,为进一步检测绝缘子是否存在缺陷提供了准确位置信息。

猜你喜欢

绝缘子特征提取卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
基于Daubechies(dbN)的飞行器音频特征提取
基于傅里叶域卷积表示的目标跟踪算法
Bagging RCSP脑电特征提取算法
1000kV耐张绝缘子串单片绝缘子的带电更换技术
基于MED和循环域解调的多故障特征提取
500kV绝缘子串含零值绝缘子时的电晕放电分析
绝缘子的常见故障及排除方法
一种基于卷积神经网络的性别识别方法