Procédé d'identification d'un mouvement par minimisation d'énergie de chemins DOMAINE TECHNIQUE DE L'INVENTION La présente invention concerne un procédé d'identification d'un mouvement d'un être humain. La présente invention se rapporte également à un programme d'ordinateur apte à mettre en oeuvre le procédé d'identification. La présente invention se rapporte aussi à un procédé de reconnaissance mettant en oeuvre le procédé d'identification. La présente invention concerne aussi un système d'identification d'un mouvement d'un être humain, notamment pour jeu vidéo, propre à la mise en oeuvre du procédé d'identification de mouvement. ARRIERE-PLAN TECHNOLOGIQUE Dans le domaine des jeux vidéo, des périphériques destinés à des consoles de jeux permettant à un joueur de contrôler des jeux vidéo sans emploi de manettes traditionnelles se développent. Notamment, des dispositifs d'acquisition donnant accès à des paramètres relatifs à un mouvement du joueur existent. La manette Wiimote, le périphérique Kinect, le système PlayStation Move ou le module Razer Hydra sont des exemples de tels dispositifs d'acquisition. Plus précisément, la manette Wiimote, parfois appelée « Télécommande Wii » ou encore « Wii mote », est le nom du contrôleur de la console de jeux vidéo Wii du constructeur Nintendo. La manette Wiimote est une manette rectangulaire généralement tenue à une main. En variante, la manette Wiimote est tenue à deux mains. La manette Wiimote comporte une pluralité de capteurs permettant le repérage de la position de la manette dans l'espace et la retranscription de mouvements de la manette à l'écran. Par exemple, dans un jeu de tir subjectif, la manette Wiimote représente l'arme dirigée uniquement en bougeant la main dans la direction voulue. Cela permet une nouvelle manière de jouer, plus immersive selon le constructeur. La détermination de la position relative de la manette Wiimote est obtenue à l'aide d'une technique de triangulation mise en oeuvre en utilisant une barre de plusieurs diodes laser électroluminescente positionnée au-dessus ou au-dessous de l'écran. La manette Wiimote est ainsi capable de calculer précisément et rapidement la position de la manette par rapport à la barre et de pointer un point précis sur l'écran. Mais la manette Wiimote requiert un pointage très précis de l'écran. La manette Wiimote dispose également d'accéléromètres pour déterminer l'orientation de la manette (fourniture de différents angles d'inclinaison) et la position lorsque l'orientation ne permet pas de recourir à la triangulation.
Optionnellement, l'accessoire appelé Wii MotionPlus est ajouté à la manette Wiimote. Un tel accessoire munit la manette Wiimote d'un capteur gyroscopique supplémentaire, c'est-à-dire un capteur propre à mesurer une vitesse angulaire. L'accessoire permet de capter plus fidèlement le mouvement du joueur Le périphérique Kinect est un périphérique destiné à la console de jeux vidéo Xbox 360 développée par Microsoft permettant de contrôler des jeux vidéo sans utiliser de manette. Le périphérique Kinect est aussi compatible avec le système d'exploitation Microsoft Windows. Le périphérique Kinect comporte une caméra fonctionnant sur le principe du temps de vol et un microphone à reconnaissance vocale. La caméra est motorisée pour suivre les déplacements du joueur. Le périphérique Kinect utilise des techniques d'interaction permettant d'interagir avec le jeu vidéo par commande vocale, reconnaissance de mouvement et d'image. Le système PlayStation Move est un périphérique de la console de jeux vidéo PlayStation 3 développée par Sony. Le système PlayStation Move comporte une caméra, une manette de détection de mouvements comprenant un accéléromètre, un capteur gyroscopique et des touches et une manette de navigation optionnelle comportant des touches additionnelles. Comme la manette Wiimote ou le périphérique Kinect, le système PlayStation Move permet d'envisager une nouvelle manière de jouer plus immersive pour le joueur.
Le module Razer Hydra est un périphérique pour jeu vidéo propre à déterminer le mouvement d'un joueur. Le module Razer Hydra utilise de faibles champs magnétiques pour déterminer la position absolue et l'orientation du joueur avec précision. Toutefois, indépendamment du périphérique considéré, pour garantir un plaisir de jeu optimal, il est souhaitable que le jeu vidéo réagisse le plus rapidement possible à tous les mouvements du joueur. Une telle réaction comprend généralement le mouvement d'une représentation du joueur (un « avatar ») et éventuellement la réaction d'une intelligence artificielle. Le fait de ne pas comprendre ce que le joueur est en train de réaliser, c'est-à-dire de ne pas connaître son intention, empêcherait une intelligence artificielle (IA) de réagir aux mouvements du joueur à temps dans un jeu réclamant une réaction de l'intelligence artificielle au cours du mouvement du joueur. Il est donc souhaitable que l'intelligence artificielle soit capable d'identifier l'intention du joueur. Une telle compréhension permettrait également, dans un jeu où les mouvements du joueur ou de l'opérateur sont évalués (comme dans un jeu de danse ou d'évaluation de mouvements de Tai Chi), de donner cette évaluation en temps réel. Il est à noter qu'une telle compréhension est moins cruciale dans un jeu à manette puisque lorsque le joueur appuie sur un bouton ou une touche, cela génère un mouvement préenregistré de l'avatar du joueur et permet à l'intelligence artificielle ou à la méthode d'évaluation de connaître de manière parfaitement univoque l'intention du joueur et de réagir en conséquence. Néanmoins, ceci est à moduler par le cas des jeux impliquant des manettes analogiques, ou encore une succession de boutons ou de touches pour lequel la remarque précédente n'est déjà plus vraie. Par exemple, dans le cas d'un jeu d'escrime, il convient non seulement de bien reconnaître le mouvement d'escrime effectué par le joueur mais également qu'une telle reconnaissance soit rapide pour assurer une réaction adaptée de l'intelligence artificielle.
En l'occurrence, le mouvement effectué par l'intelligence artificielle prend, de préférence, en compte le mouvement d'escrime effectué par le joueur. Pour cela, il est connu de l'article écrit par Sushmita Mitra et par Tinku Acharya, intitulé « Gesture Recognition A Survey » dans la revue IEEE Transactions on Systems, Man, and Cybernetics - Part C : Applications and reviews, volume 37, numéro 3 paru en mai 2007 un ensemble de techniques de reconnaissance de mouvement permettant l'identification de mouvements. Toutefois, toutes les techniques de l'article ont un temps de calcul long rendant l'identification des mouvements trop lente pour une application à des jeux vidéo. Il existe donc un besoin pour un procédé d'identification d'un mouvement d'un être humain présentant un temps de calcul plus court. RESUME DE L'INVENTION A cet effet, il est proposé un procédé d'identification d'un mouvement d'un être humain à identifier, le mouvement ayant une fin, le procédé étant mis en oeuvre par un ordinateur comportant une mémoire mémorisant un ensemble de cinématiques de référence, chaque cinématique de référence étant une représentation mathématique sous forme d'une succession de points d'au moins un mouvement de référence, chaque point donnant la valeur d'un ensemble de paramètres caractéristiques du ou des mouvements de référence représentés, le procédé comportant les étapes de : choix d'un intervalle de temps de calcul, traitement, reconnaissance de la fin du mouvement de l'être humain lorsqu'un critère est vérifié, l'étape de traitement étant itéré tant que le critère n'est pas vérifié, détermination du mouvement le plus représentatif du mouvement à identifier, le mouvement le plus représentatif étant un mouvement de référence ou une succession de parties de mouvements de référence, chaque itération de l'étape de traitement comprenant une étape de : o fourniture d'un ensemble de paramètres caractéristiques relatifs au mouvement à identifier durant l'intervalle de temps de calcul choisi, o calcul de chemins, un chemin étant une succession de points, lesdits points appartenant ou étant associés chacun à une cinématique de référence, l'étape de calcul comprenant : ^ la déduction selon une première règle du ou des points suivants de chaque chemin, pour obtenir un ensemble de chemins autorisés, chaque point déduit appartenant ou étant associé à une cinématique de référence et étant fonction de paramètres d'entrée, les paramètres d'entrée étant obtenus à partir de l'ensemble de paramètres caractéristiques relatifs fournis, et ^ la sélection parmi les chemins autorisés d'un ensemble de chemins optimaux, selon une deuxième règle, et l'étape de détermination prenant en compte les chemins calculés. Suivant des modes de réalisation particuliers, le procédé d'identification comprend une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou suivant toutes les combinaisons techniquement possibles : - selon la première règle, un seul point est calculé pour le chemin considéré si la succession de points calculée à l'itération précédente pour le chemin considéré présente une énergie supérieure à une autre succession de points calculée à l'itération précédente de l'étape de traitement. - selon la deuxième règle, si un point déduit appartient à deux chemins différents, seul le chemin dont la succession de points présente une énergie minimale est sélectionné. - les paramètres d'entrée sont l'ensemble de paramètres caractéristiques fournis. - chaque itération de l'étape de traitement comprend une étape d'obtention des paramètres d'entrée à partir de l'ensemble de paramètres caractéristiques fournis. - l'étape d'obtention des paramètres d'entrée comporte une étape d'interpolation de l'ensemble de paramètres caractéristiques fournis pour obtenir des paramètres d'entrée continus sur l'intervalle de temps de calcul choisi. - l'étape d'obtention des paramètres d'entrée comporte une étape de dérivation et/ou d'intégration spatiale d'au moins un paramètre de l'ensemble de paramètres caractéristiques fournis pour obtenir au moins un paramètre dérivé et/ou intégré des paramètres d'entrée. - un temps de réalisation minimal étant défini pour les mouvements de référence, le temps de calcul choisi est inférieur au temps minimal de réalisation d'un mouvement de référence. - un temps de réalisation minimal étant défini pour les mouvements de référence, le temps de calcul choisi est inférieur à un dixième du temps minimal de réalisation d'un mouvement de référence. - le procédé comporte en outre une étape de sélection d'un point de départ, le point de départ appartenant à une cinématique de référence. - l'étape d'obtention des paramètres d'entrée comporte une étape de mise en ordre des paramètres caractéristiques fournis selon un ordre prédéfini. - l'étape d'obtention des paramètres d'entrée comporte une étape de projection des paramètres fournis dans une base orthogonale. - la base orthogonale est obtenue par mise en oeuvre d'une analyse en composantes principales appliquées sur l'ensemble des cinématiques de référence. - l'étape d'obtention des paramètres d'entrée comporte une étape de normalisation à la taille de l'être humain des paramètres fournis. - l'étape d'obtention des paramètres d'entrée comporte une étape de vérification de la validité des paramètres caractéristiques fournis. - ledit au moins un paramètre dérivé et/ou intégré est indépendant de la vitesse du mouvement à identifier. - l'étape de fourniture est mise en oeuvre par au moins un dispositif d'acquisition propre à acquérir des paramètres caractéristiques relatifs au mouvement de l'être humain à identifier, l'étape de fourniture comportant une étape de mesure des paramètres caractéristiques et une étape de transmission des paramètres caractéristiques mesurés à l'ordinateur, les paramètres caractéristiques mesurés étant les paramètres caractéristiques fournis. - l'étape de détermination est mise en oeuvre par minimisation d'une fonction de coût. - chaque itération de l'étape de traitement comporte également une étape de choix de l'intervalle de temps de calcul pour l'itération suivante. - chaque itération de l'étape de traitement comporte aussi une étape de choix de l'intervalle de temps de calcul pour l'itération en cours. - la fonction d'écart comprend une pondération des paramètres d'entrée dépendante d'un ou plusieurs éléments du groupe constitué : - de la nature du paramètre, et - de l'incertitude de la mesure du paramètre. - l'ensemble de paramètres caractéristiques relatifs au mouvement de l'être humain à identifier durant l'intervalle de temps de calcul choisi est la position de n articulations de l'être humain, n étant un entier strictement positif. - l'ensemble de paramètres d'entrée durant l'intervalle de temps de calcul choisi comprend, pour chaque articulation de l'être humain, les différences de positions entre deux articulations voisines de l'être humain, les dérivées spatiales de chacune des différences et/ou l'intégrale spatiale de chacune des différences. - l'entier n est supérieur ou égal à 6, de préférence, supérieur ou égal à 40, préférentiellement supérieur ou égal à 60. - le nombre de cinématiques de référence est supérieure ou égal à 500, de préférence supérieur ou égal à 900, de préférence supérieur ou égal à 3000. Il est également proposé aussi un procédé de reconnaissance d'un mouvement d'un être humain à identifier, le mouvement ayant une fin, le procédé étant mis en oeuvre par un dispositif d'acquisition et un ordinateur comportant une mémoire, le procédé comportant les étapes de : - réalisation par un être humain de mouvements de référence, - acquisition par le dispositif d'acquisition de paramètres caractéristiques relatifs au mouvement de référence, - détermination d'un ensemble de cinématiques de référence, chaque cinématique de référence étant une représentation mathématique sous forme d'une succession de points d'au moins un mouvement de référence, chaque point donnant la valeur d'un ensemble de paramètres caractéristiques du ou des mouvements de référence représentés, - mise en mémoire de l'ensemble de cinématiques de référence déterminées, - mise en oeuvre des étapes du procédé d'identification tel que précédemment décrit. Suivant un mode de réalisation particulier, l'étape de détermination d'un ensemble de cinématiques est mise en oeuvre par une technique d'apprentissage.
De préférence, la technique d'apprentissage est une descente de gradient. En outre, il est aussi proposé un produit programme d'ordinateur comportant des instructions de code de programmation aptes à être mises en oeuvre par un ordinateur, caractérisé en ce qu'il est apte à mettre en oeuvre le procédé tel que décrit précédemment.
II est également proposé aussi un système d'identification d'un mouvement d'un être humain, dit mouvement à identifier, notamment pour un jeu vidéo, comportant un ordinateur comportant une mémoire et un dispositif d'acquisition d'un ensemble de paramètres caractéristiques relatifs au mouvement à identifier, le mouvement ayant une fin. La mémoire mémorise un ensemble de cinématiques de référence, chaque cinématique de référence étant une représentation mathématique sous forme d'une succession de points d'au moins un mouvement de référence, chaque point donnant la valeur d'un ensemble de paramètres caractéristiques du ou des mouvements de référence représentés, et l'ordinateur est propre à mettre en oeuvre les étapes suivantes : - choix d'un intervalle de temps de calcul, - traitement, - reconnaissance de la fin du mouvement de l'être humain lorsqu'un critère est vérifié, l'étape de traitement étant itéré tant que le critère n'est pas vérifié, - détermination du mouvement le plus représentatif du mouvement à identifier, le mouvement le plus représentatif étant un mouvement de référence ou une succession de parties de mouvements de référence, chaque itération de l'étape de traitement comprenant une étape de : o fourniture d'un ensemble de paramètres caractéristiques relatifs au mouvement à identifier durant l'intervalle de temps de calcul choisi, o calcul de chemins, un chemin étant une succession de points, lesdits points appartenant ou étant associés chacun à une cinématique de référence, l'étape de calcul comprenant : ^ la déduction selon une première règle du ou des points suivants de chaque chemin, pour obtenir un ensemble de chemins autorisés, chaque point déduit appartenant ou étant associé à une cinématique de référence et étant fonction de paramètres d'entrée, les paramètres d'entrée étant obtenus à partir de l'ensemble de paramètres caractéristiques relatifs fournis, et ^ la sélection parmi les chemins autorisés d'un ensemble de chemins optimaux, selon une deuxième règle, et l'étape de détermination prenant en compte les chemins calculés.
BREVE DESCRIPTION DES DESSINS D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description qui suit de modes de réalisation de l'invention, donnée à titre d'exemple uniquement et en référence aux dessins qui sont : - figure 1, une représentation schématique d'un système d'identification d'un mouvement d'un être humain, figure 2, un ordinogramme de mise en oeuvre d'un exemple de procédé d'identification comprenant une ou plusieurs itérations d'une étape de traitement, figure 3, un ordinogramme d'un exemple mise en oeuvre d'une étape de traitement selon un premier mode de réalisation du procédé d'identification comportant une étape d'obtention, figure 4, un ordinogramme d'un exemple mise en oeuvre de l'étape d'obtention de l'étape de traitement de la figure 3, figure 5, un ordinogramme d'un exemple de mise en oeuvre d'une étape de traitement selon un deuxième mode de réalisation du procédé d'identification, figure 6, un ordinogramme de mise en oeuvre d'un exemple de procédé traitement selon un troisième mode de réalisation comprenant une ou plusieurs itérations d'une étape de traitement, figure 7, un ordinogramme d'un exemple mise en oeuvre d'une étape de traitement selon le troisième mode de réalisation, figure 8, un ordinogramme d'un exemple de mise en oeuvre d'un procédé de traitement, figure 9, un ordinogramme d'un exemple de mise en oeuvre d'une étape de traitement selon un cinquième mode de réalisation du procédé d'identification, et figure 10, un exemple d'ordinogramme de mise en oeuvre d'un procédé de reconnaissance.
DESCRIPTION DETAILLEE DE MODES DE REALISATION Utilisations possibles du système d'identification et choix de l'exemple de l'escrime Un système d'identification d'un mouvement d'un être humain, dénommé ci-après système 10, et un être humain 12 sont représentés sur la figure 1.
Le système 10 est propre à identifier un mouvement de l'être humain 12. Pour la suite, il est supposé que le mouvement à identifier a un début et une fin. L'être humain 12 est, selon l'exemple de la figure 1, un joueur d'escrime. Dans l'exemple illustré, le système 10 est utilisé pour identifier les mouvements de l'être humain 12 pour une application de jeu vidéo. Plus précisément, le système 10 a pour rôle de fournir les éléments permettant d'obtenir un avatar représentatif de l'intention de l'être humain 12. De ce fait, dans la suite, l'être humain est dénommé ci-après joueur 12. Selon une variante le système 10 a pour rôle de fournir les éléments correspondant à une réaction de l'intelligence artificielle.
Toutefois, les applications du système 10 ne sont pas limitées au secteur vidéoludique. Le système 10 est utilisable dans toute autre domaine impliquant l'identification d'au moins un mouvement de l'être humain 12. A titre d'exemple, le système 10 est utilisable dans l'industrie robotique ou pour des automates de distribution et/ou de commande. Dans le cas des automates de distribution, les choix de l'utilisateur de l'automate sont effectués par identification des gestes de l'utilisateur. A des fins illustratives, dans la suite de la description, l'utilisation du système 10 est illustrée pour un jeu vidéo complexe. Les jeux de combat étant des jeux faisant historiquement partie du jeu vidéo, le choix d'un jeu de combat semble indiqué. Parmi les jeux de combat, l'escrime (ou combat avec une arme) permet de s'affranchir de l'adresse et de la souplesse requise pour les arts martiaux puisque l'escrime consiste essentiellement en une bonne perception et une bonne prise de décision pour réaliser le mouvement voulu sans livrer d'opportunités à l'adversaire. De plus, l'escrime a également été choisie du fait de sa grande complexité et de la position du joueur particulièrement peu favorable pour le système 10. Démontrer la bonne applicabilité du système 10 à l'escrime permet ainsi d'envisager l'application du système 10 pour tout autre jeu, de combat ou non, dont les mouvements seront a priori moins complexes. Pour comprendre la complexité de l'escrime, il convient, avant de décrire plus précisément le système 10, d'introduire quelques précisions sur l'escrime. Dans le cadre d'une application vidéoludique, divers types d'escrime sont envisageables : escrime sportive, escrime classique à l'épée, au sabre ou à la baïonnette, ou encore médiévale à l'épée courte, à l'épée à deux mains, à la lance, à la hache, à la hallebarde au bâton, etc. Dans la suite, uniquement l'escrime au sabre est plus spécifiquement considérée. Dans une telle hypothèse, il s'agit de l'art de toucher un adversaire avec la pointe ou le tranchant (estoc et taille) d'une arme blanche sur les parties valables sans être touché. La force pure, même en escrime ou au sabre, n'est pas la première qualité. Mieux vaut réfléchir (vite) avant d'agir, l'à propos (savoir réagir de manière adaptée et au bon moment) étant la qualité principale d'un escrimeur. Comme tous les autres sports, l'escrime demande de la concentration, de l'agilité, de l'endurance, mais aussi de la technique. Quelques positions sont détaillées dans ce qui suit.
L'escrimeur, ayant son arme à la main, se tient assis sur les jambes, la droite en avant, la pointe du pied un peu en dehors ; la jambe gauche soutenant un peu plus le poids du corps est également pliée, le pied gauche transversalement posé à plat, les deux talons d'équerre. Le torse est effacé; le bras droit demi-tendu, la main à hauteur de la pointe du sternum, le poignet en quarte, tierce, prime ou seconde ; le bras gauche est levé, arrondi, de telle sorte que la main gauche soit à la hauteur de la tête. Ainsi placé, l'escrimeur est en garde. La position de garde est la position la plus favorable que prend l'escrimeur afin d'être prêt à la défensive, à l'offensive ou à la contre-offensive. Il est à noter que la position de garde subit des modifications au cours du combat, suivant la tactique choisie. Bien que l'orientation du corps reste sensiblement toujours la même en escrime, il existe différentes façons de positionner l'arme de l'escrimeur, pour que l'escrimeur ait la possibilité de mettre en place diverses techniques offensives ou défensives. Pour distinguer la position de l'arme, en escrime, il existe quatre lignes qui sont la ligne haute, la ligne basse, la ligne de dehors et la ligne de dedans. La ligne haute est la ligne suivant laquelle se produisent les attaques de l'adversaire passant au-dessus de la main de l'escrimeur alors que la ligne basse est la ligne suivant laquelle se produisent les attaques de l'adversaire passant en-dessous de la main de l'escrimeur. La ligne de dehors correspond à la partie droite du corps, de beaucoup la plus étroite tandis que la ligne de dedans correspond à la partie gauche, la plus large. Les attaques simples de l'escrimeur se produisent suivant chacune des quatre lignes précédentes. Il est entendu par « attaque simple », l'action offensive initiale qui s'effectue en allongeant le bras, la pointe menaçant la surface valable et coordonnée avec une progression des appuis vers l'avant (fente, flèche). A chacune des attaques simples est associée une parade, c'est-à-dire une action défensive dont le but est d'assurer d'obtenir une riposte et de toucher l'adversaire. En principe, du fait des quatre lignes, quatre parades à opposer suffiraient. Mais, il est possible pour chaque parade de tenir l'arme en position de pronation (ongles sous la main) ou de supination (ongles au-dessus de la main). Le même principe s'appliquant aux attaques, il existe également huit orientations du poignet, ou, de manière équivalente, positions de l'arme pour attaquer. Ainsi, il existe notamment les mouvements qui suivent, sachant qu'usuellement, les positions de l'arme sont repérées en numérotant les positions de 1 à 8. Les bottes au sabre sont réduites à la botte de quarte et la botte de tierce, la lame du sabre étant trop lourde et pas assez maniable pour réaliser efficacement les autres bottes. Par simplification, seuls les mouvements les plus usuels sont repris dans la suite : pour la position 1, dite prime (ligne basse / main en pronation / pointe basse), le coup 8 de prime à l'entrejambe, la parade de prime, la parade de prime basse et parade de prime haute. C'est le premier mouvement que fait l'escrimeur attaqué au moment où il tire l'épée du fourreau pour frapper ou se couvrir. L'épée est alors verticale, la pointe en bas; la main à hauteur du visage a ses ongles tournés en dessous. C'est là la garde de prime donnant lieu à une attaque, la pointe plongeante; à une parade, la pointe basse et permettant deux ripostes, une fournie droite, l'autre en coupant par-dessus le fer. pour la position 2, dite seconde (ligne du dehors / main en pronation / pointe basse), le coup 4 de seconde à la joue, le coup 4 de seconde à la jambe, la parade de seconde haute et la parade de seconde. C'est le second mouvement que l'on fait naturellement pour venir se couvrir si l'adversaire a trompé la parade de prime; on abaisse le poignet et le coude, la pointe de l'épée tournée à droite, en bas, les ongles en dessous. pour la position 3, dite tierce (ligne haute / main en pronation / pointe haute), le coup 2 de tierce à la joue, le coup 2 de tierce à la jambe, le coup 6 de tierce horizontale au côté, le coup 6 de tierce horizontale à la gorge, la botte de tierce, la parade de tierce haute, la parade de tierce basse et la parade de tierce. Si la parade de seconde est trompée, l'épée ennemie menace dans la ligne extérieure et haute ; on tient son épée la pointe plus haute, les ongles en dessous, l'avant-bras horizontal pouvant riposter ou attaquer dans la ligne basse. pour la position 4, dite quarte (ligne du dedans / main en supination / pointe haute), le coup 1 de quarte à la joue, le coup 1 de quarte à la jambe, la botte de quarte, la parade de quarte horizontale, la parade de quarte basse, la parade de quarte haute et la parade de quarte. Il s'agit de mouvement à opposer à l'épée ennemie qui revient menacer la ligne haute intérieure ; le tireur tient son épée, la pointe haute, les ondes en dessus, menaçant son adversaire dans la ligne intérieure. pour la position 5, dite quinte haute (ligne du dedans / main en pronation / pointe haute ou horizontale), le coup 7 de quinte à la tête. Il s'agit de se couvrir le flanc gauche. L'épée abaissée est tenue les ongles de côté un peu en dessus, le pouce franchement en dessus; la parade, dite aussi de Saint George, a pour effet de soulever l'épée ennemie laissant les deux lignes basses à découvert. pour la position 6, dite sixte (ligne haute / main en supination / pointe haute), la parade de sixte. Il s'agit d'un mouvement couvrant le côté droit; l'escrimeur tient son épée la pointe haute, menaçant la ligne extérieure de son adversaire, la main ayant les ongles en dessus. L'escrimeur pare alors du faux tranchant. pour la position 7, dite septime (ligne basse / position en supination / pointe basse), le coup 3 de septime à la joue, le coup 3 de septime à la jambe et la parade de septime. Ce mouvement consiste à couvrir ou à menacer la ligne du dessous des armes ; pour la parade; l'escrimeur pour cela abaisse la pointe de l'épée en dedans en lui faisant décrire un demi-cercle de droite à gauche, la main ayant les ongles en dehors, un peu en dessus; la parade de septime constitue un demi-cercle. pour la position 8, dite octave (ligne du dehors / position en supination / pointe basse), la parade d'octave haute et la parade d'octave. Il s'agit du mouvement couvrant la ligne extérieure; l'épée est presque verticale, la pointe en bas, la main ayant les ongles au-dessus et un peu en dedans. D'autres coups usuels existent. Le retour d'attaque en garde, le retour de parade en garde, le coup de manchette ou la contre-de-sixte en sont d'autres exemples. De plus, pour le cas de l'attaque, il convient aussi de considérer la manière d'effectuer l'attaque, l'attaque pouvant être simple ou composée.
Une attaque simple est, par définition, effectuée en un seul temps. Il est généralement considéré qu'il n'existe que trois manières d'effectuer une attaque simple. Ce sont le coup droit, le coupé ou le dégagement. Le coup droit (ou tiré droit), comme son nom l'indique, est une touche portée tout droit (en restant dans la même ligne). Le coupé, consiste à changer sa lame de côté par rapport à la lame adverse, en la contournant en passant par-dessus la pointe, avant de porter la touche. Le dégagement (ou dégagé), consiste à porter la touche après avoir changé sa lame de côté par rapport à la lame adverse en la contournant par la coquille de l'adversaire. Une attaque composée est une attaque simple précédée d'une ou plusieurs feintes. Les plus utilisées sont le "une-deux" et le "doublé" (une feinte de dégagé ou de coupé suivi d'un dégagé (appelé « trompement » qui consiste à éviter la parade adverse), la feinte de coup droit-dégagé, la feinte de coupé-coupé... tout ceci en changeant de ligne horizontale et/ou verticale et/ou diagonale. Dans les deux cas, selon une variante, l'attaque simple ou composée est précédée de préparations d'attaque comme des attaques au fer, des prises de fer ou le contact des fers. C'est vrai pour l'épée et le fleuret, mais pour le sabre, les différents mouvements sont principalement le coup simple, le moulinet ou le demi-moulinet.
Il convient également de considérer que la parade n'est qu'un moyen de défense. La retraite permettant d'éviter de se faire toucher en gardant l'adversaire à distance, l'esquive qui est un mouvement qui écarte une partie de son corps afin de ne pas être touché ou la contre-attaque permettant de toucher avant l'adversaire sur son attaque sans écarter sa lame sont d'autres exemples de défense. De manière générale, toute combinaison des gestes précédents est envisageable dans le cas d'une passe d'armes entre deux adversaires pourvu de pouvoir assurer une continuité du geste. Ce sont les feintes. A titre d'exemple complexe, une feinte est effectuée en faisant une fausse attaque qui a pour effet de déstabiliser l'adversaire, puis une autre feinte est effectuée quand l'adversaire prend la parade de la première. Dans le cadre de la présente description, seuls les éléments précédemment mentionnés sont considérés par simplification puisqu'avec toutes les combinaisons déjà envisagées, cela correspond à un ensemble d'environ 900 mouvements d'escrime différant parfois seulement d'une seule position spatiale ou de l'ordre d'exécution.
Toutefois, en réalité, pour être complet, il conviendrait également de prendre en compte les déplacements de l'escrimeur, comme la marche, la retraite, le bond avant, le bond arrière, la passe avant, la ballestra, la fente, le redoublement de fente, la flèche ou le développement. Ainsi, dans la suite, il est considéré que l'escrime est représentable par 900 mouvements de référence. Description du système d'identification Le système 10 comporte un ordinateur 14 et un dispositif d'acquisition d'un ensemble de paramètres caractéristiques relatifs au mouvement du joueur 12, ledit mouvement à identifier, dénommé ci-après dispositif 16. La mémoire 18 est propre à mémoriser un ensemble de cinématiques de référence. Chaque cinématique de référence est une représentation mathématique sous forme d'une succession de points d'au moins un mouvement de référence. Un mouvement de référence est un mouvement représentant un type de mouvement. Dans le cas de l'escrime considéré dans la présente description, il est difficile d'acquérir une vision d'ensemble des mouvements de l'escrime, et en particulier ce qui relève du mouvement lui-même et ce qui relève de l'à propos de la réaction aux gestes de l'adversaire. Pour la suite de la description, il est supposé qu'il existe 900 types de mouvements, et 30 mouvements de référence par type de mouvement.
Chaque point ou de manière équivalente chaque localisation sur une cinématique de référence donne la valeur d'un ensemble de paramètres caractéristiques du ou des mouvements de référence représentés. Un paramètre caractéristique est une observable du joueur 12, c'est-à-dire un paramètre mesurable par un capteur. Dans le contexte de l'invention, le paramètre caractéristique est un paramètre cinématique. La cinématique est, en physique, l'étude des mouvements indépendamment des causes produisant les mouvements. La cinématique repose ainsi sur les notions d'espace et de temps.
Les paramètres caractéristiques sont choisis dans le groupe constitué des paramètres relatifs à l'espace ou des paramètres relatifs à l'évolution du mouvement. Une longueur, une position ou un angle sont des exemples de paramètres relatifs à l'espace. Les paramètres caractéristiques sont, par exemple, la position d'articulations d'un être humain.
Une vitesse, une accélération, une vitesse angulaire ou une accélération angulaire sont des exemples de paramètres relatifs à l'évolution du mouvement. Chaque paramètre est exprimable a priori dans un référentiel à deux dimensions ou à trois dimensions. A titre d'exemple d'illustration, pour un cas à une seule dimension, le nombre de paramètres est de sept par articulations (3 de position, 3 de tangente et 1 d'abscisse curviligne), vingt articulations étant considérées. Cela signifie qu'à chaque instant, le nombre de paramètres est de 140. En outre, selon un mode de réalisation préféré, chaque paramètre pour les vingt articulations est enregistré à une fréquence de l'ordre de trente points par seconde.
Ainsi, chaque cinématique de référence représente l'évolution temporelle des paramètres caractéristiques d'un mouvement de référence. Autrement formulé, chaque cinématique est une succession de points de temps ou d'état, chaque état ou point de temps correspondant à la valeur des paramètres caractéristiques à l'instant considéré. Cela signifie notamment que, pour chaque cinématique, il est possible de définir un état de départ et un état d'arrivée. Dans la suite, selon la représentation la plus commode, il est utilisé indifféremment les points, les points de temps ou les états. L'ensemble des cinématiques de référence forme une base de données appelée dans la suite base de connaissance.
Un exemple de procédé permettant l'obtention des cinématiques de référence est décrit en référence au paragraphe intitulée « Constitution d'une base de connaissance ».
Le processeur 20 est propre à mettre en oeuvre un procédé d'identification du mouvement à identifier. En variante, le processeur 20 est également propre à mettre en oeuvre un procédé de reconnaissance du mouvement à identifier.
Selon un mode de réalisation avantageux, l'ordinateur 14 est une console de jeux vidéo. Le dispositif 16 est propre à acquérir un ensemble de paramètres caractéristiques relatifs au mouvement du joueur 12. Plus spécifiquement, le dispositif 16 permet de déterminer efficacement l'intention du joueur 12, et également les changements d'intention du joueur 12 en « temps réel » ou « à la volée », ou en d'autres termes à chaque acquisition d'un nouveau point d'acquisition. En outre, le moins de ressources possible est monopolisée puisque selon l'avis des studios de développement, l'essentiel des ressources de l'ordinateur 14 est à dédier au graphisme et au son.
Pour obtenir un tel effet, le dispositif 16 comporte un ou plusieurs capteurs propres à effectuer des mesures sur le mouvement du joueur 12. A titre d'illustration, un des capteurs est une caméra. Par exemple, la caméra est une caméra propre à fonctionner dans la bande infrarouge, c'est-à-dire que la caméra est propre à détecter des photons présentant une longueur d'onde comprise entre le domaine visible et le domaine micro-ondes. Typiquement, de tels photons ont une longueur d'onde comprise entre 800 nanomètres et 1 millimètre. La caméra est, selon un mode de réalisation préféré, propre à détecter le corps complet du joueur 12. Avantageusement, la caméra est propre à fournir des informations relatives à la position de plusieurs articulations du corps humain. De préférence, le nombre d'articulations du corps humain pour lequel la caméra est propre à fournir des informations est supérieur ou égal à 10, de préférence, supérieur ou égale à 20. Selon un mode de réalisation particulier, la caméra est une caméra fonctionnant sur le principe du temps de vol. Selon un autre mode de réalisation, le capteur du dispositif 16 est un accéléromètre permettant de déterminer l'orientation d'un objet. Selon un autre mode de réalisation, le capteur du dispositif 16 est un capteur gyroscopique.
De manière générale, tout capteur permettant de fournir des indications sur la position et l'orientation du joueur 12 est envisageable.
En variante, le capteur est également propre à fournir la position du sol par rapport à un repère prédéfini. Pour cela, selon un mode de réalisation, le capteur est propre à fournir l'équation du sol dans un repère prédéfini. De préférence, le dispositif 16 comporte une pluralité de capteurs, notamment toute combinaison des capteurs précédemment mentionnés. Par exemple, la combinaison d'une caméra, d'un accéléromètre présente un intérêt particulier ainsi que la combinaison d'une caméra, d'un accéléromètre et d'un capteur gyroscopique. Selon un mode de réalisation, le dispositif 16 est un périphérique de l'ordinateur 14. Le dispositif 16 et l'ordinateur 14 sont propres à pouvoir communiquer entre eux, que ce soit par l'intermédiaire d'une liaison filaire ou non. Selon un mode de réalisation spécifique, le dispositif 16 est également propre à effectuer des calculs sur les paramètres acquis ou à attribuer des degrés de fiabilités aux paramètres mesurés. Pour une telle attribution, dans le cas le plus simple, les paramètres mesurés sont soit associés à un attribut « fiable », soit associés à un attribut « non fiable ». De préférence, le nombre de paramètre est supérieur ou égal à 6, de préférence, supérieur ou égale à 40, préférentiellement supérieur ou égal à 60. Selon une variante non représentée, le système 10 comporte aussi une unité d'affichage, par exemple un écran. L'unité d'affichage fait ou non partie de l'ordinateur 14 selon les cas. Insuffisances d'un procédé d'identification selon l'état de la technique Nonobstant les problèmes de modélisation de l'escrime ou de modélisation d'un mouvement, comme vu précédemment, le procédé d'identification est un procédé ciblé « temps réel » avec un temps de calcul inférieur à 30 ms (millisecondes) pour s'adapter à une application dans le domaine du jeu vidéo. Un tel temps de calcul est relativement court pour reconnaitre le mouvement du joueur 12 parmi une base de connaissance de potentiellement plusieurs centaines, voire milliers de mouvements de référence. Dans l'exemple utilisé dans le cadre de la présente demande, seuls 900 mouvements de référence sont considérés pour un modèle très simplifié d'escrime au sabre, sachant que chaque mouvement de référence correspond à une cinquantaine de points par mouvement, chaque point représentant les valeurs de 60 paramètres. Du point de vue informatique, la dimensionnalité (complexité calculatoire) du problème à traiter est très grande.
En outre, il convient que le procédé indique quelle est l'intention du joueur 12 ou en d'autres termes le mouvement de référence que le joueur 12 est en train de réaliser.
En effet, dans un jeu vidéo, les intelligences artificielles réagissent aux mouvements du joueur sans attendre la fin du mouvement. A titre d'exemple, toujours dans le cas d'un jeu d'escrime, si l'intelligence artificielle n'a pas encore commencé à réagir à la fin du mouvement offensif (qui comprend comme expliqué précédemment une ou plusieurs feintes), le personnage contrôlé par l'intelligence artificielle est mort. Autrement formulé, à mesure que le mouvement du joueur 12 se déroule, il convient que le procédé d'identification permette de mieux appréhender le mouvement du joueur 12 et ce en dépit du nombre potentiellement important de mouvements de référence. Ensuite, le mouvement à identifier étant continu, il est également souhaitable que le procédé d'identification proposé soit à même de segmenter le mouvement à identifier autrement dit de déterminer lorsque le joueur 12 change de mouvement, et ce automatiquement. Le procédé d'identification permet alors de passer d'un mouvement terminé à un mouvement débutant de manière souple et continue mais également d'interrompre un mouvement pour en réaliser un deuxième, ce qui correspond en escrime à une feinte. Pour cela, de nombreux algorithmes ont été testés par le demandeur comme le filtrage de Kalman, dont les hypothèses de normalité et de linéarité rendent l'utilisation impossible pour le système 10, le filtre de Kalman étendu, le filtrage à particules, les modèles de Markov cachés (souvent désignés sous l'acronyme anglais de HMM pour Hidden Markov Model), les réseaux de Neurones, la méthode de configuration d'état ou « Configuration States » selon la terminologie anglaise, la méthode SVM ou Support Vector Machine, la méthode de Dynamic Time Warping, la méthode dite de classification Soft-max, la corrélation temporelle des données ou les méthodes basées sur un dictionnaire.
Aucune de ces méthodes n'est à même de réaliser une identification de mouvements en ligne en un temps très court (compatible avec un jeu « temps-réel ») sur un nombre aussi élevé de types de mouvements (plus de 900 en l'occurrence). Au contraire les procédés d'identification qui sont décrits dans la suite de la description permettent de remplir les critères précédemment mentionnés.
Dans la suite, un procédé d'identification selon un premier mode de réalisation est proposé. De manière très schématique, pour résumer, un tel procédé d'identification est une projection des derniers points du mouvement acquis sur les mouvements moyens des différentes cinématiques de référence. Dans toute sa généralité, le procédé d'identification selon le premier mode de réalisation est décrit dans le paragraphe intitulé « Procédé d'identification d'un mouvement du joueur 12 par minimisation d'une fonctionnelle ».
Un procédé d'identification selon un deuxième mode de réalisation est proposé. De manière très schématique, pour résumer, un tel procédé d'identification est propre à identifier un mouvement en construisant des contours actifs, ou snake, par un mécanisme de programmation dynamique basé sur la Sethian Fast Marching Method pour trouver le contour actif d'énergie globalement minimum. De manière spécifique au procédé d'identification selon le deuxième mode de réalisation, les contours actifs sont composés de points appartenant aux mouvements moyens des clusters des classes de mouvements. En outre, un contour actif n'a pas à appartenir uniquement à un cluster d'une classe de mouvements. Le contour actif a l'autorisation de sauter d'un cluster à un autre, avec un certain coût. De plus, la très grande majorité des chemins meurent c'est-à- dire sont supprimés du fait du caractère non localement minimal de leur énergie. D'autre part, certains chemins ne sont pas construits du fait du caractère non localement minimal de leur énergie à l'étape précédente. Dans toute sa généralité, le procédé d'identification selon le deuxième mode de réalisation est décrit dans le paragraphe intitulé « Procédé d'identification d'un mouvement du joueur 12 au sein de la base de connaissance par minimisation d'énergie de chemins constitués de points de mouvements de la base de connaissance ». Dans la suite, un procédé d'identification selon un troisième mode de réalisation est proposé. De manière très schématique, pour résumer, un tel procédé d'identification est une technique de détermination du point de mouvement le plus probable (état le plus probable selon la terminologie usuelle) sachant que certains paramètres ont été observés (observables selon la terminologie usuelle). Cette détermination est basée sur un filtrage Bayésien récursif quantifié. Spécifiquement, la grille utilisée dans ce contexte s'applique, contrairement aux méthodes de filtrage Bayésien récursif quantifié usuelles, aux cinématiques de références (c'est-à-dire à l'espace des états) et non aux paramètres observés (c'est-à-dire à l'espace des observables). Dans toute sa généralité, le procédé d'identification selon le troisième mode de réalisation est décrit dans le paragraphe intitulé « Procédé d'identification d'un mouvement du joueur 12 par utilisation du filtrage Bayésien récursif quantifié ».
Dans la suite, un procédé d'identification selon un quatrième mode de réalisation est proposé. De manière très schématique, pour résumer, un tel procédé d'identification repose sur une simplification d'un modèle de Markov caché. Dans toute sa généralité, le procédé d'identification selon le quatrième mode de réalisation est décrit dans le paragraphe intitulé « Procédé d'identification d'un mouvement du joueur 12 par utilisation d'une simplification d'un modèle de Markov caché ».
Un procédé d'identification selon un cinquième mode de réalisation est proposé. De manière très schématique, pour résumer, un tel procédé d'identification introduit une pénalité dans un procédé d'identification de l'état de la technique ou les quatre procédés précédemment mentionnés en utilisant des règles de pénalisation de l'introduction d'une transition entre deux parties éventuellement distinctes de mouvements de référence. Dans toute sa généralité, le procédé d'identification selon le cinquième mode de réalisation est décrit dans le paragraphe intitulé « Procédé d'identification d'un mouvement du joueur 12 par réduction du nombre de transitions possibles ».
Procédé d'identification d'un mouvement du joueur 12 par minimisation d'une fonctionnelle Le fonctionnement du système 10 est maintenant décrit en référence aux figures 2 à 4 qui illustrent un exemple de mise en oeuvre du procédé d'identification du mouvement à identifier selon un premier mode de réalisation.
La figure 2 montre plus spécifiquement l'architecture itérative du procédé d'identification proposé. La figure 2 est décrite plus précisément dans ce qui suit. Le procédé d'identification comporte une étape 22 de choix d'un intervalle de temps de calcul. Selon un mode de réalisation, l'étape 22 est mise en oeuvre par saisie d'un intervalle de temps de calcul par un opérateur. En variante, l'ordinateur 14 est propre à déterminer automatiquement l'intervalle de temps de calcul. Notamment, lorsque les points de calculs sont remplacés par des moyennes, un intervalle de temps de calcul trop court ne permet pas un calcul en temps réel tandis qu'avec un intervalle de temps de calcul trop long, la tendance centrale s'éloigne de la forme réelle du mouvement et un changement de mouvement du joueur 12 peut être non détectée. De préférence, lorsqu'un temps minimal de réalisation est défini pour les mouvements de référence, le temps de calcul choisi est inférieur au temps minimal de réalisation d'un mouvement de référence.
Préférentiellement, le temps de calcul choisi est inférieur à un dixième du temps minimal de réalisation d'un mouvement de référence. Selon un autre mode de réalisation, le temps de calcul est déterminé à la volée avant chaque traitement. Le procédé d'identification comporte également une étape 24 de sélection d'un point de départ.
Selon une variante, l'étape 24 de sélection d'un point de départ étant optionnelle, le procédé d'identification ne comprend pas l'étape 24 de sélection d'un point de départ. Selon un mode de réalisation, l'étape 24 de sélection permet la sélection d'un point de départ pour chaque cinématique de référence.
A l'étape 24 de sélection, l'ordinateur 14 sélectionne un point de départ appartenant à une cinématique de référence. Selon un mode de réalisation préféré, le point de départ est choisi en prenant en compte de la position du joueur 12 lorsque l'ordinateur 14 met en oeuvre l'étape 24 de sélection. Dans un tel cas, l'ordinateur 14 ordonne au dispositif 16 d'acquérir des paramètres liés à la position actuelle des joueurs. Le dispositif 16 acquiert les paramètres et par une minimisation, le point d'une cinématique de référence présentant la distance la plus faible aux paramètres acquis est choisi. Selon un mode de réalisation alternatif, le point de départ est choisi pour favoriser la convergence des calculs effectués durant le procédé d'identification.
Le procédé d'identification comprend aussi une étape 26 de traitement. L'étape 26 de traitement est détaillée plus précisément en référence à la figure 3. Le procédé d'identification comporte également une étape 28 de reconnaissance de la fin du mouvement du joueur 12. L'étape 28 de reconnaissance est une étape de test selon un critère.
Lorsque le critère n'est pas vérifié, l'étape 26 de traitement est à nouveau mise en oeuvre. Lorsque le critère est vérifié, le procédé d'identification est poursuivi par une étape différente de l'étape 26 de traitement. L'étape 28 de reconnaissance est mise en oeuvre par l'ordinateur 14.
A titre d'exemple, le critère est une temporisation. Dans ce cas, l'intervalle de temps écoulé entre la première itération de l'étape 26 de traitement et l'itération courante de l'étape 26 de traitement est comparé à un intervalle de temps prédéfini. Tant que l'intervalle de temps écoulé est strictement inférieur à l'intervalle de temps prédéfini, l'étape 26 de traitement est à nouveau mise en oeuvre.
Selon un autre mode de réalisation, le critère est le nombre d'itérations de l'étape 26 de traitement, le nombre d'itérations étant limité à un nombre prédéfini d'itérations. Selon une variante plus sophistiquée, le critère prend en compte le résultat de l'étape 26 de traitement. Par exemple, il est expliqué dans la suite que l'étape 26 de traitement comprend, selon un cas particulier, une détermination d'un changement de mouvement de référence par le joueur 12 (cas d'une feinte). Le critère est alors une limitation du nombre de changement de mouvement de référence. Par exemple, au bout de deux changements de mouvement de référence, le procédé d'identification est poursuivi par une étape différente de l'étape 26 de traitement. Ainsi, l'étape 28 est une étape de reconnaissance de la fin du mouvement de l'être humain lorsqu'un critère est vérifié, l'étape 26 de traitement étant itérée tant que le critère n'est pas vérifié. Le procédé d'identification comprend aussi une étape 30 de détermination du ou des mouvements de référence représentatifs du mouvement du joueur 12. Par le terme « représentatif », il est entendu que le ou les mouvements de référence sont les plus proches au sens d'un critère prédéfini du mouvement du joueur 12. Une telle proximité s'applique aussi bien pour le mouvement de référence en totalité que pour une partie du mouvement de référence. Ainsi, l'étape 30 correspond à la détermination du ou des mouvements de référence dont au moins une partie sont les plus proches au sens d'un critère prédéfini du mouvement du joueur 12. De manière complémentaire et optionnelle, l'étape 30 de détermination vise aussi à déterminer la succession de parties de mouvement de référence représentative du mouvement du joueur 12. La figure 3 illustre un exemple de mise en oeuvre de l'étape 26 de traitement.
Selon l'exemple de la figure 3, l'étape 26 de traitement comporte une sous- étape 32 de fourniture, une sous-étape 34 d'obtention et une sous-étape 36 de calcul. A la sous-étape 32 de fourniture, il est fourni un ensemble de paramètres caractéristiques relatifs au mouvement à identifier durant l'intervalle de temps de calcul choisi.
La sous-étape 32 de fourniture est, par exemple, mise en oeuvre par le dispositif 16. Selon un exemple, la sous-étape 32 comprend une sous-étape de mesure de paramètres caractéristiques et une sous-étape de transmission des paramètres caractéristiques mesurés à l'ordinateur. Dans un tel mode de réalisation, les paramètres caractéristiques mesurés sont les paramètres caractéristiques fournis. A la sous-étape de transmission, l'ensemble de paramètres est transmis à l'ordinateur 14, et notamment à la mémoire 18 qui mémorise l'ensemble de paramètres. A l'issue de la sous-étape 32 de fourniture, dans la mémoire 18, est mémorisé un ensemble de paramètres caractéristiques relatifs au mouvement à identifier durant l'intervalle de temps de calcul choisi.
Selon un mode de réalisation, l'ensemble de paramètres caractéristiques relatifs au mouvement du joueur 12 durant l'intervalle de temps de calcul choisi est la position de n articulations du joueur 12, n étant un entier strictement positif. Avantageusement, l'entier n est supérieur ou égal à 10, de préférence supérieur ou égal à 20. Avantageusement, le nombre de paramètres est supérieur ou égal à 6, de préférence, supérieur ou égal à 40, préférentiellement supérieur ou égal à 60. Selon un mode de réalisation préféré, la sous-étape 32 de fourniture est mise en oeuvre en temps réel. Cela signifie qu'un flux constant d'informations parvient à l'ordinateur 14 qui traite les informations du flux en temps réel. Un tel mode de réalisation permet d'accélérer l'identification du mouvement à identifier. A la sous-étape 34 d'obtention, les paramètres d'entrée sont l'ensemble de paramètres caractéristiques fournis. La sous-étape 34 d'obtention est ainsi une étape de préparation des données visant à faciliter les calculs subséquents impliquant ces mêmes données. Autrement formulé, la sous-étape 34 d'obtention est représentable mathématiquement sous la forme de l'application d'une transformation aux paramètres d'entrées. Une telle transformation est propre à transformer les paramètres fournis en paramètres d'entrée. Dans le cas général, le nombre de paramètres d'entrée n'a pas de lien avec le nombre de paramètres fournis. En particulier, selon un mode de réalisation préféré, le nombre de paramètres d'entrée est différent du nombre de paramètres fournis. Avantageusement, le nombre de paramètres d'entrée est strictement inférieur au nombre de paramètres fournis pour réduire la dimensionnalité du problème à traiter. De préférence, la transformation est choisie pour que les variables aléatoires dont les réalisations sont les valeurs respectives de chacun des paramètres d'entrée soient indépendantes les unes des autres. Préférentiellement, la transformation est également choisie pour que les variables aléatoires dont les réalisations sont les valeurs respectives de chacun des paramètres d'entrée soient indépendantes des autres variables non liées au mouvement à identifier. A titre d'exemple, le temps (plus précisément, le temps est lié au mouvement mais pas à la trajectoire), la morphologie de la personne ou encore les conditions de luminosité sont des variables non liées au mouvement à identifier.
La sous-étape 34 d'obtention comprend, selon les modes de réalisation, différentes sous-étapes. La figure 4 illustre un exemple de succession de sous-étapes, étant entendu que chaque sous-étape est optionnelle et que toute combinaison des sous-étapes décrites est également envisageable pour la mise en oeuvre de la sous-étape 34 d'obtention. Dans l'exemple de la figure 4, la sous-étape 34 comporte une sous-étape 40 de mise en ordre des paramètres caractéristiques fournis selon un ordre prédéfini. La sous-étape 40 de mise en ordre permet, à titre d'illustration, d'ordonner les paramètres sous forme vectorielle. Optionnellement, la sous-étape 40 de mise en ordre comporte une étape de rassemblement des paramètres fournis dont la signification ou le calcul est lié.
La sous-étape 34 comporte ensuite une sous-étape 42 d'interpolation de l'ensemble de paramètres caractéristiques fournis sur l'intervalle de temps de calcul choisi pour obtenir des paramètres d'entrée interpolés continus. L'interpolation utilise par exemple une fonction linéaire par morceaux entre chaque paramètre successif.
Alternativement, une interpolation polynômiale ou à l'aide de fonctions splines est envisageable. Dans le domaine mathématique de l'analyse numérique, une spline - mot anglais se prononçant « splaïne », mais souvent prononcé à la française - est une fonction définie par morceaux par des polynômes. Le terme français correspondant est cerce, mais l'usage a consacré le terme anglais. En variante, la sous-étape 34 comprend une sous-étape de calcul de tendance centrale de l'ensemble de paramètres caractéristiques fournis sur l'intervalle de temps de calcul choisi pour obtenir des paramètres d'entrée continus. La sous-étape 34 d'obtention comprend ensuite une sous-étape 44 de projection des paramètres fournis sur une base orthogonale. De préférence, la base orthogonale est choisie pour réduire le nombre de paramètres interpolés. Avantageusement, la base orthogonale est obtenue par mise en oeuvre d'une analyse en composantes principales appliquée sur l'ensemble des points de temps des mouvements de la base de connaissance acquise. Pour ce faire, on construit une matrice comportant autant de colonnes que le nombre de paramètres caractéristiques et autant de lignes que la somme des nombres de points de temps des mouvements de la base de connaissance. La matrice de variance-covariance est ensuite calculée. L'analyse en composantes principales est alors appliquée sur cette matrice de variance-covariance.
L'analyse en composantes principales permet de déterminer des vecteurs propres associés chacun à une valeur propre. On ne conservera qu'un certain nombre de vecteurs propres réduit associés aux plus grandes valeurs propres. Ceux-ci forment ladite base orthogonale. La sous-étape 34 d'obtention comporte également une sous-étape 46 de normalisation des paramètres fournis à la taille du joueur 12.
Pour cela, par exemple, la distance entre chaque couple d'articulations préférentiellement voisines est calculée à un instant prédéfini pour chaque couple d'articulations. Une telle distance est appelée longueur de normalisation. La longueur de normalisation est par exemple estimée par utilisation d'un moyennage temporel sur les positions d'articulations pour deux acquisitions de paramètres distinctes (pourvus que les deux acquisitions soient valides). Ceci n'est vrai que lorsque pour les temps durant lesquelles les deux articulations sont toutes les deux valides. De plus, il est supposé que ces temps sont suffisamment proches pour assurer qu'à chacun de ces moments, le même opérateur humain est imagé. Dans ce cas, au lieu de prendre en compte la position d'une articulation comme paramètre d'entrée, seul le rapport entre la différence de distance entre chaque couple d'articulations voisines et la longueur de normalisation est pris en compte. Par le terme « articulations voisines », selon les cas, il est entendu deux articulations successives, deux articulations séparées par une troisième articulation ou deux extrémités d'un même membre. Le cas de deux articulations séparées par une troisième articulation est notamment considéré lorsque les paramètres liées à la troisième articulation ne sont pas valables ou ne sont pas accessibles (par exemple, étant donné la position du joueur 12, la mesure des paramètres liées à la troisième articulation est impossible car la troisième articulation est masquée). Selon une variante, le système 10 est capable de déterminer la longueur de normalisation par interaction avec le joueur 12. Par exemple, le système 10 demande au joueur 12 sa hauteur. La hauteur du joueur 12 permet alors d'en obtenir la longueur de normalisation, par exemple en utilisant une loi de proportionnalité. Les membres d'une personne grande sont usuellement plus grands que les membres d'une personne plus petite.
La sous-étape 34 comporte également une sous-étape 48 de dérivation et intégration spatiale ou temporelle d'au moins un paramètre de l'ensemble de paramètres caractéristiques fournis pour obtenir au moins un paramètre dérivé et respectivement intégré des paramètres d'entrée. De préférence, ledit au moins un paramètre dérivé et/ou intégré est indépendant de la vitesse du mouvement à identifier. De préférence, la sous étape 48 opère une dérivation et une intégration sur l'espace et non sur le temps Selon une variante, la sous-étape 48 est une sous-étape de dérivation seulement. Cela signifie qu'aucune intégration d'au moins un paramètre de l'ensemble de paramètres caractéristiques fournis n'est effectuée. La sous-étape 48 est alors une sous-étape de dérivation d'au moins un paramètre de l'ensemble de paramètres caractéristiques fournis pour obtenir au moins un paramètre dérivé des paramètres d'entrée. Selon une autre variante, la sous-étape 48 est une sous-étape d'intégration seulement. Cela signifie qu'aucune dérivation d'au moins un paramètre de l'ensemble de paramètres caractéristiques fournis n'est effectuée. La sous-étape 48 est alors une sous-étape d'intégration d'au moins un paramètre de l'ensemble de paramètres caractéristiques fournis pour obtenir au moins un paramètre intégré des paramètres d'entrée. Plus généralement, la sous-étape 48 est une étape de calcul de paramètres supplémentaires. La dérivation spatiale et l'intégration spatiale sont deux exemples particuliers de fonction utilisables à la sous sous-étape 48. La tangente à la courbe spatiale reliant les paramètres interpolés est avantageusement calculée à la sous- étape 48. La tangente à la courbe spatiale permet de distinguer entre deux postures identiques pour le dispositif 16 mais correspondant à deux mouvements différents. Un tel cas de figure se présente en pratique du fait du bruit d'acquisition relativement important pour le dispositif 16.
Similairement, l'abscisse curviligne est aussi calculée à la sous-étape 48. L'emploi de ces deux paramètres (tangente et abscisse curviligne) permet de simplifier les calculs mis en oeuvre dans la suite du procédé d'identification par rapport à l'emploi de la dérivation et à l'intégration temporelle. Les deux paramètres présentent effectivement l'avantage d'être indépendant du temps et donc de la vitesse de réalisation du mouvement. La sous-étape 34 d'obtention comprend aussi une sous-étape 50 de vérification de la validité des paramètres caractéristiques fournis. La sous-étape 50 de vérification de la validité des paramètres caractéristiques fournis permet de prendre en compte les informations manquantes pour certains paramètres (par exemple, cas d'une articulation masquée). La sous-étape 50 de vérification est, par exemple, mise en oeuvre par utilisation d'informations transmises le dispositif 16. Le dispositif 16 fournit alors des informations relatives à la validité des paramètres caractéristiques fournis. Selon un autre mode de réalisation, il est effectué des vérifications de cohérence entre les paramètres caractéristiques fournis permettant de déterminer les paramètres caractéristiques fournis incohérents avec les autres paramètres fournis. Les paramètres incohérents sont considérés comme non valides et donc écartés de la suite de la mise en oeuvre du procédé d'identification. Selon un autre mode de réalisation, si un ou plusieurs paramètres caractéristiques sont déclarés non valides, les paramètres non valides sont alors recalculés par interpolation. L'interpolation utilise par exemple une fonction linéaire par morceaux entre chaque paramètre successif. Alternativement, une interpolation polynômiale ou à l'aide de fonctions spline est envisageable.
A l'issue de la sous-étape 34 d'obtention, il est donc obtenu un ensemble de paramètres d'entrée. Selon un exemple particulièrement avantageux, l'ensemble de paramètres d'entrée durant l'intervalle de temps de calcul choisi comprend, pour chaque articulation du joueur 12, les différences de positions entre deux articulations voisines du joueur 12, les dérivées spatiales de chacune des différences et/ou l'intégrale spatiale de chacune des différences et le déplacement absolu d'un point du squelette, normalisé par une fonction de la longueur de certains membres. Optionnellement, la sous-étape 34 d'obtention comporte une ou plusieurs étapes de changement de repère.
Par exemple, un changement de repère prenant en compte sur un axe la différence entre la position verticale du joueur 12 et la normale au sol permet de s'affranchir des problèmes de hauteur et d'orientation verticale du dispositif 16 par rapport au sol et au joueur 12. Autrement formulé, un tel changement de repère permet de contrôler l'orientation et la position du dispositif 16. Avantageusement, un tel changement de repère prend en compte la position du sol fourni par le dispositif 16. Selon un autre exemple, les coordonnées des paramètres sont exprimées en coordonnées sphériques au lieu de coordonnées cartésiennes. Un passage des coordonnées cartésiennes aux coordonnées sphériques permet dans le cas de différences entre articulations immédiatement voisines normalisées par la longueur du membre qui les sépare de réduire le nombre de paramètres et de supprimer la dépendance entre les paramètres d'une même articulation. En effet, lorsque le vecteur représentant un couple d'articulations immédiatement voisines est normalisé, cela crée une dépendance entre les trois coordonnées du vecteur. On remplace alors avantageusement ces trois coordonnées par deux angles d'Euler.
Selon un autre mode de réalisation, la sous-étape 34 d'obtention comporte une étape d'introduction d'un retard. Cela permet d'améliorer l'estimation de la valeur des paramètres et en particulier des dérivées spatiales des paramètres. Plus précisément, soit il est calculé la dérivée spatiale entre deux points de temps non immédiatement consécutifs, soit on remplace les points de temps acquis par des moyennes de points de temps successifs.
Optionnellement, la sous-étape 34 d'obtention comprend la prise en compte de l'incertitude de chaque paramètre fourni. Typiquement, une telle prise en compte utilise une analyse statistique du bruit des paramètres. Par exemple, au lieu de prendre une valeur mesurée comme la valeur pour un paramètre, il sera considéré que la valeur du paramètre est comprise dans un intervalle de valeurs lié à la valeur mesurée et à l'importance de bruit. A titre d'exemple, pour un bruit gaussien présentant une variance, on divise la différence au carré entre deux paramètres caractéristiques par la variance du bruit gaussien (en supposant que les paramètres sont indépendants les uns des autres en terme d'incertitude statistique). A la sous-étape 36 de calcul, il est calculé un point.
La sous-étape 36 de calcul est mise en oeuvre par le processeur 20. Le point calculé vérifie une double condition. D'une part, le point calculé appartient à une cinématique de référence. D'autre part, le point calculé rend extrémale une fonction d'écart entre les paramètres d'entrée et les points des cinématiques de référence. Par exemple, la fonction d'écart est l'expression de la distance dans l'espace multidimensionnel des paramètres d'entrée. De préférence, la distance est une distance non-euclidienne pour prendre en compte la dispersion des mouvements de référence autour des cinématiques de référence correspondantes. Avantageusement, la fonction d'écart comprend une pondération des paramètres d'entrée dépendante d'un ou plusieurs éléments du groupe constitué de la fiabilité du paramètre, de la nature du paramètre, du paramètre lui-même et de l'incertitude de la mesure du paramètre. La fiabilité du paramètre a, par exemple, été déterminée lors de la mise en oeuvre de la sous-étape 50 de vérification de la validité des paramètres caractéristiques fournis.
De préférence, la fonction d'écart prend également en compte une pénalisation des points de cinématiques peu probables. Typiquement, la réalisation d'un mouvement en sens inverse ou un point qui est très éloigné spatialement des points précédents est moins vraisemblable qu'un point dans la continuité du mouvement entamé. Dans ce cas, l'étape 30 de détermination prend en compte les points calculés à chaque itération de l'étape 26 de traitement.
Avantageusement, l'étape 30 de détermination est mise en oeuvre par minimisation d'une fonction de coût aussi appelée fonction de score. Une fois le mouvement du joueur 12 identifié, l'intention du joueur 12 est associée à une ou plusieurs cinématiques de référence, c'est-à-dire au moins un mouvement de référence. Selon une variante, l'intention du joueur 12 est associée à une partie de cinématique de référence. Il est alors possible ensuite de définir les réactions d'une éventuelle intelligence artificielle en termes humains. Par exemple, si les mouvements de référence identifiés sont des mouvements d'escrime, le mouvement identifié est étiqueté « botte de tierce ». Les traités d'escrime indiquent alors comment il convient de réagir à une telle attaque : par une « Parade de tierce », par une « Parade de sixte », par une « Parade de seconde haute » ou par une « Parade de protection du bras armé ». Ainsi, le procédé d'identification permet non seulement de simplifier la conception de l'intelligence artificielle, mais également de rendre une telle conception plus générique et plus efficace. Le procédé d'identification selon le premier mode de réalisation permet une identification du mouvement à la volée. Cela rend possible une interaction avec le joueur 12 dans le cas où l'interaction est plus complexe qu'un simple appui sur un bouton d'une manette correspondant à une expérience de jeu vidéo traditionnelle. Réaliser la reconnaissance à la volée permet également de détecter immédiatement les changements d'intention du joueur 12. Dans le cas de l'escrime, si le joueur 12 réalise initialement une « botte de seconde », l'intelligence artificielle de l'adversaire du joueur 12 réalise la parade appropriée (une « parade de seconde » ou une « parade d'octave »). Si alors le joueur 12, réalisant une feinte, change de ligne d'attaque pour faire une « botte de tierce », un tel changement de mouvement est immédiatement détecté, permettant à l'intelligence artificielle de passer du mouvement que l'intelligence artificielle réalisait (une « parade de seconde » par exemple), à une « parade de seconde haute », permettant ainsi à l'intelligence artificielle de parer la nouvelle attaque du joueur 12 avec le mouvement le plus approprié compte tenu, non seulement de l'attaque du joueur 12, mais également du précédent mouvement que l'intelligence artificielle commençait à réaliser. Le procédé d'identification selon le premier mode de réalisation permet aussi l'identification d'une partie de mouvement de référence et d'obtenir une information sur la localisation de la partie effectuée sur le mouvement de référence. Par exemple, il est possible de déterminer que la partie de mouvement identifiée correspond à ce qui est effectué entre le milieu du mouvement de référence et trois-quarts de la mise en oeuvre du mouvement de référence. Cela permet que l'intelligence artificielle contrôlant l'adversaire du joueur 12 réagisse au moment opportun. Une parade trop précoce du mouvement effectué par le joueur 12 est effectivement aisément contournée par une feinte. A l'inverse, une parade trop tardive du mouvement effectué par le joueur 12 ne protège que partiellement l'adversaire du joueur 12, voire pas du tout. Le procédé d'identification selon le premier mode de réalisation est applicable indépendamment du nombre de mouvements de référence. De ce fait, les défauts liés à un nombre de mouvements de référence trop faible sont évités. Par exemple, il est possible de simplifier au maximum, comme par exemple un coup par au-dessus ou vers la droite comme dans le cas d'un jeu sur la console Wii, auxquels s'ajoutent les deux parades correspondantes et la position de garde. Dans ce cas extrêmement simple, (2+2+1)2 = 25 mouvements différents sont pris en compte. Il est encore possible de négliger certains des mouvements, par exemple en n'autorisant que les mouvements vers ou depuis la garde. Il ne reste alors que 4x2 = 8 mouvements différents. En cas de passage d'une parade à une attaque ou inversement, cependant, les chances d'identification correcte du mouvement sont fortement diminuées. La méthode a été validée sur 60 cinématiques de référence différentes. Le procédé d'identification selon le premier mode de réalisation permet de prendre en compte l'ensemble des paramètres acquis par le dispositif 16 à la même cadence que le dispositif 16 acquiert les paramètres. Typiquement, à titre d'illustration, le procédé d'identification selon le premier mode de réalisation est capable de prendre en compte 60 paramètres de mouvement acquis toutes les 1 /30ème de seconde ou est capable de prendre en compte six paramètres de mouvement acquis tous les 1 /60ème de seconde.
Le procédé d'identification selon le premier mode de réalisation est également capable de détecter des changements de mouvements. Une telle capacité de détection est mise en oeuvre dans deux cas distincts : lors du passage d'un premier mouvement de référence fini à un deuxième mouvement débutant et lors du passage d'un premier mouvement de référence en cours à un autre mouvement de référence en cours. Le premier cas garantit une fluidité dans l'identification de mouvement, le joueur 12 passant naturellement d'un mouvement de référence terminé à un autre mouvement de référence, sans nécessité de pause entre deux mouvements successifs. Le deuxième cas correspond à la réalisation de feintes, cas fréquent dans le domaine de l'escrime. Le procédé d'identification selon le premier mode de réalisation permet une identification du mouvement en moins de trente secondes sur un seul thread ou fil (d'exécution) d'une console de jeu. Cela permet de réserver les autres threads ou fils (d'exécution) de la console de jeu au graphisme et au son. La mise en oeuvre du procédé d'identification selon le premier mode de réalisation est donc transparente pour le joueur 12. Le procédé d'identification selon le premier mode de réalisation permet aussi de détecter l'intention du joueur 12. Le procédé d'identification selon le premier mode de réalisation assure un raffinement de la compréhension du mouvement à identifier au fur et à mesure que le mouvement du joueur 12 se déroule. Plus le temps passe ou plus exactement, plus le joueur 12 progresse dans la réalisation de son mouvement et mieux l'intelligence artificielle est à même d'analyser correctement le mouvement du joueur 12. Ceci correspond exactement à une simulation de la réalité : un escrimeur détermine avec une certitude croissante le mouvement effectué par son ennemi à mesure que son ennemi le réalise. Le procédé d'identification selon le premier mode de réalisation est à même de segmenter automatiquement le mouvement sans aucune indication du début ou de la fin d'un mouvement. Le procédé d'identification selon le premier mode de réalisation prend en compte le fait que certains paramètres caractéristiques du mouvement à identifier par le dispositif 16 soient plus ou moins valides. Cela permet de garantir une convergence du procédé d'identification selon le premier mode de réalisation même lorsque certains paramètres caractéristiques fournis sont aberrants. En outre, le procédé d'identification selon le premier mode de réalisation permet de gérer les insuffisances du dispositif 16. Par exemple, en l'absence d'information sur l'orientation du poignet ou sur la position de la lame, le procédé d'identification selon le premier mode de réalisation permet quand même d'identifier des mouvements de référence en utilisant la position des articulations du corps du joueur 12. Selon un autre exemple, sans connaître la posture du corps, le procédé d'identification selon le premier mode de réalisation est également capable de déterminer le mouvement effectué par le joueur 12 uniquement avec la position et l'orientation de la lame Le procédé d'identification selon le premier mode de réalisation présente également l'avantage d'être indépendant du temps. Ainsi, il importe peu que les mouvements du joueur 12 soient réalisés très rapidement, très lentement, rapidement au début et lentement à la fin ou inversement. Une telle variabilité de vitesse d'exécution n'a pas d'impact sur l'identification et par là, sur les possibilités de réaction de l'intelligence artificielle.
Le procédé d'identification selon le premier mode de réalisation présente aussi l'avantage d'être indépendant de la morphologie du joueur 12. Les différences globales de taille ou de proportion relative notamment à la largeur d'épaule ou la longueur des bras du joueur 12 sont prises en compte.
Le procédé d'identification selon le premier mode de réalisation, notamment combiné avec le procédé selon le cinquième mode de réalisation, permet également d'obtenir un temps de calcul par trame temporelle sur un seul thread ou fil (d'exécution) inférieur à 1/30è" de seconde pour environ 1000 cinématiques de référence différents dans la base de connaissance. Cela permet d'inclure à la suite, dans la même trame temporelle, une intelligence artificielle produisant une réponse par adversaire ou allié du personnage du joueur 12 à partir des informations de reconnaissance et des informations accessibles à l'intelligence artificielle. Le procédé d'identification selon le premier mode de réalisation permet d'obtenir un taux d'identification meilleur que le taux de reconnaissance obtenu avec les procédés de l'état de technique. Typiquement, dans le cas de l'escrime, le taux d'identification d'un point de temps d'un mouvement est strictement supérieur à 85% Une telle précision n'est atteinte avec les procédés de l'état de la technique qu'à la fin du mouvement, avec l'information de tous les points de temps du mouvement. De plus, ce taux d'identification est obtenu pour 60 cinématiques de référence, contre une dizaine au maximum pour les procédés de l'état de la technique. Le procédé d'identification selon le premier mode de réalisation présente aussi l'avantage de garantir un taux d'identification maximum dans l'intervalle de temps durant lequel l'intelligence artificielle a une décision de réponse à prendre.Selon un mode de réalisation préféré, le procédé d'identification selon le premier mode de réalisation permet de prédire les postures futures les plus probables du joueur 12 et/ou les positions de la lame du joueur 12. L'intelligence artificielle est alors propre à prendre des décisions tenant compte des postures et/ou des positions prédites. Une décision consiste par exemple à déterminer l'action la plus opportune entre une attaque, une contre-attaque ou une parade. Selon des modes de fonctionnement plus évolués, la décision prend en compte un comportement particulier pour simuler un adversaire humain. Par exemple, pour simuler un être humain impatient, une contre-attaque sera privilégiée par rapport à une parade. Optionnellement, le procédé d'identification selon le premier mode de réalisation est propre à fournir un indicateur de qualité du mouvement réalisé. Une telle information permet d'obtenir un indice de performance du mouvement réalisé par le joueur 12. Par exemple, il est ainsi déterminé la gravité de la blessure infligée en cas d'attaque non parée ou le déséquilibre de l'adversaire en cas de parade réussie avec une excellente qualité. L'indicateur de qualité du mouvement permet également d'apprendre au joueur 12 à réaliser correctement les mouvements de référence qui peuvent correspondre à une technique utilisée en dehors de tout cadre de reconnaissance. Par exemple, elle permet dans un jeu d'escrime d'améliorer sa technique d'escrime. L'indicateur de qualité du mouvement permet également de faciliter l'identification de mouvements ultérieurs du même joueur 12. Avantageusement, le procédé d'identification selon le premier mode de réalisation comporte une étape de filtrage des mouvements du joueur 12. Cela permet, par exemple, de favoriser la visualisation ou d'éviter de prendre en compte les positions aberrantes de certaines articulations. Préférentiellement, le procédé d'identification selon le premier mode de réalisation comporte une étape de reconstruction du ou des mouvements identifiés réalisés par le joueur 12. Cela permet de faciliter l'apprentissage de l'intelligence artificielle des spécificités du joueur 12, notamment les choix, les forces et erreurs passés. Selon un mode de réalisation préféré, l'intelligence artificielle est propre à fournir au joueur 12 des conseils pour améliorer sa pratique. En résumé, selon un mode de réalisation cumulant plusieurs options précédentes, à l'issue de la mise en oeuvre du procédé d'identification selon le premier mode de réalisation, une pluralité d'information est accessible à l'ordinateur et par là, à l'intelligence artificielle : la partie ou les parties de mouvements de référence les plus ressemblants au mouvement à identifier, l'avancement dans le mouvement à identifier par rapport à une réalisation complète du mouvement de référence, une estimation de la qualité du mouvement réalisé par rapport au rapport au mouvement de référence et la qualité de l'identification effectuée par le procédé d'identification. Selon un autre mode de réalisation du procédé d'identification selon le premier mode de réalisation, chaque itération de l'étape 26 de traitement comporte également une sous-étape de choix de l'intervalle de temps de calcul pour l'itération suivante. Selon une variante, l'étape 26 de traitement ne comporte pas de sous-étape 34 d'obtention. Dans ce cas, les paramètres d'entrée sont les paramètres caractéristiques fournis. Selon encore un autre mode de réalisation, chaque itération de l'étape 26 de traitement comporte une sous-étape de sélection de la cinétique de référence durant l'intervalle de temps de calcul choisi par minimisation d'une fonction de coût prenant en compte les points calculés aux itérations précédentes de l'étape 26 de traitement.
De préférence, la fonction de coût utilisée à la sous-étape de sélection de la cinétique de référence est la fonction d'écart utilisée à la sous-étape 36 de calcul lors de la même itération. Optionnellement, chaque itération de l'étape 26 de traitement comporte, en outre, une sous-étape détection d'un changement de cinématique de référence si la cinématique de référence sélectionnée à la sous-étape de sélection est différente de la cinématique de référence sélectionnée à l'itération précédente de l'étape 26 de traitement. Selon un autre mode de réalisation, la réaction de l'intelligence artificielle aux mouvements du joueur 12 dépend du niveau de difficulté choisi par le joueur 12 de jeux vidéo pour l'exécution du jeu vidéo. Pour illustrer les performances que la mise en oeuvre du procédé d'identification du mouvement du joueur 12 selon le premier mode de réalisation permet d'atteindre, un exemple concret de mise en oeuvre d'un tel procédé d'identification selon le premier mode de réalisation est détaillé en mettant l'accent sur les résultats numériques obtenus.
Le tableau suivant donne le pourcentage de points correctement reconnus par cinématique de référence en mettant en oeuvre le procédé d'identification selon le premier mode de réalisation (deuxième colonne). Le tableau suivant donne également accès au pourcentage de points pour lequel la réaction de l'intelligence artificielle qui en résulte est la plus appropriée.20 Cinématique de référence Pourcentage de re réaction appropriée de Pourcentage de reconnaissance l'intelligence artificielle (%) (%) Coup de manchette 79,9 82,9 Coup 1 de quarte à la joue 89,0 92,2 Coup 1 de quarte à la jambe 90,3 95,4 Coup 2 de tierce à la joue 91,4 93,3 Coup 2 de tierce à la jambe 84,6 90,0 Coup 3 de septime à la joue 82,5 88,9 Coup 3 de septime à la jambe 79,1 89,2 Coup 4 de seconde à la joue 85,1 93,3 Coup 4 de seconde à la jambe 88,4 92,6 Coup 5 à la joue 85,3 88,4 Coup 5 au côté 84,6 88,1 Coup 6 à la joue 90,5 93,6 Coup 6 au côté 89,0 92,8 Coup 7 de quinte à la tête 90,6 92,3 Coup 8 de prime à l'entrejambe 89,0 94,4 Parade d'octave haut 77,3 82,4 Parade de prime haute 78,6 89,5 Parade de quarte haute 81,9 87,7 Parade de seconde haute 88,5 93,2 Parade de tierce haute 68,2 84,3 Parade de quarte horizontale 93,1 95,8 Parade de prime basse 89,2 92,4 Parade de quarte basse 88,0 93,4 Parade de tierce basse 60,1 63,6 Parade d'octave 78,0 84,8 Parade de prime 75,3 84,4 Parade de quarte 82,6 84,3 Parade de Saint Georges 81,5 88,3 Parade de seconde 93,3 94,7 Parade de septime 90,7 95,3 Parade de sixte 90,9 94,4 Parade de tierce 70,5 95,8 Retour d'attaque en garde 8,6 37,8 Retour de parade en garde 71,2 76,9 A l'étude du tableau, il apparaît que le pourcentage de points de temps correctement reconnus est de 87,3% et le pourcentage de points de temps conduisant à une réponse correcte d'une intelligence artificielle pour un jeu d'escrime (qui ne différencie par exemple pas dans sa réponse une parade de tierce et une parade de sixte), est de 92 `Vo. Il convient, toutefois, de préciser que pour les points mal reconnus ou pour lesquelles la réponse de l'intelligence artificielle n'est pas la plus approprié, cela n'a pas de conséquence pour le jeu vidéo d'escrime dans la mesure où certaines phases du jeu d'escrime comme la garde n'impliquent pas une réponse spécifique et où la décision d'effectuer un mouvement par l'intelligence artificielle comprend plusieurs instants et pas un seul. Procédé d'identification d'un mouvement du joueur 12 au sein de la base de connaissance par minimisation d'énergie de chemins constitués de points de mouvements de la base de connaissance Un deuxième mode de réalisation du procédé d'identification est maintenant décrit en référence aux figures 2 et 5. L'architecture de l'ordinogramme de la figure 2 est conservée pour le deuxième mode de réalisation du procédé d'identification. De ce fait, comme pour le premier mode de réalisation du procédé d'identification, le procédé d'identification selon le deuxième mode de réalisation comprend également une étape 22 de choix d'un intervalle de temps de calcul, une étape 24 de sélection d'un point de départ, une étape 26 de traitement, une étape 28 de reconnaissance de la fin du mouvement du joueur 12 et une étape 30 de détermination du ou des mouvements de référence ou de la succession de parties de mouvements de référence représentatifs du mouvement du joueur 12. L'étape 22 de choix d'un intervalle de temps de calcul et l'étape 28 de reconnaissance de la fin du mouvement du joueur 12 sont identiques à la description précédente. Les caractéristiques associées ne sont pas répétées pour la description du procédé d'identification selon le deuxième mode de réalisation mais s'appliquent également. Seules les différences relatives à l'étape 24 de sélection d'un point de départ, à l'étape 26 de traitement et à l'étape 30 de détermination du ou des mouvements de référence ou de la succession de parties de mouvements de référence représentatifs du mouvement du joueur 12 sont précisées dans ce qui suit en référence à l'ordinogramme de la figure 5. Les éléments identiques ne sont pas répétés pour la description du procédé d'identification selon le deuxième mode de réalisation. L'étape 24 de sélection d'un point de départ du procédé d'identification selon le deuxième mode de réalisation est, selon un mode de réalisation, mise en oeuvre de la même manière que l'étape 24 de sélection d'un point de départ du procédé d'identification selon le premier mode de réalisation.
Toutefois, préférentiellement, à l'étape 24 de sélection d'un point de départ, il est choisi non pas un point de départ mais un ensemble de points de départ vérifiant un critère. Le critère est, par exemple, double : appartenir à une cinématique de référence et présenter une distance à un point de référence inférieure ou égale à un seuil prédéfini. Une telle manière de mettre en oeuvre l'étape 24 de sélection d'un point de départ permet de prendre avantage du fait que la sélection des chemins dans le cadre du procédé d'identification selon le deuxième mode de réalisation est automatique. Selon l'exemple de la figure 5, l'étape 26 de traitement comporte une sous- étape 100 de fourniture, une sous-étape 102 d'obtention et une sous-étape 104 de calcul. La sous-étape 100 de fourniture et la sous-étape 102 d'obtention sont respectivement identiques à la sous-étape 32 de fourniture et à la sous-étape 34 d'obtention décrites précédemment en référence à la figure 3. Plus précisément, cela signifie que toutes les remarques pour décrire la sous-étape 32 de fourniture et la sous- étape 34 d'obtention s'appliquent également pour la sous-étape 100 de fourniture et respectivement la sous-étape 102 d'obtention. De ce fait, la sous-étapes 100 de fourniture et la sous-étape 102 d'obtention ne sont pas plus décrites dans ce qui suit. La sous-étape 104 de calcul vise à calculer des chemins, un chemin étant une succession de points. Lesdits points sont représentatifs ou sont associés à une cinématique de référence. Pour rappel, la cinématique de référence peut être soit continue soit discrète. De préférence, lesdits points appartiennent chacun à une cinématique de référence. La sous-étape 104 de calcul comprend une sous-étape 106 de déduction selon une première règle du ou des points suivants de chaque chemin, pour obtenir un ensemble de chemins autorisés, chaque point déduit appartenant à une cinématique de référence et étant fonction des paramètres d'entrée. A titre d'exemple, selon la première règle, un seul point est déduit pour un chemin dont l'énergie est strictement inférieure aux énergies de chaque autre succession de points calculés à l'itération précédente de l'étape 26 de traitement.
Selon un autre exemple, selon la première règle, pour les chemins d'énergie non minimale, les points déduits appartiennent à la même cinématique de référence que le point obtenu pour ce chemin à l'itération précédente. Le point déduit dans un tel cas à la sous-étape 106 de déduction est alors le point suivant de la cinématique de référence à laquelle appartient le point obtenu à l'itération précédente de l'étape 26 de traitement pour le chemin d'énergie minimale considéré.
De préférence, l'énergie d'une succession de points est définie comme la somme sur les points du chemin d'une fonction d'écart entre le point du chemin et le point correspondant du mouvement actuellement réalisé par le joueur 12. Cette fonction d'écart prend en compte la position des points, mais également les tangentes au mouvement et les longueurs parcourues. Selon une variante, l'énergie d'une succession de points est définie comme une fonction monotone décroissante de la probabilité a posteriori d'association du chemin au mouvement réalisé par le joueur 12. Cette probabilité a priori d'association est de préférence le produit sur les points du chemin des probabilités d'association de ce point du chemin avec le point correspondant du mouvement du joueur 12. A l'issue de la sous-étape 106 de déduction, le ou les points suivants de chaque chemin ont été déduits. L'ensemble des chemins suivant les chemins déjà calculés et passant par les points déduits forme les chemins autorisés. La sous-étape 104 de calcul comprend également une sous-étape 108 de sélection parmi les chemins autorisés d'un ensemble de chemins optimaux, chacun pour un ensemble de chemins différents selon une deuxième règle. Selon un premier mode de réalisation, entre tous les points suivants d'un même chemin appartenant à une même cinématique de référence, on ne garde que le point pour lequel l'énergie du chemin est minimum.
Selon un deuxième mode de réalisation utilisé éventuellement en combinaison avec le premier mode de réalisation, entre tous les chemins se terminant par le même point, on ne garde que le chemin d'énergie minimum. Selon un troisième mode de réalisation, utilisé éventuellement en combinaison avec un ou plusieurs des modes de réalisation précédents, entre tous les chemins se terminant par un point appartenant à la même cinématique de référence, on ne conserve que le chemin d'énergie minimum. De préférence, plusieurs chemins sont conservés : au moins, par cinématique de référence, un chemin dont le dernier point appartient à cette cinématique de référence. A titre d'exemple, selon la deuxième règle, si un point déduit à l'issue de la sous-étape 106 de déduction appartient à deux chemins différents, seul le chemin dont la succession de points présente une énergie minimale est sélectionné. Cela permet de réduire le nombre de chemins autorisés et ainsi d'accélérer le calcul. De préférence, la définition de l'énergie minimale utilisée à la sous-étape 108 de sélection est la même que la définition de l'énergie minimale employée lors de la mise en oeuvre de la sous-étape 106 de déduction.
Selon un mode de réalisation, l'étape 30 de détermination du procédé d'identification selon le deuxième mode de réalisation prend en compte les chemins calculés à la dernière itération de l'étape 26 de traitement. Avantageusement, l'étape 30 de détermination est mise en oeuvre par minimisation d'une fonction de coût. Selon un mode de réalisation, le chemin déterminé est le chemin présentant une énergie minimale. Le procédé d'identification selon le deuxième mode de réalisation permet une identification du mouvement à la volée. Cela rend possible une interaction avec le joueur 12 dans le cas où l'interaction est plus complexe qu'un simple appui sur un bouton d'une manette correspondant à une expérience de jeu vidéo traditionnelle. Réaliser la reconnaissance à la volée permet également de détecter immédiatement les changements d'intention du joueur 12. Dans le cas de l'escrime, si le joueur 12 réalise initialement une « botte de seconde », l'intelligence artificielle de l'adversaire du joueur 12 réalise la parade appropriée (une « parade de seconde » ou une « parade d'octave »). Si alors le joueur 12, réalisant une feinte, change de ligne d'attaque pour faire une « botte de tierce », un tel changement de mouvement est immédiatement détecté, permettant à l'intelligence artificielle de passer du mouvement que l'intelligence artificielle réalisait (une « parade de seconde » par exemple), à une « parade de seconde haute », permettant ainsi à l'intelligence artificielle de parer la nouvelle attaque du joueur 12 avec le mouvement le plus approprié compte tenu, non seulement de l'attaque du joueur 12, mais également du précédent mouvement que l'intelligence artificielle commençait à réaliser. Le procédé d'identification selon le deuxième mode de réalisation permet aussi l'identification d'une partie de mouvement de référence et d'obtenir une information sur la localisation de la partie effectuée sur le mouvement de référence. Par exemple, il est possible de déterminer que la partie de mouvement identifiée correspond à ce qui est effectué entre le milieu du mouvement de référence et trois-quarts de la mise en oeuvre du mouvement de référence. Cela permet que l'intelligence artificielle contrôlant l'adversaire du joueur 12 réagisse au moment opportun. Une parade trop précoce du mouvement effectué par le joueur 12 est effectivement aisément contournée par une feinte. A l'inverse, une parade trop tardive du mouvement effectué par le joueur 12 ne protège que partiellement l'adversaire du joueur 12, voire pas du tout. Le procédé d'identification selon le deuxième mode de réalisation est applicable indépendamment du nombre de mouvements de référence. De ce fait, les défauts liés à un nombre de mouvements de référence trop faible sont évités. Par exemple, il est possible de simplifier au maximum, comme par exemple un coup par au-dessus ou vers la droite comme dans le cas d'un jeu sur la console Wii, auxquels s'ajoutent les deux parades correspondantes et la position de garde. Dans ce cas extrêmement simple, (2+2+1)2 = 25 mouvements différents sont pris en compte. Il est encore possible de négliger certains des mouvements, par exemple en n'autorisant que les mouvements vers ou depuis la garde. Il ne reste alors que 4x2 = 8 mouvements différents. En cas de passage d'une parade à une attaque ou inversement, cependant, les chances d'identification correcte du mouvement sont fortement diminuées. La méthode a été validée sur 60 cinématiques de référence différentes.
Le procédé d'identification selon le deuxième mode de réalisation permet de prendre en compte l'ensemble des paramètres acquis par le dispositif 16 à la même cadence que le dispositif 16 acquiert les paramètres. Typiquement, à titre d'illustration, le procédé d'identification selon le deuxième mode de réalisation est capable de prendre en compte 60 paramètres de mouvement acquis toutes les 1 /30ème de seconde ou est capable de prendre en compte six paramètres de mouvement acquis tous les 1 /60ème de seconde. Le procédé d'identification selon le deuxième mode de réalisation est également capable de détecter des changements de mouvements. Une telle capacité de détection est mise en oeuvre dans deux cas distincts : lors du passage d'un premier mouvement de référence fini à un deuxième mouvement débutant et lors du passage d'un premier mouvement de référence en cours à un autre mouvement de référence en cours. Le premier cas garantit une fluidité dans l'identification de mouvement, le joueur 12 passant naturellement d'un mouvement de référence terminé à un autre mouvement de référence, sans nécessité de pause entre deux mouvements successifs.. Le deuxième cas correspond à la réalisation de feintes, cas fréquent dans le domaine de l'escrime. Le procédé d'identification selon le deuxième mode de réalisation permet une identification du mouvement en moins de trente secondes sur un seul thread ou fil (d'exécution) d'une console de jeu. Cela permet de réserver les autres threads ou fils (d'exécution) de la console de jeu au graphisme et au son. La mise en oeuvre du procédé d'identification selon le deuxième mode de réalisation est donc transparente pour le joueur 12. Le procédé d'identification selon le deuxième mode de réalisation permet aussi de détecter l'intention du joueur 12. Le procédé d'identification selon le deuxième mode de réalisation assure un raffinement de la compréhension du mouvement à identifier au fur et à mesure que le mouvement du joueur 12 se déroule. Plus le temps passe ou plus exactement, plus le joueur 12 progresse dans la réalisation de son mouvement et mieux l'intelligence artificielle est à même d'analyser correctement le mouvement du joueur 12. Ceci correspond exactement à une simulation de la réalité: un escrimeur détermine avec une certitude croissante le mouvement effectué par son ennemi à mesure que son ennemi le réalise. Le procédé d'identification selon le deuxième mode de réalisation est à même de segmenter automatiquement le mouvement sans aucune indication du début ou de la fin d'un mouvement. Le procédé d'identification selon le deuxième mode de réalisation prend en compte le fait que certains paramètres caractéristiques du mouvement à identifier par le dispositif 16 soient plus ou moins valides. Cela permet de garantir une convergence du procédé d'identification même lorsque certains paramètres caractéristiques fournis sont aberrants. En outre, le procédé d'identification selon le deuxième mode de réalisation permet de gérer les insuffisances du dispositif 16. Par exemple, en l'absence d'information sur l'orientation du poignet ou sur la position de la lame, le procédé d'identification selon le deuxième mode de réalisation permet quand même d'identifier des mouvements de référence en utilisant la position des articulations du corps du joueur 12. Selon un autre exemple, sans connaître la posture du corps, le procédé d'identification selon le deuxième mode de réalisation est également capable de déterminer le mouvement effectué par le joueur 12 uniquement avec la position et l'orientation de la lame. Le procédé d'identification selon le deuxième mode de réalisation présente également l'avantage d'être indépendant du temps. Ainsi, il importe peu que les mouvements du joueur 12 soient réalisés très rapidement, très lentement, rapidement au début et lentement à la fin ou inversement. Une telle variabilité de vitesse d'exécution n'a pas d'impact sur l'identification et par là, sur les possibilités de réaction de l'intelligence artificielle. Le procédé d'identification selon le deuxième mode de réalisation présente aussi l'avantage d'être indépendant de la morphologie du joueur 12. Les différences globales de taille ou de proportion relative notamment à la largeur d'épaule ou la longueur des bras du joueur 12 sont prises en compte. Le procédé d'identification selon le deuxième mode de réalisation, notamment combiné avec le procédé selon le cinquième mode de réalisation, permet également d'obtenir un temps de calcul par trame temporelle sur un seul thread ou fil (d'exécution) inférieur à 1/30è" de seconde pour environ 1000 mouvements de référence différents dans la base de connaissance. Cela permet d'inclure à la suite, dans la même trame temporelle, une intelligence artificielle produisant une réponse par adversaire ou allié du personnage du joueur 12 à partir des informations de reconnaissance et des informations accessibles à l'intelligence artificielle. Le procédé d'identification selon le deuxième mode de réalisation permet d'obtenir un taux d'identification meilleur que le taux de reconnaissance obtenu avec les procédés de l'état de technique. Typiquement, dans le cas de l'escrime, le taux d'identification d'un point de temps d'un mouvement est strictement supérieur à 85% Une telle précision n'est atteinte avec les procédés de l'état de la technique qu'à la fin du mouvement, avec l'information de tous les points de temps du mouvement. De plus, ce taux d'identification est obtenu pour 60 cinématiques de référence, contre une dizaine au maximum pour les procédés de l'état de la technique. Le procédé d'identification selon le deuxième mode de réalisation présente aussi l'avantage de garantir un taux d'identification maximum dans l'intervalle de temps durant lequel l'intelligence artificielle a une décision de réponse à prendre.
Selon un mode de réalisation préféré, le procédé d'identification selon le deuxième mode de réalisation permet de prédire les postures futures les plus probables du joueur 12 et/ou les positions de la lame du joueur 12. L'intelligence artificielle est alors propre à prendre des décisions prenant compte des postures et/ou des positions prédites. Une décision consiste par exemple à déterminer l'action la plus opportune entre une attaque, une contre-attaque ou une parade. Selon des modes de fonctionnement plus évolués, la décision prend en compte un comportement particulier pour simuler un adversaire humain. Par exemple, pour simuler un être humain impatient, une contre-attaque sera privilégiée par rapport à une parade. Optionnellement, le procédé d'identification selon le deuxième mode de réalisation est propre à fournir un indicateur de qualité du mouvement réalisé. Une telle information permet d'obtenir un indice de performance du mouvement réalisé par le joueur 12. Par exemple, il est ainsi déterminé la gravité de la blessure infligée en cas d'attaque non parée ou le déséquilibre de l'adversaire en cas de parade réussie avec une excellente qualité. L'indicateur de qualité du mouvement permet également d'apprendre au joueur 12 à réaliser correctement les mouvements de référence qui peuvent correspondre à une technique utilisée en dehors de tout cadre de reconnaissance. Par exemple, elle permet dans un jeu d'escrime d'améliorer sa technique d'escrime. L'indicateur de qualité du mouvement permet également de faciliter l'identification de mouvements ultérieurs du même joueur 12.
Avantageusement, le procédé d'identification selon le deuxième mode de réalisation comporte une étape de filtrage des mouvements du joueur 12. Cela permet, par exemple, de favoriser la visualisation ou d'éviter de prendre en compte les positions aberrantes de certaines articulations. Préférentiellement, le procédé d'identification selon le deuxième mode de réalisation comporte une étape de reconstruction du ou des mouvements identifiés réalisés par le joueur 12. Cela permet de faciliter l'apprentissage de l'intelligence artificielle des spécificités du joueur 12, notamment les choix, les forces et erreurs passés. Selon un mode de réalisation préféré, l'intelligence artificielle est propre à fournir au joueur 12 des conseils pour améliorer sa pratique. Selon un autre mode de réalisation du procédé d'identification selon le deuxième mode de réalisation, chaque itération de l'étape 26 de traitement comporte également une sous-étape de choix de l'intervalle de temps de calcul pour l'itération suivante de l'étape 26 de traitement. Selon une variante, l'étape 26 de traitement ne comporte pas de sous-étape 102 d'obtention. Dans ce cas, les paramètres d'entrée sont les paramètres caractéristiques fournis. Selon encore un autre mode de réalisation, chaque itération de l'étape 26 de traitement comporte une sous-étape de sélection de la cinématique de référence durant l'intervalle de temps de calcul choisi par détermination du chemin minimisant une fonction de coût.
Selon un mode de réalisation, la cinématique de référence sélectionnée est la cinématique de référence du point du chemin présentant une énergie minimale durant l'intervalle de temps de calcul choisi. Optionnellement, chaque itération de l'étape 26 de traitement comporte, en outre, une sous-étape de détection d'un changement de cinématique de référence si la cinématique de référence déterminée à la sous-étape de détermination est différente de la cinématique de référence déterminée à l'itération précédente de l'étape 26 de traitement. Selon un autre mode de réalisation, la réaction de l'intelligence artificielle aux mouvements du joueur 12 dépend du niveau de difficulté choisi par le joueur 12 pour l'exécution du jeu vidéo.
Pour illustrer les performances que la mise en oeuvre du procédé d'identification du mouvement du joueur 12 selon le deuxième mode de réalisation permet d'atteindre, un exemple concret de mise en oeuvre d'un tel procédé d'identification selon le deuxième mode de réalisation est détaillé en mettant l'accent sur les résultats numériques obtenus. Le tableau suivant donne le pourcentage de points correctement reconnus par cinématique de référence en mettant en oeuvre le procédé d'identification selon le premier mode de réalisation (deuxième colonne). Le tableau suivant donne également accès au pourcentage de points pour lequel la réaction de l'intelligence artificielle qui en résulte est la plus appropriée.
Cinématique de référence Pourcentage de re réaction appropriée de Pourcentage de reconnaissance l'intelligence artificielle (%) (%) Coup de manchette 86,2 87,6 Coup 1 de quarte à la joue 95,6 96,9 Coup 1 de quarte à la jambe 97,3 98,8 Coup 2 de tierce à la joue 97,3 98,9 Coup 2 de tierce à la jambe 91,9 94,9 Coup 3 de septime à la joue 89,2 91,2 Coup 3 de septime à la jambe 85,3 93,2 Coup 4 de seconde à la joue 91,2 97,6 Coup 4 de seconde à la jambe 93,7 96,7 Coup 5 à la joue 89,9 91,8 Coup 5 au côté 88,6 94 Coup 6 à la joue 88,6 96,7 Coup 6 au côté 96 97,8 Coup 7 de quinte à la tête 96,8 98,2 Coup 8 de prime à l'entrejambe 92,5 96,7 Parade d'octave haut 81,4 86,7 Parade de prime haute 84,3 91,4 Parade de quarte haute 86,7 89,1 Parade de seconde haute 93,3 98,0 Parade de tierce haute 75,1 87,4 Parade de quarte horizontale 99,7 99,9 Parade de prime basse 94,3 97,6 Parade de quarte basse 91,7 97,2 Parade de tierce basse 66,6 66,6 Parade d'octave 84,7 89,6 Parade de prime 80,7 87,9 Parade de quarte 87,6 90,1 Parade de Saint Georges 88,1 91,7 Parade de seconde 98,2 98,2 Parade de septime 99,1 99,1 Parade de sixte 97,2 98 Parade de tierce 76 78,5 Retour d'attaque en garde 7,8 à 100 40,4 à 100 Retour de parade en garde 74,8 à 100 81,2 à 100 A l'étude du tableau, il apparaît que le pourcentage de points de temps correctement reconnus est de 93% et le pourcentage de points de temps conduisant à une réponse correcte d'une intelligence artificielle pour un jeu d'escrime (qui ne différencie par exemple pas dans sa réponse une parade de tierce et une parade de sixte), est de 95,75 `Vo.. Il convient, toutefois, de préciser que pour les points mal reconnus ou pour lesquelles la réponse de l'intelligence artificielle n'est pas la plus approprié, cela n'a pas de conséquence pour le jeu vidéo d'escrime dans la mesure où certaines phases du jeu d'escrime comme la garde n'impliquent pas une réponse spécifique et où la décision d'effectuer un mouvement par l'intelligence artificielle comprend plusieurs instants et pas un seul.
Procédé d'identification d'un mouvement du joueur 12 par utilisation du filtrage Bayésien récursif quantifié Un troisième mode de réalisation du procédé d'identification est maintenant décrit en référence aux figures 6 et 7.
Ainsi qu'illustré par la figure 6, le procédé d'identification selon le troisième mode de réalisation comprend une étape 22 de choix d'un intervalle de temps de calcul. La mise en oeuvre de l'étape 22 de choix d'un intervalle de temps de calcul est identique à la mise en oeuvre décrite en référence au premier mode de réalisation. Les caractéristiques associées ne sont pas répétées ici mais s'appliquent également ici.
Optionnellement comme pour l'exemple particulier de la figure 6, le procédé d'identification selon le troisième mode de réalisation comporte une étape 24 de sélection d'un point de départ. La mise en oeuvre de l'étape 24 de sélection d'un point de départ est identique à la mise en oeuvre décrite en référence au premier mode de réalisation. Les caractéristiques associées ne sont pas répétées ici mais s'appliquent également ici. Le procédé d'identification selon le troisième mode de réalisation comporte aussi une étape 25 de sélection d'une fonction de probabilité initiale. La sélection de la fonction de probabilité initiale repose, selon les cas, sur une heuristique liée aux paramètres d'entrée choisis à l'étape 26 de traitement, sur un choix d'une fonction permettant de minimiser le temps de calcul ultérieur ou une combinaison des deux. La sélection de la fonction de probabilité initiale peut également reposer sur une connaissance du phénomène modélisé par le système 10. Par exemple, dans le cas de l'escrime, la position de garde est plus probable que les autres positions comme position initiale.. Typiquement, pour simplifier les calculs ultérieurs, la fonction de probabilité initiale est, selon un mode de réalisation préférée, une fonction gaussienne tronquée. Par exemple, dans le cas de l'escrime, on peut choisir une fonction gaussienne tronquée centrée sur l'état correspondant à la position de garde. Le procédé d'identification comporte aussi une étape 26 de traitement. L'étape 26 de traitement est détaillée dans la suite de la description en référence à l'ordinogramme de la figure 7. Dans le cas du troisième mode de réalisation, le procédé d'identification comprend également une étape 30 de détermination du ou des mouvements de référence représentatifs du mouvement du joueur 12. La mise en oeuvre de l'étape 30 de détermination du ou des mouvements de référence représentatifs du mouvement du joueur 12 est identique à la mise en oeuvre décrite en référence au premier mode de réalisation. Les caractéristiques associées ne sont pas répétées ici mais s'appliquent également ici. Selon l'exemple de la figure 7, l'étape 26 de traitement comporte une sous- étape 150 de fourniture, une sous-étape 152 d'obtention et une sous-étape 154 de calcul. Les sous-étapes 150 de fourniture et 152 d'obtention sont identiques aux sous-étapes 32 et 34 de fourniture et d'obtention décrites précédemment en référence à la figure 3. Plus précisément, cela signifie que toutes les remarques pour décrire les sous-étapes 32 et 34 de fourniture et d'obtention s'appliquent également pour les sous-étapes 150 de fourniture et 152 d'obtention. De ce fait, les sous-étapes 150 de fourniture et 152 d'obtention ne sont pas plus décrites dans ce qui suit. La sous-étape 154 de calcul vise à calculer un point par utilisation de la technique de filtrage Bayésien récursif quantifié. De manière connue pour l'homme du métier, la technique de filtrage Bayésien récursif est une approche générale probabiliste pour l'estimation d'une fonction inconnue de densité de probabilité récursive durant une période utilisant des mesures et un modèle mathématique. Dans le cas particulier où la fonction de prédiction d'un état à partir d'un état précédent est linéaire et où la distribution de probabilité est une distribution normale éventuellement à variable multiple, la technique est un filtre de Kalman. En dehors de ces conditions, selon une autre manière d'aborder cette approche, il est possible d'utiliser une méthode de Monte-Carlo pour modéliser la densité de probabilité par un ensemble de particules. Dans ce cas, la technique est appelée filtrage particulaire. Enfin, lorsque la densité de probabilité est représentée par une grille discrète, la technique de filtrage Bayésien récursif est qualifiée de technique de filtrage Bayésien récursif quantifié. C'est cette technique qui a été adaptée, selon les modalités décrites ci-après, pour le cadre d'un procédé de reconnaissance de mouvement humain. Ainsi, lors de la sous-étape 154 de calcul, il est calculé un point appartenant à une cinématique de référence.
Le point calculé rend extrémale une fonction dépendante de la fonction de probabilité conditionnelle a posteriori. Par l'expression « extrémale », il est entendu minimale ou maximale. De préférence, la fonction qui dépend de la fonction de probabilité conditionnelle a posteriori est la fonction identité. Selon d'autres modes de réalisation, la fonction est plus complexe. En effet, il peut être considéré le mouvement de référence le plus probable ou encore le mouvement de référence correspondant au point rendant maximal la fonction de probabilité conditionnelle a posteriori. La fonction de probabilité conditionnelle a posteriori est définie pour chaque point comme la probabilité que le point considéré fasse partie du mouvement à identifier sachant que l'ensemble des paramètres d'entrée ont été fournis depuis le début de l'acquisition. En outre, la fonction de probabilité conditionnelle a posteriori est calculée par mise en oeuvre d'un filtrage Bayésien récursif quantifié appliquées aux fonctions de probabilité conditionnelle a posteriori calculées aux itérations précédentes de l'étape de traitement et à la fonction de probabilité initiale. La quantification est relative aux cinématiques de référence. Il est à noter que, contrairement aux méthodes de filtrage Bayésien récursif quantifié selon l'état de la technique, la grille ne porte pas sur l'espace des paramètres d'entrée mais sur l'espace des cinématiques de référence. Autrement formulé, la grille proposée dans le cadre de l'invention quantifie l'espace des états alors que, dans les méthodes de filtrage Bayésien récursif quantifié selon l'art antérieur, la grille quantifie l'espace des observations. En toute rigueur, la grille proposée permet également de quantifier l'espace des observations mais cette quantification est parcimonieuse, les points ne faisant pas partie d'une cinématique de référence étant omis.
Le procédé d'identification selon le troisième mode de réalisation permet une identification du mouvement à la volée. Cela rend possible une interaction avec le joueur 12 dans le cas où l'interaction est plus complexe qu'un simple appui sur un bouton d'une manette correspondant à une expérience de jeu vidéo traditionnelle. Réaliser la reconnaissance à la volée permet également de détecter immédiatement les changements d'intention du joueur 12. Dans le cas de l'escrime, si le joueur 12 réalise initialement une « botte de seconde », l'intelligence artificielle de l'adversaire du joueur 12 réalise la parade appropriée (une « parade de seconde » ou une « parade d'octave »). Si alors le joueur 12, réalisant une feinte, change de ligne d'attaque pour faire une « botte de tierce », un tel changement de mouvement est immédiatement détecté, permettant à l'intelligence artificielle de passer du mouvement que l'intelligence artificielle réalisait (une « parade de seconde » par exemple), à une « parade de seconde haute », permettant ainsi à l'intelligence artificielle de parer la nouvelle attaque du joueur 12 avec le mouvement le plus approprié compte tenu, non seulement de l'attaque du joueur 12, mais également du précédent mouvement que l'intelligence artificielle commençait à réaliser.
Le procédé d'identification selon le troisième mode de réalisation permet aussi l'identification d'une partie de mouvement de référence et d'obtenir une information sur la localisation de la partie effectuée sur le mouvement de référence. Par exemple, il est possible de déterminer que la partie de mouvement identifiée correspond à ce qui est effectué entre le milieu du mouvement de référence et trois-quarts de la mise en oeuvre du mouvement de référence. Cela permet que l'intelligence artificielle contrôlant l'adversaire du joueur 12 réagisse au moment opportun. Une parade trop précoce du mouvement effectué par le joueur 12 est effectivement aisément contournée par une feinte. A l'inverse, une parade trop tardive du mouvement effectué par le joueur 12 ne protège que partiellement l'adversaire du joueur 12, voire pas du tout.
Le procédé d'identification selon le troisième mode de réalisation est applicable indépendamment du nombre de mouvements de référence. De ce fait, les défauts liés à un nombre de mouvements de référence trop faible sont évités. Par exemple, il est possible de simplifier au maximum, comme par exemple un coup par au-dessus ou vers la droite comme dans le cas d'un jeu sur la console Wii, auxquels s'ajoutent les deux parades correspondantes et la position de garde. Dans ce cas extrêmement simple, (2+2+1)2 = 25 mouvements différents sont pris en compte. Il est encore possible de négliger certains des mouvements, par exemple en n'autorisant que les mouvements vers ou depuis la garde. Il ne reste alors que 4x2 = 8 mouvements différents. En cas de passage d'une parade à une attaque ou inversement, cependant, les chances d'identification correcte du mouvement sont fortement diminuées. La méthode a été validée sur 60 cinématiques de référence différentes. Le procédé d'identification selon le troisième mode de réalisation permet de prendre en compte l'ensemble des paramètres acquis par le dispositif 16 à la même cadence que le dispositif 16 acquiert les paramètres. Typiquement, à titre d'illustration, le procédé d'identification selon le troisième mode de réalisation est capable de prendre en compte 60 paramètres de mouvement acquis toutes les 1 /30ème de seconde ou est capable de prendre en compte six paramètres de mouvement acquis tous les 1 /60ème de seconde. Le procédé d'identification selon le troisième mode de réalisation est également capable de détecter des changements de mouvements. Une telle capacité de détection est mise en oeuvre dans deux cas distincts : lors du passage d'un premier mouvement de référence fini à un deuxième mouvement débutant et lors du passage d'un premier mouvement de référence en cours à un autre mouvement de référence en cours. Le premier cas garantit une fluidité dans l'identification de mouvement, le joueur 12 passant naturellement d'un mouvement de référence terminé à un autre mouvement de référence, sans nécessité de pause entre deux mouvements successifs.. Le deuxième cas correspond à la réalisation de feintes, cas fréquent dans le domaine de l'escrime. Le procédé d'identification selon le troisième mode de réalisation permet une identification du mouvement en moins de trente secondes sur un seul thread ou fil (d'exécution) d'une console de jeu. Cela permet de réserver les autres threads ou fils (d'exécution) de la console de jeu au graphisme et au son. La mise en oeuvre du procédé d'identification selon le troisième mode de réalisation est donc transparente pour le joueur 12. Le procédé d'identification selon le troisième mode de réalisation permet aussi de détecter l'intention du joueur 12.
Le procédé d'identification selon le troisième mode de réalisation assure un raffinement de la compréhension du mouvement à identifier au fur et à mesure que le mouvement du joueur 12 se déroule. Plus le temps passe ou plus exactement, plus le joueur 12 progresse dans la réalisation de son mouvement et mieux l'intelligence artificielle est à même d'analyser correctement le mouvement du joueur 12. Ceci correspond exactement à une simulation de la réalité: un escrimeur détermine avec une certitude croissante le mouvement effectué par son ennemi à mesure que son ennemi le réalise.. Le procédé d'identification selon le troisième mode de réalisation est à même de segmenter automatiquement le mouvement sans aucune indication du début ou de la fin d'un mouvement. Le procédé d'identification selon le troisième mode de réalisation prend en compte le fait que certains paramètres caractéristiques du mouvement à identifier par le dispositif 16 soient plus ou moins valides. Cela permet de garantir une convergence du procédé d'identification selon le troisième mode de réalisation même lorsque certains paramètres caractéristiques fournis sont aberrants.
En outre, le procédé d'identification selon le troisième mode de réalisation permet de gérer les insuffisances du dispositif 16. Par exemple, en l'absence d'information sur l'orientation du poignet ou sur la position de la lame, le procédé d'identification permet quand même d'identifier des mouvements de référence en utilisant la position des articulations du corps du joueur 12. Selon un autre exemple, sans connaître la posture du corps, le procédé d'identification selon le troisième mode de réalisation est également capable de déterminer le mouvement effectué par le joueur 12 uniquement avec la position et l'orientation de la lame. Le procédé d'identification selon le troisième mode de réalisation présente également l'avantage d'être indépendant du temps. Ainsi, il importe peu que les mouvements du joueur 12 soient réalisés très rapidement, très lentement, rapidement au début et lentement à la fin ou inversement. Une telle variabilité de vitesse d'exécution n'a pas d'impact sur l'identification et par là, sur les possibilités de réaction de l'intelligence artificielle.
Le procédé d'identification selon le troisième mode de réalisation présente aussi l'avantage d'être indépendant de la morphologie du joueur 12. Les différences globales de taille ou de proportion relative notamment à la largeur d'épaule ou la longueur des bras du joueur 12 sont prises en compte. Le procédé d'identification selon le troisième mode de réalisation, notamment combiné avec le procédé selon le cinquième mode de réalisation, permet également d'obtenir un temps de calcul par trame temporelle sur un seul thread ou fil (d'exécution) inférieur à 1/30è" de seconde pour environ 1000 mouvements de référence différents dans la base de connaissance. Cela permet d'inclure à la suite, dans la même trame temporelle, une intelligence artificielle produisant une réponse par adversaire ou allié du personnage du joueur 12 à partir des informations de reconnaissance et des informations accessibles à l'intelligence artificielle. Le procédé d'identification selon le troisième mode de réalisation permet d'obtenir un taux d'identification meilleur que le taux de reconnaissance obtenu avec les procédés de l'état de technique. Typiquement, dans le cas de l'escrime, le taux d'identification d'un point de temps d'un mouvement est strictement supérieur à 85% Une telle précision n'est atteinte avec les procédés de l'état de la technique qu'à la fin du mouvement, avec l'information de tous les points de temps du mouvement. De plus, ce taux d'identification est obtenu pour 60 cinématiques de référence, contre une dizaine au maximum pour les procédés de l'état de la technique.
Le procédé d'identification selon le troisième mode de réalisation présente aussi l'avantage de garantir un taux d'identification maximum dans l'intervalle de temps durant lequel l'intelligence artificielle a une décision de réponse à prendre. Selon un mode de réalisation préféré, le procédé d'identification selon le troisième mode de réalisation permet de prédire les postures futures les plus probables du joueur 12 et/ou les positions de la lame du joueur 12. L'intelligence artificielle est alors propre à prendre des décisions prenant compte des postures et/ou positions prédites. Une décision consiste par exemple à déterminer l'action la plus opportune entre une attaque, une contre-attaque ou une parade. Selon des modes de fonctionnement plus évolués, la décision prend en compte un comportement particulier pour simuler un adversaire humain. Par exemple, pour simuler un être humain impatient, une contre-attaque sera privilégiée par rapport à une parade. Optionnellement, le procédé d'identification selon le troisième mode de réalisation est propre à fournir un indicateur de qualité du mouvement réalisé. Une telle information permet d'obtenir un indice de performance du mouvement réalisé par le joueur 12. Par exemple, il est ainsi déterminé la gravité de la blessure infligée en cas d'attaque non parée ou le déséquilibre de l'adversaire en cas de parade réussie avec une excellente qualité. L'indicateur de qualité du mouvement permet également d'apprendre au joueur 12 à réaliser correctement les mouvements de référence qui peuvent correspondre à une technique utilisée en dehors de tout cadre de reconnaissance. Par exemple, elle permet dans un jeu d'escrime d'améliorer sa technique d'escrime.. L'indicateur de qualité du mouvement permet également de faciliter l'identification de mouvements ultérieurs du même joueur 12. Avantageusement, le procédé d'identification comporte une étape de filtrage des mouvements du joueur 12. Cela permet, par exemple, de favoriser la visualisation ou d'éviter de prendre en compte les positions aberrantes de certaines articulations. Préférentiellement, le procédé d'identification selon le troisième mode de réalisation comporte une étape de reconstruction du ou des mouvements identifiés réalisés par le joueur 12. Cela permet de faciliter l'apprentissage de l'intelligence artificielle des spécificités du joueur 12, notamment les choix, les forces et erreurs passés. Selon un mode de réalisation préféré, l'intelligence artificielle est propre à fournir au joueur 12 des conseils pour améliorer sa pratique. Selon un autre mode de réalisation du procédé d'identification selon le troisième mode de réalisation, chaque itération de l'étape 26 de traitement comporte également une sous-étape de choix de l'intervalle de temps de calcul pour l'itération suivante de l'étape 26 de traitement.
Selon une variante, l'étape 26 de traitement ne comporte pas de sous-étape 102 d'obtention. Dans ce cas, les paramètres d'entrée sont les paramètres caractéristiques fournis. Selon encore un autre mode de réalisation, le filtrage Bayésien récursif quantifié mis en oeuvre à chaque itération de l'étape 26 de traitement est également appliqué aux points calculés aux itérations précédentes de l'étape 26 de traitement. Optionnellement, chaque itération de l'étape 26 de traitement comporte, en outre, une sous-étape de détection d'un changement de cinématique de référence si la cinématique de référence déterminée à la sous-étape de détermination est différente de la cinématique de référence déterminée à l'itération précédente de l'étape 26 de traitement. Selon une variante, chaque itération de l'étape 26 de traitement comprend une étape d'estimation d'au moins une probabilité de transition entre deux points appartenant chacun à une cinématique de référence. Dans une telle variante, le filtrage Bayésien récursif quantifié mis en oeuvre à chaque itération de l'étape 26 de traitement prend en compte la au moins une probabilité de transition estimée. Pour interdire des passages entre des parties de mouvements de références dont les mouvements de référence sont incompatibles entre eux, la probabilité de transition entre un point de premier mouvement de référence et un autre point du deuxième mouvement de référence est mise à une valeur nulle.
De même, lorsque l'incompatibilité porte sur les points eux-mêmes du fait de la continuité du mouvement du joueur 12 (le joueur 12 n'a par exemple pas la possibilité de passer directement d'une position proximale par rapport au dispositif 16 à une position distale sans passer par des positions intermédiaires), la probabilité de transition entre les deux points est fixée à une valeur nulle.
Dans le cas particulier de deux points appartenant à la même cinématique de référence, la probabilité de transition entre les deux points est fonction d'un paramètre de calcul dépendant du temps. Selon un autre mode de réalisation, la probabilité de transition entre les .deux points dépend des deux points et d'une estimation de la vitesse courante de déplacement du joueur 12. A titre d'exemple, la vitesse courante de déplacement du joueur 12 est calculée à partir des cinématiques de référence. La vitesse de déplacement du joueur 12 est préférentiellement la distance euclidienne entre deux points de temps successifs de mouvements de référence (les mouvements de référence qui ont servi à déterminer les cinématiques de référence).
Selon un autre exemple, la vitesse courante de déplacement du joueur 12 est calculée à partir du déplacement du mouvement à identifier, mesuré durant l'intervalle de temps choisi. La vitesse de déplacement du joueur 12 est préférentiellement la distance euclidienne entre deux points de temps successifs de mouvements de référence (les mouvements de référence qui ont servi à déterminer les cinématiques de référence). Selon un mode de réalisation avantageux, il est calculé la vraisemblance d'observation des paramètres d'entrée sachant la suite de points calculés. La valeur de la vraisemblance par rapport à l'état dont la probabilité a posteriori est la plus grande ou par rapport à l'état le plus probable permet d'effectuer un test sur la qualité du procédé.
Lorsque la valeur est trop faible, il est alors considéré que l'identification obtenue est non fiable. A contrario, lorsque la valeur de vraisemblance est supérieure ou égale à un seuil donné, il est alors considéré que l'identification obtenue du mouvement du joueur 12 est fiable. Selon un autre mode de réalisation, la réaction de l'intelligence artificielle aux mouvements du joueur 12 dépend du niveau de difficulté choisi par le joueur 12 de jeux vidéo pour l'exécution du jeu vidéo. Par généralisation, il sera compris que le procédé d'identification selon le troisième mode de réalisation est un cas particulier d'un procédé d'analyse d'un mouvement d'un être humain. En effet, le procédé proposé permet de déterminer toute information relative au mouvement à analyser. A titre d'exemple particulier, il peut être proposé un procédé de prédiction du mouvement à analyser, l'information étant relative à au moins un point suivant du mouvement. En variante, il est aussi proposé un procédé de filtrage du mouvement à analyser. En outre, dans le cas général, ce n'est pas un point qui est cherché mais, à l'étape de calcul, on calcule la probabilité conditionnelle pour chaque état puis on réalise un calcul utilisant lesdites probabilités conditionnelles a posteriori. Procédé d'identification d'un mouvement du joueur 12 par simplification d'un modèle de Markov caché Le procédé d'identification d'un mouvement du joueur 12 selon le quatrième mode de réalisation repose sur un procédé de traitement pour calculer une fonction relative à un premier événement, en l'occurrence le mouvement du joueur 12. Un ordinogramme d'un exemple de mise en oeuvre du procédé de traitement est illustré en référence à la figure 8.
L'ensemble des événements est représentable par un modèle de Markov caché initial. L'ensemble des événements correspond dans le contexte de l'invention aux différentes cinématiques de référence. Le modèle de Markov caché initial est caractérisé par des états, des observations, une matrice des probabilités de transition entre les états et des paramètres de probabilités d'observation représentés pour la suite à titre d'exemple, comme une matrice des probabilités d'occurrence d'une observation pour chaque état. Un vecteur est, dans ce contexte, une matrice. Dans le contexte de la reconnaissance de mouvement du joueur 12, les états sont les points des différentes cinématiques de référence. Le nombre d'états est noté P, P étant un entier strictement positif. Pour la reconnaissance du mouvement du joueur 12, les observations sont les paramètres d'entrée tels que précédemment définis en référence aux procédés d'identification selon le premier mode de réalisation, le deuxième mode de réalisation et le troisième mode de réalisation. Le nombre de paramètres est noté Q, Q étant un entier strictement positif. La matrice de probabilité de transition entre les états donne pour chaque état la probabilité d'effectuer une transition vers un autre état. Dans le cas général, la matrice de probabilité de transition entre les états dénommé simplement matrice de transition dans la suite est donc une matrice carrée ayant pour taille le nombre d'états au carré, soit P2. En outre, dans le cas le plus général, la matrice de transition est une matrice variant éventuellement au cours du temps et dépendant éventuellement de covariables, elles-mêmes dépendant possiblement du temps. La matrice de transition est notée (1) dans la suite.
La probabilité de transition entre deux états est, selon un mode de réalisation préférée, estimée. De nombreux modes de réalisations permettent l'estimation de la probabilité de transition entre deux états. A titre d'exemple, dans le cas d'un modèle de Markov caché gauche-droite, lorsqu'un état a déjà été atteint, interdire un retour vers l'état déjà atteint revient à imposer que la probabilité de transition entre l'état actuel et l'état déjà calculé est nulle. Similairement, pour interdire des passages entre des parties de mouvements de références dont les mouvements de référence sont incompatibles entre eux, la probabilité de transition entre un état d'un premier mouvement de référence et un autre état d'un deuxième mouvement de référence est mise à une valeur nulle.
De même, lorsque l'incompatibilité porte sur la proximité des positions liées aux états eux-mêmes du fait de la continuité du mouvement du joueur 12 (le joueur 12 n'a pas la possibilité de passer directement d'une position proximale par rapport au dispositif 16 à une position distale sans passer par des positions intermédiaires), la probabilité de transition entre les deux états est fixée à une valeur nulle. Dans le cas particulier de deux états appartenant à la même cinématique de référence, la probabilité de transition entre les deux états est fonction d'un paramètre de calcul dépendant du temps, par exemple d'une covariable. Le paramètre de calcul est, par exemple, la vitesse courante de déplacement du joueur 12. La matrice des probabilités d'occurrence d'une observation pour chaque état est dénommée matrice des observations dans la suite. La matrice des observations est, par définition, une matrice donnant pour chaque état la probabilité d'occurrence d'une observation, et ce pour chaque observation. Autrement formulé, la matrice des observations regroupe l'ensemble des probabilités conditionnelles d'occurrence d'une observation sachant que l'élément observé est dans un état donné, et ce pour chaque état. Cela implique que la matrice des observations est une matrice de P colonnes pour Q lignes. La matrice des observations est notée G dans la suite. Dans le cadre d'un modèle de Markov caché, chaque événement est caractérisé par une suite temporelle d'observations et une suite temporelle d'états. Pour le cas spécifique illustré, cela signifie que chaque mouvement du joueur 12 est une suite temporelle de points et une suite de paramètres d'entrée. Plus exactement, une suite temporelle d'observations (paramètres d'entrée) est accessible et de cette suite, il en est déduit une suite temporelle d'états (points) ce qui est la tâche du modèle de Markov caché. L'apprentissage du modèle de Markov caché, c'est-à-dire la détermination de la matrice des états et des variables d'observation devient impossible dès que la dimensionnalité du problème à traiter devient trop grande, c'est-à-dire qu'au moins l'un des entiers P ou Q est grand. Par exemple, un entier P est considéré comme grand s'il est supérieur à 20. Le procédé de traitement comporte une étape 200 de fourniture d'une première fonction de contrainte. La première fonction de contrainte est notée f. Le procédé de traitement comprend une étape 202 de définition d'une première matrice de calcul courante M - 1,courante telle que l'image de la première matrice de calcul courante M - 1,courante par la première fonction de contrainte f est la matrice des observations G. Mathématiquement' cela s'écrit dans une écriture matricielle comme : f (M1,courante) = G Dans ce contexte, par l'expression « image », il est aussi compris les cas où la première fonction de contrainte f est une fonction ne dépendant pas uniquement de la première matrice de calcul courante M -1 ,courante - Mathématiquement, cela s'écrit dans une écriture matricielle comme : f (G, U) = M1,courante où U est une première matrice intermédiaire, pouvant se réduire dans certains cas particulier à un scalaire. Selon une première condition, la première fonction de contrainte f est choisie pour que la taille de la première matrice de calcul courante M, 1,courante soit inférieure à la taille de la matrice des observations G. De préférence, la première matrice de calcul courante M, 1,courante est un vecteur.
Le procédé de traitement comprend une étape 204 de fourniture d'une deuxième fonction de contrainte notée g. Le procédé de traitement comporte une étape 206 de définition d'une deuxième matrice de calcul courante M2,courante 2,courante telle que l'image de la matrice de calcul courante M2,courante par la deuxième fonction de contrainte g est matrice des transitions (1) est.
Mathématiquement' cela s'écrit dans une écriture matricielle comme : g (M2,courante) - cl) Dans ce contexte, par l'expression « image », il est aussi compris les cas où la deuxième fonction de contrainte g est une fonction ne dépendant pas uniquement de la deuxième matrice de calcul courante M -2,courante - Mathématiquement, cela s'écrit dans une écriture matricielle comme : g (B, M2,courante) - cl) où B est une deuxième matrice intermédiaire, pouvant se réduire dans certains cas particulier à un scalaire. Selon une deuxième condition, la deuxième fonction de contrainte g est choisie pour que la taille de la deuxième matrice de calcul courante M2,courante 2,courante soit inférieure à la taille de la matrice des transitions O. Au moins l'une des deux fonctions de contrainte f et g est telle que la première condition ou la deuxième condition est vérifiée. Les deux fonctions f et g représentent une connaissance a priori sur les paramètres du problème sous forme préférentiellement de contraintes. Le but est de réduire le nombre de paramètres à estimer en introduisant des contraintes. A titre d'exemple, la probabilité d'observation est calculée comme la distance de Malahanobis aux cinématiques de référence. Cette connaissance a priori, par exemple pour l'escrime, peut être, sachant que les paramètres de probabilités d'observation sont les positions le long du mouvement moyen et les variances pour chaque groupe de paramètres : - pour la première fonction de contrainte f : la première matrice intermédiaire U est un paramètre scalaire permettant de se localiser sur la première fonction de contrainte f, qui est la fonction du mouvement moyen et de la variance associée. - pour la deuxième fonction de contrainte g : la deuxième fonction de contrainte g est un calcul à la volée de la matrice de transition en utilisant la vitesse (la covariable) pour déterminer la probabilité de transition entre deux états du même mouvement de référence. La deuxième matrice intermédiaire B est l'ensemble des paramètres scalaires permettant le calcul de la probabilité de transition. Par exemple, la deuxième matrice intermédiaire B comprend la variance de l'erreur attendue sur la vitesse, la variance de l'erreur sur la transition entre la fin d'un mouvement et le début d'un autre, le moment où l'on considère qu'un mouvement est potentiellement fini, la probabilité a priori de changement de mouvement de référence, la variance de l'erreur sur la position correspondant en cas de changement de mouvement à la position déterminée lors de la mise en correspondance de mouvements moyens et la probabilité en deçà de laquelle on estime qu'une probabilité est nulle. Selon un mode de réalisation, l'une des deux fonctions de contrainte f et g est une fonction identité.
Le procédé de traitement comprend une étape 208 de fourniture de la suite temporelle d'états notée X2 et de la suite temporelle d'observations notée Y2 pour un deuxième événement. De préférence, le deuxième événement est choisi comme étant un joueur 12 effectuant un mouvement de référence.
Le procédé de traitement comporte alors une étape 210 d'optimisation pour obtenir une première matrice de calcul optimale M, toptimale et une deuxième matrice de calcul optimale M - 2,optimale- L'étape 210 d'optimisation est mise en oeuvre par minimisation d'une fonction d'optimisation notée x. La fonction d'optimisation x a comme variables d'entrées la première matrice de calcul courante M - 1,courante et la deuxième matrice de calcul courante M2,courante- De plus, la fonction d'optimisation x dépend au moins de la suite temporelle d'observations Y2 fournies pour le deuxième événement. La fonction d'optimisation x dépend aussi du nombre d'états. Selon un mode de réalisation particulier, la fonction d'optimisation x dépend également de la suite temporelle d'états X2.
A titre d'exemple, la fonction d'optimisation x est une fonction de vraisemblance. Dans ce cas, la fonction d'optimisation x peut s'écrire comme une fonction à trois variables de la matrice de transitions (1), de la matrice des observations G et de la suite temporelle d'observations Y2.
Il est possible de montrer que la fonction d'optimisation x présente au moins un extrémum qu'une méthode de minimisation permet d'approcher. Alternativement, il peut s'agir d'une méthode de maximisation (par exemple, pour le cas de la vraisemblance). A titre d'exemple, la méthode de minimisation est une descente de gradient (respectivement montée de gradient pour une méthode de maximisation). De préférence, la descente de gradient est mise en oeuvre par une méthode par apprentissage. Selon un autre mode de réalisation, la méthode de minimisation est une méthode de type EM, par exemple une méthode de Baum-Welch.
Le procédé de traitement comporte aussi une étape 212 de calcul de la fonction relative au premier événement à partir de la première matrice de calcul optimale M -1,optimale et la deuxième matrice de calcul optimale M -2,optimale- Appliqué au cas de l'identification de mouvement, le procédé selon le quatrième mode de réalisation comprend les différentes étapes du procédé de traitement et l'étape 212 est une étape de détermination du mouvement. Du fait de la réduction de la dimensionnalité du modèle de Markov caché initial, l'étape 212 de calcul devient une étape plus rapidement convergente. Cela est notamment dû au fait que contrairement à la matrice de transition (1) et à la matrice des observations G du modèle de Markov initial, la première matrice de calcul optimale M, optimale et la deuxième matrice de calcul optimale M -2,optimale ne sont pas dépendantes du temps. Ceci simplifie beaucoup la complexité calculatoire du problème à traiter. Le procédé d'identification selon le quatrième mode de réalisation permet une identification du mouvement à la volée. Cela rend possible une interaction avec le joueur 12 dans le cas où l'interaction est plus complexe qu'un simple appui sur un bouton d'une manette correspondant à une expérience de jeu vidéo traditionnelle. Réaliser la reconnaissance à la volée permet également de détecter immédiatement les changements d'intention du joueur 12. Dans le cas de l'escrime, si le joueur 12 réalise initialement une « botte de seconde », l'intelligence artificielle de l'adversaire du joueur 12 réalise la parade appropriée (une « parade de seconde » ou une « parade d'octave »). Si alors le joueur 12, réalisant une feinte, change de ligne d'attaque pour faire une « botte de tierce », un tel changement de mouvement est immédiatement détecté, permettant à l'intelligence artificielle de passer du mouvement que l'intelligence artificielle réalisait (une « parade de seconde » par exemple), à une « parade de seconde haute », permettant ainsi à l'intelligence artificielle de parer la nouvelle attaque du joueur 12 avec le mouvement le plus approprié compte tenu, non seulement de l'attaque du joueur 12, mais également du précédent mouvement que l'intelligence artificielle commençait à réaliser. Le procédé d'identification selon le quatrième mode de réalisation de réalisation permet aussi l'identification d'une partie de mouvement de référence et d'obtenir une information sur la localisation de la partie effectuée sur le mouvement de référence. Par exemple, il est possible de déterminer que la partie de mouvement identifiée correspond à ce qui est effectué entre le milieu du mouvement de référence et trois-quarts de la mise en oeuvre du mouvement de référence. Cela permet que l'intelligence artificielle contrôlant l'adversaire du joueur 12 réagisse au moment opportun. Une parade trop précoce du mouvement effectué par le joueur 12 est effectivement aisément contournée par une feinte. A l'inverse, une parade trop tardive du mouvement effectué par le joueur 12 ne protège que partiellement l'adversaire du joueur 12, voire pas du tout. Le procédé d'identification selon le quatrième mode de réalisation est applicable indépendamment du nombre de mouvements de référence. De ce fait, les défauts liés à un nombre de mouvements de référence trop faible sont évités. Par exemple, il est possible de simplifier au maximum, comme par exemple un coup par au-dessus ou vers la droite comme dans le cas d'un jeu sur la console Wii, auxquels s'ajoutent les deux parades correspondantes et la position de garde. Dans ce cas extrêmement simple, (2+2+1)2 = 25 mouvements différents sont pris en compte. Il est encore possible de négliger certains des mouvements, par exemple en n'autorisant que les mouvements vers ou depuis la garde. Il ne reste alors que 4x2 = 8 mouvements différents. En cas de passage d'une parade à une attaque ou inversement, cependant, les chances d'identification correcte du mouvement sont fortement diminuées. La méthode a été validée sur 60 cinématiques de référence différentes. Le procédé d'identification selon le quatrième mode de réalisation permet de prendre en compte l'ensemble des paramètres acquis par le dispositif 16 à la même cadence que le dispositif 16 acquiert les paramètres. Typiquement, à titre d'illustration, le procédé d'identification selon le quatrième mode de réalisation est capable de prendre en compte 60 paramètres de mouvement acquis toutes les 1 /30ème de seconde ou est capable de prendre en compte 6 paramètres de mouvement acquis tous les 1 /60ème de seconde.
Le procédé d'identification selon le quatrième mode de réalisation est également capable de détecter des changements de mouvements. Une telle capacité de détection est mise en oeuvre dans deux cas distincts : lors du passage d'un premier mouvement de référence fini à un deuxième mouvement débutant et lors du passage d'un premier mouvement de référence en cours à un autre mouvement de référence en cours. Le premier cas garantit une fluidité dans l'identification de mouvement, le joueur 12 passant naturellement d'un mouvement de référence terminé à un autre mouvement de référence, sans nécessité de pause entre deux mouvements successifs.. Le deuxième cas correspond à la réalisation de feintes, cas fréquent dans le domaine de l'escrime.
Le procédé d'identification selon le quatrième mode de réalisation permet une identification du mouvement en moins de trente secondes sur un seul thread ou fil (d'exécution) d'une console de jeu. Cela permet de réserver les autres threads ou fils (d'exécution) de la console de jeu au graphisme et au son. La mise en oeuvre du procédé d'identification est donc transparente pour le joueur 12.
Le procédé d'identification selon le quatrième mode de réalisation permet aussi de détecter l'intention du joueur 12. Le procédé d'identification selon le quatrième mode de réalisation assure un raffinement de la compréhension du mouvement à identifier au fur et à mesure que le mouvement du joueur 12 se déroule. Plus le temps passe ou plus exactement, plus le joueur 12 progresse dans la réalisation de son mouvement et mieux l'intelligence artificielle est à même d'analyser correctement le mouvement du joueur 12. Ceci correspond exactement à une simulation de la réalité: un escrimeur détermine avec une certitude croissante le mouvement effectué par son ennemi à mesure que son ennemi le réalise.
Le procédé d'identification selon le quatrième mode de réalisation est à même de segmenter automatiquement le mouvement sans aucune indication du début ou de la fin d'un mouvement. Le procédé d'identification selon le quatrième mode de réalisation prend en compte le fait que certains paramètres caractéristiques du mouvement à identifier par le dispositif 16 soient plus ou moins valides. Cela permet de garantir une convergence du procédé d'identification selon le quatrième mode de réalisation même lorsque certains paramètres caractéristiques fournis sont aberrants. En outre, le procédé d'identification selon le quatrième mode de réalisation permet de gérer les insuffisances du dispositif 16. Par exemple, en l'absence d'information sur l'orientation du poignet ou sur la position de la lame, le procédé d'identification selon le quatrième mode de réalisation permet quand même d'identifier des mouvements de référence en utilisant la position des articulations du corps du joueur 12. Selon un autre exemple, sans connaître la posture du corps, le procédé d'identification selon le quatrième mode de réalisation est également capable de déterminer le mouvement de référence effectué par le joueur 12 uniquement avec la position et l'orientation de la lame. Le procédé d'identification selon le quatrième mode de réalisation présente également l'avantage d'être indépendant du temps. Ainsi, il importe peu que les mouvements du joueur 12 soient réalisés très rapidement, très lentement, rapidement au début et lentement à la fin ou inversement. Une telle variabilité de vitesse d'exécution n'a pas d'impact sur l'identification et par là, sur les possibilités de réaction de l'intelligence artificielle. Le procédé d'identification selon le quatrième mode de réalisation présente aussi l'avantage d'être indépendant de la morphologie du joueur 12. Les différences globales de taille ou de proportion relative notamment à la largeur d'épaule ou la longueur des bras du joueur 12 sont prises en compte. Le procédé d'identification selon le quatrième mode de réalisation, notamment combiné avec le procédé selon le cinquième mode de réalisation, permet également d'obtenir un temps de calcul par trame temporelle sur un seul thread ou fil (d'exécution) inférieur à 1/30è" de seconde pour environ 1000 mouvements de référence différents dans la base de connaissance. Cela permet d'inclure à la suite, dans la même trame temporelle, une intelligence artificielle produisant une réponse par adversaire ou allié du personnage du joueur 12 à partir des informations de reconnaissance et des informations accessibles à l'intelligence artificielle. Le procédé d'identification selon le quatrième mode de réalisation permet d'obtenir un taux d'identification meilleur que le taux de reconnaissance obtenu avec les procédés d'identification de l'état de technique. Typiquement, dans le cas de l'escrime, le taux d'identification d'un point de temps d'un mouvement est strictement supérieur à 85% Une telle précision n'est atteinte avec les procédés de l'état de la technique qu'à la fin du mouvement, avec l'information de tous les points de temps du mouvement. De plus, ce taux d'identification est obtenu pour 60 cinématiques de référence, contre une dizaine au maximum pour les procédés de l'état de la technique. Le procédé d'identification selon le quatrième mode de réalisation présente aussi l'avantage de garantir un taux d'identification maximum dans l'intervalle de temps durant lequel l'intelligence artificielle a une décision de réponse à prendre.
Selon un mode de réalisation préféré, le procédé d'identification selon le quatrième mode de réalisation permet de prédire les postures futures les plus probables du joueur 12 et/ou les positions de la lame du joueur 12. L'intelligence artificielle est alors propre à prendre des décisions prenant compte des postures et/ou des positions prédites. Une décision consiste par exemple à déterminer l'action la plus opportune entre une attaque, une contre-attaque ou une parade. Selon des modes de fonctionnement plus évolués, la décision prend en compte un comportement particulier pour simuler un adversaire humain. Par exemple, pour simuler un être humain impatient, une contre-attaque sera privilégiée par rapport à une parade. Optionnellement, le procédé d'identification selon le quatrième mode de réalisation est propre à fournir un indicateur de qualité du mouvement réalisé. Une telle information permet d'obtenir un indice de performance du mouvement réalisé par le joueur 12. Par exemple, il est ainsi déterminé la gravité de la blessure infligée en cas d'attaque non parée ou le déséquilibre de l'adversaire en cas de parade réussie avec une excellente qualité. L'indicateur de qualité du mouvement permet également d'apprendre au joueur 12 à réaliser correctement les mouvements de référence qui peuvent correspondre à une technique utilisée en dehors de tout cadre de re connaissance. Par exemple, elle permet dans un jeu d'escrime d'améliorer sa technique d'escrime. L'indicateur de qualité du mouvement permet également de faciliter l'identification de mouvements ultérieurs du même joueur 12. Avantageusement, le procédé d'identification selon le quatrième mode de réalisation comporte une étape de filtrage des mouvements du joueur 12. Cela permet, par exemple, de favoriser la visualisation ou d'éviter de prendre en compte les positions aberrantes de certaines articulations. Préférentiellement, le procédé d'identification selon le quatrième mode de réalisation comporte une étape de reconstruction du ou des mouvements identifiés réalisés par le joueur 12. Cela permet de faciliter l'apprentissage de l'intelligence artificielle des spécificités du joueur 12, notamment les choix, les forces et erreurs passés. Selon un mode de réalisation préféré, l'intelligence artificielle est propre à fournir au joueur 12 des conseils pour améliorer sa pratique. En variante, le modèle de Markov caché est un modèle de Markov de type gauche-droite. Selon un mode de réalisation, au moins l'une des deux fonctions de contrainte f, g dépend également d'une troisième matrice Z dépendante du temps. Selon les cas, la troisième matrice Z est une fonction des observations. Par exemple, la valeur de la troisième matrice Z à l'instant t est égale à la valeur des Q observations à l'instant t à laquelle est soustraite la valeur des Q observations à l'instant t-1. Dans certains cas, il est à noter que du fait de l'invalidité de certains paramètres, au lieu d'une opération de soustraction, la distance euclidienne entre la valeur des Q observations à l'instant t et soustraite la valeur des Q observations à l'instant t-1 est considérée. La troisième matrice Z est un moyen d'éliminer la composante temporelle de la matrices de transitions (1), de la matrice des observations G pour que les matrices de calcul optimales M -1 ,optirnale et M2,optimale ne dépendent pas du temps. Selon un autre mode de réalisation, la deuxième fonction de contrainte g dépend de plusieurs variables. Notamment, selon un cas particulier, la deuxième fonction de contrainte g à un instant t dépend des matrices de transitions (1) aux instants antérieurs, de la matrice des observations G aux instants antérieurs et de la deuxième matrice de calcul courante M -2,courante - Selon un autre cas particulier, la deuxième fonction de contrainte g à un instant t dépend des matrices de transitions (1) aux instants antérieurs, de la matrice des observations G aux instants antérieurs, de la deuxième matrice de calcul courante M -2,courante et de la troisième matrice Z.
Selon encore un autre mode de réalisation, la fonction d'optimisation est un ensemble de deux fonctions, l'une optimisant uniquement la première matrice courante Mi ,courante et l'autre optimisant uniquement la deuxième matrice courante M -2,courante - Selon un autre mode de réalisation, le procédé de traitement est appliqué à de la reconnaissance vocale.
De manière générale, tout type de calcul de fonction ou de tâche est envisageable à l'étape 212 de calcul. En particulier, un calcul d'inférence, de filtrage, de lissage ou d'explication la plus probable est possible. Les méthodes de calcul associées sont des méthodes de l'état de la technique appliquée à la première matrice de calcul optimale M1 ,optimale et la deuxième matrice de calcul optimale M -2,optirnale- Le procédé de traitement est donc une méthode permettant d'améliorer tous les procédé impliquant un modèle de Markov caché, surtout quand le modèle de Markov caché présente une dimensionnalité importante, voire rédhibitoire pour une mise en oeuvre calculatoire.
Procédé d'identification d'un mouvement du joueur 12 par réduction du nombre de transitions possibles Selon un cinquième mode de réalisation illustré par la figure 9, le procédé d'identification comporte une étape 280 d'identification du mouvement le plus représentatif du mouvement à identifier.
Le mouvement le plus représentatif est une succession d'un premier nombre de parties de mouvements de référence. La succession n'a de sens que pour un sens de parcours, sens de parcours qui est usuellement choisi comme l'avancement du mouvement. C'est ce que nous considèrerons dans la suite de la description, sachant que d'autres sens seraient envisageables. Il est entendu par le terme « succession » que chaque partie est encadrée par au moins une partie distincte du même mouvement de référence ou d'une partie d'un autre mouvement de référence. Autrement formulé, la succession est partitionnée en partie maximale pour chaque mouvement de référence. Une partie maximale est une partie ne pouvant pas être étendue. Dans ce contexte, cela signifie que pour un point de temps situé avant ou après, il y a un changement de mouvement de référence. Par le terme « le plus représentatif », il est entendu que le mouvement le plus représentatif rend extrémale, en particulier maximise, une fonction de score. Selon les cas, la fonction de score est un score de similarité, une énergie ou des fonctions de probabilités. Des exemples de définition de score de similarité, d'énergie ou de fonctions de probabilités sont illustrés par les procédés d'identification précédemment décrits. Le premier nombre est un nombre entier supérieur ou égal à 1. Usuellement, le premier nombre est un nombre entier inférieur ou égal à 3 pour un unique mouvement acquis, et donc à 3 divisé par le nombre moyen de points de temps par mouvement de référence. Selon un mode de réalisation préféré, l'étape 280 d'identification est mise en oeuvre par mise en oeuvre d'un procédé d'identification selon le premier mode de réalisation.
En variante, l'étape 280 d'identification est mise en oeuvre par mise en oeuvre d'un procédé d'identification selon le second mode de réalisation. Selon une autre variante, l'étape 280 d'identification est mise en oeuvre par mise en oeuvre d'un procédé d'identification selon le troisième mode de réalisation. En variante, l'étape 280 d'identification est mise en oeuvre par mise en oeuvre d'un procédé d'identification selon le quatrième mode de réalisation. Le procédé d'identification selon le cinquième mode de réalisation comporte également une étape 290 de réduction du nombre de transitions possibles entre deux cinématiques de mouvements de référence par utilisation d'au moins une règle de pénalisation de l'introduction d'une partie supplémentaire de mouvement de référence lors de la mise en oeuvre de l'étape 280 d'identification.
Autrement formulé, l'étape 290 de réduction est une étape de réduction de la valeur du premier nombre par utilisation d'au moins une règle de pénalisation, chaque règle de pénalisation pénalisant la transition entre au moins deux cinématiques de mouvements de référence dans le mouvement le plus représentatif. Cela est représenté schématiquement sur la figure 9 par le fait que le rectangle désigné par le signe de référence 290 et comprenant le mot « réduction » est inclus dans le rectangle désigné par le signe de référence 280 et comprenant le mot « identification ». De multiples règles de pénalisation sont envisageables. Chaque règle permet de réduire la complexité calculatoire de l'étape 280 d'identification. Toute combinaison des règles présentées ci-après est envisageable. Selon une première règle de pénalisation, l'introduction d'une partie supplémentaire de mouvement de référence lors de l'étape 280 d'identification est pénalisée si l'état de départ de la partie supplémentaire de mouvement de référence est différent de l'état de départ et de l'état d'arrivée de la partie précédemment calculée.
Autrement formulé, la première règle de pénalisation pénalise la transition entre deux parties de cinématiques de référence distinctes présentant un état d'arrivée et/ou un état de départ différents. Selon une deuxième règle de pénalisation, l'introduction d'une partie supplémentaire de mouvement de référence lors de l'étape 280 d'identification est pénalisée si la fonction score utilisée à l'étape 280 d'identification est diminuée par l'introduction de la partie supplémentaire de mouvement de référence. Autrement formulé, la deuxième règle de pénalisation pénalise la transition vers une partie additionnelle de cinématique de référence diminuant la fonction score associée à l'identification des autres parties de cinématique de référence déjà identifiées.
Selon une troisième règle de pénalisation, l'introduction d'une partie supplémentaire de mouvement de référence lors de l'étape 280 d'identification est pénalisée si la transition entre la partie supplémentaire de mouvement de référence et une partie précédemment calculée ne vérifie pas un premier critère. Pour le premier critère, il est défini une distance entre la partie supplémentaire de mouvement de référence et la partie précédemment calculée comme la distance spatiale entre la partie précédemment calculée et la partie supplémentaire de mouvement de référence. Le premier critère est de choisir la distance minimale entre une partie supplémentaire de mouvement de référence et la partie précédemment calculée.
Autrement formulé, la troisième règle de pénalisation pénalise la présence d'une partie additionnelle de cinématique de référence ne présentant pas une distance minimale avec le morceau de la succession précédemment calculé. Selon une quatrième règle de pénalisation, l'introduction d'une partie supplémentaire de mouvement de référence lors de l'étape 280 d'identification est pénalisée si la transition entre la partie supplémentaire de mouvement de référence et une partie précédemment calculée ne vérifie pas un deuxième critère. Il est à noter que la quatrième règle de pénalisation s'applique essentiellement pour le même mouvement de référence.
Pour l'application d'une telle règle de pénalisation, le procédé d'identification selon le cinquième mode de réalisation comporte une mesure de la distance effectivement parcourue par le joueur 12. Le deuxième critère est de minimiser l'écart entre la distance mesurée et la distance correspondant au mouvement identifiée par introduction de la partie supplémentaire de mouvement de référence. Plus précisément, est minimisé l'écart entre la distance mesurée et celle parcourue par le modèle cinématique entre l'étape précédente du mouvement du joueur 12 et l'étape actuelle. Autrement formulé, la quatrième règle de pénalisation pénalise la présence d'une partie additionnelle de cinématique de référence ne minimisant pas l'écart entre la distance mesurée et la distance correspondant au mouvement le plus représentatif. Selon une cinquième règle de pénalisation, l'introduction d'une partie supplémentaire d'un même mouvement de référence augmentant le premier nombre ou le faisant passer au-dessus d'un seuil est pénalisée. La cinquième règle de pénalisation correspond à une expression du fait que sur un même mouvement de référence, il est soit possible de stagner ou d'avancer mais pas de reculer. Autrement formulé, la cinquième règle de pénalisation pénalise la présence de deux parties d'un même mouvement de référence ne respectant pas un ordre prédéfini. De préférence, l'ordre prédéfini est un ordre croissant. L'ordre croissant est compris par rapport à un sens d'avancement croissant sur le mouvement du joueur 12. Pour la suite, il est supposé qu'une fonction de pénalisation de l'introduction d'une partie supplémentaire de mouvement de référence est introduite à l'étape 290 de réduction. Selon une sixième règle de pénalisation, la fonction de pénalisation n'est pas constante et ne résulte pas d'un éventuel mécanisme d'apprentissage mise en oeuvre lors de l'étape 280 d'identification.
Selon une septième règle de pénalisation, la fonction de pénalisation dépend de l'état de départ de la partie supplémentaire de mouvement de référence et/ou de l'état de départ et/ou de l'état d'arrivée de la partie précédemment calculée. Selon une huitième règle de pénalisation, la fonction de pénalisation dépend de la fonction score utilisée à l'étape 280 d'identification et calculée à l'itération précédente. Selon une neuvième règle de pénalisation, la fonction de pénalisation dépend de l'égalité entre l'état de départ de la partie supplémentaire de mouvement de référence et l'état de départ de la partie de mouvement de référence précédemment calculée. Selon une dixième règle de pénalisation, la fonction de pénalisation dépend de l'égalité entre l'état de départ de la partie supplémentaire de mouvement de référence et l'état d'arrivée de la partie de mouvement de référence précédemment calculée. Selon une onzième règle de pénalisation, la fonction de pénalisation dépend de l'égalité entre l'état d'arrivée de la partie supplémentaire de mouvement de référence et l'état d'arrivée de la partie de mouvement de référence précédemment calculée.
Selon une douzième règle de pénalisation, la fonction de pénalisation dépend de l'égalité entre l'état d'arrivée de la partie supplémentaire de mouvement de référence et l'état de départ de la partie de mouvement de référence précédemment calculée. Selon une treizième règle de pénalisation, la fonction de pénalisation dépend du nombre d'états communs entre deux mouvements de référence considérés.
De préférence, chaque règle de pénalisation est binaire. Cela signifie que, pour chaque règle de pénalisation, les transitions pénalisées sont totalement exclues alors que les autres transitions sont permises. Ainsi, une transition visée par la règle de pénalisation binaire est interdite puisqu'associée à un « 0 » alors qu'une transition non visée par la règle de pénalisation binaire est permise puisqu'associée à un « 1 ».
Selon un mode de réalisation préféré, l'étape d'identification est itérative et chaque partie de cinématique de référence présente un état de départ et un état d'arrivée et, à l'étape de réduction, une règle de pénalisation utilisée associe à une transition depuis une partie de cinématique de référence identifiée à une itération précédente de l'étape d'identification vers une partie additionnelle de cinématique de référence une pénalisation lorsque l'état de départ de la partie additionnelle est distinct de l'état de l'état de départ de la partie de cinématique de référence identifiée et de l'état final de la partie de cinématique de référence identifiée. Selon un mode de réalisation préféré, l'étape d'identification comporte une étape itérative de traitement comprenant le calcul d'une fonction de score associée à l'identification d'une partie de cinématique de référence pour une partie du mouvement à identifier et, à l'étape de réduction, une règle de pénalisation utilisée associe à une transition depuis une partie de cinématique de référence et/ou vers une partie additionnelle de cinématique de référence une pénalisation dépendant des fonctions de scores associées lors des itérations précédentes auxdites parties de cinématiques de référence.
Selon un autre mode de réalisation préféré, chaque partie de chaque cinématique de référence est associée avec une ou plusieurs parties d'autres cinématiques de référence par une association assortie d'un coût et dans lequel une règle de pénalisation utilisée interdit les transitions entre parties de cinématiques de référence non associées et pénalise les transitions entre deux parties de cinématiques de référence associées de la valeur du coût assortie à l'association des deux parties de cinématiques de référence considérées. Selon encore un autre mode de réalisation, l'étape d'identification est itérative et dans lequel le procédé comporte une étape de mesure de la distance effectivement parcourue par l'être humain, pour obtenir une distance mesurée, et, à l'étape de réduction, une règle de pénalisation utilisée pénalise la transition depuis une partie de cinématique de référence identifiée à une itération précédente de l'étape d'identification vers une partie additionnelle de cinématique de référence d'une valeur dépendante de l'écart entre la distance mesurée et la distance parcourue depuis la partie de cinématique de référence identifiée à une itération précédente de l'étape d'identification vers la partie additionnelle de cinématique de référence. Il est possible de montrer l'efficacité des règles de pénalisation en considérant l'exemple d'un cas simplifié d'escrime au sable. Pour un tel exemple, il est considéré qu'il existe 4 gardes (gardes de prime, de seconde, de tierce et de quarte), 14 attaques (coups de prime, de seconde à la jambe ou à la joue, de tierce à la joue, à la gorge, au côté ou à la jambe, de quarte à la joue, à la gorge, au côté ou à la jambe, de quinte à la tête, de septime à la jambe ou à la joue) et 16 parades (de prime, prime basse et prime haute, de seconde et de seconde haute, de tierce, tierce basse et tierce haute, de quarte, quarte basse, quarte haute et quarte horizontale, de quinte, de sixte, de septime, d'octave). Il est défini pour l'exemple trois manières d'effectuer un mouvement de référence : direct, exagéré ou circulaire. Comme 34 mouvements existent (4 gardes, 14 attaques et 16 parades) et en supposant que chaque mouvement de référence comprend 30 points de temps représentant l'évolution des paramètres, le nombre total de transitions est égal à: (3*30*34)2 = 9 363 600 transitions.
En appliquant le procédé d'identification selon le cinquième mode de réalisation et la première règle de pénalisation, le nombre total de transitions est réduit à : 2 x 34 x (3x30)2 = 550 800 transitions. En appliquant le procédé d'identification selon le cinquième mode de réalisation et la combinaison de la première règle de pénalisation et de la huitième règle de pénalisation, le nombre total de transitions est réduit à : 2 x 34 x 3x30 = 6120 transitions. En appliquant le procédé d'identification selon le cinquième mode de réalisation et la combinaison de la première règle de pénalisation, de la deuxième règle de pénalisation et de la troisième règle de pénalisation, le nombre total de transitions est réduit à : 2 x 34 x 3 = 204 transitions.
Un tel nombre de transitions est suffisamment réduit pour permette une identification du mouvement du joueur 12 à la volée. Cela rend possible une interaction avec le joueur 12 dans le cas où l'interaction est plus complexe qu'un simple appui sur un bouton d'une manette correspondant à une expérience de jeu vidéo traditionnelle. Réaliser la reconnaissance à la volée permet également de détecter immédiatement les changements d'intention du joueur 12. Dans le cas de l'escrime, si le joueur 12 réalise initialement une « botte de seconde », l'intelligence artificielle de l'adversaire du joueur 12 réalise la parade appropriée (une « parade de seconde » ou une « parade d'octave »). Si alors le joueur 12, réalisant une feinte, change de ligne d'attaque pour faire une « botte de tierce », un tel changement de mouvement est immédiatement détecté, permettant à l'intelligence artificielle de passer du mouvement que l'intelligence artificielle réalisait (une « parade de seconde » par exemple), à une « parade de seconde haute », permettant ainsi à l'intelligence artificielle de parer la nouvelle attaque du joueur 12 avec le mouvement le plus approprié compte tenu, non seulement de l'attaque du joueur 12, mais également du précédent mouvement que l'intelligence artificielle commençait à réaliser. Le procédé d'identification selon le cinquième mode de réalisation permet aussi l'identification d'une partie de mouvement de référence et d'obtenir une information sur la localisation de la partie effectuée sur le mouvement de référence. Par exemple, il est possible de déterminer que la partie de mouvement identifiée correspond à ce qui est effectué entre le milieu du mouvement de référence et trois-quarts de la mise en oeuvre du mouvement de référence. Cela permet que l'intelligence artificielle contrôlant l'adversaire du joueur 12 réagisse au moment opportun. Une parade trop précoce du mouvement effectué par le joueur 12 est effectivement aisément contournée par une feinte. A l'inverse, une parade trop tardive du mouvement effectué par le joueur 12 ne protège que partiellement l'adversaire du joueur 12, voire pas du tout.
Le procédé d'identification selon le cinquième mode de réalisation est applicable indépendamment du nombre de mouvements de référence. De ce fait, les défauts liés à un nombre de mouvements de référence trop faible sont évités. Par exemple, il est possible de simplifier au maximum, comme par exemple un coup par au-dessus ou vers la droite comme dans le cas d'un jeu sur la console Wii, auxquels s'ajoutent les deux parades correspondantes et la position de garde. Dans ce cas extrêmement simple, (2+2+1)2 = 25 mouvements différents sont pris en compte. Il est encore possible de négliger certains des mouvements, par exemple en n'autorisant que les mouvements vers ou depuis la garde. Il ne reste alors que 4x2 = 8 mouvements différents. En cas de passage d'une parade à une attaque ou inversement, cependant, les chances d'identification correcte du mouvement sont fortement diminuées. Le procédé d'identification selon le cinquième mode de réalisation permet de prendre en compte l'ensemble des paramètres acquis par le dispositif 16 à la même cadence que le dispositif 16 acquiert les paramètres. Typiquement, à titre d'illustration, le procédé d'identification selon le cinquième mode de réalisation est capable de prendre en compte 60 paramètres de mouvement acquis toutes les 1 /30ème de seconde ou est capable de prendre en compte six paramètres de mouvement acquis tous les 1/60ème de seconde. Le procédé d'identification selon le cinquième mode de réalisation est également capable de détecter des changements de mouvements. Une telle capacité de détection est mise en oeuvre dans deux cas distincts : lors du passage d'un premier mouvement de référence fini à un deuxième mouvement débutant et lors du passage d'un premier mouvement de référence en cours à un autre mouvement de référence en cours. Le premier cas garantit une fluidité dans l'identification de mouvement, le joueur 12 passant naturellement d'un mouvement de référence terminé à un autre mouvement de référence. Le deuxième cas correspond à la réalisation de feintes, cas fréquent dans le domaine de l'escrime. Le procédé d'identification selon le cinquième mode de réalisation permet une identification du mouvement en moins de trente secondes sur un seul thread ou fil (d'exécution) d'une console de jeu. Cela permet de réserver les autres threads ou fils (d'exécution) de la console de jeu au graphisme et au son. La mise en oeuvre du procédé d'identification selon le cinquième mode de réalisation est donc transparente pour le joueur 12. Le procédé d'identification selon le cinquième mode de réalisation permet aussi de détecter l'intention du joueur 12.
Le procédé d'identification selon le cinquième mode de réalisation assure un raffinement de la compréhension du mouvement à identifier au fur et à mesure que le mouvement du joueur 12 se déroule. Plus le temps passe ou plus exactement, plus le joueur 12 progresse dans la réalisation de son mouvement et mieux l'intelligence artificielle est à même d'analyser correctement le mouvement du joueur 12. Ceci correspond exactement à une simulation de la réalité. Le procédé d'identification selon le cinquième mode de réalisation est à même de segmenter automatiquement le mouvement sans aucune indication du début ou de la fin d'un mouvement.
Pour certains procédés de reconnaissance associé, le procédé d'identification selon le cinquième mode de réalisation prend en compte le fait que certains paramètres caractéristiques du mouvement à identifier par le dispositif 16 soient plus ou moins valides. Cela permet de garantir une convergence du procédé d'identification même lorsque les paramètres caractéristiques fournis sont aberrants.
Pour certains procédés de reconnaissance associés, le procédé d'identification selon le cinquième mode de réalisation présente l'avantage d'être indépendant du temps. Ainsi, il importe peu que les mouvements du joueur 12 soient réalisés très rapidement, très lentement, rapidement au début et lentement à la fin ou inversement. Une telle variabilité de vitesse d'exécution n'a pas d'impact sur l'identification et par là, sur les possibilités de réaction de l'intelligence artificielle. Pour certains procédés de reconnaissance associés, le procédé d'identification selon le cinquième mode de réalisation présente aussi l'avantage d'être indépendant de la morphologie du joueur 12. Les différences globales de taille ou de proportion relative notamment à la largeur d'épaule ou la longueur des bras du joueur 12 ont prises en compte. Le procédé d'identification selon le cinquième mode de réalisation permet également d'obtenir un temps de calcul par trame temporelle sur un seul thread ou fil (d'exécution) inférieur à 1/30è" de seconde pour environ 1000 mouvements de référence différents dans la base de connaissance. Cela permet d'inclure à la suite, dans la même trame temporelle, une intelligence artificielle produisant une réponse par adversaire ou allié du personnage du joueur 12 à partir des informations de reconnaissance et des informations accessibles à l'intelligence artificielle. Pour certains procédés de reconnaissance associés, le procédé d'identification selon le cinquième mode de réalisation permet d'obtenir un taux d'identification meilleur que le taux de reconnaissance obtenu avec les procédés d'identification de l'état de technique. Typiquement, dans le cas de l'escrime, le taux d'identification est strictement supérieur à 85% si l'ensemble des mouvements de référence est pris en compte. Pour certains procédés de reconnaissance associés, le procédé d'identification selon le cinquième mode de réalisation présente aussi l'avantage de garantir un taux d'identification maximum dans l'intervalle de temps durant lequel l'intelligence artificielle a une décision de réponse à prendre. Selon un mode de réalisation préféré, le procédé d'identification selon le cinquième mode de réalisation est associé au procédé selon le quatrième mode de réalisation ou selon le cinquième de réalisation et permet de prédire les postures futures les plus probables du joueur 12 et/ou les positions de la lame du joueur 12 selon le dispositif d'acquisition 16 utilisé. L'intelligence artificielle est alors propre à prendre des décisions prenant compte des postures et/ou des positions prédites. Une décision consiste par exemple à déterminer l'action la plus opportune entre une attaque, une contre-attaque ou une parade. Selon des modes de fonctionnement plus évolués, la décision prend en compte un comportement particulier pour simuler un adversaire humain. Par exemple, pour simuler un être humain impatient, une contre-attaque sera privilégiée par rapport à une parade. Optionnellement, pour certains procédés de reconnaissance associés, le procédé d'identification selon le cinquième mode de réalisation est propre à fournir un indicateur de qualité du mouvement réalisé. Une telle information permet d'obtenir un indice de performance du mouvement réalisé par le joueur 12. Par exemple, il est ainsi déterminé la gravité de la blessure infligée en cas d'attaque non parée ou le déséquilibre de l'adversaire en cas de parade réussie avec une excellente qualité. L'indicateur de qualité du mouvement permet également d'apprendre au joueur 12 à réaliser correctement les mouvements de référence. L'indicateur de qualité du mouvement permet également de faciliter l'identification de mouvements ultérieurs du même joueur 12. Avantageusement, pour certains procédés de reconnaissance associés, le procédé d'identification selon le cinquième mode de réalisation comporte une étape de filtrage des mouvements du joueur 12. Cela permet, par exemple, de favoriser la visualisation ou d'éviter de prendre en compte les positions aberrantes de certaines articulations. Préférentiellement, le procédé d'identification selon le cinquième mode de réalisation comporte une étape de reconstruction du ou des mouvements identifiés réalisés par le joueur 12. Cela permet de faciliter l'apprentissage de l'intelligence artificielle des spécificités du joueur 12, notamment les choix, les forces et erreurs passés. Selon un mode de réalisation préféré, l'intelligence artificielle est propre à fournir au joueur 12 des conseils pour améliorer sa pratique. Pour illustrer les performances que la mise en oeuvre du procédé d'identification du mouvement du joueur 12 selon le cinquième mode de réalisation combiné lorsque l'étape d'identification 280 est mise en oeuvre à l'aide du procédé d'identification du mouvement du joueur 12 selon le deuxième mode de réalisation permet d'atteindre, un exemple concret de mise en oeuvre d'un tel procédé d'identification est détaillé en mettant l'accent sur les résultats numériques obtenus. Le tableau suivant donne le pourcentage de points correctement reconnus par cinématique de référence en mettant en oeuvre le procédé d'identification selon le cinquième mode de réalisation (deuxième colonne). Le tableau suivant donne également accès au pourcentage de points pour lequel la réaction de l'intelligence artificielle qui en résulte est la plus appropriée.
Cinématique de référence Pourcentage de re réaction appropriée de Pourcentage de reconnaissance l'intelligence artificielle (%) (%) Coup de manchette 79,3 83,2 Coup 1 de quarte à la joue 89,2 92,4 Coup 1 de quarte à la jambe 88,7 93,2 Coup 2 de tierce à la joue 87,4 93,8 Coup 2 de tierce à la jambe 84,0 90,9 Coup 3 de septime à la joue 80,0 86,6 Coup 3 de septime à la jambe 77,0 87,9 Coup 4 de seconde à la joue 82,4 93,1 Coup 4 de seconde à la jambe 87,1 90,4 Coup 5 à la joue 80,6 86,9 Coup 5 au côté 81,1 88,0 Coup 6 à la joue 88,6 91,7 Coup 6 au côté 86,9 91,6 Coup 7 de quinte à la tête 87,2 91,3 Coup 8 de prime à l'entrejambe 84,7 91,0 Parade d'octave haut 73,2 79,7 Parade de prime haute 75,9 85,4 Parade de quarte haute 76,8 84,3 Parade de seconde haute 87,0 90,1 Parade de tierce haute 68,3 81,1 Parade de quarte horizontale 91,7 93,8 Parade de prime basse 84,9 93,0 Parade de quarte basse 83,4 92,2 Parade de tierce basse 59,2 63,0 Parade d'octave 76,7 82,9 Parade de prime 72,8 82,7 Parade de quarte 77,6 83,8 Parade de Saint Georges 80,4 85,9 Parade de seconde 88,5 93,0 Parade de septime 91,3 93,5 Parade de sixte 86,1 92,0 Parade de tierce 70,7 93,8 Retour d'attaque en garde 6,6 36,9 Retour de parade en garde 67,1 76,0 A l'étude du tableau, il apparaît que le pourcentage de points de temps correctement reconnus est de 84,5 % et le pourcentage de points de temps conduisant à une réponse correcte d'une intelligence artificielle pour un jeu d'escrime (qui ne différencie par exemple pas dans sa réponse une parade de tierce et une parade de sixte), est de 90,3 `Vo.. Il convient, toutefois, de préciser que pour les points mal reconnus ou pour lesquelles la réponse de l'intelligence artificielle n'est pas la plus approprié, cela n'a pas de conséquence pour le jeu vidéo d'escrime dans la mesure où certaines phases du jeu d'escrime comme la garde n'impliquent pas une réponse spécifique et où la décision d'effectuer un mouvement par l'intelligence artificielle comprend plusieurs instants et pas un seul. Constitution d'une base de données Le système 10 est également propre à la mise en oeuvre d'un procédé de reconnaissance d'un mouvement du joueur 12. Un exemple de mise en oeuvre d'un tel procédé de reconnaissance est illustré en référence à l'ordinogramme de la figure 10. Dans le cadre de la description, le terme de « reconnaissance » comprend la constitution d'une base de données et l'identification d'un mouvement. A contrario, le terme d'« identification » ne comporte pas la constitution de la base de données. La base de données est supposée fournie préalablement à la mise en oeuvre du procédé d'identification. Optionnellement, comme c'est le cas dans l'exemple de la figure 10, le procédé de reconnaissance comporte une étape 300 de décision.
L'étape 300 de décision vise à choisir un nombre de mouvements de référence à mémoriser sous forme de cinématiques de référence. Pour la suite, le nombre choisi à l'étape 300 de décision est un entier naturel strictement positif noté I. De préférence, l'étape 300 de décision est mise en oeuvre par un expert en jeu vidéo dans la discipline dont les mouvements de référence font partie.
Avantageusement, le choix du nombre I de mouvements est un compromis entre la rapidité de mise en oeuvre du procédé de reconnaissance et la qualité du procédé de reconnaissance. En effet, plus le nombre I de mouvements de référence à mémoriser est grand, plus l'identification du mouvement du joueur 12 est lente. Toutefois, lorsque le nombre I de mouvements de référence à mémoriser est trop faible, la qualité de l'identification du mouvement du joueur 12 est insuffisante pour une application de jeu vidéo. De préférence, le nombre I de mouvements de référence à mémoriser est supérieur ou égal à 20. Ceci signifie mathématiquement que l'inégalité I k 20 est vérifiée. Avantageusement, le nombre I de mouvements de référence à mémoriser est inférieur ou égal à 4000. Ceci signifie mathématiquement que l'inégalité I 4000 est vérifiée. Cela permet de conserver une détermination des mouvements rapide adapté aux exigences de rapidité des jeux vidéo. Encore plus avantageusement, le nombre I de mouvements de référence à mémoriser est supérieur ou égal à 20 et inférieur ou égal à 4000. Ceci signifie mathématiquement que les inégalités 20 I 4000 sont vérifiées. A l'issue de l'étape 300 de décision, le nombre I de mouvements de référence à mémoriser est donc obtenu. Le procédé de reconnaissance comporte également une étape 320 de réalisation par le joueur 12 de mouvements de référence.
Lors de l'étape 320 de réalisation, le joueur 12 réalise l'ensemble des mouvements de référence décidés à l'étape 300 de décision. De préférence, le joueur 12 mettant en oeuvre l'étape 320 est un expert en jeu vidéo. Pour la suite de la description, les mouvements de référence sont indexés par un indice i. L'indice i est un nombre entier positif compris entre 1 et I, I étant le nombre de mouvements de référence à mémoriser décidés à l'étape 300 de décision. La réalisation de chaque mouvement de référence est effectuée de préférence plusieurs fois. Cela permet d'obtenir une cinématique de référence la plus représentative possible du mouvement de référence correspondant. Pour la suite de la description, le nombre de réalisation de chaque mouvement de référence est noté J(i). De plus, chaque réalisation du mouvement de référence i est repéré dans la suite par un indice noté j. L'indice j est un entier positif compris entre 1 et J(i). De préférence, J(i) est un entier positif supérieur ou égal à 2. Préférentiellement, J(i) est un entier positif supérieur ou égal à 20.
Selon un mode de réalisation, le nombre J(i) de réalisation de chaque mouvement de référence est identique pour tous les mouvements de référence. De préférence, les mouvements réalisés sont enregistrés de manière à ce que les mouvements d'un même type correspondent à des séries d'acquisitions différentes. En variante, l'étape 320 de réalisation est mise en oeuvre par plusieurs joueurs 12 pour tenir compte des variations de mouvement d'un joueur 12 à l'autre. Typiquement, dans le cas du jeu vidéo d'escrime, il est envisageable de demander à plusieurs joueurs d'escrime de nationalité différente de réaliser un même mouvement de référence. La diversité des nations permettraient de tenir compte des différences de réalisation d'un même mouvement d'un pays à l'autre, et d'en extraire ainsi un mouvement moyen se rapprochant au maximum des différents types de réalisation. Le mouvement moyen est alors qualifié de « mouvement de référence ».
Le procédé de reconnaissance comporte aussi une étape 340 d'acquisition par le dispositif 16 de paramètres caractéristiques relatifs aux mouvements de référence réalisés à l'étape 320 de réalisation. L'étape 340 d'acquisition et l'étape 320 de réalisation sont mises en oeuvre de manière simultanée. À l'étape 340 d'acquisition, les paramètres caractéristiques relatifs aux mouvements de référence sont également transmis depuis le dispositif 16 vers l'ordinateur 14. Ainsi, par exemple, selon un cas déjà détaillé précédemment, pour un nombre de paramètres de trois par articulations avec vingt articulations, 60 paramètres sont transmis par le dispositif 16. De préférence, les 60 paramètres sont mesurés à une fréquence correspondant à au moins trente points par seconde. De préférence, l'intervalle de temps entre chaque acquisition des 60 paramètres est constant tout au long de l'acquisition du mouvement de référence.
A l'issue de l'étape 360 d'acquisition, il est obtenu un ensemble de paramètres caractéristiques acquis pour chaque réalisation du mouvement de référence. Les paramètres caractéristiques acquis sont mémorisés dans la mémoire 18 de l'ordinateur 14. Le procédé de reconnaissance comporte également une étape 360 d'extraction d'un ensemble de cinématiques de référence à partir de l'ensemble des paramètres caractéristiques acquis. Selon l'exemple particulier de la figure 10, l'étape 360 comprend une sous-étape 362 de transformation, une sous-étape 364 d'optimisation et une sous-étape 366 de mesure.
Les mêmes remarques concernant la sous-étape 34 d'obtention sont applicables à la sous-étape 362 de transformation. De ce fait, à la sous-étape 362 de transformation, les paramètres caractéristiques acquis relatifs à une réalisation j d'un mouvement de référence i sont transformés en un ensemble de paramètres d'entrée.
De préférence, la sous-étape 362 de transformation est appliquée pour chaque paramètre de chaque réalisation de chaque mouvement de référence à chaque acquisition. Selon un mode de réalisation préféré, les paramètres d'entrée sont des données de position, de vitesse et/ou d'accélération des articulations.
Selon un autre mode de réalisation, les paramètres caractéristiques sont des données propres au mouvement comme par exemple la position, l'abscisse curviligne et/ou la tangente de la courbe du mouvement. Avantageusement, les paramètres sont indépendants du temps. En variante, les paramètres caractéristiques sont choisis dans un groupe constitué des données de vitesse des articulations, des données d'accélération des articulations, de l'abscisse curviligne ou de la tangente de la courbe du mouvement. L'ensemble des paramètres d'entrée calculés à partir des paramètres caractéristiques acquis à chaque acquisition forme une cinématique échantillon. Une cinématique échantillon est alors une succession de points, chaque point donnant la valeur des paramètres caractéristiques à l'instant d'acquisition du point. Chaque cinématique échantillon correspond à une réalisation j d'un mouvement de référence i. Pour la suite de la description, à titre illustratif, il est supposé que pour chaque réalisation j d'un mouvement de référence i, un des paramètres d'entrée est le vecteur directeur normé de la tangente à la courbe du mouvement de référence réalisé. En variante, le procédé de réalisation ne comporte pas de sous-étape 362 de transformation. Dans ce cas, les paramètres caractéristiques acquis sont les paramètres d'entrée. L'ensemble des paramètres caractéristiques acquis à chaque acquisition forme alors la cinématique échantillon. A la sous-étape 364 d'optimisation, il est calculé des cinématiques de référence à partir des cinématiques échantillon.
Plus précisément, pour chaque mouvement de référence, il est calculé une cinématique de référence par utilisation d'une fonction de coût. En variante, au lieu d'une fonction de coût, il est utilisé un score, une vraisemblance ou une probabilité a posteriori. Selon un mode de réalisation préféré, la fonction de coût est une fonction mesurant la dissemblance entre la cinématique de référence et les différentes cinématiques échantillon associées au même mouvement de référence. De préférence, la cinématique de référence est calculée pour minimiser la fonction de coût. Autrement formulé, les valeurs des paramètres des différents points de la cinématique de référence minimisent la fonction de coût, compte tenu des valeurs des paramètres des différents points des cinématiques échantillon associées au même mouvement de référence que la cinématique de référence calculée. De ce fait, il est préférable que, pourvu que les cinématiques échantillon aient toute la même forme, c'est-à-dire le même nombre de points caractéristiques, que les cinématiques de référence aient la même forme mathématique que les cinématiques échantillon.
Le calcul est mis en oeuvre à l'aide d'une optimisation en partant d'une cinématique initiale pour parvenir à une cinématique optimisée correspondant à la cinématique de référence. Par exemple, la cinématique initiale choisie est une des cinématiques échantillon obtenue à l'issue de la sous-étape 362 de transformation.
Selon un autre mode de réalisation, la cinématique initiale choisie est une moyenne arithmétique des cinématiques échantillon. Plus généralement, la cinématique initiale est choisie pour minimiser le temps de mise en oeuvre de la sous-étape 364 d'optimisation. Selon un autre mode de réalisation, la sous-étape 364 d'optimisation est une étape de calcul sans optimisation. A titre d'illustration, la cinématique de référence est une moyenne des cinématiques échantillons associées au même mouvement de référence. Cela permet d'éviter l'emploi d'une fonction de coût. La moyenne est, par exemple, une moyenne arithmétique. Avantageusement, la moyenne est une moyenne géométrique. Par rapport à la moyenne arithmétique, la moyenne géométrique présente l'avantage d'être moins sensible aux éventuelles valeurs extrêmes des paramètres des cinématiques échantillon. Selon un mode de réalisation plus élaboré, la moyenne est une moyenne pondérée impliquant des coefficients de pondération. Les coefficients de pondération prennent, par exemple, en compte l'incertitude des paramètres caractéristiques fournis.
En variante, les coefficients de pondération sont optimisés pour que la cinématique de référence présente une propriété voulue, par exemple une meilleure continuité spatiale. Selon un autre mode de réalisation, la cinématique de référence est une médiane des cinématiques échantillons associées au même mouvement de référence. Selon un autre mode de réalisation, la tendance centrale de la cinématique de référence centrale est constituée de points de temps appartenant chacun à une cinématique échantillon. Selon un autre mode de réalisation, la cinématique de référence est constituée de l'ensemble les cinématiques échantillons. Selon un autre mode de réalisation, la cinématique de référence est, dans un plan orthogonal à la tendance centrale des cinématiques échantillons - par exemple la cinématique moyenne -, l'enveloppe convexe des cinématiques échantillons. Selon un autre mode de réalisation, la cinématique de référence est obtenue par extraction de valeurs singulières de la matrice contenant en une ligne et une colonne, la distance entre le point échantillon indexé par la ligne et le point échantillon indexé par la colonne.
Selon un autre mode de réalisation, la cinématique de référence est obtenue par une technique de calcul de distribution de probabilité. Selon un autre mode de réalisation, la cinématique de référence est obtenue par technique d'extraction de blobs.
A la sous-étape 364 d'optimisation, pour chaque mouvement de référence i, une cinématique de référence est obtenue. Les cinématiques de référence obtenues sont mémorisées dans la mémoire 18 l'ordinateur 14. A la sous-étape 366 de mesure, il est calculé une mesure de dispersion de chaque cinématique de référence à partir de la cinématique de référence considérée et des cinématiques échantillons associées au même mouvement de référence. Il est à remarquer que les informations de tendance centrale et de dispersion peuvent être remplacées par une information de distribution de probabilité. Ceci correspond au fait que la dispersion locale peut être calculée de multiples manières différentes. Selon l'exemple particulier de la figure 10, la sous-étape 366 de mesure comporte une sous-étape 370 d'introduction, une sous-étape 372 de définition, une sous-étape 374 de premier calcul, une sous-étape 376 de deuxième calcul et une sous-étape 378 de mise en forme. A la sous-étape 370 d'introduction, il est introduit un espace vectoriel privilégié permettant de réduire le temps de mise en oeuvre de la sous-étape 366 de mesure.
Dans le cas considéré dans lequel un des paramètres d'entrée est le vecteur directeur normé de la tangente à la courbe du mouvement de référence réalisé, il est introduit l'hyperplan orthogonal à la tangente de chaque mouvement de référence pour chaque mouvement de référence. Pour rappel, en mathématiques et plus particulièrement en algèbre linéaire en en géométrie, les hyperplans d'un espace vectoriel E de dimension quelconque sont la généralisation des plans vectoriels de dimension 3. Autrement formulé, les hyperplans sont les sous-espaces vectoriels de codimension 1 dans l'espace vectoriel E. Si l'espace vectoriel E est de dimension finie n, les hyperplans de l'espace vectoriel E sont tous les sous-espaces vectoriels de l'espace vectoriel E présentant une dimension n - 1.
A l'issue de la sous-étape 370 d'introduction, l'hyperplan orthogonal à la tangente de chaque mouvement de référence pour chaque mouvement de référence est introduit. A la sous-étape 372 de définition, il est défini une rotation propre à chaque hyperplan orthogonal obtenu à l'issue de la sous-étape 370 d'introduction. Selon un mode de réalisation préféré, la rotation est choisie pour que l'image de l'hyperplan orthogonal à la tangente du mouvement pris à un premier instant par la rotation soit transformée en l'hyperplan orthogonal à la tangente du mouvement à un deuxième instant. A l'issue de la sous-étape 372 de définition, un ensemble de rotations est obtenu. Préalablement au calcul de la dispersion locale, chaque point de temps de chaque cinématique échantillon est mis en correspondance avec une partie de la cinématique de référence, ou encore avec plusieurs parties de la cinématique de référence, avec une mesure de d'association à chacune d'entre elle. Le calcul de la dispersion locale dépend alors du mode de représentation de la dispersion.
A la sous-étape 374 de premier calcul 374, la dispersion locale de chaque cinématique de référence dans la direction de la tangente au mouvement à chaque instant est calculée. Pour un modèle de dispersion locale choisi pour la direction de la tangente, les paramètres de ce modèle sont estimés pour une partie de la cinématique de référence à partir des distances le long de la tangente à la partie de la cinématique de référence entre cette partie de la cinématique de référence et les points de temps des cinématiques échantillon qui lui sont associées. Selon un premier mode de réalisation, la dispersion locale dans la direction de la tangente est calculée comme la variance de la distance le long de la tangente entre le point de temps de la cinématique échantillon et la partie de la cinématique de référence qui lui est associée. Selon un second monde de réalisation, un histogramme de cette distance est calculé, par exemple avec la méthode de Parzen. De nombreux autres modes de réalisation sont envisageables.
Le résultat du calcul mis en oeuvre à la sous-étape 374 est, selon un mode de réalisation préféré, présenté sous forme matriciel. Dans ce cas, chaque matrice obtenue est usuellement un vecteur dont la taille est reliée au nombre de paramètres caractéristiques obtenus à l'issue de la sous-étape 362 de transformation.
Dans le cas particulier où les paramètres caractéristiques sont regroupés en groupe de paramètres, la taille du vecteur est liée au cardinal de chaque groupe. A l'issue de la sous-étape 374 de premier calcul, la dispersion locale de chaque cinématique de référence dans la direction de la tangente au mouvement à chaque instant est obtenue.
A la sous-étape 376 de deuxième calcul, la dispersion locale de chaque cinématique de référence dans l'hyperplan orthogonal à la tangente au mouvement à chaque instant est connue. Pour effectuer un tel calcul, les rotations obtenues à l'issue de la sous-étape 372 de définition sont utilisées. La dispersion dans l'hyperplan orthogonal à la tangente au mouvement peut être dans un premier mode de réalisation représentée par une matrice de variance-covariance dans cet hyperplan. Si l'on suppose les groupes de paramètres caractéristiques indépendants, une matrice de variance-covariance peut être calculée pour chaque groupe de paramètre. Dans les deux cas, celle-ci peut être optionnellement réduite sous la forme de vecteurs propres et de valeurs propres. Dans un second mode de réalisation, la dispersion dans l'hyperplan orthogonal est représentée par des histogrammes multidimensionnels. Dans cette approche, il est préférable de supposer que les groupes de paramètres caractéristiques sont indépendants, pour limiter le nombre de dimension des histogrammes. Le résultat du calcul mis en oeuvre à la sous-étape 376 est, selon un mode de réalisation préféré, présenté sous forme matriciel. Dans ce cas, chaque matrice obtenue est usuellement une matrice carrée dont la taille est reliée au nombre de paramètres caractéristiques obtenus à l'issue de la sous- étape 362 de transformation. Dans le cas particulier où les paramètres caractéristiques sont regroupés en groupe de paramètres, la taille de la matrice est liée au cardinal de chaque groupe. A l'issue de la sous-étape 376 de deuxième calcul, la dispersion locale de chaque cinématique de référence dans l'hyperplan orthogonal à la tangente au mouvement à chaque instant est calculée. A la sous-étape 378 de mise en forme, l'ensemble des mesures de dispersion calculées aux sous-étapes 374 et 376 de premier calcul et de deuxième calcul sont mises en forme. Comme expliqué précédemment, au début de la mise en oeuvre de la sous- étape 378 de mise en forme, un ensemble de vecteurs et de matrices carrées a été calculé. Les vecteurs et les matrices sont alors classés en fonction de leur correspondance avec le mouvement de référence pour lequel le vecteur ou la matrice considérés ont été calculés. Il est ainsi obtenu un nombre d'ensembles de matrices et de vecteurs égal au nombre de mouvements de référence décidés à l'étape 300 de décision. Autrement dit, il est obtenu I ensembles de matrices et de vecteurs.
Puis, une classification selon l'instant d'acquisition des paramètres est mise en oeuvre sur les I ensembles de matrices et de vecteurs. Il est alors obtenu un nombre d'éléments égal au nombre de mouvements de référence décidés multiplié par le nombre d'instants d'acquisition, ce nombre étant noté I*T où T désigne le nombre de moments d'acquisition au cours de la réalisation du mouvement de référence. Il est à noter que T peut varier en fonction de I. Puis, similairement, dans un troisième temps le nombre de paramètres d'entrée obtenus à l'issue de la sous-étape 362 de transformation est considéré. Il est alors obtenu un nombre d'ensemble égal au nombre de mouvements de référence décidés multiplié par le nombre de moments d'enregistrement et par le nombre de paramètres d'entrée, soit l*T*E. E désigne le nombre paramètres d'entrée obtenus. Pour chaque ensemble obtenu dans le troisième temps, dans une matrice vide initialement, sont introduits alternativement une composante du vecteur et une matrice relatives au même paramètre caractéristique, pour tous les paramètres caractéristiques.
Les composantes du vecteur et la matrices sont disposées de telle sorte que les composantes du vecteur et les éléments diagonaux des matrices se trouvent sur la diagonale de la matrice à remplir. Les composantes du vecteur sont placées en premier, le plus possible en haut à gauche de la matrice à remplir. La matrice est ensuite complétée d'éléments nuls.
La matrice précédemment décrite est générée successivement pour chaque instant d'acquisition puis pour chaque mouvement de référence. En variante, lorsque cela est pertinent, le remplissage de la matrice est effectué groupes de paramètres par groupe de paramètres. Cela permet usuellement une mise en oeuvre plus rapide de la sous-étape 378 de mise en forme.
Il est ainsi obtenu à l'issue de la mise en oeuvre de la sous-étape 378 de mise en forme un ensemble de l*T*E matrices carrées constituant la mesure de dispersion de chaque cinématique de référence. Selon un autre mode de réalisation, particulièrement favorable lorsque la cinématique de référence obtenue à l'issue de la sous-étape 364 d'optimisation est une moyenne des cinématiques échantillon relatives au même mouvement de référence, la mesure de la dispersion est une mesure de l'écart-type entre les paramètres correspondants des cinématiques échantillon pour chaque mouvement de référence. En variante, au lieu de l'écart-type, il est considéré une matrice de variance-covariance. Selon encore un autre mode de réalisation, d'autres mesures statiques sont utilisées comme la mesure par quartile ou par l'écart interquartile. En effet, le quartile est calculé en tant que 4-quantiles. Plus précisément, le premier quartile sépare les 25% inférieurs des données, le deuxième quartile est la médiane de la série et le troisième quartile sépare les 25% supérieurs des données. La différence entre le troisième quartile et le premier quartile s'appelle écart interquartile ; c'est un critère de dispersion de la série.
A l'issue de la sous-étape 366 de mesure, il est obtenu une mesure de dispersion de chaque cinématique de référence à partir de la cinématique de référence considérée et des cinématiques échantillons associées au même mouvement de référence. Le procédé de reconnaissance comporte aussi une étape 380 de test de la validité de chaque cinématique de référence extraite à l'issue de l'étape 360 d'extraction.
Pour cela, la dispersion mesurée pour chaque cinématique de référence est comparée à un seuil prédéfini. Dans le cas où la dispersion d'une cinématique de référence est strictement supérieure au seuil prédéfini, les étapes 320 de réalisation, 340 d'acquisition et 360 d'extraction sont réitérées pour le mouvement de référence considéré ainsi que l'indique la flèche 385 sur la figure 10. Il est estimé qu'une dispersion trop élevée est le signe que la cinématique de référence n'est pas suffisamment représentative du mouvement de référence considéré. La réitération est mise en oeuvre tant que la mesure de dispersion de la cinématique de référence est strictement supérieure au seuil prédéfini.
Lorsque la dispersion mesurée pour chaque cinématique de référence est inférieure au seuil prédéfini, l'étape suivante du procédé de reconnaissance, à savoir une étape 390 de mise en mémoire est mise en oeuvre. Selon un mode de réalisation plus sophistiqué, le seuil prédéfini dépend de la cinématique de référence considéré et/ou du paramètre d'entrée considéré. Par exemple, si la mesure d'un premier paramètre d'entrée est usuellement plus bruitée que la mesure d'un deuxième paramètre d'entrée, il est préférable de choisir un seuil admissible de dispersion différent. Selon une variante, le procédé de reconnaissance ne comporte pas de sous- étape 366 de mesure et/ou d'étape 380 de test. Dans ce cas, l'accent est mis sur la vitesse de mise en oeuvre du procédé de reconnaissance au détriment éventuel de la qualité des cinématiques de référence. Cela est avantageux pour le cas de la constitution d'une base de connaissance relative à l'utilisateur du système 10 puisque la dispersion est a priori moins importante que pour une base de connaissance destinée à s'adresser à un public plus large. Un joueur 12 d'escrime a généralement un style propre dont il convient de s'affranchir pour constituer une base de données permettant une bonne identification ultérieure.
Le procédé de reconnaissance comporte ensuite l'étape 390 de mise en mémoire de l'ensemble de cinématiques de référence extraites à l'étape 360 d'extraction. À l'étape 390 de mise en mémoire, les cinématiques de référence extraites à l'étape 360 d'extraction et les mesures de dispersion associées sont mises en mémoire dans la mémoire 18 de l'ordinateur 14. Les cinématiques de référence forment une base de connaissance. A l'issue des étapes 300 de décision, 320 de réalisation, 340 d'acquisition, 360 d'extraction, 380 de test et 390 de mise en mémoire, la base de connaissance permettant l'identification de mouvements a été obtenue.
Le procédé de reconnaissance comporte enfin une étape 400 de mise en oeuvre d'un procédé d'identification. Par exemple, le procédé d'identification est le procédé d'identification selon le premier mode de réalisation tel que décrit précédemment en référence aux figures 2, 3 et 4.
En variante, le procédé d'identification est le procédé d'identification selon le deuxième mode de réalisation tel que décrit précédemment en référence aux figures 2 et 5. Selon une autre variante, le procédé d'identification est le procédé d'identification selon le troisième mode de réalisation tel que décrit précédemment en référence aux figures 6 et 7. Selon encore une autre variante, le procédé d'identification est le procédé d'identification selon le quatrième mode de réalisation tel que décrit précédemment en référence au procédé de traitement de la figure 8. Selon un autre mode de réalisation, le procédé d'identification comprend l'utilisation du procédé décrit en référence à la figure 9. De préférence, pour que la constitution d'une base de connaissance par le procédé de reconnaissance soit la plus favorable pour la mise en oeuvre d'un procédé d'identification, le dispositif 16 utilisé est le même à l'étape 340 d'acquisition que lors de l'étape 400 de mise en oeuvre du procédé d'identification.
Selon un mode de réalisation préféré, des étapes de constitution d'une base de connaissance sont réalisées par un éditeur de jeu vidéo. L'éditeur implémente lui-même les mouvements de référence décidés à l'étape 300 de décision. L'éditeur décrit les mouvements de référence dans un manuel d'utilisateur fourni avec le jeu vidéo vendu de telle sorte que le joueur 12 de jeu vidéo ayant acheté le jeu édité puisse ensuite reproduire efficacement les mouvements de référence.
Conclusion Dans ce qui précède, il a été proposé un procédé d'identification selon cinq modes de réalisation ainsi qu'un procédé de constitution d'une base de données. Comme expliqué précédemment, chaque procédé d'identification d'un mouvement d'un joueur 12 présente un temps de calcul plus court que les procédés d'identification selon l'état de la technique. Les modes de réalisations et les variantes décrits précédemment sont combinables lorsque cela est techniquement possible pour obtenir d'autres modes de réalisation de l'invention.10