2008年9月23日

[分享]D40的動態範圍增強術--談HDR

[前言]
這是2007年剛入手D40,當時出於好奇所記錄下來的文字,現在或許看起有點無聊。前幾天Nikon D60的發表讓我重新想起這些文字,PO出來與大家分享、討論。內容純粹是個人的見解,寫得不完全正確,還請有這方面研究的伙伴們指正。

P.S.因為文章時間較久,一時之間我找不到文中引用圖片的文章超連結,也請原作者見諒。

===========[原 文 開 始]===============
話說,Fuji S3pro最讓人津津樂道的應該是優於一般DSLR的動態範圍表現。但是,S3pro的動態表現,真的有這麼好嗎?

老婆捧著D40說:S3 pro有動態範圍真好,難道平價的D40就沒有辦法獲得動態範圍高的相片嗎?讓我們繼續看下去。


按照慣例,這次測試的模特還是請天花板頂上的鹵素燈來擔綱。因為鹵素燈同時有亮部與暗部,我認為很合適做為動態範圍的測試對象。這張是S3pro動態範圍400%所拍攝。鏡頭是Nikon 24-120mm VR,稍後D40也使用相同鏡頭進行測試。



接著,我們用S3 pro動態範圍100%進行相同場景的拍攝。
如不細看高光部,實在很難發現400%與100%之間的差異,400%明顯可以保留稍多一點的細節。100%在高光處(燈心),很多細節遺失,呈現白色塊狀。暗部則差異較不明顯。對於動態範圍表現,我們認為,較高的動態範圍表現是指,相同場景下,CCD對高光與暗部紀錄的寬容度高。換言之,寬容度高記錄下的高光部與暗部細節就越多。很明顯地,S3 pro在動態範圍400%的表現就比100%寬容度高,燈心部的細節記錄較多。



這是D40所拍攝同一場景。
因為D40的測光明顯不准(有over的傾向),所以,在此D40使用S3測光結果與拍攝條件,相同的設定,有助於比較二者的動態範圍表現。顯然,鹵素燈燈心處已經爆掉,失去細節。D40在相同測光條件下,CCD寬容度確實較S3 pro差。



由前一張D40的照片可以知道,在這場景下,鹵素燈的高光與暗部區已經超過D40的CCD可表現範圍。顯然,S3pro確實是比較佔上風。

但是,D40是否沒有勝算了?非也。
首先,S3pro是同時利用S像素與R像素對場景中正常與高光區域分開記錄。




所以,如果D40也能像S3 pro一樣同時記錄高光與正常二種影像,就有機會創造更大的動態範圍。但是,如何做到用D40模擬S像素與R像素?就是以D40對同一場景連續拍攝二張,並使用不同曝光補償條件。利用曝光補償,留住更多細節。這裡,我們降低曝光補償(EV-0.7)。可以發現鹵素燈的細節明顯較一般(EV0)增加,但畫面整體變暗。



這張是EV-1.3。鹵素燈的細節更清晰了,但是,暗部則幾乎無法分辨,細節盡失。




底下是局部比較圖。
顯然S3pro在高光部的寬容度相對優越。D40雖和S3 pro使用相同的曝光條件,但整體容有過曝的感覺,由比較圖看來,可能過曝EV0.3。

D40在二張曝光補償的圖片中,鹵素燈高光處的細節確實被更多地保留下來。但是,燈心處則相較S3 pro過曝的嚴重,已經是一片死白。這部分無法藉由降低曝光補償來提升細節部分(因為原圖已經死白),考慮藉由降低快門的方式來保持更多細節。

D40雖然可以藉由降低曝光補償來保留更多細節,但是整體暗部卻更顯暗沈,甚至無法分辨暗部細節(EV-1.3)。這裡,我們將D40正常曝光的照片當成記錄正常暗部的像素,而較低曝光補償的照片則當成記錄高光處的像素。換言之,如同大兔三”高光優先”的想法。



好了,現在D40有二種像素紀錄的照片(正常曝光與降低曝光補償),我們要如何將這二種像素的照片合成呢?

這裡我們的第一種方法就是藉由後製作來進行,使用Photomtix這個軟體。開啟正常曝光相片與降低曝光補償的相片後,進行合成。只要一個步驟,很輕鬆的。

