1 Introduction

Image restoration is an important branch of image processing, which deals with the reconstruction of images by removing noise and blurriness and making them suitable for human perception [12]. Images can become corrupted during any of the acquisition, pre-processing, compression, transmission, storage and/or reproduction phases of the processing [5]. Liu and Li, in their reviews [11], have divided spatial image restoration techniques into two main categories namely conventional and blind image restoration. In the first category are the methods in which the information about the degradation process is generally known. This known information can be used to develop a model to restore the corrupted image back to its original form. Such techniques are used to solve motion blur, system distortions, geometrical degradations and additive noise problems. Unfortunately, in most of the cases, details about the degradation process are either partially or completely unknown, which make the image restoration process much more difficult. In the second category of image restoration [11], the image has to be restored directly from the degraded image without any prior information about the degradation process. Recently more focus has been placed on this category. One of the main tasks in developing such image restoration techniques is noise removal without destroying the image details. Noise smoothing and detail preservation are generally considered as conflicting tasks, because smoothing a region of the degraded image can potentially destroy an edge while sharpening edges may lead to the amplification of noise [6]. In the sequel, we present a new spatial filtering technique, based on fuzzy logic control that removes noise as well as preserves image details.

A number of approaches have been proposed for the impulse noise removal. Tukey [20], Astola et al. [2], and Pitas et al. [14] have utilized median filtering to remove impulse noise from the corrupted images. The median filter [1] can achieve reasonably good performance for images corrupted with low noise, but it does not work efficiently when the noise rate is above 0.5. Similarly image details such as sharp corners and thin lines are lost during the median filtering process. In addition, the median filter has been intensively studied and used in promising approaches such as weighted median (WM) [3] and center weighted median (CWM) [8] filters. The WM filter uses a set of weighting parameters to control the filter performance in order to preserve the image details. The CWM filter is a special case of the WM filter, where only the center pixel of the filtering window has a weighting factor. Eng et al. [4] present a noise adaptive soft-switching median (NASM) filter to achieve a much-improved filtering. Experimental results show that the NASM filter impressively outperforms other techniques. Still, performance advantages of these approaches can be achieved only when the noise probability is low. Furthermore, there are many other filters proposed for removing impulse noise based on machine learning techniques [13, 15, 16, 19]. For instance, the histogram based fuzzy filter (HFF) [22], Lee et-al.’s novel fuzzy filter (NFF) [9], genetic based fuzzy image filter (GFIF) [10], fuzzy impulse noise detection and reduction method (FIDRM) [18], fuzzy random impulse noise reduction method (FRINR) [17], detail preserving fuzzy filter (DPFF) [6] and modified histogram based fuzzy filter (MHFF) [7] are the examples of the most recent filters. HFF is able to outperform all the varieties of rank-order filters (such as the median filter) for the whole range (0.1–0.9) of the corruption rate without any training. HFF filter however, also smoothes out some details because it replaces the noisy pixel by the closest fuzzy weighted mean value with respect to the predicted intensity value (which is the average of non-noisy pixels in 3 × 3 window). NFF also outperform the median filter for highly corrupted images, however it does not preserve the image details well. It uses histogram of the original image or image database to find the fuzzy parameters, which indicate that it is not a pure blind technique. The major drawback of GFIF is its lengthy training process and also the original image or image database is required to calculate the fuzzy sets. FIDRM and FRINR are recently proposed methods for impulse noise reduction, however, they employ only random valued impulse noise. DPFF and MHFF removes salt & pepper and additive long tailed impulse noise respectively however the proposed technique removes both salt & pepper and additive long tailed impulse noise efficiently while keeping image details such as sharp corners, thin lines, texture and edges information intact. In the proposed technique we have performed the sensitivity analysis to test the goodness of the detail preserving capability of the proposed approach.

