基于MU-net 的混凝土桥裂缝识别方法

2022-09-28 03:17:46梁栋张伟于洋
北京交通大学学报 2022年4期
关键词:准确率像素卷积

梁栋,张伟,于洋

(河北工业大学a.土木与交通学院,b.人工智能与数据科学学院,天津 300401)

我国的交通工程建设发展迅速,对我国的经济建设和国防建设等领域发挥着至关重要的推动作用,同时也为人民群众的生活提供了极大的便利.公路交通建设作为最基本的交通工程建设,在里程总量和同行速度上都取得了长足进步.截至2019 年底,全国公路桥梁建有87.83 万座,长度共6 063.46 万m[1],数目庞大.大部分桥梁建设以混凝土桥梁为主,在其服役过程中,由于荷载和材料性能的退化,桥梁表面会出现裂缝、混凝土剥落、蜂窝麻面、钢筋锈蚀等病害,从而影响公路运输的安全质量,危害人民的生命财产安全.其中,裂缝这一病害对于桥梁安全有着极大的影响.目前常见的混凝土桥梁裂缝人工检测手段[2],需要由检测人员通过梯子和支架或者乘坐桥检车到达底板或腹板附近,利用裂缝观测仪对桥梁的表面病害进行检测、记录,从而得到病害的宽度、长度、位置等参数.现有的人工检测方法检测的精度和全面性易受检测人员状态影响,消耗大量人工和时间成本,具有一定危险性,影响交通.

随着图像采集设备的不断升级、计算机技术的快速发展,对裂缝损伤检测方法研究得到长足的发展.Lu等[3]对通过在局部区域设置阈值来检测裂缝,并对峰值阈值选择方法进行了改进,在迭代阈值选择之前进行增强、平滑、去噪处理,从而实现对图像裂缝的识别.然而该方法只考虑像素点灰度值本身的特征,不考虑空间特征,因此对噪声比较敏感.Oliveira等[4]提出了一种自动检测和表征裂纹的系统,通过6 种无监督的裂纹检测方法,对比得出基于高斯模型的方法综合性能最好,但是难以对细小裂缝进行分析识别.Zhao等[5]针对Canny 边缘检测算法不能检测出弱边缘,不能识别变化较小的灰度,检测到的边缘不连续的缺陷,在Canny 边缘算子的基础上,采用Mallat 小波变换对输入图像的弱边缘进行增强,在Canny 算法步骤中通过遗传算法的二次优化来获得自适应标准下的合适阈值,有效消除了噪声,但对于有涂抹痕迹干扰的情况,不能做到裂缝的准确识别.Zhang等[6]采用设计了匹配路面裂缝特征的滤波器来对路面裂缝进行识别,与传统的边缘检测方法相比有更好的性能,但是对设计好的滤波器有较弱的裂缝检测效果不乐观.由于处在自然环境的混凝土桥梁裂缝表面的复杂多样性,对裂缝检测技术提出了更高的要求,为了适应这一情况,自动检测系统必须能够学习各种条件下混凝土表面的图像信息.

近年来,深度学习的创新与发展为解决这一问题提供了可能.深度学习区别于传统方法中的特征提取,不依赖于人工设计的提取器[7],以数据作为驱动,经过大量样本的学习实现更高效准确的特征表达.柴雪松等[8]优化了SLIC 超像素分割算法并将ResNet18应用于隧道衬砌裂缝识别中,结果表现良好.李良福等[9]利用滑动窗口算法将桥梁裂缝图像分成16×16 的面元,搭建了一种基于CNN 深度学习的DBCC分类模型用于识别桥梁裂缝面元和背景面元,进而实现对完整裂缝的识别.沙爱民等[10]搭建了3 种不同的CNN 模型先后进行道路裂缝与坑槽的识别与提取,对路面病害进行测量.Xu等[11]提出了一种基于CNN的端到端裂缝检测模型,利用atrous 卷积在不降低分辨率的情况下获得更大的感受野,与传统分类模型相比,所提出的模型具有更好的性能.Kim等[12]提出了一种基于CCRS 的分类框架,并基于加速鲁棒特征和卷积神经网络构建分类模型,可以有效排除噪声,对裂缝进行识别.Babikir等[13]使用SVM 方法执行分类以减少混凝土结构裂缝分类错误,并且进一步使用CNN 方法实现了网络训练和特征提取,相比单一类型分类器和图像分割类型的处理方法有更好的准确性.Cao等[14]对混凝土裂缝图像进行灰度自适应阈值分割,并基于形态学梯度和局部灰度值不同进行处理,最后利用DenseNet对混凝土构件表面裂缝进行快速分类,识别准确率在90%以上.孟诗乔等[15]提出一种Grid-Deeplab 模型实现对裂缝的语义分割,通过对网格化后裂缝图像的不同子区域进行建模,使模型具有区别图像有效区域的能力,从而显著提升了裂缝检测模型的检测效率和准确率.此外还有很多其他网络模型如U-net[16]、SegNet[17]、R-CNN[18]等应用于裂缝识别中.虽然各种神经网络识别精度不断提高,但是计算量也在增加,工业自动化方向的需求并没有得到满足,在工业自动化生产过程中,如何使用较少的计算代价,又快又准的完成对裂缝的识别是难点之一.

