• 大小: 5.33MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-10-02
  • 语言: 其他
  • 标签: 图像去雾  DIA  

资源简介

天气对图像的质量有很大的影响,请利用图像分析的相关知识,实现基于暗通道先验的图像去雾算法,对有雾霾的图像进行增强。 压缩包内包括代码、测试图片、一些测试效果图片、论文原文。 (参考论文:n He K, Sun J, Tang X. Single image haze removal using dark channel prior[J]. IEEE CVPR, 2009.)

资源截图

代码片段和文件信息

clear;
close all;
clc;

%% 基于暗通道的去雾算法
I = imread(‘../test images/haze2.jpg‘);

PR=I(::1);                                        %提取红色分量 
PG=I(::2);                                        %提取绿色分量 
PB=I(::3);                                        %提取蓝色分量 
gray = min(min(PRPG)PB);
Jdark=ordfilt2(gray1ones(1515));                 %最小值滤波,得到暗通道

%从暗通道图中按照亮度的大小取前0.1最亮的像素                
[t index] = sort(Jdark(:)‘ ‘descend‘);                   
n = ceil(length(Jdark)*0.001)                        %前0.1的像素个数
threshold = max(t(1:n));                            %暗通道中最亮的阈值
index(1:n);                                         %暗通道阈值点集的位置
%根据暗通道所取阈值和位置,找到原图对应位置里的最亮通道值,构造全局大气光A矩阵
R = PR(:)‘;
G = PG(:)‘; 
B = PB(:)‘; 
for i = 1:n                                         %结合阈值求原图通道最大值
    a = min(threshold max(max(R(index(i)) G(index(i))) B(index(i))));
end
A = max(a)
%求透射率t
w = 0.95;
A = I*0 + A;
t = 1 - w*double(gray)./double(A(::1));           %存在负数
tmean = mean(mean(t))
%求目标图像J
t = max(t0.1);                                     %除去负数,防止白场过渡

J(::1) = (double(PR) - double(A(::1)))./t + double(A(::1));
J(::2) = (double(PG) - double(A(::2)))./t + double(A(::2));
J(::3) = (double(PB) - double(A(::3)))./t + double(A(::3));
J = uint8(J);                                       %一定要转回与I相同的类型,不然显示不出(用round无效)
%直方图均衡化
J(::1) = histeq(J(::1));
J(::2) = histeq(J(::2));
J(::3) = histeq(J(::3));
figure; 
subplot(221);imshow(I);title(‘原图像‘); 
subplot(222);imshow(Jdark);title(‘暗通道‘); 
subplot(223);imshow(t);title(‘透射率图‘); 
subplot(224);imshow(J);title(‘目标图‘);


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2020-04-02 00:41  图像去雾实验代码\
     文件       75059  2020-03-29 23:27  图像去雾实验代码\haze1_w0.95_Amax_histeqNO_filt15.png
     文件       79505  2020-03-29 23:26  图像去雾实验代码\haze1_w0.95_Amin_histeqNO_filt15.png
     文件       85204  2020-03-29 23:06  图像去雾实验代码\haze1_w0.95_Amin_histeq_filt15.png
     文件       86647  2020-03-29 23:43  图像去雾实验代码\haze2_w0.95_Amin_histeqNO_filt15.png
     文件       95030  2020-03-29 23:07  图像去雾实验代码\haze2_w0.95_Amin_histeq_filt15.png
     文件       70235  2020-03-29 23:07  图像去雾实验代码\haze3_w0.95_Amin_histeq_filt15.png
     文件       90023  2020-03-29 23:37  图像去雾实验代码\haze4_w0.6_Amin_histeqNO_filt15.png
     文件       92984  2020-03-29 23:36  图像去雾实验代码\haze4_w0.8_Amin_histeqNO_filt15.png
     文件       87098  2020-03-29 23:36  图像去雾实验代码\haze4_w0.95_Amin_histeqNO_filt15.png
     文件       92268  2020-03-29 23:08  图像去雾实验代码\haze4_w0.95_Amin_histeq_filt15.png
     文件       88269  2020-03-29 23:08  图像去雾实验代码\haze5_w0.95_Amin_histeq_filt15.png
     文件        1862  2020-03-29 23:59  图像去雾实验代码\HazeRemoval.m
     文件     4389504  2020-03-20 12:13  图像去雾实验代码\Single Image Haze Removal Using Dark Channel Prior_cvpr_09.pdf
     目录           0  2020-04-02 00:40  图像去雾实验代码\test images\
     文件       17105  2020-03-17 22:52  图像去雾实验代码\test images\haze1.jpg
     文件       17666  2020-03-17 22:52  图像去雾实验代码\test images\haze2.jpg
     文件       14261  2020-03-17 22:52  图像去雾实验代码\test images\haze3.jpg
     文件       20033  2020-03-17 22:52  图像去雾实验代码\test images\haze4.jpg
     文件       21264  2020-03-17 22:52  图像去雾实验代码\test images\haze5.jpg
     文件      358533  2020-03-29 20:54  图像去雾实验代码\test images\haze6.jpg

评论

共有 条评论