Abstract
Blob analysis has been extensively used in target detection, object recognition, moving target tracking, among other applications. Because blob analysis is computationally expensive, it has become a bottleneck of real-time applications. To tackle this problem, a parallel algorithm for blob analysis is proposed, and a hardware-efficient architecture for this algorithm is presented in this paper. First, based on image data partition and multi-process units, a novel parallel algorithm of blob analysis is proposed to process objects with different types and sizes. Second, a dynamic convex hull calculation method is designed, which is highly efficient for parallel processing and sub-block merging of connected component labeling. Third, a parallel hardware structure of the proposed algorithm is designed and implemented on FPGA. To evaluate performance, blobs of different types and sizes are located by the proposed algorithm in software and hardware. The experimental results demonstrate that the blobs are effectively and correctly located by the proposed algorithm, and the proposed hardware architecture works more efficiently than the state-of-the-art methods.
















Similar content being viewed by others
References
Schwenk, K., Huber, F.: Connected component labeling algorithm for very complex and high-resolution images on an FPGA platform. SPIE remote sensing. Int. Soc. Opt. Photon. 9646(03), 1–14 (2015)
Bottino, A., Garbo, A., Loiacono, C., et al.: Street viewer: an autonomous vision based traffic tracking system. Sensors 16(6), 813 (2016)
Ding, M., Antani, S., Jaeger, S., et al.: Logcal-global classifier fusion for screening chest radiographs. In: Proceeding SPIE 10138 Medical Imaging: Image Informatics for Healthcare, Research and Applicatons (2017)
Zhou, H., Llewellyn, L., Wei, L., Creighton, D., Nahavandi, S.: Marine object detection using background modeling and blob analysis. In: IEEE International Conference on Systems, Man and Cybernetics, pp. 430–435 (2015)
Athrey, K.S., Kambalur, B.M., Kumar, K. K.: Traffic sign recognition using blob analysis and template matching. In: International Conference on Computer and Communication Technology, pp. 219–222 (2015)
Bochem, A., Herpers, R., Kent, K.B.: Hardware acceleration of blob detection for image processing. In: International Conference on Advances in Circuits, Electronics and Micro-Electronics, pp. 28–33 (2010)
Zhao, C., Duan, G., Zheng, N.: A hardware-efficient method for extracting statistic information of connected component. J. Signal Process. Syst. 88(1), 55–65 (2017)
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)
Cabaret, L., Lacassagne, L., Etiemble, D.: Parallel light speed labeling: an efficient connected component algorithm for labeling and analysis on multi-core processors. In: IEEE international conference on image processing (ICIP), Quebec City, Canada, 27–30 Sept 2015, pp. 3486–3489 (2015)
Rosenfeld, A.: Connectivity in digital pictures. J. ACM 17(1), 146–160 (1970)
Song, W., Wu, D., Xi, Y., Yong, W.P., Cho, K.: Motion-based skin region of interest detection with a real-time connected component labeling algorithm. Multimed. Tools Appl. 76(9), 11199–11214 (2017)
Wu, K., Otoo, E., Suzuki, K.: Optimizing two-pass connected-component labeling algorithms. Formal Pattern Anal. Appl. 12(2), 117–135 (2009)
Gupta, S., Palsetia, D., Patwary, M. M. A., Agrawal, A., Choudhary, A.: A new parallel algorithm for two-pass connected component labeling. In: IEEE International Parallel & Distributed Processing Symposium Workshops, Vol. 778, pp. 1355–1362 (2014)
Zhao, X., He, L., Yao, B., Chao, Y.: A new connected-component labeling algorithm. IEICE Trans. Inf. Syst. E98.D(11), 2013–2016 (2015)
Stout, Q.F: Optimal component labeling algorithms for mesh-connected computers and vlsi. Comput. Sci. (2015)
Tang, J.W., Shaikh-Husin, N., Sheikh, U.U., Marsono, M.N.: A linked list run-length-based single-pass connected component analysis for real-time embedded hardware. J. Real-Time Image Proc. (2016). doi:10.1007/s11554-016-0590-2
Jeong, J.W., Lee, G.B., Lee, M.J., Kim, J.G.: A single-pass connected component labeler without label merging period. J. Signal Process. Syst. 84(2), 211–223 (2016)
He, L., Yao, B., Zhao, X., Yang, Y., Shi, Z., Kasuya, H., et al.: A fast algorithm for integrating connected-component labeling and euler number computation. J. Real Time Image Process. 13(6), 1–15 (2015)
Lee, S.Y., Kwak, D.M., Sung, G.Y., Kim, D.J.: Modified component-labeling algorithms applied to grayscale images. In: International conference on control, automation and systems, Seoul, South Korea, 14–17 Oct 2008, pp. 1876–1880 (2008)
Malik, A.W., Thirnberg, B., Imran, M., Lawal, N.: Hardware architecture for real-time computation of image component feature descriptors on a FPGA. Int. J. Distribut. Sens. Netw. 2014(1), 1–14 (2014)
Subbaian, S., Gopalakrishnan, S., Doss, V., Li, X., Cuciurean-Zapan, C.: Connected component analysis with multi-thresholding to segment halftones. United States Patent, Patent No. US9124841, 1 Sept 2015
Wiederhold, P., Reyes, H.: Relative convex hull determination from convex hulls in the Plane. In: Combinatorial Image Analysis. Springer (2016)
Kemmotsu, K.: High speed calculation of convex hull in 2d images using FPGA. In: The 10th anniversary celebration of RECONF: reconfigurable systems, etc. Kyoto University, Japan, 19–20 June 2015, pp. 35–40 (2015)
Szczypiński, P., Klepaczko, A.: Convex hull-based feature selection in application to classification of wireless capsule endoscopic images. In: Advanced Concepts for Intelligent Vision Systems. Springer, Berlin (2009)
Barber, C.B., Dobkin, D.P., Huhdanpaa, H.: The quickhull algorithm for convex hulls. ACM Trans. Math. Softw 22(4), 469–483 (1998)
Mei, G., Xu, N.: Cudapre3d: an alternative preprocessing algorithm for accelerating 3D convex hull computation on the gpu. Adv. Electr. Comput. Eng. 15(2), 35–44 (2015)
Erétéo, G., Gandon, F., Buffa, M.: SemTagP: semantic community detection in folksonomies. IEEE/WIC/ACM Int. Conf. Web Intell. Intell. Agent Technol. 1, 324–331 (2011)
Zhang, S., Ma, L.Z.: A parallel algorithm for convex hull of planar disperse point set. J. Zhejiang Univ. 4(1), 22–30 (1999)
Nakagawa, M., Man, D., Ito, Y., et al.: A simple parallel convex hulls algorithm for sorted points and the performance evaluation on the multicore processors. In: International Conference on Parallel and Distributed Computing, Applications and Technologies, pp. 506–511. IEEE, Washington (2009)
Liaghati, A.L., Pan, W.D.: Improved distance coding of binary images by run length coding of the most probable interval. In: SoutheastCon, Fort Lauderdale, USA, 9–15 Apr 2015, pp. 1–7 (2015)
Brown University: Datasets-shape (2016). http://vision.lems.brown.edu/content/available-software-and–databases.html (2016)
He, L., Chao, Y., Suzuki, K., Nakamura, T., Itoh, H.: A high-speed run-based two-scan labeling algorithm. J. Inst. Image Inf. Telev. Eng. 62(9), 1461–1465 (2008)
Kumar, P., Palaniappan, K., Mittal, A., Seetharaman, G.: Parallel blob extraction using the multi-core cell processor. Lect. Notes Comput. Sci. 5807(5807), 320–332 (2009)
Zhao, F., Lu, Zh., Zhang, H., Yong, Z.: Real-time single-pass connected components analysis algorithm. EURASIP J. Image Video Process. 2013(1), 1–10 (2013)
Kiran, D., Rasheed, A.I., Ramasangu, H.: FPGA implementation of blob detection algorithm for object detection in visual navigation. Int. Conf. Circuits Controls Commun. 115, 1–5 (2013)
Acevedo-Avila, R., Gonzalez-Mendoza, M., Garcia-Garcia, A.: A linked list-based algorithm for blob detection on embedded vision-based sensors. Sensors 16(6), 782 (2016)
Acknowledgments
This work was partially supported by the National Key Research and Development Program of China (Grant No. 2016YFC0801003), and National Natural Science Foundation of China (No. 61272347).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Li, B., Zhang, C., Li, B. et al. A hardware-efficient parallel architecture for real-time blob analysis based on run-length code. J Real-Time Image Proc 15, 657–672 (2018). https://doi.org/10.1007/s11554-017-0709-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11554-017-0709-0