Исследование методов геопривязки данных для сервисов дополненной реальности

NovaInfo 42, с.67-74, скачать PDF
Опубликовано
Раздел: Технические науки
Просмотров за месяц: 10
CC BY-NC

Аннотация

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

Ключевые слова

МОБИЛЬНОЕ ПРИЛОЖЕНИЕ, ГЕОЛОКАЦИЯ, ДОПОЛНЕННАЯ РЕАЛЬНОСТЬ, МОБИЛЬНЫЙ, ПРИЛОЖЕНИЕ

Текст научной работы

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

Дополненная реальность активно используется в медицине, сфере обучения [6] и развлечения. Также большую популярность набирают мобильные приложения дополненной реальности.

Важная составляющая приложений дополненной реальности — геолокация, отвечающая за точность определения местоположения реальных объектов. С помощью геолокации можно определить направление «взгляда» камеры, расстояние до объекта. Именно геолокация отвечает за то, насколько точно будут отображаться на экране объекты [7].

Именно поэтому проблема изучения и повышения эффективности отображения информации в мобильных приложениях дополненной реальности является актуальной проблемой на сегодняшний день [1].

Целью данной работы является повышение эффективности определения местоположения пользователя.

Основные задачи исследования:

  1. Анализ современных технологий создания дополненной реальности в мобильных приложениях;
  2. Анализ современных методов геопривязки данных в сервисах дополненной реальности.

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

В таблице 1 приведены основные характеристики самых популярных инструментальных средств.

Таблица 1. сравнение популярных инструментальных средств

Название

Тип

Поддерживаемые платформы

Возможности

Wikitude SDK

Бесплатный вариант и коммерческая версия

IOS, Android

GPS, сенсоры, маркеры, наличие API

Metaio SDK

Бесплатный вариант и коммерческая версия

IOS, Android, Web, Windows

Отслеживание объектов в 3D, GPS, сенсоры, маркеры, наличие API

BeyondAR

Бесплатный вариант (Open source)

IOS, Android

GPS, сенсоры, маркеры, наличие API

Layar SDK

Бесплатный вариант и коммерческая версия

IOS, Android, Web

GPS, сенсоры, маркеры, наличие API

Aurasma

Бесплатный вариант и коммерческая версия

IOS, Android

Поиск объектов, наличие API

Qualcomm Vuforia

Бесплатный вариант и коммерческая версия

IOS, Android

Маркеры, наличие API

Metaio SDK — это мощный и функциональный фреймворк, состоящий из различных компонентов, таких как: рендеринг, захват изображения, отслеживание и сенсоры. Metaio совместим со всеми основными платформами: IOS, Android, Windows.

Qualcom Vuforia использует стабильную, эффективную технику распознавания изображений. SDK состоит из различных компонентов: система управления целями, облачная база данных для объектов и устройств. Поддерживает системы IOS и Android.

Wikitude SDK и Layar включают в себя распознавание изображений, отслеживание объектов, поддержку 3D моделей. SDK в основном ориентированы на Web приложения, но неплохо справляются и с мобильными.

Aurasma достаточно мощная система, поддерживающая IOS и Android платформы. Но подходит в большей степени для создания игр.

BeyondAR — мощный продукт, предназначенный для создания игр и приложений дополненной реальности. Поддерживает Android и IOS платформы. Главным отличием от вышеперечисленных инструментов является то, что платформа абсолютно бесплатна, исходный код находится в открытом доступе.

Геотаргетинг (геопривязка) — в веб-разработке и интернет-маркетинге, метод выдачи посетителю содержимого, соответствующего его географическому положению.

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

