Presentation is loading. Please wait.

Presentation is loading. Please wait.

NDVI-based Vegetation Rendering CGIM ‘07 Stefan Roettger, University of Erlangen

Similar presentations


Presentation on theme: "NDVI-based Vegetation Rendering CGIM ‘07 Stefan Roettger, University of Erlangen"— Presentation transcript:

1 NDVI-based Vegetation Rendering CGIM ‘07 Stefan Roettger, University of Erlangen http://www.stereofx.org mailto:stefan@stereofx.org

2 NDVI-based Vegetation Rendering Overview - Recap of Terrain Rendering with C-LOD - How to get vegetation information - NDVI mapping - Volumetric representation of vegetation - Rendering with texture splatting and billboards - Double-buffered tile set caching - Results

3 NDVI-based Vegetation Rendering Height Fields A common representation of terrain is the so called height field, a regular matrix which stores height values. By transforming the elevation into grey-values the height field is given by a grey-scale image (left). Color information is given by an ortho-image (right).

4 NDVI-based Vegetation Rendering Rendering with Triangle Fans - the height field is decomposed into a quad tree - per quad tree node (dots) the decision to subdivide depends on the screen space error of the actual triangulation - each leave of the quad tree is rendered with a triangle fan (arrows) - to get a conforming mesh some vertices are skipped (crosses)

5 NDVI-based Vegetation Rendering C-LOD - screen-space error depends on distance to the eye point and the “surface roughness” - user-definable upper bound on the screen-space error continuously delimits the resolution of the triangulation low medium high

6 NDVI-based Vegetation Rendering Textured Terrain - an orthographic projection of the terrain texture yields the following visualization of the height field - geo-morphing of the vertices is used to suppress the popping effect

7 NDVI-based Vegetation Rendering Vegetation Information Left: Landsat ortho-image (pseudo-color) Middle: NDVI Index (automatic) Right: Corine Landcover Classification (hand-processed)

8 NDVI-based Vegetation Rendering NDVI Definition - Landsat has channels 1-8 for visible and invisible wave lengths - 1-3 = BGR, but not exactly, wave lengths are shifted towards blue - 4 = NIR (Near Infra-Red) Channels I 1-3

9 NDVI-based Vegetation Rendering NDVI Mapping Vegetation height and type are assumed to correlate with the NDVI via a monotone mapping: For NDVI=0 no vegetation exists, above a specific threshold the vegetation changes from grass to bushes or trees.

10 NDVI-based Vegetation Rendering Volumetric Representation We interprete the NDVI as a second height field that encodes H Plant and compute the triangulation based on the weighted error of both height fields. Then we take each base triangle of the mesh and stack a prism onto it where the height corresponds to the mapped NDVI. Now we can randomly place vegetation inside the prism.

11 NDVI-based Vegetation Rendering Texture Splatting If plant type is grass, e.g. the height is below a specific threshold, but not zero, we use texture splatting to show ground detail. A stack of grass textures is put into a 3D texture which is indexed by the mapped prism height. Then the lookup is perturbed with Perlin Noise, faded by distance and finally blended with the ortho-image. For bushes and trees the following billboard textures are scaled to fit the height of the prism:

12 NDVI-based Vegetation Rendering Paging and Caching The scene is divided into a regular tile set. All visible tiles are paged in and out depending on the LOD of each tile to minimize the [texture] memory footprint. For each frame only a subset of all the tiles is triangulated and the resulting part of the entire mesh is appended to a double-buffered vertex cache. While the back buffer of the cache is updated from frame to frame, the front buffer can be reused for a couple of subsequently rendered frames. Accordingly, for a single frame, only a subset of the plant geometry is updated and stored in the cache which leads to a much reduced CPU load since the vertex buffer can be redrawn with little overhead.

13 NDVI-based Vegetation Rendering Limiting Geometric Complexity Geo-morphing of both the terrain and the prisms allows for smooth transitions of the prisms and therefore the generated plant distribution. Prisms that are far away fade out to zero height and thus do not contain vegetation. As a result, the appearance of distant details is determined only by the ortho-image and plants are only generated in the vicinity of the viewer. This limits the overall number of geometric plant primitives to an amount that is easily managable by today’s graphics hardware. The total number of visible trees in a forest easily exceeds 50 million while the number of rendered trees in the vertex cache is only between 300k and a few million for densely vegetated areas.

14 NDVI-based Vegetation Rendering Results #1 We use green triangles as a simplified model for the plants in order to show the match of the NDVI (left) with the displayed plants (right).

15 NDVI-based Vegetation Rendering Results #2 The demo scene with and without vegetation rendering. Frame rate is about 15-20 fps on a NVIDIA GeForce FX 5900. Here comes a live demo…

16 NDVI-based Vegetation Rendering CGIM ‘07 Thank you!


Download ppt "NDVI-based Vegetation Rendering CGIM ‘07 Stefan Roettger, University of Erlangen"

Similar presentations


Ads by Google