顧春華 王少云 秦 堯
1.上海電影藝術(shù)學(xué)院,上海 201203
2.北京策瑪文化傳播有限公司,北京 101100
線性工作流(Linear Workflow)是線性化數(shù)據(jù)工作流程的簡稱。這里的數(shù)據(jù)特指計算機用來記錄和描述畫面中明暗和色彩的數(shù)據(jù),簡稱顏色數(shù)據(jù)[1]?!熬€性化”不僅要求圖像顏色數(shù)據(jù)所表達(dá)的畫面亮度必須是線性的,而且圖像顏色數(shù)據(jù)在計算機處理過程中也必須是基于線性工作流程,即圖像顏色數(shù)據(jù)在數(shù)字處理過程中輸入值與輸出值始終保持相同。
線性工作流旨在使圖像獲得準(zhǔn)確的亮度顯示結(jié)果,其核心是確保輸入的顏色數(shù)據(jù)是線性的,其本質(zhì)是通過正確校正伽馬(Gamma)偏差使圖像以正確的線性化效果顯示,從而使得圖像的明暗看起來更具真實光影感,更符合人眼觀感[2]。
雖然線性工作流已在影視視效中廣泛使用,但是人們對其原理和理解較為片面。在充分講解線性工作流原理之前,筆者首先從圖像傳感器對光的線性響應(yīng)特性、人眼視覺對光的非線性反應(yīng)特性、色深與存儲資源、伽馬與伽馬校正等方面進(jìn)行展開說明。
無論是主流的電影攝影機(例如,ARRI ALEXA Mini、RED DRAGON、SONY F65)還是數(shù)碼手機,在光電轉(zhuǎn)換過程中圖像傳感器對光的響應(yīng)幾乎都是線性的,我們將其稱為“線性光”。例如,在一間漆黑的屋子中,如果不點亮任何蠟燭,即X 值(蠟燭數(shù)量)為0,那么圖像傳感器采集到的光線數(shù)量為0,即Y 值(圖像傳感器輸出量)為0;如果點亮1 支蠟燭,即X 值為1,那么圖像傳感器采集到的光線數(shù)量為1,即Y 值為1。以此類推,如果點亮100 支蠟燭,即X 值為100,那么圖像傳感器采集到的光線數(shù)量為100,即Y 值為100。結(jié)合圖1 讀者可以非常直觀地看到:圖像傳感器對光的響應(yīng)呈現(xiàn)為線性特性。
圖1 圖像傳感器對光的響應(yīng)呈現(xiàn)線性特性①
人類視覺系統(tǒng)(HVS)采集光線與觀察世界的方式與數(shù)字?jǐn)z影機完全不同,所有的媒介(例如繪畫、攝影、影視以及印刷等)都需經(jīng)過人眼的視覺感知才能轉(zhuǎn)化為大腦可理解的圖像信息。研究表明:人眼對自然界光線變化的感知是非線性的,人眼具有對弱光線更敏感的特性,這就意味著人眼在黑暗環(huán)境下的辨識能力要強于明亮環(huán)境(圖2)。
圖2 在較暗環(huán)境下人眼對亮度的辨識能力要強于較亮環(huán)境②
為便于理解,讀者仍可設(shè)想以下生活場景。同時,為便于表現(xiàn)人眼視覺對光的非線性反應(yīng)特性,筆者仍將以參數(shù)數(shù)值作輔助解說。在漆黑的屋子里點亮1 支蠟燭,即X 值(蠟燭數(shù)量)為1,那么人眼感知到1 支蠟燭的亮度,即Y 值(人眼視覺感知亮度值)為1;如果點亮2 支蠟燭,人眼可能會感知到2 個數(shù)量的亮度,即Y 值為2;但是,如果此時讓人眼感知到3 個數(shù)量的亮度則需點亮4支或更多蠟燭。以此類推,當(dāng)在點亮100 支蠟燭的屋子里再多加1 支蠟燭時,人眼基本上是感受不到其亮度變化的;此時,為了讓人眼感受亮度增加的變化,可能需要再增加100 支蠟燭(圖3(a))。
圖3 人眼對自然光線的感知度曲線③
因此,對于人眼視覺而言,當(dāng)環(huán)境光比較弱時,微弱的光源也能帶給人較強的亮度感受;當(dāng)環(huán)境光已經(jīng)很亮?xí)r,即使再增加更多的光源,人眼感知亮度的增幅卻不大。根據(jù)韋伯-費希納定律,當(dāng)人體感官所接收到的感覺以算術(shù)級數(shù)增加時,外界刺激強度需要以更大的幾何級數(shù)增加人們才能感覺其差異,這是由于人眼對自然光線亮度的感知是非線性的。因此,自然界真實的亮度信息與人眼所“看到”的信息是有區(qū)別的。總而言之,人眼對暗部的光線變化更為敏感,對亮部的光線變化不敏感。
實驗證明:如果定義0 為純黑(物理亮度為0),1為純白(物理亮度為100%),那么亮度從0 上升到21.8%左右時,此時人眼就會感覺灰度已經(jīng)達(dá)到了白色的50%,即人眼視覺上感知的中灰色是物理上白色亮度的21.8%左右。該漸變計算方式通過伽馬曲線來表示,其值接近于1/2.2。因此,人眼視覺特性接近于伽馬值為1/2.2的曲線(上曲線),如圖3(b)所示。
色深(Colour Depth),顧名思義是指“色彩深度”,這里的“深度”是描述色彩的精細(xì)程度,色深又叫“色彩位深”。色深與位深(Bit Depth)是兩個不同的概念,色深僅用于數(shù)字圖像領(lǐng)域?qū)ι矢拍畹拿枋?;位深則更寬泛,通常用于描述模擬信號的量化程度或模數(shù)轉(zhuǎn)換中的精細(xì)程度。因此,色深是位深的一部分[3]。
在數(shù)字圖像中,像素(Pixel)是最小的單位,每個像素都有自己獨立完整的參數(shù)設(shè)置。在RGB(紅綠藍(lán))三通道圖像中,每個像素都由紅、綠和藍(lán)三個通道組成,其中每個通道又由若干個二進(jìn)制位來表示其“含量”。 因此,人們使用色深來表示該顏色的二進(jìn)制位數(shù)。另外,雖然色深用于描述所有顏色的二進(jìn)制位數(shù),但是這并不意味著圖像一定會使用所有顏色,而是表明可以指定的顏色精度級別。因此,色深位元數(shù)越高,編碼顏色信息越豐富,色彩之間的過渡也越細(xì)膩,從而更貼近真實圖像的顏色信息[4]。
通常,色深使用n 位元顏色(N-bit Colour)作為單位,若色彩深度是n 位元,即有2n種顏色可供選擇,而儲存每種像素所用的位數(shù)目即為n[5],例如:21表示RGB 每個通道可含有2 種顏色( 黑和白),28表示RGB 每個通道可以細(xì)分為為256 種灰度層次(灰階)。
簡而言之,圖像色深越大,顏色信息越豐富。但是,隨之產(chǎn)生的是存儲和傳輸?shù)确矫娴闹T多問題。例如,在主流的8 位色深圖像中(如.jpg 文件格式圖像),由于RGB 每個通道只有256 個色階,如果線性地記錄或保存圖像的亮度信息,即亮色和暗色均勻分布,那么對于顏色或細(xì)節(jié)要求較高的圖片,其高光區(qū)域就會灰階精度過剩而暗部區(qū)域則會灰階精度不足,從而造成存儲資源的浪費,這將嚴(yán)重影響圖像的觀感和表現(xiàn)。因此,人們需要研究更好的圖像存儲方式以兼顧圖像信息與圖像大小。
在上文中,我們已經(jīng)了解到人眼對自然界光線明亮程度的主觀感受是非線性的且遵循指數(shù)規(guī)律。同時,人眼對圖像中的暗部區(qū)域更為敏感。因此,可以在有限的存儲資源中通過記錄更多有價值的暗部信息從而改善圖像的觀感。因此,根據(jù)人眼的感知,我們使用伽馬和對數(shù)轉(zhuǎn)換優(yōu)化比例標(biāo)準(zhǔn)以更好地平衡顏色亮度等級,旨在使用同樣數(shù)量的編碼值量化每個亮度等級,如圖4所示。
圖4 根據(jù)人眼感知使用伽馬曲線優(yōu)化亮度分布
圖像傳感器對光的響應(yīng)是線性的,獲得的是原始數(shù)據(jù)(Raw Data),但是線性的圖像數(shù)據(jù)不便于直接觀看。因此,在數(shù)字圖像處理過程中,圖像信息流要經(jīng)過兩個重要的非線性映射才能使圖像在顯示設(shè)備上正常顯示。在拍攝環(huán)節(jié),我們將相機的非線性映射稱為光電轉(zhuǎn)換函數(shù)(Optical-Electro Transfer Function,OETF),主要用于定義輸入景物亮度的對數(shù)(單位為lg cd/ m2)和光電數(shù)字?jǐn)z像系統(tǒng)的數(shù)字輸出信號值之間的關(guān)系,即描述線性可見光的亮度顏色值與非線性數(shù)字編碼的顏色值之間的函數(shù)關(guān)系[6];在顯示環(huán)節(jié),我們將顯示器的非線性映射稱為電光轉(zhuǎn)換函數(shù)(Electro-Optical Transfer Function,EOTF),主要用于描述輸入顯示器的非線性顏色值和顯示器所顯示的線性顏色值之間的關(guān)系。
在圖像獲取、存儲與顯示發(fā)展過程中,雖然光電轉(zhuǎn)換函數(shù)與電光轉(zhuǎn)換函數(shù)也經(jīng)歷了多次進(jìn)化,但是縱觀整個發(fā)展過程,最具指導(dǎo)意義即是伽馬校正(Gamma Correction)。
伽馬(Gamma)是線性工作流中最為重要也最難理解的概念之一。在計算機圖形圖像領(lǐng)域,伽馬的初始定義是用于描述顯示設(shè)備非線性信號損耗程度的參數(shù),伽馬的最終目的是為了模擬人眼的視覺特性以最大程度地協(xié)調(diào)自然光線亮度和人眼視覺特性的函數(shù)映射關(guān)系。一方面伽馬校正的原因是為了在有限的存儲資源情況下存儲更多有價值的暗部信息,另一方面則由于顯示設(shè)備輸入電壓與輸出亮度呈非線性關(guān)系的物理特性。因此,之所以存有光電轉(zhuǎn)換函數(shù)(OETF)和電光轉(zhuǎn)換函數(shù)(EOTF)主要還是為了高效利用存儲資源,在人眼對光線亮度更為敏感的暗部區(qū)域分配更多的數(shù)值來表達(dá)光線的程度[7]。
由于伽馬將在線性工作流的不同地方都需要被提及,為便于讀者理解,筆者參照人眼觀察數(shù)字圖像的主要過程將其詳細(xì)描述為圖像存儲過程中的編碼伽馬校正、圖像讀取過程中的解碼伽馬校正、顯示設(shè)備固有伽馬屬性以及軟件視圖窗口施加的反向補償伽馬校正。
2.4.1 圖像存儲過程中的編碼伽馬校正
在上文中,我們已經(jīng)了解到人眼對自然光線亮度的感知不僅呈現(xiàn)為非線性,而且人眼對暗部的光線變化更為敏感,人眼視覺特性接近于伽馬值為1/2.2 的曲線(上曲線)。同時,圖像傳感器(或圖像軟件渲染器)對光的響應(yīng)呈現(xiàn)為線性特性,即伽馬值為1。因此,數(shù)字圖像在生成或保存過程中,圖像傳感器(或圖像軟件渲染器)執(zhí)行了光電轉(zhuǎn)換函數(shù)(OETF)轉(zhuǎn)換。光電轉(zhuǎn)換函數(shù)(OETF)是將可見光的亮度轉(zhuǎn)換為電子信號數(shù)值的“編碼函數(shù)”,即對原始圖像數(shù)據(jù)作了編碼伽馬校正(上曲線)以在有限的存儲資源中存儲更多有價值的暗部信息。其目的是為了讓亮度分級與人類的視覺觀感相似,從而解決在有限的存儲空間中盡可能多地保存人眼感受敏感的色彩內(nèi)容,以便人眼觀察顯示器時能得到與觀察現(xiàn)實世界時相近的視覺感受并以此達(dá)到心理預(yù)期。
因此,圖像數(shù)字都是以非線性編碼形式進(jìn)行存儲輸出,圖像數(shù)據(jù)所描述的畫面亮度,相對于現(xiàn)實中的物理相對亮度分布來說是偏亮的,所以此時的圖像數(shù)據(jù)不具備物理真實性。從圖5也可以看出:圖像存儲過程中編碼伽馬曲線在數(shù)值較低區(qū)域(即對應(yīng)圖像的暗部區(qū)域)其函數(shù)的曲率更高,一方面說明此部分區(qū)域存儲更多信息,另一方面也符合人眼對暗部變化感受更為敏感的特性。
圖5 圖像存儲過程進(jìn)行編碼伽馬校正處理
2.4.2 圖像讀取過程中的解碼伽馬校正
由于數(shù)字圖像在存儲過程中使用了編碼伽馬校正(上曲線),此時雖然圖像呈現(xiàn)為整體偏亮,但是最大限度地保留了圖像暗部區(qū)域的細(xì)節(jié)。在數(shù)字圖像處理過程中,為了確保圖像的后期處理都是基于線性工作流程,因此圖形圖像軟件會根據(jù)數(shù)字圖像自身特性在圖像讀取過程中對圖像作解碼伽馬校正(下曲線)。由于編碼校正伽馬(上曲線)與解碼校正伽馬(下曲線)正好相互抵消,從而實現(xiàn)了(理論上)線性工程流程并確保人眼所看到的是符合物理現(xiàn)實世界的亮度信息。
2.4.3 顯示設(shè)備固有伽馬屬性
早期陰極射線管(Cathode Ray Tube,CRT)顯示器存在輸入電壓與輸出亮度并非線性關(guān)系的物理響應(yīng),該曲線正好與人眼視覺特性和編碼伽馬校正曲線(近似值為1/2.2,上曲線)相反。1996年,微軟和惠普在特定的光照條件下測試人們觀看顯示器的感受并制定了sRGB 色彩空間標(biāo)準(zhǔn),即標(biāo)準(zhǔn)RGB(Standard RGB)。在提出sRGB 標(biāo)準(zhǔn)的時候,其實很大程度上也參考了當(dāng)時市場上主流攝影機、顯示器和掃描儀等色彩標(biāo)準(zhǔn);同時,也參考了韋伯-費希納定律,即人眼的感光曲線其實是對數(shù)曲線,對于人的感覺來說同樣的物理增量,永遠(yuǎn)是總量小的時候增量最為明顯[8]。sRGB 色彩空間作為行業(yè)規(guī)范,規(guī)定了用于編碼的伽馬近似值為1/2.2(上曲線),用于解碼的伽馬近似值為2.2(下曲線)。
如今,平板液晶顯示器雖然沒有早期陰極射線管顯示器非線性關(guān)系的物理響應(yīng),但是為了得到同樣的顯示效果,硬件廠商仍會為顯示器配置數(shù)值近似為2.2(下曲線)的伽馬曲線以獲得正確的圖像顯示效果。雖然顯示設(shè)備固有伽馬屬性的設(shè)計參照當(dāng)時主流硬件設(shè)備的物理屬性而來,但是更主要的原因仍是基于人眼對自然光線亮度感知的非線性特性。因此,顯示設(shè)備固有伽馬屬性并不是顯示器發(fā)展過程中的歷史遺留問題或顯示失真原因,而是為了合理地利用有限的灰階存儲資源,最大限度地記錄顏色信息。
2.4.4 軟件視圖窗口施加反向補償伽馬校正
在圖像顯示過程中,顯示器執(zhí)行電光轉(zhuǎn)換函數(shù)(EOTF)轉(zhuǎn)換,電光轉(zhuǎn)換函數(shù)(EOTF)是顯示設(shè)備根據(jù)電子信號所顯示出的實際亮度與信號數(shù)值所原本表達(dá)的亮度之間的“解碼函數(shù)”。受目前主流顯示設(shè)備固有伽馬屬性影響,伽馬近似值為2.2(下曲線)時,圖像整體會呈現(xiàn)偏暗的結(jié)果。因此,為了補償顯示器帶來的亮度偏差,支持線性工作流程的軟件都會通過視圖窗口施加近似值為1/2.2(上曲線)的反向伽馬進(jìn)行補償校正,從而為圖像暗部帶來更多細(xì)節(jié)的同時提升畫面真實感。
通過以上步驟,不僅能夠使數(shù)字圖像處理基于線性工作流,而且顯示圖像的亮度也更具真實光影感。同時,一旦數(shù)字藝術(shù)家在線性工作流中完成對圖像的色彩校正、圖像疊加或濾鏡添加等數(shù)字圖像處理后,就可以再按照圖像存儲過程中的編碼校正對數(shù)字圖像進(jìn)行渲染輸出,從而形成閉環(huán)線性工作流程。正確實施線性工作流程的核心是確保輸入的顏色是線性,線性工作流的本質(zhì)就在于通過正確地校正伽馬偏差,使圖像以正確的線性化效果顯示,從而圖像達(dá)到更符合人眼的觀感,如圖6所示[9]。
圖6 線性工作流程圖
由于人眼的非線性光線感知特征以及顯示設(shè)備固有伽馬屬性等原因,攝像機是以非線性方式進(jìn)行圖像存儲。但是,在影視視效環(huán)節(jié),計算機則是完全以線性方式進(jìn)行圖像的數(shù)字化處理。此時,如果對明暗分布非線性的圖像執(zhí)行線性化的數(shù)字圖像運算將會導(dǎo)致錯誤的計算結(jié)果。因此,在視效制作中,數(shù)字藝術(shù)家需要確保所有參與后期處理的圖像素材必須都是線性的[10]。
在線性工作流中,所有參與計算的數(shù)據(jù)都是基于線性的,遵循線性化工作流程,即意味著在處理圖像時要全部使用線性色彩空間。例如,在數(shù)字合成過程中,默認(rèn)情況下三維渲染輸出的分層是線性色彩空間,但是合成所用的圖像素材有可能是sRGB 色彩空間、AlexaV3LogC 色彩空間(ARRI 攝影機LogC對數(shù)模式)或Cineon 色彩空間(Log 對數(shù)模式)等。因此,多種不同色彩空間的合成素材相互疊加后會導(dǎo)致不正確的合成畫面顏色結(jié)果(該問題尤其會在后續(xù)的調(diào)色環(huán)節(jié)放大呈現(xiàn))。
Nuke 是一款基于32 位浮點線性(32-bit Float Linear)高端數(shù)字合成軟件。這使得Nuke 不僅可以無損地、高精度地處理顏色信息,而且還能夠保證所有合成運算都處于線性工作流。Nuke 在處理不同色彩空間的圖像素材時非常友好:為了對不同色彩空間的文件素材進(jìn)行統(tǒng)一管理和運算,默認(rèn)設(shè)置下Nuke 會將導(dǎo)入的圖像素材全部轉(zhuǎn)換為32 位浮點線性,從而保證線性工作流程的開展[11]。
下面,筆者將從圖像讀取過程中的解碼伽馬校正、視圖窗口施加反向伽馬補償校正以及圖像輸出過程中的編碼伽馬校正這三個方面對Nuke 中的線性工作流程進(jìn)行詳細(xì)說明。
為了對不同色彩空間的圖像素材進(jìn)行統(tǒng)一管理并確保所有的合成操作都處于線性工作流,例如,疊加運算、模糊效果、濾鏡添加等,在使用讀?。≧ead)節(jié)點讀取圖像素材時,Read 節(jié)點會根據(jù)導(dǎo)入圖像素材格式最大可能地猜測其編碼校正伽馬并套用最為匹配的反向解碼校正伽馬,從而去除圖像在存儲或渲染輸出過程中的編碼伽馬校正并將其最大可能地轉(zhuǎn)換回RGB 原始數(shù)據(jù)(線性數(shù)據(jù))[12]。因此,在素材導(dǎo)入階段,Nuke 對不同圖像素材套用的各類伽馬選項其實對應(yīng)著不同的光電轉(zhuǎn)換函數(shù)(OETF)的反函數(shù),從而實現(xiàn)去伽馬或達(dá)到線性化。
例如,如果導(dǎo)入的為.dpx 文件格式圖像素材,Read 節(jié)點會自動將其設(shè)置為Log 對數(shù)色彩空間,即自動套用Log 對數(shù)模式下光電轉(zhuǎn)換函數(shù)(OETF)的反函數(shù)進(jìn)行轉(zhuǎn)換;如果導(dǎo)入的為.jpg 文件格式圖像素材,Read 節(jié)點會自動將其設(shè)置為sRGB 色彩空間,即自動套用sRGB 標(biāo)準(zhǔn)下光電轉(zhuǎn)換函數(shù)(OETF)的反函數(shù)進(jìn)行轉(zhuǎn)換。另外,如果導(dǎo)入的為.exr文件格式圖像素材,Read 節(jié)點仍為保留其為線性色彩空間。因此,在讀取環(huán)節(jié),Nuke 對各類圖像素材實現(xiàn)了亮度轉(zhuǎn)換,從而保證了線性工作流的開展。
默認(rèn)設(shè)置下Nuke 對8 位和16 位圖像素材套用sRGB 反向伽馬進(jìn)行解碼校正;對Log 對數(shù)色彩空間圖像素材套用Cineon 反向伽馬進(jìn)行解碼校正;對線性色彩空間圖像素材則不作任何圖像顏色處理。
需要注意的是,雖然在影視視效制作中目前普遍使用10 位或更高位色彩深度的圖像,但是對于8位或更低色彩深度圖像而言,Nuke 會在默認(rèn)設(shè)置下將其全部自動轉(zhuǎn)換為32 位浮點線性,從而保證了后續(xù)高精度的制作要求。
因此,在圖像讀取過程中,由于Read 節(jié)點所猜測的解碼校正伽馬(下曲線)基本與圖像素材在存儲或渲染輸出過程中所添加的編碼校正伽馬(上曲線)相互抵消,所以Nuke 支持的圖像素材格式都會被轉(zhuǎn)換成線形數(shù)據(jù),從而保證接下來的數(shù)字合成都能夠基于線性工作環(huán)境,如圖7所示。
圖7 Read 節(jié)點對讀取圖像施加反向解碼伽馬校正
在Nuke 中,通過Read 節(jié)點在圖像讀取過程中的解碼伽馬校正,此時圖像素材已最大可能地轉(zhuǎn)換回RGB 原始數(shù)據(jù)(線性數(shù)據(jù)),即后續(xù)的合成操作已基于線性工作流環(huán)境。但是,由于顯示器固有伽馬(近似值為2.2,下曲線)影響,圖像會呈現(xiàn)整體偏暗的結(jié)果。因此,為了使合成師能夠看到真實的畫面顏色(亮度),Nuke 中的視圖窗口(Viewer)面板將通過顯示校正(ViewerProcess)屬性控件套用顏色查找表(LUT)進(jìn)行畫面顏色的預(yù)覽查看,默認(rèn)設(shè)置下Nuke會自動套用sRGB 色彩空間,即施加反向伽馬(近似值為1/2.2,上曲線)補償顯示器帶來的亮度偏差。另外,Viewer 面板施加的反向伽馬補償不會對圖像數(shù)據(jù)本身產(chǎn)生任何影響或更改,僅影響圖像畫面的預(yù)覽顯示效果,如圖8所示。
圖8 視圖窗口施加反向伽馬補償進(jìn)行校正
在數(shù)字合成過程中尤其是實拍畫面的合成處理,數(shù)字合成師需要確保除了合成處理的像素可以有別于原始鏡頭畫面之外,其余像素都應(yīng)該與原始鏡頭畫面保持完全一致。因此,在圖像輸出過程中,數(shù)字合成師還需要將線性環(huán)境下合成的最終畫面再次轉(zhuǎn)換回相機保存時的默認(rèn)色彩空間。
在三維素材與實拍素材合成過程中,由于各類合成素材的色彩空間不盡相同,更需要在最終合成鏡頭渲染輸出過程中準(zhǔn)確處理色彩空間。例如,ARRI 相機拍攝素材的色彩空間為AlexaV3LogC,三維分層渲染的色彩空間為線性,照片和視頻素材的色彩空間為sRGB。為了達(dá)到“看起來”像是在同一場景、同一相機拍攝而成的畫面效果,數(shù)字合成師需要在渲染輸出前將含有原始鏡頭以及各類合成素材的色彩空間由線性色彩空間統(tǒng)一轉(zhuǎn)換回ARRI 相機拍攝存儲時所設(shè)定的AlexaV3LogC 色彩空間,從而保證下游調(diào)色環(huán)節(jié)鏡頭色彩空間的正確并避免合成畫面顏色方面的問題。
在圖像讀取過程中,Read 節(jié)點已經(jīng)根據(jù)導(dǎo)入圖像素材格式最大可能地猜測并套用解碼伽馬校正(下曲線)。因此,在圖像輸出過程中,輸出(Write)節(jié)點需套用與Read 節(jié)點解碼伽馬校正(下曲線)相反的編碼伽馬校正(上曲線)以將合成處理后的圖像素材再次轉(zhuǎn)換回相機保存時的默認(rèn)色彩空間。
Nuke 中的線性流可簡單總結(jié)為:首先,在圖像讀取過程中,Read 節(jié)點根據(jù)導(dǎo)入圖像素材格式最大可能地猜測編碼校正伽馬并套用反向解碼校正伽馬以將其轉(zhuǎn)換回RGB 原始數(shù)據(jù)(線性數(shù)據(jù));然后,在圖像顯示過程中,Viewer 面板將通過ViewerProcess 屬性控件套用LUT 進(jìn)行畫面顏色的預(yù)覽查看以補償顯示器帶來的亮度偏差;最后,在圖像輸出過程中,Write節(jié)點套用Read 節(jié)點根據(jù)導(dǎo)入圖像素材格式所猜測的解碼校正伽馬的反函數(shù)以將合成處理后的圖像素材再次轉(zhuǎn)換回相機保存時的默認(rèn)色彩空間,如圖9所示[13]。
圖9 Nuke線性工作流示意圖
本文從圖像傳感器對光的線性響應(yīng)特性、人眼視覺對光的非線性反應(yīng)特性、色深與存儲資源、伽馬與伽馬校正等方面較為詳細(xì)地分析了影視視效制作中的線性工作流程。同時,以目前主流數(shù)字合成軟件Nuke 為例,從圖像讀取過程中的解碼伽馬校正、視圖窗口施加反向伽馬補償校正以及圖像輸出過程中的編碼伽馬校正等方面對Nuke 中的線性工作流程進(jìn)行詳細(xì)說明。本文較為完整地介紹了伽馬校正與線性工作流,在影視視效制作中(尤其是數(shù)字合成領(lǐng)域),線性工作流是最為重要也是最難理解的概念之一,本文不僅為讀者深入理解線性工作流程提供了一定的理論參考,而且也規(guī)范了數(shù)字合成中Nuke 軟件的線性工作制作流程。與此同時,在影視視效制作中,除了需要在數(shù)字合成環(huán)節(jié)注意線性工作流程外,數(shù)字藝術(shù)家還需要在材質(zhì)貼圖以及燈光渲染等環(huán)節(jié)注意線性工作流程的規(guī)范操作。
雖然線性工作流保證了圖像在亮度層面實現(xiàn)物理還原,但是無法實現(xiàn)圖像在色彩方面的還原與統(tǒng)一。因此,為了在影視視效制作各環(huán)節(jié)實現(xiàn)數(shù)字圖像在亮度、顏色以及顯示方面的統(tǒng)一性,數(shù)字藝術(shù)家還需了解ACES 相關(guān)知識,即學(xué)院色彩編碼系統(tǒng)(Academy Color Encoding System,ACES)。ACES 工藝流程的開發(fā)和應(yīng)用,在技術(shù)層面上具有前瞻性。在影視制作中,ACES 不僅可以使多種不同的數(shù)字拍攝源文件之間的色彩空間轉(zhuǎn)換更加方便和簡單,而且可以針對不同的輸出方式保證色彩的一致性和高效性,其目的是為行業(yè)提供標(biāo)準(zhǔn)化的色彩管理系統(tǒng)[14]。
作者貢獻(xiàn)聲明:
顧春華:設(shè)計論文框架,撰寫和修訂全文,全文文字貢獻(xiàn)70%;
王少云:設(shè)計論文框架,參與優(yōu)化論文表述,提供全文技術(shù)指導(dǎo),全文文字貢獻(xiàn)20%;
秦堯:參與優(yōu)化論文表述,提供全文技術(shù)指導(dǎo),全文文字貢獻(xiàn)10%。
注釋
①圖1 來源于https://www.youtube.com/watch?v=rhaLWZgx2Sg 網(wǎng)站相關(guān)視頻內(nèi)容。
②圖2 來源于http://www.cgarena.com/freestuff/tutorials/max/linearworkflow/linear-gamma.html網(wǎng)站相關(guān)視頻內(nèi)容。
③圖3(a)來源于https://www.youtube.com/watch?v=rhaLWZgx2Sg網(wǎng)站相關(guān)視頻內(nèi)容;(b)來源于https://www.zhihu.com/question/27467127/answer/37555901網(wǎng)站相關(guān)圖片。