3D matrix fftshift on gpu

1 view (last 30 days)
Humam Helfawi
Humam Helfawi on 20 Aug 2018
Commented: Edric Ellis on 21 Aug 2018
I have an 3D matrix 512*512*100. I want to apply fftshift on each page of it using the GPU. What I am doing right now is:
G = rand(512,512,100, 'gpuArray');
for i=1:100
G(:,:,i) = fftshift(G(:,:,i));
end
Is there a faster way to apply fftshift without doing it in a loop? For example, fft2 can be applied directly to an 3D array performing the operation on each page separately. However, fftshift does not work like that. Furthermore, fftshift is not supported by pageFun.
Any suggestion?
  1 Comment
Edric Ellis
Edric Ellis on 21 Aug 2018
Answered here: https://stackoverflow.com/questions/51935549/fftshift-on-a-3d-matrix-on-gpu

Sign in to comment.

Answers (0)

Categories

Find more on Fourier Analysis and Filtering in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!