基于编码解码结构的移动端电力线语义分割方法

2021-11-05 01:29黄巨挺高宏力戴志坤
计算机应用 2021年10期
关键词:电力线电线卷积

黄巨挺,高宏力,戴志坤

(西南交通大学机械工程学院,成都 610031)

0 引言

输电线路需要日常维护与故障检修以保证供电的稳定与安全,人工巡检电力线可能会比较危险并且耗费大量的时间。随着无人机技术的发展,采用无人机巡检系统取代人工,可以节省大量时间、人力和财力,而电力线的检测是系统中最重要的一部分;然而由于缺乏特定的电力线检测和预警系统,有大量低空飞行无人机或直升机与输电线路碰撞的事故发生[1]。因此实现飞行器对于输电线路的准确高效识别是非常有必要的。

输电线路识别可以使用雷达、红外传感、电磁传感以及机器视觉技术。近几年机器视觉技术发展迅速,尤其是深度卷积神经网络(Deep Convolutional Neural Network,DCNN)在图像识别[2-4]、目标检测[5-6]以及语义分割[7-9]等领域有着良好性能;另外由于相机价格便宜、质量轻、易于在飞行器上装载,因此本文将采用机器视觉技术实现输电线路识别。机器视觉技术是对于飞行器采集到的图片进行处理,检测图片中是否存在输电线路。如果识别到电线,则可以进行后续的电线位置定位并向低空飞行器发送预警信息以防止碰撞事故,为无人机后续沿输电线路巡检和运动规划做准备。这些都需要电线识别有较高的精度和效率,而机器视觉中的传统图像处理方法存在精度低和受环境影响大的问题;深度学习方法则是依赖于丰富的电线数据集,在保持较好识别精度时,由于网络结构较深而令检测效率会下降。

无论是无人机巡检输电线路还是搭载在低空飞行器上的电力线检测预警系统,都需要飞行器对电力线的自动实时识别,因此需要一种能够在飞行器移动端高效运行的电线视觉识别方法,以此保证飞行器能够在低空飞行过程中及时识别飞行器下方的输电线路,以进行运动规划和躲避电线。

通常无人机采集的输电线图片中背景复杂,电线较细,宽度只有5~10个像素,对其准确识别具有挑战性。一些背景可能具有与线路类似的形状和边缘,比如河流、树枝以及房屋边沿等;另外背景可能与线路颜色相近、对比度较低,这种情况下,肉眼可能也难以准确识别出电线。

已有的关于输电线路识别的工作分为两类。

一类是基于传统数字图像处理技术的线检测方法。Zhu等[10]基于电力线与背景有较大对比度以及电力线通常为直线且与其他电力线平行等限制条件,使用一种改进的双边滤波方法来提高线结构的对比度,然后使用Radon 变换进行直线检测,最后通过电力线之间的平行关系约束条件来确定电力线;Du 等[11]设计了一种新的贝叶斯分类器,将图像像素颜色作为信息源来计算概率,通过Hough 变换获得启发性知识来确定传统贝叶斯分类器的先验概率与后验概率;Song 等[12]提出一种有序的从局部到整体的电力线检测算法,首先用匹配滤波器和高斯一阶导数来获得一个边缘图,然后使用形态学滤波筛选出所有线性段,最后基于图论将候选线性段组合成完整的电力线;韦盛[13]采用边缘绘制(Edge Drawing)算法检测图像边缘,然后采用边缘绘制的线提取算法提取输电线边缘,最后使用K均值聚类算法去除干扰直线。

