2 Reprezentado de koloroj

ĉirkaŭ la jaro 1980 kolora ekrano estis ankoraŭ lukso, kaj same la ekstra memoro necesa por stori la informon pri koloroj. Intertempe kolora prezentado iĝis normala, kaj la bonmezura uzo de koloroj povas igi retpaĝojn pli allogaj, pli interesaj kaj ankaŭ pli klaraj.

Kiam oni prezentas koloran foton, la koloroj venas "el la naturo", de la fotitaj objektoj mem. Sed kiam oni uzas kolorajn tekstojn aŭ desegnas koloran emblemon, oni mem devas elekti la kolorojn, kaj tiam estas utile scii pri la interna reprezentado de koloroj en komputiloj.

Same kiel en la naturo, ĉiuj tiuj sistemoj baziĝas sur la miksado de (bazaj) koloroj. Sed male al la naturo, kiu miksas kolorojn el la kontinua spektro de la suna lumo, la tekniko uzas nur malmultajn bazajn kolorojn.

2.1 La sistemo RVB (RGB)

En komputiloj oni plej ofte kodas kolorojn surbaze de tri "bazaj koloroj", taŭge kombinataj por formi aliajn kolorojn.

Ekzistas du manieroj kombini kolorojn: la adicia kaj la subtraha maniero. La adicia maniero kombinas lumon: Ju pli da koloroj oni kombinas, des pli hela estas la rezulto.

La subtraha metodo miksas ne lumon, sed farbojn, kiuj reflektas lumon; ekzemple blua farbo reflektas bluan lumon kaj tial aspektas blua. Ju pli da farboj oni miksas, des malpli da lumo ili povas reflekti, do la rezulto aspektas malpli hela.

La adician kombinon de koloroj uzas katod-radiaj ekranoj (komputilaj, televidilaj) kaj projekciiloj, kaj ĝi estas la normala metodo por stori kolorojn en komputiloj. Por tio oni uzas la bazajn kolorojn ruĝa, verda kaj blua; tiun sistemon oni nomas RVB aŭ, laŭ la Angla aŭ Germana lingvoj, RGB (red-green-blue / rot-grün-blau).

RVBkoloro
000nigra  
001blua  
010verda  
011cejana  
100rugxa  
101malva  
110flava  
111blanka  
la bazaj koloroj ruĝa, verda kaj blua estas la verticoj de la kolor-triangulo cirkloj el la bazaj koloroj ruĝa, verda kaj blua intersekciĝas

Se via krozilo subtenas Java-aplikaĵetojn, vi povas iom eksperimenti per la adicia kolor-miksado: Movu la tri skalojn por la tri bazaj koloroj kaj rigardu la rezulton en la areo supre.

Ĉi-tie devus esti Java-programeto, kiun via krozilo bedaŭrinde ne subtenas.

2.2 La subtraha metodo: la sistemo CMFN

La subtrahan kombinon de koloroj uzas presiloj: Se oni miksas la farbojn de presilo, la rezulta farbo estas malpli hela. Por atingi tre helajn kolorojn necesas uzi malmulte da farbo, por ke la blankeco de la papero aperu; el tio rezultas iom palaj koloroj. Por tamen havi kolorojn samtempe fortajn kaj helajn, oni uzas helajn bazajn kolorojn. Normale oni uzas la komplementajn kolorojn de la RVB-sistemo, nome cejana (komplementa al ruĝo), malva (komplementa al verdo) kaj flava (komplementa al bluo).

La egala miksado de ĉiuj tri ideale rezultigus nigran farbon, sed tio ne bone funkcias; la farboj aŭ inkoj ne estas sufiĉe puraj. Tial oni normale uzas kvaran, pure nigran farbon kaj nomas tiun kvarkoloran sistemon CMFN (cejana-malva-flava-nigra).

En la Angla lingvo la unua litero de black=nigra estas la sama kiel ĉe blue=blua; tial oni uzas la lastan literon (k) kaj nomas la sistemon CMYK (cyan-magenta-yellow-black).

la komplementaj koloroj de ruĝo, verdo kaj bluo estas la verticoj de la kolor-triangulo cirkloj el la bazaj koloroj cejana, malva kaj flava intersekciĝas

