Services : Développement | Cours & Formation | Conseil | Veille Technologique
Références : Curriculum Vitae | Publications | Portfolio


Voici les projets au sein desquels j'ai été impliqué tout au long de ma carrière. Pour chacun vous trouverez le détail des principales activités réalisées ainsi que les principales technologies utilisées.

Chef du Projet inSat3D (2009-2012)
Corba, JMS, Client-Serveur TCP/IP, C++, Java, Qt, Open Scene Graph

inSat3D est un logiciel de supervision temps-réel et différé de système complexes, tel un satellite. Il intègre le modèle issu du design (CAO) et l'interface à la télémesure à travers une visualisation 3D animée en temps réel, permettant une approche système plus simple et plus rapide. Ce logiciel est utilisé dans le domaine de la formation des nouveaux opérateurs, dans le cadre de l’entraînement, de la communication, ou encore des opérations elles-mêmes. inSat3D a été déployé dans plusieurs centres de contrôle du CNES, d'Astrium ou encore de Thales Alenia Space.

Tâches réalisées personnellement sur ce projet :

  • Analyse des besoins et Conception du système
  • Module de télémesure (API conforme au standard CCSDS SM&C)
  • Module de gestion de la base de données système (XTCE)
  • Intégration du module de gestion des fichiers CAO (Catia V5)
  • Module de visualisation 3D (alarmes, navigation, ...)
  • Gestion de projet et support client

Expert Technique sur le Projet C3X (2009-2010)
C++, Qt, Open Scene Graph, CMake, QTest, CTest, CDash

C3X est une chaîne d'outils opérationnels destinée à évaluer les rejets et leurs conséquences sur l'environnement lors d'incidents nucléaires. Ce système opérationnel est déployé au centre technique de crise de l’IRSN (Institut de Radioprotection et de Sureté Nucléaire) pour aider les experts à produire analyses et recommandations à destination des pouvoirs publics.

Tâches réalisées personnellement sur ce projet :

  • Méthodologie de développement agile orientée tests
  • Développements sur framework applicatif commun

Expert Technique sur le Projet PO3D (2009-2010)
C++, Qt, Open Scene Graph, Virtual Planet Builder, osgGIS, GDAL

Planet Observer 3D (PO3D) est un logiciel de type globe virtuel (Google Earth, Virtual Earth, etc.) dédiée à la visualisation temps-réel de grosses bases de données terrain (monde entier à une résolution de 15m par exemple). Une interface simple et intuitive permet à l'utilisateur de naviguer entre des points d'intérêt (POI) identifiés et d'accéder aux informations associées (tourisme, culture, etc.). PO3D a été déployé chez de nombreux clients comme la région Languedoc-Roussillon, le parc Vulcania ou encore le Muséum d'Histoire Naturelle de Bruxelles.

Tâches réalisées personnellement sur ce projet :

  • Analyse des besoins et Conception du système
  • Développement de l'applicatif
  • Développements sur module de visualisation 3D
  • Développements sur module de génération (hors- et en-ligne)
  • Relation et support client

Expert technique sur l'atelier CHORALE (2008)
C++

L'atelier CHORALE est une suite d'outils utilisé par la DGA dans le cadre des simulations multi-senseurs pour le calcul de la signature spectrale des cibles. Pour plus d'information consulter cet article.

Tâches réalisées personnellement sur ce projet :

  • Industrialisation du modèle de BRDF développé pendant ma thèse

Directeur technique du projet Orealia (2006-2009)
C++, Qt, Ogre, Cg, GLSL, FFMpeg, FMOD, OCC, FBX, OpenNURBS

Orealia est une plateforme technologique reposant sur un moteur 3D temps-réel innovant qui exploite les capacités des nouvelles générations de processeurs graphiques (GPU) et généralistes (CPU multi-coeurs). Le rendu y est réalisé par l'intermédiaire de shaders à la précision du pixel, ainsi que par l'emploi de méthodes hybrides à base de lancer de rayons, dans le but d'obtenir une restitution photo-réaliste. A partir des données CAO issues des bureaux d'études, l'utilisateur peut procéder à la mise en forme, l'habillage et l'éclairage des objets, ainsi qu'à la scénarisation de la scène 3D.

Tâches réalisées personnellement sur ce projet :

  • Encadrement de l'équipe technique
    • Ingénieurs d'études et de recherche
    • Doctorant
    • Stagiaires (Licence, Master 1 et 2)
  • Conception et développement de la plateforme

  • Gestion du transfert technologique
    • Modélisation de BRDF/BTF
    • Méthodes d'ombrage
    • Calcul de l'illumination globale
  • Tests unitaires, validation et maintenance
  • Support/Documentation client
  • Démonstrations avant vente et salons
Orealia a notamment était mis à l'honneur par Apple dans sa rubrique Science, et est disponible au téléchargement sur son site.

Visualisez quelques vidéos : vidéo 1, vidéo 2, vidéo 3.

Chercheur sur le Projet RNTL LUMIERE (2005-2006)
C++, OpenGL, Cg, Open Scene Graph

LUMIERE est un projet pré-compétitif dont l'objectif est de mettre au point une chaîne complète, tant matérielle, logicielle que méthodologique, dédiée à la génération temps-réel d'images de synthèse d'objets virtuels, à leur rendu réaliste (éclairage), à leur exploitation conviviale et interactive, et à l'affichage grande échelle. L'architecture matérielle à disposition est un cluster de PC bi-processeurs équipés de carte graphiques hautes performances.

Tâches réalisées personnellement sur ce projet :

  • Analyse et Conception du système
  • API de gestion du pipeline de rendu programmable
    • utilisation de fichiers descriptifs en XML
    • support des vertex/pixel shaders Cg et GLSL
    • automatisation du paramétrage des shaders
    • optimisation du rendu
  • Base de donnée des matériaux CPU/GPU
    • création et modélisation de matériaux réalistes (BRDF)
    • gestion des resources nécessaires (textures, données numériques)
    • utlisation lors du rendu hors-ligne et temps-réel
Visualisez quelques vidéos : vidéo 1, vidéo 2.

Développeur sur le Projet Européen INSCAPE (2004)
UML, Rational Rose

INSCAPE est un outil intuitif pour la conception, l'écriture, la publication et l'expérimentation d'histoires interactives de quelque forme que cela soit: ludique, éducative, théatre, cinéma, simulation d'entraînement, etc.

Tâches réalisées personnellement sur ce projet :

  • Etude des systèmes multi-agents intelligents
  • Conception du moteur d'animation comportementale

Développeur sur le Projet Industriel V-GEO (2004)
C++, Qt, Vertigo

V-GEO est un module 3D temps-réel permettant de visualiser de très grandes bases de données géographiques haute résolution issues des Systèmes d'Information Géographique (SIG).

Tâches réalisées personnellement sur ce projet :

  • Modélisation des données cartographiques
  • Visualisation des données cartographiques
  • Spatialisation des données cartographiques
  • Module de calculs tactiques
  • Moteur d'animation des entités géographiques
Ce produit a été choisi pour 12 systèmes de préparation de mission de la DGA et de la sécurité civile, ainsi que pour des showrooms d'images satellites au CNES et au sein de différents musées.

Visualisez une vidéo.

Développeur sur le Projet Européen V-MAN (2003-2004)
C++, Qt, OpenGL, ODE, Kineo Path Planner

V-MAN propose un système intuitif autorisant un non-spécialiste à créer, animer, contrôler et interagir avec des personnages virtuels 3D. Ce projet a été salué par la critique (notamment le magazine Pixel) et a obtenu deux récompenses à la conférence internationale Laval Virtual 2004 :

  • Lauréat du trophée Personnages animés en temps-réel
  • Grand Prix de la ville de Laval
Tâches réalisées personnellement :
  • Méthodes d’optimisation numérique pour la cinématique inverse
  • Éditeur de poses
  • Interfaçage avec un système comportemental
  • Plannification de chemin
  • Tests unitaires, validation et maintenance du SDK
  • Rédaction des manuels de programmation et guides utilisateurs
Visualisez quelques vidéos : vidéo 1, vidéo 2.

Initiateur du Projet Open Source Ray Of Light (2000-2004)
C++, FLTK, PaintLib, STLPort, IDL

Ray Of Light (ROL) est un moteur de rendu physiquement réaliste intégrant différentes techniques de simulation sous forme de plugins : lancer de rayon déterministe (Ray Tracing), lancers de rayon stochastiques (Monte Carlo Ray Tracing), estimation de densité (Photon Mapping). Il propose aussi une modélisation originale des différents termes radiométriques (émittance, réflectance, transmittance, fonction de phase directionnelles et spectrales) à base d'ondelettes. Celle-ci autorise l'emploi de mesures réelles grâce à un algorithme de compression puissant et une optimisation efficace de la simulation. J'ai conçu et développé ce logiciel durant ma thèse et continu à assurer son maintient. Vous pouvez obtenir plus de détails en feuilletant ma thèse.

Ray Of Light est utilisé par le Centre Energétique Environnement de l'école des Mines d'Albi-Carmaux pour l'étude du transfert radiatif dans les procédés de combustion. Il est aussi intégré au projet COMANCHE de caractérisation des cibles terrestres à l' ONERA Toulouse.

Développeur sur la Démo Technologique Time-Edge (2001)
C++, DirectX, MFC, 3DS Max

Le monde du jeux vidéo et de la démo technologique ont toujours poussé vers l'avant les algorithmes et matériels 3D, notamment les cartes graphiques. C'est un milieu qu'il ne faut pas négliger, même lorsque l'on développe de façon plus professionnelle, car de nombreuses idées innovantes ensuite reprises en industrie y ont fait leur apparition.


La démo Time-Edge développée par le groupe Pulp Function() a terminée seconde dans la catégorie des Démos PC de la SLACH PARTY III. Vous pouvez la télécharger ici (configuration recommandée : Windows 2000, Athlon 1Ghz, 128Mb, GeForce II Pro, DirectX 8).

Initiateur du Projet Open Source VML (1999-2000)
C++, OpenGL, FLTK

La VRML Modelling Library (VML) est une librairie de gestion du format de description de scène 3D VRML 97. Elle propose entre autre :

  • un rendu 3D temps-réel en OpenGL
  • une gestion du graphe de scène
  • une architecture extensible via plugins

Ce projet est toujours utilisé à l'heure actuelle dans l'équipe synthèse d'images de l'IRIT, tant à des fins pédagogiques (travaux pratiques, bureaux d'étude) que comme support de base pour des projets de recherche (importation/exportation/extension du format VRML).