为解决上述难点,本文对U-net 模型进行改进,参考Mobile-net 对深度可分离卷积的运用,搭建了轻量化的MU-net 网络.从准确率、召回率、识别效率3方面对MU-net、U-net、Mobile-net 3种模型分析对比,体现出MU-net 模型在工业应用中的优势,为建立混凝土桥梁病害的智能检测系统提供了重要技术参考.

1 网络模型设计

U-net 网络模型具有较高的语义分割精度,在医学图像分割领域有良好的表现[19].然而由于U-net 模型参数较多,计算量大,占用内存多,导致语义分割速度不能满足工业实时监测的要求.与U-net 不同,轻量级网络Mobile-net 利用深度可分离卷积,可以极大减少参数量,从而提高运行速度.深度可分离卷积是分解卷积的一种形式.由深度卷积和点卷积相结合而成的深度可分离卷积如图1 所示.

图1 深度可分离卷积示意图Fig.1 Schematic diagram of deeply separable convolution

深度卷积对每个输入通道应用一个单一的滤波器,然后应用点卷积来结合深度卷积的输出,这是由于深度可分离卷积将普通卷积的空间相关性和通道相关性分离,导致通道间没有信息交流,需要配合1×1 卷积核的点卷积共同使用.

标准卷积的参数量S1表示为

式中:M为输入通道数;N为输出通道数;DKDK为卷积核大小;DFDF为特征大小.

深度可分离卷积的参数量S2表示为

因此相对于标准卷积过程,深度可分离卷积的参数减少量可以计算为

标准卷积与深度可分离卷积计算过程如图2 所示,深度可分离卷积层由多个分解层组成,其中包含深度卷积、1×1 逐点卷积、批量归一化和修正性单元(Rectified Linear Unit,ReLU)激活,而不是遵循批量归一化和ReLU 激活的常规卷积层.

图2 两种卷积计算过程对比Fig.2 Comparison of the computation process for deep separable convolution and standard convolution

基于Mobile-net 网络模型特殊的优势,将深度可分离卷积及其特殊的结构应用于U-net 模型中,建立了一种轻量级MU-net 网络模型,如图3 所示.

图3 MU-net 网络模型结构Fig.3 MU-net network model structure

该模型沿用了U-net 模型的基本结构,由“U”型左边编码器(下采样)和右边解码器(上采样)组成.在编码器中,将传统的卷积操作以深度可分离卷积代替,用于对图像特征的提取,然后设置最大池化层实现下采样操作,通过消除非极大值,去除冗余信息,对特征进行压缩,降低下层的计算复杂度,减少参数量,随着网络的加深,特征抽象能力逐渐增强,直到获得尺寸为32×32×1 024 的特征图.在解码器中,设置上卷积层来完成上采样操作,设置有2个3×3 卷积层对图像特征进行提取,将下采样的特征输出和上采样具有相同尺寸的特征输出进行融合,对特征图进行扩展,尽可能地保留下采样过程中一些重要的特征信息,以获取更好的特征提取效果,特征融合过程中图片的尺寸变化如表1 所示.随着层数加深,逐步将特征图恢复至输入尺寸.

表1 特征融合过程Tab.1 Process of feature fusion

为了增强模型的非线性表达能力,并在一定程度上缓解训练过程中梯度消失的问题,在网络模型的每个卷积层之后,加入ReLU 作为激活函数.ReLU 函数本质上是分段线性模型,前向计算与反向计算时无需指数之类操作,这使得计算代价小,速度快.ReLU 函数关闭了右边,从而会使得很多的隐层输出为0,即网络变得稀疏,起到了类似正则化作用,可以在一定程度上缓解过拟合.

2 数据集的制作

依托于天津市外环线混凝土桥,搜集了1 200 张混凝土桥梁裂缝照片,像素为1 024×1 024.为了使训练的模型在工业应用中有更好的实用性和准确性,对收集到的照片进行筛选,除了整洁的混凝土表面的裂缝之外,还应包括但不限于有涂抹痕迹影响的裂缝、光照影响的裂缝、含有其他噪声的裂缝,筛选得到的典型裂缝图像如图4 所示,最终筛选得到1 000 张裂缝图片.取其中200 张作为测试集用于最终模型的测试,800 张图片用于训练和验证,利用PS软件将该800 张图片分割成像素为512×512 的图片实现对数据集的扩充.

