Patent ID: 8660374

Claim:
A method of encoding data, the method comprising: determining multiple patterns for computing one-dimensional transforms over a first array of data elements, where each pattern includes multiple subsets of data elements of the first array, each subset that is included in a first pattern has substantially the same number of data elements as each of the other subsets that are included in the first pattern, each data element of the first array is included in a single one of the subsets included in the first pattern, and at least one subset included in the first pattern consists of data elements that are not in a contiguous sequence along a single dimension; computing, for each pattern of the multiple patterns, multiple one-dimensional transforms over data elements of respective subsets included in the pattern, to provide a set of transform coefficients corresponding to the pattern; selecting a set of transform coefficients from a group of multiple sets of transform coefficients, the group including the sets of transform coefficients corresponding to respective ones of the multiple patterns; and encoding the selected set of transform coefficients to represent the first array.