基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]

今天就来谈一谈关注度比较高的车牌识别吧.

1 车牌识别的步骤

  1. 车牌定位
  2. 车牌分割
  3. 字符识别
    正如上面所讲,车牌识别主要分为3个部分,其中第一部分车牌定位,一般采用颜色定位,特征定位等,这方面一堆资料我就不写了.分割一般采用投影法.识别的话方法就比较多了,有模板匹配,bp神经网络,卷积神经网络等.

2 一个简单的例子

先读取车牌图片


 [uuu,vvv]=uigetfile({'*.jpg;*.tif;*.png;*.gif;*.BMP;*.JPEG','All Image Files'} ,'MultiSelect', 'on');%获取一张车牌照片
path=strcat(vvv,uuu);%拼接图片路径
img_rgb=imread(path);
imshow(img_rgb);title('原图');

基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]_第1张图片

%% 开始二值化处理


figure1=figure(1);subplot(231);imshow(img_rgb);title('原图');
subplot(232);imshow(img_rgb);title('二值化后的图 ")

基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]_第2张图片
调用rot_angle子函数,计算图像需要旋转的最佳角度要旋转的最佳角度,返回 后旋转图像.


Angle=rot_angle(s_b,6,-6,1)
if Angle~=0
    s_bw1=imrotate(s_bw1,Angle,'nearest','crop');
end 

%% % 调用字符分割函数分割处理好的车牌


devide_word=devide_word(plate);

基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]_第3张图片

%% %调用训练好的cnn网络识别车牌


resault=recognize(plate_word)

基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]_第4张图片

上面大体是,车牌识别的大概步骤,
识别采用卷积神经网络识别,效果最好.训练网络时样本数一定要大,
我的样本数大概是800多,

基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]_第5张图片

别的例子,证明卷积神经网络的优越性.

基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]_第6张图片
基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]_第7张图片
基于matlab的车牌识别-模板匹配-BP神经网络-卷积神经网络[深度学习]_第8张图片
BP神经网络和模板匹配下次再写

联系方式 : 127-313-7084 (Q号) [请备注:csdn_车牌识别]

你可能感兴趣的:(车牌识别)