是否有可用于 MATLAB 的 imfilter 的 3D 等效项?我希望将高斯滤波应用于 3D 直方图。我将自己创建一个(3D)高斯滤波器,然后循环遍历直方图中的每个元素,然后对相应的数据项求和,以实现该功能。

但是,如果已经有了一些东西,或者更聪明的方法,我不想自己以缓慢和低效的方式实现它。

最佳答案

有两种方法可以解决这个问题,以便以有效的方式进行过滤:

(1) 使用 CONVN 3 次,用三个 1D Gaussians 过滤数据,一个是 x-by-1-by-1,一个是 1-by-y-by-1,一个是 1-by-1-by-z。

(2)如果你有信号处理工具箱,使用FFTFILT进行逆空间滤波(或者使用文件交换上的任何一种fft-convolution算法)。

[(3) 给我发一封电子邮件,我会把我的 fftFilterImage 发给你,它进行 3D 高斯滤波。]

关于matlab - MATLAB 中的 3D 高斯滤波器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6330790/

10-12 04:20
查看更多