NAME¶
i.fft - Fast Fourier Transform (FFT) for image processing.
KEYWORDS¶
imagery, FFT
SYNOPSIS¶
i.fft
i.fft help
i.fft input_image=
name real_image=
name
imaginary_image=
name [
range=
integer]
[--
overwrite] [--
verbose] [--
quiet]
Flags:¶
- --overwrite
-
Allow output files to overwrite existing files
- --verbose
-
Verbose module output
- --quiet
-
Quiet module output
Parameters:¶
- input_image=name
-
Name of input raster map
- real_image=name
-
Name for output real part arrays stored as raster map
- imaginary_image=name
-
Name for output imaginary part arrays stored as raster map
- range=integer
-
Range of values in output display files
Default: 255
DESCRIPTION¶
i.fft is an image processing program based on the FFT algorithm given by
Frigo et al. (1998), that processes a single input raster map layer (
input_image) and constructs the real and imaginary Fourier components
in frequency space.
NOTES¶
The real and imaginary components are stored as arrays of doubles in the
cell_misc directory (for use in the inverse transform program,
i.ifft), and are also scaled and formatted into the
real_image
and
imaginary_image raster map layers for inspection, masking, etc. In
these raster map layers the low frequency components are in the center and the
high frequency components are toward the edges. The
input_image need
not be square; before processing, the X and Y dimensions of the
input_image are padded with zeroes to the next highest power of two in
extent (i.e., 256 x 256 is processed at that size, but 200 x 400 is padded to
256 x 512). The cell category values for viewing, etc., are calculated by
taking the natural log of the actual values then rescaling to 255, or whatever
optional range is given on the command line, as suggested by Richards (1986).
A color table is assigned to the resultant map layer.
The current geographic region and mask settings are respected when reading the
input file. The presence of a mask will, in general, make the resulting fast
Fourier transform invalid, or at least difficult to interpret.
EXAMPLE¶
North Carolina example:
g.region rast=lsat7_2002_70
i.fft input_image=lsat7_2002_70 real=lsat7_2002_70.real
imaginary=lsat7_2002_70.imag
# set region to resulting FFT output map (due to new FFT coordinate space):
g.region rast=lsat7_2002_70.real -p
d.mon x0
d.rast lsat7_2002_70.real
d.rast lsat7_2002_70.imag
SEE ALSO¶
-
M. Frigo and S. G. Johnson (1998): "FFTW: An Adaptive Software
Architecture for the FFT". See www.FFTW.org: FFTW is a C subroutine
library for computing the Discrete Fourier Transform (DFT) in one or more
dimensions, of both real and complex data, and of arbitrary input
size.
-
John A. Richards, 1986. Remote Sensing Digital Image Analysis,
Springer-Verlag.
Personal communication, between progam author and Ali R. Vali, Space Research
Center, University of Texas, Austin, 1990.
i.cca
i.class
i.ifft
i.pca
AUTHOR¶
David Satnik, GIS Laboratory, Central Washington University
Glynn Clements (FFTW support)
Last changed: $Date: 2011-11-08 12:29:50 +0100 (Tue, 08 Nov 2011) $
Full index
© 2003-2014 GRASS Development Team