Dataset preparation script with documentation
- Satellite crop generation (512x512, stride 256, resize 256x256) - Route 09 tile stitching (4 tiles -> 44800x33280) - GPS matching drone->crop via vectorized haversine - Index files in UAV-GeoLoc format (train/test query + DB) - positive.json / semi_positive.json / db_postion.txt per route - Route 07 excluded (satellite too narrow) - Fixed: full gallery in DB files, db_postion.txt format, frame_id keys - Fixed: file handle leaks in image processing loops Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
40
CLAUDE.md
Normal file
40
CLAUDE.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# UAV-VisLoc Dataset Preparation
|
||||
|
||||
## Пути
|
||||
- **Исходный датасет:** `/home/servml/Документы/datasets/UAV_VisLoc_dataset/`
|
||||
- **Обработанный датасет:** `/home/servml/Документы/datasets/UAV_VisLoc_processed/`
|
||||
- **Скрипт:** `scripts/prepare_dataset.py`
|
||||
- **Статус:** выполнен, данные готовы (2026-04-17)
|
||||
|
||||
## Результаты обработки
|
||||
- Drone: 6,744 изображений resized 256x256
|
||||
- Satellite кропов: 74,807 (512x512 -> 256x256)
|
||||
- Train queries: 5,060 / Test queries: 1,684
|
||||
- Gallery: 74,807 кропов (одинаковая для train и test)
|
||||
- Median distance drone->crop: 25.9m, P99: 45.7m
|
||||
|
||||
## Формат данных
|
||||
|
||||
### Разделение positive / semi-positive / negative
|
||||
|
||||
В формате UAV-GeoLoc нет явного списка negative — negatives определяются неявно:
|
||||
|
||||
- **Positive** (1 на drone): ближайший crop по GPS. Хранится в `positive.json` и как ПЕРВЫЙ crop в строке `train_query.txt`
|
||||
- **Semi-positive** (8 на drone): +-1 соседи positive crop в grid. Хранятся в `semi_positive.json` и как crops 2-9 в строке `train_query.txt`
|
||||
- **Negative** (implicit): ВСЕ остальные кропы в gallery (~74K). Не хранятся отдельно — при contrastive learning in-batch negatives формируются из других пар в batch
|
||||
|
||||
### Как это используется в train_query.txt
|
||||
```
|
||||
01/drone/01_0001.JPG 0 01/DB/img/crop_5_18.png 01/DB/img/crop_4_17.png 01/DB/img/crop_4_18.png ...
|
||||
^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
label 1 positive + 8 semi-positives (все считаются positive matches)
|
||||
```
|
||||
Все 9 кропов в строке — positives для данного query. Всё что НЕ в этом списке — negatives.
|
||||
|
||||
## Известные проблемы
|
||||
- Маршрут 07 исключён (спутник 3000x170, слишком узкий)
|
||||
- 6 drone в маршруте 06 (06_0093-06_0098) за пределами спутниковой карты (distance >1000m)
|
||||
- Нет val split (только train/test как в оригинальном UAV-VisLoc)
|
||||
|
||||
## GSD спутника
|
||||
~0.30 м/px (единый zoom level). Вариации GSD по долготе (0.23-0.27 м/px) — косинусный эффект широты, не разная высота съёмки.
|
||||
Reference in New Issue
Block a user