Brevet FR3022723A1 — publié le 20151225

Procédé de sélection d'au moins un paramètre de codage dans un encodeur vidéo, sous une contrainte supplémentaire de régularité. 1. DOMAINE DE L'INVENTION Le domaine de l'invention est celui de la compression de données vidéo. L'objectif de la compression vidéo est de réduire la quantité de données contenue dans une séquence vidéo, tout en préservant la qualité visuelle perçue d'origine ; et ainsi réduire les coûts de stockage et de transmission des données vidéo considérées. Les données vidéo contiennent une très grande redondance statistique, aussi bien dans le domaine temporel que dans le domaine spatial. Les techniques de compression exploitent cette redondance statistique, i.e. la corrélation entre les pixels composants une séquence d'images, en utilisant des mécanismes avancés de prédiction, afin de réduire la quantité de données à stocker ou transmettre. Plus précisément, l'invention concerne une technique de sélection, pour une portion d'image à coder courante et pour au moins un module de codage compris dans un encodeur vidéo, d'au moins un paramètre de codage parmi un ensemble de paramètres de codage disponibles pour ledit au moins un module de codage. 2. ARRIÈRE-PLAN TECHNOLOGIQUE Dans le cas du populaire encodeur vidéo hybride, on distingue principalement deux familles de prédiction (ou codage) : les méthodes dites de prédiction Intra et les méthodes dites de prédiction Inter. La prédiction Intra exploite la corrélation entre les pixels appartenant à un même voisinage spatial (i.e. au sein d'une même image, Intra image), tandis que la prédiction Inter exploite la corrélation entre les pixels appartenant à un même voisinage temporel (i.e. entre plusieurs images voisines temporellement, Inter image). Chaque image est traitée séquentiellement et généralement par bloc (le traitement par bloc est non limitatif et la présente description reste vraie pour n'importe qu'elle portion d'image). Pour chaque bloc, après prédiction Intra ou Inter des échantillons sources, les échantillons résiduels (issus de la différence entre les échantillons sources et prédits) sont successivement transformés, quantifiés et codés à l'aide d'un codage entropique. 3022723 2 La figure 1 présente un schéma bloc générique d'un exemple d'encodeur vidéo hybride connu (i.e. faisant partie de l'état de la technique). Les flèches pointillées référencées 11 et 12 représentent les critères d'optimisation (d'une part « R = RT » et d'autre part « M/N(D(s,n) », comme détaillé plus bas) utilisés par un module de 5 décision (aussi appelé « module décisionnel ») 10. Les flèches pointillées référencées DS0 à DS6 représentent les décisions de sortie envoyées aux différents modules de codage contrôlés par le module décisionnel 10. Chaque module de codage contrôlé par le module décisionnel est numéroté de 0 à 6, et la décision de sortie associée est indexée du même numéro, précédé de « DS ». Les flèches référencées 14 et 15 représentent des 10 informations secondaires fournies aux différents modules de codage contrôlés par le module décisionnel 10. Pour une séquence d'images à encoder, chaque portion d'image source (portion d'image à coder courante, dans une image à coder courante) traverse l'ensemble des modules de codage représentés. Les échantillons sources, s, sont tout d'abord prédits à 15 l'aide d'un circuit de prédiction 600 (comprenant dans cet exemple un module de prédiction Intra 4, un module de prédiction Inter 5 et un module de sélection 6). Le résultat de la prédiction est un ensemble d'échantillons prédits, p, que l'on soustrait aux échantillons sources s (par un module de soustraction 16), aboutissant à des échantillons résiduels r. Les échantillons résiduels sont successivement transformés (par un module 20 de transformation 0), quantifiés (par un module de quantification 1), codés à l'aide d'un codage entropique (par un module de codage entropique 2) puis transmis au décodeur. La boucle de décodage est reproduite à l'encodeur afin de reconstruire les échantillons codés, disponibles au décodeur, et de les utiliser comme référence pour la prédiction. Ainsi, les échantillons résiduels transformés quantifiés E (en sortie du module de 25 quantification 1) sont successivement dé-quantifiés (par un module de quantification inverse 7), dé-transformés (par un module de transformation inverse 8), sommés aux échantillons prédits (par un module d'addition 13) et éventuellement post-filtrés (par un module de filtrage de boucle 3). Les échantillons reconstruits résultants .§ sont ensuite stockés en mémoire (mémoire tampon, ou « buffer », 9) pour être utilisés lors de l'étape de prédiction. 3022723 3 Au cours du processus de compression, le module décisionnel 10 prend une décision pour au moins un des modules de codage traversés 0 à 6. Une prise de décision consiste à sélectionner au moins un paramètre de codage (aussi appelé « mode de codage ») parmi un ensemble de paramètres de codage disponibles pour le module de 5 codage considéré. Dans le cas du module de transformation 0, le module décisionnel peut être utilisé pour sélectionner par exemple la taille ou le type de transformée appliquée aux échantillons résiduels ; dans le cas du module de quantification 1, pour sélectionner par exemple les paramètres de quantification (par exemple, pas de quantification, seuil, zone morte (« dead zone »), matrices, etc.) ; dans le cas du module 10 de codage entropique 2, pour sélectionner le type de codage entropique ; dans le cas du module de filtrage de boucle 3, pour sélectionner par exemple les paramètres de filtrage de boucle (par exemple, force du filtre de déblocage (« deblocking »), offsets, classification dans le cas du filtre « sample adaptive offset (HEVC/H.265) », etc.) ; dans le cas du module de prédiction Intra 4, pour sélectionner par exemple le mode de 15 prédiction intra (par exemple « DC », « Planar », différents modes de prédiction angulaire, etc.); dans le cas du module de prédiction Inter 5, pour sélectionner par exemple les vecteurs mouvements et/ou prédicteurs de mouvement ; dans le cas du module de sélection 6, pour sélectionner par exemple le mode de prédiction (par exemple Intra/Inter) et/ou la taille de l'unité de prédiction. 20 En résumé, pour chaque bloc (ou portion d'image) de chaque image d'une séquence vidéo, de nombreuses décisions (sélections de paramètre de codage) doivent être réalisées par l'encodeur vidéo afin d'optimiser l'efficacité de codage de cette séquence vidéo. Le modèle décisionnel (aussi appelé « modèle de décision ») utilisé pour optimiser ces décisions (sélections de paramètre de codage) est laissé libre à 25 l'encodeur (non normalisé). Un modèle décisionnel de l'état de l'art, utilisé par le module décisionnel 10 et implémenté dans la majorité des encodeurs vidéo, se base sur l'optimisation du compromis Débit-Distorsion. L'objectif d'un tel modèle décisionnel est de minimiser la distorsion D sous une contrainte de débit RT, où la distorsion est une mesure de distance 3022723 4 entre les échantillons vidéos sources, s, et les échantillons vidéos reconstruits, g, par exemple : MIN (D (s, g)), sous la contrainte R = RT Diverses méthodes connues permettent de résoudre ce problème classique d'optimisation sous contrainte. Par exemple, si on utilise la méthode des multiplicateurs 5 de Lagrange, ce problème classique d'optimisation sous contrainte peut être réécrit sous la forme d'une unique minimisation, telle que : pour chaque bloc (ou portion d'image) de chaque image, pour au moins un module de codage et un ensemble de paramètres de codage, M = {mi}, i E {0, K - 1} , K > 2, associé à ce module de codage, on cherche le paramètre de codage optimal mopt 10 qui minimise : mopt = argminmem(1,72) tin, = D(s, gin) + ÀxR(Ein, ion,) (1) Où: Jin est le Lagrangien (ou coût de Lagrange) pour le paramètre de codage m ; D (s, 5m) est une mesure de distorsion entre les échantillons sources, s, et les échantillons reconstruits, gm, pour le paramètre de codage m ; 15 R(Ern, ion,) est une estimation du coût en bit des résidus transformés quantifiés, cm, et de l'information secondaire, lom, à transmettre au décodeur pour le paramètre de codage m ; est le multiplicateur de Lagrange, définissant un compromis entre distorsion et débit. 20 On comprends de l'équation (1) que pour un débit R cible et un paramètre de codage m, et quel que soit le type de mesure de distorsion D utilisée (en particulier n'importe quelle métrique avec des propriétés perceptuelles, par exemple basée sur une mesure de similarité des structures de l'image), le processus d'optimisation oriente les décisions pour rester au plus proche des échantillons sources uniquement. 25 Perceptuellement, pour la plupart des contenus vidéo, à cause de l'étape de quantification (i.e. étape avec perte de données), ce critère d'optimisation basé sur une minimisation de la distance aux caractéristiques de la source sans une contrainte additionnelle est insuffisant. 3022723 5 En effet, pour des blocs sources appartenant à des zones d'image aux caractéristiques similaires, i.e. des zones ayant une forte corrélation spatiale et/ou temporelle, le processus de compression basé sur le modèle décisionnel précédent peut aboutir à des blocs reconstruits avec des caractéristiques différentes et avec une perte 5 significative de corrélation entre les blocs reconstruits voisins spatialement et/ou temporellement. Les échantillons sont ainsi reconstruits de manière non régulière ou non lisse (« smooth » en anglais) spatialement et/ou temporellement. Ce phénomène est visuellement très désagréable ; en particulier temporellement à travers plusieurs images successives, où des artefacts de scintillement (« flickering » en anglais) ou d'autres 10 artefacts de perte de cohérence temporelle apparaissent. La combinaison du choix successif de différents paramètres de codage (avec des propriétés différentes) et la perte de l'information résiduelle résultant de la quantification explique ce phénomène. La prévention de cet artefact visuel a motivé la présente invention décrite ci- après. 15 3. OBJECTIFS DE L'INVENTION L'invention, dans au moins un mode de réalisation, a notamment pour objectif de pallier ces différents inconvénients de l'état de la technique. Plus précisément, dans au moins un mode de réalisation de l'invention, un objectif est d'améliorer l'efficacité de compression d'un encodeur vidéo, et la qualité 20 visuelle perçue des séquences vidéos encodées résultantes, en proposant un modèle décisionnel innovant pour optimiser les prises de décision de codage. On rappelle qu'une prise de décision consiste, pour un module décisionnel compris dans l'encodeur vidéo, à sélectionner au moins un paramètre de codage pour au moins un des modules de codage. 25 Au moins un mode de réalisation de l'invention a également pour objectif de fournir une telle technique qui soit simple à mettre en oeuvre et peu coûteuse. 4. EXPOSÉ DE L'INVENTION Dans un mode de réalisation particulier de l'invention, il est proposé un procédé de sélection, pour une portion d'image à coder courante et pour au moins un module de 30 codage compris dans un encodeur vidéo, d'au moins un paramètre de codage parmi un 3022723 6 ensemble de paramètres de codage disponibles pour ledit au moins un module de codage, le procédé étant basé sur un modèle décisionnel définissant une minimisation, sous une contrainte de débit, d'une première mesure de distorsion D entre des échantillons sources, compris dans ladite portion d'image à coder courante, et des 5 échantillons reconstruits courants, compris dans une portion d'image reconstruite courante, obtenue à partir de la portion d'image à coder courante. Le modèle décisionnel définit ladite minimisation sous une contrainte supplémentaire de régularité, portant sur une seconde mesure de distorsion D' entre lesdits échantillons reconstruits courants et des échantillons reconstruits précédents, appartenant à un voisinage de référence spatial 10 et/ou temporel comprenant au moins une portion d'image reconstruite précédente, obtenue à partir d'au moins une portion d'image codée précédente. Ainsi, la technique proposée repose sur une approche tout à fait nouvelle et inventive pour l'optimisation des décisions de codage (i.e. pour la sélection des paramètres de codage) : afin de satisfaire la qualité visuelle perçue des contenus vidéos 15 compressés, on complète les critères d'optimisation de l'état de l'art (i.e. la minimisation de la mesure de distorsion entre les échantillons source et les échantillons reconstruits, sous la contrainte de débit), avec une contrainte supplémentaire (dite « contrainte de régularité » , ou « smoothness constraint » en anglais) portant sur une mesure de distorsion entre les échantillons reconstruits courants et des échantillons reconstruits 20 précédents, appartenant à un voisinage spatial et/ou temporel de référence. La technique proposée permet d'améliorer l'efficacité de compression de l'encodeur vidéo, et la qualité visuelle perçue des séquences vidéo encodées. Elle permet une reconstruction régulière ("smooth" en anglais) des échantillons vidéo codés. En effet, en améliorant la cohérence et la consistance (spatiale et temporelle) des 25 échantillons reconstruits, elle réduit les artefacts visuels (tels que les artefacts de scintillement, ou « flickering »). Selon un aspect particulier de l'invention, ladite contrainte supplémentaire de régularité, portant sur la seconde mesure de distorsion D', est définie par : D' (gN, 'g) 2 associé à ce module de codage, on cherche le paramètre de codage optimal mopt qui minimise : mopt = ar gminmem (Ln) [ Jin = D (s , gm) + N, gin) + ÀxR(Ern, pin) où: D (s, gin) est une mesure de distorsion entre des échantillons sources, s, et des 10 échantillons reconstruits courants, pour le paramètre de codage m ; D'(SN, gin) est une mesure de distorsion entre des échantillons reconstruits précédents, g N , appartenant à un voisinage spatial et/ou temporel de référence, N, et les échantillons reconstruits courants, .§7n, pour le paramètre de codage m ; R(En' pin) est une estimation d'un coût en bit de résidus transformés quantifiés, 15 cm, et d'une information secondaire, pin, à transmettre à un décodeur pour le paramètre de codage m ; kt est un premier multiplicateur de Lagrange, définissant un compromis entre D (S, gin) et D'(gN,g,,,,) ; et est un second multiplicateur de Lagrange, définissant un compromis entre 20 D (s , gin) et D' (g N, gm) d'une part et R(En' ion,) d'autre part. Selon une caractéristique particulière, ledit au moins un paramètre de codage appartient au groupe comprenant : une taille ou un type de transformée appliquée à des échantillons résiduels, dans le cas où ledit au moins un module de codage est un module de transformation ; 25 des paramètres de quantification, dans le cas où ledit au moins un module de codage est un module de quantification ; un type de codage entropique, dans le cas où ledit au moins un module de codage est un module de codage entropique ; 5 3022723 8 des paramètres de filtrage de boucle, dans le cas où ledit au moins un module de codage est un module de filtrage de boucle ; un mode de prédiction intra, dans le cas où ledit au moins un module de codage est un module de prédiction intra ; 5 des vecteurs mouvements et/ou prédicteurs de mouvement, dans le cas où ledit au moins un module de codage est un module de prédiction inter ; un mode de prédiction et/ou une taille d'unité de prédiction, dans le cas où ledit au moins un module de codage est un module de sélection parmi plusieurs modules de prédiction. 10 Cette liste de paramètres de codage (et de modules de codage associés) n'est pas exhaustive. Selon une caractéristique particulière, le voisinage de référence comprend au moins une portion d'image reconstruite précédente appartenant au groupe comprenant : au moins une première portion d'image reconstruite précédente, obtenue à partir 15 d'une portion d'image codée précédente qui occupe dans une première image codée précédente une position identique à celle de la portion d'image à coder courante dans une image à coder courante ; au moins une deuxième portion d'image reconstruite précédente, qui occupe dans ladite première image codée précédente une position adjacente à celle de 20 ladite au moins une première portion d'image reconstruite précédente ; au moins une troisième portion d'image reconstruite précédente, obtenue à partir d'une portion d'image compensée en mouvement qui occupe dans une deuxième image codée précédente une position compensée en mouvement, à l'aide d'un vecteur mouvement, relativement à la position de la portion d'image à coder 25 courante dans une image à coder courante ; au moins une quatrième portion d'image reconstruite précédente, qui occupe dans ladite deuxième image codée précédente une position adjacente à celle de ladite au moins une troisième portion d'image reconstruite précédente ; au moins une cinquième portion d'image reconstruite précédente, obtenue à 30 partir d'une portion d'image codée précédente qui occupe dans ladite image 3022723 9 codée courante une position adjacente à celle de la portion d'image à coder courante. Le voisinage de référence peut comprendre une ou plusieurs de ces portions d'image reconstruites précédentes. 5 Selon une caractéristique particulière, le voisinage de référence comprend au moins deux portions d'image reconstruites précédentes, et la seconde mesure de distorsion D' est définie comme une somme pondérée d'une pluralité de mesures de distorsion intermédiaires, chaque mesure de distorsion intermédiaire étant associée à une desdites au moins deux portions d'image reconstruites précédentes et étant définie 10 comme une mesure de distorsion entre lesdits échantillons reconstruits courants, compris dans la portion d'image reconstruite courante, et des échantillons reconstruits précédents, appartenant à la portion d'image reconstruite précédente associée à ladite mesure de distorsion intermédiaire. Ainsi, avec un voisinage de référence comprenant plusieurs portions d'images 15 reconstruites précédentes, on améliore encore la reconstruction régulière ("smooth") des échantillons vidéo codés. Selon une caractéristique particulière, ladite somme pondérée est définie par un jeu de coefficients de pondération qui est variable d'un paramètre de codage à l'autre au sein dudit ensemble de paramètres de codage disponibles pour ledit au moins un module 20 de codage. Ainsi, on optimise les calculs en permettant de manière simple à chacun des paramètres de codage disponibles d'être associé à un voisinage de référence distinct. Dans un autre mode de réalisation de l'invention, il est proposé un produit programme d'ordinateur qui comprend des instructions de code de programme pour la 25 mise en oeuvre du procédé précité (dans l'un quelconque de ses différents modes de réalisation), lorsque ledit programme est exécuté sur un ordinateur. Dans un autre mode de réalisation de l'invention, il est proposé un médium de stockage lisible par ordinateur et non transitoire, stockant un programme d'ordinateur comprenant un jeu d'instructions exécutables par un ordinateur pour mettre en oeuvre le 30 procédé précité (dans l'un quelconque de ses différents modes de réalisation). 3022723 10 Dans un autre mode de réalisation de l'invention, il est proposé un dispositif de sélection, pour une portion d'image à coder courante et pour au moins un module de codage compris dans un encodeur vidéo, d'au moins un paramètre de codage parmi un ensemble de paramètres de codage disponibles pour ledit au moins un module de 5 codage, le dispositif de sélection comprenant des moyens de mise en oeuvre d'un modèle décisionnel définissant une minimisation, sous une contrainte de débit, d'une première mesure de distorsion D entre des échantillons sources, compris dans ladite portion d'image à coder courante, et des échantillons reconstruits courants, compris dans une portion d'image reconstruite courante, obtenue à partir de la portion d'image à coder 10 courante. Les moyens de mise en oeuvre du modèle décisionnel définissent ladite minimisation sous une contrainte supplémentaire de régularité, portant sur une seconde mesure de distorsion D' entre lesdits échantillons reconstruits courants et des échantillons reconstruits précédents, appartenant à un voisinage de référence spatial et/ou temporel comprenant au moins une portion d'image reconstruite précédente, 15 obtenue à partir d'au moins une portion d'image codée précédente.. Avantageusement, le dispositif de sélection comprend des moyens de mise en oeuvre des étapes qu'il effectue dans le procédé de sélection tel que décrit précédemment, dans l'un quelconque de ses différents modes de réalisation. 5. LISTE DES FIGURES 20 D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description suivante, donnée à titre d'exemple indicatif et non limitatif, et des dessins annexés, dans lesquels : la figure 1, déjà décrite en relation avec l'art antérieur, présente un schéma-bloc d'un encodeur vidéo hybride de l'état de l'art ; 25 la figure 2 présente un schéma-bloc d'un encodeur vidéo hybride selon un premier mode de réalisation particulier de l'invention ; la figure 3 présente un premier exemple de voisinage de référence ; la figure 4 présente un deuxième exemple de voisinage de référence ; la figure 5 présente un troisième exemple de voisinage de référence ; 30 la figure 6 présente un schéma-bloc d'un encodeur vidéo hybride selon un second mode de réalisation particulier de l'invention ; et 3022723 11 - la figure 7 présente la structure d'un module décisionnel (dispositif de sélection de paramètres de codage) selon un mode de réalisation particulier de l'invention. 6. DESCRIPTION DÉTAILLÉE Sur toutes les figures du présent document, les éléments et étapes identiques sont 5 désignés par une même référence numérique. Dans la suite de la description, on considère, à titre d'exemple uniquement et afin de faciliter la lecture, qu'une portion d'image est un bloc d'image, au sens par exemple d'un macro-bloc (« macroblock », MB) en MPEG-2/AVC-H.264, ou encore d'une unité de codage (« coding unit », CU) en HEVC-H.265. Il est clair que la présente 10 invention s'applique quelle que soit la nature de la portion d'image à coder. On présente maintenant, en relation avec la figure 2, un encodeur vidéo hybride selon un premier mode de réalisation particulier de l'invention. Il se distingue de l'encodeur connu de la figure 1 en ce que le module décisionnel (référencé 100 sur la figure 2) utilise un critère d'optimisation 15 supplémentaire, à savoir une contrainte supplémentaire de régularité (« smoothness constraint ») qui s'écrit par exemple : « D'(.1',,.§) 2 associé à ce module de codage, on cherche le paramètre de codage optimal mopt qui minimise : mopt = argminmemUrn) [Ln = D(s, 42) + k(.xD'UN, 42) + ÀxR(C,' pin) où: D(s,g'in) est une mesure de distorsion entre les échantillons sources, s, et les échantillons reconstruits courants, gin, pour le paramètre de codage m ; (2) 3022723 13 D'(SN, gin) est une mesure de distorsion entre les échantillons reconstruits précédents, :S. N , appartenant à un voisinage spatial et/ou temporel de référence, N, et les échantillons reconstruits courants, gin, pour le paramètre de codage m ; R(E,72,19,2) est une estimation du coût en bit des résidus transformés quantifiés, 5 cm, et de l'information secondaire, pin, à transmettre au décodeur pour le paramètre de codage m ; kt est un premier multiplicateur de Lagrange, définissant un compromis entre D(s,g,n) et D'(gN, gin) ; et À est un second multiplicateur de Lagrange, définissant un compromis entre 10 distorsion (i.e. D (s, Sm) et D' (.'s N , .§,2)) et débit (i.e. R (cm, ion,)). La métrique D' peut être différente ou non de la métrique D. Elle peut être quelconque (par exemple, la somme des carrés des différences (SSD), la somme des différences absolues (SAD), différence moyenne de portion d'image (« image portion mean difference »), indice de similarité structurelle (« structural similarity index »), 15 etc.), et appliquée sur les composantes de luminance et/ou de chrominance. Avec le modèle décisionnel proposé, on comprend de l'équation (2) qu'une pénalité est naturellement attribuée aux paramètres de codage résultant en des échantillons reconstruits courants trop loin (au sens de D') des échantillons reconstruits précédents appartenant au voisinage de référence N. Cette pénalité assure une 20 reconstruction régulière (« smooth ») le long du voisinage jusqu'au bloc à coder courant. Pour chaque bloc à coder et pour chaque paramètre de codage m à évaluer pour un des modules de codage, le voisinage de référence N d'échantillons reconstruits peut être construit comme l'un des trois types de voisinages suivants (ou une combinaison de 25 plusieurs d'entre eux). Un premier type de voisinage (temporel) est composé d'un ou plusieurs blocs reconstruits précédents correspondant, pour au moins une image codée précédente, au bloc colocalisé dans ladite image codée précédente, et éventuellement à un ou plusieurs blocs adjacents à celui-ci (i.e. le bloc colocalisé) dans ladite image codée précédente. 3022723 14 Un exemple de voisinage de ce premier type est donné figure 3. Le bloc à coder courant 30 (hachuré) est compris dans l'image à coder courante 'I' (N) . Plus précisément, son angle supérieur gauche est en position (X,Y). Le voisinage temporel comprend des blocs reconstruits précédents, obtenus à partir de blocs codés précédents compris dans 5 les images codées précédentes f(N - 1) et r(N - 2), la flèche référencée 34 représentant l'ordre de codage. Plus précisément, le voisinage temporel comprend : - un bloc reconstruit précédent (référencé 31a) obtenu à partir du bloc codé précédent colocalisé dans l'image codée précédente f(N - 1) (c'est-à-dire occupant dans celle-ci une position identique à celle du bloc à coder courant 30 10 dans l'image à coder courante Î(N)), et huit autres blocs reconstruits précédents (référencés globalement 3 lb) adjacents dans l'image codée précédente Î(N - 1) au bloc reconstruit précédent référencé 31a ; - un bloc reconstruit précédent (référencé 32a) obtenu à partir du bloc codé précédent colocalisé dans l'image codée précédente î(N - 2) (c'est-à-dire 15 occupant dans celle-ci une position identique à celle du bloc à coder courant 30 dans l'image à coder courante î(N)), et huit autres blocs reconstruits précédents (référencés globalement 32b) adjacents dans l'image codée précédente î(N - 2) au bloc reconstruit précédent référencé 32a. Un deuxième type de voisinage (temporel) est composé d'un ou plusieurs blocs 20 reconstruits précédents correspondant, pour au moins une image codée précédente, au bloc compensé en mouvement dans ladite image codée précédente, et éventuellement à un ou plusieurs blocs adjacents à celui-ci (i.e. le bloc compensé en mouvement) dans ladite image codée précédente. Un exemple de voisinage de ce deuxième type est donné figure 4. Le bloc à 25 coder courant 40 (hachuré) est compris dans l'image à coder courante Î(N). Plus précisément, son angle supérieur gauche est en position (X,Y). Le voisinage temporel comprend des blocs reconstruits précédents, obtenus à partir de blocs codés précédents compris dans les images codées précédentes f(N - 1) et f(N - 2), la flèche référencée 44 représentant l'ordre de codage. Plus précisément, le voisinage temporel comprend : 3022723 15 - un bloc reconstruit précédent (référencé 41a) obtenu à partir du bloc compensé en mouvement dans l'image codée précédente î(N - 1) (c'est-à-dire occupant dans celle-ci une position compensée en mouvement (X+MVX, Y+MVY) à l'aide d'un vecteur mouvement MV = (MVX, MVY) (référencé 41c, dont les 5 composantes (MVX, MVY) sont signées) relativement à la position (X,Y) du bloc à coder courant 40 dans l'image à coder courante î(N)), et huit autres blocs reconstruits précédents (référencés globalement 41b) adjacents dans l'image codée précédente î(N - 1) au bloc reconstruit précédent référencé 41a ; - un bloc reconstruit précédent (référencé 42a) obtenu à partir du bloc compensé 10 en mouvement dans l'image codée précédente Î(N - 2) (c'est-à-dire occupant dans celle-ci une position compensée en mouvement (X+MVX', Y+MVY') à l'aide d'un vecteur mouvement MV' = (MVX', MVY') (référencé 42c, dont les composantes (MVX', MVY') sont signées) relativement à la position (X,Y) du bloc à coder courant 40 dans l'image à coder courante î(N)), et huit autres blocs 15 reconstruits précédents (référencés globalement 42b) adjacents dans l'image codée précédente î(N - 2) au bloc reconstruit précédent référencé 42a. Un troisième type de voisinage (spatial) est composé d'un ou plusieurs blocs reconstruits précédents correspondant à un ou plusieurs blocs déjà codés qui sont adjacents, dans l'image à coder courante, au bloc à coder courant. 20 Un exemple de voisinage de ce troisième type est donné figure 5. Le bloc à coder courant 50 (hachuré) est compris dans l'image à coder courante r(N). Le voisinage spatial comprend quatre blocs reconstruits précédents (référencés globalement 51), obtenus à partir de quatre blocs codés précédents qui occupent dans l'image codée courante î(N) des positions adjacentes à celle du bloc à coder courant 50 (position 25 supérieure gauche, position supérieure centre, position supérieure droite et position gauche). On note qu'en fonction de la structure de codage utilisée pour un groupe d'images à coder (GOP, pour « Group-Of-Picture » en anglais), en particulier en utilisant une structure de GOP dite bidirectionnelle, le voisinage temporel peut 30 appartenir aux images passées et/ou futures dans l'ordre d'affichage. 3022723 16 On présente maintenant, en relation avec la figure 6, un encodeur vidéo hybride selon un second mode de réalisation particulier de l'invention. Il se distingue de l'encodeur de la figure 2 (premier mode de réalisation de l'invention) en ce que le circuit de prédiction (référencé 600' sur la figure 6) comprend 5 un module de prédiction Intra 4, un module de prédiction Inter 5, un module de prédiction Skip 63, un module d'estimation de mouvement (ME) 64 et un module de sélection 6 (permettant de sélectionner un des trois modules de prédictions 4, 5 et 63). On suppose par exemple que l'encodeur vidéo est de type MPEG. Dans le cadre des standards vidéo MPEG, pour chaque bloc d'image (i.e. MB (« macroblock ») en 10 MPEG-2/AVC-H.264, ou CU (« coding unit ») en HEVC-H.265) de chaque image d'une séquence vidéo, une des étapes de codage consiste en une étape de prédiction, étape pour laquelle l'encodeur doit sélectionner de manière optimale un mode de prédiction de bloc parmi au moins deux modes de prédiction de bloc. Dans l'exemple de la figure 6, le module décisionnel 100 contrôle le circuit de 15 prédiction 600', notamment en envoyant la décision de sortie DS6 au module de sélection 6, afin que ce dernier sélectionne l'un des trois modules de prédictions 4, 5 et 63, c'est-à-dire sélectionne un mode de prédiction de bloc parmi trois modes de prédiction de bloc possibles : le mode Intra, le mode Inter et le mode Skip. En d'autres termes, pour le module de sélection 6, le module décisionnel 100 20 sélectionne un paramètre de codage qui est un mode de prédiction de bloc, parmi les trois modes de prédiction de bloc possibles précités. Le mode Intra utilise un voisinage spatial (Intra image) comme échantillons de référence pour la prédiction, et nécessite la transmission des résidus transformés quantifiés plus des informations secondaires (par exemple, index du mode de prédiction 25 intra, etc.). Le mode Inter utilise des référence(s) temporelle(s) pour la prédiction, i.e. des bloc(s) compensé(s) en mouvement en utilisant le(s) vecteur(s) mouvement(s) (MV) issu(s) du module d'estimation de mouvement (ME) 64, et nécessite la transmission des résidus transformés quantifiés plus des informations secondaires (par exemple, MV(s), 3022723 17 index(s) des images de référence, index(s) des prédicteur(s) de vecteur mouvement, etc.). Le mode Skip utilise des référence(s) temporelle(s) pour la prédiction, i.e. des bloc(s) compensé(s) en mouvement en utilisant les vecteur(s) mouvement(s) MV(s) 5 issu(s) d'une liste standardisée de prédicteurs de mouvement, et nécessite seulement la transmission d'informations secondaires (par exemple, index(s) des prédicteurs de mouvement). Aucun échantillon résiduel n'est transmis. De plus, il est important de noter que dans les standards MPEG on distingue en particulier trois types d'image (ou « frame » en anglais) : 10 - image I (« I-frame ») : image codée en utilisant une prédiction Intra et sans aucune référence à d'autres images précédemment codées ; image composée uniquement de blocs codés avec le mode Intra. - image P (« P-frame ») : image, dite Prédictive, codée en utilisant une prédiction Intra ou Inter, où la prédiction Inter est une prédiction temporelle 15 unidirectionnelle réalisée à partir d'une image de référence précédemment codée appartenant au passé dans l'ordre d'affichage ; image composée potentiellement de blocs codés en mode Intra, Inter ou Skip. - image B (« B-frame ») : image, dite Biprédictive, codée en utilisant une prédiction Intra ou Inter, où la prédiction Inter est une prédiction temporelle 20 bidirectionnelle réalisée à partir d'une ou plusieurs image(s) de référence appartenant au passé et/ou au futur dans l'ordre d'affichage ; image composée potentiellement de blocs codés en mode Intra, Inter ou Skip. A titre illustratif, on présente maintenant une application particulière du module décisionnel 100 de la figure 6, pour sélectionner le mode de prédiction de bloc optimal 25 (i.e. le paramètre de codage optimal) à envoyer au module de sélection 6, pour un bloc à coder courant B d'une image P. On considère donc le module de sélection 6, et l'ensemble des paramètres de codage associé (i.e. l'ensemble des modes de prédiction de bloc possibles), M = {Intra, Inter, Skip}. Le module décisionnel 100 se base sur le modèle décisionnel 3022723 18 présenté plus haut en relation avec la figure 2. Le paramètre de codage optimal mopt pour le bloc B est celui qui minimise: mopt - argminmEmUm) [ Jm = SSD (s, gm) + p.> REVENDICATIONS1. Procédé de sélection, pour une portion d'image à coder courante et pour au moins un module de codage (0 à 6) compris dans un encodeur vidéo, d'au moins un paramètre de codage parmi un ensemble de paramètres de codage disponibles pour ledit au moins un module de codage, le procédé étant basé sur un modèle décisionnel définissant une minimisation, sous une contrainte de débit, d'une première mesure de distorsion D entre des échantillons sources, compris dans ladite portion d'image à coder courante, et des échantillons reconstruits courants, compris dans une portion d'image reconstruite courante, obtenue à partir de la portion d'image à coder courante, caractérisé en ce que le modèle décisionnel définit ladite minimisation sous une contrainte supplémentaire de régularité, portant sur une seconde mesure de distorsion D' entre lesdits échantillons reconstruits courants et des échantillons reconstruits précédents, appartenant à un voisinage de référence spatial et/ou temporel comprenant au moins une portion d'image reconstruite précédente, obtenue à partir d'au moins une portion d'image codée précédente. 2. Procédé selon la revendication 1, caractérisé en ce que ladite contrainte supplémentaire de régularité, portant sur la seconde mesure de distorsion D', est définie par : D'(gN, DT' , avec DT un seuil prédéterminé, g les échantillons reconstruits courants, et §N les échantillons reconstruits précédents. 3. Procédé selon l'une quelconque des revendications 1 et 2, caractérisé en ce que le modèle décisionnel définit ladite minimisation comme suit, à l'aide de la méthode des multiplicateurs de Lagrange : pour chaque portion de chaque image, pour au moins un module de codage et un ensemble de paramètres de codage M = {mi}, i E {O, K - 1},K > 2 associé à ce module de codage, on cherche le paramètre de codage optimal mopt qui minimise : Mopt = argmininemUn3 [Jin = D(s,42) + !Lx&(SN,42) + ÀxR(Ein, pin) où: D (s, in) est une mesure de distorsion entre des échantillons sources, s, et des échantillons reconstruits courants, gm, pour le paramètre de codage m ; 3022723 23 D'(SN, gin) est une mesure de distorsion entre des échantillons reconstruits précédents, :S. N , appartenant à un voisinage spatial et/ou temporel de référence, N, et les échantillons reconstruits courants, gin, pour le paramètre de codage m ; R (Em, pm) est une estimation d'un coût en bit de résidus transformés quantifiés, 5 cm, et d'une information secondaire, pm, à transmettre à un décodeur pour le paramètre de codage m ; kt est un premier multiplicateur de Lagrange, définissant un compromis entre D (S, Sm) et D'(gN, gin) ; et À est un second multiplicateur de Lagrange, définissant un compromis entre 10 D (s , .§m) et D' (g N , .§m) d'une part et R(Em, pm) d'autre part. 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que ledit au moins un paramètre de codage appartient au groupe comprenant : une taille ou un type de transformée appliquée à des échantillons résiduels, dans le cas où ledit au moins un module de codage est un module de transformation 15 (0) ; des paramètres de quantification, dans le cas où ledit au moins un module de codage est un module de quantification (1) ; un type de codage entropique, dans le cas où ledit au moins un module de codage est un module de codage entropique (2) ; 20 des paramètres de filtrage de boucle, dans le cas où ledit au moins un module de codage est un module de filtrage de boucle (3) ; un mode de prédiction intra, dans le cas où ledit au moins un module de codage est un module de prédiction intra (4) ; des vecteurs mouvements et/ou prédicteurs de mouvement, dans le cas où ledit 25 au moins un module de codage est un module de prédiction inter (5) ; un mode de prédiction et/ou une taille d'unité de prédiction, dans le cas où ledit au moins un module de codage est un module de sélection (6) parmi plusieurs modules de prédiction. 5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que le voisinage de référence comprend au moins une portion d'image reconstruite précédente appartenant au groupe comprenant : 3022723 24 au moins une première portion d'image reconstruite précédente, obtenue à partir d'une portion d'image codée précédente qui occupe dans une première image codée précédente une position identique à celle de la portion d'image à coder courante dans une image à coder courante ; 5 au moins une deuxième portion d'image reconstruite précédente, qui occupe dans ladite première image codée précédente une position adjacente à celle de ladite au moins une première portion d'image reconstruite précédente ; au moins une troisième portion d'image reconstruite précédente, obtenue à partir d'une portion d'image compensée en mouvement qui occupe dans une deuxième 10 image codée précédente une position compensée en mouvement, à l'aide d'un vecteur mouvement, relativement à la position de la portion d'image à coder courante dans une image à coder courante ; au moins une quatrième portion d'image reconstruite précédente, qui occupe dans ladite deuxième image codée précédente une position adjacente à celle de 15 ladite au moins une troisième portion d'image reconstruite précédente ; au moins une cinquième portion d'image reconstruite précédente, obtenue à partir d'une portion d'image codée précédente qui occupe dans ladite image codée courante une position adjacente à celle de la portion d'image à coder courante. 20 6. Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que le voisinage de référence comprend au moins deux portions d'image reconstruites précédentes, et en ce que la seconde mesure de distorsion D' est définie comme une somme pondérée d'une pluralité de mesures de distorsion intermédiaires, chaque mesure de distorsion intermédiaire étant associée à une desdites au moins deux portions d'image 25 reconstruites précédentes et étant définie comme une mesure de distorsion entre lesdits échantillons reconstruits courants, compris dans la portion d'image reconstruite courante, et des échantillons reconstruits précédents, appartenant à la portion d'image reconstruite précédente associée à ladite mesure de distorsion intermédiaire. 7. Procédé selon la revendication 6, caractérisé en ce que ladite somme pondérée 30 est définie par un jeu de coefficients de pondération qui est variable d'un paramètre de 3022723 25 codage à l'autre au sein dudit ensemble de paramètres de codage disponibles pour ledit au moins un module de codage. 8. Produit programme d'ordinateur, comprenant des instructions de code de programme pour la mise en oeuvre du procédé selon au moins une des revendications 1 à 5 7, lorsque ledit programme est exécuté sur un ordinateur. 9. Médium de stockage (71) lisible par ordinateur et non transitoire, stockant un produit programme d'ordinateur selon la revendication 8. 10. Dispositif de sélection (100), pour une portion d'image à coder courante et pour au moins un module de codage compris dans un encodeur vidéo, d'au moins un 10 paramètre de codage parmi un ensemble de paramètres de codage disponibles pour ledit au moins un module de codage, le dispositif de sélection comprenant des moyens (71, 72, 73) de mise en oeuvre d'un modèle décisionnel définissant une minimisation, sous une contrainte de débit, d'une première mesure de distorsion D entre des échantillons sources, compris dans ladite portion d'image à coder courante, et des échantillons 15 reconstruits courants, compris dans une portion d'image reconstruite courante, obtenue à partir de la portion d'image à coder courante, caractérisé en ce que les moyens (71, 72, 73) de mise en oeuvre du modèle décisionnel définissent ladite minimisation sous une contrainte supplémentaire de régularité, portant sur une seconde mesure de distorsion D' entre lesdits échantillons reconstruits courants et des échantillons reconstruits 20 précédents, appartenant à un voisinage de référence spatial et/ou temporel comprenant au moins une portion d'image reconstruite précédente, obtenue à partir d'au moins une portion d'image codée précédente.