applications of computational geometry

36
Applications of Computational Geometry COSC 2126 COSC 2126 Computational Geometry Computational Geometry

Upload: aleron

Post on 07-Jan-2016

79 views

Category:

Documents


1 download

DESCRIPTION

Applications of Computational Geometry. COSC 2126 Computational Geometry. Outline. General categories of computational geometry application domains. Triangulation and meshing Geocomputation Computational biology. Application Domains. Computer graphics 2-D and 3-D intersections. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Applications of Computational Geometry

Applications of Computational Geometry

COSC 2126COSC 2126Computational GeometryComputational Geometry

Page 2: Applications of Computational Geometry

2

Outline

General categories of computational geometry application domains.

Triangulation and meshing Geocomputation Computational biology

Page 3: Applications of Computational Geometry

3

Application Domains

Computer graphics 2-D and 3-D intersections. Hidden surface elimination. Ray tracing.

Virtual reality Collision detection (intersection).

http://www.linuxgraphic.org/section3d/articles/raytracing/images/theiere.jpg

http://graphics.cs.uni-sb.de/Publications/2006/RTG/spheres.jpg

Page 4: Applications of Computational Geometry

4

Application Domains (2)

Robotics Motion planning, assembly

orderings, collision detection, shortest path finding

Global information systems (GIS) Large data sets data

structure design. Overlays Find points in

multiple layers. Interpolation Find

additional points based on values of known points.

Voronoi diagrams of points.

Spatial elevation modelhttp://mathworld.wolfram.com/VoronoiDiagram.htmlhttp://skagit.meas.ncsu.edu/~helena/classwork/topics/F1a.gif

Page 5: Applications of Computational Geometry

5

Application Domains (3)

Computer aided design and manufacturing (CAD / CAM) Design and manipulate 3-D objects.

Possible manipulations: merge (union), separate, move.

“Design for assembly” CAD/CAM provides a test on objects for ease of

assembly, maintenance, etc. Computational biology

Determine how proteins combine together based on folds in structure.

Surface modeling, path finding, intersection.

Page 6: Applications of Computational Geometry

6

Triangulation and Meshing

Used to generate surfaces and solids from unstructured data (point clouds). Surfaces triangles Solids tetrahedra

Important in most sciences: Medical imaging. Engineering – finite element modeling. Art. Computer games.

Page 7: Applications of Computational Geometry

7

Delaunay Triangulation

Delaunay triangulation for a set P of points in the plane is a triangulation DT(P) s.t. no point in P is inside the circumcircle of any triangle in DT(P).

The Delaunay triangulation of a discrete point set P corresponds to the dual graph of the Voronoi tessellation for P.

For a set P of points in d-dimensional Euclidean space, DT(P) is s.t. no point in P is inside the circum-hypersphere of any simplex in DT(P).

Page 8: Applications of Computational Geometry

8

Finite Element Method

http://www.grc.nasa.gov/WWW/RT/2003/7000/7740morales.html

Stress distributions on the foot.

Page 9: Applications of Computational Geometry

9

FEM (2)

Truck crash simulation.

http://en.wikipedia.org/wiki/Finite_element_method

Page 10: Applications of Computational Geometry

10

Photorealism in Computer Graphics

Page 11: Applications of Computational Geometry

11

Meshing in Game Graphics

http://www.gamingtarget.com/images/media/Specials/Essential_Tech_Terminology_For_Gamers/page/p002.jpghttp://graphics.ethz.ch/~mattmuel/projects/project.htm

http://www.math.tu-berlin.de/geometrie/gallery/vr/bilder/FarCry0001.jpg

Page 12: Applications of Computational Geometry

12

Meshing in Game Graphics (2)

Finding Next Gen – CryEngine 2, Martin Mittring14, Crytek GmbH

Page 13: Applications of Computational Geometry

13

Surface Reconstruction With Radial Basis Functions

Scanning a bone section with a laser

scanner.

Page 14: Applications of Computational Geometry

14

Surface Reconstruction With Radial Basis Functions (2)

Point cloud

Page 15: Applications of Computational Geometry

15

Surface Reconstruction With Radial Basis Functions (3)

Final surface

Page 16: Applications of Computational Geometry

16

Scattered Point Interpolation with Radial Basis Functions

Courtesy: Derek Cool, Robarts Research Imaging Laboratories

Interpolate scattered

points

Radial basis interpolation

Surface normals Final RBF model

Original point cloud from segmented contours in CT volume.

Enhanced point cloud

Page 17: Applications of Computational Geometry

17

Geocomputation

Geocomputation – a new paradigm for multidisciplinary/interdisciplinary research that enables the exploration of extremely complex and previously unsolvable problems in geography.

Used to study spatial data: Population distributions. Movement patterns of migratory animals. Locations of natural resources. Epidemiology. Source and extent of environmental pollution and

contamination. Extent of natural disasters. Many other applications.

Page 18: Applications of Computational Geometry

18

Geocomputation (2)

Geocomputation depends on the contributions of many fields of study: Computational geometry. Interactive exploratory data analysis. Data mining. Numerical methods. Graphics and visualization.

Page 19: Applications of Computational Geometry

19

Geographic Information Systems

Also known as geomatics – the application of computational methods and systems to geographical problems.

Computational geometry provides useful tools and algorithms for GIS, including: Data correction (after data acquisition and input). Data retrieval (through queries). Data analysis (e.g map overlay and geostatistics). Data visualization (for maps and animations).

