jueves, 30 de abril de 2020

control de píxels en una imatge amb processing

Aquest post posa en pràctica els continguts del link de Daniel Shiffman

NOTES PREVIES

  1. convé que el programa es guardi. Quan fas SAVE ja crea una carpeta on posarà tots els programes que necessita
  2. per descarregar una llibreria convé fixar-se amb el Sketchbook. No canviar carpetes de lloc ni PATH perquè llavors no engengarà el programa
  3. tal com diu l'autor al link
  4. DescriptionThe image() function draws an image to the display window. Images must be in the sketch's "data" directory to load correctly. Select "Add file..." from the "Sketch" menu to add the image to the data directory, or just drag the image file onto the sketch window. Processing currently works with GIF, JPEG, and PNG images.

control de píxels en una imatge amb processing

a la ITC BT 39 es tracta les tanques electrificades. Un impuls molt i molt breu però d'alt voltatge transmet una energia a l'animal que s'acosta i toca la tanca.


per a calcular l'energia es pot seguir el formulari proposat del link.

la gràfica ens mostra dos impulsos.
https://agriculture.gouv.fr/sites/minagri/files/documents/pdf/Rapport_BCMA_AVK_FINAL.pdf

Reomplim amb PAINT i un color pur RGB


en aquesta segona gràfica veiem les escales de temps (abscises) i voltatge (ordenades).

PImage img;

void setup() {
  size(200, 200);
  img = loadImage("sunflower.jpg");
}

void draw() {
  loadPixels(); 
  // Since we are going to access the image's pixels too  
  img.loadPixels(); 
  for (int y = 0; y < height; y++) {
    for (int x = 0; x < width; x++) {
      int loc = x + y*width;
      
      // The functions red(), green(), and blue() pull out the 3 color components from a pixel.
      float r = red(img.pixels[loc]);
      float g = green(img.pixels[loc]);
      float b = blue(img.pixels[loc]);
      
      // Image Processing would go here
      // If we were to change the RGB values, we would do it here, 
      // before setting the pixel in the display window.
      
      // Set the display pixel to the image pixel
      pixels[loc] =  color(r,g,b);          
    }
  }
  updatePixels();
}

No hay comentarios:

Publicar un comentario