Omrekening van kleurenwielen

Zelfde kleuren, iets andere basis

Ik was benieuwd of je eenvoudig RGB in RYB kunt omrekenen. In het onderstaande laat ik zien dat dit inderdaad mogelijk is. De praktische waarde hiervan is beperkt omdat het RYB-systeem vrijwel nooit in technische toepassingen gebruikt wordt. 

Het artistieke kleurenwiel (RYB) bevat precies dezelfde kleuren als het RGB-kleurenwiel.  Het artistieke kleurenwiel is tussen rood en geel behoorlijk uitgerekt: geel staat daar op 120 graden in plaats van 60. Tussen groen en blauw staan de kleuren weer dichter bij elkaar: in plaats van 120 graden slechts 60 graden. Voor het omrekenen van de RGB naar RYB moeten we zeven gebieden onderscheiden. Alle 100% verzadigde kleuren kunnen als mengsels van twee kleuren worden weergegeven. In de RGB of RYB-waarden voor een 50% lichte kleur staat daarom steeds één kleur op 0 en één op 255.

De twee laatste gebieden zijn mengsels van rood en blauw zonder geel of groen. Daar verandert dus niets en hoeven we niets om te rekenen: RGB(x1,0,x2)=RYB(x1,0,x2).

Eenvoudige omrekening

Voor de omrekening tussen de twee cirkels moeten we ons realiseren dat puur geel in het RGB-systeem wordt weergegeven als RGB(255,255,0). Willen we RYB(255,y,0) in gebied 1 omrekenen in RGB, dan moeten we in RGB voor y zowel rood als groen toevoegen: je zou dan RGB(255+y,y,0) krijgen, maar de R-waarde moet wel 255 zijn. Daarom moeten we de G waarde corrigeren door die te vermenigvuldigen met (255/(255+y)). De RGB-waarde is dan RGB(255,y*255/(255+y),0). Hebben we bijvoorbeeld RYB(255,60,0), dan ontstaat hieruit RGB(255,49,0). Voor de andere gebieden gelden dergelijke redeneringen. Voor gebied 3 is het heel eenvoudig: terwijl de R waarde in RGB geleidelijk afloopt van 255 naar 0, loopt de B-waarde in RYB van 0 naar 255 op: RGB(x, 255,0) wordt RYB(0,255,y). Dus y=255-x. In de gebieden waar G=0 vinden we kleuren die een mengsel zijn van rood en blauw: de RGB en RYB-waarden zijn daar dus gelijk.

Je krijgt dan de volgende methoden voor de verzadigde kleuren met een lichtheid van 50%.

Bovenstaande formules geven een methode om de twee cirkels in elkaar om te rekenen: de op de gevoeligheden van het oog gebaseerde RGB-cirkel en de op artistieke principes gebaseerde RYB cirkel. Reken ik bij voorbeeld puur groen = RGB(0,255,0 in RYB(0,255,255) dan betekent dit niet dat ik puur groen krijg als ik blauw en geel licht meng! Als ik dit doe dan geeft alleen het RGB-systeem het juiste resultaat: ik krijg dan afhankelijk van de verhouding wit, een gele of blauwe kleur. Groen krijg ik echt niet.  In het RYB-systeem wordt wit weergegeven met RYB(255,255,255). Meng ik rood, geel in blauw in werkelijkheid dan houd ik een rode kleur over omdat geel licht in het RGB-systeem uit rood en groen bestaat. RYB(255. 255. 255) = RGB(255,0,0) + RGB(255,255,0) + RGB(0,0,255) = RGB(255,255,255) + RGB(255,0,0), wit + rood of RGB(255,128,128).  De RYB-cirkel is artistiek soms handig maar wetenschappelijk onjuist. 

Onverzadigde kleuren en kleuren met een andere lichtheid

Met bovenstaande tabel zijn alle kleuren met een lichtheid van 50% en een 100% verzadiging om te rekenen: kleuren waarin één waarde 0 is en een andere 255. Alle andere waarden zijn eenvoudig om te rekenen via de berekening van H, S en L. Neem bijvoorbeeld de kleur RGB(120, 80, 43). Omgerekend in HSL is die kleur HSL(29⁰;47%;31%). De pure verzadigde kleur met een lichtheid van 50% is HSL(29⁰, 100%, 50%) of in RGB(255,123,0). Die kan met bovenstaande tabel omgerekend worden in RYB(255,238,0). Als je van die RYB-waarde de tint H berekent (de hoek in de artistiek kleurencirkel) dan kom je om H=56. Lichtheid en verzadiging blijven natuurlijk hetzelfde. Dus de kleur wordt HSL(56⁰,47%,31%) in het RYB-systeem. Omgerekend naar RYB-waarden levert dat RYB(120, 115, 43) op. Je hoeft dat natuurlijk nooit zelf te doen omdat er goede online-rekenhulpen bestaan zoals https://convertingcolors.com/ .

Voor wie geïnteresseerd is in de omrekening van RGB, RYB en HSL. Hier staat de VB-code die ik daarvoor geschreven het.

 

____________