阮醒
摘要:在動畫興起的今天,對動畫的制作要求越來越高,高級渲染引擎的運用越來越受到青睞,針對maya的mental ray渲染引擎普遍遇到的問題,由此引入計算機渲染的兩大色彩區(qū)域從而提出正確認(rèn)識gamma值在mental ray中的概念以及準(zhǔn)確運用Gamma校正的方法,從而提高三維動畫渲染效率和效果。
關(guān)鍵詞:mental ray;Gamma值;Gamma校正
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)18-0189-02
1 Gamma值的研究背景
21世紀(jì)最熱門的詞匯莫過于CG,computer graphic 計算機圖像學(xué),其分布之廣,運用之多涉及面之廣,而受到關(guān)注。自從1994年三維動畫片《玩具總動員》熱播以來,三維動畫悄然走進(jìn)了動畫歷史舞臺。以三維動畫創(chuàng)作為主的動畫設(shè)計公司也相繼成立了,夢工廠、皮克斯等,甚至曾經(jīng)的二維動畫領(lǐng)軍迪斯尼也躋身三維領(lǐng)域。計算機制圖尤其三維動畫的流行,越來越多人開始對maya 軟件青睞,而在maya 軟件中,最為強大的內(nèi)置高級渲染引擎器 mental ray[1]就隨之越來越受到創(chuàng)作人員的喜愛.但對于如何設(shè)置軟件渲染值達(dá)到最佳效果值得探討.
針對亮部特別亮而暗部又特別漆黑的圖像信息,其實大多不是參數(shù)或者燈光設(shè)置上,而是Gamma值的調(diào)節(jié)未經(jīng)調(diào)試。原因在于即使渲染參數(shù)都對,但由于計算機在渲染時的進(jìn)位制,與人眼接收圖像信息的程度不一致導(dǎo)致的。Gamma 值就是一個轉(zhuǎn)換值也可以說是個平衡值,讓我們預(yù)想提亮和壓暗的預(yù)想值,跟電腦計算渲染效果吻合達(dá)到預(yù)期效果而產(chǎn)生的。簡單地說就是計算機渲染的圖片和我們?nèi)搜劢邮盏降膱D像信息不一致,所得非所看,所以圖片信息中間需要一個轉(zhuǎn)換值那就是Gamma值。換句話說最關(guān)鍵就是對計算機的渲染原理以及重要參數(shù)不了解,尤其在計算機圖像學(xué)中的Gamma值忽視,而導(dǎo)致動畫渲染圖片做到理想效果。
2 被忽略的Gamma值
查閱資料以及圖書,如《maya易經(jīng)-mental ray渲染原理與技術(shù)》、《Maya2011白金手冊—MENTAL RAY渲染篇》、《Maya\Mental Ray材質(zhì)與渲染大揭秘》等等書籍著重講解燈光,模型合理布線問題,卻忽略Gamma值概念的介紹和Gamma校正調(diào)試,造成對Gamma值的忽略。誤認(rèn)為學(xué)習(xí)渲染是只學(xué)習(xí)燈光設(shè)置,貼圖材質(zhì)的運用就大功告成了。Gamma值知其存在便可以,渲染時可有可無,無需調(diào)試和學(xué)習(xí)。殊不知,所有的計算機圖形學(xué),只要有計算渲染與顯示器的存在,就要對Gamma值進(jìn)行調(diào)試,所以對Gamma值的不理解或者不會運用,將直接導(dǎo)致渲染效果的色差。有部分人也認(rèn)為Gamma值只是硬件顯示器輸出的范疇與軟件渲染無關(guān)系或者無直接關(guān)系,但對于高級渲染引擎,Gamma值的概念以及運用至關(guān)重要起著舉足輕重的作用。
2.1 Gamma值在mental ray 中的概念
那究竟Gamma值是什么,其在maya的高級渲染引擎中的定義和作用是什么呢?Gamma在不同的上下文環(huán)境中,有不同的含義,一個意思是表示對原始信號的一種變換,另一個意思是表示這種變換的度量參數(shù),還可能表示顯示器Gamma,系統(tǒng)Gamma,文件Gamma三個概念中的某個具體概念。[2]而今天主要討論的是系統(tǒng)Gamma所表示的變換,是計算機系統(tǒng)在讀取了照片數(shù)字文件之后,在輸出到顯示器之前的一種變換,對于windows系統(tǒng)它存在于顯卡中,是可調(diào)節(jié)的,可校正的。這正是今天我們要討論的重點。系統(tǒng)Gamma挪用到在軟件maya內(nèi)置高級渲染引擎中的運用。其原理如下:Gamma存在的原理:在低照度下,人眼更容易分辨出亮度的變化,隨著照度的增加,人眼不易分辨出亮度的變化,而攝像機感光與輸入光強呈線性關(guān)系, 而計算機與攝影機原理一樣,所以要進(jìn)行轉(zhuǎn)化,轉(zhuǎn)化為人眼適應(yīng)的影像陰影、顏色關(guān)系。[3]
maya中的高級渲染引擎mental ray正是運用此原理處理圖像信息。所以在動畫圖片渲染的時候未經(jīng)過Gamma校正的圖片,即使圖像信息都正確,但并非符合人眼對圖片信息接收的審美,需要轉(zhuǎn)化才可渲染出理想的圖像。這也正是Gamma值存在的意義所在,用來方便調(diào)試圖片信息,方便人眼接收的圖片信息,以及與計算機渲染信息圖像的交流調(diào)試。
2.2 mental ray渲染引擎中兩大不同的色域
Gamma值的意義,不僅說明其重要性以及必要性,更需要掌握的是明確maya的mental ray渲染引擎中,存在著兩套顏色管理空間。其分別是Gamma值為1的線性顏色空間和Gamma值為2.2的SRGB[4]空間,其函數(shù)計算的數(shù)值曲線如圖所示。換句話說,就是一個顏色空間便于計算機數(shù)值計算的空間;另外一個顏色空間就是利于顯示器顯示符合人眼適應(yīng)的影像關(guān)系的空間(如圖1所示)。
Gamma值為1的線性顏色管理空間,其存在是因為三維渲染器在計算時所產(chǎn)生的影像是應(yīng)用的線性數(shù)學(xué)而產(chǎn)生的。為了方便運算,所以圖像數(shù)學(xué)算法都是針對線性色彩空間,如圖層Screen(屏幕)、MUTIPLY(相乘)的圖層模式的計算,而且常用的CG圖像都是以線性色彩空間存儲的。常用圖片的格式為高動態(tài)圖,格式如hdr 、32位tiff等等,其儲存亮度信息多,符合計算機渲染計算公式易于在計算機中渲染輸出,缺點占用空間大、不符合人對圖片觀察的陰影的關(guān)系習(xí)慣,人眼看Gamma 值為1的圖片未經(jīng)校正,圖片亮部信息較亮,暗部信息發(fā)黑。
然而,我們的顯示設(shè)備,如監(jiān)視器,不會使用線性數(shù)學(xué)的方式來將這個數(shù)據(jù)圖像化。所以又有與之相對的SRGB顏色管理空間。正因如此,符合人眼接收的信息顏色空間,其經(jīng)過推算,
于1996年為Gamma值2.2的顏色空間, 孕育而生其圖片格式如jpeg 、png 等等就是存在于此顏色空間管理的圖片格式,其優(yōu)點符合人眼看圖習(xí)慣,但顏色信息會因轉(zhuǎn)換而丟失,尤其亮部圖像信息和暗部的圖像信息。
如何平衡才是計算機渲染質(zhì)量的關(guān)鍵所在。換句話說這就是需要我們管理好此兩個顏色空間中圖像的轉(zhuǎn)換,致力避免不必要顏色在轉(zhuǎn)換中的信息丟失和發(fā)揮其各自的長處,彼此取長補短。
2.3 Gamma值 2.2 與0.45的設(shè)置的敘述
模擬用戶使用環(huán)境,測試,最終把顯示器調(diào)到一個看起來舒服的值,最終實驗出來是2.2,據(jù)此,微軟和惠普于1996年發(fā)布了SRGB標(biāo)準(zhǔn),規(guī)定了8位圖片的標(biāo)準(zhǔn)是Gamma≈2.2,從此以后,本來Gamma百花齊放的顯示器和攝像機的Gamma就都沿用了2.2。 [5]
Gamma校正的目的是為了人眼的需求而設(shè)置的,圖像信息的參數(shù)都是目測調(diào)的,人眼才是決定者。所謂“非線性”即意味著,如果施加在陰極攝像管的電壓強度 V 增加1倍,屏幕表面所輸出的光強度,并不會很理想的相應(yīng)增加一倍[6]。所以利用Gamma值轉(zhuǎn)化與其函數(shù),用公式應(yīng)用到了maya的高級渲染引擎mental ray中。
曲線間數(shù)值的互換如下 :
線性計算機圖像信息值*0.45≈人接收的圖像信息值;
人接收的圖像信息值*2.2≈線形計算機圖像信息值。所以就有了2.2與0.45數(shù)值的設(shè)置。
2.4 Gamma 校正過度出現(xiàn)的原因
而知道轉(zhuǎn)換的必要,也明確轉(zhuǎn)化的參數(shù),但未必就可利用好Gamma值運用渲染出好的動畫圖片。其中的一大難點就是過度矯正。因為Gamma校正一次最為理想,二次校正就會讓圖片變得蒼白丟失圖像信息細(xì)節(jié)。
過渡校正是許多初學(xué)動畫渲染創(chuàng)作者經(jīng)常的犯錯點。原因有三:第一點區(qū)別兩個色彩顏色空間各自管理的圖片格容易混淆。二為兩者圖片轉(zhuǎn)化的之多容易出現(xiàn)錯漏。第三渲染細(xì)節(jié)調(diào)試難于把控數(shù)值,因在maya 內(nèi)置mental ray渲染的顯示與計算渲染是分開的,就是所看不是所得,調(diào)控的數(shù)值如沒經(jīng)過Gamma值轉(zhuǎn)換也很難調(diào)試出我們需要的效果。
3提出方法解決
針對上述易犯錯的原因,為了避免兩顏色管理區(qū)域的混淆和避免過度校正帶來的圖像信息丟失,在maya 的mental ray中提出以下方法:
1)了解計算機色彩空間的劃分,理解低動態(tài)范圍圖與高動態(tài)范圍圖的聯(lián)系與區(qū)別。
區(qū)分低動態(tài)范圍圖與高動態(tài)范圍圖像[7]的格式,明確兩顏色管理的區(qū)分和明白存在的意義。所謂的Dynamic Range(動態(tài)范圍)是指一個場景的最亮和最暗部分之間的相對比值。一張HDR圖片是由不同曝光值的普通動態(tài)范圍圖像信息組成,其記錄的圖像信息遠(yuǎn)遠(yuǎn)超出256個級別的實際場景的亮度值。低動態(tài)圖就是8位通道圖像,也就是顯示器可以顯示的色彩數(shù)量。分別把兩種動態(tài)圖的格式記錄下,歸類劃分好不同的色彩管理空間,明確圖像信息。
2) 要把mental ray中的光線以及材質(zhì)都先變成線性顏色管理的圖片信息,如在默認(rèn)的jpeg ,png、png、tga等普通動態(tài)范圍圖像也稱LDR[7]需要通過Gamma校正用,圖像節(jié)點乘以2.2使其響應(yīng)值是1。如果是材質(zhì)運用程序紋理生成的圖像則不用校正,避免二次校正也就是我們所說的過渡校正,而且要確保maya中mental ray的光線也是線性色彩空間中。
3) 確保后,在全部用maya 色彩管理一次性校正回響應(yīng)值為2.2的Gamma值,讓光線材質(zhì)一致為SRGB中的圖片信息適合人眼的需求。
這種方法的優(yōu)點避免二次校正也稱過度校正,有效提高效率,避免兩個空間色彩管理的混淆,先統(tǒng)一把圖像通過Gamma校正放置線性顏色空間中,用適合計算機計算的線性顏色管理空間,有利于節(jié)省時間提高效率。最后轉(zhuǎn)換成SRGB顏色圖像信息,渲染效果可視化可調(diào)控,因為都在SRGB色彩中所看即所得,對于光線明暗的調(diào)節(jié),方便調(diào)適把控渲染細(xì)節(jié)微調(diào)。
4局限性
未能應(yīng)用于所有的三維軟件中,只適合maya渲染引擎mental ray主流軟件使用,對于其他三維軟件的渲染,雖然Gamma值校正的原理一樣,但細(xì)節(jié)設(shè)置未能相同。因為上述是原理講解以及方法的提出,具體參數(shù)調(diào)節(jié)未能一一道明,意圖在于闡述渲染原理提出方法,而不是制定規(guī)章制度,希望提出的方法能為動畫創(chuàng)作者提供新的正確的思路,為中國動畫騰飛作鋪墊。
參考文獻(xiàn):
[1] 楚云.maya易經(jīng)——mental ray渲染原理與技術(shù)[M].北京:電子工業(yè)出版社,2009.
[2] 火星時代.Maya2011白金手冊—MENTAL RAY渲染篇[M].北京:人民郵電出版社,2011.
[3] 陳路石.Maya\Mental Ray材質(zhì)與渲染大揭秘[M].北京:清華大學(xué)出版社,2014.
[4] 孔令德.計算機圖形學(xué)--基于MFC三維圖形開發(fā)[M].北京:清華大學(xué)出版社,2014.
[5] 謝遠(yuǎn)濤,楊娟.廣義Gamma分布簇廣義線性混合模型理論與應(yīng)用[M].北京:對外經(jīng)濟貿(mào)易大學(xué)出版社,2014.