Files
caption-test/GTA-UAV-LR_Dataset_Analysis.md
2026-05-08 09:52:15 +03:00

21 KiB
Raw Permalink Blame History

АНАЛИЗ ДАТАСЕТА: GTA-UAV (LR)

Дата анализа: 2026-04-21 Метод: Эмпирический анализ данных на диске + статья arXiv:2409.16925 + GitHub-репозиторий авторов Путь к данным: /media/servml/SSD_2_2TB/datasets/cvgl_datasets/GTA-UAV-LR/ Путь к аугментациям: /media/servml/SSD_2_2TB/datasets/cvgl_datasets/GTA-UAV-LR-aug/


1. МЕТАДАННЫЕ

Поле Значение
Полное название Game4Loc: A UAV Geo-Localization Benchmark from Game Data
Авторы Yuxiang Ji, Boyong He, Zhuoyue Tan, Liaoni Wu
Год, Venue 2025, AAAI 2025 (Oral), arXiv:2409.16925 [cs.CV]
Код https://github.com/Yux1angJi/GTA-UAV (Python, PyTorch)
Данные HuggingFace / BaiduDisk (пароль: gtav)
Лицензия Apache 2.0
Общий объём на диске ~26 GB (LR); HR-версия ~143 GB

2. ОБЩАЯ СТАТИСТИКА

2.1. Сводка

Параметр Значение
Drone-изображений (query) 33 763
Спутниковых тайлов (DB) 14 640 (4 уровня зума)
Всего изображений 48 403
Покрытая территория 81.3 км² (один непрерывный регион)
Сцена Лос-Сантос (GTA V) — городская + природная среда
Номинальных высот 6 (100, 200, 300, 400, 500, 600 м)
Направлений камеры (yaw) 361 уникальное значение (произвольные углы)
Тип данных Синтетика (рендеринг в игровом движке GTA V)

2.2. Разбиения

Датасет предоставляет два протокола оценки:

Протокол Train Test Метод разбиения
Same-area 26 964 (80.0%) 6 744 (20.0%) По изображениям в пределах одного региона
Cross-area 15 693 (46.5%) 18 015 (53.5%) По географическим подрегионам

Same-area: train и test из одной и той же территории, без пересечений по изображениям. Cross-area: train и test из непересекающихся географических зон — более сложный и реалистичный сценарий.

2.3. Распределение по номинальным высотам

Номинальная высота Same-area train Same-area test Всего Доля
100 м 4 248 1 072 5 320 15.8%
200 м 4 572 1 162 5 734 17.0%
300 м 4 546 1 138 5 684 16.9%
400 м 4 615 1 162 5 777 17.1%
500 м 4 598 1 171 5 769 17.1%
600 м 4 385 1 039 5 424 16.1%
Итого 26 964 6 744 33 708 100%

Распределение по высотам равномерное (~1617% на каждую номинальную высоту).


3. ИСТОЧНИКИ ИЗОБРАЖЕНИЙ

3.1. Дроновые виды (query)

Параметр Значение
Платформа Синтетический рендеринг (GTA V / DeepGTAV)
Тип съёмки RGB, near-nadir (камера ≈90° вниз, cam_roll ≈ -90°)
Разрешение (LR) 512x384 px
Разрешение (HR) 1920x1440 px
Pitch камеры ≈-90° (вертикально вниз), drone_pitch ±10°
Roll дрона ±20° (реалистичные вибрации)
Yaw (heading) Произвольные углы 0°360° (361 уникальное значение)
Формат PNG

3.2. Спутниковые виды (DB)

Параметр Значение
Платформа Спутниковые тайлы (стиль Google Maps)
Формат PNG
Разрешение тайлов 256x256 px (все уровни зума)
Количество тайлов 14 640
Уровни зума 4 уровня (4, 5, 6, 7)

3.3. Мультимасштабная тайловая сетка

Спутниковые данные организованы как пирамида зум-уровней — каждый следующий уровень удваивает разрешение:

Зум Cols x Rows Тайлов Масштаб (относительно zoom 7)
4 11 x 16 176 1/8
5 22 x 32 704 1/4
6 43 x 64 2 752 1/2
7 86 x 128 11 008 1/1 (базовый)
Итого 14 640

Все сетки заполнены на 100% (нет пропущенных тайлов).

Общий размер карты (zoom 7): 86 × 256 = 22 016 px по ширине, 128 × 256 = 32 768 px по высоте.

