Язык разметки дополненной реальности
Язык разметки дополненной реальности ( ARML ) [ 1 ] — это стандарт данных для описания и взаимодействия со сценами дополненной реальности (AR). Он был разработан в рамках Открытого геопространственного консорциума (OGC) специальной рабочей группой по стандартам ARML 2.0. [ 2 ] ARML состоит как из грамматики XML для описания местоположения и внешнего вида виртуальных объектов на сцене, так и из привязок ECMAScript, обеспечивающих динамический доступ к свойствам виртуальных объектов, а также обработки событий, и в настоящее время опубликован в версии 2.0. . ARML фокусируется на визуальной дополненной реальности (т. е. камера устройства с поддержкой AR служит основным выходом для сценариев дополненной реальности).
Модель данных
[ редактировать ]ARML построен на универсальной объектной модели, которая позволяет сериализовать на нескольких языках. В настоящее время ARML определяет сериализацию XML, а также сериализацию JSON для привязок ECMAScript. Объектная модель ARML состоит из трех основных концепций:
- Характеристики представляют собой физический объект, который следует дополнить.
- VisualAssets описывает внешний вид виртуального объекта в дополненной сцене.
- Якоря описывают пространственные отношения между физическим и виртуальным объектом.
Особенность
[ редактировать ]Определение объекта повторно используется из языка географической разметки (GML) и описывает физический объект, который следует расширить. Физический объект описывается набором метаданных, включая идентификатор, имя и описание. Функция имеет один или несколько якорей.
Якорь
[ редактировать ]Якорь описывает местоположение физического объекта в реальном мире. В ARML определены четыре различных типа привязки:
- Геометрии
- Треки
- ОтносительноТо
- ЭкранЯкорь
Геометрии
[ редактировать ]Геометрия описывает местоположение объекта через набор фиксированных координат. WGS84 (широта, долгота, высота) используется в качестве системы координат по умолчанию, при необходимости могут быть предоставлены другие произвольные системы координат. ARML допускает 0- (точку), 1- (линейную строку) и 2-мерную (многоугольник) геометрию. Геометрические привязки повторно используют синтаксис, определенный в GML3. В качестве примера следующий фрагмент определяет местоположение Wiener Riesenrad .
<gml:Point gml:id="ferrisWheelViennaPoint">
<gml:pos>
48.216622 16.395901
</gml:pos>
</gml:Point>
Треки
[ редактировать ]Trackables — это шаблоны, которые ищутся, распознаются и отслеживаются на видеоэкране, поступающем с камеры устройства. Существует множество различных технологий отслеживания, включая QR-коды , естественные особенности , 3D и отслеживание лиц. Поскольку все эти типы отслеживания используют разные алгоритмы и технологии, определение Trackable абстрактно и разделено на две части: Tracker и связанные с ним Trackables . Трекер описывает технологию (или алгоритм), с помощью которой должны отслеживаться связанные с ним отслеживаемые объекты, используя URI, идентифицирующие алгоритм. Сам Trackable описывает шаблон, который алгоритм должен искать в видеопотоке.
Пример: средство отслеживания естественных функций и связанный с ним отслеживаемый объект.
<Tracker id="defaultImageTracker">
<uri xlink:href="http://opengeospatial.org/arml/tracker/genericImageTracker" />
</Tracker>
<Trackable>
<config>
<tracker xlink:href="#defaultImageTracker" />
<src>http://www.example.com/myMarker.jpg</src>
</config>
<size>0.20</size>
</Trackable>
ОтносительноТо
[ редактировать ]Якоря RelativeTo позволяют определять местоположение относительно других якорей или положения пользователя. Первый позволяет настраивать сцену и расположение всех включенных виртуальных объектов на основе одного якоря, например, отслеживаемого объекта, размещенного на столе. Последнее позволяет использовать сценарии, в которых фактическое местоположение пользователя не имеет значения. Виртуальные объекты просто размещаются вокруг пользователя, независимо от его физического местоположения.
ЭкранЯкорь
[ редактировать ]В отличие от трех предыдущих типов якорей, ScreenAnchors не описывают местоположение в трехмерной виртуальной сцене. Вместо этого они определяют область на экране устройства, позволяющую отображать строки состояния и тому подобное.
ВисуалАссет
[ редактировать ]VisualAssets описывают внешний вид виртуальных объектов в дополненной сцене. ARML позволяет описывать различные виды VisualAssets, включая простой текст, изображения, HTML-контент и 3D-модели. VisualAssets можно ориентировать (либо всегда автоматически смотреть на пользователя, либо поддерживать определенную статическую ориентацию) и масштабировать. Дополнительно могут быть применены условия видимости (т. е. Актив виден на экране только в том случае, если расстояние до пользователя находится в определенных границах).
История
[ редактировать ]В конце 2009 года компания Wikitude (ранее Mobilizy), создатели Wikitude World Browser, начали раннюю инициативу по созданию формата, которому могли бы следовать все AR-браузеры того времени, под названием «Язык разметки дополненной реальности» (ARML). [ 3 ] Этот формат теперь называется ARML 1.0 и служит входным форматом для Wikitude World Browser.
В конце 2011 года Мартин Лехнер, технический директор Wikitude и главный инициатор инициативы ARML, учредил рабочую группу по стандартам языка разметки дополненной реальности 2.0 (ARML 2.0 SWG) в рамках OGC. [ 4 ] Его целью было создание международно признанного стандарта дополненной реальности, основанного на идеях ARML 1.0 и подобных форматов. Во время ISMAR в Атланте в ноябре 2012 года была официально опубликована первая спецификация ARML 2.0. [ 5 ] делая ARML 2.0 официальным стандартом-кандидатом OGC.
Сопутствующие стандарты
[ редактировать ]ARML 2.0 повторно использует идеи, структуру, синтаксис и семантику следующих существующих и широко используемых стандартов: [ 6 ]
- Язык разметки гипертекста , ECMAScript ( JavaScript ) и каскадные таблицы стилей
- Язык разметки географии
- Язык разметки Keyhole
- СОБРАНО
- XPath 2.0
Кроме того, следующие независимые от ARML инициативы также связаны с созданием стандартов для сред дополненной реальности:
- Формат приложений дополненной реальности (ARAF) [ 7 ] разработано в рамках ISO / MPEG
- КАРМЛ [ 8 ] разработан Технологическим институтом Джорджии
- МобАР [ 9 ] разработан в рамках Open Mobile Alliance (OMA)
Примеры
[ редактировать ]В следующем примере описывается 3D-модель (при условии, что она доступна по адресу http://www.example.com/myModel.dae ) на отслеживаемом объекте, например, реперный маркер, расположенный по адресу http://www.example.com/myMarker. jpg :
<arml>
<ARElements>
<!-- register the Tracker to track a generic image -->
<Tracker id="defaultImageTracker">
<uri xlink:href="http://opengeospatial.org/arml/tracker/genericImageTracker" />
</Tracker>
<!-- define the artificial marker the Model will be placed on top of -->
<Trackable>
<assets>
<!-- define the 3D Model that should be visible on top of the marker -->
<Model>
<href xlink:href="http://www.example.com/myModel.dae" />
</Model>
</assets>
<config>
<tracker xlink:href="#defaultImageTracker" />
<src>http://www.example.com/myMarker.jpg</src>
</config>
<size>0.20</size>
</Trackable>
</ARElements>
</arml>
Ссылки
[ редактировать ]- ^ «Язык разметки дополненной реальности OGC® 2.0 (ARML 2.0) — OGC» . Opengeospatial.org .
- ^ «ARML 2.0 SWG | OGC» . 24 августа 2017 г. Архивировано из оригинала 24 августа 2017 г. Проверено 9 октября 2022 г.
- ^ «ARML — стандарт дополненной реальности» (PDF) . Перей.com . Проверено 27 декабря 2018 г.
- ^ «OGC ищет комментарии по кандидату на стандарт языка разметки дополненной реальности (ARML 2.0) — OGC» . Opengeospatial.org .
- ^ «OGC формирует Международную рабочую группу по стандартам дополненной реальности — OGC» . Opengeospatial.org .
- ^ Мартин Лехнер, Язык разметки дополненной реальности 2.0, Диссертация
- ^ «Формат приложений дополненной реальности — MPEG» . Mpeg.chiariglione.org .
- ^ «Дом – ХАРМА» . Kharma.gatech.edu .
- ^ «Релизы — Mobile Augmented Reality Enabler v1.0» . Архивировано из оригинала 6 января 2014 г. Проверено 22 июля 2013 г.