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>
Fuse Project: multimodal fusion for cross-view geo-localization
Проект для совместной разработки и экспериментального сравнения способов объединения модальностей в задаче перекрёстной геолокализации БПЛА и спутниковых изображений.
Команда
| Сотрудник | Основной трек | Дополнительная командная роль |
|---|---|---|
| Павленко Богдан Викторович | Condition-Aware RGB-Anchored Fusion | координатор общего архитектурного API |
| Близно Максим Витальевич | Token/Bottleneck Aggregation | координатор benchmark, метрик и воспроизводимости |
| Мороз Егор Сергеевич | Role-Aware Hierarchical Fusion | координатор входных модальностей и контроля качества данных |
Все три трека реализуются в одном репозитории, используют один набор данных, один StripNet contract, одинаковые split, loss, метрики и правила отчётности. Результатом является не три изолированных исследования, а общий сравнительный проект с тремя взаимозаменяемыми fusion-модулями.
Постановка
Для satellite-ветки доступны:
- RGB satellite.
- Текстовое описание satellite-сцены.
- CHM satellite.
- Семантическая сегментация satellite.
Для UAV-ветки доступны:
- RGB UAV.
- Текстовое описание UAV-сцены.
- Карта глубины UAV.
- Семантическая сегментация UAV.
RGB кодируется shared StripNet-small. Каждая ветка независимо строит L2-нормированный descriptor [B, 1024]. Сопоставление веток выполняется только в retrieval objective. Прямая передача признаков или метаданных между paired satellite и UAV внутри encoder запрещена.
С чего начать
- Прочитать контекст MERIDIAN — частью какой системы является проект и почему важна устойчивость к отсутствию модальности.
- Прочитать общее задание.
- Прочитать контракт входов и выходов.
- Прочитать регламент совместной работы.
- Открыть своё персональное задание в
docs/01_tasks/. - Изучить обязательные документы по карте чтения. Важно: канонические документы — это цепочки версий, полное содержание лежит в
_version_chain/(см. карту чтения, §0). - Проверить доступность GTA-UAV и двух внешних проектов по руководству переиспользования.
- До реализации согласовать общий API на совместном архитектурном ревью.
Данные
Датасет GTA-UAV-LR и его производные расположены на Linux-сервере с RTX 4090:
| Компонент | Путь |
|---|---|
| RGB + pair JSON | /home/servml/Документы/datasets/GTA-UAV-LR/ |
| Captions (L1/L2/L3, JSON) | /home/servml/Документы/datasets/GTA-UAV-LR-captions/ |
| Auxiliary maps (segm/depth/edge/chm, SafeTensors) | /home/servml/Документы/datasets/GTA-UAV-LR-aug/ |
| Split snapshots, seg-filter | caption-test/meta/ |
Фактические пути не хардкодятся: задаются через gin и фиксируются в reports/joint/ENVIRONMENT_AUDIT.md.
Рекомендуемое окружение: Python 3.11, PyTorch 2.x, CUDA для RTX 4090. Системный Python 3.14 не использовать для этого проекта, так как рабочие сборки PyTorch и pytest могут отсутствовать.
py -3.11 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -e ".[dev]"
python -m pytest -q
Структура
fuse_proj/
├── docs/
│ ├── 00_project/ # постановка, контракты, workflow, эксперименты, контекст MERIDIAN
│ ├── 01_tasks/ # общее и персональные задания
│ ├── 02_references/ # физические копии обязательных материалов
│ │ ├── 01_required/ # обязательный пакет для всех
│ │ ├── 02_fusion_core/ # канон fusion (+ _version_chain/ с полными базовыми версиями)
│ │ ├── 03_segmentation/ # pair A (+ _version_chain/)
│ │ ├── 04_geometry/ # pair B/C (+ _version_chain/)
│ │ ├── 05_text/ # pair D
│ │ └── 06_paper_analyses/ # конспекты статей F/P/B/M
│ └── 03_codebase_guides/ # карты использования внешних проектов
├── vendor_reference/ # снимки ключевых файлов двух рабочих проектов (read-only)
├── src/fuse_proj/ # общий код и fusion API
├── in/config_files/ # gin-конфигурации
├── tests/ # unit, shape и integration tests
├── experiments/ # registry и шаблоны run-артефактов
├── reports/ # персональные и общий отчёты
└── results/ # локальные агрегированные результаты, без весов и датасета
Доступные внешние проекты
| Назначение | Локальный путь | Remote |
|---|---|---|
| Генерация depth, segmentation, CHM и SafeTensors | C:\Users\Lisadminipc\Documents\code\depth_edges_annotate_worlduav |
https://git.lissad.keenetic.name/Pikaliov/depth_edges_annotate_worlduav |
| StripNet, GTA-UAV loader, loss, eval, training utilities | C:\Users\Lisadminipc\Documents\code\caption-test |
https://git.lissad.keenetic.name/Pikaliov/caption-test |
vendor_reference/ содержит копии файлов для чтения и аудита. Реализацию следует переносить осознанно в src/fuse_proj/, а не редактировать снимки.
Жёсткие ограничения
- Visual backbone:
StripNet-small, shared для satellite и UAV. - Основной размер входа:
256 x 256. - Descriptor:
1024, L2 normalization. - Dataset: GTA-UAV-LR, primary split
cross-area. - Full-modal forward использует RGB, text, segmentation и view-specific geometry.
- Стохастическое отключение модальностей при обучении не является частью задания.
- Leave-one-modality-out допускается только как контролируемая оценочная аблация.
- Координаты, имена локаций и paired-view признаки не должны попадать в fusion-модуль.
- Все сравниваемые варианты используют одинаковый protocol и минимум три seed в финальном сравнении.
Главный результат
Команда должна предоставить общий benchmark трёх семейств fusion, выбрать primary, fallback и research-arm, а также показать, какая дополнительная модальность, на каком уровне StripNet и каким оператором даёт измеримое улучшение retrieval.