一、简介
mark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1RJUUNtYXRsYWI=,size_16,color_FFFFFF,t_70#pic_center)
HR0cHM6Ly9ibG9nLmNzZG4ubmV0L1RJUUNtYXRsYWI=,size_16,color_FFFFFF,t_70#pic_center)
二、源代码
Image=(imread('gugong1.jpg')); %打开图像并转换为double数据
imshow(Image);
[height,width,c]=size(Image);
RI=double(Image(:,:,1)); GI=double(Image(:,:,2)); BI=double(Image(:,:,3));
sigma=100; filtersize=[height,width];%高斯滤波器参数
gaussfilter=fspecial('gaussian',filtersize,sigma); %构造高斯低通滤波器
Rlow=imfilter(RI,gaussfilter,'replicate','conv');
Glow=imfilter(GI,gaussfilter,'replicate','conv');
Blow=imfilter(BI,gaussfilter,'replicate','conv');
minRL=min(min(Rlow)); minGL=min(min(Glow)); minBL=min(min(Blow));
maxRL=max(max(Rlow)); maxGL=max(max(Glow)); maxBL=max(max(Blow));
RLi=(Rlow-minRL)/(maxRL-minRL);
GLi=(Glow-minGL)/(maxGL-minGL);
BLi=(Blow-minBL)/(maxBL-minBL);
Li=cat(3,RLi,GLi,BLi);
figure;imshow(Li);title('估计光照分量');
imwrite(Li,'light.bmp');
Image=(imread('gugong1.jpg')); %打开图像并转换为double数据
imshow(Image);title('原始图像');
[height,width,c]=size(Image);
RI=double(Image(:,:,1)); GI=double(Image(:,:,2)); BI=double(Image(:,:,3));
beta=0.4;
alpha=125;
CR=beta*(log(alpha*(RI+1))-log(RI+GI+BI+1));
CG=beta*(log(alpha*(GI+1))-log(RI+GI+BI+1));
CB=beta*(log(alpha*(BI+1))-log(RI+GI+BI+1));
Rhigh=zeros(height,width);
Ghigh=zeros(height,width);
Bhigh=zeros(height,width);
end
Image=imread('Beautiful.jpg');
imshow(Image),title('原始图像');
[height width]=size(Image);
Image=double(Image);
xmax=max(max(Image));
Fe=2;%指数模糊因子
xc=mean2(Image);
Fd=(xmax-xc)/(2^(1/Fe)-1);
u=(1+(xmax-Image)/Fd).^(-Fe); %空间域变换到模糊域
times=2;%设置迭代次数
for k=1:times
for i=1:height %模糊域增强算子
for j=1:width
三、运行结果