EP2183851A1 - Codage/decodage par plans de symboles, avec calcul dynamique de tables de probabilites - Google Patents
Codage/decodage par plans de symboles, avec calcul dynamique de tables de probabilitesInfo
- Publication number
- EP2183851A1 EP2183851A1 EP08828177A EP08828177A EP2183851A1 EP 2183851 A1 EP2183851 A1 EP 2183851A1 EP 08828177 A EP08828177 A EP 08828177A EP 08828177 A EP08828177 A EP 08828177A EP 2183851 A1 EP2183851 A1 EP 2183851A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- plane
- signal
- probabilities
- symbol
- values
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000004364 calculation method Methods 0.000 title claims description 19
- 238000013139 quantization Methods 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 30
- 230000006870 function Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 7
- 238000007906 compression Methods 0.000 claims description 6
- 230000006835 compression Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 239000013598 vector Substances 0.000 description 14
- 238000012360 testing method Methods 0.000 description 8
- 238000000354 decomposition reaction Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 238000001228 spectrum Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013144 data compression Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 101000591286 Homo sapiens Myocardin-related transcription factor A Proteins 0.000 description 1
- 102100034099 Myocardin-related transcription factor A Human genes 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005194 fractionation Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4006—Conversion to or from arithmetic code
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/184—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
Definitions
- the present invention relates to coding / decoding processing of digital signals such as speech signals, image signals, or more generally audio and / or video signals, or more generally multimedia signals, for storage and / or transmission.
- lossless compression methods Huffman coding, Golomb-Rice coding, arithmetic coding
- entropy coding compression methods, lossy, resting on a scalar or vector quantization.
- a compression encoder typically comprises: an analysis module 100 of the source to be coded S, a quantization module 101 (of scalar or vector type), followed by a module 102 encoding, while a peer decoder comprises: a decoding module 103, an inverse quantization module 104, and a synthesis module 105.
- Reference 205 illustrates the transmission channel from the encoder to the decoder, which may optionally apply truncation of the bit stream.
- the entropic coding of the planes can advantageously be achieved by a so-called "contextual arithmetic" coder.
- the principle of an arithmetic coder is explained in Witten et al:
- the module 203 encodes the bit planes, one by one, starting with the most significant bit planes to the least significant bit planes. This notion of more or less significant bit planes will be described later with reference to FIG. 3.
- the flow rate that is produced at the output of the encoder is, in general, variable. In what follows, the manner of managing this variable bit rate (modules 200 and 204 of FIG. 2) is not described.
- the bit stream generated by the module 203 is finally transmitted on a channel 205, which can truncate the bit stream (by exploiting the hierarchical nature of the bit stream) or introduce binary errors.
- the demultiplexer-decoder (module 206) reconstructs the bit planes P k , one by one, and decodes the sign bits S that have been transmitted. This decoded information makes it possible to reconstruct (module 207) the signal Y.
- the demultiplexer-decoder (module 206) reconstructs the bit planes P k , one by one, and decodes the sign bits S that have been transmitted. This decoded information makes it possible to reconstruct (module 207) the signal Y.
- bitmap coding The main interest of bitmap coding is that it leads naturally to a hierarchical (or progressive) coding of the signal. Successive approximations of the signal becoming more precise can be reconstructed as we receive the entire bit stream transmitted by the encoder.
- N S.
- the sign bits are represented by the vector bearing the reference sgn in FIG. 3.
- K 3
- P 0 [0,1,1,0,1,1,0,1]
- P 1 [1,1,1,0,0,1,1,0]
- P 2 [0,1,0,0,0,0,1,1]
- S [1,0,0, 0,0,1,1,0].
- the vector P k then represents a plane of bits of weight k.
- P ⁇ -1 represents the most significant bit plane (MSB reference for "Most Significant Bits” in English), while the lower bit plane P 0 represents the plane of the least significant bits (LSB reference for "Least Significant Bits”). " in English).
- step 401 the total number K of bit planes (step 401) is obtained.
- the plane Pk of current index k (step 404) is coded.
- the signs of the new significant coefficients associated with the plane Pk are transmitted.
- the coding is therefore performed on successive bit planes Pk, from the MSB plane to the LSB plane. It is indicated that it is also possible to split the planes Pk into sub-vectors to allow an even more progressive decoding, this fractionation possibly being able to go as far as obtaining sub-vectors of unit size (equal to 1).
- Bit planes of absolute values can then be encoded by adaptive arithmetic coding.
- the planes P k can be coded one by one (independently of each other, sequentially going from the MSB plane to the LSB plane) by adaptive arithmetic coding.
- the adaptation of the probabilities of the symbols (0 and 1) in the coding of a plane Pk uses only the bits that have already been coded in the same plane Pk.
- This type of encoding is given in particular in the document:
- More sophisticated coders do not set the initial frequency of 0 and 1 to 1/2, but store probabilities values in pre-recorded tables that give an initial frequency of 0 and 1 adapted to a certain operating context (eg adapted to the flow, or to the type of source to be coded). At best, the coders of the state of the art therefore require a storage of tables of probabilities of the symbols
- prerecorded tables are usually required to apply Huffman type entropy coding or arithmetic coding.
- State-of-the-art techniques are therefore not very flexible because they require pre-computation and storage of information that must be adapted to particular operating conditions (flow rate, source type). Therefore, it is necessary to anticipate, in the design of coders / decoders, all possible situations, in order to generate such tables. The present invention improves the situation.
- these probabilities are calculated dynamically from an estimate of a distribution of the signal.
- the estimation of the signal distribution is conducted on the signal to be coded, before quantization, in order to have the finest possible estimation of the signal distribution (and not an estimate of the signal distribution). distribution of the depleted signal after quantification).
- the signal having a succession of values each value is decomposed into a plurality of symbol values in a respective plurality of symbol planes.
- the probabilities are calculated for at least one plane and are each aimed at the probability of having, in this plane, a symbol value equal to a given symbol. Preferentially, the probabilities are calculated at least for the plane representing the most significant symbol values.
- the probabilities are further calculated for other planes, taking into account a context defined by symbol values taken in planes representing more significant symbol values.
- each symbol value taken in a plane representing a symbol value more significant than a symbol value in a current plane defines a context value for that value. current plan and for this position.
- the aforementioned probabilities are then calculated for this current plane taking into account a plurality of possible values of the context for this current plane.
- a limited number of possible values of the context is chosen, preferably a number of two, with:
- the invention proposes, unlike the prior art, to dispense with any storage of probability tables, which are instead calculated "in line" (as a function of the signal), and to use an estimate of the density of probabilities of the source to be encoded / decoded (for example represented by a generalized Gaussian model) to dynamically calculate the probabilities of the symbols by planes (for example the probabilities of 0 and 1 for a bit plane).
- the invention can therefore use knowledge of a probability model of the source to be encoded (or decoded), and this to estimate a priori the probabilities of symbols in each plane Pk.
- FIG. 5 shows an example of encoder using, in the sense of the invention, a distribution model of the signal to be encoded, for a coding by bit planes
- - Figure 6 shows a decoder homologous to the encoder of Figure 5
- Figure 7 illustrates the density probability of a generalized Gaussian probability p and shows different calculation intervals ( ⁇ ,)
- - Figure 8 shows the flow diagram of the bitplane coding with an initialization of the probability tables for each plane P k, according to the In the first embodiment
- FIG. 9 shows the flowchart of a homologous decoding of the coding of FIG. 8;
- FIG. 9 shows the flowchart of a homologous decoding of the coding of FIG. 8;
- FIG. 10 shows an example of three-plane binary decomposition and contextual coding for the LSB plane
- FIG. FIG. 11 illustrates the bit planes associated with a strongly harmonic signal, as well as a histogram H of this signal to be compared with a Mod distribution model that can be assigned to it (dotted line curve)
- FIG. an arithmetic coding (contextual for the coding of the plane P ⁇ -2 in the example shown) of bit planes whose probability tables have been calculated dynamically by the method in the sense of the invention
- FIG. flowchart of the bitmap coding with a contextual initialization of the probability tables according to the second embodiment mentioned above
- FIG. 14 presents the flowchart of the bitmap coding with a contextual initialization of the probability tables in the case where only two possible contexts are imposed, according to the third embodiment mentioned above.
- the present invention proposes a coding / decoding processing using symbol planes exploiting a probability distribution of the source to be encoded in order to estimate a priori the probability of the symbols (for example 0 and 1) for each plane.
- This treatment aims at an optimization of the entropy coding by bringing a dynamic knowledge of the tables of probability.
- contextual arithmetic coding can be considered as an example of entropy coding.
- An example is described below in which the coding in the sense of the invention is carried out without loss of the indices resulting from the quantization of the transform coefficients of the frequency coders, in particular for speech and / or audio signals. Nevertheless, the invention also applies to lossy coding, in particular of signals such as image or video signals.
- FIG. 5 illustrates an example of an encoder using a distribution model of the signal to be coded in order to know a priori the probabilities of the symbols 0 or 1 by bit planes, within the meaning of the invention.
- the structure of the encoder is very close to an encoder of the prior art described in the document Oger et al: "Transform audio coding with arithmetic-coded scalar quantization and model-based bit allocation ", M. Oger, S. Ragot and M. Antonini, ICASSP, April 2007.
- the encoder described in this document determines a signal distribution model for estimating a form factor ⁇ which in the cited document only serves for flow control purposes.
- this type of encoder leads a coding according to the so-called “stack-run” technique and which has nothing to do with a coding by bit planes within the meaning of the invention.
- the invention can advantageously take advantage of a pre-existing structure comprising a form factor calculating module 505 (FIG. 5) and furthermore use this module 505 to perform bit-plane coding as described below.
- the encoder in the example represented comprises: a high-pass filter 501, a perceptual filtering module 502, a LPC analysis module 501 (for Linear Prediction Coding) and quantization, to obtain the short-term prediction parameters, a 504 conversion module MDCT (for "Modified Discrete Cosine
- the module 505 for calculating a form factor ⁇ , from a generalized Gaussian model in the example described, a rate control module 506, in particular as a function of the number of bits used Nb, a module 507 which also uses the module 505 to carry out the calculations serving at least the initialization of the probability tables of the coding module 509 by bit planes, in a first embodiment, and, in other subsequent embodiments, the calculating contexts, a uniform scalar quantization module 508, the bitmap coding module 509, a noise level estimation and quantization module 510, - a multiplexer 511 of the outputs of the modules 503, 505, 509, and 510 for storing encoded data or transmission for subsequent decoding.
- a uniform scalar quantization module 508 the bitmap coding module 509
- a noise level estimation and quantization module 510 - a multiplexer 511 of the outputs of the modules 503, 505, 509, and 510 for storing encoded data or transmission for subsequent decoding
- the input signal x (n) is filtered by a high-pass filter (501) in order to remove the frequencies below 50 Hz. Then, a perceptual shaping filtering is applied to the signal (502) and in parallel an LPC analysis is further applied to the signal (503) filtered by the module 501.
- An MDCT analysis (504) is applied to the signal after perceptual filtering.
- the analysis used may for example be the same as that of the standard 3GPP AMR-WB + encoder.
- the form factor ⁇ is estimated on the coefficients of the MDCT transform (505). In particular, once the estimate of the form factor has been made, the quantization step q which is suitable to reach the desired rate (506) is calculated.
- the encoding is performed by transforming with a bitmap coding whose probability tables are initialized in real time, in the sense of the invention, according to an estimated distribution model. dynamically depending on the signal to be coded.
- the first part of the MDCT before conversion (modules 501 to 504) is equivalent to that used for the transform encoding with stack-run encoding presented in the document Oger et al cited above.
- the estimation of the form factor (module 505) as well as the flow control can also be common.
- the information of the determined model is used here to also estimate the probability tables (module 507) of the symbols 0 and 1 which will be used to initialize the coding module 509.
- scalar quantification is performed.
- module 508 the reference 512 representing a division module.
- the quantization can be, too, common to that described in the document Oger et al, but here it is followed by a bitmap coding (module 509) whose initialization of the probability tables is done, as indicated below. before, following a model (defined by module 505).
- An estimate of the noise level (module 510) is made which may still be common to that of the reference Oger et al.
- the parameters of the encoder are finally transmitted to the decoder via a multiplexer 511.
- a homologous decoder may comprise: a demultiplexing module 601 of the stream received from the coder of FIG. 5, a module 602 for decoding the LPC coefficients, a module 603 for estimating probabilities based on the model defined by the module 505 of FIG. 5, a module 606 for decoding the quantization step q, a noise level decoding module 605, using the value of the decoded quantization step, a bit plane decoding module 604 receiving the estimated probabilities (module 603) to deliver, by using the value of the decoded quantization step; , the decoded integer vector Y (k), a noise injection module 607,
- a de-emphasis module 608 for finding the decoded vector X (k), expressed in the transformed domain, a module 609 for the inverse MDCT transform, and a module 610 for inverse perceptual filtering from the decoded LPC coefficients. (module 602), to find a signal x (n) which, without loss or truncation in the communication, corresponds to the original signal x (n) of FIG.
- the number of bits Nb used by the coding is returned to the bit allocation module in order to modify (or adapt) the value of the quantization step, so that number of bits remains less than or equal to the available bit budget.
- the MDCT spectrum is therefore coded in a rate control loop with typically 10 to 20 iterations, to arrive at an optimal quantization step q opt .
- the initial quantization step fixed for the first iteration on the determination of the optimal quantization step q opt , is estimated from the form factor ⁇ that delivers the module 505 for determining a generalized Gaussian model.
- model-based coding consists of quantifying and encoding the source not directly, but from a probability model.
- A amplitude
- This signal X may for example be delivered by the module 504 of FIG. 5 and then correspond to a signal MDCT which is a function of the frequency (freq).
- the signal X is intended to be quantized by a quantization step q, to obtain (at the output of the module 508 of FIG. 5) the signal referenced Y and corresponding to a sequence of components y ,.
- the signs and absolute values a, of these components y, and these absolute values a are decomposed into sections of bits MSB ... LSB shown in FIG.
- This histogram H is then modeled by the model Mod (in dashed lines) which may for example be Gaussian.
- the distribution H of the signal X can finally be represented by a probability density model (reference pdf for "probability density function"), following a simple scale change of abscissa (of VaI ( X,) to Val ( ⁇ ,), the reference Val ( ⁇ ,) denoting the different possible values that can take each absolute value of component a,).
- FIG. 7 illustrates, by way of example, the density of probabilities of a generalized Gaussian, which is a particular model that can advantageously be chosen.
- f ⁇ a mathematical expression
- the probability density of a generalized Gaussian z source, of zero mean and of standard deviation ⁇ , is defined by: where ⁇ is the form factor describing the shape of the exponential function (FIG. 7), the parameters A ( ⁇ ) and B ( ⁇ ) being defined by:
- the source (the signal to be coded) is modeled as the result of a random draw of a generalized Gaussian variable.
- This generalized Gaussian model can then advantageously be used to model the spectrum to be coded in the field of the modified discrete cosine transform (MDCT). From this model, we can derive the value of the form factor ⁇ that characterizes the model. It is recalled that advantageously, the form factor ⁇ is already estimated for each signal block (or frame) from the spectrum to be coded, in some existing encoders which integrate a module such as the module 505 of FIG. the quantization step q.
- the estimation of the distribution model (which can lead in particular to the form factor ⁇ ) also makes it possible to calculate the probabilities of the symbol values per planes. This technique is described below.
- the estimation of a probability p ( ⁇ ,) of having a value of component a, among N possible values is based on the following calculation:
- Figure 7 also illustrates the different intervals for calculating the probability p ( ⁇ /).
- the calculation of the probabilities p ( ⁇ j can be carried out by conventional integration methods.
- the trapezoidal method which is simple to implement, is preferably used in a preferred embodiment and the value of the difference is preferably standardized.
- -type ⁇ to 1 so that the quantization step, for the computation of the integral in the equation above, becomes q / ⁇
- This operation allows a more efficient computation of the integrals, because one thus removes the problem of the variation of dynamics on the signal and is reduced to a centered source of unit variance whatever the value of the form factor.
- an estimate of the probability of having bits at O or 1 for each bit plane Pk is provided, thereby defining what was referred to above as the initial tables of probabilities. These tables will be described with reference to Figure 12 discussed below.
- conditional probabilities of O or 1 as a function of the already coded bits and at the same position in previous planes (these bits then defining a context).
- an estimate of the conditional probabilities is provided as a function of a number of possible context values limited to two ("significant or non-significant" context).
- the probability of 0 and 1 in each plane can take a value which can, in practice, be very different from 1/2 and, more generally, be very different from one signal frame to another, for example according to the degree of voicing of the signal as will be seen later.
- the flow diagram of FIG. 8 presents the principle of bitmap coding with, according to the first embodiment, an initialization of the probability tables, for each plan Pk, which is based on a model.
- the model parameters which are the form factor ⁇ and the standard deviation ⁇ are first estimated (step 801 after the start step 800).
- the value of the scalar quantization step q (step 802) is then determined, for example from that of the factor ⁇ as represented in FIG. 5. From the parameters ⁇ , ⁇ and q, the probabilities of the components a are estimated. , (step 803) as previously described. According to a principle similar to that described above with reference to FIG.
- step 808 it is checked whether there remain bit planes to code using the test 805 on the current value of a decremented loop index k (step 808) from KI to 0. It is then estimated the probabilities of having a bit at 0 or 1 in each plane (step 806) and then the coding of this plane (step 807) is performed using this information on the probabilities. This loop is carried out as long as the index k is positive or zero (as long as there are plans to be coded). Otherwise, the processing terminates (end step 809) or can be implemented again for a next block of signal (or frame) to be encoded.
- step 901 the parameters ⁇ , ⁇ and q (step 901) characterizing the distribution model are decoded which was used in coding.
- the probabilities associated with the components a, (step 902) are then estimated with this model.
- a loop is then applied with a decrement (step 907) of the loop current index k initially set to KI (step 903).
- the probabilities of 0 and 1 in each plane Pk (step 906) are estimated in order to also decode each plane P.sub.k (step 907) more efficiently. If ⁇ k less than or equal to 0 corresponding to the output N of the test 904), no more plan is to be coded and the processing can be terminated (end step 908) or implemented again for a next block ( or frame) to be decoded.
- the probability of obtaining the value 0 in a plane Pk can be calculated from the probability model still corresponding to a generalized Gaussian model in the example described.
- b k and M are respectively: a random variable representing any bit in the plane P k .
- bitmap coding technique itself, remains substantially unchanged from the prior art.
- the amplitude of the signal MDCT is strong (in absolute value) on only a few frequencies which follow each other (the significant bits having a value of 1 for these frequencies), while the amplitude associated with the other frequencies is relatively low (the significant bits keeping a value at 0).
- the MSB plane and the immediately following plane (s) have few bits to 1.
- the LSB plane of the least significant bits and the planes which immediately precede it can comprise, according to a very schematic explanation, as many 0s as of 1, according to the fluctuations of the noise, and the probability of finding there values of bits at 0 is then average (close to 0.5).
- the calculations of the probabilities are carried out directly on the signal, in real time, preferably by an a priori estimation of the signal distribution model (module 507 of FIG. 5 and 603 of FIG. 6) as described above.
- FIG. 13 presents the principle of bitmap coding with context determination for each bit of a Pk plane, in a second embodiment of the invention. Elements similar to those in the flowchart of Figure 8 have the same references and are not described again here.
- the probabilities associated with the different possible values of context for each plane are estimated (step 1306).
- the term "context” means, for the ith bit of the k th plane, the set of bits of rank i in the planes preceding the plane Pk.
- the context is "1" (value of the bit of rank 7 in the plane P 2 (MSB))
- the context is "11” (where 1 is the value of the rank 7 bit in the P 2 plane (MSB) and 1 is the value of the rank 7 bit in the Pi plane).
- the probabilities are then estimated as a function of the context found (step 1307) for the rank of this bit.
- This treatment is reiterated for a next plane, taking into account the context for each bit.
- This loop is carried out as long as there are plans to be coded (arrow O at the output of test 805). Otherwise (arrow N at the output of test 805), the coding is completed or can be implemented for a next signal block (or frame).
- the number of possible contexts is 2 ⁇ "k .
- the different possible values Ck.n of the contexts on the plane Pk are defined as follows:
- this maximum number is two and is thus interpreted: a context at 0 indicates that the bits coded in the higher planes and at the same rank are all equal to 0 and therefore the quantified MDCT coefficient, for this reason. rank, is for the moment insignificant, and a context at 1 indicates that at least one of the bits already coded in the higher planes and at the same rank was equal to 1, which implies that the current coefficient, for this rank, is significant.
- the flowchart of FIG. 14 presents the principle of bitmap coding with a context determination for each bit of a Pk plane, limiting the number of possible contexts to two ("0" or "1" to step 1406). The elements similar to those of the flowcharts of FIGS. 8 and 13 bear the same references and are not described again here. Only steps 1406, 1407 and 1408 are modified in the sense that the only possible values of the context are now 0 or 1, which also influences the coding performed (step 1408).
- conditional probability of having the value zero, for k ⁇ K1 is conducted by exploiting the knowledge of the context (presence of an equal bit to 1 in the planes of rank k + 1 to KI) during the coding of the plane of rank Pk.
- conditional probability for k ⁇ K-1 is defined as follows:
- Ck is a random variable representing the context associated with any bit bk in the plane Pk.
- the invention leads to an efficient bitmap coding technique and makes this type of coding more flexible than in the state of the art sense. . Indeed, it becomes possible to no longer store pre-calculated probability tables (contexts). A dynamic calculation, based simply on the signal to be coded / decoded, then suffices.
- the present invention also aims at an encoder for implementing the method of the invention, such as that represented by way of example in FIG. 5 described above, and then comprising a module 505 for estimating a distribution of the signal. to code, feeding a module 507 for calculating the probabilities of symbol values. It also relates to a decoder for implementing the method of the invention, such as that represented by way of example in FIG. 6 described above, and then comprising a module 603 for calculating the probabilities of symbol values, starting from an estimate of a signal distribution. In particular, this module 603 is powered by at least one parameter (for example the form factor ⁇ ) characterizing the probability density model of the signal before coding, this parameter ⁇ being received by the decoder in coded form and then being decoded ( reference of Figure 6).
- a parameter for example the form factor ⁇
- the present invention also relates to a computer program intended to be stored in a memory of such an encoder or such a decoder. It includes instructions for implementing the method of the invention, when it is executed by a processor of the encoder or the decoder.
- a computer program intended to be stored in a memory of such an encoder or such a decoder. It includes instructions for implementing the method of the invention, when it is executed by a processor of the encoder or the decoder.
- the flow charts of FIGS. 8, 9, 13 or 14 can schematize respective algorithms of different versions of such a computer program.
- the principle of the invention could also be applied to the case of a stack-run coding where the probabilities of four symbols (0,1, +, -) for "stacks" and "runs "are calculated from a distribution model of the signal to be coded (according to the reference Oger et al previously given), for example from a generalized Gaussian model.
- a distribution model of the signal to be coded for example from a generalized Gaussian model.
- the invention makes it possible to optimize the contexts of the contextual arithmetic coding.
- the coding in the sense of the invention may be contextual arithmetic
- the coding may also be adaptive (for example as a function of the bit rate, the source, or the values taken by the bits of the same plane) as described for example in the reference Langdon et al cited above.
- the invention applies to any type of coding (Huffman, or others) based on the probabilities of symbols in symbol plane coding.
- the invention can be applied more generally to other types of entropy coding than arithmetic coding.
- models other than the generalized Gaussian model are possible.
- models of fixed probabilities a Laplacian model in particular
- parametric models alpha-stable models, Gaussian mixing models, or others
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0706001 | 2007-08-24 | ||
PCT/FR2008/051412 WO2009027606A1 (fr) | 2007-08-24 | 2008-07-25 | Codage/decodage par plans de symboles, avec calcul dynamique de tables de probabilites |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2183851A1 true EP2183851A1 (fr) | 2010-05-12 |
Family
ID=38920619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP08828177A Withdrawn EP2183851A1 (fr) | 2007-08-24 | 2008-07-25 | Codage/decodage par plans de symboles, avec calcul dynamique de tables de probabilites |
Country Status (5)
Country | Link |
---|---|
US (1) | US20110116542A1 (ja) |
EP (1) | EP2183851A1 (ja) |
JP (1) | JP4981174B2 (ja) |
CN (1) | CN101842988B (ja) |
WO (1) | WO2009027606A1 (ja) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9245529B2 (en) | 2009-06-18 | 2016-01-26 | Texas Instruments Incorporated | Adaptive encoding of a digital signal with one or more missing values |
KR20100136890A (ko) * | 2009-06-19 | 2010-12-29 | 삼성전자주식회사 | 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법 |
ES2531013T3 (es) | 2009-10-20 | 2015-03-10 | Fraunhofer Ges Forschung | Codificador de audio, decodificador de audio, método para codificar información de audio, método para decodificar información de audio y programa de computación que usa la detección de un grupo de valores espectrales previamente decodificados |
US7978101B2 (en) * | 2009-10-28 | 2011-07-12 | Motorola Mobility, Inc. | Encoder and decoder using arithmetic stage to compress code space that is not fully utilized |
AU2011206675C1 (en) | 2010-01-12 | 2016-04-28 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio encoder, audio decoder, method for encoding an audio information, method for decoding an audio information and computer program using a hash table describing both significant state values and interval boundaries |
EP2734942A4 (en) * | 2011-08-23 | 2014-06-04 | Huawei Tech Co Ltd | ESTIMATOR FOR ESTIMATING PROBABILITY DISTRIBUTION OF A QUANTIFICATION INDEX |
KR101981267B1 (ko) * | 2012-04-13 | 2019-05-23 | 지이 비디오 컴프레션, 엘엘씨 | 저지연 화상 코딩 |
PT2868103T (pt) | 2012-06-29 | 2017-03-02 | Ge Video Compression Llc | Conceito de fluxo de dados de vídeo |
FR3005816B1 (fr) * | 2013-05-17 | 2019-11-29 | Jean-Claude Colin | Procede pour encoder, notamment des images compressees, notamment par "range coder" ou compression arithmetique. |
JP6387117B2 (ja) * | 2015-01-30 | 2018-09-05 | 日本電信電話株式会社 | 符号化装置、復号装置、これらの方法、プログラム及び記録媒体 |
CN106157960A (zh) * | 2015-04-14 | 2016-11-23 | 杜比实验室特许公司 | 音频内容的自适应算术编解码 |
GB2559200A (en) | 2017-01-31 | 2018-08-01 | Nokia Technologies Oy | Stereo audio signal encoder |
EP3483878A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder supporting a set of different loss concealment tools |
EP3483886A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Selecting pitch lag |
EP3483884A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Signal filtering |
EP3483880A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Temporal noise shaping |
EP3483883A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio coding and decoding with selective postfiltering |
EP3483879A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analysis/synthesis windowing function for modulated lapped transformation |
EP3483882A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Controlling bandwidth in encoders and/or decoders |
WO2019091576A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
WO2019091573A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for encoding and decoding an audio signal using downsampling or interpolation of scale parameters |
WO2019235366A1 (ja) * | 2018-06-06 | 2019-12-12 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
CN112398484B (zh) | 2019-08-15 | 2024-04-23 | 华为技术有限公司 | 一种编码方法及相关设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004042933A1 (en) * | 2002-10-24 | 2004-05-21 | Agency For Science, Technology And Research | A method and a device for processing bit symbols generated by a data source; a computer readable medium; a computer program element |
WO2006075901A1 (en) * | 2005-01-14 | 2006-07-20 | Sungkyunkwan University | Methods of and apparatuses for adaptive entropy encoding and adaptive entropy decoding for scalable video encoding |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3684128B2 (ja) * | 2000-02-18 | 2005-08-17 | キヤノン株式会社 | 算術符号化/復号化方法ならびに算術符号化/復号化装置 |
JP4254017B2 (ja) * | 2000-03-10 | 2009-04-15 | ソニー株式会社 | 画像符号化装置及び方法 |
JP4039609B2 (ja) * | 2002-03-18 | 2008-01-30 | 株式会社Kddi研究所 | 画像符号化装置およびこれを利用した動画像符号化装置 |
JP4195978B2 (ja) * | 2003-02-10 | 2008-12-17 | パナソニック株式会社 | 映像信号符号化装置及び方法及び記録媒体 |
KR100561869B1 (ko) * | 2004-03-10 | 2006-03-17 | 삼성전자주식회사 | 무손실 오디오 부호화/복호화 방법 및 장치 |
KR101237413B1 (ko) * | 2005-12-07 | 2013-02-26 | 삼성전자주식회사 | 오디오 신호의 부호화 및 복호화 방법, 오디오 신호의부호화 및 복호화 장치 |
-
2008
- 2008-07-25 JP JP2010521456A patent/JP4981174B2/ja not_active Expired - Fee Related
- 2008-07-25 CN CN2008801135935A patent/CN101842988B/zh not_active Expired - Fee Related
- 2008-07-25 US US12/674,885 patent/US20110116542A1/en not_active Abandoned
- 2008-07-25 EP EP08828177A patent/EP2183851A1/fr not_active Withdrawn
- 2008-07-25 WO PCT/FR2008/051412 patent/WO2009027606A1/fr active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004042933A1 (en) * | 2002-10-24 | 2004-05-21 | Agency For Science, Technology And Research | A method and a device for processing bit symbols generated by a data source; a computer readable medium; a computer program element |
WO2006075901A1 (en) * | 2005-01-14 | 2006-07-20 | Sungkyunkwan University | Methods of and apparatuses for adaptive entropy encoding and adaptive entropy decoding for scalable video encoding |
Non-Patent Citations (1)
Title |
---|
See also references of WO2009027606A1 * |
Also Published As
Publication number | Publication date |
---|---|
JP4981174B2 (ja) | 2012-07-18 |
CN101842988A (zh) | 2010-09-22 |
WO2009027606A1 (fr) | 2009-03-05 |
JP2010537533A (ja) | 2010-12-02 |
CN101842988B (zh) | 2013-08-14 |
US20110116542A1 (en) | 2011-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2183851A1 (fr) | Codage/decodage par plans de symboles, avec calcul dynamique de tables de probabilites | |
EP2104936B1 (fr) | Codage par transformee, utilisant des fenetres de ponderation et a faible retard | |
EP1581930B1 (fr) | Procede de codage et de decodage audio a debit variable | |
EP2732448B1 (fr) | Adaptations de fenêtres de pondération d'analyse ou de synthèse pour un codage ou décodage par transformée | |
EP1709743A1 (fr) | Quantification vectorielle en dimension et resolution variables | |
EP1997103B1 (fr) | Procede de codage d'un signal audio source, dispositif de codage, procede et dispositif de decodage, signal, produits programme d'ordinateur correspondants | |
JP2002135131A (ja) | 可変サイズベクトルエントロピ符号化を実行するための方法および装置 | |
EP2769378A2 (fr) | Codage hierarchique perfectionne | |
US7609904B2 (en) | Transform coding system and method | |
EP2232489B1 (fr) | Codage/decodage par transformee, a fenetres adaptatives | |
WO2005066936A1 (fr) | Transcodage entre indices de dictionnaires multi-impulsionnels utilises en codage en compression de signaux numeriques | |
EP2289171B1 (fr) | Procède de traitement de donnees numeriques | |
EP2005756A2 (fr) | Quantification vectorielle contrainte | |
EP1496705A2 (fr) | Compression contextuelle d'images numérique | |
WO2009047461A1 (fr) | Dissimulation d'erreur de transmission dans un signal numerique avec repartition de la complexite | |
EP2171713B1 (fr) | Codage de signaux audionumériques | |
EP2126904B1 (fr) | Procede et dispositif de codage audio | |
WO2007091000A2 (fr) | Procede de codage d'un signal audio source, dispositif de codage, procede de decodage, signal, support de donnees, produits programme d'ordinateur correspondants | |
WO2006108736A1 (fr) | Procédé et dispositif de quantification progressive, procédé et dispositif de quantification inverse, programmes informatiques, signal et support de données correspondants | |
FR2778039A1 (fr) | Codage et decodage de signal numerique | |
FR2773927A1 (fr) | Codage et decodage de signal numerique | |
FR3018942A1 (fr) | Estimation d'un bruit de codage introduit par un codage en compression de type micda | |
FR2778038A1 (fr) | Codage de signal numerique | |
FR2953089A1 (fr) | Procedes et dispositifs de codage et de decodage d'un signal numerique | |
FR2927486A1 (fr) | Procedes de codage et de decodage d'un histogramme et d'un signal de valeurs dont la distribution est representee par l'histogramme, et systemes associes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20100217 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA MK RS |
|
DAX | Request for extension of the european patent (deleted) | ||
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ORANGE |
|
17Q | First examination report despatched |
Effective date: 20150909 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20170929 |