Parallel algorithms for image histogramming and connected components with an experimental study (extended abstract)

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. More efficient implementations of Split-C will likely result in even faster execution times.

[1]  W. Daniel Hillis,et al.  The network architecture of the Connection Machine CM-5 (extended abstract) , 1992, SPAA '92.

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

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

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

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

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

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

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

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

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

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

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

[13]  Babak Falsafi,et al.  Component Labeling Algorithms on an Intel iPSC/2 Hypercube , 1990, Proceedings of the Fifth Distributed Memory Computing Conference, 1990..

[14]  David A. Bader,et al.  Parallel Algorithms for Image Histogramming and Connected Components with an Experimental Study , 1996, J. Parallel Distributed Comput..

[15]  Patrick Wambacq,et al.  Component labelling on a MIMD multiprocessor , 1993 .

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

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

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

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

[20]  David Fincham,et al.  Computer simulation studies in condensed matter physics. Recent developments , 1990 .

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

[22]  Tseng-Hui Lin,et al.  Distributed scheduling of unstructured collective communication on the CM-5 , 1994, 1994 Proceedings of the Twenty-Seventh Hawaii International Conference on System Sciences.

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

[24]  Keshav Pingali,et al.  Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming , 1997, PPoPP 1997.

[25]  A WagnerRobert,et al.  An efficient and fast parallel-connected component algorithm , 1990 .

[26]  Michael D. Howard,et al.  HBA Vision Architecture: Built and Benchmarked , 1989, IEEE Trans. Pattern Anal. Mach. Intell..

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

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

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

[30]  Peter Meer,et al.  Adaptive Multiresolution Structures for Image Processing on Parallel Computers , 1994, J. Parallel Distributed Comput..

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

[32]  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.

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

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

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

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

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

[38]  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.

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

[40]  James J. Kistler,et al.  Connected components with split and merge , 1991, [1991] Proceedings. The Fifth International Parallel Processing Symposium.

[41]  Myung Hoon Sunwoo,et al.  PARALLEL ALGORITHM FOR REGION LABELING. , 1987 .

[42]  James J. Little,et al.  Parallel Algorithms for Computer Vision on the Connection Machine , 1986 .

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

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

[45]  A. Krikelis,et al.  Performance of the ASP on the DARPA architecture benchmark , 1988, Proceedings., 2nd Symposium on the Frontiers of Massively Parallel Computation.

[46]  David J. Goodman,et al.  Personal Communications , 1994, Mobile Communications.

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