Я работаю над приложением для обработки изображений, которое использует дискретное преобразование Фурье для реализации размытия / повышения резкости. Приложение более или менее работает, но кое-что о механике все еще смущает меня.
В частности, так происходит процесс центрирования нулевых частот.
Пример, который я видел, предварительно обрабатывает входное изображение (с интенсивностью оттенков серого), умножая его на матрицу с размером, равным входному изображению, значения которого , где x - строка, y - столбец, поэтому шаблон чередуется 1 и - 1
Согласно примечаниям, это эквивалентно замене квадрантов матрицы путем переворота по осям и y .
Я понимаю, почему это сделано, и я хотел бы подчеркнуть, что я понимаю, что мой код / Фурье работает, я просто не понимаю, почему умножение входной матрицы на 1 / -1 приводит к центрированию нулевой частоты вокруг 0.
Спасибо
. Это преобразование Фурье выглядит так:
), это приводит к одной точке в самом центре преобразования Фурье:
. (Вспомните, что мы еще не сделали вращение, поэтому центр преобразования Фурье - это высокие частоты, а низкие частоты по-прежнему находятся в углах.) Но это «ядро вращения!» Свертывание с этим вращением ядра перемещает все вниз и вправо (но вещи, которые падают внизу справа, вращаются в верхнем левом углу).
, в то время как свертку преобразованию Фурье изображений с ядром вращения (в частотной области) дает вам:
.
, что имеет преобразование Фурье: