程序:
%数字0-9的标准点阵 zero=load('zero.txt'); one=load('one.txt'); two=load('two.txt'); three=load('three.txt'); four=load('four.txt'); five=load('five.txt'); six=load('six.txt');
seven=load('seven.txt'); eight=load('eight.txt'); nine=load('nine.txt');
%训练样本(目标向量)
T=[zero(:),one(:),two(:),three(:),four(:),five(:),six(:),seven(:),eight(:),nine(:)]; %输出数字0-9 figure for ii=0:9,
subplot(2,5,ii+1);
imshow(reshape(T(:,ii+1),10,10)); title([' 当前数字:' num2str(ii)]) end
%数字带噪声数字点阵(固定法) noise_matrix=load('noise_matrix.txt'); %数字带噪声数字点阵(随机法) %noise_matrix=zero; %for i=1:100 % a=rand; % if a<0.1
% noise_matrix(i)=-zero(i); %end %end figure
subplot(2,3,1)
imshow(noise_matrix); title('带噪声的样本');
%关于hopfield网络的创建和仿真,参数形式参见Matlab的帮助 net=newhop(T);%创建hopfield网络,根据标准样本开始训练学习
No22=sim(net,{1,5},{},{noise_matrix(:)});%仿真5次,只有一个样本noise_matrix for ii=1:5
subplot(2,3,1+ii)
imshow(reshape(No22{ii},10,10));