基于暗通道去雾的matlab代码备注实现

这段代码对内存很高,所使用图片尽量控制在200*300范围内

img_name='002.bmp';

% 原始图像

I=double(imread(img_name))/255;

% 获取图像大小

[h,w,c]=size(I);

win_size = 7;

img_size=w*h;

dehaze=zeros(img_size*c,1);

dehaze=reshape(dehaze,h,w,c);

figure, imshow(I);

win_dark=zeros(img_size ,1);

%这段代码可用矩阵处理

for cc=1:img_size

   win_dark(cc)=1;

end

 

win_dark=reshape(win_dark,h,w);

%计算分块darkchannel,此处也尝试用矩阵处理,循环太多

 for j=1+win_size:w-win_size

    for i=win_size+1:h-win_size

        m_pos_min = min(I(i,j,:));

        for n=j-win_size:j+win_size

            for m=i-win_size:i+win_size

  • 8
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值