APP下载

基于可变形卷积与特征融合的机场道面裂缝检测算法

2021-12-31李海丰韩红阳

南京航空航天大学学报 2021年6期
关键词:道面卷积裂缝

李海丰,景 攀,韩红阳

(中国民航大学计算机科学与技术学院,天津 300300)

机场道面裂缝一直是场道管理部门关注的焦点。根据《民用机场道面评价管理技术规范》[1],裂缝是由于重复荷载、温度翘曲应力和温度收缩应力等综合作用引起的板块开裂造成的。裂缝作为机场道面最主要的病害之一,严重影响着机场的安全运营。因此,对机场道面裂缝进行有效检测至关重要。

传统的道面裂缝检测是通过人工检测,该方法效率低、成本高、安全性差。随着图像处理技术的发展,道面裂缝自动采集与识别技术成为当前主流。为了从图像中高效、准确、快速地提取裂缝,国内外学者对此进行了广泛而深入的研究。Liu等[2]使用基于阈值分割的方法来提取裂缝区域,此方法虽简单,但易受光照、纹理、噪声的影响,适用范围有限。针对此问题,Landström等[3]利用形态学方法和逻辑回归统计方法来检测钢铁产品上的裂缝,虽然噪声得到抑制,但是造成了过度分割,误检严重。孙波成等[4]通过使用小波技术对道面图像进行多分辨率二维小波分解,突出边缘位置,增强裂缝边缘提取效果,该方法虽然一定程度上可以抑制噪声,但是需要调整小波与分解水平。Nguyen等[5]提出的自由形式各向异性裂缝检测算法(Free‑form anisotropy,FFA)在综合考虑了亮度和连通性后对道路进行裂缝检测,该算法在背景简单的裂缝图像上检测效果较好,但是对图像中阴影与标线区域比较敏感,容易形成误检。Shi等[6]提出了基于随机结构化森林的道路裂缝自动检测算法(Automatic road crack detection using random struc‑tured forests,CrackForest),该算法融合了多个层次的互补特征来表征裂缝,在某种程度上可以将裂缝与噪声进行区分,但是CrackForest算法是基于人为设定的特征进行裂缝检测,对于复杂背景、低对比度的裂缝识别能力不佳。机场道面具有纹理复杂、噪声强、对比度低的特点,同时跑道上还存在飞机轮痕和橡胶污染等干扰因素,因此,传统的裂缝检测算法与机器学习算法并不能对机场道面裂缝进行有效检测。

伴随深度学习技术广泛应用于各领域,其在图像分类与识别等方面取得了巨大成功,研究者对基于深度学习的图像裂缝检测进行了深入研究。Deng等[7]使用Faster R‑CNN[8]算法用于复杂背景的混凝土桥梁裂缝检测,存在漏检和精度差的问题。针对此问题,Fang等[9]提出了一种基于深度学习模型和贝叶斯概率分析的图像裂缝检测方法,精度得到了一定程度提升。Fan等[10]首先将采集的图像分割成带有裂缝的图像块,然后使用深度学习网络分割裂缝,但是裂缝分割结果太宽,精度较差。曹锦纲等[11]通过在编码器‑解码器结构中加入注意力机制,构建了一种基于注意力机制的裂缝检测网络,提高了公路路面裂缝检测的性能。文青[12]使用Mask R‑CNN[13]算法检测建筑物表面裂缝,裂缝的分割结果是源于检测结果,由于候选框提取不准确,导致裂缝分割结果较差。Liu等[14]提出了一种深层次卷积神经网络(A deep hierarchi‑cal feature learning architecture for crack segmenta‑tion,DeepCrack),通过引入监督网络与条件随机场进行像素级端到端的语义分割,该网络在一定程度上提高了裂缝分割能力,但是存在较多误检的问题,尤其当病害与背景对比度变化不大时,误检较重。Dung[15]使用全卷积网络(Fully convolutional networks for semantic segmentation,FCN)[16]对 混凝土裂缝进行检测,采用编码器‑解码器结构,在一定程度上提升了裂纹检测能力,然而由于反卷积只采用了最后一层卷积层的特征,导致其在裂缝分割阶段边缘模糊,细节信息未能得到较好的表达。但是多尺度特征融合[17‑18]可以生成语义信息更加丰富的高分辨率特征图,有助于对裂缝这种小目标特征的提取。

