« Kinect » : différence entre les versions

De Wikilipo
Aller à la navigation Aller à la recherche
Ligne 129 : Ligne 129 :
===Distinguer===
===Distinguer===
détache les formes utiles à l'interaction de l'arrière-fond capté par la kinect (profondeur de champ)
détache les formes utiles à l'interaction de l'arrière-fond capté par la kinect (profondeur de champ)
=== Project soundDesign===
une application illustrant l'utilisation de la kinect pour moduler la composition spectrale et harmonique d'une pièce musicale
= Le stage de mars-avril 2012 aux ac de l'Université de Genève=
= Le stage de mars-avril 2012 aux ac de l'Université de Genève=



Version du 12 mars 2012 à 00:46

Procédure d'installation de la Kinect Sous MacOS



Installation de librairies kinect en Processing sous macos x, linux et windows

Mac OS

  • Aller sur ce lien.
  • Télécharger openkinect.zip
  • Le décompresser
  • Copier le répertoire dans Documents/Processing/librairies

Mac OS, Linux, Windows

Quelques exemples tirant parti des librairies openkinect (D.E. Stanley, HEAD, Genève)

Mettre ces sketches dans un répertoire sous Documents/Processing/ Jouer ces sketches dans Processing via File/Sketchbook/votreRepertoireTest

Canevas

Ce sketch ne fait rien... sauf initialiser l'espace de travail; il montre la structure de base d'un programme Processing utilisant la Kinect.

import librarytests.*;
import org.openkinect.*;
import org.openkinect.processing.*;

Kinect kinect;

void setup() {
 kinect = new Kinect(this);
 kinect.start();
}

void draw() {

}


void stop() {
 kinect.quit();
 super.stop(); 
}

Varicelle

Fait deux choses:

  1. capte et renvoie l'image formée par la Kinect
  2. contrôle l'orientation angulaire verticale de la kinect par l'intermédiaire de la souris (kinect.tilt)

NB: il s'agit aussi de tester la caméra infrarouge. Essayez avec une télécommande de télé ou une led infrarouge quelconque

import librarytests.*;
import org.openkinect.*;
import org.openkinect.processing.*;

Kinect kinect;

void setup() {
  size(640,480);  //standard kinect screen
 kinect = new Kinect(this);
 kinect.start();
 kinect.enableIR(true);
}

void draw() {
  PImage img = kinect.getVideoImage();
  image(img,0,0);
}

void mouseMoved() {
 float t = map(mouseY, 0,height,30,-30);
 println(t);
 kinect.tilt(t);
}

void stop() {
 kinect.quit();
 super.stop(); 
}

Alentour

Repère le point le plus proche de la Kinect, et le marque d'un rond rouge, plus ou moins gros selon la distance.

import librarytests.*;
import org.openkinect.*;
import org.openkinect.processing.*;

Kinect kinect;

void setup() {
  size(640, 480);
 kinect = new Kinect(this);
 kinect.start();
 kinect.enableDepth(true);
}

void draw() {
  int closestValue = 4096;
  int closestIndex = -1;
  
  // draw the raw image
  int[] rawDepth = kinect.getRawDepth();
  
  for (int i=0; i <640*480; i++) {
    if (rawDepth[i] > 0 && rawDepth[i] < closestValue) {
      closestValue = rawDepth[i];
     closestIndex = i; 
    }
  }
  
  image(kinect.getDepthImage(),0,0,640,480);
  
  if (closestIndex > -1) {
    fill(255,0,0);
    ellipse(closestIndex % 640, closestIndex / 640, closestValue*0.1, closestValue*0.1);
  
  }
}

void stop() {
 kinect.quit();
 super.stop(); 
}

Distinguer

détache les formes utiles à l'interaction de l'arrière-fond capté par la kinect (profondeur de champ)

Le stage de mars-avril 2012 aux ac de l'Université de Genève

Le fil rouge

le 27 mars 2012

  • Exemples d'utilisation de la kinect dans les arts électroniques et numériques
    • Emoshan
    • Project Sound Design
    • exemples de réalisations d'art numérique/électronique
  • Mise en place de l'IDE sous Processing, les principales librairies open source disponibles à ce jour
  • Initiation aux principales données accessibles à travers la kinect:
    • l'image vidéo rgb;
    • la Depth Image (mesure de distance et reconnaissance de proximité par IR en 2D);
    • les Point Clouds (nuages de points IR, la 3D et ses applications interactives);
    • la reconnaissance du corps et ses mouvements - openNI et les Skeleton Data.

le 3 avril 2012

  • Projets à réaliser, quelques pistes:
    • tirant parti de la Depth Image, le crayon invisible et les sélecteur d'images;
    • tirant parti du Point Cloud, le clavier virtuel;
    • tirant parti des Skeleton Data, l'accordéon virtuel et la dansa comme instrument de musique
    • projets proposés par les stagiaires.

Le code étudié au cours de l'atelier

(sera mis en ligne à l'issue de l'atelier)

Documentation

langage

sites, blogs, réseaux sociaux

ressources bibliographiques, articles, sites