Skip to main content
Log in

GPU implementation of linear morphological openings with arbitrary angle

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

Abstract

Linear morphological openings and closings are important non-linear operators from mathematical morphology. In practical applications, many different orientations of digital line segments must typically be considered. In this paper, we (1) review efficient sequential as well as parallel algorithms for the computation of linear openings and closings; (2) compare the performance of CPU implementations of four state-of-the-art algorithms; (3) describe GPU implementations of two recent efficient algorithms allowing arbitrary orientation of the line segments; (4) propose, as the main contribution, an efficient and optimized GPU implementation of linear openings; and (5) compare the performance of all implementations on real images from various applications. From our experimental results, it turned out that the proposed GPU implementation is suitable for applications with large, industrial images, running under severe timing constraints.

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

Access this article

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

Instant access to the full article PDF.

Institutional subscriptions

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

Similar content being viewed by others

Notes

  1. General-purpose computing on graphics processing units.

  2. Available in Fulguro image processing library [32].

References

  1. Serra, J.: Morphological filtering: an overview. Signal Process. 38, 3–11 (1994)

    Article  MATH  Google Scholar 

  2. Vincent, L.: Fast opening functions and morphological granulometries. In: SPIE, vol 2300, pp. 253–267 (1994)

    Google Scholar 

  3. Batman, S., Dougherty, E.R., Sand, F.: Heterogeneous morphological granulometries. Pattern Recognit. 33(6), 1047–1057 (2000). doi:10.1016/S0031-3203(99)00164-8

    Article  Google Scholar 

  4. Vincent, L.: Granulometries and opening trees. Fundam. Inf. 41(1–2), 57–90 (2000)

    MATH  MathSciNet  Google Scholar 

  5. Urbach, E.R., Roerdink, J.B.T.M., Wilkinson, M.H.F.: Connected rotation-invariant size-shape granulometries. In: International Conference on Pattern Recognition, vol. 1, pp. 688–691 (2004)

  6. Serra, J., Vincent, L.: An overview of morphological filtering. Circuits Syst. Signal Process. 11, 47 –108 (1992)

    Google Scholar 

  7. Heijmans, H.: A new class of alternating sequential filters. In: Proceedings of 1995 IEEE Workshop on Nonlinear Signal and Image Processing, pp. 30–33 (1995)

  8. Theera-Umpon, N., Gader, P.D.: Counting white blood cells using morphological granulometries. J. Electron. Imaging 9(2), 170–177 (2000)

    Google Scholar 

  9. Bagdanov, A., Worring, M.: Granulometric analysis of document images. In: Proceedings of the International Conference on Pattern Recognition, vol. I, pp. 478–481 (2003)

  10. Outal, S., Jeulin, D., Schleifer, J.: A new method for estimating the 3D size-distribution curve of fragmented rocks out of 2D images. Image Anal. Stereol. 27(2) (2011)

  11. Talukdar, D., Acharya, R.: Estimation of fractal dimension using alternating sequential filters. In: Proceedings of the 1995 International Conference on Image Processing, vol. 1, ICIP ’95, IEEE Computer Society, Washington, DC, USA (1995)

  12. Sigurjonsson, S.O., Benediktsson, J.A., Sveinsson, J.R.: Street tracking based on SAR data from urban areas. In: International Geoscience and Remote Sensing Symposium, pp. 1273–1276 (2005)

  13. Kowalczyk, M., Koza, P., Kupidura, P., Marciniak, J.: Application of mathematical morphology operations for simplification and improvement of correlation of images in close-range photogrammetry. In: ISPRS08 (2008)

  14. Morard, V., Dokládal, P., Decencière, E.: Linear openings in arbitrary orientation in O(1) per pixel. In: Proceedings of the IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), pp. 1457–1460, May (2011)

  15. Bartovský, J., Dokládal, P., Dokládalová, E., Bilodeau, M.: Fast streaming algorithm for 1-D morphological opening and closing on 2-D support. In: Soille, P., Pesaresi, M., Ouzounis, G.K. (eds) ISMM 2011, vol. 6671. LNCS, Springer, pp. 296–305. July (2011)

  16. nVidia Corporation: NVIDIA GPU Computing Developer Home Page. http://developer.nvidia.com/category/zone/cuda-zone, Jun (2011)

  17. Khronos Group: OpenCL. http://www.khronos.org/opencl/ (2011).

  18. Obara, B.: Identification of transcrystalline microcracks observed in microscope images of a dolomite structure using image analysis methods based on linear structuring element processing. Comput. Geosci. 33, 151–158 (2007)

    Google Scholar 

  19. Zana, F., Klein, J.-C.: Segmentation of vessel-like patterns using mathematical morphology and curvature evaluation. IEEE Trans. Image Process. 10, 1010–1019 (2001)

    Article  MATH  Google Scholar 

  20. Willow Garage: OpenCV_GPU. http://opencv.willowgarage.com/wiki/OpenCV_GPU, Oct (2011)

  21. Soille, P.: Morphological image analysis: principles and applications. Springer, New York (2003)

    Google Scholar 

  22. Pecht, J.: Speeding-up successive minkowski operations with bit-plane computers. Pattern Recognit. Lett. 3(2), 113–117 (1985)

    Article  MATH  Google Scholar 

  23. Coltuc, D., Pitas, I.: On fast running max-min filtering. IEEE Trans. Circuits Syst. II: Analog Digit. Signal Process. 44(8), 660–663 (1997)

    Google Scholar 

  24. van Herk, M.: A fast algorithm for local minimum and maximum filters on rectangular and octagonal kernels. Pattern Recognit. Lett. 13(7), 517–521 (1992)

    Article  Google Scholar 

  25. Gil, J., Werman, M.: Computing 2-D min, median, and max filters. IEEE Trans. Pattern Anal. Mach. Intell. 15(5), 504–507 (1993)

    Article  Google Scholar 

  26. Soille, P., Breen, E.J., Jones, R.: Recursive implementation of erosions and dilations along discrete lines at arbitrary angles. IEEE Trans. Pattern Anal. Mach. Intell. 18(5), 562–567 (1996)

    Article  Google Scholar 

  27. Clienti, C., Bilodeau, M., Beucher, S.: An efficient hardware architecture without line memories for morphological image processing. In: Proceedings of the 10th International Conference on Advanced Concepts for Intelligent Vision Systems, ACIVS ’08, pp. 147–156. Springer, Berlin (2008). http://dx.doi.org/10.1007/978-3-540-88458-3_14

  28. Van Droogenbroeck, M., Buckley, M.J.: Morphological erosions and openings: fast algorithms based on anchors. J. Math. Imaging Vis. 22(2), 121–142 (2005)

    Article  MathSciNet  Google Scholar 

  29. Garrido, L., Salembier, P., Garcia, D.: Extensive operators in partition lattices for image sequence analysis. In: Signal Processing, pp. 157–180 (1998)

  30. Matas, P., Dokládalová, E., Akil, M., Grandpierre, T., Najman, L., Poupa, M., Georgiev, V.: Parallel algorithm for concurrent computation of connected component tree. In: Advanced Concepts for Intelligent Vision Systems, pp. 230–241. Springer (2008)

  31. Brambor, J.: Algorithmes de la Morphologie Mathéatique pour les architectures orietées flux. PhD thesis, École des Mines de Paris (2006)

  32. Clienti, Ch.: Fulguro image processing library. http://sourceforge.net/projects/fulguro/ (2011)

  33. Domanski, L., Vallotton, P., Wang, D.: Parallel van Herk/Gil-Werman image morphology on GPUs using CUDA. GTC 2009 Conference posters (2009). http://www.nvidia.com/content/GTC/posters/14_Domanski_Parallel_vanHerk.pdf

  34. Dokládal, P., Dokládalová, E.: Computationally efficient, one-pass algorithm for morphological filters. J. Vis. Commun. Image Represent. 22, 411–420 (2011)

    Article  Google Scholar 

  35. Wilkinson, M.H.F., Gao, H., Hesselink, W.H., Jonker, J.-E., Meijster, A.: Concurrent computation of attribute filters on shared memory parallel machines. IEEE Trans. Pattern Anal. Mach. Intell. 30, 1800–1813 (2008)

    Article  Google Scholar 

  36. Menotti-Gomes, D., Najman, L., de Albuquerque Araújo, A.: 1D Component tree in linear time and space and its application to gray-level image multithresholding. In: International Symposium on Mathematical Morphology’07, vol. 1, pp. 437–448. INPE (2007)

  37. nVidia Corporation. CUDA Toolkit Reference Manual. Aug (2010). http://developer.download.nvidia.com/compute/cuda/3_2_prod/toolkit/docs/CUDA_Toolkit_Reference_Manual.pdf

  38. Kong, J., Dimitrov, M., Yang, Y., Liyanage, J., Cao, L., Staples, J., Mantor, M., Zhou, H.: Accelerating MATLAB image processing toolbox functions on GPUs. In: GPGPU ’10: Proceedings of the 3rd Workshop on General-Purpose Computation on Graphics Processing Units, pp. 75–85. ACM, New York (2010)

  39. nVidia Corporation. FERMI Tuning Guide. http://developer.download.nvidia.com/compute/cuda/3_2_prod/toolkit/docs/Fermi_Tuning_Guide.pdf, Aug (2010)

  40. AMD Corporation: OpenCL Course: Introduction to OpenCL Programming. http://developer.amd.com/zones/OpenCLZone/courses/pages/Introduction-OpenCL-Programming-May-2010.aspx, May (2010)

  41. nVidia Corporation. NVIDIA Parallel Nsight. http://developer.nvidia.com/nvidia-parallel-nsight (2011)

  42. Nickolls, J., Dally, W.J.: The GPU computing era. IEEE Micro 30, 56–69 (2010)

    Article  Google Scholar 

  43. nVidia Corporation. CUDA SDK Code Samples. http://developer.nvidia.com/cuda-toolkit-32-downloads, Aug (2010)

  44. nVidia Corporation: NVIDIA Performance Primitives (NPP) Library User Guide. http://developer.download.nvidia.com/compute/DevZone/docs/html/CUDALibraries/doc/NPP_Library.pdf, Feb (2011)

  45. nVidia Corporation: CUDA C Programming Guide. http://developer.download.nvidia.com/compute/cuda/3_2_prod/toolkit/docs/CUDA_C_Programming_Guide.pdf, Sep (2010)

  46. Randen, T.: Brodatz Textures. http://www.ux.uis.no/tranden/brodatz.html

  47. Karas, P., Bartovsky, J.: CUDA-based linear openings. http://sourceforge.net/p/linearopenings/, Jan (2012)

Download references

Acknowledgments

This work has been done during ERASMUS stage of Pavel Karas at ESIEE Paris. The presented work is the result of collaboration between ESIEE Paris (A3SI team), Mines-ParisTech (CMM) and Masaryk University in Brno (CBIA). This stay period of Pavel Karas at ESIEE Paris has been also supported by the Ministry of Education, Youth and Sport of the Czech Republic (Projects No. MSM-0021622419 and No. LC535). This research was also supported by the Grant Agency of the Czech Republic (Grant No. P302/12/G157).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pavel Karas.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Karas, P., Morard, V., Bartovský, J. et al. GPU implementation of linear morphological openings with arbitrary angle. J Real-Time Image Proc 10, 27–41 (2015). https://doi.org/10.1007/s11554-012-0248-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11554-012-0248-7

Keywords

Navigation