关于车牌识别的工作原理和技术参数

  • 发布时间:2018-05-02 11:02:12,加入时间:2018年03月05日(距今2623天)
  • 地址:中国»北京»海淀:北京市海淀区北四环西路9号银谷大厦16层1609室
  • 公司:北京文通科技有限公司, 用户等级:普通会员 已认证
  • 联系:李硕,手机:18518250226 微信:dark_ss 电话:010-62800286 QQ:1936159209

综合网上上各种车牌识别方法,总结出一个较为简单的车牌识别方案,采用VS2013+OpenCv2.4.9实现。并且附上可运行的源代码以及测试图片和视频,详细参数设置请参照源代码。识别部分的训练样本见我上传的资源。 实现方法 (一) 检测车辆(基于混合高斯模型的背景差分法) 1. 读取视频(avi格式),选定目标区域框用于检测车辆 2. 检测车辆,基于混合高斯模型的背景差分法检测前景,经过腐蚀、膨胀后,若像素值大于200的像素点数大于80000且上一帧像素点数小于80000,则视为检测出车辆并保存改区域的图片 (二) 检测车牌区域(基于HSV颜色空间+形态学方法) 1. 车牌粗定位 (1) 改变图片尺寸(480′320)得到resizeimg (2) 转换为HSV空间,并在HSV空间直方图均衡化 (3) 在HSV空间检测蓝色区域,范围为()—(),得到blueimg (4) 对blueimg进行膨胀运算、开运算得到image1 (5) 对resizeimg灰度化 (6) 进行直方图均衡化 (7)中值滤波 (8)Canny算子边缘检测 (9)进行开运算、闭运算得到image2 (10)对HSV空间检测蓝色分量的image1和边缘检测得到的image2进行按位与得到andimage (11)对andimage进行膨胀运算 (12)寻找连通域 (13)圈出连通域所在的矩形区域并切割得到ROIimage 2. 车牌精确定位 (1)对ROIimage转换蓝色空间并均衡化 (2)检测蓝色区域,范围为()—() (3)框出非零点集所在的矩形区域并切割得到roimage (4)Canny算子检测roimage并利用hough变换进行水平倾斜校正得到houghimage (5)对houghimage进行灰度化、二值化(浙大张引二值化) (6)对二值化车牌水平方向统计黑白跳变次数 (7)从车牌中间向上下搜索,若跳变次数小于14,设定为上下边界并切割,得到jingqueimage (三) 车牌字符切割(投影法) 1.对对车牌进行垂直投影,求垂直方向投影平均值mean,设定投影特征值TZ=0.63′mean 2.先从第三个字符开始切割,选择车牌宽度的0.3倍处作为起始点,向右寻找大于TZ的点作为上升点,从上升点向左搜索投影值等于0的点作为字符起点,寻找上升点后下一个等于0的点作为终点,切割出该部分,对该部分扩充调整其宽高比为0.5,对其归一化16*32,二值化得到字符 3.第四个到第七个字符的切割方法与第三个字符相同 4. 切割第二个字符,选择车牌宽度的0.35处作为起始点,向左寻找大于特征值的点作为上升点,从上升点向左搜索投影值等于0的点作为字符起点,寻找上升点左边下一个等于0的点作为终点,切割出该部分,对该部分扩充调整其宽高比为0.5,对其归一化16′32,二值化得到字符 5. 切割第一个字符,切割方法同第二个字符。求后六个字符的宽度平均值,若切割出字符宽度小于平均值的0.8倍,则重新寻找下一个为零的波谷作为终点,切割出该部分。对该部分扩充调整其宽高比为0.5,对其归一化16′32,二值化得到字符 (四) 车牌识别(BP神经网络) 1. 汉字识别 (1)网络层数:输入层:560 隐含层:132 输出层:31 (2)激活函数:Sigmoid函数 (3)神经网络的训练参数: a) 迭代次数:10000 b)误差最小值:0.001 c) 权值更新率:0.07 d) 权值更新冲量:0.07 (4)输入样本: a) 特征提取:512个像素点+32个水平投影值+16个竖直投影值共560维 b) 训练样本数:所有省份样本共1195个 (5输出结果:输出层共31个,如“京”:0.9,,0.1……0.1,选取输出的31个值的的值为识别结果 (6对汉字识别:提取特征并进行预测,输出省份 2.字母识别 (1)网络层数:输入层:560 隐含层:117 输出层:24 (2)激活函数:Sigmoid函数 (3)神经网络的训练参数: a)迭代次数:30000 b)误差最小值:0.001 c)权值更新率:0.07 d) 权值更新冲量:0.07 (4)输入样本: a)特征提取:512个像素点+32个水平投影值+16个竖直投影值共560维 b)训练样本数:所有省份样本共1200个 (5)输出结果:输出层共24个,如“A”:0.9,,0.1……0.1,选取输出的24个值的的值为识别结果 (6) 对字母识别:提取特征并进行预测,输出字母 3. 字母和数字识别 (1)网络层数:输入层:560 隐含层:139 输出层:34 (2)激活函数:Sigmoid函数 (3)神经网络的训练参数: a) 迭代次数:30000 b) 误差最小值:0.001 c) 权值更新率:0.06 d) 权值更新冲量:0.06 (4)输入样本: a特征提取:512个像素点+32个水平投影值+16个竖直投影值共560维 b训练样本数:所有省份样本共5100个 (5)输出结果:输出层共34个,如“A”:0.9,,0.1……0.1,选取输出的34个值的的值为识别结果 (6)对字母和数字识别:提取特征并进行预测,输出字母 总结 采用基于视频检测的车牌识别系统,测试的场合是小区门禁处静止摄像机,实现对行驶的车辆进行车牌识别。从功能划分可以分为三块,车辆的视频检测、车牌的定位和车牌字符的分割与识别。 由于交通场景的复杂性和多样性,本设计有许多值得进一步研究的地方,主要有以下几个方面: 1. 本设计的计算速度较慢,尚未能满足实时性的要求。 2. 在车牌定位模块,对于截取图片中的车辆的距离有一定要求,车辆占比区域太大会造成车牌定位不准的情况。 3. 在字符分割模块,基于大多车牌字符都没有粘连,本设计采用的投影法。对于字符粘连的车牌会出现分割错误。 4. 在字符识别模块,由于汉字神经网络样本不足和特征提取不太理想,造成汉字识别率较低。

联系我时请说明来自志趣网,谢谢!

免责申明:志趣网所展示的信息由用户自行提供,其真实性、合法性、准确性由信息发布人负责。使用本网站的所有用户须接受并遵守法律法规。志趣网不提供任何保证,并不承担任何法律责任。 志趣网建议您交易小心谨慎。