SPIE Vision Geometry - July '99 Even faster point set pattern matching in 3-d Niagara University and SUNY - Buffalo Laurence Boxer Research.

Slides:



Advertisements
Similar presentations
Algorithms Algorithm: what is it ?. Algorithms Algorithm: what is it ? Some representative problems : - Interval Scheduling.
Advertisements

College of Information Technology & Design
Analysis of Algorithms
Counting the bits Analysis of Algorithms Will it run on a larger problem? When will it fail?
Chapter 3: The Efficiency of Algorithms Invitation to Computer Science, Java Version, Third Edition.
The Efficiency of Algorithms
CIS December '99 Introduction to Parallel Architectures Dr. Laurence Boxer Niagara University.
Insertion Sort Algorithm : Design & Analysis [5].
9/5/06CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2006 Plane Sweep Algorithms and Segment Intersection Carola Wenk.
Robert Pless, CS 546: Computational Geometry Lecture #3 Last Time: Convex Hulls Today: Plane Sweep Algorithms, Segment Intersection, + (Element Uniqueness,
Advanced Topics in Algorithms and Data Structures Lecture pg 1 Recursion.
Advanced Topics in Algorithms and Data Structures Page 1 Parallel merging through partitioning The partitioning strategy consists of: Breaking up the given.
Comparing Images Using the Hausdorff Distance Mark Bouts 6th April 2006.
Data Transmission and Base Station Placement for Optimizing Network Lifetime. E. Arkin, V. Polishchuk, A. Efrat, S. Ramasubramanian,V. PolishchukA. EfratS.
Counting and Representing Intersections Among Triangles in R 3 Esther Ezra and Micha Sharir.
Prune-and-search Strategy
Chapter 3: The Efficiency of Algorithms Invitation to Computer Science, C++ Version, Third Edition Additions by Shannon Steinfadt SP’05.
Parallel Merging Advanced Algorithms & Data Structures Lecture Theme 15 Prof. Dr. Th. Ottmann Summer Semester 2006.
Even faster point set pattern matching in 3-d Niagara University and SUNY - Buffalo Laurence Boxer Research partially supported by a.
A Pre-Processing Algorithm for String Pattern Matching Laurence Boxer Department of Computer and Information Sciences Niagara University and Department.
Chamfer Matching & Hausdorff Distance Presented by Ankur Datta Slides Courtesy Mark Bouts Arasanathan Thayananthan.
Chapter 3: The Efficiency of Algorithms Invitation to Computer Science, C++ Version, Fourth Edition.
1 Convolution and Its Applications to Sequence Analysis Student: Bo-Hung Wu Advisor: Professor Herng-Yow Chen & R. C. T. Lee Department of Computer Science.
A Parallel Algorithm for Approximate Regularity, by Laurence Boxer and Russ Miller, A presentation for the Niagara University Research Council, Nov.,
Chapter 3: The Efficiency of Algorithms
On the Task Assignment Problem : Two New Efficient Heuristic Algorithms.
A Grid-enabled Branch and Bound Algorithm for Solving Challenging Combinatorial Optimization Problems Authors: M. Mezmaz, N. Melab and E-G. Talbi Presented.
1 What is Computational Geometry Ref: Godfried T. Toussaint.
February 17, 2015Applied Discrete Mathematics Week 3: Algorithms 1 Double Summations Table 2 in 4 th Edition: Section th Edition: Section th.
Tree-Based Density Clustering using Graphics Processors
Binary Image Compression via Monochromatic Pattern Substitution: A Sequential Speed-Up Luigi Cinque and Sergio De Agostino Computer Science Department.
Shape Matching for Model Alignment 3D Scan Matching and Registration, Part I ICCV 2005 Short Course Michael Kazhdan Johns Hopkins University.
(C) 2010 Pearson Education, Inc. All rights reserved. Java How to Program, 8/e.
A.Broumandnia, 1 3 Parallel Algorithm Complexity Review algorithm complexity and various complexity classes: Introduce the notions.
CSIE in National Chi-Nan University1 Approximate Matching of Polygonal Shapes Speaker: Chuang-Chieh Lin Advisor: Professor R. C. T. Lee National Chi-Nan.
2.1 Computational Tractability. 2 Computational Tractability Charles Babbage (1864) As soon as an Analytic Engine exists, it will necessarily guide the.
© The McGraw-Hill Companies, Inc., Chapter 6 Prune-and-Search Strategy.
Complexity of algorithms Algorithms can be classified by the amount of time they need to complete compared to their input size. There is a wide variety:
RESOURCES, TRADE-OFFS, AND LIMITATIONS Group 5 8/27/2014.
Order Statistics. Order statistics Given an input of n values and an integer i, we wish to find the i’th largest value. There are i-1 elements smaller.
SEARCHING. Vocabulary List A collection of heterogeneous data (values can be different types) Dynamic in size Array A collection of homogenous data (values.
Geometric Matching on Sequential Data Veli Mäkinen AG Genominformatik Technical Fakultät Bielefeld Universität.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 8 Arrangements and Duality.
Scaling Area Under a Curve. Why do parallelism? Speedup – solve a problem faster. Accuracy – solve a problem better. Scaling – solve a bigger problem.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 8 Arrangements and Duality.
Lesson1.1. Three building blocks of geometry are points, lines, and planes. A point is the most basic building block of geometry. It has no size. It has.
CMPS 3130/6130 Computational Geometry Spring 2015
UNIT 5.  The related activities of sorting, searching and merging are central to many computer applications.  Sorting and merging provide us with a.
LIMITATIONS OF ALGORITHM POWER
MTH 232 Section 9.1 Figures in the Plane. Overview In this section we consider the most basic shapes of geometry: 1.Points 2.Lines 3.Segments 4.Rays 5.Angles.
Output Sensitive Algorithm for Finding Similar Objects Jul/2/2007 Combinatorial Algorithms Day Takeaki Uno Takeaki Uno National Institute of Informatics,
C++ How to Program, 7/e © by Pearson Education, Inc. All Rights Reserved.
1. Searching The basic characteristics of any searching algorithm is that searching should be efficient, it should have less number of computations involved.
Scaling Conway’s Game of Life. Why do parallelism? Speedup – solve a problem faster. Accuracy – solve a problem better. Scaling – solve a bigger problem.
Chapter 9 Recursion © 2006 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.
Ch03-Algorithms 1. Algorithms What is an algorithm? An algorithm is a finite set of precise instructions for performing a computation or for solving a.
Divide and Conquer Algorithms Sathish Vadhiyar. Introduction  One of the important parallel algorithm models  The idea is to decompose the problem into.
Applied Discrete Mathematics Week 2: Functions and Sequences
Geometry Symbols The angle with vertex B and having points A
CMPS 3130/6130 Computational Geometry Spring 2017
Algorithm design techniques Dr. M. Gavrilova
Multi - Way Number Partitioning
Chapter 3: The Efficiency of Algorithms
Applied Discrete Mathematics Week 6: Computation
Chapter 3: The Efficiency of Algorithms
Coarse Grained Parallel Selection
Kinetic Collision Detection for Convex Fat Objects
Danny Z. Chen1, Yan Gu2, Jian Li2, and Haitao Wang1
Computational Geometry
Parallel Computational Geometry
Presentation transcript:

SPIE Vision Geometry - July '99 Even faster point set pattern matching in 3-d Niagara University and SUNY - Buffalo Laurence Boxer Research partially supported by a grant from the Niagara University Research Council

SPIE Vision Geometry - July '99 The problem: Given a pattern set P and a sample set S in with, identify all subsets of S that are congruent to P.

SPIE Vision Geometry - July '99 History - 1 P.J. de Rezende & D.T. Lee, Point set pattern matching in d dimensions, Algorithmica 13 (1995): running time

SPIE Vision Geometry - July '99 History - 2 L. Boxer, Point set pattern matching in 3-D, Pattern Recognition Letters 17 (1996): Running time Key to improved running time: derivation of smaller upper bound on output, based on upper bound for # of segments of same length in S, due to Clarkson, et al., Combinatorial complexity bounds for arrangements of curves and surfaces, Discrete & Computational Geometry 5 (1990). Output bound:

SPIE Vision Geometry - July '99 Current paper Running time: Improved running time due to derivation of yet smaller upper bound on output, from upper bound on triangles in S, in T. Akutsu et al., Distributions of distances and triangles in a point set and algorithms for computing the largest common point sets, Discrete & Computational Geometry 20 (1998). Output bound:

SPIE Vision Geometry - July '99 Sketch of algorithm For each T’, compute the (at most constant # of) rigid transformations f such that f(T)=T’. 1. Sort S lexicographically. 2. Determine whether P is collinear. If so, handle via special (faster) algorithm for this case. If not, note a non- collinear triple T in P. 3. Find each triple T’ in S that matches T. Avoid considering all triples by forming line segments, sorting by length & endpoints, searching.

SPIE Vision Geometry - July '99 Sketch of algorithm For each rigid transformation f, compute the set f(P\T) and for each of its members f(p), determine by binary search if in S. If all f(p) in S, f determines a matching. 6. Different transformations f may determine the same matching subset of S. To eliminate duplicates, sort all individual matchings lexicographically, then sort the collection of matchings lexicographically, then apply a prefix operation to remove each matching that equals its predecessor on the sorted list.

SPIE Vision Geometry - July '99 Related problem: similar matching The problem: find all subsets P’ of S that are similar to P. Algorithm is similar to that for congruent version of problem. Upper bound on output (also due to result of Akutsu et al.) is greater than for congruent version. Running time:

SPIE Vision Geometry - July '99 Related problem: congruent copy detection (CCD) The problem: find some congruent copy P’ of P in S Note any solution to PSPM Problem solves CCD. Therefore our solution to PSPM Problem gives (slight) improvement on solution to CCD in Akutsu et al.

SPIE Vision Geometry - July '99 Efficient parallel solutions on CGM PSPM (congruences): PSPM (similarities): Ideal: Speedup linear in p (= # of processors) In practice: Often must introduce sorts for global data communications

SPIE Vision Geometry - July '99 Further work: There is a gap between the best upper bound and the best lower bound known for the output. Narrowing the gap would improve our knowledge of this problem, and perhaps running times. Lower bound for worst case output: