混凝土裂缝无损检测的改进ResNet方法

2024-09-27 00:00:00程龙张静缨徐照
人民长江 2024年9期

摘要:大型混凝土结构的灾难性事故多由微小裂缝发展而成,在混凝土结构服役期间对其进行裂缝检测十分重要。目前基于深度学习的混凝土裂缝无损检测算法飞速发展,但大多未考虑裂缝信息的本身特点,检测的准确性仍有进一步提升空间。为此,提出了一种针对混凝土裂缝无损检测的改进ResNet方法,以残差神经网络ResNet为裂缝检测的基础模型,插入注意力机制模块,提高模型表征能力,使其能够有效捕捉裂缝图像中的重要特征信息,从而提高检测的准确性和鲁棒性。同时,采用迁移学习的策略,将ResNet模型在复杂数据集上的训练成果迁移到裂缝数据集,节约了训练时间和计算资源。结果表明:改进后的ResNet算法的裂缝检测准确率高达98.80%,比原始ResNet算法准确率提升了3.24%。相关经验可供类似改进算法的构建参考。

关 键 词:混凝土裂缝; 裂缝检测; 残差神经网络; 注意力机制; 迁移学习

中图法分类号: TV331;TP18;TP391.4

文献标志码: A

DOI:10.16232/j.cnki.1001-4179.2024.09.028

0 引 言

混凝土因其原材料丰富、施工简便、造价低等诸多优点而被广泛应用于基础建设中,但受疲劳应力[1]、循环荷载[2]等因素的影响,混凝土表面极易产生裂缝。裂缝是混凝土结构最常见的一种病害,其存在会严重影响建筑物的功能性、耐久性和安全性,更有甚者发生坍塌等灾难性事故[3-4],故裂缝检测是混凝土结构安全检查的一项重要任务。

以往混凝土结构的裂缝检测主要依赖于人工,不仅费时费力,无法客观评估裂缝发展状况,还会出现错检漏检的现象,所以,依赖于机器的裂缝检测手段更受青睐。目前,依赖于机器的混凝土结构裂缝检测方法主要分为有损检测和无损检测两大类。有损检测手段如振弦式传感器、光纤光栅传感器[5]等,需要预先确定开裂测点,且检测面积不大,在实际应用过程中已被逐步摈弃。无损检测手段通过无人机[6-8]等图像收集技术采集混凝土结构的表面图像,再利用数字图像处理方法[9-12]或深度学习的方法进行裂缝检测。

有学者将Canny、Gabor算子等边缘检测算法应用于裂缝识别中,通过调整阈值,成功识别图像中的裂缝特征[13-15]。还有学者则采用滤波算法对裂缝图像进行去噪,进一步结合图像分割算法,获取更加精细的裂缝参数[16]。通过调研发现,上述算法多是针对某一具体检测场景而设计,人工干预较多,严重依赖工程师的知识储备和调参经验,随着工程场景越来越复杂多变,这类方法的弊端也逐渐显现,鲁棒性和泛化能力较差。

近年来,得益于计算机算力和存储空间的跨越式提升,基于深度学习的算法[17-22]被相继提出。相较于传统图像处理算法,这类算法无需手动提取特征,且在性能和效果上有了巨大飞跃,但绝大部分研究都未考虑裂缝信息本身的特点,从而导致识别效果未能继续提升。因此,需要改进深度卷积网络的模型架构,使其关注裂缝图像的重要特征,忽略不必要的特征,减小裂缝信息在传递过程中的损耗,进一步提升模型表征能力。

针对上述问题,本文提出了一种针对混凝土裂缝无损检测的改进ResNet方法,在ResNet网络的基础上,插入了注意力机制模块,使ResNet网络能够在学习过程中自动学习到更具有判别性的特征信息,有效捕捉图像中的重要特征信息,使其能够更好地适应混凝土结构表面裂缝检测任务,从而提高检测的准确性和鲁棒性。同时,本文创新地运用了迁移学习的方法,将在ImageNet数据集上预训练的ResNet模型迁移到混凝土结构表面裂缝检测任务上,避免了从头开始训练模型所需的大量数据和计算资源,同时保留了ResNet模型在图像特征提取方面的优势。

1 裂缝检测模型构建

1.1 残差神经网络

残差神经网络(residual neural network,以下简称ResNet)是2015年由微软实验室[23]提出的一种用于图像分类的深度学习方法,以解决卷积神经网络随深度的增加,而分类效果却变差的问题[20]。在没有残差的网络中,随着网络层数的加深,模型的表征能力越来越强,但实际训练效果与模型表征能力不成正比,这是因为发生了梯度消失或梯度爆炸。ResNet的目的在于使模型随着网络层数的加深,训练效果可以获得正向增长。

以一个两层的神经网络为例,如图1所示,左图是一个普通神经网络,其主路径为向该网络输入一个x,经过两个卷积层(Weight layer)与一次ReLU非线性激活后,输出一个F(x),再将F(x)作为新的输入,经历下一轮ReLU非线性激活。右图比左图多了一个跳跃连接,将该神经网络输入的x拷贝到神经网络的深层,与该神经网络输出的F(x)相加后,共同作用在后续ReLU非线性激活函数上,构成一个残差块。这是一条“捷径”,意味着输入的x不仅要经历普通神经网络的主路径,以输出的F(x)影响深层神经网络,也要经历这条“捷径”,对深层的神经网络产生直接影响。

该具有跳跃连接的神经网络即为残差块,若干残差块即构成残差神经网络ResNet。根据网络层数的不同,ResNet又可以细分为ResNet18、ResNet34、ResNet50、ResNet101、ResNet152等不同变体,它们的区别主要在于网络深度和参数量的不同。ResNet后面的数字表示该网络所含卷积层数量,卷积层越多,网络越深,计算参数也越多。不同深度的ResNet模型在不同任务中可能会有不同表现,需要根据具体的应用场景来选择合适的模型。其中,ResNet18和ResNet34是比较浅的网络,适合用于小规模数据集的训练;ResNet50、ResNet101和ResNet152则是比较深的网络,适合用于大规模数据集的训练。本文预实验所用ImageNet数据集以及后续裂缝检测的裂缝数据集中均包含上万张样本图片,因此选用适合大规模数据集的ResNet50、ResNet101或ResNet152是比较合理的。同时,在这3种ResNet网络中,ResNet50网络结构相对较浅、参数量较少、计算复杂度低,在计算资源有限的情况下,ResNet50更容易训练和部署。综上,本文选用ResNet50建立残差神经网络模型,以节省计算资源和训练时间。

ResNet50模型的网络结构如图2所示。该模型处理流程共分为6个阶段:第一阶段对图像进行一次卷积和最大池化;第二阶段至第五阶段分别对图像进行3,4,6,3个残差块的卷积操作,每个阶段都具有两种不同的基本残差块——卷积块(Conv Block)和标识块(Identity Block,ID Block),每个残差块进行3次卷积操作,其中Conv Block输入和输出的维度是不一样的,它的作用是改变网络的维度,所以不能连续串联,ID Block输入维度和输出维度相同,可以串联,用于加深网络;第六阶段对图像进行一次全局平均池化并展平输出,进而对图像进行分类。

1.2 注意力机制模块

传统的ResNet模型在大规模图像分类任务上表现出色,但在特定任务上可能存在性能瓶颈。本文在ResNet网络的基础上,插入了注意力机制模块,以进一步提升深度学习模型在混凝土结构表面裂缝检测任务中的性能。

注意力机制模块主要由两个子模块组成:通道注意力模块和空间注意力模块。通道注意力模块旨在自适应地学习不同通道之间的重要性,并将这些重要通道的特征进行加权融合,其原理如下:给定输入特征图X,首先使用最大池化和平均池化操作聚合特征图的空间信息,生成两个不同的空间描述符:Fcmax和Fcavg,分别表示平均池化特征和最大池化特征。然后将两个描述符输送到共享全连接层,压缩输入特征图的空间维数,逐元素求和合并,生成通道注意力映射Mc,如图3所示。

