本文提出了AOD-Net,这是一种一体化的管道,可以通过端到端的CNN直接重建无雾图像。使用客观(PSNR,SSIM)对去雾效果进行评价。AOD-Net是根据重新制定的大气散射模型设计的,将T和A集成到新的变量中,减少单独计算带来的误差。
我们提出了一种新的端到端单图像去雾方法,称为密集连接金字塔去雾网络(DCPDN),它可以共同学习传输图、大气光和去雾。端到端学习是通过将大气散射模型直接嵌入到网络中来实现的,从而确保所提出的方法严格遵循物理驱动的散射模型进行去雾。受密集网络可以最大化不同层次特征的信息流的启发,我们提出了一种新的边缘保持密集连接的编码器-解码器结构,具有多层金字塔池化模块,用于估计传输图。该网络使用新引入的边缘保留损失函数进行了优化。为了进一步结合估计的传输图和去雾结果之间的相互结构信息,我们提出了一个基于生成对抗网络框架的联合判别器来决定相应的去雾图像和估计的传输是否地图是真的还是假的。进行消融研究以证明在估计的传输图和去雾结果中评估的每个模块的有效性。大量实验表明,所提出的方法比最先进的方法取得了显着的改进。代码和数据集在:https://github.com/hezhangsprinter/DCPDN###
尽管基于学习的方法已经取得了巨大的进步,但有几个因素阻碍了这些方法的性能,并且结果远非最佳。 这主要是因为:
在本文中,我们采用不同的方法来解决图像去雾的端到端学习。特别是,我们提出了一种新的图像去雾架构,称为密集连接金字塔去雾网络(DCPDN),可以通过遵循图像退化模型方程(Eq.1)来联合优化以同时估计透射图、大气光和图像去雾。换句话说,端到端的学习是通过嵌入方程来实现的。 1通过深度学习框架提供的数学运算模块直接进入网络。然而,训练如此复杂的网络(具有三个不同的任务)非常具有挑战性。
为了简化训练过程并加速网络收敛,我们利用分阶段学习技术,首先逐步优化网络的每个部分,然后共同优化整个网络。
为了确保估计的传输图在去雾时保留锐利的边缘并避免光晕伪影,本文基于梯度算子和 CNN 结构的前几层可以起到如下作用的观察,提出了一种新的边缘保留损失函数边缘提取器。此外,提出了一种具有多级池化模块的密集连接的编码器-解码器网络,以利用来自不同级别的特征来估计传输图。为了利用传输图和去雾图像之间的结构关系,提出了一种基于联合鉴别器的生成对抗网络(GAN)。联合鉴别器区分一对估计的透射图和去雾图像是真实的还是假的。为了保证大气光也可以在整个结构内得到优化,采用 U-net [35] 来估计均匀的大气光图。
该网络包含三个部分,分别为:金字塔稠密链接传输率图估计网络,大气光估计网络和连结判别器。前两个网络分别生成雾图的传输率图和大气光值,经由大气散射模型生成去雾图。将该去雾图和前面提到的传输率图进行堆叠,送入连结判别器。联合鉴别器区分一对估计的透射图和去雾图像是真实的还是假的
现存的诸如[27],[3]之类的工作遵循相同的三步程序:
1)使用复杂的深模型从模糊图像I(x)估计传输矩阵t(x);
2)使用一些经验方法估计A;
3)通过(3)估计清洁图像J(x)。
这样的过程导致次优解决方案,其不直接最小化图像重建误差。当将它们组合在一起以计算(3)时,t(x)和A的单独估计将导致累积或甚至放大的误差。
我们的核心思想是将两个参数t(x)和A统一为一个公式,即(4)中的K(x),并直接最小化像素域重建误差。为此,将(3)中的公式重新表示为下面的转换公式:
提出的aod-net包含两个模块:
(a)k-estimation模块:从输入图像I(x)估计k(x)
(b)清晰图像生成模型:k(x)再去估计J(x)
创建合成数据集:NYU2深度数据集,大气光值[0.6,1.0],bita {0.4,0.6,0.8,1.0,1.2,1.4,1.6},取出27256个图像做训练集,3170个做测试集A,Middlebury立体数据集中取出800张full-size合成图像作为测试集B,此外,在自然雾霾图像上也评估了模型的泛化能力。
在训练过程中,使用高斯随机变量初始化权重。 我们使用ReLU神经元,因为我们发现它比[3]中提出的BReLU神经元在我们的特定环境中更有效。 动量和衰减参数分别设置为0.9和0.0001。 我们使用8个图像(480×640)的批量大小,学习率为0.001。 我们采用简单的均方误差(MSE)损失函数,并且很高兴地发现它不仅提升了PSNR,还提升了SSIM以及视觉质量。AOD-Net模型需要大约10个训练时期才能收敛,并且通常在10个时期之后表现得足够好。 在本文中,我们已经训练了40个时期的模型。 还发现将范数约束在[-0.1,0.1]内对clip the gradient (防止梯度爆炸)很有帮助。 该技术在稳定复发网络训练方面很受欢迎[25]。