Software-Configurable Processors

publicité
Travail de fin d’études 2007-2008 :
Etude de l'Adéquation de Différentes Plateformes à
l'Implémentation d'un Algorithme de Pattern
Matching
Contexte
La société Euresys développe et commercialise des produits hardware et
software destinés à l’acquisition et à l’analyse d’images issues de caméras
vidéo. Un marché important est celui de la vision industrielle qui s’adresse
généralement au contrôle de qualité de produits manufacturés. Au sein de
tels logiciels de contrôle, les outils dits de pattern matching occupent une
place centrale. Ceux-ci sont destinés à trouver toutes les instances d'un motif
dans un ensemble d'images-sources.
L’amélioration de la performance de ses produits est une des préoccupations
majeures d’Euresys qui est toujours à la recherche de nouvelles solutions.
Dans ce cadre, la montée en force dans le monde scientifique de méthodes
basées sur l'apparence locale suggère une possibilité d’accroître
significativement la précision des outils de pattern matching développés par
Euresys.
De manière schématique, les méthodes basées sur l'apparence locale
reposent sur l'extraction de caractéristiques visuelles discriminantes à partir
des images qui peuvent ensuite être utilisées pour des traitements de plus
haut niveau. Il s'agit d'élever le niveau sémantique des images, afin de
passer d'un raisonnement sur les pixels à un raisonnement sur une
représentation mathématique compacte intermédiaire. Les représentations
intermédiaires modernes sont pourvues de vertus comme la robustesse aux
occlusions, au bruit, à l'illumination ou au changement de point de vue.
Malheureusement, les méthodes d'apparence locale se caractérisent par des
calculs massifs et répétitifs sur les pixels des images. Ceci rend leur poids en
termes de temps de calcul relativement élevé par rapport au reste de la
chaîne de traitement de l'information. Néanmoins, le caractère répétitif des
calculs se prête bien à une optimisation des algorithmes exploitant le jeu
d'instructions de certaines plateformes. Le temps d'exécution peut en être
drastiquement diminué.
L'objectif de ce travail est triple :
1. écrire un logiciel de pattern matching fonctionnel basé sur l'apparence
locale,
2. évaluer les performances de ce logiciel, et
3. optimiser la méthode d'apparence locale pour trois architectures
hardware spécifiques.
Contenu du travail
Il s'agit de concevoir un logiciel de pattern matching de démonstration, mais
entièrement fonctionnel. L'intelligence de ce logiciel résidera sur un PC
standard basé sur un processeur Intel Pentium. Pour cette partie du travail
Auteur: Sébastien Jodogne
Euresys s.a.
18 juin 2007
Page 1/3
(notamment l'acquisition d'images), l'étudiant pourra s'aider des librairies
déjà distribuées par Euresys.
Méthode d'apparence locale
Le cœur de l'outil de pattern matching se basera obligatoirement sur une
méthode d'apparence locale classique et bien connue, définie par les deux
composants suivants :
1. un détecteur de points d'intérêt : détecteur de Harris-Stephens, et
2. un descripteur de caractéristiques visuelles : les steerable filters de
Freeman et Adelson.
L'outil de démonstration devra autant que possible être ouvert à d'autres
types de méthodes. Les résultats de la méthode d'apparence locale seront
appliqués au pattern matching par le biais de techniques similaires à celles
proposées par Lowe pour son architecture basée sur SIFT.
Exploitation de hardware spécifique
Contrairement à l'intelligence du pattern matching, la méthode d'apparence
locale devra bénéficier d'implémentations spécifiques à certaines catégories
de processeurs, à savoir :
1. Une implémentation de référence sur Intel Pentium.
2. Une implémentation optimisée pour Intel Pentium faisant usage des
instructions MMX et/ou SSE2.
3. Une implémentation s’exécutant sur un Field-Programmable Gate
Array (FPGA) qui équipe actuellement le hardware développé par
Euresys.
4. Une
implémentation sur un processeur Software-Configurable
Processor (SCP). Un SCP est un composant récent dont l’architecture
très innovante est basée sur l’association d’un processeur de type
RISC et d’une unité de calcul parallèle totalement reconfigurable. Les
principaux avantages de cette solution sont une puissance de calcul
élevée, une programmation aisée par l’emploi de langages de haut
niveau et rapport qualité/prix attractif.
Dans les deux derniers cas, l'étudiant pourra exploiter l'étude de faisabilité
proposée par un TFE antérieur, notamment en ce qui concerne les
techniques de programmation et les transferts d'images.
Chronologie
Les jalons suivants devront être successivement réalisés :
1. Implémentation de référence du couple Harris – steerable filters sur
Intel Pentium, accompagnée d'une validation mathématique des
résultats.
2. Application au pattern matching des résultats du point précédent.
3. Réalisation d'une batterie de tests afin de comparer les performances
de la nouvelle approche avec celles obtenues par les solutions
Auteur: Sébastien Jodogne
Euresys s.a.
18 juin 2007
Page 2/3
actuellement
d’Euresys.
implémentées
dans
les
produits
commercialisés
4. La dernière partie du travail consiste en l'optimisation de la vitesse
d'exécution de la méthode d'apparence locale pour les architectures
hardware citées plus haut. Une discussion critique énumèrera les
avantages respectifs des différentes implémentations.
Évidemment, ce programme est purement indicatif et potentiellement soumis
à modifications.
Encadrement
L’étudiant bénéficiera du soutien des équipes de développement hardware et
software de la société Euresys (http://www.euresys.com/). Il aura à sa
disposition une carte équipée d'un FPGA, une carte équipée d’un SCP, et un
environnement complet de développement (compilateur C/C++, assembleur,
…). L’acquisition de ce matériel a déjà été effectuée.
Responsable
du
travail
chez
([email protected]).
Euresys
:
Sébastien
Jodogne
Profil
Licencié en Informatique, ou Ingénieur Electronicien ou Informaticien
intéressé par les algorithmes modernes de vision par ordinateur et par
l'optimisation de logiciels.
Auteur: Sébastien Jodogne
Euresys s.a.
18 juin 2007
Page 3/3
Téléchargement