Fuzzy Filtering Method for Color Videos Corrupted by Additive Noise

A novel method for the denoising of color videos corrupted by additive noise is presented in this paper. The proposed technique consists of three principal filtering steps: spatial, spatiotemporal, and spatial postprocessing. In contrast to other state-of-the-art algorithms, during the first spatial step, the eight gradient values in different directions for pixels located in the vicinity of a central pixel as well as the R, G, and B channel correlation between the analogous pixels in different color bands are taken into account. These gradient values give the information about the level of contamination then the designed fuzzy rules are used to preserve the image features (textures, edges, sharpness, chromatic properties, etc.). In the second step, two neighboring video frames are processed together. Possible local motions between neighboring frames are estimated using block matching procedure in eight directions to perform interframe filtering. In the final step, the edges and smoothed regions in a current frame are distinguished for final postprocessing filtering. Numerous simulation results confirm that this novel 3D fuzzy method performs better than other state-of-the-art techniques in terms of objective criteria (PSNR, MAE, NCD, and SSIM) as well as subjective perception via the human vision system in the different color videos.


Introduction
Image filtering has a wide field of applications such as image processing, computer vision, telecommunications, medicine, satellite imaging, and robots, where the main objective of the denoising procedure is to detect, filter, or remove undesired noise from a color image and videos. There exist different reasons why such noise arises, such as nonuniform lighting, random fluctuations in an object's surface orientation and texture, sensor limitations, and nonideal transmission. Noise affects not only the performance of an image in a specific task but also its perceived quality [1][2][3]. The most common type of noise encountered in practice is the additive noise that is generally assumed to be a stochastic process with a zeromean Gaussian distribution and known variance 2 and in most cases spatially independent. The additive model is most appropriate when the noise in the model is independent of an image. The principal difference in contamination by additive noise is that every pixel of an image is corrupted; nevertheless, such pixels can be recovered by subtracting the random additive error. There exist other kinds of noise, such as speckle noise common in ultrasonic and SAR imaging and impulsive noise [4,5]. There are many techniques for filtering different types of noise, among which the most important is to design an adaptive algorithm that considers the local information of texture, edges, and color features of an image. Some of the techniques commonly used in the filtering practice are based on the concept of adaptive vector median filtering [6][7][8]. Efficient filtering should be performed by obtaining a valid weighting procedure for the pixels in the vicinity of a central one that should be denoised [9][10][11][12][13][14][15][16][17].
An important difference between image and color videos filtering is that in videos it is possible to use previous (and/or future) frames for better pixel denoising in the actual frame. However, when two or more frames are processed together for noise removal local motions should be compensated 2 The Scientific World Journal between different frames, because in an other case they can introduce motion blur and ghosting artifacts. The literature reveals many approaches focused on this task, which is performed to match a central pixel with neighboring ones in a sliding window of the current frame with the most similar central pixel and neighboring pixels in an analogous window located in the neighborhood of the neighboring frames [18][19][20][21][22][23][24]. Additionally, there exists a high level of correlation between the neighboring frames in a video when local temporal motions can be considered to be very small. This gives an excellent opportunity to increase the number of pixels with high similarity in the spatiotemporal stage of filtering, increasing denoising quality for videos [25,26]. Other filtering algorithms are focused on wavelet-based video encoders and filters that estimate motions, obtaining better performance than the spatial domain denoising techniques [24,[27][28][29][30][31][32][33][34][35].
Fuzzy-based filters for the reduction of additive noise and other kinds of noises (mainly impulsive noise) in color videos have been successfully applied as well [27,36,37]. The advantage of fuzzy filtering techniques is in the efficient preservation of image features, such as edges, chromaticity characteristics, texture, and fine details, while corrupted pixels are being filtered. Fuzzy logic filters are established by membership functions and fuzzy rules based on human knowledge and the ability to adapt their characteristics to the current image and noise [38][39][40][41][42][43][44][45][46].
In the literature, there are reports of denoising techniques that employ only temporal [47] or spatiotemporal information [36,43,48].
Several promising filtering procedures have been developed over the past five to six years, demonstrating good performance quality. These algorithms have shown sufficiently good performance results in removing additive noise, exhibiting good preservation of edges, textures, sharpness, and the chromatic properties of the filtered color image or videos. Let us present a short review of some of these techniques. In a later section, the best of these techniques are compared with the novel fuzzy filtering approach.
Yin et al. [26] report a linear minimum mean squared error (LLMMSE) spatiotemporal filter with adaptive motion compensation. This technique increases the performance quality of the 3D-LLMMSE filter. The spatiotemporal adjacent homogeneous pixels that match correctly the current pixel are included in the filtering data for the noise reduction; on the other hand, the outlier pixels whose intensities differ from the current pixel value are excluded from the filtering data. The filter achieves higher levels of PSNR with respect to other similar techniques such as 2D-LLMMSE, TA, and 3D-LLMMSE.
Jovanov et al. [27] use a motion estimation obtained in a video codec in a proposed video denoiser (WMVCE), introducing a motion field filtering step where the output of the same motion estimator is applied as an input for the coding scheme. In this filter, the temporal filtering precedes spatial filtering, and the remaining noise requires adaptivity of the spatial filter to the local noise statistics. This technique performs better than SEQWT and WST filters in terms of visual quality as well as in PSNR values for about 1 dB.
Melange et al. [36] report a fuzzy-logic-based filter (RFMDAF) focused on an additive white Gaussian noise model that improves the detail and motion adaptive multiple class averaging (MCA) filter. The method is first explained in the pixel domain for grayscale sequences and is later extended to the wavelet domain and to color videos. The proposed RFMDAF outperforms other state-of-the-art filters of comparable complexity when it is applied in different videos.
Kravchenko et al. [49] report a three-dimensional spacetime filtering algorithm based on fuzzy sets theory (FDARTF G). This denoising technique uses the gradient pixel values of the R, G, and B channels and the angular differences between pixels, filtering the neighboring frames on the basis of fuzzy logic rules. Simulation results evaluated via criteria of PSNR, MAE, and NCD have confirmed the superiority of this framework in comparison with VMMKNN and VGVDF G filters.
Dabov et al. [50] present a video filtering method created on highly sparse signal representation in the local 3D transform domain (VBM3D). The 3D data array called "group" is performed by stacking together blocks found to be similar to the currently processed one. The formed 3D group is filtered by a 3D transform-domain shrinkage. The enhancement of this algorithm is reached by using a two-step algorithm where an intermediate estimate is produced by grouping and collaborative hard-thresholding and then used both for improving the grouping and for applying collaborative Wiener filtering.
The nonlocal means (NLM) filtering technique is employed for denoising of still images corrupted by additive noise and it uses all the possible self-predictions and selfsimilarities that the image can provide to determine the pixel weights for filtering the noisy image. Several filtering algorithms are reported based on this technique [51][52][53].
Generally, the principal objective of different approaches to denoising mixed noises (additive and impulsive) consists of the detection and suppression of random spikes followed by filtering out additive noise [61,62].
The filtering scheme proposed in this paper is based on fuzzy sets. A special characteristic of fuzzy filters is their selfskill to adapt based on local image data. The main purpose of a fuzzy filter is to remove noise from pixels that have been corrupted while preserving edges, fine features, textures, and chromaticity characteristics. For noisy pixels, the output of the filter is a specially selected pixel or is the result of the filtering method, which applies fuzzy rules to pixels located at the neighborhood of the contaminated one. Along the processing of neighboring frames, it is necessary that the filter has the ability to distinguish between possible local motions in the objects, fine details, and corrupted pixels. Fuzzy sets are a generalization of classical sets. While classical sets over a universe can be characterized using to {0, 1} mappings, fuzzy sets are modeled by to [0, 1] mappings (membership functions). An element ∈ is or is not a member of a set in classical set theory. But in fuzzy set theory, a more gradual transition between membership and nonmembership is permitted; the degree of membership is between 0 and 1. For that reason, fuzzy sets are useful for processing human knowledge where linguistic variables (e.g., large, small, etc.) are used. For instance, a difference in grey level can be estimated as "LARGE, " "NO LARGE, " or "LARGE" to some level.
Fuzzy rules are linguistic IF-THEN constructions that have the general form "IF , THEN ," where and are the collections of propositions containing linguistic variables. The component of the rule, , is called the premise or antecedent, and is the consequence of the rule. A fuzzy membership function defines how each point in the input space is mapped to a membership value (or degree of membership) between 0 and 1. The membership function must vary between 0 and 1. The function can take any form and is defined by the programmer from its own point of view of efficiency, convenience, and simplicity.
Fuzzy filters are based on the observation that noise causes a small fuzzy derivative, whereas a large fuzzy derivative is caused by the presence of fine details or edges. Fuzzy rules can be applied in several directions and consider changes that can occur, such as local variations and variations in edges and fine features. In image filtering, fuzzy rules are able to distinguish between noisy pixels, edges, fine image features, and smoothed areas. These distinctions allow the main characteristics of an image to remain unchanged. In color videos, interchannel processing and motion detection algorithms are used to preserve fine details and edges, and only corrupted pixels should be filtered.
The Fuzzy-Multichannel-Additive-Noise-Suppression (FMANS 3D) filter is designed to suppress additive noise that corrupts images and color videos while preserving images features such as edges, chromaticity characteristics, texture, and fine details. Unlike other state-of-the-art methods, this novel technique consists of three principal filtering steps: spatial, spatiotemporal, and spatial postprocessing. In the first spatial step, the eight gradient values in different directions for pixels located in the vicinity of a central one as well as the R, G, and B channel correlation between analogous pixels are used, where the degree of contamination is estimated by employing novel fuzzy rules that allow for better preservation of image features. In the second spatiotemporal filtering step, two video neighboring frames are analyzed together, where the calculated similarity measure between pixels in the neighboring frames allows finding an interframe sample of the most similar pixels. Possible local motions between consecutive frames are estimated using a block matching procedure in different directions to finally perform interframe filtering. In the final stage, the spatial postprocessing filtering stage, the edge and smoothed regions of a current frame are distinguished using different filtering procedures. Numerous simulation results obtained for color videos with different texture characteristics, edges, color properties, and local motions have confirmed the superiority of this novel 3D fuzzy framework over other filtering techniques in terms of objective criteria (PSNR, MAE, NCD, and SSIM) as well as the subjective perception via human visual system. Additionally, the novel framework uses only two video frames concurrently, which reduces the computational processing time and memory requirements. This paper is structured as follows: in Section 2 the proposed filter is explained; Section 3 presents and analyzes the simulation results and shows the performance evaluation and the experimental results are discussed; in Section 4 conclusions are presented.

Fuzzy Video Color Filter
The design of the FMANS 3D filter is divided into three stages: spatial, spatiotemporal, and spatial postprocessing steps. In the first spatial step, a single video frame is processed. The basic and six related gradient values existing between a central pixel located in a sliding window with respect to the pixels located in its vicinity are calculated. Applying designed fuzzy rules, the "Fuzzy Similarity" value is computed, and if this similarity is considered "LARGE, " a weighted mean fuzzy filter is used with the weights determined from introduced fuzzy rules, ending the current filtering step in the output denoted bŷ( , ) 1 . In the opposite case, if the "Fuzzy Similarity" is considered "NO LARGE, " the fuzzy similarities and fuzzy weights are performed by taking into account the information in each specific color channel (R, G, or B) and employing the correlation between them. Lastly, in this step, weighted mean fuzzy filtering is executed with fuzzy weights computed from similarity measures for each channel, which include the channel and interchannel pixel properties, finally forming the output̂( , ) 2 .
In the second step, the spatiotemporal procedure is performed. Two neighboring frames are analyzed concurrently based on the difference between current ( ) and previous ( − 1) frames. The "Fuzzy Similarity" set that allows the estimation of interframe changes. If this similarity is considered "LARGE, " then a weighted mean fuzzy filter is applied for a common sample that consists of the pixels in the analogous sliding windows from the current ( ) and previous ( − 1) frames according to designed fuzzy rules that determine the weights for filtering, finally forming the output̂( , ) 1 of this part of the step. In the opposite case, when the fuzzy similarity is considered to be "NO LARGE, " the developed filtering scheme involves a block matching [50,63] procedure that estimates the possible local motions between neighboring ( ) and ( −1) frames in the vicinity of a pixel in a sliding window. The block matching procedure is performed by calculating the differences between the pixel values located in the sliding window of a current frame ( ) and an analogous moving (in possible eight directions) sliding window in the previous frame ( −1). In the case of successful local motion estimation, when the "Fuzzy Motion Similarity" is "LARGE, " the fuzzy Alfa trimmed mean (Alfa-TM) filtering method [13] with fuzzy weights for common samples consisting of the pixels in the sliding window from the current frame ( ) and moved sliding window from previous ( − 1) frames is used, yielding the output̂( , ) 2 .
in t th frame j + l + l 1 )| Figure 1: The general denoising scheme of the proposed filtering technique.
In the third step, if "Fuzzy Motion Similarity" is "NO LARGE, " considering that it is not possible to estimate well the local motion between groups of pixels in neighboring frames, an additional postprocessing procedure is performed: detection of the edges and their separation from smoothed regions. The fuzzy set "Edge Detection Similarity" is introduced using only the information from the actual frame ( ). Therefore, if the "Edge Detection Similarity" is considered "LARGE, " then the Alfa-TM fuzzy weighting filtering in frame ( ) is executed with weights based on computed fuzzy similarities, yielding the output̂( , ) 3 . In the opposite case, when the plain areas are detected and "Edge Detection Similarity" is considered "NO LARGE, " the weighted mean fuzzy filter in frame ( ) is applied with weights based on fuzzy similarities, yielding the output̂( , ) 4 . Figure 1 presents the details of the procedures employed in the proposed filter. For any direction, the basic gradient value and the six related gradient values are described by ( , ) values in the range {−3, −2, −1, 0, 1, 2, 3}. The related gradients are introduced to avoid spreading edges and fine features. Gradient values are employed to determine the degree of noise (from the impulsive point of view) and a level of "noise" for a central pixel, because in the presence of additive noise it is assumed that all the pixels have been contaminated. In this step, one basic gradient denoted by "B" and six related gradients denoted by "R1, " "R2, " "R3, " "R4, " "R5, " and "R6" are employed (see Figure 2) [43,64]. Once we have computed the gradient values in the 7 × 7 sliding window, it is possible to find the degree of corruption for a central pixel in the "Fuzzy Similarity" set.
To estimate the noise contamination in the central pixel of a 7 × 7 sliding window, we introduce the "LARGE" and "NO LARGE" fuzzy sets in the following equations. A large membership degree (i.e., close to 1) in the fuzzy set "NO LARGE" indicates that the central pixel has sufficiently small level of noise contamination (noise), whereas, in the opposite case, a large membership degree in the fuzzy set "LARGE" indicates that the central pixel has a large degree of corruption introduced by noise. Membership functions can be designed from basic functions, for example, piecewise linear functions, a sigmoid function, quadratic and cubic polynomials, or the Gaussian function. Because of their simplicity and convenience, we use Gaussian membership functions [43,49] to compute the membership degrees of fuzzy gradient values: The values of the parameters used in (1) and (2) were determined based on the optimal values of the PSNR and MAE criteria (see Section 3.2). Fuzzy Rules 1 and 2 are proposed to resolve the following hypothesis: a central pixel belongs to an image detail or it has a large degree of corruption that determines how noisy it is.
In addition, the basic gradient "B" and the six related gradients "R1, " "R2, " "R3, " "R4, " "R5, " and "R6" are employed to avoid image blur detecting the presence of either plain areas or edges ( Figure 2). In this case, the related gradient values are computed in the same direction as shown in (Figure 2), specifically, the SE direction fixed for the basic gradient. Thus, for the SE direction, where ( , ) = (−1, 1), the basic gradient value is ∇ B , and the six related gradient values are ∇ R1 , ∇ R2 , ∇ R3 , ∇ R4 , ∇ R5 , and ∇ R6 . If these gradient values are "NO LARGE" in the "Fuzzy Similarity" set, then the pixel ( , ) is considered to be corrupted.
The first fuzzy rule (see Table 1) defines the fuzzy gradient value ∇ for a specific direction , which is contained in the "Fuzzy Similarity" set "LARGE. " The central pixel of the color channel is considered highly noisy if its basic "B" gradient value differs from the six related gradient values "R1, " "R2, " "R3, " "R4, " "R5, " and "R6" (Figure 2).
In this case, the logic operations "AND" and "OR" are defined as the following algebraic operations: AND = ⋅ and OR = + − ⋅ .
If a central pixel is considered to be noisy, it is necessary to determine how "noisy" it is.
Using Fuzzy Rule 2, the noisy factor Γ is obtained from the fuzzy gradient values in Fuzzy Rule 1 for each direction (see Table 1).
The noisy factor, Γ , is computed gathering information from eight directions and is employed as a measure to distinguish between a highly noisy and a low noisy pixel, determining the amount of noise present in a central pixel of the given color component in the "Fuzzy Similarity" set "LARGE. " We present the experimental justification for this threshold in accordance with the optimal values of MAE and PSNR criteria (see Section 3.2). If the level of noise is lower than a certain threshold (Γ ≤ Th 1 ), then the pixel should be filtered by employing a weighted mean fuzzy filter with the determined fuzzy weights, forming the output̂( , ) 1 ( Figure 1). In the filtering procedure, the fuzzy gradient values of the corrupted pixels are used as weights.
If a pixel is strongly corrupted when the degree of noise in a central pixel is higher than the threshold (Γ ≥ Th 1 ), we propose the application of additional filtering to each channel datum by employing the existing interchannel correlations between the R, G, and B channel components.
A correlation between the R, G, and B channels arises if a certain number of local differences coincide with neighboring channel components.
Using membership functions from (1) and (2), it is possible to obtain the fuzzy similarities degrees R , G , and B , which represent the differences between the other channels components and the values of neighboring color components.
The main idea of this procedure is based on the existence of two different relationships among the central component and its neighboring color components. Two different tasks are determined through this procedure: (a) the quantity of similarities between the central pixel and its neighbors in the same color band and (b) the quantity of similarities between the central window pixel in a certain color band and other pixels located in the same position but in a different color band.
The pixel located at the center of the sliding 3 × 3 window is defined as = ( R , G , B ), and each pixel located in the vicinity of the same window is defined as = ( R , G , B ); in addition, the neighboring pixels of the central pixel are To calculate the absolute difference between the central component 0 and its neighbors, the following procedures are carried out [43]: The Scientific World Journal THEN the fuzzy gradient value ∇ is LARGE.

Fuzzy Rule 2.
Defining the fuzzy noisy factor Γ is LARGE)))))))), THEN the noisy factor Γ is LARGE. Fuzzy Rule 3. Defining the membership degrees R for the red component R in the fuzzy set "noise free" Fuzzy Rule 6. Defining the vectorial fuzzy gradient value ∇ into the fuzzy similarity set LARGE THEN the fuzzy similarity value ∇ is LARGE.

Fuzzy Rule 7.
Defining the fuzzy noisy factor THEN the noisy factor is LARGE.
THEN the fuzzy edge detection similarity gradient value ∇ is LARGE. The Scientific World Journal 7 where = 1, . . . , 8 and Δ R , Δ G , and Δ B represent the differences for the R, G, and B components, respectively. The membership degree in the fuzzy set "NO LARGE" is established according to the desired behavior; that is, a relatively small difference is characterized by a "LARGE" membership degree. We use the same Gaussian membership function (2). The values of the parameters ∇ 2,inter = 9 and 2 2,inter = 750 employed in membership function (2) at this filtering stage have been chosen experimentally from numerous simulations according to the optimal values of PSNR and MAE criteria.
The membership degrees obtained, (Δ R ), (Δ G ), and (Δ B ), in the fuzzy set "NO LARGE" are used to determine if R , G , and B are similar to their neighbors. Let us consider the red component only; the procedures for the G and B color bands are analogous. To ensure that the most relevant differences are considered, the (Δ R ) measures are ranked in descending order. Using (2), the similarities between R and the closest neighbors are Then, the similarity measures between pixels in the selected color channel and the corresponding pixels from the other two color bands are calculated, that is, In order to compute this, the membership degree of the next fuzzy set is obtained using the chosen parameter values ∇ 2, 1 2 = 0.004 and 2 2, 1 2 = 0.03 determined experimentally: The membership degrees RG and RB indicate whether the local difference between the center pixel and the pixel in position in the R component is similar to the local differences in the G and B components. The computed RG and RB are ranked in descending order, and the similarity measure is calculated as follows: Next, Fuzzy Rule 3 defines the condition in which the R component pixel can be characterized as exhibiting a low level of noise (see Table 1).
The values of the parameters used in membership function (2) during the interchannel filtering step were selected according to the best values obtained for the PSNR and MAE criteria after numerous simulations ∇ 2,inter = 9, 2 inter = 400, ∇ 2, 1 2 = 0.004, and 2 1 2 = 0.03 (see Section 3.2). After computing Fuzzy Rule 3, the fuzzy weights in the fuzzy set "Noise-free" are obtained as follows: Fuzzy Rules 4 and 5 are developed to compute the fuzzy weights in the filtering procedure for the central pixel in its color band R as well as the same pixel with respect to the other color bands (see Table 1).
Similar fuzzy rules should be applied for the other two channels: These fuzzy weights are used in this step of the noise suppression algorithm, where the weights determined according to Fuzzy Rule 5 and (5) are used in the mean filtering procedure:̂= ∑ ∑ .
The Gaussian membership functions presented in (1) and (2) are employed using parameters that have been adjusted for the difference frame, ( , ), in the "Fuzzy Similarity" set according to the optimal values of the PSNR and MAE criteria.
A procedure similar to that carried out in the spatial step is now executed in the spatiotemporal step. It is necessary to determine how noisy the difference pixel is, using the "B, " "R1, " "R2, " "R3, " "R4, " "R5, " and "R6" gradient values as shown in Figure 2 (case for nonmoving frames, 1 = 1 = 0). These values should be employed if the gradient value is considered to be "LARGE" in the "Fuzzy Similarity" set used to analyze a new measure: a second fuzzy noisy factor denoted by , where ≤ Th 2 (see Figure 1). Fuzzy Rule 6 is employed to determine if the fuzzy gradient value is considered to be "LARGE" in the "Fuzzy Similarity" set (see Table 1). Fuzzy Rule 7 defines the fuzzy noisy factor (see Table 1). Assuming that the "Fuzzy Similarity" is "LARGE, " when ≤ Th 2 , where Th 2 = 0.45 (see Section 3.2), then a fuzzy weighted mean fuzzy filter is applied for the common sample that includes the pixels from both analogous sliding windows In the opposite case, when the "Fuzzy Similarity" is considered to be "NO LARGE, " it is necessary to estimate the possible motion between frames ( ) and ( − 1) by analyzing the directions . The developed filtering scheme involves a block matching procedure that estimates the local motion between neighboring frames ( ) and ( − 1).
Let us introduce the parameter , which characterizes the estimated local motion and the threshold Th 3 in this case. When ≤ Th 3 occurs, the local motion between the analyzed parts of the ( ) and ( − 1) frames should be considered. In this case, it is necessary to compute the difference between neighbors of the central pixel in frame ( ) and the pixels located at the analogous positions in the previous frame (testing the eight possible directions ) to determine the most similar parts among the pixels in the current and previous frames.
A global motion model does not reflect local interframe motions. Block matching is a standard procedure used in video processing to compensate for local interframe motions. In this procedure, each of the analogous pixels in a sliding window in the neighboring frames is replaced by a version that is formed from the pixels in the motion-compensated window that coincides with the reference frame. The compensated part of the frame is then established by pasting the best matching block of the neighboring previous frame to the position of the block in the current reference.
In this study, we use the measure of similarity between blocks in form of the mean of the absolute difference (MAD). Moreover, rather than attempting to find the best matches for every block of the reference frame, we consider only blocks where significant motion has occurred because in highly noisy videos there is a strong risk of matching the noise component in smoothed regions. In that case, the interframe noise becomes locally highly correlated.
The criterion MAD that we use to find the highest degree of similarity between the central pixel in the sliding window in frame ( ) and the analogous window in frame ( − 1) [63] is defined as follows: We therefore should ultimately determine the best match minimizing SAD ( , ) ( 1 , 1 ) for the eight directions analyzed, = {N, E, S, W, NW, NE, SE, SW}, varying parameters 1 , 1 . In simulation experiments, we observed that better results can be obtained if the weight 00 for a central pixel is significantly larger than that of other pixels. Thus, the criterion for possible motion in areas surrounding a central pixel ( , ) in frame ( ) is written as follows: This motion estimation should be taken into account if and only if the minimum MAD determined is less than threshold Th 3 : In the case of successful local motion estimation, when the "Fuzzy Motion Similarity" set is "LARGE, " the Alfa-TM filtering with weights based on fuzzy similarities is used for a common sample consisting of the pixels in the sliding window from current frame ( ) and the moved sliding window from the previous frame ( −1). In this step, the fuzzy gradient values computed in both frames are used to obtain the fuzzy weights, where in the fuzzy Alfa-TM filter the most similar neighbors are taken into account, eliminating other outermost neighbors as defined in the filter equation. The output for this procedure is defined aŝ( , ) 2 .
Fuzzy Rule 8 is employed to determine the fuzzy weights of the red component R in the fuzzy Alfa-TM fuzzy filter (see Table 1):̂= where is the number of pixels to be processed from the frames ( ) and ( − 1).

Third Stage: Spatial Postprocessing Filtering.
When the "Motion Fuzzy Similarity" set is considered to be "NO LARGE" ( > Th 3 ), it is difficult to perform motion compensation well. We cannot employ the information gathered from the previous frame ( −1); only the data from the current frame is taken into account. At this point, we introduce the "Edge Detection Similarity" fuzzy set. Fuzzy Rule 9 then helps to determine the presence of edges or plain areas in the frame (see Table 1).
To find these similarities, let us compute the related gradient values "R1" and "R2, " which are used with gradient value "B" to determine the presence of plain areas in the analyzed frame (see Figure 2); in the opposite case, gradient values "R3, " "R4, " "R5, " "R6, " and "B" help to determine the presence of edges.
Considering the foregoing discussion, two different processes should be employed. If the "Edge Detection Similarity" is considered to be "LARGE, " then a fuzzy Alfa-TM filtering is executed in frame ( ) based on fuzzy similarities according to fuzzy weights, as described in Fuzzy Rule 9 and (15).
Fuzzy Rule 10 defines the weights for the Alfa-TM filter R in the case of edge detection (see Table 1): The output for this procedure is defined aŝ( , ) 3 (see Figure 1).
Lastly, for smoothed regions, where "Edge Detection Similarity" is considered to be "NO LARGE, " a weighted mean fuzzy filter in frame ( ) is executed based on fuzzy similarities, where the output for this step is denoted bŷ( , ) 4 (see Figure 1). Fuzzy Rule 11 determines the weight for the mean filter in the fuzzy "Edge Detection Similarity" set (see Table 1).
The Scientific World Journal 9 In this step, the filtering is defined as an averaging procedure with weights as follows:

Performance Criteria.
In order to evaluate the effectiveness of the proposed filter in suppression of additive noise and image detail preservation, the novel filter has been compared with other known techniques. The filtered frames were evaluated according to the following objective criteria. We have employed the PSNR (peak signal-to-noise ratio) used to characterize the noise suppression capabilities of the proposed technique and the MAE (mean absolute error) that measures the level of preservation of edges and fine details [1,14,64,65]. These two metrics are defined in the RGB color space: where the MSE is the mean squared error. The MAE is defined as For both cases in the MAE and MSE criteria, R( , ), G( , ), and B( , ) represent the RGB color components of the original frame. Meanwhile, R ( , ), G ( , ), and B ( , ) represent the color RGB components at the output of the filtered frame.
The standard quality metrics used in the past such as PSNR can be erroneous in some cases. Novel metrics such as SSIM (similarity structural index measure), which match better human subjectivity, are applied to characterize the performance of the algorithm. For monochrome images, the SSIM metric values are defined as follows [66,67]: where " , " " , " and " " are calculated for each color channel.
Here out is the filtered image and " " is the original (uncorrupted) image; the " " represents the luminance similarity, " " characterizes the contrast similarity, and, finally, " " is the structural similarity for a chosen channel (R, G, or B). The justification of the SSIM index can be found in [43,67].
The key idea behind the SSIM index is to recognize that natural images are highly structured and that the measure of structural correlation between the original (uncorrupted) and the filtered image is very important in deciding the overall visual quality. Further, the SSIM index measures quality locally and is able to capture local dissimilarities better. Finally, we calculate the mean value of this quality index: We also use a subjective visual perception presenting for different color video sequences the filtered frames and/or their error images for several better state-of-the art filters to compare the capabilities of noise suppression and detail preservation.