Именование тайлов: {zoom}_{0}_{X}_{Y}.png (пример: 7_0_42_63.png).


4. ПАРАМЕТРЫ СЪЁМКИ ДРОНОВ

4.1. Фактические высоты полёта

Номинальные высоты (из имени файла) не совпадают точно с фактическими — это реалистичный эффект рельефа:

Номинальная Фактический диапазон Среднее Кол-во
100 м 24.9 444.9 м 93.9 м 5 320
200 м 34.3 548.4 м 193.9 м 5 734
300 м 31.0 648.9 м 294.3 м 5 684
400 м 33.4 746.0 м 395.2 м 5 777
500 м 44.9 930.4 м 494.9 м 5 769
600 м 82.1 988.1 м 593.6 м 5 424

Общий диапазон фактических высот: 24.9 988.1 м (среднее 345.3 м).

Большой разброс объясняется тем, что высота задаётся над уровнем моря, а рельеф варьируется.

4.2. Ориентация камеры (attitude)

Параметр Среднее Диапазон
Drone roll ( abs )
Drone pitch ( abs )
Cam roll -90.0° -110° -71.2°
Drone yaw произвольный -180° +180° (361 уникальное значение)

Камера направлена вертикально вниз (cam_roll ≈ -90°), с реалистичными отклонениями дрона по roll/pitch.

4.3. Классификация углов (для обучения)

В CSV-файлах *_class_angle.csv yaw дискретизирован в 4 класса (квадранты):

Класс Диапазон Кол-во (cross-area train)
0 90° 7 871
1 90°180° 7 637
2 180°270° 7 650
3 270°360° 7 834

Распределение по квадрантам равномерное.


5. ПРОСТРАНСТВЕННОЕ ПОКРЫТИЕ

5.1. Зона дронов в координатах карты

Параметр Значение
Диапазон X (zoom 7) 606 6 068 px (охват ~5 462 px)
Диапазон Y (zoom 7) 1 330 9 735 px (охват ~8 405 px)
Покрытие карты 5 462 / 22 016 × 8 405 / 32 768 ≈ 6.4% площади zoom-7 карты

Дрон-изображения сконцентрированы в определённом подрегионе карты, при этом вся карта (100% тайлов) доступна как DB.

5.2. Регион

Параметр Значение
Источник Карта Лос-Сантос (GTA V)
Площадь 81.3 км²
Типы ландшафта Город, пригороды, горы, побережье, леса, пустыня
Координатный охват Синтетические координаты (x, y в пикселях карты)

6. АННОТАЦИИ И МЕТАДАННЫЕ

6.1. Файлы аннотаций

Файл Содержание Формат
same-area-drone2sate-train.json Same-area train: 26 964 записей JSON (list of dicts)
same-area-drone2sate-test.json Same-area test: 6 744 записей JSON
cross-area-drone2sate-train.json Cross-area train: 15 693 записей JSON
cross-area-drone2sate-test.json Cross-area test: 18 015 записей JSON
*_drone_meta.csv Метаданные дрона (height, yaw, roll, pitch) TSV
*_drone_meta_new.csv Обновлённые метаданные TSV
*_class_angle.csv Класс угла yaw (03) CSV
back_csv/ Обратные CSV-файлы для cross-area Директория

6.2. Структура JSON-записи

{
  "drone_img_dir": "drone/images",
  "drone_img_name": "400_0001_0000022427.png",
  "drone_loc_x_y": [1268.6, 6326.8],
  "sate_img_dir": "satellite",
  "pair_pos_sate_img_list": ["5_0_3_18.png"],
  "pair_pos_sate_weight_list": [0.521],
  "pair_pos_sate_loc_x_y_list": [[1209.6, 6393.6]],
  "pair_pos_semipos_sate_img_list": ["4_0_1_9.png", "5_0_3_17.png", ...],
  "pair_pos_semipos_sate_weight_list": [0.174, 0.146, ...],
  "pair_pos_semipos_sate_loc_x_y_list": [[1036.8, 6566.4], ...],
  "drone_metadata": {
    "height": 356.92,
    "drone_roll": -3.66,
    "drone_pitch": -4.81,
    "drone_yaw": -86.0,
    "cam_roll": -93.66,
    "cam_pitch": -4.81,
    "cam_yaw": -86.0
  }
}

6.3. Типы аннотаций

