IRIMAS, équipe IMTI

Vision 3D, traitement de l'image et développement pour la microscopie photonique

Vision 3D, oculométrie, eyetracking, traitement de l'image

Sacha Bernet, Christophe Cudel, Sophie Kohler, Damien Lefloch
contact vision 3d :  christophe.cudel chez uha.fr

Mot-clés : eyetracking, oculométrie, calibration facile, ransac, parallax
Keywords : eyetracking, easy calibration, ransac, parallax

Généralité sur l'oculométrie (eyetracking)

oculomètre avec contact

Fig. 1 : système d'eyetracking avec contact

L'eyetracking ou oculométrie est un outil d'analyse qui permet de déterminer à quel endroit se pose le regard d'une personne. Cette information peut servir pour étudier le comportement humain ou commander un système. Par exemple, l'eyetracking trouve de nombreuse applications dans l'assistance aux personnes à mobilité réduite.
Il existe deux catégories de système : avec ou sans contact. Les systèmes sans contact (caméra fixe) possèdent l'avantage de la simplicité, mais l'inconvénient majeur réside dans l'absence de mobilité. Le Lab.El développe un modèle avec contact (Fig. 1): l'équipement est attaché à l'utilisateur et lui permet donc d'être mobile. L'inconvénient réside dans une calibration du système plus fastidieuse.

Principe

Diverses méthodes permettent de connaître la position de la pupille. La vision est ici utilisée : une image numérique de l'oeil va permettre d'extraire la position du centre la pupille. Le but est ici de lier la position du regard à la position de la pupille dans cette image. Différentes étapes sont nécessaires :
  • modélisation du système, consistant à décomposer l'opération de projection en différentes opérations mathématiques,
  • calibration de la caméra,
  • détection du centre de la pupille.


Modélisation du système de vision. Calibration. La scène en 3 dimensions est projetée sur une image en deux dimensions grâce au système de vision. Pour caractériser cette transformation, il faut d'abord caractériser la caméra.
Les paramètres de la caméra sont d'abord estimés à l'aide d'une mire (estimation de la pose). La projection d'un point de la scène 3D vers l'image 2D nécessite 3 transformations :
  • un changement de repère "RT", combinant rotations autour des axes et translation.
  • une projection en perspective "F" (3D->2D)
  • Une mise à l'échelle "A"
Calibration facile monopoint

Fig. 2: Principe de la calibration rapide monopoint (à gauche), comparé à la calibration classique.

Les paramètres A et F sont dit intrinsèques, car propres à la caméra. Si la scène est plane, l'ensemble des transformations se résume en une matrice d'homographie, faisant le lien entre les 2 espaces. C'est une transformation conservant les droites et les plans : d'éventuelles distorsions liées aux écarts à l'optique de Gauss doivent être calculées et corrigées.
Des points de correspondance ("points d'appariements") entre la scène et l'image de l'oeil doivent être connus : c'est la phase de calibration, en principe effectuée par un utilisateur immobile pointant du regard différents points d'une mire (Fig. 2, à droite). L'homographie, permettant de lier la position de la pupille au point de regard dans la scène, est finalement obtenue par inversion d'un système linéaire par la méthode des moindres carrés.
Dans un souci de simplification et d'automatisation, une méthode de calibration rapide, dite à un seul point (Fig. 2, à gauche) a été développée. Elle permet de multiplier le nombre de points d'appariement et d'éliminer les points aberrants, tout en s'affranchissant des problèmes d'immobilité de l'utilisateur.

Détection de la pupille. Un éclairage externe infrarouge est utilisé : il permet de s'affranchir des variations extérieures de lumières et d'avoir un point fixe dans l'image grâce à la réflexion cornéenne de la source (image de Purkinje). Pour détecter le centre de la pupille, une méthode simple et rapide par seuillage peut être utilisée. Différentes variantes permettent d'améliorer la robustesse (algorithme Starbust associé à Ransac pour l'élimination de points aberrants). Le barycentre de la zone seuillée fournit le centre de la pupille. Le programme est développé en C++ à l'aide de la bibliothèque libre OpenCV, pour assurer des résultats en temps réel.

Résultats

Le suivi oculaire a été appliqué à l'étude du comportement d'un conducteur automobile.

Perspectives : oculomètre binoculaire et mesure de distance

Publications



Christophe Cudel, Sacha Bernet, Michel Basset, "Fast and easy calibration for head mounted eye-tracker", The 4th conferences on Communication by gaze interaction (2008)
Sacha Bernet, " Nouvelles approches pour la calibration et la modélisation d'un oculomètre", Rapport de Master, Université de Haute-Alsace (2008)
Accueil   xhtml   css