APP下载

基于图像处理方法的混凝土检测方法

2020-05-11陈建立

液晶与显示 2020年4期
关键词:算子边缘重构

陈建立

(四川建筑职业技术学院 建筑系, 四川 德阳 618000)

1 引 言

随着人工智能方法的迅速发展,人工智能方法在各行各业都得到了广泛的运用。混凝土材料是当下土木行业的主要原材料之一,如建筑、桥梁和隧道等。由于桥梁和隧道工程所处的环境非常复杂,混凝土裂缝检测显得十分困难,常常需要人工进行检测。但人工检测存在许多的弊端,一方面人工检测时可能会出现安全问题,如桥梁桥墩检测;另一方面,人工检测的检测范围具有一定的限制,太狭小的地方人工不能检测到,如隧道检测等。因此,人工智能方法在混凝土检测中得到了广泛的研究。

杨松等通过分析混凝土裂缝图像面积-周长关系的分形规律,提出了一种结合简单灰度骨架提取和分形优化的裂缝识别算法[1]。徐爱华等针对水泥混凝土路面裂缝识别的干扰和噪声问题,提出一种结合图像增强和数学形态学的裂缝检测方法[2]。刘清元等结合数字图像处理技术,提出了判断混凝土裂纹的综合算法[3]。肖利芳等提出基于Sobel算子的改进边缘检测算法对图像进行处理,能够准确识别混凝土表面裂缝的边缘[4]。阮小丽等基于既有图像预处理技术,提出一种新的裂缝提取及宽度计算方法[5]。卫军等设计了一套提取裂缝特征信息的系统,实现对宽度和长度特征的测量[6]。郭全民等采用图像处理技术实现了路面裂缝的自动识别和病害参数的自动提取[7]。方志等提出采用在混凝土表面粘贴纯色标定块来标定、修正原始图像[8]。查旭东等采用计算机图像处理技术进行裂缝图像分析,提出了裂缝宽度的图像识别方法[9]。朱力强等基于SVM的近似裂缝结构分析法算法对隧道表面裂缝图像各成分进行提取,从而达到识别裂缝的目的[10]。王冲等提取破损图形的形状特征实现了典型路面破损的分类[11]。许薛军等研究了基于数字图像的桥梁裂缝检测方法,深入分析评价了图像灰度化、边缘检测等图像处理算法[12]。韩晓健等建立基于深度卷积神经网络的裂缝识别模型,在图像上自动定位裂缝并结合图像局域阈值分割方法提取裂缝[13]。

上述研究学者通过建立神经网络模型、改进算法等对混凝土裂缝检测开展研究。但在检测裂缝过程中,有许多参数需要进一步调整。为了减少计算时间,需要对图像进行重构,而重构的采样率需要调试得出;为了提高混凝土裂缝的检测效率,需要选择出最优的二值化阈值;在检测过程中,会出现边缘阴影,因而需要选择不同的计算算子来进行检测。本文根据上述思路,系统地介绍了混凝土裂缝检测过程中各参数的选择情况。通过建立卷积神经网络检测模型,为今后混凝土裂缝检测提供一种新的方法。

2 原材料

本文采用的是广西南宁星之健体育设施有限公司生产的水泥,化学成分如表1所示,性能如表2所示。采用德州中瑞土工材料工程有限公司生产的矿渣,德阳产品加工厂生产的砂和石子,水为普通的自来水,具体的混凝土配合比如表3所示。

表1 水泥化学成分 Tab.1 Chemical composition of cement %

表2 水泥性能Tab.2 Cement properties

表3 混凝土配比Tab.3 Concrete proportioning (kg·m-3)

3 测试方法

3.1 卷积神经网络的介绍

卷积神经网络(CNN)是由Hubel和Wiesel在20世纪所提出的概念[14-15],是近年来发展较为完善的一种深度学习神经网络。该算法通过多个串行的卷积层和池化层间隔排列的方式逐层地学习数据特征,避免了传统机器学习算法中需要人工提取数据特征的种种弊端,其结构如图1所示[16]。

图1 卷积神经网络结构Fig.1 Structure of convolutional neural network

从图1中可以看出,卷积神经网络包含输入层、卷积层、池化层和输出层等。其中卷积层是卷积神经网络的重要特点,对元素进行卷积运算以提取输入图像的特征,进行语义理解[17]。卷积层的参数包括一系列小尺寸的滤波器。在进行预测或训练时,每个滤波器在特征图上沿着横纵两个方向滑动会生成新的特征图。通常一个卷积层中,可以输入一个大小为9×9×9的特征图,经过卷积运算输出一个大小为3×3×3的特征图,如图2所示。

图2 卷积层Fig.2 Convolution layer

池化层一般位于卷积层之间,主要是为了减少特征图的大小,即减小特征图的宽度和高度,如图3所示[18]。

图3 池化层Fig.3 Pool layer

3.2 图像预处理

一个图像文件可以采用对应尺寸大小的矩阵来表示,矩阵中的数值即为图像像素在对应位置上的亮度。通常图像采集系统获得的照片是彩色的RGB图像,彩色图像用三维矩阵(a×b×3)表示[19]。

