Разработка сервиса для автоматизированного создания виртуальных панорамных туров по локациям средствами Yandex Maps API | Статья в журнале «Техника. Технологии. Инженерия»

Отправьте статью сегодня! Журнал выйдет 18 июля, печатный экземпляр отправим 22 июля.

Опубликовать статью в журнале

Библиографическое описание:

Разработка сервиса для автоматизированного создания виртуальных панорамных туров по локациям средствами Yandex Maps API / Е. В. Коптенок, А. В. Савенко, М. В. Трунников [и др.]. — Текст : непосредственный // Техника. Технологии. Инженерия. — 2020. — № 1 (15). — С. 9-13. — URL: https://moluch.ru/th/8/archive/152/4853/ (дата обращения: 08.07.2020).



На сегодняшний день в интернете существуют различные сервисы, предоставляющие возможность просматривать и взаимодействовать с панорамными снимками. Самые распространенные сервисы компаний Яндекс и Google используют эту технологию для отображения панорамных снимков с улиц с возможностью перехода между соседними снимками внутри плеера панорам. Подобное решение достигается с помощью камер, установленных на автомобилях компаний и GPS маяков для размещения снимка. Процесс создания панорам в этих сервисах автоматизирован и не применим для интерьеров, а также мест, куда специальный автомобиль не имеет доступа.

Однако подобные сервисы существуют и для интерьеров, предоставляя возможность посмотреть в формате панорамы интерьер какого-либо здания или помещения. Например, компания Google предоставила доступ к виртуальной экскурсии по МКС. Также существует сервис, позволяющий отправиться в виртуальный тур по автомузеям.

Подобные сервисы имеют большую актуальность, так как позволяют имитировать посещение отснятых мест. Это удобно, например, если человек не имеет физической возможности посетить место, либо место закрыто на реконструкцию, а также частично историческую ценность в будущем.

Таким образом идея сервиса, который бы позволял загружать и управлять собственными панорамами, достаточно актуальна. Проблема заключается в том, что существующие сервисы так или иначе ограничены. Некоторые предоставляют доступ на платной основе, либо позволяют загрузить лишь один несвязанный панорамный снимок, либо связи между снимками нужно корректировать вручную, что увеличивает сложность и время обработки с увеличением количества снимков.

Возникла идея реализовать сервис, который бы на основе исходных снимков и некоторой метаинформации позволял условно в один клик создавать виртуальные туры. Такой сервис мог бы использоваться кроме упомянутых вариантов также и в образовательных целях, например, для организации виртуальных туров для больших групп учащихся.

Для разработки подобного сервиса необходима технология размещения панорамных снимков на сайте. Для проекта был использован Yandex Maps API, который предоставляет возможность на бесплатной основе размещать виджеты карты и плееры панорам, создавать пользовательские объекты внутри них, а также использовать собственные изображения карт и панорам.

Для размещения снимков с помощью данного API требуется предварительная обработка фотографий и изображений карты, а именно нарезка на так называемые тайлы и именование их особым образом. Для этих целей был использован многофункциональный набор инструментов для редактирования мультимедийных изображений ImageMagick.

Для получения и обработки метаинформации панорамных снимков были написаны скрипты на языке Python3, который предоставляет широкий и необходимый функционал для написания как полноценных программ, так и командных файлов.

Серверная часть сервиса реализована на языке PHP. Сервис предоставляет пользователю простой личный кабинет, в котором он может загружать, просматривать уже загруженные и удалять коллекции панорам (рис.1.).

Для корректной работы сервиса пользователь должен упаковать исходные данные особым образом и дождать загрузки на сервер. Если все данные корректны, сервис автоматически расставит переходы между снимками, разрежет и разместит панорамы на сервере.

Выходными данными сервера также является файл данных коллекции панорам, который хранит описание каждого панорамного снимка и связанных с ним переходов и маркеров на языке JavaScript, так как API Яндекса использует именно его. Загруженную коллекцию пользователь может просмотреть по созданной ссылке, которую можно увидеть в личном кабинете. Все панорамы связаны между собой, а на виджете карты отображается пользовательская карта, а также маркер текущей панорамы. Пример панорамы представлен на рис.2.

Рис. 1. Страница «Профиль

Рис. 2. Пример применения для несуществующих в реальности локаций из игры

Структура базы данных для хранения информации о пользователях и панорамах представлена на рис.3. Она довольно проста, что обусловлено тем, что основная информация о панорамах хранится на сервисах Яндекс.

Рис. 3. База данных

Иерархия классов серверной части представлена на рис.4.

Рис. 4. Иерархия файлов

В будущем можно расширять функционал редактирования коллекций, например, реализовать возможность добавлять пользовательские маркеры на панорамы или вручную редактировать переходы между ними. Также можно протестировать иные сервисы для отображения панорамных снимков для нахождения наиболее удобных и оптимизированных вариантов. В качестве другого направления развития сервиса можно реализовать генерацию выходного комплекта файлов для размещения получившейся коллекции панорам на собственном сервере пользователя.

Литература:

  1. Документация Яндекс API. Справочник JavaScript API — режим доступа: https://tech.yandex.ru/maps/jsapi/doc/2.1/ref/concepts/About-docpage/
  2. Документация Яндекс API. Карта — режим доступа: https://tech.yandex.ru/maps/jsbox/2.1/
  3. Документация Яндекс API. Создание своей панорамы — режим доступа: https://tech.yandex.ru/maps/jsbox/2.1/panorama_custom
  4. Документация Яндекс API. Добавление маркеров — режим доступа: https://tech.yandex.ru/maps/jsbox/2.1/panorama_with_markers
  5. Документация Яндекс API. Создание переходов — режим доступа: https://tech.yandex.ru/maps/jsbox/2.1/panorama_with_connections
  6. Документация Яндекс API. Создание ивентов — режим доступа: https://tech.yandex.ru/maps/jsbox/2.1/panorama_events
  7. API Яндекс.Панорам: как сделать свою виртуальную прогулку или просто довести человека от метро — режим доступа: https://habr.com/ru/company/yandex/blog/305846/
