Skip to content
/ SSCDnet Public

Semi-supervised Cloud Detection in Satellite Images by Considering Domain Shift Problem

Notifications You must be signed in to change notification settings

nkszjx/SSCDnet

Repository files navigation

Semi-supervised Cloud Detection (SSCDnet) in Satellite Images by Considering Domain Shift Problem

For semi-supervised cloud detection, we take domain shift problem into account the semi-supervised learning (SSL) network. Feature-level and output-level domain adaptations are applied to reduce the domain distribution gaps between labeled and unlabeled images, thus improving predicted results accuracy of the SSL network. Experimental results on Landsat-8 OLI (https://landsat.usgs.gov/landsat-8-cloud-cover-assessment-validation-data) and GF-1 WFV (http://sendimage.whu.edu.cn/en/mfc-validation-data/) multispectral images demonstrate that the proposed semi-supervised cloud detection network (SSCDnet) is able to achieve promising cloud detection performance when using a limited number of labeled samples and outperforms several state-of-the-art SSL methods

Package pre-requisites

The code runs on Python 3 and Pytorch 0.4 The following packages are required.

pip install scipy tqdm matplotlib numpy opencv-python
apt-get update -y
apt-get install libglib2.0-0
##
or pip install opencv-python-headless==4.5.3.56

Dataset preparation

Download ImageNet pretrained Resnet-101(Link) and place it ./pretrained_models/

Training and Validation

Training and Validation

python train_SSCDnet.py   python evaluate.py 

Limitations

Although SSCDnet shows good performance, there is still much room for improvement, such as hyper-parameters setting of loss function and threshold setting of pseudolabeling. Different cloud detection datasets have different domain distributions. You may need to update these parameters to achieve a promising performance on different datasets. In addition, different ground objects have different characteristics, and the performance of SSCDnet on other objects detection also needs to be further evaluated.

Instructions for setting-up Multi-Label Mean-Teacher branch

This work is based on the Semi-supervised Semantic Segmentation with High- and Low-level Consistency. code available: https://github.com/sud0301/semisup-semseg

Acknowledgement

Parts of the code have been adapted from: DeepLab-Resnet-Pytorch, AdvSemiSeg, PyTorch-Encoding mean-teacher

Citation

This paper has been published by Remote sensing.

MDPI and ACS Style

Guo, J.; Xu, Q.; Zeng, Y.; Liu, Z.; Zhu, X. Semi-Supervised Cloud Detection in Satellite Images by Considering the Domain Shift Problem. Remote Sens. 2022, 14, 2641. https://doi.org/10.3390/rs14112641

AMA Style

Guo J, Xu Q, Zeng Y, Liu Z, Zhu X. Semi-Supervised Cloud Detection in Satellite Images by Considering the Domain Shift Problem. Remote Sensing. 2022; 14(11):2641. https://doi.org/10.3390/rs14112641

Chicago/Turabian Style

Guo, Jianhua, Qingsong Xu, Yue Zeng, Zhiheng Liu, and Xiaoxiang Zhu. 2022. "Semi-Supervised Cloud Detection in Satellite Images by Considering the Domain Shift Problem" Remote Sensing 14, no. 11: 2641. https://doi.org/10.3390/rs14112641

Bib Tex:

About

Semi-supervised Cloud Detection in Satellite Images by Considering Domain Shift Problem

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages