1.一种基于CNN深度学习的桥梁裂缝检测定位方法,包括以下步骤:步骤一、建立并训练深度学习模型;
步骤二、采集一张桥梁裂缝的图片作为待检测图像;
步骤三、使用步骤一得到的训练好的模型对待检测图像进行检测,并记录由所述训练好的模型识别出所有桥梁裂缝面元的横纵坐标,然后统计桥梁裂缝面元的个数,记为N;
所述训练好的模型在识别桥梁裂缝面元时采用窗口滑动算法,所述窗口滑动算法的计算过程如式(1)所示:其中,Pb(x)和Pc(x)为在本次识别过程中,桥梁背景面元和桥梁裂缝面元所识别的概率;f(x)为0,表示当前的桥梁面元图像为桥梁背景面元,f(x)为1,表示当前的桥梁面元图像为桥梁裂缝面元,t为一个概率区分阈值;
步骤四、使用简单选择排序算法对步骤三记录的所有桥梁裂缝面元的横纵坐标分别进行排序,挑选出最小的横纵坐标和最大的横纵坐标组成两个新的坐标点,根据两个新的坐标点在待检测图像上画出矩形区域,该矩形区域为桥梁裂缝在待检测图片中的位置。
2.根据权利要求1所述的一种基于CNN深度学习的桥梁裂缝检测定位方法,其特征在于,所述步骤二和步骤三之间还具有算法的加速步骤,所述加速步骤采用高斯金字塔和ROI区域相结合的加速策略,所述加速步骤具体为:J01.利用高斯金字塔对待检测图像进行降采样,得到低分辨率图像;
J02.利用步骤一中训练好的模型对J01中的低分辨率图像进行检测,并记录由所述训练好的模型识别出所有桥梁裂缝面元的横纵坐标;
J03.使用简单选择排序算法对J02中记录的所有桥梁裂缝面元的横纵坐标分别进行排序,将最小的横纵坐标组成一个最小坐标点,将最大的横纵坐标也组成一个最大坐标点,并将最小坐标点和最大坐标点代入式(3)中,求解出两个新的坐标点,式(3)如下所示:xh=(xl)*2n
n
yh=(yl)*2 (3)
其中,xl,yl为低分辨率图像上确定位置的横纵坐标,xh,yh为待检测图像上确定位置的横纵坐标,n为高斯金字塔向下采样的次数;
J04.根据J03中的两个新的坐标点在待检测图像上确定矩形区域,并将该矩形区域设为ROI感兴趣区域。
3.根据权利要求1所述的一种基于CNN深度学习的桥梁裂缝检测定位方法,其特征在于,所述步骤一具体为:第一步,建立深度学习模型;
第二步,采集大量的桥梁裂缝图片,对采集的图片进行数据集扩增;
第三步,利用扩增后的数据集训练深度学习模型,得到训练好的模型。
4.根据权利要求3所述的一种基于CNN深度学习的桥梁裂缝检测定位方法,其特征在于,所述第二步中数据集扩增的方法包括以下步骤:K01.将采集的大量桥梁裂缝图像的分辨率归一化为1024*1024;
K02.使用W*H固定大小的窗口在桥梁裂缝图片不重叠的进行滑动,同时,将窗口覆盖下的桥梁裂缝图片切分成小切片,其中,包含桥梁背景的小切片称为桥梁背景面元,包含桥梁裂缝的小切片称为桥梁裂缝面元,不重叠滑动的计算公式方法为:公式(4)中,W和H为滑动窗口的宽和高,坐标(imgRoiLx,imgRoiLy)为ROI区域的左上角点坐标,坐标(imgRoiRx,imgRoiRy)为ROI区域的右下角点坐标,其中i和j的计算如下面的公式所示:公式(5)中,srcImgw,srcImgh,分别为被窗口滑动的桥梁裂缝图片的宽和高,令srcImgw=srcImgh=1024pixel;
K03.将每个小切片作为一个ROI图片,构建成一个RGB数据集;
K04.对K03中的RGB数据集进行挑选标记,挑选标记采用的方式是:将ROI图片分成桥梁裂缝面元和桥梁背景面元;
K05.对挑选标记后的RGB数据集进行分类,构成一个用于训练深度学习模型的训练集和验证集。
5.根据权利要求3所述的一种基于CNN深度学习的桥梁裂缝检测定位方法,其特征在于,所述第一步的深度学习模型为DBCC分类模型,所述的DBCC分类模型包括:卷积单元,采用卷积核将输入的特征映射图进行卷积求和,该卷积单元由4个卷积层构成;
池化单元,用于对卷积后的特征映射图进行下采样,降低特征映射图的分辨率并且选取优秀的特征,该池化单元由3个池化层构成,并且,3个池化层分别交叉设置在4个卷积层之间;
分类单元,通过全连接层将卷积单元输出的特征映射图输入至softmaxloss函数进行分类,并给出分类结果,该分类单元由2个全连接层构成。
6.根据权利要求5所述的一种基于CNN深度学习的桥梁裂缝检测定位方法,其特征在于,所述卷积层采用的卷积核数量分别为:32、64、128、256。
7.根据权利要求1所述的一种基于CNN深度学习的桥梁裂缝检测定位方法,其特征在于,所述步骤三中的概率区分阈值t的取值范围为0.90~0.99。