  With the development of convolutional neural networks, hundreds of deep
learning based dehazing methods have been proposed. In this paper, we provide a
comprehensive survey on supervised, semi-supervised, and unsupervised single
image dehazing. We first discuss the physical model, datasets, network modules,
loss functions, and evaluation metrics that are commonly used. Then, the main
contributions of various dehazing algorithms are categorized and summarized.
Further, quantitative and qualitative experiments of various baseline methods
are carried out. Finally, the unsolved issues and challenges that can inspire
the future research are pointed out. A collection of useful dehazing materials
is available at \url{https://github.com/Xiaofeng-life/AwesomeDehazing}.
