3 Reprezentado de koloraj bildoj

3.1 Unuopaj koloroj

La diversaj sistemoj por reprezenti kolorojn estas utilaj por diversaj celoj. Por stori kolor-informon en komputilo oni normale uzas la RVB-sistemon. Do por unu koloro necesas tri nombroj inter 0 kaj 1, por la intenseco de la ruĝa, verda kaj blua partoj.

Tre ofte oni uzas ok bitojn por ĉiu koloro, tio signifas por ĉiu koloro entjeran nombron inter 0 kaj 255. Por alveni inter 0 kaj 1 oni dividas per 255. El tio rezultas 16.777.216 diversaj koloroj, pli ol la homa okulo povas distingi, kaj multe pli ol normala ekrano povas fidinde prezenti. Sed eblas uzi malpli da bitoj por ŝpari memoron; tiam rezultas pli krudaj transiroj inter la koloroj. La minimumo estas po 1 bito por ĉiu koloro, per kio rezultas la 8 koloroj el la kolortabelo el la lasta leciono.

Ĉirkaŭ la jaro 1990, kiam disvastiĝis la mastruma sistemo Vindozo (Windows), komputila memoro estis tre kosta. Por ŝpare uzi ĝin oni donis 4 bitojn al unu koloro; la kvara distingis du nivelojn de heleco. Tiu formato ankoraŭ estas disponebla en la bild-desegna programo MS-PAINT, kaj estas utila por skizoj kun malmultaj koloroj. Oni uzu precipe la helajn, nigran kaj malhele grizan kolorojn, ĉar la aliaj estas malfacile distingeblaj.

helaj koloroj                        
malhelaj koloroj                        

En tiu tabelo ĉiuj partaj koloroj havas valor-kombinojn el 0 kaj 255 (helaj koloroj) aŭ 0 kaj 127 (malhelaj koloroj). Escepto estas la hela griza koloro, kies partoj havas la valorojn (191;191;191).

3.2 Multaj koloroj: Bildoj

Por komputile reprezenti koloran bildon necesas reprezenti ne nur la kolorojn de ĝiaj partoj, sed ankaŭ ties spacajn interrilatojn. Plej simple estas dividi bildon al krado da etaj bilderoj. Kutime oni uzas ortan kradon, tiel nomatan rastrumon. Preskaŭ ĉiuj ekranoj kaj presiloj uzas ortan punkto-kradon.

La fajneco (delikateco) de la krado (= la grandeco de la kraderoj) difinas, kiom grandajn detalojn la bildo kapablas distingi. Normale oni mezuras ne rekte la grandecon de la kraderoj, sed inverse ilian nombron en fiksa distanco (ekz. centimetro) aŭ en la tuta bildo; tiun nombron oni nomas la distingivo de la bildo, aŭ de la aparato montranta ĝin. La nombro de la kraderoj en la tuta bildo nomiĝas absoluta distingivo, ilia nombro en fiksa distanco relativa distingivo.

Kaj bildoj kaj bildigaj aparatoj havas absolutan distingivon. Bildo ne nepre havas fiksan grandecon kaj tial ankaŭ ne nepre relativan distingivon, sed ekrano, printilo kaj skanilo ĉiam havas (fotilo tamen ne, pro manko de rekta kontakto kun la objektoj). Ofte uzataj absolutaj distingivoj por ekranoj uzas la rilatumon 4:3, nome 640×480, 800×600, 1024×768, 1280×1024, 1600×1200. Ekrano de 1600×1200 bilderoj havas pli ol sesoble da bilderoj kompare al ekrano de 640×480.

la ekran-formatoj kun eĝo-rilatumo de 4:3, inter 640x480 kaj 1600x1200

Por printiloj kaj skaniloj oni normale indikas la relativan distingivon kaj la (maksimuman) formaton. Kvankam jam antaŭ jardekoj la plej multaj landoj de la mondo devigis sin uzi la metran sistemon, oni por relativaj distingivoj ankoraŭ uzas la Britan colon kiel mezur-unuon. Unu colo egalas al 25,4 milimetroj, do distingivo de 300/colo egalas proksimume al 12/mm, aŭ 50/mm = 1270/colo. Ofte uzataj formatoj estas

la Usona formato "letter" estas iom pli larĝa ol A4   la A-formatoj ekestas per sinsekva duonigo de 1 kvadrata metro

3.3 Koloroj por la bilderoj

Por prezenti koloran bildon sur rastrumo necesas por ĉiu bildero (rastrero) doni kolor-valoron. Krome necesas doni valoron por la larĝeco kaj la alteco de la bildo (en bilderoj). Ofte oni donas la tutan nombron n de la bilderoj kaj la larĝecon l; la alteco tiam rezultas kiel a = n/l.

Por la koloroj de la unuopaj rastreroj oni normale uzas la kolor-sistemon RVB. 8 bitoj por ĉiu baza koloro sufiĉas eĉ por realece aspektaj fotoj; por skizoj, emblemoj, mapoj aŭ diagramoj sufiĉas malpli. Tiaj bildoj eĉ ofte aspektas pli klare, se oni uzas nur malmulte da koloroj.

Ĉar bildoj estas du-dimensiaj kaj la komputila memoro nur unu-dimensia, necesas aranĝi la kolor-informerojn por la bilderoj en unu-dimensia formo ("linearigi" ilin). Tio normale okazas linio-post-linie, ĉiam de maldekstre dekstren, same kiel en (katod-radia) televidila ekrano. Konsideru jenan ekzemplon de bildo kun 9×9 = 81 nigraj aŭ blankaj bilderoj; supre tiuj bilderoj estas aranĝitaj en linio de 81 punktoj. (La ruĝaj kaj bluaj linioj servas nur por klarigo.) Por prezenti la bildon necesas disigi tiujn 81 punktojn al 9 linioj de po naŭ bilderoj kaj aranĝi tiujn 9 liniojn unu sub la alia, kiel indikas la verdaj sagoj.

3.4 Travidebleco: la α-kanalo

Por prezenti unuopan koloron la tri bazaj koloroj de la sistemo RVB bone taŭgas. Sed foje oni kombinas plurajn bildojn al pli granda bildo, tiel ke la bildoj parte kovras unu la aliajn. En tiu okazo normale videblas nur la koloroj de la supra bildo; sed ofte oni volas, ke partoj de la bildo estu kvazaŭ "travideblaj", tiel ke la koloroj de la malsupra bildo trabrilu. Por fari tion oni enkondukas kvaran kanalon apud la tri kanaloj por la bazaj koloroj. Tiu kanalo indikas ne iun koloron, sed la gradon de travidebleco; ĝi nomiĝas α-kanalo (alfa-kanalo).

Per la α-kanalo oni povas doni al ort-angulaj bildoj ajnan formon; necesas nur doni al la nebezonataj bildpartoj kompletan travideblecon. Kiam oni uzas 8 bitojn por ĉiu baza koloro, oni ofte ankaŭ al la α-kanalo donas 8 bitojn, tiel ke unu bildero sume okupas 32 bitojn.

La α-kanalo utilas ankaŭ, kiam oni volas meti bildon sur koloran fonon, ekz. en ret-paĝo. Tiam la kolora fono trabrilas laŭ la valoro de la α-kanalo.

3.5 Kiel ŝpari memoron

Uzante 32 bitojn (4 bajtojn/bitokojn) por unu bildero oni bezonas por malgranda ekrano de 640×480 bilderoj 4×640×480 = 1.228.800 bajtojn, proksimume 1,2 MB; por granda ekrano de 1600×1200 jam 7.680.000 bajtojn. Ciferecaj fotiloj ofte havas distingivon de 2272×1704 bilderoj, kiu ne necesas por ekrana prezentado, sed estas tre dezirinda por presi foton sur paperon; kaj tiu distingivo konsumus 15.485.952 bajtojn, preskaŭ 15 MB. Memor-karto de 64 MB tiel havus spacon nur por kvar bildoj.

