The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
May. 22, 2001

Filed:

Jul. 17, 1998
Applicant:
Inventors:

Charles K. Chui, Menlo Park, CA (US);

Lefan Zhong, Santa Clara, CA (US);

James M. Spring, Santa Cruz, CA (US);

Rongxiang Yi, Santa Clara, CA (US);

Assignee:

PicSurf, Inc., Mountain View, CA (US);

Attorney:
Primary Examiner:
Assistant Examiner:
Int. Cl.
CPC ...
G06K 9/36 ;
U.S. Cl.
CPC ...
G06K 9/36 ;
Abstract

A unified system and method for encoding an array of data. If the data array is comprised of DCT data, then coefficients from corresponding positions in the data array are mapped into a common blocks in a second data array so as to group similarly valued coefficients. If the data array is comprised of wavelet data and the wavelet tile is greater than a predetermined size, then the wavelet tile coefficients are mapped into a second array so as to combine coefficients from the same wavelet family. After the DCT or wavelet coefficients have been mapped, the DC coefficients are encoded using a differential pulse code modulation (DPCM) process. The maximum number of bits required to represent any coefficient in each block family in the data array is determined. The difference between the maximum number of bits required to represent any coefficient in the entire data array and each of the block family maximums is determined and encoded. Each block family is then successively divided into an upper leftmost block and a sub-family, and difference values between maximum numbers of component block groupings are determined and encoded. This process is then repeated until the selected sub-family comprises a single block. Whenever a sub-family is processed, if the sub-family is entirely filled with zero data it is so identified in the output data and no further processing of the sub-family is required. After all of the sub-families have been processed, the blocks are bit mask coded. After all the coefficients in a block have been processed, the bit mask is encoded. When blocks of a predetermined size are encountered, the method outputs the value of the coefficients in the block. A data decoder and method retraces the encoded data so as to reverse the process performed by the encoding method.


Find Patent Forward Citations

Loading…