import org.openkinect.*;
import org.openkinect.processing.*;
Kinect kinect;
int kWidth = 640;
int kHeight = 480;
int kAngle = 15;
int tolerancia = 10;
int movimento;
PImage imagemAnterior;
PImage imagemAtual;
void setup() {
size(kWidth*2, kHeight);
kinect = new Kinect(this);
kinect.start();
kinect.enableDepth(true);
kinect.tilt(kAngle);
imagemAnterior = new PImage(kWidth, kHeight);
}
void draw() {
// draw the raw image
imagemAtual = kinect.getDepthImage();
image(imagemAtual, 0, 0);
imagemAtual.loadPixels();
imagemAnterior.loadPixels();
movimento = 0;
for (int i=0; i < kWidth*kHeight; i++) {
if (brightness(imagemAtual.pixels[i]) - brightness(imagemAnterior.pixels[i])
> tolerancia) {
movimento++;
}
}
println(movimento);
fill(0);
text("TILT: " + kAngle, 10, 20);
imagemAnterior.copy(imagemAtual,0,0,imagemAtual.width, imagemAtual.height,
0,0,imagemAtual.width, imagemAtual.height);
}
void keyPressed() {
if (key == CODED) {
if (keyCode == UP) {
kAngle++;
} else if (keyCode == DOWN) {
kAngle--;
}
kAngle = constrain(kAngle, 0, 30);
kinect.tilt(kAngle);
}
}
void stop() {
kinect.quit();
super.stop();
}