scientific visualization
DESCRIPTION
Data Modelling for Scientific Visualization CS 5630 / 6630 August 28, 2007. Scientific Visualization. Recap: The Vis Pipeline. Recap: The Vis Pipeline. Types of Data in SciVis: Functions. http://lambda.gsfc.nasa.gov/product/cobe/firas_image.cfm. - PowerPoint PPT PresentationTRANSCRIPT
Scientific Visualization
Data Modelling for Scientific VisualizationCS 5630 / 6630August 28, 2007
Recap: The Vis Pipeline
Recap: The Vis Pipeline
Types of Data in SciVis: Functions
http://lambda.gsfc.nasa.gov/product/cobe/firas_image.cfm
Types of Data in SciVis: Functions on Circles
E. Anderson et al.: Towards Development of a Circuit Based Treatment for Impaired Memory
Types of Data in SciVis:2D Scalar Fields
Types of Data in SciVis:Scalar Fields on Spheres
http://lambda.gsfc.nasa.gov/product/cobe/firas_image.cfm
Types of Data in SciVis:Types of Data in SciVis:3D, time-varying Scalar Fields3D, time-varying Scalar Fields
http://background.uchicago.edu/~whu/beginners/introduction.htmlhttp://background.uchicago.edu/~whu/beginners/introduction.html
Types of Data in SciVis:2D Vector Fields
Types of Data in SciVis:Types of Data in SciVis:3D Vector Fields3D Vector Fields
Tensors
Tensors are “multilinear functions” rank 0 tensors are scalars rank 1 tensors are vectors rank 2 tensors are matrices, which transform
vectors rank 3..n tensors have no nice name, but
they transform matrices, rank-3 tensors, etc. We are not going to see these
DTI Tensors
DTI Tensors are symmetric, positive definite SPD: scale along orthogonal directions More specifically, they approximate the rate
of directional water diffusion in tissue
Types of Data in SciVis:2D, 3D Tensor Fields
Kindlmann et al. Super-Quadric Tensor Glyphs and Glyph-packing for DTI vis.
Computers like discrete data, but world is continuous
Sampling
Continuous to discrete Store properties at a finite set of points
Sampling
Continuous to discrete Store properties at a finite set of points
Sampling
Continuous to discrete Store properties at a finite set of points
Interpolation
Discrete to continuous Reconstruct the illusion of continuous data,
using finite computation
Nearest Neighbor Interpolation
Pick the closest value to you
Linear Interpolation
Assume function is linear between two samples
Linear Interpolation
Assume function is linear between two samples
v1
v2
0 1u
f(x) = ax + b
v1 = a.0 + b = bv2 = a.1 + b = a + b
b = v1a = v2 – b = v2 - v1
f(x) = v1+ (v2 – v1).x
sometimes written as
f(x) = v2.x + v1.(1-x)
Cubic Interpolation
Linear reconstruction is better than NN, but it is not smooth across sample points
Let's use a cubic Two more parameters: we need constraints Constrain derivatives
Cubic Interpolation
Same as with linear
0 1-1 2
v0v1
v3
v2
f(x) = a+b.x+c.x^2+d.x^3f'(x) = b + 2cx + 3dx^2
f(0) = v1f(1) = v2f'(0) = (v2 – v0)/2f'(1) = (v3 – v1)/2
...
a = v1b = (v2-v0) / 2c = v0 – 5.v1/2 + 2v2 – v3/2d = -v0/2 + 3.v1/2 – 3.v2/2 + v3/2
(VisTrails Demo)
Linear vs Higher-order interpolation in plotting
Might make a big difference!
Kindlmann et al. Geodesic-loxodromes... MICCAI 2007
1D vs n-D
Most common technique: separability Interpolate dimensions one at a time
(VisTrails Demo)
2D Interpolation in VTK images
Implicit vs Explicit Representations
Explicit is parametric Domain and range are “explicit”
Implicit stores domain... implicitly Zero set of a explicit domain Pro: it's easy to change topology of domain:
just change the function Con: it's harder to analyze and compute with
Implicit vs. explicit representations
Explicit:y(t) = sin(t)x(t) = cos(t)
s = (x(t), y(t)), 0 < t <= 2
Implicit:f(x,y) = x^2 + y^2 - 1
s = (x,y): f(x,y) = 0
Regular vs Irregular Data
Regular data: sampling on every point of an integer lattice
Irregular data: more general sampling
Curvilinear grid
Like a regular grid, but on curvilinear coordinates Here, radius and
angle
Triangular and Tetrahedral Meshes
Completely arbitrary samples Need to store topology: How do samples
connect with one another?
Quadrilateral and Hexahedral Meshes
Basic element is a quad or a hex Element shape is better
for computation Much, much harder to
generate
Tabular Data
Most common in information visualization Relational DBs
... etc.
Node vs cell data: do we store values on nodes (vertices) or on cells (tets and tris)?
Pure-quad vs quad-dominant: mixing types of elements
Linear vs high-order: different interpolation modes on elements