WO2012080627A1 - Methods for encoding and decoding an n-ary value, and corresponding devices and computer program - Google Patents

Methods for encoding and decoding an n-ary value, and corresponding devices and computer program Download PDF

Info

Publication number
WO2012080627A1
WO2012080627A1 PCT/FR2011/052918 FR2011052918W WO2012080627A1 WO 2012080627 A1 WO2012080627 A1 WO 2012080627A1 FR 2011052918 W FR2011052918 W FR 2011052918W WO 2012080627 A1 WO2012080627 A1 WO 2012080627A1
Authority
WO
WIPO (PCT)
Prior art keywords
ary
value
values
ordered
code word
Prior art date
Application number
PCT/FR2011/052918
Other languages
French (fr)
Inventor
Stéphane PATEUX
Joël JUNG
Jean-Marc Thiesse
Original Assignee
France Telecom
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from FR1060446A external-priority patent/FR2968862A1/en
Application filed by France Telecom filed Critical France Telecom
Publication of WO2012080627A1 publication Critical patent/WO2012080627A1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory

Definitions

  • This code is used to encode n-ary values such as image type, motion vectors, texture information, gray level, inter or intra prediction modes.
  • the codes used are of variable length, and their construction is established according to a logic defined by a table.
  • the number of these values to be encoded is not a finite number, and the larger the value to be encoded, the larger the length of the corresponding codeword (i.e., the corresponding bit string). This is why we assign a code word close to zero for the values to be encoded frequently and a larger code word for those which are rarer.
  • Each type of value to be encoded (texture information, motion vectors, etc.) is encoded via a specific table, which makes it possible to associate with it the corresponding code word. Typically, these code words are defined as below.
  • Such Huffman or Exp-Golomb codes are certainly optimal for coding a data type having a known probability of observation, but they do not make it possible to obtain the best compression efficiency, especially in case of variation. the probability of observation of these symbols to code.
  • the scheduling step of the set of possible n-ary values is also set implementing the prior information to reduce the complexity of the step of associating the n-ary value to be encoded and a code word of the selected code word dictionary. Indeed, the association step is performed according to a predetermined rule based on the scheduling of codewords and possible n-ary values.
  • said predetermined criterion used in the step of selecting a dictionary of code words previously described corresponds to an increasing order of codeword length making it possible to obtain a reduction in the coding cost.
  • said steps of said method are implemented for each component of said multidimensional value, thus making it possible to reduce the coding complexity of the multidimensional value.
  • said a priori information used for the coding of a second component of said multidimensional value depends on the coding of a first component of said multidimensional value, thus making it possible to improve the coding of the second component.
  • the invention also relates to a device for coding an n-ary value.
  • Another aspect of the invention relates to a method for decoding a codeword representative of an n-ary value.
  • a step of selecting a dictionary of code words said selection taking into account at least one previously decoded n-ary value, said information from priori, delivering a set of code words ordered according to a predetermined criterion, a scheduling step of a set of possible n-ary values, said scheduling taking into account said at least one information of a priori, delivering an ordered set possible n-ary values,
  • means for selecting a code word dictionary said selection taking account of at least one previously decoded n-domain value, called prior information, delivering a set of codewords ordered according to a predetermined criterion, means for scheduling a set of possible n-ary values, said scheduling taking into account said at least one prior information, delivering an ordered set of possible n-ary values,
  • FIGS. 1a and 1b respectively illustrate the main steps of the method of coding an n-ary value, and the decoding method, according to one embodiment of the invention
  • Figures 2a to 2d illustrate the improvement of coding performance by the method according to one embodiment of the invention
  • the general principle of the invention is based on the choice, for coding an n-ary value, of a codeword whose length is optimized as a function of known information relating to this value, for example as a function of the observation. previously coded n-ary values, called prior information.
  • the invention is based on the observation of a priori information and, where appropriate, on the determination of a law of probabilities obtained from this information a priori.
  • This probability law determination then allows the optimized selection of a dictionary of code words that may be different from the classically used dictionaries.
  • such a dictionary is constructed, according to a coding cost optimization criterion.
  • This step makes it possible to associate the n-ary value to be encoded with a code word whose code length is adapted as a function of the probability of appearance of this n-ary value.
  • the invention makes it possible to obtain an overall improvement in the compression and coding cost of an n-ary value by selecting a dictionary of codewords adapted according to a probability law of observation of values n possible, that is to say values that can take the value n-ary to code.
  • n-area value to be encoded, for example, a component of a motion vector, a texture information, a gray level, an inter or intra prediction mode, a gray level relative to a depth information, an information of amplitude of a signal transform coefficient ...
  • a priori information is enriched by a degree of confidence.
  • a degree of confidence corresponds to additional information for each a priori information, making it possible to establish a probability that said prior information is selected or used by different modules of a video coder.
  • a "prognosis" is established for a subsequent selection, during coding, of a priori information.
  • This additional information representative of a degree of confidence ultimately allows an optimized use of each module of the encoder. Indeed, the higher the value of the degree of confidence, the more the coder will be informed of the importance of the information to be coded.
  • a priori information with a high degree of confidence will be favored over a priori information associated with a value of lesser degree of confidence, that is to say having been predicted as rare.
  • the n-ary value to be encoded corresponds to the gray level of a block of an image and that the prior information corresponds, for example, to the gray level of the blocks. neighbors left (21), top (22) and right (23) previously coded.
  • This prior information is represented on the abscissa (the ordinate of FIG. 2a corresponding to the redundancy of each of these prior information).
  • the probability law 24 obtained makes it possible to obtain the probability of the set of possible n-areal values including in particular the probabilities of the prior information 21, 22 and 23.
  • a first step 111 for selecting a dictionary of code words as a function of at least one prior information the code word dictionary that is most suitable for coding the set of values is determined. n-possible areas.
  • the selection step 111 therefore makes it possible to select, or to construct, a dictionary of code words, that is to say a set of ordered codewords, presenting performances that are as close as possible to this theoretical case.
  • the ordering of the possible n-ary values, as represented (25) in FIG. 2b, is carried out according to their probability of occurrence deduced from the probability law 24 represented in FIG. 2a.
  • an association step 113 is implemented.
  • a priori information can be enriched by a degree of confidence.
  • a degree of confidence corresponds to additional information for each a priori information, making it possible to establish a probability that said a priori information is selected or used by different modules of a video decoder.
  • a "prognosis" is established for a subsequent selection, during the decoding, of a priori information.
  • This additional information representative of a degree of confidence ultimately allows an optimized use of each module of the decoder. Indeed, the higher the value of the degree of confidence, the more the decoder will be informed of the importance of the prior information to be considered.
  • a priori information with a high degree of confidence will be favored over a priori information associated with a value of lesser degree of confidence, that is to say having been predicted as rare.
  • a probability law is obtained (121) from at least one information of a priori of the set of information of a priori 120.
  • a probability law is for example obtained at decoding, similarly to the coding described above, for example according to a statistical technique called kernel estimation (or also Parzen-Rozenblatt method).
  • the steps of selecting a dictionary of code words 1021, scheduling a prior 1022 and association information set 1024 associating at least one read code word in the set of ordered codewords of the selected dictionary, an n-ary value of the ordered set of information a priori, according to a predetermined rule, are implemented in a manner similar to decoding and coding (previously described).
  • This first step 1021 optionally takes into account (121) the probability law described above.
  • the probability law is sorted in descending order of the probability of prior information, as shown in Figure 2b.
  • the selection step 1021 therefore makes it possible to select, or to construct, a dictionary of codewords having the closest possible performances of this theoretical case.
  • a selection (1021) based on a measurement of the spreading (or inter-distance) of the prior information is implemented at decoding in a manner similar to the coding.
  • a step 1022 for scheduling a set of possible previously decoded n-ary values is implemented.
  • MV-FMAP Motion Vector Forecast and Mapping
  • the previously decoded possible n-area values are empirically reordered, without defining for each of them a value of observation probability.
  • Another rule could also be considered, especially in a scrambling context using a predetermined scrambling key.
  • kernel estimation or method of

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

The invention relates to a method (11) for encoding an n-ary value. According to the invention, such a method includes: a step of selecting (111) a dictionary of code words, said selection taking into account at least one previously encoded n-ary value, referred to as prior information, providing a set of code words sorted according to a predetermined criterion; a step of sorting (112) a set of possible n-ary values, said sorting taking into account said at least one piece of prior information, thereby outputting a sorted set of possible n-ary values; a step of associating (113), with at least said n-ary value to be encoded of said sorted set of possible n-ary values, a code word of said set of sorted code words in accordance with a predetermined rule; and a step of encoding (114) said n-ary value by said code word having been associated therewith during said association step.

Description

Procédés de codage et de décodage d'une valeur n-aire, dispositifs et programme d'ordinateur correspondants.  Methods of encoding and decoding an appropriate n-ary value, devices and computer program.
1. Domaine de l'invention  1. Field of the invention
Le domaine de l'invention est celui du codage et du décodage d'information, appliqué notamment à la compression de données.  The field of the invention is that of coding and decoding information, applied in particular to data compression.
Plus précisément, l'invention concerne les techniques de codage utilisant des codes à longueur variable.  More specifically, the invention relates to coding techniques using variable length codes.
L'invention peut notamment s'appliquer au codage d'images fixes, ou au codage d'informations d'un flux vidéo, constitué d'une série d'images successives, mis en œuvre dans les codeurs vidéo actuels (MPEG, H.264, etc.) ou à venir (ITU-T/VCEG (H.265) ou ISO/MPEG (HVQ).  The invention can notably apply to the coding of still images, or to the coding of information of a video stream, constituted by a series of successive images, implemented in current video encoders (MPEG, H. 264, etc.) or forthcoming (ITU-T / VCEG (H.265) or ISO / MPEG (HVQ).
2. Art antérieur  2. Prior Art
On décrit ci-après l'art antérieur relatif à la compression de données dont l'objectif est notamment de transformer une suite de données A en une suite de données B plus courte.  The prior art relating to data compression is described below, the purpose of which is, in particular, to transform a series of data A into a shorter data series B.
Classiquement, dans cet objectif de compression de données, un code de longueur variable est utilisé pour le codage d'une valeur n-aire. On entend par valeur n-aire une variable qui peut prendre n valeurs entières, avec n e [0,+∞[.  Conventionally, for this purpose of data compression, a variable length code is used for encoding an n-ary value. By n-ary value we mean a variable that can take n integer values, with n e [0, + ∞ [.
Parmi les codes de longueur variable connus, les codes établis selon l'algorithme de Huffman sont souvent utilisés du fait de leur efficacité en compression. La longueur d'un code selon cet algorithme est déterminée à partir d'une estimation de la probabilité d'observation des données source, un code court étant associé aux données les plus redondantes.  Among the known variable length codes, the codes established according to the Huffman algorithm are often used because of their compression efficiency. The length of a code according to this algorithm is determined from an estimation of the observation probability of the source data, a short code being associated with the most redundant data.
Les codes de type Exp-Golomb proposent une alternative aux codes de Huffman, en particulier lorsque le nombre de valeurs possibles des données à coder n'est pas borné. Le code Exp-Golomb est notamment utilisé dans la norme de compression vidéo H.264 ou MPEG-4 AVC.  Exp-Golomb type codes offer an alternative to Huffman codes, in particular when the number of possible values of the data to be encoded is not limited. The Exp-Golomb code is notably used in the H.264 or MPEG-4 AVC video compression standard.
Ce code est utilisé afin de coder des valeurs n-aires telles que le type de l'image, les vecteurs mouvement, une information de texture, un niveau de gris, les modes de prédiction inter ou intra. Les codes utilisés sont de longueur variable, et leur construction s'établit suivant une logique définie par une table. Le nombre de ces valeurs à coder n'est pas un nombre fini, et plus la valeur à coder est grande et plus la longueur du mot de code correspondant (c'est-à-dire la chaîne binaire correspondante) est grande. C'est pour cela que l'on attribue un mot de code proche du zéro pour les valeurs à coder fréquentes et un mot de code plus grand pour ceux qui sont plus rares. Chaque type de valeur à coder (information de texture, vecteurs mouvement, etc.) est codé via une table spécifique, qui permet de lui associer le mot de code lui correspondant. Typiquement, ces mots de codes sont définis comme ci-dessous. This code is used to encode n-ary values such as image type, motion vectors, texture information, gray level, inter or intra prediction modes. The codes used are of variable length, and their construction is established according to a logic defined by a table. The number of these values to be encoded is not a finite number, and the larger the value to be encoded, the larger the length of the corresponding codeword (i.e., the corresponding bit string). This is why we assign a code word close to zero for the values to be encoded frequently and a larger code word for those which are rarer. Each type of value to be encoded (texture information, motion vectors, etc.) is encoded via a specific table, which makes it possible to associate with it the corresponding code word. Typically, these code words are defined as below.
Un préfixe est tout d'abord codé avec une suite de N bits à 1 suivi d'un bit 0. Puis, un suffixe est codé sur N bits x (x prenant la valeur 1 ou la valeur 0), le suffixe comprend donc classiquement autant de bits que le nombre de bits à 1 du préfixe.  A prefix is first coded with a sequence of N bits at 1 followed by a bit 0. Then, a suffix is coded on N bits x (x taking the value 1 or the value 0), the suffix therefore comprises classically as many bits as the number of bits at 1 of the prefix.
Figure imgf000004_0001
Figure imgf000004_0001
De tels codes de Huffman ou de type Exp-Golomb sont certes optimaux pour un codage d'un type de donnée présentant une probabilité d'observation connue, mais ils ne permettent pas d'obtenir la meilleure efficacité de compression, notamment en cas de variation de la probabilité d'observation de ces symboles à coder.  Such Huffman or Exp-Golomb codes are certainly optimal for coding a data type having a known probability of observation, but they do not make it possible to obtain the best compression efficiency, especially in case of variation. the probability of observation of these symbols to code.
Une autre approche particulière de compression dans le contexte de codage d'images utilisant le codage de vecteurs mouvement, pour des blocs d'une image découpée en macroblocs, eux-mêmes subdivisés en blocs, est décrite dans le document « Motion Vector Forecast and Mapping (MV-FMAP) Method for entropy Coding based Video Coder s » (J. Le Tanou, J.M. Thiesse, M. Antoni, Proceedings of Multimedia Signal processing (MMSP) 2010 Oct 2010).  Another particular approach of compression in the context of encoding images using motion vector coding, for blocks of an image cut into macroblocks, themselves subdivided into blocks, is described in the document "Motion Vector Forecast and Mapping". (MV-FMAP) Method for Entropy Coding Based Video Coders (J. Tanou, JM Thiesse, M. Antoni, Proceedings of Multimedia Signal Processing (MMSP) 2010 Oct. 2010).
Selon cette approche, une redistribution adaptative des résidus de vecteurs mouvement est mise en œuvre, préalablement au codage entropique, permettant de réduire le coût de codage.  According to this approach, an adaptive redistribution of motion vector residues is implemented, prior to entropy coding, to reduce the coding cost.
Cette technique propre au codage d'informations de mouvement présente certes une amélioration du coût de codage, mais présente en contrepartie une complexité importante du fait qu'elle nécessite la mise en œuvre des résidus de vecteurs mouvement bidimensionnels. Par ailleurs, tout comme les techniques classiques de codage précédemment citées, cette technique ne permet pas de pallier des mé -performances en cas de variation de la probabilité d'observation des données à coder.  This technique specific to the coding of motion information certainly has an improvement in the cost of coding, but in return has a significant complexity because it requires the implementation of two-dimensional motion vector residues. Moreover, just like the conventional coding techniques previously mentioned, this technique does not make it possible to overcome meperformances in the event of a variation in the observation probability of the data to be coded.
Il existe donc un besoin pour une nouvelle technique de faible complexité permettant de garantir une optimisation du codage en termes de compression même en cas de variation de la probabilité d'observation des données à coder. 3. Exposé de l'invention There is therefore a need for a new technique of low complexity to ensure an optimization of the coding in terms of compression even in case of variation of the observation probability of the data to be encoded. 3. Presentation of the invention
L'invention propose une solution nouvelle qui ne présente pas l'ensemble de ces inconvénients de l'art antérieur, sous la forme d'un procédé de codage d'une valeur n-aire.  The invention proposes a new solution that does not have all of these disadvantages of the prior art, in the form of a method of coding an n-ary value.
Selon l'invention un tel procédé comprend :  According to the invention, such a method comprises:
- une étape de sélection d'un dictionnaire de mots de code, ladite sélection tenant compte d'au moins une valeur n-aire précédemment codée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, une étape d'ordonnancement d'un ensemble de valeurs n-aires possibles, ledit ordonnancement tenant compte de ladite au moins une information d' a priori, délivrant un ensemble ordonné de valeurs n-aires possibles,  a step of selecting a dictionary of code words, said selection taking account of at least one previously coded n-ary value, called prior information, delivering a set of codewords ordered according to a predetermined criterion, a scheduling step of a set of possible n-ary values, said scheduling taking into account said at least one prior information, delivering an ordered set of possible n-ary values,
une étape d'association à au moins ladite valeur n-aire à coder dudit ensemble ordonné de valeurs n-aires possibles, d'un mot de code dudit ensemble de mots de code ordonnés, selon une règle prédéterminée,  a step of associating with at least said n-ary value to be encoded from said ordered set of possible n-ary values, of a code word of said set of ordered codewords, according to a predetermined rule,
une étape de codage de ladite valeur n-aire par ledit mot de code associé lors de ladite étape d'association.  a step of encoding said n-ary value by said associated codeword during said associating step.
Ainsi, l'invention repose sur une approche nouvelle et inventive du codage d'une valeur n- aire, permettant d'associer à cette valeur n-aire à coder un mot de code dont la longueur est optimisée quelle que soit la probabilité d'observation des données à coder. La compression de données résultant de la mise en œuvre du procédé de codage selon l'invention est donc améliorée, du fait qu'une adaptation optimale de la longueur des mots de codes est obtenue.  Thus, the invention is based on a novel and inventive approach to the coding of an n-ary value, making it possible to associate this n-ary value with coding a codeword whose length is optimized whatever the probability of observation of the data to be coded. The data compression resulting from the implementation of the coding method according to the invention is therefore improved, since an optimal adaptation of the length of the codewords is obtained.
L'association optimisée nécessite au préalable la mise en œuvre des étapes de sélection d'un dictionnaire de mots de code d'une part et d'ordonnancement d'un ensemble de valeurs n- aires possibles d' autre part.  The optimized association first requires the implementation of the steps of selecting a dictionary of codewords on the one hand and scheduling of a set of possible n-ary values on the other hand.
Les étapes préalables de sélection d'un dictionnaire de mots de code et d'ordonnancement sont indépendantes et peuvent donc être mises en œuvre en parallèle ou l'une à la suite de l'autre. En outre, ces deux étapes tiennent compte des valeurs n-aires précédemment codées appelées informations d'à priori, afin de tenir compte de toute variation de la probabilité d'observation des données à coder.  The preliminary steps of selecting a dictionary of code words and scheduling are independent and can therefore be implemented in parallel or one after the other. In addition, these two steps take into account previously coded n-ary values called prior information, in order to account for any variation in the observation probability of the data to be encoded.
Plus précisément, l'étape de sélection d'un dictionnaire de mots de code vise à tirer profit de l'analyse des informations d'à priori et adapte en fonction la longueur des mots de code qui seront associés ultérieurement aux valeurs n-aire à coder. Les mots de codes du dictionnaire ainsi sélectionné sont ordonnés selon un critère prédéterminé détaillé ci-dessous.  More precisely, the step of selecting a dictionary of code words aims to take advantage of the analysis of the prior information and adapts according to the length of the code words that will be associated later with the n-ary values. code. The code words of the dictionary thus selected are ordered according to a predetermined criterion detailed below.
L'étape d'ordonnancement de l'ensemble des valeurs n-aires possibles est également mise en œuvre en tenant compte des informations d'à priori afin de réduire la complexité de l'étape d'association de la valeur n-aire à coder et d'un mot de code du dictionnaire de mots de code sélectionné. En effet, l'étape d'association est effectuée selon une règle prédéterminée basée sur l'ordonnancement des mots de codes et des valeurs n-aires possibles. The scheduling step of the set of possible n-ary values is also set implementing the prior information to reduce the complexity of the step of associating the n-ary value to be encoded and a code word of the selected code word dictionary. Indeed, the association step is performed according to a predetermined rule based on the scheduling of codewords and possible n-ary values.
Selon un mode de réalisation de l'invention, ladite étape de sélection met en œuvre une étape de construction dudit dictionnaire de mots de code en fonction d'un critère d'optimisation de coût de codage.  According to one embodiment of the invention, said selection step implements a step of constructing said dictionary of codewords according to a coding cost optimization criterion.
Selon un mode de réalisation de l'invention, une étape de construction d'un dictionnaire de mots de code est mise en œuvre lorsque l'observation des informations d'à priori indique que la longueur des mots de code de dictionnaires connus n'est pas optimale.  According to one embodiment of the invention, a step of constructing a dictionary of code words is implemented when the observation of the prior information indicates that the length of the codewords of known dictionaries is not not optimal.
Ainsi, l'étape de sélection d'un dictionnaire de mots de code vise explicitement à réduire le coût de codage et donc à améliorer la compression des données à coder.  Thus, the step of selecting a dictionary of code words explicitly aims to reduce the cost of coding and thus improve the compression of the data to be encoded.
Selon une option particulière de l'invention, ladite étape de sélection et/ou ladite étape d'ordonnancement tient compte d'une loi de probabilité d'apparition pour ledit ensemble de valeurs n-aires possibles, obtenue à partir de ladite au moins une information d'à priori.  According to a particular option of the invention, said selection step and / or said scheduling step takes into account a probability of occurrence law for said set of possible n-ary values, obtained from said at least one information of a priori.
Selon cette option une probabilité de l'ensemble des valeurs n-aires possibles est obtenue. Ainsi, toute valeur n-aire à coder différente des informations d'à priori est également prise en compte pour la sélection du dictionnaire de mots de code. Une telle technique permet donc d'affiner la sélection du dictionnaire adapté au contexte de codage.  According to this option a probability of the set of possible n-ary values is obtained. Thus, any n-ary value to be coded different from the prior information is also taken into account for the selection of the code word dictionary. Such a technique therefore makes it possible to refine the selection of the dictionary adapted to the coding context.
En outre, lorsque l'étape d'ordonnancement des valeurs n-aires possibles tient également compte de cette loi de probabilité, la complexité du procédé de codage est réduite.  In addition, when the scheduling step of the possible n-ary values also takes into account this probability law, the complexity of the coding method is reduced.
Selon un mode de réalisation de l'invention, ladite information d'à priori correspond à une valeur n-aire précédemment codée enrichie d'un degré de confiance.  According to one embodiment of the invention, said a priori information corresponds to a previously coded n-ary value enriched with a degree of confidence.
Un degré de confiance correspond à une information additionnelle pour chaque information d'à priori, permettant d'indiquer l'importance de l'information d'à priori. Une information d'à priori avec un fort degré de confiance sera privilégiée par rapport à une information d'à priori associée à une valeur de degré de confiance moindre.  A degree of confidence corresponds to additional information for each a priori information, making it possible to indicate the importance of the prior information. A priori information with a high degree of confidence will be favored over a priori information associated with a value of less confidence.
Avantageusement, ledit critère prédéterminé utilisé dans l'étape de sélection d'un dictionnaire de mots de code précédemment décrite, correspond à un ordre croissant de longueur de mot de code permettant d'obtenir une réduction du coût de codage  Advantageously, said predetermined criterion used in the step of selecting a dictionary of code words previously described corresponds to an increasing order of codeword length making it possible to obtain a reduction in the coding cost.
Selon un mode de réalisation particulier, ladite règle prédéterminée vise à associer à la k- ième valeur n-aire dudit ensemble ordonné de valeurs n-aires possibles, le k-ième mot de code dudit ensemble de mots de code ordonnés. Ce mode de réalisation particulier permet avantageusement une réduction de la complexité et du coût car on associe le plus petit mot de code possible à une valeur n-aire à coder. According to a particular embodiment, said predetermined rule aims to associate with the kth n-ary value of said ordered set of possible n-ary values, the k-th code word of said set of ordered codewords. This particular embodiment advantageously allows a reduction in complexity and cost since the smallest possible codeword is associated with an n-ary value to be encoded.
Selon un mode de réalisation de l'invention, lorsque ladite valeur n-aire est une valeur multidimensionnelle, lesdites étapes dudit procédé sont mises en œuvre pour chaque composante de ladite valeur multidimensionnelle, permettant ainsi de réduire la complexité de codage de la valeur multidimensionnelle.  According to one embodiment of the invention, when said n-ary value is a multidimensional value, said steps of said method are implemented for each component of said multidimensional value, thus making it possible to reduce the coding complexity of the multidimensional value.
Selon une variante de ce mode de réalisation, ladite information d' a priori utilisée pour le codage d'une deuxième composante de ladite valeur multidimensionnelle dépend du codage d'une première composante de ladite valeur multidimensionnelle, permettant ainsi d'améliorer le codage de la deuxième composante.  According to a variant of this embodiment, said a priori information used for the coding of a second component of said multidimensional value depends on the coding of a first component of said multidimensional value, thus making it possible to improve the coding of the second component.
L'invention concerne également un dispositif de codage d'une valeur n-aire.  The invention also relates to a device for coding an n-ary value.
Selon l'invention, un tel dispositif comprend : According to the invention, such a device comprises:
des moyens de sélection d'un dictionnaire de mots de code, lesdits moyens de sélection tenant compte d'au moins une valeur n-aire précédemment codée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, des moyens d'ordonnancement d'un ensemble de valeurs n-aires possibles, lesdits moyens d'ordonnancement tenant compte de ladite au moins une information d'à priori, délivrant un ensemble ordonné de valeurs n-aires possibles,  means for selecting a dictionary of code words, said selection means taking into account at least one previously coded n-area value, called prior information, delivering a set of code words ordered according to a predetermined criterion means for scheduling a set of possible n-ary values, said scheduling means taking account of said at least one prior information, delivering an ordered set of possible n-ary values,
des moyens d'association à au moins ladite valeur n-aire à coder dudit ensemble ordonné de valeurs n-aires possibles, d'un mot de code dudit ensemble de mots de code ordonnés, selon une règle prédéterminée,  means for associating with at least said n-ary value to be coded from said ordered set of possible n-ary values, of a code word of said set of ordered codewords, according to a predetermined rule,
des moyens de codage de ladite valeur n-aire par ledit mot de code associé lors de ladite étape d'association.  means for encoding said n-ary value by said associated codeword in said associating step.
Un tel dispositif de codage est notamment adapté à mettre en œuvre les étapes du procédé de codage décrit précédemment. Ce dispositif pourra bien sûr comporter les différentes caractéristiques relatives au procédé de codage selon l'invention. Ainsi, les caractéristiques et avantages de ce dispositif de codage sont les mêmes que ceux du procédé de codage, et ne sont pas détaillés plus amplement.  Such a coding device is particularly adapted to implement the steps of the coding method described above. This device may of course include the various features relating to the coding method according to the invention. Thus, the characteristics and advantages of this coding device are the same as those of the coding method, and are not detailed further.
Un autre aspect de l'invention concerne un procédé de décodage d'un mot de code représentatif d'une valeur n-aire.  Another aspect of the invention relates to a method for decoding a codeword representative of an n-ary value.
Selon l'invention, un tel procédé comprend les étapes suivantes :  According to the invention, such a method comprises the following steps:
une étape de sélection d'un dictionnaire de mots de code, ladite sélection tenant compte d'au moins une valeur n-aire précédemment décodée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, une étape d'ordonnancement d'un ensemble de valeurs n-aires possibles, ledit ordonnancement tenant compte de ladite au moins une information d' a priori, délivrant un ensemble ordonné de valeurs n-aires possibles, a step of selecting a dictionary of code words, said selection taking into account at least one previously decoded n-ary value, said information from priori, delivering a set of code words ordered according to a predetermined criterion, a scheduling step of a set of possible n-ary values, said scheduling taking into account said at least one information of a priori, delivering an ordered set possible n-ary values,
- une étape de décodage dudit mot de code, délivrant un mot de code lu,  a step of decoding said code word, delivering a read codeword,
une étape d'association dudit mot de code lu à au moins une valeur n-aire dudit ensemble ordonné de valeurs n-aires possibles, selon une règle prédéterminée.  a step of associating said read code word with at least one n-ary value of said ordered set of possible n-ary values, according to a predetermined rule.
L'invention concerne également un dispositif de décodage d'un mot de code représentatif d'une valeur n-aire, comprenant :  The invention also relates to a device for decoding a codeword representative of an n-ary value, comprising:
- des moyens de sélection d'un dictionnaire de mots de code, ladite sélection tenant compte d'au moins une valeur n-aire précédemment décodée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, des moyens d'ordonnancement d'un ensemble de valeurs n-aires possibles, ledit ordonnancement tenant compte de ladite au moins une information d' a priori, délivrant un ensemble ordonné de valeurs n-aires possibles,  means for selecting a code word dictionary, said selection taking account of at least one previously decoded n-domain value, called prior information, delivering a set of codewords ordered according to a predetermined criterion, means for scheduling a set of possible n-ary values, said scheduling taking into account said at least one prior information, delivering an ordered set of possible n-ary values,
des moyens de décodage dudit mot de code, délivrant un mot de code lu, des moyens d'association dudit mot de code lu à au moins une valeur n-aire dudit ensemble ordonné de valeurs n-aires possibles, selon une règle prédéterminée.  means for decoding said code word, delivering a read code word, means for associating said read code word with at least one n-ary value of said ordered set of possible n-ary values, according to a predetermined rule.
Enfin l'invention concerne un programme d'ordinateur comportant des instructions pour la mise en œuvre d'un procédé de codage ou de décodage tels que décrits précédemment, lorsque ce programme est exécuté par un processeur.  Finally, the invention relates to a computer program comprising instructions for the implementation of a coding or decoding method as described above, when this program is executed by a processor.
4. Liste des figures  4. List of figures
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels :  Other features and advantages of the invention will appear more clearly on reading the following description of a particular embodiment, given as a simple illustrative and nonlimiting example, and the appended drawings, among which:
les figures la et lb illustrent respectivement les principales étapes du procédé de codage d'une valeur n-aire, et du procédé de décodage, selon un mode de réalisation de l'invention ;  FIGS. 1a and 1b respectively illustrate the main steps of the method of coding an n-ary value, and the decoding method, according to one embodiment of the invention;
les figures 2a à 2d illustrent l'amélioration des performances de codage par le procédé selon un mode de réalisation de l'invention ;  Figures 2a to 2d illustrate the improvement of coding performance by the method according to one embodiment of the invention;
la figure 3 illustre une application du procédé de codage à une valeur bi-dimensionnelle ; les figures 4 et 5 illustrent respectivement un exemple de structure simplifiée d'un dispositif de codage et de décodage, selon un mode de réalisation de l'invention. 5. Description d'un mode de réalisation de l'invention FIG. 3 illustrates an application of the coding method to a two-dimensional value; Figures 4 and 5 respectively illustrate an example of a simplified structure of a coding device and decoding, according to one embodiment of the invention. 5. Description of an embodiment of the invention
5.1 Principe général  5.1 General principle
Le principe général de l'invention repose sur le choix, pour coder une valeur n-aire, d'un mot de code dont la longueur est optimisée en fonction d'informations connues relatives à cette valeur, par exemple en fonction de l'observation de valeurs n-aires précédemment codées, appelées informations d'à priori.  The general principle of the invention is based on the choice, for coding an n-ary value, of a codeword whose length is optimized as a function of known information relating to this value, for example as a function of the observation. previously coded n-ary values, called prior information.
Ainsi, l'invention se base sur l'observation des informations d'à priori et, le cas échéant, sur la détermination d'une loi de probabilités obtenue à partir de ces informations d'à priori. Cette détermination de loi de probabilité permet ensuite la sélection optimisée d'un dictionnaire de mots de code qui peut être différent des dictionnaires classiquement utilisés. Selon un mode de réalisation de l'invention, un tel dictionnaire est construit, en fonction d'un critère d'optimisation de coût de codage.  Thus, the invention is based on the observation of a priori information and, where appropriate, on the determination of a law of probabilities obtained from this information a priori. This probability law determination then allows the optimized selection of a dictionary of code words that may be different from the classically used dictionaries. According to one embodiment of the invention, such a dictionary is constructed, according to a coding cost optimization criterion.
Une fois ce dictionnaire de mots de code sélectionné, ou construit, une association entre un ensemble de valeurs n-aires possibles préalablement ordonné, et l'ensemble ordonné des mots de code du dictionnaire sélectionné est mise en œuvre.  Once this dictionary of code words has been selected, or constructed, an association between a set of possible n-ary values ordered beforehand, and the ordered set of codewords of the selected dictionary is implemented.
Cette étape permet d'associer la valeur n-aire à coder à un mot de code dont la longueur de code est adaptée en fonction de la probabilité d'apparition de cette valeur n-aire.  This step makes it possible to associate the n-ary value to be encoded with a code word whose code length is adapted as a function of the probability of appearance of this n-ary value.
Ainsi, l'invention permet d'obtenir une amélioration globale de la compression et du coût de codage d'une valeur n-aire en sélectionnant un dictionnaire de mots de code adapté en fonction d'une loi de probabilité d'observation de valeurs n-aires possibles, c'est-à-dire de valeurs que peut prendre la valeur n-aire à coder.  Thus, the invention makes it possible to obtain an overall improvement in the compression and coding cost of an n-ary value by selecting a dictionary of codewords adapted according to a probability law of observation of values n possible, that is to say values that can take the value n-ary to code.
On entend par valeur n-aire à coder par exemple une composante d'un vecteur mouvement, une information de texture, un niveau de gris, un mode de prédiction inter ou intra, un niveau de gris relatif à une information de profondeur, une information d'amplitude d'un coefficient de transformée du signal...  The term "n-area value" to be encoded, for example, a component of a motion vector, a texture information, a gray level, an inter or intra prediction mode, a gray level relative to a depth information, an information of amplitude of a signal transform coefficient ...
5.2 Description d'un mode de réalisation  5.2 Description of an embodiment
5.2.1 Procédé de codage  5.2.1 Coding method
On présente maintenant, en relation avec les figures la et 2a à 2d, les principales étapes du procédé de codage selon un mode de réalisation de l'invention.  The main steps of the coding method according to one embodiment of the invention are now presented in relation to FIGS. 1a and 2a to 2d.
On considère dans ce mode de réalisation qu'une valeur n-aire précédemment codée est appelée information d'à priori. Une illustration sous forme graphique d'un exemple d'ensemble d'information d'à priori 100 est représentée sur la figure 2a.  In this embodiment, it is considered that a previously coded n-ary value is called a priori information. A graphic illustration of an exemplary information set of a priori 100 is shown in Figure 2a.
Selon un aspect particulier de l'invention, une information d'à priori est enrichie par un degré de confiance. Un tel degré de confiance correspond à une information additionnelle pour chaque information d'à priori, permettant d'établir une probabilité que ladite information d'à priori soit sélectionnée ou utilisée par différents modules d'un codeur vidéo. On établit en quelque sorte un « pronostic » pour une sélection ultérieure, lors du codage, d'une information d'à priori. Cette information additionnelle représentative d'un degré de confiance permet à terme une utilisation optimisée de chaque module du codeur. En effet, plus la valeur du degré de confiance sera grande, et plus le codeur sera informé de l'importance de l'information à coder considérée. Une information d'à priori avec un fort degré de confiance sera privilégiée par rapport à une information d'à priori associée à une valeur de degré de confiance moindre, c'est-à-dire ayant été pronostiquée comme rare. According to a particular aspect of the invention, a priori information is enriched by a degree of confidence. Such a degree of confidence corresponds to additional information for each a priori information, making it possible to establish a probability that said prior information is selected or used by different modules of a video coder. In a way, a "prognosis" is established for a subsequent selection, during coding, of a priori information. This additional information representative of a degree of confidence ultimately allows an optimized use of each module of the encoder. Indeed, the higher the value of the degree of confidence, the more the coder will be informed of the importance of the information to be coded. A priori information with a high degree of confidence will be favored over a priori information associated with a value of lesser degree of confidence, that is to say having been predicted as rare.
Par exemple, en relation avec la figure 2a, on considère que la valeur n-aire à coder correspond au niveau de gris d'un bloc d'une image et que les informations d'à priori correspondent par exemple au niveau de gris des blocs voisins à gauche (21), en haut (22) et à droite (23) précédemment codés. Ces informations d'à priori sont représentées en abscisse (l'ordonnée de la figure 2a correspondant à la redondance de chacune de ces informations d'à priori).  For example, in relation to FIG. 2a, it is considered that the n-ary value to be encoded corresponds to the gray level of a block of an image and that the prior information corresponds, for example, to the gray level of the blocks. neighbors left (21), top (22) and right (23) previously coded. This prior information is represented on the abscissa (the ordinate of FIG. 2a corresponding to the redundancy of each of these prior information).
Selon une option de ce mode de réalisation, une loi de probabilité 24 est obtenue (101) à partir d'au moins une information d'à priori de l'ensemble des informations d'à priori 100.  According to an option of this embodiment, a probability law 24 is obtained (101) from at least one prior information of the set of information of a priori 100.
En relation avec la figure 2a, la loi de probabilité 24 obtenue permet d'obtenir la probabilité de l'ensemble des valeurs n-aires possibles comprenant notamment les probabilités des informations d'à priori 21, 22 et 23.  In relation with FIG. 2a, the probability law 24 obtained makes it possible to obtain the probability of the set of possible n-areal values including in particular the probabilities of the prior information 21, 22 and 23.
Pour obtenir cette loi de probabilité 24, on utilise par exemple une technique statistique appelée estimation par noyau (ou encore méthode de Parzen-Rozenblatt). Cette méthode est une méthode non-paramétrique d'estimation de la densité de probabilité d'une variable aléatoire.  To obtain this probability law 24, for example, a statistical technique called kernel estimation (or the Parzen-Rozenblatt method) is used. This method is a non-parametric method for estimating the probability density of a random variable.
Selon cette technique, on considère un ensemble d'observations Xj avec pour chacune une probabilité d'à priori pj. On définit alors la probabilité d'observation d'une valeur x comme étant :  According to this technique, we consider a set of observations Xj with each for a probability of a priori pj. The probability of observing a value x is then defined as:
p x) oc ^ PiF(x— xi ) où F est un noyau de filtrage. i px) oc ^ P i F (x- x i ) where F is a filtering kernel. i
Par exemple, F peut être un noyau de filtrage gaussien ( (JC) = , e -47x7 - ), laplacien l _H For example, F can be a Gaussian filtering kernel ((JC) =, e -4 7x7 -), Laplacian l _H
( (JC) =— e b ), ou tout autre filtre à valeurs positives. La probabilité est définie ici de façon 2b ((JC) = - e b ), or any other filter with positive values. The probability is defined here 2b
proportionnelle, afin de prendre en compte la normalisation au besoin (i.e. que la somme des probabilités pour chaque valeur vaille 1). Comme illustré en figure la, le procédé de codage 11 selon ce mode de réalisation comprend principalement quatre étapes 111, 112, 113 et 114. proportional, in order to take standardization into account if necessary (ie that the sum of the probabilities for each value is 1). As illustrated in FIG. 1a, the coding method 11 according to this embodiment mainly comprises four steps 111, 112, 113 and 114.
Lors d'une première étape 111 de sélection d'un dictionnaire de mots de code en fonction d'au moins une information d'à priori, on détermine le dictionnaire de mots de code le plus adapté pour le codage de l'ensemble des valeurs n-aires possibles.  In a first step 111 for selecting a dictionary of code words as a function of at least one prior information, the code word dictionary that is most suitable for coding the set of values is determined. n-possible areas.
Cette première étape 111 tient compte, de manière optionnelle (101), de la loi de probabilité 24 décrite précédemment. La loi de probabilité est triée selon un ordre décroissant de la probabilité des valeurs n-aires possibles, tel qu'illustré en figure 2b.  This first step 111 optionally takes into account (101) the probability law 24 described above. The probability law is sorted in descending order of the probability of possible n-ary values, as shown in Figure 2b.
Par ailleurs, selon cette loi de probabilité et l'application des enseignements connus de la théorie de l'information, il est possible de déterminer le « gabarit théorique » de la longueur de code optimale en fonction des informations d'à priori. La figure 2c représente notamment un tel gabarit obtenu selon l'équation : longueur =—\og2p(x) .  Moreover, according to this law of probability and the application of the known teachings of the information theory, it is possible to determine the "theoretical template" of the optimal code length according to the prior information. FIG. 2c represents, in particular, such a template obtained according to the equation: length = - \ og2p (x).
L'étape de sélection 111 permet donc de sélectionner, ou de construire, un dictionnaire de mots de code, c'est-à-dire un ensemble de mots de code ordonnés, présentant des performances les plus proches possibles de ce cas théorique.  The selection step 111 therefore makes it possible to select, or to construct, a dictionary of code words, that is to say a set of ordered codewords, presenting performances that are as close as possible to this theoretical case.
Par exemple, la figure 2d représente une courbe illustrant la longueur des mots de code de type Exp-Golomb (précédemment décrit en relation avec l'art antérieur). La comparaison des courbes des figures 2d et 2c révèle les mauvaises performances du code de type Exp-Golomb, et donc la nécessité de sélectionner un autre dictionnaire de mots de code.  For example, Figure 2d shows a curve illustrating the length of Exp-Golomb code words (previously described in relation to the prior art). The comparison of the curves of FIGS. 2d and 2c reveals the poor performance of the Exp-Golomb type code, and therefore the need to select another dictionary of codewords.
Selon un aspect particulier de ce mode de réalisation de l'invention, l'étape de sélection According to a particular aspect of this embodiment of the invention, the selection step
111 met en œuvre la construction 1110 du dictionnaire de mots de code optimal à sélectionner, prenant en compte des informations d'à priori et délivrant un dictionnaire de mots de code adapté à la probabilité d'observation des données à coder. 111 implements the construction 1110 of the optimal codeword codebook to be selected, taking into account prior information and delivering a dictionary of codewords adapted to the observation probability of the data to be encoded.
Pour ce faire, l'invention propose une technique de construction d'un dictionnaire de mot de codes de type préfixe-suffixe en faisant varier la longueur du suffixe de sorte à converger vers le gabarit théorique de la figure 2c. Ainsi, au contraire de art antérieur relatif aux mots de code de type Exp-Golomb précédemment décrit, le nombre de bits utilisés pour le suffixe peut être différent du nombre de bits à 1 utilisés dans le préfixe. Un exemple d'un tel code est présenté ci-dessous : To do this, the invention proposes a technique for constructing a prefix-suffix type code word dictionary by varying the length of the suffix so as to converge towards the theoretical template of FIG. 2c. Thus, unlike prior art relating to the code words of Exp-Golomb type previously described, the number of bits used for the suffix may be different from the number of bits to 1 used in the prefix. An example of such a code is shown below:
Figure imgf000012_0001
Figure imgf000012_0001
Il est à noter que dans cet exemple, la longueur du suffixe pour un préfixe ayant 3 bits à 1 est plus petite.  It should be noted that in this example, the suffix length for a prefix having 3 bits to 1 is smaller.
Par ailleurs, on remarque que le dictionnaire de mots de code de type Ex-Golomb utilisé par AVC délivre une série linéaire de longueur de suffixe égale à 0, 1, 2, 3, 4, ... bits respectivement pour chacun des ensembles de valeurs (0), (1, 2), (3, 4, 5, 6) , (7, 8, 9, 10, 11, 12, 13, 14) et (15, 16, 17, 18, 29, 30), tandis que le dictionnaire construit selon ce mode de réalisation de l'invention délivre la série non linéaire optimisée de longueur de suffixe égale à 0, 1, 2, 2, 3, 4, ... bits. Ainsi, le suffixe de longueur 2 apparaît deux fois pour les ensembles de valeurs (3, 4, 5, 6) et (7, 8, 9, 10).  Moreover, we note that the code word dictionary Ex-Golomb used by AVC delivers a linear series of suffix length equal to 0, 1, 2, 3, 4, ... bits respectively for each set of values (0), (1, 2), (3, 4, 5, 6), (7, 8, 9, 10, 11, 12, 13, 14) and (15, 16, 17, 18, 29, 30), while the dictionary constructed according to this embodiment of the invention delivers the optimized nonlinear series of suffix length equal to 0, 1, 2, 2, 3, 4, ... bits. Thus, the suffix of length 2 appears twice for sets of values (3, 4, 5, 6) and (7, 8, 9, 10).
Ainsi, l'invention permet de définir un dictionnaire de mots de code ayant des spectres de longueur de mot de code variable adaptée à la probabilité d'observation des valeurs n-aires possibles.  Thus, the invention makes it possible to define a dictionary of code words having variable code word length spectra adapted to the probability of observation of possible n-ary values.
Le programme présenté en Annexe 1 permet de construire, selon un mode de réalisation de l'invention, le dictionnaire de mots de code le plus adapté.  The program presented in Appendix 1 makes it possible to construct, according to an embodiment of the invention, the most suitable code word dictionary.
Selon une option alternative de ce mode de réalisation, une sélection (111) basée sur une mesure de l'étalement (ou inter-distance) des informations d' a priori est mise en œuvre et comprend les étapes suivantes :  According to an alternative option of this embodiment, a selection (111) based on a measurement of the spreading (or inter-distance) of the prior information is implemented and comprises the following steps:
- un ensemble d'informations d'à priori Xj est considéré,  a set of information of a priori Xj is considered,
- on calcule l'inter-distance moyenne: ID =- the average inter-distance is calculated: ID =
Figure imgf000012_0002
Figure imgf000012_0002
- si l'inter-distance ID est supérieure à un seuil (par exemple, on peut prendre une valeur de seuil égale à 4), on utilise alors le nouveau dictionnaire construit selon l'exemple donné ci-dessus, sinon, on utilise le dictionnaire des codes Exp-Golomb utilisé par AVC. En parallèle, ou une fois cette première étape de sélection 111 de dictionnaire de mot de code effectuée, une étape 112 d'ordonnancement d'un ensemble de valeurs n-aires possibles est mise en œuvre. if the inter-distance ID is greater than a threshold (for example, we can take a threshold value equal to 4), we then use the new dictionary constructed according to the example given above, otherwise, we use the Exp-Golomb codebook used by AVC. In parallel, or once this first code word dictionary selection step 111 has been performed, a scheduling step 112 of a set of possible n-ary values is implemented.
Selon une première variante, l'ordonnancement des valeurs n-aires possibles, tel que représenté (25) sur la figure 2b, est effectué suivant leur probabilité d'apparition déduite de la loi de probabilité 24 représentée sur la figure 2a.  According to a first variant, the ordering of the possible n-ary values, as represented (25) in FIG. 2b, is carried out according to their probability of occurrence deduced from the probability law 24 represented in FIG. 2a.
Le principe d'un tel ordonnancement de valeurs n-aires possibles, basé sur leur probabilité d'apparition, est notamment appliqué au cas particulier du codage de valeurs n-aires correspondant à des vecteurs mouvement, pour des blocs d'une image découpée en macroblocs, eux-mêmes subdivisés en blocs, et est décrit dans le document « Motion Vector Forecast and Mapping (MV- FMAP) Methodfor entropy Coding based Video Coder s » (J. Le Tanou, J.M. Thiesse, M. Antoni, Proceedings of Multimedia Signal processing (MMSP) 2010 Oct 2010).  The principle of such an ordering of possible n-ary values, based on their probability of appearance, is notably applied to the particular case of the coding of n-ary values corresponding to motion vectors, for blocks of an image divided into macroblocks, themselves subdivided into blocks, and is described in the document "Motion Vector Forecast and Mapping (MV-FMAP) Methodfor entropy Coding based Video Coder s" (J. Tanou, JM Thiesse, M. Antoni, Proceedings of Multimedia Signal Processing (MMSP) 2010 Oct 2010).
Selon une autre variante, les valeurs n-aires possibles à coder sont réordonnées empiriquement, sans définir pour chacune d'elle une valeur de probabilité d'observation. L'approche suivante est par exemple utilisée:  According to another variant, the possible n-ary values to be encoded are reordered empirically, without defining for each of them a value of probability of observation. The following approach is used for example:
- initialisation d'une pile d'attente ordonnée selon un degré de confiance contenant les valeurs n-aire précédemment codées,  initialization of an orderly waiting stack according to a degree of confidence containing the previously coded n-ary values,
- extraction du premier élément de la pile, ayant le degré de confiance le plus fort, pour le placer en première position dans l'ordonnancement de valeur n-aires possibles,  extracting the first element of the stack, having the highest degree of confidence, to place it in first position in the scheduling of possible n-ary values,
- ajout dans l'ordonnancement de valeur n-aires possibles des valeurs voisines (+1 et -1 relativement à la valeur courante) si elles ne figurent pas dans la pile d'attente ordonnée des valeurs n-aires précédemment codées, adding in the scheduling of possible n-areas values of the neighboring values (+1 and -1 relative to the current value) if they do not appear in the ordered waiting stack of the previously coded n-ary values,
- itération des étapes d'extraction et d'ajout tant que l'ensemble des valeurs n-aires possibles n'a pas été intégré dans l'ordonnancement  - iteration of the extraction and addition steps as long as the set of possible n-ary values has not been integrated into the scheduling
Une fois ces deux étapes indépendantes de sélection 111 et d'ordonnancement 112 effectuées l'une après l'autre ou en parallèle, une étape d'association 113 est mise en œuvre.  Once these two independent selection 111 and scheduling 112 steps are performed one after the other or in parallel, an association step 113 is implemented.
Cette étape d'association associe à au moins une valeur n-aire de l'ensemble ordonné de valeurs n-aires possibles, correspondant à la valeur n-aire à coder, un mot de code de l'ensemble de mots de code ordonnés, selon une règle prédéterminée.  This association step associates with at least one n-ary value of the ordered set of possible n-ary values, corresponding to the n-ary value to be coded, a codeword of the set of ordered codewords, according to a predetermined rule.
Selon un aspect particulier de l'invention, cette règle prédéterminée vise par exemple à associer à la k-ième valeur n-aire de l'ensemble ordonné de valeurs n-aires possibles, le k-ième mot de code de l'ensemble de mots de code ordonnés.  According to a particular aspect of the invention, this predetermined rule aims for example to associate the k-th n-ary value of the ordered set of possible n-ary values, the k-th code word of the set of ordered code words.
On pourrait également envisager une autre règle, notamment dans un contexte de brouillage utilisant une clé de brouillage prédéterminée. Another rule could be considered, particularly in a context of scrambling using a predetermined scrambling key.
Une fois cette association effectuée, une étape de codage 114 de la valeur n-aire par le mot de code associé lors de l'étape d'association 113 est mise en oeuvre.  Once this association has been made, a step 114 of coding the n-ary value by the associated code word during the association step 113 is implemented.
5.2.2 Procédé de décodage  5.2.2 Decoding process
On présente maintenant, en relation avec les figures lb et 2a à 2d, les principales étapes du procédé de décodage selon un mode de réalisation de l'invention.  The main steps of the decoding method according to one embodiment of the invention are now presented with reference to FIGS. 1b and 2a to 2d.
On considère dans ce mode de réalisation une information reçue par le décodeur correspondant par exemple à un train binaire Τβ à décoder, le train binaire Τβ ayant été préalablement codé selon le procédé de codage décrit précédemment, et un ensemble 120 d'informations d'à priori correspondant à des valeurs n-aires précédemment décodées dont les probabilités d'informations d'à priori 21, 22, 23, sont par exemple représentées sur la figure 2a précédemment décrite (les mêmes références numériques étant utilisées pour les probabilités des informations d'à priori des valeurs n-aires possibles utilisées au codage et pour les probabilités des informations d'à priori des valeurs n-aires précédemment décodées utilisées au décodage).  In this embodiment, information received by the decoder corresponding, for example, to a bit stream Τβ to be decoded is considered, the bit stream Τβ having been previously coded according to the coding method described above, and a set 120 of information from FIG. a priori corresponding to previously decoded n-ary values whose probabilities of prior information 21, 22, 23, are for example represented in FIG. 2a previously described (the same reference numerals being used for the probabilities of the information of FIG. a priori, possible n-ary values used in the coding and for the probabilities of the information of a priori of the previously decoded n-ary values used during the decoding).
De manière similaire au codage, selon un aspect particulier de l'invention au décodage, une information d'à priori peut être enrichie par un degré de confiance. Un tel degré de confiance correspond à une information additionnelle pour chaque information d'à priori, permettant d'établir une probabilité que ladite information d'à priori soit sélectionnée ou utilisée par différents modules d'un décodeur vidéo. On établit en quelque sorte un « pronostic » pour une sélection ultérieure, lors du décodage, d'une information d'à priori. Cette information additionnelle représentative d'un degré de confiance permet à terme une utilisation optimisée de chaque module du décodeur. En effet, plus la valeur du degré de confiance sera grande, et plus le décodeur sera informé de l'importance de l'information d'à priori à considérer. Une information d'à priori avec un fort degré de confiance sera privilégiée par rapport à une information d'à priori associée à une valeur de degré de confiance moindre, c'est-à-dire ayant été pronostiquée comme rare.  Similar to the coding, according to a particular aspect of the invention at decoding, a priori information can be enriched by a degree of confidence. Such a degree of confidence corresponds to additional information for each a priori information, making it possible to establish a probability that said a priori information is selected or used by different modules of a video decoder. In a way, a "prognosis" is established for a subsequent selection, during the decoding, of a priori information. This additional information representative of a degree of confidence ultimately allows an optimized use of each module of the decoder. Indeed, the higher the value of the degree of confidence, the more the decoder will be informed of the importance of the prior information to be considered. A priori information with a high degree of confidence will be favored over a priori information associated with a value of lesser degree of confidence, that is to say having been predicted as rare.
Selon une option de ce mode de réalisation, une loi de probabilité est obtenue (121) à partir d'au moins une information d'à priori de l'ensemble des informations d'à priori 120. Une telle loi de probabilité est par exemple obtenue au décodage, de manière similaire au codage décrit précédemment, par exemple selon une technique statistique appelée estimation par noyau (ou encore méthode de Parzen-Rozenblatt).  According to an option of this embodiment, a probability law is obtained (121) from at least one information of a priori of the set of information of a priori 120. Such a probability law is for example obtained at decoding, similarly to the coding described above, for example according to a statistical technique called kernel estimation (or also Parzen-Rozenblatt method).
Comme illustré en figure lb, le procédé de décodage 12 selon ce mode de réalisation comprend principalement quatre étapes 1021, 1022, 1023 et 1024.  As illustrated in FIG. 1b, the decoding method 12 according to this embodiment mainly comprises four steps 1021, 1022, 1023 and 1024.
Les étapes de sélection d'un dictionnaire de mots de code 1021, d'ordonnancement d'un ensemble d'information d'à priori 1022 et d'association 1024 associant à au moins un mot de code lu dans l'ensemble de mots de code ordonnés du dictionnaire sélectionné, une valeur n-aire de l'ensemble ordonné d'information d'à priori, selon une règle prédéterminée, sont mises en oeuvre de manière similaire au décodage et au codage (précédemment décrit). The steps of selecting a dictionary of code words 1021, scheduling a prior 1022 and association information set 1024 associating at least one read code word in the set of ordered codewords of the selected dictionary, an n-ary value of the ordered set of information a priori, according to a predetermined rule, are implemented in a manner similar to decoding and coding (previously described).
Lors d'une première étape 1021 de sélection d'un dictionnaire de mots de code en fonction d'au moins une information d'à priori, on détermine le dictionnaire de mots de code le plus adapté pour le décodage de l'information transmise.  In a first step 1021 for selecting a dictionary of code words as a function of at least one prior information, the code word dictionary that is the most suitable for decoding the transmitted information is determined.
Cette première étape 1021 tient compte, de manière optionnelle (121), de la loi de probabilité décrite précédemment. La loi de probabilité est triée selon un ordre décroissant de la probabilité des information d'à priori, tel qu'illustré en figure 2b.  This first step 1021 optionally takes into account (121) the probability law described above. The probability law is sorted in descending order of the probability of prior information, as shown in Figure 2b.
Par ailleurs, selon cette loi de probabilité et l'application des enseignements connus de la théorie de l'information, il est possible de déterminer le « gabarit théorique » de la longueur de code optimale en fonction des informations d'à priori. Comme décrit précédemment en relation avec le codage, la figure 2c s'applique également au décodage et représente notamment un tel gabarit obtenu selon l'équation : longueur =—\og2p(x) .  Moreover, according to this law of probability and the application of the known teachings of the information theory, it is possible to determine the "theoretical template" of the optimal code length according to the prior information. As described above in relation to the coding, FIG. 2c also applies to the decoding and in particular represents such a template obtained according to the equation: length = - \ og2p (x).
L'étape de sélection 1021 permet donc de sélectionner, ou de construire, un dictionnaire de mots de code présentant des performances les plus proches possibles de ce cas théorique.  The selection step 1021 therefore makes it possible to select, or to construct, a dictionary of codewords having the closest possible performances of this theoretical case.
Par exemple, la figure 2d représente une courbe illustrant la longueur des mots de code de type Exp-Golomb (précédemment décrit en relation avec l'art antérieur). La comparaison des courbes des figures 2d et 2c révèle les mauvaises performances du code de type Exp-Golomb, et donc la nécessité de sélectionner un autre dictionnaire de mots code.  For example, Figure 2d shows a curve illustrating the length of Exp-Golomb code words (previously described in relation to the prior art). The comparison of the curves of FIGS. 2d and 2c reveals the poor performance of the Exp-Golomb type code, and therefore the need to select another dictionary of code words.
Selon un aspect particulier de ce mode de réalisation de l'invention, l'étape de sélection 1021 met en œuvre la construction 1020 du dictionnaire de mots de code optimal à sélectionner, prenant en compte des informations d'à priori et délivrant un dictionnaire de mots de code adapté à la probabilité d'observation des informations d'à priori correspondant aux valeurs n-aires possibles précédemment décodées.  According to a particular aspect of this embodiment of the invention, the selection step 1021 implements the construction 1020 of the optimal code word dictionary to be selected, taking into account information of a priori and delivering a dictionary of code words adapted to the probability of observation of the prior information corresponding to the possible n-ary values previously decoded.
Pour ce faire, l'invention propose une technique de construction d'un dictionnaire de mots de code de type préfixe-suffixe en faisant varier la longueur du suffixe de sorte à converger vers le gabarit théorique de la figure 2c. Ainsi, de même qu'au codage, le nombre de bits utilisés au décodage pour le suffixe peut être différent du nombre de bits à 1 utilisés dans le préfixe.  To do this, the invention proposes a technique for constructing a dictionary of prefix-suffix type codewords by varying the length of the suffix so as to converge towards the theoretical template of FIG. 2c. Thus, as with coding, the number of bits used in the decoding for the suffix may be different from the number of bits at 1 used in the prefix.
Ainsi, l'invention permet de définir un dictionnaire de mots de code ayant des spectres de longueur de mot de code variable adaptée à la probabilité d'observation des valeurs n-aires possibles précédemment décodées. De manière similaire au codage, le programme présenté en Annexe 1 permet de construire, selon un mode de réalisation de l'invention, le dictionnaire de mots de code le plus adapté. Thus, the invention makes it possible to define a dictionary of code words having variable code word length spectra adapted to the probability of observation of the previously decoded possible n-ary values. In a manner similar to coding, the program presented in Appendix 1 makes it possible to construct, according to one embodiment of the invention, the most suitable code word dictionary.
Selon une option alternative de ce mode de réalisation, une sélection (1021) basée sur une mesure de l'étalement (ou inter-distance) des informations d' a priori est mise en œuvre au décodage de manière similaire au codage.  According to an alternative option of this embodiment, a selection (1021) based on a measurement of the spreading (or inter-distance) of the prior information is implemented at decoding in a manner similar to the coding.
En parallèle, ou une fois cette première étape de sélection 1021 de dictionnaire de mots de code effectuée, une étape 1022 d'ordonnancement d'un ensemble de valeurs n-aires possibles précédemment décodées est mise en œuvre.  In parallel, or once this first codeword dictionary selection step 1021 is performed, a step 1022 for scheduling a set of possible previously decoded n-ary values is implemented.
De même qu'au codage, selon une première variante du procédé de décodage, l'ordonnancement des valeurs n-aires possibles, tel que représenté (25) sur la figure 2b, est effectué suivant leur probabilité d'apparition déduite de la loi de probabilité 24 représentée sur la figure 2a.  As with the coding, according to a first variant of the decoding method, the scheduling of the possible n-ary values, as represented (25) in FIG. 2b, is carried out according to their probability of occurrence deduced from the law of probability 24 shown in Figure 2a.
Le principe d'un tel ordonnancement de valeurs n-aires possibles, basé sur leur probabilité d'apparition, est notamment appliqué au cas particulier du décodage de mots de code représentatifs de vecteurs mouvement, pour des blocs d'une image découpée en macroblocs, eux-mêmes subdivisés en blocs, et est décrit dans le document « Motion Vector Forecast and Mapping (MV- FMAP) Methodfor entropy Coding based Video Coder s » (J. Le Tanou, J.M. Thiesse, M. Antoni, Proceedings of Multimedia Signal processing (MMSP) 2010 Oct 2010).  The principle of such an ordering of possible n-ary values, based on their probability of appearance, is notably applied to the particular case of the decoding of codewords representative of motion vectors, for blocks of an image cut into macroblocks, themselves subdivided into blocks, and is described in the document "Motion Vector Forecast and Mapping (MV-FMAP) Methodfor Entropy Coding based Video Coder s" (J. Tanou, JM Thiesse, M. Antoni, Proceedings of Multimedia Signal Processing (MMSP) 2010 Oct 2010).
Selon une autre variante, similaire à celle précédemment décrite pour le codage, les valeurs n-aires possibles précédemment décodées sont réordonnées empiriquement, sans définir pour chacune d'elle une valeur de probabilité d'observation.  According to another variant, similar to that previously described for the coding, the previously decoded possible n-area values are empirically reordered, without defining for each of them a value of observation probability.
Une fois ces deux étapes indépendantes de sélection 1021 et d'ordonnancement 1022 effectuées l'une après l'autre ou en parallèle, une étape de décodage 1023 à partir du train binaire Τβ de l'information reçue, à savoir le mot de code, est mise en œuvre.  Once these two independent selection steps 1021 and sequencing 1022 are performed one after the other or in parallel, a decoding step 1023 from the bitstream Τβ of the received information, namely the code word, is implemented.
Cette étape de décodage 1023 décode le train binaire Τβ par lecture dans le dictionnaire sélectionné d'un mot de code décodé, appelé mot de code lu. En effet, la sélection du dictionnaire établit le type de préfixe-suffixe utilisé lors du codage, et délivre un mot de code lu correspondant.  This decoding step 1023 decodes the binary stream Τβ by reading in the selected dictionary a decoded code word, called a code word read. Indeed, the selection of the dictionary establishes the type of prefix-suffix used during the coding, and delivers a corresponding read code word.
Une fois l'étape de décodage effectuée, une étape d'association 1024 est mise en œuvre. Once the decoding step has been performed, an association step 1024 is implemented.
Cette étape d'association associe au mot de code lu obtenu précédemment, au moins une valeur n-aire de l'ensemble ordonné de valeurs n-aires possibles issu de l'étape d'ordonnancement 1022, selon une règle prédéterminée. Cette valeur n-aire associée correspond à la valeur n-aire à décoder. This association step associates with the read code word obtained previously, at least one n-ary value of the ordered set of possible n-ary values resulting from the scheduling step 1022, according to a predetermined rule. This associated n-ary value corresponds to the n-ary value to be decoded.
Selon un aspect particulier de l'invention, cette règle prédéterminée vise par exemple à associer au mot de code lu qui correspond au k-ième mot de code de l'ensemble de mots de code ordonnés du dictionnaire de mots de codes sélectionné, la k-ième valeur n-aire de l'ensemble ordonné de valeurs n-aires possibles. According to a particular aspect of the invention, this predetermined rule aims for example to associate with the read code word which corresponds to the k-th codeword of the set of codewords. ordered from the selected code word dictionary, the k-th n-ary value of the ordered set of possible n-ary values.
On pourrait également envisager une autre règle, notamment dans un contexte de brouillage utilisant une clé de brouillage prédéterminée.  Another rule could also be considered, especially in a scrambling context using a predetermined scrambling key.
5.3 Description d'une variante du mode de réalisation appliquée au codage d'une valeur n-aire multidimensionnelle  5.3 Description of a variant of the embodiment applied to the coding of a multidimensional n-aryvalue
La figure 3 illustre une variante du mode de réalisation décrit ci-dessus dans laquelle on considère que la valeur n-aire est une donnée multidimensionnelle.  FIG. 3 illustrates a variant of the embodiment described above in which it is considered that the n-ary value is a multidimensional datum.
En particulier, la figure 3 est appliquée au codage d'une valeur n-aire correspondant à vecteur mouvement à deux dimensions. Le principe de codage présenté ici se généralise aisément à plus de composantes.  In particular, FIG. 3 is applied to the coding of an n-ary value corresponding to a two-dimensional motion vector. The coding principle presented here is easily generalized to more components.
L'invention propose d'effectuer un codage de vecteur mouvement composante par composante. Plus précisément, les quatre étapes du procédé de codage précédemment décrites, sont mises en œuvre pour chaque composante du vecteur mouvement à coder 31 1.  The invention proposes to carry out a component motion vector coding by component. More precisely, the four steps of the coding method previously described are implemented for each component of the motion vector to be encoded 31 1.
L'ensemble des informations d'à priori utilisé par le procédé de codage est tout d'abord établit (312) pour une première composante. Par exemple, une information d'à priori est une valeur n-aire correspondant à un vecteur mouvement précédemment codé, d'un bloc voisin ou encore d'un bloc co-localisé d'une image précédemment codée.  The set of prior information used by the coding method is first set (312) for a first component. For example, a priori information is an n-ary value corresponding to a previously encoded motion vector, a neighboring block or a co-located block of a previously encoded image.
Selon une option de ce mode de réalisation, une loi de probabilité est obtenue à partir d' au moins une information d' a priori.  According to an option of this embodiment, a probability law is obtained from at least one information of a priori.
Pour ce faire, la technique statistique appelée estimation par noyau (ou encore méthode de To do this, the statistical technique called kernel estimation (or method of
Parzen-Rozenblatt) est généralisable à une valeur n-aire multidimensionnelle. On définit par exemple la probabilité d'observation d'une valeur n-aire correspondant à un vecteur mouvement bidimensionnel (x, y) comme étant: p(x, y ) oc ^ p.F. [x— x. , y— y. ) . Le noyau estimateur, appelé fenêtre de Parzen, est alors ici bidimensionnel. Typiquement, on peut utiliser une fenêtre de Parzen séparable tel que F(x,y) = F(x).F(y). Parzen-Rozenblatt) is generalizable to a multidimensional n-ary value. For example, the probability of observing an n-ary value corresponding to a two-dimensional motion vector (x, y) is defined as being: p (x, y) oc ^ p.F. [x- x. , y- y. ). The estimator kernel, called the Parzen window, is here two-dimensional. Typically, we can use a separable Parzen window such that F (x, y) = F (x) .F (y).
Il est aussi possible de définir des probabilités d'observation pour chaque composante du vecteur. Ainsi, pour la première composante à coder (on considère sans généralisation qu'il s'agit de la composante "x"), on peut définir la probabilité d'observation comme suit : p(x) oc ^ p.F. — χ. ) , où F est un noyau de filtrage, et pi des probabilités d'à priori sur les différentes observations Xj. Typiquement on peut prendre pj =1/B où B est le nombre d'à priori. Les quatre étapes de sélection d'un dictionnaire de mots de code, d'ordonnancement, d'association et de codage sont par la suite mises en œuvre (313) pour la première composante.It is also possible to define observation probabilities for each component of the vector. Thus, for the first component to be encoded (we consider without generalization that it is the component "x"), we can define the probability of observation as follows: p (x) oc ^ pF - χ. ), where F is a filtering nucleus, and pi probabilities of a priori on the different observations Xj. Typically we can take pj = 1 / B where B is the number of priori. The four steps of selecting a dictionary of code words, scheduling, association and coding are subsequently implemented (313) for the first component.
Comme décrit précédemment, ces quatre étapes tiennent bien compte de l'ensemble d'informations d'à priori précédemment établi (312). As previously described, these four steps take into account the pre-established information set (312).
Puis, l'ensemble des informations d'à priori utilisé par le procédé de codage est établi (314) pour la deuxième composante, appelée ici « y ». Selon une option de ce mode de réalisation, une loi de probabilité est également obtenue à partir d'au moins une information d'à priori. La technique statistique appelée estimation par noyau est par exemple utilisée selon les deux approches suivantes:  Then, the set of prior information used by the coding method is set (314) for the second component, here called "y". According to an option of this embodiment, a probability law is also obtained from at least one prior information. The statistical technique called kernel estimation is for example used according to the two following approaches:
p{y) ^ Yj p Fi {y - yi ) p {y) Y y p F i {y - y i )
i  i
b) - p(y /x)<x Jp'i F(y - yi)F(x - xi) où les p'j représentent des probabilités d'à priori (par défaut identique aux pj, mais pouvant prendre également des valeurs différentes du fait que l'observation de la première composante diffère de celle de la deuxième composante). La première approche (a) permet de réaliser un codage indépendant des composantes du vecteur à coder, au détriment de l'efficacité de compression. La seconde formulation (b) permet de prendre en compte la probabilité conjointe d'observation des deux composantes. b) - p (y / x) < x J p ' i F (y - y i ) F (x - x i ) where the p'j represent probabilities of a priori (by default identical to the pj, but possibly also take different values because the observation of the first component differs from that of the second component). The first approach (a) makes it possible to carry out an independent coding of the components of the vector to be coded, to the detriment of the compression efficiency. The second formulation (b) makes it possible to take into account the joint probability of observation of the two components.
Ainsi, selon cette deuxième approche (b), le codage 315 (comprenant les quatre étapes de sélection d'un dictionnaire de mots de code, d'ordonnancement, d'association et de codage) d'une deuxième composante du vecteur mouvement bidimensionnel dépend du codage d'une première composante du vecteur mouvement bidimensionnel.  Thus, according to this second approach (b), the encoding 315 (comprising the four steps of selecting a dictionary of code words, scheduling, association and coding) of a second component of the two-dimensional motion vector depends on encoding a first component of the two-dimensional motion vector.
Ainsi, en comparaison avec la technique de l'art antérieur présentée dans le document « Motion Vector Forecast and Mapping (MV-FMAP) Method for entropy Coding based Video Coders » (J. Le Tanou, J.M. Thiesse, M. Antoni, Proceedings of Multimedia Signal processing (MMSP) 2010 Oct 2010), le codage selon l'invention permet une réduction de complexité.  Thus, in comparison with the technique of the prior art presented in the document "Motion Vector Forecast and Mapping (MV-FMAP) Method for Entropy Coding based Video Coders" (J. Tanou, JM Thiesse, M. Antoni, Proceedings of Multimedia Signal Processing (MMSP) 2010 Oct 2010), the coding according to the invention allows a reduction of complexity.
En effet, si on considère P le nombre de valeurs n-aires possibles que peut prendre chaque composante, le procédé de codage selon l'invention permet de réduire le nombre d'opérations de PxPxlog(P) (selon le document de l'art antérieur précédemment cité) à 2xPxlog(P). Les P opérations selon le procédé de l'invention étant effectuées en parallèle selon l'approche (a) précédemment décrite ou à la suite l'une de l'autre selon l'approche (b).  Indeed, if we consider P the number of possible n-area values that each component can take, the coding method according to the invention makes it possible to reduce the number of operations of PxPxlog (P) (according to the document of the art formerly cited) at 2xPxlog (P). The operations according to the method of the invention being carried out in parallel according to the approach (a) previously described or following each other according to the approach (b).
5.4 Structure d'un dispositif de codage et de décodage  5.4 Structure of a coding and decoding device
La figure 4 illustre un exemple de structure simplifiée d'un dispositif de codage selon un mode de réalisation de l'invention. FIG. 4 illustrates an example of a simplified structure of a coding device according to a embodiment of the invention.
Par exemple, le dispositif de codage comprend une mémoire 40 constituée d'une mémoire tampon, une unité de traitement 41, équipée par exemple d'un microprocesseur μΡ, et pilotée par le programme d'ordinateur 42, mettant en œuvre le procédé de codage selon l'invention.  For example, the coding device comprises a memory 40 consisting of a buffer memory, a processing unit 41, equipped for example with a microprocessor μΡ, and driven by the computer program 42, implementing the coding method according to the invention.
A l'initialisation, les instructions de code du programme d'ordinateur 42 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 41. L'unité de traitement 41 reçoit en entrée au moins une valeur n-aire à coder. Le microprocesseur de l'unité de traitement 41 met en œuvre les étapes du procédé de codage décrit précédemment, selon les instructions du programme d'ordinateur 42, pour délivrer au moins un mot de code pour le codage de la valeur n-aire. Pour cela, le dispositif de codage comprend, outre la mémoire tampon 40 :  At initialization, the code instructions of the computer program 42 are for example loaded into a RAM before being executed by the processor of the processing unit 41. The processing unit 41 receives as input at least a n-ary value to code. The microprocessor of the processing unit 41 implements the steps of the coding method described above, according to the instructions of the computer program 42, to deliver at least one code word for the coding of the n-ary value. For this, the coding device comprises, in addition to the buffer memory 40:
des moyens de sélection d'un dictionnaire de mots de code, lesdits moyens de sélection tenant compte d'au moins une valeur n-aire précédemment codée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, - des moyens d'ordonnancement d'un ensemble de valeurs n-aires possibles, lesdits moyens d'ordonnancement tenant compte de ladite au moins une information d'à priori, délivrant un ensemble ordonné de valeurs n-aires possibles,  means for selecting a dictionary of code words, said selection means taking into account at least one previously coded n-area value, called prior information, delivering a set of code words ordered according to a predetermined criterion means for scheduling a set of possible n-ary values, said scheduling means taking account of said at least one prior information, delivering an ordered set of possible n-ary values,
des moyens d'association à chaque valeur n-aire dudit ensemble ordonné de valeurs n-aires possibles, d'un mot de code dudit ensemble de mots de code ordonnés, selon une règle prédéterminée,  means for associating with each n-ary value of said ordered set of possible n-ary values a code word of said set of ordered codewords according to a predetermined rule,
des moyens de codage de ladite valeur n-aire par ledit mot de code associé lors de ladite étape d'association.  means for encoding said n-ary value by said associated codeword in said associating step.
Ces moyens sont pilotés par le microprocesseur de l'unité de traitement 41.  These means are controlled by the microprocessor of the processing unit 41.
La figure 5 illustre un exemple de structure simplifiée d'un dispositif de décodage selon un mode de réalisation de l'invention.  FIG. 5 illustrates an example of a simplified structure of a decoding device according to one embodiment of the invention.
Par exemple, le dispositif de décodage comprend une mémoire 50 constituée d'une mémoire tampon, une unité de traitement 51, équipée par exemple d'un microprocesseur μΡ, et pilotée par le programme d'ordinateur 52, mettant en œuvre le procédé de décodage selon l'invention.  For example, the decoding device comprises a memory 50 consisting of a buffer memory, a processing unit 51, equipped for example with a microprocessor μΡ, and driven by the computer program 52, implementing the decoding method according to the invention.
A l'initialisation, les instructions de code du programme d'ordinateur 52 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 51. L'unité de traitement 51 reçoit en entrée au moins un mot de code à décoder, le mot de code est extrait d'un flux de données codées. Le microprocesseur de l'unité de traitement 51 met en œuvre les étapes du procédé de décodage décrit précédemment, selon les instructions du programme d'ordinateur 52, pour délivrer au moins une valeur n-aire pour le décodage d'un mot de code. Pour cela, le dispositif de décodage comprend, outre la mémoire tampon 50 : At initialization, the code instructions of the computer program 52 are for example loaded into a RAM before being executed by the processor of the processing unit 51. The processing unit 51 receives as input at least a code word to be decoded, the code word is extracted from a coded data stream. The microprocessor of the processing unit 51 implements the steps of the decoding method described above, according to the instructions of the computer program 52, for outputting at least one n-ary value for the decoding of a codeword. For this, the decoding device comprises, in addition to the buffer memory 50:
des moyens de sélection d'un dictionnaire de mots de code, lesdits moyens de sélection tenant compte d'au moins une valeur n-aire précédemment décodée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, des moyens d'ordonnancement d'un ensemble de valeurs n-aires possibles, lesdits moyens d'ordonnancement tenant compte de ladite au moins une information d'à priori, délivrant un ensemble ordonné de valeurs n-aires possibles,  means for selecting a dictionary of code words, said selection means taking account of at least one previously decoded n-ary value, called prior information, delivering a set of codewords ordered according to a predetermined criterion means for scheduling a set of possible n-ary values, said scheduling means taking account of said at least one prior information, delivering an ordered set of possible n-ary values,
des moyens de décodage dudit mot de code, délivrant un mot de code lu,  means for decoding said code word, delivering a read code word,
des moyens d' association dudit mot de code lu à au moins une valeur n-aire dudit ensemble ordonné de valeurs n-aires possibles, selon une règle prédéterminée.  means for associating said read code word with at least one n-ary value of said ordered set of possible n-ary values according to a predetermined rule.
Ces moyens sont pilotés par le microprocesseur de l'unité de traitement 51. These means are controlled by the microprocessor of the processing unit 51.
ANNEXE 1 ANNEX 1
Exemple de programme permettant de sélectionner un dictionnaire de mots de code selon l'invention: Example of a program for selecting a dictionary of code words according to the invention:
Dans ce programme, en entrée, on considère que les données sont triées selon leur probabilité décroissante. Plus précisément, il y a « nbSamples » données et le paramètre proba(i) définit la probabilité d'apparition de la valeur n-aire considérée. for(int i=0; i<nbSamples; i++) In this program, as input, we consider that the data are sorted according to their decreasing probability. Specifically, there are "nbSamples" data and the parameter proba (i) defines the probability of occurrence of the considered n-ary value. for (int i = 0; i <nbSamples; i ++)
{  {
aTotCost [i] = 0; // used for storing totCost at Pos  aTotCost [i] = 0; // used for storing totCost at Pos
aLastLenSuff [i] = 0; // used for storing lastLenSuff at Pos  aLastLenSuff [i] = 0; // used for storing lastLenSuff at Pos
aSumProba [i] = 0; // used for storing sumProba  aSumProba [i] = 0; // used for storing sumProba
aCriterion [i] = 0; // used for storing CriterionCost  aCriterion [i] = 0; // used for storing CriterionCost
aPrefLen [i] = 0; // used for storing prefix len at pos  aPrefLen [i] = 0; // used for storing prefix len at pos
aPosFrom [i] = 0; // used for storing incoming last pos  aPosFrom [i] = 0; // used for storing incoming
} //— store sumProba  } // - store sumProba
aSumProba[0] = proba(O); aSumProba [0] = proba (O);
for(int i=l ; i<nbSamples; i++) for (int i = l; i <nbSamples; i ++)
aSumProba[i] = aSumProba[i-l] + proba(i);  aSumProba [i] = aSumProba [i-1] + proba (i);
//— dynamic programmation to optimize // - dynamic programming to optimize
int posFrom=-l, suffLenFrom=0; // int posFrom = -l, suffLenFrom = 0; //
double totCostFrom = 0, sumProbaFrom=0; double totCostFrom = 0, sumProbaFrom = 0;
int prefLen = 1 ; // initialising prefix len int prefLen = 1; // initialising prefix len
while (posFrom<nbSamples-l) while (posFrom <nbSamples-l)
{ {
//- testing various suffLen  // - testing various suffLen
for(int suffLen=suffLenFrom; suffLen<suffLenFrom+2; suffLen++)  for (int suffLen = suffLenFrom; suffLen <suffLenFrom + 2; suffLen ++)
{ //— consider using for interval JposFrom; posTo], a prefix of len prefLen, and suffix of len suffLen { // - consider using for interval JposFrom; posTo], a prefix of len prefLen, and suffix of len suffLen
int cwCost = prefLen + suffLen;  int cwCost = prefLen + suffLen;
int nbCW = (l«suffLen);  int nbCW = (l "suffLen);
int posTo = posFrom + nbCW;  int posTo = posFrom + nbCW;
if (posTo>=nbSamples)  if (posTo> = nbSamples)
posTo = nbSamples-1 ;  posTo = nbSamples-1;
double sumProbaFromTo = aSumProba[posTo]-sumProbaFrom; //— probability for interval double totCost = totCostFrom + sumProbaFromTo*cwCost; //— estimated coding cost for symbols up to posTo  double sumProbaFromTo = aSumProba [posTo] -sumProbaFrom; // - probability for interval double totCost = totCostFrom + sumProbaFromTo * cwCost; // - estimated costing for symbols up to posTo
double criterion = totCost + (l-aSumProba[posTo]) * prefLen; //— estimated criterion with considered parameter  double criterion = totCost + (l-aSumProba [posTo]) * prefLen; // - estimated criterion with parameter parameter
if ( (aTotCost[posTo]==0) Il (aCriterion[posTo]>criterion) )  if ((aTotCost [posTo] == 0) Il (aCriterion [posTo]> criterion))
{ //— estimated that this setting is better than previously observed at position posTo  POSTO POSTO POSTO
aTotCost[posTo]= totCost;  aTotCost [posTo] = totCost;
aLastLenSuff[posTo] = suffLen;  aLastLenSuff [posTo] = suffLen;
aCriterion[posTo] = criterion;  aCriterion [posTo] = criterion;
aPrefLen[posTo] = prefLen;  aPrefLen [posTo] = prefLen;
aPosFrom[posTo] = posFrom;  aPosFrom [posTo] = posFrom;
}  }
}  }
// searching for next available posFrom  // searching for next available posFrom
do  do
{  {
posFrom++;  posFrom ++;
} while (aTotCost[posFrom]==0);  } while (aTotCost [posFrom] == 0);
totCostFrom = aTotCost[posFrom] ;  totCostFrom = aTotCost [posFrom];
suffLenFrom = (int) aLastLenSuff [posFrom] ;  suffLenFrom = (int) aLastLenSuff [posFrom];
sumProbaFrom = aSumProba[posFrom] ;  sumProbaFrom = aSumProba [posFrom];
prefLen = aPrefLen[posFrom] + 1 ;  prefLen = aPrefLen [posFrom] + 1;
} }
//— set the len for each codeword for(int i=nbSamples-l ; i>=0; i=aPosFrom[i]) // - set the len for each codeword for (int i = nbSamples-l; i> = 0; i = aPosFrom [i])
{ {
for(int j=i; j>aPosFrom[i]; j— )  for (int j = i; j> aPosFrom [i]; j-)
lenCW[j] = aPrefLen[i]+(int)aLastLenSuff[i]; //— use a prefix len of "aPrefLen[i]", and suffix len of "aLastLenSuff[i]"  lenCW [j] = aPrefLen [i] + (int) aLastLenSuff [i]; // - use a prefix len of "aPrefLen [i]", and suffix len of "aLastLenSuff [i]"
En sortie, on obtient donc pour chaque valeur n-aire possible à coder (nbSamples étant le nombre de valeurs possibles), la longueur du préfixe et celle du suffixe utilisées pour le mot de code. At the output, therefore, for each possible n-ary value to be encoded (nbSamples being the number of possible values), the length of the prefix and that of the suffix used for the codeword are obtained.

Claims

REVENDICATIONS
1. Procédé (11) de codage d'une valeur n-aire, caractérisé en ce qu'il comprend :  Method (11) for encoding an n-ary value, characterized in that it comprises:
une étape de sélection (111) d'un dictionnaire de mots de code, ladite sélection tenant compte d'au moins une valeur n-aire précédemment codée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, une étape d'ordonnancement (112) d'un ensemble de valeurs n-aires possibles, ledit ordonnancement tenant compte de ladite au moins une information d'à priori, délivrant un ensemble ordonné de valeurs n-aires possibles,  a step of selecting (111) a dictionary of code words, said selection taking into account at least one previously coded n-area value, called prior information, delivering a set of code words ordered according to a criterion predetermined, a step of scheduling (112) a set of possible n-ary values, said scheduling taking into account said at least one prior information, delivering an ordered set of possible n-ary values,
une étape d'association (113) à au moins ladite valeur n-aire à coder dudit ensemble ordonné de valeurs n-aires possibles, d'un mot de code dudit ensemble de mots de code ordonnés, selon une règle prédéterminée,  an association step (113) with at least said n-ary value to be encoded from said ordered set of possible n-ary values of a code word of said set of ordered codewords according to a predetermined rule,
une étape de codage (114) de ladite valeur n-aire par ledit mot de code associé lors de ladite étape d' association.  a step of encoding (114) said n-ary value by said associated codeword in said associating step.
2. Procédé de codage selon la revendication 1 , caractérisé en ce que ladite étape de sélection met en œuvre une étape de construction (1110) dudit dictionnaire de mots de code en fonction d'un critère d'optimisation de coût de codage.  2. Coding method according to claim 1, characterized in that said selecting step implements a step of constructing (1110) said dictionary of codewords according to a coding cost optimization criterion.
3. Procédé de codage selon la revendication 1 , caractérisé en ce que ladite étape de sélection et/ou ladite étape d'ordonnancement tient compte d'une loi de probabilité d'apparition (101) pour ledit ensemble de valeurs n-aires possibles, obtenue à partir de ladite au moins une information d'à priori.  3. Encoding method according to claim 1, characterized in that said selecting step and / or said scheduling step takes into account an appearance probability law (101) for said set of possible n-ary values, obtained from said at least one prior information.
4. Procédé de codage selon l'une quelconque des revendications 1 et 2, caractérisé en ce que ladite information d'à priori correspond à une valeur n-aire précédemment codée enrichie d'un degré de confiance.  4. Encoding method according to any one of claims 1 and 2, characterized in that said prior information corresponds to a previously coded n-ary value enriched with a degree of confidence.
5. Procédé de codage selon la revendication 1 , caractérisé en ce que ledit critère prédéterminé correspond à un ordre croissant de longueur de mot de code.  5. Encoding method according to claim 1, characterized in that said predetermined criterion corresponds to an increasing order of codeword length.
6. Procédé de codage selon la revendication 1, caractérisé en ce que ladite règle prédéterminée vise à associer à la k-ième valeur n-aire dudit ensemble ordonné de valeurs n-aires possibles, le k-ième mot de code dudit ensemble de mots de code ordonnés.  6. Encoding method according to claim 1, characterized in that said predetermined rule aims to associate the k-th n-ary value of said ordered set of possible n-ary values, the k-th code word of said set of words. ordered code.
7. Procédé de codage selon la revendication 1 , caractérisé en ce que, lorsque ladite valeur n- aire est une valeur multidimensionnelle, lesdites étapes dudit procédé sont mises en œuvre pour chaque composante de ladite valeur multidimensionnelle. 7. Coding method according to claim 1, characterized in that, when said n-ary value is a multidimensional value, said steps of said method are implemented for each component of said multidimensional value.
8. Procédé de codage selon la revendication 7, caractérisé en ce que ladite information d'à priori utilisée pour le codage d'une deuxième composante de ladite valeur multidimensionnelle dépend du codage d'une première composante de ladite valeur multidimensionnelle. 8. encoding method according to claim 7, characterized in that said a priori information used for coding a second component of said multidimensional value depends on the coding of a first component of said multidimensional value.
9. Dispositif de codage d'une valeur n-aire, caractérisé en ce qu'il comprend :  9. Device for coding an n-ary value, characterized in that it comprises:
- des moyens de sélection d'un dictionnaire de mots de code, lesdits moyens de sélection tenant compte d'au moins une valeur n-aire précédemment codée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, des moyens d'ordonnancement d'un ensemble de valeurs n-aires possibles, lesdits moyens d'ordonnancement tenant compte de ladite au moins une information d'à priori, délivrant un ensemble ordonné de valeurs n-aires possibles,  means for selecting a code word dictionary, said selection means taking account of at least one previously coded n-area value, called prior information, delivering a set of code words ordered according to a criterion predetermined, means for scheduling a set of possible n-ary values, said scheduling means taking account of said at least one prior information, delivering an ordered set of possible n-ary values,
des moyens d'association à au moins ladite valeur n-aire à coder dudit ensemble ordonné de valeurs n-aires possibles, d'un mot de code dudit ensemble de mots de code ordonnés, selon une règle prédéterminée,  means for associating with at least said n-ary value to be coded from said ordered set of possible n-ary values, of a code word of said set of ordered codewords, according to a predetermined rule,
des moyens de codage de ladite valeur n-aire par ledit mot de code associé lors de ladite étape d'association.  means for encoding said n-ary value by said associated codeword in said associating step.
10. Procédé de décodage d'un mot de code représentatif d'une valeur n-aire, caractérisé en ce qu'il comprend les étapes suivantes :  10. A method of decoding a codeword representative of an n-ary value, characterized in that it comprises the following steps:
une étape de sélection d'un dictionnaire de mots de code, ladite sélection tenant compte d'au moins une valeur n-aire précédemment décodée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, une étape d'ordonnancement d'un ensemble de valeurs n-aires possibles, ledit ordonnancement tenant compte de ladite au moins une information d' a priori, délivrant un ensemble ordonné de valeurs n-aires possibles,  a step of selecting a dictionary of codewords, said selection taking account of at least one previously decoded n-domain value, called prior information, delivering a set of code words ordered according to a predetermined criterion, a a scheduling step of a set of possible n-ary values, said scheduling taking into account said at least one prior information, delivering an ordered set of possible n-ary values,
une étape de décodage dudit mot de code, délivrant un mot de code lu,  a step of decoding said code word, delivering a read code word,
- une étape d'association dudit mot de code lu à au moins une valeur n-aire dudit ensemble ordonné de valeurs n-aires possibles, selon une règle prédéterminée.  a step of associating said read code word with at least one n-ary value of said ordered set of possible n-ary values, according to a predetermined rule.
11. Dispositif de décodage d'un mot de code représentatif d'une valeur n-aire caractérisé en ce qu'il comprend :  11. Device for decoding a code word representative of an n-ary value, characterized in that it comprises:
des moyens de sélection d'un dictionnaire de mots de code, ladite sélection tenant compte d'au moins une valeur n-aire précédemment décodée, dite information d'à priori, délivrant un ensemble de mots de code ordonnés selon un critère prédéterminé, des moyens d'ordonnancement d'un ensemble de valeurs n-aires possibles, ledit ordonnancement tenant compte de ladite au moins une information d' a priori, délivrant un ensemble ordonné de valeurs n-aires possibles, means for selecting a dictionary of codewords, said selection taking account of at least one previously decoded n-domain value, called prior information, delivering a set of codewords ordered according to a predetermined criterion, scheduling means of a set of possible n-ary values, said scheduling taking into account said at least one information of a priori, delivering an ordered set of possible n-ary values,
des moyens de décodage dudit mot de code, délivrant un mot de code lu, des moyens d'association dudit mot de code lu à au moins une valeur n-aire dudit ensemble ordonné de valeurs n-aires possibles, selon une règle prédéterminée.  means for decoding said code word, delivering a read code word, means for associating said read code word with at least one n-ary value of said ordered set of possible n-ary values, according to a predetermined rule.
12. Programme d'ordinateur comportant des instructions pour la mise en œuvre d'un procédé selon la revendication 1 ou selon la revendication 10 lorsque ce programme est exécuté par un processeur. A computer program comprising instructions for implementing a method according to claim 1 or claim 10 when the program is executed by a processor.
PCT/FR2011/052918 2010-12-13 2011-12-09 Methods for encoding and decoding an n-ary value, and corresponding devices and computer program WO2012080627A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
FR1060446 2010-12-13
FR1060446A FR2968862A1 (en) 2010-12-13 2010-12-13 Method for encoding n-ary value for coding of e.g. video stream, in e.g. video coder, involves associating ordered set of possible n-ary values with code word of set of code words according to predetermined rule
FR1151241 2011-02-15
FR1151241 2011-02-15

Publications (1)

Publication Number Publication Date
WO2012080627A1 true WO2012080627A1 (en) 2012-06-21

Family

ID=45509530

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2011/052918 WO2012080627A1 (en) 2010-12-13 2011-12-09 Methods for encoding and decoding an n-ary value, and corresponding devices and computer program

Country Status (1)

Country Link
WO (1) WO2012080627A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0967807A1 (en) * 1998-06-24 1999-12-29 Victor Company Of Japan, Limited Apparatus and method for motion vector encoding
EP1478190A1 (en) * 2002-04-26 2004-11-17 NTT DoCoMo, Inc. Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, and image decoding program
US7272182B1 (en) * 1998-10-29 2007-09-18 Fujitsu Limited Motion vector encoding device and decoding device
US20100232722A1 (en) * 2009-03-11 2010-09-16 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image based on code table selection adapted to residual value distribution

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0967807A1 (en) * 1998-06-24 1999-12-29 Victor Company Of Japan, Limited Apparatus and method for motion vector encoding
US7272182B1 (en) * 1998-10-29 2007-09-18 Fujitsu Limited Motion vector encoding device and decoding device
EP1478190A1 (en) * 2002-04-26 2004-11-17 NTT DoCoMo, Inc. Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, and image decoding program
US20100232722A1 (en) * 2009-03-11 2010-09-16 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image based on code table selection adapted to residual value distribution

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
J. LE TANOU; J.M. THIESSE; M. ANTONI: "Motion Vector Forecast and Mapping (MV-FMAP) Method for entropy Coding based Video Coders", PROCEEDINGS OF MULTIMEDIA SIGNAL PROCESSING (MMSP) 2010, October 2010 (2010-10-01)
J. LE TANOU; J.M. THIESSE; M. ANTONI: "Motion Vector Forecast and Mapping (MV-FMAP) Methodfor entropy Coding based Video Coders", PROCEEDINGS OF MULTIMEDIA SIGNAL PROCESSING (MMSP) 2010, October 2010 (2010-10-01)
KARAM L J ED - BOVIK ALAN C: "Lossless Image Compression", 1 January 2009, THE ESSENTIAL GUIDE TO IMAGE PROCESSING, AMSTERDAM [U.A.] : ACAD. PRESS/ELSEVIER, NL, PAGE(S) 385 - 419, ISBN: 978-0-12-374457-9, XP008136672 *

Similar Documents

Publication Publication Date Title
EP2446628B1 (en) Method for decoding images, decoding devices, and corresponding computer program
WO2015197945A1 (en) Method for encoding a digital image, and associated decoding method, devices and computer programmes
EP2183851A1 (en) Encoding/decoding by symbol planes with dynamic calculation of probability tables
EP2868088B1 (en) Method for encoding a current block of a first image component relative to a reference block of at least one second image component, encoding device and corresponding computer program
EP3694209A1 (en) Method for image decoding, device for image decoding, and corresponding computer program
FR2900004A1 (en) ARITHMETIC DECODING METHOD AND DEVICE
EP2289171B1 (en) Method for processing numerical data
EP2769378B1 (en) Improved hierarchical coding
EP3198876B1 (en) Generation and encoding of residual integral images
EP3345391A2 (en) Method of coding and decoding images, device for coding and decoding images and computer programmes corresponding thereto
EP3632103B1 (en) Methods and devices for coding and decoding a data stream representative of at least one image
WO2012080627A1 (en) Methods for encoding and decoding an n-ary value, and corresponding devices and computer program
EP3529987A1 (en) Method for coding and decoding image parameters, device for coding and decoding image parameters and computer programs corresponding thereto
FR2968862A1 (en) Method for encoding n-ary value for coding of e.g. video stream, in e.g. video coder, involves associating ordered set of possible n-ary values with code word of set of code words according to predetermined rule
WO2008049628A1 (en) Method and device for optimizing the compression of a video stream
WO2009156606A2 (en) Method for counting vectors in regular point networks
EP3456045B1 (en) Methods and devices for coding and decoding a data stream representative of at least one image
WO2010063898A1 (en) Device for encoding a digital image stream and corresponding decoding device with approximation of the neighbourhood of a block by the widened neighbourhood of the block
WO2024121109A1 (en) Method and device for coding and decoding images
WO2016097556A1 (en) Method for encoding a digital image, decoding method, devices, user terminal and computer programs for same
EP1854299B1 (en) Method, device and system for processing successive block-coded images
FR3120174A1 (en) Weighted picture prediction, picture coding and decoding using such weighted prediction
FR2640840A1 (en) Process for coding an image string, by a transformation and a plurality of variable-length codes, and devices for implementing this process
WO1999033185A1 (en) Method for coding a network vector representing a quantified signal and corresponding decoding method
EP2997662A1 (en) Method for encoding, compressed images in particular, in particular by &#34;range coder&#34; or arithmetic compression

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11811065

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11811065

Country of ref document: EP

Kind code of ref document: A1