RETRO (vipl) functions
LIBRARY ROUTINE
lvfht - Perorm fast hadamard transform on the input image
LIBRARY CALL
int lvfht (
xvimage *img,
int inv_flag)
INPUT
- img - a pointer to an xvimage structure containing
the image to be transformed
- inv_flag - if set this flag indicates that an inverse
transform should be performed, otherwise a forward
transform is executed.
OUTPUT
- img - the input image is overwritten and the output is
returned in its place. Be careful not to overwrite
important data.
RETURN VALUE
TRUE (1) on success, FALSE (0) on failure
DESCRIPTION
This command performs a fast hadamard transform on the image.
If your input image had dimensions 4 row by 4 columns, and the
image had a constant value as shown below
input image = { 1, 1, 1, 1,
1, 1, 1, 1,
1, 1, 1, 1,
1, 1, 1, 1 }
The output would be this
output image = { 1, 0, 0, 0,
0, 0, 0, 0,
0, 0, 0, 0,
0, 0, 0, 0 }
Because the input image was simply the first of the Hadamard
basis functions with magnitude = 1.
The Following references were used in creating this program :
1. "Digital Image Processing, Second Edition",
Rafael C. Gonzalex, Paul Wintz, Addison-Wesley Publishing
Company, Reading Massachusetts, 1987
2. "The C User's Journal", July 1989, "The Fast Walsh
Transform", p101, Ian AshDown
ADDITIONAL INFORMATION
none
EXAMPLES
none
SIDE EFFECTS
none
RESTRICTIONS
lvfht only works on images of type VFF_TYP_FLOAT. The
dimensions of the input image must both be non-zero powers of
two. Images with maps or explicit location data are not
allowed.
MODIFICATION
none
FILES
$RETRO/objects/library/vipl/src/lvfht.c
SEE ALSO
vipl(3)
COPYRIGHT
Copyright (C) 1993 - 1997, Khoral Research, Inc. ("KRI") All rights reserved.