 Research
 Open access
 Published:
A new family of Gaussian filters with adaptive lobe location and smoothing strength for efficient image restoration
EURASIP Journal on Advances in Signal Processing volumeÂ 2014, ArticleÂ number:Â 25 (2014)
Abstract
Noise can occur during image capture, transmission, or processing phases. Image denoising is a very important step in image processing, and many approaches are developed in order to achieve this goal such as the Gaussian filter which is efficient in noise removal. Its smoothing efficiency depends on the value of its standard deviation. The mask representing the filter presents generally static weights with invariant lobe. In this paper, an adaptive denoising approach is proposed. The proposed approach uses a Gaussian kernel with variable width and direction called adaptive Gaussian kernel (AGK). In each processed window of the image, the smoothing strength changes according to the image content, noise kind, and intensity. In addition, the location of its lobe changes in eight different directions over the processed window. This directional variability avoids averaging details by the highest mask weights in order to preserve the edges and the borders. The recovered data is denoised efficiently without introducing blur or losing details. A comparative study with the static Gaussian filter and other recent techniques is presented to prove the efficiency of the proposed approach.
1. Introduction
The image denoising remains an important goal in image or video preprocessing as a preliminary task for data transmitting, pattern recognition, etc. In the case of high distortions, efficient noiseremoving techniques may introduce artifacts or blur the image. Image denoising techniques using the Gaussian filter has been widely used in many fields for its ability to efficiently restore degraded data. In [1], the authors combined the following three techniques: wavelet transform, curvelet transform, and the Gaussian filter to recover the distorted image. The authors in [2] exploited the relationship between linear diffusion and Gaussian scale space to estimate optimal variances and window size of the Gaussian. An efficient technique based on the Gaussian filter with dynamic structure that targets noise is introduced in [3, 4]. Selecting the optimal value of the standard deviation in a Gaussian filter depending on few properties of the signal knowledge is proposed in [5]. In [6], an adaptive Gaussian filtering algorithm, in which the filter variance is adapted to both noise characteristics and the local variance of the signal, is studied.
The basic premise of the Gaussian technique is that different parts of an image have varying degrees of noisiness and types of edges. Therefore, each part of the image needs to be smoothed differently. For this reason, we propose to create an adaptive filter having a Gaussian core with a variable structure for each processed window. The location of the Gaussian lobe and its smoothing strength are optimized iteratively according to the noise intensity and image characteristics. These features are optimized to efficiently clean noise and preserve the image content. The paper is arranged as follows: a brief description of the Gaussian kernel in Section 2, the conception of the proposed filter in The proposed adaptive Gaussian filter and Experimental results, comparative study in Comparative study, and a summary and conclusion in Conclusions.
2. Recall of the conventional Gaussian filter properties
The Gaussian filter is widely used in the literature as a lowpass filter for image denoising. It can provide image smoothing and noise reduction, but it blurs edges and details. The Gaussian smoothing filter is efficient for reducing noise drawn from a normal distribution presented as follows:
where Ïƒ is the spread parameter (the width distribution) and the couple (Î¼_{1}, Î¼_{2}) are the means (location of the peak) (Figure 1). In this paper, we propose a smart Gaussian filter with dynamic structure. In this new filter, the variation of the standard deviation is related to the nature and the characteristic of the image areas and zones. This variation is supervised by the neural network. However, changing the couple of means (Î¼_{1} and Î¼_{2}) will vary the lobe position and the gradient magnitude in order to preserve the edge and borders.
The main properties of the Gaussian filter are described as follows:

Gaussian smoothing is very effective for removing Gaussian noise.

The weights give higher signification to pixels near the edge (reduce edge blurring).

It is a static and linear lowpass filter.

Separability into two onedimensional (1D) filters.

Rotationally symmetric (performs the same in all directions).