Terminologio. En la sistemo CMF la du unuaj koloroj elstaras per siaj nekutimaj nomoj: En la ĉiutaga lingvo neniu uzas la kolor-nomojn "cejana" kaj "malva". La koncernaj koloroj estis elektitaj pro sia komplementeco al la adiciaj bazaj koloroj ruĝa kaj verda, kaj oni decidis doni al ili iom karakterizajn nomojn, do, ekzemple, ne nomi la komplementan koloron de ruĝo "blueta" aŭ "ĉielblua". Tiel oni en la Angla lingvo, kiu unue estis uzata por fiksi tiujn terminojn, oni elektis jenajn vortojn:

2.3 Alia aliro: La sistemo TPH

La baz-koloraj sistemoj estas taŭgaj por storado kaj eligo (vidigo) de bildoj, sed ofte ne tro taŭgaj, kiam homo volas elekti aŭ iom modifi koloron. Ekzemple, por iom pliheligi iun koloron necesas sam-proporcie pliheligi ĉiujn tri bazajn kolorojn. Tio estas ne tre praktika metodo. Iusence, la RVB-sistemo ne respondas al la maniero, kiel homoj pensas aŭ parolas pri koloroj.

Tial ekzistas alia sistemo por reprezenti kolorojn, kiu same uzas tri nombrojn por ĉiu koloro:

En multaj landoj la sistemo estas mallongige konata kiel "HSB", laŭ la angla-lingvaj terminoj hue (tono), saturation (pureco) kaj brightness (heleco). Anstataŭ brightness oni uzas ankaŭ la terminon intensity, tiel ke la mallongigo iĝas "HSI".

la bazaj koloroj ruĝa, verda kaj blua estas %#265;e la anguloj 0°, 120° kaj 240°

La elekto de la pozicio de la ruĝa koloro je la supro de la cirklo estas arbitra. Eblas meti iun ajn koloron je la supra. Ofte oni vidas kolor-cirklon, kie la ruĝa koloro estas dekstre, ĉar por matematikistoj la angulo de "0°" estas dekstre.

Se oni spegulas la kolor-cirklon laŭ la akso tra la blua kaj flava koloroj, tiel ke la pozicioj de ruĝo kaj verdo interŝanĝiĝas, rezultas figuro iom simila al la CIE-triangulo (plandumo):

kolorcirklo kaj CIE-diagramo similas

En tiu sistemo estas facile iomete modifi la helecon de iu koloro sen ŝanĝi ĝian tonon, aŭ inverse. Se via krozilo subtenas Java-programetojn, vi povas eksperimenti per jena ilo, kiu havas du linearajn modifilojn por heleco kaj pureco, kaj unu cirklan modifilon por la kolor-tono:

Ĉi-tie devus esti Java-programeto, kiun via krozilo bedaŭrinde ne subtenas.

Kiel oni imagu la funkciadon de la tri modifiloj?

Kia estas la rilato de tiu sistemo al la sistemo RVB, do kiel la bazaj koloroj ruĝa, verda kaj blua kontribuas al la koloroj de la cirklo? La heleco difinas la maksimuman partan valoron, la pureco la minimuman. Kaj kio pri la tria koloro, kaj pri la elekto, kiuj koloroj kontribuas maksimume resp. minimume?

Por tion kompreni ni momente neglektu helecon kaj purecon kaj konsideru nur la tute helajn kaj purajn kolorojn. Tio signifas, ke ĉiam iu koloro havas la kontribuon 1 kaj alia havas la kontribuon 0.

Ĉe la anguloj 0°, 120° kaj 240° nur po unu baza koloro aperas, la kontribuo de la aliaj du estas nula. Same en la tuta (malpli granda) cirklo-parto inter du bazaj koloroj la kontribuo de la tria koloro estas nula. En la kontraŭa cirklo-parto tiu kontribuo estas egala al 1, kaj en la interspacoj la (mal)kresko estas lineara. Rezultas jena (platigita) bildo de la valoroj de la tri bazaj koloroj laŭlonge de la cirkla periferio:

2.4 Aliaj sistemoj

Ekzistas pliaj sistemoj por reprezenti kolor-informojn, kiuj estas transkalkuleblaj de kaj al la sistemoj RVB kaj TPH. Ili servas al specialaj celoj, ekzemple al kolora televido, kiu uzas sistemon ofte nomatan YCrCb. Ĝia principo estas, ke la unua kanalo estu taŭga por nigraj-blankaj ekranoj; kiam ekestis kolora televido, ja la plej multaj televidiloj estis nigraj-blankaj, kaj oni deziris esti "malsupren kongrua". La unua kanalo en YCrCb do reprezentas la ĝeneralan helecon; la dua kaj tria kanaloj reprezentas la diferencojn inter la unua kaj la ruĝeca resp. blueca kanalo. Tiu "heleco" tamen ne estas identa al la heleco de la TPH-sistemo, sed estas kalkulata el la RVB-valoroj laŭ jena formulo:

Y = 0,299*R + 0,587*V + 0,114*B

La du aliaj kanaloj tiam rezultas el jenaj simplaj formuloj:

Cb = B - Y
Cr = R - Y

YCbCr estas uzata en la video-normo CCIR 601. La Eŭropa televida sistemo PAL kaj la Usona sistemo NTSC uzas similajn sistemojn nomatajn YUV kaj YIQ. La formulo por la heleco spegulas la fakton, ke la homa okulo tre bone perceptas verdan, sed malpli bone bluan lumon.

La programo MS-Paint, kiu estas parto de la sistemo Vindozo, uzas modifitan TPH-sistemon por elekti kolorojn. La koncerna dialogo montras kolor-ortangulon, kies horizontalo respondas al la kolor-cirklo; la vertikalo respondas iusence al la pureco, kaj dekstre troviĝas vertikala skalo, kiu permesas elekti helecon. Sed tiu heleco nur en la suba duono respondas al la heleco priskribita en la lasta ĉapitro; la supra duono respondas al la pureco kaj igas la koloron pli kaj pli pala, ĝis atingo de blanko. La tri valoroj por tono, pureco kaj heleco estas inter 0 kaj 240.

En la kolor-elektilo de MS-Paint la meza heleco (120) respondas al maksimumaj pureco kaj heleco; pli altaj valoroj reduktas la purecon, malpli altaj la helecon.

2.5 Koloroj de la homa okulo

Ĉu la prezentitaj sistemoj povas reprezenti ĉiujn kolorojn, kiujn perceptas la homa okulo? Bedaŭrinde ne. La kialo klariĝas per rigardo al la maniero, kiel homoj perceptas miksitajn kolorojn, laŭ la antaŭa ĉapitro. La kolor-miksadon ja priskribas la (proksimuma) kolor-triangulo en la spaco inter la "virtualaj koloroj" blua, flava, verda kaj ruĝa:

Ĉar la spektra kurbo en tiu koordinat-sistemo estas kurba, estas klare, ke per tri bazaj koloroj ne eblas reprezenti ĉiujn videblajn kolorojn: La kolor-kombinoj el tri koloroj formas en la okula kolorspaco triangulon, kaj neniu triangulo povas ekzakte plenigi la spacon inter la spektra kurbo kaj la purpura linio. Por havi triangulon, kiu tute kovras tiun areon, necesus uzi kolorojn ekster ĝi, sed tiaj koloroj ne ekzistas. Ankaŭ per pli da bazaj koloroj ne eblas tute plenigi la kolor-kampon de la homa okulo.

La sekva bildo montras, ke normala RVB-ekrano kapablas montri eĉ ne duonon de ĉiuj koloroj. Tamen ĝia bildo estas sufiĉe realeca. Kompreneble en la bildo ĉiuj koloroj ekster la RVB-triangulo ne estas veraj, sed anstataŭigitaj per similaj.

Bone, do per tri bazaj koloroj ne eblas reprezenti ĉiujn videblajn kolorojn; sed kial oni uzas tiom malgrandan triangulon? Kial oni ne elektas tri bazajn kolorojn ĉe la rando de la kolor-kampo? Por tio ekzistas du precipaj kialoj, unu teknika kaj unu fiziologia:


← antaŭa leciono ↑ enhavo → sekva leciono