I'm learning images processing using FFT. In my test example provided below the input pixel values are clamped 0-1 (0-255), but I do eventually want to process floating point heightfield pixel values.
The software I'm using (Houdini v18) provides forward and inverse FFT functions and as a base line I can successfully convert an image to frequency space and back.
However when I look at the 2D representation of the frequency space it looks different to any examples I've found online.
This is the result of Houdini's FFT with zero frequencies at center (height offset is pixel intensity):
The function returns 2x "images" representing real an imaginary values.
From what I understand the radial type FFT images represent frequency between 0-2PI in u and v and the pixel value is the magnitude. And that most images are offset so 0 is centered.
Do I need to convert the real and imaginary components to frequency and magnitude and plot those? If so how?
EDIT: My end goal is to apply radial pass filters to the FFT so I just need to apply any spacial transforms to get the FFT to that state.