另一类是基于语义分割卷积神经网络的深度学习方法,现有的语义分割神经网络为全卷积网络(Fully Convolutional Network,FCN)[7]、SegNet[8]、U-Net[14]以 及DeepLab 系 列[15-17]等。针对输电线路的语义分割,王栩文[18]在DeepLabV3+基础上,针对输电线细长的特点设计了更复杂的解码器,提出了DeepLabV3+Decoder 网络模型,未在移动端设备进行实验。Madaan 等[19]设计了适用于移动端电力线识别的网络结构,使用空洞卷积技术[17]提取多尺度特征,设计多个神经网络结构,通过Grid Search 找到准确率与效率最优的网络结构。Zhang等[20]实现了电线边缘的精细化检测,首先使用牛津大学视觉几何组(Visual Geometry Group,VGG)发布的VGG-16 网络作为主干结构提取特征并使用双线性插值逐层上采样融合低阶特征,然后获取最后一层特征图的结构化信息,最后将网络输出的融合结果与结构化信息结合获取更加细化的电线边缘。Choi 等[21]提出了一种基于弱监督学习方法的电线检测算法,能够使用图像级别的标签训练像素级别分割电线的网络,降低了电线标注的人力消耗。该算法分两个阶段:第一阶段是基于块级别标注进行训练的卷积神经网络,用于生成可能带有噪声的标注图像;第二阶段则是一个带有电线分割精细化模块的可迭代训练的FCN 语义分割网络,最后得到像素级分割电线图像。

传统检测方法检测精度低,受环境干扰很大,在环境较为复杂时,很容易漏检与误检,该类方法的很多研究都是在较强限制条件和假设下进行,如阈值等参数或人工设计的滤波器需要随环境变化而调整。卷积神经网络使用级联的卷积结构提取低层次和高层次特征,拥有强大的学习能力。卷积神经网络的端到端训练方式能够自动从数据中学习表征,相较依赖于手工制作特征的系统有更好的性能,因此基于卷积神经网络的深度学习方法比基于传统数字图像处理技术的线检测方法更加适用于检测复杂背景下的电力线,有更强的泛化能力。现有的前沿语义分割神经网络如DeepLabv3+等是针对多分类目标分割,并且拥有很深的卷积网络结构,因此王栩文的DeepLabv3+Decoder 模型的预测速度无法满足实时电线分割任务需要。Zhang 等[20]提出的电线边缘检测方法需要额外的算力用于提取结构化信息,尚未在移动端平台上运行;Madaan 等[19]提出的网络结构未采用下采样操作,所有卷积核都是操作于和输入图片尺寸相同的特征图上,所以预测效率仍然有提升的空间;Choi 等[21]提出的电线检测算法旨在降低电线图像的标注成本,主要采用深层网络FCN 进行分割,然后在假设局部电线为直线的基础上,对分割结果进行图像后处理,不适合在移动端运行。

针对上述的传统电线检测方法精度较低、复杂环境下容易产生误检以及现有的基于神经网络的电线检测算法效率不高等问题,本文提出了一种适用于移动端高效实时识别输电线路的语义分割卷积神经网络,命名为WireDetection。整体网络为U 型的编码解码结构,能够自动提取低阶和高阶的特征,编码过程采用了最大池化下采样,解码部分逐层上采样恢复图像细节。整体网络框架只有9 层卷积层,采用最大池化索引的非线性上采样方式以节省内存空间,所以相比现有前沿的多分类语义分割网络,WireDetection 整体结构精简,也不需要额外的特征信息提取操作,能够在移动端平台有较好的表现。本文的数据集为真实情况下无人机采集的输电线路图片,并做了像素级标记。最后分别在同源与不同源的测试集上验证模型性能,并在一个移动端GPU(Graphics Processing Unit)上测试模型的运行速度。实验结果表明本文模型在不同测试集上相比现有的电线检测算法都有更好的分割性能以及更快的识别速度。

1 数据集

现有的飞行器采集的已标记的输电线路公开数据集稀少。目前有ETU(Eskişehir Technical University)的公开数据集[22],是从土耳其21个不同区域以及不同天气情况下获取的录像中筛选出的较为清晰的帧图像,但是数据量较少只有100 张已经标记的有效图片,并且输电线路图片背景较单一。还有Zhang 等[20]制作的山地背景与城市背景的电线数据集,但是电线的像素标记不完整,只有电线边缘的像素被标记。

本文的输电线路数据集是通过大疆(Da Jiang Innovations,DJI)无人机采集,命名为WireDataset。DJI Mavic Mini 无人机以30 frame/s 拍摄分辨率为1 920×1 080 的图片。无人机在电线上方10 m内拍摄图片。如图1所示,电线在图片中的方向和位置多样,图片背景更加多样:1)电线与背景对比度较低;2)背景中包含与电线有相似像素值或相似形状的物体。

