FR 3067134 A1 20181207 FR 1770573 A 20170602 1 CORPS DU TEXTE DOMAINE TECHNIQUE DE L'INVENTION L'invention concerne de manière générale des périphériques et systèmes informatiques. Plus spécifiquement, la présente innovation porte sur un système et sur une méthode permettant de réaliser le suivi de l'oeil d'un utilisateur sans recours aux infrarouges, à partir de la méthode dite « des cascades », basée sur la technique du « Machine Learning ». Ce dispositif de suivi oculométrique rend possible la détection de la direction du regard, le positionnement d'un pointeur sur un écran ainsi que le contrôle d'une application par le seul mouvement des yeux. ETAT DE LA TECHNIQUE ANTERIEURE Les dispositifs de pilotage par les yeux sont utilisés afin de contrôler les opérations d'un ordinateur. Plus spécifiquement, ces derniers ont recours à un capteur afin d'identifier et de suivre la position du centre de l'oeil lorsque le regard s'arrête à une position fixe sur un écran vidéo. Le brevet US 5345281, attribué à Taboada et al. en 1994 présente un appareil permettant de positionner le curseur d'un ordinateur par le suivi du regard de l'oeil humain en analysant la réflexion sur l'oeil provoqué par un rayon infrarouge. Ce brevet requiert l'activation manuelle de contrôles. Le brevet US 5367315, attribué à Pan en 1994, présente un appareil de contrôle par l'oeil avec une activation manuelle ou podale. Ces appareils ne sont ni adaptés pour les utilisateurs nécessitant d'évoluer dans un environnement « mains libres », ni pour les utilisateurs à mobilité réduite. Un autre dispositif HMD est présenté dans le brevet US 5481622 attribué à Gerhardt et al. en 1996. Ce brevet présente une caméra montée sur un casque, ainsi qu'un écran vidéo, un ordinateur relié à un système d'acquisition et connecté à la caméra, et un programme informatique pour la calibration de la position de l'oeil de l'utilisateur par rapport à l'écran vidéo et pour fournir un retour à l'utilisateur sous la forme d'un curseur affiché à l'écran à la position exacte ou se porte son regard. Le système de Gerhardt détermine le centre de l'oeil de l'utilisateur en ayant recours à une segmentation binaire d'une image numérisée, produite à partir des paramétrages seuils pour les propriétés des pixels de l'image, pour les signaux vidéo numériques. 3067134 2 Cette méthode de codage par les niveaux de seuils est explicitée dans le brevet US4648052, déposé par Friedman et al. en 1987 dans le cadre d'un système de communication avec suivi de l'oeil. De même, un autre dispositif HMD possédant une unité de détection d'oeil est présenté dans le brevet US0101568, qui inclut une unité de signal d'entrée, une unité de communication sans fil et une unité de sortie. Alors que dans certaines situations, une caméra portée sur la tête peut être vue comme étant encombrante, les dispositifs de tracking porté à distance sont cependant mal adaptés lorsque l'utilisateur bouge activement sa tête ou son corps indépendamment de son regard. Les brevets US 4836670, US 4950069 et US 4973149, attribués à Hutchinson présentent des dispositifs de pointage de l'oeil à distance, d'un utilisateur qui contrôle le mouvement du curseur sur un écran d'ordinateur ou sur un écran d'affichage par le mouvement des yeux. Ce dispositif permet en outre l'activation et la sélection par l'utilisateur si ce dernier regarde, fixe, ou observe une région désirée pendant une durée prédéterminée. Plus d'exemples de ce type d'appareil peuvent être consultés dans le brevet US 5850211 attribué à Tognazzini en 1998. Ce dernier présente un appareil porté qui permet le suivi du défilement de l'oeil via un dispositif positionné au-dessus d'un périphérique vidéo. Le brevet US 6215471, attribué à DeLuca en 2001, présente un pointeur d'ordinateur contrôlé par une caméra montée sur l'écran d'un terminal, dirigée vers le visage de l'utilisateur, et présentant toute une série de contrôles supplémentaires en fonction de l'ouverture/fermeture d'un oeil ou des yeux de l'utilisateur. Une tentative pour corriger cette limitation a été attribuée à Lemelson et Al. dans le brevet US 2002/0105482 au sein duquel un système de capteurs incorpore un mécanisme asservi monté sur un écran fixe de terminal et permettant de poursuivre la tête de l'utilisateur ainsi que le mouvement des yeux. Ces appareils mécaniques, en revanche, constituent en eux-mêmes une limitation car ils ne conviennent pas vraiment pour tous les types d'applications. D'autres appareils de suivi du regard utilisent un capteur centré sur l'oeil de l'utilisateur afin de voir l'image créée par le reflet de la lumière infrarouge dans la rétine, dans le but de déterminer la direction du regard. Un tel appareil est présenté dans le brevet US 6394602, attribué à Morrison et al. en 2002. Un autre exemple de suivi du regard concerne le brevet US 5471542 attribué à Ragland en 1995, et présente une caméra vidéo braquée sur l'oeil de l'utilisateur afin d'analyser l'image numérique représentant l'ellipse formée par l'iris, les points se trouvant à 3067134 3 la frontière entre la sclère (membrane blanche et opaque, très résistante qui forme le blanc de l'oeil) et l'iris, par le biais de la détection de variations de l'intensité lumineuse. Un système de suivi de l'oeil additionnel a été présenté dans le brevet US 5331149, attribué à Spitzer et al. en 1994, et se référant à un système utilisant un réseau de photo récepteurs pour détecter la lumière reflétée dans l'oeil d'un utilisateur. Un autre appareil de capture d'image a été publié dans le brevet US 6388707, attribué à Suda en 2011, et se référant à un système capable de trouver des gammes de lumière comprises entre les sources infrarouge et les détecteurs de couplage de charge. Aucune des inventions et des brevets susmentionnés, pris séparément ou combinés ensemble, n'est considéré comme décrivant la présente invention telle que revendiquée. Ainsi, un dispositif de pointage d'ordinateur actionné par le mouvement de l'oeil, ne nécessitant pas de source infrarouge et résolvant les problèmes mentionnés ci-avant, est nécessaire. EXPOSE DE L'INVENTION En vue de la réalisation de ce but, on propose un système qui comprend un appareil de type caméra pour l'acquisition des images des yeux de l'utilisateur. Des dispositifs de fixation sont connectés à la caméra. Ces dispositifs de fixation déterminent les positions physiques relatives de la caméra sur une monture de lunettes, à laquelle les verres ont été enlevés au préalable. Un dispositif de numérisation vidéo est connecté à la caméra. Ce dispositif de numérisation vidéo prend en entrée l'image de l'oeil d'un utilisateur et converti la vidéo en une série d'images numériques. Les moyens informatiques sont électriquement connectés au dispositif de numérisation vidéo. Les moyens informatiques comprennent une unité centrale de traitement, de la mémoire, un écran d'affichage vidéo, une interface « Eye Tracking » et un code informatique interprétable par l'ordinateur stocké dans une mémoire. Les moyens de codage proposent un premier jeu d'instructions qui permet d'enregistrer le flux vidéo issu de la caméra. Un deuxième jeu d'instructions permet la détection d'un oeil humain en se basant sur un modèle de référence que l'on a, au préalable, construit grâce à l'apprentissage d'une base d'yeux humains ouverts/fermés et d'éléments du visage autres que les yeux, par le biais d'un algorithme d'apprentissage permettant de repérer des similitudes entre différentes images. Cette opération permet de renvoyer la position de l'oeil sous la forme d'un couple de données représentant les abscisses et les ordonnées. Un troisième jeu d'instructions récupère les informations de positionnement 3067134 4 renvoyées par les deux jeux d'instruction précédents. Un quatrième jeu d'instructions réalise la calibration du système via un algorithme de régression non linéaire, en adaptant les coordonnées reçues par le traitement des images renvoyées par la caméra, sur un écran de calibration positionné en face de l'utilisateur. Un cinquième jeu d'instructions vérifie et évalue les performances de la calibration, pour enfin la valider si les performances sont satisfaisantes. Un sixième jeu d'instructions positionne le pointeur d'affichage sur l'écran à la position indiquée par le regard. Un septième jeu d'instructions fournit à l'utilisateur un menu d'affichage sur l'écran, qui peut être activé par le mouvement de l'oeil pour sélectionner les actions du programme. La présente diffusion constitue une illustration des principes de l'invention et ne limite en aucune manière l'invention à ces représentations illustrées. PRESENTATION D'UN MODE DE REALISATION La figure 1 illustre un exemple de dispositif de suivi oculométrique conforme à l'invention, comportant deux systèmes complémentaires permettant de suivre les mouvements de l'oeil d'un utilisateur. Le système comporte une base de données d'apprentissage 1 peuplée avec des données d'images d'yeux gauche, droit, ouvert et fermé. Cette base est avantageusement utilisée pour effectuer une « phase d'apprentissage », permettant de générer des paramètres de modèles appris. Ces paramètres sont stockés dans une base de données de paramètres 2. Cette phase d'apprentissage est décrite plus en détails plus loin dans le présent document. Le dispositif comprend également une base de données de modèles de référence 6, comportant différents modèles d'yeux ayant été appris pendant la phase d'apprentissage. Le module d'apprentissage 3 retourne en entrée à la base de données de modèles de référence 6, un fichier XML qui comporte toutes les informations nécessaires à la détection de l'oeil. Un module de détection par modèle de l'oeil 7 est relié aux bases de paramètres 2 et de modèles de référence 6. Il est avantageusement pourvu de moyens de calculs tels un microprocesseur 8 et une mémoire 9. Ce module de détection par modèle de l'oeil 7 est également relié au module de suivi de l'oeil 10. Le module de suivi de l'oeil 10 est également relié à une base de données d'images à traiter 13. Le dispositif comporte un module d'apprentissage 3 avantageusement pourvu de moyens de calculs tel qu'un microprocesseur 4 et d'un module mémoire 5 de travail. Le module d'apprentissage permet d'effectuer la phase d'apprentissage décrite plus loin. 3067134 Selon diverses variantes de réalisation, les moyens de calculs 4, 8 et 11, tout comme les mémoires de travail 5, 9 et 12 peuvent être centralisés pour tous les modules ou tout le dispositif, ou encore être agencés de façon externe, avec connexion aux différents modules. La mise en oeuvre des différents modules préalablement décrits (par exemple les modules 3, 7 et 10) est avantageusement réalisée au moyen d'instructions de mise en oeuvre, permettant aux modules d'effectuer la ou les opérations spécifiquement prévues pour le module concerné. Les instructions peuvent être sous la forme d'un ou plusieurs logiciels ou modules de logiciels mis en oeuvre par un ou plusieurs microprocesseurs. Le ou les modules et/ou le ou les logiciels sont avantageusement prévus dans un produit programme d'ordinateur comprenant un support d'enregistrement ou médium d'enregistrement utilisable par un ordinateur et comportant un code programmé lisible par un ordinateur intégré dans ledit support ou médium, permettant à un logiciel applicatif son exécution sur un ordinateur ou autre dispositif comportant un microprocesseur. Le procédé est constitué de trois phases : une phase d'apprentissage avantageusement « offline » ou en temps masqué, une phase de détection de l'oeil en temps réel et une phase de suivi de l'oeil également en temps réel. La figure 2 présente les étapes du procédé conforme à l'invention. Des bases de données d'apprentissage 1, de paramètres 2 et de modèles de référence 6 sont fournies (étape 22). La phase d'apprentissage concerne l'étape d'apprentissage 23. La phase d'apprentissage nécessite la création d'une base de données d'apprentissage 1 qui contient des images positives qui représentent des yeux et leur sourcil ; et des images négatives qui peuvent contenir une bouche, une joue, une narine et de manière générale tout ce qui est présent sur le visage mis à part l'oeil. Ceci permet de faciliter la classification afin d'aboutir à la création de deux classes distinctes. Les paramètres résultants de cet apprentissage sont conservés dans la base de données de paramètres 2. La mise en place du classifieur est constituée de plusieurs étages (voir les « cascades » précédemment mentionnées) que l'utilisateur doit définir. Il peut ainsi spécifier le taux de détection maximal qui représente les 'vrais' positifs maximum possibles dans un classifieur ainsi que le taux de fausse alarme maximal qui représente les faux positifs maximum possibles dans un classifieur. Le modèle de référence 6 est utilisé pour la détection ; il permet de détecter de manière exhaustive la présence éventuelle d'un oeil sur une image. Cette détection est permise pour toutes les positions possibles de l'oeil ainsi que pour n'importe quel éloignement entre la caméra et l'oeil. 3067134 6 La détection de l'oeil est réalisée par le module de détection par modèle de l'oeil 7. Dans cette phase de détection, les paramètres des modèles appris de la base 1 sont utilisés pour rechercher d'abord la présence de la zone d'intérêt (cette zone équivaut à l'image positive) dans l'image numérisée issue de la vidéo. Si la zone d'intérêt se trouve dans l'image alors une deuxième recherche est effectuée pour détecter l'oeil à l'intérieur de cette zone d'intérêt. Le suivi de l'oeil détecté est réalisé par le module de suivi de l'oeil 10. Dans cette phase de suivi 26, la base de données d'images à traiter 13 fournit des images numérisées frame par frame issues d'une vidéo. Cette étape doit permettre le maintien ou le suivi de l'oeil détecté sans aucun décrochage malgré les éventuels mouvements du système (oeil, lunettes, tête, etc.). L'oeil reste ainsi toujours détecté, même lorsqu'il s'éloigne plus ou moins de la caméra et qu'il nécessite une mise au point de focale optique. Pour parvenir à une détection fluide et à une vidéo non saccadée, il est nécessaire de régler la vitesse de la vidéo par rapport à la vitesse de traitement des algorithmes mis en place dans les étapes 3, 7 et 10. L'algorithme de suivi prend en compte les caractéristiques biologiques de l'oeil humain couplés avec la vidéo. L'application projette ensuite un curseur au point de convergence du regard et offre la possibilité à l'utilisateur de réaliser des actions spécifiques. BREVE PRESENTATION DES DESSINS L'invention sera mieux comprise à la lumière de la description qui suit les modes de réalisation non limitatifs de l'invention en référence aux figures ci-jointes, parmi lesquelles : La figure 1 est un diagramme fonctionnel représentant les interactions entre les différents modules constituant l'invention. La figure 2 présente un croquis d'une monture équipée selon l'invention, en vue de côté. La figure 3 présente les étapes du procédé conforme à l'invention et permettant d'aboutir au suivi oculométrique. REVENDICATIONS1) La présente invention se rapporte à un dispositif et à un procédé de suivi oculométrique caractérisé en ce qu'il détecte l'oeil d'un utilisateur et en ce qu'il peut suivre son regard, sans nécessiter de quelconque source d'éclairage infrarouge. 2) La présente invention se rapporte à une modalité d'entrée dans un Framework multimodal caractérisé en ce que le suivi oculométrique permet d'interagir avec du contenu numérique affiché sur un écran.