XYZ色彩空間(Colour space)具有獨特的特性,可以表達人類眼睛所能看到的所有色彩。反過來說,這也意味著它可表達攝影機能捕捉到的所有色彩,因此您可以在視訊中重現任何想要的色彩。
這樣的性質讓數位影院聯盟(Digital Cinema Initiative – DCI),採用XYZ色彩空間作為標準的色彩空間。使用在XYZ色彩空間中表達色彩,支援在數位影院中投射至少可有與膠捲具有相同的色彩深度(Depth of Colour)。
然而,雖然能製造出可錄製接近於在XYZ色彩空間中的色彩的攝影機 – 也就是俗稱的 “完美攝影機”
– 但是卻沒有辦法製造出在XYZ色彩空間中工作的監視器,因為X、Y、及Z並不是真實的色彩。
此外,替監視器選擇一組,可在XYZ中表達各種不同色彩的原色(Primaries)是不可能的事,因此必須做一些妥協。
在本白皮書,將介紹XYZ色彩空間的背景資料,並說明在為傳輸及顯示時,轉換數位影院素材所採用的妥協方式。此外,也將說明OmniTek OTM及OTR波形分析系統的特色,它可以幫助後製作公司,在進行任何傳輸時,讓理想的XYZ來源達到最少的品質降低。
為什麼RGB不夠好
我們在學校時學到,任何的色彩都可由紅、綠、及藍三原色光混合而成,而CRT、LCD顯示及電漿螢幕等,確實都透過套用不同的紅、綠、及藍色次像素(Sub-Pixel)陣列的密度,而產生彩色影像。
但事實上,有許多色彩卻是沒辦法以這樣的方法產生。尤其是,沒辦法產生各式各樣的青綠色(Blue-Green)– 可以完美地由攝影機捕捉,並在膠捲重現的色彩。
因人類眼睛中的紅、綠、及藍色視錐(Cone),對於光線中不同的波長(Wavelength)的反應,導致了這些色彩的喪失,這樣的反應,如圖一所示。x (λ)、y (λ)、及z (λ)曲線分別勾勒出紅、綠、及藍色視錐的反應。這些曲線顯示每一種視錐類型,對於可見光譜(Visible Spectrum)如何的反應(頂端的光譜條,表示色彩與這些波長的關連)。請注意這些範圍如何重疊,也請注意,雖然藍及綠色視錐的反應,在波長範圍內僅顯示單一高峰(Peak),但紅色視錐則在光譜藍色的部分,有第二個較小的高峰。
圖一:眼睛紅、綠、及藍色視錐對於不同波長的常規反應
(這些反應的細節,是從英國國家物理實驗室的John Guild,及倫敦帝國理工學院的W. David Wright的實驗結果演繹而來,他們在1920年代分別實驗,要求實驗對象調整所提供之紅、綠、及藍光源的密度,以便與所選擇之波長的光線相符。不同的人會有不同的紅、綠、及藍色視錐反應,因此上面所顯示的曲線,為一般常規標準的觀測者。)
觀看者看到物體所呈現出來的色彩,是眼睛對於由物體所反射各種波長相混的整體反應,在任何特定波長的成分在每一個紅、綠、及藍色視錐產生一個訊號,它等同於在該波長光源的密度的產生,及視錐對該波長光源的反應。人類對於色彩的反應(大約)為線性(Linear),因此可用數學式來表示:
觀看者對於監視器上像素所感知的色彩,類似於眼睛對從監視器所顯示原色之不同密度光源反應的適當加權總和。
對於許多您想要重製的色彩,是可以為將驅動從觀看者紅、藍、及綠色視錐所希望之反應的顯示原色,找到密度的組合,然而這並非永遠都成立,對於青綠色尤其困難。真正的青綠色,如:對應於波長為500nm,正好驅動藍色及綠色視錐,然而如下圖所示,任何從藍或綠原色的輸出(由垂直的藍色及綠色的線表示),將從紅色視錐、同時也從藍色/綠色視錐引起反應。這將不可能僅從藍色及綠色視錐驅動反應,產生輸出的組合。
圖二:眼睛反應示意圖,說明了對於個別選擇的紅、綠、及藍原色的反應
XYZ色彩空間的產生及其受DCI採用
為了試圖明確的表達任何色彩,研究人員開始著手進行,定義可以表達所有人類眼睛可見之所有範圍的色彩,此色彩空間必須符合下列條件:
⭕ 必須且足以說明任何色彩的三個獨立且為正數的變數。
⭕ 僅有來源的三色激值(Tri-Stimulus Value)在表達任何色彩相關,而不是它們的光譜成分(Spectral Composition)。
⭕ 如果一或多個來源逐漸的改變,將導致三色激值同時也逐漸的改變。
明顯的,要符合這三個條件的選擇是:一個根據個別對於紅、綠、及藍色視錐反應的色彩空間,因此產生了XYZ色彩空間,在其中:
以XYZ代表色彩是完全的明確,在可見光譜中的任何色彩以X、Y、及Z的正數值組合表示。雖然可以製造以XYZ記錄色彩所需要之反應特質的攝影機,但X、Y、及Z並不是真實的色彩,更何況另外還有一些負值的RGB組件。因此,要製造在XYZ色彩空間中工作的顯示幕是不可能的。起而代之,監視器繼續以RGB原色繼續工作,並由任何監視器所產生的結果,將根據它真正使用的紅、綠、及藍原色而定。
在膠捲的世界裡,攝影機及用於形成影像與沖印膠捲上拍攝片段的化學藥劑,可以截取高比例的可見光譜。因此,數位影院的目標,是要提供最寬廣的可能範圍,及色彩的深度。
與其將標準與任何特定的技術連接,數位影院聯盟(DCI)規範了兩件事:首先、它在視訊倡導使用XYZ色彩空間進行傳輸;其次、它為顯示虛擬投影機(Hypothetical Projector),規範使用一組提供最大可達到之色彩範圍的RGB原色,當作其參考系統。將兩者組合在一起,給予數位影院在膠捲方面最可能之地位的雙優勢,同時也使DCI的標準,以未來技術的提升為後盾,而成為不會過時的技術。
XYZ與RGB之間的轉換
XYZ色彩的表現形式是非常明確的,並且透過X、Y、及Z值的獨特組合,呈現任何眼睛可看到的色彩。然而,監視器及電視的顯示,卻是在RGB原色的世界中運作。因此,當XYZ色彩空間為所想要的色彩,提供了非常好的溝通管道時,我們也需要能將XYZ適當的轉換成RGB的方法。
幸運的是,觀察顯示人類對於色彩的反應(大約為)線性,此依實驗而得的規則,也就是格拉斯曼定律(Grassman’s Law),而它意味在一個色彩空間的任何三色激值,透過一線性轉換(Linear Transform)可轉換成在另一色彩空間中的三色激值(亦即,涉及相乘及相加的運算)。因此,任何XYZ值皆可透過套用一線性轉換,而轉換成RGB值,其數學式如下所示:
(從RGB轉換成XYZ色彩空間,也使用類似的矩陣)
在數學式中,要決定套用在任何特定案例之3 x 3矩陣為何,牽扯到非常複雜的問題,但在SMPTE RP 177中,已經有完成的範例可尋(在本白皮書的附錄中)。
然而,從XYZ轉換成RGB有兩個很大的問題。首先、人類眼睛可以看到的色彩(也就是XYZ色彩空間可以表達的),很大一部份會轉換成負值的R、G、或B值。換句話說,它們無法使用RGB原色重製。處理負值唯一的方式,是以最小允許值(通常為4)取代任何的負值。相同的,轉換也可能產生超過可接受範圍的最大極限的值,因此必須以最大允許值(通常為1019)取代。這些調整的效果,是將影像中的色彩進行去飽和(De-Saturate),而此去飽和的動作,僅是色彩空間轉換必然的結果,雖然這是後製作調光師需動腦筋的議題之一!
這些轉換有另一個值得關注的地方:不同RGB系統所處理之色彩的不同範圍。不僅不同的監視器使用不同的設備作為其色彩原色的來源,即使PAL、NTSC、及HD傳輸標準,所定義的RGB原色,彼此也有些微的不同(請參閱表格一)。
表格一:顯示不同的視訊標準所定義的原色
這些不同,意味雖然在某一RGB系統是完美有效的色彩,在其他RGB系統中,也許卻會落在有效的色域之外。
另一件必須注意的事是,使用XYZ色彩空間的視訊,一般都以Gamma校正過的X'Y'Z'傳送,也就是說,在它可以轉換成其他色彩空間之前,必須還原成未套用Gamma校正時的狀態。
XYZ與OmniTek OTM/OTR系統
鑑於數位影院聯盟以XYZ作為他們色彩空間的標準,OmniTek的OTM系統及其OTR系統,皆提供支援XYZ色彩空間的能力。
此支援透過針對數位影院聯盟為設計目標的選購軟體VIEW_XR_DCI達到。除了提供對於XYZ色彩空間的支援之外,選購的VIEW_XR_DCI也提供了12-Bit資料、Gamut柱狀圖(Histogram)顯示、及獨特的“CIE圖表顯示”(在其他白皮中說明)的支援。
從淺層來說,在OTM/OTR應用軟體的一些特定的點所提供之XYZ額外選擇,可以看到對於XYZ額外的支援。例如:Waveform View(波形檢視)可在標準提供的RGB及YCbCr波形旁邊,顯示XYZ的波形。在主要的Gamut顯示,也提供了XYZ的選項。
在RGB/YCbCr像素色彩描述之間切換,所需的各種轉換及XYZ的對等值,亦自動的為您進行處理,還原套用在X'Y'Z'來源資料的Gamma校正,您僅需提供用來詮釋XYZ訊號的色彩原色細節(選擇SMPTE C Gamut、EBU Gamut、Rec 709 Gamut、或DCI Gamut),及在XYZ轉換成YCbC時所要遵循的標準(選擇SMPTE C、EBU、或Rec 709)。
其他的顯示讓使用者可以看到套用轉換的效果,尤其是CIE Colour Chart提供了用非常精確的方式,顯示落在可用RGB範圍之外的色彩定義。
圖三:OmniTek CIE Colour Chart顯示的範例
在此顯示中,重疊的三角形色域尤其重要,每一個三角形由代表特定視訊標準關連的三原色的點所形成,並涵蓋了所有視訊標準支援的色彩。
也許會顯示兩個三角形 – 一個黃色及一個白色三角形。黃色三角形標示出在源視訊格式中,所支援的色彩範圍;白色三角形標示出使用者所選擇之目標視訊格式所支援的色彩範圍。
顯示中的每一個亮點,代表影格中目前正在分析該像素的色彩。
只要透過觀察圖表中那些落在兩個三角形之間的亮點,即直接顯示色彩在轉換中,如何變化成所選取之目標視訊格式。因為在CIE Chart顯示中,任何落於黃色三角形之內、白色三角形之外的像素色彩,將必須進行修改,以便用新的標準套片(Conform)。
這些修改將無可避免的導致一些去影像的飽和,因為從原始色彩向最終色彩的移動,總是朝向圖表中心的方向移動,也就是朝向白色三角形移動。
附錄:推演從XYZ轉換成RGB的矩陣
SMPTE RP(建議的作法)177包含下列的描述,關於如何推演在XYZ色彩顯示與使用任何特定RGB色彩原色顯示之間轉換時,所使用的矩陣。
3.3 一般的過程
在本節,將說明標準化(Normalized)線性RGB訊號成CIE XYZ三色激值,而關於推演矩陣的一般過程範例則在附錄B中提供。RGB訊號標準化使得參考白(Reference White)具有R=G=B=1.0的值。下列是一步一步的過程:
3.3.1 獲得CIE x,y cs參考白的色度座標(Chromaticity Coordinate)(電視為D65),及RGB原色。
3.3.2 為參考白計算z座標及每一個RGB原色:
z = 1 – (x + y)
3.3.3 從下列矩陣及從參考原色及參考白的x y z數值的列向量(Column Vector):
請注意,W向量(代表參考白)已經標準化,因此白色的亮度因子(Luminance Factor)為1.0,亦即Y = 1.0。這是必須的以便讓視訊參考白訊號(R=G=B=1)產生亮度因子一致的參考白。
3.3.4 以W向量乘以P逆矩陣,計算下面所示之位於等式左側的係數Ci o。請注意符號P-1 代表逆矩陣(Matrix Inversion)運算。這些係數是標準化因子,它們標準化了RGB原色的單位,使得每一個組合的一單位量,產生亮度因子為1的白點色度:
3.3.5 由3.3.4所計算出來的係數Ci,形成對角矩陣:
3.3.6 計算P及C矩陣而得最終標準化的主矩陣NPM:
3.3.7 NPM矩陣乃是最終的結果,並將電視線性RGB訊號與CIE XYZ三色激值聯繫起來,如下所示:
3.3.8 此組原色的色度等式,乃是NPM矩陣中的第二列:
在某些情況下,NPM矩陣值四捨五入成四位數時,將導致色度等式的值其總和不為1.0。在這樣的情況下,NPM矩陣應該進行列歸(Column Normalized),強迫第二列的總和為1.0。
3.3.9 色差(Color-Difference)訊號係數的計算,應該使用如前述所決定之色度等式的所有十位數字。這些資料應該在四捨五入之前,先乘以適當的比例因子。四捨五入成小數點四位及/或四位數,無論是哪一種都將進一步擴展了數字。
在某些情況下,色差等式的係數在四捨五入之後,也許總和為零。在這樣的情況下,係數應該標準化,強迫每一個等式的係數加總成零。
附錄B(資訊提供)
標準化的主矩陣的演算範例
B.1 給予參考白的色度:
及一組參考原色:
B.2 演算出下列的Ci值:
B.3 在四捨五入成四位數之前的 values for the NPM矩陣值:
B.4 亮度等式為:
四捨五入之後:
其係數的總和為1.0。
Comments