论文部分内容阅读
细粒度车型识别在智能交通管理、违法车辆排查和汽车品牌市场统计与营销等领域和场景有着巨大的应用价值。但由于细粒度分类问题本身所具有的复杂性,导致目前细粒度车型识别的精度仍旧有较大提升的空间。本文基于目前流行的深度卷积神经网络及其各种变体,对细粒度车型识别问题进行研究。一方面,通过算法的研究和改进提升了细粒度车型分类的精度;另一方面,设计并实现了一个功能丰富、使用便利的细粒度车型识别系统测试软件。本文的主要工作归纳如下:1、通过对目标检测算法的研究和比较,选用SSD算法,对图片中的车辆区域进行检测,从而剔除背景干扰。以本文收集的细粒度车型数据集Model_dataset为实验对象,采用CaffeNet和Vggnet-16两种经典网络进行实验。实验结果表明对于两种神经网络,剔除掉背景干扰后的细粒度车型分类精度相比较于原始图片分别提升了10.49%和8.91%。本文在对SSD算法研究的过程中,针对于特定的数据场景,通过分析数据分布和卷积输出情况,提出了对SSD网络结构的修改方法,经实验验证,修改之后的目标检测算法模型的收敛速度和检测速度都有一定的提升。2、从迁移学习的角度出发,本文选用车种分类作为目标任务细粒度车型分类的源任务,并通过网络爬虫手段,收集了一个较大规模的源任务数据集Type_dataset,通过将源任务学习得到的“知识”迁移至目标任务的学习系统,达到提升细粒度车型分类精度的目的。仿真实验结果表明,相比较使用ImageNet预训练模型,在本文所设计的源任务预训练模型基础上进行微调的CaffeNet网络和Vggnet-16网络的测试精度分别提升了2.28%和0.27%。3、建立了一个量化的车辆姿态特征表示评分标准模型,依据该标准对不同网络模型以及不同层次深度的卷积特征进行评价,选择出最优的车辆姿态特征表示。利用选出的姿态特征,采用k-means聚类算法对车辆图片进行聚类,将车辆姿态按照车头朝向划分为“左”、“左前”、“前”、“右前”、“右”、“右后”、“后”和“左后”共8种姿态。实验表明采用上述方法的车辆姿态识别正确率高达91.41%。同时,针对卷积特征磁盘空间占用量大和k-means算法运算效率低的特点,将其移植到Hadoop分布式平台。通过仿真,证明了该方法可有效的降低车辆姿态聚类过程中单机的计算压力和磁盘压力。4、利用HTML、JavaScript和CSS前端语言,结合Python后端框架Tornado,设计并实现了细粒度车型识别系统测试软件,融合了车辆检测、姿态划分、车型分类和车种分类等算法功能。