FazBrowse Wikipedia Viewer | Main Page |
Search Wikipedia:
|
Viewing: https://en.wikipedia.org/wiki/Vector_quantization

Vector quantization

Contents
Training
Applications
    Use in data compression
    Audio codecs based on vector quantization

Training

edit

One simple training algorithm for vector quantization is:

  1. Pick a sample point at random
  2. Move the nearest quantization vector centroid towards this sample point, by a small fraction of the distance
  3. Repeat

A more sophisticated algorithm reduces the bias in the density matching estimation and ensures that all points are used, by including an extra sensitivity parameter:P at random

  • For each quantization vector centroid P and d(P,ci)−si is the smallest
  • Move si to zero
  • Repeat
  • It is desirable to use a cooling schedule to produce convergence: see Simulated annealing. Another simple method is LBG, which is based on k-means.

    The algorithm can be iteratively updated with "live" data, rather than by picking random points from a data set, but this will introduce some bias if the data are temporally correlated over many samples.

    Applications

    edit

    Vector quantization is used for lossy data compression, lossy data correction, pattern recognition, density estimation and clustering.

    Lossy data correction, or prediction, is used to recover data missing from some dimensions. It is done by finding the nearest group with the data dimensions available, then predicting the result based on the values for the missing dimensions, assuming that they will have the same value as the group's centroid.

    For density estimation, the area/volume that is closer to a particular centroid than to any other is inversely proportional to the density (due to the density matching property of the algorithm).

    Use in data compression

    edit

    Vector quantization, also called "block quantization" or "pattern matching quantization" is often used in lossy data compression. It works by encoding values from a multidimensional vector space into a finite set of values from a discrete subspace of lower dimension. A lower-space vector requires less storage space, so the data is compressed. Due to the density matching property of vector quantization, the compressed data has errors that are inversely proportional to density.

    The transformation is usually done by projection or by using a codebook. In some cases, a codebook can be also used to entropy code the discrete value in the same step, by generating a prefix coded variable-length encoded value as its output.

    The set of discrete amplitude levels is quantized jointly rather than each sample being quantized separately. Consider a k-dimensional vector [y1,y2,...,yn] form the vector space to which all the quantized vectors belong.

    Only the index of the codeword in the codebook is sent instead of the quantized values. This conserves space and achieves more compression.

    Twin vector quantization is related to vector quantization, but the speed of the quantization is doubled by the secondary vector analyzer.

    The usage of video codecs based on vector quantization has declined significantly in favor of those based on motion compensated prediction combined with transform coding, e.g. those defined in MPEG standards, as the low decoding complexity of vector quantization has become less relevant.

    Audio codecs based on vector quantization

    edit

    View original on Wikipedia | Back | FazBrowse Home