Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Data model  



1.1  Feature  





1.2  Anchor  



1.2.1  Geometries  





1.2.2  Trackables  





1.2.3  RelativeTo  





1.2.4  ScreenAnchor  







1.3  VisualAsset  







2 History  





3 Related standards  





4 Examples  





5 References  














Augmented Reality Markup Language






Español
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


The Augmented Reality Markup Language (ARML)[1] is a data standard to describe and interact with augmented reality (AR) scenes. It has been developed within the Open Geospatial Consortium (OGC) by a dedicated ARML 2.0 Standards Working Group.[2] ARML consists of both an XML grammar to describe the location and appearance of virtual objects in the scene, as well as ECMAScript bindings to allow dynamic access to the properties of the virtual objects, as well as event handling, and is currently published in version 2.0. ARML focuses on visual augmented reality (i.e. the camera of an AR-capable device serves as the main output for augmented reality scenarios).

Data model[edit]

ARML is built on a generic object model that allows serialization in several languages. Currently, ARML defines an XML serialization, as well as a JSON serialization for the ECMAScript bindings. The ARML object model consists of three main concepts:

Feature[edit]

The definition of a Feature is reused from the Geography Markup Language (GML) and describes the physical object that should be augmented. The physical object is described by a set of metadata, including an ID, a name and a description. A Feature has one or more Anchors.

Anchor[edit]

An Anchor describes the location of the physical object in the real world. Four different Anchor types are defined in ARML:

  1. Geometries
  2. Trackables
  3. RelativeTo
  4. ScreenAnchor

Geometries[edit]

Geometries describe the location of an object through a set of fixed coordinates. WGS84 (latitude, longitude, altitude) is used as the default coordinate reference system, other arbitrary coordinate reference systems can be supplied if required. ARML allows 0- (Point), 1- (LineString) and 2-dimensional (Polygon) geometries. Geometry Anchors reuse the syntax as defined in GML3. As an example, the following snippet defines the location of the Wiener Riesenrad.

 <gml:Point gml:id="ferrisWheelViennaPoint">
  <gml:pos>
    48.216622 16.395901
  </gml:pos>
 </gml:Point>

Trackables[edit]

Trackables are patterns that are searched, recognized and tracked in the video screen coming from the camera of the device. A wide variety of different tracking technologies exist, including QR codes, Natural features, 3D and Face Tracking. As all these tracking types use different algorithms and technologies, the definition of a Trackable is abstracted and split into two parts, a Tracker and its associated Trackables. A Tracker describes the technology (or algorithm) with which its associated Trackables should be tracked, using URIs identifying the algorithm. The Trackable itself describes the pattern the algorithm should look for in the video stream.

Example: A natural feature tracker and an associated 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[edit]

RelativeTo Anchors allow the definition of a location relative to other Anchors or the user's position. The former allows the setup of a scene and the location of all included virtual objects based on a single Anchor, like a Trackable placed on a table. The latter allows for scenarios where the actual location of the user is irrelevant. The virtual objects are simply placed around the user, regardless of his or her physical location.

ScreenAnchor[edit]

Contrary to the previous three Anchor types, ScreenAnchors do not describe a location in the 3-dimensional virtual scene. Instead, they define an area on the device screen, allowing for status bars and the like.

VisualAsset[edit]

VisualAssets describe the appearance of the virtual objects in the augmented scene. ARML allows various kinds of VisualAssets to be described, including plain text, images, HTML content and 3D models. VisualAssets can be oriented (either to always automatically face the user, or to maintain a specific static orientation) and scaled. Additionally, visibility conditions can be applied (i.e. the Asset is only visible on the screen if the distance to the user is within certain boundaries).

History[edit]

In late 2009, Wikitude (formerly Mobilizy), the creators of the Wikitude World Browser, started an early initiative on creating a format all AR Browsers at that time could adhere to, called the Augmented Reality Markup Language (ARML).[3] This format is now called ARML 1.0 and serves as an input format for the Wikitude World Browser.

In late 2011, Martin Lechner, Wikitude's CTO and the main driver of the ARML initiative, established the Augmented Reality Markup Language 2.0 Standards Working Group (ARML 2.0 SWG) within the OGC.[4] Its goal was to create an internationally accepted standard for Augmented Reality, based on the ideas of ARML 1.0 and similar formats. During ISMARinAtlanta in November 2012, the first ARML 2.0 specification was officially published,[5] making ARML 2.0 an official OGC Candidate Standard.

Related standards[edit]

ARML 2.0 is reusing ideas, structure, syntax and semantics of the following existing and widely used standards:[6]

In addition, the following, ARML-independent initiatives also deal with creating standards for Augmented Reality environments:

Examples[edit]

The following example describes a 3D Model (assuming one is available on http://www.example.com/myModel.dae) on a Trackable, like a fiducial marker, located at 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>

References[edit]

  1. ^ "OGC® Augmented Reality Markup Language 2.0 (ARML 2.0) - OGC". Opengeospatial.org.
  • ^ "ARML 2.0 SWG | OGC". 2017-08-24. Archived from the original on 2017-08-24. Retrieved 2022-10-09.
  • ^ "ARML - An Augmented Reality Standard" (PDF). Perey.com. Retrieved 27 December 2018.
  • ^ "The OGC seeks comments on candidate Augmented Reality Markup Language (ARML 2.0) standard - OGC". Opengeospatial.org.
  • ^ "The OGC Forms International Augmented Reality Standards Working Group - OGC". Opengeospatial.org.
  • ^ Martin Lechner, The Augmented Reality Markup Language 2.0, Dissertation
  • ^ "Augmented Reality Application Format - MPEG". Mpeg.chiariglione.org.
  • ^ "Home - KHARMA". Kharma.gatech.edu.
  • ^ "Releases - Mobile Augmented Reality Enabler v1.0". Archived from the original on 2014-01-06. Retrieved 2013-07-22.

  • Retrieved from "https://en.wikipedia.org/w/index.php?title=Augmented_Reality_Markup_Language&oldid=1182789074"

    Categories: 
    Standards
    Markup languages
    Augmented reality
     



    This page was last edited on 31 October 2023, at 11:32 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki