Interactive project based on surveillance and created using Processing.
In his book 1984, George Orwell spoke of a surveillance society where “Big Brother is watching you”. We are increasingly living in a world where this is the case. Everywhere you go the eye follows you.
code used:
import processing.video.*;
Capture video;
PImage prevFrame;
float threshold = 150;
int Mx = 0;
int My = 0;
int ave = 0;
int ballX = width/8;
int ballY = height/8;
int rsp = 5;
void setup() {
fullScreen();
video = new Capture(this, width, height, 30);
video.start();
prevFrame = createImage(video.width, video.height, RGB);
}
void draw() {
if (video.available()) {
prevFrame.copy(video, 0, 0, video.width, video.height, 0, 0, video.width, video.height);
prevFrame.updatePixels();
video.read();
}
loadPixels();
video.loadPixels();
prevFrame.loadPixels();
Mx = 0;
My = 0;
ave = 0;
for (int x = 0; x < video.width; x ++ ) {
for (int y = 0; y < video.height; y ++ ) {
int loc = x + y*video.width;
//(width-1-x) + y*video.width;
color current = video.pixels[loc];
color previous = prevFrame.pixels[loc];
float r1 = red(current);
float g1 = green(current);
float b1 = blue(current);
float r2 = red(previous);
float g2 = green(previous);
float b2 = blue(previous);
float diff = dist(r1, g1, b1, r2, g2, b2);
if (diff > threshold) {
pixels[loc] = video.pixels[loc];
Mx += x;
My += y;
ave++;
}
else {
pixels[loc] = video.pixels[loc];
}
}
}
fill(255);
rect(0, 0, width, height);
if (ave != 0) {
Mx = Mx/ave;
My = My/ave;
}
if (Mx > ballX + rsp/2 && Mx > 50) {
ballX+= rsp;
}
else if (Mx < ballX – rsp/2 && Mx > 50) {
ballX-= rsp;
}
if (My > ballY + rsp/2 && My > 50) {
ballY+= rsp;
}
else if (My < ballY – rsp/2 && My > 50) {
ballY-= rsp;
}
updatePixels();
noStroke();
fill(200, 200, 200);
//// ellipse(ballX, ballY, 20, 20);
//rect(0,0,320,240);
PImage img;
img = loadImage(“eye.png”);
image(img, ballX, 0, 320, 260);
img = loadImage(“eye2.png”);
image(img, -50, 0, 400,250);
}