MyMusicBender: Sistema de reconocimiento de movimiento y captura de gestos a partir de imágenes de profundidad como medio de expresión musical

Castillo Iglesias, Daniel del (2017). MyMusicBender: Sistema de reconocimiento de movimiento y captura de gestos a partir de imágenes de profundidad como medio de expresión musical. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. Industriales (UPM).

Description

Title: MyMusicBender: Sistema de reconocimiento de movimiento y captura de gestos a partir de imágenes de profundidad como medio de expresión musical
Author/s:
  • Castillo Iglesias, Daniel del
Contributor/s:
Item Type: Final Project
Degree: Grado en Ingeniería en Tecnologías Industriales
Date: June 2017
Subjects:
Faculty: E.T.S.I. Industriales (UPM)
Department: Automática, Ingeniería Eléctrica y Electrónica e Informática Industrial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[thumbnail of TFG_DANIEL_DEL_CASTILLO_IGLESIAS.pdf]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (4MB) | Preview

Abstract

El presente proyecto describe la metodología que se ha utilizado para diseñar, desarrollar y evaluar un innovador sistema de interacción musical. El propósito de este proyecto es doble. Por un lado, pretende elaborar con pocos recursos un modelo software de sintetizador aplicando las técnicas de síntesis empleadas en instrumentos musicales electrónicos actuales. Por otro lado, explorar las aplicaciones de nuevas interfaces de usuario gestuales, diseñando un sistema de control por movimientos corporales que sirva de comunicación entre el usuario y el modelo de sintetizador desarrollado. Como herramienta de captación de movimientos se ha utilizado el sensor Kinect para Xbox 360, que dispone de captura de vídeo y sensor de distancia. Para esta aplicación sólo ha sido necesario el sensor de distancia. La plataforma de procesamiento elegida es un SoC, un sistema que combina en un solo chip un procesador y una FPGA. Este dispositivo es especialmente adecuado para proyectos académicos, por su precio económico y porque concentra en un espacio muy reducido un gran poder de computación. El entorno de desarrollo software escogido es LabVIEW. En una primera etapa, se ha estudiado la estructura interna y componentes principales de un sintetizador moderno, y se ha trasladado tal diseño a un modelo software programado en FPGA. Las primeras pruebas han servido para comprobar que con escasos recursos es posible combinar diferentes formas de onda y generar sonidos musicalmente interesantes. Con esta base, se ha seguido aumentando el tamaño del modelo, aplicando conocimientos de electrónica analógica y acumulando código hasta terminar de construir un emulador de sintetizador con gran parte de las funciones que se pueden encontrar en los instrumentos electrónicos actuales. Más adelante, se han realizado pruebas de rendimiento con la Kinect, con objeto de comenzar a diseñar la interfaz de usuario gestual. En un principio, las librerías de LabVIEW disponibles para trabajar con la Kinect permitían una frecuencia de refresco máxima de 15 Hz, a baja resolución. Esto hacía inviable el proyecto, ya que con una frecuencia de partida tan baja, sería imposible construir sobre esas librerías un sistema de reconocimiento de movimientos eficiente. Pero gracias a una serie de modificaciones del código, se optimizaron las librerías hasta alcanzar una frecuencia de refresco de 400 Hz. Esto hizo posible continuar con el proyecto y dar forma a la idea original. Una vez solucionada la incidencia, se continuó con el diseño de la interfaz de comunicación con la FPGA. La interfaz de myMusicBender permite al usuario moverse entre distintos menús. En un primer estado, la Calibración, el usuario debe ser detectado correctamente por el sensor. Para ello, deberá situarse delante de la Kinect, a una distancia suficientemente grande como para que el sensor de distancia reciba las medidas adecuadas. Cuando se supere la Calibración, se pasa a un estado de Creación, en el que el usuario tiene acceso a los controles de sonido de la FPGA. Para ello debe activar los comandos de control a través de movimientos corporales. Esto permite que los sonidos generados sean consecuencia de movimientos intuitivos, de modo que exista un enlace directo entre la expresión corporal del usuario y la expresión musical resultante. Además de poder generar sonidos, en el estado de Creación se da la posibilidad de grabar la composición musical creada. Esta grabación, se repetirá continuamente en bucle, sirviendo de base para poder construir capa a capa una pieza cada vez más compleja. Adicionalmente, el usuario puede entrar en un menú de Configuración, en el que podrá ajustar diferentes parámetros de sonido, como el volumen, o seleccionar entre varios tipos de instrumento. Uno de los retos más difíciles de este sistema ha sido la funcionalidad de grabación de sonidos. Una FPGA no es una herramienta diseñada para almacenar gran cantidad de datos. Esto se une a la dificultad de que durante la ejecución de myMusicBender se cargan distintos programas en la FPGA según el estado en el que se encuentre. De modo que fue necesario pensar en una forma de salvar los datos de la grabación. Finalmente, se optó por secuenciar el código de la FPGA y activar procesos de transferencia sincronizada de los datos desde los bloques de memoria de la FPGA hasta la memoria RAM del procesador. Tras varias pruebas y modificaciones, este método ha resultado ser eficiente y seguro, ya que no hay pérdida de datos en las transferencias. Una vez completado el diseño del modelo de sintetizador y de la interfaz gestual, se han integrado ambas partes del proyecto. Gracias a que se ha mantenido en todo momento la consciencia de la limitación de los recursos de procesamiento y memoria, todas las etapas de diseño han tenido como principio el de obtener funcionalidades optimizadas. La consecuencia de ello es que se ha cumplido con todos los requerimientos de la aplicación que se enunciaron durante la planificación del proyecto, antes de agotar los recursos disponibles. De la aplicación terminada se han extraído medidas cuantitativas y cualitativas. Las pruebas de calidad de los sonidos generados en la FPGA han dado resultados positivos, hecho que se ha reflejado también en el testeo con usuarios. En el caso de la interfaz, los usuarios la han manejado de forma intuitiva y sencilla, familiarizándose con ella en poco tiempo. Los tests de precisión han demostrado que se trata de una interfaz flexible, que capta los movimientos naturales del cuerpo, traduciéndolos a música y manteniendo robustez suficiente frente a errores y perturbaciones. Aun así, el margen de mejora es muy amplio, pues esta aplicación no incluye de momento ningún algoritmo de predicción de la posición de las manos, ni de reconocimiento basado en aprendizaje, como redes neuronales. No se descarta la posibilidad de dotarla de estas funcionalidades en un futuro. Entre las lecciones aprendidas, quizá la más importante sea la de haber descubierto las grandes posibilidades de las nuevas interfaces de usuario, y lo abierto que se encuentra este campo de trabajo en la actualidad. También ha sido revelador el hecho de poder gozar de la flexibilidad de un sistema SoC, con el que, aplicando conocimientos de electrónica y programación, es posible desarrollar una amplia variedad de aplicaciones de distintos ámbitos ingenieriles. Por último, resaltar la importancia de mantener desde el inicio del proyecto una estructura organizada, teniendo claro el papel de cada uno de los componentes, integrándolos poco a poco en un conjunto cada vez más complejo y dando como resultado un sistema homogéneo y robusto.

More information

Item ID: 47446
DC Identifier: https://oa.upm.es/47446/
OAI Identifier: oai:oa.upm.es:47446
Deposited by: Biblioteca ETSI Industriales
Deposited on: 04 Aug 2017 06:32
Last Modified: 22 Dec 2022 08:35
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM