Patent ID: 7590300

Claim:
A method performed by at least one processor comprising: configuring a configurable coefficient filter to perform a selected filtering operation of a set of pixel input values, the operation including determining a filtered pixel value for a selected pixel, wherein configuring comprises selecting the filtering operation from a group of operations, wherein configuring further comprises the at least one processor evaluating configuration information in a mode register storing information that indicates the selected filtering operation to be performed by the filter, wherein the information in the mode register includes a field indicating a filter size, wherein the filter size indicates a size of a matrix of a sub-block of n×m pixel values from the set of pixel input values, wherein n equals a number of pixel values in a row of the sub-block, wherein m equals a number of pixel values in a column of the sub-block, wherein n and m are positive integers, and wherein the selected pixel is located at a center of the matrix; the at least one processor performing a first stage of the selected filtering operation by filtering the set of pixel input values in a first dimension, to produce one or more first filter output values, wherein filtering the set of pixel input values in the first dimension comprises multiplying each pixel value in the sub-block by a corresponding coefficient of a first array of coefficients, the first array having the same size as the matrix of pixel values; the at least one processor determining that the selected filtering operation is a two-dimensional filtering operation, wherein determining comprises evaluating configuration information in the mode register; and in response to determining that the selected filtering operation is the two-dimensional filtering operation, the at least one processor performing a second stage of the selected filtering operation by filtering the one or more first filter output values in a second dimension, which is orthogonal to the first dimension, to produce a second filter output value, wherein filtering the set of pixel input values in the second dimension comprises multiplying each pixel value in the sub-block by a corresponding coefficient of a second array of coefficients, the second array having the same size as the matrix of pixel values.