Title: Algorithms and Modern Computer Science
1Algorithms and Modern Computer Science
Dr. Marina L. Gavrilova
Dept of Comp. Science, University of
Calgary, AB, Canada, T2N1N4
2My Research Interests
- Computer modeling and simulation
- Computational geometry
- Image processing
- Visualization
- Voronoi diagram and Delaunay triangulation
- Biometric technologies
- Collision detection optimization
- Terrain modeling and visualization
- Exact computation
- Computational methods in spatial analysis and GIS
3Affiliations
- Co-Founder, Biometric Technologies Laboratory,
sponsored by CFI Grant, ES 221 - Co-Founder, SPARCS Laboratory for Spatial
Analysis and Computational Science, sponsored by
GEOIDE, ICT 7th floor
4Data Structures to be Studied
- Hashing and hash tables
- Trees
- Spatial subdivisions
- Graphs
- Flow networks
- Geometric data structures
5Algorithms to be studies
- Search heuristics
- Encoding and compression techniques
- Linear programming
- Dynamic programming
- Game design techniques
- Randomized algorithms
6Long-Term Goals of Research in Computer Science
- Provide a solution to a problem
- Decrease possibility of an error
- Improve methodology or invent a novel solution
- Make solution more robust
- Make solution more efficient
- Make solution less memory consuming
7Examples of data structures applications in areas
of computer science
- Typical applications
- Heaps for data ordering and faster access in
operating systems - K-d trees for multi-dimensional database searches
- B, B, B trees for file accesses
- Geometric data structures for geographical data
representation and processing - Compression algorithms for remote access,
Internet, network transmission and security - Search heuristics for game strategy
implementation
8More Advanced Applications
- Data structures in Optimization and Computer
Simulation - Data structures in Image Processing and Computer
Graphics - Data structures in GIS (Geographical Information
Systems) and statistical analysis - Data structures in biometrics
9Part 1. Optimization and Computer Modeling
- Biological systems (plants, corals)
- Granular-type materials (silo, shaker, billiards)
- Molecular systems (fluids, lipid bilayers,
protein docking) - GIS terrain modeling
- Space partitioning
- Trees
- Geometric data structures
10Pool of Data Structures
Dynamic Delaunay triangulation
Spatial subdivisions
Segment trees
K-d trees Interval trees Combination of data
structures
11Collision detection optimization
- Problem A set of n moving particles is given in
the plane or 3D with equations of their motion.
It is required to detect and handle collisions
between objects and/or boundaries. Collisions are
instantaneous and one-on-one only. - Approach Use dynamic data structures in the
context of time-step event oriented simulation
model. - Data structures implemented are
- dynamic generalized DT
- regular spatial subdivision
- regular spatial tree
- set of segment tree
12The nearest-neighbor problem
- Task To find the nearest-neighbor in a system of
circular objects Gavrilova 01 - Approach To use generalized Voronoi diagram in
Manhattan and power metric and k-d tree as a data
structure. - The Initial Distribution Generator (IDG) module
- Used to create various input configurations the
uniform distribution of sites in a square, the
uniform distribution of sites in a circle, cross,
ring, degenerate grid and degenerate circle. The
parameters for automatic generation are the
number of sites, the distribution of their radii,
the size of the area, and the type of the
distribution. - The Nearest-Neighbour Monitor (NNM) module
- The program constructs the additively weighted
supremum VD, the power diagram and the k-d tree
in supremum metric performs series of
nearest-neighbour searches and displays
statistics. - Tests large data sets (10000 particles), silo
model
13Example supremum VD and DT
- The supremum weighted Voronoi diagram (left) and
the corresponding Delaunay triangulation (right)
for 1000 randomly distributed sites .
14Application to Silo model
- Silo model Newton-Euler method, power,
supremum and k-d methods compared, simple and
efficient solution to a problem. Analysis of
pressure on cylinder boundaries is performed.
15Study of porous materials in 3d
- Collaborators N.N. Medvedev, V.A.Luchnikov, V.
P. Voloshin, Russian Academy of Sciences,
Novosibirsk Luchnikov 01. - Task To study the properties of the system of
polydisperse spheres in 3D, confined inside a
cylindrical container. - Approach A boundary of a container is considered
as one of the elements of the system. - To compute the Voronoi network for a set of balls
in a cylinder we use the modification of the
known 3D incremental construction technique,
discussed in Gavrilova et. al. - The center of an empty sphere, which moves inside
the system so that it touches at least three
objects at any moment of time, defines an edge of
the 3D Voronoi network. - Tests porous materials, molecular structures
16Example 3D Euclidean Voronoi diagram
- 3D Euclidean Voronoi diagram hyperbolic arcs
identify voids empty spaces around items
obtained by Monte Carlo method.
17Experiments
- The approach was tested on a system representing
dense packing of 300 Lennard-Jones atoms. The
largest channels of the Voronoi network occur
near to the wall of the cylinder. A fraction of
large channels along the wall is higher for the
model with the fixed diameter (right) than for
the model with relaxed diameter (left).
18Part 2. Image processing and Computer Graphics
- Image reconstruction
- Image compression
- Morphing
- Detail enhancement
- Image comparison
- Pattern recognition
- Space partitioning
- Trees
- Geometric data structures
- Compression
- Search heuristics
19Pattern Matching
- Aside from a problem of measuring the distance,
pattern matching between the template and the
given image is a very serious problem on its own.
20Template Matching approach to Symbol Recognition
Compare an image with each template and see which
one gives the best mach (courtesy of Prof. Jim
Parker, U of C)
21Good Match
Most of the pixels overlap means a good match
(courtesy of Prof. Jim Parker, U of C)
Image
Template
22Template comparison
- The most common methods are based on bit-map
comparison techniques, scaling, rotating and
modifying image to fit the template through the
use of linear operators, and extracting template
boundaries or skeleton (also called medial axis)
for the comparison purposes. - In addition, template comparison methods also
differ, being based on either pixel to pixel,
important features positions, or
boundary/skeleton comparison.
23Distance transform
- Definition 1. Given an n x m binary image I of
white and black pixels, the distance transform of
I is a map that assigns to each pixel the
distance to the nearest black pixel (a feature). - The distance transform method introduced in
Gavrilova and Alsuwayel is based on fast scans
of image in the top-bottom and left-right
directions using a fast polygonal chain
maintenance algorithm. - After the distance transform is build, it can be
used to visualize proximity information in a form
of temperature map. - As the distance from the black pixels (features)
increases, the color intensity changes.
24Distance Transform
Given an n x m binary image I of white and black
pixels, the distance transform of I is a map that
assigns to each pixel the distance to the nearest
black pixel (a feature).
25Medial axis transform
- The medial axis, or skeleton of the set D,
denoted M(D), is defined as the locus of points
inside D which lie at the centers of all closed
discs (or spheres) which are maximal in D,
together with the limit points of this locus.
26Medial axis transform
27Voronoi diagram in 3D
28Part 3. Social Sciences and GIS
- Terrain visualization
- Terrain modeling
- Urban planning
- City planning
- GIS systems design
- Navigation and tracking problems
- Statistical analysis
- Space partitioning
- Grids
- Distance metrics
- Geometric data structures
29GIS studies - SPARCS Lab
- Collaborators S. Bertazzon, Dept. of Geography,
C. Gold, Hong Kong Polytechnic, M. Goodchild,
Santa Barbara - Problem study or patterns and correlation among
attributed geographical entities, including
health, demographic, education etc. statistics. - Approach pattern analysis using 3D Voronoi
diagram, spatial statistics and autocorrelation
using Lp metrics, pattern matching and
visualization
30Terrain models
31Quantitative Map Analysis
32DEM Digital Elevation Model
- Contains only relative Height
- Regular interval
- Pixel color determine height
- Discrete resolution
X
Kluanne National Park
Y
33Non-Photo-Realistic Real-time 3D Terrain
Rendering
- Uses DEM as input of the application
- Generates frame coherent animated view in
real-time - Uses texturing, shades, particles etc. for layer
visualization
34Part 4. Biometrics
- Hashing
- Space partitioning
- Trees
- Geometric data structures
- Searching
- Biometric identification
- Biometric recognition
- Biometric synthesis
35Background
- Biometrics refers to the automatic identification
of a person based on his/her physiological or
behavioral characteristics. -
36Thermogram vs. distance transform
Thermogram of an ear (Brent Griffith, Infrared
Thermography Laboratory, Lawrence Berkeley
National Laboratory )
37Use of metrics
- Regularity of metric allows to measure the
distances from some distinct features of the
template more precisely, and ignore minor
discrepancies originated from noise and imprecise
measurement while obtaining the data. - We presume that the behavioral identifiers, such
as typing pattern, voice and handwriting styles
will be less susceptible to improvement using the
proposed weighted distance methodology than the
physiological identifiers.
38Geometric algorithms in biometrics
- The methodology is making its way to the core
methods of biometrics, such as fingerprint
identification, iris and retina matching, face
analysis, ear geometry and others (see recent
works by Xiao, Zhang, Burge. - The methods are using Voronoi diagram to
partition the area of a studies image and compute
some important features (such as areas of Voronoi
region, boundary simplification etc.) and compare
with similarly obtained characteristics of other
biometric data.
39Nearest Neighbor Approach
- Directions of feature points
40Delaunay Triangulation of Minutiae Points
41 (a) Binary Hand
(b) Hand Contour
42Spatial Interpolation using RBF(Radial Basis
Functions)
Deformation in 2D and 3D
43Topology-based solution to generating biometric
information
- Finally, one of the most challenging areas is a
recently emerged problem of generating biometric
information, or so-called inverse problem in
biometrics. - In order to verify the validity of algorithms
being developed, and to ensure that the methods
work efficiently and with low error rates in
real-life applications, a number of biometric
data can be artificially created, resembling
samples taken from live subjects. - In order to perform this procedure, a variety of
methods should be used, but the idea that we
explore is based on the extraction of important
topological information from the relatively small
set of samples (such as boundary, skeleton,
important features etc), applying variety of
computational geometry methods, and then using
these geometric samples to generate the adequate
set of test data.
44Conclusion
- Data structures and algorithms studies in the
course are powerful tools not only for basic
operation of computer systems and networks but
also a vast array of techniques for advancing the
state of the research in various computer science
disciplines.