kaiyun官方注册
您所在的位置: 首页> 人工智能> 业界动态> 教程:基于深度学习的车牌识别侦测网络模型

教程:基于深度学习的车牌识别侦测网络模型

2023-02-26
来源:新机器视觉
关键词: 深度学习 图像增强

  车牌识别

  概述

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

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

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

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

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

  一、网络模型

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

  网络代码定义如下:

142.JPG

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

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

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

  网络代码定义如下:

141.JPG

  其中的Block类的代码如下:

140.JPG

139.JPG

  位置编码的代码如下:

138.JPG

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

137.JPG

136.JPG

  二、数据加载

  1、车牌号的数据加载

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

135.JPG

  再通过数据增强,

  主要包括:

134.JPG

133.JPG

132.JPG

  三、训练

  分别训练即可

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

131.JPG

130.JPG

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

  四、推理

  1、侦测网络的推理

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

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

129.JPG

  2、序列检测网络的推理

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

128.JPG



更多信息可以来这里获取==>>电子技术应用-AET<<

mmexport1621241704608.jpg

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306116;邮箱:aet@chinaaet.com。
Baidu
map