水电站溢流坝表观裂缝损伤智能检测方法研究
2021-07-01冯春成李永龙王皓冉
冯春成,张 华,,汪 双,李永龙,王皓冉
(1.西南科技大学 信息工程学院,绵阳621000;2.清华大学 四川能源互联网研究院,成都610000)
溢流坝是水电站重要的泄洪基础设施,受地震、洪涝、气候变化以及长期服役的影响,坝面易于形成裂缝损伤。定期的坝面结构安全检测是保障水电枢纽工程健康稳定运行的重要任务。根据裂缝的形态和表观特征,可以推断出裂缝演变的潜在原因,为结构健康诊断提供合理的指导。实际工程应用中,人工搭设脚手架、高空吊篮等方式仍然是坝面结构安全巡检常用方法,但这些传统方法存在高风险、耗时长、成本高的问题,且根据人眼来判断裂缝损伤的方法存在主观性强、准确率低的问题。近年来,随着智能化、信息化以及人工智能技术的发展,在学术界涌现了大量的多学科交叉与融合的裂缝检测方法[1-5]。文献[6]研究了使用小型无人机采集混凝土建筑物裂缝图像,并验证了使用深度卷积神经网络进行裂缝分类的可行性。不可否认,这些方法实现了具有竞争优势的裂缝分类准确率,但对于裂缝检测而言,获得裂缝定位是必要的。基于目标区域选择的深度学习方法也被用于裂缝检测;文献[7]同样采用无人机系统检测桥梁表面裂缝,通过基于区域卷积迁移网络实现裂缝的目标框定位;文献[8]提出了基于Fast-RCNN[9]框架的区域选择多类别损伤检测方法,该方法实现了多类别损失目标实时定位。尽管基于区域选择的深度卷积检测方法能够实现较高的裂缝定位精度,但是这些方法仅能实现大范围目标定位,无法实现精细化定位。为了获得更精准的裂缝像素定位,基于全卷积网络的语义分割检测方法被用于裂缝分割[10];文献[11]提出了一种基于深度卷积编解码网络的道路裂缝像素检测方法,该方法的编码器由残差卷积层组成以提取裂缝语义特征,解码器由反卷积层组成用于输出裂缝像素位置。
综上所述,各类改进的深度学习方法已应用于不同基础设施的裂缝检测,但用于检测水电枢纽溢流坝表观裂缝的研究相对较少。坝面裂缝图像存在背景纹理复杂、非结构化等挑战,人工获取坝面图像的方法存在风险高、效率低以及传统裂缝检测方法的检测精度偏低和实时性差等问题。
本文搭建了具备长续航能力的系留无人机感知系统,并在嘉陵江流域某水电站溢流坝采集了图像数据。同时基于语义损伤检测网络(SDDNet)[12]提出了改进的坝面裂缝损伤检测方法。改进的核心之处为在编码器与解码器之间引入空间注意力和通道注意力模块以提升模型对感兴趣区域的关注度;同时采用非对称卷积代替传统卷积操作以减小模型参数量,从而提升模型的实时推理能力。最后通过实验分析验证了本文提出方法的可行性。
1 系留无人机感知系统
1.1 无人机系统
大坝等水电枢纽的作业环境复杂,处于半封闭的狭窄空间,人工巡检的风险系数大等特点,该场景中的GPS 信号弱,无法为无人机提供稳定可靠的定位信息。同时当前现有无人机的续航能力不足,无法在复杂因素多、作业范围广的坝面上采集坝面图像。因此本文研发了系留无人机感知系统。该感知系统上配置了多种传感器,如IMU,Real Sense T265 双目定位摄像头等设备用于实现无人机稳定飞行,全方位云台高清相机用于采集坝面图像并获得环境视野,采用PIXHAWK 作为飞行控制的核心模块。充分考虑到了坝面作业环境的特殊性,该系统的无人机本体采用了四轴八旋翼结构。为保障无人机具有较高的安全性,设计了圆形双层的保护罩,同时在结构设计上确保系留供电接口以防止飞行过程中桨叶缠绕到系留线缆。无人机系统组成如图1所示。
图1 无人机系统组成框图Fig.1 Block diagram of UAV system composition
无人机本体的结构参数如下:轴距为1000 mm;长宽均为80 cm;高度为50 cm;重量为3.7 kg;负载能力为2 kg;悬停精度为0.3 m;工作电压为24 VDC;抗风能力为8 m/s。
1.2 系留线缆机构
系留线缆机构由绕线机及系留线缆组成,其主要作用是为无人机提供持续的电能,提升无人机的巡航能力,确保能够长时间的悬停和飞行作业,并高效地完成图像采集任务。
绕线机是系留线缆机构的关键组成部分,用于系留线缆的有效释放和回收排线,确保线缆均匀的分布在绕线机线盘上且不相互缠绕。通过研究分析,为实现稳定可靠的且具有一定控制精度的张力控制,采用磁粉离合控制方式进行线缆张力控制。当电机保持转动时,通过调节激磁电流的大小控制输出张力大小。为覆盖整个溢流坝的纵向深度设计系留线缆的长度为100 m,工作电流为2 A。
1.3 采集装置
采集装置的作用为获取坝面图像,该装置由高清云台相机、无线图传、便携式控制台组成。云台相机和图传发射机装配在无人机底部中心位置,地面端便携式控制台通过接收机获取图像。为获取高清图像,实现毫米级精度裂缝检测,根据无人机距离溢流坝坝面的安全距离及采集图像的精度需求,分析了相机的需求参数,最终搭载的AJ-12014X 云台相机,详细的参数如表1所示。
表1 采集装置指标参数Tab.1 Parameters of collecting device
1.4 溢流坝现场采集
本文的坝面图像采集于嘉陵江流域某水电站溢流坝。由过流面和宽尾墩组成的半封闭空间较为复杂,因此需要预设无人机巡航路径以完成重点区域的图像采集。为确保无人机的安全飞行,采用自上而下的悬吊巡航方式完成图像采集。从溢流坝坝顶廊道中间位置吊放无人机至对应过流面底部中间位置,无人机初始化后与过流面保持预设的物距,控制系留线缆机构根据无人机的飞行高度收放线缆。采集时的风速、光照会导致采集效率受到影响,最终获得800 多幅分辨率为1920×1080 的图像。溢流坝现场采集场景如图2所示。
图2 溢流坝采集场景Fig.2 Overflow dam collection scene
2 裂缝检测算法
2.1 传统SDDNet 模型
传统SDDNet 是一种实时的裂缝语义分割模型,整个模型包含编码器和解码器两大部分,其编码器由标准卷积块、稠密深度可分离卷积模块(DenSep)及空洞空间金字塔池化模块(ASPP)组成。DenSep 模块是该模型的核心,由多个深度可分离卷积堆叠而成,每个深度可分离卷积包含了一系列的逐点卷积(PW)和深度卷积(DW)。所有PW 操作的卷积核尺寸为1×1 或3×3,DW 操作的卷积核通常为3×3,核通道数为1,因此结合PW 和DW 相比传统卷积操作的参数量明显降低,从而减小了模型的大小,提升了实时检测能力。以尺寸为k×k×din特征图为例,分别采用3×3 的标准卷积和深度可分离卷积推算出相应的参数量。
式(1)表示标准卷积操作的参数量;式(2)表示由PW 和DW 组成的DenSep 操作的参数量,由式(1)和式(2)相比较可知,明显采用深度可分离卷积的参数量更少,模型的实时推理性能更好。虽然传统SDDNet 模型在常规裂缝数据集上取得了有效的成果,实现了实时裂缝语义分割。但在溢流坝面裂缝数据集上的语义分割精度及泛化能力仍然需要提升。传统SDDNet 在部分坝面裂缝数据集上的测试结果如图3所示。图中两幅裂缝图像的检测指标交并比分别为63.98%和54.2%,由图可知传统SDDNet 在背景噪声强、细节纹理特征不明显的坝面裂缝图像存在漏检、分割精度较低,其检测精度和泛化性仍需提升。
图3 传统SDDNet 坝面裂缝检测结果示例Fig.3 Example of traditional SDDNet dam surface crack detection results
2.2 改进LDCSDDNet 网络模型
本文在SDDNet 模型的基础上搭建了轻量型的坝面裂缝语义损伤分割网络模型(LDCSDDNet)。该模型参考了编码-解码器架构,其中编码器网络充分借鉴了深度可分离卷积操作以降低计算成本。具体改进措施为:修改SDDNet 标准卷积为3 层卷积,并在池化层后增加随机乱序操作以增加泛化性,将前2 个DenSep 模块中卷积层减半;剔除掉剩余DenSep 和ASPP 模块,并在DenSep 模块中设计了双通路非对称可分离卷积模块;在编码器与解码器之间引入空间注意力和通道注意力模块以提升模型对感兴趣区域的关注度,从而提升前景目标检测精度。LDCSDDNet 的整体结构如图4所示。
图4 LDCSDDNet 模型结构示意图Fig.4 Schematic diagram of LDCSDDNet model structure
图5 为图4 中的非对称可分离卷积结构框图,输入特征图被分成2 个分支通道分别进行深度可分离操作,即PW 和DW 操作。DW 采用了非对称型卷积操作以进一步减小卷积参数量。2 个分支输出特征进行级联操作,最后通过池化和随机乱序操作连接到注意力模块。
图5 非对称可分离卷积模块结构Fig.5 Asymmetric separable convolution module structure
空间与通道混合的注意力模块示意图如图6所示,该模块是受CBAM 网络[13]模型的启发搭建而成。通过在编码器与解码器之间引入通道注意力机制和空间注意力机制,使得模型可以同时从空间域和通道域获取感兴趣区域以提升前景目标的分割精度。
图6 空间与通道注意力模块Fig.6 Space and channel attention module
空间注意力模块是考虑沿通道方向,保持特征图分辨率不变的情况下同时进行最大池化和平均池化,将级联后的特征输入卷积操作提取感兴趣特征,通过sigmiod 函数获得输入特征的注意力权重参数矩阵;而通道注意力模块则是考虑从特征图空间维度方向,保持特征图通道数不变的情况下同时进行最大池化和平均池化操作,再输入1×1 卷积层提取特征,也等同于全连接层MLP 操作,最后同样使用sigmoid 函数获取注意力权重参数矩阵。
2.3 裂缝检测评估指标
本文提出的LDCSDDNet 模型最终是实现裂缝的语义分割,即对每个像素的类别进行预测。为准确评估模型检测精度的性能,采用平均像素准确率(mPA)和平均交并比(mIoU)进行评估,计算表达式如下:
其中:式(3)和式(4)中的k表示目标的类别数;TP表示预测为正样本,标签也为正样本;FN表示预测为负样本,标签为正样本;FP表示预测为正样本,标签为负样本;TN表示预测为负样本,标签也为负样本。为进行模型实时推理能力的评估,采用模型参数量(Parameters)和每秒处理的帧数(FPS)。模型参数量的计算考虑卷积核参数的总和,FPS则通过计算测试集上的平均测试时间的倒数。
式中:l表示卷积层数;分别表示第i层卷积运算的卷积核高和宽;分别表示第i层卷积运算的输入和输出通道数。
3 实验与结果分析
3.1 数据集创建
根据前文描述可知,系留无人机总共采集了800 余幅分辨率为1920×1080 图像数据。为创建高质量数据集,并充分利用有限的硬件算力资源开展实验,首先对原始图像进行筛选剔除包含无效目标的图像数据,其次把图像裁剪为608×608 大小的图像块以减轻训练的计算成本,然后采用专业标注软件LEAR 标注裂缝像素获得标签图像,随后通过随机缩放、翻转扩充数据集获得1000 幅608×608 且包含裂缝的图像块。最后,按照8∶1∶1 的比例将1000幅图像随机分为800 幅训练集、100 幅验证集及100 幅测试集。
3.2 实验环境配置
本文所有的实验均在一台图像工作站上完成,该工作站的硬件配置如下:CPU 为Inter®Xeon(R)CPU E5-2650 v4 @ 2.20 GHz;GPU 为8 G 显存的Quadro P4000/PCIe/SSE2;RAM 大小为62.8 GB。软件配置如下:训练加速库CUDA 的版本为9.1;辅助加速库CUDNN 的版本为7.1.5,采用pytorch1.1 深度学习框架搭建裂缝检测模型,使用anaconda3 建立了python3.5 虚拟环境完成网络模型的训练与测试。模型训练前,需设定超参数,其中学习率初始值设置为0.0001;批量尺寸(batchsize)设置为2;训练轮数(epoch)设置为100,每间隔30 轮将学习率衰减为当前值的0.1 倍。为确保模型稳定快速收敛,采用模型输出概率的交叉熵作为损失函数,同时采用Adam 优化器进行梯度优化。
3.3 实验结果与对比分析
经过反复训练与微调模型参数与结构,获得了本文所提LDCSDDNet 的最佳模型参数。为充分地与传统SDDNet 进行实验对比,在同一个训练集、验证集和测试集上进行实验,同时保留SDDNet 原始的超参数、损失函数及优化器配置。训练期间LDCSDDNet 和SDDNet 的模型评估指标变化趋势如图7所示。
图7 训练期间模型评估指标对比Fig.7 Comparison of model evaluation indicators during training
由图7 可知,在前20 个训练轮数,所提方法的mPA变化幅值较大,在第40 个训练轮数后mIoU指标逐渐趋于平稳。为验证模型的泛化能力,采用训练并保存的模型结构及参数在测试集上测试裂缝分割性能,测试集上部分测试结果如图8所示。
图8 测试集上预测结果对比Fig.8 Comparison of prediction results on test dataset
模型在测试集上的指标对比如表2所示,分别对比了平均交并比(mIoU)、平均像素准确率(mPA)、参数量(Para)及浮点运算次数(FLOPs)。由表2 明显可知,提出的LDCSDDNet 的mIoU指标高于SDDNet,且模型参数量和浮点计算次数也显著减低,FPS明显提升,表明了所提出方法缓解了计算成本,提升了实时推理能力。
表2 LDCSDDNet 与SDDNet 指标比较Tab.2 Comparison of LDCSDDNet and SDDNet
4 结语
定期对大坝进行裂缝损伤检测是保障水电站安全运行的必要手段,常规的人工巡检存在风险高、耗时长及精度低等问题,同时传统SDDNet 在坝面裂缝数据集上的泛化性、实时性和检测准确率均有待提升。因此,本文搭建了系留无人机系统,同时基于SDDNet 提出了改进的LDCSDDNet 模型,提升了坝面裂缝检测准确率和实时推理能力,同时也为坝面风险评估提供可靠的指导。