Help for APODIZE

PURPOSE:
"apodize" modifies picture borders so that the Fourier transform of the
picture will be free of spikes through the zero-frequency axis, allowing
filters to operate without ringing on the picture peripheries.

 
EXECUTION:

Examples

apodize IN OUT

This command will perform the operation on input image IN, sending the output
to image OUT.  The input image is assumed to be in byte format; a ten-pixel
border will be used. 

apodize IN OUT EDGE=3

This command is similar, but a three-pixel border is used.
OPERATION:
The Fourier transform considers the input picture to really be an infinite
mosaic (checkerboard) of identical pictures.  If the picture borders do not
match but cause abrupt DN displacement, this information is included in the
transform as a broad response on a line through DC both vertically and
horizontally.  When restoration filters are applied, this information (which
has not partaken of the image degradation in question) is altered.  The inverse
Fourier transform no longer contains the information needed to represent a
clean picture border and ringing is the result. 

"apodize" fits a sine wave across the picture border so that abrupt transitions
in the mosaic become continuous.  The EDGE parameter controls the wavelength
such that lambda = 4 * EDGE.  All information within the border strip is lost. 

RESTRICTIONS

Max image size is 8192 in samples

HISTORY

WRITTEN BY:  J. J. Lorre, 20 May 1974
COGNIZANT PROGRAMMER:  R. J. Bambery

REVISIONS:  

    1 July 1994     A. Scop (CRI)   Made portable for UNIX
    16 Sept 2003    N. Toole        Enabled for 3D images
    19 Apr 2011     R. J. Bambery   Made internal format REAL
                                    Now works with BYTE, HALF, FULL, REAL    
    28 Jun 2012     R. J. Bambery   Removed <tab> in front of continuation
                                    lines to make backward compatible with
                                    32-bit Linux gfortran 4.2.1, otherwise
                                    compatible 64-bit Linux gfortran 4.6.3
    18 Oct 2012     L.W.Kamp  Trimmed some lines to make <72 characters for Solaris

PARAMETERS:


INP

STRING - Input image file

OUT

STRING - Output image file

SIZE

INTEGER - Standard VICAR size field

SL

INTEGER - Starting line

SS

INTEGER - Starting sample

SB

INTEGER - Starting band

NS

INTEGER - Number of lines

NL

INTEGER - Number of samples

NB

INTEGER - Number of bands

EDGE

INTEGER - Border width

See Examples:


Cognizant Programmer: