图像去雾基础知识

1. 研究分类:图像增强和图像复原

	----图像增强:基于图像增强的去雾算法出发点是尽量去除图像噪声,提高图像对比度,从而恢复出无雾清晰图像
	----方法:直方图均衡化(HLE)、自适应直方图均衡化(AHE)、限制对比度自适应直方图均衡化(CLAHE)、Retinex算     		法、小波变换、同态滤波。

	----图像复原:基于大气退化模型,进行响应的去雾处理
	----方法:暗通道去雾算法、基于导向滤波的暗通道去雾算法、Fattal的单幅图像去雾算法(Single image dehazing)、Tan的单一图像去雾算法(Visibility in bad weather from a single image)、Tarel的快速图像恢复算法(Fast visibility restoration from a single color or gray level image)、贝叶斯去雾算法(Single image defogging by multiscale depth fusion)

2. CNN

-----大气退化模型 : 利用神经网络对模型中的参数进行估计
-----利用输入的有雾图像,直接输出得到去雾后的图像(**端到端**)通过学习有雾图像到无雾图像之间的映射关系来恢复无雾图像

3. 何凯明:Single Image Haze Removal Using Dark Channel Prior

----**暗通道**:对于非天空区域,暗通道的值等于取一个局部窗口中每个像素点三个通道中最小值组成的集合的最小值
(**也就是按照像素点,每个像素点都有RGB三个通道,取三个通道中的最小值,构成暗通道图**)
对于有雾的图像来说其暗通道值不是趋于0

(https://img-blog.csdnimg.cn/f1cbbda9986444aabc28d84ea6411abc.png)
上式中 [公式] 表示彩色图像的每个通道,Ω(x)表示以像素X为中心的一个窗口,窗口大小可以根据实际情况适当调整。

4. 求大气光A:

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

由于大气光的存在,导致原本暗通道的图像具有亮度,所以大气光A就是暗通道中亮的地方(不管有雾无雾)
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

https://www.bilibili.com/video/BV1CX4y1P7Sk?spm_id_from=333.999.0.0

5. 生成有雾图像公式:


--------I(X)有雾,J(x)无雾图像,A是全球大气光,t(x)为透射率

6.GCANet

概述:
一个端到端的门控上下文聚合网络来直接恢复最终的无雾图像。在这个网络中,我们采用最新的平滑膨胀技术来帮助消除由广泛使用的膨胀卷积引起的网格伪影,并且额外参数可以忽略不计,并利用门控子网络来融合不同层次的特征。

扩张卷积被广泛用于在不牺牲空间分辨率的情况下聚合上下文信息以提高其有效性;还采用它通过覆盖更多相邻像素来帮助获得更准确的恢复结果。对扩张卷积进行平滑处理,这可以大大减少这种网格化伪影

提出了一个门控子网络来确定不同级别的重要性,并根据其相应的重要性权重进行融合。(不同级别间的融合)

总结:
1、新的端到端门控上下文聚合网络 GCANet 用于图像去雾,其中使用平滑扩张卷积来避免网格化伪影,并应用门控子网络来融合不同级别的特征
2、提供全面的消融研究,以验证每个组件的重要性和必要性。
3、进一步将我们提出的 GCANet 应用于图像去雨任务

相关工作:
传统:图像先验在前一种类型中是手工制作的
现在:自动学习

GCANet 旨在直接回归模糊图像和目标干净图像之间的残差。网络结构非常轻量级,效果好

框架详细结构:

在本节中,我们将介绍所提出的门控上下文聚合网络 GCANet 的架构。如图 1 所示,给定一个模糊的输入图像,我们首先通过编码器部分将其编码为特征图,然后通过聚合更多的上下文信息和融合不同级别的特征而不进行下采样来增强它们。具体来说,利用了平滑扩张卷积和额外的门子网络。增强后的特征图最终将被解码回原始图像空间以获得目标雾霾残留。通过将其添加到输入的有雾图像上,我们将获得最终的无雾图像。

**空洞卷积:**为解决所需的多尺度上下文推理和下采样过程中丢失的空间分辨率信息。
在这里插入图片描述

空洞卷积产生网格伪影:

在这里插入图片描述

平滑扩张卷积:

**       if self.only_residual:   # 去雾
            y = self.deconv1(y)    # output: (out_c, im_h, im_w)
        else:    # 去雨
            y = F.relu(self.deconv1(y))
        return y
**

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44021553/article/details/123336013