舰船科学技术  2025, Vol. 47 Issue (19): 87-93    DOI: 10.3404/j.issn.1672-7649.2025.19.014   PDF    
基于CNN-LSTM的船体板架损伤位置检测研究
王文婷1,2, 叶星宏3, 夏利娟1,2     
1. 上海交通大学 海洋工程全国重点实验室,上海 200240;
2. 上海交通大学 船舶海洋与建筑工程学院,上海 200240;
3. 中国船舶及海洋工程设计研究院,上海 200011
摘要: 船舶结构庞大且复杂,简单的分类模型难以满足船体损伤检测的全面需求。本文提出一种基于卷积神经网络和长短期记忆网络的船体板架损伤位置检测方法。通过Abaqus脚本对带有裂纹的船体板架进行参数化建模和响应计算,建立不同损伤位置板架的加速度响应数据集。然后,构建CNN-LSTM神经网络代理模型,直接以多通道加速度响应作为输入,避免了传统机器学习方法需要人工设计损伤敏感特征的问题,以裂纹中心坐标作为输出,避免了分类方法对损伤位置覆盖不充分的问题。结果显示,预测裂纹位置与实际位置的误差不超过板架尺寸的5%,噪声水平越低、裂纹越严重,此方法的预测精度越高,为船舶结构健康监测提供了较好的思路和方案。
关键词: 卷积神经网络     长短期记忆     结构损伤检测     动力学响应    
Research on hull plate frame damage detection based on CNN-LSTM
WANG Wenting1,2, YE Xinghong3, XIA Lijuan1,2     
1. State Key Laboratory of Ocean Engineering, Shanghai Jiao Tong University, Shanghai 200240, China;
2. School of Ocean and Civil Engineering, Shanghai Jiao Tong University, Shanghai 200240, China;
3. Marine Design and Research Institute of China, Shanghai 200011, China
Abstract: The structure of ships is large and complex, and simple classification models are difficult to meet the comprehensive needs of hull damage detection. In this paper, a method for detecting the damage position of ship hull plate frames based on CNN and LSTM is proposed. The Abaqus script is used to parameterize the modeling and response calculation of ship hull frames with cracks, and the acceleration response data set of plate frames at different damage positions is established. Then, the CNN-LSTM neural network surrogate model is constructed, which directly takes the multi-channel acceleration responses as the input, which avoids the problem that the traditional machine learning method needs to manually design damage-sensitive features, and uses the crack center coordinates as the output, which avoids the problem that the classification method does not cover the damage location sufficiently. The results show that, the error between the predicted crack location and the actual position is not more than 5% of the plate frame size. The lower the noise level and the more severe the cracks, the higher the prediction accuracy of this method, which provides a better idea and scheme for ship structural health monitoring.
Key words: convolutional neural network     long short-term memory     structural damage detection     dynamic response    
0 引 言

据统计,导致生命财产损失的散货船海难事故大约70%由于板结构失效而进水造成[1]。然而,进行船舶结构安全检查需要花费大量的人力物力,而且由于构件表面包覆锈皮,船舶操作人员检查船舱时也很难发现构件上的裂纹和局部损伤。因此,基于结构健康监测技术对船体进行损伤实时在线监测对于保障船舶的安全性和延长其使用寿命至关重要。

基于振动的结构损伤检测方法凭借其高效、非破坏性等优势,得到了广泛应用和研究。在过去的20年中,学者们基于振动信号构建了许多结构动力特征作为神经网络的输入参数,如固有频率、振型和模态曲率等,然而这些人为设计的特征参数并不一定是最优的,难以在不同类型的损伤识别中取得最优效果[2]。随着深度学习技术的发展,基于数据驱动的结构损伤检测方法逐渐兴起。深度学习能够自动提取和学习振动信号中的特征,实现对复杂模式的高效识别,从而克服传统方法需要人工设计特征的问题[3]。Abdeljaber等[4]通过一维卷积神经网络的自适应设计,实现振动信号的特征提取和分类融合,并且取得了良好的损伤检测效果。张松林等[5]提出一种基于长短期记忆网络(LSTM)的板裂纹损伤检测方法,直接将板的加速度响应作为输入。Ma等[6]提出一种基于卷积神经网络(CNN)的船舶结构损伤检测方法,对船体加筋板进行裂纹损伤检测,该方法具有较好的单裂纹和双裂纹检测性能。张健飞等[7]提出一种以结构振动加速度信号为输入的基于多头自注意力的CNN模型,利用多头自注意力机制关注不同位置和不同表征子空间中的重要信息。

