文章目录
前言
继续去雾算法的学习。这篇主要是基于单幅图像的快速去雾算法
一、考虑t与图像暗淡之间的关系
暗通道论文中有这样一句话:
由于附加的大气光,一个有雾图像比一个无雾图像会更亮,且有雾图像的传输率更低。所以,有雾图像的暗通道在有雾区域有着更高的强度值。
经验证:
我们可以看到 在有雾的区域 透射率小于无雾区域
-----------》
介质透射率t越大,则图像越暗淡,介质透射率越小,图像白色区域较多
所以 无雾图像的介质透射率t 会比有雾图像的介质透射率更大些
二、基于单幅图像的快速去雾算法
1.概述
这个算法只用一次简单的均值滤波来估计环境光和全局大气光,实现起来比较简单耗时较少。
且去雾效果较好。
2.原理:
1、雾图成像模型
x是图像像素的空间坐标,H是观察到的有雾图像,F是待恢复的没有雾的图像,r是大气散射系数,d代表景物深度。A是全局大气光,正常情况下,A是一个全局常量,和x无关。
要计算F需要对退化物理模型进行转换。
L(x)定义为定义为环境光,它导致图像色彩和亮度的偏移。上式被改写为
2,环境光的计算
这里用 t(x) 代表e-rd ,称之为 介质透射率。进而退化物理模型可以写成:
在这里,d(x)是图像深度,可以发现随着图像深度增加,透射率会下降。
然后得到该不等式
这一步主要是为了确定t(x)的一个范围,便于下一步确定。H(x)雾图 是一个3通道的矩阵。A全局大气光 是一个3*1的矩阵,t(x)介质透射率 是一个随坐标变化的数值。下一步对H(x)求三通道最小值,缩小范围
这一步求最小值的意义在于将三通道的矩阵数据,变为了一通道,上式的矩阵A全局大气光 也变为了A0 ,即单个数据
接着,对右侧数据进行求均值滤波操作。
要计算t(x)介质透射率 文中利用了窗口均值滤波计算 M(x)原图最小单通道 的均值,Mave(x) 和M(x)的尺寸一样 只是在M(x)的基础上求了均值
令
求均值后,原式变为 由不等式变为了等式。第三项是弥补的偏移值。