掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明涉及图像分类方法领域,尤其涉及一种基于双线性卷积神经网络的细粒度车辆分类方法。

背景技术

随着中国经济的高质量快速发展,交通车辆数量迅猛增加,作为重要的基础设施的高速公路和城市交通也得到迅速发展,由此带来的交通和环境问题也日渐加剧。为应对这些问题,智能交通系统已经成为城市发展的重点研究对象,它是一种在传统交通系统的基础上发展起来的信息化、自动化、智能化、社会化的新型交通系统。作为智能交通系统的关键技术,细粒度车辆分类需要识别车辆品牌、型号及生产年份。细粒度车辆分类在处理包括提高收费效率、裁定交通责任和追踪肇事逃逸者等交通问题上有着得天独厚的优势,并且对于智能交通系统的建设具有重要意义。

随着深度学习的兴起及高性能显卡的出现,计算机视觉方面的技术得到快速发展,其中目标检测和图像分类尤为突出。传统目标检测算法只适应于有明显特征,背景简单的情形,而在实际应用中,背景复杂多变,而且待分类的目标复杂多变,很难通过一般的抽象特征完成对目标的分类,而深度学习利用卷积神经网络(Convolutional NeuralNetworks,CNN)可以提取同一目标丰富的特征,完成目标的检测,这极大地促进细粒度图像检测研究。基于深度学习的目标检测算法受到各行业和学术界的高度关注,基于深度学习的车辆检测和车型识别技术已经成为现阶段的研究趋势,并具备十分重要的科学与现实意义。通过计算机视觉、图像处理等技术从海量监控视频数据中检测车辆目标,实时获取并分析交通数据在各种智能交通应用中发挥着重要作用。

卷积神经网络的发展极大地促进各类细粒度图像分类的研究。目前,Faster R-CNN和YOLO是普遍用于目标检测的经典算法,VGG和ResNet是目标检测普遍使用的网络结构。卷积神经网络能够从大量的样本数据中自适应地学习目标的特征表示,使用合适的回归和分类算法对这些特征表示进行处理,特征学习和分类器两个部分在卷积神经网络的框架下得到有机地结合,这种结合能够较大程度地提高整个网络的性能。

目前细粒度车辆分类算法研究的挑战有以下几个方面:

(1)图像质量差异大

针对同一辆车,站在不同的拍摄角度,获得的车辆图像必然会发生一定的变化,并且由于成像设备不同,图片质量也会有明显的差异。

(2)光照因素影响大

光照也是一个不可忽视的影响因素,尤其在光照环境欠佳的情况下,车辆检测会受到较大的限制。

(3)车辆类间差异小

车辆拥有大量类别,即使是同一型号的汽车,不同年份推出的产品也存在一定的差别。巨大的样本空间使车辆类别更加精致,细粒度车辆类间差异更加细微,往往只能借助于微小的局部差异才能区分不同的类别。

因此,设计一种基于双线性卷积神经网络的细粒度车辆分类方法解决上述问题成为了本领域技术人员亟待解决的技术问题。

发明内容

本发明所要解决的技术问题是克服现有技术中存在的不足,提供一种基于双线性卷积神经网络的细粒度车辆分类方法。

本发明是通过以下技术方案予以实现:一种基于双线性卷积神经网络的细粒度车辆分类方法,包括以下步骤:

S1:将车辆RGB图像输入到卷积神经网络中,其中一半车辆RGB图像作为训练集,另一半车辆RGB图像作为测试集,训练集与测试集分别按照S2-S5进行处理;

S2:将ResNet50作为Backbone,提取基础特征,得到基础特征向量f

S3:采用双线性卷积网络并行提取车辆局部特征信息和整体特征信息,得到局部特征向量f以及整体特征向量f′;

S4:对S3中的局部特征向量和整体特征向量进行结合,将整体特征向量f′和局部特征向量f进行拼接:

[f、f′]=concat(f,f′),

得到联合特征向量[f、f′],其中,concat(f,f′)表示使用concat函数对f,f′进行拼接;

S5:将S3-S4中得到的三个特征向量f′、f、[f、f′]输入到分类器中,得到每个类别的分数,并将三个分数的平均值S作为最终结果,从而得到训练集的车辆特征数据和测试集的车辆数据;

S6:将训练集的车辆特征数据输入到分类器中进行车辆分类的训练,优化训练损失函数,从而得到最优的细粒度车辆分类模型;将测试集的车辆数据输入到双线性卷积神经网络中进行预测分类。

根据上述技术方案,优选地,S1中,RGB图像作为模型的原始输入,输入的图像为(C1,H1,W1),其中,C1指输入图像的通道数,H1指输入图像的高,W1指输入图像的宽。

根据上述技术方案,优选地,S2中的ResNet50分为5个阶段,具体包括:

阶段1:将车辆RGB图像X