目前,基于深度学习的船体结构损伤检测研究主要通过分类模型解决损伤定位问题[8],但船舶作为一种大型结构,其损伤出现的位置难以预测,简单的分类模型不能满足船舶结构安全性的需要。本文以船体中普遍存在的加筋板作为研究对象,以结构动力学加速度响应为输入,提出一种基于CNN-LSTM的损伤位置检测方法,以损伤中心坐标表征结构损伤位置,通过对裂纹中心坐标进行定位实现船体损伤位置的实时在线检测,为船舶结构健康监测提供了较好的思路和方案。此外,考虑到船舶所处的海洋环境复杂恶劣,采集到的信号受噪声影响较大,本文还对该方法的抗噪性进行了验证。

1 船体板结构动力学响应计算 1.1 数值仿真

本文基于Python语言对Abaqus软件进行二次开发,建立存在裂纹的船体板架有限元模型并计算其结构动力学加速度响应。本文使用的船体板尺寸为长L = 3000 mm,宽B = 3000 mm,厚T = 10 mm,水平方向和竖直方向分别均匀设置两道T型加强筋,网格尺寸为50 mm,边界条件为四边固定。船体板架材料为普通结构钢,密度为$ \rho $ = 7850 kg/m3,弹性模量为G = 210 GPa,泊松比为$ \nu $=0.3。

从工程实际上看,船上裂纹多出现在加筋板根部的应力集中区[9],裂纹会在焊缝缺陷处始发,然后在环境载荷的作用下进一步延伸,造成舱室进水[10]。因此本文考虑裂纹中心只出现在T型材加强筋根部的情况,不同位置出现裂纹的概率相同。损伤形状设置为菱形,裂纹长度$ {L}_{C} $设置了300、400、500 mm三种尺寸,裂纹宽度$ {B}_{C} $固定为20 mm。为了模拟船体板出现贯穿裂纹的情况,在裂纹中心坐标确定后,按照裂纹尺寸确定损伤区域,在船体板的几何模型中切除损伤部分,如图1所示。

图 1 存在裂纹的船体板架示意图 Fig. 1 Schematic diagram of a hull plate frame with cracks

在实际工程中,作用在船体结构上的载荷复杂、随机并且难以获取。高斯白噪声是均值为0的平稳遍历随机过程,激励在每个时间步长的振幅服从高斯分布,在不同频率下具有相同强度,可以激发结构的多个模态[11]。因此本文采用高斯白噪声模拟船体板受到的动态激励。对平板施加均值为0,标准差为0.01 MPa的均布压力,激励的施加频率为104 Hz,激励持续时间为4 s。考虑到现实世界的环境载荷频谱通常具有一定的带宽限制,采用截止频率为600 Hz的十阶巴特沃斯低通滤波器,限制动态激励的频率范围为0~600 Hz。

本文采用模态叠加法计算目标结构的动力学响应。首先进行模态分析,模态分析最大频率为随机载荷频率上限的1.5倍,即900 Hz。然后进行响应计算,结构阻尼比采用钢结构常用的0.02,在船体板上均匀布置100个加速度采集点,如图2所示,输出垂直于板平面方向的加速度用于深度学习,加速度采样时间为4 s,采样频率为500 Hz,即每个加速度采集点的数据长度为500×4=2000

图 2 带裂纹的船体板架有限元仿真模型 Fig. 2 Finite element model of hull plate frame with a crack

为了使仿真工况尽可能覆盖所有损伤可能出现的位置,对裂纹中心坐标进行均匀采样,而且不同损伤工况之间裂纹中心应距离20 mm以上,以保证不同工况的差异性。对每个损伤工况进行5次仿真计算,每次计算的随机载荷都重新生成。本文设置了524个裂纹中心位置,共2620个仿真样本。

由于阻尼的存在,平板的自由振动会逐渐衰减直至消失。对相同约束条件健康状况下的加筋板施加瞬时激励,观察结构中心位置的垂向加速度曲线如图3所示,结构在1 s后自由振动衰减到几乎为0,其影响基本可以忽略。因此,只使用1~4 s稳态响应阶段的加速度数据进行训练。

图 3 瞬时激励下健康船体板架中心位置垂向加速度 Fig. 3 The center positions vertical acceleration of a healthy hull plate frame under instantaneous excitation
1.2 数据集划分及数据预处理

为防止数据泄露、保证数据集之间的独立性,需要先划分数据集,原始数据样本按照7∶1∶2的比例划分为训练集、验证集和测试集。然后对各个数据集进行添加噪声、数据扩充和标准化等数据预处理操作,得到神经网络的输入数据集。

在实测信号中,噪声总是存在。本文采用在仿真得到的振动信号上加噪声的方式模拟,并用信噪比SNR表示噪声水平的大小,计算式为:

$ SNR_{dB}=10\log_{10}\left(\frac{P_{\mathrm{signal}}}{P_{\mathrm{noise}}}\right)。$ (1)

式中:$ P\mathrm{_{signal}} $$ P_{\mathrm{noise}} $分别为信号和噪声的功率,离散信号的功率$ P_{\mathrm{signal}} $计算如下式:

$ {P_{\mathrm{signal}}} = \frac{1}{n}\sum\limits_{i = 1}^n {a_i^2}。$ (2)

深度学习需要大量数据用于神经网络训练,综合实际硬件条件和计算成本的考虑,除了增加有限元仿真样本的数量,还可以通过数据裁剪对有限元计算得到的样本进行数据扩充。

本文主要采用顺序裁剪和随机裁剪2种方法,其过程如图4所示。顺序裁剪如图4(a)所示,直接将后3 s的长度1500的加速度信号平均裁剪为3份,每份信号的长度为500;随机裁剪如图4(b)所示,从后3 s的长度1500的加速度信号中随机裁剪出长度为500的加速度信号,每个样本随机裁剪3次。最终得到2620×2×3=15720个数据样本,每个样本是时间长度为1 s、长度为500的加速度信号。

图 4 数据扩充过程 Fig. 4 Data enrichment process

为提高神经网络模型的收敛速度和预测精度,对数据进行Z-score标准化。

$ y = \frac{{x - \mu }}{\sigma }。$ (3)

式中:x为被标准化的物理量;$ \mu $为数据的均值;$ \sigma $为数据的方差。

2 CNN-LSTM神经网络模型

LSTM擅长捕捉序列数据中的长期依赖关系,而CNN则擅长提取图像数据的局部空间特征。通过结合两者的优势,可以使得代理模型同时捕捉到传感器数据的长时序关系和不同通道传感器的局部空间特征,减少参数降低过拟合风险,从而提供更精确的预测、更出色的性能以及更高的训练效率。本文提出的CNN-LSTM神经网络代理模型主要由输入层、CNN模块、LSTM模块、MLP模块和输出层5部分组成。

2.1 网络结构设计 2.1.1 输入层

本文直接以船体板架在高斯白噪声激励作用下的加速度响应作为输入,输入层数据维度为$ b\times t\times d $,其中$ b $为每次迭代的批量大小,$ t $为时间序列长度,即信号长度500;$ d $为每个时间步输入向量的维度,即100个加速度采集位置。

2.1.2 CNN模块

卷积神经网络(Convolutional Neural Network,CNN)是一种广泛用于图像识别处理的深度学习架构。它模仿了生物视觉系统的工作原理,通过多层结构有效地提取和学习图像特征。卷积层和池化层是CNN的主要组成部分。

卷积层由一系列卷积核组成,每个卷积核专注于捕捉图像的特定局部特征。卷积核在图像上滑动,通过计算局部区域的点积生成特征图,不同的卷积核生成不同的特征图。在生成每个特征图时,同一个卷积核在整个输入图像上共享权重,不仅减少了参数数量,还提高了模型的训练效率和泛化能力。池化层的作用是降低特征图的空间尺寸,增强特征的不变性,并减少过拟合的风险。通过堆叠多个卷积层和池化层,CNN能够从简单到复杂逐层学习特征,最终通过全连接层实现分类或其他任务。

