#15: Ruído

A tarefa foi a seguinte: "Criar uma aplicação que, empregando variáveis para controle de valores, realiza o processo abaixo numa imagem à sua escolha"

Para criar essa aplicação, foi utilizado o exercício feito em sala, acrescentado ao processo apenas a parte referente ao efeito de ruído.



// criar uma aplicação que, empregando variáveis para controle de valores, realiza o processo abaixo numa imagem à sua escolha:

PImage imgOriginal;
PImage imgC = createImage(320, 240, RGB);
PImage imgR = createImage(320, 240, RGB);
PImage imgG = createImage(320, 240, RGB);
PImage imgY = createImage(320, 240, RGB);
PImage imgRuido = createImage(320, 240, RGB);
color corOriginal, corC, corR, corG, corY, corRuido;
float r, g, c, b;

void setup() {
  size(1600, 240);
  imgOriginal = loadImage("cidade.jpg");
  efeito();
  image(imgOriginal, 0, 0);
  image(imgRuido, 320, 0);
  image(imgC, 640, 0);
  image(imgR, 960, 0);
  image(imgY, 1280, 0);
}

void efeito() {
  for (int x = 0; x < 320; x++) {
    for (int y = 0; y < 240; y++) {
      corOriginal = imgOriginal.get(x, y);
      float r = red(corOriginal);
      float g = green(corOriginal);
      float b = blue(corOriginal);
      float ruido = round(random(-30, 60));

      corRuido = color(r+ruido, g+ruido, b+ruido);
      imgRuido.set(x, y, corRuido);  

      c = (0.3*r)+(0.59*g)+(0.11*b); //cinca correto
      corC = color(c+ruido, c+ruido, c+ruido);
      imgC.set(x, y, corC);
     
      corR = color(c+ruido, 0, 0);
      imgR.set(x, y, corR);
     
      corY = color(c+ruido, c+ruido, 0);
      imgY.set(x, y, corY);
       
    }
  }
}

Share this:

CONVERSATION

0 comentários:

Postar um comentário