1.基于图像处理的桥梁表观病害自动识别方法,其特征在于,包括以下步骤:S1:获取桥梁裂缝原始图像;
S2:使用高斯滤波对获取的桥梁裂缝原始图像进行一次去噪处理;
S3:对滤波处理后的图像依次进行分割、二次去噪处理;
在所述步骤S3中,对图像进行分割的具体过程如下:S301:计算图像的总平均灰度,公式为:
其中,前景点数占图像比例为 ,平均灰度为 ;背景点数占图像比例为 ,平均灰度为 ;
S302:计算前景和背景图像的方差,公式为:
;
S303:寻找满足方差最大的分割阈值t作为图像二值化的阈值,利用分割阈值t对图像进行二值化处理,实现图像分割;
在所述步骤S3中,对图像进行二次去噪的具体过程如下:S311:在分割后的图像上选取两点作为矩形的两个对角点构造一个对应的矩阵;
S312:再将矩阵中的噪声点的值从1改变到0;
S313:在矩阵的四个方向上创建四个元素均为0的矩阵并将其融合成与原图像矩阵相同阶数的矩阵;
S314:将两个矩阵相加,得到结果矩阵,将结果矩阵的所有1的值改为0,再将所有2的值改为1,得到二次去噪后的图像;
在所述步骤S311~S313中,具体处理过程如下:S3111:利用ginput函数确定所要框选范围两对角点的坐标 和 ;
S3112:根据 和 的像素点坐标值来计算出所框选部分的长宽大小;
S3113:读取出原二值化图像的长宽分别为L、H;
S3114:利用 、 、L、H计算出以框选部分为中心的四个方向上的矩阵的长度和宽度,框选部分的上方矩阵 、左侧矩阵 、右侧矩阵 、下方矩阵 的长度、与宽度计算公式分别如下:其中,表示矩阵的长度,表示矩阵的宽度;
S3115:得到四个元素全为0的矩阵 、 、 、 和元素为1的中心矩阵,然后将这五个矩阵对应的排列方式组合起来,构造出矩阵 ;
S4:对经过分割、二次去噪处理的图像中的裂缝断裂区域进行连接;
S5:利用八方向算子对连接后的裂缝进行边缘检测;
S6:获取裂缝条数并标记;
S7:对裂缝条数识别结果进行可视化展示。
2.根据权利要求1所述的基于图像处理的桥梁表观病害自动识别方法,其特征在于:在所述步骤S2中,使用高斯滤波对图像进行一次去噪处理,采用离散化二维高斯滤波函数作为高斯核中的权值系数,利用高斯模板将二维连续正态分布函数离散化,得到权值矩阵;二维高斯滤波函数公式为:其中, 表示标准差, 表示像素点坐标,且为整数。
3.根据权利要求1所述的基于图像处理的桥梁表观病害自动识别方法,其特征在于:在所述步骤S4中,像素点坐标表示的像素点在图像中的位置,像素点的值表示像素点二值化后的数值;对裂缝断裂区域进行连接时,利用断裂处的两个端点的像素点坐标确定经过两点的直线,利用直线公式找到直线上断裂点之间的像素点坐标,并将像素点的值改为1,进而将直线连接起来;接着判定两个断裂端点上下非0点的个数再对其取平均值,让直线上的点上下所对应的n个点的值改为1,对原始裂缝宽度进行模拟。
4.根据权利要求1所述的基于图像处理的桥梁表观病害自动识别方法,其特征在于:在所述步骤S4中,在裂缝断裂区域进行连接时,具体过程如下:通过ginput命令人为识别断裂端点 和 ,计算两点的斜率k并采用点斜式拟合出两点之间的直线,具体公式如下:
计算在斜率k后,在matlab中利用循环语句和点斜式求出直线上的点,并将其数值从1改为0。
5.根据权利要求1所述的基于图像处理的桥梁表观病害自动识别方法,其特征在于:在所述步骤S5中,八方向算子利用0°、22.5°、45°、67.5°、90°、112.5°、135°、157.5°八个方向的模板进行边缘检测。
6.根据权利要求1所述的基于图像处理的桥梁表观病害自动识别方法,其特征在于:在所述步骤S6中,将经过边缘检测后的图像,获取裂缝条数并标记;标记时,在图像中通过连通区域分析将具有相同像素值且相邻像素找出并进行标记,利用two‑pass算法遍历两次图像,第一次遍历给图像所有的像素设置一个标记,并记录各个标记属于对应的连通区域,第二次遍历将每个像素标记为所属的连通区域,进而计算出裂缝的条数且将裂缝标记出来。