对于时间序列,通常可以只在时间上进行卷积和池化运算。一维时间序列的卷积操作如图5所示,其中输入数据尺寸为1×4,卷积核尺寸为1×2,步长为1。一维时间序列的最大池化操作如图6所示,其中输入数据尺寸为1×4,池化尺寸为1×2,步长为2。

图 5 一维向量的卷积操作 Fig. 5 Convolution operations for 1-D vectors

图 6 一维向量的最大池化操作 Fig. 6 Max pooling operation for 1-D vectors

本文提出的神经网络结构中的CNN模块具有2个卷积层、2个池化层,其结构如表1所示。每个卷积层顺序进行批归一化和激活操作并连接一个池化层,批归一化技术(Batch Normalization)用于加速计算以及避免过拟合,提高模型的泛化性,非线性激活函数将非线性引入了卷积神经网络,从而使得卷积神经网络能够探测非线性特征。

表 1 CNN模块网络结构 Tab.1 The network structure of CNN module

由于一维卷积层的维度要求,CNN模块需要将输入数据维度从(b,500,100)转换为(b,100,500),即最后一个维度为序列长度,最终的输出维度为(b,256,20)。

2.1.3 LSTM模块

长短期记忆网络(Long Short Time Memory,LSTM)是一种广泛适用于序列数据处理的深度学习架构,通过引入门控机制来解决传统RNN中的梯度消失和梯度爆炸等问题,从而更好地捕捉长序列之间的依赖关系。LSTM的核心结构包括遗忘门、输入门、输出门和细胞状态,它们共同协作以实现对序列信息的处理和记忆。LSTM的单元结构如图7所示,$ {x_t} $t时刻的输入,$ {h_t} $$ {C_t} $t时刻的输出和细胞状态。

图 7 LSTM单元结构 Fig. 7 LSTM cell structure

首先,遗忘门控制着对上一节点的细胞状态保留多少信息,按式(4)计算。其次,输入门控制着t时刻输入的信息有多少被添加到细胞状态中,按式(5)计算。细胞状态会根据遗忘门和输入门的输出按式(6)~式(7)进行更新,确保旧的信息被保留,并且新的信息被正确整合。最后,输出门控制着在t时刻细胞状态中有多少信息输出到下一时间步,按式(8)计算。

$ {f_t} = \sigma \left( {{\boldsymbol W_f} \cdot \left[ {{h_{t - 1}},{x_t}} \right] + {\boldsymbol b_f}} \right),$ (4)
$ {i_t} = \sigma \left( {{\boldsymbol W_i} \cdot \left[ {{h_{t - 1}},{x_t}} \right] + {\boldsymbol b_i}} \right) ,$ (5)
$ {\widetilde C_t} = \tanh \left( {{\boldsymbol W_c} \cdot \left[ {{h_{t - 1}},{x_t}} \right] + {\boldsymbol b_c}} \right),$ (6)
$ {C_t} = {f_t} \odot {C_{t - 1}} + {i_t} \odot {\tilde C_t},$ (7)
$ {o_t} = \sigma \left( {{\boldsymbol W_o} \cdot \left[ {{h_{t - 1}},{x_t}} \right] + {\boldsymbol b_o}} \right) ,$ (8)
$ {h_t} = {o_t} \odot \tanh \left( {{C_t}} \right)。$ (9)

式中:$ {\boldsymbol W_ * } $为权重矩阵;$ {\boldsymbol b_ * } $为偏置项。$ \sigma $是sigmoid激活函数,可以将输入转换成0~1之间的数值,作为一种门控状态。tanh是双曲正弦激活函数,可以将输入转换成−1~1之间的值,作为对输入数据的非线性处理。

2.1.4 MLP模块

在经过CNN和LSTM模块的特征提取后,通常会接入一个或多个全连接层,将提取的特征映射到输出空间。在回归问题中,全连接层的输出通常是一个或多个连续值。本文提出的神经网络结构将LSTM模块的输出经过扁平化处理后连接3个全连接层,神经元数量分别为128、64和2。

2.1.5 输出层

本文直接以表征加筋板裂纹中心的横纵坐标作为输出标签,因此输出层的神经元数量为2,输出尺寸为$b \times 2$b为批量大小。

2.2 训练设置

船体板平面上的裂纹中心坐标检测属于二元回归问题,因此采用均方误差(Mean Square Error,MSE)作为损失函数度量神经网络模型预测值$ {p_i} $和真实值$ {q_i} $之间的差异,表示为:

