是否有 imfilter 的 3D 等价物可用于 MATLAB?我希望将高斯滤波应用于 3D 直方图。我打算自己实现它,方法是创建一个 (3D) 高斯滤波器,然后遍历我的直方图中的每个元素,并对相应的数据条目求和。
但是,如果已经有一些东西,我不想自己以缓慢且低效的方式实现它,或者更聪明的方式来实现它。
最佳答案
为了以高效的方式进行过滤,有两种方法可以解决这个问题:
(1) 使用CONVN三次以使用三个一维高斯、一个 x-by-1-by-1、一个 1-by-y-by-1 和一个 1-by-1-by-z 过滤数据。
(2) 如果你有信号处理工具箱,使用FFTFILT在逆空间中执行过滤(或在文件交换中使用任何一种 fft 卷积算法)。
[(3) 给我发一封电子邮件,我会把我的 fftFilterImage
发给你,它可以进行 3D 高斯滤波。]
关于matlab - MATLAB 中的 3D 高斯滤波器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6330790/