如何在verilog HDL中实现拉普拉斯边缘检测

时间:2015-12-09 07:22:18

标签: image-processing verilog video-processing edge-detection vga

我想在verilog HDl中实现laplacian边缘检测。由于它是二阶导数,任何人都可以告诉我以什么方式将它用verilog HDL语言实现到框架中?

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

我使用长移位寄存器作为缓冲区。 在每个时钟像素数据向右移动并且新数据进入。

对于5 * 5掩码,我们可以定义(5 - 1) * rowsize + maskwidth数组寄存器。

然后移位寄存器中的中心数据作为像素(n)可以通过像素数加或减。例如,对于均值过滤器n + 1n - 1n + rowsizen - rowsize。 通常使用x和y的for循环来计算2D掩模,这个公式可能很有用。

buffer[centerpixel + y*rowsize+x]) * mymask[(x+masklim)+(y+masklim)*maskwidth];

这引用每个窗口像素乘以相应的掩模vaule。 maxlim是(maskwidth-1)/ 2,对于5 * 5掩模大小是2。对x和y求和可以求解像素n。

结果可以发送到lcd或保存到ram。