Brevet FR3010605A1 — publié le 20150313

PROCEDE DE CODAGE ET DE DECODAGE DE DONNES FLOTTANTES D'UN BLOC D'IMAGE ET DISPOSITIFS ASSOCIES 1. Domaine de l'invention L'invention se rapporte au domaine général du codage d'image. Plus particulièrement, l'invention concerne un procédé de codage en un signal de données codées d'un bloc d'image dont les données sont représentées par des valeurs flottantes et un procédé de décodage d'un flux de données codées représentatif d'un bloc d'image dont les données sont représentées par des valeurs flottantes. Elle concerne également des procédés de codage et décodage d'une séquence d'images et des dispositifs mettant en oeuvre ces procédés. 2. Etat de l'art Cette partie est destinée à introduire les différents aspects de l'état de l'art qui peuvent être liés aux différents aspects de l'invention qui sont décrits et/ou revendiqués ci-dessous. Cette partie est utile car elle fournit au lecteur des informations de base qui lui faciliteront une meilleure compréhension des différents aspects de l'invention. Toutefois, l'exposé de ces informations n'est à considérer que dans cette optique et ne doit aucunement être considéré comme un exposé de l'état de l'art admis par l'inventeur. Les procédés traditionnels de codage de séquences d'images sont prévus pour coder des données entières. Ces procédés utilisent la prédiction temporelle ou prédiction inter- image et/ou la prédiction spatiale ou prédiction intra-image. La prédiction intra-image (ou inter-image prédiction) permet d'améliorer la compression d'une séquence d'images. Elle comprend, pour un bloc d'image courant, la génération d'un bloc d'image de prédiction et le codage d'une différence, également appelé bloc d'image résiduel, entre le bloc d'image courant et le bloc d'image de prédiction. Plus le bloc d'image de prédiction est corrélé au bloc d'image courant, plus le nombre de bits nécessaire pour coder le bloc d'image courant est faible et donc la compression efficace. A titre d'exemple de tels procédés, on peut citer ceux définis par la norme MPEG-4 AVC/H.264 décrite dans le document ISO/IEC 14496-10, ou encore ceux définis par la norme HEVC (High Efficiency Video Coding en anglais) décrite dans le document (B. Bross, W.J. Han, G. J. Sullivan, J.R. Ohm, T. Wiegand JCTVC-K1003, "High Efficiency Video Coding (HEVC) text specification draft 9," Oct 2012.). Historiquement, des standards tels que AVC et HEVC permettent de compresser des images et des vidéos sur la base de pixels dont les composantes sont initialement codées sur 8 bits. Chacune des composantes de l'ensemble des pixels de ces images sont donc représentées avec la même dynamique et on peut ainsi dire que par définition ces composantes sont dotées du même exposant dans une représentation virtuellement flottante. Il en va de même pour l'erreur résiduelle de prédiction, celle-ci étant dotées d'un bit de signe supplémentaire. Toutefois, ces procédés ne sont pas adaptés pour encoder et décoder des séquences d'images dont les données sont représentées par des valeurs flottantes telles qu'elles sont définies, d'une manière générale, par l'équation suivante : Cp = M. 2E (1) avec Cp une des composantes R, G ou B d'un pixel, M et E représentant respectivement la mantisse et l'exposant. Des représentations telles que RGBE (E signifiant exposant), ou encore OpenEXR RGB half float (cf K. Myszkowski, R Mantiuk, G Krawczyk "High Dynamic Range video," Synthesis Lectures on Computer Graphics and Animation, Morgan & Claypool Publishers 2008) comportent des composantes sont codées avec 5 bits de mantisse et 10 bits d'exposant pour le format OpenEXR et 8 bits de mantisse et 10 bits d'exposant pour le format RGBE. Cependant d'une manière plus générale les données flottantes sont ainsi exprimées par: - une mantisse comportant Nm bits qui permet aux valeurs de mantisses de s'étendre entre 0 et 2Nm-1, et - un exposant de Ne bits qui permet aux valeurs d'exposants de s'étendre entre 0 et 2Ne-1 Ainsi les valeurs exprimées avec une représentation flottante composée de 1 bit de signe, de Nm bits de mantisse et Ne bits d'exposant, pourront varier de 0 à : (rm - 1) x 2(2-1) On peut noter que plus la valeur flottante est élevée et plus la quantification de cette valeur est importante. Prenons par exemple le cas d'une valeur flottante exprimée selon le format RGBE (Ne = 8, Nm = 8). Un exposant de valeur égale à 108 va permettre de représenter des valeurs de composantes comprises entre 0 et 0,000243187 avec un pas de quantification de 2.E-128 = 9,53674E-07. De même, un exposant de valeur égale à 148 va permettre de représenter des valeurs de composantes comprises entre 0 et 267386880 avec un pas quantification de 1048576. Cette représentation des données d'image par valeur flottante montre que la quantification d'une composante d'une image évolue avec l'amplitude de cette composante. Comme cette évolution suit une échelle logarithmique, il est possible de représenter une dynamique importante d'une composante d'image avec un nombre restreint de bits, certes au prix d'une variation de la quantification dans le domaine linéaire. 3. Résumé de l'invention On cherche à améliorer le codage des images composées de pixels codés par des valeurs flottantes via un procédé de codage de type prédictif. A cet effet, l'invention concerne un procédé de codage, en un signal de données codées, d'un bloc d'image dont les données image sont représentées par des valeurs flottantes. Chaque valeur flottante étant 25 exprimée par une mantisse et un exposant, le procédé est caractérisé en ce qu'il comprend les étapes suivantes : - déterminer une valeur unique d'exposant pour les valeurs flottantes représentant les données image d'un bloc d'erreur résiduelle de prédiction déterminé en extrayant du bloc d'image un bloc de 30 prédiction ; - coder ladite valeur d'exposant ainsi déterminée pour le bloc d'erreur résiduelle de prédiction, et coder les mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction par prédiction spatiale et/ou temporelle. Selon un mode de réalisation, ladite valeur d'exposant ainsi déterminée 5 est codée sans perte. Selon un mode de réalisation, ladite valeur d'exposant est prédite par une valeur de prédiction et la différence entre la valeur de prédiction et la valeur de l'exposant est codée. Selon un mode de réalisation, la valeur de prédiction est définie à partir 10 d'un voisinage causal formé d'au moins un bloc d'image préalablement traité par ledit procédé. Selon un mode de réalisation, le voisinage causal est formé de bloc appartenant à l'image à laquelle appartient le bloc à coder et/ou d'au moins un bloc appartenant à au moins une autre image différente de l'image à 15 laquelle appartient le bloc d'image à coder. Selon un mode de réalisation, le procédé comporte une étape de sélection d'un mode de codage pour le bloc d'image à coder parmi un ensemble de modes de codage au cours de laquelle le mode de codage sélectionné est celui qui minimise un compromis entre une erreur de 20 reconstruction minimum de ce bloc d'image codée puis décodée selon ce mode de codage et un coût de codage minimum tenant compte du coût de codage selon ce mode de codage de la valeur unique de l'exposant et du coût de codage des mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction. 25 L'invention concerne également un procédé de décodage d'un signal de données codées représentatif d'un bloc d'image dont les données sont représentées par des valeurs flottantes. Chaque valeur flottante étant exprimée par une mantisse et un exposant, le procédé est caractérisé en ce qu'il comprend les étapes suivantes : 30 décoder à partir du signal de données codées une valeur d'exposant relative à un bloc d'erreur résiduelle de prédiction relatif au bloc d'image; - décoder à partir du signal de données codées les mantisses des valeurs flottantes représentant les données du bloc d'erreur résiduelle de prédiction par prédiction spatiale et/ou temporelle ; - reconstruire les valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction à partir de ladite valeur d'exposant et desdites mantisses ainsi décodées ; - déterminer un bloc de prédiction pour le bloc d'image ; et - reconstruire les valeurs flottantes représentant les données image du bloc d'image à partir du bloc d'erreur résiduelle de prédiction et du bloc de prédiction. Selon un autre de ses aspects, l'invention concerne un signal de données codées représentatif d'un bloc d'image dont les données sont représentées par des valeurs flottantes. Chaque donnée flottante étant exprimée par une mantisse et un exposant, le signal est caractérisé en ce qu'il comporte au moins une donnée codée décrivant une seule valeur d'exposant pour les valeurs flottantes et au moins une autre donnée codée décrivant les mantisses des valeurs flottantes représentant les données image d'un bloc d'erreur de prédiction du bloc d'image. Selon un autre de ses aspects, l'invention concerne un dispositif de codage, en un signal de données codées, d'un bloc d'image dont les données image sont représentées par des valeurs flottantes. Chaque valeur flottante étant exprimée par une mantisse et un exposant, le dispositif est caractérisé en ce qu'il comprend les moyens suivants pour : - déterminer une valeur unique d'exposant pour les valeurs flottantes représentant les données image d'un bloc d'erreur résiduelle de prédiction déterminé en extrayant du bloc d'image un bloc de prédiction ; - coder ladite valeur d'exposant ainsi déterminée pour le bloc d'erreur résiduelle de prédiction, et - coder les mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction par prédiction spatiale et/ou temporelle. Selon un autre de ses aspects, l'invention concerne un dispositif de décodage d'un signal de données codées représentatif d'un bloc d'image dont les données sont représentées par des valeurs flottantes. Chaque valeur flottante étant exprimée par une mantisse et un exposant, le dispositif est caractérisé en ce qu'il comprend les moyens suivants pour : - décoder à partir du signal de données codées une valeur d'exposant relative à un bloc d'erreur résiduelle de prédiction relatif au bloc d'image; - décoder à partir du signal de données codées les mantisses des valeurs flottantes représentant les données du bloc d'erreur résiduelle de prédiction par prédiction spatiale et/ou temporelle ; - reconstruire les valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction à partir de ladite valeur d'exposant et desdites mantisses ainsi décodées ; - déterminer un bloc de prédiction pour le bloc d'image ; et - reconstruire les valeurs flottantes représentant les données image du bloc d'image à partir du bloc d'erreur résiduelle de prédiction et du bloc de prédiction. 4. Listes des figures L'invention sera mieux comprise et illustrée au moyen d'exemples de modes de réalisation et de mise en oeuvre avantageux, nullement limitatifs, en référence aux figures annexées sur lesquelles : La Fig. 1 représente un exemple de définition d'un bloc d'image selon la norme HEVC ; la Fig. 2 représente un diagramme des étapes d'un procédé de codage d'un bloc d'image dont les données image sont représentées par des valeurs flottantes; la Fig. 3 représente un diagramme des étapes d'un procédé de codage d'une valeur d'exposant; la Fig. 4 représente un exemple de voisinage causal d'un bloc d'image ; la Fig. 5 représente un diagramme des étapes d'un mode de réalisation du procédé de décodage d'un signal de données codées; et la Fig. 6 représente un exemple d'architecture interne d'un dispositif. 5. Description détaillée de l'invention L'invention concerne un procédé de codage d'un bloc d'image Bc dont les données sont représentées par des valeurs flottantes en un signal de données codées F, un procédé de décodage d'un signal de données codées F représentatif d'un bloc d'image Bc dont les données sont représentées par des valeurs flottantes et un signal de données codées F représentatif d'un bloc d'erreur de prédiction relatif à un bloc d'image Bc dont les données sont représentées par des valeurs flottantes. Un bloc d'image est issu d'une image éventuellement issue d'une séquence d'images. Un bloc d'image comprend des pixels ou points image à chacun desquels est associée au moins une donnée d'image représentée par une (voire plusieurs) valeur flottante. Une donnée image est par exemple une donnée de luminance ou une donnée de chrominance. L'expression « bloc d'image » regroupe par la suite tout ensemble de données d'image sur lequel est éventuellement appliquée une transformée. S'il est habituel d'utiliser des blocs de forme carré ou rectangulaire, l'invention n'est aucunement limitée à de telles formes qui peuvent-être quelconques. Par ailleurs, un bloc d'image peut-être un macrobloc sur lequel est appliquée une transformée de type DCT (Discrete Cosinus Transform en anglais) ou tout autre transformée telle qu'une décomposition en ondelettes. Dans le cas de la norme HEVC, un bloc d'image, au sens de l'invention, correspond à une unité de transformation TU (Transform Unit en anglais). En effet, tel que illustrée à la Fig. 1, la norme HEVC définit une partition récursive d'une image en unité de prédiction (PU) et chaque unité PU peut être à son tour décomposée en plusieurs unités de transformée TU. Chaque unité TU, est alors encodée en appliquant une transformée adéquate. Ainsi, une unité PU peut-être encodée en utilisant différentes transformées selon la partition de cette unité PU en unités TU. Dans ce cas, chaque unité TU est un bloc d'image au sens de l'invention. Selon l'exemple de la Fig. 1, une unité CU est subdivisée en 4 unités CU et une de ces unités CU est subdivisée en 4 unités PU. Une unité PU, selon cet exemple, peut alors être encodée soit en appliquant une seule transformée TU sur cette unité PU, par exemple une DCT 8x8, soit en appliquant une transformée TU sur chaque moitié de cette unité PU, par exemple en appliquant deux fois une transformée TU sur chaque moitié de cette unité PU, par exemple en appliquant deux fois une DCT 4x8 ou 8x4, soit en appliquant une transformée TU sur chaque quart de cette unité PU, par exemple en appliquant quatre fois une transformée TU sur chaque quart de cette unité PU, par exemple en appliquant quatre fois une DCT 4x4. Les valeurs flottantes représentant les données image du bloc d'image à coder étant définies dans un espace d'au moins une composante de couleur, les étapes de détermination et de codage de l'exposant et le codage des mantisses des valeurs flottantes représentant les données image du bloc 10 d'image à coder sont exécutées par composante de couleur de cet espace. Par la suite, les termes « données de mouvement » sont à prendre au sens large. Elles comprennent les vecteurs de mouvement et éventuellement les indices d'images de référence permettant d'identifier une image de référence dans la séquence d'images reconstruites. Elles peuvent aussi 15 comprendre une information indiquant le type d'interpolation qui doit être appliquée à un bloc d'image de référence pour dériver un bloc de prédiction. Le terme « bloc de prédiction » regroupe tout ensemble de données d'image utilisées pour prédire un bloc d'image. Un bloc de prédiction est obtenu à partir d'un bloc d'image de la même image que l'image à laquelle 20 appartient le bloc d'image qu'il prédit (prédiction spatiale ou prédiction intra- image) ou bien à partir d'un voire plusieurs blocs d'image appartenant à une (prédiction monodirectionnelle) ou de plusieurs (prédiction bidirectionnelle) image différente (prédiction temporelle ou prédiction inter-image) de l'image à laquelle appartient le bloc d'image qu'il prédit. 25 Le terme « bloc d'erreur résiduelle» regroupe tout ensemble de données d'image obtenues après extraction d'autres données. Ce terme est synonyme du terme « résidus ». Le terme « bloc d'erreur résiduelle de prédiction » regroupe ainsi tout ensemble de données d'image obtenues par soustraction d'un bloc de 30 prédiction à un bloc d'image qu'il prédit. Une transformée peut-être appliquée à un bloc d'erreur résiduelle. Une DCT (acronyme anglais de « Discrete Cosine Transform ») est un exemple d'une telle transformée décrite dans le chapitre 3.4.2.2 du livre de I. E. Richardson intitulé 'H.264 and MPEG-4 video compression" publié chez J. Wiley & Sons en septembre 2003. La transformée en ondelettes décrite dans le chapitre 3.4.2.3 du livre de I. E. Richardson et la transformée de Hadamard en sont d'autres exemples. De telles transformées « transforment » des données d'un bloc d'erreur résiduelle, p.ex. des données résiduelles de luminance et/ou chrominance, en un « bloc de données transformées » également appelé « bloc de données fréquentielles » ou « bloc de coefficients ». Le bloc de coefficients comprend généralement un coefficient basse fréquence connu sous le nom de coefficient continu ou coefficient DC et des coefficients haute fréquence connus sous le nom de coefficients AC. Selon l'invention, illustrée à la Fig. 2, le procédé de codage d'un bloc d'image Bc comprend les étapes suivantes : - déterminer (10) un bloc de prédiction Bp[ed pour le bloc d'image à coder; - déterminer (20) un bloc d'erreur résiduelle de prédiction Bres en extrayant du bloc d'image à coder ledit bloc de prédiction; - déterminer (30) une valeur unique d'exposant Exp', pour les valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction Bres, - coder (40) ladite valeur d'exposant ainsi déterminée Exp', pour le bloc d'erreur résiduelle de prédiction Bres, et - coder (50) les mantisses Mres des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction Bres par prédiction spatiale et/ou temporelle. A l'issue du procédé, un signal F de données codées, illustré à la Fig. 2, est obtenu. Ce flux comporte une donnée codée Ec décrivant une valeur d'exposant unique relatif aux valeurs flottantes qui représentent les données image de ce bloc d'erreur résiduelle de prédiction et une donnée codée Ec décrivant les mantisses des valeurs flottantes des données image de ce bloc d'erreur résiduelle de prédiction. Cette donnée codée Ec est composée de plusieurs informations, chacune décrivant la mantisse d'une valeur flottante d'une donnée image de ce bloc. Selon un mode préféré de réalisation de l'étape 30, la valeur d'exposant Expres représente la valeur maximale des exposants des pixels du bloc d'erreur résiduelle de prédiction Bres. En termes mathématiques, la valeur unique d'exposant Expres est donnée par l'équation suivante : Expres = arg /Tm lexp', j)} avec expji, j) la valeur de l'exposant pour un pixel d'indices i et j du bloc d'erreur résiduelle de prédiction Bres. L'invention n'est pas limitée à une détermination particulière de cet exposant unique mais s'étend à toute approche possible telle la moyenne des exposants ou encore la valeur médiane pour n'en citer que quelques-unes. Selon un mode de réalisation de l'étape 40, la valeur d'exposant Expres est codée est codée sans perte. Par exemple, la valeur d'exposant est codée à l'aide d'un code à longueur fixe (FLC : acronyme anglais de Fixed Length Coding). Ce mode de réalisation est particulièrement avantageux par sa simplicité de mise en oeuvre dans un schéma de codage de séquences d'images car il suffit de transmettre au décodeur le code à longueur fixe pour 20 que ce décodeur puisse retrouver la valeur d'exposant Expres associée au bloc d'erreur résiduelle de prédiction Bres. En variante, la valeur d'exposant Expres est codée par un code à longueur variable (Variable length Coding VLC), d'un codeur de type Huffman ou de tout autre codeur entropique bien connus de l'homme du métier, 25 incluant, notamment, ceux utilisés dans des standards tel que H264/AVC. Selon un mode de réalisation de l'étape 40, illustré à la Fig. 3, la valeur d'exposant Expres est prédite (étape 41) par une valeur de prédiction Exppredl une valeur dite de différence et notée Expdiff est alors calculée (étape 42) en extrayant la valeur de prédiction Exppred de la valeur de l'exposant Expres, et 30 cette différence Expdiff est codée (étape 43) donnant naissance à une donnée codée Ec ajoutée au signal de données codées F. Selon un mode de réalisation de l'étape 43, la différence Expdiff. est codée sans perte. Par exemple, cette différence est codée à l'aide d'un code à longueur fixe (FLC : acronyme anglais de Fixed Length Coding). De préférence, cette différence Expdiff est codée par l'intermédiaire d'un codeur à longueur variable (Variable length Coding VLC), d'un codeur de type Huffman ou de tout autre codeur entropique bien connus de l'homme du métier), incluant, notamment, ceux utilisés dans des standards tel que H264/AVC. Il est particulièrement avantageux de combiner une prédiction avec un codeur à longueur variable pour coder la différence calculée entre les valeurs d'exposant Expr' et Exppred car la longueur du code utilisé, qui correspond à un coût de codage noté Expdc,sff' , est fonction de la dynamique de cette différence qui est statistiquement toujours inférieure à la dynamique de la valeur unique d'exposant Expres- Par ailleurs, l'efficacité de codage sera d'autant plus importante que le prédicteur sera efficace. Selon un mode de réalisation de l'étape 41, la valeur de prédiction Exppred est définie à partir d'un bloc qui appartient à une image, dite de référence, qui est autre que l'image à laquelle appartient le bloc d'image B0. Selon une variante de ce mode de réalisation, ce bloc est co-localisé avec le bloc d'image B0, c'est-à-dire situé à la même position spatiale. Selon une variante de ce mode de réalisation, le bloc de l'image de référence est désigné par un vecteur de mouvement qui, dans un schéma de codage/décodage, est transmis au décodeur. Selon un mode de réalisation de l'étape 41, la valeur de prédiction Exppred est définie à partir d'un voisinage causal Vres formé d'au moins un bloc ees préalablement traité par le procédé. Chaque bloc B71.1' correspond alors à un bloc d'erreur résiduelle de prédiction d'un bloc d'image, et est ainsi associé à une valeur unique d'exposant Exp déterminée, par exemple, selon l'étape 30. Un voisinage est qualifié de causal lorsqu'il est formé de blocs de données qui sont disponibles. Ainsi, dans un schéma de codage/décodage, un voisinage est causal si le décodeur est en mesure de former ce voisinage à partir de données qu'il a précédemment décodées. En l'occurrence, le décodeur est en capacité d'obtenir le ou les blocks M-1' ainsi que les valeurs qui lui est (leur sont) associé(s) et qui sont nécessaires pour former le voisinage Vr' . L'utilisation d'un voisinage causal est particulièrement avantageuse dans un contexte de transmission du signal F entre un codeur et un décodeur car le décodeur est alors en mesure d'obtenir une valeur de prédiction de la valeur d'exposant sans qu'aucune donnée ne soit transmise par le codeur, dès l'instant où codeur et le décodeur disposent de la même règle d'obtention de cette valeur de prédiction. Selon une variante de l'étape 41, le voisinage causal Vr' est formé d'au moins un bloc appartenant à l'image à laquelle appartient le bloc à traiter. La Fig. 4 illustre un exemple d'un voisinage causal. Selon cet exemple, le voisinage est formé par trois blocs notés 1371-', B,?',B,' auxquels sont respectivement associées les valeurs d'exposant Exprl', Expr2',Expr3'. Selon un mode de réalisation de l'étape 41, un voisinage causal V7.' est formé d'au moins un bloc appartenant à au moins une autre image différente de l'image à laquelle appartient le bloc d'image à coder. Cette autre image peut-être une image de référence utilisée pour l'estimation de données de 20 mouvement dans un schéma de codage ou une image pointée par un vecteur de mouvement. Selon une variante de ce mode de réalisation, au moins un des blocs qui appartient à une image de référence est co-localisé avec le bloc d'image Bc, c'est-à-dire situé à la même position spatiale. 25 Selon une autre variante de ce mode de réalisation, au moins un des blocs qui appartient à une image de référence est désigné par un vecteur de mouvement qui, dans un schéma de codage/décodage, est transmis au décodeur. Selon un mode de réalisation de l'étape 41, la valeur de prédiction 30 Expp'd est définie à partir de l'erreur résiduelle de prédiction. Selon une variante de ce mode de réalisation, la valeur de prédiction Expp'd est définie à partir d'un prédicteur de type médian défini par l'équation suivante: Exppred = median(Exprnes) pour n E fi, ..., Al) avec N un nombre de bloc d'erreur résiduelle de prédiction. Selon une variante de ce mode de réalisation, la valeur de prédiction Exppred est définie à partir d'un prédicteur de type moyenne défini par l'équation suivante : N EXPpred = - Exees N n=1 Selon une variante de ce mode de réalisation, la valeur de prédiction EXPpred est définie à partir d'un prédicteur de type maximum défini par l'équation suivante : Exp p'd= arg max {Exp),1} Selon un mode de réalisation de l'étape 41, la valeur de prédiction Exppred est définie à partir d'un ensemble de données reconstruites. Ainsi, dans un schéma de codage/décodage, ces données sont reconstruites par un décodeur et forment ce qui est couramment appelée zone causale. Selon une variante de ce mode de réalisation, la valeur de prédiction Exppred est définie à partir d'un prédicteur de type médian défini par l'équation 15 suivante: Exppred = median(Expll) pou r n E [1, ...,N} avec Expll = mediantexpn (i, j)} ie JE avec L et M des dimensions d'un bloc d'indice n et expn(i, j) la valeur d'exposant d'un pixel (i,j) appartenant à un bloc n du voisinage utilisé pour la prédiction de l'exposant. Ce bloc n a été préalablement reconstruit. 20 Selon une variante de ce mode de réalisation, la valeur de prédiction Exppred est définie à partir d'un prédicteur de type maximum défini par l'équation suivante: Exppred = arg max (Expn) pour n E N) avec Expn = arg max lexpn(i, i E Ll et j e I,' avec L et M des dimensions d'un bloc d'indice n et expn(i, j) la valeur d'exposant d'un pixel (i,j) appartenant à un bloc n du voisinage utilisé pour la prédiction de l'exposant. Ce bloc n a été préalablement reconstruit. Selon une variante de ce mode de réalisation, la valeur de prédiction Expp'd est définie à partir d'un prédicteur de type moyenne défini par l'équation suivante : N E xP pred = EXPn L M n 1 avec Expn = exp(i,i) LxM1....1 j=i avec L et M des dimensions d'un bloc d'indice n et expn(i, j) la valeur d'exposant d'un pixel (i,j) appartenant à un bloc n du voisinage utilisé pour la prédiction de l'exposant. Ce bloc n a été préalablement reconstruit. Cet ensemble de données reconstruites peut-être formé, selon une variante, des pixels utilisés pour construire un bloc de prédiction. L'invention n'est pas limitée à un ensemble de données reconstruites particulier. On peut noter que ces différents modes de réalisation et variantes de l'étape 41 pour définir la valeur de prédiction Exppred peuvent se combiner entre eux pour obtenir une prédiction soit spatiale, soit temporelle soit spatio-temporelle. L'invention n'est pas limitée à un type particulier de procédé pour coder les mantisses M -res des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction Bres, et tout procédé de codage connu utilisant, par exemple, une transformée telle qu'une DCT, DST (Discrete Sinus Transform en anglais) ou ondelette, ou ceux utilisant un codage de type DPCM (Differential pulse-code modulation en anglais) (Differential pulse- code modulation from HHI » disponible à: tsc.upc.e _T orr rre, n !otes/dpcm et-es, ) ou celui utilisé dans la norme H264 («Advanced video coding for generic audiovisual services » disponible à: http://www.itu.int/rec/T-REC-H.264-201304-1) et connu sous le nom de IPCM (Intra Pulse Code Modulation en anglais) pour n'en citer que quelques-uns. Il est également bien connu que ces différents codeurs utilisent des quantificateurs et codeurs entropiques. La Fig. 5 représente un procédé de décodage d'un signal de données codées F représentatif d'un bloc d'image dont les données sont représentées par des valeurs flottantes. Le procédé comprend les étapes suivantes : - décoder (51) à partir du signal de données codées F une valeur d'exposant relative à un bloc d'erreur résiduelle de prédiction relatif au bloc d'image; - décoder (52) à partir du signal de données codées F les mantisses des valeurs flottantes représentant les données du bloc d'erreur résiduelle de prédiction par prédiction spatiale et/ou temporelle ; - reconstruire (53) les valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction à partir de ladite valeur d'exposant et desdites mantisses ainsi décodées ; - déterminer (54) un bloc de prédiction pour le bloc d'image ; et - reconstruire (55) les valeurs flottantes représentant les données image du bloc d'image à partir du bloc d'erreur résiduelle de prédiction et du bloc de prédiction. Les valeurs flottantes représentant les données du bloc d'erreur résiduelle de prédiction à décoder sont obtenues, par exemple, à partir de l'équation (1). Selon un mode de réalisation de l'étape 51, la valeur de l'exposant du bloc d'erreur résiduelle de prédiction est obtenue en décodant une donnée 25 codée Ec du signal de données codées F. Ce décodage des données Ec est réalisé selon un code soit à longueur fixe soit à longueur variable. Selon un mode de réalisation de l'étape 51, les données Ec représentent la valeur de l'exposant du bloc d'erreur résiduelle de prédiction. Selon un autre mode de réalisation de l'étape 51, les données Ec 30 représentent une valeur, dite de différence, qui correspond à la différence Expain entre la valeur de d'exposant Expr' du bloc d'image qui a été codé et d'une valeur prédiction Exppred de cette valeur d'exposant. La valeur de prédiction Exppred est alors obtenue à partir d'un voisinage causal de manière identique à l'étape 41 décrit précédemment. La valeur de l'exposant Expr' est alors décodée (reconstruite) en additionnant cette valeur de prédiction Exppred avec la donnée Ec décodée (différence Expdiff). Les mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction sont un ensemble de valeurs entières qui est codé, selon l'invention, par un procédé de codage qui utilise, par exemple, une transformée. Un procédé de décodage inverse de ce procédé de codage est alors utilisé pour décoder les données codées du signal F afin de retrouver les mantisses de ces valeurs flottantes. L'invention n'est pas limitée à un procédé de décodage de données entières particulier. Les procédés de codage et de décodage de bloc d'image décrits précédemment peuvent être utilisés pour le codage et décodage d'une image qui appartient, éventuellement à une séquence d'image. Dans ce cas, chaque image est divisée en bloc d'image et chaque bloc d'image est codé selon un des procédés décrits en relation avec les Fig. 2 à 4 et le signal de données codées comporte alors autant de données (Ec, Mc) que de bloc d'image à coder. Le signal de données codées F peut alors être décodé selon l'un des procédés décrits en relation avec la Fig. 5 dans le but de décoder (reconstruire) une image et, éventuellement, une séquence d'images. Selon une variante de l'invention, le procédé de codage d'un bloc d'image F3c comporte également une étape 60 de sélection d'un mode de codage pour le bloc d'erreur résiduelle parmi un ensemble de modes de codage. L'ensemble des modes de codage peut regrouper plusieurs méthodes pour déterminer une valeur unique d'exposant pour les valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction (étape 30) et/ou plusieurs prédicteurs de cette valeur unique d'exposant (étape 41) et/ou plusieurs codeurs pour coder la différence entre cette valeur unique d'exposant et une valeur de prédiction (étape 43) et/ou plusieurs codeurs pour coder les mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction (étape 50). Un mode de codage de l'ensemble peut également être une combinaison d'un de ces prédicteurs et codeurs spécifiques. Au cours de l'étape 60, un bloc d'erreur résiduelle de prédiction est codé selon l'un des modes de codage i de l'ensemble et un coût de codage Csti est alors déterminé. Selon un mode de réalisation relatif au cas où la valeur de l'exposant est prédite, le coût de codage Csti tient compte du coût de codage MB des des mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction, du coût de codage ExKisitff,i de la différence Expdif f calculée en extrayant la valeur de prédiction Exppred de la valeur de l'exposant Expresl et d'un coût de codage Hdrcst,i d'éléments de syntaxe qui permettent au décodeur de décoder le bloc d'image B0, tel qu'un index pour désigner un mode de prédiction spécifique ou encore un vecteur de mouvement. En termes mathématiques, le coût de codage Cstii relatif à un mode de codage i du bloc d'image B0 est donné par : csti = ssei?'" + »a. et avec sse7c une métrique quantifiant une erreur de reconstruction du bloc d'image B0, Brst = mBrcesst,i + ExKisitfLi + Hcircst,i, et la valeur il étant ajustée de façon à avoir le meilleur compromis débit/distorsion. L'ajustement du paramètre À, appelé Lagrangien est largement connu. Dans le principe, le choix du meilleur mode de codage, d'indice (i0pt), est obtenu en sélectionnant celui qui engendre le meilleur compromis entre un coût de codage minimum pour la valeur de l'exposant et les mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction, et une erreur de reconstruction du bloc d'image minimum. En termes mathématiques, le coût de codage optimal est défini par : (i0pt) = argrnin(Csti) (j) Selon un mode de réalisation, la métrique sserec,i est une erreur quadratique calculée entre le bloc d'image Ei, et le bloc codé/décodé selon un mode de codage (i). Sur les Fig. 2, 3 et 5, les modules représentés sont des unités fonctionnelles, qui peuvent ou non correspondre à des unités physiquement distinguables. Par exemple, ces modules ou certains d'entre eux peuvent être regroupés dans un unique composant ou circuit, ou constituer des fonctionnalités d'un même logiciel. A contrario, certains modules peuvent éventuellement être composés d'entités physiques séparées. Les dispositifs de prédiction et ou de codage compatibles avec l'invention peuvent être mis en oeuvre selon une réalisation purement matérielle ("hardware" en anglais), par exemple sous forme d'un composant dédié (par exemple dans un ASIC ou FPGA ou VLSI) (respectivement « Application Specific Integrated Circuit » en anglais, signifiant « Circuit Intégré à vocation d'une application spécifique », « Field-Programmable Gate Array » en anglais, signifiant « Réseau de Portes Programmable In-Situ », « Very Large Scale Integration » en anglais, signifiant « Intégration à très grande échelle ») ou de plusieurs composants électroniques intégrés dans un appareil ou encore sous forme d'un mélange d'éléments matériels et d'éléments logiciels (« software » en anglais). La Fig. 6 décrit un exemple d'une architecture interne d'un dispositif configuré pour mettre en oeuvre au moins un des procédés de codage d'un bloc d'image qui sont décrits en relation avec les Fig. 2, 3 et 4, et au moins un des procédés de décodage d'un signal de données codées qui sont décrits en relation avec la Fig. 5. Le dispositif 600 comprend les éléments suivants, interconnectés par un bus 601 numérique d'adressage et de données : - Une unité de calcul 603 (encore appelé Central Processing Unit en anglais) ; - Une mémoire 605 ; - Une interface réseau 604, pour des interconnexions entre le dispositif 600 et d'autres dispositifs distants connectés via une connexion 602 ; L'unité de calcul 603 peut être implémentée par un microprocesseur, éventuellement dédié, un microcontrôleur également éventuellement dédié, etc. La mémoire 605 peut être implémentée sous une forme volatile et/ou non volatile telle qu'une RAM (Random Access Memory en anglais), un disque dur, une EPROM (Erasable Programmable ROM), etc. Selon un mode de réalisation, les moyens 603, 604 et éventuellement 605 coopèrent entre eux pour déterminer une valeur unique d'exposant pour les valeurs flottantes représentant les données image d'un bloc d'erreur résiduelle issu d'un bloc d'image à coder, pour coder ladite valeur d'exposant ainsi déterminée et pour coder les mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle par prédiction spatiale et/ou temporelle. Selon un mode de réalisation, les moyens 603, 604 et éventuellement 605 coopèrent alors entre eux pour décoder une valeur d'exposant à partir du signal de données codées pour un bloc d'erreur résiduelle relatif à un bloc d'image à décoder, pour décoder les mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle à partir du signal de données codées et par prédiction spatiale et/ou temporelle, et pour reconstruire les valeurs flottantes représentant les données image du bloc d'erreur résiduelle à décoder à partir de ladite valeur d'exposant et desdites mantisses ainsi décodées. Les deux modes de réalisation ci-dessus peuvent également être combinés pour que le dispositif 600 soit à la fois prévu pour coder et décoder un bloc d'erreur résiduelle relatif à un bloc d'image à coder. Les dispositifs décrits ci-dessus sont également prévus pour coder et décoder une image et/ou une séquence d'images. Des informations concernant les données d'image, d'une séquence d'image et/ou d'un bloc d'une image sont éventuellement reçues via l'interface 604 et la connexion 602 ou ces données peuvent être obtenues à partir de la mémoire 605. Le signal de données F peut-être mémorisé dans la mémoire 605 et/ou transmis à un équipement distant via l'interface 604 et la connexion 602. Bien entendu, l'invention n'est pas limitée aux exemples de réalisation mentionnés ci-dessus. En particulier, l'homme du métier peut apporter toute variante dans les modes de réalisation exposés et les combiner pour bénéficier de leurs différents avantages. L'invention n'est aucunement limitée 30 par le mode de codage des mantisses. Notamment l'invention peut être utilisée avec une transformée DCT, une transformée DST, une transformée de Hadarmard ou encore une transformée en ondelettes. REVENDICATIONS1. Procédé de codage, en un signal de données codées, d'un bloc d'image dont les données image sont représentées par des valeurs flottantes, chaque valeur flottante étant exprimée par une mantisse et un exposant, caractérisé en ce qu'il comprend les étapes suivantes : - déterminer (30) une valeur unique d'exposant (Expres) pour les valeurs flottantes représentant les données image d'un bloc d'erreur résiduelle de prédiction (13's) déterminé en extrayant du bloc d'image un bloc de prédiction ; - coder (40) ladite valeur d'exposant ainsi déterminée (Expres) pour le bloc d'erreur résiduelle de prédiction (Bres), et - coder (50) les mantisses (M[') des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction (Bres) par prédiction spatiale et/ou temporelle. 2. Procédé selon la revendication 1, dans lequel ladite valeur d'exposant ainsi déterminée est codée sans perte. 3. Procédé selon la revendication 1 ou 2, dans lequel ladite valeur d'exposant est prédite par une valeur de prédiction et la différence entre la valeur de prédiction et la valeur de l'exposant est codée. 4. Procédé selon la revendication 3, dans lequel la valeur de prédiction est définie à partir d'un voisinage causal formé d'au moins un bloc d'image préalablement traité par ledit procédé. 5. Procédé selon la revendication 4, dans lequel le voisinage causal est formé de bloc appartenant à l'image à laquelle appartient le bloc à coder et/ou d'au moins un bloc appartenant à au moins une autre image différente de l'image à laquelle appartient le bloc d'image à coder. 6. Procédé selon l'une des revendications précédentes, qui comporte une étape de sélection d'un mode de codage pour le bloc d'image à coder parmiun ensemble de modes de codage au cours de laquelle le mode de codage sélectionné est celui qui minimise un compromis entre une erreur de reconstruction minimum de ce bloc d'image codée puis décodée selon ce mode de codage et un coût de codage minimum tenant compte du coût de codage selon ce mode de codage de la valeur unique de l'exposant et du coût de codage des mantisses des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction. 7. Procédé de décodage d'un signal de données codées représentatif d'un bloc d'image dont les données sont représentées par des valeurs flottantes, chaque valeur flottante étant exprimée par une mantisse et un exposant, caractérisé en ce qu'il comprend les étapes suivantes : - décoder (51) à partir du signal de données codées une valeur d'exposant relative à un bloc d'erreur résiduelle de prédiction relatif au bloc d'image; - décoder (52) à partir du signal de données codées F les mantisses des valeurs flottantes représentant les données du bloc d'erreur résiduelle de prédiction par prédiction spatiale et/ou temporelle ; - reconstruire (53) les valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction à partir de ladite valeur d'exposant et desdites mantisses ainsi décodées ; - déterminer (54) un bloc de prédiction pour le bloc d'image ; et - reconstruire (55) les valeurs flottantes représentant les données image du bloc d'image à partir du bloc d'erreur résiduelle de prédiction et du bloc de prédiction. 8. Signal de données codées représentatif d'un bloc d'image dont les données sont représentées par des valeurs flottantes, chaque donnée flottante étant exprimée par une mantisse et un exposant, caractérisé en ce qu'il comporte au moins une donnée codée décrivant une seule valeur d'exposant pour les valeurs flottantes et au moins une autre donnée codée décrivant les mantisses des valeurs flottantes représentant les données image d'un bloc d'erreur de prédiction du bloc d'image. 9. Dispositif de codage, en un signal de données codées, d'un bloc d'image dont les données image sont représentées par des valeurs flottantes, chaque valeur flottante étant exprimée par une mantisse et un exposant, caractérisé en ce qu'il comprend les moyens suivants pour : - déterminer (30) une valeur unique d'exposant (Expres) pour les valeurs flottantes représentant les données image d'un bloc d'erreur résiduelle de prédiction (B',) déterminé en extrayant du bloc d'image un bloc de prédiction ; - coder (40) ladite valeur d'exposant ainsi déterminée (Expres) pour le bloc d'erreur résiduelle de prédiction (B',), et - coder (50) les mantisses (Mres) des valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction (I3,-') par prédiction spatiale et/ou temporelle. 10. Dispositif de décodage d'un signal de données codées représentatif d'un bloc d'image dont les données sont représentées par des valeurs flottantes, chaque valeur flottante étant exprimée par une mantisse et un exposant, caractérisé en ce qu'il comprend les moyens suivants pour : - décoder (51) à partir du signal de données codées une valeur d'exposant relative à un bloc d'erreur résiduelle de prédiction relatif au bloc d'image; - décoder (52) à partir du signal de données codées F les mantisses des valeurs flottantes représentant les données du bloc d'erreur résiduelle de prédiction par prédiction spatiale et/ou temporelle ; - reconstruire (53) les valeurs flottantes représentant les données image du bloc d'erreur résiduelle de prédiction à partir de ladite valeur d'exposant et desdites mantisses ainsi décodées ; - déterminer (54) un bloc de prédiction pour le bloc d'image ; et - reconstruire (55) les valeurs flottantes représentant les données image du bloc d'image à partir du bloc d'erreur résiduelle de prédiction et du bloc de prédiction.