Brevet FR2900754A1 — publié le 20071109

Système permettant de générer et d'animer des personnages virtuels destinés à assister un utilisateur dans un contexte déterminé. 1. Problème abordé Les technologies de l'information évoluent en permanence. Dans le domaine 5 des technologies de l'information et des communications, on observe aujourd'hui plusieurs phénomènes concomitants : - la diffusion de l'ordinateur s'est généralisée dans les entreprises comme dans le grand public ; - les utilisations se sont considérablement diversifiées et multipliées (outil de 10 travail et de performance, moyen de communication interne et externe, enseignement, jeux, culture, etc) ; le nombre d'informations et de connaissances immédiatement disponibles augmente exponentiellement ; - on assiste à une prédominance accélérée du visuel par rapport au textuel ; 15 - de nouvelles formes de communication inter-entreprises et inter-personnelles voient le jour, où l'utilisateur devient actif et non plus passif (apprentissage et enseignement permanents, encyclopédies interactives et partagées, liens sociaux, démocratie participative, etc). La nécessité d'identification à des caractéristiques communes, à des goûts ou à 20 des intérêts communs, voire à des marques ou à des produits apparaît alors comme importante pour les utilisateurs comme pour les entreprises. Dans ce contexte, les icônes ont remplacé le langage écrit. La souris est devenue le périphérique standard d'interface et Internet le nouveau support de communication. Devant les difficultés à apprendre le mode de travail le plus courant à l'ordinateur, 25 c'est-à-dire le langage de programmation, les utilisateurs se sont adaptés. Ils ont changé leurs habitudes en apprenant de nouvelles façons de communiquer. Mais celles-ci se sont révélées peu naturelles . Ceci pose la problématique de la relation homme-machine. Les ordinateurs (même parallèles) sont des machines séquentielles. Les 30 interfaces graphiques ont des facultés de compréhension et de restitution très limitées. Les périphériques clavier et souris sont peu intuitifs. Le support Internet, comme les bases de données, proposent un mode de navigation essentiellement arborescent. Avec la masse d'informations disponibles, les machines se révèlent inefficaces parce qu'inadaptées au comportement humain : elles ne disposent pas d'outil permettant une relation humanisée et sociale avec l'utilisateur. Le rapport et la communication entre l'homme et l'ordinateur deviennent alors centraux : l'interface , pour être efficace, doit devenir intelligente, rapide, interactive, adaptée à l'utilisateur qui doit pouvoir la reconnaître et se reconnaître en elle. 2. Etat de l'art Les créatures virtuelles , concept datant des années 1990, permettent d'humaniser cette communication et d'y intégrer un lien social et affectif. Par leur intermédiaire, c'est l'utilisateur lui-même qui se projette dans les univers virtuels. Ces créatures virtuelles ne sont pas simplement des personnages animés. Les créatures virtuelles n'exécutent pas une action, elles la vivent , à travers l'utilisateur humain qui s'est en quelque sorte infiltré dans son personnage. Plus qu'une interface intelligente entre l'homme et la machine, la créature virtuelle créée une connexion directe, une identification instantanée avec l'utilisateur, lui permettant d'atteindre une efficacité inusitée et ceci par la mise en oeuvre de techniques au croisement de la réalité virtuelle et du cinéma d'animation. L'évolution des images de synthèse et des technologies multimédia, l'avènement des technologies d'animation 3D et la généralisation des réseaux à haut débit, rendent théoriquement possible la mise en ligne de telles interfaces. Mais sur le plan technique, elles sont en général incompatibles avec le support informatique : les contraintes de performances, de taille de fichiers, de temps de chargement, de calcul en ligne, celles liées aux spécificités de chaque application ou de chaque page Internet, constituent les freins majeurs au développement généralisé de ces interfaces Jusqu'à ce jour, deux générations technologiques sont apparues pour tenter de résoudre ces problèmes : - la technologie de première génération, de type MS-AgentTM -la technologie de deuxième génération type Living ActorTM La technologie de première génération, de type MS-AgentTM est produite depuis 1996 par le principal éditeur mondial de logiciels pour micro-ordinateurs, notamment pour les personnages apparaissant dans les aides en ligne des grands progiciels de la marque (traitement de textes, tableurs, etc). C'est un ensemble de logiciels qui intègre un premier moteur d'animation propriétaire , une première synthèse et reconnaissance vocale, et des bulles (à la façon des bandes dessinées). Chaque agent virtuel est un personnage symbolique qui peut être programmé pour jouer des animations. La technologie est de type pré-calculée . L'agent peut parler dans plusieurs langues, produisant en son de synthèse le texte écrit dans les bulles. Les limites de cette technologie sont les suivantes : - la technologie MS-AgentTM fonctionne uniquement sur les applications et les progiciels de l'éditeur ; le rendu , c'est-à-dire la définition visuelle, est de qualité modeste ; les personnages sont élémentaires et disposent de peu de possibilités de mouvements ; - la taille des fichiers à charger (plus de 5 mega-octets) ne permet un fonctionnement sur Internet ; - il n'existe pas de possibilité de multi-personnages, ni de lecteur MP3 intégré (mode normalisé de compression de sons) ; - l'édition des personnages (évolution et mise à jour) est complexe, et réservée à l'éditeur. La technologie de deuxième génération type Living ActorTM concerne une suite logicielle créée par un éditeur spécialisé français en 2002, permettant la création, l'animation et la mise en scène de personnages 3D interactifs. Living ActorTM est une technologie de type 3D temps réel avec module utilisateur téléchargé : les personnages sont animés et mis en scène en temps réel. Ils disposent d'une bulle de dialogue interactive, sont dotés d'une technologie de gestion des comportements et dialoguent avec l'utilisateur selon des scénarios préparés. Les limites de cette technologie sont les suivantes : - la technologie Living ActorTM nécessite le téléchargement d'un module spécifique ( plug-in propriétaire ) ; - ce téléchargement est difficile, car souvent bloqué par les systèmes de sécurité ( pare-feux , antivirus et évolutions de type Windows/SP2) ; - la technologie ne fonctionne pas sur toutes les plates-formes (seules sur celles compatibles avec le plug-in ) ; - la technologie ne permet pas la gestion multi-personnages ; - la définition des personnages est limitée au nombre de polygones (moins de 5000) générés à partir des seuls logiciels 3D compatibles avec la technologie ; - l'intégration dans les applications existantes et les sites Internet est lourde et complexe ; - l'évolution et la mise à jour des personnages nécessitent un éditeur propriétaire d'utilisation complexe et réservée à des professionnels. D'autres éditeurs (Allemagne, Suède, Angleterre, USA) ont produits des agents virtuels basés sur les principes de l'une ou l'autre de ces solutions technologiques, en général sur des domaines restreints (réponse automatique aux courriels, assistance à la recherche Internet, horloge parlante, gestion de rendez-vous, répondeur téléphonique, gestion des répertoires, comparateurs de prix, mini-quizz, etc). 3. La solution La solution concerne un système permettant de générer et d'animer des personnages virtuels destinés à assister un utilisateur dans un contexte déterminé. Le système est caractérisé en ce qu'il comprend un moteur d'animation (FlashActor), se présentant sous la forme d'un script de type Action Script Flash, permettant de piloter et de gérer simultanément l'animation d'une pluralité de personnages virtuels, en mettant en oeuvre une pluralité de composants fixes autonomes. La pluralité de personnages virtuels, est stockée sous forme de bibliothèque dans une base de données, au format SWF. Les composants autonomes comprennent : - un module logiciel de création de scénario (EasyScénarioCreator), permettant de générer, sous forme de fichier texte prédéfini au format TXT, une mise en scène associée à la pluralité de personnages virtuels ; - des animations spécifiques, intégrées aux personnages, au format SWF ; - des sons préenregistrés ou générés en temps réel, au format compressé MP3 ; différents éléments graphiques (accessoires, fonds, environnements, applications), au format SWF ; un module lecteur MP3 intégré ; un module de synthèse vocale TextToSpeech (synthèse vocale), - un module de reconnaissance vocale ; - des bulles de dialogues interactives, au format SWF ; un système d'assistant personnel (messagerie directe et veille Internet) ; - un système d'assistant personnel lié à un personnage, (messagerie instantanée, veille Internet, personnalisation graphique). De préférence, selon l'invention, le système est caractérisé en ce qu'il comprend en outre un module (ou moteur) de création des personnages virtuels comprenant : - des moyens de création de fichiers natifs correspondant à un personnage, notamment de type logiciel 2D, logiciel 3D ou logiciel vectoriel, tout logiciel du marché étant utilisable (3DS max, MAYA, Softimage, Photoshop, Flash Illustrator) ; - des moyens de mise en format normalisé, destinés à compiler, sous Flash, à partir de formats de type PNG, GIF, JPEG, SWF, dans un format unique de type swf, les fichiers natifs, le fichier swf obtenu, de moins de 800ko, contient en moyenne 30 animations gestuelles, les morphings et les déplacements du personnage ; -des moyens de mise en scène du personnage permettant, soit de générer, au moyen d'un éditeur de type bloc-notes, un fichier script au format texte, soit de générer ce fichier script au moyen du module logiciel de création de scénario (EasyScénarioCreator) ; - des moyens d'enregistrement sonore destinés à produire un fichier son au format MP3 ; - une plate forme de pré-production, permettant de contrôler et/ou de corriger des anomalies concernant le personnage virtuel ; - des moyens d'intégration destinés à intégrer le personnage virtuel dans un contexte déterminé, notamment dans un site Internet (conformément à la norme W3C), dans un progiciel, dans un CD ROM, dans un DVD. La présente invention permet donc, pour la première fois : de couvrir l'ensemble des différentes familles d'agents intelligents, tels que définies dans les études actuelles car les personnages créés en mettant en oeuvre le système selon l'invention sont en effet : - des agents conversationnels et interactifs, - des agents collaboratifs (avec l'utilisateur ou entre agents virtuels), - des agents mobiles sur les réseaux, - des outils de veille et de recherche d'information, - des assistants personnels complets, - d'offrir une qualité de définition, de possibilités et de fluidité de mouvements conformes aux normes de la réalité virtuelle. On a représenté sur la figure 1 une vue d'ensemble des moyens techniques mis en oeuvre par le système selon l'invention. Les références numériques correspondent aux éléments suivants : 1 : moteur d'animation (FlashActor) 2 : ensemble des composants fixes autonomes 3 : module logiciel d'édition de scénarios (EasyScenarioCreator) 4 : lecteur de sons compressés pré-enregistrés (format MP3) 5 : bulles de dialogue interactives, pré-montées dans Flash (format SWF) 25 6 : modules de synthèse et reconnaissance vocales 7 : système d'assistant personnel 8 : moteur de création des personnages virtuels 9 : moyens de création de fichiers personnages animés natifs et de fonds 2D/3D, et mise en format normalisé (format SWF) 30 10 : moyens de mise en scène des personnages et génération du fichier script (format TXT) 11 : moyens d'enregistrement sonore en format normalisé compressé (MP3) 12 : plate forme de pré-production, simulation et tests 13 : plate-forme de production, moyens d'intégration et de livraison aux normes W3C éditeurs. Le système comprend un ensemble de moyens de traitement informatiques: un moteur d'animation appelé FlashActor, - un module logiciel de mise en scène appelé EasyScénarioCreator, - un module lecteur MP3 intégré, - un module TextToSpeech (synthèse vocale), - un module de reconnaissance vocale, - des bulles de dialogues interactives, - un système d'assistant personnel lié à un personnage (messagerie instantanée, veille Internet, personnalisation graphique). Afin de demeurer opérationnelle sur toute plate-forme informatique la solution selon l'invention met en oeuvre la technologie Flash de la société Macromedia qui intègre : - des images importées depuis tout produit éditant des images, - une table de montage des animations ( Time Table ), - un langage de programmation interprété (langage ActionScript ). Le moteur d'animation FlashActor est un script Flash qui se réfère à la Time Table, où sont pré-définies des animations. Le noyau du moteur travaille à l'aide d'un scénario sous forme de fichier texte pré-défini ou généré en temps réel par une application externe. Le principe est donc de jouer en temps réel un scénario pré-calculé : les déplacements, les mouvements, la synchronisation de la bulle, les sons, et l'ensemble des éléments nécessaires sont ainsi compilés, ce qui permet des performances inégalées en mouvements (fluidité) et en interactivité (instantanéité de réaction). Les personnages et leurs animations viennent en surimpression sur les affichages existants, et n'exigent donc pas que ceux-ci soient modifiés. On peut noter que Flash est utilisé par la majorité des développeurs d'applications : les personnages peuvent donc être créés extérieurement, puis être motorisés par la mise en oeuvre du système selon l'invention. Avec le système d'assistant personnel , chaque personnage dispose de modules intégrés paramétrables : - messagerie instantanée (échanges entre deux personnages sur des machines distantes), - module de recherche sur Internet (génération de requêtes sur les moteurs de recherche), - module de veille documentaire (réveil sur un ou plusieurs critères spécifiés), -module de gestion des favoris (liens privilégiés de l'utilisateur), -module de personnalisation graphique du personnage (couleurs, habillage, etc). Le système selon l'invention présente entre autre les spécificités suivantes: - le moteur d'animation, en environnement Flash natif, optimisé, non propriétaire, multi-personnages (gestion simultanée de plusieurs acteurs virtuels), - la séparation des différents composants (ces différents composants pouvant tous être gérés de façon totalement indépendante) : - les personnages (conçus et créés soit extérieurement soit par DAVI qui dispose d'une bibliothèque de personnages réhabillables et réutilisables), - le scénario (en langage fonctionnel exclusif, format texte), - les animations, - les bulles, - les sons, - les fonds, - les hyperliens associés aux scénarios et aux fonds, permettant d'enchaîner dynamiquement des scènes et des décors comme dans une pièce de théâtre, - les personnages peuvent être des agents mobiles capables de se déplacer d'une machine à une autre ce qui leur permet notamment d'être insérés dans tout type de système de messagerie ( Greeting Actors ), le système selon l'invention permettant d'intégrer les agents virtuels dans les systèmes de sécurité standard ( pare-feux, anti-virus, etc), - les fonctions d'assistant personnel permettant : - de gérer des évènements et procédures (gestion de rendez-vous, emploi du temps...), - d'exécuter des tâches à la demande, - de gérer, de classer, de répondre au courrier électronique, - de surveiller automatiquement les changements sur les sites Web, - de rechercher un thème sur Internet, - d'assister l'usager dans l'utilisation d'autres applications, - les interfaces vers les applications externes, ouvrant la solution selon l'invention aux moteurs d'intelligence artificielle, aux systèmes de reconnaissance sémantique, et aux nouveaux procédés d'affichage (projection 3D, écrans interactifs, PDA, téléphone mobile, etc). Ces éléments spécifiques s'accompagnent d'un procédé exclusif de production et de mise au point des acteurs virtuels et des scénarios, composé de 6 phases : 1) Création du personnage et des fichiers natifs par tout type d'outils 2D ou 3D (d'où la non-limitation en polygones, en qualité de définition, etc) ; 2) Mise en format normalisé et production du fichier personnage ; 3) Mise en scène du personnage et production du fichier script ; 4) Enregistrement sonore, par tout type d'outil et pour tout format de fichier son ; 5) Pré-production à partir de la plate-forme DAVI spécifique permettant la mise au point des comportements et de la mise en scène ; 6) Production et intégration dans les contextes existants (sites Internet, progiciels, applications, CD-Rom, DVD, etc,). La présente invention permet ainsi, pour la première fois, de disposer pleinement des techniques de la réalité virtuelle et du cinéma d'animation sur les micro-ordinateurs du commerce. Elle offre en effet : - une haute qualité visuelle des personnages, grâce aux performances d'affichage permises par le pré-calculé (par rapport au 3D calculé en temps réel) : -finesse des détails d'images en 3D (non limitation du nombre de polygones, par la possibilité d'utilisation de tout logiciel de création), 2900754 lo - ombres portées variables, - transparence des personnages, possibilité de disparition derrière un objet ou un décor, - rotation des personnages sur eux-mêmes, 5 - effets spéciaux (focal, loupe), - Lipsync (synchronisation des mouvements de la bouche avec le texte), - une haute qualité d'animation : - les performances du pré-calculé et l'architecture du système selon 10 l'invention permettent une fluidité des mouvements, par disparition des saccades dues au calcul en ligne, - ces performances permettent également une réactivité immédiate aux sollicitations ou aux réponses de l'utilisateur en ligne, ce qui donne un effet de comportement naturel , 15 - des possibilités de constructions scéniques complexes ( arborescences de personnages, de fonds, de scénarios, multi-personnages) : - les fonds (qui sont des calques Flash) peuvent s'enchaîner, via les hyperliens, à partir du scénario ; celui-ci est un fichier texte qui lui-même peut être généré (ou modifié) à la volée par des routines 20 externes (exemple : le générateur de scénarios EasyScenarioCreator est lui-même un fond, ce qui permet de visualiser instantanément les mouvements du personnage qu'on vient d'animer, dans le décor et le contexte de son application) - les bulles sont interactives : elles peuvent comporter des boutons 25 qui permettent de lancer un nouveau scénario (également via les hyperliens) : on peut ainsi construire des arborescences et des enchaînements conditionnels de scénarios, ou afficher un site web, ou lancer une application externe, etc, - un couplage aux fonctions d'assistant personnel. 30 La présente invention procure un réel saut qualitatif par rapport aux technologies jusqu'alors employées: - elle est multi plates-formes informatiques, - elle permet la gestion simultanée de plusieurs personnages, - elle délivre à la fois une haute qualité des images et des animations, - elle permet des effets spéciaux et des mises en scènes aussi complexes que nécessaires, modifiables par composants indépendants, - elle permet des fonctions d'assistant personnel liées directement aux personnages, - elle gère les agents mobiles sur différentes machines, - elle comporte une architecture ouverte permettant l'intégration avec des technologies externes (intelligence artificielle, moteurs de recherche, 10 procédés d'affichage), - elle n'exige aucun module spécifique propriétaire à charger ou à copier sur l'ordinateur de l'utilisateur, - elle n'implique aucune modification sur les applications ou sites Internet existants : il s'agit d'une technologie non intrusive, 15 - elle permet l'autonomie de l'utilisateur sur l'évolution de la mise en scène des personnages (à travers l'outil EasyScenarioCreator). REVENDICATIONS 1. Système permettant de générer et d'animer des personnages virtuels destinés à assister un utilisateur dans un contexte déterminé ; le système étant caractérisé en ce qu'il comprend : - un moteur d'animation, se présentant sous la forme d'un script de type Action Script Flash, permettant de piloter et de gérer simultanément l'animation d'une pluralité de personnages virtuels, stockés sous forme de bibliothèque dans une base de données, au format SWF, en mettant en oeuvre une pluralité de composants autonomes ; lesdits composants autonomes comprenant : - un module logiciel de création de scénarios, permettant de générer, sous forme de fichier texte prédéfini au format TXT, une mise en scène associée à la pluralité de personnages virtuel ;, - des animations spécifiques, au format SWF ; - des sons préenregistrés, au format MP3 ; - des fonds, au format SWF ; - un module lecteur MP3 intégré ; - un module de synthèse vocale ; - un module de reconnaissance vocale ; - des bulles de dialogues interactives, au format SWF ; - un système d'assistant personnel lié à un personnage. 2. Système selon la revendication 1, caractérisé en ce qu'il comprend en outre un moteur de création des personnages virtuels comprenant : - des moyens de création de fichiers natifs correspondant à un personnage et à des fonds, notamment de type logiciel 2D, logiciel 3D ou logiciel vectoriel ; - des moyens de mise en format normalisé, destinés à compiler, sous Flash, dans un format unique de type swf, les fichiers natifs ; - des moyens de mise en scène du personnage permettant de générer, au moyen d'un éditeur, un fichier script au format texte ; - des moyens d'enregistrement sonore destinés à produire un fichier son au format mp3 ;- une plate forme de pré-production, permettant de contrôler et/ou de corriger des anomalies concernant le personnage virtuel ; - des moyens d'intégration destinés à intégrer le personnage virtuel dans un contexte déterminé, notamment dans un site Internet, dans un progiciel, dans 5 un CD ROM, dans un DVD.