Morley, Jeremy (Ordnance Survey)
Perey, Christine (Open AR Cloud Association)
Vinje, Jan-Erik (Open AR Cloud Association)
Download Charter document
Purpose of the GeoPose Standards Working Group
All physical world objects inherently have a geographically-anchored pose. Unfortunately, there is not a standard for universally expressing the pose in a manner which can be interpreted and used by modern computing platforms. The main purpose of this SWG will be to develop and propose a standard for geographically-anchored pose (GeoPose) with 6 degrees of freedom referenced to one or more standardized Coordinate Reference Systems (CRSs).
Definition of GeoPose
A real object in space can have three components of translation – up and down (z), left and right (x) and forward and backward (y) and three components of rotation – Pitch, Roll and Yaw. Hence the real object has six degrees of freedom.
The combination of position and orientation with 6 degrees of freedom of objects in computer graphics and robotics are usually referred to as the object’s “pose.” Pose can be expressed as being in relation to other objects and/or to the user. Some part of the object must be recognized as the anchor (or origin) of the position. When a pose is defined relative to a geographical frame of reference or coordinate system, it will be called a geographically-anchored pose, or GeoPose for short.
Uses for GeoPose
An object with GeoPose may be any real physical object. This includes object such as an AR display device (proxy for a user’s eyes), vehicle, robot, or a park bench. It may also be a digital object like a BIM model, a computer game asset, the origin and orientation of the local coordinate system of an AR device, or a point-cloud dataset.
When the GeoPose of both real and virtual objects include the current position and orientation of the objects in a way that is universally understood, the interactions between the objects and an object and its location can be put to many uses. It is also important to note that many objects move with respect to a common frame of reference (and one another). Their positions and orientations can vary over time.
The ability to specify the GeoPose of any object enables us to represent any object in a universally agreed upon way for real world 3D spatial computing systems, such as those under development for autonomous vehicles or those used by augmented reality (AR) or 3D map solutions. In addition, the pose of any object can be encoded consistently in a digital representation of the physical world or any part therein (i.e., digital twin).
The proposed standard will provide an interoperable way to seamlessly express, record, and share the GeoPose of objects in an entirely consistent manner across different applications, users, devices, services, and platforms which adopt the standard or are able to translate/exchange the GeoPose into another CRS.
One example of the benefit of a universally consistent GeoPose is in a traffic situation. The same real-time GeoPose of a vehicle could be shared and displayed in different systems including:
- a traffic visualization on a screen in another car,
- shown directly at its physical location in the AR glasses of a pedestrian that is around the corner for the car, or
- in the real time world model used by a delivery robot to help it navigate the world autonomously.
Business Value Proposition
The ability to capture GeoPoses and to store them in consistent and non-proprietary manner, as well as to easily transmit the GeoPose of real and digital objects between users, apps, devices, services, and other systems will provide opportunities for a wide range of industries and use cases.
There are some unique generic advantages of standardizing a pose definition with a shared geospatial frame of reference, compared to a pose definition that has only a local frame of reference. These advantages will offer new value across many use cases.
Benefits to end-users, content-creators and developers:
A shared frame of reference enables interoperability between different techniques to obtain GeoPose for AR devices: A single universal frame of reference for GeoPose makes it entirely possible to represent digital objects in the real world with the same geospatial position and orientation for multiple AR users who may have systems that use very different methods to obtain their device’s GeoPose. Any future method or service that provides GeoPose in the same frame of reference will provide a consistent result, making the approach both backwards and forwards compatible.
This level of interoperability stands in contrast with anchoring content on or in the physical world using methods that do not share the same frame of reference – like storing a pose relative to a set of local features as is done with shared cloud anchors used by different vendors today (e.g., ARCore Cloud Anchors, ARKit ARWorldMap, Microsoft Azure Spatial Anchors, Magic Leap’s Map Merge, etc). Using the GeoPose specification, many users will be able to interact with the same content, but using different devices and services. They will not be required to utilize the same exact method to obtain their pose relative to the local features. This will reduce reliance on a specific approach and reduce risk of service provider lock-in.
Possibility to place content relative to the real world declaratively: A universal frame of reference for declaring a digital object’s exact geographical location and with an exact orientation will enable many new use cases. Any user or system will be able to declare the specific GeoPose of a digital object, regardless of the geographic location of the user or system.
For example, an architect may place a proposed building at the location it is intended to be built without actually being at the location. The architect might use digital 3d-maps of the area to provide assurance that the building is positioned correctly. Since the frame of reference is universal, a person at the location will be able to see and move around the designated location and experience the proposed building at a 1:1 scale representation, positioned and oriented exactly as the architect intended.
Possibility to display digital objects relative to a moving frame of reference simultaneously as displaying digital objects placed relative to the stationary world: Current mobile AR Software Development Kits (SDKs) like ARCore or ARKit are unable to display objects relative to a moving frame of reference when a user is inside of that moving frame of reference. If a user is inside a train or a bus and places digital objects inside the vehicle, the object is likely to drift away as the vehicle moves in ways that cause acceleration or deceleration. However, if the vehicle itself transmitted a stream of GeoPoses to the devices and services subscribed to the object, the AR software on the device should be able to compensate for those movements in the real world.
An AR-system may offer a user the option of placing content relative to the moving vehicle or relative to the world outside. The same principle applies to floors of tall buildings that may move a few feet back and forth during strong winds or earthquakes. The building could be equipped with sensors allowing it to provide a real-time data stream of GeoPoses for the floor and enable AR solutions to account for those movements both for placing content inside the floor of the building or outside of the building.
Another example is for a multi-user application. To be able to attach digital objects relative to a user as the user moves around will offer compelling game dynamics that are more familiar in their interactions with the real world. Other users may thus see how those objects “follow” the users movements as if being part of that user.
Examples of industries with high value use cases
Construction and engineering for buildings and physical infrastructure. The industry already utilizes GIS and geospatial data to a high degree and is increasingly starting to make use of BIM models that personnel can view and interact with onsite using AR/MR-glasses. Standardized GeoPose would be of great value for this industry reducing the need for manual calibration steps or maybe even the need for expensive, highly-accurate GPS receivers on each device.
Mobility/transportation: Autonomous vehicles already use services to locate relative to geospatial data to obtain a form of GeoPose of the vehicle as well as estimating the GeoPose of vehicles nearby based on processing sensor data with machine learning. With standardized GeoPose, vehicles can share their GeoPose with nearby vehicles as well as pedestrians even if they are obscured by landscape, buildings, or other objects. Transportation companies with fleets of vehicles could use GeoPose to transmit not only the location of each vehicle, but may also be able to provide services to passengers describing where the vehicle of interest is as well as using live GeoPose streams to correct for movements to allow correct view of virtual objects positioned both inside and outside of the vehicles.
Tourism: Companies in this industry might enrich the experience of a tourist site by creating accurately positioned interactive content that might draw tourists to the particular site. The content may be both free and available for purchase, but is highly beneficial in that no special configurations need to be made to display the content for the user. As long as their AR/MR devices have a GeoPose and the content has a GeoPose the experiences should work seamlessly for everyone.
Military/ law enforcement: Maintaining an overview of the accurate position and orientation of personnel, vehicles, suspects/enemies, civilians is a major challenge in any complex operation. Communicating this type of information verbally to all personnel is likely to be infeasible, slow and error prone when the number of moving entities in the situation is above a certain level. However, with GeoPose for all the different entities are conveyed digitally and displayed visually to all personnel via AR-display systems it is easier for everyone to have a correct view of the situation, saving lives and gaining a tactical advantage.
Spatial computing, in general is going to be increasingly central to our lives, economy and cultures in the future and it is reasonable to expect that GeoPose will provide benefit to most industries and a large section of human activities in the years to come.
Scope of Work
GeoPose SWG objectives
Flexibility in the geographical frame of reference for GeoPose
The initial proposal for the standard is to include support for multiple CRSs, including dynamic CRSs. The submitters recognize that most users of GeoPose in consumer or non-technical applications do not and need not understand the complexity of CRS transformation, so the standard is intended to minimize required user and developer familiarity with CRSs. A consideration will be made to use WGS84 (EPSG 4326) as a default CRS if none is given in the data. The SWG will assess a means to identify what part of the object is the anchor or origin of the position.
The standard is proposed to represent both real physical objects and digital objects. Uncertainty in the geographic position will be described for: (1) objects getting their position from a sensor and (2) objects from a geospatial data set which itself has uncertainty metadata. Those objects which are created or declared to exist in a digital environment with no other basis for establishing location will not have an uncertainty in their location. The base pose standard may not need to contain any fields for capturing uncertainty. The use cases where uncertainty is relevant might want to either extend the pose standard with extra fields making or make a structure that wraps to parts - one with a standardized pose object and one with the uncertainty metadata related to that object. The latter is the initial proposal.
The SWG will investigate the relationship between the GeoPoses of the sensor, display, and objects.
The SWG will consider the circumstances under which a temporal component is a part of a GeoPose and the options around optional parameters or extensions to the standard.
A standard data exchange format for GeoPose
The initial proposal is to define the standard and to illustrate it with a JSON encoding. The data structure will be defined with a limited set of pre-defined fields, building on the default practice of using JSON to store and exchange more or less any data today.
Explore and test practical use cases for GeoPose
To determine how well the proposed standard works in real world spatial computing scenarios and to assess its ease of use for average developers, there will be multiple implementations and use cases examined. Best practices will be compiled when possible.
Assess the standard with respect to the OGC Standards Baseline
Examine whether the proposed standard maintains interoperability with the OGC Standards Baseline and assess whether extension of existing standards could achieve the goals of GeoPose. The SWG will also explore the need to develop additional GeoPose related standards to better support the use cases explored in the 3rd objective.
Statement of relationship of planned work to the current OGC standards baseline
The proposed GeoPose standard will rely upon existing OGC Abstract Specification Topics for basic geometry, coordinate reference depiction, and metadata. Where appropriate, other OGC standards may be informatively or normatively referenced. GeoPose is a subset of the information contained in the existing OGC ARML 2.0 standard (ARML) and this new work may supersede some of the functionality in ARML. However, ARML will be used for key concepts in a GeoPose standard.
Existing OGC standards provide information on object and camera position and orientation and these standards will be reviewed to see whether a more generic GeoPose standard could be substituted and referenced for these capabilities. Two cases are as follows:
· [OGC 15-001r4] OGC 3D Portrayal Service 1.0 (the ViewpointHint parameter for the camera); and
· [OGC 18-075] OGC Moving Features Encoding Part 1: XML Core (a “leaf” as defined by ISO 19141:2008)
What is Out of Scope?
The GeoPose SWG does not propose a full replacement of ARML at this time. The SWG charter may be expanded in the future to cover much of what currently resides in ARML leveraging more recent trends in information technology.
Specific Contribution of Existing Work as a Starting Point
OGC ARML 2.0: OGC’s existing AR standard.
BorderGo: An open source repository with some useful algorithms for synchronizing geographical pose with the local coordinate system of an AR SDK (Google Tango, in this case)
Open AR Cloud: ongoing requirements discussions in the Open AR Cloud will be considered by the SWG.