Potresti prendere ispirazione da quello che hai fatto per "sviluppare" la Domenica, oppure per "inverdire" gli smiley...
...cioè: scrivere un comando che "legga" i colori di un pixel e, se questo è troppo rosso, lo faccia virare verso il verde.
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...
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){...}
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...
Ora tocca a te: trova nuove formule di correzione...