Correzione gamma su un'immagine in Android
-
12-12-2019 - |
Domanda
Sto costruendo un'app Android che fornisce all'utente alcune funzionalità di elaborazione delle immagini.Ma prima di applicare qualsiasi funzione di trasformazione dell'immagine vorrei fare la correzione gamma per migliorare l'immagine.So come eseguire la correzione gamma ma non so quale valore gamma usare come l'immagine stessa non ha il valore gamma con cui è stata creata l'immagine.Qualsiasi informazione su come selezionare un valore Gamma per una particolare immagine sarà molto utile.
Soluzione
Sembra che ciò che vuoi veramente è schiarire o scurire la luminosità media di un'immagine per abbinare un valore ottimale.Sì, la funzione Gamma può farlo.Potrebbe non essere la scelta migliore, infatti per un'esposizione inferiore o eccessiva, una semplice moltiplicazione lineare potrebbe essere migliore.Ma andiamo con Gamma per ora.
Misurare la luminosità media dell'immagine e chiamarlo a
, con valori da 0-255.Hai un bersaglio per la luminosità ottimale, chiamiamo quel t
.Se la gamma sconosciuta è g
, ottieni:
t/255 = (a/255)^g
.
La risoluzione per g
dà:
g = log(t/255) / log(a/255)
.