$ {MSE_\mathrm{loss}}=\frac{1}{n}\sum\limits_{i=1}^n\left(p_i-q_i\right)^2。$ (10)

为了评估神经网络的性能,本文选用距离误差和准确率指标。距离误差为个体指标,表示检测损伤中心坐标与实际损伤位置之间的欧几里得距离。当距离误差小于容差时,认为损伤中心坐标检测准确。

$ \sqrt{(x_p-x_q)^2+(y_p-y_q)^2} < \mathrm{Tolerance} 。$ (11)

采用AdamW作为优化器,初始学习率为1×10−3并通过余弦退火的方式调整学习率,最大迭代次数为100,数据批次大小为64,分别选取60 mm(2%结构尺寸)、150 mm(5%结构尺寸)作为容差。

2.3 对比方法

为了评估CNN-LSTM方法的性能,本文选择CNN和LSTM两种单一方法进行对比。除了输入层、MLP模块和输出层之外,CNN模型只包含2个卷积层和2个池化层,LSTM模型只包含1个LSTM层。图8显示了CNN-LSTM、CNN和LSTM三种方法的计算流程,图中每层前后的数字表示输入和输出的数据尺寸,三者采用相同的数据集、损失函数、激活函数、优化器以及学习率。

图 8 CNN-LSTM、CNN、LSTM计算流程 Fig. 8 The calculation process of CNN-LSTM, CNN, LSTM
3 船体板损伤位置检测结果 3.1 裂纹长度对检测结果的影响

表2表4分别为无噪声、SNR = 20 dB、SNR = 10 dB条件下,采用CNN-LSTM方法对不同长度裂纹进行损伤定位的统计结果,距离误差按照结构尺寸的2%(60 mm)和5%(150 mm)设置3个等级,统计各等级内的样本数目。测试集中所有样本的最大距离误差不超过200 mm,99%的样本的距离误差不超过150 mm,因此通过对裂纹中心进行坐标定位的方式实现损伤位置检测是可行的,检测效果良好,与实际损伤位置的偏差不超过5%结构尺寸。

表 2 无噪声,不同裂纹长度距离误差 Tab.2 Noise-free, distance error for different crack lengths

表 3 SNR = 20 dB,不同裂纹长度距离误差 Tab.3 SNR = 20 dB, distance error for different crack lengths

表 4 SNR = 10 dB,不同裂纹长度距离误差 Tab.4 SNR = 10 dB, distance error for different crack lengths

对比不同裂纹长度的检测效果如图9图10所示,可以发现,裂纹越长,测试集平均距离误差越小,定位裂纹中心坐标的效果越好。裂纹越严重,导致局部结构的刚度和质量变化更明显,因此损伤导致的整体模态变化更容易被传感器捕捉。

图 9 不同裂纹长度检测-平均误差 Fig. 9 Detection of different crack lengths - average error

图 10 不同裂纹长度检测−150 mm容差准确率 Fig. 10 Detection of different crack lengths −150 mm tolerance accuracy
3.2 噪声水平对检测效果的影响

图9图10可知,随着信噪比降低,噪声对有效传感器数据的干扰更为明显,主要表现在距离误差变大,准确率降低两方面。本文提出的基于CNN-LSTM的损伤位置检测方法在信噪比高于10 dB时可以正常工作。

3.3 不同方法对比

分别采用CNN-LSTM、CNN和LSTM三种方法在SNR = 10 dB、SNR = 20 dB和无噪声情况下进行损伤位置检测,图11图12分别为测试集平均误差和容差为150 mm时的准确率对比。在无噪声情况下,CNN-LSTM方法的测试集准确率为99.81%,高于CNN方法99.24%的和LSTM方法的97.33%。在有噪声情况下,3种方法的损伤定位精度均有所降低,但CNN-LSTM方法仍保持99%以上,CNN方法和LSTM方法分别降低为96.92%和94.86%。3种方法平均误差的差距更为明显,以裂纹长度300 mm、SNR = 10 dB为例,CNN方法和LSTM方法的测试集平均误差分别为72.44 mm和61.25 mm,约为CNN-LSTM方法的1.5~2倍。CNN-LSTM方法具有更好的裂纹中心定位精度,而且对噪声的敏感程度远低于CNN和LSTM方法。

