function dark(img_name)
%暗影去雾算法
%filename------文件名或文件绝对路径
%用法:dark('7.png')
close all
clc
tt = cputime;
% 原始图像
I = double(imread(img_name)) / 255;
% 获取图像大小
[h,w,c] = size(I);
win_size = 7;
%去雾系数
w0 = 0.95;
img_size = w * h;
%初始化结果图像
dehaze = zeros(h,w,c);
%初始化暗影通道图像
win_dark = ones(h,w);
%计算分块darkchannel
for j=1+win_size:w-win_size
for i=win_size+1:h-win_size
win_dark(i,j)=min(I(i,j,:));
for n=j-win_size:j+win_size
for m=i-win_size:i+win_size
if(win_dark(m,n)>win_dark(i,j))
win_dark(m,n)=win_dark(i,j);
end
end
end
end
end
%计算大气亮度A
dark_channel = win_dark;
times = round(img_size * 0.001);
A = 0;
for m=1:times
most_bright=max(max(dark_channel));
[i,j]=find(dark_channel==most_bright);
i=i(1);j=j(1);
average=mean(I(i,j,:));
if average > A
A=average;
end
dark_channel(i,j)=0;
end
%计算transmission map
transmission = 1 - w0 * win_dark / A;
%计算原图像的灰度图
gray_I = zeros(img_size ,1);
gray_I = reshape(gray_I,h,w);
for i=1:h
for j=1:w
gray_I(i,j) = mean(I(i,j,:));
end
end
%用guided filter对trasmission map做soft matting
p = transmission;
r = 60;
eps = 10^-6;
transmission_filter = guidedfilter(gray_I, p, r, eps);
%平滑处理
r = 8;
eps = 0.2^2;
transmission_smooth = guidedfilter(transmission_filter, transmission_filter, r, eps);
t0=0.1;
for i=1:c
for j=1:h
for l=1:w
dehaze(j,l,i)=(I(j,l,i)-A)/max(t0,transmission_smooth(j,l))+A;
end
end
end
figure,
imshow(I);
figure,
imshow(dehaze);
time=cputime-tt;
disp(time);
没有合适的资源?快使用搜索试试~ 我知道了~
暗影通道去雾matlab代码(直接可用)
共15个文件
bmp:10个
m:3个
jpg:2个
4星 · 超过85%的资源 需积分: 31 357 下载量 5 浏览量
2011-12-12
23:28:49
上传
评论 25
收藏 6.7MB ZIP 举报
温馨提示
基于何恺明的暗影通道去雾实现,matlab源码全上传,直接可用。
资源推荐
资源详情
资源评论
收起资源包目录
haze removal.zip (15个子文件)
haze removal
forest1.jpg 554KB
train.bmp 703KB
xiangshan2.bmp 1.31MB
dark.m 2KB
hongkong.bmp 1.05MB
gugong.bmp 703KB
canyon2.bmp 792KB
xiangshan1.jpg 36KB
canon3.bmp 703KB
boxfilter.m 931B
ny1.bmp 1010KB
tiananmen1.bmp 791KB
xiangshan3.bmp 1.32MB
ny3.bmp 235KB
guidedfilter.m 957B
共 15 条
- 1
penguinhao
- 粉丝: 3
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页