www.pudn.com > work1.rar > ari1.m


clc; 
clear; 
u=imread('tank_pyr.bmp'); 
f=imresize(u,[128,128]); 
N1(:,:,1)=f; 
N1(:,:,2)=f; 
N1(:,:,3)=f; 
f1=rgb2lab(N1);   
sf=f1(:,:,1);   %目标图像的l分量 
subplot(3,5,1);imshow(f);title('目标灰度图') 
 
%连续读取彩色图像,图像后缀名都是jpg 
fnlist=dir('*.jpg'); 
fnum=size(fnlist); 
for i=1:fnum 
    I=imread(fnlist(i).name); 
    I1=rgb2lab(I); %将读取的彩色图像转换到lab空间 
    sl=I1(:,:,1); %取源图像(读取的彩色图像)的l分量 
    %亮度调整,把源图像的l分量sl和目标图像的l分量sf分别求均值和方差。 
    mean_s=mean2(sl); 
    std2_s=std2(sl); 
    mean_g=mean2(sf); 
    std2_g=std2(sf); 
    L=std2_g/std2_s*(sl-mean_s)+mean_g; %亮度调整过后的彩色源图像的l分量 
    a=imhist(L);                        %调整过后的源图像的亮度直方图 
    c=imhist(sf);                       %目标灰度图像的亮度直方图 
    %灰度级压缩到128 
    j=1; 
    for ii=1:128 
        b(ii)=a(j)+a(j+1); %采用压缩映射 
        d(ii)=c(j)+c(j+1); 
        j=2*ii+1; 
    end 
    b=b';%彩色源图像的索引向量 
    d=d';%目标灰度图像索引向量 
    t(i)=dot(d,b)./(norm(d)*norm(b)); 
end  
 
[tmin th]=max(t); 
source=imread(fnlist(th).name);%最佳彩色源图像 
source1=imresize(source,[128 128]); 
subplot(3,6,2);imshow(source1),title('最佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source2=imread(fnlist(th).name);%第二佳 
source2=imresize(source2,[200 200]); 
subplot(3,6,3);imshow(source2),title('第二佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,4);imshow(source3),title('第三佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,5);imshow(source3),title('第四佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,6);imshow(source3),title('第五佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,7);imshow(source3),title('第六佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,8);imshow(source3),title('第七佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,9);imshow(source3),title('第八佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,10);imshow(source3),title('第九佳源图像'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,11);imshow(source3),title('第十佳源图'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,12);imshow(source3),title('第十一佳源图'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,13);imshow(source3),title('第十二佳源图'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,14);imshow(source3),title('第十三佳源图'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,15);imshow(source3),title('第十四佳源图'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,16);imshow(source3),title('第十五佳源图'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,17);imshow(source3),title('第十六佳源图'); 
 
t(th)=min(t)-10; 
[tmin th]=max(t); 
source3=imread(fnlist(th).name);%第三佳 
source3=imresize(source3,[200 200]); 
subplot(3,6,18);imshow(source3),title('第十七佳源图');