Brevet FR2636194A1 — publié le 19900309

PROCEDE DE TRAITEMENT DE SIGNAUX NUMERISES REPRESENTATIFS D'UNE IMAGE ORIGINE DESCRIPTION La présente invention concerne un procédé de traitement de signaux numérisés représentatifs d'une image origine, et notamment d'une image définie par des lignes de balayage, telle qu'une image produite à partir de signaux vidéo par exemple. Cette invention s'applique à la restauration et à l'amélioration des contrastes des images de type vidéo, à la détection des contours et à la structuration des images qui sont notamment utilisées dans le contrôle industriel. Le traitement consiste à transformer une image origine en une image arrivée. Généralement, l'image d'arrivée contient les informations spécifiques de la caractéristique recherchée (contour, contraste,...), le reste de l'image ayant été plus ou moins gommé. Parmi ces transformations, les transformations dites de voisinage constituent une classe privilégiée permettant de résoudre un grand nombre de problèmes. Dans ces transformations, un pixel de l'image d'arrivée est une fonction du même pixel et d'un certain nombre de ses voisins de l'image de départ. Ces traitements de voisinage sont connus sous l'appellation traitement de voisinage 3x3, 5x5,..., x30, pour indiquer La taille en X et Y de ce voisinage. Lorsque l'on effectue des traitements de voisinage, deux paramètres peuvent varier: - premièrement, le type de fonction appliqué au pixel 2 2636194 de l'image de départ et à ses voisins. Il peut s'agir de prendre Le plus grand (ou le plus petit) de tous ces pixels, ou la somme de tous ces pixels, ou La somme pondérée par des coefficients (positifs ou négatifs), ou encore toute fonction de plusieurs variables imaginables, deuxièmement, la taille du voisinage considéré. Très souvent des transformations faisant appel à des petits voisinages (3x3) respectent la structure fine et les détails de l'image de départ. Elles peuvent faire disparaître par contre des structures de taille importante. Cependant, on s'aperçoit que la mise en oeuvre de voisinage de grande taille permet de faire ressortir des variations lentes du niveau de l'image, des structures larges, et permet de s'affranchir presque totalement des problèmes de bruit. Il est par conséquent nécessaire d'effectuer des traitements sur des grands voisinages dans ces cas. Le problème général qui se pose dans ces traitements est le suivant: Pour une image de taille 512x512 pixels et un voisinage de taille nxn, le nombre d'opérations peut atteindre pour un traitement de convolution par exemple: 512x512xnxn multiplications et autant d'additions, soit de l'ordre de 5 000 000 d'opérations pour un voisinage 3x3, 50 000 000 d'opérations pour un voisinage 10x10, 500 000 000 pour un voisinage de x30. Dans la plupart des applications de traitement d'image, il est important que ces traitements soient effectués à des cadences pouvant atteindre 25 images par seconde (cadence vidéo). C'est le cas par exemple Lorsque l'on effectue des contrôles de production dans l'industrie. Il faut donc encore multiplier les chiffres ci-dessus par 25 pour obtenir le nombre requis d'opérations par seconde et l'on dépasse alors très largement les capacités des calculateurs actuels les plus puissants a fortiori pour les grands voisinages. Quelques architectures spécialisées connues permettent d'effectuer des traitements sur des images. Certaines de ces architectures sont rappelées ci- dessous avec les inconvénients qu'elles présentent: 1) - un circuit connu sous la spécification GTR86 de la société ITMI permet de réaliser un seul traitement sur un voisinage 3x3, ce traitement étant appelé SOBEL. Dans ce traitement, le pixel de l'image d'arrivée est calculé à partir du voisinage de l'image de départ en utilisant les masques suivants: 1 2 1 1 0 -1 o o O 2 0 -2 -1 -2 -1 1 0 -1 Les coefficients de ces masques pondèrent les différents pixels du voisinage considéré. Cette architecture existe aujourd'hui sous la forme de circuits intégrés. Son inconvénient est qu'un seul traitement est réalisable et de plus sur le plus petit voisinage possible uniquement 3x3. Le champ d'application de ce circuit est donc limité. Il s'agit de l'extraction de contour dans le cas bien précis des masques de SOBEL. 2) - un circuit connu sous la spécification PLESSEY PDSP16401 comparable au précédent. Ce circuit effectue un seul traitement bien précis sur des voisinages 3x3 dérivés du traitement précédent. 3) - un circuit CC 33, dont le procédé de fonctionnement est décrit dans la demande de brevet N085 08739 du 10 juin 1985, se limite à des voisinages 3x3, mais il est programmable. Il peut réaliser tous 4 2636194 les traitements dits linéaires possibles sur un voisinage 3x3, c'est-àdire les traitements à base de multiplications et additions seulement, qui sont nécessaires lorsque l'on fait une convolution. Avec ce circuit, seules les opérations linéaires sont possibles. 4) - un circuit LSI LOGIC qui est un convolueur 8x8. Dans ce circuit on ne peut réaliser également que des opérations linéaires (convolution) sur des masques pouvant atteindre une taille 8x8. Le voisinage ne peut dépasser cette taille. De plus, comme pour le circuit précédent, seule une partie des opérations de voisinage est possible. Enfin, la technologie retenue conduit à une surface de circuit très importante: un des plus gros circuits commercialisé aujourd'hui. Le circuit est donc très cher. ) - un circuit HITACHI ISP2. Dans ce circuit on est limité à des opérations portant sur des voisinages 3x1, cependant pratiquement toutes les opérations envisageables sur un tel voisinage peuvent être réalisées. Pour traiter des masques plus importants à partir des circuits présentés ci-dessus, on peut cascader plusieurs circuits ensemble. Cependant, les limitations viennent du fait qu'il n'est pas possible de réaliser malgré tout des masques de grande taille car il faut cascader un nombre de circuits rédhibitoire. L'architecture de ces circuits se présente sous forme d'une cascade de cellules de filtrage disposées dans des configurations classiquement appelées systoliques et dont le nombre est directement lié à la taille du traitement de voisinage. On a représenté un exemple d'architecture d'un tel circuit sur la figure 1. Le circuit représenté comporte des cellules en cascades, F1...F9, ayant une entree commune EI recevant les pixels de l'image origine, une entrée EJ permettant de les relier les unes aux autres, et une entrée indépendante EK qui permet de recevoir le coefficient de pondération désiré Wl pour la première W9 pour la dernière. Chaque cellule comporte un multiplieur 10, un additionneur 11 et un circuit à retard 12 introduisant un retard de un. Le nombre de cellules est identique à la taille du voisinage pris en compte, ce qui conduit à utiliser par exemple 9 cellules pour un voisinage 3x3, 121 cellules pour un voisinage 11x11. Ces circuits, dont les caractéristiques et les inconvénients viennent d'être rappelés, ont été conçus pour effectuer des traitements à cadence vidéo soit 25 ou 30 images par seconde. Il apparait donc clairement qu'il n'existe pas de dispositif pouvant effectuer une large gamme de traitement (pas seulement des convolutions) sur des voisinages pouvant atteindre des tailles aussi importantes que 20x20, 30x30 au plus et à cadence vidéo. L'invention a pour but de remédier à ce problème et a pour objet un dispositif de traitement de signaux numrisés représentatifs d'une image origine constituée de pixels, dans lequel chaque pixel subit une transformation de voisinage nxq pour former une image arrivée, ou n1, q1 et nxq3, caractérisé en ce que le dispositif permet de réaliser des transformations linéaires ou nonlinéaires et en ce qu'il comporte pour cela des cellules de filtrage (TIA/T1B) introduisant un retard ei ou Ai désiré de sorte que le nombre f de cellules soit toujours 6 2636194 strictement inférieur à nxq. Selon une caractéristique de l'invention, le dispositif permet de réaliser les transformations dont la transformée en z est factorisable en p polynômes du -Di +1 type (1+miz)- , mi et oi étant déterminés par la factorisation et en ce qu'il comporte pour cela des cellules de filtrage dont le nombre f est égal au nombre p de polyn8mes introduisant un retard Si, le nombre f de cellules pouvant être supérieur au nombre p dans le cas o le retard introduit par une cellule donnée est inférieur au retard considéré Mi. Selon une autre caractéristique de l'invention, le dispositif permet de réaliser des transformations non-linéaires et comporte pour cela des cellules de filtrage TIA et/ou TIB dont le nombre g est égal à Max(x,y)+1 avec x et y tels que 2 inférieur au retard Pi considéré. Selon une autre caractéristique de l'invention, chaque cellule comporte au moins une entrée EB et au moins une sortie SB, les cellules étant reliées entre elles. Dans le cas o le retard Ni ou Pi n'est pas obtenu par une seule cellule, V cellules introduisant un retard ri sont cascadées pour obtenir le retard Ci ou Pi désiré de sorte que la somme des retards ri soit égale à ci ou "i. Avantageusement, au moins V-1 cellules utilisées pour obtenir le retard considéré ci ou i comportent au moins une deuxième entrée et au moins V-1 cellules utilisées pour obtenir ce retard comportent au 7 2636194 moins une deuxième sortie de manière à ce que les V cellules puissent être mises en cascade, la première sortie de l'une étant reliée à la première entrée (EB) de la cellule suivante, la deuxième sortie (Sa) de cette même cellule étant reliée à la deuxième entrée (EA) de la même cellule suivante. Dans le cas o La transformée en z comporte au moins un polynôme du type (1+mizi) 1, la ou les cellules correspondant à ce polynôme comporte une troisième entrée pour recevoir le signal de sortie issu de la sortie de cette même cellule. Avantageusement, le dispositif comprend une ou plusieurs cellules de filtrage qui comportent une quatrième entree pour recevoir le signal provenant d'une cellule amont pour effectuer des traitements inter-image. Avantageusement, chaque cellule comporte un circuit à retard et un circuit opérateur, le circuit à retard recevant le signal provenant de l'une des entrées de la cellule, le circuit opérateur recevant le signal de sortie du circuit à retard et Le signal de la première entrée de la cellule. Le dispositif se caractérise également en ce que chaque cellule comporte en outre des moyens d'aiguillage des signaux d'entrée. Avantageusement, les moyens d'aiguillage sont constitués par des multiplexeurs. Selon un mode de réalisation, le circuit à retard comporte un registre à décalage formé d'une série de k registres, k étant supérieur ou égal au retard de la celluLe considérée, un circuit d'aiguillage dont chaque entrée est reliée à une sortie d'un registre. Selon un mode de réalisation, Le circuit opérateur comporte une unité arithmétique et logique 2636 194 recevant deux signaux X et Y, le signal X provenant de la première entrée (EB) de la cellule et le signal Y étant issu de la sortie du circuit à retard de la cellule. Le circuit opérateur comporte en outre un multiplieur placé entre la sortie du circuit à retard et une entrée de l'unité arithmétique et logique. Le circuit opérateur comporte également un circuit d'aiguillage à au moins deux entrées dont une première entrée est reliée'à la sortie du circuit à retard de la cellule et dont la deuxième entrée est reliée à la première entrée de la cellule, ce circuit étant commandé par un signal délivré par l'unité arithmétique et logique. Avantageusement, le circuit d'aiguiltage comporte une troisième entrée reliée à la sortie de l'unité arithmétique et logique pour effectuer des transformations linéaires. Le dispositif de traitement se caractérise en outre en ce qu'il comporte des moyens de commande pour chaque cellule permettant de prédéfinir la position des moyens d'aiguillage d'entrée, le retard du circuit à retard, la fonction arithmétique et logique du circuit opérateur. Les moyens dg commande comportent un registre de programmation. Avantageusement, chaque cellule comporte en outre deux registres supplémentaires, un premier registre entre la sortie du circuit à retard et une entrée du circuit opérateur, et un deuxième registre entre la première entrée EB de la cellule et l'autre entrée du circuit opérateur. Le dispositif se caractérise en ce qu'il est réalisé sous forme de circuit intégré par exemple-en technologie prédiffusée CMOS. L'invention sera mieux comprise à La Lecture de la description qui suit et à l'examen des figures qui l'accompagnent. Celles-ci ne sont données qu'à titre indicatif et nullement limitatif de l'invention. Les figures montrent: - la figure 1, le schéma de l'architecture d'un circuit de traitement d'images selon l'état de la technique; - la figure 2, le schéma d'architecture d'un dispositif de traitement de signaux numérisés conforme à l'invention avec un premier mode de réalisation, - la figure 3, le schéma d'architecture d'un dispositif de traitement de signaux numérisés conforme à l'invention avec un deuxième mode de réalisation; - la figure 4, le schéma d'un dispositif de traitement conforme à l'invention selon la figure 3 et correspondant à un mode particulier de fonctionnement; - la figure 5, le schéma correspondant à une réalisation particulière du circuit à retard 30; - la figure 6, le schéma d'un premier mode de réalisation du circuit opérateur 40 permettant d'effectuer des opérations linéaires; - la figure 7, le schéma d'un deuxième mode de réalisation d'un circuit 40 permettant d'effectuer des opérations linéaires et non linéaires; - la figure 8, le schéma détaillé d'un exemple de réalisation d'une cellule de type A ou B selon les figures 2 et 3; - la figure 9, une architecture d'un dispositif de traitement conforme à l'invention réalisé sous forme d'un circuit intégré. Le dispositif de traitement de signaux numérisés conforme à l'invention permet de réaliser tout filtrage linéaire dont la transforméee en z est factorisabe en poyn-me du type (+miz 1 it factorisable en poLynôme du type P1 = -----à-- - -- - - -- - - -- -1 -i (1+C1 z)..............(1+Cm z) ou -1 -2 -k P2 = (1+bl z) (1+b2 z)... .(1+bn z) dans lesquels chaque facteur correspond à un polynôme de degré donné de manière à obtenir la fonction de transfert de filtrage désirée. On rappelle que la transformée en z est l'équivalent, pour les signaux échantillonnés, de la transformée de Fourier. Le dispositif de l'invention permet également de réaliser tout filtrage non linéaire du type recherche d'un extremum dans un voisinage donné. Contrairement au circuit de l'état de la technique, le nombre de cellules de filtrage du dispositif conforme à l'invention n'est pas lié à la taille du voisinage traité. D'une part donc ce dispositif permet d'effectuer des transformations de voisinage mettant en oeuvre des voisinages dont la taille est variable et peut atteindre des valeurs importantes et, d'autre part, on peut effectuer des transformations sur tous signaux numérisés et pas uniquement sur des signaux d'image. On a représenté sur la figure 2 un dispositif de traitement conforme à l'invention, ce dispositif comprenant par exemple deux cellules TIA, T2A. Dans le cas d'une transformation linéaire, la première cellule TIA permet d'introduire un retard ii 2636194 correspondant au degré du premier polyn me de la transformée en z de la fonction de filtrage à réaliser. La deuxième cellule T2A permet d'introduire un retard correspondant au degré du deuxième polynôme de cette transformée en z. Deux cellules reliées ensemble comme représenté sur la figure 2 permettent donc d'effectuer une transformation sur un voisinage donné, 3x1 ou 3x3 ou plus, la sortie SB d'une cellule étant reliée à l'entrée EB de la cellule aval. Le nombre f de cellules est égal au nombre p de polyn6me en facteur. Chaque cellule introduit donc un retard qui est égal au degré Èi du polynôme. Comme cela sera explicité ultérieurement, on peut préférer dans certaines applications utiliser deux cellules au plus en cascade pour obtenir le retard désiré, le nombre f de cellules étant alors supérieur au nombre p mais dans tous les cas ce nombre est très inférieur à nxq, nxq représentant la taille du voisinage traité. Dans le cas d'une transformation non linéaire, chaque cellule i introduit un retard Pi égal i-1 à 2 et la dernière cellule introduit un retard égal x à n-2 si le maximum entre x et y est égal à x ou un retard égal à q-2 si le maximum de x et y est égal à z5 t 2x transformation étant égal au maximum (x,y)+1. Ainsi, la première cellule de filtrage a un retard de 20, la deuxième cellule un retard de 2..., la (g-1)ième cellule un retard de 2 t et la x y gième cellule un retard de n-2 ou q-2 Bien entendu, comme précédemment, le nombre g de cellutes peut Stre supérieur à Max(x,y)+1 dans Le cas o Le retard introduit par une cellule est inférieur au retard considéré Pi et que plusieurs 1 2 263 6 1 9 4 cellules sont cascadées pour obtenir ce retard pi. Le dispositif de traitement conforme à l'invention comporte donc des cellules de filtrage tel que représenté sur la figure 2. Chaque cellule T1A et T2A comporte en outre un circuit opérateur 40 qui reçoit d'une part le signal Y de sortie du circuit à retard 30 et qui reçoit d'autre part le signal X provenant d'une première entree EB de la cellule. Chaque cellule comporte éventuellement une deuxième entrée EA et une deuxième sortie SA, cette deuxième entrée permet, sauf dans le cas de la première cellule qui reçoit uniquement le même signal que l'entrée ES, c'est-à-dire les pixels d'une image dans le cas d'un traitement d'images, de recevoir le signal de sortie délivré par le circuit à retard 30 d'une cellule amont sur sa deuxième sortie SA. Chaque cellule peut donc comporter au moins deux entrées, EA et EB, et deux sorties SA et SB. La sortie SA délivre le signal Y délivré par le circuit à retard 30 de la cellule considérée et la sortie SB délivre le signal issu de l'opérateur 40 de la cellule considérée. L'entrée EA et la sortie SA permettent donc comme on le verra ultérieurement de cascader des retards pour obtenir le retard Ai ou fi désiré. Lorsque les cellules sont cascadées, la sortie SA d'une cellule est reliée à l'entrée EA de la cellule qui la suit, et la sortie SB de la cellule est reliée à l'entrée EB de la cellule qui la suit. Les opérateurs 40 sont choisis en fonction de la transformation à réaliser. Il peut s'agir d'opérations linéaires, par exemple d'opérations du type X+KY, k étant un coefficient réel quelconque fixé une fois pour toutes pour un traitement donné, ou d'opérations non linéaires du type min(X,Y) ou 13 2636194 max(X,Y), c'est-à-dire de délivrer la valeur minimum entre X,Y ou la valeur maximum entre X,Y. La figure 2 correspond à un premier mode particulier de réalisation des ceLlules constituant le dispositif de traitement conforme à l'invention que l'on qualifie de type A. La figure 3 représente un deuxième mode de réalisation dans lequel les cellules sont légèrement différentes de celles de la figure 2 et correspondent à un mode qui sera qualifié de type B. La structure de la cellule de type B comporte par rapport à la cellule de type A un rebouclage de la sortie du circuit opérateur 40 vers une troisième entrée EC de la cellule, la cellule comprenant donc dans ce cas une troisième entrée EC. La sortie SB d'une cellule de ce type est donc rebouchée sur l'entrée EC. Dans les deux types de cellule un circuit d'aiguillage 20 est placé sur les entrées EA, EB ou EA, EB, EC, afin de sélectionner l'une d'entre elles. La sortie de ce circuit sert d'entrée au circuit à retard 30. Les circuits d'aiguillage 20 sont synchronisés sur une horloge H et commandés par un signal de sélection S de manière tout à fait classique. Ainsi, à partir d'une même cellule de type A, le circuit d'aiguillage 20 permet de sélectionner: - soit l'entrée EA pour cascader des retards, soit l'entrée EB, lorsque la cellule représente un polyn8me du type (1+ miz) ou permet d'effectuer une opération non linéaire ou s'l s'agit de la première cellule du dispositif, et dans le cas d'une cellule de type B, le circuit d'aiguillage permet de sélectionner en outre l'entrée EC lorsque la cellule correspond à un polyn8me du type -Wi -1 (1+miz). D'une manière générale, le dispositif selon 2636 1 94 l'invention comporte une cellule de filtrage telle que la cellule TIA (ou T1B) par polynôme ou par opération non linéaire. Le retard k des circuits à retard 30 sera égal au degré du polynôme dans la mesure o ce retard ne dépasse pas le retard maximum possible pour la cellule. Si le degré du polynôme est supérieur à ce retard maximum possible il suffit de cascader par exemple deux cellules pour que la somme des retards obtenus soit égale au degré du polynôme. De même dans le cas non-linéaire, le retard k des circuits 30 sera égal au degré Fi défini ci-dessus dans la mesure o ce retard ne dépasse pas le retard maximum possible pour la cellule. Dans le cas contraire il suffit de cascader des cellules pour que la somme des retards de ces cellules soit égale à pi. Une telle configuration a été représentée sur la figure 4. Sur cette figure, on a pris comme exemple une cascade de deux cellules de type B, TIB, T2B. Bien entendu, il est possible d'obtenir cette cascade des retards en prenant deux cellules de type A ou une cellule de type A ou une cellule de type B. Pour obtenir le retard désiré, il suffit de fixer un retard égal à k dans la première cellule T1B et un retard compris entre 1 et k dans la deuxième cellule TZB de manière à ce que la somme de ces deux retards soit égale au retard ri ou pi désiré. Dans le cas de cascade de plusieurs cellules pour obtenir le retard désiré, l'opérateur 40 des cellules cascadées (T1B dans le cas de la figure 4) excepté la dernière, consistera en fait en une fonction identité, c'est-à- dire que le signal X sera transmis sans être combiné au signal Y, lequel est appliqué à l'entrée EA de la cellule suivante T2B, le signal X étant applique à l'entrée EB de la cellule T2B. Dans le cas o deux cellules sont reliées 2636194 dans un autre but que de cascader deux retards, pour un polynôme de la forme 1+Kz et quel que soit È, les deux types de cellule A ou B permettent de rajouter à une entree le produit par K de l'autre entree; et dans le cas d'une transformation non-linéaire, l'opérateur de ces cellules permet de sélectionner le plus grand ou le plus petit des signaux X,Y. La mise en cascade généralisée de toutes les cellules de ce type permet donc de réaliser la fonction désirée dans un ordre quelconque. Sur la figure 5, on a représenté un exemple particulier de réalisation d'un circuit à retard 30. Ce circuit est constitué d'un registre à décalage constitué de k registres (ou étages) R1, R2,... Rk. La sortie de chaque registre est reliée à une entrée déterminée d'un circuit d'aiguillage 301. Ce circuit d'aiguillage est commandé par le signal d'horloge H et par un signal de sélection SR. Le circuit d'aiguillage 301 permet en fait d'aiguiller la sortie d'un registre, mais aussi de ne prendre en compte que les sorties désirées qui sont fonction du décalage que l'on voudra obtenir. Si le retard désiré est inférieur à k, on ne prendra pas en compte tous les registres. Le signal de sortie du circuit d'aiguillage 301 délivre donc le signal Y et est appliqué d'une part à l'entrée EA de La cellule suivante et, d'autre part, à une entrée de l'opérateur 40. On trouve donc sur les sorties successives de chacun de ces registres les valeurs présentées à L'entrée du premier registre un coup avant pour R1, deux coups avant pour R2,...k coups avant pour Rk. L'aiguillage a k entrées ou plus, prises sur chacun de ces registres, et permet de déterminer par conséquent la taille du retard donné par le nombre de registres entre L'entrée du circuit à retard et l'entrée sélectionnée de l'aiguillage. Sur la figure 6, on a représenté un premier mode de réalisation d'un circuit opérateur 40. Ce mode de réalisation correspond à des opérations linéaires sur les signaux Y et X. Le circuit opérateur 40 comporte une unité arithmétique et logique 402 qui peut être combinée avec un multiplieur 401 afin de réaliser des opérations du type X+KY, K étant un coefficient appliqué au multiplieur 401. Sur la figure 7, on a représenté un autre mode de réalisation du circuit opérateur 40. Dans ce mode de réalisation on dispose en plus de l'unité arithmtique et logique 402 (et éventuellement du multiplieur 401), d'un circuit d'aiguillage 403 réalisé par exemple par un multiplexeur. Le circuit opérateur permet ainsi de réaliser des opérations linéaires et non linéaires. Pour cela, le circuit d'aiguillage est susceptible de recevoir à une entrée C la sortie de l'unité arithmétique et logique 402, à une autre entrée A le signal provenant de l'entrée EB de la cellule et à une autre entrée B le signal provenant de la sortie du circuit à retard de cette même cellule. Selon un premier mode de fonctionnement, l'unité arithmétique et logique 402 effectue des opérations du type X-Y et le bit de signe du résultat, représenté par le signal Si, indique si X-Y est positif ou négatif. Ce bit est utilisé pour commander le multiplexeur 403 à deux entrées A et B. Le signalt Si permet donc de sélectionner soit A, soit B, selon que X-Y est positif ou négatif. La troisième entrée C du multiplexeur 403 permet selon un deuxième mode de fonctionnement de réaliser des opérations linéaires, et à ce moment Là c'est la sortie de l'unité arithmétique et logique présentée à l'entrée C qui sera sélectionnée en sortie 17 2636194 du dispositif d'aiguillage 403. Dans le cas o Le circuit opérateur n'est utilisé que pour des opérations non-linéaires, celui-ci peut ne pas comporter de multiplieur et le circuit d'aiguillage peut n'avoir que deux entrées A et B. Sur la figure 8, on a représenté le schéma détaillé d'un exemple de réalisation d'une cellule de type A ou B tel que représenté sur les figures 2 et 3. Selon un mode préféré de réalisation, chaque cellule comporte des moyens de commande 50. Ces moyens comprennent un registre de programmation 5.01qui permet au travers de portes logiques 502, 503, 504, respectivement d'assigner à chaque cellule la position du circuit d'aiguillage 20, la valeur du retard que doit prendre le circuit à retard 30, la fonction réalisée par le circuit opérateur 40. Ce registre 501 est programmé une fois pour toutes pour un traitement donné. Une nouvelle valeur de programmation pourra être effectuée par exemple au moyen d'un microprocesseur ou d'un calculateur 100, ce qui permettra de changer en particulier le traitement effectué par le circuit opérateur. La programmation du registre à l'aide d'un microprocesseur quelconque ou d'un calculateur est tout à fait classique en soit. Les cellules comportent en outre deux registres supplémentaires: un premier registre 60 entre la sortie du circuit à retard et une entrée du circuit opérateur 40 et un second registre 61 entre l'entrée EB de la cellule et l'autre entrée du circuit opérateur 40. Ces registres n'ont pas d'incidence sur le fonctionnement de l'ensemble. Ils sont utilisés de manière classique (appelée pipeline) pour augmenter la vitesse de traitement de L'ensemble. Une entrée supplémentaire ED peut en outre être prévue dans le circuit d'aiguillage 20 pour permettre d'effectuer dans la ceLLuLe qui comporte cette entrée supplémentaire des opérations dites inter- images (somme de deux images ou/et une fonction logique et entre deux images...) entre la sortie de la cellule amont qui délivre le signal image traité par les cellules amont successives et l'image présentée à cette entrée supplémentaire ED. Le circuit d'aiguillage 20 est réalisé au moyen d'un multiplexeur par exemple. Sur la figure 9, on a représenté un exemple de réalisation particulier d'un dispositif de traitement conforme à l'invention sous forme d'un circuit intégré. Ce circuit est constitué d'un assemblage de six cellules telles que décrites à propos des figures 2 et 3. La première cellule est une cellule de type A, l'ensemble des autres cellules sont des cellules de type B. La première cellule TIA comporte en outre deux multiplexeurs 21 et 22 qui rendent parfaitemeent symétriques les deux entrées DINA et DINB de cette cellule et qui permet donc de rentrer deux images E1 et E2 dans le dispositif et traiter soit l'une de ces images, soit les deux ensemble. On trouve un branchement direct entre la cellule TIA et la cellule T5B (entrée ED de cette cellule T5B) pour permettre un traitement inter-image entre une des images origine du dispositif et cette même image traitée par les cellules situées en amont de la cellule T5B. La dynamique de calcul sur les données (ou largeur des mots de données) est de 12 bits sur les cellules TIA à T5B et de 16 bits sur la cellule T6B. Cela donne une marge suffisante pour traiter des images dont les pixels sont codés sur 8 bits. Les 16 bits de la cellule T6B permettent des opérations nécessitant une grande dynamique (accumulation, projection,...). Un bit supplémentaire a été rajouté, qui accompagne le pixel au cours de son traitement par le circuit: c'est un marqueur qui permet de valider ou non une condition sur un pixel. Ce marqueur est recalculé dans le circuit en tenant compte du voisinage considéré. Des bits de dépassement de capacité signalent à l'utilisateur que la dynamique de l'unité arithmétique et logique de La cellule T5B et/ou de l'unité arithmétique et logique de la cellule T6B a été dépassée. On retrouve ces bits de sortie à la sortie de l'unité arithmétique et logique de la cellule T6B sous la référence C OUT 16, OVER F6 et de la cellule TSB sous la référence OVER F5. Pour chaque cellule et en fonction de la transformation à réaliser, l'on aura, avant de procéder à tout traitement, rentré au moyen du registre de programmation de chacune de ces cellules: - les valeurs des bits qui indiquent à l'opérateur quelles fonctions de ces entrées il doit calculer, - les valeurs des bits qui déterminent la longueur du retard voulu, - les valeurs des bits qui déterminent les données sélectionnées en entrée ou en sortie garantissant les diverses façons possibles d'assembler les cellules. Soit un mot de 11 bits par cellule et en tout six mots de 11 bits. Ce circuit a été réalisé en technologie prédiffusée ES2 CMOS 2km, sa surface est de 85 mm et le bottier est un LC 84 broches. Ce circuit comporte 000 transistors environ, ce qui est très peu comparé aux réalisations classiques. Il est tout à fait possible de mettre en 2636194 cascade deux circuits tels que celui qui vient d'être décrit et d'atteindre des traitements sur des voisinages encore plus grands: deux circuits intégrés cascades permettent d'effectuer des opérations comme la morphologie ou certaines opérations linéaires sur des voisinages atteignant 44x44. Le circuit décrit à propos de la figure 9 permet de réaliser à cadence vidéo toutes les opérations qui suivent: - érosion ou dilatation (morphologie) jusqu'à 20x20, - mqyenne jusqu'à 20x20, extraction de contour jusquà 11x11, - extraction de texture par masque de LAW, - toute opération inter-image (opérations d'addition, de soustraction, fonction ET logique, fonction OU,...). L'invention a été décrite à partir de cellules de filtrage ayant plusieurs entrées EA, EB, EC, ED, pouvant être sélectionnées de façon à réaliser à partir d'un même type de cellule plusieurs opérations. Bien entendu, on aurait pu réaliser une cellule pour chaque opération à réaliser. Par ailleurs, le rebouclage de la cellule de type B par l'entrée EC de la cellule pourrait être remplacé par un rebouclage à l'entrée du dispositif d'aiguillage 301 du circuit à retard 30 comme représenté dans la cellule T6B dans le cas d'un retard d'un coup d'horloge. 21 2636194 REVENDICATIONS 1. Dispositif de traitement de signaux numrisés représentatifs d'une image origine constituée de pixels, dans Lequel chaque pixel subit une transformation de voisinage nxq pour former une image arrivée, ou nl1, q>, 1 et nxq>3, caractérisé en ce que le dispositif permet de réaliser des transformations linéaires ou non-linéaires et en ce qu'il comporte pour cela des cellules de filtrage (T1A/T1B) introduisant un retard Hi ou pi désiré de sorte que le nombre f de cellules soit toujours strictement inférieur à nxq. 2. Dispositif de traitement de signaux numérisés selon la revendication 1, caractérisé en ce que le dispositif permet de réaliser les transformations dont la transformée en z est factorisable en p polynômes du type (1+miz) , mi et Fi étant déterminés par la factorisation et en ce qu'il comporte pour cela des cellules de filtrage (TIA et/ou TIB) dont le nombre f est égal au nombre p de polynômes introduisant un retard vi, le nombre f de cellules pouvant être supérieur au nombre p dans le cas o le retard introduit par une cellule donnée est inférieur au retard considéré Èi. 3. Dispositif de traitement de signaux numérisés selon la revendication 1, caractérisé en ce que ce dispositif permet de réaliser des transformations non-linéaires et en ce qu'il comporte pour cela des cellules de filtrage (T1A et/ou TIB) dont le nombre g est égal à Max(x,y)+ 1 avec x et y tels que x x+l y y+l 2 cellule donnée est inférieur au retard pi consideré. 4. Dispositif de traitement selon l'une quelconque des revendications 1 à 3, caractérisé en ce que chaque cellule comporte au moins une entrée (EB) et au moins une sortie (SB), les cellules étant reliées entre elles. 5. Dispositif de traitement selon l'une quelconque des revendications 1 à 4, caractérisé en ce que dans le cas o le retard 9i ou Pi n'est pas obtenu par une seule cellule, V cellules introduisant un retard ri sont cascadées pour obtenir le retard i ou úi désiré de sorte que la somme des retards ri soit égale à Ai ou pi. 6. Dispositif de traitement selon l'une quelconque des revendications 1 à 5, caractérisé en ce qu'au moins V-1 cellules utilisées pour obtenir le retard considéré Mi ou Pi comportent au moins une deuxième entrée (EA) et en ce qu'au moins V-1 cellules utilisées pour obtenir ce retard comportent au moins une deuxième sortie (SA) de manière à ce que les V cellules puissent être mises en cascade, la première sortie de l'une étant reliée à la première entrée (EB) de la cellule suivante, la deuxième sortie (Sa) de cette mime cellule étant reliée à la deuxième entrée (CEA) de la même cellule suivante. 7. Dispositif de traitement selon l'une quelconque des revendications 1 à 6, caractérisé en ce que dans le cas o la transformée en z comporte au - i -1 moins un polynôme du type (1+miz) , la ou les cellules correspondant à ce polynôme comporte une troisième entrée pour recevoir le signal de sortie (SB) de cette mime cellule. 8. Dispositif de traitement selon l'une quelconque des revendications I à 5, caractérisé en ce que le dispositif comprend une ou plusieurs cellules de 23 2636194 filtrage qui comportent une quatrième entrée (ED) pour recevoir le signal provenant d'une cellule amont pour effectuer des traitements inter-image. 9. Dispositif de traitement selon l'une quelconque des revendications 1 à 8, caractérisé en ce que chaque cellule comporte un circuit à retard (30) et un circuit opérateur (40), le circuit à retard recevant le signal provenant de l'une des entrées (EA, EB, EC ou ED) de La cellule, le circuit opérateur (40) recevant le signal de sortie du circuit à retard (30) et le signal de la première entrée (EB) de la cellule. 10. Dispositif de traitement selon l'une quelconque des revendications 1 à 9, caractérisé en ce que chaque cellule comporte en outre des moyens d'aiguillage (20) des signaux d'entrée. 11. Dispositif de traitement selon la revendication 10, caractérisé en ce que les moyens d'aiguillage (20) sont constitués par des multiplexeurs. 11. Dispositif selon L'une quelconque des revendications 1 à 10, caractérisé en ce que le circuit à retard (30) comporte un registre à décalage formé d'une série de k registres (R1, R2,... Rk), k étant supérieur ou égal au retard de la cellule considérée, un circuit d'aiguillage (301) dont chaque entrée est reliée à une sortie d'un registre. 12. Dispositif de traitement selon l'une quelconque des revendications I à 11, caractérisé en ce que le circuit opérateur (40) comporte une unité arithmétique et logique recevant deux signaux X et Y, le signal X provenant de la première entrée (EB) de la cellule et le signal Y étan. issu de la sortie du circuit à retard (30) de la cellule. 13. Dispositif de traitement selon la revendication 12, caractérisé en ce que le circuit 24 2636194 opérateur comporte en outre un multiplieur (401) placé entre la sortie du circuit à retard (30) et une entrée de l'unité arithmétique et logique (402). 14. Dispositif de traitement selon la revendication 12 ou 13, caractérisé en ce que le circuit opérateur (40) comporte également un circuit d'aiguillage (403) à au moins deux entrées dont une première entrée est reliée à la sortie du circuit à retard de la cellule et dont la deuxième entrée est reliée à la première entrée de la cellule, ce circuit étant commandé par un signal déLivré par l'unité arithmétique et logique (402). 15. Dispositif de traitement selon la revendication 14, caractérisé en ce que le circuit d'aiguillage (403) comporte une troisième entrée reliée à la sortie de l'unité arithmétique et logique pour effectuer des transformations linéaires. 16. Dispositif de traitement selon l'une quelconque des revendications 1 à 15, caractérisé en ce qu'il comporte en outre des moyens de commande pour chaque cellule permettant de prédéfinir la position des moyens (20) d'aiguillage d'entrée, le retard du circuit à retard (30), la fonction arithmétique et logique du circuit opérateur (40). 17. Dispositif de traitement selon la revendication 16, caractérisé en ce que les moyens de commande (50) comportent un registre de programmation (501). 18. Dispositif de traitement selon l'une quelconque des revendications 1 à 16, caractérisé en ce que chaque cellule comporte en outre deux registres supplémentaires, un premier registre (60) entre la sortie du circuit à retard (30) et une entrée du circuit opérateur (40), et un deuxième registre (61) entre la première entrée EB de La cellule et l'autre entrée du circuit opérateur (40). 19. Dispositif selon l'une quelconque des revendications 1 à 18, caractérisé en ce que ce dispositif est réalisé sous forme de circuit intégré.