Label Less, Learn More: Resource-Efficient Active Semi-Supervised Learning for Onboard Satellite Image Annotation
Organizations: School of Engineering and Applied Science, Washington State University, Richland, WA 99354, USA · Institute for Software Technology, German Aerospace Center (DLR), Porz, 51147 Cologne, Germany
Abstract
Large-scale pervasive sensing increasingly relies on high-resolution satellite imagery, yet task-specific onboard vision is constrained by costly annotation and limited computation, memory, energy, and communication resources. Existing approaches largely rely on either data-hungry supervised learning or large vision-language foundation models, limiting efficient adaptation and deployment under these constraints. We present SatLabel, a resource-aware learning framework that transforms limited satellite labels into progressively refined onboard models through adaptive sample acquisition and semi-supervised model adaptation. Rather than repeatedly training on uniformly sampled labels, SatLabel closes the loop between model uncertainty, class imbalance, and pseudo-label quality to selectively acquire informative samples while exploiting abundant unlabeled imagery. This enables a compact student to adapt to target sensing domains with reduced annotation and inference costs. We further introduce an optional Mixture-of-Experts (MoE) student with graph-based feature refinement to enhance representation capacity while retaining a lightweight footprint. We evaluate SatLabel on 11 remote-sensing datasets spanning core, extended, and unseen domains against RemoteCLIP zero-shot inference. SatLabel improves Macro-F1 on most core and extended datasets while maintaining strong cross-dataset transfer to unseen domains. More importantly, the Balanced student contains only 11.2 M parameters and occupies approximately 42.8 MB, compared with 151.3M parameters and 577 MB for RemoteCLIP, while requiring 3.65 versus 5.89 GFLOPs. Across four efficiency benchmarks, it achieves approximately 2x higher GPU-forward throughput and reduces energy per image on datasets.
Figures & tables
| Dataset | RemoteCLIP | RS-M-CLIP | GeoRSCLIP | SkyCLIP | SatLabel |
|---|---|---|---|---|---|
| AID | 86.83 | 88.90 | 76.33 | 70.89 | 94.41 (MoE+GCN) |
| EuroSAT | 32.46 | 25.85 | 67.47 | 71.70 | 95.37 (Balanced) |
| UC Merced | 77.95 | 91.50 | 74.50 | 74.80 | 91.00 (MoE+GCN) |
| RESISC45 | 68.38 | 92.62 | 73.83 | 70.94 | 86.63 (Balanced) |
| PatternNet | 57.52 | 50.95 | 74.80 | 80.88 | 95.90 (Balanced) |
| RSI-CB256 | 50.38 | 47.50 | 61.00 | 50.09 | 87.01 (Balanced) |
| Model | Params (M) | Size (MB) | FLOPs (G) |
|---|---|---|---|
| RemoteCLIP ViT-B/32 | 151.28 | 577.21 | 5.89 |
| RS-M-CLIP | 366.12 | 1396.81 | 5.89 |
| GeoRSCLIP ViT-B/32 | 151.28 | 577.21 | 5.89 |
| SkyCLIP ViT-B/32 | 151.28 | 577.21 | 5.89 |
| SatLabel (Balanced) | 11.21 | 42.83 | 3.65 |
| SatLabel (MoE+GCN) | 20.40 | 77.93 | 3.67 |
| Model | Images/s | Energy (J/img) | Power (W) | Peak GPU (MB) |
| RemoteCLIP ViT-B/32 | 12128.4 | 0.128 | 741.9 | |
| RS-M-CLIP | 12211.2 | 0.124 | 1560.4 | |
| GeoRSCLIP ViT-B/32 | 11692.5 | 0.127 | 760.7 | |
| SkyCLIP ViT-B/32 | 12246.8 | 0.130 | 741.9 | |
| SatLabel (Balanced) | 24353.8 | 0.106 | 381.1 | |
| SatLabel (MoE+GCN) | 12623.0 | 0.123 | 575.4 |
| Model | Images/s | Energy (J/img) | Power (W) | Peak GPU (MB) |
| RemoteCLIP ViT-B/32 | 11966.9 | 0.055 | 741.9 | |
| RS-M-CLIP | 12028.5 | 0.055 | 1560.4 | |
| GeoRSCLIP ViT-B/32 | 11712.4 | 0.056 | 760.6 | |
| SkyCLIP ViT-B/32 | 12111.9 | 0.055 | 741.9 | |
| SatLabel (Balanced) | 24143.0 | 0.036 | 381.1 | |
| SatLabel (MoE+GCN) | 12607.4 | 0.052 | 575.4 |
| Model | Images/s | Energy (J/img) | Power (W) | Peak GPU (MB) |
| RemoteCLIP ViT-B/32 | 11992.8 | 0.064 | 741.9 | |
| RS-M-CLIP | 11852.3 | 0.068 | 1560.4 | |
| GeoRSCLIP ViT-B/32 | 11711.4 | 0.065 | 760.7 | |
| SkyCLIP ViT-B/32 | 12012.8 | 0.064 | 741.9 | |
| SatLabel (Balanced) | 24282.9 | 0.044 | 381.2 | |
| SatLabel (MoE+GCN) | 12598.1 | 0.059 | 575.5 |
| Model | Images/s | Energy (J/img) | Power (W) | Peak GPU (MB) |
| RemoteCLIP ViT-B/32 | 12029.0 | 0.097 | 741.9 | |
| RS-M-CLIP | 11891.9 | 0.103 | 1560.4 | |
| GeoRSCLIP ViT-B/32 | 11585.5 | 0.107 | 760.7 | |
| SkyCLIP ViT-B/32 | 12185.9 | 0.105 | 741.9 | |
| SatLabel (Balanced) | 24292.2 | 0.100 | 381.3 | |
| SatLabel (MoE+GCN) | 12677.1 | 0.129 | 575.6 |
| Dataset | Cov. | RC F1 | Stud. Acc. | Stud. F1 | Best setup |
|---|---|---|---|---|---|
| OPTIMAL31 | 100.00 | 75.98 | 92.63 | 93.56 | 06 Mix, Balanced |
| RSC11 | 90.91 | 60.42 | 56.97 | 71.97 | 06 Mix, MoE+GCN |
| RS2800 | 100.00 | 62.99 | 48.82 | 54.70 | 04 WHU, MoE+GCN |
| SIRI-WHU | 100.00 | 59.07 | 47.33 | 51.14 | 01 Base, MoE+GCN |
| RemoteCLIP | Student ResNet-18 | Student ResNet-50 | ||||
|---|---|---|---|---|---|---|
| Dataset | Acc. | F1 | Acc. | F1 | Acc. | F1 |
| AID | 86.83 | 86.04 | 94.41 | 94.76 | 94.53 | 95.02 |
| EuroSAT | 32.46 | 29.87 | 95.37 | 95.95 | 94.87 | 96.29 |
| UC Merced | 77.95 | 74.63 | 91.00 | 94.01 | 80.52 | 86.09 |
| RESISC45 | 68.38 | 66.53 | 86.63 | 88.24 | 88.38 | 90.34 |
| PatternNet | 57.52 | 52.15 | 95.90 | 96.26 | 93.24 | 93.41 |
| Configuration | (Accuracy, %) | |
|---|---|---|
| (1) ResNet-18 supervised | 89.4 | — |
| (2) +KD from RemoteCLIP | 91.2 | +1.8 |
| (3) +Consistency (FixMatch) | 92.3 | +1.1 |
| (4) +Active learning (random) † | 92.6 | +0.3 |
| (5) +Active learning (uncertainty) | 93.1 | +0.5 |
| (6) +MoE (softmax gating) | 93.3 | +0.2 |
Appendix figures & tables23 assets
Supplementary material from the paper’s appendix.
Appendix
| Group | Dataset | Classes | Images | Min | Max | Mean |
| Core | AID | 30 | 10,000 | 220 | 420 | 333 |
| Core | EuroSAT | 10 | 27,000 | 2000 | 3000 | 2700 |
| Core | UC Merced | 21 | 2,100 | 100 | 100 | 100 |
| Extended | RESISC45 | 45 | 31,500 | 700 | 700 | 700 |
| Extended | PatternNet | 38 | 30,400 | 800 | 800 | 800 |
| Extended | RSI-CB256 | 7 | 24,747 | 884 | 6258 | 3535 |
| Experiment | Training domains |
|---|---|
| 01 Baseline | AID, UC Merced, EuroSAT |
| 02 + RESISC45 | AID, UC Merced, EuroSAT, RESISC45 |
| 03 + PatternNet | AID, UC Merced, EuroSAT, PatternNet |
| 04 + WHU-RS19 | AID, UC Merced, EuroSAT, WHU-RS19 |
| 05 + RSI-CB256 | AID, UC Merced, EuroSAT, RSI-CB256 |
| 06 All Eval Mix | AID, UC Merced, EuroSAT, RESISC45, PatternNet, WHU-RS19, RSI-CB256 |
| Group | Dataset | RC Acc. | Stud. Acc. | Stud. F1 | Acc. |
|---|---|---|---|---|---|
| Core | AID | 86.83 | 94.41 | 94.76 | +7.58 |
| Core | EuroSAT | 32.46 | 95.37 | 95.95 | +62.91 |
| Core | UC Merced | 77.95 | 91.00 | 94.01 | +13.05 |
| Extended | RESISC45 | 68.38 | 86.63 | 88.24 | +18.25 |
| Extended | PatternNet | 57.52 | 95.90 | 96.26 | +38.38 |
| Extended | RSI-CB256 | 50.38 | 87.01 | 91.36 | +36.63 |
| Dataset | RemoteCLIP | Student (R18) | Acc. |
|---|---|---|---|
| AID | 86.83 / 86.06 | 94.41 / 94.76 | +7.58 |
| EuroSAT | 32.46 / 29.87 | 95.37 / 95.95 | +62.91 |
| UC Merced | 77.95 / 74.63 | 91.00 / 94.01 | +13.05 |
| RESISC45 | 68.38 / 66.53 | 86.63 / 88.24 | +18.25 |
| PatternNet | 57.52 / 52.15 | 95.90 / 96.26 | +38.38 |
| RSI-CB256 | 50.38 / 42.60 | 87.01 / 91.36 | +36.63 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Forest | 250 | 99.6 | 99.6 | 100.0 |
| Beach | 400 | 99.0 | 99.2 | 99.7 |
| Meadow | 280 | 99.3 | 98.9 | 99.6 |
| Parking | 390 | 98.5 | 99.2 | 99.4 |
| Mountain | 340 | 98.8 | 98.5 | 99.2 |
| Viaduct | 420 | 97.2 | 100.0 | 99.1 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Residential | 3000 | 99.5 | 99.0 | 98.5 |
| Industrial | 2500 | 98.9 | 99.4 | 98.5 |
| Sea Or Lake | 3000 | 98.8 | 99.0 | 98.2 |
| Forest | 3000 | 98.2 | 98.9 | 97.9 |
| Highway | 2500 | 98.4 | 94.6 | 95.8 |
| River | 2500 | 93.4 | 98.8 | 95.3 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Beach | 100 | 100.0 | 100.0 | 99.4 |
| Harbor | 100 | 99.0 | 100.0 | 98.9 |
| Parkinglot | 100 | 100.0 | 99.0 | 98.9 |
| Tenniscourt | 100 | 100.0 | 99.0 | 98.9 |
| Agricultural | 100 | 99.0 | 99.0 | 98.4 |
| Baseballdiamond | 100 | 100.0 | 98.0 | 98.4 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Sea Ice | 700 | 99.7 | 98.3 | 97.0 |
| Airplane | 700 | 98.1 | 98.3 | 96.2 |
| Beach | 700 | 96.7 | 97.7 | 95.3 |
| Circular Farmland | 700 | 96.6 | 97.6 | 95.1 |
| Golf Course | 700 | 98.8 | 94.7 | 94.8 |
| Harbor | 700 | 93.7 | 99.6 | 94.6 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Forest | 800 | 100.0 | 100.0 | 100.0 |
| Oil Well | 800 | 100.0 | 100.0 | 100.0 |
| Freeway | 800 | 100.0 | 99.7 | 100.0 |
| Airplane | 800 | 99.8 | 99.9 | 100.0 |
| Runway | 800 | 99.9 | 99.7 | 100.0 |
| Beach | 800 | 99.5 | 100.0 | 100.0 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Woodland | 6258 | 99.8 | 99.8 | 92.0 |
| Construction Land | 3791 | 99.8 | 99.4 | 91.9 |
| Water Area | 4104 | 98.8 | 99.1 | 91.4 |
| Other Objects | 884 | 99.7 | 98.1 | 91.3 |
| Other Land | 3593 | 99.1 | 98.5 | 91.2 |
| Cultivated Land | 2817 | 98.1 | 98.8 | 90.9 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Football Field | 50 | 100.0 | 100.0 | 87.6 |
| Meadow | 61 | 100.0 | 98.4 | 86.8 |
| River | 56 | 100.0 | 98.2 | 86.8 |
| Pond | 54 | 98.2 | 100.0 | 86.8 |
| Port | 53 | 100.0 | 98.1 | 86.7 |
| Mountain | 50 | 98.0 | 100.0 | 86.7 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Dense Forest | 69 | 100.0 | 98.6 | 99.3 |
| Harbor | 44 | 97.7 | 97.7 | 97.7 |
| Sparse Forest | 56 | 100.0 | 89.3 | 94.3 |
| Storage Tanks | 53 | 98.0 | 90.6 | 94.1 |
| Grassland | 51 | 90.7 | 96.1 | 93.3 |
| Residential Area | 70 | 86.8 | 94.3 | 90.4 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Field | 200 | 86.8 | 85.5 | 86.0 |
| Resident | 200 | 82.4 | 82.0 | 82.2 |
| Forest | 200 | 75.7 | 85.5 | 80.3 |
| River Or Lake | 200 | 83.9 | 75.5 | 79.5 |
| Parking | 200 | 72.2 | 67.5 | 69.8 |
| Grass | 200 | 71.8 | 67.5 | 69.6 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Water | 100 | 99.0 | 100.0 | 99.4 |
| Residential | 100 | 91.4 | 96.0 | 93.7 |
| Harbor | 100 | 92.9 | 92.0 | 92.5 |
| Overpass | 100 | 83.8 | 98.0 | 90.3 |
| Commercial | 100 | 86.5 | 90.0 | 88.2 |
| Industrial | 100 | 83.2 | 84.0 | 83.6 |
| Class | Support | Precision | Recall | F1-Score |
|---|---|---|---|---|
| Airplane | 30 | 100.0 | 100.0 | 100.0 |
| Beach | 30 | 96.7 | 96.7 | 96.7 |
| Chaparral | 30 | 96.6 | 93.3 | 94.9 |
| Island | 30 | 100.0 | 90.0 | 94.7 |
| Harbor | 30 | 93.1 | 90.0 | 91.5 |
| Parking Lot | 30 | 93.1 | 90.0 | 91.5 |
Data-Efficient Learning
Data-efficient learning develops methods that achieve accurate, robust models with fewer labeled examples, training samples, or interactions.
See all 236 papers