
圖 1:社交媒體上廣為轉(zhuǎn)發(fā)的 " 紅色可樂罐 " 圖片(右側(cè)為局部放大)
圖源:jimhejl(twitter)
首先,大家來一起看張圖,圖里面是不是有一罐平時常見的紅色可口可樂?有人會說,我相信我的眼睛,千真萬確,肯定有。不過先別急,把這張圖在手機(jī)或者電腦屏幕上放大之后,再回頭來仔細(xì)看一下,是不是感覺到有些不對頭?里面似乎只有一些黑乎乎、白花花和青幽幽的線條,唯獨沒有正了八經(jīng)的紅色,可是把圖片一縮小回原形,紅色可樂罐又出現(xiàn)了。這種亦真亦幻的詭異現(xiàn)象該如何解釋?難道真的因為心中有善 , 見的都是光明 , 心中有惡 , 見的都是黑暗,心中有可口可樂,見的就都是紅色易拉罐?
假如視覺欺騙了你,不要悲傷,不要心急,小編會為你在光學(xué)上答疑解惑。一張照片展現(xiàn)出無中生有的顏色其實也并不是什么稀罕事,這與照片本身表示顏色信息的方式有關(guān)。無論是相機(jī),顯示屏,還是打印機(jī),投影儀,各種數(shù)碼圖像設(shè)備在表示一張圖片的時候,都是以像素陣列的形式。說白了,就是整張圖是由很多個小方格作為基本單元組成的,每個小方格稱為一個像素,具有自己的顏色。在二三十年前,早期電子游戲機(jī)的畫質(zhì)粗糙,分辨率低,每個像素尺寸大,圖像總有 " 方格感 ",像打了馬賽克一樣。后來隨著顯示技術(shù)的發(fā)展,一張圖的像素數(shù)量變多,每個像素尺寸變小,整張圖看起來的真實感就越來越強(qiáng)了,單個像素好像隱身了,不過萬變不離其宗,像素陣列的形式還是一直保持著。當(dāng)然在復(fù)古潮流的驅(qū)使下,現(xiàn)今流行的以 CryptoPunk 為代表的 NFT 頭像還是會讓你產(chǎn)生明顯的 " 像素感 " ( NFT 專業(yè)名稱是 Non-Fungible Token,非同質(zhì)化通證 ) 。

圖 2:早期電子游戲機(jī)的畫面
圖源:Light 科普坊 /VEER

圖 3:NFT 頭像
圖源:Light 科普坊 /VEER
我們平時常說黑白照片和彩色照片,黑白電影和彩色電影,其實 " 黑白 " 指的應(yīng)該是 " 灰度 ",里面雖然沒有彩色,但是具有從全黑色、深灰色,中灰色,淺灰色一直到全白色的連續(xù)過渡 ( 具體可以用灰度值 0 到 255 來表示 ) ,也可以帶來相當(dāng)程度的圖像效果和表現(xiàn)力,比如上世紀(jì) 90 年代的電影名作《辛德勒名單》的導(dǎo)演就有意在大部分的畫面中采用沒有彩色的灰度效果。但有些時候,受技術(shù)限制,真正的灰度也是做不到的,比如簡易的打印機(jī)或者顯示屏只能在每個像素顯示全黑色 ( 0 ) 和全白色 ( 255 ) ,相當(dāng)于只有純黑色和純白色兩只畫筆,可以稱得上是真正的 " 黑白 " 二值化顯示。巧婦難為無米之炊,要想繪制出一張不同位置灰度深淺不一的照片也要動一番腦筋。

