ArticlePDF Available

Introduction to Arithmetic Coding - Theory and Practice

Authors:
A preview of the PDF is not available
... The CABAC technique, developed after year 2000, represents the state-of-the-art of entropy compression of video data [12]. This technique implements very advanced mechanisms of arithmetic coding [13][14][15][16][17][18][19][20], combined with proper pre-processing of syntax elements data. From the point of view of data compression efficiency, the CABAC technique outclasses other entropy coding methods that have been proposed in the context of video data compression [12]. ...
Article
Full-text available
Hybrid video compression plays an invaluable role in digital video transmission and storage services and systems. It performs several-hundred-fold reduction in the amount of video data, which makes these systems much more efficient. An important element of hybrid video compression is entropy coding of the data. The state-of-the-art in this field is the newest variant of the Context-based Adaptive Binary Arithmetic Coding (CABAC) entropy compression algorithm which recently became part of the new Versatile Video Coding (VVC) technology. This work is a part of research that is currently underway to further improve the CABAC technique. This paper provides analysis of the potential for further improvement of the CABAC by more accurate calculation of probabilities of data symbols. The CABAC technique calculates those probabilities by the use of idea of the two-parameters hypothesis. For the needs of analysis presented in this paper, an extension of the aforementioned idea was proposed which consists of three- and four-parameters hypothesis. In addition, the paper shows the importance of proper calibration of parameter values of the method on efficiency of data compression. Results of experiments show that for the considered in the paper variants of the algorithm improvement the possible efficiency gain is at levels 0.11% and 0.167%, for the three- and four-parameter hypothesis, respectively.
... To simplify the notation we ignore implementation details like conversions to integer-valued cumulative sums for AC [13,14]. It is assumed that R and AC precision are chosen to obtain compression very close to entropy. ...
Preprint
Full-text available
Neural-based image and video codecs are significantly more power-efficient when weights and activations are quantized to low-precision integers. While there are general-purpose techniques for reducing quantization effects, large losses can occur when specific entropy coding properties are not considered. This work analyzes how entropy coding is affected by parameter quantizations, and provides a method to minimize losses. It is shown that, by using a certain type of coding parameters to be learned, uniform quantization becomes practically optimal, also simplifying the minimization of code memory requirements. The mathematical properties of the new representation are presented, and its effectiveness is demonstrated by coding experiments, showing that good results can be obtained with precision as low as 4~bits per network output, and practically no loss with 8~bits.
... The general idea behind an AC process is to manipulate the variables Low and Range to encode the incoming symbols into a reduced bitstream according to their probabilities of appearance. The concept that symbols with the Step-by-step arithmetic encoding process based on [34]. ...
Article
Full-text available
With the increasing demand for video transmission through the Internet, video coding has become a key technology to allow this market's growth at a reduced cost. Moreover, with the inception of higher video resolutions (e.g., 4K, 8K) and their impact on video size, new video coding standards must tackle this issue to reduce video traffic demand on the global internet infrastructure. The AV1, a recently released royalties-free video coding format created by the Alliance for Open Media (AOMedia), reaches great compression rates but cannot accomplish real-time execution on software-only implementations due to its high complexity. This paper presents and analyzes AE-AV1, a high-performance 4-stage pipelined architecture to accelerate the AV1 arithmetic encoding process (part of the entropy encoder block) and make it capable of real-time execution. For the analysis, this work aims to rely on fully open-source Electronic Design Automation (EDA) tools and Package Design Kits (PDKs).
Article
Full-text available
Advanced therapeutic imaging innovation produces an immense amount of information, predominantly from processed tomography and other imaging modalities. This causes a significant challenge when storing them on a local personal computer or communicating them over cyberspace. Therefore, a proficient image compression system is fundamentally required. From this perspective, this paper proposes a lossless image compression procedure by reducing image dimension and using a prediction technique. In the proposed strategy, the column dimension of a grey-scale image is first reduced and then the prediction errors are encoded using Huffman coding. The decoding process is carried out in the reverse direction. The proposed method is executed and applied to several bench-marked images. The performance of this proposed algorithm is assessed and compared with the state-of-the-art techniques based on several assessment criteria, such as average code length (ACL), compression ratio (CR), encoding time, decoding time, efficiency, peak signal to noise ratio (PSNR) and normalised correlation (NC). The proposed algorithm also demonstrates an improvement in the average code length compared with the state-of-the-art techniques.
Chapter
The upcoming Versatile Video Coding (VVC) standard has improved the intra coding efficiency by introducing a great number of intra prediction modes. The cost on signaling the prediction modes is heavy. To reduce the mode coding overhead as well as to leverage multi-hypothesis prediction, we propose an intra coding method on top of VVC. For each block, we use a trained neural network to predict the probability distribution of all possible intra prediction modes. The predicted probabilities are used twofold. On the one hand, the probability values are used as weights to fuse the prediction signals generated by multiple modes, leading to a new prediction signal. On the other, the probability values are used by an advanced arithmetic coding instead of the context adaptive binary arithmetic coding. With the proposed method, the intra coding efficiency is improved by more than 1% averagely upon the VVC test model.
Article
Steganography is the art and science of hiding secret messages in public communication so that the presence of the secret messages cannot be detected. There are two distribution-preserving steganographic frameworks, one is sampler-based and the other is compression-based. The former requires a perfect sampler which yields data following the same distribution, and the latter needs explicit distribution of generative objects. However, these two conditions are too strict even unrealistic in the traditional data environment, e.g., the distribution of natural images is hard to seize. Fortunately, generative models bring new vitality to distribution-preserving steganography, which can serve as the perfect sampler or provide the explicit distribution of generative media. Taking text-to-speech generation task as an example, we propose distribution-preserving steganography based on WaveGlow and WaveRNN, which corresponds to the former two categories. Steganalysis experiments and theoretical analysis are conducted to demonstrate that the proposed methods can preserve the distribution.
Conference Paper
We study the problem of data integration from sources that contain probabilistic uncertain information. Data is modeled by possible-worlds with probability distribution, compactly represented in the probabilistic relation model. Integration is achieved efficiently using the extended probabilistic relation model. We study the problem of determining the probability distribution of the integration result. It has been shown that, in general, only probability ranges can be determined for the result of integration. We show that under intuitive and reasonable assumptions we can determine the exact probability distribution of the result of integration. Our methodologies are presented in possible-worlds as well as probabilistic-relation frameworks.
Article
The embedded *erotree wavelet algorithm (EZVV) is :s simple, yet remarkably effective, image compression algo{reversed not sign}rithm, having the property thai the bits in the bit stream are generated in order of Importance, yielding a fully embedded code- The embedded code represents a sequence of binary de{reversed not sign}cisions that distinguish an image from Ihe "null" image. Using an embedded coding algorithm, an encoder can terminate Ihe encoding at any point thereby allowing a target rate or target distortion metric to he met exactly. Also, given a bit slream, the decoder can cease decoding at any point in Ihe hit stream and still produce exactly the same image that would have been encoded at the bit rate corresponding tn the truncated hit stream. In addition to producing a fully embedded bit slream, EZW consistenlly produces compression results that are com{reversed not sign}petitive with virtually all known compression algorithms on standard test images. Yet this performance is achieved with a technique that requires absolutely no training, no pre-slored lables or codebooks, and requires no prior knowledge of the image source. The EZW algorithm is based on four key concepts: 1) a dis{reversed not sign}crete wavelet transform or hierarchical subband decomposi{reversed not sign}tion, 2) prediction of the absence of significant information across scales by exploiting Ihe self-similarity inherent in im{reversed not sign}ages, .1) entropy-coded successive-approximation quantization, and 4} universal lossless data compression which is achieved via adaptive arithmetic coding.
Chapter
There is no better way to quantize a single vector than to use VQ with a codebook that is optimal for the probability distribution describing the random vector. However, direct use of VQ suffers from a serious complexity barrier that greatly limits its practical use as a complete and self-contained coding technique
Article
The authors present an accessible implementation of arithmetic coding and by detailing its performance characteristics. The presentation is motivated by the fact that although arithmetic coding is superior in most respects to the better-known Huffman method many authors and practitioners seem unaware of the technique. The authors start by briefly reviewing basic concepts of data compression and introducing the model-based approach that underlies most modern techniques. They then outline the idea of arithmetic coding using a simple example, and present programs for both encoding and decoding. In these programs the model occupies a separate module so that different models can easily be used. Next they discuss the construction of fixed and adaptive models and detail the compression efficiency and execution time of the programs, including the effect of different arithmetic word lengths on compression efficiency. Finally, they outline a few applications where arithmetic coding is appropriate.
Article
Arithmetic coding is a data compression technique that encodes data (the data string) by creating a code string which represents a fractional value on the number line between 0 and 1. The coding algorithm is symbolwise recursive; i.e., it operates upon and encodes (decodes) one data symbol per iteration or recursion. On each recursion, the algorithm successively partitions an interval of the number line between 0 and 1, and retains one of the partitions as the new interval. Thus, the algorithm successively deals with smaller intervals, and the code string, viewed as a magnitude, lies in each of the nested intervals. The data string is recovered by using magnitude comparisons on the code string to recreate how the encoder must have successively partitioned and retained each nested subinterval. Arithmetic coding differs considerably from the more familiar compression coding techniques, such as prefix (Huffman) codes. Also, it should not be confused with error control coding, whose object is to detect and correct errors in computer operations. This paper presents the key notions of arithmetic compression coding by means of simple examples.