You are on page 1of 78

单位代码: 10293 密 级:

硕 士 学 位 论 文

论文题目: 基于深度学习的单幅图像去雾算法研究

学 号 1019010501

姓 名 韩文生

导 师 张登银

学 科 专 业 信号与信息处理

研 究 方 向 图像处理

申请学位类别 工学硕士

论文提交日期 2022.3
The Research of Single Image Dehazing
Algorithm Based on Deep Learning

Thesis Submitted to Nanjing University of Posts and


Telecommunications for the Degree of
Master of Engineering

By
Han Wensheng
Supervisor: Prof. Zhang Dengyin
March 2022
摘要
雾霾天气下,由于空气中存在大量漂浮着的粒子,光线传播过程中与这些悬浮粒子相互
作用,使得光线发生散射,最终到达成像设备的场景光信息受损。所以拍摄得到的图像存在
对比度较低、清晰度低、细节丢失等问题,影响后续对图像的进一步处理应用。因此,对有
雾图像进行去雾工作,使其能够应用于高级别的图像处理任务。本文基于深度学习对单幅图
像去雾算法进行了研究,主要工作如下:
(1)针对基于深度学习的非端到端图像去雾算法对模型参数估计不准确的问题,以及当
前基于深度学习的端到端图像去雾算法图像空间信息保留的问题,本文提出一种基于高分辨
率网络(High-Resolution Net,HRNet)的单幅图像去雾模型 DeHRNet。DeHRNet 分为多个
分支,不同分支间的分辨率不同,分辨率不同的分支并行连接且在每个阶段的末尾进行多尺
度融合。本文在原网络的基础上增加了一个新的阶段,使其更好地用于图像去雾工作。新增
阶段通过上采样收集网络所有分支的特征图表示以增强高分辨率表示,而不是仅采用高分辨
率分支的特征图,这使得恢复的无雾图像更加自然,具有重要意义。实验结果表明 DeHRNet
对有雾图像有明显的去雾效果。
(2)针对基于深度学习的端到端去雾网络模型参数过多,且在雾浓度分布不均匀情况下
的存在去雾过度或去雾不彻底的问题,本文基于深度跨尺度融合网络(Deep Cross-scale Fusion
Network,DCSFN)提出一种轻量级的图像去雾模型 Light-DCSFN。Light-DCSFN 将原网络
中的普通标准卷积使用深度可分离卷积进行替代,并通过网络来预测输入有雾图像的雾浓度
图,而不是通过网络直接获取无雾图像,以解决雾浓度分布不均匀情况下的去雾问题。同时,
为了更好的提取雾浓度特征以及避免恢复的无雾图像产生颜色失真的问题,在原网络的前面
新加一个颜色特征提取模块,首先分割得到输入有雾图像的 RGB 三通道图像,然后输入到新
加的模块,用于提取不同通道间的颜色浅层特征。实验结果表明 Light-DCSFN 不仅对有雾图
像有明显的去雾效果且单幅图像去雾时间较短。
(3)针对目前对于图像去雾工作很少与实际生活相结合的问题同时对 Light-DCSFN 去
雾模型的去雾效果作进一步检测,本文提出一个能够同时在晴天和雾天天气下使用的车牌识
别系统,并基于暗通道先验知识提出一种判断图像是否有雾的方法。该系统分为判断图像是
否有雾模块、图像去雾模块、车牌定位模块和车牌字符识别模块,用于晴天和雾天天气下的
车牌识别工作。
关键词: 图像去雾,深度学习,高分辨率表征,深度可分离卷积,车牌识别

I
Abstract
In haze weather, due to the existence of a large number of floating particles in the air, the light
will interact with these suspended particles during the propagation process, causing the light to be
scattered, and finally the scene light information reaching the imaging device will be damaged.
Therefore, the captured images have problems such as low contrast, low definition, and loss of
details, which affect the subsequent further processing and application of the images. Therefore,
dehazing the hazy image enables it to be applied to high-level image processing tasks. In this paper,
based on deep learning, a single image dehazing algorithm is studied. The main work is as follows:
(1) Aiming at the inaccurate estimation of model parameters by the deep learning-based
non-end-to-end image dehazing algorithm, and the problem of image spatial information retention
in the current end-to-end image dehazing algorithm based on deep learning, this paper proposes a
single image dehazing model based on high-resolution network, called DeHRNet. DeHRNet is
divided into multiple branches, the resolutions between different branches are different, the
branches with different resolutions are connected in parallel and multi-scale fusion is performed at
the end of each stage. This paper adds a new stage to the original network to make it better for
image dehazing. The newly added stage collects the feature map representations of all branches of
the network by upsampling to enhance the high-resolution representations instead of only taking the
feature maps of the high-resolution branches, which makes the restored haze-free images more
natural. The experimental results show that DeHRNet has obvious dehazing effect on hazy images.
(2) Aiming at the end-to-end dehazing network model based on deep learning with too many
parameters, and the problem of excessive or incomplete dehazing in the case of uneven fog
concentration distribution, this paper based on the deep cross-scale fusion network proposes a
lightweight image dehazing model, called Light-DCSFN. Light-DCSFN replaces the ordinary
standard convolution in the original network with a depthwise separable convolution. And through
the network to predict the fog density map of the input hazy image, instead of directly obtaining the
haze-free image through the network to solve the problem of dehazing in the case of uneven fog
concentration distribution. At the same time, to better extract the fog density feature and avoid the
problem of color distortion in the restored haze-free image, a new color feature extraction module is
added in front of the original network. First, the RGB three-channel image of the input hazy image
is obtained by segmentation, and then input to the newly added module. It is used to extract the

II
color shallow features between different channels. The experimental results show that
Light-DCSFN not only has obvious dehazing effect on hazy images, but also has a short dehazing
time for a single image.
(3) Aiming at the problem that the image dehazing work is rarely combined with real life, and
the dehazing effect of the Light-DCSFN dehazing model is further tested, this paper proposes a
license plate that can be used in both sunny and foggy weather. This paper proposes a recognition
system and a method for judging whether the image is hazy based on the dark channel prior
knowledge. The system is divided into a module for judging whether the image has fog, an image
dehazing module, a license plate positioning module, and a license plate character recognition
module, which are used for license plate recognition in sunny and foggy weather.

Keywords: image dehazing, deep learning, high-resolution representation, deep separable


convolution, license plate recognition.

III
目录
专用术语注释表 ............................................................... VI
第一章 绪论 ................................................................... 1
1.1 研究背景和意义......................................................... 1
1.2 国内外研究现状......................................................... 2
1.2.1 基于图像增强的去雾算法 ........................................... 2
1.2.2 基于物理模型的去雾算法 ........................................... 3
1.2.3 基于深度学习的去雾算法 ........................................... 4
1.3 本文研究内容和章节安排................................................. 6
第二章 图像去雾相关技术分析 ................................................... 8
2.1 大气散射模型........................................................... 8
2.2 典型去雾算法分析....................................................... 9
2.2.1 基于物理模型的典型去雾算法分析 ................................... 9
2.2.2 基于深度学习的非端到端的典型去雾算法分析 ........................ 10
2.2.3 基于深度学习的端到端的典型去雾算法分析 .......................... 11
2.3 常见的去雾算法客观评价指标............................................ 12
2.4 本章小节.............................................................. 14
第三章 基于高分辨率网络的图像去雾算法 ........................................ 15
3.1 问题分析.............................................................. 15
3.2 高分辨率网络架构及其特性.............................................. 16
3.3 基于高分辨率网络的图像去雾算法框架.................................... 18
3.3.1 算法步骤 ........................................................ 18
3.3.2 网络训练及参数设置 .............................................. 22
3.4 实验结果与分析........................................................ 23
3.4.1 实验数据 ........................................................ 23
3.4.2 在合成有雾图像测试集上的实验结果与分析 .......................... 24
3.4.3 在真实有雾图像测试集上的实验结果与分析 .......................... 26
3.4.4 单幅图像去雾时间分析 ............................................ 28
3.5 本章小结.............................................................. 29
第四章 基于深度跨尺度融合网络的快速图像去雾算法 .............................. 30
4.1 问题分析.............................................................. 30
4.2 DCSFN 架构及其特性 ................................................... 31
4.3 基于深度跨尺度融合网络的快速图像去雾算框架............................ 32
4.3.1 对原网络的改进 .................................................. 33
4.3.2 算法步骤 ........................................................ 37
4.3.3 网络训练及参数设置 .............................................. 38
4.4 实验结果与分析........................................................ 38
4.4.1 实验数据 ........................................................ 38
4.4.2 在合成有雾图像测试集上的实验结果与分析 .......................... 39
4.4.3 在真实有雾图像测试集上的实验结果与分析 .......................... 42
4.4.4 单幅图像去雾时间和模型所占空间大小分析 .......................... 44
4.4.5 雾霾浓度图 ...................................................... 45
4.5 本章小结 .............................................................. 45
第五章 雾霾天气下的车牌识别系统与应用 ........................................ 47
5.1 需求分析.............................................................. 47
IV
5.2 雾霾天气下的车牌识别系统设计 .......................................... 48
5.2.1 判断图像是否有雾模块 ............................................ 48
5.2.2 图像去雾模块 .................................................... 50
5.2.3 车牌定位模块 .................................................... 50
5.2.4 车牌字符识别模块 ................................................ 53
5.3 实验结果与分析 ........................................................ 56
5.3.1 非雾霾天气下的车牌识别结果及分析 ................................ 57
5.3.2 雾霾天气下的车牌识别结果及分析 .................................. 57
5.3.3 失败案例分析 .................................................... 58
5.4 本章小结 .............................................................. 59
第六章 总结与展望 ............................................................ 60
6.1 总结 .................................................................. 60
6.2 展望 .................................................................. 61
参考文献 ..................................................................... 63
附录 1 攻读硕士学位期间撰写的论文 ............................................. 67
附录 2 攻读硕士学位期间申请的专利 ............................................. 68
附录 3 攻读硕士学位期间参加的科研项目 ......................................... 69
致谢 ......................................................................... 70

V
专用术语注释表

符号说明:

𝐼(𝑥) 有雾图像
𝐽(𝑥) 无雾图像
𝑡(𝑥) 场景透射率
𝐴 全局大气光值
𝛽 大气散射系数
𝑑(𝑥) 场景深度

缩略词对照表:

缩略语 英文全称 中文对照


AOD-Net All-in-One Dehazing Network 多合一图像去雾
BRelu Bilateral Rectified Linear Unit 双边修正线性单元
CAP Color Attenuation Prior 颜色衰减先验
CNN Convolutional Neural Network 卷积神经网络
DCP Dark Channel Prior 暗通道先验
DS-Conv Depthwise Separable Convolution 深度可分离卷积
FSIM Feature Similarity 特征相似性
GAN Generative Adversarial Networks 生成对抗网络
GCP Gamma Correction Prior 伽玛校正先验
GPU Graphics Processing Unit 图像处理器
GRU Gate Recurrent Unit 门控循环单元
HRNet High-Resolution Net 高分辨率网络
MRF Markov Random Fiel 马尔可夫随机场
MSBDN Multi-Scale Boosted Dehazing Network 多尺度增强去雾网络
MSCNN Multi-Scale Convolutional Neural 多尺度卷积神经网络
Network
PSNR Peak Signal to Noise Ratio 峰值信噪比
Relu Rectified Linear Units 修正线性单元
SGD Stochastic Gradient Descent 随机梯度下降
SSIM Structural Similarity 结构相似性

VI
南京邮电大学硕士研究生学位论文 专用术语注释表

第一章 绪论

1.1 研究背景和意义

近年来,我们国家工业化快速推进,人民生活步入小康水平,但是工业的发展也使得自

然环境也发生了变化,特别是在我国长江以北的大部分地区,冬季空气质量较差,严重情况

下会有雾霾。雾霾天气下,空气中存在大量漂浮着的粒子,光线在传播过程中与这些粒子相

互作用,使得光线发生散射,导致最终拍摄得到的图像存在对比度低、清晰度低等问题,使

得决策者从图像中获取较少的信息,严重影响后续的处理。比如图像分类[1]领域,雾霾天气

下拍摄得到的图像会有大片白色区域,影响图像分割的质量;在目标检测[2]领域,有雾图像

存在对比度低且模糊的问题,很难对物体进行精确识别。因此,为了使这些高级别的图像处

理技术能够在雾霾天气下正常使用,对于图像去雾的研究具有重要意义。

图像去雾技术是将有雾图像通过一定的技术手段恢复成无雾图像的过程,在我们的生产

生活中有着十分重要的研究和应用价值。比如在车牌识别领域,对图像进行去雾,有利于提

高车牌识别的准确度,进而确保交通安全。在地形勘测方面,去雾技术可以提高航拍图像的

质量,更好的服务于后续的工作。在生活娱乐方面,高质量的图像可以提高人民群众的满意

度。此外,图像去雾在林业预警、交通运输等领域也有着重要应用。图 1.1 列举了图像去雾

技术在部分领域的应用。

本文对基于深度学习的单幅去雾算法进行研究,以实现对单幅图像的去雾,从而应用到

人们的日常生活和工业生产中,具有重要的现实意义。

(a)车牌识别 (b)地形勘测 (c)生活娱乐 (d)交通运输 (e)林业预警


图 1.1 图像去雾的应用领域

1
南京邮电大学硕士研究生学位论文 第一章 绪论

1.2 国内外研究现状

目前,图像去雾算法可以粗糙地分为三种类型[3],第一类是基于图像增强的去雾算法。

该类算法不研究雾霾图像成像的原因,而是直接采用图像增强的方法提高有雾图像的对比度。

虽然其结果符合人类的视觉要求,但是会丢失图像细节信息,不利于高级别的图像处理任务。

第二类是基于物理模型的去雾算法。该类算法利用图像信息估计有雾图像的场景透射率和全

局大气光照值,再利用大气散射模型公式恢复无雾图像。由于对不同场景下的图像参数估计

可能存在不准确的问题,导致一些去雾算法在某些场景下不能完成去雾工作。第三类是基于

深度学习的去雾算法。早期基于深度学习的去雾算法利用训练好的卷积神经网络

(Convolutional Neural Network, CNN)对有雾图像的透射率值进行估计,但由于训练集和网

络架构的问题,这种方法存在参数估计不准确的问题;当前比较流行的是基于深度学习的端

到端的图像去雾算法,即网络模型的输入为有雾图像,输出直接为无雾图像,然而多数网络

模型采用 U-Net 架构,存在图像空间信息损失的问题。下面将分别详细介绍以上三类算法。

1.2.1 基于图像增强的去雾算法

早期对于图像去雾算法的研究中,没有针对图像去雾提出特有的方法,而图像增强由于

其简单直观,且对于图像去雾能取得一定的效果,所以早期对于图像去雾的工作多数是基于

图像增强的。目前,主要的方法有直方图均衡化算法、同态滤波算法和基于 Retinex 的增强方

法。

由于雾霾的存在,导致有雾图像对比度较低,所以图像的直方图多数集中在某一个区间

内。直方图均衡化[4]通过将输入有雾图像的直方图转换为均匀分布的形式进行图像增强工作,

以实现图像去雾。然而,有雾图像中的雾浓度会随着位置的变化而变化,即图像中雾的浓度

分布不均,所以采用全局增强的直方图均衡算法对于复杂的场景不能取得较好的效果。Kim

等人[5]和 Stark 等人[6]提出了局部直方图均衡化。其在图像上定义一个子块,子块中心的灰度

为此子块直方图均衡后的灰度,然后将子块中心逐像素移动并重复以上处理过程,直至遍历

输入图像的所有像素,但其计算量过大,算法效率较低。为了解决算法复杂度大的问题,Kim

等人[7]提出局部子块重叠的直方图均衡算法,子块移动的步长不再固定为 1,而是根据子块的

大小确定,直方图均衡化后的结果不仅仅应用于子块中心点,而是整个子块。最近,Stimper

2
南京邮电大学硕士研究生学位论文 第一章 绪论
等人[8]提出对图像的所有维度进行限制对比度自适应直方图均衡化算法。以上方法均可对图

像对比度进行一定程度的增强,进而达到图像去雾的效果。

由于有雾图像中低频分量占多数,因此可以采取滤波的方式抑制低频分量、加强高频分

量,目前这种方法采取的最多的是同态滤波[9]。但是同态滤波不考虑图像的空域信息,仅对

图像的频域特征进行分析,因此对浓雾图像存在去雾不理想的问题。对于这个问题,赵春丽

等人[10]提出将直方图均衡化与同态滤波进行合并的图像增强方法,以达到去雾效果。

颜色恒常性[11] 是指当物体周围的环境光发生变化时,人们对于颜色的感知保持不变,

Land 等人[12]基于此提出了 Retinex 理论,后续又有学者提出了单尺度 Retinex 算法[13]和多尺

度 Retinex 算法[14]。Retinex 算法在雾浓度分布均匀的有雾图像可以取得较好的去雾效果,但

是对于复杂场景去雾效果不佳。

从以上分析中可以得出,基于图像增强的去雾方法在图像雾浓度分布均匀时可以取得有

效的去雾效果,但是由于其未考虑雾霾产生的原因,对于复杂场景和雾浓度分布不均匀的图

像不能取得满意的去雾效果。因此,基于物理模型的去雾算法被提出。

1.2.2 基于物理模型的去雾算法

基于物理模型的去雾算法研究有雾图像成像的过程,并建立模型对有雾图像进行去雾操

作。1999 年,Narasimhan 和 Nayer 等人[15][16]提出了著名的大气散射模型。基于大气散射模型

的去雾算法首先根据某些理论来估计大气散射模型公式中的场景透射率和全局大气光值两个

参数,在估计得到两个参数的值后,带入公式即可得到无雾图像。基于不同的理论,具体又

可以分为以下几种方法。

基于景物深度信息的方法通过某些方法估计得到图像的深度信息,进而得到无雾图像。

Oakley 等人[18]通过航拍图像的飞机飞行参数来估计图像的场景深度。Kopf 等人[19]根据场景

的 3D 纹理信息估计深度信息。Narasimhan 等人[15]-[17]利用同一场景下、不同天气下的多幅图

