FPGA实现Canny算法(Verilog)

在边缘检测算法里面Sobel是比较简单的一个算法,但是其检测出来的边缘往往是比较粗的,效果不是很好,因为我们最理想的边缘肯定就是一个宽度为1的细线。

Canny算法在此基础上进行了改进,通过使用边缘的梯度信息进行非最大值抑制(NMS)和利用双阈值,这些措施消除了假性边缘,提高了边缘检测的效果。

Canny边缘检测分为以下几个部分:

  • 高斯滤波

  • Sobel边缘检测

  • 非最大值抑制

  • 双阈值边缘检测

  • 弱边缘连接

FPGA在实现的时候也是分为以上几个部分:


FPGA仿真结果图:

原图:

Python得到的结果图:

posted @ 2024-05-09 21:30  FPGA开源工坊  阅读(229)  评论(0)    收藏  举报