Simila problemo okazas en telekopiado (faksado), kiu uzas distingivon de 204/colo × 198/colo; tio signifas ĉ. 1686 × 2315 = 3.903.090 bilderojn aŭ preskaŭ 500 KB por A4-paĝo. Ĉe rapido de 9600 b/s (bitoj en sekundo) la sendado de unu paĝo daŭrus preskaŭ sep minutojn.

Por mildigi tiujn problemojn oni kreis teknikojn de bild-densigo. Oni distingas du bazajn specojn de bild-densigo:

3.5.1 Ne-perdema densigo

Por densigi bildon eluzante ĝian redundecon eblas apliki la samajn algoritmojn kiel ĉe aliaj datenoj, uzante programojn kiaj zipgzip. Sed la redundo en bildoj ofte havas specialan strukturon, ekzemple bildoj enhavas grandajn areojn kun la sama aŭ kun tre similaj koloroj. Tiun ĉi fakton eblas eluzi per tre simpla densiga algoritmo, la kodado de kolor-longecoj.

Kiam oni kodas bilderojn linio-post-linie, unu-kolora bild-peco kaŭzas multajn sinsekvajn sam-kolorajn bilderojn. Kiam la sam-koloraj pecoj estas longaj, estas pli efike kodi ilian longecon anstataŭ ripeti la koloron multajn fojojn. Kun nur du koloroj eĉ sufiĉas kodi nur la longecon, ĉar post unu koloro (ekz. blanka) ja nepre devas sekvi la alia (ekz. nigra). La sekva bildo montras tion por la supra ekzemplo de la vizaĝ-bildeto; anstataŭ kodi 81 bilderojn eblas kodi nur 33 kolor-longecojn, sed ĉar la longecoj bezonas po 3 bitojn, oni ne vere profitas. Sed ĉe pli granda, ne tro detal-hava bildo oni ja profitus.

La tekniko de la kolor-longecoj estas ĝeneraligebla al du dimensioj kaj tiel eĉ pli efika. Ekzistas manieroj utiligi alispecan bildan redundon, ekzemple la fakton, ke multaj bild-elementoj (arbofolioj, herboj, malglataĵoj en surfacoj) ritme ripetiĝas en tre simila formo; sed tiuspeca redundo estas pli facile uzebla por perdema densigo.

Kolor-longecoj estas unu el la teknikoj uzataj en telekopia (faksa) densigo. Tiu densigo tre efike densigas normalajn tajpitajn paĝojn, tiel ke mezuma paĝo transsendeblas en nur unu minuto anstataŭ sep.

Se iu bildo enhavas nur malmulte da malsamaj koloroj, eblas densigi la bild-datenojn per uzo de paletro. Same kiel pentristo metas sur sian paletron nur la farbojn, kiuj li aktuale bezonas, bild-paletro estas tabelo nur de la koloroj aperantaj en iu bildo. Anstataŭ kodi la RVB-valorojn de ĉiu bildero oni kodas la numeron de la koncerna koloro en la paletro. Se la paletro estas malgranda, tiu numero bezonas malpli da bitoj ol la kolor-kodo (ekz. 8 bitoj por 256-kolora paletro). Tamen necesas kroma memoro por la paletro.

3.5.2 Perdema densigo

Kompreneble densigo estas pli efika, se estas permesate perdi informon; sed tiu perdo ne estu tro okulfrapa. Tial la perdema densigo eluzas kelkajn faktojn pri la homa vido kaj pri fotoj de naturaj scenoj:

