Primeros pasos e ideas

Tamaño

20.07 KB

Titular de los derechos
Medialab-Prado

Independencia tecnológica: empoderamiento

Este proyecto toma la independencia como punto de partida. Por una parte, el proyecto pretende dotar de independencia a personas con diversidad funcional que de una manera u otra, dependen de terceras personas para realizar tareas cotidianas básicas. Curiosamente es este gesto de independencia el que puede mejorar, o ayudar a garantizar, la inclusión de dichas personas en un ámbito social y vecinal; puede ayudar a la inclusión de una persona tanto en su propio día a día, como en el día a día de una comunidad.

Desde este enfoque, se ha buscado la mayor independencia posible y, de momento, se han descartado algunas soluciones populares para el reconocimiento de voz. El principal motivo para descartar estas soluciones, es que pertenecen a empresas y organismos que mantienen cerrados sus desarrollos o partes sustanciales de los mismos. No obstante, se intentarán reflejar aquí los últimos 15 días de investigacióny trabajo.

Herramientas y bibliotecas para el reconocimiento de voz

Se han evaluado algunas herramientas:

De momento se utiliza CMUSphinx, aunque su curva de aprendizaje es elevada y su integración con aplicaciones no es inmediata. PEro es 100% software libre, con una gran investigación e ingeniería detrás. Hay ejemplos para manejarla en C, Java y Python, y se está evaluando el plugin para Qt (C++), que promete mucho.

Cómo probar CMUSphinx en RPi

Después de jugar un poco con Sphinx para GNU/Linux, hemos pasado a jugar con PocketSphinx en RPi 2. La RPi 2 es unas 6 veces más potente que RPi, y con el doble de RAM se nota mucha mejoría en el rendimiento. Reconocer una palabra o frase sencilla toma en RPi unos 10 - 12 segundos, mientras que en RPi 2 toma unos 2 - 3. Hemos probado con palabras tanto en Español como en Inglés, y aunque Sphinx funciona nativamente en ingés, ha sido capaz de reconocer órdenes en Español.

Para hacerse una idea de qué es y cómo funciona CMUSphinx, se pueden consultar estos enlaces (va también alguno de optimización del sistema de audio en tiempo real):

Actualmente se emplea una tarjeta para el control de motores DC, que debería reemplazarse por una capaz de manejar más amepraje. No obstante, se deja aquí como referencia:

Pasos futuros

En el futuro cercano queremos dar algunos pasos más :)

  1. Instalar Qt en RPi para probar y evaluar QtSpeech
  2. Conectar Arduino a RPi usando la biblioteca QtSerialPort
  3. Reemplazar la tarjeta de control de motores por una más potente, como la RoboClaw 2x45a
  4. Conseguir una silla motorizada, o al menos, un conjunto de motores con reductoras, unas baterías y un cargador de baterías.