Abstract
Connected component labeling (CCL) is one of the most fundamental operations in image processing. CCL is a procedure for assigning a unique label to each connected component. It is a mandatory step between low-level and high-level image processing. In this work, a general method is given to improve the neighbourhood exploration in a two-scan labeling. The neighbourhood values are considered as commands of a decision table. This decision table can be represented as a decision tree. A block-based approach is proposed so that values of several pixels are given by one decision tree. This block-based approach can be extended to multiple connectivities, 2D and 3D. In a raster scan, already seen pixels can be exploited to generate smaller decision trees. New decision trees are automatically generated from every possible command. This process creates a decision forest that minimises the number of memory accesses. Experimental results show that this method is faster than the state-of-the-art labelling algorithms and require fewer memory accesses. The whole process can be generalised to any given connectivity.
Similar content being viewed by others
References
Baltieri, D., Vezzani, R., Cucchiara, R.: 3DPeS: 3D People Dataset for Surveillance and Forensics. In: Proceedings of the 2011 Joint ACM Workshop on Human Gesture and Behavior Understanding, pp. 59–64 (2011)
Bolelli, F., Baraldi, L., Cancilla, M., Grana, C.: Connected components labeling on drags. In: Proceedings of the 25th International Conference on Pattern Recognition, Beijing, China (2018)
Bolelli, F., Cancilla, M., Baraldi, L., Grana, C.: Towards reliable experiments on the performance of connected components labeling algorithms. J. Real-Time Image Process. (2018). https://doi.org/10.1007/s11554-018-0756-1
Cederberg, R.: Chain-link coding and segmentation for raster scan devices. Comput. Graph. Image Process. 10(3), 224–234 (1979)
Chang, F., Chen, C.: A component-labeling algorithm using contour tracing technique. In: International Conference on Document Analysis and Recognition, pp. 741–745 (2003)
Chang, F., Chen, C.J., Lu, C.J.: A linear-time component-labeling algorithm using contour tracing technique. Comput. Vis. Image Underst. 93(2), 206–220 (2004)
Chang, W., Chui, C., Yang, J.: Block-based connected-component labeling algorithm using binary decision trees. Sensors (Basel, Switzerland) 15(9), 23763–23787 (2015)
Clemens, J.: Optical character recognition for reading machine applications. Ph.D. thesis, Massachusetts Institute of Technology (1965)
Danielsson, P.E.: An improvement of Kruse’s segmentation algorithm. Comput. Graph. Image Process. 17(4), 394–396 (1981)
Dong, F., Irshad, H., Oh, E.-Y., Lerwill, M.F., Brachtel, E.F., Jones, N.C., Knoblauch, N.W., Montaser-Kouhsari, L., Johnson, N.B., Rao, L.K., et al.: Computational pathology to discriminate benign from malignant intraductal proliferations of the breast. PLoS One 9(12), e114885 (2014)
Fiorio, C., Gustedt, J.: Two linear time union-find strategies for image processing. Theor. Comput. Sci. 154, 165–181 (1996)
Galil, Z., Italiano, G.: Data structures and algorithms for disjoint set union problems. ACM Comput. Surv. 23(3), 319–344 (1991)
Grana, C., Baraldi, L., Bolelli, F.: Optimized connected components labeling with pixel prediction. In: Advanced Concepts for Intelligent Vision Systems, vol. 10016 (2016)
Grana, C., Borghesani, D., Cucchiara, R.: Optimized block-based connected components labeling with decision trees. IEEE Trans. Image Process. 19(6), 1596–1609 (2010)
Grana, C., Montangero, M., Borghesani, D.: Optimal decision trees for local image processing algorithms. Pattern Recognit. Lett. 33, 2302–2310 (2012)
Haralick, R.: Some neighborhood operations. In: Real Time Parallel Computing: Image Analysis, pp. 11–35 (1981)
He, L., Chao, Y., Suzuki, K.: A linear time two-scan labeling algorithm. IEEE Int. Conf. Image Process. 5, 241–244 (2007)
He, L., Chao, Y., Suzuki, K., Wu, K.: Fast connected-components labeling. Pattern Recognit. 42(9), 1977–1987 (2008)
He, L., Chao, Y., Suzuki, K.: A run-based two-scan labeling algorithm. IEEE Trans. Image Process. 17(5), 749–756 (2008)
He, L., Zhao, X., Chao, Y., Suzuki, K.: Configuration-transition-based connected-component labeling. IEEE Trans. Image Process. 23(2), 943–951 (2014)
Huiskes, M. J., Lew, M. S.: The MIR Flickr Retrieval Evaluation. In: Proceedings of the 2008 ACM International Conference on Multimedia Information Retrieval, New York, USA (2008). http://press.liacs.nl/mirflickr/. Accessed 17 Sept 2019
Kruse, B.: A fast algorithm for segmentation of connected components in binary images. In: Proceedings of First Scandinavian Conference on Image Analysis, Lund, Sweden (1980)
Lacassagne, L., Zavidovique, B.: Light speed labeling: efficient connected component labeling on RISC architectures. J. Real-Time Image Process. 6(2), 1596–1609 (2010)
Lumia, R., Shapiro, L., Zuniga, O.: A new connected components algorithm for virtual memory computers. Comput. Vis. Graph. Image Process. 22(2), 287–300 (1983)
Maltoni, D., Maio, D., Jain, A., Prabhakar, S.: Handbook of Fingerprint Recognition. Springer, New York (2009)
Morrin, T.: Chain-link copression of arbitrary black-white images. Comput. Graph. Image Process. 5(2), 172–189 (1979)
Patwary, M., Blair, J., Manne, F.: Experiments on union-find algorithms for the disjoint-set data structure. In: Experimental Algorithms, pp. 411–423. Springer (2010)
Rosenfeld, A., Pfaltz, J.L.: Sequential operations in digital picture processing. J. ACM 13(4), 471–494 (1966)
Samet, H., Tamminen, M.: An improved approach to connected component labeling of images. In: International Conference on Computer Vision and Pattern Recognition, pp. 312–318 (1986)
Schumacher, H., Sevcik, K.: The synthetic approach to decision table conversion. Commun. ACM 19(6), 343–351 (1976)
Schwartz, J., Sharir, M., Siegel, A.: An efficient algorithm for finding connected components in a binary image. Technical report 154, New York University Courant Institute of Mathematical Sciences, Computer Science Division (1985)
Stefano, L.D., Bulgarelli, A.: A simple and efficient connected components labeling algorithm. In: Processing 10th International Conference on Image Analysis and Processing, pp. 322–327. IEEE (1999)
Suzuki, K., Horiba, I., Sugie, N.: Linear-time connected component labeling based on sequential local operations. Comput. Vis. Image Underst. 89(1), 1–23 (2003)
The Legacy Tobacco Document Library (LTDL) University of California, San Francisco (2007). http://legacy.library.ucsf.efu/. Accessed 11 Mar 2010
Wu, K., Otoo, E., Shoshani, A.: Optimizing connected component labeling algorithms. SPIE Conf. Med. Imaging 5747, 1965–1976 (2005)
Wu, K., Otoo, E., Suzuki, K.: Optimizing 2-pass connected components labeling algorithms. Pattern Anal. Appl. 12(2), 117–135 (2009)
Zhao, H., Fan, Y., Zhang, T., Sang, H.: Stripe-based connected components labelling. Electron. Lett. 46(21), 1434–1436 (2010)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Chabardès, T., Dokládal, P. & Bilodeau, M. A labeling algorithm based on a forest of decision trees. J Real-Time Image Proc 17, 1527–1545 (2020). https://doi.org/10.1007/s11554-019-00912-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11554-019-00912-8