<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- martinchinwe -->
<ins class="adsbygoogle"
style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-3432567292388333"
data-ad-slot="3193770573"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
2.1.Image preprocessing
Digital images are always corrupted by noise during image acquisition and transmission. The presence of noise may severely degrade the quality of the image and leads to the loss of vital information in the image [37]. For effective image recognition, the preprocessing of a noisy image is essential for the elimination of noisy areas, smoothing of background texture as well as contrast enhancement between the background and the foreground (region of interest) [45]. The background of an image is the part of the image that contains unwanted information. It can be eliminated without affecting the features of the foreground. On the other hand, the foreground of an image contains the required information. The background of an image is eliminated during image processing using a mask. A mask is a grayscale bitmap image used to extract and preserve the quality of a region of interest (ROI) of an image. A grayscale bitmap image is a binary image which has the same size and shape as a region in an image with desired feature or region of interest (ROI). A mask may have shapes ranging from rectangular, elliptical, circular or other custom shapes [46].
Contrast enhancement is the process of improving the perceptibility of object (foreground) of an image by enhancing the brightness difference between the foreground and the background.
2.1.1. Types of preprocessing operations
The image preprocessing can be classified based on the number of pixels in the image processed at the same time. The techniques are divided into two:
2.1.1.1.Global preprocessing operations
The global preprocessing operation involves carrying out the preprocessing on the whole of the image at a time.
2.1.1.2.Local preprocessing operations
The local preprocessing operation processes small neighbourhood of the image at a time. It uses a small neighbourhood of pixels in an input image to get a new brightness value in the output image. This technique involves preprocessing a small neighbourhood of a pixel such as 3x3, 5x5 or 9x9 size of images at a time and then combining the result later to produce the overall image. During local preprocessing, the window size selected in local processing is equal to the size of the preprocessing filter. The local preprocessing operation can be classified based on either the goal of the preprocessing or the transformation property of the preprocessing operation. Based on the goal of the preprocessing, the local preprocessing operation can be divided into the two types: Smoothing operation and Gradient operation. The aim of a smoothening operation is to enhance the plane surfaces of the image, but at the same time blur the edge of the image. On the other hand, the gradient operation sharpens the edge of the image, but blurs the plane surfaces of the image. Although, smoothing operation and gradient operation have conflicting aims, some preprocessing algorithms permit smoothing and edge enhancement simultaneousl.
2.1.1.2.1. Goal based Preprocessing operation
The goal based preprocessing operation is an operation applied in an image in order to achieve a particular purpose. The goal of filtering operation may be to make smooth the image surface, blur or sharpen the image edge or to remove noise. Based on the goal of the operation, the preprocessing operation can be classified as smoothening operation and gradient operation.
2.1.1.2.1.1. Local Smoothening operation
The smoothening operation is used to suppress noise or other small fluctuations in the image [48]. It means suppressing the high frequency component of the image in the frequency domain without altering the low frequency component of the image. A region of an image is of high frequency when a change from one pixel intensity to another in the same local neighbourhood is extraordinarily large. The use of smoothening operation blurs all sharp edges that carry important information about the image since edge of an image acts as a region of high frequency.
2.1.1.2.1.2.Local Gradient operation
Gradient operation is based on local derivatives of the image function [48]. The derivatives of an image function are bigger at the locations of the image where the image function undergoes rapid changes. The aim of gradient operators is to indicate locations in the image where the rate of pixel intensity change is high. Gradient operations suppress low frequency components without altering the high frequency component. Since the rate of pixel intensity change is high at the image edge, the gradient operators are used for edge detection. However, since noise is of high frequency in nature, the application of the gradient operator increases the noise level in the output image.
2.1.1.2.2. Property based preprocessing operation
Based on the transformation properties, the local preprocessing operation can be classified into the following methods: Linear filtering operation and nonlinear filtering operation. The linear filtering and nonlinear filtering operation gives virtually the same value of the Mean Square Error (MSE) when the Peak Signal to Noise Ratio (PSNR) tends to 1 (low noise level). However, when the PSNR tends to zero (high noise level), the nonlinear filtering operation gives the best result.
2.1.1.2.2.1.Linear filtering operation
In its simplest form, the linear filtering operation involves taking the average of all the pixels over a local neighbourhood. Linear operations computes the output pixels values, ρ(m,n) in the output image, ϓ(m,n) as a linear combination of pixel values in a local neighbourhood of the pixel within the input image, χ(m,n). The contribution of the pixels in the neighbourhood is weighted by filter coefficients, using the convolution operation.
Linear filtering is a very important tool in signal and image filtering for Gaussian noise (noise having a probability density function (PDF) equal to that of normal Gaussian distribution) due to its mathematical and design simplicity and it also gives a good performance in certain applications such as computer vision and image recognition systems. However, the use of linear filters fails when it is applied to image corrupted by non-Gaussian noise (noise with a probability density function (PDF) that has no relationship to that of normal Gaussian distribution) or signal dependent (impulsive) noise which occurs when an image is transmitted through non-linear channels [49]. Linear filters blur the image and destroy edges, lines and other image details. Good examples of linear filters are the averaging filter and Gaussian filter.
2.1.1.2.2.2.Nonlinear filtering operation
A nonlinear filtering operation provides effective solution to problems where linear filtering operation is not adequate. It involves using nonlinear filters in image filtering. Some examples of nonlinear filters are: median, rank-order, range, α-trimmed mean and median mean filters [50]. Nonlinear filters have excellent and robust properties such as suppression of high frequency, removal of impulse noise and avoid extreme blurring of the image. They have good edges and image detail preservation properties and therefore has the dual function of edge enhancement and noise reduction unlike the linear filters which has the only noise reduction property. Most nonlinear filters meet various performance criteria, like robustness, adaptively to noise probability distributions, preservation of edge information, preservation of image details.
2.1.2. Convolution Operation
Convolution operation is a linear mathematical operation between an input function, and filter, to produce an output function, that is modified version of the input function. The convolution operation obeys some linearity law of signal processing such as:
v Commutative law: - this law states that when the convolution operation is carried out between a filter, and an input signal, , the order of the operation is immaterial. .
v Associative law: - this law states that when a multi-stage filter is used, the result of the convolution between the input signal, and the filter stages are the same as the result between the input signal and the equivalent filter response are convolved.
A convolution operation for a non-causal system according to [51][52] is shown in equation (2.16). A non-Causal system is a system that has values at every sample m and n such that m has the range and n has the range . In equation (2.16), the operation is a discrete convolution with the h (m, n) as the filter kernel or a mask and χ (m, n) as the corrupted image function.
Where and are the row size and column size of the filter respectively, and therefore the filter has size of . In practice, are odd numbers and they are equal in length. The convolution operation is an important operation in image preprocessing, and is applied in filtering when the noise is linear.
2.1.3. Homomorphic filtering
A homomorphic filtering technique is an edge preserving image filtering technique [53] for removing multiplicative noise. The technique involves transforming image corrupted by multiplicative noise to image corrupted by additive noise and then applying linear filters and convolution operation to the transformed image. The convolution operation can be applied to the equation (2.18) to remove noise from the image. After the convolution operation, the filtered image can be transformed back by finding the exponential of the output as shown in equation (2.19).
The application of linear filtering operation to signal corrupted by multiplicative noise without first applying homomorphic transformation makes the linear filter used in the filtering useless.
2.1.4. Suitability of Preprocessing Filters
Preprocessing filters can be used to sharpen images, obtain edges. In most cases, pre-processing filters are used to remove noise which distorts the image and therefore, negatively affects the human interpretability and machine perception of the image. The type of filter used to enhance noisy image depends on the type of noise that corrupts the image. The averaging and Gaussian filters are found useful for removing film grain (additive noise) from a photographic film while median filter which enhances images with minimal blurring of the edge is used to remove impulse (salt and pepper) noise [20]. The salt and pepper noise consists of random pixels being set to black or white. On the other hand, Weiner filter (an adaptive filter) is used for removing additive noise (constant intensity noise) for best result [55] but it also removes multiplicative noise. To effectively remove a multiplicative (speckle) noise which is found mostly in radar and satellite images, an anisotropic diffusion filter is preferred since it blurs the image without compromising the image quality [31]. When image with orientation properties like fingerprint image is to be filtered, Gabor filter is employed because it has a frequency-selective and orientation-selective properties [56]. For effective results, multi-stage bilateral filters give better result [57].
2.1.5. Preprocessing techniques
The images preprocessing techniques are divided into spatial domain and frequency domain techniques [11] [22]. The frequency domain method involves the use of Discrete Fourier Transform to enhance an image. On the other hand, the spatial domain involves using filters in time domain to remove noise from the image.
2.1.5.1.Spatial domain technique
In spatial domain technique, the image is divided into constituent frequencies and certain frequencies are selectively altered to emphasize some image features [24]. It uses local filtering technique to enhance corrupted image χ (m, n). In image preprocessing, the filter kernel is usually odd square matrix like 3×3, 5×5, 7×7, or 9×9 [24]. A kernel of smaller sizes is preferred in image filtering since kernel with large size causes excessive blurring of the image. The low-pass filters and band-pass filters are used in spatial domain image smoothening operation. Spatial domain algorithms used in image filtering are categorized into isotropic and anisotropic depending on whether the filter orientation is sensitive or not [58].
v Anisotropic Filter: - Anisotropic filter is a filter that is orientation sensitive. A filter is orientation sensitive if the direction of the maximum performance of the filter can be changed depending on the filter orientation when handling directional image. An anisotropic filtering effectively preserves image features and removes noise from the image when a reliable orientation is provided. When a reliable orientation is selected for the filter, the anisotropic filtering produces better results than isotropic filtering. An example of anisotropic filter is Gabor filter.
v Isotropic Filter: - An isotropic filter is a filter that is not orientation sensitive. Examples of isotropic filters are: Gaussian filter, Auto enhancement algorithm, Median filter, Averaging filter, and Wiener filter.
2.1.5.1.1. Gaussian Filter
The Gaussian filters find widespread application in signal processing because Gaussian masks have non-negative values (h (x) ≥ 0) for the range -∞ < x < ∞, and therefore do not invert the filtered signal. It is one of the best signals filtering method based on the Gaussian distribution invented by a German mathematician, Carl Friedric Gauβ. Gaussian filter is a non-causal filter which has found applications in low-level computer vision [59] and pattern recognition [60] which includes, image clustering, anomaly detection, classification, regression and principal component analysis. It exists in two major forms: the standard Gaussian filter, recursive Gaussian filter.
2.1.5.1.1.1.Standard Gaussian filter
The standard Gaussian filter involves the use of one-stage Gaussian filter in signal filtering. It is always used in simple applications because it is fast and easy to implement. In general, an Α-dimensional continuous-time standard Gaussian filter, h(x) with the mean at the origin is represented in equation (2.20) where x is a vector representing the spatial coordinates and σ represents the standard deviation of the filter [61].
2.1.5.1.1.1.1. 1-dimensional Gaussian filter
A 1-dimensional Gaussian filter is a Gaussian filter that has value in one spatial coordinate only. TThe 1-dimensional Gaussian kernel is applied in filtering of 1-dimensional signals. The Gaussian filter is non-zero function that theoretically requires an infinite window length (x Ԑ [- ]) for precise filter implementation. The geometric distribution of the mapped time coordinates in kernel space of a Gaussian distribution depends on the standard deviation (σ).
v Standard deviation and Gaussian distribution shape: -When the filter size is constant, the variation in magnitude of standard deviation changes the shape and peak of the filter. It is observed that the distribution has the largest amplitude (1.6) and narrowest window (1.5) at . On the other hand, the graph with has the lowest amplitude (0.4) and the widest window (6.0). The distribution changes because the amplitude becomes zero at any value of .
Fig.2.5: Variation of Gaussian distribution with standard deviation
A filter with narrow window and high amplitude is used where a very narrow frequency band is needed from a highly attenuated signal. The filter window (w) can be calculated using equation w=6 . Since the Gaussian function decays rapidly, it is often accurate to truncate the filter window to enhance the speed of operation. In practice, the Gaussian distribution is truncated at the point where the radius (radius=window/2) is equal to 3σ since the amplitude of Gaussian kernel approaches zero when the radius (width) becomes more than 3σ.
v Regions in Gaussian distribution: - A normalized 1-dimensional Gaussian filter has an overall area of 1.0. The area under a Gaussian distribution can be partitioned into regions based on the multiples of the standard deviation (σ) to determine the error incurred in truncating the filter at certain multiples of σ.
Fig. 2.6: Area distribution in Gaussian distribution
The percentage area occupied by a region determines the accuracy and execution time of the filter if it is truncated within the region. The partitioning of 1-dimensional continuous-time Gaussian distribution based on standard deviation is shown in Fig.2.6. The computation of the distribution of area within regions in Gaussian distribution is shown in table 2.2. As shown in table 2.2, the area of a Gaussian distribution within the regions, -∞ < x < ∞, -5 σ ≤ x≤ 5 σ, -4σ ≤ x≤ 4 σ is unity (1.0) each and percentage area is 100% each. For the region -4σ ≤ x≤ 4 σ, the percentage error is 0.0% and execution time is time unit.
Table 2.2: The computation of area distribution in Gaussian distribution
The area occupied by the region - σ ≤ x ≤ σ accounts for 68.27% of the total area of the distribution, where the region -2σ ≤ x ≤ 2σ accounts for the 95.45% of the total area and -3σ ≤ x≤3 σ accounts for 99.73% of the of the total area. The 99.73% of the total area lies within the -3σ ≤ x≤ 3σ region and this implies that the filter can be truncated at -3σ ≤ x≤ 3σ to achieve shorter execution time with negligible error. For the region, -3σ ≤ x≤ 3σ the percentage error is 0.27% and execution time is time unit which implies a decrease in execution time of or 25% for a step of 1.0 compared to the region, -4σ ≤ x≤ 4σ .
v Selection of the standard deviation: - The size of a Gaussian filter determines the standard deviation needed for effective filtering. The σ needed is directly proportional to the filter size. The selection of an appropriate value of standard deviation (σ) for different Gaussian filter sizes, is known as tuning [60]. For optimum tuning, the value of σ must not be too big or too small, but must minimize intra-class variation and maximize inter-class variation [62] and at the same time reduces the execution time. It can be shown that large filter size needs the large standard deviation, for effective filtering. The standard deviation of the Gaussian function plays an important role in the filter behaviour. The comprehensive statistical properties of the Gaussian filter create an approach for the Gaussian filter tuning and design.
2.1.5.1.1.1.2. 2-Dimensional Gaussian filter
A 2-dimensional Gaussian filter is a Gaussian filter with values in two spatial coordinate. For 2-dimensional filtering, a 2-dimensional Gaussian filter is used to blur, remove detail and noise from 2-dimensional signal. The 2-dimensional Gaussian filter has the shape of a bell-shaped hump and can be divided into continuous-time Gaussian filter and digital Gaussian filter.
v 2-dimensional Continuous-time Gaussian filter:- A 2-dimensional continuous-time Gaussian filter is a 2-dimensional Gaussian filter that has values at every point in the spatial time coordinate (h(x, y) ϵ R+ for x ϵ R and y ϵ R).
When a 2-dimensional isotropic continuous-time Gaussian filter is plotted, a Gaussian surface that has a maximum at the origin, whose contours are concentric circles with the origin at the center, is obtained as shown in Fig.2.9. The graph is conical in shape and shows that the isotropic Gaussian distribution is symmetrical about the x and y axis.
v 2-dimensional digital Gaussian filter: - In the digital image preprocessing, 2-dimensional discrete-time (DT) Gaussian filter is used unlike the analog image preprocessing which involves the use of 2-dimensional continuous-time Gaussian kernel filters. The continuous-time Gaussian filter becomes a DT Gaussian filter when it is converted to Gaussian point spread function (PSF) [52]. A PSF is a function that accepts only integer inputs (m, n) to produce real number, h(m,n) such that h(m,n) ϵ R+, m ϵ I and n ϵ I where R+ represents positive real numbers and I represent integers such that -∞ < I < ∞. The discrete Gaussian filter (Gaussian point spread function) is used in digital image preprocessing since digital images are stored as a collection of discrete pixels. In practice, an odd number square filter is used in image processing. The most commonly used filter sizes are: 3×3 filter, 5×5 filter, and 7×7 filter, but the 3x3 filter are always used because it causes less blurring effect on the image; the larger the size of the filter, the more blurred the output image is. The optimized Gaussian filter is based on binomial theorem and is also called binomial filter.
In digital image filtering, a 2-dimensional Gaussian kernel is convolved with 2-dimensional data to produce an enhanced image. After filtering, the central pixel receives the highest weighed value while neighbouring elements receive smaller weights as their distance from the center (current) pixel increases. The convolution of the image function with a Gaussian function to produce the filtered image is called Weierstrass transform.
2.3.4.11.2. Recursive Gaussian filter
For a better filtering result, a recursive Gaussian filter is used in signal filtering. The recursive Gaussian filter is a modified form of standard Gaussian filter. It applies multiple stages of standard Gaussian filter in image processing. The filtering operation of the recursive Gaussian filters involves repeatedly convoluting the signal with a series of standard Gaussian filters until the required level of enhancement is achieved.
Since convolution is a linear process, and therefore obeys the law of associativity, the filtering operation involves convolving the signal with the equivalent impulse response of all the filter stages. This operation can be shown in the equation (2.31).
v Gaussian filter stages and distribution shape: - The smoothness of the image filtered using recursive Gaussian filter improves as the number of filter stages increases. At large number of filter stages, the recursive DT Gaussian filter approximates the continuous-time Gaussian filter according to the central limit theorem. It can also be inferred from the figure that the amplitude of the filter decreases as the number of stages increases. This implies that the use a very large number of filter stages in signal filtering over-attenuate the signal. Considering the width of the filter, it is observed that a large number of filter stages also increases the execution time of the recursive Gaussian filter due to the large bandwidth and therefore limits the number of stages applied in practice. On the other hand, the use of fewer numbers of filter stages gives low execution time and less smoothening. In image filtering, the Gaussian filter is considered the ideal time domain filter, just as the sinc function is the ideal frequency domain filter.
2.1.5.1.2. Gabor filter
The Gabor filter is an excellent linear band-pass filter used for image preprocessing and edge detection [56] invented by Dennis Gabor [22]. It is a double bilateral filter [57] formed when Gaussian function (envelope) is modulated by a sinusoidal plane wave (carrier). The Gabor filter is a linear filter whose impulse response is defined by a harmonic function multiplied by a Gaussian function [11]. It is used in edge detection because it simultaneously reduces noise and preserves the edge of an image and it is sensitive to the orientation of the image coordinates. A Gabor filter set with a given orientation gives a strong response for locations of the target images that have structures in that direction. The orientation-space representation is treated as a continuous variable to which the Gabor filter can be tuned. According to the tuninguning of the Gabor filter involves selecting the suitable bandwidth for the filter; the smaller the bandwidth, the more orientation sensitive of the filter. Frequency and orientation representations of Gabor filters are similar to those of the human visual system and the simplest cells in the visual cortex of mammalian brains can be modeled by Gabor functions since it has frequency and orientation selection properties [65] [58].
The Gabor filter is uniquely used in fingerprint preprocessing because of its frequency-selective and orientation-selective properties [56]. The parameter, 𝛉 is the orientation of the filter and has values of 0°, 45° or 90° (maximum performance at 𝛉 =90°), γ is the aspect ratio and has values of 0.5(elliptical shape) and 1.0 (circular shape), ʎ is the wavelength such that , φ is the phase with a best result at 0°, and σ is the standard deviation given by .
The Gabor filter is made up of the real part and the imaginary part. In most applications, the real part of Gabor filter is used [67]. The limitations of Gabor filter are that the maximum bandwidth is approximately one octave and Gabor filters are not optimal if one is seeking broad spectral information with maximal spatial localization.
2.1.5.1.3. Median filter
The median filter is a nonlinear digital filtering technique used to remove impulse noise from a digital signal. It is of two types: adaptive-length (recursive) and fixed-length (standard) median filter. The use of adaptive-length median filter gives better result compared to fixed-length median filter [57]. It gives very good results when used to filter digital image corrupted by impulse noise [68] which is generated from sensors or communication channels [69] because it preserves edges and at the same time removes noise. Noise removal, Edge and information preservation is essential in image filtering owing to the nature of visual perception of image [70]. The median filter is spatial filter that replaces every noisy pixel value in the local image neighbourhood with the median of all the pixel values in the neighbourhood when arranged in order of pixel intensity.
2.1.5.1.3.1.Standard median filter
The simplest form of a median filter, standard median filter is a simple nonlinear smoothening filter that suppresses noise while retaining all the sharp edges in the signal [71]. It is used to filter image corrupted by fixed-valued impulse (salt and pepper) noise. However, in practice, images are corrupted by random-valued impulse noise [69] which standard median filter cannot remove due to blurring and edge jittering of the image. For image filtered using a 2-dimensional standard median filter of row size, and column size, .
2.1.5.1.3.2.Recursive median filter
To achieve a better filtering, a recursive median filter (RMF) is used to filter image corrupted by random-valued impulse noise. The recursive median filter combines multiple stages of the standard median filter of varying filter sizes (filter sizes increases from the first stage to the last stage) to remove only noisy pixels. Some recursive median filters combine linear and nonlinear filters of varying filter sizes.
In real life, 2-stage recursive median filters combine linear filter (first stage) to reduce noise and nonlinear (second stage) to enhance the edge of the image. It uses the concept of threshold comparison to detect noisy pixels and effectively filter image corrupted by high impulse noise unlike standard median filter that removes high impulse noise at the expense of increased distortion [68], [71]. For a recursive median filter of row size and column size . Some popular forms of the recursive median filters are: center-weighed median filter, adaptive center-weighed median filter, the adaptive median filter, the median filter based on homogeneity information and switching median filter. The switching median filter uses the concept of threshold to detect the impulse noise level and therefore select filter bank for effective filtering. These filters are very good at locating the noise, even in images with high noise level. The filtering of random-valued impulse-noise is much more difficult compared to the fixed-valued impulse noise.
2.1.5.1.4. Averaging filter
The averaging filter is the simplest low-pass filter in digital signal processing with the ability to reduce noise while retaining sharp edges. It replaces each pixel value in the local image neighbourhood with the average of all the pixel values in the neighbourhood. The operation has the effect of eliminating pixel values which did not represent their surrounding pixel value while keeping the sharp edges. It gives optimal performance when applied in the removal of white (Gaussian) noise. The averaging filter is the worst filter for frequency domain encoded signal since it has little ability to separate the different bands and it exists in two forms: standard averaging filter (SAF) and recursive averaging filter (RAF).
2.1.5.1.4.1.Standard Averaging Filter
Standard averaging filter (SAF) is the most popularly used averaging filter. For a 1-dimensional signal processing, a 1-dimensional averaging filter is used to remove noise and an example of 1×3 standard averaging filter. In image filtering, a two-dimensional averaging filter is used to remove noise from the image. To ensure that unique center element exists in the filter kernel, an odd filter with square filter size is used in image processing. The image filtering using an averaging filter is implemented by finding the convolution between the images and averaging filter kernel.
In practice, the standard averaging filters have the following problems:
· A single pixel with a very unrepresentative value can significantly affect the mean value of all the pixels in its neighbourhood.
· When the filter neighbourhood straddles an edge, the filter will interpolate new values for pixels on the edge and so will blur that edge. This may be a problem if sharp edges are required in the output.
2.1.5.1.4.2.Recursive Averaging Filter
When a more accurate average filtering is needed, a recursive averaging filter is applied. A recursive averaging filter is a modified version of standard averaging filter that applies multi-stage standard averaging filter with varying filter sizes.
It involves repeatedly convoluting the signal with a series of standard averaging filter until the required level of enhancement is achieved. Since convolution is a linear process, and therefore obeys the law of associativity, the filtering operation involves convolving the signal with the equivalent convolution result of all the filter stages.
Averaging filter stages and distribution shape: - A recursive averaging filter produces better filtering operation when the number of filter stages increases and at the large number of filter stages, the recursive averaging filter approximates the Gaussian filter . The convolution of two or more averaging filters of the same size gives filter of higher order and therefore gives a smoother filtering. However, the use of a large number of filter stages increases the execution time and also leads to over-attenuation (blurring) of signals. For that reason, the number of filter stages applied in practice is limited to few stages.
The algorithm for recursive averaging filters is faster than other digital filters since it involves only addition and subtraction as mathematical operations and carries out two computations per point. It uses only integer representation which works better than floating point which can produce unexpected result due to round-off error.
2.4.4.1.5. Wiener filter
The wiener (minimum mean square error) filter is adaptive linear filters applied to an image locally by taking into account the local image mean (μ), local image variance and estimated noise variance (δ). The Wiener filter gives light local smoothening when the variance in an image is large, but gives an improved local smoothening when the variance in the image is small. The expression for wiener filtering according to [72].
Where μ and are local mean and the local variance of the noisy image and δ is the estimated noise variance. The Wiener filter is an adaptive filter that uses the estimation of noise present in the image to determine the extent of filtering.
2.1.5.2.Frequency domain filtering
The frequency domain method of image enhancement involves filtering the image corrupted by noise by expressing the image in its frequency domain.
2.1.5.2.1. Fourier Transforms filtering
The Discrete Fourier transform (DFT) is used in engineering, image processing and computer vision [75] to converts an image in the spatial domain to frequency domain [73]. For efficient implementation of DFT, the fast Fourier transform (FFT) algorithm is used. The FFT has been widely used in earlier works in the fingerprint image recognition system. The FFT decomposes large DFT into several stages of smaller DFTs of square sizes to make the operation simpler and faster.
The FFT is faster and simpler than the DFT and requires M×log2N complex multiplications and M×log2(N-1) summation [74] unlike DFT that requires M×N complex multiplications and M×N-1 summation. In more precise terms, the complexity of FT is represented as O (N) where is the O is known as the asymptotic behavior of the function. On the other hand, the computation complexity of FFT increases linearly with the increase in data size. An important feature of the Fourier transform is that a convolution in the spatial domain can be done with a simple piecewise multiplication in the frequency domain. To filter an image of M×N with M×N filter takes O((MN) 2) operations in the spatial domain but only O(MN) operations in the frequency domain.
In FFT, the image is divided into small processing block and FFT is performed on each block one at a time [56]. In order to enhance a specific block by its dominant frequencies, the FFT of the block is multiplied by a constant. .
The value of determines the brightness of the output image; the higher the value of the brighter the image. The filtering of the image in the frequency domain is given as the product of constant, K and the local image in frequency domain according to [56] as shown in equation (2.46) and the operation is bitwise operation. The Fourier transform is commonly used to remove periodic noise.