⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chenxianghua.m

📁 这是一个用matlab实现的RBF神经网络手写数字识别算法.此算法加入相应的手写数字图后可以运行.
💻 M
字号:
%主程序
%可以打开记事本result.txt查看网络训练的日期和时间:
%样本数据的输入
clear;
file=fopen('result.txt','a+');
fprintf(file,'\n手写体数字识别(RBF神经网络:)%s', datestr(date));
i=0;
  for j=0:9
    array=[0;0;0;0;0;0;0;0;0;0];
    array(j+1,1)=1;
    str1=int2str(j);
    for k=0:2
        str2=int2str(k);
        for l=0:9
          str3=int2str(l);
          fnamestr=strcat('s',str1,'0',str2,str3,'.bmp');
          fname=imread(fnamestr);
          fname2bw=im2bw(fname);
          %[row,col]=size(fname2bw)
          inputvector=getfeature(fname2bw);
          P(:,i+1)=inputvector;
          T(:,i+1)=array;
          i=i+1;
      end
    end
  end
  %用输入的样本对网络进行训练
begintime=clock;
net=newrb(P,T);
%输入测试数据并进行仿真
str1='5';
ceshituname=imread('s5025.bmp');
ceshitu2bw=im2bw(ceshituname);
ceshituvector=getfeature(ceshitu2bw);
a=sim(net,ceshituvector);
ceshitu=find(compet(a)==1);
ceshitu=ceshitu-1;
ceshitu=int2str(ceshitu);
if ceshitu==str1
    figure(1);
    imshow(ceshituname);
   ceshitunamestr=strcat(ceshitu,'.bmp');
     figure(2);
     imshow(ceshitunamestr);
 end
     
right=0;
wrong=0;
test=0;
  for j=0:9
    str1=int2str(j);
    for k=2:3
        str2=int2str(k);
        for l=0:9
          str3=int2str(l);
          testfnamestr=strcat('s',str1,'0',str2,str3,'.bmp');
          testfname=imread(testfnamestr);
          testfname2bw=im2bw(testfname);
          testinvector=getfeature(testfname2bw);
          v=sim(net,testinvector);
          position=find(compet(v)==1);
          position=position-1;
          position=int2str(position);
          if position==str1
             right=right+1;
          else 
             wrong=wrong+1;
          end
          test=test+1;
        end
    end
end
hold off;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -