
La modélisation orientée objet permet la classification des problèmes de calcul scientifique, et par conséquent, par la factorisation qu'elle rend possible, elle fournit un excellent support pour la fédération d'efforts de développement. Malheureusement les performances en pâtissent souvent. De nouveaux langages, de nouvelles techniques de programmation réconcilient performance et généricité, permettant la naissance de bibliothèques de nouvelle génération (Olena, Vaucanson, VIGRA, BGL etc.).
L'objet de ce séminaire est la diffusion du savoir et des compétences sur la modélisation de bibliothèques métiers génériques et performantes.
Mots clés: Calcul Scientifique, Distribution, Génie Logiciel, Généricité, Grille, Langages, Multi-cœur, Paradigmes de Programmation, Parallélisme, Recherche reproductible.
2012-05-09/manzanera.pdf
2012-05-09/manzanera.zip
Antoine Manzanera
Concilier généricité et performance des systèmes de vision a toujours été au cœur des préoccupations scientifiques du laboratoire d'Électronique et Informatique d'ENSTA-ParisTech. Nous y avons abordé ce problème sous différents points de vue: électronique, algorithmique, et logiciel. Depuis nos travaux sur les rétines programmables et leur algorithmique exotique, nous avons progressivement intégré la multiplicité des modèles et structures de données, ainsi que l'emprise des architectures sur étagères, pour appréhender l'hétérogénéité des systèmes multi-plateformes. Dans cette présentation à deux voix, on abordera le problème sous deux angles complémentaires, l'un touchant au modèle et aux algorithmes, l'autre au logiciel et aux plateformes de calcul. Ce premier exposé présente un modèle générique de traitement et de représentation des images fondé sur les espaces de caractéristiques "local jets" (LJ, ou dérivées partielles multi-échelles), comme exemple de cadre algorithmique unifié. Grâce à un espace où la métrique naturelle est directement liée à la similarité visuelle, ce cadre permet d'aborder un grand nombre d'opérateurs de traitement d'images de bas niveau, qui correspondent généralement à la rétro-projection dans l'espace image de points de l'espace des caractéristiques transformé. Il permet aussi d'aborder des représentations visuelles de plus haut niveau (modèles d'objet par exemple) à partir de statistiques globales extraites de l'espace des caractéristiques. On justifiera cette représentation et on l'illustrera par diverses applications : Moyennes non locales (NL-Means) par Convolution dans l'espace LJ pour le débruitage de vidéos, Calcul du flux optique par recherche du plus proche voisin dans l'espace LJ, Modélisation de fond statique par échantillonnage de l'espace LJ, Détection d'objets par transformée de Hough dense...
Antoine Manzanera est diplômé de l'Université Claude Bernard à Lyon (Licence de Maths 1991 et Master d'Informatique Fondamentale 1993), et Docteur de Télécom-ParisTech en Signal et Images ("Vision artificielle rétinienne", 2000). Depuis 2001 il est Enseignant-Chercheur à l'ENSTA-ParisTech. Dans ses recherches, il s'intéresse au Traitement d'Images et à la Vision de bas niveau, du modèle mathématique à l'implantation parallèle sur un système embarqué. Il enseigne principalement en 2ème et 3ème année du cycle Ingénieur ENSTA, et dans le Master d'Informatique de l'UMPC (Paris 6), dans les spécialités Imagerie et IAD.
Matthieu Garrigues
Dans ce second exposé, Matthieu Garrigues parlera de ses travaux sur l'analyse des mouvements apparents dans un flux vidéo. La primitive de base, présentée dans un séminaire précédent, permet le suivi temps réel (supérieur à 30 images par seconde) de plusieurs milliers de particules. Ces travaux nous ont permis de développer un cadre générique facilitant l'analyse de scènes dynamiques prises de caméras fixes ou mobiles. Nous montrerons comment cette brique logicielle a été utilisée dans deux exemples d'applications : l'extraction des plans principaux et l'estimation de la profondeur dans un système mono-caméra. Le suivi de particules a été implémenté sur processeurs graphiques avec le framework CUDA, et sur CPU-multicœurs avec OpenMP. Nous expliquerons comment C++ a été utilisé pour factoriser un maximum de code entre ces deux implémentations.
Matthieu Garrigues est diplômé de la promotion CSI 2009 de l'EPITA. Depuis, il s'intéresse au développement et à l'implantation d'applications de vision sur des architectures parallèles. Il est actuellement ingénieur de recherche à l'unité d'électronique et d'informatique de l'ENSTA, où il travaille sur l'analyse temps réel de scènes acquises par des systèmes mobiles mono-caméra.