📄 e5_2_2.m
字号:
%Examp1e52 Sim
clear all
clc;
p(1:256,1)=1;
p1=ones(16,16);%初始化16.16的二值图像像素值(全白)
load E52net net;%加载训练后的BP网络
test=input('p1ease input s test image;','s');%提示输入测试样本图像文件名
x=imread(test,'bmp');%读入测试样本图像
bw=im2bw(x,0.5);%将读入的训练样本图像转换为二值图像
[i,j]=find(bw==0);%寻找二值图像中像素值为。的行号和列号
imin=min(i);%寻找二值图像中像素值为。的最小行号
imax=max(i);%寻找二值图像中像素值为0的最大行号
jmin=min(j);%寻找二值图像中像素值为。的最小列号
jmax=max(j);%寻找二值图像中像素值为0的最大列号
bw1=bw(imin:imax,jmin:jmax);%截取图像像素值为0的最大矩形区域
rate=16/max(size(bw1));%计算转换为16.16的二值图像的缩放比例
bw1=imresize(bw1,rate);%将截取图像转换为16 x 16的二值图像
[i,j]=size(bw1);%转换图像的大小
i1=round((16-i)/2);%计算转换图像的宽度与16的差距
j1=round((16-j)/2);%计算转换图像的高度与16的差距
p1(i1+1:i1+i,j1+1:j1+j)=bw1;%将截取图像转换为标准的16.16的图像
p1=-1.*p1+ones(16,16);%反色处理
for m =0:15
p(m*16+1:(m+1)*16,1)=p1(1:16,m+1);%形成铡试样本输入向量
end
[a,Pf,Af]=sim(net,p);%网络仿真
imshow(p1);%显示铡试样本图像
a=round(a)%输出识别结果
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -