1.一种路面裂缝数字图像提取方法,其特征在于,包括以下步骤:步骤1:路面裂缝图像预处理;
采集并读取路面裂缝图像,并将路面裂缝图像进行缩放处理;
步骤2:图像增强;
对路面裂缝图片进行处理,将相机过曝或者曝光不足的图片进行修正,并且对裂缝图像进行增强突出,便于图像分割时的阈值选择;
步骤3:图像灰度处理;
根据RGB和YUV颜色空间的变化关系来建立亮度Y与R、G、B三个颜色分量的对应关系,以亮度值表达图像的灰度值,得到灰度图像;
步骤4:图像分割;
对裂缝灰度图像进行降噪处理,然后将图像进行二值化处理;
步骤5:轮廓提取;
将图像中的裂缝图像以及噪声全部进行轮廓提取并标上序号,并获得提取出的所有轮廓的像素坐标;计算每个轮廓所围成的像素面积;
所述轮廓提取,是使用光栅扫描法对整个图像的像素点进行扫描,即从左往右、由上往下,先扫描完一行,再移至下一行起始位置继续扫描;
从边界开始点(i,j)以边界跟踪算法得到一条边界,为每条新找到的边界B赋予一个新的唯一的编号,NBD表示当前跟踪的边界的编号;在光栅扫描的过程中,保存最近遇到的边界B'的编号,记为LNBD;每当扫描到图片的新行的起始位置时,将LNBD重置为1;
假设输入图像为F={fij},将初始的NBD设为1,即把图像F的图像框架看成第一个边界;
使用光栅扫描法扫描图像F,当扫描到某个像素点(i,j)的灰度值fij不为0时执行以下步骤;
(1)将fij分三种情况讨论:
(a)如果fij=1并且fi,j‑1=0,则(i,j)是外边界开始点,NBD加1,且将像素坐标(i,j‑1)赋给坐标(i2,j2);
(b)如果fij≥1并且fi,j+1=0,则(i,j)是孔边界开始点,NBD加1,且令i2=i,j2=j+1;如果fij>1,则将fij的值赋给LNBD;
(c)其他情况,则执行步骤(4);
(2)根据上一个边界B'和当前新遇到边界B的类型,从边界类型表得到当前边界B的父边界;
(3)从边界开始点(i,j)开始按步骤3.1到步骤3.5进行边界跟踪;
(3.1)以(i,j)中心,(i2,j2)为起始点,按顺时针方向查找(i,j)的4或8邻域是否存在非
0像素点;若找到非0像素点,则令(i1,j1)是顺时针方向的第一个非0像素点;否则令fij=‑NBD,转到步骤(4);
(3.2)将像素点的坐标(i1,j1)赋给坐标(i2,j2),坐标(i,j)赋给坐标(i3,j3);
(3.3)以(i3,j3)为中心,按逆时针方向,(i2,j2)的下一个点为起始点查找(i3,j3)的4或
8邻域是否存在非0像素点;
(3.4)分三种类型进行讨论:
(a)如果(i3,j3+1)是步骤3.3中已经检查过的像素点且是0像素点,则将‑NBD的值赋给像素点(i3,j3)的灰度值fi3,j3;
(b)如果(i3,j3+1)不是步骤3.3中已经检查过的0像素点,并且fi3,j3=1,则将‑NBD的值赋给像素点(i3,j3)的灰度值fi3,j3;
(c)其他情况,不改变fi3,j3;
(3.5)如果(i4,j4)=(i,j)且(i3,j3)=(i1,j1),即回到了边界开始点,则转到步骤4;否则令将像素点的坐标(i3,j3)赋给坐标(i2,j2),坐标(i4,j4)赋给坐标(i3,j3),转到步骤3.3;
(4)如果fij≠1,则将|fij|的值赋给LNBD,从点(i.j+1)继续光栅扫描;当扫描到图片的右下角顶点时结束;
所述计算每个轮廓所围成的像素面积SD,采用格林公式法,其面积公式为:式中,设需测面积在xoy平面上,D是xoy平面上的多连通闭区域,Pk是该平面上的第k个坐标点,其中k为整数,取值范围为1≤k≤n,该坐标点的坐标为(xk,yk);按照坐标点进行连线,将曲线近似用直线段表示, 表示相邻顺序两点连接所得的直线段,n是坐标点的总数;步骤6:目标裂缝轮廓筛选;
对所有裂缝的面积进行排序,通过面积数据筛选出目标裂缝的轮廓的序号,然后,获取目标裂缝轮廓的像素坐标和所围成的像素面积;
步骤7:图像蒙板处理;
取一张纯黑色的图像,将裂缝轮廓的像素坐标赋值到纯色图像上,并对轮廓内部进行颜色填充,填充颜色与背景颜色相反;然后,获取图像中裂缝所占的矩形区域,将其他多余的区域裁剪掉,获得路面裂缝数字图像。
2.根据权利要求1所述的路面裂缝数字图像提取方法,其特征在于:步骤1中,采用光电摄像头对沥青或者水泥路面裂缝进行现场采集,摄像头安装在车的底部,拍摄角度与路面垂直;采用车载计算机按照一定频率对路面图像进行自动拍摄,采集路面裂缝、车辙、路面结构信息;采用JPG格式和PNG格式作为路面图像读取的格式;
对图像的长和宽进行调整,以适应屏幕,其缩放表达式为:
X1=fx*src.cols;
Y1=fy*src.rows;
式中,src.cols、src.rows分别表示原始图像的宽和长,fx表示水平轴上的比例因子,fy表示垂直轴上的比例因子,X1、Y1分别表示处理后图像的长和宽,fx与fy相等时可实现对图像的等比例缩放。
3.根据权利要求1所述的路面裂缝数字图像提取方法,其特征在于:步骤2中,采用伽马变换算法对路面裂缝图片进行处理;
所述伽马变换算法具体为:对整个图像的所有像素点的值使用伽马变换公式进行处理,伽马变换的彩色图像公式为:γ
f(R,G,B)=C*h(R,G,B) ;
式中,C为常数,h(R,G,B)为原始图像像素点的R、G、B通道的亮度值,f(R,G,B)为处理后的像素点的R、G、B通道的亮度值,γ为伽马系数。
4.根据权利要求1所述的路面裂缝数字图像提取方法,其特征在于:步骤6中,采用冒泡排序法将轮廓的面积进行排序,由大到小排序的冒泡排序法的运行过程如下:(1)比较相邻的数字,如果第一个比第二个小,则交换这两个数字;
(2)对每一对相邻数字做同样的处理,从开始第一对到结尾的最后一对,处理完一遍后,最后一个数字会是最小数,这个数的排序已经完成;
(3)针对所有的数字重复以上步骤,除了最后已经排序好的数字;
(4)持续每次对越来越少的数字重复上面步骤,直到没有任何一对数字需要比较,则序列最终有序。
5.根据权利要求1‑4任意一项所述的路面裂缝数字图像提取方法,其特征在于:步骤7中,所述图像蒙板处理,是通过对目标裂缝的轮廓坐标获取,在新图像中按坐标信息对相应像素点重新赋值、裁剪图像的方式,获得一张只含有完整的目标裂缝图像;具体步骤如下:(1)选取所需要的目标裂缝轮廓,获取目标裂缝轮廓的像素坐标;
(2)导入一张黑色背景的纯色图,该图的长和宽都要比正在处理的路面裂缝图片大,将轮廓像素坐标按1:1的比例映射到纯色图上,并将这些点的像素值改为255,如果目标裂缝覆盖的面积中有完好的路面,则需要对轮廓目标进行分别提取,将所有裂缝轮廓目标整合到一张图片中;
(3)对纯色图上的轮廓内部进行颜色填充,填充颜色为白色,像素值为255;
(4)以步骤(3)选择的这个点为起点,将它压入栈中,所要填充的颜色为白色,因此将该点设置为白色,判断这个点的四邻域像素;然后,设置一个颜色阈值T,假设当前像素灰度值为P(x,y),四邻域像素为M(n),n=1,2,3,4,以该阈值T判断当前像素与四邻域像素的灰度差值D=|P‑M|,如果该差值D小于阈值T,则把这个像素点M作为下一个种子点,压入栈中,否则继续判断;当栈为空时,则种子填充结束,否则重复步骤(4);
(5)采用最小矩形边框选择法,从图像左上角的像素点开始,依照高和宽绘制轮廓的垂直边界最小矩形,矩形是与图像的上下边界平行的,直到目标像素点不处在最小矩形外为止;
(6)使用ROI选择和图像裁剪,在最小矩形框选处理后,得到最小矩形的四个边界的坐标点,这些坐标点将作为ROI区域的坐标,根据ROI的坐标直接将此矩形区域围成的图像从原图中扣出,从而获得处理数据最小的含有目标裂缝的图像。
6.一种路面裂缝数字图像中裂缝修补方法,基于权利要求1‑5任意一项所述的方法获得的路面裂缝数字图像;其特征在于:对传统的闭运算进行改进,通过膨胀、滤波和腐蚀的方法,对路面裂缝数字图像中断裂的裂缝进行修补;
改进后的闭运算基本步骤为:
(1)对路面裂缝的二值化图像进行膨胀处理,邻域大小选为(M1,M1),处理次数为N1次,M1和N1的取值由所需连接裂缝的间距决定;
(2)使用中值滤波器对膨胀后的图像进行滤波,中值滤波所选的模板大小由膨胀处理后的裂缝最窄宽度决定,要求滤波后的裂缝图像没有出现断裂带;
(3)针对步骤2中所述中值滤波的特性,对图像进行腐蚀处理,邻域大小选为(M2,M2),处理次数为N2,其中M2与M1要相等,N2的取值需要比N1小。
7.根据权利要求6所述的路面裂缝数字图像中裂缝修补方法,其特征在于:通过图像细化算法提取出裂缝的骨架,首先对对二值化图像进行颜色反转,然后采用索引表图像细化算法;
细化过程需要满足两个条件,一是在细化过程中,图像应该有规律地缩小;二是在图像逐步缩小的过程中,应当使图像的连通性质保持不变;在图像细化中,要判断一个点能否去掉,是根据它的八个相邻点的情况来判断的,八个点组成六种不同的组成情况,得出以下四个判据:(1)内部点不能删除;
(2)孤立点不能删除;
(3)直线端点不能删除;
(4)如果P是边界点,去掉P后,如果连通分量不增加,则P删除;
所述索引表图像细化算法是指做出一张索引表,这个表含有需要细化的点的八个邻域的情况,该算法需要不断地遍历边缘,按照索引表对邻域点进行是否删除判断,直到边缘的每个点都不能再被删除为止;
索引表的查表方法是:设白点为1,黑点为0,边缘点为P,则P的八连通区域为:对于这些点,需要对其赋予不同的价值,若P点八邻域的某个点为黑色,则认为其价值为0,如果为白色,则按照权值表赋予对应的价值,权值表为:该表经过计算后得到如下表达式:
M=P0*1+P1*2+P2*4+P3*8+P4*16+P5*32+P6*64+P7*128;
式中,M表示计算结果,通过该计算结果查找索引表中对应的数值,即可知道该点是否需要删除,用这个方法能把所有点的情况映射到0~255的索引表中。
8.一种路面裂缝参数计算方法,基于权利要求6‑7任意一项所述的方法获得的路面裂缝数字图像;其特征在于:所述路面裂缝参数包括目标裂缝的面积、裂缝长度和裂缝平均宽度计算;
读取轮廓提取时轮廓围成的像素面积即可得到目标裂缝的面积;通过图像细化算法,提取出图像骨架,展现出裂缝的形态信息,经过细化处理后的二值化图像,其裂缝像素是黑色的,灰度值为0;背景是白色的,灰度值为255;然后,对图像进行遍历运算,按照骨架像素点的间距以及是否为背景像素点,将所有像素点进行分类,按下列公式进行裂缝长度计算:式中,Length表示裂缝的长度,X表示与相邻骨架像素点距离为1的像素点总数,Y表示与相邻骨架像素点的距离为 的像素点总数,Z表示背景像素点的总数;
裂缝平均宽度计算公式为:
式中,Width表示裂缝的平均宽度,Area表示图像中裂缝的面积,Length表示裂缝的长度。
9.根据权利要求8所述的路面裂缝参数计算方法,其特征在于:所述对图像进行遍历运算,是采用指针遍历算法,对图像中的像素点按照既定规则进行分类,将中心点为黑色的两种不同分类的像素点按照所对应间距进行累加求和,将会得到更为精确的裂缝长度;
指针遍历法的算法步骤为:
(1)令图像中的任一像素点的坐标为R[i,j],其中i表示横坐标值,j表示竖坐标值,图像从左上角开始进行遍历运算;则它的八邻域的像素点的坐标按照八邻域关系图表示;
(2)根据八邻域的坐标关系,取每个像素的中心点作为衡量像素距离的因素,将像素点分为三类:中心点和邻域点的距离为1的点有:R[i,j‑1]、R[i‑1,j]、R[i+1,j]、R[i,j+1];
中心点和邻域点的距离为 的点有:R[i‑1,j‑1]、R[i+1,j‑1]、R[i‑1,j+1]、R[i+1,j+
1];
中心点的八邻域区域没有黑色像素点,这种情况则将该点视为背景点;
(3)对以上三种情况进行分类统计,并进行裂缝长度计算;
式中,Nstr为中心点和邻域点距离为1的点数,Nsla为中心点和邻域点距离为 的点数,Len为裂缝的总长度。