1. A method for reducing artifacts in an input image, comprising a processor for performing step of the method, comprising the steps of: generating, on a pixel by pixel basis, a variance image from the input image, in which each pixel has a variance; partitioning the input image into a plurality of blocks of pixels; defining a set of classifications, the set of classifications including smooth, texture, and edge; assigning a particular classification to each block of pixels of the input image according to the variance image, to generate smooth blocks, texture blocks, and edge blocks; and applying, using the processor, a fuzzy filter only to each pixel of each edge block to preserve strong edges, while removing weak edges, in which a fuzzy transformation defines a relationship between a spatial pixel x i and an ordered pixel x j according to a membership function μ F (a, b), where i is a spatial index i =1 , 2,. .. , N, j is an order statistic j =1, 2,. .. , N, X (1) ≦X (2) ≦.. . ≦X (N) , N is a size of a N×N filtering window to which the fuzzy filter is applied, and real numbers a and b represent general variables of the membership function, and in which a particular membership function μ G (a, b) is a Gaussian function e −(a-b) 2 /2ζ 2 , where ζ is a spread parameter, and in which μ F (X c , x c ) =1 for all pixels, and in which an output of the fuzzy filter is y = x ~ c = x c + ∑ j = 1 , j ≠ c N ⁢ ⁢ x j ⁢ μ G ⁡ ( x c , x j ) 1 + ∑ j = 1 , j ≠ c N ⁢ ⁢ μ G ⁡ ( x c , x j ) , where x c is a center pixal of the filtering window.