12_volume_visualization_4

12_volume_visualization_4 - Overview CS 530 Introduction to...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Overview CS 530 Introduction to Scientific Visualization CS 53000 Introduction to Scientific Visualization • Scalar Volumes Volume Visualization October 6, 2009 • Ray casting • Shear warp • Splatting • Graphics texture memory CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Isosurfaces Isosurfacing is limited • Isosurfacing is "binary" • Contour lines • • Images -> curves • Volumes -> surfaces Marching cubes (Lorensen 87) • Triangulated surface at a given isovalue • • point inside isosurface? voxel contributes to image? • Is a hard, distinct boundary necessarily appropriate for the visualization task? Slice CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Isosurface Volume Rendering Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Spirit of volume rendering • “Every voxel contributes to image" • Greater flexibility Marc Levoy, 1988 "Display of Surfaces from Volume Data" CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Pipelines: Iso vs. Vol Ren The standard line - "no intermediate geometric structures" Volume Data Isosurface extraction Triangles surface rendering Rendered Image Rendered Image Purdue University Spring ‘08 Volume Data volume rendering standard graphics operations: shading, lighting, compositing CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization What is Volume Rendering? • Any rendering process which maps from volume data to an image without introducing binary distinctions / intermediate geometry • How do you make the data visible? What is Volume Rendering? • Any rendering process which maps from volume data to an image without introducing binary distinctions / intermediate geometry • How do you make the data visible? ! color and opacity CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Direct volume rendering Isosurfacing is Limited • Isosurfacing poor for ... • Directly get a 3D representation of the volume data • The data is considered to represent a semitransparent light-emitting medium • Also gaseous phenomena can be simulated • measured, "real-world" (noisy) data • amorphous, "soft" objects • Approaches are based on the laws of physics (emission, absorption, scattering) • The volume data is used as a whole (look inside, see all interior structures) virtual angiography CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization bovine combustion simulation Purdue University Spring ‘08 Fundamentals (Physics) DVR Emission active Optical Model Integral along ray emitted color D 0 c(R) = c(s(x(t)))µ(s(x(t)))e− Rt 0 cumulative absorption µ(s(u))du Absorption • Density attenuation • Kajiya: R e −τ t2 t1 σ (t)dt scattering • Volume Rendering Integral dt active scattering Purdue University Spring ‘08 Markus Hadwiger, IEEE Visualization 2002 Tutorial Notes CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization 12 DVR I(s0) s0 Absorption along the distance s0 - s Integration DVR I(s0) s0 Integration • Emission and absorption of light Ray s • Emission and absorption of light ~ q(s’) S‘ Active Emission at s‘ ~ Ray Absorption along the distance s‘ - s s Initial intensity (Emission) at s0 Absorption I (s) = I (s0 )e −τ (s0 ,s) τ (s1 , s2 ) = s2 κ(s)ds s1 Markus Hadwiger, IEEE Visualization 2002 Tutorial Notes 13 I (s) = I (s0 )e −τ (s0 ,s) + s ´ q (´)e−τ (s,s) ds s ´ s0 Markus Hadwiger, IEEE Visualization 2002 Tutorial Notes 14 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 DVR Resample along ray s0 I (s0 ) T(s) Discrete Approximation Ray General Components I (si )I (si+1 ) • Basic diagram Ray t1 Light si si+1 T(s) q (si ), A(si ) q (si+1 ), A(si+1 ) Back-to-front Compositing with α = A(si ) I (si+1 ) = αq (si+1 ) + (1 − α)I (si ) = q (si + 1) OVER I (si ) Markus Hadwiger, IEEE Visualization 2002 Tutorial Notes 15 P t2 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 • C(p), !(p) – p is a point in volume • Functions of input data f(p) • C(f), !(f) – these are 1D functions • Can include lighting affects • Derivatives of f • C(f, N(p), L) where N(p) = grad(f) • C(f, grad(f) ), !(f, grad(f) ) Purdue University Spring ‘08 Color and Opacity Transfer Functions Transfer Functions (TFs) ! RGB Map data value f to color and opacity f RGB(f) !(f) Shading, Compositing… CS530Human Tooth CT Visualization CS- 53000 - Introduction to Scientific Visualization - 10/06/2009 Introduction to Scientific Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Volume Rendering Usefulness • Measured sources of volume data • CT • PET • MRI • Ultrasound • Confocal Microscopy (computed tomography) (positron emission tomography) (magnetic resonance imaging) volume • Synthetic sources ofdynamics) data CFD (computational fluid Volume Rendering Usefulness Voxelization of discrete geometry • • CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Volume Rendering: Interfaces Transfer function, With shading Skin/Air Bone/Soft tissue Bone/Air Concepts f(0,1,0) • Voxels • basic unit of volume data f(0,0,0) • Interpolation • trilinear common, others possible • Gradient • direction of fastest change • Compositing • "over operator" CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization f(1,0,0) CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Purdue University Spring ‘08 !f!= (dx, dy, dz) ! ! = ( (f(1,0,0) - f(-1,0,0))/2, (f(0,1,0) - f(0,-1,0))/2, ! (f(0,0,1) - f(0,0,-1))/2) • Approximates "surface normal“ (of isosurface) "f Gradient Compositing: Over Operator cf = (0,1,0) af = 0.4 c = af*cf + (1 - af)*ab*cb a = af + (1 - af)*ab cb = (1,0,0) ab = 0.9 cred = 0.4*0 + (1-0.4)*0.9*1 = 0.6*0.9 = 0.54 cgreen = 0.4*1 + (1-0.4)*0.9*0 = 0.4 cblue = 0.4*0 + (1-0.4)*0.9*0 = 0 a = 0.4 + (1 – 0.4)*(0.9) = 0.4 + 0.6*0.9) CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization c = (0.54,0.4,0) a = 0.94 Purdue University Spring ‘08 Compositing: Over Operator cf = (0,1,1) af = 0.4 cf = (0,1,0) af = 0.4 cred = 0.4*0 + (1-0.4)*0.9*1 = 0.6*0.9 = 0.54 cgreen = 0.4*1 + (1-0.4)*0.9*0 = 0.4 cblue = 0.4*0 + (1-0.4)*0.9*0 = 0 a = 0.4 + (1 – 0.4)*(0.9) = 0.4 + 0.6*0.9) c = af*cf + (1 - af)*ab*cb a = af + (1 - af)*ab Compositing: Over Operator c = af*cf + (1 - af)*ab*cb a = af + (1 - af)*ab Order Matters! cb = (0.54,0.4,0) ab = 0.94 cb = (1,0,0) ab = 0.9 cred = 0.4*0 + (1-0.4)*0.94*0.54 = 0.6*0.94*.54 = 0.30 cgreen = 0.4*1 + (1-0.4)*0.94*0.4 = 0.6*0.94*.4 = 0.23 cblue = 0.4*1 + (1-0.4)*0.94*0 = .4 a = 0.4 + (1 – 0.4)*(0.94) = 0.4 + 0.6*0.94) = .964 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization c = (0.3,0.23,0.4) Purdue University Spring ‘08 a = 0.964 c = (0.3,0.23,0.4) a = 0.964 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization c = (0.3,0.23,0.23) a = 0.964 Purdue University Spring ‘08 Pixel Compositing Schemes Intensity Max Intensity Compositing – First (Threshold) Accumulate Average First First Depth Depth CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 • Extracts iso-surfaces (again!) CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Compositing - Average Intensity Compositing - MIP Intensity Max Average Depth Depth Synthetic Reprojection CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Maximum Intensity Projection used for Magnetic Resonance Angiogram CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Compositing - Accumulate Intensity Accumulate Depth Make transparent layers visible; uses a transfer function for color/opacity CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Computational Strategies • How can the basic ingredients be combined: • Image Order • Ray casting (many options) • Object Order • splatting, texture-mapping • Combination (neither) • Shear-warp, Fourier Image Order • Render image one pixel at a time For each pixel ... - cast ray - interpolate - transfer function - composite CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Raycasting • Back to Front! • Front to Back • • • intuitively right not simple over operator facilitates early ray termination Raycasting: compositing • • straightforward use of over operator intuitively backwards • Back to Front: (eye) ci ; ai composite order Ci Ci+1 Ci+1 = ai*ci + (1 - ai)*Ci CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Raycasting: compositing • Front to Back: (eye) Ci ; Ai composite order •Which is better? • Front to Back: • Back to Front: Raycasting: compositing ci ; ai Ci+1 ; Ai+1 Ci+1 = Ci + (1 - Ai)*ai*ci Ai+1 = Ai + (1 - Ai)*ai Ci+1 = Ci + (1 - Ai)*ai*ci Ai+1 = Ai + (1 - Ai)*ai CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Ci+1 = ai*ci + (1 - ai)*Ci CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 General Components General Components • Basic diagram Ray t1 t2 Light • Basic diagram Ray t1 Light P t2 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 General Components General Components • Basic diagram Ray t1 Light • Basic diagram Ray t1 Light P t2 P t2 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 General Components General Components • Basic diagram Ray t1 Light • Basic diagram Ray t1 Light P t2 P t2 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 General Components • Basic diagram Ray t1 Ray-casting - Highlights Advantages: • Simple algorithm • Inherently parallel • Can add features (like a ray-tracer) Light P t2 Disadvantages: • Slow (lots of rays, lots of samples) • Must sample densely • Requires entire data set in memory Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Object Order Splatting • Lee Westover - Vis 1989; SIGGRAPH 1990 • Object order method • Front-To-Back or Back-To-Front • Main idea: • Throw voxels to the image • Has been used for surfaces – • Pfister SIGGRAPH 2000 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 • Render image one voxel at a time for each voxel ... - transfer function - determine image contribution - composite CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Splatting • Process from closest voxel to furthest voxel Splatting Algorithm: • Biggest problem: determination of voxel’s projected area called its footprint CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Splatting - Implementation • • • Voxel kernels are added within sheets Sheets are composited front-to-back Sheets = volume slices most perpendicular to the image plane volume slices z Splatting - Implementation • Volume volume slices volume slices y x image plane at 30° CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization image plane at 70° Purdue University Spring ‘08 image plane sheet buffer compositing buffer Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Splatting - Implementation Splatting - Implementation • Add voxel kernels within first sheet volume slices • Transfer to compositing buffer volume slices image plane sheet buffer compositing buffer Purdue University Spring ‘08 image plane sheet buffer compositing buffer Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Splatting - Implementation Splatting - Implementation • Add voxel kernels within second sheet volume slices • Composite sheet with compositing buffer volume slices image plane sheet buffer compositing buffer Purdue University Spring ‘08 image plane sheet buffer compositing buffer Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Splatting - Implementation Splatting - Implementation • Add voxel kernels within third sheet volume slices • Composite sheet with compositing buffer volume slices image plane sheet buffer compositing buffer Purdue University Spring ‘08 image plane sheet buffer compositing buffer Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Splatting - Drawbacks Splatting - Highlights Advantages: • Footprints can be pre-integrated • Fast: voxel interpolation is in 2D on screen • More accurate integration (analytic for X-ray) • More accurate reconstruction (better kernels) • Only relevant voxels must be projected • Inaccurate compositing Part of this pixel gets composited before part of this pixel Disadvantages: • Blurry images for zoomed views! • High fill-rate for zoomed splats! • Result is wrong where filter overlap CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Unstructured Volume Rendering that consists of • Given an irregular data setfrom FEM simulation) volumetric cells (typically PT algorithm of Shirley and Tuchman • How can the volume be displayed accurately? • Numerous approaches: • • • • Ray casting Ray tracing Sweep plane algorithms (e.g. ZSWEEP) PT algorithm of Shirley and Tuchman Purdue University Spring ‘08 • Decompose each cell into tetrahedra the • Sortback tetrahedra in a to front • fashion Project each tetrahedron and render its decomposition into 3 or 4 triangles Two different non-degenerate classes of the projected tetrahedra Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Volume Density Optical Model • For the Volume Density Optical Model of Williams et al. the emission and absorption along a light ray is defined by the transfer functions #(f(x,y,z)) and $(f(x,y,z)) with f(x,y,z) being the scalar function linear or piecewise linear function, or as a lookup table pixel the ray integral of the • For each rendered segment has to be computed corresponding ray Composing of the Tetrahedra • Usually the transfer functions are given as a CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 ray integral depends only on • Observation: TheVolume Density Optical Model S , S , and l for the of Williams et al. f b CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 3D Texturing Approach • Compute the threedimensional ray Pros / Cons • Pros: • integral by numerical integration and store the integrated chromaticity and opacity in a 3D texture Assign appropriate texture coords (Sf,Sb,l) to the projected vertices of each tetrahedron Purdue University Spring ‘08 • Object order method • Hardware-accelerated approach • Per-pixel exact rendering • Sort Required • Slower than uniform volume rend. Purdue University Spring ‘08 • Cons: CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Shear-warp factorization General goal - make viewing rays parallel to each other and perpendicular to the image This is achieved by a simple shear, followed by a 2D image warp: shear Shear-warp factorization • Algorithm: • • • Shears along the volume slices Projection and compositing Transformation to get correct Shear result Projection Slices View rays warp View plane CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Transformation Purdue University Spring ‘08 Shear-warp factorization Shear Warp Rendering Advantages • For one scanline 1. Shear + Resampling Generate Scanline 3. Transformation + Resampling • Pixel scanlines(intermediate) are parallel to voxel rows • All voxels in a slice are scaled uniformly • Therefore, the sampling rate is uniform within each volume slice • Similar to template-based volume ray casting (Yagel 91) Disadvantages Voxel Scanline 2. Projection + Compositing CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 • Affine projection (no perspective) • Compute time (relative to splatting & slice-based) Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Rendering by Slicing - Why? Slice Based Rendering color opacity • Store volume in solid texture memory • Hardware steps: • Slicing of the volume (proxy geom) • Composite the slices in a BTF order CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 object (color, opacity) 1.0 Similar to ray-casting with simultaneous rays Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Image plane Slice Based Rendering Slices 1 slice Slice Based Rendering Slices View direction Eye Graphics Hardware • • • Polygons Textures Blending operations Volume Data 5 slices – Proxy geometry – Data & interpolation – Numerical integration 20 slices Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization 45 slices 85 slices 170 slices Purdue University Spring ‘08 Slice Based Problems? Does not perform correct • Illumination • Accumulation - but can get close Summary • Volume Ray Casting: • • • • Slow Back Projection Can not easily add correct illumination and shadowing • See the Van Gelder paper for their addition for illumination • Stored in LUT quantized normal vector directions • Requires entire data set in memory Can produce reflections, shadows, and complex illumination “relatively” easily Easily parallelizable CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Summary • Splatting • • • Medium speed Forward Projection Summary • Shear-Warp • • • Medium - Fast speed Forward Projection (object order) • Don’t need entire data set in memory • Don’t need entire data set in memory Footprint evaluation / determination main challenge Much simpler sampling than splatting CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 Summary • Hardware Texture Mapping • • • • Extremely Fast Can’t do correct illumination Approximate accumulation Difficult to add detailed color and texture ! ! Setting Transfer Function: Hard ! v v ! v CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization v Purdue University Spring ‘08 “Where’s the edge?” Finding edges: easy v = f (x) x “ here’s the edge ” ! Transfer function Unintuitive v = f (x) “ here’s the edge ” x v0 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Result: edge pixels Purdue University Spring ‘08 0 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization v v Purdue University Spring ‘08 Physical based transf. Funcs. • Material Classification Air Bone Fat Tissue • Use a probability, rather than a threshold. • Bayesian estimate • Zone centered • We know the x-ray absorptions of the materials (bone, ...) CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization • Assign opacity from data value and |"f| • Example of flexibility of volume rendering "2D" transfer functions 1 2 3 4 5 6 7 8 9 10 12 14 16 18 20 Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 "2D" transfer functions Fine-grain control over what types of material contribute to the rendered image "2D" opacity functions, cont. CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 CS530 - 53000 - Introduction to Scientific Visualization - 10/06/2009 CS Introduction to Scientific Visualization Purdue University Spring ‘08 ...
View Full Document

Ask a homework question - tutors are online