Implementation of a parallel algorithm of image segmentation based on region growing

Authors

DOI:

https://doi.org/10.15587/1729-4061.2020.197095

Keywords:

computer vision, image processing, segmentation techniques, Region growing, parallel processing, parallel algorithms, GPU, SIMD, texture analysis, Digital Image Processing

Abstract

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 possible

Supporting 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

Author Biographies

Jesús Antonio Álvarez-Cedillo, Instituto Politécnico Nacional – UPIICSA, México Av. Te 950, Col. Granjas México, Iztacalco, 08400

PhD. Advance Technology

Section of postgraduate studies and research of the interdisciplinary professional unit of social and administrative sciences of the IPN

Mario Aguilar-Fernández, Instituto Politécnico Nacional – UPIICSA, México Av. Te 950, Col. Granjas México, Iztacalco, 08400

PhD. Industrial Engineering

Section of postgraduate studies and research of the interdisciplinary professional unit of social and administrative sciences of the IPN

Teodoro Álvarez-Sánchez, Instituto Politécnico Nacional – CITEDI Av. Instituto Politécnico Nacional No. 131O, Nueva Tijuana, Tijuana, Baja California, 22435

PhD Informatic Sciences

Section of postgraduate studies and research- IPN

Raúl Junior Sandoval-Gómez, Instituto Politécnico Nacional – UPIICSA, México Av. Te 950, Col. Granjas México, Iztacalco, 08400

PhD Public relations

Section of postgraduate studies and research of the interdisciplinary professional unit of social and administrative sciences of the IPN

References

  1. 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
  2. Ashburner, J., Friston, K. J. (2005). Unified segmentation. NeuroImage, 26 (3), 839–851. doi: https://doi.org/10.1016/j.neuroimage.2005.02.018
  3. 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
  4. 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
  5. 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
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 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
  13. 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
  14. 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).
  15. Sanders, J., Kandrot, E. (2010). CUDA by Example: An Introduction to General-Purpose GPU Programming. NVIDIA Corporation, 311.
  16. 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
  17. 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.
  18. 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
  19. 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
  20. 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
  21. 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
  22. 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
  23. 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
  24. Hermanns, M. (2002). Parallel programming in Fortran 95 using OpenMP. School of Aeronautical Engineering.
  25. Chapman, B., Jost, G., Van Der Pas, R. (2008). Using OpenMP. Cluster Computing.

Downloads

Published

2020-02-29

How to Cite

Álvarez-Cedillo, J. A., Aguilar-Fernández, M., Álvarez-Sánchez, T., & Sandoval-Gómez, R. J. (2020). Implementation of a parallel algorithm of image segmentation based on region growing. Eastern-European Journal of Enterprise Technologies, 1(9 (103), 6–11. https://doi.org/10.15587/1729-4061.2020.197095

Issue

Section

Information and controlling system