图1 WireDataset中的样例图片Fig.1 Example images in WireDataset

原始图片大小为1 920×1 080,其中包含电线的512×512像素的区域被截取来制作数据集,数据集的标记使用公开的图片标记工具LabelMe[23]。为了提高模型的泛化能力以及模型的鲁棒性,数据集进行了数据增强。在数据增强之前,随机选取100 张图片作为测试集。使用Python 的Augmentor 库对每张图片在-45°~45°间进行随机旋转,然后随机左右翻转、上下翻转。最后扩增图片数量为原来的48 倍,总共19 200 张图片。原始数据集包括标签可从链接https://github.com/Juting-HUANG/Power-Line-Dataset下载。

本文使用WireDataset 测试集评估提出的模型。另外选取了Zhang等[20]制作的山地背景电线数据集中170张图片,重新标记作为测试集,命名为PLDM(Power Line Dataset of Mountain scene),用来评估模型在不同源数据集上的性能。

2 本文方法

2.1 网络结构

本文提出的模型采用编码-解码的U型结构,整体结构如图2 所示,其中编码部分网络参考VGG-16[3]网络结构,VGG-16 由13 层卷积层、5 层下采样最大池化层以及3 层全连接层组成。为了适用于移动端运行,对整体网络结构进行了如下调整:1)保留了前4 个模块;2)去除了第4 个模块的下采样层,并且每个模块只保留一个卷积层;3)减少前3个模块中卷积层的通道数至原来的1/2 以及第4 个模块卷积层的通道数至原来的1/4。进行这样的调整有以下几个原因:1)三次下采样获取的高阶特征能够满足输电线路检测的二分类分割;2)为了获取输电线路相对背景的局部特征,通道数减少的四层卷积网络已经足够深[19],并且使整体网络参数量减少为1.96 MB,同时提高了预测速度,适用于移动端运行;另外在每一个卷积层后加入批量归一化层[24],以此提升训练速度和模型性能。

图2 WireDetection整体网络结构Fig.2 Overall network architecture of WireDetection

解码部分与编码部分结构类似,相互对称,但是取消了卷积层部分的偏置以及非线性ReLU(Rectified Linear Unit)[25],以提高训练过程中的优化速度[26]。模型参考了SegNet的最大池化索引的上采样方式进行逐层恢复图像细节,利于边缘分割更加精细化[8]。

目前平台已承接全国用户规模达10 000个,300家企业及代理商接入系统平台,8个区域数据中心;全国合作运营光纤传输网络范围达到14 000多公里,覆盖全国200多个城市,目前是装备制造业中最大的分布云网络平台综合服务提供商和运营商。

最后输出的特征经过一个1×1 卷积层,获得一个2 通道特征图。经过一个softmax运算获得一个2通道的像素级别概率图用于计算加权交叉熵损失。

2.2 最大池化索引上采样

本文模型解码阶段采用最大池化索引上采样的方式。编码部分每一次进行最大池化下采样操作后,保存池化索引,然后传递到对称的上采样层。这种上采样方式只存储最大池化索引,占用很少的额外内存空间,相比转置卷积[7]的上采样方式减少了端到端训练的参数量,适用于内存资源有限的移动端设备上运行的模型;相比双线性插值的上采样方式[17],避免了边界信息的丢失,有利于电线尺寸较小结构的分割。

图3 最大池化索引上采样Fig.3 Max-pooling indices based up-sampling

2.3 加权损失函数

输电线在图片中通常很细,因此电线像素与背景像素的比例很不平衡。本文数据集中的电线像素在图像中的占比小于10%。需要修改标准的交叉熵损失公式,使用median frequency balancing 方法[27]对背景与电线的损失进行权重分配来解决图形分割中样本不平衡问题,使得网络对于占比较少的类别给予更多的关注。损失函数修改如下:

其中:C+和C-分别表示电线和背景像素的标注集合;P表示像素pc预测为相应类别的概率;w1和w2分别为电线与背景像素的权重系数。通过如下公式来计算:

