Java, interactivos y visión artificial para performance

Java, interactivos y visión artificial para performance

Esta entrada también está disponible en: Inglés

Índice


Introducción

Programando en Processing

Referencias técnicas OpenCV

Referencias técnicas Kinect

 

Introducción


 

SISTINT-NOV2016-5

 

SISTINT-NOV2016-7

 

 

 

Programando en Processing


 

  1. Instalar Processing 2.2.1   ->    http://processing.org
    Captura de pantalla 2016-02-12 a las 20.25.38p.m.

 

Referencias de código explicado en clase

 

 

 

 

En OpenSimpleNI contamos con 15 articulaciones:

SimpleOpenNI.SKEL_HEAD 
SimpleOpenNI.SKEL_NECK 
SimpleOpenNI.SKEL_LEFT_SHOULDER 
SimpleOpenNI.SKEL_LEFT_ELBOW 
SimpleOpenNI.SKEL_LEFT_HAND 
SimpleOpenNI.SKEL_RIGHT_SHOULDER 
SimpleOpenNI.SKEL_RIGHT_ELBOW 
SimpleOpenNI.SKEL_RIGHT_HAND 
SimpleOpenNI.SKEL_TORSO 
SimpleOpenNI.SKEL_LEFT_HIP 
SimpleOpenNI.SKEL_LEFT_KNEE 
SimpleOpenNI.SKEL_LEFT_FOOT 
SimpleOpenNI.SKEL_RIGHT_HIP 
SimpleOpenNI.SKEL_RIGHT_KNEE 
SimpleOpenNI.SKEL_RIGHT_FOOT 

podemos dibujar los miembros y articulaciones de un sujeto:

context.drawLimb(USER_ID, JOINT_1, JOINT_2);

Por ejemplo:

void drawSkeleton(int userId)
{context.drawLimb(userId, SimpleOpenNI.SKEL_HEAD, SimpleOpenNI.SKEL_NECK);
context.drawLimb(userId, SimpleOpenNI.SKEL_NECK, SimpleOpenNI.SKEL_LEFT_SHOULDER);
  context.drawLimb(userId,SimpleOpenNI.SKEL_LEFT_SHOULDER,SimpleOpenNI.SKEL_LEFT_ELBOW); context.drawLimb(userId, SimpleOpenNI.SKEL_LEFT_ELBOW, SimpleOpenNI.SKEL_LEFT_HAND);}

 

Descargar ejemplos de código 39-40

Libertar.io

Libertar.io

Libertar.io

Extra 1: ejemplo de capas PGraphics 

Extra 2: ejemplo 3D y control con ratón

Extra 3: ejemplo cargar archivos .obj

Extra 4: ejemplo OpenCV letra cae sobre sujeto

Extra 5: ejemplo aplica fuerza pendulos física

Extra 6: ejemplo ‘cloth’ usando librería physics (Requiere instalar la librería desde http://www.murderandcreate.com y poner la carpeta physics en processing\libraries\physics\ )

 

 

 

 

 

 

 

SISTINT-NOV2016 SESION7

 

Referencias técnicas OpenCV


OpenCV for Processing  > 2.2.1:

En Processing IDE, menú Sketch -> Import Library -> Add Library -> OpenCV for Processing

http://ubaa.net/shared/processing/opencv/

 

Open Kinect for Processing > 2.2.1::

En Processing IDE, menú Sketch -> Import Library -> Add Library -> Open Kinect for Processing

 

Referencias técnicas libfreenect Kinect


 

sp-kinect-img-672x372

El dispositivo cuenta con una cámara RGB, un sensor de profundidad,  y un procesador que ejecuta el software privativo de PrimeSense. El sensor de profundidad es un proyector de infrarrojos combinado con un sensor CMOS monocromo que permite ver en cualquier condición de luz ambiental.  La profundidad de captura va de 0.7 a 6 metros. La información es recogida a 30 frames por segundo en una resolución de 640 por 480px.
Existen dos drivers: Open Kinect es Libfreenect de código abierto, y OpenNI que es mantenido por PrimeSense los desarrolladores del sensor.

 

Ver guía para instalar en OSX / Windows / Linux (Castellano)

https://openkinect.org/wiki/Main_Page/es

 

 

Instalar Libfreenect en OS X

La opción más sencilla es instalar la librería mediante Hombrew. Antes de comenzar la instalación debemos tener instalado y configurado XcodeHomebrew y Git.  Más opciones disponibles en el sitio oficial de Open Kinect. Para esto ejecutamos el siguiente comando el la aplicación “Terminal”.

Una vez instalada la librería conectamos la cámara a la corriente y luego al puerto USB y ejecutamos:

 

  • ‘w’ – tilt up (contra picar),
  • ‘s’ – level (nivelar),
  • ‘x’ – tilt down (picar),
  • ‘0’-‘6’ – select LED mode (modo del led),
  • ‘f’ – change video format (formato del video),
  • ‘m’ – mirror video (espejar),
  • ‘o’ – rotate video with accelerometer (rotar video con acelerometro),
  • ‘e’ – auto exposure (auto exposición),
  • ‘b’ – white balance (balance de blancos),
  • ‘r’ – raw color (color original)

 

 

 

SimpleOpenNI > 2.2.1::

En Processing IDE, menú Sketch -> Import Library -> Add Library -> SimpleOpenNI

 

Guía OpenNI

https://code.google.com/archive/p/simple-openni/wikis/Installation.wiki

https://code.google.com/archive/p/simple-openni/downloads

Guía instalación SimpleOpenNI en Windows

1. Descargue e instale Git (http://git-scm.com). Asegúrese de seleccionar “Ejecutar git desde el indicador de comandos de Windows” y “Comprobar el estilo de Windows, confirmar las terminaciones de línea estilo Unix”.
2. Abra la línea de comandos; Vaya al directorio donde desea que se instale su carpeta de origen y clone:

Libertar.io

3. Hay tres dependencias principales que deben instalarse para que libfreenect funcione: libusb-win32, pthreads-win32 y GLUT.

  • Descargar libusb-win32 desde http://sourceforge.net/projects/libusb- win32 /.
    segundo. Extraiga y mueva la carpeta resultante en / libfreenect.
  • Descargue pthreads-win32 desde http://sourceware.org/pthreads-win32/.
    Encuentra el candidato más reciente con release.exe al final. Extraiga y guarde la carpeta en / libfreenect.
    Si está utilizando Microsoft Visual Studio 2010, copie /Pre-built.2/lib/pthreadVC2.dll en / Windows / System32 /. Si utiliza MinGW, copie /Pre-built.2/lib/pthreadGC2.dll a / Windows / System32 / en su lugar.
  • Descargar GLUT de http://www.xmission.com/~nate/glut.html. Encuentra la versión más reciente que termina en “-bin.zip”. Extraiga y guarde la carpeta resultante en / libfreenect. Copie glut32.dll en / Windows / System32 /. Si utiliza Microsoft Visual Studio 2010, copie glut.h en la carpeta / include / GL de su árbol de Visual Studio y en la biblioteca glut32.lib en / lib en el mismo árbol. Si la carpeta GL no existe, créelo. Sin embargo, si está utilizando MinGW, copie glut.h a / include / GL carpeta en el directorio raíz de MinGW.

¡Todas las dependencias están en su lugar!

1. Conecte su Kinect. Después de una búsqueda rápida de controladores, su sistema debe quejarse de que no puede encontrar los controladores correctos, y el LED en el propio Kinect no se iluminará. Esto es normal.
2. Abra el Administrador de dispositivos. Inicie el Panel de control Hardware y Administrador de dispositivos de sonido.
3. Haga doble clic en Xbox NUI Motor. Haga clic en Actualizar controlador en la nueva ventana que aparece.
4. Seleccione “Examinar mi computadora para el software del controlador” y navegue hasta / libfreenect / platform / inf / xbox nui motor /.
5. Después de la instalación, el LED del Kinect debería parpadear en verde. Repita los pasos c y d para Xbox NUI Camera y Xbox NUI Audio.
6. Descargue CMake desde www.cmake.org/cmake/resources/software.html. Obtenga el instalador de .exe más reciente e instálelo.
7. Asegúrese de tener un compilador de trabajo C, ya sea MinGW o Visual Studio 2010.
8. Ejecute CMake-GUI, seleccione / libfreenect como carpeta de origen, seleccione una carpeta de salida y haga clic en las casillas de verificación Agrupadas y Avanzadas para mostrar más opciones.
9. Haga clic en Configurar.  Fakenect no está trabajando en Windows, así que desmarque su casilla.

 

Para Mac OSX

XCode

XCode> Open Developer Tool> More Developer Tools

Imagen

Usar su apple ID

Imagen

Descargar e instalar el .dmg

XQuartz 2.7.2

MacPorts  MacPorts https://trac.macports.org/wiki/UsingMacPortsQuickStart

CMake
Preferences> Security and Privacy > General:
Cambiar a permitir instalar aplicaciones desde cualquier sitio web.

Libtool

Abrir un Terminal (Applications> Utilities> Terminal)

sudo port install libtool

 

Reiniciar el ordenador

 

Libusb

En Terminal:

sudo port install libusb +universal

Reiniciar y Verificar

En Terminal:
port installed
The following ports are currently installed:
libtool @2.4.2_3 (active)
libusb @1.0.9_0+universal (active)

OpenNi

Hacer un folder llamado “kinect” donde prefieras.

ir a http://www.openni.org/openni-sdk/openni-sdk-history-2/

y descargar “OpenNI SDK v1.5.4.0” for MacOSX

Descomprimir en el folder nuevo “kinect” .

En el terminal puedes usar cd (para cambiar de directorio) y ls (listar los contenidos)
cd .. (subir un nivel)

Terminal cambiar directorio hasta
“OpenNI “OpenNI-Bin-MacOSX-Dev-v1.5.4.0”

Correr el comando:
sudo ./install.sh

 

SensorKinect

Descargar contenidos
https://github.com/avin2/SensorKinect

Ir a la carpeta “bin”, extraer “SensorKinect093-Bin-MacOSX-v5.1.2.1.tar.bz2” en la carpeta
En Terminal, ir a bin folder:
sudo ./install.sh

PrimeSenseNite

http://www.openni.org/openni-sdk/openni-sdk-history-2/

Descargar “NiTE v1.5.2.21” for MacOSX. Extraer en la carpeta “kinect.”
Abrir terminal e ir a “NITE-Bin-MacOSX-Dev-v1.5.2.21”
Ejecutar:
sudo ./install.sh

Copiar todos los *. xml  en“NITE-Bin-Dev-MacOSX-v1.5.2.21/Data” a “SensorKinect/Data”
Imagen

Imagen

Demos

Abrir terminal:
Ir al directorio “NITE-Bin-Dev-MacOSX-v1.5.2.21/Samples/Bin/x64-Release”

./Sample-PointViewer

 

 

 

 

 

Otras guías para instalar drivers y librerías de la kinect

OSX 10.8 https://decyborg.wordpress.com/2013/01/19/kinect-on-os-x-10-8-and-processing/
OS X 10.8 http://blog.nelga.com/setup-microsoft-kinect-on-mac-os-x-10-8-mountain-lion/
OSX 10.9 – 10.11 http://blog.nelga.com/setup-microsoft-kinect-on-mac-os-x-10-9-mavericks/
https://msdn.microsoft.com/en-us/library/dn782035.aspx
http://stackoverflow.com/questions/11572107/kinect-for-xbox-360-and-kinect-sdk-1-5/11585419#11585419
https://github.com/OpenKinect/libfreenect
https://forum.ni-mate.com/t/why-doesnt-my-kinect-for-xbox-360-work/29
http://www.magicandlove.com/blog/research/kinect-for-processing-library/

 

 

 

 


, , , , ,

3 Comentarios hasta el momento

MilPublicado  11:23 am - nov 23, 2016

Hasta el día de hoy hay varias opciones para instalar drivers no oficiales para Kinect. …. Creo que he seguido detenidamente los pasos que se muestran en esta página y por fin lo he conseguido. Gracias chicos!

AlayaPublicado  6:44 pm - ene 5, 2017

Muy buena guía para poner en marcha la Kinect xbox 360. La recomiendo

Centro de las Artes San Luis Potosi CentenarioPublicado  7:07 pm - abr 14, 2017

Buena guía para kinect

Deja un comentario

Redes