Вы Заполнение должно добавлять высокие частоты, а это не то, что вы делаете.Для 1D БПФ F
, F(2)
и F(end)
соответствуют одной и той же частоте - в 2D это абсолютно одинаково для каждой линии изображения вдоль каждого размера изображения.Заполняя нули, расширяя массив, вы создаете новый F(end)
.Это значение больше не соответствует значению в F(2)
.Чтобы обратное преобразование было действительным, эти два значения должны быть комплексными сопряженными друг с другом.
Решение состоит в том, чтобы добавить заполнение в middle массива, где самое высокоечастоты есть.Самый простой способ сделать это - сначала использовать fftshift
, чтобы переместить нулевую частоту в центр массива, затем заполнить все вокруг массива, а затем вернуться назад:
k = fft2(i1);
k = fftshift(k);
k = padarray(k,[84,84]/2,'both');
k = ifftshift(k);
mat2 = ifft2(k);
Таким образом, вы сохранитесопряженная симметрия, ожидаемая от преобразования Фурье вещественного изображения.
Похоже, что OP сбит с толку из-за того, что происходит при заполнении нулями в разных частях спектра Фурье.Вот небольшой эксперимент:
% Create a test image, a simple Gaussian, purely real-valued
x = linspace(-3,3,84);
img = exp(-0.5*x.^2);
img = img.' * img;
imshow(img)
% OP's method
k = fft2(img);
k = padarray(k,[84,84],0,'post');
k = complex(k); % This line does nothing
out = ifft2(k) * 4;
subplot(1,2,1); imshow(real(out)); title('real part')
subplot(1,2,2); imshow(imag(out)); title('imaginary part')
% Correct method
k = fft2(img);
k = fftshift(k);
k = padarray(k,[84,84]/2,'both');
k = ifftshift(k);
out = ifft2(k) * 4;
subplot(1,2,1); imshow(real(out)); title('real part')
subplot(1,2,2); imshow(imag(out)); title('imaginary part')
Как видите, при заполнении 'post' вы вводите асимметрию в области Фурье, которая переводит в нереальное изображение в пространственной области.Напротив, заполнение, как я указывал в этом ответе, приводит к сохранению сопряженной симметрии и, следовательно, к реальному значению (мнимая часть вся черная).
(извините за все пустое пространство вокруг изображений)