图4 数据集图像Fig.4 Dataset images

用于模型训练的数据集除了原始照片之外,还需制作标签并与原始照片一一对应,采用labelme 软件制作标签,生成json 文件,然后将json 文件转化可以使用的png 格式的标签,数据集制作过程如图5 所示.最终得到3 400 张裂缝照片和与之对应的标签,用于训练和验证的裂缝照片为3 200 张,像素为512×512,其中训练集包含2 880 张照片,验证集包含320 张照片,用于最终模型测试的测试集包含200 张裂缝照片,像素为1 024×1 024.

图5 数据集制作Fig.5 Production of datasets

3 模型训练

考虑到训练数据集大,模型在服务器中运行训练,利用Anaconda 建立虚拟Python 环境,使用的语言为 Python3.7.3,由开源的深度学习框架Tensorflow-gpu2.0.0 和Keras2.3.1 进行搭建.服务器操作系统为Windows 10 专业版64 位,处理器为Intel® Core ™i7-8700 CPU @ 3.20 GHz,RAM 为16G DDR4-2400.测试时利用CUDA 和CUDNN 来进行GPU 加速训练计算,所用GPU 为NVIDIA Ge-Force GTX 1080.

语义分割通过对每个像素进行密集地预测、推断标签来实现细粒度的推理,从而实现图像像素级识别.由于每张图片的像素量是庞大的,并且卷积神经网络对训练量的要求较高,这导致模型计算量较大.因此设置合理的网络参数,可以更快更平滑地达到理想精度.在训练过程中使用卷积神经网络广泛应用的交叉熵损失函数计算每次迭代的向前计算结果与真实值的差距,从而指导下一步的训练向正确的方向进行,交叉熵损失函数的损失率L为

式中:y为真实值,取0(非裂缝)或1(裂缝)为预测值,取值范围为[0,1].

学习率决定着目标函数能否收敛到局部最小值以及何时收敛到最小值,学习率过大可能会导致参数在最小值两侧来回摆动,学习率过小可能会导致收敛速度过慢.采用Adam 算法优化网络模型,Adam 优化算法兼顾Momentum 和RMSProp 算法的优点,既有解决参数摆动幅度过大的功能,又具有使得模型收敛速度更快的能力.Adam 优化算法的权重更新过程可表示为

式中:t为时间步;gt为梯度向量;mt和vt分别为梯度的第一(均值)和第二(非中心方差)有偏矩估计和分别为梯度的第一(均值)和第二(非中心方差)有偏矩估计的偏差修正值;β1和β2为矩估计的指数衰减率;α为学习率;wt为模型权重;ε 为10-8倍的单位向量.

在训练中设置Adam 算法的初始学习率为10-3,当损失函数3 次不下降时,对学习率进行阶层性下降,系数取0.5.β1为0.9,β2为0.999.批量大小为4,周期设置为200 轮.为增加模型的泛化能力,训练时将3 200 张像素为512×512 的裂缝原图像顺序打乱,90%用于训练,10%用于验证,训练过程及结果如图6 所示.根据模型训练结果可以看出,当模型训练到30 轮时,训练损失函数以及训练准确率趋于平缓,对应的验证损失函数以及验证准确率也趋于平缓.验证精度最高为99.48%,对应的损失值为0.006.

图6 模型训练结果Fig.6 Results of model training

4 模型效果评估

4.1 准确率分析

准确率是卷积神经网络模型进行语义分割的重要评价指标.准确率是分类正确的样本数占样本总数的比例.对于一个有m个样本的验证集Z,用训练好的模型f(x)对每个样本进行预测,预测结果为准确率A计算公式为

式中:f(x)为模型函数;θi为样本;为样本预测值;m为样本数量;I为样本预测正确的概率.

在准确率的计算中分类正确的样本数指的不仅是正例分类正确的个数还有反类分类正确的个数,因此在总样本中正类与反类的样本数相差不大的情况下,准确率是评价一个模型识别效果好坏的合理指标.针对混凝土裂缝的识别,正类为裂缝,反类为其他.裂缝所占的像素数约为总样本的10%,即使裂缝完全没有识别出来,准确率也能约达90%.所以基于准确率本身的计算原理,其实并不能很好地反映混凝土裂缝的识别效果,需要一个更为合理的评价指标对裂缝识别算法进行评价.

4.2 召回率分析

