for i=1:209
Similarity(i,i)=0; end
ninty=zeros(1,209); nintyfive=zeros(1,209); eightyfive=zeros(1,209);
for i=1:209 countN=0; countF=0; for m=1:209
if Similarity(i,m)>0.9 countN=countN+1;
elseif Similarity(i,m)>0.95 countF=countF+1; end end
ninty(i)=countN; nintyfive(i)=countF; end
for i=1:209 countF=0; for m=1:209
if Similarity(i,m)>=0.95 countF=countF+1; end end
nintyfive(i)=countF; end
for i=1:209 countF=0; for m=1:209
if Similarity(i,m)<=0.9&&Similarity(i,m)>=0.85 countF=countF+1; end
34
end
eightyfive(i)=countF; end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%第二问英文%%%%%%%%%%%%%%%%%
for i=1:208
str= strcat('C:\\Users\\Aero Fantasia\\Desktop\\Competition\\B1\\T4\\',fullname(i), '.bmp');
b{i}= imread (str); end
a{1}=imread('C:\\Users\\Aero Fantasia\\Desktop\\Competition\\B1\\T4\\000.bmp'); for i=1:208
a{i+1}=b{i}; end
%边缘矩阵
Left=zeros(180,209); Right=zeros(180,209);
for i=1:208
Left(:,i)=a{i}(:,1);
Right(:,i)=a{i}(:,length(a{1}(1,:))); end
%边缘二值化 for i=1:209 for m=1:180
if Left(m,i)==255 Left(m,i)=0; else
Left(m,i)=1; end
if Right(m,i)==255 Right(m,i)=0; else
Right(m,i)=1; end end end
%匹配度矩阵
PercentR2L=zeros(209,209);
35
for i=1:209 for m=1:209
PercentR2L(i,m)=SingleCompareCom(Right(:,i),Left(:,m)); end end
for i=1:209
PercentR2L(i,i)=0; end
PercentCopy=PercentR2L;
Army=1; Path=[];
flag=zeros(1,209); for i=1:300 Num=1;
if sum(PercentR2L(i,:))~=0 Root=i;
Path(Army,Num)=Root; for m=1:18
[result,index]=max(PercentR2L(Root,:)); Path(Army,Num+1)=index; Num=Num+1;
flag(1,Root)=1; flag(1,index)=1;
PercentR2L(Root,:)=0; PercentR2L(:,Root)=0; Root=index; end
PercentR2L(index,:)=0; PercentR2L(:,index)=0; Army=Army+1; end
if sum(flag(:))==209 break; end end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
36