Brevet FR2846832A1 — publié le 20040507

La présente invention concerne un procédé et un dispositif de modélisation de la distorsion générée par le codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique. On notera que l'invention s'applique de manière générale à une ou plusieurs images fixes ou à une séquence vidéo. Il est connu que les images et les vidéos numériques nécessitent une capacité mémoire relativement élevée lors de leur stockage. Pour cette raison, de nombreuses études ont été menées depuis plusieurs années dans le but de compresser de façon optimale de telles données numériques. D'une manière générale, les méthodes de compression de données visent à établir un compromis entre la préservation d'une qualité visuelle acceptable et la réduction de la taille des données stockées. Pour ce faire, on a par exemple cherché à optimiser la distorsion générée par le codage des images sous une contrainte de débit de codage. Cette approche se base généralement sur une modélisation débit/distorsion de la source de données (codeur vidéo ou codeur d'images fixes). Il est par exemple connu d'utiliser une telle approche dans l'algorithme de régulation de débit TMN8 décrit dans l'article "Rate control for low-delay video communications", J. Ribas-Corbera, S. Lei, Rapport Technique ITUTelecommunications Standardization sector, Video coding expert group, Document Q15-A-20, juin 1997 du standard de codage vidéo H263 version 2 (Draft text of recommendation H. 263 version 2 (H. 263+) for décision, Garry Sullivan, rapport technique ITU-T, DRAFT 21, février 1998). De tels modèles débit/distorsion permettent d'obtenir pour chaque option de codage possible une estimation du débit et de la distorsion engendrée sans avoir à effectuer un précodage des images qui s'avère coûteux en terme de calcul. L'optimisation de la distorsion générée par le codage des images sous une contrainte de débit est alors obtenue en déterminant les options de codage compatibles avec la contrainte de débit et qui minimisent la distorsion. L'utilisation de tels modèles permet donc de réduire de manière très significative la complexité des algorithmes de régulation de débit. Les modèles débit/distorsion sont très importants dans les algorithmes de régulation de débit dans la mesure où ils permettent d'envisager de réguler le débit de codage d'une séquence vidéo en temps réel en évitant d'avoir à effectuer de coûteux précodages de la séquence afin de déterminer les valeurs de distorsion et de débit pour chaque option de codage possible. Il est donc intéressant d'utiliser la régulation de débit basée sur des modèles de débit et de distorsion pour des applications telles que la visioconférence où, pour des questions d'interactivité entre les utilisateurs, ces applications ne supportent aucun temps de latence dans le codage. Les algorithmes de régulation de débit utilisent très fréquemment des modèles donnant le débit d'une image ou d'un macro-bloc de l'image en fonction de la distorsion ou, inversement, ce qui permet d'effectuer un codage avec un niveau de distorsion ou de débit fixé. On connaît un modèle de débit d'après le document US 6 256 423 au nom de Sarnoff Corporation et qui s'écrit : où Rq correspond au débit d'un macro-bloc de l'image en fonction de la distorsion S, Xq est une constante du modèle pour un paramètre de quantification Q donné et Qd est un coefficient de ce modèle. Toutefois, dans certaines applications on peut avoir intérêt à estimer la distorsion indépendamment du débit et le modèle proposé ci-dessus ne convient donc pas puisqu'il correspond à une concaténation d'un modèle de débit et d'un modèle de distorsion. On connaît par ailleurs d'après l'article "Normalized Rate-distortion Model for H.263-compatible Codecs and Its Application to Quantizer selection", de K. H. Yang, A . Jacquin, N. S. Jayant, proc. ICIP 97, un modèle de distorsion destiné à un algorithme de régulation de débit intégré dans un codeur H263 version 2. Un tel modèle s'avère efficace pour estimer la distorsion normalisée D des macro-blocs codés en mode de codage Inter en fonction de leur variance normalisée S. Le modèle de distorsion normalisée s'écrit de la façon suivante, la normalisation se faisant par rapport au paramètre de quantification QP du macrobloc considéré : la variance normalisée S des macro-blocs étant déduite de la variance S de ces macro-blocs d'après la formule suivante : La distorsion des macro-blocs pour un paramètre de quantification QP donné en fonction de la distorsion normalisée s'écrit de la façon suivante : Le modèle précité fait intervenir un septuplet de paramètres (a, b, c, d, I, m, n) qui sont définis à partir de séquences d'entraînement. On obtient ainsi un septuplet de paramètres génériques qui peuvent être utilisés quelle que soit la séquence vidéo à coder. Un nombre de paramètres aussi élevé permet, en théorie, d'accroître la précision du modèle d'estimation de la distorsion mais limite toutefois les possibilités de rendre ce modèle adaptatif. En effet, si les paramètres ainsi définis devaient être réévalués en cours de codage, cela engendrerait alors un coût important en terme de calcul. Par ailleurs, dans la mesure où il existe une grande diversité de séquences vidéo (séquences à fort mouvement, séquences à faible mouvement, séquences très texturées, séquences peu texturées, ...), la modélisation d'un tel ensemble de séquences potentiellement très différentes avec un même jeu de paramètres paraît difficile à réaliser. Par conséquent, on peut estimer qu'un modèle adaptatif adapté à une séquence donnée permettra toujours d'obtenir de meilleures estimations de la distorsion qu'un modèle générique. En outre, on connaît d'après le document US 6 119 991 au nom de Sharp Laboratories of America un modèle de distorsion moins complexe pour lequel le problème de l'adaptativité des paramètres du modèle ne se pose pas ou en tout cas très peu. Ce modèle fournit la distorsion pour un ensemble N de macro-blocs en fonction du paramètre de quantification du macro-bloc considéré QP, et s'écrit de la façon suivante : où a, est une pondération pouvant prendre en compte les caractéristiques du macro-bloc. Cependant, dans ce document il n'est pas prévu de méthode pour modifier le paramètre [alpha]i et ce dernier est fixé à la valeur 1. On notera par conséquent que le modèle de distorsion proposé ne prend pas en compte le contenu des macro-blocs de données. De plus, ce modèle fournit des résultats inférieurs à celui du modèle précité qui fait intervenir un opérateur logarithmique, en terme de qualité d'estimation de la distorsion. En résumé, il existe ainsi deux types de modèles de distorsion : - les modèles de conception simple pour lesquels l'adaptativité des paramètres ne pose aucun problème mais dont la précision reste insuffisante, et - les modèles estimant de façon précise la distorsion mais dont la nature complexe limite fortement le caractère adaptatif. Compte tenu de ce qui précède, il serait intéressant de trouver un procédé et un dispositif de modélisation de la distorsion générée par le codage d'au moins une image numérique qui permettent d'améliorer le compromis entre l'adaptativité du modèle et la précision de l'estimation de la distorsion fournie par ce modèle. La présente invention a ainsi pour objet un procédé de modélisation de la distorsion générée par le codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique, caractérisé en ce que le procédé comporte une étape d'application, à des informations représentatives d'au moins une mesure d'énergie de l'image, du modèle d'estimation de la distorsion pondéré par au moins un opérateur exponentiel. Corrélativement, l'invention vise également un dispositif de modélisation de la distorsion générée par le codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique, caractérisé en ce que le dispositif comporte des moyens d'application, à des informations représentatives d'au moins une mesure d'énergie de l'image, du modèle d'estimation de la distorsion pondéré par au moins un opérateur exponentiel. En pondérant ainsi l'opérateur logarithmique par un opérateur exponentiel, on va réduire la complexité du modèle d'estimation de la distorsion faisant intervenir l'opérateur logarithmique, sans toutefois perdre la précision dans l'estimation des valeurs de distorsion fournies par ce modèle. Ainsi, par exemple, la pondération par un opérateur exponentiel de l'opérateur logarithmique du modèle exposé dans l'article "Normalized Ratedistortion Model for H.263-compatible Codées and Its Application to Quantizer sélection", de K. H. Yang, A . Jacquin, N. S. Jayant, proc. ICIP 97, fait passer le nombre de paramètres définissant ce modèle de sept à trois. Par ailleurs, la réduction de la complexité du modèle obtenu par l'invention facilite l'adaptation de ce modèle à une image fixe ou à une séquence vidéo particulière, ou bien à une méthode de codage ou de transcodage modifiant la résolution spatiale de l'image ou de la séquence originale, ou la résolution temporelle de la séquence originale. On notera que lorsque l'on parle de codage d'au moins une image numérique au sens de la présente invention, le terme codage englobe également la notion de transcodage. Selon une caractéristique, le modèle pondéré d'estimation de la distorsion faisant intervenir un n-uplet de paramètres, le procédé comporte une étape de recherche d'un n-uplet de paramètres permettant de minimiser la distance entre, d'une part, un nuage de points représentant la distorsion réelle mesurée d'un ensemble de données de l'image en fonction d'une mesure de leur énergie et, d'autre part, l'ensemble des points distorsion-mesure d'énergie obtenus en appliquant le modèle pondéré d'estimation de la distorsion. On adapte ainsi le modèle pondéré de distorsion selon l'invention à une image fixe ou à une séquence vidéo donnée, ce qui fournira une meilleure estimation des valeurs de distorsion qu'un modèle générique, c'est-à-dire un modèle qui n'est pas adapté à une image fixe ou à une séquence vidéo donnée. Selon une autre caractéristique, le procédé selon l'invention comporte une étape préalable de détermination, pour chaque paramètre du n-uplet, d'un espace de recherche délimité par des bornes qui sont obtenues à partir d'un ensemble d'images dites d'entraînement représentatives de l'hétérogénéité des images à traiter. La détermination d'un tel espace de recherche permet de simplifier l'adaptation du modèle pondéré en terme de calculs à effectuer et de rendre plus rapide cette adaptation. Selon une autre caractéristique, le procédé comporte une étape de division du nuage de points distorsion-mesure d'énergie en plusieurs sousnuages représentés chacun par un point affecté des valeurs moyennes de la distorsion et de la mesure d'énergie et appelé représentant de tous les points du sous-nuage considéré, la distance à minimiser étant alors prise entre, d'une part, les points représentants des sous-nuages et, d'autre part, l'ensemble des points distorsion-mesure d'énergie obtenus par le modèle pondéré et correspondant aux moyennes des énergies de chaque sous-nuage. Cette caractéristique permet de réduire davantage le volume de calculs à effectuer. Selon une caractéristique, le procédé comporte une étape d'adaptation du modèle pondéré d'estimation de la distorsion en fonction d'un ou de plusieurs paramètres de codage caractérisant une méthode de codage utilisée pour le codage de l'image. On détermine ainsi le n-uplet de paramètres du modèle en fonction de différents paramètres de codage de la méthode utilisée, ce qui fournira une meilleure estimation des valeurs de distorsion qu'un modèle générique. Par exemple, la méthode de codage utilisée fait intervenir une modification de la résolution spatiale de l'image à coder (image(s) ou séquence vidéo), ce qui n'est pas prévu dans l'art antérieur. Par exemple, la méthode de codage utilisée pour le codage d'une séquence vidéo fait intervenir une modification de la résolution temporelle de la séquence vidéo à coder, ce qui n'est pas prévu dans l'art antérieur. Selon une caractéristique, la variance est une mesure d'énergie de l'image. Avantageusement, la variance peut être calculée non pas sur l'image complètement décodée mais sur l'image partiellement décodée avant que l'on ait effectué la décomposition spatio-fréquentielle inverse de celle pratiquée au codage (DCT). Ceci représente un gain de temps non négligeable. Selon une autre caractéristique, le modèle d'estimation de la distorsion s'applique à des informations représentatives de la variance d'un bloc de donnés de l'image. On obtient ainsi une information de distorsion de l'image plus précise que si l'on ne tenait compte que d'une variance globale de l'image dans le cas où l'image est hétérogène. Selon une caractéristique, le modèle d'estimation de la distorsion pondéré s'écrit : où a, ss, y sont des paramètres du modèle et S est la variance d'un bloc de données de l'image, S étant la variance normalisée et s'écrivant : où QP représente un paramètre de quantification du bloc de données considéré. Comme annoncé plus haut, le modèle ainsi pondéré ne comporte que trois paramètres, ce qui en réduit la complexité par rapport aux modèles d'estimation de la distorsion de l'art antérieur précités et qui comportaient jusqu'à sept paramètres. Selon une première application, l'invention vise également un procédé de sélection d'une méthode parmi un ensemble de méthodes de transcodage d'au moins une image numérique, l'image étant susceptible d'être transférée entre au moins deux appareils de communication par l'intermédiaire d'un réseau de communication, caractérisé en ce que le procédé comporte les étapes suivantes : - pour chaque méthode de transcodage, obtention d'une valeur de distorsion à partir d'un modèle d'estimation de la distorsion en tenant compte de ladite méthode de transcodage, le modèle de distorsion comportant au moins un opérateur logarithmique pondéré par au moins un opérateur exponentiel et étant appliqué à des informations représentatives d'au moins une mesure d'énergie de l'image, - sélection d'une méthode de transcodage en fonction des différentes valeurs de distorsion obtenues pour l'ensemble des méthodes de transcodage. Corrélativement, l'invention vise également un dispositif de sélection d'une méthode parmi un ensemble de méthodes de transcodage d'au moins une image numérique, l'image étant susceptible d'être transférée entre au moins deux appareils de communication par l'intermédiaire d'un réseau de communication, caractérisé en ce que le dispositif comporte : - pour chaque méthode de transcodage, des moyens d'obtention d'une valeur de distorsion à partir d'un modèle d'estimation de la distorsion en tenant compte de ladite méthode de transcodage, le modèle de distorsion comportant au moins un opérateur logarithmique pondéré par au moins un opérateur exponentiel et étant appliqué à des informations représentatives d'au moins une mesure d'énergie de l'image, - des moyens de sélection d'une méthode de transcodage en fonction des différentes valeurs de distorsion obtenues pour l'ensemble des méthodes de transcodage. D'une manière générale, l'utilisation d'un modèle de distorsion pour évaluer la qualité d'un ensemble de méthodes de transcodage permet de réduire de manière significative la complexité de calcul nécessaire à l'évaluation de la qualité envisagée dans l'art antérieur. De même, l'espace mémoire nécessaire à l'évaluation de la qualité des méthodes de transcodage est également réduit par rapport à celui nécessaire dans l'art antérieur. Par ailleurs, la sélection d'une méthode de transcodage parmi un ensemble de méthodes de transcodage selon l'invention prend en compte les données numériques constitutives de l'image et qui sont susceptibles d'être transférées sur le réseau de communication, contrairement à l'art antérieur. Ceci est particulièrement avantageux dans la mesure où la demanderesse s'est aperçue que, selon les données considérées, l'impact de la méthode de transcodage sur la qualité peut considérablement varier. Ainsi, par exemple, une séquence de données vidéo où les mouvements sont très nombreux et de grande amplitude subira une réduction très marquée de la qualité lors de la mise en #uvre d'une méthode de transcodage basée sur la réduction de la fréquence temporelle. Au contraire, cette même méthode appliquée à une séquence vidéo plus statique aura beaucoup moins d'impact sur la qualité. L'utilisation d'un modèle de distorsion comportant un opérateur logarithmique pondéré par un opérateur exponentiel présente, dans ce contexte, l'avantage de réduire la complexité de l'adaptation du modèle à différentes méthodes de transcodage. Selon une deuxième application, l'invention vise en outre un procédé de régulation du débit de codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion générée par le codage de l'image, le modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique, caractérisé en ce que le procédé comporte une étape d'application, à des informations représentatives d'au moins une mesure d'énergie de l'image, du modèle d'estimation de la distorsion pondéré par au moins un opérateur exponentiel. Corrélativement, l'invention vise également un dispositif de régulation du débit de codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion générée par le codage de l'image, le modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique, caractérisé en ce que le dispositif comporte des moyens d'application, à des informations représentatives d'au moins une mesure d'énergie de l'image, du modèle d'estimation de la distorsion pondéré par au moins un opérateur exponentiel. L'invention concerne également un appareil de communication comportant un des dispositifs tels que brièvement exposés ci-dessus. Selon un autre aspect, l'invention vise aussi : - un moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé selon l'invention tel que celui exposé brièvement ci-dessus, et - un moyen de stockage d'informations amovible, partiellement ou totalement, lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé selon l'invention tel que celui brièvement exposé ci-dessus. Selon encore un autre aspect, l'invention vise un programme d'ordinateur chargeable dans un appareil programmable, comportant des séquences d'instructions ou portions de code logiciel pour mettre en #uvre des étapes du procédé selon l'invention tel que brièvement exposé ci-dessus, lorsque ledit programme d'ordinateur est chargé et exécuté sur l'appareil programmable. Les caractéristiques et avantages relatifs au dispositif, à l'appareil de communication comportant un tel dispositif, aux moyens de stockage d'informations et au programme d'ordinateur étant les mêmes que ceux exposés ci-dessus concernant le procédé selon l'invention, ils ne seront pas rappelés ici. D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description qui va suivre, faite en référence aux dessins annexés, sur lesquels : - la figure 1a représente un algorithme de traitement de données selon l'invention ; - la figure 1 b est un algorithme détaillant les opérations effectuées à l'étape S3 de la figure 1a ; - la figure 1 c est un algorithme détaillant les opérations (détermination de distance) effectuées à l'étape S29 de la figure 1 b ; - la figure 1 d illustre le changement de la résolution spatiale/temporelle apporté à une séquence vidéo originale et l'adaptation proposée pour l'estimation de la distorsion ; - la figure 2a représente de manière schématique une architecture de communication de type client-serveur dans laquelle l'invention peut être mise en #uvre ; - la figure 2b représente un algorithme de traitement de données vidéo selon l'invention ; - la figure 3a représente un algorithme de codage de données vidéo ; - la figure 3b représente un algorithme de décodage de données vidéo; - la figure 4a représente un algorithme de sélection d'une méthode de transcodage de données vidéo selon l'invention et qui correspond à l'étape E208 de l'algorithme de la figure 2b ; - la figure 4b représente un algorithme de détermination des paramètres du modèle de débit ; - la figure 5 représente un algorithme de régulation du débit de codage d'une ou de plusieurs images dans lequel l'invention peut être mise en #uvre ; - la figure 6 est un mode de réalisation d'un appareil programmable mettant en #uvre l'invention. L'invention propose de modéliser la distorsion générée par le codage d'une ou de plusieurs images numériques de façon plus efficace que dans l'art antérieur. Pour ce faire, on part d'un modèle d'estimation de la distorsion existant dont la forme générale de la courbe modélisant les variations de la distorsion en fonction d'informations représentatives d'une ou de plusieurs mesures d'énergie de l'image (par exemple, la variance) est celle d'un logarithme. Le modèle d'estimation de la distorsion connu est par exemple celui qui a été cité plus haut et qui est extrait de l'article "Normalized Rate-distortion Model for H.263-compatible Codées and Its Application to Quantizer selection", de K. H. Yang, A . Jacquin, N. S. Jayant, proc. ICIP 97 et qui s'écrit : où D représente la distorsion normalisée des macro-blocs de l'image codés en mode de codage Inter en fonction de leur variance normalisée S, la normalisation étant effectuée par rapport au paramètre de quantification QP du macro-bloc considéré. On notera également que la variance normalisée S des macro-blocs est déduite de la variance S de ceux-ci à l'aide de la formule suivante : La distorsion des macro-blocs pour un paramètre de quantification QP donné en fonction de la distorsion normalisée est fournie par l'équation suivante : A partir de ce modèle connu, l'invention propose de pondérer l'opérateur logarithmique de ce modèle par au moins un opérateur exponentiel comme indiqué dans la formule ci-dessous : où a, ss, y sont les paramètres du modèle, S représentant la variance d'un bloc de données de l'image qui est, dans l'exemple considéré, un macro-bloc de données. En pondérant ainsi par un opérateur exponentiel le modèle d'estimation de la distorsion connu faisant intervenir un opérateur logarithmique, on réduit la complexité de ce modèle puisque seuls trois paramètres sont nécessaires à la définition du modèle au lieu de sept pour le modèle connu. Ce modèle est valide pour les macro-blocs codés en mode de codage Intra et en mode de codage Inter. Cependant, comme on le verra par la suite, le processus de codage de ces deux modes est très différent et un seul n-uplet de paramètres (en l'espèce il s'agit d'un triplet) ne peut donc suffire. Ainsi, pour une image ou une séquence vidéo donnée et une méthode de codage donnée, deux triplets de paramètres dans l'exemple considéré seront nécessaires : l'un des triplets sera spécifique au mode de codage Intra ([alpha]INTRA , ssINTRA , [gamma]INTRA), l'autre triplet étant spécifique du mode de codage Inter ([alpha]INTER , ssINTER , [gamma]INTER). On verra dans la suite de la description la manière dont le modèle précité faisant intervenir les paramètres a, ss, y sera adapté à une image ou une séquence vidéo donnée et à une méthode de codage donnée. Le principe exposé ci-dessus de modélisation de la distorsion générée par le codage d'une ou de plusieurs images numériques (images fixes ou séquence vidéo) peut trouver de nombreuses applications. Une première de ces applications consiste à utiliser ce modèle pour sélectionner une méthode de transcodage d'au moins une image numérique parmi un ensemble de méthodes de transcodage, dans une architecture de communication où l'image ou les images en question sont susceptibles d'être transférées entre au moins deux appareils de communication (machine client et serveur) par l'intermédiaire d'un réseau de communication. L'utilisation du principe de modélisation exposé ci-dessus permet, dans cette application, de réduire la complexité du processus d'adaptation du modèle d'estimation de la distorsion à différentes méthodes de transcodage. Dans cette application, un ensemble de séquences vidéo est par exemple stocké sur un serveur et ces séquences peuvent être demandées par des utilisateurs à partir de machines client distantes sous la forme de requêtes utilisateur. De manière générale, les machines client disposent de capacités de traitement et/ou de stockage et/ou d'affichage limitées qui les empêchent de recevoir les séquences vidéo et de les visualiser sous leur format initial. Cependant, l'invention reste malgré tout avantageuse lorsque ces machines client disposent de capacités de traitement et/ou de stockage et/ou d'affichage plus importantes. En cas de capacités de traitement et/ou de stockage et/ou d'affichage limitées, il devient nécessaire d'adapter les séquences vidéo avant de les transmettre du serveur à la ou aux machines client. On notera que l'adaptation des séquences vidéo dépend de chacune des séquences à transmettre, ce qui signifie que pour une séquence vidéo donnée il faut obtenir la meilleure qualité perçue par l'utilisateur d'une machine client en tenant compte des caractéristiques de celle-ci. Afin de choisir parmi différentes méthodes de transcodage de la séquence vidéo donnée la méthode qui fournira la meilleure qualité possible, il est nécessaire de disposer pour chaque méthode de transcodage et pour chaque vidéo disponible sur le serveur d'une estimation de la qualité engendrée par la méthode de transcodage considérée. L'obtention de cette information de qualité pour la méthode de transcodage considérée est fondée sur l'utilisation de modèles d'estimation du débit et de la distorsion. Ainsi, partant du modèle d'estimation de la distorsion selon l'invention, on cherchera à obtenir pour chaque séquence vidéo disponible au serveur deux triplets de paramètres définissant le modèle, à savoir un triplet pour le codage en mode Intra et un triplet pour le codage en mode Inter, pour chaque méthode de transcodage envisagée. L'adaptation du modèle aux séquences vidéo est effectuée en dehors des connexions entre la machine client et le serveur et, à la fin de ce processus d'adaptation, chaque séquence vidéo disponible au serveur sera associée à un nombre de couples de triplets de paramètres égal au nombre de méthodes de transcodage pouvant être mises en #uvre par le serveur. Ainsi, lorsqu'une machine client transmettra au serveur une requête demandant une séquence vidéo donnée, le serveur comparera toutes les méthodes de transcodage qui sont compatibles avec les caractéristiques de la machine client. Ensuite, la séquence vidéo demandée sera analysée afin d'obtenir des informations représentatives d'une ou de plusieurs mesures d'énergie de l'image (en l'espèce, il s'agit de la variance de l'image ou bien d'un bloc de données afin d'obtenir une plus grande précision). Les modèles d'estimation du débit et de la distorsion évoqués ci-dessus seront alors appliqués à ces informations afin d'obtenir une estimation de la qualité engendrée par chaque méthode de transcodage. Le processus prévoit ensuite de sélectionner la méthode de transcodage qui rend la qualité maximale. Comme indiqué ci-dessus, l'adaptation des modèles et, plus particulièrement, du modèle d'estimation de la distorsion nécessite de rechercher, pour une séquence vidéo donnée et pour chaque méthode de transcodage envisagée, les deux triplets de paramètres les mieux adaptés. Ce processus de recherche sera décrit plus loin en référence aux figures 1a, 1b et 1c. Suivant une première approche, ce processus pourra être exécuté de manière itérative sur chaque séquence vidéo disponible au serveur. Toutefois, suivant une deuxième approche, on pourra exécuter de manière itérative ce processus de recherche de triplets de paramètres à partir d'un ensemble de séquences d'entraînement et pour chaque méthode de transcodage considérée. On obtiendra ainsi, pour chaque séquence d'entraînement et pour chaque méthode de transcodage, un couple de triplets de paramètres du modèle d'estimation de la distorsion selon l'invention. Ceci sera effectué en dehors des connexions établies entre le serveur et la machine client considérée. On effectuera ensuite une moyenne sur les triplets de paramètres ainsi obtenus et ce, pour chaque mode de codage considéré (Intra et Inter). On obtiendra ainsi un modèle générique d'estimation de la distorsion qui ne sera donc pas adapté à la séquence vidéo demandée par l'utilisateur. Cette approche présente l'avantage de réduire le volume de calcul à effectuer pour rechercher la méthode de transcodage qui rend la qualité maximale. Suivant les cas de figure envisagés, l'une ou l'autre des approches précitées pourra être adoptée. On va maintenant décrire en référence aux figures 1a, 1 b et 1 c le processus de recherche des triplets de paramètres (a, ss, y) pour chaque mode de codage envisagé. Ceci va permettre d'expliquer la manière dont le modèle de distorsion selon l'invention est adapté à une image ou une séquence vidéo donnée et à une méthode de codage donnée. Cette recherche débute par le codage effectif de la séquence vidéo considérée et les paramètres du modèle d'estimation de la distorsion qui vont être déterminés seront adaptés à cette séquence et à la méthode de codage (selon la première application de l'invention il s'agit d'un transcodage) envisagée. Le codage d'une séquence vidéo, de même que son décodage, seront décrits ultérieurement en référence aux figures 3a et 3b. On notera que le processus de recherche du triplet de paramètres qui sera explicité plus loin est valable quelle que soit l'application de l'invention envisagée. Ce processus sera décrit dans un premier temps pour une séquence vidéo codée en respectant la résolution spatiale et la résolution temporelle de la séquence vidéo originale. Il sera ensuite expliqué comment le processus est modifié lorsque la méthode de codage envisagée modifie la résolution spatiale ou la résolution temporelle de la séquence vidéo originale. Dans l'exemple de réalisation qui va suivre, on considère trente images d'une séquence vidéo qui ont été codées/décodées et on va chercher deux triplets de paramètres (a, ss, y) du modèle, l'un spécifique aux macro-blocs codés en mode Inter et l'autre spécifique aux macro-blocs codés en mode Intra. Excepté le mode de codage des macro-blocs qui sera spécifique selon les macro-blocs envisagés, le processus de recherche des paramètres sera le même. On considérera dans la suite l'exemple des macro-blocs codés en mode Inter, le principe s'en déduit aisément pour les macro-blocs codés en mode Intra. L'algorithme de recherche des paramètres du modèle sera exécuté dès qu'un nombre suffisant d'images ont été codées/décodées selon les algorithmes de codage et de décodage qui seront explicités ultérieurement. On a vu ci-dessus que le nombre d'images suffisant est par exemple égal à trente. Dès qu'une image est décodée, on calcule pour chaque macro-bloc de cette image sa valeur de distorsion en calculant l'erreur quadratique moyenne entre les macro-blocs de l'image originale et ceux de l'image codée/décodée. La variance de chaque macro-bloc de l'image considérée est calculée avant l'étape de quantification durant le processus de codage. Les valeurs de la variance et de la distorsion de chaque macro-bloc sont stockées dans un tableau TAB formant un ensemble de points qui sera par la suite appelé nuage de points. Le nuage de points représentant la distorsion réelle mesurée d'un ensemble de données de l'image (blocs de données qui sont ici des macro- blocs) en fonction d'une mesure de leur énergie (par exemple leur variance). L'adaptation du modèle à la séquence de données originale considérée et à la méthode de codage envisagée consiste à déterminer le triplet de paramètres qui permettra de représenter au mieux la relation entre la distorsion et la variance. Dans l'exemple considéré, le triplet de paramètres que l'on recherche est celui qui permettra de minimiser la distance entre, d'une part, le nuage de points représentant la distorsion réelle mesurée d'un ensemble de blocs de données (macro-blocs) de l'image en fonction de leur variance et, d'autre part, l'ensemble des points distorsion/variance obtenus en appliquant le modèle d'estimation de la distorsion selon l'invention. La recherche de cette distance minimale peut s'écrire de la façon suivante : où D(S,,QP,) est la distorsion fournie par le modèle pour une variance S, et un paramètre de quantification QPi, D,(S,,QP,) est la distorsion réelle pour un macro-bloc donné et Np est le nombre de macro-blocs considérés dans le processus de minimisation (nombre de points distorsion/variance). Dans la mesure où tous les macro-blocs sont quantifiés de la même manière, le paramètre de quantification QP@ est commun à tous les macro-blocs et est égal à QP. Bien que cela ne soit nullement obligatoire, on peut malgré tout chercher à réduire la complexité du processus de minimisation de la distance précitée en limitant l'espace de recherche du triplet de paramètres. On peut ainsi déterminer un espace de recherche délimité par des bornes pour chacun des trois paramètres a, ss, y qui seront alors recherchés dans les intervalles suivants : La détermination de ces trois intervalles est effectuée à partir d'un ensemble d'images ou de séquences vidéo dites d'entraînement qui sont représentatives de l'hétérogénéité des images ou séquences à traiter. En ce qui concerne les séquences vidéo, l'ensemble des séquences d'entraînement comporte par exemple des séquences comportant peu de mouvement et d'autres caractérisées par un mouvement important, des séquences peu texturées et d'autres davantage texturées... Il convient de noter que cette étape de détermination préalable d'un espace de recherche limité ne sera effectuée qu'une seule fois en dehors du processus de recherche des paramètres pour une image ou une séquence vidéo donnée. On va maintenir décrire en référence à la figure 1a le processus de limitation de l'espace de recherche. La figure 1a illustre un algorithme comportant différentes instructions ou portions de code logiciel correspondant à des étapes du procédé selon l'invention. Le programme informatique qui est basé sur cet algorithme est mémorisé dans l'appareil 1 de la figure 2a et dans l'appareil programmable de la figure 6. L'exécution de ce programme informatique permet ainsi de mettre en #uvre le procédé selon l'invention. L'algorithme de la figure 1a comporte une première étape S1 au cours de laquelle on initialise chaque intervalle de recherche pour chacun des trois paramètres considérés à l'intervalle [0, 100]. Au cours de l'étape suivante S2, on initialise une variable k à la valeur 0, cette variable servant au décompte des K séquences d'entraînement envisagées. Au cours de l'étape suivante S3, on procède à la recherche du triplet de paramètres (a, ss, y) pour la séquence d'entraînement d'ordre k. Il convient de noter que l'on a choisi ici de considérer le cas d'une séquence vidéo, mais le principe reste bien entendu applicable au cas d'une seule ou de plusieurs images fixes qui ne constituent pas une séquence vidéo. Le processus de recherche de ces paramètres sera explicité ultérieurement en référence aux figures 1 b et 1 c. L'algorithme comporte ensuite une étape S4 de stockage des paramètres ainsi déterminés. L'étape suivante S5 prévoit d'effectuer un test sur la valeur de la variable k afin de vérifier si toutes les séquences d'entraînement ont bien été prises en considération. Dans la négative, l'étape S5 est suivie d'une étape S6 qui incrémente d'une unité la variable k des séquences d'entraînement et cette étape est alors suivie de l'étape S3 déjà évoquée ci-dessus. Au contraire, lorsque toutes les séquences d'entraînement ont été prises en considération dans cet algorithme, alors l'étape S5 est suivie d'une étape S7 au cours de laquelle on vérifie la validité des bornes des intervalles de recherche pour les paramètres considérés. Les bornes sont considérées comme valides si aucun des paramètres qui ont été déterminés à l'étape S3 n'a atteint l'une de ces bornes. Dans cette hypothèse, l'étape S7 est suivie d'une étape S8 au cours de laquelle on procède au stockage des bornes ainsi validées qui prennent les valeurs suivantes : Au contraire, lorsque les bornes sont considérées comme non valides, alors l'étape S7 est suivie d'une étape S9 au cours de laquelle de nouvelles bornes sont déterminées. Lors de cette étape, chaque borne qui a été atteinte est augmentée de la valeur 1 si c'est une borne supérieure de l'intervalle ou diminuée d'une valeur 1 si c'est une borne inférieure. L'étape S9 est ensuite suivie de l'étape S2 déjà décrite ci-dessus. L'algorithme de la figure 1b comporte différentes instructions ou portions de code logiciel correspondant à des étapes du procédé selon l'invention. Plus particulièrement, cet algorithme concerne la détermination des trois paramètres a, ss, y mentionnée à l'étape S3 de l'algorithme de la figure 1a. Le programme informatique qui est basé sur cet algorithme est stocké dans l'appareil 1 de la figure 2a et dans l'appareil programmable de la figure 6. L'exécution de ce programme permet de mettre en #uvre le procédé selon l'invention. L'algorithme comporte une première étape S20 d'initialisation du paramètre a à la borne inférieure de son intervalle de recherche à savoir, dans l'exemple considéré, la valeur amax/100. Au cours de l'étape suivante S21, il est prévu d'effectuer un test afin de déterminer si le paramètre a est inférieur ou égal à la borne supérieure, [alpha]max, de son intervalle de recherche. Dans la négative, l'étape S21 est suivie d'une étape S22 qui met fin à l'agorithme. Au contraire, lorsque a est inférieur ou égal à la borne supérieure de son intervalle de recherche, alors l'étape suivante S23 prévoit d'initialiser le paramètre p à la valeur de la borne inférieure de son intervalle de recherche à savoir, dans l'exemple considéré, la valeur pmax/100. Au cours de l'étape suivante S24, on procède à un test afin de déterminer si le paramètre p est inférieur ou égal à la borne supérieure de son intervalle de recherche, ssmax, Dans la négative, on passe à l'étape suivante S25 qui prévoit d'incrémenter la valeur du paramètre a. Dans l'exemple considéré, le pas d'incrémentation de ce paramètre est fixé à la valeur amax/100. L'étape S25 est ensuite suivie de l'étape S21 déjà décrite ci-dessus. Au contraire, lorsque le paramètre p est inférieur ou égal à la borne supérieure de son intervalle de recherche, alors l'étape S24 est suivie d'une étape S26. Au cours de cette étape, il est prévu d'initialiser le paramètre y à la valeur de la borne inférieure de son intervalle de recherche, à savoir, dans l'exemple considéré, la valeur [gamma]max/1 00. Au cours de l'étape suivante S27, il est prévu d'effectuer un test afin de déterminer si le paramètre y est inférieur ou égal à la borne supérieure de son intervalle de recherche, ymax. Dans la négative, l'étape S27 est suivie d'une étape S28 au cours de laquelle on incrémente le paramètre p suivant un pas d'incrémentation qui, dans l'exemple considéré est fixé à la valeur pmax/100. Cette étape est ensuite suivie de l'étape S24 déjà décrite ci-dessus. Au contraire, si le paramètre y est inférieur ou égal à la borne supérieure de son intervalle de recherche, alors l'étape S27 est suivie d'une étape S29. Au cours de cette étape, on détermine la distance entre les points du nuage de points mentionné plus haut et l'ensemble des points obtenus en appliquant le modèle d'estimation de la distorsion selon l'invention. Cette étape va être détaillée ci-après en référence à la figure 1 c. Consécutivement à l'étape S29, l'étape S30 prévoit d'incrémenter le paramètre y suivant un pas d'incrémentation qui, dans l'exemple considéré, est fixé à la valeur ymax/100. Cette étape est ensuite suivie de l'étape S27 déjà décrite ci-dessus. On va maintenant décrire en référence à la figure 1 c les opérations effectuées à l'étape S29 de l'algorithme de la figure 1 b. Cet algorithme illustre le processus mis en #uvre pour la détermination de la distance entre les points représentants des sous-nuages et les points distorsion moyenne/variance moyenne obtenus par le modèle d'estimation de la distorsion selon l'invention, pour un triplet de paramètres donnés. L'algorithme de la figure 1 c comporte différentes instructions ou portions de code logiciel correspondant à des étapes du procédé selon l'invention. Le programme informatique basé sur cet algorithme est stocké dans l'appareil 1 de la figure 2a et dans l'appareil programmable de la figure 6. L'exécution de ce programme permet ainsi de mettre en #uvre le procédé selon l'invention. L'algorithme débute par une étape S39 d'initialisation des variables n et Icumul à la valeur 0. La variable n servira au décompte des Ni points qui seront traités dans cet algorithme et la variable Icumul correspondra à la somme des distances entre les points. On notera toutefois qu'au lieu de calculer la distance entre chaque point du nuage de points à chaque point obtenu par le modèle de distorsion selon l'invention, il est possible de simplifier les opérations en divisant le nuage de points distorsion réelle / variance réelle en plusieurs sous-nuages comme le prévoit l'étape S40 de l'algorithme. Cette étape supplémentaire représente une amélioration par rapport au processus de calcul de distance minimale qui ne comporterait pas cette étape. Pour ce faire, le nombre de sous-nuages N, est fixé suivant un critère de réduction de la complexité calculatoire considérée. Dans l'exemple considéré, ce nombre est par exemple égal à 20. On notera que chaque sous-nuage contient le même nombre de points Np/Ni,, où le nombre Np représente le nombre de points distorsion/variance du nuage de points considéré. On obtient les sous-nuages en parcourant l'ensemble des Np points représentés par des coordonnées de distorsion, variance dans le sens des variances croissantes. Lorsqu'un nombre Np/Ni de points ont été trouvés, alors un sousnuage est constitué et l'on recommence à dénombrer les points du nuage de points restants à partir de la variance courante en vue de constituer le sousnuage suivant. Chaque sous-nuage de points est ensuite représenté par la variance moyenne et la distorsion moyenne calculées sur les points de ce sous-nuage et ces valeurs moyennes correspondent alors, pour chaque sous-nuage, à un point appelé point représentant de ce sous-nuage. Ainsi, on déterminera ensuite, comme on le verra à l'étape ultérieure S43, la distance entre, d'une part, les points représentants des N, sous-nuages obtenus et, d'autre part, l'ensemble des points distorsion/variance obtenus par le modèle et correspondant aux moyennes des énergies de chaque sousnuage. Ainsi, l'algorithme de recherche des paramètres est moins complexe à mettre en #uvre que si un calcul exhaustif de la distance de chaque point du nuage distorsion/variance à chaque point obtenu par le modèle devait être effectué. Au cours de l'étape suivante S41, un test est pratiqué afin de déterminer si la variable n est inférieure à la valeur N, . Dans la négative, cette étape est suivie d'une étape S42 qui met fin à l'exécution de l'algorithme de la figure 1 c et permet le changement d'un ou de plusieurs paramètres, comme le prévoient l'étape S30 et les étapes suivantes de la figure 1 b. Lorsque le résultat du test pratiqué à l'étape S41 est positif, alors cette étape est suivie d'une étape S43 au cours de laquelle on applique le modèle de distorsion normalisée selon l'invention à la variance Sn du sous-nuage de points considéré. On détermine ensuite la distance ln donnée par la formule suivante : 1n = #D (QP,Sn)-Dn(QP,Sn)#, où D(QP,Sn) et Dn(QP,Sn) sont respectivement la distorsion modélisée et la distorsion du représentant du sous-nuage de points pour la variance moyenne Sn de ce sous nuage de points. Au cours de l'étape suivante S44, on effectue la somme de la distance Icumul et de la distance In qui a été déterminée à l'étape précédente. Au cours de l'étape suivante S45, on effectue une comparaison de la distance cumulée courante Icumul obtenue à l'étape S44 avec la valeur minimale de la distance cumulée qui a été déterminée avec un triplet de paramètres précédent. Dans le cas où la distance cumulée courante est supérieure à la distance cumulée minimale Imin, et où [alpha] # [alpha]max/100 ou ss # ssmax/100 ou [gamma] # [gamma]max/100, alors l'étape S45 est suivie d'une étape S46 qui met fin à la détermination de la distance et permet de prendre en considération de triplet de paramètres suivant. Au contraire, si Icumul est inférieur à Imin ou si [alpha] = [alpha]max/100 et ss = ssmax/100 et [gamma]= [gamma]max/100 (première itération de l'algorithme), alors l'étape S45 est suivie d'une étape S47. Au cours de cette étape, on effectue un test afin de vérifier si la distance cumulée a bien été déterminée sur les Ni points représentants des sous-nuages. Dans la négative, l'étape S47 est suivie d'une étape S48 qui prévoit d'incrémenter d'une unité la variable n afin de prendre en considération le point représentant du sous-nuage suivant. Cette étape est ensuite est suivie de l'étape S41 déjà décrite cidessus. Si, au contraire, les Ni points représentants ont été pris en compte dans cet algorithme, alors on passe à l'étape S49 qui prévoit de stocker les valeurs des paramètres courants a, ss, y dans les variables aopt, ssopt et yopt. Au cours de cette étape, la valeur minimale Imin de la distance cumulée ,cumul obtenue avec le triplet de paramètres précédent prend la valeur de la distance cumulée courante qui vient d'être déterminée. Ceci met fin à l'algorithme de la figure 1 c. Il convient de noter que ce processus est ensuite exécuté de nouveau pour les macro-blocs codés suivant le mode de codage Intra. Ainsi, au terme de la recherche des paramètres permettant de minimiser la distance entre le nuage de points réels et le nuage de points modélisés, on disposera de deux triplets de paramètres, l'un spécifique au mode de codage Intra et l'autre spécifique au mode de codage Inter. Ce couple de triplets est valide pour une méthode de codage donnée qui ne modifie pas la résolution spatiale de l'image ou la résolution temporelle de la séquence originale. Cependant, dans la mesure où il existe des méthodes de codage modifiant la résolution spatiale de l'image ou de la séquence originale, ou la résolution temporelle de la séquence originale, on décrira ciaprès la façon d'adapter le modèle d'estimation de la distorsion selon l'invention en fonction d'un ou de plusieurs paramètres de codage caractérisant une telle méthode. La modification de l'algorithme de recherche des paramètres du modèle qui est nécessaire à la prise en compte de méthodes de codage changeant la résolution spatiale ou temporelle intervient principalement au niveau du calcul de la distorsion. En effet, il est nécessaire que la distorsion reflète les changements de résolution et notamment l'impact de ces changements sur la qualité. Dans le cas d'un codage modifiant la résolution spatiale, l'image résultant du codage/décodage sera redimensionnée à la taille de l'image de la séquence originale afin que le calcul des erreurs quadratiques moyennes EQM (pour le calcul du PSNR fournissant une estimation de la qualité de l'image ) soit effectué sur des images de taille identique. Le redimensionnement sera basé sur une méthode d'interpolation spatiale classique. Ainsi, par exemple, si la séquence originale est au format CIF et la séquence codée est au format QCIF, chaque pixel des images de la séquence codée/décodée à la position spatiale (x, y) sera répété quatre fois aux positions (2x, 2y), (2x+1,2y), (2x, 2y+1), (2x+1,2y+1) dans une image qui servira uniquement à la comparaison. Les distorsions et les variances seront ainsi, par exemple, calculées sur les images redimensionnées. Les points EQM/variance obtenus formeront ainsi le nuage de points. Dans le cas d'un codage réduisant la fréquence temporelle de la séquence vidéo originale, on formera une séquence de comparaison à partir de la séquence codée en interpolant les images supprimées pour revenir à la fréquence temporelle de la séquence originale. A cet effet, on pourra utiliser des méthodes d'interpolation temporelle classiques. Par exemple, lors d'une réduction de la fréquence temporelle de 30 à 15 images par seconde, une image sur deux a été supprimée et l'on interpolera ainsi, par exemple, chaque image supprimée en répétant la dernière image codée. On calculera ensuite l'erreur quadratique moyenne EQM sur chaque macro-bloc de chaque image de la séquence ainsi formée. En supposant que t images répétées ont été insérées entre deux images réellement codées, on obtiendra une erreur quadratique moyenne EQM représentative pour les macro-blocs des images codées en ajoutant, à leur erreur quadratique moyenne EQM, les erreurs quadratiques moyennes EQM des t images répétées qui la suivent immédiatement. L'erreur quadratique moyenne EQM cumulée ainsi obtenue pour chaque macro-bloc est ensuite divisée par t+1. Par exemple, les variances seront calculées sur les macroblocs des images codées. Les points EQM/variance obtenus formeront ainsi le nuage de points. La procédure de mesure de l'erreur quadratique moyenne EQM prenant en compte les changements de résolution est illustrée par la figure 1d. Les processus d'adaptation décrits ci-dessus permettent donc de déterminer un couple de triplets de paramètres pour chaque méthode de codage disponible sur le serveur. Chaque image ou séquence vidéo sera ainsi décrite par plusieurs paires de triplets de paramètres associés à chaque méthode de codage disponible au serveur. On notera qu'on obtient de cette manière un moyen peu coûteux d'estimation de la qualité engendrée par chaque méthode de codage. Sur la figure 2a est représenté une architecture de communication du type client-serveur dans laquelle l'invention est avantageusement mise en #uvre dans sa première application. Sur cette figure, un premier appareil de communication 1 qui est, par exemple, un serveur relié à un deuxième appareil de communication 2 qui est une machine client, par l'intermédiaire d'un réseau de communication 3 et d'une connexion qui est considérée comme étant établie. Ce réseau est par exemple un réseau de communication local sans fil à l'intérieur d'une habitation. Plus particulièrement, ce réseau est conforme au standard IEEE802.11. Il s'agit dans l'exemple considéré d'une transmission point à point de données entre le serveur 1 et la machine client 2. Cependant, le principe reste applicable au cas où le serveur est connecté simultanément à plusieurs machines client qui peuvent requérir du serveur des images fixes ou des séquences vidéo. Il convient toutefois, dans ce cas, de prendre en compte, d'une part, la gestion des processus d'adaptation et de transmission en parallèle des différentes versions adaptées des données demandées et, d'autre part, les accès multiples à la ou aux mémoires du serveur. On notera que les données d'images stockées dans le serveur peuvent avoir été reçues de l'environnement extérieur à l'habitation, par exemple, par un autre réseau de communication tel que l'Internet. Dans l'exemple de réalisation considéré, on considérera uniquement des données vidéo et celles-ci seront transmises sans perte sur le réseau 3. On notera toutefois que l'invention s'applique également lorsque les données constituent une ou plusieurs images fixes. Le dispositif selon cette première application de l'invention permet, d'une manière générale, de sélectionner une méthode de transcodage parmi un ensemble de méthodes de transcodage en prenant en compte le contenu des données demandées par une machine client. Le dispositif 4 selon l'invention est par exemple intégré au serveur 1 de la figure 2a et peut comporter des éléments électroniques et/ou des éléments logiciels. Toutefois, le dispositif selon l'invention pourrait, par exemple, être confondu avec le serveur 1. Le dispositif 4 comporte des unités 11 et 12 qui permettent respectivement de coder et décoder une vidéo. Le serveur comprend une unité 5 de stockage de données numériques telles que des vidéos. Les algorithmes des procédés de codage et décodage seront décrits respectivement en référence aux figures 3a et 3b. On notera que les vidéos sont créées, par exemple, par un caméscope numérique ou tout autre moyen d'acquisition de données ou bien sont transmises par un réseau de communication extérieur et sont stockées dans l'unité 5 qui peut être incluse ou non dans le dispositif 4. Cette unité peut être, par exemple, une base de données locale ou distribuée. En outre, les vidéos sont stockées, selon un mode préféré de l'invention, sous forme compressée, en utilisant le procédé de codage mis en #uvre dans l'unité de codage 11. Le dispositif 4 comprend également une unité de stockage 13 destinée à mémoriser de façon temporaire des données numériques et des vidéos codées, et une unité 14 de récupération de données caractéristiques des vidéos à partir de l'unité 5 de stockage. Les données récupérées par l'unité 14 sont, soit les valeurs associées à chacun des pixels de chaque image d'une vidéo, soit les informations propres à cette vidéo, à savoir la taille du fichier vidéo, le chemin permettant d'accéder à cette vidéo et, dans le cas où la vidéo est stockée sous forme compressée, les paramètres de codage qui ont été utilisés pour coder cette vidéo. Le dispositif 4 comprend également une unité 15 de récupération des caractéristiques de la machine client 2, à savoir, par exemple, la capacité de calcul et la résolution de son écran de visualisation. Il convient de noter que ces caractéristiques peuvent être obtenues à la suite de la transmission par le dispositif 4 d'une requête spécifique. Le dispositif 4 comprend, en outre, une unité 16 de récupération des caractéristiques du réseau 3, une unité 17 de détermination des paramètres de codage, des variances et des distorsions, une unité 19 de recherche des paramètres du modèle de distorsion, une unité 20 de stockage des différentes données et variables (variances, distorsions réelles des macro-blocs, paramètres optimaux, distances minimales ...) obtenues au cours de l'exécution des différents algorithmes décrits ci-avant, et une unité 21 de transmission/réception de données numériques. L'unité 21 permet d'effectuer la transmission de données à la machine client 2 à travers le réseau 3, ainsi que la réception de données provenant de la machine client. Le dispositif 4 selon l'invention comporte également une unité de commande 22 des différentes opérations exécutées. On notera que les différentes unités qui composent le dispositif selon l'invention et, plus généralement le serveur, résident sur la même machine. Cependant, il pourra être envisagé de distribuer ces unités sur plusieurs machines serveur et d'établir des communications entre ces différentes unités à travers le réseau de communication 3. Cette distribution des unités ne modifiant en rien la mise en #uvre de l'invention, on considérera par la suite, pour des raisons de simplicité, que toutes les unités sont localisées sur la même machine que nous appelons serveur. La machine client 2 comporte une unité de transmission/réception de données numériques 25. Cette unité 25 permet d'effectuer la transmission de données au dispositif 4, à travers le réseau 3, et la réception de données provenant du dispositif. La machine client 2 comporte également une unité 26 de stockage de données numériques, une unité 27 de décodage identique à l'unité 12 du dispositif 4 et une unité de visualisation 28, permettant de visualiser des vidéos décodées. La figure 2b illustre un algorithme comportant différentes instructions ou portions de code logiciel correspondant à des étapes du procédé selon une première application de l'invention. Le programme informatique noté "Progr" qui est basé sur cet algorithme est mémorisé dans l'unité de stockage temporaire de données 13 de la figure 2a et exécuté par l'unité 17 sous le contrôle de l'unité de commande 22, ce qui permet ainsi de mettre en #uvre le procédé selon l'invention. Ce programme est également stocké dans l'appareil de la figure 6. L'algorithme de la figure 2b comporte une première étape notée E200 au cours de laquelle le dispositif 4 de la figure 2a et, plus particulièrement, l'unité de réception 21 reçoit une requête émise par la machine client 2 à partir de l'unité de transmission 25. Par exemple, cette requête se présente sous la forme d'une chaîne de caractères permettant d'identifier de façon unique des données vidéo mémorisées dans l'unité de stockage 5 du serveur 1. Au cours de l'étape suivante E201, la requête provenant de la machine client 2 est transférée à l'unité de stockage temporaire 13 aux fins de mémorisation. L'étape E201 est suivie d'une étape E202 au cours de laquelle un test est pratiqué afin de savoir si les données vidéo faisant l'objet de la requête de la machine client sont disponibles dans l'unité de stockage 5. Lorsque le test pratiqué au cours de cette étape est négatif, l'étape suivante E203 prévoit d'envoyer un message d'erreur à la machine client l'informant que les données vidéo demandées ne sont pas disponibles dans le serveur. * Dans l'affirmative, l'étape E202 est suivie d'une étape E204 au cours de laquelle l'unité de décodage 12 du dispositif de la figure 2a décode les données vidéo en fonction des paramètres de codage fournis, par exemple, par l'en-tête du train binaire mémorisé dans l'unité de stockage 5. On notera que chaque image de la séquence vidéo demandée par l'utilisateur est découpée en blocs de données de 8x8 pixels. Chaque groupe de quatre blocs forme un macro-bloc de 16x16 pixels. Le codage d'une image est effectué sur chacun des macro-blocs selon deux modes de codage distincts : l'un noté I pour le mode de codage Intra et l'autre noté P pour le mode de codage prédictif ou Inter. Une séquence d'images de 1 seconde sera codée de la façon suivante : IPPIPPIPPIPPIPPIPPIPPIPPIPPIPP ... Ceci signifie que la première image est codée selon le mode Intra, les deux suivantes selon le mode Inter, la suivante selon le mode Intra, les deux suivantes selon le mode Inter, etc.... Ainsi, pour une séquence de 30 images par seconde, 10 images seront codées en mode Intra et 20 images en mode Inter. On notera qu'une séquence d'images sera appelée par la suite un segment. Au cours du décodage pratiqué à l'étape E204, l'unité 12 compte le nombre de macro-blocs codés suivant chaque mode pour chaque image et calcule la variance de chaque macro-bloc. Une fois que le décodage des données vidéo a eu lieu, les données décodées présentes, par exemple, sous le format YUV, ainsi que les paramètres de codage précités sont stockés dans l'unité de stockage 13. On notera qu'un format vidéo de type YUV signifie que la vidéo concernée possède trois composantes, la composante Y pour la luminance et les composantes U et V pour la chrominance. Il convient de noter que pour chaque image de la séquence vidéo, on stocke, dans l'unité 13, un paramètre de quantification moyen (moyenne des paramètres de quantification des macro-bocs de l'image), le nombre de macroblocs codés en mode Inter et en mode Intra, ainsi qu'une variance moyenne (moyenne des variances des macro-blocs de l'image). L'étape E204 qui vient être décrite est suivie par une étape E205 au cours de laquelle l'unité 14 procède à une récupération des données vidéo. Au cours de l'étape suivante E206, on procède à l'obtention des caractéristiques de la machine client 2 qui a émis la requête mentionnée à l'étape E200. Les caractéristiques de la machine client sont par exemple récupérées consécutivement à la transmission d'une requête d'obtention de ces caractéristiques, du dispositif 4 de la figure 2a vers la machine client 2, à travers le réseau de communication 3. Ces caractéristiques sont principalement la capacité de calcul de la machine client 2, à savoir le nombre total d'opérations qu'elle peut effectuer et la résolution de son unité de visualisation 28 (écran). Ces caractéristiques sont stockées de façon temporaire dans l'unité de stockage 13 du dispositif 4 de la figure 2a. Préférentiellement, la capacité de calcul de la machine client est égale à la vitesse du processeur de celle-ci, exprimée en nombre d'opérations élémentaires par seconde. L'étape E206 est suivie d'une étape E207 au cours de laquelle le dispositif 4 de la figure 2a obtient les caractéristiques du réseau de communication 3 telles que, par exemple, la bande passante disponible pour transmettre les données vidéo du dispositif 4 à la machine client 2, le taux de perte de paquets, le taux de bits erroné ... De façon préférentielle, les caractéristiques du réseau prises en compte seront limitées à la bande passante disponible. Ces caractéristiques sont récupérées par l'unité 16 qui les stocke alors dans l'unité de stockage temporaire 13. L'étape E207 est suivie de l'étape E208 qui sélectionne, à partir de l'unité 17, une méthode de transcodage parmi un ensemble donné de méthodes de transcodage, à partir d'une évaluation de la qualité de chaque méthode, en prenant en compte les données vidéo à transmettre. Par ailleurs, la méthode sera, par exemple, également sélectionnée de manière à adapter les données vidéo aux caractéristiques de la machine client et aux caractéristiques du réseau. Les méthodes de transcodage proposées dans cet ensemble sont par exemple les suivantes : conservation de la séquence compressée originale, réduction de la résolution spatiale de CIF (format 352 par 288) à QCIF (format 176 par 144), requantification pour réduire le débit de 10 %, requantification pour réduire le débit de 20 %, requantification pour réduire le débit de 30 %, réduction de la fréquence temporelle. Le détail des opérations effectuées lors de l'étape E208 sera fourni ultérieurement lors de la description faite en référence à la figure 4a. Cette étape est effectuée par l'unité 17 du dispositif 4 de la figure 2a sous contrôle de l'unité de commande 22 et à partir des informations disponibles dans les unités de stockage 13 et 20. On notera que les méthodes de transcodage présentées ci-dessus sont classées dans trois catégories : réduction de la résolution spatiale (passage du format CIF au format QCIF), requantification et réduction de la fréquence temporelle. 1) Pour réduire la résolution spatiale, l'unité de codage 11 commencera par sous échantillonner chaque image de la séquence vidéo originale en supprimant un pixel sur deux dans chaque ligne de chaque image de la séquence originale, puis, en supprimant un pixel sur deux dans chaque colonne de chaque image de la séquence originale. L'unité 11procèdera ensuite au codage effectif de la séquence sous échantillonnée. Pendant le codage, le choix du mode de codage des macro-blocs de la séquence transcodée se fera en fonction des modes de codage des macroblocs de la séquence originale. On sait que, lors du passage du format CIF au format QCIF, le nombre de macro-blocs est divisé par 4, c'est-à-dire qu'un macro-bloc de la séquence transcodée correspond à quatre macro-blocs de la séquence originale. Si dans les quatre macro-blocs originaux on trouve une majorité de macro-blocs codés en mode Intra, alors le macro-bloc de la séquence transcodée sera codé en mode Intra. Inversement, si on a une majorité de macro-blocs codés en mode Inter, le macro-bloc de la séquence transcodée sera codé en mode Inter. Si aucun mode n'est majoritaire, le macro-bloc sera codé en mode Intra. 2) Pour requantifier la séquence, on codera la séquence avec une contrainte de débit égale au débit initial de la séquence originale duquel on retranchera le pourcentage de débit spécifié par la méthode de transcodage. Une boucle de régulation de débit telle que celle proposée dans l'article intitulé "Rate control for low-delay Video communication", de J. RibasCorbera, S-Lei, Draft ITU-telecommunications standardization sector. Ref. : Q15-A-20 permettra de réguler le débit de l'unité de codage. Il convient de noter que l'on pourra utiliser dans cette boucle le modèle d'estimation de la distorsion selon l'invention à la place du modèle proposé dans l'article précité. Pour cette méthode de transcodage, les modes de codage des macroblocs originaux seront conservés dans la séquence transcodée. 3) Pour réduire la fréquence temporelle, l'unité 11 de la figure 2a ne codera pas toutes les images de la séquence originale. Par exemple, si la séquence originale a une fréquence temporelle de 30 images/seconde et que l'on souhaite coder la séquence à 15 images/seconde, on ne codera qu'une image sur deux. L'étape E208 de l'algorithme est ensuite suivie d'une étape E209 qui procède au codage des données vidéo suivant les paramètres définis à l'étape E208 (méthode de transcodage sélectionnée). Au cours de l'étape suivante E210, le dispositif 4 de la figure 2a et, plus particulièrement, l'unité de transmission 21 de celui-ci procède à la transmission des données vidéo qui ont été préalablement compressées à l'étape E208 vers la machine client 2. On notera que la transmission des données vidéo compressées se fait préférentiellement à la volée (connu en terminologie anglosaxonne sous le terme "streaming"), c'est-à-dire que les informations nécessaires à l'utilisateur pour reconstruire une image sont mémorisées dans l'unité de stockage 13, puis sont transmises à la machine client 2 avant que toutes les données vidéo ne soient compressées. Ainsi, l'utilisateur reçoit au niveau de la machine client 2 les informations par paquets, dans chacun desquels se trouvent des informations permettant à cet utilisateur de décoder une image courante. Les figures 3a et 3b illustrent respectivement le codage et le décodage d'une vidéo en couleurs au format YUV. Selon un mode préféré de réalisation de l'invention, le décodeur vidéo utilisé pour la mise en oeuvre de cette invention est conforme à la partie visuelle du standard MPEG-4 (Information technology- Generic coding of audio-visual objects = part2: visual, ISO/IEC JTC1/SC 29/WG11N 3056, December 2000). Dans l'exemple traité ici, la vidéo sera considérée comme un seul objet de forme rectangulaire. Par conséquent, seul un jeu restreint d'outils de compression qui permettent le décodage de la texture et la compensation de mouvement seront pris en compte. Les outils nécessaires au décodage de la forme arbitraire d'un objet ne sont donc pas utilisés ici. On notera que la texture d'une image est donnée par les valeurs des pixels de l'image qui sont exprimées sur trois composantes. Les vidéos sont stockées sur le serveur 1 sous forme compressée au format mp4 conforme au standard MPEG-4. On utilise par exemple le format YUV de type 4 :2:0, qui signifie que les composantes de chrominance (U, V) ont quatre fois moins d'échantillons (pixels) que les composantes de luminance (Y). La figure 3a illustre le procédé de codage mis en #uvre par l'unité de codage 11 de la figure 2a. En mode Intra, le codage s'effectue bloc par bloc selon les étapes E310 à E313 de la figure 3a. Dans ce mode de codage, chaque bloc constitue une unité élémentaire de données qui est codée indépendamment des autres blocs. On rappelle que les valeurs des pixels de chaque image du segment d'images à coder sont stockées temporairement dans l'unité 13 de stockage temporaire de la figure 2a et constituent une vidéo qui est appelée vidéo originale. Dans le cas où la vidéo est stockée dans l'unité de stockage 5, le procédé de décodage est appliqué à l'étape E204 de la figure 2b de manière à obtenir une vidéo au format YUV. Les valeurs de la vidéo ainsi reconstruite sont stockées dans l'unité 13 de stockage temporaire et dans l'unité de stockage 5. Le procédé de codage d'un bloc en mode Intra débute par une étape E310 au cours de laquelle on calcule la transformée en cosinus discret selon la méthode connue décrite dans l'article intitulé "Fast Algorithms for the Discrete Cosine Transform", E. Feig and S. Winograd, IEEE Trans. On Signal Proc., vol. 40, No. 9, September 1992. L'étape E310 est suivie d'une étape E311 qui prévoit de quantifier les coefficients transformés obtenus lors de l'étape E310 . L'étape E311 est suivie d'une étape E312 au cours de laquelle on ordonne les coefficients quantifiés de manière à ce que la méthode de codage à longueur variable utilisée lors de l'étape ultérieure E313 soit la plus efficace possible. Pour ce faire, on utilise la méthode de balayage décrite dans le standard Information technology- Generic coding of audio-visual objects = part2: visual, ISO/IEC JTC 1/SC 29/WG11 N3056, December 2000. L'étape E312 est suivie d'une étape E313 selon laquelle on effectue le codage statistique des coefficients ordonnés selon la méthode de codage à longueur variable décrite dans le standard Information technology- Generic coding of audio-visual objects = part2: visual, ISO/IEC JTC 1/SC 29/WG11 N3056, December 2000. A l'issue de l'étape E313, les coefficients codés statistiquement sont stockés dans l'unité de stockage temporaire 13 et sont concaténés aux autres informations de codage de l'image courante. En mode prédictif ou Inter, le codage s'effectue macro-bloc par macrobloc où chaque macro-bloc constitue une unité élémentaire de données qui est codée indépendamment des autres. Chacun des macro-blocs peut être codé soit en mode Intra soit en mode Inter. Si le macro-bloc est codé en mode Intra, alors le codage s'effectue selon les étapes E310 à E313 décrites précédemment. Si le macro-bloc est codé en mode Inter, le codage s'effectue selon les étapes E315 à E317 qui vont être explicitées ci-après. Au cours de l'étape E315 on applique une méthode classique d'estimation de mouvement par comparaison de macro- blocs. Les algorithmes mis en #uvre s'appuient sur l'hypothèse simplificatrice selon laquelle les pixels d'un même macro-bloc sont animés du même mouvement. Le vecteur de mouvement d'un macro-bloc d'une image courante est alors déterminé en trouvant le macro-bloc le plus ressemblant dans l'image précédente dans une fenêtre de recherche présélectionnée. Si les dimensions de la fenêtre de recherche exercent une influence sur le temps de calcul de l'estimation de mouvement, le problème majeur lié à l'estimation de mouvement qui est effectuée par comparaison de macro-blocs reste la détermination de la distance entre les macro-blocs. On utilisera de préférence une méthode d'estimation de mouvement décrite dans l'article "Estimation de mouvement en ligne", L. Difdier, R. Kamdem, LIM Université de Provence, Dec. 96. Cette méthode permet d'obtenir un vecteur de mouvement à deux composantes de mouvement translationnel. Pour obtenir un train binaire conforme au standard MPEG-4, ce vecteur de mouvement est codé différentiellement par rapport à une prédiction effectuée à partir des vecteurs de mouvement des macro-blocs déjà codés du voisinage immédiat du macro-bloc courant. L'étape E315 est suivie d'une étape E316 au cours de laquelle on code statistiquement le vecteur de mouvement différentiel précédemment déterminé. Les coefficients ainsi obtenus sont stockés dans l'unité de stockage temporaire 13 et sont concaténés aux autres informations de codage de l'image courante. Une fois que le mouvement pour un macro-bloc a été estimé lors de l'exécution de l'étape E315, alors, conformément à l'étape E317, un macro-bloc dit prédit est construit à partir du macro-bloc de l'image précédente auquel est appliqué le vecteur de mouvement associé à ce macro-bloc. Ensuite, un macro-bloc dit de différence, est calculé entre le macrobloc de l'image courante et le macro-bloc prédit. On mesure alors la variance de ce macro-bloc de différence. Si la variance est supérieure à un seuil prédéterminé, alors le macrobloc de l'image courante est codé en mode Intra. Ce macro-bloc sera codé en mode Inter dans le cas contraire. L'étape E317 est suivie d'une étape E318 au cours de laquelle, soit on code le macro-bloc de différence selon le mode Intra décrit plus haut, soit on code le macro-bloc courant selon le mode Intra. Les coefficients résultant du mode de codage Intra sont stockés dans l'unité de stockage temporaire 13 et sont concaténés aux autres informations de codage du macro-bloc de l'image courante. Les paramètres utilisés lors des étapes de quantification et de codage à longueur variable, sont définis pour chaque macro-bloc, que ce soit dans le mode Intra ou Inter. A cet effet, on utilise une méthode de contrôle de débit classique lors d'une étape E314. Cette méthode permet de contrôler l'allocation de débit pour chaque macro-bloc de manière à ne pas dépasser le débit total alloué à la transmission de la vidéo compressée. Dans l'exemple décrit, la valeur de débit maximale est fixée par la valeur BP. Les paramètres de quantification seront fixés en début de codage à une valeur comprise entre les valeurs inférieure et supérieure des paramètres de quantification fixés par le standard MPEG-4. On prendra par exemple un paramètre QP égal à 20. Cependant, en raison de la propriété de normalisation du modèle de distorsion, les paramètres du modèle resteront valables quelle que soit la valeur de QP. Les données codées et stockées de façon temporaire dans l'unité 13 sont mises au format MPEG-4, comme indiqué dans le standard Information technology- Generic coding of audio-visual objects = part2: visual, ISO/IEC JTC 1/SC 29/WG11 N3056, December 2000, avant d'être transmises sur le réseau 3 de la figure 2a vers la machine client 2. Il convient de noter que le mode de codage utilisé pour coder chaque macro-bloc fait partie des informations qui sont transmises. Durant le codage, l'unité de commande 22 de la figure 2a fait appel à l'unité de calcul 17 qui calcule pour chaque macro-bloc de l'image sa variance avant l'opération de quantification. Pour les macro-blocs codés en mode Intra, le calcul de la variance est effectué directement à partir des macro-blocs de la séquence originale avant l'étape E311. Pour les macro-blocs codés en mode Inter, la variance est calculée sur les macro-blocs de différence à l'étape E317. Les informations de variance ainsi que le mode de codage utilisé pour chaque macro-bloc sont stockés dans l'unité de stockage 20 de la figure 2a. La figure 3b illustre le procédé de décodage mis en oeuvre par l'unité de décodage 12 du dispositif 4 et par l'unité de décodage 27 de la machine client 2 de la figure 2a. Le procédé de décodage va être décrit lorsqu'il est mis en #uvre dans la machine client 2 et, plus particulièrement, au niveau des unités 25, 26 et 27. La transposition de cette description au procédé de décodage mis en #uvre par le dispositif 4 du serveur 1 s'effectue aisément en remplaçant les unités 25,26 et 27 respectivement par les unités 21, 13 et 12. La machine client 2 comporte l'unité 26 de stockage qui est alimentée par les données numériques provenant du dispositif 4 par l'intermédiaire de la connexion établie entre les deux machines à travers le réseau 3. Ces données sont reçues par l'unité de réception 25 sous la forme de paquets qui contiennent les informations nécessaires pour décoder un ou plusieurs macro-blocs de l'image courante. L'unité de stockage 26 est capable d'extraire des informations à partir du train binaire qui a été généré par l'unité de codage 11 du dispositif 4 et de les fournir à l'unité de décodage 27 de la machine client 2. La figure 3b illustre le décodage d'un macro-bloc codé soit en mode Intra, tel qu'indiqué par les étapes 322 à 326, soit en mode Inter ou prédictif comme indiqué par les étapes 327 à 332. L'algorithme de décodage débute par une étape E319 au cours de laquelle on récupère le mode de codage du macro-bloc courant. Au cours de l'étape E320, on procède à un test pour savoir si le macro-bloc a été codé en mode Intra. Dans l'affirmative, l'étape E320 est suivie d'une étape E321 qui prévoit de récupérer, à partir de l'unité de stockage 26, les coefficients statistiques (codes à longueur variable) liés à ce macro-bloc. L'étape E321 est suivie d'une étape E322 qui effectue le décodage de ces coefficients selon la table de coefficients décrite dans le standard Information technology- Generic coding of audio-visual objects = part2: visual, ISO/IEC JTC 1/SC 29/WG11 N3056, December 2000. Les coefficients ainsi obtenus forment un ensemble de données bidimensionnelles noté QF[u][v]. Au cours de l'étape suivante E323, on effectue une opération de quantification inverse sur les valeurs de l'ensemble de données QF [u][v] obtenir le tableau bidimensionnel F" [u][v] selon les tables de quantification décrites dans le standard Information technology- Generic coding of audio- visual objects = part2: visual, ISO/IEC JTC 1/SC 29/WG11 N3056, December 2000. Au cours de l'étape suivante E324, on applique une méthode de saturation aux valeurs des coefficients du tableau bidimensionnel F" [u][v] selon le standard Information technology- Generic coding of audio-visual objects = part2: visual, ISO/IEC JTC 1/SC 29/WG11 N3056, December 2000, de manière à obtenir le tableau bidimensionnel F' [u][v] dont les valeurs appartiennent à l'intervalle [-2 bits par pixel + 3,2 bits par pixel + 3 ~ 1]. Le nombre de bits par pixels est de préférence égal à 8. Au cours de l'étape suivante E325, on effectue une opération de contrôle des coefficients saturés de manière à obtenir les coefficients DCT F [u][v]. Au cours de l'étape suivante E326, on reconstruit les valeurs des pixels du macro-bloc courant en fonction des coefficients DCT F [u][v] utilisant la méthode de décodage décrite dans l'article "Fast Algorithms for the Discrète Cosine Transform", E. Feig and S. Winograd, IEEE Trans. On Signal Proc., vol. 40, No. 9, September 1992. Ces valeurs reconstruites sont stockées dans l'unité de stockage 26 en vue d'être visualisées sur l'unité de visualisation 28. L'algorithme de décodage d'un macro-bloc est donné ci-dessous. Les valeurs des coefficients dc scaler, quantiser scale et de la matrice W[I][U][V] utilisés dans cet algorithme sont des valeurs définies par le standard Information technology- Generic coding of audio-visual objects = part2: visual, ISO/IEC JTC 1/SC 29/WG11 N3056, December 2000. for (v=0; v for (u=0; u * quantiser~scale ) / 32; } } } } sum = 0; for (v=0; v 2 bits~per~pixel + 3 - 1 ) Flu][v] = 2 bits~per~pixel + 3 - 1; } else if ( F'lu][v] La méthode de transformation en cosinus discret d'un pixel f (x,y) d'un bloc de taille N x N est donnée par l'équation suivante : avec u, v = 0, 1, 2, ... N-1, où x, y sont les coordonnées spatiales, u, v sont les coordonnées dans le domaine transformé, et Chaque pixel est représenté par n bits (pour représenter une des composantes Y, U ou V) et les coefficients transformés sont représentés par (n+4) bits. L'amplitude des coefficients DCT est comprise dans l'intervalle [- 2n+3 :+2n+3-1]. On utilise de préférence une méthode rapide de codage/décodage DCT. Cette méthode, décrite dans l'article "Fast Algorithms for the Discrète Cosine Transform", E. Feig and S. Winograd, IEEE Trans. On Signal Proc., vol. 40, No. 9, September 1992, permet de coder/décoder des macro-blocs de taille 2m (ici m=3) selon l'équation suivante : y = C8 * y où Y est le vecteur des coefficients DCT de dimension 8 et C8 la matrice 8*8 de coefficients DCT. Cette matrice peut être factorisée et, après quelques manipulations algébriques, cette matrice est égale à C8 = P8 * K8 *B8 , où P8 est une matrice de permutation des signes de dimension 8*8, K8 et B8 sont des matrices de coefficients de dimension 8*8 qui ont été définies de manière à obtenir un codeur/décodeur rapide. Consécutivement à l'étape E326, l'étape E333 prévoit un stockage et une visualisation des macro-blocs décodés à partir des unités 26 et 28. L'image courante est reconstruite une fois que tous les macro-blocs de cette image sont décodés et visualisés. De retour à l'étape E320, si le résultat du test est négatif, cela signifie que le macro-bloc a été codé en mode Inter ou prédictif. Au cours de l'étape suivante E327, on récupère alors des informations parmi les données numériques qui ont été transmises par le dispositif 4 et mémorisées dans l'unité de stockage 26 de la machine client 2. Ces informations sont propres au codage du macro-bloc en mode Inter et sont, par exemple, les coefficients statistiques (codes à longueur variable) liés à ce macro-bloc. L'étape E327 est suivie d'une étape E328 qui prévoit de décoder ces coefficients statistiques de manière à obtenir le vecteur de mouvement différentiel. Au cours de l'étape suivante E329, on reconstruit le vecteur de mouvement à partir du vecteur de mouvement différentiel et du vecteur de mouvement (Px, Py) du macro-bloc de l'image précédente disposé à la même position spatiale. L'algorithme utilisé est le suivant : r size = vop~fcode - 1 f = 1 r size high = (32 * f) - 1 ; low = ( (-32) * f); range = ( 64 * f ); if ( (f == 1 ) Il (horizontaLmv~data == 0) ) MVDx = horizontal~mv~data; else MVDx = ( ( Abs(horizontal~mv~data) -1 ) *f ) + horizontal~mv~residual + 1; if (horizontal~mv~data MVDx = - MVDx; if ( (f == 1) p (vertical~mv~data == 0) ) MVDy = vertical~mv~data; else { MVDy = ( ( Abs(vertical~mv~data) - 1 ) *f ) + vertical~mv~residual + 1; if (vertical~mv~data MVDy = - MVDy; MVx = Px + MVDx; if ( MVx MVx = MVx + range; if (MVx > high) MVx = MVx - range; MVy = Py + MVDy; if ( MVy MVy = MVy + range; if (MVy > high) MVy = MVy - range; Les paramètres du train binaire sont tels que les composantes MVDx et MVDy du vecteur de mouvement différentiel, appartiennent à l'intervalle [low; high]. Les valeurs extrêmes de cet intervalle sont choisies lors de l'implémentation du décodeur. Par ailleurs, les composantes du vecteur de mouvement reconstruit, MVx et MVy, appartiennent également à cet intervalle. Les valeurs qui définissent cet intervalle pour les vecteurs de mouvement sont définis par le standard Information technology- Generic coding of audio-visual objects = part2: visual, ISO/IEC JTC 1/SC 29/WG11N3056, December 2000. On notera que r~size, f, MVDx, MVDy, high , low et range sont des variables, tandis que les données horizontal~mv~data, vertical~mv~data, horizontal~mv~residual et vertical~mv~residual sont extraites du train binaire. La variable vop~fcode fait référence au mode de prédiction utilisé qui est extrait du train binaire. Au cours de cette même étape E329, le macro-bloc de l'image précédente est compensé en mouvement, c'est à dire que le macro-bloc est déplacé du vecteur de mouvement qui vient d'être reconstruit. Au cours de l'étape suivante E330, on récupère les informations propres au codage du macro-bloc en mode Intra et, notamment, les coefficients statistiques qui représentent le macro-bloc de différence. Au cours de l'étape suivante E331, on reconstruit le macro-bloc de différence à partir de ces coefficients statistiques selon le procédé de décodage Intra décrit précédemment, lors de l'exécution des étapes E322 à E326. L'étape E331 est suivie d'une étape E332 qui calcule la somme du macro-bloc compensé de l'étape E329 et du macro-bloc de différence obtenu à l'étape E331. L'étape E332 est suivie d'une étape E333 qui organise le stockage des macro-blocs décodés dans l'unité 26. Dès qu'une image est décodée, l'unité de commande 22 de la figure 2a fait appel à l'unité 17 qui calcule pour chaque macro-bloc de l'image sa distorsion réelle. Celle-ci est obtenue en calculant l'erreur quadratique moyenne EQM entre les macro-blocs de chaque image de la séquence vidéo originale et les macro-blocs de l'image correspondante de la séquence codée/décodée. Les informations de distorsion de chaque macro-bloc sont ensuite stockées dans l'unité de stockage 20. L'image est ensuite visualisée sur l'unité de visualisation 28 une fois que tous les macro-blocs ont été décodés. La figure 4a illustre l'algorithme détaillant les différentes opérations effectuées lors de l'étape E208 de la figure 2b. Plus particulièrement, cet algorithme comporte différentes instructions ou portions de code logiciel correspondant à des étapes du procédé de sélection d'une méthode de transcodage de données d'images selon une première application de l'invention. Le programme informatique qui est basé sur cet algorithme est mémorisé dans l'unité de stockage temporaire de données 13 de la figure 2a et exécuté par l'unité 17 sous le contrôle de l'unité de commande 22. Ce programme fait partie du programme "Progr" précité en référence à la figure 2b et est également stocké dans l'appareil de la figure 6. L'exécution du programme informatique basé sur cet algorithme va mettre en #uvre le procédé permettant d'évaluer la qualité de plusieurs méthodes de transcodage en tenant compte des données à transmettre et de sélectionner rapidement une méthode à partir des différentes valeurs de qualité obtenues. Dans le cas de données vidéo, la méthode de transcodage sélectionnée sera celle qui fournira à la machine client une qualité visuelle optimale. Par ailleurs, ce procédé peut permettre également de sélectionner une méthode de transcodage de manière adaptée à une ou plusieurs caractéristiques de la machine client 2, à savoir sa capacité de calcul, la résolution de l'écran, la mémoire disponible, et/ou aux ressources disponibles sur le réseau de communication 3, à savoir la bande passante. L'algorithme de la figure 4a débute par une étape E400 au cours de laquelle on procède à une récupération du contexte dans lequel les données vont être transmises du dispositif 4 du serveur 1 à la machine client 2 (figure 2a). Plus particulièrement, la récupération de ce contexte consiste à obtenir, à partir de l'unité de stockage temporaire 13 : - la capacité de calcul C de la machine client 2, - la résolution de l'écran de cette machine, - la bande passante BP disponible sur le réseau de communication 3 pour transmettre les données vidéo. L'étape E400 est suivie de l'étape E401 qui initialise les valeurs d'un tableau de valeurs de dimension M, où M représente le nombre de méthodes de transcodage définies dans l'ensemble des méthodes de transcodage. Pour chacune des M méthodes de transcodage, les caractéristiques suivantes sont stockées : le format (CIF ou QCIF) induit par la méthode, le pourcentage du débit initial conservé après la mise en #uvre de la méthode de transcodage (90,80 ou 70 %), et la fréquence temporelle de la séquence codée (30 images/seconde, 15 images/seconde ou 2 images/seconde). Par ailleurs, cette étape initialise aussi une variable d'indice de tableau m à la première valeur du tableau égale à 1 (première méthode de transcodage de l'ensemble des méthodes). Les indices suivants sont gradués jusqu'à M par pas de 1. Cette étape initialise à 0, d'une part, une seconde variable Idopt qui récupérera l'identificateur de la méthode de transcodage sélectionnée et, d'autre part, une troisième variable maxPSNR. L'étape E401 est suivie de l'étape E402 qui vérifie si la variable m est inférieure ou égale à M. Dans l'affirmative, on passe à l'étape E403 qui vérifie si la méthode de transcodage en cours d'évaluation générera une séquence dont le format sera compatible avec l'écran de la machine client. Si le format est compatible, l'étape E403 est suivie de l'étape E404 qui évalue la complexité de calcul 0 du processus de décodage de la séquence vidéo transcodée. Pour ce faire, on récupère pour chaque image le nombre de macroblocs codés en mode Intra, NMBmtraong, et le nombre de macro-blocs codés en mode Inter, NMBint erorig, la constituant. Ces informations préalablement stockées dans l'unité 13 de la figure 2a, permettent de déterminer la complexité de décodage de chaque image. La complexité de décodage d'une image est donnée par la formule : En parcourant toutes les images de la séquence, on recherchera l'image la plus complexe. Une borne supérieure notée 0 du nombre d'opérations élémentaires par seconde nécessaires au décodage de la séquence sera déduite de la complexité de l'image la plus complexe que nous noterons Omax. La borne supérieure 0 sera, par exemple, calculée de la manière suivante : où Fi est la fréquence temporelle induite par la méthode de transcodage en cours d'évaluation (ici, par exemple, 30 Im/s), NMtrans est le nombre de macroblocs par image dans la séquence transcodée (396 pour une séquence au format CIF, 99 pour une séquence au format QCIF), NMBOn est le nombre de macro-blocs par image dans la séquence originale (par exemple 396). L'estimation de la complexité de décodage d'un macro-bloc varie selon que le macro-bloc est codé en mode Intra ou Inter. Comme décrit ci-après, l'estimation de la complexité de décodage d'un macro-bloc va être détaillée suivant que le codage a lieu en mode Intra ou en mode Inter. 1 ) Codage en mode Intra (estimation de Ointra) Le décodage s'effectuant bloc de données par bloc de données la complexité de décodage d'un macro-bloc est égale à la complexité liée au décodage des quatre blocs qui le composent. Plus particulièrement, on détermine la complexité de décodage d'un bloc en comptabilisant le nombre d'opérations élémentaires intervenant dans les différents algorithmes mis en #uvre dans le processus de décodage. Les valeurs de la complexité liée au décodage DCT sont fournies par l'article "Fast Algorithms for the Discrete Cosine Transform", E. Feig and S. Winograd, IEEE Trans. On Signal Proc., vol. 40, No. 9, September 1992. La table 1 ci-dessous détaille la détermination de la complexité de décodage des différents algorithmes qui interviennent dans le décodage d'un bloc à partir des différentes opérations élémentaires. traitement test Multiplication Addition Affectation VLD 64 Inverse Q 192 256 192 Saturation 128 64 Contrôle 2 64 65 Inverse DCT 94 454 64 Total 322 350 582 385 Table 1 Préférentiellement, toutes ces opérations sont considérées comme élémentaires exceptée la multiplication qui est considérée comme équivalente à deux opérations élémentaires. Ainsi, la complexité totale de décodage d'un macro-bloc (composantes de luminance) codé en mode Intra est de 4*1989=7956 opérations élémentaires. 2) Codage en mode Inter (estimation de Ointer) Dans le cas où le macro-bloc est codé en mode Inter, il faut ajouter à la complexité de décodage en mode Intra, la complexité de décodage liée, d'une part, à la reconstruction du vecteur de mouvement à partir du vecteur de mouvement différentiel qui va être transmis à la machine client 2 de la figure 2a et, d'autre part, à la reconstruction du macro-bloc (reconstruction du macro-bloc de différence et addition de ce macro-bloc avec le macro-bloc prédit). La détermination de la complexité de décodage de ces processus est détaillée dans la table 2 ci-dessous qui fournit, pour chaque processus, le nombre d'opérations élémentaires qui interviennent. Traitement test multiplication Addition affectation VLD 2 Reconstruction vecteur mouvement 7 5 13 11 Reconstruction macro-bloc différence 1288 1400 2328 1540 Construction du macro-bloc prédit 512 256 Reconstruction du macro-bloc 256 256 Total 1295 1405 3109 2065 Table 2 Ainsi, pour le mode Inter ou prédictif, la complexité totale de décodage d'un macro-bloc codé en mode Inter est de 9279 opérations élémentaires. Une fois que la complexité de décodage 0 a été estimée comme proposé ci-dessus, l'étape E404 est suivie d'une étape E405. Au cours de l'étape E405, on teste si la complexité estimée 0 pour décoder la vidéo avec les paramètres de codage courants est inférieure ou égale à la capacité de calcul de la machine client C. Dans l'affirmative, cela signifie que la méthode de transcodage est compatible avec la caractéristique de la machine client. L'étape E405 est alors suivie de l'étape E406 qui teste le type de méthode de transcodage en cours d'analyse. Si c'est une méthode du type réduction de résolution spatiale, l'étape E406 est suivie de l'étape E407 qui procède à une estimation du débit induit par la méthode de transcodage à partir d'un modèle mathématique d'établissement du débit. On verra ultérieurement que ce modèle est adapté à la méthode de transcodage. Cette dernière étape est suivie de l'étape E408 qui vérifie si le débit estimé de la séquence r est inférieur ou égale à la bande passante du réseau de communication BP. Dans l'affirmative, l'étape E408 est suivie de l'étape E411 qui procède à une estimation de la qualité visuelle induite par la méthode de transcodage à partir d'un modèle mathématique et en tenant compte des données à transmettre. Si le résultat du test pratiqué à l'étape E408 est négatif, alors on passe à l'étape E414 qui incrémente la variable m d'une unité, permettant ainsi d'évaluer la méthode de transcodage suivante. Si la méthode de transcodage en cours d'analyse est du type réduction du débit par requantification, l'étape E406 est suivie de l'étape E409. Dans ce cas, le débit r que doit atteindre la méthode de transcodage est connu. L'étape E409 vérifie si le débit r est inférieur ou égal à la bande passante du réseau BP. Dans l'affirmative, l'étape E409 est suivie de l'étape E410 qui estime à partir d'un modèle mathématique de débit le pas de quantification moyen de la séquence après transcodage et stocke cette information dans l'unité 13. On verra ultérieurement que ce modèle est adapté à la méthode de transcodage. Si le résultat du test pratiqué à l'étape E409 est négatif, alors on passe à l'étape E414 déjà décrite. L'étape E410 est suivie de l'étape E411 au cours de laquelle on estime la perte de qualité entre deux séquences vidéo en utilisant, par exemple, la notion de rapport signal sur bruit notée PSNR ("Peak Signal to Noise Ratio") et fournie par la formule suivante : où q, désigne un pixel de l'image décodée, p, un pixel de l'image originale, N le nombre de pixels de l'image et Y la dynamique du signal original, correspondant dans le cas présent à huit bits. Le PSNR fournit une mesure quantitative de la qualité de l'image reconstruite. Elle est déterminée à partir du rapport de l'amplitude maximale du signal sur l'erreur quadratique moyenne notée EQM et qui est égale à 1/N. On remarquera que d'autres méthodes d'estimation d'une qualité peuvent bien entendu être envisagées. L'étape E411 est suivie de l'étape E412 qui compare le PSNR calculé à la valeur maxPSNR. Si le PSNR est supérieur à maxPSNR, on passe à l'étape E413. Au cours de cette étape, maxPSNR prend la valeur de PSNR et Idopt prend la valeur de l'identificateur de la méthode de transcodage courante. L'étape E413 est suivie de l'étape E414 qui incrémente la valeur de m d'une unité pour passer à la méthode de transcodage suivante. Si le résultat du test pratiqué à l'étape E412 est négatif, on passe également à l'étape E414. Notons que les étapes E403, E405, E408 et E409 sont suivies par l'étape E414 si, respectivement, le format de la séquence n'est pas compatible avec l'écran de l'utilisateur, 0 est supérieur à C, r est supérieur à BP. Lorsque le résultat du test pratiqué à l'étape E402 est négatif, cela signifie que toutes les méthodes de transcodage ont été testées. L'étape E402 est dans ce cas suivie de l'étape E415 qui vérifie si Idopt est égal à 0. Une valeur 0 dans Idopt signifie qu'aucune méthode de transcodage n'est compatible avec les caractéristiques de la machine client ou du réseau. Dans ce cas l'étape E415 est suivie de l'étape E417 au cours de laquelle le serveur envoie un message d'erreur à la machine client lui indiquant qu'elle ne pourra pas recevoir la vidéo demandée. Ce message sera envoyé par l'intermédiaire de l'unité 18 de la figure 2a et met fin à l'exécution de l'algorithme. Si, au contraire, Idopt est différent de 0, l'étape E415 est suivie de l'étape E416 qui envoie les paramètres de codage à l'unité de codage 11 qui exécute l'étape E209 de la figure 2b. Ces nouveaux paramètres sont, par exemple, une contrainte de débit et le format de la séquence transcodée. On notera que, dans l'exemple de réalisation décrit, les paramètres transmis correspondent à la méthode de transcodage compatible avec les caractéristiques de la machine client et du réseau et qui maximise la qualité visuelle. Il convient de noter que les étapes E412 et E413 de l'algorithme permettent de sélectionner la méthode de transcodage dont la qualité (ex : PSNR) est la plus élevée, au fur et à mesure que les différentes méthodes de transcodage du tableau sont évaluées. On va maintenant décrire d'une part, l'adaptation de modèles mathématiques d'établissement de la distorsion et du débit aux méthodes de transcodage et, d'autre part, l'utilisation de ces modèles adaptés dans les étapes E407, E410 (modèle de débit) et E411(modèle de distorsion). Le modèle d'estimation de la distorsion selon l'invention a été fourni plus haut et l'on a décrit en référence aux figures 1a à 1 c l'adaptation de ce modèle à une séquence vidéo donnée et à une méthode de codage donnée en recherchant un couple de triplets de paramètres (a, p, y) pour chacun des modes de codage Intra et Inter. Or, à l'étape E411de l'algorithme de la figure 4a on va utiliser un modèle générique c'est-à-dire non adapté à une séquence donnée. Pour ce faire, on utilise un ensemble de séquences vidéo d'entraînement qui sont des séquences vidéo formant un ensemble suffisamment hétérogène pour représenter à peu près tous les cas de figures extrêmes rencontrés en pratique (séquences à mouvement important, à mouvement faible, séquences peu texturées, séquences fortement texturées, ...). Pour chacune des séquences d'entraînement et pour chaque méthode de transcodage envisagée on détermine un triplet (a, ss, y) adapté comme décrit en référence aux figures 1a à 1 c. Cette adaptation est effectuée par l'unité de calcul 17 et l'unité de recherche 19 de la figure 2a. Ensuite, on effectue une moyenne des paramètres obtenus, ce qui fournit un triplet de paramètres génériques [alpha]moyen, Pmoyen, Ymoyen) qui va pouvoir être utilisé à l'étape E411. Ces opérations sont effectuées en dehors d'une connexion établie entre le serveur et la machine client. On notera que l'adaptation de ce modèle aux données de la séquence vidéo courante utilisée lors de l'exécution de l'algorithme de la figure 4a sera effectuée comme décrit en référence aux figures 1a à 1 c, et en utilisant l'adaptation prévue plus haut en cas de modification de la résolution spatiale ou temporelle de la séquence vidéo originale. En ce qui concerne le modèle de débit, les relations débit-énergie sont données pour un macro-bloc par la fonction paramétrique suivante : où R représente le débit et a, b, c et1 sont les paramètres du modèle de débit. Les paramètres a, b, c et1 sont obtenus en utilisant un ensemble de séquences d'entraînement. Ces séquences sont des séquences de données vidéo de test qui doivent former un ensemble suffisamment hétérogène pour représenter à peu près tous les cas de figures extrêmes rencontrés en pratique. Ainsi, par exemple, on trouve parmi ces séquences d'entraînement, des séquences comportant peu de mouvement et d'autres caractérisées par un mouvement important, des séquences peu texturées et d'autres davantage texturées... Pour déterminer les paramètres du modèle défini par la formule de débit précitée, on met en #uvre un processus basé sur un algorithme illustré à la figure 4b. Cet algorithme sera exécuté à partir d'un ensemble de séquences d'entraînement stockées préalablement au format YUV 4 :2:0, parexemple, dans l'unité de stockage 13 de la figure 2a. Chaque séquence, identifiée par un numéro allant de 1 à F, sera codée lors de l'exécution de cet algorithme. L'algorithme débute à l'étape E601 par l'initialisation de la variable f à 1. Cette variable représente le numéro de la séquence en cours d'analyse. Au cours de l'étape E601, on initialise aussi un tableau qui contiendra, pour chaque macro-bloc de chaque séquence (identifié par le numéro de la séquence, le numéro de l'image qui le contient et sa position dans cette image), la variance du macro-bloc et, pour chaque paramètre de quantification possible, le débit du macro-bloc. L'étape E601 est suivie de l'étape E602 au cours de laquelle on mesure et on stocke dans le tableau précité la variance de chaque macro-bloc. L'étape E602 est suivie de l'étape E603 au cours de laquelle on initialise à 1 la variable QP représentant le paramètre de quantification affecté à tous les macro-blocs de la séquence lors du codage. L'étape E603 est suivie de l'étape E604 au cours de laquelle on procède au codage de tous les macro-blocs de la séquence avec le paramètre de quantification QP. L'étape E604 est suivie de l'étape E605 au cours de laquelle on procède au décodage du train binaire généré à l'étape E604. Durant ce décodage, l'unité de décodage mesure le débit de chaque macro-bloc par rapport aux macro-blocs originaux. Ces informations sont stockées dans le tableau précité. L'étape E605 est suivie de l'étape E606 au cours de laquelle on vérifie si le paramètre de quantification QP est inférieur au paramètre de quantification maximal MaxQP. Dans l'affirmative, on passe à l'étape E609 au cours de laquelle on incrémente de 1 le pas de quantification. Si QP=MaxQP, on passe à l'étape E607 au cours de laquelle on vérifie si le numéro de la séquence courante f est inférieur au numéro de séquence maximum F. Dans l'affirmative, on passe à l'étape E610 au cours de laquelle on incrémente d'une unité le numéro de séquence f pour passer à la séquence suivante. Si f=F on passe à l'étape E608 au cours de laquelle on procède à la recherche des paramètres a, b, c et # du modèle visé plus haut. Le processus visé à l'étape E608 consiste à générer un ensemble de nuages de points représentant, pour chaque pas de quantification, le débit en fonction de la variance. Il convient de noter que toutes les informations nécessaires à la génération du nuage de points sont celles qui ont été stockées dans le tableau visé plus haut. On recherche ensuite les courbes D (S) R (S) représentent le mieux le nuage de point. Toute méthode permettant de trouver une courbe représentant au mieux un nuage de points peut convenir. Dans la description de l'exemple de réalisation, on utilisera une méthode visuelle. Il convient de noter que le modèle de débit peut être représenté par une seule courbe en normalisant le débit et la variance par rapport au pas de quantification QP. Pour ce faire, on remplace, dans la formule précitée de débit, S et R par leurs valeurs normalisées respectives S et D . La relation entre S et S est donnée par: La relation permettant de retrouver pour chaque QP les valeurs de débit à partir de la courbe normalisée est donnée par la formule suivante : R(S, QP) = R(S) Le processus de normalisation pourra s'insérer entre les étapes E607 et E608 de l'algorithme. Ce processus consiste à générer à partir du tableau cité plus haut un second tableau qui contiendra pour chaque macro-bloc, sa variance normalisée et son débit normalisé. Un nuage de points représentant les valeurs de débit normalisées en fonction de la variance normalisée est généré. La recherche des paramètres du modèle se fera alors à partir de ce nuage de points. En normalisant le débit et la variance par rapport au pas de quantification, cela permet d'éviter d'avoir recours à un modèle pour chaque pas de quantification et donc de devoir déterminer un jeu de paramètres pour ce modèle. Il convient de noter que ce modèle ne permet pas de distinguer les macro-blocs suivant leur mode de codage, alors que l'on sait, par exemple, que les macro-blocs codés en mode Intra et Inter ont un comportement très différent notamment en terme de débit. Une amélioration de ce modèle peut alors être obtenue en déterminant un jeu de paramètres spécifique à chaque mode de codage envisagé. * Ainsi, dans l'exemple de réalisation décrit, on itèrera deux fois l'algorithme de la figure 4b : une première fois en ne codant les séquences d'entraînement qu'avec des macro-blocs codés en mode Intra (pour déterminer des paramètres spécifiques au mode Intra) et une seconde fois en ne codant les séquences d'entraînement qu'avec des macro-blocs codés en mode Inter (pour déterminer des paramètres spécifiques au mode Inter). Suivant une deuxième approche, on adapte le modèle d'établissement du débit aux méthodes de transcodage. Cette adaptation peut être effectuée au tout début des étapes E407 et E410 de l'algorithme de la figure 4a ou bien préalablement, en dehors de l'exécution de cet algorithme. Cette dernière solution permet de réduire le temps d'exécution de l'algorithme. Suivant le type de la méthode de transcodage déterminé à l'étape E406 et suivant la méthode qui va être évaluée ensuite lors de l'exécution des étapes suivantes, on procède de deux manières différentes. Lorsque la méthode de transcodage est basée sur une réduction du débit par requantification, on exécute l'algorithme de la figure 4b pour déterminer les paramètres spécifiques du modèle de débit a, b, c et I. Toutefois, dans ce cas, l'algorithme de la figure 4b comportera une étape supplémentaire de décodage insérée entre les étapes E601 et E602 et après l'étape E610, car les séquences de données vidéo fournies au début de l'algorithme seront cette fois-ci codées. Lorsque la méthode de transcodage est basée sur une réduction de la résolution spatiale, on détermine les paramètres du modèle de débit de façon identique à ce qui à été précédemment décrit. Lorsque la méthode de transcodage réduira la fréquence temporelle, les valeurs de débit mesurées à l'étape E604 seront multipliées par la fraction d'images conservées dans la séquence codée avant d'être stockées dans le tableau précité en vue de la formation d'un nuage de points débit / variance. Par exemple, si la fréquence temporelle de la séquence originale est de 30 images/seconde et que celle de la séquence codée est de 15 images/seconde, on multipliera le débit mesuré par 15/30. Il convient de remarquer que les processus d'adaptation qui viennent d'être décrits sont généraux dans la mesure où ils ne dépendent pas du mode de codage. Pour appliquer ces processus à un mode de codage, il conviendra de coder tous les macro-blocs des séquences d'entraînement suivant ce mode. On notera que l'on obtient ainsi deux modèles spécifiques, l'un adapté à la réduction de la résolution spatiale, l'autre adapté à la réduction du débit par requantification. Toutefois, selon le taux de réduction appliqué à la résolution spatiale, le modèle variera et il faudra donc déterminer les nouveaux paramètres adaptés à ce modèle. Par contre, comme on l'a vu précédemment, grâce à la normalisation du débit et de la variance par rapport au pas de quantification, un modèle unique adapté aux méthodes de transcodage utilisant une réduction du débit par requantification peut être utilisé. Les paramètres adaptés du modèle ne seront donc pas modifiés. On va maintenant décrire l'utilisation des modèles mathématiques d'établissement de la distorsion et du débit aux différents types de méthodes de transcodage qui est faite lors de l'exécution des étapes E407, E410 et E411 de l'algorithme de la figure 4a selon l'invention. Ici, on notera que les modèles adaptés aux méthodes de transcodage vont être appliqués aux données vidéo de la séquence à transmettre ou, à tout le moins, à des informations représentatives de ces données. Ceci va permettre d'évaluer la qualité des méthodes de transcodage testées de façon plus efficace que dans l'art antérieur où la qualité des méthodes de transcodage est évaluée indépendamment des données à transmettre. Quelle que soit la méthode de transcodage analysée, lors de l'exécution des étapes E407, E410 et E411, on commencera par extraire de l'unité de stockage 13 de la figure 2a les informations de variance? et le nombre de macro-blocs codés en mode Intra NMBint raong et Inter NMBint erong de chaque image stockés dans l'unité 13. Dans le cas d'une méthode de transcodage basée sur une réduction de la résolution spatiale, on calculera pour chaque image une distorsion et un débit. La distorsion de chaque image DI (sous la forme d'une erreur quadratique moyenne ou EQM) sera donnée par le modèle d'estimation de la distorsion selon l'invention donné plus haut en y introduisant la variance moyenne et le paramètre de quantification moyen de l'image à transcoder. On rappelle que cette dernière information est extraite de l'unité de stockage 13 de la figure 2a où elle a préalablement été stockée. La distorsion d'un macro-bloc codé en mode Intra est donnée par : où [alpha]1 intra, ss1 intra, Yi intra sont les paramètres du modèle pour les macro-blocs codés en mode Intra spécifiques à la réduction de la résolution spatiale et lest la version normalisée de s . Pour déterminer la distorsion des macro-blocs codés en mode Inter #int er (#) on remplacera les paramètres spécifiques au mode Intra par les paramètres spécifiques au mode Inter, à savoir : [alpha]1 inter, ss1 inter, [gamma]1 inter. Dans l'exemple de réalisation, le nombre de macro-blocs codés en mode Intra NMBint ra et le nombre de macro-blocs codés en mode Inter NMBint er d'une image de la séquence transcodée sont obtenus par les formules suivantes : Si NMBint ra et NMBint er ne sont pas entiers, on remplacera, par exemple, la valeur calculée de NMBmtra par l'entier immédiatement supérieur et la valeur calculée de NMBint er par l'entier immédiatement inférieur. On déduit ensuite la distorsion de chaque image par la formule : On obtiendra le PSNR de l'image en introduisant l'erreur quadratique moyenne EQM D, dans la formule (1) du PSNR donnée plus haut. De manière similaire, le débit de l'image RI sera obtenu à l'aide du modèle mathématique fourni par la formule : où a1m, b1m et c1m sont les paramètres du modèle d'établissement de débit spécifiques à la réduction de la résolution spatiale, m pouvant prendre la valeur "intra" ou la valeur "inter". Le débit de l'image s'écrit ainsi : Dans l'exemple de réalisation décrit, la distorsion de la séquence transcodée sera obtenue, par exemple, en faisant la moyenne des distorsions de chaque image. Le débit de la séquence sera obtenu, par exemple, en faisant la moyenne des débits de chaque image puis en multipliant cette moyenne par la fréquence temporelle de la séquence transcodée (ici 30 Im/s) pour obtenir un débit en bits/s. Dans le cas d'une méthode de transcodage basée sur une réduction du débit par requantification on connaît le débit que doit atteindre la méthode de transcodage. A l'étape E410 de l'algorithme de la figure 4a, on déduit de cette valeur le débit moyen d'une image RI en la divisant par la fréquence temporelle. Le débit moyen d'un macro-bloc de la séquence RMB est ensuite obtenu durant cette étape en divisant #I par NMB (qui, ici, est égal à 396). Toujours à l'étape E410, connaissant la variance moyenne s d'un macro-bloc de l'image et le débit moyen #MB d'un macro-bloc de chaque image, le pas de quantification moyen de chaque image transcodée # sera déduit en recherchant la courbe R(S,QP) la plus proche des points (s, #MB ) dans l'espace débit-variance. Pour déterminer la distorsion de chaque image, il reste alors à introduire dans le modèle d'estimation de la distorsion selon l'invention donné plus haut le paramètre de quantification déterminé et la variance moyenne de l'image comme indiqué ci-après : où [alpha]2m, P2m, Y2m sont les paramètres du modèle spécifiques à la réduction du débit par requantification, m pouvant prendre les valeurs "intra" ou "inter". On obtiendra là encore le PSNR de la séquence en introduisant l'erreur quadratique moyenne DI dans la formule (1) du PSNR donnée plus haut. Dans l'exemple de réalisation, la distorsion de la séquence transcodée sera obtenue, par exemple, en faisant la moyenne des distorsions de chaque image. Il convient donc de remarquer que l'utilisation de ces modèles débit/distorsion est un moyen rapide de déterminer les informations de PSNR (qualité) et de débit nécessaires à la sélection d'une méthode de transcodage optimale. Une seconde application envisageable pour le modèle d'estimation de la distorsion selon l'invention consiste à insérer ce modèle dans un algorithme de régulation de débit ou de sélection de modes de codage et de paramètres de quantification. On connaît un algorithme de régulation de débit source/canal d'après l'article "Joint source and channel Rate Allocation for Video Over Erasure Channels", X. Hénocq, C. Guillemot, F. Le Léannec faisant partie des actes de EUSIPCO 2000,4-8 septembre 2002,Tampere, Finlande et qui est destiné à un codeur appliquant le standard de codage H263 version 2. Cet algorithme a pour but d'assurer des transmissions fiables de flux vidéo sur l'internet tout en respectant les contraintes de débit lié au réseau. On sait en effet que ce type de réseau subit fréquemment des phénomènes de congestion provoquant des erreurs de transmission telles que des pertes de paquets. Compte tenu de ce qui précède, il est nécessaire de prendre en compte lors du codage vidéo (dit codage de source) les contraintes de débit afin de ne pas amplifier la congestion du réseau. Par ailleurs, pour faire face aux pertes, l'algorithme prévoit de rendre le flux plus robuste en s'appuyant sur deux approches complémentaires : - Augmentation de la robustesse du flux par insertion de macro-blocs Intra : l'une des limitations des méthodes de codage vidéo utilisant de la prédiction temporelle réside dans le fait que la perte d'un macro-bloc peut affecter les macro-blocs Inter des images suivantes si ceux-ci utilisent le macrobloc perdu comme référence. On appelle ce phénomène la propagation des pertes. On sait par contre qu'un macro-bloc Intra ne fait référence à aucun autre macro-bloc. En Insérant des macro-blocs Intra dans un flux vidéo, on limite donc la propagation des erreurs. Toutefois, en augmentant le nombre de macro-blocs Intra on réduit l'efficacité de la compression. Il est donc nécessaire de trouver un compromis entre efficacité de compression et protection contre les pertes. - Augmentation de la robustesse du flux par utilisation de codes correcteurs d'erreurs : pour pallier d'éventuelles pertes, on insère dans le flux transmis des codes correcteurs d'erreurs qui permettront de corriger toute perte dont la longueur sera inférieure au pouvoir de correction du code. Toutefois, l'insertion de codes correcteurs d'erreurs risque d'augmenter le débit et il sera alors nécessaire de partager la contrainte de débit entre le débit des données de source (données images) et le débit des données de protection (également appelées données canal). Une optimisation de la distorsion sous une contrainte de débit imposée par le réseau permet de déterminer pour chaque macro-bloc, le mode de codage et le paramètre de quantification optimal et, pour chaque image, le taux de protection du code correcteur d'erreur. Considérons M = {M1,...,MNMB} # {INTR A, INTER,NON - CODE}NMB, l'ensemble des modes de codage choisis pour chaque macro-bloc d'une image, Q = {QP1,...,QPNMB} # [1,...31]NMB,l'ensemble des paramètres de quantification choisis pour chaque macro-bloc de l'image et notons K/N le taux de protection accordé à chaque image et NMB le nombre de macro-blocs dans une image. L'optimisation de la distorsion sous contrainte d'un débit s'écrit sous une forme lagrangienne : avec où D est la distorsion du macro-bloc X, avec un mode de codage M,, un taux de protection K/N et un paramètre de quantification QP,, R est le débit du macro-bloc considéré en fonction de son mode de codage et de son paramètre de quantification et ,est le paramètre de Lagrange. Le résultat de cette optimisation est, pour chaque image, un ensemble de modes de codage, de paramètres de quantification et un taux de protection optimaux et compatibles avec la contrainte de débit imposée par le réseau. L'une des contraintes de cet algorithme de régulation du débit réside dans le fait qu'il doit être exécuté en temps réel. Il a donc été nécessaire de définir une stratégie permettant de déterminer les informations de distorsion et de débit sans avoir à pré-coder chaque macro-bloc dans chaque mode de codage possible et pour chaque paramètre de quantification. La méthode proposée dans l'article cité ci-dessus consiste à s'appuyer sur deux modèles, l'un donnant le débit en fonction de la variance et l'autre donnant la distorsion en fonction de la variance. La version originale de cet algorithme utilise donc le modèle de distorsion décrit dans l'article "Normalized Rate-distortion Model for H.263-compatible Codecs and Its Application to Quantizer selection", de K. H. Yang, A . Jacquin, N. S. Jayant, proc. ICIP 97 et le modèle de débit de l'article "Rate control for low-delay video communications", de J. Ribas-Corbera, S. Lei, Rapport Technique ITU-Telecommunications Standardization sector, Video coding expert group, Document Q15-A-20, juin 1997. L'une des limitations de cet algorithme, se situe au niveau du modèle de distorsion car, contrairement au modèle de débit, les paramètres du modèle de distorsion ne sont jamais adaptés à la séquence codée, du fait de la complexité du modèle. En remplaçant ce modèle par le modèle d'estimation de la distorsion selon l'invention on profite ainsi de la simplicité de ce dernier. La figure 5 illustre un algorithme de régulation de débit mettant en #uvre l'invention et qui comporte différentes instructions ou portions de code logiciel correspondant à des étapes du procédé selon l'invention. Le programme informatique basé sur cet algorithme est stocké dans l'appareil 1 de la figure 2a et dans l'appareil programmable de la figure 6. L'exécution du programme informatique permet ainsi de mettre en #uvre le procédé selon l'invention dans cette deuxième application. L'algorithme débute par une première étape S60 qui prévoit d'effectuer une prédiction de mouvement sur chaque macro-bloc de l'image considéré. L'étape S60 permet ainsi de déterminer pour chaque macro-bloc un vecteur de mouvement. Au cours de l'étape suivante S61, on extrait des données de l'image qui sont, dans l'exemple considéré, deux valeurs de variance pour chaque macro-bloc de l'image. On extrait ainsi une première information de variance des macro-blocs de l'image qui est calculée directement sur les données au format YUV de cette image et cette information de variance sera utilisée dans le modèle d'estimation de la distorsion selon l'invention adapté au mode de codage Intra. On extrait également une deuxième information de variance de l'erreur de prédiction qui est issue de la prédiction de mouvement et qui sera utilisée ultérieurement dans le modèle d'estimation de la distorsion adapté au mode de codage Inter. Au cours de l'étape S62, on procède à l'optimisation des modes de codage, des paramètres de quantification et du taux de protection de l'image en utilisant la forme lagrangienne de la formule citée plus haut d'optimisation de la distorsion sous contrainte d'un débit. On notera que lors de cette étape, la détermination des informations de distorsion pour les macro-blocs codés en mode Intra et ceux codés en mode Inter et qui sont nécessaires à l'optimisation est effectuée en appliquant le modèle de distorsion selon l'invention aux informations de variance des macro-blocs précités selon le mode de codage envisagé. On notera également que l'algorithme de la figure 5 n'utilise pas de modèle d'estimation de la distorsion selon l'invention adapté à la séquence vidéo courante tant que le nombre d'images codées est, par exemple, inférieur à trente, ce chiffre permettant en effet dans cet exemple d'obtenir une précision suffisante. Lors de l'étape S62 on utilisera ainsi un couple de triplets de paramètres, l'un adapté au mode de codage Intra et l'autre adapté au mode de codage Inter, qui auront été déterminés à partir de séquences d'entraînement. Au-delà de la trentième image codée, les deux triplets de paramètres seront remis à jour toutes les trente images. Au cours de l'étape suivante S63, on procède au codage de la séquence vidéo suivant les modes de codage et les paramètres de quantification déterminés à l'étape S62 et suivant les vecteurs de mouvement déterminés à l'étape S60. Au cours de l'étape suivante S64, il est prévu d'appliquer au flux binaire généré lors du codage de l'image un code correcteur d'erreurs afin de générer des données de protection. Le code correcteur d'erreurs utilisé ici est de type Reed-Solomon systématique qui est fourni dans l'ouvrage "Error-control coding for data networks", de I. S. Reed, S. Lei, Kluwer Académie Publishers, 1999. L'étape suivante S65 consiste à mettre sous la forme de paquets de données le flux généré lors du codage de l'image et auquel on a appliqué un code correcteur d'erreurs. Au cours de l'étape suivante S66, les paquets de données mis en forme à l'étape précédente sont transmis sur le réseau Internet. L'algorithme comporte ensuite une étape S67 au cours de laquelle un test est pratiqué afin de déterminer si toutes les images de la séquence vidéo considérée ont été traitées. Dans la négative, alors cette étape est suivie d'une étape S68 qui prévoit de traiter l'image suivante. Cette étape est alors suivie de l'étape S60 déjà décrite ci-dessus. Lorsque l'image traitée par l'algorithme de la figure 5 est la dernière image de la séquence vidéo, alors il est mis fin à l'algorithme. Il convient de noter qu'en parallèle de l'exécution de l'étape S63, une étape S69 est également exécutée afin de déterminer la distorsion réelle de chaque macro-bloc de l'image après avoir effectué le codage du macro-bloc considéré. La détermination de cette distorsion réelle sous forme d'erreur quadratique moyenne est effectuée de façon connue à partir du macro-bloc original et du macro-bloc codé. Au cours de l'étape suivante S70, il est prévu de stocker pour chaque macro-bloc, son mode de codage, son paramètre de quantification, sa distorsion réelle et l'information de variance le caractérisant, à savoir la variance du macro-bloc s'il s'agit d'un macro- bloc codé en mode Intra ou la variance de l'erreur de prédiction s'il s'agit d'un macro-bloc codé en mode Inter. Au cours de l'étape suivante S71, on effectue un test afin de déterminer si le nombre d'images codées depuis la dernière a atteint la valeur de trente images. Dans l'affirmative, alors on passe à l'étape S72 au cours de laquelle les paramètres des modèles d'estimation de la distorsion remis à jour comme expliqué en référence aux figures 1a, 1 b et 1 c. Dans la négative, ce processus parallèle s'arrête et il sera repris ultérieurement lors de la prochaine exécution de l'étape S63. Il convient toutefois de noter qu'à la différence de l'exposé fait en référence aux figures 1a, 1 b et 1 c, où tous les macro-blocs avaient un même paramètre de quantification, ici les paramètres de quantification des macroblocs sont différents. Aussi, afin de disposer de valeurs de distorsion qui sont comparables, on normalisera les valeurs de variance et de distorsion. Les nouveaux paramètres des modèles d'estimation de la distorsion obtenus au cours de l'étape S72 seront ensuite utilisés lors du codage des trente images suivantes. Il convient également de noter que le modèle d'estimation de la distorsion proposé selon l'invention peut également remplacer les modèles de distorsion utilisés dans des algorithmes de régulation de débit et qui sont exposés dans l'article "Normalized Rate-distortion Model for H.263-compatible Codées and Its Application to Quantizer selection", de K. H. Yang, A . Jacquin, N. S. Jayant, proc. ICIP 97 et dans le document US 6 111 991 au nom de Sharp Laboratories of America. L'utilisation du modèle d'estimation de la distorsion selon l'invention dans l'algorithme de régulation de débit proposé dans l'article cité ci-dessus permet d'obtenir un gain en adaptativité. L'utilisation du modèle d'estimation de la distorsion selon l'invention dans l'algorithme de régulation de débit proposé dans le document US 6 111 991 permet d'obtenir une amélioration de la précision des valeurs de distorsion fournies par ce modèle. En référence à la figure 6, est décrit un exemple d'appareil programmable mettant en #uvre l'invention. Cet appareil est adapté à traiter des images ou des séquences vidéo en vue de les transmettre. Le serveur de la figure 2a prend, par exemple, la forme de l'appareil de la figure 6 qui inclut un dispositif selon l'invention, c'est-à-dire possédant tous les moyens nécessaires à la mise en #uvre d'exemples de réalisation de l'invention (moyens d'application du modèle pondéré à des informations représentatives d'au moins une mesure de l'énergie de l'image, moyens de recherche d'un n-uplet de paramètres, moyens de détermination d'un espace de recherche limité, moyens de division du nuage de points, moyens d'adaptation du modèle, moyens d'obtention de valeurs de distorsion, moyens de sélection d'une méthode de transcodage), ou constitue lui-même un tel dispositif selon l'invention. Selon le mode de réalisation choisi et représenté à la figure 6, un appareil mettant en #uvre l'invention est par exemple un micro-ordinateur 500 ou une station de travail connecté à différents périphériques, par exemple une caméra numérique 501 (ou un scanner, ou tout moyen d'acquisition ou de stockage d'image) reliée à une carte graphique et fournissant à l'appareil des données à adapter et à transmettre. L'appareil 500 comporte un bus de communication 502 auquel sont reliés : - une unité centrale de traitement 503 (microprocesseur), qui exerce la fonction de l'unité de commande 22 de la figure 2a, - une mémoire morte 504, pouvant comporter le programme "Progr" qui est basé sur les algorithmes des figures 1a, 1 b, 1 ce 5 et ceux des figures 2b, 4a et 4b, - une mémoire vive 506, comportant des registres 507 adaptés à enregistrer des variables créées et modifiées au cours de l'exécution du programme précité et notamment les variables a, ss, y, aopt, ssopt, [alpha]opt, Icumul, Imin, n, amin, amax, ssmin, Pmax, Ymin, Ymax, Ni, TAB, D(QP,Sn), Dn(QP,Sn), QP, Sn k, K, r, BP, 0, C, PSNR, MaxPSNR, Idopt, Id, m et M mentionnées en référence aux figures précédentes, - un écran 508 permettant de visualiser les données à traiter et/ou de servir d'interface graphique avec l'utilisateur qui pourra interagir avec le programme selon l'invention, à l'aide d'un clavier 510 ou de tout autre moyen tel qu'un dispositif de pointage non représenté, comme par exemple une souris ou un crayon optique, - un disque dur 512 pouvant comporter le programme "Progr" précité, - un lecteur de disquette 514 adapté à recevoir une disquette 516 et à y lire ou à y écrire des données traitées ou à traiter selon l'invention, - une interface de communication 518 reliée à un réseau de communication 520, par exemple le réseau Internet, l'interface étant apte à transmettre et à recevoir des données. Dans le cas de données audio, l'appareil comprend en outre une carte d'entrée/sortie reliée à un microphone qui sont tous deux non représentés. Le bus de communication permet la communication et l'interopérabilité entre les différents éléments inclus dans le micro-ordinateur 500 ou reliés à lui. La représentation du bus n'est pas limitative et, notamment, l'unité centrale est susceptible de communiquer des instructions à tout élément du microordinateur 500 directement ou par l'intermédiaire d'un autre élément du microordinateur 500. Le code exécutable du programme noté "Progr" permettant à l'appareil programmable de mettre en #uvre les procédés de modélisation de la distorsion (figures 1a à 1 d) de récupération du contexte (figure 2b), de codage/décodage (figures 3a et 3b) de sélection d'une méthode de transcodage (figures 4a et 4b) des données selon l'invention et de régulation de débit (figure 5) selon l'invention , peut être stocké par exemple dans le disque dur 512 ou en mémoire morte 504 comme représenté sur la figure 6. Bien qu'un seul programme soit identifié, il est possible d'avoir plusieurs programmes ou sous programmes pour mettre en #uvre l'invention. Selon une variante, la disquette 516, peut contenir des données compressées et stockées ainsi que le code exécutable du ou des programmes selon l'invention qui, une fois lu par l'appareil 500, sera stocké dans le disque dur 512. En seconde variante, le code exécutable du ou des programmes pourra être reçu par l'intermédiaire du réseau de communication 520, via l'interface 518, pour être stocké de façon identique à celle décrite précédemment. Les disquettes peuvent être remplacées par tout support d'information tel que, par exemple, un disque compact (CD-ROM) ou une carte mémoire. De manière générale, un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non à l'appareil, éventuellement amovible, est adapté à mémoriser un programme dont l'exécution permet la mise en #uvre du procédé selon l'invention. De manière plus générale, le programme pourra être chargé dans un des moyens de stockage de l'appareil 500 avant d'être exécuté. L'unité centrale 503 va commander et diriger l'exécution des instructions ou portions de code logiciel du ou des programmes selon l'invention, instructions qui sont stockées dans le disque dur 512 ou la mémoire morte 504 ou bien dans les autres éléments de stockage précités. Lors de la mise sous tension, le ou les programmes qui sont stockés dans une mémoire non volatile, par exemple le disque dur 512 ou la mémoire ROM 504, sont transférés dans la mémoire vive RAM 506 qui contiendra alors le code exécutable du ou des programmes selon l'invention, ainsi que des registres pour mémoriser les variables nécessaires à la mise en #uvre de l'invention. Il convient de noter que l'appareil de traitement de données comportant un dispositif selon l'invention peut également être un appareil programmé. Cet appareil contient alors le code du ou des programmes informatiques par exemple figé dans un circuit intégré à application spécifique (ASIC). On notera que l'appareil de la figure 6 qui contient le programme "Progr" précédemment mentionné peut être, dans le cadre d'une architecture de communication du type client-serveur, le dispositif 4 de la figure 2a. REVENDICATIONS 1. Procédé de modélisation de la distorsion générée par le codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique, caractérisé en ce que le procédé comporte une étape (S43) d'application, à des informations représentatives d'au moins une mesure d'énergie de l'image, du modèle d'estimation de la distorsion pondéré par au moins un opérateur exponentiel. 2. Procédé selon la revendication 1, caractérisé en ce que, le modèle pondéré d'estimation de la distorsion faisant intervenir un n-uplet de paramètres, le procédé comporte une étape de recherche d'un n-uplet de paramètres permettant de minimiser la distance entre, d'une part, un nuage de points représentant la distorsion réelle mesurée d'un ensemble de données de l'image en fonction d'une mesure de leur énergie et, d'autre part, l'ensemble des points distorsion-mesure d'énergie obtenus en appliquant le modèle pondéré d'estimation de la distorsion. 3. Procédé selon la revendication 2, caractérisé en ce qu'il comporte une étape préalable de détermination, pour chaque paramètre du nuplet, d'un espace de recherche délimité par des bornes qui sont obtenues à partir d'un ensemble d'images dites d'entraînement représentatives de l'hétérogénéité des images à traiter. 4. Procédé selon la revendication 2 ou 3, caractérisé en ce qu'il comporte une étape de division du nuage de points distorsion-mesure d'énergie en plusieurs sous-nuages représentés chacun par un point affecté des valeurs moyennes de la distorsion et de la mesure d'énergie et appelé représentant de tous les points du sous-nuage considéré, la distance à minimiser étant alors prise entre, d'une part, les points représentants des sous-nuages et, d'autre part, l'ensemble des points distorsion-mesure d'énergie obtenus par le modèle pondéré et correspondant aux moyennes des énergies de chaque sous-nuage. 5. Procédé selon l'une des revendications 1 à 4, caractérisé en ce que le procédé comporte une étape d'adaptation du modèle pondéré d'estimation de la distorsion en fonction d'un ou de plusieurs paramètres de codage caractérisant une méthode de codage utilisée pour le codage de l'image. 6. Procédé selon la revendication 5, caractérisé en ce que la méthode de codage utilisée fait intervenir une modification de la résolution spatiale de l'image à coder. 7. Procédé selon la revendication 5, caractérisé en ce que la méthode de codage utilisée pour le codage d'une séquence vidéo fait intervenir une modification de la résolution temporelle de la séquence vidéo à coder. 8. Procédé selon l'une des revendications 1 à 7, caractérisé en ce que la variance est une mesure d'énergie de l'image. 9. Procédé selon la revendication 8, caractérisé en ce que le modèle pondéré d'estimation de la distorsion s'applique à des informations représentatives de la variance d'un bloc de données de l'image. 10. Procédé selon la revendication 9, caractérisé en ce que le modèle d'estimation de la distorsion pondéré s'écrit : où a, ss, y sont des paramètres du modèle et S est la variance d'un bloc de données de l'image, S étant la variance normalisée et s'écrivant : où QP représente un paramètre de quantification du bloc de données considéré. 11. Procédé de sélection d'une méthode parmi un ensemble de méthodes de transcodage d'au moins une image numérique, l'image étant susceptible d'être transférée entre au moins deux appareils de communication par l'intermédiaire d'un réseau de communication, caractérisé en ce que le procédé comporte les étapes suivantes : - pour chaque méthode de transcodage, obtention d'une valeur de distorsion à partir d'un modèle d'estimation de la distorsion en tenant compte de ladite méthode de transcodage, le modèle de distorsion comportant au moins un opérateur logarithmique pondéré par au moins un opérateur exponentiel et étant appliqué à des informations représentatives d'au moins une mesure d'énergie de l'image, - sélection d'une méthode de transcodage en fonction des différentes valeurs de distorsion obtenues pour l'ensemble des méthodes de transcodage. 12. Procédé de régulation du débit de codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion générée par le codage de l'image, le modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique, caractérisé en ce que le procédé comporte une étape d'application, à des informations représentatives d'au moins une mesure d'énergie de l'image, du modèle d'estimation de la distorsion pondéré par au moins un opérateur exponentiel. 13. Dispositif de modélisation de la distorsion générée par le codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique, caractérisé en ce que le dispositif comporte des moyens d'application, à des informations représentatives d'au moins une mesure d'énergie de l'image, du modèle d'estimation de la distorsion pondéré par au moins un opérateur exponentiel. 14. Dispositif selon la revendication 13, caractérisé en ce que, le modèle pondéré d'estimation de la distorsion faisant intervenir un n-uplet de paramètres, le dispositif comporte des moyens de recherche d'un n-uplet de paramètres permettant de minimiser la distance entre, d'une part, un nuage de points représentant la distorsion réelle mesurée d'un ensemble de données de l'image en fonction d'une mesure de leur énergie et, d'autre part, l'ensemble des points distorsion-mesure d'énergie obtenus en appliquant le modèle pondéré d'estimation de la distorsion. 15. Dispositif selon la revendication 14, caractérisé en ce qu'il comporte des moyens de détermination préalable , pour chaque paramètre du n-uplet, d'un espace de recherche délimité par des bornes qui sont obtenues à partir d'un ensemble d'images dites d'entraînement représentatives de l'hétérogénéité des images à traiter. 16. Dispositif selon la revendication 14 ou 15, caractérisé en ce qu'il comporte des moyens de division du nuage de points distorsion-mesure d'énergie en plusieurs sous-nuages représentés chacun par un point affecté des valeurs moyennes de la distorsion et de la mesure d'énergie et appelé représentant de tous les points du sous-nuage considéré, la distance à minimiser étant alors prise entre, d'une part, les points représentants des sousnuages et, d'autre part, l'ensemble des points distorsion-mesure d'énergie obtenus par le modèle pondéré et correspondant aux moyennes des énergies de chaque sous-nuage. 17. Dispositif selon l'une des revendications 13 à 16, caractérisé en ce que le dispositif comporte des moyens d'adaptation du modèle pondéré d'estimation de la distorsion en fonction d'un ou de plusieurs paramètres de codage caractérisant une méthode de codage utilisée pour le codage de l'image. 18. Dispositif selon la revendication 17, caractérisé en ce que la méthode de codage utilisée fait intervenir une modification de la résolution spatiale de l'image à coder. 19. Dispositif selon la revendication 17, caractérisé en ce que la méthode de codage utilisée pour le codage d'une séquence vidéo fait intervenir une modification de la résolution temporelle de la séquence vidéo à coder. 20. Dispositif selon l'une des revendications 13 à 19, caractérisé en ce que la variance est une mesure d'énergie de l'image. 21. Dispositif selon la revendication 20, caractérisé en ce que le modèle pondéré d'estimation de la distorsion s'applique à des informations représentatives de la variance d'un bloc de données de l'image. 22. Dispositif selon la revendication 21, caractérisé en ce que le modèle d'estimation de la distorsion pondéré s'écrit : #(#)=[alpha].exp(sslog(#)).log([gamma] S+1), où a, ss, y sont des paramètres du modèle et S est la variance d'un bloc de données de l'image, S étant la variance normalisée et s'écrivant : S (2QP) 2 où QP représente un paramètre de quantification du bloc de données considéré. 23. Dispositif de sélection d'une méthode parmi un ensemble de méthodes de transcodage d'au moins une image numérique, l'image étant susceptible d'être transférée entre au moins deux appareils de communication par l'intermédiaire d'un réseau de communication, caractérisé en ce que le dispositif comporte : - pour chaque méthode de transcodage, des moyens d'obtention d'une valeur de distorsion à partir d'un modèle d'estimation de la distorsion en tenant compte de ladite méthode de transcodage, le modèle de distorsion comportant au moins un opérateur logarithmique pondéré par au moins un opérateur exponentiel et étant appliqué à des informations représentatives d'au moins une mesure d'énergie de l'image, - des moyens de sélection d'une méthode de transcodage en fonction des différentes valeurs de distorsion obtenues pour l'ensemble des méthodes de transcodage. 24. Dispositif de régulation du débit de codage d'au moins une image numérique faisant intervenir un modèle d'estimation de la distorsion générée par le codage de l'image, le modèle d'estimation de la distorsion comportant au moins un opérateur logarithmique, caractérisé en ce que le dispositif comporte des moyens d'application, à des informations représentatives d'au moins une mesure d'énergie de l'image, du modèle d'estimation de la distorsion pondéré par au moins un opérateur exponentiel. 25. Appareil de communication, caractérisé en ce qu'il comporte un dispositif de modélisation selon l'une des revendications 13 à 22. 26. Appareil de communication, caractérisé en ce qu'il comporte un dispositif de modélisation selon la revendication 23. 27. Appareil de communication, caractérisé en ce qu'il comporte un dispositif de régulation de débit selon la revendication 24. 28. Moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de modélisation selon l'une des revendications 1 à 10. 29. Moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de modélisation selon la revendication 11. 30. Moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de régulation de débit selon la revendication 12. 31. Moyen de stockage d'informations amovible, partiellement ou totalement lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de modélisation selon l'une des revendications 1 à 10. 32. Moyen de stockage d'informations amovible, partiellement ou totalement lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de modélisation selon la revendication 11. 33. Moyen de stockage d'informations amovible, partiellement ou totalement lisible par un ordinateur ou un microprocesseur comportant des instructions de code d'un programme d'ordinateur pour l'exécution des étapes du procédé de régulation de débit selon la revendication 12. 34. Programme d'ordinateur chargeable dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions ou des portions de code logiciel pour mettre en oeuvre les étapes du procédé de modélisation selon l'une des revendications 1 à 10, lorsque ce programme d'ordinateur est chargé et exécuté par l'appareil programmable. 35. Programme d'ordinateur chargeable dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions ou des portions de code logiciel pour mettre en oeuvre les étapes du procédé de modélisation selon la revendication 11, lorsque ce programme d'ordinateur est chargé et exécuté par l'appareil programmable. 36. Programme d'ordinateur chargeable dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions ou des portions de code logiciel pour mettre en #uvre les étapes du procédé de régulation de débit selon la revendication 12, lorsque ce programme d'ordinateur est chargé et exécuté par l'appareil programmable.