VTK: Data Shroeder et al. Chapter 5 University of Texas – Pan American CSCI 6361, Spring 2014 After Taku Komura and other lecture sets

Slides:



Advertisements
Similar presentations
Today Composing transformations 3D Transformations
Advertisements

Visualization Data Representation Ray Gasser SCV Visualization Workshop – Fall 2008.
Extended Gaussian Images
WFM 6202: Remote Sensing and GIS in Water Management © Dr. Akm Saiful IslamDr. Akm Saiful Islam WFM 6202: Remote Sensing and GIS in Water Management Akm.
Shared Graphics Skills Cameras and Clipping Planes
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2013.
CDS 301 Fall, 2009 Scalar Visualization Chap. 5 September 24, 2009 Jie Zhang Copyright ©
Graphics Graphics Korea University cgvr.korea.ac.kr 3D Object Representation 고려대학교 컴퓨터 그래픽스 연구실.
HCI 530 : Seminar (HCI) Damian Schofield.
GATE D Object Representations (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager SimBT.
Cartographic and GIS Data Structures
Surface Reconstruction from 3D Volume Data. Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
Chapter 3 2D AND 3D SPATIAL DATA REPRESENTATIONS 김 정 준.
ITUppsala universitet Data representation and fundamental algorithms Filip Malmberg
Scientific Data Representation and Mapping
Geometric Objects and Transformations Geometric Entities Representation vs. Reference System Geometric ADT (Abstract Data Types)
1 Finite-Volume Formulation. 2 Review of the Integral Equation The integral equation for the conservation statement is: Equation applies for a control.
10/5/04© University of Wisconsin, CS559 Fall 2004 Last Time Compositing Painterly Rendering Intro to 3D Graphics Homework 3 due Oct 12 in class.
MS. WILLIAMS Anatomy of a 3D Model. 3D Model 3D Models are one of the essential building blocks of 3D computer graphics. Without them there would be no.
Spatial data models (types)
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Introduction --Classification Shape ContourRegion Structural Syntactic Graph Tree Model-driven Data-driven Perimeter Compactness Eccentricity.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
Polygon Shading. Assigning color to a shape to make graphical scenes look realistic, or artistic, or whatever effect we’re attempting to achieve But first.
CS 450: Computer Graphics REVIEW: OVERVIEW OF POLYGONS
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
EMSE 3123 Math and Science in Education
CS 551/651 Advanced Computer Graphics Warping and Morphing Spring 2002.
Mathematics for Graphics. 1 Objectives Introduce the elements of geometry  Scalars  Vectors  Points Develop mathematical operations among them in a.
8. Geographic Data Modeling. Outline Definitions Data models / modeling GIS data models – Topology.
Raster Data Model.
Cartographic and GIS Data Structures Dr. Ahmad BinTouq URL:
Difference Between Raster and Vector Images Raster and vector are the two basic data structures for storing and manipulating images and graphics data on.
Image Synthesis Rabie A. Ramadan, PhD 1. 2 About my self Rabie A. Ramadan My website and publications
Geometric Objects and Transformation
Representation. Objectives Introduce concepts such as dimension and basis Introduce coordinate systems for representing vectors spaces and frames for.
A. Polyhedrons 1. Vocabulary of Polyhedrons 2. Building Polyhedrons a. Create a net from the Polyhedron b. Create the Polyhedron from the net B. Prisms.
Game Programming 06 The Rendering Engine
16/5/ :47 UML Computer Graphics Conceptual Model Application Model Application Program Graphics System Output Devices Input Devices API Function.
1 Spatial Data Models and Structure. 2 Part 1: Basic Geographic Concepts Real world -> Digital Environment –GIS data represent a simplified view of physical.
Computer Graphics Chapter 6 Andreas Savva. 2 Interactive Graphics Graphics provides one of the most natural means of communicating with a computer. Interactive.
CHAPTER 8 Color and Texture Mapping © 2008 Cengage Learning EMEA.
Visual Computing Geometric Modelling 1 INFO410 & INFO350 S2 2015
Volume Visualization Presented by Zhao, hai. What’ volume visualization Volume visualization is the creation of graphical representations of data sets.
Computer Graphics Rendering 2D Geometry CO2409 Computer Graphics Week 2.
Image Synthesis Rabie A. Ramadan, PhD 4. 2 Review Questions Q1: What are the two principal tasks required to create an image of a three-dimensional scene?
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Cartographic Objects Digital Images of a Map Vector Data Model Raster Data Model.
CS COMPUTER GRAPHICS LABORATORY. LIST OF EXPERIMENTS 1.Implementation of Bresenhams Algorithm – Line, Circle, Ellipse. 2.Implementation of Line,
3D Object Representations 2011, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Computer Graphics Matrices
Data Visualization Fall The Data as a Quantity Quantities can be classified in two categories: Intrinsically continuous (scientific visualization,
Vocabulary for the Common Core Sixth Grade.  base: The side of a polygon that is perpendicular to the altitude or height. Base of this triangle Height.
3D Object Representations 2009, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
3D Ojbects: Transformations and Modeling. Matrix Operations Matrices have dimensions: Vectors can be thought of as matrices: v=[2,3,4,1] is a 1x4 matrix.
Lecture 9 From Vertices to Fragments. Objectives Introduce basic implementation strategies Clipping Rasterization hidden-surface removal.
ITEC2110, Digital Media Chapter 2 Fundamentals of Digital Imaging 1 GGC -- ITEC Digital Media.
Visualization Fundamentals
VTK: The Visualization Toolkit
POLYGON MESH Advance Computer Graphics
Modeling 101 For the moment assume that all geometry consists of points, lines and faces Line: A segment between two endpoints Face: A planar area bounded.
3D Graphics Rendering PPT By Ricardo Veguilla.
3D Object Representations
3D Object Representation
Domain-Modeling Techniques
Cartographic and GIS Data Structures
Lecture 13 Clipping & Scan Conversion
Visualization CSE 694L Roger Crawfis The Ohio State University.
Presentation transcript:

VTK: Data Shroeder et al. Chapter 5 University of Texas – Pan American CSCI 6361, Spring 2014 After Taku Komura and other lecture sets

Overview Provides overview or “road map” to data and structure representations in VTK –Same data and structure representation concepts common in computer graphics Do understand that examples from previous weeks are more like the “high level” at which you’ll be working for the terrain and color mapping project Discrete vs. continuous representation Topology and Geometry VTK data representations – cell types –0, 1, 2, 3, dimensions –Structured and unstructured Data attributes

Data Representation in Visualization Last time - system architecture for visualization –visualization pipeline –rendering techniques –Focus now on data For (computer) visualization data is –discrete (in representation) –structured / unstructured (e.g. grid / cloud) –of a specific dimension (1, 2, 3, n) Computer graphics, recall, is foundation –Here, will take foundational ideas and characterize with focus on applications in visualization Can think of organizing structure (architecture) for data: –Topology How things (data elements) fit together –Geometry Particular values that create (instantiate) a particular object Data Attributes

Data Representation in Visualization Last time - system architecture for visualization –visualization pipeline –rendering techniques –Focus now on data For (computer) visualization data is –discrete (in representation) –structured / unstructured (e.g. grid / cloud) –of a specific dimension (1, 2, 3, n) Computer graphics, recall, is foundation –Here, will take foundational ideas and characterize with focus on applications in visualization Can think of organizing structure (architecture) for data: –Topology How things (data elements) fit together –Geometry Particular values that create (instantiate) a particular object Data Attributes

Data: Discrete vs. Continuous Real World is continuous (duh) Data for visualization is discrete –Computers are good in handling discrete data –discrete representation of a real world (of abstract) concept Text example of –y = x 2, and f(x,y) = x 2 - y 2 –Obviously, continuous –To create digital / visual representation must sample points (with which you are now familiar) E.g., built in method for sampling over function However, difficult to visualize continuous shape from raw discrete sampling? –Requires topology and interpolation –… “how things fit together”

Topology and Geometry Topology: –Just, the way the data points are “put together” … As lines, polygons, etc. –More formally: Relationships within the data invariant under geometric transformation (e.g., orientation, translation) –i.e., the information which vertex is connected to which edge, which face is composed of which edges, etc. Did not say much about transformation earlier when looking at graphics –Idea is that classes of transformations preserve certain properties –E.g., affine transformations for computer graphics Geometry: –Just, putting particular values in for the elements of particular topology –Creating an instance of (or instantiating) a particular form Topology is invariant under geometric transformation

Interpolation and Topology For various reasons interpolation is important in visualization –Recall cg shading, e.g., Gouraud –Pragmatically, for storage efficiency –For representing change over known (or ascribed) values Interpolation: –Increasing resolution of a discrete representation by producing intermediate samples Use interpolation to shade whole cube: –in example: producing intermediate color pixels over cube topology from discrete vertex samples Example: –Vertices represent spatial temperature at the 8 discrete points? e.g. a color scale with blue(=cold) -> green -> red( = hot) –How to visualize temperature field over whole cube?

Detail: Interpolate over a Rectangle Optional – see text How till the red color dot on the right lower corner affect the color of the point near the left top? What happens if we change the representation? Discrete data samples remain the same –Topology has changed => affects interpolation => effects visualization

Interpolation in Digital Images Often used technique Some digital cameras use interpolation to produce a larger image than the sensor captured –Also using the topology of data –E.g. below: top, just increase size – original pixels evident, bottom, interpolate From computer graphics –Various smoothing (and antialiasing) algorithms, effectively “interpolation”, as used here

Topological Dimension, or, Dimensionality Data has an inherent topological dimension –I.e., minimum number of independent continuous variables needed to specify the location inside the data –Or, just, dimensionality –Points : 0D, –Lines, curves : 1D, –Surfaces : 2D, –Volumes : 3D –Time dependent volumes : 4D –and, n-dimensional …

VTK Data Representation VTK-ese, or terminology Data objects: structure + value –A “dataset”

Dataset, again Again, dataset consists of 2 main components –Structure of the data Structure gives spatial meaning to the attributes –Value Attributes associated to particular parts of the structure Example: –values = { blue, green, green, green, green, green, turquoise, red} –attributes alone are meaningless without structure

Structure of Data Again Structure has 2 main parts –Topology : determines interpolation required for visualization “shape” of data –Geometry instantiation of the topology specific position of points in geometric space

Concrete Representation of Datasets Putting things together in VTK Points specify where the data is known – specify geometry Cells allow us to interpolate between points –specify topology of points

VTK Cells Similar to OpenGL – no surprise Quite similar in all graphics applications Fundamental building blocks of shapes Defined by topological dimension –1,2,3d Specified as an ordered point list Primary or composite cells –composite : consists of one or more primary cells

0 and 1 Dimensional Cell Types (straightforward) Zero-dimensional –Vertex Primary zero-dimensional cell Definition: single point –Polyvertex Composite zero-dimensional cell –composite : comprises of several vertex cells Definition: arbitrarily ordered set of points One-dimensional –Line Primary one-dimensional cell type Definition: 2 points, direction is from first to second point. –Polyline Composite one-dimensional cell type Definition: an ordered set of n+1 points, where n is the number of lines in the polyline

Two-Dimensional Cell Types Many to enhance polygon representation flexibility Triangle –Primary 2D cell type –Definition: counter-clockwise ordering of 3 points order of the points specifies the direction of the surface normal Triangle strip –Composite 2D cell consisting of a strip of triangles –Definition: ordered list of n+2 points n is the number of triangles Quadrilateral –Primary 2D cell type –Definition: ordered list of four points lying in a plane constraints: convex + edges must not intersect Pixel –Primary 2D cell, consisting of 4 points topologically equivalent to a quadrilateral constraints: perpendicular edges; axis aligned –numbering is in increasing axis coordinates Polygon –Primary 2D cell type –Definition: ordered list of 3 or more points constraint: may not self-intersect

Three-Dimensional Cell Types Tetrahedron –Definition: list of 4 non-planar points Six edges, four faces Hexahedron –Definition: ordered list of 8 points six quadrilateral faces, 12 edges, 8 vertices constraint: edges and faces must not intersect Voxel –“Volume pixel” –Topologically equivalent to Hexahedron –constraint: each face is perpendicular to a coordinate axis –“3D pixels” –Don’t deal with, but foundation of much

Example: Hexahedron Cell In fact each cell type represented by set/list of points –From computer graphics, “vertex list”, etc. –Definition: ordered list of 8 points six quadrilateral faces, 12 edges, 8 vertices constraint: edges and faces must not intersect

Example Applications & Cell Types Lines –Segmentation of tissues from images Pixels –images, regular height map data Quadrilaterals –Finite element analysis Voxels : “3D pixels” –volume data : medical scanners

Attribute Data Details and examples Information associated with data topology –usually associated to points or cells Examples : –temperature, wind speed, humidity, rain fall (meteorology) –heat flux, stress, vibration (engineering) –surface normal, color (computer graphics) Usually categorized into specific types: –scalar (1D) –vector (commonly 2D or 3D; ND in RN) –tensor (N dimensional array)

Attribute Data : Scalar Single valued data at each location –simplest and most common form of visualisation data

Attribute Data: Vector Data Magnitude and direction at each location –3D triplet of values (i, j, k) –Also Normals – vectors of unit length (magnitude = 1)

Dataset Types Overview + detail Defined by structure type: regular or irregular If there is a mathematical relationship between the point and cell positions it is regular –if the points are regular, the geometry is regular –if the cells are regular, the topology is regular Regular data can be implicitly represented –saves storage and computation (e.g. grid based representation) Datasets with implicit topology –Structured points (regular grid) –Rectilinear grid –Structured grid Datasets without implicit topology –Unstructured grid (has topology) –Polygonal data (might have topology) –Unstructured points (does not have topology)

Regular: Structured Points & Rectilinear Grid Structured points –Points & cells arranged in a regular grid axis aligned grid for line elements (1D), pixels (2D) or voxels (3D) e.g. images (2D), medical scanners (3D) regular topology and geometry –uniform, equally spaced, axis aligned cells Rectilinear Grid –Points and cells arranged in a regular grid topology is regular geometry is partially regular points are arranged along the axes but the spacing may vary e.g. log-scale

Example: Global Climate Model How well does rectilinear grid using regular latitude-longitude grid represent earth?

Example: But, Earth is a Sphere Problem: as approach pole, cell size gets smaller!

Semi-Regular : Structured Grid Regular topology Irregular geometry (completely) Surface triangulations are structured grids –common topology = triangles Not all polygon surfaces have regular topology

Irregular: Unstructured Points and Grids Unstructured Points –Points irregularly located in space –No topology –No structured geometry e.g. sparse measurements of temperature etc. –Difficult to visualize e.g., unstructured point clouds Can be from 3D scanners –Need surface reconstruction from unstructured points clouds topology recovery Unstructured Grid –Both topology and geometry unstructured can range from 0D to 3D topologies general, flexible, inefficient to store e.g. finite element analysis –Using higher resolution grids near where precise simulation is needed,rough grids for regions less important –Same verticies might be both a structured (implicit topology) and unstructured grid

Polygonal Data - Rendering Essential representation for visualization (and computer graphics) Consists of points, lines, polygons – graphics primitives –irregular geometry –irregular topology –Usually irregular (modelled by humans, or sticking regular data together) –used for rendering

End.