Brevet FR2792150A1 — publié le 20001013

La présente invention se rapporte à un procédé et à un dispositif de codage de signaux numériques, à un procédé et à un dispositif de décodage de ces mêmes signaux numériques, et à des systèmes les mettant en oeuvre. Les signaux numériques considérés peuvent être des images, des signaux vidéo, des signaux sonores ou encore des données. L'invention sera ici plus particulièrement décrite dans son application à des signaux numériques représentant des images. Dans le domaine du codage de signaux numériques, il est parfois intéressant d'utiliser plusieurs techniques de codage pour coder un même ensemble de données. Dans ce cas, grâce à une méthode de sélection, fondée par exemple sur un critère d'allocation optimale de débit, on choisit et on applique localement la meilleure technique de codage. Pour que le décodeur puisse décoder correctement les signaux codés qu'il reçoit, on transmet généralement, de façon classique, une information dite "indicateur" (en anglais "flag") permettant de savoir quelle technique de codage a été utilisée sur chaque portion de signal. Ainsi, par exemple, conformément à l'art antérieur, une image numérique peut être divisée en blocs, et pour coder chaque bloc, on peut avoir le choix entre un codage par quantification vectorielle et un codage par transformée en cosinus discrète (DCT, en anglais "Discrete Cosine Transform"). Chaque bloc est codé par la méthode la plus appropriée au sens d'un critère fixé a priori, et un indicateur est transmis avec le signal d'image, pour indiquer, pour chaque bloc, si on a utilisé la quantification vectorielle ou la DCT. L'indicateur est par exemple un mot susceptible de prendre autant de valeurs différentes qu'il y a de techniques de codage différentes utilisées pour coder les blocs. Cette façon de procéder selon l'art antérieur présente notamment l'inconvénient de nécessiter la transmission d'un grand nombre d'indicateurs, à savoir, autant d'indicateurs que de blocs codés, et donc, de réduire le taux de compression des signaux, ce qui limite par conséquent le débit. La présente invention a pour but de remédier aux inconvénients précités, en supprimant la nécessité de transmettre de façon systématique et explicite une information additionnelle indiquant la technique de codage utilisée, afin de parvenir à un meilleur compromis entre les taux de compression et de distorsion des signaux. Dans ce but, la présente invention propose un procédé de codage d'un signal numérique, suivant lequel: - on décompose ce signal numérique en une pluralité de sous- signaux, - a partir d'un critère de sélection prédéterminé, on choisit de coder chaque sous-signal au moyen d'une technique de codage prise parmi un nombre prédéterminé M de techniques de codage Ci, o i est un entier compris entre 1 et M, ces M techniques de codage étant connues en soi, de façon à produire un train de bits codés complet, et - on inscrit le train de bits codés dans une première partie d'un fichier destiné à recevoir le signal numérique codé, ce procédé de codage étant caractérisé en ce que, après production d'un train de bits codés complet, - pour chaque entier i compris entre 1 et M, on simule l'application, successivement à chaque sous-signal codé, d'une technique de décodage Di associée à la technique de codage Ci; et - si et seulement si, lors de ladite étape de simulation, au moins deux techniques de décodage différentes sont acceptables, au sens d'un critère de vraisemblance prédéterminé, pour décoder un même sous-signal codé, on inscrit dans une seconde partie du fichier précité une information permettant de sélectionner, lors du décodage, la technique de décodage associée à la technique de codage utilisée pour coder le sous-signal considéré. Ainsi, le procédé de codage se déroule en deux phases principales, dont une phase de codage proprement dit et une phase de simulation du décodage, durant laquelle on ajoute non pas systématiquement, mais seulement dans certains cas, une information relative à la méthode de codage utilisée, ce qui permet de réduire la quantité d'information produite lors du codage, et donc, d'améliorer le taux de compression du signal. En variante, on pourrait supprimer la phase de simulation du décodage, ce qui permettrait de rendre le codage et le décodage plus rapides, quitte à obtenir un décodage de qualité moindre. Selon une caractéristique particulière, on décompose le signal numérique en une pluralité de sous-bandes de fréquence, elles-mêmes divisées en blocs constituant les sous-signaux précités, ces sous- signaux correspondant respectivement à la pluralité de sous-bandes de fréquence précitée. Dans un mode particulier de réalisation, le critère de vraisemblance consiste à: - comparer la valeur de la distorsion entre un sous-signal numérique décodé et des sous-signaux voisins à un seuil prédéterminé, et - décider que le sous-signal décodé est vraisemblable si la valeur de la distorsion est inférieure ou égale à ce seuil, ou décider que le sous-signal décodé n'est pas vraisemblable si la valeur de la distorsion est strictement supérieure à ce seuil. Un tel critère de vraisemblance permet d'éliminer efficacement et de façon simple les techniques de décodage inappropriées, qui aboutissent à des valeurs de distorsion très élevées, reflétant le fait que la technique de décodage testée ne correspond pas à la technique de codage utilisée au départ. Dans un mode particulier de réalisation, dans lequel le signal numérique est un signal d'image et chaque sous-signal est un bloc de coefficients, la valeur de la distorsion est calculée à partir de l'erreur quadratique moyenne entre deux vecteurs de coefficients situés le long de la frontière d'un ou de plusieurs blocs. Dans ce cas, le seuil permettant de décider de la vraisemblance du signal décodé peut être choisi par exemple en fonction de la nature des images. Dans le même but que précédemment, la présente invention propose également un dispositif de codage d'un signal numérique, comportant: - des moyens pour décomposer ce signal numérique en une pluralité de sous- signaux, des moyens pour choisir de coder chaque sous- signal, à partir d'un critère de sélection prédéterminé, au moyen d'une technique de codage prise parmi un nombre prédéterminé M de techniques de codage Ci, o i est un entier compris entre 1 et M, ces M techniques de codage étant connues en soi, de façon à produire un train de bits codés complet, et - des moyens pour inscrire le train de bits codés dans une première partie d'un fichier destiné à recevoir le signal numérique codé, ce dispositif de codage étant caractérisé en ce qu'il comporte en outre - des moyens pour simuler, après production d'un train de bits codés complet, I'application, successivement à chaque sous- signal codé, pour chaque entier i compris entre 1 et M, d'une technique de décodage Di associée à la technique de codage Ci; et - des moyens pour inscrire dans une seconde partie du fichier précité une information permettant de sélectionner, lors du décodage, la technique de décodage associée à la technique de codage utilisée pour coder le signal, si et seulement si, lors de la simulation effectuée par le module de simulation, au moins deux techniques de décodage différentes sont acceptables, au sens d'un critère de vraisemblance prédéterminé, pour décoder un même sous-signal codé. La présente invention propose en outre un procédé de décodage d'un signal numérique codé, ce signal codé provenant d'un signal numérique d'origine décomposé en une pluralité de sous-signaux, chaque sous-signal étant codé au moyen d'une technique de codage prise parmi un nombre prédéterminé M de techniques de codage Ci, o i est un entier compris entre 1 et M, le signal codé étant contenu dans une première partie d'un fichier, ce procédé de décodage étant caractérisé en ce que, pour chaque sous-signal codé: - pour chaque entier i compris entre 1 et M, on applique successivement au sous-signal codé chaque technique de décodage Di respectivement associée à chaque technique de codage Ci; - si une seule technique de décodage est acceptable, au sens d'un critère de vraisemblance prédéterminé, on retient uniquement le sous-signal décodé après application de cette technique de décodage; - si et seulement si au moins deux techniques de décodage différentes sont acceptables, au sens du critère de vraisemblance précité, on lit, dans une seconde partie du fichier précité, une information permettant de sélectionner, parmi les techniques de décodage acceptables, celle qui correspond à la technique de codage utilisée pour coder le sous-signal considéré, puis on retient uniquement le sous-signal décodé au moyen de la technique de décodage déduite de cette information. La présente invention propose aussi un dispositif de décodage d'un signal numérique codé, ce signal codé provenant d'un signal numérique d'origine décomposé en une pluralité de sous-signaux, chaque sous-signal étant codé au moyen d'une technique de codage prise parmi un nombre prédéterminé M de techniques de codage Ci, o i est un entier compris entre 1 et M, le signal codé étant contenu dans une première partie d'un fichier, ce dispositif de décodage étant caractérisé en ce qu'il comporte: - des moyens pour appliquer successivement à un sous-signal codé chaque technique de décodage Di respectivement associée à chaque technique de codage Ci, pour chaque entier i compris entre 1 et M; et - des moyens pour lire, dans une seconde partie du fichier précité, une information permettant de sélectionner, parmi plusieurs techniques de décodage acceptables, au sens d'un critère de vraisemblance prédéterminé, celle qui correspond à la technique de codage utilisée pour coder le sous-signal considéré. L'invention vise également: - tout appareil de traitement de signaux numériques comportant des moyens adaptés à mettre en ceuvre un procédé de codage tel que celui succinctement exposé ci-dessus; - tout appareil de traitement de signaux numériques comportant un dispositif de codage tel que celui succinctement exposé ci-dessus; - tout appareil de traitement de signaux numériques comportant des moyens adaptés à mettre en oeuvre un procédé de décodage tel que celui succinctement exposé ci-dessus; et - tout appareil de traitement de signaux numériques comportant un dispositif de décodage tel que celui succinctement exposé ci-dessus. L'invention vise aussi: - un moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, permettant la mise en ceuvre du procédé de codage et/ou de décodage de l'invention tel que succinctement exposé ci- dessus, et - un moyen de stockage d'informations amovible, partiellement ou totalement, lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, permettant la mise en oeuvre du procédé de codage et/ou de décodage de l'invention tel que succinctement expose ci-dessus. L'invention s'applique en particulier au codage et au décodage de signaux représentant des images. Il peut s'agir aussi bien d'images en noir et blanc que d'images en couleur. Les caractéristiques particulières et les avantages du dispositif de codage, du procédé et du dispositif de décodage, des appareils de traitement de signaux numériques et des moyens de stockage d'information étant les mêmes que ceux du procédé de codage de l'invention, ils ne sont pas rappelé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 illustre de façon schématique le contexte des procédés et dispositifs de codage et de décodage de l'invention; - la figure 2 est un organigramme illustrant des étapes successives du procédé de codage de l'invention, dans un mode particulier de réalisation; - la figure 3 est une représentation schématique d'un circuit de décomposition en sous-bandes de fréquence, adapté à exécuter une étape de décomposition en sous- bandes du signal numérique selon le procédé de codage de l'invention, dans un mode particulier de réalisation; - la figure 4 est un organigramme illustrant des étapes successives du procédé de décodage de l'invention, dans un mode particulier de réalisation; - la figure 5 représente de façon schématique plusieurs sous- signaux issus d'un signal numérique d'image, sous la forme de blocs de 4 x 4 coefficients; et - la figure 6 représente de façon schématique un mode particulier de réalisation d'un système susceptible de contenir tout ou partie d'un dispositif de codage conforme à l'invention et tout ou partie d'un dispositif de décodage conforme à l'invention. Comme le montre la figure 1, on considère une source de signal numérique 1 produisant, soit un signal d'image, soit un signal vidéo, soit un signal sonore, soit encore un signal de données. On cherche à coder le signal issu de cette source de signal numérique (bloc 12 sur la figure 1), en vue de transmettre ou stocker ce signal sous forme compressée (référence 14 sur la figure 1). Pour reconstituer le signal d'origine (signal reconstruit 18 sur la figure 1), on doit procéder au décodage (bloc 16) du signal codé transmis ou stocké, l'opération de décodage étant nécessairement la transformation inverse de l'opération de codage afin que le signal soit correctement reconstruit. La figure 2 présente la succession des étapes effectuées dans le cadre du procédé de codage de l'invention, dans un mode particulier de réalisation. Lors d'une étape 20, on décompose tout d'abord le signal numérique à coder en une pluralité de sous-signaux. A titre d'exemple non limitatif, on peut décomposer le signal numérique en plusieurs sous- bandes de fréquence, par l'intermédiaire d'une technique classique de décomposition en sous-bandes, puis diviser ces sous-bandes en blocs constituant les sous-signaux précités, ces blocs correspondant respectivement aux sous-bandes de fréquence. A titre d'exemple nullement limitatif, la figure 3 représente un circuit 22 de décomposition en sous-bandes permettant d'exécuter l'étape 20, dans l'application plus particulière du procédé de codage à un signal SI représentant une image numérique IM. Le signal d'image, noté Sl(IM), est une suite de mots numériques, par exemple des octets. Chaque valeur d'octet représente un pixel de l'image IM, qui est par exemple une image à 256 niveaux de gris, ou image noir et blanc. Le circuit de décomposition en sous-bandes 22, ou circuit d'analyse, est un ensemble classique de filtres, respectivement associés à des décimateurs par deux, qui filtrent le signal d'image selon deux directions, en sous-bandes de hautes et basses fréquences spatiales. Selon la figure 2, le circuit 22 comporte trois étages successifs d'analyse El, E2, E3 pour décomposer l'image IM en des sous-bandes selon trois niveaux de résolution. De façon générale, la résolution d'un signal est le nombre d'échantillons par unité de longueur utilisés pour représenter ce signal. Dans le cas d'un signal d'image, la résolution d'une sous-bande est liée au nombre d'échantillons par unité de longueur utilisés pour représenter cette sous-bande. La résolution dépend du nombre de décimations effectuées. Le premier étage d'analyse E1 reçoit le signal numérique d'image et l'applique à deux filtres numériques respectivement passe-bas et passehaut 24 et 26 qui filtrent le signal d'image selon une première direction, par exemple horizontale. Après passage par des décimateurs par deux 240 et 260, les signaux filtrés résultants sont respectivement appliqués à deux filtres passe-bas 28 et 30, et passe-haut 32 et 34, qui les filtrent selon une seconde direction, par exemple verticale. Chaque signal filtré résultant passe par un décimateur par deux respectif 280, 300, 320, 340. Le premier étage d'analyse E1 délivre en sortie quatre sous-bandes LL,, LH1, HL, et HH1 de résolution RES1 la plus élevée dans la décomposition. La sous-bande LL1 comporte les composantes, ou coefficients, de basse fréquence, selon les deux directions, du signal d'image. La sous-bande LH1 comporte les composantes de basse fréquence selon la première direction et les composantes de haute fréquence selon la seconde direction. La sous-bande HL1 comporte les composantes de haute fréquence selon la première direction et les composantes de basse fréquence selon la seconde direction. La sous-bande HH1 comporte les composantes de haute fréquence selon les deux directions. Chaque sous-bande est une image construite à partir de l'image d'origine, qui contient de l'information correspondant à une orientation respectivement verticale, horizontale et diagonale des contours de l'image, dans une bande de fréquence donnée. La sous-bande LL, est analysée par un deuxième étage d'analyse E2 analogue à l'étage El, pour fournir quatre sous-bandes LL2, LH2, HL2, HH2 de niveau de résolution RES2 intermédiaire dans la décomposition. La sous- bande LL2 comporte les composantes de basse fréquence selon les deux directions d'analyse, et est à son tour analysée par un troisième étage d'analyse E3 analogue aux deux précédents. Le troisième étage d'analyse E3 fournit des sous-bandes LL3, LH3, HL3 et HH3, de résolution RES3 la plus faible dans la décomposition, résultant du découpage en sous-bandes de la sous- bande LL2. Chacune des sous-bandes de résolution RES2 et RES3 correspond également à une orientation dans l'image. La décomposition effectuée par le circuit 22 est telle qu'une sous- bande d'une résolution donnée est découpée en quatre sous-bandes de résolution inférieure et a donc quatre fois plus de coefficients que chacune des sous-bandes de résolution inférieure. Bien entendu, le nombre de niveaux de résolution, et le nombre de sous-bandes par niveau de résolution, peuvent être choisis différemment. Comme le montre la figure 2, l'étape 20 de décomposition du signal numérique d'origine en sous-bandes est suivie par une étape 36 consistant à considérer un premier sous-signal issu de la décomposition en blocs d'une sous-bande. A l'étape 38, on choisit une technique de codage parmi un nombre prédéterminé M de techniques de codage Ci, i étant un entier compris entre 1 et M, pour coder le sous- signal considéré. Ce choix s'effectue en fonction d'un critère de sélection prédéterminé. Les techniques de codage disponibles peuvent comprendre par exemple un codage par quantification vectorielle et un codage par transformation en cosinus discrète (DCT). Pour cela, on peut procéder comme suit. On code le sous-signal considéré au moyen de toutes les techniques de codage Ci, de façon à obtenir M sous-signaux codés. Puis on compare les sous-signaux codés pour sélectionner la technique de codage la plus appropriée. Pour effectuer cette comparaison, on calcule par exemple, d'une part, les M débits nécessaires pour transmettre respectivement les M sous- signaux codés et d'autre part, les erreurs de codage, ou distorsion, provoquées par chaque technique de codage. Si le signal numérique d'origine est un signal d'image, les erreurs de codage mesurent respectivement l'erreur quadratique moyenne apportée dans l'image reconstruite par le codage du sous-signal considéré, selon chacune des techniques de codage. On compare ensuite, à titre d'exemple non limitatif, les sommes pondérées R +;.D, R désignant le débit, D désignant la distorsion et X étant un coefficient de réglage, obtenues pour chacun des sous-signaux codés. On sélectionne alors, pour le sous-signal considéré, la technique de codage pour laquelle la valeur de cette somme pondérée est la plus faible. A l'étape 40, on inscrit le sous-signal codé ainsi obtenu dans une première partie d'un fichier, lequel est destiné à recevoir le signal numérique codé. Les étapes 42 et 44 illustrent le fait qu'on procède de même avec tous les sous-signaux formant les blocs issus de la décomposition en sous- bandes du signal numérique d'origine. Les étapes 20, 36, 38, 40, 42 et 44 qu'on vient de décrire illustrent la première phase du procédé de codage, qui est la phase de codage proprement dite. On décrit ci-après la seconde phase du procédé de codage, qui est une phase de vérification. De façon générale, cette phase de vérification est une phase préparatoire au décodage, qui consiste à simuler le décodage afin de supprimer les éventuelles ambiguïtés dans le choix d'une technique de décodage parmi plusieurs possibilités, pour un sous-signal codé donné. Il est à noter qu'en l'absence de cette phase de vérification, la probabilité d'erreur lors du décodage augmente fortement, étant donné qu'une technique de décodage ne correspondant pas à la technique de codage initialement utilisée peut être choisie par erreur. C'est pourquoi il est particulièrement avantageux de procéder à cette phase de simulation du décodage. A l'étape 46, on extrait du fichier contenant le signal numérique codé un premier sous-signal codé. A l'étape 48, on applique à ce sous-signal codé successivement M techniques de décodage Di respectivement associées aux M techniques de codage Ci utilisées pour coder le sous-signal considéré. Plusieurs cas peuvent se présenter lors de la tentative de décodage du sous-signal codé par une technique de décodage Di quelconque: (i) soit le code lu n'est pas décodable par Di, c'est-à-dire qu'il est impossible que la technique de codage Ci ait initialement généré le sous- signal obtenu après décodage. Par exemple, le sous-signal "décodé" par Di contient des symboles ou des suites de symboles binaires n'appartenant pas à la famille de symboles binaires susceptibles d'être générés par la technique de codage Ci. Dans ce cas, la technique de décodage Di est éliminée, c'est-à-dire qu'elle n'est pas considérée comme acceptable; (ii) soit le code est décodable par Di, mais les données "décodées" sont impossibles. Par exemple, les données générées ont une dynamique supérieure à la dynamique du sous-signal d'origine. Dans ce cas, de même que dans la situation (i), la technique de décodage Di n'est pas considérée comme acceptable; (iii) soit le code est décodable par Di et les données générées sont possibles, mais elles sont peu vraisemblables, au sens d'un critère de vraisemblance prédéterminé. Ce critère de vraisemblance prend en compte par exemple le contexte des sous-signaux dont le décodage a déjà été simulé, et consiste à calculer la valeur de la distorsion entre le soussignal dont le décodage est en cours de simulation et des sous-signaux voisins et à la comparer à un seuil fixé à l'avance. Si la valeur de la distorsion est strictement supérieure à ce seuil, le sous-signal "décodé" est considéré comme non vraisemblable, et la technique de décodage Di n'est pas considérée comme acceptable, tandis que si la valeur de la distorsion est inférieure ou égale à ce seuil, le sous- signal obtenu après application de Di est considéré comme vraisemblable et on considère la technique de décodage Di comme acceptable; (iv) soit le code est décodable par Di et les données décodées sont possibles et vraisemblables. Dans ce cas, la technique de décodage Di est considérée comme acceptable. L'étape suivante du procédé de codage (référence 50 sur la figure 2) consiste à tester si, à l'issue de l'étape de simulation précédente, plusieurs techniques de décodage ont été considérées comme acceptables. Selon la présente invention, c'est si et seulement si au moins deux techniques de décodage ont été considérées comme acceptables qu'on effectue une étape 52 d'écriture, au cours de laquelle on inscrit, dans une seconde partie du fichier contenant dans sa première partie le signal numérique codé, une information qui permettra au décodeur d'appliquer la technique de décodage correcte au sous-signal considéré. L'information qu'on inscrit est par exemple un mot binaire représentant un nombre associé de façon bijective à une technique de codage Ci. Par exemple, si on utilise M = 2 techniques de codage C1 et C2, il suffit d'inscrire un bit qui, par convention, prend la valeur "0" si on utilise la technique de codage Cl, et la valeur "1" si on utilise la technique de codage C2. Sur la figure 2, les étapes 54 et 56 illustrent le fait qu'on procède de la même façon avec tous les sous-signaux. Un mode particulier de réalisation du procédé de décodage de l'invention va maintenant être décrit à l'aide de la figure 4. Le système de décodage reçoit tout d'abord (étape 58) le signal numérique codé contenu dans la première partie du fichier mentionné plus haut, sous-signal par sous-signal. Les étapes suivantes effectuées lors du décodage et consistant à déterminer la ou les technique(s) de décodage acceptable(s) (références 60 et 62 sur la figure 4) sont identiques respectivement aux étapes 46 et 48 effectuées lors du codage durant la phase de simulation du décodage. Ces étapes ne seront donc pas décrites à nouveau ici. Etant donné que le processus de détermination des techniques de décodage acceptables se déroule de façon identique lors du codage et lors du décodage, lorsqu'on détecte plusieurs techniques de décodage acceptables lors du décodage, il existe nécessairement une information, inscrite lors du codage, durant la phase de simulation du décodage, dans la seconde partie du fichier contenant le signal numérique codé, cette information permettant de sélectionner la seule technique de décodage Di qui correspond à la technique de codage Ci initialement utilisée pour coder le sous-signal considéré. A l'étape 64, dans ce cas, on lit cette information, puis on en déduit (étape 66) la technique de décodage appropriée, et on procède au décodage du sous-signal courant (étape 68). Les étapes 70 et 72 illustrent le fait qu'on procède de la même façon pour décoder tous les sous-signaux codés. On décrit ci-après à l'aide de la figure 5 un exemple d'évaluation de la vraisemblance d'un sous-signal décodé, dans le cas o le signal numérique d'origine est un signal numérique d'image. Cette évaluation peut avoir lieu aussi bien lors du décodage que lors du codage, durant la phase de simulation du décodage. L'image d'origine est divisée, comme expliqué plus haut, en sous- bandes de fréquence, et chaque sous-bande est codée de façon indépendante. Chaque sous-bande est ici divisée en blocs carrés de 4 x 4 coefficients. En variante, les blocs peuvent avoir toute autre forme de région, non nécessairement carrée ni rectangulaire. On désigne par X et Z deux blocs qui ont déjà été décodés (respectivement, dont le décodage a déjà été simulé) et qui sont adjacents, chacun par une frontière, à un bloc Y en cours de décodage (respectivement, en cours de simulation de décodage). Le critère de vraisemblance choisi dans cet exemple consiste à calculer lavaleur de la distorsion le long de la frontière commune au bloc Y et à deux de ses blocs adjacents, les blocs X et Z. Cette distorsion est évaluée au moyen de l'erreur quadratique moyenne entre les vecteurs frontière illustrés sur la figure 5, à savoir, le vecteur déjà décodé (respectivement, dont le décodage a déjà été simulé) (Z3, Z2, Z1, ZO, X0, X1, X2, X3), et le vecteur en cours de décodage (respectivement, en cours de simulation de décodage) (Y6, Y5, Y4, YO, YO, Y1, Y2, Y3). Si la valeur de la distorsion ainsi obtenue est supérieure à un seuil donné, le bloc Y est considéré comme invraisemblable; sinon, le bloc Y est considéré comme vraisemblable. Le système 10 représenté de façon schématique sur la figure 6 est, comme décrit ci-après, susceptible de contenir l'ensemble du dispositif de codage de la présente invention ou seulement une partie de celui-ci, et/ou l'ensemble du dispositif de décodage de la présente invention ou seulement une partie de celui-ci. Ce système 10 peut par exemple être un micro-ordinateur, relié à différents périphériques tels qu'une caméra numérique 107, ou un scanner, ou encore tout moyen de saisie et de mémorisation d'images. La caméra 107 est par exemple reliée à une carte graphique et fournit des données à compresser, et donc, à coder. Le système 10 comporte une interface de communication 112 reliée à un réseau 113, lequel est apte, aussi bien à transmettre au système 10 des données a compresser provenant de l'extérieur, qu'à transmettre vers d'autres points de ce réseau 113 des données compressées provenant du système 10. Le système 10 comporte également un moyen de stockage 108, tel qu'un disque dur, par exemple. Le système 10 comporte aussi un lecteur de disquettes 109, lequel est prévu pour recevoir des disquettes 110. En variante, le lecteur de disquettes 109 et les disquettes 110 peuvent être remplacées respectivement par un lecteur de disques compacts à mémoire figée (en anglais "CD-ROAM"') et des disques compacts à mémoire figée, ou par un lecteur de cartes à mémoire et des cartes à mémoire, ou encore par un lecteur de disques vidéo numériques (en anglais DVD, "Digital Video Disc"). Les disquettes, disques compacts à mémoire figée, cartes à mémoire ou disques vidéo numériques 110 et le disque dur 108 peuvent contenir des données codées selon le procédé de codage décrit précédemment, et peuvent également contenir des programmes permettant d'exécuter les étapes successives du procédé de codage et/ou du procédé de décodage décrits précédemment. Selon une première variante, les programmes permettant au système 10 de mettre en oeuvre le procédé de codage et le procédé de décodage de l'invention peuvent être stockés dans une mémoire morte 102. Selon une deuxième variante, les programmes précités peuvent être reçus en provenance du réseau 113 par l'interface de communication 112. Dans le cas o les données à compresser consistent en des signaux audio, le système 10 est relié à un microphone externe 111, par l'intermédiaire d'une carte entrée/sortie 106. Le système 10 comporte éventuellement en outre un écran 104 et/ou un clavier 114. L'écran 104 peut permettre de visualiser les données à compresser et/ou de servir d'interface avec un utilisateur du système 10. On peut par exemple conférer à cet utilisateur la possibilité de choisir entre plusieurs techniques de codage en saisissant ce choix au moyen du clavier. Une unité centrale de traitement 100 comprise dans le système 10 et reliée, par exemple par l'intermédiaire d'un bus de communication 101, aux éléments 102 à 104, 106 à 109, 112 et 114 décrits précédemment, exécute les instructions stockées dans la mémoire morte 102 ou dans les autres éléments de stockage et relatives aux étapes du procédé de codage et/ou de décodage décrits précédemment. Ainsi, l'unité centrale de traitement 100 est adaptée à mettre en oeuvre les organigrammes décrits en figures 2 et 4. L'unité centrale de traitement 100, la mémoire morte 102 et la mémoire vive 103 peuvent coopérer pour former: - des moyens de décomposition du signal numérique en plusieurs sous-signaux; - des moyens de sélection d'une technique de codage parmi M techniques de codage Ci, qui produisent, à partir des sous-signaux foumrnis par les moyens de décomposition, un train de bits codés; - des moyens d'écriture du train de bits codés dans une première partie d'un fichier destiné à recevoir le signal numérique codé; - des moyens de simulation du décodage, qui produisent, à partir de chaque sous-signal codé, M sous-signaux décodés respectivement par application des M techniques de décodage Di correspondant aux M techniques de codage Ci; et - des moyens d'écriture d'une information dans une seconde partie du fichier contenant le signal numérique codé, cette information étant relative à la technique de codage Ci utilisée pour coder un sous-signal donné. Les moyens d'écriture d'information sont commandés par les moyens de simulation du décodage, de façon à n'inscrire que dans certains cas, dans la seconde partie du fichier, l'information permettant de sélectionner, lors du décodage, la technique de décodage correspondant à la technique de codage effectivement utilisée pour coder le sous-signal en cours de décodage. En effet, les moyens d'écriture d'information n'inscrivent une telle information que si les moyens de simulation du décodage indiquent que plusieurs techniques de décodage sont acceptables pour décoder un même sous-signal. Ainsi, le système 10 peut comprendre un dispositif de codage de signaux numériques mettant en oeuvre un procédé de codage tel que décrit plus haut. Par ailleurs, I'unité centrale de traitement 100, la mémoire morte 102 et la mémoire vive 103 peuvent coopérer pour former: - des moyens d'application successive de M techniques de décodage Di à un sous-signal codé donné, qui produisent M sous-signaux "décodés" pour chaque soussignal codé;et - des moyens de lecture, dans la seconde partie du fichier contenant le signai numérique codé, d'une information permettant de sélectionner la bonne technique de décodage parmi plusieurs techniques de décodage acceptables. Les moyens d'application successive des M techniques de décodage évaluent la vraisemblance de chaque sous-signal "décodé" et commandent les moyens de lecture, pour que ces derniers ne lisent l'information qui permet de sélectionner la bonne technique de décodage que dans le cas o plusieurs techniques de décodage ont été considérées comme acceptables pour décoder un même sous-signal, à l'issue de l'évaluation de la vraisemblance des M sous- signaux "décodés". Ainsi, le système 10 peut comprendre un dispositif de décodage de signaux numériques mettant en oeuvre un procédé de décodage tel que décrit plus haut. Selon une première variante de réalisation, lors de la mise sous tension du système 10, les programmes et les techniques de codage et/ou de décodage stockés dans une des mémoires non volatiles, par exemple la mémoire morte 102, sont transférés dans une mémoire vive 103 du système , laquelle contient alors le code exécutable et les variables nécessaires au déroulement des procédés de codage et/ou de décodage de l'invention. Selon une deuxième variante de réalisation, les différentes techniques de codage et/ou de décodage susceptibles d'être utilisées peuvent être mémorisées dans des éléments de stockage différents de ceux qui stockent le code exécutable. En effet, on peut améliorer l'invention en introduisant dans le système 10 des techniques de codage et de décodage supplémentaires, soit par le réseau 113, via l'interface de communication 112, soit par l'intermédiaire d'une disquette ou support de données analogue 110. Le bus de communication 101 permet la communication entre les différentes entités comprises dans le système 10, ou reliées à celui-ci, telles que la caméra numérique 107. Cependant, la représentation du bus 101 proposée sur la figure 6 n'est nullement limitative. En particulier, I'unité centrale de traitement 100 est susceptible de communiquer des instructions à toute entité comprise dans le système 10, soit directement, soit par l'intermédiaire d'une autre entité du système 10. REVENDICATIONS 1. Procédé de codage d'un signal numérique, suivant lequel: - on décompose (20) ledit signal numérique en une pluralité de sous- signaux, - à partir d'un critère de sélection prédéterminé, on choisit de coder (38) chaque sous-signal au moyen d'une technique de codage prise parmi un nombre prédéterminé M de techniques de codage Ci, o i est un entier compris entre 1 et M, lesdites M techniques de codage étant connues en soi, de façon à produire un train de bits codés complet, et - on inscrit (40) ledit train de bits codés dans une première partie d'un fichier destiné à recevoir le signal numérique codé, caractérisé en ce que, après production d'un train de bits codés complet, - pour chaque entier i compris entre 1 et M, on simule (48) I'application, successivement à chaque sous-signal codé, d'une technique de décodage Di associée à la technique de codage Ci; et - si et seulement si, lors de ladite étape de simulation, au moins deux techniques de décodage différentes sont acceptables, au sens d'un critère de vraisemblance prédéterminé, pour décoder un même sous-signal codé, on inscrit (52) dans une seconde partie dudit fichier une information permettant de sélectionner, lors du décodage, la technique de décodage associée à la technique de codage utilisée pour coder ledit sous-signal. 2. Procédé de codage selon la revendication 1, caractérisé en ce qu'on décompose ledit signal numérique en une pluralité de sous-bandes de fréquence, elles-mêmes divisées en blocs constituant lesdits sous- signaux correspondant respectivement à ladite pluralité de sous-bandes de fréquence. 3. Procédé de codage selon la revendication 1 ou 2, caractérisé en ce que le critère de vraisemblance consiste à: - comparer la valeur de la distorsion entre un sous-signal numérique décodé et des sous-signaux voisins à un seuil prédéterminé, et - décider que le sous-signal décodé est vraisemblable si la valeur de la distorsion est inférieure ou égale audit seuil, ou - décider que le sous-signal décodé n'est pas vraisemblable si la valeur de la distorsion est strictement supérieure audit seuil. 4. Procédé de codage selon la revendication 3, dans lequel le signal numérique est un signal d'image et chaque sous-signal est un bloc de coefficients, caractérisé en ce que la valeur de la distorsion est calculée à partir de l'erreur quadratique moyenne entre deux vecteurs de coefficients situés le long de la frontière d'un ou de plusieurs blocs. 5. Dispositif de codage d'un signal numérique, comportant: - des moyens pour décomposer ledit signal numérique en une pluralité de sous- signaux, - des moyens pour choisir de coder chaque sous-signal, à partir d'un critère de sélection prédéterminé, au moyen d'une technique de codage prise parmi un nombre prédéterminé M de techniques de codage Ci, o i est un entier compris entre 1 et M, lesdites M techniques de codage étant connues en soi, de façon à produire un train de bits codés complet, et des moyens pour inscrire ledit train de bits codés dans une première partie d'un fichier destiné à recevoir ledit signal numérique codé, caractérisé en ce qu'il comporte en outre: - des moyens pour simuler, après production d'un train de bits codés complet, I'application, successivement à chaque sous-signal codé, pour chaque entier i compris entre 1 et M, d'une technique de décodage Di associée à la technique de codage Ci; et - des moyens pour inscrire dans une seconde partie dudit fichier une information permettant de sélectionner, lors du décodage, la technique de décodage associée à la technique de codage utilisée pour coder ledit signal, si et seulement si, lors de la simulation effectuée par lesdits moyens de simulation, au moins deux techniques de décodage différentes sont acceptables, au sens d'un critère de vraisemblance prédéterminé, pour décoder un même sous-signal codé. 6. Dispositif de codage selon la revendication 5, caractérisé en ce que lesdits moyens pour décomposer ledit signal numérique comportent des moyens pour décomposer ledit signal numérique en une pluralité de sous- bandes de fréquence, elles-mêmes divisées en blocs constituant lesdits sous- signaux correspondant respectivement à ladite pluralité de sous-bandes de fréquence. 7. Dispositif de codage selon la revendication 5 ou 6, caractérisé en ce que le critère de vraisemblance consiste à: - comparer la valeur de la distorsion entre un sous-signal numérique décodé et des sous-signaux voisins à un seuil prédéterminé, et - décider que le sous-signal décodé est vraisemblable si la valeur de la distorsion est inférieure ou égale audit seuil, ou - décider que le sous-signal décodé n'est pas vraisemblable si la valeur de la distorsion est strictement supérieure audit seuil. 8. Dispositif de codage selon la revendication 7, dans lequel le signal numérique est un signal d'image et chaque sous-signal est un bloc de coefficients, caractérisé en ce que la valeur de la distorsion est calculée à partir de l'erreur quadratique moyenne entre deux vecteurs de coefficients situés le long de la frontière d'un ou de plusieurs blocs. 9. Procédé de décodage d'un signal numérique codé, ledit signal codé provenant d'un signal numérique d'origine décomposé en une pluralité de sous-signaux, chaque sous-signal étant codé au moyen d'une technique de codage prise parmi un nombre prédéterminé M de techniques de codage Ci, o i est un entier compris entre 1 et M, ledit signal codé étant contenu dans une première partie d'un fichier, caractérisé en ce que, pour chaque sous-signal codé: - pour chaque entier i compris entre 1 et M, on applique (60) successivement audit sous-signal codé chaque technique de décodage Di respectivement associée à chaque technique de codage Ci; - si une seule technique de décodage est acceptable, au sens d'un critère de vraisemblance prédéterminé, on retient (68) uniquement le sous- signal décodé après application de ladite technique de décodage; - si au moins deux techniques de décodage différentes sont acceptables, au sens dudit critère de vraisemblance, on lit (64), dans une seconde partie dudit fichier, une information permettant de sélectionner, parmi les techniques de décodage acceptables, celle qui correspond à la technique de codage utilisée pour coder ledit sous- signal, puis on retient (66) uniquement le sous-signal décodé au moyen de la technique de décodage déduite de ladite information. 10. Procédé de décodage selon la revendication 9, caractérisé en ce que le critère de vraisemblance consiste à: - comparer la valeur de la distorsion entre un sous-signal numérique décodé et des sous-signaux voisins à un seuil prédéterminé, et - décider que le sous-signal décodé est vraisemblable si la valeur de la distorsion est inférieure ou égale audit seuil, ou - décider que le sous-signal décodé n'est pas vraisemblable si la valeur de la distorsion est strictement supérieure audit seuil. 11. Procédé de décodage selon la revendication 10, dans lequel le signal numérique est un signal d'image et chaque sous-signal est un bloc de coefficients, caractérisé en ce que la valeur de la distorsion est calculée à partir de l'erreur quadratique moyenne entre deux vecteurs de coefficients situés le long de la frontière d'un ou de plusieurs blocs. 12. Dispositif de décodage d'un signal numérique codé, ledit signal codé provenant d'un signal numérique d'origine décomposé en une pluralité de sous-signaux, chaque sous-signal étant codé au moyen d'une technique de codage prise parmi un nombre prédéterminé M de techniques de codage Ci, o i est un entier compris entre 1 et M, ledit signal codé étant contenu dans une première partie d'un fichier, caractérisé en ce qu'il comporte: - des moyens pour appliquer successivement à un sous-signal codé chaque technique de décodage Di respectivement associée à chaque technique de codage Ci, pour chaque entier i compris entre 1 et M; et - des moyens pour lire, dans une seconde partie dudit fichier, une information permettant de sélectionner, parmi plusieurs techniques de décodage acceptables, au sens d'un critère de vraisemblance prédéterminé, celle qui correspond à la technique de codage utilisée pour coder ledit sous- signal. 13. Dispositif de décodage selon la revendication 12, caractérisé en ce que le critère de vraisemblance consiste à: - comparer la valeur de la distorsion entre un sous-signal numérique décodé et des sous-signaux voisins à un seuil prédéterminé, et - décider que le sous-signal décodé est vraisemblable si la valeur de la distorsion est inférieure ou égale audit seuil, ou - décider que le sous- signal décodé n'est pas vraisemblable si la valeur de la distorsion est strictement supérieure audit seuil. 14. Dispositif de décodage selon la revendication 13, dans lequel le signal numérique est un signal d'image et chaque sous-signal est un bloc de coefficients, caractérisé en ce que la valeur de la distorsion est calculée à partir de l'erreur quadratique moyenne entre deux vecteurs de coefficients situés le long de la frontière d'un ou de plusieurs blocs. 15. Appareil de traitement de signaux numériques, caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre un procédé de codage selon l'une quelconque des revendications 1 à 4. 16. Appareil de traitement de signaux numériques, caractérisé en ce qu'il comporte un dispositif de codage selon l'une quelconque des revendications 5 à 8. 17. Appareil de traitement de signaux numériques, caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre un procédé de décodage selon l'une quelconque des revendications 9 à 11. 18. Appareil de traitement de signaux numériques, caractérisé en ce qu'il comporte un dispositif de décodage selon l'une quelconque des revendications 12 à 14.