Patent ID: 8472724

Claim:
A method of processing an image, the method comprising: receiving an input image; filtering the input image to generate a filtered image including determining a filtered value for each of the plurality of pixel locations by: determining, for each of the plurality of pixel locations within a defined window about the particular pixel location, a difference between the input value associated with the particular location and the input value associated with the pixel locations within the defined window determining, for each of the plurality of pixel locations within the defined window, a filter weight based on the difference between the input value associated with the particular pixel location and the input value associated with the pixel location within the defined window includes the filter weight based on a first difference greater than the filter weight based on a second difference where the first difference is less than the second difference, determining, for each of the filter weights, a modified filter weight based on the filter weight and a preset window weight, and determining the filtered value based on the differences and the modified filter weights; generating one or more edge weights related to at least one edge of the input image; generating an output image based on the input image, the filtered image, and at least one of the edge weights; and outputting the output image.