Friday, February 10, 2012

Image restoration/recovery terminologies

I. Terminologies
  1. Image recovery
  2. Image restoration
  3. Image deconvolution
  4. Image demosaicking
  5. Image pansharpening, 
  6. Image inpainting, 
  7. Image deblocking. 
  8. Point-spread function (PSF)
  9. Optical transfer function
  10. De-convolution problem
  11. Input distribution
  12. Output distribution
  13. An inverse filter
  14. Noise spectrum
  15. Gaussian PSF
  16. Wiener–Helstrom filter
  17. Bayesian estimators
  18. Least-squares estimators
  19. Least-squares restoration
  20. Blind deconvolution
  21. Maximum-likelihood blind de-convolution
II. Noise reduction in spatial domain

Statistic filters a.k.a rank filters or order filters
  1. Median filter: select the middle pixel value from the ordered set of values within the m x n neighbourhood (W) to replace the reference pixel.
  2. Min filter used to replace the reference pixel with the minimum value of the ordered set
  3. Max filter used to replace the reference pixel with the maximum value of the ordered set. The min filter is useful for reduction of salt noise, whereas the max filter can help remove pepper noise.
  4. Midpoint filter used to replace the reference pixel with the average of the highest and lowest pixel values within a window. It is used to reduce Gaussian and uniform noise in images.
  5. Alpha-trimmed mean filters use another combination of order statistics and averaging, in this case an average of the pixel values closest to the median, after the D lowest and D highest values in an ordered set have been excluded. They are used when images are corrupted by more than one type of noise.
Adaptive filters such as edge-preserving smoothing filters. They aim to apply a low-pass filter to an image in a selective way, minimising the edge blurring effect that would be present if a standard LPF had been applied to the image.

III. Noise reduction using the frequency domain techniques

The following filters can remove periodic noise.
  1. Bandpass filter
  2. Bandreject filter
  3. Notch filter
  4. Image deblurring with the following Matlab commands: 
    1. deconvreg: deblur image using regularized filter
    2. deconvlucy: deblur image using Lucy–Richardson method
    3. deconvblind: deblur image using blind deconvolution
  5. Inverse filtering
  6. Wiener Filtering (Matlab command deconvwnr)
    The Wiener filter can be used to restore images in the presence of blurring only (i.e., without noise). In such cases, the best results are obtained for lower values of K.
IV. Image Recovery Examples

  1. Defocusing
  2. Space image restoration
  3. Cross-channel degradation (e.g. original color image -> black and white image -> color image)
  4. Blind Spartically Varying Restoration
  5. Blocking artifact removal
  6. Video blocking artifact removal
  7. Error concealment
  8. Inpainting
  9. Image super-resolution
  10. Compressed video super-resolution
  11. Dual exposure restoration
  12. Pansharpening problem
  13. Demosaicking
  14. Tracking blurred objects
V. Sources of degradation
  1. motion
  2. atmospheric turbulence
  3. out-of-focus lens
  4. limitations of acquisition systems (optics, physics, cost, etc)
  5. finite resolution of sensors
  6. quantisation errors
  7. transmisison erros
  8. noise  

VI. Forms of the recovery problem
  1. Noise smoothing
  2. Restoration/deconvolution (1D,2D,3D): multi-spectral, multi-channel
  3. Removal of compression artifacts
  4. Super-resolution: pansharpening, demosaicking
  5. Inpainting, concealment
  6. Dual exposure imaging
  7. Reconstruction from Projections
  8. Compressive sensing
  9. Light-field Reconstruction
  10. Spatially adaptive constrained least-squares restoration filter

VII. MATLAB Commands
  1. fftshift Shift zero-frequency component to centre of spectrum
  2. edgetaper Taper discontinuities/smooth along image edges
  3. deconvblind Deblur image using blind deconvolution
  4. fspecial Create predefined 2-D filter
  5. medfilt2: median filter
  6. ordfilt2: order filters use to apply min, max, median filters on corrupted images
  7. nlfilter or colfilt are sliding window neighbourhood operations. One of these two functions can be used. colfilt is considerably faster than nlfilter.
  8. This example gives the same result as using medfilt2 command with a 3-by-3 neighbourhood. 
    A = imread('cameraman.tif');
    fun = @(x) median(x(:)); %in-line function declaration
    B = nlfilter(A,[3 3],fun); %apply a sliding window neighbourhood operation
    imshow(A), figure, imshow(B)
Arithmetic mean filters show satisfactory performance for images corrupted by Gaussian noise.

Median filters perform well with images corrupted by salt and pepper noise.

Harmonic mean filter is a variation of the mean filter and is good for salt and Gaussian noise. However, it fails to work on pepper noise.

Geometric mean filter can preserve image detail better than the arithmetic mean filter and work best on Gaussian noise.

VIII. References
  1. Oge Marques, Practical Image and Video Processing Using MATLAB, Wiley-IEEE Press, September 2011.

No comments:

Post a Comment

Mounting USB drives in Windows Subsystem for Linux

Windows Subsystem for Linux can use (mount): SD card USB drives CD drives (CDFS) Network drives UNC paths Local storage / drives Drives form...