Image filtering, which removes or reduces noise from contaminated images, is an important task in image processing. This study deals with evolutionary design of image filters that can be implemented on evolvable hardware platforms using fuzzy noise models. Two fuzzy sets, similarity and divergence, are defined for classifying noise. Three filtering modules for pixels with various degrees of noise contamination are trained supervisedly by Cartesian genetic programming. The recovery of a noisy pixel is the fuzzy weighted sum of the output from the three filtering modules. Because each image filter is dedicated to a specific type of noise, it can produce a more accurate value for pixel recovery. With the proposed method, better accuracy of image filtering can be obtained. This paper evaluates and compares the performance of our proposed method with other ones.