FR 2539262 A1 19840713 FR 8300144 A 19830106 Perfectionnements au codage numérique d'une image notam- ment de télévision. L'invention est relative à un procédé ou à un dispositif de codage numérique d'une image notamment une image de télévision composée de points élémentaires (pels ou pixels) régulièrement répartis dans le plan de l'image, auxquels sont attribuées une ou plusieurs qua- lités radiométriques dénommées composantes C Ces composantes Ci peuvent être, par exemple, les mesures des radiométries de chaque pixel dans N canaux spectraux fournies par des capteurs appropriés étagés dans le spectre de fréquences radio-électriques visible, infrarouge, rayonnement X etc Ce peuvent etre également, des quantités déduites des radiométries mesu- rées, dans un seul domaine spectral d'un arrangement spatial déterminé de pixels, par une transformation linéaire définissant N canaux indépendants. La digitilisation d'une image pour son trai- tement ou sa transmission fait apparaître un voiume d'informations très élevé dont la manipulation, si l'on veut conserver une fidélité acceptable pose toujours un problème. Dans l'exemple de la télévision en couleurs, on considère que la densité et la précision d'échantillon- nage pour la reproduction pratiquement sans distorsion d'une image couleurs nécessite 6 millions de bits envi- ron à raison de 16 bits par pixel Le débit numérique d'une transmission télévisuelle sur cette base implique un canal de 170 M bits/seconde, soit l'équivalent de 2500 communi- cations téléphoniques C'est un rapport qui est prohibi- tif au niveau des coûts actuels et qui pénaliserait lour- dement l'économie d'un tel système de transmission. On a donc été amené à évaluer des traitements numériques destinés à réduire ce débit et pour ce faire, à éliminer dans la mesure du possible la redondance du message Il s'agit pratiquement d'éviter la répétition des informations déjà transmises tant que les variations constatées, dans l'espace ou dans le temps entre échan- tillons voisins sont inférieures à certaines valeurs définies en relation avec le niveau de qualité souhaitée ( rapport signal à bruit, structures et fluctuations. indésirables, sensibilité aux erreurs etc) De nombreuses propositions, faisant appel aux techniques de codage différentiel, aux transformations orthogonales, aux codages statistiques et à leur com- binaison ont été expérimentées avec des succès divers, sans qu'aucune cependant se révèle totalement satis- faisante Taux de compression limités, complexité des algorithmes, segmentation résiduelle ou effets secon- daires dus aux erreurs sont les principales difficultés rencontrées Il convient en outre, de prendre en compte les contraintes imposées par le débit de source d'images animées, qui, comme on l'a vu plus haut impose un trai- tement en temps réel particulièrement rapide. L'invention a pour but, surtout, de fournir un procédé et un dispositif de codage numérique des images qui ne présentent plus, ou à un degré moindre, les inconvénients rappelés ci-dessus et qui permettent, notamment, d'obtenir un taux de compression relativement élevé. Selon l'invention, le procédé de codage numé- rique d'une image, notamment une image de télévision. est caractérisé par le fait: que l'on détermine, dans l'image des fenêtres ayant une forme géométrique prédéterminée et comprenant un certain nombre de points élémentaires; que l'on effectue pour chaque fenêtre, des regroupe- ments en classesde radiométries(spectrales ou spatiales) des extrémités des vecteurs représentatifs des pixels ou des combinaisons de pixels de l'image, dans l'espace à N dimensions selon un critère de proximité; que l'on définit pour chaque classe à partir des va- leurs individuelles des pixels qui la constituent, N radiométries typiques qui seront stockées ou transmises pour être utilisées à la reconstruction de l'image -quel'cn stocke ou transmet également pour définir chaque pixel, un code caractéristique de la classe à laquelle il appartient, permettant de lui affecter les radiométries typiques correspondantes pour la recons- truction de l'image. La notion de proximité dont on utilise une mesure comme critère de regroupement des pixels en classe doit être prise dans un sens très large qui sera précisé selon une application du procédé comme on le verra par la suite La métrique qui lui est associée doit,en effet, prendre en considération le ou les critères de qualité essentiels à une reconstruction"satis- faisante" de l'image qui peuvent être sensiblement différentsselon le but recherché (par exemple fidélité des contours rendu des demi-teintes, forte différen- tiation des textures ou des couleurs etc) dans l'ap- plication envisagée. Le critère de proximité peut être par exemple, la distance, selon la métrique classique. dans l'espace à N dimensions entre l'extrémité du vec- teur représentatif d'un pixel et l'extrémité d'un vec- teur représentant une classe; dans ce cas on peut établir, pour chaque fenêtre plusieurs classes iden- tifiées par un vecteur dont les N composantes corres- pondent à des valeurs prédéterminées des radiométries pour chaque canal de l'image; on calcule, pour chaque pixel, la distance dans l'espace à N dimensions entre l'extrémité du vecteur représentatif de ce pixel et l'extrémité de chaque vecteur représentant une classe on compare les distances ainsi obtenues pour chaque pixel et on range ce pixel dans la classe correspondant à la distance obtenue la plus faible; on stocke ou on transmet d'une part pour chaque pixel un code permet- tant d'identifier la classe o il a été rangé et, d'autre part, un dictionnaire donnant pour chaque classe, les composantes *des vecteurs représentant cette classe, obtenues par calcul à partir des différents pi- xels lui appartenant. Ce procédé trouve son fondement dans les ca- ractéristiques des images naturelles qui montrent la possibilité de grouper les pixels (points élémentaires) d'une sous-image (ou fenêtre) arbitrairement délimitée en un nombre restreint de classes judicieusement choisies. Chaque pixel peut, dès lors, être qualifié par un code à faible nombre de bits dont la signification est donnée par la table de conversion spécifique (dictionnaire) de la sous-image traitée. Il s'agit donc de trouver, dans l'histogramme des radiométries d'une fenêtre (ou sous-image) des groupes de points, rangés dans une classe déterminée. dont les valeurs radiométriques initiales peuvent vala- blement être remplacées par un groupe de valeurs radio- métriques correspondant à celle de la classe. Au lieu de transmettre ou de stocker pour chaque pixel, ou combinaison de pixels,les valeurs radiométriques trouvées, on lui fait correspondre un code (le numéro de la classe dans laquelle il a été rangé) dont le nombre est beaucoup plus restreint que l'ensemble des radiométries possibles Il suffit pour rendre le message intelligible d'ajouter à chaque fenêtre (ensemble de classes) un dictionnaire o chaque code de classe est explicité par ses radiométries cor- respondantes. Pour permettre une compression notable, il convient de traiter des sous-images (fenêtres) de J volume suffisant pour que la transmission du diction- naire d 3 e la table de conversion puisse être considérée comme marginale dans le volume global du message. 2539262. De préférence, pour une fenêtre déterminée. après avoir effectué une première classification des points élémentaires dans des classes prédéterminées et calculé, pour chaque classe, à oartir des points qui ont été rangés dans cette classe, des radiométries typiques des points, on effectue une nouvelle classification de chaque point élémentaire, dans de nouvelles classes basées sur les radiométries calculées, cette opération d'itération étant répétée autant de fois que nécessaire pour obte- nir une précision prédéterminée. On recherche ainsi, par une méthode adaptative. la meilleure radiométrie représentative de chaque groupe de pixels rangés dans une classe de manière à n'intro- duire qu'une erreur négligeable dans le bilan énergétique de la transformation. Il est clair que l'efficacité d'une telle classification est intimement liée aux propriétés sta- tistiques de l'image aussi bien dans la distribution énergétique spectrale que spatiale Il convient pour tirer le meilleur bénéfice de ces statistiques d'ap- pliquer le procédé à des données homogènes, c'est-à- dire caractérisant l'un ou l'autre de ces domaines indépendamment On pourra par exemple s'intéresser aux diverses composantes Ci d'un même pixel dans des canaux S Foctta I différents et former les classes selon un critère de similarité spectrale On peut aussi, en monochrome définir les N canaux se référant à une distribution spatiale des pixels ou combinaison de pixels dans une groupe de forme convenable Cé procédé peut, en effets'avérer moins efficace si les deux types de données spectrales et spatiales sont classées simultanément en faisant ainsi intervenir deux natures de statistiques différentes La solution à ce problème pourra résider dans un traitement adapté à chaque domaine, Il est envisagé, de préférence, un traitement-de hautes fréquences spatiales généralement panchromatique Spar une transformation uni- taire dont l'un des coefficientscelui de la valeur moyenne correspondant à des fréquences spatiales plus basses est associé aux composantes de canaux sixtat X différents ar txaiteent par ue asiftin paitaioe tuell qoe Écrite Pratiquement, dans le cas de la télévision en couleurs par exemple, et pour tirer le meilleur parti de la redondance de l'image, on procède comme suit: on réunit plusieurs points élémentaires et on détermine, pour chaque réunion, une valeur moyenne des composantes de luminance et de chrominance l(Y)M (R-Y) (B Y) MI à partir de chaque composante de chaque point élémentaire de la réunion on effectue les opérations de classification évoquées précédemment sur ces composantes moyennes, qui sont stockées ou transmises dans les conditions évoquées précédemment, et, pour une reconstructions de tous les points élé- mentaires à la réception on applique aux signaux de luminance (Y), de chacun des points élémentaires d'une réunion, une transformation linéaire permettant de réduire le volume d'informationsà transmettre et l'on transmet les valeurs des coefficients complémentaires résultant de cette transformation. et à la réception on effectue une expansion d'infor- se mation en déduisant à partir des valeurs moyenns transmises IYMI (R Y) M (B Y)Ml et des valeurs transformées également transmises; les valeurs de luminance et de chrominance pour chaque point élémentaire d'un groupe. La réunion des points peut porter sur quatre pixels contigus qui sont groupés selon le type de sondage-: orthogonal, quinconce ou trame qui peut avoir été choisi. On défini ainsi deux domaines conjoints complé- mentaires en choisissant pour chacun d'eux le mode de codage le mieux adapté à leur nature. Le premier domaine constitue un sous-ensemble polychrome dont chaque point correspond au point moyen d'une réunion et comporte des composantes obtenues avec une densité de sondage plus faible. Le second domaine, nécessaire pour une recons- truction à pleine résolution, est constitué à partir des hautes fréquences du signal de luminance Y seul sans aucune information de chromaticité. Avantageusement, la transformation linéaire utilisée est une transformation de Walsh-Hadamard. La fenêtre est constituée avantageusement par au moins une ligne horizontale; dans le cas d'une image de télévision, il est intéressant de former la fenêtre à l'aide de deux lignes contiguës Avantageusement, le nombre de classes est égal à 32. L'invention est également relative à un dispo- sitif pour la mise en oeuvre du procédé défini précé- demment; un tel dispositif est caractérisé par le fait qu'il comprend: des moyens pour déterminer une fenêtre dans l'image en couleurs et pour balayer toute l'image par cette fenêtre; des moyens d'acquisition des valeurs relatives à chaque point élémentaire d'une fenêtre; des moyens de calcul des distances de l'extrémité du vecteur correspondant à un point élémentaire ou à un point moyen de la réunion de plusieurs points élémen- taires, aux extrémités des vecteurs identifiant chaque classe des moyens comparateurs permettant de ranger chaque point élémentaire ou chaque point moyen dans la classe correspondant à la plus faible distance calculée; et des moyens de calcul des composantes du vecteur identifiant une classe à partir des différents points lui appartenant, la sortie de ce dispositif étant reliée aux moyens de transmission des données de sortie. L'invention consiste, mises-à part les disposi- tions exposées ci-dessus, en certaines autres dispositions dont il sera plus explicitement question ci-après à propos de modes de réalisation particuliersdécritsen détail avec référence aux dessins ci-annexés, mais qui ne sont nulle- ment limitatifs. La figure 1, de ces dessins, est un schéma il- lustrant le procédé de l'invention. La figure 2 est un schéma synoptique d'un dispo- sitif pour la mise en oeuvre de ce procédé. La figure 3 est un schéma illustrant la réunion de plusieurs points élémentaires suivant un sondage ordhxgm. Les figures 4 à 6 sont des schémas de traite- ment d'images successives. La figure 7 est un organigramme du dispositif pour la mise en oeuvre du procédé. Les figures 8 à 12 sont des schémas synoptiques plus détaillés de blocs du schéma de la figure 7. La figure 13 est un schéma synoptique des moyens utilisés pour le décodage des données fournies après classification. La figure 14, enfin, est un schéma synoptique d'un opérateur pour la transformation linéaire. 2539262. La description qui suit va être donnée essentiel- lement avec référence à des images de télévision en couleursbasée sur une analyse de l'image en trichromie dans trois primaires "rouge" "verte" "bleue" alimentant trois canaux indépendants, pour des raisons de simplifi- cation. Dans cet exemple, le nombre N de canaux est donc égal à 3. Toutefois, le procédé et le dispositif de l'in- vention conviennent pour le traitement d'images aecun nombre de canaux inférieur ou N supérieur à 3. L'image de la télévision en couleurs peut être considérée comme la combinaison de trois images primaires I 1,I 2,I 3, représentées schématiquement sur la gauche de la figure 1 correspondant aux trois canaux Chaque image se compose de nixels p répartis suivant des lignes; les pixels de l'image 11 sont affectés des valeurs de radio- métre por ceux métrite 1 oerc 2 ceux de l'image I 2 sont affectés des va- leurs de radiométrie pour e/net ceux de l'image T 3 sont affectés des valeurs de radiométrie pour le 3 ème canal. On détermine, dans l'image, des fenêtres f ayant une forme géométrique prédéterminée et comprenant un certain nombre N de pixels p On établit, pour chaque fenêtre f, plusieurs classes RI, R 2 schématiquement représentées, sur la droite de la figure 1, par des rangées Chaque classe est identifiée par un vecteur d'un espace à trois dimensions (N = 3) dont les compo- santes correspondent à des valeurs prédéterminées des radiométries Cl, C 2, C 3 pour chaque canal de l'image. On calcule pour chaque pixel de la fenêtre f la distance D, dans l'espace à trois dimensions, entre l'extrémité du vecteur représentatif de ce pixel et dont les composantes sont constituées par les radiomé- 2539262. tries affectées à ce pixel dans les trois canaux considérés, et l'extrémité de chaque vecteur identifiant une classe. En fait, ce calcul devra être effectué en tenant compte de la nature de l'application, ici la Télévision en couleurs o la qualité de l'image reproduite est jugée par un observateur humain dont l'oeil présente des caractéristiques très particulières quant à la "fidélité subjective" de la reproduction On pourra, en particulier, adopter dans l'espace à trois dimensions Y, R-Y,B-Y, des métriques non linéaires différentes adaptées à la sensibilité différentielle de l'oeil humain selon chacun de ces axes Par exemple, la loi de Weber Fechner précise cette sensibilité dif- férentielle selon l'axe des luminances pour lequel une échelle logarithmique sera mieux adaptée qu'une échelle linéaire et per- mettra de calculer des " 1 distanes subjectives" plus satisfaisantes. On pourra donc effectuer sur les radiométries de chacun des ca- naux de telles conversions, à l'aide de tables si l'on ne dispose pas d'une loi mathématique simple de transformation, avant de cal- culer la distance euclidienne dans l'espace transformé. Par exemple, pour la classe Rl, si l'on désigne par Cll, C 21,C 31, les composantes du vecteur identifiant cette classe et par yli, y 2 i, y 3 i, les radiométries du ième pixel, la distance du vecteur représentant ce i ième pixel au vecteur identifidant la classe Rl sera définie par: (Dli) (Cll-y 1 li) +(C 21-y 2 i) + (C 31-y 3 i) Pour ce ième pixel, on calcule les distances relatives à toutes les classes, avantageusement au nombre de 32 On obtiendra donc 32 distances calculées Dli D 32 i. On compare ensuite ces 32 distances de manière à détermi- ner la distance la plus faible et on range ce ième pixel dansla classe correspondant à cette plus faible distance, par exemple la classe R 4. Par la suite, on transmettra, pour ce ième pixel, unique- ment un code permettant d'identifier la classe R 4 o il a été rangé. Ce code n'exige qu'un nombre de bits réduit par rapport à celui qui aurait été nécessaire pour transmettre les trois radio- métries correspondant à ce ième pixel. 2539262 - On transmet, en outre, un dictionnaire donnant, pour chaque classe R 1 R 32, les composantes C'i, C'2, C'3, du vecteur identi- fiant cette classe Ces composantes transmises C'l, C'2, C'3, sont obtenues par calcul,notamment calcul du barycentre, à partir des dif- férents points appartenant à la classe. Le procédé permet donc de faire correspondant aux trois fenêtres f (correspondant à chaque radiométrie primaire) de chacune n pixels, une carte unique de N codes, associés à un dictionnaire o chaque code est explicité par les 3 composantes (N composantes d'une manière plus générale) du vecteur identifiant la classe correspon- dant au code De préférence, ces composantes correspondent à celles du barycentre des points rangés dans la classe considérée Ces com- posantes pourraient cependant être déterminées par un autre mode de calcul (différent de celui du barycentre), à partir des points rangés dans la classe. Le sd-éa di la figure 1 résme ces raticns. La classificaticn c'est-à-dire le ranint des pixels dans des classes cdtemirks, utiise un pxxixoe par laqelle on regroape dans un nembre limité de "classes" des pixels dmnt l'erxeble des orpsao Les ruge,verte et bleuesont voisines et pav Ent être ormfxdxs. Ces clases ne sont pas définies aybit Urar Et mais adptées à l'his- tgjrdme à trois dcnàicns des radioëtries d'un frtre f (aou ss-a 3 e) diorée dans l'image d'origire Si le noie die pixels dc la feentre f n'est pas trap élevé et si le rentre de classes n'est pas trop faible, on put, en affectant à chaue pi- xel la valeur m ûtr: des ra 3 iétes de la classe dans la 3 lle il est rané, recstiter umr sas-imae très voisire d l'original. En ptcént airi de pcde en -roche par dlaoeunt rtlier de la fen-être f, pxur bale l'ers _e dble d l'Eimag, an peut amer la trannissicn di message avec une d 5 r ia: d'inormation trs réiite. Ce Hcé paemet une r Pàxicn rmtile dh volure binaire du messag par raxrt à aelui résultant de la ruérisatin des trois nmpsantes rcug,verte et bleue. En Ua_,pnt qu'an réalise des fer:es f oepiortant chaue 1024 pixels, réris cacn par 3 ralérries _res à 8 bits,le volure initial est: 3 x 8 x 1024 = 24 K bits. Avec: le E é de l 'invertion, an classe ces mrres pixels dans 32 classes ra:ianétriqs différates RI R 32, et on dsigre chad e pixel par le code (ruéro)de la classe o il est rargé; il suffira de 5 bits par oxe îles 32 classes en question On divrera dnc un pxeunier mlsag de 5 x 1024 bits. 2539262. Ce premier message est complété par le diction- naire donnant la signification radiométrique de chacun des codes; pour chaque code, il faudra transmettre trois radiométries mesurées chacune par 8 bits c'est-à-dire, 32 x 3 x 8 = 768 bits supplémentaires. Finalement, avec le procédé de l'invention, on transmettra: ( 5 x 1024) + 768 = 5 888 bits - Par rapport à la transmission du mm Uange initial, le procédé de l'invention donne un taux de compression de ( 24 x 1024 Cette valeur suffisamment élevée justifie le codage à l'émission et le décodage à la réception. Le nombre de classes est un facteur important de la finesse de la classification et, par conséquent, de l'aptitude à approximer au mieux les valeurs radio- métriques de l'original Un nombre trop élevé de classes cependant diminue le taux de compression en raison du nombre de bits du code nécessaire pour numéroter chacune des classes Il peut être avantageux de disposer d'un nombre de classes variable adapté à l'histogramme des radiométries de la fenêtre avec, en contrepartie, l'inconvénient d'un code à nombre de bits variables selon les fenêtres f, ce qui implique un mode de transmission à régulation de débit peu souhaitable. On prendra généralement un nombre de classes fixe et correspondant à une puissance de 2; dans l'e- xemple envisagé, on a choisi 32 = 25 pour fixer la longueur du code à 5 bits Cette valeur s'est révélée acceptable pour un grand nombre d'images de naturestrès différente Elle est, cependant, fonction d'un deuxième paramètre, à savoir le nombre de pixels constituant la fenêtre f de traitement; ce nombre, sans être critique, influe sur la qualité de reproduction si le nombre de classes est limité Il est clair que la variance d'unme classe croît généralement avec le nombre de pixels lui appartenant, ce qui traduit une classification de plus en plus abusive Il faut, cependant, un nombre de pixels suffisant pour permettre une bonne adaptation à la statistique de l'image On a trouvé expérimentalement que des fenêtres f de quelques centaines de pixels cor- respondent à un bon compromis. La forme de la fenêtre découpée dans l'image peut être variable pour autant qu'elle intéresse des zones contiguës A la redondance spatiale est maximale. Pour des images de télévision, dont la distribution spatiale est convertie en distribution sérielle dans le temps, il est intéressant de constituer les fenêtres à partir des lignes de balayage de l'image; c'est pour- quoi dans l'exemple évoqué précédemment, on a indiqué que la fenêtre f est formée par deux lignes contigës. On peut alors traiter successivement l'ensemble des pixels d'une ou plusieurs lignes dans un format récur , rent et continu qui f acilite la mise en oeuvre du pro- cédé. Le nombre de pixels de la fenêtre peut ainsi varier entre 300 et 1500, selon la finesse de sondage nécessaire, dans les limites convenables pour une bonne statistique des radiométries. Pour une fenêtre déterminée f après avoir ef- fectué une première classification des N pixels dans les 32 classes Rli R 32, on calcule, pour chaque classe Rli a partir des pixels qui ont été rangés dans cette classe, le barycentre de ces pixels On peut effectuer une nouvelle classification de chaque pixel de la fenêtre dans les 32 nouvelles classes basées sur les barycentres ainsi calculés Cette opération d'itération est répétée autant de fois que nécessaire pour obtenir une préci- sion déterminée. Par exemple, si g est le nombre de pixels rangés dans la classe R 4 qui, lors du premier passage à àétait identifiéepar un vecteur dont les composantes étaient C 14, C 24, C 34, le calcul du bary- centre, après le premier passage va conduire à identifier la classe R 4 par un nouveau vecteur dont les composantes seront i =q si 1 yli C'14 =q 2 i= 1 y 2 i C'24 = = i = q 3 q Les valeurs yli,y 2 i, y 3 i correspondent aux trois composantes cde cbacun des q pixels contenus dans la classe R 4. On engage ainsi une phase d'adaptitivité en recalculant les barycentres de chacune des classes qui serviront pour le passage suivant d'itération en vue d'améliorer le classement des pixels de la fenêtre par rapport à ces nouveaux barycentres On peut affiner le résultat par des itérations successives dont la conver- gence est rapide. Lorsque le classement des pixels de la fenêtre est terminé, on effectue la transmission des codes, pixel par pixel, dans l'ordre prédéterminé par le ba- layage, puis le dictionnaire relatif à ces codes est transmis; selon une variante, on peut transmettre le dictionnaire relatif auxcodeen premier, puis les codes pixel par pixel. * L'opération est renouvelée pour la fenêtre sui- vante et ainsi de suite jusqu'à la fin de l'image On voit que l'algorithme de classement utilisé exige une initialisation des classes Rl -T R 32 qui peut être obtenvapar exemple par une distribution régulière dans l'espace. Il est avantageux d'utiliser des résultats de calcul antérieurs comme base d'initialisation de la clas- sification suivante pour bénéficier de la forte cor- relation spatiale d'une ligne à la suivante, ou de la corrélation temporelle d'une image à la suivante En particulier, on pourra traiter plus efficacement la pre- mière ligne de l'image en utilisant les barycentres obtenus lors de la classification de la même ligne de l'image précédente dans le temps. Les systèmes de télévision analogique consti- tuent des cadres bien définis par leur norme de balayage (cadence, nombre de lignes), le codage couleurs (NTSC, SECAM, PAL) et de radiodiffusion qu'il est souhaitable de conserver au moins à un certain niveau sous peine de devoir introduire des appareillages compliqués pour l'interface compatible La télévision numérique s'adapte mieux aux besoins des utilisateurs en conservant le découpage sériel en lignes successives d'analyse et, pour la couleur, en traitant en parallèle trois compo- santes caractéristiques Y, R Y, B Y, pour chaque pixel, définies à partir des composantes primaires rouge (R) verte (V) et bleue (B) par les relations suivantes Y = 0,59 V + 0,30 R + 0,11 B R Y = 0,70 R 0,59 V 0,11 B B Y = 0,89 B 0,59 V 0,30 R. Le signal Y; ou signal de luminance, peut être considéré comme la version panchromatique de l'image; les deux autres signaux R Y et B Y sont spécifiques de la chromaticité. Cette répartition de l'information permet une discré- tisation du message en effectuant un sondage périodique,de ces trois signaux à des cadences régulières ( 13,5 M Hz pour Y; 6,75 M Hz pour R-Y et B-Y) de manière à numériser à 256 niveaux ( 8 bits)leurs va- leurs sans dégradation sensible de qualité Ceci correspond à 720 pi- xels de luminance Y pour la partie active de la ligne de balayage. On voit que le sondage de la chronaticité est effectué avec une densité moitié de celle de la lum inance Y, soit 360 échan- tillons R-Y et 360 échantillons B-Y, mais reste largement suffisant cependant pour le niveau de qualité recherchée. On peut considérer que ce format conduit à étendre la chromaticité d'un pixel i au pixel i+l sui- vant la ligne ou, si l'on préfère, à assimiler le pixel de chromaticité à un rectangle recouvrant deux pixels de luminance adjacents. La même assimilation dans le sens vertical peut être faite, ce qui conduit à un sondage de chromaticité 4 fois moins dense que celui de la luminance Y, mais encore très suffisant pour des images naturelles. Pour tirer le meilleur parti de la redondance de l'image, on définit deux domaines conjoints et complé- mentaires en choisissant pour chacun d'eux le mode de codage le mieux adapté. Le premier domaine constitue un sous-ensemble trichrome dont chaque pixel comporte les trois compo- santes Y, R Y, B Y obtenues avec une densité de sondage 4 fois plus faible que celle de Y Ce premier domaine décrit une image précise des basses fréquences spatiales des trois images R, V, B de l'analyse tri- chrome. Les quantités transmises YM (R-Y) et(B-Y)*M M M sont les composantes du vecteur dont on va effectuer la classification selon le procédé expliqué précédemment, pour ce premier domaine. Pour chaque fenêtre, on transmettra deux messa- ges la suite des codesdes pixels successifs, ces codes permettant d'identifier la classe dans laquelle chaque pixel a été rangé; le dictionnaire donnant la correspondance entre le code de chaque classe et les valeurs de YMP(R Y) M et (B Y) du modèle,pour permettre la reconstruction M de l'image basse fréquence. Le second domaine nécessaire pour une recons- truction de l'image à pleine résolution va être constitué à partir des hautes fréquences du signal de luminance Y seul sans aucune information de chromaticité. Une bonne approximation du signal YM est ob- tenue en faisant la moyenne des luminances d'une réunion de plusieurs pixels contigus du sondage Y initial. Avantageusement, on réunit 4 pixels selon le type de sondage orthogonal comme représenté sur la figure 3; les pixels numérotés O et 1 sont situés respectivement aux lignes n+ 2 et n+ 1 sur une même verticale; les pi- xels 3 et 2 sont situés sur les lignes n+ 2 et n+l immédiatement à droite du pixel 0 et 1. La réunion des pixels pourrait se faire selon un autre type de sondage par exemple quinconce liane ou quinconce trame. Si l'on désigne par Y 0, Yi, Y 2, Y 3 les luminances des pixels 0, 1, 2 et 3, la valeur moyenne YM sera Y = y O + y 1 + y 2 + y 3 M 4 Les autres quantités (R Y)M et (B Y)M sont obtenues à partir des valeurs moyennnes de chrominance des pixels de la réunion effectuéeavec: (R Y)M l(R Y)1 + (R -Y) (B-YM = 2 10 En effet, le sondage pour les composantes carac- téristiques R Y et B Y est effectué à une cadence ( 6,75 M Hz) moitié de celle du sondage Y ( 13,5 M Hz),et l'on considère que les pixels 2 et 3 de la réunion de 4 pixels représentés sur la figure 3 ont les mêmes caractéristiques de chrominance que les pixels immédia- tement voisins 1 et O du sondage. En vue d'une reconstruction de tous les pixels à la réception, on applique aux signaux de luminance Y de chacun des pixels d'une réunion effectuée comme représen- té sur la figure 3, une transformation linéaire permet- tant de réduire le volume d'information à transmettre, tandis qu'à la réception, on effectue une expansion d'in- formation pour reconstituer chaque point élémentaire. La transformation linéaire utilisée est avanta- geusement une transformation de Walsh Fadamard appliquée à la réunion des 4 pixels 0, 1, 2 et 3 de la fig 3. La moyenne YM est égale à la moitié de la première composante WHO de cette transformation puisque: WHO = 1/2 (Y + Y+ 2 + Yy 3) = YM On code les 4 valeurs Y 0, Y 1, Y 2 et Y 3 en leur appliquant la transformation évoquée c'est-à-dire que l'on complète la description des hautes fréquences de Y par les trois composantes complémentaires: WH 1 = 1/2 Y 2 Y 3 -YlY 0) WH 2 = 1/2 y 2 -3 + 1) WH 3 = 1/2 ( 2 3 O 1 ( 2 3 +Y L'avantage de ce type de codage réside dans la décorrélation des coefficients qui en résultent ce qui assure une réduction de la redondance spatiale sur le groupe des 4 pixels 0,1,2,3 On p Et ainsi réduire le volume d'informations à transmettre en introduisant une quantification adaptée à chacun de ces coefficients WH 1, WH 2 WH 3, grâoeà une attribution de bits optimisée pour chacun. L'expérience montre, en effet, que l'histogramme des valeurs de ces coefficients dans une image présente une décroissance rapide, d'allure exponentielle, en fonc- tion de leur amplitudé si bien qu'il est avantageux d'é- tablir une loi de quantification à échelons non linéaires permettant d'affecter les codes aux valeurs les plus probables La reconstruction postérieure fait apparaitre des erreurs mais 1 ' écart quadratique moyen peut être maintenu dans des limites acceptables si l'on choisitune loi bien adaptée à l'échantillon des valeurs de la fenêtre à considérer. L'objectif d'un taux de compression élevé conduit à des dispositions particulières pour obtenir une bonne adaptation à la statistique de la distribution des valeurs dans chaque fenêtre. Une possibilité consiste à définir des tables de quantification non linéairestypiquos mais judicieuse- ment sélectionné, éventuellement à nombre de niveaux et nombre de bits variables, et à choisir parmi elles celle qui permet d'obtenir le meilleur résultat c'est-à- dire la reconstruction la plus fidèle de la fenêtre Il faut alors disposer de l'ensemble des tables de re- construction et indiquer, par un code spécial, affecté à chaque fenêtre, celle dont la loi a été choisie au codage pour quantifier les coefficients des groupes de pixels de la fenêtre. Une autre solution, un peu plus coûteuse en volume binaire, mais permettant une adaptation plus fine à la distribution réelle des coefficient WH 1, WR 2, WH 3 de la fenêtre consiste à effectuer, sur chacun d'eux, une classification analogue à celle des basses fréquences trichromes Il s'agit seulement ici de regrouper en classes des grandeurs à une dimension et non des vecteurs à plusieurs dimensions ce qui simplifie les calculs mais la procédure reste la même initialisation des classes, regroupement par classe des valeurs de la fenêtre, calcul de la moyenne de chaque classe, itération. On devra donc transmettre, pour chaque groupe de pixels de la fenêtre, trois codes correspondant à WH 1, WH 2 et WH 3, ainsi qu'un dictionnaire spécifique de chaque fenêtre fournissant les valeurs moyennes de reconstruction de chaque classe, à utiliser selon le code. Une distribution de bits ayant donné de bons résultatsconsiste à affecter 8 classes et donc un code à 3 bits ( 8 = 23) à chacun des coefficients WH et WH 2 classes seulement, nécessitant un code à un seul bit, suffisent pour le coefficient WH 3 dont la dynamique est sensiblement plus faible. Au total ( 2 x 3) + 1 = 7 bits sont nécessaires par réunion de 4 pixels, ces 7 bits devant être complé- tés par le dictionnaire des ( 2 x 8) = 16 classes ( environ 64 bits) de WH et WH et de la valeur moyenne du module de WHR En effet, le bit unique transmis pour WRH est un bit de signe. On peut noter, à ce stade de la description, donnéeà titre d'exemple, que la combinaison des codages du domaine trichrome et du domaine des-hautes fréquences de luminance peut être paramétrée différemment selon le type d'application, les débits numériques acceptables ou 2539262. modalités de réalisation, sans toutefois sortir du cadre de l'invention. Il peut s'avérer souhaitable, par exemple, en vue de préserver la qualité de manipulations ultérieures, de pouvoir disposer, après codage, et décodage de la pleine résolution chromatique de l'image, c'est-à-dire celle correspondant à un échantillonnage de toutes les compo- santes à 13,5 M Hz On devra alors traiter tous les pixels comme faisant partie de l'espace trichrome sans aucune transformation complémentaire de l'espace luminance. La classification portera sur les valeurs Y,R Y,B Y de chaque pixel (ou R, V, B) fournissant 720 codes par ligne d'analyse et un dictionnaire des valeurs représentatives de chaque classe par fenêtre Il sera alors avantageux de définir la fenêtre en question comme une ligne d'analyse unique au lieu d'un couple de deux lignes, comme précédemment, pour éviter la mémori- sation d'une trame de balayage. Du fait de l'analyse par balayage entrelacé de l'image télévisuelle, en effet, on doit disposer, pour les 2 modes de traitement, classification et trans- formation,dune fenêtre formée par 2 lignes contiguës, des valeurs relatives à deux trames successives auxquelles appartiennent respectivement les lignes n+l et n+ 2 de la figure 3 On prévoit donc le chargement et la lec- ture d'une mémoire d'image pour chacune des composantes Y, R Y et B Y d'une trame chargée et lue en temps réel en même temps que le canal délivre le flux corres- pondant de la trame suivante Il en résulte un délai global d'une trame soit 20 m sec entre l'entrée et la sortie d'une image dans le système de codage Diver- ses stratégies peuvent être envisagées selon le débit du canal de transmission, l'architecture des moyens de codage et de décodage et leur niveau de complexité. 2539262. A titre d'exemple, on peut concevoir un système o l'image est rafraîchie à la cadence trame du signal télévision, soit 50 par seconde, c'est-à-dire en trans- mettant de façon continue, au rythme d'entrée des pixels, les diverses composantes de classification trichrome basse fréquence et la transformation WH (Walsh-Hadamard) de haute fréquence. Dans ces conditions, on dispose également en permanence à la réception de tous les signaux nécessaires à la reconstruction sans avoir besoin de moyens de stoc- kage important Il en résulte, en contrepartie, un débit numérique relativement élevé parce que redondant dans le domaine temporel. On peut aussi envisager, si la finesse de réso- lution chromatique peut être notablement inférieure à celle de la luminance, d'appliquer une transformation unitaire d'ordre supérieur à 2 au domaine des hautres fréquences de luminance en réunissant par exemple 16 pixels de luminance dans un ensemble 4 x 4 dont la valeur moyenne sera codée avec les composantes chromatiques correspondantes par classification Une autre solution peut aussi consister à conserver la transformation d'ordre 2 et la classification d'une réunion de 4 pixels mais choisis sur la même trame d'analyse entrelacée ce qui évite également la mémorisation. Dans une autre conception préférée, on pourra, au contraire, découper le message entre les deux modes décrits et, par exemple, pendant une trame fournir les composantes de classification, la trame suivante étant affectée à la transmission de l'autre sous-ensemble de composantes HF Si l'on s'arrange pour avoir deux sous- messages de volume équivalent, le débit de transmission est divisé par 2, mais la reconstruction implique l'uti- lisation pendant deux trames de chacun des sous-ensembles qui devront être stockés temporairement Le rafraîchis- sement de l'image est alors celui de la cadence de deux trames soit 25 par seconde. La fenêtre de description f donnée en exemple et constituée de deux lignes contiguëssur l'image (l'une appartenant à la trame paire, l'autre à la trame impaire) permet de respecter, autant que possible, la segmentation. déjà imposée par le balayage d'analyse du standard de télévision, aussi bien dans le temps que dans l'espace, et constitue une version préférée du système de trans- mission On traite ainsi continûment les données au fur et à mesure de leur disponibilité, en parallèle Dar deux opérateurs indépendants appliquée aux 2 domaines basse ftier trid=r et htautefir el Uinie C Ezi pet la plsgrar souplesse dans l'organisation du fôrmat de transmission et, en particulier, permet, sans difficulté, l'attribu- tion du canal de transmission à l'un ou l'autre sous- message alternativement comme indiqué ci-dessus. En outre, lorsque le débit du canal de transmis- sion est suffisant, on peut aussi multiplexér les deux messages pour éviter les mémoires côté réception. Dans la même optique, on peut définir, pour une fréquence de sondage donnée et pour chacun des sous- messages, un paquet de données de structure bien définie et de longueur fixe fournissant dans l'ordre-naturel de succession des pixels, les codes de classification ou les composantes de WH de la ligne d'analyse correspon- dante au numéro du paquet dans la suite des données relatives à une trame complète Cette possibilité garantit une grande sécurité de fonctionnement et pré- sente l'avantage de ne nécessiter aucune régulation de débit en fonction du contenu de l'image. Si la capacité de transmission est suffisante, il peut également s'avérer intéressant de respecter pour chaque paquet le cadencement de l'analyse à fréquence ligne du signal télévision Le volume des blocs mémoire de stockage intermédiaire est ainsi minimisé et l'in- tervalle de suppression de trame est conservé disponible pour d'autres messages tels ceux déjà existants dans le signal analogique. On va considérer, maintenant, les dispositifs pour la mise en oeuvre du procédé de l'invention. Les opérations nécessaires au codage et au décodage d'une image peuvent être effectuées à l'aide de différents moyens selon les contraintes imposées par divers paramètres dont les plus importants sont la ca- dence de fourniture des pixels par le dispositif amont, le volume de composantsélectroniquesacceptable, le ni- veau d'adaptabilité de l'équipement à des variations de paramètres fonction des conditions opérationnelles. On peut, par exemple, si l'on accepte un temps de codage importantenvisager un traitement entièrement effectué par un opérateur unique microprogrammable ou, au contraire, si l'on recherche la rapidité maximale, une combinaison d'opérateurscâblés montés en série- parallèle pour n'introduire aucune attente dans le flux- de données entre chaque opération élémentaire Entre ces deux possibilités extrêmes, toute une gamme de combinai- sonsmixtes peut être envisagée. Comme représenté sur la figure 2, les diverses variantes entrant dans le cadre du procédé peuvent être réalisées à partir de deux sous-ensembles électroniques , Il affectés, l'un 10 à la classification, l'autre 11, à la transformation, et fonctionnant dans deux voies parallèles. Un dispositif 12 d'acquisition et de démultiple- xage, situé en amont, sépare et aiguille, en fonction du temps selon la loi de codage définie, les divers données vers la ou les voies convenables pour leur traitement. Ces données sont fournies par des moyens 13 pour déterminer la fenêtre et pour balayer l'image; ces moyens 13 peuvent comprendre par exemple, une caméra vidéo combinée avec un convertisseur analogique/digital et des moyens de mémoire fournissant des mots de 8 bits correspondant aux caractéristiques Y, R Y, B Y. On peut supposer que les données arrivent aux moyens d'acquisition 12 par un bus à 24 bits fournissant, e la cadence pour chaque pixel les caractéristiques Y, R Y et B Y Ces trois caractéristiques sont nécessaires pour le traitement de classification par 10 de l'espace trichrome alors que seule la première donnée Y inter- vient dans le traitement des hautes fréquences par 11. Dans le cas o seule une classification serait effectuée (sans transformation), le sous-ensemble 10 serait seul à intervenir. En sortie des sous-ensembles 10 et 11,-un or- gane de multiplexage 14 des produits de codage permet de construire le message de transmission. 2539262- En ce qui concerné le traitement de classifi- cation trichrome, l'analyse aes diverses opérations impliquées dans le codage d'une fenêtre fait apparaître deux types de procédures A, B. D'une part, des opérations de type A sont effec tuées au niveau d'un pixel ou d'une réunion(telle que celle représentée sur la figure 3) de pixels, et d'autre part des oprrations dites de type P sont appliquées à la fenêtre dans sa totalité. En outre, ces deux types de procédure doivent être nécessairement effectués successivement car les résultats obtenus dans le premier type A doivent être complètement disponibles avant d'entamer le deuxième de type B Enfin, comme il s'agit de préférence d'un dis- positif itératif au niveau de la fenêtre, il faudra avoir is aussi totalement terminé le premier passage avant de pouvoir entamer le deuxième passage marqué par une nou- velle initialisation des composantes des vecteurs iden- tifiant chaque classe de la fenêtre. Au niveau des moyens pour réaliser ces opéra- tions, on prévoit une cascade d'opérateurs formant une chaîne fonctionnelle continue, en prenant soin de limiter les temps morts entre chacun pour réduire le temps de traitement Corrélativement, si certains opérateurs sont susceptibles d'introduire un ralentissement du débit, on crée avantageusement des chaînes parallèles - à ce niveau pour maintenir un débit de traitement cons- tant. L'utilisation optimale des organes matériels devant être assurée, on recherchera un fonctionnement permanent de tous les opérateurs sans phase inactive. Cela est possible à condition d'effectuer un brassage du flux de données relatives à une fenêtre entre des opérateurs du type -A et des opérateurs du type B en nombres convenables pour tenir compte de leur vitesse de traitement relative Cette organisation conduit à une gestion des moyens telle que la chaine fonctionnelle ne coïncide plus nécessairement avec une chalne matérielle déterminée En particulier, une itération pourra utiliser des opérateurs-différents de ceux du premier passage dans la mesure o ceux-ci ont pu être affectés au trai- tement d' une nouvelle fenêtre. Les figures 4 et 5 donnent deux exemples d'utili- sation optimale des opérateurs de type A et de type B. Dans les deux cas, ces opérateurs ont été pré- V Us de manière à ce que chacun soit capable de traiter une fenêtre en un te Rmps T correspondant à la cadence vidéo. Dans la figure 4, les coefficients servant à initialiser la fenêtre b de l'image i sont les résultats obtenus à l'issue du traitement de la fenêtre précédente (b 1) de la même image i Les opérateurs A fonctionnent donc pour (i,b) pendant un premier intervalle de temps 0,T puis les opérateurs B pendant Lt,21 T puis les opé- rateurs A sur temps, pour l'image i, et le traitement complet de l'i- mage se fait à moitié de la cadence temps réel Les 50 % de temps restant peuvent être utilisés pour traiter une autre image,i + 1 par exemple La seule précaution con- siste à décaler les traitements de i et de i + 1 de ma- nière à ce que l'initialisation des coefficients pour la première fenêtre de chaque inage puisse utiliser les résultats de la première fenêtre de l'image précédente On traite donc deux images simultanément à demi cadence temps réel ce qui équivaut au traitement d'une image en temps réel. Une mémoire tampon est nécessaire dans ce mode. Dans la figure 5, les coefficients servant à initialiser la fenêtre 2 de l'image i+l sont les résultats obtenus à l'issue du traitement de la même fenêtre b sur l'image i, La fenêtre (i, b) est traitée successivement par A puis par B et les résultats sont mémorisés jusqu'à 1 ' arrivée de la fenêtre (i + 1, b). Il convient de noter que ce deuxième mode se prête à un traitement parallèle, bien adapté à l'emploi de processeurs microprogrammables En effet, la seule con- trainte de temps tient au fait que le résultat des étapes A et B sur (i, b) doit être disponible avant l'arrivée de (i + 1, b) A la limite, il peut donc y avoir autant de chaînes de traitement A + B indépendantes qu'il y a de fenêtres dans une image, chacune traitant -une fenêtre pendant le temps d'une image Plus généralement, s'il y a a fenêtres dans une image, on peut concevoir q chaînes k indépendants de type A, q chaînes indépendantes de type k' B, sans que k et kt soient nécessairement identiques (voir figure 6 >, En se reportant à la figure 7, on peut voir le schéma synoptique de fonctionnement du sous-ensemble de classification désigné par 10 sur la figure 2 La pro- gression s'effectue du haut en bas de la fig 7, entre un bus d'entrée 15 et un bus de sortie 16 Après acqui- sition des données relatives à une réunion de-pixels (selon la Fig 3 par exemple), les moyennes des luminances et chrominances sont calculées Il y a ensuite calcul des distances de l'extrémité du vecteur, ayant pour compo- 2539262- santes ces valeurs moyennes, aux-extrémités des vecteurs identifiant les classes qui ont été initialisées Chaque point est rangé dans la classe correspondant à la plus faible distance (regroupement) Les points de chaque classe sont comptés (histogrammes) On passe ensuite à l'opération B concernant toute la fenêtre. Les barycentres de chaque classe sont calculés (barycentres) puis les variances de chaque classe (va- riances). Il y a ensuite un test de classe vide On pro- cède à la détection de la ou des classes dans lesquelles aucun point n'a été rangé. Si au moins une telle classe existe, on effec- tue une "séparation", consistant en une création de nou- velles classes par dédoublement de la classe ayant la *plus grande variance. Ceci est obtenu automatiquement en définissant, à partir du barycentre de cette classe ayant la plus grande variance, deux valeurs d'initialisation diffé- rentes symétriques ët distantes d'au moins un pas de quantifica- tion en plus ou en moins dans toutes les directions. On a ainsi deux valeurs nouvelles qui définissent nécessairement deux classes indépendantes au cours de l'itération postérieure. L'opération est renouvelée s'il existe encore une classe vide après le premier dédoublement. On est ainsi assuré d'utiliser, pour chaque fe nêtre, la totalité des classes disponibles et cette pré- caution est une source d'amélioration sensible des performances du système. Les nouvelles composantes des vecteurs identi- fiant les classes sont utilisées pour une nouvelle initialisation en vue d'une itération. Si aucune classe n'est vide, on procède à un test de seuil 50 pour décider s'il y aura, ou non, une itération Par exemple, ce test de seuil peut con- 2539262-. sister à effectuer la somme des variances de chaque classe et à comparer cette somme à une valeur prédéter- minée S Si la somme des-variances est supérieure à SO, une opération d'itération est commandée. Si la somme des variances est inférieure ou égale à S Ot la classification est considérée comme satisfaisante et il y a transfert des codes, dans l'ordre des pixels, et transfert du dictionnaire des classes, par le bus de sortie 16 vers un système d'utilisation par exemple un système de transmission ou un système de stockage. On a étudié, sur divers matériaux la convergen- ce de la classification en fonction des divers para- mètres qui interviennent dans les performances du servo- mécanisme que constitue l'algorithme décrit (gain de boucle, constante d'intégration, erreur résiduelle) Il apparait qu'à partir d'une initialisation uniforme ar- bitraire, et sans aucune itération sur chaque fenêtre, il faut traiter une dizaine de fenêtres successives, chaque fenêtre fournissant le sous-ensemble d'initiali- sation de la suivante, pour obtenir un "régime permanent" caractérisé par une erreur quadratique moyenne de re- construction relativement stable. Si cette manière de procéder peut être envisa- gée lorsqu'on traite un message continu d'un grand nombre de fenêtres successives dont les premières peuvent sup- porter des erreurs importantes, elle semble exclue dans le cas d'imagés répétitives du genre télévision o l'on recherche une qualité identique sur la totalité de l'image. On prévoit donc, comme déjà signalé, d'une part l'initialisation à partir de la ligne ou de l'image pré- cédente mais aussi, pour chaque fenêtre, une phase d'a- daptivité consistant à calculer, après le premier pas- sage, les barycentres des points de chaque classe de la fenêtre pour itérer le processus et affiner encore la classification On a constaté que l'erreur quadra- tique de reconstruction diminue après la première itéra- tion et se stabilise après 2 ou 3 itérations, selon la variabilité de l'image. La contrepartie de ces opérations d'itération est l'augmentation par un facteur 2, 3 ou 4 du temps de traitement puisqu'il faut traiter chaque fois la fenêtre complète avant de pouvoir entamer une nouvelle itération On recherchera un compromis acceptable entre la précision et le temps nécessaire pour l'obtenir. Les systèmes de transmission utilisés, à partir du bus 16, doivent respecter un format permettant de retrouver, dans le flux de données, les codes de chaque réunions particulières de pixels d'une fenêtre et le dic- tionnaire correspondant La solution la plus simple consiste à fournir, d'une part, la suite des codes dans l'ordre de succession des pixels dans la fenêtre, c'est-à-dire le long de la ligne d'analyse TV et, d'autre part, les valeurs des composantes de chaque classe par exemple dans l'ordre des codes croissants. On obtient ainsi des paquets de longueur fixe qui pourront être facilement reconnus et traités dans l'opérateur de décodage. Un autre avantage de cette organisation du mes- sage réside dans l'indépendance totale des fenêtres entre elles, enparticulier au niveau des codes et du dictionnaire Toute erreur n'affecte donc qu'un seul pixel si elle porte sur les codes et n'affecte qu'une seule fenêtre si elle porte sur le dictionnaire On peut donc présager une bonne protection contre la propagation des erreurs En outre,une procédure de protection simple du dictionnaire, sans correction des erreurs, est suf- fisante si l'on accepte,en cas de'détection d'erreur, d'utiliser le dictionnaire de la fenêtre précédente qui présente de grandes analogies du fait de la méthode d'initialisation et de la corrélation spatiale entre fenêtre. En se reportant aux figures 8 à 12, on peut voir des exemples de circuits pouvant constituer les opérateurs élémentaires désignés sur la figure 7. La figure 8 montre un opérateur pour effectuer l'acquisition des données et le calcul des moyennes -Les données d'entrée étant supposées fournies avec un échan- tillonnage de 8 bits, le bus d'entrée 15 ou bus de données comporte 9 fils ( 8 fils pour les bits de données et 1 fil pour 1 bit de validation) par canal Dans le cas de trois canaux, le bus 15 comporte donc 27 fils. Les fils du bus alimentent un accumulateur 17 que l'on charge à la demande lorsqu'apparaissent les va- leurs relatives au pixel courant, ces valeurs venant d'un convertisseur analogique digital ou d'une mé- moire de trame précédemment chargée Il y a autant d'ac- cumulateurs 17 que de canaux; dans l'exemple considéré, de la télévision en couleurs à trois canaux, il y a donc 3 accumulateurs 17 correspondant auxcomposantes Y, B Y et R Y Chaque accumulateur 17 fait la sommation des radiométries qui le concernent, pour 4 pixels de types 0, 1, 2 et 3 tels que représentés sur la figure 3. Dans le cas représenté sur la figure 8, l'accu- mulateur 17, situé le plus à gauche, destiné à la compo- sante Y est à 10 bits en sortie, tandis que les deux autres accumulateurs affectés aux deux autres compo- santes B Y et R Y sont à 9 bits en sortie. Un décalage (shift) de bits permet de délivrer les valeurs moyennes du pixel courant i dans des registres 18 o s'inscrivent donc les valeurs Y Mi (B Y)mi, (R Y)Mr La figure 9 montre un opérateur "distance", des- tiné à calculer, pour chaque pixel i les valeurs: 2539262. 2 = (Y Yk 2 DR 2 l(R Y)i (R -Y) DB 2 l(B Y Y et à faire leur somme qui est égale au carré de la distance de l'extrémité du vecteur représentant le pixel i au barycentre de la classe k. Les valeurs des quantités Yk' (R Y) k (B Y)k sont fournies à partir de la mémoire d'initialisation 19 (Fig 7)sous fornecomplémentée à 3 accumulateurs distincts , affectés à chacun des 3 canaux, accumulateurs qui reçoivent également les valeurs Y Mi(R Y ç et (B Y)>M Une table de conversion "carré", notamment formée. par une mémoire PROM, est alors lue à l'adresse fournie par la différence donnée à la sortie de chaque accumu- lateur 20; la table de conversion 21 fournit sur sa sortie la valeur du carré correspondant, c'est-à-dire 2 2 2 les valeurs respectives Dy, DR t DB On effectue alors dans un dernier accumulateur 22, la somme des carrés re- latif aux 3 canaux; cette somme est chargée dans un registre 23. Selon la cadence de fourniture des données et la rapidité des circuits utilisés on pourra effectuer ces calculs pour chacune des 32 classes en série ou en pa- rallèle ou toute combinaison série-parallèle envisageable, l'objectif étant de disposer pour l'opérateur suivant de 32 registres tels que le registre 23, chargés par les distances relatives aux 32 classes initialisées. La figure 10 donne un schéma d'un opérateur pour effectuer le regroupement des points Cet opérateur est destiné à déterminer, à partir des 32 distances calculées par l'opérateur de la figure 9, laquelle est la plus faible; cet opérateur doit également designer cette distance par le code de la classe correspondante. 2539262. Avantageusement, on associe à la valeur de chaque registre distance (tel que le registre 23 de la fig 9), bits supplémentaires de poids faible, caractéristiques de la classe concernée par la distance; sur la figure 10 on a représenté, schématiquement,par un grand rectangle les valeurs des distances Dl, D 2 et par un petit le code de la classe, rectangle contigu /numérote 1, 2 et situé immédiate- ment à droite des grands rectangles Un premier étage de comparateurs 24 est prévu pour effectuer la comparai- son 2 à 2 de toutes les distances, ce qui donne 16 ré- sultats sur les sorties des comparateurs 24, correspon- dant au plus faibles valeurs des deux termes comparés. Un deuxième étage de comparateurs 25 permettra de réduire à 8 distances le résultat de la comparaison et de proche en proche, avec le troisième étage de comparateur 26 et le quatrième étage de comparateur 27, on aboutit à un cinquième étage formé par le seul comparateur 28 qui délivre, sur sa sortie, la plus courte des 32 dis- tances,et le code j de la classe correspondantt. D'autres montages permettant de réduire soit le temps de traitement, soit le volume de matériel nécessaire, seraient également Possiblespour aboutir au même résultat. La figure 11 est un schéma d'un circuit pour réaliser les histogrammes Cette étape qui fait encore partie des opérations de type A, parce qu'actionnée dsoSati 1 ons à chaque nouveau pixel, est la préparation e ype B. Elle permet d'effectuer, pour chaque canal (pratique- ment dans 3 opérateurs parallèles) la sommation des ra- diométries des pixels de chaque classe, et dans un qua- trième opérateur parallèle, la sommation des carrés des distances minimum correspondantes; il y a en outre incré- mentation d'un compteur de pixels par classe. Chaque opérateur comporte un sélecteur 29 à une entrée et 32 sorties qui aiguille le contenu d'un registre 30 chargé par la donnée radiométrie ou distance : 539262 du pixel courant vers l'un des accumulateurs 31 d'un banc de trente deux accumulateurs, ledit accumulateur étant sélectionné par le mot de code affecté aux pixels. Simultanément l'un des trente deux compteurs C de pixels est incrémenté d'une unité En fin de fenêtre, chacun des 4 accumulateurs de classe ( 3 accumulateurs pour les ca- ractéristiques Y, R Y et B Y, et un accumulateur pour la distance), et chaque compteur corres- pondant, eût interrogé pour charger 5 registres "somme" effectivement affectés aux radiométries Y, R Y, B Y, aux distances et au nombre de pixels de la classe. Le figure 12 montre le schéma d'un opérateur pour le calcul des barycentres et des variances Il s'agit d'effectuer un calcul systématique, en fin de fenêtre, des coordonnées du nouveau barycentre de chaque classe à partir des radiométries des pixels qui la composent. Suivant le temps dont on dispose, on pourra envisager diverses solutions allant de l'opérateur unique traitant successivement toutes les classes, à N opérateurs tra- vaillant en parallèles pour 32 classes avc N = 2, 4, 8, n 16 ou 32. Le calcul des coordonnées du barycentre consiste à diviser les sommations des radiométries par le nombre des pixels de-la classe. Pour cela, on prévoit une table 32 de conver- sion des inverses, cette table 32 est adressée à l'aide du nombre de pixels de la classe, et la table 32 fournit sur sa sortie l'inverse du nombre qui est appliqué à un multiplieur 33 recevant sur son autre entrée le contenu de l'un des registres de radiométrie Le résultat fourni à la sortie du multiplieur 33 est la coordonnée du barycentre correspondant. Le calcul de la variance de chaque classe est effectué similairement par un opérateur de structure identique à celui qu'on vient de décrire, à partir du registre "somme des carrés des distances" dont on divise le contenu par le nombre de pixels de la classe Ce ré- sultat est obtenu à l'aide d'un multiplieur 34 dont l'une des entrées reçoit la somme des carrés des distances et l'autre entrée l'inverse du nombre de pixels. Si l'on détecte une classe vide, par exemple par l'identité des bits du nombre à zéro, on effectuera, en outre, une comparaison des variantes de toutes les classes pour rechercher celle de variance maximale qui sera dédoublée Cette recherche est effectuée de la même façon que l'on a, au regroupement, trouvé la plus courte distance L'opérateur aura une structure semblable è celle représentée de la figure 10, de comparateursétagés; toutefois, dans le cas de la recherche de la variance maximale, on sélectionnera le résultat le plus grand au lieu de sélectionner le résultat le plus faible dans le cas du regroupement décrit avec référence à la figure 10. Le code de la classe correspondant à la plus forte va- riance est utilisé pour sélectionner les valeurs des coordonnées du barycentre que l'on modifie par addition et soustraction d'un pas ou plus pour générer deux nouveaux barycentres séparés. L'opération d'initialisation consiste à trans- férer les valeurs des radiométries de barycentre Yk# (R Y)k (B Y) dans une mémoire d'initialisation 19 (figure 7) constituée de trois bancs de 32 cellules à 8 bits qui serviront à l'opérateur "calcul de distances". aussitôt qu'une nouvelle classification (ou itération) sera nécessaire. Il est à noter, toutefois, que l'initialisation de la première fenêtre d'une nouvelle image (partie haute) proviendra d'une autre mémoire d'initialisation identique à la précédente Il suffit qu'elle ait été chargée lors de la classification de l'image précédente par les résultats de la première fenêtre de cette image; la corrélation temporelle entre imagespermettra générale- ment d'obtenir un bon résultat. Naturellement, cette procédure peut aussi être appliquéeà tous les blocs de l'image si l'on dispose d'une mémoire d'initialisation de capacité suffisante pour stocker l'ensemble des dictionnaires obtenus lors de la classification de l'image précédente. En se reportant à la figure 13, on peut voir une représentation schématique des moyens qui assurent, à la réception, le décodage des informations issues des opérations A et B de classification Ces moyens de décodage peuvent être réalisés très simplement à partir de trois mémoires 35,36,37,respectivement chargées, à des adresses progressivement croisaantes, par les compo- santes YM (R Y)M et (B Y)M de chaque classe fournie par le dictioanire sçpé transnis suivant 1 'ordre cssànt ces casses Chsqpe c de pixel re aet applicau bus d'a&esse 38 et pxrovoe elae des vales des cancsmntsorie aats& chdun e ds mémoires 35, 36, 37 On obtient ainsi, les radiométriede chaque groupe de pixels qui seront utilisées pour constituer chaque pixel du groupe après combinaison avec le résultat du décodage des composantes hautesfréquencesde Y. Le codage de 4 échantillons de luminance par transformation de Walsh-Hadamard peut être effectué par un opérateur simple représenté sur la figure 14 et consti- tué d'accumulateurset d'un complémenteur. Il convient de calculer les quantités WH 1, WH 2 et WH 3 déjà indiquées: WH 1 = 1/2 (Y y y WH 2 = 1/2 (Y 2-3 Y oY O +1) WH 3 = 1/2 (Y 2 Y 3 +Y O Y 1) Ces quantités peuvent s'exprimer à partir de la quantité YM WH 10 = 1/2 (Y O +y 1 +y 2 +y 3) par WH 1 Y 2 + Y 3 H O WH= y 2 + y WH O WH 3 =y 2 + Y 0 WH O Le bus d'entrée 39 délivrant successivement les valeurs de radiométrie Y à cadence régulière, les calculs peuvent être effectués à l'aide de l'opérateur dont le schéma est donné sur la figure 14. A partir du bus de donnée 39, un registre à verrouillage 40 est chargé successivement par les valeurs à 8 bits de luminance Y 0, Y 1, Y 2, y 3 des 4 pixels du groupe. Ces valeurs sont transférées à des accumulateurs 41, 42, 43, 44, en parallèle mais sélectivement sous l'effet des commandes d'activation Ai, A 2, A 3, A 4 La commande Ai permet l'accumulation des 4 radiométries dans l'accumulateur 41 alors que les accumulateurs 42, 43 et 44 ne sont activés que pour Y 2 et Y 3, Y 2 et Y 1 et Y 2 et Y 0 respectivement Dans une dernière phase, le résultat de l'accumulateur 41 est transféré, à travers le complémenteur C-, vers les entrées des 3 autres accumu- p lateurs pour effectuer les soustractions de WH On dis- pose alors sur les sorties des accumulateurs des coeffi- cients recherchés qui sont alors appliqués à un dispo- sitif de classification analogue à celui déjà décrit pour les composantes trichromes basse fréquence On obtient, en définitive, 3 codes de classes WE 1, WH 2 et WH et un dictionnaire relatif aux valeurs moyennes de chaque code d'une fenêtre de traitement. A la réception, deux opérations sont nécessaires pour retrouver les valeurs des radiométries En premier lieu, on doit effectuer l'opération de déclassification c'est-à-dire retrouver pour chaque groupe de pixels la valeur des coefficients de WH qui lui sont affectés par les trois codes reçus Ceci est effectué par un opérateur identique à celui de la figure 13, les trois mémoires étant ici affectées à WH 1, WH 2 et WH 3 chargées à partir du dictionnaire, mais avec la différence que chaque code étant spécifique n'adresse plus qu'une seule mémoire parmi les trois pour effectuer la lecture des coefficients correspondants. On doit ensuite combiner ces coefficients avec YM obtenu lors du décodage de l'espace trichrome qui joue le r 8 le de WHO O selon les combinaisons bien connues de la transformation de Walsh-Hadamard: Y O = 1/2 (W Ho WH 1 WH 2 + WH 3) Y 1 = 1/2 (W Ho WH 1 + WH 2 + WH 3) Y 2 = 1/2 (w Ho + WH 1 + WH 2 + WH 3) Y 3 = 1/2 (WHO + M 1 WH 2 WH 3) Comme précédemment, on remarque que ces quan- tités s'obtiennent à partir de Y 2 par Yo = WHR +W 3 -Y 0 O 3 2 Y 1 = W Ho + WH 2Y 2 Y 3 = W Ho + WH 1 Y 2 Ceci permet d'utiliser pour ce calcul un opéra- teur identique à celui de la figure 14 et fonctionnant de la même manière à la différence près que Y 2 est aussi transféré sur le bus de sortie pour définir la radio- métrie du 4 ème pixel. On a ainsi reconstitué le message initial de chaque fenêtre par les composantes de -la réunion de pixels Y, Y 0, Y Y 2, Y 3 (R Y)M et (B Y)M' L'exemple d'application décrit concernait la télévision en couleurs; toutefois, l'invention s'applique également à la télévision noir et blanc en définissant comme on l'a indiqué précédemment des canaux indépendants à partir d'un arrangement spatial des pixels au lieu d'une sélection spectrale. L'invention peut s'appliquer à de nombreux autres domaines par exemple pour-le traitement d'images couleurs dans le domaine ac cassettes ou analogues. La transformation unitaire utilisée pour coder les pixels d'une réunion, du type de celle de la figure 3, aura un ordre convenable au nombre de pixels de la réu- nion et pourra-être choisie parmi toutes celles décrites dans la littérature (Walsh-Hadamard, Slant, cosinus, Fourier, Faar, KarhuhenLoeve) selon les critères considérés comme les plus importants (facilité de calcul, rapidité,aptitude à la compression). 2539262. REVENDICATIONS 1 Procédé de codage numérique d'une image, notamment une image de télévision, composée-de pixels (points élémentaires,ou pels) régulièrement répartis dans le plan de l'image, auxquels sont attribuées une ou plusieurs qualités radiométriques dénommées compo- santes Ci, ces composantes pouvant être notamment for- mées par les mesures des radiométries de chaque pixel dans N canaux spectraux fournies par des capteurs ap- propriés, caractérisé par le fait: que l'on détermine, dans l'image, des fenêtres (f) ayant une forme géométrique prédéterminée et comprenant un certain nombre de pixels (p) que l'on effectue, pour chaque fenêtre, des regroupe- ments enclasses (Rl, R 2) de radiométries (spec- trales ou spatiales) des extrémités des vecteurs repré- sentatifs des pixels ou de combinaisonsde pixels de l'image dans l'espace à N dimensions,selon un critère de proximité que l'on définitpour chaque classe (Rl, R 2) à partir des valeurs individuelles des pixels qui la constituent, N radiométries typiques qui seront stockées ou transmises pour être utilisées à la re- construction de l'image que l'on stocke ou transmet également, pour définir chaque pixel,un code caractéristique de la classe (Rl, R 2) à laquelle il appartient, permettant de lui affecter les radiométries typiques correspon- dantes pour la reconstruction de l'image. 2 Procédé selon la revendication 1, caractérisé par le fait que l'on effectue un traitement de haut-es fréquences spatiales,généralement panchromatiques,par une transformation unitaire dont l'un des coefficients, celui de la valeur moyenne correspondant à des fréquences spa- tiales plus basses, est associé aux composantes de canaux spectraux différents pour traitement par une classifica- tion complémentaire. 3 Procédé selon la revendication 2, pour le codage numérique d'une image multispectrale, notamment une image de télévision en couleurs caractérisé par le fait qu'on réunit plusieurs pixels ( 0,1, 2, 3) et que l'on détermine, pour chaque réunion, une valeur moyenne des composantes de luminances (YM) et de chro - minance (R Y 3 M (B à partir de chaque composante de chaque pixel de la réunion lu qu'on effectue les opérations de classification sur ces valeurs moyennes qui sont stockées ou transmises et que, pour une reconstruction de tous les pixels, on applique une transformation linéaire aux signaux de luminance (Y) de chaque pixel, cette transformation linéaire permettant de réduire le volume d'informationset que, lors de la reconstitution del'image, on effectue une expansion d'information en déduisant, à partir des valeurs moyennes et des valeurs transformées, des valeurs pour chaque pixel de la réunion. 4 Procédé selon la revendication 2 ou 3, carac- térisé par le fait que l'on traite les données d'une fenêtre en parallèle par deux opérateurs appliqués à deux domaines l'un basses fréquences (trichrome) et l'autre hautes fréquences (luminance). Procédé selon l'une quelconque des reven- cations précédentes, caractérisé par le fait que le critère de proximité est constitué par la distance dans l'espace à N dimensions entre l'extrémité du vecteur représentatif d'un pixel et l'extrémité d'un vecteur représentant une classe; qu'on établit, pour chaque fenêtre (f) plusieurs classes (Rl, R 2) identifiées par un vecteur dont les N composantes corrrespondent à des valeurs prédéterminées des radio- métries pourchaque canal de l'image; que l'on calcule, pour chaque pixel, la distance dans l'espace à N dimensions entre l'extrémité du vecteur représentatif de ce pixel et l'extrémité de chaque vecteur représen- tant une classe; que l'on compare les distances ainsi obtenues pour chaque pixel; que l'on range ce pixel dans la classe correspondant à la distance obtenue la plus fainle; et que l'on stocke ou trans- met, d'une part, pour chaque pixel, un code per - mettant d'identifier la classe o il a été rangé et, d'autre part, un dictionnaire donnant,pour chaque classe, les composantes des vecteurs représentant cette classe, obtenues par calcul à partir des diffé- rents pixels lui appartenant. 6 Procédé selon l'une quelconque des reven- dications précédentes, caractérisé par le fait que la fenêtre (f) est constituée par au moins une ligne de pixels (p) del'image. 7 Procédé selon l'une quelconque des re- vendications précédentes, caractérisé par le fait qu'il comporte une phase d'adaptativité par itération sur la fenêtre et selon laquelle pour une fenêtre dé- terminée, après avoir effectué une première classi- fication des pixels, dans des classes prédéterminées, et après avoir calculé, pourchaque classe, des radio- métries typiques à partir des valeurs individuelles des pixels constituant cette classe, on effectue une nouvelle classification de chaque pixel dans les nouvelles classes, ainsi déterminées, cette opération d'itération étant répétée autant de fois que neces- saire pour obtenir une précision prédéterminée 8 Procédé selon l'une quelconque des revan- dications précédentes, caractérisé par le fait qu'il comporte une phase d'initialisation des classes à partir des résultats de calculs antérieurs. 9 Procédé selon la revendication 8, carac- térisé par le fait que pour l'initialisation des classes d'une fenêtre, on utilise les résultats des 253926 a calculs effectués sur la fenêtre immédiatement précé- dente. Procédé selon la revendication 8, caractérisé par lefait que pour l'initialisation des classes d'une fenêtre, on utilise les résultats des calculs antérieurs portant sur la mêmes fenêtre de l'image précédente dans le temps. 11 Procédé selon l'une quelconque des reven- dications précédentes, caractérisé par le fait que le nombre de classes pour une fenêtre est fixe, notam- ment égal ou supérieur à 32. 12 Procédé selon l'une quelconque des revendica- tions précédentes, caractérisé par le fait que l'on détecte la présence éventuelle de classes vidés, dans lesquelles aucun pixel n'a été rangé et que, si au moins une telle classe vide existe, on effectue une séparation consistant en une création de nouvelles classes par dé- doublement d'une classe, notamment celle ayant la plus grande variance. 13 Procédé selon l'une quelconque des revendica- tions précédentes, caractérisé par le fait que l'on utilise une métrique non linéaire dans l'espace de classification. 14 Procédé selon l'une quelconque des revendications précédentes, caractérisé par le fait que l'on effectue des calculs pixel par pixel (opérateur A) et que l'on effectue des calculs traitant globalement les résultats d'une fenêtre (f) (opérateur B). 15 Procédé selon la revendication 2, caractérisé par le fait qu'on applique la transformation linéaire aux luminances d'une réunion de pixels. 16 Procédé sélon la revendication 15, caractérisé par le fait que la transformation linéaire est une transformation unitaire. 2539262. 17 Procédé selon la revendication 16, caractérisé par le fait que les coefficients de la transformation sont quantifiés selon une loi non linéaire adaptée à chaque fenêtre. 18 Procédé selon la revendication 17, caractérisé par le fait que l'adaptation est obtenue par classification de chaque coefficient. 19 Dispositif pour la mise en oeuvre d'un procédé selon l'une quelconque des revendications précédentes, caractérisé par le fait qu'il comprend: des moyens ( 13) pour déterminer une fenêtre dans l'image et pour balayer toute l'image par cette fenêtre, des moyens d'acquisition et d'aiguillage ( 12) des va- leurs relatives à chaque point élémentaires d'une fe- notre; un sous-ensemble électronique de classification ( 10) comprenant des moyens ( 20, 21, 22) de calcul des dis- tances de l'extrémité du vecteur correspondant à un point élémentaire ou à un point moyen de la réunion de plusieurs points élémentaires, aux extrémités des vec- teurs identifiant chaque classe; des moyens comparateurs ( 24 28) permettant de ranger chaque point élémentaire ou chaque point moyen dans la classe correspondant à la plus faible distance calculée; et des moyens de calcul ( 29, 31, 32, 33) des composantes du vecteur identifiant une classe à partir des différents points lui appartenant, la sortie du dispositif étant reliée à des moyens de transmission ou de stockage des données de sortie. Dispositif selon la revendication 19, caracté- risé par le fait qu'il comporte un second sous-ensemble électronique ( 11) affecté à la transformation, les deux sous-ensembles ( 10, 11) fonctionnant dans deux voies parallèles. 21 Dispositif selon la revendication 19 ou 20, caractérisé par le fait que les moyens de calcul des distances de l'extrémité du vecteur aux extrémités des vecteurs identifiant chaque classe comprennent, pour chaque canal, un accumulateur ( 20) fournissant, sur sa sortie, la différence entre deux composantes (Y Mi y une table de conversion "carré" ( 21) propre-à fournir le carré de cette différence; et un autre accumulateur ( 22) propre à effectuer la somme des carrée. 22 Dispositif selon l'une quelconque des reven- dications 19 à 21 caractérisé par le fait que les moyens de calcul des composantes du vecteur identifiant une classe, à partir de différents points lui appartenant, comprennent un sélecteur ( 29) qui aiguille le contenu d'un registre chargé par une donnée vers un des accu- mulateurs ( 31) d'un banc d'accumulateurs, et un compteur (C) du nombre de pixels par classe. 23 Dispositif selon l'une quelconque des revendi- cations 19 à 22, caractérisé par le fait qu'il comporte un opérateur de décodage comportant des mémoires ( 35, 36, 37) respectivement chargées, à des adresses progressive- ment croissantes, par les valeurs lYM,(R Y)M' (B Y)MI de chaque classe fournie par le dictionnaire, le bus d'adresses ( 38) de ces mémoires recevant le code de chaque classe et celui de chaque pixel à la lecture. 24 Dispositif selon l'une quelconque des revendications 19 à 23, caractérisé par le fait qu'il comprend, pour le codage d'une réunion d'échantillons de luminance par une transformation, (notamment de Walsh-Hadamard) un opérateur constitué d'accumulateurs ( 41, 42, 43, 44) et d'un complémenteur (Cp).