SwiftGS: Episodic Priors for Immediate Satellite Surface Recovery
Organizations: Independent Researcher
Abstract
Rapid, large-scale 3D reconstruction from multi-date satellite imagery is vital for environmental monitoring, urban planning, and disaster response, yet remains difficult due to illumination changes, sensor heterogeneity, and the cost of per-scene optimization. We introduce SwiftGS, a meta-learned system that reconstructs 3D surfaces in a single forward pass by predicting geometry-radiation-decoupled Gaussian primitives together with a lightweight SDF, replacing expensive per-scene fitting with episodic training that captures transferable priors. The model couples a differentiable physics graph for projection, illumination, and sensor response with spatial gating that blends sparse Gaussian detail and global SDF structure, and incorporates semantic-geometric fusion, conditional lightweight task heads, and multi-view supervision from a frozen geometric teacher under an uncertainty-aware multi-task loss. At inference, SwiftGS operates zero-shot with optional compact calibration and achieves accurate DSM reconstruction and view-consistent rendering at significantly reduced computational cost, with ablations highlighting the benefits of the hybrid representation, physics-aware rendering, and episodic meta-training.
Figures & tables
| Method | Mask Type | JAX_004 | JAX_068 | JAX_214 | JAX_260 | JAX Avg | IARPA_001 | IARPA_002 | IARPA_003 | IARPA Avg | Time (min) |
| EO-NeRF [ 11 ] | No Mask | 1.37 | 1.05 | 1.61 | 1.37 | 1.35 | 1.43 | 1.79 | 1.31 | 1.51 | 900 |
| SAT-NGP [ 18 ] | No Mask | 1.63 | 1.27 | 2.18 | 1.79 | 1.72 | 1.54 | 2.11 | 1.69 | 1.78 | 25 |
| Sat-Mesh [ 48 ] | No Mask | 1.55 | 1.15 | 2.02 | 1.36 | 1.52 | 1.40 | 2.20 | 1.30 | 1.60 | 8 |
| S2P [ 49 ] | No Mask | 1.45 | 1.19 | 1.82 | 1.66 | 1.53 | 1.48 | 2.48 | 1.38 | 1.78 | 20 |
| EOGS [ 14 ] | No Mask | 1.45 | 1.10 | 1.73 | 1.55 | 1.46 | 1.58 | 2.00 | 1.27 | 1.62 | 3 |
| s2p-hd [ 50 ] | No Mask | 2.00 | 2.20 | 2.10 | 2.00 | 2.08 | 1.80 | 1.90 | 1.80 | 1.83 | 90 |
| Method | DFC19 Dataset [ 46 ] | MVS3D Dataset [ 47 ] | ||||||
| MAE (m) | RMSE (m) | PAG2.5 (%) | PAG7.5 (%) | MAE (m) | RMSE (m) | PAG2.5 (%) | PAG7.5 (%) | |
| pixelSplat [ 51 ] | 176.03 | 189.26 | 0.02 | 0.07 | 29.15 | 38.41 | 6.18 | 18.36 |
| MVSplat [ 52 ] | 19.82 | 22.96 | 2.71 | 16.11 | 16.05 | 20.20 | 9.99 | 29.54 |
| TranSplat [ 53 ] | 21.96 | 24.94 | 1.86 | 11.40 | 15.81 | 19.01 | 9.44 | 27.85 |
| DepthSplat [ 54 ] | 24.21 | 26.76 | 0.89 | 6.33 | 15.81 | 19.01 | 9.44 | 27.85 |
| HiSplat [ 55 ] | 13.18 | 16.59 | 15.06 | 37.08 | 15.63 | 19.37 | 9.96 | 29.34 |
| Configuration | Iterations | Resid Feedback | Attention Type | DSM MAE (m) | Time (s) | Converged Episodes |
| No Fusion | 0 | No | – | 1.85 | 1.8 | 8000 |
| Single-step Fusion | 1 | No | Spatial | 1.45 | 2.1 | 6500 |
| 1 | No | Cross-Attention | 1.48 | 2.2 | 6800 | |
| 1 | No | Transformer | 1.46 | 2.5 | 7200 | |
| Iterative Fusion | 3 | No | Spatial | 1.35 | 2.4 | 5200 |
| 3 | No | Cross-Attention | 1.37 | 2.5 | 5400 |
| Meta-training Domains | Urban Test | Mountain Test | Farmland Test | Desert Test | Unseen Mixed | Average |
| Only Urban | 1.18 | 1.45 | 1.52 | 1.58 | 1.68 | 1.48 |
| Only Mountain | 1.35 | 1.27 | 1.48 | 1.55 | 1.72 | 1.47 |
| Only Farmland | 1.42 | 1.38 | 1.22 | 1.51 | 1.65 | 1.44 |
| Only Desert | 1.48 | 1.40 | 1.58 | 1.32 | 1.70 | 1.52 |
| All (Default) | 1.22 | 1.30 | 1.25 | 1.35 | 1.60 | 1.34 |
| Training Region | North America | Europe | Asia | Mean |
| North America | 1.22 | 1.28 | 1.31 | 1.27 |
| Europe | 1.29 | 1.25 | 1.33 | 1.29 |
| Asia | 1.34 | 1.30 | 1.24 | 1.29 |
| Africa (unseen) | 1.38 | 1.35 | 1.40 | 1.38 |
| (A) Active View Selection (budgeted acquisition) | ||||||
| Selection Strategy | Budget Views | DSM MAE (m) | LPIPS | Info Gain | Time (s) | vs Random |
| Random selection | 4 | 1.52 | 0.108 | 0.45 | 1.8 | - |
| Sequential selection | 4 | 1.48 | 0.106 | 0.52 | 1.8 | +2.6% |
| Active selection (Ours) | 4 | 1.29 | 0.105 | 0.81 | 2.1 | +15.1% |
| Random selection | 8 | 1.29 | 0.105 | 0.48 | 3.2 | - |
| Sequential selection | 8 | 1.26 | 0.104 | 0.55 | 3.2 | +2.3% |
| View Count | 2 views | 4 views | 8 views | 16+ views |
| EO-NeRF [ 11 ] | 2.84 | 1.92 | 1.45 | 1.35 |
| EOGS [ 14 ] | 2.15 | 1.68 | 1.46 | 1.41 |
| SwiftGS | 1.89 | 1.52 | 1.29 | 1.22 |
Appendix figures & tables7 assets
Supplementary material from the paper’s appendix.
Appendix
| Configuration | MAE (m) | ||||||||
| Default | 0.1 | 1.0 | 2.0 | 1.0 | 0.5 | 0.01 | 0.001 | 0.1 | 1.22 |
| 0.15 | 1.0 | 2.0 | 1.0 | 0.5 | 0.01 | 0.001 | 0.1 | 1.24 | |
| 0.05 | 1.0 | 2.0 | 1.0 | 0.5 | 0.01 | 0.001 | 0.1 | 1.25 | |
| 0.1 | 1.5 | 2.0 | 1.0 | 0.5 | 0.01 | 0.001 | 0.1 | 1.21 | |
| 0.1 | 0.5 | 2.0 | 1.0 | 0.5 | 0.01 | 0.001 | 0.1 | 1.28 | |
| 0.1 | 1.0 | 3.0 | 1.0 | 0.5 | 0.01 | 0.001 | 0.1 | 1.20 |
| Test Sensor | Native Resolution (m) | DSM MAE (m) | Relative Degradation |
| WorldView-3 (training) | 0.31 | 1.22 | – |
| WorldView-2 | 0.46 | 1.32 | +8.2% |
| GeoEye-1 | 0.41 | 1.37 | +12.3% |
| RPC Noise Level (%) | 0 | 2 | 5 | 10 | 20 | 50 |
| SwiftGS (with calibration) | 1.22 | 1.24 | 1.28 | 1.35 | 1.52 | 2.41 |
| SwiftGS (zero-shot, no calib) | 1.36 | 1.38 | 1.42 | 1.51 | 1.78 | 3.12 |
| EO-NeRF (per-scene opt) | 1.35 | 1.36 | 1.38 | 1.45 | 1.89 | 3.85 |
| Processing Stage | Time (seconds) |
| Multi-view feature extraction | 98.4 |
| Scene latent computation | 12.3 |
| Hybrid decoder forward pass | 24.7 |
| Gaussian primitive generation | 8.2 |
| SDF query and gating evaluation | 15.6 |
| Physics-based rendering (all views) | 31.8 |
| Scene Characteristic | Prevalence (%) | MAE (m) | Normalized Error | Primary Cause |
| Standard conditions | 67.3 | 1.18 | 1.00 | – |
| Dense high-rise urban | 8.4 | 2.34 | 1.98 | Severe occlusion, height ambiguity |
| Water bodies | 6.2 | 2.89 | 2.45 | Specular reflection, textureless surfaces |
| Extreme shadow ( 60% cover) | 5.7 | 2.12 | 1.80 | Illumination prior mismatch |
| Cloud contamination | 4.8 | 2.56 | 2.17 | Transient unmodeled occlusion |
| Steep terrain ( 45° slope) | 4.1 | 2.03 | 1.72 | Foreshortening, geometric distortion |