Brevet FR2823338A1 — publié le 20021011

DESCRIPTION Domaine technique de l'invention La présente invention concerne un procédé et un dispositif de post traitement d'images numériques contenant des pixels. Elle concerne également un produit programme d'ordinateur pour la mise en oeuvre d'un tel procédé de post traitement. Elle trouve notamment son application dans la correction d'images numériques précédemment codées puis décodées selon une technique de codage par blocs, la norme MPEG (de l'anglais Moving Pictures Expert Group) par exemple, afin d'atténuer les artefacts visuels causés par la technique de codage par blocs. Etat de la technique antérieure La demande internationale de brevet nO WO 97/29594 divulgue un procédé et un dispositif pour post traiter des données vidéo décodées afin de minimiser les artefacts de blocs présents dans une image sans en affecter le contraste. Pour cela, le procédé de post traitement de données selon l'art antérieur, décrit à la Fig. 1, comprend : une étape de filtrage passe-bas LPF (11) des données vidéo décodées (x), apte à fournir des données filtrées (xf), une étape de transformation en cosinus discrète DCT (12,13) des données filtrées et des données vidéo décodées, apte à fournir des données filtrées transformées (Xf) et des données décodées transformées (X), une étape d'ajustement ADJ (14) des coefficients basse fréquence contenus dans les données filtrées transformées, apte à fournir des coefficients basse fréquence ajustés (Xbf), une étape de combinaison (16) des coefficients haute fréquence (Xhf) contenus dans les données décodées transformées et des coefficients basse fréquence ajustés, apte à fournir des données transformées combinées (Xc), et une étape de transformation inverse en cosinus discrète IDCT (17) des données transformées combinées, apte à fournir des données traitées (xc) prêtes à être affichées sur un écran. Ce procédé de post traitement de données vidéo décodées comprend nécessairement une étape de filtrage passe-bas qui sert à filtrer les composantes haute fréquence. Ledit procédé permet ainsi d'extraire, dans le domaine spatial, des données basse fréquence à qui on applique une première transformation DCT et un ajustement afin de fournir des coefficients basse fréquence ajustés. Pour ce qui est des coefficients haute fréquence, ils sont extraits (15) à partir d'une seconde transformation DCT des données vidéo décodées. Ainsi, une partie du traitement des données est réalisée dans le domaine spatial ce qui rend la méthode à la fois complexe à mettre en oeuvre et coûteuse en terme de ressources de calcul. De plus, un coefficient basse fréquence contenu dans les données filtrées transformées est ajusté à l'intérieur de l'intervalle [Xq-q/2, Xq+q/2], Xq étant la valeur dudit coefficient basse fréquence quantifié et q la valeur du pas de quantification, une telle méthode nécessitant de ce fait d'avoir accès aux paramètres de codage ce qui n'est pas toujours possible. Exposé de l'invention La présente invention a pour but de proposer un procédé de post traitement de données vidéo décodées qui puisse être mis en oeuvre de façon simple et économique. A cet effet, le procédé de post traitement d'images numériques selon l'invention est remarquable en ce qu'il comprend : une étape de transformation fréquentielle apte à fournir un ensemble de coefficients transformés à partir d'un ensemble de pixels, une étape d'extraction de coefficients originaux basse fréquence et de coefficients originaux haute fréquence contenus dans l'ensemble de coefficients transformés, une étape de correction apte à fournir un ensemble de coefficients transformés corrigés à partir des coefficients basse fréquence originaux, et une étape de combinaison apte à fournir un ensemble de coefficients transformés combinés à partir des coefficients originaux haute fréquence et de l'ensemble de coefficients transformés corrigés. Un tel procédé de post traitement effectue un traitement de données, et notamment la séparation des coefficients originaux haute et basse fréquence, dans le domaine fréquentiel. Ainsi, le procédé de post traitement est plus simple à mettre en oeuvre puisque l'extraction et la correction des coefficients originaux basse fréquence se font uniquement à partir des coefficients transformés. Il ne nécessite donc plus ni l'étape de filtrage passe-bas dans le domaine spatial, ni une double transformation fréquentielle des données filtrées et des données vidéo décodées. Ledit procédé est particulièrement adapté si l'étape de transformation fréquentielle utilise le même type de transformation fréquentielle que celui utilisé par la technique de codage par blocs lors d'un codage précédent des données vidéo, par exemple une transformation de type en cosinus discrète DCT dans le cas de données précédemment codées puis décodées selon la norme MPEG. Il permet en outre d'avoir un meilleur contrôle sur la correction des artefacts de blocs. Le procédé de post traitement est de surcroît plus efficace, notamment si une première moitié de l'ensemble de coefficients transformées constitue les coefficients originaux basse fréquence et une seconde moitié dudit ensemble constitue les coefficients originaux haute fréquence. Il est également d'une grande souplesse pour ce qui est de la restitution des hautes fréquences dans l'image, l'étape de combinaison pouvant effectuer une combinaison linéaire de coefficients transformés corrigés haute fréquence et des coefficients originaux haute fréquence afin de fournir l'ensemble de coefficients transformés combinés. Brève description des dessins Ces aspects de l'invention ainsi que d'autres aspects plus détaillés apparaîtront plus clairement grâce à la description suivante de plusieurs modes de réalisation de l'invention, donnés à titre d'exemples non limitatifs et en regard des dessins annexés parmi lesquels : ta Fig. 1 illustre la méthode de post traitement de données selon l'état de la technique antérieure, - la Fig. 2 est un diagramme représentant les principales étapes de la méthode de post traitement de données selon l'invention, ta Fig. 3 illustre une méthode de correction d'artefacts de blocs, et - la Fig. 4 est un diagramme représentant un mode de réalisation de la méthode de post traitement de données selon l'invention comprenant une telle étape de correction d'artefacts de blocs. Exposé détaillé d'au moins un mode de réalisation de l'invention La présente invention concerne un procédé destiné à effectuer un post traitement d'images numériques précédemment codées puis décodées selon une technique de codage par blocs, et contenant de ce fait des artefacts de blocs. Comme nous le verrons plus loin, le procédé de post traitement de données vidéo selon l'invention est destiné à déterminer à la fois : quels sont les coefficients originaux haute fréquence qui doivent être préservés à l'intérieur d'un bloc de coefficients transformés afin de conserver les détails de l'image tels que les contours, et quels sont les coefficients originaux basse fréquence qui doivent être corrigés afin de supprimer efficacement les artefacts de blocs. La Fig. 2 est un diagramme représentant schématiquement les étapes principales de la méthode de post traitement de données vidéo décodées selon l'invention. Ladite méthode comprend : une étape de transformation fréquentielle TF (21) apte à fournir un ensemble de coefficients transformés (Y) à partir d'un ensemble de pixels (y), une étape d'extraction SEP (22) de coefficients originaux basse fréquence (Ybfo) et de coefficients originaux haute fréquence (Yhfo) contenus dans l'ensemble de coefficients transformés, une étape de correction COR (23) apte à fournir un ensemble de coefficients transformés corrigés (Yc) à partir des coefficients basse fréquence originaux, une étape de combinaison (24) apte à fournir un ensemble de coefficients transformés combinés (Yadd) à partir des coefficients originaux haute fréquence et de l'ensemble de coefficients transformés corrigés, et une étape de transformation fréquentielle inverse ITF (25) de l'ensemble de coefficients transformés combinés, apte à fournir un ensemble de pixels traités (yout) prêts à être affichés sur un écran. L'ensemble de pixels est préférentiellement un segment de N pixels, avec N = 8 dans le cas de la norme MPEG pour laquelle les blocs de codage comportent généralement 8 lignes de 8 pixels. L'ensemble de pixels peut également être constitué par un bloc entier ou une partie d'un bloc de codage. L'étape de transformation fréquentielle utilise préférentiellement une transformation de type en cosinus discrète DCT particulièrement adaptée à la norme MPEG. Dans le mode de réalisation préféré, un segment de pixels est transformé par l'étape de transformation en un segment de coefficients DCT. Puis, l'étape d'extraction extrait une première moitié du segment de coefficients DCT, soit les 4 premiers coefficients DCT qui constituent alors les coefficients originaux basse fréquence (Ybfo), et une seconde moitié du segment de coefficients DCT, i. e. les 4 derniers coefficients DCT qui constituent alors les coefficients originaux haute fréquence (Yhfo). Une telle séparation en deux parties du segment de coefficients DCT permet d'obtenir par la suite une meilleure correction des artefacts de blocs. Elle peut en outre être aisément mise au point de façon optimale en comparaison de l'état de la technique antérieure qui nécessite la mise au point d'un filtre passe-bas optimal à partir d'une infinité de filtres disponibles, l'efficacité d'un filtre passe-bas donné sur une séquence d'images déterminée pouvant de plus être remise en cause pour une autre séquence d'images. L'étape d'extraction (22) comprend également une sous-étape de troncation au cours de laquelle les 4 premiers coefficients DCT sont complétés par 4 coefficients nuis afin de fournir un segment de coefficients DCT tronqués. Cette sous étape de troncation équivaut en quelque sorte à un filtrage passe bas. L'étape de correction (23) corrige alors le segment de coefficients tronqués afin de fournir un segment de coefficients DCT corrigés contenant 4 coefficients DCT corrigés basse fréquence (Ybfc) et 4 coefficients DCT corrigés haute fréquence (Yhfc). L'étape de combinaison (24) effectue alors la combinaison des 4 coefficients originaux haute fréquence et du segment de coefficients DCT corrigés afin de fournir un segment de coefficients DCT combinés (Yadd). Dans un mode de réalisation particulièrement avantageux, le segment de coefficients DCT combinés correspond à la concaténation des 4 coefficients DCT corrigés basse fréquence (Ybfc) et des 4 coefficients originaux haute fréquence (Yhfo). Dans le mode de réalisation préféré, le segment de coefficients DCT combinés correspond à la concaténation des 4 coefficients DCT corrigés basse fréquence (Ybfc) et de 4 coefficients DCT combinés haute fréquence (Yhfadd) résultant d'une combinaison linéaire des 4 coefficients DCT corrigés haute fréquence (Yhfc) et des 4 coefficients originaux haute fréquence (Yhfo), soit : Yhfadd = a. Yhfc + (1-b). Yhfo où a et b sont des valeurs réelles comprises entre 0 et 1 avec, par exemple a=1/2 et b=a/4 si Yhfc est différent de 0 et b=1/2 si Yhfc est égal à 0. Une telle combinaison donne plus de poids aux coefficients originaux haute fréquence si des hautes fréquences apparaissent dans les coefficients DCT corrigés et introduit une atténuation dans le cas contraire. Le segment de coefficients DCT combinés est enfin transformé dans le domaine spatial via une transformation inverse en cosinus discrète IDCT qui fournit un segment de pixels traités (yout) en vue de son affichage sur un écran. La méthode de post traitement de données comprend en outre au moins un traitement horizontal d'une image, associé à au moins un traitement vertical de ladite image. En effet, les artefacts de blocs peuvent être présents aux frontières d'un bloc de codage, c'est à dire sur les quatre segments délimitant verticalement ou horizontalement le bloc. Si l'image est traitée selon une direction horizontale, des artefacts de blocs verticaux seront corrigés ; à l'inverse, si l'image est traitée selon une direction verticale, des artefacts de blocs horizontaux seront corrigés. La méthode de post traitement de données est appliquée successivement à chacune des deux trames constituant une image si l'image est composée de deux trames. Elle est appliquée préférentiellement aux données de luminance contenues dans l'image numérique. L'étape de correction mise en oeuvre est basée sur les nombreuses méthodes de correction d'artefacts de blocs qui sont connues de l'homme du métier, et préférentiellement celles qui ne font pas appel aux paramètres de décodage, ces paramètres n'étant pas toujours accessibles. Dans le mode de réalisation préféré, la méthode de correction de données est appelée méthode DFD (de l'anglais"DCT frequency deblocking"). Une telle méthode de correction de données comprend les étapes suivantes, représentées à la Fig. 3, à savoir : une étape de calcul d'une première transformation en cosinus discrète DCT1 (31) d'un premier segment (u) de N pixels avec N = 8 dans l'exemple utilisé, résultant en un premier segment transformé U, une étape de calcul d'une première transformation en cosinus discrète DCT1 (32) d'un second segment (v) de N pixels, le second segment étant adjacent au premier, résultant en un second segment transformé V, une étape de détermination (33) d'une fréquence maximale prédite (kpred) en fonction des fréquences maximales ku et kv de U et V, comme suit : kpred = 2. max (ku, kv) + 2 avec ku = max (kE {O,..., N-1}/U (k) 0), kv = max (kE {0,..., N-1}/V (k) 0), et max est la fonction qui donne le maximum de k parmi un ensemble de valeurs déterminées. une étape de traitement (35) d'un segment concaténé (w) comprenant 2N pixels, soit 16 pixels dans notre cas, et correspondant à la concaténation (34) des premier (u) et second (v) segments, ladite étape de traitement comprenant les sous-étapes suivantes de : calcul d'une seconde transformation en cosinus discrète DCT2 (36) du segment concaténé (w), résultant en un segment concaténé transformé W, correction (37) par mise à zéro des données transformées W (k) dont la fréquence k est impaire et supérieure à la fréquence maximale prédite (kpred), fournissant un segment concaténé transformé corrigé Wc, calcul d'une transformation discrète inverse IDCT2 (38) du segment transformé corrigé Wc, fournissant un segment concaténé corrigé (cw). Dans un mode de réalisation préférentiel de l'invention, elle est mise en oeuvre en introduisant des seuils de filtrage selon le principe suivant : kumax = max (k ( {O,..., N-1}/abs (U (k)) > T) kvmax = max (k ( {O,..., N-1}/abs (V (k)) > T) où T est un seuil différent de zéro. L'étape de détermination (33) effectue ainsi un calcul plus précis de la fréquence maximale prédite (kpred) à partir de l'introduction du seuil T, ce qui permet une correction plus efficace des artefacts de blocs. La valeur du seuil T est fonction de la taille des segments u et v. En effet, une partie seulement des pixels des segments u et v peut être traitée, par exemple les pixels de rang pair ou de rang impair. L'étape de correction COR (37) comprend préférentiellement une sous-étape de détection de contours naturels à partir des valeurs des pixels des segments initiaux u et v et transformés U et V. Cette sous-étape permet de distinguer les contours naturels des artefacts de blocs. Pour cela, un contour naturel est détecté si deux conditions sont remplies : les valeurs moyennes des pixels des segments u et v de part et d'autre d'une frontière de blocs sont différentes d'une valeur importante, supérieure à un seuil prédéterminé M, les segments u et v sont de faible activité ce qui se traduit par le fait que les valeurs ku et kv sont faibles et inférieures à une valeur prédéterminée kO. La Fig. 4 est un diagramme représentant un mode de réalisation de la méthode de post traitement de données selon l'invention incluant la méthode de correction DFD d'artefacts de blocs telle que décrite dans la Fig. 3. Une telle méthode de post traitement de données vidéo comprend : une étape de transformation DCT (41) apte à fournir un premier segment de coefficients DCT (U) à partir d'un premier ensemble de pixels (u), une étape de transformation DCT (42) apte à fournir un second segment de coefficients DCT (V) à partir d'un second ensemble de pixels (v) adjacent au premier segment de pixels, une étape d'extraction (43) de premiers coefficients originaux basse fréquence (Ubfo) et de premiers coefficients originaux haute fréquence (Uhfo) contenus dans le premier segment de coefficients DCT (U), apte à fournir un premier segment de coefficients DCT tronqués (Ut) contenant les premiers coefficients originaux basse fréquence, une étape d'extraction (44) de seconds coefficients originaux basse fréquence (Vbfo) et de seconds coefficients originaux haute fréquence (Vhfo) contenus dans le second segment de coefficients DCT (V), apte à fournir un second segment de coefficients DCT tronqués (Vt) contenant les seconds coefficients originaux basse fréquence, une étape de correction (23) apte à fournir un premier et un second segments de coefficients DCT corrigés (Uc, Vc) respectivement à partir des premiers et seconds coefficients basse fréquence originaux (Ubfo, Vbfo), comprenant les sous-étapes de : transformation inverse IDCT (231) du premier segment de coefficients DCT tronqués (Ut), destinée à fournir un premier segment de pixel prétraité (ut), transformation inverse IDCT (232) du second segment de coefficients DCT tronqués (Vt), destinée à fournir un second segment de pixel prétraité (vt), correction DFD (230) des segments de pixels prétraités selon le principe décrit à la Fig. 3, apte a fournir des segments de pixels corrigés (uc, vc), transformation DCT (233) du premier segment de pixels corrigés (uc), apte à fournir un premier segment de coefficients DCT corrigés (Uc), transformation DCT (234) du second segment de pixels corrigés (vc), apte à fournir un second segment de coefficients DCT corrigés (Vc), une étape de combinaison (45) apte à fournir un premier segment de coefficients DCT combinés (Uadd) à partir des premiers coefficients originaux haute fréquence (Uhfo) et du premier segment de coefficients DCT corrigés (Uc), une étape de combinaison (46) apte à fournir un second segment de coefficients DCT combinés (Vadd) à partir des seconds coefficients originaux haute fréquence (Vhfo) et du second segment de coefficients DCT corrigés (Vc), une étape de transformation inverse IDCT (47) du premier segment de coefficients DCT combinés (Uadd), apte à fournir un premier segment de pixels traités (uout) en vue de son affichage sur un écran, et une étape de transformation inverse IDCT (48) du second segment de coefficients DCT combinés (Vadd), apte à fournir un second segment de pixels traités (vout), adjacent au premier segment de pixels traités (uout), en vue de son affichage sur un écran. La méthode de post traitement de la Fig. 4 présente l'avantage de ne pas dégrader la qualité des images qui ne contiennent aucun artefact de blocs à l'origine. En effet, en présence de telles images, les coefficients originaux basse fréquence ne subissent aucune modification du fait de la méthode de correction DFD utilisée et les coefficients DCT combinés haute fréquence restent identiques aux coefficients originaux haute fréquence. Dans l'état de la technique antérieure, l'utilisation d'un filtre passe-bas dans le domaine spatial peut, en revanche, amener une dégradation de la qualité d'une image qui ne comportait aucun artefact de blocs à l'origine. La présente invention peut être réalisée sous la forme d'un logiciel (en anglais "software") embarqué sur un ou plusieurs circuits mettant en oeuvre la méthode de post traitement de données précédemment décrite, ou bien sous la forme de circuits intégrés. Le dispositif de post traitement d'images numériques correspondant à ladite méthode reprend ici les blocs fonctionnels de la Fig. 2. Il comprend ainsi : des moyens de transformation fréquentielle TF (21) apte à fournir un ensemble de coefficients décodés transformés (Y) à partir d'un ensemble de pixels (y), des moyens d'extraction SEP (22) de coefficients originaux basse fréquence (Ybfo) et de coefficients originaux haute fréquence (Yhfo) contenus dans l'ensemble de coefficients transformés, des moyens de correction COR (23) apte à fournir un ensemble de coefficients transformés corrigés (Yc) à partir des coefficients basse fréquence originaux, et des moyens de combinaison (24) apte à fournir un ensemble de coefficients transformés combinés (Yadd) à partir des coefficients originaux haute fréquence et de l'ensemble de coefficients transformés corrigés, et des moyens de transformation fréquentielle inverse ITF (25) de l'ensemble de coefficients transformés combinés, apte à fournir un ensemble de pixels traités (yout) prêts à être affichés sur un écran. Il existe de nombreuses manières pour implémenter les fonctions précédemment décrites au moyen de logiciel. A cet égard, les Figs. 2 à 4 sont très schématiques. Donc, bien qu'une figure montre différentes fonctions sous forme de blocs séparés, ceci n'exclut pas qu'un seul logiciel effectue plusieurs fonctions. Ceci n'exclut pas non plus qu'une fonction puisse être effectuée par un ensemble de logiciels. Il est possible d'implémenter ces fonctions au moyen d'un circuit de décodeur vidéo, d'un circuit de récepteur-décodeur numérique de télévision (en anglais"set top box") ou d'un circuit de récepteur de télévision, ledit circuit étant convenablement programmé. Un jeu d'instructions contenu dans une mémoire de programmation peut provoquer le circuit à effectuer les différentes opérations décrites précédemment en référence aux Figs. 2 et 4. Le jeu d'instructions peut aussi être chargé dans la mémoire de programmation par la lecture d'un support de données comme, par exemple un disque qui contient le jeu d'instructions. La lecture peut également s'effectuer par l'intermédiaire d'un réseau de communication comme, par exemple, le réseau interne. Dans ce cas, un fournisseur de service mettra le jeu d'instructions à la disposition des intéressés. Aucun signe de référence entre parenthèses dans le présent texte ne doit être interprété de façon limitative. Le verbe"comprendre"et ses conjugaisons n'exclut pas la présence d'autres éléments ou étapes que ceux listés dans une phrase. Le mot"un"ou "une"précédant un élément ou une étape n'exclut pas la présence d'une pluralité de ces éléments ou de ces étapes. REVENDICATIONS 1. Procédé de post traitement d'images numériques contenant des pixels, ledit procédé comprenant : une étape de transformation fréquentielle (21) apte à fournir un ensemble de coefficients transformés (Y) à partir d'un ensemble de pixels (y), une étape d'extraction (22) de coefficients originaux basse fréquence (Ybfo) et de coefficients originaux haute fréquence (Yhfo) contenus dans l'ensemble de coefficients transformés, une étape de correction (23) apte à fournir un ensemble de coefficients transformés corrigés (Yc) à partir des coefficients basse fréquence originaux, et une étape de combinaison (24) apte à fournir un ensemble de coefficients transformés combinés (Yadd) à partir des coefficients originaux haute fréquence et de l'ensemble de coefficients transformés corrigés. 2. Procédé de post traitement d'images numériques selon la revendication 1 où l'étape d'extraction (22) est apte à extraire une première moitié de l'ensemble de coefficients transformés (Y) comme étant les coefficients originaux basse fréquence (Ybfo) et une seconde moitié de l'ensemble de coefficients transformés comme étant les coefficients originaux haute fréquence (Yhfo). 3. Procédé de post traitement d'images numériques selon la revendication 1 où l'étape de combinaison (24) est apte à effectuer une combinaison linéaire de coefficients transformés corrigés haute fréquence (Yhfc) et des coefficients originaux haute fréquence (Yhfo) afin de fournir l'ensemble de coefficients transformés combinés (Yadd). 4. Dispositif de post traitement de d'images numériques contenant des pixels, ledit dispositif comprenant : des moyens de transformation fréquentielle (21) apte à fournir un ensemble de coefficients décodés transformés (Y) à partir d'un ensemble de pixels (y), des moyens d'extraction (22) de coefficients originaux basse fréquence (Ybfo) et de coefficients originaux haute fréquence (Yhfo) contenus dans l'ensemble de coefficients transformés, des moyens de correction (23) apte à fournir un ensemble de coefficients transformés corrigés (Yc) à partir des coefficients basse fréquence originaux, et des moyens de combinaison (24) apte à fournir un ensemble de coefficients transformés combinés (Yadd) à partir des coefficients originaux haute fréquence et de l'ensemble de coefficients transformés corrigés. 5. Produit"programme d'ordinateur"pour décodeur vidéo comprenant un jeu d'instructions qui, lorsqu'elles sont chargées dans le décodeur vidéo, amène celui-ci à effectuer le procédé de post traitement d'images numériques selon l'une des revendications lia 3. 6. Produit"programme d'ordinateur"pour récepteur-décodeur numérique de télévision comprenant un jeu d'instructions qui, lorsqu'elles sont chargées dans le récepteur - décodeur numérique de télévision, amène celui-ci à effectuer le procédé de post traitement d'images numériques selon l'une des revendications 1 à 3. 7. Produit"programme d'ordinateur"pour récepteur de télévision comprenant un jeu d'instructions qui, lorsqu'elles sont chargées dans le récepteur de télévision, amène celui-ci à effectuer le procédé de post traitement d'images numériques selon l'une des revendications 1 à 3.