通道注意力机制可以表达为

Mc=σ{MLP[MaxPoolX]+MLP[AvgPoolX]}

=σ{W1[W0Fcmax]+W1[W0Fcavg]}(1)

式中:σ表示sigmoid激活函数;MLP表示共享全连接层;MaxPool为最大池化操作;AvgPool表示平均池化操作;W0和W1是共享全连接层的权重。

空间注意力模块旨在自适应地学习不同空间位置的重要性,并将这些重要位置的特征进行加权融合,其原理如下:给定输入特征图X,分别通过一个最大池化层和一个平均池化层得到两个空间维度上的全局特征描述符Fsmax和Fsavg。然后,将这两个全局特征描述符连接并通过一个卷积层和激活函数,得到空间注意力映射Ms,如图4所示。

空间注意力机制可以表达为

Ms=σf7×7MaxPoolX;AvgPoolX

=σf7×7Fsmax;Fsavg(2)

将通道注意力模块和空间注意力模块顺序放置(也可平行放置,但顺序排列较平行排列效果更优),将输入特征图X与通道注意力映射Mc相乘,得到加权后的特征图Xca,再将Xca作为输入特征图与空间注意力映射Ms相乘,得到加权后的特征图Xsa,如图5所示,最后即得到注意力机制模块的输出特征图,用于后续的特征提取和分类任务。注意力机制模块的插入使得ResNet网络能够在学习过程中自动学习到更具有判别性的特征表示,有效捕捉图像中的重要特征信息,使其能够更好地适应混凝土结构表面裂缝检测任务,从而提高检测的准确性和鲁棒性。

1.3 迁移学习

在某些机器学习场景中,直接对目标任务从头开始进行训练的成本太高,又或者是目标任务所能提供的样本数据太少,不足以支撑机器学习得到好的效果。如本文的研究对象——混凝土结构表面裂缝无损检测,当前尚无一套样本丰富的混凝土表面裂缝数据集,因此我们期望能够将在具有充足样本的任务中预先训练好的模型,即在ImageNet上训练好的ResNet模型,直接应用于新的目标任务,即混凝土结构表面裂缝无损检测。

ImageNet[24]是目前世界上最大的图像识别数据库,具有1 000类共计1 431 167张图像及其相应的标签。鉴于其样本量足、种类丰富的特点,在图像处理领域,ImageNet是用作网络预训练最受欢迎的数据集,训练出的参数可靠性强、通用性广。本文同样选择ImageNet作为残差神经网络模型的预训练数据集,其中训练集有1 281 167张图像和标签,每类约1 300张,验证集有50 000张图像和标签,每类50张,测试集有100 000张图像和标签,每类100张。训练ImageNet数据集时,共设置训练轮数100轮。由训练结果可知,残差神经网络ResNet50在ImageNet上的最高准确率可达76.13%,保存该轮训练得到的参数,以备在后文裂缝检测中快速启用。

迁移学习[25]根据其学习对象的不同,可以分为样本迁移、特征迁移和参数/模型迁移[26]。对于本文建立的残差神经网络ResNet50模型,采用参数/模型迁移方法,该方法有3种迁移思路:① 载入网络模型后训练所有参数,② 载入网络模型后只训练最后几层参数,③ 载入网络模型后冻结原网络模型卷积层的所有参数,仅改变最后一个全连接层。3种迁移思路各有优劣,如表1所列。

本文采取第3种迁移思路,即把最后一层替换成自己的分类器,将ImageNet数据集的多分类问题改为裂缝检测的二分类问题,剩下的网络结构当作特征提取器,提取其在ImageNet数据集上的训练成果,如图6所示。依据如下:① 训练时间和计算资源:由于冻结了原始网络模型的卷积层参数,只需要训练最后一个全连接层,因此训练时间和计算资源需求较少,适合于资源受限的情况;② 底层特征提取器保留:在训练过程中,底层的卷积层参数被冻结,因此模型可以保留原始网络模型在底层提取的特征,这有助于模型更好地适应原模型的特征空间,提高模型的泛化能力;③ 适应性:虽然只调整了最后一个全连接层的参数,但模型依然可以在新任务上进行微调,因此能够充分利用原模型在大规模数据集上学习到的特征,并将其迁移到新任务中。

