Une dimension supplémentaire

Systèmes d’acquisition pour la reconstruction 3D (1): La grille de capteurs

Une attention nouvelle est portée aujourd’hui sur l’acquisition de scènes par la prise de vues multiples.  Si l’on peut considérer qu’historiquement la photographie stéréoscopique aura probablement été la première forme de « multi capture », de nouvelles technologies font naître des dispositifs innovants comme les appareils plénoptiques à grilles de micro lentilles, les dispositifs de capture à 360° intégrant de multiples capteurs, etc… C’est à la reconstruction 3D que nous nous intéressons ici en expérimentant différents systèmes de capture. Le premier d’entre eux est illustré par l’image qui suit. Ce montage photographique fusionne les différentes positions d’un unique appareil reflex utilisé en réalité. Seize photographies ont été réalisées selon cette disposition en matrice 4×4, chaque visée convergeant vers la cible. On pourra rapprocher cette disposition particulière, des systèmes exploités pour la capture de champs de lumière (ou « Light fields »).

GrilleCapteursNB

C’est un masque en bois sculpté qui a été utilisé comme modèle. Les différentes prises de vues ont été soumises à quelques applications de reconstruction 3D afin de comparer leur interprétation du volume du sujet. La copie d’écran de VisualSFM (http://ccwu.me/vsfm/) qui suit, présente la disposition du masque face à la grille.  Les différents points de vue du capteur apparaissent sur la gauche.

VisualSFM-b3

Avec un tel système, VisualSFM va parfaitement reconstruire le volume du masque par un nuage de points dense. Les images qui suivent présentent deux vues du modèle 3D: la vue de profil est assez remarquable  compte tenu de la disposition frontale de la matrice de capture.

VisualSFM-c

VisualSFM-d

 

L’image ci-dessous est un anaglyphe en noir et blanc qui permettra de mieux percevoir le volume reconstruit par VisualSFM.

VisualSFM-anaglypheNB

 

 

Mais des résultats plus spectaculaires encore sont obtenus par le traitement des photographies par la plateforme Arc3D (http://homes.esat.kuleuven.be/~visit3d/webservice/v2/index.php).

Arc3D

La visualisation par Meshlab (http://meshlab.sourceforge.net/)  du modèle généré par la plateforme (un modèle maillé et texturé au format .obj) permet d’en juger.

Meshlab01

Meshlab02

 

 

Le logiciel Photoscan (http://www.agisoft.com/), quant à lui, est beaucoup moins adapté à un tel dispositif de capture. Une dissémination  des points de vues autour du masque lui aurait été plus favorable.

PhotoScan1

PhotoScan2

« Big data » et reconstruction 3D

La reconstruction 3D par photogrammétrie est une technique permettant de modéliser un sujet à partir de différentes photographies. Certaines plateformes collectant des images provenant de contributeurs multiples, peuvent fournir de telles ressources pour un sujet particulier. Pour expérimenter cette utilisation d’une application de reconstruction 3D sur des données publiées sur internet, nous sommes livrés à de simples recherches sur le web (via un moteur très connu !) pour en extraire quelques images d’une oeuvre d’un sculpteur du XVe siècle: Nicolas de Leyde.

 

NicolasDeLeyde-Recherche

Six photographies du buste de l’ Homme accoudé mélancolique ont été collectées et utilisées pour cette expérience. L’image qui suit présente une capture d’écran du logiciel Photoscan d’Agisoft (http://www.agisoft.com/) , qui a été utilisé pour cette reconstruction.

NicolasDeLeyle-cameras

 

Le logiciel, après avoir déterminé le point de vue de chaque capture, va autoriser différents traitements conduisant à la reconstruction du modèle en trois dimensions:…

NicolasDeLeyle-Nuage_de_pointsLa création d’un nuage de points,…

 

NicolasDeLeyle-Nuage_dense… sa densification,…

NicolasDeLeyle-Texture… puis, après le maillage, la création et le placage de la texture.

 Les deux dernières images sont des anaglyphes qui présentent des vues en 3 dimensions du modèle reconstruit.

NicolasDeLeyle-Stereo2

NicolasDeLeyle-Stereo3

 

Un lien pour découvrir Nicolas de Leyde, ce sculpteur du XVe siècle aux oeuvres étonnamment modernes: Le site du musée de Strasbourg qui lui a consacré une exposition en 2012: http://www.musees.strasbourg.eu/sites_expos/deleyde/fr/index.php

Interactions homme-machine (IHM 3) – « Flying buddhas » !;)

Cette troisième publication consacrée aux IHM exploite OpenSpace 3D qui nous permet d’associer tracking et vision stéréoscopique d’une scène dynamique.

Nous nous sommes inspirés d’un fichier exemple fourni avec l’application (stereo.xos) que nous avons personnalisé et complété par le tracking d’un marqueur de Réalité Augmentée.

IHM3a

 

 

Notre modèle 3d, qui remplace le cube du fichier original, est un Bouddha modélisé par photogrammétrie (voir page http://www.surrealites.com/?p=3352).

 

Afin de permettre son intégration dans l’application OpenSpace3D, notre objet 3d a été converti au format OGRE grâce au plugin blender2ogre (https://code.google.com/p/blender2ogre/). C’est la version 0.6 de ce plugin que nous avons chargé dans Blender 2.75

IHM3b

L’export va générer un fichier .mesh ainsi qu’un autre fichier .material. Ces deux éléments, ainsi que la texture, ont été intégrés aux ressources de la scène. La disposition des différents clones obtenus par duplication du modèle reprend celle du fichier exemple stereo.xos. La cinématique du modèle initial est également maintenue avec une rotation cependant limitée autour de l’axe des X.

IHM3f

 

Parmi les différents modes stéréoscopiques proposés par OpenSpace3D, c’est le format Anaglyph red/cyan que nous avons retenu.

IHM3h

Nous utilisons en effet une paire de lunette à anaglyphe pour porter un marqueur de Réalité Augmentée.

IHM3c

Ce marqueur (l’ id 25 du pluglT Input: AR marker ) a été imprimé et collé sur les lunettes en carton.

IHM3d

 

La zone d’édition des fonctions présente les différents PluglT utilisés ainsi que leurs interactions. Dans notre scène, les mouvements du marqueur, détectés par la webcam, vont influencer la rotation des éléments animés.

IHM3e

 

 

La capture d’écran qui suit présente l’application en cours d’exécution  (un clin d’oeil à Fred pour ses « flying buddhas » ! ;).

IHM3j

 

 

Interactions homme-machine (IHM 2)

L’étape suivante consiste bien évidemment à associer le head tracking à une visualisation stéréoscopique d’un modèle 3D ! ;)

Nous retrouvons, pour cela, Blender et son récent mode « Multi-view« . Le modèle utilisé est « le masque », un modèle 3D réalisé par photogrammétrie ( voir page http://www.surrealites.com/?p=3372 )

Interactions2a

En vue 3D, c’est ici le bouton central de la souris (la molette) que nous maintenons appuyé simultanément au tracking.

Nous continuons d’utiliser Camera Mouse pour le head tracking en ajustant cependant certains paramètres via le menu « Settings »:

CameraMouseSettings

Après avoir basculé la fenêtre « 3d view » de Blender en mode plein écran ( View > Toogle Fullscreen Area ) et activé Camera Mouse , tout déplacement latéral de la tête produira une rotation du modèle. L’animation suivante, constituée d’une séquence (limitée ! ) de captures d’écran, simule  cette rotation.

Interactions5L’utilisation d’un système intégré, également libre, offrant également une vision stéréoscopique et exploitant une grande variété de capteurs  devrait faire l’objet d’une troisième publication consacrée aux systèmes interactifs. A suivre ! :)…

Si l’expérience vous tente avec le modèle présenté, et sous condition d’un usage exclusivement pédagogique et non commercial, écrivez-moi: Je vous ferai parvenir le fichier .blend correspondant au masque.

Concernant cette série d’articles, tout comme pour chaque publication sur ce blog, toutes remarques et suggestions de votre part sont les bienvenues ! :)