Suggerimenti

  1. Potresti prendere ispirazione da quello che hai fatto per "sviluppare" la Domenica, oppure per "inverdire" gli smiley...

  2. ...cioè: scrivere un comando che "legga" i colori di un pixel e, se questo è troppo rosso, lo faccia virare verso il verde.

  3. Come si fa a vedere se un pixel è rosso? Beh, si guarda il valore della sua componente rossa... Ma questo non è sufficiente: nel bianco, come abbiamo visto, il valore della componente rossa è massimo (255), ma non diremmo che il bianco è rosso...

  4. Un pixel è rosso quando la sua componente rossa è più alta di quelle blu e verde. Per esempio, un pixel con r=100, b=10, g=10 è di certo piuttosto rosso. Un metodo per vedere se un pixel è rosso potrebbe essere: prendere il valore della sua componente rossa, sottrarre la componente verde e quella blu, e vedere se quello che rimane è maggiore di un certo valore soglia:

    c = img.getPixel(); r = c[0]-c[1]-c[2]; if(r>10){...}

    a completare questo comando in modo da annerire i punti rossi dell'immagine.

  5. c = img.getPixel(); r = c[0]-c[1]-c[2]; if(r>10){img.setPixel([0,0,0])}

    annerisce i pixel rossi. Com'è, come effetto? Non troppo naturale, eh? Prova a inverdirli brutalmente, usando un verde shocking ([0,255,0]) invece del nero...

  6. Ora tocca a te: trova nuove formule di correzione...

  7. Prova questo codice:

    c = img.getPixel(); r = c[0]-c[1]-c[2]; if
    (r>10){img.setPixel([r,1.3*r,r])}