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

📄 example1tr.m

📁 基于神经网络的字母识别系统基于神经网络的字母识别系统
💻 M
字号:
%Example1Tr
M=1;%人数
N=26*M;%样本数
%获取26个大写字母图像的数据
for kk=0:N-1
    p1=ones(16,16);%初始化16*16的二值图像(全白)
    m=strcat(int2str(kk),'.bmp');%形成文件名
    x=imread(m,'bmp');%读取图像
    bw=im2bw(x,0.5);%转换成二值图像数据
    %用矩形框截取
    [i,j]=find(bw==0);%查找像素为黑的坐标
    %取边界坐标
    imin=min(i);
    imax=max(i);
    jmin=min(j);
    jmax=max(j);
    bw1=bw(imin:imax,jmin:jmax);%截取
    %调整比例,缩放成16*16的图像
    rate=16/max(size(bw1));
    bw1=imresize(bw1,rate);%会存在转换误差
    %将bw1转换成标准的16*16图像p1
    [i,j]=size(bw1);
    i1=round((16-i)/2);
    j1=round((16-j)/2);
    p1(i1+1:i1+i,j1+1:j1+j)=bw1;
    p1=-1.*p1+ones(16,16);
    %将p1转换成输入向量
    for m=0:15
        p(m*16+1:(m+1)*16,kk+1)=p1(1:16,m+1);
    end
end
%形成目标向量
for kk=0:M-1
    for ii=0:25
       t(kk+ii+1)=ii;
    end
end
%设置输入向量范围
pr(1:256,1)=0;
pr(1:256,2)=1;
%创建两层BP神经网络,隐层有25个节点
net=newff(pr,[25 1],{'logsig' 'purelin'},'traingdx','learngdm');
net.trainParam.epochs=2500;
net.trainParam.goal=0.001;
net.trainParam.show=10;
net.trainParam.lr=0.05;
%训练神经网络
net=train(net,p,t);
%存储训练好的神经网络

⌨️ 快捷键说明

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