Walkabout

May '06 – LOD technique implemented in Walkabout's source code. Textures can be applied to terrain. Other features added

Download

An interactive 3D terrain visualization tool developed at EVL and coded mainly in Open Inventor©. Our goal is to extend this tool so that it can have usage in the real world. This tool can Digital Elevation Models (DEMs), a very popular data format made available to the public by the United States Geological Service (USGS). A 3D map of Chattanooga is available here.

3D Terrain Exploration and Visualization

Purpose

In this project, we discuss several enhancements we have done to a 3D Stereo Terrain visualization tool. This tool called Walkabout, and developed by the Electronic Visualization Laboratory (EVL) group at the University of Illinois at Chicago, allows the user to move in relationship to the data in X-Y-Z directions and interact with the data.

GeoWall Consortium Project (Geowall.org)

The GeoWall Consortium Project is a joint effort between geologists and computer scientists at different universities and research centers through out the United States to make available stereo-display technologies to a very broad audience. The technology consists of affordable equipment and open source code to make three-dimensional applications with stereo-display capabilities.

What is a GeoWall system?

Basically a GeoWall system consists of the following components:a (controller) computer, a quad-buffered enable graphics card, two projectors, polarization filters for each projector, a polarization-preserving screen, polarized glasses, and a stereo-capable application such as Walkabout.

Developing applications with stereo-enable projection capabilities.

You need to prepare two images, one that corresponds to the right eye and the other that corresponds to the left eye, and display them on the same space on a screen. The overlapping images are displayed individually by using two projectors, one for each eye, so that the viewer sees only one image with each eye. The light from each projector is polarized differently, and the projection screen has special properties that preserve polarization. It is possible to allow the light from only one image to enter the eye by using a pair of polarized glasses. The main idea is to create the illusion of actual depth when the pair of images is overlapped at a specific distance apart.

Our goal is to extend Walkabout so that it can directly load Digital Elevation Models (DEMs), a very popular data format made available to the public by the United States Geological Service (USGS). DEMs are ASCII digital files consisting of terrain elevations for ground positions at regularly spaced horizontal intervals. The USGS have made available height field data of all 50 states. A major enhancement in this project include the ability to optimize the terrain by implementing an Level of Detail (LOD) technique in order to increase rendering performance.

Terrain Data Representation

Terrain databases represent the topography of an area with elevation data points called height maps. These height maps represent the terrain w(v) with a set of vertices (v), where w(v) is of the form w(v) = (vx, vy, z(v)) and (vx, vy) are the domain coordinates of the vertex v, and z(v) is the height at v. A common file format, the Digital Elevation Model (DEM) stores the terrain elevations in a rectangular array. The points are taken at regularly spaced horizontal intervals in a Universal Transverse Mercator (UTM) projection or a geographic coordinate system. The grid cells are ordered from south to north and from west to east. Currently, the USGS produces five different types of such files: 7.5-minute DEM, 30-minute DEM, 1-degree DEM, 7.5-minute Alaska DEM, and 15-minute Alaska DEM.

Real-time Terrain Rendering

The simplest method to render terrain data is to build a triangle mesh of all the points available, but you'll end up with very poor rendering performance due to the large amount of point to process. Because of this we decided to implement a Level of Detail Algorithm to have just enough data points to render the terrain while at the same time getting an optimal rendering performance. The LOD technique we used in the project was Continuous LOD Using Adaptive Quadtrees by Thatcher Ulrich (2000). The technique uses a quadtree as its data structure. The root represents the whole terrain surface and the four children subdivide the parent into four smaller partitions. Adaptive refinement is obtained by recursively subdividing the original quadrant.

Here is a wire-frame mode snapshot of the algorithm applied to our terrain data with about 114,882 triangles out of 545,916 triangles from the original file. The data being rendered is a 10-meter DEM Quad of the Chattanooga, TN area.

This is the same quad data but in Surface Mode.

Again the same quad data but in Texture Mode.

Further enhancements to Walkabout; a GeoWall 3D Stereo Rendering System

Enhancements: including building shapes, simple collision detection techniques, a simple route detection algorithm, downtown street grid

The demo is available here.

Notes:

    1. The project uses a beta version of OpenInventor, different from the Coin3D Release. The dlls are included on the directory.
    2. Data for collision detection is separated from the data used for visualization. Data for collision detection is loaded at runtime and is not changing with the LOD. This data can be found on the demo directories as *.iv file format : 1_10a.iv, etc. The data for visualization is the only one changing in LOD resolution. I explained this on the report but I wanted to clarify this beforehand.
    3. To test the collision detection techniques: you will have to use the UP/DOWN key along with the mouse left button (for directions). When one presses the UP/DOWN key the height is being computed by testing the terrain.
    4. The buildings weren't positioned at their geographic locations. Even though I found a solution listed on the reference section, and (also Walkabout source code provide some hints), still more work is needed because the terrain is scaled when drawn using the LOD algorithm.
    5. The coordinates for the path algorithm were hard-coded. There's still room for improvement in this area.