Eyesweb
From Gmv
[edit] Inspiración
[edit] El cuerpo como interfaz
Podemos usar:
- posicion
- embergadura (caja contenedora)
- gestualidad
- movimiento
- cantidad de movimiento
- touch
- etc.
- silueta
- marcadores
- caras
- luz
[edit] Very Nervous System
[edit] Tecnología
[edit] Camaras
caracteristicas importantes: frames/segundo y tamanyo de captura
[edit] asequibles y de calidad aceptable
[edit] mejor calidad
- http://www.ids-imaging.com/
- http://www.unibrain.com/Products/VisionImg/Fire_i_DC.htm (funciona con Mac OS X)
- http://www.superrobotica.com/S130310.htm
- http://www.sparkfun.com/commerce/product_info.php?products_id=637
- http://www.alliedvisiontec.com/us/products/cameras/firewire/guppy.html
[edit] opticas
caracteristicas importantes: calidad, distorsion (barrilete/cojín) y focal/rango de visión/medida CCD
[edit] velocidad adecuada para interacción
Se necesitan 12 fps para buena sensación de control/agencia.
Depende de CAMARA + PROCESADO
[edit] Instalaciones interactivas MADbásicas
[edit] Suelo interactivo
[edit] Pared interactiva
[edit] Mesas interactivas
[edit] Software visión por ordenador
OpenCV es la base de todas las plataformas:
[edit] EyesWeb
[edit] Otras plataformas
[edit] Imagen digital: una matriz de pixeles, una matriz de valores
[edit] B/N
- origen (0,0)
- ejes (m,n)
- dimensiones de la imagen NxM
- escala de grises [blanco - negro]
- rango de valores [255 - 0]
[edit] Imagen en color: 3 matrices
[edit] Modelos de color
- RGB
- CMYK
- YUV
[edit] EyesWeb I: introducción
- ftp://ftp.infomus.org/../../Evaluate/EyesWeb/ (todas las versiones)
- ftp://ftp.infomus.org/../../Evaluate/EyesWeb/Version_4.0.2 (download version 4)
- http://www.infomus.org/EyesWeb/EywTutorials.html (tutoriales)
- http://eyw.free.fr/ (forum)
- http://eyw.free.fr/wiki/index.php?title=EyesWeb_wiki:Community_Portal (news)
[edit] Interfaz del programa
[edit] Cargar imagenes
[edit] patch
[edit] Información útil para el procesado
[edit] patchs
-
informacion_imagen.eywx útil para ajustar tamaños de captura y formato de modelo de color
-
imagen_color_a_gris.eywx útil para aumentar la velocidad de procesado posterior
-
3canales.eywx útil para aumentar la velocidad de procesado si solo nos interesa cierto color
[edit] ejemplo: tracking de color
- http://coding.feedfury.com/content/25562723-color_tracking_object_for_openframeworks.html
- http://www.vimeo.com/782236
[edit] Video y camaras
[edit] patch
[edit] tarea
- capturar de la webcam y mostrarlo en un display live video
[edit] Detección
[edit] Croma
[edit] patch
[edit] más información
[edit] tarea
- hacer un patch que extraiga el fondo de color y deje solamente el personaje
[edit] Substración de fondo y presencia
[edit] patchs
[edit] Movimiento
[edit] patchs
[edit] ejemplo: delay de video
[edit] patchs
[edit] tarea
- detectar el movimiento delante de la webcam
[edit] ejemplos: detección de movimiento
[edit] Profundidad: kinect
Para medir la profundidad hay camaras que usan el metodo de "time-of-flight" pero son muy caras. Kinect usa detección de patrones y como se deforman.
[edit] Threshold
[edit] patchs
[edit] ejemplos: threshold de luz
[edit] tarea
- cargar el video de la luz y aislar mediante un threshold el foco del fondo: la luz debe quedar una mancha blanca sobre fondo negro durante todo el video ¿que valor de umbral es el adecuado?
[edit] ejemplos threshold imagen
[edit] Hardware: proyectores, luz y filtros
[edit] Proyectores
- no emiten en el rango del IR
- off axis / on axis
- rango de proyección 0.8:1 (se pueden usar espejos)
- intensidad
- grandes formatos
[edit] Iluminación
- visible e IR
- filtros
[edit] Eyesweb II. Información de la imagen
[edit] Caja contenedora y centro
[edit] patches
[edit] tarea
- calcular la posición central de micro-dance
[edit] ejemplo: caja contenedora
[edit] tarea
- calcular la posición central de un led/luz que movemos frente la webcam y pintarla con un punto rojo
[edit] Esqueleto
[edit] patch
[edit] ejemplos: detección de manos
[edit] ejemplo: detección de dedos
[edit] tarea
- detectar los pies de micro-dance
- pintar un circulo rojo en el pie derecho
- pintar un circulo amarillo en el pie izquierdo
[edit] Connexiones: enviamos datos
Las posibilidades graficas de EW son limitadas. Podemos enviar la información de procesado a otros programas usando varios protocolos:
- TCP/IP
- OSC
- TUIO (EW no lo incluye)
[edit] patches
[edit] ejemplo OF
- recibimos datos OSC
[edit] ejemplo Processing
- recibimos datos OSC
[edit] Actuando sobre la imagen: filtrado y contorno
[edit] patches
-
morphing de la imagen.eywx
-
rotar imagen.eywx
-
resize imagen.eywx
-
canny corner detection.eywx
-
filtros1.eywx
-
filtros2.eywx
[edit] Silueta
[edit] ejemplo de silueta
[edit] EyesWeb III. MADproyectito
[edit] MADproyecto
- http://www.flong.com/projects/scrapple/
- http://www.jooyounpaek.com/zoonori.html
- http://scratch.mit.edu/projects/Mimi46/14586
- http://vimeo.com/625464
[edit] Partes del proyecto
- Caputura de imagen
- Procesado para detectar los elementos
- Enviar la información
- Output visual
La parte de captura + procesado + enviar datos puede ser un patch de EyesWeb o Reactivision
[edit] Apuntes extras
- apuntes de visión Golan Levin: http://www.flong.com/texts/essays/essay_cvad/
- luz y percepción visual: http://www.lightmodulator.org/research.htm









