--- license: apache-2.0 tags: - computer-vision - image-segmentation - satellite-imagery - remote-sensing - pytorch - uncertainty-estimation datasets: - 38-cloud metrics: - iou - dice - precision - recall - f1 --- # 🌍 AERIS — Cloud Detection for Landsat 8 AERIS (Automated Environmental Remote Imaging System) is a deep learning model for **cloud segmentation in Landsat 8 satellite imagery** with built-in **uncertainty quantification** using Monte Carlo Dropout. The model performs high-accuracy binary segmentation on 4-channel satellite inputs (RGB + NIR). --- ## 🔎 Model Description - **Architecture:** U-Net - **Encoder:** ResNet34 - **Input:** 4-channel (Red, Green, Blue, Near-Infrared) - **Input Size:** 256 × 256 - **Output:** Binary cloud segmentation mask - **Framework:** PyTorch + segmentation-models-pytorch - **Uncertainty Estimation:** MC Dropout (30 stochastic forward passes) AERIS not only predicts cloud masks but also provides calibrated confidence estimates for more reliable remote sensing workflows. --- ## 📊 Performance Evaluation on the **38-Cloud dataset**: | Metric | Score | |--------|--------| | Validation IoU | **92.20%** | | Dice Coefficient | **94.28%** | | Precision | 92.15% | | Recall | 96.73% | | F1 Score | 94.28% | | Expected Calibration Error (ECE) | **0.70%** | Low ECE indicates strong confidence calibration. --- ## 🏋️ Training Details - **Dataset:** 38-Cloud (16,800 training patches) - **Loss Function:** Combined Dice + Binary Cross-Entropy - **Optimizer:** AdamW (learning rate = 1e-4) - **Epochs:** 30 - **Hardware:** NVIDIA RTX 4060 --- ## 🚀 Usage ### Installation ```bash pip install torch torchvision pip install segmentation-models-pytorch ``` ### Load Model ```python import torch import segmentation_models_pytorch as smp model = smp.Unet( encoder_name="resnet34", in_channels=4, classes=1 ) model.load_state_dict(torch.load("Aeris_Model.pth", map_location="cpu")) model.eval() ``` ### Inference ```python with torch.no_grad(): output = model(input_tensor) # input_tensor shape: [B, 4, 256, 256] ``` For uncertainty estimation, run multiple stochastic forward passes with dropout enabled. --- ## 📌 Intended Use - Satellite image preprocessing - Atmospheric correction pipelines - Cloud cover estimation - Weather monitoring systems - Remote sensing research --- ## ⚠️ Limitations - Trained only on Landsat 8 imagery - Input size fixed at 256×256 patches - Performance may degrade on unseen satellite domains - Binary cloud detection (does not classify cloud types) --- ## 📜 License This model is released under the **Apache 2.0 License**. --- ## 🤝 Contributions Contributions, improvements, and research collaborations are welcome.