因此,本文构建了一种基于可变形卷积与多尺度特征融合的机场道面裂缝检测网络(Deformable convolution and feature fusion neural network,DF‑Net)。该网络基于编码器‑解码器网络框架,在编码器阶段通过可变形卷积[19]模块与多尺度卷积模块加强对形态多样的裂缝特征的学习,在编码器阶段使用特征融合模块融合低层特征与高层特征,达到抑制噪声,恢复裂缝细节的目的,从而提升机场道面裂缝检测性能。

1 基于可变形卷积与特征融合的裂缝分割模型

本文提出的DFNet网络模型包含了3个模块,分别为可变形卷积模块(Deformable convolution module,DCM)、多尺度卷积模块(Multi‑scale con‑volution mudule,MCM)和特征融合模块(Feature fusion module,FFM),其详细网络模型结构如图1所示。首先,将原始彩色图像输入可变形卷积模块,根据所设计的可变形卷积模块来提取形态各异的裂缝特征,增强网络对裂缝形态特征的学习;其次,使用多尺度特征提取模块获得不同感受野下的裂缝特征,使得提取的裂缝特征包含更多的全局信息;最后,在特征融合模块中,将不同阶段低级特征与高级特征进行融合,细化裂缝分割结果。

图1 DFNet模型结构图Fig.1 Structure diagram of DFNet model

1.1 可变形卷积模块

裂缝分割的一大挑战在于裂缝具有形态多样、方向多变的细线性特征,即使通过大量的数据也很难使常规的卷积网络完全学习到各种形态的裂缝特征。因为构造卷积神经网络所用的模块几何结构固定,其几何形变建模能力有限,这种局限性决定了常规卷积只能在输入特征图固定位置提取裂缝特征,大大减弱了裂缝特征的表征能力。针对此问题,本文引入了具有空间几何形变能力的可变形卷积,可变形卷积通过可变形的接收场自适应地捕获裂缝的各种形态与尺度信息,如图2所示,展示了普通卷积与可变形卷积提取裂缝信息的方式。

图2 3×3普通卷积与可变形卷积示意图Fig.2 3×3general convolution and deformable con‑volution

可变形卷积计算建立在普通卷积之上,且不需要额外的监督机制。普通的二维卷积计算包括两个步骤:(1)使用规则网格G对输入特征图x进行采样;(2)对采样点进行加权求和。网格G定义了感受野的大小和膨胀率。此处定义了一个3×3大小、膨 胀 率 为1的 网 格G,G={(-1,-1),(-1,0),…,(0,1),(1,1)}。因此,对于输入特征图x上p0的输出特征映射y可以定义为

式中:pn为枚举G中的点,w(*)为采样点权重。而可变形卷积是在标准卷积的常规网格采样位置G上增加了Δpn偏移量,{Δpn|n=1,2,…,N},其中N=|G|。此时,特征图采样位置变为pn+Δpn,因此式(1)可变为

由图2与式(2)说明卷积层利用与输入特征映射具有相同空间分辨率的偏移矢量,使得原采样点向外扩展以聚焦于裂缝轮廓。可变形卷积提取裂缝特征的过程如图3所示,对于输入网络的裂缝特征图,为了学习偏移量Δpn,可变形卷积在原有卷积上附加一层卷积。在训练期间,生成输出特征的卷积核与偏移量同时学习裂缝的特征信息,而偏移量由附加卷积层学习得到,组成了偏移域,其中通道维度2N对应于N个2维偏移量(包括x方向与y方向)。由于Δpn通常不是整数,为了有效地学习偏移量,采用双线性插值算法确定偏移后采样点的值。由于可变形卷积可使采样点自由变换,因此在提取特征过程中就可以根据裂缝的形态进行动态调整,从而学习不同形态裂缝的几何形变,这种自适应确定裂缝形变尺度与位置的方法对裂缝特征提取具有较大的影响。

