ImageGear .NET v25.1 - Updated
InverseRestore Method




ImageGear.Processing.Advanced Assembly > ImageGear.FreqIP Namespace > ImGearFrequencyProcessing Class : InverseRestore Method
ImageGear.Core.ImGearRasterPage class object to be processed.
Vector which represents the Point Spread Function (PSF) in spatial domain, also called Degradation Function.
Size of PSF passed in.
The threshold parameter for Inverse Filtering.
Performs image restoration using inverse filtering in the frequency domain.
Syntax
'Declaration
 
Public Shared Sub InverseRestore( _
   ByVal page As ImGearRasterPage, _
   ByVal spreadFunctionVector() As Double, _
   ByVal spreadFunctionVectorSize As Integer, _
   ByVal threshold As Double _
) 
'Usage
 
Dim page As ImGearRasterPage
Dim spreadFunctionVector() As Double
Dim spreadFunctionVectorSize As Integer
Dim threshold As Double
 
ImGearFrequencyProcessing.InverseRestore(page, spreadFunctionVector, spreadFunctionVectorSize, threshold)
public static void InverseRestore( 
   ImGearRasterPage page,
   double[] spreadFunctionVector,
   int spreadFunctionVectorSize,
   double threshold
)
public: static void InverseRestore( 
   ImGearRasterPage* page,
   double[]* spreadFunctionVector,
   int spreadFunctionVectorSize,
   double threshold
) 
public:
static void InverseRestore( 
   ImGearRasterPage^ page,
   array<double>^ spreadFunctionVector,
   int spreadFunctionVectorSize,
   double threshold
) 

Parameters

page
ImageGear.Core.ImGearRasterPage class object to be processed.
spreadFunctionVector
Vector which represents the Point Spread Function (PSF) in spatial domain, also called Degradation Function.
spreadFunctionVectorSize
Size of PSF passed in.
threshold
The threshold parameter for Inverse Filtering.
Remarks
This method performs image restoration using inverse filtering in the frequency domain. The idea is to deconvolve PSF from the blurred data to extract the original image.

The deconvolution involves dividing the Fourier transform of the blurred image by the Fourier transform of PSF. If the transform of PSF has very small values, then the division result from those small values could easily dominate the entire result. The approach used to get around this issue is to limit the smallest value of the transform of PSF, thus we require a threshold value, threshold, to be passed in as a parameter. Ideally, this value will be just above the noise level in the image. This method places zeros in the output for those data points where the magnitude of PSF transform is below the threshold. In this respect, InverseRestore is actually an implementation of a pseudo-inverse filter.

Before using this method, like other frequency processing methods, InitializeFFTW method must be called first to initialize the support for FFTW.

Can be applied only to 8bit grayscale images with one channel.

Method ImGearFrequencyProcessingVerifier.CanApplyInverseRestore method can be called to check whether the operation can be performed or not.

See Also

Reference

ImGearFrequencyProcessing Class
ImGearFrequencyProcessing Members
ImGearRasterPage Class