【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)

2021-06-21 11:59:39      索炜达电子      1569     

文件编号:B186

文件大小:11M

开发环境:Matlab2020

猿创承诺:该项目亲测正常运行,需远程调试部署需另外收费,确保正常使用,不能正常使用全额退款。

简要概述:Matlab实现车牌识别(蓝色车牌新能源车牌)

1、在进行图像处理任务之前,首先要明确处理对象和处理流程

处理对象: 新能源车牌和蓝色车牌

处理流程:

【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)

2、由于要对蓝色和新能源车牌进行识别,而且新能源车牌是渐变色,所以直接通过设定阈值的方法去识别两种车牌并没有单独识别蓝色车牌的可靠性高。这里,我根据车牌字符的特征进行车牌位置定位:

i.根据字符特征初步找出车牌位置

可以看到,到这里已经找出了车牌的大致区域,但是还存在许许多多的干扰区域。

ii.根据车牌长宽比进行初步筛选

我们可以用最小外接矩形算法框出上一步已选出的区域,然后根据车牌长宽比设定阈值,将满足阈值的矩形筛选出来,当然但还是会存在一部分干扰区域。

(matlab实现最小外接矩形算法的链接如下)

iii.对矩形内像素进行颜色统计

通过对初步筛选后剩余区域分别进行像素的颜色统计,我们即可准确找出车牌位置,与此同时车牌的类型(新能源或蓝牌)也可以在这里判断出来

3、倾斜校正

这一步是为后面垂直投影法分割字符和模板匹配做准备

简单来讲,使用霍夫线算法检测车牌上下边框所在直线,计算这条直线倾斜角度,之后对车牌进行旋转即可。当然复杂点的方法可以具体看我的源程序,具体效果如下图:

【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)

4、二值化、形态学处理、字符识别

i.二值化和形态学处理这里就不在赘述,很多博客已经讲的非常清晰

ii.字符分割

在这里需要对字符进行准确的分割,在分割之前还是可能会有干扰,需要再次分割出车牌字符的准确位置。这里我的方法是:先向左投影,设定阈值,切割出上下边界,同理在切割出左右边界。但是这只适用于车牌边框明显的情况下,所以我不建议你使用这个方法,慎用!!!

【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)

到这里就可以使用垂直投影法进行字符分割,这里需要注意的是新能源车牌有八位,蓝牌有七位

分割结果如下图所示:

【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)

iii.字符识别

这里使用模板匹配,因为新能源车牌字符和蓝牌字符不一致,所以要制作两套字符模板。另外需要注意的是,根据《中华人民共和国机动车号牌》序号编码规则,26个英文字符中“I“、”O“不能使用,所以不存在"1"和"I"、"0"和"O"字符混淆的问题

5、最后将结果输出即可

【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)

按需写作:

【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)

演示视频:

【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)

点击查看:系统演示视频

运行效果:

【B186】Matlab实现车牌识别(蓝色车牌和新能源车牌)


远程协助:

温馨提示:索炜达.猿创官方提供收费远程协助,确保您项目运行成功。

点击查看:远程协助相关事项

我们提供完整项目文件清单如下:

文件目录

 ├ 1.项目源码

 ├ 2.运行截图

 └ 3.演示视频

TAG蓝色车牌新能源车牌
  • 3 次
  • 150 分