FR 2633415 A1 19891229 FR 8808521 A 19880624 DISPOSITIF DE TRAITEMENT DE SIGNAL ADAPTATIF ET NON LINEAIRE La présente invention se rapporte à un dispositif de traitement de signal adaptatif et non linéaire. Pour réaliser un traitement de signal en vue, par exemple, d'une reconnaissance de formes, on peut faire appel à un processeur électronique, mais sa capacité de traitement est actuellement trop limitée, en particulier si l'on désire effectuer ce traitement en temps réel. On connaît également des dispositifs purement optiques pour résoudre ce problème, mais ces dispositifs deviennent très complexes si on veut leur procurer une bonne adaptabilité. La présente invention a pour objet un dispositif de traitement de signal qui soit facilement et le plus rapidement possible adaptatif et qui puisse traiter le plus rapidement possible le plus grand nombre possible d'informations, ce dispositif étant le plus simple et le moins onéreux possible. Le dispositif de traitement conforme à l'invention comporte un dispositif d'interconnexion optique suivi d'un dispositif de traitement adaptatif non linéaire. De préférence, le dispositif d'interconnexion optique est de type holographique. Selon un mode de réalisation, le dispositif d'interconnexion optique est un hologramme calculé et/ou synthétisé par processeur. Il peut être multiplexé spatialen ent et/ou en fréquence. Selon un mode de réalisation, le processeur neuronal est un circuit de traitement spécialisé réalisé avec des technologies classiques de l'électronique. Selon un autre mode de réalisation, A #le processeur neuronal est un circuit de traitement spécialisé réalisé avec un calculateur numérique (ordinateur, mini-ordinateur ou micro-ordinateur). Selon encore un autre mode de réalisation, le processeur neuronal est un circuit de traitement spécialisé comportant des matrices ferro-électriques. De façon avantageuse, on intercale entre le dispositif d'interconnexion optique et le dispositif de traitement adaptatif non linéaire un dispositif de traitement préliminaire, de préférence un dispositif de recentrage et/ou de normalisation. La présente invention sera mieux comprise à la lecture de la description détaillée d'un mode de réalisation, pris comme exemple non limitatif et illustré par le dessin annexé, sur lequel - la figure 1 est le schéma simplifié d'un corrélateur optique de type connu en soi, utilisé dans la présente invention - la figure 2 est le schéma du corrélateur de la figure 1 expliquant l'opération de corrélation telle qu'elle est utilisée par la présente invention - la figure 3 est le schéma simplifié d'un dispositif adaptatif non linéaire utilisé par la présente invention - les figures 4 et 5 sont des diagrammes d'exemples de fonctions non linéaires assurées par des éléments du dispositif de la figure 3 ; et - la figure 6 est le schéma simplifié d'un dispositif de traitement conforme à l'invention. L'invention est expliquée ci-dessous en référence au traitement d'images tel qu'utilisé par exemple dans des systèmes de reconnaissance de formes, mais il est bien entendu qu'elle n'est pas limitée à une telle application. Le dispositif de l'invention peut traiter des signaux très divers, tels que des signaux vocaux (reconnaissance de la parole, par exemple), ou des signaux fournis par des capteurs de grandeurs physiques (température, pression, vitesse, contraintes), ainsi que des signaux fournis par des processeurs électroniques sur leur bus de données. Le caractère adaptatif du dispositif de l'invention permet de lui faire traiter des problèmes d'ordre euristique tels que des problèmes d'optimisation de modélisation qui ne pourraient être résolus convenablement par des dispositifs de traitement classiques. Le dispositif d'interconnexion optique, de préférence tri-dimensionnel, utilisé dans un mode de réalisation préféré de l'invention est un corrélateur optique multiplexé spatialement, utilisant un hologramme. Cet hologramme peut être un hologramme mince, et, de façon avantageuse on peut en utiliser plusieurs disposés côte-à-côte. Selon un autre mode de réalisation, on utilise un hologramme épais (également appelé hologramme de volume), réalisé par exemple à l'aide d'un cristal photoréfractif. Le corrélateur optique étant bien connu en soi, on en explique succintement ci-dessous le fonctionnement, dans la mesure nécessaire à la compréhension de l'invention. Pour le mode de réalisation à hologramme de volume, différentes images Imi (i étant le rang des images et valant de 1 à M, M étant le nombre total des images) sont enregistrées holographiquement et successivement dans un cristal photoréfractif 1. Le multiplexage spatial des images est réalisé de la façon suivante. L'information contenue dans chaque image Im. est transférée à une onde optique en modulant l'amplitude et/ou la phase de cette onde. Ainsi, à chaque image Imi, symbolisée sur la figure 1 par le rectangle 2, correspond une onde optique Ai (x, y), x et y étant les axes du plan de l'image 2. Chaque image peut être enregistrée holographiquement dans le cristal 1 par interférence de deux ondes optiques.Une de ces deux ondes est la transformée de Fourier de Ai (x,y), transformée que l'on notera A1 ( '? , #). Cette transformée de Fourier est simplement obtenue à l'aide d'une lentille 3. L'autre onde optique est une onde plane dont la direction Ol fait un angle Ol avec la direction de l'onde Ai (v, > IA Le résultat de l'interférence de ces deux ondes dans le cristal 1 est la création d'un réseau d'indice 6 ni > ## (appelé hologramme de phase), proportionnel au réseau d'illumination 6 Ii ( '; , #) dans le cristal. On enregistre ainsi séquentiellement dans le cristal 1 l'ensemble des M images. L'opération de corrélation est expliquée ci-dessous en référence à la figure 2. Soit une image 4 d'ordre p, (1 4 p p l'ensemble des réseaux d'indice.Suivant chacune des directions Oi des ondes planes de référence correspondant aux M images, on note Cpi l'amplitude de la lumière diffractée et on a Cpi cristal Ap v \ > ) A. ( v, ) dv.d . f Ap (x,y) A1(x,y) dx dy (dans le plan réel). Pour plus de détails, on se reportera par exemple à la publication "optical Holography" de Collier, Burckhardt, Lin. Académie Press 1971. Le cristal photoréfractif 1, permettant l'enregistrement holographique de volume multiplexé spatialement, peut être un cristal de Niobate de Lithlum L1Nb03, ou avantageusement un oxyde de bismuth silicium Bí12Si020, ou tout autre cristal photoréfractif. Selon une variante, le multiplexage décrit ci-dessus peut être réalisé avec des hologrammes enregistrés photographiquement (par exemple avec de la gélatine bichromatée, comme décrit dans la publication "Optical Holography" précitée). En tant que dispositif de traitement adaptatif non linéaire, le mode de réalisation préféré de l'invention utilise un réseau neuronal. Il n'existe pas encore de définition ,précise des réseaux neuronaux. On va donc exposer ci-dessous ce que la présente invention entend par réseaux neuronaux, puis comment elle les met en oeuvre. Un réseau neuronal est un dispositif qui permet de réaliser des opérations de traitement de signal, et plus précisément, qui permet d'associer différents signaux de sortie du dispositif à différents ensembles de signaux d'entrée possibles. De plus, ce dispositif "apprend" cet ensemble d'associations sans programmation particulière, mais uniquement par présentation de différents couples (entrées, sorties) qu'on souhaite associer. Ce mode de fonctionnement s'appelle apprentissage supervisé. Les principales caractéristiques d'un tel dispositif du point de vue de la présente invention sont les suivantes - Il n'est pas nécessaire de formuler le problème, et donc de décrire ou de connaître la forme des signaux à traiter. Il suffit de les présenter à l'entrée du dispositif et, en comparant les signaux de sortie du dispositif à ceux désirés, à procéder à llnapprentissage'' décrit ci-dessous. - Un tel dispositif peut fonctionner avec une bonne résistance au bruit affectant le signal d'entrée, ou bien avec un signal d'entrée à faible résolution. On décrit ci-dessous des réseaux neuronaux en couches, mais il est bien entendu que l'on peut utiliser d'autres structures présentant la même fonction, par exemple des structures bouclées telles que décrites dans les publications "Self Organisation and Associative Memory" de T. Kohonen aux éditions Springer Verlag, 1984 et "Parallel Distributed Processing" de D.E. Rumelhart et J.L. Mc Clelland, MIT Press, 1986. On a schématiquement représenté sur la figure 3, les principaux éléments d'un réseau neuronal à plusieurs couches. La couche d'entrée 5 est constituée de N1 éléments d'entrée de signal, qui peuvent aussi bien être non-linéaires que linéaires, notés e(l)i (1=1... Ni). En reprenant la notation de la figure 2, le signal d'entrée est IC 12, et N1 est égal ou supérieur à M. Si on fait interférer l'onde diffractée par l'hologramme de volume avec une onde plane, le signal d'entrée du réseau neuronal pourra comporter une information plus riche que le simple La deuxième couche 6 est constituée de N2 éléments non linéaires et(2)1, (avec i'=l N2) appelés neurones. On a représenté sur les figures 4 et 5 deux exemples de la fonction que peut réaliser chaque neurone.La fonction a (x) de la figure 4 est appelée sigmoïde: la sortie (ordonnée) est une fonction monotone de l'entrée (abscisse), définie de moins l'infini à plus l'infini, qui présente un palier de saturation à a 1 et un autre à a 2. La fonction de la figure 5 a pour valeur a 1 de - cc à zéro et a 2 de 0 à + La troisième couche 7 est constituée d'éléments linéaires ou non e(J) (avec j=1.. N3). Les éléments des couches 5 et 6 sont reliés par une couche d'interconnexion linéaire 8 ou matrice, notée W(1)ij qui réalise un produit matriciel de ses entrées. Ainsi, ltensemble 9, comportant les couches 5,8,6 effectue l'opération: Les éléments des couches 6 et 7 sont reliés par une couche d'interconnexion linéaire 10 ou matrice, notée W( )Im' qui réalise également un produit matriciel de ses entrées. Ainsi, l'ensemble 11, comportant les couches 6,10,7 effectue l'opération Bien entendu, l'invention n'est pas limitée à trois couches, mais peut en comporter davantage. Il faut et il suffit que l'une d'entre elle comporte des éléments non-linéaires. En pratique, on Introduit sur chacune des couches de neurones (lorsqu'il y a plusieurs couches de neurones ou éléments non-llnésires) un neurone dont la valeur reste fixée à 1. Cela permet de réaliser pour chaque neurone de la couche suivante la fonction a (x-a), daps laquelle a est la valeur de la connexion entre ce dernier neurone fixe de la couche précédente, et x le signal d'entrée de cette couche précédente. Pour pouvoir utiliser un dispositif à réseau neuronal tel que défini ci-dessus, il est nécessaire de procéder préalablement à un "apprentissage" supervisé. L'apprentissage est le calcul des valeurs des connexions Wnij (avec n=1..L-1 s'il a L couches de neurones ; ou couches non-linéaires) dans le cadre du problème à résoudre. Pour les détails des différentes méthodes qui permettent ce calcul, on peut se reporter par exemple aux publications de Springer Verlag et MIT Prest citées ci-dessus. On va seulement exposer ci-dessous le principe général de l'apprentissage supervisé qui force le dispositif à s'adapter pour pouvoir effectuer les différentes tâches d'association qu'on lui impose. On choisit des valeurs de connexions aléatoires. On présente successivement différentes entrées parmi les couples (entrées, sortie) que l'on souhaite que le dispositif associe. Pour chacune des entrées présentées, on compare la sortie obtenue par le dispositif à la sortie désirée, et à partir de l'erreur entre ces deux sorties, on déduit les corrections à effectuer sur les matrices d'interconnexion pour diminuer cette erreur. On arrête l'apprentissage quand le dispositif ne fait plus d'erreur sur les exemples qu'on lui présente. Une des caractéristiques essentielles d'un tel dispositif est son immunité au bruit. En effet, quand l'apprentissage a été correctement réalisé, lorsque l'on présente au dispositif un signal d'entrée bruité qui n'a pas été présenté auparavant, le signal de sortie est celui correspondant à un signal d'entrée non bruité. On va maintenant décrire en référence à la figure 6 un exemple de réalisation du dispositif de traitement de l'invention. Dans cet exemple, les sources de signaux d'entrée sont des images 12, par exemple des diapositives, des photographies sur papier... Ces images sont analysées par une caméra 13 et les signaux résultants sont envoyés à un modulateur spatial 14, par exemple du type à cristaux liquides, coopérant avec un émetteur laser 15. Le modulateur spatial pourra fonctionner par codage en amplitude ou en phase de l'onde optique. En effet, pour réaliser l'enregistrement optique de ces images, il faut produire des ondes optiques monochromatiques (pour une même opération d'enregistrement) et cohérentes, pour pouvoir faire interférer ces ondes. Toutefois, pour des opérations d'enregistrement distinctes, on peut, le cas échéant, changer la longueur d'onde de ces ondes optiques. On associe ainsi un multiplexage fréquentiel ou multiplexage spatial du corrélateur optique.Les images 12 sont enregistrées optiquement sous forme d'hologrammes de volume multiplexés spatialement, comme expliqué ci-dessus en référence à la figure 1, à l'aide d'une lentille 16 et d'un cristal photoréfractif 17. L'acquisition des intensités lumineuses diffractées issues du cristal 17 est réalisée par un détecteur 18. Ce détecteur est par exemple une caméra CCD ou une barette de photodiodes. Les signaux de sortie du détecteur 18 sont envoyés à un processeur neuronal 19. Ce processeur peut être réalisé de différentes façons : par exemple soit un ordinateur ou un mlcro-ordinateur (les fonctions neuronales et les interconnexions y sont simulées numériquement), soit un processeur spécialisé permettant de réaliser les fonctions neuronales (non linéaires) et les interconnexions. On trouvera des exemples de réalisation dans l'article "Parallel Architectures for Neurocomputers" de Philips Treleaven paru dans Proceedings of European Seminar on Neural Computing, de Février 1988.De façon avantageuse, on intercale entre le détecteur 18 et le processeur 20, un dispositif 20 de traitement préliminaire par exemple de recentrage autour du zéro ou de normalisation, par exemple pour placer tous les pics de corrélation entre -1 et +1 (ou a 1 et a L'apprentissage du processeur neuronal du dispositif de la figure 6 se fait de la façon exposée ci-dessus en référence à la figure 3, en lui présentant les signaux du détecteur 18 correspondant à l'ensemble des images enregistrées par holographie de volume, et en modifiant les valeurs des interconnexions du processeur neuronal en fonction de l'écart entre la sortie réellement obtenue et la sortie désirée, et ce, autant de fois que nécessaire pour que le processeur ne fasse plus d'erreur. Le traitement proprement dit assuré par le dispositif de la figure 6 consiste en la présentation d'images à la caméra 13 et en la lecture des signaux de sortie du processeur 19. Ces images présentées à la caméra 13 comportent, bien entendu, certains analogies ou points communs avec les images ayant servi à l'apprentissage. Pour simplifier les explications, on se réfère ci-dessous aux lettres de l'alphabet, mais il est bien entendu que le dispositif de l'invention peut traiter, et est surtout destiné à traiter, des images beaucoup plus complexes. Pour l'apprentissage, on enregistre ces lettres manuscrites par différentes personnes, et pour le traitement proprement dit, on fait reconnaître au dispositif ces mêmes lettres manuscrites par d'autres personnes. Dans le cas de reconnaissance de formes d'objets, on procède à l'apprentissage sur des photographies de diverses qualités de ces objets, ce qui permet de reconnaître ensuite ces mêmes objets même flous (en mouvement, ou filmés dans de mauvaises conditions). On peut également traiter des images enregistrées différentes des images à reconnaître (le nombre d'images à reconnaître pouvant être supérieur ou égal au nombre d'images enregistrées). Les images enregistrées peuvent être des filtres déterminés a priori, permettant de projeter les images à reconnaître sur une base fixée. Par exemple, ces filtres peuvent être déterminés a priori pour le type de problème que l'on désire résoudre, mais indépendamment des images précises que l'on désire reconnaître. Les images enregistrées (ou les filtres) peuvent également être construites à partir des images à reconnaître (comme par exemple dans le cas de filtres non redondants). (voir par exemple l'article de D. CASASENT paru dans Applied Optics, vol 23 n0 10, 15 mai 1984, pages 1620 et suivantes. Ceci peut, par exemple, permettre de reconnaître un nombre d'images supérieur au nombre d'images enregistrées. Toutefois, une telle possibilité est offerte par le premier dispositif de reconnaissance évoqué ci-dessus si on considère que des images bruitées ou affectées de petites transformations telles que distorsion, rotation, sont différentes des images enregistrées. Le dispositif décrit ci-dessus présente par rapport aux dispositifs connus plusieurs avantages importants. Il est bien connu que le nombre de pixels permettant une représentation correcte (en termes de résolution notamment) d'une image est très grand. Par exemple, le nombre minimal de pixels pour reconnaître un visage d'après une photographie codée numériquement est de l'ordre de 105. De plus, le nombre de niveaux de gris doit être d'au moins 8 pour que l'information portée par l'image ne soit pas trop tronquée dès le début du traitement. Donc, si on désire réaliser numériquement les corrélations d'une image avec par exemple 1000 images, il faut procéder à 108 multiplications de mots de 3 bits. Actuellement, il n'est pas réaliste de considérer qu'avec les microprocesseurs existants ce temps de calcul puisse être Inférieur à quelques centaines de secondes.De plus, les images enregistrées nécessiteraient une mémoire de 37,5 méga-octets, ce qui impliquerait des temps de traitement beaucoup trop longs pour un traitement en temps réel. Par contre, le corrélateur optique du dispositif de l'invention permet d'enregistrer ces images très facilement, par holographie, par exemple par hologramme de volume, et d'effectuer les opérations de corrélation en temps réel. Selon un exemple de réalisation, on peut enregistrer environ 1000 images comportant chacune environ 106 pixels, et, ensuite, le temps de calcul est en réalité limité par le temps d'acquisition des intensités diffractées, donc inférieure à la cadence des images vidéo (1:25 de seconde) dans le cas d'un système d'acquisition à caméra vidéo. Un autre avantage, très important, est que la combinaison du corrélateur optique et du processeur neuronal permet un traitement de l'information prenant en compte l'ensemble des pics de corrélation. Un mode de fonctionnement du corrélateur optique particulièrement simple est de considérer que l'image Aio (x,y) reconnue lorsque l'on présente une image A p (x,y) est celle dont la corrélation Cpi est maximale. Pour optimiser le fonctionnement du dispositif, on peut procéder à plusieurs traitements sur les pics de corrélation, par exemple un pré-traitement tel que réalisé par le dispositif 20, ou d'autres traitements connus en soi. De par son mode d'apprentissage, le processeur neuronal s'adapte aux imperfections du corrélateur optique. Cet aspect adaptatif du processeur neuronal est très important car il permet d'utiliser pleinement les capacités du corrélateur optique sans se soucier de ses imperfections puisqu'elles sont automatiquement prises en compte dans le dispositif de traitement neuronal des pics de corrélation. D'un point de vue théorique, l'opération effectuée par la corrélation optique peut être formellement identifiée à celle effectuée par une matrice d'interconnexions. Il suffit de nommer e (o) =1... M) les M pixels fournis par le dispositif capteur (id'images et Wl )ll le ième pixel de la énième image enregistrée par holographie de volume dans le cristal photoréfractif pour mieux se rendre compte de cet aspect. La sommation continue apparaissant dans l'opération de corrélation est équivalente à une sommation discrète, au moins du point de vue formel. La couche e(l)i de neurones mentionnée ci-dessus réalise alors une fonction non linéaire qui peut être différente de celle réalisée par les autres éventuelles couches intermédiaires de neurones. Ainsi, le dispositif de l'invention peut être considéré comme un processeur neuronal pouvant réaliser des fonctions arbitraires et ayant un grand nombre de neurones d'entrée. La première couche (corrélateur optique) réalise la fonction de "contraction de l'information" (pour l'exemple cité, passage de 106 pixels à 103 pics de corrélation) permettant d'atteindre pour la matrice d'interconnexions des ordres de grandeur pouvant être aisément traités par des circuits électroniques classiques. REVENDICATIONS 1. Dispositif de traitement de signal adaptatif et non linéaire, caractérisé par le fait qu'il comporte un dispositif d'interconnexion optique (14 à 17) suivi d'un dispositif de traitement adaptatif non linéaire (19). 2. Dispositif de traitement de signal selon la revendication 1, caractérisé par le fait que le dispositif d'interconnexion optique est du type holographique. 3. Dispositif de traitement de signal selon la revendication 1, caractérisé en ce que le dispositif d'lnterconnexlon optique est un hologramme calculé et/ou synthétisé par processeur. 4. Dispositif de traitement de signal selon l'une des revendications 1 ou 2, caractérisé par le fait que le dispositif d'interconnexion optique est un corrélateur optique multiplexé spatialement (16,17). 5. Dispositif de traitement de signal selon l'une des revendications 1 à 4, caractérisé par le fait que le dispositif d'interconnexion optique est multiplexé en fréquence. 6. Dispositif de traitement de signal selon l'une des revendications 4 ou 5, caractérisé par le fait que le corrélateur optique comporte un cristal photoréfractif de volume (17) associé à une lentille optique (16). 7. Dispositif de traitement de signal selon l'une quelconque des revendications 4 ou 5, caractérisé par le fait que le corrélateur optique est constitué de plusieurs hologrammes minces disposés côte à côte. 8. Dispositif de traitement de signal selon l'une des revendications précédentes, caractérisé par le fait que le processeur neuronal est un circuit de traitement spécialisé réalisé avec des technologies classiques de l'électronique. 9. Dispositif de traitement de signal selon l'une quelconque des revendications 1 à 7, caractérisé par le fait que le processeur neuronal est un circuit de traitement spécialisé réalisé avec un calculateur numérique. 10. Dispositif de traitement de signal selon l'une quelconque des revendications 1 à 7, caractérisé par le fait que le processeur neuronal est un circuit de traitement spécialisé comportant des matrices ferro-électriques. 11. Dispositif de traitement de signal selon l'une des revendications précédentes, caractérisé par le fait que l'on intercale entre le dispositif d'interconnexion optique et le dispositif de traitement adaptatif non linéaire un dispositif de traitement préliminaire. 12. Dispositif de traitement de signal selon la revendication 11, caractérisé par le fait que le dispositif de traitement préliminaire comporte un dispositif de recentrage. 13. Dispositif de traitement de signal selon la revendication Il ou 12, caractérisé par le fait que le dispositif de traitement préliminaire comporte un dispositif de normalisation.