近年来随着经济社会的高速发展, 社会用电需求迅猛增长, 电力设备数量逐年增多, 电网的规模扩大, 电力供应的可靠性变得尤为重要. 电力设备长期运行, 长期缺乏及时的维护检修, 设备出现锈蚀缺陷问题, 存在安全隐患, 导致设备运行故障. 一旦设备发生故障, 就会影响整个电力系统正常运行, 将会严重影响生产生活, 造成不可估量的经济损失. 及时发现设备上发生的锈蚀缺陷并进行及时处理, 将大大降低危害, 保障电网安全稳定运行[1].
目前主要利用无人机和巡检机器人, 对输变电设备运行全天候巡检, 进行视频图像数据采集. 然而, 采集回的图像数据, 仍然需要依靠人工观测, 逐张查找设备上是否存在锈蚀问题. 采用人工观测的方式虽然能够发现设备上的锈蚀问题, 但是存在检测效率低下, 不能及时的进行反馈, 并且人力成本高, 因此, 研究一种用于电力设备锈迹检测的智能识别具有重要意义[1].
最初的图像识别算法在设备缺陷检测中, 主要针对边缘、轮廓等特征进行提取. 如文献[2]利用图像匹配和形态学运算方法, 文献[3]利用随机Hough变换检测实现对防震锤的检测. 文献[4]利用Otsu算法对Canny算子进行改良来提取图像边缘, 实现障碍物的检测识别. 以上方法能够检测出设备中的缺陷目标, 但是在应用中较容易受光照等外界条件的影响, 导致目标检测的有效性不理想.
近年来, 深度学习在目标识别检测方面表现突出. 2012年在ILSVRC竞赛上基于深度学习CNN网络的AlexNet取得突破性成果[5], 2014年Girshick在卷积神经网络的基础上设计出了R-CNN模型[6], 以此为契机点, 不断地对R-CNN进行改进, 出现了具有代表性的R-CNN系列算法: SPPNet[7]、Fast R-CNN[8]、Faster R-CNN[9]、Mask R-CNN[10]等. 本文中利用Mask R-CNN算法对电力设备上的锈迹目标进行识别分割[11]. 获得国家电网变电站内部图像数据, 利用labelme进行样本标注, 采用ResNet50[12]作为基准网络结构, 通过训练模型实现电力设备锈迹检测.
1 Mask R-CNN网络结构Mask R-CNN网络结构如图1[10]所示, 主要分为Faster R-CNN、RoIAlign、FCN三个模块. Mask R-CNN在Faster R-CNN的基础上进行改进, 用RoIAlign代替RoIPooling, RoIAlign采用双线性插值法代替RoIPooling的取整量化, 减小误差, 完成像素级的对齐; 在候选对象RoI上添加了第三个分支用于预测分割掩码的分层, 称为掩码层(mask branch). Faster R-CNN算法为每个候选对象RoI的基础上增加了FCN来产生对应的MASK分支, 目标检测分割的效果良好, 并且训练简单.
1.1 Faster R-CNN网络结构简介Faster R-CNN是由Ross Girshick提出的, 由区域建议网络(RPN)和Fast R-CNN两部分组成[13]. RPN代替了Fast R-CNN中的Selective Search(SS), 节省了区域建议检测的时间, 实现建议区域的确定; Fast R-CNN对RPN生成的每个建议区域的分类概率进行预测判断, 优化建议区域的偏移量, 从而获得精准的目标位置.
1.2 RoIAlign层
在Fast R-CNN、Faster R-CNN等两级检测框架中, 使用RoIPooling根据预选框的坐标在特征图相应的位置池化为固定尺寸的特征图, 再进行分类和包围框回归操作. 而预选框的位置通常是由模型回归得到的, 一般都是浮点数, 而池化后的特征图要求尺寸固定. RoIPooling首先将预选框边界量化为整数点坐标值; 其次将量化后的边界区域平均分割成n×n个单元, 对每个单元的边界进行量化的两次量化过程. 经过两次量化, 就会出现候选框与最开始回归出来的位置存在偏差, 影响检测分割精度.
为了能够提高检测分割精度, 解决RoIPooling存在的问题, Mask R-CNN提出了RoIAlign方法[14]. 取消RoIPooling量化操作: 遍历每一个候选区域, 保持浮点数边界不做量化, 将候选区域分割成n×n个单元, 每个单元的边界不做量化; 使用双线性内插方法: 最后在每个单元中计算固定四个坐标位置, 使用双线性内插的方法计算出这四个位置的值, 然后进行最大池化操作.
在反向传播过程中, 常规的RoIPooling的反向传播公式如式(1)所示.
$\frac{{\partial L}}{{\partial {x_i}}} = \sum\limits_r {\sum\limits_j {{\rm{[}}i = {i^{\rm{*}}}(r,j)]} } \frac{{\partial L}}{{\partial {y_{rj}}}}$ | (1) |
其中,
RoIAlign与RoIPooling的反向传播相比较进行相应的修改,
$\begin{array}{c} \dfrac{{\partial L}}{{\partial {x_i}}} = \sum\nolimits_r {\sum\nolimits_j {[d(i,{i^*}(r,j)) < 1]} } \\ (1 - \Delta h)(1 - \Delta w)\dfrac{{\partial L}}{{\partial {y_{rj}}}} \end{array} $ | (2) |
其中, d(.)表示两点之间的距离, Δh和Δw表示
FCN[15]对图像进行像素级别的分类, 从而实现语义级别的图像分割问题. FCN是一个端到端的网络, 使用反卷积对最后一个卷积层的特征图进行上采样, 不断扩大特征图, 直至恢复到与输入图像尺寸相同, 对每一个像素值进行分类, 从而实现对输入图像的准确分割.
Faster R-CNN为每个候选对象RoI提供两个输出, 一个类标签, 一个边界框偏移量, Mask R-CNN并行添加了第三个分割mask的分支, mask分支是应用到每一个ROI上的一个小的FCN(Fully Convolutional Network), 用FCN从每一个RoI中预测出一个m×m大小的mask, 这使得mask分支中的每个层能够明确的保持m×m空间布局, 而不将其折叠成缺少空间维度的向量表示.
2 图像预处理与训练 2.1 图像预处理本文数据集是无人机和巡检机器人采集到的图片, 有锈蚀的设备数量不是很多, 学习样本相对较少, 在训练的过程中容易出现过拟合现象, 因此使用数据增强方法, 通过图像水平/竖直翻转, 图像缩放, 图像旋转等方法从现有的训练样本中生成更多的训练样本, 达到增强样本的目的, 从而降低过拟合. 将训练样本统一缩放至1920×1080, 设备锈迹样本示例如图2所示. 数据集总量为5000张, 4000张作为训练集, 1000张作为测试集. 使用labelme标注数据集, 每一张图片都会产生一个JSON文件, 存放绘制点的坐标信息.
2.2 网络训练
本文的实验平台为Ubuntu14.0, 实验环境: CPU为Intel Core i7-6700 k, 4.00 GHz×8, GPU为GeForce GTX 1070.
相较于Faster R-CNN增加了mask分支, 那么每个RoI的Loss函数如式(3)所示.
$L = {L_{cls}} + {L_{box}} + {L_{mask}}$ | (3) |
经过多次分析比较, 对原模型中的参数进行调整, 迭代学习率设置为0.001. 动量和权重衰减因子使用经验值0.9和0.0005.
3 实验结果与分析本文做了Faster R-CNN和Mask R-CNN的对比实验, 测试结果如图3所示. 其中图3(a)为Faster R-CNN检测结果, 图3(b)为Mask R-CNN检测结果. 由于锈迹没有规则的大小、形状, Faster R-CNN缺乏对目标像素的描述, 造成一些具有局部特征的非目标被判断为目标, 因此对锈迹进行检测, 存在漏检、误检现象; Mask R-CNN添加了mask层, 可以实现像素级别的分类, 表现出良好的检测效果.
本文中对1000个样本进行测试, 获得了Faster R-CNN和Mask R-CNN检测一张图片所用的时间和准确率对比结果, 如表1所示.
从表1中的实验结果可以看出, Faster R-CNN的检测速度比Mask R-CNN快, 在识别准确率上Mask R-CNN加入了mask分支, 并且使用了像素级的Sigmoid函数和二进制交叉熵损失, 在准确率方面有显著提高, 达到94%.
4 结论本文针对电力设备无规则锈迹的检测, 采用Mask R-CNN的模型方法, Mask R-CNN在每一个RoI上添加了掩模分支, 实现像素级别的分类, 取得了较好的检测效果. 本文认为可以进行的改进是加强样本的数量和质量, 因为训练样本的规模和质量影响着模型性能的优劣, 训练集规模越大, 质量越高训练的模型的性能越优秀. 从改进数据的数量和质量提高模型的准确性和泛化能力, 从而识别效果更好.
[1] |
汤踊, 韩军, 魏文力, 等. 深度学习在输电线路中部件识别与缺陷检测的研究. 电子测量技术, 2018, 41(6): 60-65. |
[2] |
金立军, 胡娟, 闫书佳. 基于图像的高压输电线间隔棒故障诊断方法. 高电压技术, 2013, 39(5): 1040-1045. DOI:10.3969/j.issn.1003-6520.2013.05.003 |
[3] |
陈晓娟, 吴英石, 赵亮. 基于随机Hough变换的OPGW防震锤识别. 黑龙江电力, 2010, 32(1): 1-2, 5. DOI:10.3969/j.issn.1002-1663.2010.01.001 |
[4] |
胡彩石, 吴功平, 曹珩, 等. 高压输电线路巡线机器人障碍物视觉检测识别研究. 传感技术学报, 2008, 21(12): 2092-2096. DOI:10.3969/j.issn.1004-1699.2008.12.028 |
[5] |
Krizhevsky A, Sutskever I, Hinton GE. ImageNet classification with deep convolutional neural networks. Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe, NV, USA. 2012. 1097–1105.
|
[6] |
Chen CY, Liu MY, Tuzel O, et al. R-CNN for small object detection. In: Lai SH, Lepetit V, Nishino K, eds, et al. Computer Vision - ACCV 2016. Cham: Springer, 2016. 214–230.
|
[7] |
Purkait P, Zhao C, Zach C. SPP-Net: Deep absolute pose regression with synthetic views. arXiv:1712.03452, 2017.
|
[8] |
Girshick R. Fast R-CNN. Computer Science–IEEE International Conference on Computer Vision (ICCV). 2015. 1440–1448.
|
[9] |
Ren SQ, He KM, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks. Proceedings of the 28th International Conference on Neural Information Processing Systems. Montreal, Canada. 2015.
|
[10] |
He KM, Gkioxari G, Dollár P, et al. Mask R-CNN. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018. DOI:10.1109/TPAMI.2018.2844175 |
[11] |
韩元荣. 基于场景分析的目标检测技术研究[硕士学位论文]. 长春: 长春工业大学, 2012.
|
[12] |
Wu ST, Zhong SH, Liu Y. Deep residual learning for image steganalysis. Multimedia Tools and Applications, 2018, 77(9): 10437-10453. DOI:10.1007/s11042-017-4440-4 |
[13] |
韩凯, 张红英, 王远, 等. 一种基于Faster R-CNN的车辆检测算法. 西南科技大学学报, 2017, 32(4): 65-70, 94. DOI:10.3969/j.issn.1671-8755.2017.04.012 |
[14] |
吴金亮, 王港, 梁硕, 等. 基于Mask R-CNN的舰船目标检测研究. 无线电工程, 2018(11): 947-952. DOI:10.3969/j.issn.1003-3106.2018.11.08 |
[15] |
Dai JF, Li Y, He KM, et al. R-FCN: Object detection via region-based fully convolutional networks. Proceedings of the 30th International Conference on Neural Information Processing Systems. Barcelona, Spain. 2016. 379–387.
|