Real-Time Impulse Noise Suppression from Images Using an Efficient Weighted-Average Filtering

In this paper, we propose a method for real-time high density impulse noise suppression from images. In our method, we first apply an impulse detector to identify the corrupted pixels and then employ an innovative weighted-average filter to restore them. The filter takes the nearest neighboring interpolated image as the initial image and computes the weights according to the relative positions of the corrupted and uncorrupted pixels. Experimental results show that the proposed method outperforms the best existing methods in both PSNR measure and visual quality and is quite suitable for real-time applications.



There are no comments yet.


page 10

page 11


Sparse Component Analysis (SCA) in Random-valued and Salt and Pepper Noise Removal

In this paper, we propose a new method for impulse noise removal from im...

A Novel Directional Weighted Minimum Deviation (DWMD) Based Filter for Removal of Random Valued Impulse Noise

The most median-based de noising methods works fine for restoring the im...

Density Weighted Connectivity of Grass Pixels in Image Frames for Biomass Estimation

Accurate estimation of the biomass of roadside grasses plays a significa...

Image Filtering using All Neighbor Directional Weighted Pixels: Optimization using Particle Swarm Optimization

In this paper a novel approach for de noising images corrupted by random...

Image Restoration in Non-Linear Filtering Domain using MDB approach

This paper proposes a new technique based on a non-linear Minmax Detecto...

Optimizing Coordinative Schedules for Tanker Terminals: An Intelligent Large Spatial-Temporal Data-Driven Approach – Part 2

In this study, a novel coordinative scheduling optimization approach is ...

Optimisations for Real-Time Volumetric Cloudscapes

