CN113673491B - 一种基于龙芯2k1000处理器实现高精度车辆识别的方法 - Google Patents

一种基于龙芯2k1000处理器实现高精度车辆识别的方法 Download PDF

Info

Publication number
CN113673491B
CN113673491B CN202111230289.2A CN202111230289A CN113673491B CN 113673491 B CN113673491 B CN 113673491B CN 202111230289 A CN202111230289 A CN 202111230289A CN 113673491 B CN113673491 B CN 113673491B
Authority
CN
China
Prior art keywords
deep learning
learning model
processor
loongson
model
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.)
Active
Application number
CN202111230289.2A
Other languages
English (en)
Other versions
CN113673491A (zh
Inventor
吴浩然
李涛
王婷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Genture Electronics Co ltd
Original Assignee
Genture Electronics Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Genture Electronics Co ltd filed Critical Genture Electronics Co ltd
Priority to CN202111230289.2A priority Critical patent/CN113673491B/zh
Publication of CN113673491A publication Critical patent/CN113673491A/zh
Application granted granted Critical
Publication of CN113673491B publication Critical patent/CN113673491B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Abstract

本发明涉及一种基于龙芯2K1000处理器实现高精度车辆识别的方法,属于嵌入式图像处理技术领域,包括车辆数据收集与标签化处理,制作深度学习数据集;对深度学习模型进行训练;对深度学习模型进行优化;部署深度学习模型;选取视频流进行车辆检测。本发明通过裁剪和量化模型,在龙芯2K1000处理器上实现车辆检测识别的AI应用部署,在2K1000处理器上调用tmfile文件;首次验证2K1000处理器对yolo的算子支持;对于特征模块采取整体丢弃方法,优化了模型性能,提升车辆检测识别效率;本发明成本低廉,适合技术更新替换,易于部署,通过制作不同的数据集,可以用于其他领域的图像识别应用。

Description

一种基于龙芯2K1000处理器实现高精度车辆识别的方法
技术领域
本发明涉及一种基于龙芯2K1000处理器实现高精度车辆识别的方法,属于嵌入式图像处理技术领域。
背景技术
随着中国汽车销售量越来越多,交通拥堵,超速撞车等事故等频繁发生,就自然衍生出了对实时掌握交通路况信息的需求,为了让交通指挥者或者参与者及时获取必要的交通信息,需要把相关交通信息以标签的形式自动描述出来,使计算机能自动获取信息并处理成人们容易理解的信息。
目前,在计算机应用中图像识别技术的研究取得了丰硕的成果,然而基于国产芯片和嵌入式平台的图像识别研究成果较少,传统的图像识别算法仅对识别简单图像较为有效,且仅可识别少量特定对象,卷积神经网络CNN以其局部权值共享的特殊结构在语音识别和图像处理方面有着独特的优越性,卷积神经网络CNN的特征检测层通过训练数据进行学习,所以在使用CNN时,避免了显式的特征抽取,而隐式地从训练数据中进行学习。
然而,当前同类产品车辆识别准确率不高,以卷积神经网络CNN作为深度学习模型计算量较大,存在模型太大以及检测时间过长的问题,龙芯2K1000处理器算力不足以支持数据短时间有效处理,且深度学习存在过于依赖GPU的缺陷。
因此,需要一种基于龙芯2K1000处理器实现高精度车辆识别的方法。
发明内容
为了解决上述技术问题,本发明提供一种基于龙芯2K1000处理器实现高精度车辆识别的方法,其具体技术方案如下:
一种基于龙芯2K1000处理器实现高精度车辆识别的方法,包括以下步骤:
步骤1:车辆数据收集与标签化处理,制作深度学习数据集;
步骤2:对深度学习模型进行训练
步骤2.1:搭建深度学习模型框架;
步骤2.2:选择深度学习模型网络结构;
步骤2.3:使用深度学习数据集对深度学习模型框架进行训练,得到深度学习模型;
步骤3:对深度学习模型进行优化
步骤3.1:对深度学习模型进行裁剪,根据深度学习模型中各个参数在验证集中得到验证值为true的次数对各个参数的贡献值进行降序排列,裁剪掉贡献值低于设定标准的参数;
步骤3.2:对深度学习模型进行量化,降低模型进行推断所用的数据量;
步骤4:部署深度学习模型
步骤4.1:对2K1000处理器进行硬件适配,对不支持2K1000处理器的算子进行删减;
步骤4.2:深度学习模型格式转换:生成2K1000处理器适配的可调用文件,并将可调用文件转换为tmfile格式进行存储;
步骤4.3:深度学习模型部署:调用深度学习模型,将可调用文件编译生成可执行文件;
步骤5:选取视频流进行车辆检测:对视频流进行预处理,将预处理后得到的数据输入车辆识别模型进行检测识别以及显示输出。
进一步的,所述深度学习模型采用pytorch框架或paddle框架进行训练,得到车辆识别的卷积神经网络模型,所述深度学习模型网络结构选用小型网络模型yolov3_tiny。
进一步的,所述步骤1的具体过程为:
步骤1.1:高视角采集高速公路车辆图像数据;
步骤1.2:将图片上的车辆进行框定,对图片上的车辆信息进行标注,生成对应的xml文件;
步骤1.3:制作针对图像对应特定场景的数据集作为深度学习数据集;
所述图片中标注的信息包括图片大小、车辆种类、车辆在图中的位置信息,所述位置信息包括车辆框的x坐标极值和y坐标极值。
进一步的,所述对深度学习模型进行优化采用EMA方法,对于特征模块采取整体丢弃方式。
进一步的,所述步骤3.2对深度学习模型进行量化,将模型推断所用数据从float类型的浮点数,转换为8bit低精度值数据。
进一步的,所述步骤4深度学习模型的部署采用C++部署,其具体过程为:
步骤4.1:将深度学习模型转为onnx深度学习通用模型;
步骤4.2:对2K1000处理器进行硬件适配;
步骤4.3:将可调用文件转换为tmfile格式进行存储;
步骤4.4:调用深度学习模型,将可调用文件编译生成可执行文件。
进一步的,所述步骤5对视频流进行预处理,根据检测频率挑选图片进行显示。
进一步的,所述步骤5中选取视频流,包括选取本地视频流、通过usb摄像机接入视频流或者外接RTSP视频流中的一种或多种。
进一步的,所述视频流预处理,在2K1000处理器中实现opencv部署,将opencv所需库直接移入源中实现调用。
本发明的有益效果是:
本发明通过裁剪和量化,将深度学习模型压缩,成功在龙芯2K1000处理器上实现AI应用部署并进行车辆检测识别,实现了tmfile文件在2K1000处理器上进行调用;首次验证2K1000处理器对yolo的算子支持;对于特征模块采取整体丢弃方法,更有效地提取特征信息,优化了模型性能,提升了车辆检测识别的效率;本发明对比市面同类方法具有成本低廉,适合技术更新替换,易于部署等优点,具有容易迁移的特性,通过制作不同的数据集,可以用于其他领域的图像识别应用。
附图说明
图1是本发明的流程图,
图2是本发明的深度学习模型部署流程图。
具体实施方式
现在结合附图对本发明作进一步详细的说明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,本发明的基于龙芯2K1000处理器实现高精度车辆识别的方法,包括以下步骤:
步骤1:车辆数据收集与标签化处理,制作深度学习数据集
本实施例采用14万张高速公路高视角车辆检测数据集,将图片上所有车辆进行标注生成对应的xml文件,标注的信息是是图片大小960*540,车辆的种类信息,在图上的位置信息,包括车辆框的x坐标最小值和最大值,y坐标最小值和最大值,
制作针对此特定场景的数据集,作为深度学习数据集进行车辆检测深度学习模型的训练;
如下是对车辆进行标注后生成的xml文件:
<annotation>
<folder>test<folder>
<filename>1.jpg</filename>
<path>D:\deep_study\test\UA-DETRAC(车辆检测数据集8250车辆)\DETRAC-train-data\Insight-MVT_Annotation_Train\test\1.mp40000.jpg</path>
<source>
<database>Unknown</database>
</source>
<size>
<width>960<width>
<height>540</height>
<depth>3<depth>
</size>
<segmented>0</segmented>
<object>
<name>car</name>
<pose>Umspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>368</xmin>
<ymin>56</ymin>
<xmax>420</xmax>
<ymax>139</ymax>
</bndbox>
</object>
步骤2:对深度学习模型进行训练
本实施例搭建pytorch框架进行深度学习模型的训练,针对开发板部署模型需要小型化以及实时性的特点,深度学习模型网络结构采用小型网络模型yolov3_tiny,输入深度学习数据集进行模型训练,设置学习率为0.001,避免学习率过大产生过拟合,过小导致训练效果差时间长;
对于特征模块,一般都是采取特征模块随即丢弃的方法,本发明实施例采用EMA方法,对特征模块进行整体丢弃,能更好的提取特征信息;
步骤3:对深度学习模型进行优化
神经网络参数众多,其中很多参数对最终输出结果贡献不大,本发明实施例根据深度学习模型中各个参数在验证集中得到验证值为true的次数对各个参数的贡献值进行降序排列,裁剪掉贡献值低于设定标准的参数;
将深度学习模型推断所用数据从float类型的浮点数,转换为8bit低精度值数据;
经过裁剪和量化两种方法处理,模型被压缩到33M,在显卡V100上平均检测速度为每秒74帧,在龙芯教育派上运行,每帧检测时间是1.8秒,性能得到优化;
步骤4:部署深度学习模型
如图2所示,对2K1000处理器进行硬件适配,对不支持2K1000处理器的算子进行删减,其中包括部分MSA、SIMD算子以及Pytorch框架中一些不适用于2K1000处理器的算子,选用darknet框架训练模型适配2K1000处理器;
将模型转为onnx深度学习通用模型,做硬件适配,再转为tmfile格式,通过C++调用此模型,并通过交叉编译,生成可执行文件,实现车辆检测模型的调用;
步骤5:选取视频流进行车辆检测
选取本地视频流、通过usb摄像机接入视频流或者外接RTSP视频流中的一种或多种,对视频流进行预处理,视频流输入图片较多,超出了检测的速度,无法对所有图片进行检测,根据检测速度挑选图片进行显示,在本实施例中,每10帧图片选取一张进行检测和显示;
在2K1000处理器实现opencv部署,在2K1000处理器并不能实现opencv源码编译,故本发明将opencv所需库直接移入源中实现调用,将预处理后得到的数据输入车辆识别模型进行检测识别以及显示输出。
将本方法得到的车辆识别模型在GPU上进行测试,针对200米范围内车辆进行检测,精度达到99.7%以上,召回率达到98.9%以上,性能超过同类产品。
以上述依据本发明的理想实施例为启示,通过上述的说明内容,相关工作人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。

Claims (9)

1.一种基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:包括以下步骤:
步骤1:车辆数据收集与标签化处理,制作深度学习数据集;
步骤2:对深度学习模型进行训练
步骤2.1:搭建深度学习模型框架;
步骤2.2:选择深度学习模型网络结构;
步骤2.3:使用深度学习数据集对深度学习模型框架进行训练,得到深度学习模型;
步骤3:对深度学习模型进行优化
步骤3.1:对深度学习模型进行裁剪,根据深度学习模型中各个参数在验证集中得到验证值为true的次数对各个参数的贡献值进行降序排列,裁剪掉贡献值低于设定标准的参数;
步骤3.2:对深度学习模型进行量化,降低模型进行推断所用的数据量;
步骤4:部署深度学习模型
步骤4.1:对2K1000处理器进行硬件适配,对不支持2K1000处理器的算子进行删减;
步骤4.2:深度学习模型格式转换:生成2K1000处理器适配的可调用文件,并将可调用文件转换为tmfile格式进行存储;
步骤4.3:深度学习模型部署:调用深度学习模型,将可调用文件编译生成可执行文件;
步骤5:选取视频流进行车辆检测:对视频流进行预处理,将预处理后得到的数据输入车辆识别模型进行检测识别以及显示输出。
2.根据权利要求1所述的基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:所述深度学习模型采用pytorch框架或paddle框架进行训练,得到车辆识别的卷积神经网络模型,所述深度学习模型网络结构选用小型网络模型yolov3_tiny。
3.根据权利要求1所述的基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:所述步骤1的具体过程为:
步骤1.1:高视角采集高速公路车辆图像数据;
步骤1.2:将图片上的车辆进行框定,对图片上的车辆信息进行标注,生成对应的xml文件;
步骤1.3:制作针对图像对应场景的数据集作为深度学习数据集;
所述图片中标注的信息包括图片大小、车辆种类、车辆在图中的位置信息,所述位置信息包括车辆框的x坐标极值和y坐标极值。
4.根据权利要求1所述的基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:所述对深度学习模型进行优化采用EMA方法,对于特征模块采取整体丢弃方式。
5.根据权利要求1所述的基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:所述步骤3.2对深度学习模型进行量化,将模型推断所用数据从float类型的浮点数,转换为8bit低精度值数据。
6.根据权利要求1所述的基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:所述步骤4深度学习模型的部署采用C++部署,其具体过程为:
步骤4.1:将深度学习模型转为onnx深度学习通用模型;
步骤4.2:对2K1000处理器进行硬件适配;
步骤4.3:将可调用文件转换为tmfile格式进行存储;
步骤4.4:调用深度学习模型,将可调用文件编译生成可执行文件。
7.根据权利要求1所述的基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:所述步骤5对视频流进行预处理,根据检测频率挑选图片进行显示。
8.根据权利要求1所述的基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:所述步骤5中选取视频流,包括选取本地视频流、通过usb摄像机接入视频流或者外接RTSP视频流中的一种或多种。
9.根据权利要求1所述的基于龙芯2K1000处理器实现高精度车辆识别的方法,其特征在于:所述视频流预处理,在2K1000处理器中实现opencv部署,将opencv所需库直接移入源中实现调用。
CN202111230289.2A 2021-10-22 2021-10-22 一种基于龙芯2k1000处理器实现高精度车辆识别的方法 Active CN113673491B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111230289.2A CN113673491B (zh) 2021-10-22 2021-10-22 一种基于龙芯2k1000处理器实现高精度车辆识别的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111230289.2A CN113673491B (zh) 2021-10-22 2021-10-22 一种基于龙芯2k1000处理器实现高精度车辆识别的方法

Publications (2)

Publication Number Publication Date
CN113673491A CN113673491A (zh) 2021-11-19
CN113673491B true CN113673491B (zh) 2022-04-01

Family

ID=78550830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111230289.2A Active CN113673491B (zh) 2021-10-22 2021-10-22 一种基于龙芯2k1000处理器实现高精度车辆识别的方法

Country Status (1)

Country Link
CN (1) CN113673491B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976504A (zh) * 2010-10-13 2011-02-16 北京航空航天大学 一种基于颜色空间信息的多车辆视频跟踪方法
CN109543744A (zh) * 2018-11-19 2019-03-29 南京邮电大学 一种基于龙芯派的多类别深度学习图像识别方法及其应用
CN113076858A (zh) * 2021-03-30 2021-07-06 深圳技术大学 基于深度学习的车辆信息检测方法、存储介质及终端设备
CN113313110A (zh) * 2021-05-25 2021-08-27 北京易华录信息技术股份有限公司 一种车牌类型识别模型构建及车牌类型识别方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10839314B2 (en) * 2016-09-15 2020-11-17 Infosys Limited Automated system for development and deployment of heterogeneous predictive models
CN111582339B (zh) * 2020-04-28 2023-07-25 江西理工大学 一种基于深度学习的车辆检测与识别的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976504A (zh) * 2010-10-13 2011-02-16 北京航空航天大学 一种基于颜色空间信息的多车辆视频跟踪方法
CN109543744A (zh) * 2018-11-19 2019-03-29 南京邮电大学 一种基于龙芯派的多类别深度学习图像识别方法及其应用
CN113076858A (zh) * 2021-03-30 2021-07-06 深圳技术大学 基于深度学习的车辆信息检测方法、存储介质及终端设备
CN113313110A (zh) * 2021-05-25 2021-08-27 北京易华录信息技术股份有限公司 一种车牌类型识别模型构建及车牌类型识别方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
基于深度学习的车位智能检测方法;徐乐先等;《中国激光》;20190202(第04期);全文 *
基于软硬件协同的国产处理器可靠性环境试验技术研究;郭长荣;《中国优秀博硕士学位论文全文数据库(硕士)工程科技Ⅱ辑》;20190415;全文 *
面向城市OD调查的车辆再识别;吴浩然;《中国优秀博硕士学位论文全文数据库(硕士)工程科技Ⅱ辑》;20190415;全文 *

Also Published As

Publication number Publication date
CN113673491A (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
CN108537269B (zh) 一种弱交互式的物体检测深度学习方法及其系统
CN110490099B (zh) 一种基于机器视觉的地铁公共地点人流量分析方法
CN110781964A (zh) 一种基于视频图像的人体目标检测方法及系统
US20060062460A1 (en) Character recognition apparatus and method for recognizing characters in an image
WO2023083280A1 (zh) 一种场景文本识别方法和装置
CN110598693A (zh) 一种基于Faster-RCNN的船牌识别方法
CN113378815B (zh) 一种场景文本定位识别的系统及其训练和识别的方法
CN112232371A (zh) 一种基于YOLOv3与文本识别的美式车牌识别方法
CN111507353B (zh) 一种基于文字识别的中文字段检测方法及系统
CN111178282A (zh) 一种道路交通限速标志定位识别方法及装置
CN114693908A (zh) 一种基于YOLOv5的工业二维码定位方法
CN113159146A (zh) 样本生成、目标检测模型训练、目标检测方法及装置
CN113673491B (zh) 一种基于龙芯2k1000处理器实现高精度车辆识别的方法
CN110674802B (zh) 一种改进的平行四边形候选框的文本检测方法
CN111523543A (zh) 一种基于学习的隧道表面缺陷定位方法
CN116665390A (zh) 基于边缘计算及优化YOLOv5的火灾检测系统
CN115953744A (zh) 一种基于深度学习的车辆识别追踪方法
CN114005054A (zh) 一种ai智能评分系统
CN114111647A (zh) 一种基于人工智能的绝缘子伞裙破损面积测量方法及测量系统
CN113591761A (zh) 一种视频镜头语言识别方法
CN111274891A (zh) 一种面向简谱图像的音高及对应歌词提取方法及系统
CN115565152B (zh) 融合车载激光点云与全景影像的交通标志牌提取方法
Yang et al. Traffic Sign Interpretation in Real Road Scene
CN111651629B (zh) 一种构建全样本数据的方法和系统
CN112015925B (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
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A method of high-precision vehicle recognition based on Godson2K1000 processor

Effective date of registration: 20230217

Granted publication date: 20220401

Pledgee: Zheshang Bank Co.,Ltd. Nanjing Branch

Pledgor: GENTURE ELECTRONICS Co.,Ltd.

Registration number: Y2023980032922

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Granted publication date: 20220401

Pledgee: Zheshang Bank Co.,Ltd. Nanjing Branch

Pledgor: GENTURE ELECTRONICS Co.,Ltd.

Registration number: Y2023980032922

PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A method for achieving high-precision vehicle recognition based on Loongson 2K1000 processor

Granted publication date: 20220401

Pledgee: Zheshang Bank Co.,Ltd. Nanjing Branch

Pledgor: GENTURE ELECTRONICS Co.,Ltd.

Registration number: Y2024980006822