Università degli studi di Modena e Reggio Emilia Dipartimento di Ingegneria "Enzo Ferrari" ________________________________________________________ Corso di Laurea Magistrale in Ingegneria Informatica Classificazione e Segmentazione di Gesture per la Human Computer Interaction Candidato: Guido Borghi Relatore: Prof.ssa Rita Cucchiara Correlatore: Ing. Roberto Vezzani Human Computer Interaction E’ la disciplina che studia i modelli e le tecniche di interazione uomo – computer. Graphical User Interface (‘80) Command Line Interface (‘70) - User friendly - Veloci - Nuovi dispositivi - Mnemoniche - Metafore Natural User Interface (oggi) - Intuitive - Gaze Tracking - Invisibili - Action Recognition - Nuove tecnologie a costi accessibili - Speech Recognition -… 1/15 Obiettivo Realizzazione di un sistema in grado di segmentare e classificare automaticamente e in tempo reale i gesti di un utente. Contributi: Superamento approccio statico sliding window No ipotesi forti a priori Individuazione inizio e fine di un’azione Robustezza: no interazioni non volute dall’utente 2/15 Architettura del Sistema Addestramento Segmentazione Acquisizione dati ed HMM estrazione dei feature vector 3/15 Acquisizione dei dati Kinect • Azienda Microsoft Dati • Frame RGB (640x480) Skeleton • Random Forest • Insieme di sensori • Depth Map (320x240) • 20 giunti (joint) • Xbox 360 e Windows • Framerate: 9-30 fps • Coordinate 3D (x,y,z) • Libreria Kinect SDK • Punti inferiti 4/15 Calcolo feature e addestramento HMM • Distanza euclidea • Variazione distanza euclidea • Descrittore della traiettoria del giunto (sequenziale) 5/15 Hidden Markov Model Un HMM è una catena di Markov con gli stati nascosti, in cui solo le loro emissioni risultano essere osservabili. Permette la descrizione dell’evoluzione di un sistema dinamico tempo discreto con assenza di memoria. È definito dalla quintupla (S, V, π, A, B), ovvero: • Stati nascosti: 𝑆 = 𝑆1, 𝑆2 , … , 𝑆𝑁 • Alfabeto: 𝑉 = 𝑣1 , 𝑣2 , … , 𝑣𝑀 • Probabilità iniziale: 𝜋 = 𝑃(𝑞1 = 𝑆𝑖 ), 1 ≤ 𝑖 ≤ 𝑁 • Matrice transizioni A, 𝑎𝑖𝑗 = 𝑃(𝑞𝑡 = 𝑆𝑗 |𝑞𝑡−1 = 𝑆𝑖 ) • Matrice emissioni B, 𝑏𝑗 𝑘 = 𝑃(𝑣𝑘 𝑎𝑡 𝑡|𝑞𝑡 = 𝑆𝑖 ) 6/15 Hidden Markov Model Problemi canonici: Algoritmi proposti: l 1. Problema di valutazione Forward/Backward (CLASSIFICAZIONE) 2. Problema di decodifica Viterbi (PERCORSO OTTIMALE) 3. Problema dell’addestramento Baum-Welch ... (TRAINING) HMM utilizzati : 8 stati, left-right, GMM per emissioni 3 gaussiane multivariate per stato, per cui: 7/15 Segmentazione • Acquisizione di 1 frame Ciclo continuo Creazione di un mini-buffer (10 frame) • Controlli: Skeleton presente? Giunti individuati correttamente? • Calcolo delle feature Distanza euclidea Feature incentrate sugli arti superiori 8/15 Segmentazione • Rilevamento inizio gesture Analisi distribuzione di probabilità degli stati Meccanismo di voto degli HMM • Pre-classificazione Algoritmo di forward Ranking degli HMM in base alla likelihood ottenuta 9/15 Robustezza • Rilevamento fine gesture Analisi distribuzione probabilità finale degli stati • Classificazione Algoritmo di forward • Robustezza: 1. Almeno 2. 3. 2 3 degli stati visitati 2 Nei , penultimo e ultimo 3 𝐻𝑀𝑀#1 R= , 𝑅 > 𝑇ℎ 𝐻𝑀𝑀#2 Label gesture in output stato visitati 10/15 Interfaccia Grafica 11/15 Dataset MSR Action3D Dataset Kinteract Gesture Dataset • Creato in Imagelab • Dataset Microsoft • 10 classi, 10 soggetti • 20 classi, 3 soggetti • 168 azioni totali • 567 azioni totali • Orientato alla HCI • Orientato al gaming 1. Zoom In 2. Zoom Out 3. Scroll Up 4. Scroll Down 5. Slide Left 6. Slide Right 7. Rotate 8. Back 9. Ok 10. Exit 12/15 Risultati Classificazione singola azione Segmentazione Andamento della likelihood durante la fase di segmentazione 13/15 Risultati Robustezza segmentazione Classificazione singole tipologie con segmentazione 14/15 Video 15/15 Università degli studi di Modena e Reggio Emilia Dipartimento di Ingegneria "Enzo Ferrari" ________________________________________________________ Corso di Laurea Magistrale in Ingegneria Informatica Fine. Candidato: Guido Borghi Relatore: Prof.ssa Rita Cucchiara Correlatore: Ing. Roberto Vezzani