我编写了一个简单的程序(在 ANSI C 中)将两个真正的二维数组与 FFTW 进行卷积(使用 r2c 和 c2r 计划)。一切(除了我对比例的理解)都运行良好,输出看起来也不错。
问题是我对如何缩放两个数组有点困惑,所以在处理之后IDFT[DFT(A)DFT(B)]
(DFT
:离散傅里叶变换。I
:逆。)最终结果的比例是正确的。假设图像 A 是宽度a
像素的正方形,卷积核是b
像素。然后我创建两个宽度的填充方形数组,p=a+b
并将我的A
和B
图像都放入其中并进行卷积。
将最终输出中的所有像素乘以1/p^2
正确吗?提前致谢。