车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]

1.车标&车辆品牌检测Python

(1)图片检测:

车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第1张图片

车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第2张图片

车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第3张图片

车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第4张图片
车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第5张图片
车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第6张图片
车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第7张图片
车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第8张图片

支持视频检测&视频流检测

(2)项目文件展示

车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第9张图片

2.包含车标目标检测图像数据集

车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第10张图片

3.训练结果展示

车标&车辆品牌检测Python[完整源码&视频安装教程&车标数据集&完整文档]_第11张图片

完整项目代码:[完整源码&视频安装教程&车标数据集&完整文档]车标&车辆品牌检测Python (mianbaoduo.com)

4.所需依赖库(安装方法教程有视频教程)

pip install -r requirements.txt

Base ----------------------------------------

matplotlib>=3.2.2

numpy>=1.18.5

opencv-python>=4.1.2

Pillow>=7.1.2

PyYAML>=5.3.1

requests>=2.23.0

scipy>=1.4.1

PyQt5

tqdm>=4.41.0

Logging -------------------------------------

tensorboard>=2.4.1

wandb

Plotting ------------------------------------

pandas>=1.1.4

seaborn>=0.11.0

5.背景

基于视频的车辆信息的检测和识别是智能交通系统的一个重要分支,而车标作为车辆的一个重要信息,具有显著和不易更换的特点,因此其检测和识别具有重要意义【1】。实际生活中单靠车牌的识别不能完全准确确认车辆身份,正确识别车标有助于车辆身份的确认,因此对于车标的准确快速识别在套牌车识别、车辆布控查询、车辆违章逃逸等方面有广泛的应用。
目前对车标识别技术的研究一般分为定位和识别两部分。
对于车标定位算法,其中较为普遍的定位算法是两步定位法,即车标的粗定位和精定位。李哲等21利用车牌与车标相对位置关系对车标进行粗定位,再利用投影方法进行车标精定位;杨正云等Bl利用Sobel算子和Shen算子对车牌进行定位,然后利用车牌与车标的相对位置确定车标大概位置,再利用纹理特征对车标精定位;李熙莹等【根据散热器栅格背景的纹理信息对车标进行精确定位;张闯等”在HSV(Hue,Saturation,Value)下使用滤镜定位车牌位置来粗定位车标,然后运用垂直投影法分割并分离出车标图像。这些方法定位过程繁琐,受车型、环境影响较大,定位速度慢且精度低。对于车标识别的算法主要有模板匹配算法、传统的机器学习方法和基于卷积神经网络(Convolutional Neural Network,CNN)的深度学习方法。李哲等【S采用改进的方向梯度直方图(Histogram of Oriented Gradient,HOG)特征和局部二值化特征作为联合特征,训练反向传播(Back Propagation,BP)神经网络分类器来识别车标耿庆田等【7】利用尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)算子对图像的视角、平移、放射、亮度、旋转等不变特性进行提取,并采用BP神经网络算法自主选取车标图像特征进行分类、匹配和识别;张硕*利用Adaboost算法训练出各种车标分类器,并将各种车标分类器组合在一起,实现车标的识别。上述方法使用HOG、SIFT等机器学习提取图像特征,使用支持向量机(Support Vector Machine,SVM)、BP神经网络等分类器进行识别,该类方法可识别较多类车标,但是对误识别的车标无法判断,且识别率与训练样本数量、种类密切相关。Huang等采用基于卷积神经网络模型的方法对车标进行分类,利用主成分分析提高了车标的识别精度和速度,但是出现了前期训练时间过长且对于未知品牌的车标不可识别的问题,而且受车标种类密度影响较大;叶玉双等IOI 使用基于OpenCV模板匹配和边缘检测技术来解决识别的任务,该方法有较高的识别精度,但需要车标较为清晰,不适用于交通道路中的车标识别。
针对上述车标定位效率低且精度低的问题,本文采用基于卷积神经网络的方法进行车标一步定位,速度快且精度高;针对上述车标识别中存在的受车标种类密度影响、不可识别未知类型车标及车标需高清晰等问题,本文采用基于形态学模板匹配算法进行识别,对二值化图像进行匹配,识别精度高。

6.算法原理

基于深度学习的目标检测算法分为两大类∶一类是两阶段检测算法(R-CNN(Region-CNN)【1】、Fast-R-CNN(Fast-Region-CNN)【2】、Faster-R-CNN(Faster-Region-CNN)【3】);另一类是一阶段检测算法(YOLO****系列)。前者是基于候选区域检测算法,在检测精度上占优势;后者是基于回归检测算法,则在检测速度上占优势。YOLOv4目标检测算法**以CSPDarknet53作为骨干网络,相比Darknet53加入了CSPNet 结构【1】,增强了CNN学习能力,减少了计算量,在不降低速度的同时提高了检测精度;并在CSPDarknet上添加了SPP模块 ,相比传统最大池化方式,其可以分离出最重要的上下文特征颈部采用路径聚合网络(Path Aggregation Network,PAN)【20】与特征金字塔(Feature Pyramid Network,FPN)【2】相融合的结构,针对不同层级的检测器,挑选PAN对不同骨干层进行参数聚合,改善了FPN由浅层特征向深层传递导致的浅层特征丢失的问题;检测头部延续了YOLOv3中的YOLO-head,最终形成了“CSPDarknet+FPN+PAN+YOLOv3-head”的模型结构。

7.参考文献

【1】 蒋菠.基于视频图像的汽车车标检测技术研究与实现【D】.成
都∶西南交通大学,2012∶1-2.(JIANG B.Research and implementation of vehicle logo detection technology based on video images [D]. Chengdu: Southwest Jiaotong University,2012:1-2.)
【2】 李哲,于梦茹.基于多种LBP特征集成学习的车标识别【J】.计算
机工程与应用,2019,55(20)∶134-138.(LIZ,YUMR.Vehicle logo recognition based on integrated leaming of multiple LBP features [J]. Computer Engineering and Applications,2019,55 (20)134-138.)
【3】 杨正云,王林.视频监控系统中运动车辆的车标识别技术【J】.遵
义师范学院学报,2016,18(3)∶110-114.(YANGZY,WANGL. Vehicle logo recognition technology for moving vehicles in video surveillance system [J]. Joumal of Zunyi Normal University, 2016,18(3)110-114.)
【4】 李熙莹,吕硕,袁敏贤,等.基于散热器栅格背景精确分类的车标定位方法【J】.计算机工程与应用,2017,53(2)∶206-213.(LIX Y,LYU S, YUAN M X, et al. Vehicle logo positioning method based on accurate classification of radiator grid background [J]. Computer Engineering and Applications,2017,53(2):206-213.)

你可能感兴趣的:(目标检测,python,opencv,计算机视觉)