Re: 2dFFT & image processing

• To: mathgroup at smc.vnet.net
• Subject: [mg101574] Re: 2dFFT & image processing
• From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
• Date: Fri, 10 Jul 2009 06:47:11 -0400 (EDT)
• References: <h340gc\$g8m\$1@smc.vnet.net>

Oops, I made a small mistake here. The DC term is only in one cormer
of the FFT. So the line should read:

k[[1, 1]] = 1;

Cheers -- Sjoerd

On Jul 9, 7:51 am, "alexxx.ma... at gmail.com" <alexxx.ma... at gmail.com>
wrote:
> hi everybody,
> I need to perform a high-pass filter on some images.
>
> I know I can get a high pass filter doing a convolution of the image
> with a predefined kernel, but for various reasons (and my learning
> too) I wanted to follow the sequence:
> 1) fft
> 2) cut away central region (with a smooth edge)
> 3) fft again
>
> but, due to my ignorance, I'm unable to accomplish the process:
>
> given the image in a, I put:
>
> f = Fourier[a[[1]]];
> af = Abs@f;
> Dimensions[f]
>    {500,500}
>
> and I can check the fft with Graphics[Raster[255*af/Max[af]]]
>
> I then create the "hole" and apply it to the fft and invert again:
>
> k = Table[1 - Exp[-(x^2 + y^2)/s], {x, -249, 250}, {y, -249, 250}] /.
> s -> 1000.;
> holed = af*k;
> fholed = Abs[Fourier[holed]];
>
> since the reconstructed image Graphics[Raster[255*fholed/Max[fholed]]]
> is strongly fuzzed, whichever value I choose for the parameter s
> above, I wanted to ask you if I completely misunderstood the process!
>
> thank you,
>
> alessandro

• Prev by Date: Re: Manipulating list
• Next by Date: Re: sparsearray bug?
• Previous by thread: Re: Re: 2dFFT & image processing
• Next by thread: Re: 2dFFT & image processing