• Aucun résultat trouvé

État de l’art des architecture de traitement d’image existantes

shEye (voir Figure 4.10a) pour de la surveillance vidéo. Ce système multi-capteurs à résolution hybride permet l’optimisation du processus d’acquisition. Composé d’un capteur basse résolution utilisé pour la détection de mouvements d’objets dans une scène, et d’un capteur haute résolution utilisé pour l’acquisition d’une fenêtre d’intérêt contenant cet objet.

(a) Architecture du système de vision MeshEye. (b) Architecture du système de vision StéreoCam.

Figure 4.10: Architectures de traitement d’image.

L’INCA+ est un exemple de caméra intelligente (Figure 4.11a), composée d’un cap- teur CMOSet de deux processeurs (Xetal et TriMedia). Le premier processeur Xetal est

adapté pour le parallélisme inhérent des opérations de traitement d’images bas niveau, tandis que le processeur TriMedia est utilisé pour exploiter le parallélisme au niveau des instructions, ce qui permet d’exécuter plusieurs opérations indépendantes par cycle. La

Figure 4.11breprésente le schéma synoptique de l’architecture de l’INCA+.

(a) La caméra INCA+. (b) Schéma synoptique de l’architecture de l’INCA+.

Figure 4.11: La caméra intelligente INCA+.

On peut aussi trouver dans la littérature des systèmes de vision intégrant unFPGA

en tant qu’unité de traitement, ce qui permet d’exécuter un large éventail d’algorithmes de traitement d’images de manière optimale.Van Der Horst et al.(2006) [186] proposent

un système de vision où deux caméras DICA321 et un FPGA de Xilinx sont utilisées

pour constituer une plate forme stéréo-vision (voirFigure 4.10b). Cette architecture est conçue comme un système généraliste de vision et traitement d’images, cependant dans l’article [186] elle est utilisé pour l’estimation de profondeur dans une scène par le calcul

Le laboratoire Le2i a développé un système de vision (voirFigure 4.12) à base de

FPGA[133]. Cette plate-forme est composée d’un capteurCMOShaute-vitesse (1.3Mpixels),

d’un circuitFPGAde la famille Virtex II de chez Xilinx et d’une interface USB-2.03. Dif-

férents algorithmes de traitement d’images ont été implémentées sur cette architecture, comme la compression d’image, le filtre de Sobel ou des opérations d’érosion/dilata- tion.

Figure 4.12: Caméra rapide du laboratoire Le2i.

Une autre architecture développée au sein de l’Institut Pascal à base deFPGA est

décrite dans l’article deDias et al.(2007) [45]. LeFPGAest utilisé pour l’implémentation

de différents modules afin de contrôler l’imageurCMOS, la transmission de données (via le Firewire) et les mémoires externes, ainsi que pour l’implémentation d’algorithmes de traitement d’image. Pelissier and Berry (2011) [156] ont développé une caméra intelli-

gente dédiée aux traitements stéréo, nommée BiSeeMOS (voirFigure 4.13). Cette caméra est composée de deux capteurs d’imageCMOS, d’un FPGA Altera Cyclone-III EP3C120

et d’une carte de communication USB2.0. Une des applications implémentée sur cette

caméra est la transformée de Census d’une image. Sur cette plate-forme des images de résolution 1024 × 1024 à une cadence de 100 images par seconde.

Figure 4.13: Caméra intelligente BiSeeMOS.

4.4 état de l’art des architecture de traitement d’image existantes 87

L’entreprise SEE FAST TECHNOLOGIES propose actuellement deux produits de type caméras rapides intelligentes à base deFPGA:

• ProcImage250 : est une version améliorée de la ProcImage240 (voirFigure 4.14-a). La carte mère est composée d’un FPGASpartan 3, d’une mémoire SRAM4 rapide

et d’une liaison USB2.0. Différentes applications sont implémentées sur cette ca-

méra comme par exemple : détection de défauts, asservissement dynamique à des phénomènes rapides, et rééducation.

• ProcImage500-Eagle : est une caméra rapide dédiée aux traitements embarqués en temps réel d’images prises à hautes cadences (voirFigure 4.14-b). La carte mère est composée d’unFPGAZynq de Xilinx, d’une mémoire DDR3 et d’une liaisonUSB3.0, la Figure 4.14-c représente l’architecture de cette caméra. Elle permet de réaliser des traitements d’images embarqués ultra rapides et exploitables en temps réel, comme par exemple : le suivi de points d’intérêt et la reconnaissance de formes.

(c) Architecture interne de la caméra ProcImage500-Eagle. (a) ProcImage250.

(b) ProcImage500-Eagle.

Figure 4.14: Architecture interne de la caméra ProcImage500-Eagle.

D’autres entreprises ont proposé aussi des caméras intelligentes à base de FPGA,

comme par exemple : Eye Vision Technology (EVT), OptoMotive, FastVision et Tattile . . . La

Figure 4.15représente les caméras intelligents de ces différentes entreprises.

LeTableau 4.4présentes un aperçu des plates-formes de type caméras intelligentes,

trouvées dans la littérature depuis 1999 jusqu’à présent.

systèmes plates-formes applications

capteur cpu comm énergie

Moorhead and Binnie

(1999) [131] Capteur CMOS Logique per-sonnalisée sur puce

- Secteur Détection de

contours bas ni- veau

VISoc Albani et al.

(2002) [5] Capteur CMOS,320× 256

Processeur

RISC 32bits - Batterie Détectioncontours bas deni- veau