Тип аннотации Наличие Комментарий
Координаты drone (x, y) Да В пространстве карты (zoom 7)
Высота дрона (altitude) Да В метрах, 6 номинальных уровней
Heading angle (yaw) Да Произвольные углы -180°...+180°
Pitch / Roll Да Drone и Camera отдельно
Positive pairs Да С весами IoU overlap
Semi-positive pairs Да Множественные, с весами
Координаты тайлов (x, y) Да Центры тайлов в пространстве карты
GPS-координаты Нет Синтетическая карта
Depth maps Нет — (но сгенерированы в aug)
Segmentation masks Нет — (но сгенерированы в aug)
Bounding boxes Нет
Временная метка Нет

7. РАСПРЕДЕЛЕНИЕ POSITIVE / SEMI-POSITIVE ПАР

7.1. Positive matches (точные)

Positives на query Кол-во Доля
0 16 297 48.3%
1 16 505 49.0%
2 906 2.7%

~48% query не имеют точного positive — это ключевая особенность датасета. Авторы моделируют реалистичный сценарий, когда дрон-изображение может не иметь точно совпадающего спутникового тайла.

7.2. Semi-positive matches (частичное перекрытие)

Semi-positives Кол-во Доля
1 93 0.3%
2 1 538 4.6%
3 7 301 21.7%
4 7 290 21.6%
5 8 135 24.1%
6 6 685 19.8%
7 2 168 6.4%
8 369 1.1%
910 129 0.4%

Среднее число semi-positives на query: 4.58

В отличие от UAV-GeoLoc (где ~94% query имеют ровно 4 positive), здесь распределение гораздо более вариативное (от 1 до 10 semi-positives).

7.3. Уникальные спутниковые тайлы в парах

Из 14 640 спутниковых тайлов, в positive/semi-positive парах задействовано 4 266 уникальных тайлов (29.1%).

Распределение по зумам среди используемых:

Зум Тайлов в парах Из общего числа
4 83 47.2%
5 279 39.6%
6 886 32.2%
7 3 018 27.4%

8. АУГМЕНТИРОВАННЫЙ НАБОР (GTA-UAV-LR-aug)

Путь: /media/servml/SSD_2_2TB/datasets/cvgl_datasets/GTA-UAV-LR-aug/ Объём: ~71 GB

8.1. Сгенерированные модальности

Модальность Модель Drone Satellite Итого
Depth DA3-LARGE-1.1 33 763 14 640 48 403
CHM (Canopy Height) DINOv3-ViTL16-CHMv2 33 763 14 640 48 403
Edge Sobel from depth (CPU) 33 763 14 640 48 403
Segmentation SegEarth-OV3 33 763 14 640 48 403

8.2. Параметры пайплайна

Параметр Значение
Версия пайплайна 4.0.0-dir-layout
Размер DB-изображений 256 px
Размер query-изображений 512 px
Профиль GPU RTX 4090
Сохранение safetensors Да
Дата генерации 2026-04-19

8.3. Классы сегментации (17 промптов)

background, building, road, vegetation, water, sand and gravel ground, rocky terrain, farmland, railway, parking lot, sidewalk, bare soil and plowed field, roof and rooftop, sports field and playground, muddy ground and wetland, embankment and levee, swimming pool

8.4. Дополнительные форматы

Директория Содержание
npy/ Предвычисленные NumPy-массивы (chm, depth, edge, segm)
safetensors/ Эмбеддинги (drone, satellite)

9. СРАВНЕНИЕ С UAV-GeoLoc И UAV-VisLoc

Параметр GTA-UAV (LR) UAV-GeoLoc UAV-VisLoc
Тип данных Синтетика (GTA V) Синтетика (Google Earth Studio) Реальные БПЛА
Drone-изображений 33 763 652 744 6 774
DB-изображений 14 640 274 683 0 (нужно нарезать)
Всего изображений 48 403 927 427 6 774 + 11 карт
Разрешение drone 512x384 512x512 3976x2652 / 3000x2000
Разрешение DB 256x256 100x100 1000x1000 N/A (целые карты)
Высоты полёта 25988 м (6 номинальных) 100, 125, 150 м 4052572 м
Heading (yaw) Произвольные (361 значение) 8 × 45° Произвольные
Регионы 1 (Лос-Сантос, GTA V) 372 сцены, 11 стран 11 маршрутов, 7 провинций Китая
Сцен/маршрутов 1 непрерывная карта 372 11
Площадь покрытия 81.3 км² Варьируется Варьируется
Positive pairs Да (с весами IoU) Да (positive.json) Нет (нужно по GPS)
Semi-positive pairs Да (с весами IoU) Да (semi_positive.json) Нет
% query без positive 48.3% ~1.2%
Avg semi-positives 4.58 ~2.83
Split протоколы Same-area + Cross-area Terrain / Country / All По изображениям (~75/25)
Мультимасштабность DB Да (4 зум-уровня) Нет (фиксированный размер) Нет
Temporal gap Нет (одновременно) Нет 25 лет
Лицензия Apache 2.0 CC BY-NC 4.0 Не указана
Объём на диске ~26 GB (LR) ~181 GB ~16.4 GB

