www.gusucode.com > 基于retinex理论的图象增强处理,一种新型的算法 > code2/SSR.m

    I = imread('C:\MATLAB7\work\n.jpg');
subplot(1,2,1);
imshow(I);

f=I(:,:,1);
ff=I(:,:,2);
fff=I(:,:,3);
%%%%%%%%%%%%%构造高斯核%%%%%%%%%%%%%%%%%%%%%%%
k1=8;
k2=8;
r=161;
alf=1600;
nn=floor((r+1)/2);
for i=1:r
    for j=1:r
        b(i,j) =exp(-((i-nn)^2+(j-nn)^2)/(k1*alf))/(k2*pi*alf*10000);        %高斯函数
   end
end
%%%%%%%%%%%对R分量的处理%%%%%%%%%%%%%
Img = double(f);
K=imfilter(Img,b);  
G=log(Img+1)-log(K+1);

mi=min(min(G));
ma=max(max(G));
       L=(G-mi)*255/(ma-mi);
%%%%%%%%%%%%%%对G分量的处理%%%%%%%%%%%%%
Img = double(ff);
K=imfilter(Img,b);  
G=log(Img+1)-log(K+1);
   
mi=min(min(G));
ma=max(max(G));
       LL=(G-mi)*255/(ma-mi);
%%%%%%%%%%%%%随B分量的处理%%%%%%%%%%%%%%%%%%
Img = double(fff);
K=imfilter(Img,b);  
G=log(Img+1)-log(K+1);
   
mi=min(min(G));
ma=max(max(G));
       LLL=(G-mi)*255/(ma-mi);
%%%%%%%%%%%%对彩色图像的综合处理 %%%%%%
ssr=cat(3,L,LL,LLL);
subplot(1,2,2);
imshow(uint8(ssr));
imwrite(uint8(ssr),'sst.bmp');

figure,,surf(b);