這裡我們進行二種比較:
1.Ev0 + Ev-0.7
2.Ev0 + Ev-1.3



這是D40 EV0 & EV-0.7合成後的結果。鹵素燈高光區的細節有明顯提升。



D40 EV0 & EV-1.3合成結果。高光處的細節保留相當好,但燈心處仍然是死白(原因前面提過)。暗部表現,也不如EV-1.3時的死黑,已經有大幅提昇。




這是S3pro與D40的合成圖比較。
由圖中可以清楚的看出,D40合成圖的寬容度相較原始圖有明顯的提升。D40 EV0&EV-1.3合成的圖(D40 1/30 F8 EV-1.3_adj)的寬容度略勝S3pro(燈心處不計)。這說明了我們的假設是合理的:S3pro的動態範圍可以視為S像素與R像素分別記錄二張照片(正常曝光與高光優先)後,再合成輸出。在D40的實驗中,我們印證了這個假設,合成圖的寬容度確實有增強,高光與暗部的細節均獲得保留。

但是,D40實驗中,我們發現燈心部死白(超過該拍攝設定所能記錄的範圍)無法藉由降低曝光補償來挽回,這意味需要重新考慮快門和光圈的組合來保留更多高 光部細節。在此,我們並未重新考慮快門與光圈組合的原因在於:我們假設S3pro是”同時”記錄二張照片後合成。所以,D40使用不同的曝光補償來實現高 光優先的想法,而不是變動快門組合。當然,D40變更快門組合後所表現的寬容度應該不只上述圖形而已。這留給有興趣的朋友自己進行吧!!



這是另一個場景,S3pro所拍攝,動態範圍是400%。



這是D40原始圖形,與S3pro相較在藍色燈底部壓克力的細節已經遺失。



這是D40增強動態範圍後的圖形,使用的是合成法。由圖中可以發現,在藍色燈與後方白色燈重疊部分的細節有明顯被紀錄下來,而S3pro在這區是幾近死白。雖然D40雖然利用軟體可以做到細節紀錄增強(寬容度提高),但是,對於高光區的紀錄也顯得D40 CCD的不足,無法像S3pro一樣記錄下更多細節,更多層次。如藍色燈壓克力底部,D40已經是色塊狀態,而S3pro尚有更多細節。



由這個測試我們得出結論,D40確實可以藉由軟體來增強動態範圍的表現。但是,是否非得要用photomatix來合成,你是否擔心沒有這套軟體就不能達 到提升D40動態範圍的效果?其實,除了軟體合成外,另一個選擇就是利用D40機身的多重曝光來達成(先曝低光再曝高光),這是第二種方法。

D40也有提高動態範圍的方法,動態範圍不再是S3pro的專利,D40也能臭屁一下了。但,D40能用的方法S3 pro一樣適用....知道我的意思吧?

==============[中 場 休 息]==================
當時進行這簡單測試時,其實有很多地方都沒有完善。例如,Nikkor AF-S 24-120mm這只鏡稍有過曝傾向,測試照應該考慮降一些EV,2者都可以表現更好。忘記之前在哪裡看過一篇文章,內容就是討論S3pro的RAW檔,其實解開就可以發現是同時有二張照片(一張片亮:記錄暗部,一張偏暗:記錄亮部),這也間接支持我當初的猜想,不過一時之間我找不到那篇文章。

增加照片動態範圍(或說是寬容度)一直是各家DSLR的努力發展方向。最近Nikon D60發表,我發現Nikon竟然特地給D-lighting設置一個獨立按鈕(而且位置顯眼),一直不解其目的為何?最終,我明白了,利用D-lighting確實可以有效提升相片中暗部的亮度(也就是說”增加”動態範圍),這也應是Nikon近來大力推廣D-lighting的目的吧?

但,方法歸方法,D40的CCD還是有其紀錄的極限,這部分我們不得不承認。S3pro的super CCD在記錄連續色階的滑順度比D40相對的好;這應算是CCD的各自特性。其實,這個動態範圍增強方法是有一個正式名稱—HDR(High-Dynamic Range)合成,我是後來才知道的(呵呵,之前比較無知,不曉得我慣用的方法就是HDR)。所以也有人說,Fuji的S3pro、S5pro可以算是”內建HDR的DSLR”。

那麼,何謂Dynamic range?

動態範圍(Dynamic Range)並非是數位相機特有的一個參數,準確地說,動態範圍是一個資訊工程學概念,存在於任何信號採集、處理與記錄的過程中。如果拋開攝影的藝術價值 不談,單就其科學性而言,攝影的過程就是一個”光信號採集與記錄的過程”,與答錄機記錄聲音是一個道理,同樣存在資料采集、資料處理、資料記錄的過程。

DSLR中感光元件的動態範圍(Dynamic range)比較廣義的說法是:圖像所包含的從“最暗”至“最亮”的範圍。動態範圍越大,照片所能表示的層次越豐富,所包含的色彩空間也越廣。如下圖所示:


當我們使用JPEG格式拍攝照片,相機影像處理器會以明暗差別強烈的色調曲線記錄圖像資訊。這過程中,處理器會省去除一部分RAW資料上的暗部細節和亮部 細節(壓縮破壞)。而RAW格式使圖像保持了感光元件的動態範圍,並且允許使用者事後以合適的色調曲線壓縮動態範圍和色調範圍。

感光元件 (CCD/CMOS)上面的畫素猶如容器一般可以累積光量,光量也等於是先天條件可以決定成像出來的影像其動態範圍(Dynamic Range)與訊噪比 (SNR, Signal to Noise)。

數位相機的感光元件是由百萬甚至千萬個像素所組成,這些像素在感測器曝光的過程中吸收光子,轉化成數位信號,成像。這個過程就像我們拿水桶收集水。 感光區域越光亮,收集的光子量自然越多。感光元件曝光後,感光元件按照每個像素收集的光子量不同,賦予它們不連續的值,轉化為數位信號(AD轉換)。沒有 吸收光子(黑點)和吸收光子至滿載的象素(白點)值分別為"0"和"255"。下面的示意圖中感光元件只有16個像素,這些像素能在感光元件曝光過程中迅 速吸收光子(綠色柱狀區域就是就是吸收值)。


一旦這些像素滿載,光子便會溢出。溢出會導致資訊(細節)損失(就是圖中紅色區 域),使滿載紅色的像素附近的其他像素的值都變成255,但其實它們的真實值並沒有達到255。換言之,畫面的細節遺失。另一方面,如果我們減少曝光時間 來防止高光部細節遺失,很多用來紀錄暗部像素沒有足夠的時間接收光子量,得出的像素值為0,這樣反而會導致暗部細節資訊大量遺失。

到此,可以從前面D40的測試過程中得出相同的結論。當D40以EV0的狀態拍攝鹵素燈時,高光部很多細節都已遺失。而改以EV補償後的條件拍攝(EV-0.7,EV-1.3),高光部的細節趨於明顯,但暗部的細節卻有損失加劇的現象,甚至無法辨識。

一般而言,畫素尺寸太小時,會造成光量的累積不夠而導致成像出來的影像動態範圍表現過小,而且訊噪比(SNR, Signal to Noise Ratio)也比較差。為什麼DSLR會比DC擁有更大的動態範圍?原因很簡單:DSLR的像素比較大。較大的像素不會太快被“填滿”。因此對於”記錄暗 部像素”在”記錄亮部像素”還沒有”滿載”之前,有更多時間吸收光子,畫面細節便會更加豐富。就像是兩個不同大小的水桶去收集雨水,面臨相同的大雨時,小 桶子很快就會被填滿,自然動態範圍就小。



