Il tuo compito è acquisire un'immagine sRGB di 24 BPP e produrre la stessa immagine ingrandita 3 volte in subpixel rossi, verdi e blu. L'immagine risultante sarà interamente realizzata con pixel neri, rossi, verdi e blu puri.
Ogni pixel dell'immagine sorgente, quando ingrandito, produce una disposizione di 9 sub-pixel che possono essere attivati o disattivati (ovvero il rispettivo colore o nero). La disposizione specifica utilizza tre colonne di rosso, verde e blu, in questo ordine, in questo modo:
(Notare che i bordi su questi "pixel" sono solo a scopo dimostrativo.)
Poiché ciascuno dei nove subpixel può essere solo attivato o disattivato, sarà necessario quantizzare l'immagine di input e utilizzare diversi modelli di subpixel per raggiungere 3 livelli di luminosità.
Per ogni subpixel nell'immagine:
- Per i livelli di colore 0-74, tutti i sottopixel devono essere neri.
- Per i livelli di colore 75-134, il sottopixel medio dovrebbe essere il rispettivo colore e gli altri due dovrebbero essere neri.
- Per i livelli di colore 135-179, il sottopixel medio dovrebbe essere nero e gli altri due dovrebbero essere il rispettivo colore
- Per i livelli di colore 180-255, tutti e tre i subpixel devono essere del rispettivo colore
Ho scelto queste gamme di livelli perché sono proprio quelle che sembrano belle
Applica questa trasformazione a tutti i pixel dell'immagine e genera l'immagine ingrandita subpixel.
Esempi a pixel singolo
rgb (40, 130, 175) produrrà questo modello:
rgb (160, 240, 100) produrrà questo modello:
Esempi di immagini complete
Immagini provenienti da Wikipedia
Regole e note
- L'input e l'output possono essere in qualsiasi formato conveniente, sia che si tratti di file di immagini reali o di elenchi (possibilmente nidificati) di valori RGB.
- Si può presumere che i pixel siano nello spazio colore sRGB con 24BPP.
Buon golf!