The degree of smoothing is controlled by the standard deviation Ïƒ (larger Ïƒ for more intensive smoothing).Figure 2 shows the result of applying Gaussian filters with different values of Ïƒ on the Lena image. It is clear that when we increase the width parameter (Ïƒ), the borders and the details are removed.
In order to overcome this problem, we study a smart Gaussian filter with dynamic structure. In this new filter, the variation of the standard deviation is done according to the nature and characteristic of the image areas and zones. This variation is supervised by a neural network, whereas changing the couple of means (Î¼_{1} and Î¼_{2}) will vary the position of the filter lobe in order to preserve edges and borders.
3. The proposed adaptive Gaussian filter
3.1. Estimation of the adaptive smoothing strength
As we mentioned, the smoothing efficiency of the Gaussian filter depends on the value of its standard deviation. The more this parameter is increased, the more the image is blurred and the details and borders are removed. That is why every part of the image must be filtered with an appropriate kernel. So, we propose to vary the standard deviation using the neural network which responds to the nonlinear variation of the smoothing strength. The procedure is described as follows.From the processed image, we select patterns from different zones such as the edges, the dark zone, the high intensities, and the textures (Figure 3).
In order to estimate the optimal standard deviation which is the desired output of the neural network, the following stages will be undertaken. Each selected window from the image is distorted by different kinds of noise and filtered iteratively with a Gaussian filter increasing in each step the value of its standard deviation by a step Î”Ïƒâ€‰=â€‰0.01, and we compute the corresponding peak signaltonoise ratio (PSNR). For each pattern of the selected windows, a curve illustrating the PSNR variation with regard to the standard deviation increase is plotted (see Figure 4). Once the allure of the function PSNR_{Ïƒ}â€‰=â€‰p(Ïƒ) is determined, we compute its derivative to find the optimal value of the standard deviation called Ïƒ_{opt}. The segment D illustrated in red is the tangent to the curve at the index Ïƒ_{opt} where the derivative is null Pâ€²(Ïƒ_{opt})â€‰=â€‰0 and D is defined by the following equation:
The optimal value of the standard deviation is manually adjusted around the computed value in the range of [2Î”Ïƒ, 2Î”Ïƒ]. In fact, Ïƒ_{opt} is located between the transitory and stable zone of the PSNR_{ Ïƒ } function that are separated by the computed tangent. To validate our selection, we compute the normalized crosscorrelation between the filtered and original image called C. A segment noted D 1 is drawn as a tangent on this curve with parallel direction to D. The index representing the value of the standard deviation found confirms the computed Ïƒ_{opt}. The range of Ïƒ_{opt} is constrained by a minimum threshold imposed to the PSNR called PSNR_{min} that must be maintained over 32 dB.The selected distorted patterns of the image are introduced to a multilayer perceptron (MLP) neural network which is composed of three layers â€˜input, hidden layer, and output layerâ€™. In the test phase, the neural network generates different values of standard deviations for all the introduced distorted windows. The network generates the appropriate outputs according to the noise density and kind (Figure 5).
The neural weights are adjusted to adapt the neural output to the desired ones corresponding to the distorted inputs. When filtering the image, the neuronal outputs supervise real time the smoothing strength of the proposed adaptive kernel that changes iteratively for each processed window.
If we consider the window size is (mâ€‰Ã—â€‰n) and the image size is (Mâ€‰Ã—â€‰N), then the set of estimated standard deviations is as follows: \left[{\mathit{\xcf\u0192}}_{\mathrm{RN}}\right]={\mathit{\xcf\u0192}}_{\mathrm{RN}}\left(\mathit{i}\right)\phantom{\rule{0.25em}{0ex}}\mathrm{such}\phantom{\rule{0.25em}{0ex}}\mathrm{as}\phantom{\rule{0.25em}{0ex}}\mathit{i}\xe2\u02c6\u02c6\left[1,\frac{\mathit{M}\xc3\u2014\mathit{N}}{\mathit{m}\xc3\u2014\mathit{n}}\right], where Ïƒ_{RN} represents the standard deviation output by the trained network and i is the iterative number of the processed windows. The filter size is fixed equal to (6â€‰Ã—â€‰Ïƒâ€‰+â€‰1) in order to cover more than 99.99% of the processed data. The new filter structure is illustrated by the following equation:
3.2. The adaptive kernel location
The (Î¼_{1}, Î¼_{2}) represent the positions of the Gaussian core (location of the peak). In this work, we apply the Gaussian filter only on noise to avoid blurring details and borders. The steps of the kernel location variability are presented as follows:
First step: Edge detection using the canny highboost filter operator presented by the following equation:
Second step: Filter the noisy image based on a decision computed from 8 to 25 neighborhoodsâ€™ comparison:

If I(x, y) â€˜the processed pixelâ€™ belongs to an edge, compute the difference between this pixel and its eight neighbors called P(x, y) (Figure 6 and Equation 6); in this case, the values of the mean (Î¼_{1} and Î¼_{2}) are determined according to the maximum variation (gradient).

