depthlaunay1 depthlaunay manuel abellanas alfredo de las vegas facultad de informática - upm

24
DEpthLAUNAY 1 DEpthLAUNAY www.dma.fi.upm.es/mabellanas/ delonedepth/ Manuel Abellanas Alfredo de las Vegas Facultad de Informática - UPM

Upload: gervais-matthews

Post on 17-Dec-2015

217 views

Category:

Documents


3 download

TRANSCRIPT

DEpthLAUNAY 1

DEpthLAUNAY

www.dma.fi.upm.es/mabellanas/delonedepth/

Manuel AbellanasAlfredo de las Vegas

Facultad de Informática - UPM

DEpthLAUNAY 2

Starting point

• Article: “Point set stratification and Delaunay depth”

• Written by Manuel Abellanas, Mercè Claverol & Ferrán Hurtado

• Available at: http://arxiv.org/abs/cs.CG/0505017

• Notions of depth in 2D data analysis

• Convex and Delaunay depth

DEpthLAUNAY 3

Convex hull

• The smallest convex region enclosing a specified group of points.

DEpthLAUNAY 4

Convex depth

• Recursively eliminates points of convex hull and recalculate it.

DEpthLAUNAY 5

Delaunay property

• Every triangle has a circumscribed circle. The Delaunay property forces that all of those circles must be empty of points.

DEpthLAUNAY 6

Delaunay Triangulation

• The Delaunay triangulation is a collection of edges satisfying an "empty circle“ or Delaunay property. Also maximizes the angles.

DEpthLAUNAY 7

Delaunay depth

• Delaunay depth of a point is the minimum number of edges used to reach the convex hull.

DEpthLAUNAY 8

Delaunay layers

• Delaunay layers are the subgraphs of DT(S) induced by the points of S with same Delaunay depth

DEpthLAUNAY 9

Delaunay levels• Delaunay levels are regions of plane formed

with points with a determined depth

DEpthLAUNAY 10

Voronoi diagram

• Voronoi cells are the set of points closer to a vertex than any other vertex. Voronoi diagram is the partition induced by Voronoi cells. Dual of Delaunay triangulation

DEpthLAUNAY 11

Voronoi diagram

• Voronoi cells are the set of points closer to a vertex than any other vertex. Voronoi diagram is the partition induced by Voronoi cells. Dual of Delaunay triangulation

DEpthLAUNAY 12

Voronoi diagram by depth

• A Voronoi diagram can be coloured based of Delaunay depth of generator points

DEpthLAUNAY 13

Goals of DEpthLAUNAY

• Teaching tool

• Help in research

• Interactivity

• Use of C.G.A.L.

• Efficient tool to compute depths ~ O(n log n)

• Runs in Windows and Linux (with wine)

DEpthLAUNAY 14

Computational Geometry Algorithms Library

www.cgal.org

DEpthLAUNAY 15

CGAL

• The goal of the CGAL Open Source Project is to provide easy access to efficient and reliable geometric algorithms to users in industry and academia in the form of a C++ library.

DEpthLAUNAY 16

CGAL• CGAL, the Computational Geometry Algorithms Library, offers data

structures and algorithms like triangulations (2D constrained triangulations and Delaunay triangulations in 2D and 3D), Voronoi diagrams (for 2D and 3D points, 2D additively weighted Voronoi diagrams, and segment Voronoi diagrams), Boolean operations on polygons and polyhedral, arrangements of curves, mesh algorithms (2D Delaunay mesh generation and 3D surface mesh generation, surface mesh subdivision and parameterization), alpha shapes, convex hull algorithms (in 2D, 3D and dD), operations on polygons (straight skeleton and offset polygon), search structures (kd trees for nearest neighbour search, and range and segment trees), interpolation (natural neighbour interpolation and placement of streamlines), optimization algorithms (smallest enclosing sphere of points or spheres, smallest enclosing ellipsoid of points, principal component analysis), and kinetic data structures.

• All these data structures and algorithms operate on geometric objects like points and segments, and perform geometric tests on them. These objects and predicates are regrouped in CGAL Kernels.

DEpthLAUNAY 17

Algorithm of DT

• CGAL uses “incremental insertion algorithm” to triangulate a set of points.

• When a point is inserted, triangulates it and test the Delaunay property. If fails, flip and propagate.

DEpthLAUNAY 18

DEpthLAUNAY

• Three layers design

• Only Presentation layer is Operative System dependant

• CNube class is a wrapper of CGAL, so the programmer doesn’t need to know CGAL.

DEpthLAUNAY 19

DEpthLAUNAY

• Divided in three parts from user’s point of view:– Entering data (mouse, keyboard, images,

automatic generation)– Manipulating data. Various types of diagrams

(real-time depending of number of points) (Use of clipboard)

– Exporting data (four different file formats, image)

DEpthLAUNAY 20

Using DEpthLAUNAY

DEpthLAUNAY 21

Parts of window

• Menus

• Tool bar

• Status bar

• Main view

DEpthLAUNAY 22

Entering data

• Mouse (add, delete, move)

• Keyboard (absolute, relative)

• File (various formats)

• Automatic generation (regular, random) (quick, slow)

• Image.

DEpthLAUNAY 23

Data manipulation

• Clipboard (cut, copy, paste)

• Shake vertex

• Compute structures (alone and together)

• Cloud (scroll, zoom, Canvas, cloud move, cloud adjust)

• Show paths (Crtl +Right mouse)

• Preferences

DEpthLAUNAY 24

Export data

• Image (with or without scroll bars)• File formats:

– OFF (Geomview)– VTC (CGAL)– PNT (Simple)– NIV (All info)

• View data in 3D with external program• Spring program (muelles)• Thanks in movement