BCI : Interface Cerveau Ordinateur
Sommaire
Présentation
Objectif :
Développer une interface cerveau-ordinateur ergonomique et convivial.
Description :
Ce projet est réalisé en collaboration avec l'équipe du LAGIS. Le but premier est de faciliter la vie des personnes paralysés avec un systèmes interprétant directement leurs signaux cérébraux pour communiquer ou agir avec leur environnement. Des applications ont déjà été créées pour permettre à une personne complétement immobile de communiquer.
Spécifications
Les contraintes à respecter sont les suivantes :
-Respect et/ou compatibilité avec les technologies utilisées : Compatibilité de l'interface graphique avec OpenVibe. Compatibilité entre l'application et les signaux EEG utilisés (mains gauche et droite et pieds ou SSVEP)
-Grande configurabilité : Ne connaissant pas l'utilisateur qui viendra utiliser le système, il doit être le plus personnalisable possible. Le but est que chacun puisse s'identifier à notre application pour obtenir les meilleures résultats possible. Configurabilité de l'interface de "fond" ou du "jeux" ET configurabilité du mouvement du feedback.
-Facilité de configuration : l'utilisateur doit pouvoir changer les options facilement et rapidement.
-Modulation du programme : le code source doit être le plus générique possible, documenté, commenté et le plus facilement modifiable possible.
Journal
Entrée 1
Installation de OpenVibe (en deux fois pour le rendre fonctionnel) Suivi du tutoriel 1 proposé sur le site de l'INRIA : http://openvibe.inria.fr/designer-tutorial-1/
Entrée 2
Nous avons finalement réalisé l'ensemble des tutoriels disponible sur le site de l'INRIA mais malheureusement, cela ne nous a pas amener jusqu'à l'utilisation du VRPN. Nous Projetons maintenant d'étudier les moteurs graphiques 3D existant pour en choisir un pour notre développement.
Étude des différents moteur graphique 3D
Spécifications
Les contraintes de choix du moteur 3D sont les suivantes par ordre de priorités décroissantes :
-Compatibilité avec le VRPN de Openvibe
-Permettre le développement multiplateforme (Linux, Windows, MacOS)
-Simplicité de développement
-Ressources nécessaire pour le mettre en œuvre minimisées
-Rendu visuel de qualité
Choix d'un moteur
Nous sommes partis de la liste de moteur graphiques disponible sur Wikipédia plus quelques autres trouvés grâce à Google
Moteur Jeux Vidéos
Voici les moteurs utilisés par les développeurs de jeux vidéos actuel avec un exemple connu pour référence :
-Anvil (Assassin's Creed)
-CryEngine (Crysis)
-Dunia Engine (Farcry)
-Frostbite (Battlefield)
-Havok (Halo)
-Hero Engine (Star Wars : Old Republic)
-Quest3D (Audiosurf)
-Source (Portal)
-Unreal Engine (Borderlands)
La plupart de ces moteurs sont très performants, ce qui implique l'utilisation de machines suffisamment puissante pour les mettre en œuvre. De plus, certain sont conçu exclusivement pour du développement de jeu pour console de salon. Même si leur complexité de programmation est tout aussi abordable que les autres, nous ne pouvons pas choisir ces derniers.
Autres Moteurs
-Outerra : Ce moteur permet surtout la génération d'immense espace 3D jusqu'à des planètes entières le rendu global est effectivement très joli mais les détails de petits éléments sont assez simpliste. Ce moteur n'est donc pas du tout adapter à notre projet.
Gestion de Projet et Sources
Planning
Présentation
27/02/2014
Bibliographie
OpenVibe
http://openvibe.inria.fr/tag/vrpn/
http://openvibe.inria.fr/documentation-index/#User+Documentation
Moteur 3D
https://fr.wikipedia.org/wiki/Moteur_3D
http://www.outerra.com/forum/index.php?topic=637.0
http://jeux.developpez.com/tutoriels/?page=prog-3d#ogre-3d