Pattern Analysis and Applications

, Volume 1, Issue 3, pp 189–201

A graph isomorphism algorithm for object recognition

  • M. A. Abdulrahim
  • M. Misra

DOI: 10.1007/BF01259368

Cite this article as:
Abdulrahim, M.A. & Misra, M. Pattern Analysis & Applic (1998) 1: 189. doi:10.1007/BF01259368


We present an algorithm to solve the graph isomorphism problem for the purpose of object recognition. Objects, such as those which exist in a robot workspace, may be represented by labelled graphs (graphs with attributes on their nodes and/or edges). Thereafter, object recognition is achieved by matching pairs of these graphs. Assuming that all objects are sufficiently different so that their corresponding representative graphs are distinct, then given a new graph, the algorthm efficiently finds the isomorphic stored graph (if it exists). The algorithm consists of three phases: preprocessing, link construction, and ambiguity resolution. Results from experiments on a wide variety and sizes of graphs are reported. Results are also reported for experiments on recognising graphs that represent protein molecules. The algorithm works for all types of graphs except for a class of highly ambiguous graphs which includes strongly regular graphs. However, members of this class are detected in polynomial time, which leaves the option of switching to a higher complexity algorithm if desired.


Graph isomorphismGraph matchingLabelled graphsLocal consistencyObject recognitionPattern recognitionRandom graphs

Copyright information

© Springer-Verlag London Limited 1998

Authors and Affiliations

  • M. A. Abdulrahim
    • 1
  • M. Misra
    • 1
  1. 1.Department of Mathematical and Computer SciencesColorado School of MinesGoldenUSA