2026-05-30 14:49:40 +03:00
2026-04-04 17:50:10 +03:00
2026-05-31 12:53:54 +03:00
2026-05-30 14:49:40 +03:00
2026-01-11 13:59:26 +03:00
2026-05-31 12:59:47 +03:00
2026-02-20 17:14:57 +03:00
2026-05-30 14:49:40 +03:00
2026-05-31 14:07:34 +03:00
2026-05-31 17:58:32 +03:00
2026-01-12 15:47:03 +03:00
2026-05-31 13:07:08 +03:00
2026-05-31 19:32:27 +03:00
fix
2026-02-05 21:49:15 +03:00
2026-05-31 13:07:08 +03:00
2026-05-31 16:30:25 +03:00
2026-01-10 17:48:54 +03:00
fix
2026-02-05 21:49:15 +03:00
2026-01-12 15:47:03 +03:00
2025-09-20 23:34:40 +03:00
fix
2026-02-05 21:49:15 +03:00

Autopilot

Симуляция автопилота по маршруту на карте.

Требования

  • Python 3.10+
  • Chrome/Chromium
  • Выключенный VPN

Установка

python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt

Запуск

python main.py --mode standalone --name test_route

Команда построит маршрут и запустит симуляцию. Результаты сохраняются в trajectories.

Можно выполнить шаги отдельно:

python main.py --mode markup --name test_route
python main.py --mode build --name test_route
python main.py --mode run --name test_route

markup только скачивает карту и сохраняет разметку маршрута. build наполняет маршрут chunks и служебными данными. Если при build папки маршрута ещё нет, сначала автоматически выполнится разметка, затем наполнение. standalone выполняет весь путь: разметка, build и run.

Дополнительно можно указать координаты и карты:

python main.py --mode standalone --name test_route --lat 49.103814 --lon 55.794258 --reference google --simulation yandex

Флаги

  • --mode - режим работы: standalone, markup, build, run.
  • --name - название маршрута.
  • --lat, --lon - координаты начальной области.
  • --reference - карта для эталонных изображений: google или yandex.
  • --simulation - карта для симуляции: google или yandex.
  • --ref-min-distance - минимальное расстояние между эталонами.
  • --debug-fps - вывести отладку FPS.
  • --debug-landmark - вывести отладку ориентиров.
  • --use-sian-similarity - выбирать ориентир через SiaN Similarity.
  • --use-gan - преобразовывать эталонные изображения через GAN.
  • --no-landmarks - отключить эталоны и лететь только по межкадровой одометрии.
  • --interframe-method - метод межкадрового сравнения: optical-flow, orb, akaze, sift, brisk.
  • --landmark-method - метод сравнения с эталонами: orb, akaze, sift, brisk.

Автоматические серии запусков

run_batch.ps1 запускает серию экспериментов по уже построенным маршрутам. Скрипт не делает ручную разметку: маршруты должны быть заранее подготовлены через markup и build, либо через standalone. Каждый запуск вызывает python main.py --mode run ..., а результаты сохраняются обычным способом в test_runs.

Минимальный запуск для одного маршрута:

.\run_batch.ps1 -Routes test_route

Если -Routes не указан, скрипт запустит все маршруты из trajectories, у которых есть positions.pkl:

.\run_batch.ps1

Несколько маршрутов можно указать через запятую:

.\run_batch.ps1 -Routes 2026-05-31_15-32-53,2026-05-31_15-21-17

Или через текстовый файл, по одному маршруту на строку:

.\run_batch.ps1 -RouteListPath .\routes.txt

Пример routes.txt:

2026-05-31_15-32-53
2026-05-31_15-21-17
# строки с комментариями игнорируются

Прогон разных методов межкадрового сравнения:

.\run_batch.ps1 `
  -Routes test_route `
  -InterframeMethods optical-flow,orb,akaze,sift,brisk `
  -LandmarkMethods orb

Прогон разных методов эталонов:

.\run_batch.ps1 `
  -Routes test_route `
  -InterframeMethods optical-flow `
  -LandmarkMethods orb,akaze,sift,brisk

Прогон с эталонами и без эталонов:

.\run_batch.ps1 `
  -Routes test_route `
  -UseLandmarksValues true,false

Полная матрица экспериментов:

.\run_batch.ps1 `
  -Routes test_route `
  -SimulationMaps yandex,google `
  -InterframeMethods optical-flow,orb,akaze `
  -LandmarkMethods orb,sift `
  -UseLandmarksValues true,false `
  -UseSianSimilarityValues false,true `
  -UseGanValues false,true `
  -RefMinDistances 75,100

Для проверки команд без запуска Selenium:

.\run_batch.ps1 -DryRun

Флаги run_batch.ps1

Флаг Описание Пример
-Routes Список имён маршрутов из trajectories. Можно через запятую. -Routes route1,route2
-RouteListPath Путь к txt-файлу со списком маршрутов, по одному на строку. -RouteListPath .\routes.txt
-SimulationMaps Карты, на которых выполнять симуляцию. -SimulationMaps yandex,google
-InterframeMethods Методы межкадрового сравнения. -InterframeMethods optical-flow,orb,sift
-LandmarkMethods Методы сравнения с эталонами. -LandmarkMethods orb,akaze,brisk
-UseLandmarksValues Использовать эталоны или лететь только по межкадровой одометрии. -UseLandmarksValues true,false
-UseSianSimilarityValues Включать выбор эталона через SiaN Similarity. -UseSianSimilarityValues false,true
-UseGanValues Включать GAN-преобразование эталонных изображений. -UseGanValues false,true
-RefMinDistances Минимальное расстояние между загружаемыми эталонами. -RefMinDistances 50,100,150
-UseSianSimilarity Быстрый вариант -UseSianSimilarityValues true. -UseSianSimilarity
-UseGan Быстрый вариант -UseGanValues true. -UseGan
-DryRun Только напечатать команды, не запускать Selenium и симуляцию. -DryRun
Description
No description provided
Readme 1.3 GiB
Languages
Jupyter Notebook 99.5%
Python 0.5%