// exercice 1 // conversion en niveaux de gris // version naive et version CIE PImage ima = loadImage("ADD.png"); color c,nc; colorMode(RGB,255,255,255); size(ima.width,ima.height); image(ima,0,0); for (int x=0;x cr){gmini = cr;} if (gmaxi < cr){gmaxi = cr;} } } print(gmini);print(" ");print(gmaxi);println(); seuil = (gmini + gmaxi)/2; for (x=0;x seuil) { erreur = - gmaxi + cr; set(x,y,color(255,255,255)) ;} else { erreur = cr - gmini; set(x,y,color(0,0,0)) ; } cr = red(get(x+1,y)); nc = color(cr+5*erreur/8,cr+5*erreur/8,cr+5*erreur/8);set(x+1,y,nc); cr = red(get(x,y+1)); nc = color(cr+1*erreur/8,cr+1*erreur/8,cr+1*erreur/8);set(x,y+1,nc); cr = red(get(x+1,y+1)); nc = color(cr+erreur/4, cr+erreur/4, cr+erreur/4);set(x+1,y+1,nc); } } /** EXERCICE 3 Morphing entre deux images de meme taille P. Cubaud novembre 2007 **/ PImage imaD, imaF, imaN; int NIM = 80; int x,y,k; float cr,cg,cb; void setup() { imaD = loadImage("depart.gif"); imaF = loadImage("finale.gif"); imaN = imaD.get(); colorMode(RGB,255,255,255); size(imaD.width,imaD.height); k = 0; //frameRate(1); } void draw() { for (x=0;x