На данный момент существуют следующие способы определения местоположения пользователя:

  • IP тагретинг — позволяет определить географическое местоположение пользователя по его IP адресу, позволяя привязать данные к тому месту, где пользователь заходит в интернет. Данный метод является наиболее универсальным и используется в первую очередь в web разработках и мобильных приложениях. Он дополняет информацию в тех случаях, когда другие методы работают недостаточно хорошо, например, когда в настройках телефона пользователя выключен GPS. Не требуется вмешательства пользователя. Тем не менее, этот метод определяет положение пользователя до уровня почтового кода/индекса, что делает его не самым точным;
  • Куки файлы, сохранённые в браузере пользователя, позволяют хранить информацию о ранее посещённых местах. Тем не менее, этот метод работает, если пользователь не удаляет куки-файлы и разрешает определение своего местоположения;
  • GPS — Глобальная система позиционирования. Спутниковая система навигации, обеспечивающая измерение расстояния, времени и определяющая местоположение во всемирной системе координат. Этот метод является наиболее точным в определении местоположения пользователя, до нескольких метров. Доступен метод только для пользователей телефонов и смартфонов, в том случае, если они разрешили в настройках получение и отправку информации спутникам. Данная технология не очень точно работает в условиях плотной городской застройки, туннелях и рядом с небоскребами;
  • Триангуляция посредством WiFi — происходит поиск ближайших WiFi сетей, измеряется сила сигнала и сравнивается с базой данных. В городские районы, содержащие, как правило, большое количество wifi сетей, позволяют получить точные достаточно данные. Для поддержания точности, провайдеры должны постоянно обновлять местоположения wifi точек. Точность, как правило, рассчитывается в районе сотни метров. Однако местоположение определятся не мгновенно, и пользователь может находиться вне зоны видимости сетей wifi;
  • Посредством 2G/3G сетей — крайне неточный, но довольно распространённый метод, позволяющий определить местоположение пользователя исходя из сигнала сети. Локация пользователя тем точнее, чем ближе к нему вышка сотовой связи.

Соответственно главный недостаток метода — невозможность достаточно точно определить положение в дали от вышек сотовой связи (например в деревне, горах);

Не все из описанных выше методов применяются в мобильных технологиях. Наиболее часто используемыми являются методы определения положения через спутники GPS (поскольку данная система присутствует во всех современных смартфонах), посредством WiFi или GSM сетей.

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

Одним из основных критериев приложений дополненной реальности является эффективность визуализации. Данный параметр влияет на:

  • Точность расчёта расстояния до объекта;
  • Точность расположения объекта дополненной реальности на экране смартфона;
  • Размер объекта.

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

  • Угол обзора камеры;
  • Расстояние области видимости.

Прежде всего, следует понимать, что угол обзора смартфона зависит от его ориентации (альбомная или портретная).

В своей работе работе [2] Dalmo Cirne рассматривает проблему корректного отображения элементов дополненной реальности в мобильном приложении, приводит математические выкладки для расчета расстояния до объекта, размера объекта на экране пользователя, основываясь на его местоположении.

Однако следует учесть, что данный метод не предусматривает высоты объекта.

Предположим, что объект находится на некоторой высоте h относительно уровня моря. Для подобных расчётов необходимо знать величину h — высота объекта относительно уровня моря. Однако данная величина, полученная посредством спутников GPS неприемлема (погрешность полученных значений будет крайне высока). В связи с этим возникает необходимость получить значение высоты расположения объекта относительно уровня моря.

Для начала надо разобраться, каким образом GPS получает информацию о высоте объекта.

Земля имеет форму эллипсоида, а не шара. Поэтому спутники GPS используют, в качестве этой формы, стандарт WGS-84 — опорный эллипсоид, представленный на рисунке 1.

опорный эллипсоид.
Рисунок 1. опорный эллипсоид

GPS спутникам необходимо знать уровень моря во всех точках земли. Для этих целей была составлена карта уровня моря. Потому что в данном случае высота — это вертикальная дистанция от точки до уровня моря.

уровень надо морем.
Рисунок 2. уровень надо морем

Однако GPS спутники сообщают высоту не относительно уровня моря, а относительно линии эллипсоида. Именно поэтому данные со спутников GPS имеют достаточно высокую погрешность и в расчётах их использовать не рекомендуется.

Таким образом, необходимо решить данную задачу и уменьшить погрешность значения вы соты объекта над уровнем моря со спутников GPS.

На рисунке 3 схематично изображены: линия опорного эллипсоида, линия уровня моря, и поверхность Земли.

разница в уровнях.
Рисунок 3. разница в уровнях

Соответственно, для определения реальной высоты относительно уровня моря необходимо от высоты эллипсоида отнять реальный уровень моря:

h=h_{elip}-h_{truesea}

Высота относительно эллипсоида может быть получена посредством GPS, высоту уровня моря в конкретной точке можно получить с помощью различных online сервисов, для мобильных устройств под операционной системой Android разработано решение в виде Google Elevation API от Google.

Таким образом, имеем координаты объекта в трехмерном пространстве.

Без учета высоты, расстояние между двумя точками можно рассчитать исходя из теоремы Пифагора:

d=\sqrt{a^{2}-b^{2}},

где а — положение первого объекта, заданного широтой и долготой, b — положение второго объекта, заданного широтой и долготой.

точки в двумерном пространстве.
Рисунок 4. точки в двумерном пространстве

На рисунке 5 представлено расположение точек, приближенное к реальному — в трехмерном пространстве.

точки в трехмерном пространстве.
Рисунок 5. точки в трехмерном пространстве

