資源簡介
用MATLAB實現的darkchannel算法,實現圖像去霧
代碼片段和文件信息
img_name=‘01.jpg‘;
%?原始圖像
I=double(imread(img_name))/255;
%?獲取圖像大小
[hwc]=size(I);
win_size?=?5;
img_size=w*h;
dehaze=zeros(img_size*c1);
dehaze=reshape(dehazehwc);
figure?imshow(I);
win_dark=zeros(img_size?1);
for?cc=1:img_size
???win_dark(cc)=1;
end
win_dark=reshape(win_darkhw);
%計算分塊darkchannel
?for?j=1+win_size:w-win_size
????for?i=win_size+1:h-win_size
????????m_pos_min?=?min(I(ij:));
????????for?n=j-win_size:j+win_size
????????????for?m=i-win_size:i+win_size
????????????????if(win_dark(mn)>m_pos_min)
????????????????????win_dark(mn)=m_pos_min;
????????????????end
????????????end
????????end
???????
????end
?end
?
?figure?imshow(win_dark);
?
?for?cc=1:img_size
???win_dark(cc)=1-win_dark(cc);
?end
?%選定精確dark?value坐標
win_b?=?zeros(img_size1);
?
for?ci=1:h
????for?cj=1:w
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3029??2010-09-09?23:01??darkchannel.m
?????文件???????7919??2010-09-07?13:59??noisecomp.m
-----------?---------??----------?-----??----
????????????????10948????????????????????2
評論
共有 條評論