图像去雾 darkchannel MATLAB实现

  • b6_522155
    了解作者
  • 1.4MB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-04-28 12:08
    上传日期
1暗通道先验,2导向滤波算法。图像去雾 darkchannel MATLAB实现。
Darkchannel.zip
  • W8.jpg
    307.5KB
  • T1.bmp
    272.6KB
  • T8.bmp
    194.9KB
  • Guided_Image_Filter.m
    1KB
  • W9.bmp
    581.9KB
  • Aguidehaze.m
    1.8KB
  • T4.bmp
    228.5KB
  • Box_Filter.m
    1.3KB
  • ZZ13.jpg
    15.7KB
  • T2.jpg
    12.9KB
  • T0.bmp
    282.4KB
  • ZZ14.jpg
    22.9KB
  • Adarkchannel.m
    1.3KB
内容介绍
close all; clear; clc; tic; img_name = 'T4.BMP'; img = double(imread(img_name))/255; % 加载图像 figure; imshow(img); title('原图像'); [h,w,c] = size(img); Dark_img = ones(h,w); win_size = 7; for j=1+win_size:w-win_size for i=1+win_size:h-win_size m_min = min(img(i,j,:)); for n=j-win_size:j+win_size for m=i-win_size:i+win_size if(Dark_img(m,n)>m_min) Dark_img(m,n) = m_min; end end end end end figure; imshow(Dark_img); title('暗通道图像'); Th = 0.99*max(Dark_img(:)); NUM = 0; AR = 0; AG = 0; AB = 0; for i=1:h for j=1:w if Dark_img(i,j) > Th NUM = NUM + 1; AR = AR + img(i,j,1); AG = AG + img(i,j,2); AB = AB + img(i,j,3); end end end AR = AR/NUM; AG = AG/NUM; AB = AB/NUM; factor = 0.95; T = 1 - factor*Dark_img*3/(AR+AG+AB); figure; imshow(T); title('折射率图'); J = zeros(h,w,3); for i=1:h for j=1:w if T(i,j) < 0.1 T(i,j) = 0.1; end end end J(:,:,1) = (img(:,:,1) - AR)./T + AR; J(:,:,2) = (img(:,:,2) - AG)./T + AG; J(:,:,3) = (img(:,:,3) - AB)./T + AB; figure; imshow(J); title('暗通道先验复原图'); r = 24; eps = 10^-6; Filtered = Guided_Image_Filter(rgb2gray(img), T , r, eps); T = Filtered; figure; imshow(T); title('引导滤波器折射率图'); J = zeros(h,w,3); for i=1:h for j=1:w if T(i,j) < 0.1 T(i,j) = 0.1; end end end J(:,:,1) = (img(:,:,1) - AR)./T + AR; J(:,:,2) = (img(:,:,2) - AG)./T + AG; J(:,:,3) = (img(:,:,3) - AB)./T + AB; figure; imshow(J); title('引导滤波器复原图'); toc;
评论
    相关推荐
    • 蛙跳算法MATLAB程序
      基本蛙跳算法MATLAB程序。用MATLAB编写的基础算法
    • 遗传算法Matlab程序
      应用数字群算法设计数字滤波器的matlab程序,遗传算法是最近几年流行的优化算法
    • Q算法MATLAB仿真
      移动机器人路径规划MATLAB仿真,使用Q-Learning算法
    • PSO 算法matlab程序
      这个程序就是最基本的粒子群优化算法程序,用Matlab实现。
    • 遗传算法MATLAB应用
      老师上课的参考书 主要是关于遗传算法的一些MATLAB应用,十分有意思 希望大家能喜欢
    • 遗传算法MATLAB实现
      遗传算法MATLAB实现,附WORD说明算法
    • 遗传算法matlab
      matlab程序下的遗传算法
    • 遗传算法matlab
      遗传算法是自然选择和群体学基础上的非数值优化方法。提供了些matlab实例计算
    • 遗传算法matlab
      matlab是科学计算常用的工具,遗传算法也是一种目前比较流行的一种算法,利用matlab写的遗传算法代码,供大家参考。
    • 遗传算法matlab代码
      遗传算法matlab代码,能够正常运行,对于刚开始接触遗传算法的人员有很好的帮助