其中,(C2,H2,W2)中的C2、H2、W2分别指该阶段输出的通道数、高、宽;

阶段2:阶段2包含3个瓶颈层,所述瓶颈层包含依次设置的1×1的卷积,3×3的卷积以及1×1的卷积,将第一阶段中的输出特征X输入到瓶颈层中,得到F(X),将输入特征与输出特征进行结合,得到输出X′=X+F(X);

阶段3-5:阶段3中包括4个瓶颈层,阶段4中包括6个瓶颈层,阶段5中包括3个瓶颈层,将阶段1中的输出特征X分别输入到阶段3-5的4、6、3个瓶颈层中,并重复第2阶段的卷积操作,从而得到基础特征向量f

根据上述技术方案,优选地,S3中具体包括:

S31:将S2得到的基础特征向量f

S32:利用局部特征提取器提取车辆重要局部特征,通过一个卷积神经网络δ将f

利用注意力机制可以提取不同视点下的车辆的重要局部特征信息。

f=GAP(MatMul(δ(f

其中δ(·)表示卷积神经网络的卷积操作,GAP(·)表示全局平均池化操作。

根据上述技术方案,优选地,阶段2中使用ReLU函数增加神经网络各层之间的非线性关系,表示为:X′=ReLU(X)。

本发明的有益效果是:本发明针对车辆整体特征信息和局部特征信息设计了上下不同的子网络,并对上层子网络单独设置辅助损失函数,得到更具判别价值的局部特征信息;

本发明融合利用上下子网络中提取的不同特征及其组合,进一步提高卷积神经网络的分类准确率;

本发明的局部特征提取器,利用注意力机制精确定位有区别的局部。

附图说明

图1为本发明的流程图;

图2为本发明的双线性卷积神经网络结构图;

图3为本发明提取局部特征信息图;

图4为本发明中按局部特征提取器对车辆重要区域热力图;

图5为本发明中根据局部特征提取器定位的车辆重要区域局部图。

具体实施方式

为了使本技术领域的技术人员更好地理解本发明的技术方案,下面结合附图和最佳实施例对本发明作进一步的详细说明。

如图所示,本发明提供了一种基于双线性卷积神经网络的细粒度车辆分类方法,包括以下步骤:

S1:将车辆RGB图像输入到卷积神经网络中,其中一半车辆RGB图像作为训练集,另一半车辆RGB图像作为测试集,训练集与测试集分别按照步骤S2-S5进行处理;

S2:将ResNet50作为Backbone,提取基础特征,得到基础特征向量f

S3:采用双线性卷积网络并行提取车辆局部特征信息和整体特征信息,得到局部特征向量f以及整体特征向量f′;

S4:为了充分考虑局部信息特征与整体特征信息的联系,对S3中的局部特征向量和整体特征向量进行结合,将整体特征向量f′和局部特征向量f进行拼接,[f、f′]=concat(f,f′),得到联合特征向量[f、f′],其中,concat(f,f′)表示使用concat函数对f,f′进行拼接;

S5:将S3-S4中得到的三个特征向量f′、f、[f、f′]分别输入到分类器C

S6:将训练集的车辆特征数据输入到分类器中进行车辆分类的训练,优化训练损失函数,从而得到最优的细粒度车辆分类模型;将测试集的车辆数据输入到双线性卷积神经网络中进行预测分类。

根据上述实施例,优选地,S1中,RGB图像作为模型的原始输入,输入的图像为(3,224,224),其中,3指输入图像的通道数,224指输入图像的高,224指输入图像的宽。

根据上述实施例,优选地,S2中的ResNet50分为5个阶段,具体包括:

阶段1:将尺度为(3,244,244)的车辆RGB图像X

其中,尺度(64,56,56)中分别指该阶段输出的通道数、高、宽;

阶段2:第二阶段包含3个瓶颈层,瓶颈层结构包含依次设置的1×1的卷积,3×3的卷积以及1×1的卷积,将第1阶段中的输出特征X输入到瓶颈层中,得到F(X),为利用输入特征X信息,将输入特征与输出特征进行结合,得到输出X′=X+F(X);

Resnet50是残差网络,残差连接打破了神经网络的对称性,提高了每层神经元的利用率,另外网络中多条支路保证了即使某些层退化也不会影响整体表现。瓶颈层的输入与瓶颈层的输出是同一维度的,所以可以直接进行相加,X′=X+F(X)。

阶段3-5:阶段3中包括4个瓶颈层,阶段4中包括6个瓶颈层,阶段5中包括3个瓶颈层,将阶段1中的输出特征X分别输入到阶段3-5的4、6、3个瓶颈层中,并重复第2阶段的卷积操作,从而得到基础特征向量f

f

即f

其中ResNet(X

根据上述实施例,优选地,S3中具体包括:

S31:将S2得到的基础特征向量f

f′=GAP(ω(f

其中ω(·)表示卷积神经网络的卷积操作,GAP(·)表示全局平均池化操作。

S32:利用局部特征提取器提取车辆重要局部特征,通过一个卷积神经网络δ将f

这样可以使

在使用注意力机制得到局部特征信息过程中,使用注意正则化损失作为损失函数进行约束。局部特征提取器通过注意力机制得到M个注意力图A,注意力特征图A

其中全局特征中心c

c

根据上述实施例,优选地,阶段2中使用ReLU函数增加神经网络各层之间的非线性关系,表示为:X′=ReLU(X)。

本发明使用交叉熵损失函数来验证方法的正确性。交叉熵(Cross Entropy,CE)损失函数:交叉熵可看成是两个概率系统之间的信息量差异,主要用于描述真实样本分布与训练后模型的预测标记分布的相似性。本发明首先使用softmax函数将样本分数映射到(0,1)区间。公式如下所示:

其中

其中L

如图4-图5所示,此为利用本发明提出的局部特征提取器(LCG)获取到的汽车局部,图4为汽车注意力热图,可以充分体现出网络关注的局部,图5为根据局部特征提取器定位的重要局部(图中白色部分,亮度越大,关注程度越高)

实施例1:本实施例在Stanford cars车辆数据集上进行了实验。其中Stanfordcars车辆数据集中包含196种车辆类别,共16185张不同型号的汽车图片,训练集8144张,测试集8041张。在Centos7环境下的Anaconda平台上,采用pyTorch框架,使用RTX2082Ti显卡进行实验。本实施例的准确率分别为95.64%。表1、表2和表3列出了本实施例的实验的结果。

表1.使用不同Backbone提取基础特征的细粒度车辆分类准确率(%)

表1表明,利用Backbone提取基础特征作为后续网络的输入,不同的网络结构效果不同,表中数据显示,当使用ResNet50作为Backbone时,注意力图num_attentios=32,细粒度车辆分类准确率最高,这是由于ResNet是残差网络,能够结合之前输入的特征信息,有效解决了深度神经网络的退化问题,从而在细粒度车辆分类问题上效果较好。

表2.利用LCG提取不同数量注意力图num_attentios对于车辆分类准确率的影响(%)

表2表明了利用LCG提取不同数量注意力图num_attentios对于车辆分类正确率的影响,表中数据显示,注意力图num_attentios=32时得到车辆局部特征信息更有效,细粒度车辆分类效果最好。由此可知,当提取的注意力图数量较少时,不能获取足够有效的局部特征信息,从而导致车辆分类准确率低;当提取的注意力图数量过多时,可能导致网络出现过拟合的问题,也会导致车辆分类准确率低,因此需要进行参数调试,从而取到最好的效果,得到最优的参数。

实施例2

为了验证本发明方法在细粒度车辆分类准确率上的优势,本实施例选取目前使用较为广泛的五种细粒度车辆分类方法与本发明的基于双线性卷积神经网络的细粒度车辆分类方法进行对比,五种细粒度车辆分类方法分别为:递归注意力卷积神经网络模型、基于弱监督的数据增强网络模型、破坏与构建学习模型、弱监督注意金字塔卷积神经网络模型、跨部分卷积神经网络。

利用双线性卷积神经网络在Stanford cars车辆数据集上进行对比实验,本实施例在Stanford cars车辆数据集中选择训练集8144张张图像进行训练,测试集8041张图像用于测试,保证了训练与测试样本不重复出现,且每种方法中相同参数保持一致,保证了各个方法之间的公平性,最终结果体现普遍性和正确性。

上述五种细粒度车辆分类方法与本发明的基于双线性卷积神经网络的细粒度车辆分类方法进行对比的结果见表3。

表3.不同方法在Stanford cars车辆数据集上的准确率的比较(%)

表3显示了本发明与目前常用细粒度车辆分类方法的对比情况,结果表明本发明在Stanford cars车辆数据集上均超过了其他细粒度车辆分类方法的准确率。本发明针对车辆整体特征信息和局部特征信息设计了上下不同的两个子网络,并对上层子网络单独设置辅助损失函数,利用局部特征提取器(Local Feature Generator,LCG)精确定位有区别的局部,得到更具判别价值的局部特征信息,并且融合上下子网络中提取的不同特征及其组合,进一步提高卷积神经网络的车辆分类准确率。

本发明的有益效果是:本发明针对车辆整体特征信息和局部特征信息设计了上下不同的子网络,并对上层子网络单独设置辅助损失函数,得到更具判别价值的局部特征信息;

本发明融合利用上下子网络中提取的不同特征及其组合,进一步提高卷积神经网络的分类准确率;

本发明的局部特征提取器,利用注意力机制精确定位有区别的局部。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

相关技术
  • 基于稀疏化双线性卷积神经网络的细粒度图像分类方法
  • 一种基于双线性卷积神经网络的植物细粒度识别方法
技术分类

06120115929643