X3D and Augmented Reality
- 1 Calendar: Meetings and Events
- 2 Charter
- 3 History and Background Information
- 4 Existing Proposals
- 5 Interoperability with other AR and Web Standards
- 6 References
- 7 Participation and Liaisons
- 8 Augmented Reality Roadmap for X3D
Calendar: Meetings and Events
Our twice-monthly teleconference for X3D and Augmented Reality is usually
- Main meeting (AR WG only): 10:00-11:00 (Central European time) / 17:00-18:00 (Korea time) / 01:00-02:00 (Pacific time) on 3rd Wednesday
- Follow-up meeting (together with Korea Chapter): 17:00-18:00 (Pacific time)/20:00-21:00 (Eastern time) on 1st Wednesday, which is 09:00-10:00 (Korea time) on 1st Thursday.
Our next public teleconference meeting is
- Main meeting: CEDT 10:00 Sep 21 (Wed) / KST 17:00 Sep 21 (Wed) / PDT 01:00 Sep 21 (Wed), 2011
- Follow-up meeting with Korea Chapater: PDT 17:00 Sep 7 (Wed) / KST 09:00 Sep 8 (Thu) / CEDT 02:00 Sep 8 (Thu), 2011. (with Korea Chapter)
- Third International AR Standards Meeting, June 15-17, Taichung, Taiwan
- Augmented/Mixed Reality Workshop at Web3D Conference, 10:50AM-12:10PM Local Time, June 21, Paris, France
- Augmented and Mixed Reality Web3D BOF at SIGGRAPH 2011, August 2011, Vancouver, Canada
- SC24 Augmented and Mixed Reality Study Group Meeting @ SC24 Plenary and Working Group Meetings, August 21 2011, Rapid City, South Dakota, USA
- Christine Perey AR Workshop, 23-25 October 2011, Basel Switzerland
The Augmented Reality (AR) Working Group focuses on utilizing and extending X3D capabilities to support augmented reality (AR) and mixed reality (MR) applications.
Discussion. These X3D AR discussions were initially held as part of a special interest group. Now that we have determined sufficient exists to modify the X3D Specification, this effort is moving forward by forming the X3D AR Working Group.
Planned goals of AR WG include:
- Collect requirements and describe typical use cases for using X3D in AR/MR applications
- Produce and propose X3D components for AR/MR scenes and applications
- Produce sample AR/MR applications using X3D to demonstrate how this functionality can work correctly
- Investigate state-of-the-art technologies related to X3D and AR/MR to collect requirements and use cases
- Archive and distribute collected requirements and use cases through AR WG wiki page
- Hold regular meetings and workshops to motivate discussions and editing of AR/MR related X3D specification proposals
- Regular meetings will be held through teleconferencing and workshops will be planned through regular meetings
- Promote X3D in AR/MR field by developing and distributing promotional materials of AR applications based on X3D
- Promotional materials include sample applications, video clips, documents, images distributed on the web
Deliverables and Timeline
- Use cases and requirements of X3D for AR/MR application - summer 2011 
- Comparison of existing proposals - autumn 2011
- Proposed new/extended functions and nodes for X3D specification
- once use cases and requirements are stated, can compare existing and new proposals for X3D functionality
- Define specification prose for new functionality and encodings
- Sample AR/MR applications with X3D
- these will be produced in support of each proposal
- Anita Havele
- Damon Hernandez
- Don Brutzman
- Gerard J. Kim
- Gun Lee
- Len Daly, Daly Realism
- Myeongwon Lee
- Oliver Neubauer
- Timo Engelke
- Sabine Webel
- Yvonne Jung
Regular meetings are held twice-monthly through teleconference. Participation is open to everyone via the Web3D teleconference line. Non-members can request access information for this call, or Join Web3D! Meeting agenda and minutes are announced through the X3D WG mailing list.
Discussions occur on the firstname.lastname@example.org mailing list. If the email traffic becomes very busy then we can create a separate email list. Meeting minutes are also distributed on the X3D-Public mailing list and archived online.
- OGC TP/PC Meeting - AR Working Group - Sept 19-23, 2011, Boulder, CO
- AR Standards Community Meeting - Oct 24, 25, 2011 - Basel, Switzerland
- W3C TPAC Meeting W3C AR Community Group - Oct 31- Nov 4, Santa Clara, CA
- ISO JTC Meting - Nov 7 - 10, 2011 - San Diego, CA
History and Background Information
Web3D Consortium formed a special interest group on AR initiatives in July 2009 worked to help create the AR Technology Road Map.
- X3DOM can serve as an out of the box, standards-based solution for AR developers.
- X3D and X3DOM continue to improve scripting options for X3D with HTML5 and this has good promise for AR applications.
- X3DOM is being considered for potential standardization in a Mobile and/or Augmented Reality (AR) profile for X3D.
Our Web3D Korea Chapter members from ETRI are working on Mixed Reality visualization in X3D.
- The Consortium as been working closely within W3C HTML5 WG to align our standards for 3D visualization on the Web.
Additional details are available at:
- Web3D Consortium will be starting an AR working group in March 2011 to develop a roadmap for AR standardization. We encourage your participation.
- The technology discussions and meetings will be conducted publicly so that the widest possible comment and reaction can be considered from the Community. Feedback from this community will help X3D quickly and stably adopt new technologies to provide ongoing archival value for all 3D graphics.
- Meanwhile Web3D Members still retain important membership rights of proposing significant new technology and considering patented technologies within a "safe haven" prior to public release.
X3D Mobile Profile slideset from last summer's Mobile X3D ISO Workshop has also been linked: how Mobile, HTML5 and possibly Augmented Reality (AR) components can be aligned together.
Many new Web3D capabilities are becoming available. There has been no better time to discuss X3D technologies and also join the Web3D Consortium. Get involved in these early discussions to create the AR Technology Road Map. We look forward to your participation.
Instant Reality is a Mixed Reality framework developed and maintained by Fraunhofer IGD, which uses X3D as application description language and which thus also provides corresponding nodes and concepts for developing AR/MR applications. The full node documentation can be found on IR-Docs.
There also exist several tutorials on vision-based tracking with Instant Reality, which e.g. describe specific nodes like the IOSensor node for retrieving the camera streams and the tracking results of the vision subsystem, or which discuss the new PolygonBackground node for displaying the camera images behind the virtual objects as well as some useful camera extensions to the X3D Viewpoint node, etc.: Tracking-Tutorial.
In addition, some papers on AR and MR visualization already were pubished at the Web3D conferences. Here, e.g. occlusions, shadows and lighting in MR scenes were discussed in the context of X3D:
There are moreover some more ideas on realistic MR rendering in X3D outlined in chapter 6 (p. 163 ff.), and especially in section 6.4, in the following PhD thesis (by Y. Jung): PDF.
The screenshots below show several issues in MR visualization. From top left to bottom right: (a) real image of a room; (b) real scene augmented with virtual character (note that the character appears to be before the table); (c) augmentation with additional occlusion handling (note that the character still seems to float on the floor); (d) augmentation with occlusion and shadows (applied via differential rendering).
In the following, an example for achieving occlusion effects between real and virtual objects in AR/MR scenes is shown, given that the (real) 3D object, for which occlusions should be handled, already exist as 3D model (given as Shape in this example). Here, the invisible ghosting objects (denoting real scene geometry) are simply created by rendering them before the virtual objects (by setting the Appearance node's "sortKey" field to '-1') without writing any color values to the framebuffer (via the ColorMaskMode node) to initially stamp out the depth buffer.
<Shape> <Appearance sortKey='-1'> <ColorMaskMode maskR='false' maskG='false' maskB='false' maskA='false'/> </Appearance> ... </Shape>
To set the camera's image in the background we use the aforementioned PolygonBackground node. By setting its field "fixedImageSize" the aspect ratio of the image can be defined. Depending on how you want the background image fit into the window, you need to set the mode field to 'VERTICAL' or 'HORIZONTAL'.
<PolygonBackground fixedImageSize='640,480' mode='VERTICAL'> <Appearance> <PixelTexture2D DEF='tex'/> </Appearance> </PolygonBackground>
As mentioned above, more on that can be found in the corresponding tutorials, e.g. here.
The Korea chapter has been keenly interested in the standardization of augmented reality in many aspects including the AR based contents. This is especially due to the recent world-wide appearances of mobile AR services and realization (from both academia and industry) of the definite need for exchanging service contents on different platforms.
Three main proposals have been made within the Korean chapter, by: (1) Gerard Kim from Korea University (also representing KIST), (2) Gun A. Lee (formerly with ETRI, now with HITLabNZ), and (3) Woontack Woo of Gwangju Inst. of Science and Tech.
Here, we briefly describe each proposal and provide links to documents with more detailed descriptions. These short summararies also try to highlight their distinctions with regards to other proposals, but not in the critical sense, but as a way to suggest alternatives.
(1) Gerry Kim's proposal can be highlighted by the following features:
- Extension of existing X3D "sensors" and formalisms to represent physical objects serving as proxies for virtual objects
- The physical objects and virtual objects are tied using the "routes" (e.g. virtual objects' parent coordinate system being set to that of the corresponding physical object).
- Below shows an example construct which is a simple extension of the "VisibilitySensor" attached to a marker. The rough semantic would be to attach a sphere to a marker when visible. The visibilty would be determined by the browser using a particular tracker. In this simple case, a simple marke description is given through the "marker" node.
<Scene> <Group> <Marker DEF = “HIRO” enable “TRUE” filename=”C:\hiro.patt”/> <VisibilitySensor DEF='Visibility' description='activate if seen' enabled=”TRUE”/> <Transform DEF='BALL'> <Shape> <Appearance> <Material/> </Appearance> <Sphere/> </Shape> </Transform> </Group> <ROUTE fromNode=’Vsibility’ fromField='visible' toNode=’BALL’ toField=’visible’ /> </Scene>
- Different types of sensors can be newly defined or old ones extended to describe various AR contents. These include proximity sensors, range sensors, etc.
- Different physical object description will be needed at the right level of abstraction (such as the "marker" node in the above example). These include those for image patch, 3D object, GPS location, natural features (e.g. points, lines), and etc.
(2) Gun Lee's proposal
- Extension of the TextureBackground and Movie texture node to handle video background for video see-through AR implementation.
- Introduction of a node called "LiveCam" representing the video capture or vision based sensing in a video see-through AR implementation.
- The video background would be routed from the "LiveCam" node and be supplied with the video image and/or camera parameters.
- Extension of the virtual view point to accomodate more detailed camera parameters and to be set according to the parameters of the "LiveCam".
(3) Woo's proposal
- Woo proposes to use XML, as meta descriptors, with existing standards (e.g. X3D, Collada, etc.) for describing the augmentation information themselves.
- As for the context (condition) for augmentation, a clear specification of "5W" approach is proposed: namely who, when, where, what and how.
- "who" part specifies the owner/author of the contents.
- "when" part specifies content creation time.
- "where" part specifies the location of the physical object to which an augmentation is attached.
- "what" part specifies the what is to be augmented content (augmentation information).
- "how" part specifies dynamic part (behavior) of the content.
Developing X3D AR Specification
The working group has reviewed the existing proposals and have summarized in Comparison of X3D AR Proposals.
Based on this comparison, the working group is now preparing Plans for Merging X3D AR Proposals.
X3D Earth Working Group
The X3D Earth Working Group has expanded and refined a proposal by Dr. Myeong Won Lee for a new GpsSensor node. Due to several overlapping technical issues, the group has asked to collaborate with the Augmented Reality group on final design for this node.
Interoperability with other AR and Web Standards
Several discussions at the Web3D Conference, SIGGRAPH and ISO-SC24 meeting about the recent AR Standards developments continue to improve and refine our strategy on interoperability with other standards.
Establishing common implementations and examples is important to demonstrate successful interoperable capabilities for the spec. Continued collaboration and reaching out to other AR standards groups is essential. Our common goal remains maximum interoperability with all Web standards.
- W3C Augmented Reality Community Group
- OGC ARML WG
- AR Standards Group
The recent work in the Web3D AR WG and the realization that the Current status of AR content models is not comprehensive, the ISO Standards Committee - SC24, which administers X3D review as an ISO standard has established a new Working Group for Augmented and Mixed Reality.
This Group conducted a survey of the current state of the art in AR/MR standardization, Here is a summary of the main findings.
- A need for making clear and precise definition of terms
- A need for a reference architecture with the following feature
- Separation of the content and browser/player/application
- Extendible and general enough to accommodate new future technologies (e.g. display devices, tracking algorithms, sensors, etc.)
- Defined at the right abstraction level to be platform/vendor independent
- Clear interface definition among the subsystems
- A proposal to develop a protocol between AR/MR engine and the object tracking/recognition subsystem independently from the algorithms used
Reusing of existing standards as much as possible (see below)
- A content model based on the underlying reference architecture that is
Comprehensive (e.g. scene/world model, interaction, rich augmentation methods and styling options, representation of extensive types of physical real world objects)
- A need for rich and sophisticated scene/world model
X3D-based approach seems promising for providing a sophisticated world model (scene graph structure) and many media objects for augmentation. A proposal to extend X3D standards
- A need for representation of sensors and physical objects
- A proposal for a merged abstraction of physical objects and separate sensors as “objects with virtual sensors” and extend virtual sensors of X3D
- A need for sophisticated representation of “places of interests (POI)”
- A proposal to use and extend OGC/KML standards
- A need for extensive styling for 2D/3D information
- A proposal to use and extend HTML 5
- A need to abstract AR/MR interaction behaviors
Complicated behaviors to be handled by scripts and DOM like approach
- A proposal to extend X3DOM for this purpose
- Needs other supporting functionalities
- Inclusion and specification of real world capture camera/sensors
- Moving texture/background functionality for video see through AR
Handling of depth data and occlusion effects Specification of virtual/real light sources and rendering methods Based on these findings the group proposes to derive a AR content model as an extension of a virtual world with provisions for representing the physically-sensed objects. The provisions refer to ways to specify the physical augmentation “targets” without specific sensor information and ways to (intuitively) tie or associate them to their virtual counterparts. This will result in vendor independence, use convenience and support for extensibility.
The ISO AR standardization proposal recommends
Merging HTML and X3D (X3dom (Declarative 3D) for abstract content components for 2D and 3D Augmentation. The OGC and K-Mart for describing POIs and sensed physical objects. The Scripting approach for non-standard complex content behaviors and the use of remote cloud services. Current technical work within the Web3D AR WG includes harmonizing these proposals for best fitting AR capabilities into X3D scenes. This work will be formally written up as the Augmented Reality (AR) Component for the X3D Specification.
Participation and Liaisons
- TODO describe Christine Perry's group on AR Standardization
- Other partnerships can also be considered as appropriate.
Of interest is that Web3D Consortium Intellectual Property Rights (IPR) Policy insists on open, royalty free (RF) specifications. These coexist effectively with the Web Architecture and many different business models.
Augmented Reality Roadmap for X3D
The Augmented Reality Roadmap for X3D is a description document charting shared strategies and our way forward. Currently under discussion.