1. A method for processing a noise contaminated image having an array of image pixels, comprising: providing a filter having an array of filtering coefficients, wherein a strength of each coefficient is determined based on a value of an image pixel; and a characteristic of the filter is determined based on a directional variance of the image pixels; and processing the image pixels with the assembled filter.