Sign in

Scaled forward and inverse discrete cosine transform and video compression ...

 Alex Z. Mou
A system and method of a forward and/or inverse discrete cosine transform in a video system. In one embodiment, an array of DCT transform coefficients are converted to a two dimensional array of spatial data. The array of DCT transform coefficients are first operated upon by a pre-scale computati...
Inventor: Alex Z. Mou
Assignees: Sun Microsystems, Inc.
Primary Examiner: David H. Malzahn
Attorneys: Meyertons Hood Kivlin Kowert & Goetzel, P.C., B. Nel Kivlin

U.S. Classification
708/402; 382/250

International Classification
G06F 1714

View patent at USPTO

Citations

Patent NumberTitleIssue date
4829465High speed cosine transformMay 9, 1989
5117381Discrete orthogonal and inverse orthogonal transform apparatusMay 26, 1992
5483475Fast pipelined 2-D discrete cosine transform architectureJan 9, 1996
5590066Two-dimensional discrete cosine transformation system, two-dimensional inverse discrete cosine transformation system, and digital signal processing apparatus using sameDec 31, 1996
5596517Method and arrangement for transformation of signals from a frequency to a time domainJan 21, 1997
5610849Real time two-dimensional discrete cosine transform/inverse discrete cosine transform circuitMar 11, 1997
5754456Computer system performing an inverse cosine transfer function for use with multimedia information May 19, 1998
6119140Two-dimensional inverse discrete cosine transform circuit and microprocessor realizing the same and method of implementing 8.times.8 two-dimensional inverse discrete cosine transformSep 12, 2000
6134270Scaled forward and inverse discrete cosine transform and video compression/decompression systems employing the sameOct 17, 2000
6160920Cosine transforming and quantizing device, method of reducing multiplication operations in a video compressing apparatusDec 12, 2000
6445829Joint cosine transforming and quantizing device and joint inverse quantizing and inverse cosine transforming deviceSep 3, 2002

Claims

What is claimed is:

1. A method for performing a forward discrete cosine transform (DCT) upon a matrix of image data in a video system, the method comprising:

performing a column-wise calculation upon each column of said matrix of image data to obtain an intermediary array;
performing a row-wise calculation upon each row of said intermediary array to obtain an unscaled DCT array; and
multiplying said unscaled DCT array element-wise with corresponding elements of a symmetric post-scale factor array to produce an output DCT array which represents the image data in a frequency domain;
wherein said symmetric post-scale factor array is an array expressible by the product MUM, wherein U is a matrix of coefficients each being equal to 1, wherein M is an array having a set of post-scale constants along a diagonal and all zeros off the diagonal, wherein said set of post-scale constants are taken from the collection of values defined by cos(n/16), where n1, 2, 3, 4.

2. The method for performing a forward discrete cosine transform as recited in claim 1 further comprising retrieving each element of said matrix of data from a memory.

3. A method for performing a forward discrete cosine transform (DCT) upon a matrix of image data in a video system, the method comprising:

performing a row-wise calculation upon each row of said matrix of image data to obtain an intermediary array;
performing a column-wise calculation upon each column of said intermediary array to obtain an unscaled DCT array; and
multiplying said unscaled DCT array element-wise with corresponding elements of a symmetric post-scale factor array to produce an output DCT array which represents the image data in a frequency domain;
wherein said symmetric post-scale factor array is an array expressible by the product MUM, wherein U is a matrix of coefficients each being equal to 1, wherein M is an array having a set of post-scale constants along a diagonal and all zeros off the diagonal, wherein said set of post-scale constants are taken from the collection of values defined by cos(n/16), where n1, 2, 3, 4.

4. The method for performing a forward discrete cosine transform as recited in claim 3 further comprising retrieving each element of said matrix of data from a memory.

5. A discrete cosine transform calculation unit for a video system, configured to perform a discrete cosine transform (DCT) upon a matrix of image data, said discrete cosine transform calculation unit comprising:

a column vector computation unit configured to perform a column-wise calculation upon each column of said matrix of image data to obtain an intermediary array;
a row vector computation unit configured to perform a row-wise calculation upon each row of said intermediary array to obtain an unscaled DCT array; and
a postscale computation unit configured to multiply said unscaled DCT array element-wise with corresponding elements of a symmetric post-scale factor array to produce an output DCT array which represents the image data in a frequency domain;
wherein said symmetric post-scale factor array is an array expressible by the product MUM, wherein U is a matrix of coefficients each being equal to 1, wherein M is an array having a set of post-scale constants along a diagonal and all zeros off the diagonal, wherein said set of post-scale constants are taken from the collection of values defined by cos(n/16), where n1, 2, 3, 4.

6. A discrete cosine transform calculation unit for a video system, configured to perform a discrete cosine transform (DCT) upon a matrix of image data, said discrete cosine transform calculation unit comprising:

a row vector computation unit configured to perform a row-wise calculation upon each row of said matrix of image data to obtain an intermediary array;
a column vector computation unit configured to perform a column-wise calculation upon each column of said intermediary array to obtain an unscaled DCT array; and
a postscale computation unit configured to multiply said unscaled DCT array element-wise with corresponding elements of a symmetric post-scale factor array to produce an output DCT array which represents the image data in a frequency domain;
wherein said symmetric post-scale factor array is an array expressible by the product MUM, wherein U is a matrix of coefficients each being equal to 1, wherein M is an array having a set of post-scale constants along a diagonal and all zeros off the diagonal, wherein said set of post-scale constants are taken from the collection of values defined by cos(n/16), where n1, 2, 3, 4.

Drawings