Brevet FR3033114A1 — publié le 20160826

PROCÉDÉ DE CODAGE ET DÉCODAGE D'IMAGES, DISPOSITIF DE CODAGE ET DÉCODAGE ET PROGRAMMES D'ORDINATEUR CORRESPONDANTS Domaine de l'invention La présente invention se rapporte de manière générale au domaine du traitement d'images, et plus précisément au codage et au décodage d'images numériques et de séquences d'images numériques. L'invention peut s'appliquer notamment, mais non exclusivement, au codage vidéo mis en oeuvre dans les codeurs vidéo actuels AVC et HEVC et leurs extensions (MVC, 3D-AVC, MV-HEVC, 3D-HEVC, etc), ainsi qu'au décodage correspondant. Arrière-plan de l'invention Les codeurs vidéo actuels (MPEG, H.264, HEVC, ...) utilisent une représentation par blocs des images à coder. Les images sont subdivisées en blocs de forme carrée ou rectangulaire, lesquels sont susceptibles d'être subdivisés à leur tour de façon récursive. Pour au moins un bloc considéré parmi les différents blocs obtenus, une prédiction de pixels du bloc considéré est mise en oeuvre par rapport à des pixels de prédiction qui appartiennent soit à la même image (prédiction Intra), soit à une ou plusieurs images précédentes d'une séquence d'images (prédiction Inter) qui ont déjà été décodées. De telles images précédentes sont appelées classiquement images de référence et sont conservées en mémoire aussi bien au codeur qu'au décodeur. Au cours d'une telle prédiction, un ensemble de données est calculé par soustraction des pixels du bloc considéré, des pixels de prédiction. Les coefficients de l'ensemble de données calculé sont alors quantifiés après une éventuelle transformation mathématique, par exemple de type transformée en cosinus discrète (DCT), puis codés par un codeur entropique. Les données codées sont inscrites dans un signal de données destiné à être transmis à un décodeur. Ledit signal de données comprend notamment : 3033114 2 - le type de prédiction (prédiction Intra, prédiction Inter, prédiction par défaut réalisant une prédiction pour laquelle aucune information n'est transmise au décodeur (« en anglais « skip »)) ; - le mode de prédiction (direction de prédiction, composante 5 d'image de référence, ...) ; - le type de subdivision en sous-blocs ; le type de transformée, par exemple DCT 4x4, DCT 8x8, etc... ; les valeurs de pixels, les valeurs de coefficients transformés, 10 amplitudes, signes de coefficients quantifiés des pixels contenus dans le bloc ou le sous-bloc considéré. Une fois que le signal de données a été reçu par le décodeur, le décodage est fait image par image, et pour chaque image, bloc par bloc. Pour chaque bloc, les éléments correspondants du signal de données sont lus. La 15 quantification inverse et la transformation inverse des coefficients des blocs sont effectuées pour produire un bloc de données résiduelles décodé. Puis, la prédiction du bloc est calculée et le bloc est reconstruit en ajoutant la prédiction au bloc de données résiduelles décodé. De façon connue en soi, la quantification des coefficients du bloc de 20 données résiduelles calculé peut être de type scalaire ou vectorielle. La quantification scalaire utilise un pas de quantification qui est déterminé au codage à partir d'un paramètre appelé QP (abréviation anglaise de « Quantization Parameter »). La quantification vectorielle consiste au codage : 25 - à comparer l'ensemble de données résiduelles calculé avec une pluralité de vecteurs de quantification regroupés dans au moins un dictionnaire, - à sélectionner un des vecteurs de quantification selon un critère de performance de codage prédéterminé, tel que par exemple le compromis débit-distorsion bien connu de l'homme du métier, 30 - à coder un index associé audit vecteur de quantification sélectionné. L'index codé est alors transmis dans le signal de données à destination du décodeur qui contient le ou les mêmes dictionnaires que le codeur et qui 3033114 3 applique la quantification vectorielle inverse en décodant ledit index transmis, puis en déterminant le vecteur de quantification associé audit index décodé. Compte tenu du fait que les vecteurs de quantification font partie d'un dictionnaire prédéterminé, le codage du bloc courant par quantification 5 vectorielle peut s'avérer mal adapté à la statistique du signal vidéo. Au final, il en résulte des performances de compression qui ne sont pas satisfaisantes. Objet et résumé de l'invention 10 Un des buts de l'invention est de remédier à des inconvénients de l'état de la technique précité. A cet effet, un objet de la présente invention concerne un procédé de codage d'au moins une image découpée en blocs, mettant en oeuvre, pour un bloc courant à coder de l'image : 15 - une prédiction du bloc courant conformément à un mode de prédiction sélectionné parmi une pluralité de modes de prédiction prédéterminés, - une obtention d'un bloc prédicteur à l'issue de la prédiction, - un calcul d'un premier ensemble de données représentatives 20 d'une différence entre le bloc prédicteur obtenu et le bloc courant, - une comparaison du premier ensemble de données calculé avec une pluralité de vecteurs de quantification, - une sélection d'un des vecteurs de quantification selon un critère de performance de codage prédéterminé, 25 - un codage d'un index associé au vecteur de quantification sélectionné. Le procédé de codage selon l'invention est remarquable en ce qu'il comprend: - un calcul d'un deuxième ensemble de données représentatives 30 d'une différence entre le premier ensemble de données calculé et le vecteur de quantification sélectionné, 3033114 4 - un codage du deuxième ensemble de données calculé au cours duquel au moins un des vecteurs de quantification est modifié en fonction des données du deuxième ensemble de données calculé. Une telle disposition permet avantageusement de cumuler : 5 - le bénéfice tiré de l'exploitation des corrélations entre le premier ensemble de données résiduelles courant et des vecteurs de quantification d'un dictionnaire, - et le bénéfice tiré d'une mise à jour d'au moins un desdits vecteurs de quantification, ladite mise à jour permettant de s'adapter, au cours 10 du temps, aux modifications du signal de données codées. La prédiction du bloc courant est ainsi à la fois plus précise et plus adaptée au contexte vidéo courant, ce qui a pour avantage d'améliorer significativement les performances de compression du signal de données codées à transmettre au décodeur. 15 Dans un mode de réalisation particulier, la modification d'un des vecteurs de quantification est mise en oeuvre uniquement si les données du deuxième ensemble de données calculé remplissent un critère prédéterminé. Une telle disposition permet de n'effectuer la modification d'un des vecteurs de quantification que lorsque cette modification est substantielle, ce 20 qui évite des calculs inutiles. Dans un autre mode de réalisation particulier, la modification d'un des vecteurs de quantification est mise en oeuvre à l'aide d'un paramètre dont la valeur dépend de la taille de l'image à coder. Une telle disposition permet de s'adapter à la taille des données dont le 25 codeur dispose. Ainsi, si l'image est petite, les modifications du dictionnaire doivent être de grande amplitude, puisque le codeur dispose de peu de données pour capturer la statistique du signal vidéo. En revanche, si l'image est grande, il est possible de privilégier une mise à jour de faible amplitude, qui résiste mieux aux variations statistiques non pertinentes du signal vidéo, 30 puisque le codeur dispose de beaucoup plus de données pour s'adapter à ces variations. 3033114 5 Dans encore un autre mode de réalisation particulier, si l'image courante est de type Intra, les vecteurs de quantification sont chacun initialisés à des valeurs prédéterminées. Une telle disposition permet de conserver la caractéristique de codage 5 indépendant des autres images qui est propre aux images Intra, même si l'invention propose une mise à jour du dictionnaire de vecteurs de quantification qui évolue au fur et à mesure du traitement des images d'une séquence d'images considérée. En effet, il est généralement souhaitable que les images de type Intra soient codées puis décodées indépendamment de toute autre 10 image du flux vidéo, de façon à pouvoir décoder une vidéo en cours de transmission (par exemple, pour changer de chaîne sur un récepteur de télévision, dans le cas de la diffusion d'un flux audiovisuel). Ainsi, lorsqu'une image Intra de cette séquence doit être codée, elle ne peut pas l'être par rapport à un vecteur de quantification d'un dictionnaire qui a été mis à jour pour 15 une image précédent cette image Intra. Par conséquent, l'invention propose avantageusement d'initialiser les vecteurs de quantification du dictionnaire à des valeurs respectives prédéterminées pour rendre le codage de l'Image Intra indépendant de toute autre image de la séquence. Les différents modes ou caractéristiques de réalisation précités peuvent 20 être ajoutés indépendamment ou en combinaison les uns avec les autres, aux opérations mises en oeuvre au cours du procédé de codage tel que défini ci-dessus. Corrélativement, l'invention concerne un dispositif de codage d'au moins une image découpée en blocs, comprenant, pour un bloc courant à coder de 25 ladite image : - un module de prédiction pour prédire le bloc courant conformément à un mode de prédiction sélectionné parmi une pluralité de modes de prédiction prédéterminés, délivrant un bloc prédicteur, - un module de calcul pour calculer un premier ensemble de 30 données représentatives d'une différence entre le bloc prédicteur obtenu et le bloc courant, - un module de comparaison pour comparer le premier ensemble de données calculé avec une pluralité de vecteurs de quantification, 3033114 6 - un module de sélection pour sélectionner un des vecteurs de quantification selon un critère de performance de codage prédéterminé, - un premier module de codage pour coder un index associé au vecteur de quantification sélectionné. 5 Un tel dispositif de codage est remarquable en ce que : - le module de calcul est activé pour calculer un deuxième ensemble de données représentatives d'une différence entre le premier ensemble de données calculé et le vecteur de quantification sélectionné, et en ce qu'il comprend un deuxième module de codage qui est activé pour 10 coder le deuxième ensemble de données calculé, au moins un des vecteurs de quantification étant modifié en fonction des données du deuxième ensemble de données calculé. De façon correspondante, l'invention concerne aussi un procédé de décodage d'un signal de données représentatif d'au moins une image 15 découpée en blocs, mettant en oeuvre, pour un bloc courant à décoder : - un décodage : - d'un index associé à un vecteur de quantification qui appartient à un ensemble de vecteurs de quantification, - et de données de prédiction du bloc courant à décoder, 20 - un décodage de l'index, - une détermination du vecteur de quantification associé à l'index décodé, - une obtention d'un bloc prédicteur à partir des données de prédiction décodées. 25 Un tel procédé de décodage est remarquable en ce qu'il comprend: - une détermination, dans le signal de données, de données relatives au bloc courant à décoder, - un décodage des données relatives au bloc courant à décoder, au cours duquel au moins un des vecteurs de quantification est modifié en 30 fonction des données décodées, - une reconstruction du bloc courant à partir des données décodées, du vecteur de quantification déterminé et du bloc prédicteur obtenu. 3033114 7 Les données relatives au bloc courant à décoder sont typiquement les valeurs des pixels de ce bloc permettant de reconstruire ce bloc ou des valeurs de coefficients transformés permettant de reconstruire ce bloc. Dans un mode de réalisation particulier, la modification d'un des vecteurs 5 de quantification est mise en oeuvre uniquement si les données décodées remplissent un critère prédéterminé. Dans un autre mode de réalisation particulier, la modification d'un des vecteurs de quantification est mise en oeuvre à l'aide d'un paramètre dont la valeur dépend de la taille de l'image à décoder. 10 Dans encore un autre mode de réalisation particulier, si l'image courante est de type Intra, les vecteurs de quantification sont chacun initialisés à des valeurs prédéterminées. Les différents modes ou caractéristiques de réalisation précités peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux 15 étapes du procédé de décodage tel que défini ci-dessus. Corrélativement, l'invention concerne un dispositif de décodage d'un signal de données représentatif d'au moins une image découpée en blocs, comprenant, pour un bloc courant à décoder : - un premier module de décodage pour décoder : 20 - un index associé à un vecteur de quantification qui appartient à un ensemble de vecteurs de quantification, - et des données de prédiction du bloc courant à décoder, - un module de calcul pour déterminer le vecteur de quantification associé à l'index décodé, 25 - un module de prédiction pour obtenir un bloc prédicteur à partir des données de prédiction décodées. Un tel dispositif de décodage est remarquable en ce qu'il comprend : - un deuxième module de décodage qui est activé pour décoder des données relatives au bloc courant à décoder déterminées dans le signal de 30 données, au moins un des vecteurs de quantification étant modifié en fonction des données décodées, 3033114 8 - un module de reconstruction pour reconstruire le bloc courant à partir des données décodées, du vecteur de quantification déterminé et du bloc prédicteur obtenu. L'invention concerne encore un programme d'ordinateur comportant des 5 instructions pour mettre en oeuvre le procédé de codage et/ou le procédé de décodage selon l'invention, lorsqu'il est exécuté sur un ordinateur. Un tel programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, 10 ou dans n'importe quelle autre forme souhaitable. Un autre objet de l'invention vise aussi un support d'enregistrement lisible par un ordinateur, et comportant des instructions de programme d'ordinateur tel que mentionné ci-dessus. Le support d'enregistrement peut être n'importe quelle entité ou dispositif 15 capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, ou encore un moyen d'enregistrement numérique tel que par exemple une clé USB ou un disque dur. 20 D'autre part, un tel support d'enregistrement peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet. 25 Alternativement, un tel support d'enregistrement peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter le procédé de codage et/ou de décodage selon l'invention ou pour être utilisé dans l'exécution de ce et/ou ces derniers. 30 Brève description des dessins D'autres caractéristiques et avantages apparaîtront à la lecture d'un mode de réalisation préféré décrit en référence aux figures dans lesquelles: 3033114 9 - la figure 1 représente les étapes du procédé de codage selon un mode de réalisation de l'invention, - la figure 2 représente un dispositif de codage mettant en oeuvre les étapes du procédé de codage de la figure 1, 5 - la figure 3 représente un dispositif de décodage selon un mode de réalisation de l'invention, - la figure 4 représente les étapes du procédé de décodage mises en oeuvre dans le dispositif de décodage de la figure 3. 10 Description détaillée de la partie codage Un mode de réalisation de l'invention va maintenant être décrit, dans lequel le procédé de codage selon l'invention est utilisé pour coder une image ou une séquence d'images selon un flux binaire proche de celui qu'on obtient par un codage mis en oeuvre dans un codeur conforme à l'une quelconque des 15 normes de codage vidéo actuelles ou à venir. Dans ce mode de réalisation, le procédé de codage selon l'invention est par exemple implémenté de manière logicielle ou matérielle par modifications d'un tel codeur. Le procédé de codage selon l'invention est représenté sous la forme d'un algorithme comportant des étapes Cl à C15 telles que représentées 20 à la figure 1. Selon ce mode de réalisation, le procédé de codage selon l'invention est implémenté dans un dispositif de codage CO représenté à la figure 2. Comme illustré en figure 2, un tel dispositif de codage comprend une mémoire MEM CO comprenant une mémoire tampon TAMP CO, une unité de 25 traitement UT_CO équipée par exemple d'un microprocesseur pl' et pilotée par un programme d'ordinateur PG_CO qui met en oeuvre le procédé de codage selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur PG_CO sont par exemple chargées dans une mémoire RAM MR CO avant d'être exécutées par le processeur de l'unité de traitement 30 UT_CO. Le procédé de codage représenté sur la figure 1 s'applique à toute image courante ICi fixe ou bien faisant partie d'une séquence de L images IC1, ICI (1L) à coder. 3033114 10 Au cours d'une étape Cl représentée à la figure 1, il est procédé, de façon connue en soi, à la subdivision d'une image courante ICi en une pluralité de blocs B1, B2, ..., Bu,..., Bs (1 LKS). Une telle étape de subdivision est mise en oeuvre par un module logiciel de partitionnement MP CO représenté sur la 5 figure 2, lequel module est piloté par le microprocesseur pl' de l'unité de traitement UT CO. Il convient de noter qu'au sens de l'invention, le terme « bloc » signifie unité de codage (de l'anglais « coding unit »). Cette dernière terminologie est notamment utilisée dans la norme HEVC « ISO/IEC/23008-2 Recommandation ITU-T H.265 High Efficiency Video Coding (HEVC) ». 10 En particulier, une telle unité de codage regroupe des ensembles de pixels de forme rectangulaire ou carrée, encore appelés blocs, macroblocs, ou bien des ensembles de pixels présentant d'autres formes géométriques. Lesdits blocs B1, B2, ..., Bu,..., Bs sont destinés à être codés selon un ordre de parcours prédéterminé, qui est par exemple du type lexicographique. 15 Cela signifie que les blocs sont codés les uns après les autres, de la gauche vers la droite. D'autres types de parcours sont bien sûr possibles. Ainsi, il est possible de subdiviser l'image ICi en plusieurs sous-images appelées slices et d'appliquer indépendamment une subdivision de de ce type sur chaque sous- 20 image. Il est également possible de coder non pas une succession de lignes, comme expliqué ci-dessus, mais une succession de colonnes. Il est également possible de parcourir les lignes ou colonnes dans un sens ou dans l'autre Selon un exemple, les blocs B1, B2, ..., Bu,..., Bs ont une forme carrée et contiennent tous K pixels, avec 1. , sont construits en vue de la mise à jour, de la façon suivante : Zopt+n=Vopt+n+alpha*f(n)*((Vopt+BSO-Vopt+n) où : - alpha est un paramètre prédéterminé, par exemple égal à 0.1, 10 - et f(n) est une valeur qui dépend de la distance entre l'index n et l'index opt. Par exemple, dans le mode préféré de réalisation : f(n)=0.2* (5-n)/5 Les vecteurs Zopt+n avec n allant de -5 à +5 sont donc calculés, et 15 viennent remplacer respectivement les vecteurs Vopt+n dans le dictionnaire OBKopt. L'ensemble des dictionnaires courants CBKi, CBKw est donc ainsi remis à jour. Dans un mode alternatif de réalisation, les paramètres de la mise à jour 20 peuvent être différents suivant la taille de l'image. En effet, si l'image est petite, un apprentissage rapide de la statistique de l'image courante ICI est nécessaire. Par exemple : - pour une taille d'image appartenant à une vidéo simple définition SD (abréviation anglaise de « Standard Definition »), soit moins de 720 pixels 25 de haut et moins de 1280 pixels de large, un paramètre alpha égal à 0.3 est retenu ; - pour une taille d'image appartenant à une vidéo haute définition HD (Abréviation anglaise de « High Definition »), soit entre 720 et 1080 pixels de haut et entre 1280 et 1920 pixels de large, ou bien supérieure à 1280x1920 30 pixels, un paramètre alpha égal à 0.2 est retenu ; - pour une taille d'image supérieure à la taille d'une image HD, un paramètre égal à 0.1 est retenu. 3033114 18 Il est bien sûr possible de remettre à jour les dictionnaires d'autres façons. Par exemple, il est possible d'appliquer le même type de mise à jour de vecteur de quantification que dans le mode préféré. Toutefois, la mise à jour, au lieu de s'appliquer aux vecteurs voisins du vecteur de quantification Vopt dans le 5 dictionnaire CBKopt, s'applique aux vecteurs proches de Vopt+BSDro au sens de la distorsion. En variante, la mise à jour s'applique à des vecteurs proches de Vopt+BSDro non seulement dans le dictionnaire CBKopt, mais dans l'ensemble des dictionnaires courants CBKi, CBK2,..., CBKw. A la suite de l'étape C12 précitée, il est procédé, au cours d'une étape 10 C13 représentée sur la figure 1, à la sélection du bloc suivant de l'image courante ICi. Puis les étapes de codage de bloc décrites ci-dessus sont à nouveau mises en oeuvre pour ce bloc suivant. Si à l'issue de l'étape C11 précitée, le critère de mise à jour n'est pas rempli, il est procédé, au cours de l'étape C13 précitée, à la sélection du bloc 15 suivant de l'image courante ICi. Puis les étapes de codage de bloc décrites ci- dessus sont à nouveau mises en oeuvre pour ce bloc suivant. Au cours d'une étape C14 représentée à la figure 1, le codeur CO de la figure 2 teste si le bloc courant qui a été codé conformément au procédé de codage décrit ci-dessus est le dernier bloc de l'image courante ICi. 20 Si tel n'est pas le cas, l'étape C12 précitée est mise en oeuvre. Si le bloc courant est le dernier bloc de l'image courante ICi, au cours d'une étape C15 représentée à la figure 1, le codeur CO de la figure 2 teste si l'image courante suivante ICi+i est une image de type Intra ou non. Dans le cas où l'image courante suivante ICi+i est de type Intra, avant de 25 procéder au codage des blocs de cette image conformément au procédé de codage de la figure 1, l'étape C12 de mise à jour des dictionnaires est mise en oeuvre. Dans l'exemple représenté, les vecteurs de quantification du dictionnaire CBKopt sont alors chacun initialisés à une valeur respective prédéterminée. 30 Dans le cas où l'image courante suivante ICi+i n'est pas de type Intra, il est procédé directement au codage des blocs de cette image conformément au procédé de codage de la figure 1. 3033114 19 Les étapes de codage Cl à C15 qui viennent d'être décrites ci-dessus sont ensuite mises en oeuvre pour chacun des blocs B1, B2, ..., Bu,..., Bs à coder de l'image courante ICi considérée, dans un ordre prédéterminé qui est par exemple l'ordre lexicographique. 5 Description détaillée de la partie décodage Un mode de réalisation de l'invention va maintenant être décrit, dans lequel le procédé de décodage selon l'invention est utilisé pour décoder un signal ou flux de données représentatif d'une image ou d'une séquence 10 d'images qui est apte à être décodé par un décodeur conforme à l'une quelconque des normes de décodage vidéo actuelles ou à venir. Dans ce mode de réalisation, le procédé de décodage selon l'invention est par exemple implémenté de manière logicielle ou matérielle par modifications d'un tel décodeur. 15 Le procédé de décodage selon l'invention est représenté sous la forme d'un algorithme comportant des étapes D1 à D15 telles que représentées à la figure 4. Selon ce mode de réalisation, le procédé de décodage selon l'invention est implémenté dans un dispositif de décodage ou décodeur DO représenté à la 20 figure 3. Comme illustré en figure 3, selon ce mode de réalisation de l'invention, le décodeur DO comprend une mémoire MEM DO qui comprend elle-même une mémoire tampon TAMP DO, une unité de traitement UT_DO équipée par exemple d'un microprocesseur pl' et pilotée par un programme d'ordinateur 25 PG DO qui met en oeuvre le procédé de décodage selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur PG DO sont par exemple chargées dans une mémoire RAM, notée MR DO, avant d'être exécutées par le processeur de l'unité de traitement UT_DO. Le procédé de décodage représenté sur la figure 4 s'applique à un 30 signal ou flux de données F représentatif d'une image courante ICi à décoder qui est fixe ou qui appartient à une séquence d'images à décoder. 3033114 20 A cet effet, des informations représentatives de l'image courante ICi à décoder sont identifiées dans le signal de données F reçu au décodeur DO et tel que délivré à l'issue du procédé de codage de la figure 1. En référence à la figure 4, au cours d'une étape D1, il est procédé à 5 l'identification dans le signal F des blocs résidus quantifiés BSql, BSq2,..., BSc.' BSqs (1LKS) associés respectivement aux blocs B1, B2, Bu,..., Bs codés précédemment conformément à l'ordre lexicographique précité, au cours de l'étape de codage C9 de la figure 1. Une telle étape d'identification est mise en oeuvre par un processeur ou 10 module logiciel d'identification MI DO d'analyse de flux, tel que représenté à la figure 3, ledit module étant piloté par le microprocesseur pl' de l'unité de traitement UT DO. D'autres types de parcours que celui qui vient d'être décrit ci-dessus sont bien sûr possibles et dépendent de l'ordre de parcours choisi au codage. 15 Dans l'exemple représenté, les blocs B1, B2, ..., Bu,..., Bs à décoder ont une forme carrée et contiennent tous K pixels, avec 1. REVENDICATIONS1. Procédé de codage d'au moins une image (ICj) découpée en blocs, mettant en oeuvre, pour un bloc courant (Bu) à coder de ladite image : - une prédiction (C3) du bloc courant conformément à un mode de prédiction sélectionné parmi une pluralité de modes de prédiction prédéterminés, - une obtention d'un bloc prédicteur (BPopt) à l'issue de ladite prédiction, - un calcul (C4) d'un premier ensemble de données représentatives d'une différence entre le bloc prédicteur obtenu et le bloc courant, - une comparaison (C5) dudit premier ensemble de données calculé avec une pluralité de vecteurs de quantification, - une sélection (C6) d'un des vecteurs de quantification selon un critère de performance de codage prédéterminé, - un codage (C7) d'un index associé audit vecteur de quantification sélectionné, ledit procédé étant caractérisé en ce qu'il comprend: - un calcul (C8) d'un deuxième ensemble de données représentatives d'une différence entre le premier ensemble de données calculé et le vecteur de quantification sélectionné, - un codage (C9) du deuxième ensemble de données calculé au cours duquel au moins un desdits vecteurs de quantification est modifié (C12) en fonction des données du deuxième ensemble de données calculé. 2. Procédé de codage selon la revendication 1, dans lequel la modification d'un desdits vecteurs de quantification est mise en oeuvre uniquement si les données du deuxième ensemble de données calculé remplissent un critère prédéterminé. 3. Procédé de codage selon la revendication 1 ou 2, dans lequel la modification d'un desdits vecteurs de quantification est mise en oeuvre à l'aide d'un paramètre dont la valeur dépend de la taille de l'image à coder. 3033114 28 4. Procédé de codage selon l'une quelconque des revendications 1 à 3, dans lequel si ladite image courante est de type Intra, les vecteurs de quantification sont chacun initialisés à des valeurs prédéterminées. 5 5. Dispositif de codage (CO) d'au moins une image (ICj) découpée en blocs, comprenant, pour un bloc courant (Bu) à coder de ladite image : - des moyens (PRED CO) de prédiction pour prédire le bloc courant conformément à un mode de prédiction sélectionné parmi une pluralité 10 de modes de prédiction prédéterminés (MPO, MP1,..., MPv,..., MPQ), délivrant un bloc prédicteur (BPopt), - des moyens (CALI CO) de calcul pour calculer un premier ensemble de données représentatives d'une différence entre le bloc prédicteur obtenu et le bloc courant, 15 - des moyens (CAL2 CO) de comparaison pour comparer ledit premier ensemble de données calculé avec une pluralité de vecteurs de quantification, - des moyens (CAL3 CO) de sélection pour sélectionner un des vecteurs de quantification selon un critère de performance de codage 20 prédéterminé, - des premiers moyens (CB CO) de codage pour coder un index associé audit vecteur de quantification sélectionné, ledit dispositif de codage étant caractérisé en ce que: - lesdits moyens de calcul sont activés pour calculer un deuxième 25 ensemble de données représentatives d'une différence entre le premier ensemble de données calculé et le vecteur de quantification sélectionné, et en ce qu'il comprend des deuxièmes moyens de codage (MC CO) qui sont activés pour coder le deuxième ensemble de données calculé, au moins un desdits vecteurs de quantification étant modifié en fonction des données du 30 deuxième ensemble de données calculé. 6. Programme d'ordinateur comportant des instructions de code de programme pour l'exécution des étapes du procédé de codage selon l'une 3033114 29 quelconque des revendications 1 à 4, lorsque ledit programme est exécuté sur un ordinateur. 7. Support d'enregistrement lisible par un ordinateur sur lequel est 5 enregistré un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé de codage selon l'une quelconque des revendications 1 à 4, lorsque ledit programme est exécuté par un ordinateur. 10 8. Procédé de décodage d'un signal de données (F) représentatif d'au moins une image (ICi) découpée en blocs, mettant en oeuvre, pour un bloc courant (Bu) à décoder : - un décodage (D3, D5): - d'un index (IVopt) associé à un vecteur de quantification 15 (Vopt) qui appartient à un ensemble de vecteurs de quantification, - et de données de prédiction du bloc courant à décoder, - une détermination (D6) dudit vecteur de quantification associé audit index décodé, 20 - une obtention (D4) d'un bloc prédicteur (BPopt) à partir des données de prédiction décodées, ledit procédé étant caractérisé en ce qu'il comprend: - une détermination (D1), dans ledit signal de données, de données relatives au bloc courant à décoder, 25 - un décodage (D8) des données relatives au bloc courant à décoder, au cours duquel au moins un desdits vecteurs de quantification est modifié (D12) en fonction des données décodées, - une reconstruction (D9) du bloc courant à partir des données décodées, dudit vecteur de quantification et du bloc prédicteur obtenu. 30 9. Procédé de décodage selon la revendication 8, dans lequel la modification d'un desdits vecteurs de quantification est mise en oeuvre uniquement si les données décodées remplissent un critère prédéterminé. 3033114 30 10. Procédé de décodage selon la revendication 8 ou 9, dans lequel la modification d'un desdits vecteurs de quantification est mise en oeuvre à l'aide d'un paramètre dont la valeur dépend de la taille de l'image à décoder. 5 11. Procédé de décodage selon l'une quelconque des revendications 8 à 10, dans lequel si ladite image courante est de type Intra, les vecteurs de quantification sont chacun initialisés à des valeurs prédéterminées. 10 12. Dispositif de décodage d'un signal de données (F) représentatif d'au moins une image (ICi) découpée en blocs, comprenant, pour un bloc courant (Bu) à décoder : - des premiers moyens de décodage (DB DO) pour décoder : - un index associé à un vecteur de quantification qui 15 appartient à un ensemble de vecteurs de quantification, - et des données de prédiction du bloc courant à décoder, - des moyens de calcul (CALI DO) pour déterminer ledit vecteur de quantification associé audit index décodé, - des moyens de prédiction (PRED-1 DO) pour obtenir un bloc 20 prédicteur (BPopt) à partir des données de prédiction décodées, ledit dispositif de décodage étant caractérisé en ce qu'il comprend: - des deuxièmes moyens de décodage (MD DO) qui sont activés pour décoder des données relatives au bloc courant à décoder déterminées dans le signal de données, au moins un desdits vecteurs de quantification étant 25 modifié en fonction des données décodées, - des moyens de reconstruction (CAL3 DO) pour reconstruire le bloc courant à partir des données décodées, dudit vecteur de quantification déterminé et du bloc prédicteur obtenu. 30 13. Programme d'ordinateur comportant des instructions de code de programme pour l'exécution des étapes du procédé de décodage selon l'une quelconque des revendications 8 à 11, lorsque ledit programme est exécuté sur un ordinateur. 3033114 31 14. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé de décodage selon l'une 5 quelconque des revendications 8 à 11, lorsque ledit programme est exécuté par un ordinateur. 10 15 20 25 30