[Date Index]
[Thread Index]
[Author Index]
Re: FFT of a noisy image with weak periodic information
*To*: mathgroup at smc.vnet.net
*Subject*: [mg126776] Re: FFT of a noisy image with weak periodic information
*From*: W Craig Carter <ccarter at mit.edu>
*Date*: Thu, 7 Jun 2012 05:17:15 -0400 (EDT)
*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com
*References*: <201206060851.EAA17867@smc.vnet.net>
Hello Dave,
This may work for you as long as your data is composed of reals.
threshHold[data_, value_] :=
data /. anumber_?NumericQ /; anumber < value :> 0
threshHold[RandomReal[{0, 1}, {8, 8}], 0.25]
threshHold[RandomReal[{0, 1}, {4, 4, 4}], 0.25] // MatrixForm
W Craig Carter
Professor of Materials Science, MIT
On Jun 6, , at Wed Jun 6, 12 @4:51 AM, Dave Martin wrote:
> I'm trying to accomplish what should be a relatively simple frequency
> domain filtering of a noisy input image with with some weak, periodic
> signals (a low dose transmission electron microscope image of some
> organic crystals). Using the commands below, I've been able to input
> the image (x), convert it to data (xi), and calculate the FFT (fx).
> Now what I want to do is to set the FFT to zero for all values below
> some threshold, and then inverse transform back to a filtered image.
> My stumbling block is a simple means to set the values of the array fx
> to zero below some threshold, before I perform InverseFourier.
>
> x=Import["data.tif"] (*import the file as an image*)
> xi=ImageData[x]; (*convert image to array data*)
> x1=xi[[All,All,1]]; (*extract one of the three color channels from
> the RGB image*)
> fx=Fourier[x1]; (*calculate the FFT of x1*)
>
> Some other commands I've found useful...
>
> pfx=fx*Conjugate[fx]; (*calculate power spectrum = fx^2*)
> n=Length[pfx] (*determine size of arrays*)
> pxr=RotateRight[pfx, {n/2,n/2}]; (*put origin in center of PS
> image*)
> pi = Image[pxr] (*convert PS to image for display*)
>
> Inverse transforming...
>
> rx=Chop[InverseFourier[fx]]; (*convert fx back to a real space data
> set rx*)
> ri=Image[rx] (*convert rx to an image ri for
> display*)
>
>
Prev by Date:
**Re: FFT of a noisy image with weak periodic information**
Next by Date:
**Re: FFT of a noisy image with weak periodic information**
Previous by thread:
**Re: FFT of a noisy image with weak periodic information**
Next by thread:
**Re: FFT of a noisy image with weak periodic information**
| |