DATAMANIP (kdatamanip) functions
LIBRARY ROUTINE
lkwiener - perform Wiener filtering (restoration) in Fourier frequency domain
LIBRARY CALL
int lkwiener(kobject in_obj, kobject psf_obj, double wiener, kobject out_obj)
INPUT
- in_obj - source data object (FFT)
psg_obj - PSF data object (FFT)
- wiener - Wiener parameter
OUTPUT
- out_obj - filtered output data object (FFT)
RETURN VALUE
TRUE (1) on success, FALSE (0) otherwise
DESCRIPTION
Perform restoration of data in the spatial domain by
Wiener filtering in the frequency domain. The idea is
to deconvolve the blurring function from the blurred data.
A few problems exist in performing this operation, as
described in great detail in any good image processing book.
A full implementation of a Wiener filter requires detailed
knowledge of the signal and noise power spectra. Many times
this information is simply unavailable or is very poorly known.
In such situations, it is convenient to assign some constant
value to the SNR and use that in the Wiener filter
implentation. This is a somewhat extreme restriction of the
Wiener filter, but it makes the filter very easy to use and
can give much better results than the pseudoinverse filter
in lkinverse().
This routine implements the filter described in K.R. Castleman,
"Digital Image Processing", Prentice-Hall 1979,
ISBN 0-13-212365-7, p281 Eq. 2 with the variable SNR term
given as the Weiner parameter constant.
ADDITIONAL INFORMATION
none
EXAMPLES
none
SIDE EFFECTS
none
RESTRICTIONS
Restrictions on data or input as applicable
MODIFICATION
none
FILES
$DATAMANIP/objects/library/kdatamanip/src/lkwiener.c
SEE ALSO
kdatamanip(3)
COPYRIGHT
Copyright (C) 1993 - 1997, Khoral Research, Inc. ("KRI") All rights reserved.