Parallel Algorithms for Image Histogramming and Connected Components with an Experimental Study

This paper presents efficient and portable implementations of two useful primitives in image processing algorithms, histogramming and connected components. Our general framework is a single-address space, distributed memory programming model. We use efficient techniques for distributing and coalescing data as well as efficient combinations of task and data parallelism. Our connected components algorithm uses a novel approach for parallel merging which performs drastically limited updating during iterative steps, and concludes with a total consistency update at the final step. The algorithms have been coded in SPLIT-C and run on a variety of platforms. Our experimental results are consistent with the theoretical analysis and provide the best known execution times for these two primitives, even when compared with machine-specific implementations.

[1]  Katherine Yelick,et al.  Introduction to Split-C , 1995 .

[2]  Kwan Woo Ryu,et al.  The block distributed memory model for shared memory multiprocessors , 1994, Proceedings of 8th International Parallel Processing Symposium.

[3]  Dilip V. Sarwate,et al.  Computing connected components on parallel computers , 1979, CACM.

[4]  Geoffrey C. Fox,et al.  Solving the Region Growing Problem on the Connection Machine , 1993, 1993 International Conference on Parallel Processing - ICPP'93.

[5]  Jerry L. Potter Image processing on the massively parallel processor , 1983, Computer.

[6]  Clive F. Baillie,et al.  Cluster Identification Algorithms for Spin Models - Sequential and Parallel , 1991, Concurr. Pract. Exp..

[7]  R. Brower,et al.  A parallel multigrid algorithm for percolation clusters , 1991 .

[8]  Allen R. Hanson,et al.  A report on the results of the DARPA integrated image understanding benchmark exercise , 1989 .

[9]  Graham R. Nudd,et al.  A Cellular VLSI Architecture , 1984, Computer.

[10]  Rajeev Thakur,et al.  Evaluation of connected component labeling algorithms on shared and distributed memory multiprocessors , 1992, Proceedings Sixth International Parallel Processing Symposium.

[11]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

[12]  M. MANOHAR,et al.  Connected component labeling of binary images on a mesh connected massively parallel processor , 1989, Comput. Vis. Graph. Image Process..

[13]  Yijie Han,et al.  An efficient and fast parallel-connected component algorithm , 1990, JACM.

[14]  Viktor K. Prasanna,et al.  Parallel Architectures and Algorithms for Image Component Labeling , 1992, IEEE Trans. Pattern Anal. Mach. Intell..

[15]  John R. Kender,et al.  Low-Level Image Analysis Tasks on Fine-Grained Tree-Structured SIMD Machines , 1987, J. Parallel Distributed Comput..

[16]  David A. Bader,et al.  Parallel algorithms for image histogramming and connected components with an experimental study (extended abstract) , 1995, PPOPP '95.

[17]  Francis Y. L. Chin,et al.  Efficient parallel algorithms for some graph problems , 1982, CACM.

[18]  Ramesh Subramonian,et al.  LogP: towards a realistic model of parallel computation , 1993, PPOPP '93.

[19]  Larry S. Davis,et al.  Parallel algorithms for image enhancement and segmentation by region growing, with an experimental study , 1996, Proceedings of International Conference on Parallel Processing.

[20]  Joseph JáJá,et al.  An Introduction to Parallel Algorithms , 1992 .

[21]  Kwan Woo Ryu,et al.  The Block Distributed Memory Model , 1996, IEEE Trans. Parallel Distributed Syst..

[22]  W. Daniel Hillis,et al.  The Network Architecture of the Connection Machine CM-5 , 1996, J. Parallel Distributed Comput..

[23]  Philip Marks,et al.  Low-level vision using an array processor , 1980 .

[24]  A. D. Sokal,et al.  New Numerical Algorithms for Critical Phenomena (Multi-Grid Methods and All That) , 1988 .

[25]  Chris J. Scheiman,et al.  LogGP: incorporating long messages into the LogP model—one step closer towards a realistic model for parallel computation , 1995, SPAA '95.

[26]  Sanjay Ranka,et al.  Distributed Scheduling of Unstructured Collective Communication on the CM-5 , 1994, Parallel Process. Lett..

[27]  Jon A. Webb,et al.  Parallel vision algorithm design and implementation : 1988 end of year report , 1989 .

[28]  Quentin F. Stout,et al.  Supporting Divide-and-Conquer Algorithms for Image Processing , 1987, J. Parallel Distributed Comput..

[29]  Enzo Marinari,et al.  New Simd Algorithms For Cluster Labeling On Parallel Computers , 1993 .

[30]  Azriel Rosenfeld,et al.  The DARPA Image Understanding Benchmark for Parallel Computers , 1990, J. Parallel Distributed Comput..

[31]  Rajeev Thakur,et al.  Connected Component Labeling on Coarse Grain Parallel Computers: An Experimental Study , 1994, J. Parallel Distributed Comput..

[32]  V. Rich Personal communication , 1989, Nature.

[33]  S. Redner,et al.  Introduction To Percolation Theory , 2018 .

[34]  G.R. Nudd,et al.  A hierarchical multiple-SIMD architecture for image analysis , 1990, [1990] Proceedings. 10th International Conference on Pattern Recognition.