Wolf et al.(2002) [194] Caméra video

Hi8 ProcesseursTrimedia

TM1300

- Secteur Reconnaissance des

gestes

Leeser et al.(2004) [107] Caméra Dalsa

1M30P FPGAXilinx Virtex

2000E

- - Domaine médical

Suite page suivante . . . 4 Static Random Access Memory (SRAM)

(a) RazerCam (EVT). (b) The FastCamera 300(FastVision).

(c) The FastCamera 405 (FastVision)

(d) ActuaTech. (e) Cameleon (OptoMo-

tive).

Figure 4.15: Caméras intelligentes qu’on trouve sur le marché.

systèmes plates-formes applications

capteur cpu comm énergie

Dickinson et al. (2005)

[46] Caméra Xilinx VirtexFPGA

II

- Système de sur-

veillance du nour- risson

StéreoCam Van

Der Horst et al.(2006)

[186]

Caméras

DICA321 Xilinx V2Pro7FPGA FireWire - Estimation de pro-fondeur

TRICam Arth et al.

(2006) [8] Video (pas decapteur) DSP Ethernet Secteur Détection d’objet

INCA+ Fatemi (2007)

[51] Capteur CMOS XetalProcesseursTrime-

dia

FireWire Batterie Détection et recon-

naissance de visage

MeshEye Hengstler

et al.(2007) [73] 2×tion sensor,low resolu-

1× VGA color

CMOS sensor

ARM7

@ 55MHz 802.15.4 Batterie La surveillance pardétection d’objet

Bauer et al.(2007) [13] Capteur CMOS,

64× 64

Blackfin DSP - Secteur Détection de véhi-

cule et estimation de vitesse

Caméra Le2i Mosque-

ron et al.(2007) [133] 1.3 MpixelsCapteur CMOS, XilinxFPGA

Virtex II

USB 2.0 - Compression

d’images - Filtre de Sobel

Dias et al.(2007) [45] Capteur CMOS,

2048× 2048

FPGA Altera Stratix

Firewire Secteur Suivi d’objets

EyeBot-M6 Dietrich

(2009) [48]

Two color came- ras,

352× 288

FPGA Xilinx Spartan3E500

USB 2.0 - Détecteur de points

d’intérêt HPSCJohannes Furtler and Eckel(2010) [89] Capteur Aptina MT9M413 AlteraFPGA 2S60 - - Systèmes de contrôle de qua- lité

4.5 conclusion 89

systèmes plates-formes applications

capteur cpu comm énergie

Norouznezhad et al.

(2010) [143] Capteur MicronMT9P001 FPGAXilinx Virtex-5

- Secteur Suivi d’objet

Diederichs(2011) [47] Camera 2592 × 1944 pixels FPGA Xilinx Spartan-3 - - asservissement visuel BiSeeMOSPelissier and

Berry(2011) [156] DeuxCMOS capteur FPGAAltera

Cyclone

USB 2.0 Secteur Transformée de

Census

Bravo et al.(2011) [23] Capteur CMOS

1.2 Megapixel FPGAXilinx XC4VFX12

Ethernet - -

NIR cameraZeng(2012)

[201] Capteur CMOSNIR FPGAXilinx

Spartan-6

- - la détection de gla-

ce/eau sur la sur- face de la route

HDR-ARtiSt Lapray

et al.(2013) [103] Capteur CMOS,1.3 Mpixels FPGAXilinx

Virtex 6

- Secteur Vidéo HDR

ProcImage250Technolo-

gies(2014) [173] Capteur CMOS,640× 480 FPGA Xilinx Spartan 3

USB 2.0 - Vidéo rapide

ProcImage500-Eagle Technologies (2014) [174] Capteur CMOS, 1280× 1024 FPGA Xilinx Zynq

USB 3.0 - Différent traitement

d’image DreamCamMerwan Bi-

rem(2014) [123] Capteur CMOS,1280× 1024 FPGA Altera Cyclone

USB 2.0 Secteur Extraction de primi-

tives

Table 4.4: Caméra intelligente.

4.5 conclusion

Dans ce chapitre nous avons présenté les trois chaînes de traitement d’images bas, moyen et haut niveau. La structure des FPGA a été introduite en tant que composant pour le calcul intensif de bas et moyen niveau du traitement d’image. Actuellement, avec l’augmentation de la taille desFPGAet l’apparition desSoC-FPGA, il est possible de

mettre en œuvre des systèmes complets ayant les trois niveaux de traitement d’image sur une seule puce.

Dans le chapitre suivant l’architecture du capteur de type caméra intelligente nommé DreamCam est présentée.

5

L A D R E A M C A M

5.1 introduction

Dans la première partie de ce chapitre, nous donnons une présentation générale de l’architecture de la caméra intelligente « DreamCam » utilisée au cours de nos travaux de recherche. Cette caméra a été développée au sein de l’Institut Pascal (Ex : Laboratoire des Sciences et Matériaux pour l’Électronique, et d’Automatique (LASMEA)). Lors de la

conception de la DreamCam le choix s’est porté sur l’utilisation d’unFPGA, car comme

cela a été expliqué précédemment ces composants sont idéaux pour les implémentations d’algorithmes de traitement d’images [200].

Dans la seconde partie de ce chapitre et afin de montrer l’efficacité de la DreamCam, nous avons choisi d’implémenter deux algorithmes de traitements d’image : le filtre Sobel pour la détection de contour et l’algorithme de détection de points d’intérêt Harris & Stephen.