• Aucun résultat trouvé

Int´ erˆ et du concept de r´ etine artificielle

Syst` eme de vision r´ etinien

1.2 La r´ etine programmable

1.2.1 Int´ erˆ et du concept de r´ etine artificielle

Dans un syst`eme de traitement d’image conventionnel, l’image est acquise par un capteur bidimensionnel (cam´eraCCD4 en g´en´eral) puis transmise s´equentiellement `a un convertisseur analogique / num´erique5 et enfin `a un ou plusieurs calculateurs (processeur FPGA, DSP6, . . . ). Le flux d’informations en sortie du capteur repr´esente un gros volume de donn´ees qu’il est n´ecessaire de traiter en temps r´eel7.

Un capteur matriciel est compos´e d’´el´ements photosensibles appel´es pixels, le plus souvent de forme carr´ee ou rectangulaire, r´epartis orthogonalement les uns par rapport aux autres de fa¸con `a r´ealiser L lignes et N colonnes. Chaque pixel constitue un point

´el´ementaire d’´echantillonnage de l’image. C’est au niveau de cet ´el´ement que se produit la conversion photons / ´electrons. L’information obtenue est soit un courant, soit une tension. Cette grandeur peut ˆetre exploit´ee de deux fa¸cons :

– une lecture analogique,

– une num´erisation du signal en utilisant un convertisseur analogique / num´erique.

Dans ce cas, on obtient en sortie du syst`eme une information cod´ee qui peut ˆetre vi-sualis´ee ou m´emoris´ee pour des traitements, au moyen d’un ordinateur, par exemple.

Le traitement `a effectuer apr`es la num´erisation afin de prendre une d´ecision ou d’ef-fectuer une action se d´ecoupe en plusieurs ´etapes :

3pour exemple, la taille moyenne des motifs minimaux des microprocesseurs esr pass´ee de 1 micron au d´ebut des ann´ees 1990 `a moins de 0.05 micron aujourd’hui alors que pendant le mˆeme temps la fr´equence d’horloge est pass´ee de 66 Mhz `a plus de 3 Ghz [Anc02].

4Charge-Coupled Device, dispositif `a transfert de charges : d´esigne un capteur qui convertit la lumi`ere en signaux ´electriques qui peuvent ˆetre ensuite num´eris´es

5CAN

6Digital Signal Processor soit processeur de signal num´erique, un composant ´electronique optimis´e pour les calculs de traitement du signal.

7Un syst`eme temps r´eel est contraint par le temps de calcul, la cadence vid´eo est de 25 images par seconde soit 25Hz

...00111010...

Fig. 1.1 – Approche classique d’un syst`eme de vision artificielle.

– des op´erations de bas niveau qui traitent l’image localement, en chaque pixel.

Cette ´etape se prˆete bien `a une parall´elisation massive (par exemple, le lissage pour enlever le bruit moyen, le m´edian gaussien).

– des op´erations deniveau interm´ediairequi traitent des zones de l’image, des amas de pixels, des r´egions. Les donn´ees restent cependant structur´ees spatialement en distribution bidimensionnelle. Le volume d’informations `a traiter se r´eduit en mˆeme temps que la possibilit´e d’effectuer des tˆaches en parall`ele. Les donn´ees repr´esentent des attributs tels que la surface par exemple.

– enfin des op´erations de d´ecision (haut niveau) qui agissent sur des donn´ees sym-boliques, de faible volume et d´epourvues de structures spatiales (par exemple, on a reconnu ou non un ´el´ement de la sc`ene).

La figure 1.1 pr´esente le processus de traitement d’image sur une architecture classique en mettant en ´evidence leur faiblesse majeure. Les images qui sont s´erialis´ees lors de l’extraction du capteur sont amen´ees `a retrouver leur structure bidimensionnelle pour les traitements de bas niveau. Le flux d’information s’en trouve r´eduit et la d´epense

´energ´etique est souvent sup´erieure `a celle r´eellement n´ecessaire au traitement.

Ces architectures standard atteignent une limite technologique pour des questions de coˆut, d’encombrement, de d´ebit de donn´ees inh´erentes `a la chaˆıne d’acquisition (goulot d’´etranglement sur les entr´ees/sorties) et `a la puissance de calcul n´ecessaire.

Par opposition, dans un syst`eme `a base de r´etine artificielle, l’aquisition de l’image, la conversion analogique num´erique et les traitements de bas niveaux sont r´ealis´es au sein mˆeme du circuit de la r´etine (Figure 1.2). Les donn´ees sont trait´ees en exploitant au maxi-mum le parall´elisme massif disponible au niveau de la matrice de capteurs. Les transferts entre circuits sont limit´es afin de r´eduire la consommation d’´energie. Les informations transmises en dehors du circuit r´etinien sont des descripteurs d’image repr´esentant un faible volume de donn´ees et facilement manipulables dans des algorithmes de plus haut niveau par desprocesseurs scalaires8 hˆotes associ´es qui compl`etent le syst`eme. De plus,

