本发明涉及图像分类方法领域,尤其涉及一种基于双线性卷积神经网络的细粒度车辆分类方法。
背景技术:
1、随着中国经济的高质量快速发展,交通车辆数量迅猛增加,作为重要的基础设施的高速公路和城市交通也得到迅速发展,由此带来的交通和环境问题也日渐加剧。为应对这些问题,智能交通系统已经成为城市发展的重点研究对象,它是一种在传统交通系统的基础上发展起来的信息化、自动化、智能化、社会化的新型交通系统。作为智能交通系统的关键技术,细粒度车辆分类需要识别车辆品牌、型号及生产年份。细粒度车辆分类在处理包括提高收费效率、裁定交通责任和追踪肇事逃逸者等交通问题上有着得天独厚的优势,并且对于智能交通系统的建设具有重要意义。
2、随着深度学习的兴起及高性能显卡的出现,计算机视觉方面的技术得到快速发展,其中目标检测和图像分类尤为突出。传统目标检测算法只适应于有明显特征,背景简单的情形,而在实际应用中,背景复杂多变,而且待分类的目标复杂多变,很难通过一般的抽象特征完成对目标的分类,而深度学习利用卷积神经网络(convolutional neuralnetworks,cnn)可以提取同一目标丰富的特征,完成目标的检测,这极大地促进细粒度图像检测研究。基于深度学习的目标检测算法受到各行业和学术界的高度关注,基于深度学习的车辆检测和车型识别技术已经成为现阶段的研究趋势,并具备十分重要的科学与现实意义。通过计算机视觉、图像处理等技术从海量监控视频数据中检测车辆目标,实时获取并分析交通数据在各种智能交通应用中发挥着重要作用。
3、卷积神经网络的发展极大地促进各类细粒度图像分类的研究。目前,faster r-cnn和yolo是普遍用于目标检测的经典算法,vgg和resnet是目标检测普遍使用的网络结构。卷积神经网络能够从大量的样本数据中自适应地学习目标的特征表示,使用合适的回归和分类算法对这些特征表示进行处理,特征学习和分类器两个部分在卷积神经网络的框架下得到有机地结合,这种结合能够较大程度地提高整个网络的性能。
4、目前细粒度车辆分类算法研究的挑战有以下几个方面:
5、(1)图像质量差异大
6、针对同一辆车,站在不同的拍摄角度,获得的车辆图像必然会发生一定的变化,并且由于成像设备不同,图片质量也会有明显的差异。
7、(2)光照因素影响大
8、光照也是一个不可忽视的影响因素,尤其在光照环境欠佳的情况下,车辆检测会受到较大的限制。
9、(3)车辆类间差异小
10、车辆拥有大量类别,即使是同一型号的汽车,不同年份推出的产品也存在一定的差别。巨大的样本空间使车辆类别更加精致,细粒度车辆类间差异更加细微,往往只能借助于微小的局部差异才能区分不同的类别。
11、因此,设计一种基于双线性卷积神经网络的细粒度车辆分类方法解决上述问题成为了本领域技术人员亟待解决的技术问题。
技术实现思路
1、本发明所要解决的技术问题是克服现有技术中存在的不足,提供一种基于双线性卷积神经网络的细粒度车辆分类方法。
2、本发明是通过以下技术方案予以实现:一种基于双线性卷积神经网络的细粒度车辆分类方法,包括以下步骤:
3、s1:将车辆rgb图像输入到卷积神经网络中,其中一半车辆rgb图像作为训练集,另一半车辆rgb图像作为测试集,训练集与测试集分别按照s2-s5进行处理;
4、s2:将resnet50作为backbone,提取基础特征,得到基础特征向量fi;
5、s3:采用双线性卷积网络并行提取车辆局部特征信息和整体特征信息,得到局部特征向量f以及整体特征向量f′;
6、s4:对s3中的局部特征向量和整体特征向量进行结合,将整体特征向量f′和局部特征向量f进行拼接:
7、[f、f′]=concat(f,f′),
8、得到联合特征向量[f、f′],其中,concat(f,f′)表示使用concat函数对f,f′进行拼接;
9、s5:将s3-s4中得到的三个特征向量f′、f、[f、f′]输入到分类器中,得到每个类别的分数,并将三个分数的平均值s作为最终结果,从而得到训练集的车辆特征数据和测试集的车辆数据;
10、s6:将训练集的车辆特征数据输入到分类器中进行车辆分类的训练,优化训练损失函数,从而得到最优的细粒度车辆分类模型;将测试集的车辆数据输入到双线性卷积神经网络中进行预测分类。
11、根据上述技术方案,优选地,s1中,rgb图像作为模型的原始输入,输入的图像为(c1,h1,w1),其中,c1指输入图像的通道数,h1指输入图像的高,w1指输入图像的宽。
12、根据上述技术方案,优选地,s2中的resnet50分为5个阶段,具体包括:
13、阶段1:将车辆rgb图像xi,输入resnet50,先后经过卷积层、bn层、relu激活函数、maxpooling层得到了尺度为(c2,h2,w2)的输出特征x;
14、其中,(c2,h2,w2)中的c2、h2、w2分别指该阶段输出的通道数、高、宽;
15、阶段2:阶段2包含3个瓶颈层,所述瓶颈层包含依次设置的1×1的卷积,3×3的卷积以及1×1的卷积,将第一阶段中的输出特征x输入到瓶颈层中,得到f(x),将输入特征与输出特征进行结合,得到输出x′=x+f(x);
16、阶段3-5:阶段3中包括4个瓶颈层,阶段4中包括6个瓶颈层,阶段5中包括3个瓶颈层,将阶段1中的输出特征x分别输入到阶段3-5的4、6、3个瓶颈层中,并重复第2阶段的卷积操作,从而得到基础特征向量fi。
17、根据上述技术方案,优选地,s3中具体包括:
18、s31:将s2得到的基础特征向量fi经过卷积神经网络ω之后,从fi中提取一个整体高级特征通过对进行全局平均池化,得到整体特征向量f′;
19、s32:利用局部特征提取器提取车辆重要局部特征,通过一个卷积神经网络δ将fi映射得到一个局部高级特征通过注意力模块的注意力机制得到注意力图a,之后将与进行哈达玛积:得到局部特征向量f。
20、利用注意力机制可以提取不同视点下的车辆的重要局部特征信息。
21、f=gap(matmul(δ(fi),a))
22、其中δ(·)表示卷积神经网络的卷积操作,gap(·)表示全局平均池化操作。
23、根据上述技术方案,优选地,阶段2中使用relu函数增加神经网络各层之间的非线性关系,表示为:x′=relu(x)。
24、本发明的有益效果是:本发明针对车辆整体特征信息和局部特征信息设计了上下不同的子网络,并对上层子网络单独设置辅助损失函数,得到更具判别价值的局部特征信息;
25、本发明融合利用上下子网络中提取的不同特征及其组合,进一步提高卷积神经网络的分类准确率;
26、本发明的局部特征提取器,利用注意力机制精确定位有区别的局部。