Ключевые отличия GTA-UAV:

  1. Непрерывная территория — одна большая карта 81.3 км², а не набор дискретных сцен. Это позволяет моделировать реальный сценарий навигации.
  2. Мультимасштабные тайлы — 4 уровня зума (47) vs единый размер кропов в UAV-GeoLoc.
  3. Частичные совпадения — 48% query не имеют точного positive, что моделирует реалистичный сценарий, когда дрон находится между тайлами. Используются веса IoU вместо бинарных меток.
  4. Широкий диапазон высот — 6 номинальных уровней (100600 м) vs 3 уровня (100150 м) в UAV-GeoLoc.
  5. Произвольные углы — 361 уникальное значение yaw vs 8 дискретных (шаг 45°) в UAV-GeoLoc.
  6. Два протокола оценки — same-area (проще) и cross-area (реалистичнее) vs terrain/country/all splits в UAV-GeoLoc.

10. ПОЛНАЯ СТРУКТУРА ДАННЫХ

GTA-UAV-LR/                                    # ~26 GB
├── README.md                                   # Описание датасета
│
├── drone/
│   └── images/
│       ├── 100_0001_0000000000.png             # 512x384
│       ├── 100_0001_0000000001.png
│       ├── ...
│       ├── 200_0001_XXXXXXXXXX.png
│       ├── ...
│       └── 600_0001_XXXXXXXXXX.png             # 33 763 файлов
│
├── satellite/
│   ├── 4_0_0_0.png                             # 256x256, zoom 4
│   ├── 4_0_0_1.png
│   ├── ...                                     # 176 тайлов zoom 4
│   ├── 5_0_0_0.png                             # 704 тайлов zoom 5
│   ├── ...
│   ├── 6_0_0_0.png                             # 2 752 тайлов zoom 6
│   ├── ...
│   ├── 7_0_0_0.png                             # 11 008 тайлов zoom 7
│   └── ...                                     # 14 640 файлов итого
│
├── same-area-drone2sate-train.json             # 26 964 записей
├── same-area-drone2sate-test.json              # 6 744 записей
├── cross-area-drone2sate-train.json            # 15 693 записей
├── cross-area-drone2sate-test.json             # 18 015 записей
│
├── cross-area-drone2sate-train_drone_meta.csv  # TSV: img, height, yaw, roll, pitch
├── cross-area-drone2sate-test_drone_meta.csv
├── cross-area-drone2sate-train_drone_meta_new.csv  # Обновлённые метаданные
├── cross-area-drone2sate-test_drone_meta_new.csv
├── cross-area-drone2sate-train_class_angle.csv # CSV: img, angle_class (0-3)
├── cross-area-drone2sate-test_class_angle.csv
│
└── back_csv/                                   # Обратные CSV для cross-area
    ├── cross-area-drone2sate-train_class_angle.csv
    └── cross-area-drone2sate-test_class_angle.csv


GTA-UAV-LR-aug/                                 # ~71 GB (аугментации)
├── manifest.json                               # Метаданные пайплайна
├── pipeline.log
│
├── depth/                                      # DA3-LARGE-1.1
│   ├── drone/images/     (33 763 файлов)
│   └── satellite/        (14 640 файлов)
│
├── chm/                                        # DINOv3-ViTL16-CHMv2
│   ├── drone/images/     (33 763 файлов)
│   └── satellite/        (14 640 файлов)
│
├── edge/                                       # Sobel from depth
│   ├── drone/images/     (33 763 файлов)
│   └── satellite/        (14 640 файлов)
│
├── segm/                                       # SegEarth-OV3, 17 классов
│   ├── drone/images/     (33 763 файлов)
│   └── satellite/        (14 640 файлов)
│
├── npy/                                        # NumPy массивы
│   ├── chm/
│   ├── depth/
│   ├── edge/
│   └── segm/
│
└── safetensors/                                # Предвычисленные эмбеддинги
    ├── drone/
    └── satellite/