像来估计场景深度和全局大气光值。

基于大气光偏振特性的方法中,Schechner 等人[20]和 Shwartz 等人[21]利用相同场景下不同

偏振角来估计场景透射率和全局大气光值。

近年来,单幅图像去雾工作取得重大进展。许多学者借助先验知识对场景透射率和全局

大气光值进行估计,进而进行单幅图像去雾工作。Tan 等人[22]基于统计信息提出利用马尔可

夫随机场(Markov Random Fiel,MRF)来提高有雾图像的对比度,进而实现去雾。在经过

3
南京邮电大学硕士研究生学位论文 第一章 绪论
对大量无雾图像统计后,He 等人[23]提出了基于暗通道先验的去雾算法(Dark Channel Prior,

DCP)。暗通道先验认为,在多数不包含天空区域的无雾图像中,至少有一个颜色通道有一

些像素值非常小,因此可利用此先验知识对场景透射率和全局大气光值进行估计。Zhu 等人[24]

提出了颜色衰减先验(Color Attenuation Prior,CAP),其认为有雾图像的亮度和饱和度间的

差与雾的浓度变化存在关系,而雾的浓度又可以和图像的场景深度建立关系,所以建立图像

亮度和饱和度差值与场景深度的线性关系,从而估计得到场景透射率,进而恢复无雾图像。

Ju 等人[25]利用伽玛校正先验(Gamma Correction Prior,GCP)来估计图像的场景深度。

上述基于物理模型的图像去雾算法基于不同的理论对有雾图像的场景透射率和全局大气

光值进行估计,再根据公式恢复无雾图像。上述算法对多数有雾图像能取得不错的去雾效果,

但是一旦参数估计不准确,就会产生去雾效果不理想的问题。此外,对于基于先验知识的去

雾算法,由于先验知识在一些场景下不能适用,故在这些场景下不能取得理想的去雾效果。

基于深度学习的图像去雾算法,其卷积神经网络可以自动学习有关雾霾的不同特征,然后估

计得到场景透射率或直接得到无雾图像,有较强的适用性。因此,基于深度学习的图像去雾

算法成为人们研究的热点。

1.2.3 基于深度学习的去雾算法

随着深度学习在图像分类[26][27]、图像分割[28][29]、目标检测[30][31]等图像领域取得成功,

有学者提出了基于深度学习的图像去雾方法。早期基于深度学习的图像去雾算法中,多数是

利用卷积神经网络对有雾图像的场景透射率进行估计,进而根据大气散射模型公式恢复无雾

图像。Tang 等人[32]将已经提取好的各种和雾浓度相关的特征,如暗通道、饱和度等输入到随

机森林(Random Forest)中,通过随机森林学习有雾图像和其场景透射率的关系。Cai 等人[33]

首次提出利用卷积神经网络模型 DehazeNet 对场景透射率进行估计,其网络分为特征提取、

多尺度映射、局部极值和非线性回归四个阶段。Ren 等人[34]提出利用两个卷积神经网络模型

MSCNN(Multi-Scale Convolutional Neural Networks)来估计场景透射率,其先使用一个卷积

神经网络估计得到大致的场景透射率,再通过另一个卷积神经网络进行精确估计。以上基于

深度学习的方法中,均采用卷积神经网络对场景透射率进行估计,使用传统的方法对全局大

气光值进行估计。Zhang 等人[35]利用卷积神经网络分别对场景透射率和全局大气光值进行估

计,并提出利用生成对抗网络(Generative Adversarial Networks,GAN)[36]对恢复的无雾图

像和估计得到的场景透射率判断真假。由于分开对两个参数进行估计可能会使准确性进一步

4
南京邮电大学硕士研究生学位论文 第一章 绪论
降低,Li 等人[37]对大气散射模型公式进行变形,将场景透射率和全局大气光值合并为一个参

数,并使用卷积神经网络 AOD-Net(All-in-One Dehazing Network)对其进行估计。Ullah 等

人 [38] 在 变 形 公 式 的 基 础 上 , 提 出 一 种 计 算 效 率 高 的 轻 量 级 卷 积 神 经 网 络 LD-Net

(Light-DehazeNet)对参数进行估计,并提出一种颜色可见性恢复方法来避免恢复对无雾图

像存在颜色失真的问题。基于深度学习的去雾算法由于训练集和网络架构本身的问题,对场

景透射率的估计存在一定的偏差,使其在对真实有雾图像进行去雾时,有些场景不能取得满

意的去雾效果。

当前,基于深度学习的端到端的图像去雾算法的研究引起人们的兴趣。Liao 等人[39]利用

卷积神经网络预测夜间有雾图像的雾霾浓度图,并将雾霾浓度图与原始有雾图像相减,实现

图像去雾。在文献[40]中,作者首先将有雾图像进行多种变换,包括图像白平衡、对比度增强

和伽玛矫正等操作用于提取图像内部的不同特征,然后将变换得到的图像和有雾图像输入到

提出的门限融合卷积神经网络中,最终从网络直接得到无雾图像。Engine 等人[41]提出了一个

名为 Cycle-Dehaze 的端到端网络,网络不需要成对的有雾/无雾图像对网络进行训练。Dong

等人[42]提出一种基于 U-Net[43]架构的密集特征融合的多尺度去雾网络,网络基于升压和误差

反馈两个原则设计。由于目前基于深度学习的图像去雾算法对于网络的训练多是采用合成有

雾图像,使得训练好的网络对真实有雾图像的去雾效果较差,Shao 等人[44]提出域自适应框架

DA-dahazing,其包含一个图像转换模块以及两个图像去雾模块,首先将输入有雾图像从一个

域转换到另一个域,然后将转换后的图像与原始图像作为输入图像进行去雾。为了解决基于

深度学习的去雾网络模型参数过多和负样本信息没有充分利用的问题,Wu 等人[45]在对比学

习的基础上,提出一种新的对比正则化(Contrast Regularization,CR)技术和紧凑的基于类

自动编码器框架的去雾网络。除了以上单纯使用深度学习进行端到端去雾的算法外,Zhang

等人[46]提出了一种将多尺度卷积神经网络和多尺度 Retinex 算法相结合的端到端的去雾算法。

以上基于深度学习的端到端的图像去雾算法在单幅图像去雾工作上取得很大的进展,但

是多数是基于 U-Net[43]架构的网络,即先采用下采样提取输入图像的特征信息,获得特征图,

再通过上采样使得特征图恢复到和输入图像的相同尺寸得到无雾图像,存在图像空间信息保

留的问题。本文针对该问题提出一种基于高分辨率网络(High-Resolution Net,HRNet)[47]

的图像去雾模型 DeHRNet,具体网络将在第三章中进行阐述。此外,基于端到端的去雾网络

多数存在网络层数较深、参数较多的问题,针对此问题,本文基于深度跨尺度融合网络(Deep

5
南京邮电大学硕士研究生学位论文 第一章 绪论
Cross-scale Fusion Network,DCSFN)[48]提出一种轻量级的去雾网络,具体网络将在第四章

中进行阐述。

1.3 本文研究内容和章节安排

在上一小节中,本文详细分析了三种不同的图像去雾算法的优缺点,在本文接下来的部

分,本文主要研究基于深度学习的单幅图像去雾算法,具体研究内容如下:

(1)基于深度学习的图像非端到端的图像去雾算法中,由于网络架构、训练集等问题,

可能存在对于场景透射率和全局大气光值估计不准确的问题,端到端的去雾算法中网络多数

采用 U-Net[43]架构,存在图像空间信息保留的问题。针对以上问题,本文提出一种基于高分

辨率网络[47]的端到端的图像去雾模型 DeHRNet。高分辨率网络首次提出应用于人体姿态识别。

网络从一个高分辨率的分支开始,在每个阶段逐步添加一个新的低分辨率分支,并将多个分

辨率不同的分支并行连接且在每个阶段的末尾进行多尺度融合。本文在原网络的基础上增加

了一个新的阶段,使其更好地用于图像去雾工作。新增阶段通过上采样收集网络所有分支的

特征图以增强高分辨率表示,这使得恢复的无雾图像更加自然。实验结果表明 DeHRNet 对有

雾图像有明显的去雾效果。

(2)针对目前基于深度学习的端到端去雾网络模型参数过多,且在雾浓度分布不均匀情

况下的存在去雾过度或去雾不彻底的问题,本文基于深度跨尺度融合网络[48]提出一种轻量级

的图像去雾模型 Light-DCSFN。Light-DCSFN 将原网络中的普通标准卷积替换为深度可分离

卷积,并通过网络来预测输入有雾图像的雾浓度图,而不是通过网络直接获取无雾图像,以

解决雾浓度分布不均匀情况下的去雾问题。同时,为了更好的提取雾浓度特征以及避免恢复

的无雾图像产生颜色失真的问题,在原网络的前面新加一个颜色特征提取模块,其输入为有

雾图像的 RGB 三通道图像,用于提取不同通道间的颜色浅层特征。实验结果表明 Light-DCSFN

不仅对有雾图像有明显的去雾效果且单幅图像去雾时间较短。

(3)当前,图像去雾工作很少与实际生活相结合且算法研究多数停留在理论阶段。针对

此问题,本文将第四章所提出的去雾算法应用于车牌识别,提出一个能够同时在雾天和晴天

天气下使用的车牌识别系统。该系统分为判断图像是否有雾模块、图像去雾模块、车牌定位

模块和车牌字符识别模块。将有雾图像输入到系统中,图像去雾模块采用第四章所提去雾方

法对输入的有雾图像进行去雾,然后输入到车牌识别模块,最终输出得到对应的车牌号码。

本文全篇一共可以分为六大章节,具体章节内容安排如下:

6
南京邮电大学硕士研究生学位论文 第一章 绪论
第一章,绪论。本章主要阐述了图像去雾算法的研究背景、研究意义以及目前国内外研

究现状和存在的问题,在本章的末尾简单阐述了本文的章节安排。

第二章,图像去雾相关技术分析。大气散射模型在本章中首先被分析介绍,然后分别详

细介绍了基于大气散射模型的去雾算法代表 DCP[23]、基于深度学习的非端到端去雾算法代表

DehazeNet[33]以及基于深度学习的端到端去雾算法代表 MSBDN[42],最后介绍了常见的图像去

雾算法客观评价指标。

第三章,基于高分辨率网络的图像去雾算法。针对当前基于深度学习的非端到端的去雾

算法存在参数估计不准确以及基于深度学习的端到端的去雾算法存在空间信息保留的问题,

提出一种基于高分辨率网络的图像去雾模型 DeHRNet。本章详细阐述了网络架构、参数设置、

网络训练以及结果对比和分析。

第四章,基于多尺度融合网络的图像去雾算法。针对当前基于深度学习的去雾网络模型

参数过多和基于深度学习的端到端去雾算法在雾浓度分布不均匀情况下去雾效果不理想的问

题,提出一种轻量化的多尺度融合去雾网络模型 Light-DCSFN。本章详细阐述了网络架构、

参数设置、网络训练以及结果对比和分析。

第五章,雾霾天气下的车牌识别系统与应用。本章从图像去雾应用的角度出发,提出了

一种能够同时在晴天和雾天天气下使用的车牌识别系统,并基于暗通道先验知识提出了一种

判断图像是否为有雾图像的方法。本章阐述了所提车牌识别系统的各个模块以及实验结果与

分析。

第六章,总结和展望。本章总结了本文所提的研究内容和成果,并对图像去雾算法当前

存在的问题和未来的研究方向提出了展望。

7
南京邮电大学硕士研究生学位论文 第二章 图像去雾相关技术分析

第二章 图像去雾相关技术分析

图像去雾的目的是将有雾图像恢复成无雾图像。本文以大气散射模型为基础,分析雾霾
天气下成像过程,然后详细分析几种类型不同的典型去雾算法,最后对常见的去雾算法的客
观评价指标进行介绍。

2.1 大气散射模型

雾霾天气下,由于空气中存在大量漂浮着的粒子,光线在传播过程中与这些粒子相互作
用,使得光线发生散射,散射包括两个部分,一部分是物体表面反射的光线在传播路径上与
漂浮粒子相互作用发生散射,另一部分是场景中其他光线与漂浮粒子发生相互作用发生散射,
如图 2.1 所示。在图 2.1 中,最终到达图像采集设备的光线由以上两种光线组成。

图 2.1 雾霾天气下成像示意图

根据以上分析,Narasimhan 和 Nayer 等人[15][16]提出了著名的大气散射模型,即:


𝐼(𝑥) = 𝐽(𝑥) ∙ 𝑡(𝑥) + 𝐴 ∙ (1 − 𝑡(𝑥)) (2.1)
其中,𝐼(𝑥)为拍摄得到的有雾图像,𝐽(𝑥)为对应的无雾图像,𝐴为全局大气光照值,𝑡(𝑥)为场
景透射率。当大气同质时,𝑡(𝑥)可以泛化为:
𝑡(𝑥) = 𝑒 !"∙$(&) (2.2)
其中,𝛽为大气散射系数,𝑑(𝑥)为场景深度。在公式(2.1)中,𝐼(𝑥)为已知量,当能够求出
全局大气光值𝐴和场景透射率𝑡(𝑥)的值时,可以根据公式(2.1)求得无雾图像𝐽(𝑥)。显然,这

8
南京邮电大学硕士研究生学位论文 第二章 图像去雾相关技术分析
是一个病态方程,因此要借助一些额外的信息来估计得到全局大气光值𝐴和场景透射率𝑡(𝑥)的
值,从而再根据公式恢复无雾图像𝐽(𝑥)。

2.2 典型去雾算法分析

在本小节中,具体分析几种类型不同的去雾算法,分别为:基于大气散射模型的去雾算
法代表 DCP[23]、基于深度学习的非端到端去雾算法代表 DehazeNet[33]以及基于深度学习的端
到端去雾算法代表 MSBDN[42]。

2.2.1 基于物理模型的典型去雾算法分析

在众多基于物理模型的去雾算法中,暗通道先验为最经典的一种算法。He 等人[23] 在观
察大量无雾图像后得出:室外拍摄得到的无雾图像中,将图像除去天空区域并将图像分为若
干个小块,在每个小块中,RGB 三通道中至少存在一个通道其像素值趋于 0,即有以下公式:
234 234
𝐽$()* (𝑥) = +
6∈7(&)( +∈{),/,0}𝐽 (𝑦)), (2.3)

其中,𝐽+ (𝑦)为无雾图像𝐽(𝑥)在 RGB 三通道中某一通道在像素点𝑦处的像素值,Ω(𝑥)表示以𝑥为


中心的区域,𝐽$()* (𝑥)表示在以𝑥为中心的区域 RGB 三通道像素的最小值。假设全局大气光
值𝐴已知且不为 0,在公式(2.1)两边同时除以𝐴+ ,得到以下公式:
8 ! (&) :! (&) (2.4)
9!
= 𝑡(𝑥) 9!
+ 1 − 𝑡(𝑥),

在公式(2.4)两边取最小值,得到以下公式:
! : (6) !
234 ;<= 8 (6) 234
6∈7(&)( + 9!
) = 𝑡̃(𝑥) 6∈7(&) 4 ;<=
+ 9!
5 + 1 − 𝑡̃(𝑥), (2.5)

其中,假定Ω(𝑥)区域内的场景透射率大小相等为𝑡̃ (𝑥)。由暗通道先验可以得到:
234 :! (6)
6∈7(&) 4 ;<=
+ 9!
5 = 0, (2.6)

将公式(2.6)带入公式(2.5),经过计算可以得到:
8 (6) !
234
𝑡̃ (𝑥) = 1 − 6∈7(&)( ;<=
+ 9!
), (2.7)

由公式(2.7)可以估计得到场景透射率。对于全局大气光值𝐴的估计,选取暗通道中最亮的
前 0.1%的像素,这些像素值中最大的值即为全局大气光值𝐴。
将以上估计得到的场景透射率𝑡(𝑥)和全局大气光值𝐴代入公式(2.1)中,即可得到去雾
后的无雾图像𝐽(𝑥)。DCP 的去雾效果图如图 2.4 所示。

9
南京邮电大学硕士研究生学位论文 第二章 图像去雾相关技术分析

2.2.2 基于深度学习的非端到端的典型去雾算法分析

在众多基于深度学习的非端到端去雾算法中,Cai 等人[33]提出的 DehazeNet 最为经典。


DehazeNet 利用卷积神经网络来预测场景透射率,并提出一种更适合去雾网络的激活函数
BRelu(Bilateral Rectified Linear Unit)。DehazeNet 的网络架构如图 2.2 所示,网络主要分为
特征提取、多尺度映射、局部极值和非线性回归四部分。

图 2.2 DehazeNet 网络架构图

