FACTOID # 70: Contrary to the popular rhyme, the rain falls mainly on Guinea.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

FACTS & STATISTICS    Simple view

  1. Select countries to view: (hold down Control key and click to select several)

     

     

    Compare:

     

     

  1. Select fact or statistic: (* = graphable)

     

     

     

  2. (OPTIONAL) Compare to statistic: (both need to be graphable)

     

     

     

  3. View result as:

     

       
(OR) SEARCH ALL encyclopedia, stats & forums:   

Encyclopedia > Adaptive coding

Adaptive coding refers to variants of entropy encoding methods of lossless data compression. They are particularly suited to streaming data, as they adapt to localized changes in the characteristics of the data, and don't require a first pass over the data to calculate a probability model. The cost paid for these advantages is that the encoder and decoder must be more complex to keep their states synchronized, and more computational power is needed to keep adapting the encoder/decoder state.


Almost all data compression methods involve the use of a model, a prediction of the composition of the data. When the data matches the prediction made by the model, the encoder can usually transmit the content of the data at a lower information cost, by making reference to the model. While sometimes the model is implicit in the compression method (for instance, in run_length encoding), in most methods it is separate, and because both the encoder and the decoder need to use the model, it must be transmitted with the data.


In adaptive coding, the encoder and decoder are instead equipped with identical rules about how they will alter their models in response to the actual content of the data, and otherwise start with a blank slate, meaning that no initial model needs to be transmitted. As the data is transmitted, both encoder and decoder adapt their models, so that unless the character of the data changes radically, the model becomes better_adapted to the data it's handling and compresses it more efficiently.

Contents

Adaptive Method

Encoder

  1. Initialize the data model as per agreement.
  2. While there is more data to send
    1. Encode the next symbol using the data model and send it.
    2. Modify the data model based on the last symbol.

Decoder

  1. Initialize the data model as per agreement.
  2. While there is more data to receive
    1. Decode the next symbol using the data model and output it.
    2. Modify the data model based on the decoded symbol.

Any adaptive coding method has a corresponding static model method, in which the data model is precalculated and then transmitted with the data.


Static Method

Encoder

  1. Initialize the data model based on a first pass over the data.
  2. Transmit the data model.
  3. While there is more data to send
    1. Encode the next symbol using the data model and send it.

Decoder

  1. Receive the data model.
  2. While there is more data to receive
    1. Decode the next symbol using the data model and output it.



  Results from FactBites:
 
Adaptive Huffman coding - Wikipedia, the free encyclopedia (578 words)
Adaptive Huffman coding is an adaptive coding technique based on Huffman coding, building the code as the symbols are being transmitted, having no initial knowledge of source distribution, that allows one-pass encoding and adaptation to changing conditions in data.
Code is represented as a tree structure in which every node has a corresponding weight and a unique number.
Paul E. Black, adaptive Huffman coding at the NIST Dictionary of Algorithms and Data Structures.
Adaptive coding - Wikipedia, the free encyclopedia (380 words)
Adaptive coding refers to variants of entropy encoding methods of lossless data compression.
While sometimes the model is implicit in the compression method (for instance, in run-length encoding), in most methods it is separate, and because both the encoder and the decoder need to use the model, it must be transmitted with the data.
In adaptive coding, the encoder and decoder are instead equipped with identical rules about how they will alter their models in response to the actual content of the data, and otherwise start with a blank slate, meaning that no initial model needs to be transmitted.
  More results at FactBites »


 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.