Hardware-Accelerated Parallel Non-Photorealistic Volume Rendering Eric B.Lum Kwan-Liu Ma University of California at Davis.

Slides:



Advertisements
Similar presentations
Real-Time Rendering of Cartoon Smoke and Clouds
Advertisements

Reconstruction from Voxels (GATE-540)
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
Other DVR Algorithms and A Comparison Jian Huang, CS 594, Spring 2002.
A Hardware-Assisted Hybrid Rendering Technique for Interactive Volume Visualization Brett Wilson Kwan-Liu Ma University of California, Davis Patrick S.
Volume Rendering Volume Modeling Volume Rendering Volume Modeling Volume Rendering 20 Apr
Real-Time Rendering SPEACIAL EFFECTS Lecture 03 Marina Gavrilova.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Information Visualization.
Surface Reconstruction from 3D Volume Data. Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes.
Splatting Josh Anon Advanced Graphics 1/29/02. Types of Rendering Algorithms Backward mapping Image plane mapped into data Ray casting Forward mapping.
Introduction to Volume Rendering Presented by Zvi Devir.
High-Quality Volume Graphics on Consumer PC Hardware
Direct Volume Rendering Joe Michael Kniss Scientific Computing and Imaging Institute University of Utah.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
Sorting and cell compositing for irregular meshes Nelson Max, Peter Williams, Richard Cook, Claudio Silva.
Direct Volume Rendering w/Shading via Three- Dimensional Textures.
Volume Rendering using Graphics Hardware
Computer-Generated Pen- and-Ink Illustration Georges Winkenbach, David H. Salesin.
I NTERACTIVE V OLUME R ENDERING FOR V IRTUAL C OLONOSCOPY IEEE Proceedings of Visualization, Phoenix, U.S.A., Oct. 1997, pp. 433 – 436 Presented.
Definitions Spectral Elements – data structures that contain information about data at points within each geometric entity. Finite elements only hold information.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Scientific Visualization Module 6 Volumetric Algorithms (adapted by S.V. Moore – slides deleted, modified, and added) prof. dr. Alexandru (Alex) Telea.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
ITUppsala universitet Advanced Computer Graphics Filip Malmberg
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorenson Harvey E. Cline General Electric Company Corporate Research and.
CS447/ Realistic Rendering -- Radiosity Methods-- Introduction to 2D and 3D Computer Graphics.
IMAGE SYNTHESIS 1 Image Synthesis Image synthesis operations create images from other images or non-image data Used when a desired image is either physically.
OpenGL Conclusions OpenGL Programming and Reference Guides, other sources CSCI 6360/4360.
CMSC 635 Volume Rendering. Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind.
Volume Rendering CMSC 491/635. Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind.
VIS Group, University of Stuttgart Tutorial T4: Programmable Graphics Hardware for Interactive Visualization Non-photorealistic rendering (Daniel Weiskopf)
Rendering Complexity in Computer-Generated Pen- and-Ink Illustrations Brett Wilson & Kwan-Liu Ma The University of California, Davis.
Visualization Process sensorssimulationdatabase raw data images Transformation.
3D Volume Visualization. Volume Graphics  Maintains a 3D image representation that is close to the underlying fully-3D object (but discrete)  경계표면 (Boundary.
Volume Visualization Presented by Zhao, hai. What’ volume visualization Volume visualization is the creation of graphical representations of data sets.
High Quality Silhouette Illustration for Texture Based Volume Rendering, Nagy and Klein.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Artistic Surface Rendering Using Layout Of Text Tatiana Surazhsky Gershon Elber Technion, Israel Institute of Technology.
Volume Visualization with Ray Casting
IMAGE SYNTHESIS 1 Image Synthesis Image synthesis operations create images from other images or non-image data Used when a desired image is either physically.
Real-Time Relief Mapping on Arbitrary Polygonal Surfaces Fabio Policarpo Manuel M. Oliveira Joao L. D. Comba.
Direct Volume Rendering
Hardware Accelerated Volume Rendering Using PC Hardware CSE564 Final Demo Evan Closson.
Volume Rendering A volume representation is an extension of a 2D image to 3D space. A pixel in 2D space become a voxel in 3D space. Voxel.
High-Quality Pre-Integrated Volume Rendering Using Hardware Accelerated Pixel Shading Klaus Engel, Martin Kraus, Thomas Ertl Visualization and Interactive.
Non-Photorealistic Rendering FORMS. Model dependent Threshold dependent View dependent Outline form of the object Interior form of the object Boundary.
Real-Time Relief Mapping on Arbitrary Polygonal Surfaces Fabio Policarpo Manuel M. Oliveira Joao L. D. Comba.
Texturing CMSC 435/ What is Texturing? 2 Texture Mapping Definition: mapping a function onto a surface; function can be: – 1, 2, or 3D – sampled.
Applications and Rendering pipeline
1 Geometry for Game. Geometry Geometry –Position / vertex normals / vertex colors / texture coordinates Topology Topology –Primitive »Lines / triangles.
Rendering Pipeline Fall, 2015.
Visualization Shading
Volume Visualization Chap. 10 November 20 , 2008 Jie Zhang Copyright ©
3D Graphics Rendering PPT By Ricardo Veguilla.
3D Object Representations
Bump Mapping -1 Three scales of detail on an object
Volume Visualization Chap. 10 December 3 , 2009 Jie Zhang Copyright ©
Real-Time Volume Graphics [06] Local Volume Illumination
Volume Rendering (2).
CSc4730/6730 Scientific Visualization
Volume Rendering Lecture 21.
Volume Rendering.
Plants from Images CS 658.
Visualization CSE 694L Roger Crawfis The Ohio State University.
CS-378: Game Technology Lecture #4: Texture and Other Maps
RADEON™ 9700 Architecture and 3D Performance
Introduction to Ray Tracing
Presentation transcript:

Hardware-Accelerated Parallel Non-Photorealistic Volume Rendering Eric B.Lum Kwan-Liu Ma University of California at Davis

Outline Volume Rendering Related Work Introduction Paletted Texture Detail –Tone Shading –Silhouette Illustration –Color Based on Position –Gradient Based Enhancement –Multiple Transfer Functions Results Conclusion

Volume Rendering Volume (a 3D image) –It is a 3D array of point samples, called voxels(volume elements) –Each voxel has color(RGBA) or density or… A 2D Image (Pixels) A 3D Image (Voxels)

Volume Acquisition Aqusition Techniques –CT, MRI, Ultra sound… –Physical simulation… –Converting 3D surface models…

Preliminaries Volume Rendering –The process of generating a 2D image from 3D volume

Preliminaries Volume Rendering –Visible Human

Preliminaries Volume Rendering –Computational Fluid Dynamics

Preliminaries Volume Rendering –Non-destructive testing

Volume Rendering Pipeline Simplified version Gradient Computation Classification Shading Compositing

Gradient Computation The gradient –A normal vector – : acquired value in data set Finding edges or boundaries between different materials Shading

Classification assign opacity to the voxels – assign color to the voxels –

Classification Face Brain Density Opacity Density Opacity

Shading Using gradient, assign color to the voxels Non -shaded Engine Shaded Engine

Accumulating –accumulate the hundreds of values sampled along a ray into one pixel –compositing function “over-operator” back-to-front front-to-back

Over Operator Fundamental operator in rendering –Binary operator on pairs of colors and pairs of opacity values (C, ) C b =(1,0,0) a b =1.0 C f =(0,1,0) a f =0.4

Ray Casting Basic Comlexity –Depth*ImageSize

Plane Compositing Divides the volume into slices. The slices are composes one over the other Basic Complexity = VolumeSize

Related Work NPR –A non-photorealistic lighting model… SIGGRAPH 98 Tone shading

Related Work VR [Direct volume rendering, ACM volvis. 96] NPR + VR [Volume illustration, IEEE vis. 2000]

Introduction Non-photo realistic rendering High performance volume rendering –Parallel processing –3D textures, Multi-texturing, Paletted textures…

Introduction Interactive Rendering –What to preprocess? Gradient Computation Classification Shading Compositing Density Normal Opacity Color Rendered Image

Introduction Preprocessed input (texture) –Density –Gradient Direction –Gradient Magnitude Output –Non-photo realistically rendered image

VR using paletted textures [Van Gelder, A., Hoffman] –ACM volvis. 96 Paletted textures –Indexed Color (at most 256 entry) Paletted TexturePalette Volume data (large) Transfer Function, Shading Function…

VR using paletted textures [Van Gelder, A., Hoffman] –ACM volvis. 96 Paletted textures –Indexed Color Paletted TexturePalette Volume data (large) Transfer Function, Shading Function… Density Opacity

VR using paletted textures [Van Gelder, A., Hoffman] –ACM volvis. 96 Paletted textures –Indexed Color Paletted TexturePalette Volume data (large) Transfer Function, Shading Function…

VR using paletted textures

Tone Shading Lighting through the variation of color temperature –Ambient lighting: cooler color –Direct lighting: warmer color [gooch98]

Tone Shading Using pre-computed table (palette)

Silhouette Illustration Effective in showing an objects structure Without silhouetteWith silhouette

Silhouette Illustration Silhouette Use palette – 시점이 바뀌면 다시 계산 N V Opacity,Color=Black

Silhouette Illustration For each slice polygon 1 st Pass: Tone shading 2 nd Pass: Blend silhouette term

Color Based on Position To improve depth perception –Warmer hues for foreground Without depth based tone manipulation With depth based tone manipulation

Color Based on Position Depth based tone manipulation –Assign different vertex color to each slice

Color Based on Position Arbitrary direction –Use additional 1D texture, and texture coordinate transform matrix

Gradient Based Enhancement The transition between features in a volume tend to have the highest gradient magnitude –Enhance the opacity in these regions Gradient magnitude Opacity Skin rendering

Multiple Transfer Functions For each slice polygon –1-pass for each transfer function

Combining Techniques Multi-pass, multi-stage rendering Classification Shading Surface enhancing Color based on position RGBA

Combining Techniques Multi-pass, multi-stage rendering Compute opacity again Silhouette & Specular lighting Compute again

A Complete Example

Parallel Rendering Binary-swap[13] Divide and conquer method –Subdivide and distribute the volume using k-d tree subdivision –Composite the rendered image of the subvolume

Results PC cluster with 9 computers Each –AMD Athlon 1.3 Ghz –1GB ram –Geforce3 with 64mb video memory –100Base-T fast ethernet 512*512*512 volume to 512*512 image –2.0 FPS Two sets of rendering parameter –4Path rendering –1.2 FPS Interactive control of –Transfer function, View direction, Rendering parameters

Conclusions Perceptually effective Interactive Future Work –Extracting more information –Rendering wider variety of styles