Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Parallel Light Speed Labeling: an efficient connected component algorithm for labeling and analysis on multi-core processors

  • Special Issue Paper
  • Published:
Journal of Real-Time Image Processing Aims and scope Submit manuscript

Abstract

In the last decade, many papers have been published to present sequential connected component labeling (CCL) algorithms. As modern processors are multi-core and tend to many cores, designing a CCL algorithm should address parallelism and multithreading. After a review of sequential CCL algorithms and a study of their variations, this paper presents the parallel version of the Light Speed Labeling for connected component analysis (CCA) and compares it to our parallelized implementations of State-of-the-Art sequential algorithms. We provide some benchmarks that help to figure out the intrinsic differences between these parallel algorithms. We show that thanks to its run-based processing, the LSL is intrinsically more efficient and faster than all pixel-based algorithms. We show also, that all the pixel-based are memory-bound on multi-socket machines and so are inefficient and do not scale, whereas LSL, thanks to its RLE compression can scale on such high-end machines. On a 4 × 15-core machine, and for 8192 × 8192 images, LSL outperforms its best competitor by a factor ×10.8 and achieves a throughput of 42.4 gigapixel labeled per second.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25
Fig. 26
Fig. 27
Fig. 28
Fig. 29
Fig. 30
Fig. 31
Fig. 32
Fig. 33
Fig. 34
Fig. 35
Fig. 36
Fig. 37
Fig. 38
Fig. 39
Fig. 40
Fig. 41
Fig. 42

Similar content being viewed by others

References

  1. Bailey, D., Johnston, C.: Single pass connected component analysis. In: Image and Vision New Zeland (IVNZ), pp. 282–287 (2007)

  2. Blelloch, G.: Vector Models for Data-Parallel Computing. MIT Press, Cambridge (1990)

    Google Scholar 

  3. Cabaret, L., Lacassagne, L.: A review of world’s fastest connected component labeling algorithms: speed and energy estimation. In: IEEE International Conference on Design and Architectures for Signal and Image Processing (DASIP), pp. 1–8 (2014)

  4. Cabaret, L., Lacassagne, L.: What is the world’s fastest connected component labeling algorithm? In: IEEE International Workshop on Signal Processing Systems (SiPS), pp. 97–102 (2014)

  5. Chang, F., Chen, C.: A linear-time component-labeling algorithm using contour tracing technique. Comput. Vision Image Underst. 93, 206–220 (2004)

    Article  Google Scholar 

  6. Chen, C.-W., Wu, Y.-T., Tseng, S.-Y., Wang, W.-S.: Parallelization of connected-component labeling on TILE64 many-core platform. J. Signal Process. Syst. 75(2), 169–183 (2013)

    Article  Google Scholar 

  7. Cormen, T., Leiseirson, C., Rivest, R., Stein, C.: Introduction to Algorithms. MIT Press, Cambridge (2001)

    Google Scholar 

  8. Grana, C., Borghesani, D., Cucchiara, R.: Fast block based connected components labeling. In: ICIP, pp. 4061–4064. IEEE (2009)

  9. Gupta, S., Palsetia, D., Patwary, M.A., Agrawal, A., Choudhary, A.: A new parallel algorithm for two-pass connected component labeling. In: Parallel & Distributed Processing Symposium Workshops (IPDPSW), pp. 1355–1362. IEEE (2014)

  10. Haralick, R.: Some neighborhood operations. In: Real-Time Parallel Computing Image Analysis, pp. 11–35. Plenum Press (1981)

  11. He, L., Chao, Y., Suzuki, K.: A run-based two-scan labeling algorithm. In: ICIAR, pp. 131–142. LNCS 4633 (2007)

  12. He, L., Chao, Y., Suzuki, K.: An efficient first-scan method for label-equivalence-based labeling algorithms. Pattern Recognit. Lett. 31(1), 28–35 (2010)

    Article  Google Scholar 

  13. He, L., Chao, Y., Suzuki, K.: A new two-scan algorithm for labeling connected components in binary images. In: World Congress (ed.) Proceedings of the World Congress on Engineering, vol. 2, pp. 1141–1146 (2012)

  14. Hernandez-Belmonte, U., Ayala-Ramirez, V., Sanchez-Yanez, R.: Enhancing CCL algorithms by using a reduced connectivity mask. In: Mexican Conference on Pattern Recognition, pp. 195–203 (2013)

  15. Hopcroft, J., Ullman, J.: Set merging algorithms. J. Comput. 2(4), 294–303 (1973)

    MathSciNet  MATH  Google Scholar 

  16. Hwu, W.W. (ed.) GPU Computing Gems, chapter 35: Connected Component Labeling in CUDA. Morgan Kaufman (2001)

  17. Klaiber, M., Bailey, D., Ahmed, S., Baroud, Y., Simon, S.: A high-throughput FPGA architecture for parallel connected components analysis based on label reuse. In: International Conference on Field Programmable Technology (FPT), pp. 302–305. IEEE (2013)

  18. Klaiber, M., Rockstroh, L., Wang, Z., Baroud, Y., Simon, S.: A memory-efficient parallel single pass architecture for connected component labeling of streamed images. In: International Conference on Field Programmable Technology (FPT), pp. 159–165. IEEE (2012)

  19. Lacassagne, L., Zavidovique, B.: Light speed labeling: efficient connected component labeling on RISC architectures. J. Real-Time Image Process. 6(2), 117–135 (2011)

    Article  Google Scholar 

  20. Lumia, R., Shapiro, L., Zungia, O.: A new connected components algorithms for virtual memory computers. Comput. Vision Graph. Image Process. 22(2), 287–300 (1983)

    Article  Google Scholar 

  21. Ma, N., Bailey, D., Johnston, C.: Optimised single pass connected component analysis. In: International Conference on Field Programmable Technology (FPT), pp. 185–192. IEEE (2008)

  22. Matsumoto, M., Nishimura, T.: Mersenne twister: a 623-dimensionally equidistributed uniform pseudorandom number generator. Trans. Model. Comput. Simul. 8(1), 3–30 (1998)

    Article  MATH  Google Scholar 

  23. Niknam, M., Thulasiraman, P., Camorlinga, S.: A parallel algorithm for connected component labeling of gray-scale images on homogeneous multicore architectures. J. Phys. High Perform. Comput. Symp. (HPCS) (2010)

  24. Otsu, N.: A threshold selection method from gray-level histograms. Trans. Syst. Man Cybern. 9, 62–66 (1979)

    Article  Google Scholar 

  25. Patwary, M., Blair, J., Manne, F.: Experiments on union-find algorithms for the disjoint-set data structure. In: International Symposium on Experimental Algorithms (SEA), pp. 411–423. Springer, New York (2010)

  26. Ronse, C., Dejvijver, P.: Connected components in binary images: the detection problems. Research Studies Press (1984)

  27. Rosenfeld, A., Platz, J.: Sequential operator in digital pictures processing. J. ACM 13(4), 471–494 (1966)

    Article  Google Scholar 

  28. Tarjan, R., Leeuwen, J.: Worst-case analysis of set union algorithms. J. ACM 31, 245–281 (1984)

    Article  MathSciNet  MATH  Google Scholar 

  29. van Leeuwen, J., van der Weide, T.: Alternative path compression techniques. Technical report. University Utrecht, The Netherlands (1977)

  30. Vandewalle, P., Kovacevic, J., Vetterli, M.: Reproducible research in signal processing. Signal Process. Mag. 26(3), 37–47 (2009)

    Article  Google Scholar 

  31. Wu, K., Otoo, E., Shoshani, A.: Optimizing connected component labeling algorithms. In: Pattern Analysis and Applications (2008)

  32. Ziegler, G.: Connected components revisited on Kepler. In: GPU Technology Conference, pp. 1–56. Nvidia (2013)

Download references

Acknowledgments

The authors gratefully acknowledge Francois Hannebicq from Intel France for his valuable help and the access to the high-end 4 × 15-core IvyBridge Xeon machine.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Laurent Cabaret.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Cabaret, L., Lacassagne, L. & Etiemble, D. Parallel Light Speed Labeling: an efficient connected component algorithm for labeling and analysis on multi-core processors. J Real-Time Image Proc 15, 173–196 (2018). https://doi.org/10.1007/s11554-016-0574-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11554-016-0574-2

Keywords