LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to use "IMAQ ComplexPlaneToImage"? (Display after "IMAQ FFT")

Hello,I use two ways to display a image after "IMAQ FFT":
(1). Input a image->IMAQ FFT->Windraw(display);
(2). Input a image->IMAQ FFT->IMAQ ComplexPlaneToImage(extracting magnitude) ->Winddraw(display).
The two results are much different.
I want to know what the two displayed images(especially in the second way) mean and where
"IMAQ ComplexPlaneToImage" usually used.
Thanks for your help!
0 Kudos
Message 1 of 6
(3,996 Views)
Hi Dazee,

What you're dealing with are two different types of images. Mathematically speaking, when you take the Fourier Transform of an image, there are two components- Magnitude and Phase. Picture this as a vector where the x-axis is "real" and the y-axis is "imaginary". The distance from the origin to (x,y) is your magnitude and the angle the vecotr makes with the x-axis is the phase. In short, this is a complex number. The typical IMAQ FFT VI extracts all of this information from the image and represents it in a complex image display. The IMAQ ComplexPlaneToImage as you are using it is only extracting the "Real" part of this Fourier Transform and therefore not displaying the same image data that the IMAQ FFT does. I hope this helps you out.

Regards

Dan
National Instruments
0 Kudos
Message 2 of 6
(3,959 Views)
Thank you very munch,DannyQ. But I still have some questions: "IMAQ ComplexPlaneToImage" can extract "the real part, imaginary part, magnitude, or phase of a complex image " (not "real" only), and if I choose "magnitude", the second way also display the magnitude of the complex image generated after "FFT",which seems like the first. I think they should be the same. The first way is displaying the magnitude too,right? So how to explain this?
0 Kudos
Message 3 of 6
(3,951 Views)
Dazee,

I'm attaching a little picture I put together that might help you distinguish between the four planes. "Real" represents the x axis. "Imaginary" represents the y axis. Therefore, magnitude = Sqrt (Real^2 + Imaginary ^2) and Phase = Real/Magnitude. I think the picture should help you out, although feel free to let me know if I'm still confusing you.

Regards

Dan
National Instruments
0 Kudos
Message 4 of 6
(3,933 Views)
0 Kudos
Message 5 of 6
(3,927 Views)

Hi Dan

I am having some questions regarding the FFT Phase of the FFT with IMAQ ComplexPlaneToImage.

From the posting below you mention that the phase is:

Phase = Real/Magnitude.

 

I am using the function ComplexPlaneToArray to see the value I am getting from ComplexPlaneToImage.

Usually the phase is the inverse tangent  (Imaginary/Real). If we are using the Real and magnitude it will be the inverse cos(Real/Magnitude)

I tried the above senario to verify the phase value we are getting from ComplexPlaneToArray.

However, I get not get the value you are displaying in the phase  (ComplexPlaneToArray).

How can I verify  ComplexPaneToArray ( phase) with the various

ComplexPaneToArray(real)

ComplexPaneToArray(magnitude)

ComplexPlaneToArray(imaginary)

 

I attached a phase fft.vi as an example of my issue.

 

Regards,

 

Corinne

 

0 Kudos
Message 6 of 6
(3,685 Views)