图3 可变形卷积特征提取过程Fig.3 Deformable convolution feature extraction process

1.2 多尺度卷积模块

由于裂缝分布不均,长短不一,裂缝检测常存在较大尺度上的变化,而单一尺寸卷积核具有固定尺度,在提取目标特征上存在一定的局限性。针对该问题,本文设计了多尺度卷积模块,如图4所示。模块中引入了4种不同大小的卷积核,可以获得多种尺度感受野,对输入特征图在不同卷积核上提取裂缝特征,并对其进行特征融合。

图4 多尺度特征提取模块Fig.4 Multi‑scale feature extraction module

通过1×1卷积操作,在不改变特征图大小的情况下有效减少参数量,增加非线性特征和增强通道之间信息的交流。该模块使用不同大小的卷积核并列提取裂缝特征,不仅增加了网络的深度也增加了网络的宽度。更深的网络具有更强的非线性表达能力,可以学习裂缝更复杂的特征;增加网络的宽度,使每一层学习到更多的裂缝特征,包括亮度、频率、纹理等特征。多尺度特征提取模块通过控制不同大小感受野,可以提取裂缝更加全面的信息,对于裂缝特征的学习具有增强作用。

1.3 特征融合模块

卷积神经网络不同层次的特征旨在编码不同层次的信息,高层特征聚焦于目标的语义信息,而低层特征包含更多细节信息,低层特征提取器可以捕获局部实例级别的细节信息。由于裂缝具有细而长的特征,在提取裂缝特征过程中,保留边缘信息至关重要,因此在特征融合模块中融合了裂缝的语义信息和细节信息。

该模块的设计采用由牛津大学视觉几何组(Vi‑sual geometry group,VGG)提出的VGG‑19模型。本文期望得到不同尺度的有意义的侧输出,由于5次池化后产生的特征图很小,通过反卷积得到的裂缝预测特征图比较模糊,无法生成精确的分割结果,而且全连接层属于计算密集型网络,会大大增加计算时间与内存消耗,因此舍弃了第5次池化后产生的特征图与全连接层。另外,不同卷积层之间的信息可以互补,而传统的网络结构特征融合的方法存在信息利用率不足的问题,多数网络只采用了池化前的最后一层卷积层。由于每一层的卷积网络都保存了本次卷积所提取的特征,为了充分利用特征信息,达到更好的分割效果,在DFNet模型中改进了该网络,结构如图5(a)所示,对侧输出进行上采样之前,先把每一个阶段产生相同尺寸的特征图进行相加融合,然后对其进行反卷积操作,得到与原图相同尺寸的特征图,再使用Concatenate函数融合特征向量,最后,得到DFNet模型预测的分割结果。

特征融合模块每个卷积阶段的侧输出结果,如图5(b)所示,其侧输出分别对应图5(a)中的侧输出,将其进行融合后的效果明显优于某一阶段效果,可发现融合后裂缝边缘更明显,图像噪声更少,更接近标签。

图5 特征融合模块Fig.5 Feature fusion module

对于输入图像,低层特征很好地保留了裂缝区域边界,适用于提取细节信息,但是噪声较多。相反,高层特征显示出更好的抗噪声能力,但无法保留精确的分割边界。因此,线性融合不同卷积阶段提取的特征可以达到抑制噪声,明确分割边界的良好效果。

2 实验结果与分析

本文算法基于深度学习开源框架TensorFlow实现,使用Python编程语言,程序的运行环境是主频为3.2 GHz的i7‑8700CPU处理器,64GB的运行 内 存,GPU为GeForceGTX1080ti,11GB显 卡内存,操作系统为Ubuntu18.04 。

2.1 数据集

本文所用裂缝数据来源于国内多个机场,裂缝数据是由合作单位成都圭目机器人有限公司自主研发的机场道面检测机器人自动采集完成。道面检测机器人搭载的相机是加拿大Teledyne DAL‑SA公司研发的CMOS面阵相机nano m1920。具体的采集方法是将相机以某一高度固定在机器人上,提前为机器人设定行驶路线,机器人以20~30km/h的速度在机场跑道连续拍照,采集图像,机场道面检测机器人如图6所示。本文从拍摄的图像中选取了960张带有裂缝的图像,图像为1800像素×900像素大小。为了方便训练模型,采用窗口滑动算法将数据集按照512像素×512像素大小进行裁剪,然后经过水平翻转、垂直翻转、旋转变换等操作来增强数据,得到12960张512像素×512像素大小图像。最后采用随机分类算法按8∶1∶1的比例将数据集分为训练集10368张,验证集1 296张以及测试集1296张。

图6 机场道面检测机器人Fig.6 Airport road surface detection robot

2.2 实验参数设置

本文算法在训练过程中,Batch size设置为2,优化器选用Adam,初始学习率为le-5,损失函数为交叉熵损失函数(Cross entropy loss),网络激活函数选用ReLu,Shuffle设置为True。

2.3 训练过程分析

图7展示了DFNet模型在训练过程中训练损失和验证损失的变化情况,蓝色曲线代表训练损失,黄色曲线代表验证损失。从图中可看到,在训练过程中损失函数值迅速下降,在训练初期两个损失函数值有较大波动,随着迭代轮数增加两个损失值逐渐稳定趋于收敛,并且在第50次时验证损失取得了最佳值,随后训练次数增加验证损失函数值逐渐发散,可能导致过拟合。因此根据损失函数值变化情况,本模型在迭代50次时,性能最佳。

图7 训练过程中损失值曲线变化Fig.7 Loss value curve change during training

2.4 算法评价指标

为了对本文提出的机场道面裂缝检测算法DFNet进行量化评估,本文采用精确率(Pixel ac‑curacy,PA)、交并比(IoU)、准确率(Precision)、召回率(Recall)和F1‑Score对结果定量分析。精确率PA是指正确预测像素的个数与图像中的像素总数的比值;交并比是指裂缝预测区域和标签区域两者之间交集与并集的比例;准确率Precision表示裂缝区域被正确检测出来的像素个数占被检测出来的像素总数的比例;召回率表示裂缝区域被正确检测出来的像素个数占应该被准确检测出来的裂缝 区 域 像 素 个 数 的 比 例;F1‑Score是Precision与Recall的综合评价指标。在二分类分割任务中,评价指标分别定义如下

式中:TP表示裂缝区域被正确检测出来的像素点个数,FP表示背景区域被预测为裂缝像素点的个数,FN表示裂缝区域被预测为背景的像素点的个数,TN表示背景区域被正确检测出来的像素个数。

2.5 对比算法

为了验证DFNet的有效性,在所采集的机场道面裂缝数据集上,将DFNet与Canny、FFA、CrackForest、FCN、U‑net[20]以及DeepCrack六种算法进行了对比分析。其中,Canny算法是一个多级边缘检测算法,通过采用高斯滤波来平滑图像,去除噪声,应用双阈值的方法来决定潜在的边缘。在该实验中双阈值设置为100和200,使用Python语言调用Opencv中Canny函数实现。FFA算法考虑了裂缝图像亮度与连通性,是一种专门用于路面裂缝检测的算法。CrackForest是一种基于随机结构化森林的新型道路裂缝检测框架。DeepCrack算法是专门用于裂缝分割的,通过引入监督网络与条件随机场以端到端方法像素级预测裂缝区域。FCN使用VGG16为骨干网,使用跳跃连接结构进行特征提取,采用全卷积网络输出与原图相同大小的裂缝预测图。U‑net网络采用对称式编码器‑解码器框架提取裂缝特征。

2.6 对比实验结果

本实验将从定量和定性两个方面评估DFNet算法。表1展示了各个算法在机场道面裂缝数据集中定量比较的结果。从表1中可以看出,DFNet算法在精确率、IoU、准确率、召回率以及F1‑Score上均取得最优的结果,分别为99.59 %、56.20 %、92.21 %、89.72 %和90.95 %。由于所用机场道面裂缝数据集背景复杂,在所对比的算法中,Canny算法、FFA算法和CrackForest算法受道面噪声影响较大,在图像背景对比度低时检测效果不佳,无法准确分割裂缝区域与背景区域,误检漏检严重,因此导致Precision、Recall和F1‑Score较低。从表1中可知深度学习算法整体表现优于传统算法与机器学习算法,FCN、U‑net、DeepCrack和DFNet在该数据集上均取得了较好的分割结果。其中DFNet性能最佳,Precision高达92.21 %,远远领先于其他算法。

表1 DFNet与其他算法对比结果Table1 Comparison results between DFNet and other algorithms %

图8所示为部分数据可视化结果,由图8可以看出:当图像背景良好,裂缝区域与背景区域有显著差异时,7种算法均可将裂缝较好地提取出来(如图8第1列数据)。当道面图像受到标线、噪声、水渍和拉毛影响时,Canny算法、FFA算法以及CrackForest算法受到本身算法的局限性,均未能较完整地提取裂缝区域,同时出现了多处误检与漏检。U‑net算法在有水渍背景时检测效果较差,出现不同程度的漏检(如图8第3列与第5列数据),这是由于U‑net网络属于浅层网络,在提取裂缝高维特征时回归效果较差,未能全部检测出水渍中的裂缝。DeepCrack算法受到标线的影响,在标线与裂缝重叠区域出现漏检,因此导致该算法精度较高,召回率较低。FCN算法存在分割边缘模糊的问题。由于FCN网络将特征图直接还原为原始尺寸图像,使其细节表达不佳,导致分割结果不精确。从图8可视化效果中可以看到DFNet可以准确地提取不同背景下裂缝的特征。通过从定量与定性两方面的分析,DFNet算法在机场道面裂缝数据集上取得了更优的检测效果。

图8 不同算法结果对比Fig.8 Comparison results between different algorithms

2.7 消融实验

DFNet架构设计采用了模块化的概念,每个模块都是相对独立设计的,允许根据需要来设定与升级网络。为了验证DFNet模型中可变形卷积模块(DCM)、多尺度模块(MCM)以及特征融合模块(FFM)的有效性,本文开展如下消融实验,实验结果如表2所示。从DFNet中去掉可变形卷积模块,裂缝的IoU、Recall与F1‑Score均有不同程度的下降,实验结果表明,具有空间几何形变能力的可变形卷积具有更强的捕获裂缝特征的能力。DFNet网络去掉多尺度模块后,裂缝的IoU、Precision、Re‑call与F1‑Score分别下降1.42 %、0.83 %、1.54 %与1.19 %,这表明使用不同大小卷积核的多尺度模块有助于DFNet在较大感受野下获得更多的裂缝病害信息。保持其他不变,去掉特征融合模块后,虽然准确率取得了最高值,但是召回率下降较多,因此导致综合评价指标IoU与F1‑Score分别下降2.2 %与0.77 %。由表2消融实验可知,同时加入这3个 模 块,DFNet在 综 合 评 价 指 标IoU与F1‑Score上取得最高值,且召回率达到了最高,验证了DCM、MCM和FFM的有效性。从工程应用的角度来看,必须有效地检测所有裂缝。因此,提高机场道面检测中裂缝分割的召回率,显得更加重要。

表2 DFNet不同模块有效性的验证Table2 Verification of the effectiveness of different DF⁃Net modules %

3 结 论

本文针对机场道面裂缝检测效果不佳的问题,采用深度神经网络,通过设计可变形卷积模块、多尺度模块和特征融合模块,构建了一种基于可变形卷积与特征融合的机场道面裂缝检测网络。实验结果表明,本文算法能准确地对机场道面裂缝进行分割,提高了机场道面裂缝检测的性能,为机场道面检测人员减少工作量以及对道面的养护与管理提供了一定的理论依据。但该模型距离实时检测仍有一段差距,同时模型的检测精度与准确性仍有改善空间,需要进一步研究。

猜你喜欢

道面卷积裂缝
通航机场跑道道面承载能力分析
混凝土裂缝修补材料与应用
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
从滤波器理解卷积
地球的裂缝
基于傅里叶域卷积表示的目标跟踪算法
湿滑跑道飞机着陆轮胎-水膜-道面相互作用
生命必须有裂缝,阳光才能照进来
公路飞机跑道沥青道面受力分析与承载能力检测方法