Multiple technique entropy coding system and method
Abstract
A system, method and computer program product having optimal matching to a known or measured probability distribution encodes data without the use of an excessively large lookup table. An encoder uses two or more different encoding methods in combination. In one embodiment, Huffman coding by table lookup is combined with computational generation, such as by using an exponential Golomb equation. The most commonly occurring elements are looked up in a small Huffman table, while the remaining elements are coded with the equation. In another embodiment, data is encoded using two or more equations. In yet another embodiment, data is encoded using multiple tables in conjunction with one or more equations.
Claims
exact text as granted — not AI-modified1 . A method of compressing data, comprising:
entropy coding an incoming data stream using a combination of at least two coding techniques in parallel, each of the coding techniques processing a different part of the data stream; wherein the at least two coding techniques comprise a Huffman lookup table and a computational generation; and the incoming stream comprises a series of symbols to be encoded, each symbol having a magnitude, and wherein symbols having a magnitude less than a fixed constant are coded by using the Huffman lookup table and symbols having a magnitude not less than the fixed constant are coded using the computational generation.
2 . A method of compressing data, comprising:
using a combination of at least two coding techniques to encode an incoming data stream having more than one portion; calculating a value for each portion of the incoming data stream according to an algorithmic analysis; selectively applying a first one of the at least two coding techniques to the portions of the incoming data stream that have values greater than a first threshold value.
3 . The method of claim 2 , further comprising:
selectively applying a second one of the at least two coding techniques to portions of the incoming data stream that have values less than the first threshold value.
4 . The method of claim 2 , further comprising:
selectively applying a second one of the at least two coding techniques to portions of the incoming data stream that have values less than the first threshold value but greater than a second threshold value.
5 . The method of claim 4 , further comprising:
selectively applying a third one of the at least two coding techniques to portions of the incoming data stream that have values less than the second threshold value.
6 . A system comprising:
means for encoding an incoming data stream having more than one portion using a combination of at least two coding techniques; means for assigning a value to each of the portions of the incoming data stream; means for applying a first coding technique when the value of any portion of the incoming data stream is greater than a first threshold value.
7 . The system of claim 6 , further comprising:
means for applying a second coding technique when the value of any portion of the incoming data stream is less than the first threshold value.
8 . The system of claim 6 , further comprising:
means for applying a second coding technique when the value of any portion of the incoming data stream is less than the first threshold value but greater than a second threshold value.
9 . The system of claim 8 , further comprising:
means for applying a third coding technique when the value of any portion of the incoming data stream is less than the second threshold value.Join the waitlist — get patent alerts
Track US2015245076A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.