Tiaj konsideroj, kune kun la jam diskutita ne-perdema densigo, estas uzataj en la kompaktiga algoritmo JPEG. JPEG estas mallongigo de la anglalingva nomo Joint Photographic Expert Group (unuiĝinta grupo de fotistoj-spertuloj). La algoritmo estas multe uzata por fotografaĵoj, sed malpli taŭgas por desegnoj aŭ mapoj, kiuj havas akrajn konturojn. ĝi permesas preskaŭ libere elekti la gradon de densigo, kiu kompreneble okazas je kosto de la precizeco. La sekva bildo montras kiel ekzemplon nian vizaĝon, kun diversaj gradoj de densigo. (Pro siaj akraj nigra-blankaj konturoj ĝi malbone taŭgas por JPEG.)

En 1991 JPEG estis internacia normigita sub la numero DIS 10918.

Por demonstri la efikon de perdema densigo ni prenu nian vizaĝ-bildeton, tamen ne en la eta formato 9×9, sed pligrandigitan al 72×72 bilderoj, kun aldonitaj krado-linioj. Dum pli kaj pli forta densigo la konturoj malakriĝas kaj fine eĉ aperas novaj konturoj, kiuj ne apartenas al la originala bildo. Tiaj ekestantaj konturoj nomiĝas artefaritaĵojartefaktoj, ankaŭ fantomaĵoj.

3.6 Grajneco

La disigo de bildoj al rastreroj (bilderoj) ŝajnas al ni natura, ĉar ni kutimas pensi en ortaj koordinatoj. Sed tiu disigo enkondukas en bildojn fenomenojn, kiuj ne rilatas al la origina bilda enhavo. La plej baza el tiuj fenomenoj estas la grajneco, la koncentriĝo de la bild-informo en la areo de la bilderoj. Alia esprimo estas ŝtupeco, ĉar en kontinuaj linioj la grajneco enigas ŝtupojn. Depende de la distingivo de la bildo aŭ de la prezentilo (ekrano, presilo) la grajneco estas pli aŭ malpli bone videbla.

La grajneco estas grava problemo, kiam necesas ŝanĝi la distingivon de bildo: Kiam oni plialtigas la distingivon ("pligrandigas" la bildon), la ŝtupoj pligrandigas. kiel montras la bildo. Kiam oni malplialtigas la distingivon ("malgrandigas" la bildon), iuj bilderoj povas tute malaperi:

Kiam, inverse, oni pligrandigas bildon, la grajneco fariĝas pli bone videbla, pli okulfrapa. Nur akso-paralelaj (horizontalaj aŭ vertikalaj linioj kaj eĝoj ne suferas grajnecon; oblikvaj kaj kurbaj eĝoj montras ŝtupojn, kiuj pligrandiĝas kune kun la bildo, vertikalaj linioj kaj eĝoj ne suferas grajnecon; oblikvaj kaj kurbaj eĝoj montras ŝtupojn, kiuj pligrandiĝas kune kun la bildo.

3.6.1 Glatigo kontraŭ grajneco

Kiam la distingivo de bildo estas tre alta (ekz. en presita formo), la grajneco ne ĝenas, ĉar la okulo ne kapablas distingi la grajnojn kaj ŝtupojn. Sed kiam la distingivo estas malalta, ekz. sur ekrano, oni povas iom kompensi per aldono de pliaj koloroj, kiuj situas inter la ekzistantaj. Ekzemple en bildo, kiu havas nur nigrajn kaj blankajn rastrerojn, oni aldonu diversajn helecojn de grizo. Per tiuj eblas "mildigi" ekzemple la ŝtupojn de rekta aŭ kurba linio kaj tiel, por la okulo, glatigi konturojn.

3.6.2 Glatigo kaj malgrandigo

Glatigo estas tre utila tekniko, sed ĝi postulas informojn pri la ŝanĝendaj koloroj. De kie venu tiuj informoj? Ofte oni posedas bildon en pli granda distingivo ol uzebla, ekzemple kiam oni volas prezenti bildon kun alta distingivo sur ekrano kun malalta distingivo. Tiam necesas malgrandigi la bildon. Per malgrandigo perdiĝas informacio, kaj parton de tiu informacio oni povas uzi por glatigo.

La sekva bildo montras tion por duonigo de la grandeco. Po kvar bilderoj kunfandiĝas en unu. Kvankam kvar nigraj aŭ blankaj bilderoj povas formi 16 malsamajn figurojn, rezultas nur 5 malsamaj kvantaj rilatoj inter blanko kaj nigro, nome 0:4 (0 % da blankeco), 1:3 (25 %), 2:2 (50 %), 3:1 (75 %) kaj 0:4 (100 %). Sur la bildo videblas, kiel la 16 figuroj reduktiĝas al 5 grizecoj.

3.7 Daten-aranĝoj ("formatoj") por bildoj

Por ebligi la interŝanĝon de bild-datenoj inter diversaj programoj necesas havi interkonsentitajn daten-aranĝojn por bild-dosieroj. Ekzemple necesas interkonsenti, kiom da bitoj uzi por la koloroj, en kiu ordo kodi la bazajn kolorojn ene de bildero kaj en kiu ordo kodi la bilderojn (ekz. linion post linio, aŭ kolumnon post kolumno). Sed necesas kodi ankaŭ certajn informojn, kiuj koncernas ne la bilderojn, sed la tutan bildon; ekzemple ĝiajn larĝecon kaj altecon, aŭ la uzatan paletron (se tia estas uzata).

Tia aranĝo ofte nomiĝas daten-formato, sed tiu vorto estas facile konfuzebla kun bild-formato en la senco de la mezuroj (ekz. "A4"). Tial PIV (Plena Internacia Vortaro de Esperanto) rekomendas uzi la terminon daten-aranĝo.

Parolante pri densigo ni jam menciis la aranĝon JPEG.

3.7.1 Patentoj

Antaŭ paroli pri certajn daten-aranĝoj necesas fari ekskurseton sur la kampon de juro. Dum multaj jaroj kompuilistoj libere uzis plurajn aranĝojn, kaj la disvastigo de koloraj ekranoj kaj de TTT en la jaroj post 1990 tre popularigis precipe la aranħojn GIF kaj JPEG. Kiam tiuj du aranĝoj preskaŭ komplete superregis en TTT, firmao Unisys konatigis, ke ĝi posedas (aĉetis) patenton pri algoritmo uzata en GIF. Poste firmao Forgent sciigis, ke ĝi posedas patenton pri JPEG. Ambaŭ firmaoj komencis kolekti tantiemojn de la produktantoj de programoj, kiuj produktas (ne nur vidigas) dosierojn en la respektivaj aranĝoj.

Reage la komputila mondo difinis novan aranĝon, kiu baziĝas sur artikolo aperinta en 1984, kaj pri kiu neniu pretendas patenton. Tial nun multaj retpaĝejoj ŝanĝas siajn bildojn al PNG.

3.7.2 La daten-aranĝo GIF

GIF estas akronimo de la Angla nomo "Graphics Interchange Format" (bild-interŝanĝa aranĝo). Ĝi estis evoluigita de la firmaoj Unisys kaj CompuServe kaj uzas por densigo la teknikon Lempel-Ziv-Welch (LZW). Pri tiu tekniko Unisys akiris patentojn, interalie en Usono je 1983-06-21; tiu patento eksvalidiĝis post dudek jaroj je 1983-06-20.

Unisys unue ne uzis sian patenton por kolekti tantiemojn, kaj tiel GIF iĝis kvazaŭ-norma daten-aranĝo por TTT. Sed post tiu disvastiĝo Unisys pretendis tantiemojn por la produktado de GIF-dosieroj (ne por la legado). Kelkaj grandaj firmaoj devis pagi tiujn tantiemojn; aliaj ĉesis uzi GIF.

GIF uzas paletran sistemon kun paletro de maksimume 256 (libere elekteblaj) koloroj; tiu paletro estas storata en la bildo. Por skizoj, mapoj, emblemoj ktp. 256 koloroj estas sufiĉaj, sed ne por fotoj; tial oni ofte aplikas la teknikon de punktismo por kodi fotojn per GIF. Bedaŭrinde tiu tekniko igas la bildojn malfacile densigeblaj, do la bild-dosieroj iĝas iom grandaj.

GIF posedas du apartaĝojn: Ĝi subtenas elementan alfa-kanalon en la formo de unu "travidebla koloro" en la paletro, kaj ĝ ebligas moviĝantajn bildojn per pluraj sinsekvaj bildoj.

3.7.3 La daten-aranĝo JPEG

JPEG estis evoluigita por la firmao C-Cube de grupo nomita Joint Photographic Expert Group (unuiĝinta grupo de fotistoj-spertuloj) kaj iĝis internacia normo en 1991. C-Cube neniam postulis tantiemojn, sed nun firmao Forgent pretendas, ke ĝi posedas patenton pri JPEG, kaj komencis postuli tantiemojn. Kvankam spertuloj opinias, ke tribunalo ne akceptus la pretendon de Forgent, kelkaj firmaoj evitis la riskon de jur-proceso kaj pagis.

JPEG tre bone densigas fotojn, sed uzas "perdeman" densigon; ne la plena informo de la originalo estas reproduktebla el la densigaĵo. JPEG estas uzata en ciferecaj fotiloj.

3.7.4 La daten-aranĝo PNG

PNG estis evoluigita responde al la tantiem-pretendo de Unisys pri GIF en 1994. Grava kondiĉo estis, ke ĉiuj uzataj algoritmoj estu sen-patentaj.

PNG estas akronimo por la Angla Portable Network Graphics (portebla(j) reta(j) bildo(j)), sed kelkaj asertas, ke ĝi signifu "PNG Ne estas GIF". Ĉar la akronimo ne enhavas vokalon kaj estas malfacile prononcebla, oni enmetas la vokalon "i" kaj prononcas "Ping" aŭ ankaŭ , kun naza "n".

PNG ebligas kaj paletrajn kaj vera-kolorajn bildojn. Ĝia densigo mezume estas iom pli bona ol tiu de GIF.

3.7.5 La daten-aranĝo BMP

"BMP" ne estas akronimo, sed kompaktigo de la Angla vorto "bitmap" = bitmatrico. Ĝi estas daten-aranĝo uzata de la Mikrosoft-a program Paint (iam Paintbrush). Sur nigra-blankaj ekranoj, kutimaj ĉirkaŭ la jaro 1990, tiu programo povis, nature, produkti nur nigra-blankajn bildojn, en kiuj ĉiu bildero okupas nur unu biton; do la bildoj estis bit-matricoj.

BMP kodas, krom nigra-blankajn bilderojn, ankaŭ bilderojn kun 16, 256 aŭ 224 = 16777216 koloroj. La sistemoj kun 16 kaj 256 koloroj uzas paletron, dum en la mult-kolora sistemo la bitoj vere kodas la helecojn de la bazaj koloroj; tial en tiu lasta sistemo oni parolas pri "veraj koloroj". BMP ne uzas densigon, do la bildoj konsumas memoron laŭ la sekva tabelo:

Memor-konsumo por 1 bildero
en BMP-bildoj
2 koloroj 1 bito = 1/8 bajto
16 koloroj 4 bitoj = 1/2 bajto
256 koloroj 8 bitoj = 1 bajto
"veraj" koloroj 24 bitoj = 3 bajto; sed oni uzas 4

En la paletraj sistemoj la programo Paint generas novajn bildojn kun fiksa paletro, sed storas tiun paletron kun ĉiu unuopa bildo; la dosieroj do enhavas tabelon kun la "veraj" kolor-valoroj de la paletraj koloroj. Per aliaj programoj eblas uzi ankaŭ aliajn paletrojn, kaj Paint eĉ kapablas prilabori tiajn bildojn.


← antaŭa leciono ↑ enhavo → sekva leciono