www.gusucode.com > 图像识别 人脸识别和虹膜识别 > code7/gabor_all.m
% 批量计算Gabor编码,并保存在recd中 % 相关文件:mygabor.m,gabor_encode.m,get_all_gaborcoef.m,gabor_eer.m function [recd, result2, frr, far]= gabor_all(); gabor = get_all_gaborcoef(); tic; n=1; for i=0:59 for j=0:19 % if (n<=600)%只试验前600幅图 if (i<=9&j<=9) name = strcat('000',int2str(i) ,'_00' ,int2str(j),'.bmp'); code = gabor_encode(name,gabor); %recd(1,n) = {name}; recd(i+1,j+1) = {code}; n=n+1; elseif (i<=9&j>=10) name = strcat('000',int2str(i) ,'_0' ,int2str(j) ,'.bmp'); code = gabor_encode(name,gabor); %recd(1,n) = {name}; recd(i+1,j+1) = {code}; n=n+1; elseif (i>=10&j<=9) name = strcat('00',int2str(i) ,'_00' ,int2str(j) ,'.bmp'); code = gabor_encode(name,gabor); %recd(1,n) = {name}; recd(i+1,j+1) = {code}; n=n+1; elseif (i>=10&j>=10) name = strcat('00',int2str(i) ,'_0' ,int2str(j) ,'.bmp'); code = gabor_encode(name,gabor); %recd(1,n) = {name}; recd(i+1,j+1) = {code}; n=n+1; end % end end end average_encode_time = toc/1200 %---------------------------------------------- %hamming for j=1:60 %第j人 for i=j:60 for k=1:20 %第k图 for l=k:20 template = recd{j,k}; %第j人,第k图 putin = recd{i,l}; %第i人,第l图 result(k,l)=mean(xor(template,putin)); %Hamming distance % result(k,l) = mean2(abs(template - putin)); %Manhatten distance % [mm nn] = size(putin); % result(k,l) = sqrt(sum(sum((template - putin).^2)))/(mm*nn); %Euclidian distance end end result2{j,i}=result; end end %-------------------------------------------- %eer thr=0:0.01:1; numthr = numel(thr); for t=1:numthr; thrd=thr(t); [frr(t),far(t)]=gabor_eer(thrd,result2); end plot(thr,frr,thr,far) figure;plot(far,frr) ee=0:0.01:1;hold on;plot(ee,ee)