Geometric Hashing

May 27, 2002

Annie Christian

››››››››››› Geometric hashing allows a computer to more easily recognize 2 and 3D objects by comparing these objects to a previously defined database of known objects.A simple example of geometric hashing would be a square.Previously, very simplistic algorithms would calculate the pixels on a known square and then traverse a screen pixel by pixel comparing the known points to the screen until another square was found.In geometric hashing, two points on the square are chosen, and a graph is drawn from those two points.The graph is then scaled so that the distance between the two points is equal to 1.An x-axis is used to connect the two points and a y-axis is drawn at the midpoint between the two points.At this time, a third point can be found in the square and plotted under the parameters of the newly formed graph.The points are then stored in a hash table with three parameters, the model number, and the x and y coordinates of the third point.The same computation is done for all of the pictureŪs pairs of points.All of this can be done separately, and should not affect the running time of the algorithm.

››››››››››› Once the database has been formed, a computer can begin to recognize objects.By plotting points on an object just as it would have when making the database, the computer can come up with the information it would need for a hash table entry.The computer then compares this information to its database.Each figure that matches receives a point.The computer repeats these steps for every pair of points in the objects it is attempting to recognize.Afterwards, the number of points each known shape received can be tallied.This algorithm does not necessarily pinpoint exactly which shape it has recognized, but it does return a list of shapes that are similar.