CN113762278A - 一种基于目标检测的沥青路面损坏识别方法 - Google Patents
一种基于目标检测的沥青路面损坏识别方法 Download PDFInfo
- Publication number
- CN113762278A CN113762278A CN202111068879.XA CN202111068879A CN113762278A CN 113762278 A CN113762278 A CN 113762278A CN 202111068879 A CN202111068879 A CN 202111068879A CN 113762278 A CN113762278 A CN 113762278A
- Authority
- CN
- China
- Prior art keywords
- output
- layer
- asphalt pavement
- size
- damage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 239000010426 asphalt Substances 0.000 title claims abstract description 60
- 238000001514 detection method Methods 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 24
- 230000000694 effects Effects 0.000 claims abstract description 11
- 238000005070 sampling Methods 0.000 claims abstract description 10
- 238000012549 training Methods 0.000 claims description 34
- 239000011159 matrix material Substances 0.000 claims description 23
- 239000013598 vector Substances 0.000 claims description 22
- 230000006870 function Effects 0.000 claims description 21
- 238000010606 normalization Methods 0.000 claims description 14
- 238000010586 diagram Methods 0.000 claims description 8
- 230000002708 enhancing effect Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 235000002566 Capsicum Nutrition 0.000 claims description 3
- 239000006002 Pepper Substances 0.000 claims description 3
- 235000016761 Piper aduncum Nutrition 0.000 claims description 3
- 235000017804 Piper guineense Nutrition 0.000 claims description 3
- 235000008184 Piper nigrum Nutrition 0.000 claims description 3
- 230000001537 neural effect Effects 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 150000003839 salts Chemical class 0.000 claims description 3
- 230000004913 activation Effects 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 claims description 2
- 244000203593 Piper nigrum Species 0.000 claims 1
- 230000004807 localization Effects 0.000 abstract description 5
- 238000000605 extraction Methods 0.000 abstract description 4
- 238000013528 artificial neural network Methods 0.000 abstract description 3
- 238000004901 spalling Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 241000722363 Piper Species 0.000 description 2
- 230000008034 disappearance Effects 0.000 description 2
- 238000004880 explosion Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于目标检测的沥青路面损坏识别方法;通过基于transformer的神经网络架构,提出了AP‑DETR沥青路面损坏检测的模型。通过构造可变形卷积,并使用偏移量以及从目标任务学习偏移量,从而达到增加空间采样位置的目的,进而对几何变形有更好的特征捕捉;采用一种卷积投影注意力,能在本地空间中获取额外的模型注意力,对于本发明的沥青路面损坏:如裂缝、坑槽、剥落等,能更好地捕捉路面损坏整体的特征,更精准地进行分类;构造了本地增强前向供应模块LeFF,能够将CNN的优点如提取低维的特征,增强本地化和transformer的优点如关联长范围的依赖性结合在一起,达到更好的建模效果。
Description
技术领域
本发明涉及交通和计算机视觉技术领域,尤其涉及一种基于目标检测的沥青路面损坏识别方法。
背景技术
道路在现代交通系统和路网中起着及其重要的作用,而且,使用基于计算机视觉的方法来检测和预防沥青路面的损坏极为重要。然而,传统的沥青路面损坏的检测是通过人工检查,费时又费力,效率极低。基于计算机视觉的沥青路面损坏的检测能采用计算机视觉技术来识别和判断路面损坏,但是,也存在以下各方面的技术问题:现有模型精度不够,尤其是对于裂缝、剥落等几何形状不规则的损坏,其视觉上的几何特征难以捕捉,所以识别容易产生错误;而且,现有模型难以结合局部的损坏和整块路面的全局特征,通常现有的模型过于强调局部损坏特征而忽略对全部的整块路面的损坏的把握,从而错误地判定了一部分路面;同时,由于路面损坏有一定的近邻关联性,但是现有的模型无法考虑长范围的特征关联性,从而只识别了某一区域,而通常忽略了近邻的区域。
发明内容
为了解决以上问题,本发明通过基于transformer的神经网络架构,提出了AP-DETR沥青路面损坏检测的模型。通过构造可变形卷积,通过使用偏移量以及从目标任务学习偏移量,从而达到增加空间采样位置的目的,从而对几何变形有更好的特征捕捉;采用一种卷积投影注意力,能在本地空间中获取额外的模型注意力,对于本发明的路面损坏的如裂缝、坑槽、剥落等,能更好地捕捉路面损坏整体的特征,更精准地分类;构造了本地增强前向供应模块LeFF,能够将CNN的优点如提取低维的特征,增强本地化和transformer的优点如关联长范围的依赖性结合在一起,达到更好的建模效果。所以,通过该模型和方法,能使识别精确度提高,从而达到更加准确的沥青路面损坏检测效果。
具体的,一种基于目标检测的沥青路面损坏识别方法,该方法包含以下步骤:
S201:加载待检测的沥青路面图像;
S202:图像预处理;
将输入图像的大小统一处理为640×640的尺寸;
S203:加载训练好的改进的AP-DETR目标检测网络模型,AP-DETR模型包含三个主要部分,一个用来提取图像特征表示的卷积神经网络(CNN),一个编码器-解码器结构的transformer和一个用来做最终的目标检测的预测头;
S204:检测沥青路面损坏图像;
图像数据送入到网络模型中进行预测,得到目标的分类和位置信息;
S205:获得沥青路面损坏的目标检测结果。
上述的改进的AP-DETR目标检测网络模型由以下方法构建而成:
S101:准备训练图像数据集
使用路面损坏的图像作为初始输入图像,图像的大小为3×H0×W0;
S103:构建AP-DETR目标检测网络模型
初始输入图像输入到卷积神经网络,卷积神经网络会产生C×H×W大小的特征图,特征图输出会被送到一个可变形的卷积神经函数(DeformableConv2D),之后高阶特征图的通道维数C就会变成d,于是产生一个新的大小为d×H×W的特征图;
大小为d×H×W的特征图采用扁平化函数将H×W的高维矩阵的列串联起来,形成一个连续的列向量,此时特征图大小变为d×HW,记作A;
特征图A作为Transformer编码器的输入,而且编码器的输出被送到解码器,作为输入;同时,解码器将N个大小为d的嵌入转换为输出嵌入,这些输出嵌入是从位置编码学习到的,表示为目标查询;
输出嵌入然后会被解码成检测框的坐标:长方形矩形框的中心点坐标和高度、宽度和类别标签,N个最终的预测就会被获取到;通过FPN(即前向供应网络进行)计算,最终的预测层能预测正则化的目标包围框的中心坐标,高度和宽度;在分类模块,类别标签被一个softmax函数来预测;特别的类别标签表示没有目标被检测到;
S104:开始训练,初始化权值矩阵
使用正态分布初始化权值矩阵;采用从方差为0.01的截断正态分布中采样,得到权重初始化值;
S105:前向传播
输入信号在权重矩值的帮助下,得到每一层的输出,最终到达输出层的预测值;
S106:计算聚焦高效损失函数
S107:反向传播
通过前向传播得到由任意一组随机参数计算出的网络预测结果后,利用损失函数相对于每个参数的梯度来对他们进行修正更新;
S108:更新权值矩阵
根据反向传播得到的参数的梯度来对权值矩阵进行更新,达到减小损失函数的效果;
S109:如果没有到达最大训练次数,则返回步骤S105,继续前向传播,否则就保存性能最好的二进制模型。
在上述方案的基础上,步骤S101和步骤S103之间还包括用于增强训练数据的步骤;具体为:
S102:训练数据增强
S1021:对于已有的沥青路面损坏图片进行扣图和增强,利用Python-OpenCV,将包含沥青路面损坏的图片中的路面损坏部分图片扣出来,作为单独的一张图片,此图片仅包含一种类型的路面损坏形式;然后对该图片添加高斯噪声、添加椒盐噪声、减少亮度、锐化图像、尺寸大小等比例缩小等,以此来模拟沥青路面损坏的图片;
S1022:采用复制-粘贴的方法来生成多张包含沥青路面损坏的图片,具体的是选取不包含任何损坏的沥青路面图片,把从S1021中生成的单独沥青路面图片随机挑选3张,复制并粘贴到不包含任何损坏的沥青路面图片上去,与S101的图像数据集合并作为训练图像数据集,增大数据集图像数量。
本发明还提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于目标检测的沥青路面损坏识别方法的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于目标检测的沥青路面损坏识别方法的步骤。
本发明方法针对路面损坏的如裂缝、坑槽、剥落等,能更好地捕捉路面损坏整体的特征,更精准地分类。本发明方法中构造了本地增强前向供应模块LeFF,能够将CNN的优点如提取低维的特征,增强本地化和transformer的优点如关联长范围的依赖性结合在一起,达到更好的效果。
附图说明
图1本发明的实施流程图;
图2是AP-DETR总体架构及原理图,下图为预测图像的放大图;
图3是编码器与解码器;
图4是编码层与解码层的结构与细节;
图5是标准卷积和可变形卷积中的采样位置(卷积大小:3×3);
图6是可变形卷积图(3×3);
图7是卷积投影注意力;
图8是本地增强前向供应模块;
图9为沥青路面损坏的识别效果图;
图10为训练损失变化图;
图11为验证损失变化图;
图12为模型衡量指标变化图。
具体实施方式
为使本发明实例目的及优点更加清楚,下面结合技术方案和附图,对本发明实施过程进行清楚完整的描述。
实施例1
结合图1,本发明公开了一种构件基于目标检测的沥青路面损坏识别方法的检测模型的方法,包含以下步骤:
S101:准备训练图像数据集
路面损坏的初始输入图像是大小为3×H0×W0(这里有3个颜色通道,H0代表高度,W0代表宽度)。在本发明中,我们将原始的来自照相机或者无人机的图像,统一尺寸大小为3×640×640。
S102:训练数据增强
从步骤S101,可以得到从数据集中选取的含有路面的大约2000张手工利用LabelMe软件标注好的图片作为训练数据的图片,但是,考虑到有3种不同类型的路面损坏(即坑槽、裂缝、剥落),而且会有各种极端条件下(如光线太暗、雨天反光等)的路面损坏的识别,训练数据还是不够的,需要采取数据增强的方面来丰富数据集。分为以下两个步骤:
S1021:对于已有的沥青路面损坏图片进行扣图和增强,利用Python-OpenCV程序,将包含沥青路面损坏的图片中的路面损坏部分图片扣出来,作为单独的一张图片,此图片仅包含一种类型的路面损坏形式;然后对该图片添加高斯噪声、添加椒盐噪声、减少亮度、锐化图像、尺寸大小等比例缩小等,以此来模拟沥青路面损坏的图片;
S1022:采用复制-粘贴的方法来生成多张包含沥青路面损坏如坑槽、裂缝、剥落的图片。选取不包含任何损坏的沥青路面图片,把从S1021中生成的单独沥青路面图片随机挑选3张,复制并粘贴到不包含任何损坏的沥青路面图片上去,与S101的图像数据集合并作为训练图像数据集,增大数据集图像数量。此步骤将额外生成3000张图片。
通过步骤S101和步骤S102,可以得到共计5000张包含各式沥青路面损坏的数据集。进一步地,将所有的标注的数据,按照8:1:1的比例来划分为训练集(4000张)和验证集(500张)以及测试集(500张)。
S103:构建AP-DETR目标检测网络模型
AP-DETR总体架构与原理如图1所示。
它包含三个主要部分,一个卷积神经网络层(CNN)用来提取图像特征表示,一个编码器-解码器结构的transformer,以及最终的预测头用来做最终的目标检测。
具体的,一个卷积神经网络(CNN)骨干(ResNet-50)会产生C×H×W大小的特征图(C=2048,H=H0/32,and W=W0/32),C指的是高阶特征图的通道维数。输出会被送到一个可变形的卷积神经函数(DeformableConv2D),作为其输入。这样的结果就是,高阶特征图的通道维数就会变成d,于是一个新的大小为d×H×W的特征图产生了,其中,d代表维度降低后的低维。(本实施例中,d=256,于是大小就为256×20×20)。在基于transformer的模型中,既没有循环又没有卷积。为了充分考虑到序列的顺序,关于每个位置的符号的顺序信息会被注入。为了达到这个目的,一个大小为256×20×20的位置编码会从骨干网络ResNet-50的输出获取到。但是,编码层的输入需要是一个序列,于是我们把空间维度压缩成一维,其方法是采用扁平化函数,具体为将一个20×20的高维矩阵的列串联起来,形成一个连续的列,那么就变成了长度为400的列向量。在应用扁平化函数后,得到一个大小为d×HW(256×400)的特征图。该特征图记作A;作为编码器和解码器的输入。
Transformer编码器的输入大小为256×400,而且它的输出会有同样的大小。大小为256×400的编码器输出被送到解码器,作为输入。同时,解码器将N(该发明中,N=100)个大小为d(这里d=256)的嵌入转换为输出嵌入。如图2所示,这些输出嵌入是从位置编码学习到的,表示为目标查询。
输出嵌入然后会被解码成检测框的坐标(长方形矩形框的中心点坐标和高度、宽度)和类别标签,N个最终的预测就会被获取到。通过FPN(即前向供应网络进行)计算,最终的预测层能预测正则化的目标包围框的中心坐标,高度和宽度。此外,在分类模块,类别标签被一个softmax函数(softmax多用于多分类过程中,它将多个神经元的输出,映射到(0,1)区间内,可以看成概率来理解,从而来进行多分类。)来预测。值得一提的是,跟图像中的物体的实际数量比较起来,N(N=100)是一个相对比较大的数字。此外,特别的类别标签0表示没有目标被检测到。
如图3所示,编码器包含一个M=6的堆叠的同样的编码层,解码器也包含一个M=6的堆叠的同样的解码层。编码器的输出被送到每一个解码层,第一个解码层同时也接受目标查询和位置编码与特征图求和数据输入。每一个编码层和解码层如下图3所示。骨干网络的输出扁平化后尺寸大小为256×400(这里记作W)。骨干网络的输出和大小同样为256×400的位置编码求和,求和结果大小也为256×400,其结果被送到带有多头自注意力的编码层。
在注意力模型中,Q表示查询向量,K表示被查询信息与其他信息的相关性的向量,V表示被查询信息的向量。编码层中,K,Q,V计算如下:K和Q是求和结果,V就是原来的骨干网络的输出。经过多头自注意力后,大小还是256×400。然后该输出被送到一个另外的注意力层,即卷积投影注意力。在卷积投影注意力后,它会获取额外的注意力,大小还是256×400。原来的骨干网络的输出W此时可以作为残差连接输入,它会被加到卷积投影注意力的输出,残差网络可以通过把对当前神经元对前层进行一次现行堆叠,保证在更深的网络层次下不会出现梯度消失和梯度爆炸问题。然后通过一个归一化层。得到的输出大小为256×400,这里记作X。
归一化层的输出会被送入本地增强前向供应(LeFF)模块,大小还是不变。归一化层的输出同时还作为残差层被加到本地增强前向供应(LeFF)模块的作为输入,残差层通过把对当前神经元对前层进行一次现行堆叠,保证在更深的网络层次下不会出现梯度消失和梯度爆炸问题。最后再通过一个归一化处理层,结果的大小256×400。编码器包含M=6的堆叠的同样的编码层,每一个编码层的输出作为下一个编码层的输入,而且第M(M=6)个编码层的输出被送入每一个解码层作为输入,所有的大小均为256×400。
解码层是从多头自注意力开始的,跟其他一样,它也需要Q,K,V作为输入。除了目标查询外,解码层的输出(图中描述为目标)也作为多头自注意力解码层的输入。对于第一个解码层,目标初始化为0,但是对于接下来的解码层,它会采用来自上一个解码层的输出,大小为256×100。Q和K的计算会是Q=K=目标查询+目标,V的计算是V=目标。经过多头注意力后,大小还是256×100。多头注意力的输出会被送到卷积投影注意力模块,作为残差连接,它同时也会和卷积投影注意力模块的输出相加,得到输出,其大小还是256×100。该输出经过一个归一化层,大小还是256×100,结果记作Y。
为了准备解码层的多头注意力,需要单独得到其输入Q,K,V,这里需要编码层的输出,位置编码,目标查询和层归一化输出Y。Q,K,V的值计算如下:Q=Y+目标查询,K=位置编码+编码器输出,V=编码器输出。多头注意力的输出还是256×100。目标作为残差连接输入,和多头注意力的输出相加,结果还是256×100。结果经过一个归一化处理层,得到大小还是256×100,将该结果记作Z。Z然后被送到本地增强前向供应(LeFF)模块,但是大小保持不变。Z还会作为残差连接,同时和本地增强前向供应(LeFF)模块的输出相加。结果再经过一个归一化层,得到结果大小为256×100,记作U。结果U就是解码层的输入,会被送到下一个解码层作为目标。
可变形卷积用于ResNet-50骨干网络之后,它的目的是通过使用偏移量以及从目标任务学习偏移量,从而达到增加空间采样位置的目的。而标准卷积模块卷积神经网络(CNN)由于有固定的几何结构,对于模型的几何变形有天然的局限性。
可变形卷积相对于标准卷积,在常规的格子采样的位置上引入了二维的偏移量,从而允许采样格子自由地变形。
图5中描述了标准卷积的采样位置和可变形卷积的采样位置。对于可变形卷积,额外的卷积层被用来学习从接下来的特征图学习偏移量。于是,可变形就以一种本地的,集中的和自适应的方式来根据输入特征做出调整。
在标准卷积神经网络CNN中,特征图和卷积都是三维的。在本发明中,为了描述和绘图更清楚,以两维为例。对于两维卷积,有两个步骤:
1)使用一个常规格R来采样输入特征图x;
2)采样值和权重w相加
格子R定义了感受野的大小和膨胀度。
下面的公式就是对于每个位置p0得到的输出特征图y。
这里pn指在格子R里面的位置;
在可变形卷积中,偏移量{Δpn|n=1,2,......,N}(N=|R|)就是相对于常规格子R的增量。
于是,上述公式可以重新写作:
由于这个变动,采样就会在非常规和偏移的位置pn+Δpn进行。
如图6所示,偏移量可以通过在相同的输入特征图上应用卷积层来获取。应用的卷积层有相同的卷积核,空间大小和膨胀率。输出偏移量和输入的特征图有相同的空间分辨率。通道2N对应N个二维偏移量。所以,可变形卷积极大地提高了卷积神经网络(CNN)的对几何变形的建模能力,而且,从ResNet-50骨干网络提取特征图,这将会使得模型更加适合在沥青路面损坏上捕捉变形的特征。
卷积投影注意力的目的是为了在本地空间中获取额外的模型注意力。在卷积投影注意力中,原先的多头自注意力的位置线性投影被深度可分离的卷积所替代,对于本发明的路面损坏的如裂缝、坑槽、剥落等,能更好地捕捉路面损坏整体的特征,更好地分类。
如图7所示,卷积投影注意力的输入(即:多头自注意力的输出)一开始会被变形为一个二维特征图,这是通过将向量按照比例分成几份,然后分出来的小向量平铺成二维矩阵。然后一个卷积核大小为s的深度可分离的卷积层实现了卷积投影。
最后,投影输出被扁平化为一维,扁平化操作是通过将的高维矩阵的列串联起来,形成一个连续的列,那么就变成了一个列向量,这将为后续的多头注意力和可变形卷积提供输入。公式可以表示如下:
这里是Q/K/V在第t层的数据输入,xi是位于卷积投影前的数据,Conv2d是一个深度可分离卷积(实现方法:深度的Conv2d->批归一化->点上的Conv2d),s指卷积核的大小。Reshape2D表示输出变形为2维特征图,是通过对矩阵的重新排列实现形状改变的;Flatten表示投影输出被扁平化为一维,同样也是通过对矩阵的变形和维度堆积实现的。
使用卷积投影注意力,模型能够将卷积集成到transformer上去,更多地捕获本地空间上下文,在接下来的注意力中减少语义上的模糊性。它不仅仅充分利用了卷积神经网络(CNN)的优势,包括本地感受野,共享权重,空间子采样等,而且保留了transformer的优势,包括动态注意力,全局上下文融合以及更好的通用性。尤其是对于路面损坏的几种形式如裂缝、坑槽、剥落等,能更好地通过上下文和注意力,去捕捉路面损坏整体的特征,更精确地实现损坏类型的分类。
在模型的每一个编码层和解码层,一个名为本地增强前向供应(LeFF)模块被用来取代原来的前向供应模块。这个改动使得在空间维度上,相邻的像素信息的关联性得到增强,从而允许对本地信息的提取,并建立长距离依赖。
如图8所示,LeFF模块采用如下的步骤:
这些步骤用公式可以描述如下:
于是,利用本地增强前向供应模块LeFF,我们所提出的模型能够将CNN的优点如提取低维的特征,增强本地化和transformer的优点如关联长范围的依赖性结合在一起,达到更好的建模效果。
S104:开始训练,初始化权值矩阵
可选地,使用正态分布初始化权值矩阵;优选地,采用从方差为0.01的截断正态分布中采样,得到权重初始化值,这样能使后面的训练过程中,模型更快地收敛。
S105:前向传播
输入信号在权值矩阵的帮助下,得到每一层的输出,最终到达输出层的预测值;
S106:计算聚焦高效损失函数
S107:反向传播
通过前向传播得到由任意一组随机参数计算出的网络预测结果后,利用损失函数相对于每个参数的梯度来对他们进行修正更新;
S108:更新权值矩阵
根据反向传播得到的参数的梯度来对权值矩阵进行更新,达到减小损失函数的效果。
S109:如果没有到达最大训练次数,则返回步骤S105,继续前向传播,否则就保存性能最好的二进制模型。
实施例2
一种基于目标检测的沥青路面损坏识别方法,包含以下步骤:
S201:加载待检测的沥青路面图像;
S202:图像预处理;
将输入图像的大小统一处理为640×640的尺寸;
S203:加载训练好的改进的AP-DETR目标检测网络模型;
S204:检测沥青路面损坏图像;
图像数据送入到网络模型中进行预测,得到目标的分类和位置信息;结果如图9所示;
S205:获得沥青路面损坏的目标检测结果。
为了比较我们提出的方法和其他已有方法,我们进行了一系列试验。
实验在ubuntu计算机系统进行,系统包含Intel Core i7 8700CPU,NVIDIAGeForce GTX 1080GPU and 16G of RAM.PyTorch,OpenCV,Python被用来实现所提出的方法。
我们提出的AP-DETR模型采用反向传播的学习方法来训练,采用Adam作为优化器,学习率是0.001,权重衰退设置为0.0005,每次训练进行100代。和其他的目标检测的模型类似,AP-DETR的损失也包含两部分:分类损失和回归框损失。回归框包含L1回归损失和GIoU损失。
我们还在现有的比较流行的目标检测模型如SSD,YoloV3,YoloV4,DETR等进行同样的实验,在同样的数据集上,考察模型的指标。
精确度在本发明中得到使用,指的是所有被判定为正类中,真实的正类占的比例。
召回率也在本发明中得到使用,它用来衡量所有真实为正类中,被判定为正类占的比例,就是多少正样本被正确地检测到了。R=100%就表示没有错失的目标。
均值精度(mAP)是目标检测领域广泛使用的指标。有两种类型的mAP使用到了,包括mAP_0.5,和mAP_0.5:0.95。在这两种类型中,预测框和真实框的最小重叠区域(IoU)被用来确定检测结果是对的还是错的。
在mAP_0.5的计算中,使用了常量的IoU重叠值,为0.5。而对于mAP_0.5:0.95,它的值的计算是通过计算IoU重叠值在区间范围[0.5:0.95]切增量为0.05的平均值来得到的。
在本实施例中,经过200个代(epoch)的训练后,从图10可知,训练的损失(物体置信度损失(obj)、类别损失(cls)、边界框损失(box))一开始有极速下降,然后随着训练进行,稳步下降,意味着模型越来越趋于稳定。
从图11可知,验证的损失(物体置信度损失(obj)、类别损失(cls)、边界框损失(box)一开始有极速下降,然后随着训练的进行,验证的损失稳步下降,意味着模型在训练集上也有比较稳定的性能,而不仅仅是应对训练集。同时也注意到其中有两个突变点,损失急剧增大,但是后面下降趋势不变,这是因为有一些难以识别的样本在验证集中,后续模型调整后识别能力增强。
图12显示了随着训练的进行,精确度和召回率曲线图,训练开始的时候,精确度和召回率都极速增长。但是很快,就进入了稳步增长期。当训练得到200代的时候,精确度和召回率都基本达到最大值。同样地,在某一训练代中,精度和召回率都比较低,这也是因为有个别噪音困难样本,模型正在适应和调整中。
从图12可知,精确度Precision和召回率Recall都稳步上升,最终精确度大约在94,召回率大约为94。mAP_0.5即当IOU为0.5时候的mAP值,大约为96,mAP_0.5:0.95表示在不同IoU阈值(从0.5到0.95,步长0.05)上的平均mAP,大约为91。
表1不同模型的试验结果对比分析表
从表1可知,经过200代训练验证后,本发明模型在增强后的沥青路面损坏数据集上取得最好的性能结果,精度达93.79,召回率达94.41,mAP_0.5达96.59,mAP_0.5:0.9达到91.39,比起次好的模型DETR,在精度上有3.6的提升,召回率有1.0的提升,mAP_0.5有1.5的提升,mAP_0.5:0.95有4.64的提升,提升效果显著。
以上各个指标的提升,是基于本发明的模型通过构造可变形卷积,通过使用偏移量以及从目标任务学习偏移量,从而达到增加空间采样位置的目的,从而对几何变形有更好的特征捕捉;本发明模型采用一种卷积投影注意力,能在本地空间中获取额外的模型注意力,对于本发明的路面损坏的如裂缝、坑槽、剥落等,能更好地捕捉路面损坏整体的特征,更精准地分类;本发明还构造了本地增强前向供应模块LeFF,能够将CNN的优点如提取低维的特征,增强本地化和transformer的优点如关联长范围的依赖性结合在一起,达到更好的建模效果。
需要说明的是,上述各技术特征继续相互组合,形成未在上面列举的各种实施例,均视为本发明说明书记载的范围;并且,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (10)
1.一种基于目标检测的沥青路面损坏识别方法,其特征在于,包含以下步骤:
S201:加载待检测的沥青路面图像;
S202:图像预处理;
将输入图像的大小统一处理为640×640的尺寸;
S203:加载训练好的改进的AP-DETR目标检测网络模型,AP-DETR模型包含三个主要部分,一个用来提取图像特征表示的卷积神经网络(CNN),一个编码器-解码器结构的transformer和一个用来做最终的目标检测的预测头;
S204:检测沥青路面损坏图像;
图像数据送入到网络模型中进行预测,得到目标的分类和位置信息;
S205:获得沥青路面损坏的目标检测结果。
2.根据权利要求1所述的基于目标检测的沥青路面损坏识别方法,其特征在于,改进的AP-DETR目标检测网络模型由以下方法构建而成:
S101:准备训练图像数据集
使用路面损坏的图像作为初始输入图像,图像的大小为3×H0×W0;
S103:构建AP-DETR目标检测网络模型
初始输入图像输入到卷积神经网络,卷积神经网络会产生C×H×W大小的特征图,特征图输出会被送到一个可变形的卷积神经函数(DeformableConv2D),之后高阶特征图的通道维数C就会变成d,于是产生一个新的大小为d×H×W的特征图;
大小为d×H×W的特征图采用扁平化函数将H×W的高维矩阵的列串联起来,形成一个连续的列向量,此时特征图大小变为d×HW,记作A;
特征图A作为Transformer编码器的输入,而且编码器的输出被送到解码器,作为输入;同时,解码器将N个大小为d的嵌入转换为输出嵌入,这些输出嵌入是从位置编码学习到的,表示为目标查询;
输出嵌入然后会被解码成检测框的坐标:长方形矩形框的中心点坐标和高度、宽度和类别标签,N个最终的预测就会被获取到;通过FPN(即前向供应网络进行)计算,最终的预测层能预测正则化的目标包围框的中心坐标,高度和宽度;在分类模块,类别标签被一个softmax函数来预测;
S104:开始训练,初始化权值矩阵
使用正态分布初始化权值矩阵;采用从方差为0.01的截断正态分布中采样,得到权重初始化值;
S105:前向传播
输入信号在权值矩阵的帮助下,得到每一层的输出,最终到达输出层的预测值;
S106:计算聚焦高效损失函数
S107:反向传播
通过前向传播得到由任意一组随机参数计算出的网络预测结果后,利用损失函数相对于每个参数的梯度来对他们进行修正更新;
S108:更新权值矩阵
根据反向传播得到的参数的梯度来对权值矩阵进行更新,达到减小损失函数的效果;
S109:如果没有到达最大训练次数,则返回步骤S105,继续前向传播,否则就保存性能最好的二进制模型。
3.根据权利要求1所述的基于目标检测的沥青路面损坏识别方法,其特征在于,步骤S101和步骤S103之间还包括用于增强训练数据的步骤;具体为:
S102:训练数据增强
S1021:对于已有的沥青路面损坏图片进行扣图和增强,利用Python-OpenCV,将包含沥青路面损坏的图片中的路面损坏部分图片扣出来,作为单独的一张图片,此图片仅包含一种类型的路面损坏形式;然后对该图片添加高斯噪声、添加椒盐噪声、减少亮度、锐化图像、尺寸大小等比例缩小等,以此来模拟沥青路面损坏的图片;
S1022:采用复制-粘贴的方法来生成多张包含沥青路面损坏的图片,具体的是选取不包含任何损坏的沥青路面图片,把从S1021中生成的单独沥青路面图片随机挑选3张,复制并粘贴到不包含任何损坏的沥青路面图片上去,与S101的图像数据集合并作为训练图像数据集,增大数据集图像数量。
4.根据权利要求2所述的基于目标检测的沥青路面损坏识别方法,其特征在于,
编码器包含一个M=6的堆叠的同样的编码层,解码器也包含一个M=6的堆叠的同样的解码层;编码器的输出被送到每一个解码层,第一个解码层同时也接受目标查询和位置编码与特征图求和数据输入;骨干网络ResNet-50的输出扁平化后和位置编码求和,求和结果被送到带有多头自注意力的编码层;
编码器包含M=6的堆叠的同样的编码层,每一个编码层的输出作为下一个编码层的输入,而且第M(这里M=6)个编码层的输出被送入每一个解码层作为输入,所有的大小均相同。
5.根据权利要求4所述的基于目标检测的沥青路面损坏识别方法,其特征在于,
在编码器的输入中,Q表示查询向量,K表示被查询信息与其他信息的相关性的向量,V表示被查询信息的向量;编码层中,K,Q,V计算如下:K和Q是求和结果,V就是原来的骨干网络的输出,经过多头自注意力后的输出被送到卷积投影注意力,在卷积投影注意力后,它会获取额外的注意力,原来的骨干网络的输出W此时作为残差连接输入,它会被加到卷积投影注意力的输出,然后通过一个归一化层,得到的输出记作X;
归一化层的输出被送入本地增强前向供应(LeFF)模块,大小还是不变;归一化层的输出X同时还作为残差层被加到本地增强前向供应(LeFF)模块的作为输入;最后再通过一个归一化处理层,大小不变。
6.根据权利要求4所述的基于目标检测的沥青路面损坏识别方法,其特征在于,
解码器的解码层是从多头自注意力开始的,以Q,K,V作为输入;除了目标查询外,解码层的输出作为多头自注意力解码层的输入;对于第一个解码层,目标初始化为0,对于接下来的解码层,它会采用来自上一个解码层的输出,大小为256×100;Q和K的计算是Q=K=目标查询+目标,V的计算是V=目标;经过多头自注意力后,大小还是256×100;多头自注意力的输出会被送到卷积投影注意力模块,它同时也会作为残差连接和卷积投影注意力模块的输出相加,得到输出,其大小还是256×100;该输出经过一个归一化层,大小还是256×100,结果记作Y;
为了准备解码层的多头注意力,需要单独得到其输入Q,K,V,这里需要编码层的输出,位置编码,目标查询和层归一化输出Y;Q,K,V的值计算如下:Q=Y+目标查询,K=位置编码+编码器输出,V=编码器输出;多头注意力的输出还是256×100;目标作为残差连接输入,和多头注意力的输出相加,结果还是256×100;结果经过一个归一化处理,得到大小还是256×100,将该结果记作Z;Z然后被送到本地增强前向供应(LeFF)模块,但是大小保持不变;Z还会作为残差连接,同时和本地增强前向供应(LeFF)模块的输出相加;结果再经过一个归一化层,得到结果大小为256×100,记作U;结果U就是解码层的输入,会被送到下一个解码层作为目标。
7.根据权利要求2所述的基于目标检测的沥青路面损坏识别方法,其特征在于,编码层和解码层中的LeFF模块具体采用的步骤如下:
这些步骤用公式可以描述如下:
9.一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述基于目标检测的沥青路面损坏识别方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述基于目标检测的沥青路面损坏识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111068879.XA CN113762278B (zh) | 2021-09-13 | 2021-09-13 | 一种基于目标检测的沥青路面损坏识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111068879.XA CN113762278B (zh) | 2021-09-13 | 2021-09-13 | 一种基于目标检测的沥青路面损坏识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113762278A true CN113762278A (zh) | 2021-12-07 |
CN113762278B CN113762278B (zh) | 2023-11-17 |
Family
ID=78795125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111068879.XA Active CN113762278B (zh) | 2021-09-13 | 2021-09-13 | 一种基于目标检测的沥青路面损坏识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113762278B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115112669A (zh) * | 2022-07-05 | 2022-09-27 | 重庆大学 | 一种基于小样本的路面无损检测识别方法 |
CN115439483A (zh) * | 2022-11-09 | 2022-12-06 | 四川川锅环保工程有限公司 | 一种高质量的焊缝及焊缝缺陷识别系统、方法、存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL7008808A (zh) * | 1969-06-21 | 1970-12-23 | ||
GB201615470D0 (en) * | 2016-09-12 | 2016-10-26 | Ucl Business Plc | Predicting depth from image data using a statistical model |
CN108564097A (zh) * | 2017-12-05 | 2018-09-21 | 华南理工大学 | 一种基于深度卷积神经网络的多尺度目标检测方法 |
WO2020222985A1 (en) * | 2019-04-30 | 2020-11-05 | The Trustees Of Dartmouth College | System and method for attention-based classification of high-resolution microscopy images |
WO2020244774A1 (en) * | 2019-06-07 | 2020-12-10 | Leica Microsystems Cms Gmbh | A system and method for training machine-learning algorithms for processing biology-related data, a microscope and a trained machine learning algorithm |
CN112764024A (zh) * | 2020-12-29 | 2021-05-07 | 杭州电子科技大学 | 基于卷积神经网络和Bert的雷达目标识别方法 |
US20210183484A1 (en) * | 2019-12-06 | 2021-06-17 | Surgical Safety Technologies Inc. | Hierarchical cnn-transformer based machine learning |
CN113128527A (zh) * | 2021-06-21 | 2021-07-16 | 中国人民解放军国防科技大学 | 基于变换器模型和卷积神经网络的图像场景分类方法 |
WO2021148625A1 (en) * | 2020-01-23 | 2021-07-29 | Debricked Ab | A method for identifying vulnerabilities in computer program code and a system thereof |
WO2022195285A1 (en) * | 2021-03-17 | 2022-09-22 | British Broadcasting Corporation | Image processing using machine learning |
-
2021
- 2021-09-13 CN CN202111068879.XA patent/CN113762278B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL7008808A (zh) * | 1969-06-21 | 1970-12-23 | ||
GB201615470D0 (en) * | 2016-09-12 | 2016-10-26 | Ucl Business Plc | Predicting depth from image data using a statistical model |
CN108564097A (zh) * | 2017-12-05 | 2018-09-21 | 华南理工大学 | 一种基于深度卷积神经网络的多尺度目标检测方法 |
WO2020222985A1 (en) * | 2019-04-30 | 2020-11-05 | The Trustees Of Dartmouth College | System and method for attention-based classification of high-resolution microscopy images |
WO2020244774A1 (en) * | 2019-06-07 | 2020-12-10 | Leica Microsystems Cms Gmbh | A system and method for training machine-learning algorithms for processing biology-related data, a microscope and a trained machine learning algorithm |
US20210183484A1 (en) * | 2019-12-06 | 2021-06-17 | Surgical Safety Technologies Inc. | Hierarchical cnn-transformer based machine learning |
WO2021148625A1 (en) * | 2020-01-23 | 2021-07-29 | Debricked Ab | A method for identifying vulnerabilities in computer program code and a system thereof |
CN112764024A (zh) * | 2020-12-29 | 2021-05-07 | 杭州电子科技大学 | 基于卷积神经网络和Bert的雷达目标识别方法 |
WO2022195285A1 (en) * | 2021-03-17 | 2022-09-22 | British Broadcasting Corporation | Image processing using machine learning |
CN113128527A (zh) * | 2021-06-21 | 2021-07-16 | 中国人民解放军国防科技大学 | 基于变换器模型和卷积神经网络的图像场景分类方法 |
Non-Patent Citations (2)
Title |
---|
ZHIGANG DAI: "UP-DETR: Unsupervised Pre-training for Object Detection with Transformers [arXiv]", ARXIV, pages 10 * |
李良福;高小小;孙瑞;陆铖;: "基于稀疏编码的桥梁路面裂缝分类方法研究", 轻工学报, no. 03, pages 72 - 80 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115112669A (zh) * | 2022-07-05 | 2022-09-27 | 重庆大学 | 一种基于小样本的路面无损检测识别方法 |
US11908124B2 (en) | 2022-07-05 | 2024-02-20 | Chongqing University | Pavement nondestructive detection and identification method based on small samples |
CN115439483A (zh) * | 2022-11-09 | 2022-12-06 | 四川川锅环保工程有限公司 | 一种高质量的焊缝及焊缝缺陷识别系统、方法、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113762278B (zh) | 2023-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106909924B (zh) | 一种基于深度显著性的遥感影像快速检索方法 | |
Lee et al. | Simultaneous traffic sign detection and boundary estimation using convolutional neural network | |
CN107679250B (zh) | 一种基于深度自编码卷积神经网络的多任务分层图像检索方法 | |
CN107885764B (zh) | 基于多任务深度学习快速哈希车辆检索方法 | |
CN113705478B (zh) | 一种基于改进YOLOv5的红树林单木目标检测方法 | |
CN111709311B (zh) | 一种基于多尺度卷积特征融合的行人重识别方法 | |
CN109711366B (zh) | 一种基于群组信息损失函数的行人重识别方法 | |
EP2808827A1 (en) | System and method for OCR output verification | |
CN106845341B (zh) | 一种基于虚拟号牌的无牌车辆识别方法 | |
CN110929080B (zh) | 基于注意力和生成对抗网络的光学遥感图像检索方法 | |
CN108805157B (zh) | 基于部分随机监督离散式哈希的遥感图像分类方法 | |
CN111079683A (zh) | 基于卷积神经网络的遥感图像云雪检测方法 | |
CN108388656B (zh) | 一种基于标记相关性的图片搜索方法 | |
CN113762278B (zh) | 一种基于目标检测的沥青路面损坏识别方法 | |
CN111652273B (zh) | 一种基于深度学习的rgb-d图像分类方法 | |
CN112949338A (zh) | 深度学习与Hough变换结合的二维条码精确定位方法 | |
CN113111716B (zh) | 一种基于深度学习的遥感影像半自动标注方法和装置 | |
CN116524189A (zh) | 一种基于编解码索引化边缘表征的高分辨率遥感图像语义分割方法 | |
CN110826554B (zh) | 一种红外目标检测方法 | |
Ren et al. | Barcode detection and decoding method based on deep learning | |
CN116363469A (zh) | 一种少样本红外目标检测方法、装置和系统 | |
CN113537240B (zh) | 一种基于雷达序列图像的形变区智能提取方法及系统 | |
CN109409415A (zh) | 一种基于全局信息保持的lle算法 | |
CN116310407A (zh) | 一种面向配用电多维业务的异构数据语义提取方法 | |
CN109271833A (zh) | 基于栈式稀疏自编码器的目标识别方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |