La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

L’entrée gestuelle et la reconnaissance de gestes.

Présentations similaires


Présentation au sujet: "L’entrée gestuelle et la reconnaissance de gestes."— Transcription de la présentation:

1 L’entrée gestuelle et la reconnaissance de gestes

2 Quelques exemples de systèmes à entrée gestuelle, et d’ensembles de gestes …

3 a) rectangle b) ellipse c) ligne d) groupe e) copie f) rotation g) supprimer (“x”) Rubine, “Specifying gestures by example”, SIGGRAPH 1991, https://scholar.google.ca/scholar?q=rubine+specifying+gesture s+example https://scholar.google.ca/scholar?q=rubine+specifying+gesture s+example

4 Wobbrock, Wilson, and Li. Gestures without libraries, toolkits or training: a $1 recognizer for user interface prototypes. UIST 2007 https://scholar.google.ca/scholar?q=wobbrock+wilson+gestures+without+libraries +toolkits+training+recognizer

5 Le Graffiti

6 EdgeWrite ( http://depts.washington.edu/ewrite/ ) http://depts.washington.edu/ewrite/ Une façon mécanique de simplifier la reconnaissance de gestes, avec des contraintes physiques

7 EdgeWrite Comment distinguer ces gestes? Réponse: trouver l’ordre dans lequel les “coins” sont visités, et chercher la séquence de coins dans un dictionnaire

8 Tivoli Moran, Chiu, van Melle, and Kurtenbach. Implicit Structure for Pen-based Systems within a Freeform Interaction Paradigm, CHI 1995 https://scholar.google.ca/scholar?q=moran+chiu+kurtenbach+implicit+structure+pen- based+systems+freeform+interaction

9 Tivoli Moran, Chiu, van Melle, and Kurtenbach. Implicit Structure for Pen-based Systems within a Freeform Interaction Paradigm, CHI 1995 https://scholar.google.ca/scholar?q=moran+chiu+kurtenbach+implicit+structure+pen- based+systems+freeform+interaction

10 Comment fait Tivoli pour retrouver les rangées et colonnes dans des ensembles d’encre? Réponse au prochain diapo…

11 Tivoli Moran, Chiu, van Melle, and Kurtenbach. Implicit Structure for Pen-based Systems within a Freeform Interaction Paradigm, CHI 1995 https://scholar.google.ca/scholar?q=moran+chiu+kurtenbach+implicit+structure+pen- based+systems+freeform+interaction

12 Menu radial hiéarchique Tiré de la thèse doctorale de Gord Kurtenbach

13 Combinaison de sélection rectangle et lasso À retenir! Question: comment l’ordinateur peut-il distinguer entre le geste à gauche et celui à droite? Réponse: vérifier si (length_of_ink_trail) ÷ (straight_line_distance_from_start_to_end_of_drag) > 2.5

14 Reconnaissance de gestes

15 Comment distinguer les gestes dans un “Marking Menu” hiéarchique? Tiré de la thèse doctorale de Gord Kurtenbach

16 Comment trouver un “coin” dans un geste? Lorsque le geste est bruité ? (voir notes écrites)

17 Dabbleboard https://www.youtube.com/watch?v=5kZDqiH_nGM https://www.youtube.com/watch?v=5kZDqiH_nGM

18 Dabbleboard https://www.youtube.com/watch?v=5kZDqiH_nGM https://www.youtube.com/watch?v=5kZDqiH_nGM

19 Dabbleboard https://www.youtube.com/watch?v=5kZDqiH_nGM https://www.youtube.com/watch?v=5kZDqiH_nGM Widgets pour déplacer, dupliquer, supprimer, redimensionner Clic + touches de clavier: saisir du texte Clic + clic + drag: sélection rectangle

20 Fureteur web http://dolphin.com/http://dolphin.com/

21 Samsung Galaxy Note

22 Comment permettre à un utilisateur (ou un concepteur) de définir des nouveaux gestes sans écrire du code ? Spécifier les nouveaux gestes avec des exemplaires ! –Nécessite de faire du “pattern matching” entre les exemplaires de gestes pré-fournis, et chaque geste entré pendant l’interaction

23 Rubine, “Specifying gestures by example”, SIGGRAPH 1991, https://scholar.google.ca/scholar?q=rubine+specifying+gesture s+example https://scholar.google.ca/scholar?q=rubine+specifying+gesture s+example

24 Rubine, “Specifying gestures by example”, SIGGRAPH 1991, https://scholar.google.ca/scholar?q=rubine+specifying+gesture s+example https://scholar.google.ca/scholar?q=rubine+specifying+gesture s+example

25 La reconnaissance de gestes avec l’algorithme de Rubine (1991) Chaque geste entré (ou exemple de geste) est réduit à un vecteur de caractéristiques (“feature vector”) et correspond donc à un point multidimensionnel. Il s’agit alors de classifier ces points parmi les catégories de gestes. Taux de reconnaissance selon les tests de Rubine > 95% À retenir!

26 Rubine (1991) https://scholar.google.ca/scholar?q=rubine+%22specifying+gestures+by+example%22 https://scholar.google.ca/scholar?q=rubine+%22specifying+gestures+by+example%22

27 vecteur de caractéristiques d'un exemplairegeste à classifier

28 1ère solution: comparer la distance entre le nouveau geste et chaque exemplaire (recherche du plus proche voisin / "nearest neighbor") - Comment calculer cette distance? - Combien de temps cela prendra? (Supposons F “features” (donc un espace à F dimensions), C classes (ou sortes de gestes), et E exemplaires par classe). À retenir!

29 Distance entre le geste à classifier et un exemplaire À retenir!

30 2ième solution: pré-calculer le centroïde de chaque classe d’exemplaires (k-moyennes / "k-means") - Comment pré-calculer ces centroïdes? - Combien de temps cela prendra? - Comment ensuite classer le nouveau geste? - Combien de temps cela prendra? À retenir! centroïde

31 Calcul de centroïde: Distance entre le geste à classifier et un centroïde: À retenir!

32 3ième solution (proposée par Rubine): pré-calculer des hyperplans pour séparer les exemplaires (machine à vecteurs de support / "Support Vector Machine" ou SVM). Voir son article pour les détails. Ci-dessous, un exemple d’un cas qui serait mieux classifié avec l’approche par hyperplans qu’en comparant des centroïdes. (Notez qu’en pratique, ces cas sont peut-être rares, et la complexité de programmer le calcul des hyperplans ne vaut peut- être pas la peine.) Ligne pointillée: mediatrice entre les centroïdes Ligne solide: hyperplan qui sépare les exemplaires À retenir!

33 temps pour pré- calculer temps pour classifier un geste fiable? 1. plus proche voisin aucunO( C E F )toujours 2. k-moyennes / centroïdes O(C E F) pour trouver les centroïdes O( C F )si les exemplaires sont linéairement séparables ET chaque classe a environ le même écart type 3. machine à vecteurs de support / hyperplans / approche de Rubine Dépend de l’implementation. Un algorithme itératif, à titre d’exemple, prend O( (nombre d'itérations) C 2 E F ) O( C F )si les exemplaires sont linéairement séparables Soit: F “features” (donc un espace à F dimensions), C classes (ou sortes de gestes), et E exemplaires par classe Remarque: l'approche 3 est la plus compliquée à programmer, tout en étant moins rapide que l'approche 2 et moins fiable que l'approche 1. Donc, je vous conseille d'essayer les approches 1 ou 2 avant d'essayer l'approche 3. À retenir!

34 Le reconnaissance de gestes avec l’algorithme à “$1” (Wobbrock et al., 2007) https://scholar.google.ca/scholar?q=wobbrock+wilson+%22gestures+without+libraries%2C+toolkits+or+training%22 https://scholar.google.ca/scholar?q=wobbrock+wilson+%22gestures+without+libraries%2C+toolkits+or+training%22 $1 n'utilise pas de vecteurs de caractéristiques; il compare plutôt la géométrie d'un geste avec la géométrie de chaque exemplaire, point-par- point. Cela nécessite qu'ils aient tous le même nombre de points. Tel que présenté dans l’article 2007 de Wobbrock et al., l’approche $1 utilise seulement des opérations mathématiques de base, est simple à implémenter en peu de code sans librairies, et est rapide. Toutefois, cela est en comparaison à la machine à vecteurs de support de Rubine. Si on simplifie l’approche de Rubine pour classifier les vecteurs de caractéristiques avec plus proche voisin ou k-moyennes (tel que montré dans les diapos précédents), alors l’approche par vecteurs de caractéristiques devient toute aussi simple à implementer et possiblement plus rapide que $1 Taux de reconnaissance de $1 supérieur à Rubine, tel que mesuré par Wobbrock et al. Une des étapes clés: rééchantillonage ("resampling") du geste, pour que le geste et les exemplaires aient tous le même nombre de points. Temps pour classifier un geste: O( C E N ), où C est le nombre de classes, E le nombre d'exemplaires par classe, et N le nombre de points par exemplaire (voir notes écrites) À retenir!

35 Wobbrock, Wilson, and Li. Gestures without libraries, toolkits or training: a $1 recognizer for user interface prototypes. UIST 2007 https://scholar.google.ca/scholar?q=wobbrock+wilson+gestures+without+libraries+toolkits+training+recognizer

36 Wobbrock, Wilson, and Li. Gestures without libraries, toolkits or training: a $1 recognizer for user interface prototypes. UIST 2007 https://scholar.google.ca/scholar?q=wobbrock+wilson+gestures+without+libraries+toolkits+training+recognizer

37 Wobbrock, Wilson, and Li. Gestures without libraries, toolkits or training: a $1 recognizer for user interface prototypes. UIST 2007 https://scholar.google.ca/scholar?q=wobbrock+wilson+gestures+without+libraries+toolkits+training+recognizer

38 Wobbrock et al. (2007) http://doi.acm.org/10.1145/1294211.1294238


Télécharger ppt "L’entrée gestuelle et la reconnaissance de gestes."

Présentations similaires


Annonces Google