Brevet FR2711030A1 — publié le 19950414

L'invention concerne un système constituant une chaîne de traitement d'images numérisées. Elle concerne notamment l'application d'un tel système à la compression- décompression de telles images, en vue par exemple de transmissions numériques bas débit, et à un dispositif d'auto-focalisation pour caméra vidéo. En traitement d'image, les traitements sont effectués sur des images réelles, prises par difféÉents dispositifs tels que caméra, scanner, capteur à rayon X, etc. Le but du traitement d'image est d'agir sur ces images numérisées afin d'en ex- traire les informations et paramètres utiles. Ces informations et paramètres sont utili- sés à des fins d'analyse, de calculs scientifiques, ou encore réinjectées dans une chaîne d'automatismes (automatisation de processus industriels, de transmission de l'image). La quantité de données à manipuler et la complexité des calculs souvent répétitifs font appel à une puissance de calcul importante notamment lorsque le temps réel est requis. La taille d'une image en noir et blanc de 512x512 pixels sur 256 niveaux de gris est de 256 Koctets. Plus de 32 secondes sont alors nécessaires pour trans- mettre une telle quantité d'information par un réseau de transmission public de type RNIS (Réseau Numérique à Intégration de Services). Pour des séquences animées la quantité d'information est multipliée par le nombre d'images à acquérir par seconde. Tout système de transmission d'images doit être en mesure d'acquérir, de traiter, de transmettre et de visualiser des séquences d'images numérisées dans un temps limité. Les contraintes de temps réel varient avec le domaine d'application. Pour un service de télévision, 25 images par seconde sont nécessaires. Par contre pour des applications telles que la visiophonie ou la télésurveillance, quelques images suffisent, typiquement entre 10 et 15 images par seconde. Des dispositifs de codage bas débit ont été mis au point ces dernières an- nées. La plupart des méthodes utilisées mettent en oeuvre des techniques de com- pression d'images pour limiter au maximum la quantité d'informations transmises. On tire profit du fait que beaucoup d'informations sont redondantes à l'intérieur d'une même image et d'une image à l'autre. Une des méthodes couramment utilisées dans le domaine de la compression d'image fait appel à un algorithme mathématique connu 2 2711030 sous la dénomination française de TCD ou Transformation Cosinus Discrète. Elle est également connue sous le sigle anglo-saxon de DCT. Dans ce qui suit, par mesure de simplification, le sigle abrégé TCD sera utilisé pour "Transformée en Cosinus Discrète". En général, on procède sur un bloc de l'image et non sur l'image entière. La transformée TCD est une transformée orthogonale. Le principe de la TCD est le suivant: Pour chaque bloc de NxN pixels, on calcule la TCD qui est fournie par la formule ci-dessous: 4.c(u)c(v)- N- I f() (2x + )uor (2y+)Vn' F(u,v)-., f (X.Y)cos.cos N I) o 2N 2N x=O y=0O c(u) = 1/ X si, = 0 c(u)=1 siu=1, 2.....N-1 f(x,y) représente la luminance du pixel au point (x,y) dans l'image et F(u,v) représente le coefficient de Transformée au point (O, v), avec u et v allant de O à N-1. Pour chaque pixel d'un bloc d'image, par exemple de dimension 8x8, on calcule à l'aide de cette fonction un nombre qui est l'élément de la matrice résultat: la matrice des coefficients. La TCD d'un bloc donné représente les fréquences spatiales. Ainsi un bloc uniforme donc de fréquences spatiales faibles donne un bloc de coeffi- cients de la TCD dont l'essentiel est le coefficient F(O,O), soit la moyenne des lumi- nances du bloc. Les autres coefficients sont proches de zéro. La Transformée en Cosinus Discrète est entièrement symétrique. On peut reconstituer le bloc image initial à partir de la matrice des coefficients en lui appliquant une TCD inverse. Le processus complet TCD directe-TCD inverse est représenté schéma- tiquement par le bloc-diagramme de la figure 1 annexée. Un bloc Bxy d'une image source IS est transformé en coefficients TCD: COxy, par un dispositif TCDD effec- tuant la TCD directe et, en sens inverse, on reconstitue le bloc initial Bxy de l'image source IS par un dispositif TCDI effectuant la TCD inverse. Pour fixer les idées, une image noir et blanc de 256 lignes de 256 pixels sur 256 niveaux de gris contient 1024 blocs de 8x8 pixels et la TCD d'un bloc de 8x 8 pixels (représentés par un mot de 8 à 10 bits) se calcule en faisant une double TCD, la première sur les lignes (ou les colonnes) et la seconde sur les colonnes (respectivement sur les lignes) du résultat. Ceci se traduit par deux multiplications successives de matrices de 8x8 éléments, soit au total pour les deux multiplications 3 2711030 de matrices, 1024 multiplications et 896 additions sur des nombres entiers. Il faut donc 1,05 millions de multiplications et 0,92 millions d'additions. On conçoit donc que, si les techniques de compression d'images permet- tent bien de réduire fortement le débit des transmissions d'informations, il est par contre nécessaire de mettre en oeuvre des moyens de calcul très rapides et très puis- sants. Pour accélérer les calculs, comme il est bien connu, on peut penser faire appel à des techniques de traitement parallèle. Cependant, il est également nécessaire d'obtenir ou préserver d'autres caractéristiques techniques telles que simplicité, déve- loppement aisé des programmes informatiques nécessaires au bon fonctionnement des organes de calcul quels qu'ils soient, portabilité de ces programmes, calculs en temps réel, coût raisonnable, etc.. L'invention se fixe pour but un système de traitement d'images numéri- sées satisfaisant simultanément les exigences rappelées ci-dessus. Pour ce faire, l'invention prévoit un système de traitement d'images nu- mérisées doté d'une architecture parallèle présentant les particularités suivantes: Selon une première caractéristique de l'invention, les processeurs de base sont du type connu sous l'appellation anglo-saxonne de TRANSPUTER ou d'un type analogue. Un TRANSPUTER est un microprocesseur spécialisé, c'est-à-dire dédié, à très haute intégration ou VLSI ("Very Large Scale Intégration") selon le sigle anglo- saxon couramment utilisé. C'est un circuit en général monoboitier et réalisé actuelle- ment en technologie CMOS. Il comprend notamment une unité centrale, une mé- moire locale propre et des liens de communication bidirectionnelle à haute vitesse. L'architecture de l'unité centrale, c'est-à-dire du processeur local, est du type RISC ("Reduced-Instruction-Set Computer"), c'est à dire à jeu d'instructions réduit. Il permet de réaliser, en parallèle, des calculs et des communications sans logique ex- térieure. Selon une deuxième caractéristique de l'invention, dans un mode de réa- lisation préféré, on utilise également, pour calculer la TCD, un circuit intégré spécia- lisé, disponible dans le commerce. Selon une troisième caractéristique de l'invention, le système comprend au moins un premier TRANSPUTER, destiné notamment à l'acquisition de l'image et/ou à sa reconstitution, et un deuxième TRANSPUTER, ou TRANSPUTER de traitement des blocs de coefficients TCD. Enfin selon une des caractéristiques principales de l'invention, les pre- miers et deuxièmes TRANSPUTERS communiquent entre eux par un des liens de 4 2711030 communication bidirectionnelle dont ils sont dotés et les circuits spécialisés de calcul de TCD sont intercalés entre ces deux TRANSPUTERS, disposés sur le lien précité. Outre les données numériques circulant entre les deux TRANSPUTERS sur le lien de communication bidirectionnelle, celui-ci transmet également des ins- tructions de commande aux circuits spécialisés de calcul de TCD. Ces derniers peu- vent fonctionner selon au moins deux modes principaux: un mode dit "transparent", utilisé notamment lors de l'initialisation du système, et un mode actif pour lequel la TCD est calculée. Dans un mode de réalisation préféré, ce deuxième mode se dé- compose en deux sous-modes: un mode de calcul de la TCD directe sur les données provenant du premier TRANSPUTER, ou TRANSPUTER d'émission, pour générer les coefficients TCD, et un mode de calcul de la TCD inverse, pour calculer à partir des coefficients TCD provenant du deuxième TRANSPUTER, ou TRANSPUTER de réception, la TCD inverse en vue de reconstituer l'image d'origine. En fonction de l'application envisagée, le deuxième TRANSPUTER est unique ou au contraire remplacé par un réseau de TRANSPUTERS configuré selon une architecture spécifique à cette application. En outre, ces TRANSPUTERS peu- vent être liés à d'autres types de processeurs en tant que de besoin. Le deuxième TRANSPUTER ou le réseau de TRANSPUTERS constitue ce qui sera appelé ci- après "module de traitement". L'invention a donc pour objet un système constituant au moins une chaîne de traitement d'images numérisées comprenant des moyens pour l'acquisition de caractéristiques physiques prédéterminées de ces images et pour leur conversion en signaux électriques numériques représentatifs de ces images, des premiers moyens de traitement permettant au moins la décomposition desdites images en blocs d'élé- ments binaires de taille déterminée, des moyens pour calculer au moins la Transformée en Cosinus Discrète directe de ces blocs et fournir des blocs de coefficients correspondants et des seconds moyens de traitement opérant sur ces blocs de coefficients, caractérisé en ce que les premiers et seconds moyens de traitement comprennent chacun au moins un processeur d'un type susceptible de fonctionner en parallèle et comportant au moins un lien de communication bidirectionnelle, en ce que les dits premiers et seconds moyens de traitement sont connectés par au moins un lien de communication bidirectionnelle commun et en ce que les moyens de calcul de la Transformée en Cosinus Discrète sont intercalés sur ce lien commun. L'invention a encore pour objet un dispositif de codage d'images numéri- sées, destiné à une transmission à bas débit, caractérisé en ce qu'il comprend des 2711030 moyens de prise de vue, des moyens d'acquisition et de numérisation des images is- sues de ladite prise de vue et des moyens de visualisation, en ce qu'il comprend un système constituant au moins une chaîne de traitement d'images numérisées comme décrit ci-dessus opérant sur les images numérisées et en ce que les seconds moyens de traitement effectuent des opérations réversibles de vectorisation des blocs de coefficients de transformée et de quantification vectorielles des vecteurs issus de ces blocs. L'invention a enfin pour objet un dispositif de commande d'auto-focali- sation pour la mise au point d'une caméra vidéo, caractérisé en ce qu'il comprend des moyens de prise de vue constitués par ladite caméra, des moyens d'acquisition et de numérisation des images issues de la prise de vue et des moyens de visualisation d'images, en ce qu'il comprend un système constituant au moins une chaîne de trai- tement d'images numérisées comme décrit ci-dessus, et en ce que les seconds moyens de traitement sont agencés pour transmettre des signaux de commandes ité- ratifs à des circuits de commande de la mise au point de ladite caméra tant que celle- ci est incorrecte et pour transmettre un signal d'acquisition correcte aux moyens d'acquisition, de numérisation et de visualisation d'images lorsque la mise au point est correcte. Le système selon l'invention présente donc de nombreux avantages et notamment les suivants: - Simplicité: on aurait pu penser mettre en oeuvre une autre méthode de communication des circuits spécialisés de calcul de TCD avec les TRANSPUTERS, par exemple par l'intermédiaire de port de communication, c'est-à-dire par une série d'adresses de mémoire du TRANSPUTER, mais l'inconvénient de cette méthode est qu'il eut fallu agir sur l'électronique du TRANSPUTER en multiplexant des adresses mémoire particulières. En intercalant le circuit spécialisé de calcul de TCD sur le lien de communication bidirectionnelle entre deux TRANSPUTER, l'invention obvie à cet inconvénient. - Développement d'applications aisé car il est reconnu que les TRANS- PUTERS sont facilement programmables. Il existe en outre de nombreuses biblio- thèques de programme en divers langages: C ou OCCAM par exemple. Les TRANSPUTERS fonctionnent sur des micro-ordinateurs courants, à l'aide de cartes enfichables dans des emplacements prévus à cet effet. - Possibilité de fonctionnement en temps réel car toutes les opérations de calcul de TCD sont "sautées" du fait de la disposition des circuits de calcul de TCD sur un lien de communication bidirectionnelle. Ces liens, comme il a été rappelé, sont 6 2711030 des liens dotés d'un grand débit de transmission, typiquement 20 Mbits/sec.. Il en ré- sulte une accélération de tout traitement faisant appel à la TCD: codage, autofocali- sation, compression selon diverses normes (JPEG, MPEG, H261, etc.). - Grande portabilité car les difficultés rencontrées habituellement du fait de communications des TRANSPUTERS avec un environnement différent du leur sont résolus. - Excellent rapport coût/performance: les circuits spécialisés utilisés, disponibles couramment dans le commerce sont d'un coût modique. Par contre les performances de ces mêmes circuits sont élevées: par exemple, le calcul des coeffi- cients TCD sur un bloc de 8x8 pixels n'exige, typiquement, que 3,2 lis. Il en est de même pour les TRANSPUTERS. L'invention sera mieux comprise et d'autres caractéristiques et avantages apparaîtront à la lecture de la description qui suit en référence aux figures annexées, et parmi lesquelles: - La figure 1 est un bloc diagramme illustrant le calcul d'une TCD directe et d'une TCD inverse. - La figure 2 est un bloc-diagramme illustrant schématiquement l'archi- tecture d'un système formant chaîne de traitement d'images numérisées selon l'inven- tion. - La figure 3 est un bloc diagramme détaillé illustrant schématiquement un exemple de circuit de calcul de la TCD mis en oeuvre dans le système de la figure 1. - La figure 4 est un bloc-diagramme illustrant un exemple de TRANS- PUTER utilisable par l'invention. - La figure 5 est un bloc diagramme illustrant l'application du système selon l'invention à une chaîne de traitement d'images numérisées pour le codage et la transmission bas débit et/ou à un dispositif d'auto-focalisation d'une caméra vidéo. - Les figures 6a à 6f illustrent différentes architectures possibles du mo- dule de traitement constituant l'un des éléments du système selon l'invention. La figure 2 illustre schématiquement l'architecture générale d'un système de traitement d'images numérisées selon l'invention. Le système comprend essentiel- lement un premier TRANSPUTER 1 ou un processeur d'un type équivalent, un deuxième TRANSPUTER 2 et des circuits 3 spécialisés pour le calcul de TCD, qui seront appelés dans ce qui suit, par mesure de simplification carte TCD. Selon une des caractéristiques principales de l'invention, les premier et deuxième TRANSPU- TERS I et 2 communiquent entre eux par l'intermédiaire d'un de leurs liens de com- 7 2711030 munication bidirectionnelle (liaison bifilaire). Il s'agit habituellement de liaisons séries à haut débit: 10 et 20 pour les liaisons série de sortie, et 11 et 21 pour les liaisons d'entrée, respectivement des TRANSPUTERS 1 et 2. La carte TCD 3 est insérée sur ce lien commun reliant les deux TRANSPUTERS 1 et 2. dans une variante de réalisation préférée da l'invention, la carte TCD 3 est apte à effectuer des calculs de TCD directe et inverse. Des exemples de carte TCD et de TRANSPUTER utilisables dans le cadre de l'invention seront détaillés ci-après au regard des figures 3 et 4, respectivement. Le système est complété par un dispositif de commande de configuration 4, qui peut être constitué par un processeur ou un micro-ordinateur de type classique et dont le rôle sera précisé dans ce qui suit. Dans le cadre de l'invention, et selon un mode de réalisation préféré, les principales fonctions remplies par le TRANSPUTER 1 sont les suivantes: acquisition de l'image numérisée IS (figure 1) et stockage des données correspondantes dans sa mémoire interne - décomposition de l'image en blocs Bxy (figure 1), par exemple en blocs de 8x8 pixels, représentés par des mots binaires correspondants mémori- sés - transmission des blocs Bxy (figure 1) au TRANSPUTER 2 pour traite- ment - réception de codes ou instructions particulières du TRANSPUTER 2 réception de blocs du TRANSPUTER 2 - reconstitution de l'image originale IS à partir des blocs reçus. En réalité, comme il a été indiqué, les communications s'effectuent au travers de la carte TCD 3. A l'exception du mode de fonctionnement dit "transparent", qui sera explicité ci-après et qui est symbolisé sur la figure 2 par des liaisons en pointillés, les données sont interceptées, quelque soit le sens de transmis- sion, par la carte TCD qui effectue un calcul de TCD, directe ou inverse selon le cas. Les trois premières fonctions rappelées ci-dessus peuvent être classées dans une catégorie "fonctions d'émission" et les trois dernières dans une catégorie "fonctions de réception". De la même façon, les principales fonctions réalisées par le TRANSPU- TER 2 sont les suivantes: - envoi de codes ou instructions particulières réception de blocs de coefficients TCD - traitement ultérieur de ces blocs - envoi de blocs de coefficients TCD vers le TRANSPUTER I 8 2711030 Le traitement ultérieur signalé ci-dessus est essentiellement dépendant de l'application envisagée. Des exemples d'applications seront décrits en relation avec la figure 5. Dans le cadre de l'invention, on entend par codes ou instructions particu- lières, notamment des informations destinées à la carte TCD 3, interceptées et déco- dées par celle-ci pour lui permettre de commuter dans l'un des trois modes de fonc- tionnement précédemment indiqué: un mode "transparent" et deux modes actifs; un premier mode actif dans lequel elle effectue le calcul de la TCD direct et un second mode dans lequel elle effectue le calcul de la TCD inverse. Le mode "transparent" est essentiellement utilisé lors de l'initialisation du système. Dans ce mode, les deux TRANSPUTERS I et 2 communiquent directement entre eux par les liaisons de communication bidirectionnelle ,11,20,21; la carte TCD n'interceptant plus les données. Ce fonctionnement est symbolisé, sur la figure 2, par des liaisons en pointillés court-circuitant la carte TCD 3. Le TRANSPUTER 1 fonctionne alors de façon classique en recevant des messages du TRANSPUTER 2, par exemple pour déterminer une configuration préétablie. Ce mode de fonctionnement, en soi, est commun à l'art connu et il est inutile de le détailler. En résumé, les communications s'effectuent comme indiqué ci-dessous 1. Par le fil 10, passent: a/ des données provenant du TRANSPUTER I ou du TRANSPUTER 2 (mode transparent pour la carte TCD 3), b/ des blocs de pixels qui seront transformés par la carte TCD 3 en blocs de coefficients TCD, c/ des blocs de coefficients TCD qui seront transformés en blocs de pixels par la carte TCD 3. 2. Par le fil 21, passent: e/les données selon a/, f/ les coefficients TCD des blocs de pixels selon b/, g/les pixels des blocs de coefficients TCD selon c/. 3. Par le fil 20, passent: h/ des données provenant du TRANSPUTER 2 vers le TRANSPU- TER I (mode transparent pour la carte TCD 3), i/ des ordres adressés par le TRANSPUTER 2 à la carte TCD 3. 4. Et par le fil 11, passent: j/les données selon h/. 9 2711030 Dans l'exemple illustré, sans que cela soit limitatif, les TRANSPU- TERS 1 et 2 sont uniques, mais ceux-ci peuvent être remplacés par un réseau de TRANSPUTERS, un de ces TRANSPUTERS 1 communiquant avec un des TRANSPUTER 2, via la carte TCD 3, par la liaison de communication bidirection- nelle 10 à 21. Comme il a été indiqué, la configuration de ce réseau est essentielle- ment dépendante du traitement réalisé, c'est-à-dire de l'application. Des exemples de configurations seront illustrés ultérieurement par les figures 6a à 6f. Un réseau peut également comprendre d'autres type de processeurs, à traitement parallèle ou non. Les TRANSPUTERS 1 et 2 peuvent communiquer entre eux également par des liens supplémentaires: 12 sur la figure 2. La figure 3 illustre de façon plus détaillée l'architecture du système de l'invention et plus particulièrement la carte TCD 3. Elle est basée sur un processeur 32 spécialisé pour le calcul de TCD. Dans un mode de réalisation préféré, on fait ap- pel à un circuit intégré monoboitier disponible dans le commerce, par exemple le mo- dèle IMS A121, distribué sous la marque INMOS . Il s'agit d'un processeur de si- gnaux numériques (DPS) multifonctions dédié au calcul en deux dimensions de la TCD directe et inverse de blocs d'image de 8x8 pixels et à des fonctions de filtrage non utilisées dans le cadre de l'invention. Ce circuit traite des données en parallèle. Les liens des TRANSPUTERS 1 et 2 transmettent les données en série, aussi deux convertisseurs série/parallèle, respectivement 30 et 31, forment les circuits d'en- trée/sortie de la carte TCD et reçoivent les données en provenance des TRANSPU- TERS 1 et 2 par les liens 10-11 et 20-21. A titre d'exemple non limitatif, on peut faire appel au convertisseur série/parallèle du modèle IMS CO 1, également distribué sous la marque INMOS . Ce circuit est particulièrement adapté à un fonctionne- ment en environnement TRANSPUTERS, en particulier son interface série convient particulièrement aux caractéristiques techniques propres aux liens des TRANSPU- TERS. Sur la figure 3, les liaisons séries sont figurées en traits fins et les liaisons parallèles (bus de données) en traits gras. Une mémoire 33, intercalée entre le pro- cesseur TCD 32 et le convertisseur série/parallèle 31 complète la chaîne de trans- mission. Dans un exemple de réalisation particulier, la mémoire 33 est constituée par un registre à bascules de type D. On peut sélectionner pour cet usage le circuit 74HCT374 distribué par TEXAS INSTRUMENTS. Pour une description plus détaillée de ces composants électroniques, on se référera avec profit aux spécifications techniques éditées par les constructeurs. Dans ces spécifications, sont notamment indiqués la nature et les spécificités des si- 2711030 gnaux nécessaires à leur bon fonctionnement ainsi que les signaux générés par ces composants électroniques. La carte TCD comporte également une logique de commande, compre- nant essentiellement un décodeur 34, et un compteur de cycles d'horloge 35. Dans l'exemple illustré, le compteur 35 devra pouvoir compter 64 cycles puisque le pro- cesseur 32 traite des blocs de 8x8 pixels. Les signaux d'horloge Sqvalid transmis au compteur 35 sont avantageusement dérivés d'un signal "qvalid" généré par le con- vertisseur 30 s'il est du modèle IMS COl l précité, ou par tout autre signal équiva- lent. Ce signal indique qu'un mot de 8 bits, issu de la conversion série/parallèle, est disponible en sortie du convertisseur 30. A son tour, le compteur de cycles 35 génère sur sa sortie un signal SGO, signal initialisant le calcul de la TCD, directe ou inverse selon le mode de fonctionnement imposé au processeur 32. Ce signal est transmis à l'entrée "GO" du circuit IMS A121 (constituant le processeur 32 dans la variante préférée de l'invention). Le signal SGO doit être présent sur le premier pixel de cha- que bloc. Les circuits décodeurs 34 reçoivent du TRANSPUTER 2, via le conver- tisseur série/parallèle 31 et un bus Bd, des mots binaires de commande permettant la commutation du processeur 32 dans l'un des trois modes signalés. A titre d'exemple non limitatif, on peut choisir les trois valeurs hexadécimales suivantes - F0 (ou RESET) pour rendre la carte "transparente" - OF pour la rendre active et calculer la TCD directe - AF pour la rendre active et calculer la TCD inverse Le circuit décodeur 34 génère, sur réception de l'un des deux derniers codes, un signal de commande STCD rendant actif le processeur 32 et lui indiquant quel type de calcul il doit effectuer. Sur réception du premier code, il génère un si- gnal STR rendant la carte transparente aux informations véhiculées sur les liens 10 à 21. Ce signal agit sur des commutateurs électroniques 36 court-circuitant la chaîne des circuits 30, 32, 33 et 31 en cascade. De façon avantageuse, ces commutateurs électroniques sont équipés de circuits formant "buffer" (tampon). Les deux TRANSPUTERS I et 2 sont alors reliés directement par leurs liens de com- munication bidirectionnelle (mode de fonctionnement symbolisé par des traits en pointillés sur la figure 2). Naturellement, le convertisseur 31 doit continuer à rece- voir, sur son interface série, les signaux transitant sur les liens 20 et 21 et les con- vertir en mots binaires transmis au décodeur des circuits logiques 34 par le bus Bd, pour que celui-ci puisse détecter un ordre de changement de mode et recommuter la Il 2711030 carte TCD en mode actif sur réception d'un des codes décrits ci-dessus (par exemple les codes OF ou AA dans l'exemple illustré). On peut réaliser les circuits 35 et 34 en faisant appel à toutes techniques appropriées. Cet aspect relève d'un simple choix technologique à la portée de l'homme de métier. Dans un exemple de réalisation particulier, il a été fait appel à un circuit intégré disponible dans le commerce du type connu sous l'appellation PLA ("Programmable Array Logic"), c'est à dire un circuit comprenant des portes logi- ques "ET" et "OU" configurées en réseau, avec ou sans rebouclage en sortie. Ces circuits peuvent également comprendre des bascules. Généralement la configuration du réseau des portes "ET" peut être modifiée, c'est-à-dire programmée, par l'utilisa- teur par divers procédés selon la technologie utilisée. Il en est de même des réseaux de bascules. De façon plus précise, on peut choisir dans le cadre de l'invention un circuit intégré du modèle PALCE26Vl2 distribué par la société ADVANCED MI- CRO DEVICES. On va maintenant décrire de façon plus précise les modes de fonction- nement "actifs" de la carte TCD 3, c'est-à-dire les modes dans lesquels elle effectue des calculs et transforme les données qui transitent par elle. Le processeur 32 fonc- tionne en réalité en mode "pipe-line". En effet, le processeur 32 manipule trois blocs à la fois. Si on considère le mode TCD directe, le premier bloc est présenté ensortie sous forme de coefficients de Transformée et enregistrés temporairement dans la mémoire 33, le second est en phase de traitement et le dernier est récupéré en en- trée sous forme de bits représentant des pixels. Ces trois opérations sont exécutées en même temps. Le mode TCD inverse présente des caractéristiques analogues. Le convertisseur 31 délivre un signal d'acquit SIACK sur une sortie. Ce signal SIACK indique aux circuits 30 et 33 que les données ont été bien lues dans le convertisseur 31. S'il s'agit du circuit convertisseur du modèle CO1 1 précité, ce si- gnal est généré en standard. Dans le cas contraire, un circuit logique approprié remplira cette fonction. Le processus de calcul de TCD inverse se déroule de façon analogue à ce qui vient d'être rappelé, il est donc inutile de le décrire plus avant. La commutation entre les deux modes s'effectue sous la commande du signal STCD. Il suffit de générer un signal à deux états binaires pour sélectionner l'un ou l'autre des modes TCD directe ou TCD inverse. Dans l'exemple décrit, c'est le TRANSPUTER 2 qui est maître et détermine les modes de fonctionnement en émettant les codes appropriés. 12 2711030 Jusqu'à présent, on a considéré implicitement que le système selon l'in- vention n'était doté que d'une seule carte TCD 3. Dans une variante de réalisation (non représentée), on peut encore améliorer le parallélisme de fonctionnement du système, et par là augmenter la vitesse de traitement, en prévoyant plusieurs cartes TCD 3. Chacune de ces cartes TCD 3 opère sur un bloc Bxy (figure 1) distinct de * l'image IS (figure 1). La caractéristique principale de l'invention, à savoir la disposi- tion de ces cartes TCD 3 entre deux TRANSPUTER 1 et 2, est naturellement con- servée. Les TRANSPUTERS 1 d'émission peuvent en outre être reliés entre eux par des liens de communication autre que le lien connecté à la carte TCD 3. Il en est de même pour les TRANSPUTERS 2 de réception. D'un point de vue pratique, la carte (ou les cartes) TCD 3, ainsi que les TRANSPUTERS 1 ou 2, qui sont avantageusement implémentés eux aussi sur des cartes de circuit imprimé, peuvent être enfichés dans des emplacements ("slots") li- bres de la carte mère d'un micro-ordinateur. Les liaisons entre cartes peuvent être effectuées soit par ladite carte mère si elle est d'un type spécifique, soit par des câ- bles plats, liaisons coaxiales ou par tout autre moyen approprié. L'alimentation et certains signaux usuels (horloge, etc.) peuvent avantageusement être fournis par des moyens propres au micro-ordinateur hôte. Naturellement, le terme micro-ordinateur doit être entendu dans le cadre de l'invention dans son acceptation la plus large: mi- cro-ordinateur proprement dit, station de travail, etc.. Pour fixer les idées, et sans que cela soit limitatif en quoique ce soit de la portée de l'invention, on va maintenant décrire un exemple de TRANSPUTER qui peut être mis en oeuvre dans le cadre de celle-ci par référence à la figure 4. Le mo- dèle de TRANSPUTER choisi pour un système expérimental réalisé par la Deman- deresse était un modèle T800. C'est un processeur I constitué d'un circuit intégré monoboitier en technologie CMOS à haute intégration ("VLSI") comprenant une unité centrale 16, une unité centrale à virgule flottante 15, une mémoire interne 12, une interface pour des mémoires externes 13, un dispositif 14 pour gérer les inter- ruptions et des interfaces 170 à 173 pour les liens de communication 100 à 113. Le modèle décrit dispose de quatre interfaces, chaque interface étant reliée à un lien en- trant (par exemple le lien 110) et un lien sortant (par exemple le lien 100). Les liens et 11 (ou 20 et 21) des figures 2 et 3 peuvent être constitués par n'importe la- quelle de ces paires de liens entrants et sortants. Les principales caractéristiques du TRANSPUTER T800 sont les suivan- tes: 13 2711030 - unité centrale 32 bits d'une puissance de 1 0 Mips avec un temps de cy- cle de 50 ns - mémoire interne rapide: RAM statique avec un débit de 80 MO/sec. et un temps d'accès de 50 ns - interface pour mémoire externe rapide permettant d'adresser 4 GO avec un débit de 26,6 MO/sec. - unité de calcul à virgule flottante de puissance 4,3 Mflops et compatible avec la norme IEEE 754 - quatre liens indépendants de communication bidirectionnelle, permet- tant un débit maximum de 20 Mbits/sec. On va maintenant décrire deux exemples d'applications par référence à la figure 5. Cette figure 5 illustre schématiquement sous forme de blocdiagramme une chaîne complète de traitement d'images numérisées mettant en oeuvre le système se- lon l'invention. On retrouve sur la figure 5 les éléments essentiels du système selon l'in- vention: le TRANSPUTER d'émission non explicitement représenté sur cette figure mais inclue dans un dispositif d'acquisition vidéo référencée 1', la carte TCD 3 et le (ou les) TRANSPUTER(S) 2 formant le module de traitement. Le dispositif d'ac- quisition vidéo 1' reçoit les signaux Si représentatif d'une scène 8 filmée par une ca- méra 7. On peut, de façon optionnelle adjoindre à cette caméra 7 un moniteur de contrôle (non figuré). La partie vidéo du dispositif d'acquisition 1' peut être consti- tué, par exemple, par une carte vidéo TFG distribuée par la société PARSYTEC ou une carte INMOS D429. Sa fonction est de réaliser l'acquisition de l'image, de la numériser et de la transmettre au TRANSPUTER inclue dans le module vidéo 1'. Cette image peut également être affichée sur un moniteur 6 ou tout autre organe de visualisation. Pour ce faire, le module d'acquisition vidéo 1' est connecté à une carte d'affichage graphique 4 et communique avec cette carte 4 par l'intermédiaire de si- gnaux d'entrée/sortie SES sur un des liens du TRANSPUTER 1. La carte d'affichage graphique 4 pilote le moniteur 6 ou l'organe de visualisation par l'intermédiaire de si- gnaux RVB dans l'exemple illustré. Naturellement, tout autre mode de communica- tion peut être mis en oeuvre. Les images affichées peuvent être issues, soit directe- ment de la prise de vue effectuée par la caméra 7, soit être issues de la conversion TCD inverse via la carte TCD 3 et le module de traitement 2. Selon la caractéristique principale de l'invention, la carte TCD 3 est pla- cée entre deux TRANSPUTERS, inclus dans les modules 1' et 2, et intercalée sur un lien de communication bidirectionnelle: liaisons 10, 11, 20 et 21. 14 2711030 La carte graphique 4 peut en outre être pilotée par un micro-ordinateur , communiquant avec elle par un bus ou des liaisons de commande Spc. Ce micro- ordinateur 5 joue le rôle, dans l'exemple illustré, de serveur de fichier. Enfin le module de traitement 2 peut transmettre un signal SOK au mo- dule d'acquisition 1' indiquant que l'acquisition est correcte. Cette transmission peut être réalisée de TRANSPUTER à TRANSPUTER, via un des liens de communica- tion bidirectionnelle, ou par tout autre moyen. Les images transmises après transformation TCD dans la carte TCD 3 au module de traitement 2 peuvent subir un traitement ultérieur en vue d'une transmis- sion bas débit dans un premier exemple d'application du système selon l'invention. Des algorithmes de codage permettant d'obtenir une transmission à bas débit sont connus. Outre les étapes de découpage en blocs Bxy (figure 1) de l'image initiale IS (figure 1) prise par la caméra 7 et la transformation TCD directe, effectuée par la carte 3 dans le cadre de l'invention, ces algorithmes comprennent une vectori- sation de chaque bloc de coefficients TCD et une quantification vectorielle des vec- teurs issus du bloc TCD. A l'issu de ce traitement, effectué en parallèle dans le cadre de l'invention par le ou les TRANSPUTER(S) du module de traitement 2, les images codées peuvent être transmises sur un réseau de transmission (non figuré, par exem- ple du type RNIS) via un modem adapté et nécessitent un débit de transmission très inférieur à celui que nécessiteraient des images non codées par cet algorithme, c'est- à-dire non compressées. Le décodage d'une image, c'est-à-dire la décompression, par exemple après transmission et réception des éléments constitutifs de celle-ci, peut s'effectuer de façon symétrique. Sur la figure 5, on a figuré une autre application possible du système se- lon l'invention: la commande d'un dispositif d'autofocalisation d'une caméra vidéo ou équivalent. Sur la figure 5 la partie des circuits spécifiques à cette application est représentée en traits pointillés. Il s'agit essentiellement du module 9 de commande de la caméra 7. Outre ce dispositif spécifique, on utilise sans modifications matérielles notables les éléments de la chaîne de traitement d'images numérisées qui viennent d'être rappelés et qu'il est inutile de redécrire entièrement. Pour commander la camé- ra 7 via le module de commande 9, on utilise notamment le (ou l'un des) TRANS- PUTER(S) du module de traitement 2. Celui-ci exécute des calculs sur les coeffi- cients de TCD élaborés par la carte TCD 3 sur les images prises par la caméra 7, numérisées par le module 1' et prétraitées par le TRANSPUTER compris dans ce module. Le résultat des calculs permet de savoir si la mise au point de la caméra 7 2711030 est correcte. Pour ce faire, on peut faire appel, sans que cela soit limitatif de la por- tée de l'invention, à un algorithme objet de la demande de brevet français N0 91 04420, déposée le 1l 1 avril 1991. Si l'acquisition est correcte, le module transmet un signal d'acquisition correcte SOK à la carte d'affichage graphique 4, directement ou comme illustré sur la figure 5 via le TRANSPUTER compris dans le module d'acquisition 1', pour affi- chage de l'image sur le moniteur 6. Dans le cas contraire, un ordre SNMp est trans- mis au module 9 de commande de la caméra 7 de manière à réaliser une nouvelle mise au point avant d'effectuer une nouvelle acquisition. Le module de commande 7 agit sur des moyens classiques de mise au point (non figurés) de la caméra 7 par l'intermédiaire d'un signal de commande de caméra Scc. Le processus se répète jus- qu'à ce que l'on obtienne une focalisation correcte. Comme il a été indiqué, l'architecture notamment du module de traite- ment 2 est susceptible de nombreuses variantes allant du TRANSPUTER simple à un réseau complet de TRANSPUTERS communiquant entre eux. Dans ce dernier cas la configuration du réseau peut être fixe ou variable. Cette configuration peut être commandée par les moyens de configurations représentés sous la référence 4 (figure 2). Dans tous les cas elle est avantageusement optimisée pour s'adapter à l'applica- tion spécifique envisagée. Les processeurs composant le réseau précité peuvent être tous des TRANSPUTERS ou il peut s'agir d'un réseau nonhomogène comprenant un ou plusieurs TRANSPUTER(S) connecté(s) à d'autres type de processeurs. Les figures 6a à 6f illustrent quelques topologies de configurations pos- sibles du module de traitement 2: en anneau (figure 6a), de type dit "Illiac" (figure 6b), en arbre (figure 6c), à connexions complètes (figure 6d), en "Kcube" (figure 6e) ou du type en réseau à échanges et permutations (figure 6f). Sur chaque figure, seuls deux processeurs ont été référencés: les processeurs TI à Tn, ce de façon arbitraire pour fixer les idées, cette numérotation n'impliquant aucune hiérarchie réelle. Naturellement, l'invention n'est pas limitée aux seuls exemples de réalisa- tion précisément décrits en relation avec les figures 1 à 6. En particulier, elle ne sau- rait se limiter aux deux seules applications illustrées par la figure 5. Elle s'applique plus généralement, comme il a été indiqué à toutes les applications concernant le traitement d'images numérisées faisant appel transformations TCD directe et inverse. Le système selon l'invention présente les nombreux avantages qui ont été rappelés et que l'on peut résumer comme suit: souplesse, bon rapport coût/performances, vitesse de traitement élevée, puissance de calcul, calculs en 16 2711030 temps réel, modularité et adaptabilité, notamment dues à la configuration modifiable et optimisée du module de traitement. 17 2711030 REVENDICATIONS 1. Système constituant au moins une chaîne de traitement d'images nu- mérisées (IS) comprenant des moyens (7, 1, 1') pour l'acquisition de caractéristiques physiques prédéterminées de ces images et pour leur conversion en signaux électri- ques numériques représentatifs de ces images (IS), des premiers moyens de traite- ment (1, 1') permettant au moins la décomposition desdites images en blocs d'élé- ments binaires (Bxy) de taille déterminée, des moyens pour calculer au moins la Transformée en Cosinus Discrète directe de ces blocs (Bxy) et fournir des blocs de coefficients (COxy) correspondants et des seconds moyens de traitement (2) opérant sur ces blocs de coefficients (COxy), caractérisé en ce que les premiers (1, 1') et se- conds (2) moyens de traitement comprennent chacun au moins un processeur d'un type susceptible de fonctionner en parallèle et comportant au moins un lien de com- munication bidirectionnelle (10, 11), en ce que les dits premiers (1, 1') et seconds (2) moyens de traitement sont connectés par au moins un lien de communication bidi- rectionnelle commun (10, 11, 20, 21) et en ce que les moyens (3) de calcul de la Transformée en Cosinus Discrète sont intercalés sur ce lien commun. 2. Système selon la revendication 1, caractérisé en ce que lesdits proces- seurs des premiers et seconds moyens de traitement sont des TRANSPUTERS (1, 2). 3. Système selon l'une quelconque des revendications 1 à 2, caractérisé en ce que lesdits seconds moyens de traitement (2) comprennent plusieurs proces- seurs (T1 à Tn) fonctionnant en parallèle et en ce qu'un de ces processeurs est relié par un lien de communication bidirectionnelle (20, 21) à un processeur des premiers moyens de traitement via les moyens (3) de calcul de Transformée en Cosinus Dis- crète. 4. Système selon l'une quelconque des revendications I à 3, caractérisé en ce que les dits liens de communication bidirectionnelle comprennent chacun deux liaisons (10-11, 20-21) véhiculant des signaux binaires séries. 5. Système selon la revendication 4, caractérisé en ce que lesdits moyens de calcul de Transformée en Cosinus Discrète (3) comprennent au moins, disposés en cascade, un premier convertisseur série/parallèle (30) connecté par un port série à un processeur des premiers moyens de traitement (1, 1') par un de ses liens de communication bidirectionnelle (10, 11), un circuit intégré (32) spécialisé pour le calcul de la Transformé Cosinus Discrète, une mémoire vive (33) et un second con- vertisseur série/parallèle (3 1) connecté par un port série à un processeur des seconds 18 2711030 moyens de traitement (2) par un de ses liens de communication bidirectionnelle (20, 21). 6. Système selon la revendication 5, caractérisé en ce que ledit circuit intégré spécialisé (32) effectue les calculs de Transformée en Cosinus Discrète di- recte sur les blocs d'éléments binaires (Bxy) pour les transformer en blocs de coefficients (COxy) et de Transformée en Cosinus Discrète inverse sur des blocs de coefficients (COxy) pour les transformer en blocs d'éléments binaires (Bxy) transmis aux premiers moyens de traitement (1, 1'). 7. Système selon la revendication 6, caractérisé en ce que lesdits moyens de calcul (3) de Transformée en Cosinus Discrète comprennent en outre des circuits logiques de commande comportant au moins un compteur de cycles d'horloge (35) comptant les éléments binaires compris dans chacun des blocs (Bxy) et des moyens de décodage (34) agencés pour recevoir et reconnaître des mots de commande reçus des seconds moyens de traitement (2), via le second convertisseur série/parallèle (31), de manière à commuter les moyens de calculs (3) dans au moins deux états distincts: un premier état, dit transparent, dans lequel les données véhiculées par les liens de communication bidirectionnelle (10-11, 20- 21), ne sont pas interceptées et transformées, et un second état, dit actif, dans lequel ces données sont transformées. 8. Système selon la revendication 7, caractérisé en ce que le second état comprend deux sous-états: un premier état actif pour lequel la Transformée en Cosinus Discrète directe est réalisée et un second état actif pour lequel la Transformée en Cosinus Discrète inverse est réalisée. 9. Système selon l'une quelconque des revendications 1 à 8, caractérisé en ce que lesdits blocs d'éléments binaires (Bxy) représentent des fractions d'images numérisées (Is) de 8x8 pixels. 10. Système selon l'une quelconque des revendications 1 à 9, caractérisé en ce qu'il comprend en outre des moyens (4) pour configurer la topologie des pre- miers (1, 1') et seconds (2) moyens de traitement. 11. Système selon l'une quelconque des revendications 1 à 10, caractéri- sé en ce qu'il comprend plusieurs chaînes de traitement d'images numérisées (Is), en ce que chacune des chaînes comprend au moins des premiers (1, 1') et seconds (2) moyens de traitement et des moyens de calcul (3) de Transformée en Cosinus Discrète disposés sur un lien de communication bidirectionnelle (10-11, 20-21) commun, et en ce que chaque chaîne de traitement d'images numérisées opère en parallèle sur un bloc distinct d'éléments binaires (Bxy) ou de coefficients de transformée (COxy). 19 2711030 12. Dispositif de codage d'images numérisées, destiné à une transmission à bas débit, caractérisé en ce qu'il comprend des moyens de prise de vue (7), des moyens (1') d'acquisition et de numérisation des images issues de ladite prise de vue et des moyens de visualisation (4, 6), en ce qu'il comprend un système constituant au moins une chaîne de traitement d'images numérisées selon l'une quelconque des revendications 1 à 11 opérant sur les images numérisées (Is) et en ce que les seconds moyens de traitement (2) effectuent des opérations réversibles de vectorisation des blocs de coefficients de transformée (COxy) et de quantification vectorielle des vec- teurs issus de ces blocs (COxy). 13. Dispositif de commande d'auto-focalisation pour la mise au point d'une caméra vidéo (7), caractérisé en ce qu'il comprend des moyens de prise de vue constitués par ladite caméra (7), des moyens (1') d'acquisition et de numérisation des images issues de la prise de vue et des moyens de visualisation d'images (4, 6), en ce qu'il comprend un système constituant au moins une chaîne de traitement d'images numérisées selon l'une quelconque des revendications I à 11, et en ce que les se- conds moyens de traitement (2) sont agencés pour transmettre des signaux de com- mandes itératifs (SNMp) à des circuits de commande (9) de la mise au point de la- dite caméra (7) tant que celle-ci est incorrecte et pour transmettre un signal d'ac- quisition correcte (SoK) aux moyens d'acquisition, de numérisation et de visualisa- tion (1', 4, 6) d'images lorsque la mise au point est correcte.