Login  Register

Re: On complex-valued linear filtering in the frequency domain

Posted by ctrueden on Aug 11, 2015; 7:01pm
URL: http://imagej.273.s1.nabble.com/FFT-and-Inverse-FFT-problem-for-an-Electron-Microscope-Image-tp5013915p5013986.html

Hi Herbie,

Have you considered creating a wiki page describing this workflow?

Perhaps here? http://imagej.net/Scripting_toolbox
Or here? http://imagej.net/Cookbook
Or as a new page?

Regards,
Curtis

On Tue, Aug 11, 2015 at 11:11 AM, Herbie <[hidden email]> wrote:

> To those who are interested!
>
> A nice feature of ImageJ is that complex-valued images are represented as
> stacks consisting of two slices that are called "Real" and "Imaginary". In
> this sense ImageJ can deal with complex "numbers" (pixel values).
>
> If the complex-valued Fourier spectrum of an image is
>         S_1 = a_11 + i*a_12
> and a complex-valued Fourier-spectral filter function is
>         S_2 = a_21 + i*a_22,
> then their product
>         S_3 = S_1 * S_2 = a_31 + i*a_32
> computes as
>
> S_3 = a_11 * (a_21 + i*a_22) + i*a_12 * (a_21 + i*a_22);
>
> and consequently
>
> a_31 = a_11 * a_21 - a_12 * a_22; (Real part of product)
> a_32 = a_11 * a_22 + a_12 * a_21; (Imaginary part of product)
>
> With ImageJ the above is easily performed by slice arithmetics using the
> "Image Calculator...". The stack S_3 of the Fourier-spectral product is
> composed of the real part a_31 in slice 1 and the imaginary part a_32 in
> slice 2.
>
> All steps can be easily implemented as an ImageJ-macro or plugin.
>
> Of course, the filtered image is obtained by applying the inverse
> Fourier-transformation to S_3.
>
> Best regards
>
> Herbie
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html