SepHeuser

Chair for Computer Aided Medical Procedures & Augmented Reality
Lehrstuhl für Informatikanwendungen in der Medizin & Augmented Reality

Realization of a "window-into-a-virtual-world" screen concept.

Abstract


Display and observer moving independently. Rendering is using anaglyphic stereo separation.

3D visualization in CAVEs and Powerwalls are situations where, the view frustum, describing the projection of the scenery onto the screen depending of the viewers position to the screen, is in general asymmetrical. The wording "window-into-a-virtual-world" is used to express a dynamic recalculation of the view frustum, based on the position of the viewer and the pose of the screen so that the view on the display appears as showing the virtual scenery behind the area occluded through the display. This project implements a generic "window-into-a-virtual-world" screen concept that allows for establishing a wide range of applications, ranging from CAVE environments over powerwall setups to portable LCD screens. Through extension of the Ubitrack library by a new pattern that models the view frustum easy incorporation into further systems will be enabled.

Possibilities

This screen concept enables the realization of a wide range of display environments by allowing both, the display and the oberser, to be movable. Simple setups, with a stationary display, can be used for CAVE environments and Powerwalls. But in general, the display can also be relocated while the content presented is updated according to the relative position of the observer in realtime. This way the display becomes like a window into a virtual world.

Requirements

To provide the illusion of reality in computer graphics, the scenery must be drawn in real- time with a preferably high frame rate. Computation time for a rendered frame depends on the complexity of the geometry shown, the amount of vertices and poly- gons. The computational overhead for this screen concept should be as small as possible.

Offaxis projection

Instead of being forced to stay in front of the display at a fixed distance, the Window into a virtual World screen concept allows the user treat the display like a frame and look through it from arbitrary positions and angles. The virtual world displayed is coincident with real world and so the virtual objects appear to be fixed in space. For every rendered frame the projection matrix is recalculated to reflect the users position relative to the display. The usual view frustum, a pyramid with a cut off top, deforms to an offaxis frustum.

Hardware

3D hardware acceleration is strongly recommended depending on the scene complexity to be displayed, but is not mandatory. A tracking system supported by the Ubitrack framework is also recommended. One of the simple test setups used paper markers and a webcam for the headtracking and red/green glasses for anaglyphic rendering. This way applications for CAVEs or Powerwalls can be developed and tested without access to expensive hardware.

Implementation

macbook.jpg
Example hardware setup.

The offaxis projection has been implemented as an Ubitrack component and is available with the regular Ubitrack trunk. The component itself has no dependecies to other libraries and returns a combined projection/camera matrix in an OpenGL compliant way. For direct implementation without the Ubitrack component infrastructure, look in Ubitrack's Calibration folder for Projection.cpp.

Presentations

Kick-off presentation 3/7/2008: Kick-Off.pdf
Final presentation 10/17/2008: SEP_Final.pdf

Demo

A demo of the system is installed on the fardemo account in the WindowToVirtualWorld folder. To start the demo:

  • Turn on the ART system.
  • Load the AR-Praes settings.
  • Make sure the IP address of the demo computer is active in the ART network settings
  • Attach the tracked TFT display to the demo machine
  • Get the helmet with ART markers and red/green glasses for anaglyphic viewing
  • Execute the run.sh script
  • Have fun!

Deployment

  • Checkout latest Ubitrack trunk.
  • Look in Ubitracks component directory for the offaxis projection component
  • Use doxygen to compile docs for further information

Deployment of the demo version with anaglyphic renderer

window.jpg
Window into a virtual world screen concept
in use with a trackable TFT display.

  • Note: This is only tested on linux
  • Checkout https://camplinux.in.tum.de/far_applications/SEPHeuser
  • Go to SEPHeuser/unitrack folder and run scons
    • Configure Ubitrack as needed, drivers section needs to be installed
    • Do not forget to define all envvars
  • Look in /Ubitrack/doc/utql for demonstration workflows (Note: These workflow are incompatible to the new offaxis projection syntax now present in the latest Ubitrack checkout.
  • Run bin/utconsole doc/utql/[A-Z]CAVE*
  • See readme file in SEPHeuser folder for the diffs to the original ubitrack checkout (changes to get anaglyphic renderer running)

Final work

Heuser2008Sep.pdf

-- MarcusToennis - 19 Jun 2006

ProjectForm
Title: Realization of a "window-into-a-virtual-world" screen concept.
Abstract: 3D visualization in CAVEs and Powerwalls are situations where, the view frustum, describing the projection of the scenery onto the screen depending of the viewers position to the screen, is in general asymmetrical. The wording "window-into-a-virtual-world" is used to express a dynamic recalculation of the view frustum, based on the position of the viewer and the pose of the screen so that the view on the display appears as showing the virtual scenery behind the area occluded through the display. This project implements a generic "window-into-a-virtual-world" screen concept that allows establishing a wide range of applications, ranging from CAVE environments over powerwall setups to portable LCD screens. Through extension of the Ubitrack library by a new pattern, that models the view frustum, easy incorporation into further systems will be enabled.
Student: Nick Heuser
Director: Gudrun Klinker
Supervisor: Marcus Tönnis
Type: SEP
Area: Computer Vision, Industrial Augmented Reality
Status: finished
Start: 2008/03/01
Finish: 2008/08/30


Edit | Attach | Refresh | Diffs | More | Revision r1.24 - 02 Dec 2008 - 09:29 - NickHeuser