Parameter Selection.
As mentioned previously, the membership functions presented in (1) and (2) are completely determined by their respective parameters. These parameter values, ∇ 1 , ∇ 2 , and 2 , for different stages of the proposed algorithm have been experimentally optimized using the Flowers, Stefan, Foreman, and Tennis sequences (see Figure 3), which all have distinct characteristics. The Flowers video combines very detailed regions with strong edges, such as flower fields, houses, and trees, and homogeneous regions, such as sky backgrounds. The Stefan video features the very rapid motions of a tennis player over a tennis court with additional camera movements in the scene. The Foreman video features moderate head movement of the man against a detailed background that contains objects with strong edges. Lastly, in the Tennis sequence, we deal with the zooming camera and the wall as a detailed background, the lines in the table, and also the fast movements of the players.
The parameters were optimized as follows. The proposed method was applied to each of the previous sequences, which were contaminated in every single color channel with additive noise of different noise levels with variance 2 ranging from 0.0 to 0.030 and with membership function parameters varying over the entire range of possible values. After plotting the optimal parameter values in terms of PSNR and MAE criteria for the different sequences and noise levels, the optimal parameter values of the membership functions were determined. Therefore, the parameters have been determined by the best fit through observations of color sequences with different textures, motions, fine features, and color properties, confirming the robustness of the designed framework. Four   Tables 2 and 3.