其中:H和W分别表示一张图片的高和宽,N表示训练集中图片总数表示第n张图片的第i个像素,medianFreq表示所有Freqc的中位值。对于二分类分割任务,c=0或1,Nc=2 所以medianFreq的计算如下:

3 实验与结果分析

3.1 实验设置

实验中采用tensorflow 框架构建WireDetection 模型,采用NVIDIA TitanX GPU 硬件训练模型,GPU NVIDIA JetsonTX2硬件进行模型性能的测试。训练过程中使用Adam 优化算法来更新网络参数,设置初始学习率λ=0.001,模型的所有卷积层使用Xavier 初始化方法来初始化权重并设置偏置为0。批量归一化层的γ值采用期望值为1、标准差为0.002 的正态分布初始化,β值初始化为0。训练过程中,每个批次大小设置为4。

3.2 评价指标

本文使用平均交并比(mean Intersection over Union,mIoU)、类平均准确率(Class Average Accuracy,CA_Acc)、召回率(Recall,R)、精度(Precision,P)、F1 分数以及平均精度(Average Precision,AP)来定量分析模型的像素级分割效果。交并比(Intersection over Union,IoU)表示一类真实值像素集合和预测值像素集合的交集与并集的比值;平均交并比mIoU为各类交并比的平均值;召回率是被正确预测正例占所有真实正例的比例;类平均准确率为不同类别召回率的平均值;精度是被正确预测的正例占所有预测为正例的比例;F1 分数为召回率和准确率的调和平均数,通常用来衡量一个二分类模型的准确性;平均精度通过计算PR(Precision-Recall)曲线下的面积来获得,适合用来评估一个不平衡分类问题中的分类模型性能[19]。假设类别数量为n,pij表示类别为i预测为j的像素数量。所有的定量指标如下所示:

其中:TP(True Positive)表示标记为电线的像素被正确识别,FN(False Negative)表示标记为电线的像素被错误识别为背景,TN(True Negative)表示标记为背景的像素被正确识别,FP(False Positive)表示标记为背景的像素被错误识别为电线。

3.3 实验结果分析

Madaan 等[19]设计了多个针对移动端电线检测的神经网络模型,本文复现了其中运行速度最快的模型,并命名为Dilated ConvNet。除了Dilated ConvNet,实验也将WireDetection 与DeepLabv3+、SegNet 以及FCN-8s 进行对比。这些网络结构较深,能够提取更多特征信息,有较好的分割精度。将WireDetection 与这些网络进行对比,侧重于分割精度的对比,以验证本文模型不仅在移动端具有很好的运行效率,而且可以达到较好精度,也可以验证构建一个针对电线分割的模型是必要的。为了验证最大池化上采样和加权损失函数的效果,增加了对照实验。将WireDetection 中的上采样方式分别替换为双线性上采样和反卷积上采样,以及将损失函数替换为标准的交叉熵损失函数,将对照组分别命名为WDBilinear,WD-Deconv和WD-CrossEntropy。

3.3.1 定量分析

首先在WireDataset测试集上进行模型分割性能的评估,图4 展示了不同模型的PR 曲线并标记了每个模型的平均精度,WireDetection有最高的平均精度,与FCN-8s的分割性能相近。

图4 WireDataset测试集上的PR曲线Fig.4 PR curves on test set of WireDataset

不同模型的评价指标值如表2 所示。为了进一步探究本文建立数据集的丰富性和模型的泛化性,模型经过WireDataset 训练集训练后,也在PLDM 上进行了分割性能的测试,如图5和表3所示。

从图4和图5可以看出,所有测试的模型在不同源数据集上的性能有所下降,但是WireDetection 和FCN-8s 相比其他模型依然有更好的分割性能。

图5 PLDM上的PR曲线Fig.5 PR curves on PLDM

