DOC PREVIEW
CMU CS 15462 - lecture

This preview shows page 1-2-3-23-24-25-26-46-47-48 out of 48 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 48 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

November 20, 2003Doug JamesCarnegie Mellon Universityhttp://www.cs.cmu.edu/~djames/15-462/Fall03Height Fields and ContoursScalar FieldsVolume RenderingVector Fields[Angel Ch. 12]Height Fields and ContoursScalar FieldsVolume RenderingVector Fields[Angel Ch. 12]VisualizationVisualization15-462 Computer Graphics ILecture 2004/15/2003 15-462 Graphics I 2Scientific VisualizationScientific Visualization• Generally do not start with a 3D model• Must deal with very large data sets– MRI, e.g. 512  512  200  50MB points– Visible Human 512  512  1734  433 MB points• Visualize both real-world and simulation data• User interaction• Automatic search04/15/2003 15-462 Graphics I 3Types of DataTypes of Data• Scalar fields (3D volume of scalars)– E.g., x-ray densities (MRI, CT scan)• Vector fields (3D volume of vectors)– E.g., velocities in a wind tunnel• Tensor fields (3D volume of tensors [matrices])– E.g., stresses in a mechanical part [Angel 12.7]• Static or through timeNCAR SCD04/15/2003 15-462 Graphics I 4Example: Turbulent convectionExample: Turbulent convection• Penetrative turbulent convection in a compressible ideal gas (PTCC) • http://www.vets.ucar.edu/vg/PTCC/index.shtmlplot of enstrophy (vorticity squared) 04/15/2003 15-462 Graphics I 5Example: Turbulent convectionExample: Turbulent convection04/15/2003 15-462 Graphics I 6Example: Turbulent convectionExample: Turbulent convectionHow do we visualize volume data like this?04/15/2003 15-462 Graphics I 7Height FieldHeight Field• Visualizing an explicit function• Adding contour curvesz = f(x,y)g(x,y) = c04/15/2003 15-462 Graphics I 8MeshesMeshes• Function is sampled (given) at xi, yi, 0  i, j  n• Assume equally spaced• Generate quadrilateral or triangular mesh• [Asst 1]04/15/2003 15-462 Graphics I 9Contour CurvesContour Curves• Recall: implicit curve f(x,y) = 0• f(x,y) < 0 inside, f(x,y) > 0 outside• Here: contour curve at f(x,y) = c• Sample at regular intervals for x,y• How can we draw the curve?04/15/2003 15-462 Graphics I 10Marching SquaresMarching Squares• Sample function f at every grid point xi, yj• For every point fi j= f(xi, yj) either fi j c or fi j> c• Distinguish those cases for each corner x– White: fi j c– Black: fi j> c• Now consider cases for curve• Assume “smooth”• Ignore fi j= 004/15/2003 15-462 Graphics I 11Interpolating IntersectionsInterpolating Intersections• Approximate intersection– Midpoint between xi, xi+1and yj, yj+1– Better: interpolate• If fi j= a is closer to c than b = fi+1 jthen intersection is closer to (xi, yj):• Analogous calculationfor y directionfi j= a < c c < b = fi+1 jxixi+1x04/15/2003 15-462 Graphics I 12Cases for Vertex LabelsCases for Vertex Labels16 cases for vertex labels4 unique mod. symmetries04/15/2003 15-462 Graphics I 13Ambiguities of LabelingsAmbiguities of LabelingsAmbiguous labelsDifferent resultingcontoursResolution by subdivision(where possible)04/15/2003 15-462 Graphics I 14Marching Squares ExamplesMarching Squares Examples• Ovals of Cassini, 50  50 gridMidpoint InterpolationContour plot of Honolulu data04/15/2003 15-462 Graphics I 15OutlineOutline• Height Fields and Contours• Scalar Fields• Volume Rendering• Vector Fields04/15/2003 15-462 Graphics I 16Scalar FieldsScalar Fields• Volumetric data sets• Example: tissue density• Assume again regularly sampled• Represent as voxels04/15/2003 15-462 Graphics I 17IsosurfacesIsosurfaces• f(x,y,z) represents volumetric data set• Two rendering methods– Isosurface rendering– Direct volume rendering (use all values [next])• Isosurface given by f(x,y,z) = c• Recall implicit surface g(x, y, z):– g(x, y, z) < 0 inside– g(x, y, z) = 0 surface– g(x, y, z) > 0 outside• Generalize right-hand side from 0 to c04/15/2003 15-462 Graphics I 18Marching CubesMarching Cubes• Display technique for isosurfaces• 3D version of marching squares• 14 cube labelings (after elimination symmetries)04/15/2003 15-462 Graphics I 19Marching Cube TessellationsMarching Cube Tessellations• Generalize marching squares, just more cases• Interpolate as in 2D• Ambiguities similar to 2D04/15/2003 15-462 Graphics I 20Marching Cubes DemoMarching Cubes Demo04/15/2003 15-462 Graphics I 21Volume RenderingVolume Rendering• Sometimes isosurfaces are unnatural• Use all voxels and transparency (α-values)Ray-traced isosurfaceVolume rendering04/15/2003 15-462 Graphics I 22Surface vs. Volume RenderingSurface vs. Volume Rendering• 3D model of surfaces• Convert to triangles• Draw primitives• Lose or disguise data• Good for opaque objects• Scalar field in 3D• Convert to RGBA values• Render volume “directly”• See data as given• Good for complex objects04/15/2003 15-462 Graphics I 23Sample ApplicationsSample Applications• Medical– Computed Tomography (CT)– Magnetic Resonance Imaging (MRI)– Ultrasound• Engineering and Science– Computational Fluid Dynamic (CFD)– Aerodynamic simulations– Meteorology– Astrophysics04/15/2003 15-462 Graphics I 24Volume Rendering PipelineVolume Rendering Pipeline• Transfer function: from data set to colors and opacities– Example: 256  256  64  2 = 4 MB– Example: use colormap (8 bit color, 8 bit opacity)Data setsRenderingSample VolumeTransfer functionImage04/15/2003 15-462 Graphics I 25Transfer FunctionsTransfer Functions• Transform scalar data values to RGBA values• Apply to every voxel in volume• Highly application dependent• Start from data histogram• Opacity for emphasis04/15/2003 15-462 Graphics I 26Transfer Function ExampleTransfer Function ExampleMantle ConvectionScientific Computing and Imaging (SCI)University of Utah04/15/2003 15-462 Graphics I 27Volume Ray CastingVolume Ray Casting• Three volume rendering techniques– Volume ray casting– Splatting– 3D texture mapping• Ray Casting– Integrate color and opacity along ray– Consider lighting (surfaces?)– Use regular x,y,z data grid when possible– Finite elements when necessary (e.g., ultrasound)– 3D-rasterize geometrical primitives04/15/2003 15-462 Graphics I 28Accumulating OpacityAccumulating Opacity• α = 1.0 is opaque• Composity multiple layers according to opacity• Use local gradient of opacity to detect surfaces for lighting04/15/2003 15-462 Graphics I 29Real-Time Ray Tracer (Utah)Real-Time Ray Tracer (Utah)• Implemented on SGI Origin 3000


View Full Document

CMU CS 15462 - lecture

Download lecture
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view lecture and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view lecture 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?