Domain-Adaptive Satellite AI for Child-Center Site Prioritization

Graduate Researcher · SmartAILab, Soongsil University (Prof. Seongsin Kim) · Sep 2025 – present

To support deployment in a target region where labeled examples are scarce, I built a domain-aware transfer pipeline that combines labeled global source data with target-adjacent source data. I framed segmentation as a wide-to-narrow source curriculum, and detection as joint co-training that combines hard-negative mining with dual-resolution context modeling. The system is designed for analyst-assisted candidate prioritization rather than fully automated decision-making.

The domain gap

Source vs. target satellite samples
Representative source vs. target tiles. The shift is subtle in raw appearance — it lives in resolution, region, and label availability (the source datasets are labeled; the target region has only scarce labels), summarized at right.
Data Scope Resolution Labels Role
OpenEarthMap 44 countries 0.25–0.5 m ✓ 9-class source · seg
GID-15 East Asia ~3 m source · seg
fMoW global mixed ✓ schools source · det
Target region one region low + high-res scarce target · det + seg
  • The entire training signal is source-domain (public, labeled, mostly elsewhere); the target region carries only scarce labels and mixed resolution.
  • This is exactly the gap that makes real-world sensing hard — a model must survive shifts in resolution, acquisition, and region to a place it never saw in training, with few target labels to lean on.

Domain-adaptation strategy

Two domain-adaptation strategies Two strategies for the same goal — bridging labeled global data to a label-scarce target. Segmentation uses a Wide→Narrow two-phase scheme; detection uses 3-domain joint co-training.

  • Shared idea: lean on geographically / visually adjacent source data as a stepping stone, mine hard negatives for the target’s confounders, and boost accuracy at inference with no retraining.
  • Detection — joint co-training: an earlier two-phase recipe (global pretrain → target fine-tune) lost global knowledge to catastrophic forgetting, so I mix every domain — ImageNet-22k init, fMoW global schools, target tiles, and urban hard-negatives — in one training loop, balancing global generality against target specificity.
  • Segmentation — Wide→Narrow two-phase: pretrain on pooled OpenEarthMap + GID-15, then fine-tune on GID-15 alone (an East-Asian prior) to shift the distribution toward the target.

I. Site detection [R1]

R3 site-detection pipeline A dual-resolution SwinV2 classifier (joint co-trained), with 3×3 multi-crop at inference and a validation-tuned threshold.

  • Model — dual-resolution SwinV2-Base: each candidate is read at two fields of view (a native 256 patch + a 512→256 context crop), so the model sees both building detail and surrounding context — needed to span small schools to large campuses.
  • Hard negatives: urban non-school sites (apartment blocks, factories, offices) that look school-like are mined as negatives to suppress city false positives.
  • Inference-time multi-crop: a 3×3 grid (max over 9 offsets) absorbs coordinate noise from external sources — no retraining, +19 pp detection on a case study.
Top-ranked school candidates surfaced with high confidence
Correctly surfaced — high-confidence school candidates (buildings + open grounds).
School-like non-school sites correctly scored low
Correctly rejected — school-like non-school sites (dense housing, industrial) scored low.

Two sides of the same operating point — real candidates surfaced, look-alike negatives suppressed. Region withheld.

  • Blind, geo-disjoint evaluation on held-out cities (a proxy for deployment shift): AP 0.98, F1 0.93, recall 0.91 (up from 0.96 / 0.86 / 0.78), at false-positive rate ≈ 2%.
  • Failure mode: large multi-building campuses were the dominant miss; the dual-resolution design lifted recall ~0.78 → 0.91.
  • Operating point set by threshold tuning on validation (BCE with dynamic class weighting); output = a ranked candidate map for human review — a surface-don’t-decide tool. [R1]
  • Caveat (honest): single-seed training, no multi-seed/ablation yet; outputs are review candidates, not confirmed sites.

II. Land-cover segmentation [R2]

Land-cover segmentation results 9-class land-cover prediction (roads white, buildings red, vegetation green, water blue). Region withheld.

  • A UNetFormer (ResNet34 backbone, Transformer global–local attention decoder) over 9 harmonized land-cover classes, trained on OpenEarthMap + GID-15 mapped to one scheme (~38k images) via the Wide→Narrow two-phase scheme, with 8-fold test-time augmentation.
  • Honest limit: strong on high-resolution target imagery, marginal on low-resolution; with no target labels, only source-validation effects are measurable (no target IoU / F1).
  • Output = land-cover ratios (cropland / forest / water / built-up %) as socio-economic context for prioritizing the detected sites. [R2]

Technical reports

[R1] Calibrated site detection with geo-disjoint blind evaluation. Internal technical report, 2026.

[R2] Land-cover segmentation under source-to-target domain shift. Internal technical report, 2026.