Scientific Visualization An Introduction Michel O. R. Eboueya Computer Sciences Department Pôle Sciences et Technologies Université de La Rochelle.

Slides:



Advertisements
Similar presentations
Reconstruction from Voxels (GATE-540)
Advertisements

Yingcai Xiao Chapter 6 Fundamental Algorithms. Types of Visualization Transformation Types 1.Data (Attribute Transformation) 2.Topology (Topological Transformation)
Ray tracing. New Concepts The recursive ray tracing algorithm Generating eye rays Non Real-time rendering.
Graphics Pipeline.
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
A Coherent Grid Traversal Algorithm for Volume Rendering Ioannis Makris Supervisors: Philipp Slusallek*, Céline Loscos *Computer Graphics Lab, Universität.
Fast Volume Rendering Using a Shear-Warp Factorization of the Viewing Transformation Philippe Larcoute & Marc Levoy Stanford University Published in SIGGRAPH.
CLASS 9 ADVANCE RENDERING RAY TRACING RADIOSITY LIGHT FIELD CS770/870.
Ray Tracing & Radiosity Dr. Amy H. Zhang. Outline  Ray tracing  Radiosity.
Hank Childs, University of Oregon November 15 th, 2013 Volume Rendering, Part 2.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
Volume Rendering Volume Modeling Volume Rendering Volume Modeling Volume Rendering 20 Apr
Direct Volume Rendering (DVR): Ray-casting
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.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
Direct Volume Rendering w/Shading via Three- Dimensional Textures.
Fluid Surface Rendering in CUDA Andrei Monteiro Marcelo Gattass Assignment 4 June 2010.
Volume Rendering & Shear-Warp Factorization Joe Zadeh January 22, 2002 CS395 - Advanced Graphics.
ITUppsala universitet Data representation and fundamental algorithms Filip Malmberg
CSE 681 Ray Tracing Implicit Surfaces. CSE 681 Overview Similar to CSG –Combine primitive objects to form complex object Primitives are “density fields”
Hidden Surface Removal
Marching Cubes: A High Resolution 3D Surface Construction Algorithm
Volumetric and Blobby Objects Lecture 8 (Modelling)
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
COMP 175: Computer Graphics March 24, 2015
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Scientific Visualization An Introduction Michel O. R. Eboueya Computer Sciences Department Pôle Sciences et Technologies Université de La Rochelle.
19/18/ :34 Graphics II Volume Rendering Session 10.
Rendering Adaptive Resolution Data Models Daniel Bolan Abstract For the past several years, a model for large datasets has been developed and extended.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Interactive Rendering of Meso-structure Surface Details using Semi-transparent 3D Textures Vision, Modeling, Visualization Erlangen, Germany November 16-18,
Scientific Visualization Module 6 Volumetric Algorithms (adapted by S.V. Moore – slides deleted, modified, and added) prof. dr. Alexandru (Alex) Telea.
University of Coimbra Reconstruction of Voxels from Sensor Data Ricardo Martins Coimbra, 19 th January 2010 Doctoral Programme in Electrical Engineering.
COLLEGE OF ENGINEERING UNIVERSITY OF PORTO COMPUTER GRAPHICS AND INTERFACES / GRAPHICS SYSTEMS JGB / AAS Global illumination algorithms Graphics.
REAL-TIME VOLUME GRAPHICS Christof Rezk Salama Computer Graphics and Multimedia Group, University of Siegen, Germany Eurographics 2006 Real-Time Volume.
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.
Graphics Graphics Korea University cgvr.korea.ac.kr Solid Modeling 고려대학교 컴퓨터 그래픽스 연구실.
ITUppsala universitet Advanced Computer Graphics Filip Malmberg
Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorenson Harvey E. Cline General Electric Company Corporate Research and.
Direct Volume Rendering (DVR): Ray-casting Jian Huang This set of slides references slides used by Prof. Torsten Moeller (Simon Fraser), Prof. Han-Wei.
Unstructured Volume Rendering Jian Huang, CS 594, Spring 2002 This set of slides reference slides developed by Prof. Torsten Moeller, SFU, Canada.
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.
3D Volume Visualization. Volume Graphics  Maintains a 3D image representation that is close to the underlying fully-3D object (but discrete)  경계표면 (Boundary.
3-D Data cs5984: Information Visualization Chris North.
Volume Visualization Presented by Zhao, hai. What’ volume visualization Volume visualization is the creation of graphical representations of data sets.
Basic Ray Tracing CMSC 435/634.
Computer Graphics Lecture 08 Fasih ur Rehman. Last Class Ray Tracing.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Hank Childs, University of Oregon Volume Rendering, pt 1.
Volume Visualization with Ray Casting
CHAPTER 5 CONTOURING. 5.3 CONTOURING Fig 5.7. Relationship between color banding and contouring Contour line (isoline): the same scalar value, or isovalue.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
3-D Information cs5764: Information Visualization Chris North.
2/24/2016 A.Aruna/Assistant professor/IT/SNSCE 1.
CDS 301 Fall, 2008 Domain-Modeling Techniques Chap. 8 November 04, 2008 Jie Zhang Copyright ©
Visible-Surface Detection Methods. To identify those parts of a scene that are visible from a chosen viewing position. Surfaces which are obscured by.
Visualization Shading
POLYGON MESH Advance Computer Graphics
Volume Visualization Chap. 10 November 20 , 2008 Jie Zhang Copyright ©
CSc4730/6730 Scientific Visualization
Volume Rendering Lecture 21.
Real-Time Volume Graphics [06] Local Volume Illumination
Domain-Modeling Techniques
Volume Rendering (2).
Volume Rendering.
Visualization CSE 694L Roger Crawfis The Ohio State University.
Presentation transcript:

Scientific Visualization An Introduction Michel O. R. Eboueya Computer Sciences Department Pôle Sciences et Technologies Université de La Rochelle

2 Outline Introduction:Definitions, Goals and History of Visualization Part 1 –Visualization Concepts –Characterization of data and Short Vocabulary –Algorithms (Scalars, Vectors, Direct volume rendering ) Part 2 –Visualization Techniques –Advanced topics (Virtual reality,Texture ) –Scientific Visualization Tools (Some commonly used programs ) Conclusion

3 Algorithms Scalar Algorithms Color Mapping Contouring (contour tracking, Marching squares, cubes…) scalar generation Vector Algorithm Hedgehog and Oriented Glyphs Warping Displacement Plots Time Animations Streamlines Modeling Algorithms Implicit Functions Glyphs Cuttings

4 Volume de visualisation Volume Visualization(3d domain): Displays volumetric (3D-mesh) data by showing a color, greyscale or object at every grid point. Usually uses transparency to show as much data as possible.

5 DVR Algorithms Data Classification for Volume Visualization Surface-fitting: –User Picks Threshold Value Direct Volume Rendering: –User Specifies Color Table Map Data Values to Meaningful Colors –User Specifies Opacity Table Map Interesting Data to Opaque –Map Other Data to Transparent –Setting up the Tables

6 DVR Algorithms Data Classification for Volume Visualization

7 Direct ScVs Al. ray-casting A volume viewing algorithm in which sight rays are cast from the viewing plane through the volume. The tracing of the ray stops when the visible voxels are determined by accumulating or encountering an opaque value. [KAU91] ray-tracing The general technique of computing an image by projecting rays into a scene and using their interactions with the contents of that scene to determine pixel colors. In surface- rendering methods, rays are intersected and possibly reflected or refracted by objects in the scene to determine visible colors. Ray-tracing is also used in volume visualization and is a type of DVR. [WOL93]

8 DVR Algorithms

9 Object Based Rendering: Ray Tracing

10 DVR Algorithms Ray Casting (Image-order methods) Ray-casting Methods Basic Idea Cast Rays from Image Plane through Volume to Find Pixel Color No Intermediate Surfaces Renders Volume Directly Ray-casting Fundamentals: Brute Force Algorithm 1.For each Pixel 2.For each f(i,j,k) Along a Ray from Pixel 3.Check f(i,j,k) in Classification Tables 4.If New Substance 5.Find Surf Normal/Compute Color 6.Weight Color by Opacity 7.Accumulate Color Contribution and Opacity 8.Pixel Gets Accumulated Color

11 DVR Algorithms Ray-casting Advantages No Binary Classification, e.g., inside or outside as in surface fitting methods Shows Structure Between Surfaces Displays Small and Poorly Defined Features Readily Parallelizes Ray-casting Disadvantages Expensive - Cost Proportional to Volume Size (N^3) Combining Geometry and Volume Data is Difficult Rendering Methods and Hardware are Unknown

12 Volume Rendering Displays all of the 3-D data at once, like an X-ray: Denser parts are more opaque. User controls the density of various data values.

13 DVR Algorithms Ray-casting Example Dolphin head (Cranford, Elvins, Mercurio)

14 Projection methods in DVR Ray Casting Ray-casting is the most used algorithm for the generation of high quality images. It performs an image-order traversal of the image plane pixels, determining a color and opacity for each pixel. A ray is fired from the center of each pixel through the volume. The colors and opacities are summed along each ray and the result is used to shade the pixel. The ray continues until it exits the volume or until the sums become greater than one. The first step is for the user to set up color and opacity tables as discussed in the data classification section. The user then sets the viewing and lighting (if any) information. The ray-caster starts firing rays through the pixels. When a cell is intersected between gridpoints, an interpolation scheme can be used to determine the data value, or for voxel-based rendering the value at the central grid point can be used. Based on this value a color and opacity is assigned from the look up tables. The color and opacity values are modified by the surface gradients, weighted, and then added to the previous values for the ray. Usually values closer to the front are given a higher weighting. The ray then continues through the volume. Ray-casting is very cpu-intensive but the images can show the entire data set and not just a particular surface. Also, this algorithm can be easily parallelized.

15 DVR Algorithms

16 Projection methods in DVR Splatting Splatting Splatting performs a front-to-back object-ordered traversal of the voxels in the dataset. Each voxel's contribution to the image is computed and added to the other contributions. The first step is to determine in what order to traverse the volume. The closest face (and corner) to the image plane is determined. Then the closest voxels are splatted first. Each voxel is given a color and opacity according to the look up tables set by the user. These values are modified according to the gradient. Next the voxel is projected into image space. To compute the contribution for a particular voxel, a reconstruction kernel is used. For an orthographic projection a common kernel is a round Gaussian. The projection of this kernel into image space (called its footprint) is computed. This size is adjusted according to the relative sizes of the volume and the image plane so that the volume can fill the image. Then the center of the kernel is placed at the center of the voxel's projection in the image plane (note that this does not necessarily correspond to a pixel center). Then the resultant shade and opacity of a pixel is determined by the sum of all the voxel contributions for that pixel, weighted by the kernel. A voxel's contribution is high near the center of its projection and lower when far from the center. This is sort of like the splat a snowball makes when thrown against a wall. Depending upon the relative sizes of the volume and image plane, several voxels may contribute to a single pixel or a single voxel may contribute to several pixels.

17 Splatting The term splatting derives from the analogy with throwing snowballs at a glass plate. The contribution of an individual snowball is higher nearer its center and gradually tails of towards the edges. This is reflected in splatting in the filter used to calculate the contributions of the voxels to the final images. Splatting has similar advantages and disadvantages to the standard volume rendering techniques. However it does have an additional advantage that it is possible for the user to see the image growing one slice at a time, rather than one pixel at a time as with the ray casting technique.

18 Splatting

19 Splatting Splatting Example Dolphin Head (Cranford, Elvins, Mercurio)

20 Algorithms Scalar Algorithms Color Mapping Contouring (contour tracking, Marching squares, cubes…) scalar generation Vector Algorithm Hedgehog and Oriented Glyphs Warping Displacement Plots Time Animations Streamlines Modeling Algorithms Implicit Functions Glyphs Cuttings

M. Eboueya. Algos de la ViSC. 21 Implicit Functions l Modéliser les structures moléculaires avec leur champs d'électrons[. l La mécanique quantique représente la répartition des électrons au sein d'un atome en tant que fonction de densité dans l'espace tridimensionnel. Cette fonction donne la densité en un point donné : l D(x, y, z) = exp(- a.r) avec r = rayon de l'atome. l A partir de là, on peut exprimer la surface comme étant les points qui satisfont l'équation l D(x, y, z) = T( 1 ) avecT = seuil.

M. Eboueya. Algos de la ViSC. 22 Implicit Functions En fait, on peut dire que c'est la distance d'un point de la surface à un point du squelette qui détermine. D(x, y, z) = _( bi exp( -ai.ri )) avec ri = distance de (x, y, z) au centre du i eme atome. Par définition, on appelle fonction implicite une fonction de la forme f(x,y, z) = k, où k est une constante arbitraire.on appelle surface implicite une surface dont l'ensemble des points vérifie l'équation S = {P e R3 / f(P)= k}où k est appelé l'isovaleur.

M. Eboueya. Algos de la ViSC. 23 Implicit Functions

M. Eboueya. Algos de la ViSC. 24 Implicit Functions

M. Eboueya. Algos de la ViSC. 25 Implicit Functions

M. Eboueya. Algos de la ViSC. 26 Implicit Modeling

27 Glyphs Glyphs used to indicate normals. Glyphing is one of the most versatile visualization technique. They are often designed to show many variables simultaneously. The secret of glyph design is simple, an intuitive, relation type between data variable(s) and glyph features.

28 Cutting Gas density as fluid flows through a combustion chamber. The Color correspond to the flow density

29 Conclusion on Volume Visualization Methods The fundamental algorithms are of two types: direct volume rendering (DVR) algorithms and surface-fitting (SF) algorithms. DVR methods map elements directly into screen space without using geometric primitives as an intermediate representation. DVR methods are especially good for datasets with amorphous features such as clouds, fluids, and gases. A disadvantage is that the entire dataset must be traversed for each rendered image. Sometimes a low resolution image is quickly created to check it and then refined. The process of increasing image resolution and quality is called "progressive refinement". SF methods are also called feature-extraction or iso-surfacing and fit planar polygons or surface patches to constant-value contour surfaces. SF methods are usually faster than DVR methods since they traverse the dataset once, for a given threshold value, to obtain the surface and then conventional rendering methods (which may be in hardware) are used to produce the images. New views of the surface can be quickly generated. Using a new threshold is time consuming since the original dataset must be traversed again.

30 Vocabulary Cont. surface modeling Techniques and tools for building up computer representations of objects by modeling their surfaces, usually as a collection of polygonal facets. [WOL93] surface rendering an indirect technique used for visualizing volume primitives by first converting them into an intermediate surface representation (see surface reconstruction) and then using conventional computer graphics techniques to render them. [KAU91] surface reconstruction A procedure that converts a set of data points or cross sections into a surface representation by identifying the surface and representing it with geometric surface primitives. The reconstruction procedure may use one of several techniques, such as contouring, tiling, marching cubes, surface detection, and surface tracking. [KAU91]

31 Vocabulary Cont. volume rendering Volume rendering is a direct technique for visualizing volume primitives without any intermediate conversion of the volumetric dataset to surface representation. [KAU91] isosurface Surfaces within a volume that have the same parameter value. [WOL93] Marching Cubes A method of visualizing 3-D data structures by looking for level surfaces in a 3-space comprised of a lattice of points. In contrast to volume rendering, where one can see the entire structure, marching cubes only allows a single surface to be rendered. [WOL93]

32 Visualization Techniques