引入机器学习另一重要的评价指标召回率来对裂缝识别效果评价比准确率更为客观.首先对于裂缝识别这一二分类问题需要构建混淆矩阵,在混淆矩阵中,预测结果和实际结果两两结合可以对样本数据分为4 类:真正例(True Positive,TP)指样本(即像素)在原图像中为裂缝,并被模型正确地检测出来为裂缝;真反例(True Negative,TN)指样本在原图像中不为裂缝,被模型正确地检测出来为非裂缝;假正例(False Positive,FP)指样本在原图像中不为裂缝,但被模型错误地检测出来为裂缝;假反例(False Negative,FN)指样本在原图像中不为裂缝,被模型正确地检测出来为裂缝.对于混凝土裂缝图片,召回率R是指在所有的裂缝像素中被模型正确检测出来的裂缝像素所占的比值,表示为

为了验证MU-net 模型对混凝土裂缝的识别效果,建立了U-net 模型与Mobile-net 模型,用相同的训练集进行训练,利用测试集中的200 张裂缝照片(1 024×1 024)对3 个模型进行验证,各自的召回率对比结果如图7 所示.结果表明,MU-net 模型对裂缝的识别效果优于其他两种模型.

图7 召回率对比图Fig.7 Comparison chart of recall rate

对验证得出的数据进行统计分析如表2 所示,MU-net 的平均准确率比U-net 高0.29%,比Mobile-net 高3.53%;在平均召回率方面,MU-net比U-net 高1.86%,比Mobile-net 高6.73%;MU-net的识别效率虽然比Mobile-net 低,但是相对于U-net的平均识别时间缩短了68.5%.

表2 不同模型的验证集数据统计Tab.2 Data statistics for the validation set of different models

对于在实际情况下拍摄的混凝土裂缝部分特征提取效果如图8 所示.结果表明,MU-net 与U-net识别效果比Mobile-net 好,对一些细小的裂缝也能做出正确地识别.

图8 混凝土裂缝部分特征提取效果对比Fig.8 Comparison of partial feature extraction effect for concrete cracks

5 应用实例

为了将MU-net 网络模型更好地应用于实际的工业自动化生产中,实现对混凝土桥裂缝实时自动地识别,在实验室条件下配置了一套针对实验梁的集成检测系统,系统硬件设备如图9 所示,该系统包括工业相机、控制器、无线通信和自行走支架装置.

图9 自行走支架装置Fig.9 Self-propelled walking support device

首先通过定位装置将工业相机调整到合适的位置,该过程需要人工对相机进行前后、上下方向的调节,然后控制器在移动端接受指令并控制定位装置沿轨道滑行,定位装置每滑动一段距离将停下来启动工业相机进行拍照,所得图像由无线通信系统传回移动端进行裂缝特征提取,直至遍历整个混凝土梁.移动端控制界面如图10 所示,定位装置滑动的速度及距离可由移动端设置控制.

图10 计算机控制界面Fig.10 Computer control interface

在移动端搭建MU-net 模型作为该集成检测系统的处理后端,将自行走装置拍摄的照片进行裂缝特征识别并保存.混凝土梁裂缝的部分识别结果如图11 所示.结果表明,MU-net 模型在经过丰富的数据集的训练学习后,可以有效排除噪声、光照的干扰,对混凝土裂缝图像的识别表现良好.

图11 自行走装置采集识别效果Fig.11 Self-walking device collection and recognition effect

该装置在混凝土桥梁裂缝检测外业中可节省大量人力物力,通过在横桥向及纵桥向规则移动,可对主梁实现网格化的100%全面检测,同时内业上通过MU-net 模型实时进行图像裂缝特征提取,满足了工业自动化生产中实时准确的要求.

6 结论

1)基于U-net 网络结构,结合轻量化模型Mobile-net 中深度可分离卷积的优点,设计了一种可快速实现裂缝特征提取的轻量化网络模型MUnet,通过训练,MU-net 模型的最高准确率为99.48%,对应损失值为0.006,表明该模型合理有效.

2)采用Mobile-net 模型与U-net 模型、Mobilenet 模型分别对200 张混凝土裂缝图像进行识别对比,结果显示MU-net 的平均召回率比U-net 提高了1.86%,比Mobile-net 提高了6.73%;平均识别时间相较于U-net 缩短了68.5%,满足工业生产精确、实时的要求.

3)在实验室条件下搭建了一套集成检测系统,对实验梁的裂缝损伤进行自动化检测.结果表明,模型可以有效排除噪声、光照的干扰,对混凝土裂缝图像的识别表现良好.

猜你喜欢
准确率像素卷积
赵运哲作品
艺术家(2023年8期)2023-11-02 02:05:28
像素前线之“幻影”2000
基于3D-Winograd的快速卷积算法设计及FPGA实现
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
健康之家(2021年19期)2021-05-23 11:17:39
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
“像素”仙人掌
从滤波器理解卷积
电子制作(2019年11期)2019-07-04 00:34:38
高速公路车牌识别标识站准确率验证法
基于傅里叶域卷积表示的目标跟踪算法