一种基于深度学习的智能车牌识别方法及系统

文档序号:29627936发布日期:2022-04-13 15:00阅读:124来源:国知局
一种基于深度学习的智能车牌识别方法及系统

1.本发明涉及智能交通工程技术领域,更具体地,涉及一种基于深度学习的智能车牌识别方法及系统。


背景技术:

2.智能车牌识别是现代智能交通系统的重要组成部分,广泛应用于高速公路、停车场、路口等场景。随着大数据、人工智能的不断发展,智能车牌识别在数据处理、自适应学习以及特殊场景训练等方面都有较大程度提升,具有更强的容错性和鲁棒性。通过车牌号码的自动识别与跟踪,能有效降低车辆自动化管理的成本,规范车辆不规范行为,为社会稳定与居民便捷生活提供坚实保障。
3.车牌识别的一般流程包括原始车辆图片的获取、车牌检测与车牌识别三个步骤。其中车牌检测主要实现车牌在车辆图片中的检测、车牌图片的定位及预处理等,常用的检测技术包括基于传统的特征检测及基于深度学习的车牌检测。针对数据量一般,对雨雪、光照等环境要求不高的情况,可采用传统特征检测,对车牌色彩、纹理、边缘等关键特征进行提取。比如文献(贺瑜飞.小波分析和边缘检测在快速车牌定位中的应用[j].科技创新导报,2014,12(12):88-88)采用mallat算法和小波变换进行区域边缘特征提取;文献(侯向宁,刘华春.基于颜色分割与sobel算子相结合的车牌定位[j].计算机技术与发展,2018,28(08):156-159)结合颜色分割及sobel算子实现车牌颜色边缘特征提取。针对干扰因素较多的复杂场景,可采用深度学习算法,比如ssd卷积神经网络等(haneenalhajmustafa;sarahassanin;musaal-yaman.automaticjordanianlicenseplaterecognitionsystemusingmultistagedetection[c].201815thinternationalmulti-conferenceonsystems,signals&devices(ssd).ieee,2018)实现快速检测与定位。
[0004]
随着人工智能的不断发展,通过将深度学习算法应用于车牌识别领域屡见不鲜,然而部分算法在简单场景下有较高的识别效果,但对于不同光照、不同环境、不同天气、不同清晰度等多变的场景识别,还存在一定难度,且不同神经网络的选择或者网络参数的自适应调整都会进一步影响车牌识别效率。但是上述方法无论是在响应速度还是精度上都有待提高,无法满足市场需求。


技术实现要素:

[0005]
本发明需要解决的是现有技术中存在的车牌自动识别的响应速度慢且精度低的技术问题。
[0006]
本发明提供了一种基于深度学习的智能车牌识别方法,包括以下步骤:
[0007]
s1,获取原始车辆图片,采用centernet对原始车辆图片进行车牌的目标位置的定位、检测与保存;
[0008]
s2,提取车牌兴趣区域图像,输入已训练好的车牌识别模型中,判断车牌是否遮挡不清,若正常,则进一步提取车牌图片,若不正常,则提示报警;
[0009]
s3,对车牌图片进行预处理得到车牌图像信息;
[0010]
s4,将处理后的车牌字符传入卷积神经网络进行模型的训练与优化,最终预测得到车牌识别结果。
[0011]
优选地,所述s1具体包括:
[0012]
s11:选择resnet50作为目标检测网络,即对车辆图片进行50次卷积操作,实现特征提取;
[0013]
s12:通过反卷积模块,对上一步得到的特征图片进行三次上采样,得到增强后的特征图片;
[0014]
s13:将所述特征图片放入三个分支卷积网络,分别预测检测目标的热力图heatmap、目标的宽度与高度占比以及目标的中心点坐标的参数;
[0015]
s14:采用仿射变换,在原始车辆图片中实现检测目标的裁剪和缩放,用边框框出车牌位置,并显示位置比例。
[0016]
优选地,所述s3中预处理具体包括:
[0017]
s31:采用直方图均衡化方法,增强车牌图片的对比度;
[0018]
s32:采用基于幂次变换的伽马校正实现图片的灰度处理,将输入图片的灰度值进行指数变换;
[0019]
s33:检测灰度变换后的车牌图片是否存在倾斜,如存在,则采用霍夫变换检测车牌的边界形状,不断拟合车牌的边界线条,然后通过空间角度的调整,实现车牌图片的矫正;
[0020]
s34:通过统计边框像素出现的频率,对矫正后的车牌图片进行边缘去除。
[0021]
优选地,所述s4之前且在所述s3之后还包括:在卷积神经网络搭建前先明确输入与输出变量,将所有车牌图片统一缩放为宽240px,高 80px的标准图片,灰度处理后统一选择一维通道。
[0022]
优选地,若训练集样本数量为n张车牌图片,则网络的输入层维度则为n*80*240*1,其中,n为正整数。
[0023]
优选地,所述s4的卷积神经网络具体包括:依次布置的第一卷积图、第二卷积图及第三卷积图;
[0024]
所述第一卷积图的卷积核c1大小为32,卷积形状为3*3,卷积核c2 的卷积形状为2*2,随机丢弃50%样本;
[0025]
所述第二卷积图的卷积核c3大小为64,卷积形状为3*3,卷积核c4 的卷积形状为2*2,随机丢弃50%样本;
[0026]
所述第三卷积图的卷积核c5大小为128,卷积形状为3*3,卷积核c6的卷积形状为2*2,随机丢弃50%样本。
[0027]
优选地,所述卷积神经网络还包括:
[0028]
池化层,基于最大值原则,根据池化形状进行欠采样,降低特征维度,选择2*2的池化形状;
[0029]
全连接层,通过自适应矩估计激活函数实现公式yi= max{∑ixiw
i,j
+bi}中w、b参数的自适应调整,其中xi,yi分别是第i 层神经网络的输入与输出,w
i,j
是第i层第j个节点的权重,bi是偏置参数;
[0030]
输出层,将全连接层得到的神经元分类结果输入softmax函数,并映射至(0,1)区间内。
[0031]
本发明还提供了一种用于实现基于深度学习的智能车牌识别方法的系统,包括:
[0032]
图像采集模块,用于获取原始车辆图片,采用centernet对原始车辆图片进行车牌的目标位置的定位、检测与保存;
[0033]
遮挡判断模块,用于提取车牌兴趣区域图像,输入已训练好的车牌识别模型中,判断车牌是否遮挡不清,若正常,则进一步提取车牌图片,若不正常,则提示报警;
[0034]
车牌提取模块,对车牌图片进行预处理得到车牌图像信息;
[0035]
图像处理模块,用于将处理后的车牌字符传入卷积神经网络进行模型的训练与优化,最终预测得到车牌识别结果。
[0036]
本发明还提供了一种电子设备,包括存储器、处理器,所述处理器用于执行存储器中存储的计算机管理类程序时实现基于深度学习的智能车牌识别方法的步骤。
[0037]
本发明还提供了一种计算机可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现基于深度学习的智能车牌识别方法的步骤。
[0038]
有益效果:本发明提供的一种基于深度学习的智能车牌识别方法及系统,其中方法包括s1,获取原始车辆图片,采用centernet对原始车辆图片进行车牌的目标位置的定位、检测与保存;s2,提取车牌兴趣区域图像,输入已训练好的车牌识别模型中,判断车牌是否遮挡不清,若正常,则进一步提取车牌图片,若不正常,则提示报警;s3,对车牌图片进行预处理得到车牌图像信息;s4,将处理后的车牌字符传入卷积神经网络进行模型的训练与优化,最终预测得到车牌识别结果。通过选取centernet网络进行车牌定位与检测,选择直方图均衡化、倾斜度矫正等图像预处理技术增强车牌的对比度,都为后续卷积神经网络的训练提供了有效保障。测试结果显示,该系统能有效辨别不同场景下车牌信息,且平均识别准确率高。
附图说明
[0039]
图1为本发明提供的一种基于深度学习的智能车牌识别方法的流程图;
[0040]
图2为本发明提供的一种可能的电子设备的硬件结构示意图;
[0041]
图3为本发明提供的一种可能的计算机可读存储介质的硬件结构示意图。
具体实施方式
[0042]
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0043]
实施例1
[0044]
如图1所示,本发明实施例提供了一种基于深度学习的智能车牌识别方法,包括以下步骤:
[0045]
s1,获取原始车辆图片,采用centernet对原始车辆图片进行车牌的目标位置的定位、检测与保存;通过在门禁处预设的摄像头来获取每次通过的车辆的原始车辆图片,然后进行车牌识别检测,车牌识别的一般流程包括原始车辆图片的获取、车牌检测与车牌识别三个步骤。
[0046]
s2,提取车牌兴趣区域图像,输入已训练好的车牌识别模型中,判断车牌是否遮挡不清,若正常,则进一步提取车牌图片,若不正常,则提示报警。其中,车牌感兴趣区域图可以为车头图像或车尾图像。预先利用已知车牌感兴趣区域位置的车辆图像训练目标检测模型。目标检测模型可以采用由传统特征提取(如,方向梯度直方图hog)、机器学习分类器(如,支持向量机分类器)构成目标检测模型,优选采用由卷积神经网络模型、回归器、分类器构成的深度学习目标检测模型,可以适应各种复杂的环境,鲁棒性高,误判率低。如果判断没有遮挡不清,则进入下一步,如果判断存在遮挡、污损不清,则发出警报,示意车主下车将车牌清理干净,以免违规,上述遮挡主要是指部分的遮挡,不是指全部的遮挡,全部遮挡也就无法进行识别了。
[0047]
s3,对车牌图片进行预处理得到车牌图像信息;对车牌图片进行直方图均衡、灰度处理、倾斜矫正的预处理操作后,得到车牌图像信息。
[0048]
s4,将处理后的车牌字符传入卷积神经网络进行模型的训练与优化,最终预测得到车牌识别结果。
[0049]
其中,车牌检测主要实现车牌在车辆图片中的检测、车牌图片的定位及预处理等,常用的检测技术包括基于传统的特征检测及基于深度学习的车牌检测。针对数据量一般,对雨雪、光照等环境要求不高的情况,可采用传统特征检测,对车牌色彩、纹理、边缘等关键特征进行提取。比如采用mallat算法和小波变换进行区域边缘特征提取;或结合颜色分割及sobel算子实现车牌颜色边缘特征提取。针对干扰因素较多的复杂场景,可采用深度学习算法,比如ssd卷积神经网络等实现快速检测与定位。而本技术采用的是centernet目标检测方式。即采用 centernet resnet目标检测以及循环神经网络cnn共同实现智能车牌识别功能。
[0050]
进一步的方案,采用centernet网络结构实现车牌检测,具体流程描述如下:
[0051]
步骤一:选择resnet50作为目标检测网络,即对输入车辆图片进行50次卷积操作,实现特征提取;
[0052]
步骤二:通过反卷积模块,对上一步得到的特征图片进行三次上采样,得到增强后的特征图片;
[0053]
步骤三:将上一步的特征图片放入三个分支卷积网络,分别预测检测目标的热力图heatmap、目标的宽度与高度占比以及目标的中心点坐标,所得参数可用于车牌图片的截取。
[0054]
步骤四:采用仿射变换,在原图中实现检测目标的裁剪和缩放,用边框框出车牌位置,并显示位置比例。
[0055]
进一步的方案,通过centernet截取出的车牌图像数据集中存在车牌位置倾斜、照明不均匀、车牌不清晰等多种特殊情况,因此车牌图像的预处理显得尤为重要,甚至直接影响车牌字符的读取和字符识别的精度。本方案的车牌图片预处理的步骤描述如下:
[0056]
步骤一:采用直方图均衡化方法,增强车牌图片的对比度。因每张图片都是彩色的,包括bgr三个通道,不同通道都可能出现暗部细节不足或丢失的情况,因此可将车牌图片的直方图分布变成近似均匀分布,从而实现图像增强功能;
[0057]
步骤二:采用基于幂次变换的伽马校正实现图片的灰度处理,将输入图片的灰度值进行指数变换,从而拓展暗部细节,也便于加快运算速度;
[0058]
步骤三:检测灰度变换后的车牌图片是否存在倾斜,如存在,则采用霍夫变换检测车牌的边界形状,不断拟合车牌的边界线条,然后通过空间角度的调整,实现车牌图片的矫正;
[0059]
步骤四:通过统计边框像素出现的频率,对矫正后的车牌图片进行边缘去除。
[0060]
进一步的方案,车牌识别较为常用的手段是基于车牌字符的分割,但实际情况中车牌图片容易出现倾斜、污损、不清晰等情况,导致字符分割不准确或不完整,因此系统采用基于cnn卷积神经网络实现端到端的车牌字符识别。
[0061]
在卷积神经网络搭建前先明确输入与输出变量。由于预处理后的车牌图片大小不一致,此处将所有车牌图片统一缩放为宽240px,高 80px的标准图片,灰度处理后统一选择一维通道。假设训练集样本数量为n张车牌图片,则网络的输入层维度则为n*80*240*1。输出层要识别的车牌字符有7位,第一位为省份字符(共34个),后6位为除去“i”和“o”的字母及0-9数字的组合(共34个),由此可知网络的输出变量字对应离散的68个字符。
[0062]
构建cnn卷积神经网络模型,包含三个卷积图、1个扁平层、1 个全连接层。其中每个卷积图都包含两个卷积层(c)、1个池化层(s)和 1个丢弃层(d)。按顺位依次布置的第一卷积图、第二卷积图及第三卷积图。第一次卷积核大小为32,卷积形状为3*3,第二次为64,第三次为128,每次采用relu激活函数增强数据的拟合度,三次卷积图操作后实现重要特征的提取。展平层将三维数据信息展开成一维向量,随机丢弃30%后输入至全连接层。全连接层采用softmax函数输对应字符信息。
[0063]
具体参数函数选择如下:
[0064]
1.卷积图:第一个卷积图即最左边的卷积图中,c1的卷积核大小为32,卷积形状为3*3,c2的卷积形状为2*2,随机丢弃50%样本。第二个卷积图中,c3的卷积核大小为64,卷积形状为3*3,c4的卷积形状为2*2,随机丢弃50%样本;第三个卷积图中,c5的卷积核为128,卷积形状为3*3,c6的卷积形状为2*2,随机丢弃50%样本。卷积后采用relu非线性函数增强数据的拟合度。
[0065]
2.池化层:基于最大值原则,根据池化形状进行欠采样,有效降低特征维度,一般选择2*2的池化形状。
[0066]
3.全连接层:通过自适应矩估计(adaptice moment estimation:adma)激活函数实现公式yi=max{∑ixiw
i,j
+bi}中w、b参数的自适应调整,其中xi,yi分别是第i层神经网络的输入与输出,w
i,j
是第i层第j个节点的权重,bi是偏置参数。
[0067]
4.输出层:将全连接层得到的神经元分类结果输入softmax函数,并映射至(0,1)区间内。模型训练期间以交叉熵为损失函数,不断监控损失最小值,由此判断字符匹配的概率。
[0068]
在一个具体的实施场景中,以公开的某城市停车数据集(chinesecity parking dataset,ccpd)为基础,随机选取了6000张车辆图片,包含了不同天气、不同光照角度、不同车辆位置以及倾斜和模糊的车辆样本。实验选取4000张作为训练集进行模型的训练与优化,2000 张作为测试集进行结果验证。
[0069]
将所有车辆图片经过centernet网络进行车牌检测与截取后,进行对比度增强、灰度处理、倾斜校正以及去边缘化等预处理操作,并获取处理过后的图像通道信息转换为tensor变量传入cnn网络。模型编译时选择adam自适应优化器,以交叉熵作为监控损失值,
在训练过程中保存损失值最小的模型参数,便于测试样本的验证。实验中epoch 设为200,训练时最小损失值为0.0315,模型的识别准确率达到94.7%。测试结果显示,该系统能有效辨别不同场景下车牌信息,且平均识别准确率高。
[0070]
请参阅图2为本发明实施例提供的电子设备的实施例示意图。如图2所示,本发明实施例提了一种电子设备,包括存储器1310、处理器1320 及存储在存储器1310上并可在处理器1320上运行的计算机程序1311,处理器1320执行计算机程序1311时实现以下步骤:s1,获取原始车辆图片,采用centernet对原始车辆图片进行车牌的目标位置的定位、检测与保存;
[0071]
s2,提取车牌兴趣区域图像,输入已训练好的车牌识别模型中,判断车牌是否遮挡不清,若正常,则进一步提取车牌图片,若不正常,则提示报警;
[0072]
s3,对车牌图片进行预处理得到车牌图像信息;
[0073]
s4,将处理后的车牌字符传入卷积神经网络进行模型的训练与优化,最终预测得到车牌识别结果。
[0074]
请参阅图3为本发明提供的一种计算机可读存储介质的实施例示意图。如图3所示,本实施例提供了一种计算机可读存储介质1400,其上存储有计算机程序1411,该计算机程序1411被处理器执行时实现如下步骤:s1,获取原始车辆图片,采用centernet对原始车辆图片进行车牌的目标位置的定位、检测与保存;
[0075]
s2,提取车牌兴趣区域图像,输入已训练好的车牌识别模型中,判断车牌是否遮挡不清,若正常,则进一步提取车牌图片,若不正常,则提示报警;
[0076]
s3,对车牌图片进行预处理得到车牌图像信息;
[0077]
s4,将处理后的车牌字符传入卷积神经网络进行模型的训练与优化,最终预测得到车牌识别结果。
[0078]
实施例2
[0079]
与实施例1相比,不同之处仅在于,还包括s5,获取原始车辆图片和车牌图像信息,然后去除原始车辆图片和车牌图像信息重叠部分得到含有空白部分的背景图像信息,将背景图像信息进行灰度化和二值化处理,以空白部分的中轴线为起始线,分别向垂直于起始线左右两侧分别寻找轴对称图形,若轴对称图形的面积数值大于预设值,则表征车牌图像信息是在车辆上;若轴对称图形的面积小于预设值,则再次获取原始车辆图片和环境声音信息,并且对原始车辆图片进行灰度化和二值化处理,然后判断在空白部分的两侧是否存在强光点,然后确认是否采集到超过预设阈值的环境声音信息,若同时存在强光点和环境声音信息,则进行记录,表征车牌图像信息是在车辆上,若否,则生成警示信息。
[0080]
本实施例主要是针对部分人员在使用时,可能是采用打印他人车牌,或者是用手机拍摄了他人车牌后,将打印纸或者显示有车牌的手机屏幕向门禁处预设的摄像头进行展示的情况。在上述情况下,如果没有任何防御措施,不对原始车辆图片进行可信度判断,则容易导致误识别的情况(识别是准确的,但是不是使用者的车辆,而是其提供的错误信息)。
[0081]
针对上述情况,本实施例对去除原始车辆图片和车牌图像信息重叠部分得到含有空白部分的背景图像信息,将背景图像信息进行灰度化和二值化处理,以空白部分的中轴线为起始线,分别向垂直于起始线左右两侧分别寻找轴对称图形,若轴对称图形的面积数值大于预设值(本实施例中设定的是空白部分的面积),则表征车牌图像信息是在车辆上。
这是针对大多数车辆的车牌是位于车辆前面的中心位置,能够有效的排除打印或者手机进行欺骗展示的情况。
[0082]
当然在实际使用过程中,有部分车辆车牌不是安装在车辆的中间的(如,阿尔法罗密欧品牌的部分车型)。针对这种情况,如果前述步骤无法进行判断。则通过再次采集车辆此时是否进行闪灯或者按喇叭的方式进行主动提醒(车灯总在车牌的两侧)。车主通过闪灯或者按喇叭提醒,能够较好的提醒相关的管理人员,并且及时的进行记录,方便管理人员后续进行查询确认。如果上述情形都不存在,则表征确实有部分人员通过错误样本对车牌识别系统进行攻击,生成警示信息,以提醒相关的工作人员。
[0083]
需要说明的是,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
[0084]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0085]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0086]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0087]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0088]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0089]
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1