⛄一、颜色衰减先验去雾算法简介

2015年Zhu等的颜色衰减先验去雾算法利用颜色衰减先验建立有雾图像的景深模型, 采用有监督学习的方式得到模型的参数, 结合大气散射模型得到去雾图像。具体内容如下:

1 大气散射模型
Zhu等的颜色衰减先验去雾算法利用计算机视觉和图形图像领域广泛采用的大气散射模型, 其数学表达式为

其中x为图像中像素点的位置, I为有雾图像, J为无雾图像, A为大气光强度, t为介质传输透射率, d为图像景深, β为大气散射系数。在大气均匀分布的条件下, 大气散射系数β被认为是恒定值[12]。

2 颜色衰减先验
Zhu等基于对有雾图像统计特性的研究, 通过大量实验发现了颜色衰减先验[9]。一幅有雾图像中, 任意像素点处雾的浓度与该像素亮度和饱和度之差成正相关, 表达式为

其中c (x) 为像素点处的雾浓度, v (x) 为像素亮度, s (x) 为像素饱和度。

3 图像景深复原
由于通常图像中雾的浓度与景深变化成正相关, 结合颜色衰减先验得之任意像素点处的景深与该像素亮度和饱和度之差成正相关, 因此建立如下线性模型

其中d (x) 为像素点处的景深, v (x) 为像素亮度, s (x) 为像素饱和度, θ0、θ1和θ2为未知线性系数, ε (x) 为用期望值为0, 方差为σ2的高斯密度函数表示的随机误差。采用有监督学习的方式得到θ0=0.121779, θ1=0.959710, θ2=-0.780245, σ=0.041337, 并利用最小滤波和引导滤波[13]对图像景深进行优化, 确定d (x) 的取值范围为[0.1, 0.9]。

4 去雾图像复原
为避免去雾图像出现噪声, 确定t (x) 的取值范围为[0.1, 0.9]。去雾图像J的表达式为

其中大气光强度A的估计方法为:找出前0.1%景深值大的像素对应有雾图像I的像素, 取亮度最大的像素作为A。大气散射系数β取为恒定值1.0。

5 颜色衰减先验去雾算法的不足
在Zhu等的颜色衰减先验去雾算法中, 大气散射系数β取为恒定值1.0。实际情况大气分布是不均匀的, 大气散射系数β不能被认为是恒定值。大气散射系数β取为恒定值1.0存在比实际情况偏大或偏小的问题。当偏小时导致介质传输透射率偏大, 根据公式 (5) 得到去雾图像近似于有雾图像, 去雾效果不好。当偏大时导致介质传输透射率偏小, 易导致去雾图像出现颜色失真现象。基于上述考虑, 提出动态大气散射系数的颜色衰减先验去雾算法。

⛄二、部分源代码

close all;clear;clc;
pic=imread(‘test.png’);%pic=imresize(pic,0.2);
[h_,w_,s_]=size(pic);
pic=double(pic)/255;
pic_gray=rgb2gray(pic);
tic
pic_hsv=rgb2hsv(pic);
V=max(max(pic(:,:,1),pic(:,:,2)),pic(:,:,3));%亮通道
d=0.121779+0.959710V-0.780245pic_hsv(:,:,2)+0.041337;
se=strel(‘disk’,15);
d=imerode(d,se);%深度图进行平滑滤波

r=30;
eps=0.01;
d=guidedfilter(pic_gray,d, r, eps);%引导滤波

blocksize=15;
RGB_MIN=min(min(pic(:,:,1),pic(:,:,2)),pic(:,:,3));%像素暗通道
RGB_gray=rgb2gray(pic);
se=strel(‘square’,blocksize);
dark_I=imerode( RGB_MIN,se);
% figure,imshow(dark_I);

