Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Geometric Hashing: Efficient Algorithms for Image Recognition and Matching
Geometric Hashing: Efficient Algorithms for Image Recognition and Matching
Geometric Hashing: Efficient Algorithms for Image Recognition and Matching
Ebook145 pages1 hour

Geometric Hashing: Efficient Algorithms for Image Recognition and Matching

Rating: 0 out of 5 stars

()

Read preview

About this ebook

What is Geometric Hashing


In computer science, geometric hashing is a method for efficiently finding two-dimensional objects represented by discrete points that have undergone an affine transformation, though extensions exist to other object representations and transformations. In an off-line step, the objects are encoded by treating each pair of points as a geometric basis. The remaining points can be represented in an invariant fashion with respect to this basis using two parameters. For each point, its quantized transformed coordinates are stored in the hash table as a key, and indices of the basis points as a value. Then a new pair of basis points is selected, and the process is repeated. In the on-line (recognition) step, randomly selected pairs of data points are considered as candidate bases. For each candidate basis, the remaining data points are encoded according to the basis and possible correspondences from the object are found in the previously constructed table. The candidate basis is accepted if a sufficiently large number of the data points index a consistent object basis.


How you will benefit


(I) Insights, and validations about the following topics:


Chapter 1: Geometric hashing


Chapter 2: Analytic geometry


Chapter 3: Cartesian coordinate system


Chapter 4: 2D computer graphics


Chapter 5: Coordinate system


Chapter 6: Translation (geometry)


Chapter 7: Hough transform


Chapter 8: Scale-invariant feature transform


Chapter 9: Homography


Chapter 10: Geometric feature learning


(II) Answering the public top questions about geometric hashing.


(III) Real world examples for the usage of geometric hashing in many fields.


Who this book is for


Professionals, undergraduate and graduate students, enthusiasts, hobbyists, and those who want to go beyond basic knowledge or information for any kind of Geometric Hashing.

LanguageEnglish
Release dateMay 11, 2024
Geometric Hashing: Efficient Algorithms for Image Recognition and Matching

Read more from Fouad Sabry

Related to Geometric Hashing

Titles in the series (100)

View More

Related ebooks

Intelligence (AI) & Semantics For You

View More

Related articles

