A aplicação a seguir ajusta uma determinada imagem aplicando filtros como negativo, escalas de cinza e variação de brilho.
Código:
PImage imgOriginal;
PImage imgCopia = createImage(320, 240, RGB);
PImage imgCopia2 = createImage(320, 240, RGB);
PImage imgCopia3 = createImage(320, 240, RGB);
PImage imgCopia4 = createImage(320, 240, RGB);
PImage imgCopia5 = createImage(320, 240, RGB);
int pos;
float r, g, b;
float brilho;
float valor_do_brilho = -0.5;
void setup() {
size(960, 480);
imgOriginal = loadImage("original.jpg");
for (int x = 0; x < 320; x++) {
for (int y = 0; y < 240; y++) {
pos = y * 320 + x;
r = red (imgOriginal.pixels[pos]) ;
g = green(imgOriginal.pixels[pos]) ;
b = blue(imgOriginal.pixels[pos]) ;
float media = (r + g + b)/3;
float media2 = (0.3*r + 0.59*g + 0.11*b)/1;
float complemento_Blue = 255 - b;
float complemento_Green = 255 - g;
float complemento_Red = 255 - r;
color cor = color(r, g, b);
brilho = brightness(cor);
brilho = brilho * valor_do_brilho;
imgCopia.pixels[pos] = color(complemento_Red, complemento_Green, complemento_Blue);
imgCopia2.pixels[pos] = color(r, g, b);
imgCopia3.pixels[pos] = color(media, media, media);
imgCopia4.pixels[pos] = color(media2, media2, media2);
imgCopia5.pixels[pos] = color(r+brilho, g+brilho, b+brilho);
}
}
}
void draw() {
image(imgCopia, 0, 0);
image(imgCopia2, 320, 0);
image(imgCopia3, 320+320, 0);
image(imgCopia4, 0, 240);
image(imgCopia5, 320, 240);
}
Resultado:
quinta-feira, 18 de junho de 2015
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário