基于MATLAB的路面裂缝检测系统[过程图,源码]

本文介绍了基于MATLAB的路面裂缝检测系统,包括图像灰度化、去噪(均值滤波、中值滤波、小波变换)、路面阴影消除算法以及裂缝特征提取(边缘检测、面积和长度计算)。通过图像预处理方法,如灰度化、去噪和边缘增强,提高了裂缝检测的准确性和效率,为自动化检测提供了有效手段。
摘要由CSDN通过智能技术生成

基于MATLAB的路面裂缝检测系统[过程图,源码]

  1. 课题背景

裂缝是最常见的路面损坏,可能会危及公路和高速公路的安全。在路面裂缝变的更糟糕之前及时进行修补,可以大大节省路面维修的资金。路面裂缝是评估道路状况,并进行必要的道路维修的重要信息。在过去的二十年,由于基于图像的路面裂缝检测技术提供了一个安全,高效,经济的方式,各种图像处理方法已被提出的路面裂缝检测。

基于假设沿裂缝的强度通常低于背景的强度,周围的路面,强度阈值已被广泛使用于检测裂纹。然而,这些阈值的方法只能产生不相交的裂纹碎片,因为强度沿裂纹可能无法持续低于背景。此外,路面阴影往往导致路面图像的照度不均匀,其还可以降低该阈值设定方法的性能。基于边缘检测的方法也被用于裂纹检测。然而,可能出现的低对比度裂缝和背景之间的散斑裂纹可能会将存在于背景的许多散斑噪声误认为裂纹片段。与传统的人工检测方式相比,视觉检测效率高、自动化程度和安全性更强,本课题拟对基于视觉的路面裂缝检测方法进行研究。传统的基于图像的路面裂缝检测方法通常假设路面裂缝图片具有较高的对比度和较好的连续性,但实际生活中往往不是这样的。这是因为,1)路面影像常常含有路面来自于树木,电线杆以及其他事物的阴影造成的亮度不均匀;2)路面各种纹理带来大量的点状噪声;3)路面裂缝由于汽车载重碾压、风化等作用发生退化造成其对比度下降、连续性降低。以上原因,使得裂缝在路面影像中表现为低信噪比的线状目标,给裂缝的自动化识别带来了很大的困难。为了解决这些问题,我们开发了大地测量学的阴影去除算法去除路面的阴影,而保留的裂缝。然后对去除阴影后的裂缝进行预处理,最后做裂缝提取。

二、 具体实现

2.1 图像灰度化

一般摄像头得到的裂缝图像是24位真彩色图,需转换成灰度图,一方而便于后续的更快速图像处理,另一方而也是对处理多种颜色路面裂缝进行了统一。而且后续的一些处理方法也要求图像是灰度图,所以我们首先对裂缝图像进行灰度化处理。

原图:

图1 原图

灰度后图片:

图2 灰度后

2.2 图像去噪

现实中的数字图像在数字化和传输过程中常受到成像设备与外部环境噪声干扰等影响,称为含噪图像或噪声图像。减少数字图像中噪声的过程称为图像去噪。 实际图像中,多少都会存在一些噪声,而使图像模糊,从而使实验结果不是那么直观,影响我们判断。所以本节我们针对裂缝图像进行去噪。

如下即分别为用均值滤波对加有高斯噪声、椒盐噪声的图像处理后的对比图:

图3 图4

图5 图6

(1) 均值滤波

均值滤波也称为线性滤波,其采用的主要方法为邻域平均法。其基本原理是用均值替代原图像中的各个像素值,即对待处理的当前像素点(x,y),选择一个模板,该模板由其近邻的若干像素组成,求模板中所有像素的均值,再把该均值赋予当前像素点(x,y) ,作为处理后图像在该点上的灰度g(x,y)

如下即分别为用均值滤波对加有高斯噪声、椒盐噪声的图像处理后的对比图:

图 7 图 8

代码如下:

     b = imread('123.jpg');

     l=b(:,:,1)*0.299 + b(:,:,2)*0.587 + b(:,:,3)*0.114;

     imshow(b)

     J = imnoise(l,'salt & pepper',0.02);

     k = imnoise(l,'gaussian',0,0.005);

     K1= filter2(fspecial('average',3),J)/255;

     subplot(121),imshow(K1)

     title('3*3的椒盐噪声均值滤波')

     K2= filter2(fspecial('average',7),k)/255;

     subplot(122),imshow(K2)

     title('3*3高斯噪声均值滤波')

(2) 中值滤波

中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术。其实现原理如下:将某个像素邻域中的像素按灰度值进行排序,然后选择该序列的中间值作为输出的像素值,让周围像素灰度值的差比较大的像素改取与周围的像素值接近的值,从而可以消除孤立的噪声点。

其具体的操作是:首先确定一个以某个像素为中心点的领域,一般为方形领域(如3 * 3、5 * 5的矩形领域),然后将领域中的各个像素的灰度值进行排序。

如下即分别为用中值滤波对加有高斯噪声、椒盐噪声的图像处理后的对比图:

图 9 图 10

代码如下:

     b = imread('123.jpg');

     l=b(:,:,1)*0.299 + b(:,:,2)*0.587 + b(:,:,3)*0.114;

     imshow(b)

     J = imnoise(l,'salt & pepper',0.02);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值