2012-03-19 10 views
8

He estado mirando las notas y características de la versión Kinect for Windows, ya que también quiero incorporar el reconocimiento de gestos en mi proyecto.Reconocimiento de gestos de Kinect para Windows

En la página anterior, la primera línea menciona que "Kinect for Windows SDK permite a los desarrolladores crear aplicaciones que admitan el reconocimiento de gestos y de voz". La API de reconocimiento de voz está disponible con el SDK y se puede usar fácilmente. Sin embargo, no creo que haya API de reconocimiento de gestos disponibles en el SDK. Las API de Skeleton Tracking están ahí para ser utilizadas fácilmente, pero luego deben adaptarse para obtener el reconocimiento de gestos.

He visto videos de Windows Media Center beng controlados por gestos, etc. y otras aplicaciones también. Me pregunto si todas estas aplicaciones están personalizadas y tendrán que escribir su propio código de reconocimiento de gestos.

Actualmente, en mi proyecto, estoy usando Kinect DTW Gesture Recognition de Codeplex. Estoy teniendo dos problemas con esto -> 1) Parece que me entusiasma el rendimiento, y al habilitar esto con mi aplicación, mi aplicación arroja la excepción OutofMemory después de un tiempo (las especificaciones de la PC son bastante altas). 2) No se puede decir mucho sobre la solidez del sistema. Funciona a veces para algunas personas y no para otros.

Pensé que si las API hubiesen sido incorporadas, habría sido bueno cambiar a estas. ¿Están disponibles o de lo contrario cuál es la resolución?

+0

Haga un perfil de la causa de la excepción, luego repórtelo, su pregunta tal como está escrita es vaga y nos obligaría a encontrar el problema para usted. –

+0

@Ramhound: Mi pregunta es principalmente si también hay un sistema de reconocimiento de gestos incorporado en Kinect SDK. – user1240679

+0

mirando ese proyecto codeplex, parece una idea que se esfumó. ¿Has inspeccionado los espacios de nombres y objetos del SDK? es posible que tengas que crear algún tipo de clase "Gesto" que defina la posición de cada miembro y lo que sea ... –

Respuesta

9

De hecho, estoy haciendo esto ahora mismo para un proyecto escolar. Tuvimos que crear nuestro propio módulo de reconocimiento de gestos. No hay nada en la API que lo haga por usted, pero le proporciona todas las piezas que necesitará para desarrollar la capacidad.

Este artículo fue de gran ayuda, http://blogs.msdn.com/b/mcsuksoldev/archive/2011/08/08/writing-a-gesture-service-with-the-kinect-for-windows-sdk.aspx. Habla de cómo desglosar los gestos. Si solo tienes un puñado de gestos que puedes codificar, es trivial. Necesitábamos la capacidad de cargar y reconocer gestos definidos por el usuario, pero este artículo describe el marco básico que utilizamos para llegar allí.

6

un vistazo aquí http://www.exceptontuesdays.com/gestures-with-microsoft-kinect-for-windows-sdk-v1-5/

código fuente está disponible en esa página.

Reconoce la siguiente

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

El enlace está muerto. – Naren

+0

@dimi ¿Alguien con el enlace actualizado? Me gustaría hacer un acercamiento y alejar la función – Faizan

+1

Parece ser que este repositorio github es del enlace de arriba. Consulte https://github.com/EvilClosetMonkey – YATO

0

También estoy desarrollando una aplicación con reconocimiento gesto como una asignación en la Universidad. Después de buscar buenas libros me encontré con estos dos, ambas escritas por los investigadores de 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

Describen técnicas generales para hacer posible el reconocimiento de gestos con el Kinect.

0

Pruebe esto FAAST API. Es una API donde puede reconocer gestos de cuerpo y proporciona una interrupción de entrada respectiva. Aquí necesita asignar una clave particular para una acción en particular. Por ejemplo: supongamos que utilizo la tecla 'W' para avanzar, entonces puedo asignar esta tecla para un gesto particular usando esta API.

Cuestiones relacionadas