|
楼主 |
发表于 2022-11-13 19:47:16
|
显示全部楼层
本帖最后由 innovation 于 2022-12-13 14:50 编辑
如果我们需要对4k(3840 * 2160)分辨率,60Hz帧率的图像的灰度数据进行中值滤波,怎么预算中值滤波的结构?
全并行的结构,资源消耗:(3840 * 2160) * (188*LUTs + 104FFs),很显然不可能的了!
60Hz的帧率,帧周期16.667ms,给中值滤波分配10ms的预算,设计的系统时钟按100MHz预算,那么,中值滤波允许的流水线串行深度:10ms/10ns = 1,000,000 clk,4k分辨率的图像,1帧数据共(3840 * 2160 = 8,294,400)个数据点,即8个并行的中值滤波模块,以100MHz的时钟运行,可以10.4ms以内完成1帧4k分辨率的灰度图像数据的中值滤波。8个并行的中值滤波模块共计消耗的FPGA逻辑资源:8 * (188*LUTs + 104FFs) = 1504*LUTs + 932*FFs。
看来,对图像数据进行中值滤波处理,中值滤波算法本身无论是资源消耗还是运行时钟的要求,对大多数Xilinx FPGA而言,都不应成为设计的瓶颈!
PS:要完成中值滤波,原3840*2160的矩阵数据如何按照中值滤波的要求,以3*3邻域矩阵的结构,并以串行数据流的形式送入中值滤波模块,以及中值滤波后的数据再以串行数据流的方式按照原图像行、列数据结构写回数据缓存单元,必然是整个中值滤波设计的另一重点,没有研究,此处无法评估。
|
|