如何通过FFT计算卷积和相关性的组合?

时间:2019-04-20 09:28:59

标签: fft correlation convolution

我正在尝试实现一种算法,以有效地计算卷积和相关性的组合,例如:

c(x,y)=(sum of i, (sum of j, a(x-i,y+j)*b(i,j)))

我知道一维卷积或相关性可以通过以下方式解决

a conv b = ifft(fft(a).*fft(b))
a corr b = ifft(fft(a).*conjg(fft(b)))

但是我不知道在二维或二维问题中将它们组合在一起的想法。我认为它类似于二维卷积,但是我不知道具体的推论过程。

1 个答案:

答案 0 :(得分:0)

可以通过反转其中一个参数来根据卷积来写相关性:

corr(x(t),y(t)) = conv(x(t),y(-t))

因此,如果您希望x轴的行为像卷积,而y轴的行为像相关,则仅反转y轴并计算卷积。使用空间或频域实现都没关系。