This repository contains the official implementation of TripleS, a novel multi-task learning framework for semantic change detection in high-resolution remote sensing imagery, developed by the CVEO team at Wuhan University. This work has been published in ISPRS Journal of Photogrammetry and Remote Sensing.
- MOSCD Model: A Multi-Task Learning-oriented Semantic Change Detection model that mutually enhances bi-temporal features while ensuring coherent correlation across subtask branches.
- TripleS Framework: A comprehensive optimization framework incorporating three novel schemes:
- Stepwise Multi-Task Optimization: Progressive training strategy for MTL tasks
- Selective Parameter Binding: Strategic parameter sharing across tasks
- Dynamic Scheduling: Adaptive training schedule for MTL bindings
- Large-Scale Benchmarks: Two new datasets covering diverse scenarios in China:
- SC-SCD7: South China dataset with 7 semantic classes
- CC-SCD5: Central China dataset with 5 semantic classes
Our work addresses the fundamental challenge of conflicting objectives in multi-task learning for semantic change detection, providing a robust solution for high-resolution remote sensing applications.
Our Multi-Task Learning-oriented Semantic Change Detection model optimized with the TripleS framework:
- Python 3.9+
- CUDA 11.6+
- PyTorch 1.12.0+
- Create and activate conda environment:
conda create -n triples python=3.9
conda activate triples- Install dependencies:
conda install pytorch==1.12.0 torchvision==0.13.0 cudatoolkit=11.6 pillow numpy tqdm matplotlib segmentation-models-pytorch opencv -c pytorch -c conda-forge
pip install segmentation-models-pytorch==0.3.4- HRSCD - High Resolution Semantic Change Detection Dataset
- SC-SCD7 & CC-SCD5 - Our proposed large-scale benchmarks
Organize your datasets according to the structure specified in the .txt files located in the /txt directory:
MTL-TripleS/
βββ data/
β βββ HRSCD/
β β βββ train/
β β βββ test/
β β βββ ...
β βββ SCSCD7/
β βββ CCSCD5/
βββ txt/
βββ HRSCD/
β βββ train_HRSCD_512.txt
β βββ test_HRSCD_512.txt
βββ ...
Train all tasks simultaneously:
python train_jointly.py --config_file ./configs/HRSCD/MOSCD_triS.jsonTraining with TripleS Alternating strategy:
python train_tripleS_A.py --config_file ./configs/SCSCD7/MOSCD_triS.jsonTraining with TripleS Cascaded strategy:
python train_tripleS_C.py --config_file ./configs/HRSCD/MOSCD_triS.jsonTrained model weights will be saved in the trained_models/ directory with the following structure:
trained_models/
βββ hrscd_512/MOSCD_triS/
βββ scscd7_512/MOSCD_triS/
βββ ccscd5_512/MOSCD_triS/
Run inference and evaluation on test datasets:
python infereval.py --config_file ./configs/CCSCD5/MOSCD_triS.json \
--ckpt_path ./trained_models/ccscd5_512/MOSCD_triS/MOSCD_triS_1/state/checkpoint.pth.tarOutput: Prediction results will be saved in the infer/ directory.
Each dataset has its corresponding configuration file in the configs/ directory:
configs/HRSCD/MOSCD_triS.json- HRSCD dataset configurationconfigs/SCSCD7/MOSCD_triS.json- SC-SCD7 dataset configurationconfigs/CCSCD5/MOSCD_triS.json- CC-SCD5 dataset configuration
Key configuration parameters:
model: Model architecture (MOSCD)backbone: Feature extractor (efficientnet-b0, resnet50, etc.)batch_size: Training batch sizelearning_rate: Learning rate for optimizationepochs: Number of training epochs
Our TripleS framework demonstrates significant improvements across multiple evaluation metrics:
- Change Detection: Enhanced binary change detection accuracy
- Semantic Segmentation: Improved semantic class prediction for both temporal images
- Multi-Task Efficiency: Reduced training time while maintaining performance
- Generalization: Robust performance across different geographical regions and land-cover types
If you find this work useful for your research, please consider citing our paper:
@article{tan2025triples,
title={TripleS: Mitigating multi-task learning conflicts for semantic change detection in high-resolution remote sensing imagery},
author={Tan, Xiaoliang and Chen, Guanzhou and Zhang, Xiaodong and Wang, Tong and Wang, Jiaqi and Wang, Kui and Miao, Tingxuan},
journal={ISPRS Journal of Photogrammetry and Remote Sensing},
volume={230},
pages={374--401},
year={2025},
publisher={Elsevier},
issn = {0924-2716},
doi = {https://doi.org/10.1016/j.isprsjprs.2025.09.019},
}This code is released for non-commercial and research purposes ONLY. For commercial applications, please contact the authors for licensing arrangements.
We gratefully acknowledge the following projects and datasets that contributed to this work:
- Code References:
β If you find this project helpful, please consider giving it a star! β




