我想在verilog HDl中实现拉普拉斯边缘检测。由于它是二阶导数,任何人都可以告诉我我可以通过什么方式用verilog HDL语言将它实现到一个框架中?
问问题
829 次
2 回答
0
有几篇关于它的论文可以帮助您实现它:http : //sciencepublication.org/ijast/documents/proceeding/46.pdf,http ://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber= 5647070&标签=1
于 2015-12-11T10:19:32.853 回答
0
我使用了一个长移位寄存器作为缓冲区。在每个时钟像素数据右移和新数据进入。
对于 5*5 的掩码,我们可以定义一个(5 - 1) * rowsize + maskwidth
数组寄存器。
然后可以将移位寄存器中的中心数据作为像素(n)添加或减去像素数。例如对于均值滤波器n + 1
, n - 1
, n + rowsize
, n - rowsize
. 通常使用 x 和 y 的 for 循环来计算 2D 蒙版,这个公式可能很有用。
buffer[centerpixel + y*rowsize+x]) * mymask[(x+masklim)+(y+masklim)*maskwidth];
这是指每个窗口像素乘以相应的掩码值。maxlim 为 (maskwidth-1)/2,即 2 表示 5*5 的掩码大小。对 x 和 y 求和可以求解像素 n。
结果可以发送到液晶显示器或保存到内存。
于 2018-02-21T02:06:02.887 回答