Konwersja skali szarości na RGB jest prosta. Po prostu użyj R = G = B = wartość szara. Podstawową ideą jest to, że kolor (widziany na monitorze pod względem RGB) jest systemem dodatków.
http://en.wikipedia.org/wiki/Additive_color
Dlatego dodawanie czerwonego na zielony wydajnością żółty. Dodaj trochę niebieskiego do tej mieszanki w równych ilościach, a otrzymasz neutralny kolor. Full on [czerwony, zielony, niebieski] = [255 255 255] daje biały kolor. [0,0,0] wydajność monitora czarny. Wartości pośrednie, gdy R = G = B są wszystkie równe, dają nominalnie neutralne kolory o danym poziomie szarości.
Drobny problem zależy od tego, jak postrzegasz kolor, może nie być idealnie neutralny. Zależy to od kalibracji monitora (lub drukarki). Są interesujące głębie nauki o kolorach, z których moglibyśmy przejść od tego momentu. Zatrzymam się tutaj.
No, nie. W rzeczywistości NIE będziesz mieć czarno-białego obrazu. Będziesz miał obraz złożony z różnych odcieni szarości. Na niższym poziomie rzeczywiste piksele będą składać się z czerwonych, zielonych i niebieskich kropek, na poziomach intensywności, tak że osoba oglądająca je z odległości zobaczy neutralny obraz. Wykonaj pętlę oczną i popatrz na nominalnie szare piksele na monitorze. Zobaczysz połączenie czerwonych, zielonych i niebieskich kropek. –
Masz rację, że na ekranie renderowany obraz składa się ze wszystkich RGB patrzących na maginację. Tak więc wszystkie kolory będą reprezentowane na ekranie. Trudno mi zrozumieć, w jaki sposób "Będziesz miał obraz złożony z różnych odcieni szarości" różni się od obrazu w skali szarości. – Erik
Erik, nie ma, ale "obraz w skali szarości" różni się bardzo od "obrazu czarno-białego" (który jest tylko dwoma kolorami). – Aistina