September - December, 2019
![](https://static.wixstatic.com/media/24faeb_d3ebb92e585a42cbb4b066635d775b0b~mv2.gif/v1/fill/w_700,h_467,al_c,pstr/24faeb_d3ebb92e585a42cbb4b066635d775b0b~mv2.gif)
Abstract
In this project, we use deep-learning techniques to address the problem of cloud detection. Specifically, a new cloud image segmentation network is proposed in this project. Our model is based on the well-known U-net framework where we use a ResNet-50 as our feature extractor (or encoder) and a decoder including several de-convolutional modules. Besides, we explore several strategies to improve our model, including utilizing additional entropy information, superpixel channel, multi-task loss, and convex-hull post-processing. To evaluate each component in our model, we further provide ablation analysis in our experiments. By using an ensemble method combining our experimental results, we have achieved a final Sørensen–Dice coefficient of 0.642, which is only 0.03 below the first place of the competition.
1. Introduction
Cloud detection and classification is one of the important tasks for remote sensing image (RSI) preprocessing. Since cloud organization patterns from satellite images are always complex and irregular, this task is very challenging.
In this project, we first investigate some related literature [2][11] to understand the data properties better, such as the cloud organization patterns. Then, we develop a deep learning-based model to address the problem of the recognition of cloud organization patterns from the satellite images. Specifically, our base model is based on a popular segmentation framework called U-net. Different from the original paper, we choose to use a strong feature extractor ResNet [20] as our encoder, which has been trained on the ImageNet dataset. Actually, we view the problem of cloud detection to be a dense prediction problem. This way, the outputs of our network should be an image of the same size as the inputs, in which each pixel of this output image will be classified as one of the classes of clouds. Subsequently, we further consider introducing more informative features, such as entropy, data-augmentations, and other related post-processing techniques to improve our model. Finally, we evaluate our model via the Kaggle competition “Understanding Clouds from Satellite Images” [30]. The score that is used to evaluate the accuracy of our model is given by the mean Dice coefficient, which is used to compare the pixel-wise agreement between the ground truth segmentation and the predicted mask.
The remainder of this paper is organized as follows, In Section 2, we briefly review related work on cloud detection. In Section 3, we give details about our dataset and preprocessing. Then, we formally introduce our model used in this project in Section 4. In Section 5, experimental results and analysis are given. Finally, this project is concluded in Section 6.
2. Related Work
In this section, we briefly review previous work (proposed for cloud detection and classification) related to our project. Based on their methods’ components, we roughly divide them into three categories: 1) Threshold-based methods; 2) Machine-learning based methods and 3) Deep-learning based methods.
1) Threshold based methods: Due to the simplicity and efficiency, threshold-based methods have been widely used in cloud detection. Most of them are based on spectral information in multi-spectral remote sensing imagery [34]. Popular work in this clue include ISCCP [33], APOLLO [15]. In a recent work [21], a method based on multi-spectral thresholds has successfully used for discriminating clouds from clear skies. Since these methods largely depend on fixed thresholds, they are easily affected by dynamic characteristics such as changing satellite zenith angle and changing solar irradiation [6]. To address this issue, dynamic threshold-based techniques are introduced [6, 39, 45]. Related experiments demonstrated that dynamic thresholds-based methods can produce cloud map with higher accuracy. Combined with thresholds-based methods, there are several works [35, 46, 31, 16] introduce temporal information to help their cloud detection task. This clue is mainly based on the observation that the ground part of the images change a little while the cloud change much more in a short time period [19, 17]. Different from these temporal threshold-based methods, Zhang et al. introduce a preliminary cloud mask via guided filtering and then mix geometric features and texture features to help modeling clouds [44]. Similarly, Fisher combines threshold methods with morphological features from SPOT5 HRG imagery [14]. Though threshold based methods can achieve some improvements in the cloud detection problem, they still limit on modeling complex cloud patterns such as cloud–snow coexistence areas [38, 42].
2) Machine Learning-based methods: This kind of methods are based on using different advanced machine learning techniques to further improve the performance on cloud detection. Popular methods in this clue include support vector machine (SVM) [26][23], maximum likelihood (MaxLike) [29], Markov random field (MRF)[27], K-nearest neighbor (K- NN) [3], Decision tree [22] and even the ensemble models such as Random Forest (RF) [5], pixel-wise RF [12][10]. Most existing machine learning methods depend on hand-crafted spatial features such as texture/color information [4] and statistics over each pixel’s neighborhood. These hand-crafted features have been successfully used for helping in other computer vision tasks since they are often distinct and less sensitive to atmospheric effects [18]. However, hand-crafted features is relatively difficult to accurately capture the cloud characteristics under complex environment [36, 42].
3) Deep learning based methods: Since deep learning has a prominent performance on feature learning, CNN based deep learning methods have been strong baselines in most computer vision tasks such as image segmentation. In the community of image segmentation, Deep Convolutional neural network (DCNN) is a very charming approach [25]. Another popular work DeepLabV3+ can achieve up to 89% MIOU in PASCAL VOC2012 challenge [13]. Recently many works using deep learning techniques have been proposed to address the cloud detection problem. For examples, Xie et al. [40], Le Goff et al. [24] and Chen et al. [8] used DCNN models on pixel-wise cloud detection (where superpixels are used for helping their modeling). To further improve experiments, the core backbone of extracting image features are replaced by other powerful deep learning models such as GoogleNet, VGG, ResNet. However, how to fully exploit context information without causing resolution loss is a challenging issue in understanding cloud patters. To solve the first problem, dilation convolution should be introduced which has been used in many segmentation networks like RefineNet [28] and Deeplab [7]. Related to our project, Zhan et al. introduce the dilation module for cloud detection from satellite images. Most recently, in [42], Yang et al. further introduce their model CDnet where a feature pyramid module (FPM) and a boundary refinement (BR) block are used for extracting the multiscale contextual information without the loss of resolution and refining cloud boundaries respectively. In this project, we will use deep learning techniques to build our model, including the powerful feature extractor ResNet and the well-known U-net framework. Besides, different from the previous work mentioned above, we will do more efforts on feature design (entropy channel), model ensemble and other post-processing techniques.
3. Dataset Preparation
The dataset from the Kaggle competition “Understanding Clouds from Satellite Images” is used in this project. This dataset consists of satellite images of clouds as inputs, with four classes of cloud patterns as labels, including Fish, Flower, Gravel and Sugar. These four kinds of clouds are shown in Figure 1. There are a total of 5,697 training images and 3,705 testing images. We further split the training images into training and validation dataset, with 4,436 and 1,110 images correspondingly.
![](https://static.wixstatic.com/media/24faeb_4a8f5c4f7b3441219dc4cb1a10155ea4~mv2.png/v1/fill/w_980,h_278,al_c,q_85,usm_0.66_1.00_0.01,enc_auto/24faeb_4a8f5c4f7b3441219dc4cb1a10155ea4~mv2.png)
Cloud detection in this dataset is difficult since a single image may contain several classes of cloud patterns, and each pattern may appear in multiple areas in an image. Furthermore, the true bounding boxes may be overlapped and present an irregular shape.
3.1. Pre-processing
In order to adapt to the methods that we are using, some data-preprocessing techniques are utilized in order to perform the intended experiments. This includes various image augmentations to the training dataset. In order to make use of the pretrained ResNet-50, the input image size is also resized from (1400, 2100) to (320, 640).
Image Augmentations: To ensure a good generalization ability of our model, various image augmentations are introduced. The augmentations include: 1) Horizontal Flip; 2) Affine Transformations (Translate, Scale, and Rotate); 3) Grid Distortion; 4) Optical Distortion.
4. Methodology
In this section, we will specify our model’s details used in this project.
Encoder-Decoder Segmentation Model: As we are working with the segmentation problem of satellite images, we make use of deep learning networks with convolutional layers in order to capture local patterns and learn high-level visual features. U-Net is chosen as the base model because of its ability to produce precise segmentation results. This is done by replacing the pooling operators with upsampling operators in the contracting network in order to increase the resolution of the outputs. As there are a large number of features channels in these layers, this allows propagation of context information throughout the network, even to the higher resolution layers, creating a symmetric u-shaped architecture for the expansive path and the contracting path [32].
In this project, rather than training the entire model from scratch, we will instead make use of a pretrained feature extractor (encoder) by using the ResNet-50 with ImageNet weights. The decoder consists of five layers of decoder blocks. Each decoder block involves four operations: upsampling of the feature maps to half the number of channels, a skip connection that concatenates the corresponding cropped feature map from the encoder, and two 3x3 convolutions. Each operation is followed by the ReLU function. A final layer of 1x1 convolution is used for mapping the output channels to the four classes of cloud types for each pixel. The whole network architecture is illustrated in Figure 3, not including the classification branch.
![](https://static.wixstatic.com/media/24faeb_cbff45e0d2f94f42bd9bc0fbcaf8d1bc~mv2.png/v1/fill/w_980,h_200,al_c,q_85,usm_0.66_1.00_0.01,enc_auto/24faeb_cbff45e0d2f94f42bd9bc0fbcaf8d1bc~mv2.png)
Additional Entropy Channel: Since the cloud types segmentation are all clouds of some shape, it may be beneficial to extract their shapes to provide more information to the deep learning models. As the white clouds contrast with the dark blue sky background a lot, we consider the use of entropy to highlight the boundaries between the sky and the clouds. To create an entropy channel, we compute the entropy within a window size of 100 for the whole image with a stride of 50 and obtain the mean values for each pixel. An example result is shown in Figure 2(b). The parts that are red shows a high entropy value, showing most of the outlines for the clouds within the images.
Additional Superpixels Channel: Since we are interested in identifying and classifying the cloud types from the images, it is beneficial to make use of tools that are able to capture the clouds from the images. As a result, we considered the use of superpixels, which is able to group pixels into meaningful small regions in order to better identify the objects within the images [1]. We think that this will help the model in better recognizing the clouds from the background, as well as getting clearer cloud shapes with the additional channel. We made use of the simple linear iterative clustering (SLIC) algorithm to generate the superpixels due to its flexibility in the compactness and number of the superpixels. The algorithm creates clusters in the labxy plane space of the color images. The distance measure D is computed as followed:
![](https://static.wixstatic.com/media/24faeb_6780126de4a84d12ae204b31c2fa49e0~mv2.png/v1/fill/w_412,h_136,al_c,q_85,enc_auto/24faeb_6780126de4a84d12ae204b31c2fa49e0~mv2.png)
where dc represents the distance in color proximity, ds represents the spatial proximity, and S represents the sampling interval. m is a hyperparameter that determines the relative importance between color similarity and spatial proximity [1]. We used compactness m of 10 to create 3000 segments for each of the images. An example result is shown in Figure 2(c) and (d).
Multi-Task Model: From our milestone results, we found that the classes for Gravel and Sugar are rather low for their precision scores. This is because the clouds for these classes are very scattered, thus may cause the model to make a positive prediction whenever the image only has a few white dots. In order to overcome this issue, we decided to make use of a classification model to prune out negative images for their corresponding classes [41]. Instead of retraining a classification model from scratch, we made use of the trained encoder from the U-Net as the image features extractor. We then introduced an adaptive average pooling layer and a fully connected linear layer to create a classification head for the predictions of the classes for the whole image. This output is also connected to the segmentation output through multiplication, thus discouraging false positive predictions. The modified network architecture is illustrated in Figure 3.
![](https://static.wixstatic.com/media/24faeb_44a06b3ea7364079988c1bb30cf77b4a~mv2.png/v1/fill/w_980,h_467,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/24faeb_44a06b3ea7364079988c1bb30cf77b4a~mv2.png)
Post-Processing: With the models’ outputs, the thresholds and minimum sizes of connected components to create seg- mentation masks for each class are found through the best validation performance. As per the requirements of the Kaggle competition, the size of the masks for the segmentations have to be scaled down to the size of (350, 525). From the train- ing images, we can see that the segmentations are mostly quadrilaterals, while our predictions are in irregular shapes, it may be beneficial to reshape our predictions. After exploring various options, including approximated polygons, simple x-y rectangles, and rectangles with minimum areas, we found that convex hull has achieved the best performance overall. The convex hull is created by finding the minimal convex set that contains all the connected predicted points with the use of the Sklansky’s algorithm [37]. An example result is shown in Figure 4(3).
Ensemble Method: After obtaining the results for all the methods we have implemented, we found that some methods have better performance on certain classes. As a result, we decided to combine our results by performing a logical ”OR” operator on the generated masks for the models that have a good F1-score for that class. An example combination of predictions is shown in Figure 4(4). It is crucial for the models used to have a good recall score so that the positive labels are accounted for. At the same time, the precision score should all be similar with one another in order to not increase the number of false positive predictions.
5. Experiments
5.1. Evaluation
The performance will be evaluated via metrics such as DICE and Precision and Recall. We mainly focus on DICE, which can be formulated as followed:
![](https://static.wixstatic.com/media/24faeb_ba8b20fdb4604d75ad9439ba53376e31~mv2.png/v1/fill/w_426,h_100,al_c,q_85,enc_auto/24faeb_ba8b20fdb4604d75ad9439ba53376e31~mv2.png)
where TP, FP and FN denote the numbers of True Positive, False Positive and False Negative samples, respectively.
5.2. Ablation Results
The overall classification results disregarding the segmentation areas for all the methods used are reported in Table 1 and Table 2. Table 1 shows the results for the different methodologies, while Table 2 shows the results for when convex hull is applied to the models’ outputs. Since the thresholds and minimum sizes for creating the segmentation masks are determined based on the validation DICE score for every class after applying convex hull, the classification results may vary when compared to the original models’ outputs without post-processing.
![](https://static.wixstatic.com/media/24faeb_d03dc96f6f534230b659b27c485007fb~mv2.png/v1/fill/w_980,h_503,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/24faeb_d03dc96f6f534230b659b27c485007fb~mv2.png)
5.3. Analysis of Classification Results
From the above results, we can see that using convex hull generally improves the classification performance for all of the models. For Entropy & Superpixels, using convex hull improves the recall scores for the classes Fish and Flower, pushing the F1-Scores to the highest scores of 0.72 and 0.82. We think that this is because the shapes for these classes benefit from the additional entropy and superpixels channels. Since these channels are able to provide better resolutions to the shapes of the clouds, making these shapes to be clearer to the models in the inputs. For the Multi-Task model, using convex hull also improves the recall scores for the classes Gravel and Sugar, pushing the F1-Scores to the highest scores of 0.62 and 0.65. Since this model is trained with a multi-labels classification task, this learning process has helped the model better identify the classes for each image. Since Gravel and Sugar mostly have similar patterns, unlike Fish and Flower having many different shapes and orientations, the model has a better performance for these classes.
It is important to note that using convex hull may also negatively impact the classification results. For the Encoder-Decoder Model, Sugar actually has a better F1-Score without applying the convex hull. This means that using convex hull increases the required thresholds and minimum sizes for the segmentation masks in order to improve the validation DICE scores. Nevertheless, this causes information loss and reduces the overall classification performance for that class. An example of this information loss is shown in Figure 4(2-3).
![](https://static.wixstatic.com/media/24faeb_7d66b82eb72d41fdaf4aeccc9031e487~mv2.png/v1/fill/w_980,h_485,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/24faeb_7d66b82eb72d41fdaf4aeccc9031e487~mv2.png)
5.4. Ensemble Method
With these classification results, we make use of the ensemble method to capture the best results for each class. From Table 3, we can see that the encoder-decoder model with convex hull has the best testing DICE scores. In order to prevent the information loss mentioned above, we perform a logical ”OR” operation to combine the masks for the testing results of the encoder-decoder model with and without convex hull. We also combine the results with the Entropy & Superpixels method for Fish and Flower, and combine the results with the Multi-Task Model for Gravel and Sugar. An example result for this process is shown in Figure 4. This allows us to achieve the highest testing DICE score overall, with a private score of 0.642 as shown in Table 3.
![](https://static.wixstatic.com/media/24faeb_d28bc03ba3534aea8aee34a8af6a9874~mv2.png/v1/fill/w_980,h_128,al_c,q_85,usm_0.66_1.00_0.01,enc_auto/24faeb_d28bc03ba3534aea8aee34a8af6a9874~mv2.png)
6. Conclusion
In this project, we have learned about various different methods for the cloud detection and classification task. We developed our own deep learning models and came up with novel ideas for this specific clouds segmentation problem. We learned that encoder-decoder based are suitable for segmentation tasks. Introducing channels to amplify cloud boundaries helps in identifying larger cloud shapes such as Fish and Flower. Training a classification head on top of the base model helps improve the identification of static cloud types such as Gravel and Sugar.
All in all, we achieved a satisfying performance with only 0.03 testing DICE score behind the first place of the competition. Further improvements can be done by creating an ensemble of multiple models with different architectures, such as Feature Pyramid Network (FPN), which is the approach that the champion has taken. Moreover, we can see that the data distribution for the four classes are not very balanced. It may be beneficial to take measures to overcome data imbalance, as the distribution for the test set may not be the same as the training set.
References
[1] R. Achanta, A. Shaji, K. Smith, A. Lucchi, P. Fua, and S. Su ̈sstrunk. Slic superpixels compared to state-of-the-art superpixel methods. IEEE Transactions on Pattern Analysis and Machine Intelligence, 34(11):2274–2282, Nov 2012. ISSN 1939-3539. doi: 10.1109/TPAMI.2012.120.
[2] Ting Bai, Deren Li, Kaimin Sun, Yepei Chen, and Wenzhuo Li. Cloud detection for high-resolution satellite imagery using machine learning and multi-feature fusion. Remote Sensing, 8(9):715, 2016.
[3] Brian B Barnes and Chuanmin Hu. A hybrid cloud detection algorithm to improve modis sea surface temperature data quality and coverage over the eastern gulf of mexico. IEEE Transactions on Geoscience and Remote Sensing, 51(6):3273–3285, 2012.
[4] EmreBas ̧eskiandC ̧ag ̆larCenaras.Texture and color based cloud detection. In2015 7th international conference on recent advances in space technologies (RAST), pages 311–315. IEEE, 2015.
[5] MarianaBelgiuandLucianDra ̆gu ̧t. Random forest in remote sensing: A review of applications and future directions. ISPRS Journal of Photogrammetry and Remote Sensing, 114:24–31, 2016.
[6] Jan Cermak and Jo ̈rg Bendix. Dynamical nighttime fog/low stratus detection based on meteosat seviri data: A feasibility study. Pure and applied Geophysics, 164(6-7):1179–1192, 2007.
[7] Liang-Chieh Chen, George Papandreou, Iasonas Kokkinos, Kevin Murphy, and Alan L Yuille. Deeplab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs. IEEE transactions on pattern analysis and machine intelligence, 40(4):834–848, 2017.
[8] Liang-Chieh Chen, Yukun Zhu, George Papandreou, Florian Schroff, and Hartwig Adam. Encoder-decoder with atrous separable convolution for semantic image segmentation. In Proceedings of the European conference on computer vision (ECCV), pages 801–818, 2018.
[9] Yang Chen, Rongshuang Fan, Muhammad Bilal, Xiucheng Yang, Jingxue Wang, and Wei Li. Multilevel cloud detection for high-resolution remote sensing imagery using multiple convolutional neural networks. ISPRS International Journal of Geo-Information, 7(5):181, 2018.
[10] Juan Deng, Hongchen Wang, and Jun Ma. An automatic cloud detection algorithm for landsat remote sensing image. In 2016 4th International Workshop on Earth Observation and Remote Sensing Applications (EORSA), pages 395–399. IEEE, 2016.
[11] Johannes Dro ̈nner, Nikolaus Korfhage, Sebastian Egli, Markus Mu ̈hling, Boris Thies, Jo ̈rg Bendix, Bernd Freisleben, and Bernhard Seeger. Fast cloud segmentation using convolutional neural networks. Remote Sensing, 10(11):1782, 2018.
[12] Sebastian Egli, Boris Thies, and Jo ̈rg Bendix. A hybrid approach for fog retrieval based on a combination of satellite and ground truth data. Remote Sensing, 10(4):628, 2018.
[13] Mark Everingham and John Winn. The pascal visual object classes challenge 2012 (voc2012) development kit. Pattern Analysis, Statistical Modelling and Computational Learning, Tech. Rep, 2011.
[14] Adrian Fisher. Cloud and cloud-shadow detection in spot5 hrg imagery with automated morphological feature extraction. Remote Sensing, 6(1):776–800, 2014.
[15] GGesell. Analgorithm for snow and ice detection using avhrr data an extension to the apollo software package. International Journal of Remote Sensing, 10(4-5):897–905, 1989.
[16] Luis Go ́mez-Chova, Julia Amoro ́s-Lo ́pez, Gonzalo Mateo-Garc ́ıa, Jordi Mun ̃oz-Mar ́ı, and Gustau Camps-Valls. Cloud masking and removal in remote sensing image time series. Journal of Applied Remote Sensing, 11(1):015005, 2017.
[17] Nicholas R Goodwin, Lisa J Collett, Robert J Denham, Neil Flood, and Daniel Tindall. Cloud and cloud shadow screening across queensland, australia: An automated method for landsat tm/etm+ time series. Remote Sensing of Environment, 134:50–65, 2013.
[18] ZQ Gu, CN Duncan, E Renshaw, MA Mugglestone, CFN Cowan, and PM Grant. Comparison of techniques for measuring cloud texture in remotely sensed satellite meteorological image data. In IEE Proceedings F (Radar and Signal Processing), volume 136, pages 236–248. IET, 1989.
[19] OlivierHagolle,MireilleHuc,DVillaPascual,andGe ́rardDedieu.Amulti-temporalmethodforclouddetection,appliedtoformosat- 2, venμs, landsat and sentinel-2 images. Remote Sensing of Environment, 114(8):1747–1755, 2010.
[20] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 770–778, 2016.
[21] Quan-Jun He. A daytime cloud detection algorithm for fy-3a/virr data. International journal of remote sensing, 32(21):6811–6822, 2011.
[22] Haruma Ishida, Yu Oishi, Keitaro Morita, Keigo Moriwaki, and Takashi Y Nakajima. Development of a support vector machine based cloud detection method for modis with the adjustability to various conditions. Remote sensing of environment, 205:390–407, 2018.
[23] Ch Latry, Ch Panem, and Ph Dejean. Cloud detection with svm technique. In 2007 IEEE International Geoscience and Remote Sensing Symposium, pages 448–451. IEEE, 2007.
[24] Matthieu Le Goff, J-Y Tourneret, Herwig Wendt, Mathias Ortner, and Marc Spigai. Deep learning for cloud detection. 2017.
[25] Yann LeCun, Yoshua Bengio, and Geoffrey Hinton. Deep learning. nature, 521(7553):436–444, 2015.
[26] Yoonkyung Lee, Grace Wahba, and Steven A Ackerman. Cloud classification of satellite radiance data by multicategory support vector machines. Journal of Atmospheric and Oceanic Technology, 21(2):159–169, 2004.
[27] Qingyong Li, Weitao Lu, Jun Yang, and James Z Wang. Thin cloud detection of all-sky images using markov random fields. IEEE Geoscience and remote sensing letters, 9(3):417–421, 2011.
[28] Guosheng Lin, Anton Milan, Chunhua Shen, and Ian Reid. Refinenet: Multi-path refinement networks for high-resolution semantic segmentation. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 1925–1934, 2017.
[29] Chenxi Liu, Liang-Chieh Chen, Florian Schroff, Hartwig Adam, Wei Hua, Alan L Yuille, and Li Fei-Fei. Auto-deeplab: Hierarchical neural architecture search for semantic image segmentation. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 82–92, 2019.
[30] Max Planck Institute for Meteorology. Understanding Clouds from Satellite Images, 2019. URL https://www.kaggle.com/ c/understanding_cloud_organization.
[31] Jiang Qian, Ye Luo, Yong Wang, and Daotong Li. Cloud detection of optical remote sensing image time series using mean shift algorithm. In 2016 IEEE International Geoscience and Remote Sensing Symposium (IGARSS), pages 560–562. IEEE, 2016.
[32] Olaf Ronneberger, Philipp Fischer, and Thomas Brox. U-net: Convolutional networks for biomedical image segmentation. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 9351: 234–241, 2015. ISSN 16113349. doi: 10.1007/978-3-319-24574-4 28.
[33] William B Rossow and Leonid C Garder. Cloud detection using satellite measurements of infrared and visible radiances for isccp. Journal of climate, 6(12):2341–2369, 1993.
[34] R Wl Saunders and K Ts Kriebel. An improved method for detecting clear sky and cloudy radiances from avhrr data. International Journal of Remote Sensing, 9(1):123–150, 1988.
[35] C Schillings, H Mannstein, and R Meyer. Operational method for deriving high resolution direct normal irradiance from satellite data. Solar Energy, 76(4):475–484, 2004.
[36] Zhenfeng Shao, Juan Deng, Lei Wang, Yewen Fan, Neema Sumari, and Qimin Cheng. Fuzzy autoencode based cloud detection for remote sensing imagery. Remote Sensing, 9(4):311, 2017.
[37] Jack Sklansky. Finding the convex hull of a simple polygon. Pattern Recognition Letters, 1(2):79–83, 1982.
[38] B Thies and Jo ̈rg Bendix. Satellite based remote sensing of weather and climate: recent achievements and future perspectives. Meteorological Applications, 18(3):262–295, 2011.
[39] Jing Wei, Lin Sun, Chen Jia, Yikun Yang, Xueying Zhou, Ping Gan, Shangfeng Jia, Fangwei Liu, and Ruibo Li. Dynamic threshold cloud detection algorithms for modis and landsat 8 data. In 2016 IEEE International Geoscience and Remote Sensing Symposium (IGARSS), pages 566–569. IEEE, 2016.
[40] Fengying Xie, Mengyun Shi, Zhenwei Shi, Jihao Yin, and Danpei Zhao. Multilevel cloud detection in remote sensing images based on deep learning. IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing, 10(8):3631–3640, 2017.
[41] Pavel Yakubovskiy. Segmentation models pytorch. URL https://github.com/qubvel/segmentation_models. pytorch.
[42] Jingyu Yang, Jianhua Guo, Huanjing Yue, Zhiheng Liu, Haofeng Hu, and Kun Li. Cdnet: Cnn-based cloud detection for remote sensing imagery. IEEE Transactions on Geoscience and Remote Sensing, 2019.
[43] Yongjie Zhan, Jian Wang, Jianping Shi, Guangliang Cheng, Lele Yao, and Weidong Sun. Distinguishing cloud and snow in satellite images via deep convolutional network. IEEE Geoscience and Remote Sensing Letters, 14(10):1785–1789, 2017.
[44] Yuanchong Zhang, William B Rossow, Andrew A Lacis, Valdar Oinas, and Michael I Mishchenko. Calculation of radiative fluxes from the surface to top of atmosphere based on isccp and other global data sets: Refinements of the radiative transfer model and the input data. Journal of Geophysical Research: Atmospheres, 109(D19), 2004.
[45] Bo Zhong, Wuhan Chen, Shanlong Wu, Longfei Hu, Xiaobo Luo, and Qinhuo Liu. A cloud detection method based on relationship between objects of cloud and cloud-shadow for chinese moderate to high resolution satellite imagery. IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing, 10(11):4898–4908, 2017.
[46] Zhe Zhu and Curtis E Woodcock. Automated cloud, cloud shadow, and snow detection in multitemporal landsat data: An algorithm designed specifically for monitoring land cover change. Remote Sensing of Environment, 152:217–234, 2014.
Comments