# Карта проекта depth_edges_annotate_worlduav ## 1. Источник ```text C:\Users\Lisadminipc\Documents\code\depth_edges_annotate_worlduav ``` Снимки ключевых файлов находятся в `vendor_reference/depth_edges_annotate_worlduav/`. ## 2. GTA-UAV annotation run Reference entry point: `scripts/run_gta_uav.py`. Исходная GTA-UAV структура: ```text GTA-UAV-LR/ ├── drone/images/ # UAV, 512x384 └── satellite/ # satellite, 256x256, возможен alpha channel ``` Reference output: ```text GTA-UAV-LR-aug/ ├── depth/ ├── edge/ ├── segm/ ├── chm/ ├── safetensors/ └── manifest.json ``` ## 3. Используемые модальности | View | Geometry key | Segmentation key | |---|---|---| | Satellite | `chm` | `segm` | | UAV | `depth` | `segm` | `edge` генерируется pipeline, но не входит в primary fusion input этого проекта. ## 4. Segmentation classes Canonical source: `scripts/seg_classes.py`. 17 classes: ```text 0 background 1 building 2 road 3 vegetation 4 water 5 sand and gravel ground 6 rocky terrain 7 farmland 8 railway 9 parking lot 10 sidewalk 11 bare soil and plowed field 12 roof and rooftop 13 sports field and playground 14 muddy ground and wetland 15 embankment and levee 16 swimming pool ``` При переносе запрещено создавать новый порядок IDs. ## 5. Storage Для обучения предпочтительны SafeTensors: | Key | Dtype | Shape | Range | |---|---|---|---| | `depth` | float16 | `[1,H,W]` | normalized `[0,1]` | | `chm` | float16 | `[1,H,W]` | normalized `[0,1]` | | `segm` | uint8 | `[1,H,W]` | IDs `[0,16]` | | `edge` | float16 | `[1,H,W]` | normalized `[0,1]` | PNG используется только для визуальной инспекции. ## 6. Data validation перед training Для каждой view вычислить: - число найденных SafeTensors; - число отсутствующих файлов; - shape mismatch count; - NaN/Inf count; - min/max/mean/std geometry; - class histogram segmentation; - valid fraction; - долю constant maps; - совпадение stem с RGB. Результат сохранить в `reports/joint/DATA_VALIDATION.json` и кратко описать в `ENVIRONMENT_AUDIT.md`. ## 7. Что не копировать в training code - Model inference implementation генераторов. - Веса DA3, segmentation и CHM generators. - Sequential model loading logic. - Visualization palette как model input. - Хардкодированные source/output paths. Новый проект читает готовые annotations. Генерация повторяется во внешнем проекте только при отсутствии или повреждении данных.