马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
%估测透射率分布
w_1=0.95;
t=ones(w,h);
t=1-w_1*dark_ori/A;
t=max(min(t,1),0);
figure;
imshow(t);
title('原始透射率图');
%------------改进透射率----------------------------------------------------
dark_ori1=min(min(min(I(:,:,:))));
dark_max1=zeros(w,h);
for i=1:h
for j=1:w
dark_max1(i,j)=min(I(i,j,:)); %取每个点的像素为RGB分量中最低的那个通道的值
end
end
dark_max=max(max(dark_max1(:,:)));
t1=ones(h,w);
t2=ones(h,w);
for i=1:h
for j=1:w
t1(i,j)=(dark_max-dark_ori1)*(A-min(I(i,j,:)));
t2(i,j)=(dark_max-dark_ori1)*A-(min(I(i,j,:))-dark_ori1)*min(I(i,j,:));
t(i,j)=t1(i,j)/t2(i,j);
end
end
t=max(min(t,1),0);
figure;
imshow(t);
title('改进后透射率图');
%-------------改进透射率结束----------------------------------------------
%复原物体光线,得到无雾图像
t0=0.1;%透射因子下限t0
dehaze=zeros(h,w,c);
for i=1:c
for j=1:h
for l=1:w
dehaze(j,l,i)=(I(j,l,i)-A)/max(t(j,l),t0)+A;
end
end
end
figure;
imshow(dehaze);
%title('去雾后图像');
真心请教大神这段代码,非常感谢 |