Fuji S系列的supper CCD使用S與R兩個像素去取代原先一個像素的工作,就相當於利用兩個水桶去收集雨水,其動態範圍紀錄自然較一般DSLR來得更好(但是也付出代價,被批評為600萬等級的DSLR....

底下,利用幾個例子進一步說明動態範圍與柱狀圖的關係。
例子1:相機的動態範圍與場景的動態範圍基本相符。柱狀圖表明照片有豐富的亮部和暗部細節。


例子2:相機的動態範圍比場景的動態範圍小。柱狀圖表明照片缺失亮部細節和暗部細節。


例子3:相機的動態範圍有限,犧牲暗部細節為代價獲得亮部細節。為防止亮部細節遺失,相機要求用較短的時間讓象素曝光,但暗部像素未有足夠時間吸收光子量而損失細節。



例子4:相機的動態範圍有限,犧牲亮部細節為代價獲得暗部細節。為使暗部像素能充分曝光,相機要求用較長的時間讓象素曝光,使亮部像素發生細節遺失。


例子5:場景的動態範圍比相機動態範圍小,我們可以將色階可以“拉長”到覆蓋整個色調範圍(level調整),得出一幅對比度較強的照片,但可能在這個過程中發生色調分離。



例子1是最好的結果,但往往無法如願。經常出現的是例子2的狀況。前面D40的測試中所使用的動態範圍增強術,其實就是故意蒐集例子3與例子4二張圖片 (例子中是改變曝光條件,而我的D40是以EV補償),分別針對”亮部細節為主”與”暗部細節為主”分開記錄。有這這樣的照片後,我們再透過後製作軟體進 行”偷吃步”,用意在取亮部細節與暗部細節進行合,最後得出一張擁有亮部與暗部細節的照片。當然,這樣的照片很多時候並不會讓你滿意,因為,整個畫面中” 所謂亮部”與”所謂暗部”會無法分辨來;因整體偏亮而相當不真實。進行HDR時,還是需要對細節進行調整,讓最終的合成結果更加協調。

因為有HDR影像的出現,人們也開始對數位影像所謂的動態範圍提出不同的見解,基本分為:真HDR與偽HDR。真HDR指的是圖像經過高位元(如 24bit或更高)的AD轉換,可以忠實記錄下環境中相當廣泛的色彩資訊,而這種影像一般只存在特定的某些RAW或TIFF格式裡。自然界動態範圍可達到 100000:1,人眼所能反應的動態範圍也相近。不過,相當可惜的是,即便真HDR有如此的還原能力,但現行的顯示螢幕動態範圍可能僅僅100:1左 右,是無法有效再現那些細節的。加上一般民用的DSLR理得AD轉換多為8bit或12bit,要記錄下真HDR的影像是更不可能的,硬體本身就已侷限。 與真HDR相對的,就是偽HDR。偽HDR是利用軟體後製作的方式,將畫面中的亮部壓暗、暗部提亮,進而使照片能夠表現出足夠的亮部與暗部細節(當然,也 是配合顯示器能顯示的範圍)。底下是我的一張合成的偽HDR。

由SONY F717所拍攝
第一張,暗部有細節,亮部已過曝,無任何細節。


第二張,保留亮部細節,暗部已沒有任何資訊。


HDR合成後,亮暗部細節均保留。


真實場景中,霓虹燈的亮度與後方草皮的亮度差別何止百倍,而照片中兩者的亮度竟然相當接近,這顯然不是現場明暗的真實記錄。只不過是將霓虹燈本來應該慘白的圖像壓暗到可以顯示其細節而已,所以,這是一種“偽HDR”照片。

事實上,在數位暗房出現之前,風景攝影師們早就在利用技術手段創造“偽HDR”照片了,“作偽”的手段就是漸變灰濾鏡。直到今天,許多風景攝影師仍隨身攜 帶漸變灰濾鏡,如果現場光線的光比過大,超出了膠片或數位相機可記錄的動態範圍時,就用漸變灰濾鏡來壓暗亮度過高的部位,使其細節能夠被相機所記錄。現在 所謂的HDR只不過用數位暗房代替了漸變灰濾鏡而已。

我們回過頭來看Nikon的D-lighting技術的應用。使用過Nikon Capture Nx的伙伴應該都知道D-lighting的威力,尤其在”照片過暗”(曝光不正確)的救援上,表現更是出色(我也經常拍這種廢片)。我的猜 想,Nikon使用與Fuji不同的策略。Fuji是使用S與R像素進行記錄爾後運算出一張相片。Nikon可以先以”高光部優先紀錄”完成照片拍攝,然 後再以D-lighting進行暗部加強,讓暗部不再黑呼呼,使照片的整體細節都得以呈現,進而達到擴展動態範圍。

由前述的動態範圍原理,我認為,Nikon D-lighting技術的應用確實可以有效保留高光細節,但畢竟有其極限;因CCD/CMOS的感光特性(物理特性)實際上並未獲得改善。所以,面對亮 部與暗部光量差異太大的場景(如由室內拍室外天空),HDR的效果還是比Super CCD或是D-lighting來得好。

最後,藉D40的測試機會我開始瞭解HDR,也趁這個機會把HDR介紹給大家。
文中可能有部分觀念不是最正確,還望各位指正。

沒有留言: