Brevet FR3099975A1 — publié le 20210219

Description Titre de l'invention : PROCÉDÉ DE FOURNITURE D'UN CONTENU COMPORTANT AU MOINS UNE IMAGE, FORMAT DE FICHIER Domaine technique 100011 La présente invention vise un procédé d'encodage d'un fichier informatique de type image, un procédé de décodage d'un fichier informatique de type image et un format de fichier obtenu par la mise en oeuvre du procédé objet de la présente invention. Elle s'applique, notamment, à l'encodage d'images destinées à une transmission numérique. Technique antérieure [0002] Les formats les plus usités sur internet sont JPEG (pour « Joint Photographic Experts Group », traduit par « Comité d'experts de la photographie »), PNG (pour « Portable Network Graphic », traduit par « Image réseau portable ») et GIF (pour « Graphic Interchange Format », traduit par « Format d'échange d'images »). Le WebP de Google (Marque déposée) essaie de se faire une place depuis près de 10 ans sans vraiment y parvenir à ce jour. [0003] Le JPEG est excellent pour les photos mais gère très mal les images synthétiques (dessins, graphiques, etc). Il ne gère pas la transparence. Un mode progressif et une version sans perte existent, mais ne sont pas universellement supportés. La vitesse de compression est excellente, tout comme celle de décompression. [0004] Le PNG est un format sans perte qui restitue donc une image identique pixel à pixel à l'originale. Il gère très bien les images synthétiques (dont celles avec transparence), et correctement les photos pour les cas où il est nécessaire d'en conserver la qualité d'origine. Un mode progressif est possible, ainsi que d'utiliser des couleurs indexées. Une variante non officielle et non supportée par les navigateurs, appelée APNG (pour « Animated Portable Network Graphic », traduit par « Image réseau portable animée »), permet de faire des images animées. Sa vitesse de compression est moyenne (5 à 10x plus lente que le JPEG), celle de décompression excellente. [0005] Lc GIF est particulièrement destiné aux images animées. Utilisant des couleurs indexées sur 8 bits, il est limité à 255 couleurs + transparence ou 256 couleurs, ce qui donne parfois des résultats visuellement médiocres avec des contenus issus de vidéo. Il ne permet pas l'affichage progressif. Cc format est également très rapide à compresser comme à décompresser. [0006] Lc WebP étant plus récent que les formats précédents, il réunit l'essentiel des pos- sibilités de chacun des formats précédents, tout en améliorant les taux de compression. 2 11 permet ainsi de compresser avec ou sans perte(s), supporte la couche alpha ainsi que les couleurs indexées, et gère les animations. Cependant, il n'a pas de mode progressif. Sa vitesse de compression est mauvaise (jusqu'à 60x plus lent que le JPEG), et sa vitesse de décompression bonne. [0007] D'autres travaux existent, comme le BPG (pour « Better Portable Graphics », traduit par « Meilleures images portables »), basé sur le codcc vidéo HEVC (pour « High Efficiency Video Coding », traduit par « Encodage vidéo à haute efficacité »), ou le FLIF (pour « Free Lossless Image Format », traduit par « Format d'image sans perte libre »), dont les résultats en compression sans perte sont très élevés en terme de taux, mais au prix de temps de calculs irréalistes, et aucun ne semble vraiment attirer l'attention. L'arrivée du codec vidéo AV-1 pourrait faire apparaître une version image. Ce codec ayant le support de toute l'industrie du Weh, peut-être aurait-t-elle plus d'avenir. Cependant, l'aspect extrêmement calculatoire du codcc devra quasi obligatoirement s'appuyer sur des accélérateurs matériels, ce qui en limitera l'accès au moins pendant un certain temps. Exposé de l'invention [0008] La présente invention vise à proposer un format réunissant les qualités de tous les formats existants sans leurs inconvénients ou restrictions, soit, un format gérant la compression avec ou sans perte(s), les photos comme les images synthétiques, les couleurs indexées et la transparence, les animations, l'affichage progressif, tout en apportant des taux de compression intéressants et à des excellentes vitesses de compression et décompression. Il vise aussi à élargir les possibilités en s'appuyant sur les capacités des navigateurs modernes, celles-ci étant de plus rendues disponibles pour des applications dédiées et multi-plateformes par des technologies comme npm/ electron (un gestionnaire de paquets) ou webvicw. [0009] Selon un premier aspect, la présente invention vise un procédé de fourniture d'un contenu comportant au moins une image, qui comporte : - une étape d'hébergement, dans une mémoire informatique, d'un fichier informatique représentatif d'au moins un élément graphique d'au moins une image, dit « fichier permanent », ledit fichier stockant, dans une trame unique, au moins deux paquets distincts représentatifs d'un même élément graphique, chaque dit paquet étant représentatif de l'élément graphique selon une résolution d'image différente, - une étape d'émission, par un équipement informatique, d'une requête de réception d'un fichier informatique temporaire, ladite requête comportant au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique à inclure dans le fichier temporaire, - une étape de génération, d'un fichier informatique temporaire à partir du fichier 3 permanent en fonction d'au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique comportée dans la requête de réception, ladite étape de génération comportant : - une étape de duplication sélective d'au moins un paquet, en fonction d'au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique comportée dans la requête de réception, dans le fichier temporaire, - une étape de création d'une information d'en-tête du fichier temporaire en fonction des données dupliquées et - une étape de fourniture du fichier temporaire à l'équipement informatique émetteur de la requête de réception. [0010] Grâce à ces dispositions, seule la partie nécessaire de l'image est fournie à l'équipement informatique, réduisant la taille du fichier au nécessaire et ainsi le temps d'occupation du canal de transmission entre la mémoire et l'équipement informatique. Selon les actions d'un utilisateur, un fichier temporaire secondaire peut être requis par l'équipement informatique, sans modification du format de l'image hébergée dans la mémoire informatique. [0011] Dans des modes de réalisation, le fichier permanent comporte une information d'en-tête comportant au moins une valeur de décalage d'octet entre deux paquets représentatif de l'élément graphique selon une résolution d'image différente, le procédé objet de la présente invention comportant, de plus, une étape de conversion d'une valeur de résolution de la requête émise par l'équipement informatique en une valeur de décalage d'octet dans la trame, ladite valeur de décalage étant mise en oeuvre au cours de l'étape de duplication sélective. [0012] Ces modes de réalisation permettent d'obtenir très rapidement un fichier éphémère à fournir par lecture sélective de bits dans la trame représentative de l'image. [0013] Dans des modes de réalisation, le procédé objet de la présente invention comporte une étape d'encodage d'un fichier informatique de type image, qui comporte : - une étape de transformée en ondelettes discrète de l'image pour produire : - un premier ensemble de coefficients d'ondelettes, - un deuxième ensemble de coefficients d'ondelettes, - un troisième ensemble de coefficients d'ondelettes et - un quatrième ensemble de coefficients d'ondelettes, - pour chaque ensemble de coefficients, une étape de quantification des coefficients, - une étape de codage arithmétique indépendante pour chacun des premier, deuxième, troisième et quatrième ensemble de coefficients quantifiés et - une étape d'enregistrement du premier ensemble encodé et - une étape d'enregistrement d'au moins un regroupement des deuxième, troisième et quatrième ensembles encodés dans des paquets de données indépendants d'une trame de données unique, formant avec le premier ensemble enregistré un dit « fichier permanent », chaque ensemble encodé étant associé dans la trame à une valeur de décalage à appliquer lors de la lecture de la trame pour décoder sélectivement un ensemble de coefficients. [0014] Grâce à ces dispositions, le format de fichier généré permet un affichage progressif de l'image en sélectionnant le ou les paquets de données nécessaires à l'affichage de l'image selon des critères d'affichage déterminés. Ceci permet un gain de temps de traitement puisque l'ensemble des données d'une trame représentative de l'image n'a pas à être nécessairement lue pour afficher l'image selon les critères déterminés. Le format de fichier ainsi généré comporte, en son sein, plusieurs versions de la même image selon des critères d'affichage déterminés, une version pouvant être lue indépendamment des autres versions comportées par le format de fichier. Ainsi, avec une seule trame représentative de l'image, il est possible de réaliser une pluralité d'affichages distincts selon les contraintes à appliquer à l'image. Ce format est particulièrement adapté à l'affichage dans un navigateur interna car, en fonction des besoins d'affichage sur une page internct, telle ou telle version de encodée et générée par le procédé objet de la présente invention peut être utilisée. Une vignette, par exemple, peut mettre en oeuvre une version de l'image de faibles dimensions tandis qu'un clic sur la vignette peut entraîner l'affichage d'une version de l'image dans des dimensions plus élevées, ces deux versions étant inclues dans le même fichier d'image. [0015] Dans des modes de réalisation, l'étape de transformée en ondelettes est itérative, chaque itération formant un ensemble de coefficients d'un ordre supérieur, les itérations ultérieures à la première utilisant en guise d'image le premier ensemble de coefficients ou l'image initiale, au moins un ensemble de coefficients obtenu pour une itération déterminée étant enregistré dans un paquet de données indépendant et associé à une valeur de décalage. [0016] Ces modes de réalisation permettent d'obtenir une pluralité de versions d'une même image dans un même fichier, chaque version pouvant être appelée indépendamment par lecture sélective du format de fichier généré par le procédé objet de la présente invention. [0017] Dans des modes de réalisation, le procédé objet de la présente invention comporte, en aval de l'étape de transformée en ondelettes et des étapes de quantification des deuxième, troisième et quatrième ensembles de coefficients et en amont de l'étape de quantification du premier ensemble de coefficients, une étape de compensation du premier ensemble en fonction des deuxième, troisième et troisième ensembles quantifiés. [0018] Ces modes de réalisation permettent d'augmenter la qualité de l'image encodée. [0019] Dans des modes de réalisation, le procédé objet de la présente invention comporte : - une étape de déquantification du premier ensemble compensé, - pour chaque deuxième, troisième et quatrième ensembles quantifiés d'un ordre déterminé, une étape de déquantification dudit deuxième, troisième et quatrième ensembles quantifiés, - une étape supplémentaire de transformée en ondelettc discrète inverse en fonction dudit deuxième, troisième et quatrième ensembles déquantifiés et du premier ensemble compensé déquantifié, - pour chaque deuxième, troisième et quatrième ensembles de coefficients quantifiés, une étape de classification des coefficients en fonction du résultat dc l'étape de transformée en ondelette discrète inverse et [0020] les étapes de codage arithmétique étant configurées pour encoder les deuxième, troisième et quatrième ensembles classifiés. [0021] Ces modes de réalisation permettent d'obtenir un gain d'efficacité de compression. En effet, il y a alors deux phases itératives, l'une dc décomposition en ondclettes, puis une phase de reconstruction équivalente à celle que va faire le décodeur, afin de pouvoir classifier avec les mêmes informations que celles dont disposera le décodeur, puisque les quantifications successives font qu'on ne peut pas savoir à l'avance quels seront les coefficients du premier groupe pour le décodeur. [0022] Dans des modes de réalisation, le procédé objet de la présente invention comporte, en amont de l'étape de transformée en ondclettes, une étape de conversion d'espace colorimétrique et d'indexation des couleurs de chaque composant. [0023] L'avantage de ces modes de réalisation provient du fait que l'espace de départ étant généralement le RVB (pour « Rouge Vert Bleu »), il y a une forte corrélation entre les valeurs dans les composantes, puisqu'une variation de luminosité induit une variation proportionnelle dans rouge, de vert et de bleu Ainsi, changer l'espace pour que celui-ci s'apparente à la luminosité d'une part et de deux composantes qui définissent la couleur d'autre part réduit le nombre de valeurs à traiter. [0024] Dans des modes de réalisation, le procédé objet de la présente invention comporte, en amont de l'étape d'enregistrement du premier ensemble quantifié, une étape de prédiction de pixel dans le premier ensemble quantifié. [0025] Ces modes de réalisation permettent de limiter le nombre de bits en amont de la com- pression en ne comprimant qu'une valeur d'écart par rapport à une prédiction, par nature minime au regard de la valeur à encoder. [0026] La prédiction de pixel utilise les pixels (ou coefficients) voisins connus par le décodeur (afin qu'il puisse faire la même prédiction) pour prédire le pixel courant. [0027] On n'encode ensuite que la différence par rapport à la prédiction. [0028] Ce faisant, on augmente très fortement la quantité et donc la probabilité des valeurs proches ou égales à zéro, et on diminue la quantité et donc la probabilité des valeurs 6 plus éloignées. [0029] Si on était capable de prédire exactement chaque pixel à 1 près, on aurait juste à encoder, hormis pour le premier pixel, 0 011 1 au lieu d'une multitude de valeurs. Un encodeur arithmétique, positionné en amont, fonctionnant très bien pour des valeurs dont l'apparition est très probable. [0030] Dans des modes de réalisation, le procédé objet de la présente invention comporte, en amont d'une étape d'enregistrement, une étape de réarrangement des données à enregistrer. [0031] Une telle étape consiste en le réarrangement des coefficients à encoder pour maximiser la longueur des chaines de coefficients nuls qui sont encodés par groupe. [0032] Préférentiellement, un réarrangement en W est utilisé. Un tel réarrangement arrange les coefficients pour un groupe de lignes, avant de changer de colonne, puis à nouveau un groupe de lignes. [0033] Ces modes de réalisation permettent de limiter la taille des données enregistrées. [0034] Dans des modes de réalisation, le procédé objet de la présente invention comporte une étape de décodage d'un fichier informatique de type image encodé selon un procédé d'encodage, qui comporte : - une étape de décodage d'un premier, deuxième, troisième et quatrième ensemble de coefficients d'ondelette et - une étape de transformée en ondelette discrète inverse pour fournir une image. [0035] Les avantages, buts et inconvénients du procédé de décodage objet de la présente invention étant similaires à ceux du procédé objet de la présente invention, ils ne sont pas rappelés ici. [0036] Selon un deuxième aspect, la présente invention vise un format de fichier d'image obtenu par la mise en oeuvre du procédé objet de la présente invention, qui comporte : - un ensemble de paquets de données représentatifs, chacun, d'un ensemble indépendant de coefficients obtenus par transformée en ondelette discrète, chaque dit paquet étant encodé arithmétiquement, - au moins une valeur de décalage à appliquer pour lire sélectivement un dit paquet de données. [0037] Les avantages, buts et inconvénients du format objet de la présente invention étant si- milaires à ceux du procédé d'encodage objet de la présente invention, ils ne sont pas rappelés ici. Brève description des dessins [0038] D'autres avantages, buts et caractéristiques particulières de l'invention ressortiront de la description non limitative qui suit d'au moins un mode de réalisation particulier des procédés et du format objets de la présente invention, en regard des dessins annexés, 7 dans lesquels : [0039] [fig.1] représente, schématiquement, et sous forme d'un logigramme, une succession d'étapes particulière d'une étape d'encodage du procédé objet de la présente invention, [0040] [fig.2] représente, schématiquement, et sous forme d'un logigramme, une succession d'étapes particulière d'une étape de décodage du procédé objet de la présente invention [0041] [fig.3] représente, schématiquement, une image décomposée en ondclettes de premier ordre, [0042] [fig.4] représente, schématiquement, une image décomposée en ondclettes de deuxième ordre, [0043] [fig.5] représente, schématiquement, une image décomposée en ondclettes de troisième ordre, [0044] [fig.6] représente un exemple image décomposée en ondclettes de troisième ordre, [0045] [fig.7] représente un exemple de trame obtenu par le procédé d'encodage objet de la présente invention et [0046] [fig.8] représente, schématiquement et sous forme d'un logigramme, une succession d'étapes particulière du procédé objet de la présente invention. [0047] DESCRIPTION DE MODE DE RÉALISATION DE L'INVENTION [0048] La présente description est donnée à titre non limitatif, chaque caractéristique d'un mode de réalisation pouvant être combinée à toute autre caractéristique de tout autre mode de réalisation de manière avantageuse. [0049] On note dès à présent que les figures ne sont pas à l'échelle. [0050] On observe, sur la figure 8, schématiquement, un mode de réalisation particulier du procédé 500 objet de la présente invention. Ce procédé 500 de fourniture d'un contenu comportant au moins une image, comporte : - une étape 505 d'hébergement, dans une mémoire informatique, d'un fichier informatique représentatif d'au moins un élément graphique d'au moins une image, dit « fichier permanent », ledit fichier stockant, dans une trame unique, au moins deux paquets distincts représentatifs d'un même élément graphique, chaque dit paquet étant représentatif de l'élément graphique selon une résolution d'image différente, - une étape 510 d'émission, par un équipement informatique, d'une requête de réception d'un fichier informatique temporaire, ladite requête comportant au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique à inclure dans le fichier temporaire, - une étape 515 de génération, d'un fichier informatique temporaire à partir du fichier permanent en fonction d'au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique comportée dans la requête de réception, ladite étape de génération comportant : - une étape 520 de duplication sélective d'au moins un paquet, en fonction d'au 8 moins une valeur de résolution et/ou au moins un identifiant d'élément graphique comportée dans la requête de réception, dans le fichier temporaire, - une étape 525 de création d'une information d'en-tête du fichier temporaire en fonction des données dupliquées et - une étape 530 de fourniture du fichier temporaire à l'équipement informatique émetteur de la requête de réception. [0051] L'étape 505 d'hébergement est réalisée, par exemple, par la mise en oeuvre d'un serveur informatique accessible sur un réseau de données de type internet. [0052] On appelle ici « fichier permanent » un fichier à partir duquel au moins un fichier temporaire peut être généré par duplication sélective d'au moins une partie des données du fichier permanent. Un « fichier temporaire » désigne un fichier à durée de vie courte, c'est-à-dire configuré pour être lu puis supprimé dans un délai généralement plus court que le délai d'utilisation puis suppression d'un fichier permanent. [0053] Un « fichier temporaire » est ainsi stocké, préférentiellement, dans une mémoire de type cache ou vive d'un équipement informatique tandis qu'un « fichier permanent » est préférentiellement stocké dans la mémoire de stockage de l'équipement informatique. [0054] Un tel fichier temporaire peut être généré par une étape 100 d'encodage telle que décrite en regard de la figure 1. [0055] L'étape 510 d'émission est réalisée, par exemple, par un moyen de communication de l'équipement informatique à destination de l'unité informatique à laquelle appartient la mémoire informatique. Un tel moyen de communication peut être une carte réseau permettant l'accès à un serveur informatique associé à la mémoire informatique. [0056] Par « équipement informatique », on entend tout équipement susceptible d'utiliser un fichier temporaire généré par le procédé 500. Cet équipement informatique peut être de type terminal ou noeud de réseau, selon les usages. [0057] La requête fournie présente au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique à inclure dans le fichier temporaire. Une valeur de résolution peut consister, par exemple, en un indicateur de résolution tandis que l'élément peut correspondre, par exemple, à un indicateur désignant un ensemble graphique de l'image indépendant d'autres ensembles graphiques, tel par exemple un personnage présent sur une couche de l'image. [0058] L'étape 515 de génération est réalisée, par exemple, par la mise en oeuvre d'un dispositif électronique de calcul configuré pour réaliser les étapes 520 de duplication sélective et de création 525. [0059] L'étape 520 de duplication est réalisée, par exemple, par la mise en oeuvre d'un dispositif électronique de calcul configuré pour sélectionner tout ou partie des paquets représentatifs d'un élément graphique prédéterminé ou déterminé en fonction de 9 l'identifiant d'élément graphique contenu dans la requête. [0060] Chaque paquet peut être sélectionné en fonction d'un identifiant de paquet associé, dans un en-tête du fichier permanent, à une balise dans la trame de données. [0061] Dans des variantes préférentielles, le fichier permanent comporte une information d'en-tête comportant au moins une valeur de décalage d'octet entre deux paquets représentatif de l'élément graphique selon une résolution d'image différente, le procédé comportant, de plus, une étape 519 de conversion d'une valeur de résolution de la requête émise par l'équipement informatique en une valeur de décalage d'octet dans la trame, ladite valeur de décalage étant mise en oeuvre au cours de l'étape 520 de duplication sélective. [0062] L'étape 519 de conversion est réalisée, par exemple, par la mise en oeuvre d'un dispositif électronique de calcul configuré pour exécuter un programme informatique associant, à chaque paquet, une position en nombre de bits dans la trame de données correspondant au début du paquet à dupliquer permettant une lecture puis une copie lors de l'étape 520 de duplication sélective. [0063] L'étape 525 de création est réalisée, par exemple, par la mise en oeuvre d'un dispositif électronique de calcul configuré pour formater un fichier selon une typologie de trame déterminée en incluant notamment chaque paquet dupliqué. [0064] L'étape 530 d'émission est réalisée, par exemple, par un moyen de communication associé à la mémoire informatique configuré pour émettre le fichier temporaire à destination de l'équipement informatique. [0065] Dans des modes de réalisation, le procédé 500 comporte une étape 300 de décodage, telle que décrite en regard de la figure 2, du fichier temporaire par l'équipement informatique. [0066] Dans des modes de réalisation, le procédé 500 comporte une étape 535 de lecture, ou d'affichage dont l'exécution dépend des modalités de lecture ou d'affichage. Une telle étape 535 de lecture met en oeuvre, par exemple, un écran. [0067] Dans des modes de réalisation, le procédé 500 comporte une étape 540 de sup- pression du fichier temporaire dans une mémoire vive ou cache stockant temporairement ledit fichier. [0068] On observe, sur la figure 1, qui n'est pas à l'échelle, une vue schématique d'un mode de réalisation de l'étape 100 objet de la présente invention. Cette étape 100 d'encodage d'un fichier informatique de type image comporte : - une étape 105 de transformée en ondelettes discrète de l'image pour produire : - un premier ensemble 110 de coefficients d'ondelettes, - un deuxième ensemble 115 de coefficients d'ondelettes, - un troisième ensemble 120 de coefficients d'ondelettes et - un quatrième ensemble 125 de coefficients d'ondelettes, - pour chaque ensemble de coefficients, une étape, 130, 135, 140 et 150, de quantification des coefficients, - une étape, 245, 250, 255 et 260, de codage arithmétique indépendante pour chacun des premier, deuxième, troisième et quatrième ensembles, 110, 115, 120 et 125, de coefficients quantifiés et - une étape 172 d'enregistrement du premier ensemble encodé et - une étape, 175, 180 et 185, d'enregistrement d'au moins un regroupement des deuxième, troisième et quatrième ensembles, 115, 120 et 125, encodés dans des paquets de données indépendants d'une trame de données unique, formant avec le premier ensemble enregistré un dit « fichier permanent », chaque ensemble encodé étant associé dans la trame à une valeur de décalage à appliquer lors de la lecture de la trame pour décoder sélectivement un ensemble de coefficients. [0069] Chaque regroupement de deuxième, troisième et quatrième ensembles, 115, 120 et 125, de coefficients est ici obtenu par la mise en oeuvre d'itération successives de transformée en ondelettes. Dit autrement, un même fichier permanent comporte un seul premier ensemble 110 invariable quel que soit le nombre de regroupements, et au moins un regroupement de deuxième, troisième et quatrième ensembles, 115, 120 et 125, de coefficients. Une trame peut ainsi être constitue d'en ensemble d'octets représentatifs du premier ensemble 110, puis d'un premier ensemble d'octets représentatifs d'un premier regroupement de deuxième, troisième et quatrième ensembles, 115, 120 et 125, de coefficients puis d'un deuxième ensemble d'octets représentatifs d'un premier regroupement de deuxième, troisième et quatrième ensembles, 115, 120 et 125. Chaque regroupement est associé à une valeur de décalage d'octets par rapport au premier ensemble 110 pour une lecture simple et rapide. [0070] En entrée, l'image peut être de tout type généré par un programme informatique de création ou de traitement d'images. [0071] Dans des modes de réalisation particuliers, le procédé 500 comporte, en amont de l'étape 105 de transformée en ondelettes, une étape 210 de transformation de l'image en une pluralité de composantes, chaque composante étant fournie à l'étape de transformée en ondelettes. [0072] On appelle « composante », généralement au départ défini par des valeurs chro- matiques de rouge (R), vert (V) et bleu (B) et potentiellement transparence (A), puis, après transformation, la luminosité, les composantes définissant la couleur (habituellement, on note Y Cb et Cr), et toujours la transparence laissée inchangée. [0073] L'étape de transformation 210 est par exemple mise en oeuvre par un circuit élec- tronique exécutant un programme informatique de transformation de l'image en une pluralité de composantes. [0074] Dans des modes de réalisation particuliers, le procédé 500 comporte, en amont de 11 l'étape 105 de transformée en ondelettes, une étape 215 de conversion d'espace colorimétrique et d'indexation des couleurs de chaque composant. [0075] L'étape de conversion 215 est par exemple mise en oeuvre par un circuit électronique exécutant un programme informatique de conversion d'espace colorimétrique et/ou d'indexation des couleurs. Un tel programme est par exemple configure pour convertir l'image d'un format RVB (pour « Rouge Vert Bleu ») en format YUV. [0076] L'étape 105 de transformée en ondelettes discrète est réalisée, par exemple, par un circuit électronique exécutant un programme informatique configure pour produire : - le premier ensemble 110 de coefficients d'ondelettes, - le deuxième ensemble 115 de coefficients d'ondclettes, - le troisième ensemble 120 de coefficients d'ondelettes et - le quatrième ensemble 125 de coefficients d'ondclettes. [0077] On rappelle qu'une image est représentée sous la forme d'un tableau bidimensionnel de coefficients, chaque coefficient représentant le niveau de luminosité du point correspondant. Lorsque l'on regarde d'un point de vue plus élevé, on ne peut pas faire la différence entre les coefficients les plus importants et les moins importants. La plupart des images naturelles ont des variations de couleurs lisses, les détails fins étant représentés par des bords nets entre les variations lisses. Techniquement, les variations lisses de couleur peuvent être qualifiées de variations de basse fréquence et les variations brusques de hautes fréquences. [0078] Les composantes de basse fréquence (variations lisses) constituent la base d'une image, et les composantes de haute fréquence (les bords qui donnent le détail) s'y ajoutent pour affiner l'image, donnant ainsi une image détaillée. Par conséquent, les variations lisses exigent plus d'importance que les détails. [0079] Pour séparer les variations lisses des détails d'une image, une transformée en on- delettes discrète peut être utilisée. [0080] Une transformée en ondelettes discrète fonctionne ainsi : un filtre passe-bas et un filtre passe-haut sont choisis de telle sorte qu'ils réduisent exactement de moitié la gamme de fréquences entre eux. Cette paire de filtres est appelée la paire de filtres d'analyse. Tout d'abord, le filtre passe-bas est appliqué pour chaque rangée de données, ce qui permet d'obtenir les composantes basse fréquence de la rangée. Mais comme le filtre passe-bas est un filtre à demi-bande, les données de sortie ne contiennent que des fréquences dans la première moitié de la gamme de fréquences originale. Ainsi, selon le théorème d'échantillonnage de Shannon, ils peuvent être sous-échantillonnés en deux, de sorte que les données de sortie ne contiennent plus que la moitié du nombre original d'échantillons. Le filtre passe-haut est appliqué pour la même rangée de données, et de même les composants passe-haut sont séparés et placés sur le côté des composants passe-bas. Cette procédure s'applique à toutes les lignes. 12 [0081] Ensuite, le filtrage est effectué pour chaque colonne des données intermédiaires. Le tableau bidimensionnel de coefficients qui en résulte contient quatre bandes de données, chacune étiquetée LL (bas-bas) 110, HL (haut-bas) 115, LH (bas-haut) 120 et HH (haut-haut) 125. La bande LL 110 peut être décomposée à nouveau de la même manière, produisant ainsi encore plus de sous-bandes. Ceci peut être fait jusqu'à n'importe quel niveau, résultant ainsi en une décomposition pyramidale comme indiqué en figures 3, 4, 5 et 6. [0082] Les étapes de quantification, 130, 135, 140 et 150, sont par exemple mises en oeuvre par un circuit électronique exécutant un programme informatique de quantification. [0083] On appelle « quantification » le processus d'approximation de l'ensemble continu de valeurs dans les données d'image avec un ensemble fini (de préférence petit) de valeurs. Les données d'entrée d'un quantificateur sont les données d'origine, et la sortie est toujours un parmi un nombre fini de niveaux. La quantification est une fonction dont l'ensemble des valeurs de sortie sont discrètes et généralement finies. Évidemment, il s'agit d'un processus d'approximation, et une bonne quantification est une quantification qui représente le signal original avec une perte ou une distorsion minimale. [0084] Il existe deux types de quantification : la quantification scalaire et la quantification vectorielle. Dans la quantification scalaire, chaque symbole d'entrée est traité séparément dans la production de la sortie, tandis que dans la quantification vectorielle, les symboles d'entrée sont regroupés en groupes appelés vecteurs, et traités pour donner la sortie. Ce regroupement des données et leur traitement en une seule unité augmente l'optimalité du quantificateur vectoriel, mais au prix d'une complexité de calcul accrue. Dans des variantes, les coefficients dont la valeur est inférieure à une valeur limite déterminée peuvent être annulés, c'est-à-dire mis à 0. [0085] L'ensemble des étapes, 245, 250, 255, 260, d'encodage sont réalisées, par exemple, par la mise en oeuvre d'un circuit électronique configuré pour exécuter un programme informatique d'encodage d'informations. [0086] On rappelle que le codage arithmétique est un code à longueur variable, c'est-à-dire qu'un symbole de taille fixe (en bits) sera codé par un nombre variable de bits, de préférence inférieur ou égal à sa taille originale. On ne modifie donc pas la densité de symboles, mais leur codage afin de réduire l'espace qu'ils occupent. [0087] Ce qui différencie le codage arithmétique des autres codages sources est qu'il code le message par morceaux (théoriquement il peut coder un message entier de taille quelconque, mais dans la pratique on ne peut coder que des morceaux d'une quinzaine de symboles en moyenne) et représente chacun de ces morceaux par un nombre n (flottant) là où Huffman code chaque symbole par un code précis. Le problème qui en résulte pour le codage Huffman est qu'un caractère ayant une probabilité très forte 13 d'apparition sera codé sur au moins un bit. Par exemple, si on cherche à coder un caractère représenté à 90 %, la taille optimale du code du caractère sera de 0,15 bit alors que Huffman codera ce symbole sur au moins 1 bit, soit six fois plus. C'est cette lacune que le codage arithmétique comble grâce à un algorithme proche du codage par intervalle. [0088] Dans des variantes préférentielles, au moins une des étapes, 245, 250, 255 et 260, met en oeuvre un système à double table engendré par au moins une étape de classification, 160, 165, 170, correspondante. [0089] Dans des variantes, le procédé 500 comporte au moins une étape de transformation finale, telle : - une première étape de transformation consistant à amalgamer les chaînes de zéros (dont la taille est supérieure à un paramètre « p » généralement fixé à 6) pour produire le groupe [0, n-p] où « n » est le nombre de zéros consécutifs. On encode alors sans autre modification le 0, puis : - si n-p 127, on encode la valeur 128-F((n-p)&127), ce qui correspond aux sept bits de poids faible de (n-p) auxquels on fixe le huitième bit à 1, puis on divise (n-p) par 128 (pour considérer les sept bits suivants). - une deuxième étape de transformation s'applique aux coefficients > 125. On les transforme en le groupe [254, n-126] où n est la valeur du coefficient. Par le même procédé que pour les 0, on encode n-126 par groupe de sept bits. - une troisième étape de transformation s'applique aux coefficients REVENDICATIONSProcédé (500) de fourniture d'un contenu comportant au moins une image, caractérisé en ce qu'il comporte : - une étape (505) d'hébergement, dans une mémoire informatique, d'un fichier informatique représentatif d'au moins un élément graphique d'au moins unc image, dit « fichier permanent », ledit fichier stockant, dans une trame unique, au moins deux paquets distincts représentatifs d'un même élément graphique, chaque dit paquet étant représentatif de l'élément graphique selon une résolution d'image différente, - une étape (510) d'émission, par un équipement informatique, d'une requête de réception d'un fichier informatique temporaire, ladite requête comportant au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique à inclure dans le fichier temporaire, - une étape (515) de génération, d'un fichier informatique temporaire à partir du fichier permanent en fonction d'au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique comportée dans la requête de réception, ladite étape de génération comportant : - une étape (520) de duplication sélective d'au moins un paquet, en fonction d'au moins une valeur de résolution et/ou au moins un identifiant d'élément graphique comportée dans la requête de réception, dans le fichier temporaire, - une étape (525) de création d'une information d'en-tête du fichier temporaire en fonction des données dupliquées et - une étape (530) de fourniture du fichier temporaire à l'équipement informatique émetteur de la requête de réception. Procédé (500) selon la revendication 1, dans lequel le fichier permanent comporte une information d'en-tête comportant au moins une valeur de décalage d'octet entre deux paquets représentatif de l'élément graphique selon une résolution d'image différente, le procédé comportant, de plus, une étape (519) de conversion d'une valeur de résolution de la requête émise par l'équipement informatique en une valeur de décalage d'octet dans la trame, ladite valeur de décalage étant mise en oeuvre au cours de l'étape (520) de duplication sélective. Procédé (500) selon l'une des revendications 1 ou 2, qui comporte, en amont de l'étape (505) d'hébergement, une étape (100) d'encodage comportant : - une étape (105) de transformée en ondelettes discrète d'au moins une 21 [Revendication 4] [Revendication 5] [Revendication 6] image pour produire au moins un élément défini par : - un premier ensemble (110) de coefficients d'ondelettes, - un deuxième ensemble (115) de coefficients d'ondclettcs, - un troisième ensemble (120) de coefficients d'ondclettes et - un quatrième ensemble (125) de coefficients d'ondelcttcs, - pour chaque ensemble de coefficients, une étape (130, 135, 140, 150) de quantification des coefficients, - une étape (245, 250, 255, 260) de codage arithmétique indépendante pour chacun des premier, deuxième, troisième et quatrième ensembles (110, 115, 120, 125) de coefficients quantifiés, - une étape (172) d'enregistrement du premier ensemble encodé et - une étape (175, 180, 185) d'enregistrement d'au moins un regroupement des deuxième, troisième et quatrième ensembles (115, 120, 125) encodés dans des paquets de données indépendants d'une trame de données unique, formant avec le premier ensemble enregistré un dit « fichier permanent », chaque ensemble encodé étant associé dans la trame à une valeur de décalage à appliquer lors de la lecture de la trame pour décoder sélectivement un ensemble de coefficients. Procédé (500) selon la revendication 3, dans lequel l'étape (105) de transformée en ondelettes est itérative, chaque itération formant un ensemble de coefficients d'un ordre supérieur, les itérations ultérieures à la première utilisant en guise d'image le premier ensemble de coefficients ou l'image initiale, au moins un ensemble de coefficients obtenu pour une itération déterminée étant enregistré dans un paquet de données indépendant et associé à une valeur de décalage. Procédé (500) selon l'une des revendications 3 ou 4, qui comporte, en aval de l'étape (105) de transformée en ondelettes et des étapes (130, 135, 140) de quantification des deuxième, troisième et quatrième ensembles de coefficients et en amont de l'étape (150) de quantification du premier ensemble de coefficients, une étape (145) de compensation du premier ensemble en fonction des deuxième, troisième et troisième ensembles quantifiés. Procédé (500) selon l'une des revendications 3 à 5, qui comporte : - une étape (155) de déquantification du premier ensemble compensé, - pour chaque deuxième, troisième et quatrième ensembles quantifiés d'un ordre déterminé, une étape de déquantification (190, 195, 200) dudit deuxième, troisième et quatrième ensembles quantifiés, - une étape supplémentaire de transformée (205) en ondelette discrète inverse en fonction dudit deuxième, troisième et quatrième ensembles déquantifiés et du premier ensemble compensé déquantifié, - pour chaque deuxième, troisième et quatrième ensembles de coefficients quantifiés, une étape de classification (160, 165, 170) dcs coefficients en fonction du résultat de l'étape de transformée en ondelette discrète inverse et les étapes (245, 250, 255, 260) de codage arithmétique étant configurées pour encoder les deuxième, troisième et quatrième ensembles classifiés. [Revendication 7] Procédé (500) selon l'une des revendications 3 à 6, qui comporte, en amont de l'étape (105) de transformée en ondelettes, une étape (215) de conversion d'espace colorimétrique et d'indexation des couleurs de chaque composant. [Revendication 8] Procédé (500) selon l'une des revendications 3 à 7, qui comporte, en amont de l'étape d'enregistrement du premier ensemble quantifié, une étape de prédiction (220) de pixel dans le premier ensemble quantifié. [Revendication 9] Procédé (500) selon l'une des revendications 3 à 8, qui comporte, en amont d'une étape (172, 175, 180, 185) d'enregistrement, une étape (225, 230, 235, 240) de réarrangement des données à enregistrer. [Revendication 10] Procédé (500) selon l'une des revendications 3 à 9, qui comporte une étape (300) de décodage d'un fichier informatique de type image encodé : - une étape (305, 310, 315, 320) de décodage d'un premier, deuxième, troisième et quatrième ensemble de coefficients d'ondelette et - une étape (325) de transformée en ondelette discrète inverse pour fournir une image.