Commit Graph

8 Commits

Author SHA1 Message Date
pikaliov
3143dc7bf2 Update docs with post-processing results: bg 57% → 5%
Verified on 128 satellite images after dark water fix (std threshold
0.08 → 0.18). Document calibrated thresholds and measured improvements.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-18 02:53:19 +03:00
pikaliov
ff002ce142 Update README and CLAUDE.md: unified 17 classes, post-processing, 3 datasets
- All datasets now use unified 17 classes (not 11/14/16 separately)
- Document seg post-processing (dark water fix, wetland reclassify)
- Update test count (149), time estimates (17 prompts), palette
- Add seg_classes.py to project structure
- Fix outdated references throughout

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-18 02:46:59 +03:00
pikaliov
3b5778e303 Unify segmentation classes (17) across GTA-UAV and UAV_VisLoc
Extract shared UNIFIED_PROMPTS (17 classes, ID 0-16) into
scripts/seg_classes.py for transfer learning compatibility.
Both run_gta_uav.py and run_uav_visloc.py now import from it.

Key change: swimming pool moved from ID 13 → ID 16, so sports field
(ID 13), muddy ground (14), embankment (15) have stable IDs across
both datasets. Missing classes in a dataset = 0 pixels = 0 loss.

Updated: README, CLAUDE.md, segmentation_class_analysis.md, palette.
Deleted old UAV_VisLoc segmentations (need regeneration with 17 classes).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 22:06:10 +03:00
pikaliov
143a837c03 Add GTA-UAV-LR annotation script + dataset documentation
- Add scripts/run_gta_uav.py for GTA-UAV-LR (48K images, GTA V synthetic)
- 14 segmentation classes: 11 base + bare soil, rooftop, swimming pool
- Fix source filter to recognize "satellite" folder (alongside "DB")
- Document GTA-UAV characteristics in segmentation_class_analysis.md
- Update README and CLAUDE.md with GTA-UAV support

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 21:55:56 +03:00
pikaliov
27eb315903 Update docs: CLAUDE.md, README, segmentation class analysis
- Create CLAUDE.md with project overview, key decisions, structure
- Update README: add UAV_VisLoc dataset, 16-class palette, scripts
- Extend segmentation_class_analysis.md with UAV_VisLoc section:
  quantitative analysis of 2496 images, 5 new classes with detailed
  justification (bare soil, rooftop, sports field, wetland, embankment),
  threshold rationale, and irreducible background explanation

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 21:27:25 +03:00
pikaliov
13ff079891 Refactor output to directory-based layout + migration script
Replace prefix-based naming (crop_12_4_depth.png) with directory-based
layout where modality is determined by folder (depth/crop_12_4.png).

New structure:
  output_root/{modality}/{rel_parent}/{stem}.png    (vis)
  output_root/npy/{modality}/{rel_parent}/{stem}.npy (intermediate)
  output_root/safetensors/{rel_parent}/{stem}.safetensors (training)

- Rewrite io_utils.py save functions: (output_root, rel_parent, stem)
- Update ImageRecord: output_root + rel_parent instead of output_dir
- Add path helpers: npy_path(), vis_path(), safetensors_path()
- Add scripts/migrate_layout.py for converting existing datasets
- Update all tests (143 passing)
- Update README with new layout docs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 17:11:01 +03:00
pikaliov
f3cb18ac4d Add SafeTensors consolidation stage for zero-copy tensor loading
Bundle all per-image modalities (depth, edge, chm, segm) into a single
.safetensors file for fast training DataLoader reads (~0.1ms zero-copy mmap
vs ~5ms for 4x PNG). Adds consolidate stage after main pipeline stages,
save_safetensors/cleanup_npy config flags, resume support, and 10 new tests.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 16:53:29 +03:00
pikaliov
686db62c25 Initial commit: World-UAV annotation pipeline
4-modality annotation pipeline (depth, edges, segmentation, chmv2) for 973K
drone/satellite images. SegEarth-OV3 open-vocabulary segmentation with 11
classes optimized for cross-view geo-localization.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 11:22:01 +03:00