Skip to main content
Log in

FPGA implementation of cost-effective robust Canny edge detection algorithm

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

Abstract

Implementation of Canny edge detection algorithm significantly outperforms the existing edge detection techniques in many computer vision algorithms. However, Canny edge detection algorithm is complex, time-consuming process with high hardware cost. To overcome these issues, a novel Canny edge detection algorithm is proposed in block level to detect edges without any loss. It uses sobel operator, approximation methods to compute gradient magnitude and orientation for replacing complex operations with reduced hardware cost, existing non-maximum suppression, block classification for adaptive thresholding and existing hysteresis thresholding. Pipelining is introduced to reduce latency. The proposed algorithm is implemented on Xilinx Virtex-5 FPGA and it provides better performance compared to frame-level Canny edge detection algorithm. The synthesized architecture reduces execution time by 6.8 % and utilizes less resource to detect edges of 512 × 512 image compared to existing distributed Canny edge detection algorithm.

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.

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
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25

Similar content being viewed by others

References

  1. Zhang, G.J.: Machine vision. Science Press, Beijing (2007)

    Google Scholar 

  2. Rosario, A., Iluminada, B.: A hardware solution for real-time intelligent fingerprint acquisition. J. Real-Time Image Proc. 9(1), 95–109 (2014)

    Article  Google Scholar 

  3. Argyle, E.: Techniques for edge detection. Proc. IEEE 59, 285–286 (1971)

    Article  Google Scholar 

  4. Roberts, L.G.: Machine perception of 3D solids. Optical and electro-optical information processing. MIT Press, Cambridge (1965)

    Google Scholar 

  5. Gonzalez, R.C., Woods, R.E.: Digital image processing. Pearson Education Inc, Prentice Hall (2008)

    Google Scholar 

  6. Kanopouls, N., Vasanthavada, N., Baker, R.L.: Design of an image edge detection filter using the sobel operator. IEEE J. Solid-State Circuits 23(2), 358–367 (1988)

    Article  Google Scholar 

  7. Davies, E.R.: Constraints on the design of template masks for edge detection. Pattern Recognit. Lett. 4, 111–120 (1986)

    Article  Google Scholar 

  8. Canny, J.F.: A computational approach to edge detection. IEEE Trans. Pattern Anal. Mach Intell 8(6), 679–698 (1986)

    Article  Google Scholar 

  9. Demigny, D., Kamle, T.: A discrete expression of Canny's criteria for step edge detector performances evaluation. IEEE Trans. Pattern Anal. Mach Intell. 19, 1199–1211 (1997)

  10. Dang, Philip: VLSI architecture for real-time image and video processing systems. J. Real-Time Image Proc. 1(1), 57–62 (2006)

    Article  MathSciNet  Google Scholar 

  11. Rao, D.V., Venkatesan, M.: An efficient reconfigurable architecture and implementation of edge detection algorithm using HANDLE-C. IEEE Conf. Inf. Technol. Coding Comput. (ITCC) 2, 843–847 (2004)

    Google Scholar 

  12. Neoh, H., Hazanchuck, A.: Adaptive edge detection for real-time video processing using FPGAs. Application notes. Altera Corporation, California (2005)

    Google Scholar 

  13. Gentsos, C., Sotiropoulou, C., Nikolaidis, S., Vassiliadis, N.: Real-time Canny edge detection parallel implementation for FPGAs. IEEE Int. Conf. Electron. Circuits Systems (ICECS), 499–502, (2010)

  14. He, W., Yuan, K.: An Improved Canny Edge Detector and Its Realization on FPGA. In: IEEE Proceedings of the 7th World Congress on Intelligent Control and Automation (WCICA), pp 6561 –6564, (2008)

  15. Li, X., Jiang, J., Qiaoyun, F.: An improved real-time hardware architecture for Canny edge detection based on FPGA. in Third international conference on Intelligent Control and Information Processing, 0, pp 445–449, (2012)

  16. Qian, Xu: Varadarajan, Srenivas, Chakrabarti, Chaitali: a distributed Canny edge detector: algorithm and FPGA implementation. IEEE Trans. Image Process. 23(7), 2944–2960 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  17. Jiang, J., Liu, C., Ling, S.: An FPGA implementation for real time edge detection. (2015). doi:10.1007/s11554-015-0521-7

  18. Deriche, R.: Using Canny Criteria to derive a recursively implemented optimal Edge detector. In: International Journal of Computer Vision, pp 167–187 (1987)

  19. Torres, L., Robert, M., Bourennane, E., Paindavoine, M.: Implementation of a Recursive Real Time Edge Detector Using Retiming Technique. In: Proceedings of the Asia and South Pacific IFIP International Conference on Very Large Scale Integration, pp 811–816 (1995)

  20. Lorea, F.G., Kessal, L., Demigny, D.: Efficient ASIC and FPGA implementation of IIR filters for Real Time Edge Detection. IEEE International Conference on Image Processing (ICIP-97), vol. 2, pp 406–409 (1997)

  21. Park, I.K., Singhal, N., Lee, M.H., Cho, S., Kim, C.W.: Design and performance evaluation of image processing algorithms on GPUs. In: IEEE Transactions on parallel and distributed systems, vol. 22(1), (2011)

  22. Owens, J.D., Luebke, D., Govindaraju, N., Harris, M., Kruger, J., Lefohn, A.E., Purcell, T.J.: A survey of general-purpose computation on graphics hardware. Comput Graph Forum 26(1), 80–113 (2007)

    Article  Google Scholar 

  23. Luo, Y., Duraiswami, R.: Canny edge detection on nvidia cuda. Computer Vision and Pattern Recognition Workshop. pp 1–8 (2008)

  24. Palomar, R., Palomares, J.M., Castillo, J.M., Olivares, J., G´omez-Luna, J.: Parallelizing and optimizing lip-Canny using nvidia cuda. Ser. IEA/AIE’10, pp 389–398. Springer, Berlin (2010)

  25. Lourenco, L.H.A.: Efficient implementation of Canny edge detection filter for ITK using CUDA. In: 13th Symposium on computer systems, pp 33–40, (2012)

  26. Khalvati, F., Mark, D.A., Hamid, R.T.: Window memoization: towards high-performance image processing software. J. Real-Time Image Proc. 10(1), 5–25 (2015)

    Article  Google Scholar 

  27. Gajski, D.D.: Principles of digital design. Prentice-Hall, Upper Saddle River (1997)

    Google Scholar 

  28. Ngo, H.T., Asari, V.K.: A pipelined architecture for real-time correction of barrel distortion in wide-angle camera images. IEEE Trans. Circuits Syst. Video Technol. 15(3), 436–444 (2005)

    Article  Google Scholar 

  29. Bruguera, J.D., Guil, N., Lang, T., Villalba, J., Zapata, E.L.: CORDIC based parallel/pipelined architecture for the Hough transform. J. VLSI Signal Process. 12(3), 207–221 (2001)

    Article  Google Scholar 

  30. Arbelaez, P., Fowlkes, C., Martin, D.: The Berkeley segmentation dataset and benchmark. Online at http://www.eecs.berkeley.edu/Research/Projects/CS/vision/bsds. Accessed 15 Apr 2015

  31. USC SIPI Image Database. http://sipi.usc.edu/database/database.php?volume=misc. Accessed 24 May 2015

  32. Standard Test Image Database. Online at http://www.imageprocessingplace.com/. Accessed 24 May 2015

  33. Xin, T., Shiming, L., Bin, W., Maojum, Z., Zhihui, X.: A simple gray-edge automatic white balance method with FPGA implementation. J. Real-Time Image Proc. 10(2), 207–217 (2015)

    Article  Google Scholar 

Download references

Acknowledgments

The authors are grateful for the financial support provided by Government College of Technology, Coimbatore, Tamil Nadu, India under TEQIP II Scheme.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to D. Sangeetha.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Sangeetha, D., Deepa, P. FPGA implementation of cost-effective robust Canny edge detection algorithm. J Real-Time Image Proc 16, 957–970 (2019). https://doi.org/10.1007/s11554-016-0582-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11554-016-0582-2

Keywords

Navigation