1.一种基于深度学习的道路破损预警方法,其特征在于,包括以下步骤:
S101、构建道路破损数据集,或使用现有公开道路破损数据集:
道路破损数据集通过在汽车上安装摄像头,在路面上行驶过程中进行采集,采集得到的图像数据通过人工进行标注,使用标注工具将破损位置框选并进行类型标注;
S102、对道路破损数据集中的所有图像预处理,进行双边滤波操作,得到处理后的道路破损数据集:道路破损图像经过双边滤波处理后,道路破损特征更加明显,同时图像整体也变得更加平滑;
S103、构建了一种道路破损预警模型,将预处理后的道路破损图像输入道路破损预警模型中:
道路破损预警模型用于对道路上的破损位置和破损类型进行检测;
S104、对道路破损数据集进行划分,然后对道路破损预警模型进行训练与验证;
S105、道路破损预警模型训练完后,应用道路破损预警模型检测道路破损,对道路有破损的区域及时进行预警;
在所述S103中,构建了一种道路破损预警模型,将预处理后的道路破损图像输入道路破损预警模型中的具体步骤如下:S1031、设计一个FCP模块和FCB模块,FCP模块即在FCB模块后连接一个HPooling层,用于快速地提取道路破损图像的特征,增强道路破损预警模型处理复杂的道路场景的能力,减少道路破损图像特征冗余;
FCP模块由Conv层、ReLU层、LConv层、ReLU层、Conv层、ReLU层、HPooling层依次串联组成,将道路破损特征图F1输入Conv层中,得到的结果输入到ReLU层,得到道路破损特征图F2,再将道路破损特征图F2输入到LConv层,得到的结果输入到ReLU层,得到道路破损特征图F3,然后将道路破损特征图F3输入Conv层中,得到的结果输入到ReLU层,得到道路破损特征图F4,再将道路破损特征图F3、道路破损特征图F4进行concat,得到道路破损特征图F5,为FCB模块的输出结果,再将道路破损特征图F5输入到HPooling层,得到道路破损特征图F6,为FCP模块的输出结果,具体操作步骤如下:S1031-1、将道路破损特征图F1输入到卷积核大小为3×3,步长为1,零填充为1的Conv层,得到输出结果,输出通道为输入通道的一半,再将结果输入ReLU层,得到道路破损特征图F2;
S1031-2、将F2输入LConv层,LConv层在F2的输入通道,均匀的取1/4的输入通道进行特征提取(即这1/4的通道中的每个通道与相邻的同属于这1/4的通道之间间隔的通道数相同),使用卷积核大小为3×3,步长为1,零填充为1的卷积进行特征提取,而其余3/4的输入通道保持不变,直接复制到输出的结果中,得到输出结果,再将结果输入ReLU层,得到道路破损特征图F3;
S1031-3、将道路破损特征图F3输入到卷积核大小为3×3,步长为1,零填充为1的Conv层,得到输出结果,再将结果输入ReLU层,得到道路破损特征图F4;
S1031-4、将道路破损特征图F3、F4进行concat,得到道路破损特征图F5,为FCB模块最终输出的结果,然后道路破损特征图F5输入池化窗口大小为4×4,步长为2,零填充为1的HPooling层,得到道路破损特征图F6,为FCP模块最终输出的结果;
HPooling层工作流程:
对每个池化窗口中的每一行求取最大值,再对得到的结果求取均值,另外对该池化窗口中的每一列求取最大值,再对得到的结果求取均值,将这两个均值结果进行加权,得到对应输出特征图上的像素点的值;
S1032、设计了CSAttention模块,用于实现感受视野的均衡,可以感知整个空间的特征,考虑了全局和局部信息,同时也减少对道路破损图像中无关区域的干扰,具体步骤如下:S1032-1、将道路破损特征图X1分别输入到3个Conv层中,其中Conv层由2C个卷积核大小为1×1的卷积核组成,将第一个Conv层输出的结果进行降维,得到道路破损特征图X2;卷积核大小为1×1的Conv层是对输入的特征图的通道数进行改变,取决于该Conv层的卷积核个数,Conv层的卷积核个数等于输出的特征图的通道数;将第二个Conv层输出的结果降维后输入Softmax层,然后将得到的结果对维度进行转置,得到道路破损特征图X3;将第三个Conv层输出的结果降维后输入Softmax层,得到道路破损特征图X5;
S1032-2、将道路破损特征图X2和道路破损特征图X3进行矩阵相乘,得到道路破损特征图X4;
S1032-3、将道路破损特征图X4和道路破损特征图X5进行矩阵相乘,再将其从展平的形状恢复为二维特征图的形状,得到道路破损特征图X6;
S1032-4、将道路破损特征图X6输入Conv层,得到道路破损特征图X7;
S1033、搭建道路破损预警模型中特征提取部分,将道路破损图像输入,生成最终输出的道路破损特征图,考虑了全局和局部信息,同时也减少对道路破损图像中无关区域的干扰,同时对道路破损中的破损位置的小目标的特征提取更加有效;
S1034、将S1033输出的道路破损特征图分别输入到分类器和回归器中,输出预测的边界框和目标类别,最后经过非极大值抑制去除重叠的边界框,输出预测的边界框和类别,最终实现道路破损预警模型的检测。
2.根据权利要求1所述的基于深度学习的道路破损预警方法,其特征在于:所述S1031中,计算公式如下:式中,k为HPooling层的尺寸,am,n为输入的特征图中,对应的k×k池化窗口中的第m行第n列像素点,其中m=1,…,k,n=1,…,k,为对应输出的特征图上的像素点,而p则是通过模型的训练学习得到,初始值设为0.5。
3.根据权利要求1所述的基于深度学习的道路破损预警方法,其特征在于:所述降维就是对剩余维度进行展平,即将高度和宽度维度合并为一个维度。
4.根据权利要求1所述的基于深度学习的道路破损预警方法,其特征在于:所述S1033中,具体步骤如下:S1033-1、搭建一个卷积核大小为1×1的Conv层和ReLU层,形成Conv1×1+ReLU模块,将道路破损图像输入Conv1×1+ReLU模块,并将输出的结果传入FCP模块中,得到道路破损特征图Y1;
S1033-2、依次堆叠四个FCP模块,前三个FCP模块输出的结果,经过一个卷积核大小为1×1的Conv层后,将结果输入到下一个FCP模块中,四个FCP模块输出的道路破损特征图依次记为Y1、Y2、Y3、Y4;
S1033-3、将道路破损特征图Y1、Y2、Y3、Y4分别输入四个CSAttention模块,得到道路破损特征图Y'1、Y'2、Y'3、Y'4;
S1033-4、将道路破损特征图Y1、Y2、Y3、Y4分别与道路破损特征图Y'1、Y'2、Y'3、Y'4进行concat操作,得到道路破损特征图Y”1、Y”2、Y”3、Y”4;
S1033-5、将道路破损特征图Y”4输入FCB模块中,得到道路破损特征图Y”’4,再将道路破损特征图Y”’4经过Conv1×1+Upsampling后得到道路破损特征图Y””4,道路破损特征图Y””4和道路破损特征图Y”3进行矩阵相乘,得到的结果输入到FCB模块中,得到道路破损特征图Y”’3;
S1033-6、将道路破损特征图Y”’3经过Conv1×1+Upsampling后得到道路破损特征图Y””3,和道路破损特征图Y”2进行矩阵相乘,得到的结果输入到FCB模块中,得到道路破损特征图Y”’2;
再将道路破损特征图Y”’2经过Conv1×1+Upsampling后得到道路破损特征图Y””2,和道路破损特征图Y”1进行矩阵相乘,得到的结果输入到FCB模块中,得到道路破损特征图Y”’1;
S1033-7、将道路破损特征图Y”’1经过Conv1×1+Upsampling后得到道路破损特征图Y””1,输入到Conv1×1+ReLU模块中,得到的结果即为最终输出的道路破损特征图;
所述Conv1×1+Upsampling是指将特征图经过一个卷积核大小为1×1的Conv层后,再进行2倍上采样;所述上采样是通过最近邻插值方法将高和宽扩大两倍,而通道数不变。