RU:Mapillary/Data collection of 360 degree images with Mapillary
Массовая съёмка сферических фотографий
Сферические фотографии нужны всем картографам, в максимально возможном количестве.
Пригодные виды транспорта
- Автомобиль
- Велосипед с креплением камеры к раме
- Велосипед с креплением камеры к рюкзаку или каске
- Пешеход
Выбор камеры
На 2021 год нет оптимальной сферической камеры для mapillary. В любой модели всегда чего-то не хватает: либо сменного аккумулятора, либо возможности рассчитать азимут.
Камеры управляются со смартфона по WiFi, и снимают в режиме Photo Timelapse. Можно снимать и в режиме видео, тогда возрастёт количество кадров, уменьшится разрешение, повысится время обработки.
При выборе сферической камеры обратите внимание на эти параметры. Обзорщики не обращают на них внимания, но они важны для массовой съёмки:
- Наличие сменных карт памяти
- Наличие сменных аккумуляторов
- Возможность подпитки электричеством при съёмке.
- Частота photo timelapse. Должна быть максимально частой. Идеально хотя бы 1 фото в секунду, но таких камер нет. Например не-360 экшен-камера GoPro снимает фото каждые полсекунды.
- Возможность автоматического поворота фото при постобработке, если камера не-вертикальна. Нужно для любой съёмки отличной от автомобильной.
Настройки камеры
- Режим photo timelapse
- Частота съёмки - самая частая
- Проложить шнур для постоянной подпитки электричеством. Впрочем камера всё равно отключится через 1-2 часа, поэтому нужны будут паузы на дозарядку. Со временем аккамуляторы деградируют, а разъёмы изнашиваются и отваливаются.
Крепление камеры
- Готовых удобных систем крепления - нет, ищите разные штуки на Aliexpress и подобных ресурсах.
- Камера должна быть максимально возможно высоко над транспортным средством или фотографом.
- Одновременно, нужно продумать, что будет с камерой, если вы въедете под низкое дерево на велосипеде. Она должна наклоняться, а не ломаться. Так же, непонятно что будет, если упасть головой на шлем, к которому прикреплена камера - не проломит ли она череп.
- Важно получить в итоговых снимках значение азимута. Для этого надо не вертеть камеру на штативе, в идеале закреплять её так, что бы посредине готового jpg было направление вперёд.
- Включить запись трека на отдельном устройстве, и закрепить его повыше - под ветровое стекло автомобиля, на руль велосипеда, в самый верхний карман рюкзака.
Для mapillary будет лучше, если вы одновременно будете снимать ещё и на обычную камеру/смартфон. Если повезёт, то на сервере рассчитаются уточнённые азимуты панорамных фото.
Постпроцессинг
Панорамы выгружаются в эквидистантной проекции. В разных моделях камер на выходе получаются картинки в разном виде. Это может быть панорама в эквидистантной проекции, или 2 круглых изображения.
Эта операция требует больших затрат машинного времени, и разная для каждой камеры. В общем случае, операциями с перепроецированиями панорамных изображений занимается утилита nona.
- Ricoh Theta снимает фото в эквидистантной проекции. Есть скрипт https://github.com/trolleway/theta_tools, который поворачивает наклонёные изображения, актуально для велосипедной и пешеходной съёмки
- Xiaomi 360 снимает фото из 2 круглых изображений. Есть сторонний десктопный софт, который генерирует эквидистантную панораму с правильным наклоном, но глючный и постоянно вылетающий.
- GoPro Fusion - есть десктопный софт, который генерирует эквидистантную панораму, но он не умеет обрабатывать наклон
Задание координат фотографиям
Необходимо задать координаты фотографиям из отдельно записанного gpx-трека, или проверить автоматически заданные на случай выбросов GPS. Задавать их можно в JOSM или exiftool, а визуально проверять - в JOSM. Так же в JOSM можно редактировать gpx-трек, сдвигая точки в линию, это актуально при выбросах на городских улицах.
Необходимые теги в изображениях
Имеется спецификация панорамных изображений: https://developers.google.com/streetview/spherical-metadata. Вам нужно задать вручную недостающие XMP-теги, если их нет. Проще всего это делать в exiftool, а его запускать пакетно скриптом.
В частности, необходимо задать направление съёмки. Это умеет делать mapillary_tools ключом --interpolate_directions
Загрузка
Если у фото есть правильные теги, то грузятся они так же как и другие фото. Так же можно грузить на KartaView.