MATLAB图像处理_去雾算法


使用MATLAB进行图像的去雾操作,网上一搜,这方面的东西很多,貌似已然成为研究的一个方向,大牛辈出!

这里仅仅给出一个代码,能实现图像的去雾操作,详细的看后边有没有时间,想自己研究研究。

function darktest(filename)
%暗影去雾算法
%filename------文件名或文件绝对路径
%用法:darktest('7.png')
close all
clc

w0=0.65;   %0.65  乘积因子用来保留一些雾,1时完全去雾    
t0=0.1;

I=imread(filename);
figure;
set(gcf,'outerposition',get(0,'screensize'));
subplot(221)
imshow(I);
title('原始图像');
[h,w,s]=size(I);
min_I=zeros(h,w);           

%下面取得暗影通道图像
for i=1:h                 
    for j=1:w
        dark_I(i,j)=min(I(i,j,:));
    end
end

subplot(223)
imshow(dark_I);
title('dark channnel的图形');

Max_dark_channel=double(max(max(dark_I)))  %天空亮度
dark_channel=double(dark_I);
t=1-w0*(dark_channel/Max_dark_channel);   %取得透谢分布率图

subplot(224)
T=uint8(t*255);
imshow(T);
title('透射率t的图形');

t=max(t,t0);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
I1=double(I);
J(:,:,1) = uint8((I1(:,:,1) - (1-t)*Max_dark_channel)./t);

J(:,:,2) = uint8((I1(:,:,2) - (1-t)*Max_dark_channel)./t);

J(:,:,3) =uint8((I1(:,:,3) - (1-t)*Max_dark_channel)./t);
subplot(222)
imshow(J);
title('去雾后的图像');

end


  • 11
    点赞
  • 133
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
### 回答1: Matlab图像去雾算法是对霾天气下的图像进行预处理的一种方法,通过去除图像中的霾,使得图像更加清晰,并提高图像的质量。通常采用的方法是基于暗通道先验的图像去雾算法。 暗通道先验是指图像中每个像素的RGB三个通道中,最小值通道被视为暗通道,即该通道中像素值最小的一个。在霾图像中,由于霾的存在,所有的像素值都会受到一些衰减,因此最小值通道对应的像素值就会比较小,在去过程中被广泛使用。 去的过程可以分为以下步骤: 1.计算暗通道:对于一幅输入图像,分别计算RGB三个通道中的最小值,然后对这些最小值进行平滑处理,以消除噪声。 2.估算全局大气光:通过在暗通道中寻找最大值,可以估计出图像的全局大气光。 3.计算透射率:通过计算每个像素与全局大气光之间的比值,可以得到图像中每个像素的透射率。 4.修复图像:将透射率应用到原始图像上,从而去除霾,并还原图像的清晰度。 Matlab图像去雾算法可以通过编程实现,具有较高的效率和精度,是处理霾图像的一种有效方法。 ### 回答2: Matlab图像去雾算法可以帮助我们有效地去除在图像中产生的气,使得图片更加清晰、真实、明亮。相比于人工处理,Matlab图像去雾算法可以更快捷、准确地处理大量的图片,因此在工业生产、图像识别、科学研究等领域有着广泛的应用。 Matlab图像去雾算法的基本原理是通过对图像的颜色、亮度、对比度、饱和度等方面进行调整,消除气的影响,提升图像的质量。首先,需要通过气模型来了解图像内部存在的气浓度、滴大小、透射率等参数,然后根据这些参数运用指定的公式进行气去除处理。同时,还需要考虑图像的噪声、锐度、色彩等因素,通过调整这些参数,最终呈现出更加清晰、亮丽、真实的图像。 总的来说,Matlab图像去雾算法是一项复杂而重要的图像处理技术,在许多领域都有广泛的应用。相比于传统的图像处理方法,它能更加快速地处理大量的图像,并且能够保证较高的准确度和清晰度,因此越来越受到人们的重视和使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值