Где центрировать ядро при использовании FFTW для свертки изображений?

Я пытаюсь использовать FFTW для свертки изображения.

Сначала, чтобы проверить, работает ли система должным образом, я выполнил fft, затем обратный fft, и мог получить точно такое же изображение.

Затем, сделав небольшой шаг вперед, я использовал тождественное ядро (т.е. kernel [0] [0] = 1, тогда как все остальные компоненты равны 0). Я взял компонентное произведение между изображением и ядром (оба в частотной области), затем сделал обратное FFT. Теоретически я должен быть в состоянии получить идентичное изображение обратно. Но результат, который я получил, очень даже не похож на исходное изображение. Я подозреваю, что это как-то связано с тем, где я центрирую свое ядро перед тем, как переместить его в частотную область (поскольку я помещаю «1» в kernel [0] [0], это в основном означает, что я центрировал положительную часть в верхний левый). Может ли кто-нибудь просветить меня о том, что здесь идет не так?

Ответы на вопрос(2)

Ваш ответ на вопрос