Муниципалитеты и коммунальные предприятия обслуживают обширную сеть подземной и наземной инфраструктуры. Доступ к этой инфраструктуре затруднён: многие активы, такие как трубы, кабели, клапаны и другие объекты, скрыты под землёй и часто сложны, так как разные типы каналов коммунальных услуг расположены довольно близко друг к другу. Такое обстоятельство приводит к высоким затратам на любую инфраструктурную инициативу. Традиционный подход к поиску коммунальных активов основан на использовании бумажных и цифровых карт в сочетании со специализированным оборудованием, например таким, как устройство электромагнитного обнаружения [1]. Часто для определения местонахождения актива используется независимое подтверждение его другим лицом, при этом сведения основываются на записях, которые могут быть неточными или неполными. Вследствие неправильного определения места земляные работы иногда приводят к ущербу, который оценивается в миллиарды рублей. Применение дополненной реальности даёт возможность упростить процесс определения местоположения элементов инфраструктуры и улучшить его результаты с точки зрения производительности, точности и безопасности [1]. Дополненная реальность подземных инженерных коммуникаций предполагает построение моделей и визуализаций интересующих объектов и их включение в отображение видимой поверхности на экране устройства (в реальную сцену). Чтобы результат визуализации коммуникаций был актуальным или значимым, расположение их на сцене по высоте, направлению и координатам должно соответствовать расположению реальных подземных объектов [2]. Для выполнения этого требования выполняется процесс калибровки, в рамках которого определяются координаты видимых объектов, а далее к ним привязываются визуальные модели подземных коммуникаций, построенные на основе данных, введённых в информационную систему в процессе прокладки и ремонта коммуникаций. Существующие применения методов дополненной реальности либо не позволяют проводить калибровку положения по высоте, либо требуют наличия специального оборудования для калибровки и особых условий для её проведения. Целью данного исследования является разработка более простого по сравнению с существующими методами калибровки и мобильного приложения для его поддержки.
Существует много способов откалибровать положение и направление объектов в пространстве [3]. В большинстве сценариев калибровки требуется одна или несколько точек для сравнения между содержанием сцены на экране устройства и реальной ситуации.
Мобильное приложение vGIS Utilities [4], которое позволяет взаимодействовать с сервисами объектов ArcGIS (Комплекс геоинформационных программных продуктов американской компании ESRI) и BIM (Средства информационного моделирования зданий) для создания голографической проекции подземных коммуникаций и их отображения относительно местоположения и направления, предлагает два способа калибровки: vGIS и «Ходьба» [3].
Способ vGIS предлагает разделить экран на верхнюю часть, показывающую вид с камеры устройства (реальную сцену), и нижнюю часть, показывающую спутниковую карту [3]. Для калибровки направления предлагается перемещать карту, пока линия обзора не выровняется с направлением на карте, как показано на рис. 1. При использовании данного способа нельзя менять положение камеры по высоте, он годится только для калибровки направления. Способ «Ходьба» подразумевает использование внешних приборов GNSS или RTK для дополнительной точности [3]. Эти устройства позволяют сразу же определить местоположение и высоту, на которой находится смартфон, но для определения направления необходимо воспользоваться методом калибровки «Ходьба». Этот метод начинается с представления на экране устройства реального мира с помощью камеры. Дальше специальная метка располагается примерно в 10 м перед пользователем, и ему предлагается идти к ней. Для удобства на земле отображается линия от пользователя до метки, как показано на рис. 2. Пользователь должен пройти вдоль линии к метке, чтобы завершить этот метод калибровки. Однако применение этого метода калибровки не всегда возможно, поскольку пользователь не может ходить по прямой линии через узкие кварталы или неровную местность [3]. Кроме того, для использования данного метода необходимы дорогие внешние приборы GNSS или RTK.
Рис. 1. Метод калибровки vGIS [3]
Рис. 2. Метод калибровки «Ходьба» [3]
Исходя из вышеизложенного, было решено реализовать с помощью приложения для смартфона (без дополнительных приборов и больших затрат) более простой метод калибровки, который позволит одновременно калибровать местоположение, направление и высоту размещения элементов подземных коммуникаций.
Среди небольшого количества вариантов операционных систем (ОС) для реализации была выбрана ОС Android. Разработка под данную систему перспективна за счёт малой стоимости смартфонов, поддерживающих технологию дополненной реальности, множества устройств для тестирования и низкой стоимости распространения приложений на Android через магазин Google Play. Для работы с дополненной реальностью в этой ОС Google рекомендует фреймворк ARCore [5], который обеспечивает:
1. Отслеживание движения: определение положения смартфона в реальном мире.
2. Понимание окружающей среды: определение размера и местоположения всех типов поверхностей (вертикальных, горизонтальных и угловых).
Другими словами, когда пользователь перемещает свой телефон, ARCore запоминает окружение и строит собственный мир, в котором он может размещать виртуальные объекты. Фреймворк также использует технологию отслеживания движения для определения того, как некоторые объекты движутся, учитывая движения камеры пользователя. Именно поэтому объекты дополненной реальности остаются на своих местах, а не смещаются, если пользователь двигается или перемещает камеру.
Из сказанного следует, что для визуализации подземных инженерных коммуникаций достаточно использовать фреймворк ARCore, который поможет отслеживать движение смартфона, а также отображать на экране элементы дополненной реальности. Однако он не позволяет на этапе инициализации расположить все визуализации подземных коммуникаций в правильном направлении и на нужной высоте относительно видимой сцены. Предлагаемое приложение должно позволить пользователю дополнительно провести этап калибровки. Далее рассмотрим нюансы, связанные с калибровкой положения и направления.
Качество дополненной реальности зависит от соответствия между позициями и ориентациями физической камеры устройства и виртуальной камеры отображения объектов [1]. Любая погрешность в положении объектов подземных коммуникаций или ориентации устройства ухудшает точность отображения. Выделяют три ключевых свойства, которые являются типичными источниками погрешности [6]:
1. Ориентация – обычно определяется с помощью компаса на приборе.
2. Высота (Z) – определяется с помощью GPS/GNSS.
3. Положение (X, Y) – определяется с помощью GPS/GNSS, триангуляционных сетей или маяков.
На рис. 3 представлены примеры, которые иллюстрируют эти погрешности, показывая неправильное расположение элементов дополненной реальности относительно реального мира. На левом примере показана погрешность ориентации. Здесь жёлтой пунктирной линией показано реальное расположение в пространстве канализационной трубы, а красная линия – это элемент дополненной реальности, у которого неправильно задано направление. Средний пример, представленный на рис. 3, демонстрирует погрешность высоты. В данном случае видно, что элементы дополненной реальности (канализационные люки и трубы) показаны над поверхностью земли, а не под ней. Последний пример иллюстрирует погрешность положения. Жёлтой пунктирной линией показано реальное расположение в пространстве канализационной трубы, а сплошной – ошибочное.
Рис. 3. Примеры погрешностей при визуализации дополненной реальности
Одна из основных проблем калибровки, с которой пришлось столкнуться при создании мобильного приложения с дополненной реальностью – это получение Z-значений. Существуют различные по точности методы определения и представления высоты разными типами устройств. Проведённый анализ показал:
1. Устройства Android и iOS по-разному определяют значение высоты над уровнем моря.
2. Высота над уровнем моря – наименее точное измерение Z, предлагаемое GPS/GNSS. Даже в идеальных условиях устройство может сообщать о высоте на 10–100 см выше или ниже истинного значения.
3. Устройства GPS используют разные системы отсчёта высоты [7]:
- геодезическая (высота над эллипсом поверхности) – WGS84 – Height Above Ellipsoid (HAE);
- ортометрическая (высота над уровнем моря) – Height Above Mean Sea Level (MSL).
На основе проведённого анализа были приняты следующие решения:
1. Разработать инструментальную систему для ОС Android и получать значения высоты с помощью встроенных функций GPS, представляемых в системе отсчёта HAE. Это позволит в будущем взаимодействовать с сервисами объектов ArcGIS, которые поддерживают данные о подземных коммуникациях, представленные в системе HAE [7].
2. Для снижения погрешности оценки высоты, получаемой с помощью GPS, разработать метод калибровки, основанный на размещении смартфона в точке пространства с известными координатами и не требующий дополнительных устройств.
Предлагаемый метод калибровки
Метод включает сценарий проведения калибровки и инструментальное мобильное приложение, построенное на основе фреймворка ARCore. Сценарий калибровки местоположения и направления, который проще в реализации по сравнению с ранее рассмотренными, включает следующие шаги:
1. Определить позиции, имеющие идентифицируемые объекты как на карте, так и в реальном мире, и разместить смартфон в одной из таких позиций. Хорошие стартовые места включают объекты, такие как крышки люков, ливневые канализации, дорожные разметки и другие [1].
2. С помощью GPS определить положение (X, Y) и отметить позицию на спутниковой карте, как показано синей точкой на рис. 4. Удостовериться, что позиция на карте соответствует той же позиции в реальном мире. То есть если пользователь в данный момент находится во дворе жилого комплекса, то и точка на карте тоже должна быть в том месте, где располагается пользователь.
Рис. 4. Определение местоположения
Рис. 5. Калибровка направления
3. Перейти в режим дополненной реальности и запустить режим калибровки по направлению, то есть показать на экране сцену реального мира с помощью камеры на устройстве и поверх добавить карту с прозрачностью 50 % в качестве элемента дополненной реальности, как показано на рис. 5. Это позволит дать пользователю визуальный объект для сравнения.
4. Определить объект, который хорошо виден как на карте, так и в реальном мире. Идеальное расстояние до этой цели должно быть от 50 до 100 м. На рис. 5 в качестве такого объекта было выбрано здание детского сада (отмечено красной стрелкой для наглядности). Точно такое же здание должно быть видно на спутниковой карте (отмечено красным прямоугольником для наглядности).
5. Поворачивать спутниковую карту, чтобы выбранный объект на карте совпадал по направлению с реальным объектом. Для удобства можно использовать джойстик (heading), расположенный внизу экрана, который поворачивает карту (рис. 5).
6. В случае если объект дополненной реальности находится не на нужной высоте, с помощью другого джойстика (altitude) поднять или опустить визуализацию объектов инженерных коммуникаций по высоте.
7. Зафиксировать положение и выключить режим калибровки.
Далее приложение на основе AR-фреймворк (ARCore) может быть использовано для точной обработки изменений положения пользователя.
Необходимое приложение было разработано для операционной системы Android, на языке программирования Java, в среде разработки Android Studio. Приложение реализует следующие функции:
2. Определение текущего местоположения пользователя.
3. Построение на карте линии инженерных коммуникаций.
4. Переход в режим дополненной реальности для визуализации объектов инженерных коммуникаций.
5. Калибровка по направлению и высоте.
Мобильное приложение опубликовано в Google Play [8].
Тестовые испытания показали, что представленный метод имеет меньшую точность по сравнению с другими распространёнными методами, но является более дешёвым и простым в реализации. Так, погрешность определения местоположения составила максимум 1 м, направления – 15 °, высоты – 1 м.
Выводы
В рамках проведённого исследования получены следующие результаты:
1. Анализ существующих методов калибровки положения и направления визуализаций подземных объектов на экранах приборов показал необходимость использования специального оборудования и условий для ее проведения.
2. Предложен простой метод калибровки положения и направления, основанный на размещении смартфона в точке пространства с известными координатами и не требующий специального дополнительного оборудования.
3. Разработано и опубликовано в Google Play мобильное приложение поддержки предложенного метода калибровки, что позволит оценить его преимущество и недостатки широкому кругу разработчиков и пользователей.
4. Практические испытания показали, что данный способ с определёнными погрешностями справляется с калибровкой, а также прост при реализации.
Дальнейшие исследования предусматривают поиск путей снижения погрешностей предложенного метода и обеспечение его взаимодействия с объектами ArcGis.