画像を重ねる(多重露光する)
void setup(){
size(640, 424);
PImage image1 = loadImage("image1.jpg");
PImage image2 = loadImage("image2.jpg");
image(image1, 0, 0);
tint(255, 255, 255, 128);
image(image2, 0, 0);
}[f:id:aa_debdeb:20151028133452j:plain]
特定の色だけを残してモノクロにする
void setup(){
size(512, 512);
noStroke();
PImage image = loadImage("lena.jpg");
image(image, 0, 0);
loadPixels();
for(int x = 0; x < width; x += 1){
for(int y = 0; y < height; y += 1){
color c = pixels[y * width + x];
float distance = abs(red(c) - 138) + abs(green(c) - 43) + abs(blue(c) - 226);
if(distance > 160){
float grey = 0.30 * red(c) + 0.59 * green(c) + 0.11 * blue(c);
pixels[y * width + x] = color(grey, grey, grey);
}
}
}
updatePixels();
}