一种基于颜色校正和上下文聚合残差网络的图像去雾方法
文献发布时间:2023-06-19 11:29:13
技术领域
本发明属于图像处理与深度学习技术领域,涉及一种基于颜色校正和上下文聚合残差网络的图像去雾方法。
背景技术
近年来,在室外交通监控等领域(如目标检测和车辆识别),摄像系统经常受到恶劣环境天气的影响,空气中的雾、烟等不透明的杂散颗粒的存在使得拍摄到的图像产生一定程度的视觉质量退化(如颜色偏移,亮度和对比度降低)。由于许多的计算机视觉任务依赖清晰的图像作为训练样本,因此,图像去雾作为一个预处理步骤具有非常重大的意义。
图像去雾是一种图像增强算法,其目标为在不影响图像信息的情况下,提高图像的质量、清晰度、对比度等。对于一张给定的雾图,传统的去雾方法依赖各种先验信息,通过估计透射率和全局大气光强度,然后利用大气散射模型反向求解得到无雾的图像;许多深度学习的去雾方法通过直接回归大气散射模型的两个参数或无雾图像来提高去雾的性能,利用了神经网络的特征提取能力从而达到了较好的图像去雾效果,是目前的主要研究趋势。
现有的大多数去雾方法往往忽略了对于图像颜色的校正,或者直接用一个网络来同时处理图像去雾和图像颜色校正的问题,忽略了不同的目标函数之间存在潜在的对抗性。因此,本发明提出了一种基于颜色校正和上下文聚合残差网络的两阶段图像去雾方法,通过将图像去雾任务解耦成图像颜色校正和图像去雾两个子任务,在平衡雾图颜色的同时解决了无雾图像的恢复问题,提高了去雾的整体效果与性能。
发明内容
本发明的目的是提供一种基于颜色校正和上下文聚合残差网络的图像去雾方法,解决了现有的大多数去雾方法忽略了图像的色彩平衡的问题。
本发明所采用的技术方案是,一种基于颜色校正和上下文聚合残差网络的图像去雾方法,按照以下步骤实施:
步骤1、构建图像去雾模型,
采用两阶段结构的图像去雾模型,该图像去雾模型包括颜色校正模块和雾残差模块;
步骤2、校正雾图的颜色,获得颜色平衡雾图,
颜色校正模块用于提取鲁棒的光照相关特征,估计出准确的光照颜色,通过按比例缩放雾图的像素值从而恢复雾图的颜色平衡;
步骤3、获取雾残差图,
将雾看作雾图和无雾图像之间的残差值,其中,雾就是需要得到的雾残差图,通过引入雾残差模块来训练一个将雾图映射到雾的函数,得到雾残差图;
步骤4、计算无雾图像,
将步骤3获得的雾残差图从步骤2获得的颜色平衡雾图中分离出去,得到最终的无雾图像;
步骤5、计算无雾图像和数据集中对应的标签图像之间的均方误差损失函数和总变差损失函数,更新图像去雾模型。
本发明的有益效果是,包括以下方面:1)本发明将图像颜色校正考虑到去雾任务中,解决了现有大多数去雾方法在处理雾图时出现的颜色失真、色彩不平衡等问题;2)本发明设计了一种雾残差模块,将雾视为雾图和无雾图像之间的残差值,并通过将其进行分离得到无雾图像;3)本发明将图像去雾问题解耦成图像颜色校正和图像去雾两个子问题,先对雾图进行颜色校正,再对校正后的图像进行去雾处理,可以得到色彩平衡且清晰的无雾图像,避免了采用单阶段去雾网络在去雾的同时忽略图像色彩平衡的问题;4)本发明还提出使用均方误差损失函数和总变差损失函数协作指导图像去雾模型,这对于恢复无雾图像非常有益。
附图说明
图1为本发明方法实施例的去雾流程图;
图2为本发明方法实施例的应用场景图;
图3是图2中的雾残差模块中的增强残差块的结构示意图。
具体实施方式
下面参照附图和具体实施方式对本发明进行详细说明。
参照图1,本发明的图像去雾方法,按照以下步骤实施:
步骤1、构建图像去雾模型,
本步骤将图像去雾问题解耦成图像颜色校正和图像去雾两个子问题,采用两阶段结构的图像去雾模型,该图像去雾模型包括颜色校正模块和雾残差模块。
根据颜色恒常性理论可知,颜色是人类大脑和视网膜处理的结果,人类视觉系统具有能够从变化的光照环境和成像条件下获取物体表面颜色的不变特性,这种鲁棒性及调节功能是计算机等处理机器所不具有的,不同的光照环境会导致采集到的雾图的颜色与真实颜色存在一定程度的偏差。因此,本步骤中采用了一个颜色校正模块来消除光照环境对颜色显现的影响,将雾图恢复到原本真实的颜色。该颜色校正模块采用了灰度世界算法的原理,假设具有丰富色彩分布的雾图对于光照的平均反射率的均值在总体上是个定值,这个定值近似地为“灰色”,而平均反射率是消色差的,因此按比例缩放雾图的像素值就可以还原雾图的颜色平衡。
对于一张输入雾图,首先由颜色校正模块对雾图的颜色进行调整,处理成颜色平衡雾图;然后,雾残差模块将雾图看成雾和无雾图像的组合,因此雾残差模块学习的是雾图和无雾图像之间的残差值,即雾;最后,通过将雾残差模块输出的残差值进行分离,即可得到色彩平衡且清晰的无雾图像;
步骤2、校正雾图的颜色,获得颜色平衡雾图,
本步骤提供了一个颜色校正模块,用于提取鲁棒的光照相关特征,估计出准确的光照颜色,通过按比例缩放雾图的像素值从而恢复雾图的颜色平衡。
如图2中的上部的虚线框,是本发明采用的颜色校正模块。
对于输入的一张雾图,首先,对雾图的R、G、B颜色通道分别用通道卷积进行处理,每一个颜色通道都使用16个卷积滤波器,分别得到了16个R通道特征图、16个G通道特征图和16个B通道特征图,将生成的这些通道特征图以RGB的方式组合,得到16组伪颜色雾图,获得伪颜色雾图的过程表达式如下:
其中,I是输入的雾图,I
然后,对每一幅伪颜色雾图I
其中,M×N表示空间的大小,c表示I
最后,将校正颜色雾图I
其中,
步骤3、获取雾残差图,
残差学习是用于去噪等图像恢复任务的有力工具,本步骤将雾看作雾图和无雾图像之间的残差值,其中,雾就是需要得到的雾残差图,通过引入雾残差模块来训练一个将雾图映射到雾的函数,得到雾残差图。
如图2中的下部的虚线框,是本步骤采用的雾残差模块。从颜色校正模块中输出的校正颜色雾图I
如图3所示是增强残差块的结构图,由于普通的卷积运算中同一层的不同特征通道是独立的,相关性很小,而SE块可以模拟不同特征通道之间的相关性。因此将SE块嵌入到基本的残差块中,合并成增强残差块,充分利用校正颜色雾图的空间上下文信息,对具有更多上下文信息的特征通道赋予更大的权重,给具有较少上下文信息的特征通道赋予较小的权重;并且SE块中的跳跃连接可以提供远程信息补偿,充分发挥了残差学习的作用,
其中SE块的操作步骤是:全局平均池化—(第一个)全连接层—ReLU激活函数—(第二个)全连接层—Sigmoid激活函数,最后将全局平均池化层的输入与Sigmoid激活函数的输出进行逐元素相乘,得到SE块的输出,
增强残差块的操作步骤是:(第一个)卷积层—(第一个)BN层—PReLU激活函数—(第二个)卷积层—(第二个)BN层—SE块,最后将增强残差块的输入与SE块的输出进行逐元素相加,得到增强残差块的输出,即雾残差图。
本步骤实施例采用了16个增强残差块。
步骤4、计算无雾图像,
将步骤3获得的雾残差图从步骤2获得的颜色平衡雾图中分离出去,得到最终的无雾图像;
步骤5、计算无雾图像和数据集中对应的标签图像之间的均方误差损失函数和总变差损失函数,更新图像去雾模型;
其中,均方误差损失函数指导图像去雾模型学习无雾图像的内容,总变差损失函数用来降低相邻像素值之间的差异,使得生成的无雾图像更加平滑,以上两种损失函数协作得到优化的图像去雾模型,
5.1)均方误差损失函数,
均方误差损失函数有助于图像去雾模型生成的无雾图像接近于数据集中对应的标签图像,对无雾图像和对应的标签图像计算的均方误差损失函数的表达式为:
5.2)总变差损失函数,
总变差损失函数是常用的一种正则项,由于在无雾图像复原的过程中会放大噪声,会对复原的结果产生非常大的影响,因此需要在图像去雾模型中添加一些正则项来保持无雾图像的光滑性,本步骤采用总变差损失函数配合上述两种损失函数一起使用,以约束无雾图像的噪声,总变差损失函数的表达式为:
综合上述两种损失函数,整个图像去雾模型的损失函数表达式为:
L=λ
- 一种基于颜色校正和上下文聚合残差网络的图像去雾方法
- 一种基于循环上下文聚合网络的单图像去雾方法