Sto cercando di implementare un metodo di equalizzazione dell'istogramma (HE) per un UIImage nella mia app per iPhone.Equalizzazione dell'istogramma con correzione del colore (iPhone/obiettivo-C)
ho letto il seguente:
http://en.wikipedia.org/wiki/Histogram_equalization
ma dice:
Ancora, è da notare che applicando lo stesso metodo sul rosso, verde, e componenti blu di un RGB l'immagine può produrre cambiamenti drammatici nel bilanciamento dei colori dell'immagine poiché le relative distribuzioni dei canali cromatici cambiano a seguito dell'applicazione dell'algoritmo. Tuttavia, se l'immagine viene prima convertita in un altro spazio colore, in uno spazio colore Lab, o in uno spazio colore HSL/HSV in particolare, l'algoritmo può essere applicato al canale di luminanza o valore senza provocare modifiche alla tonalità e alla saturazione dell'immagine .
Quindi questo sarebbe un approccio fattibile?
- dati Grab UIImage e la conversione da RGB a HSL
- Applicare HE sul canale di luminanza
- dati riconvertire RGB
- Crea nuovo UIImage dai dati
Questo sarà lenta, Mi chiedo? Inoltre, avrò a che fare con dati 8/16/24 bit in modo diverso, in quanto non ho idea del tipo di immagine che verrà utilizzata con la mia app? O posso assumere 24 bit per le immagini in iPhone?
Apprezzerei qualsiasi suggerimento per il codice C obiettivo che esegue l'equalizzazione dell'istogramma corretta colore.
ho guardato la biblioteca di seguito, ma non fa alcuna correzione del colore per HE:
Grazie!
Esiste un'implementazione HE semplice come risposta a questa domanda: http://stackoverflow.com/questions/3278560/uiimage-implementing-an-auto-levels-algorithm/3306089#3306089 Ma non funzionerà in altri spazi di colori rispetto alle immagini native. – tonklon
Grazie, l'ho visto. Volevo ulteriori informazioni sull'aspetto della correzione del colore ... –