Reviews for Geometric Hashing

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Geometric Hashing - Fouad Sabry

    Chapter 1: Geometric hashing

    There are expansions to various object representations and transformations, but in computer science, geometric hashing is used to efficiently locate objects in two dimensions represented by discrete points that have undergone an affine transformation. Offline, each pair of points is used as a geometric basis for encoding the objects. Two parameters allow for a basis-invariant representation of the remaining points. The hash table maintains a pair of values: the indices of the basis points for each key, and the quantized converted coordinates for each value. The procedure is then repeated, this time using a different set of basis points. In the online (recognition) phase, arbitrary pairings of data points are evaluated as potential foundations. In order to find feasible correspondences between the object and each candidate basis, the remaining data points are encoded in accordance with the basis. If a big enough fraction of the data points point to a constant object basis, then the candidate basis is accepted.

    In computer vision, geometric hashing was first proposed for 2D and 3D object recognition, Object recognition using geometric hashing.

    Let’s say that we want to check if a model image can be seen in an input image.

    Geometric hashing is a method that can be used to achieve this.

    The technique could be used to identify a single object among many in a database, In this scenario, the hash table needs to keep track of both the pose data and the base index of the object model.

    In order to keep the example straightforward, we'll simply be using a few point characteristics and will assume that their descriptions come solely from their coordinates (in practice local descriptors such as SIFT could be used for indexing).

    Learn the model's defining characteristics.

    Assume that 5 feature points are found in the model image with the coordinates (12,17); (45,13); (40,46); (20,35); (35,25) , view the photograph.

    Provide a foundation for describing the feature points' coordinates.

    The two points that provide the basis for a similarity transformation in two-dimensional space.

    The starting point is located halfway along the line that joins the two points (P1, P2), Our case study's P4, the x' axis is directed towards one of them, the y' is orthogonal and goes through the origin.

    The scale is selected such that absolute value of x' for both basis points is 1.

    Explain where things are in relation to that foundation, i.e.

    calculate the transformations to the new axes.

    To make recognition more resilient to noise, the coordinates should be discretized, A 0.25-unit bin is used.

    We thus get the coordinates (-0.75,-1.25); (1.00,0.00); (-0.50,1.25); (-1.00,0.00); (0.00,0.25)

    Use a hash table with the features as the index to store the foundation (only transformed coordinates in this case). The number of items to store with the basis pair if there are more than two to be matched with.

    Switch to a new basis pair and carry on from there (Step 2). To deal with occlusions, this is essential. All the pairs that aren't linear should ideally be listed. After two iterations, in which the pair (P1, P3) is chosen, we present the hash table.

    Hash Table:

    Most hash tables do not allow for duplicate keys to be associated with separate values.

    So in real life one won’t encode basis keys (1.0, 0.0) and (-1.0, (Hash table, value of 0).

    Locate points of visual appeal in the given image.

    Pick a random starting point. The input image probably does not contain the target item if there is no adequate arbitrary foundation for determining whether or not it is present.

    Detail the new coordinate system's feature point locations. Perform the traditional quantization of the resulting coordinates.

    Verify the input image's converted point features against the hash table. In the event that the point features are the same or very similar, then the count for the relevant basis should be raised (and the type of object, if any).

    If the count of a certain basis is greater than some threshold, then it is likely that this basis corresponds to an image basis selected in Step 2. To do this, we first convert the image's coordinate system to the model's (for the fictitious object). If it works, the item is located. If not, return to the previous step.

    It appears that the only transformations this approach can handle are those of size, position, and orientation. However, the item may already exist in the supplied image in a mirror image format. Consequently, the object must to be discoverable by geometric hashing as well. Mirrored objects can be identified in two different ways.

    Make the left side of the vector graph positive and the right side negative. To get the same result when multiplying by x, just add -1.

    Use a triad as your starting point. This enables the identification of reflections (or objects). Another method of geometric hashing uses a set of three points as its foundation.

    Hashing works similarly for higher-dimensional data, as shown above. Three points are required for the basis of three-dimensional data. The x-axis is defined by the first two points, and the y-axis by the third (with the first point). Using the right-hand rule, an axis may be constructed, and the z-axis will be perpendicular to it. The resulting basis is sensitive to the sequence in which the points are entered.

    {End Chapter 1}

    Chapter 2: Analytic geometry

    Analytic geometry, often called coordinate geometry or Cartesian geometry, is a branch of mathematics concerned with the study of geometry from a Cartesian perspective. Synthetic geometry is the opposite of this.

    Physics, engineering, aviation, rocketry, space science, and space travel all make use of analytic geometry. It is the basis for several branches of contemporary geometry, such as algebraic, differential, discrete, and computational geometry.

    When working with equations involving planes, straight lines, and circles, the Cartesian coordinate system is typically used. In geometry, the two-dimensional Euclidean plane and the three-dimensional Euclidean space are studied. Analytic geometry, as it is typically defined and taught in textbooks, is concerned with creating and representing geometric shapes in a numerical sense, and extracting numerical information from these representations. The Cantor-Dedekind axiom guarantees that calculations in the geometry of the linear continuum can be performed using just the algebra of the real numbers.

    It has been argued that the Greek mathematician Menaechmus developed analytic geometry because of his use of a technique that resembled the use of coordinates in solving problems and proving theorems.

    The 11th-century Persian mathematician Omar Khayyam saw a strong relationship between geometry and algebra and was moving in the right direction when he helped close the gap between numerical and geometric algebra: 248

    Analytic geometry was independently invented by René Descartes and Pierre de Fermat, Cartesian geometry, synonymous with analytic geometry, bears Descartes's name.

    Descartes made significant progress with the methods in an essay titled La Géométrie (Geometry), an appendix to his Discourse on the Method for Rightly Directing One's Reason and Searching for Truth in the Sciences, published in 1637, Discourse on Method is a popular name for this work.

    La Geometrie, composed entirely in his first language, French, its theoretical foundations, etc, laid the groundwork for the development of calculus in Europe.

    The work was met with skepticism at first, due, in part, due to the numerous holes in the argument and the tangled math.

    Descartes' masterpiece wasn't recognized for what it was until after van Schooten translated it into Latin and added commentary in 1649 (and after he continued working on it).

    As a result of taking this tack, Descartes was tasked with solving more intricate equations, necessitating the refinement of techniques for handling polynomial equations of greater degree.

    Leonhard Euler was the first to systematically investigate curves and surfaces in space using the coordinate method.

    In analytic geometry, a coordinate system is introduced for the plane, and each point is assigned two real numbers. Each point in Euclidean space is also assigned three coordinates. The significance of the coordinates is determined by the chosen reference point. Many different coordinate systems exist, but the following are the most common::

    Cartesian coordinates, in which each point has an x-coordinate representing its horizontal position and a y-coordinate representing its vertical position, are the most widely used coordinate system. These are usually presented as a paired expression (x, y). Every point in three-dimensional Euclidean space can be represented by an ordered triple of coordinates using this method (x, y, z).

    In polar notation,

    Enjoying the preview?
    Page 1 of 1