A graph isomorphism algorithm for object recognition Article

Received: 16 March 1998 Revised: 14 July 1998 Accepted: 17 July 1998 DOI :
10.1007/BF01259368

Cite this article as: Abdulrahim, M.A. & Misra, M. Pattern Analysis & Applic (1998) 1: 189. doi:10.1007/BF01259368
13
Citations
112
Downloads
Abstract 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.

Keywords Graph isomorphism Graph matching Labelled graphs Local consistency Object recognition Pattern recognition Random graphs

References 1.

Eshera MA, King-Sun Fu. A graph distance measure for image analysis. IEEE Trans Systems, Man Cybern 1984; 14(3)

2.

Wong EK. Model matching in robot vision by subgraph isomorphism. Pattern Recognition 1992; 25(3): 287–303

Google Scholar 3.

Chen T-W, Lin W-C. A neural network approach to CSG-based 3-D object recognition. IEEE Transactions on Pattern Analysis and Machine Intelligence 1994; 16(7)

4.

Peng M, Gupta NK. Invariant and occluded object recognition based on graph matching. Int J Elec Engg Educ 1995; 32: 31–38

Google Scholar 5.

Messmer BT, Bunke H. A new algorithm for error-tolerant subgraph isomorphism detection. IEEE Transactions on Pattern Analysis and Machine Intelligence 1988; 20(5): 493–504

Google Scholar 6.

Xu J. GMA: A Generic Match Algorithm for structural homomorphism, isomorphism, and maximal common substructure match and its applications. J Chem. Infor Comput Sci 1996; 36(1): 25–34

Google Scholar 7.

Suganthan PN, Teoh EK, Mital DP. Pattern recognition by homomorphic graph matching using hopfield neural networks. Image Vision Comput 1995; 13(1)

8.

Gold S, Rangarajan A. A graduated assignment algorithm for graph matching. IEEE Transactions on Pattern Analysis and Machine Intelligence 1996; 18(4): 309–319

Google Scholar 9.

Read RC, Corneil DG. The graph isomorphism disease. Journal Graph Theory 1977; 1: 339–363

Google Scholar 10.

Liu X, Klein DJ. The graph isomorphism problem. Journal Computational Chemistry 1991; 12(10): 1243–1251

Google Scholar 11.

Rao AC, Varada Raju D. Application of the Hamming number technique to detect isomorphism among kinematic chains and inversions. Mech Mach Theory 1991; 26(1): 55–75

Google Scholar 12.

Das N, Bhattacharya BB, Dattagupta J. Isomorphism of conflict graphs in multistage interconnection networks and its application to optimal routing. IEEE Trans Comput 1993; 42(6): 665–677

Google Scholar 13.

Ambler AP, Barrow HG, Brown CM, Burstall RM, Popplestone RJ. A versatile computer-controlled assembly system. Proceedings of Third International Joint Conference on Artificial Intelligence 1973; 298–307

14.

Corneil DG, Mathon RA. Algorithmic techniques for the generation and analysis of strongly regular graphs and other combinatorial configurations. Discrete Math 1978; 2: 1–32

Google Scholar 15.

Garey MR Johnson DS. Computers and Intractability, A Guide to the Theory of NP-Completeness. W.H. Freeman, 1979

16.

Luks EM. Isomorphism of graphs of bounded valence can be tested in polynomial time. J Comput Syst Sci 1982; (25): 42–65

Google Scholar 17.

Corneil DG, Gotlieb CC. An efficient algorithm for graph isomorphism. J ACM 1970; 17(1)

18.

Babai L, Erdos P, Selkow S. Random graph isomorphism. SIAM J Comput 1980; 9(3): 628–635

Google Scholar 19.

Babai L. On the complexity of canonical labeling of strongly regular graphs. SIAM J Comput 1980; 9(1): 212–216

Google Scholar 20.

Spielman DA. Faster isomorphism testing of strongly regular graphs. Technical report, University of California Berkeley, Computer Science Division, Berkeley, California 94720, 1996. Can be retrieved from http://theory.lcs.mit.edu/spielman/Berk/grisom.html

Google Scholar 21.

von der Malsburg C, Bienenstock E. A neural network for retrieval of superimposed connection patterns. Europhysics Letters 1987; 3(11): 1243–1249

Google Scholar 22.

Bienenstock E, von der Malsburg C. A neural network for invariant pattern recognition. Europhysics Letters 1987; 4(1): 121–126

Google Scholar 23.

Abdulrahim M, Misra M. A practical algorithm for labeled graph isomorphism. Technical Report CSM-MACS-97-16, Colorado School of Mines, Department of Mathematical and Computer Sciences, Golden, Colorado, December 1997

Google Scholar 24.

Merck KGaA Darmstadt. The relibase system, 1997. Joint work between Merck KGaA Darmstadt and University of Marburg. Can be accessed at http://www2.ebi.ac.uk:8081/home.html.

© Springer-Verlag London Limited 1998

Authors and Affiliations 1. Department of Mathematical and Computer Sciences Colorado School of Mines Golden USA