Hello, forgive me if this is a novice question or the wrong place to ask.

I have trying to modify some FFT code to use the CUDA FFT library instead of the FFTW library.

RIght now in the code, a row is read in from an image, and a backward FFT is performed. The output array from that backward FFT is multiplied by a color map value, and stored in a new array, R.

R is shifted to put the DC value back in the middle of the array, and then R is used as the input value to the forward FFT.

The output of that forward FFT is used to generate the output image. This process happens for each of three spectra, to give me an RGB image.

My questions: is this equivalent to doing a 2D FFT over the entire image at once? Would I get the same result if I ran the backward FFT on the full image, shifted the output matrix to give me DC at the top left corner of the matrix, and ran the forward FFT?

I gather that the only reason the shift even happens is because of the order FFTW returns the results in, and I am not sure that would even be necessary for the CUDA FFT library, but I guess it would.

Thanks

mathematicallynot so interesting. For your question "Would I get the same result if...", there is one way to have a reasonable level of confidence in the answer: try it and see! I would guess FFT questions would be better in StackOverflow. $\endgroup$