郝 琨,张志成,于 翔,王 娇
(天津城建大学 计算机与信息工程学院,天津 300384)
近年来,随着人类在水下开采石油的规模越来越大,安全高效的运输石油也变得尤为重要.水下输油管道凭借其相对安全、经济的特性成为了海上运输石油的主要方式.输油管道长期处在情况复杂的水下环境中,一些腐蚀、地质变化和人为破坏等因素会造成管道泄漏.过去的几十年里发生的水下石油管道泄漏事件不仅造成了大量的经济损失,而且对海洋和周边陆地环境也造成了巨大的危害.因此,对水下石油输送管道的状态进行准确快速的检测和及时地反馈显得尤为必要.众多学者针对输油管道的泄漏检测开展了广泛的研究[1-4].支焕等[5]通过建立数学模型构建一条与实际管道同步运行的虚拟管道,将实测值与模拟值进行对比,来判断管道是否发生泄漏,但是在复杂的水下环境中不易于获取实测值.吴海霞等[6]利用负压波和质量平衡原理,采用模糊算法和逻辑判断力,并利用压力、流量和输差三重机制实现对输油管道的泄漏检测.Karim 等[7]根据补偿质量平衡法对石油输送管道进行泄漏检测,该方法的瞬态模型使用流速、压力、温度和密度来计算管道填料率,根据管道运行变化去判断是否发生泄漏.
随着高清相机和计算机视觉技术的迅速发展,越来越多的学者开始把视觉技术应用于管道泄漏检测的问题上.Wang 等[8]使用卷积神经网络数字识别结合霍夫变化线检测的方法来检测油气管道螺栓是否松动,该方法可以根据螺栓的状态去估计石油管道是否存在潜在的泄漏危险.但是该方法只能检测到螺栓的状态,而不能对管道的其他部位进行有效的检测.张涛等[9]利用长短期记忆网络(long short term memory,简称LSTM)对孪生网络监测到的变化区域进行建模来判断管道的泄漏,但是该方法不适合于光照条件较差的水下石油管道溢油检测.目前,已有学者将深度学习图像分割方法应用于水下石油管道溢油检测领域.罗东浩[10]提出了一种基于图像分割的海底管道泄漏检测方法,使用U-Net 网络对输油管道图像进行分割,能够较好地识别出泄漏量较大事件的发生.杜泽帅[11]以海底管道为研究对象,采用目标检测YOLOV 3(you only look once version-3)的方法来实现对水下输油管道的泄漏检测,但是在管道发生微小缓慢泄漏时检测效果不佳.
综上,本文提出一种基于U-Net[12]的溢油图像分割方法——RAU 来提高水下输油管道发生微小泄漏时的检测效果.通过把采集到的水下石油管道附近溢油图像传入RAU 中,可以较好地分割提取出图像中溢油区域,后续通过阈值判断分析溢油图像中是否存在溢油区域来实现对水下石油管道溢油情况的高精度检测并及时上报反馈溢油事件的发生. RAU 以U-Net 为基本框架,将残差平滑空洞卷积模块引入U-Net,增强模型学习上下文信息的能力,有利于更好地提取图像中的细节信息;同时引入注意力机制抑制背景区域权重、加强石油区域的权重,能有效地缓解图像石油区域和背景区域对比度低对模型的影响.
RAU 模型结构由编码模块和解码模块两部分构成,其中编码模块利用下采样操作来逐层提取图像的特征,并利用跳跃连接操作将编码模块提取到的特征送入到解码模块,实现对石油区域信息和背景区域信息的特征提取;解码模块利用上采样操作实现对图像位置信息的精确定位.编码模块和解码模块之间通过跳跃连接方式连接特征层,结合浅层位置信息和深层语义信息,来获取更丰富的图像特征;RAU 模型得益于U-Net 的独特设计,即使训练集的规模较小,它仍可以取得较好的图像分割结果.但是U-Net 在前景和后景对比度低的情况下容易出现分割偏差.为了缓解这一问题,引入残差平滑空洞卷积(residual smoothing dilated convolution,简称RSDC)模块,丰富了上下文语义信息;通过加入通道注意力模块有效缓解了图像石油区域和背景区域对比度低对模型的影响,加强了模型对石油特征提取的权重,提高了模型的分割精度.RAU 模型框架如图1 所示.
图1 RAU 模型框架结构
在编码模块中,卷积模块由4 层下采样操作组成,每层后都添加最大池化和卷积操作,卷积核大小均为3×3.在编码模块中,对石油图像X进行特征提取,得到Fai表达式为
式中:Conv 代表卷积操作;X为输入的石油图像;i为第i层卷积层.
为了从采集到的图像中学习更为丰富的上下文信息,并提取更多的细节,本文引入残差平滑空洞卷积模块.残差平滑空洞卷积模块包含两个平滑空洞卷积模块和跳跃连接.残差平滑空洞卷积的网络结构如图2 所示.
图2 残差平滑空洞卷积模块结构
首先平滑空洞卷积(smoothing dilated convolution,简称SDC)SDC1 模块是利用一个卷积核大小为3×3,步长为1,输出通道为64 的分离共享卷积层增加前后单元之间的依赖关系,平滑网格伪影现象;然后利用一个卷积核大小为3×3,空洞率r为2,步长为1,输出通道为64 的空洞卷积层扩大感受野;最后利用实例归一化层和ReLU 激活函数层加速模型收敛.SDC2模块是利用一个卷积核大小为9×9,步长为1,输出通道为64 的分离共享卷积层增加前后单元之间的依赖关系,平滑网格伪影现象;然后利用一个卷积核大小为3×3,空洞率r为5,步长为1,输出通道为64 的空洞卷积层扩大感受野;最后利用实例归一化层和ReLU 激活函数层加速模型收敛,同时利用跳跃连接避免梯度消失现象.SDC1 中的平滑空洞卷积的空洞率r为2,SDC2 中的平滑空洞卷积的空洞率r为5,分离共享卷积核大小为(2r-1)×(2r-1).残差平滑空洞卷积模块表示为
其中:SDCn(·),n=1,2 表示平滑空洞卷积函数.
引入残差平滑空洞卷积模块有效避免了梯度消失造成的模型性能下降的问题.残差平滑空洞卷积模块利用空洞率为2 和5 的卷积核扩大了感受野,同时利用跳跃连接来连接前后特征层,因此能提取到更多的图像细节特征,在一定程度上降低了前后景对比度低对模型的干扰.
虽然残差平滑空洞卷积模块能有效的提取出更多的石油细节信息,但是图像背景区域和石油区域对比度低仍会对石油图像分割造成影响,所以RAU 引入通道注意力模块.通道注意力模块处理到的特征信息为通过跳跃连接将下采样得到的浅层信息和上采样的深层信息进行融合后的特征信息,即包含丰富的高低层语义信息,在关注高层语义信息的同时也确保了浅层信息在最终分割任务中的贡献度.通道注意力模块加大了水下溢油图像中石油的特征权重,在过滤背景噪声的同时,降低了低对比度对模型的干扰.由于重点强调了图像中的石油区域,在一定程度上可以提高模型的训练速度.通道注意力模块结构如图3 所示.
图3 通道注意力模块结构
通道注意力模块中每个通道的特征图所关注的细节信息不同,其作用是利用各通道特征图之间的关系来学习一个一维的权重矩阵,然后将这个权重矩阵乘以对应的通道.利用注意力模块,可以使模型更加关注包含更多石油信息的通道,从而来提取溢油图像中更多石油的特征信息.首先利用最大池化和全局平均池化来整合空间维度信息,让每个通道生成两个特征描述符;然后将生成的这两个特征描述符作为一个共享的多层感知机f的输入,多层感知机的功能是生成两个更具代表性的特征向量,并将多层感知机生成的两个特征向量进行相加操作;之后再通过一次sigmoid函数得到特征Wc;最后将特征Fb3与Wc对应的空间位置进行相乘获得更加具有代表性的特征.通道注意力模块特征提取如式(5)和(6)所示,即
式中:f表示多层感知机;⊗代表乘法操作;Avgpool(·)为平均池化操作;Maxpool(·)为最大池化操作.
在解码模块中,卷积模块由4 层上采样操作组成,每层后都添加最大池化和卷积操作,卷积核大小均为3×3.在解码模块中,进行特征Fbj提取获得的特征如下式所示
式中:j为第j层上采样层,j取值为2,3;i取值为4,3;Fbj为解码模块提取的特征.
在二分类图像分割[13]训练中,一般使用二元交叉熵损失函数(binary cross-entropy loss,简称BCE loss),BCE 损失函数如式11-13 所示,即
式中:GT(a,b)为像素(a,b)的手工标注标签;SEG(a,b)为分割物体的预测概率;BCE 损失函数是逐像素对分割像素和背景像素进行加权,并且不考虑邻域的标签,有利于损失函数的收敛.
本文的数据集是在实验室环境下使用超眼B011工业级数码放大镜实现石油图像的采集工作,所使用的拍摄工具为超眼B011 工业级数码放大镜,放大倍数为50 倍,采集的图像分辨率为800 pixel×600 pixel,位深为8.石油图像采集完成之后,使用Labelme 软件对采集到的石油图像进行了标注,得到300 张标注好的石油图像.为了增强模型泛化能力,降低过拟合现象的发生,进行了数据扩充操作.对标注好的石油图像进行了水平翻转、垂直翻转、旋转90°和色彩抖动数据扩充,将数据集扩充至1 500 张图像,其中1 200 张作为训练集,300 张作为验证集.部分数据集原始图像及标注图像如图4 所示.
图4 部分数据集图像
模型训练时采用CPU 为Intel Xeon E5-2620、内存为32 GB、显卡为NVIDIATM GeForce GTX 1080 Ti的硬件平台.软件平台是Ubuntu 操作系统,并使用Pytorch 深度学习框架实现本文的网络模型.在模型训练时设置初始化学习率为0.001,采用RMSprop 作为优化器,设置参数值weight_decay 为1e-8,momentum为0.9,批量大小(batchsize)为1,迭代次数为300. 改进后的RAU 网络模型与原始U-Net 网络模型的损失值变化情况如图5 所示.从图5 可以看出,RAU 网络相比于原始的U-Net 网络,损失函数收敛更快,稳定后的损失值更小,说明改进后的模型训练效果更好.
图5 模型改进前后训练损失值对比
本文从主观评判和客观评判两方面对RAU 分割效果进行分析和比较. 主观评判主要是根据人眼的视觉效果去比较图像分割效果的优劣. 客观评判上,采用IoU[14]、Pixel Accuracy[15]作为评价标准,其计算公式如下
式中:X和Y分别为图像的真实值和预测值;NTP、NTN、NFP、NFN分别是石油像素正确分类数量、背景像素正确分类数量、背景像素错误分类数量、石油像素错误分类数量;Pixel Accuracy 是指被正确分割的像素数量占图像全部像素数量的比例;IoU 为语义分割的标准评价指标,表示真实值与预测值的交集与并集的比,其数值越大表示预测图跟真实图之间越接近,当IoU的值为1 时表示预测图与真实图完全一致.
首先将RAU 与图像分割模型Mask-RCNN(mask region-based convolutional neural network)[16]、FCN-8s(fully convolutional networks-8s)[17]、SegNet[18]、U-Net 进行对比分析,然后对RAU 进行总体性能分析.
两组石油图像分割结果如图6-7 所示. 其中,Mask-RCNN 的分割结果较差,图6c 和7c 中红色掩膜为分割出来的石油区域,可以看出分割框只是大概选取了图像中石油的区域,并且在锚框内不能够实现对图像的前景区域和背景区域的准确分割.FCN-8s 分割的结果不够准确,在图像边缘和图像中不能实现准确分割,会产生漏分割的现象.U-Net 分割结果较好,能够基本实现对图像中前景区域和后景区域的分割,但是观察图6e 左下方和上方边缘处及图7e 上方和下方边缘处,会出现漏分割及分割不准确的情况.SegNet 分割结果较为准确,但是在靠近图像边缘处会产生漏分割的现象. RAU 在图像边缘和图像前后景对比度低的情况下均能较好的实现对图像的分割,能够较好地分割出图像中的石油区域.
图6 第一组石油图像分割结果
图7 第二组石油图像分割结果
虽然通过人眼视觉观察可以直接获取结果对比信息,但是视觉观察容易受到主观因素的影响,所以对图像分割的结果进行了定量分析评价,实验结果如表1 所示.可以看出,RAU 在Pixel Accuracy 和IoU 评价指标上的表现较其他模型结果较优,说明了RAU可以较好地分割出前后景对比度较低情况下的石油信息.由于本实验数据集中的石油在整个图像中都有分布,Mask-RCNN 不能很好地分割锚框里的石油区域和背景区域.虽然FCN-8s 分割效果较好,但是分割出来的结果并不是很精细,对图像中的细节信息不敏感,而且未能充分考虑到像素之间的相互关联,缺乏空间一致性.U-Net 通过跳跃连接反卷积层和特征层,充分提取并结合了深浅特征层的语义信息,在一定程度上提升了模型获取细节信息的能力,分割效果得到了一定的提升.SegNet 分割结果较好,但是由于网络没有充分考虑上下文信息,在图像边界处会存在漏分割现象.此外,虽然SegNet 的性能略好于U-Net,但是SegNet 的模型参数量要多于U-Net 的模型参数量,结合轻量化因素考虑,最终选择U-Net 作为基础网络模型进行优化改进.RAU 在分割指标上均有不同程度的提升,说明RAU 能在前后景对比度低的区域和图像边缘处分割出石油信息,分割效果较好.
表1 不同模型的性能对比
本文针对不同模型进行了消融实验,来验证RAU引入通道注意力模块和空洞卷积模块的有效性.模型1 是标准的U-Net,模型2 在U-Net 的基础上添加了残差空洞卷积模块,模型3 在U-Net 基础上引入了通道注意力模块,RAU 在U-Net 基础上引入了残差空洞卷积模块和通道注意力模块.所有实验在测试集上进行测试,不同网络模型性能结果如表2 所示.标准模型U-Net 的IoU 为0.722 3,Pixel Accuracy 为0.912 9.添加残差空洞卷积模块后,两项评价指标均有不同程度的提升,相较于U-Net 原始模型IoU 提高了0.25%,Pixel Accuracy 提高了0.39%,参数量增加了2.41 M.这说明残差空洞卷积模块可以在一定程度上缓解低对比度区域分割精度低的问题,但是整体分割精度提升有限.引入通道注意力模块后,IoU 和Pixel Accuracy相较于标准的U-Net 分别提高了0.81%和0.45%,参数量增加了0.63 M,说明引入通道注意力机制可以在一定程度上提高前后景对比度低的分割精度.同时引入残差空洞卷积和通道注意力模块后,参数量增加了3.04 M,IoU 和Pixel Accuracy 相较于标准U-Net 分别提高了2.93%和1.17%,IoU 和Pixel Accuracy 分别达到了0.751 6 和0.924 6.这说明聚集两个模块后,其效果可以叠加,在前后景对比度低的区域上有效提高了分割精度,可见RAU 能分割出更多的在低对比度区域的石油信息.
表2 消融实验结果比较
本文提出了一种基于U-Net 的图像分割方法——RAU.该模型以U-Net 为基本框架,在标准U-Net 中引入残差平滑空洞卷积模块,能够提取图像更多的细节信息.通过引入注意力机制抑制背景区域权重,加强石油区域的权重,缓解图像背景区域和石油区域对比度低对模型造成的影响.实验结果表明,RAU 对水下溢油图像有较高的分割精度,但对于图像边缘处的区域的像素仍会出现分割错误的现象.下一步将着重研究如何更有效地结合图像中的高级语义特征,降低边缘像素被错误分类的情况,且最终实现把RAU 算法移植到嵌入式设备中.