Зачастую объекты, расстояние между которыми требуется определить, находятся на различных уровнях относительно уровня моря, соответственно расстояние между ними с учетом этой высоты и без неё будет отличаться. Добавление параметра высоты объектов относительно уровня моря позволит повысить точность определения положения объектов. Из рисунка 6 видно, что расстояние от точки a до точки с (расстояние без учета высоты) меньше, чем расстояние от точки а до точки b (реальное расстояние с учетом высоты), что говорит о погрешностях вычислений в реальных условиях.

Таким образом, получаем точки а и b, представленные тремя координатами:

a=\begin{bmatrix}a_{x}\\a_{y}\\a_{z}\end{bmatrix},

где ах — долгота, ау – широта, аz — высота (выражена в метрах на уровнем моря).

b=\begin{bmatrix}b_{x}\\b_{y}\\b_{z}\end{bmatrix},

где bх — долгота, bу- широта, bz — высота (выражена в метрах на уровнем моря).

Итоговая формула, для расчета расстояния между двумя точками по теореме Пифагора:

d=\sqrt{(a_{x}-b_{x})^{2}+(a_{y}-b_{y})^{2}+(a_{z}-b_{z})^{2}}

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

В таблице 2 приведен пример расчета расстояния между двумя точками с использованием старого и нового методов.

Таблица 2. сравнение результатов двух методов

Точка 1

Точка 2

Расстояние, м

Погрешность, %

Старый способ

Новый способ

Абс.

Отн.

1

Широта — 48.785985

Долгота — 44.785122

Высота — 0

Широта — 48.785985

Долгота — 44.785122

Высота — 12

151.154

151.756

3.82

2.53

2

Широта — 48.786709

Долгота — 44.784741

Высота — 0

Широта — 48.788005

Долгота — 44.783712

Высота — 25

162.627

164.662

12.93

7.90

3

Широта — 48.786709

Долгота — 44.784741

Высота — 32

Широта — 48.788005

Долгота — 44.783712

Высота — 2

347.356

349.707

14.94

4.29

4

Широта — 48.786709

Долгота — 44.784741

Высота — 0

Широта — 48.788005

Долгота — 44.783712

Высота — 5

347.356

348.453

7.97

2.28

5

Широта — 48.785896

Долгота — 44.751011

Высота — 10

Широта — 48.785807

Долгота — 44.746861

Высота — 55

304.190

308.425

26.91

8.78

Из таблицы видно, чем больше расстояние между объектами и больше разница в высоте, тем большую погрешность вычислений даёт старый способ вычисления расстояния.

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

Читайте также

Список литературы

  1. Borko Furht (Eds.). Handbook of Augmented Reality / Borko Furht - Florida Atlantic University (USA): Springer, 2011. – с. 1-43.
  2. Dalmo Cirne. Augmented Reality Geolocation Math: [Электронный ресурс], 2013. – Режим доступа: https://app.box.com/s/9gvxr3303jp64l2b0omk, свободный.
  3. Лясин Д.Н., Мамедов М.А. Разработка мобильного приложения с использованием технологий дополненной реальности для отображения контекстно-информационного слоя // NovaInfo.Ru. 2015. Т. 1. № 34. С. 7-19.
  4. Лясин Д.Н., Сорокина О.Д. Информационная система «виртуальный навигатор по институту» // NovaInfo.Ru. 2015. Т. 1. № 34. С. 55-61.
  5. Лясин Д.Н., Саразов А.В. Разработка справочно-информационной системы энергетического оборудования с использованием элементов дополненной реальности (на примере лабораторной установки «ветротурбина» и мобильного энергетического комплекса) // Современные научные исследования и инновации. 2014. № 11-1 (43). С. 81-86.
  6. Рыбанов А.А., Макушкина Л.А., Фадеева М.В. Технология повышения эффективности информационной поддержки, мониторинга и контроля за процессом выполнения выпускных квалификационных работ // Известия Волгоградского государственного технического университета. 2013. Т. 10. № 13 (116). С. 122-125.
  7. Шлыков А.А., Абрамова О.Ф. Исследование проблемы навигации внутри современных зданий со сложной архитектурой // Современная техника и технологии. 2014. № 2 (30). С. 5.

Цитировать

Иванов, А.Е. Исследование методов геопривязки данных для сервисов дополненной реальности / А.Е. Иванов, Д.Н. Лясин. — Текст : электронный // NovaInfo, 2016. — № 42. — С. 67-74. — URL: https://novainfo.ru/article/4895 (дата обращения: 17.05.2022).

Поделиться