conv across dimensions matlab



我有一个3D体积,我想在第一维度上应用高斯滤波器(带conv)。这意味着我希望每一列都独立地与过滤器进行卷积。我需要类似的东西:

result = conv(cube, Gfilter, 1 ,'same')

我尝试的是用零填充多维数据集的列(到过滤器宽度的大小),然后使用:

conv(cube(:), Gfilter)

但是这太耗费内存/时间了!

谢谢Matlabit

对于一维之间的卷积,您仍然可以使用convn。这里我假设Gfilter是一个k-by-1的数组。

result = convn(cube,Gfilter,'same');

最新更新