2 混凝土裂缝无损检测实验

如前文所述,残差神经网络ResNet学习手段已经在ImageNet上取得了不错的图像分类效果,如何将其学习成果迁移到裂缝数据集也已进行了阐述。接下来需要开展的工作包括:构建混凝土结构的裂缝数据集,以及将残差神经网络ResNet在ImageNet上的预训练成果迁移到裂缝数据集进行训练,并在ResNet的基础上,插入注意力机制模块,通过实验检验改进后的混凝土裂缝检测模型的准确率。

2.1 构建裂缝数据集

本文获取了由458张高分辨率图像(4 032×3 024像素)组成的样本,由于样本数量有限,对原始数据进行裁剪,生成了20 000张有裂缝的混凝土结构图像和20 000张无裂缝的图像,每个图像都是227×227像素的RGB图像,由此构建了一个混凝土裂缝图像数据集。

将混凝土裂缝图像数据按6∶2∶2的比例随机放入训练集(train)、验证集(val)、测试集(test)这3个文件夹。训练集和验证集文件夹下属各有两个文件夹,一个用于收录正样本(positive),即有裂缝的混凝土结构图像;另一个用于收录负样本(negative),即无裂缝的混凝土结构图像,测试集中正负样本混杂,无需单独分类,用于最后的裂缝检测。数据集结构如图7所示。

部分有裂缝的混凝土结构图像样本和无裂缝的混凝土结构图像样本如图8所示,可以看出,本文构建的裂缝数据集包含多种形状和宽度的裂缝,样本具有很好的随机性和内容丰富性。

2.2 混凝土裂缝无损检测结果

将在ImageNet上预训练过的残差神经网络作为起点,改变其全连接层,由预训练时的多分类问题修改为裂缝检测的二分类问题(有裂缝或无裂缝)后,将其迁移至裂缝数据集进行训练,并使用随机旋转、随机水平和垂直翻转以及随机颜色抖动等图像增强功能来增强训练数据并帮助模型泛化。此外,将每个通道归一化,有助于神经网络训练,从而进一步提高混凝土裂缝检测模型的准确性。本次共设置10轮训练,该模型在裂缝数据集上的表现可用每一轮训练时裂缝数据训练集和验证集上的损失(loss)和准确率(accuracy)来评估,如图9所示。图中,ResNet表示未经过预训练且未设置注意力模块的原始裂缝检测模型,Pretrained表示经过预训练但未设置注意力模块的裂缝检测模型,Improved表示经过预训练且插入注意力模块的裂缝检测模型,即本文提出的改进ResNet方法。

由图9可知,以验证集的准确率和损失为评价标准,改进后的ResNet裂缝检测模型在第一轮训练时就表现良好,准确率为98.08%,这是迁移学习时使用了ResNet在ImageNet上预训练参数的结果;训练至第六轮时效果最好,准确率高达98.80%,比原始ResNet算法的最高准确率提升了3.24%,证明了注意力机制模块有效地提高了模型表征能力,使其能够有效地捕捉裂缝图像中的重要特征信息,从而提高了检测的准确性和鲁棒性。以该轮训练结果为裂缝检测的依据,从测试集中随机选取6张图片进行裂缝检测,得到了非常正确的检测结果,如图10所示。

除对测试集中的低分辨率图片进行裂缝检测以外,本文对数据集以外混凝土结构表面裂缝的高分辨率图片也进行了检测。基本思路为,将需要进行检测的裂缝图像分为若干个补丁级图块,图块大小由上文提及的裂缝数据集内图像像素决定,即227×227,利用前文训练好的模型对每一个图块进行分类,将有裂缝的图块红色高亮显示,无裂缝的图块作绿色显示,从而实现高分辨率图像的裂缝检测。检测效果如图11所示,红色线框表示该图块为假性negative,即将有裂缝图块识别为无裂缝图块,绿色线框表示假性positive,即将无裂缝图块识别为有裂缝图块。

