基于深度学习的隧道病害图像检测
2022-03-30高新闻王龙坤
高新闻,王龙坤
(1.上海大学 机电工程与自动化学院, 上海 200444;2.上海大学 上海城建(集团)公司建筑产业化研究中心,上海 201400)
0 引言
地铁是当今城市人民的主要公共交通基础设施,在世界范围内有广泛的应用,由于隧道在地下受到综合压力的作用会发生变形[1-2],严重时盾构隧道衬砌表面会出现渗漏、裂缝、腐蚀、缺损等病害[3-4],隧道内病害的出现对隧道的安全带来了巨大的安全隐患,比如,裂缝的出现会引起隧道内的衬砌表面出现渗水、漏水,渗水和漏水的出现会引起隧道内的钢制结构出现电化学腐蚀,电化学腐蚀进一步导致渗漏水的发生,导致隧道内的病害出现恶性循环,严重的影响了隧道的使用寿命和正常的运营。人工检测的方法,具有较高的主观性,并且随着视觉的疲劳会引起误检、漏检等,这种主观性较强的检测方法是很低效的,而且隧道中检测人员的安全也是一个需要考虑的问题。传统的基于视觉的方法来完成隧道病害的检测[5-6];因此,人们开发了基于图像处理的半自动和全自动方法以促进隧道内的健康检测,机器人的应用减少了人工的干预并且提高了检测人员的安全性.此外隧道的照明条件较差,因此开发自动检测的方法变得尤为重要。
1 检测系统组成及检测方法原理
地铁隧道一般位于地下,其工作环境较差,而对于上海跨黄浦江的越江隧道,其工作环境恶劣,地下能够行走的空间狭小,光线微弱,空气尤为污浊。为此,本课题组设计了一种履带式巡检机器人进行地下隧道中结构病害的检测,该巡检机器人由履带式行走本体和激光扫描仪、拍摄隧道结构病害的运动相机、避障的红外传感器等组成。由于该巡检机器人工作环境中光照非常弱,导致拍摄的隧道视频质量具有较低的清晰度和较多的阴影,甚至拍摄的视频还具有一定的虚影。同时,由于本巡检车检测的越江隧道的结构衬砌由于工作年限比较长,在其表面很多地方都覆盖了一层修补的混凝土或环氧树脂,导致在该隧道中拍摄的视频具有较多的相似性,这为后期的高精度隧道结构病害自动检测带来了一定的困难。
本研究针对地下隧道的特殊环境设计了一种残差融合模块网络(Resfmnet);Resfmnet网络主要包括7个部分:1)特征提取网络resnet50用于提取隧道图像的特征;2)PFnet网络块,此网络块的作用是进行不同层次间的特征融合;3)RFB-F网络块,RFB-F网络块主要是为了针对隧道图像中具有模糊和阴影而设计的;4)TRI-T网络块用来检测不同尺度的目标;5)FPN模块,利用低层特征高分辨率和高层特征的高语义信息,通过融合这些不同层的特征达到预测的效果;6)分类模块(C模块),用来确定病害的类别信息;7)回归模块(C模块),用来确定病害的位置信息。本研究设计的Resfmnet网络的具体结构如图1所示。
2 相关研究
随着人工智能的发展,特别是深度学习在计算机视觉上的应用,为基于图像的目标检测提供了新的机遇,如今深度学习技术已经被应用于工程设施的检测和维护,而且被证明了是一种有效的方法[7-8],深度学习在图像分类[9-10]、目标检测[11]、语义分割[7,12]等方面表出了较好的性能;近年来随着深度学习的发展,计算机视觉中的像素级语义分割得到迅速的发展[13-17]。高[18]等人提出一种将DenseNet用于隧道裂缝的检测,该算法对隧道裂缝的分类取得了较好地效果,但是其检测方法偏向一种病害检测;Long[22]等人首先提出了全卷积神经网络[FCN]进行语义分割,与普通的CNN相比,FCN可以接受任意大小的输入,通过高效的推理和学习输出相应大小的图像,FCN的应用已经解决了许多难题[4,19-20];Ren[21]等人提出了一种基于改进的深度全卷积神经网络,用于进行密集的像素级裂缝分割,提出的网络由骨干网络、扩张卷积、空间金字塔池化和跳接模块组成,提高了网络对裂缝的检测能力。
使用深度学习对地铁盾构隧道衬砌表面的病害进行识别可以分为3个主要目标:包括目标分类、目标检测和语义分割:目标分类是将图像中的物体进行类别划分,目标检测不仅要将图像中的物体进行分类,而且还要确定物体的位置;由于要进行病害检测的一张图像上可能含有多种病害,而且需要对检测的病害进行分类和定位,以便于后期评估和检测人员的观察,而语义分割侧重于对每个像素进行分类。因此,本文将采用目标检测的方法,实现对隧道的病害检测。
本文主要研究对越江隧道中的电缆通道衬砌表面的多病害进行检测;越江隧道为了防止江水的灌入,在隧道的衬砌表面采取了防护措施,比如在隧道的表面覆盖了一层混凝土,受到隧道衬砌表面混凝土的影响,采集的图像中相似性特征较多;虽然开发的移动机器人能够提供光源,但是光源还是不足以提供足够的光照强度,拍摄的视频序列图像的清晰度相对较弱,并且部分图像中还具有阴影,大大增加了对隧道病害检测的难度;由于越江隧道的电缆通道中没有轨道,我们需要自己铺设移动机器人的行驶路线,以保证移动机器人按照合理的路线行驶,机器人在隧道中行驶会出现一定的摆动,导致采集的视频具有一定量的虚影,也增加了对隧道病害的检测难度。因此,本文提出了一种新的网络结构来进行隧道多病害的检测与分类,以便于后期人员的维护,数据的采集是由自主开发的机器人获得。
3 检测方法
本文所提出的Resfmnet检测算法结构如图1所示。该算法主要包括4个部分:1)特征提取网络resnet50用于提取隧道图像的特征;2)PFnet网络块,此网络的作用是进行不同层次间的特征融合;3)RFB-F网络块,RFB-F网络块主要是为了针对隧道图像具有模糊和阴影而设计的;4)TRI-T网络块用来检测不同尺度的目标。
图1 Resfmnet检测算法网络结构图
3.1 数据集的采集和制作
本实验用到的数据集采自于上海的一条越江地铁隧道中的电缆通道,地铁隧道是一种位于地下的管状结构,一般光照环境较差,为了捕获越江隧道的衬砌表面的图像数据,自行开发一种移动机器人,机器人具有3个Gopro像机、1个光源(LED灯)、1个激光雷达、监视器、电池组成,使用的相机具有单线光敏传感器,为单色互补金属氧化物半导体(CMOS),静态有效像素1 200万,视频拍摄规格为4 K。
移动机器人在隧道内以一定的速度行驶,设定拍摄视频时的帧率为30帧/s;在提取视频时以每60帧提取一张视频序列图像;总共提取出1 961张有病害的图像;由于训练数据集有限,减少图像数据过度拟合的一种常用方法是通过标签保留变换人为地扩大数据集。为了增加数据集的数量和考虑到光照强度的影响,因此,在本实验中对现有的数据集实施了数据增强,数据增强后总共获取7 964张病害图像,最终将训练数据集的图像数量与测试数据集的数量和验证集数据集的数量之比按0.8∶0.1∶0.1进行随机分配,训练集用于训练模型参数,验证集用以验证当前模型泛化能力,而测试集用于评估最终模型的准确性。
3.2 模型的骨干网络
传统的CNN网络,如果只是简单的增加网络的深度,会导致梯度消失或梯度爆炸,对于梯度消失或爆炸的问题,我们一般采用正则化和batch normalization的方法,但是这种方法会引起梯度退化问题,即在训练集上准确率会出现过饱和甚至下降的情况,为了解决梯度退化的问题,引入了残差连接。Resnet网络引入残差块来解决网络的梯度退化问题,深度残差网络能通过连接前面网络的特征,使得后面的网络能够学习到残差特征。
本节针对地铁盾构隧道的病害(渗漏、裂缝、腐蚀、缺损)构建网络架构;采用的深度学习架构是keras,来完成这项任务;本文采用renet50作为基线网络,如图1所示。
3.3 子模块网络的设计
在本节中我们选择了多尺度融合的思想,我们的思想是进行跨尺度的多级融合,利用低层次的特征可以检测小目标,但是低层次的语义信息较低,导致检测的准确性较低。而特征金字塔网络[FPN]通过自顶向下的过程和横向连接来解决低层次语义信息较低的问题,保持低层次特征有利于检测小目标而且能提高检测精度。为了能较好地融合不同层次的语义信息,在将骨干网络提取的特征C5、C4、C3导入FPN网络之前先进行层级融合,受到单向信息流的限制,我们采用一个自底向上和跨尺度的连接来解决这个问题;在跨尺度融合之前先将不同尺度的特征图调整为相同大小的分辨率,然后对其进行求和,其次求和后的特征进行1×1的卷积,最后进行3×3的卷积,融合的方式如式(1)~(6)所示。具体的网络结构参考图2。
图2 PFnet网络的结构图
(1)
C41=Conv1×1(C4)
(2)
C31=Conv1×1(C3)
(3)
C5out=Conv3×3(C51+C41vp)
(4)
C4out=Conv3×3(C41+C31vp)
(5)
C3out=Conv3×3(C31+C51vp)
(6)
其中:C5、C4、C3代表上一级网络的输出即Resnet网络的输出,C51vp、C41vp、C31vp代表C51、C41、C31的上采样,C5out、C4out、C3out是PFnet网络的输出,Conv1×1、Conv3×3分别代表1×1和3×3的卷积,F代表通道数。
在隧道中由于光照强度非常弱,需要为移动机器人提供光源,但是人为提供的光源强度还是相对来说较弱,甚至还由于遮挡物的干扰,造成拍摄的视频中具有阴影。移动机器人在隧道中行驶会遇到障碍,受到颠簸的移动机器人拍摄的视频具有一定的虚影,为了更好地检测那些具有黑暗和低对比度的图像,我们加入了RFB-F网络和TRI-T网络中,在网络中加入了扩张卷积保持了网络的分辨率和感受野,可以对病害的类别进行更准确的预测。图3是RFB-F网络结构图,图4是TRI-T网络结构图,其中d代表扩张率。
图3 RFB-F网络结构图
图4 TRI-T网络结构图
RFB-F网络有3部分组成:1)用不同尺度的卷积核用来提取不同尺度的特征;2)对不同尺度的特征图进行扩张卷积;从而用不同尺度的感受野来描述提取的特征;3)跳接块用来防止梯度消失,解决了网络退化的问题。RFB-F网络的公式如下:
Input1=Conv1×1(Input)
(7)
Output1=Conv1×1,d=1Conv1×1(Input1)
(8)
Output2=Conv1×1,d=1Conv3×1(Input1)
(9)
Output3=Conv1×1,d=3Conv1×3(Input1)
(10)
Output4=Conv1×1,d=3Conv3×3(Input1)
(11)
Output5=Conv1×1,d=5Conv5×5(Input1)
(12)
Output=Conv1×1(Input1+Outputi)
鼻窦及鼻腔炎性肌纤维母细胞瘤(IMT)是少见病,发病年龄40岁左右,临床过程多为良性,CT表现特征为病变上颌窦多见,多均匀或不均匀软组织密度影,呈膨胀性单侧生长,具有侵袭性,有骨质吸收破坏,可以骨质增生与骨质破坏并存,少有鼻中隔受侵、 淋巴结及远隔转移。术后易复发。
(13)
其中:Input是上一级网络的输出即为{C5out、C4out、C3out}中的任意一个,Output是RFB-F网络的输出,Outputi(i=1,2,3,4,5)是RFB-F网络的中间计算结果,Output是RFB-F网络的输出结果,F代表通道数,d代表扩张率。
TRI-T网络有2部分组成:1)3×3的卷积和不同大小的空洞卷积;用于提高检测尺度的敏感性;2)跳接块用来防止梯度消失,解决了网络退化的问题。TRI-T网络的公式如下:
Input1=Conv1×1(Input)
(14)
Output1=Conv1×1Conv3×3,d=j(Input1)
(15)
Output=Conv1×1(Input1+Output1)
(16)
其中:Input是上一级网络的输出,Output是TRI-T网络的中间计算结果Conv1×1代表1×1的卷积,Conv3×3,d=j代表了3×3的卷积,其中d代表扩张率,j={1,3,5},F代表通道数。
3.4 模型的训练
本文所采用的实验均在台式计算机上实现,其详细的参数为:1个Intel core i7-4790@3.60 Hz CPU 8核处理器,1个16 GB RAM,1个NVIDIA GTX1070 GPU和GPU内存 8 G,64位系统类型。基于深度学习的算法中使用GPU进行训练网络,并且部署了CUDNN深度神经网络库,在Resfmnet网络中,将多尺度特征进行融合对目标进行准确的识别和定位,在本实验中设置训练轮次Epoch=100。该算法的步骤为:
1)随机初始化网络的权重;
3)计算预测值与标签值之间的差别;
4)更新网络的权重wt:
(17)
其中:α是学习率,L是损失函数,代表预测值与真实值之间的差别,wt表示t次迭代时的权重,为了解决类别的不平衡问题我们选择了Focal loss损失函数:
Lp=-αt(1-pt)γlog(pt)
(18)
其中:αt,γ是固定值,αt调节正负样本的比例,pt是不同类别的概率。最终将隧道的数据集运行在此深度学习网络上,经过多个轮次的调参之后,以最大化损失函数向全局最优的收敛,训练过程中的模型在每个 epoch 后保存,并监控最小损失值。然后在测试集上验证Resfmnet模型的准确性,并将具有最高准确性的模型保存为最终模型。
4 实验分析
在隧道运营过程中,隧道土建结构维护较为复杂,有着众多干扰,如图5所示,其主要有以下几种病害:裂缝、渗漏水、缺损、腐蚀、起壳、树脂修补和混凝土出现漏筋。在对本文做试验的越江隧道实际检查后发现,起壳、树脂修补和漏筋出现较少,因此本文主要对腐蚀、裂缝、缺损和渗漏4种病害进行检测,其中腐蚀病害的数量有499个,裂缝病害的数量有1 760个,缺损的数量有1 306个,渗漏的数量有13 726个。腐蚀占比为0.028 8,裂缝占比为0.101 8,缺损的占比为0.075 5,渗漏的占比为0.793 9;数据存在严重的不平衡现象。为了较好地评估网络的检测结果,根据目标检测的特性选取了一些评价指标。
图5 隧道衬砌表面及影响识别的干扰物
4.1 评价指标
深度学习在评估模型的时候,经常会使用一些特定的评价指标,根据数据集的分布和侧重的效果选择不同的评价标准,一般的评价指标有F1-score、AP和mAP。在多目标检测中一般选择AP和mAP作为评价指标。因此本文选择AP和mAP作为评价指标,用来综合评价本文模型检测结果的准确性。
(19)
(20)
(21)
(22)
其中:TP表示实际上是正样本,预测的结果也是正样本,FP实际为正样本,预测结果为负样本,FN:实际为负样本,预测结果为正样本,q是隧道中病害的类别数量,P是精确率,R是召回率,AP是每个类别的平均精确率,mAP是检测的所有类别的平均精确率。
4.2 结果对比
表1列出了Resfmnet与Retinanet对比的评估指标对比结果。从表1可以看出Resfmnet的方法在各方面的指标均优于Retinanet的方法,Resfmnet的mAP比Retinanet高出0.064 6;说明了Resfmnet的方法更有利于提高隧道中病害的检测能力,与传统的网络相比本文的算法采用了模块化设计,而且每个模块都是单独的,可以根据实际需要进行更换或删除相关模块,从而大大方便了更换网络的效率。
表1 算法指标对比
表2 检测算法对不同病害的误检率结果对比
表2显示了Resfmnet检测算法与Retinanet检测算法对不同病害的误检率结果对比,通过对比可以发现Resfmnet检测方法的平均误检率低于Retinanet方法,说明对于恶劣的隧道环境Resfmnet方法具有较好的表现性能。为了验证本文提出的方法的准确性,将Resfmnet与Retinanet的方法的检测结果进行对比,比较结果如图6所示,图6(a)是漏水检测原图,图6(d)是裂缝检测原图,从图6(b)、(c)漏水检测可以看出,Retinanet方法检测的结果在同一个病害上出现了两个锚框,而Resfmnet的方法只有一个锚框,说明了Resfmnet的方法能有效地提高检测的准确率,从而对同一病害进行有效的区分;从图6(e)、(f)可以看出,Retinanet方法对病害的检测结果出现了漏检,而Resfmnet的方法能有效地将病害检测出来,说明了我们的方法对清晰度较低的图像或有阴影的图像,甚至出现了模糊的图像,仍然具有较好地检测效果。
图6 检测算法对不同病害的检测结果对比
5 结束语
本文提出了一种针对越江隧道衬砌病害快速识别的目标检测方法,针对网络层次的加深出现饱和的问题,提出了PFnet网络进行层级融合,为了解决在隧道中拍摄视频时,移动机器人的光照强度不足,导致图像出现黑暗、对比度和亮度的微弱变化,本文加入了RFB-F模块和TRI-T模块。通过对比Resfmnet与Retinanet的方法的检测结果,验证了Resfmnet的方法具有较高的准确率。随着深度学习技术特别是目标检测技术的快速发展,使得深度学习技术越来越多的应用到建筑领域的维护方面,对于民用技术设施的检测和维护提供了强有力的技术支持。在隧道检测领域深度学习技术被证明是一项可靠、安全的技术。