...
Grundsätzlich lassen sich alle Filter und Effekte, welche wir auf statische Bilder angewendet haben auch auf Video-Sourcen anwenden.
Pixelate
Das folgende Beispiel verwendet den den "Pixelate" filter Filter um das Video grober aufzulösen:
Code Block | ||||
---|---|---|---|---|
| ||||
import processing.video.*; Capture video; int pixelSize = 20; void setup() { size(640, 480); video = new Capture(this, width, height, 30); video.start(); } void draw() { if (video.available()) { video.read(); } for(int x=0; x<width; x+=pixelSize) { for(int y=0; y<height; y+=pixelSize) { int loc = x+y*width; color c = video.pixels[loc]; fill(c); noStroke(); rect(x, y, pixelSize, pixelSize); } } } |
...
ThresholdThreshold
Das folgende Beispiel arbeitet mit einem Grenzwert und zeigt die Pixel entweder Schwarz oder Weiss dar:
Code Block | ||||
---|---|---|---|---|
| ||||
import processing.video.*; Capture video; int threshold = 100; void setup() { size(640, 480); video = new Capture(this, width, height, 30); video.start(); } void draw() { if (video.available()) { video.read(); } loadPixels(); for(int x=0; x<width; x++) { for(int y=0; y<height; y++) { int loc = x+y*width; if(brightness(video.pixels[loc])<threshold) { pixels[loc] = color(255); } else { pixels[loc] = color(0); } } } updatePixels(); } |
...
Weitere Filter
Für Bilder gibt es auch schon eine Menge von vorgefertigten Filtern. Diese können unter diesem Link gefunden werden.
...