Compression/decompression using reversible embedded wavelets
First Claim
Patent Images
1. An encoder comprising:
- a memory; and
a forward transform operating on data in the memory, wherein the transform is computed and stored in the memory by storing calculation results in locations containing no longer necessary information such that the forward transform is computed in place in the memory;
wherein the memory comprises;
a plurality of lines of memory; and
a line buffer having a plurality of entries containing pointers to the plurality of lines of memory, wherein each of the plurality of entries are associated with an individual memory lines, wherein the pointers are moved between entries in the line access buffer to resemble scrolling of the memory without moving the data in the memory lines.
1 Assignment
0 Petitions
Accused Products
Abstract
A compression and decompression system in which a reversible wavelet filter are used to generates coefficients from input data, such as image data. The reversible wavelet filter is an efficient transform implemented with integer arithmetic that has exact reconstruction. The present invention uses the reversible wavelet filter in a lossless system (or lossy system) in which an embedded codestream is generated from the coefficients produced by the filter. An entropy coder performs entropy coding on the embedded codestream to produce the compressed data stream.
-
Citations
43 Claims
-
1. An encoder comprising:
-
a memory; and a forward transform operating on data in the memory, wherein the transform is computed and stored in the memory by storing calculation results in locations containing no longer necessary information such that the forward transform is computed in place in the memory; wherein the memory comprises; a plurality of lines of memory; and a line buffer having a plurality of entries containing pointers to the plurality of lines of memory, wherein each of the plurality of entries are associated with an individual memory lines, wherein the pointers are moved between entries in the line access buffer to resemble scrolling of the memory without moving the data in the memory lines. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. An encoder comprising:
-
a memory; and a Two-Six transform operating on data in the memory, wherein the Two-Six transform is computed and stored in the memory by storing calculation results in locations containing no longer necessary information, such that the Two-Six transform is computed in place in the memory.
-
-
16. An encoder comprising:
-
a memory; and a Two-Ten transform operating on data in the memory, wherein the Two-Ten transform is computed and stored in the memory by storing calculation results in locations containing no longer necessary information, such that the Two-Ten transform is computed in place in the memory. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. An encoder comprising:
-
a buffer comprising a plurality of lines of memory and a line buffer having a plurality of entries containing pointers to the plurality of lines of memory, wherein each of the plurality of entries are associated with an individual memory lines, wherein pointers are moved between entries in the line access buffer to resemble scrolling of the buffer without moving the data in the memory lines; a forward transform operating on data in the buffer, wherein the forward transform is computed and stored in the buffer by storing calculation results in locations containing no longer necessary information, such that the transform is computed in place in the buffer memory; an embedded quantizer coupled to the forward transform; and an entropy coder coupled to the embedded quantizer. - View Dependent Claims (29, 30)
-
-
31. A method for encoding data comprising:
-
applying a first one dimensional wavelet transform to each line in a buffer having a plurality of memory lines; applying a second one dimensional wavelet transform to each column in the buffer; modeling a set of completely computed wavelet coefficients; entropy coding the set of completely computed wavelet coefficients; removing the set of completely computed wavelet coefficients from the buffer after entropy coding; moving pointers between entries in a line access buffer associated with the buffer to resemble scrolling of the buffer without moving the data in the plurality of memory lines. - View Dependent Claims (32)
-
-
33. A decoder comprising:
-
a buffer memory; and an inverse transform operating on data in the buffer memory, wherein the inverse transform is computed and stored in the memory by storing calculation results in locations containing no longer necessary information, such that the inverse transform is computed in place in the buffer memory. - View Dependent Claims (34, 35, 36, 37)
-
-
38. A decoder comprising:
-
a buffer memory; and an Two-Six transform operating on data in the buffer memory, wherein the Two-Six transform is computed and stored in the memory by storing calculation results in locations containing no longer necessary information, such that the Two-Six transform is computed in place in the buffer memory.
-
-
39. A decoder comprising:
-
a buffer memory; and an Two-Ten transform operating on data in the buffer memory, wherein Two-Ten transform is computed and stored in the memory by storing calculation results in locations containing no longer necessary information, such that the Two-Ten transform is computed in place in the buffer memory.
-
-
40. An encoder comprising:
-
a buffer comprising a plurality of lines of memory and a line buffer having a plurality of entries containing pointers to the plurality of lines of memory, wherein each of the plurality of entries are associated with an individual memory lines; a reversible wavelet transform coupled to the buffer to receive image data and generate a plurality of coefficients, wherein the buffer stores the plurality of coefficients; an ordering mechanism coupled to receive coefficients from the buffer for ordering, wherein the ordering mechanism stores ordered coefficients in the buffer; and a coder coupled to receive ordered coefficients from the buffer and generate encoded data; wherein pointers are moved between entries in the line access buffer to resemble scrolling of the buffer without moving the data in the memory lines. - View Dependent Claims (41, 42)
-
-
43. A computer software product including a computer readable medium having executable instructions stored therein, which when executed by the processor, causes the processor to:
-
apply a first one dimensional wavelet transform to each line in a buffer having a plurality of memory lines; apply a second one dimensional wavelet transform to each column in the buffer; model a set of completely computed wavelet coefficients; entropy code the set of completely computed wavelet coefficients; remove the set of completely computed wavelet coefficients from the buffer after entropy coding; move pointers between entries in a line access buffer associated with the buffer to resemble scrolling of the buffer without moving the data in the plurality of memory lines.
-
Specification