图 11 3种方法测试集平均误差 Fig. 11 The mean error of three methods on the test set

图 12 3种方法测试集准确率 Fig. 12 The accuracy of three methods on the test set

针对本文所使用的数据集,CNN-LSTM、CNN和LSTM三种模型的训练时间分别为224、232、341 s。CNN-LSTM方法融合了CNN方法捕捉局部特征和LSTM方法学习长序列依赖关系的优势,在检测效果和时间成本两方面都有出色的表现。

4 结 语

本文通过基于 Python语言的 Abaqus二次开发技术进行板架参数化建模并计算结构动力学加速度响应,利用数据裁剪技术进行数据扩充,构建损伤板架的加速度响应数据集。本文提出使用CNN-LSTM方法用于检测船体板架的裂纹中心坐标,以结构的动力学加速度响应信号作为输入,研究此方法的性能,并与使用单一方法进行对比,得到了以下结论:

1)本文提出的 CNN-LSTM联合模型几乎可以完美地预测损伤位置,在150 mm(5%结构尺寸)容差下的检测准确率为99.81%。

2)噪声会对CNN-LSTM联合模型的性能产生一定影响,准确率随信噪比减小而降低,本文提出的基于CNN-LSTM的损伤位置检测方法在信噪比高于10 dB时可以正常工作。

3)与CNN和LSTM模型相比,本文提出的CNN-LSTM模型更适合解决船体板架损伤位置检测问题,具有更好的抗噪性和检测精度。

参考文献
[1]
张志民. 散货船船体结构损坏分析及强度评估[D]. 上海: 上海海事大学, 2006.
[2]
AVCI O, ABDELJABER O, KIRANYAZ S, et al. A review of vibration-based damage detection in civil structures: from traditional methods to machine learning and deep learning applications[J]. Mechanical Systems and Signal Processing, 2021, 147: 107077. DOI:10.1016/j.ymssp.2020.107077
[3]
腾帅. 基于深度学习的结构损伤识别方法研究[D]. 广州: 广东工业大学, 2020.
[4]
ABDELJABER O, AVCI O, KIRANYAZ S, et al. Real-time vibration-based structural damage detection using one-dimensional convolutional neural networks[J]. Journal of Sound and Vibration, 2017, 388: 154-170. DOI:10.1016/j.jsv.2016.10.043
[5]
张松林, 马栋梁, 王德禹. 基于长短期记忆神经网络的板裂纹损伤检测方法[J]. 上海交通大学学报, 2021, 55(5): 527-535.
ZHANG S L, MA D L, WANG D Y. Method for plate crack damage detection based on long short-term memory neural network[J]. Journal of Shanghai Jiao Tong University, 2021, 55(5): 527-535.
[6]
MA D L, WANG D Y. A deep learning-based method for hull stiffened plate crack detection[J]. Proceedings of the Institution of Mechanical Engineers, Part M: Journal of Engineering for the Maritime Environment, 2021, 235(2): 570-585. DOI:10.1177/1475090220966465
[7]
张健飞, 黄朝东, 王子凡. 基于多头自注意力机制和卷积神经网络的结构损伤识别研究[J]. 振动与冲击, 2022, 41(24): 60-71.
ZHANG J F, HUANG C D, WANG Z F. Research on structural damage identification based on multi-head self-attention and convolutional neural networks[J]. Journal of Vibration and Shock, 2022, 41(24): 60-71.
[8]
胡钧剑. 基于深度学习理论的桥梁结构损伤识别研究[D]. 南昌: 华东交通大学, 2021.
[9]
包均. 含裂纹和腐蚀船舶结构极限强度计算方法及系统可靠性研究[D]. 镇江: 江苏科技大学, 2018.
[10]
ERNY C, THEVENET D, COGNARD J Y, et al. Fatigue life prediction of welded ship details[J]. Marine Structures, 2012, 25(1): 13-32. DOI:10.1016/j.marstruc.2011.10.001
[11]
LIN Y, NIE Z, MA H. Structural damage detection with automatic feature-extraction through deep learning[J]. Computer-Aided Civil and Infrastructure Engineering, 2017, 32(12): 1025-1046. DOI:10.1111/mice.12313