• 大小: 336KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-10
  • 语言: Matlab
  • 标签:

资源简介

基于概率神经网络的手写体数字识别,用MATLAB实现,代码详细

资源截图

代码片段和文件信息

% digital_rec.m  手写体数字的识别

%% 清理工作空间
clearclc
close all

%% 读取数据
disp(‘开始读取图片...‘);
I = getPicData();
% load I
disp(‘图片读取完毕‘)

%% 特征提取
x0 = zeros(14 1000);
disp(‘开始特征提取...‘)
for i=1:1000
    % 先进行中值滤波
    tmp = medfilt2(I(::i)[33]);
    
    % 得到特征向量
    t= getFeature(tmp);
    x0(:i) = t(:);
end

% 标签 label 为长度为1000的列向量
label = 1:10;
label = repmat(label1001);
label = label(:);
disp(‘特征提取完毕‘)

%% 神经网络模型的建立
tic
spread = .1;
% 归一化
[x se] = mapminmax(x0);
% 创建概率神经网络
net = newpnn(x ind2vec(label‘));
ti = toc;
fprintf(‘建立网络模型共耗时 %f sec\n‘ ti);

%% 测试
% 输入原数据样本进行测试
lab0 = net(x);
% 将向量化的类别lab0转化为标量类别lab
lab = vec2ind(lab0);
% 计算正确率
rate = sum(label == lab‘) / length(label);
fprintf(‘训练样本的测试正确率为\n  %d%%\n‘ round(rate*100));

%% 带噪声的图片测试
I1 = I;
% 椒盐噪声的强度
nois = 0.2;
fea0 = zeros(14 1000);
for i=1:1000
    tmp(::i) = I1(::i);
    % 添加噪声
    tmpn(::i) =  imnoise(double(tmp(::i))‘salt & pepper‘ nois);
%     tmpn(::i) =  imnoise(double(tmp(::i))‘gaussian‘0 0.1);
    % 中值滤波
    tmpt = medfilt2(tmpn(::i)[33]);
    % 提取特征向量
    t = getFeature(tmpt);
    fea0(:i) = t(:);
end

% 归一化
fea = mapminmax(‘apply‘fea0 se);
% 测试
tlab0 = net(fea);
tlab = vec2ind(tlab0);

% 计算噪声干扰下的正确率
rat = sum(tlab‘ == label) / length(tlab);
fprintf(‘带噪声的训练样本测试正确率为\n  %d%%\n‘ round(rat*100));

web -broswer http://www.ilovematlab.cn/forum-222-1.html

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-12-05 21:27  基于概率神经网络的手写体数字识别\
     目录           0  2014-12-05 21:27  基于概率神经网络的手写体数字识别\digital_pic\
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_001.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_002.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_003.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_004.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_005.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_006.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_007.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_008.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_009.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_010.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_011.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_012.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_013.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_014.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_015.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_016.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_017.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_018.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_019.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_020.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_021.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_022.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_023.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_024.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_025.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_026.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_027.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_028.bmp
     文件         574  2012-10-25 11:47  基于概率神经网络的手写体数字识别\digital_pic\0_029.bmp
............此处省略975个文件信息

评论

共有 条评论