2012-03-19 18 views
8

Ho preso in considerazione le note e le funzioni di rilascio di Kinect for Windows, poiché anch'io voglio incorporare il riconoscimento dei gesti nel mio progetto.Riconoscimento dei gesti Kinect per Windows

Nella pagina precedente, la prima riga indica che "L'SDK Kinect per Windows consente agli sviluppatori di creare applicazioni che supportano il riconoscimento vocale e gestuale". L'API di riconoscimento vocale è disponibile con l'SDK e può essere facilmente utilizzata. Tuttavia, non credo che nell'SDK siano disponibili API di riconoscimento dei gesti. Le API di Skeleton Tracking sono lì per essere prontamente utilizzate, ma poi devono essere adattate per ottenere il riconoscimento dei gesti.

Ho visto video di Windows Media Center beng controllati da gesti, ecc. E altre applicazioni. Mi chiedo se tutte queste applicazioni siano personalizzate e debbano scrivere il proprio codice di riconoscimento dei gesti.

Attualmente, nel mio progetto sto usando Kinect DTW Gesture Recognition da Codeplex. Sto avendo due problemi con questo -> 1) Sembra molto performante, e abilitando questo con la mia app, la mia app lancia un'eccezione OutofMemory dopo un po 'di tempo (le specifiche del PC sono piuttosto alte). 2) Non posso dire molto sulla robustezza del sistema. Funziona a volte per alcune persone e non per gli altri.

Ho pensato che se le API fossero state incorporate, sarebbe stato opportuno passare a queste. Sono disponibili o qual è la risoluzione?

+0

Esaminare la causa dell'eccezione, quindi riferire, la domanda come scritta è vaga e richiederebbe a noi di trovare il problema per voi. –

+0

@Ramhound: la mia domanda è principalmente quella di chiedere se nel Kinect SDK esiste anche un sistema di riconoscimento dei gesti integrato? – user1240679

+0

guardando a quel progetto di codeplex, sembra un'idea che è svanita. hai ispezionato gli spazi dei nomi e gli oggetti dell'SDK? potrebbe essere necessario creare una sorta di classe 'Gesture' che definisce la posizione di ciascun arto e cosa no .. –

risposta

9

In questo momento sto facendo proprio questo per un progetto scolastico. Dovevamo creare il nostro modulo Gesture Recognition. Non c'è nulla nell'API che lo farà per te, ma ti fornisce tutti i pezzi di cui avrai bisogno per costruire la funzionalità.

Questo articolo è stato di grande aiuto, http://blogs.msdn.com/b/mcsuksoldev/archive/2011/08/08/writing-a-gesture-service-with-the-kinect-for-windows-sdk.aspx. Parla di come abbattere i gesti. Se hai solo una manciata di gesti che puoi hard-code, è banale. Avevamo bisogno della capacità di caricare e riconoscere i gesti definiti dall'utente, ma questo articolo descrive il framework di base utilizzato per arrivarci.

6

Date un'occhiata qui http://www.exceptontuesdays.com/gestures-with-microsoft-kinect-for-windows-sdk-v1-5/

codice sorgente è disponibile in quella pagina.

Riconosce il seguente

switch (e.GestureType) 
      { 
       case GestureType.Menu: 
        Debug.WriteLine("Menu"); 
        Gesture = "Menu"; 
        break; 
       case GestureType.WaveRight: 
        Debug.WriteLine("Wave Right"); 
        Gesture = "Wave Right"; 
        break; 
       case GestureType.WaveLeft: 
        Debug.WriteLine("Wave Left"); 
        Gesture = "Wave Left"; 
        break; 
       case GestureType.JoinedHands: 
        Debug.WriteLine("Joined Hands"); 
        Gesture = "Joined Hands"; 
        break; 
       case GestureType.SwipeLeft: 
        Debug.WriteLine("Swipe Left"); 
        Gesture = "Swipe Left"; 
        break; 
       case GestureType.SwipeRight: 
        Debug.WriteLine("Swipe Right"); 
        Gesture = "Swipe Right"; 
        break; 
       case GestureType.ZoomIn: 
        Debug.WriteLine("Zoom In"); 
        Gesture = "Zoom In"; 
        break; 
       case GestureType.ZoomOut: 
        Debug.WriteLine("Zoom Out"); 
        Gesture = "Zoom Out"; 
        break; 

       default: 
        break; 
+2

Il collegamento è morto. – Naren

+0

@dimi Chiunque abbia il link aggiornato? Mi piacerebbe impiantare la funzione zoom in e zoom out – Faizan

+1

Sembra che questo repo github provenga dal link sopra. Controlla https://github.com/EvilClosetMonkey – YATO

0

Sono anche sviluppando un'applicazione con il riconoscimento gesto come un incarico presso l'Università. Dopo la ricerca di buoni libri mi sono imbattuto in questi due, entrambi scritti da ricercatori Microsoft:

(1) http://www.amazon.de/Programming-Kinect-Windows-Software-Development/dp/0735666814
(2) http://www.amazon.de/Kinect-Windows-SDK-Programming-Guide/dp/1849692386/ref=sr_1_10?s=books-intl-de&ie=UTF8&qid=1393944100&sr=1-10&keywords=kinect

Essi descrivono tecniche generali per rendere possibile il riconoscimento gesto con il Kinect.

0

Prova questo FAAST API. È un'API in cui è possibile riconoscere i movimenti del corpo e fornisce un rispettivo interrupt di input. Qui è necessario assegnare una chiave particolare per una determinata azione. Ad esempio: Supponiamo che io usi il tasto 'W' per il movimento in avanti, quindi posso assegnare questa chiave per un particolare gesto usando questa API.

Problemi correlati