APP下载

基于AI深度学习的车辆识别智能管理系统

2022-03-07周华英

电子测试 2022年24期
关键词:车牌字符卷积

周华英

(烟台汽车工程职业学院,山东烟台,265500)

0 引言

早在20世纪90年代,基于视觉分析的车辆识别技术就已成为研究热点,诸多学者利用交通视频及图像数据通过视觉处理技术进行分析和识别,并取得了一定范围的实际应用。2012年卷积神经网络(CNN)技术在大型视觉识别挑战ImageNet比赛中以巨大优势取得冠军,现已广泛应用于图像分类、目标检测和自动驾驶等领域。目前针对车辆识别方法及应用系统的综述性研究还较少,因此本文重点研究基于深度学习方法进行车辆识别。

利用深度学习方法进行车辆识别目标是基于模拟人脑结构来设计神经网络模型,读取采集的数据进行模型训练,形成对图像由浅入深的抽象化表征,最终得到较高精度和准确性的车辆分析识别模型。当前流行的模型包括卷积神经网络(CNN)、深度置信网络(DBN)、循环神经网络(RNN)和生成对抗网络(GAN)等,其中CNN已在车辆识别的研究中得到了广泛应用。本系统基于采集的交通视频和图像进行智能分析,提取车牌、车型和颜色等信息,结合其他辅助系统获得车辆档案、注册地等信息,形成结构化的车辆信息,传输到智能交通大数据平台进行数据存储和分析挖掘,支撑智能交通系统的管理应用。

本系统基于深度神经网络模型构建初步的车辆检测和分类识别应用,并在交通领域实际使用过程收集数据反馈情况,支持模型定期训练升级及网络结构优化,生成适应交通领域需求的AI模型,形成车辆智能识别应用的可持续提升。

1 系统设计

系统模块包括车牌识别、车辆检测、颜色识别和车型识别等,本节从系统设计的角度进行阐述,分析其技术流程。

1.1 车牌识别方案

对采集的车辆视频或图像进行车牌定位、牌照颜色和字符识别,通过模式识别技术获得关键性信息,此外还包括车辆存在性识别模块,共同构成基础服务,对采集的图像进行处理,定位出车牌区域,分析识别牌照颜色和字符,最终按预设的格式进行输出,步骤如下:

1)区域定位,检测车牌存在性,定位车牌区域;2)字符分割,对车牌区域进行细化分析,分割出字符集合;3)模式识别,对车牌进行字符识别,获得号码字符串,同时对车牌颜色进行识别,判断车牌类型。

识别过程中,牌照颜色和字符识别需结合实际应用场景,将检测定位和分类识别等方法进行有效组合,建立校验机制来构建稳定的车牌识别服务。

1.1.1 区域定位

复杂多变的场景会面临背景复杂、光照不均和图像畸变等干扰,如何有效定位车牌区域就成为首要问题。一般情况下首先进行粗范围搜索,收集符合车牌区域特征的候选区域;然后对候选区域进行分析判断,按照车牌特点进行评分;最后对符合评分阈值的区域进行输出,并进行定位裁剪得到车牌的分割图像。

1.1.2 字符分割

车牌区域定位后得到区域图像,进行字符分割得到该区域的字符图像序列再进行识别输出。利用字符的竖直分布和字符间存在间隔的特点,投影后即可利用投影曲线的峰谷特点完成字符分割。根据车牌字符的排列特点,按照一定顺序进行字符图像组合,得到符合车牌字符格式的分割结果。

1.1.3 模式识别

字符分割后得到字符序列图像,利用识别方法进行车牌字符识别。常用的字符识别方法包括基于模板匹配和人工神经网络的识别方法。基于模板匹配是将字符图像进行二值化并建立与模板库相同的尺寸,通过匹配判断相似度距离,最终选择匹配度最高的字符进行输出;基于人工神经网络是通过提取字符图像特征或将图像统一尺寸后作为输入,基于隐藏层搭建网络并训练,借助特征提取能力来自动构建识别服务,最终输出识别标签,得到车牌字符。

识别率与拍摄条件、图像质量等因素相关,在实际应用中难免会受到车牌污损、雨雪遮挡和光照不均等情况干扰。一般需综合考虑采集条件及应用场景,从拍摄位置、光照补充和图像增强等角度综合进行优化,进而采集到更有利于识别的车辆图像。

1.2 车辆检测方案

车辆检测是判断车辆存在性及具体位置的关键模块,一般包括线圈触发、红外捕捉、雷达信号和视频抓拍等方式。视频抓拍检测直接采用非接触性的间距拍摄方式获得图像数据,不需要路面安装、附加设备、线圈和雷达安装等环节,更加适合实际中的车辆通行需求。

针对处理视频图像,需要处理较高分辨率、较大规模的图像数据,对检测速度和运行效率都具有较高要求。在保持图像不丢帧的情况下,尽可能达到实时图像的采集和处理。如果存在检测速度和效率瓶颈,则无法检测速度较快的车辆,带来信息丢失和误检,影响识别效率。因此车辆检测和车牌识别模块在算法和性能上均要求较高,是整个识别模块的关键。

1.3 车身颜色识别方案

提取车辆颜色对交通事件调查、目标车辆筛选及管制等起到辅助作用。但在抓拍过程中,难免会遇到拍摄环境和光照等因素干扰,带来车辆颜色失真,会影响到颜色属性识别。因此图像在生成或传输过程中会进行数字化处理,进行图像增强,消除噪声干扰,综合考虑不同噪声带来的影响,利用排序差值脉冲检测方法进行图像滤波增强,将目标图像在预设窗口内的颜色分量值进行排序并定位噪声点,利用改进的自适应矢量中值滤波来消除噪声干扰,达到较好的噪声消除效果。同时该处理过程采用滤波窗口的自适应调整方式来生成符合图像特点的滤波器,进而有选择地消除噪声干扰,尽可能还原出颜色分布情况。