Cai 等人认为,密集地提取雾霾相关的特征相当于用适当的滤波器卷积输入的有雾图像然
后经过非线性映射,故特征提取层采用卷积层和激活函数的组合来让网络自动学习和提取与
雾霾相关的特征。同时,受到颜色通道中对雾霾相关特征进行极值处理的启发,激活函数采
用最大输出单元(Maxout)函数。多尺度映射层主要是利用不同大小的卷积核来提取输入有
雾图像在多个尺度上的特征,其中,卷积核大小分别为3 × 3、5 × 5和7 × 7,且卷积核的个
数均为 16。为了实现空间不变性,在网络的第三部分采用局部极值运算。为了克服常用激活
函数 Sigmoid[49]容易出现梯度消息的现象和线性修正单元函数(Rectified Linear Units,Relu)[50]
不适用于图像去雾网络的问题,DehazeNet 提出了一种新的名为双边整流线性单元的激活函
数BRelu,其表达式如下:
0, 𝑦 < 𝑡;<=
𝑓(𝑦) = A𝑦, 𝑡;<= ≤ 𝑦 < 𝑡;(& (2.8)
𝑡;(& , 𝑦 > 𝑡;(&
其中,𝑓(𝑦)为激活函数,在 DehazeNet 中,𝑡;<= = 0,𝑡;(& = 1。
在由卷积神经网络估计得到场景透射率𝑡(𝑥)后,采用与 DCP 相似的方法估计得到全局大
气光值𝐴,由公式(2.1)即可求得无雾图像𝐽(𝑥)。DehazeNet 的去雾效果图如图 2.4 所示。

10
南京邮电大学硕士研究生学位论文 第二章 图像去雾相关技术分析

2.2.3 基于深度学习的端到端的典型去雾算法分析

在众多基于深度学习的端到端的去雾算法中,本章选取 MSBDN[42]作为代表进行分析。
MSBDN 是一个基于 U-Net[43]架构的具有密集特征融合的多尺度增强的端到端的去雾网络。
网络主要包括三个模块,分别为:编译器模块𝐺>=+ ,增强解码器模块𝐺?@+ 和特征恢复模块𝐺A@B ,
其网络架构如图 2.3 所示。

图 2.3 MSBDN 网络架构图

在图 2.3 中,将有雾图像从左下角输入到网络,经过𝐺>=+ 、𝐺A@B 和𝐺?@+ 三个模块后,得到


去雾后的无雾图像。在𝐺>=+ 模块中,输入有雾图像首先经过一个步长为 1 的卷积层用于提取
图像的浅层信息,其输出层数为 16。然后进入残差组,残差组中包含三个相同的残差网络。
残差组的输出经过一个步长为 2 的卷积层,其输出层数为 32,之后进入密集特征融合模块。
重复上述步骤,即残差组到步长为 2 的卷积层到密集特征融合模块,每经过一个步骤,其分
辨率减半,通道数加倍。将𝐺>=+ 模块中的最上层的输出输入到𝐺A@B 模块,输入首先乘以 2,融
合经过残差网络,将残差网络的输出加上模块输入乘以 2 减去模块输入,作为𝐺A@B 模块的最
终 输 出 输 入 到 𝐺?@+ 模 块 。 在 𝐺?@+ 模 块 中 , 依 次 经 过 多 个 步 长 为 2 的 反 卷 积 和 SOS
(Strengthen-Operate-Subtract)增强模块,最终直接得到无雾图像。MSBDN 的去雾效果图如
图 2.4 所示。

11
南京邮电大学硕士研究生学位论文 第二章 图像去雾相关技术分析

(a)有雾图像 (b)DCP[23] (c)DehazeNet[33] (d)MSBDN[42]

图 2.4 典型去雾算法去雾效果图

从图 2.4 中可以看出,基于深度学习的端到端的图像去雾方法 MSBDN[42]要好于其它两


种去雾方法,恢复的无雾图像不存在明显的颜色失真问题,但是仍有部分不足。如图 2.4(d)
的天安门图像的天空区域存在颜色失真的问题以及图 2.4(d)的第四行存在去雾不彻底的问
题。基于以上分析,本文将继续对基于深度学习的端到端的图像去雾方法进行深入研究。

2.3 常见的去雾算法客观评价指标

(1)峰值信噪比(Peak Signal to Noise Ratio,PSNR)


峰值信噪比经常用作图像质量评价的主要指标,它的定义基于均方误差(MSE)。给定
一幅大小为𝐻 × 𝑊的有雾图像𝐼和无雾图像𝐽,其均方误差定义为:
C
𝑀𝑆𝐸 = ∑D!C F!C G
<IJ ∑HIJ [𝐼(𝑖, 𝑗) − 𝐽(𝑖, 𝑗)] , (2.9)
D∗F

其中,𝐼(𝑖, 𝑗)为有雾图像在像素点(𝑖, 𝑗)处的像素值,𝐽(𝑖, 𝑗)为无雾图像在像素点(𝑖, 𝑗)处的像素值。


由公式(2.9)得到峰值信噪比的定义式如下:
(;(&8)" ;(&8
𝑃𝑆𝑁𝑅 = 10𝑙𝑜𝑔CJ 4 KL>
5 = 20 × 𝑙𝑜𝑔CJ ( ), (2.10)
√KL>

12
南京邮电大学硕士研究生学位论文 第二章 图像去雾相关技术分析
其中,𝑚𝑎𝑥𝐼为图像像素的最大值,若每个像素点用 8 位表示,其值为 255。公式(2.10)通
常用于计算灰度图像的 PSNR 值。对于彩色图像,分别计算每一通道的 PSNR 值,然后取平
均值为彩色图像的 PSNR 值。一般情况下,PSNR 的值越大,说明图像质量越好。
(2)结构相似性(Structural Similarity,SSIM)[51]
SSIM 是一种衡量两幅图像相似度的指标。在作为去雾评价指标时,一般一幅为经过算法
去雾后的图像,另一幅为对应的原无雾图像。一般情况下,SSIM 的值越大,说明恢复的无雾
图像保留的结构信息越多、质量越好。两幅图像的相似度主要基于图像的结构、亮度以及对
比度三个方面进行评判。
GN N O+
# $ %
𝑙(𝐼, 𝐽) = N " ON " O+
, (2.11)
# $ %

GP# P$ O +"
𝑐(𝐼, 𝐽) = P# " O P$ " O +"
, (2.12)
P O+
𝑠(𝐼, 𝐽) = P #$ &
P O+
, (2.13)
# $ &

其中,公式(2.11)为图像𝐼和图像𝐽的亮度相似度计算公式,𝜇8 为图像𝐼像素值的均值,𝜇: 为

图像𝐽像素值的均值;公式(2.12)为图像𝐼和图像𝐽的对比度相似度计算公式,𝜎8 为图像𝐼像素

值的方差,𝜎: 为图像𝐽像素值的方差;公式(2.13)为图像𝐼和图像𝐽的结构相似度计算公式,𝜎8:

为图像𝐼和图像𝐽像素值的协方差。𝑐C 、𝑐G 和𝑐Q 均为常数,其中,𝑐C = (𝑘C 𝐿)G , 𝑐C = (𝑘G 𝐿)G , 𝑐Q =


𝑐G ⁄2,𝐿为像素值的范围,𝑘C = 0.01,𝑘G = 0.03,为默认值。由以上公式得到 SSIM 的定义式
为:
(GN N O+% )(GP#$ O+" )
𝑆𝑆𝐼𝑀(𝐼, 𝐽) = 𝑙(𝐼, 𝐽)𝑐(𝐼, 𝐽)𝑠(𝐼, 𝐽) = (N " ON# " O+
$
"O P "O + )
, (2.14)
# $ % )(P# $ "

(3)特征相似性(Feature Similarity,FSIM)[52]
FSIM 为 SSIM 的变种。研究发现,
人类感觉到的图像特征总是位于相位一致性高的点上。
因此,特征相似性选取相位一致性作为第一特征。同时,由于相位一致性无法体现对比度的
好坏,而对比度的好坏将影响图像质量,所以将梯度特征作为第二特征。相位一致性的表达
式如下:
GRS# (&)∙RS$ (&)OT%
𝑆RS (𝑥) = RS#" (&)O RS$" (&)O T%
, (2.15)

其中,𝑃𝐶8 (𝑥)和𝑃𝐶: (𝑥)为图像𝐼和图像𝐽的相位一致性的值,可参考文献[53]计算得出,𝑇C 为常

量。对于梯度特征的计算,有如下公式:
GUK# (&)∙UK$ (&)OT"
𝑆UK (𝑥) = UK#" (&)O UK$" (&)O T"
, (2.16)

13
南京邮电大学硕士研究生学位论文 第二章 图像去雾相关技术分析

其中,𝐺𝑀8 (𝑥)和𝐺𝑀: (𝑥)为图像𝐼和图像𝐽的梯度特征值,可通过 Sobel、Prewitt 等算子计算得

出,𝑇G 为常量。将公式(2.15)和公式(2.16)结合,得到相似性参数:

𝑆V (𝑥) = [𝑆RS (𝑥)]W ∙ [𝑆UK (𝑥)]" , (2.17)

其中,𝛼和𝛽为权重参数,一般为 1。由上述推导,得到 FSIM 的定义式为:


∑(∈* L' (&)∙RS(&)
𝐹𝑆𝐼𝑀 = , (2.18)
∑(∈* RS(&)

其中,𝑃𝐶(𝑥) = 𝑃𝐶8 (𝑥) ∙ 𝑃𝐶Y (𝑥),Ω为图像的空域。

2.4 本章小节

本章主要介绍了一些图像去雾的相关基础理论,首先分析了雾霾天气下的成像原理以及
大气散射模型公式,然后着重介绍了几种不同类型的典型去雾算法,最后介绍了关于图像去
雾算法的客观评价指标。通过本章的分析,为接下来进行去雾工作奠定了良好的基础。

14
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法

第三章 基于高分辨率网络的图像去雾算法

针对当前基于深度学习的非端到端去雾算法中存在的参数估计不准确的问题和基于深度
学习的端到端去雾算法中存在的图像空间信息保留的问题,本文在 HRNet[47]的基础上做出一
个简单且有效的改进,并将改进后的网络模型 DeHRNet 用于图像去雾。DeHRNet 在完成去
雾的同时保留了图像的细节,便于后续高级别图像处理工作的进行。本文首先深入分析当前
基于深度学习的去雾算法存在的问题,然后详细阐述 DeHRNet 模型的网络架构和参数,最后
采用 RESIDE[54]数据集上对本文所提网络模型进行训练和测试,并通过主观和客观两个方面
对 DeHRNet 进行评判,验证其有效性。

3.1 问题分析

在 1.2 节中提到,基于深度学习的非端到端去雾算法中,多数采用卷积神经网络对有雾
图像的场景透射率进行估计,而由于网络训练集多数为根据大气散射模型公式合成的有雾/
无雾图像对且训练集图像场景较为单一,所以其训练好的网络在对真实的有雾图像进行去雾
时很难取得令人满意的效果。此外,由于网络架构本身的局限性,可能对一些场景下有雾图
像的透射率估计存在偏差,进而影响去雾的效果。在基于深度学习的端到端的去雾算法中,
更大的感受野可以提取图像中更多的信息,从而对图像整体以及临近的像素点间的关系特征
进行更好的提取,以便更好的预测无雾图像。多数端到端的图像去雾网络采用 U-Net[43]架构,
如图 3.1 所示,其采用下采样的方式增大感受野,但是这样会导致图像细节以及整体空间信
息的损失,而仅仅通过上采样的方式,即从低分辨率特征图中恢复高分辨率表示,很难从中
恢复这些有用信息,存在图像空间信息保留的问题,影响后续对于图像的进一步处理。特别
是近年来,随着计算机视觉的落地应用,目标检测、图像分割等高级别的图像处理工作应用
到人们的日常生产和生活中。这些后续的图像处理任务主要是根据输入图像中的信息从而作
出相应的判断和决定。如果在图像的前期处理中使图像丢失必要的信息,那么必然影响后续
对图像的高级别处理工作。为了解决上述提到的下采样导致图像信息丢失的问题,有学者提
出增大卷积核的尺寸的解决办法,但随之带来的是计算量的增加,使其很难应用于对时效性
要求比较高的场景。同时,又有学者提出了扩张卷积[55]的方法,扩张卷积就是在标准的卷积
核上加入间隔,间隔越大意味着其卷积核的尺寸越大,所以其感受野就越大。由于间隔的存
在,在增大感受野的同时并不会导致计算量的增加,但问题是,当原卷积核两点间的间隔比
较大时,会导致输出之间没有相关性,从而产生网格伪影问题。
15
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法

图 3.1 U-Net 架构

针对以上提到的问题,本文提出一种基于高分辨率网络的去雾模型 DeHRNet。本文主要
贡献如下:
(1)提出 DeHRNet 去雾模型。网络从一个高分辨率的分支作为第一阶段开始,在每个
阶段逐步添加一个新的低分辨率分支,并将多个分辨率不同的分支并行连接且在每个阶段的
末尾进行多尺度融合,在增大网络感受野的同时,有效避免了图像空间信息的损失。此外,
本文在原网络的基础上增加了一个新的阶段,使其更好地用于图像去雾工作。新增阶段通过
上采样收集网络最后阶段所有分支的特征图以增强高分辨率表示,而不是仅使用来自高分辨
率分支的表示,这使得恢复的无雾图像更加自然。
(2)DeHRNet 是一个端到端的图像去雾模型,而不是像早期基于深度学习的图像去雾
算法采用卷积神经网络对图像的场景透射率进行估计,有效避免了由于参数估计不准确而导
致的去雾效果不佳的问题。
(3)本文采用 RESIDE[54]数据集来训练和测试所提出的 DeHRNet 去雾模型,并采用客
观评价指标峰值信噪比(Peak Signal to Noise Ratio,PSNR)和结构相似性(Structural Similarity,
SSIM)[51]来验证本文所提算法的在合成有雾图像上的去雾效果,并通过分析来评价所提算法
在真实有雾图像上的去雾表现。最终结果表明,本文所提算法在合成有雾图像和真实有雾图
像上均取得良好的去雾效果。

3.2 高分辨率网络架构及其特性

在图 3.1 中,网络由多个分辨率不同的分支并行连接而成,其中每个分支由一系列卷积
组成。同时,下一个分支由上一个分支通过下采样得到,这会使特征图分辨率减半。相反,
HRNet 在整个过程中一个分支保持着分辨率不变,如图 3.2 所示。网络从高分辨率的分支开

16
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法
始,逐步增加高分辨率到低分辨率的分支,形成多个阶段,并将不同多分辨率的分支并行连
接。通过以上连接方式使得网络不是通过上采样的方式恢复到与输入图像分辨率相同进而得
到无雾图像。

图 3.2 HRNet 结构主体


为了更清楚的解释 HRNet 中不同阶段和分支间的关系,给出以下公式:
𝐹 → 𝐹CC → 𝐹GC → 𝐹QC → 𝐹ZC
↘ 𝐹GG → 𝐹QG → 𝐹ZG
(3.1)
↘ 𝐹QQ → 𝐹ZQ
↘ 𝐹ZZ ,

其中,𝐹为输入特征图,𝐹<H 为第 i 阶段、第 j 个分支的特征图,向下的箭头为下采样,之后会

产生一个新的分辨率分支,横着的箭头代表其分辩率保持不变。

图 3.3 第三阶段特征融合示意图

图 3.1 在进行特征融合时,是对两个来自网络不同阶段和深度的特征图进行融合。而在
HRNet 中,在每个分支引入交换单元,使每个分支重复接受来自其他分支的信息,从而产生
丰富的高分辨率表征。同时,所进行特征融合的特征图来自网络相同的阶段和深度。图 3.3
为第三阶段特征融合示意图,图中的上采样为最邻近抽样,经过上采样后,再利用卷积核大
小为1 × 1的卷积来使得上采样后的通道数和对应的高分辨率分支的通道数一致。对于下采样,
采用步长为 2 且卷积核大小为3 × 3的卷积。同时,通过调整卷积核的个数,使得输出特征图
通道数变为原来通道数的二倍。

17
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法
以上简单介绍了 HRNet 的特性,由于网络具有高分辨率分支并行连接和多尺度融合的特
点,HRNet 在人体姿态识别上取得了不错的效果,下面将介绍本文将其改进并应用到图像去
雾的具体过程。

3.3 基于高分辨率网络的图像去雾算法框架

在本小节中,首先介绍本文所提去雾算法的整体步骤、对原始网络的改进后的网络详情,
最后将介绍 DeHRNet 的参数设置和训练过程。

3.3.1 算法步骤

输入端输入有雾图像,经过训练好的网络模型后,输出端得到无雾图像。具体的算法整
体步骤如下,如图 3.4 所示:
步骤 1:获取 RESIDE[54]数据集 OTS 中的图像作为训练集;
步骤 2:构建 DeHRNet 去雾网络模型;
步骤 3: 构建损失函数并初始化网络参数,通过反向传播更新网络参数使得损失函数最小,
训练一定轮次后得到训练好的去雾网络模型;
步骤 4:将有雾图像输入到训练好的去雾网络模型,从输出端直接得到无雾图像。

图 3.4 算法整体步骤图

在 HRNet 的基础上,本文提出了一个端到端的图像去雾模型 DeHRNet,用于图像去雾工


作。HRNet 总共分为四个阶段,网络中一个新的并行的低分辨率分支在上一阶段的基础上产
生,其分辨率为之前最低分辨率分支的一半,但是特征图通道数加倍。在本文中,在网络第
四阶段后新增一个阶段,即第五阶段,用于将之前所有低分辨率分支的特征图通过上采样的

18
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法
方式变换到和高分辨率分支的分辨率一致,再进行特征融合,而不是像在 HRNet 中仅仅使用
来自高分辨率分支的特征图。之后再次通过上采样得到最终的无雾图像。本文这样做的原因
是为了产生丰富的分辨率表示,以使得恢复的无雾图像更加清晰自然。网络的总体架构如图
3.5 所示。

图 3.5 DeHRNet 架构图

输入有雾图像首先经过两个步长为 2 的3 × 3的卷积进行预处理,主要用于浅层特征提取
和减少后续过程的计算量,之后进入网络的第一阶段。在此之后,网络在每个阶段均会在前
一阶段的基础上产生一个新的低分辨率分支。为了后续更好的介绍网络的具体细节,特在此
说明,除上采样卷积核的大小为1 × 1外,其余卷积核大小均为3 × 3;除下采样使用的卷积步
长为 2 之外,其余卷积步长均为 1。

图 3.6 网络第二阶段结构示意图

由于网络的第一、二、三、四阶段网络的结构大致相似,所以本文以网络第二阶段为例
进行说明。网络第二阶段的详细示意图如图 3.6 所示,每个阶段主要有残差模块、特征融合

19
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法
模块和转换模块组成,残差模块的输出与特征融合模块相连,特征融合模块的输出作为转换
模块的输入。其中,图 3.6 中左侧的高分辨率分支和低分辨率分别来自于网络第一阶段的输
出。网络第二阶段的具体参数见表 3.1。接下来的部分将详细介绍各个模块及其作用。

表 3.1 网络第二阶段具体参数设置
类型 输入图像的通道数 卷积核大小(k*k) 卷积核个数 步长
Conv1 32 3×3 64 2
Conv2 64 1×1 32 1
Conv3 64 3×3 128 2

残差模块由四个残差网络(Residual Block)[56]组成,网络第一阶段的残差结构如图 3.7


左图所示,其由两个1 × 1的卷积,一个3 × 3的卷积和一个跳层连接组成,卷积步长均为 1;
网络第二、三、四阶段的残差结构如图 3.7 右图所示,其由两个3 × 3的卷积核一个跳层连接
组成,卷积步长均为 1。理论上讲,网络越深其参数越多,对于最终结果的拟合会更好。但
网络越深,随之而来的不仅仅是训练时间变长,梯度消失和梯度爆炸的现象也会随之产生,
使训练结果还不如浅层网络。由于 DeHRNet 是通过多个阶段并行添加分支来实现高分辨的同
时提取特征,这样就不可避免的使网络变深,所以在网络的每个阶段使用残差结构来提取和
传递特征, 通过此来避免上述问题。其中,第一阶段的残差结构主要用于浅层特征提取和通
道数的改变。网络第二、三、四阶段的残差结构用于特征提取和传递。此外,同一分支四个
残差结构的卷积核的个数相同。
特征融合模块包括上采样和下采样。在上采样过程中,首先通过最近邻插值法将其转换
为相同分辨率,然后将得到的特征图通过一个1 × 1的卷积使两个分支特征图的通道数一致,
最后将两个分支的特征图相加。为了更好理解最邻近插值,给出如下公式:
B)+F
𝑠𝑟𝑐𝑋 = 𝑑𝑠𝑡𝑋 ∗ ($B[F), (3.2)
B)+D
𝑠𝑟𝑐𝑌 = 𝑑𝑠𝑡𝑌 ∗ ($B[D), (3.3)

假设图像的左上角为坐标轴原点,其中,𝑠𝑟𝑐𝑊为原图像的宽度,𝑠𝑟𝑐𝐻为原图像的高度,𝑑𝑠𝑡𝑊
插值后图像的宽度,𝑑𝑠𝑡𝐻为插值后图像的高度,(𝑠𝑟𝑐𝑋,𝑠𝑟𝑐𝑌)为原图像某点坐标,(𝑑𝑠𝑡𝑋,
𝑑𝑠𝑡𝑌)为插值后对应的坐标。根据公式(3.2)和(3.3),可以得到插值后图像在点(𝑑𝑠𝑡𝑋,
𝑑𝑠𝑡𝑌)的像素值为原图像点(𝑠𝑟𝑐𝑋,𝑠𝑟𝑐𝑌)的像素值。
在下采样过程中,首先将高分辨率分支的特征图通过步长为 2 的3 × 3卷积,将其转化为
与低分辨率分支具有相同分辨率和相同通道数的特征图,最后将两者相加。通过上述上采样

20
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法
和下采样,完成了不同分辨率分支间的特征融合,有利于不同分支之间将学习到的信息进行
交流。

图 3.7 残差结构示意图

最后一个模块为转换模块。通过转换模块,使得网络在上一个阶段的基础上新增一个分
辨率分支,且新增分支的分辨率为上一阶段低分辨率分支特征图分辨率的一半,通道数为其
二倍。在图 3.5 的转换模块,通过一个步长为 2 的3 × 3卷积,使得新增的分支分辨率为原分
支分辨率的一半,同时通过改变卷积核的个数,将新增分辨的特征图的通道数为原通道数的
二倍。为了更加详细和通用的说明,给出如下公式:

𝐹< = 𝑅𝑒𝑙𝑢m𝐵𝑁(𝐶𝑂𝑁𝑉(𝑋)=G )q, (3.4)

其中,𝐹< 为第𝑖阶段新增分辨率分支的特征图,𝑅𝑒𝑙𝑢为激活函数,𝐵𝑁为批量标准化,𝐶𝑂𝑁𝑉为
卷积核大小为 3 的卷积且步长为 2,𝑛为卷积核的个数。

21
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法

图 3.8 网络比较

本文在原有的 HRNet 上增加了一个新的阶段,使其更好地用于图像去雾工作。在原始网


络中,只有来自高分辨率分支的特征图被视为输出结果,如图 3.8 的左图所示。这意味着来
自低分辨率分支的特征图会被丢失。本文作出了一个简单且有效的修改,将来自低分辨率分
支的特征图和高分辨分支的特征图进行融合,以此来充分利用不同分辨率分支所提取的特征
信息,从而产生一个丰富的高分辨率表示。如图 3.8 右图所示。本文首先采用双线性插值将
低分辨率分支的特征图重新缩放到高分辨率,再通过改变卷积核个数的方式使低分辨率特征
图的分辨率和高分辨率特征图的通道数保持一致。双线性插值的前提是已知图像中四个点的
像素值,根据此四个点的像素值向图像中插入一个新的像素点。由于双线性插值考虑到了图
像中的四个点的像素值,所以其计算相比最邻近插值更复杂,但是其效果更好。考虑到在此
阶段后要输出去雾后的无雾图像,对结果有较高的要求,所以在此处选择双线性插值。而在
网络的前面阶段,由于主要是利用神经网络对特征进行提取,所以选择了较为计算较为简单
的最邻近插值。然后,本文再次通过双线性插值将特征图重新缩放到与输入有雾图像的尺寸
大小一致,从而直接获得经过网络去雾后的无雾图像。虽然计算量略有增加,但最终的去雾
效果更加自然。

3.3.2 网络训练及参数设置

在 DeHRNet 的模型训练过程中,本文通过将网络预测得到的无雾图像和真实的无雾图像
之间的差距最小化来训练网络。本文采用 L_2 函数作为网络训练的损失函数,其表达式如下:
C
𝐿G = \ ×D×F ∑\ ∗ G
<IC ||𝐽< − 𝐽< || , (3.5)

其中,𝐽<∗ 是由网络估计得到的无雾图像,𝐽< 是真实的无雾图像,𝐻和𝑊分别为图像的高度和宽


度,𝑁是一个批次图像的数量。
22
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法
本文网络的实现使用深度学习框架 Pytorch,操作系统为 Ubuntu18.04。输入网络的有雾
图像尺寸大小为550 × 400。设置 batchszie 为 12,训练迭代次数为 484 次,网络的初始学习
率为 0.0001,使用随机梯度下降算法(Stochastic Gradient Descent,SGD)来优化网络参数,
使用 NVIDIA GeForce RTX 3090 对网络进行训练。

3.4 实验结果与分析

在本节中,将首先介绍使用的数据集,然后将本文所提去雾算法与其他主流去雾算法在
合成有雾图像、真实有雾图像和单幅图像去雾时间三个方面进行对比,其他主流方法包括:
基于物理模型的去雾算法中的 DCP[23] 和 CAP[24] ,以及基于深度学习的去雾算法中的
DehazeNet[33],AOD-Net[37],MSBDN[42]以及 DA-dahazing[44]。

3.4.1 实验数据

在深度学习的训练过程中,网络训练的好坏很大程度上取决于训练集的质量,然而很难
获取得到真实的有雾/无雾图像对。早期人们使用 NYU 数据集作为训练集。由于 NYU 数据
集包含真实的无雾图像及其对应的场景深度,所以可以通过大气散射模型公式来人工合成数
据集中无雾图像对应的有雾图像。但由于 NYU 数据集只包含室内图像,不包含室外图像,
且根据大气散射模型公式合成的有雾图像相较于真实有雾图像在很大程度上是不同的,所以
后期网络的训练效果不佳。文献[54]中提出了 RESIDE 数据集。RESIDE 数据集由五个子数据
集组成:室外训练集(Outdoor Training Ser,OTS)、室内训练集(Indoor Training Set,ITS)、
客观测试集(Synthetic Objective Test Set,SOTS)、混合主观测试集(Hybrid Subjective Test Set,
HSTS)和真实测试集(Real-World Task-Driven Test,RTTS)。OTS 包含 2061 张来自北京实
时天气的真实室外无雾图像,根据大气散射模型公式,其中,全局大气光值设置在[0.8,1.0]
之间,大气散射系数设置在[0.6,1.8]之间,合成了 72135 张有雾图像,即一张无雾图像对应
35 张雾浓度不同的有雾图像。
ITS 包含 1399 张室内无雾图像和 13990 张合成的室内有雾图像。
SOTS 包含了从 NYU 数据集中选取的 500 张室内图像(与 ITS 中的无重复)合成的有雾图像
以及 500 张室外合成有雾图像。HSTS 包含 10 张真实的和 10 张合成的室外有雾图像,用于
室外去雾效果测试。RTTS 中包含 4322 张真实的室外无雾图像。RESIDE[54]数据集的部分有
雾图像如图 3.9 所示。

23
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法

图 3.9 RESIDE[54]数据集有雾图像示例图

在本文中,使用 RESIDE[54]数据集中的 OTS 子集来对所提的去雾模型进行训练,从数据


集中每一张无雾图像对应的有雾图像中随机选取一张组成有雾/无雾图像对,训练集中共包含
2061 对图像。将 SOTS 子集中的合成室外测试集用于测试。此外,本文挑选了几张常用于做
主观去雾评价的真实有雾图像,用于对本章所提去雾算法进行主观评价。本文将在接下来的
小节对本文所提的去雾算法和其他的去雾算法做具体比较分析。

3.4.2 在合成有雾图像测试集上的实验结果与分析

为了验证本文所提去雾模型 DeHRNet 的有效性,本文在 RESIDE[54]数据集 SOTS 子集中


的有雾图像进行了实验,并对比分析本文所提算法与主流去雾算法在有雾图像去雾上的去雾
效果,所有算法的输入图像均为 RESIDE 数据集 SOTS 子集中的不同场景下的室外合成有雾
图像。
图 3.10 为不同去雾算法在 RESIDE[54]数据集 SOTS 子集的室外合成数据集上的去雾结果。
从图 3.10 中可以看出,DCP[23]主要的问题在于恢复的无雾图像会有明显的颜色失真,特别是
在天空部分,其主要原因是因为暗通道先验在天空区域不适用。CAP[24]存在的主要问题是去
雾不彻底,如图 3.10(c)的第三行。DehazeNet[33]对于图像中的薄雾处理不错,但是当图像
中的雾霾较浓时,其恢复的无雾图像存在明显的颜色失真问题,且图像整体偏暗。AOD-Net[37]
也存在去雾不彻底的问题,如图 3.10(e)的第二、四行。MSBDN[42]相较于之前几种去雾算
法,其表现较好,但是其在图像远景存在雾霾时去雾效果不佳,如图 3.10(f)的第一行。
DA-dahazing[44]恢复的无雾图像相对于真实无雾图像来说整体偏亮,如图 3.10(g)的第一、
四行,且在图 3.10(g)的第四行的天空部分存在颜色失真问题。总的来说,本文所提去雾算
法在主观评价下的薄雾浓雾、近景远景场景下均能取得令人满意的去雾效果,去雾后的图像
与原无雾图像更加相近、更加自然。

24
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法

(a)有雾图像 (b)DCP[23] (c)CAP[24] (d)DehazeNet[33]

(e)AOD-Net[37] (f)MSBDN[42] (g)DA-dahazing[44] (h)本文算法

图 3.10 不同去雾算法在合成数据集上的去雾效果

25
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法
表 3.2 展示了不同去雾算法在客观评价指标上的差异。从表 3.2 中可以看出,本文所提去
雾算法在两个客观评价指标中均优于多数去雾算法,这也从客观上证明了本文所提去雾算法
的有效性。虽然本文所提算法在两个客观评价指标上要比 MSBDN[42]差,但本文算法在真实
图像上的去雾效果要优于 MSBDN,而且本文所提算法的单幅图像去雾时间要快于 MSBDN。
此外,相较于原网络,本文改进后的去雾算法在两个指标上均有明显的提升。为了更加直观
的感受本文所提去雾算法的去雾效果,在本节接下来的部分将给出本文所提算法在真实有雾
图像上的去雾效果。
表 3.2 本章算法和其他算法在合成图像上去雾结果客观指标上的对比

算法 评价指标

PSNR SSIM[51]

DCP[23] 16.94 0.8548

CAP[24] 22.30 0.9053

DehazeNet[33] 22.31 0.6828

AOD-Net[37] 19.58 0.8390

MSBDN[42] 30.61 0.9396

DA-dahazing[44] 22.84 0.8845

原网络 20.97 0.7523

本文算法 23.15 0.8013

3.4.3 在真实有雾图像测试集上的实验结果与分析

为了验证本文所提去雾算法在真实有雾图像上的有效性,本节选取几幅典型的真实世界
的有雾图像进行实验,并与主流去雾算法 DCP[23] 、CAP[24] 、DehazeNet[33] 、AOD-Net[37] 、
MSBDN[42]以及 DA-dahazing[44]进行比较,具体如图 3.11 所示。真实有雾图像在真实雾霾天
气下拍摄得到,而不是人工合成的有雾图像,其雾的浓度在整个图像中分布不均、有很大的
不确定性,所以对于真实图像去雾效果的好坏更具说服力。在图 3.11 中,DCP[23]由于先验知
识的适用性,其在天空部分的去雾效果不佳,如图 3.11(b)中第二行的天空部分存在明显的
颜色失真问题,且去雾后的图像对比度较高、整体偏暗,如图 3.11(b)中第一、四、行。
CAP[24]算法中,去雾后的图像偏亮且存在去雾不彻底的问题,如图 3.11(c)中第三、四行。
以上两种去雾算法是基于先验知识的,但是先验知识存在在某些场景下不适用的问题,而本
文所提去雾算法是基于深度学习的去雾算法,所以不存在以上问题,对多数场景下对有雾图

26
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法
像均能取得不错的去雾效果。DehazeNet[33]去雾后的图像存在明显的颜色失真和细节丢失等问
题,如图 3.11(d)中第二行前面的花坛部分,其颜色较浅。在 AOD-Net[37]算法中,其去雾
后的图像对比度较高、整体偏暗,如图 3.11(f)中的第三、四行。以上两种去雾算法是基于
深度学习对参数进行估计的算法,但由于网络架构和公式的合理性问题,其在某些场景下存
在参数估计不准确的问题,而本文所提去雾算法是基于深度学习的端到端的去雾算法,不对
任何公式参数进行估计,所以不存在以上问题。基于深度学习的端到端的去雾算法
DA-dahazing[44]去雾后的图像整体偏亮且存在部分颜色失真的问题,如图 3.11(g)的第一行
的远处、第二行的天空部分以及第四行的体育场部分,其恢复的图像不符合人类的视觉要求。
相对来说,本文所提去雾算法恢复的无雾图像更加清晰自然、符合人类视觉要求。综上,本
文所提算法在真实有雾图像中也能取得不错的去雾效果。

(a)有雾图像 (b)DCP[23] (c)CAP[24] (d)DehazeNet[33]

27
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法

(e)AOD-Net[37] (f)MSBDN[42] (g)DA-dahazing[44] (h)本文算法

图 3.11 不同去雾算法在真实有雾图像上的去雾效果

3.4.4 单幅图像去雾时间分析

在 1.1 节中提到,对有雾图像进行去雾的主要目的是将去雾后的无雾图像输入到高级别
的图像处理任务中,因此,对于单幅图像去雾所需的时间具有较高的要求。在本小节中,将
对几种基于深度学习的去雾算法单幅图像的去雾时间进行比较分析,具体结果如表 2.3 所示。
所有输入图像均来自 RESIDE[54]数据集 SOTS 子集室外测试集,除了 DA-dahazing[44](输入图
像尺寸大小为640 × 480)、MSBDN[42](由于网络原因,输入图像的宽度和高度均需要被 16
整除,本文输入的图像尺寸大小为608 × 448)外,其他网络输入图像的尺寸大小均为
550 × 400。除 DehazeNet 的实现框架为 Caffe 外,其他基于深度学习算法的实现框架均为
Pytorch。本小节首先计算数据集所有图像的去雾时间,包括模型的加载时间以及图像处理的
时间,然后除以图像的总数得到单幅图像的去雾时间。从表 3.3 中可以得知,虽然改进后的
网络参数变多,但本文所提去雾算法的单幅图像去雾时间优于 DehazeNet[33]、AOD-Net[37]和
MSBDN[42] 。由于本文所提网络模型层数较多、网络较深,所以单幅图像去雾时间次于
DA-dahazing[44],但本文算法在 PSNR 指标上要优于 DA-dahazing。

28
南京邮电大学硕士研究生学位论文 第三章 基于高分辨率网络的图像去雾算法

表 3.3 不同去雾算法的单幅去雾时间对比

算法 DehazeNet[33] AOD-Net[37] MSBDN[42] DA-dahazing[44] 本文算法

时间(s) 4.93 3.24 0.47 0.17 0.40

3.5 本章小结

本文针对基于深度学习非端到端的去雾算法存在参数估计不准确的问题以及基于深度学
习端到端的去雾方法存在图像空间信息损失的问题,提出一种基于高分辨率网络的图像去雾
模型 DeHRNet。网络从一个高分辨率的分支作为第一阶段开始,在每个阶段逐步添加一个新
的低分辨率分支,并将多个分辨率不同的分支并行连接且在每个阶段的末尾进行多尺度融合,
在增大网络感受野的同时,有效避免了图像空间信息的损失。此外,本文通过上采样收集网
络最后阶段所有分支的分辨率表示以增强高分辨率表示,而不是仅使用来自高分辨率分支的
表示,这使得恢复的无雾图像更加自然。本文利用 RESIDE[54]数据集中的图像对 DeHRNet 进
行训练和测试。此外,为了证明本文所提去雾算法的有效性,针对合成的有雾图像测试集,
采用客观和主观的方式对去雾效果进行评价;针对真实的有雾图像,采用主观方式对去雾效
果进行评判。最终,从 3.4 节的实验结果和分析来看,本文所提算法在合成数据集和真实数
据集上均取得不错的去雾效果。此外,原网络以及改进后的网络参数较多,在未来的研究中,
可以通过一些方法将网络轻量化。例如,可以使用深度可分离卷积或者空洞卷积来替换网络
中的普通标准卷积以此来减少网络参数,进一步提升网络的性能。

29
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法

第四章 基于深度跨尺度融合网络的快速图像去雾算法

本文提出一种基于深度跨尺度融合网络[48]的端到端的轻量级图像去雾模型和一种新的有
雾图像表示模型,以解决基于深度学习的端到端的去雾网络模型参数过多以及针对雾浓度分
布不均匀情况下存在去雾不彻底或去雾过度的问题。本文所提网络基于深度跨尺度融合网络
DCSFN。针对 DCSFN 存在的问题和网络具体到去雾的应用,本文对原网络做了一些改进,
将在接下来的部分具体说明。本文首先介绍了当前主流去雾算法存在的问题,然后介绍了
DCSFN 网络的特性,之后详细介绍了本文对原网络的改进以及训练参数设置。同样地,本文
也利用 RESIDE[54]数据集对所提网络进行训练和测试,并通过主观和客观两个方面对本文所
提去雾算法进行评判,验证其有效性。

4.1 问题分析

在 1.2 节中提到,基于深度学习的端到端的去雾算法中,多数算法通过网络模型直接获
取去雾后的图像,其本质上是传统图像增强技术的集合体,在雾浓度分布不均匀的情况下,
存在去雾过度或去雾不彻底的问题。此外,在 1.1 节中提到,对有雾图像进行去雾的主要目
的是将去雾后的无雾图像输入到高级别的图像处理任务中,所以对于图像去雾的实时性也有
着较高的要求。然而,多数基于深度学习的端到端的去雾算法为了达到理想的去雾效果,其
网络模型层数较多、参数较多,导致其去雾的速度较慢,影响后续的图像处理任务。
针对以上问题,本文在 DCSFN 的基础上,提出一种基于深度跨尺度融合网络的快速图
像去雾模型 Light-DCSFN。本文主要贡献如下:
(1)本文提出一种新的模型来表示有雾图像,认为一张有雾图像由无雾图像和对应的雾
霾浓度图像组成,所以本文通过卷积神经网络对输入有雾图像的雾霾浓度图进行估计,而不
是直接通过网络模型获取无雾图像,其可以在雾浓度分布不均匀的情况下做出很好的去雾处
理。为了更好的预测雾浓度图,本文对 DCSFN 做出以下几点改进。
(2)为了更好的提取有雾图像 RGB 三通道的特征,本文在原有 DCSFN 网络的前面新
增加一个颜色特征提取模块,模块的输入为图像的 RGB 三通道图,主要用于提取不同通道的
浅层颜色特征;此外,为了更好地预测雾浓度图,本文用平均池化操作替换原有网络中的最
大池化操作。

30
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
(3)为了提高去雾的效率,本文利用深度可分离卷积(Depthwise Separable Convolution,
DS-Conv)[57]代替原有网络的普通标准卷积以提高去雾效率,以便可以更好地与后续图像处
理任务相结合。

4.2 DCSFN 架构及其特性

DCSFN[48]首次提出用于图像去雨工作,主要为了解决当前多数网络基于单一的网络结构
而不考虑跨尺度关系可能会导致信息丢失的问题。DCSFN 包含多个子网络结构,通过不同的
子网络来学习不同尺度的特征,然后通过门控循环单元(GRU,Gate Recurrent Unit)对不同
尺度间的特征信息进行融合。每个子网络中分别包括编码器模块和解码器模块两部分,编解
码器模块中包含多个编解码器,在编解码器的内部以及编解码器之间,通过跳跃连接的方式
来实现密集连接以实现特征传播和特征重用。输入图像在经过编解码器后,再经过一次特征
融合操作将不同子网络学习到的特征进行融合,然后预测得到对应的雨图,最后利用输入的
有雨图像减去预测得到的雨图即可得到去雨图像。图 4.1 为 DCSFN 的总体架构图。

图 4.1 DCSFN 网络架构图

如图 4.1 所示,输入图像首先经过3 × 3的卷积预处理后,通过最大池化操作(下采样)


将图像输入到尺度不同的子网络中。在每个子网络内部,其结构是相同的,均由编码器模块
和解码器模块组成,如图 4.2 所示,在编码器模块内部,不同编码器之间通过跳跃连接来实
现密集连接,解码器模块同理。此外,对应的编解码器之间也通过跳跃连接来实现密集连接。
密集连接[58]结构可以缓解梯度消失、增强特征传播、实现特征重用,以便更好的预测网络的
输出。同时密集连接也可以加快网络的训练速度。

31
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法

图 4.2 编解码器示意图

在每个编解码器的内部,也存在密集连接的尺度不同的分支,给出如下公式:

𝐹^> = 𝒯4ℱ(𝐶 [𝐹J> , 𝐹C> , ⋯ , 𝐹^!C


> ])
5, 𝑙 = 1,2, ⋯ , 𝐿, (4.1)

其中,𝐹J> 子网络第一个编码器的输入特征,𝐹^> 为第𝑙个编码器的输出,𝐶[∙]为将不同的特征在


通道数上进行统一的操作,ℱ[∙]为特征融合操作,采用的卷积核大小为1 × 1,𝒯[∙]为内部连接
模块,如图 4.3 所示。在一个编码器的内部,也分为尺度不同的分支,输入特征首先通过最
大池化操作获取多尺度特性形成多个分支,之后在每个分支经过多个卷积操作后,再经过跳
跃连接进行特征融合操作。

图 4.3 内部连接模块

综合以上分析可以得出,DCSFN 在网络中多次采用跳跃连接来实现密集连接,其本质上
是为了更好的预测雨图。受到其启发,本文在 DCSFN 的基础上,对其做进一步改进,以更
好的预测输入有雾图像的雾霾浓度图,从而将网络模型用于图像去雾工作。接下来将详细介
绍对 DCSFN 的改进工作。

4.3 基于深度跨尺度融合网络的快速图像去雾算框架

在本小节中,首先介绍本文对原始网络改进后的网络详情以及所提去雾算法的整体步骤,
最后将介绍 Light-DCSFN 的参数设置和训练过程。

32
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法

4.3.1 对原网络的改进

为了将 DCFSN 更好的用于图像去雾工作,本文对 DCSFN 做了一些改进,分为以下三个


方面:(1)在原网络前新增一个颜色特征提取模块,用于提取 RGB 三通道的颜色特征。(2)
根据图像中雾浓度变化大且雾所占区域较大的事实,用平均池化代替原网络的最大池化操作,
以便更好的预测雾霾浓度图。(3)为了提高网络的去雾效率,用深度可分离卷积代替原网络
不同子网络中的普通标准卷积。下面将对以上三种方法做详细分析。
(1)颜色特征提取模块

图 4.4 颜色特征提取模块示意图

在图 4.4 中,输入有雾图像首先通过分离得到其 RGB 三通道图(在网络中,三通道图均


为单通道的灰度图像,这里为了更加清楚的表示将其每个通道图恢复到了三通道),然后采
用普通标准卷积对其进行卷积操作,其公式可表示为:
𝐹+ = 𝑊 ∗ 𝐼 + + 𝐵, 𝑐 ∈ [𝑅, 𝐺, 𝐵], (4.2)
其中,𝐹+ 为某一通道图像经过卷积后输出的特征图,𝐼 + 为输入图像的某一通道矩阵,即𝑐为 RGB
三通道中的一个,𝑊和𝐵分别为卷积的权重系数矩阵和偏差矩阵,∗为卷积操作。此外,每个
卷积后会跟随一个线性修正单元Relu激活函数。之后会对三通道得到的特征图进行拼接,最
后在通过一个卷积进入改进后的 DCSFN 网络。颜色特征提取模块的具体参数如表 4.1 所示,
其卷积步长均为 1。

33
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
表 4.1 颜色特征提取模块具体参数

输入特征图尺寸 卷积尺寸
类型 卷积核个数
(C*H*W) (k*k*c)

Conv1 550*400*1 3*3*1 3

Conv2 550*400*1 3*3*1 3

Conv3 550*400*1 3*3*1 3

Conv4 550*400*9 3*3*9 3

本文最终需要通过网络来估计得到输入有雾图像的雾霾浓度图。通过将有雾图像分为
RGB 三通道图像后发现,其每个通道的图像均含有相应浓度的雾,如图 4.5 所示。在原图中
雾浓度强的地方,其 RGB 通道图像对应的雾浓度也强,如第一列的道路的尽头以及第二列中
图像的右边部分。基于以上分析以及为了估计得到更准确的雾霾浓度图,在原 DCSFN 网络
的前面新增加一个颜色特征提取模块,用于提取不同颜色通道图像的浅层雾霾浓度特征。

(a)原图 (b)R 通道 (c)G 通道 (d)B 通道

图 4.5 图像及其 RGB 三通道图

(2)平均池化与最大池化
池化主要具有降低冗余信息、降低计算量、防止过拟合等作用,平均池化和最大池化为
两种常见的池化操作。平均池化就是取图像中某一块的平均值作为下一层元素的一个值。为
了更好地理解平均池化,给出如下例子,其块大小设置为 2:
1 3 2 1
2 9 1 1 3.75 1.25
{ } ~ •, (4.3)
1 4 2 3 4 2
5 6 1 2
最大池化就是取图像中某一块的最大值作为下一层元素的一个值,具体如下所示:

34
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
1 3 2 1
2 9 1 1 9 2
{ } ~ •, (4.4)
1 4 2 3 6 3
5 6 1 2
由以上公式可得,平均池化提取特征图中的所有特征信息进入下一层,可以保留背景信息,
最大池化将特征图中特征最明显的部分信息进入下一层,可以保留主要特征。所以当特征图
中多数信息都比较有用时,选择平均池化;当特征图中只有部分信息比较有用时,选择最大
池化。本文考虑到一般在有雾图像中,雾霾多数可以构成一个区域而不像雨滴仅为图像中的
某一个点,所以本文提出将原网络中的最大池化操作换为平均池化,以更好地预测输入有雾
图像的雾霾浓度图。
(3)深度可分离卷积
深度可分离卷积首次在文献[57]中被提出,它分为逐通道卷积和逐点卷积,相比于普通标
准卷积,其只做了一个小的改动,但是网络参数数量明显下降,从而减少网络的计算量,提
高网络的效率。为了更好地解释深度可分离卷积的优势,首先介绍下普通标准卷积。如图 4.6
(a)所示,假设输入图像的尺寸大小为5 × 5 × 3,卷积核大小设为 3,输出特征图的通道数
假定为 4,那么根据普通标准卷积,则所需卷积核的个数为 4,且每个卷积核的通道数为 3。
所以,总共的参数数量为3 × 3 × 3 × 4 = 108。假设步长为 1 的情况下,若对输入特征图做了
填充处理(same padding),则输出图像的尺寸大小为5 × 5,若无填充处理,则输出特征图
大小为3 × 3。总的来说,普通标准卷积就是通过卷积核尺寸大小以及步长大小对上一层的特
征图进行尺寸调整,具体如下公式:
D+, OG∗a!*
𝐻_`[ = B
+ 1, (4.5)

其中,𝐻_`[ 为输出特征图的高度,𝐻<= 为输入特征图的高度,𝑝为填充大小,若无填充则为 0,


𝑘为卷积核大小,𝑠为卷积步长。对输出特征图宽度的求法同理。此外,输出特征图的通道数
等于卷积核的个数。
在深度可分离卷积中,首先对输入特征图进行逐通道卷积,如图 4.6(b)所示,可用公
式表示为:
𝐹[ = 𝑊C ∗ 𝐼 + 𝐵C , (4.6)
其中,𝐹+ 为经过逐通道卷积后输出的特征图,𝐼为输入的特征图, 𝑊C 和𝐵C 分别为逐通道卷积的
权重系数矩阵和偏差矩阵,∗为卷积操作。与普通标准卷积不同的是,逐通道卷积首先将输入
特征图分成单通道特征图,然后分别对其进行单通道卷积,这样每个卷积核的通道数都为 1。
在以上例子中,由于输入的特征图通道数为 3,所以所需通道数为 1、尺寸为 3 的卷积核个数

35
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
3 个。因此,逐通道卷积共需要参数个数为3 × 3 × 3 = 27。然后得到 3 个特征图,将这 3 个
特征图进行逐点卷积,如图 4.6(c)所示,可用公式表示为:
𝐹 = 𝑊G ∗ 𝐹[ + 𝐵G , (4.7)
其中,𝐹[ 为经过深度可分离卷积后的输出特征图,𝑊G 和𝐵G 分别为逐点卷积的权重系数矩阵和
偏差矩阵,∗为卷积操作。逐点卷积与普通标准卷积相似,卷积核的通道数要与输入特征图的
通道数一致,故卷积核的通道数为 3,但其卷积核大小为1 × 1。由此可知,在以上例子中,
当需要输出的特征图通道数为 4 时,需要卷积核的个数也为 4。因此,逐点卷积的参数个数
为1 × 1 × 3 × 4 = 12。综上,深度可分离卷积所需总的参数个数为27 + 12 = 39,相较于普
通标准卷积所需 108 个参数,其参数的数量大幅减少,所以其训练更快,网络效率更高。在
本文中,利用深度可分离卷积代替 DCSFN 子网络不同分支中的普通标准卷积,以使得对单
幅图像的去雾时间更短。

图 4.6 普通标准卷积与深度可分离卷积

除了以上所提三点之外,本文提出一种新的模型来表示有雾图像,即:

36
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
𝐼(𝑥) = 𝐽(𝑥) + 𝐻(𝑥), (4.8)
其中,𝐼(𝑥)为有雾图像,𝐽(𝑥)为对应的无雾图像,𝐻(𝑥)为对应的雾霾浓度图。本文根据改进
后的网络模型预测得到𝐻(𝑥),再利有雾图像𝐼(𝑥)减去预测得到的雾霾浓度图,即可得到无雾
图像𝐽(𝑥)。

4.3.2 算法步骤

输入端输入为有雾图像,经过训练好的网络模型后,输出端输出无雾图像。具体的算法
整体步骤如下,如图 4.7 所示:
步骤 1:获取 RESIDE[54]数据集 OTS 中的图像作为训练集;
步骤 2:构建 Light-DCSFN 去雾网络模型;
步骤 3:构建损失函数并初始化网络参数,通过反向传播更新网络参数使得损失函数最
小,训练一定轮次后得到训练好的去雾网络模型;
步骤 4:将有雾图像输入到训练好的去雾网络模型,从输出端直接得到无雾图像。

图 4.7 算法整体步骤图

本文所提的 Light-DCSFN 可分为两个部分,第一部分为颜色特征提取模块,该模块将输


入有雾图像映射到 RGB 三通道通过卷积神经网络提取不同颜色通道的浅层特征。第二部分为
改进后的 DCSFN 网络,即用深度可分离卷积代替原网络中的普通标准卷积,同时将原网络
中的最大池化替换为平均池化,详见 4.3.1 小节。通过以上两个模块,可以估计得到雾霾浓度
图,再根据公式(4.8)求得输入图像对应的无雾图像。为了和原网络保持一致以便于实验的
对比分析,本文也将改进后的 DCSFN 的子网络的个数设为 3,即存在 3 个尺度不同的子网络,
且每个子网络编解码器的个数设为 16,每个编解码器内部不同分支的个数为 3,每个分支卷
积的个数为 4,卷积核大小为 3,卷积步长为 1,池化操作的块大小为 3,网络的通道数设为

37
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
24,即经过卷积后的特征图的通道数为 24。网络中,除颜色特征提取模块所采用𝑅𝑒𝑙𝑢激活函
数外,其他均采用𝐿𝑒𝑎𝑘𝑦𝑅𝑒𝑙𝑢激活函数,其与𝑅𝑒𝑙𝑢激活函数的主要区别在于当横坐标的值小
于 0 时,函数值为负数,使得反向传播过程中,对于函数值输入小于零的情况,也可以计算
梯度,而不是像𝑅𝑒𝑙𝑢一样值为 0。下面将对算法的实验部分作详细阐述,并对去雾效果进行
比较分析。

4.3.3 网络训练及参数设置

在本文中,采用 SSIM 损失函数作为网络训练的损失函数,其表达式如下:


𝐿 = −𝑆𝑆𝐼𝑀(𝐽< , 𝐽<∗ ) (4.9)
其中,𝐽<∗ 是由网络估计得到的无雾图像,𝐽< 是真实的无雾图像,𝑖为第 i 张图像。
本文网络的实现使用深度学习框架 Pytorch,操作系统为 Ubuntu18.04。输入网络的有雾
图像尺寸大小为550 × 400。训练时,为了增强训练数据的多样性,对输入图像进行随机角度
翻转。设置 batchszie 为 32,训练迭代次数为 800 次,网络的初始学习率为 0.0005,在第 480
次和 640 次时除以 10,使用 Adam 算法[59]来优化网络参数,使用 NVIDIA GeForce RTX 3090
对网络进行训练。

4.4 实验结果与分析

在本小节中,将首先介绍使用的数据集,然后将本文所提去雾算法与其他主流去雾算法
在合成有雾图像、真实有雾图像和单幅图像去雾时间三个方面进行对比,其他主流方法包括:
基于物理模型的去雾算法中的 DCP[23] 和 CAP[24] ,以及基于深度学习的去雾算法中的
DehazeNet[33],AOD-Net[37],MSBDN[42]以及 DA-dahazing[44]。

4.4.1 实验数据

由 3.4.1 小节可知,RESIDE[54]数据集由五个子数据集组成:室外训练集(Outdoor Training


Ser,OTS)、室内训练集(Indoor Training Set,ITS)、客观测试集(Synthetic Objective Test
Set,SOTS)、混合主观测试集(Hybrid Subjective Test Set,HSTS)和真实测试集(Real-World
Task-Driven Test,RTTS)。本文使用 RESIDE 数据集中的 OTS 子集来对所提的去雾算法模
型进行训练,从数据集中每一张无雾图像对应的有雾图像中随机选取一张组成有雾/无雾图像
对,训练的图像对数为 2061 对。将 SOTS 子集中的合成室外测试集和 HSTS 子集中的真实室

38
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
外测试集用于测试。三种子集中的部分有雾图像如图 4.8 所示,其中第一行为 OTS 子集,第
二行为 SOTS 子集,第三行为 HSTS 子集。

图 4.8 RESIDE[54]数据集有雾图像示例图

4.4.2 在合成有雾图像测试集上的实验结果与分析

为了验证本文所提出的 Light-DCSFN 去雾模型的有效性,本章在 RESIDE[54]数据集 SOTS


子集中的有雾图像进行了实验,并对比分析本文所提算法与主流去雾算法在图像去雾上的效
果,所有算法的输入图像均为 RESIDE 数据集 SOTS 子集中的不同场景下的室外合成有雾图
像。本小节通过主观和客观两个方面来对不同的去雾算法进行比较分析,其中客观评价指标
包括 PSNR 和 SSIM[51]。表 4.2 为本文所提去雾算法与其他主流去雾算法在客观评价指标上的
对比。
从 2.3 小节中可知,客观评价指标 PSNR 和 SSIM[51]其值越大代表恢复的图像质量越好。
因此,由表 4.2 可知,基于深度学习的端到端的去雾算法 MSBDN[42]以及本文所提去雾算法
相对于基于深度学习的非端到端的去雾算法 DehazeNet[33]及 AOD-Net[37]、基于物理模型的去
雾算法 DCP[23]和 CAP[24]在客观指标上有较大的提升。本文所提算法在 SSIM[51]这个指标上优
于其他所有算法。由于本文所提算法为一个轻量级的去雾模型,所以在 PSNR 指标上次于
MSBDN[42]算法,但本文所提算法的网络模型要远远小于 MSBDN,可以用于嵌入式等系统。
此外,与原网络相比,本文改进后的算法在 PSNR 和 SSIM[51]两个指标上与原网络相比不相
上下,但是本文改进后的算法在单幅图像去雾时间以及网络模型大小和参数个数上均优于原
网络,本文将在接下来的部分详细介绍。

39
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法

表 4.2 本章算法和其他算法在合成图像上去雾结果客观指标上的对比

算法 评价指标

PSNR SSIM[51]

DCP[23] 16.94 0.8548

CAP[24] 22.30 0.9053

DehazeNet[33] 22.31 0.6828

AOD-Net[37] 19.58 0.8390

MSBDN[42] 30.61 0.9396

DA-dahazing[44] 22.84 0.8845

原网络 26.08 0.9465

本章算法 26.05 0.9431

图 4.9 为不同去雾算法在 RESIDE[54]数据集 SOTS 子集的室外合成数据集上的去雾效果。


从图 4.9 中可以看出,DCP[23]主要的问题在于恢复的无雾图像会有明显的颜色失真,特别是
在其天空部分,主要是因为暗通道先验知识在天空区域不适用。CAP[24]主要存在的问题是存
在去雾不彻底的问题,如图 4.9(c)的第二、四行。DehazeNet[33]对于图像中的薄雾处理不错,
但是当图像中存在浓雾时,会产生明显的颜色失真。AOD-Net[37]也存在去雾不彻底的问题,
如图 4.9(e)的第六行。MSBDN[42]相较于之前几种去雾算法,其表现较好,但是其在图像远
景存在雾霾时去雾效果不佳,如图 4.9(f)的第一、二行。DA-dahazing[44]恢复的无雾图像相
对于真实无雾图像来说整体偏亮,如图 4.9(e)的第一、三行。总的来说,本文所提去雾算
法无论在客观评价指标 PSNR 和 SSIM[51]还是在主观评价下的薄雾浓雾、近景远景场景下均
能取得令人满意的去雾效果,去雾后的图像与原无雾图像更加相近、更加自然。

40
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法

(a)有雾图像 (b)DCP[23] (c)CAP[24] (d)DehazeNet[33]

(e)AOD-Net[37] (f)MSBDN[42] (g)DA-dahazing[44] (h)本章算法

图 4.9 不同去雾算法在合成数据集上的去雾效果

41
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法

4.4.3 在真实有雾图像测试集上的实验结果与分析

为了验证本文所提去雾算法 Light-DCSFN 在真实有雾图像上的去雾有效性,本文在


RESIDE[54]数据集 HSTS 子集中的真实有雾图像上进行实验,如图 4.10 所示。
从图 4.10 中可以看出,DCP[23]恢复的无雾图像整体偏暗且由于暗通道的固有缺陷,其在
天空部分存在明显的颜色失真,如图 4.10(b)的第四行。CAP[24]由于先验知识的适用性问题,
其恢复的无雾图像存在失真,如图 4.10(c)的第一行的天空部分。以上两种方法均为基于先
验知识的去雾方法,但是由于先验知识在某些场景下存在不适用的问题会导致去雾的效果不
理想,而本文所提算法是基于深度学习的端到端的去雾算法,不存在以上先验知识失效的问
题,所以对多数场景下的有雾图像可以取得不错的去雾效果。DehazeNet[33]在对图像远处存在
雾霾的情况下去雾存在颜色失真的问题,如图 4.10(d)的第二、四行。AOD-Net[37]存在去雾
的图像偏暗的问题,如图 4.10(e)的第一行。以上两种去雾算法是基于深度学习对参数进行
估计的算法,但由于网络架构和公式的合理性问题,其在某些场景下存在参数估计不准确的
问题,而本文所提去雾算法是基于深度学习的端到端的去雾算法,不对任何公式参数进行估
计,所以不存在以上问题。DA-dahazing[44]去雾后的图像整体偏亮。相对于以上几种去雾算法,
MSBDN[42]可以取得不错的去雾效果,但其网络结构复杂,不易理解。总的来说,本文所提
去雾算法在多数场景下可以取得不错的去雾效果。

42
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法

(a)有雾图像 (b)DCP[23] (c)CAP[24] (d)DehazeNet[33]

(e)AOD-Net[37] (f)MSBDN[42] (g)DA-dahazing[44] (h)本文算法

图 4.10 在 HSTS 数据集真实有雾图像上的去雾效果对比

43
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法

4.4.4 单幅图像去雾时间和模型所占空间大小分析

在本文开始部分提出使用深度可分离卷积代替普通标准卷积可以加快网络的速度,在本
文中采用 RESIDE[54]数据集 SOTS 子集室外测试集对其进行验证,如表 4.3 所示。所有输入图
像均来自 RESIDE 数据集 SOTS 子集室外测试集,除了 DA-dahazing[44](输入图像尺寸大小
为640 × 480)、MSBDN[42]外(由于网络原因,输入图像的宽度和高度均需要被 16 整除,本
文输入的图像尺寸大小为608 × 448),其他网络输入图像的尺寸大小为550 × 400。除
DehazeNet[33]的实现框架为 Caffe 外,其他基于深度学习算法的实现框架均为 Pytorch。本文首
先计算数据集所有图像的去雾时间,包括模型的加载时间以及图像处理的时间,然后除以图
像的总数得到单幅图像的去雾时间。从表 4.3 中可以得知,本文所提去雾算法的单幅图像去
雾时间远远优于基于深度学习的 DehazeNet[33]和 AOD-Net[37],在基于深度学习的去雾算法中
仅次于 DA-dahazing[44]和 MSBDN[42]。此外,由于 DCP[23]和 CAP[24]是基于物理模型的去雾算
法,其不需要加载训练好的网络模型,所以其单幅图像去雾时间更短。本文所提去雾算法在
不需要加载网络模型时的单幅图像去雾时间为 0.29 秒,与基于物理模型的去雾算法相接近,
但是从 4.4.2 和 4.4.3 两小节可以得出,本文所提去雾算法的去雾效果远远优于基于物理模型
的去雾算法。此外,从表 4.3 中可以看到,改进后的网络的单幅图像的去雾时间要快于原网
络的去雾时间。
表 4.3 不同去雾算法的单幅去雾时间对比

算法 单幅图像去雾时间(s)

DCP[23] 0.20

CAP[24] 0.27

DehazeNet[33] 4.93

AOD-Net[37] 3.24

MSBDN[42] 0.47

DA-dahazing[44] 0.17

原网络 0.56

本文算法 0.52

为了进一步说明本文所提去雾模型为一个轻量级的去雾模型,在表 4.4 中给出了基于深


度学习的端到端的不同去雾算法其训练好的模型大小比较。从表 4.4 中可以得出,本文所提
去雾算法的模型大小远远小于其它基于深度学习的端到端的去雾模型。在去雾场景的应用中,
44
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
可能某些场景对实时性和内存有一定的要求,且去雾效果又不能太差,如嵌入式等场景,经
过以上分析,本文所提去雾模型可以很好地应用于这些场景。此外,与原网络相比,本文改
进后的网络模型要远远小于原网络模型的大小,主要是由于改进后的网络采用深度可分离卷
积,其网络参数较少。
表 4.4 不同基于深度学习的端到端去雾算法的模型大小比较

算法 Cycle-dehaze[41] MSBDN[42] DA-dahazing[44] 原网络 本文算法

模型大小(MB) 43.5 119.0 208.4 84.2 28.8

4.4.5 雾霾浓度图

在本章的开始部分提到,本文主要是通过网络来预测雾霾浓度图,然后将有雾图像与预
测得到的雾霾浓度图进行减运算得到无雾图像,图 4.11 给出了部分由网络预测得到的雾霾浓
度图。其中,第一行为输入到网络的有雾图像,第二行为预测得到的雾霾浓度图,第三行为
去雾后的无雾图像。从图 4.11 中可以看到,网络主要对近景的雾霾浓度以及轮廓进行预测,
如图 4.11 中第三列的建筑物上方,以使得对于近处的物体进行深度去雾,对远处的物体进行
轻微去雾,使得去雾后的图像更加自然,更加符合人类视觉要求。

图 4.11 部分网络预测得到的雾霾浓度图及其对应的无雾图像

4.5 本章小结

本文针对基于深度学习端到端的去雾算法存在参数过多以及雾浓度分布不均情况下存在
去雾过度或去雾不彻底的问题,提出一种基于深度跨尺度融合网络的快速图像去雾模型
Light-DCSFN。本文利用网络模型来对输入有雾图像进行雾霾浓度预测,针对这一点,对原

45
南京邮电大学硕士研究生学位论文 第四章 基于深度跨尺度融合网络的快速图像去雾算法
网络进行改进。在原网络的基础上新增加一个颜色特征提取模块,并将原网络的最大池化替
换为平均池化。同时,为了减少网络参数提高去雾的效率,利用深度可分离卷积替换原网络
的普通标准卷积。本文利用 RESIDE[54]数据集中的图像对 Light-DCSFN 进行训练和测试。针
对合成的有雾图像测试集,采用客观和主观的方式对去雾效果进行评价;针对真实的有雾图
像,采用主观方式对去雾效果进行评判。此外,为了证明本文所提去雾模型的去雾效率,计
算并比较分析了几种图像去雾算法的单幅图像去雾时间和网络模型大小。最终,从 4.4 节的
实验结果和分析来看,Light-DCSFN 不仅对有雾图像有明显的去雾效果且单幅图像去雾时间
较短。

46
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用

第五章 雾霾天气下的车牌识别系统与应用

在本文的 1.1 节中提到,图像去雾的主要意义在于有利于后续的高级别图像处理任务更


好地从输入的图像中获取信息,从而做出相应的决策。针对于以上论述,本文在第四章提出
了一种轻量化的图像去雾模型 Light-DCSFN。在此基础上,本文提出一个能够同时在晴天和
雾天天气下使用的车牌识别系统。本文首先对雾霾天气下的车牌识别进行需求分析,然后分
别介绍系统的判断图像是否有雾模块、图像去雾模块、车牌定位模块和车牌字符识别四个模
块。此外,为了验证系统的有效性,本文最后实验部分将雾霾天气下的拍摄得到的车牌图像
输入系统,进行识别。

5.1 需求分析

随着我们国家步入全民小康时代,我们国家拥有汽车的家庭越来越多,方便了人们的日
常生活,但也随之带来的一些问题,其中最大的问题就是对于车辆的管理。当前,人们主要
通过车牌来对车辆进行管理,所以车牌识别的准确性就变得尤为重要。车牌识别主要应用于
三个领域,第一是高速公路的收费站,通过对不同车牌进行识别而不是通过人工的方式来判
断所需的费用,提高了效率;第二是对违法车辆以及肇事车辆的监控;第三主要用于停车场
的计费工作。然而,在雾霾天气下,特别是清晨和夜间,户外摄像头拍摄得到的车牌图像受
到雾霾的干扰,使得车牌识别系统很难对其进行正确的识别甚至是不能识别,严重影响了系
统的可用性和人们的日常生活。针对此问题,本文提出一个能够同时在晴天和雾天天气下使
用的车牌识别系统。本文主要贡献如下:
(1)本文提出一种雾霾天气下的车牌识别系统,能够在晴天和雾天天气下对车牌进行识
别。为了使系统更好地应用于非雾霾天气下的车牌识别,提出以下方法用于判断输入图像是
否为有雾图像。
(2)本文提出一种基于暗通道先验[23]的方法来判断输入图像是否为有雾图像。同时,对
经典的手写数字识别网络 LeNet-5[60]进行改进,并将改进后的 LeNet-5 用于车牌字符识别。

47
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用

5.2 雾霾天气下的车牌识别系统设计

本文所提车牌识别系统主要分为以下四个模块:判断图像是否有雾模块、图像去雾模块、
车牌定位模块和车牌字符识别模块。图 5.1 为系统的总体流程图,下面将对以上所提模块做
详细介绍。

图 5.1 车牌识别系统流程图

5.2.1 判断图像是否有雾模块

判断图像是否有雾模块用于判断图像是否为有雾图像,根据结果决定对图像的下一步操
作,使得系统能够在晴天和雾天气下均能使用且具有较高的效率。将输入图像首先输入到本
模块,模块的输出为判定结果,若为有雾图像输出有雾,若为无雾图像输出无雾。在 2.2.1 小
节提到的暗通道先验认为,室外拍摄得到的无雾图像中,在 RGB 三通道中,至少存在一个通
道其像素值较小。如图 5.2 所示,从上到下每一行依次为原图像以及对应的暗通道图,第一、
二列为 RESIDE[54]数据集中的无雾图像,第四、五列为其对应的有雾图像,第三、六列分别
为真实的无雾和有雾图像。从图中可以得出,无雾图像除去天空部分其对应的暗通道图像偏
暗(像素值较低),而有雾图像对应的暗通道图像偏亮(像素值较高)。
基于以上先验知识,本文提出了一种基于暗通道先验知识判断输入图像是否为有雾图像
的方法。具体算法步骤如下:首先对输入图像求取其对应的暗通道图,所采用的块大小为
15 × 15,具体表达式如公式(2.3)所示。然后遍历得到的暗通道图像中每个位置的像素点值,
得到像素点值大于 0 的个数,然后用像素点大于 0 的个数除以暗通道图像像素点的总数,最

48
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用
终得到一个值。为了跟好地解释下面的工作,将上述得到的值称为暗通道值𝑠。通过判断一幅
图像的暗通道值是否大于一个阈值𝑇来判断输入图像是否为有雾图像,如下公式:
0, 𝑠 < 𝑇
𝑅=• (5.1)
1, 𝑠 ≥ 𝑇,
其中,𝑅为输出结果,若经模块判定后输入图像为无雾图像,则𝑅 = 0,若判定为有雾图像,
则𝑅 = 1。
在公式(5.1)中有一阈值𝑇为未知值,本文采用 RESIDE[54]数据集 OTS 中的有雾和无雾
图像来求得,具体做法如下。选取 OTS 中的所有 2061 张无雾图像,对其分别按照以上方法
求得 2061 张无雾图像的暗通道平均值为𝑠1,同理,选取上述 2061 张无雾图像对应的有雾图
像求得其暗通道平均值为𝑠2。对上述求得的两个按通道平均值进行加权平均,即:
𝑇 = 𝜕 ∙ 𝑠1 + 𝛽 ∙ 𝑠2, (5.2)
其中,𝜕和𝛽分别为响应权重。理论上讲,𝜕和𝛽应均取 0.5 从而计算得到阈值,但考虑到现实
世界中多数无雾图像其或多或少的包含天空区域。此外,从系统的角度而言,应对有雾图像
识别的准确性需要比识别无雾图像的偏向性高一些,所以阈值应比理论上的值大一点。经过
大量实验表明,取𝜕 = 0.15,𝛽 = 0.85时,准确度达到最高,此时阈值为 0.9826,即当一张图
像的暗通道值大于等于 0.9826 时,认为其为有雾图像,否则认为其为无雾图像。为了验证上
述所提方法的有效性以及不同𝜕和𝛽参数值的准确性,本文选取 RESIDE 数据集 SOTS 中的室
外有雾和无雾图像以及 HSTS 中的真实有雾图像,使用本文所提算法对图像进行有雾或无雾
判断。表 5.1 在 SOTS 中的准确性,表 5.2 为在 HSTS 中的准确性。

图 5.2 图像及其对应的暗通道图像

表 5.1 本章所提判断图像是否有雾图像算法在 SOTS 数据集上的准确性

数据集 𝜕和𝛽取值 图像种类 图像总数 准确性

有雾图像 490 99.80%


𝜕 = 0.15, 𝛽 = 0.85
无雾图像 490 72.45%
SOTS
有雾图像 490 100%
𝜕 = 0.5, 𝛽 = 0.5
无雾图像 490 58.17%

49
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用

表 5.2 本章所提判断图像是否有雾图像算法在 HSTS 数据集上的准确性

数据集 𝜕和𝛽取值 图像种类 图像总数 准确性

HSTS 𝜕 = 0.15, 𝛽 = 0.85 有雾图像 10 90%

5.2.2 图像去雾模块

图像去雾模块的主要作用是对输入的有雾图像进行去雾操作,即若在图像是否有雾模块
中判断输入图像为有雾图像,则将输入图像先进行去雾操作。图像去雾模块的输入为经判断
图像是否有雾模块判定为有雾的图像,输出为去雾后的无雾图像。本文在第四章所提的去雾
模型为一种轻量化的去雾网络模型,相对于其他去雾网络模型来说,其训练好的网络模型所
占空间大小较小、单幅图像去雾时间较短且其去雾效果相对较好。综合以上分析,本文默认
使用的去雾算法为第四章所提的 Light-DCSFN 去雾模型。

5.2.3 车牌定位模块

车牌定位模块的主要作用是从输入图像中定位到车牌区域。车牌定位模块输入为去雾后
的图像或输入的无雾图像,输出为定位到的车牌图像。由于车牌种类繁多,如图 5.3 所示,
且不同场景下的光线强度以及拍摄得到的车牌图像的尺寸大小会随着车牌与摄像头的相对位
置而变化,令车牌定位存在难度。传统的车牌定位方法可以分为以下几类:基于车牌彩色信
息的车牌定位算法、基于纹理特征的车牌定位算法[61]和基于数学形态学的车牌定位算法[62][63]。
本文采用基于纹理特征和车牌彩色信息相结合的车牌定位算法。下面将对车牌定位模块做详
细介绍。

图 5.3 不同种类的车牌

50
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用
虽然在图像去雾模块对输入的车牌图像做了去噪处理,但由于车辆多数时间行驶在室外,
所以车牌很容易会有污渍、泥点等噪声点。因此,为了提高后续车牌定位等精度,在真正对
车牌进行定位前,还需要对车牌图像做进一步的去噪工作,主要包括图像锐化、高斯滤波、
对图像进行开运算以及将开运算后的结果与高斯滤波后的图像融合来去除孤立的噪声点。一
般情况下,图像的边缘信息主要集中在高频部分,图像锐化可以通过增强高频分量,从而使
得图像的轮廓更加突出以便于后期车牌定位。本文采用拉普拉斯算子对图像进行锐化处理。
在对图像轮廓增强完成后,进行高斯去噪。高斯滤波是一种线性平滑滤波,其核内的数呈高
斯分布。本小节所采用的高斯核大小为 3,标准差取 0。经过高斯滤波后,将图像转换为灰度
图像。之后对图像进行开运算,开运算是先进行腐蚀再进行膨胀操作。腐蚀操作是消除物体
边界点的过程,本文的主要目的是消除图像中的孤立噪声点。腐蚀操作的定义式如下:
𝐴 ⊖ 𝐵 = {𝓏|(𝐵)𝓏 ⊆ 𝐴}, (5.3)
其中,𝐴 ⊖ 𝐵表示𝐵对𝐴腐蚀。膨胀操作是将一些与物体接触的背景合并到该物体的过程,
本文的主要目的是将车牌不同字符连成一个整体。膨胀操作的定义式如下:

𝐴 ⊕ 𝐵 = Š𝓏|(𝐵‹)𝓏 ⋂𝐴 ≠ ∅•, (5.4)

其中,A⨁B 表示𝐵对𝐴膨胀。之后将开运算得到的图像与高斯滤波后的图像进行融合,进一步
消除图像中噪声点。到此,图像的去噪工作完成,下面将介绍车牌具体的定位工作。
首先对上述去噪后得到的图像进行二值化操作,然后使用 Canny 边缘检测来找到图像区
域的边缘。之后在对图像分别进行一次开运算和闭运算,其中闭运算与开运算相反,其先进
行膨胀运算在进行腐蚀运算,此操作的目的是将图像中的车牌区域凸显出来。经过上述处理
后,图像中可能存在多个疑似车牌的矩形区域。由于车牌的长宽比相对来说是固定的,一般
为 2 到 5.5 之间,所以根据车牌的长宽比来排除一部分矩形区域。此时,图像中仍存在多个
疑似车牌的区域,为了下面更好地对车牌区域进行识别,首先对倾斜的矩形区域进行倾斜校
正。校正之后,根据矩形区域的颜色信息进一步筛选得到车牌区域。由于 HSV 比 RGB 颜色
的识别准确度更高,所以首先将图像由 RGB 图像转为 HSV 图像,然后根据色调 H(查阅资
料得到黄色值在 24 到 34 区间,绿色值在 35 到 77 区间,蓝色值在 100 到 124 区间)计算得
到每一个矩形区域中各颜色的占有量,最后再次确定最有可能成为车牌区域的矩形。由于车
牌拍摄过程中受到光照、位置、天气等因素的影响,所以对上述黄绿蓝三颜色的区间进行稍
微扩大,以便避免识别不到车牌区域。由以上分析可得,目前系统仅能识别底色为黄色、绿
色以及蓝色的车牌。经过上述复杂的处理后,最终会定位到车牌的区域,图 5.4 给出了上述
处理过程中不同阶段结果的图像,其中,从上到下每一行依次为输入图像、去噪后的图像、

51
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用
边缘检测后的图像、开运算后的图像以及定位到的车牌图像。图 5.4 中的车牌图像来自于网
络,均为正常天气下拍摄得到的车牌图像。

图 5.4 车牌定位模块不同阶段的图像

52
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用

5.2.4 车牌字符识别模块

车牌字符识别模块的主要作用是将车牌数字翻译为能够在机器上表示的数字。本文采用
经典的 LeNet-5 网络作为车牌识别模块。将经过车牌定位模块得到的单独彩色车牌图像输入
到本模块中,经过本模块处理后输出对应的字符。
在车牌字符识别模块,首先对输入的彩色车牌图像进行预处理,分别为图像锐化以及图
像二值化操作,以方便后期对车牌数字的识别。本文采用阈值法二值化,即对图像中的像素
值,若大于阈值其像素值取所有像素值的最大值,否则取零。二值化的目的是将车牌图像的
字符和底色进行区分。由于 LeNet-5 网络只能对单个字符进行识别处理,而经过以上步骤处
理得到的为一字符相连的图像。因此,需要将车牌图像划分为单个字符,本文采用投影法[65]
来划分车牌字符。二值化后的车牌图像,车牌字符颜色为白色,车牌底色为黑色,从左到右
遍历计算图像每一列像素值为零的像素点的个数,得到一个直方图。然后再根据设定的阈值
以及直方图,找出波峰的位置,从而分割图片。其中,阈值的计算方法如下:

𝑦< = ∑D
HIJ 𝑥<H , 0 ≤ 𝑖 < 𝑊, (5.5)

其中,𝑥<H 为图像(𝑖, 𝑗)坐标的像素值,𝑊和𝐻分别为图像的宽度和高度。经过公式(5.5)可得

一个(1 × 𝑊)的矩阵𝑌,即𝑌 = [𝑦J 𝑦C ⋯ 𝑦F!C ]。然后求的𝑌的最小值𝑦;<= ,最对𝑌求取平均

值𝑦(c/ ,最后通过以下公式求得阈值𝑧,即对每一张图像,阈值均不同,以便更好地分割字符。
6-+, O6./0
𝑧= d
, (5.6)

在确定每一个字符的区间过程中,遍历上述矩阵𝑌,若其中一个值大于等于阈值,即认为此点
对应的下标为字符区间的开始,然后继续遍历,直到遇到矩阵𝑌中的值小于阈值且此时对应的
下标与开始下标的差超过 2 时(因为车牌中有“.”这个字符,其区间较小)即认为这是一个
字符的区间。最终根据得到的区间即可分割得到车牌的每一个字符。
LeNet-5 网络[60]于 1998 年由 Yann LeCun 等人提出,主要用于手写数字识别。LeNet-5 的
网络模型如图 5.5 所示。网络总共包含 7 层,中间几层为卷积层后跟随一个池化层的经典排
列,最后一层为输出层,其输出结果为 0-9 共 10 个数字。下面将对 LeNet-5 网络做详细介绍。

53
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用

图 5.5 LeNet-5 网络模型图


从图 5.5 中可知,网络输入为32 × 32 × 1大小的灰度图像。之后图像进入 C1 卷积层,其
卷积核大小为5 × 5,卷积步长为 1,填充为 0,个数总共为 6 个。由公式(4.5)计算可得,
C1 卷积层的输出的特征图大小为28 × 28 × 6。然后 S2 层进行平均池化操作,池化操作的块
大小为2 × 2,即输出特征图的高度和宽度都缩小了 2 倍,为14 × 14 × 6大小的特征图。接下
来进入 C3 层再次进行卷积操作,卷积核大小同 C1 层为5 × 5,个数总共为 16 个,其输出特
征图的大小为10 × 10 × 16。接着又是一个池化操作,其特征图大小再一次缩小,为5 × 5 × 16。
接下来进入 C5 层,与之前不同的是,C5 层为全连接层。在全连接层中,共有 120 个卷积核,
其大小也为5 × 5,所以输出特征图的大小为1 × 1 × 120。接下来的 F6 也为全连接层,该层
共有 84 个神经元。将上一层得到的特征图竖直排列,第𝑖个神经元的输出可以表示为:

𝑂< = ∑CGJ
HIC 𝑤< ∙ 𝑥H + 𝑏< , (5.7)

其中,𝑂< 为第𝑖个神经元的输出,𝑤< 和𝑏< 分别为第个神经元的权重系数矩阵和偏差矩阵, 𝑏< 可

为 0,𝑥H 为第𝑗个输入的特征像素值。由于本层有 84 个神经元,所以本层输出 84 个特征值。

网络的最后一层为输出层,其也为全连接,共有 10 个神经元,即对应着零到十这十个数字的
预测输出结果。由于 LeNet-5 提出于 1994 年,那时候主流的激活函数为𝑆𝑖𝑔𝑚𝑜𝑖𝑑函数和𝑡𝑎𝑛ℎ
函数,而不是现在经常使用的𝑅𝑒𝑙𝑢函数。同时,相对于近些年的网络,其网络参数较少,大
约有 6 万个参数,但是在当时作为手写数字识别网络,准确率非常高。
由以上分析可以得出,LeNet-5 仅能识别数字零到九,而车牌还包括汉字、英文字母等字
符。因此,需要对网络进行改进,以将其应用于车牌字符的识别。首先,对 LeNet-5 的输出
改进。原网络仅能识别数字零到九,在对网络改进后,能够识别 65 个字符,其中包括数字零
到九、大写字母 A 到 Z 以及我国各省份的简称。然后,本文利用百度提供的车牌数据集对改
进后的网络进行训练。其中,数据集包括 65 个文件夹,每个文件夹分别包含了上述提及的一

54
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用
种字符。本文随机选取数据集中的 90%数据作为训练集用于对改进后的 LeNet-5 网络进行训
练,剩下的 10%数据用于对训练好的网络进行测试。数据集部分图像如图 5.6 所示。

图 5.6 部分数据集图像

网络采用的损失函数为 L_2 损失函数,具体如公式(2.5)所示。网络学习速率初始化为


0.001,衰减率为 0.25,每隔 750 步衰减一次,并采用 Adam 算法[59]对网络训练进行优化。损
失函数曲线如图 5.7(a)所示,准确率曲线如图 5.7(b)所示。从图 5.7 中可以看出,由于
LeNet-5 在手写数字识别上的高准确性,改进后的网络最后损失为零,准确率达到 100%。在
对网络训练完成后,用剩余的 10%数据对训练好的网络进行测试,网络在测试集上的准确率
可以达到 97.76%。

(a)损失函数曲线 (b)准确性曲线

图 5.7 改进后的 LeNet-5 训练过程相关曲线

输入的车牌图像在经过上述预处理后,将单个字符图像分别输入到改进后的 LeNet-5 网
络得到最终车牌数字。图 5.8 给出了车牌字符识别模块不同阶段结果的图像,其中,第一行
为输入的车牌图像,第二行为二值化后的车牌图像,第三行为经过分割后的字符图像,最下
面三行为对应车牌的识别结果。

55
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用

图 5.8 车牌字符识别模块不同阶段的图像

5.3 实验结果与分析

在本小节中,将对本文所提的车牌识别系统进行实验分析,总共分为三个部分,即晴天
天气下的车牌识别结果、雾天天气下的车牌识别结果以及失败案例分析。下面将对这三部分
进行详细阐述。

56
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用

5.3.1 非雾霾天气下的车牌识别结果及分析

本小节从 CCPD[64]数据集中的 ccpd_base 子集 199998 张车牌图像中选取前 4980 张车牌图


像对系统进行测试,由上面的分析可得 ccpd_base 子集中的图像均是在正常天气下拍摄得到
的,所以首先将选取的 4980 张图像输入到判断图像是否有雾模块,来验证判断是否有雾模块
的有效性。最终实验表明,判断是否有雾模块准确率可达 73.28%,即判定其中多数图像不需
要进行去雾操作。然后将图像输入到后续模块,最终系统的识别率为 67.25%,即对其中多数
图像可以识别车牌号码。本文又选取了网络中的车牌图像对系统进行测试,部分实验结果如
图 5.8 所示。

5.3.2 雾霾天气下的车牌识别结果及分析

由于 CCPD[64]车牌数据集中没有雾霾天气下拍摄得到的车牌图像,所以本文从网络中直
接获取真实雾霾天气下拍摄得到的车牌图像,并将其输入到本文所提车牌识别系统进行车牌
识别测试。部分实验结果如图 5.9 所示,其中,第一行为输入的雾霾天气下拍摄得到的车牌
图像,第二行为系统对没有去雾前的车牌识别结果,第三行为经过图像去雾模块去雾后的车
牌图像,第四行为去雾后的车牌识别结果。从图 5.9 中可以得出,在没有对图像进行去雾操
作前,系统很难对车牌进行识别,主要是由于雾霾导致图像会加上一层白色,使得在通过车
牌颜色对车牌进行定位时,导致无法在图像中定位得到车牌区域进而无法对图像中的车牌进
行识别。在对有雾车牌图像进行去雾操作后,图像中的白色明显消失,从而使得车牌定位工
作可以顺利完成。然而,本文所提的车牌识别系统虽然取得了不错的效果,但是对于部分图
像也无法准确对车牌进行识别,具体将在下一小节进行讨论。

57
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用

图 5.9 雾霾天气下车牌识别结果

5.3.3 失败案例分析

在以上两小节的实验过程中发现无论是晴天天气下的车牌还是雾天天气下的车牌经过去
雾后,系统仍无法识别部分车牌图像。本小节对无法识别的原因进行了分析,其主要可以分
为三个方面。首先,本文所提的车牌识别系统在对车牌进行定位时采用的是基于纹理特征和
车牌彩色信息相结合的方法,这种方法有一定的局限性,比如在车牌拍摄角度较偏、图像质
量较差等情况下,无法准确识别到车牌区域。而基于深度学习的车牌定位方法受这些环境影
响较小,比如有的学者使用 YOLOV5 对车牌进行定位就取得了不错的效果。第二个原因是由
于在第四章所提的去雾算法是针对多数场景进行去雾的,而不是仅针对车牌进行去雾,且采
用的训练数据也不是车牌图像,所以在对车牌图像进行去雾时,可能精度没有那么高。所以,
针对某一特定场景的去雾工作值得继续研究,本文将在 6.2 小节中继续讨论这个问题。第三

58
南京邮电大学硕士研究生学位论文 第五章 雾霾天气下的车牌识别系统与应用
个原因是图像质量的原因,图像拍摄质量较差会使得识别的准确率大大降低。以上就是对失
败案例的具体分析,本文将在未来继续对其进行研究解决。

5.4 本章小结

本章可提出了一个雾霾天气下的车牌识别系统,并基于暗通道先验提出了一种判断图像
是否有雾的方法。此外,为了验证所提车牌识别系统的有效性,本文分别对晴天天气下的车
牌图像和雾天天气下的车牌图像进行了识别,从实验结果来看,本文所提的车牌识别系统对
多数车牌图像可以进行准确识别。

59
南京邮电大学硕士研究生学位论文 第六章 总结与展望

第六章 总结与展望

6.1 总结

雾霾主要由空气中大量漂浮着的粒子而产生,是一种天气现象,我国北方空气质量不好
的情况下会有雾霾。雾霾天气下,传播光线与这些小颗粒发生相互作用,使得户外拍摄得到
的图像质量较低,影响从拍摄得到的图像中提取有用信息以便后续使用。因此,提高雾霾天
气下拍摄得到的图像的质量,已成为图像处理领域的热门研究点之一。本文利用深度学习方
法工具,对当前主流的图像去雾算法进行了研究与分析,并在此基础上提出了改进的去雾算
法。本文的研究内容和取得的研究成果总结如下:
(1)图像去雾的目的是为了更好的服务于像图像分割、目标检测等高级别的图像处理任
务,因此,在去雾的同时保留图像中的细节信息具有重要意义。本文提出一种基于 HRNet 的
端到端的图像去雾模型 DeHRNet。网络从一个高分辨率的分支开始,在每个阶段逐步添加一
个新的低分辨率分支,并将多个分辨率不同的分支并行连接且在每个阶段的末尾进行多尺度
融合。本文在原网络的基础上增加了一个新的阶段,使其更好地用于图像去雾工作。新增阶
段通过上采样收集网络所有分支的特征图以增强高分辨率表示,这使得恢复的无雾图像更加
符合人类视觉要求。
(2)目前基于深度学习的端到端去雾网络模型参数过多,且在雾浓度分布不均匀情况下
的存在去雾过度或去雾不彻底的问题。本文基于 DCSFN 提出一种轻量级的图像去雾模型
Light-DCSFN。Light-DCSFN 采用深度可分离卷积构建网络,并通过网络来预测输入有雾图
像的雾霾浓度图。为了更好的提取雾浓度特征以及避免恢复的无雾图像产生颜色失真的问题,
在原网络的前面新加一个颜色特征提取模块,其输入为有雾图像的 RGB 三通道图像,用于提
取不同通道间的颜色浅层特征,然后再进入改进后网络的主体部分。
(3)当前,图像去雾工作多数停留在理论研究阶段,很少与人们的实际生活相结合。本
文提出一个能够同时在晴天和雾天天气下使用的车牌识别系统,并在暗通道先验的基础上,
提出一种判断图像是否有雾的方法。本文所提系统在晴天和雾霾天气下均能完成车牌识别工
作,极大的方便了人们的日常生活。

60
南京邮电大学硕士研究生学位论文 第六章 总结与展望

6.2 展望

本文在对主流的去雾算法研究的过程中,也发现了一些问题和可以改进的方面。结合本
文的研究,给出以下值得进一步进行研究的几个方面:
(1)RESIDE[54]数据集局限性研究
本文所提的两个去雾网络模型均采用 RESIDE 数据集提供的有雾/无雾图像对来对网络
进行训练和测试。但是本文在训练过程中发现,RESIDE 数据集所提供的室外有雾图像多数
是在无雾天气下拍摄得到的图像的基础上,根据大气散射模型公式合成的有雾图像,所以其
与真实的有雾图像存在差距。如在 4.4.1 小节中列举出的 RESIDE 数据集中的有雾图像,其天
空部分多数为蓝色且图像相对偏亮。然而真实的有雾图像多数是在雾霾天气下拍摄得到,一
般天空区域为灰色且图像偏暗,而数据集的质量又会影响着网络训练的效果。针对于此,本
文提出两个展望。一是利用相机分时拍摄某一固定位置的图像,然后构成有雾/无雾图像对。
然而,这种方法需要耗费大量的人力和物力,同时对天气情况有较高的要求,所以提出第二
个展望。针对真实有雾图像和合成有雾图像的差距,可以提出一种相应的算法,对 RESIDE
数据集中的有雾图像作进一步处理,使其与真实有雾图像差距变小,从而更好地用于去雾网
络的训练。
(2)不同场景下的图像去雾研究以及去雾效果评价
目前,图像去雾算法多数仍处在理论研究阶段,很少能够应用到具体某一生活场景且多
数算法只能应用于白天雾霾天气下的去雾。然而,在现实生活中,雾霾存在的场景很多,如
夜间可能存在雾霾、下雨天可能存在水雾、冬季室内外温度相差过大也可能产生水雾、夜间
路灯和车灯周围也存在模糊区域。本文在 5.3.3 小节中阐述了针对特定场景下的去雾工作的重
要性,因此,对于未来的去雾工作,应该侧重于对于去雾的应用,特别是结合不同场景下的
不同特点提出特定的去雾算法。除了以上展望外,当前对于图像去雾的评价指标过于单一,
且可能某些算法在客观评价指标上取得不错的去雾效果,但是其并不符合人眼的视觉要求。
所以,未来应对图像去雾评价指标的多样性进行研究,使其既符合人类视觉要求又能通过具
体数字来量化。
(3)判断图像是否为有雾图像
在本文的第五章中曾提出一种判断图像是否有雾的方法,但是其采用的方法是根据阈值
来判断图像是否为有雾图像,所以准确性不是很高。针对于此,本文提出两个展望。一是在
对大量有雾和无雾图像的灰度直方图统计后发现,有雾图像的直方图分布较为集中且其值较
高,因此可以基于图像的灰度直方图对图像是否有雾进行判断,即通过判断某一图像直方图

61
南京邮电大学硕士研究生学位论文 第六章 总结与展望
大于某一值的占比是否超过某一阈值。然而,以上方法仍需要确定一个阈值,因此提出第二
个展望。近年来,基于深度学习的分类网络层出不穷,因此可以借助于深度学习并结合有雾
图像的特点,设计一个分类网络,并利用 RESIDE[54]数据集中的图像作为训练集对网络进行
训练,从而判断一幅图像是否为有雾图像。

62
南京邮电大学硕士研究生学位论文 参考文献

参考文献

[1] Wang J , Wang W , Wang R , et al. CSPS: An Adaptive Pooling Method for Image Classification[J]. IEEE
Transactions on Multimedia, 2016, 18(6):1000-1010.
[2] Redmon J, Divvala S, Girshick R, et al. You only look once: Unified, real-time object
detection[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 779-788.
[3] 张登银,鞠铭烨,钱雯. 图像去雾算法研究现状与展望[J]. 南京邮电大学学报(自然科学版),2020,
40(5):101-111.
[4] 吴成茂. 直方图均衡化的数学模型研究[J]. 电子学报, 2013, 41(3): 598-602.
[5] Kim T K, Paik J K, Kang B S. Contrast enhancement system using spatially adaptive histogram equalization
with temporal filtering[J]. IEEE Transactions on Consumer Electronics, 1998, 44(1): 82-87.
[6] Stark J A. Adaptive image contrast enhancement using generalizations of histogram equalization[J]. IEEE
Transactions on image processing, 2000, 9(5): 889-896.
[7] Kim J Y, Kim L S, Hwang S H. An advanced contrast enhancement using partially overlapped sub-block
histogram equalization[J]. IEEE transactions on circuits and systems for video technology, 2001, 11(4):
475-484.
[8] Stimper V, Bauer S, Ernstorfer R, et al. Multidimensional contrast limited adaptive histogram equalization[J].
IEEE Access, 2019, 7: 165437-165447.
[9] Seow M J, Asari V K. Ratio rule and homomorphic filter for enhancement of digital colour image[J].
Neurocomputing, 2006, 69(7-9): 954-958.
[10] 赵春丽, 董静薇, 徐博,等. 融合直方图均衡化与同态滤波的雾天图像增强算法研究[J]. 哈尔滨理工大
学学报, 2019, 24(6):5.
[11] Maloney L T, Wandell B A. Color constancy: a method for recovering surface spectral reflectance[J]. JOSA A,
1986, 3(1): 29-33.
[12] Land E H, McCann J J. Lightness and retinex theory[J]. Josa, 1971, 61(1): 1-11.
[13] Jobson D J, Rahman Z, Woodell G A. Properties and performance of a center/surround retinex[J]. IEEE
transactions on image processing, 1997, 6(3): 451-462.
[14] Rahman Z, Jobson D J, Woodell G A. Multi-scale retinex for color image enhancement[C]//Proceedings of
3rd IEEE international conference on image processing. IEEE, 1996, 3: 1003-1006.
[15] Nayar S K, Narasimhan S G. Vision in bad weather[C]//Proceedings of the seventh IEEE international
conference on computer vision. IEEE, 1999, 2: 820-827.
[16] Narasimhan S G, Nayar S K. Vision and the atmosphere[J]. International journal of computer vision, 2002,
48(3): 233-254.
[17] Narasimhan S G, Nayar S K. Contrast restoration of weather degraded images[J]. IEEE transactions on
pattern analysis and machine intelligence, 2003, 25(6): 713-724.
[18] Oakley J P, Satherley B L. Improving image quality in poor visibility conditions using a physical model for
contrast degradation[J]. IEEE transactions on image processing, 1998, 7(2): 167-179.
[19] Kopf J, Neubert B, Chen B, et al. Deep photo: Model-based photograph enhancement and viewing[J]. ACM
transactions on graphics (TOG), 2008, 27(5): 1-10.

63
南京邮电大学硕士研究生学位论文 参考文献
[20] Schechner Y Y, Narasimhan S G, Nayar S K. Instant dehazing of images using polarization[C]//Proceedings
of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. CVPR 2001.
IEEE, 2001, 1: I-I.
[21] Shwartz S, Schechner Y Y. Blind haze separation[C]//2006 IEEE Computer Society Conference on Computer
Vision and Pattern Recognition (CVPR'06). IEEE, 2006, 2: 1984-1991.
[22] Tan R T. Visibility in bad weather from a single image[C]//2008 IEEE conference on computer vision and
pattern recognition. IEEE, 2008: 1-8.
[23] He K, Sun J, Tang X. Single image haze removal using dark channel prior[J]. IEEE transactions on pattern
analysis and machine intelligence, 2010, 33(12): 2341-2353.
[24] Zhu Q, Mai J, Shao L. A fast single image haze removal algorithm using color attenuation prior[J]. IEEE
transactions on image processing, 2015, 24(11): 3522-3533.
[25] Ju M, Ding C, Guo Y J, et al. IDGCP: Image dehazing based on gamma correction prior[J]. IEEE
Transactions on Image Processing, 2019, 29: 3104-3118.
[26] He T, Zhang Z, Zhang H, et al. Bag of tricks for image classification with convolutional neural
networks[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019:
558-567.
[27] Kim I, Baek W, Kim S. Spatially attentive output layer for image classification[C]//Proceedings of the
IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 9533-9542.
[28] He K, Gkioxari G, Dollár P, et al. Mask r-cnn[C]//Proceedings of the IEEE international conference on
computer vision. 2017: 2961-2969.
[29] Chen L C, Papandreou G, Kokkinos I, et al. Deeplab: Semantic image segmentation with deep convolutional
nets, atrous convolution, and fully connected crfs[J]. IEEE transactions on pattern analysis and machine
intelligence, 2017, 40(4): 834-848.
[30] Carion N, Massa F, Synnaeve G, et al. End-to-end object detection with transformers[C]//European
conference on computer vision. Springer, Cham, 2020: 213-229.
[31] Qiu H, Ma Y, Li Z, et al. Borderdet: Border feature for dense object detection[C]//European Conference on
Computer Vision. Springer, Cham, 2020: 549-564.
[32] Tang K, Yang J, Wang J. Investigating haze-relevant features in a learning framework for image
dehazing[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2014:
2995-3000.
[33] Cai B, Xu X, Jia K, et al. Dehazenet: An end-to-end system for single image haze removal[J]. IEEE
Transactions on Image Processing, 2016, 25(11): 5187-5198.
[34] Ren W, Liu S, Zhang H, et al. Single image dehazing via multi-scale convolutional neural
networks[C]//European conference on computer vision. Springer, Cham, 2016: 154-169.
[35] Zhang H, Patel V M. Densely connected pyramid dehazing network[C]//Proceedings of the IEEE conference
on computer vision and pattern recognition. 2018: 3194-3203.
[36] Goodfellow I, Pouget-Abadie J, Mirza M, et al. Generative adversarial nets[J]. Advances in neural
information processing systems, 2014, 27.
[37] Li B, Peng X, Wang Z, et al. Aod-net: All-in-one dehazing network[C]//Proceedings of the IEEE international
conference on computer vision. 2017: 4770-4778.
[38] Ullah H, Muhammad K, Irfan M, et al. Light-DehazeNet: A Novel Lightweight CNN Architecture for Single
Image Dehazing[J]. IEEE Transactions on Image Processing, 2021, 30: 8968-8982.

64
南京邮电大学硕士研究生学位论文 参考文献
[39] Liao Y, Su Z, Liang X, et al. Hdp-net: Haze density prediction network for nighttime dehazing[C]//Pacific
Rim Conference on Multimedia. Springer, Cham, 2018: 469-480.
[40] Ren W, Ma L, Zhang J, et al. Gated fusion network for single image dehazing[C]//Proceedings of the IEEE
Conference on Computer Vision and Pattern Recognition. 2018: 3253-3261.
[41] Engin D, Genç A, Kemal Ekenel H. Cycle-dehaze: Enhanced cyclegan for single image
dehazing[C]//Proceedings of the IEEE conference on computer vision and pattern recognition workshops.
2018: 825-833.
[42] Dong H, Pan J, Xiang L, et al. Multi-scale boosted dehazing network with dense feature
fusion[C]//Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2020:
2157-2167.
[43] Ronneberger O, Fischer P, Brox T. U-net: Convolutional networks for biomedical image
segmentation[C]//International Conference on Medical image computing and computer-assisted intervention.
Springer, Cham, 2015: 234-241.
[44] Shao Y, Li L, Ren W, et al. Domain adaptation for image dehazing[C]//Proceedings of the IEEE/CVF
conference on computer vision and pattern recognition. 2020: 2808-2817.
[45] Wu H, Qu Y, Lin S, et al. Contrastive learning for compact single image dehazing[C]//Proceedings of the
IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2021: 10551-10560.
[46] Zhang W, Dong L, Pan X, et al. Single image defogging based on multi-channel convolutional MSRCR[J].
IEEE Access, 2019, 7: 72492-72504.
[47] Sun K, Xiao B, Liu D, et al. Deep high-resolution representation learning for human pose
estimation[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019:
5693-5703.
[48] Wang C, Xing X, Wu Y, et al. Dcsfn: Deep cross-scale fusion network for single image rain
removal[C]//Proceedings of the 28th ACM international conference on multimedia. 2020: 1643-1651.
[49] Hinton G E, Salakhutdinov R R. Reducing the dimensionality of data with neural networks[J]. science, 2006,
313(5786): 504-507.
[50] Nair V, Hinton G E. Rectified linear units improve restricted boltzmann machines[C]//Icml. 2010.
[51] Wang Z, Bovik A C, Sheikh H R, et al. Image quality assessment: from error visibility to structural
similarity[J]. IEEE transactions on image processing, 2004, 13(4): 600-612.
[52] Zhang L, Zhang L, Mou X, et al. FSIM: A feature similarity index for image quality assessment[J]. IEEE
transactions on Image Processing, 2011, 20(8): 2378-2386.
[53] Kovesi P. Image features from phase congruency[J]. Videre: Journal of computer vision research, 1999, 1(3):
1-26.
[54] Li B, Ren W, Fu D, et al. Benchmarking single-image dehazing and beyond[J]. IEEE Transactions on Image
Processing, 2018, 28(1): 492-505.
[55] Yu F, Koltun V. Multi-scale context aggregation by dilated convolutions[J]. arXiv preprint arXiv:1511.07122,
2015.
[56] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE
conference on computer vision and pattern recognition. 2016: 770-778.
[57] Howard A G, Zhu M, Chen B, et al. Mobilenets: Efficient convolutional neural networks for mobile vision
applications[J]. arXiv preprint arXiv:1704.04861, 2017.
[58] Huang G, Liu Z, Van Der Maaten L, et al. Densely connected convolutional networks[C]//Proceedings of the
IEEE conference on computer vision and pattern recognition. 2017: 4700-4708.

65
南京邮电大学硕士研究生学位论文 参考文献
[59] Kingma D P, Ba J. Adam: A method for stochastic optimization[J]. arXiv preprint arXiv:1412.6980, 2014.
[60] LeCun Y, Bottou L, Bengio Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings
of the IEEE, 1998, 86(11): 2278-2324.
[61] Zhang X, Shen P, Gao J, et al. A license plate recognition system based on tamura texture in complex
conditions[C]//The 2010 IEEE International Conference on Information and Automation. IEEE, 2010:
1947-1952.
[62] Ying H W, Yao M H, Zhang Y H. Vehicle license plate segmentation based on texture analysis and vertical
projection[J]. Control Engineering of China, 2004, 11(5): 432-435.
[63] Chen R, Luo Y. An improved license plate location method based on edge detection[J]. Physics Procedia,
2012, 24: 1350-1356.
[64] Xu Z, Yang W, Meng A, et al. Towards end-to-end license plate detection and recognition: A large dataset and
baseline[C]//Proceedings of the European conference on computer vision (ECCV). 2018: 255-271.
[65] 路敬祎, 薛征, 邵克勇, 等. 基于改进的连通域算法与垂直投影相结合的车牌字符分割[J]. 自动化技术
与应用, 2015 (12): 93-97.

66
南京邮电大学硕士研究生学位论文 附录 1 攻读硕士学位期间撰写的论文

附录 1 攻读硕士学位期间撰写的论文

[1] Han W, Zhu H, Qi C, Li J, Zhang D. High-Resolution Representations Network for Single


Image Dehazing. Sensors. 2022; 22(6):2257. (已录用)
[2] Han Wensheng, Zhu Hong, Zhang Dengyin. LIGHT-DCSFN: A Light Cross-scale Fusion
Network for Single Image Dehazing [C]. 2022 IEEE International Conference on Image Processing
(ICIP). IEEE(投稿在审)

67
南京邮电大学硕士研究生学位论文 附录 2 攻读硕士学位期间申请的专利

附录 2 攻读硕士学位期间申请的专利

[1] 张登银,韩文生,寇英杰,董杰,孔雷平. 一种基于高分辨率表征的图像去雾方法和装置,


202110024407.8,2021.01;
[2] 张登银,孔雷平,孙誉焯,韩文生,齐城慧,马永连. 一种基于图像天空分割的图像去雾
方法、装置和存储介质,202011368071.9,2020.11;
[3] 张登银,朱虹,韩文生,闫伟丹,寇英杰. 图像去雾方法、装置及设备,202111091274.2
,2021.09;
[4] 张登银,齐城慧,杨妍,徐业鹏,韩文生,马永连. 一种基于循环生成对抗网络的图像去
雾方法及系统,202110713063.1,2021.6;

68
南京邮电大学硕士研究生学位论文 附录 3 攻读硕士学位期间参加的科研项目

附录 3 攻读硕士学位期间参加的科研项目

(1)国家自然科学基金,基于深度学习的大气散射新模型与图像去雾方法研究(61872423);

69
南京邮电大学硕士研究生学位论文 致谢

致谢

时光荏苒,将近三年的南邮学习生活接近尾声,仿佛刚刚踏入母校还是昨天。在这三年
的时间里,经历过刚开始的迷茫、实验效果不佳的失落,体会过竞赛获奖的惊喜、找到工作
的喜悦,这三年必将成为我人生中的宝贵财富,而这一切也离不开老师、同学、家人的帮助,
在此,我要对他们表示由衷的感谢。
首先,我要感谢我的研究生导师张登银老师。每当我在学术方面遇到困难时,张老师总
是第一时间给予我帮助,无论是在论文选题时的迷茫,还是实验所需的硬件设备及环境不满
足条件。在张老师的悉心指导下,我从一个科研小白也逐渐在图像处理领域有了一些自己的
成果。此外,在生活方面,张老师时常与我们展开谈话,并督促我们有问题要向他及时反映。
此外,赵莎莎老师在每次组会上都会对我们的科研情况提出建议和指导,使我们在科研上少
走很多弯路。在此,我由衷的感谢研究生期间遇到的每一位老师,祝你们工作顺利!
其次,我要感谢研究生期间的师兄师姐们对我的帮助。在论文实验期间,是李俊江师兄
不辞辛苦帮我搭建深度学习的平台;在论文撰写期间,是陈灿师兄和朱虹师姐帮我指出了论
文的格式错误和句法错误;在找工作期间,是孙誉焯师兄和张敏师姐给我提供了各种各样的
信息。同时,我还要感谢师门同窗对我的帮助,研究生期间我们相互帮助,共同进步。在此,
我由衷的感谢研究生期间遇到的每一位同学,祝你们前程似锦!
我还要感谢的我的家人们,不知不觉,求学已有将近十九年,是你们无微不至的关心和
默默无闻的付出才有了我的今天。我要特别感谢我的妈妈,每当我在生活或者学习上遇到困
难时,我的妈妈总是给予我最大的关心和鼓励,使我能够安心学业。在此我想对我的父母说
一声,谢谢你们。
最后,我要感谢我的母校南京邮电大学,感谢母校所提供的丰富的学习资源以及优质的
就业平台。今后,我将继续严于律己,在这个美好的时代、在自己的工作岗位上继续贡献自
己的力量。

70

You might also like