以上检测结果表明,该模型在数据集外的裂缝图像上,对补丁级裂缝依然有不错的检测效果。需要注意的是,上述算法不能直接在像素级别将裂缝从图像中提取出来,这种基于深度学习的裂缝识别算法还需结合图像分割技术[27]才能完成裂缝的像素级提取。但相比于传统的数字图像处理技术[28-29],本文提出的基于ResNet和迁移学习的混凝土结构表面裂缝无损检测方法无需对原始图像进行任何预处理,如手动过滤图像中的背景和噪音等,仅仅需要将训练样本按训练目标分类,就能使裂缝识别取得很好的效果,证明了该方法具有一定先进性。

3 结 语

本文提出一种混凝土裂缝无损检测的改进ResNet方法,建立了残差神经网络模型,以该模型为训练手段,在开源数据集ImageNet上进行预训练,并将其训练成果迁移至混凝土结构表面裂缝数据集,然后在ResNet的基础上插入注意力机制模块,进一步提升了深度学习模型在混凝土结构表面裂缝检测任务中的性能。

结果表明,改进后的ResNet算法其裂缝检测准确率高达98.80%,比原始ResNet算法的准确率提升了3.24%,证明了该算法应用于混凝土结构表面裂缝无损检测的优越性和先进性。

参考文献:

[1] 罗福海,张保军,夏界平.水布垭大坝施工期面板裂缝成因分析及处理措施[J].人民长江,2011,42 (1):50-53.

[2] 高珊,袁磊,李文渊,等.循环荷载作用下预应力混凝土U型梁纵向裂缝试验研究[J].成都大学学报(自然科学版),2023,42(1):98-103.

[3] 梁月英.混凝土坝裂缝危害性分析方法研究[D].南京:河海大学,2007.

[4] 肖诗荣,魏瑞琦,李莹,等.意大利瓦依昂滑坡研究综述[J].人民长江,2023,54 (4):130-140.

[5] 朱珊,周文杰,李晓莹.混凝土健康监测技术综述[J].建筑结构,2022,52(增1):2248-2252.

[6] 丁威,俞珂,舒江鹏.基于深度学习和无人机的混凝土结构裂缝检测方法[J].土木工程学报,2021,54(增1):1-12.

[7] 余加勇,李锋,薛现凯,等.基于无人机及Mask R-CNN的桥梁结构裂缝智能识别[J].中国公路学报,2021,34(12):80-90.

[8] 陈金桥.基于无人机图像的混凝土桥梁表观病害识别研究[D].南京:东南大学,2022.

[9] 蒋文波,罗秋容,张晓华.基于数字图像的混凝土道路裂缝检测方法综述[J].西华大学学报(自然科学版),2018,37(1):75-84.

[10]许薛军,张肖宁.基于数字图像的混凝土桥梁裂缝检测技术 [J].湖南大学学报(自然科学版),2013,40 (7):34-40.

[11]MUNAWAR H S,HAMMAD A W A,HADDAD A,et al.Image-based crack detection methods:a review[J].Infrastructures,2021,6(8):115-127.

[12]ABOU-KHOUSA M A,RAHMAN M S U,DONNELL K M,et al.Detection of surface cracks in metals using microwave and millimeter-wave nondestructive testing techniques:a review[J].IEEE Transactions on Instrumentation and Measurement,2023,72:1-18.

[13]陈伟,范新南,李敏,等.基于Gabor算子的人工蜂群算法大坝裂缝检测[J].微处理机,2015,36(4):32-38.

[14]张大伟,许梦钊,马莉,等.水下大坝裂缝图像分割方法研究[J].软件导刊,2016,15(9):170-172.

[15]LI G,ZHAO X X,DU K,et al.Recognition and evaluation of bridge cracks with modified active contour model and greedy search-based support vector machine[J].Automation in Construction,2017,78:51-61.