8Un processeur est dit scalaire s’il ne traite qu’une seule donn´ee `a la fois

le processeur hˆote, d´echarg´e des traitements bas niveau, ne n´ecessite pas une grande puis-sance de calcul, ce qui permet d’exploiter des circuits compacts `a faible consommation.

Circuit Rétine Artificielle

Un circuit de conversion Analogique / Numérique

Fig. 1.2 – Illustration de l’architecture distribu´ee d’une r´etine artificielle num´erique pro-grammable. Chaque pixel comporte un photocapteur, un ´el´ement de traitement analo-gique, un CAN et un processeur ´el´ementaire num´erique.

Ainsi, un syst`eme de vision r´etinien r´epond `a des exigences de performances en terme de :

– vitesse d’ex´ecution, critique pour l’utilisation dans les syst`emes temps r´eel.

Les r´etines artificielles ont ´et´e inspir´ees par l’observation des r´etines biologiques du syst`eme de vision humain. En effet, le syst`eme de vision humain, par exemple, est capable de percevoir et d’interpr´eter une multitude d’informations provenant d’une sc`ene complexe en un temps tr`es bref. Le travail de la r´etine est donc de condenser l’information afin de fournir `a son syst`eme externe (cortex) des images pr´e-trait´ees.

Ces traitements de bas (ou moyen) niveau sont r´ealis´es localement et en temps r´eel.

De plus, ces traitements de donn´ees au sein du pixel ´evitent le goulet d’´etranglement au niveau des entr´ees / sorties du capteur comme sur les syst`emes de traitement d’images classiques.

Cependant, les r´etines artificielles ne sont pas les seuls syst`emes de traitement d’images capables de traiter l’information en temps r´eel. Une simple cam´era as-soci´ee `a un processeur DSP, ou mˆeme `a un ordinateur puissant permet d’effectuer ces mˆemes op´erations de traitements d’image en temps r´eel. La vitesse de traitement n’est donc pas le seul enjeu majeur des r´etines artificielles.

Bien sr, le temps de calcul d´epend aussi du type de traitement effectu´e et des

r´esolutions utilis´ees pour l’image `a traiter. Certains types de calculs se prˆetent mieux, comme nous le verrons, au parrall´elisme massif que d’autres. En ce qui concerne la taille des images, un circuit massivement parral`ele n’a normalement pas de temps de calcul d´ependant de la r´esolution hormis pour certains calcul (les calculs r´egionnaux en r`egle g´en´eral, que nous n’aborderons pas ici).

– compacit´e, requise pour les applications dans les syst`emes embarqu´es.

Bien que la solution d’int´egrer des ´el´ements de calcul et de m´emorisation au sein de chaque pixel paraisse id´eale, les techniques d’int´egration CMOS ne la rendent possible que depuis quelques ann´ees.

– consommation d’´energie, primordiale pour les syst`emes autonomes.

Elle permet d’´eviter des transferts massifs de donn´ees sur des longues distances, transferts qui se montrent tr`es p´enalisants en vitesse de traitement mais surtout en consommation d’´energie en raison des capacit´es des bus de transmission.

Si l’on consid`ere maintenant la conjonction entre la vitesse de traitement ´elev´ee, la compacit´e du circuit et la faible consommation d’´energie, alors les syst`emes concur-rentiels aux r´etines artificielles comme ceux ´evoqu´es ci-dessus sont beaucoup moins comp´etitifs.

Les capteurs num´eriques atteignent aujourd’hui une certaine fiabilit´e et sont utilis´es dans le secteur grand public (cam´escopes, photographies num´erique, webcam, cellule pho-tographique de t´el´ephones portables, . . . ), le secteur automobile (anti-collision, guidage, d´etecteur d’obstacles, . . . ) et des applications demandant des vitesses de lecture parti-culi`erement ´elev´ees (test de crashs, analyse d’explosion) ainsi que la vid´eosurveillance, la d´efense, ou encore pour des applications en imagerie m´edicale.

Afin d’am´eliorer l’´elaboration de syst`emes de vision `a base de r´etines num´eriques et de proposer des solutions optimales pour ces applications, il nous faut adapter les m´ethodes existantes et repenser une partie de l’algorithmie ( voir Ad´equation Algorithme Architec-ture [Sor94]). Telle est la principale caract´eristique de notre travail. Nous commen¸cons par nous situer dans les recherches existantes en effectuant un tour d’horizon historique des capteurs intelligents.