m基于GRNN广义回顾神经网络的车牌字符分割和识别算法matlab仿真

目录

1.算法仿真效果

2.MATLAB核心程序

3.算法涉及理论知识概要

4.完整MATLAB


1.算法仿真效果

matlab2022a仿真结果如下:

2.MATLAB核心程序

....................................................
for ii = 11

if ii == 1
   load stepB1.mat
end
if ii == 2
   load stepB2.mat
end
if ii == 3
   load stepB3.mat
end
if ii == 4
   load stepB4.mat
end
if ii == 5
   load stepB5.mat
end
if ii == 6
   load stepB6.mat
end
if ii == 7
   load stepB7.mat
end
if ii == 8
   load stepB8.mat
end
if ii == 9
   load stepB9.mat
end
if ii == 10
   load stepB10.mat
end
if ii == 11
   load stepB11.mat
end
if ii == 12
   load stepB12.mat
end
if ii == 13
   load stepB13.mat
end
if ii == 14
   load stepB14.mat
end
if ii == 15
   load stepB15.mat
end
if ii == 16
   load stepB16.mat
end
if ii == 17
   load stepB17.mat
end
if ii == 18
   load stepB18.mat
end
if ii == 19
   load stepB19.mat
end
if ii == 20
   load stepB20.mat
end
if ii == 21
   load stepB21.mat
end
if ii == 22
   load stepB22.mat
end


word1=imresize(tmps{1},[40 20]);
word2=imresize(tmps{2},[40 20]);
word3=imresize(tmps{3},[40 20]);
word4=imresize(tmps{4},[40 20]);
word5=imresize(tmps{5},[40 20]);
word6=imresize(tmps{6},[40 20]);
word7=imresize(tmps{7},[40 20]);

%第1个
words   = word1;
wordss  = func_yuchuli(words);
wordsss = sim(net,wordss');
[V,I]   = max(wordsss);
d       = I;
y{1}    = func_check(d);

%第2个
words   = word2;
wordss  = func_yuchuli(words);
wordsss = sim(net,wordss');
[V,I]   = max(wordsss);
d       = I;
y{2}    = func_check(d);
%第3个
words   = word3;
wordss  = func_yuchuli(words);
wordsss = sim(net,wordss');
[V,I]   = max(wordsss);
d       = I;
y{3}    = func_check(d);
%第4个
words   = word4;
wordss  = func_yuchuli(words);
wordsss = sim(net,wordss');
[V,I]   = max(wordsss);
d       = I;
y{4}    = func_check(d);
%第5个
words   = word5;
wordss  = func_yuchuli(words);
wordsss = sim(net,wordss');
[V,I]   = max(wordsss);
d       = I;
y{5}    = func_check(d);
%第6个
words   = word6;
wordss  = func_yuchuli(words);
wordsss = sim(net,wordss');
[V,I]   = max(wordsss);
d       = I;
y{6}    = func_check(d);
%第7个
words   = word7;
wordss  = func_yuchuli(words);
wordsss = sim(net,wordss');
[V,I]   = max(wordsss);
d       = I;
y{7}    = func_check(d);


figure(1);
subplot(241);imshow(word1);title(num2str(y{1}));
subplot(242);imshow(word2);title(num2str(y{2}));
subplot(243);imshow(word3);title(num2str(y{3}));
subplot(244);imshow(word4);title(num2str(y{4}));
subplot(245);imshow(word5);title(num2str(y{5}));
subplot(246);imshow(word6);title(num2str(y{6}));
subplot(247);imshow(word7);title(num2str(y{7}));

pause(2);
 
end
10_050_m

3.算法涉及理论知识概要

        车牌识别系统(Vehicle License Plate Recognition,VLPR) 是计算机视频图像识别技术在车辆牌照识别中的一种应用。车牌识别在高速公路车辆管理中得到广泛应用,电子收费(ETC)系统中,也是结合DSRC技术识别车辆身份的主要手段。

       车牌识别技术要求能够将运动中的汽车牌照从复杂背景中提取并识别出来,通过车牌提取、图像预处理、特征提取、车牌字符识别等技术,识别车辆牌号、颜色等信息,最新的技术水平为字母和数字的识别率可达到99.7%,汉字的识别率可达到99%。在停车场管理中,车牌识别技术也是识别车辆身份的主要手段。在深圳市公安局建设的《停车库(场)车辆图像和号牌信息采集与传输系统技术要求》中,车牌识别技术成为车辆身份识别的主要手段。

       车牌识别技术结合电子不停车收费系统(ETC)识别车辆,过往车辆通过道口时无须停车,即能够实现车辆身份自动识别、自动收费。在车场管理中,为提高出入口车辆通行效率,车牌识别针对无需收停车费的车辆(如月卡车、内部免费通行车辆),建设无人值守的快速通道,免取卡、不停车的出入体验,正改变出入停车场的管理模式。

       随着交通现代化的发展要求,汽车牌照自动识别技术已经越来越受到人们的重视。车牌自动识别技术中车牌定位、字符切割、字符识别及后期处理是其关键技术。由于受到运算速度及内存大小的限制,以往的车牌识别大都是基于灰度图象处理的识别技术。其中首先要求正确可靠地检出车牌区域,为此提出了许多方法,如Hough变换以检测直线来提取车牌边界区域、使用灰度分割及区域生长进行区域分割,或使用纹理特征分析技术等。Hough变换方法对车牌区域变形或图象被污损时失效的可能性会大大增加,而灰度分割则比直线检测的方法要稳定,但当图象在有许多与车牌的灰度非常相似的区域时,该方法也就无能为力了。纹理分析在遇到类似车牌纹理特征的其他干扰时,车牌定位正确率也会受到影响。本文提出基于车牌彩色信息的彩色分割方法。

       GRNN通常被用来进行函数逼近。它具有一个径向基隐含层和一个特殊的线性层。第一层和第二层的神经元数目都与输入的样本向量对的数目相等。GRNN结构如图1所示,整个网络包括四层神经元:输入层、模式层、求和层与输出层。

      输入层的神经元数目与学习样本中输入向量的维数m相等,每个神经元都是一个简单的分布单元,这些神经元直接将输入变量传递到隐含层中。

        模式层的神经元数目即为学习样本的数目n,每个神经元都分别对应一个不同的学习样本,模式层中第i个神经元的传递函数为:

        求和层中包含了两种类型的神经元,其中一种神经元对所有模式层神经元的输出进行算术求和,模式层中各个神经元与该神经元的连接权值为1,传递函数为: 

 

       其他神经元对所有模式层神经元的输出进行加权求和,模式层中第i个神经元与求和层中第j个神经元之间的连接权值为第i个输出样本 中的第j个元素 ,求和层中神经元的传递函数为:

        输出层中的神经元数目等于学习样本中输出向量的维数k,各个神经元的输出由求和层中的两种不同类型的神经元输出相除得到,即: 

 

4.完整MATLAB

V

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我爱C编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值