理论见博客:
http://www.cnblogs.com/changkaizhao/p/3266798.html
http://www.cnblogs.com/Imageshop/p/3281703.html
由于课程作业的需要,仅仅进行简单研究。
1.主函数
clc; clear all; close all; J = imread('4.jpg'); J = double(J); J = J ./255 ; figure(1); imshow(J); %% 求暗通道图像 Jdark = min(min()); Jdark = Idark(J); figure(2);imshow(Jdark,[]); %% % 注意:何凯明使用了soft matting方法对得到的粗透射率Jt进行细化 % 本代码采用梯度导向滤波实现 Jdark = gradient_guidedfilter(Jdark,Jdark, 0.04); figure(3);imshow(Jdark,[]); %% 大气物理模型 J = I*t + A*(1-t) 【直接衰减项】+【大气光照】 % 透射率 t与深度的关系 t=exp(-a*depth) w = 0.95; %雾的保留系数 Jt = 1 - w*Jdark; %求解透射率 %% 求解全局大气光照 % 1.首先对输入的有雾图像I求解其暗通道图像Jdark。 % 2.选择Jdark总像素点个数千分之一(N/1000)个最亮的像素点,记录像素点(x,y)坐标 % 3.根据点的坐标分别在原图像J的三个通道(r,g,b)内找到这些像素点并加和得到(sum_r,sum_g,sum_b). % 4.Ac=