Volumetric cloudscapes are prohibitively expensive to render in real tim...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Images are often corrupted by impulse noise during acquisition and transmission. Therefore, an efficient noise suppression method is required before subsequent image processing operations [1]. Many recent methods [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

first detect the corrupted pixels and then restore them without affecting the uncorrupted pixels. Various solutions for estimating the intensity of noisy pixels can be divided into four categories of median-based filters, fuzzy-based algorithms, adhoc ideas and weighted-average filters.

Most of impulse noise removal algorithms are variations of median filtering. Best examples are Decision-Based Algorithm (DBA) [3], Median-based Switching filter (MS) [9], and Modified Decision Based Unsymmetric Trimmed Median Filter (MDBUTMF) [10]. Also, due to the nature of impulse noise, some methods are proposed based on fuzzy logics, such as Detail-Preserving Filter (DPF) [6], Noise Adaptive Fuzzy Switching Median (NAFSM) filter [8]

, and Turbulent Particle swarm optimization based Fuzzy Filtering (TPFF)


Other methods employed different ideas. In [2], Specialized Regularization (SR) method is proposed to restore noisy pixels. Opening-Closing Sequence (OCS) filter is presented in [4] based on mathematical morphology. In [5], Edge-Preserving Algorithm (EPA) is proposed which adopts a directional correlation-dependent filtering technique. In [11], Robust Outlyingness Ratio is combined with the Non-Local Means (ROR-NLM) to detect and filter the noisy pixels. In [14], a method is presented which employs an iterative impulse detector and an Adaptive Iterative Mean (AIM) filter to remove the general fixed-valued impulse noise.

Another well-known approach is weighted-average filtering, which exploits the correlation among neighboring pixels to restore the corrupted pixels. The Switching-based Adaptive Weighted Mean (SAWM) filter [7] and the Cloud Model (CM) filter [12] employ this approach for impulse suppression. Both filters adaptively determine the filtering window and use complex weighting rules. In SAWM method, the weights are specified based on the degree of compatibility between pixels, and the CM filter uses the certainty degrees of uncorrupted pixels as their weights. These filters are time-varying; that is they have to perform pixel-by-pixel restoration, rather than processing the image as a whole. This constraint opposes efficient implementation.

In this paper, we propose a two-step method for real-time impulse noise suppression. First, we employ an impulse detector to identify the corrupted pixels. It examines the spatial correlation of suspicious image pixels to decrease the false detection of uncorrupted pixels as corrupted. Second, we restore the image using a weighted-average filter. The filter operates on the nearest neighboring interpolated image and can be implemented using matrix-based operations.

The rest of this paper is organized as follows. Section II defines the impulse noise model. The method is presented in section III. The experimental results and comparisons are provided in section IV and section V concludes the paper.

Ii Impulse Noise Model

Fixed-Valued Impulse Noise (FVIN), also known as Salt-and-Pepper Noise (SPN), is commonly modeled by:


where , and are the original and corrupted images and noise density, respectively, and is the image coordinate. This model implies that the pixels are randomly corrupted by two fixed extreme grey-values, and , with the same probability.

For impulse noise suppression, we first specify the impulse values and locate the corrupted pixels, and then estimate their original values using the information provided by the uncorrupted pixels.

Iii The Proposed Method [15]

The proposed noise suppression method consists of two steps: Impulse Detection and Image Restoration. Each step is further discussed in the following.

Iii-a Impulse Detector

To identify the corrupted pixels, we first determine the impulse values, and . However, marking all pixels with an extreme grey-value as noisy pixels results in a false detection of some uncorrupted pixels as corrupted. Therefore at the next step, we should locate the noisy pixels by discriminating the uncorrupted pixels which have an impulse value. For this, we use the fact that SPN alters the pixel values to one of the two extreme grey-values with equal probabilities. Thus, a strong inclination toward one of the impulse values in a neighborhood indicates that there are some uncorrupted pixels with an impulse value. We examine the inclination for each neighborhood and the correlation of each suspicious pixel with its neighbors to distinguish between the corrupted pixels and the uncorrupted ones which have one of the impulse values.

Computing the window size: Given the estimated noise probability is , for a pixel the probability of being uncorrupted is approximately

. Thus, using binomial distribution, the expected number of uncorrupted pixels in a window of size


. If we set this value equal to five, the window size is obtained as the smallest odd integer greater than

. The window size is specified such that the expected number of uncorrupted pixels in the pixels’ neighborhood becomes five, and, as a result, there would be enough uncorrupted pixels to examine the center pixel.

We describe the details of the impulse detector in the following:

  1. Specify the impulse values, and , by finding the two extreme grey-values of the corrupted image, and then construct the set as:


    where the symbol denotes the logical OR. The set includes the indices of suspicious pixels, i.e. pixels with one of the impulse values.

  2. Compute the estimated noise probability as the rate of the suspicious pixels and set equal to the smallest odd integer greater than .

  3. Compute and as the number of pixels, in the neighborhood of the pixel at coordinate , with grey-values equal to and , respectively.

  4. Construct the sets and as follows:


    where the symbol denotes logical AND.

  5. Compute the set of corrupted pixels as:


    where and denotes the intersection and union operations, respectively, and stands for the complement set of .

Equations (3-5) imply that a pixel with an impulse value is considered to be uncorrupted if:

  • All of its neighbors have values equal to the impulse values,

  • The majority of its neighbors is inclined to one of the impulse values,

  • It contributes in this inclination.

We define the mask matrix, corresponding to the set of corrupted pixels , as:


After impulse detection, we rename the uncorrupted and corrupted pixels as known and noisy pixels, respectively.

Iii-B Image Restoration

For image restoration, we propose an Efficient Weighted-Average (EWA) filter. In the proposed method, first we construct an initial image using the Nearest Neighboring Interpolation (NNI). In this image, each noisy pixel takes the grey-value of its nearest known pixel. We then improve the initial image by employing a weighted-average filter, which applies different procedures for weighting the known and noisy pixels.

Note that in this subsection, all multiplications and divisions are pixel-wise.

Iii-B1 Weight Assignment Procedures

The weight assignment procedures are described in this following.

Weights of Known Pixels

The weight assignment to known pixels is based on the fact that due to the spatial correlation of image pixels, the information of adjacent pixels overlaps. In other words, two separate pixels have more information than two adjacent pixels. This confirms the observations that, with a fixed noise density, random losses can be restored better than block/burst losses [16].

Therefore, to quantify the value of unique information in each known pixel, we should determine the solitariness of that pixel. For this, we define the Information Matrix (IM) as follows:


where * denotes the convolution operation, is the convolution kernel, which is an all one matrix of size , and Mask is obtained from (6).

The denominator of (7) represents a matrix, which elements specify the number of known pixels in the neighborhood of the corresponding image pixel. The set of neighboring pixels is determined by the kernel . The center pixel is also included in the set of neighboring pixels to avoid infinite information value for a solitary known pixel.

Finally, the weights of known pixels are computed as:


The weights are normalized such that the lowest weight for known pixels is one. Therefore, the range of is between 1 and 9. Note that these values are not valid in the positions of noisy pixels.

Weights of Noisy Pixels

The weight assignment to noisy pixels is based on this image property that farther image pixels have lesser correlation with each other. Thus in the initial image, noisy pixels which are farther from their nearest known pixel take less accurate value.

We compute the Distance Transform of the image to obtain the Distance Matrix (DM) and the Closest-Pixel Map (CPM). Each element of DM and CPM contain the Euclidean distance of the corresponding image pixel with the nearest known pixel and the index of that pixel, respectively.

The weights of noisy pixels are computed as:


Equation (9) implies that is inversely proportional to the DM and is set to be in the range of .

Iii-B2 Implementation

One key factor for fast restoration is matrix implementation. The proposed filter has the advantage that all steps are implemented using matrix-based operations. The implementation details of the restoration stage are described in the following:

  1. Compute the matrices DM and CPM from the corrupted image . For computing the Euclidean distance transform, we used the fast algorithm described in [17].

  2. Using the CPM, employ NNI on the image to obtain the initial image .

  3. Construct the overall Weight Matrix (WM) as:

  4. Restore the image as:


Figure 1 depicts the proposed filter of the restoration stage.

Fig. 1: The proposed filter of the restoration stage

Iii-C Computational Complexity

In this subsection, we compute the complexity of restoring an image from r% SPN, using the EWA filter. The major complexity of the proposed filter is for processing NNI, three convolutions, three pixel-wise multiplications and three pixel-wise divisions. The complexity of NNI is [17]. Also, we implement the convolution by two-dimensional FFT (FFT2) using the following relation:


The complexity of FFT2 is . As a result, the complexity of computing the two-dimensional convolution of an image with a kernel matrix is approximately . Finally, division and multiplication have the complexity of . Therefore, regardless of the noise density, the overall complexity is .

Iv Simulation Results

The proposed algorithm is compared with the best existing methods for SPN removal. Comparisons include the quantitative evaluation, the visual quality and the time complexity. Simulations are run on four grey-scale test images Lena, Peppers, Boat and Bridge. The Peak Signal-to-Noise Ratio (PSNR) is employed for objective performance assessment. To make a reliable comparison, each method is run 20 times with different impulse noise patterns and the result is obtained by averaging over all experiments.

Fig. 6: Comparison of restoration results in PSNR (dB) for different images corrupted by various densities of SPN.

In section I, we divided the SPN removal methods into four categories. For the sake of brevity, in simulations, we compare the proposed method with the best method of each category. For median-based filters, fuzzy-based algorithms, ad-hoc ideas and weighted-average filters, DBA [3], TPFF [13], EPA [5] and SAWM [7] have the best results, respectively.

Figure 6 depicts the restoration results of different methods for different images corrupted by SPN with various noise densities. The results demonstrate that the EWA filter performs better than other methods. Figures 11-16 exhibit the restored images of the three best filters for images Lena and Bridge corrupted by 80% and 90% SPN, respectively. Clearly, the proposed method outperforms other methods in preserving the image details. Also, Table I lists the running time of the most competitive filters in the MATLAB environment. The simulation results verify that the proposed filter is very efficient for high density impulse noise removal.

Fig. 11: Restored images using different filters for image Lena corrupted by 80% SPN. (a) Corrupted image (6.42 dB), (b) EPA [5] (29.11 dB), (c) SAWM [7] (28.87 dB), (d) EWA [Proposed] (29.61 dB)
Fig. 16: Restored images using different filters for image Bridge corrupted by 90% SPN. (a) Corrupted image (5.69 dB), (b) EPA [5] (20.76 dB), (c) SAWM [7] (21.15 dB), (d) EWA [Proposed] (21.43 dB).
50% 60% 70% 80% 90%
DBA [3] 1.2 1.4 1.6 1.8 2.1
EPA [5] 0.54 0.62 0.70 0.74 0.72
SAWM [7] 10 11 13 15 16
CM [12] 15 22 25 29 39
AIM [14] 0.14 0.16 0.19 0.25 0.31
EWA [Proposed] 0.075 0.075 0.075 0.075 0.075
TABLE I: Runtime in Seconds of Different Methods with Various Noise Densities in the MATLAB Environment

V Conclusion

In this paper, we proposed a method for fast impulse noise removal from images. The proposed filter first constructs an initial image using the nearest neighboring interpolation and then improves it by employing a weighted-average filter, which applies different procedures for weighting the known and noisy pixels. Experimental results verify that the proposed method outperforms the best existing methods in both qualitative and quantitative measures and is quite suitable for real-time applications.


  • [1] A. Bovik, Handbook of Image and Video Processing.   Academic Press, 2000.
  • [2] R. Chan, C.-W. Ho, and M. Nikolova, “Salt-and-pepper noise removal by median-type noise detectors and detail-preserving regularization,” Image Processing, IEEE Transactions on, vol. 14, no. 10, pp. 1479–1485, Oct 2005.
  • [3] K. S. Srinivasan and D. Ebenezer, “A new fast and efficient decision-based algorithm for removal of high-density impulse noises,” Signal Processing Letters, IEEE, vol. 14, no. 3, pp. 189–192, March 2007.
  • [4] D. Ze-Feng, Y. Zhou-ping, and X. You-lun, “High probability impulse noise-removing algorithm based on mathematical morphology,” Signal Processing Letters, IEEE, vol. 14, no. 1, pp. 31–34, Jan 2007.
  • [5] P.-Y. Chen and C.-Y. Lien, “An efficient edge-preserving algorithm for removal of salt-and-pepper noise,” Signal Processing Letters, IEEE, vol. 15, pp. 833–836, 2008.
  • [6] M. Yildirim, A. Basturk, and M. Yuksel, “Impulse noise removal from digital images by a detail-preserving filter based on type-2 fuzzy logic,” Fuzzy Systems, IEEE Transactions on, vol. 16, no. 4, pp. 920–928, Aug 2008.
  • [7] X. Zhang and Y. Xiong, “Impulse noise removal using directional difference based noise detector and adaptive weighted mean filter,” Signal Processing Letters, IEEE, vol. 16, no. 4, pp. 295–298, April 2009.
  • [8] K. Toh and N. Isa, “Noise adaptive fuzzy switching median filter for salt-and-pepper noise reduction,” Signal Processing Letters, IEEE, vol. 17, no. 3, pp. 281–284, March 2010.
  • [9] A. Fabijańska and D. Sankowski, “Noise adaptive switching median-based filter for impulse noise removal from extremely corrupted images,” Image Processing, IET, vol. 5, no. 5, pp. 472–480, August 2011.
  • [10] S. Esakkirajan, T. Veerakumar, A. Subramanyam, and C. PremChand, “Removal of high density salt and pepper noise through modified decision based unsymmetric trimmed median filter,” Signal Processing Letters, IEEE, vol. 18, no. 5, pp. 287–290, May 2011.
  • [11] B. Xiong and Z. Yin, “A universal denoising framework with a new impulse detector and nonlocal means,” Image Processing, IEEE Transactions on, vol. 21, no. 4, pp. 1663–1675, April 2012.
  • [12] Z. Zhou, “Cognition and removal of impulse noise with uncertainty,” Image Processing, IEEE Transactions on, vol. 21, no. 7, pp. 3157–3167, July 2012.
  • [13] H.-H. Chou, L.-Y. Hsu, and H.-T. Hu, “Turbulent-pso-based fuzzy image filter with no-reference measures for high-density impulse noise,” Cybernetics, IEEE Transactions on, vol. 43, no. 1, pp. 296–307, Feb 2013.
  • [14] H. Hosseini and F. Marvasti, “Fast restoration of natural images corrupted by high-density impulse noise,” EURASIP J. Image and Video Processing, 2013.
  • [15] H. Hosseini. (2014) Ewa implementaion, source code and results. [Online]. Available:
  • [16] P. Ferreira, “Iterative and noniterative recovery of missing samples for 1-d band-limited signals,” in Nonuniform Sampling, ser. Information Technology: Transmission, Processing, and Storage, F. Marvasti, Ed.   Springer US, 2001, pp. 235–281. [Online]. Available:
  • [17] J. Maurer, C.R., R. Qi, and V. Raghavan, “A linear time algorithm for computing exact euclidean distance transforms of binary images in arbitrary dimensions,” Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. 25, no. 2, pp. 265–270, Feb 2003.