圖 4:某哥們照片灰度圖 ( 左 ) ,粗暴近似獲得的黑白二值圖 ( 中 ) ,像素優(yōu)化獲得的黑白二值圖 ( 右 )
圖源:Light 科普坊 /VEER
例如我們要顯示國外某哥們的這張灰度照片,如果直接把不同像素的灰度值硬性近似為純黑色或者純白色,淺灰色就一律 " 四舍五入 " 為白色,深灰色就一律 " 四舍五入 " 為黑色,最后的結(jié)果就像第二張圖那樣慘不忍睹,整個一張 " 大花臉 ",而第三張圖看起來就舒服了很多,似乎其中灰度深淺可變,不只有全黑全白兩種顏色,但仔細(xì)一看,其實仍然只有這兩種像素點,只是由于使用了一種名為 " 誤差擴(kuò)散 " 的算法 [ 1 ] ,合理控制了不同區(qū)域的黑白像素比例,黑點相對密集的地方表示暗的區(qū)域,白點相對密集的地方表示亮的區(qū)域,以空間分布換取了顏色深淺表示上的精度,就像變了魔法一樣,帶來了完整的灰度觀看體驗。
而使用有限數(shù)量的畫筆創(chuàng)造出千變?nèi)f化的彩色,同樣可以做到。在彩色顯示中,紅綠藍(lán)是三原色,紅光和綠光混合可以產(chǎn)生黃色光,綠光和藍(lán)光混合可以產(chǎn)生青色光,紅光和藍(lán)光混合可以產(chǎn)生紫色光,三原色都混合到一起獲得的結(jié)果則是白色光。理想情況下,一個像素可以同時產(chǎn)生紅綠藍(lán) ( RGB ) 三原色的光,并且三個通道的強(qiáng)度都是可以自由調(diào)節(jié)的,可以方便地混合出各種彩色。可理想是美好的,現(xiàn)實是骨感的,如果一個像素只能單獨顯示紅色或者單獨顯示藍(lán)色,要想搭配出紫色咋辦呢?
在下面的這些棋盤格子圖案中,每個方塊都是紅色或者藍(lán)色,數(shù)量比例是 1:1,從左到右,隨著格子的逐漸變小,相當(dāng)于像素變得更小更密集,似乎紅色和藍(lán)色在漸漸消失,而最終整個圖案變成了紫色。這其實是錯的!所有的圖案 ( 包括最右面的圖案 ) 中所有像素都只有紅色和藍(lán)色,紫色是人眼融合紅藍(lán)色像素產(chǎn)生的一種錯覺,或者說憑空感知出了原本不存在的顏色。

圖 5:紅藍(lán)方塊尺寸逐漸減小而融合為紫色
圖源:焦述銘
下面左圖里,每個像素只有 256 種可能的顏色,在表現(xiàn)更豐富的色彩層次時就顯得力不從心,捉襟見肘,而讓像素點的位置更合理地分布之后,右邊的圖明顯變得更加令人賞心悅目。

圖 6:原本 256 色的圖片(左)經(jīng)過優(yōu)化處理后的效果(右)
圖源:維基共享資源
我們可以通過有限數(shù)量顏色像素位置的空間分布獲得 " 無中生有 " 的新顏色,而時間維度則是另一種方式。舉個簡單的例子,很多人小時候一定玩過這樣的游戲,用硬紙板制作一個小圓盤,小圓盤上交替涂上紅色和黃色,然后把小圓盤中間穿上一根小支柱,讓小圓盤像陀螺一樣快速旋轉(zhuǎn),你會看到什么?沒錯,小圓盤既不是紅色,也不會黃色,而是紅黃兩色快速 " 輪班 " 在你的眼前閃過,被 " 調(diào)成 " 了中間的橙色。顯示屏在播放視頻時,事實上相當(dāng)于每秒鐘幾十張的靜態(tài)畫面依次快速閃過,而人眼恰好又有視覺暫留效應(yīng),把它們混疊在一起,以這種方式快速交替顯示兩種原色,自然也可以欺騙你的眼睛看到融合后的新顏色。
其實以上提到的這些圖像處理把戲還有個專門的名稱:抖動 ( dithering ) 。這要從幾十年前第二次世界大戰(zhàn)時候說起,當(dāng)時電子計算機(jī)還沒有發(fā)明,美國軍方的轟炸機(jī)在計算飛行方向和投彈曲線時也只能使用機(jī)械計算機(jī),一臺大箱子里面包含了大量的齒輪和杠桿零件,別看計算精度不咋地,還挺嬌氣,怕碰怕摔,在轟炸機(jī)駕駛艙里忽上忽下地可不像家里坐在沙發(fā)上那么舒服,人們最擔(dān)心劇烈的晃動會把零件震落下來幾個,讓機(jī)械計算機(jī)玩不轉(zhuǎn)了,飛機(jī)迷失航向,炸彈誤扔到自己的陣地上就要出大麻煩了。不過人家這種計算機(jī)還挺爭氣,在飛機(jī)上也并沒有晃壞,而且意外的是,計算的結(jié)果反而比在地面上安安穩(wěn)穩(wěn)使用時更準(zhǔn)確,讓人大惑不解。既然它有這個 " 怪脾氣 ",工程師們還一度專門設(shè)計了模擬飛行狀態(tài)的振動器,讓機(jī)械計算機(jī)在地面上也能體驗飛一般的感覺,以提升計算精確度。
這些家伙為什么在飛機(jī)上晃一晃之后更好用呢?主要是由于早期機(jī)械零件不像現(xiàn)在的計算機(jī)可以精確到小數(shù)點后很多很多位,只有有限的數(shù)位,假設(shè)只能精確到十位 ( 100,110,120,130,140,… ) ,個位就要四舍五入了,比如 123 只能用 120 表示,而 128 只能用 130 表示,這顯然是不夠靠譜的,經(jīng)過一步步的計算,誤差會越積累越多。與其每次都把 123 用 " 缺斤少兩 " 的 120 表示,一個更聰明的辦法是 123 有的時候用 120 表示,有的時候用 130 表示,但是因為它更接近 120,用 120 表示的占比要稍多一些,就像用一杯滾燙的沸騰開水和一杯零度的冰水適當(dāng)比例調(diào)和,可以勾兌出中間某一冷熱程度的溫水。而把機(jī)械計算機(jī)晃一晃,相當(dāng)于引入了誤差,恰好讓原本每次都能正常四舍五入的運算一部分時候失靈,四也不舍,五也不入,陰差陽錯之下在不經(jīng)意間實現(xiàn)了這種 " 數(shù)值勾兌 " 的效果。這種通過加入一些隨機(jī)的小誤差,化解掉計算時四舍五入時候大的誤差,是一個 " 以毒攻毒 " 的絕妙主意,這是抖動技術(shù)最早來源 [ 2 ] 。
在二戰(zhàn)結(jié)束后的 1946 年,世界上第一臺現(xiàn)代電子數(shù)字計算機(jī) ENIAC 誕生于賓夕法尼亞大學(xué),機(jī)械計算機(jī)逐漸淡出歷史舞臺,不過抖動技術(shù)在另一個顏色顯示技術(shù)的舞臺上卻大放異彩。各類相機(jī)和顯示器從發(fā)展早期階段甚至直到今天,在忠實地記錄和再現(xiàn)五彩斑斕的現(xiàn)實世界時,遇到的一個棘手的麻煩就是顏色種類不夠多,這在幾十年前的報紙雜志印刷和電視電腦顯示屏中表現(xiàn)尤為突出。類似于解決早期計算機(jī)表示數(shù)值位數(shù)不夠時的抖動方法,就像畫家使用調(diào)色板一樣,我們可以用多種已有顏色調(diào)和出不存在的顏色。畢竟人的 " 眼神兒 " 不那么好,可以把位置很接近的微小像素或者不同時間點快速變化的像素融合到一起進(jìn)行虛擬的調(diào)色。隨著技術(shù)的發(fā)展,如今最普通的手機(jī)顯示屏也可以直接支持很多種顏色,往往不再需要無中生有創(chuàng)造新色彩,但實驗室中用于特定場景的不少專業(yè)顯示設(shè)備由于性能受限,還是很依賴相關(guān)的技術(shù),比如用于全息三維顯示的液晶空間光調(diào)制器和數(shù)字微鏡器件 [ 3 ] [ 4 ] [ 5 ] 。
在對于顏色的感知上,人類視覺還有其他很多不可思議的奇妙現(xiàn)象,比如下面這張圖,你第一眼印象覺著它是彩色照片嗎?

圖 7:顏色同化網(wǎng)格視錯覺圖片
圖源:stuarthumphryes(twitter)
真相是這張圖里大部分像素都是灰度的,無法區(qū)分顏色,只有覆蓋在灰度照片上的網(wǎng)格線中的像素是彩色的,當(dāng)然這些像素顏色不是隨意設(shè)置的,而是相比于照片中對應(yīng)像素原本正確的顏色進(jìn)行了過飽和處理,可以簡單理解為網(wǎng)格上的像素顏色比正常情況更鮮艷很多,飽和度很高,相比較之下,背景的灰度像素完全沒有彩色,飽和度為 0,兩種 " 極端 " 的像素在人眼的融合之下,使得整張照片看起來具有正常的彩色。以上這種效應(yīng)被稱為顏色同化網(wǎng)格視錯覺 [ 6 ] ,當(dāng)然我們也可以把網(wǎng)格設(shè)計的更加密集,到單個像素的尺度," 偽彩色 " 照片中大多數(shù)像素是灰度的事實會更難被發(fā)現(xiàn)。
最后讓我們回到文章開頭的紅色可口可樂罐,這又是人眼對于顏色的另外一種誤判,下面的草莓圖片也有類似效果。要產(chǎn)生這樣的圖像效果,具體做法是:將原本正常顏色的照片分解為有很多微小的點或者細(xì)密的線條組成,以線條為例,分為相互交錯的兩組,其中一組中把線條像素的紅色成分設(shè)成 0,于是這些線中原本有紅色的部分看起來偏黑色或者原本沒有紅色的部分看起來偏青色,另一組中保持紅色成分不變,但把綠色和藍(lán)色成分的強(qiáng)度值設(shè)為最大 ( 過飽和 ) ,這些線會看起來偏白色。兩種交錯的線條中都相當(dāng)于調(diào)高了綠色和藍(lán)色的強(qiáng)度,降低了紅色的強(qiáng)度,等效于通過一張把紅光去除掉的濾光片觀看原始照片,整張圖片像是蒙上了一層偏青色的面紗。由于這種情況下,即使原本實際為紅色的物體也會看起來是黑的,反過來了說,對于表面看起來像是偏黑色的物體,人眼和大腦本能上更趨向于還原它們?yōu)榧t色,于是可樂易拉罐和草莓也就是這樣被 " 染成了紅色 ",這稱為顏色恒常性錯覺 [ 7 ] 。

圖 8:原始彩色圖片
圖源:Light 科普坊 /VEER

圖 9:通過兩組交錯線條來產(chǎn)生紅色錯覺 ( 右側(cè)為線條的放大:紅色在哪里? )
圖源:Light 科普坊 /VEER

圖 10:通過兩組交錯方格來產(chǎn)生紅色錯覺 ( 右側(cè)為網(wǎng)格的放大:紅色在哪里? )
圖源:Light 科普坊 /VEER
以上的種種 " 騙局 " 足以證明人類視覺在某些時候辨別顏色的能力簡直弱爆了,不過一個更加離譜的例子 [ 8 ] 還在下面,我們本能地會覺著上下兩個物體的顏色明顯不一樣,一個深灰色,一個白色。但是你只要用一根手指擋住兩者之間的交界區(qū)域,會發(fā)現(xiàn)兩個物體的顏色竟然是一摸一樣的!這個結(jié)果一定會讓你抓狂。


圖 11:一張顛覆你顏色深淺判斷能力的圖片
圖源:American Scientist .org
讀完了本文之后,你還相信自己的雙眼嗎?它們確實會經(jīng)常犯各種莫名其妙的錯誤,每次的錯誤 " 犯了就改,改了再犯 ",不過也正是這種善意的欺騙,促使你 " 腦補(bǔ) " 出真實物體不存在的顏色,讓你感知到的世界更加絢麗多彩。
原文地址:http://www.myzaker.com/article/62ff5df0b15ec054de4cb8be