Lecture 2 : Visualization Basics Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University
Surface Graphics Objects are explicitely defined by a surface or boundary representation (explicit inside vs outside) This boundary representation can be given by: –a mesh of polygons : –a mesh of spline patches
Surface Graphics : Pros and Cons Pros : –fast rendering algorithms are available –acceleration in special hardware is relatively easy and cheap (many $200 game boards) –use OpenGL to specify rendering parameters –surface realism can be added via texture mapping Cons : –discards the interior of the object and just maintains the object’s shell –does not facilitate real-world operations such cutting, slicing, disection –does not enable artificial viewing modes such as semi-transparencies, X-ray –surface-less phenomena such as clouds, fog, gas are hard to model and represent
Volume Graphics Maintains a 3D image representation that is close to the underlying fully-3D object (but discrete)
Volume Graphics : Pros and Cons Pros : –can achieve a level of realism (and ‘hyper-realism’) that is unmatched by surface graphics –allows easy and natural exploration of volumetric datasets Cons : –has high rendering complexity Rendering of the inside of a human colon surface rendered volume rendered
Volumetric Image (3D image, volume) it is a 3D array of point samples, called voxels (volume elements) the point samples are located at the grid points the process of generating a 2D image from the 3D volume is called volume rendering
Basics on Differentiation (of Scalar and Vector Function) Refer to Prof. Han-Wei Shen’s Notes. Useful for understanding images and gradients
Data Acquisition Scanned/Sampled Data –CT/MRI/Ultrasound –Electron Microscopy Computed/Simulated Data Modeled/Synthetic Data
Time-Varying Data Time-Varying Data from Scanning
Evolutionary Morphing
Imaging Scanners Scanners can yield both domains and functions on domains –Scanners yielding domains Point Cloud Scanners: 300μ-800μ CT, MRI: 10μ-200μ Light microscopy: 5μ-10μ Electron microscopy: < 1μ Ultra microscopy like Cyro EM 50Å-100Å
Imaging Techniques Computed Tomography (CT) –Measures spacially varying X-ray attenuation coefficient –Each slice 1-10mm thick –High resolution, low noise –Good for high density solids Magnetic Resonance Imaging (MRI) –Measures distribution of mobile hydrogen nuclei by quantifying relaxation times –Moderate noise –Works well with soft tissue Ultrasound –Handheld probe –Inexpensive, fast, and real-time –High noise with moderate resolution
Various Data Characteristics Static Scalar Meshed Dense Time varying data Vector, Tensor Meshless Sparse
Data Format Mesh (Grid) Type –Regular –Rectilinear –Unstructured –Meshless Mesh type conversion –Meshless to meshed
Mesh Types Mesh taxonomy –Regular static meshes: There is an indexing scheme, say i,j,k, with the actual positions being determined as i*dx, j*dy, k*dz. If dx=dy=dz, then, –In 2-D, we get a pixel, and in 3-D, a voxel. dy dx A 2-D regular rectilinear grid
Mesh Types –Irregular static meshes: Rectilinear: –Individual cells are not identical but are rectangular, and connectivity is related to a rectangular grid dx, dy are not constant in grid, but connectivity is similar in topology to regular grids. A 2-D regular rectilinear grid
Mesh types (contd) Curvilinear: –Sometimes called structured grids as the cells are irregular cubes – a regular grid subjected to a non-linear transformation so as to fill a volume or surround an object. A 2-D curvilinear grid
Mesh Types (contd) Unstructured: –Cells are of any shape (tetrahedral), hexahedra, etc with no implicit connectivity Hybrid: –Combination of curvilinear and unstructured grids. –Dynamic (Time-varying) meshes
Triangulations (Delaunay) & Dual Diagrams (Voronoi) äUnion of balls äTriangulation & Dual äNerve sub-complex Meshless Data Meshed Data
Particle Data to Meshes Weighted point P = ( p, w p ) where Power distance from with is the Euclidean distance A x p
Power Diagram ( PD ) of a weighted point set Tiling of space into convex regions where i th region ( tile ) are the set of points in nearest to p i in the power distance metric. Regular Triangulation ( RT ) Dual of Power Diagram ( PD ) with an edge of RT for each Bisector Plane of PD Bisector Plane which matches power distance. l l1 l2 p1p2
Particle Data to Meshes Atomic Centers CPK CPK Alpha-Shape Solvent Accessible Surface (SAS ) Power Diagram of SAS Solvent Excluded Surface (SES)
Molecular Surfaces (Solvent Excluded Surface) SES = spherical patches + toroidal patches +concave patches
Field Data Scalar temperature, pressure, density, energy, change, resistance, capacitance, refractive index, wavelength, frequency & fluid content. Vector velocity, acceleration, angular velocity, force, momentum, magnetic field, electric field, gravitational field, current, surface normal Tensor stress, strain, conductivity, moment of inertia and electromagnetic field Multivariate Time Series
Interpolation Interpolation/Approximation are often used to approximate the data on the domain In other words, it constructs a continuous function on the domain
Linear Interpolation on a line segment p 0 p p 1 The Barycentric coordinates α = (α 0 α 1 ) for any point p on line segment, are given by which yields p = α 0 p 0 + α 1 p 1 and f p = α 0 f 0 + α 1 f 1 f f1f1 f0f0 fpfp
Linear interpolation over a triangle p 0 p 1 p p 2 For a triangle p 0,p 1,p 2, the Barycentric coordinates α = (α 0 α 1 α 2 ) for point p,
Linear interpolant over a tetrahedron Linear Interpolation within a Tetrahedron (p 0,p 1,p 2,p 3 ) α = α i are the barycentric coordinates of p p 3 p p 0 p 2 p 1 fp 0 fp 1 fp 3 fp 2 fp
Other 3D Interpolation Unit Prism (p 1,p 2,p 3,p 4,p 5,p 6 ) p 1 p 2 p 3 p p 4 p 5 p 6 Note: nonlinear
Other 3D Interpolation Unit Pyramid (p 0,p 1,p 2,p 3,p 4 ) p 0 p 1 p 2 p p 3 p 4 Note: nonlinear
Trilinear Interpolation Unit Cube (p 1,p 2,p 3,p 4,p 5,p 6,p 7,p 8 ) –Tensor in all 3 dimensions p 1 p 2 p 3 p 4 p p 5 p 6 p 7 p 8 Trilinear interpolant
Comparison Bicubic vs Bilinear vs nearest point
Resampling Used in image resize or data type conversion –Rectilinear to rectilinear –Unstructured to rectilinear
Rendering Isocontouring (Surface Rendering) –Builds a display list of isovalued lines/surfaces Volume Rendering –3D volume primitives are transformed into 2D discrete pixel space
Volume Rover Demo
Isosurface Visualization Isosurface (i.e. Level Set ) : –C(w) = { x | F(x) - w = 0 } ( w : isovalue, F(x) : real-valued function ) isosurfacing Surface Topology : –Property that is invariant to continuous deformation (without cutting or gluing), e.g. donut & cup
Isocontouring 2. Isocontouring [Lorensen and Cline87,…] Popular Visualization Techniques for Scalar Fields Definition of isosurface C(w) of a scalar field F(x) C(w)={x|F(x)-w=0}, ( w is isovalue and x is domain R 3 ) ( Isocontour in 2D function: isovalue=0.5 ) Marching Cubes for Isosurface Extraction 1.Dividing the volume into a set of cubes 2.For each cubes, triangulate it based on the 2^8(reduced to 15) cases
Cube Polygonization Template
Volume Rendering 1. Volume Rendering [Drebin88,…] Popular Visualization Techniques for Scalar Fields Hardware Acceleration ( 3D Texturing ) [Westermann98] C, C I I’ I’= C C + (1- C )I C : color C : opacity Light traversal from back to front 1.Slicing along the viewing direction 2.Put 3D textures on the slice 3.Interactive color table manipulation
Transfer Function Mapping from density to (color, opacity)
Medical applications