Brevet FR3058019A1 — publié le 20180427

PROCÉDÉ DE CODAGE ET DE DÉCODAGE DE PARAMÈTRES D'IMAGE, DISPOSITIF DE CODAGE ET DE DÉCODAGE DE PARAMÈTRES D'IMAGE 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 de paramètres d'images numériques, que ces images numériques soient fixes ou fassent partie d'une séquence d'images numériques. Le codage/décodage de tels paramètres d'image s'applique notamment à des images issues d'au moins une séquence vidéo comprenant : - des images issues d'une même caméra et se succédant temporellement (codage/décodage de type 2D), - des images issues de différentes caméras orientées selon des vues différentes (codage/décodage de type 3D), - des composantes de texture et de profondeur correspondantes (codage/décodage de type 3D), - etc... La présente invention s'applique de manière similaire au codage/décodage de paramètres d'images de type 2D ou 3D. L'invention peut notamment, mais non exclusivement, s'appliquer 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), et au décodage correspondant. Art antérieur Les codeurs vidéo actuels (MPEG, H.264, HEVC, ...) utilisent une représentation par blocs de la séquence vidéo. Les images sont découpées en blocs, lesquels sont susceptibles d'être redécoupés de façon récursive. Pour un bloc courant à coder, les paramètres d'image associés à ce bloc sont codés sous forme de bits à l'aide d'une méthode de codage adaptée mise en oeuvre par un codeur, tel que par exemple un codeur entropique dont le but est de coder ces paramètres sans perte. De tels paramètres sont par exemple : 3058019 2 - les coefficients résiduels de prédiction des pixels du bloc courant, - le mode 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 5 transmise au décodeur (« en anglais « skip »)), - des informations précisant le type de prédiction (orientation, image de référence, ...), - le type de découpage du bloc courant, - les informations de mouvement si nécessaire, 10 - etc. Les bits obtenus après codage entropique sont inscrits dans un flux de données qui est destiné à être transmis au décodeur. Une fois que le flux 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 15 bits représentatifs des paramètres d'image associés au bloc sont lus, puis décodés à l'aide d'une méthode de décodage mise en oeuvre par un décodeur, dont la table de vérité est la même que celle du codeur. Pour un paramètre d'image du type précité associé à un bloc courant, tel que par exemple le mode de prédiction intra, la norme HEVC (abréviation 20 anglaise de « High Efficiency Video Coding ») propose de coder un tel mode de prédiction en prédisant la valeur de ce mode par rapport à : - la valeur du mode de prédiction intra d'un bloc A situé au-dessus du bloc courant et qui a déjà été codé, - la valeur du mode de prédiction intra d'un bloc B situé à gauche 25 du bloc courant et qui a déjà été codé. A cet effet, les valeurs des modes de prédiction intra du bloc A et du bloc B sont d'abord testées à l'aide d'un arbre de décision pour déterminer trois valeurs de modes de prédiction intra plus probables MPM (abréviation anglaise de « Most Probable Mode ») pour le bloc à coder, parmi les trente-cinq valeurs 30 possibles du mode intra telles que proposées dans la norme HEVC. Un tel arbre de décision est représenté sur la figure 1. Suivant les valeurs du mode de prédiction intra du bloc A et du mode de prédiction intra du 3058019 3 bloc B, l'arbre de décision permet de déterminer les trois modes de prédiction intra les plus probables, selon cinq manières différentes représentées respectivement par les cinq feuilles F1, F2, F3, F4, F5 les plus basses de l'arbre. 5 Ainsi : - la feuille F1 associe au mode de prédiction intra du bloc courant les trois valeurs les plus probables suivantes: - MPM0=mode de prédiction intra du bloc A, - MPM1=mode de prédiction intra du bloc B, 10 - MPM3=mode de prédiction intra HEVC n°1 - la feuille F2 associe au mode de prédiction intra du bloc courant les trois valeurs les plus probables suivantes: - MPM0=mode de prédiction intra du bloc A, - MPM1=mode de prédiction intra du bloc B, 15 - MPM3=mode de prédiction intra HEVC n°26 - la feuille F3 associe au mode de prédiction intra du bloc courant les trois valeurs les plus probables suivantes: - MPM0=mode de prédiction intra du bloc A, - MPM1=mode de prédiction intra du bloc B, 20 - MPM3=mode de prédiction intra HEVC n°0 (Planar) - la feuille F4 associe au mode de prédiction intra du bloc courant les trois valeurs les plus probables suivantes: - MPM0=mode de prédiction intra HEVC n°0 (Planar), - MPM1=mode de prédiction intra HEVC n°1, 25 - MPM3=mode de prédiction intra HEVC n°26 - la feuille F5 associe au mode de prédiction intra du bloc courant les trois valeurs les plus probables suivantes : - MPM0= mode de prédiction intra du bloc A, - MPM1= mode de prédiction intra du bloc A -1, 30 - MPM3= mode de prédiction intra du bloc A +1. 3058019 4 Pour chacune des cinq feuilles, le mode de prédiction sélectionné est codé, les valeurs respectives des trente-cinq modes de prédiction intra étant codées de la même façon suivante : - la valeur du premier mode de prédiction intra le plus probable 5 MPM0 est codée sur deux bits, - la valeur du deuxième mode de prédiction intra le plus probable MPM1 est codée sur trois bits, - la valeur du troisième mode de prédiction intra le plus probable MPM2 est codée sur trois bits, 10 - la valeur de chacun des trente-deux modes de prédiction restants MPM3 à MPM34 est codée sur six bits. Un exemple de schéma de signalisation est décrit dans la table ci-dessous: Mode de Mo Longueur (bits) prediction intra le plus probable Mot de code d MPM0 00 2 MPM1 010 3 MPM2 011 3 MPM3 100000 6 MPM4 100001 6 MPM5 100010 6 ... ... ... MPM34 111111 6 15 Une telle méthode de codage du mode de prédiction intra qui code sur moins de bits les valeurs des premiers modes de prédiction intra les plus probables par rapport aux valeurs des modes de prédiction intra moins probables permet une réduction du coût de signalisation, le nombre moyen obtenu de bits à transmettre ayant été évalué à 4.01 bits. Afin de réduire encore 20 le coût de signalisation, il est prévu, selon la norme HEVC, d'appliquer un codage CABAC (Abréviation anglaise de « Context Adaptive Binary Arithmetic 3058019 5 Coding ») sur un ou plusieurs des bits constitutifs des mots de code associés. Le nombre moyen obtenu de bits à transmettre est ainsi ramené à 3.95 bits. L'inconvénient d'une telle technique de codage des paramètres d'image est que la séquence binaire qui en résulte reste coûteuse à signaler. Ainsi, elle 5 ne permet pas d'optimiser la réduction du gain en compression des données codées. 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 donc de remédier à des insuffisances/inconvénients de l'état de la technique et/ou d'y apporter des améliorations. A cet effet, un objet de la présente invention concerne un procédé de codage d'au moins un paramètre d'image courant, caractérisé en ce que, 15 relativement à une zone d'une image courante, il met en oeuvre ce qui suit : - en fonction de la valeur d'au moins un paramètre d'une zone d'image qui précède la zone de l'image courante, sélection d'une méthode de codage du au moins un paramètre d'image courant, parmi au moins deux méthodes de codage prédéterminées, 20 - codage de la valeur du au moins un paramètre d'image courant à l'aide de la méthode de codage sélectionnée. Une telle disposition permet, en tenant compte de certaines caractéristiques de l'image dans laquelle est située la zone d'image courante ou bien de certaines caractéristiques d'une autre image qui contient une zone 25 d'image de référence correspondant à la zone d'image courante, et en proposant au moins deux méthodes différentes de codage d'un paramètre d'image associé à la zone d'image courante : - de coder ce paramètre selon une séquence de données moins coûteuse que celle obtenue dans l'état de l'art, 30 - d'adapter le plus fidèlement possible le et/ou les mots de codes respectivement à la et/ou aux valeur(s) du paramètre d'image, en fonction du voisinage spatial ou temporel de la zone d'image courante. 3058019 6 Selon un mode de réalisation particulier, N valeurs possibles étant associées audit au moins un paramètre d'image courant, tel que I\12, la méthode de codage prédéterminée qui est sélectionnée fait correspondre K mots de code à respectivement K valeurs parmi N, tel que K REVENDICATIONS1. Procédé de codage d'au moins un paramètre d'image courant (Pu), caractérisé en ce que, relativement à une zone (13;) d'une image courante (ICI), il met en oeuvre ce qui suit : - en fonction de la valeur d'au moins un paramètre d'une zone d'image qui précède ladite zone de l'image courante, sélection (C3a ; C3b) d'une méthode de codage (MCsei) dudit au moins un paramètre d'image courant, parmi au moins deux méthodes de codage prédéterminées (MCX, MCy), - codage (C4a ; C4b) de la valeur dudit au moins un paramètre d'image courant à l'aide de la méthode de codage sélectionnée. 2. Procédé de codage selon la revendication 1, dans lequel N valeurs possibles étant associées audit au moins un paramètre d'image courant, tel que I\12, la méthode de codage prédéterminée qui est sélectionnée fait correspondre K mots de code à respectivement K valeurs parmi N, tel que K 3. Procédé de codage selon la revendication 1 ou la revendication 2, dans lequel N valeurs possibles étant associées audit au moins un paramètre d'image courant, tel que I\12 : - Q mots de code ayant tous la même longueur sont associés respectivement à certaines Q valeurs possibles parmi N dudit au moins un paramètre d'image courant, tel que Q 4. Dispositif (CO) de codage d'au moins un paramètre d'image courant, comprenant un circuit de traitement (CT_C) caractérisé en ce qu'il est agencé pour, relativement à une zone d'une image courante : - en fonction de la valeur d'au moins un paramètre d'une zone d'image qui précède ladite zone de l'image courante, sélectionner une méthode 3058019 31 de codage dudit au moins un paramètre d'image courant, parmi au moins deux méthodes de codage prédéterminées, - coder la valeur dudit au moins un paramètre d'image courant à l'aide de la méthode de codage sélectionnée. 5 5. Programme d'ordinateur comportant des instructions de code de programme pour l'exécution des étapes du procédé de codage selon l'une quelconque des revendications 1 à 3, lorsque ledit programme est exécuté sur un ordinateur. 10 6. 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 codage selon l'une quelconque des revendications 1 à 3, lorsque ledit programme est exécuté par 15 un ordinateur. 7. Procédé de décodage d'au moins un paramètre d'image courant (Pu), caractérisé en ce que, relativement à une zone (Bi) d'une image courante (ICI), il met en oeuvre ce qui suit : 20 - en fonction de la valeur d'au moins un paramètre d'une zone d'image qui précède ladite zone de l'image courante, sélection (D3) d'une méthode de décodage (MDsei) dudit au moins un paramètre d'image courant, parmi au moins deux méthodes de décodage prédéterminées (MDX, MDy), - décodage (D4) de la valeur dudit au moins un paramètre d'image 25 courant à l'aide de la méthode de décodage sélectionnée. 8. Procédé de décodage selon la revendication 7, dans lequel N valeurs possibles étant associées audit au moins un paramètre d'image courant, tel que I\12, la méthode de décodage prédéterminée qui est sélectionnée fait 30 correspondre K mots de code à respectivement K valeurs parmi N, tel que K 9. Procédé de décodage selon la revendication 7 ou la revendication 8, dans lequel N valeurs possibles étant associées audit au moins un paramètre d'image courant, tel que I\12 : - Q mots de code ayant tous la même longueur sont associés 5 respectivement à certaines Q valeurs possibles parmi N dudit au moins un paramètre d'image courant, tel que Q 10. Dispositif de décodage d'au moins un paramètre d'image courant comprenant un circuit de traitement (CT_D) caractérisé en ce qu'il est agencé pour, relativement à une zone d'une image courante : - en fonction de la valeur d'au moins un paramètre d'une zone 15 d'image qui précède ladite zone de l'image courante, sélectionner une méthode de décodage dudit au moins un paramètre d'image courant, parmi au moins deux méthodes de décodage prédéterminées, - décoder la valeur dudit au moins un paramètre d'image courant à l'aide de la méthode de décodage sélectionnée. 20 11. 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 7 à 9, lorsque ledit programme est exécuté sur un ordinateur. 25 12. 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 quelconque des revendications 7 à 9, lorsque ledit programme est exécuté par 30 un ordinateur.