Sie sind auf Seite 1von 6

Tutorial de captura óptica de movimiento y análisis de gesto corporal con

Max-MSP-Jiiter
Autor: Tarcisio Lucas Pirotta
Proyecto de investigación “Desarrollo en multimedia del arte bio-generativo y los sistemas de captación del gesto
y la emoción humana.” – Director Carmelo Saitta - Facultad de Bellas Artes de la Universidad Nacional de
La Plata (Argentina) – Diag.78 Nº 680 Ciudad de La Plata Tel. 54-221-432-0532
tarcisiopirotta@hotmail.com

Palabras claves
Captura, movimiento, análisis, software

1. Introducción
En este tutorial abordaremos una aplicación para la captura óptica (con cámara web o archivos de
video), análisis y síntesis del gesto corporal.
Para ello se ha programado un módulo de captura en Max-MSP-Jitter (www.cycling74.com). A través
del mismo se obtienen datos que pueden ser empleados para modificar parámetros dentro de la
misma aplicación o ser enviados vía MIDI hacia otras aplicaciones. Estos datos pueden ser
empleados para controlar sonido y video en tiempo-real en forma efectiva.

2. Descarga e instalación
El tutorial está disponible en: http://www.biopus.com.ar/tuto/instalacion/captura_mov_jitter/index.html
La aplicación puede descargarse en: http://www.biopus.com.ar/tuto/captura_mov_jitter.zip
Descomprima el archivo " captura_mov_jitter.zip" y ejecute el archivo captura_movimiento_jitter.mxb
Requerimientos de la aplicación:
- Cycling74 Max Msp 4.5.5
- Cycling74 Jitter 1.5
- Librería CV.jit versión para jitter 1.5 : http://www.iamas.ac.jp/~jovan02/cv/download.html
- Puerto MIDI virtual (por ejemplo MidiYoke )

3. Selección del tipo de entrada


Una vez abierta la aplicación, en modo de ejecución (ctrl + E), el primer paso es la selección del tipo
de entrada. Es posible realizar la captura de movimiento a través de una cámara web, como así
también realizar pruebas con archivos de video.
Si deseamos utilizar una cámara web, primero se debe clickear en el botón OPEN y posteriormente
en el checkbox CÁMARA ON/OFF, como se muestra en la figura 1. El comando CLOSE detiene la
señal de la cámara y el de SETTINGS abre el panel de control de la cámara. Es necesario verificar
que la cámara este correctamente conectada y encendida, de lo contrario seleccionar esta
configuración sin la presencia de la cámara puede provocar el cierre da la aplicación.
En el caso de emplear un archivo de video, en primer lugar presionar el botón READ, el cual abrirá un
cuadro de diálogo para examinar y abrir un archivo. También se puede utilizar el botón READ

1
ejemplo.swf el cual abre una película de ejemplo incorporada en el tutorial. Posteriormente activar el
checkbox PÉLICULA ON/OFF para iniciar la visualización (Figura 2). Los comandos START y STOP
inician y detienen la reproducción de película respectivamente.

Figura 1 Figura 2

La aplicación esta predefinida para trabajar en una resolución 320 x 240. Esto puede modificarse
variando las dimensiones de la señal de entrada, como se ve en la figura 3.

Figura 3

A partir de este momento la señal de video original, proveniente de cámara web o del archivo de
video se visualiza en una pequeña pantalla ubicada sobre el margen derecho como vemos en la
figura 4.

Figura 4

2
4. Captura de movimiento
El siguiente paso es seleccionar el tipo de captura de movimiento, tildando el modo deseado como se
observa en la figura 5. Estas modalidades pueden ser: por luminancia, sustracción de cuadro fijo o
sustracción por delay.

Figura 5