Elsewhere, we process the selected window using a filter with support size equal to (6â€‰Ã—â€‰Ïƒ_{opt}â€‰+â€‰1)â€‰Ã—â€‰(6â€‰Ã—â€‰Ïƒ_{opt}â€‰+â€‰1) and the appropriate smoothing strength.
\mathit{f}\left(\mathit{x}\right)=\mathit{a}exp\left(\mathit{\xce\pm x}\right)\xe2\u2039\dots sin\left(\mathit{wx}\right)(5)
For 1 to 8 (number of neighbors for each processed pixel in a window of size â€˜3â€‰Ã—â€‰3â€™, the maximum variation max[P(x,y)] is computed to determine automatically the values of the means (Î¼_{1} and Î¼_{2}) and define the location of the Gaussian lobe.
Sharp changes in an image can be associated to edges, or noise and such changes correspond to higher gradients. To consider that a pixel I(x, y) belongs to an edge and not as noise, we must satisfy two conditions:

High gradient variation between this pixel and its 8 or 25 neighbors for (3â€‰Ã—â€‰3) or (5â€‰Ã—â€‰5) window sizeConnection continuity between different pixels considered as edges as presented in Figure 7
The gradient has the advantage of detecting the orientation of an edge which can be positive or negative. The gradient of an image measures how it is changing. It provides two essential information. The magnitude of the gradient tells us how quickly the image content is changing, while the direction of the gradient tells us the orientation of these rapid changes. The gradient magnitude of an image and its approximation is given by the following equations:
where the partial derivatives of the image representing its variation for both x and y directions are given as follows:
The gradient orientation is described by the following equation:
The edge orientation is contained in a window of size (3â€‰Ã—â€‰3) or (5â€‰Ã—â€‰5). This direction of the edge is used to determine the Gaussian lobe displacement. This direction is constrained by two factors as follows:

1.
{\stackrel{\xe2\u2020\u2019}{\mathit{\xcf\u201e}}}_{\mathit{x},\mathit{y}} is always orthogonal to the tangent of the image edge.

2.
{\stackrel{\xe2\u2020\u2019}{\mathit{\xcf\u201e}}}_{\mathit{x},\mathit{y}}=max\xe2\u02c6\xa5\stackrel{\xe2\u2020\u2019}{\mathit{P}}\left(\mathit{x},\mathit{y}\right)\xe2\u02c6\xa5: The lobe displacement follows the maximum gradient of the image windows where the central pixel of this window belongs to the detected edge.
If the continuity condition between pixel neighbors is satisfied, we have the confirmation that the processed pixels belong to an edge. The Gaussian lobe moves in the chosen direction {\stackrel{\xe2\u2020\u2019}{\mathit{\xcf\u201e}}}_{\mathit{x},\mathit{y}} with a step of magnitude defined by the following equations respectively to each direction:
Figure 8 illustrates the highest gradient variation toward which the Gaussian kernel will move. I is the selected noisy window, T is the same window illustrating the detected edge, and P is the computed gradient magnitude.
The Gaussian core is orientated as follows: {Î¼_{1}, Î¼_{2}}â€‰=â€‰{1, 1}. Figure 9 shows the highest weight of the Gaussian kernel moving to the upper right direction of the window following the highest magnitude. Doing this, the edge will be preserved and averaged only by the lower filter coefficient. The lobe displacement is always orthogonal to the edge tangent which means that scalar between them is null. The first constraint cited above can express mathematically the Gaussian movements by the following equations:
Since the direction of the Gaussian is defined by \stackrel{\xe2\u2020\u2019}{{\mathit{\xcf\u201e}}_{\mathit{x},\mathit{y}}}, the center of the lobe follows the highest gradient in a direction orthogonal to the edge tangent. Finally, Equation 1 becomes:
Mathematically, this can be written as the scalar between the Gaussian and the image edge is always null as presented by these equations:
where * is the conjugate. Since the two functions are discrete and real, it follows:
where the couple (N, M) represents the image size.
On the other hand, the second constraint of {\stackrel{\xe2\u2020\u2019}{\mathit{\xcf\u201e}}}_{\mathit{x},\mathit{y}} means that the Gaussian lobe displacement can be in the left or right side of the tangent following the maximum gradient variation (Figure 10). As a result, we can conclude that the proposed adaptive kernel with variable Gaussian core targets noise in each window over the whole image with a variable smoothing strength and kernel location. If it detects edges or borders, the lobe change its location following the highest gradient in the processed window in a direction orthogonal to the tangent of this edge. Doing this, we avoid to weight the details and borders by the highest filter weight and introduce blur to the image. The image edges are even preserved and the noise cleaned.
4. Experimental results
We conducted a number of experiments to verify the efficiency of the proposed approach. This section discusses the denoising results obtained by the proposed adaptive filter.
MSE is the mean square error, d is the maximal coded image intensity, n and m are the image sizes, and f and r are the original and the filtered image.
4.1. Filtering salt and pepper noise
In the salt and pepper noise model, only two possible values are present. For an 8bit coded image, the typical intensity for pepper noise is close to 0 and for salt noise is close to 255. Our goal is to efficiently remove noise while preserving edges and borders. The proposed method is compared to the static Gaussian filtering using the same standard deviation Ïƒ_{opt} and a support size equal to (6â€‰Ã—â€‰Ïƒ_{opt}â€‰+â€‰1)â€‰Ã—â€‰(6â€‰Ã—â€‰Ïƒ_{opt}â€‰+â€‰1) (Table 1).
According to Table 1, the adaptive Gaussian kernel (AGK) gives better PSNR results than the static filter. The difference is conspicuous and significant. Figure 11 shows the variation of the Î”PSNR with respect to the noise density increase.Figure 12 represents an original image â€˜cameramanâ€™ followed by the noisy image and the filtering results respectively by the static and the AGK Gaussian filter. The used salt and pepper noise has a density of 10%.As presented in Figure 12, zoomed in Figures 13, 14, 15 and 16, using the proposed AGK filter, the noise is efficiently removed and the image content, edges, and borders are well preserved.
Table 2 and Figures 15 and 16 show filtering results concerning a synthetic image belonging to the database. In the following table, we illustrate respectively the PSNR of the filtered image using the AGK filter and the static filter.Processing real, binary, or synthetic graylevel images, Figure 16 demonstrates the efficiency of the proposed adaptive filter to clean noise and preserve sharp details.
4.2. Speckle noise
The speckle is a multiplicative noise described as follows:
As presented in Figure 17, even against a multiplicative noise, the proposed method generates excellent results when compared to the static filtering and essentially save undamaged edges and borders.Figure 18 represents a third example which illustrates the efficiency of the AGK filter.
The proposed AGK filter generates better denoising results than the conventional filter. This efficiency was illustrated by different examples of filtered image. All the content and details were preserved and well perceptible after the filtering process.
5. Comparative study
As shown, experimentally, the proposed adaptive Gaussian kernel is efficient compared to the conventional filter. To prove the superiority of the proposed AGK filter, we conducted a comparative study between the AGK filter and other recent Gaussian techniques cited in the literature. For example, in [2], Eva and Aishy used the Gaussian filter for image denoising where they studied the relation between Gaussian scale space and linear diffusion, and they derived an estimation of the Gaussian variance and window size; this technique is called AGSS. Table 3 represents the comparison between the proposed approach and this technique.
6. Conclusions
In this paper, a new lowpass filter with Gaussian core is presented. An adaptive Gaussian kernel based on dynamic core with variable structure is shaped. This new kernel conserves all the mathematical characteristics of the static Gaussian filter. The smoothing strength and the support size are supervised in each processed window of the image by a neural network to achieve the best filtering results. At the same time, the Gaussian lobe moves continuously in eight directions with the appropriate magnitude to avoid averaging of higher filter weights to preserve borders and edges. A comparative study is conducted to prove the efficiency of the proposed approach. Different image tests are shown with zoomed zones to validate the efficiency of this filter.
References
Kota SN, Umamaheswara Reddy G: Fusion based Gaussian noise removal in the images using curvelets and wavelets with Gaussian filter. Int. J. Image Process (IJIP) 2011, 5(4):456468.
Amer A, Rifkah E: Automated Gaussian filtering via Gaussian scaled and linear diffusion. In 20th European Signal Processing Conference (EUSIPCO). IEEE, Piscataway; 2012:15391542.
Seddik H: Efficient noise removing based optimized smart dynamic Gaussian filter. Int. J. Comput. Appl. 2012, 51: 5.
Sondes T, Hassene S, Zouhair M, Ezzedine BB: RGB Image DeNoising using New LowPas Filter with Variable Gaussian Core Real Time Optimized by Neural Networks. In 2013 International Conference on Electrical Engineering of Software Applications, ICEESA 2013. Hammamet; 2013.
Kopparapu SK, Satish M: Identifying optimal Gaussian filter for Gaussian noise removal. Third IEEE Conference on Computer Vision, Pattern Recognition, Image Processing and Graphics 2011, 126129.
Deng G, Cahill LW: An adaptive Gaussian filter for noise reduction and edge detection. IEEE Conf. Rec. 1993, 3: 16151619.
Author information
Authors and Affiliations
Corresponding author
Additional information
Competing interests
The author has no competing interests.
Authorsâ€™ original submitted files for images
Below are the links to the authorsâ€™ original submitted files for images.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
About this article
Cite this article
Seddik, H. A new family of Gaussian filters with adaptive lobe location and smoothing strength for efficient image restoration. EURASIP J. Adv. Signal Process. 2014, 25 (2014). https://doi.org/10.1186/16876180201425
Received:
Accepted:
Published:
DOI: https://doi.org/10.1186/16876180201425