Description This function will inverse filter the input DIB by the degradation function DIB in the frequency domain. It works with 4, 8 or 24 bits/pixel images. Inverse filtering of an image is processed by dividing the input image by the degradation function image to obtain the original noiseless image. The noise must be characterizable by a Fourier spectrum (typically linear motion blur). The input is the degraded image and the image of the degradation function. The filter will first process the spectras of both images, after computing a complex division using the transformed images, and finally returns with the inverse transformed, filtered image. The degradation spectra is multiplied by the SpectMul parameter, so normalization problems can be solved by tuning this parameter. In case of 4 or 8 bits/pixel, the source DIB must contain grayscale images and the palette values in the source DIB must be monotone increasing. It makes no sense to use this function in case of 1 bits/pixel. If the source DIB size is not power of two, zero padding is used.
Examples
Syntax lRet = [BIFilter.]FreqDIBInverse SrcDib DFDib bFFTMethod SpectMul
Remarks lRet LONGLONG Handle of the newly created DIB on success or 0 on failure.
SrcDib LONGLONG Source DIB.
DFDib Long Degradation function DIB.
bFFTMethod BOOL Fast Fourier Transform method
SpectMul Long Degradation function multiplying factor
bFFTMethod
If bFFTMethod = TRUE, then the Fourier transformed of the image will be processed by Sin and Cos functions, if bFFTMethod = FALSE, then it will be processed by square root functions.
See Also