Cette page est en cours de rédaction.
Apportez votre aide…

Ceci est une ancienne révision du document !



Opengazer

FIXME Page en cours de traduction…

Vous trouverez ci-dessous la seule traduction du principe de reconnaissance faciale appliqué à l'écriture oculaire pour les personnes atteintes d'infirmité motrice cérébrale.
Il n'existe aucune documentation en Français sur le sujet à l'heure actuelle.

Opengazer est une application open source qui utilise une simple webcam pour estimer la direction du regard. Cette information est ensuite transmise à des applications tierces chargées de traiter les signaux afin de permettre à une personne dans l'incapacité d’utiliser un pointeur physique (souris, trackball,…) de tout de même profiter d'un ordinateur.
Par exemple, lorsqu'utilisé en conjonction avec Dasher, Opengazer permet l'écriture oculaire.

Opengazer se donne pour objectif de devenir une alternative bon marché aux solutions commerciales sur le segment des dispositifs de détection des mouvements oculaires.

PiotrZieliński est le créateur de la version initiale d'Opengazer, projet soutenu par Samsung et la « Gatsby Charitable Foundation ».

Le flambeau de la recherche et développement d'Opengazer a été repris par Emli-Mari Nel, dorénavant soutenu par la Commission Européenne dans le cadre du projet AEGIS et la « Gatsby Charitable Foundation » (2008-2012).

« Test de capture des mouvements oculaires avec une webcam et le logiciel MPlayer. »

Test de capture des mouvements oculaires avec une webcam et le logiciel MPlayer

La version précédente d'Opengazer s'est révélée très sensible aux variations d'orientation de la tête du sujet. Afin de corriger ce défaut, nous concentrons nos efforts sur la correction des algorithmes de suivi des variations du port de tête avant la prise en compte des mouvements oculaires.
Le logiciel est écrit en C++ et en Python. Une vidéo démontrant les capacités de notre algorithme de suivi des mouvements de tête est disponible.
Sous Windows, la vidéo peut être visionnée à l'aide du lecteur vidéo VLC. Sous Linux, il est préférable d'utiliser le lecteur Mplayer.

La première version de l'algorithme de suivi des mouvements de tête est très rudimentaire. Il est fondé sur la reconnaissance faciale Viola-Jones, chargée de détecter les traits du visage à partir d'un flux vidéo (provenant d'une caméra ou d'un fichier vidéo) le plus rapidement possible sur le principe de l'image par image.
Les données brutes en abscisse et ordonnée peuvent être traitées par le logiciel Dasher. Le traitement consiste à récupérer les ordonnées (Y) en mode "plan" capturées lors de la détection ou bien utiliser la 2-D en abscisse et ordonnée.
Bien que le logiciel de suivi du port de tête nous promette de biens meilleurs résultats, cette première mouture s'avère assez performante sur le plan de la reconnaissance faciale. L'algorithme applique un simple filtre de processus autorégressif de traitement des données de suivi 2-D puis adapte les résultats de l'algorithme de reconnaissance faciale Viola-Jones et recentre la zone de détection image par image.
Les paramètres de détection ont été déterminés en fonction des spécificités de notre champ d'application (à savoir un utilisateur unique travaillant sur son ordinateur de bureau ou son ordinateur portable). l'algorithme obtient de meilleurs résultats sur les images en 320X240 avec un taux de rafraîchissement de 30 images par secondes, dans des conditions optimales d'éclairage.

« Test de reconnaissance faciale. »

Test de reconnaissance faciale

A subproject of Opengazer involves the automatic detection of facial gestures to drive a switch-based program. This program has a short learning phase (under 30 seconds) for each gesture, after which the gesture is automatically detected. Many patients (e.g., patients with cerebral palsy) have involuntary head motions that can introduce false positives during detection. We therefore also train a background model to deal with involuntary motions. All the software is written in C++ and Python and will be available for download soon. An example video of our gesture switch algorithm can be downloaded [here]. On Windows the video can be viewed with the VLC player. On Linux it is best displayed using Mplayer Movie Player. Note that this video has sound. Three gestures have been trained to generate three possible switch events: a left smile, right smile, and upwards eyebrow movement all correspond to switch events. The background model, in this case, detects blinks, sudden changes in lighting, and large head motions. The first official release will be at the end of June 2012. The first version of Opengazer has the following workflow:

Feature point selection: During startup the user is expected to select feature points on the face using the mouse. These points are tracked in subsequent steps in the algorithm. The first two points correspond to the corners of the eyes, which are also used in subsequent steps to extract the eye images. The user has to keep his/her head very still during the whole procedure. At this point the user should preferably save all the selected feature points.

Calibrating the system: During this step a few red dots are displayed at various positions on the screen. Images of the eyes are extracted during the display of each dot. The eye images and their corresponding dot positions are used to train a Gaussian Process that represents the mapping between the image of an eye and the position on the screen. Note that changes in head pose often requires the system to be recalibrated. Tracking:

After all the calibration dots are processed the Gaussian Process yields a predictive distribution, so that the expected point of eye focus on the display monitor can be estimated given a new image of the eye. If the user loads his/her selected feature points, the Viola Jones face detector is used once to determine the search region where the feature points are expected. Subsequently, optical flow is used to track each feature point. The eye images are extracted (using the first two selected corner points as reference), and the gaze is predicted using the extracted eye images and the trained Gaussian Process1).

Requirements:

vxl >= 1.5.1	        http://vxl.sourceforge.net/
opencv >= 0.9.7	http://sourceforge.net/projects/opencvlibrary
gtkmm-2.4 >= 2.8.0	http://www.gtkmm.org/
cairomm-1.0 >= 0.6.0  http://cairographics.org/cairomm/
boost >= 1.32.0	http://www.boost.org/

Under Debian testing:

# apt-get install libcv-dev libhighgui-dev libcvaux-dev \
  	    	    libgtkmm-2.4-dev libcairomm-1.0-dev libboost-dev
(vxl must be installed from the source)		    
Important: in vxl's ccmake, set BUILD_SHARED_LIBS to ON.

Pour installer ce logiciel, rendez vous sur la page Opengazer: a webcam-based eye tracker de Sourceforge.

Puis :

  • Cliquez sur Download snapshot.
    • Le téléchargement de l'archive-source commence…
    • Le gestionnaire d'archives s'ouvre sur le fichier opengazer-code-5
  • Extraire l'archive dans votre dossier favori. Par exemple : ~/Documents/Compilation. Le dossier opengazer-code-5 sera créé automatiquement.

Tout d'abord, ouvrez le fichier /truc/machin/bidule en modification puis …

Lancez l'application comme indiqué ici ou via le terminal (toutes versions ou variantes d'Ubuntu) avec la commande suivante :

machin-chose

Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.


Auteur-traducteur : René Stoecklin. Date de création : 22 novembre 2017.
Contributeurs principaux : René Stoecklin.

Traduction et adaptation d'après (en) « Analyse critique d'Open Gazer » — site : Eyecomtec ; auteur : inconnu ; date : inconnue.


  • opengazer.1511899881.txt.gz
  • Dernière modification: Le 28/11/2017, 21:11
  • par 78.194.2.45