Implementation of a parallel algorithm of image segmentation based on region growing
DOI:
https://doi.org/10.15587/1729-4061.2020.197095Keywords:
computer vision, image processing, segmentation techniques, Region growing, parallel processing, parallel algorithms, GPU, SIMD, texture analysis, Digital Image ProcessingAbstract
In computer vision and image processing, image segmentation remains a relevant research area that contains many partially answered research questions. One of the fields of most significant interest in Digital Image Processing corresponds to segmentation, a process that breaks down an image into its different components that make it up. A technique widely used in the literature is called Region Growing, this technique makes the identification of textures, through the use of characteristic and particular vectors. However, the level of its computational complexity is high. The traditional methods of Region growing are based on the comparison of grey levels of neighbouring pixels, and usually, fail when the region to be segmented contains intensities similar to adjacent regions. However, if a broad tolerance is indicated in its thresholds, the detected limits will exceed the region to identify; on the contrary, if the threshold tolerance decreases too much, the identified region will be less than the desired one. In the analysis of textures, multiple scenes can be seen as the composition of different textures. The visual texture refers to the impression of roughness or smoothness that some surfaces created by the variations of tones or repetition of visual patterns therein. The texture analysis techniques are based on the assignment of one or several parameters indicating the characteristics of the texture present to each region of the image. This paper shows how a parallel algorithm was implemented to solve open problems in the area of image segmentation research. Region growing is an advanced approach to image segmentation in which neighbouring pixels are examined one by one and added to an appropriate region class if no border is detected. This process is iterative for each pixel within the boundary of the region. If adjacent regions are found, a region fusion algorithm is used in which weak edges dissolve, and firm edges remain intact, this requires a lot of processing time on a computer to make parallel implementation possibleSupporting Agency
- We appreciate the facilities granted to carry out this work to the INSTITUTO POLITECNICO NACIONAL through the Secretary of Research and Postgraduate with the SIP project 20180023. To the Interdisciplinary Unit of Engineering and Social and Administrative
References
- Keely, C. C., Hale, J. M., Heard, G. W., Parris, K. M., Sumner, J., Hamer, A. J., Melville, J. (2015). Genetic structure and diversity of the endangered growling grass frog in a rapidly urbanizing region. Royal Society Open Science, 2 (8), 140255. doi: https://doi.org/10.1098/rsos.140255
- Ashburner, J., Friston, K. J. (2005). Unified segmentation. NeuroImage, 26 (3), 839–851. doi: https://doi.org/10.1016/j.neuroimage.2005.02.018
- Bandler, R., Tork, I. (1987). Midbrain periaqueductal grey region in the cat has afferent and efferent connections with solitary tract nuclei. Neuroscience Letters, 74 (1), 1–6. doi: https://doi.org/10.1016/0304-3940(87)90041-3
- Patel, N. H., Liu, P. Z. (2009). Segmentation. Encyclopedia of Insects, 909–912. doi: https://doi.org/10.1016/b978-0-12-374144-8.00240-x
- Taylor, J. R. A., deVries, M. S., Elias, D. O. (2019). Growling from the gut: co-option of the gastric mill for acoustic communication in ghost crabs. Proceedings of the Royal Society B: Biological Sciences, 286 (1910), 20191161. doi: https://doi.org/10.1098/rspb.2019.1161
- Chen, D. (2008). Image Segmentation. User Centered Design for Medical Visualization, 258–279. doi: https://doi.org/10.4018/978-1-59904-777-5.ch013
- Hsiao, Y.-T., Chuang, C.-L., Jiang, J.-A., Chien, C.-C. (2005). Robust Multiple Targets Tracking Using Object Segmentation and Trajectory Estimation in Video. 2005 IEEE International Conference on Systems, Man and Cybernetics. doi: https://doi.org/10.1109/icsmc.2005.1571289
- Tynan, A. C., Drayton, J. (1987). Market segmentation. Journal of Marketing Management, 2 (3), 301–335. doi: https://doi.org/10.1080/0267257x.1987.9964020
- Felzenszwalb, P. F., Huttenlocher, D. P. (2004). Efficient Graph-Based Image Segmentation. International Journal of Computer Vision, 59 (2), 167–181. doi: https://doi.org/10.1023/b:visi.0000022288.19776.77
- Hu, R., Dollar, P., He, K., Darrell, T., Girshick, R. (2018). Learning to Segment Every Thing. 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. doi: https://doi.org/10.1109/cvpr.2018.00445
- Owens, J. D., Houston, M., Luebke, D., Green, S., Stone, J. E., Phillips, J. C. (2008). GPU Computing. Proceedings of the IEEE, 96 (5), 879–899. doi: https://doi.org/10.1109/jproc.2008.917757
- Stuart, J. A., Owens, J. D. (2011). Multi-GPU MapReduce on GPU Clusters. 2011 IEEE International Parallel & Distributed Processing Symposium. doi: https://doi.org/10.1109/ipdps.2011.102
- Nickolls, J., Dally, W. J. (2010). The GPU Computing Era. IEEE Micro, 30 (2), 56–69. doi: https://doi.org/10.1109/mm.2010.41
- Bergstra, J., Breuleux, O., Bastien, F. F., Lamblin, P., Pascanu, R., Desjardins, G. et. al. (2010). Theano: a CPU and GPU math compiler in Python. Proceedings of the Python for Scientific Computing Conference (SciPy).
- Sanders, J., Kandrot, E. (2010). CUDA by Example: An Introduction to General-Purpose GPU Programming. NVIDIA Corporation, 311.
- Pratx, G., Xing, L. (2011). GPU computing in medical physics: A review. Medical Physics, 38 (5), 2685–2697. doi: https://doi.org/10.1118/1.3578605
- Sengupta, S., Harris, M., Zhang, Y., Owens, J. D. (2007). Scan primitives for GPU computing. Proceedings of the SIGGRAPH/Eurographics Workshop on Graphics Hardware, 97–106.
- Che, S., Boyer, M., Meng, J., Tarjan, D., Sheaffer, J. W., Skadron, K. (2008). A performance study of general-purpose applications on graphics processors using CUDA. Journal of Parallel and Distributed Computing, 68 (10), 1370–1380. doi: https://doi.org/10.1016/j.jpdc.2008.05.014
- Power, J., Hestness, J., Orr, M. S., Hill, M. D., Wood, D. A. (2015). gem5-gpu: A Heterogeneous CPU-GPU Simulator. IEEE Computer Architecture Letters, 14 (1), 34–36. doi: https://doi.org/10.1109/lca.2014.2299539
- Feng, W., Xiao, S. (2010). To GPU synchronize or not GPU synchronize? Proceedings of 2010 IEEE International Symposium on Circuits and Systems. doi: https://doi.org/10.1109/iscas.2010.5537722
- Lee, V. W., Hammarlund, P., Singhal, R., Dubey, P., Kim, C., Chhugani, J. et. al. (2010). Debunking the 100X GPU vs. CPU myth. Proceedings of the 37th Annual International Symposium on Computer Architecture - ISCA ’10. doi: https://doi.org/10.1145/1815961.1816021
- Zhou, Y., Tan, Y. (2009). GPU-based parallel particle swarm optimization. 2009 IEEE Congress on Evolutionary Computation. doi: https://doi.org/10.1109/cec.2009.4983119
- Shah, S., Bull, M. (2006). OpenMP---OpenMP. Proceedings of the 2006 ACM/IEEE Conference on Supercomputing - SC ’06. doi: https://doi.org/10.1145/1188455.1188469
- Hermanns, M. (2002). Parallel programming in Fortran 95 using OpenMP. School of Aeronautical Engineering.
- Chapman, B., Jost, G., Van Der Pas, R. (2008). Using OpenMP. Cluster Computing.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2020 Jesús Antonio Álvarez-Cedillo, Mario Aguilar-Fernández, Teodoro Álvarez-Sánchez, Raúl Junior Sandoval-Gómez
This work is licensed under a Creative Commons Attribution 4.0 International License.
The consolidation and conditions for the transfer of copyright (identification of authorship) is carried out in the License Agreement. In particular, the authors reserve the right to the authorship of their manuscript and transfer the first publication of this work to the journal under the terms of the Creative Commons CC BY license. At the same time, they have the right to conclude on their own additional agreements concerning the non-exclusive distribution of the work in the form in which it was published by this journal, but provided that the link to the first publication of the article in this journal is preserved.
A license agreement is a document in which the author warrants that he/she owns all copyright for the work (manuscript, article, etc.).
The authors, signing the License Agreement with TECHNOLOGY CENTER PC, have all rights to the further use of their work, provided that they link to our edition in which the work was published.
According to the terms of the License Agreement, the Publisher TECHNOLOGY CENTER PC does not take away your copyrights and receives permission from the authors to use and dissemination of the publication through the world's scientific resources (own electronic resources, scientometric databases, repositories, libraries, etc.).
In the absence of a signed License Agreement or in the absence of this agreement of identifiers allowing to identify the identity of the author, the editors have no right to work with the manuscript.
It is important to remember that there is another type of agreement between authors and publishers – when copyright is transferred from the authors to the publisher. In this case, the authors lose ownership of their work and may not use it in any way.