數(shù)值是如何工作的
我們暫且中斷一下我們的討論,轉(zhuǎn)而考察一下我們?cè)谟?jì)算機(jī)里如何以數(shù)字的形式來(lái)描述顏色,或更精確地說(shuō),是編碼的方法。我們將利用這個(gè)機(jī)會(huì)澄清一些經(jīng)常使人們犯糊涂的問(wèn)題。這些問(wèn)題是數(shù)字化顏色的基礎(chǔ),不弄清這些問(wèn)題就有可能將這些糊涂觀念傳遞給色彩管理的使用,造成進(jìn)一步的混淆。即使你非常熟悉有關(guān)二進(jìn)制單位、字節(jié)、階調(diào)和顏色這一些基本概念,這一節(jié)也值得回顧一下。因?yàn)槲覀儗⒁岢鰩讉€(gè)關(guān)鍵性問(wèn)題,是有關(guān)用數(shù)字表示的顏色與“真實(shí)世界”中的顏色,地者之間差別方面的體驗(yàn)。
計(jì)算機(jī)用數(shù)字將顏色進(jìn)行編碼的體系實(shí)際上非常簡(jiǎn)單:顏色值由幾個(gè)通道的數(shù)據(jù)組成,而每一個(gè)通道又被分割為不同的階調(diào)等級(jí)。就是這么簡(jiǎn)單!我們從一個(gè)簡(jiǎn)單的顏色感覺(jué)模型開(kāi)始。事實(shí)上,所有顏色都是由紅、綠、藍(lán)色的光以不同強(qiáng)度混合而成的,我們按這樣一個(gè)顏色模型進(jìn)行編碼,使之可以有效地存儲(chǔ)、計(jì)算和傳輸顏色。在我們的編碼系統(tǒng)中,通道數(shù)一般為三個(gè),基本與我們感知顏色時(shí)使用的三原色方式相對(duì)應(yīng)。編碼系統(tǒng)中的階調(diào)等級(jí)通常是256,對(duì)應(yīng)于能夠使我們產(chǎn)生連續(xù)調(diào)感覺(jué)所需要的最少階調(diào)數(shù)量,也就是為了避免產(chǎn)生諸如條杠或階調(diào)跳躍等贗像,不使觀察者從圖像中看出從一個(gè)階調(diào)到下一個(gè)階調(diào)之間出現(xiàn)明顯不連續(xù)過(guò)渡感覺(jué)所需要的階調(diào)等級(jí)數(shù)量。
為什么是256級(jí)
256這個(gè)數(shù)字在某些人看起來(lái)似乎是很武斷和不可理解的。但是,這個(gè)數(shù)字在計(jì)算機(jī)和顏色的討論中出現(xiàn)得太頻繁了,因此值得將它的意義搞清楚。它并非那么神秘。我們只是期望能夠表現(xiàn)出足夠的階調(diào)等級(jí),保證觀察者不會(huì)看出兩個(gè)相鄰階調(diào)等級(jí)之間的階調(diào)差別。研究表明,對(duì)于多數(shù)人來(lái)說(shuō),能夠產(chǎn)租平滑漸變效果的階調(diào)等級(jí)數(shù)量大約需要200級(jí)左右。那么,為什么不就只編碼成200級(jí)呢?為什么是256級(jí)呢?這里有兩個(gè)原因。
留出余量。在實(shí)際應(yīng)用中,讓數(shù)據(jù)留有額外的階調(diào)等級(jí)余量是非常有用的,這是因?yàn)樵趶?fù)制過(guò)程的每一階段(掃描、顯示、編輯、轉(zhuǎn)換、計(jì)算、打?。?,都不可避免地會(huì)發(fā)生階調(diào)損失,階調(diào)等級(jí)余量可以保證不會(huì)因?yàn)殡A調(diào)損失而出現(xiàn)條杠,這一點(diǎn)對(duì)色彩管理來(lái)說(shuō)是非常關(guān)鍵的。
二進(jìn)制位。第二個(gè)原因就是我們使用數(shù)字位(比特)來(lái)表示這些階調(diào)等級(jí)的值。7位二進(jìn)制數(shù)字位僅能編碼出128個(gè)階調(diào)等級(jí)(27),肯定會(huì)使圖像中的天空出現(xiàn)條杠,在時(shí)裝模特的面頰上出現(xiàn)斑點(diǎn)。8位編碼能有256個(gè)階調(diào)等級(jí)(28),不僅可以滿足階調(diào)等級(jí)的需要,而且還有小小的余量。第三個(gè)采用8位的理由是,計(jì)算機(jī)是以字節(jié)能單位進(jìn)行存儲(chǔ)的,8個(gè)二進(jìn)制位正好是一個(gè)字節(jié)。由8位構(gòu)成的數(shù)量已經(jīng)有很多用途了。例如,它非常適合存儲(chǔ)一種字體的外形,可以容納256個(gè)不同的字符形狀,包括所有西文字母、數(shù)字和標(biāo)點(diǎn)符號(hào)。一個(gè)字節(jié)的存儲(chǔ)量對(duì)于編碼階調(diào)等級(jí)也是非常優(yōu)秀的,這個(gè)數(shù)量與人類視覺(jué)系統(tǒng)對(duì)階調(diào)的分辨等級(jí)正好吻合,這看起來(lái)似乎是一種不可思議的巧合,可工程師們太喜歡這種不可思議了。
數(shù)百萬(wàn)種顏色
于是,用8位編碼,可以形成每個(gè)顏色通道256個(gè)階調(diào)等級(jí),這睚好符使用們希望在每個(gè)通道內(nèi)存儲(chǔ)的最小階調(diào)等級(jí)數(shù)量。就RGB圖像而言,三個(gè)通道的每一個(gè)都用8位存儲(chǔ),合起來(lái)就是24位(這正是為何許多人交替使用“8位顏色”和“24位顏色”兩種術(shù)語(yǔ)來(lái)表示這同一件事情的原因)。如果三個(gè)通道的每一個(gè)通道都是256個(gè)階調(diào)等級(jí)的話,則顏色編碼的總數(shù)就是256×256×256,或者(拿出你的計(jì)算器)大約是1680萬(wàn)種顏色!我們用24位存儲(chǔ)量(或小小的三個(gè)字節(jié))就能編碼出這么多種不同的顏色?。?BR> 盡管這種基于3個(gè)通道、每通道8位的編碼方式是常用的方法,因?yàn)樗且匀祟惛兄伾姆绞綖榛A(chǔ)的,但我們?cè)谛枰臅r(shí)候也可以很輕易地將它進(jìn)行擴(kuò)展。為能夠比人眼識(shí)別更多顏色的設(shè)備提供顏色編碼,這種擴(kuò)展可以通過(guò)增加通道數(shù)量或增加每一通道內(nèi)的存儲(chǔ)字節(jié)來(lái)實(shí)現(xiàn)。例如,當(dāng)我們?yōu)橐慌_(tái)CMYK打印機(jī)準(zhǔn)備一幅圖像時(shí),我們將通道由三個(gè)增加為四個(gè)通道編碼,這并不是因?yàn)槲覀冃枰玫礁嗟目删幋a顏色數(shù)(實(shí)際上,我們需要的會(huì)更少),而是因?yàn)橐獮樗纳湍拿恳簧峙湟粋€(gè)通道,這是很自然的事情。
類似地,當(dāng)要存儲(chǔ)由一臺(tái)顏色識(shí)別能力超過(guò)256級(jí)的RGB掃描儀所采集的圖像時(shí),我們經(jīng)常將8位編碼擴(kuò)展,更高為16位編碼(即所謂的“10位”、“12位”和“14位”掃描儀。盡管如此,因?yàn)槲覀兌加谜麛?shù)字節(jié)來(lái)存儲(chǔ)文件,所以實(shí)際上并不存在“10位”、“12位”和“14位”的文件格式,而只有8位和16位的文件格式)。
一人需要記住的關(guān)鍵問(wèn)題是,我們這里談?wù)摰乃袃?nèi)容都是關(guān)于編碼的,也就是使用一系列可以利用的數(shù)值來(lái)對(duì)顏色進(jìn)行定義的方法。然而,計(jì)算機(jī)可編碼的顏色數(shù)量遠(yuǎn)遠(yuǎn)超出了實(shí)際可復(fù)制的顏色數(shù)量。實(shí)際上,它也遠(yuǎn)遠(yuǎn)遠(yuǎn)地超出了可感知顏色的數(shù)量。類似高端掃描儀這樣的設(shè)備,能夠比人類眼睛“感知”到更多的階調(diào)等級(jí),我們通常就可以通過(guò)擴(kuò)展編碼位數(shù)來(lái)解決編碼問(wèn)題。編碼要解決的所有問(wèn)題在于,每一種顏色都必須具有惟一的編碼,因而可編碼的數(shù)量總要多于我們實(shí)際所需要的顏色數(shù)量,就像電話公司必須保證每部電話有惟一的號(hào)碼,于是就要準(zhǔn)備多于實(shí)際使用電話數(shù)量的號(hào)碼一樣。
我們之所以要討論這個(gè)問(wèn)題,是因?yàn)樗抢斫庥贸橄蟮臄?shù)字所表示的顏色,與用“真實(shí)世界”的復(fù)制設(shè)備,如打印機(jī)、顯示器、掃描儀等,將這些數(shù)值能再現(xiàn)的相應(yīng)顏色感覺(jué)之間的差別。要是你考察一下在實(shí)際中那些顏色數(shù)值是如何被設(shè)備翻譯成“真實(shí)世界”顏色感覺(jué)的話,你就會(huì)發(fā)現(xiàn),顏色值與所再現(xiàn)的顏色感覺(jué)二者的差別是非常大的。
正由于這些內(nèi)容有助于理解顏色數(shù)值是如何工作,解釋為什么我們到處都可見(jiàn)到像256或1680萬(wàn)這樣的數(shù)字。但請(qǐng)不要忘記,直到它們被彩色設(shè)備翻譯成真正的顏色感覺(jué)以前,它們只不過(guò)是一些純粹的數(shù)字而已。
顏色定義與顏色
許多人都將定義顏色的數(shù)值與顏色的數(shù)值搞混淆。例如,我們說(shuō)發(fā)送給CMYK打印機(jī)的顏色自然要編碼為四個(gè)通道的數(shù)據(jù),那么,8位編碼的CMYK顏色真能達(dá)到256×256×256或43億個(gè)不同顏色嗎?理論上是的。任意四個(gè)通道都能產(chǎn)生43億個(gè)編碼,但當(dāng)我們?yōu)檫@四個(gè)通道賦予C、M、Y和K數(shù)值的時(shí)候,我們并不能通過(guò)第四個(gè)通道(K)增加更多的實(shí)際顏色。事實(shí)上,許多CMYK編碼表示的是相同的顏色。例如,50C、50M、50Y、0K組成的顏色,在理論上與0C、0M、0Y、50K產(chǎn)生的是同樣的暗灰色。因此顏色編碼有許多是多余的。這樣一來(lái),可能就會(huì)有人爭(zhēng)論,是否增加了額外的K值就真能夠比使用CMY三個(gè)顏色通道得到更多的階調(diào)層次。但是這樣會(huì)使我們現(xiàn)在要討論的問(wèn)題更復(fù)雜化了,還是讓我們只簡(jiǎn)單地說(shuō),8位CMYK編碼的實(shí)際顏色總數(shù)遠(yuǎn)遠(yuǎn)要少于43億吧。
另一個(gè)例子是,我們?cè)?jīng)說(shuō)到,有的掃描儀聲稱能夠識(shí)別出遠(yuǎn)遠(yuǎn)多于8位編碼的256個(gè)階調(diào)層次。他們聲稱能夠達(dá)到10位、12位,甚至14位的分辨能力。許多人都將這個(gè)顏色編碼與掃描儀的密度動(dòng)態(tài)范圍弄混。密度動(dòng)態(tài)范圍是指掃描儀從能夠可靠分辨層次的最亮白色,到能夠可靠分辨層次的最暗黑色所構(gòu)成的階調(diào)范圍。很多掃描儀制造廠家都聲稱這些“高比特”掃描儀能夠提供比8位更大的密度動(dòng)態(tài)范圍,這種說(shuō)法都是在混淆視聽(tīng)。密度動(dòng)態(tài)范圍是圖像采集設(shè)備能獲取模擬信號(hào)的界限范圍,無(wú)論如何與編碼位深度沒(méi)有任何關(guān)系。高比特僅僅將設(shè)備的密度動(dòng)態(tài)范圍劃分為更多的不連續(xù)梯級(jí),使我們?cè)诰庉媹D像時(shí)具有更大的選擇余地。你可以將密度動(dòng)態(tài)范圍理解為樓層的高度,而顏色位深則是樓梯所包含的臺(tái)階數(shù)量。顯然,如果我們想要梯級(jí)盡可能?。ㄟ@樣做是為了避免階調(diào)的跳變或條杠),密度動(dòng)態(tài)范圍大的要比密度動(dòng)態(tài)范圍小的需要更多的梯級(jí),但密度動(dòng)態(tài)范圍與梯級(jí)這兩者之間并沒(méi)有直接和必然的關(guān)系。