1.4 车辆类型识别方案

类型识别目标是获取车辆种类、品牌等信息,采用CNN设计识别模型,在分析Inception V3预训练模型的基础上进行迁移学习,结合系统积累的车辆类别和样本图像进行模型编辑,消除原模型的全连接层并引入参数优化层,经Dropout和全局平均池化层后接入到实际的车辆类别信息,经样本图像数据集训练得到车型识别模型。经评测该模型与基于VGG-16、Xception和Resnet50的模型相比均具有较好的性能,最终达到训练精度超过96.48%、测试精度超过83.86%,因此可选择该模型提供类型识别服务。

2 实验环境

本文实验环境选择Keras2.X框架,基于Python编写,以Theano/Tensorflow为基础支撑,支持便捷的网络设计及训练评测的API,是进行深度学习实验开发的常用框架,对常用的数据处理和训练等核心任务进行了封装处理,使得用户能重点关注网络结构和参数调试,无需关注内部的实现细节,提高了研究和实验效率。此外还支持通过配置参数使得程序能选择在CPU和GPU上运行,考虑到本实验数据及应用情况,选择基于GPU,通过CUDA库和CUDNN加速器进行训练。实验环境采用了CUDA 10.X版本,cuDNN 7.6.X版本,Keras2.X版本和TensorFlow_gpu-2.X版本,训练环境采用GPU,测试和应用环境则兼容GPU和CPU的配置。

本实验基于Keras搭建神经网络模型,主要通过以下步骤搭建网络:模型设计、参数配置、数据加载、模型训练和模型评估。通过Keras提供的API可快速搭建网络模型并加载数据进行训练,能够以较低的成本进行模型编辑和完善,更快地验证算法思路的有效性。

3 数据处理

数据是模型训练和具备感知识别能力的基础。良好的标注数据是影响模型性能的重要因素,模型识别根据数据本身或某些特性作为依据,通过标注才能让模型获得数据对应关系,进而通过训练来调节模型权重参数,最终得到适合数据特点的模型并应用于目标感知识别。因此优秀算法模型需要一定规模的标注数据来进行训练,进而能建立模型的特征抽象能力,形成智能化的模型推理能力。

系统需给图像打上标签信息来对应车辆种类、车牌信息、车辆品牌和颜色等,对预先标注的图像样本集合进行训练学习后,即可产生具备识别能力,将车辆图像传给模型并获得识别结果,进而推断出当前车辆的相关信息。

系统引入正则化项及dropout机制,可有效地处理过拟合问题,提高模型的泛化能力。在训练过程中按设定概率摒弃部分网络神经元,降低了原网络的复杂度,缓解了模型训练中对计算资源及训练时间的要求,最终提高模型的鲁棒性,形成具备泛化能力的AI模型。

图1 使用Dropout的神经网络模型前后对比

训练模块对实时性要求不高,所以可进行离线训练,将训练模型导出为文件并迁移到线上环境,并建立数据反馈收集机制和周期化升级机制,推进AI模型的迭代升级。

4 模型训练

基于AI深度学习的车辆识别智能管理系统采用Inception网络训练分类识别模型,该网络具有更宽、更深的结构,在带来训练效果提升的同时也出现了包括梯度消失、过拟合等问题,通过引入1*1的卷积来进行维度更新,形成多尺寸窗口的卷积及聚合机制,最终促进训练效果的提升,并节省计算资源,能在相同计算资源投入下建立更广泛的特征抽象能力,得到更好的模型训练结果。

图2 线性卷积和NIN结构对比

线性卷积通过设定尺度上进行一次卷积的方式来训练,而NIN(即Network in Network)结构通过引入普通的3*3、1*1卷积的方式进行训练,这样能对像素点经1*1的卷积来执行全连接计算。NIN中无论3*3还是1*1卷积都紧跟非线性激活函数ReLu,提供非线性计算模块,通过卷积间的联系来组合出更为丰富的非线性特征。

经实验发现,设置超过1000的卷积核数目,可能会引起网络架构更深层残差单元异常而带来训练失败,使得训练过程中的GAP层激活值趋于0,无法通过调整学习率尺度和增加正则化层来进行规避。因此为了提高模型训练的性能,本实验通过设置0.1~0.3的比例来缩放残差激活值,构建具有更高鲁棒性的AI模型。

5 实验总结

基于AI深度学习的车辆识别智能管理系统采用的数据集包含2万余张车辆图像,存储空间约240MB。为了便于实验,创建了专用的数据集对象,按12000张训练、4000张测试和4000张验证的比例对数据集进行随机重排并拆分,用于模型的训练工作。

系统将训练后的模型进行封装,建立统一的车辆识别验证服务,采用预设的4000张验证集图像进行模型验证。为了降低深层卷积神经网络的计算消耗,对网络模型进行了优化,并通过模型训练确定了模型最佳参数,从而以较为轻量的网络结构取得了较高的车辆识别精度,使得优化后的AI模型对车辆的识别速度约提升52.4%,识别精度约提升33.1%。

猜你喜欢

车牌字符卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
字符代表几
一种USB接口字符液晶控制器设计
图片轻松变身ASCⅡ艺术画
数字图像处理技术在车牌识别系统中的应用
从滤波器理解卷积
HBM电子称与西门子S7-200系列PLC自由口通讯
基于傅里叶域卷积表示的目标跟踪算法
第一张车牌