1.本技术涉及计算机视觉、图像处理分析等技术领域,特别涉及一种基于卷积神经网络的桥梁混凝土道路裂缝图像识别方法、装置及系统。
背景技术:2.随着交通运输业的发展,与运输相关的桥梁、公路数量大幅度上升,这催生了大量的桥梁、公路养护需求。桥梁,作为当今社会交通枢纽的重要组成部分,是人们便捷出行和物流派送服务必不可少的交通基础设施,但在长期使用中,桥梁的混凝土结构难免受到各种损伤,受限于桥梁向下型的受力结构,桥梁病害绝大多数首先表现为桥梁表面以及背面的裂缝或者蜂窝麻面。因此,定期检查桥梁表面以背面的裂缝生长状况是桥梁道路维护必不可少的首要工作。实际检测中,由于裂缝分布和产生具有随机性,往往存在许多细小裂缝容易被车辙、水渍等噪声干扰,造成漏检误检,产生极大的安全隐患。为了防止这类状况的发生,对细小裂缝的研究变得十分重要。
3.传统的裂缝检测主要包括桥梁表面和背面的裂缝检测,表面裂缝可通过检测人员对表面进行人工目测来实现桥梁病害的监测;桥梁背面则需要通过桥检车将检测人员送至桥梁底部,检测人员再通过目视定位裂缝存在的大致区域,然后利用专业的裂缝检测工具(如裂缝宽度检测仪、裂缝测深仪等)来获取裂缝的定量数据。随着桥梁数量的不断增加,依赖于人工检测的方式不仅耗费大量的时间成本和人力成本,而且检测人员需要仔细甄别许多过细的裂缝导致检测效率较低,检测的效果严重依赖于工作人员的工作状态和专业素养。
4.采用传统机器视觉算法对桥梁裂缝进行识别,其对图像的画质要求较高,且往往只能提取裂缝的某一类特征,如纹理、梯度等,算法泛化能力不强;采用无监督神经网络模型方法,根据不同的附加条件可实现网络对裂缝像素的分类,但该方法对图像质量要求较高,且由于其附加条件的限制,易受到颜色、纹理、位置接近的噪声影响,对裂缝识别的准确率较低;有监督方法中,神经网络模型需逐层提取图像不同尺度特征,较浅的网络对图像特征提取不够全面,不能完整分割图像中的裂缝,且易将颜色、纹理、位置相近的干扰噪声也分割为裂缝,较深的网络提取图像特征的同时也带来了网络不易收敛和计算量倍增的问题,导致网络模型分割裂缝耗时长、效率低。
技术实现要素:5.本技术的目的是提供一种基于卷积神经网络的图像识别方法、装置及系统。
6.为了实现上述目的,本技术提供如下技术方案:
7.一种基于卷积神经网络的桥梁混凝土道路裂缝图像识别方法,包括以下步骤:
8.步骤s100、采用vgg-16模型搭建级联的全卷积神经网络;
9.步骤s200、在模型输入端增加梯度层,将梯度层和原始图像组合的四通道矩阵作为新的输入端;
10.步骤s300、在最后三个编码器模块的最后一个卷积层的输出端加入自我注意力机制模块,为网络模型引入注意力机制;
11.步骤s400、在每个处理模块和自我注意力机制模块的输出端放置反卷积层模块,并通过卷积层分割最终图像;
12.步骤s500、采用标定数据集对所述全卷积神经网络模型进行训练,其中,所述标定数据集为标定好混凝土裂缝特征的特征图集合;
13.对步骤s600、待检测的桥梁道路图像逐帧处理,将处理后的图像输入神经网络模型进行裂缝分割,分割出待检测的桥梁道路图像中的裂缝。
14.在步骤s500中,采用标定数据集对所述全卷积神经网络模型进行训练,包括如下步骤:
15.1)获得处理模块中最后一个卷积层的输出端经过卷积核输出的query、key、value矩阵;其中,w、h、c、b、θ、φ、g分别为输入特征图的宽度、高度、通道数、批数、query矩阵、key矩阵和value矩阵;
16.2)对query矩阵和key矩阵作点乘运算,得到大小为的相似度权重矩阵;
17.3)对相似度权重矩阵进行softmax运算,实现相似度权重矩阵的归一化;
18.4)将归一化的相似度权重矩阵与value矩阵进行点乘运算,得到大小为的attention值;经过的卷积核扩展通道数为c后,叠加attention值到处理模块中最后一个卷积层的输出端矩阵。
19.所述全卷积神经网络包括输入模块、编码器模块以及解码器模块。
20.所述输入模块由梯度层和输入图像组成;梯度层首先由输入图像的横纵坐标方向采用的sobel一阶差分算子进行处理,得到横、纵坐标方向的梯度矩阵,再根据每点坐标的横、纵坐标方向的梯度绝对值之和作为梯度幅值,得到梯度层。
21.所述编码器模块共有五块,第一块编码器对输入的特征图进行两次卷积操作,输入由标定数据集中的特征图与梯度层组成;第二块编码器由池化层和两层卷积层组成,通过最大池化操作,使得输入的特征图长宽维度都缩小一倍,从而提取更高阶的语义信息,减少计算量;往后三块编码器由池化层和三层卷积层组成。
22.所述解码器模块与编码器模块和自我注意力机制模块一一对应,其输入的特征图分别来自上一处理模块的输出;解码器模块对上一处理模块的输出进行转置卷积操作,使得特征图的长宽维度扩大一倍,然后将转置后的特征图与对应自我注意力机制模块的转置输出进行通道叠加,再进行一次卷积操作。
23.一种基于卷积神经网络的道路裂缝图像识别装置,包括:
24.模型搭建模块,采用基于vgg-16模型搭建级联的全卷积神经网络,所述的全卷积神经网络架构由多个处理模块组成,所述处理模块包括依次级联5个编码器模块和5个解码器模块;
25.梯度层和自我注意力机制建立模块,用于在模型输入端增加梯度层,将梯度层和原始图像组合的四通道矩阵作为新的输入端,在每个处理模块的最后一个卷积层的输出端加入自我注意力机制,得到具有自我注意力机制的全卷积神经网络模型;
26.神经网络模型训练模块,用于采用标定数据集对所述全卷积神经网络模型进行训练,所述标定数据集为标定好混凝土道路裂缝特征的特征图集合;
27.混凝土裂缝检测模块,用于对待检测的道路图像逐帧读取,并输入到混凝土道路裂缝识别模型进行裂缝识别,分割出待检测的图像中的混凝土道路裂缝。
28.一种基于卷积神经网络的道路裂缝图像识别系统,所述图像识别系统包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述权利要求1至6任意一项方法的步骤。
29.本发明的有益效果为
30.本发明公开了一种基于卷积神经网络的桥梁混凝土道路裂缝图像识别方法、装置及系统,通过在vgg-16全卷积神经网络模型的基础上引入梯度层和自我注意力机制模块,从而使模型在采用标定数据集进行训练收敛时起到一定的加速作用,并使得模型在保证轻量化的同时,能提高网络模型对输入特征图的全局信息学习能力,提高其对混凝土道路裂缝的识别速度和识别精准度,本发明最终训练得到的混凝土道路裂缝识别模型可以高效、快速、高精度地进行图像裂缝检测。
附图说明
31.图1是本发明实施例一种基于vgg-16全卷积神经网络的桥梁混凝土道路裂缝图像分割方法的流程示意图;
32.图2是本发明实施例中基于vgg-16全卷积神经网络模型示意图;
33.图3是本发明实施例中自我注意力机制的结构示意图;
34.图4是本发明实施例中基于vgg-16全卷积神经网络模型网络结构示意图;
35.图5是本发明实施例中原图像,标签图像,基于vgg-16的全卷积神经网络和本发明中增加了自我注意力机制模块的全卷积神经网络模型检测图像的识别结果实例图;
36.图6是本发明实施例对增加了梯度层模块或残差模块的网络和原始网络训练过程中损失函数下降收敛速度的对比图。
37.其中残差模块的核心思想是通过跳层连接的方式使低层的输入信号可直接传播到高层,让信息前后传播更加顺畅。
38.图7是本发明实施例一种基于vgg-16的全卷积神经网络的混凝土道路裂缝图像识别装置的结构框图。
具体实施方式
39.本技术的实施方式部分使用的术语仅用于对本技术的具体实施例进行解释,而非旨在限定本技术,下面将结合附图对本技术实施例的实施方式进行详细描述。
40.本实施例的目的是:(1)针对现有基于全卷积神经网络的裂缝分割算法中存在的检测裂缝不完整、不连续或者伪裂缝错误检测等问题,本发明在基于全卷积神经网络模型的deepcrack语义分割模型基础上,引入自我注意力机制模块,增强网络全局信息的学习能力和对裂缝、伪裂缝特征的区分能力,提高裂缝检测网络的精准度,裂缝边缘的提取也会更加完整、准确。
41.(2)针对基于全卷积神经网络的裂缝分割算法,本发明引入了梯度层模块来让网
络在训练初期就获得图像重要的梯度信息,提高了训练的收敛速度;并且对特征提取网络的网络架构和解码架构进行了优化调整,以适应所增加的自我注意力机制模块和梯度层模块。
42.参考图1,如图1所示为实施例提供的一种基于全卷积神经网络的桥梁道路裂缝图像识别方法,包括以下步骤:
43.步骤s100、采用vgg-16模型搭建级联的全卷积神经网络;
44.其中,结合图2,图2为本文全卷积神经网络的结构示意图,所述vgg-16模型的架构由多个处理模块组成,所述处理模块包括依次级联的初始卷积模块、4个编码器模块和4个解码器模块;
45.步骤s200、在模型输入端增加梯度层,将梯度层和原始图像组合的四通道矩阵作为新的输入端;
46.步骤s300、在最后三个编码器模块的最后一个卷积层的输出端加入自我注意力机制模块,为网络模型引入注意力机制;
47.本实施例中,选择最后三个编码器模块的最后一个卷积层的输出端加入自我注意力机制模块的目的在于,后续编码器模块所提取的特征属于图像深层次的语义信息,即在后续的编码器加入自我注意力机制模块后,网络对裂缝的边缘、颜色、轮廓等语义特征学习会更加全面,提升裂缝分割的准确率。
48.步骤s400、在每个处理模块和自我注意力机制模块的输出端放置反卷积层模块,并通过卷积层分割最终图像;
49.本实施例中,所述放置于每个处理模块和自我注意力机制模块后的反卷积层模块的目的在于,自我注意力机制模块所学习的深层次特征可能包含一定的噪声语义信息,会对图像的分割结果造成干扰,增加每个处理模块的反卷积层模块可让神经网络保留原先网络学习的裂缝特征,再可选择的叠加自我注意力机制模块学习的深层次特征,提高网络的鲁棒性。
50.步骤s500、采用标定数据集对所述全卷积神经网络模型进行训练,其中,所述标定数据集为标定好混凝土裂缝特征的特征图集合;
51.在本发明实施例中,采用了公共数据集和手动采集标定的数据集作为标定数据集,可选的,所述公共数据集为可从公共渠道获得的deepcrack混凝土裂缝数据集。
52.对步骤s600、待检测的桥梁道路图像逐帧处理,将处理后的图像输入神经网络模型进行裂缝分割,分割出待检测的桥梁道路图像中的裂缝;
53.本技术领域中,采用神经网络能有效执行视觉任务(如图片识别、图片分类、目标检测等),其本质是神经网络模型是一个高度复杂的数学表达式,表达式中存在大量的参数,参数越多,模型的拟合能力越强,模型通过大量的数据进行训练,通过梯度下降算法进行参数权重优化,逐步找到最优解。而大量的参数导致模型计算量的剧增,使得神经网络模型极其依赖于设备的计算能力。本发明提供的实施例则在vgg-16模型的基础上引入自我注意力机制,从而增强网络处理模块的全局信息学习能力。由于自我注意力机制模块的运算涉及长度的点乘运算,因此如果在前面的编码器模块加入自我注意力机制模块,会给网络带来巨大的运算负担,通过在最后三个编码器模块的最后一个卷积层的输出端加入自我注意力机制模块,在保证识别准确率的前提下,使得模型更加轻量化,既保证网
络对桥梁道路裂缝的识别速度,也通过自我注意力机制模块的全局信息学习能力进一步提高对桥梁道路裂缝的识别精准度,本发明最终训练得到的桥梁道路裂缝识别模型可以高效快速高精度进行裂缝分割图像识别。
54.参考图3,图3为自我注意力机制的结构示意图,作为上述实施例的改进,在步骤s500中,采用标定数据集对所述全卷积神经网络模型进行训练,包括如下步骤:
55.1)获得处理模块中最后一个卷积层的输出端经过卷积核输出的query、key、value矩阵;其中,w、h、c、b、θ、φ、g分别为输入特征图的宽度、高度、通道数、批数、query矩阵、key矩阵和value矩阵;
56.2)对query矩阵和key矩阵作点乘运算,得到大小为的相似度权重矩阵;其中,步骤1获取的query矩阵和key矩阵的通道数,可根据服务器运算能力进行调整,本文选取的通道数为c/2;
57.3)对相似度权重矩阵进行softmax运算,实现相似度权重矩阵的归一化。
58.4)将归一化的相似度权重矩阵与value矩阵进行点乘运算,得到大小为的attention值;经过的卷积核扩展通道数为c后,叠加attention值到处理模块中最后一个卷积层的输出端矩阵;
59.通过卷积核获取query、key、value矩阵时,对以上三个矩阵的输出通道进行压缩,压缩的倍数为人为设定,选取较大的压缩倍数,可减少网络运算所需的参数,但会丧失部分通道的特征信息,本发明中,query、key、value矩阵的通道数设置为了c/2。
60.本实施例中,通过自我注意力机制计算输入特征图的每个像素点与全局特征像素点的关联度,通过网络模型训练自动生成,无需依靠人为事先设定,且在特征图输入前后不改变编码器中卷积的参数,保留原有编码器的语义特征,通过自我注意力机制对输入编码器特征图的每个像素点权重进行了自适应调整。
61.参考图2,基于vgg-16的全卷积神经网络包括输入模块、编码器模块以及解码器模块,如图所示;
62.其中,输入模块由梯度层和输入图像组成。梯度层首先由输入图像的横纵坐标方向采用的sobel一阶差分算子进行处理,得到横、纵坐标方向的梯度矩阵,再根据每点坐标的横、纵坐标方向的梯度绝对值之和作为梯度幅值,得到梯度层。
63.本发明中的编码器模块共有五块,第一块编码器对输入的特征图进行两次卷积操作,输入由标定数据集中的特征图与梯度层组成;第二块编码器由池化层和两层卷积层组成,通过最大池化操作,使得输入的特征图长宽维度都缩小一倍,从而提取更高阶的语义信息,减少计算量;往后三块编码器由池化层和三层卷积层组成,由于前面的池化操作,使得输入的特征图长宽维度缩小,因此减少了后续使用三层卷积层所需的计算负担。
64.解码器模块与编码器模块和自我注意力机制模块一一对应,其输入的特征图分别来自上一处理模块的输出。解码器模块对上一处理模块的输出进行转置卷积操作,使得特征图的长宽维度扩大一倍,然后将转置后的特征图与对应自我注意力机制模块的转置输出进行通道叠加,再进行一次卷积操作。
65.参考图4,图中列出了每个处理模块的卷积操作和通过自我注意力机制模块输出
的特征图通道数。其中,卷积操作卷积核大小均为步长1,无边缘填充补零,空洞系数为1,即没有使用空洞卷积。对于第一块编码器的两次卷积操作,输出的特征图通道数均为64,每次卷积操作之后都进行非线性激活函数relu的运算,使得网络更具表达能力。
66.参考图5,从图5中可以看到由于基于vgg-16的全卷积神经网络中加入了自我注意力机制,使得混凝土道路裂缝识别模型有较高的召回率和准确率,能更完整的识别深度变化不明显、长度细小的裂缝,泛化能力较强。
67.参考图6,从图6中可以看到,增加了梯度层和残差模块的全卷积神经网络deepcrack拥有更快的收敛速度,在前面几个iteration,网络的损失便下降到0.1到0.2之间。因此,梯度层模块能对网络训练收敛起到一定的加速作用,对训练深层神经网络减少梯度消失、梯度爆炸有一定的改善作用。
68.参考图7,本发明实施例还提供一种基于卷积神经网络的道路裂缝图像识别装置,包括:
69.模型搭建模块100,采用基于vgg-16模型搭建级联的全卷积神经网络,所述的全卷积神经网络架构由多个处理模块组成,所述处理模块包括依次级联5个编码器模块和5个解码器模块;
70.梯度层和自我注意力机制建立模块200,用于在模型输入端增加梯度层,将梯度层和原始图像组合的四通道矩阵作为新的输入端,在每个处理模块的最后一个卷积层的输出端加入自我注意力机制,得到具有自我注意力机制的全卷积神经网络模型;
71.神经网络模型训练模块300,用于采用标定数据集对所述全卷积神经网络模型进行训练,所述标定数据集为标定好混凝土道路裂缝特征的特征图集合;
72.混凝土裂缝检测模块400,用于对待检测的道路图像逐帧读取,并输入到混凝土道路裂缝识别模型进行裂缝识别,分割出待检测的图像中的混凝土道路裂缝。
73.本发明实施例还提供一种基于卷积神经网络的道路裂缝图像识别系统,所述系统包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述任一项所述方法的步骤。
74.在本技术实施例的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应作广义理解,例如,可以是固定连接,也可以是通过中间媒介间接相连,可以是两个元件内部的连通或者两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术实施例中的具体含义。
75.在本技术实施例或者暗示所指的装置或者元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本技术实施例的限制。在本技术实施例的描述中,“多个”的含义是两个或两个以上,除非是另有精确具体地规定。
76.本技术实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术实施例的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“可以包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可可以包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
77.最后应说明的是:以上各实施例仅用以说明本技术实施例的技术方案,而非对其限制。尽管参照前述各实施例对本技术实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换。而这些修改或者替换,并不使相应技术方案的本质脱离本技术实施例各实施例技术方案的范围。