使用OpenCL

时间:2016-07-26 12:08:56

标签: filter opencl median quantile

在算法中,我们在UInt16图像上使用具有257x257大窗口的中值滤波器。我的任务是在GPU上使用OpenCL实现该算法。

事实上,我不仅需要中位数,还需要0.001,0.02和0.999分位数。

显而易见的方法是在每个输出像素上运行一个OpenCL内核,其中内核将窗口中的所有像素从输入图像加载到本地内存,然后对这些值进行排序,最后计算分位数。

现在问题是窗口大小为257x257,这种方法需要至少132098字节的本地内存。但是本地记忆非常有限。我的Quadro K4000只有49152个字节。

那么在GPU上实现这样的中值滤波器会有什么好方法呢?

CUDA的解决方案也是可以接受的。但我猜基本问题是一样的。

0 个答案:

没有答案