354 IEEE GEOSCIENCE AND REMOTE SENSING LETTERS, VOL. 12, NO. 2, FEBRUARY 2015
Automatic Cloud Detection for All-Sky Images
Using Superpixel Segmentation
Shuang Liu, Linbo Zhang, Zhong Zhang, Chunheng Wang, and Baihua Xiao
Abstract—Cloud detection plays an essential role in meteoro-
logical research and has received considerable attention in recent
years. However, this issue is particularly challenging due to the
diverse characteristics of clouds. In this letter, a novel algorithm
based on superpixel segmentation (SPS) is proposed for cloud
detection. In our proposed strategy, a series of superpixels could
be obtained adaptively by SPS algorithm according to the char-
acteristics of clouds. We first calculate a local threshold for each
superpixel and then determine a threshold matrix for the whole
image. Finally, cloud can be detected by comparing with the
obtained threshold matrix. Experimental results show that our
proposed algorithm achieves better performance than the current
cloud detection algorithms.
Index Terms—Cloud detection, superpixel segmentation (SPS),
threshold matrix.
I. INTRODUCTION
C
LOUDS play an important role in hydrological cycle and
affect the energy balance on local and global scopes via
interacting with solar and terrestrial radiation. Most cloud-
related research requires ground-based cloud observation, such
as cloud cover. At present, cloud cover is still estimated by
human observers at meteorological observation stations [1].
However, this method takes high cost in terms of human re-
sources, and the results obtained from different observers are
often inconsistent. Thus, automatic estimation techniques for
cloud cover are eagerly required in this field.
To achieve this goal, some instruments f or capturing ground-
based clouds, s uch as whole sky imager [2], [3], total sky im-
ager [4], and infrared cloud analyzer [5], have been developed.
Those instruments could obtain continuous all-sky images with
a set time interval. Moreover, a lot of algorithms are proposed
to estimate the cloud cover based on these captured all-sky
images. Cloud detection, which classifies each pixel of all-sky
images into cloud or clear sky element, is needful for cloud
cover estimation. Currently, most cloud detection algorithms
treat color as the primary characteristic for distinguishing cloud
from clear sky. This is due to the scattering difference between
Manuscript received September 28, 2013; revised January 7, 2014 and
May 21, 2014; accepted June 11, 2014.
S. Liu and Z. Zhang are with the College of Electronic and Communication
Engineering, Tianjin Normal University, Tianjin 300387, China.
L. Zhang is with China Academy of Transportation Sciences, Beijing
100029, China.
C. Wang and B. Xiao are with the State Key Laboratory of Management
and Intelligent Control of Complex Systems, Institute of Automation, Chinese
Academy of Sciences, Beijing 100190, China.
Color versions of one or more of the figures in this paper are available online
at http://ieeexplore.ieee.org.
Digital Object Identifier 10.1109/LGRS.2014.2341291
Fig. 1. (a) Original cloud image. (b) Rigid division of cloud image. (c) SPS
of cloud image.
cloud particles and air molecules. More specifically, cloud
particles scatter similar blue (B) and red (R) intensity, whereas
clear sky scatters more B than R intensity [6]. Based on this,
Long et al. propose a threshold algorithm for cloud detection
according to a certain radio of R over B intensity using red-
green-blue (RGB) image [6]. Specifically, pixels with R/B
greater than 0.6 are identified as cloud, otherwise as clear sky.
Kreuter et al. report a different threshold of 1.3 on the B/R
radio for identifying cloud [7], which is illustrated to be a more
suitable choice than the previously mentioned value of 0.6.
Heinle et al. treat R − B =30 as the threshold for cloud
detection [8], where better performance is obtained than the
radio techniques. This kind of methods can be referred to
as the fixed threshold algorithm, i.e., each pixel in a cloud
image is classified by a fixed value. Moreover, other algorithms
using fixed thresholds are proposed, such as saturation [9] and
Euclidean geometric distance [10]. However, the fixed thresh-
old algorithms are unsuitable for different sky conditions. To
overcome this shortcoming, Yang et al. propose to use a global
adaptive threshold for cloud detection [1]. Although improved
results can be achieved, this method is obviously sensitive to
nonuniform illumination for the whole all-sky image. Then,
Yang et al. propose another cloud detection algorithm based on
local threshold interpolation [11], in which each cloud image is
divided into several subimages with the same size according
to the spatial position, as showed in Fig. 1(b). Then, they
calculate the local threshold for each subimage. However, the
rigid division is not flexible, as it is not adaptive for the diverse
shape, size, and location of clouds.
Cloud detection is actually treated as an application of im-
age segmentation, and therefore, applying image segmentation
techniques for cloud detection is a natural consideration [12].
Superpixel segmentation (SPS) [13] proposed by Ren and
Malik is a popular algorithm in the field of image segmentation
[14], [15]. The algorithm divides an image into a series of
irregular image blocks, and each image block is called a super-
pixel. This irregular division is based on the texture similarity,
1545-598X © 2014
IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.