Brevet FR2913793A1 — publié le 20080919

La présente invention se rapporte à un procédé et à un dispositif de codage de signaux numériques à plusieurs dimensions spatiales ou spatio-temporelles et à un procédé et à un dispositif de décodage de signaux ainsi codés. Dans toute la suite, ces signaux sont dits multidimensionnels. Elle appartient au domaine général du traitement numérique des signaux et a plus précisément trait au filtrage et à la compression de signaux numériques multidimensionnels. A titre d'exemples nullement limitatifs, les signaux concernés peuvent représenter des images fixes (c'est-à-dire des signaux à deux dimensions spatiales) ou des vidéos (c'est-à-dire des signaux à trois dimensions : deux dimensions spatiales et une dimension temporelle) ou, plus généralement, des données multimédia. Par exemple, une image numérique provenant d'un appareil photo numérique est constituée d'un ensemble de N x M unités élémentaires d'image ou pixels, où N est la hauteur de l'image et M sa largeur. Cette image est codée avant d'être stockée en mémoire. Les données initiales, c'est-à-dire l'information représentative des pixels de l'image, sont organisées en un tableau bidimensionnel accessible, par exemple, ligne à ligne. Une image numérique subit généralement une transformation préalablement à son codage. De même, lors du décodage d'une image numérique codée, l'image subit une transformation inverse. La transformation peut consister à appliquer un filtre à tout ou partie de l'image numérique. Un filtre peut être vu comme un produit de convolution entre le signal d'image et un vecteur prédéterminé permettant, pour chaque pixel de la région à laquelle il s'applique, de modifier sa valeur en fonction des valeurs des pixels avoisinants, affectées de coefficients. La technique de codage décrite le document de brevet FR-A-2 889 382 permet de filtrer le signal préalablement à une compression, en orientant le filtre le long de certaines directions, pour chaque pixel, en vue de réduire la dynamique du signal engendré et ainsi d'augmenter la compression du signal. Par ailleurs, la demande de brevet français de numéro de dépôt 06 53783 décrit une technique de calcul de ces orientations qui consiste à utiliser les données disponibles à une résolution inférieure pour calculer les 2 orientations de filtrage à utiliser à une résolution supérieure lors du filtrage de décomposition de l'image, c'est-à-dire au niveau du codeur, et lors du filtrage de synthèse de l'image, c'est-à-dire au niveau du décodeur. La résolution est le nombre d'échantillons par unité spatiale, c'est-à-dire, dans le cas d'une image, par unité de surface. La technique de codage en question inclut un filtrage du signal numérique multidimensionnel. On rappelle ci-dessous les principaux aspects de ce filtrage, qui est utilisé par la présente invention dans un mode particulier de réalisation. Il n'est cependant pas exclu que l'invention mette en oeuvre un autre type de transformation, en lieu et place d'un tel filtrage. Ce filtrage, qui utilise une décomposition du signal en sous-bandes de fréquence, vise à réduire la quantité d'information présente dans les sous-bandes, de façon à améliorer la compression du signal en vue de son stockage ou de sa transmission. Chaque échantillon filtré présente une valeur d'amplitude et une valeur d'orientation. Par "orientation", on entend ici une direction dans l'image (par exemple, ligne de pixels, ou colonne de pixels, ou diagonale de pixels). On applique un filtrage selon l'orientation géométrique qui aura été déterminée comme la plus appropriée, de façon à augmenter les performances du filtrage. Un tel procédé de filtrage permet de tenir compte des variations locales et notamment de l'orientation locale du flux du signal numérique tout en préservant la propriété de séparabilité du filtrage, c'est-à-dire que le filtrage peut être appliqué de façon indépendante sur les différentes dimensions du signal, par exemple, le long des lignes et le long des colonnes ou inversement. Pour faciliter l'opération de filtrage inverse effectuée au décodage, on peut associer lors du codage, à chaque échantillon filtré, une information représentative de l'orientation géométrique du filtre appliqué à cet échantillon. Ce filtrage peut par exemple être appliqué successivement sur chacune des dimensions du signal numérique traité. Le filtrage d'échantillons peut mettre en oeuvre un schéma de filtrage particulièrement avantageux pour la présente invention, appelé schéma de 3 "lifting" (en anglais "lifting scheme"), avec par exemple au moins deux filtres, qui peuvent être appliqués chacun à des échantillons différents, ce qui est économe en termes d'espace mémoire, étant donné que les échantillons sont remplacés au cours de leur filtrage. Quant au décodage d'un signal numérique multidimensionnel codé par une telle technique, il consiste principalement à obtenir une pluralité d'échantillons filtrés, puis à appliquer un filtrage inverse à des échantillons filtrés, ce filtrage inverse étant réalisé sur un échantillon filtré selon l'orientation géométrique du filtre qui a été utilisée pour le filtrage de cet échantillon lors de son codage conformément à l'invention. La présente invention a pour but d'améliorer la vitesse de compression en ne calculant que les orientations strictement nécessaires à la bonne compression du signal, de façon à accélérer le processus de codage sans perdre en performances de compression. Dans ce but, la présente invention propose un procédé de codage d'un signal numérique multidimensionnel d'image par décomposition en sous-bandes de fréquence, cette décomposition en sous-bandes de fréquence mettant en oeuvre un filtrage selon une pluralité d'orientations géométriques, ce procédé étant remarquable en ce qu'il comporte des étapes consistant à : - obtenir une image à une résolution inférieure à la résolution du signal numérique d'image ; - localiser les contours de l'image à la résolution inférieure ; et - attribuer aux données du signal numérique d'image des valeurs d'orientation en fonction du résultat de l'étape de localisation des contours. Ainsi, l'invention permet d'analyser les données disponibles à une résolution inférieure pour détecter la présence de contours dans l'image et de filtrer par filtrage orienté uniquement les parties de l'image appartenant à un contour, le reste de l'image étant filtré par un filtrage classique. Cela permet de bien comprimer le signal tout en ne calculant l'orientation optimale que sur des pixels qui en ont réellement besoin. Cette étape de calcul, assez complexe, n'étant ainsi effectuée que sur une proportion du signal relativement faible (typiquement 10 à 30 %), l'invention permet de gagner en temps de traitement. 4 Dans un mode particulier de réalisation, l'étape d'attribution de valeurs d'orientation consiste à : - attribuer à des données du signal numérique d'image n'appartenant pas à des contours une valeur d'orientation prédéterminée ; et - attribuer à des données du signal numérique d'image appartenant à des contours une valeur d'orientation calculée en fonction de données représentatives de l'image à la résolution inférieure. Cette façon de procéder évite d'avoir à calculer des orientations pour les parties de l'image qui n'appartiennent pas à des contours. Dans un mode particulier de réalisation, l'étape de localisation des contours de l'image à la résolution inférieure comporte des étapes consistant à : - appliquer à l'image à la résolution inférieure un filtrage détecteur de contours ; - déterminer un seuil ; et - décider que tous les pixels de l'image à la résolution inférieure obtenue après application du filtrage détecteur de contours dont la valeur est strictement inférieure au seuil n'appartiennent pas à un contour et que tous les autres pixels appartiennent à un contour. Ce mode particulier de réalisation présente une faible complexité de 20 mise en oeuvre. Dans un mode particulier de réalisation, l'étape d'application d'un détecteur de contours consiste à appliquer un détecteur de Sobel. Le détecteur de Sobel est en effet particulièrement efficace. Selon une caractéristique particulière, le seuil précité est fonction du 25 contenu de l'image à la résolution inférieure obtenue après application du filtrage détecteur de contours. Cela permet d'adapter la quantité de contours au contenu de l'image traitée. Selon une caractéristique particulière, la valeur d'orientation 30 prédéterminée attribuée aux données du signal numérique d'image n'appartenant pas à un contour est horizontale. Cela permet de maintenir une bonne qualité de compression sur les parties de l'image où on n'optimise pas les orientations Dans un mode particulier de réalisation, les données représentatives de l'image à la résolution inférieure en fonction desquelles est calculée la valeur 5 d'orientation à attribuer aux données du signal numérique d'image appartenant à des contours sont issues d'une version codée puis décodée de l'image à la résolution inférieure. Cela permet de faire en sorte que l'étape de calcul des orientations soit effectuée sur la base des mêmes informations au niveau du codeur et du 10 décodeur. Dans un mode particulier de réalisation, la version codée précitée résulte de l'application d'un procédé de codage tel que succinctement décrit ci-dessus. Cela permet d'appliquer l'invention à différentes résolutions de 15 l'image et donc de faire bénéficier ces différentes résolutions de tous les avantages de l'invention. Le signal numérique multidimensionnel considéré peut être représentatif d'une image fixe. Le signal numérique multidimensionnel considéré peut également 20 être représentatif d'une vidéo. Dans le même but que celui indiqué plus haut, la présente invention propose également un dispositif de codage d'un signal numérique multidimensionnel d'image par décomposition en sous-bandes de fréquence, cette décomposition en sous-bandes de fréquence mettant en oeuvre un filtrage 25 selon une pluralité d'orientations géométriques, ce dispositif étant remarquable en ce qu'il comporte : - un module pour obtenir une image à une résolution inférieure à la résolution du signal numérique d'image ; - un module pour localiser les contours de l'image à la résolution 30 inférieure ; et 6 - un module pour attribuer aux données du signal numérique d'image des valeurs d'orientation en fonction de la sortie du module de localisation des contours. Toujours dans le même but, la présente invention propose corrélativement un procédé de décodage d'un signal numérique multidimensionnel d'image codé par décomposition en sous-bandes de fréquence, cette décomposition en sous-bandes de fréquence mettant en oeuvre un filtrage selon une pluralité d'orientations géométriques, ce procédé étant remarquable en ce qu'il comporte des étapes consistant à : -obtenir une image décodée à une résolution inférieure à la résolution du signal numérique d'image codé ; - localiser les contours de l'image décodée à la résolution inférieure ; et - attribuer aux données de l'image décodée à la résolution inférieure 15 des valeurs d'orientation en fonction du résultat de l'étape de localisation des contours. Toujours dans le même but, la présente invention propose également un dispositif de décodage d'un signal numérique multidimensionnel d'image codé par décomposition en sous-bandes de fréquence, cette 20 décomposition en sous-bandes de fréquence mettant en oeuvre un filtrage selon une pluralité d'orientations géométriques, ce dispositif étant remarquable en ce qu'il comporte : - un module pour obtenir une image décodée à une résolution inférieure à la résolution du signal numérique d'image codé ; 25 - un module pour localiser les contours de l'image décodée à la résolution inférieure ; et - un module pour attribuer aux données de l'image décodée à la résolution inférieure des valeurs d'orientation en fonction de la sortie du module de localisation des contours. 30 Toujours dans le même but, la présente invention vise aussi un système de télécommunications comprenant une pluralité de dispositifs terminaux reliés à travers un réseau de télécommunications, remarquable en ce 7 qu'il comprend au moins un dispositif terminal équipé d'un dispositif de codage et/ou d'un dispositif de décodage tels que succinctement décrits ci-dessus. Toujours dans le même but, la présente invention vise aussi un moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, remarquable en ce qu'il permet la mise en oeuvre d'un procédé de codage et/ou d'un procédé de décodage tels que succinctement décrits ci-dessus. Toujours dans le même but, la présente invention vise aussi un produit programme d'ordinateur pouvant être chargé dans un appareil programmable, remarquable en ce qu'il comporte des séquences d'instructions pour mettre en oeuvre un procédé de codage et/ou un procédé de décodage tels que succinctement décrits ci-dessus, lorsque ce programme est chargé et exécuté par l'appareil programmable. Les caractéristiques particulières et les avantages du dispositif de codage, du procédé et du dispositif de décodage, du système de télécommunications, du moyen de stockage d'informations et du produit programme d'ordinateur étant similaires à ceux du procédé de codage, ils ne sont pas répétés ici. D'autres aspects et avantages de l'invention apparaîtront à la lecture de la description détaillée qui suit de modes particuliers de réalisation, donnés à titre d'exemples non limitatifs. La description se réfère aux dessins qui l'accompagnent, dans lesquels : - la figure 1 montre de manière simplifiée un système de traitement d'images numériques susceptible de mettre en oeuvre un procédé de codage et/ou un procédé de décodage conformes à la présente invention ; - la figure 2 illustre un exemple non limitatif de simulation de filtrage selon trois orientations géométriques possibles ; -la figure 3 représente de manière schématique un mode particulier de réalisation d'un appareil susceptible de mettre en oeuvre la présente invention ; 8 - la figure 4 est un organigramme illustrant les principales étapes d'un procédé de codage conforme à la présente invention, dans un mode particulier de réalisation ; et - la figure 5 est un organigramme illustrant les principales étapes 5 d'un procédé de décodage conforme à la présente invention, dans un mode particulier de réalisation. Le schéma-bloc de la figure 1 illustre un système de traitement d'images numériques notamment par codage et décodage selon l'invention, désigné par la référence générale notée 1. 10 Le système comporte un dispositif 2 de codage, une unité 4 de transmission ou stockage et un dispositif 6 de décodage. L'invention trouve une application particulièrement intéressante dans un système de télécommunications comprenant une pluralité de dispositifs terminaux reliés à travers un réseau de télécommunications. Le procédé de 15 codage selon l'invention peut être mis en oeuvre dans des dispositifs terminaux du système, de façon à autoriser une transmission de fichiers à travers le réseau de télécommunications et réduire ainsi le trafic et les temps de transmission. Une autre application particulièrement intéressante consiste à mettre 20 en oeuvre le procédé de codage selon l'invention dans un dispositif de stockage d'entités multimédia, de façon à pouvoir stocker une grande quantité de données dans une unité de stockage. Comme le montre la figure 1, le dispositif 2 de codage selon l'invention reçoit en entrée une image IO d'origine. L'image IO est traitée par le 25 dispositif 2 de codage qui délivre en sortie un fichier codé contenant des données d'image comprimées, désigné par le signe de référence FC. Le traitement exécuté dans le dispositif 2 de codage consiste à effectuer des opérations de transformation, de quantification et de codage entropique, respectivement dans les unités 10, 12 et 14. 30 L'opération de transformation effectuée dans l'unité 10 est celle qui met en oeuvre l'invention, tandis que les opérations de quantification et de 9 codage entropique respectivement effectuées dans les unités 12 et 14 mettent en oeuvre des moyens classiques. Le fichier codé FC est fourni à l'unité 4 de transmission ou stockage, pour être, par exemple, transmis à travers un réseau ou stocké dans une unité 5 de stockage. Le dispositif 6 de décodage reçoit en entrée le fichier codé FC en provenance de l'unité 4 de transmission ou stockage et fournit en sortie une image décodée (ou décomprimée) ID, laquelle est sensiblement identique à l'image IO d'origine. 10 Lors du décodage, l'image codée est successivement soumise à des opérations de décodage entropique, de déquantification et de transformation inverse, respectivement dans les unités 18, 20 et 22. L'opération de transformation inverse effectuée dans l'unité 22 est celle qui met en oeuvre l'invention, tandis que les étapes de décodage 15 entropique et de déquantification respectivement effectuées dans les unités 18 et 20 mettent en oeuvre des moyens classiques. Généralement, les données initiales correspondant à l'image IO d'origine sont organisées en un tableau bidimensionnel qui est accessible ligne à ligne. 20 Le mode particulier de réalisation décrit ci-après présente le codage et le décodage d'une image numérique fixe, c'est-à-dire d'un signal bidimensionnel. Le principe est toutefois identique pour un signal présentant un nombre de dimensions supérieur, par exemple, pour une vidéo, qui, comme mentionné en introduction, se compose de trois dimensions. 25 On décrit maintenant le codage, conformément au procédé de l'invention, d'une image numérique, ce codage comprenant notamment une phase de filtrage consistant à décomposer le signal numérique d'image en sous-bandes de fréquence. Dans le mode particulier de réalisation de l'invention décrit en détail 30 ci-après, ce type de filtrage en sous-bandes est utilisé pour comprimer l'image numérique. Un tel filtrage peut être, par exemple, mis en oeuvre dans la norme 10 JPEG ou dans la norme JPEG2000, au cours d'une opération également appelée décomposition en ondelettes. Pour plus de détails sur la norme JPEG2000, on se reportera utilement à l'adresse Internet suivante : www.jpeg.org. Toutefois, la présente invention diffère du filtrage tel qu'utilisé dans JPEG2000 car les filtres utilisés peuvent être orientés, comme décrit dans le document de brevet FR-A-2 889 382. L'organigramme de la figure 4 illustre des étapes d'un procédé de codage conforme à la présente invention, dans un mode particulier de réalisation. Un filtrage en sous-bandes consiste à appliquer à un signal d'origine un filtrage afin d'engendrer une ou plusieurs sous-bandes correspondant à des fréquences différentes. L'ensemble de ces sous-bandes correspond à une résolution donnée. II est alors courant de sélectionner une ou plusieurs de ces sous-bandes pour les décomposer à nouveau en sous-bandes, qui correspondront à leur tour à la résolution suivante. Ce processus peut être répété un nombre prédéterminé de fois, en fonction de la résolution souhaitée. Comme le montre la figure 4, l'algorithme débute à l'étape 400, au cours de laquelle on sélectionne l'image initiale à décomposer. Cette image va être considérée comme une sous-bande de fréquence à filtrer. En variante, la sous-bande à décomposer peut être une sous-bande obtenue lors d'un filtrage précédent. On note SO la sous-bande sélectionnée et RO sa résolution. L'étape suivante 402 consiste à extraire une sous-bande de résolution RI inférieure à RO, ce qui correspond à un filtrage basse fréquence de SO. Dans un mode particulier de réalisation, cela consiste à sous-échantillonner la sous-bande de résolution RO d'un facteur 2 dans chaque dimension. Soit S0(x,y) l'échantillon situé aux coordonnées (x,y) dans la sous- 11 bande SO de résolution RO. La sous-bande basse fréquence extraite SBE1, de résolution RI, est donnée par SBE1(x,y) = SO(2xx,2xy). En variante, cette extraction peut mettre en oeuvre un procédé plus complexe qu'un simple sous-échantillonnage. Par exemple, il peut s'agir d'un sous-échantillonnage associé à un filtrage passe-bas, similaire au filtrage passe-bas utilisé dans JPEG2000. L'étape suivante 404 est facultative. Elle n'est pas nécessaire notamment dans le cas d'une compression sans perte du signal. En revanche, elle est recommandée si on effectue un codage avec perte du signal. Elle consiste à simuler un codage et un décodage de la sous-bande SBE1, de façon à engendrer la sous-bande SBED1. La sous-bande SBED1 est similaire à la sous-bande SBE1, à ceci près qu'elle comporte les éventuelles erreurs dues aux opérations de codage et décodage. II est à noter que ce codage-décodage peut lui-même mettre en oeuvre la technique de la présente invention (division en sous-bandes de fréquence, quantification, codage entropique comme décrit précédemment et ci-après). L'invention est dans ce cas appliquée de façon récursive. L'étape 402, suivie ou non de l'étape 404, est suivie d'une étape 406 d'extraction de la localisation des contours. On utilise la sous-bande SBED1 (ou SBE1 si l'étape 404 n'a pas été appliquée) pour déterminer la localisation des contours de la sous-bande SO. Dans un mode particulier de réalisation, l'étape 406 comporte trois sous-étapes : une sous-étape 4060 d'application d'un détecteur de Sobel, une sous- étape 4062 de détermination d'un seuil et une sous-étape 4064 de seuillage, décrites ci-dessous. Au cours de la sous-étape 4060, on applique à l'image un filtrage détecteur de contours. On peut par exemple appliquer un détecteur de Sobel, technique de filtrage très répandue et connue de l'homme du métier, qui consiste à appliquer deux filtrages bidimensionnels à l'image. Pour plus de détails au sujet du détecteur de Sobel, on se reportera utilement au site Internet suivant : http://homepages.inf.ed.ac.uk/rbf/HIPR2/sobel.htm. 12 L'intensité moyenne de la sortie de ces deux filtrages est proportionnelle à la présence d'un contour à l'endroit du filtrage et l'arctangente du rapport des sorties de ces deux filtrages donne l'orientation locale du contour. Au cours de la sous-étape 4060, on utilise exclusivement l'image d'intensité, mais pas l'image d'arctangente, laquelle sera utilisée au cours d'une étape ultérieure. On obtient une image SBED1C. En variante, on peut remplacer le détecteur de Sobel par un filtrage détecteur de contours Robert Cross. La sous-étape 4062 consiste à déterminer un seuil T. Ce seuil peut par exemple être une valeur prédéterminée, par exemple 100. Ce seuil peut aussi être fonction du contenu de l'image SBED1C : par exemple, le seuil peut être déduit de l'énergie présente dans l'image SBED1C. Le seuil peut également être déduit d'un ensemble d'images de test. La sous-étape 4064 consiste à seuiller l'image SBEDIC par le seuil T. Tous les pixels de SBED1C dont la valeur est strictement inférieure au seuil T seront considérés comme n'appartenant pas à un contour et tous les autres seront considérés comme appartenant à un contour. L'image obtenue après application du seuil T est appelée L1. En variante, on peut déterminer la localisation des contours de façon différente, comme décrit dans l'article de O. TSUJII, M. T. FREEDMAN et S. K. MUN intitulé "Lung contour detection in chest radiographs using 1-D convolution neural networks" publié dans Journal of Electronic Imaging, janvier 1999, vol. 8, n 1, pages 46 à 53. Dans cette variante, deux réseaux de neurones entraînés à la détection de contours dans un signal monodimensionnel, utilisant une séquence d'apprentissage constituée d'images de référence dans lesquelles on connaît déjà la localisation des contours, sont appliqués respectivement le long des orientations horizontales et verticales de l'image. Les deux images noir et blanc résultantes, où le blanc représente la détection de contour et le noir, l'absence de contour, sont fusionnées par un opérateur binaire OU. L'image résultante contient l'information de localisation de contours. 13 L'étape 408 qui suit l'étape 406 d'extraction de la localisation des contours consiste à utiliser la sous-bande SBED1 pour prédire l'orientation à utiliser pour engendrer les sous-bandes haute fréquence de même résolution que SBE1. Différentes approches sont possibles. Dans un mode particulier de réalisation, on extrait l'orientation des contours de la sous-bande SBED1. Toutefois, cette orientation n'est extraite à partir d'un calcul que pour les pixels qui appartiennent à un contour. Pour les autres pixels, elle est prédéterminée. Ainsi, pour chaque pixel de SBED1 : - si ce pixel appartient à un contour au sens de l'étape précédente (cette information étant donnée par l'image L1), on applique le filtrage de Sobel, dont on a vu qu'il est constitué de deux filtrages, l'arctangente du rapport des sorties des deux filtrages donnant l'orientation locale du contour, et on attribue à ce pixel la valeur d'orientation donnée par ce filtrage ; et - si ce pixel n'appartient pas à un contour, on lui affecte une valeur prédéterminée, résultant par exemple d'un filtrage selon l'orientation horizontale. L'image ainsi produite est appelée SO1. Au cours de l'étape suivante 410, l'image SO1 est suréchantillonnée pour produire l'image de prédiction des orientations SOO. Le suréchantillonnage consiste, classiquement, à augmenter le nombre d'échantillons par unité de longueur d'un facteur 2 dans chaque dimension. Les échantillons ajoutés sont construits en dupliquant les échantillons de SO1, ou par filtrage. Puis lors d'une étape 412, on filtre la sous-bande d'origine par filtrage orienté, selon une technique du type décrit dans le document de brevet FR-A-2 889 382, de façon à engendrer les sous-bandes haute fréquence de résolution R1. La figure 2 montre un tel filtrage. On en rappelle ci-dessous le principe. On commence par déterminer un filtre à appliquer à l'échantillon courant, parmi une pluralité de filtres possibles. Dans le mode particulier de réalisation décrit ici, deux filtres sont utilisables. 14 Un premier filtre, appelé filtre passe-bas, a pour rôle d'extraire les basses fréquences du signal. Par exemple, dans le cas d'un signal à coder monodimensionnel, c'est-à-dire formé d'une série d'échantillons : {..., Xi-3, Xi-2, xi-1, Xi, xi+1, )42, xi+3, ...}, si on utilise un filtre passe-bas ayant pour coefficients : [-1/16, 0, 5/16, 1, 5/16, 0, -1/16], le résultat du filtrage est représenté par les valeurs d'échantillons filtrés suivantes : yi = -xi_3/16 + 5xi_1/16 + xi + 5xi+1/16 û xi+3/16. Un second filtre, appelé filtre passe-haut, extrait les hautes fréquences du signal. Par exemple, le résultat du filtrage du signal monodimensionnel : {..., Xi-3, Xi-2, Xi-1, Xi, xi+1, xi+2, xi+3, ...} par le filtre passe-haut dont les coefficients sont : [1/16, 0, -9/16, 1, -9/16, 0, 1/16] est représenté par : Yi = xi_3/16 û 9xi_1/16 + xi û 9xi+1/16 + xi+3/16. Ces filtres passe-haut et passe-bas sont utilisés dans la décomposition selon le schéma de lifting, laquelle est particulièrement adaptée à la présente invention. Pour plus de détails sur le schéma de lifting, on se reportera utilement au site Internet suivant : http://www.bearcave.com/misl/misl tech/wavelets/lifting/predict.html. Dans le mode particulier de réalisation décrit ici, lors du filtrage d'une ligne, si la ligne en cours de filtrage est filtrée pour la première fois, le filtre appliqué est le filtre passe-haut. Dans le cas contraire, lefiltre à appliquer est le filtre passe-bas. La figure 2 montre schématiquement, d'une part, le filtre courant à appliquer sur l'image numérique et, d'autre part, l'application de ce filtre à l'échantillon courant. Dans l'exemple représenté sur la figure 2, l'échantillon courant est l'échantillon numéro j de la ligne courante numéro i, autrement dit celui correspondant à la ième ligne et à la jème colonne de pixels de l'image. 15 L'exemple de la figure 2 correspond à un mode particulier de réalisation dans lequel trois orientations géométriques sont possibles. On note xi,j le coefficient de l'échantillon courant. Ainsi, les trois orientations géométriques suivant lesquelles on applique le filtrage monodimensionnel sont définies comme suit : f{Xi-3,j-3, Xi-2,j-2, Xi-1 j-1, Xij, Xi+1j+1, Xi+2,j+2, Xi+3,j+3} Xi ,j-2, Xi ,j-1, Xi,j+ xi,1+1, Xi.J+2, Xi,j+3f {Xi+3,j-3, Xi+2,j-2, Xi+1,j-1, Xi,j, Xi-1,j+1, Xi-2,j+2, Xi-3,j+3} ce qui correspond à des orientations respectives de 45 , 0 et -45 . L'une de ces trois orientations va servir à filtrer réellement le signal. Dans un mode particulier de réalisation, il y a huit orientations possibles correspondant à des angles uniformément répartis entre -90 et 90 . L'orientation utilisée sur chaque échantillon de SO est donnée par l'image de prédiction des échantillons SOO. En filtrant l'échantillon de SO situé aux coordonnées (x,y), on utilisera l'orientation prédéterminée, parmi les huit orientations prédéterminées possibles du mode particulier de réalisation mentionné ci-dessus, qui est la plus proche de SO0(x,y). En pratique, lors du filtrage d'une image numérique qui est un signal de dimension 2, ce filtrage est itéré trois fois pour engendrer les trois sous-20 bandes SHI dites de haute fréquence correspondant à : - un filtrage haute fréquence sur l'axe horizontal et un filtrage basse fréquence sur l'axe vertical, - un filtrage basse fréquence sur l'axe horizontal et un filtrage haute fréquence sur l'axe vertical, 25 - un filtrage haute fréquence sur l'axe horizontal et un filtrage haute fréquence sur l'axe vertical. La sous-bande correspondant à un filtrage basse fréquence sur chaque dimension est la sous-bande SBE1. Dans le cas du filtrage de la sous-bande d'origine SO, trois nouvelles 30 sous-bandes haute fréquence sont donc produites, comme dans la transformée en ondelettes classique. 16 Comme le montre la figure 4, l'étape 414 qui suit l'étape 412 d'obtention des trois sous-bandes haute fréquence de résolution inférieure consiste à coder ces trois sous-bandes. Ce codage est effectué de façon classique, par exemple par quantification scalaire ou quantification vectorielle puis application d'un codage entropique tel que le codage de Huffman ou le codage arithmétique. Il est également possible de coder non seulement les trois sous-bandes haute fréquence, mais aussi la sous-bande basse fréquence SBE1, notamment dans le cas où elle n'est pas redécomposée en sous-bandes de résolution inférieure. On décrit ci-dessous l'algorithme de décodage d'une sous-bande basse fréquence SOD, c'est-à-dire la version décodée de la sous-bande SO du codage, en référence à la figure 5. Cette sous-bande basse fréquence peut être, soit l'image à décoder, soit une sous-bande basse fréquence qui sera ultérieurement combinée à des sous-bandes haute fréquence pour engendrer une sous-bande basse fréquence de résolution supérieure. Au cours d'une étape 500, on commence par sélectionner la sous-bande à synthétiser puis, lors d'une étape 502, à décoder la sous-bande basse fréquence de résolution immédiatement inférieure à celle de SO. Il s'agit de SBED1, ce nom étant identique à celui utilisé lors du codage car il s'agit exactement de la même sous-bande. Puis les trois étapes suivantes 504 d'extraction de la localisation des contours (incluant les sous-étapes 5040 d'application d'un détecteur de Sobel, 5042 de détermination d'un seuil et 5044 de seuillage), 506 d'extraction des orientations de filtrage et 508 de suréchantillonnage sont strictement similaires à celles appliquées au codage. De même, si, lors du codage, on a déterminé la localisation des contours au moyen de la variante de réalisation mettant en oeuvre des réseaux de neurones comme décrit plus haut, on utilisera la même méthode lors du décodage. 17 C'est d'ailleurs ce qui garantit que les orientations ainsi engendrées sont exactement les mêmes, ce qui est nécessaire pour la réversibilité du processus. On décode ensuite, lors d'une étape 510, les trois sous-bandes haute fréquence SHI de même résolution que SBED1. Le décodage de chacune de ces sous-bandes se fait par des méthodes classiques telles que le décodage entropique de Huffman ou arithmétique et la déquantification scalaire ou vectorielle. Puis lors de l'étape 512, on effectue un filtrage inverse similaire au filtrage inverse décrit dans le document de brevet FR-A-2 889 382. II s'agit d'appliquer un filtre avec une certaine orientation sur les images combinées SBED1 et SH1. Les orientations sont fournies par des étapes similaires à celles mises en oeuvre lors du codage et décrites précédemment. Ce filtrage a pour résultat de produire la sous-bande SOD, qui est 15 l'image décodée. La figure 3 montre un mode particulier de réalisation d'un dispositif de traitement d'information apte à fonctionner comme dispositif de codage d'un signal numérique multidimensionnel et/ou comme dispositif de décodage d'un signal numérique multidimensionnel codé conformément à la présente 20 invention. Le dispositif illustré sur la figure 3 peut comporter tout ou partie des moyens de mise en oeuvre d'un procédé de codage d'un signal numérique multidimensionnel et/ou d'un procédé de décodage d'un signal numérique multidimensionnel codé conformément à la présente invention. 25 Selon le mode de réalisation choisi, ce dispositif peut être par exemple un micro-ordinateur ou une station de travail 600 connecté à différents périphériques, par exemple, une caméra numérique 601 (ou un scanner, ou tout autre moyen d'acquisition ou de stockage d'images) reliée à une carte graphique (non représentée) et fournissant ainsi des informations à traiter selon 30 l'invention. Le micro-ordinateur 600 comporte de préférence une interface de communication 602 reliée à un réseau 603 apte à transmettre des informations 18 numériques. Le micro-ordinateur 600 comporte également un moyen de stockage permanent 604, tel qu'un disque dur, ainsi qu'un lecteur de moyens de stockage temporaire tel qu'un lecteur de disquettes 605 pour coopérer avec une disquette 606. La disquette 606 et le disque dur 604 peuvent contenir des données d'implantation logicielle de l'invention ainsi que le code du ou des programme(s) d'ordinateur dont l'exécution par le micro-ordinateur 600 met en oeuvre la présente invention, ce code étant par exemple mémorisé sur le disque dur 604 une fois qu'il a été lu par le micro-ordinateur 600. En variante, le ou les programme(s) permettant au dispositif 600 de mettre en oeuvre l'invention sont stockés dans une mémoire morte (par exemple du type ROM) 607. Selon une autre variante, ce ou ces programme(s) sont reçus totalement ou partiellement à travers le réseau de communication 603 pour être 15 stockés comme indiqué. Le micro-ordinateur 600 comprend également un écran 609 pour visualiser les informations à traiter et/ou servir d'interface avec l'utilisateur, afin que l'utilisateur puisse par exemple paramétrer certains modes de traitement à l'aide du clavier 610 ou de tout autre moyen approprié de pointage et/ou de 20 saisie tel qu'une souris, un crayon optique, etc. Une unité de calcul ou unité centrale de traitement (CPU) 611 exécute les instructions relatives à la mise en oeuvre de l'invention, ces instructions étant stockées dans la mémoire morte ROM 607 ou dans les autres éléments de stockage décrits. 25 Lors de la mise sous tension du dispositif 600, les programmes et méthodes de traitement stockés dans une des mémoires non-volatiles, par exemple la ROM 607, sont transférés dans une mémoire vive (par exemple du type RAM) 612, qui contient alors le code exécutable de l'invention ainsi que les variables nécessaires à la mise en oeuvre de l'invention. 30 En variante, les méthodes de traitement du signal numérique peuvent être stockées dans différents emplacements de stockage. De façon générale, un moyen de stockage d'information lisible par un ordinateur ou par 19 un microprocesseur, intégré ou non au dispositif, éventuellement amovible, peut mémoriser un ou plusieurs programme(s) dont l'exécution met en oeuvre les procédés de codage et/ou de décodage décrits précédemment. On peut faire évoluer le mode particulier de réalisation choisi pour l'invention, par exemple en ajoutant des méthodes de traitement actualisées ou améliorées ; dans un tel cas, ces nouvelles méthodes peuvent être transmises au dispositif 600 par le réseau de communication 603, ou chargées dans le dispositif 600 par l'intermédiaire d'une ou de plusieurs disquettes 606. Bien entendu, les disquettes 606 peuvent être remplacées par tout support d'information jugé approprié (CD-ROM, carte mémoire, etc.). Un bus de communication 613 permet la communication entre les différents éléments du micro-ordinateur 600 et les éléments reliés à celui-ci. On notera que la représentation du bus 613 n'est pas limitative. En effet, l'unité centrale CPU 611 est, par exemple, susceptible de communiquer des instructions à tout élément du micro-ordinateur 600, directement ou par l'intermédiaire d'un autre élément du micro-ordinateur 600. REVENDICATIONS 1. Procédé de codage d'un signal numérique multidimensionnel d'image par décomposition en sous-bandes de fréquence, ladite décomposition en sous-bandes de fréquence mettant en oeuvre un filtrage selon une pluralité d'orientations géométriques, ledit procédé étant caractérisé en ce qu'il comporte des étapes consistant à : - obtenir (402) une image à une résolution inférieure à la résolution dudit signal numérique d'image ; -localiser (406) les contours de ladite image à la résolution inférieure ; et - attribuer (408, 410) aux données du signal numérique d'image des valeurs d'orientation en fonction du résultat de ladite étape (406) de localisation des contours. 2. Procédé de codage selon la revendication 1, caractérisé en ce que ladite étape (408, 410) d'attribution de valeurs d'orientation consiste à : - attribuer à des données du signal numérique d'image n'appartenant pas à des contours une valeur d'orientation prédéterminée ; et - attribuer à des données du signal numérique d'image appartenant à des contours une valeur d'orientation calculée en fonction de données représentatives de ladite image à la résolution inférieure. 3. Procédé de codage selon la revendication 1 ou 2, caractérisé en ce que ladite étape de localisation des contours de ladite image à la résolution inférieure comporte des étapes consistant à : - appliquer (4060) à l'image à la résolution inférieure un filtrage détecteur de contours ; -déterminer (4062) un seuil ; et - décider (4064) que tous les pixels de l'image à la résolution inférieure obtenue après application du filtrage détecteur de contours dont la valeur est strictement inférieure audit seuil n'appartiennent pas à un contour et que tous les autres pixels appartiennent à un contour. 4. Procédé de codage selon la revendication précédente, caractérisé en ce que ladite étape (4060) d'application d'un détecteur de contours consiste à appliquer un détecteur de Sobel. 5. Procédé de codage selon la revendication 3 ou 4, caractérisé en ce que ledit seuil est fonction du contenu de l'image à la résolution inférieure obtenue après application du filtrage détecteur de contours. 6. Procédé de codage selon l'une quelconque des revendications 2 à 5, caractérisé en ce que ladite valeur d'orientation prédéterminée attribuée aux données du signal numérique d'image n'appartenant pas à un contour est horizontale. 7. Procédé de codage selon l'une quelconque des revendications 2 à 6, caractérisé en ce que les données représentatives de l'image à la résolution inférieure en fonction desquelles est calculée la valeur d'orientation à attribuer aux données du signal numérique d'image appartenant à des contours sont issues d'une version codée puis décodée (404) de l'image à la résolution inférieure. 8. Procédé de codage selon la revendication précédente, caractérisé en ce que ladite version codée résulte de l'application d'un procédé de codage selon l'une quelconque des revendications précédentes. 9. Procédé de codage selon l'une quelconque des revendications précédentes, caractérisé en ce que le signal numérique multidimensionnel est représentatif d'une image fixe. 10. Procédé de codage selon l'une quelconque des revendications 1 à 8, caractérisé en ce que le signal numérique multidimensionnel est représentatif d'une vidéo. 11. Dispositif (2) de codage d'un signal numérique multidimensionnel d'image par décomposition en sous-bandes de fréquence, ladite décomposition en sous-bandes de fréquence mettant en oeuvre un filtrage selon une pluralité d'orientations géométriques, ledit dispositif étant caractérisé en ce qu'il comporte : - des moyens pour obtenir une image à une résolution inférieure à la résolution dudit signal numérique d'image ; 22 - des moyens pour localiser les contours de ladite image à la résolution inférieure ; et - des moyens pour attribuer aux données du signal numérique d'image des valeurs d'orientation en fonction de la sortie desdits moyens de localisation des contours. 12. Dispositif de codage selon la revendication Il, caractérisé en ce que lesdits moyens d'attribution de valeurs d'orientation sont adaptés à : -attribuer à des données du signal numérique d'image n'appartenant pas à des contours une valeur d'orientation prédéterminée ; et - attribuer à des données du signal numérique d'image appartenant à des contours une valeur d'orientation calculée en fonction de données représentatives de ladite image à la résolution inférieure. 13. Dispositif de codage selon la revendication 11 ou 12, caractérisé en ce que lesdits moyens de localisation des contours de ladite image à la résolution inférieure sont adaptés à : - appliquer à l'image à la résolution inférieure un filtrage détecteur de contours ; - déterminer un seuil ; et - décider que tous les pixels de l'image à la résolution inférieure obtenue après application du filtrage détecteur de contours dont la valeur est strictement inférieure audit seuil n'appartiennent pas à un contour et que tous les autres pixels appartiennent à un contour. 14. Dispositif de codage selon la revendication précédente, caractérisé en ce que lesdits moyens adaptés à appliquer un détecteur de 25 contours sont adaptés à appliquer un détecteur de Sobel. 15. Dispositif de codage selon la revendication 13 ou 14, caractérisé en ce que ledit seuil est fonction du contenu de l'image à la résolution inférieure obtenue après application du filtrage détecteur de contours. 16. Dispositif de codage selon l'une quelconque des revendications 30 12 à 15, caractérisé en ce que ladite valeur d'orientation prédéterminée attribuée aux données du signal numérique d'image n'appartenant pas à un contour est horizontale. 17. Dispositif de codage selon l'une quelconque des revendications 12 à 16, caractérisé en ce que les données représentatives de l'image à la résolution inférieure en fonction desquelles est calculée la valeur d'orientation à attribuer aux données du signal numérique d'image appartenant à des contours sont issues d'une version codée puis décodée de l'image à la résolution inférieure. 18. Dispositif de codage selon la revendication précédente, caractérisé en ce que ladite version codée est obtenue au moyen d'un dispositif de codage selon l'une quelconque des revendications 11 à 17. 19. Dispositif de codage selon l'une quelconque des revendications 11 à 18, caractérisé en ce que le signal numérique multidimensionnel est représentatif d'une image fixe. 20. Dispositif de codage selon l'une quelconque des revendications 11 à 18, caractérisé en ce que le signal numérique multidimensionnel est 15 représentatif d'une vidéo. 21. Procédé de décodage d'un signal numérique multidimensionnel d'image codé par décomposition en sous-bandes de fréquence, ladite décomposition en sous-bandes de fréquence mettant en oeuvre un filtrage selon une pluralité d'orientations géométriques, ledit procédé étant caractérisé 20 en ce qu'il comporte des étapes consistant à : - obtenir (502) une image décodée à une résolution inférieure à la résolution dudit signal numérique d'image codé ; - localiser (504) les contours de ladite image décodée à la résolution inférieure ; et 25 - attribuer (506) aux données de ladite image décodée à la résolution inférieure des valeurs d'orientation en fonction du résultat de ladite étape (504) de localisation des contours. 22. Procédé de décodage selon la revendication 21, caractérisé en ce que ladite étape (506) d'attribution de valeurs d'orientation consiste à : 30 - attribuer à des données de ladite image décodée à la résolution inférieure n'appartenant pas à des contours une valeur d'orientation prédéterminée ; et 24 - attribuer à des données de ladite image décodée à la résolution inférieure appartenant à des contours une valeur d'orientation calculée en fonction de données représentatives de ladite image décodée à la résolution inférieure. 23. Procédé de décodage selon la revendication 21 ou 22, caractérisé en ce que ladite étape (504) de localisation des contours de ladite image décodée à la résolution inférieure comporte des étapes consistant à : -appliquer (5040) à l'image décodée à la résolution inférieure un filtrage détecteur de contours ; - déterminer (5042) un seuil ; et - décider (5044) que tous les pixels de l'image décodée à la résolution inférieure obtenue après application du filtrage détecteur de contours dont la valeur est strictement inférieure audit seuil n'appartiennent pas à un contour et que tous les autres pixels appartiennent à un contour. 24. Dispositif (6) de décodage d'un signal numérique multidimensionnel d'image codé par décomposition en sous-bandes de fréquence, ladite décomposition en sous-bandes de fréquence mettant en oeuvre un filtrage selon une pluralité d'orientations géométriques, ledit dispositif étant caractérisé en ce qu'il comporte : - des moyens pour obtenir une image décodée à une résolution inférieure à la résolution dudit signal numérique d'image codé ; - des moyens pour localiser les contours de ladite image décodée à la résolution inférieure ; et - des moyens pour attribuer aux données de ladite image décodée à la résolution inférieure des valeurs d'orientation en fonction de la sortie desdits moyens de localisation des contours. 25. Dispositif de décodage selon la revendication 24, caractérisé en ce que lesdits moyens d'attribution de valeurs d'orientation sont adaptés à : - attribuer à des données de ladite image décodée à la résolution inférieure n'appartenant pas à des contours une. valeur d'orientation prédéterminée ; et 25 - attribuer à des données de ladite image décodée à la résolution inférieure appartenant à des contours une valeur d'orientation calculée en fonction de données représentatives de ladite image décodée à la résolution inférieure. 26. Dispositif de décodage selon la revendication 24 ou 25, caractérisé en ce que lesdits moyens de localisation des contours de ladite image décodée à la résolution inférieure sont adaptés à : - appliquer à l'image décodée à la résolution inférieure un filtrage détecteur de contours ; -déterminer un seuil ; et - décider que tous les pixels de l'image décodée à la résolution inférieure obtenue après application du filtrage détecteur de contours dont la valeur est strictement inférieure audit seuil n'appartiennent pas à un contour et que tous les autres pixels appartiennent à un contour. 27. Système de télécommunications comprenant une pluralité de dispositifs terminaux reliés à travers un réseau de télécommunications, caractérisé en ce qu'il comprend au moins un dispositif terminal équipé d'un dispositif de codage selon l'une quelconque des revendications 11 à 20 et/ou d'un dispositif de décodage selon la revendication 24, 25 ou 26. 28. Moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, caractérisé en ce qu'il permet la mise en oeuvre d'un procédé de codage selon l'une quelconque des revendications 1 à 10 et/ou d'un procédé de décodage selon la revendication 21, 22 ou 23. 29. Produit programme d'ordinateur pouvant être chargé dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions pour mettre en oeuvre un procédé de codage selon l'une quelconque des revendications 1 à 10 et/ou un procédé de décodage selon la revendication 21, 22 ou 23, lorsque ce programme est chargé et exécuté par l'appareil programmable.