Presentation is loading. Please wait.

Presentation is loading. Please wait.

Algorithms and Modern Computer Science Dr. Marina L. Gavrilova Dept of Comp. Science, University of Calgary, AB, Canada, T2N1N4.

Similar presentations


Presentation on theme: "Algorithms and Modern Computer Science Dr. Marina L. Gavrilova Dept of Comp. Science, University of Calgary, AB, Canada, T2N1N4."— Presentation transcript:

1

2 Algorithms and Modern Computer Science Dr. Marina L. Gavrilova Dept of Comp. Science, University of Calgary, AB, Canada, T2N1N4

3 My Research Interests Computer modeling and simulation Computer modeling and simulation Computational geometry Computational geometry Image processing Image processing Visualization Visualization Voronoi diagram and Delaunay triangulation Voronoi diagram and Delaunay triangulation Biometric technologies Biometric technologies Collision detection optimization Collision detection optimization Terrain modeling and visualization Terrain modeling and visualization Exact computation Exact computation Computational methods in spatial analysis and GIS Computational methods in spatial analysis and GIS

4 Affiliations Co-Founder, Biometric Technologies Laboratory, sponsored by CFI Grant, ES 221 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 7 th floor Co-Founder, SPARCS Laboratory for Spatial Analysis and Computational Science, sponsored by GEOIDE, ICT 7 th floor

5 Data Structures to be Studied Hashing and hash tables Hashing and hash tables Trees Trees Spatial subdivisions Spatial subdivisions Graphs Graphs Flow networks Flow networks Geometric data structures Geometric data structures

6 Algorithms to be studies Search heuristics Search heuristics Encoding and compression techniques Encoding and compression techniques Linear programming Linear programming Dynamic programming Dynamic programming Game design techniques Game design techniques Randomized algorithms Randomized algorithms

7 Long-Term Goals of Research in Computer Science Provide a solution to a problem Provide a solution to a problem Decrease possibility of an error Decrease possibility of an error Improve methodology or invent a novel solution Improve methodology or invent a novel solution Make solution more robust Make solution more robust Make solution more efficient Make solution more efficient Make solution less memory consuming Make solution less memory consuming

8 Examples of data structures applications in areas of computer science Typical applications: Typical applications: Heaps for data ordering and faster access in operating systemsHeaps for data ordering and faster access in operating systems K-d trees for multi-dimensional database searchesK-d trees for multi-dimensional database searches B, B*, B+ trees for file accessesB, B*, B+ trees for file accesses Geometric data structures for geographical data representation and processingGeometric data structures for geographical data representation and processing Compression algorithms for remote access, Internet, network transmission and securityCompression algorithms for remote access, Internet, network transmission and security Search heuristics for game strategy implementationSearch heuristics for game strategy implementation

9 More Advanced Applications Data structures in Optimization and Computer Simulation Data structures in Optimization and Computer Simulation Data structures in Image Processing and Computer Graphics Data structures in Image Processing and Computer Graphics Data structures in GIS (Geographical Information Systems) and statistical analysis Data structures in GIS (Geographical Information Systems) and statistical analysis Data structures in biometrics Data structures in biometrics

10 Space partitioningSpace partitioning TreesTrees Geometric data structuresGeometric data structures Part 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

11 Pool of Data Structures Dynamic Delaunay triangulation Spatial subdivisions k cells Segment trees K-d trees Interval trees Combination of data structures

12 Collision 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 dynamic generalized DT regular spatial subdivision regular spatial subdivision regular spatial tree regular spatial tree set of segment tree set of segment tree

13 The 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

14 Example: supremum VD and DT The supremum weighted Voronoi diagram (left) and the corresponding Delaunay triangulation (right) for 1000 randomly distributed sites.

15 Application 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. 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.

16 Study 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.} 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. 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

17 Example: 3D Euclidean Voronoi diagram 3D Euclidean Voronoi diagram: hyperbolic arcs identify voids – empty spaces around items obtained by Monte Carlo method.

18 Experiments 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).

19 Space partitioningSpace partitioning TreesTrees Geometric data structuresGeometric data structures CompressionCompression Search heuristicsSearch heuristics Part 2. Image processing and Computer Graphics Image reconstruction Image compression Morphing Detail enhancement Image comparison Pattern recognition

20 Pattern 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. 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.

21 Template 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)

22 Good Match Image Template Most of the pixels overlap means a good match (courtesy of Prof. Jim Parker, U of C)

23 Template 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. 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. In addition, template comparison methods also differ, being based on either pixel to pixel, important features positions, or boundary/skeleton comparison.

24 Distance 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). 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. 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. 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. As the distance from the black pixels (features) increases, the color intensity changes.

25 Distance 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).

26 Medial 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. 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.

27 Medial axis transform

28 Voronoi diagram in 3D

29 Space partitioningSpace partitioning GridsGrids Distance metricsDistance metrics Geometric data structuresGeometric data structures Part 3. Social Sciences and GIS Terrain visualization Terrain modeling Urban planning City planning GIS systems design Navigation and tracking problems Statistical analysis

30 GIS 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 L p metrics, pattern matching and visualization

31 Terrain models

32 Quantitative Map Analysis

33 DEM: Digital Elevation Model Contains only relative Height Regular interval Pixel color determine height Discrete resolution

34 Non-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

35 HashingHashing Space partitioningSpace partitioning TreesTrees Geometric data structuresGeometric data structures SearchingSearching Part 4. Biometrics Biometric identification Biometric recognition Biometric synthesis

36 Background Biometrics refers to the automatic identification of a person based on his/her physiological or behavioral characteristics. Biometrics refers to the automatic identification of a person based on his/her physiological or behavioral characteristics.

37 Thermogram vs. distance transform Thermogram of an ear (Brent Griffith, Infrared Thermography Laboratory, Lawrence Berkeley National Laboratory )

38 Use 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. 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. 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.

39 Geometric 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 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. 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.

40 Nearest Neighbor Approach Voronoi diagram Voronoi diagram Directions of feature points Directions of feature points

41 Delaunay Triangulation of Minutiae Points

42 (a) Binary Hand (b) Hand Contour

43 Spatial Interpolation using RBF(Radial Basis Functions) Deformation in 2D and 3D

44 Topology-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. 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 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. 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.

45 Conclusion 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. 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.


Download ppt "Algorithms and Modern Computer Science Dr. Marina L. Gavrilova Dept of Comp. Science, University of Calgary, AB, Canada, T2N1N4."

Similar presentations


Ads by Google