In order to preserve image details and avoid lengthy training process without having prior knowledge about the original image, we propose a Fuzzy Based Impulse Noise Reduction (FBINR) method which is more superior in filtering out impulse noise from digital gray scale images corrupted with salt & pepper and long tailed impulse noise. In FBINR, we combine some of the good features from the state-of-the-art techniques such as histogram estimation process from HFF [22] and fuzzy number construction process from NFF [9] to calculate the fuzzy sets. Furthermore, the proposed technique consists of noise detection, intelligent fuzzy controller for impulse noise removal and detail preservation module for preserving the image details while smoothing out the noise. All the experiments are performed on standard images of size 256 × 256 with gray level values between 0 and 255. Two types of noise is considered in this paper as described in section 2. Main contributions of the proposed technique includes

  • It combines histogram estimation and fuzzy number construction process, which makes proposed filter a pure blind technique as compare to NFF [9], which uses original image/image database.

  • Proposed technique has two separate modules for the noise removal and detail preservations so that most of the image details can be preserved in the restored image.

  • Sensitivity analysis of the proposed technique is also performed to test the goodness of detail preservation capability of the proposed technique.

  • Proposed technique performs noise removal and detail preservation without any training as well as any knowledge about the original image or degradation process.

The rest of the paper is organized as follows: impulse noise model is elaborated in section 2. In section 3 we explain noise detection module to identify the set of noisy pixels present in a corrupted image. Noise removal module is discussed in Section 4. In Section 5 detail preservation module is presented. In Section 6 we present several experimental results along with sensitivity analysis of the proposed approach. These results are discussed in detail, and are compared to those obtained by other filters. Conclusions drawn from the present work and recommendations for the future work are given in section 7.

2 Impulse noise models

In this paper, we consider two slightly different impulse noise models which includes

  • Salt and pepper noise

  • Additive noise having long tailed impulses

Salt and pepper noise model is the most frequently used and relatively simple impulse noise model, in which the corrupted pixels are replaced with values equal to the maximum or minimum intensity values of the allowable dynamic range of the image. For 8-bit images, corrupted pixel values typically correspond to fixed values near 0 or 255. Let o(i, j) and x(i, j) be the pixel values at position (i, j) of the original and noisy image respectively. The impulse noise model having error probability p can be described as follows

$$ x(i,j) = \left\{ {\begin{array}{*{20}{c}} {o(i,j)} & {1 - p} \\ {\eta (i,j)} & p \\ \end{array} } \right. $$
(1)

where η(i, j) indicates the noisy pixel at position (i, j) having values near 0 or 255 for 8-bit images.

In additive impulse noise model, noise free image is corrupted by additive long tailed impulses with error probability p and the impulses takes on positive or negative values with an equal error probability (p/2). In this case the impulse noise model can be described as follows:

$$ x(i,j) = \left\{ {\begin{array}{*{20}{c}} {o(i,j)} & {1 - p} \\ {o(i,j) + n(i,j)} & p \\ \end{array} } \right. $$
(2)

where n(i, j) is the additive impulse noise at position (i, j) and these impulses are calculated using the following equation.

$$ n(i,j) = \left\{ {\begin{array}{*{20}l} {{|b|m} \hfill} & {{(p/2)} \hfill} \\ {{ - |b|m} \hfill} & {{(p/2)} \hfill} \\ \end{array} } \right. $$
(3)

where m is the mean intensity of the pixels of the running window having size 3 × 3 and \( \left| b \right| \) is a constant greater than one. In experiments we have set the value of \( \left| b \right| \)=2. Additive long tailed impulse noise approaches to the salt & pepper impulse noise as we keep on increasing the value of \( \left| b \right| \). Based on probability p, there is 50% probability that the noisy pixel will get the value \( \left| b \right| \) m or -\( \left| b \right| \) m.

3 Noise detection module

In this section we explain the noise detection module of the proposed system. The purpose of noise detection process is to correctly identify the set of noisy pixels, which are then used by the noise removal as well as detail preservation module. For this purpose an image of size 256x256 with gray level values between 0 and 255 is considered. A window of size 3 × 3 is used to scan the entire image to detect the noisy pixels. The algorithm of the noise detection module is given in Fig. 1.

Fig. 1
figure 1

Noise detection algorithm

4 Noise removal module

In this section, architecture and working of the noise removal module is presented. Noise removal module includes intelligent fuzzy controller, fuzzy mean, histogram estimation and fuzzy number construction process as shown in the Fig. 2. Histogram estimation is used in fuzzy number construction process to calculate parameters for fuzzy controller. Fuzzy controller uses these parameters in fuzzification and fuzzy weighted mean process. The value of fuzzy weighted mean for all fuzzy sets is compared with fuzzy mean and the closest value is output of this module.

Fig. 2
figure 2

Schematic diagram of intelligent filtering controller

Now we explain these processes in the following subsections one by one.

4.1 Intelligent fuzzy controller

Intelligent fuzzy controller forms the major component of the noise removal module. Fuzzy logic is very useful when a crisp decision is not possible due to high level of uncertainty. Since a corrupted image inherently contains a high level of uncertainty, so the image can be considered as an array of fuzzy variables. Fuzzy controller is designed to create five fuzzy membership functions for five fuzzy sets, namely, VDK (Very Dark), DK (Dark), MD(Medium), BR(Bright) and VBR(Very Bright). Therefore, each input pixel intensity p(k,l) is considered as a fuzzy variable, and the degrees of membership for this pixel are calculated for the five fuzzy sets VDK, DK, MD, BR and VBR. A 3 × 3 window is used to scan the entire image from left to right and top to bottom. Each element is considered as a fuzzy variable and their membership degrees are calculated. These memberships represent the degree of brightness for each input pixel. Equation 4 defines the trapezoidal membership

Function f A (x) for a fuzzy set A [10].

$$ f_{A} (x) = \left\{ {\begin{array}{*{20}c} {{0,}} & {{x < a_{A} }} \\ {{\frac{{{\left( {x - a_{A} } \right)}}}{{{\left( {b_{A} - a_{A} } \right)}}},}} & {{a_{A} \leqslant x < b_{A} }} \\ {{1,}} & {{b_{A} \leqslant x < c_{A} }} \\ {{\frac{{{\left( {d_{A} - x} \right)}}}{{{\left( {d_{A} - c_{A} } \right)}}},}} & {{c_{A} \leqslant x < d_{A} }} \\ {{0,}} & {{x \geqslant d_{A} }} \\ \end{array} } \right. $$
(4)

The parameters of the fuzzy set A are denoted by [a A b A c A d A ], which are calculated using fuzzy number construction process discussed in section 4.4.

Furthermore, all the membership degrees belonging to each membership function are separately used to calculate fuzzy weighted means. Consequently, the outputs will be five crisp values calculated using the following equation.

$$ Output_{A} = \left\{ {\begin{array}{*{20}c} {{\frac{{{\sum\limits_{i = 1}^9 {f_{A} {\left( {x_{i} } \right)}*x_{i} } }}}{{{\sum\limits_{i = 1}^9 {f_{A} {\left( {x_{i} } \right)}} }}}}} & {{if\,{\sum\limits_{i = 1}^9 {f_{A} {\left( {x_{i} } \right)} > 0} }}} \\ {0} & {{otherwise}} \\ \end{array} } \right. $$
(5)

Where Ouput A represents output associated with fuzzy membership function having fuzzy set A, AVDK, DK, MD, BR and VBR whereas x i denotes the corresponding pixels value for \( i = 1,2, \ldots, 9 \) and f A (x i ) represents the membership degree of x i in fuzzy set A.

4.2 Fuzzy mean process

Fuzzy mean process is designed to create fuzzy membership function using fuzzy set A having parameters \( A = \left[ {\begin{array}{*{20}{c}} 0 & {{B_{{mean}}}} & {{C_{{mean}}}} & {255} \\ \end{array} } \right] \).

Equation 5 is used in the fuzzy mean process to calculate the fuzzy mean value of the input variables for the window. Fuzzy mean membership function having parameters \( A = \left[ {\begin{array}{*{20}{c}} 0 & {{B_{{mean}}}} & {{C_{{mean}}}} & {255} \\ \end{array} } \right] \) is shown in the Fig. 3. Fuzzy mean process is used to find the closest fuzzy weighted mean calculated through fuzzy controller, which is considered as the final output of the noise removal.

Fig. 3
figure 3

Fuzzy mean membership function

4.3 Histogram estimation process

The proposed technique relies on the histogram statistics of the uncorrupted image for obtaining the membership functions. For this purpose histogram estimation technique [22] is used to obtain the histogram of the uncorrupted image.

Histogram estimation algorithm takes histogram of the corrupted image and the noisy pixels detected in the noise detection module as input. The algorithm then estimates the number of pixels present in each gray level, which are further used in the fuzzy number construction process to obtain the membership functions.

To proceed, we first define the intensity histogram H corr (g) of the corrupted input image with gray levels in the range 0–255. That is, H corr (g) denotes the number of pixels having gray level \( g,g = 0,1,2, \ldots, 255 \). Let H noisy be defined as the intensity histogram of the pixels belonging to the set N pixels . Furthermore let H est (g) denote the estimated histogram of the uncorrupted image. Figure 4 shows the comparison of the original and estimated histograms calculated using histogram estimation algorithm given in Fig. 5.

Fig. 4
figure 4

Original and estimated histograms of Lena image corrupted with salt and pepper impulse noise a. Lena image with noise corruption rate = 0.1 b. Comparison of estimated histogram of (a) with the original histogram (c) Lena image with noise corruption rate = 0.5 (d) Comparison of estimated histogram of (c) with the original histogram

Fig. 5
figure 5

Histogram estimation algorithm

4.4 Fuzzy number construction process

Fuzzy number construction process uses the estimated histogram to obtain the parameters of the five fuzzy membership functions used in fuzzy controller instead of using the original image histogram or image database used. Complete algorithm of the fuzzy number construction process is given in [10]. Parameters of the five fuzzy sets discussed in fuzzy controller are given in the following equation.

$$ \left. {\begin{array}{*{20}{c}} {vdk = \left[ {\begin{array}{*{20}{c}} {{a_{{vdk}}}} & {{b_{{vdk}}}} & {{c_{{vdk}}}} & {{d_{{vdk}}}} \\ \end{array} } \right]} \\ {dk = \left[ {\begin{array}{*{20}{c}} {{a_{{dk}}}} & {{b_{{dk}}}} & {\,\,{c_{{dk}}}} & {\,\,{d_{{dk}}}} \\ \end{array} } \right]} \\ {md = \left[ {\begin{array}{*{20}{c}} {{a_{{md}}}} & {{b_{{md}}}} & {{c_{{md}}}} & {{d_{{md}}}} \\ \end{array} } \right]} \\ \begin{gathered} br = \left[ {\begin{array}{*{20}{c}} {{a_{{br}}}} & {{b_{{br}}}} & {{c_{{br}}}} & {{d_{{br}}}} \\ \end{array} } \right] \hfill \\ vbr = \left[ {\begin{array}{*{20}{c}} {{a_{{vbr}}}} & {{b_{{vbr}}}} & {{c_{{vbr}}}} & {{d_{{vbr}}}} \\ \end{array} } \right] \hfill \\ \end{gathered} \\ \end{array} } \right\} $$
(6)

Using the fuzzy number construction process, the fuzzy sets constructed for test images Lena, Cameraman, Baboon and Albert are shown in Fig. 6. In Fig. 6, the five fuzzy sets vdk, dk, md, br, and vbr are drawn in different colors. Each fuzzy set is represented by four parameters a, b, c, and d. These parameters define the area of each fuzzy set.

Fig. 6
figure 6

Membership functions obtained for the a Lena b Cameraman c Baboon d Albert images

Furthermore fuzzy mean process sets the membership function parameters to be \( A = \left[ {\begin{array}{*{20}{c}} 0 & {{B_{{mean}}}} & {{C_{{mean}}}} & {255} \\ \end{array} } \right] \), where the values of B mean and C mean are experimentally chosen to be b DK and c BR respectively.

5 Detail preservation module

Noise smoothing during noise removal module can potentially destroy some of the edge information from the corrupted image. Main aim of detail preservation module is to preserve the image details which can be damaged during the noise removal process.

Detail preservation module is based on intensity estimation and fuzzy decision processes. These processes are discussed in the following subsection.

5.1 Intensity estimation process

Intensity estimation process is performed on the input variables and is the main contributing factor for preserving the image details along with fuzzy decision process. Mean of the non-noisy pixels of the running window of size 3 × 3 is considered as the output of this process as shown in the following equation.

$$ {I_P} = \frac{{\sum {{x_i}} }}{n} $$
(7)

Where I p is the predicted intensity, x i is the i th non-noisy pixel value in the 8-neigbourhood sub-image, which does not belong to the set of noisy pixels detected in the noise detection module and n is the number of non-noisy pixels in the considered window.

5.2 Fuzzy decision process

Fuzzy decision process requires the computation of four functions which are f diff , f x1, f x2 and f plus in addition to two fuzzy membership functions f large and f small . Outputs of the noise removal module and intensity estimation process are used in the fuzzy decision process as shown in Fig. 7. Function f diff is used to compute the difference between the outputs of the noise removal module and intensity estimation process. Difference computed at this stage is then used to decide the weights given to the output of noise removal module and intensity estimation process using the fuzzy membership functions f large and f small . Figure 8 shows the fuzzy sets small \( ({f_{{small}}}) = \left[ {\begin{array}{*{20}{c}} 0 & 0 & s & l \\ \end{array} } \right] \) and large \( ({f_{{l\arg e}}}) = \left[ {\begin{array}{*{20}{c}} s & l & {255} & {255} \\ \end{array} } \right] \). The parameter l has been found empirically and is set to 72, whereas the value of s is calculated using the following equation

Fig. 7
figure 7

Schematic diagram of detail preservation module

Fig. 8
figure 8

Membership functions f large and f small

$$ s = l*{f_{{mean}}}({I_e}) $$
(8)

i.e. l times the degree of predicted intensity in the fuzzy mean membership function is considered as the value of s.

6 Experimental results

In this section, the performance of the proposed method (FBINR) has been compared with some of the state-of-the-art methods used to reduce impulse noise from digital grayscale images. The experiments were carried out on the well-known test images: “Lena”, “Cameraman”, “Baboon” and “Albert”. These images were of 256 × 256 pixels in size. The capability of the proposed approach has been tested using the well known image quality measures. Image processing applications developed over the years have mostly used error measures based on difference or structural properties of an image. Peak-signal-to-noise ratio (PSNR) and mean square error (MSE) are global error measures based on the differences between the original and the filtered images without considering the structural information. These measures do not carry any information about how well the structural information is preserved during the filtration process. Whereas the structural similarity index measure (SSIM), proposed by Wang et al [21] is based on the hypothesis that the human visual system is highly adaptive for extracting structural information. The objective quantitative measures that have been used in the present studies are the mean square error (MSE), the peak signal-to-noise ratio (PSNR) and the structural similarity index measure (SSIM). The MSE and PSNR quantitative measures are defined by the following equations

$$ MSE(F,O) = \frac{1}{{MN}}\sum\limits_{{i = 1}}^M {\sum\limits_{{j = 1}}^N {{{\left( {O(i,j) - F(i,j)} \right)}^2}} } $$
(9)
$$ PSNR(F,O) = 10{\log_{{10}}}\frac{{{S^2}}}{{MSE(F,O)}} $$
(10)

where O is the original image, F is the restored image of size NM, and S is the maximum possible intensity value (for 8-bit images the maximum is 255).

The comparison of FBINR has been performed with the median filter (MF), histogram based fuzzy filter (HFF) [22] and Lee et al’s novel fuzzy filter (NFF) [9], detail preserving fuzzy filter (DPFF) [6] and modified histogram based fuzzy filter (MHFF) [7].

We have tested the performance of our approach by considering four scenarios. Firstly the performance of the proposed method has been tested for the test images corrupted with impulse noise having different corruption rate. Secondly the performance is tested for different images corrupted with impulse noise having same corruption rate. Thirdly the performance based on detail preservation is tested for different images corrupted with different impulse noise rates. Fourthly the sensitivity analysis is performed by using different intensity estimation processes. The results indicate that the proposed technique outperforms the other competitive approaches.

6.1 Scenario 1

In this scenario we have considered “Albert” and “Lena” as the test images. The test images are degraded with long tailed and salt & peppers impulse noise having corruption rate between 0.1 and 0.9. For each technique results were averaged over 20 experiments. Table 1 gives the quantitative comparison between different methods based on MSE, PSNR and SSIM, where the “Lena” image is corrupted with salt and pepper impulse noise. It can be observed that the proposed approach gives superior performance against the impulse noise (within 0.1–0.9 range) as compared to the rest of the methods. Proposed method gives much better results in case of additive long tailed impulse noise as shown in Table 2. It can also be observed visually from Figs. 9 and 10, that the proposed technique removes the noise and preserves the image details better than the other competitive techniques.

Table 1 Comparison of de-noising methods for Lena image degraded with salt and pepper impulse noise having corruption rate ρ, where ρ = 0.1 to 0.9
Table 2 Comparison of de-noising methods for Lena image degraded with additive long tailed impulse noise having corruption rate ρ, where ρ = 0.1 to 0.9
Fig. 9
figure 9

a Original Cameraman image b Image corrupted with 20% additive long tailed impulse noise c After the HFF method (PSNR = 33.71) d After NFF method (PSNR = 34.99) e After MF method (PSNR = 35.59) f After MHFF method (PSNR = 33.79) g After DPFF method (PSNR = 36.85) h After the proposed FBINR method (PSNR = 37.29)

Fig. 10
figure 10

a Original Lena image b Image corrupted with 30% salt and pepper impulse noise c After the HFF method (PSNR = 34.063) d After NFF method (PSNR = 32.972) e After MF method (PSNR = 34.311) f After MHFF method (PSNR = 34.645) g After DPFF method (PSNR = 37.5) h After the proposed FBINR method (PSNR = 37.848)

6.2 Scenario 2

In this case we considered different images as test data. Four different images Lena, Cameraman, Albert and Baboon are considered. These images are then corrupted with 30% impulse noise. Performance analysis of the proposed approach with different approaches is carried out in terms of MSE, PSNR and SSIM as shown in Table 3.

Table 3 Comparison of de-noising methods for different test images degraded with salt and pepper impulse noise having corruption rate ρ = 0.3

Restoration results show that the proposed technique works consistently well for the entire test images that were degraded with salt and pepper impulse noise. The results showed that proposed technique provides substantial improvement over the other filters.

6.3 Scenario 3

In this case, we have also considered all the images as test data which includes Lena, Cameraman, Albert and Baboon. These images are then corrupted through salt and pepper impulse noise with noise rate ranging from 0.1–0.9. The structured similarity index measure is used to show that the proposed technique preserve the image details much better than the other filtering methods. As shown in the Fig. 11, the proposed method outperforms the other methods in terms of structural similarly index measure.

Fig. 11
figure 11

SSIM of the compared approaches, images are corrupted with salt and pepper impulse noise p, where p = 0.1 to 0.9 a Lena b Cameraman c Baboon d Albert

6.4 Scenario 4

In this scenario, we performed the sensitivity analysis. Analysis is performed on all the test images. In this case, we tested our technique by changing the intensity estimation process, which plays the key role in preserving image details, in our proposed model. The intensity estimation process was changed in three different ways, as explained in the sequel.

6.5 Case 1

Intensity estimation is performed by taking the simple averaging of the 3 × 3 window and SSIM is calculated for the whole range of corruption rate. Figure 12 shows that even at lower noise rates, the intensity estimation process used in our technique produces much better results in terms of detail preservation.

Fig. 12
figure 12

Sensitivity Analysis of the proposed approach with averaged intensity estimation a Lena b Cameraman c Baboon d Albert

6.6 Case 2

In this case the intensity estimation process is performed by taking the median of non-noisy pixels. The comparison based on SSIM for all the test images is shown in Fig. 13. The estimation using median of non-noisy pixels performs equally good for low noise rates, but as we increase the noise rate, the detail preserving capability of the proposed approach shows a better performance for all the test images.

Fig. 13
figure 13

Sensitivity analysis of the proposed approach with non-noisy median intensity estimation a Lena b Cameraman c Baboon d Albert

6.7 Case 3

Here the median of the whole window is considered as the intensity estimation process. SSIM based comparison is shown in Fig. 14, which indicates that the median as the intensity estimation process works equally well as the proposed technique at low noise rates but at higher noise rates, for most of the test images the proposed techniques preserve much more image details.

Fig. 14
figure 14

Sensitivity analysis of the proposed approach with median intensity estimation a Lena image b Cameraman image c Baboon image d Albert image

7 Conclusion

In this paper, a fuzzy based impulse noise reduction (FBINR) method is introduced. FBINR includes noise detection, noise removal and detail preservation modules to perform impulse noise removal along with details preservation in an efficient and effective manner. From the experimental results, we found that the proposed technique provides much better performance than the other state-of-the-art filters in terms of local as well as global error measures. Sensitivity analysis for the proposed technique is performed by changing the intensity estimation process in three different ways. This analysis proves that the intensity estimation process used in the proposed technique is the main contributing factor in fuzzy decision process to preserve image details. Quantitative evaluation of the FBINR technique shows the superior noise removal and edge preservation capability in comparison to other techniques. In addition to noise removal, use of separate detail preservation module in proposed technique maintains image details while removing noise in better way. This makes the proposed method to be more efficient than other techniques. Work is already in progress to extend the capability of FBINR to process color image and to filter different types of noise.