Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parVictor Chagnon Modifié depuis plus de 9 années
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
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.