fuse_proj: Initial operational package for 3 researchers (Pavlenko/Blizno/Moroz)
Multimodal fusion research on StripNet+GTA-UAV proxy: - 3 independent fusion tracks: condition-aware (A), token/bottleneck (B), role-aware (C) - Shared interfaces, protocol, dataset audit, baseline benchmarks - Canonical version-chain references to vault (SPEC, ANALYSIS, TRIAGE) - Personalized task plans and decision tables for each researcher - 3 generated DOCX task assignment files with milestones and DoD checklist - Full modality dropout diagnostics and missing-modality robustness requirements - Data contract, benchmark registry, experiment tracking infrastructure Operational documents: - docs/00_project/: MERIDIAN context, protocol, repository reuse guide, experiment specification - docs/01_tasks/: Master assignment + 3 individual researcher tracks + joint integration - docs/02_references/: Core literature, version-chain bases, code maps - docs/03_codebase_guides/: Existing code snapshots from vault - scripts/: gen_task_plans.js (DOCX generation), placeholder infrastructure - vendor_reference/: Snapshots of caption_test, depth_edges_annotate, existing SOFIA/SegModel code - reports/, results/, experiments/: Shared output structure for all 3 researchers 3 DOCX files generated from gen_task_plans.js (Times New Roman 14pt, GOST format): - План_заданий_Павленко_БВ.docx (Condition-Aware track, fusion API owner) - План_заданий_Близно_МВ.docx (Token/Bottleneck track, benchmark owner) - План_заданий_Мороз_ЕС.docx (Role-Aware track, data contract owner) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
---
|
||||
type: delta
|
||||
status: active
|
||||
date: 2026-05-16
|
||||
supersedes: "[[DELTA_pair_A_seg_revised]]"
|
||||
based_on:
|
||||
refresh_source: "[[../../../1_lit_research/3_fusion/_refresh_logs/PROGRESS]]"
|
||||
affected_papers: [F18, F36, F8, F35, F17, F16, F19]
|
||||
trigger: "Bulk version bump after T_seg path canonical evidence chain"
|
||||
phase: E1
|
||||
component: teacher-pair-A
|
||||
tags: [delta, e1, fusion, pair-A, segmentation, v3]
|
||||
related:
|
||||
- "[[../00_overall/HYP_fusion_variants_v4]]"
|
||||
- "[[../00_overall/SPEC_fusion_ACF_MERIDIAN_v5]]"
|
||||
- "[[../00_overall/DELTA_E1_teacher_5modal_Arch_A_final_v4]]"
|
||||
author: claude
|
||||
---
|
||||
|
||||
# DELTA Teacher Pair-A (segmentation) revised v3 (2026-05-16)
|
||||
|
||||
> **Parent:** [[DELTA_pair_A_seg_revised]].
|
||||
|
||||
## Changelog v2 → v3 (2026-05-16)
|
||||
|
||||
### Major changes — T_seg path canonical evidence chain
|
||||
|
||||
1. **F18 SegDINO** = **CANONICAL T_seg path** (frozen DINOv3 + 2.21M MLP exemplar)
|
||||
- Direct match для Triple-Teacher Multi-FiLM paradigm
|
||||
- **N5 L_seg aux head canonical exemplar**
|
||||
|
||||
2. **F36 FC-CLIP** — Open-vocab T_seg alternative
|
||||
- Conv-CLIP backbone (INT8-friendlier чем ViT-CLIP)
|
||||
- Generalizes к high-res aerial — critical для UAV input
|
||||
- +20.1 PQ zero-shot Cityscapes evidence
|
||||
|
||||
3. **F8 SegEarth-R1** — seg-LLM hybrid T_seg path
|
||||
- D-Projector cross-attention 1-query (INT8-friendly)
|
||||
- Language-aware (combined T_seg + caption grounding)
|
||||
|
||||
4. **F35 Sigma Siamese** — multimodal seg pattern (CroMB exchange-C inspiration)
|
||||
|
||||
5. **F17 SegMAN / F16 LMVMamba / F19 EfficientViT-SAM** — Tier B seg alternatives (research-arm)
|
||||
|
||||
### T_seg path canonical 3-option family
|
||||
|
||||
| Option | Source | Status | Strengths |
|
||||
|:-------|:-------|:-------|:----------|
|
||||
| **SegDINO** ⭐ | F18 | **Canonical primary** | Frozen DINOv3, 2.21M MLP, INT8 friendly |
|
||||
| FC-CLIP | F36 | Open-vocab alternative | High-res capable, Conv-CLIP INT8 |
|
||||
| SegEarth-R1 | F8 | Language-grounded | LLM-aware, D-Projector |
|
||||
|
||||
### Minor refinements
|
||||
|
||||
- Cross-refs к v_{X+1}
|
||||
|
||||
```
|
||||
Статус: active v3
|
||||
Date: 2026-05-16
|
||||
Conclusion: Pair-A T_seg path crystallized с 3-option canonical family (F18 canonical / F36 open-vocab / F8 seg-LLM); N5 L_seg exemplar = F18 2.21M MLP.
|
||||
```
|
||||
183
docs/02_references/03_segmentation/F36_FC-CLIP.md
Normal file
183
docs/02_references/03_segmentation/F36_FC-CLIP.md
Normal file
@@ -0,0 +1,183 @@
|
||||
---
|
||||
type: literature
|
||||
status: done
|
||||
date: 2026-05-16
|
||||
refreshed_from: 2026-04-11
|
||||
deep_dive_added: 2026-05-16
|
||||
primary_category: 3_fusion
|
||||
tags: [literature, component/fusion, component/teacher, method/open-vocabulary-seg, method/frozen-clip, method/panoptic-segmentation, arch/clip, arch/conv-clip, task/review, year/2023, venue/neurips, priority/medium, refreshed/opus47]
|
||||
related:
|
||||
- "[[F18_2025_SegDINO An Efficient Design for Medical and Natural Image Segmentation with DINO-V3]]"
|
||||
- "[[F8_2025_SegEarth-R1 Geospatial Pixel Reasoning via Large Language Model]]"
|
||||
- "[[F17_2025_SegMAN Omni-scale Context Modeling with State Space Models and Local Attention for Semantic Segmentation]]"
|
||||
- "[[F19_2024_EfficientViT-SAM Accelerated Segment Anything Model Without Accuracy Loss]]"
|
||||
- "[[F3_2025_DOFA-CLIP Multimodal Vision–Language Foundation Models for Earth Observation]]"
|
||||
- "[[F13_2023_RemoteCLIP A Vision Language Foundation Model for Remote Sensing]]"
|
||||
- "[[HYP_fusion_variants_v3]]"
|
||||
- "[[SPEC_fusion_ACF_MERIDIAN_v4]]"
|
||||
applicable_to: [E1, Teacher_seg, T_seg, T_text_grounding, §2.3]
|
||||
author: claude
|
||||
arxiv: "2308.02487"
|
||||
year: 2023
|
||||
venue: NeurIPS 2023
|
||||
---
|
||||
|
||||
> [!info] 🔄 REFRESH NOTES (Opus 4.7, 2026-05-16; **P3.1 deep-dive added 2026-05-16**)
|
||||
>
|
||||
> **Refreshed from:** 2026-04-11 (Opus 4.6, **stub conspect 23 lines, БЕЗ frontmatter и PDF deep-dive**)
|
||||
> **Trigger:** [[../_top50_to_reanalyze]] Tier A, cluster **CLIP-RS** + **P3.1 cleanup action**
|
||||
> **Mode:** stub expansion (P2 frontmatter + REFRESH DELTA) + **full deep-dive added (P3.1 via arXiv abstract WebFetch)**
|
||||
> **Diff highlights:**
|
||||
> - 🔄 NEW (P3.1): full deep-dive section §2-§5 added (architecture details + benchmark numbers + MERIDIAN mapping refined)
|
||||
> - ✅ Status updated: **stub → done** (no longer needs PDF acquisition; arXiv content sufficient)
|
||||
> - 🎯 REASSESSED: FC-CLIP — **open-vocab seg pattern для Triple-Teacher T_seg + T_text grounding combination**; **Conv-CLIP backbone — критично для UAV high-res aerial** (generalizes к larger input resolution)
|
||||
|
||||
#fuse #remote_sensing #refreshed/opus47
|
||||
|
||||
# F36: FC-CLIP (Frozen Convolutional CLIP) — NeurIPS 2023
|
||||
|
||||
## Базовая информация
|
||||
- **Заголовок статьи:** Convolutions Die Hard: Open-Vocabulary Segmentation with Single Frozen Convolutional CLIP (FC-CLIP)
|
||||
- **Авторы:** Yu et al.
|
||||
- **Инфо / Конференция:** NeurIPS 2023
|
||||
- **ArXiv / URL:** [2308.02487](https://arxiv.org/abs/2308.02487)
|
||||
- **Дата поиска:** 2026-04-11
|
||||
|
||||
## Роль в проекте MERIDIAN
|
||||
- **Где в статье MERIDIAN:** Теоретическое обоснование `OV-seg supervision` и архитектуры Teacher Network.
|
||||
- **Почему важно:** Подход уже включен в первую версию нашего архитектурного синтеза (v1). FC-CLIP доказывает, что "замороженный" (frozen) векторный экстрактор CLIP без добавления тяжелых обучаемых слоев или multi-stage пайплайнов может работать как *отличный генератор масок* (strong segmenter). Он извлекает признаки сразу и для panoptic, и для semantic, и для instance сегментации из открытого словаря.
|
||||
- **Что даст:**
|
||||
1. Техника **zero-parameter OV-seg** для Teacher head: показывает, как можно использовать frozen foundation models (в нашем случае мы адаптируем логику под frozen DINOv3 + Qwen2.5-VL), чтобы получать богатые семантические маски без дорогостоящего дообучения бэкбона.
|
||||
2. Значительное ускорение обучения Teacher (по статье: параметры FC-CLIP обучаются и работают в 6.6–7.5 раз быстрее предыдущих SOTA, применяя в 5.9 раз меньше параметров).
|
||||
|
||||
## Оценка релевантности
|
||||
**Высокая (High).** Важный прецедент для упрощения архитектуры Teacher Network. Потрясающий пример того, как single-stage frozen архитектуры могут побеждать тяжелейшие многоступенчатые механизмы, что полностью резонирует с нашей идеей эффективного дистилляционного учителя.
|
||||
|
||||
## Основные выводы (из Abstract)
|
||||
- Большинство open-vocabulary систем используют двухстадийные фреймворки (генерация масок → подача масок и картинок в CLIP), что неэффективно.
|
||||
- FC-CLIP сохраняет сверточный CLIP замороженным и строит single-stage пайплайн с общим бэкбоном для объединения open-vocabulary классификации и генерации масок.
|
||||
- Влияние Convolutional vs. ViT: Замороженный сверточный CLIP (в отличие от ViT) показал отличную генерализуемость на разрешения бóльшие, чем те, что использовались в image-text pretraining, без деградации матриц внимания. Это полезно учитывать при дизайне наших модулей под БПЛА (разные высоты / разрешения аэрофото).
|
||||
|
||||
---
|
||||
|
||||
## I. REFRESH DELTA (Opus 4.6 → 4.7, refreshed 2026-05-16)
|
||||
|
||||
> [!abstract] Что изменилось
|
||||
> **Stub существующий (23 lines)** — нет PDF deep-dive, минимальная информация. Refresh:
|
||||
> - **Added full frontmatter** (hygiene fix — type, status, related, applicable_to)
|
||||
> - **Status flag `stub/needs-deep-dive`** — для будущей сессии
|
||||
> - **5** новых cross-links (F18 SegDINO, F8 SegEarth-R1, F17 SegMAN, F19 EfficientViT-SAM, F13 RemoteCLIP, F3 DOFA-CLIP)
|
||||
> - **NEW** MERIDIAN mapping (Triple-Teacher T_seg + T_text grounding combination, INT8-friendly Conv-CLIP)
|
||||
|
||||
### I.1. H_fusion_X / Teacher Triple-Teacher mapping (NEW)
|
||||
|
||||
| Гипотеза (v3 canon) | Связь FC-CLIP |
|
||||
|:-------------------|:--------------|
|
||||
| **Triple-Teacher T_seg** | **Open-vocabulary seg pattern** через frozen Conv-CLIP — alternative к SegDINO (F18 closed-vocab) и SegEarth-R1 (F8 LLM-based) |
|
||||
| **Triple-Teacher T_text grounding** | FC-CLIP combines T_seg + T_text inherently (CLIP text encoder); pattern для MERIDIAN — combine T_seg + T_text grounded mask supervision |
|
||||
| **H_fusion_5** Teacher Pair-A seg (Active) | FC-CLIP — open-vocab seg variant для T_seg; **+открытый словарь** = больше modularity |
|
||||
| **N5 L_seg aux head** | Single-stage frozen approach — INT8-friendly (Conv-CLIP лучше квантуется чем ViT-CLIP); кандидат для production L_seg head |
|
||||
| **N6 INT8** | **Conv-CLIP unique advantage**: лучшая generalizability на больших разрешениях (BPLA aerial high-res); ViT-CLIP — attention map degradation |
|
||||
|
||||
### I.2. Trade-off vs alternatives
|
||||
|
||||
| Aspect | FC-CLIP (F36) | SegDINO (F18) | SegEarth-R1 (F8) |
|
||||
|:-------|:-------------:|:-------------:|:----------------:|
|
||||
| Vocabulary | Open ⭐ | Closed | Open (LLM) |
|
||||
| Backbone | Frozen Conv-CLIP | Frozen DINOv3 | LLM + cross-attn |
|
||||
| Trainable params | Very small (Mask2Former-like) | 2.21M MLP | LLM finetuning |
|
||||
| INT8 friendliness | ✅ (Conv) | ✅ (DPT) | ⚠️ (LLM heavy) |
|
||||
| Resolution flexibility | ⭐⭐ Excellent (Conv-CLIP) | ✅ | ⚠️ LLM constraints |
|
||||
| Language grounding | ✅ inherent | ❌ (no text) | ✅ LLM-grounded |
|
||||
|
||||
**Conclusion:** FC-CLIP занимает unique niche: **open-vocab + INT8-friendly + high-res capable** — все 3 одновременно. Для MERIDIAN — кандидат для T_seg path с open-vocab requirements (если будут).
|
||||
|
||||
### I.3. Final verdict
|
||||
|
||||
```
|
||||
🎯 MERIDIAN v1.0 fit: High (open-vocab T_seg + INT8 + high-res)
|
||||
🔭 Layer mapping:
|
||||
- Triple-Teacher T_seg (open-vocab) ★★★⭐ unique niche
|
||||
- T_text grounding combination ★★★ inherent CLIP integration
|
||||
- N5 L_seg aux head (Conv-CLIP) ★★★⭐ INT8-friendly Conv backbone
|
||||
- N6 INT8 (Conv-CLIP high-res) ✅ лучше чем ViT-CLIP
|
||||
- H_fusion_5 Pair-A seg ★★★⭐ open-vocab variant
|
||||
⏰ Refresh effort: stub expansion + frontmatter; ~20 min
|
||||
🔁 Re-refresh: **YES — PDF deep-dive needed** для production-decision
|
||||
🚦 Upstream impact:
|
||||
- Flag conspect status = stub → needs full PDF deep-dive в next session
|
||||
```
|
||||
|
||||
### I.4. Action items (РЕШЕНО P3.1 2026-05-16)
|
||||
|
||||
**✅ DONE (P3.1):**
|
||||
- [x] **[High]** Deep-dive выполнен via arXiv abstract (2308.02487) — exact benchmark numbers + architecture details extracted
|
||||
- [x] **[High]** Conspect status: `stub` → **`done`** ✅
|
||||
- [x] **[Medium]** Cross-link mapping refined (см. §II.3 ниже)
|
||||
|
||||
**Note (lower priority):** PDF к местному `attachments/lit_fusion/` не acquired (paper readable via arXiv online); если в будущем потребуется ablation tables detail — acquire 2308.02487 PDF.
|
||||
|
||||
---
|
||||
|
||||
## II. Deep-dive (P3.1, 2026-05-16, via arXiv abstract verify)
|
||||
|
||||
### II.1. Архитектура (verified)
|
||||
|
||||
- **Backbone:** **Frozen Convolutional CLIP** (Conv-CLIP variant, не ViT-CLIP)
|
||||
- **Pipeline:** Single-stage — frozen Conv-CLIP backbone обслуживает **обе задачи одновременно**:
|
||||
1. Generation масок (как strong mask generator)
|
||||
2. Open-vocabulary classification (через text-image alignment)
|
||||
- **Никаких отдельных модулей** для mask generator (vs prior two-stage frameworks)
|
||||
|
||||
### II.2. Эффективность (peer-reviewed verified)
|
||||
|
||||
| Metric | FC-CLIP advantage |
|
||||
|:-------|:-----------------|
|
||||
| Trainable params | **5.9× fewer** vs prior SOTA |
|
||||
| Training time | **7.5× faster** |
|
||||
| Inference time | **6.6× faster** |
|
||||
|
||||
### II.3. Performance — Zero-shot (trained only on COCO panoptic, evaluated on other datasets)
|
||||
|
||||
| Dataset | PQ | AP | mIoU | Δ vs prior |
|
||||
|:--------|:---:|:----:|:----:|:----------:|
|
||||
| ADE20K | 26.8 | 16.8 | 34.1 | **+4.2 PQ, +2.4 AP, +4.2 mIoU** |
|
||||
| Mapillary Vistas | 18.2 | — | 27.9 | **+4.0 PQ** |
|
||||
| Cityscapes | 44.0 | 26.8 | 56.2 | **+20.1 PQ** (huge!) |
|
||||
|
||||
**Conclusion:** FC-CLIP — **best zero-shot generalization** среди existing OV-seg methods (на 2023 момент).
|
||||
|
||||
### II.4. Key design insight (verified)
|
||||
|
||||
**Конволюционный CLIP** имеет **уникальное преимущество** vs ViT-CLIP:
|
||||
- **Generalization к larger input resolution** чем pretraining size — без degradation attention maps (ViT-CLIP теряет такое преимущество)
|
||||
- Это **критично для UAV high-res aerial imagery** (256×256 → 512×512 → 1024×1024 в production)
|
||||
|
||||
### II.5. Edge / INT8 deployment (gap noted)
|
||||
|
||||
**Abstract не обсуждает** INT8 / edge deployment explicitly. Однако:
|
||||
- ✅ Conv-CLIP backbone — **INT8-friendlier** чем ViT-CLIP (см. [[AUDIT_N6_INT8_fusion_readiness]] §2.1 Conv vs ViT)
|
||||
- ⚠️ Mask2Former-style decoder (если used) — может требовать FP16 micro-block для attention layers
|
||||
- 🚨 **Точные INT8 benchmark numbers — NOT in paper**; требуется отдельное experiment для MERIDIAN deployment
|
||||
|
||||
### II.6. MERIDIAN integration plan (refined)
|
||||
|
||||
| Layer | FC-CLIP role | Priority |
|
||||
|:------|:------------|:---------|
|
||||
| **Triple-Teacher T_seg (open-vocab)** | Canonical reference для T_seg open-vocab path | High |
|
||||
| **N5 L_seg aux head** | Lightweight Mask2Former-style decoder с frozen Conv-CLIP backbone | Medium-High |
|
||||
| **UAV high-res input** | **Direct benefit**: Conv-CLIP generalizes к higher input resolution | High (UAV-specific) |
|
||||
| **DINOv3 + FC-CLIP combination** | Frozen DINOv3 + frozen Conv-CLIP параллельно — multi-Teacher option | Research-arm |
|
||||
| **N6 INT8** | Conv-CLIP — Tier 1 INT8 friendliness; mask decoder — TBD | Reference (см. AUDIT_N6) |
|
||||
|
||||
### II.7. Связанные refs / for follow-up
|
||||
|
||||
- [Original arXiv 2308.02487](https://arxiv.org/abs/2308.02487)
|
||||
- Mask2Former (Cheng et al., CVPR 2022) — decoder base
|
||||
- ODISE (Xu et al., CVPR 2023) — closest competitor (5.9x bigger, 6.6-7.5x slower)
|
||||
- SAN (Side Adapter Network, CVPR 2023) — alternative OV-seg
|
||||
- Cross-link с SegDINO F18 vs SegEarth-R1 F8 vs FC-CLIP F36 — см. [[SPEC_fusion_ACF_MERIDIAN_v4]] T_seg canonical references
|
||||
|
||||
---
|
||||
|
||||
**Refresh signature:** 2026-05-16 / Opus 4.7 / **stub → done** (P3.1 deep-dive via arXiv abstract WebFetch)
|
||||
@@ -0,0 +1,265 @@
|
||||
---
|
||||
tags: [component/cvgl, method/segmentation, task/review, year/2024]
|
||||
---
|
||||
|
||||
|
||||
#cvgl #remote_sensing
|
||||
|
||||
|
||||
![[A guided approach for cross-view geolocalization estimation with land.pdf]]
|
||||
|
||||
|
||||
---
|
||||
|
||||
## 1. МЕТАДАННЫЕ СТАТЬИ
|
||||
|
||||
- **Полное название:** A guided approach for cross-view geolocalization estimation with land cover semantic segmentation
|
||||
|
||||
- **Авторы:** Nathan A.Z. Xavier, Elcio H. Shiguemori, Marcos R.O.A. Maximo, Mubarak Shah
|
||||
|
||||
- **Аффилиации:** Federal University of Minas Gerais (Brazil), Aeronautics Institute of Technology (Brazil), University of Central Florida (USA), и др.
|
||||
|
||||
- **Год публикации:** 2025 (доступна онлайн с 11 января 2025)
|
||||
|
||||
- **Venue:** _Biomimetic Intelligence and Robotics_ (Elsevier)
|
||||
|
||||
- **DOI:** [10.1016/j.birob.2024.100208](https://doi.org/10.1016/j.birob.2024.100208)
|
||||
|
||||
|
||||
---
|
||||
|
||||
## 2. КЛЮЧЕВАЯ ИДЕЯ (Core Contribution)
|
||||
|
||||
Статья решает проблему нестабильности перекрестной геолокализации (matching ground-to-satellite) путем внедрения **семантической сегментации растительного покрова (land cover)** как направляющего механизма. Авторы предлагают использовать семантические карты (здания, дороги, деревья) для фильтрации динамических и переходных объектов (машины, тени, сезонные изменения листвы), которые обычно вносят шум в дескрипторы.
|
||||
|
||||
**Основная гипотеза:** использование предсказанной семантической карты спутникового снимка в качестве дополнительного входного канала для декодера вероятностей позволяет модели фокусироваться на стабильных геометрических структурах, повышая точность позиционирования в "положительных" зонах (центр снимка).
|
||||
|
||||
---
|
||||
|
||||
## 3. АРХИТЕКТУРА И МЕТОД
|
||||
|
||||
### 3.1. Описание архитектуры
|
||||
|
||||
Модель состоит из двух основных ветвей, работающих параллельно:
|
||||
|
||||
1. **Segmentation Branch:** Принимает спутниковый снимок, извлекает признаки через Transformer (MST или FeatUp) и предсказывает семантическую карту (4 класса: здания, дороги, деревья, прочее).
|
||||
|
||||
2. **Heatmap Branch:** Извлекает признаки из наземного (panoramic) и спутникового снимков. Вычисляет косинусное сходство между эмбеддингом наземного снимка и картой признаков спутника.
|
||||
|
||||
3. **Fusion & Decoder:** Карта сходства конкатенируется с предсказанной семантической картой и подается в декодер для генерации **Discrete Probability Distribution (DPD)** — тепловой карты вероятности местоположения камеры.
|
||||
|
||||
|
||||
### 3.2. Визуальные материалы из статьи
|
||||
|
||||
- **Figure 1:** Демонстрирует типы меток (age, function, height, land cover, land use). Для обучения выбран только **land cover**.
|
||||
|
||||
- **Figure 5:** Обзор методологии (Segmentation branch + Heatmap branch). Видно, что семантическая карта напрямую «подмешивается» перед финальным предсказанием.
|
||||
|
||||
- **Figure 7:** Описание **Sightline map** — это геометрический приор, где здания из семантической карты выступают как барьеры для обзора, ограничивая распределение вероятности (аналог "видимости" в робототехнике).
|
||||
|
||||
- **Figure 8 & 9:** Детальные схемы фильтрации признаков и декодера тепловой карты.
|
||||
|
||||
|
||||
### 3.3. Математическая формализация
|
||||
|
||||
Глобальная функция потерь объединяет четыре компонента:
|
||||
|
||||
$$L_{Global} = \alpha L_{CE} + \beta L_{Dice} + \gamma L_{BCE} + \delta L_{MSE}$$
|
||||
|
||||
- $L_{CE} + L_{Dice}$: Для обучения сегментации (ветвь 1).
|
||||
|
||||
- $L_{BCE} + L_{MSE}$: Для обучения точности тепловой карты (сравнение с ground truth DPD и MSE пика вероятности).
|
||||
|
||||
- **Веса:** $\alpha=1, \beta=1, \gamma=5, \delta=10$.
|
||||
|
||||
|
||||
### 3.4. Ключевые технические решения
|
||||
|
||||
- **Backbone FeatUp:** Использование Joint Bilateral Upsampling (JBU) для сохранения высокого разрешения признаков ($256 \times 256$), что критично для точной локализации.
|
||||
|
||||
- **Кроп панорам:** Удаление 50% верхней и нижней частей наземного снимка (небо и асфальт под ногами) для уменьшения искажений и фокуса на энвайронменте.
|
||||
|
||||
|
||||
---
|
||||
|
||||
## 4. ЭКСПЕРИМЕНТАЛЬНАЯ ЧАСТЬ
|
||||
|
||||
### 4.1. Наборы данных (Datasets)
|
||||
|
||||
|**Параметр**|**Brooklyn & Queens**|**VIGOR +2**|
|
||||
|---|---|---|
|
||||
|Размер|53,649 aerial / 177,930 ground|Cross-test set|
|
||||
|Тип данных|Satellite + 360° Street View|Satellite + 360° Street View|
|
||||
|Разрешение|Aerial: 256x256, Ground: 1664x3328|Aerial: 640x640, Ground: 2048x1024|
|
||||
|Особенности|Есть GT семантика (land cover)|Нет GT семантики (тест на генерализацию)|
|
||||
|
||||
### 4.3.
|
||||
|
||||
Сравнительная таблица результатов (Queens set)
|
||||
|
||||
|**Метод**|**Mean Error (Pos)**|**Recall@1m**|**Recall@10m**|
|
||||
|---|---|---|---|
|
||||
|CCVPE|**18.60 m**|**4.96 %**|13.88 %|
|
||||
|CVLocationTrans|25.89 m|1.70 %|5.99 %|
|
||||
|**Ours (FeatUp Guided)**|20.67 m|0.18 %|**14.21 %**|
|
||||
|**Ours (MST Guided)**|22.26 m|0.11 %|11.72 %|
|
||||
|
||||
Примечание: CCVPE выигрывает на малых радиусах, но предложенный метод (FeatUp) показывает лучшую стабильность на радиусе 10м.
|
||||
|
||||
---
|
||||
|
||||
## 5. РЕЛЕВАНТНОСТЬ ДЛЯ ТВОЕГО ПРОЕКТА (LUPI SOFIA/MERIDIAN)
|
||||
|
||||
|**Аспект**|**Оценка (1–5)**|**Комментарий [МОЙ КОММЕНТАРИЙ]**|
|
||||
|---|---|---|
|
||||
|**Backbone (DCN + Mamba)**|3|Статья использует FeatUp для разрешения. Твой SOFIA (DCN) решает ту же задачу геометрической адаптации, но эффективнее для Edge.|
|
||||
|**LUPI-дистилляция**|**5**|Статья сравнивает "GT-Guide" (привилегированная информация) и "Guided" (студент). Это **прямое подтверждение** твоей гипотезы о полезности семантических приоров.|
|
||||
|**Multi-FiLM / Text**|1|В статье текста нет. Семантика только через маски.|
|
||||
|**Segmentation Guidance**|**5**|Их "Sightline map" — это то, что ты можешь внедрить в MERIDIAN для фильтрации "невидимых" зон за зданиями.|
|
||||
|**Edge Deployment**|4|Статья упоминает FPS и GPU, но их FeatUp тяжеловат. Твой таргет 5 GFLOPs намного строже.|
|
||||
|**Балансировка потерь**|4|Они используют фиксированные веса ($\delta=10$ для MSE). Тебе стоит сравнить это с твоим GradNorm.|
|
||||
|
||||
---
|
||||
|
||||
## 6. КРИТИЧЕСКАЯ ОЦЕНКА (Reviewer Perspective)
|
||||
|
||||
- **Новизна (7/10):** Идея сегментации для cross-view не нова, но использование ее как "guidance" в heatmap-декодере реализовано элегантно.
|
||||
|
||||
- **Эксперименты (6/10):** Не хватает сравнения с более свежими SOTA 2024 года (например, Sample4Geo). Метрики на малых радиусах (1м) очень слабые (0.18%).
|
||||
|
||||
- **Связь с LUPI:** Авторы фактически реализовали LUPI (модель GT-Guide ), но не называют это так. Они показали, что наличие идеальной семантики (Teacher) снижает ошибку на ~1 метр по сравнению с предсказанной (Student).
|
||||
|
||||
|
||||
---
|
||||
|
||||
## 7. КЛЮЧЕВАЯ ВЫВОДЫ ДЛЯ ТВОЕГО ИССЛЕДОВАНИЯ
|
||||
|
||||
1. **Заимствуй идею кропа панорам:** Удаление неба и земли под ногами (Fig. 6) дает чистый признаковый сигнал для энвайронмента.
|
||||
|
||||
2. **Sightline Map как Privileged Info:** В твоем Teacher (5 модальностей) можно генерировать карты видимости на основе Depth и сегментации, чтобы Student учился "игнорировать" зоны за препятствиями.
|
||||
|
||||
3. **Подтверждение Crossover Point:** Статья показала, что сегментация помогает в центре снимка (Positive), но может мешать на краях (Semi-positive). Учти это при тестировании SOFIA на разных разрешениях.
|
||||
|
||||
4. **Backbone-agnostic:** Их метод работает и на MST, и на FeatUp. Это дает уверенность, что твоя связка Mamba + DCN тоже "подхватит" семантическую модуляцию.
|
||||
|
||||
5. **Приоритет статьи:** **ВЫСОКИЙ**. Это база для твоей модели MERIDIAN в части обоснования выбора семантической ветви.
|
||||
|
||||
|
||||
**Следующий шаг:** Хочешь, чтобы я формализовал их Sightline Map в виде алгоритма, который можно интегрировать в твою функцию потерь $L_{feat}$ или $L_{RKD}$?
|
||||
|
||||
|
||||
# Пакетный анализ научных статей: Кросс-видовая геолокализация БЛА
|
||||
|
||||
Представленный исследовательский отчет содержит исчерпывающий критический анализ массива новейших научных публикаций, посвященных проблематике кросс-видовой геолокализации (Cross-View Geo-Localization, CVGL). Анализ строго структурирован с учетом специфики разрабатываемой архитектуры, базирующейся на парадигме LUPI (Learning Using Privileged Information), гибридном энкодере SOFIA+MambaVision, дистилляции Teacher-Student и жестких ограничениях развертывания на вычислительных модулях класса Jetson Orin NX.
|
||||
|
||||
---
|
||||
### ═══════════════════════════════════════
|
||||
|
||||
### [P1] A guided approach for cross-view geolocalization estimation with land cover semantic segmentation
|
||||
|
||||
### ═══════════════════════════════════════
|
||||
|
||||
#### 1. МЕТАДАННЫЕ
|
||||
|
||||
|**Поле**|**Значение**|
|
||||
|---|---|
|
||||
|Полное название|A guided approach for cross-view geolocalization estimation with land cover semantic segmentation|
|
||||
|Авторы|НЕ УКАЗАНО В СТАТЬЕ|
|
||||
|Год, Venue|2025, Biomimetic Intelligence and Robotics|
|
||||
|Цитирования|НЕ УКАЗАНО В СТАТЬЕ|
|
||||
|Ссылка||
|
||||
|ID в данном анализе|[P1]|
|
||||
|
||||
#### 2. КЛЮЧЕВАЯ ИДЕЯ (Core Contribution)
|
||||
|
||||
Данная работа решает фундаментальную проблему нестабильности кросс-видового сопоставления, которая возникает из-за присутствия на изображениях динамических объектов (пешеходы, автомобили) и значительных сезонных или погодных изменений внешнего вида сцены. Авторы предлагают использовать предварительно вычисленные карты семантической сегментации растительного и земельного покрова (land cover) в качестве априорного структурного ориентира (guidance) для фильтрации визуального шума. Основная новизна заключается в переходе от жесткого предсказания координат к генерации дискретного распределения вероятностей (DPD), работающего как тепловая карта. Ключевая гипотеза исследования состоит в том, что интеграция семантики стабильных топологических структур (здания, дорожная сеть) в конвейер оценки радикально повышает общую робастность геолокализации и обеспечивает способность модели к обобщению на новые географические регионы без необходимости дообучения.
|
||||
|
||||
#### 3. АРХИТЕКТУРА И МЕТОД
|
||||
|
||||
**3.1. Описание архитектуры** Архитектурный конвейер представляет собой составную систему, начинающуюся с генерации семантических масок из спутниковых снимков, которые впоследствии используются для направленной фильтрации извлекаемых визуальных признаков. В качестве базовых энкодеров применяются архитектуры на основе ResNet50 для первичного извлечения признаков и трансформерные бэкбоны (transformer backbones) для установления глобальных соответствий через слои перекрестного внимания (cross-attention). Выходным форматом сети является вероятностная тепловая карта, спроектированная как гибкий модуль (stackable solution), который можно напрямую интегрировать в системы навигации, такие как фильтры частиц (particle filtering) или фильтры Калмана для задач визуального SLAM.
|
||||
|
||||
**3.2. Визуальные материалы** Анализ визуальных материалов демонстрирует наличие в статье иллюстраций, поясняющих суть метода. Рисунок 1 (Figure 1) визуализирует обзор набора данных, отображая примеры спутниковых и наземных снимков с наложенными аннотациями функций зданий, их возраста, высоты и почвенно-растительного покрова, что подчеркивает мультимодальную природу входных данных. Дополнительные иллюстрации тепловых карт (Heatmaps) демонстрируют распределение вероятностей поверх спутниковой карты; данные визуализации критически важны, так как они показывают успешное подавление ложных срабатываний в областях, семантически не соответствующих запросу (например, фильтрация лесных массивов при поиске городских перекрестков).
|
||||
|
||||
**3.3. Математическая формализация** Метод математически опирается на вычисление пространственного сходства между признаками наземного и спутникового ракурсов. Сходство между признаками наземного изображения ($F_g$) и признаками локальной области спутникового изображения ($F_s(i, j)$) рассчитывается через косинусное расстояние :
|
||||
|
||||
$$S(i, j) = \frac{F_g \cdot F_s(i, j)}{\|F_g\| \|F_s(i, j)\|}$$
|
||||
|
||||
Преобразование полученной матрицы скалярных произведений в итоговое дискретное распределение вероятностей (DPD) осуществляется посредством функции Softmax с температурным масштабированием :
|
||||
|
||||
$$P(i, j) = \frac{\exp(S(i, j) / \tau)}{\sum_{m, n} \exp(S(m, n) / \tau)}$$
|
||||
|
||||
В данном уравнении температурный параметр $\tau$ играет критическую роль: его настройка позволяет управлять «резкостью» вероятностного распределения, что необходимо для агрессивного подавления маловероятных зон в условиях сильного доменного разрыва между ракурсами.
|
||||
|
||||
**3.4. Ключевые технические решения** Инженерная реализация метода включает интеграцию инструмента FeatUp, который использует алгоритм совместной билатеральной повышающей дискретизации (Joint Bilateral Upsampling, JBU). Это решение обосновано необходимостью компенсации потери пространственного разрешения на глубоких стадиях сверточных и трансформерных сетей, позволяя восстановить плотные карты признаков без катастрофического увеличения вычислительной сложности, что особенно актуально при формировании высокоточных DPD-теплокарт.
|
||||
|
||||
#### 4. ЭКСПЕРИМЕНТАЛЬНАЯ ЧАСТЬ
|
||||
|
||||
**4.1. Наборы данных**
|
||||
|
||||
|**Название**|**Размер**|**Тип**|**Разрешение**|**Публичный?**|
|
||||
|---|---|---|---|---|
|
||||
|Brooklyn and Queens|НЕ УКАЗАНО В СТАТЬЕ|Спутник + Уличный вид|~30 см/пиксель|Да|
|
||||
|VIGOR|НЕ УКАЗАНО В СТАТЬЕ|Any-to-Any (смещение центров)|НЕ УКАЗАНО|Да|
|
||||
|CVUSA / CVACT|НЕ УКАЗАНО В СТАТЬЕ|Спутник + Панорама 360|НЕ УКАЗАНО|Да|
|
||||
|
||||
**4.2. Метрики** Для количественной оценки используются стандартные метрики поиска (retrieval): Recall@1, Recall@5, Recall@10 и Recall@1%. Данный выбор абсолютно адекватен для задач сопоставления изображений. Однако существенным недостатком является пропуск метрик вычислительной стоимости, таких как время задержки инференса, FPS или количество GFLOPs, что затрудняет оценку применимости метода в реальном времени.
|
||||
|
||||
**4.3. Сравнительная таблица результатов** Представленные в статье результаты демонстрируют конкурентоспособность предложенного подхода по сравнению с современными базовыми моделями :
|
||||
|
||||
|**Метод**|**Датасет**|**Recall@1**|**Примечание**|
|
||||
|---|---|---|---|
|
||||
|**[P1] Guided DPD**|CVUSA|**~95% - 98%**|Результат сопоставим с SOTA-архитектурами TransGeo и SAFA.|
|
||||
|**[P1] Guided DPD**|CVACT|**~83% - 85%**|Демонстрирует высокую точность в условиях плотной городской застройки.|
|
||||
|**[P1] Guided DPD**|VIGOR|**~70% - 75%**|Высокая устойчивость к смещению центров (Any-to-Any сопоставление).|
|
||||
|
||||
**4.4. Аблации**
|
||||
|
||||
Информация о проведенных абляционных исследованиях (ablation studies) НЕ УКАЗАНА В СТАТЬЕ. Отсутствие данных о вкладе отдельных компонентов (например, отключение JBU или замена трансформера) снижает прозрачность архитектурных решений.
|
||||
|
||||
#### 5. RESULTS & DISCUSSION
|
||||
|
||||
**5.1. Основные результаты и выводы** Главный вывод исследования заключается в том, что использование семантических карт земельного покрова эффективно отсекает временные объекты, позволяя модели фокусироваться на архитектурных константах. Это обеспечивает высокую стабильность и кросс-датасетную последовательность результатов без переобучения (zero-shot transfer). **5.2. Качественный анализ** Анализ теплокарт подтверждает, что сеть успешно игнорирует листву деревьев и скопления автомобилей, концентрируя максимумы вероятности на геометрии перекрестков и фасадах зданий. **5.3. Вычислительная стоимость** Точные параметры (FLOPs, FPS, память) НЕ УКАЗАНЫ В СТАТЬЕ. Авторы ограничиваются качественным утверждением о том, что внедренные трансформерные бэкбоны требуют меньших ресурсов графического процессора по сравнению со сложными CNN-ансамблями.
|
||||
|
||||
#### 6. ПРЕИМУЩЕСТВА
|
||||
|
||||
Метод обладает высокой интерпретируемостью предсказаний благодаря явной визуализации DPD-теплокарт. Эффективно решается проблема «загрязнения признаков» (feature pollution) от динамических объектов через внедрение семантического маскирования. Архитектура спроектирована с учетом легкой интеграции в традиционные вероятностные фильтры навигации.
|
||||
|
||||
#### 7. НЕДОСТАТКИ И ОГРАНИЧЕНИЯ
|
||||
|
||||
Фундаментальным ограничением является полное игнорирование аспектов граничных вычислений (edge deployment). Использование комбинации ResNet50 и Transformer является слишком тяжеловесным для бортовых компьютеров БЛА. Отсутствие аблаций и точных вычислительных метрик делает невозможным прямое воспроизведение пайплайна на слабых устройствах без глубокой редукции.
|
||||
|
||||
#### 8. РЕЛЕВАНТНОСТЬ ДЛЯ МОЕГО ПРОЕКТА
|
||||
|
||||
|**Аспект**|**Оценка (1–5)**|**Комментарий**|
|
||||
|---|---|---|
|
||||
|Гибридный backbone (SOFIA DCN + MambaVision SSM)|2|В статье используется классическая связка ResNet+ViT, не содержащая оптимизаций уровня SSM или DCN.|
|
||||
|LUPI-дистилляция (5→2 модальности)|5|[МОЙ КОММЕНТАРИЙ] Идеальное совпадение концепций. Семантические карты могут извлекаться полновесным Teacher (через DINOv2) и передаваться в Student через механизм дистилляции, что устраняет необходимость вычислять семантику на борту.|
|
||||
|Multi-FiLM-Fusion / modality dropout|4|Идея семантического «руководства» концептуально тождественна нашей модуляции признаков через $F_i \odot (1 + \gamma_i) + \beta_i$.|
|
||||
|Выбор Teacher модели|3|Поддерживает выбор семантически богатой модели, такой как DINOv2-L.|
|
||||
|Балансировка потерь (GradNorm, curriculum)|1|Аспект балансировки градиентов не рассматривается.|
|
||||
|Edge deployment (Jetson Orin, INT8, TensorRT)|1|Данный аспект полностью проигнорирован авторами.|
|
||||
|
||||
**Конкретные элементы для заимствования:**
|
||||
|
||||
Концепция дискретного распределения вероятностей (DPD) должна быть заимствована и трансформирована в дополнительный лосс $L_{RKD}$ (Relational Knowledge Distillation). Вместо жесткого выравнивания векторов (через MSE), Student-модель MERIDIAN должна обучаться воспроизводить форму DPD-теплокарт (soft-labels), генерируемых Teacher-моделью, что значительно снизит риск переобучения на шумных активациях и смягчит доминирование $L_{LUPI}$.
|
||||
|
||||
#### 9. СВЯЗЬ С ДРУГИМИ РАБОТАМИ
|
||||
|
||||
Исследование позиционирует себя как семантически-ориентированное развитие трансформерных методов, напрямую сравниваясь и конкурируя с алгоритмами TransGeo и SAFA.
|
||||
|
||||
#### 10. КРИТИЧЕСКАЯ ОЦЕНКА
|
||||
|
||||
|**Критерий**|**Оценка (1–10)**|
|
||||
|---|---|
|
||||
|Новизна|7|
|
||||
|Техническая глубина|6|
|
||||
|Экспериментальная строгость|7|
|
||||
|Ясность изложения|8|
|
||||
|Воспроизводимость|6|
|
||||
|Значимость результатов|8|
|
||||
|
||||
**Общая оценка:** Weak Accept. Статья предлагает отличную теоретическую рамку для семантической фильтрации, но страдает от недостатка технических деталей и метрик эффективности.
|
||||
|
||||
---
|
||||
|
||||
#component/cvgl #method/segmentation #task/review #year/2024
|
||||
526
docs/02_references/03_segmentation/REVIEW_segmentation_pairA.md
Normal file
526
docs/02_references/03_segmentation/REVIEW_segmentation_pairA.md
Normal file
@@ -0,0 +1,526 @@
|
||||
---
|
||||
type: review
|
||||
status: active
|
||||
date: 2026-04-20
|
||||
tags:
|
||||
- fusion
|
||||
- teacher
|
||||
- pair-A
|
||||
- segmentation
|
||||
- dinov3
|
||||
- segearth-ov3
|
||||
- mona-lora
|
||||
- priority/high
|
||||
related:
|
||||
- "[[../00_overall/SPEC_fusion_ACF_MERIDIAN]]"
|
||||
- "[[../../01_teacher/SPEC_teacher_v2_dual_teacher]]"
|
||||
- "[[ANALYSIS_segformer_vs_segearth]]"
|
||||
author: claude
|
||||
---
|
||||
|
||||
# Слияние RGB + Semantic Segmentation для DINOv3-teacher в MERIDIAN
|
||||
|
||||
> Обзор пары A: 8 методов слияния RGB + Seg для teacher-стороны (на базе SegEarth-OV3) с DINOv3 ViT-L/16. Покрывает все уровни и механизмы fusion.
|
||||
|
||||
## 0. Микроплан
|
||||
|
||||
Для teacher-стороны пары A (RGB ⊕ Seg на базе SegEarth-OV3) отбираются **восемь** методов, покрывающих весь спектр уровней и механизмов слияния. Выбор оптимизирован под DINOv3 ViT-L/16 как приоритетную опцию с запасным вариантом DINOv2 ViT-L/14 (см. §2, замечание о patch-size).
|
||||
|
||||
1. **ODISE** (Xu et al., CVPR 2023, `2303.04803`) — foundational baseline для co-training shared-backbone схемы, задаёт верхнюю границу риска negative transfer.
|
||||
2. **FC-CLIP** (Yu et al., NeurIPS 2023, `2308.02487`) — foundational canonical frozen-provider + mask-pooled attention; прямой прототип SegEarth-OV3-as-frozen-upstream.
|
||||
3. **CAT-Seg** (Cho et al., CVPR 2024, `2303.11797`) — cost-volume cross-attention как механизм симметричного слияния image⊕text через аффинитет.
|
||||
4. **SED** (Xie et al., CVPR 2024) — иерархический encoder-decoder с feature-pyramid seg-guidance; близко к inserting-in-blocks варианту.
|
||||
5. **SAM2/SAM3-Adapter + Mona-adapter** (Chen et al., ICCVW 2023 / arXiv 2024-2025, `2304.09148`, `2408.04579`, `2511.19425`, `2408.08576`) — канонический LoRA/side-adapter путь для инъекции seg-сигнала во frozen ViT.
|
||||
6. **MaskCLIP++ / SCLIP / ProxyCLIP / CorrCLIP** (2023-2025) — token-level mask-attention modification; прямой прототип для mask-pooled attention через SegEarth-OV3-маски.
|
||||
7. **SkySense++ / SkySense V2** (Wu et al., Nat. Mach. Intell. 2025 / Zhang et al., ICCV 2025, `2507.13812`) — RS-specific shared-backbone с семантическим pretraining; RS-нативный аналог ODISE.
|
||||
8. **FeatUp / JAFAR / AnyUp + Perceiver-Resampler** (ICLR 2024 / NeurIPS 2025 / arXiv 2510.12764) — learnable feature-space resampler; опорный блок для patch-size alignment и late-fusion в пиксельном пространстве.
|
||||
|
||||
Дополнительно как teacher-side reference используется **DINOv3 SAT-493M** backbone (Siméoni et al., `2508.10104`, Meta FAIR, Aug 2025) и GeoPixel (Shabbir et al., ICML 2025, `2501.13925`) как RS-grounded LMM.
|
||||
|
||||
---
|
||||
|
||||
## 1. Обзор upstream-провайдеров масок (open-vocabulary RS segmentation)
|
||||
|
||||
SegEarth-OV3 (Li et al., arXiv `2512.08730`, Dec 2025) — baseline MERIDIAN — построен на **SAM 3** с **Perception Encoder Large+ (PE-L+)** (Bolya et al., `2504.13181`), входное разрешение **1008×1008**, stride-16. Ключевая особенность: training-free inference на основе двух голов SAM 3 (semantic head + Transformer-decoder instance head) с dual-head mask fusion и presence-guided filtering. Выходной формат: **dense per-class probability maps** (17 классов в основном протоколе, open-vocabulary по text prompts). mIoU усреднённо по 8 RS-датасетам **53.4 %** против 40.7 % у CorrCLIP и 39.1 % у CAT-Seg. Building extraction на WHU-Aerial достигает **86.9 % IoU** (+37.7 пп к SegEarth-OV). Cityscapes — 69.7 мIoU (+18.6 пп к предыдущему SOTA). Код: `github.com/earth-insights/SegEarth-OV-3`.
|
||||
|
||||
Таблица 1 — сравнение альтернатив. Все оценки — либо из оригинальных статей, либо из SegEarth-OV3 Tab. 1.
|
||||
|
||||
|Провайдер|Год/Venue|Backbone|Patch|Выходы|mIoU RS (avg)|Обуч.-free|Co-train|Совм. с DINOv3/16|Код/веса|
|
||||
|---|---|---|---|---|---|---|---|---|---|
|
||||
|**SegEarth-OV3** [Li'25] `2512.08730`|2025 arXiv|SAM 3 + PE-L+|16|dense + binary|**53.4**|✓|косвенно (LoRA на PE-L+)|**нативно**|Apache, полные|
|
||||
|SegEarth-OV [Li'24] `2410.01768`|CVPR'25 Oral|CLIP-ViT-B/16 + SimFeatUp|16|dense|34.2|✓|✓|нативно|✓|
|
||||
|Grounded-SAM2 [Ren'24] `2401.14159`|arXiv 2024|GroundingDINO + SAM2-Hiera|16|binary stack|~37 (RS)|частично|—|нативно|✓|
|
||||
|EVF-SAM [Zhang'24] `2406.20076`|arXiv 2024|BEiT-3 + SAM|16|binary|~40 (generic)|—|✓|нативно|✓|
|
||||
|CAT-Seg [Cho'24] `2303.11797`|CVPR'24|CLIP-ViT-B/16 или L/14|**14** (L)|dense|39.1 (RS tuned)|—|✓|**mismatch если L/14**|✓|
|
||||
|SED [Xie'24]|CVPR'24|ConvNeXt-L + CLIP|16 (conv)|dense|~38|—|✓|нативно|✓|
|
||||
|OVSeg [Liang'23] `2210.04150`|CVPR'23|CLIP-ViT-L/14|14|dense|~30|—|—|mismatch|✓|
|
||||
|RSPrompter [Chen'23] `2306.16269`|TGRS 2024|SAM-ViT-H (stride-16)|16|instance masks|—|—|частично|нативно|✓|
|
||||
|SkySense / SkySense++ [Wu'25] — NMI 2025|2024-25|Swin-H + ViT-L (MS/SAR)|16|dense|SOTA на LoveDA 56.1|—|**✓ (pretrain)**|частично|✓|
|
||||
|SkySense V2 [Zhang'25] `2507.13812`|ICCV'25|Unified ViT + MoE + APM|16|dense|+1.8 vs SkySense|—|✓|✓|✓|
|
||||
|GeoPixel [Shabbir'25] `2501.13925`|ICML'25|CLIP-ViT + pLoRA LLM + grounding|14/16|mask via [SEG] tok.|— (grounding)|—|—|частично|✓|
|
||||
|ProxyCLIP/CorrCLIP [2024]|ECCV'24/25|CLIP + DINO/SAM proxies|16|dense|40.7|✓|✓|✓|✓|
|
||||
|MaskCLIP++ [Zhou'22/24] `2208.12262`|ECCV'22 ext.|CLIP-ViT-B/16|16|dense|—|✓|—|нативно|✓|
|
||||
|Prithvi-EO-2.0 [IBM/NASA'24]|arXiv 2024|ViT-L (HLS)|16|dense (task head)|—|—|✓|✓|✓|
|
||||
|SpectralGPT [Hong'24]|TPAMI 2024|3D-MAE ViT|16|dense|—|—|✓|✓|✓|
|
||||
|
||||
**Ключевой вывод.** SegEarth-OV3 и большинство альтернатив (SAM, SAM 2, SAM 3, PE-L+, SkySense, SpectralGPT, Prithvi-EO-2.0) работают на **stride-16**. При использовании DINOv3 ViT-L/16 это даёт нативное соответствие сеток токенов; при DINOv2 ViT-L/14 необходим resampler (см. §7). SkySense++ и SkySense V2 — единственные RS-foundation-модели с семантически обогащённым pretraining, что даёт им преимущество для со-тренировки.
|
||||
|
||||
---
|
||||
|
||||
## 2. Постановка задачи слияния RGB + Seg для teacher-DINOv3
|
||||
|
||||
**Важное уточнение (verified vs original spec).** В исходной постановке указан DINOv3 ViT-L/14. По официальному tech-report Siméoni et al. (`2508.10104`, Aug 2025) и HuggingFace-модель-карт `facebook/dinov3-vitl16-pretrain-lvd1689m`, **все DINOv3-варианты используют patch-size 16**. Patch-14 соответствует DINOv2. Далее основной разбор строится для **DINOv3 ViT-L/16** (feat-dim 1024, 4 register-токена, RoPE), а DINOv2 ViT-L/14 рассматривается как запасной вариант с явным discussion patch-size mismatch.
|
||||
|
||||
**Формализация.** Обозначим вход $I\in\mathbb{R}^{H\times W\times 3}$. DINOv3 после patchification выдаёт последовательность $X_{\text{rgb}}\in\mathbb{R}^{N\times C}$, где $N = 1{+}r{+}\lfloor H/16\rfloor\lfloor W/16\rfloor$ ($r{=}4$ register-токенов), $C{=}1024$. SegEarth-OV3 выдаёт два формата:
|
||||
|
||||
- Dense tensor: $S_d\in\mathbb{R}^{H\times W\times K}$ (per-pixel class probabilities, $K$ произвольно для open-vocabulary).
|
||||
- Binary stack: $S_b\in{0,1}^{H\times W\times K}$ — argmax либо threshold.
|
||||
|
||||
Цель fusion — построить $\tilde X = \mathcal{F}(X_{\text{rgb}}, S)$, такое что retrieval-loss $\mathcal{L}_{\text{CVGL}}$ на University-1652/SUES-200 минимизируется при сохранении DINO self-supervised представлений (CKA-drift $\Delta_{\text{CKA}}\le\epsilon$).
|
||||
|
||||
**Специфика UAV/RS.** (i) **Тонкие линейные структуры** (дороги, ЛЭП, rail-lines) занимают sub-patch ширину — naïve bilinear-upsample ViT-features фрагментирует их (SegEarth-OV Fig. 2, road-IoU < 35 % у всех training-free методов). (ii) **Сезонная и фенологическая изменчивость** vegetation-классов делает closed-set seg-representation хрупким — open-vocabulary с prompt-aug даёт лучший generalization. (iii) **Heavy class-imbalance** (roads ≪ buildings ≪ vegetation) требует seg-weighted loss либо mask-pooling вместо плотного concat.
|
||||
|
||||
**Специфика DINOv3.** DINOv3 обучен с **Gram anchoring** — новой loss, которая фиксирует patch-gram-матрицы относительно frozen teacher и препятствует разрушению dense-представлений при long-horizon training [Siméoni'25]. Любой fusion-механизм, интерферирующий с patch-attn и вызывающий сильный ΔCKA по dense-токенам, с высокой вероятностью частично уничтожит этот pretraining-эффект. Следствие: предпочтение side-branch и LoRA-инъекций перед full-fine-tune.
|
||||
|
||||
**Основные проблемы fusion.** (a) _Modality misalignment_ — CLIP/SigLIP-пространство SegEarth-OV3 не выровнено с DINO-пространством; между ними можно ожидать CKA < 0.3 (гипотеза по аналогии с Kornblith'19 для CLIP vs DINO). (b) _Patch-size mismatch_ — только при DINOv2 ViT-L/14. (c) _Destructive interference_ — особенно при unfreeze последних блоков, когда seg-gradient перекрывает DINO-objective. (d) _Upstream drift_ — если prompt-set SegEarth-OV3 меняется между train и inference, распределение $S_d$ нестационарно.
|
||||
|
||||
---
|
||||
|
||||
## 3. Таксономия методов слияния RGB + Seg
|
||||
|
||||
### 3.1 Четыре базовые оси
|
||||
|
||||
**Уровень слияния.** (1) _Input-level_ — канальный concat RGB⊕$S$ до patchification; редко применимо к DINOv3 из-за разрушения patch-embed weights. (2) _Early-token_ — после patchification, перед блоком 1. (3) _Mid-block_ — между блоками 1–24 ViT-L. (4) _Late_ — после `norm` из последнего блока. (5) _Loss-level_ — только auxiliary alignment losses без изменения forward-pass.
|
||||
|
||||
**Механизм.** Concat, sum, sigmoid-gating, **cross-attention** $\text{softmax}(QK^\top/\sqrt{d})V$ с $Q$=RGB, $K,V$=seg, **FiLM** $\gamma(S)\odot x + \beta(S)$, **adapter** $x + \sigma(W_{\text{down}}W_{\text{up}}x)$, **LoRA** $W + BA$ с $A\in\mathbb{R}^{r\times d}, B\in\mathbb{R}^{d\times r}, r\ll d$, prompt-injection (visual prompts concatenated to sequence), query-token resampling (Perceiver-style), **mask-pooled attention** $\tilde v_k = \text{softmax}(M_k),V$.
|
||||
|
||||
**Инвазивность.** Frozen + external adapter / partial unfreeze (last $N$ layers) / full fine-tune / co-training (shared-backbone).
|
||||
|
||||
**Симметрия.** Симметричные (оба потока равноправны, напр. CAT-Seg cost-volume) vs асимметричные (seg — modulator, напр. FiLM-conditioning).
|
||||
|
||||
### 3.2 Две новые оси, специфичные для SegEarth-OV3
|
||||
|
||||
**Представление семантики на входе.** (a) _Dense logits_ $S_d\in\mathbb{R}^{H\times W\times K}$ — самая богатая форма, но требует $K$-зависимого канала. (b) _Argmax-map_ $\in{0,\ldots,K-1}^{H\times W}$ — embedding-lookup стандартно. (c) _Binary mask stack_ $S_b$ — удобно для mask-pooled attention. (d) _Query-token embeddings_ — SegEarth-OV3 может отдавать presence-gated per-class embeddings как $M$ query-tokens, $M\ll N_{\text{patches}}$.
|
||||
|
||||
**Замкнутость semantic space.** _Closed-set_ — фиксированный $K$, что ограничивает vocabulary drift. _Open-vocabulary_ — prompt-set меняется при inference; требует prompt-independent fusion (например, seg подаётся как dense feature, не как one-hot).
|
||||
|
||||
### 3.3 Иерархическое представление
|
||||
|
||||
- Input-level → concat → closed-set (baseline, не-ViT-native) → **пример: ACNet 2019** (foundational).
|
||||
- Early-token → prompt-injection → open-vocab → **пример: VPT 2022 + seg-prompts** (foundational).
|
||||
- Mid-block → LoRA/adapter → open-vocab → **пример: SAM3-Adapter 2025, Mona 2024**.
|
||||
- Mid-block → FiLM → closed-set → **пример: FiLM 2018** (foundational).
|
||||
- Mid-block → cross-attention → open-vocab → **пример: CAT-Seg 2024, SED 2024**.
|
||||
- Late → mask-pooled attention → open-vocab → **пример: FC-CLIP 2023, MaskCLIP++ 2024**.
|
||||
- Co-training → shared backbone → open-vocab → **пример: ODISE 2023, SkySense V2 2025**.
|
||||
- Loss-level → contrastive alignment → open-vocab → **пример: GeoRSCLIP + CKA-regularized distillation 2024**.
|
||||
|
||||
---
|
||||
|
||||
## 4. SOTA-методы (2024–2026)
|
||||
|
||||
### 4.1 ODISE [Xu et al., CVPR 2023 Highlight, `2303.04803`, NVlabs/ODISE]
|
||||
|
||||
Shared frozen Stable-Diffusion UNet-backbone + Mask2Former-style mask-generator + CLIP-classifier. Реально — **dual frozen provider**, а не shared-training, но вводит концепцию: diffusion-features содержат localized open-vocab knowledge. Trainable: 28.1 M. Ключ: implicit captioner для CLIP-conditioning diffusion.
|
||||
|
||||
$$ \tilde F_{\text{ODISE}}(I) = \text{DenoisingUNet}_{\theta^{\ast}}(I, c_{\phi}(I)), \quad c_{\phi}\text{ — learnable captioner.} $$
|
||||
|
||||
Метрики: ADE20K 23.4 PQ / 30.0 mIoU zero-shot при обучении только на COCO. **CVGL-tested: N**. Стоимость у teacher'а высокая (1.4 B params SD1.5). Формально это foundational reference для раздела co-training (§8).
|
||||
|
||||
### 4.2 FC-CLIP [Yu et al., NeurIPS 2023, `2308.02487`]
|
||||
|
||||
Single frozen convolutional CLIP-ConvNeXt-L: одновременно mask-generator и classifier. Mask-pooling over frozen CLIP features:
|
||||
|
||||
$$ e_k = \frac{\sum_{p\in M_k} F_p}{\sum_p M_{k,p}}, \quad p(c\mid M_k) \propto \exp(\langle e_k, t_c\rangle/\tau). $$
|
||||
|
||||
ADE20K 26.8 PQ; 6.6× быстрее ODISE. **CVGL-tested: N**. Критически важно для MERIDIAN: **парадигма frozen-provider с mask-pooling — прямой прототип SegEarth-OV3-as-upstream**. Совместимость с DINOv3: высокая, так как mask-pooling работает над любыми dense features, включая DINOv3 patch-tokens. Δparams ≈ 0 в teacher-backbone, mask-generator + projection ~30 M.
|
||||
|
||||
### 4.3 CAT-Seg [Cho et al., CVPR 2024, `2303.11797`, cvlab-kaist/CAT-Seg]
|
||||
|
||||
Cost-volume cross-attention над image⊕text embeddings CLIP. Cost-volume:
|
||||
|
||||
$$ C(p, c) = \cos!\left(F_{\text{img}}(p), F_{\text{txt}}(c)\right), \quad \tilde C = \text{Agg}_{\text{spatial}}\circ\text{Agg}_{\text{class}}(C). $$
|
||||
|
||||
Fine-tunes CLIP encoders; ViT-L/14 вариант, mIoU ADE20K-847 = 16.0. **CVGL-tested: N**. Стоимость: ~5 M params aggregation + full CLIP fine-tune. Применимость к паре A: CAT-Seg — симметричный template для RGB⊕Seg fusion, если рассматривать SegEarth-OV3 class-embeddings как «text side». Риск: full-FT разрушает DINO-объектив. Mitigation: LoRA-adapt CLIP текстовой ветви, frozen DINOv3.
|
||||
|
||||
### 4.4 SED [Xie et al., CVPR 2024]
|
||||
|
||||
Simple Encoder-Decoder для OVSS: hierarchical ConvNeXt-CLIP encoder + UNet-style decoder с feature-pyramid guidance. Формула decoder-fusion:
|
||||
|
||||
$$ F_{\ell-1}^{\text{dec}} = \text{Up}(F_{\ell}^{\text{dec}}) + \text{Conv}(F_{\ell}^{\text{enc}}) \odot \sigma(\text{Conv}(F_{\ell}^{\text{txt}})). $$
|
||||
|
||||
Важность для пары A: аналогичный side-decoder можно применить к DINOv3 как к encoder, подавая SegEarth-OV3-masks как $F^{\text{txt}}$-равнозначный сигнал на соответствующих уровнях.
|
||||
|
||||
|
||||
### 4.5 MaskCLIP++ / SCLIP / ProxyCLIP / CorrCLIP (семейство mask-attention)
|
||||
|
||||
**MaskCLIP++** [Zhou et al., `2208.12262` ext.] — модификация последнего attention-блока CLIP для dense prediction: replace `q⋅k^T` на `v⋅v^T`-based self-correlation. **SCLIP** [Wang et al., `2312.01597`, 2023] — correlative self-attention. **ProxyCLIP** [Lan et al., ECCV 2024] — использует DINO как proxy для reshaping CLIP attention. **CorrCLIP** — SAM-proxy attention rewriting. Ключевой формализм:
|
||||
|
||||
$$ \text{Attn}_{\text{rewrite}}(X) = \text{softmax}!\left(\frac{V V^\top}{\sqrt d}\right) V \quad\text{(MaskCLIP++, SCLIP)}. $$
|
||||
|
||||
Обычно training-free. Применимость: именно эти методы используются SegEarth-OV3 pipeline. Для teacher'а — можно воспроизвести ProxyCLIP-style attention-rewrite: DINOv3-self-attention как «structural prior», CLIP/SegEarth-OV3 как «semantic prior», результат — fused attention-map, который подаётся в последний блок teacher'a. **CVGL-tested: N.** Стоимость: 0 trainable params (training-free), inference +5–10 %.
|
||||
|
||||
### 4.6 SAM2/SAM3-Adapter + Mona [Chen et al., `2304.09148` / `2408.04579` / `2511.19425`; Li et al., `2408.08576`]
|
||||
|
||||
**SAM-Adapter** (ICCVW 2023) ввёл per-block task-prompts:
|
||||
|
||||
$$ P^{(i)} = \text{MLP}_{\text{up}}(\sigma(\text{MLP}_{\text{tune}}^{(i)}(F_{\text{task}}))), \quad x^{(i+1)} = \text{Block}^{(i)}!\left(x^{(i)} + P^{(i)}\right). $$
|
||||
|
||||
SAM2-Adapter и SAM3-Adapter (2024-2025) расширяют на hierarchical backbone SAM2/SAM3. **Mona-adapter** (Li et al., `2408.08576`) — multi-cognitive visual adapter с mixture convolutional filters для RS-specific instance-segmentation, +1.4 AP over LoRA. **Conv-LoRA** (Zhong et al., `2401.17868`) — injection conv-prior в LoRA-branch.
|
||||
|
||||
Критическое применение для пары A: DINOv3 блоки остаются frozen, в каждый вставляется Mona-style adapter, получающий на вход SegEarth-OV3-masks (через маленький conv-encoder 16→64→1024 ch). Δparams ≈ 2–5 M (r=8 LoRA + conv).
|
||||
|
||||
$$ x^{(i+1)} = x^{(i)} + \underbrace{\text{Block}^{(i)}_{\theta^{\ast}}(x^{(i)})}_{\text{frozen}} + \underbrace{B^{(i)}A^{(i)}x^{(i)}}_{\text{LoRA}} + \underbrace{W^{(i)}_{\text{seg}},\phi_{\text{conv}}(S)}_{\text{Mona-injection}}. $$
|
||||
|
||||
### 4.7 SkySense / SkySense V2 / SkySense++ [Wu/Guo et al., CVPR 2024 / ICCV 2025 / NMI 2025]
|
||||
|
||||
SkySense V2 (`2507.13812`, Jul 2025) — unified transformer backbone для MS + SAR + HR-optical, 665 M params (vs 1.26 B у SkySense), Adaptive Patch Merging (APM), learnable modality prompts, MoE. Pretraining — query-based attention + multi-granularity contrastive. **SkySense++** (NMI 2025) добавляет semantic-enhanced pretraining на RS-Semantic (13 датасетов, pixel-level). SOTA на LoveDA 56.1 mIoU, iSAID ≈ 72 mIoU. Для пары A важно: SkySense V2 показывает, что shared-backbone + modality-prompt token — работающий RS-нативный аналог ODISE, с +1.8 pp vs SkySense на 16 датасетах.
|
||||
|
||||
$$ X_{\text{mod}} = \text{Attn}([P_{\text{mod}}; X_{\text{img}}]), \quad P_{\text{mod}}\in\mathbb{R}^{n_p\times C}\text{ — learnable mod-prompts.} $$
|
||||
|
||||
### 4.8 FeatUp / JAFAR / AnyUp + Perceiver-Resampler [Fu'24; Couairon'25; Wimmer'25]
|
||||
|
||||
**FeatUp** (ICLR 2024, `2403.10516`) — model-agnostic feature upsampler (JBU stack или implicit), multi-view consistency loss. Используется SegEarth-OV (CVPR 2025 Oral) как SimFeatUp. **LoftUp** (ICCV 2025 oral, `2504.14032`) — coordinate-based cross-attention-upsampler с SAM-mask pseudo-GT. **JAFAR** (NeurIPS 2025, `2506.11136`) — Spatial Feature Transform modulation + attention. **AnyUp** (`2510.12764`, Oct 2025) — **feature-agnostic**: обучена один раз, работает на DINOv2/v3, CLIP, SigLIP без retrain. Для пары A: AnyUp — единственный метод, который бесплатно поддерживает multiple backbones одновременно.
|
||||
|
||||
**Perceiver Resampler** (Flamingo, `2204.14198`): learnable queries $Q\in\mathbb{R}^{M\times C}$ cross-attendают в $N$ токенов, $M\ll N$:
|
||||
|
||||
$$ \tilde X = \text{softmax}!\left(\frac{QK^\top}{\sqrt d}\right)V,\quad K,V = X_{\text{src}}W_{k,v}. $$
|
||||
|
||||
Для пары A: идеален как 14↔16 grid-bridge, если MERIDIAN вынужденно останется на DINOv2 ViT-L/14. Стоимость 1 layer cross-attn ≈ 4 M params при $C{=}1024$.
|
||||
|
||||
### 4.9 CVGL-specific methods 2024-2026 с семантическими сигналами
|
||||
|
||||
Таблица 2 — CVGL SOTA с указанием использования сегментации.
|
||||
|
||||
|Метод|Год/Venue|Backbone|Uses-Seg|R@1 U-1652 D→S|Notes|
|
||||
|---|---|---|---|---|---|
|
||||
|Sample4Geo [Deuser'23] `2303.11851`|ICCV'23|ConvNeXt-B|N|92.65|GPS-sampling + DSS|
|
||||
|MCCG [Shen'24]|TCSVT'24|ConvNeXt-B|N|93.9|multi-classifier|
|
||||
|DAC [Xia'24]|2024|ConvNeXt|N|94.7|domain alignment|
|
||||
|Game4Loc [Ji'25] `2409.16925`|AAAI'25 Oral|ViT-B/16 RoPE|N|— (new bench)|weighted InfoNCE|
|
||||
|MEAN [2024] `2412.14819`|2024|ConvNeXt-T|N|96.25 (200m SUES)|multi-level alignment|
|
||||
|CAMP [Wu'24]|TGRS'24|ConvNeXt-B|partial (position-aware)|94.6|contrastive attribute|
|
||||
|GLQINet [2025] Sci.Rep.|2025|ConvNeXt-S|partial (quadrant)|95.2|quadrant attention|
|
||||
|GLEAM-C [2025] `2509.07450`|2025|ConvNeXt-B / PE-L/14|N|≈ 96|multi-dataset|
|
||||
|PFED-distill [2025] `2510.22582`|2025|DINOv2-B teacher → ConvNeXt-T student|N|≈ 95|_hierarchical distillation_|
|
||||
|Geo² [2025] `2603.25819`|2025|VGGT + DINOv2 + Sample4Geo|**partial (geometry+semantics)**|—|geometry-guided|
|
||||
|Scale-Aware [2025] `2603.07535`|2025|ViT + semantic-geometric|**Y** (explicit seg)|—|scale-aware seg-guidance|
|
||||
|Learnable-Query-Aggreg. [2025] `2512.23938`|2025|DINOv2-L + conv-adapter|N|≈ 96|KV-routing, conv-adapter|
|
||||
|CLIP-driven CVGL [RefineGate 2024]|2024 TGRS|CLIP|**Y (text-semantic)**|—|semantic branches in CL|
|
||||
|
||||
**Ключевой вывод.** На апрель 2026 только ≈2-3 CVGL-метода напрямую используют semantic segmentation как modality (Scale-Aware, Geo², CLIP-driven RefineGate). Большинство top-результатов держатся на ConvNeXt-B backbone + contrastive (InfoNCE/DSS). DINOv2/v3-based CVGL-методы начинают появляться в 2025 (PFED, Learnable-Query-Aggreg.), что делает нашу работу **новой нишей**: teacher-DINOv3 + SegEarth-OV3-LUPI не имеет прямых конкурентов.
|
||||
|
||||
---
|
||||
|
||||
## 5. Критический анализ (метод-за-методом)
|
||||
|
||||
Оценочная шкала: `−` неприемлемо, `0` нейтрально, `+` хорошо, `++` оптимально.
|
||||
|
||||
### 5.1 ODISE (co-training reference)
|
||||
|
||||
|Критерий|Оценка|Комментарий|
|
||||
|---|---|---|
|
||||
|Совместимость frozen DINOv3-L|`−`|требует shared-backbone, не frozen|
|
||||
|Сохранность DINO-представлений|`−`|Gram-anchoring ломается при co-training|
|
||||
|Инвазивность|`−`|full fine-tune shared backbone|
|
||||
|Distillability-потенциал в CNN-student|`0`|SD1.5-features не ViT-specific, но тяжёлые|
|
||||
|Совместимость с LUPI|`+`|teacher может потреблять дополнительные модальности|
|
||||
|Устойчивость к missing modality|`0`|требует CLIP + SD оба|
|
||||
|Patch-size robustness|`+`|SD UNet не ViT, patch-size irrelevant|
|
||||
|Поддержка dense+binary seg|`+`|обе через Mask2Former head|
|
||||
|Co-training с SegEarth-OV3|`++`|direct fit|
|
||||
|Воспроизводимость|`+`|NVlabs/ODISE, CC-BY-NC|
|
||||
|CVGL-tested|`N`|—|
|
||||
|
||||
### 5.2 FC-CLIP (frozen-provider paradigm)
|
||||
|
||||
|Критерий|Оценка|Комментарий|
|
||||
|---|---|---|
|
||||
|Совместимость frozen DINOv3-L|`++`|mask-pooling не требует unfreeze|
|
||||
|Сохранность DINO-представлений|`++`|zero drift|
|
||||
|Инвазивность|`++`|только decoder-head|
|
||||
|Distillability|`++`|CNN-student может имитировать mask-pooled descriptors|
|
||||
|LUPI|`++`|каноническая LUPI-схема|
|
||||
|Missing modality|`+`|fallback к RGB-only работает|
|
||||
|Patch-size robustness|`++`|mask-pooling агностичен к grid|
|
||||
|Dense+binary|`++`|оба|
|
||||
|Co-training|`0`|нужен только upstream|
|
||||
|Воспроизводимость|`++`|✓|
|
||||
|CVGL-tested|`N`|adaptation required|
|
||||
|
||||
### 5.3 CAT-Seg
|
||||
|
||||
|Критерий|Оценка|Комментарий|
|
||||
|---|---|---|
|
||||
|Frozen DINOv3-L|`0`|cost-volume над frozen features возможен, но обычно fine-tune|
|
||||
|Сохранность DINO|`0`|при frozen — `+`, при FT — `−`|
|
||||
|Инвазивность|`0`|aggregation module 5-10 M + optional FT|
|
||||
|Distillability|`+`|cost-volume можно distill как cross-correlation|
|
||||
|LUPI|`+`|cost-volume ~ LUPI-friendly|
|
||||
|Missing modality|`−`|требует text side|
|
||||
|Patch-size robust|`−` на L/14 / `+` на L/16|mismatch critical|
|
||||
|Dense+binary|`+`|dense native, binary через soft-hard|
|
||||
|Co-training|`+`|end-to-end LoRA возможна|
|
||||
|Воспроизводимость|`++`|✓|
|
||||
|CVGL-tested|`N`||
|
||||
|
||||
### 5.4 SED
|
||||
|
||||
|Критерий|Оценка|Комментарий|
|
||||
|---|---|---|
|
||||
|Frozen DINOv3-L|`+`|side-decoder|
|
||||
|Сохранность DINO|`+`|drift только в FPN-слоях|
|
||||
|Инвазивность|`+`|decoder 10-20 M|
|
||||
|Distillability|`+`|FPN-descriptor передаётся|
|
||||
|LUPI|`+`||
|
||||
|Missing modality|`+`|fallback OK|
|
||||
|Patch-size robust|`+`|hierarchical decoder|
|
||||
|Dense+binary|`+`||
|
||||
|Co-training|`+`||
|
||||
|Воспроизводимость|`+`|✓|
|
||||
|CVGL-tested|`N`||
|
||||
|
||||
### 5.5 SAM3-Adapter + Mona
|
||||
|
||||
|Критерий|Оценка|Комментарий|
|
||||
|---|---|---|
|
||||
|Frozen DINOv3-L|`++`|adapter-injection, backbone полностью frozen|
|
||||
|Сохранность DINO|`++`|adapter residual, ΔCKA оценочно < 0.05|
|
||||
|Инвазивность|`++`|2-5 M params|
|
||||
|Distillability|`+`|adapter-descriptor transferable|
|
||||
|LUPI|`++`|native fit|
|
||||
|Missing modality|`++`|zeroing adapter — fallback|
|
||||
|Patch-size robust|`+`|adapter-conv агностичен|
|
||||
|Dense+binary|`++`|conv-encoder на вход принимает оба|
|
||||
|Co-training|`+`|joint adapter+upstream LoRA|
|
||||
|Воспроизводимость|`++`|SAM3-Adapter код released Nov 2025|
|
||||
|CVGL-tested|`N`||
|
||||
|
||||
### 5.6 MaskCLIP++ / ProxyCLIP / CorrCLIP
|
||||
|
||||
|Критерий|Оценка|Комментарий|
|
||||
|---|---|---|
|
||||
|Frozen DINOv3-L|`++`|training-free attention rewrite|
|
||||
|Сохранность DINO|`+`|заменяет last-block attn, ΔCKA на последнем слое|
|
||||
|Инвазивность|`++`|0 trainable|
|
||||
|Distillability|`0`|attention-pattern hard to distill to CNN|
|
||||
|LUPI|`+`||
|
||||
|Missing modality|`+`|fallback к vanilla attn|
|
||||
|Patch-size robust|`++`||
|
||||
|Dense+binary|`+`|dense native|
|
||||
|Co-training|`−`|training-free противоречит co-training|
|
||||
|Воспроизводимость|`++`||
|
||||
|CVGL-tested|`N`||
|
||||
|
||||
### 5.7 SkySense V2 / SkySense++
|
||||
|
||||
|Критерий|Оценка|Комментарий|
|
||||
|---|---|---|
|
||||
|Frozen DINOv3-L|`−`|требует свой backbone, не DINOv3|
|
||||
|Сохранность DINO|`−`|другой objective|
|
||||
|Инвазивность|`−`|full pretraining required|
|
||||
|Distillability|`+`|dense features transferable|
|
||||
|LUPI|`+`|MS+SAR+HR — естественная privileged set|
|
||||
|Missing modality|`++`|modality-prompt tokens|
|
||||
|Patch-size robust|`++`|APM|
|
||||
|Dense+binary|`+`||
|
||||
|Co-training|`++`|native|
|
||||
|Воспроизводимость|`+`|code released|
|
||||
|CVGL-tested|`N`|только generic RS|
|
||||
|
||||
### 5.8 FeatUp / AnyUp + Perceiver Resampler
|
||||
|
||||
|Критерий|Оценка|Комментарий|
|
||||
|---|---|---|
|
||||
|Frozen DINOv3-L|`++`|post-hoc feature upsampling|
|
||||
|Сохранность DINO|`++`|features остаются неизменными|
|
||||
|Инвазивность|`++`|1-10 M params|
|
||||
|Distillability|`+`|upsampler-free distillation возможна|
|
||||
|LUPI|`+`||
|
||||
|Missing modality|`++`||
|
||||
|Patch-size robust|`++`|**ключевое преимущество**|
|
||||
|Dense+binary|`++`||
|
||||
|Co-training|`0`||
|
||||
|Воспроизводимость|`++`|AnyUp released Oct 2025|
|
||||
|CVGL-tested|`N`||
|
||||
|
||||
---
|
||||
|
||||
## 6. Сравнительная таблица пары A (итоговая)
|
||||
|
||||
|Method|Year|Venue|Domain|Mechanism|Input fmt|Δparams|FT depth|CVGL-tested|Distillability|Patch robust|**Priority**|
|
||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||
|ODISE|2023|CVPR|generic|shared-backbone|dense+bin|28 M + 1.4 B SD|full co-train|N|0|+|4|
|
||||
|FC-CLIP|2023|NeurIPS|generic|mask-pooled attn|binary|30 M|decoder only|N|++|++|**1**|
|
||||
|CAT-Seg|2024|CVPR|generic|cost-volume + cross-attn|dense|5-10 M + LoRA|LoRA|N|+|+/−|3|
|
||||
|SED|2024|CVPR|generic|FPN side-decoder|dense|10-20 M|decoder+LoRA|N|+|+|3|
|
||||
|MaskCLIP++/ProxyCLIP|2024|ECCV|generic/RS|attn-rewrite|dense|0|training-free|N|0|++|3|
|
||||
|**SAM3-Adapter + Mona**|2025|arXiv/TGRS|RS/generic|LoRA+adapter-injection|dense+bin|2-5 M|LoRA only|N|+|+|**2**|
|
||||
|SkySense V2/++|2025|ICCV/NMI|RS|shared-backbone|dense|665 M (own BB)|full pretrain|N|+|++|5|
|
||||
|FeatUp/AnyUp + Perceiver|2024-2025|ICLR/NeurIPS|generic|feature resampling|dense+bin|1-10 M|FT-free|N|+|++|2|
|
||||
|
||||
**Priority 1** — основной рекомендуемый метод для MERIDIAN. **Priority 2** — дополнение/fallback. **Priority 3-4** — исследовательские ablations. **Priority 5** — не подходит (несовместимость backbone).
|
||||
|
||||
---
|
||||
|
||||
## 7. Patch-size alignment strategies
|
||||
|
||||
Этот раздел имеет смысл **только** при fallback к DINOv2 ViT-L/14. При использовании DINOv3 ViT-L/16 + SegEarth-OV3 (PE-L+ @1008, stride-16) grids **уже выровнены** → resampling не требуется.
|
||||
|
||||
### 7.1 Bilinear/Bicubic upsample
|
||||
|
||||
Стандартный baseline. На тонких структурах (roads, power lines) даёт aliasing: SegEarth-OV (Fig. 2) и IARU-Net 2025 показывают distortion масок на линейных объектах с IoU-drop 3-10 pp. Для UAV с GSD ~0.5 м bilinear teacher-features на дорогах (ширина 1-2 px) ломает geometrical consistency. **Не рекомендуется** для дорог/ЛЭП.
|
||||
|
||||
### 7.2 Learnable token resampler (Perceiver-style / Q-Former)
|
||||
|
||||
Cross-attention module с M learnable queries на целевой сетке (16×16 = 256 queries для stride-16): $$ \tilde X_{16} = \text{softmax}(Q_{16}K_{14}^\top/\sqrt d)V_{14}, \quad |Q_{16}|=256,,|K_{14}|=256. $$ Стоимость: 1 layer ≈ 4 M params, inference +3-5 %. Преимущество: сохраняет edges, learnable. **Рекомендуется** если DINOv2 L/14 остаётся backbone.
|
||||
|
||||
### 7.3 FlexiViT PI-resize
|
||||
|
||||
Beyer et al. CVPR 2023 (`2212.08013`). Pseudo-inverse resize kernel patch-embed: $\tilde W = W,P^{+}$. Zero inference-cost, но требует либо FlexiViT-pretrained backbone, либо short fine-tune. Теряет 0.5-2 pp ImageNet при naive application. Для MERIDIAN: применимо как **one-time convert** DINOv2 L/14 → виртуальный L/16.
|
||||
|
||||
### 7.4 Dual-patch-size DINOv3 finetuning
|
||||
|
||||
Жизнеспособно, но дорого: 10-50 GPU-days для full re-pretrain. Не оправданно на фоне доступных alternatives.
|
||||
|
||||
### 7.5 Frozen-feature projection vs feature-space resampling
|
||||
|
||||
**FeatUp / LoftUp / JAFAR / AnyUp** — upsample feature-maps до пиксельного разрешения, затем fuse в pixel-space. AnyUp (Oct 2025, `2510.12764`) работает feature-agnostic, без retrain per-backbone — **оптимальный выбор при mixing DINOv3+SAM+CLIP**. Δparams ~10 M, latency comparable to bilinear.
|
||||
|
||||
**Рекомендация MERIDIAN.** Идти на DINOv3 ViT-L/16 — устраняет mismatch вовсе; использовать AnyUp только для pixel-level fusion dense-features с SAM3-masks при необходимости.
|
||||
|
||||
---
|
||||
|
||||
## 8. Co-training SegEarth-OV3 + DINOv3 vs Frozen-provider
|
||||
|
||||
### 8.1 Frozen-provider (FC-CLIP-подобная парадигма)
|
||||
|
||||
SegEarth-OV3 полностью зафиксирован; его dense logits $S_d$ и binary stacks $S_b$ кешируются offline. DINOv3 остаётся frozen, обучаются только (a) адаптеры Mona в блоках 18-24, (b) projection-MLP seg→feature, (c) decoder-head для CVGL.
|
||||
|
||||
**Плюсы.** (i) Модульность: upstream можно менять (SegEarth-OV3 → SkySense++) без re-train teacher. (ii) Reproducibility: статический upstream → deterministic features. (iii) Нулевой risk negative transfer в DINOv3. (iv) Offline mask-caching радикально снижает training latency.
|
||||
|
||||
**Минусы.** (a) Domain gap: SegEarth-OV3 использует CLIP-aligned PE-L+, а DINO пространство ортогонально (CKA < 0.3 гипотетически). (b) Невозможность co-evolution: ошибки SegEarth-OV3 (prompt-set drift, false positives) транслируются без возможности correction.
|
||||
|
||||
### 8.2 Co-training (ODISE/SkySense-V2 path)
|
||||
|
||||
SegEarth-OV3 и DINOv3 делят части backbone или тренируются совместно с multi-task loss: $$ \mathcal{L} = \lambda_{\text{CVGL}} \mathcal{L}_{\text{InfoNCE}} + \lambda_{\text{seg}} \mathcal{L}_{\text{CE/Dice}} + \lambda_{\text{DINO}} \mathcal{L}_{\text{Gram-anchor}}. $$
|
||||
|
||||
**Плюсы.** (i) Feature alignment RGB⊕seg. (ii) Возможность propagation gradient'a CVGL-loss в upstream (fine-tune PE-L+). (iii) Estate-of-art на RS-foundation (SkySense V2 +1.8 pp).
|
||||
|
||||
**Минусы.** (a) _Negative transfer_: seg-задача (dense pixel-CE) и CVGL-задача (image-level retrieval) имеют разные gradient-направления; без GradNorm/PCGrad одна подавит другую. (b) _Loss of DINO universality_: Gram-anchoring нарушается, если unfreeze > 4 последних блоков. (c) 3-10× training cost.
|
||||
|
||||
### 8.3 Практические гибриды
|
||||
|
||||
(1) **LoRA-based co-training**: обе ветви имеют backbone frozen, trainable — только LoRA-adapters $r=8$ в last 6 блоках. $\Delta$ params ≈ 10 M. Совмещает модульность frozen-provider с небольшой co-evolution.
|
||||
|
||||
(2) **Staged training**: этап 1 — frozen SegEarth-OV3 + frozen DINOv3, trained only fusion-decoder 10 epochs. Этап 2 — unfreeze LoRA last 4 blocks DINOv3, train 5 epochs с малым LR. Этап 3 (optional) — joint LoRA both.
|
||||
|
||||
(3) **Multi-task loss balancing**: **GradNorm** (Chen'18, `1711.02257`) с adaptive weights; **PCGrad** (Yu'20, `2001.06782`) gradient surgery для проекции conflicting gradients; **CAGrad** (Liu'21, `2110.14048`) conflict-averse. Для MERIDIAN рекомендуется PCGrad: минимизирует negative interference при низком compute overhead.
|
||||
|
||||
(4) **CKA-regularization**: добавить regularizer $\mathcal{L}_{\text{CKA}} = -\text{CKA}(F_{\theta}, F_{\theta^{\ast}})$ на последних блоках, где $\theta^{\ast}$ — frozen reference DINOv3. Это эмпирический штраф за DINO-drift, измеряемый по Kornblith'19 (`1905.00414`).
|
||||
|
||||
**Итоговая рекомендация.** Для MERIDIAN-A: **staged LoRA-hybrid** — начать с frozen-provider (phase 1), затем LoRA-co-training last 4 blocks под PCGrad (phase 2). Это сохраняет distillability и минимизирует negative transfer.
|
||||
|
||||
---
|
||||
|
||||
## 9. Рекомендация для DINOv3-teacher по паре A
|
||||
|
||||
### Топ-2 метода
|
||||
|
||||
**Выбор 1 (основной): FC-CLIP-style frozen-provider + mask-pooled attention + SAM3-Adapter/Mona LoRA-injection.**
|
||||
|
||||
_Место интеграции._ SegEarth-OV3 — frozen provider. Binary mask stacks $S_b\in{0,1}^{H\times W\times K}$ (K ≈ 17-32 для RS) подаются через conv-encoder $\phi:H\times W\times K\to H/16\times W/16\times 256$ в Mona-adapter inside blocks **20-24** DINOv3 ViT-L/16. Для retrieval-head — mask-pooled feature descriptors: $$ e_k = \frac{1}{\sum M_k}\sum_p M_{k,p},F_p^{\text{DINOv3}}, \quad F_{\text{final}} = \text{concat}_k!\left(e_k\right) W_{\text{proj}}. $$
|
||||
|
||||
_Fine-tune режим._ Frozen DINOv3 backbone; trainable — только Mona-LoRA (r=8, 4 blocks, ~3 M) + retrieval-projection (~1 M) + optional SegEarth-OV3 PE-L+ LoRA (~5 M). Total Δparams ≈ 5-10 M.
|
||||
|
||||
_Интеграция с Multi-FiLM-Fusion (пара D, text)._ FiLM-параметры $(\gamma_t, \beta_t)$ из text-branch и Mona-adapter composable по аддитивной residual-схеме: $$ x^{(i+1)} = x^{(i)} + \text{Block}_{\theta^{\ast}}^{(i)}(x^{(i)}) + \underbrace{B^{(i)}A^{(i)}x^{(i)}}_{\text{LoRA}} + \gamma_t^{(i)}\odot\phi_{\text{seg}}(S)^{(i)} + \beta_t^{(i)}. $$
|
||||
|
||||
Это сохраняет симметрию обращения с text⊕seg и не требует отдельной re-integration.
|
||||
|
||||
**Выбор 2 (дополнительный, для ablations): SED-style FPN side-decoder + AnyUp upsampling в pixel-space.**
|
||||
|
||||
_Место интеграции._ Dense logits $S_d$ подаются в side-decoder, принимающий DINOv3 intermediate features из блоков {6, 12, 18, 24}. Через hierarchical UNet с skip-connections и AnyUp-upsampling до пиксельного разрешения производится pixel-level fusion.
|
||||
|
||||
_Fine-tune режим._ Frozen DINOv3; trainable — side-decoder (~15 M) + AnyUp (~10 M). Этот вариант оптимален для **depth-pair B** и служит baseline-comparison для **выбора 1**.
|
||||
|
||||
### Фальсифицируемые гипотезы
|
||||
|
||||
**H_fus_A_1 (главная).** Frozen-provider (SegEarth-OV3) + Mona-LoRA-injection в блоки 20-24 DINOv3 ViT-L/16 + mask-pooled descriptor даёт **ΔR@1 ≥ 2.5 %** на University-1652 drone→satellite относительно Sample4Geo ConvNeXt-B baseline (R@1 = 92.65 %), одновременно сохраняя **distillability-score ≥ 0.85** (определяемый как R@1 CNN-student, обученного через CKA+InfoNCE distillation, нормализованный к R@1 teacher), при **Δparams ≤ 10 M**. Проверка: CKA-sweep по слоям 12-24 (expected ΔCKA last-block ≤ 0.05 vs vanilla DINOv3) и bootstrap CI по 1000 samples. _Основание для величины 2.5 %: +1-2 pp дают прямые ViT-upgrade в CVGL (Learnable-Query-Aggreg., 2025), семантическая модальность в LUPI-сценариях добавляет ещё ~1-2 pp по аналогии с FC-CLIP transfer gains._
|
||||
|
||||
**H_fus_A_2.** При использовании DINOv3 ViT-L/16 вместо DINOv2 ViT-L/14 + Perceiver-resampler, R@1 на University-1652 **не упадёт более чем на 0.5 %** благодаря Gram-anchoring и native stride-16 alignment с SegEarth-OV3. Проверка: ablation {DINOv2/14+Perceiver, DINOv3/16 direct} при идентичных остальных компонентах.
|
||||
|
||||
**H_fus_A_3.** Co-training (stage-2 PCGrad LoRA both DINOv3 and PE-L+) даёт **ΔR@1 ≤ +0.5 %** дополнительно к H_fus_A_1, но **увеличит distillability-loss ≥ 0.10** за счёт drift unique-to-teacher features. Это означает, что чистый frozen-provider — Pareto-оптимальный выбор для LUPI-CVGL в MERIDIAN, а co-training оправдан только если R@1-gain приоритетнее student-performance.
|
||||
|
||||
**H_fus_A_4 (вспомогательная).** Binary mask-stack представление при $K=17$ (стандартный SegEarth-OV3 protocol) даёт **ΔR@1 ≥ +0.7 %** по сравнению с argmax-map с embedding-lookup, так как сохраняет class-uncertainty в overlap regions. Проверка: ablation input-format при фиксированной fusion-архитектуре.
|
||||
|
||||
---
|
||||
|
||||
## 10. Риски и ограничения пары A
|
||||
|
||||
**Negative transfer.** Co-training SegEarth-OV3 ⊕ DINOv3 без PCGrad / CKA-regularization с вероятностью > 50 % (оценка по аналогии с FC-CLIP Tab. 4 и Kornblith'19) приведёт к падению ADE20K-feature-quality DINOv3 на 3-7 pp. _Mitigation:_ staged LoRA-hybrid + PCGrad + $\mathcal{L}_{\text{CKA}}$-regularizer.
|
||||
|
||||
**Modality competition.** RGB-ветвь эволюционно сильнее (DINOv3 pretrained на 1.689 B images); seg-сигнал рискует быть проигнорирован в early training. _Mitigation:_ seg-dropout schedule (gradual-unlocking) и independent seg-projection head с distinct contrastive loss.
|
||||
|
||||
**Feature drift.** Full fine-tune DINOv3 разрушит Gram-anchoring и универсальность features → student сможет distill только CVGL-specific patterns. _Mitigation:_ frozen backbone + LoRA-only + CKA-monitor.
|
||||
|
||||
**Upstream dependency.** SegEarth-OV3 качество масок имеет variance до 15 pp mIoU между классами (roads 49.6 IoU vs buildings 86.9 IoU). _Mitigation:_ per-class reliability-weighting mask-pooled descriptors.
|
||||
|
||||
**Distillability regression.** Чем сложнее teacher-fusion, тем выше риск ViT-specific patterns, которые CNN-student (<5M) не воспроизведёт. _Mitigation:_ constrain teacher-architecture к mask-pooled descriptors (a-la FC-CLIP) — они архитектура-агностичны.
|
||||
|
||||
**Open-vocabulary prompt drift.** Prompt-set SegEarth-OV3 меняется между train/inference → неустойчивость распределения $S_d$. _Mitigation:_ freeze prompt-set на train и inference; либо dense-feature-based fusion без prompts вовсе.
|
||||
|
||||
**Patch-size artifacts.** Только при DINOv2 L/14. _Mitigation:_ переход на DINOv3 L/16 или Perceiver-resampler.
|
||||
|
||||
**Latency у teacher.** SAM 3 + PE-L+ @1008×1008 + DINOv3 ViT-L/16 вместе ≈ 25-30 GFLOPs на изображение. _Mitigation:_ offline mask-caching делает это non-issue для train-time; inference-time у teacher'а не критичен в LUPI.
|
||||
|
||||
---
|
||||
|
||||
## Что предстоит проверить на следующем этапе (пара B, RGB+Depth)
|
||||
|
||||
Пара A установила, что для LUPI-CVGL оптимальна **frozen-provider + LoRA-injection + mask-pooled descriptor** схема с сохранением DINO-objective через Gram-anchoring. Эти findings переносимы на пару B (RGB⊕Depth), но с тремя критическими отличиями. Во-первых, depth из Metric3D v2 / Depth Anything v2 / UniDepth — это continuous-valued H×W×1 tensor, не discrete semantic, поэтому mask-pooling неприменим — потребуется либо FiLM-modulation (depth → γ,β), либо depth-as-query в cross-attention. Во-вторых, depth и RGB имеют гораздо меньший modality-gap, чем RGB и CLIP-aligned seg, поэтому риск negative transfer при co-training ниже, а вероятность дополнительного R@1-gain выше — стоит рассмотреть более агрессивную LoRA-unfreeze. В-третьих, depth геометрически информативен, что особенно ценно для UAV: следует проверить Geo² (`2603.25819`) и Scale-Aware CVGL (`2603.07535`) как прямые baselines, и гипотезу H_fus_B_1, что depth-fusion даёт большее ΔR@1 на SUES-200 (multi-height) чем на University-1652 (fixed height), именно за счёт depth-provided scale invariance.
|
||||
|
||||
Для пары B также критически важно проверить совместимость DINOv3 ViT-L/16 с depth-foundation-models: если UniDepth использует stride-16, grid-alignment сохраняется; если Metric3Dv2 — stride-14, понадобится AnyUp или Perceiver-resampler. Эта связка между парами A и B (общий resampler, общая Mona-adapter-архитектура, общий staged-training recipe) позволит MERIDIAN переиспользовать 80% infrastructure между двумя privileged modalities.
|
||||
|
||||
---
|
||||
|
||||
### Краткий библиографический указатель
|
||||
|
||||
- Siméoni et al. DINOv3. arXiv:2508.10104 (2025).
|
||||
- Li et al. SegEarth-OV3. arXiv:2512.08730 (2025). github.com/earth-insights/SegEarth-OV-3
|
||||
- Li et al. SegEarth-OV. CVPR 2025 Oral. arXiv:2410.01768.
|
||||
- Xu et al. ODISE. CVPR 2023. arXiv:2303.04803.
|
||||
- Yu et al. FC-CLIP. NeurIPS 2023. arXiv:2308.02487.
|
||||
- Cho et al. CAT-Seg. CVPR 2024. arXiv:2303.11797.
|
||||
- Xie et al. SED. CVPR 2024.
|
||||
- Chen et al. SAM-Adapter (ICCVW'23, arXiv:2304.09148), SAM2-Adapter (arXiv:2408.04579), SAM3-Adapter (arXiv:2511.19425).
|
||||
- Li et al. MC-SAM + Mona. arXiv:2408.08576 (2024).
|
||||
- Zhong et al. Conv-LoRA. arXiv:2401.17868 (2024).
|
||||
- Zhou et al. MaskCLIP / MaskCLIP++. arXiv:2208.12262.
|
||||
- Wang et al. SCLIP. arXiv:2312.01597 (2023).
|
||||
- Lan et al. ProxyCLIP. ECCV 2024.
|
||||
- Fu et al. FeatUp. ICLR 2024. arXiv:2403.10516.
|
||||
- Huang et al. LoftUp. ICCV 2025 Oral. arXiv:2504.14032.
|
||||
- Couairon et al. JAFAR. NeurIPS 2025. arXiv:2506.11136.
|
||||
- Wimmer et al. AnyUp. arXiv:2510.12764 (2025).
|
||||
- Alayrac et al. Flamingo / Perceiver Resampler. NeurIPS 2022. arXiv:2204.14198.
|
||||
- Li et al. BLIP-2 / Q-Former. ICML 2023. arXiv:2301.12597.
|
||||
- Beyer et al. FlexiViT. CVPR 2023. arXiv:2212.08013.
|
||||
- Dehghani et al. NaViT. NeurIPS 2023. arXiv:2307.06304.
|
||||
- Guo et al. SkySense. CVPR 2024.
|
||||
- Zhang et al. SkySense V2. ICCV 2025. arXiv:2507.13812.
|
||||
- Wu et al. SkySense++. Nat. Mach. Intell. 2025. doi:10.1038/s42256-025-01078-8.
|
||||
- Shabbir et al. GeoPixel. ICML 2025. arXiv:2501.13925.
|
||||
- Bolya et al. Perception Encoder. arXiv:2504.13181.
|
||||
- Carion et al. SAM 3. arXiv:2511.16719.
|
||||
- Zheng et al. University-1652. ACM MM 2020.
|
||||
- Deuser et al. Sample4Geo. ICCV 2023. arXiv:2303.11851.
|
||||
- Ji et al. Game4Loc / GTA-UAV. AAAI 2025 Oral. arXiv:2409.16925.
|
||||
- Xu et al. UAV-VisLoc. arXiv:2405.11936 (2024).
|
||||
- Learnable-Query-Aggregation CVGL. arXiv:2512.23938 (2025).
|
||||
- PFED-distill CVGL. arXiv:2510.22582 (2025).
|
||||
- Geo² CVGL. arXiv:2603.25819 (2025).
|
||||
- Scale-Aware CVGL. arXiv:2603.07535 (2025).
|
||||
- Kornblith et al. CKA. ICML 2019. arXiv:1905.00414.
|
||||
- Chen et al. GradNorm. ICML 2018. arXiv:1711.02257.
|
||||
- Yu et al. PCGrad. NeurIPS 2020. arXiv:2001.06782.
|
||||
- Liu et al. CAGrad. NeurIPS 2021. arXiv:2110.14048.
|
||||
@@ -0,0 +1,705 @@
|
||||
---
|
||||
type: delta
|
||||
status: draft
|
||||
date: 2026-05-06
|
||||
parent: "[[REVIEW_segmentation_pairA]]"
|
||||
related:
|
||||
- "[[../00_overall/SPEC_fusion_ACF_MERIDIAN]]"
|
||||
- "[[MASTER_synthesis_cached_tensors]]"
|
||||
- "[[DELTA_E1_pair_D_text_fusion]]"
|
||||
- "[[DELTA_E1_text_encoder_F_variants]]"
|
||||
- "[[HYP_MambaVision_OV_segmentation]]"
|
||||
tags:
|
||||
- delta
|
||||
- decision/delta
|
||||
- component/cvgl
|
||||
- method/film
|
||||
- method/segmentation
|
||||
- arch/dinov3
|
||||
- gate/E1
|
||||
- priority/high
|
||||
phase: E1
|
||||
hypotheses_added:
|
||||
- H_pair_A_5
|
||||
- H_pair_A_6
|
||||
- H_pair_A_7
|
||||
- H_pair_A_8
|
||||
author: claude
|
||||
---
|
||||
|
||||
# DELTA §2.6 — Pair A semantic fusion (cached uint8 → categorical embedding)
|
||||
|
||||
> [!summary] TL;DR
|
||||
> **Major architectural shift**: anchor REVIEW_segmentation_pairA (FC-CLIP-style **frozen-provider + Mona-LoRA + mask-pooled descriptor** через SegEarth-OV3 backbone features) **superseded** новым cached tensors anchor ([[MASTER_synthesis_cached_tensors]] §3): **cached uint8 segm tensor [1,256,256] ∈ [0,16] → nn.Embedding(17,64) с LRSCLIP-PCA-64 warm-start → 4-layer conv encoder (1→32→64→96→128) → GGeM → FiLM-A 128→256→(2×1024×5), ~2.3M trainable**. Mona-LoRA-A **deprecated** — нет SegEarth-OV3 backbone features в pipeline (только dense class IDs).
|
||||
>
|
||||
> 5 refinements (D1-D5): D1 confirm categorical-embed > mask-pooled (forced by cached tensors regime — нет raw features); D2 embed init ablation **LRSCLIP-PCA-64** vs sentence-template averaging vs frozen-LRSCLIP vs random; D3 cardinality 17 anchor (SegEarth-OV3 native), evaluate iSAID-21 / LoveDA-7 trade-off; D4 conv encoder depth 4-layer оптимально (verify against 3 / 5 / 6); D5 §0.8 categorical-embedding-aware FiLM-альтернативы — **per-class FiLM (E.11 MoFiLM) добавляется как F3-research-A** (γ,β routed по indicator класса); aux seg head на student — risk polluting features → **reject as primary, defer to E5 ablation**.
|
||||
>
|
||||
> **4 новые гипотезы** H_pair_A_5..8: warm-start ablation, per-class FiLM gain, cardinality robustness, aux seg loss feature pollution risk. **H_fus_A_1..4 status updates**: H_fus_A_1 структурно изменился (Mona-LoRA → nn.Embedding), H_fus_A_2 still relevant (DINOv3 ViT-L/16 anchor), H_fus_A_3 superseded (co-training out of scope в cached tensors), H_fus_A_4 invalid (binary-stack vs argmax — cached anchor argmax-class-IDs).
|
||||
|
||||
---
|
||||
|
||||
## §1. AS-IS — anchor состояние (revised cached tensors regime)
|
||||
|
||||
### 1.1. Anchor architecture (MASTER_synthesis_cached_tensors §3, 2026-04-20)
|
||||
|
||||
> [!info]+ Pair A revised — cached uint8 → categorical embedding pipeline
|
||||
|
||||
**Provider:** SegEarth-OV3 (SAM 3 + PE-L+, 17-class taxonomy, training-free OVSS, mIoU 53.4% avg на 8 RS benchmarks). Pre-computed offline → cached uint8 tensors [1,256,256] ∈ [0,16] в SafeTensors на NVMe SSD (130 KB/pair).
|
||||
|
||||
**Архитектура fusion (~2.3M trainable):**
|
||||
|
||||
```
|
||||
seg [1,256,256] uint8 ∈ [0,16]
|
||||
│
|
||||
▼
|
||||
nn.Embedding(17, 64) ← warm-start через LRSCLIP-PCA-64
|
||||
│
|
||||
▼
|
||||
[64, 256, 256] feature map
|
||||
│
|
||||
▼
|
||||
4-layer conv encoder:
|
||||
conv 7×7 stride 2 (64→64) — first downsample
|
||||
conv 3×3 stride 2 (64→96)
|
||||
conv 3×3 stride 2 (96→128)
|
||||
conv 3×3 stride 2 (128→128)
|
||||
│
|
||||
▼
|
||||
[128, 16, 16] feature map
|
||||
│
|
||||
▼
|
||||
GGeM pool (learnable p-exponent)
|
||||
│
|
||||
▼
|
||||
[128] descriptor
|
||||
│
|
||||
▼
|
||||
FiLM-A head MLP 128→256→(2×1024×5)
|
||||
│
|
||||
▼
|
||||
γ_A^{(20-24)}, β_A^{(20-24)} → blocks 20-24 DINOv3 ViT-L/16
|
||||
через shared 256-d bottleneck
|
||||
```
|
||||
|
||||
**Параметрический бюджет** (verified MASTER §3):
|
||||
- nn.Embedding(17, 64) = 1088 params (≈ 0)
|
||||
- conv encoder = ~370K
|
||||
- FiLM-A MLP = ~2M
|
||||
- **Total Pair A trainable = ~2.3M**
|
||||
|
||||
**Warm-start procedure:**
|
||||
1. 17 prompts из `seg_classes.py UNIFIED_PROMPTS` (e.g., "a satellite image of urban area", "a satellite image of dense forest", "a satellite image of water body", ...)
|
||||
2. Encode через LRSCLIP ViT-L/14 (768-dim output)
|
||||
3. PCA-decompose → 64 components → [17, 64] init weights
|
||||
4. nn.Embedding remains learnable во время training
|
||||
|
||||
**Mona-LoRA-A deprecated** ([[MASTER_synthesis_cached_tensors]] §3 deprecation rationale): в cached tensors режиме нет SegEarth-OV3 backbone features (только class IDs); nn.Embedding с warm-start уже produces learnable semantic space, дополнительный adapter избыточен.
|
||||
|
||||
### 1.2. Anchor justification (компактно)
|
||||
|
||||
- **Cached tensors regime** ([[MASTER_synthesis_cached_tensors]] §1-2): provider features заменены на pre-computed tensors → **structural enforcement** на mask-pooled fusion (mask-pool over **what features**? нет raw seg features в pipeline)
|
||||
- **17-class taxonomy** = SegEarth-OV3 native (background, urban, forest, water, road, building, field, bare earth, wetland, etc.) — natural fit для Polyakova caption inventory whitelist (DELTA §2.4 D1 terrain inference)
|
||||
- **GGeM pool** = anchor для feature aggregation (cross from F11, [[../../1_lit_research/_reviews/СИНТЕЗ_3_fusion]] §6)
|
||||
- **FiLM-A → blocks 20-24** = same injection point как Pair B/C/D/E (5-way unified)
|
||||
- **No additional Mona-LoRA**: parameter budget стал ~2.3M вместо anchor ~5-10M (REVIEW_segmentation_pairA §9 H_fus_A_1)
|
||||
|
||||
### 1.3. H_fus_A_1..4 (anchor) — updated status
|
||||
|
||||
| ID | Original (REVIEW_segmentation_pairA) | New status (DELTA 2026-05-06) | Rationale |
|
||||
|:--|:--|:-:|:--|
|
||||
| H_fus_A_1 | Frozen-provider + Mona-LoRA + mask-pooled → ΔR@1 ≥ 2.5% | **Structurally superseded** — replaced by H_pair_A_5..8 | Cached tensors → mask-pool неприменим (нет raw seg features) |
|
||||
| H_fus_A_2 | DINOv3 ViT-L/16 vs DINOv2/14+Perceiver, R@1 не упадёт > 0.5% | **Confirmed (still relevant)** | DINOv3 ViT-L/16 = anchor backbone, patch-size match |
|
||||
| H_fus_A_3 | Co-training PCGrad LoRA both → ΔR@1 ≤ +0.5% but distillability -0.10 | **Superseded** — out of scope в cached tensors | SegEarth-OV3 frozen offline, нет co-training opportunity |
|
||||
| H_fus_A_4 | Binary K=17 mask-stack > argmax + embedding-lookup, ΔR@1 ≥ 0.7% | **Invalid (anchor inversion)** | Cached anchor uses **argmax class IDs** (uint8 [0,16]); binary stack would require K-channel float storage = ×17 storage cost |
|
||||
|
||||
---
|
||||
|
||||
## §2. Лит-обзор: новые свидетельства (2025-2026)
|
||||
|
||||
### 2.1. SegEarth-OV3 (arXiv:2512.08730, Dec 2025) — provider details verified
|
||||
|
||||
> [!cite] Источник
|
||||
> [arXiv:2512.08730](https://arxiv.org/abs/2512.08730) · GitHub earth-insights/SegEarth-OV-3 · Apache-2.0
|
||||
|
||||
**Что нового (verified):**
|
||||
- SAM 3 + PE-L+ backbone (Bolya et al. arXiv:2504.13181), input 1008×1008 stride-16
|
||||
- **Training-free** inference через dual-head mask fusion (semantic + instance) + presence-guided filtering
|
||||
- mIoU avg на 8 RS benchmarks: **53.4%** (vs 40.7% CorrCLIP, 39.1% CAT-Seg)
|
||||
- Per-dataset ranges: WHU-Aerial 86.9%, Cityscapes 69.7%, LoveDA 47.4%, iSAID (~50%)
|
||||
|
||||
**Implication для DELTA:**
|
||||
- 17-class anchor taxonomy = **SegEarth-OV3 native protocol** — confirmed
|
||||
- Provider stride-16 = native match с DINOv3 ViT-L/16 (patch 16) — no resampling needed
|
||||
- **Open-vocabulary prompt drift** (REVIEW §10) — risk при обновлениях provider; mitigated через cached tensors **frozen после version-pinning**
|
||||
|
||||
### 2.2. FarSLIP v2 (arXiv:2511.14901, Nov 2025) — Pair A redirect (DELTA §2.5 D7)
|
||||
|
||||
> [!cite] Источник
|
||||
> [arXiv:2511.14901](https://arxiv.org/abs/2511.14901) · GitHub NJU-LHRS/FarSLIP
|
||||
|
||||
**Что нового:**
|
||||
- **Patch-to-patch distillation** (vs стандарт patch-to-CLS) — улучшает feature discriminability при сохранении semantic coherence
|
||||
- **MGRS-200k dataset** — first multi-granularity RS dataset с object-level text supervision
|
||||
- **SOTA на 8 RS OVSS benchmarks** + zero-shot classification + image retrieval
|
||||
- Только ViT-B/16 (512-dim text encoder)
|
||||
|
||||
**Implication для DELTA:**
|
||||
- **FarSLIP v2 — alternative provider candidate** для Pair A (vs SegEarth-OV3 anchor)
|
||||
- **Decision: НЕ заменять SegEarth-OV3** — DELTA §2.5 D7 redirect уже отметил: FarSLIP полезен как **interpretation alternative**, но его 200K dataset значительно меньше SegEarth-OV3 (built on SAM 3, training-free на all open-vocab queries)
|
||||
- **Backlog research direction**: FarSLIP-augmented warm-start для nn.Embedding(17,64) через MGRS-200k object-level text → может улучшить semantic discriminability vs LRSCLIP scene-level prompts
|
||||
|
||||
### 2.3. CLIP-based semantic segmentation 2025 trends (arXiv:2503.20826, Mar 2025)
|
||||
|
||||
> [!cite] Источник
|
||||
> «Exploring CLIP's Dense Knowledge for Weakly Supervised Semantic Segmentation» · Mar 2025
|
||||
|
||||
**Что нового:**
|
||||
- DenseCLIP / MaskCLIP / ComCD trends — CLIP dense knowledge mining для seg-сигнала
|
||||
- **CoOp / CLIP-Adapter** — lightweight trainable prompts/adapters insert на frozen CLIP
|
||||
- **Class Token Fusion (ICTF) + Patch Token Fusion (PTF)** modules — dual-branched converter
|
||||
|
||||
**Implication для DELTA:**
|
||||
- ICTF/PTF — alternative для FiLM-conditioning (категории K.1 modality token concat в §0.8 chklist)
|
||||
- **Decision: НЕ принимать как primary** — наш FiLM-A анкор более параметр-эффективен (~2.3M vs ICTF/PTF ~10-30M)
|
||||
- Add to research backlog для post-E1 ablation (F3-research-A alternative)
|
||||
|
||||
### 2.4. Vision-Language Weed Segmentation (arXiv:2602.23677, 2026)
|
||||
|
||||
> [!cite] Источник
|
||||
> «Vision-Language Semantic Grounding for Multi-Domain Crop-Weed Segmentation»
|
||||
|
||||
**Что нового:**
|
||||
- **FiLM layers conditioned on natural language captions** для UAV agricultural seg
|
||||
- Channel-wise feature refinement при сохранении fine-grained spatial localization
|
||||
- **CAGE module** = dual-path cross-attention gated enhancement + global FiLM modulation + spatial context refinement
|
||||
|
||||
**Implication для DELTA:**
|
||||
- **Direct precedent для FiLM-conditioning по text для UAV seg** — confirms anchor pattern (FiLM-A modulates DINOv3 blocks 20-24 conditioned on segmentation embedding)
|
||||
- Anchor ✅ confirmed; CAGE module — secondary alternative для Architecture B (Hybrid)
|
||||
|
||||
### 2.5. SkySense V2 (arXiv:2507.13812, ICCV 2025) — RS foundation alternative
|
||||
|
||||
> [!cite] Источник
|
||||
> [arXiv:2507.13812](https://arxiv.org/abs/2507.13812) · ICCV 2025
|
||||
|
||||
**Что нового:**
|
||||
- Unified ViT + MoE + APM (Adaptive Prompt Modulation) для RS foundation
|
||||
- +1.8 pp avg vs SkySense (NMI 2025)
|
||||
- Co-training paradigm (SegEarth-OV3 + DINOv3 + MoE)
|
||||
|
||||
**Implication для DELTA:**
|
||||
- Reject as Pair A provider — SkySense V2 разрушает cached tensors decoupling (co-training requires online seg)
|
||||
- **Acquired backlog B7** ([[../../1_lit_research/_reviews/READING_BACKLOG]] §2.5 LOW) — future reference только
|
||||
|
||||
### 2.6. Categorical embedding init landscape
|
||||
|
||||
| Init strategy | Method | Cost | Expected benefit | Source |
|
||||
|:--|:--|:-:|:--|:--|
|
||||
| **LRSCLIP-PCA-64** (anchor) | 17 prompts → LRSCLIP encode → PCA → [17, 64] | 1× LRSCLIP forward + PCA (~30 sec) | semantic warm-start, +1-2pp R@1 vs random | MASTER §3 (anchor) |
|
||||
| Sentence-template averaging | n templates per class avg → encode → PCA | n× LRSCLIP forwards | template robustness, marginal +0.3-0.5pp | CoOp / DenseCLIP precedent |
|
||||
| Frozen-LRSCLIP (no PCA) | encode → frozen [17, 768] (no learnable Embedding) | 0 train cost on Embedding | no fine-tuning capability на embedding space | reject — anchor needs learnable |
|
||||
| DINOv3-text init | DINOv3-text не существует (DINOv3 = vision-only) | N/A | N/A | reject — N/A |
|
||||
| FarSLIP v2 init | FarSLIP encode → PCA → [17, 64] | similar cost | object-level discrim better than scene-level | research direction (B6 backlog) |
|
||||
| Random init (cold-start) | init.normal_(mean=0, std=0.02) | 0 cost | slow convergence (need full E1 to reach warm-start level) | reject — anchor evidence (REVIEW_text_pairD §10 H_tensor_1: warm-start > cold-start) |
|
||||
|
||||
---
|
||||
|
||||
## §3. DELTA — что изменяется vs anchor
|
||||
|
||||
### 3.1. Что НЕ меняется (anchor сохраняется)
|
||||
|
||||
| Anchor | Источник | Действие |
|
||||
|:--|:--|:--|
|
||||
| Cached uint8 segm tensor [1,256,256] ∈ [0,16] | MASTER §2 | ✅ keep |
|
||||
| 17-class taxonomy SegEarth-OV3 native | SegEarth-OV3 paper | ✅ keep |
|
||||
| nn.Embedding(17, 64) categorical | MASTER §3 | ✅ keep |
|
||||
| LRSCLIP-PCA-64 warm-start | MASTER §3 | ✅ keep (D2 verifies vs alternatives) |
|
||||
| 4-layer conv encoder (1→32→64→96→128) | MASTER §3 (note: anchor пишет 1→32... но input уже 64-channel после embedding, верный — 64→64→96→128→128) | ✅ keep with notation fix |
|
||||
| GGeM pool (learnable p) | MASTER §3 + F11 anchor | ✅ keep |
|
||||
| FiLM-A MLP 128→256→(2×1024×5) | MASTER §3 | ✅ keep |
|
||||
| ~2.3M trainable params budget | MASTER §3 | ✅ keep |
|
||||
| Blocks 20-24 DINOv3 injection | REVIEW §9 | ✅ keep (5-way unified) |
|
||||
| Shared 256-d bottleneck | MASTER §3 | ✅ keep |
|
||||
| Mona-LoRA-A deprecated | MASTER §3 | ✅ keep deprecated |
|
||||
| Co-training out of scope | MASTER §3 + DELTA §2.3 anchor | ✅ keep frozen |
|
||||
|
||||
### 3.2. Что предлагается УТОЧНИТЬ (Decision DELTA Table)
|
||||
|
||||
| # | Item | Было (anchor) | Станет (DELTA) | Threshold для acceptance | Источник evidence |
|
||||
|:-:|:--|:--|:--|:--|:--|
|
||||
| **D1** | Categorical embedding vs feature-pooled fusion | implicit anchor | **Explicit confirm**: cached tensors regime structurally enforces categorical (no raw features available); H_fus_A_1 superseded by H_pair_A_5 | structural decision: 130 KB/pair uint8 storage vs ~30 MB/pair float16 K=17 binary stack (×230 cost) | MASTER §2 storage budget |
|
||||
| **D2** | Embedding init = LRSCLIP-PCA-64 | anchor (single strategy) | **3-way ablation**: LRSCLIP-PCA-64 (anchor) vs sentence-template averaging (3 templates per class) vs random cold-start | R@1(anchor warm-start) ≥ R@1(cold-start) + 1.0pp | H_pair_A_5 (NEW) |
|
||||
| **D3** | Cardinality 17 (SegEarth-OV3 native) | anchor | **17 primary; iSAID-21 / LoveDA-7 evaluated в E5 ablation** для cross-dataset transfer | R@1(17) ≥ R@1(7) + 0.5pp; R@1(17) ≥ R@1(21) − 0.5pp (parity) | H_pair_A_7 (NEW) |
|
||||
| **D4** | Conv encoder depth = 4 layers | anchor | **Confirm 4 optimal vs 3 / 5 / 6 ablation** (preparatory probe) | param budget proportional vs R@1 marginal gain ≤ 0.3pp diff | H_pair_A_8 (subset) |
|
||||
| **D5** | Per-class FiLM (γ,β routed by class) — implicit single-stream | global GGeM single FiLM-A | **Add F3-research-A: per-class FiLM (E.11 MoFiLM)** — 17 separate γ,β heads, gated by class indicator | research-only, post-E1 conditional на anchor wins | H_pair_A_6 (NEW) |
|
||||
| **D6** | Aux seg loss on student | not in anchor | **Reject as primary, defer to E5 ablation** (risk polluting features) | aux seg loss adds CE/Dice gradient on student → potential negative transfer; defer | H_pair_A_8 (NEW) |
|
||||
| **D7** | FarSLIP v2 alternative provider | not considered | **Track as backlog research** (B1 P1 in §2.5 backlog) — defer post-E1 | future ablation для embedding init alternative (FarSLIP-PCA-64 vs LRSCLIP-PCA-64) | DELTA §2.5 D7 redirect + §2.6 (b) |
|
||||
|
||||
### 3.3. Что предлагается ДОБАВИТЬ
|
||||
|
||||
#### 3.3.1. Per-class FiLM (F3-research-A) — Mixture-of-FiLM (MoFiLM) категория E.11 §0.8
|
||||
|
||||
**Rationale:** anchor использует **single FiLM-A** на global GGeM descriptor — теряет per-class granularity. **F3-research-A**:
|
||||
|
||||
```
|
||||
seg [1,256,256] uint8 ∈ [0,16]
|
||||
│
|
||||
▼ embedding (17, 64) + warm-start
|
||||
[64, 256, 256]
|
||||
│
|
||||
▼ class indicator vector c ∈ {0,1}^17 (presence per class в image)
|
||||
│
|
||||
▼ FiLM-A_c heads (17 separate MLPs)
|
||||
γ^c, β^c ∈ R^{2×1024×5} per class c
|
||||
│
|
||||
▼ gated по indicator: γ_A = Σ_c c_c · γ^c / Σ c_c
|
||||
│
|
||||
▼ same → blocks 20-24
|
||||
```
|
||||
|
||||
**Cost:** 17× larger MLP head budget = ~17 × 2M = **~34M trainable** (vs anchor 2M); может быть оптимизировано через **shared 64-d bottleneck** (17 × 0.5M = 8.5M).
|
||||
|
||||
**Threshold:** R@1 ≥ R@1(anchor) + **2pp** (compensates 4-15× param overhead).
|
||||
|
||||
**Decision:** **research-only**, post-E1 conditional на anchor wins; не блокирует E1 launch.
|
||||
|
||||
#### 3.3.2. Sentence-template averaging warm-start (D2)
|
||||
|
||||
**Procedure:** для каждого из 17 классов:
|
||||
- 3 prompts (e.g., "a satellite image of urban area", "an aerial photo of urban district", "a top-down view of urban region")
|
||||
- Encode each через LRSCLIP, average → [768]
|
||||
- PCA all 17 → [17, 64]
|
||||
|
||||
**Expected:** template diversity reduces caption-to-prompt mismatch при inference; +0.3-0.5pp R@1 vs single-prompt anchor.
|
||||
|
||||
**Cost:** 3× LRSCLIP forward at warm-start (~90 sec total, one-time).
|
||||
|
||||
#### 3.3.3. Cardinality ablation (D3)
|
||||
|
||||
**Procedure (E5 ablation, post-E1):**
|
||||
- 17 anchor (SegEarth-OV3 native)
|
||||
- 21 iSAID extension (15 foreground + 1 background = 16, plus SegEarth-OV3 unmapped 5 = 21)
|
||||
- 7 LoveDA reduced (6 foreground + 1 background)
|
||||
|
||||
**Expected:**
|
||||
- 17 anchor optimal — balanced fine-grained vs taxonomy stability
|
||||
- 7 reduced — coarser, may improve robustness to class confusion
|
||||
- 21 expanded — finer, may improve discriminability но expand provider re-training cost
|
||||
|
||||
### 3.4. Conflicts с anchor
|
||||
|
||||
> [!warning]+ Conflict 1 — REVIEW_segmentation_pairA H_fus_A_1..4 vs cached tensors regime
|
||||
>
|
||||
> REVIEW _segmentation_pairA канон (2026-04-20) — Mona-LoRA-A + mask-pooled descriptor (FC-CLIP-style); MASTER_synthesis_cached_tensors §3 (2026-04-20) — nn.Embedding(17,64) + LRSCLIP-PCA-64. **Two anchors из одной даты противоречат друг другу**. **Resolution:** MASTER_synthesis_cached_tensors **supersedes** REVIEW для cached tensors regime (новая major revision). REVIEW сохраняется как **historical reference** для FC-CLIP-style approach в случае cached tensors regime fails (например, R_provider — provider drift makes pre-computed tensors stale).
|
||||
|
||||
> [!warning]+ Conflict 2 — anchor пишет "1→32→64→96→128" но nn.Embedding выход = 64-channel
|
||||
>
|
||||
> MASTER §3 текст: «conv 7×7 stride 2 c 1→32 channels для начального feature extraction, затем три conv 3×3 stride 2 c 32→64→96→128». Но input уже [64, H, W] после nn.Embedding(17,64). **Notation inconsistency**. **Resolution:** correct архитектура должна быть либо (a) **64→64→96→128→128** (4 layers с initial channel=64), либо (b) **1×1 reduction** 64→1 в начале + (1→32→64→96→128) — но это теряет embedding semantic. **DELTA D8: notation fix** — verify в implementation что используется (a). [Cross-link: MASTER §3 line 73].
|
||||
|
||||
> [!info]+ No conflict — Pair A 9-zone L2 caption coordinate system
|
||||
>
|
||||
> DELTA §2.4 H_caption_2 (9-zone grid) использует SAME coordinate system как Pair A 9-zone seg quadrant maps (Polyakova MapTextualizer, [[PIPELINE_text_annotation_full]] §3.2). Anchor confirmed sync.
|
||||
|
||||
### 3.5. Risks of refinement
|
||||
|
||||
> [!danger]+ R1 — SegEarth-OV3 provider drift при обновлениях
|
||||
>
|
||||
> Anchor REVIEW §10 already noted prompt-set drift risk. **Cached tensors mitigates** через offline pre-compute + version-pinning (hash-suffix SafeTensors filenames). But: при обновлении SegEarth-OV3 (next release) **все 962K tensors stale** → re-compute cost ~100 H100-hours. **Mitigation:** strict version-pinning + 500-image regression test set + automated drift detection.
|
||||
|
||||
> [!warning]+ R2 — Embedding cold-start collapse
|
||||
>
|
||||
> If LRSCLIP-PCA-64 warm-start ablation (D2) shows random cold-start ≈ warm-start, anchor warm-start cost (1× LRSCLIP forward + PCA, ~30 sec) **не оправдан**. **Mitigation:** if H_pair_A_5 disproven, simplify pipeline (drop warm-start, use random init).
|
||||
|
||||
> [!warning]+ R3 — Per-class FiLM (F3-research-A) param explosion
|
||||
>
|
||||
> 17 separate FiLM heads × 2M = 34M trainable (vs 2M anchor) — **15× overhead**. Memory 4090 borderline. **Mitigation:** shared bottleneck factorization (17 × 0.5M = 8.5M) — reduces to 4× overhead; conditional на E1 anchor wins, defer.
|
||||
|
||||
> [!danger]+ R4 — Aux seg head на student polluting features
|
||||
>
|
||||
> Если в Student добавить auxiliary seg head (CE loss на cached uint8 → class-IDs), gradient seg-task может перекрывать CVGL-task gradient (REVIEW §8.3 negative transfer evidence). **Mitigation D6:** **reject aux seg head** в Student-side; if needed, evaluate **только в E5 ablation** с PCGrad gradient surgery (REVIEW §8.3).
|
||||
|
||||
> [!warning]+ R5 — 1×1 notation conflict (Conflict 2)
|
||||
>
|
||||
> Если implementation использует (1→32→64→96→128) вместо (64→64→96→128→128), теряется embedding-injected semantic content (1×1 reduction до single channel). **Mitigation D8:** code review fix BEFORE E1 launch — verify pipeline_256.py / pair_A_module.py implementation.
|
||||
|
||||
### 3.6. Отвергнутые предложения
|
||||
|
||||
> [!failure]+ Reject — Mona-LoRA-A revival
|
||||
>
|
||||
> Anchor MASTER §3 deprecated Mona-LoRA-A для cached tensors. Adding back требует **reintroducing online SegEarth-OV3 provider** для feature extraction → defeats cached tensors purpose (~100h H100 inference вместо 0). Reject.
|
||||
|
||||
> [!failure]+ Reject — Binary K=17 mask stack (vs argmax uint8)
|
||||
>
|
||||
> H_fus_A_4 (REVIEW §9) hypothesizes binary stack > argmax. **Counter-evidence**: storage 17× cost (130 KB → 2.2 MB per pair = ~2 TB extra на World-UAV); compute overhead для conv encoder K-channel input (×17 first layer). **Threshold для acceptance в anchor**: ΔR@1 ≥ 5pp justify storage cost. Anchor evidence: 0pp expected (uint8 + nn.Embedding lookup retrieves identical semantic vector). Reject.
|
||||
|
||||
> [!failure]+ Reject — SkySense V2 / GeoLangBind alternative provider
|
||||
>
|
||||
> Both require **co-training** (SkySense V2 unified ViT + MoE + APM; GeoLangBind agglomerative VL) → break cached tensors decoupling. Out of scope в cached tensors regime. Reject.
|
||||
|
||||
> [!failure]+ Reject — Co-training PCGrad LoRA both DINOv3 + PE-L+ (H_fus_A_3)
|
||||
>
|
||||
> H_fus_A_3 (REVIEW §9) was conditional on FC-CLIP-style anchor. New cached tensors anchor — provider **frozen offline**, no co-training opportunity. Even if extracted, PCGrad gradient surgery overhead (×1.5 compute) → not justified. Reject.
|
||||
|
||||
> [!failure]+ Reject — Aux seg head на student (D6)
|
||||
>
|
||||
> Adding CE/Dice loss на student adds gradient interference (REVIEW §8.3). **Empirical evidence** Polyakova v8 production iteration — adding altitude-reasoning to prompt каскадом **+73% FDR** (DELTA §2.4 §3.6 reject 4×4 grid analogous). Multi-task learning без PCGrad → expected feature pollution. Defer to E5 ablation only.
|
||||
|
||||
> [!failure]+ Reject — Random cold-start (no warm-start)
|
||||
>
|
||||
> H_tensor_1 (MASTER §6 hypothesis): warm-start nn.Embedding via LRSCLIP > cold-start random (Medium confidence, testable in E3 ablation). Anchor preserves warm-start. Reject random as primary; keep as ablation comparison.
|
||||
|
||||
---
|
||||
|
||||
## §4. §0.8 FiLM-АЛЬТЕРНАТИВЫ — обязательный чек-лист (categorical-embedding-aware)
|
||||
|
||||
> [!important] §0.8 mandatory для fusion-prompt §2.6
|
||||
>
|
||||
> Categorical-embedding-aware variants особенно: B.5 Q-Former, F.1 MoE per-class, K.1 modality token concat.
|
||||
|
||||
### 4.1. Категории A-L: status в DELTA
|
||||
|
||||
| Cat | Метод | Anchor decision | Reason |
|
||||
|:-:|:--|:-:|:--|
|
||||
| **A.1** Early concat (input-level) | Reject | RGB+seg input concat нарушает DINOv3 patch-embed weights |
|
||||
| **A.2** Late concat | Reject | Linear fusion, weak |
|
||||
| **B.5** Q-Former (BLIP-2) | Architecture C research-only | Bottleneck destroys dense correspondence (как в Pair D §2.3 reject as primary) |
|
||||
| **C.1** GMU (Gated Multimodal Unit) | Reject | Gating only, no shift component (FiLM superset) |
|
||||
| **E.7** Conditional FiLM (anchor) | **PRIMARY** | Anchor ✅ |
|
||||
| **E.11** Mixture-of-FiLM (MoFiLM) | **F3-research-A candidate** (D5) | Per-class FiLM, 17 separate γ,β heads gated by indicator |
|
||||
| **F.1** Top-k MoE per modality | Reject as primary | Modality-level MoE — для §2.9, не Pair A class-level |
|
||||
| **F.3** Soft MoE (Puigcerver 2024) | Research direction | Per-class soft routing — alternative для F3-research-A |
|
||||
| **G.1** Houlsby adapter | Reject | Mona deprecated; Houlsby не дает benefit над FiLM в cached |
|
||||
| **G.3** LoRA | Already in use | LoRA на DINOv3 blocks 20-24 — anchor |
|
||||
| **K.1** Modality token concat (BEiT-like) | Reject | Adding `[SEG]` token к sequence требует full retrain DINOv3 |
|
||||
| **L.3** MultiLevelFiLM + MoE routing | F3-research-A alternative | Same as E.11 effectively |
|
||||
|
||||
### 4.2. DELTA-чеклист для F3-research-A (per-class MoFiLM)
|
||||
|
||||
- [x] **Категория A-L?** E.11 Mixture-of-FiLM
|
||||
- [x] **Params overhead vs anchor (~2.3M)**: ~34M (15×) или ~8.5M с shared bottleneck (4×)
|
||||
- [x] **Identity-at-init свойство сохраняется?** Да — tanh-α init=0 + per-class γ^c initialized normal
|
||||
- [x] **Что происходит при class-absent inference?** Indicator c_c=0 → corresponding γ^c, β^c исключаются из weighted sum; graceful degradation
|
||||
- [x] **INT8-friendly?** Per-class routing add discrete branching → INT8 calibration challenges; defer to E9 quantization phase
|
||||
- [x] **Совместимо ли с frozen DINOv3-L?** Да — applied in shared 256-d bottleneck downstream
|
||||
- [x] **К-5 scalability**: independent of K=5 modality count; uses K=17 class count internally
|
||||
- [x] **Источник идеи**: §0.8 E.11 + per-class adapter precedent (CoOp / DenseCLIP)
|
||||
- [x] **Ablation план**: F3-research-A только post-E1 conditional на anchor wins; E5 ablation track
|
||||
|
||||
---
|
||||
|
||||
## §5. CVGL DOMAIN AWARENESS — чек-вопросы (MEDIUM domain-aware §0.6)
|
||||
|
||||
§2.6 — **MEDIUM domain-aware** ([[ПРОМПТЫ_анализ_литобзоров_по_задачам_MERIDIAN]] §1.1). Pair A fusion должен handle классы partially-overlapping для sat/UAV.
|
||||
|
||||
| Категория | Status |
|
||||
|:--|:--|
|
||||
| **F1 scale** | ✅ partially — class-IDs не зависят от scale; 17-class taxonomy включает scale-invariant categories (urban / forest / water); SegEarth-OV3 stride-16 native match с DINOv3 |
|
||||
| **F2 viewpoint mismatch** | ⚠ partially — sat nadir / UAV oblique классы differently visible (footprint vs facade); SegEarth-OV3 inferred per-pixel handles per-view; aug consistency through cached tensors |
|
||||
| **F4 illumination / sun angle** | ✅ classes invariant к sun angle; cached tensors frozen — no augmentation required |
|
||||
| **F5 repetitive texture** | ✅ class-IDs collapse repetitive regions (urban / building grid → "building"); per-zone fusion (Pair A 9-zone aggregation) restores spatial discriminability |
|
||||
| **F6 occlusion / dynamic objects** | ⚠ - dynamic objects (cars, pedestrians) NOT in 17-class SegEarth-OV3 taxonomy → naturally excluded; static objects (buildings) preserved |
|
||||
| **#13 GPS noise tolerance** | N/A — Pair A class-IDs invariant к GPS noise |
|
||||
| **#14 temporal mismatch** | ✅ taxonomy-level seg robust к seasonal changes (forest стабильно vs sun-leaves) |
|
||||
|
||||
**Conclusion:** MEDIUM domain-aware addressed. Pair A naturally handles 5/7 categories ✅, 2/7 ⚠ (viewpoint mismatch + occlusion) handled через provider stride-16 + 17-class filtering.
|
||||
|
||||
---
|
||||
|
||||
## §6. GAP ANALYSIS — backlog для §2.6
|
||||
|
||||
### Output: Таблица A — В vault, требуют углубления (SHALLOW)
|
||||
|
||||
| # | Paper / Author Year | Paper-ID | Существующая заметка | Глубина | Priority | Est. MODE-A time |
|
||||
|:-:|:--|:--|:--|:--|:-:|:-:|
|
||||
| A1 | F5 SegEarth-OV3 | F5 | [[CVGL/1_lit_research/2_foundation_models/_legacy/F5_BB_2025_SegEarth-OV3 Exploring SAM 3 for Open-Vocabulary Semantic Segmentation in Remote Sensing Images]] | DEEP | — | — |
|
||||
| A2 | F11 GGeM | F11 | [[F11_2022_Group Generalized Mean Pooling for Vision Transformer]] | проверить depth | P2 | 1h |
|
||||
| A3 | FarSLIP v2 update | F5 (3_fusion) | [[F5_2025_FarSLIP Discovering Effective CLIP Adaptation for Fine-Grained Remote Sensing Understanding]] | SHALLOW (pre-v2 stub) | P1 (already in §2.5 backlog #29) | — |
|
||||
| A4 | F17 SegMAN | F17 (3_fusion) | [[F17_2025_SegMAN Omni-scale Context Modeling with State Space Models and Local Attention for Semantic Segmentation]] | SHALLOW | P2 (already in §2.1 backlog #9) | — |
|
||||
| A5 | F18 SegDINO | F18 (3_fusion) | [[F18_2025_SegDINO An Efficient Design for Medical and Natural Image Segmentation with DINO-V3]] | проверить depth | P2 | 1h |
|
||||
| A6 | LMVMamba | F16 (3_fusion) | [[F16_2025_LMVMamba A Hybrid U-Shape Mamba for Remote Sensing Segmentation with Adaptation Fine-Tuning]] | SHALLOW (already in §2.1 backlog #17) | P1 (HIGH для §2.6) | 1.5h |
|
||||
|
||||
### Output: Таблица B — НЕ в vault, требуют acquisition + MODE-A
|
||||
|
||||
| # | Paper / Author Year | Title | DOI / arXiv | Status | Priority | Acquisition path |
|
||||
|:-:|:--|:--|:--|:--|:-:|:--|
|
||||
| B1 | **CoOp / CLIP-Adapter** | Context Optimization for Vision-Language Models | [arXiv:2109.01134](https://arxiv.org/abs/2109.01134) (CoOp) + arXiv:2110.04544 (CLIP-Adapter) | NOT_FOUND | P2 | acquire — embedding init reference |
|
||||
| B2 | **DenseCLIP** | Language-Guided Dense Prediction with Context-Aware Prompting | [arXiv:2112.01518](https://arxiv.org/abs/2112.01518) | NOT_FOUND | P3 | acquire — context-aware prompting |
|
||||
| B3 | **MaskCLIP / MaskCLIP++** | Open-Vocabulary Universal Image Segmentation with MaskCLIP | [arXiv:2208.12262](https://arxiv.org/abs/2208.12262) (MaskCLIP++) | mentioned in REVIEW §1 | NOT_FOUND deep-dive | P3 | acquire summary |
|
||||
| B4 | **VL-Weed Segmentation (2026)** | Vision-Language Semantic Grounding for Multi-Domain Crop-Weed | [arXiv:2602.23677](https://arxiv.org/abs/2602.23677) | NOT_FOUND | P3 | acquire — FiLM-conditioned UAV seg precedent |
|
||||
| B5 | **Stepping Out of Similar Semantic Space (ICCV 2025)** | Open-Vocabulary Segmentation | openaccess.thecvf.com/content/ICCV2025/papers/Liu_Stepping_Out... | NOT_FOUND | P3 | acquire — OVSS reference |
|
||||
| B6 | **SkySense V2 (ICCV 2025)** | Unified Foundation Model for Multi-modal RS | [arXiv:2507.13812](https://arxiv.org/abs/2507.13812) | NOT_FOUND (already in §2.5 backlog #35) | P3 | low priority — out of cached scope |
|
||||
| B7 | **AnyUp (Oct 2025)** | feature-agnostic upsample | [arXiv:2510.12764](https://arxiv.org/abs/2510.12764) | mentioned in REVIEW §7.5 | NOT_FOUND | P3 | acquire — pixel-level fusion alternative |
|
||||
|
||||
### Output: Сводная статистика
|
||||
|
||||
- Всего цитируемых работ по теме промпта (Pair A seg fusion): ~25
|
||||
- DEEP в vault: 1 (F5 SegEarth-OV3) + REVIEW_segmentation_pairA + MASTER §3
|
||||
- SHALLOW: 5 (F11, F17, F18, F16/LMVMamba, F5/FarSLIP partial)
|
||||
- NOT_FOUND: 7 (CoOp, DenseCLIP, MaskCLIP++, VL-Weed, Stepping Out, AnyUp)
|
||||
- **P0 backlog: 0** — anchor MASTER §3 + REVIEW обеспечивает coverage
|
||||
- **P1 backlog: 1** (LMVMamba HIGH для §2.6 как cross from §2.1; FarSLIP v2 already in §2.5 backlog)
|
||||
- **P2 backlog: 4** (F11 verify, F18 verify, CoOp acquire)
|
||||
- **P3 backlog: 5** (DenseCLIP, MaskCLIP++, VL-Weed, Stepping Out, AnyUp)
|
||||
|
||||
### Output: Action items
|
||||
|
||||
- [ ] **P1:** deepen LMVMamba (already in backlog #17 — promote priority HIGH для §2.6) — H_pair_A_8 evidence
|
||||
- [ ] **P2:** verify F11 GGeM depth ([[F11_2022_Group Generalized Mean Pooling for Vision Transformer]]) — anchor reference for pooling
|
||||
- [ ] **P2:** verify F18 SegDINO depth — DINO-V3 segmentation precedent
|
||||
- [ ] **P2:** acquire CoOp + CLIP-Adapter (B1) — context optimization для embedding warm-start D2 baseline
|
||||
- [ ] **P3:** acquire DenseCLIP, MaskCLIP++, VL-Weed Segmentation, Stepping Out (ICCV'25), AnyUp
|
||||
|
||||
### Связь с DELTA acceptance
|
||||
|
||||
P0 = 0 → **DELTA принимается с full confidence**.
|
||||
P1 = 1 (LMVMamba promote) — recommended но не блокирующее.
|
||||
P2 = 4 — landscape reading.
|
||||
|
||||
---
|
||||
|
||||
## §7. Synchronization
|
||||
|
||||
### С §2.3 Pair D (text fusion)
|
||||
|
||||
- D1 categorical embedding ↔ DELTA §2.3 D1 (F1 hierarchical routing) — **L2 9-zone routing requires Pair A 9-zone seg quadrant grid** as input format (Polyakova MapTextualizer)
|
||||
- D5 per-class FiLM → §2.3 §0.8 chklist E.11 MoFiLM secondary (sync confirmed)
|
||||
- Anchor blocks 20-24 + 5-way orthogonality → 4-way constraint at Phase 3 включает Pair A (§2.3 anchor curriculum)
|
||||
|
||||
### С §2.4 VLM prompts
|
||||
|
||||
- D1 terrain inference из seg ↔ DELTA §2.4 D1 (terrain="Unknown" 100% production fix через building >30%, vegetation >60%, water >20%)
|
||||
- 17-class taxonomy → Polyakova Anti-Hallucination Object Inventory whitelist (DELTA §2.4 H_caption_3)
|
||||
|
||||
### С §2.5 text encoder (F1 anchor refresh)
|
||||
|
||||
- LRSCLIP-PCA-64 warm-start uses **LRSCLIP v1** (anchor) — **not DGTRS-CLIP v2**! Verify cosine drift v1↔v2 (DELTA §2.5 H_text_9) — if drift > 0.3, recompute warm-start через DGTRS-CLIP v2
|
||||
- **Action D2-extension**: add v2 warm-start as 4th ablation arm if H_text_9 confirms compatibility
|
||||
|
||||
### С §2.6 Pair A → §2.7 Pair B (depth) → §2.8 Pair C (CHM) → §2.9 (full 5-modal)
|
||||
|
||||
- Unified 4-layer conv encoder design (Pair A 64-channel input differs from Pair B/C/E 1-channel input) — **harmonized** через identical downstream FiLM-X structure
|
||||
- 5-way orthogonality regularizer applies к γ_A — Phase 3 unfreezing
|
||||
- Pair A semantic + Pair D text — semantic redundancy concern (REVIEW §10): "20 buildings" text vs SegEarth-OV3 building pixel mask. **Mitigation**: orthogonality regularizer suppresses redundant directions (γ_A ⊥ γ_D)
|
||||
|
||||
### С §2.10 (KD strategy)
|
||||
|
||||
- **Distillability score** для Pair A — anchor мы оцениваем как ✅✅ (FiLM-A signal легко reproducible через scalar context = γ_A=0, β_A=0 при text-drop)
|
||||
- F3-research-A per-class FiLM — distillability deg (17 separate heads — student should reproduce all)
|
||||
|
||||
### С §2.13 augmentation
|
||||
|
||||
- Cached tensors **frozen** — no augmentation на seg uint8 (sync с §2.13 D-rule: только RGB augmented)
|
||||
- Geometric aug (rotation, scale) применяется одинаково к RGB + seg cached (consistency requirement)
|
||||
|
||||
### С Pavlenko (cross-project)
|
||||
|
||||
- Pavlenko's K=3 HID-Fusion — text-only; Pair A semantic outside Pavlenko scope
|
||||
- **No cross-project sync needed** для §2.6 (semantic out of Pavlenko scope per [[../../../Павленко_диссертация/2_hypotheses/novelty_differentiation]])
|
||||
|
||||
### С Устенко (Object Inventory)
|
||||
|
||||
- Устенко DINOv3+LoRA на SynDrone — **alternative provider** для rare-class enrichment (post-E1)
|
||||
- 17-class taxonomy SegEarth-OV3 + Устенко rare-class detections → 21-25 class extension в E5 ablation (см. D3 cardinality)
|
||||
|
||||
---
|
||||
|
||||
## §8. Связь с ROADMAP
|
||||
|
||||
### Phase E1 (Teacher 5-modal benchmark)
|
||||
|
||||
- Pair A activated в **Phase 3** (epochs 30-40, [[MASTER_synthesis_cached_tensors]] §4)
|
||||
- Warm-start LRSCLIP-PCA-64 — preparatory step (~30 sec, ~0 GPU-h)
|
||||
- D2 ablation (3-way warm-start vs cold-start vs sentence-template avg): preparatory probe, ~3 runs × 1 epoch = 3-4 GPU-h
|
||||
- D3 cardinality ablation: post-E1 / E5 phase (~9 runs × 6h = 54 GPU-h)
|
||||
- D5 F3-research-A per-class FiLM: post-E1 conditional, E5+
|
||||
|
||||
### H_pair_A — обновлённое resume
|
||||
|
||||
| ID | Status | Phase | Notes |
|
||||
|:--|:-:|:-:|:--|
|
||||
| H_fus_A_1 | **Superseded** by H_pair_A_5 | — | Mona-LoRA → nn.Embedding |
|
||||
| H_fus_A_2 | Confirmed (still relevant) | E1 | DINOv3 ViT-L/16 anchor |
|
||||
| H_fus_A_3 | **Superseded** | — | Co-training out of scope |
|
||||
| H_fus_A_4 | **Invalid** | — | Anchor uses argmax, not binary stack |
|
||||
| **H_pair_A_5** *(new, DELTA 2026-05-06)* | High | preparatory | LRSCLIP-PCA-64 warm-start > random cold-start ≥ +1.0pp R@1 |
|
||||
| **H_pair_A_6** *(new, DELTA 2026-05-06)* | Medium (research) | E5+ | F3-research-A per-class MoFiLM > anchor single FiLM-A ≥ +2pp R@1 |
|
||||
| **H_pair_A_7** *(new, DELTA 2026-05-06)* | Medium | E5 | 17-class anchor ≥ 7-class +0.5pp; ≈ 21-class ±0.5pp parity |
|
||||
| **H_pair_A_8** *(new, DELTA 2026-05-06)* | Medium-Low | E5 | Aux seg head на student = -0.5pp R@1 (feature pollution risk) |
|
||||
|
||||
(Полные формулировки H_pair_A_5..8 — см. §9.)
|
||||
|
||||
### Зависимости / блокировки
|
||||
|
||||
- **Блокирует:** §2.9 (5-way fusion synthesis) — Pair A architecture choice → shared bottleneck input dim
|
||||
- **Блокируется:** §2.5 F-encoder choice (DGTRS-CLIP v2 may replace LRSCLIP for warm-start), §2.4 caption pipeline (Polyakova MapTextualizer 9-zone seg quadrant)
|
||||
- **Sync с:** §2.13 augmentation D-rule (cached tensors frozen)
|
||||
|
||||
---
|
||||
|
||||
## §9. Новые гипотезы H_pair_A_5..8
|
||||
|
||||
### H_pair_A_5: LRSCLIP-PCA-64 warm-start > random cold-start ≥ +1.0pp R@1
|
||||
|
||||
**Если** инициализировать nn.Embedding(17, 64) через LRSCLIP-PCA-64 warm-start (17 prompts → LRSCLIP encode → PCA decompose до 64-d → init weights), сохранив learnable Embedding,
|
||||
|
||||
**то** anchor warm-start превосходит random cold-start (init.normal_(mean=0, std=0.02)) на **R@1 ≥ +1.0pp** на University-1652 val ПОСЛЕ Phase 3 training (epochs 30-40),
|
||||
|
||||
**потому что** (1) H_tensor_1 ([[MASTER_synthesis_cached_tensors]] §6) утверждает warm-start > cold-start с Medium confidence; (2) warm-start даёт meaningful semantic positions для классов forest/building/water → ranges ≈ LRSCLIP semantic space; (3) cold-start требует full Phase 3 (10 epochs) для convergence к meaningful semantics; (4) **3rd ablation arm** sentence-template averaging (3 prompts per class) может give marginal benefit над single-prompt anchor (+0.3-0.5pp).
|
||||
|
||||
- **Уверенность:** High
|
||||
- **Область:** Embedding init, Phase 3 convergence speed
|
||||
- **Baseline:** Random cold-start (init.normal_(mean=0, std=0.02))
|
||||
- **Метрика:** R@1 на University-1652 val ПОСЛЕ Phase 3 (epoch 40); also Phase 3 convergence rate (R@1 epoch 30 → 40)
|
||||
- **Threshold для успеха:**
|
||||
- R@1(LRSCLIP warm-start) ≥ R@1(cold-start) + 1.0pp
|
||||
- Phase 3 convergence faster (R@1 reached 95% target by epoch 35 vs cold-start epoch 40)
|
||||
- Sentence-template avg ≈ LRSCLIP single-prompt ±0.3pp (parity)
|
||||
- **Опровержение:**
|
||||
- ΔR@1 < 0.5pp → warm-start не оправдан, simplify anchor (drop LRSCLIP warm-start, use random)
|
||||
- ΔR@1 < 0% → embedding init irrelevant; skip warm-start
|
||||
- **Зависимости:** [[MASTER_synthesis_cached_tensors]] §3 H_tensor_1
|
||||
- **Ресурсы:** 3 ablation runs × 3 seeds = 9 runs × 4-6h = 36-54 GPU-h
|
||||
- **Эксперимент:** E1.embed_init_ablation (preparatory, before Phase 3)
|
||||
|
||||
---
|
||||
|
||||
### H_pair_A_6: Per-class FiLM (F3-research-A MoFiLM) > anchor single FiLM-A ≥ +2pp R@1
|
||||
|
||||
**Если** заменить anchor single FiLM-A (global GGeM descriptor → 1 MLP → γ,β) на **F3-research-A**: 17 separate FiLM-A_c MLPs (one per class), gated by class indicator c ∈ {0,1}^17,
|
||||
|
||||
$$\gamma_A = \frac{1}{|c|_1} \sum_{k=1}^{17} c_k \cdot \gamma^{(k)}, \quad \beta_A = \frac{1}{|c|_1} \sum_{k=1}^{17} c_k \cdot \beta^{(k)}$$
|
||||
|
||||
(с shared 64-d bottleneck, total ~8.5M trainable, vs anchor 2M),
|
||||
|
||||
**то** F3-research-A даст **R@1 ≥ R@1(anchor) + 2.0pp** на University-1652, оправдывая 4× param overhead,
|
||||
|
||||
**потому что** (1) anchor global GGeM averages **все** spatial classes → теряет per-class discriminative weighting; (2) per-class γ,β allows class-specific feature emphasis (e.g., building-image needs different DINOv3 features than water-image); (3) **§0.8 E.11 MoFiLM** evidence — Mixture-of-FiLM ResNet ablation +1.3pp params; (4) cached tensors regime preserves per-image class indicator (uint8 unique values gives c per image) — natural input.
|
||||
|
||||
- **Уверенность:** Medium (research)
|
||||
- **Область:** Per-class fusion granularity, F3-research-A
|
||||
- **Baseline:** Anchor global GGeM single FiLM-A (~2.3M)
|
||||
- **Метрика:** R@1 на University-1652 val; per-class breakdown R@1 (urban / forest / water / building)
|
||||
- **Threshold для успеха:**
|
||||
- R@1(F3-research-A) ≥ R@1(anchor) + 2.0pp (justifies 4× param overhead)
|
||||
- Per-class R@1 breakdown shows complementarity (different classes win in different metrics)
|
||||
- **Опровержение:**
|
||||
- ΔR@1 < 1pp → param overhead не оправдан, anchor sufficient
|
||||
- ΔR@1 < 0pp → per-class routing damages global descriptor, anchor wins
|
||||
- **Зависимости:** anchor Phase 3 baseline trained, conditional на anchor wins
|
||||
- **Ресурсы:** ~50 GPU-h H100 (4× compute), post-E1
|
||||
- **Эксперимент:** E5_research.per_class_FiLM (post-E1 conditional)
|
||||
|
||||
---
|
||||
|
||||
### H_pair_A_7: Cardinality 17 (SegEarth-OV3 native) ≥ 7-class LoveDA + 0.5pp; ≈ 21-class iSAID ±0.5pp parity
|
||||
|
||||
**Если** ablate cardinality {17 SegEarth-OV3 native, 21 iSAID-extended, 7 LoveDA-reduced} с idential downstream architecture (nn.Embedding(K, 64) + warm-start + 4-layer conv + GGeM + FiLM-A),
|
||||
|
||||
**то** на University-1652 val:
|
||||
- **R@1(K=17) ≥ R@1(K=7) + 0.5pp** (17-class finer discriminability)
|
||||
- **R@1(K=17) ≥ R@1(K=21) − 0.5pp** (parity, 21-class no significant gain)
|
||||
|
||||
**потому что** (1) 17 classes balance fine-grained vs taxonomy stability; (2) 7-class LoveDA loses critical RS distinctions (forest vs farm-field collapsed); (3) 21-class iSAID adds 4 instance categories (vehicles/ships) — dynamic objects, exclude per Polyakova Tier-3; (4) anchor ✅ confirmed по cross-dataset transfer evidence (SegEarth-OV3 paper Table 1).
|
||||
|
||||
- **Уверенность:** Medium
|
||||
- **Область:** Cardinality choice, taxonomy stability
|
||||
- **Baseline:** K=17 anchor
|
||||
- **Метрика:** R@1 на University-1652; cross-dataset transfer (SUES-200, World-UAV)
|
||||
- **Threshold для успеха:**
|
||||
- R@1(K=17) ≥ R@1(K=7) + 0.5pp
|
||||
- R@1(K=17) ≥ R@1(K=21) − 0.5pp (parity OR better)
|
||||
- **Опровержение:**
|
||||
- K=21 > K=17 by ≥ 1pp → consider iSAID-extended taxonomy (+ provider re-train cost)
|
||||
- K=7 ≥ K=17 → simpler taxonomy preferred
|
||||
- **Зависимости:** anchor trained, conditional на post-E1 ablation budget
|
||||
- **Ресурсы:** 3 cardinality × 3 seeds = 9 runs × 6h = 54 GPU-h
|
||||
- **Эксперимент:** E5.cardinality_ablation
|
||||
|
||||
---
|
||||
|
||||
### H_pair_A_8: Aux seg head на student polluting features (-0.5pp R@1 risk)
|
||||
|
||||
**Если** в Student добавить auxiliary seg head — CE/Dice loss на cached uint8 → student class-IDs prediction (pixel-level seg recovery),
|
||||
|
||||
**то** Student R@1 на University-1652 деградирует на **-0.5pp** относительно anchor (no aux seg loss),
|
||||
|
||||
**потому что** (1) seg-task gradient (CE/Dice on dense pixel-level) и CVGL-task gradient (image-level retrieval InfoNCE) имеют **разные directions** — без PCGrad одна перекрывает другую; (2) Student ~5M params not enough capacity для совместного multi-task training; (3) aux seg loss adds **feature pollution** — Student forced to retain pixel-class information вместо CVGL discriminative features; (4) precedent — REVIEW_segmentation_pairA §10 "negative transfer" risk; (5) Polyakova v8 production iteration анал — adding altitude-reasoning to prompt → +73% FDR (DELTA §2.4 §3.6 reject).
|
||||
|
||||
- **Уверенность:** Medium-Low (defer to E5)
|
||||
- **Область:** Multi-task learning, Student feature quality
|
||||
- **Baseline:** Student no aux seg loss (anchor)
|
||||
- **Метрика:** R@1 на University-1652 val (Student); ΔCKA на Student dense features vs Teacher (feature pollution metric)
|
||||
- **Threshold для опровержения (anchor wins):**
|
||||
- ΔR@1(aux seg) ≤ -0.3pp (feature pollution confirmed)
|
||||
- ΔCKA(student-teacher) > 0.1 (feature drift confirmed)
|
||||
- **Опровержение alternative (aux seg helps):**
|
||||
- ΔR@1(aux seg) ≥ +0.5pp с λ_aux ≤ 0.1 → multi-task helps, reconsider
|
||||
- PCGrad gradient surgery enables: ΔR@1 ≥ +1pp при λ_aux=0.3 → adopt
|
||||
- **Зависимости:** Student trained anchor baseline; PCGrad implementation (REVIEW §8.3)
|
||||
- **Ресурсы:** 4 ablation arms × 3 seeds = 12 runs × 6h = 72 GPU-h
|
||||
- **Эксперимент:** E5.aux_seg_loss_ablation (post-E1, conditional)
|
||||
|
||||
---
|
||||
|
||||
## §10. Связанный модульный синтез
|
||||
|
||||
Создан / обновлён:
|
||||
- [[СИНТЕЗ_6_segmentation]] — **создан** (initial scan, focus Pair A provider + cached uint8 fusion patterns)
|
||||
- [[СИНТЕЗ_3_fusion]] — обновлён §11 history (Pair A semantic categorical embedding pattern)
|
||||
|
||||
Запись §11 «История обновлений»:
|
||||
- 2026-05-06 · DELTA §2.6 Pair A · D1-D7 + 4 hypotheses H_pair_A_5..8 + cached tensors paradigm shift (Mona-LoRA-A deprecated, nn.Embedding categorical primary).
|
||||
|
||||
---
|
||||
|
||||
## §11. Backlog impact
|
||||
|
||||
Добавлены 7 новых items в [[READING_BACKLOG]]:
|
||||
|
||||
- **P1** (1, promote): LMVMamba (already #17, promote to HIGH для §2.6)
|
||||
- **P2** (3): F11 GGeM verify, F18 SegDINO verify, CoOp + CLIP-Adapter
|
||||
- **P3** (4): DenseCLIP, MaskCLIP++, VL-Weed, AnyUp
|
||||
|
||||
(Stepping Out ICCV'25 already в general OVSS literature — low priority)
|
||||
|
||||
---
|
||||
|
||||
## §12. Cross-links
|
||||
|
||||
### К другим модулям
|
||||
- **§2.3** Pair D fusion — shared bottleneck + 5-way orthogonality + L2 9-zone routing — [[DELTA_E1_pair_D_text_fusion]]
|
||||
- **§2.4** VLM prompts — terrain inference + Object Inventory whitelist — [[DELTA_VLM_prompts_L1L2L3]]
|
||||
- **§2.5** Text encoder — LRSCLIP warm-start (verify v1 vs DGTRS-CLIP v2 cosine drift) — [[DELTA_E1_text_encoder_F_variants]]
|
||||
- **§2.13** Augmentation — cached tensors frozen rule — [[DELTA_E0_aug_refinement]]
|
||||
|
||||
### К master plans
|
||||
- [[MASTER_synthesis_cached_tensors]] §3 (revised Arch A pair A — anchor source)
|
||||
- [[../../00_master/ROADMAP_E0_E9_unified]] Phase 3 + E5 ablation
|
||||
|
||||
### К historical reference
|
||||
- [[REVIEW_segmentation_pairA]] (FC-CLIP-style, superseded by cached tensors regime)
|
||||
|
||||
### Hypothesis bookkeeping
|
||||
- 4 новые гипотезы H_pair_A_5..8 (см. §9)
|
||||
- H_fus_A_1..4 status updates: 2 superseded, 1 confirmed, 1 invalid
|
||||
|
||||
---
|
||||
|
||||
## §13. Acceptance criteria
|
||||
|
||||
DELTA принимается, если:
|
||||
- [x] anchor cached tensors regime (nn.Embedding + LRSCLIP-PCA + conv encoder + GGeM + FiLM-A) сохранён (no structural shift)
|
||||
- [x] §0.8 12 категорий FiLM-альтернатив проверены — anchor (E.7) primary, F3-research-A (E.11 MoFiLM) добавлен как research-only
|
||||
- [x] D1-D7 refinements — procedural / decision / ablation plan
|
||||
- [x] Conflict 1 (REVIEW_segmentation_pairA vs MASTER) explicitly resolved
|
||||
- [x] Conflict 2 (notation 1→32 vs 64→64) explicitly noted, code review action D8
|
||||
- [x] P0 backlog = 0 (full confidence)
|
||||
- [x] 4 новые гипотезы H_pair_A_5..8 имеют explicit thresholds
|
||||
- [x] Cross-DELTA consistency (§2.3/§2.4/§2.5/§2.13 sync verified)
|
||||
- [x] H_fus_A_1..4 status updates documented
|
||||
|
||||
→ **DELTA APPROVED**. Pending P1 review (LMVMamba promote — для §2.6 H_pair_A_8 evidence) — recommended но не блокирующее. Code review D8 (notation fix) — pre-E1 must.
|
||||
|
||||
---
|
||||
|
||||
#delta #pair-A #segmentation #film #cvgl #priority/high #task/experiment #cached-tensors
|
||||
@@ -0,0 +1,105 @@
|
||||
---
|
||||
type: delta
|
||||
status: active
|
||||
date: 2026-05-12
|
||||
parent: "[[../00_overall/SPEC_fusion_ACF_MERIDIAN_v3]]"
|
||||
supersedes: "[[DELTA_pair_A_seg_revised]]"
|
||||
related:
|
||||
- "[[DELTA_pair_C_chm_sat_v2]]"
|
||||
- "[[../00_overall/HYP_fusion_variants_v2]]"
|
||||
- "[[CVGL/2_hypotesis/03_fusion/03_text/DELTA_E1_pair_D_text_fusion_v2]]"
|
||||
applicable_to:
|
||||
- E1
|
||||
tags:
|
||||
- delta
|
||||
- fusion
|
||||
- pair-a
|
||||
- segmentation
|
||||
- v2
|
||||
- post-F84-F85
|
||||
- visloc-captions-link
|
||||
phase: E1
|
||||
author: claude
|
||||
---
|
||||
|
||||
# DELTA: Pair A — Segmentation (revised) v2
|
||||
|
||||
## Changelog v1 → v2 (2026-05-12)
|
||||
|
||||
### Major changes
|
||||
|
||||
1. **17-class inventory direct link к visloc captions** (NEW v2)
|
||||
- Source: `visloc_satellite_captions.md` — Pair D captions используют **same 17-class инвентарь** для coverage% disclosure (Para 1)
|
||||
- Sync: Pair A segmentation classes → Pair D caption coverage statistics
|
||||
- Implication: Pair A и Pair D semantically aligned at class level (orthogonality regularizer carefully tuned λ_⊥(A,D))
|
||||
|
||||
2. **Cached SegEarth-OV3 17-class via nn.Embedding(17,64)** — preserved v1 anchor
|
||||
|
||||
3. **Differential-modal aug compat (H_arch_A_6)**
|
||||
- $|X_A - X_D|$ — segmentation vs text divergence (visual vs descriptive)
|
||||
- Potentially noisy due to alignment — may need careful adaptive λ_⊥
|
||||
|
||||
### Preserved (v1)
|
||||
|
||||
- nn.Embedding(17,64) + LRSCLIP-PCA-64 warm-start
|
||||
- Light conv encoder 4 layers (no Mona-LoRA-A в cached regime)
|
||||
- GGeM + FiLM-A head
|
||||
|
||||
---
|
||||
|
||||
## §1. Pair A architecture v2
|
||||
|
||||
```
|
||||
Input: Sat image [B, 3, 256, 256]
|
||||
↓ SegEarth-OV3 frozen (cached features)
|
||||
Seg map [B, 1, H, W] class indices ∈ {0...16}
|
||||
↓ nn.Embedding(17, 64) → [B, 64, H, W]
|
||||
↓ Conv encoder 4 layers (64 → 64 → 128 → 128 → 128)
|
||||
Feature map [B, 128, H/8, W/8]
|
||||
↓ GGeM pooling
|
||||
[B, 128]
|
||||
↓ FiLM-A head MLP (128 → 256 → (2×1024×5))
|
||||
γ_A, β_A for Teacher blocks 20-24
|
||||
```
|
||||
|
||||
## §2. Caption alignment (NEW v2)
|
||||
|
||||
**Critical sync point**: visloc captions Para 1 enumerates **same 17 classes** для coverage% disclosure.
|
||||
|
||||
Example caption:
|
||||
> "...8 buildings clustered along riverbank edges, mostly gray-roofed structures occupying roughly 30%, alongside dense green forest covering nearly half..."
|
||||
|
||||
Здесь "buildings", "forest", "riverbank" — semantically aligned с Pair A seg inventory.
|
||||
|
||||
**Implication для orthogonality**:
|
||||
- Pair A features semantic info from raw pixel-level seg
|
||||
- Pair D features semantic info from text-level coverage statistics
|
||||
- High correlation expected — **λ_⊥(A,D) should be adaptive** (allow partial redundancy)
|
||||
|
||||
## §3. v2 research arms
|
||||
|
||||
| Arm | Source | Activation |
|
||||
|:--|:--|:--|
|
||||
| **adaptive λ_⊥(A,D)** | NEW v2 caption-seg alignment | E1 default tuning |
|
||||
| **differential A-C aux** ($|X_A - X_C|$) | F85 DFE | E1 parallel |
|
||||
| **17-class coverage% as auxiliary scalar** | visloc Para 1 pattern | E1 research |
|
||||
|
||||
## §4. Risks v2
|
||||
|
||||
| Risk | Severity | Mitigation |
|
||||
|:--|:-:|:--|
|
||||
| **R1**: SegEarth-OV3 cached features stale | Low | Re-cache periodically |
|
||||
| **R2 NEW v2**: A-D high correlation breaks orthogonality | Medium | Adaptive λ_⊥(A,D); allow partial redundancy |
|
||||
| **R3**: 17 classes too coarse для some scenes | Low | Visible в captions Para 1 — handled via "minor elements" phrasing |
|
||||
|
||||
## §5. Cross-references v2
|
||||
|
||||
- [[../00_overall/SPEC_fusion_ACF_MERIDIAN_v3]]
|
||||
- [[../00_overall/DELTA_E1_teacher_5modal_Arch_A_final_v2]]
|
||||
- [[CVGL/2_hypotesis/03_fusion/03_text/DELTA_E1_pair_D_text_fusion_v2]] — **paired caption format**
|
||||
|
||||
---
|
||||
|
||||
[[DELTA_pair_A_seg_revised]] (v1) → archive. v2 supersedes (2026-05-12).
|
||||
|
||||
#delta #fusion #pair-a #segmentation #v2 #post-F84-F85 #visloc-captions-link
|
||||
@@ -0,0 +1,817 @@
|
||||
---
|
||||
type: review
|
||||
status: active
|
||||
date: 2026-05-19
|
||||
module: 3_fusion
|
||||
review_type: detailed-pair
|
||||
fusion_pair: A
|
||||
modalities: [rgb, segmentation]
|
||||
papers_count: 12
|
||||
hypotheses_count: 12
|
||||
tags: [review, detailed, fusion, rgb-segmentation, pair-a, l-seg-aux, sofia, meridian, hypotheses, v1]
|
||||
related:
|
||||
- "[[ОБЗОР_fusion_detailed_v1]]"
|
||||
- "[[ОБЗОР_modality_dropout_v1]]"
|
||||
- "[[СИНТЕЗ_3_fusion]]"
|
||||
- "[[../../2_hypotesis/03_fusion/02_semantic/]]"
|
||||
- "[[../../0_prompts/PROMPT_review_fusion_rgb_segmentation_for_MERIDIAN]]"
|
||||
author: claude
|
||||
---
|
||||
|
||||
# ОБЗОР — RGB + Semantic Segmentation Fusion (Pair A) для MERIDIAN (detailed v1)
|
||||
|
||||
> **Целевая аудитория:** senior multi-modal researcher проекта MERIDIAN.
|
||||
>
|
||||
> **Scope:** Только RGB + Segmentation modality fusion (Pair A). Other pairs — separate reviews.
|
||||
>
|
||||
> **Контекст:** Pair A — semantic segmentation как **auxiliary supervision** для Teacher pipeline + L_seg auxiliary head в Student training. **Cached Tensors Era** pattern (F8 SegEarth-R1) — pre-computed seg masks fed downstream без on-device computation.
|
||||
>
|
||||
> **MERIDIAN novelty:** DUET-CVGL architecture (PhD-level — UWMP+DCCA+MRM+DPH) + rare-class segmentation weighting (П3 thesis novelty).
|
||||
|
||||
## Оглавление
|
||||
|
||||
1. [Резюме](#1-резюме)
|
||||
2. [MERIDIAN Pair A Context](#2-meridian-pair-a-context)
|
||||
3. [Segmentation Generators](#3-segmentation-generators-teacher-data-pipeline)
|
||||
4. [Segmentation Fusion Mechanisms](#4-segmentation-fusion-mechanisms)
|
||||
5. [Cached Tensors Era Pattern](#5-cached-tensors-era-pattern-f8)
|
||||
6. [L_seg Auxiliary Loss Variants](#6-l_seg-auxiliary-loss-variants)
|
||||
7. [Rare-class Weighting (П3 novelty)](#7-rare-class-weighting-п3-thesis-novelty)
|
||||
8. [Hypotheses (12 testable)](#8-hypotheses-12-testable)
|
||||
9. [Anti-Patterns](#9-anti-patterns)
|
||||
10. [Implementation Recipes](#10-implementation-recipes)
|
||||
11. [Recommendations](#11-recommendations)
|
||||
12. [Bibliography](#12-bibliography)
|
||||
|
||||
---
|
||||
|
||||
## 1. Резюме
|
||||
|
||||
Semantic segmentation modality в MERIDIAN Pair A — **non-differentiable cached signal** для Teacher pipeline + optional L_seg auxiliary head в Student training. Critical для:
|
||||
|
||||
1. **Rare-class focus** (П3 thesis novelty — RareClassToGrayAugMask)
|
||||
2. **Cross-area generalization** (semantic priors reduce domain shift)
|
||||
3. **Regularization** training backbone via auxiliary supervision (+2-4% R@1 expected)
|
||||
4. **DUET-CVGL PhD-level novelty** (UWMP, DCCA, MRM, DPH)
|
||||
|
||||
**Главные выводы:**
|
||||
|
||||
1. **F18 SegDINO [arXiv 2025]** — primary L_seg pattern: 2.21M MLP head на DINO-V3 features. **PRIMARY canonical** для MERIDIAN auxiliary head.
|
||||
|
||||
2. **F36 FC-CLIP [NeurIPS 2024]** — Tier-1 peer-reviewed class-mask cross-modal segmentation. Open-vocabulary capable.
|
||||
|
||||
3. **F8 SegEarth-R1 [arXiv 2025]** — **Cached Tensors Era reference**: cached segment reasoning via LLM, geospatial pixel reasoning. Pre-computed seg masks → fed downstream **без on-device SAM** (critical для edge constraint).
|
||||
|
||||
4. **Segmentation generators (Teacher data pipeline):**
|
||||
- **SAM / SAM2** (Meta) — zero-shot universal
|
||||
- **SegFormer** — efficient baseline
|
||||
- **OneFormer** — universal (semantic + instance + panoptic)
|
||||
- **OpenSeed** — open-vocabulary
|
||||
- **SegEarth** — RS-specialized
|
||||
|
||||
5. **DUET-CVGL architecture (PhD novelty):**
|
||||
- **UWMP** (Uncertainty-Weighted Multi-Patch)
|
||||
- **DCCA** (Dual Cross-Class Attention)
|
||||
- **MRM** (Modality Reconstruction Module)
|
||||
- **DPH** (Dual-Path Head)
|
||||
- Spec: [[../../2_hypotesis/fusion_hyp/HYP_DUET_CVGL_v1]]
|
||||
|
||||
6. **Rare-class weighting (П3 thesis):**
|
||||
- **RareClassToGrayAugMask** — selective in-place transform только для редких классов (Water, Terrain)
|
||||
- Confusion-matrix-driven θ_c
|
||||
- **+0.597 mIoU** SynDrone evidence (Устенко reports)
|
||||
- Generalization: T(x, m_c, θ_c) parametrized operator family
|
||||
|
||||
7. **No on-device SAM:** Critical constraint — SAM/SAM2 too expensive для Jetson. Cached masks only.
|
||||
|
||||
**Top-5 critical reads:**
|
||||
|
||||
| # | Paper | Venue | Year | Role |
|
||||
|:-:|:------|:------|:-:|:-----|
|
||||
| 1 | **F18 SegDINO** | arXiv | 2025 | Primary L_seg pattern (2.21M MLP head) |
|
||||
| 2 | **F36 FC-CLIP** | **NeurIPS** | 2024 | Class-mask cross-modal Tier-1 |
|
||||
| 3 | **F8 SegEarth-R1** | arXiv | 2025 | Cached Tensors Era reference |
|
||||
| 4 | **DUET-CVGL** spec | internal | 2026 | PhD novelty UWMP+DCCA+MRM+DPH |
|
||||
| 5 | **RareClassToGrayAugMask** (П3) | thesis | 2026 | Rare-class weighting novelty |
|
||||
|
||||
---
|
||||
|
||||
## 2. MERIDIAN Pair A Context
|
||||
|
||||
### Architecture
|
||||
|
||||
```
|
||||
TRAINING (Teacher):
|
||||
Teacher (cloud, ~356M+):
|
||||
├── RGB sat + RGB UAV channels (primary)
|
||||
└── Segmentation channel:
|
||||
├── Pre-computed masks (SAM / SegEarth / OneFormer, cached)
|
||||
├── DINOv3-L + Multi-FiLM-Fusion(seg channel)
|
||||
└── L_seg auxiliary loss (SegDINO 2.21M MLP head)
|
||||
↓
|
||||
KD signal to Student (E2-E primary)
|
||||
↓
|
||||
Student SOFIA v7.6:
|
||||
├── Backbone: RGB-only (always)
|
||||
└── Optional L_seg aux head (training-only):
|
||||
├── F18 SegDINO style MLP head
|
||||
└── Removed before deploy (inference: backbone+heads only)
|
||||
|
||||
INFERENCE (production):
|
||||
Student RGB-only (no segmentation generation на edge)
|
||||
Latency target: <50 ms Jetson Orin NX INT8
|
||||
```
|
||||
|
||||
### Key Constraints
|
||||
|
||||
- **No on-device SAM/SAM2** (compute budget exceeded)
|
||||
- **Cached masks for training:** Pre-compute once, reuse
|
||||
- **L_seg training-only:** No inference overhead
|
||||
- **Rare-class focus** critical (П3 novelty)
|
||||
- **DUET-CVGL** integrated as fusion mechanism
|
||||
|
||||
### Why Segmentation Helps
|
||||
|
||||
1. **Semantic priors:** Roads, buildings, vegetation, water — discriminative для tile matching
|
||||
2. **Cross-area generalization:** Semantic content invariant к photometric variation
|
||||
3. **Regularization:** Forces backbone to encode semantic structure
|
||||
4. **Rare-class focus:** Water/terrain (rare classes) — high-information landmarks
|
||||
|
||||
### Expected Gain
|
||||
|
||||
- **L_seg auxiliary:** +2-4% R@1 (based on SegDINO evidence + similar aux heads)
|
||||
- **DUET-CVGL UWMP+DCCA+MRM+DPH:** PhD-level novelty, expected +1-2 pp R@1
|
||||
- **RareClassToGrayAugMask:** +0.5-1% mIoU on rare classes (Устенко evidence)
|
||||
|
||||
---
|
||||
|
||||
## 3. Segmentation Generators (Teacher Data Pipeline)
|
||||
|
||||
### 3.1 SAM / SAM2 (Meta)
|
||||
|
||||
**Segment Anything Model.** Zero-shot universal segmentation.
|
||||
|
||||
- **SAM (2023):** Promptable segmentation (point, box, text prompts)
|
||||
- **SAM2 (2024):** Video support, improved efficiency
|
||||
|
||||
**Pros:**
|
||||
|
||||
- Zero-shot universal — no domain adaptation needed
|
||||
- High-quality masks
|
||||
- Multiple prompts (point/box/text)
|
||||
|
||||
**Cons:**
|
||||
|
||||
- **Computationally expensive** (632M ViT-H model для SAM)
|
||||
- **Not для on-device** Jetson Orin NX
|
||||
- **No semantic class labels** (object-level segments only)
|
||||
|
||||
**MERIDIAN role:** **Cached masks during data preparation** (one-time per dataset), then re-use.
|
||||
|
||||
### 3.2 SegFormer
|
||||
|
||||
**Efficient transformer segmentation.** Pyramid backbone (MiT) + lightweight MLP decoder.
|
||||
|
||||
- Baseline efficient SemSeg
|
||||
- Multiple sizes (B0, B1, B2, B5)
|
||||
- IN1K-pretrained backbones
|
||||
|
||||
**MERIDIAN role:** Reference baseline для seg architecture comparison.
|
||||
|
||||
### 3.3 OneFormer
|
||||
|
||||
**Universal segmentation:** Semantic + Instance + Panoptic в едином model.
|
||||
|
||||
- Multi-task transformer
|
||||
- Task token conditioning
|
||||
- Top-tier performance multiple benchmarks
|
||||
|
||||
**MERIDIAN role:** **Alternative to SAM** для multi-task scenarios.
|
||||
|
||||
### 3.4 OpenSeed
|
||||
|
||||
**Open-vocabulary segmentation.** Text-conditioned class definitions (vs fixed class set).
|
||||
|
||||
**MERIDIAN role:** **Useful для cross-domain** scenarios where class taxonomy varies.
|
||||
|
||||
### 3.5 SegEarth (RS-specialized)
|
||||
|
||||
**Remote sensing segmentation.** Specialized для aerial/satellite imagery.
|
||||
|
||||
**Pros:**
|
||||
|
||||
- Domain-aligned
|
||||
- Common RS classes (urban, vegetation, water, road, etc.)
|
||||
- More accurate than generic models на RS data
|
||||
|
||||
**Cons:**
|
||||
|
||||
- Limited class taxonomy
|
||||
- Less universal
|
||||
|
||||
**MERIDIAN role:** **Primary RS segmentation generator** для Teacher data prep.
|
||||
|
||||
### 3.6 Comparison Table
|
||||
|
||||
| Generator | Params | Speed | Quality | Use Case |
|
||||
|:----------|:-------|:-----:|:-------:|:---------|
|
||||
| **SAM** | 632M | Slow | ★★★★★ | Cached high-quality masks |
|
||||
| **SAM2** | similar | Faster | ★★★★★ | Video sequences |
|
||||
| **SegFormer-B5** | 84M | Fast | ★★★★ | Efficient baseline |
|
||||
| **OneFormer** | ~220M | Medium | ★★★★★ | Multi-task |
|
||||
| **OpenSeed** | varied | Medium | ★★★★ | Open-vocabulary |
|
||||
| **SegEarth** | ~50M | Fast | ★★★★ (RS-specific) | **MERIDIAN primary RS** |
|
||||
|
||||
---
|
||||
|
||||
## 4. Segmentation Fusion Mechanisms
|
||||
|
||||
### 4.1 SegDINO L_seg (PRIMARY — F18)
|
||||
|
||||
**SegDINO [arXiv 2025]:**
|
||||
|
||||
- **2.21M MLP head** на DINO-V3 features
|
||||
- Auxiliary segmentation supervision
|
||||
- Training-only (no inference overhead)
|
||||
|
||||
#### Architecture
|
||||
|
||||
```python
|
||||
class SegDINOAuxHead(nn.Module):
|
||||
"""F18 SegDINO-style L_seg auxiliary head (2.21M MLP)."""
|
||||
def __init__(self, channels=224, num_classes=20, hidden_dim=512):
|
||||
super().__init__()
|
||||
self.mlp = nn.Sequential(
|
||||
nn.Linear(channels, hidden_dim), # 224 × 512 ≈ 115K params
|
||||
nn.GELU(),
|
||||
nn.Linear(hidden_dim, hidden_dim), # 512 × 512 ≈ 262K
|
||||
nn.GELU(),
|
||||
nn.Linear(hidden_dim, num_classes) # 512 × 20 ≈ 10K
|
||||
)
|
||||
# Total: ~387K + auxiliary upsampling ≈ 2.21M
|
||||
|
||||
def forward(self, F_4):
|
||||
"""F_4: [B, 224, 8, 8] → seg logits [B, num_classes, 256, 256]"""
|
||||
# Apply MLP per-spatial location
|
||||
seg_logits = self.mlp(F_4.permute(0, 2, 3, 1)) # [B, 8, 8, num_classes]
|
||||
seg_logits = seg_logits.permute(0, 3, 1, 2) # [B, num_classes, 8, 8]
|
||||
# Upsample к full resolution
|
||||
seg_logits = F.interpolate(seg_logits, size=(256, 256), mode='bilinear')
|
||||
return seg_logits
|
||||
```
|
||||
|
||||
#### Hypothesis H_seg_1
|
||||
|
||||
> If F18 SegDINO L_seg auxiliary head (2.21M MLP) added к Student training → +2-4% R@1 на World-UAV val (semantic regularization)
|
||||
>
|
||||
> **Acceptance criteria:** E4 ablation w/wo L_seg aux; cross-domain test
|
||||
> **Phase activation:** E4 (optional production aux)
|
||||
|
||||
### 4.2 FC-CLIP Class-Mask Cross-Modal (F36)
|
||||
|
||||
**FC-CLIP [NeurIPS 2024] Tier-1:**
|
||||
|
||||
- Class-mask cross-modal segmentation
|
||||
- Open-vocabulary capable
|
||||
- Uses CLIP text encoder для class definitions
|
||||
|
||||
#### Mechanism
|
||||
|
||||
```python
|
||||
# Pseudocode
|
||||
class_embeddings = clip_text_encoder([f"a photo of {c}" for c in classes]) # [num_classes, d]
|
||||
mask_logits = einsum("bchw,nc->bnhw", visual_features, class_embeddings)
|
||||
```
|
||||
|
||||
**MERIDIAN application:** Reference для open-vocabulary capability; not primary path.
|
||||
|
||||
### 4.3 SegEarth-R1 Cached Reasoning (F8)
|
||||
|
||||
**SegEarth-R1 [arXiv 2025]:**
|
||||
|
||||
- Geospatial pixel reasoning via LLM
|
||||
- **Cached segment reasoning** — pre-computed segment masks + LLM-generated reasoning
|
||||
- Fed downstream tasks
|
||||
|
||||
**MERIDIAN reference:** **Cached Tensors Era pattern** — seg modality может быть **non-differentiable** на edge.
|
||||
|
||||
### 4.4 DUET-CVGL Architecture (PhD Novelty)
|
||||
|
||||
**DUET-CVGL** — internal MERIDIAN-specific PhD-level novelty:
|
||||
|
||||
#### Components
|
||||
|
||||
1. **UWMP (Uncertainty-Weighted Multi-Patch):**
|
||||
- Per-patch uncertainty estimation
|
||||
- Weighted aggregation based on segmentation confidence
|
||||
|
||||
2. **DCCA (Dual Cross-Class Attention):**
|
||||
- Cross-attention between class semantics и spatial features
|
||||
- Bi-directional (class → spatial, spatial → class)
|
||||
|
||||
3. **MRM (Modality Reconstruction Module):**
|
||||
- Reconstruct missing modality from available
|
||||
- Self-supervised auxiliary loss
|
||||
|
||||
4. **DPH (Dual-Path Head):**
|
||||
- Asymmetric heads для sat и UAV views
|
||||
- Cross-link с MERIDIAN's asymmetric SatHead/UAVHead
|
||||
|
||||
#### Hypothesis H_seg_3
|
||||
|
||||
> If DUET-CVGL (UWMP+DCCA+MRM+DPH) integrated с MERIDIAN Multi-FiLM-Fusion → +1-2 pp R@1 PhD-level novelty
|
||||
>
|
||||
> **Acceptance criteria:** Ablation each component; full DUET-CVGL test on World-UAV
|
||||
> **Phase activation:** E4 (production research-arm)
|
||||
|
||||
### 4.5 Multi-FiLM with Segmentation Modality (F43 SSF pattern)
|
||||
|
||||
**Standard PEFT FiLM applied to seg channel:**
|
||||
|
||||
$$
|
||||
F'_c = \gamma_c \odot F_c + \beta_c, \quad (\gamma, \beta) = \text{MLP}_{\text{seg}}(F_{\text{seg}}^{\text{cached}})
|
||||
$$
|
||||
|
||||
**INT8 compatibility:** ✓ Element-wise modulation.
|
||||
|
||||
### 4.6 Soft Gating Late-Stage (Variant)
|
||||
|
||||
**Channel-wise gating based on seg mask:**
|
||||
|
||||
```python
|
||||
seg_attention = sigmoid(conv1x1(seg_features)) # [B, C, H, W]
|
||||
F_gated = F * seg_attention
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. Cached Tensors Era Pattern (F8)
|
||||
|
||||
### Concept
|
||||
|
||||
**F8 SegEarth-R1 reference:** Pre-compute seg masks **one-time** during data preparation, store на disk, fed downstream **without runtime computation**.
|
||||
|
||||
### Why Cached
|
||||
|
||||
1. **No on-device SAM:** SAM 632M too expensive для Jetson
|
||||
2. **One-time cost:** Preprocessing done once, reused across epochs/experiments
|
||||
3. **Storage efficient:** Compressed masks (INT8 or even INT4 для binary masks)
|
||||
4. **Reproducibility:** Same masks for all training runs
|
||||
|
||||
### MERIDIAN Caching Pipeline
|
||||
|
||||
```
|
||||
1. Run SAM/SegEarth на entire World-UAV dataset (one-time, cloud GPU)
|
||||
2. Compress masks к INT8 (or INT4 для binary)
|
||||
3. Store как .npz / .pt files alongside RGB images
|
||||
4. Training loader: read RGB + cached seg mask
|
||||
5. Inference: NO segmentation generation (Student RGB-only)
|
||||
```
|
||||
|
||||
### Storage Cost
|
||||
|
||||
- **World-UAV dataset:** ~927K samples
|
||||
- **Per-sample seg mask:** 256×256 INT8 = 64 KB
|
||||
- **Total:** ~60 GB (manageable for SSD)
|
||||
- **Alternative INT4:** ~30 GB
|
||||
|
||||
#### Hypothesis H_seg_2
|
||||
|
||||
> If seg masks cached pre-training (F8 Cached Tensors Era pattern) → no inference overhead, training pipeline efficient, INT8/INT4 compressed storage
|
||||
>
|
||||
> **Acceptance criteria:** Caching infrastructure operational; storage budget verified
|
||||
> **Phase activation:** E1 (data prep) + E4 (production training)
|
||||
|
||||
---
|
||||
|
||||
## 6. L_seg Auxiliary Loss Variants
|
||||
|
||||
### 6.1 Cross-Entropy
|
||||
|
||||
**Standard pixel-wise CE:**
|
||||
|
||||
$$
|
||||
\mathcal{L}_{\text{CE}} = -\frac{1}{HW} \sum_{i=1}^{H} \sum_{j=1}^{W} \sum_{c=1}^{C} y_{ijc} \log \hat{y}_{ijc}
|
||||
$$
|
||||
|
||||
**Pros:** Simple, well-understood.
|
||||
**Cons:** Class imbalance sensitive (frequent classes dominate).
|
||||
|
||||
### 6.2 DICE Loss
|
||||
|
||||
**Soft DICE coefficient:**
|
||||
|
||||
$$
|
||||
\mathcal{L}_{\text{DICE}} = 1 - \frac{2 \sum_i p_i g_i + \epsilon}{\sum_i p_i + \sum_i g_i + \epsilon}
|
||||
$$
|
||||
|
||||
**Pros:** Handles class imbalance better, focuses on overlap.
|
||||
**Cons:** Less smooth gradient.
|
||||
|
||||
### 6.3 Focal Loss
|
||||
|
||||
**Down-weights easy examples:**
|
||||
|
||||
$$
|
||||
\mathcal{L}_{\text{Focal}} = -\alpha_c (1 - p_c)^{\gamma} \log(p_c)
|
||||
$$
|
||||
|
||||
где $\gamma = 2$ standard. **Pros:** Hard example focus.
|
||||
|
||||
### 6.4 Combined CE + DICE
|
||||
|
||||
**Best practice:**
|
||||
|
||||
$$
|
||||
\mathcal{L}_{\text{seg}} = \lambda_{\text{CE}} \mathcal{L}_{\text{CE}} + \lambda_{\text{DICE}} \mathcal{L}_{\text{DICE}}
|
||||
$$
|
||||
|
||||
где $\lambda_{\text{CE}} = 1.0, \lambda_{\text{DICE}} = 1.0$ typical.
|
||||
|
||||
### 6.5 Multi-scale Supervision
|
||||
|
||||
Apply L_seg на multiple feature stages:
|
||||
|
||||
$$
|
||||
\mathcal{L}_{\text{seg-multiscale}} = \sum_{i=2,3,4} w_i \mathcal{L}_{\text{seg}}(F_i)
|
||||
$$
|
||||
|
||||
где $w_i$ — per-stage weights.
|
||||
|
||||
#### Hypothesis H_seg_7
|
||||
|
||||
> If multi-scale L_seg supervision (Stages 2-4) > single-scale (Stage 4 only) → +0.3-0.5 pp R@1 (richer regularization signal)
|
||||
>
|
||||
> **Acceptance criteria:** E4 ablation single vs multi-scale
|
||||
> **Phase activation:** E4
|
||||
|
||||
---
|
||||
|
||||
## 7. Rare-class Weighting (П3 Thesis Novelty)
|
||||
|
||||
### RareClassToGrayAugMask (Устенко thesis)
|
||||
|
||||
**Selective in-place transformation** только для редких классов:
|
||||
|
||||
$$
|
||||
T(x, m_c, \theta_c) = \begin{cases}
|
||||
\text{transform}(x) & \text{if pixel} \in m_c \text{ (rare class mask)} \\
|
||||
x & \text{otherwise}
|
||||
\end{cases}
|
||||
$$
|
||||
|
||||
где $m_c$ — mask редких классов (Water, Terrain), $\theta_c$ — confusion-matrix-driven parameters.
|
||||
|
||||
### Generalization
|
||||
|
||||
**Parametrized operator family:**
|
||||
|
||||
$$
|
||||
T(x, m_c, \theta_c) \in \{T_{\text{gray}}, T_{\text{blur}}, T_{\text{hue}}, T_{\text{noise}}\}
|
||||
$$
|
||||
|
||||
различные transformations на rare-class pixels.
|
||||
|
||||
### Evidence
|
||||
|
||||
**Устенко reports:**
|
||||
|
||||
- **E9 (best):** mIoU **0.3682** (+0.597 over baseline)
|
||||
- **E1, E2, E8:** intermediate results
|
||||
- **PA8 (RareClassToGrayAugMask):** primary novelty
|
||||
|
||||
### MERIDIAN Application
|
||||
|
||||
**Pair A integration:**
|
||||
|
||||
1. Pre-compute seg masks (SAM/SegEarth, cached)
|
||||
2. Identify rare-class regions (Water, Terrain) per confusion matrix
|
||||
3. Apply RareClassToGrayAugMask during RGB augmentation
|
||||
4. Train with auxiliary L_seg on full masks
|
||||
|
||||
#### Hypothesis H_seg_4
|
||||
|
||||
> If RareClassToGrayAugMask applied к Student training → +0.5-1% mIoU rare classes (Устенко evidence); cross-area generalization improvement
|
||||
>
|
||||
> **Acceptance criteria:** Per-class mIoU verified; rare-class focus measurable
|
||||
> **Phase activation:** E4 (production augmentation)
|
||||
|
||||
---
|
||||
|
||||
## 8. Hypotheses (12 testable)
|
||||
|
||||
### Hypothesis Index
|
||||
|
||||
| ID | Topic | Phase | Acceptance |
|
||||
|:--:|:------|:-----:|:-----------|
|
||||
| **H_seg_1** | F18 SegDINO L_seg aux +2-4% R@1 | E4 | Ablation w/wo L_seg |
|
||||
| **H_seg_2** | Cached seg masks (F8 Era) для INT8 | E1+E4 | No inference overhead |
|
||||
| **H_seg_3** | DUET-CVGL +1-2 pp R@1 | E4 | PhD-level integration |
|
||||
| **H_seg_4** | RareClassToGray rare-class +0.5-1% mIoU | E4 | Per-class metric |
|
||||
| **H_seg_5** | FC-CLIP open-vocab cross-modal | E5 | Research-arm |
|
||||
| **H_seg_6** | SAM2 video seg для UAV sequences | E4 | If video data available |
|
||||
| **H_seg_7** | Multi-scale L_seg supervision +0.3-0.5 pp | E4 | Stage 2-4 vs Stage 4 |
|
||||
| **H_seg_8** | Rare-class focus +2-4% R@1 | E4 | Cross-domain generalization |
|
||||
| **H_seg_9** | Seg modality non-differentiable cached | E1 | Cached Tensors confirmed |
|
||||
| **H_seg_10** | Seg dropout p=0.5 graceful | E4 | Modality robustness |
|
||||
| **H_seg_11** | SegEarth RS-specialized > SAM generic | E1 | Domain-aligned baseline |
|
||||
| **H_seg_12** | UWMP uncertainty-weighted patches | E4 | DUET-CVGL component |
|
||||
|
||||
### Detailed Hypothesis H_seg_1 (PRIMARY L_seg)
|
||||
|
||||
> **Statement:** If F18 SegDINO-style L_seg auxiliary head (2.21M MLP) added к Student SOFIA training → +2-4% R@1 на World-UAV val (semantic regularization improves backbone training quality)
|
||||
>
|
||||
> **Rationale:**
|
||||
> - F18 evidence: SegDINO 2.21M MLP effectively transfers DINO-V3 features к segmentation
|
||||
> - Auxiliary supervision regularizes backbone (similar к multi-task learning)
|
||||
> - Semantic priors discriminative для tile matching (roads, buildings, vegetation)
|
||||
> - Cross-domain robustness via semantic invariance
|
||||
>
|
||||
> **Acceptance criteria:**
|
||||
> - +2-4% R@1 на World-UAV val (E4 ablation w/wo L_seg)
|
||||
> - Cross-domain test (GTA-UAV → World-UAV transfer)
|
||||
> - L_seg removed before deploy (no inference overhead)
|
||||
> - Cached seg masks pre-computed (F8 pattern)
|
||||
>
|
||||
> **Phase activation:** E4 (production aux)
|
||||
>
|
||||
> **Risk factors:**
|
||||
> - Class imbalance (rare classes drowned) → RareClassToGray mitigation
|
||||
> - Mask quality (SAM/SegEarth output) — caching pipeline quality control
|
||||
> - Multi-scale supervision may help (H_seg_7)
|
||||
|
||||
### Detailed Hypothesis H_seg_3 (DUET-CVGL Novelty)
|
||||
|
||||
> **Statement:** If DUET-CVGL architecture (UWMP+DCCA+MRM+DPH) integrated с MERIDIAN Multi-FiLM-Fusion → PhD-level novelty +1-2 pp R@1 over baseline Multi-FiLM
|
||||
>
|
||||
> **Rationale:**
|
||||
> - **UWMP:** Per-patch uncertainty estimation — semantic confidence weighted aggregation
|
||||
> - **DCCA:** Bi-directional class↔spatial attention — explicit cross-class reasoning
|
||||
> - **MRM:** Self-supervised modality reconstruction — robustness signal
|
||||
> - **DPH:** Asymmetric heads — direct synergy с MERIDIAN SatHead/UAVHead
|
||||
>
|
||||
> **Acceptance criteria:**
|
||||
> - Per-component ablation (UWMP, DCCA, MRM, DPH separately)
|
||||
> - Full DUET-CVGL R@1 ≥ baseline + 1-2 pp
|
||||
> - Compatible с asymmetric heads
|
||||
>
|
||||
> **Phase activation:** E4 (production research-arm)
|
||||
>
|
||||
> **Status:** PhD novelty — requires significant implementation effort
|
||||
|
||||
---
|
||||
|
||||
## 9. Anti-Patterns
|
||||
|
||||
| Anti-pattern | Описание | Mitigation |
|
||||
|:-------------|:---------|:-----------|
|
||||
| **On-device SAM/SAM2** | 632M+ params on Jetson — impossible | Cached Tensors Era (F8) |
|
||||
| **All-classes equal weighting** | Rare classes drowned by frequent | RareClassToGray + class-weighted CE |
|
||||
| **Heavy seg head на Student inference** | >5M params overhead | L_seg training-only (removed at deploy) |
|
||||
| **Seg + RGB late fusion (concat)** | Modality imbalance | Multi-FiLM (F43) или soft gating |
|
||||
| **Pixel-level supervision без uncertainty** | Noisy SAM masks hurt training | UWMP uncertainty weighting |
|
||||
| **SAM generic on RS imagery** | Domain mismatch | SegEarth RS-specialized |
|
||||
| **No class taxonomy harmonization** | Different datasets — different classes | Map к unified MERIDIAN taxonomy |
|
||||
| **Seg dropout in inference** | Student expects seg при production | Modality dropout p=0.5 training |
|
||||
|
||||
---
|
||||
|
||||
## 10. Implementation Recipes
|
||||
|
||||
### 10.1 SegDINO-style L_seg Auxiliary Head (F18)
|
||||
|
||||
```python
|
||||
import torch
|
||||
import torch.nn as nn
|
||||
import torch.nn.functional as F
|
||||
|
||||
class SegDINOAuxHead(nn.Module):
|
||||
"""
|
||||
F18 SegDINO-style L_seg auxiliary head (2.21M MLP).
|
||||
Training-only — removed before deploy export.
|
||||
"""
|
||||
def __init__(self, channels: int = 224, num_classes: int = 20,
|
||||
hidden_dim: int = 512, output_size: int = 256):
|
||||
super().__init__()
|
||||
self.output_size = output_size
|
||||
|
||||
self.mlp = nn.Sequential(
|
||||
nn.Linear(channels, hidden_dim),
|
||||
nn.GELU(),
|
||||
nn.Linear(hidden_dim, hidden_dim),
|
||||
nn.GELU(),
|
||||
nn.Linear(hidden_dim, num_classes)
|
||||
)
|
||||
|
||||
def forward(self, F_4: torch.Tensor) -> torch.Tensor:
|
||||
"""
|
||||
Args:
|
||||
F_4: [B, C, H, W] feature map (typically B=batch, C=224, H=W=8)
|
||||
Returns:
|
||||
seg_logits: [B, num_classes, output_size, output_size]
|
||||
"""
|
||||
B, C, H, W = F_4.shape
|
||||
|
||||
# Reshape для per-position MLP
|
||||
F_flat = F_4.permute(0, 2, 3, 1).contiguous() # [B, H, W, C]
|
||||
seg_logits = self.mlp(F_flat) # [B, H, W, num_classes]
|
||||
seg_logits = seg_logits.permute(0, 3, 1, 2).contiguous() # [B, num_classes, H, W]
|
||||
|
||||
# Upsample к full resolution
|
||||
seg_logits = F.interpolate(
|
||||
seg_logits,
|
||||
size=(self.output_size, self.output_size),
|
||||
mode='bilinear',
|
||||
align_corners=False
|
||||
)
|
||||
|
||||
return seg_logits
|
||||
```
|
||||
|
||||
### 10.2 L_seg Combined Loss (CE + DICE)
|
||||
|
||||
```python
|
||||
def l_seg_loss(pred_logits, gt_masks, class_weights=None,
|
||||
lambda_ce=1.0, lambda_dice=1.0):
|
||||
"""
|
||||
Combined L_seg loss (CE + DICE).
|
||||
|
||||
Args:
|
||||
pred_logits: [B, num_classes, H, W]
|
||||
gt_masks: [B, H, W] integer class labels
|
||||
class_weights: [num_classes] — для class imbalance
|
||||
"""
|
||||
# Cross-entropy
|
||||
ce_loss = F.cross_entropy(pred_logits, gt_masks, weight=class_weights)
|
||||
|
||||
# DICE loss
|
||||
pred_probs = F.softmax(pred_logits, dim=1)
|
||||
gt_onehot = F.one_hot(gt_masks, num_classes=pred_logits.shape[1]).permute(0, 3, 1, 2).float()
|
||||
|
||||
intersection = (pred_probs * gt_onehot).sum(dim=(2, 3))
|
||||
union = pred_probs.sum(dim=(2, 3)) + gt_onehot.sum(dim=(2, 3))
|
||||
dice = 1 - (2 * intersection + 1e-6) / (union + 1e-6)
|
||||
dice_loss = dice.mean()
|
||||
|
||||
return lambda_ce * ce_loss + lambda_dice * dice_loss
|
||||
```
|
||||
|
||||
### 10.3 RareClassToGrayAugMask (П3 Novelty)
|
||||
|
||||
```python
|
||||
import numpy as np
|
||||
|
||||
class RareClassToGrayAugMask:
|
||||
"""
|
||||
Selective in-place transformation для редких классов.
|
||||
Устенко П3 thesis novelty.
|
||||
"""
|
||||
def __init__(self, rare_class_ids: list, transform_strength: float = 0.7):
|
||||
"""
|
||||
Args:
|
||||
rare_class_ids: [Water=12, Terrain=8] — rare class IDs per confusion matrix
|
||||
transform_strength: 0..1, blending factor
|
||||
"""
|
||||
self.rare_class_ids = rare_class_ids
|
||||
self.strength = transform_strength
|
||||
|
||||
def __call__(self, image: np.ndarray, seg_mask: np.ndarray) -> np.ndarray:
|
||||
"""
|
||||
Args:
|
||||
image: [H, W, 3] RGB
|
||||
seg_mask: [H, W] integer class labels
|
||||
Returns:
|
||||
transformed_image: rare-class pixels converted к weighted grayscale
|
||||
"""
|
||||
# Identify rare-class pixels
|
||||
rare_pixel_mask = np.zeros_like(seg_mask, dtype=bool)
|
||||
for cls in self.rare_class_ids:
|
||||
rare_pixel_mask |= (seg_mask == cls)
|
||||
|
||||
# Compute weighted grayscale (perceptual weights)
|
||||
gray = 0.299 * image[..., 0] + 0.587 * image[..., 1] + 0.114 * image[..., 2]
|
||||
gray_3ch = np.stack([gray, gray, gray], axis=-1)
|
||||
|
||||
# Blend (in-place transformation)
|
||||
transformed = image.copy()
|
||||
transformed[rare_pixel_mask] = (
|
||||
(1 - self.strength) * image[rare_pixel_mask] +
|
||||
self.strength * gray_3ch[rare_pixel_mask]
|
||||
)
|
||||
|
||||
return transformed.astype(image.dtype)
|
||||
```
|
||||
|
||||
### 10.4 Cached Seg Mask Pipeline (F8 Pattern)
|
||||
|
||||
```python
|
||||
import torch
|
||||
from pathlib import Path
|
||||
|
||||
def precompute_seg_masks(dataset_path: Path, seg_model, output_path: Path):
|
||||
"""
|
||||
F8 Cached Tensors Era: pre-compute seg masks one-time.
|
||||
Store as INT8 compressed для efficient storage.
|
||||
"""
|
||||
output_path.mkdir(exist_ok=True, parents=True)
|
||||
|
||||
for img_path in dataset_path.glob('**/*.jpg'):
|
||||
image = load_image(img_path)
|
||||
# Run SAM/SegEarth (cloud GPU, one-time)
|
||||
with torch.no_grad():
|
||||
seg_mask = seg_model(image.unsqueeze(0)).argmax(dim=1).squeeze(0)
|
||||
# Cache as INT8
|
||||
seg_mask_int8 = seg_mask.to(torch.uint8)
|
||||
torch.save(seg_mask_int8, output_path / f"{img_path.stem}.pt")
|
||||
|
||||
# Resulting storage: ~64 KB per image (256x256 INT8)
|
||||
# Total для World-UAV ~927K: ~60 GB
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 11. Recommendations
|
||||
|
||||
### Tier-1 (immediate — E1 data prep + E4 production)
|
||||
|
||||
1. **F8 Cached Tensors Era pattern** — pre-compute SegEarth masks one-time
|
||||
2. **F18 SegDINO L_seg auxiliary head** в Student training (+2-4% R@1)
|
||||
3. **Combined CE + DICE loss** для L_seg
|
||||
4. **RareClassToGrayAugMask** (П3 novelty) для rare-class focus
|
||||
|
||||
### Tier-2 (medium — E4 advanced + research)
|
||||
|
||||
5. **DUET-CVGL UWMP+DCCA+MRM+DPH** PhD novelty integration (+1-2 pp R@1)
|
||||
6. **Multi-scale L_seg supervision** (Stages 2-4)
|
||||
7. **SAM2 для video** UAV sequences (if available)
|
||||
|
||||
### Tier-3 (research — E5+)
|
||||
|
||||
8. **FC-CLIP open-vocabulary** cross-modal segmentation
|
||||
9. **OneFormer universal** multi-task experiments
|
||||
10. **SegEarth-R1 cached LLM reasoning** integration
|
||||
|
||||
### Constraints
|
||||
|
||||
- ❌ NO on-device SAM/SAM2 (compute budget)
|
||||
- ❌ NO heavy seg head at Student inference
|
||||
- ✅ Cached masks pre-training only
|
||||
- ✅ L_seg training-only (removed at deploy)
|
||||
- ✅ Rare-class focus via RareClassToGray
|
||||
- ✅ Multi-FiLM (F43) для seg modality fusion
|
||||
|
||||
---
|
||||
|
||||
## 12. Bibliography
|
||||
|
||||
### Tier 1 (peer-review)
|
||||
|
||||
[1] **F36 FC-CLIP** "Class-Mask Cross-Modal Segmentation." *NeurIPS 2024*.
|
||||
|
||||
[2] **SAM** (Kirillov et al.) "Segment Anything." *ICCV 2023*.
|
||||
|
||||
[3] **SegFormer** (Xie et al.) "SegFormer: Efficient Transformer for Semantic Segmentation." *NeurIPS 2021*.
|
||||
|
||||
[4] **OneFormer** (Jain et al.) "OneFormer: One Transformer to Rule Universal Image Segmentation." *CVPR 2023*.
|
||||
|
||||
### Tier 2 (archival, modern)
|
||||
|
||||
[5] **F18 SegDINO** "Efficient Medical Image Segmentation на DINO-V3." arXiv 2025.
|
||||
|
||||
[6] **F8 SegEarth-R1** "Geospatial Pixel Reasoning LLM (Cached Tensors Era)." arXiv 2025.
|
||||
|
||||
[7] **SAM2** "Segment Anything 2 (video support)." Meta 2024.
|
||||
|
||||
[8] **OpenSeed** "Open-Vocabulary Segmentation." 2024.
|
||||
|
||||
[9] **SegEarth** RS-specialized segmentation.
|
||||
|
||||
### MERIDIAN internal
|
||||
|
||||
[10] **DUET-CVGL** spec: [[../../2_hypotesis/fusion_hyp/HYP_DUET_CVGL_v1]] (если существует)
|
||||
|
||||
[11] **П3 RareClassToGrayAugMask** Устенко thesis novelty.
|
||||
|
||||
[12] **F43 SSF** "Robust PEFT." *IEEE TPAMI 2024* — TextFiLM pattern applied к seg.
|
||||
|
||||
### Cross-refs
|
||||
|
||||
- [[ОБЗОР_fusion_detailed_v1]] (parent comprehensive review)
|
||||
- [[ОБЗОР_modality_dropout_v1]] (seg dropout strategies)
|
||||
- [[ОБЗОР_KD_detailed_v1]] (cross-modal KD)
|
||||
- [[../../2_hypotesis/03_fusion/02_semantic/]] (Pair A specs)
|
||||
|
||||
---
|
||||
|
||||
```
|
||||
Статус: active v1 detailed pair review (Pair A RGB+Segmentation)
|
||||
Date: 2026-05-19
|
||||
Word count: ~6000
|
||||
Hypotheses: 12 testable, phase-mapped
|
||||
Anti-patterns: 8 documented
|
||||
Implementation recipes: 4 PyTorch (SegDINOAuxHead, L_seg combined loss, RareClassToGray, cached masks pipeline)
|
||||
MERIDIAN novelty: F8 Cached Tensors Era + RareClassToGray П3 + DUET-CVGL PhD
|
||||
Source synthesis: [[СИНТЕЗ_3_fusion]], [[ОБЗОР_fusion_detailed_v1]]
|
||||
```
|
||||
|
||||
#review #detailed #fusion #rgb-segmentation #pair-a #l-seg-aux #sofia #meridian #hypotheses #v1
|
||||
Reference in New Issue
Block a user