[16]马嘉文.基于图像处理的大坝裂缝检测算法研究[D].哈尔滨:哈尔滨工程大学,2019.

[17]CHA Y J,CHOI W,BYKZTRK O.Deep learning-based crack damage detection using convolutional neural networks[J].Computer-Aided Civil and Infrastructure Engineering,2017,32(5):361-378.

[18]HU G X,HU B L,YANG Z,et al.Pavement crack detection method based on deep learning models[J].Wireless Communications and Mobile Computing,2021,27:1-13.

[19]ZHANG A,WANG K C P,FEI Y,et al.Deep learning-based fully automated pavement crack detection on 3D asphalt surfaces with an improved crackNet[J].Journal of Computing in Civil Engineering,2018,32(5):04018041.

[20]王丽苹,高瑞贞,张京军,等.基于卷积神经网络的混凝土路面裂缝检测[J].计算机科学,2019,46(增2):584-589.

[21]孟诗乔,张啸天,乔甦阳,等.基于深度学习的网格优化裂缝检测模型研究[J].建筑结构学报,2020,41(增2):404-410.

[22]李岩,杨豪杰,刘辉,等.基于深度学习的混凝土裂缝检测研究[J].信息技术与信息化,2021(12):233-236.

[23]HE K,ZHANG X,REN S,et al.Deep residual learning for image recognition[C]∥Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition,2016:770-778.

[24]DENG J,DONG W,SOCHER R,et al.ImageNet:a large-scale hierarchical image database[C]∥Proceedings of 2009 IEEE Conference on Computer Vision and Pattern Recognition,2009:248-255.

[25]ZHUANG F,QI Z,DUAN K,et al.A comprehensive survey on transfer learning[J].Proceedings of the IEEE,2021,109(1):43-76.

[26]PAN S J,YANG Q.A Survey on transfer learning[J].IEEE Transactions on Knowledge and Data Engineering,2010,22(10):1345-1359.

[27]刘鹏.基于图像处理的混凝土预制构件裂缝检测系统研究[D].西安:西安建筑科技大学,2018.

[28]谭晓晶,许国山,宋军,等.基于数字图像处理技术的混凝土表面裂缝识别[J].低温建筑技术,2020,42(8):11-13.

[29]尹兰.基于数字图像处理技术的混凝土表面裂缝特征测量和分析[D].南京:东南大学,2007.

(编辑:胡旭东)

Non-destructive detection of concrete cracks based on improved ResNet method

CHENG Long1,2,ZHANG Jingying3,4,XU Zhao1,5

(1.School of Civil Engineering,Southeast University,Nanjing 211102,China; 2.China ANNENG Group Second Engineering Corporation,Changzhou 213000,China; 3.College of Water Conservancy and Hydropower Engineering,Hohai University,Nanjing 210098,China; 4.National Key Laboratory of Water Disaster Prevention,Hohai University,Nanjing 210098,China; 5.National Local Joint Engineering Research Center of Intelligent Construction and Maintenance,Nanjing 211189,China)

Abstract:

The catastrophic accidents of large concrete structures are mostly caused by small cracks,so it is very important to detect cracks during the service life of concrete structures.At present,the non-destructive detection algorithm for concrete cracks based on deep learning is developing rapidly,but most of them do not take the characteristics of crack information into account,so the detection accuracy still has room for further improvement.In this paper,an improved ResNet method for non-destructive detection of concrete cracks was proposed.Namely the residual neural network ResNet was used as the basic model of crack detection,and the attention mechanism module was inserted to improve the model representation ability,so that it can effectively capture the important feature information in the crack image,and improve the accuracy and robustness of the detection.At the same time,the transfer learning strategy was used to transfer the training results of the ResNet model on the complex data set to the crack data set,saving training time and computing resources.The results showed that the accuracy of the improved ResNet algorithm for crack detection was as high as 98.80 %,which was 3.24 % higher than that of the original ResNet algorithm.The relevant experience can be a reference in the construction of similar improved algorithms.

Key words:

crack of concrete; crack detection; residual neural network; attention mechanism; transfer learning