Představení aditivního míchání barev. Projekce primárních barevných světel na obrazovce ukazuje sekundární barvy, kde se dvě překrývají; kombinace všech tří červené, zelené a modré v příslušných intenzitách vytváří bílou.
Barevný model RGB je aditivní barevný model, ve kterém se různými způsoby přidává červené, zelené a modré světlo, aby se reprodukovala široká škála barev. Název modelu pochází z iniciál tří aditivních základních barev, červené, zelené a modré.
Termín RGBA se používá také pro označení červená, zelená, modrá, alfa. Nejedná se o jiný barevný model, ale o znázornění; alfa se používá pro průhlednost.
RGB barevný model sám o sobě nedefinuje, co je míněno kolorimetricky „červená“, „zelená“ a „modrá“, a tak výsledky jejich míchání nejsou specifikovány jako přesné, ale relativní.
Když jsou definovány přesné chromatičnosti červených, zelených a modrých primárek, barevný model se pak stane absolutním barevným prostorem, jako je sRGB nebo Adobe RGB; více podrobností viz RGB barevné prostory.
Tento článek pojednává o konceptech společných pro všechny různé RGB barevné prostory, které používají RGB barevný model, které se používají v jedné implementaci nebo jiné historicky v technologii výroby barevného obrazu elektroniky.
Obrázek RGB spolu s jeho oddělenými složkami R, G a B; Všimněte si, že bílý sníh se skládá ze silné červené, zelené a modré; hnědá stodola se skládá ze silné červené a zelené s malou modrou; tmavě zelená tráva se skládá ze silné zelené s malou červenou nebo modrou; a světle modrá obloha se skládá ze silné modré a středně silné červené a zelené.
Volba „primárních“ barev souvisí s fyziologií lidského oka; dobré primáry jsou podněty, které maximalizují rozdíl mezi reakcemi kuželových buněk lidské sítnice na světlo různých vlnových délek, a tím vytvářejí velký barevný trojúhelník.
Normální tři druhy světlocitlivých fotoreceptorových buněk v lidském oku (kuželovité buňky) reagují nejvíce na žluté (dlouhá vlnová délka nebo L), zelené (střední nebo M) a fialové (krátké nebo S) světlo (vrcholové vlnové délky v blízkosti 570 nm, 540 nm a 440 nm). Rozdíl v signálech přijímaných od těchto tří druhů umožňuje mozku rozlišovat široký gamut různých barev, přičemž je nejcitlivější (celkově) na žlutozelené světlo a na rozdíly mezi odstíny v zeleno-oranžové oblasti.
Jako příklad předpokládejme, že světlo v oranžovém rozsahu vlnových délek (přibližně 577 nm až 597 nm) vstupuje do oka a dopadá na sítnici. Světlo těchto vlnových délek by aktivovalo jak střední, tak dlouhé vlnové kužely sítnice, ale ne rovnoměrně – buňky s dlouhou vlnovou délkou budou reagovat více. Rozdíl v odezvě může být detekován mozkem a spojen s konceptem, že světlo je „oranžové“. V tomto smyslu je oranžový vzhled objektů jednoduše výsledkem světla z objektu, který vstupuje do našeho oka a stimuluje příslušné druhy kuželů současně, ale v různé míře.
Použití tří základních barev není dostačující pro reprodukci všech barev; pouze barvy uvnitř barevného trojúhelníku definovaného chromatičností základních barev mohou být reprodukovány aditivním smícháním nezáporného množství těchto barev světla.
Soubor základních barev, jako jsou primárky sRGB, definuje barevný trojúhelník; smícháním základních barev lze reprodukovat pouze barvy v rámci tohoto trojúhelníku. Barvy mimo barevný trojúhelník jsou zde proto zobrazeny jako šedé. Jsou zde zobrazeny primárky a bílý bod D65 sRGB.
Jedním z běžných použití barevného modelu RGB je zobrazení barev na katodové trubici, displeji z tekutých krystalů nebo plazmovém displeji, jako je televize nebo monitor počítače. Každý pixel na obrazovce může být v hardwaru počítače nebo rozhraní (například „grafická karta“) znázorněn jako hodnoty pro červenou, zelenou a modrou. Tyto hodnoty jsou převedeny na intenzity nebo napětí pomocí gama korekce, takže zamýšlené intenzity jsou reprodukovány na displeji.
Použitím vhodné kombinace červené, zelené a modré intenzity může být zastoupeno mnoho barev. Typické zobrazovací adaptéry v roce 2007 používají až 24 bitů informací pro každý pixel. To je obvykle rozděleno po 8 bitech pro červenou, zelenou a modrou, což dává rozsah 256 možných hodnot nebo intenzit pro každý odstín. S tímto systémem lze specifikovat 16 777 216 (256³ nebo 224) diskrétních kombinací odstínu, sytosti a světlosti, i když ne nutně rozlišit.
RGB je typ komponentního videosignálu, který se používá v průmyslu videoelektroniky. Skládá se ze tří signálů – červeného, zeleného a modrého – nesených na třech oddělených kabelech/kolících. Pro přenos synchronizačních signálů jsou někdy potřeba další kabely. Formáty signálu RGB jsou často založeny na modifikovaných verzích standardů RS-170 a RS-343 pro monochromatické video. Tento typ videosignálu je široce používán v Evropě, protože je to nejkvalitnější signál, který lze přenášet na standardním konektoru SCART. Mimo Evropu není RGB jako formát videosignálu příliš populární; S-Video zaujímá toto místo ve většině mimoevropských regionů. Nicméně téměř všechny počítačové monitory po celém světě používají RGB.
RGB pixely v LCD TV (vpravo: oranžová a modrá barva; vlevo: detail pixelů)
Vzhledem ke korekci gama není intenzita barevného výstupu na zobrazovacích zařízeních počítače normálně přímo úměrná hodnotám R, G a B v obrazových souborech. To znamená, že i když se hodnota 0,5 velmi blíží polovině mezi 0 a 1,0 (plná intenzita), intenzita světla zobrazovacího zařízení počítače při zobrazování (0,5, 0,5, 0,5) je normálně (na standardním 2,2-gamma CRT/LCD) jen asi 22% z toho při zobrazování (1,0, 1,0, 1,0), namísto 50%.
Profesionální kalibrace barev
Správná reprodukce barev v profesionálním prostředí vyžaduje rozsáhlou kalibraci barev všech zařízení zapojených do výrobního procesu. Výsledkem je několik transparentních konverzí mezi barevnými prostory závislými na zařízení během typického výrobního cyklu, aby byla zajištěna barevná konzistence během celého procesu. Spolu s kreativním zpracováním všechny takové zásahy do digitálních obrazů jej přirozeně poškozují snížením jeho gamutu. Proto čím hustší je gamut původního digitalizovaného obrazu, tím více může zpracování podporovat bez viditelné degradace. Profesionální zařízení a softwarové nástroje umožňují manipulaci s 48 bpp (bitů na pixel) obrazem (16 bitů na kanál) za účelem zvýšení hustoty gamutu.
Barevný model RGB mapovaný na kostku. Hodnoty rostou podél osy x (červená), osy y (zelená) a osy z (modrá).
Barva v barevném modelu RGB může být popsána označením, kolik z každé červené, zelené a modré je zahrnuto. Každá může kolísat mezi minimem (plně tmavá) a maximem (plná intenzita). Pokud jsou všechny barvy na minimu, výsledek je černá. Pokud jsou všechny barvy na maximu, výsledek je bílá.
Tyto barvy mohou být kvantifikovány několika různými způsoby:
Hodnoty RGB kódované ve 24 bitech na pixel (bpp) jsou specifikovány pomocí tří 8bitových celých čísel bez znaménka (0 až 255) představujících intenzity červené, zelené a modré (obvykle v tomto pořadí). Například následující obrázek ukazuje tři „plně nasycené“ plochy RGB krychle, rozložené do roviny:
Výše uvedená definice používá konvenci známou jako full-range RGB. Barevné hodnoty jsou také často považovány za hodnoty v rozmezí 0.0 až 1.0, které mohou být mapovány do jiných digitálních kódování.
Full-range RGB používající osm bitů na primární může reprezentovat až 256 odstínů bílo-šedo-černé, 255 odstínů červené, zelené a modré (a stejné směsi těchto), ale méně odstínů jiných odstínů. 256 úrovní nepředstavuje rovnoměrně rozložené intenzity, kvůli gama korekci.
Typicky RGB pro digitální video není plný rozsah. Místo toho video RGB používá konvenci se škálováním a offsety tak, že (16, 16, 16) je černá, (235, 235, 235) je bílá, atd. Například tyto škálování a offsety jsou použity pro digitální RGB definici v CCIR 601.
Velikost paměťového prostoru využitého nekomprimovaným obrazem je určena počtem pixelů v obraze a barevnou hloubkou, do které je každý pixel určen. Ve 24bitovém obraze je každý pixel určen 24bitovou alokací paměti, takže velikost požadovaného prostoru v bitech je 24 × počet pixelů. Pro výpočet paměti požadované v bajtech by mělo být výsledné číslo vyděleno 8 (8 bitů v bajtu).
Např. Velikost 24bitového obrazu 640 × 480 pixelů
24 × 640 × 480 = 7 372 800 bitů
7 372 800 / 8 = 921 600 bajtů
Existuje také 16 bpp mód někdy známý jako Highcolor, ve kterém je buď 5 bitů na barvu, nazývaný 555 mód, nebo extra bit pro zelenou (protože zelená složka nejvíce přispívá k jasu barvy v lidském oku), nazývaný 565 mód. Obecně, RGB reprezentace potřebuje 1 bit více pro červenou než modrou a 1 bit více pro zelenou.
Takzvaný 32 bpp mód je téměř vždy v přesnosti shodný s 24 bpp módem; stále je tam jen osm bitů na komponentu a osm bitů navíc se často vůbec nepoužívá. Důvodem existence 32 bpp módu je vyšší rychlost, s jakou většina moderního hardwaru přistupuje k datům, která jsou zarovnána na bajtové adresy rovnoměrně dělitelné dvěma mocninami, v porovnání s daty, která nejsou tak zarovnána.
Některý grafický hardware umožňuje použít nepoužitý byte jako 8-bitové paletové překrytí. Určitá položka palety (často 0 nebo 255) je označena jako průhledná, tzn. kde překrytí je tato hodnota, je zobrazen obraz skutečné barvy. V opačném případě je hodnota překrytí vyhledána v paletě a použita. To umožňuje, aby prvky grafického uživatelského rozhraní (jako jsou nabídky nebo kurzor myši) nebo informace byly překryty nad obrazem skutečné barvy bez jeho úpravy. Když je třeba překrytí odstranit, je jednoduše vymazáno na průhlednou hodnotu a obraz skutečné barvy je zobrazen znovu. Tato funkce byla často nalezena na grafickém hardwaru pro pracovní stanice Unix v 90. letech a později na některých grafických kartách PC (především těch od Matroxu). Grafické karty PC (a systémy, ve kterých jsou používány) však nyní mají dostatek paměti pro použití jako záložní úložiště a tato funkce většinou zmizela.
48-bitový režim (někdy také nazývaný 16-bitový režim)
„16bitový režim“ může také odkazovat na 16 bitů na komponentu, což vede k 48 bpp. Tento režim umožňuje reprezentovat 65536 tónů každé barevné komponenty místo 256. To se používá především v profesionálních úpravách obrázků, jako Adobe Photoshop pro zachování větší přesnosti, když je na obrázku použita sekvence více než jednoho algoritmu filtrování obrázků. Při pouhých 8 bitech na komponentu se chyby zaokrouhlování nahromadí s každým použitým algoritmem filtrování, což zkreslí konečný výsledek.
S potřebou kompozice obrázků přišla varianta RGB, která obsahuje navíc 8-bitový kanál pro průhlednost, takže výsledkem je 32 bpp formát. Průhledný kanál je běžně známý jako alfa kanál, takže formát se jmenuje RGBA. Všimněte si, že jelikož se v RGB modelu nic nemění, RGBA není odlišný barevný model, je to pouze souborový formát, který integruje informace o průhlednosti spolu s informacemi o barvách ve stejném souboru. To umožňuje alfa prolnutí obrázku s jiným a je to vlastnost formátu PNG. (Poznámka: RGBA není jedinou metodou, která má průhlednost v grafice. Alternativy viz Průhlednost (grafika).
Digitální kamery, které používají obrazový snímač CMOS nebo CCD, často pracují s RGB systémem; snímač může mít mřížku červených, zelených a modrých detektorů uspořádanou tak, že první řádek je RGRGRGRG a další GBGBGB a tak dále. V Bayerově filtru je zelené dáváno více detektorů než červené a modré, aby se dosáhlo vyššího rozlišení jasu než rozlišení chrominance. Demoasiční a matriční procesy jsou nutné pro mapování RGB měření kamery do standardního barevného prostoru RGB.
Barvy použité v návrhu webových stránek jsou běžně specifikovány pomocí RGB; viz webové barvy pro vysvětlení, jak jsou barvy použity v HTML a souvisejících jazycích. Zpočátku omezená barevná hloubka většiny video hardwaru vedla k omezené barevné paletě 216 RGB barev, definovaných Netscape Color Cube. Nicméně s převahou 24-bitových displejů, použití plných 16,7 milionů barev HTML RGB barevného kódu již nepředstavuje pro většinu diváků problém.
Stručně řečeno, webová bezpečná barevná paleta se skládá z 216 kombinací červené, zelené a modré, kde každá barva může nabývat jedné ze šesti hodnot (v hexadecimální soustavě): #00, #33, #66, #99, #CC nebo #FF (na základě rozsahu 0 až 255 pro každou výše uvedenou hodnotu).
Jasně, 6³ = 216. Tyto hexadecimální hodnoty = 0, 51, 102, 153, 204, 255 v desítkové soustavě, což = 0%, 20%, 40%, 60%, 80%, 100% z hlediska intenzity. To se zdá být v pořádku pro rozdělení 216 barev do kostky o rozměru 6. Nicméně bez gama korekce je vnímaná intenzita na standardním 2.5 gama CRT / LCD pouze: 0%, 2%, 10%, 28%, 57%, 100%. Podívejte se na aktuální webovou bezpečnou barevnou paletu pro vizuální potvrzení, že většina vyráběných barev je velmi tmavá, nebo se podívejte na Xona.com Color List pro porovnání správných barev vedle jejich ekvivalentu bez správné gama korekce.
RGB barevný model pro HTML byl formálně přijat jako internetový standard v HTML 3.2, nicméně byl používán již nějakou dobu předtím.
Historie barevného RGB modelu
RGB barevný model je založen na Young-Helmholtzově teorii trojbarevného vidění a na Maxwellově barevném trojúhelníku, který tuto teorii rozpracoval.