Page 20: Applications of Computational Geometry

20

Global Positioning System (GPS)

Global positioning system (GPS) – A specialized, dedicated distributed system for determining geographical position anywhere on Earth.

Satellite-based system launched in 1978. Initially for military applications, but extended

for civilian use (traffic navigation), and other tracking uses.

Page 21: Applications of Computational Geometry

21

GPS (2)

29 satellites, each circulating in an orbit at height 20,000 km, and having up to four regularly calibrated atomic clocks.

Each satellite (i) continuously broadcasts its position (xi, yi, zi), and timestamps each message.

This allows every receiver on Earth to accurately compute its own position using three satellites.

Page 22: Applications of Computational Geometry

22

Location Calculation

For the GPS receiver to locate itself, two data are needed: The location of at least 3 reference satellites. The distance between the receiver and each of those satellites.

The receiver obtains both of these by analyzing high-frequency, low-power radio waves from the GPS satellites.

Because radio waves travel at the speed of light, receivers can calculate the distance the wave traveled by the amount of time it took to travel.

Each GPS receiver contains a database of the locations of each satellites at a given time.

Using this information, the receiver uses trilateration to find the exact spot on earth.

Page 23: Applications of Computational Geometry

23

GPS (3)

Computing a position in a two-dimensional space.

(Altitude)

(Earth’s surface at sea level)

Trilateration – a method for determining the intersections of three sphere surfaces given the centers and radii of the three spheres.

Page 24: Applications of Computational Geometry

24

Time Calculation

Each satellite tracks time by an atomic clock. They are all synchronized.

Upon receiving the signal from the satellites, the receiver can calculate the time delay of each, providing the travel time.

By multiplying the travel time by the speed of light, the distances of the satellites are obtained.

Page 25: Applications of Computational Geometry

25

GPS (4)

Principle of intersecting circles can be re-formulated to 3D.

Three (3) satellites are needed to compute the longitude, latitude, and altitude of a receiver on Earth.

Real world facts that complicate GPS:1. Some time elapses before data on a

satellite’s position reaches the receiver.2. The receiver’s clock is generally not

synchronized to the satellite.

Page 26: Applications of Computational Geometry

26

Computing Position Using GPS

r: Deviation of receiver’s clock from the actual time.

Ti: Timestamp received from satellite i.

di: Real distance between the receiver and satellite i.

222 )()()( ririririnowi zzyyxxTTcd

However,

4 equations (3 satellites + time difference) are needed to solve for four unknowns, xr, yr, zr, and r.

GPS can also be used for synchronization.

Page 27: Applications of Computational Geometry

27

Limitations of CG w.r.t. GIS

Computational geometry algorithms are often very complex, and require a large effort to implement.

Efficiency analysis, which is based on worst-case inputs to the algorithm, is often performed. The theoretical worst-case data sets may be rather

artificial, and never appear in real-world applications. Another problem lies in the abstraction of the original

problem, in which several criteria to be met “at least to some extent” simultaneously. This leads to vague problem statements, but CG

generally considers well-defined, simple-to-state problems.

This problem will be more difficult than the first two.

Page 28: Applications of Computational Geometry

28

Bioinformatics – Protein Folding

Proteins are large 3D molecules with complicated geometries and topologies.

Basic idea – Create “designer proteins” that can be used to treat a variety of disease conditions.

Lock-and-key mechanism – proteins have binding sites where other ions or molecules form chemical bonds.

Proteins can therefore bind to harmful pathogens (e.g. viruses), rendering them harmless.

Page 29: Applications of Computational Geometry

29

Protein Binding to a Pathogen

www.physorg.com/news138885789.html

Page 30: Applications of Computational Geometry

30

3-D curve{vi}, i = 1…n

Geometric Representation of Proteins – Primary Structure

The primary structure of a protein is its sequence of amino acids, which determines what the protein does, how it interacts with other proteins, and how it folds.

Sequence of amino acids and peptide bonds.

Page 31: Applications of Computational Geometry

31

Geometric Representation of Proteins – Secondary Structure Secondary structure refers to the way a single

protein (macromolecule) folds together. Secondary structure consists of helix (helices),

strand(s), and random coil(s).

http://mcl1.ncifcrf.gov/integrase/asv_secstr.html

Page 32: Applications of Computational Geometry

32

Geometric Representation of Proteins – Tertiary Structure Tertiary structure refers to the protein’s 3D shape. It is determined by the protein’s primary structure.

Page 33: Applications of Computational Geometry

33

Geometric Representation of Proteins – Quaternary Structure Quaternary structure refers to the arrangement of

multiple folded protein molecules in a multi-subunit complex.

http://www.cryst.bbk.ac.uk/PPS2/course/section12/haemogl2.html

Page 34: Applications of Computational Geometry

34

The “grand challenge” in bioinformatics and proteomics.

Allows the transition from sequence to structure.

Currently, relatively simple computational folding models have proven to be NP complete even in the 2D case!

Example.

Protein Folding

Page 35: Applications of Computational Geometry

35

Other Non-Traditional Applications

Spatial databases. Radiation therapy planning. Computational topology.

Use of geometry and topology to study complex and massive data sets.

Applications range from medical, GIS, CAD/CAM, and crystallography to financial and economic models, music, and quantum computing.

Page 36: Applications of Computational Geometry

36

End