Основные термины (генерируются автоматически): API, сервис, панорама, снимок, плеер панорам, GPS, PHP, особый образ.

Похожие статьи

Обзор программных продуктов для создания веб-ориентированной...

Создание виртуальных туров, плеер для просмотра туров.

Каждое мини-изображение слайдера является настоящим панорамным снимком, размеры которого

На данный момент система находится в разработке. По мере выполнения панорамы будут выкладываться на...

Методы нахождения особых точек изображения и их дескрипторов

Рассматриваются методы нахождения особых точек и формирование их дескрипторов. Целью является исследование существующих методов поиска и определение дескрипторов особых точек для выбора лучшего соответствия между детекторами особых точек и их дескрипторов...

Использование геолокации в приложениях под Android

GPS_PROVIDER – это данные с GPS спутников. NETWORK_PROVIDER – координаты, которые можно получить через сотовую связь или WiFi.

Представленный класс будет полезен в таких областях, как социальные сервисы, основанные на геолокации, дополненная реальность или...

Разработка мобильного приложения для таксатора

Они объединяют GPS-приемник, мобильный компьютер и программное обеспечение

На базе объединения GPS-приемника в одном корпусе с мощным карманным компьютером

Таким образом, в качестве протокола обмена используются вызовы функций (API) библиотеки SQLite...

Разработка приложения «Закладки» для web-браузера

Ключевые слова: расширение для браузера, Bookmarks, Google extension API. Технология «Интернет» сейчас является наиболее приоритетным способом поиска информации, преимущественно за счёт минимизации временных затрат на её получение.

Применение геоинформационной системы для обеспечения...

Данная работа посвящена усовершенствованию возможностей системы развлечений во время полета путем интеграции геоинформационной системы (ГИС) с технологией виртуальной реальности (ВР) с целью оптимизации и расширения возможностей пассажира при применении...

Этапы и проблемы создания электронной карты

Данная статья посвящена разработке электронных карт. Выявлены особенности растровых и векторных электронных карт. На основе проведенного исследования предлагается выделить основные проблемы электронных карт и решения этих проблем.

Задача распознавания речи и выбор оптимального сервиса для...

Сервисы распознавания подразделяются на системы с открытым и с закрытым исходным

Microsoft Speech API. Данная система распознавания речи очень схожа с Yandex SpeechKit и мало

Таким образом, возможна разработка и поддержка на Windows 2003 Server или позднее.

Приложение для повышения безопасности на улице “Safe Route”...

Многие пешеходы пользуются смартфонами и нередко попадают в ДТП при переходе через дорогу по невнимательности. Приложение “Safe Route” предназначено для повышения безопасности пешеходов при переходе через проезжую часть путём оповещения...

Похожие статьи

Обзор программных продуктов для создания веб-ориентированной...

Создание виртуальных туров, плеер для просмотра туров.

Каждое мини-изображение слайдера является настоящим панорамным снимком, размеры которого

На данный момент система находится в разработке. По мере выполнения панорамы будут выкладываться на...

Методы нахождения особых точек изображения и их дескрипторов

Рассматриваются методы нахождения особых точек и формирование их дескрипторов. Целью является исследование существующих методов поиска и определение дескрипторов особых точек для выбора лучшего соответствия между детекторами особых точек и их дескрипторов...

Использование геолокации в приложениях под Android

GPS_PROVIDER – это данные с GPS спутников. NETWORK_PROVIDER – координаты, которые можно получить через сотовую связь или WiFi.

Представленный класс будет полезен в таких областях, как социальные сервисы, основанные на геолокации, дополненная реальность или...

Разработка мобильного приложения для таксатора

Они объединяют GPS-приемник, мобильный компьютер и программное обеспечение

На базе объединения GPS-приемника в одном корпусе с мощным карманным компьютером

Таким образом, в качестве протокола обмена используются вызовы функций (API) библиотеки SQLite...

Разработка приложения «Закладки» для web-браузера

Ключевые слова: расширение для браузера, Bookmarks, Google extension API. Технология «Интернет» сейчас является наиболее приоритетным способом поиска информации, преимущественно за счёт минимизации временных затрат на её получение.

Применение геоинформационной системы для обеспечения...

Данная работа посвящена усовершенствованию возможностей системы развлечений во время полета путем интеграции геоинформационной системы (ГИС) с технологией виртуальной реальности (ВР) с целью оптимизации и расширения возможностей пассажира при применении...

Этапы и проблемы создания электронной карты

Данная статья посвящена разработке электронных карт. Выявлены особенности растровых и векторных электронных карт. На основе проведенного исследования предлагается выделить основные проблемы электронных карт и решения этих проблем.

Задача распознавания речи и выбор оптимального сервиса для...

Сервисы распознавания подразделяются на системы с открытым и с закрытым исходным

Microsoft Speech API. Данная система распознавания речи очень схожа с Yandex SpeechKit и мало

Таким образом, возможна разработка и поддержка на Windows 2003 Server или позднее.

Приложение для повышения безопасности на улице “Safe Route”...

Многие пешеходы пользуются смартфонами и нередко попадают в ДТП при переходе через дорогу по невнимательности. Приложение “Safe Route” предназначено для повышения безопасности пешеходов при переходе через проезжую часть путём оповещения...

Задать вопрос