Brevet FR2768000A1 — publié le 19990305

La présente invention concerne, d'une manière générale, un procédé et un dispositif pour le traitement de données, notamment la représentation, la génération, la restitution, la régénération ou le traitement itératif de données. Plus particulièrement, la présente invention vise la transmission (c'est-à-dire la représentation à distance) et/ou le stockage (c'est-àdire la représentation dans une mémoire) de données, avec ou sans compression de celles-ci. Ces données peuvent avantageusement être constituées par les données numériques ou analogiques d'une image ou séquence d'images, et/ou les données numériques ou analogiques relatives à du son (musique, parole, etc.), et/ou les données numériques ou analogiques relatives à un signal mono ou multidimensionnel quelconque. Avant d'exposer les objectifs et moyens de l'invention, on se propose ciaprès de donner les définitions suivantes: "Ensemble de données": ensemble de données quelconques représentant des grandeurs physiques (le plus souvent des niveaux de tension) pouvant représenter elles- mêmes d'autres grandeurs physiquement perceptibles ou mesurables. Dans des applications privilégiées, les ensembles de données concernés sont des images, du son ou des signaux mono ou multidimensionnels, etc... Dans l'application concernant le traitement d'images, on visera parfois l"'image" en lieu et place de I"'ensemble de données" relatives à l'image. Ce qui sera exposé ci-après à propos des "images" ou "sous- images" 2 2768000 est respectivement applicable aux "ensembles de données" ou "sous- ensembles de données" et vice versa. "Représentation de données": tout "traitement" d'un ensemble de données d'un type donné, résultant dans la transformation parfaite ou imparfaite dudit ensemble de données, dans un autre type. Exemple: les données pourront être constituées par les 256 niveaux de gris des pixels d'une image, leur représentation consistant en une série de mots binaires aptes à être stockés ou transmis; réciproquement, la représentation des données constituées par lesdits mots binaires pourra consister en leur transformation pour retrouver des données du même type que les données initiales. "Représentation primaire": par convention, tout traitement résultant dans la transformation des données d'un premier type vers des données d'un second type. On parlera dans ce cas d'un "traitement primaire" des données. "Représentation secondaire": par convention, la transformation de données du second type résultant d'un traitement primaire. On parlera dans ce cas de "traitement secondaire". "Restitution de données": cas particulier d'une représentation secondaire dans lequel les données du second type sont transformées dans des données du premier type. Cette restitution peut être parfaite ou imparfaite. Un "espace métrique" est un ensemble d'éléments muni d'une fonctionnelle distance qui est symétrique, positive et satisfait l'inégalité triangulaire. Cet espace est "complet" lorsqu'il contient tous les points limites de toutes les suites convergentes. Une "application Lipschitzienne": une application qui transforme les points d'un espace métrique dans le même espace et pour laquelle l'ensemble des rapports de la distance de deux éléments transformés par ladite application, sur la distance des deux dits éléments, est borné. Une "application contractive" ou "contraction": une application Lipschitzienne pour laquelle le plus petit des majorants (facteur de contraction) dudit ensemble de rapports est inférieur à l'unité. Toutefois, au sens de la 3 2768000 présente invention, sont contractives toutes les applications convergentes, c'est-à-dire possédant un point fixe (permettant ainsi la mise en oeuvre d'approximations successives) dans un sous-ensemble de l'espace métrique. Une "similarité" est une application Lipschitzienne pour laquelle le rapport de la distance de deux éléments transformés sur la distance desdits éléments est une quantité fixe. Une similarité linéaire est une "similitude". Une "similarité contractive" est une application Lipschitzienne pour laquelle le rapport de la distance de deux éléments transformés sur la distance desdits éléments est une quantité fixe strictement inférieure à l'unité. Le "point fixe" d'une contraction d'un espace métrique complet dans le même espace (ou d'un sous-ensemble de cet espace dans lui-même) est l'unique élément qui est laissé invariant par ladite application contractive. La "construction" d'une application contractive sur un ensemble de données consiste à constituer une famille de contractions susceptibles de transformer les données et à sélectionner les paramètres de l'une desdites contractions afin de satisfaire une ou plusieurs conditions prédéterminées. La "méthode des approximations successives" permet d'approcher de façon itérative aussi près que l'on le souhaite, le point fixe d'une contraction. En partant d'un élément arbitraire, on applique sur ce dernier ladite contraction. On applique ensuite la même contraction sur la transformée préalablement obtenue. En réitérant ce processus on s'approche successivement et inéluctablement du point fixe de la contraction. "Une meilleure approximation" d'un élément dans un espace métrique est un point d'un sous-ensemble de candidats, qui sont eux-mêmes des points dudit espace, qui minimise la distance audit élément. "Une bonne approximation" d'un élément dans un espace métrique est un point d'un sous-ensemble dudit espace qui est proche avec une erreur prédéterminée d'une meilleure approximation prédéterminée. On connaît, dans l'état de la technique, divers procédés de représentation d'image, avec compression, utilisant la technique dite "fractale". 4 2768000 Par le document US-A-5.065.447, on connaît un procédé et un dispositif permettant le traitement ou le stockage d'image avec compression des données relatives à l'image initiale. Dans ce procédé, les données relatives à l'image initiale sont divisées, c'est-à-dire que l'image est découpée en une pluralité de sous images élémentaires (appelées "domain blocks"). Ce procédé consiste ensuite à générer un dictionnaire ordonné d'un ensemble de sous images de référence (appelées "range blocks") constituées à partir de portions d'image de taille prédéterminée ayant subi un certain nombre d'opérations prédéterminées telles que rotation et retournement selon divers axes de symétrie. Ensuite, pour chaque sous-image élémentaire, on procède à une comparaison avec l'ensemble des sous images de référence du dictionnaire et on sélectionne dans le dictionnaire la sous image de référence la plus similaire de la sous image élémentaire considérée. Enfin, le procédé consiste à traiter ou à stocker des informations paramétriques relatives aux adresses des sous images de référence sélectionnées dans le dictionnaire, pour représenter chacune des sous images élémentaires d'origine. C'est par cet ensemble d'opérations que le procédé décrit dans ce document permet d'obtenir une première représentation de l'image avec compression des données. Pour réaliser, à partir desdites informations paramétriques, la restitution de l'image initiale, le procédé et le dispositif décrits dans ce document, effectuent les opérations suivantes: à partir d'une image arbitraire de départ, on procède à des étapes similaires à celles ci-dessus, c'est-à-dire que l'on partitionne l'image arbitraire de départ et que l'on constitue un dictionnaire à partir des sous-images élémentaires de celle-ci. Toutefois, le dictionnaire n'est constitué que de façon partielle en n'effectuant pour chaque sous image que l'opération prédéterminée correspondant à l'adresse concernée du dictionnaire pour la position de la sous-image considérée. Les données ainsi obtenues sont utilisées pour réitérer ce processus jusqu'à ce que la différence entre deux images consécutivement 2768000 obtenues soit inférieure à un seuil prédéterminé. L'image obtenue en dernier lieu est alors une approximation de l'image initiale. Cette méthode, intéressante au plan théorique, présente pour inconvénient majeur qu'elle est parfois difficilement praticable au plan industriel avec les moyens connus à ce jour. En effet, chaque image doit donner lieu à une longue analyse avec constitution d'un dictionnaire particulièrement important, les sous images élémentaires de l'image à stocker ou à transmettre étant toutes comparées à chacune des sous images de référence présentes dans le dictionnaire. Les inventeurs, qui ont procédé à des simulations, ont ainsi constaté que pour certaines images de taille et de résolution moyennes (512 x 512 pixels à 3 x 256 niveaux de couleur) le temps de traitement pour la compression était de l'ordre de 1000 à 2000 secondes sur une station de travail, soit de l'ordre d'une demi-heure. Un tel temps de traitement est évidemment prohibitif pour quasiment toute application industrielle. On connaît par le document WO-A-93/17519, un autre procédé et dispositif permettant le traitement d'images avec compression des données relatives à l'image initiale. Dans ce procédé les données relatives à l'image initiale sont également partitionnées, c'est-à-dire que l'image est divisée en une pluralité de sous images élémentaires (appelées "domains"). Dans ce procédé on détermine ensuite un ensemble de transformées fractales liant les sous images à l'ensemble des données initiales, c'est-à-dire que l'on recherche dans l'image initiale une portion d'image semblable à l'image élémentaire considérée, de façon à minimiser l'erreur entre les données initiales et la donnée approximée ainsi obtenue. Les coefficients de l'ensemble de transformations fractales ainsi réalisées constituent la première représentation de l'image initiale. Pour réaliser la restitution de l'image, le procédé et le dispositif décrits dans ce document procèdent à la recherche des points fixes des transformations fractales élémentaires dont les coefficients ont été reçus sans toutefois expliquer comment cette recherche est effectuée. L'image initiale est ainsi restituée en procédant à une réunion des sous-images restituées. 6 2768000 Cette méthode est également intéressante au plan théorique. Toutefois, les inventeurs ont constaté des dégradations importantes de la qualité de l'image restituée. Les inventeurs ont cherché à développer un procédé de traitement de données du même genre que les procédés de l'état de la technique analysé ci-dessus, mais présentant de meilleures performances tant au plan de la qualité des données restituées qu'au plan de la vitesse de traitement. Au cours de leur recherche, les inventeurs ont découvert que la raison pour laquelle les procédés décrits dans US-A-5.065.447 et WO-A- 93/17519 ont les défauts susmentionnés tient au fait que les deux procédés font intervenir des transformations géométriques de portions d'images constituées essentiellement par des similarités contractives (construction du dictionnaire dans US-A-5.065.447 et transformation fractale dans WO-A- 93/17519). Ils ont en fait pu mettre en évidence qu'il s'agit dans les deux cas de la mise en oeuvre d'une idée largement partagée par l'homme du métier concerné par la compression fractale au moment du dépôt de la présente demande, idée selon laquelle les images seraient, quelle que soit leur origine, constituées essentiellement d'éléments ou de parties présentant entre eux d'importants degrés de ressemblance. Or en fait, les performances de WO-A-93/17519 sont très faibles sur le plan de la qualité de l'image restituée car les inventeurs ont découvert que les capacités de restitution de similitudes contractives sont très limitées contrairement à la croyance desdits hommes de l'art à la date du dépôt de la présente demande. De même les performances de US-A-5.065.447 sont très limitées sur le plan du temps de traitement. Comme les capacités de restitution des similitudes contractives sont intrinsèquement limitées, I'auteur de US-A- 5.065.447 est amené à la réalisation d'un important dictionnaire qui est construit sur la base de nombreuses transformations de sous-images dans le procédé selon US-A-5.065.447 il s'agit en effet de multiplier artificiellement les 7 2768000 éléments de ressemblance, ce qui permet certes d'améliorer sensiblement la qualité de l'image restituée, mais aux dépens du temps de calcul. Les inventeurs ont donc cherché à réaliser un procédé et un dispositif pour le traitement de données, notamment d'images, permettant d'obtenir de meilleures performances que l'état de la technique précité tant sur le plan de la qualité des données ou de l'image restituée que sur celui de la rapidité de calcul, et susceptible d'aboutir à une compression significative des données à transmettre ou à stocker. Dans le cas o les images à comprimer ou à restituer, sont de très l0 grande dimension, les dispositifs connus à ce jour, qui utilisent des données de toutes les parties de l'image, doivent disposer d'un espace mémoire de grande dimension, ce qui les rend coûteux et lents. Grâce aux dispositions du procédé de traitement primaire et du dispositif de traitement primaire visés par la présente invention telle qu'elle ressort de la présente demande, les sous-ensembles de données dits "premiers" étant traités successivement, I'espace mémoire utilisé, et, en particulier, l'espace de mémoire rapide, est réduit. Le procédé de l'invention peut donc être mis en oeuvre sur tous les systèmes, indépendemment de leur capacité de mémoire. 2 o En outre, les ensembles de données primaires de grande dimension peuvent ainsi être traités par morceau, chaque morceau correspondant à un premier sous-ensemble de données. De même, la méthode d'approximations successives peut être mise en oeuvre par morceau. Enfin, lorsque l'on souhaite ne restituer qu'une partie de l'image constituant l'ensemble de données primaire, par exemple dans le cas o l'on souhaite afficher une partie d'image, I'invention permet de ne considérer que les paramètres associés aux premiers sous-ensembles de données primaires qui contiennent ladite partie d'image. 8 2768000 En outre, conformément à l'invention, pour traiter, et notamment représenter, un ensemble de données initiales représentatives de grandeurs physiques, notamment avec compression desdites données initiales, il suffit de construire, par des moyens appropriés, une application contractive globale, agissant sur lesdites données. Une autre caractéristique importante de l'invention réside dans le fait que pour construire ladite application contractive globale il y a lieu de mettre en oeuvre au moins une application appartenant au groupe des applications constitué des applications multidimensionnelles et des applications non linéaires. Ce faisant, on exclut tout recours à des transformations mathématiques appartenant à la classe des similarités contractives, ce qui permet d'éviter les inconvénients relevés plus haut. Toutefois, pour construire ladite application contractive globale agissant sur les données, I'homme du métier a à sa disposition un très large éventail d'outils mathématiques dans lequel il peut puiser. Il peut par conséquent choisir parmi ces outils ceux qui sont les plus favorables aux performances, par exemple en conjonction avec le type de données à représenter ou l'application particulière visée. Une telle possibilité n'existe pas dans l'état de la technique analysé plus haut et s'avère très avantageuse. Ainsi, par exemple, dans le cas d'un traitement local de l'image, par partition de cette dernière en sous- images élémentaires, I'homme du métier pourra choisir, pour le traitement local, des applications qui ne soient pas forcément contractives, ce qui lui donne un important choix dans les possibilités de traitement local de l'image et lui laisse ainsi une grande liberté. En particulier, il pourra choisir au niveau local des applications Lipschitziennes qui lui permettront de faciliter la mise en oeuvre du caractère contractif de l'application globale. Par ailleurs, la mise en oeuvre d'une méthode d'approximations successives, laisse à l'homme du métier, la liberté de choisir l'écart final entre ledit point fixe et les données ainsi restituées ou générées. En évitant la constitution d'un dictionnaire et la longue analyse décrite dans le document US-A-5.065.447, et grâce aux caractéristiques de la 9 2768000 présente invention, le traitement d'une image est notablement accéléré par rapport au document US précité. En mettant en oeuvre leur mode préféré de réalisation, les inventeurs ont pu constater que pour une image de 512 x 512 pixels à 3 x 256 niveaux de couleur, le temps de traitement, était de l'ordre de moins de 100 secondes sur une station de travail; ils ont en outre tout lieu de croire que des perfectionnements apportés au procédé et dispositif succinctement définis plus haut, permettront d'obtenir des performances en matière de vitesse. On notera en outre que comme les applications élémentaires l0 construites appartiennent au groupe d'applications constitué des applications multidimensionnelles et des applications non linéaires, on évite les applications appartenant à la classe des similitudes, avec les avantages observés plus haut. Le procédé de traitement secondaire et le dispositif de traitement secondaire visés par l'invention telle qu'elle ressort de la présente demande, présentent les mêmes avantages que ceux exposés ci-dessus. Ils ne sont donc pas rappelés ici. En outre, la méthode d'approximations successives utilisée pour le traitement secondaire est mise en oeuvre de façon particulièrement simple à partir des paramètres obtenus à l'issue du traitement primaire, parce que ces paramètres sont indépendants des dimensions du sous- ensemble élémentaire auquel ils sont associés. Les inventeurs ont pu constater, dans le domaine de traitement d'images avec compression, de bonnes performances tant sur le plan de la qualité de l'image restituée que sur celui de la vitesse de traitement rappelée supra. L'invention vise aussi une imprimante, un photocopieur, un appareil photographique et un dispositif de télécopie comportant un dispositif de traitement tel que succinctement exposé ci-dessus. L'invention vise encore une mémoire qui conserve: 2768000 - des paramètres et des informations de partition issues d'un traitement primaire tel que succinctement exposé ci-dessus et - des instructions pour un logiciel permettant la mise en oeuvre d'un procédé de traitement secondaire tel que succinctement exposé ci-dessus. Les avantages de ces dispositifs et mémoire étant identiques à ceux qui sont exposés ci-dessus, ils ne sont pas rappelés ici. Les caractéristiques, avantages et autres objets de l'invention ressortiront d'ailleurs lors de la description des dessins annexés sur lesquels: - la figure 1 illustre de façon schématique une partition d'une image de 512 x 512 pixels en sous ensembles élémentaires, constitués de carrés de 32 x 32 pixels, - la figure 2 illustre de façon schématique une division d'une image de 512 x 512 pixels en un recouvrement par ardoises, constituées par des carrés de 32 x 32 pixels, décalés horizontalement et verticalement de 16 pixels, - la figure 3 illustre de façon schématique l'agencement d'un sous- ensemble élémentaire Ki et de ses quatre sous-ensembles de travail LI, L2, L3 et L4, qui, dans un premier mode de réalisation de l'invention, sont de taille identique à celle du sous-ensemble élémentaire Ki et décalés dans les deux directions, par rapport audit sous-ensemble élémentaire, de manière prédéterminée, - la figure 3A est similaire à la figure 3 et illustre de façon schématique, un deuxième mode, préféré, de réalisation de l'invention, dans lequel l'agencement d'un sous-ensemble élémentaire Ki et de ses quatre sous- ensembles de travail LI, L2, L3 et L4, dont chaque dimension est double de celle du sous-ensemble élémentaire K, associé, et qui est décalée dans les deux directions, par rapport audit sous-ensemble élémentaire, de manière prédéterminée, - la figure 4 est un schéma bloc simplifié d'un mode particulier de réalisation du dispositif de traitement primaire d'un ensemble de données, 11 2768000 - la figure 5 est un schéma de principe d'un dispositif mettant en oeuvre le dispositif de la figure 4, - la figure 6 est un schéma bloc simplifié d'un mode particulier de réalisation du dispositif de traitement secondaire d'un ensemble de données, - la figure 7 est un schéma de principe d'un dispositif mettant en oeuvre le dispositif de la figure 6, la figure 8 est un schéma de principe d'un dispositif de traitement primaire et de traitement secondaire, - la figure 9 est un schéma de principe d'un autre dispositif de traitement primaire et de traitement secondaire, - la figure 9A est un schéma bloc simplifié d'un mode particulier de réalisation du dispositif de traitement de la figure 9, la figure 10 est un organigramme simplifié de compression d'une image couleur de 512 x 512 pixels mis en oeuvre dans le dispositif des figures 4, 9 et9A, - les figures 11, 12, 12A, 12B, 13, 14 et 15 sont des organigrammes illustrant certaines opérations de l'organigramme de la figure , - la figure 16 est un organigramme simplifié de décompression d'une image couleur mis en oeuvre dans le dispositif des figures 6, 9 et 9A, - la figure 16A est un organigramme illustrant une opération de l'organigramme de la figure 16 - les figures 17, 17A et 17B sont des organigrammes illustrant une opération de l'organigramme de la figure 16, - la figure 18 est un organigramme d'un programme de configuration mis en oeuvre dans le dispositif de la figure 9A, - les figures 19 et 20 sont des organigrammes illustrant certaines opérations de l'organigramme de la figure 10 et d'une première de ses variantes, - la figure 21A est une représentation d'une succession de partitions de sous- ensembles élémentaires, 12 2768000 - la figure 21B est une représentation de structure d'informations de partition et de paramètres représentant cette succession de partitions, la figure 21C est une représentation de l'organisation des paramètres et des informations de partition résultant du traitement primaire d'une seule image, - la figure 21D est une représentation d'une deuxième variante de l'organisation des paramètres et des informations de partition résultant du traitement primaire d'une seule image, - la figure 21E est une représentation des paramètres et des informations de partition résultant du traitement primaire et effectivement utilisés au cours d'un traitement secondaire, selon la deuxième variante illustrée en figure 21 D, et - la figure 22 est une représentation d'une organisation des paramètres et des informations de partition résultant de traitements primaires de plusieurs images. La présente description est divisée en cinq parties: - la première partie a trait à la description générale du procédé. Cette partie est divisée en trois sections: À la première section a trait à la théorie générale à la base de l'invention. Il y est exposé les concepts mathématiques qui sous-tendent, d'une manière générale, I'invention telle qu'elle peut être comprise dans ses termes les plus généraux; la seconde section, expose, notamment à l'appui des figures 1 à 3, certaines caractéristiques particulières du premier mode de mise en oeuvre du procédé permettant le traitement primaire des données d'une image de 512 x 512 pixels aboutissant à la compression de celle-ci. Cette section explique plus particulièrement la structure de l'application multidimensionnelle choisie dans ce mode particulier de mise en oeuvre et les moyens permettant de calculer les coefficients de cette application. 30. la troisième section expose les caractéristiques particulières du premier mode de mise en oeuvre du procédé de représentation secondaire des 13 2768000 données de l'image, et notamment la restitution des données de celle-ci à partir des données compressées obtenues à l'issue d'un traitement primaire. Cette section expose plus particulièrement la méthode d'approximations successives mise en oeuvre ici pour ce faire. - la seconde partie a trait à la description d'un premier mode de réalisation d'un dispositif de traitement et elle est divisée en six sections: À la première section a trait à la description d'un dispositif de traitement primaire d'un ensemble de données, ò la seconde section a trait à un dispositif de traitement secondaire d'un ensemble de paramètres résultant du traitement primaire de données initiales. Un tel dispositif permet, par exemple, de restituer l'image compressée par le dispositif de traitement primaire, ò la troisième section a trait à la description d'un dispositif incorporant à la fois un dispositif de traitement primaire et un dispositif de traitement secondaire, À la quatrième section a trait à la description d'un organigramme particulier de compression d'une image en couleurs de 512 x 512 pixels mis en oeuvre dans les moyens logiques que comporte le dispositif de traitement primaire, ò la cinquième section a trait à la description de deux modes de réalisation d'un organigramme de décompression mis en oeuvre dans les moyens logiques que comporte le dispositif de traitement secondaire, et ò la sixième section a trait à la description de l'organigramme du programme de configuration du dispositif incorporant un dispositif de traitement primaire et un dispositif de traitement secondaire. - la troisième partie a trait à la description du mode de réalisation préféré, mettant en oeuvre des sous-ensembles de travail présentant une taille différente de celle du sous-ensemble élémentaire correspondant. Dans cette partie, il est uniquement décrit les modifications qui sont apportées au mode de réalisation décrit dans la deuxième partie; - dans la quatrième partie il est décrit une troisième variante de réalisation qui met en oeuvre une application contractive globale composée d'applications non linéaires. Dans cette quatrième partie seuls sont exposés les 14 2768000 éléments modifiés par rapport à ceux du mode de réalisation décrit dans la seconde partie; et - dans la cinquième partie, il est décrit la deuxième variante de réalisation mettant en oeuvre un critère de qualité mesuré à l'aide de l'application contractive globale. 1. Description générale du procédé On va maintenant décrire à l'appui des figures I à 3, le procédé tel qu'il est mis en oeuvre dans le premier mode de réalisation de la présente invention. Cette description va être faite à l'appui des figures précitées et d'un certain nombre de concepts mathématiques appartenant d'une manière générale à la théorie de l'analyse et plus particulièrement à celles de la topologie et de l'analyse fonctionnelle. Dans ce mode particulier de réalisation, on se propose de compresser les données relatives à une image, pour aboutir à une "représentationprimaire" de celle-ci, puis de restituer les données initiales, c'est-àdire de réaliser une "représentation secondaire" des données compressées pour obtenir un ensemble de données du même type que les données initiales avec un écart maximum prédéterminé entre les données ainsi restituées et les données initiales. Pour fixer les idées, il est ici considéré une image couleur de 512 x 512 pixels à trois composantes, I'une de luminance et deux de chrominance, possédant chacune 256 niveaux. En général, une telle image couleur est captée sous forme de trois composantes relatives aux trois couleurs fondamentales, rouge, verte et bleue, puis convertie, en mettant en oeuvre des matrices de conversion bien connues de l'homme du métier, en composantes de luminance et de chrominance. Cette image numérique nécessite 512 x 512 x 24 bits à stocker soit, sans compression de données, 6 Mbit. Afin de mesurer l'écart entre I'image initiale et l'image restituée, il est considéré la racine carrée de l'écart quadratique moyen, moyenné sur tous les pixels et tous les composants (noté 2768000 classiquement RMSE). L'efficacité d'un algorithme de compression est exprimée par le lien entre le taux de compression obtenu pour un écart (RMSE) donné. Le mode particulier de réalisation décrit ici permet d'obtenir l'efficacité suivante: Tableau 1 Nombre itérations à RMSE bits/pixel la décompression - 7 7 - 15 0.75 -8 5 - 10 1.50 6-8 4 - 8 2.25 7-9 3-7 3.00 7 - 10 2 - 5 4.50 Théorie générale à la base de l'invention La représentation d'un ensemble de données, représentant elles- mêmes des grandeurs physiques, telles que les données afférentes à l'image décrite ci-dessus, surtout lorsque l'on souhaite comprimer ces données à l'occasion de ladite représentation, peut s'analyser comme une approximation de l'ensemble des données. L'invention procède de la mise en évidence, par les inventeurs, du fait que la théorie du point fixe peut être mise en oeuvre pour réaliser une telle approximation. On considère que l'approximation d'un ensemble de données initiales est une opération consistant à rechercher dans une famille de candidats à la représentation, le (ou les) candidat(s) qui minimise(nt) un critère prédéterminé. Le plus souvent, le critère s'exprime par une distance entre deux éléments d'un espace métrique, ce qui peut s'exprimer par l'équation suivante: 16 2768000 d: (g,h) e ExE -> d(g,h) E R+ (1) o: - d est la fonction distance, - E est un espace métrique, -R+ est l'ensemble des réel positifs ou zéro. - g, h sont des éléments de l'espace métrique E, c'est-à-dire de l'espace qui contient toutes les applications d'un domaine de définition donné Q c Rq dans un domaine d'application Rd. Les données à traiter sont des applications de Q c Rq dans Rd: g: (x,y) E Q c Rq _> g(x,y) E R O Rq et Rd sont des espaces produits de R d'un nombre (n ou d) donné de dimensions. L'ensemble de données à traiter est un espace métrique E donné. On notera que par exemple dans le cadre d'une image couleur 512 x 512 à 3 x 256 niveaux de chacune des trois composantes, les données de l'image initiale sont constituées par un tableau de correspondance qui à chaque position (xy) de pixel dans le domaine de définition [0,511] x [0, 511] associe trois valeurs positives de niveaux des composantes de luminance, Y, de chrominance rouge, Cr, et de chrominance bleue, Cb, comprises entre 0 et 255. On observe que ces données de l'image initiale constituent en réalité une application f eE d'un domaine de l'espace R2 dans un domaine de l'espace R3 g:(x,y) E [0,511] x [0,511] cR2- > [0, 255]3 c R3 Le problème de l'approximation d'un ensemble de données à traiter f E E, consiste donc à rechercher dans une famille de candidats à la représentation G c E le ou les candidats g* dans G qui minimisent la distance (1). Ceci s'exprime par l'équation suivante: ?g* E G:d(f,g)= inf {(f,g)l g eG} 17 2768000 Lesdits candidats appartiennent à l'ensemble: P (f) g*é Gj d(fg*)=inf l(fg)gEGl, (2) o: - PG est l'opérateur de projection métrique, - inf{...} est le plus grand des minorants de l'ensemble considéré {...}. Dans la suite, on suppose que l'espace métrique est complet, ce qui garantit l'existence d'un point fixe unique pour chaque contraction de l'espace métrique dans lui-même. Les inventeurs ont mis en évidence que des candidats à la représentation peuvent être définis comme étant des points fixes relatifs à des contractions, une famille de contractions étant conjointement déterminée. Dans ces conditions, la recherche de la meilleure approximation revient à déterminer le point fixe relatif à la contraction minimisant ledit critère prédéterminé d'erreur dans cette famille de contractions. Ces conditions peuvent être exprimées ainsi: ?a* E d(X): d(fa*) ! E E (4) o t est le point fixe de la contraction T (T(t)= t), CON(E) I'ensemble des contractions de E. 18 2768000 Le problème d'approximation peut, dans ces conditions, être reformulé ainsi qu'il suit: il s'agit de rechercher la contraction dont le point fixe est la meilleure approximation des données initiales. On observera que ce faisant les inventeurs ont déplacé le problème à résoudre puisqu'il ne s'agit plus maintenant de chercher un candidat constituant en lui-même une meilleure approximation mais une contraction dont le point fixe constitue la meilleure approximation. Ceci peut être exprimé par l'inéquation: ?T EX:d(f, (T)) d(C() V TEX (5) o X est un sous-ensemble de contractions de E (X c CON(E)). Les inventeurs ont ainsi mis en évidence que, conformément au procédé général découvert par eux, I'étape essentielle pour aboutir à une représentation de données à traiter, notamment dans le cadre d'une compression des données, consiste: - à constituer une famille de contractions susceptibles de transformer les données, et - à sélectionner les paramètres de l'une desdites contractions afin de satisfaire une ou plusieurs conditions prédéterminées, en l'espèce minimiser la distance entre les données initiales et le point fixe constituant la meilleure approximation desdites données initiales. Il s'agit là, conformément à l'invention, d'une étape de "construction" de l'application contractive globale. Ensuite, conformément à l'invention, les paramètres ainsi déterminés doivent permettre, pour la restitution de l'ensemble initial de données, la mise en oeuvre d'une méthode d'approximations successives convergeant vers le point fixe de ladite transformée contractive globale représentatif dudit ensemble de données initiales, ce qui permet pour les 19 2768000 raisons exposées plus haut de restituer avec la meilleure approximation ledit ensemble de données à traiter. On observera que pour la mise en oeuvre du procédé général selon l'invention, et notamment dans l'étape de construction de l'application contractive globale, I'homme du métier a, pour constituer la famille de contractions susceptibles de transformer les données, un large éventail de choix d'applications mathématiques dans le groupe des applications constitué des applications multidimensionnelles et des applications non linéaires. Dans le mode de réalisation décrit ci-après, la contraction globale sera construite par morceaux, et pour chaque morceau il va être utilisé une application linéaire multidimensionnelle spécifique. Il pourrait utiliser d'autres applications, par exemple des applications non linéaires. Le procédé général, dont un mode de mise en oeuvre particulier va être décrit en détail ci-après, permet ainsi de très nombreuses possibilités de traitement des données, en vue de les représenter. On va maintenant décrire les moyens utilisés dans le mode particulier de réalisation pour construire l'application contractive globale. Les inventeurs ont mis en évidence le fait que pour rechercher une contraction dont le point fixe constitue la meilleure approximation des données initiales, il fallait tout d'abord chercher un candidat constituant en lui- même une bonne approximation, ce qui constitue une approche pratique pour résoudre un tel problème. Les inventeurs ont mis en évidence que ladite approche pratique peut consister à trouver la contraction qui minimise la distance entre les données initiales et transformées, en prenant en compte un facteur de contraction estimé. Cette reformulation du problème à résoudre peut être exprimée par le problème d'optimisation principal suivant: 2768000 ?T e X d ()( = min df, 1 (f T eX (6) o con (T) est le facteur de contraction de l'application contractive T. Comme, en réalité, il est parfois difficile de trouver ledit facteur de contraction de l'application globale, les inventeurs ont trouvé que, dans ces hypothèses, on peut se contenter de résoudre un problème d'optimisation simplifié aux termes duquel il faut trouver une contraction globale qui minimise la distance entre les données initiales et leur transformée. On observera, ici, que le facteur 1/1-con(T) n'est plus pris en compte. Ce problème d'optimisation simplifié s'exprime comme suit: ?T e X:d(f, T(f))= min d(f,T(f)" T e X (7) Premier mode de traitement primaire des données de l'image. Selon une caractéristique importante d'un des aspects de l'invention telle que mise en oeuvre ici, la contraction globale est construite par morceaux. Pour ce faire, il est procédé à une étape de "partition" de l'ensemble des données relatives à l'image, au cours de laquelle on partitionne ledit ensemble en m "sous-ensembles élémentaires". Dans le mode de réalisation particulier qui concerne le traitement d'image, d'une manière générale, on partitionne l'image initiale, en m sous- images élémentaires, elles aussi appelées "sous-ensembles élémentaires" pour des raisons de clarté de la description. On rappellera ici que d'une manière générale une "partition" de 21 2768000 l'espace métrique Q, revient à définir l'ensemble T = {eiKi c Q,i = 1,... ,m} o K,.., Km sont des sous-ensembles définis dans ledit espace métrique Q, devant respecter les quatre conditions suivantes: 1) les sous-ensembles Ki doivent être fermés, ce qui s'exprime par Ki=adhKi, i=1,...,m. 2) aucun des sous-ensembles Ki ne peut avoir un intérieur vide, ce qui s'exprime par: int Ki = 0, i = 1,.., m. 3) leur union doit produire la fermeture de l'espace métrique Q2 ni considéré, ce qui s'exprime par: adhQ = U Ki i=l 4) les intérieurs de chaque sous-ensemble K1 doivent être disjoints deux à deux, ce qui s'exprime par: int K, rn int K j=0 i,j=l,...,m, ij. On notera ici également que la partition d'une donnée initiale d'un type donné (g e E) revient, d'une manière générale à définir une restriction gl K pour chaque sous-ensemble Ki de la partition r. Cette caractéristique permet, avantageusement, de faciliter le travail de construction de la contraction globale, en ramenant ce travail à celui de trouver des transformations mathématiques élémentaires ayant pour objet chacune de permettre la restitution du sous-ensemble élémentaire Ki. En effet, par définition, les sous-ensembles de données comportent moins de données que l'ensemble initial, et par conséquent il est sensiblement plus facile de trouver des transformations mathématiques permettant de restituer ces données, étant précisé à nouveau que l'ensemble des transformations mathématiques doit, au niveau de l'ensemble de l'image, constituer une application contractive globale. Par conséquent, l'application contractive globale T est ainsi construite par morceau, chaque morceau étant, conformément à cet aspect de l'invention, une application Lipstchizienne. 22 2768000 On observera ici d'ailleurs que ces applications Lipstchiziennes élémentaires ne sont pas nécessairement contractives, et qu'à ce niveau également, grâce à l'invention, l'homme de l'art a à sa disposition un grand éventail d'applications mathématiques lui permettant de traiter les données relatives aux sous-ensembles. On notera toutefois que dans certaines hypothèses, il n'y aura pas lieu de procéder à cette partition, par exemple lorsque l'image donne lieu à une structure géométrique simple. Selon l'aspect de l'invention décrit ici, pour chacun des m sous- ensembles élémentaires (K,...,Km), on considère n sous-ensembles de travail (n = 4 dans ce mode de réalisation). Pour chacun des m sousensembles élémentaires réalisés au cours de la partition on construit l'application Lipstchizienne élémentaire considérée à partir de ces n sous-ensembles de travail. De manière à pouvoir considérer les n sous-ensembles de travail liés à chacun des m sous- ensembles élémentaires, on va réaliser une "division" de l'ensemble de données initiales. * Cette division Z = {Lj Lj cQ, j=l,...,., de l'ensemble de données, qui est définie dans l'espace métrique Q, doit respecter les trois conditions suivantes: 1) les sous-ensembles Ljdoivent être fermés, ce qui s'exprime par: Lj = adh Lj, j = 1,...,l 2) Aucun des sous-ensembles Li ne peut avoir un intérieur vide ce qui s'exprime: int Li É0,j=1,...,l. 3) Leur union est incluse dans l'espace métrique Q, ce qui l s'exprime par: U Lj c j=l 23 2768000 On observe à ce stade que la division ainsi réalisée englobe d'une part, les partitions, telles qu'elles ont été définies supra, mais englobe aussi, d'autre part, ce qu'on appellera un "recouvrement par ardoises" (notion connue en anglais par "tiling") pour lesquels les sous-ensembles Li sont susceptibles de se recouvrir, ce qui s'exprime par l'équation int Li nint L, ó 0, i, j = l,.....i ó j. Dans le premier mode de réalisation, l'image de 512 x 512 pixels est, selon une partition initiale, partitionnée en 256 sous-ensembles élémentaires carrés de 32 x 32 pixels (voir figure 1). Conformément à une habitude dans le domaine de traitement de l'image, les données sont organisées comme suit: - le point de référence de coordonnées (0,0) est constitué par le point en bas à gauche de l'image; - les colonnes (abscisse x) sont numérotées de gauche à droite; - les lignes (ordonnée y) sont numérotées de bas en haut. Sur la figure 1 on a illustré de façon schématique en ordonnées le rang de certaines lignes de l'image et en abscisses le rang de certaines colonnes. Pour des raisons de clarté, l'échelle utilisée sur l'axe des abscisses et l'axe des ordonnées n'est pas uniforme. Sur la partie en bas à gauche de la figure 1 les 9 premiers carrés de 32 x 32 pixels sont illustrés, de façon à faire ressortir les rangs et colonnes constituant la frontière de ces derniers. Les carrés de 32 x 32 pixels constituent un exemple de partition du domaine Q = [0,511] x [0,511] o l'image considérée est définie. Dans le premier mode de réalisation, la division de l'image de 512 x 512 pixels en sous-ensembles de travail est illustrée en figure 2. Elle est similaire à la partition de la figure 1, à ceci près que les sousensembles de travail de 32 x 32 pixels sont décalés de 16 pixels dans les deux directions, et dans chaque sens de déplacement, par rapport aux sous-ensembles élémentaires. Sur cette figure, qui illustre le coin inférieur gauche de l'image de 512 x 512 pixels, les sous-ensembles élémentaires résultant de la partition sont 24 2768000 illustrés en traits gras tandis que les sous-ensembles de travail résultant de la division sont illustrés en traits pointillés et sont hachurés. En figure 2, n'ont pas été représentés les sous-ensembles de travail touchant les bords de l'image. De nombreuses solutions existent pour fournir à chaque sous-ensemble élémentaire qui n'est pas associé à des sous- ensembles de travail intégralement à l'intérieur de l'image initiale, des sous- ensembles de travail de substitution. On note ici, que dans toute la suite de la description, le choix d'une telle solution est appliqué, aussi bien aux sous-ensembles de travail pour le traitement primaire, pour le traitement secondaire et pour le traitement complexe: les points des sous-ensembles de travail définis ci-dessus qui n'appartiennent pas à l'image, c'est-à-dire ceux dont l'une au moins des coordonnées est négative, se voient fictivement associer une valeur moyenne, par exemple 127 pour la composante de luminance et les éventuelles composantes de chrominance. La figure 3 illustre comment, dans ce premier mode de réalisation, chaque sous-ensemble de travail Li est lié à un sous-ensemble élémentaire Ki donné. Le sous-ensemble élémentaire Ki ayant pour coordonnées (xi,y) est illustré en traits gras, tandis que les sous- ensembles de travail correspondants sont illustrés en traits pointillés, les autres sous-ensembles étant ébauchés en traits fins. On observe que, dans ce premier mode de réalisation, à chacun des sous- ensembles Ki sont liés quatre sous-ensembles de travail Li (numérotés LI, L4) décalés de 16 pixels dans les deux directions. Il s'agit en réalité des quatre sous-ensembles issus de la division qui recouvrent le sous- ensemble élémentaire considéré (issu de la partition). Les expressions ci-dessous montrent les coordonnées d'un sous-ensemble Ki et des sous- ensembles de travail L,,.... L4. Ki: [xi, xi + 31] x [Yi, Yi +31] LI: [xi-16, x i + 15] x[y, + 16, yi + 47] 2768000 L2: [xi+16, xi + 47] x [yi + 16, yi + 47] L3: [xi-r16, xi+ 15] x [yi - 16, yi + 15] L4: [xi+16, xi + 47] x [yi- 16, yi + 15] On note que, dans ce premier mode de réalisation, les sous- ensembles résultant de la division présentent les mêmes dimensions que ceux résultant de la partition; en outre, dans ce premier mode de réalisation, la division de l'image en sous-ensembles de travail ne constitue pas un recouvrement par ardoises mais une simple partition en raison du fait que les sous-ensembles de travail présentent une taille identique aux sous-ensembles et que le décalage, entre un sous-ensemble de travail et le sous-ensemble élémentaire correspondant, est égal à un demi-côté des sous-ensembles carrés considérés. Les points des sous-ensembles de travail définis ci-dessus qui n'appartiennent pas à l'image, c'est-à-dire ceux dont l'une, au moins, des coordonnées est négative ou supérieure ou égale à 512, se voient fictivement associer une valeur moyenne, par exemple égale à 127, pour chaque composante. Infra il sera décrit en particulier à l'appui de la figure 3A un deuxième mode, préféré, de réalisation dans lequel, conformément à un autre aspect de l'invention, les sous-ensembles de travail présentent une taille différente de celle du sous-ensemble élémentaire auquel ils correspondent, la division de l'image résultant ainsi en un recouvrement par ardoises. On va maintenant définir l'application globale utilisée dans le mode particulier de réalisation décrit à l'appui des figures 2 et 3. On rappelle tout d'abord que l'application contractive globale consiste à prendre un élément g de l'espace métrique E pour le transformer en un élément T(g) du même espace métrique E ce qui s'exprime par T: g E -> T(g) E E (8) 26 2768000 L'appartenance de g à l'espace E (g e E) peut être exprimée également de la façon suivante: g: (x,y) Q c Rq > g(x,y) E Rd (9) On observe en effet que l'équation (9) ne fait qu'expliciter le type de données spéciales considérées: à chaque couple de valeurs (x,y) pris dans le domaine de définition (en l'espèce l'image plane Q cR2) correspond une valeur dans le domaine d'application Rd, c'est-à-dire trois valeurs parmi 256 niveaux des trois composantes, Y, Cr et Cb. On observera d'ailleurs que s'agissant du traitement d'images, le domaine de définition est R2, tandis que le domaine d'application est R3 puisque l'image couleur a trois composantes, I'une de luminance et deux de chrominance. Dans le mode particulier de réalisation des figures 2 et 3 décrit ci- après et conformément à un autre aspect de l'invention, chaque "morceau" de l'application contractive globale, c'est-à-dire une application élémentaire Lipschitzienne, est une application multilinéaire du type: T(g) Ki:(x,y)eKi - [T(g)](x,y) = Zaj.g o1 (x,y)+b (10) j=l o: T(g)l Ki la restriction de T(g) au sous-ensemble élémentaire Ki n > 1 la dimension de l'application multilinéaire a,... an les coefficients multiplicatifs b le facteur de translation L,... Ln les sous-ensembles de travail, à position prédéterminée par rapport à K, et lié à ce sous-ensemble. 27 2768000 Ainsi dans l'exemple de la figure 3, les valeurs g (x,y) des pixels de coordonnées (x,y), sont transformées comme suit: [T(g)] (x, y) = a,. g (x - 16, y + 16) + a2. g(x+ 16, y+16)+ a3. g(x- 16, y-16)+ a4. g(x + 16, y-16)+b (1 Obis) o: g (x,y) est la valeur du pixel (x,y) dans l'image g (x, y) est un pixel du sous-ensemble élémentaire K. g(x - 16, y + 16) est la valeur du pixel correspondant dans le sous- ensemble de travail L1 g(x+ 16, y + 16) est la valeur du pixel correspondant dans le sous- ensemble de travail L2 g(x- 16, y - 16) est la valeur du pixel correspondant dans le sous- ensemble de travail L3 g(x + 16, y - 16) est la valeur du pixel correspondant dans le sous- ensemble de travail L4 aI..., a4 les coefficients multiplicatifs b le facteur de translation. On voit que les équations (10) et (lObis) ci-dessus sont de nature linéaire et multidimensionnelle c'est-à-dire multilinéaire, les coefficients a. pourj = 1,..., n et b étant respectivement les coefficients multiplicatifs et le facteur de translation. Les coefficients (a,.. an, b) sont ici les "paramètres", au sens de l'invention, de l'application élémentaire relative au sous-ensemble Ki. L'ensemble des coefficients (a,..., an, b)K relatifs aux m sous- ensembles 28 2768000 élémentaires (K1,..., Km) constitue, dans ce mode de réalisation, "l'ensemble des paramètres" de l'application contractive globale, au sens de l'invention. On rappelle que dans le mode particulier de réalisation, n = 4, ce qui signifie que seulement quatre sous-ensembles de travail Lj, j = 1,.., n tels que ceux définis à l'appui de la figure 3, sont liés à chaque sous-ensemble élémentaire Ki. Ainsi, à chaque couple de valeurs (x,y) d'un sous-ensemble élémentaire Ki déterminé, on associe une valeur calculée à partir de l'équation multilinéaire (10) (voir l'exemple de la figure 3 et l'équation 10 bis). Ceci est fait pour l'ensemble des m sous-ensembles élémentaires (K1,..., Km). On va maintenant expliquer comment les coefficients de l'application multilinéaire aj1,j = 1.... n et b sont déterminés pour chacun des sousensembles élémentaires de travail Ki Pour résoudre le problème d'optimisation simplifié (7) il faut, d'une manière générale, pour chaque sous-ensemble élémentaire Ki, minimiser la distance entre la restriction au sous-ensemble élémentaire Ki et sa transformée par l'application contractive globale. En d'autres termes, il faut minimiser les distances: d (f K;, T(f)IK), i=,...m (11) Dans le mode particulier de réalisation, on met en oeuvre une méthode de minimisation des moindres carrés en présence de contraintes, o la quantité à minimiser est la distance définie dans l'équation (11) et s'exprime sous la forme: [d(f|K,, T(f)jKi)1 = KE (f (x,y) - [T(f)] (x,y))2 (12) (x,y)EKi 29 2768000 laijl o 1 En minimisant l'expression (12) sous les contraintes (13), on détermine chaque restriction de T(/) à K, et en même temps les coefficients aj et b de l'équation (10). Les coefficients aj, b associés à chacun des sous-ensembles Ki constituent la représentation primaire de l'ensemble de données initiales. Le problème de minimisation selon les équations (10) et (12) sous les contraintes (13), afin de déterminer les coefficients (a,... a, b) pour chaque Ki: i = 1...m sera détaillé ci-après. Pour chaque sous-ensemble élémentaire, nous considérons la fonction objectif K:R±n+ R définie comme suit: K,(a,..., a, b) f(xY)-[. a;.],(x,y)+ bj (14) (x,y)EK, 7= Le problème de minimisation sous contraintes revient donc à rechercher les (n+l) valeurs (a*,..., an*, b*) e C c R" qui satisfont: óK (a, ó*...,a r,b')= min {ij, (a,.....,a",b) e C},, (15) o C = ba,,..., an, b)| R,-13 Rappelons tout d'abord que la résolution d'un problème de 2768000 minimisation sans contraintes est bien connue de l'homme de l'art. Il s'agit dans ce cas de minimiser en général une fonction objectif du type: / (cI....Cm)= (F(xy)[m -' Cj gj(Xy)+Cmj,(16) (xy)EK o m est le nombre de paramètres de la fonction objectif et lorsque (cI,.... c) parcourt tout l'espace Rm. Le vecteur (ci*... Cm*) recherché satisfait: (l i -.....Cm = min (C1..cm)(CI,-.., Cm) E Rm}. Ce vecteur (CI*,..., cm*) est caractérisé par l'équation d'Euler: TY(cl.... C m*)= O, (17) o '(c....(C m*) est la dérivée de T (au sens de Fréchet). C'est une application linéaire et continue de Rm à R. Cette dernière équation est remplacée ici par les dérivées partielles de T au point (c,..., cm*), par rapport à chaque variable. On obtient donc que (c*... Cm*) est caractérisé par: a I Y (ci.. cm*)= j a m t(CI*... Cm*)= O. 31 2768000 Tenant compte de la forme particulière de la fonctionnelle (16), les équations (18) sont équivalentes à: m cj*Gji = Si; i =,...,m, (19) j=l o Gj, = gj(xy) gi(xy l lm - l (x,y)K i=l..... Gmi =Gim = E gi(xy) i=1 m- (x. y)eK Gmm,, = nombre de points (x,y) dans K1, Si = gj(xy).F(xy i = 1,..,m- (x,y)eK Sm= ' F(xy). (x,y)EK Les équations (19) forment un système linéaire d'équations facile à résoudre par diverses méthodes bien connues dans les mathématiques. La résolution du problème de minimisation (15) de la fonctionnelle (14) sous les contraintes (13) comprendra les étapes suivantes: a) Résolution du problème de minimisation sans contraintes de la fonctionnelle (14) sur R'+l par la méthode décrite supra par les équations (16) à (19). La solution sera notée (al,...,n,,b) E Rn b) Si (al,...,,, b) E C, donc si -13 32 2768000 c) Si (al,..., an, b) e C, certaines contraintes sont violées. Ceci se traduira par une partition disjointe de l'ensemble des indices {1,..., n}=NVu UVu LV O - NV est l'ensemble des indices i E {1,...,n} pour lesquels -p 33 2768000 m le nombre d'indices dans NV, gj = L exprime que la j-me constante non violée concerne le coefficient ai. La solution du dernier problème (24) et (25) sera (c,... c,). Finalement la solution recherchée du problème avec contraintes sera ai =cj: j = 1,...,m-1 o i E NV, (26) ak = k E UV, (27) a/ = -: lE LV, (28) b = cm. (29) si toutefois (26) respecte les contraintes. Dans le cas contraire, il faudra réitérer le processus. Un organigramme permettant la partition de l'image de 512 x 512 pixels, sa division et le calcul, pour chacun des sous-espaces élémentaires Ki de coefficients aj et b est décrit infra, à l'appui des figures 10 à 15. On observe ici que, lorsque tous les sous-ensembles élémentaires possèdent les mêmes dimensions, un compromis doit être effectué. En effet, lorsque ces dimensions sont trop réduites, le taux de compression est limité puisque celui-ci est directement fonction du nombre de pixels qui sont représentés par les cinq paramètres associés à chaque sous- ensemble élémentaire. En revanche, lorsque les dimensions des sous- ensembles élémentaires sont importantes, la qualité de l'image reconstruite après un traitement secondaire de ces paramètres, peut être trop limitée pour une exploitation confortable de l'image reconstruite, les plus petits détails pouvant avoir été mal traités au cours du traitement primaire. 34 2768000 Dans une image, il est courant que certaines zones présentent très peu de détail et soient pratiquement uniformes et que d'autres zones de l'image présentent une grande complexité (complexité pouvant être représentée par la variance des valeurs de chaque composante des pixels de la zone considérée). L'invention propose, en complément de la mise en oeuvre de la théorie exposée ci-dessus, une méthode permettant d'utiliser des sous- ensembles élémentaires de grande dimension dans les zones de l'image les plus uniformes et des sous-ensembles élémentaires de plus petite dimension dans les zones de l'image les moins uniformes. A cet effet, pour chaque sous- ensemble élémentaire en cours de traitement, un critère de complexité, dit de "qualité", est déterminé et une estimation d'opportunité de partition est effectuée. Lorsque cette estimation ne répond pas au critère de qualité, c'est-à- dire lorsque que le sous-ensemble élémentaire considéré est supposé présenter une certaine complexité, il est partitionné en sous-ensembles élémentaires de plus petite dimension qui sont traités à leur tour, jusqu'à ce qu'une dimension minimale ait été atteinte. Dans les modes de réalisation décrits et représentés, cette partition consiste à diviser le sous-ensemble élémentaire en quatre sous-ensembles élémentaires égaux, de forme homothétique à celle du sous-ensemble élémentaire initial et décalés entre eux dans chaque direction. Premier mode de traitement secondaire des données compressées. On va maintenant décrire un premier mode de mise en oeuvre du procédé de représentation secondaire d'un ensemble de données constitué par des paramètres résultant d'un traitement primaire de données, conformément au premier mode de mise en oeuvre du procédé de traitement primaire décrit ci-dessus. 2768000 Dans ce premier mode de réalisation, les paramètres issus du traitement primaire font l'objet du traitement secondaire, en vue de restituer, avec le taux d'erreur mentionné supra, les données initiales. Dans d'autres modes de réalisation, dont l'un est décrit infra, le traitement secondaire a pour objet de délivrer des données d'un autre type que celui des données initiales. D'une manière générale, dans le cas d'une restitution des données initiales, il est procédé à une étape de "calcul itératif' au cours de laquelle, à partir desdits paramètres (al,...,an,b) on met en oeuvre une méthode d'approximations successives convergeant vers le point fixe de l'application contractive globale (7) ce point fixe constituant une représentation dudit ensemble de données initiales (f e E). Pour mettre en oeuvre la méthode d'approximations successives dans le cadre d'une restitution, on applique conformément au premier mode de mise en oeuvre de l'invention, sur un ensemble de données arbitrairement choisi (x0 E E), I'application contractive globale (T*) telle que définie plus haut (équations (8) et (10)). On applique ensuite la même contraction (T*) sur la transformée ainsi obtenue et on réitère ce processus jusqu'à ce que la distance entre deux transformées consécutives soit inférieure à un seuil donné. Ceci s'exprime par l'équation suivante: T* (... T* (T* (x))....)= (T*Y (xO) (30) En appliquant q fois l'application contractive globale sur le résultat de la transformée précédente, on obtient une bonne approximation def, ce qui s'exprime par: (T* y (xo) f (31) le critère d'arrêt des itérations étant exprimé comme suit: 36 2768000 dT *)l(xo),( T*) +(xo)) considérées. Infra, notamment à l'appui des figures 16 et 17, il est décrit un organigramme de restitution d'une image représentée conformément au premier mode de mise en oeuvre du procédé de traitement secondaire de l'invention. Dans la description qui précède, I'application contractive globale définie aux équations (8) et (10) est utilisée dans le processus de restitution de données. En effet, comme le but du traitement secondaire décrit plus haut est, dans ce mode de réalisation, d'obtenir une restitution aussi fidèle que possible des données initiales, c'est la même application contractive globale qui est utilisée lors de l'étape de restitution. En revanche, dans la quatrième variante décrite infra, à l'appui des figures 9, 9A, 18 et 19 o l'on souhaite obtenir, à l'issue du traitement secondaire, des données d'un type différent de celui des données initiales, une autre application contractive globale, et/ou un autre ensemble de définition seront utilisés. D'une manière générale, I'application contractive globale utilisée lors du traitement primaire est dite de "premier type"; celle utilisée lors du traitement secondaire est dite de "second type". En cas de restitution des données initiales, I'application contractive globale de second type est identique à celle de premier type. Dans le cas o au cours du traitement secondaire les 37 2768000 données d'un type différent de celui des données initiales sont obtenues, l'application contractive globale de second type sera différente de celle de premier type. 2. Description d'un premier mode de réalisation d'un dispositif de traitement Dispositif de traitement primaire d'un ensemble de données On va maintenant décrire à l'appui de la figure 4 un premier mode de réalisation d'un dispositif de traitement d'un ensemble de données représentatives de grandeurs physiques, et destiné à permettre une représentation primaire dudit ensemble par la mise en oeuvre du procédé décrit supra. Dans ce mode de réalisation, qui concerne un dispositif de traitement d'images en couleur, les données de l'image en 512 x 512 pixels sont admises en entrée, tandis qu'en sortie le dispositif délivre les paramètres ai, i = 1,..., 4 et b et des informations de partition, relatifs à chacun des sous- ensembles constituant une partition de l'image. On notera ici que la présente invention n'est certainement pas limitée à un format d'image particulier mais qu'elle permet le traitement d'images de toutes tailles. Toutefois, dans un mode de réalisation décrit et représenté, I'image traitée et restituée est une image de 512 x 512 pixels à 256 niveaux sur chacune des trois composantes Y, luminance, Cr, chrominance rouge, et Cb, chrominance bleue. Sur le schéma-bloc de la figure 4, le dispositif de codage porte la référence générale 500. Il comporte, raccordés à un bus de données et d'adresses, désigné sous la référence 501: - un contrôleur (ALU + CTR) 550 incorporant une unité de logique arithmétique. Ce contrôleur est constitué, dans ce mode de réalisation, par un 38 2768000 microprocesseur du type de celui commercialisé par la Société INTEL sous la référence i486, - une mémoire vive RAM, portant la référence 510. Cette mémoire comporte un certain nombre de registres qui seront décrits ci-après et une partie adressable rapidement (cache) 514, - une mémoire programme 530, de type ROM, - un premier registre 560 de mémoire vive à accès direct (REG 1), - un second registre 570 de mémoire vive à accès direct (REG 2), - un tampon d'entrée (IBFR) 590, raccordé à un connecteur d'entrée 591 et - un tampon de sortie (OBFR) 580, raccordé à un connecteur de sortie 581. Dans la ROM 530 est enregistré un programme permettant le traitement des données en entrée 591, avec compression de celles-ci conformément au procédé décrit ci-dessus. Le programme de compression, qui porte sur la figure 4, la référence 531, est décrit infra à l'appui des figures 10 à , 19,20,21A,21B,21C,21Det22. L'ensemble des moyens 510, 530, 531, 550, 560 et 570 constitue ici un mode de réalisation de "premiers moyens logiques de transformation" au sens de l'invention. Dans ce mode de réalisation, la mémoire vive RAM 510 comporte, entre autres les registres suivants destinés à la mise en oeuvre du programme 531: - un registre 511 (IM), destiné à mémoriser les données de I'image, un compteur 513 (CNT) utilisé ainsi qu'il est expliqué infra (figure ). la partie 514 (CACHE) de la mémoire vive. Cette partie est une partie de mémoire adressable très rapidement, dans laquelle sont, ainsi qu'il est connu, stockées les données les plus couramment utilisées à un instant donné. 39 2768000 La partie (CACHE) 514 de la mémoire 510 comporte les registres suivants: un registre 515 CSI destiné à mémoriser, à un instant donné, les coordonnées du sous-ensemble élémentaire Ki en cours de traitement, - des registres f(LI) - f (L4) référencés 516 à 519, dans lesquels sont enregistrées les valeurs [f(Li)](x,y) correspondant à chaque point (x,y) (niveau parmi 256 de la composante en cours de traitement) des sous- ensembles de travail LI - L4 associés au sous-ensemble élémentaire K, considéré, - un registre 520 destiné à mémoriser les coefficients a,, a2, a3, a4 et b, relatifs à un sous-ensemble élémentaire considéré Ki, et - un registre 522 destiné à conserver des facteurs de division A correspondants au nombre de partitions complémentaires effectuées pour obtenir le sous-ensemble élémentaire considéré Ki, - les registres 521 et 523 à 526, destinés à conserver des variables intermédiaires d'un traitement générant les références de sous- ensembles élémentaires formant une partition initiale d'une image à compresser, - des registres 540 à 543 contenant respectivement des variables "hauteur _bande", "hauteuridéale", "hauteur _totale" et "nbligneslues" utilisées comme décrit infra, - le registre 560 (REG 1), destiné à cumuler, pour chaque sous- ensemble élémentaire, les coefficients ai, a2, a3, a4 et b, ainsi que l'éventuelle information de partition, relatifs à chaque sous-ensemble de travail. - le registre 570 (REG 2), destiné à mémoriser la liste des adresses (liste_sous_images) de tous les sous-ensembles élémentaires Ki. Sur la figure 5, on a représenté, raccordés respectivement aux moyens d'entrée et de sortie: - une source 592 de données non compressées, et - des moyens 582 utilisateurs de données compressées. 2768000 La source 592 peut comporter de nombreux moyens à la portée de l'homme du métier. Par exemple, elle pourra consister en un lecteur de disque dur ou de disquette ou de compact disques (connus sous les initiales CD- ROM). Les données de l'image à compresser pourront donc avantageusement être enregistrées sur les supports correspondants: disque dur, disquette ou CD-ROM (compact disque). Cet enregistrement peut être fait de toute manière connue de l'homme de l'art. La source 592 pourra également être constituée par une interface vidéo, susceptible de délivrer les données de l'image à comprimer à l'entrée 591. La source 592 pourra également être constituée par des moyens de réception des données raccordées à un réseau de transmission, la source 592 étant susceptible de transformer les données reçues en un format adéquat pour qu'elles puissent être présentées en entrée du dispositif de traitement primaire. De même, les moyens utilisateurs 582 pourront consister en des moyens de stockage de l'image compressée (disque dur, disquette, CM - ROM etc...) ou une simple interface destinée à délivrer sous un format connu le signal vidéo, à d'autres moyens utilisateurs, tels que des moyens destinés par exemple à transmettre cette image comprimée à distance ou à la stocker. Ces moyens 582 pourront d'ailleurs consister dans un dispositif de transmission de données raccordé à un réseau de télécommunications. Dispositif de traitement secondaire d'un ensemble de paramètres résultant du traitement primaire de données initiales. Dans ce mode de réalisation, qui concerne le traitement d'images, le dispositif de traitement secondaire est apte à restituer, à partir des coefficients al, a2, a3, a4 et b et des informations de partition, relatifs à chacun des sous-ensembles élémentaires, l'image initiale, en couleur. 41 2768000 Il est également apte à délivrer les données relatives à une image à niveaux de gris correspondant à une image originale en couleurs. Il est, en outre, adapté à fournir une image possédant un nombre de points élémentaires différent du nombre de points élémentaires de l'image traitée par le dispositif de traitement primaire, ces images étant dites de définition ou de résolution différente. Ces données en sortie du dispositif de traitement secondaire sont d'un autre type que le type des données de l'image initiale ayant fait l'objet du traitement primaire. Sur le schéma-bloc de la figure 6, le dispositif de restitution ou de calcul itératif porte la référence générale 600. Il comporte, raccordés à un bus de données et d'adresses, désigné sous la référence 601: - un contrôleur (ALU + CTR) 650 incorporant une unité de logique arithmétique. Ce contrôleur est constitué, dans ce mode de réalisation, par un microprocesseur du type de celui commercialisé par la Société INTEL sous la référence i486. - une mémoire vive RAM, portant la référence 610, qui comporte un certain nombre de registres qui seront décrits ci-après et une partie adressable rapidement (dite "mémoire cache") 614. - une mémoire programme 630, de type ROM. Dans cette mémoire, sont enregistrés notamment: un programme 631 de décompression des données de l'image présentée en entrée 681 en vue de la reconstruction d'une approximation de l'image initiale de résolution identique ou différente, et un programme 632 de décompression des données de l'image en vue de la reconstruction d'une image à niveaux de gris en lieu et place d'une image couleur. Les programmes 631 et 632 mettent en oeuvre le procédé décrit ci- dessus et leurs organigrammes sont détaillés ci-après à l'appui des figures 16 à 17. 42 2768000 - un premier registre 560 à accès direct (REG 1), et - un second registre 570 à accès direct (REG 2) identiques à ceux décrits à l'appui de la figure 4, - un tampon de sortie (OBFR) 690, raccordé à un connecteur de sortie 691 et - un tampon d'entrée (IBFR) 680, raccordé à un connecteur d'entrée 681. L'ensemble des moyens 610, 630, 631, 650, 560, et 570 constitue ici un mode de réalisation de "seconds moyens logiques" au sens de l'invention. L'ensemble des moyens 610, 630, 632, 650, 560 et 570 constitue ici un autre mode de réalisation de "seconds moyens logiques" au sens de l'invention. Dans ce mode de réalisation, la mémoire vive RAM 610 comporte, entre autres les registres suivants destinés à la mise en oeuvre des programmes 631 et 632: - un registre 511 (IM), décrit à l'appui de la figure 4, - un facteur d'échelle z dans un registre "z" 628. - un registre 621 (RE), destiné à mémoriser les données d'une image, - un registre (CHTY) 622, destiné à différencier le traitement secondaire général d'une restitution, - un registre (IT) 612 destiné à mémoriser la valeur courante du nombre d'itérations effectuées pour réaliser la représentation secondaire, - un registre (p) 623 destiné à mémoriser le nombre d'itérations pour mettre en oeuvre la méthode des approximations successives afin d'effectuer le traitement secondaire de l'image, - un compteur 513 (CNT) décrit à l'appui de la figure 4. Ce compteur est ici utilisé ainsi qu'il est expliqué infra (figure 16), - la partie 614 (CACHE) de la mémoire vive 610. Cette partie est une partie de mémoire adressable très rapidement, dans laquelle sont, ainsi 43 2768000 qu'il est connu, stockées les données les plus couramment utilisées à un instant donné, - la partie (CACHE) 614 de la mémoire 610 comporte des registres 515 à 520, 540 à 543 et 625 à 627, respectivement identiques aux registres 515 à 520, 540 à 543, 525, 526 et 522 décrits à l'appui de la figure 4, - le registre 560 (REG 1), destiné à stocker, pour chaque sous- ensemble élémentaire, les coefficients a,, a2, a3, a4 et b et l'éventuelle information de partition, associés à ce sous-ensemble, et - le registre 570 (REG 2), destiné à mémoriser la liste des adresses de tousles sous-ensembles élémentaires Ki. Sur la figure 7, on a représenté, raccordés respectivement aux moyens d'entrée et de sortie: - une source 682 de données compressées, et - des moyens 692 utilisateurs de données décompressées. La source 682 pourra consister en des moyens de stockage de l'image comprimée (disque dur, disquette, CD-ROM etc...) ou une simple interface destinée à délivrer celles-ci. Les moyens 682 pourront aussi consister dans un système de réception de données raccordé à un réseau de télécommunications. Les moyens 692 pourront consister par exemple en des moyens de stockage des données décompressées ou en une simple interface délivrant sur sa sortie les données décomprimées. Ils pourront également consister en un dispositif de transmission des données décompressées sur un réseau de télécommunications. Description d'un dispositif incorporant un dispositif de traitement primaire et un dispositif de traitement secondaire Sur le schéma bloc de la figure 8, un dispositif incorporant un dispositif de traitement primaire 500 et un dispositif de traitement secondaire 600 est représenté et porte la référence générale 700. 44 2768000 Ce dispositif est capable de traiter parallèlement des compressions d'images et des décompressions. Il est dès lors composé des dispositifs décrits à l'appui des figures 4 et 6. Il s'agit en l'occurrence du dispositif de traitement primaire 500 et du dispositif de traitement secondaire 600. Ce type d'appareil est appelé "full-duplex". Dans un autre mode de réalisation (half-duplex), le dispositif ne peut exécuter qu'un traitement primaire ou un traitement secondaire mais jamais en même temps. Il peut en outre réaliser un traitement "complexe" comportant un traitement primaire et un traitement secondaire réalisés l'un à la suite de l'autre. Le schéma bloc d'un tel dispositif est représenté dans les figures 9 et 9A. Ce dispositif qui porte la référence 800 comporte conjointement les ressources des dispositifs 500 et 600 décrites supra, en évitant le double emploi. C'est ainsi que: - les registres des mémoires vives 510 et 610 décrits supra sont incorporés dans une même unité de mémoire vive 810, une même unité de mémoire morte 830 incorpore les programmes 531, 631 et 632 mentionnés supra et un programme de configuration 831, - un même microprocesseur 850 incorpore les moyens 550 et 650. Le programme de configuration 831 qui sera décrit infra à l'appui de la figure 18 permet au dispositif 800, de réaliser: - une compression des données d'une image couleur, - une décompression des données soit en vue de restituer l'image couleur initiale, soit en vue de la restituer avec une résolution différente, soit en vue de délivrer une image à niveaux de gris correspondante, et - un traitement complexe permettant de transformer une image couleur en une image à niveaux de gris. 2768000 Description d'un organigramme particulier de compression d'une image couleur 512 x 512 pixels Cet organigramme est illustré en figure 10. Les figures 11 à 15 sont des organigrammes explicitant certaines opérations de l'organigramme de compression de la figure 10. Les organigrammes des figures 11 et 12 détaillent également par ailleurs des opérations de l'organigramme de décompression des figures 16 et 17 qui sera décrit infra. Les références entre parenthèses renvoient aux étapes dela figure 16. On rappelle tout d'abord que les données relatives à l'image matérialisent une application telle que définie dans l'équation (9) exposée supra. En l'espèce, à chaque couple de valeurs (x,y) (coordonnées colonne, ligne) pris dans le domaine de définition (en l'espèce à l'image plane 512 x 512 pixels) correspond une valeurjx,y) dans le domaine d'application 3, R', c'est à dire une valeur parmi 256 niveaux relatifs à chacune des trois composantes Y, Cr et Cb. On organise trois suites de nombres correspondant chacun au niveau d'une composante (soit 512 x 512 = 262.144 valeurs Jxy) par composante), en balayant les données de l'image comme suit: - les lignes sont balayées de gauche à droite; - les lignes sont incrémentées de bas en haut. Ces trois suites sont ici enregistrées dans la source de données non compressées 592. Elles peuvent être lues sur le port d'entrée 591 à la commande du microprocesseur 550. En 200A, il est procédé à une initialisation des registres (IM) 511, nb_ligneslues et des deux registres (REG 1) 560 et (REG 2) 570 à la valeur uniforme nulle. Au cours de l'opération 200A, il est aussi procédé à la 46 2768000 détermination de la hauteur dite " idéale " des bandes indépendantes, cette hauteur correspondant, par exemple, à une dimension: inférieure à la dimension de la partie disponible de la mémoire cache et 5. correspondant à un multiple de 32 lignes de l'image, avec un minimum de 64 lignes. On observe, en particulier, que la hauteur idéale peut être ainsi égale à la hauteur de l'image (soit ici 512 lignes). Les fichiers relatifs aux composantes Y, Cr et Cb sont accessibles séparément et sont fournis dans un ordre prédéterminé, à savoir: - d'abord les données de l'image considérée et relatives à la composante de luminance (Y), ensuite les données de l'image relatives à la composante de chrominance rouge (Cr) et finalement les données de l'image relatives à la composante de chrominance bleue (Cb). Le test 200B consiste à déterminer si la variable nb_ligneslues est égale à la hauteur totale de l'image ou non. Lorsque le résultat du test 200B est négatif, I'opération 200C est réalisée et consiste à initialiser à zéro la valeur du compteur (CNT) 513, qui sert à indiquer une composante de couleur de l'image. Ensuite, l'opération 200D détermine la hauteur hauteurbande de la prochaine bande constituant un sous ensemble de l'image à traiter. Au cours de cette opération, la hauteur de la partie de l'image restant à traiter est comparée à deux fois la hauteur dite " idéale ". Lorsque la hauteur de la partie de l'image restant à traiter est supérieure à deux fois la hauteur dite " idéale ", la hauteur de la prochaine bande de l'image est égale à la hauteur dite " idéale ". Lorsque ce n'est pas le cas, la hauteur de la prochaine bande est égale à la hauteur de la partie de l'image restant à traiter. La valeur de la hauteur de la prochaine bande à traiter ainsi déterminée est chargée dans le registre hauteurbande et nbligneslues est incrémenté de la valeur hauteur bandes. L'opération 200E consiste à incrémenter le compteur (CNT) 513. Ensuite, au cours du test 201, on détermine si le compteur (CNT) 513 est 47 2768000 strictement supérieur à 3, ou non. Lorsque le résultat du test 201 est négatif, le programme se branche sur l'étape 202, au cours de laquelle: - le microprocesseur 550 va lire sur le port d'entrée 591 la composante suivante de la bande d'image à traiter. On rappelle que chaque composante, Y, Cr ou Cb, se présente comme une suite de 262.144 valeurs J(x,y) correspondant au niveau de la composante considérée pour chacun des pixels de l'image. Une partie de cette suite est donc chargée dans le registre (IM) 511 au cours de l'étape 202. On rappelle que, dans ce mode particulier de réalisation, chaque sousensemble de travail a autant de données que les sous-ensembles élémentaires. Le programme se branche ensuite à l'étape 204 (explicitée en figure 11), au cours de laquelle il va être procédé à la partition initiale de I'image de 512 x 512 pixels en 256 sous-ensembles élémentaires Ki, i = (1,..., 256) de 32 x 32 pixels. Cette partition se fait en déterminant les coordonnées (x,y) des coins inférieurs gauche de chacun des m sous- ensembles Ki considérés. C'est ainsi que le sous-ensemble Ki illustré en figure 3, a pour coordonnées (xi,yi), qui correspondent à celles de son coin inférieur gauche. Chacune des adresses des coins inférieurs gauches des blocs de 32 x 32 pixels correspond à une adresse particulière dans la liste enregistrée dans le registre (IM) 511 de la mémoire vive 510. La liste de ces adresses est chargée dans le registre (REG 2). En référence à la figure 11, après une initialisation d'un compteur constitué par le registre i 521 relatif à l'indice des sous-ensembles Ki en l'étape 211, le programme se branche au test 212 au cours duquel il est vérifié si la liste est complète ou non. Dans la négative, le programme se branche à l'étape 213 au cours de laquelle le facteur de division A, qui décompte chaque partition complémentaire qui est effectuée sur un sous-ensemble élémentaire, est initialisée à la valeur nulle et o l'on détermine une variable B comme le 48 2768000 quotient d'une division entière de (i-1) par 16. Le reste de la division (variable C) est mémorisé dans le registre 524. Les valeurs xi = C * 32 et yi = B * 32 sont calculées au cours de l'opération 214 et temporairement mémorisées dans les registres 525 et 526. * Ces coordonnées qui sont celles du coin inférieur gauche du sous- ensemble élémentaire Ki considéré, et le facteur de division A associé, sont mémorisées dans les variables (xi, y,) dans le registre 570 (REG 2) au cours de l'étape 215. Pendant l'étape 216 le compteur i est incrémenté et le programme exécute ensuite à nouveau le test 212. Lorsque le test 212 est positif, le programme effectue le test 205 (figure 10) au cours duquel il est vérifié si la liste enregistrée dans le registre (REG 2) est vide ou non. Dans la négative, cela signifie qu'il y a encore des sous-ensembles élémentaires Ki à traiter et le programme sebranche à l'étape 205. Au cours du test 205, il est vérifié si la liste enregistrée dans le registre (REG 2) est vide ou non. Lorsque le résultat du test 205 est négatif, cela signifie qu'il y a encore des sous-ensembles élémentaires Ki à traiter et le programme se branche à l'étape 206. A l'étape 206, il est supprimé le premier sous-ensemble élémentaire de la liste enregistrée dans le registre (REG 2). Ce sous-ensemble est enregistré dans un registre CSI 515 de la mémoire cache de la RAM 510. Le programme se branche alors à l'étape 207 détaillée en figure 19 ou, selon la première variante, en figure 20. Au cours de cette étape, un test 255 détermine si le sous-ensemble élémentaire considéré possède les dimensions minimales, c'est-à-dire dans le mode de réalisation décrit et représenté, 2 fois 2 pixels, ou non. Lorsque le résultat du test 255 est positif, l'opération 250 consiste à déterminer les quatre sous-images de travail Li associées au sousensemble de travail considéré. Cette opération 250 est détaillée en figure 12. Au cours de l'opération 250, à partir de l'adresse enregistrée dans le registre CSI et du facteur de division A, il est procédé à la recherche des quatre sous-ensembles 49 2768000 de travail voisins L,, L2, L3, L4 (voir figure 3 pour les sous-ensembles de travail associés à la partition initiale). A cet effet, la règle rappelée supra est appliquée -chaque sous-ensemble de travail possède les mêmes dimensions que le sous-ensemble élémentaire auquel il est lié, soit dans chaque direction: 32 divisé par 2 porté à la puissance A; et - chaque sous-ensemble de travail est décalé d'une demi- dimension dans chaque direction, par rapport au sous-ensemble élémentaire associé. L'opération 250 a donc pour but de déterminer les valeurs x,y) de la composante considérée associée à chacun des pixels des sous-ensembles de travail LI, L2, L3 et L4 liés géométriquement et de manière prédéterminée à l'ensemble élémentaire considéré Ki. L'ensemble des valeurs Jx,y) liées aux pixels du sous-ensemble LI (respectivement L2, L3 et L4) sera noté ci-après 1(L1) (respectivement (L2) J(L3) et j(L4)). En référence a la figure 12, pour chaque sous-ensemble élémentaire Ki considéré, le contrôleur 550 lit dans le registre 570 (REG 2) les coordonnées (xi,y. du pixel inférieur gauche de Ki, à l'étape 217. Ensuite, à l'étape 218, I'unité arithmétique 550 lit les valeurs de la composante considérée pour chaque pixel des quatre sous-ensembles de travail L, à L4, définis selon le tableau suivant: L,: [xi-16/2, x i-1 + 16/2X)] x [y, + 16/12, y,-l +(3x16)/2X] L2: [xi+16/24, x i-i + (3x16)/2A] x [yi + 16/2A, yi-] +(3x16)/22] L3: [xri-16/2A, x i- + 16/] x [yi- 16/2'4, yi- +16/2A] L4: [xi+16/2'4, x -1 + (3x16)/24] x [yi- 16/4, y,-] +16/2A] On observe ici que chacun des sous-ensembles de travail possède ici le même nombre de pixels que le sous-ensemble élémentaire considéré, soit (3212/74)2. 2768000 Ensuite, à l'étape 219, I'unité arithmétique 550 va chercher, pour la composante, Y, Cr ou Cb, en cours de traitement, la valeur correspondant à chacun des (32/2A)2 pixels de Lú (respectivement L2, L3 et L4) et stocke l'ensemble des (32/2A)2 valeurs dans le registre j(L,) 516 (respectivement J(L2) 517,1(L3) 518 etj(L4) 519) du cache 514). A la suite de l'opération 250 (figure 19), le programme effectue l'opération 251 au cours de laquelle, d'une manière générale, les paramètres ai (en l'espèce al, a2, a3, a4) et b sont calculés en mettant en oeuvre la méthode des moindres carrés avec les contraintes décrites supra (voir équations 12 et 13). Une description simplifiée de l'étape 251 est donnée dans l'organigramme représenté dans la figure 13. On rappelle que pour déterminer les coefficients a, a2, a3,a4 et b il y a lieu de résoudre un problème de minimisation d'une fonctionnelle sous contraintes. Supra il a été vu, à l'appui des équations 14 à 29 que cela revient à résoudre itérativement deux types de problèmes de minimisation sans contraintes. Les explications données supra pour un cas général sont mises en pratique pour la détermination des quatre paramètres ap, a2, a3, a4 et du paramètre b. A l'étape 220 on procède à la résolution du premier problème de minimisation sans contraintes. On minimise la fonctionnelle: K, (a],... a4,b)= Z ff(Xy))rZ a.i If(Li)lx,Y)+b (x, y)Ki j=I pour des valeurs (a,,..., a4,b) parcourant tout R5. Pour ce faire on met en oeuvre la méthode des moindres carrés décrite supra par les équations (16) à (19). La solution unique à ce problème (a,,..., a4,b) dans R5 est la solution du système linéaire (19). 51 2768000 Comme illustré en figure 14, l'étape 220 est subdivisée en quatre étapes 230 - 233. Au cours de l'étape 230, on calcule des coefficients Gi. i = 1,...,5, j = 1,...,5 en mettant en oeuvre les formules suivantes: Gji =,[f(Lj)](xy) [f (Li)](xyY) ij= 1,4 (x)y)EK G5i = Gi5 = [f(L)] (x,Y) i =y) (x,y)eK G55 = 322 Les coefficients [G,.] constituent la matrice à inverser afin de résoudre le système linéaire d'équations (19). Les formules ci-dessus permettant de déterminer les coefficients Gij, sont comme on le voit des simples additions et multiplications mettant en oeuvre des valeurs de pixels correspondant aux niveaux de la composante considérée, et cela pour chacun des pixels du sous ensemble élémentaire considéré. De même à l'étape 231 on calcule les coefficients SI,..., S5 constituant le second membre du système linéaire. Les formules mises en oeuvre sont: Si = L((Lj)](xy) f(x, y) i= (x,y)EK S5= 1 f(x,y) (x,y)EK L'étape 232 fait appel à une routine classique d'inversion d'un système d'équations linéaires, en l'espèce à cinq inconnues. Le système linéaire à inverser est le suivant: 52 2768000 -Gll G21 G31 G41 G51 al SI G12 G22 G32 G42 G52 a2 S2 G13 G23 G33 G43 G53 a3 S3 G14 G24 G34 G44 G54 a4 S4 G15 G25 G35 G45 G5 b S5 La solution ai,..., a4, b sera mémorisée à l'étape 233 dans le registre 520 de la partie 514 (CACHE) de la mémoire vive 510. Le programme passe ensuite à l'étape 221 (figure 13) o, conformément aux équations (20) à (23), on détermine une partition disjointe de l'ensemble des entiers {1,2,3,4} en NV, UVet LVdéfinis comme NV= {e {1,.. .,4}-1 du problème avec contraintes. Dans la négative, certaines contraintes sont actives pour la solution du problème avec contraintes. Dans ce cas, (étape 223; voir figure 15) il y a lieu de résoudre un problème restreint. Il s'agit en l'occurrence de minimiser sous contraintes la fonctionnelle modifiée: IV.(ci,....) F(xy) -: m(L)lx, y) + Cm oO (xy)EK o 53 2768000 F(x, y) f(XY)_ D ÉLi)IXy)+._..,. j EUV k ELV et m La solution de ce problème est (cl,...,Cm) et est obtenue en considérant les équations (16) à (18) et en résolvant le système linéaire (19). La solution du problème initial avec contraintes est: ai = cj: j = 1,...,m- 1 ou i NV, ak = D Àk e UV, a = -: G LV, b = cm. L'étape 223 va être décrite à l'appui de l'organigramme de la figure 15 en supposant m = 3. Il convient de considérer le problème de minimisation sans contraintes, décrit dans l'étape 223 qui est subdivisée en quatre étapes 240 à 243. Au cours de l'étape 240, on calcule des coefficients NH, i = 1,...4, j = 1,...,4 en mettant en oeuvre les formules suivantes: Hji = E [f(Lj)](xy) [f(Li)](x'y) i,j=... (x, y)EK H4i = Hi4 = E [f(L)](xI y) (x,y)EK,... 3 H44 = 322 Les coefficients [Hi] constituent la matrice à inverser afin de résoudre le système linéaire d'équations (19). Les formules ci-dessus permettant de déterminer les coefficients H., sont comme on le voit des simples additions et multiplications mettant en oeuvre des valeurs de pixels correspondant aux niveaux de la composante 54 2768000 considérée, et cela pour chacun des pixels du sous ensemble élémentaire considéré. De même à l'étape 241 on calcule les coefficients TI,... T4 constituant le second membre du système linéaire. Les formules mises en oeuvre sont: Ti = E(Lj)] (x, y)- F(x, y) i=1,.... 3 (xy)eK T4 F(x, y) (x,y)EK L'étape 242 fait appel à une routine classique d'inversion d'un système d'équations linéaires, en l'espèce à 4 inconnues. Le système linéaire à inverser est le suivant: HI, H2, H3, H41 cI TI H12 H22 H32 H42 c2 T2 H13 H23 H33 H43 C3 T3 H14 H24 H34 H44 b T4 A l'issue de l'étape 223, il y a lieu de revoir si la solution ainsi obtenue satisfait encore les contraintes. Pour ce faire, l'étape 221 et le test 222 sont exécutés à nouveau. Ce processus est réitéré jusqu'à ce que le test 222 soit positif. Au cours de l'opération 251, les coefficients a1, a2, a3, a4, b sont enregistrés dans le registre 560 (REG 1). Puis le test 205 est réitéré. On observe ici que dans la mesure o le sous-ensemble élémentaire possède des dimensions minimales, aucune information de partition n'est nécessaire, puisque aucune partition complémentaire ne peut être effectuée. 2768000 Lorsque le résultat du test 255 est négatif, l'opération 252 consiste à mesurer la variance des niveaux de la composante considérée, dans le sous- ensemble élémentaire considéré. Ensuite, l'opération 253 consiste à déterminer un critère dit "de qualité" applicable au sous-ensemble élémentaire considéré. Préférentiellement, la définition du critère de qualité consiste en la définition d'un seuil en deçà duquel le critère de qualité est considéré comme respecté. Préférentiellement aussi, la valeur du seuil prend en compte les dimensions du sous-ensemble élémentaire considéré. Dans le mode de réalisation décrit et représenté ce seuil est la fonction correspondant au tableau suivant: dimensions du sous-ensemble en pixels seuil 2x2 200 4x4 160 8x8 100 16 x 16 60 32 x 32 20 On observe ici qu'il est préférentiel d'utiliser un tableau correspondant à une fonction décroissante des dimensions du sous- ensemble élémentaire. Selon des cinquième et sixième variantes non représentées: - la valeur du seuil est constante quelle que soit les dimensions des sous-ensembles élémentaires ou - la valeur du seuil est une fonction inverse d'une dimension du sous-ensemble élémentaire considéré. Le test 254 détermine si le critère de qualité est respecté ou non. Dans le mode de réalisation décrit et représenté, il est respecté lorsque la mesure de la variance des niveaux de la composante considérée est inférieure à la valeur du seuil qui correspond, dans le tableau cidessus, aux dimensions du sous-ensemble élémentaire considéré. 56 2768000 Lorsque le résultat de l'un des tests 254 ou 255 est positif, l'opération 250 consiste à déterminer les quatre sous-images de travail comme exposé ci-dessus. Ensuite, l'opération 258 est identique à l'opération 251, si ce n'est que sont mémorisés, dans le registre 560 (REG 1), successivement l'information de partition valant "0" puisque aucune partition complémentaire n'a été effectuée et les coefficients a,, a2, a3, a4, b. Ensuite, le test 205 est réitéré. Lorsque le résultat du test 254 est négatif, l'opération 256 consiste à effectuer une partition complémentaire du sous-ensemble élémentaire considéré. Dans le mode de réalisation décrit et représenté, cette partition complémentaire consiste à diviser chaque sous-ensemble élémentaire en quatre sous ensembles élémentaires carrés égaux. A cet effet, au cours de l'opération 256, il est ajouté dans la liste liste_sous_image, dans le registre (REG 2) 570, les coordonnées des quatre points qui définissent les coins inférieurs gauches des quatre sous-ensembles élémentaires résultant de la partition complémentaire. A ces coordonnées sont associées un facteur de division A qui est égal au facteur de division du sous-ensemble élémentaire que l'on partitionne, incrémenté de la valeur 1. En outre une information de partition valant "1", puisqu'une partition complémentaire a été effectuée, est mémorisée dans le registre 560 (REG 1). A la suite de l'opération 256, le test 205 est réitéré. Les figures 21A, 21B et 21C illustrent l'effet des partitions complémentaires qui sont effectuées sur les sous-ensembles élémentaires issus de la partition initiale ou de partitions complémentaires précédentes. Dans un but explicatif, et par exception aux règles générales de la description, on suppose que, dans le mode de réalisation exposé en figures 21A à 21C, les dimensions minimales des sous-ensembles élémentaires sont quatre fois plus petites que leurs dimensions maximales. La figure 21A représente une partie d'une image, correspondant à douze sous-ensembles élémentaires référencés B0 à B11 résultant de la partition initiale (opération 204, figure 11), dans laquelle: 57 2768000 - le sous-ensemble élémentaire B1 a subi une partition complémentaire en quatre sous-ensembles élémentaires B1,0 à B1,3, - le sous-ensemble élémentaire B1,3 a subi une partition complémentaire en quatre sousensembles élémentaires B1,3,0 à B13,3, - le sous-ensemble élémentaire B6 a subi une partition complémentaire en quatre sous- ensembles élémentaires B6,0 à B6,3, - le sous-ensemble élémentaire B6,1 a subi une partition complémentaire en quatre sous-ensembles élémentaires B6,10 à B6 13, et le sous-ensemble élémentaire B11 a subi une partition complémentaire en quatre sous-ensembles élémentaires Bl,0 à B,13. La figure 21B illustre, pour les sous-ensembles élémentaires ainsi partitionnés, les informations de partition qui sont associées aux sous- ensembles élémentaires résultants de la partition initiale (sousensembles pour lesquels la valeur du facteur de division A est nulle) ou aux sous-ensembles élémentaires résultants de partitions complémentaires. Ainsi, les sous-ensembles élémentaire Bo, B2, B3, B4, B5, B7, B8, B9 et B10 sont associés à une information de partition nulle, les sousensembles élémentaires B1, B6 et B1l sont associés à une information de partition valant 1, leurs sous ensembles élémentaires B1,0, B1,1, B1,2, B6,0, B6,2, B6,3, B11,0, B,1,1, B112 et B113 sont associés à une information de partition nulle, les sous ensembles élémentaires B13 et B6,1, sont associés à une information de partition égale à "1'" et les sous-ensembles élémentaires résultant de leur partition complémentaire ne sont associés à aucune information de partition puisque les dimensions de ces sous-ensembles élémentaires sont les dimensions minimales. Les dimensions de tous ces sous-ensembles élémentaires peuvent ainsi être définies sans ambiguïté par la suite d'informations de partition: 010001000010100000010000 58 2768000 La figure 21C propose une représentation des paramètres a,, a2, a3, a4 et b, relatifs à une seule image et qui, conjointement, sont, référencés ici D et des informations de partition qui leur sont associées, en utilisant la suite exposée ci-dessus. On y observe que la séquence des données compressées correspondant à la partie d'image représentée en figure 21A comporte: - un en-tête, représentant en particulier les dimensions de l'image (valant ici 512 x 512 pixels) les dimensions initiales des sous-ensembles élémentaires (correspondant ici à 32 x 32 pixels), la hauteur idéale et la définition des dimensions minimales des sous-ensembles élémentaires (correspondant ici à 2 x 2 pixels) et une information de traitement complémentaire et l'éventuel ratio de dimensions entre la résolution de la composante de luminance et celle des composantes de chrominance; - la suite des informations de partition présentée ci-dessus: associée aux éventuelles données qui leur correspondent, au cours de la mémorisation effectuée pendant les étapes 251 et 263 (sans information de partition), 258 et 261 (avec information de partition valant "0") et 256 (avec information de partition valant "1"), sachant que les informations de partition valant 1 ne sont associées à aucune donnée. La figure 21D illustre une deuxième variante, concernant l'organisation des paramètres et des informations de partition résultant du traitement primaire d'une seule image. On y observe que la séquence des données compressées correspondant à la partie d'image représentée en figure 21A comporte: - un en-tête, représentant en particulier les dimensions de l'image (valant ici 512 x 512 pixels) les dimensions initiales des sous-ensembles élémentaires (correspondant ici à 32 x 32 pixels) la hauteur idéale et la définition des dimensions minimales des sous-ensembles élémentaires 59 2768000 (correspondant ici à 2 x 2 pixels) et une information de traitement complémentaire et l'éventuel ratio de dimensions entre la résolution de la composante de luminance et celle des composantes de chrominance; - la suite des informations de partition présentée ci-dessus: Q 0 001 000010100000010000 chacune étant associée aux paramètres qui lui correspondent, au cours de la mémorisation effectuée pendant les étapes 251 et 263 (sans information de partition), 258 et 261 (avec information de partition valant "0") et 256 (avec information de partition valant "1"), sachant que, selon cette deuxième variante, même les informations de partition valant 1 sont associées à des données et sont enregistrées avec elles dans le registre (REG 1) 560. Grâce à cette disposition, comme illustré en figure 21E, en connaissant le facteur d'échelle z (obtenu au cours de l'opération 420 décrite infra), on peut sélectionner les données D et les informations de partition à utiliser au cours du traitement secondaire. En l'espèce, pour un facteur d'échelle égal à 1iv, v étant un nombre entier, on ne conserve, pour le traitement secondaire, que les données D correspondant à des sous-ensembles élémentaires de dimensions supérieures ou égales à 2v x 2v pixels dans l'image primaire, c'est-à- dire ceux qui donneront des sous-ensembles de dimensions supérieures ou égale à 2 x 2 pixels dans l'image tertiaire. Dans l'exemple de la figure 21E, lorsque les dimensions minimales des sous-ensembles élémentaires de l'image primaire, c'est-à-dire de l'image qui est traitée au cours du traitement primaire, sont de 8 x 8 pixels et que le facteur d'échelle est strictement inférieur à 1/4, les sousensembles élémentaires de dimension minimale ne sont pas à prendre en compte, parce qu'il correspondraient, sinon, à des sous-ensembles élémentaires de dimensions strictement inférieures à 2 x 2 pixels. 2768000 Dans l'exemple illustré en figure 21E, on admet que le facteur d'échelle est égal à un huitième, ce qui revient à diviser par soixante-quatre le nombre de points de l'image résultant du traitement secondaire. On observe, en figure 21E, qu'aucune des informations concernant les sousensembles élémentaires de plus petites dimensions, qui résultaient de deux partitions complémentaires successives au cours du traitement primaire, n'est prise en compte au cours du traitement secondaire. La mise en oeuvre de cette deuxième variante permet de réduire la durée du traitement secondaire, car il n'est, ici, pas indispensable de traiter tous les paramètres résultant du traitement d'image primaire pour reconstituer une image de plus faible dimension. En figure 22 est une représentation de l'organisation des paramètres et des informations de partition résultant de traitements primaires de plusieurs images. Les paramètres et données de partition complémentaires concernant différentes images sont organisés de la manière suivante: - un fichier 900 comporte un en-tête commun 901 dans lequel sont enregistrées diverses données générales communes à toutes les images représentées dans ce fichier 900, - une table d'index 909, dans laquelle sont représentées les adresses des ensembles de données concernant les images représentées dans ledit fichier 900. Dans le mode de réalisation décrit et représenté ici, les adresses de début de description des images sont représentés dans l'entête global sous la forme de données de translation, c'est-à-dire de données indiquant de combien d'adresses successives il faut se déplacer dans le fichier pour atteindre la description de ladite image, celle-ci commençant par un en- tête spécifique. - les en-têtes spécifiques 902, 904 et 906, représentent, en particulier: le nombre de composantes de couleur (ici 3), 30. les dimensions de l'image (valant 512 x 512 pixels pour une image complète ou moins pour des sous-images), 61 2768000 la hauteur idéale des bandes, les dimensions initiales des sous- ensembles élémentaires (correspondant ici à 32 x 32 pixels), la définition des dimensions minimales des sous-ensembles élémentaires (correspondant ici à 2 x 2 pixels), une information de traitement complémentaire, et l 'éventuel ratio de dimensions entre la résolution de la composante de luminance et celle des composantes de chrominance; On note ici que préférentiellement, dans le cas o certaines de ces informations seraient communes à toutes les images du fichier, alors ces informations sont contenues dans l'en-tête commun 901 et non dans les en-têtes spécifiques 902, 904 et 906. - les blocs d'informations 903, 905 et 907 comportent les suites d'informations de partition, chacune d'entre elles étant associée aux paramètres qui lui correspondent, au cours de la mémorisation effectuée pendant les étapes 251 (sans information de partition) et 258 (avec information de partition), sachant que les informations de partition valant 1 ne sont associées à aucune donnée (sauf, bien entendu, si la deuxième variante illustrée en figures 21D et 21E est mise en oeuvre). Grâce aux dispositions d'organisation de fichiers relatifs à une pluralités d'images, le nombre de fichiers utilisé est limité ainsi que les opérations d'ouverture et de fermeture de fichiers, opérations qui présentent une durée particulièrement importante. On rappelle ici qu'un fichier est un ensemble de données qui possèdent conjointement la même adresse en mémoire. Le traitement secondaire s'en trouve ainsi accéléré. En particulier, lorsque l'affichage de plusieurs images de taille réduite est prévu pour avoir une vue globale de ces images, l'usage d'un fichier unique pour représenter plusieurs images augmente considérablement la rapidité d'affichage de chaque image réduite. 62 2768000 L'ensemble des opérations 205-258 ou 205-256 est réitéré tant que la mémoire (REG 2) n'est pas vide. Lorsque l'opération 207 est achevée, le test 205 est réitéré. Lorsque le résultat du test 205 est positif, l'opération 200E est réitérée. Lorsque le résultat du test 201 est positif, le test 200B est réitéré. Lorsque le résultat du test 200B est positif, I'opération 209A de détermination de traitement complémentaire est réalisée. Au cours de cette opération 209A, il est procédé: - d'une part, à la détermination de l'utilité ou non d'effectuer un traitement complémentaire de lissage sur l'image résultant d'un traitement secondaire des paramètres et informations de partition et - d'autre part, à la mémorisation de la description de cette image, à savoir son en-tête spécifique (comportant notamment les dimensions de l'image, les dimensions maximales et minimales des sous-ensembles élémentaires, l'éventuel ratio de dimensions entre la résolution de la composante de luminance et celle des composantes de chrominance et la hauteur idéale), ses paramètres et informations de partition et l'information de traitement complémentaire représentant l'utilité dudit traitement complémentaire. Pour déterminer cette utilité, plusieurs critères peuvent être utilisés. Le premier consiste à comparer la dimension minimale des sous- ensembles élémentaires à une dimension qui sert de seuil. Lorsque la dimension minimale est supérieure à la dimension seuil, cela signifie que des sous-ensembles élémentaires relativement grands (par exemple de 8 x 8 pixels) vont être utilisés même si le critère de qualité, défini à l'étape 253, n'est pas respecté et qu'il sera donc profitable de réduire la sensation de bord affectant de tels sous-ensembles élémentaires. Le second (introduit supra en regard de l'opération 254) consiste à comparer les seuils utilisés dans le tableau définissant le critère de qualité avec des valeurs dites "critique", de seuils prédéterminés. Lorsque les seuils effectivement utilisés sont supérieurs à ces valeurs critiques, cela signifie que le critère de qualité est aisément respecté sur des sous-ensembles élémentaires de grandes dimensions, sous- 63 2768000 ensemble dont les bords peuvent être visibles. Il est alors, de nouveau, intéressant de prévoir un traitement complémentaire. Ensuite, l'opération 209B comporte la mise à jour, dans un fichier commun (figure 22) d'un en-tête commun à plusieurs ensembles de données résultant du traitement primaire de plusieurs images (référencé 901, figure 22), la mise à jour d'une table d'index (référencée 909, figure 22) qui contient des adresses d'ensembles de données concernant des images, dans le fichier considéré. Ensuite est réalisée l'étape de fin 210. Les performances suivantes ont pu être observées sur une image couleur 512 x 512 pixels à 256 niveaux par composante: Nombre de données au départ: 3x 512x512 x 8bits=6291456 Nombre de données à l'arrivée: 3x 256 x (4 x 64 + 10) = 204288 par conséquent: - taux de compression: 30 - nombre de bits par pixels: 0,78 Temps de traitement: 3 x 256 x 80 msec._ 61 sec. (80msec. = temps unitaire de calcul de a,.... a4, b) Bien entendu, l'invention s'applique aussi bien au traitement primaire d'images en niveaux de gris (possédant une seule composante) qu'à celui d'images en couleurs (possédant plusieurs composantes). Description de deux modes de réalisation d'un organigramme de décompression 64 2768000 On va décrire, à l'appui des figures 16 et 17, l'organigramme de programme permettant de reconstruire les données de l'image couleur d'origine, ou au moins une représentation approchée. Au cours de l'opération 400, figure 16, il est procédé à une initialisation des registres (IM), (RE) et (IT) de la mémoire vive 610, des deux mémoires (REG 1) 560 et (REG 2) 570, et de la variable intermédiaire nb_ligneslues, à la valeur uniforme nulle. Au cours de cette même opération 400, la dimension minimale et la dimension initiale, la hauteur totale de l'image et la hauteur idéale des bandes sont lues dans l'en-tête spécifique concernant les données secondaires à traiter. Au cours de l'opération 420, le facteur d'échelle z est lu en entrée, par l'intermédiaire d'un clavier, moyennant des dispositions techniques non représentées mais bien connues de l'homme du métier. Au cours de l'opération 420, on détermine la dimension minimale des sous-ensembles élémentaires de I'image décompressée, en prenant la valeur maximale desdeux valeurs suivantes: - le produit de la dimension minimale lue dans l'en-tête spécifique (opération 400) par le facteur d'échelle z, - 2 x 2 pixels. Au cours du test 421, on détermine si la variable nb ligneslues est égale à la hauteur totale de l'image, ou non. Lorsque le résultat du test 421 est négatif, l'opération 422 consiste à initialiser la variable CNT, qui indique le numéro de composante, à la valeur 1, dans le registre 513 (CNT). Ensuite, l'opération 423 consiste, de manière identique à l'opération 200D (figure 10), à déterminer la hauteur de bande et à mettre à jour la variable nblignes_lues. Le programme effectue alors l'opération 403 au cours de laquelle les données compressées de la mémoire d'entrée pour la bande courante sont chargées dans la mémoire (REG 1) 560. Il est rappelé que les données compressées sont formées d'une suite de cinq ou six nombres, à savoir les paramètres sélectionnés a,,..., a4 et la valeur calculée b et, éventuellement, d'une information de partition, relatifs à chaque sous-ensemble élémentaire Ki. 2768000 L'opération 403 consiste, d'abord, à ouvrir le fichier 900, dans lequel sont représentées une pluralité d'images (figure 22) puis, dans l'en- tête commun 901 du fichier 900, à lire les données concernant tous les fichiers et, dans le tableau d'index 909, l'adresse des données concernant l'image que l'on souhaite traiter afin de charger ces données dans le registre 560. Le programme effectue ensuite l'opération 404, au cours de laquelle il est procédé à la création de la liste des références de chaque sous- ensemble élémentaire. Il s'agit en l'occurrence d'une liste des coordonnées (xi, y,) du pixel inférieur gauche de chaque sous-ensemble élémentaire Ki, ainsi que du facteur de division A associé à ce sousensemble élémentaire, ce facteur de division A étant recalculé en fonction des informations de partition comme exposé avec le traitement primaire ainsi que du facteur d'échelle z qui est associé à toute l'image résultant du traitement secondaire. Cette liste est conservée dans le registre (REG2). Au cours de l'opération 404, on détermine les sous-ensembles élémentaires constituant une partition d'un deuxième ensemble de données, étape prenant en compte d'une part la dimension minimale déterminée au cours de l'opération 420, et, d'autre part, la présence d'information de partition correspondant aux dits sous-ensembles. A cet effet, on effectue une opération de partition exclusivement sur chaque sous-ensemble élémentaire de dimension supérieure à la dimension minimale et auquel correspond une information de partition dans les données compressées chargées dans (REG 1). Enfin, au cours de l'opération 404, on retire des données contenues dans REG 1, les paramètres qui ne sont pas associés aux sous- ensembles élémentaires ainsi déterminés de telle manière que les seuls paramètres traités dans les opérations ultérieures sont les paramètres liés à des sous-ensembles élémentaires de dimension supérieure à la dimension minimale déterminée au cours de l'étape 420. Ainsi, comme décrit plus haut, pour un facteur d'échelle égal à l/v, v étant un nombre entier, on ne conserve, pour le traitement secondaire, 66 2768000 que les données D correspondant à des sous-ensembles élémentaires de dimensions supérieures ou égales à 2v x 2v pixels dans l'image primaire, c'est- à-dire ceux qui donneront des sous-ensembles de dimensions supérieures ou égale à 2 x 2 pixels dans l'image tertiaire. On note ici que le facteur d'échelle z est un facteur multiplicatif qui s'applique aux dimensions de l'image reconstruite au cours du traitement secondaire à partir des données D provenant d'une image traitée au cours d'un traitement primaire de compression. Ce facteur multiplicatif s'applique aussi aux dimensions de chaque sous-ensemble élémentaire, qu'il provienne de la partition initiale ou de partitions complémentaires, et à chaque dimension de sous-ensemble de travail associé à un de ces sous-ensembles élémentaires. Lorsqu'un ratio entre les résolutions des composantes de chrominance et la composante de luminance a été transmis dans l'en-tête, le facteur d'échelle z est appliqué à la luminance et le produit du facteur d'échelle z par ledit ratio est appliqué aux composantes de chrominance, de telle manière que tous les ensembles de données sur lesquels on reconstruit une composante possèdent la même résolution. Conformément à l'invention, aucun facteur d'échelle z ne provoque une duplication de pixel formant l'apparition, dans l'image reconstruite, de pavés uniformes. Le programme se branche ensuite sur l'étape 406 au cours de laquelle: conformément au mode de mise en oeuvre de l'invention décrit ici, une image arbitraire initiale possédant un nombre de lignes égal à la hauteur de bande multipliée par le facteur d'échelle z, chaque ligne possédant un nombre de pixels égal à 512 multiplié par le facteur d'échelle z, est mémorisée dans le registre (IM) 511 de la mémoire vive 610. Dans le cas présent de décompression d'une image couleur o chaque composante possède 256 niveaux ayant respectivement les valeurs 0 à 255, on initialise le registre (IM) à la valeur numérique 128 (correspondant sensiblement à la valeur moyenne entre 0 et 255) pour chaque pixel pour la première composante traitée. Pour les 67 2768000 composantes suivantes, on utilise comme initialisation le résultat obtenu pour la composante précédante. - le registre (IT) 612 est initialisé avec une valeur p lue dans le registre 623 de la RAM 610. Le nombre d'itérations est enregistré dans le registre 623 (p), compte tenu du RMSE souhaité (voir supra tableau 1 de la description générale du procédé). Les inventeurs ont en effet constaté au cours d'essais avec le prototype que, pour obtenir un RMSE donné à partir d'un taux de compression, un nombre limité d'itérations successives au cours du calcul d'approximation était nécessaire. Typiquement: 2 images très complexes p peut avoir une valeur supérieure,-. Le programme exécute ensuite un nombre p d'itérations de la boucle référencée 450 (opérations 407, 408, 409 et 410) afin de permettre la restitution d'une bande de la composante de l'image. Le programme se branche tout d'abord au test 407 au cours duquel on vérifie si le contenu du registre (IT) 612 est positif et non nul. Si le test 407 est positif, le programme se branche au test 408 au cours duquel il est vérifié si la liste enregistrée dans (REG 2) 570 est vide ou non. Si le test 408 est négatif, le programme se branche sur l'étape 410 qui comprend elle-même les étapes 411 à 415 (figure 17). A l'étape 411, on retire les coordonnées (xi, y,) correspondants au sousensemble élémentaire Ki considéré ainsi que sa taille et on les copie dans les registres 525 et 526 de la mémoire vive RAM 510. Parallèlement, les paramètres sélectionnés (a,..., a4) et la valeur calculée b, relatifs au sous- ensemble élémentaire considéré sont copiés du registre (REG 1) vers le registre 520 de la partie 614 (CACHE) de la mémoire vive 610. L'opération 412 a pour but de déterminer les sous-ensembles de travail liés géométriquement et de manière prédéterminée au sous-ensemble élémentaire Ki considéré, en prenant en compte le fait que chaque sous- ensemble de travail possède des dimensions doubles du sous-ensemble élémentaire considéré (tenant ainsi compte du facteur d'échelle z) et possède 68 2768000 un centre décalé, par rapport à ce sous-ensemble élémentaire, de la dimension du sous-ensemble élémentaire considéré, dans chaque direction. Cette opération 412 comporte les même opérations que l'opération 250 décrite supra. Les valeurs f(L1),..., fL4) des moyennes, pour chaque pixel du sous-ensemble élémentaire, des quatre pixels qui lui correspondent dans chacun des sous-ensembles de travail Ll,..., L4, sont respectivement copiées dans les registres 516, 517, 518 et 519 de la partie 614 (CACHE) de la mémoire vive 610. Le programme se branche ensuite aux étapes 413 et 414 au cours desquelles on calcule, pour chaque pixel (x,y) du sous-ensemble élémentaire Ki, la valeur ai [f(L)](x, y) + b i=1 à l'aide des paramètres a,..., a4 et de la valeur b stockés dans le registre 520 et des données f(Lj),..., f(L4) stockées dans les registres 516 à 519, (étape 413) et on mémorise (étape 414) cette valeur dans le registre (RE) 621 de la RAM 610. Si le test 408 est positif, le contenu du registre (RE) 621 est copié dans le registre (IM) 511, et le contenu du registre (IT) 612 est diminué d'une unité. Il est à nouveau procédé au test 407. Tant que ce test est positif cela signifie que le nombre d'itérations prévu par le nombre enregistré dans le registre 623 (p), n'est pas terminé et les opérations 408 à 410 sont réitérées. Lorsque le test 407 est négatif ou nul, le nombre d'itérations prévu est terminé, pour la composante en cours de traitement, et le programme sort de la boucle 450. Cette composante est donc décompressée. On procède alors à l'étape 405 qui consiste, pour effectuer un assemblage des bandes d'images, à copier le contenu du registre (IM) 511 dans le tampon de sortie (OBFR) 690. L'opération 424 consiste ensuite à 69 2768000 incrémenter de 1 la valeur de la variable CNT, dans le registre (CNT) 513. Ensuite, le test 401 détermine si le contenu du compteur 513 (CNT) est, ou non, strictement supérieur à 3. Tant que le résultat du test 401 est négatif, cela signifie qu'il reste au moins une composante à décompresser. Lorsque le résultat du test 401 est négatif, I'opération 403 est réitérée. En figure 16A, au cours du test 430, il est procédé au test du compteur 513 (CNT). Si son contenu est égal à zéro, cela signifie qu'il s'agit de la première composante, celle de luminance, et le registre (IM) 511 est initialisé à 128 pour chaque pixel (étape 431). Le registre (IT) est initialisé à la valeur p (étape 432). Si le contenu du compteur 513 (CNT) est supérieur à zéro, cela signifie qu'une composante au moins a été décompressée et, à l'étape 433, on charge le registre (IM) 511 avec le contenu du registre (RE) 621, c'est- à-dire avec les valeurs correspondant à la composante précédemment décompressée. Ceci permet de décroître le nombre d'itérations p de deux unités (étape 434 o l'on initialise (IT) à la valeur p-2) car l'image initiale est très proche de l'image finale. Le temps de calcul est diminué grâce à cette caractéristique. Le compteur 513 (CNT) est ensuite incrémenté d'une unité (étape 435). Cependant, selon une septième variante non représentée, il est procédé de manière parallèle aux traitements des trois composantes, Y, Cr et Cb, de l'image, en prenant comme ensemble de données initial, un ensemble de données arbitraires. Lorsque les trois composantes ont été décompressées, le test 401 (figure 16) est positif, le programme de décompression est alors terminé pour les trois composantes de la bande de l'image considérée. Le programme effectue alors le test 421 décrit supra. Lorsque le résultat du test 421 est positif, la décompression de l'image entière est terminée et le test 416 consiste alors à déterminer si: 2768000 - soit l'information de traitement complémentaire présente dans l'en- tête des données D et informations de partition est représentatif d'une utilité d'effectuer un traitement complémentaire, - soit le facteur d'échelle z possède une valeur qui rend utile un traitement complémentaire (z étant, par exemple, supérieur ou égal à 4) ou non. Lorsque le résultat du test 416 est négatif, l'étape de fin 402 est effectuée directement. Lorsque le résultat du test 416 est positif, l'opération 417 de traitement complémentaire est effectuée. Cette opération 417 consiste en une opération connue par l'homme du métier sous le nom de "post-processing" (que l'on peut traduire en français par " traitement complémentaire "), ce qui fait référence à un traitement effectué après la décompression d'image illustrée en figure 16. Ce traitement comporte, de manière connue, un filtrage spatial, destiné à diminuer l'éventuelle sensation de frontière des sous- ensembles élémentaires. L'opération 417 effectue aussi l'assemblage des bandes d'images décompressées, en particulier, en réduisant l'apparition de la sensation d'une séparation entre ces bandes. Selon une variante présentée infra, I'opération 417 effectue, en outre, une détermination de valeurs de pixels communs à * plusieurs bandes d'images décompressées. Préférentiellement, les paramètres de ce filtrage sont fonctions des dimensions du sous-ensemble traité. Par exemple, les dimensions du filtre utilisé sont proportionnelles à celles du sous-ensemble considéré, d'une part, et le nombre de pixels sur lesquels s'applique ce filtre est proportionnel à chaque dimension du sous-ensemble élémentaire considéré, d'autre part. Selon chacun de ces exemples, le facteur d'échelle z intervient dans le paramétrage du traitement complémentaire. Au cours de l'opération 417, les données relatives à chacune des trois composantes sont, tour à tour, copiées dans le tampon de sortie (OBFR) 690, en remplacement des données mémorisées au cours de l'opération 405, d'o elles sont transférées vers les moyens utilisateurs de données décompressées. 71 2768000 Selon une variante non représentée, chaque fichier issu du traitement primaire d'une image est disposé dans un fichier spécifique individuel. On observe que, selon des caractéristiques générales de I'invention, le traitement primaire comporte une étape de "construction", opération 251 ou 258, d'une application contractive globale dite "de premier type", pour ledit premier ensemble de données, dont le point fixe constitue une approximation de tout ou partie de cet ensemble, en mettant en oeuvre, pour ce faire, au moins une application appartenant au groupe d'applications constitué des applications multidimensionnelles et des applications non linéaires. Les paramètres ai et b de l'application contractive globale permettent la mise en oeuvre, sur un deuxième ensemble de données comportant un nombre de données qui dépend du facteur d'échelle z, et qui est généralement différent du nombre de données du premier ensemble, d'une méthode d'approximations successives convergeant vers le point fixe d'une application contractive globale. On observe ici que, pour obtenir une image reconstruite en niveaux de gris, sans couleur, il suffit de n'effectuer un traitement primaire que sur les données provenant du traitement primaire de la luminance de l'image couleur, cette limitation étant par ailleurs désignée sous le nom de programme 632. Description de l'organigramme du programme de configuration On va maintenant décrire à l'appui de la figure 18, l'organigramme du programme de configuration mis en oeuvre dans le dispositif 800 des figures 9 et 9A. Le programme de configuration porte la référence 831 aux figures 9A et 18. 72 2768000 Le dispositif 800 illustré en figure 9A possède quatre modes de fonctionnement qui seront détaillés ci-après. Le mode de fonctionnement de l'appareil est tout d'abord sélectionné (étape 832). La sélection du mode se fait en rentrant dans le registre MOD 822, une valeur égale à 0, 1 ou 2 et dans le registre (CHTY) une valeur égale à 0 ou 1. Cet enregistrement peut se faire par tout moyen à la portée de l'homme du métier. En particulier, il pourrait être fait au moyen d'un commutateur agencé sur le boîtier de l'appareil 800 à quatre positions correspondantes chacune au mode de fonctionnement souhaité. Ce commutateur permettrait d'envoyer les signaux appropriés à la mémoire RAM 810, de manière à charger les valeurs indiquées dans les registres MOD ou (CHTY). Cette initialisation pourra également être faite dans des conditions similaires au moyen d'un clavier, non représenté sur la figure 9A. A l'étape 833, il est procédé à un premier test sur le registre MOD aux fins de déterminer si son contenu est ou non égal à zéro. Si le test 833 est positif, cela signifie que le mode de fonctionnement choisi est le premier de ceux mentionnés ci-dessus et le programme 531 est mis en oeuvre à partir de données alimentées depuis la source de données 810, les données compressées étant délivrées en sortie 881 aux moyens utilisateurs de données compressées 860 (figure 9). Si le test 833 est négatif, il est procédé, à l'étape 834, à un test aux fins de déterminer si le contenu du registre MOD est ou non égal à 1. Si le test 834 est positif, il est alors procédé à un test 840 sur le contenu du registre (CHTY) aux fins de déterminer s'il est ou non égal à 1. Si le test 840 est négatif, cela signifie que le dispositif des figures 9 et 9A est dans le second mode de fonctionnement, c'est-à-dire dans celui o il est utilisé pour restituer les données d'origine d'une image couleur à partir de paramètres (données compressées) et d'informations de partition, fournies en entrée 881, à partir d'une source 861 (figure 9). Les données décompressées délivrées en sortie 892 du dispositif 800 sont destinées à des moyens utilisateurs de données décompressées 820. 73 2768000 Si le test 840 est positif, cela signifie que le dispositif 800 est dans le troisième mode de fonctionnement, c'est-à-dire celui o il est utilisé pour réaliser un traitement secondaire de données compressées et délivrer des données d'un autre type que celui des données originales, en l'espèce des données relatives à une image à niveaux de gris correspondant à une image couleur originelle. Dans ce cas, le programme 632 est mis en oeuvre à partir de paramètres et informations de partition délivrés par une source de données compressées 861. Les données décompressées sont délivrées en sortie 892 et alimentées vers des moyens utilisateurs 820. Si le test 834 est négatif, cela signifie que le contenu du registre MOD est égal à 2. Le dispositif 800, qui est alors dans son quatrième mode de fonctionnement, est utilisé pour transformer une image couleur en image à niveaux de gris. Il s'agit ici d'un exemple de traitement complexe au sens de la présente invention, comportant une phase de traitement primaire et une phase de traitement secondaire. Ainsi, dans le mode de réalisation décrit ici, conformément à cet aspect de l'invention, les programmes de traitement primaire et de traitement secondaire sont mis en oeuvre séquentiellement. Le programme 531 permet, à partir de données délivrées par une source de données non compressées 810 sur l'entrée 891 du dispositif 800, de compresser ces données, pour obtenir des paramètres a,, b, A relatifs à chacun des sous-ensembles élémentaires Ki de l'image d'origine. Ces paramètres et informations de partition sont, conformément à ce qui a été décrit supra à l'appui de la figure 10, tous présents dans le registre (REG 1) 560 à la fin du programme 531. Le programme principal de la figure 18 commande alors un branchement direct à l'issue de l'étape 404 du programme 631 décrit supra. Les données transformées sont alors présentes sur le registre tampon (OBFR) 893 du dispositif 800 et transférées vers les moyens 820 utilisateurs de données décompressées. Ces données sont celles relatives à une image à niveaux de gris correspondant à l'image couleur dont les données ont été transférées dans le dispositif 800 à partir de la source 810. 74 2768000 On notera que le sous-programme comportant l'ensemble des étapes 404, 452, 406, 450, 405 et 402 du programme 632 constitue ici un mode particulier de mise en oeuvre d'un procédé de traitement secondaire au sens de l'invention. C'est ce sous-programme particulier qui est ici mis en oeuvre à la suite du programme 631 pour constituer un exemple d'un traitement "complexe" au sens de la présente invention. 3. Description d'une huitième variante, préférée. mettant en oeuvre des sous-ensembles de travail présentant une taille différente de celle du sous-ensemble élémentaire correspondant Lorsque les sous-ensembles de travail possèdent la même dimension que les sous-ensembles élémentaires auxquels ils sont associés, et que l'application contractive est linéaire sur chaque sous-ensemble de travail, l'image reconstruite ne peut avoir dans le sous-ensemble élémentaire considéré une complexité plus grande que celles qu'elle a dans chaque sous- ensemble de travail. En outre, la convergence de la méthode d'approximations successives peut être relativement lente. Pour ces deux raisons, et au moins dans le cas de la mise en oeuvre d'applications contractives multilinéaires, il est préférable d'utiliser des sous-ensembles de travail possédant des dimensions supérieures à celles des sous-ensembles élémentaires. Aussi, on va maintenant décrire à l'appui des figures 3A, 10, 11, 12A, 13 à 16 et 17A, une huitième variante préférée de réalisation du procédé et dispositif décrit supra, dans laquelle au moins un sous-ensemble de travail présente une taille différente de celle du sous-ensemble élémentaire correspondant. Dans le mode de réalisation particulier de cette huitième variante, quatre sous-ensembles de travail sont associés à chaque sous- 2768000 ensemble élémentaire, ces quatre sous-ensembles de travail présentant des dimensions supérieures à celles du sous-ensemble élémentaire correspondant. L'image à traiter est ici une image de 512 x 512 pixels partitionnée initialement en sous-ensembles carrés de 32 x 32 pixels, conformément à ce qui a été décrit supra à l'appui de la figure 1. On va maintenant décrire la division initiale de l'image en sous- ensembles de travail, sachant que chaque partition complémentaire d'un sous- ensemble élémentaire donne lieu à la définition de sous-ensembles de travail de dimensions proportionnelles à celle de ce sous-ensemble élémentaire. Les sous-ensembles de travail présentent ici une taille double de celle des sous- ensembles élémentaires, de telle sorte que l'image de 512 x 512 pixels est divisée en sous-ensembles carrés de 64 x 64 pixels. Toutefois, de manière à ce qu'à un sous-ensemble élémentaire donné correspondent quatre sous- ensembles de travail (voir figure 3A), le décalage utilisé pour la division de I'image est de 32 pixels, la division de l'image résultant alors en un recouvrement par ardoises (en anglais "tiling"). En figure 3A le sous-ensemble élémentaire Ki ayant pour coordonnées (xi, y) est illustré en traits gras, tandis que les sous-ensembles de travail correspondants sont illustrés en traits pointillés, les autres sous- ensembles étant ébauchés en traits fins. On observe que, dans ce mode de réalisation, à chacun des sous-ensembles Ki sont liés quatre sousensembles de travail Li (numérotés Li,..., L4) décalés de 64 pixels dans les deux directions et disposés symétriquement par rapport au sousensemble Ki considéré. Il s'agit en réalité des quatre sous-ensembles issus de la division qui recouvrent le sous-ensemble élémentaire considéré (issu de la partition initiale). Les expressions ci-dessous montrent les coordonnées d'un sous-ensemble Ki et des sous-ensembles de travail L,.... L4, pour toutes valeurs du facteur de division A: Tableau 2 76 2768000 Ki: [xi, xi - 1 +(32/2")] x [yi, yi-1 +(32/2A)] L1 [xi - (48/2A),xi -1 + (16/2]x [yi + (16/2A), yi -1 + (80/2)] L2 [xi + (16/2'A), xi -1 + (80/2A]x [yi + (16/2A), yi -1 + (80/2A)] L3: [xi - (48/2A), xi -1 + (16/2A] x [yi (48/2A),y Y-1 + (16/2A)] L4:[xi + (16/2A), x -1 + (80/2] x [yi (48/2A),yi -1 + (16/2A)] On rappelle ici que les points des sousensembles de travail définis ci-dessus qui n'appartiennent pas à l'image, c'est-à-dire ceux dont l'une au moins des coordonnées est négative, se voient fictivement associer une valeur moyenne, par exemple 127, pour chaque composante. Les dispositifs de compression et de décompression utilisés pour mettre en oeuvre cette huitième variante de réalisation sont semblables à ceux décrits à l'appui des figures 4 et 6. Toutefois, les programmes 531 et 631 sont modifiés ainsi qu'il va être expliqué ci-après. S'agissant tout d'abord du programme de compression 531 décrit supra à l'appui de la figure 10, sa structure est conservée. Seule change l'opération 250. Cette opération modifiée 250A va être décrite ci-après à l'appui de la figure 12A. A l'étape 250A, il est procédé à la recherche des quatre sous- ensembles de travail voisins L1, L2, L3, L4 (voir figure 3A) à partir de l'adresse enregistrée dans le registre CSI. A cet effet, la règle rappelée supra est appliquée. L'étape 250A a pour but de déterminer les valeurs fixy) de la composante considérée, associée à chacun des pixels des sous-ensembles de travail LI, L2, L3, L4 liés géométriquement et de manière prédéterminée à l'ensemble élémentaire considéré Ki. L'ensemble des valeurs flx,y) liées aux pixels du sous-ensemble LI (respectivement L2, L3 et L4) sera noté ci-après f(LI) (respectivement j(L2),j(L3) etj(L4)) conformément aux notations utilisées supra. 77 2768000 L'élément essentiel qui différencie l'étape 250A (figure 12A) de l'étape 250 (figure 12), réside dans le fait que l'ensemble de valeurs représentées parfL,), i = 1,..., 4 concerne des sous-ensembles de travail Li, i = 1,..., 4 qui ont une taille différente de celle du sous-ensemble élémentaire K1. Afin de pouvoir exécuter les opérations de comparaison avec le sousensemble Ki, il y a lieu de ramener les ensembles J(Li) à la même taille. Plusieurs méthodes sont à la disposition de l'homme du métier. Dans ce mode de réalisation o la taille des sous-ensembles de travail est de 64 x 64 pixels et celle des sous-ensembles élémentaires de 32 x 32 pixels, on retient une valeur moyenne par carré de 4 pixels. L'ensemble de ces valeurs moyennes sera noté pour un ensemble de travail Li considéré: {fLL). L'organigramme détaillé de cette étape est représenté dans la figure 12A. En référence à la figure 12A à l'étape 317, on copie dans l'unité arithmétique 550 les coordonnées (xi,y) du pixel inférieur gauche du sous- ensemble élémentaire Ki considéré ainsi que le facteur de division A, et on les stocke dans le registre (REG 2) 570. Ensuite, I'unité arithmétique 550 détermine les coordonnées de chaque pixel de chaque sous-ensemble de travail selon le tableau 2 comme indiqué à l'étape 318. A l'étape 319, I'unité arithmétique 550 va chercher, pour la composante en cours de traitement, la valeur correspondant à chacun des (64/2A)2 pixels de LI (respectivement L2, L3 et L4) et stocke l'ensemble des (64/2')2 valeurs dans le registrej(L) 516 (respectivementj(L2) 517, j(L3) 518 et J(L4) 519) du cache 514. A l'étape 320, l'unité arithmétique 550 traite chaque carré de 2 x 2 valeurs dej(LI) et y substitue une valeur correspondante de f(L2) au registre 516. Dans ce mode de réalisation la valeur de f(L,) correspondante sera obtenue en calculant la moyenne des valeurs dudit carré de 2 x 2 valeurs de J(L,). Les autres ensemblesj(L2).... j(L4) sont ensuite traités de la même façon. 78 2768000 A l'étape 321, les valeurs de L7).... 4L4) sont stockées dans la partie 514 (CACHE) de la mémoire vive 510, dans les registresf(L) 516 àf(L4) 519. Le programme se branche ensuite à l'étape 208 (figure 13) au cours de laquelle, comme indiqué supra, les paramètres ai (en l'espèce a1, a2, a3, a4) et b sont calculés en mettant en oeuvre la méthode des moindres carrés avec les contraintes décrites supra (voir équations 12 et 13). Toutefois, dans ce mode de réalisation, la valeur de P3 sera inférieure à In. On observe que cette dernière valeur est plus élevée que celle utilisée dans le premier mode de réalisation. En, effet, dans la mesure o, au cours de l'étape 320, on a placé dans les registres 516 à 519 des sous- ensembles de travail de substitution dont la valeur de chaque pixel est calculée comme la moyenne des valeurs de quatre pixels de l'image initiale, on a déjà effectué une application contractive. Les contraintes appliquée à la contractivité de l'application globale qui succède à cette substitution peuvent, en conséquence, être réduites. Le fonctionnement du programme de compression est, pour le reste, identique au fonctionnement du programme de compression 531 décrit supra à l'appui de la figure 10. La seule différence étant que, dans les registres 516 à 519, sont stockées les valeurs f(LJ),.... L4/2). Dans cette huitième variante de réalisation, le programme de décompression fonctionne de façon similaire au programme 631 décrit supra à l'appui des figures 16 et 17. Toutefois, l'opération 410 doit être modifiée comme exposé ci-après et sera référencée comme 410A, illustrée en figure 17A. Le détail de l'étape 41 OA est décrit à l'appui de la figure 17A. L'étape 41 OA comprend elle-même les étapes 459 à 465: Les étapes 459 et 460 sont identiques aux étapes 411 et 412 décrites supra (figure 17), mais elles prennent en compte, pour la définition des sous- 79 2768000 ensemble élémentaires et des sous-ensembles de travail le facteur multiplicatif dit "d'échelle" z qui multiplie chacune de leur dimension dans un ensemble de données qui possède lui-même des dimensions qui sont multipliées par ce facteur d'échelle. Le programme se branche ensuite aux étapes 461, 462 et 463 au cours desquelles on détermine les valeurs f(L,...,f(L4). Ensuite à l'étape 462 on détermine les valeursf(Ly),....(4L4). Pour ce faire, I'unité arithmétique 550 traite chaque carré de 4 valeurs de f(L/) et y substitue une valeur correspondante de 1(L2) au registre 516. Dans ce mode de réalisation la valeur de f(L1) correspondante est obtenue par calcul de la moyenne des valeurs dudit carré ou tout autre filtrage passe-bas bien connu de l'homme du métier. Les autres ensembles f(L2)..., f(L4) sont ensuite traités de la même façon. A l'étape de 463 on calcule pour chaque pixel (x,y) de Ki la valeur 1 5 ai [f (L (x,y)+ b i=l à l'aide des coefficients de 520 et les donnéesf(L)2.1(L4) de 516 à 519, (étape 462) et on mémorise (étape 463) cette valeur au pixel correspondant dans le registre (RE) 621 de la RAM 610. Finalement, l'étape 464 est identique à l'étape 414 (figure 17). Le fonctionnement du programme de décompression modifié comme exposé cidessus à l'appui de la figure 17A est pour le reste identique au fonctionnement du programme de décompression 631 décrit supra à l'appui de la figure 16. 2768000 Dans cette huitième variante de réalisation, il peut également être réalisé un traitement complexe permettant de transformer des données, comme décrit supra à l'appui de la figure 18, en mettant en oeuvre les programmes de compression 531 et de décompression 631 modifiés tel qu'exposé ci-dessus à l'appui des figures 10, 11, 12A, 13, 14 et 17A. 4. Description de la troisième variante de réalisation mettant en oeuvre une application contractive globale composée d'applications non linéaires Dans cette troisième variante de réalisation des procédés et dispositifs conformes à l'invention, il est mis en oeuvre une application contractive globale composée d'applications non linéaires. Dans cette troisième variante de réalisation, qui concerne également la compression et la décompression d'images, I'image à traiter est également une image 512 x 512 pixels. Cette image est initialement partitionnée en sous-ensembles élémentaires et divisée en sous-ensembles de travail de la même façon que ce qui est décrit supra à l'appui des figures 1 à 3. On va maintenant définir l'application globale utilisée dans un mode particulier de cette troisième variante de réalisation. Conformément à cet aspect de l'invention, chaque "morceau" de l'application contractive globale, est une application élémentaire Lipschitzienne non linéaire du type: n T(f) Ki: (x,y) E Ki - [T(f)] (x, y) = - a gj[f] Lj (x,y)+b j=l (10 ter) o: TOl Ki la restriction de T() au sous-ensemble élémentaire Ki 81 2768000 gl [/],..., g,[/] sont des transformations non linéaires de f(gi e F (E, E)) tels que des puissances fractionnaires ou entières de f (par exemple g[f] = i/) n> 1 le nombre de sous-ensembles de travail (n = 4 dans ce mode de réalisation) a,... a, les coefficients multiplicatifs b le facteur de translation L/.. L, les sous- ensembles de travail, à position prédéterminée par rapport à Ki et lié à ce sous-ensemble. On voit que l'équation (10 ter) ci-dessus est de nature non linéaire essentiellement à cause des transformations non linéaires gl,...g, les coefficients aj, j = 1,..., n et b étant respectivement les coefficients multiplicatifs et le facteur de translation. Les coefficients(a1,...,a, b), sont ici les "paramètres" au sens de l'invention de l'application élémentaire relative au sous-ensemble Ki. L'ensemble des coefficients (aI.... an, b)Ki relatifs aux m sous-ensembles élémentaires (Kl,..., Km) constitue ici aussi l"'ensemble des paramètres" de l'application contractive globale au sens de l'invention. On rappelle que, dans ce mode de réalisation, n = 4, ce qui signifie que seulement quatre sous-ensembles de travail Lij = 1,..., n tels que ceux définis à l'appui de la figure 3, sont liés à chaque sous-ensemble élémentaire K,. Ainsi, à chaque couple de valeurs (x,y) d'un sous-ensemble élémentaire Ki déterminé, on associe une valeur calculée à partir de l'équation non linéaire (10 ter). Ceci est fait pour l'ensemble des m sous-ensembles élémentaires (K,,..., K.) résultants aussi bien de la partition initiale que de partition complémentaires, comme décrit supra. 82 2768000 Pour résoudre le problème d'optimisation simplifié (voir supra, notamment équation (7)) qui permet de déterminer les coefficients de l'application non linéaire aj,j = 1,..., n et b pour chacun des sous- ensembles élémentaires de travail Ki,, il faut, d'une manière générale, pour chaque sous- ensemble élémentaire Ki, minimiser la distance entre la restriction au sous- ensemble élémentaire KE et sa transformée par l'application contractive globale. En d'autres termes, il faut minimiser les distances: d (f | Ki, T(f)IK,), i='....M (11) A cet égard, on applique la théorie exposée à l'appui des équations (12) à (29) dans la partie relative à la théorie générale. Par ailleurs, on observera que, d'une manière générale dans cette troisième variante de réalisation, le procédé de représentation secondaire des paramètres issus du traitement primaire, de données initiales, met en oeuvre les principes généraux décrits supra à l'appui des équations (30) à (32). Les dispositifs de compression et de décompression utilisés pour mettre en oeuvre cette troisième variante de réalisation sont semblables à ceux décrits supra à l'appui des figures 4 et 6. Toutefois, les programmes 531 et 631 sont modifiés ainsi qu'il va être expliqué ci-après. S'agissant tout d'abord du programme de compression 531 décrit supra à l'appui de la figure 10, sa structure est conservée. Seule change l'étape 251 relative aux calculs des coefficients. Cette troisième variante, qui concerne notamment l'étape 251 (référencée comme 251B) va maintenant être décrite notamment à l'appui de la figure 12B. L'étape 251B comporte les étapes 322 et 323 respectivement identiques aux étapes 217 et 218 décrites supra à l'appui de la figure 12. A l'étape 324, on lit dans le registre (IM) 511, les valeursf(L),...,f(L4). 83 2768000 A l'étape 325, on détermine les valeurs g1 [f (L,)J. ,g4 [f (L4)jen calculant par application de la formule..DTD: gi[f(L,)M = f(Li). Enfin, à l'étape 326, on mémorise dans les registres 516 à 519 de la partie 514 (CACHE) de la mémoire vive 510, les valeurs g1 [f(Li)}...,g4 [f(L4) - Le fonctionnement du programme de compression avec l'opération 250 modifiée ainsi qu'il vient d'être décrit est, pour le reste, identique au fonctionnement du programme 531 décrit supra à l'appui de la figure 10. De même, dans cette troisième variante de réalisation, le programme de décompression fonctionne de façon similaire au programme 631 décrit supra à l'appui des figures 16 et 17. Toutefois l'opération 410 doit être modifiée comme exposé ci-après. Cette nouvelle opération est référencée 410B et est illustrée dans la figure 17B. Le détail de l'étape 410B sera maintenant décrit à l'appui de la figure 17B. L'étape 410B comprend elle-même les étapes 471 à 475: A l'étape 471, on retire les coordonnées (xiyi) du sous-ensemble élémentaire Ki considéré et on les copie dans le registre CSI 515. Les coefficients (aI, ., a4, b, relatifs aux sous-ensembles Ki considérés sont copiés du registre (REG 1) vers le registre 520 de la partie 614 (CACHE) de la.. DTD: mémoire vive 610. L'étape 472 a pour but de déterminer les sous-ensembles de travail liés géométriquement et de manière prédéterminée à l'ensemble élémentaire Ki considéré. Cette étape comporte les même opérations qu'à l'étape 250 décrite supra à l'appui de la figure 12. Les valeurs g1 [fi] |, g2 [f] L2, g3 [f] 3 et g4 [fi] |4 des pixels relatifs respectivement à L1, L2, L3 et L4 sont respectivement copiées dans les registres 516, 517, 518 et 519 du (CACHE) 614. 84 2768000 Le programme se branche ensuite aux étapes 473 et 474 au cours desquelles on calcule pour chaque pixel (x,y) de Ki la valeur Z ai. [gi[f] L,](xY)+b i=i à l'aide des coefficients conservés dans le registre 520 et les données f(L)..., f(L4) conservés dans le registre de 516 à 519, (étape 474) et on mémorise cette valeur au pixel correspondant dans le registre (RE) 621 de la mémoire vive RAM 610. Dans cette troisième variante de réalisation, il peut également être réalisé un traitement complexe permettant de transformer des données comme décrit supra à l'appui de la figure 18, en mettant en oeuvre des programmes de compression 531 et de décompression 631 modifiés tel qu'exposé ci-dessus à l'appui des figures 12B et 17B. 5. Description de la première variante de réalisation mettant en oeuvre un critère de qualité mesuré à l'aide de l'application contractive globale Selon la première variante, le critère de qualité utilisé pour déterminer la nécessité d'effectuer une partition complémentaire n'est pas, comme présenté en regard de la figure 19, la comparaison, d'une part, d'une mesure statistique effectuée sur les niveaux de la composante considérée dans un sous- ensemble élémentaire avec, d'autre part, un seuil, mais la comparaison d'une mesure de différence entre, d'une part, I'image obtenue après lui avoir appliqué une application contractive globale, avec cette image initiale. Cette première variante est illustrée en figure 20, dans laquelle les tests et opérations communs avec la figure 19 portent les mêmes 2768000 références. Dans cette première variante, à la suite de l'opération 206, l'opération 250 est réalisée, en prenant en compte la valeur actualisée du facteur de division A. L'opération 250 détermine, on le rappelle, les sous- ensembles de travail associés au sous-ensemble élémentaire considéré. Ensuite, l'opération 260 est identique à l'opération 251 (figure 19) à l'exception de la mémorisation dans le registre de mémoire 560 (REG 1). Elle fournit donc des paramètres de l'application contractive globale, dans le sous- ensemble élémentaire considéré. Le test 255 succède à l'opération 260 et détermine, comme exposé supra, si le sous-ensemble élémentaire possède des dimensions minimales ou non. Lorsque le résultat du test 255 est positif, l'opération 263 consiste à mémoriser dans le registre 560 (REG 1) les cinq paramètres déterminés au cours de l'opération 260, sans leur associer d'information de partition puisqu'aucune nouvelle partition complémentaire ne peut avoir lieu. Ensuite, le test 205 est réitéré. Lorsque le résultat du test 255 est négatif, l'opération consiste à déterminer un critère dit "de qualité" applicable au sous-ensemble élémentaire considéré. Préférentiellement, la définition du critère de qualité consiste en la définition d'un seuil en deçà duquel le critère de qualité est considéré comme respecté. Préférentiellement aussi, la valeur du seuil prend en compte les dimensions du sous-ensemble élémentaire considéré. Dans le mode de réalisation décrit et représenté ce seuil est la fonction correspondant au tableau suivant: dimensions du sous-ensemble en pixels seuil 2x2 800 4x4 640 8x8 400 16 x 16 240 32 x 32 80 86 2768000 On observe ici qu'il est préférentiel d'utiliser un tableau correspondant à une fonction décroissante des dimensions du sous- ensemble élémentaire. Le test 254 détermine ensuite si le critère de qualité est respecté ou non. Dans le mode de réalisation décrit et représenté, ce critère de qualité est respecté lorsque la mesure de l'écart quadratique moyen entre la composante considérée et son image par l'application contractive globale, mesure restreinte au sous- ensemble élémentaire considéré, est inférieur à la valeur du seuil qui correspond, dans le tableau ci-dessus aux dimensions du sous-ensemble élémentaire considéré. Lorsque le résultat du test 254 est négatif, l'opération 256 consiste à effectuer une partition complémentaire du sous-ensemble élémentaire considéré. Dans le mode de réalisation décrit et représenté, cette partition complémentaire consiste à diviser chaque sous-ensemble élémentaire en quatre sous ensembles élémentaires carrés égaux. A cet effet, au cours de l'opération 256, il est ajouté en tête de la liste liste_sous_image, dans le registre (REG 2) 570, les coordonnées des quatre points qui définissent les coins inférieurs gauches des quatre sous-ensembles élémentaires résultant de la partition complémentaire. A ces coordonnées est associée un facteur de division A qui est égal au facteur de division du sous-ensemble élémentaire que l'on partitionne, incrémenté de la valeur 1. Enfin, une information de partition valant "1" est mémorisée dans le registre 560 (REG 1) puisqu'une partition complémentaire a été effectuée. Lorsque le résultat du test 254 est positif, au cours de l'opération 261, les cinq paramètres déterminés au cours de l'opération 260 sont mémorisés dans le registre 560 (REG 1) avec une information de partition valant "0" puisqu'aucune partition complémentaire n'a eu lieu. Dans la première variante exposée en figure 20, il est intéressant de mesurer la moyenne des valeurs de l'écart quadratique moyen de tous les sous-ensembles élémentaires traités pour lesquels cet écart est mesuré au cours de l'opération 254, pour déterminer l'utilité d'un traitement 87 2768000 complémentaire au cours du traitement secondaire: lorsque cette moyenne est supérieure à une valeur critique globale prédéterminée, il est utile de prévoir un traitement complémentaire (opérations 416 et 417, figure 16). On observe ici que les organigrammes présentés en regard des figures 19 et 20 se combinent particulièrement bien, en faisant se succéder l'opération 262 de la figure 20 à la fin des opérations 258 de la figure 19. Selon une dixième variante non représentée, les partitions complémentaires sont effectuées en effectuant un découpage non homothétique des sous-ensembles élémentaires, comme par exemple un découpage en triangles, en deux rectangles égaux, successivement en formant deux rectangles côte-à-côte horizontalement ou verticalement,... Selon une onzième variante, le facteur d'échelle n'est pas uniforme. Il peut ainsi, par exemple, avoir une valeur horizontale, qui sert de coefficient multiplicatif aux dimensions horizontales des sous-ensembles élémentaires et une valeur verticale qui sert de coefficient multiplicatif aux dimensions verticales des sous-ensembles élémentaires. Le facteur d'échelle peut aussi avoir une valeur qui varie en fonction de la distance au centre de l'image... Selon une douzième variante, préférentielle, le facteur d'échelle est différent pour les différentes composantes de l'image traitée. Par exemple, le facteur d'échelle est le double pour chaque composante de chrominance de ce qu'elle est pour la composante de luminance. Dans ce cas, il est effectué un filtrage préliminaire au traitement primaire (c'est-à-dire ici à la compression), filtrage qui divise la résolution des composantes de chrominance d'un facteur de deux dans chaque direction, en donnant à chaque composante de chaque pixel de l'image de plus faible résolution la valeur moyenne de la composante correspondante de quatre pixels de l'image initiale. Ce facteur, est transmis dans l'en-tête sous la forme du ratio susmentionné. Conjointement, le nombre de données initiales utilisées pour la reconstruction de la composante de luminance est, dans chaque direction, le double de ce qu'il est pour chacune des composantes de chrominance. En 88 2768000 effet, il est courant que la complexité des composantes de chrominance soit moindre que celle de la composante de luminance, d'une part et que cette complexité soit moins perçue par l'oeil humain. En combinaison avec cette douzième variante, le dispositif de traitement primaire est adapté à effectuer, avant les opérations illustrées en figure 10, un filtrage des composantes de chrominance afin de diviser par deux leur résolution dans chaque direction de l'image. Selon une treizième variante, chaque fichier résultant du traitement primaire ne contient que des données relatives à une seule image, auquel cas le tableau d'index 909 est inutile. Selon une quatorzième variante, I'image n'est pas découpée en bandes et l'information de hauteur de bande est inutilisée. Selon une quinzième variante non représentée, les bandes successives de l'image à compresser possèdent une intersection non vide. Ces bandes se recouvrent donc partiellement, ce qui évite des effet de frontière qui peuvent nuire à la qualité de l'image restituée. Pour la mise en oeuvre de cette variante, I'homme du métier modifie l'organigramme de la figure 10, et notamment: - I'opération 200D o la hauteur de bande est réduite de 32 lignes, par rapport à ce qui est décrit plus haut, - I'opération 202 au cours de laquelle, à partir de la deuxième itération de cette opération 202, le programme charge non seulement une bande dont la hauteur est la hauteur déterminée au cours de l'opération 200D, et qui ne possède pas de point commun avec la bande précédente, mais aussi les 32 dernières lignes de la bande précédemment traitée, - I'opération 209A, au cours de laquelle on détermine qu'un traitement complémentaire d'assemblage des bandes est nécessaire et on insère une information requérant ce traitement complémentaire, dans l'en-tête relatif à l'image traitée. La variante du procédé de décompression qui correspond à la quinzième variante exposée ici, possède, une étape de traitement 89 2768000 complémentaire 417 qui comporte, elle-même une étape d'assemblage des bandes d'images résultant de la décompression des paramètres relatifs à chaque bande. Au cours de cette étape d'assemblage, on détermine des intersections des bandes d'image décompressées et, dans ces intersections, on détermine une combinaison de ces bandes pour constituer une image décompressée complète. Préférentiellement, pour une intersection des bandes d'image, au cours de l'étape de traitement complémentaire, on calcule la moyenne des valeurs des pixels des points communs à plusieurs bandes et on attribue au pixel correspondant de l'image finale, ladite valeur moyenne. Bien entendu la présente invention ne se limite nullement aux modes de réalisation choisis et représentés mais englobe, bien au contraire, toutes variantes à la portée de l'homme du métier. 2768000 REVENDICATIONS 1. Procédé de traitement primaire d'un premier ensemble de données (IM, f) primaires représentatives de grandeurs physiques, caractérisé en ce qu'il comporte: - une étape dite " de division d'ensemble " (200A à 202) au cours de laquelle on divise le premier ensemble de données en sousensembles de données dits " premiers ", et pour chaque premier sousensemble de données: - une étape de "construction" (204 à 207) d'une application contractive globale dite "de premier type", pour ledit premier sous-ensemble de données, dont le point fixe constitue une approximation de tout ou partie de ce sous-ensemble, en mettant en oeuvre, pour ce faire, au moins une application appartenant au groupe d'applications constitué des applications multidimensionnelles et des applications non linéaires et en déterminant des paramètres (ai, b) de l'application contractive globale de façon à permettre la mise en oeuvre, sur un deuxième sous-ensemble de données, d'une méthode d'approximations successives (407 à 410) convergeant vers le point fixe d'une application contractive globale dite "de second type"; l'ensemble des paramètres (ai, b) ainsi déterminés constituant une représentation primaire dudit premier ensemble de données. 2. Procédé de traitement primaire selon la revendication 1, caractérisé en ce que ladite étape de division d'ensemble (200A à 202) fournit des premiers sous-ensembles qui ne possèdent, entre eux, aucun point commun. 3. Procédé de traitement primaire selon la revendication 1, caractérisé en ce que ladite étape de division d'ensemble (200A à 202) fournit des premiers sous-ensembles qui possèdent, entre eux, des points communs. 91 2768000 4. Procédé de traitement primaire selon l'une quelconque des revendications 1 à 3, caractérisé en ce que, pour chaque premier sous- ensemble de données: - il comporte une étape de "partition initiale" (204) au cours de laquelle, on partitionne ledit premier ensemble de données en sous-ensembles dits "élémentaires initiaux" (Ki), - au cours de l'étape de construction (205 à 207), pour chacun des sous- ensembles élémentaires (Ki), on détermine les paramètres (ai, b) de l'application élémentaire qui constitue une restriction de l'application contractive globale audit sous-ensemble élémentaire. - on permet à la méthode d'approximations successives (407 à 410) effectuée sur le deuxième ensemble de données, de prendre en compte des sous- ensembles élémentaires correspondant chacun à un sous-ensemble élémentaire du premier ensemble de données et comportant un nombre de données différent de celui du sous-ensemble élémentaire du premier ensemble de données correspondant. 5. Procédé de traitement primaire selon la revendication 4, caractérisé en ce que: - au cours de l'étape de construction (205 à 207), pour chacun des sous- ensembles élémentaires (Ki) résultant de la partition initiale, on considère n sous-ensembles de travail (L,), n étant non nul, et on construit une application élémentaire des n sous-ensembles de travail dans le sous-ensemble élémentaire considéré en déterminant les paramètres (ai, b) de l'application élémentaire, et - on permet à la méthode d'approximations successives (407 à 410) effectuée sur le deuxième ensemble de données, de prendre en compte des sous- ensembles de travail correspondant chacun à un sous-ensemble de travail du premier ensemble de données et comportant un nombre de données différent de celui du sous-ensemble de travail du premier ensemble de données correspondant. 92 2768000 6. Procédé de traitement primaire selon la revendication 5, caractérisé en ce qu'au moins un sous-ensemble de travail (L,) parmi lesdits n sous-ensembles de travail (L,) présente une taille différente de celle du sous- ensemble élémentaire correspondant. 7. Procédé de traitement primaire selon l'une quelconque des revendications 5 ou 6, caractérisé en ce que lesdits n sous-ensembles de travail (L,) sont liés géométriquement de façon prédéterminée au sous- ensemble élémentaire considéré (Ki). 8. Procédé de traitement primaire selon l'une quelconque des revendications 1 à 7, caractérisé en ce que, ledit premier ensemble de données constituant une image couleur à plusieurs composantes (Y, Cr, Cb), il comporte une opération de filtrage, au cours de laquelle on filtre au moins l'une desdites composantes et on modifie le nombre de données de l'ensemble de données liés à au moins une composante. 9. Procédé de traitement primaire selon la revendication 8, caractérisé en ce que, au cours de l'opération de filtrage, on réduit le nombre de données des ensembles de données liés aux composantes de chrominance, par rapport au nombre de données de l'ensemble de données lié à la composante de luminance. 10. Procédé de traitement primaire selon l'une quelconque des revendications 1 à 9, procédé prenant en compte une dimension minimale, caractérisé en ce qu'il comporte: - une étape de "partition initiale" (204) au cours de laquelle, on partitionne ledit ensemble de données en sous-ensembles dits "élémentaires initiaux" (Ki), - pour chaque sousensemble élémentaire qui ne possède pas ladite dimension minimale, au moins une itération d'une séquence d'étapes comportant: - une étape d'estimation d'opportunité de division (252 à 254, 262) au cours de laquelle on estime une opportunité de division dudit sous-ensemble élémentaire, et - lorsque l'estimation d'opportunité ne répond pas à des critères prédéterminés dits "de qualité", une étape de "partition 93 2768000 complémentaire" (256) dudit sous-ensemble en sous ensembles élémentaires dits "intermédiaires" (Ki), - une étape de "construction" (205 à 207) dans laquelle, pour chacun des sous- ensembles élémentaires qui ne sont pas partitionnés, on construit une application élémentaire dans le sous-ensemble élémentaire considéré en déterminant les paramètres (ai, b) de l'application élémentaire de façon à constituer la restriction de l'application contractive globale dans le sous- ensemble élémentaire considéré, l'ensemble des paramètres (ai, b) ainsi déterminés, ainsi que, lorsqu'au moins une étape de partition complémentaire a eu lieu, une information dite "de partition", représentative de chaque dite partition complémentaire, constituant conjointement une représentation primaire dudit ensemble de données. 11. Procédé de traitement primaire selon l'une quelconque des revendications I à 10, procédé prenant en compte une dimension minimale, caractérisé en ce qu'il comporte: - une étape de "partition initiale" (204) au cours de laquelle, on partitionne ledit ensemble de données en sous-ensembles dits "élémentaires initiaux" (Ki), - pour chaque sousensemble élémentaire qui ne possède pas ladite dimension minimale, au moins une itération d'une séquence d'étapes comportant: - une étape d'estimation d'opportunité de division (252 à 254, 262) au cours de laquelle on estime une opportunité de division dudit sous- ensemble élémentaire, et - lorsque l'estimation d'opportunité ne répond pas à des critères prédéterminés dits "de qualité", une étape de "partition complémentaire" (256) dudit sous-ensemble en sous ensembles élémentaires dits "intermédiaires" (Ki), - une étape de "construction" (205 à 207) dans laquelle, pour chacun des sous- ensembles élémentaires (Ki) qu'il résulte de la partition initiale ou d'une partition complémentaire et qu'il ait lui-même été l'objet d'une partition complémentaire ou non, on construit une application élémentaire dans le sous-ensemble élémentaire considéré en déterminant les paramètres (ai, b) de l'application 94 2768000 élémentaire de façon à constituer la restriction de l'application contractive globale dans le sous-ensemble élémentaire considéré, l'ensemble des paramètres (ai, b) ainsi déterminés, ainsi que, lorsqu'au moins une étape de partition complémentaire a eu lieu, une information dite "de partition", représentative de chaque dite partition complémentaire, constituant conjointement une représentation primaire dudit ensemble de données. 12. Procédé de traitement d'au moins deux ensembles de données (IM,f) représentatives de grandeurs physiques, dits " premiers ensembles de données ", caractérisé en ce qu'il met en oeuvre, pour chaque premier ensemble de données, un procédé de traitement primaire selon l'une quelconque des revendications 1 à 11 et en ce qu'il comporte une étape d'organisation (209B) d'un fichier informatique (900) comportant des données représentatives de chaque ensemble de paramètres provenant d'une étape de construction appliquée à chaque premier ensemble de données, les paramètres (ai, b) ainsi organisés en fichier constituant ainsi une représentation primaire desdits premiers ensembles de données. 13. Procédé de traitement secondaire de plusieurs sous- ensembles de paramètres (ai, b), caractérisé en ce qu'il comporte: - pour chaque sous-ensemble de paramètres, une étape de "calcul itératif" (450) au cours de laquelle à partir dudit sous-ensemble de paramètres (ai, b), on met en oeuvre, sur un deuxième sous-ensemble de données, une méthode d'approximations successives (407 à 410) convergeant vers le point fixe d'une application contractive globale dite "de second type", en mettant en oeuvre, pour ce faire, au moins une application appartenant au groupe d'applications constitué des applications multidimensionnelles et des applications non linéaires, et - une étape d'assemblage (405, 417) au cours de laquelle on réunit les points fixes résultant du calcul itératif effectué sur chaque sous-ensemble de paramètres, pour constituer une représentation secondaire (RE) des ensembles de paramètres. 2768000 14. Procédé de traitement secondaire selon la revendication 13, caractérisé en ce que, au cours de l'étape d'assemblage (417), on détermine des intersections des points fixes qui correspondent aux sousensembles de paramètres et, dans ces intersections, on détermine une combinaison des points fixes pour constituer la représentation secondaire. 15. Procédé de traitement secondaire selon la revendication 14, caractérisé en ce que l'étape d'assemblage (417) consiste, pour une intersection de points fixes correspondant à plusieurs sous-ensembles de paramètres, en un calcul de la moyenne des points fixes résultant des traitements des sous-ensembles de paramètres considérés. 16. Procédé de traitement secondaire selon l'une quelconque des revendications 13 à 15, caractérisé en ce qu'il comporte une étape de "partition initiale" (404) au cours de laquelle, on partitionne ledit deuxième sous- ensemble de données en sous-ensembles dits "élémentaires". 17. Procédé de traitement secondaire selon l'une quelconque des revendications 13 à 16, caractérisé en ce qu'il prend en compte des sous- ensembles de travail (Li) correspondant chacun à un sous-ensemble élémentaire (Ki). 18. Procédé de traitement secondaire selon l'une quelconque des revendications 13 à 17, caractérisé en ce qu'au cours de ladite étape de "calcul itératif" (450), pour réaliser ledit calcul itératif: cl) on partitionne (404) I'ensemble d'initialisation en sous-ensembles élémentaires (Ki); c2) on considère, pour chacun des sous-ensembles élémentaires (Ki) ainsi déterminés, les paramètres (ai, b) des applications élémentaires correspondant aux sous-ensembles élémentaires (Ki) résultant de la partition (404) de l'ensemble des données initiales, et on met en oeuvre lesdites applications élémentaires sur les sous-ensembles élémentaires (Ki) de l'ensemble d'initialisation 96 2768000 c3) on réunit l'ensemble des données obtenues par les mises en oeuvre d'applications élémentaires, ceci constituant une représentation intermédiaire desdites données initiales, affectée d'une erreur; c4) on réitère les opérations cI-c3, en prenant comme ensemble d'initialisation, ladite représentation intermédiaire, de façon à s'approcher, du point fixe de ladite application contractive globale de second type; l'ensemble de données finalement obtenu constituant une représentation secondaire (RE) de l'ensemble de données ayant été l'objet d'un traitement primaire. 19. Procédé de traitement secondaire selon l'une quelconque des revendications 13 à 18 dans lequel lesdits paramètres (ai, b) sont une représentation primaire d'une image couleur à plusieurs composantes (Y, Cr, Cb) caractérisé en ce qu'après une étape de calcul itératif (450) sur l'une des composantes, on utilise comme initialisation de l'étape de calcul itératif (450) relatif à la composante suivante la représentation secondaire (RE) obtenue à la fin de l'étape de calcul itératif relative à l'une des composantes déjà traitées. 20. Procédé de traitement secondaire selon l'une quelconque des revendications 13 à 19 dans lequel le traitement primaire étant effectué avec des premiers ensembles de données possédant des dimensions différentes pour les différentes composantes (Y, Cr, Cb) d'une image couleur, au cours de l'étape de "calcul itératif' (450) du traitement secondaire, on met en oeuvre des deuxièmes ensembles de données possédant les mêmes dimensions pour les différentes composantes. 21. Procédé de traitement secondaire selon la revendication 20, caractérisé en ce que lesdits premiers ensembles de données mis en oeuvre au cours du traitement primaire possèdent, pour chaque composante de chrominance (Cr, Cb) des dimensions inférieures aux dimensions du premier ensemble de données utilisé pour la composante de luminance (Y). 22. Procédé de traitement secondaire selon l'une quelconque des revendications 13 à 21, caractérisé en ce qu'il comporte une étape de lecture dans un fichier (403), au cours de laquelle au moins une partie de l'ensemble 97 2768000 de paramètres est lue dans un fichier commun à plusieurs ensembles de paramètres. 23. Procédé de traitement secondaire selon l'une quelconque des revendications 13 à 22, caractérisé en ce qu'il comporte: - une étape de détermination (420) d'une dimension minimale de sousensembles élémentaires, - une étape de détermination (404) de sousensembles élémentaires (404) constituant une partition d'un deuxième ensemble de données, étape prenant en compte d'une part ladite dimension minimale et, d'autre part, la présence d'information de partition correspondant aux dits sous-ensembles, et - une étape de sélection (404), parmi l'ensemble des paramètres, de paramètres associés aux dits sousensembles élémentaires déterminés, l'étape de "calcul itératif' (450) étant mise en oeuvre à partir des paramètres sélectionnés et des sous-ensembles élémentaires déterminés. 24. Dispositif de traitement primaire d'un premier ensemble de données (IM,f) primaires représentatives de grandeurs physiques, caractérisé en ce qu'il comporte: - un moyen d'entrée des données primaires (591), - un moyen dit " de division d'ensemble " (510, 530, 550) adapté à diviser le premier ensemble de données en sous-ensembles de données dits " premiers ", et - un moyen dit " de construction " (510, 530, 550) adapté, pour chaque premier sous-ensemble de données à construire une application contractive globale dite "de premier type", pour ledit premier sous-ensemble de données, dont le point fixe constitue une approximation de tout ou partie de ce sous-ensemble, en mettant en oeuvre, pour ce faire, au moins une application appartenant au groupe d'applications constitué des applications multidimensionnelles et des applications non linéaires et en déterminant des paramètres (ai, b) de l'application contractive globale de façon à permettre la mise en oeuvre, sur un deuxième sous-ensemble de données, d'une méthode d'approximations successives convergeant 98 2768000 vers le point fixe d'une application contractive globale dite "de second type"; et - un moyen de sortie (581) de l'ensemble des paramètres (ai, b) ainsi déterminés, paramètres qui constituent une représentation primaire dudit premier ensemble de données. 25. Dispositif de traitement primaire selon la revendication 24, caractérisé en ce que ledit moyen de division d'ensemble est adapté à fournir des premiers sous-ensembles qui ne possèdent, entre eux, aucun point commun. 26. Dispositif de traitement primaire selon la revendication 24, caractérisé en ce que ledit moyen de division d'ensemble est adapté à fournir des premiers sous-ensembles qui possèdent, entre eux, des points communs. 27. Dispositif de traitement primaire selon l'une quelconque des revendications 24 à 26, caractérisé en ce qu'il comporte un moyen dit " de partition " (510, 530, 550) adapté, pour chaque premier sous-ensemble de données à partitionner ledit premier ensemble de données en sousensembles dits "élémentaires initiaux" (Ki), le moyen de construction étant adapté, pour chacun des sous-ensembles élémentaires (Ki), à déterminer les paramètres (ai, b) de l'application élémentaire qui constitue une restriction de l'application contractive globale audit sous-ensemble élémentaire. 28. Dispositif de traitement primaire selon la revendication 27, caractérisé en ce que le moyen de construction (510, 530, 550), est adapté, pour chacun des sous-ensembles élémentaires (Ki) résultant de la partition initiale, à considérer n sous-ensembles de travail (L,), n étant non nul, et à construire une application élémentaire des n sous- ensembles de travail dans le sous-ensemble élémentaire considéré en déterminant les paramètres (ai, b) de l'application élémentaire. 29. Dispositif de traitement primaire selon la revendication 28, caractérisé en ce que le moyen de construction (510, 530, 550) est adapté à ce que au moins un sous-ensemble de travail (Li) parmi lesdits n sous-ensembles 99 2768000 de travail (Li) présente une taille différente de celle du sous-ensemble élémentaire correspondant. 30. Dispositif de traitement primaire selon l'une quelconque des revendications 28 ou 29, caractérisé en ce que le moyen de construction (510, 530, 550) est adapté à ce que lesdits n sous-ensembles de travail (Li) soient liés géométriquement de façon prédéterminée au sous-ensemble élémentaire considéré. 31. Dispositif de traitement primaire selon l'une quelconque des revendications 24 à 30, caractérisé en ce que, ledit premier ensemble de données constituant une image couleur à plusieurs composantes (Y, Cr, Cb), il comporte un moyen de filtrage (510, 530, 550) adapté à filtrer au moins l'une desdites composantes et à modifier le nombre de données de l'ensemble de données liés à au moins une composante. 32. Dispositif de traitement primaire selon la revendication 31, caractérisé en ce que le moyen de filtrage (510, 530, 550) est adapté à réduire le nombre de données des ensembles de données liés aux composantes de chrominance, par rapport au nombre de données de l'ensemble de données lié à la composante de luminance. 33. Dispositif de traitement primaire selon l'une quelconque des revendications 24 à 32, caractérisé en ce qu'il comporte un moyen de partition (510, 530, 550) adapté à prendre en compte une dimension minimale, à partitionner ledit ensemble de données en sous-ensembles dits "élémentaires initiaux" (Ki), et, pour chaque sous-ensemble élémentaire qui ne possède pas ladite dimension minimale, à effectuer au moins une itération d'une séquence comportant: - une étape d'estimation d'opportunité de division (252 à 254 et 262) au cours de laquelle on estime une opportunité de division dudit sous-ensemble élémentaire, et lorsque l'estimation d'opportunité ne répond pas à des critères prédéterminés dits "de qualité", une étape de "partition 2768000 complémentaire" (256) dudit sous-ensemble en sous ensembles élémentaires dits "intermédiaires" (Ki), le moyen de construction (205 à 207) étant adapté, pour chacun des sous- ensembles élémentaires (Ki) qui n'est pas partitionné, à construire une application élémentaire dans le sous-ensemble élémentaire considéré en déterminant les paramètres (ai, b) de l'application élémentaire de façon à constituer la restriction de l'application contractive globale dans le sous- ensemble élémentaire considéré, le moyen de sortie (581) étant adapté à transmettre l'ensemble des paramètres (ai, b) ainsi déterminés, ainsi que, lorsqu'au moins une étape de partition complémentaire a eu lieu, une information dite "de partition", représentative de chaque dite partition complémentaire, constituant conjointement une représentation primaire dudit ensemble de données. 34. Dispositif de traitement primaire selon l'une quelconque des revendications 24 à 33, caractérisé en ce qu'il comporte un moyen de partition (510, 530, 550) adapté à prendre en compte une dimension minimale, à partitionner ledit ensemble de données en sous-ensembles dits "élémentaires initiaux" (Ki), et, pour chaque sous-ensemble élémentaire qui ne possède pas ladite dimension minimale, à effectuer au moins une itération d'une séquence comportant: - une étape d'estimation d'opportunité de division (252 à 254 et 262) au cours de laquelle on estime une opportunité de division dudit sous-ensemble élémentaire, et lorsque l'estimation d'opportunité ne répond pas à des critères prédéterminés dits "de qualité", une étape de "partition complémentaire" (256) dudit sous-ensemble en sous ensembles élémentaires dits "intermédiaires" (Ki), le moyen de construction (205 à 207) étant adapté, pour chacun des sous- ensembles élémentaires (Ki), qu'il résulte de la partition initiale ou d'une partition complémentaire et qu'il ait lui-même été l'objet d'une partition complémentaire ou non, à construire une application élémentaire dans le sous- 101 2768000 ensemble élémentaire considéré en déterminant les paramètres (ai, b) de l'application élémentaire de façon à constituer la restriction de l'application contractive globale dans le sous-ensemble élémentaire considéré, le moyen de sortie (581) étant adapté à transmettre l'ensemble des paramètres (ai, b) ainsi déterminés, ainsi que, lorsqu'au moins une étape de partition complémentaire a eu lieu, une information dite "de partition", représentative de chaque dite partition complémentaire, constituant conjointement une représentation primaire dudit ensemble de données. 35. Dispositif de traitement d'au moins deux ensembles de données (IM, t) représentatives de grandeurs physiques, dits " premiers ensembles de données ", caractérisé en ce qu'il comporte un dispositif de traitement primaire selon l'une quelconque des revendications 24 à 34, adapté à traiter chaque premier ensemble de données, et en ce qu'il comporte: un moyen d'organisation d'un fichier informatique (510, 530, 550) comportant des données représentatives de chaque ensemble de paramètres provenant d'une étape de construction appliquée à chaque premier ensemble de données. 36. Dispositif de traitement secondaire de plusieurs sous- ensembles de paramètres (ai, b), caractérisé en ce qu'il comporte: - des moyens de calcul (610, 630, 650) adaptés, pour chaque sous-ensemble de paramètres, à effectuer un calcul itératif (450) à partir dudit sousensemble de paramètres (ai, b) et sur un deuxième sous-ensemble de données, pour mettre en oeuvre une méthode d'approximations successives (407 à 410) convergeant vers le point fixe d'une application contractive globale dite "de second type", en utilisant, pour ce faire, au moins une application appartenant au groupe d'applications constitué des applications multidimensionnelles et des applications non linéaires, et un moyen d'assemblage (610, 630, 650) adapté à réunir les points fixes résultant du calcul itératif effectué sur chaque sous-ensemble de paramètres, pour constituer une représentation secondaire (RE) des ensembles de paramètres. 102 2768000 37. Dispositif de traitement secondaire selon la revendication 36, caractérisé en ce que le moyen d'assemblage (610, 630, 650) est adapté à déterminer des intersections des points fixes qui correspondent aux sous- ensembles de paramètres et, dans ces intersections, une combinaison des points fixes pour constituer la représentation secondaire. 38. Dispositif de traitement secondaire selon la revendication 37, caractérisé en ce que le moyen d'assemblage (610, 630, 650) est adapté, pour une intersection de points fixes correspondant à plusieurs sous- ensembles de paramètres, à calculer la moyenne des points fixes résultant des traitements des sous-ensembles de paramètres considérés. 39. Dispositif de traitement secondaire selon l'une quelconque des revendications 36 à 38, caractérisé en ce qu'il comporte un moyen dit de "partition initiale" (610, 630, 650) adapté à partitionner ledit deuxième sous- ensemble de données en sous-ensembles dits "élémentaires". 40. Dispositif de traitement secondaire selon l'une quelconque des revendications 36 à 39, caractérisé en ce qu'il comporte un moyen de détermination (610, 630, 650) de sous-ensembles dits " de travail " correspondant chacun à un sous-ensemble élémentaire. 41. Dispositif de traitement secondaire selon l'une quelconque des revendications 36 à 40, caractérisé en ce que les moyens de calcul (610, 630, 650) sont adaptés, pour réaliser ledit calcul itératif: cI) à partitionner (404) I'ensemble d'initialisation en sous-ensembles élémentaires (Ki); c2) à considérer, pour chacun des sous-ensembles élémentaires (Ki) ainsi déterminés, les paramètres (ai, b) des applications élémentaires correspondant aux sous-ensembles élémentaires (Ki) résultant de la partition (404) de l'ensemble de données initiales, et à mettre en oeuvre lesdites applications élémentaires sur les sous- ensembles élémentaires (Ki) de l'ensemble d'initialisation 103 2768000 c3) à réunir l'ensemble des données obtenues par les mises en oeuvre d'applications élémentaires, ceci constituant une représentation intermédiaire desdites données initiales, affectée d'une erreur; c4) à réitérer les opérations c1-c3, en prenant comme ensemble d'initialisation, ladite représentation intermédiaire, de façon à s'approcher, du point fixe de ladite application contractive globale de second type; l'ensemble de données finalement obtenu constituant une représentation secondaire (RE) de l'ensemble de données ayant été l'objet d'un traitement primaire. 42. Dispositif de traitement secondaire selon l'une quelconque des revendications 36 à 41 dans lequel lesdits paramètres (ai, b) sont une représentation primaire d'une image couleur à plusieurs composantes (Y, Cr, Cb) caractérisé en ce que les moyens de calcul (610, 630, 650) sont adaptés, après avoir effectué les calculs itératifs (450) sur l'une des composantes, à utiliser comme initialisation des calculs itératifs relatifs à la composante suivante, la représentation secondaire (RE) obtenue à la fin des calculs itératifs relatifs à l'une des composantes déjà traitées. 43. Dispositif de traitement secondaire selon l'une quelconque des revendications 36 à 42 dans lequel le traitement primaire étant effectué avec des premiers ensembles de données possédant des dimensions différentes pour les différentes composantes (Y, Cr, Cb) d'une image couleur, les moyens de calcul (610, 630, 650) sont adaptés à mettre en oeuvre des deuxièmes ensembles de données possédant les mêmes dimensions pour les différentes composantes. 44. Dispositif de traitement secondaire selon la revendication 43, caractérisé en ce que lesdits premiers ensembles de données mis en oeuvre par les moyens de calcul (610, 630, 650) possèdent, pour chaque composante de chrominance (Cr, Cb) des dimensions inférieures aux dimensions du premier ensemble de données utilisé pour la composante de luminance (Y). 45. Dispositif de traitement secondaire selon l'une quelconque des revendications 36 à 44, caractérisé en ce qu'il comporte un moyen de 104 2768000 lecture (650) dans un fichier, adapté à lire au moins une partie de l'ensemble de paramètres dans un fichier commun (900) à plusieurs ensembles de paramètres. 46. Dispositif de traitement secondaire selon l'une quelconque des revendications 36 à 45, caractérisé en ce qu'il comporte: - un moyen de détermination (610, 630, 650) d'une dimension minimale de sous-ensembles élémentaires, - un moyen de détermination (610, 630, 650) de sous-ensembles élémentaires constituant une partition d'un deuxième ensemble de données, prenant en compte d'une part ladite dimension minimale et, d'autre part, la présence d'information de partition correspondant aux dits sous-ensembles, et - un moyen de sélection (610, 630, 650), parmi l'ensemble des paramètres, de paramètres associés aux dits sous-ensembles élémentaires déterminés, les moyens de calcul étant adaptés à mettre en oeuvre des paramètres sélectionnés et des sous-ensembles élémentaires déterminés. 47. Imprimante, caractérisée en ce qu'elle comporte un dispositif selon l'une quelconque des revendications 24 à 46. 48. Photocopieur, caractérisé en ce qu'il comporte un dispositif selon l'une quelconque des revendications 24 à 46. 49. Appareil photographique, caractérisé en ce qu'il comporte un dispositif selon l'une quelconque des revendications 24 à 46. 50. Télécopieur, caractérisé en ce qu'il comporte un dispositif selon l'une quelconque des revendications 24 à 46.