8bb2e4e60bad5e006700cce98689ef82.gif

向AI转型的程序员都关注了这个号👇👇👇

车牌识别

概述

基于深度学习的车牌识别,其中,车辆检测网络直接使用YOLO侦测。而后,才是使用网络侦测车牌与识别车牌号。

车牌的侦测网络,采用的是resnet18,网络输出检测边框的仿射变换矩阵,可检测任意形状的四边形。

车牌号序列模型,采用Resnet18+transformer模型,直接输出车牌号序列。

数据集上,车牌检测使用CCPD 2019数据集,在训练检测模型的时候,会使用程序生成虚假的车牌,覆盖于数据集图片上,来加强检测的能力。

车牌号的序列识别,直接使用程序生成的车牌图片训练,并佐以适当的图像增强手段。模型的训练直接采用端到端的训练方式,输入图片,直接输出车牌号序列,损失采用CTCLoss。

一、网络模型

1、车牌的侦测网络模型:

网络代码定义如下:

ad5999cae9747eb5e576d1e92fd24a7d.png

该网络,相当于直接对图片划分cell,即在16X16的格子中,侦测车牌,输出的为该车牌边框的反射变换矩阵。

2、车牌号的序列识别网络:

车牌号序列识别的主干网络:采用的是ResNet18+transformer,其中有ResNet18完成对图片的编码工作,再由transformer解码为对应的字符。

网络代码定义如下:

9e0b26fecbcf4d2a22bcd4626764c4a1.png

bbf3955aadb07c376d9f83a25cba7215.png

其中的Block类的代码如下:

14938707abca54a1a2baf9ea13b6e5ee.png

e4ee4a7f087fb5e023a0e6b51e868b63.png

位置编码的代码如下:

a67483bd3fa222afc06f70f5217d3184.png

Block类使用的自注意力代码如下:

951b3347843d5fca9199d20098aaac5c.png

8b2197d7aa8820480100cf3bcbffd303.png

426f50bfe96ec841f1d43e96efe2d8ea.png

二、数据加载

1、车牌号的数据加载

同过程序生成一组车牌号:

0919c5c8951b7ecd4690729dba829343.png

再通过数据增强,

主要包括:

fc1b4d4c8704484b5614fea62c71f6c7.png

607828c2ba13d668d1c3b8c174bd8fad.png

d7fc337dc6ee4512140037f55dcc1b2a.png

三、训练

分别训练即可

其中,侦测网络的损失计算,如下:

fa3e0fd747ed23125544966e2d86b14a.png

823deb5eb6523e8b8b162002ce2a4a69.png

侦测网络输出的反射变换矩阵,但对车牌位置的标签给的是四个角点的位置,所以需要响应转换后,做损失。其中,该cell是否有目标,使用CrossEntropyLoss,而对车牌位置损失,采用的则是L1Loss。

四、推理

1、侦测网络的推理

按照一般侦测网络,推理即可。只是,多了一步将反射变换矩阵转换为边框位置的计算。

另外,在YOLO侦测到得测量图片传入该级进行车牌检测的时候,会做一步操作。代码见下,将车辆检测框的图片扣出,然后resize到长宽均为16的整数倍。

43457dcd54ce44684e68d89c6711fabe.png

2、序列检测网络的推理

对网络输出的序列,进行去重操作即可,如间隔标识符为“*”时:

b74e7f35e26b881f1e20dbbad03006b8.png

完整代码

https://github.com/HibikiJie/LicensePlate

原文地址

https://blog.csdn.net/weixin_48866452/article/details/120319588

机器学习算法AI大数据技术

 搜索公众号添加: datanlp

2b54a106f157a316747748ab4bfcf424.jpeg

长按图片,识别二维码


阅读过本文的人还看了以下文章:

TensorFlow 2.0深度学习案例实战

基于40万表格数据集TableBank,用MaskRCNN做表格检测

《基于深度学习的自然语言处理》中/英PDF

Deep Learning 中文版初版-周志华团队

【全套视频课】最全的目标检测算法系列讲解,通俗易懂!

《美团机器学习实践》_美团算法团队.pdf

《深度学习入门:基于Python的理论与实现》高清中文PDF+源码

《深度学习:基于Keras的Python实践》PDF和代码

特征提取与图像处理(第二版).pdf

python就业班学习视频,从入门到实战项目

2019最新《PyTorch自然语言处理》英、中文版PDF+源码

《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码

《深度学习之pytorch》pdf+附书源码

PyTorch深度学习快速实战入门《pytorch-handbook》

【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》

《Python数据分析与挖掘实战》PDF+完整源码

汽车行业完整知识图谱项目实战视频(全23课)

李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材

笔记、代码清晰易懂!李航《统计学习方法》最新资源全套!

《神经网络与深度学习》最新2018版中英PDF+源码

将机器学习模型部署为REST API

FashionAI服装属性标签图像识别Top1-5方案分享

重要开源!CNN-RNN-CTC 实现手写汉字识别

yolo3 检测出图像中的不规则汉字

同样是机器学习算法工程师,你的面试为什么过不了?

前海征信大数据算法:风险概率预测

【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类

VGG16迁移学习,实现医学图像识别分类工程项目

特征工程(一)

特征工程(二) :文本数据的展开、过滤和分块

特征工程(三):特征缩放,从词袋到 TF-IDF

特征工程(四): 类别特征

特征工程(五): PCA 降维

特征工程(六): 非线性特征提取和模型堆叠

特征工程(七):图像特征提取和深度学习

如何利用全新的决策树集成级联结构gcForest做特征工程并打分?

Machine Learning Yearning 中文翻译稿

蚂蚁金服2018秋招-算法工程师(共四面)通过

全球AI挑战-场景分类的比赛源码(多模型融合)

斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)

python+flask搭建CNN在线识别手写中文网站

中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程

不断更新资源

深度学习、机器学习、数据分析、python

 搜索公众号添加: datayx  

5d2ebe338ec2549b3c2c060385ed15bb.jpeg

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