彩色图像的像素值由R、G、B三个分量决定,每个值的取值范围在0~255,即每个像素值有256×256×256种可能,直接对彩色图像进行处理,会降低计算效率,增加图像处理的难度。通常对初始获得的裂缝图像进行灰度化、滤波等各种预处理,以便实现更好的裂缝识别效果。选取R、G、B三个通道的任意一个通道值作为灰度图像灰度值。

ImgGray (a0,b0) =R(a0,b0) or

ImgGray (a0,b0) =G(a0,b0) or

ImgGray (a0,b0) =B(a0,b0),

式中,ImgGray (a0,b0)为灰度图像在(a0,b0)处的灰度值。

4 分析结果

4.1 采样重构效果

在MATLAB中调用卷积神经网络函数,首先对图片进行预处理:图片重构,这一步骤能够为减少计算时间做铺垫。从图4可以得出,当采样率为0.1时,重构图像显得有点模糊,与原图相比,混凝土部分都比较粗糙,这说明在重构图像没有采集到精确的图像信息。当采样率为0.3与0.4时,重构图像基本一致,与原图相比也几乎无差异,这说明当采样率达到0.3时就足以重构图像。

4.2 二值化结果

在MATLAB中设定不同的二值化阈值来分析二值化对图像识别的影响,以确定最佳阈值,如图5所示。从图5中可以看出,卷积神经网络能够识别混凝土中的裂缝。当二值化阈值为0.3时,能够看出裂缝的所在位置及走势,但相比于二值化为0.4时的图像不够清晰。而当二值化阈值在0.5以上时,很明显地能看到裂缝其他位置出现阴影,即边缘效应,因此在该图片识别过程中二值化阈值为0.4为最佳。

图4 图像重构Fig.4 Image reconstruction

图5 二值化阈值的影响Fig.5 Effect of binarization threshold

4.3 边缘检测效果

根据上述结果,即二值化阈值为0.4为最佳,但上述显示出过高的二值化阈值会出现边缘效应。因此本节在MATLAB中选择3种边缘检测算子(拉普拉斯算子、索贝尔算子和Canny算子)对图片的边缘进行检测,如图6所示。

图6 边缘检测Fig.6 Edge detection

从图6以看出,3种算子在边缘检测中都能够准确地识别出裂缝的形态与特征。每个算子识别特点均不同,拉普拉斯算子通过边缘检测得出了一条断断续续的曲线,但在曲线上下两侧均不同程度地出现了亮点;Canny算子在边缘检测中的识别效率最高,裂缝发展过程显得最为明显,并且能够标记出完整的裂缝图像;索贝尔算子通过边缘检测能够较为清晰地看出裂缝发展情况,但在裂缝的中间处出现不连续的情况,导致所呈现出的裂缝形态不是十分完整。因此,在卷积神经网络中采用Canny算子进行边缘检测。

3.4 裂缝检测效果

为了验证3种算子(拉普拉斯算子、索贝尔算子和Canny算子)对图片边缘检测识别准确的同时对裂缝本身也能够进行准确识别,调用Matlab程序对裂缝进行识别,如图7所示。

图7 裂缝检测Fig.7 Crack detection

从图7可以得出,3种算子在裂缝检测过程中能够识别出裂缝的大致走向与形貌。但从图中可以总结出Canny算子在边缘检测和裂缝检测中的效果是最佳的,索贝尔算子的边缘检测和裂缝检测的效果比拉普拉斯算子要好。

5 结 论

通过Matlab工具箱建立了卷积神经网络模型,并以此对混凝土图片的重构、二值化阈值、混凝土裂缝的边缘和混凝土裂缝的走向形貌进行检测,得到了以下结论:

预处理图像能够减少计算时间,而合适的采样率对图片的重构十分重要。当采样率较小时,重构的图像会显得十分模糊;采样率越大,重构图片会越清晰,但处理时间会明显加长。对于本文混凝土图片处理时,采样率为0.3时最佳。

随着二值化阈值的增大,裂缝检测效率逐渐增大随后下降。二值化阈值较小时,会导致裂缝检测不连续,不清晰;而过高的二值化阈值会导致图片出现较强的边缘效应;对于本文混凝土图片处理时,二值化阈值为0.4时最佳。

3种检测算子(拉普拉斯算子、索贝尔算子和Canny算子)在边缘检测和裂缝检测中都能够识别出裂缝的形态与走向。但不同算子的检测效率都不同,Canny算子对边缘检测和裂缝检测的效果最佳,索贝尔算子的效果次之,拉普拉斯算子的效果较差。

猜你喜欢

算子边缘重构
与由分数阶Laplace算子生成的热半群相关的微分变换算子的有界性
一类截断Hankel算子的复对称性
视频压缩感知采样率自适应的帧间片匹配重构
长城叙事的重构
拟微分算子在Hp(ω)上的有界性
Heisenberg群上与Schrödinger算子相关的Riesz变换在Hardy空间上的有界性
北方大陆 重构未来
北京的重构与再造
一张图看懂边缘计算
在边缘寻找自我