Brevet FR2912274A1 — publié le 20080808

PROCEDE DE COMMANDE A PARTIR D'UN SIGNAL OCULAIRE VOLONTAIRE, NOTAMMENT POUR UNE PRISE DE VUES. La présente invention concerne un procédé de commande à partir d'un signal oculaire, notamment utilisable pour une commande reliée à un dispositif 5 de prise de vues à au moins une caméra réelle ou virtuelle. Les mouvements de l'oeil sont des mouvements de faible amplitude (1 à 25 minutes d'arc), de très courte durée (0,01 à 0,05 seconde) et qui ont une vitesse angulaire qui peut atteindre 500 /s. Depuis plus de dix ans, on utilise les caméras vidéo pour recueillir le parcours oculaire et l'analyser. L'analyse du parcours oculaire 10 par le traitement des données oculaires permet de repérer les déplacements oculaires de nature involontaire que sont les micro-tremblements de l'oeil (nystagmus), les dérives lentes du regard, les clignements, les déplacements oculaires de nature volontaire (changement des coordonnées XY de la position de l'oeil sur l'écran), la vitesse des mouvements, la taille des saccades, les fixations oculaires et leur durée et 15 les mouvements de vergence. Le recueil et l'analyse du mouvement oculaire à l'aide d'un oculomètre, précédés d'une calibration nécessaire pour déterminer les coordonnées XY de la position du regard sur l'écran, sont très fiables, rapides et de grande précision. Ils permettent d'avoir en temps réel le parcours oculaire associé à 20 l'inspection du contenu d'un écran, notamment pour étudier l'intérêt porté aux composantes d'une scène visuelle. L'intérêt de la commande oculaire de dispositifs a été relevé très tôt (Ware & Mikaelian, An evaluation of an eye tracker as a device for computer input CHI +GI, 1987 û Conference Proceedings û SIGHI Bulletin ACM, p. 183-188), pour 25 des applications militaires (par example Smyth, Bates, Lopez & Ware, "A comparison of eye-gaze to touch panel and head fixed reticle for helicopter display control" û Proceeding of the 2'd Mid-Atlantic Human Factors Conference 1994, p. 49 et suivantes"), les interactions humain-machine (par exemple RJK Jacob "The use of eye movements in human-computer interaction techniques - what you look is what you 30 get" ACM Transactions on Information Systems 1991, 9(3), p. 152-169), avec la commande à distance (par exemple : projet du "IBM Almaden Research Center"), ou la commande robotique (par exemple : Atienza & Zelinsky, 2003 "Interactive skills using active gaze tracking" û Proceedings of the 5th International Conference on multimodal interfaces, Vancouver û Canada, p. 188-195). 2 Le mouvement oculaire, lorsqu'il est opératif, est plus rapide parce que plus direct que la commande motrice, ceci pour les commandes de pointage et de direction (travaux du "Gaze-Based Interaction Group"). Ainsi, une caméra à haute résolution placée à deux mètres d'une 5 personne peut suivre les mouvements de sa rétine et les traduire en commandes oculaires. Et il existe : - des dispositifs pour saisir des caractères alphabétiques à partir de l'analyse des fixations oculaires sur des claviers numériques, -des dispositifs de commande par le regard plus intégrés (gestion 10 des courriels électroniques, écriture de textes, comme le projet "Eye Gaze Interaction" et le système "Visuoboard") - et des dispositifs d'analyse du comportement sur des objets (filmés par une caméra) couplée à l'analyse du suivi du regard (Atienza & Zelinsky, 2003). 15 Le principe de tous ces dispositifs repose sur l'analyse d'une fixation oculaire d'une zone de l'écran ( location-based interaction ) en positionnant le curseur lorsqu'une fixation oculaire est détectée. La commande s'effectue alors par un clignement de l'oeil, par une commande manuelle (clic de la souris), ou encore par une durée longue de la fixation lorsqu'il s'agit de zoomer par exemple, ou d'ouvrir un 20 menu, associée à une durée de la fixation oculaire ( time-based interaction ). Ce principe ne permet pas la commande continue nécessaire pour mettre en oeuvre les fonctions de pilotage d'une caméra réelle ou virtuelle (zoom, mouvements de la caméra, .). Les mouvements des yeux et les logiciels d'analyse du parcours du 25 regard présentent trois caractéristiques qui expliquent pourquoi la commande oculaire s'est jusqu'ici limitée aux commandes oculaires qui ne considéraient pas le mouvement continu de ]'oeil comme un effecteur de commandes. Cette commande oculaire était alors réalisée à partir d'icônes ( location-based interaction ), de boutons ou d'emplacements bien définis. 30 La première caractéristique est que l'oeil capture de l'information et qu'il n'en produit pas. Lorsque les yeux font partie d'un système de commande, il faut distinguer ce qui relève de la prise d'information de ce qui relève de la commande. Toute méprise (produire une commande lorsque l'utilisateur regarde ou considérer qu'Il regarde alors qu'il veut produire une commande) rend le système de commande 35 peu fiable et difficile à utiliser. Une commande peut être, par exemple, une fixation suffisamment longue suivie d'un clignement des paupières...DTD: 3 La seconde caractéristique est que les yeux sont toujours en mouvement (des micros mouvements que sont les nystagmus jusqu'aux saccades oculaires d'amplitude variée). Il faut donc pouvoir bien distinguer ce qui relève des fixations de ce qui relève des déplacements oculaires. C'est ce que font tous les logiciels d'analyse de données oculaires qui agrègent les positions du regard proches spatialement et temporellement. Ils définissent ainsi des zones qui correspondent aux fixations oculaires. La troisième caractéristique est que les logiciels d'analyse ne fournissent, en sortie, que les fixations oculaires (localisation et durée) et les saccades l0 (localisation de départ, localisation d'arrivée, amplitude et durée). Les déplacements lents et orientés du regard dans une direction ne sont pas pris en compte par les logiciels d'analyse. Mécanique ou logicielle, la commande d'une caméra est toujours motrice, si bien qu'il faut gérer manuellement la caméra et par le regard ce qui est 15 filmé. Il n'existe pas de système de commande oculomotrice de prise de vues 2D, XY, alors même qu'un tel système présenterait d'indéniables avantages. Parmi les avantages, on citera la possibilité d'une commande mains libres, mais surtout la commande de la prise de vues d'une image à partir de l'image elle- 20 même dans laquelle la manière naturelle d'inspecter une scène visuelle est appliquée à la prise de vues. Un tel dispositif permettrait par exemple à un réalisateur disposant d'un viseur et d'un écran de contrôle de travailler directement la prise de vues à partir d'un écran de contrôle de grande taille. C'et écran de grande taille présenterait trois avantages: une plus grande liberté de mouvement du regard de l'opérateur, une plus grande précision dans l'analyse de la détection du mouvement de l'oeil, - une observation de l'image, par l'opérateur, dans une taille plus proche de sa diffusion finale. L'idée de base de la présente invention est d'utiliser le regard comme système de commande, notamment pour le pilotage d'une caméra réelle ou virtuelle 2D et/ou 3D, à partir de l'analyse des mouvements lents et orientés du regard. L'invention concerne ainsi un procédé de commande à partir d'un signal oculaire de commande caractérisé par les étapes suivantes : détecter au moins un mouvement lent correspondant à un déplacement oculaire pour au moins un oeil d'un opérateur, 25 30 35 - générer un dit signal oculaire de commande à partir d'au moins un mouvement lent détecté. - produire une commande à partir du signal de commande. Avantageusement, le dit mouvement lent correspond à un déplacement angulaire régulier de l'oeil dont la vitesse angulaire est comprise entre 1 duré par seconde et 40 degrés par seconde, notamment entre 1 /s et 30 /s, et plus particulièrement entre 5 et 20 /s. La détection du mouvement lent peut comprendre la détermination de son trajet, notamment de sa direction, par un procédé de calcul, notamment par 10 régression linéaire. La détection d'une saccade (ou mouvement rapide) et/ou d'une fixation peut produire une interruption de la génération du signal de commande. Le signal oculaire de commande peut être une fonction (croissante ou décroissante) du déplacement angulaire. Le signal oculaire de commande peut 15 représenter la position de l'oeil et/ou la vitesse du mouvement lent de l'oeil et/ou sa direction. De cette façon, dès qu'un mouvement lent est détecté, tous les paramètres de celui-ci peuvent être utilisés pour gérer une commande continue, son début et/ou sa fin,. Au moins un paramètre de la commande, par exemple une vitesse, 20 peut être fonction d'au moins un paramètre du déplacement oculaire, par exemple sa vitesse et/ou sa direction. Une commande peut, par exemple, consister en un choix entre des options. Ces options peuvent être réparties selon un continuum ou des valeurs discrètes en fonction d'au moins un paramètre du déplacement oculaire. Par exemple, 25 tant que le mouvement lent se poursuit, le choix reste ouvert, et l'arrêt du mouvement lent ou son interruption pendant une durée supérieure à un seuil choisi fixe le choix. Le début et/ou la fin de la commande peut être généré par le début et/ou la fin du signal oculaire de commande, ou bien encore par un ordre vocal, visuel et/ou manuel. Selon une première variante, le type de commande auquel le signal oculaire de commande est affecté est déterminé par au moins un paramètre du déplacement oculaire, par exemple sa direction. Selon une deuxième variante, le type de commande auquel le signal oculaire de commande est affecté, est déterminé par un ordre vocal, visuel ou manuel. Le signal oculaire de commande peut être également un signal par tout ou rien. 30 35 L'invention est particulièrement adaptée à la commande à distance de la prise de vues de caméras embarquées ou sur des bras articulés qui est très développée à des fins esthétiques, de télésurveillance, mais aussi d'intervention à distance lorsqu'il s'agit de manipuler des outils à distance. Lorsqu'il s'agit de 5 manipulation à faire à distance, il y a deux systèmes à gérer manuellement : la caméra (si on veut agir sur la prise de vues) et l'instrument que l'on commande. L'invention permet de commander la caméra par le regard et de commander l'instrument manuellement. L'invention s'applique en particulier à la commande oculaire d'au 10 moins une caméra réelle ou virtuelle. Le type de commande auquel le signal de commande est affecté peut être, par exemple le démarrage d'une prise de vues et/ou un zoom et/ou un réglage de diaphragme et/ou un réglage de mise au point et/ou une rotation de caméra autour de son axe et/ou un déplacement ( travelling ) et/ou (dans le cas d'un système 15 stéréoscopique) un entraxe et/ou une vergence. Il peut être déterminé par un ordre vocal (commande vocale et/ou visuel (fixation sur une icône, clignements, ...) et/ou manuel (clavier, souris, manette de jeu etc.) ou bien par un paramètre du mouvement angulaire, par exemple sa direction. Le procédé selon l'invention peut être caractérisé en ce qu'il 20 comporte une procédure préalable d'apprentissage affectée à un opérateur. Cette procédure se base sur : - l'analyse des données des positions oculaires dans des fenêtres temporelles successives de même durée T, le classement des ensembles de données de chaque fenêtre dans au moins deux classes, 25 - une classe de mouvements lents pour laquelle un ensemble de données comporte des données séquentielles de valeurs proches les unes des autres organisées selon une forme géométrique continue, par exemple un segment ayant une pente, - une classe de mouvements non lents sinon. La classe des mouvements non lents comportera, selon le mode choisi, deux sous-classes : - une sous-classe de fixations oculaires, et une sous classe de saccades oculaires, définies notamment par un pic d'accélération suivi par une forte décélération, sinon. D'autres caractéristiques et avantages de l'invention apparaîtront mieux à la lecture de la description ci-après en liaison avec les dessins dans lesquels : 30 35 6 - la figure 1 illustre le fonctionnement de la commande oculaire appliquée à une caméra vidéo, - la figure 2 illustre des repères de prise de vues, - la figure 3 représente les données oculaires de base pour deux mouvements lents précédés et séparés par des mouvements non lents. En abscisse, sont portées 4000 positions successives des yeux. Ces données sont échantillonnées toutes les 20 ms, soit une durée d'enregistrement de 80 secondes, - la figure 4a illustre la corrélation et la pente de régression pour un petit nombre de coordonnées successives d'un mouvement lent (4a). La figure 4b illustre la fonction bivariante relative aux données qui sont associées au mouvement lent. Les figures 5a et 5b illustrent une commande de caméra respectivement à l'aide d'un écran ou d'un verre à matrice active (5a), ou par vision directe d'une scène (5b). L'invention met en oeuvre la production, le recueil et le traitement de mouvements volontaires, lents et orientés des yeux, qui sont produits avec une lenteur et une orientation que le regard n'a pas dans ses conditions naturelles d'inspection des scènes visuelles. On trouve toutefois cette lenteur et cette orientation (que l'on peut facilement déceler) dans des cas de dérive involontaire de l'oeil vers le bas, hors inspection. Il s'agit des mouvements dits lents, de l'ordre de 1 /s à 40 /s, qui ne sont pas considérés par les logiciels de suivi du regard parce qu'ils ne correspondent ni à des fixations, ni à des saccades. La réalisation de tels mouvements lents, en l'absence de suivi oculaire d'une cible, nécessite un entraînement : les personnes non entraînées n'y parviennent pas : elles font des saccades (cf. Richard J. Krauzlis `Recasting the Srnooth Pursuit Eye Mouvement System'- Journal of Neurophysiology 91 : pages 591-603, 2004, notamment page 599). L'extraction des mouvements lents et orientés (en fait des micro-saccades qui fournissent un déplacement oculaire dans une même direction) est réalisée selon l'invention par une méthode d'analyse de données. Cette extraction permet de distinguer entre des mouvements intentionnels actifs destinés à agir sur la caméra et des mouvements naturels passifs de suivi. L'analyse, elle, est associée à une adaptation à l'utilisateur pour intégrer automatiquement ses particularités physiologiques et comportementales. Le système représenté à la figure 1 comporte une caméra 1, un oculomètre 2 et une installation 3 pour recueillir les informations de l'oculomètre. Ces informations sont recueillies en 4. Après filtrage, les informations utiles sont stockées en 5, puis classifiées pour produire une identification des mouvements lents en 6. Une table de correspondance permet en 7 d'interpréter les mouvements lents identifiés pour table de correspondance permet en 7 d'interpréter les mouvements lents identifiés pour générer une commande en 8 qui produit en 9 des signaux de déplacement et/ou de réglage de la caméra. Le procédé est le suivant ,: 1. un matériel de base qui comprend un oculomètre connu en soi. Cet oculomètre fournit les coordonnées XY de la position du regard sur l'écran où s'affichent la prise de vues caméra et la valeur de vergence des yeux, 2. une phase de calibrage qui a pour buts : a. d'ajuster l'enregistrement de la position de chacun des yeux par l0 rapport à des positions XY prédéfinies de l'écran, b. de mettre en correspondance la vergence des yeux à des positions en profondeur lorsqu'il s'agit d'oculométrie 3D, de commande de caméras 3D. Il s'agit de fixer successivement des points (croix) apparaissant à 15 égale distance sur l'écran. Ces points dessinent la grille de calibrage 2D, XY ou 3D, XYZ. Les valeurs enregistrées au moment du calibrage (coordonnées de l'oeil sur des positions prédéfinies) sont utilisées lors de l'analyse des données pour projeter géométriquement la position de l'oeil à chaque instant dans le plan XY de l'écran ou, pour la commande de caméras 3D, dans l'espace XYZ. 20 3. un affichage à l'écran qui comprend l'image de la prise de vues, deux diagonales Dl et D2 et un cadre centré C (figure 2). 4. des commandes de la caméra 2D ou 3D qui sont affichées à l'écran sous forme d'icônes : i. les commandes liées aux optiques de prises de vues (zoom, 25 point, diaphragme), ii. les commandes liées aux mouvements de rotation des caméras (panoramique horizontal ("pan") ou vertical ("tilt"), rotation autour de l'axe de la caméra ("roll") et à leurs combinaisons, les mouvements de travelling latéraux, verticaux, dans l'axe et leurs combinaisons, 30 iii. et, dans le cas d'une caméra 3D, les commandes liées aux réglages des paramètres du relief pour la profondeur (entraxe et vergence). 5. une fixation oculaire dans la zone correspondant à une commande, ou à une combinaison de commandes qui active cette commande ou cette combinaison de commandes. L'icône correspondant à la commande activée, ou aux 35 commandes activées, est mise en inverse vidéo pour indiquer que les mouvements lents du regard qui seront enregistrés correspondent à cette commande, 8 6. des coordonnées successives en XY ou en XYZ qui sont analysées en termes de proximité et de direction. On utilise des techniques d'analyse des données basées sur apprentissage pour déterminer en temps réel si les coordonnées successives relèvent d'une saccade (coordonnées distantes), d'une fixation oculaire (coordonnées proches sans direction) ou d'un mouvement lent du regard (coordonnées proches dans une direction approximative), 7. une table de correspondance pour chaque commande de la caméra qui permet de déterminer la valeur de la commande (avant ou arrière, par exemple, pour la commande zoom) à partir de la catégorisation de la direction repérée (valeur x croissant : zoom avant, x décroissant : zoom arrière), dans le cadre de limites des variations de valeurs , paramétrables, associées à chaque commande, 8. une valeur de la commande (par exemple : zoom avant ) est transmise au dispositif mécanique de la caméra qui est associée à une valeur de 15 vitesse proportionnelle au déplacement lent du regard, 9. un repérage d'une large saccade ou d'une fixation qui met fin à la commande, sauf en commande prise de vues . Une commande permettra de revenir à l'état initial qui précédait l'exécution de la commande. 10. Les conditions de réalisation du procédé sont les 20 suivantes : a. chaque commande est paramétrable. L'utilisateur détermine la relation entre la vitesse d'exécution de la commande et le déplacement lent de son regard, b. chaque commande est adaptable. Le système tient compte des 25 réussites et échecs pour l'exécution des commandes, 11. une phase d'apprentissage permet de paramétrer le dispositif et de l'adapter à son utilisateur. La prise de vues peut aussi être stéréoscopique, avec l'utilisation de deux ou N caméras pour correspondre à la disparité rétinienne de la vision binoculaire, 30 et être restituée avec le dispositif adéquat (par sélection anaglyphique, par polarisation linéaire et circulaire, sur écran auto stéréoscopique, à l'aide d'une carte de profondeurs de l'image (`zmap'), par un système de vision 2D augmentée ou par tout autre système de restitution en relief ou volume de type holographique. 9 Réalisation d'une commande oculaire pour diriger un mouvement de caméra 2D dans le plan de l'objectif Etape 1 û Sélection de la fonction prise de vues La fonction prise de vues est activée soit par l'appui sur une touche clavier, soit par une pause oculaire sur la zone du bouton prise de vues soit encore par un ordre vocal. Le bouton prise de vues est mis en inverse vidéo, indicateur du mode actif. Cela signifie que le dispositif d'initialisation est enclenché : dorénavant, les mouvements lents et leurs directions asserviront la caméra. Etape 2 û Analyse en ligne des données : détection du mouvement lent par la technique d'apprentissage non supervisé ou semisupervisé Les données de base sont les positions XY de l'oeil gauche (G) et de l'oe:il droit (D) sur l'écran, fournies en sortie par l'oculomètre, échantillonnées toutes les 20 millisecondes (T) comme dans le tableau 1 ci-dessous. Tableau 1. Données oculaires de base. Référence T X Y X Y (G) (G) (D) (D) 1 19 506 376 520 376 2 39 501 381 521 372 3 59 502 378 515 372 4 79 502 379 516 370 5 99 505 385 516 391 6 118 507 377 512 380 7 138 502 384 518 372 Le problème à résoudre consiste à repérer rapidement l'apparition de mouvements lents tels ceux de la figure 3. Les données oculaires de base sont susceptibles de contenir 3 types de mouvements oculaires : les saccades, les pauses et les mouvements lents. Le principe d'analyse consiste à différencier ces trois types de données oculaires séquentielles. A la différence des mouvements par saccades, les mouvements lents 25 se composent de données séquentielles de valeurs proches les unes des autres (micro saccades). Ces données peuvent êtres organisées selon différents modèles comme par exemple un segment ayant une pente, cette pente étant, ici, déterminée par régression 20 10 linéaire en raison de la relative dispersion des points qu'induit la succession des micro-saccades (voir la figure 4a dont l'échelle est agrandie). Les pauses oculaires, dont les données ont également des valeurs proches, s'en différencient par le fait que leurs données n'ont pas cette organisation selon un segment orienté. Les données sont analysées dans des fenêtres temporelles successives de 500 millisecondes, soit 25 données chacune. Un algorithme d'apprentissage non supervisé définit si les deux ensembles de données, traitées en bloc, appartiennent à une même classe ou non. L'apprentissage non supervisé consiste à identifier des classes d'éléments possédant des caractéristiques aussi semblables que possible qui les différencient des éléments d'autres classes. Les éléments sont ici des séquences de données appartenant à l'une des deux classes "mouvement lent" et "mouvement non lent". Les caractéristiques des données étant sujettes à une certaine variabilité et à des imprécisions, on peut utiliser : une méthode de classification vectorielle classique, - une classification floue, dont le but est de traiter des degrés d'appartenance à des classes imprécisément définies, associée à l'utilisation de méthodes statistiques telles que l'analyse de la variance (on renforce les résultats par l'utilisation d'un petit nombre de données étiquetées à priori par "mouvement lent" ou "mouvement non lent" afin de pouvoir utiliser une méthode d'apprentissage semi- supervisé), - ou par toute autre méthode de classification. La présence de deux classes successivement est l'indicateur d'une saccade. Ainsi, dans le cas de la régression linéaire, si deux ensembles de données correspondent à une classe, la corrélation XY permet de déterminer la pente de la droite de régression et de différencier entre pause oculaire et mouvement lent (figure 4b). Dans le cas du mouvement lent, le traitement des pentes successives permet alors de déterminer pour deux groupes de points successifs le mouvement de la caméra, car on connaît la direction du mouvement lent. Etape 3 û Corrections apportées au mouvement de la caméra par la technique d'apprentissage supervisé et par la commande. Les ajustements de la vitesse du mouvement de la caméra sont réalisés par technique d'apprentissage supervisé comme, par exemple, un apprentissage inductif par arbre de décision. Elle consiste en l'utilisation d'exemples étiquetés, chaque exemple étant représenté par diverses caractéristiques et par une étiquette indiquant une action le concernant. Et elle s'effectue en déterminant 11 automatiquement la pertinence des caractéristiques pour identifier l'action qui correspondra à un nouvel exemple dont on ne connaît que les caractéristiques. Cet apprentissage permet d'apprendre des règles liant le mouvement oculaire et le mouvement de la caméra. Les données étant ici encore imprécises ( plusieurs mouvements voisins de l'oeil pouvant, dans certains cas, conduire à un même mouvement de caméra) on utilisera, de préférence, une méthode d'apprentissage floue, comme, par exemple, un apprentissage par arbre de décision flou. Chaque commande étant paramétrable, l'utilisateur détermine la relation entre la vitesse d'exécution de la commande et le déplacement lent de son regard (point 10 de la description du procédé). La commande transmise à la caméra est corrigée à partir de ces paramètres. Une méthode de commande floue comme la méthode de Takagi-Sugeno dont le principe est d'exploiter des règles floues (telles que celles obtenues par un arbre de décision flou) pour piloter un système par des actions précises (comme celles indiquées dans la table de correspondance au point 7) permet une telle correction de façon automatique. D'autres méthodes utilisables d'apprentissage et de commande en logique floue sont décrites par exemple dans l'ouvrage de B. Bouchon-Meunier et C. Marsala `Traitement de données complexes et commande en logique floue' Ed. Hermès-2003. Le mouvement lent peut être utilisé pour effectuer une commande proportionnelle : la vitesse d'un zoom peut être, par exemple, fonction de la vitesse de déplacement de l'oeil. Cette commande peut être initiée : -par le mouvement lent lui-même, - par un ordre (vocal, manuel comme action sur un clavier, `clic' 25 d'une souris, action d'une manette de jeu, etc. ou bien encore visuel par fixation, par exemple, sur une icône). Le mouvement lent peut être également utilisé en mode tout ou rien pour effectuer une commande déterminée à l'avance. Le mouvement lent peut être utilisé pour sélectionner un type de 30 commande. On peut, par convention, décider qu'un mouvement horizontal commandera un `travelling horizontal', un panoramique ou bien encore un mouvement combiné de panoramique et de `travelling' (le sens et la vitesse du mouvement décidant du sens et de la vitesse du `travelling' et/ou du panoramique). Le départ et/ou la fin de la commande peuvent être donnés 35 respectivement par le début ou la fin du mouvement lent ou bien par un ordre vocal, visuel ou manuel. 12 EXEMPLES D'APPLICATIONS : 1- Mouvements lents de commandes oculaires par mouvement lent pour caméras réelles ou virtuelles 2I) ou 3D (relief). Caméras 2D réelles : Le suivi d'un sujet à filmer peut s'appliquer à tous les axes de prise de vues et à toutes les fonctionnalités de la caméra. Les axes sont : -pour une grue de cinéma : travelling, montée (`boom') et rotation (`swing') du bras, - pour une tête : rotation horizontale (panoramique `pan'), verticale (`tilt') et autour - de l'axe optique (`roll'), -pour une caméra équipée d'un zoom : zoom, mise au point et/ou diaphragme, -pour une caméra équipée d'accessoires : variation compensée de la vitesse de l'obturateur et/ou du diaphragme (`Variospeed') -et en général toute fonction de prise de vues intégrée au menu caméra. Caméras 3D (relief) réelles : la vergence et l'entraxe. 20 Asservissement de tout effet motorisé ou algorithmique sur les caméras : vitesse de fondu, etc. Toutes ces fonctions peuvent être asservies par le regard et sont cumulables notamment de façon hiérarchisée ou non, en définissant le type de commande, par exemple, à l'aide d'un ordre manuel, visuel ou vocal. 25 EXEMPLE : suivi d'un match de football avec mouvement combiné de panoramique et de `travelling' à partir d'un mouvement lent. Décision préalable : le `travelling' suit l'action à une vitesse pouvant aller jusqu'à 10 m/s (vitesse de la course humaine) avec limitation angulaire afin de contraindre le travelling à suivre l'action avec une amplitude de panoramique 30 inférieure à, par exemple, 20 . Quand l'opérateur suit le ballon, le mouvement lent initie le panoramique. Dès que l'angle derotation approche 20 (par exemple 15 ),le `travelling' se met automatiquement en fonction pour revenir à une position de perpendicularité par rapport à l'axe longitudinal du terrain. Caméras virtuelles 2D et 3D : 35 Toutes les fonctionnalités des caméras réelles sont applicables aux caméras virtuelles. 10 15 13 Sur le même mode (combinaisons de panoramiques et de `travellings' à partir d'un mouvement lent), un spectateur visite un musée ou joue à un jeu vidéo en se déplaçant de salle en salle. Tous les axes peuvent être asservis et hiérarchisés, la seule limite à l'évolution du spectateur est constituée par le volume de l'environnement calculé (en images de synthèse). 2- Utilisation du mouvement lent pour choisir une valeur parmi plusieurs ou un continuum de valeurs. EXEMPLE : Outil d'étalonnage dédié à la post-production. L'opérateur choisit du regard un point de l'image sur laquelle il désire travailler. Ce choix détermine une zone de l'image ayant des propriétés équivalentes au point choisi . Cette zone est alors sélectionnée. Ensuite, il promène son regard sur un diagramme de chromaticité `CIE' (Commission Internationale d'Eclairage). Au cours de cette promenade du regard, les couleurs balayées s'affichent dans la zone sélectionnée. Une commande oculaire attribue la sélection à la zone. L'opérateur peut ainsi sélectionner en continu, sans perdre l'image des yeux, la valeur (couleur ou densité) qui lui convient. 3- Mouvement lent de sélection EXEMPLE : sélection d'outils Outil réel : Un opérateur à distance avec faculté de contrôle visuel (salles blanches) est amené à choisir différents outils de manipulation/travail pour opérer des actions sur des objets de natures (volumétriques) différentes. Du regard, il choisit dans une gamme l'outil adapté à la manipulation de l'objet, il en équipe son bras (commandé) et effectue son action. La détection de l'arrêt du mouvement lent du regard sélectionne par conséquent le type d'outil adéquat. Outil virtuel : Un joueur peut, sur le même principe, accéder à des instruments de différentes sortes sélectionnés par le regard. 4- Combinaison d'un mouvement lent et d'ordres annexes. De la même façon que tout mouvement d'une caméra réelle ou virtuelle 2D ou 3D peut se combiner en fonction de la décision et de la hiérarchie choisie par l'opérateur, celui-ci peut décider à tout moment l'ordre de départ du mouvement de la caméra ou l'ordre d'arrêt, ou au milieu d'un `travelling', ajouter un 35 zoom ou un changement de vergence dans la profondeur du cadre. Dans ce cas, l'ordre peut être manuel, lié à la gestion d'une icône ou vocal, ce qui permet de ne pas quitter l'action des yeux. 5- Prise en compte de la vitesse. EXEMPLE : rotation autour de l'axe optique (`roll') dans une 5 image de synthèse Le mouvement lent de basculement (rotation) de la tête de l'observateur indique à la fois, pour la rotation effectuée en correspondance à l'écran, le sens, la vitesse et l'accélération de la rotation produite. Cette rotation s'effectuant selon l'axe passant par le point fixé par l'opérateur sur l'écran et le point médian entre 10 ses deux yeux. - Le mouvement se poursuit sans intervention de l'opérateur jusqu'au moment où il décide de l'arrêter. - S'agissant d'une caméra, il peut, avant l'action, choisir par le regard un certain nombre d'images de ralenti de début et/ou de fin. 15 6- Commandes liées aux réglages des paramètres du relief : L'entraxe caméra peut augmenter ou diminuer en fonction de l'observation d'une échelle ou d'un barre-graphe qui fait suite à un ordre vocal ou au repérage d'une icône appropriée. La vergence peut être gérée par le repérage visuel du plan de 20 convergence. Ceci implique qu'il existe un repère visuel. 7- Suivi d'une scène réelle. Le déplacement du regard est détecté par un oculomètre. a. L'observateur regarde un moniteur ou une matrice active (Figure 5a). 25 Le regard peut se déplacer sur un moniteur 15, pour diriger l'orientation de la caméra à commander pour cadrer un objet 16. Il peut ainsi diriger une télé-opération à distance quelle que soit cette distance. b. L'observateur regarde une scène réelle à travers un verre à matrice active (Figure 5a). 30 C'est l'exemple d'un match de football ou d'une pièce de théâtre. L'observateur poursuit l'action des yeux à travers le verre transparent 15 de façon à commander la caméra dont les paramètres (valeur de cadre, déplacement,...) s'affichent sur le verre. On peut faire apparaître, pour rendre compte de sa géométrie, l'image simplifiée de la scène réelle ou, pour rendre compte de sa 35 profondeur, sa `Zmap' ou encore une image 2D augmentée d'indices de profondeurs. 15 Dans ce cas, la détection des mouvements du regard renvoie au sujet filmé. Un système d'affichage permet de visualiser le premier plan, le plan de convergence et le plan d'infini. c. L'observateur regarde une scène réelle sans intermédiaire (Figure 5b). Ici, il n'y a plus d'écran et on analyse directement le mouvement du regard porté sur une scène réelle 25 pour définir le cadre et l'axe caméra 20. Ce cadre et cet axe peuvent être visualisés sous forme d'image virtuelle. Un assistant peut, par addition, régler la valeur de point, etc. en fonction de la scène suivie par l'opérateur. Ces réglages peuvent également être commandés par le regard. Le dispositif peut donc fonctionner en cascade entre divers opérateurs, notamment pour l'opérateur qui commande sans écran tout ou partie des 15 fonctions de la caméra. Si ce sont l'orientation et l'angle de vergence qui sont détectés, toute commande en 2D et 3D est possible sans écran. 8- Exemple d'application concernant la gestion d'un outil en volume : 20 Commande d'un robot se déplaçant par commande du regard avec fonctions d'asservissement d'un outil à positionner et à commander. Pour ce type de fonction, la stéréoscopie peut présenter un réel avantage pour manipuler ou usiner un objet de surface complexe. Une détection des volumes du sujet traité et la modélisation de la 25 machine sont nécessaires. Un détecteur de positionnement interdit toute pénétration accidentelle et, s'il s'agit d'usinages, la distance et l'angle corrects entre l'outil et la surface à traiter sont connus. REVENDICATIONS 1. Procédé de commande à partir d'un signal oculaire de commande, caractérisé en ce qu'il comporte les étapes suivantes : - détecter au moins un mouvement lent correspondant à un déplacement oculaire pour au moins un oeil d'un opérateur, - générer un dit signal oculaire de commande à partir d'au moins un mouvement lent détecté, - produire une commande à partir du signal oculaire de commande. l0 2. Procédé selon la revendication 1, caractérisé en ce qu'un dit mouvement lent correspond à un déplacement oculaire régulier dont la vitesse angulaire est comprise entre 1 /s et 40 /s, notamment entre 1 /s et 30 /s, et plus particulièrement entre 5 /s et 20 /s. 3. Procédé selon une des revendications 1 ou 2, caractérisé en ce que 15 la détection du mouvement lent comprend la détermination de son trajet, notamment de sa direction par un procédé de calcul, notamment par régression linéaire. 4. Procédé selon une des revendications précédentes, caractérisé en ce qu'une détection d'une saccade et/ou d'une fixation oculaire interrompt la génération du signal oculaire de commande. 20 5. Procédé selon une des revendications précédentes, caractérisé en ce que le signal oculaire de commande est une fonction du déplacement oculaire. 6. Procédé selon la revendication 5, caractérisé en ce que le signal oculaire de commande représente le point de l'espace où l'oeil se situe et/ou la vitesse du mouvement lent de l'oeil et/ou sa direction. 25 7. Procédé selon une des revendications 5 ou 6, caractérisé en ce qu'au moins un paramètre de la commande, par exemple une vitesse, est fonction d'au moins un paramètre du déplacement oculaire, par exemple sa vitesse et/ou sa direction. 8. Procédé selon la revendication 5 ou 6, caractérisé en ce que la 30 commande consiste en un choix selon un continuum ou un choix entre un nombre discret d'options, en fonction d'au moins un paramètre du déplacement oculaire. 9. Procédé selon une des revendications 1 à 4, caractérisé en ce que le signal oculaire de commande est un signal par tout ou rien. 10. Procédé selon une des revendications précédentes, caractérisé en 35 ce que le type de commande auquel le signal oculaire de commande est affecté est17 déterminé par au moins un paramètre du déplacement oculaire, par exemple sa direction. 11. Procédé selon une des revendications précédentes, caractérisé en ce que le type de commande auquel le signal oculaire de commande est affecté est 5 déterminé par un ordre vocal, visuel ou manuel. 12. Procédé selon une des revendications précédentes, caractérisé en ce que le début et/ou la fin de la commande est généré par le début et/ou la fin du signal oculaire de commande. 13. Procédé selon une des revendications précédentes, caractérisé en 10 ce que le début et/ou la fin de la commande est généré par un ordre vocal, visuel ou manuel. 14. Procédé selon une des revendications précédentes caractérisé en ce qu'il est appliqué à la commande oculaire d'au moins une caméra. 15. Procédé selon la revendication 14, caractérisé en ce qu'il met en 15 oeuvre au moins un type de commande choisi parmi : prise de vue et/ou zoom et/ou diaphragme et/ou mise au point et/ou mouvement panoramique et/ou rotation de la caméra autour de son axe et/ou déplacement ( travelling ). 16. Procédé selon une des revendications 14 ou 15, caractérisé en ce qu"il est appliqué à la commande oculaire d'un système de prise de vue stéréoscopique 20 comportant au moins deux caméras. 17. Procédé selon la revendication 16, caractérisé en ce qu'il met en oeuvre au moins un type de commande choisi parmi : entraxe et/ou vergence. 18. Procédé selon une des revendications précédentes, caractérisé en ce qu'il comporte une procédure préalable d'apprentissage affectée à un opérateur en 25 analysant les données de position oculaire dans des fenêtres temporelles successives de même durée T et en classant les ensembles de données de chaque fenêtre dans au moins deux classes : - une classe de mouvements lents pour laquelle un ensemble de données comporte des données séquentielles de valeurs proches les unes des autres 30 organisées selon une forme géométrique continue, par exemple un segment ayant une pente, - une classe de mouvements non lents sinon. 19. Procédé selon la revendication 18, caractérisé en ce que la classe de mouvements non lents comporte deux sous-classes : 3518 - une sous-classe de fixation oculaire comportant des données de valeurs proches mais qui ne sont pas organisées selon une forme géométrique, par exemple un segment ayant une pente, - et une sous-classe de saccades oculaires sinon.