Skip to main content
Log in

Parallel algorithms for image enhancement and segmentation by region growing, with an experimental study

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

This paper presents efficient and portable implementations of a powerful image enhancement process, the Symmetric Neighborhood Filter (SNF), and an image segmentation technique that makes use of the SNF and a variant of the conventional connected components algorithm which we call δ-Connected Components. We use efficient techniques for distributing and coalescing data as well as efficient combinations of task and data parallelism. The image segmentation algorithm makes use of an efficient connected components algorithm based on a novel approach for parallel merging. The algorithms have been coded in Split-C and run on a variety of platforms, including the Thinking Machines CM-5, IBM SP-1 and SP-2, Cray Research T3D, Meiko Scientific CS-2, Intel Paragon, and workstation clusters. Our experimental results are consistent with the theoretical analysis (and provide the best known execution times for segmentation, even when compared with machine-specific implementations). Our test data include difficult images from the Landsat Thematic Mapper (TM) satellite data.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. A. Alexandrov, M. Ionescu, K. Schauser, and C. Scheiman. LogGP: Incorporating long messages into the LogP model — One step closer towards a realistic model for parallel computation. In 7th Annual ACM Symposium on Parallel Algorithms and Architectures, pages 95–105, Santa Barbara, Calif., July 1995.

  2. H. Alnuweiri and V. Prasanna. Parallel architectures and algorithms for image component labeling. IEEE Transactions on Pattern Analysis and Machine Intelligence, 14:1014–1034, 1992.

    Google Scholar 

  3. H.M. Alnuweiri and V.K. Prasanna Kumar. Efficient image computations on VLSI architectures with reduced hardware. In Proceedings of the 1987 Workshop on Computer Architecture for Pattern Analysis and Machine Intelligence, pages 192–199, Seattle, October 1987.

  4. M. Annaratone, E. Arnould, T. Gross, H.T. Kung, M. Lam, O. Menzilcioglu, and J.A. Webb. The Warp computer: Architecture, implementation, and performance. IEEE Transactions on Computers, C-36:1523–1538, 1987.

    Google Scholar 

  5. J. Apostolakis, P. Coddington, and E. Marinari. New SIMD algorithms for cluster labeling on parallel computers. International Journal of Modern Physics C, 4:749, 1993.

    Google Scholar 

  6. R.H. Arpaci, D.E. Culler, A. Krishnamurthy, S.G. Steinberg, and K. Yelick. Empirical evaluation of the CRAY-T3D: A compiler perspective. In Proceedings of the 22nd Annual International Symposium on Computer Architecture, pages 320–331, Santa Margherita Ligure, Italy, June 1995.

    Google Scholar 

  7. D.A. Bader. On the design and analysis of practical parallel algorithms for combinatorial problems with applications to image processing. Ph.D. thesis, Department of Electrical Engineering, University of Maryland, College Park, April 1996.

    Google Scholar 

  8. D.A. Bader and J. JáJá. Parallel algorithms for image histogramming and connected components with an experimental study. Technical Report CS-TR-3384 and UMIACS-TR-94–133, UMIACS and Electrical Engineering, University of Maryland, College Park, Md., December 1994. Journal of Parallel and Distributed Computing, 35(2): 173–190, 1996.

    Google Scholar 

  9. D.A. Bader and J. JáJá. Parallel algorithms for image histogramming and connected components with an experimental study. In Fifth ACM SIGPLAN Symposium of Principles and Practice of Parallel Programming, pages 123–133, Santa Barbara, Calif., July 1995.

  10. D.A. Bader and J. JáJá. Practical parallel algorithms for dynamic data redistribution, median finding, and selection. Technical Report CS-TR-3494 and UMIACS-TR-95–74, UMIACS and Electrical Engineering, University of Maryland, College Park, Md., July 1995.

    Google Scholar 

  11. D.A. Bader and J. JáJá. Practical parallel algorithms for dynamic data redistribution, median finding, and selection. In Proceedings of the 10th International Parallel Processing Symposium, pages 292–301, Honolulu, April 1996.

  12. C.F. Baillie and P.D. Coddington. Cluster identification algorithms for spin models — Sequential and parallel. Concurrency: Practice and Experience, 3(2): 129–144, 1991.

    Google Scholar 

  13. P.K. Biswas, J. Mukherjee, and B.N. Chatterji. Component labeling in pyramid architecture. Pattern Recognition, 26(7):1099–1115, 1993.

    Google Scholar 

  14. G.E. Blelloch. Prefix sums and their applications. Technical Report CMU-CS-90-190, School of Computer Science, Carnegie Mellon University, November 1990.

  15. S.H. Bokhari and H. Berryman. Complete exchange on a circuit switched mesh. In Proceedings of Scalable High Performance Computing Conference, pages 300–306, Williamsburg, Va., April 1992.

  16. R.C. Brower, P. Tamayo, and B. York. A parallel multigrid algorithm for percolation clusters. Journal of Statistical Physics, 63:73, 1991.

    Google Scholar 

  17. W.W. Carlson and J.M. Draper. AC for the T3D. Technical Report SRC-TR-95–141, Center for Computing Sciences, Bowie, Md., February 1995.

    Google Scholar 

  18. Y.-L. Chang and X. Li. Adaptive image region-growing. IEEE Transactions on Image Processing, 3(6):868–872, 1994.

    Google Scholar 

  19. V. Chaudhary and J.K. Aggarwal. On the complexity of parallel image component labeling. In Proceedings of the 1991 International Conference on Parallel Processing, pages 183–187, August 1991.

  20. A. Choudhary and R. Thakur. Evaluation of connected component labeling algorithms on shared and distributed memory multiprocessors. In Proceedings of the 6th International Parallel Processing Symposium, pages 362–365, March 1992.

  21. A. Choudhary and R. Thakur. Connected component labeling on coarse grain parallel computers: An experimental study. Journal of Parallel and Distributed Computing, 20(1):78–83, January 1994.

    Google Scholar 

  22. N. Copty, S. Ranka, G. Fox, and R.V. Shankar. A data parallel algorithm for solving the region growing problem on the Connection Machine. Journal of Parallel and Distributed Computing, 21(1):160–168, April 1994.

    Google Scholar 

  23. D.E. Culler, A. Dusseau, S.C. Goldstein, A. Krishnamurthy, S. Lumetta, S. Luna, T. von Eicken, and K. Yelick. Introduction to Split-C. Computer Science Division — EECS, University of California, Berkeley, version 1.0 edition, March 6, 1994.

    Google Scholar 

  24. D.E. Culler, A. Dusseau, S.C. Goldstein, A. Krishnamurthy, S. Lumetta, T. von Eicken, and K. Yelick. Parallel programming in Split-C. In Proceedings of Supercomputing '93, pages 262–273, Portland, Ore., November 1993.

  25. D.E. Culler, R.M. Karp, D.A. Patterson, A. Sahay, K.E. Schauser, E. Santos, R. Subramonian, and T. von Eicken. LogP: Towards a realistic model of parallel computation. In Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, May 1993.

  26. F. Dehne and S.E. Hambrusch. Parallel algorithms for determining k-width connectivity in binary images. Journal of Parallel and Distributed Computing, 12:12–23, 1991.

    Google Scholar 

  27. H. Derin and C.-S. Won. A parallel image segmentation algorithm using relaxation with varying neighborhoods and its mapping to array processors. Computer Vision, Graphics, and Image Processing, 40:54–78, 1987.

    Google Scholar 

  28. M.B. Dillencourt, H. Samet, and M. Tamminen. Connected component labeling of binary images. Technical Report CS-TR-2303, Computer Science Department, University of Maryland, College Park, Md., August 1989.

    Google Scholar 

  29. H. Embrechts, D. Roose, and P. Wambacq. Component labelling on a MIMD multiprocessor. CVGIP: Image Understanding, 57(2):155–165, March 1993.

    Google Scholar 

  30. B. Falsafi and R. Miller. Component labeling algorithms on an Intel iPSC/2 hypercube. In Proceedings of the Fifth Distributed Memory Computing Conference, pages 159–164, Charleston, S.C., April 1990.

  31. R. Goldenberg, W.C. Lau, A. She, and A.M. Waxman. Progress on the prototype PIPE. In Proceedings of the 1987 Workshop on Computer Architecture for Pattern Analysis and Machine Intelligence, pages 67–74, Seattle, October 1987.

  32. S. Hambrusch, X. He, and R. Miller. Parallel algorithms for gray-scale digitized picture component labeling on mesh-connected computer. Journal of Parallel and Distributed Computing, 20:56–68, 1994.

    Google Scholar 

  33. F. Hameed, S.E. Hambrusch, A.A. Khokhar, and J.N. Patel. Contour ranking on coarse grained machines: A case study for low-level vision computations. Technical report, Purdue University, West Lafayette, Ind., November 1994.

    Google Scholar 

  34. Y. Han and R.A. Wagner. An efficient and fast parallel-connected component algorithm. Journal of the ACM, 37(3):626–642, 1990.

    Google Scholar 

  35. R.M. Haralick and L.G. Shapiro. Image segmentation techniques. Computer Vision, Graphics, and Image Processing, 29:100–132, 1985.

    Google Scholar 

  36. D. Harwood, M. Subbarao, H. Hakalahti, and L.S. Davis. A new class of edge-preserving smoothing filters. Pattern Recognition Letters, 6:155–162, 1987.

    Google Scholar 

  37. D.S. Hirschberg, A.K. Chandra, and D.V. Sarwate. Computing connected components on parallel computers. Communications of the ACM, 22(8):461–464, 1979.

    Google Scholar 

  38. J. JáJá. An Introduction to Parallel Algorithms. Addison-Wesley, New York, 1992.

    Google Scholar 

  39. J. JáJá and K.W. Ryu. The Block Distributed Memory model. Technical Report CS-TR-3207, Computer Science Department, University of Maryland, College Park, January 1994. To appear in IEEE Transactions on Parallel and Distributed Systems.

    Google Scholar 

  40. J.F. JáJá and K.W. Ryu. The Block Distributed Memory model for shared memory multiprocessors. In Proceedings of the 8th International Parallel Processing Symposium, pages 752–756, Cancún, Mexico, April 1994. (Extended abstract)

  41. T. Kanade and J.A. Webb. Parallel vision algorithm design and implementation 1988 end of year report. Technical Report CMU-RI-TR-89-23, The Robotics Institute, Carnegie Mellon University, August 1989.

  42. J.J. Kistler and J.A. Webb. Connected components with split and merge. In Proceedings of the 5th International Parallel Processing Symposium, pages 194–201, Anaheim, Calif., April 1991.

  43. H.T. Kung and J.A. Webb. Mapping image processing operations onto a linear systolic machine. Distributed Computing, 1:246–257, 1986.

    Google Scholar 

  44. J.J. Little, G. Blelloch, and T. Cass. Parallel algorithms for computer vision on the Connection Machine. In Image Understanding Workshop, pages 628–638, Los Angeles, February 1987.

  45. M. Manohar and H.K. Ramapriyan. Connected component labeling of binary images on a mesh connected massively parallel processor. Computer Vision, Graphics, and Image Processing, 45(2):133–149, 1989.

    Google Scholar 

  46. P.J. Narayanan. Effective use of SIMD machines for image analysis. Ph.D. thesis, Department of Computer Science, University of Maryland, College Park, Md., 1992.

    Google Scholar 

  47. P.J. Narayanan and L.S. Davis. Replicated data algorithms in image processing. Technical Report CAR-TR-536/CS-TR-2614, Center for Automation Research, University of Maryland, College Park, Md., February 1991.

    Google Scholar 

  48. M. Pietikäinen, T. Seppänen, and P. Alapuranen. A hybrid computer architecture for machine vision. In Proceedings of the 10th International Conference on Pattern Recognition, Volume 2, pages 426–431, Atlantic City, N.J., June 1990.

    Google Scholar 

  49. A. Rosenfeld. A report on the DARPA Image Understanding Architectures Workshop. In Proceedings of the 1987 Image Understanding Workshop, pages 298–302, 1987.

  50. H. Shi and G.X. Ritter. A fast algorithm for image component labeling with local operators on mesh connected computers. Journal of Parallel and Distributed Computing, 23:455–461, 1994.

    Google Scholar 

  51. A.D. Sokal. New numerical algorithms for critical phenomena (Multi-grid methods and all that). In Proceedings of the International Conference on Lattice Field Theory, Tallahassee, Fla., October 1990. (Nucl. Phys. B (Proc. Suppl), 20:55, 1991.).

  52. D. Stauffer. Introduction to Percolation Theory. Taylor and Francis, Philadelphia, 1985.

    Google Scholar 

  53. M.H. Sunwoo, B.S. Baroody, and J.K. Aggarwal. A parallel algorithm for region labeling. In Proceedings of the 1987 Workshop on Computer Architecture for Pattern Analysis and Machine Intelligence, pages 27–34, Seattle, October 1987.

  54. J.C. Tilton and S.C. Cox. Segmentation of remotely sensed data using parallel region growing. In Ninth International Symposium on Machine Processing of Remotely Sensed Data, pages 130–137, West Lafayette, Ind., June 1983.

  55. L.G. Valiant. A bridging model for parallel computation. Communications of the ACM, 33(8):103–111, 1990.

    Google Scholar 

  56. R.S. Wallace, J.A. Webb, and I.-C. Wu. Machine-independent image processing: Performance of Apply on diverse architectures. Computer Vision, Graphics, and Image Processing, 48:265–276, 1989.

    Google Scholar 

  57. J.A. Webb. Architecture-independent global image processing. In Proceedings of the 10th International Conference on Pattern Recognition, Volume 2, pages 623–628, Atlantic City, N.J., June 1990.

    Google Scholar 

  58. C. Weems, E. Riseman, A. Hanson, and A. Rosenfeld. An Integrated Image Understanding Benchmark: Recognition of a 2 1/2 D “mobile.” In Image Understanding Workshop, pages 111–126, Cambridge, Mass., April 1988.

  59. C. Weems, E. Riseman, A. Hanson, and A. Rosenfeld. A report on the results of the DARPA Integrated Image Understanding Benchmark exercise. In Image Understanding Workshop, pages 165–192, May 1989.

  60. C. Weems, E. Riseman, A. Hanson, and A. Rosenfeld. The DARPA Image Understanding Benchmark for parallel computers. Journal of Parallel and Distributed Computing, 11:1–24, 1991.

    Google Scholar 

  61. T. Westman, D. Harwood, T. Laitinen, and M. Pietikäinen. Color segmentation by hierarchical connected components analysis with image enhancement by Symmetric Neighborhood Filters. In Proceedings of the 10th International Conference on Pattern Recognition, pages 796–802, Atlantic City, N.J., June 1990.

  62. M. Willebeek-LeMair and A.P. Reeves. Region growing on a highly parallel mesh-connected SIMD computer. In The 2nd Symposium on the Frontiers of Massively Parallel Computations, pages 93–100, Fairfax, Va., October 1988.

  63. M. Willebeek-LeMair and A.P. Reeves. Solving nonuniform problems on SIMD computers: Case study on region growing. Journal of Parallel and Distributed Computing, 8:135–149, 1990.

    Google Scholar 

  64. R. Williams. Parallel load balancing for parallel applications. Technical Report CCSF-50, Concurrent Supercomputing Facilities, California Institute of Technology, November 1994.

  65. W. Yong and M.L. Brady. Efficient component labeling on SIMD mesh processors. In Proceedings of the International Conference on Parallel Processing, pages III-31 – III-34, August 1994.

  66. S.W. Zucker. Region growing: Childhood and adolescence. Computer Graphics and Image Processing, 5:382–399, 1976.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

Also affiliated with the Department of Electrical Engineering.

Also affiliated with the Department of Computer Science and the Center for Automation Research.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Bader, D.A., Jájá, J., Harwood, D. et al. Parallel algorithms for image enhancement and segmentation by region growing, with an experimental study. J Supercomput 10, 141–168 (1996). https://doi.org/10.1007/BF00130707

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00130707

Keywords

Navigation