Phase Scrambling/Fourier transform of Images?

43 visualizaciones (últimos 30 días)
Matthew Peoples
Matthew Peoples el 1 de Jun. de 2021
Respondida: Subhadeep Koley el 1 de Jun. de 2021
Hi there - I am trying to Fourier phase scramble an image and I am stuck on getting the image to appear. Upon transforming, imshow() shows a blank image - any idea what I am doing wrong? I've included the code below. Thank you so much.
img_object_path = "Object Image was specified here"
obj_img = imread(img_object_path);
object_fft = fft2(obj_img);
mag = abs(object_fft);
phase = angle(object_fft);
phase = -pi + (pi+pi)*rand(size(phase)); % Between -pi and pi
reconstruct_img = mag * exp(i * phase);
phase_scrambled_img = abs(ifft2(reconstruct_img));

Respuesta aceptada

Subhadeep Koley
Subhadeep Koley el 1 de Jun. de 2021
phase_scrambled_img is of type double but its range is beyond [0, 1], therefore use the below syntax so that imshow(_) can scale the display based on the range of pixel values in phase_scrambled_img.
imshow(phase_scrambled_img, []);

Más respuestas (0)


Más información sobre Image Processing Toolbox en Help Center y File Exchange.




Community Treasure Hunt

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

Start Hunting!

Translated by