% U=reshape(dark_I,1,h_*w_);
% U1=sort(U,2,‘descend’);
% med=round(h_*w_*0.001);
% U2=U1(1:med);
% U3=unique(U2);
% [s1,s2]=size(U3);
% km=1;
% for i=1:s2
% [x y]=find(dark_I==U3(i));
% [l1,l2]=size(x);
% for i=1:l1
% x1=x(i,1);
% y1=y(i,1);
% km=km+1;
% U4(km)=RGB_gray(x1,y1);
% end
% end
% A_channel=max(U4(

【图像去雾】基于matlab颜色衰减先验图像去雾【含Matlab源码 2036期】相关推荐

  1. 【Matlab语音处理】声音信号频谱分析仪【含GUI源码 325期】

    一.代码运行视频(哔哩哔哩) [Matlab语音处理]声音信号频谱分析仪[含GUI源码 325期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊, ...

  2. 【Matlab图像检索】综合特征图像检索【含GUI源码 395期】

    一.代码运行视频(哔哩哔哩) [Matlab图像检索]综合特征图像检索[含GUI源码 395期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...

  3. 【Matlab肌电信号】肌电信号处理【含GUI源码 966期】

    一.代码运行视频(哔哩哔哩) [Matlab肌电信号]肌电信号处理[含GUI源码 966期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余继周,杨 ...

  4. 【Matlab条形码识别】二维条形码识别【含GUI源码 607期】

    一.代码运行视频(哔哩哔哩) [Matlab条形码识别]二维条形码识别[含GUI源码 607期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...

  5. 【图像去雾】颜色衰减先验图像去雾【含Matlab源码 2036期】

    ⛄一.颜色衰减先验去雾算法简介 2015年Zhu等的颜色衰减先验去雾算法利用颜色衰减先验建立有雾图像的景深模型, 采用有监督学习的方式得到模型的参数, 结合大气散射模型得到去雾图像.具体内容如下: 1 ...

  6. 【Matlab图像融合】小波变换遥感图像融合【含GUI源码 744期】

    一.代码运行视频(哔哩哔哩) [Matlab图像融合]小波变换遥感图像融合[含GUI源码 744期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...

  7. 【Matlab图像加密】正交拉丁方置乱算法图像加解密【含GUI源码 182期】

    一.代码运行视频(哔哩哔哩) [Matlab图像加密]正交拉丁方置乱算法图像加解密[含GUI源码 182期] 二.matlab版本及参考文献 一.代码运行视频(哔哩哔哩) [Matlab图像处理]自动 ...

  8. 【Matlab车牌识别】停车计费系统【含GUI源码 735期】

    一.代码运行视频(哔哩哔哩) [Matlab车牌识别]停车计费系统[含GUI源码 735期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MATLA ...

  9. 【Matlab生物电信号】生物电信号仿真【含GUI源码 684期】

    一.代码运行视频(哔哩哔哩) [Matlab生物电信号]生物电信号仿真[含GUI源码 684期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]董兵,超于毅,李 ...

最新文章

  1. linux 禅道服务器,Linux下如何搭建禅道项目管理软件
  2. 第十二章 支持向量机-机器学习老师板书-斯坦福吴恩达教授
  3. 医学计算机教学计划,医学院教学计划
  4. 无惧秋招,您的NLP算法工程师魔鬼训练计划请查收
  5. 系统接口对接的进度工作应该谁来干_第三方分账系统开发的那些坑,给你节省几十万...
  6. c语言结构体中整形数组初始化,c – 将{0,0}在结构体中初始化数组?
  7. 通信网络安全还应从基础设施保护做起
  8. Spring Boot 项目总是创建失败,这几个备选方案一定要收藏
  9. iOS源码分析:Block的本质
  10. 计算机平面设计考试试题及答案,最新国家开放大学电大专科《计算机平面设计(1)》网络课形考任务1及任务2答案...
  11. 产品必备-用户故事模板
  12. 原生JS实现简单打砖块弹球小游戏
  13. iOS 新浪新闻首页卡片滚动特效实现
  14. h5策划书_DIYH5|3.12世界睡眠日H5策划方案
  15. zxing 二维码、带logo二维码生成
  16. 我的Serverless实战—基于Serverless搭建一个简单的WordPress个人博客图文详解-JJZ
  17. python将后宫佳丽三千做成照片墙
  18. U盘文件变成快捷方式的解决方案
  19. 第八届蓝桥杯B组国赛总结
  20. 我奋斗了10年才能和你坐在一起喝咖啡

热门文章

  1. 南工院计算机答辩,人工智能与计算机学院举行“智能之星”评选答辩会
  2. python爬虫(网页解析)
  3. R语言的三种聚类方法
  4. 8:操作模式1-boot mode
  5. WPS表格 下拉列表 两级下拉列表联动 多级下拉列表联动
  6. HashSet 原理结构
  7. linux查看分区命令
  8. 吴军亲述编程生涯:不用低效率的算法做事情
  9. IIS配置php+soap
  10. 深富策略核心资产崩了