Skip to main content
Log in

Hardware Implementation of Skeletonization Algorithm for Parallel Asynchronous Image Processing

  • Published:
Journal of Signal Processing Systems Aims and scope Submit manuscript

Abstract

This paper presents an FPGA realisation of an application-specific cellular processor array designed for asynchronous skeletonization of binary images. The skeletonization algorithm is based on iterative thinning utilizing a ‘grassfire’ transformation approach. The purpose of this work was to test the performance of a fully parallel asynchronous processor array and to evaluate the inhomogeneity of wave propagation velocity. A proof-of-concept design has been implemented and evaluated, the results are presented and discussed.

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.

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17

Similar content being viewed by others

References

  1. Ju Jia, Z., & Hong, Y. (2001). Skeletonization of ribbon-like shapes based on regularity and singularity analyses. IEEE Transactions on Systems, Man and Cybernetics, Part B (Cybernetics), 31(3), 401–407.

    Article  Google Scholar 

  2. Lam, L., Lee, S. W., & Suen, C. Y. (1992). Thinning methodologies—A comprehensive survey. IEEE Transactions on Pattern Analysis and Machine Intelligence, 14(9), 869–885.

    Article  Google Scholar 

  3. Xia, Y. (1989). Skeletonization via the realization of the fire front’s propagation and extinction in digital binary shapes. IEEE Transactions on Pattern Analysis and Machine Intelligence, 11(10), 1076–1086.

    Article  Google Scholar 

  4. Arcelli, C., & Sanniti di Baja, G. (1993). Euclidean skeleton via centre-of-maximal-disc extraction. Image and Vision Computing, 11(3), 163–173.

    Article  Google Scholar 

  5. Chehadeh, Y., Coquin, D., & Bolon, P. (1996). A skeletonization algorithm using chamfer distance transformation adapted to rectangular grids pp. 131–135. Vienna: IEEE Comput. Soc. Press.

    Google Scholar 

  6. Vincent, L. (1991). Exact Euclidean distance function by chain propagations pp. 520–525. Maui: IEEE Comput. Soc. Press.

    Google Scholar 

  7. Wai-Pak, C., Kin-Man, L., & Wan-Chi, S. (2000). An efficient and accurate algorithm for extracting a skeleton pp. 742–745. Barcelona: IEEE Comput. Soc.

    Google Scholar 

  8. Andrews, D., Kancler, C., & Wealand, B. (1996). An embedded real-time SIMD processor array for image processing pp. 131–134. Honolulu: IEEE Comput. Soc. Press.

    Google Scholar 

  9. Eklund, J.-E., Svensson, C., & Astrom, A. (1996). VLSI implementation of a focal plane image processor - a realization of the near-sensor image processing concept. IEEE Transaction on VLSI Systems, 4(3), 322–335.

    Article  Google Scholar 

  10. Kleihorst, R. P., Abbo, A. A., van der Avoird, A., Op de Beeck, M. J. R., Sevat, L., Wielage, P., et al. (2001). Xetal: a low-power high-performance smart camera processor. in ISCAS2001 pp. 215–218. Sydney: IEEE.

    Google Scholar 

  11. Kyo, S., Koga, T., Okazaki, S., & Kuroda, I. (2003). A 51.2-GOPS scalable video recognition processor for intelligent cruise control based on a linear array of 128 four-way VLIW processing elements. IEEE Journal of Solid-State Circuits, 38(11), 1992–2000.

    Article  Google Scholar 

  12. Linan, G. C., Rodriguez-Vazquez, A., Galan, R. C., Jimenez-Garrido, F., Espejo, S., & Dominguez-Castro, R. (2004). A 1000 FPS at 128 × 128 vision processor with 8-bit digitized I/O. IEEE Journal of Solid-State Circuits, 2003 European Solid State Circuits Conference (ESSCIRC), 39(7), 1044–1055.

    Google Scholar 

  13. Lindgren, L., Melander, J., Johansson, R., & Moller, B. (2005). A multiresolution 100-GOPS 4-Gpixels/s programmable smart vision sensor for multisense imaging. IEEE Journal of Solid-State Circuits, 40(6), 1350–1359.

    Article  Google Scholar 

  14. Dudek, P., & Hicks, P. J. (2005). A general-purpose processor-per-pixel analogue SIMD vision chip. IEEE Transactions on Circuits and Systems I: Fundamental Theory and Applications, 52(1), 13–20.

    Article  Google Scholar 

  15. Komuro, T., Kagami, S., & Ishikawa, M. (2004). A dynamically reconfigurable SIMD processor for a vision chip. IEEE Journal of Solid-State Circuits, 39(1), 265–268.

    Article  Google Scholar 

  16. Dudek, P. (2006). An asynchronous cellular logic network for trigger-wave image processing on fine-grain massively parallel arrays. IEEE Transactions on Circuits and Systems II: Analog and Digital Signal Processing, 53(5), 354–358.

    Article  MathSciNet  Google Scholar 

  17. Roska, T., & Chua, L. O. (1993). CNN universal machine. An analogic array computer. IEEE Transactions on Circuits and Systems II: Analog and Digital Signal Processing, 40(3), 163–173.

    Article  MATH  MathSciNet  Google Scholar 

  18. Lopich, A., & Dudek, P. (2005). Architecture of asynchronous cellular processor array for image skeletonization. in ECCTD05 pp. 81–84. Cork: IEEE.

    Google Scholar 

  19. Rosenfeld, A., & Pfaltz, J. L. (1968). Distance functions on digital pictures. Pattern Recognition, 1, 33–61.

    Article  MathSciNet  Google Scholar 

  20. Borgefors, G., & Sanniti di Baja, G. (1988). Skeletonizing the distance transform on the hexagonal grid pp. 504–507. Rome: IEEE Comput. Soc. Press.

    Google Scholar 

  21. Shih, F. Y., & Pu, C. C. (1990). Medial axis transformation with single-pixel and connectivity preservation using Euclidean distance computation pp. 723–725. Piscataway: IEEE.

    Google Scholar 

  22. Do Hyun, C., & Sapiro, G. (2000). Segmentation-free skeletonization of gray-scale images via PDEs pp. 927–930. Vancouver: IEEE.

    Google Scholar 

  23. Verwer, B. J. H. (1988). Improved metrics in image processing applied to the Hilditch skeleton pp. 137–142. Rome: IEEE Comput. Soc. Press.

    Google Scholar 

  24. Kalmar, Z., Marczell, Z., Szepesvari, C., & Lorincz, A. (1999). Parallel and robust skeletonization built on self-organizing elements. Neural Networks, 12(1), 163–173.

    Article  Google Scholar 

  25. Rekeczky, C., & Chua, L. O. (1999). Computing with front propagation: Active contour and skeleton models in continuous-time CNN. Journal of VLSI Signal Processing Systems for Signal, Image, and Video Technology, 23(2–3), 373–402.

    Google Scholar 

  26. Serra, J. (1982). Image analysis and mathematical morphology. London: Academic.

    MATH  Google Scholar 

  27. Beucher, S. (1994). Digital skeletons in Euclidean and geodesic spaces. Signal Processing, 38(1), 127–141.

    Article  MATH  Google Scholar 

  28. Bourbakis, N., Steffensen, N., & Saha, B. (1997). Design of an array processor for parallel skeletonization of images. IEEE Transactions on Circuits and Systems II: Analog and Digital Signal Processing, 44(4), 284–298.

    Article  Google Scholar 

  29. Sudha, N. (2003). Design of a cellular architecture for fast computation of the skeleton. Journal of VLSI Signal Processing Systems for Signal, Image, and Video Technology, 35(1), 61–73.

    Article  MATH  Google Scholar 

  30. Tzionas, P., Tsalides, P., & Thanailakis, A. (1995). A parallel skeletonization algorithm based on two-dimensional cellular automata and its VLSI implementation. Real-Time Imaging, 1(2), 105–117.

    Article  Google Scholar 

  31. Bourbakis, N. G. (1989). A parallel-symmetric thinning algorithm. Pattern Recognition, 22(4), 387–396.

    Article  Google Scholar 

  32. Favre, A., & Keller, H. (1983). Parallel syntactic thinning by recording of binary pictures. Computer Vision, Graphics, and Image Processing, 23(1), 99–112.

    Article  Google Scholar 

  33. Holt, C. M., Stewart, A., Clint, M., & Perrott, R. H. (1987). An improved parallel thinning algorithm. Communications of the ACM, 30(2), 156–160.

    Article  Google Scholar 

  34. Suzuki, S., & Abe, K. (1987). Binary picture thinning by an iterative parallel two-subcycle operation. Pattern Recognition, 20(3), 297–307.

    Article  Google Scholar 

  35. Bel-Lan, A., & Montoto, L. (1981). A thinning transform for digital images. Signal Processing, 3(1), 37–47.

    Article  Google Scholar 

  36. Rosenfeld, A., & Davis, L. S. (1976). A note on thinning. IEEE Transactions on Systems, Man and Cybernetics, SMC-6(3), 226–228.

    Google Scholar 

  37. Stefanelli, R., & Rosenfeld, A. (1971). Some parallel thinning algorithms for digital pictures. Journal of the Association for Computing Machinery, 18(2), 255–264.

    MATH  Google Scholar 

  38. Yung-Sheng, C., & Wen-Hsing, H. (1988). A modified fast parallel algorithm for thinning digital patterns. Pattern Recognition Letters, 7(2), 99–106.

    Article  Google Scholar 

  39. Zhang, T. Y., & Suen, C. Y. (1984). A fast parallel algorithm for thinning digital patterns. Communications of the ACM, 27(3), 236–239.

    Article  Google Scholar 

  40. Hilditch, C. J. (1969). Linear skeletons from square cupboards. Machine Intelligence, 4, 403–420.

    Google Scholar 

  41. Hauck, S. (1995). Asynchronous design methodologies: An overview. Proceedings of the IEEE, 83(1), 69–93.

    Article  MathSciNet  Google Scholar 

  42. David, I., Ginosar, R., & Yoeli, M. (1992). An efficient implementation of Boolean functions as self-timed circuits. IEEE Transactions on Computers, 41(1), 2–11.

    Article  Google Scholar 

  43. Furber, S. B., Day, P., Garside, J. D., Paver, N. C., & Woods, J. V. (1994). A micropipelined ARM [microprocessor] (pp. 211–220). Grenoble, France.

  44. Jacobs, G. M., & Brodersen, R. W. (1988). Self-timed integrated circuits for digital signal processing applications pp. 197–208. Monterey: IEEE Press.

    Google Scholar 

  45. Poole, N. R. (1994). Self-timed logic circuits. Electronics & Communication Engineering Journal, 6(6), 261–270.

    Article  Google Scholar 

  46. Peeters, A., & van Berkel, K. (1995). Single-rail handshake circuits. In Proceedings Second Working Conference on Asynchronous Design Methodologies, 30–31 May 1995 pp. 53–62. London: IEEE Comput. Soc. Press.

    Book  Google Scholar 

  47. Dean, M. E., Dill, D. L., & Horowitz, M. (1991). Self-timed logic using current-sensing completion detection (CSCD). In IEEE International Conference on Computer Design: VLSI in Computers and Processors (Cat. No.91CH3040-3), 14–16 Oct. 1991 pp. 187–191. Cambridge: IEEE Comput. Soc. Press..

    Google Scholar 

  48. Nehaniv, C. L. (2002). Self-reproduction in asynchronous cellular automata. in NASA/DoD Conference (pp. 201–209).

  49. Dudek, P., Szczepanski, S., & Hatfield, J. V. (2000). A high-resolution CMOS time-to-digital converter utilizing a Vernier delay line. IEEE Journal of Solid-State Circuits, 35(2), 240–247.

    Article  Google Scholar 

  50. Ranganathan, N., & Doreswamy, K. B. (1995). A VLSI chip for computing the medial axis transform of an image. In Proceedings of Conference on Computer Architectures for Machine Perception, 18–20 September pp. 36–43. Como: IEEE Comput. Soc. Press.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alexey Lopich.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Lopich, A., Dudek, P. Hardware Implementation of Skeletonization Algorithm for Parallel Asynchronous Image Processing. J Sign Process Syst Sign Image Video Technol 56, 91–103 (2009). https://doi.org/10.1007/s11265-008-0283-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-008-0283-6

Keywords

Navigation