Brevet FR2702580A1 — publié le 19940916

PROCEDE DE COMPRESSION D'UNE IMAGE NUMERIQUE A UNE TAILLE PREDETERMINEE, ET PROCEDE DE DECOMPRESSION CORRESPONDANT La présente invention a pour objet un procédé de compression d'une image numérique à une taille prédéterminée, ainsi que le procédé de décompression correspondant. Dans de nombreuses applications, il est nécessaire de réduire la taille des images numériques qui sont stockées en mémoire, afin de réduire l'espace mémoire occupé. Cette réduction de taille peut être réalisée par divers procédés connus de compression. Un procédé connu de compression d'images numériques consiste dans une première étape à effectuer une décomposition de l'image numérique initiale en un ou plusieurs plans, et dans une deuxième étape à effectuer une compression de chaque plan. S'agissant d'une image numérique couleur, dite image RVB, la première étape est par exemple réalisée, en utilisant une transformation dite LUV, également connue sous le nom de transformation YCrCb, qui permet de décomposer l'image numérique en trois plans indépendants L, U et V. Le plan L est appelé plan luminance et contient toute l'information relative au contraste de l'image numérique initiale, les plans U et V sont encore appelés plans chrominance U et plan chrominance V. Dans le cas d'une image numérique en noir et blanc, ctest-à-dire composée de pixels codés en niveau de gris, la première étape consistera à transformer l'image numérique initiale en un unique plan luminance L. Un procédé de compression permettant la réalisation de la deuxième étape précitée est connu sous le nom de JPEG, et a déjà été décrit en vue de sa normalisation, dans un document, référencé CD 10918-1, intitulé "Digital compression and coding of continuous-tone still images" et publié par le comité international ISO/IEC JTC 1/SC2/WG10. Le procédé de compression JPEG appliqué sur chaque plan L, U et V permet d'obtenir une image compressée, dont la taille ainsi que la qualité de l'image après décompression dépendent des paramètres du procédé, et notamment de la matrice de quantification utilisée. Le procédé de compression JPEG ne permet donc pas d'obtenir une image compressée de taille prédéterminée. En effet, ce procédé de compression utilise un codage à longueur variable du type codage de HUFFMAN, qui n'est pas déterministe. Le but que s'est fixé le demandeur est de proposer un procédé de compression d'une image numérique, qui utilise le principe de compression JPEG, mais qui permet d'obtenir une image compressée dont la taille est sensiblement égale à une taille prédéterminée tout en étant inférieure ou égale à ladite taille prédéterminée, sans perte de l'information caractéristique principale de l'image numérique initiale, c'est-à-dire une image compressée dont la taille est fixée avant la compression, et qui après décompression permet de restituer une image dont la qualité visuelle est proche de celle de l'image initiale avant compression. Cet objectif est atteint par le procédé de compression, de l'invention, d'une image numérique à une taille prédéterminée T, qui est du type connu en ce qu'il comprend les étapes suivantes 1. Décomposer l'image numérique en un ou plusieurs plans 2. Effectuer une compression, du type JPEG, de chaque plan, en effectuant la succession d'étapes suivantes 2.1. Décomposer la matrice représentative du plan en matrice élémentaire M k de dimension (n x n) 2.2. Calculer les matrices DCk résultant d'une transformation DCT respectivement de chaque matrice élémentaire M 2.3. Calculer les matrices DCQk résultant de la quantification respectivement de chaque matrice DCk à partir d'une matrice de quantification donnée 2.4.Effectuer un codage à la longueur, du type codage de HUFFMAN ou codage arithmétique, des coeffcients de chaque matrice DCQk à partir d'une lecture zigzag de ces coefficients De manière caractéristique, le procéde de compression de l'invention consiste à effectuer la succession d'étapes suivantes a) Réaliser les étapes 1 et 2 précitées avec une matrice de quantification initiale O0 b) Si la taille des plans compressés obtenus à l'étape a) est supérieure (respectivement inférieure) à la taille prédéterminée T, réitérer, pour toutes les matrices DCk obtenues, les étapes 2.3. et 2.4. précitées, en choisissant à chaque itération, une nouvelle matrice de quantification O., telle que la taille des J plans compressés obtenus soit inférieure (respectivement supérieure) à la taille des plans compressés obtenus avec la matrice de quantification Qj-1 utilisée à l'itération précédente, jusqu'à ce que la matrice de quantification 0n choisie à la énième itération, soit telle que la taille des plans compressés obtenus soit strictement inférieure (respectivement supérieure) à la taille prédéterminée T; c) Réitérer l'étape 2.4, pour toutes les matrices DCQ, qui résultent d'une quantification réalisée à partir de la matrice de quantification Qn 1 (respectivement Qn) en faisant varier à chaque itération le nombre de coefficients codés jusqu'à trouver le nombre de coefficients maximum N qui doivent être codés pour que la taille des plans compressés obtenus soit inférieure ou égale à la taille prédéterminée T. Le demandeur a constaté que de façon inattendue, à tailles égales,l'image compressée obtenue par le procédé de l'invention permettait d'obtenir par décompression une image de meilleure qualité que celle obtenue à partir d'une image compressée selon le principe JPEG, bien que dans le procédé de l'invention certains coefficients des matrices DC k aient été supprimés lors du codage d'un nombre limité de coefficients. De même pour une qualité d'image restitutée après décompression comparable, le procédé de l'invention permet d'obtenir une image compressée dont la taille est nettement inférieure à celle obtenue par le procédé de compression JPEG. De préférence, à l'étape b du procédé de compression de l'invention, selon que la taille des plans compressés obtenus à l'étape a) est supérieure ou inférieure à la taille prédéterminée T, la nouvelle matrice Q. est choisie de telle sorte que ses J coefficients sont soit strictement supérieurs soit strictement inférieurs aux coefficients de la matrice Q; 1 utilisée à j-I l'itération précédente. Selon un mode particulier de réalisation, la matrice de quantification Q, est choisie à chaque itération de l'étape b, de j telle sorte que Q. = Aj.Qo, A. étant un facteur de j J j multiplication soit strictement croissant, soit strictement décroissant à chaque itération. Avantageusement, les facteurs de multiplication A. j correspondent aux éléments d'une suite arithmétique ou géométrique. De préférence, les matrices élémentaires Mk sont de dimension (8 x 8). Un autre objet de l'invention est de proposer un procédé de décompression d'une image compressée à partir du procédé de l'invention Ce procédé de décompression est du type connu en ce qu'il consiste à effectuer la succession d'étapes suivantes 3. Pour chaque plan compressé de l'image, 3.1. Effectuer le décodage du plan compressé, correspondant au codage statistique utilisé lors de l'étape 2.4 du procédé de compression, en sorte de calculer les coefficients de chaque matrice DCQ'k ; 3.2. Effectuer une reconstitution en zigzag de chaque matrice DCQ'k 3.3. Calculer à partir de la matrice de quantification utilisée à l'étape 2.3, chaque matrice DC'k résultant de la déquantification de chaque matrice DCQ'k 3.4.Calculer chaque matrice élémentaire M'k résultant de la transformation DCT inverse respectivement de chaque matrice DC' 3.5. Reconstituer un plan décompressé à partir des matrices élémentaires M'k obtenues; 4. Reconstituer une image décompressée à partir du ou des plans décompressés obtenus en effectuant la transformation inverse, de celle utilisée à l'étape 1 du procédé de compression. De manière caractéristique selon l'invention, à l'étape 3.1. précitée, on obtient pour chaque matrice DCQ'kun nombre de coefficients correspondant au nombre N trouvé à l'étape c, du procédé de compression de l'invention ; dans ce cas, l'étape 3.2. est réalisée en effectuant une reconstitution en zigzag de chaque matrice DCQ'k à partir de ces N coefficients et en complétant chaque matrice à l'aide de coefficients nuls ; la matrice de quantification utilisée à l'étape 3.3 est la matrice Qn 1 ou 0n utilisée à l'étape c) du procédé de compression de l'invention. D'autres caractéristiques et avantages de l'invention ressortiront de la description suivante d'un mode particulier de réalisation du procédé de compression et de décompression de l'invention, donnée en référence aux dessins annexés sur lesquels - - les figures 1 et 2 schématisent les différentes étapes d'un procédé particulier de compression, - la figure 3 est une matrice illustrant le principe de la lecture zigzag, - les figures 4A, 4B, 4C sont des organigrammes pour la mise en oeuvre du procédé de compression particulier illustré aux figures 1 et 2, - et les figures SA et 5B constituent un organigramme du procédé de décompression correspondant. Le procédé de compression de l'invention a pour but de réduire la taille d'une image numérique à une taille prédéterminée, notamment en vue de son stockage, tout en gardant l'intégrité de l'information de l'image initiale avant compression. On a représenté à la figure 1 une image numérique 1 de dimension (X * Y) pixels. Cette image est constituée de trois plans distincts R, ir, , et B de dimension (X * Y) pixels. Un pixel de l'image 1 est obtenu par la concaténation des trois pixels correspondants des plans R,'LÉ et B. En pratique les pixels de chaque plan sont codés sur cinq bits. Chaque plan R,'1fet et B peut être décomposé respectivement en bloc élémentaire Ri,j , #ij et Bij de 16 pixels sur 16 pixels. S'agissant par exemple d'une image numérique 1 de 512 pixels sur 512 pixels, chaque plan sera constitué de 1024 blocs élémentaires. On définit, à partir de cette décomposition de chaque plan en blocs élémentaires, des unités minimales de données MDU. qui sont constituées par les trois blocs élémentaires correspondant R. j .... et B... 1,j 1,j Chaque unité minimale de données MDUij , répérée par la référence 2 sur la figure 1, est transformée conformément aux différentes étapes illustrées sur cette même figure. On commence par effectuer une transformation LUV de l'unité minimale de données 2. La transformation LUV est évidement donnée ici à titre d'exemple non limitatif. On pourrait sans pour autant sortir du cadre de l'invention, utiliser une autre transformation connue de l'homme du métier et permettant de décomposer une image numérique initiale en un ou plusieurs plans. On obtient l'unité minimale de données 3 qui est composée de trois blocs élémentaires Li j X Ui j et V. ., de 16 pixels sur 16 pixels. La transformation LUV est une multiplication matricielle du type Chaque bloc élémentaire de l'unité minimale de données 3 peut être décomposé en quatre matrices élémentaires de dimension (8 x 8). A partir de l'unité minimale de données 3, on effectue un sous-échantillonnage des blocs élémentaires Ui j et V. j. Ce sous-échantillonnage, dit de chrominance, consiste à garder intact le bloc élémentaire Li j , et à ne garder pour chaque bloc élémentaire Ui,j et Vi,j qu'une seule matrice élémentaire sur les quatre.On obtient alors une unité minimale de données 4 constituée des six matrices élémentaires Mo, M1, M2, M3, M4 et M5. Toute l'information relative au contraste de l'image initiale est contenue dans les blocs élémentaires L. .. Les blocs l,J élémentaires Ui j et V. J contiennent l'information couleur de l'image initiale. Le pouvoir de résolution de l'oeil humain est beaucoup plus faible dans la distinction de la couleur que dans celle du contraste. Par conséquent le sous-échantillonnage de la chrominance permet de diminuer le nombre de données devant être traitées, en ne gardant que les données significatives, c'est-à-dire celles susceptibles de modifer suffisamment les énergies lumineuses perçues par l'oeil humain, compte-tenu de sa sensibilité. On effectue ensuite une transformation cosinus discret, dite DCT (Discret Cosine Transform) de chaque matrice élémentaire M0 à M5, en sorte d'obtenir respectivement les matrices DCo à DC5 constituant l'unité minimale de données 5. Supposons que la matrice élémentaire M k et la matrice DC k correspondante sont représentées par les matrices suivantes SOO s S07 S00 S07 Mk = : : DCk = s70 ---------- 577 S70 ~~~~~~~~ 577 Dans ce cas, chaque coefficient S de la matrice DC k est obtenu en fonction des coefficients Syx de la matrice Mk par l'équation suivante Les coefficients de la matrice M k sont obtenus en fonction des coèfficients de la matrice correspondante DCk, par la transformée DCT inverse, à partir de l'équation suivante Dans les deux équations précitées, Cu C v valent 1/#2 lorsque u et v valent 0.Dans le cas contraire Cu et C v valent 1. Aprés chaque transformation DCT d'une matrice élémentaire Mk donnée, on mémorise la matrice DC correspondante dans un fichier 6 à accés séquentiel. L'organigramme de la figure 4A est un exemple de mise en oeuvre des étapes qui sont illustrées à la figure 1 qui viennent d'être décrites. Les différentes étapes de cet organigramme sont suffisamment explicites et ne seront donc pas répétées dans la présente description. Une fois que toutes les unités minimales de données 2 constituant l'image numérique 1 ont été traitées, on obtient un fichier 6 dans lequel toutes les matrices DC, qui ont été successivement calculées, sont rangées séquentiellement par ordre d'unité minimale de données 5. Le traitement particulier par unité minimale de données qui vient d'être décrit est donné uniquement à titre d'exemple non limitatif. On pourrait concevoir des unités minimales de données formées de blocs élémentaires dont la dimension est plus importante. En outre, un traitement par unité minimale de données n'est pas nécessaire à la réalisation du procédé de compression de l'invention. En effet, tous les blocs élémentaires Li j constituent un plan luminance L. De même, tous les blocs élémentaires U et V. j constituent respectivement des plans chrominances U et V. Il est possible de traiter successivement, et de façon indépendante, chaque plan L , U et V, à partir d'une décomposition de chacun de ces plans en matrice élémentaire Mk de dimension (8 x 8).On obtiendrait dans ce cas les mêmes matrices DCk mais rangées dans un ordre différent dans le fichier 6. L'intérêt de réaliser le procédé de compression de l'invention à partir d'une décomposition en unités minimales de données sera explicité ultérieurement lors de la description du procédé de décompression correspondant. L'étape de sous-échantillonnage de la chrominance permet d'améliorer le procédé de compression de l'invention , mais n'est pas nécessaire à la réalisation de ce procédé. Si l'on se réfère à la figure 2, à partir d'une lecture séquentielle du fichier 6, on réalise une quantification de chaque matrice DCk de dimension (8 x 8) à l'aide d'une matrice de quantification initiale Q de même dimension. L'opération de quantification consiste à effectuer la division de chaque coefficient d'une matrice DCk par le coefficient correspondant de la matrice de quantification. Pour chaque matrice DC k on obtient alors une matrice DCQk de dimension (8 x 8). Après chaque calcul d'une matrice DCQk, on effectue un codage de HUFFMAN de chaque coefficient de ladite matrice, à partir d'une lecture zigzag de ces coefficients. Le codage de HUFFMAN est par ailleurs déjà connu de l'homme du métier et ne sera donc pas expliqué dans la présente description. On peut également, à la place du codage de HUFFMAN utiliser un autre codage statistique, tel qu'un codage arithmétique. La figure 3 illustre le principe de la lecture zigzag appliquée à une matrice DCQk, c'est-à-dire l'ordre particulier dans lequel les coefficents a.. de la matrice sont traités. Le même principe peut être appliqué aux coefficients des matrices DCk notamment au cours de la quantification de ces coefficients. Au fur et à mesure du codage de HUFFMAN de chaque coefficient d'une matrice DCQk, on mémorise le coefficient codé obtenu dans un fichier 9 à accés séquentiel. Cette première étape de quantification à partir d'une matrice Q suivie d'un codage de HUFFMAN de tous les coefficients de chaque matrice DCQk obtenue est illustrée à la figure 2 par la première boucle itérative référencée 7, et peut être automatiquement mis en oeuvre à l'aide de la première boucle itérative 8 de l'organigramme de la figure 4B. Une fois que toutes les matrices DCk du fichier 6 ont été quantifiées puis codées, on obtient un fichier 9 constitué des blocs successifs Hk rangés par ordre d'unité minimale de données. Dans l'exemple particulier à présent décrit, on suppose que la matrice de quantification initiale QO a été choisie de telle sorte que la taille du fichier 9 qui est obtenue à la première boucle itérative est supérieure à la taille prédéterminée T. Dans ce cas, tant que la taille du fichier 9 est supérieure ou égale à la taille T prédéterminée, on recommence la boucle itérative 7, avec à chaque fois une nouvelle matrice de quantification Qj. Le calcul de cette nouvelle matrice de quantification Q. j correspond à la boucle itérative 10 de la figure 2 et est illustré par la boucle itérative 11 de l'organigramme de la figure 4B. Un calcul possible des matrices de quantification O. j successives consiste par exemple à utiliser un facteur de multiplication A. à chaque itération, de telle sorte que l'on ait 3 Qj = Aj . Qo. Pour obtenir un fichier 9 dont la taille va en diminuant à chaque itération 10 , il est suffisant mais pas forcément nécessaire que chaque coefficient de la matrice O j soit strictement supérieur au coefficient correspondant de la matrice Q; 1 calculée lors de l'itération précédente. Par conséquent, il est suffisant que les facteurs de multiplications A forment une suite strictement croissante.Ces facteurs de j multiplication peuvent être prédéterminés, ou peuvent être calculés au fur et à mesure en utilisant par exemple une suite arithmétique ou une suite géométrique de raison prédéterminée Les matrices de quantification Qj pourraient également dans un autre mode particulier de réalisation être prédéterminées. La boucle itérative 10 consisterait dans ce cas à récupérer dans un fichier contenant toutes les matrices de quantification prédéterminées, la matrice de quantification Q. suivante. j La boucle itérative 10 permet à partir du fichier 6 d'obtenir un fichier 9 dont la taille est décroissante, et de déterminer la dernière matrice de quantification calculée, pour laquelle la taille du fichier 9 obtenu est supérieure ou égale à la taille prédéterminée T. En supposant qu'à la énième boucle itérative 10, on obtient un fichier 9 dont la taille est inférieure strictement à la taille prédéterminée T,ladite dernière matrice de quantification correspond donc à la matrice Qn 1 qui a été calculée lors de la bouche itérative précédente. A partir de cette matrice de quantification Qn 1' on réitère la quantification et le codage de HUFFMAN de chaque matrice DCk du fichier 6, en sorte d'obtenir le fichier 9 correspondant à la matrice de quantification un 1' et dont la taille est supérieure ou égale à la taille prédéterminée T. Ensuite, on réitère le calcul du fichier 9, jusqu'à obtenir un fichier dont la taille est inférieure ou égale à la taille prédéterminée, en décrémentant à chaque itération le nombre N des coefficients de chaque matrice DCk qui sont quantifiés puis codés selon le principe de HUFFMAN, à partir d'une lecture zigzag. Ce traitement itératif correspond à la boucle 13 de la figure 2, et peut être mis en oeuvre automatiquement à l'aide de l'organigramme de la figure 4C. Le fichier 9 final obtenu contient, rangés par ordre d'unité minimale de données, les blocs Hk calculés successivement à partir de la quantification et du codage de HUFFMAN des N premiers coefficients de la matrice DCk, pris dans l'ordre de la lecture zigzag. A partir de ce fichier 9, on obtient un fichier final compressé 12, qui sera utilisé lors de la décompression, et qui contient tous les blocs Hk du fichier 9 constituant l'image compressée, ainsi que la matrice Qn 1 et le nombre N de coefficients codés d'un bloc Hk donné. Au lieu de décrémenter le nombre de coefficents codés à chaque boucle itérative 13, on aurait pu également effectuer le calcul de ce nombre par dichotomie. Dans l'exemple particulier de réalisation du procédé de compression qui a été décrit, il a été supposé que la matrice initiale Q était telle que la taille du fichier 9 obtenu initialement à la première étape de quantification correspondant à la première mise en oeuvre de la boucle itérative 7, était supérieure à la taille prédéterminée T du fichier que l'on souhaitait obtenir. Dans ce cas, il était nécessaire comme cela a été décrit que la taille des fichiers 9 successifs aille en décroissant à chaque nouvelle itération.Si on choisit une matrice de quantification initiale Qo telle que la taille du premier fichier 9 obtenu soit inférieure à la taille T prédéterminée, il est nécessaire dans ce cas de recommençer la boucle itérative 7, avec à chaque fois une nouvelle matrice de quantification Qj jusqu'à ce que la taille du fichier 9 obtenu soit supérieure à la taille T prédéterminée. Il est donc nécessaire que les matrices Qj soient choisies à chaque itération de telle sorte que la taille des fichiers 9 obtenus aille en croissant. Pour cela il suffit que chaque coefficient de chaque nouvelle matrice Qj soit strictement inférieur au coefficient correspondant de la matrice Q; 1 calculée lors de l'itération précédente.En outre, la dernière matrice de quantification calculée, pour laquelle la taille du fichier 9 obtenu est supérieure ou égale à la taille prédéterminée T, n'est pas dans ce cas la matrice de quantification 0ne1' mais la matrice de quantification Qn Il I1 revient à l'homme du métier d'adapter les organigrammes des figures 4B et 4C, en fonction de la taille du premier fichier 9 qui est obtenu à partir de la matrice de quantification initiale Pour obtenir une image décompressée à partir du fichier 12, il est nécessaire d'effectuer un décodage de chaque bloc Hk dudit fichier, ce qui permet d'obtenir N coefficients décodés. Ce décodage correspond au codage utilisé lors du procédé de compression, en l'occurence au codage de HUFFMAN.A partir des N coefficients décodés, il est possible pour chaque bloc H k de reconstituer une matrice DCQ'k de dimension (8 x 8), dont les N premiers coefficents, pris dans l'ordre de la lecture zigzag, correspondent aux N coefficents décodés, et dont les (64 - N) coefficents restants sont choisis égaux à zéro. Une fois qu'une matrice DCQ' k a été calculée, on effectue une déquantification de cette matrice, à l'aide de la matrice 0ne1' en sorte d'obtenir une matrice DC' k de dimension (8 x 8). L'opération de déquantification d'une matrice DCQ' k consiste à multiplier chaque coefficient de cette matrice par le coefficient correspondant de la matrice Qn-1 Une fois que l'on a obtenu la matrice DC' k, on effectue une transformation DCT inverse de cette matrice, de manière à obtenir une matrice élémentaire M'k de dimension (8 x 8). L'organigramme de la figure SA illustre un exemple particulier de réalisation de la décompression automatique de chaque bloc Hk du fichier 12, en une matrice élémentaire M'k. La décompression des blocs Ho, H1, H2 s H3, H4, H5 d'une unité minimale de données du fichier 12 permet d'obtenir une unité minimale de données MOU. j constituée par les matrices correspondantes M'o , M'1, M 2 M'3, 4 et M' A partir de chaque unité minimale de données MOU. J ainsi constituée, on calcule, conformément à l'organigramme de la figure 5B, le bloc élémentaire de 16 pixels sur 16 pixels de l'image RVB décompressée, en vue de son affichage. Ce bloc élémentaire est constitué par les trois blocs Ri j A(i j et B. .. Les étapes de l'organigramme des figures SA et 5B sont suffisamment explicites et ne seront donc pas répétées dans la présente description. La réalisation d'une compression suivie d'une décompression, par unité minimale de données, permet de reconstituer et d'afficher l'image RVB compressée, au fur et à mesure que l'on traite chaque bloc Hk du fichier 12. Des essais comparatifs ont été menés entre le procédé de compression connu sous le nom de JPEG, et le procédé de compression de l'invention. Dans un exemple particulier, on a réalisé la compression JPEG d'une image initiale représentant une photo d'identité de 512 pixels sur 480 pixels avec la matrice de quantification intiale Q suivante Le fichier final après compression obtenu avait une taille de 14 608 octets.Sur la même image initiale, on a appliqué le procédé de compression de l'invention avec les paramètres suivants Matrice de quantification : Q T = 15 000 octets (taille prédéterminée) (8-j) - 0o = 8 Un fichier final compressé dont la taille était de 14 462 octets a été obtenu après une itération à l'étape b) du procédé, et en codant un nombre maximum de 17 coefficients à l'étape c) du procédé. La matrice finale de quantification choisie était donc 7 -O 8 Après décompression des deux fichiers compressés précités, il a été constaté que l'image restituée à partir du fichier compressé obtenu à l'aide du procédé de l'invention était de meilleure qualité que celle restituée à partir du fichier compressé obtenu par le procédé de compression JPEG.A taille de fichier compressé final comparable, le procédé de compression de l'invention permet d'obtenir une image après décompression de meilleure qualité. Il est également important de remarquer que dans l'exemple précité, en utilisant le procédé de compression JPEG, on ne pouvait pas connaître à l'avance la taille du fichier final compressé que l'on allait obtenir, et par là-même on ne pouvait pas obtenir de façon certaine, contrairement au procédé de compression de l'invention, un fichier final compressé dont la taille était inférieure ou égale à 15 000 octets. D'autres essais comparatifs ont été menés faisant apparaître que pour une qualité d'image restituée comparable, la taille du fichier final compressé obtenu par le procédé de compression de l'invention était inférieure en moyenne de 20 % à la taille du fichier final compressé obtenu par le procédé de compression JPEG. Le procédé de compression et de décompression de l'invention peut être appliqué à la constitution de base de données constituées d'images numériques compressées. Etant donné que l'on maîtrise la taille finale de l'image compressée, celle-ci peut egalement être avantageusement sauvegardée dans une mémoire de taille prédéterminée telle que la mémoire d'une carte à microprocesseur, ou carte à puces. REVENDICATIONS 1. Procédé de compression d'une image numérique à une taille prédéterminée T, du type comportant la succession d'étapes suivantes 1) Décomposer l'image numérique en un ou plusieurs plans, 2) Effectuer une compression de chaque plan en effectuant la succession d'étapes suivantes 2.1. Décomposer la matrice représentative du plan en matrice élémentaire M k de dimension (n x n), 2 2 Calculer les matrices DCk résultant d'une transformation cosinus discret respectivement de chaque matrice élémentaire 2.3. Calculer les matrices DCQ, résultant de la quantification respectivement de chaque matrice DCk à partir d'une matrice de quantification donnée, 2.4.Effectuer un codage à longueur variable, du type codage de HUFFMAN ou codage arithmétique, des coeffcients de chaque matrice DCQk à partir d'une lecture zigzag de ces coefficients, caractérisé en ce qu'il consiste à effectuer la succession d'étapes suivantes a) Réaliser les étapes 1 et 2 précitées avec une matrice de quantification initiale 0o b) Si la taille des plans compressés obtenus à l'étape a) est supérieure (respectivement inférieure) à la taille prédéterminée T, réitérer pour toutes les matrices DCk obtenues les étapes 2.3. et 2.4. précitées, en choisissant à chaque itération, une nouvelle matrice de quantification Qj, telle que la taille des plans compressés obtenus soit inférieure (respectivement supérieure) à la taille des plans compressés obtenus à l'itération précédente avec la matrice de quantification Q;; 1 et jusqu'à ce que la matrice de quantification Qn choisie à la énième itération, soit telle que la taille des plans compressés obtenus soit strictement inférieure (respectivement supérieure) à la taille prédéterminée T c) Réitérer l'étape 2.4, pour toutes les matrices DCQk qui résultent d'une quantification réalisée à partir de la matrice de quantification Qn 1 (respectivement Qn) en faisant varier à chaque itération le nombrevde coefficients codés jusqu'à trouver le nombre de coefficients maximum N qui doivent être codés pour que la taille des plans compressés obtenus soit inférieure ou égale à la taille prédéterminée T. 2. Procédé de compression selon la revendication 1 caractérisé en ce que, selon que la taille des plans compressés obtenus à l'étape a) est supérieure ou inférieure à la taille prédéterminée T, les coefficients de la matrice Qj choisie à chaque itération de l'étape b, sont soit strictement supérieurs soit strictement inférieurs aux coefficients de la matrice Qj-1 utilisée à l'itération précédente. 3. Procédé de compression selon la revendication 2 caractérisé en ce que la matrice de quantification Q. est choisie à chaque j itération de l'étape b, de telle sorte que Qj = Aj.Q0, A. étant j un facteur de multiplication soit strictement croissant, soit strictement décroissant à chaque itération. 4. Procédé de compression selon la revendication 3 caractérisé en ce que les facteurs de multiplication A. correspondent aux j éléments d'une suite arithmétique ou géométrique. 5. Procédé de compression selon l'une quelconque des revendications 1 à 4 caractérisé en ce que les matrices élémentaires Mk sont de dimension (8 x 8). 6. Procédé de décompression d'une image compressée à partir du procédé visé à l'une quelconque des revendications 1 à 5 consistant à effectuer la succession d'étapes suivantes 3) Pour chaque plan compressé de l'image, 3.1. Effectuer le décodage du plan compressé, correspondant au codage statistique utilisé lors de l'étape 2.4 du procédé de compression, en sorte de calculer les coefficients de chaque matrice DCO'k 3.2. Effectuer une reconstitution en zigzag de chaque matrice DCQ'k ' 3.3. Calculer à partir de la matrice de quantification utilisée à l'étape 2.3, chaque matrice DC'k résultant de la déquantification de chaque matrice DCQ'k , 3.4.Calculer chaque matrice élémentaire M'k résultant de la transformation cosinus discret inverse respectivement de chaque matrice DC'k 3.5. Reconstituer un plan décompressé à partir des matrices élémentaires M'k obtenues 4) Reconstituer une image décompressée à partir du ou des plans décompressés obtenus en effectuant la transformation inverse, de celle utilisée à l'étape 1 du procédé de compression, caractérisé en ce qu'on obtient pour chaque matrice DCO'k un nombre de coefficients correspondant au nombre N trouvé à l'étape c) du procédé de compression, en ce que l'étape 3.2. est réalisée en effectuant une reconstitution en zigzag de chaque matrice DCQ'k à partir de ces N coefficients et en complétant chaque matrice à l'aide de coefficients nuls, et en ce que la matrice de quantification utilisée à l'étape 3.3 est la matrice Qn 1 ou Qn utilisée à l'étape c) du procédé de compression.