基于改进的YOLOv3 接触网鸟巢检测与识别
2021-09-15屈志坚高天姿
屈志坚,高天姿,池 瑞,杨 行
(华东交通大学电气与自动化工程学院,江西 南昌 330013)
接触网是电气化铁路的动力输电网络, 接触网稳定的工作状况与铁路安全稳定运行密切相关[1-2]。 鸟类在接触网上筑巢已不罕见,若不及时发现并处理鸟巢, 容易引起输电线路跳闸或绝缘子击穿等, 对铁路运输安全稳定运行造成严重威胁[3]。传统检测识别鸟巢的方式是人工检测法[4],即采用人工对车载视频进行标记, 该方法费时费力且效率较低。
近几年,随着计算机图像技术的发展,利用图像处理技术对拍摄的车载视频进行自动检测,能提高接触网故障检测的效率。 祝振敏等[5]针对鸟巢的结构特性, 对接触网上疑似鸟巢区域进行粗提取,得到鸟巢可能存在的关键区域, 再利用HOG 特征和分类器训练对鸟巢进行精确提取。 金炜东等[6]分析鸟类筑巢特点,针对杆塔的中上部、图片中最前景的硬横梁结构,提出一种基于相对位置不变性的接触网鸟巢识别检测。 罗婷婷等[7]通过分析发现接触网图像中正常数据与异常数据样本数量存在严重的不平衡,针对鸟巢的检测问题,提出利用双判别器生成对抗网络来解决鸟巢样本数据不平衡问题。 上述方法均能够检测到接触网上的鸟巢,但存在如对于遮挡问题性能不太稳定;或在鸟巢检测前需要设定阈值;阈值的选择影响鸟巢的检测结果等问题。近年来,以卷积神经网络为基础的深度学习目标检测算法主要分为一阶段检测和二阶段检测[8-9]。FasterR-CNN[10]等是基于目标候选框思想的二阶段检测,SSD[11],YOLO[12]等是基于回归思想的一阶段检测,具有更高的检测速度。
在接触网鸟巢的检测上,改进的YOLOv3 算法与目前比较热门的SSD、RetinaNet[13]等算法相比,有更高的检测精度。
1 鸟巢图像预处理
鸟巢图像预处理主要包含灰度化, 小波去噪,维纳滤波,数据增强4 个阶段,其中灰度化是鸟巢图像预处理的首要步骤。 小波去噪,维纳滤波,数据增强各阶段顺序不影响,可独立完成对鸟巢图像检测。由于拍摄到的鸟巢图像是彩色图像,每个像素点有2563个颜色变化区间, 若直接对彩色图像处理,计算量大且训练速度慢。 将鸟巢图像灰度化后,计算量大大减小[14-15],且仍能反映图像亮度等级分布以及整体和局部色度。 本文采用平均值法对鸟巢图像进行灰度化处理, 将彩色的鸟巢图像RGB 三分量取均值作为灰度图的灰度值。 平均值灰度化结果图如图1 中平均值灰度化结果图所示。
列车车载摄像机在拍摄过程中由于受到环境影响, 导致采集到的鸟巢图像具有各种类型噪声。为了将无效的噪声信号过滤掉,本文采用小波阈值去噪, 其中阈值的选择主要有硬阈值和软阈值函数[16],如图1 软硬阈值去噪结果图所示,分别为软硬阈值的去噪效果。
列车的高速行驶导致车载摄像机拍摄到的鸟巢图片存在一定程度的运动模糊,需要将带有运动模糊的鸟巢图片复原成原始图像。 采用维纳滤波方法,使得恢复后的鸟巢图像与最初不带运动模糊的鸟巢图像间均方误差最小。 维纳滤波的传递公式为
式中:H*为分母的复共轭;Z 为噪声功率谱;S 为原图像功率谱。 结合式(1)可以得出
式中:Q^为去掉运动模糊后的图像做傅里叶变换。
利用维纳滤波去除运动模糊的结果图如图1(f)所示。
一般来说,拍摄到的高铁接触网鸟巢图像仅占很少一部分,若直接对样本数量如此匮乏的鸟巢图像进行训练,神经网络易出现过拟合现象,即出现在训练集上效果好,而对于未参与训练的数据集上效果不好。 数据增强在一定程度上能避免过拟合现象的产生,基于此,采用数据增强[16]方法增加鸟巢数据集。 部分扩增结果如图1(f)~图1(h)所示。
图1 鸟巢图像预处理结果图Fig.1 Bird nest image preprocessing result map
如图1 所示,经灰度化后的鸟巢图像与原始图像相比仍能反映鸟巢的形状特征、边缘特征;经过软硬阈值小波去噪处理后的鸟巢图像显示,软阈值去噪后的图像更平滑,去噪效果更好;维纳滤波结果图与原图相比,能够将拍摄高铁接触网鸟巢图像的过程中产生的运动模糊过滤; 数据增强采用翻转、旋转、改变亮度对比度等方式增加鸟巢数据集数量。
2 深度学习结构
2.1 深度学习算法原理
典型的深度学习模型有卷积神经网络、深度信任网络、堆栈自编码网络三类模型。 卷积神经网络在计算机视觉等领域取得了很好的效果。 一般的卷积神经网络结构主要包含卷积层、池化层、全连接层,基本结构如图2 所示。
图2 卷积神经网络的基本结构Fig.2 Basic structure of convolutional neural network
高铁接触网鸟巢图像经卷积神经网络输入层并传递给卷积层, 卷积层利用卷积核从上到下,从左到右对输入鸟巢图像进行卷积操作,能够提取数据的抽象特征和边缘特征;池化层能够对数据进行降维,对特征进行压缩,减少参数量;全连接层综合提取到的特征并映射为固定长度向量,一般包含类别概率及坐标位置等。 本文使用的深度学习算法首先直接将图片作为输入, 将图片分割为G×G 个单元格,在每个单元格上通过边界框预测,最终输出每个边界框预测的目标概率和坐标,包含边界框的横坐标,纵坐标,宽度,高度以及类别的共5 个置信度信息,分别用ax,ay,aw,ah,aconf表示,其中置信度aconf如下所示
若目标中心落在某一块单元格内部,则由该单元格预测该目标,以这个单元格为中心生成多尺度先验框,比对先验框与真实框的交并比选择最合适尺度的先验框进行尺度缩放和平移边界框来判断物体的位置。 记边框预测值为(px,py,pw,ph),目标中心在单元格中相对于图像左上角偏移量为(sx,sy),同时先验框具有宽度和高度 (Aw,Ah), 则修正后(amend)的边框为
2.2 深度学习网络结构
本文使用的深度学习算法YOLOv3 网络模型以卷积神经网络作为基础结构,主要由特征提取模块DarkNet-53[17]、FPN(feature pyramid network)组成[18]。其中,特征提取模块DarkNet-53 共含有53 层卷积层, 除去最后一层由1×1 卷积组成的全连接层。网络整体结构如图3 所示。
图3 YOLOv3 网络整体结构Fig.3 The overall structure of the YOLOv3 network
增强后的鸟巢图片尺寸为640×640, 首先经过Reshape 将尺寸统一到416×416 后再输入到Darkenet-53 网络模型中。 经过Darknet-53 结构将后3个残差模块输出的特征图输入到FPN 中。其中,13×13 的特征图经过5 次卷积输入到检测网络中,再将该特征图经过一次卷积和上采样与26×26 的特征图拼接融合,将融合后的特征图经过5 次卷积输入到检测网络中,再将该特征图经过一次卷积和上采样与52×52 的特征图拼接融合,经过5 次卷积输入到检测网络中。 最终检测网络输出52×52,26×26,13×13 特征图分别适合检测小目标, 中等目标,大目标鸟巢。
3 改进的深度学习算法
3.1 引入空间金字塔池化处理
由于高铁接触网鸟巢图像的鸟巢目标轮廓不清晰,降维过程易发生信息丢失等问题,鸟巢图像在预处理和多尺度预测过程中,存在拉伸成固定尺寸等操作导致信息失真影响后续检测结果。 为了解决这个问题,引入空间金字塔池化。 空间金字塔池化的网络结构图如图4 所示。
图4 空间金字塔池化处理模块Fig.4 Spatial pyramid pooling module
空间金字塔池化处理模块如图4 所示。 经5 次残差模块后,鸟巢的输入图像尺寸从416×416×1 变成13×13×1 024,为了提取到鸟巢的多尺度信息,在经过3 次卷积后,对特征图进行分块池化,本文选择的池化核为5,9,13,其中为了不使输入特征图尺寸发生变化,采用步长为1 且填充的池化方式。 经过3 个不同尺度的池化操作后的特征图和原始全局特征图融合后能够获得更多特征,消除由于鸟巢尺寸大小不一样导致有效信息不一致的影响,有助于提高对鸟巢的检测精度。
3.2 广义交并比及其损失函数
目标检测常把均方误差作为损失,但又使用交并比(IoU)[19]即真实框与预测框的交并比来衡量预测结果的好坏,模型对两者的优化并不等价,当真实框与预测框的均方误差损失相等时,两者交并比并不一定相等。 同时交并比能被反向传播,若把交并比作为损失函数直接被优化即直接优化评价指标比选择替代的损失函数好。 但交并比有两个缺点:①当真实框与预测框不相交时,交并比为0,此时梯度也为0,无法进行优化;②若真实框与预测框不相交时,如图5 所示,两者不相交,交并比为0,但无法反映哪个预测结果更好。
图5 交并比为0 时两种可能的情况Fig.5 Two possible situations when IoU is 0
如图5 所示,虽然绿色的真实框与黄色预测框都不相交, 但明显左边的预测框与真实框距离更近,预测效果更好。
为了更好的评价预测框的质量,本文利用GIoU(Generalized IoU,GIoU,令为GIoU)即广义交并比作为新的预测框与真实框的距离的评价方法。GIoU 不仅关注真实框预测框交集,也关注两者并集,更能评价两者重叠关系。
GIoU 评价方法的计算步骤为:
1) 计算真实框与预测框的面积分别用TT、TP表示;
2) 计算两者交集TT∩TP和并集TT∪TP;
3) 找到包含真实框与预测框的最小框,并计算其面积大小,用Tmin表示;
这种评价方式当真实框与预测框不相交时,也能进行优化,改善了当IoU 为0 时难以优化的问题。
4 实验分析
4.1 实验环境的配置
本文使用Pytorch 平台进行鸟巢检测识别,使用GPU 加速,实验环境配置如表1 所示。
表1 实验环境配置Tab.1 Experimental environment configuration
4.2 网络的训练及测试
针对某高铁接触网鸟巢图像,经6 种数据增强方法后得到的鸟巢图像共716 张, 其中训练集共585 张,验证集70 张,测试集61 张。 将鸟巢图片尺寸归一化至640×640 像素。 根据实验需求将鸟巢数据集标注为数据格式并保存。 模型训练开始阶段将学习率设置为0.001,在step 模式下更新学习率,训练迭代次数达到7 000 次时学习率下降为初始学习率的10%,训练迭代次数达8 000 次时,学习率降为初始学习率的1%。 训练过程对损失函数值进行记录。
如图6 所示,损失随迭代次数增加逐渐趋于稳定,GIoU 损失达到3.5 左右基本不超过4,Objectness 损失达到0.1 左右基本不超过0.25。 根据曲线收敛情况所示,9 000 次训练后可停止迭代。
图6 损失变化曲线图Fig.6 Loss change graph
在高铁接触网鸟巢图像检测中,网络模型精度与召回率可由下列两个公式计算得出。
式中:P 表示网络模型精度;R 表示召回率;nTP表示鸟巢被正确框出的数量;sum1表示所有被框出数量的总和;sum2表示图片中鸟巢的数量总和。 平均精度均值mAP 是衡量模型在不同类别中检测效果的重要指标,计算方法为
式中:num(class)表示图像检测类别数目总和;AP(average precision) 表示精度与召回率关系曲线的有限积分值,与模型整体表现呈正相关。 改进后的YOLOv3 网络在接触网鸟巢数据集上鸟巢检测的AP 曲线如图7 所示。
图7 改进后的YOLOv3 网络在鸟巢数据集上的AP 曲线Fig.7 AP curves of the improved YOLOv3 network on the bird nest dataset
如图7 所示,改进后的YOLOv3 网络在鸟巢数据集上的AP 达到95.1%。 mAP 是AP 在不同类别下的均值,在本文单一类别数据集中,可作为鸟巢检测的评价指标。 测试结果如表2 所示。
由表2 可知,基于层数50 层的RetinaNet 算法的鸟巢检测,mAP 达到65.7%,基于SSD300 算法的鸟巢检测,mAP 达到90.2%, 原始YOLOv3 算法在鸟巢上的检测,mAP 达到90.4%,改进的YOLOv3算法在鸟巢上的检测,mAP 达到95.1%。 结果表明,改进的YOLOv3 算法与层数50 层的RetinaNet 算法、SSD300 算法相比,在接触网鸟巢上的检测有更高的平均准确度。
表2 不同检测算法在本文数据集上的检测结果Tab.2 Detection results of different detection algorithms on the dataset in this paper
用改进后的YOLOv3 网络对高铁接触网鸟巢图片进行测试,部分检测结果如图8 所示。 检测结果显示,在高铁接触网复杂背景下,改进的YOLOv3网络能检测到部分不清晰、有遮挡的鸟巢,对于远距离、部分形状较小的鸟巢也能检测到,具有较好的泛化能力。
图8 改进后的YOLOv3 网络在接触网鸟巢数据集上的测试结果Fig.8 Test results of the improved YOLOV3 network on the Catenary Nest dataset
4.3 接触网鸟巢特征图的提取与转换
卷积神经网络由多个卷积层组成,每个卷积层利用卷积核对图像进行卷积运算, 得到特征图,每层提取的特征不同。 浅层卷积层提取较为局部、细节的信息,高层卷积层感知图像更复杂、抽象的信息。 通过对部分卷积层输出的鸟巢图像特征图的分析,得到卷积神经网络对鸟巢信息的提取过程。 如图9 所示。
可以看出,神经网络对鸟巢图像的信息提取过程与人认知图像相似。 人在认知图像时先感知图片亮度信息与颜色信息,再是边缘、轮廓等局部细节,然后是纹理特征等更加复杂的信息,最后将所有信息综合形成整体的概念。 如图9 所示,神经网络先对杆塔边缘仔细辨认,突出夹角位置,随着网络层数加深, 将杆塔与背景分开并寻找目标可能的重点部位。
图9 卷积层输出特征图Fig.9 The convolutional layer outputs the characteristic graph
5 结论
该文基于Pytorch 平台使用以卷积神经网络为基础的深度学习模型,对高铁接触网鸟巢图像进行检测与识别。
1) 前期对鸟巢图像的去噪处理,能有效降低各种噪声对鸟巢目标的干扰,突出鸟巢目标;数据增强能提高鸟巢样本数目,一定程度上解决了神经网络出现过拟合问题。
2) 将空间金字塔池化与改进的深度学习模型结合,有效提高对鸟巢的多尺度特征信息,同时引入广泛交并比作为损失函数, 与均方误差相比,直接将评价真实框与预测框距离的方法作为损失函数,改善了IoU 作为评价方法时,真实框与预测框不相交无法优化的问题,更适合作为损失函数进行优化。
3) 与传统检测鸟巢的方法相比,该方法检测鸟巢精度更高,有更高的检测速度,能在复杂的接触网背景下较好的识别检测鸟巢,对接触网鸟害的处理有重要意义。