FPGA Design of a Parallel Canny Edge Detector with Optimized Local Buffers

로컬 버퍼 최적화를 통한 병렬 처리 캐니 경계선 검출기의 FPGA 설계

  • Ingi Min (Department of Electrical Engineering, Sangmyung University) ;
  • Suhyun Sim (Department of System Semiconductor Engineering, Sangmyung University) ;
  • Seungwon Hwang (Department of System Semiconductor Engineering, Sangmyung University) ;
  • Sunhee Kim (Department of System Semiconductor Engineering, Sangmyung University)
  • 민인기 (상명대학교 전자공학과) ;
  • 심수현 (상명대학교 시스템반도체공학과) ;
  • 황승원 (상명대학교 시스템반도체공학과) ;
  • 김선희 (상명대학교 시스템반도체공학과)
  • Received : 2023.11.10
  • Accepted : 2023.12.12
  • Published : 2023.12.31

Abstract

Edge detection in image processing and computer vision is one of the most fundamental operations. Canny edge detection algorithm has excellent performance and is currently widely used. However, it is difficult to process the algorithm in real-time because the algorithm is complex. In this study, the equations required in the algorithm were simplified to facilitate hardware implementation, and the calculation speed was increased by using a parallel structure. In particular, the size and management of local buffers were selected in consideration of parallel processing and filter size so that data could be processed without bottlenecks. It was designed in verilog and implemented in FPGA to verify operation and performance.

Keywords

Acknowledgement

다음의 성과는 과학기술정보통신부와 연구개발특구진흥재단이 지원하는 과학벨트 지원사업으로 수행된 연구결과입니다.

References

  1. Automatic addison, Dec. 18, 2019, How the Canny edge Detector Works, from https://automaticaddison.com/how-the-canny-edge-detector-works/. 
  2. Guo, L., and Wu, S., "FPGA Implementation of a Real-Time Edge Detection System Based on an Improved Canny Algorithm," Appl. Sci., Vol.13, No. 2, 870, 2023. 
  3. Yoon, I., Joung, H., Kim, S., Min, B., and Lee, J., "Edge Detection System for Noisy Video Sequences Using Partial Reconfiguration," Journal of the Korea Academia-Industrial Cooperation Society, Vol. 18, No. 1, The Korea Academia-Industrial Cooperation Society, pp. 21-31. 2017.  https://doi.org/10.5762/KAIS.2017.18.1.21
  4. Canny, J.F., "A computation approach to edge detection," IEEE Trans. Pattern Anal. Mach. Intell., Vol. PAMI-8, pp. 679-698, 1986.  https://doi.org/10.1109/TPAMI.1986.4767851
  5. Shin, S., Shin, K., and Lee, H., "Small Car Identification Using Canny Edge Detection," Proceeding of KIICE, pp. 241- 242, 2020. 
  6. He, W., and Yuan, K., "An Improved Canny Edge Detector and its Realization on FPGA," Proceeding of IEEE 7th WCICA, pp. 6561-6564, 2008. 
  7. Jiang, X. J. and Scott, P. J., "Chapter 9 - Free-form surface filtering using wavelets and multiscale decomposition," Academic Press, 2020, pp.195-246. 
  8. [OpenCV with Android] Edge detection and differentiation of images (Sobel filter, Char filter,), charlezz, Jun. 08, 2021, from https://www.charlezz.com/?p=45153. 
  9. Koo, Y., and Kim, Y., "Edge detection for noisy image," Digital Industry Information Society, Vol.8, No.3, pp. 41-48, 2012. 
  10. NMS, Non-Maximum Suppression, bolero2, Jan.12, 2022 from https://velog.io/@bolero2/DL-Principle-of-NMS. 
  11. Canny edge detection 4. Double - thresholding, Jins, Dec.30, 2015 from https://blog.naver.com/jinsoo91zz/220511467500.
  12. Park, C., and Kim, H., "FPGA Implementation for Real Time Sobel Edge Detector Block Using 3-Line Buffers," Journal of IKEEE, Vol.19, No.1, pp. 10-17, 2015.  https://doi.org/10.7471/ikeee.2015.19.1.010
  13. Hong, S., Lee, J., An, H., Koo, J., and Kim, B., "Improvement of Power Consumption of Canny Edge Detection Using Reduction in Number of Calculations at Sq uare Root," Journal of Korea Institute of Information, Electronics, and Communication Technology, Vol. 13, No. 6, pp. 568-574, 2020.  https://doi.org/10.17661/JKIIECT.2020.13.6.568
  14. Sangeetha, D., and Deepa, P., "FPGA implementation of cost-effective robust Canny edge detection algorithm," J. Real-Time Image Proc. 2019, 16, 957-970.  https://doi.org/10.1007/s11554-016-0582-2
  15. Luo, Y., and Duraiswami, R., "Canny edge detection on NVIDIA CUDA," In Proceedings of the 2008 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshop (CVPRW), Anchorage, AK, USA, June 23-28 2008, pp. 1-8. 
  16. Lourenco, L.H.A., "Efficient implementation of Canny edge detection filter for ITK using CUDA," In Proceedings of the 13th Symposium on Computer Systems, Petropolis, Brazil, Oct. 17-19 2012, pp. 33-40.