La primera utiliza simplemente como parámetro para la captura los diferentes valores de luminosidad,
es decir la diferencia entre las zonas más claras y las más oscuras dentro de un mismo cuadro.
Las otras dos modalidades emplean sustracción de dos cuadros a modo de comparación para
detectar las variaciones en los píxeles y así determinar el movimiento de la imagen.
En la sustracción de cuadro fijo, también conocida como sustracción de fondo, las imágenes son
comparadas en relación a un único cuadro capturado previamente. Por ejemplo para determinar la
actividad de un ambiente se registra con anterioridad una imagen del lugar vacío, es esta imagen con
la cual se comparan todas las imágenes mientras dure el proceso de captación. Este procedimiento
sirve no sólo para la captación de movimiento sino también para la captación de presencia. Si se
selecciona este tipo de captura, es necesario tomar la imagen de referencia presionando en el botón
circular como se ve en la figura 6

.
Figura 6

El caso de la sustracción por delay es similar, sólo que la comparación se realiza entre dos instancias
consecutivas en el tiempo, la imagen actual siempre se compara en relación a otra ubicada a una
distacia de X cuadros previos. Justamente al hablarr de delay nos referimos al retraso que elegimos
entre la imagen actual y la de referencia, este parámetro se define tipeando la cantidad de cuadros de
delay como indica la figura 7.
A diferencia del caso anterior, con la sustracción por delay no es posible la captación de presencia.

3
Figura 7

En el sector inferior derecho de la aplicación podemos observar el análisis de movimiento en otra


pantalla ubicada debajo de la señal original, tal como muestra la figura 8. Este análisis nos muestra la
señal en modo bitonal, mostrando en color blanco las zonas que se interpretan como en movimiento y
en negro como aquellas que permanecen inmóviles. Las zonas de movimiento se destacan con un
recuadro verde, y una marca roja indica el centro promedio de las áreas de movimiento.

Figura 8

5. Calibración de la imagen
Otro factor que interviene en la captación de movimiento es el threshold / balance de la imagen.
Modificando este parámetro (figura 9) podemos aumentar o disminuir los tonos claros de la imagen,
variando así el rango de sensibilidad para la captación.

4
Figura 9

Aproximadamente el valor 50 indica un nivel intermedio, aunque este índice varía de acuerdo a la
imagen. Independientemente de esto, valores de threshold bajos inferiores a la media, corresponden
niveles altos de contraste y luminosidad, por el contrario, los valores altos tienen a oscurecer la
imagen y dificultar la captación de movimiento. En la figura 10 se aprecia la diferencia en la captación
según los índices de balance. La señal de la izquierda corresponde a niveles altos de threshold, la de
la derecha a niveles bajos que aumentan la luminosidad de la captura.

Figura 10

6. Análisis
Finalmente, sobre la parte inferior de la aplicación se encuentra el módulo de análisis (figura 11). De
aquí obtenemos tres valores, los dos primeros corresponden a la posición X e Y del promedio de las
áreas de movimiento, cuya coordenada se visualiza en la pantalla de análisis con una marca roja y
que ya hemos mencionado anteriormente (figura 8). El tercer dato representa la masa de movimiento,
esto es la sumatoria de los pixeles correspondientes a las zonas de movimiento, los pixeles blancos.

Figura 11

5
A partir de aquí el usuario puede modificar y complejizar la aplicación, estos 3 valores de análisis
pueden ser conectados a diferentes módulos y permitir el control en tiempo real de video y sonido. Al
mismo tiempo los valores pueden ser transmitidos via MIDI hacia otros entornos. En este caso cada
uno de los valores son escalados en un rango de 0 a 127 y enviados por 3 controladores
independientes. Dentro del módulo de análisis en la parte inferior, como muestra la figura 12, es
posible mediante un doble click en el objeto P MIDI ingresar a un sub módulo y al clickear sobre el
objeto CTLOUT configurar el puerto midi por el cual son enviados los valores.

Figura 11

Para verificar la correcta la comunicación de los datos a través de este protocolo, se puede ejecutar el
archivo receptor_midi.mxb el cual recibe los datos MIDI. En este caso se debe configurar el mismo
puerto seleccionado en la aplicación de captura de movimiento (click sobre el objeto CTLIN).

Das könnte Ihnen auch gefallen