Efficiency of the Proposed Filter.
In this section, several experiments were carried out to evaluate and compare the performance of the designed FMANS 3D technique with many state-of-the-art methods. Extensive experiments are conducted on different noisy color videos (Flowers, Stefan, Foreman, and Tennis) in the CIF format (352×288) (Figure 3) demonstrating the superiority of novel framework in the suppression of a noise and preserving the edges, fine details, and color chromaticity. The frames of the color videos were artificially contaminated by additive noise with different values of 2 (from 0 to 0.030) in each color band independently. These videos feature different textures, edge and fine details, chromaticity characteristics, and local motions that are varying from frame to frame.
To validate the superiority of the proposed method FMANS 3D, its performance is compared in terms of PSNR, MAE [1,65], NCD [64], and SSIM [67] of the denoised images. The PSNR, MAE, and NCD are objective criteria measurements, whereas the SSIM better captures the human perception. These objective criteria and subjective perception via human vision system were used to test the performance of the designed filter over an average of 50 consecutive frames against other techniques, such as those developed by 3D-LLMMSE [26], WMVCE [27], RFMDAF [36], FDARTF G [46], VBM3D [50], and NLM [52]. Mentioned filters were computed and used in accordance with their references comparing them with the proposed FMANS 3D framework.
The reason for choosing these filters to compare with the designed technique is that their performances have been compared with various known video color filters, demonstrating their superiority in terms of objective and subjective criteria among all known filtering techniques.
Tables 6, 7, 8, and 9 demonstrate that our proposal outperforms better state-of-the-art techniques according to the objective criteria. The proposed algorithm and the other techniques indicated in the tables were evaluated in terms of the averaged PSNR, MAE, NCD, and SSIM criteria values applied to the four different color videos. As one can see, the designed FMANS 3D technique outperforms other analyzed filters in all the experiments for different color videos demonstrating the robustness in cases of varying texture, color properties, and local motions from frame to frame, exposing the best values for all objective criteria. The behavior of the filters' performance across the videos is illustrated in Figures  4 and 5 for 50 consecutive frames. Again, we can see stable superiority of novel filtering approach in objective criteria values, demonstrating better noise suppression, edge and fine details preservation, and chromaticity characteristics. Also, from these objective criteria values we can conclude that the designed technique performs essentially better than VBM3D algorithm.
The visual quality of some of the restored images can be evaluated from Figures 6 to 9, where for a comparison we show results by the closest competitors NLM [52] and VBM3D [50]. The figures show the filtering frames and their error images for the 20th frame of Flowers (see Figure 6), where it is possible to appreciate that the proposed framework best preserves the leaves and details of the roofs of the houses. In the 20th frame of the Stefan video (see Figure 7), one can observe the better preservation of details in the field and letters located on the front wall compared with the other methods analyzed. Analyzing the 80th frame of the Foreman video ( Figure 8) shows that fine details in the areas of eyes  are better preserved using the proposed framework than when using the other filters. Lastly, in the 81st frame of the Tennis video (Figure 9), it is possible to appreciate by looking carefully that the texture and fine details on the wall are best preserved by our method as well as the preservation of the lines on the table. Overall, as indicated in Tables 6  to 9, one can see that the proposed algorithm is able to suppress the ringing artifacts and provides sharper image edges and objects are preserved better than VBM3D and the other techniques. Other filters are based on a fixed-size 3D search neighborhood for the grouping by block matching technique: as a milestone in the research of image denoising, the VBM3D achieves remarkable results because it fully exploits the sparsity within a single image. In the preprocessing step in the VBM3D, the groups of similar patches within an image are formed into 3D patch cubes. Then, the 3D wavelet procedure is applied as mentioned in the Introduction. This method works well on image frames with abundant repetitive patterns. However, for video frames with unique patches (which have few similar patches in the image), the VBM3D produces suboptimal results. Our proposal as shown in simulation data outperforms the VBM3D results. For video sequences that present numerous plane areas such as Foreman on middle noise intensity ( 2 = 0.003-0.01), the PSNR difference between the designed FMANS 3D and VBM3D filters is of about 0.25 dB (of about 5% in absolute PSNR values), and for high noise intensity ( 2 > 0.015) the designed FMANS 3D filter increases slightly the difference with respect to the VBM3D filter of about 0.32 dB (of about 7.5% in absolute PSNR values). On the other hand, for video sequences that present different moving and changing areas where it is difficult to find similar objects in forming 3D patch cubes (Stefan and Flowers), our FMANS 3D filter seems to achieve better results: of about 0.4 dB (of about 10% in absolute PSNR values) in wide noise intensity range (0.000-0.03). Finally, for the Tennis video where the presence of fast moving subjects, zooming camera, and a detailed wall exist, the difference in the noise intensity range (0.000-0.005) is about 0.3 dB (of about 7% in absolute PSNR values) and for other noise intensity ( 2 > 0.010) the FMANS 3D filter decreases slightly the difference with respect to the VBM3D filter of about 0.25 dB (5% in absolute PSNR values).
Some filtering techniques convert the RGB space into another color space such as * * * or YCbCr color space since the human eye is far less sensitive to some details in chrominance or luminance; according to this, it is acceptable to filter only one component instead of three. Nevertheless, to achieve better results, we use the correlation among the three color bands since the spatial information existing in each one of them provides substantial information. It is exposed from Figures 6 and 7 that the proposed FMANS 3D shows the best performance and it outperforms all of the other methods. In particular, a significant improvement is observed in the videos that contain structured details and smoothed areas such as Flowers (the leaves and details of the roofs of the houses) and Stefan (the public details in the field and letters located on the front wall).
Regarding the subjective visual quality, we find that various image details are well preserved and at the same time very few artifacts are introduced as one can observe this fact in Figures 6 to 9.
It is clear that the complexity of the proposed filter is linear in terms of the number of pixels in the frame. Every pixel is filtered by averaging a constant number of neighborhood pixels, which are all assigned a weight using a constant number of operations.
The proposed FMANS 3D framework provides the best results with significant advantage over the closest competitors. Particularly interesting is the comparison against the VBM3D algorithm.
As shown, the designed FMANS 3D combines sufficiently good detail preservation with good noise removal and appears to outperform other comparable filters. Another advantage is that the presented filtering method employs only two neighboring frames that, in rapidly moving regions, can facilitate spatiotemporal processing.         Our main contributions in this proposal are: (a) employing novel fuzzy rules to select the group of the most similar pixels in the vicinity of estimating one via using the correlation in the color channels (R, G, and B); (b) interframe processing employing the neighboring frames in a video together for better preservation of the features via adjusting the possible local motions; (c) distinguishing and processing separately the areas that present different texture behavior (smoothed regions, edge, and fine features).

Conclusions
A novel 3D filtering framework FMANS for the denoising of color videos corrupted by additive noise is proposed. The framework consists of three principal filtering steps: spatial, spatiotemporal, and spatial postprocessing filtering. The proposed technique is based on fuzzy logic theory in combination with basic and several related gradient values along different directions, interchannel correlations, and employs the previous and current temporal frames. In the spatiotemporal filtering step, two neighboring frames are processed together, where the possible local motions between neighboring frames are estimated, thus increasing the filtering performance. In the postprocessing step, the edge and smoothed regions are distinguished and denoised differently, allowing for better filtering quality to be obtained. Based on the experimental results shown in the previous section for the PSNR, MAE, NCD, and SSIM criteria and a perception analysis via human visual system in the filtered videos, the novel approach was observed to be extremely efficient in reproducing the chromatic characteristics of images. We have demonstrated that this novel framework exhibits better processing performance than the best fuzzy and nonfuzzy filters for color videos with varying texture characteristics, edges, color properties, and local motions, successfully suppressing additive noise over a wide range of intensities and preserving edges and fine image features, demonstrating sufficiently good robustness.
Future work should be performed to improve the current method by incorporating more information to better distinguish between the level of noise in pixels, fine image features, and local motions, designing other fuzzy rules. We believe that the proposed denoising method could be improved by using more sophisticated frameworks, for example, via combining the current fuzzy approach with Wiener collaborating filtering [58] as a next filtering step. Next works will be focused on adaptation of fuzzy-based approach in the processing of the noisy videos under more complex noise models such as additive colored noise and non-Gaussian noise, by modifying the calculation of membership function parameters. Additional efforts will be made in implementing the proposed technique on a DSP platform by Texas Instruments (model TMS320DM648) and in the parallel processing hardware (GPU model QUADRO K2000d by NVIDIA) where an analysis of the processing speeds of better 3D algorithms and computation times will be reported.
However, the computational complexity would significantly increase because these transforms are typically nonseparable and do not have fast algorithms.