HeadTracking Avec une Wiimote. (Update 17/02/08)
Par Jean Charles MAMMANA, dimanche 27 janvier 2008 à 21:11 :: Programmation :: #46 :: rss
Inspiré de l'excellent travail de Johnny Chung Lee, j'ai décidé de réaliser un petit navigateur de photos reprenant son principe de vue "fenêtre".
Il s'agit de transformer le moniteur (ou la TV) comme étant une fenêtre au travers de laquelle on regarde un paysage.
Une Wiimote est équipé d'une camera permettant de reconnaitre jusqu'à 4 points infra rouge. En utilisant cette reconnaissance on peut, grâce au principe de triangulation et un peu de trigonométrie, connaitre la position d'un objet dans un espace 3D en mouvement devant une Wiimote.
En fixant les leds infra rouge sur des lunettes par exemples, on peut déterminer la position dans l'espace 3D de notre tête en face de l'écran.
De là, avec un peu de Pythagore, de Thales et de trigo, on peut réaliser la projection de la photo sur l'écran comme s'il s'agissait d'une fenêtre.

Etant donné que je n'aurai pas le temps de continuer et que le choix de la SDL était certainement le plus mauvais choix à faire. J'arrête le programme ici et je donne les sources pour quiconque aurait envie de reprendre/continuer.
Voici comment se servir du programme :
Download ici.
Update : Correction de petits bugs mineurs.
Voici le résultat :
Je tiens à préciser qu'a aucun moment j'ai usé de la bouteille de Martini pour réaliser cette appli :)
Une Wiimote est équipé d'une camera permettant de reconnaitre jusqu'à 4 points infra rouge. En utilisant cette reconnaissance on peut, grâce au principe de triangulation et un peu de trigonométrie, connaitre la position d'un objet dans un espace 3D en mouvement devant une Wiimote.
En fixant les leds infra rouge sur des lunettes par exemples, on peut déterminer la position dans l'espace 3D de notre tête en face de l'écran.
De là, avec un peu de Pythagore, de Thales et de trigo, on peut réaliser la projection de la photo sur l'écran comme s'il s'agissait d'une fenêtre.

Etant donné que je n'aurai pas le temps de continuer et que le choix de la SDL était certainement le plus mauvais choix à faire. J'arrête le programme ici et je donne les sources pour quiconque aurait envie de reprendre/continuer.
Voici comment se servir du programme :
usage:
ImageViewer fileName sceneWidthInCm sceneDistInCm sensorWidth screenWithInCm
- fileName : fichier image (jpeg, bmp, png, gif...)
- sceneWidth : largeur de la scène sur l image en centimètres.
- sceneDist : distance entre la camera et le sujet sur l image en centimètres.
- sensorWidth : taille de la barre de leds utilisée par la wiimote. (La barre de la Wii fait 21.5cm).
- screenWidth : largeur de l écran en centimètres.
ImageViewer fileName sceneWidthInCm sceneDistInCm sensorWidth screenWithInCm
- fileName : fichier image (jpeg, bmp, png, gif...)
- sceneWidth : largeur de la scène sur l image en centimètres.
- sceneDist : distance entre la camera et le sujet sur l image en centimètres.
- sensorWidth : taille de la barre de leds utilisée par la wiimote. (La barre de la Wii fait 21.5cm).
- screenWidth : largeur de l écran en centimètres.
Download ici.
Update : Correction de petits bugs mineurs.
Voici le résultat :
Je tiens à préciser qu'a aucun moment j'ai usé de la bouteille de Martini pour réaliser cette appli :)

Commentaires
1. Le samedi 02 février 2008 à 05:41, par EtienneB
2. Le samedi 02 février 2008 à 12:05, par Psykokwak
3. Le vendredi 15 février 2008 à 09:42, par pipo
4. Le vendredi 15 février 2008 à 10:56, par psykokwak
5. Le vendredi 15 février 2008 à 13:17, par pipo
6. Le vendredi 15 février 2008 à 16:38, par pipo
7. Le vendredi 15 février 2008 à 19:49, par Psykokwak
8. Le mercredi 19 mars 2008 à 00:08, par ZJP
9. Le mercredi 19 mars 2008 à 00:10, par ZJP
10. Le mercredi 19 mars 2008 à 09:20, par psykokwak
11. Le dimanche 13 avril 2008 à 14:20, par voi
12. Le vendredi 25 avril 2008 à 05:13, par Khytau
Ajouter un commentaire