# Why do we discard imaginary part of the phase spectrum?

Suppose I compute phase spectrum from the fftn function in MATLAB as

image1=imread('cameraman.tif');
figure,imshow(image1);

fourier_transform=fft2(image1);%take fourier transform of gray scale image

phase_spectrum=exp(1j*angle(fourier_transform));
imshow(phase_spectrum, [])


Here, by using imshow(phase_spectrum,[]) we first discard the imaginary part and then normalize.

But why do we discard the imaginary part of the phase spectrum ? Whether it's spectrum is same as real part with 90 degree phase shift ?

Is it not useful ? Also,what should be done to get whole phase spectrum not just real part of it?

• We don't discard the phase spectrum if we need to reconstruct the signal from it. Only thing is much of the play about frequency is visible mostly from the magnitude spectrum. No doubt there will also be rich information from phase spectrum. – Dipan Mehta Jun 27 '15 at 12:18
• @Dipan sorry sir but you are talking about discarding of phase spectrum and my question is about discarding of imaginary part from the phase spectrum :-) – user3559780 Jun 27 '15 at 12:27
• This: exp(1j*angle(fourier_transform)) gives normalised phase spectrum which is complex. Use imagesc(real(phase_spectrum)) to see real part and imagesc(imag(phase_spectrum)) to see imaginary part. – geometrikal Jun 27 '15 at 12:50
• @geometrikal could you tell me whether phase spectrum is real function or complex function? – user3559780 Jun 27 '15 at 12:59
• Phase is an angle. It represents a shift of the corresponding sinusoid. It can be represented as a real number, the angle value. However, angles are periodic. E.g. 370 degrees equals 10 degrees. This can be problematic sometimes. People often prefer to work with the complex exponential form of an angle - exp(i * angle) - as this makes the algebra easier. So phase spectrum can either be real or complex. With the Fourier transform is comes out complex but is easily converted in Matlab using the angle function. – geometrikal Jun 27 '15 at 13:21

Phase spectrum is a real function. Whatever methods/functions (correct or not) you use to obtain it does not and shall not change this fact. $H(e^{j\omega}) = |H(e^{j\omega})| e^{j\phi(w)}$ where the $\phi(w)$ contains the phase spectrum and the absolute value part is the magnitude spectrum. Both are real. You shall use a proper function and method in your environment to obtain those signals from $H(e^{j\omega})$