复杂背景下交错低秩组卷积混合深度网络的路面裂缝检测算法研究 下载: 1095次
1 引言
混凝土公路作为交通枢纽的重要组成部分,不仅承担着运输货物的重任,而且关系着运输人员的安危。由于长期受风化、雨雪、应力等因素影响,混凝土公路表面和内部结构往往会发生开裂,这些裂缝直接反映了混凝土公路结构的健康状况,因此及时准确地进行裂缝检测对于公路养护和事故预防至关重要[1-3]。
近年来一些图像处理技术(IPTs)已被用于检测民用基础设施的裂缝,并且在某些场合已经取代了人工现场检测,这些基于IPTs的裂缝检测算法通过为每个图像像素设计各种梯度特征,然后用二分类器来判断一个图像像素是否含有裂缝。文献[ 4]提出了一种基于图像处理和机器学习的路面裂缝分类算法,该算法使用支持向量机(SVM),根据每个图像块是否包含裂缝进行分类,但是该方法对于复杂裂缝的检测效果不佳。文献[ 5]对SVM算法进行改进,提出了一种基于高斯尺度空间和 SVM 的裂缝检测算法,但是在噪声干扰较大时检测精度较低。文献[ 6]提出了一种基于Gabor滤波器的裂缝检测算法,利用Gabor函数分析裂缝图像,检测裂缝,但是该方法对于纹理复杂的裂缝检测效果不佳。文献[ 7]提出了一种基于结构化随机森林的道路裂缝检测框架Crack Forest,该框架通过引入结构化随机森林生成了高性能的裂缝探测器,该探测器可以用于识别常规类型的裂缝。文献[ 8]提出了一种不需要人工标样的柔性路面裂缝自动检测与表征的完整集成系统,虽然可以减少传统目测所带来的人为主观性,但是检测精度有待提高。文献[ 9]提出了一种基于图像高维特征压缩映射的路面裂缝检测算法,利用最小二乘支持向量机方法检测裂缝和非裂缝,虽然检测效率比较高,但是检测精度不够理想。
上述基于IPTs的裂缝检测算法虽然相对于人工裂缝检测方法取得了较好的效果,但是没有考虑复杂噪声干扰对检测效果的影响,检测准确性和检测效率不高,并且在实际情况下混凝土路面具有光照强度不均匀、拓扑结构复杂、对比度低、纹理背景复杂、噪声干扰大等特点[10-12],上述IPTs算法难以检测其在复杂背景中的裂缝,因此探索一种有效的裂缝检测算法显得尤为重要。
2012年以来,深度学习算法取得了突飞猛进的发展,越来越多的深度学习算法已经广泛应用于混凝土路面裂缝检测中。文献[ 13]提出了一种基于卷积神经网络(CNN)的路面裂缝检测算法,使用CNN模型构建了一个从图像中检测路面裂缝的分类器,CNN能够自动学习图像特征,无需结合IPTs即可提取特征。文献[ 14]对传统的卷积神经网络进行改进,提出了一种使用卷积神经网络和朴素贝叶斯进行数据融合的裂缝检测算法(NB-CNN),使用朴素贝叶斯决策有效地丢弃误检的情况,相对于CNN网络,检测效果更好。文献[ 15]提出了一种基于多输入卷积神经网络(MI-CNN)的裂缝检测方法,采用不同大小的卷积核在不同的输入端提取不同维度的图像特征,以充分利用原始图像的信息,然后对每个输入端提取的特征进行自适应融合。最后,通过Softmax函数完成裂缝的分类。虽然这些深度学习方法相对于图像处理方法在常规裂缝图像中取得了较好的效果,但是由于网络模型本身的特点,模型的参数量比较大,处理图像的效率较低。
随着深度学习技术的发展,人们对轻量级、高效、高精度的裂缝检测算法提出了更高的要求,上述基于深度学习的裂缝检测算法参数计算量大,不能消除参数冗余。本文基于复杂背景下的混凝土路面,提出了一种将低秩核和组卷积结合的交错低秩组卷积混合深度网络(ILGCHDN)的路面裂缝检测算法,该算法充分利用低秩核和结构稀疏的特点,在提高检测精度的同时简化了卷积层中网络结构,消除了卷积核的冗余,增加了更多有效计算,并且在卷积后使用一个全局池化操作代替传统网络中的全连接层,进一步减小了模型参数和总计算量。
本文首先对采集的路面裂缝图像采用重叠滑动窗口裁剪方法建立裂缝图像数据集,然后训练一个具有较好鲁棒性的分类器,对裂缝和非裂缝图像进行分类,最后对裂缝图像进行二值化处理求取裂缝的最大宽度,从而对混凝土道路的健康状况进行预测。
2 交错低秩组卷积混合深度网络的路面裂缝检测算法
裂缝检测的目标是确定一个图像块中裂缝的精准位置。为了解决此问题,本文提出了一种交错低秩组卷积混合深度网络的路面裂缝检测算法,用于裂缝和非裂缝图像的检测与分类。将裂缝和非裂缝图像分别标注为正样本和负样本,如果裂缝像素位于一个图像块的中心区域,则这个图像块被标记为一个正样本。否则,此图像块被标记为一个负样本。
2.1 混凝土裂缝图像数据集的建立
采用索尼(SONY)HDR-CX680高清数码摄像机作为数据传感器,分别在一天中不同时段以及一些树荫遮挡下,在10条在役高速公路中采集包括裂缝、水渍、油污、停车线、井盖、车辙印、拼接缝、光滑路面等2000张分辨率为3632 pixel×4608 pixel的路面图像,其中采用裂缝测宽仪测量裂缝宽度图像1500张,裂缝数据集如
图 2. 混凝土路面裂缝图像数据集。(a)非裂缝图像;(b)裂缝图像
Fig. 2. Concrete pavement crack image dataset. (a) No-crack images; (b) crack images
如
为了解决以上问题,本研究对传统的图像裁剪技术进行改进,采用如
图 4. 采用重叠滑动窗口技术切割裂缝图像的过程图
Fig. 4. Cutting process diagram for crack images using overlapping sliding window technology
为了提高本文算法的泛化能力,本文选用公开数据集Crack500[17]、CFD[18]、 Cracktree200[7]以及采集的数据集进行组合来训练和测试模型,Crack500数据集由500张2000 pixel×1500 pixel裂缝图像组成,CFD数据集由118张480 pixel×320 pixel裂缝图像组成,Cracktree200数据集由206张尺寸为800 pixel×600 pixel的路面裂缝图像组成,由于公开数据集的数量比较少,尺寸比较大,因此这些数据集先分别旋转30°、60°、90°、180°、270°或通过水平平移来进行数据增强,然后将数据集裁剪成227 pixel×227 pixel的图像块,按照1∶1的比例将本文采集的数据集和3个公开数据集混合,组成新的数据集进行模型训练和测试。
本文从建立的裂缝图像数据集中按6∶2∶2的比例随机抽取10000张裂缝图像和10000张非裂缝图像作为训练集,抽取3000张裂缝图像和3000张非裂缝图像作为交叉验证集训练模型。同时取3000张裂缝图像和3000张非裂缝图像作为测试集测试模型的检测效果。
2.2 ILGCHDN模型
如
卷积块中每次卷积后先进行批量归一化处理,然后使用非线性激活函数ReLU激活,再将结果输入网络的下一层,这样可以加快模型收敛速度。本文针对网络的全连接层不仅增加了训练以及测试的计算量,降低了模型收敛速度,而且还具有参数量过大容易过拟合的缺点,对卷积网络结构进行改进,在卷积结束后使用一个全局平均池化(GAP)操作取代传统卷积神经网络中的全连接层和Dropout层,以获取相邻像素之间的特征响应。GAP的思想是:用特征图直接表示属于某个类的置信图,比如本文有2类,就在最后输出2个特征图,对每个特征图中的值加起来求平均值,这两个平均值即对应的概率或置信度,然后将得到的这两个平均值直接作为属于某个类别的概率,输入Softmax函数中对裂缝和非裂缝图像进行二分类。GAP不仅可以减少训练和测试的计算量,提高模型训练和测试的收敛速度,而且可以防止参数量过大出现的过拟合现象。
由于ILGCHDN模型的卷积过程将低秩卷积和组卷积有效结合,不仅可以提取更多的裂缝特征,而且可以消除冗余,增加更多有效计算,故下面将对卷积过程作详细说明。
如
式中:P(1)和P(2)是置换矩阵,P(1)将卷积结果打乱顺序重新分组,P(2)将卷积结果重新拼接在一起;
其中
ILGCHDN模型将低秩核和组卷积有效结合,不仅通过低秩分解和结构稀疏减少了模型参数,而且采用交错卷积的方式,使每个输出通道可以从多条输入通道中获取信息,从而保证模型在卷积过程中提取更多的裂缝特征,提高了裂缝检测的精度。
2.3 裂缝图像二值化处理
由于裂缝图像的拓扑结构和背景的复杂性,裂缝在图像的不同位置具有不同的亮度[22],本研究采用自适应阈值法中改进的Bernsen法对裂缝图像进行二值化处理,根据图像上各个小区域裂缝的不同亮度自动调整与其对应的阈值,从而得到较好的二值化效果。
算法的基本思想为:给定一个全局阈值T,设裂缝图像当前像素点为p(i,j),计算以p为中心,大小为K×K窗口内的所有像素的最大值pmax与最小值pmin,若两者差值相近,则该部分属于裂缝或背景;将该灰度与全局阈值比较,确定是裂缝还是背景,若二者差值较大则可能属于裂缝与背景相交的边缘,此时将二者平均值作为K阈值。使用Python和OpenCV实现裂缝图像的二值化处理。
裂缝图像二值化实验中首先对分类后的裂缝图像使用Label Me进行标记,然后分别对裂缝图像采用全局阈值法和自适应阈值法进行二值化处理。
图 7. 6张裂缝图像二值化处理后的两种算法效果对比图。(a)原始裂缝图像;(b)标记图像;(c)全局阈值法效果图;(d)自适应阈值法效果图
Fig. 7. Comparison of the renderings by two algorithms after binarization of 6 crack images. (a) Original crack images; (b) label marking images; (c) renderings of the global threshold method; (d) renderings of the adaptive threshold method
2.4 计算裂缝最大宽度
对裂缝图像进行二值化处理后,图像中裂缝呈现出若干个连通域,在图像坐标系中统计每个连通域裂缝像素点p(x,y)的坐标,从而计算裂缝的宽度[23-24]。
基于二值化后裂缝图像的特点,提出一种中轴线算法求取裂缝最大宽度,原理如
图 8. 图像坐标系中计算裂缝宽度示意图
Fig. 8. Schematic diagram of calculating crack width in image coordinate system
3 实验与分析
3.1 实验环境
本文在Python和OpenCV环境下,融合深度学习框架Tensorflow,基于ILGCHDN模型对裂缝图像进行训练及测试,利用自适应阈值二值化算法提取裂缝边缘,基于中轴线法求取裂缝最大宽度。实验硬件环境为Intel i7处理器,NVIDIA GeForce GTX 1080Ti显卡,软件环境为Windows10操作系统。
3.2 ILGCHDN模型训练
给定样本数N=20000的裂缝图像训练数据集S={x(i),y(i)},其中x(i)表示第i个样本,分类标签为y(i)∈{0,1},若y(i)=1,则数据集为正样本,否则为负样本。概率计算公式为
式中:θ表示权重,由于训练过程中θ的初始值是随机分配的,故预测的类和实际的类之间通常会存在一定的偏差,可采用交叉熵损失函数来量化分类的偏差。交叉熵损失函数表示为
式中:yi是0或1的标量;α=0.25表示调节因子;γ=2,
为了防止训练过程中出现局部极小值,ILGCHDN模型训练选用小批量梯度下降法迭代求解最佳参数,该方法既可以加快收敛速度,又可以提高训练精度。初始学习率取0.001,批次大小取10,权重衰减正则项取0.0005,动量参数为0.9,迭代50个epoch,如
3.3 实验对比与讨论
ILGCHDN裂缝检测算法与Crack Forest、Gabor filter、SVM、CNN、NB-CNN和MI-CNN裂缝检测算法进行了比较,为了定量评价不同裂缝检测算法的性能,采用准确率(Precision)、召回率(Recall)、F1评分(F1-score)3个指标,这3个指标可以根据真正例(TP, XTP)、假反例(FN, XFN)和假正例(FP, XFP)计算,计算公式为
如
表 1. 各种裂缝检测算法性能对比表
Table 1. Performance comparison table of various crack detection algorithms
|
为了进一步验证本文提出的算法的检测效果和泛化能力,如
表 2. 三个公开数据集上模型的测试结果
Table 2. Test results of the models on three public datasets
|
3.4 计算裂缝的最大宽度
裂缝二值化图像中每个点p(x,y)表示一个像素点,p(x,y)=1表示裂缝图像,p(x,y)=0表示背景图像,通过遍历图像中的每一行,统计各行裂缝图像的像素数,进而利用中轴线法计算裂缝最大宽度,算法流程如下:
Step 1:按行遍历整幅裂缝图像,统计第i(i=1~227)行裂缝像素点的个数N和每一个像素点的坐标(xi,yj);
Step 2:
Step 3:根据公式W(i)=P(i)cos
本文根据裂缝二值化后图像的特点求取裂缝宽度,
4 结论
提出一种交错低秩组卷积混合深度网络的路面裂缝检测算法,在训练集和交叉验证集上对ILGCHDN模型参数迭代优化,获取具有较好鲁棒性的裂缝分类器,在测试集上验证算法的准确性、召回率、F1评分以及每秒处理图片的数量均高于Crack Forest、Gabor filter、SVM、CNN、NB-CNN和MI-CNN裂缝检测算法,并且由于卷积过程使用低秩核和组卷积,卷积结束后采用一个全局平均池化操作,故模型参数大幅度减少,而且处理图像的效率提高。为了进一步验证模型的泛化能力,在3个公开数据集上对模型进行测试并且达到了较好的效果;然后采用自适应阈值法提取裂缝边缘,实验结果表明二值化效果优于全局阈值法;最后根据中轴线算法使用Python编程求取裂缝最大宽度,对于裂缝宽度大于2.5 mm的裂缝,测量误差均小于0.02,达到了工程实践要求。对比传统的裂缝检测方法,本文提出的裂缝检测算法更为系统高效,可以为混凝土道路的养护与维修提供理论和技术支撑。
[1] ZhangL, YangF, Daniel ZhangY, et al. Road crack detection using deep convolutional neural network[C]∥2016 IEEE International Conference on Image Processing (ICIP), September 25-28, 2016. Phoenix, AZ, USA. New York: IEEE, 2016: 3708- 3712.
[2] 李良福, 孙瑞赟. 复杂背景下基于图像处理的桥梁裂缝检测算法[J]. 激光与光电子学进展, 2019, 56(6): 061002.
[3] 王博, 王霞, 陈飞, 等. 航拍图像的路面裂缝识别[J]. 光学学报, 2017, 37(8): 0810004.
[4] Hoang N D, Nguyen Q L. A novel method for asphalt pavement crack classification based on image processing and machine learning[J]. Engineering with Computers, 2019, 35(2): 487-498.
[5] 刘立峰, 武奇生, 姚博彬. 基于高斯尺度空间和SVM的桥梁裂缝检测研究[J]. 工业仪表与自动化装置, 2019( 1): 13- 16, 114.
Liu LF, Wu QS, Yao BB. Bridge crack detection based on Gaussian scale space and SVM[J]. Industrial Instrumentation & Automation, 2019( 1): 13- 16, 114.
[6] SalmanM, MathavanS, KamalK, et al. Pavement crack detection using the Gabor filter[C]∥16th International IEEE Conference on Intelligent Transportation Systems (ITSC 2013), October 6-9, 2013. The Hague, Netherlands. New York: IEEE, 2013: 2039- 2044.
[9] 王保宪, 王哲, 张宇峰, 等. 基于图像高维特征压缩映射的混凝土表面裂缝检测算法[J]. 北京理工大学学报, 2019, 39(4): 343-351.
Wang B X, Wang Z, Zhang Y F, et al. Concrete crack region detection based on high-dimensional image feature compressed sensing[J]. Transactions of Beijing Institute of Technology, 2019, 39(4): 343-351.
[10] 张硕. 利用图像处理技术的隧道裂缝检测方法研究[D]. 镇江: 江苏科技大学, 2017.
ZhangS. The study on tunnel crack detection method using image processing technology[D]. Zhenjiang: Jiangsu University of Science and Technology, 2017.
[11] 吕岩, 曲仕茹. 基于Beamlet变换的路面裂缝图像匀光算法[J]. 交通运输系统工程与信息, 2011, 11(5): 123-128.
Lü Y, Qu S R. A pavement crack image dodging algorithm based on beamlet transform[J]. Journal of Transportation Systems Engineering and Information Technology, 2011, 11(5): 123-128.
[12] 李灏天, 陈晓冬, 徐怀远, 等. 基于Bilateral-Frangi滤波的桥梁裂缝检测算法[J]. 激光与光电子学进展, 2019, 56(18): 181401.
[13] Cha Y J, Choi W, Büyüköztürk O. Deep learning-based crack damage detection using convolutional neural networks[J]. Computer-Aided Civil and Infrastructure Engineering, 2017, 32(5): 361-378.
[14] Chen F C, Jahanshahi M R. NB-CNN: deep learning-based crack detection using convolutional neural network and naïve Bayes data fusion[J]. IEEE Transactions on Industrial Electronics, 2018, 65(5): 4392-4400.
[15] ZhaoW, Hua CR, Wang DY, et al. Fault diagnosis of shaft misalignment and crack in rotor system based on MI-CNN[M] ∥Lecture Notes in Mechanical Engineering. Singapore: Springer Singapore, 2019: 529- 540.
[16] Cireşan DC, GiustiA, Gambardella LM, et al. Mitosis detection in breast cancer histology images with deep neural networks[M] ∥Medical Image Computing and Computer-Assisted Intervention-MICCAI 2013. Berlin, Heidelberg: Springer Berlin Heidelberg, 2013: 411- 418.
[17] Yang F, Zhang L, Yu S J, et al. Feature pyramid and hierarchical boosting network for pavement crack detection[J]. IEEE Transactions on Intelligent Transportation Systems, 2020, 21(4): 1525-1535.
[18] Shi Y, Cui L M, Qi Z Q, et al. Automatic road crack detection using random structured forests[J]. IEEE Transactions on Intelligent Transportation Systems, 2016, 17(12): 3434-3445.
[19] SunK, Li MJ, LiuD, et al. ( 2018-07-20)[2019-10-30]. https: ∥arxiv.org/abs/1806. 00178.
[20] Yi SB, JuJ, YoonM, et al. ( 2018-05-31)[2019-10-30]. https: ∥arxiv.org/abs/1703. 09938.
[21] 吴天舒, 张志佳, 刘云鹏, 等. 基于改进SSD的轻量化小目标检测算法[J]. 红外与激光工程, 2018, 47(7): 0703005.
[22] 王骏飞, 黄樟灿. Ahmed Mahgoub Ahmed Talab. 一种针对图像细节优化的BM二值化方法[J]. 武汉理工大学学报, 2014, 36(8): 127-132.
Wang J F, Huang Z C. Talab A M A. New binarization method called BM aim to optimize detail of image[J]. Journal of Wuhan University of Technology, 2014, 36(8): 127-132.
[23] 方志, 彭海涛. 基于图像分析技术的混凝土桥梁结构表面裂缝宽度检测[J]. 湖南大学学报(自然科学版), 2012, 39(1): 7-12.
Fang Z, Peng H T. Crack width detection on the concrete surface of bridge based on image analysis technology[J]. Journal of Hunan University(Natural Sciences), 2012, 39(1): 7-12.
[24] 景凯. 基于智能手机的混凝土结构裂缝检测软件的开发研究[D]. 杭州: 浙江工业大学, 2016.
JingK. Development of detect cracks in concrete structures based on smart phone[D]. Hangzhou: Zhejiang University of Technology, 2016.
Article Outline
李刚, 刘强伟, 万健, 马彪, 李莹. 复杂背景下交错低秩组卷积混合深度网络的路面裂缝检测算法研究[J]. 激光与光电子学进展, 2020, 57(14): 141031. Gang Li, Qiangwei Liu, Jian Wan, Biao Ma, Ying Li. A Novel Pavement Crack Detection Algorithm Using Interlaced Low-Rank Group Convolution Hybrid Deep Network Under a Complex Background[J]. Laser & Optoelectronics Progress, 2020, 57(14): 141031.