从表2 和表3 可以看出,WireDetection 在不同测试集上达到的精度、F1 分数和mIoU 均要略低于分割性能最好的FCN-8s。但是如表1所示,FCN-8s模型参数量为420.75 M,远大于WireDetection 的1.47 M 参数量。DeepLabv3+和FCN-8s 占用过多内存而无法在Jetson TX2 上运行,不适用于移动端的电线检测任务。另一方面,相较于针对电线语义分割的模型Dilated ConvNet,WireDetection 的分割效果更好并且运行速度最快,是Dilated ConvNet的两倍,达到8.2 frame/s。

表1 不同模型的预测速度和参数量Tab.1 Detection speed and number of parameter of different models

表2 不同模型在WireDataset测试集上的定量评估Tab.2 Quantitative assessment of different models on test set of WireDataset

表3 不同模型在PLDM上的定量评估Tab.3 Quantitative assessment of different models on PLDM

本文模型相较于采用双线性插值上采样和采用标准交叉熵损失函数,在同源和非同源数据集上都有更好的分割表现;相较于采用反卷积上采样,分割性能相近,但是预测速度更快且参数量更少。实验结果表明,本文采用的上采样方式和损失函数更加适用于输电线的分割。

3.3.2 定性分析

图6 展示了模型在WireDataset 测试集上的部分分割结果。WireDetection 能够很好地分辨出低对比背景下或有相似物体如汽车和房屋边缘背景下的电线。可以发现,图中识别得到的部分电线出现中断,这是由于卷积核提取的是局部特征信息,当电线某一部分所处的背景对于电线识别干扰较大时,比如相近颜色的汽车或者地面上相似的裂缝在背景中,会产生局部像素分类的偏差,从而出现电线的部分中断。

图6 WireDetection测试集分割结果Fig.6 Segmentation results on test set of WireDetection

图7 展示了模型在PLDM 上的部分分割结果。相较于使用双线性上采样的DeepLabv3+以及WD-Bilinear,使用最大池化索引上采样的WireDetection 和SegNet以及反卷积上采样的FCN-8s 和WD-Deconv 对细小结构的分割更加准确。因为图片是在无人机相距电线上方约30 m 的距离采集的,电线在图片中很细,但是WireDetection 和FCN-8s 依然能够较好地识别出电线。相比Dilated ConvNet,WireDetection 的错误识别像素更少。WireDetection 能够在移动端达到较好的识别速度的同时,保持较好的分割精度。图7 能看出,采用标准交叉熵损失函数训练的WD-CrossEntropy 泛化性能较差,不能在非同源数据集上有效分割电线。

图7 PLDM分割结果Fig.7 Segmentation results on PLDM

但是由于测试集PLDM 中部分与电线颜色相近的背景如树枝等的图片未在训练集中出现,分割结果中错误的正例(FP)增加,精度下降。如图6 所示,WireDetection 能够很好地区分WireDataset 的测试集中与电线相近的背景,表明WireDetection 模型具有较好的学习能力。因此,当训练集中扩充足够多的学习样本后,WireDetection 模型对于相似背景的分割精度会逐渐提升。

4 结语

针对传统数字图像技术检测电力线精度较低和现有神经网络电线检测方法效率不高的问题,本文提出了一个适用于移动端识别输电线路的语义分割神经网络。该模型采用了U型的编码与解码结构,编码部分采用最大池化层提取高阶特征,解码部分采用最大池化索引的非线性上采样方式逐层融合多尺度特征,网络整体结构精简。采用加权损失函数解决电线像素与背景像素不平衡的问题,提高模型的优化性能。本文构建了拥有多种复杂背景的电线数据集WireDataset,重新标注了山地背景的公开数据集作为额外的测试集。相较于现有的电线语义分割模型,本文模型对输入图片预测速度有很大提升,并且有更好的分割性能,可以用于移动设备的实时电线分割。本文模型在不同源数据集上,分割性能有所下降,接下来需要进一步扩充训练集,并开展电线的定位工作,将使用多视角定位方法获取与电线距离。

猜你喜欢
电力线电线卷积
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
从一名电线工到副总统,都是他妻子的运筹帷幄
这两个分数一样吗
1000条蛇守卫电线
基于电力线信道分析的调制解调方式选择
地上电线不要碰
跨越电力线施工方案的优化