HDR 成像技术学习(一)
????????在描述一個場景的時候,動態范圍(Dynamic Range)指的是其最亮部與最暗部的亮度比值。高動態范圍的場景(High Dynamic Range Scene)指的是場景里同時存在非常明亮和非常暗淡的部分。
????????圖像傳感器所能捕捉的動態范圍是有限的,它受到兩個因素的限制,一個是滿阱容量(Full Well Capacity,FWC),另一個則是它的本底噪聲。
????????要想在一張照片里記錄盡可能多的明暗細節,就需要盡可能擴大傳感器的 FWC,并盡可能地抑制其本底噪聲,然而,受制于使用場景所能容納的傳感器尺寸,以及當前可用的技術,傳感器能獲得的提升是有限的。
????????因此,工程師們另辟蹊徑,通過其他的方法來捕捉這種高動態范圍的場景,這就是高動態范圍成像技術(HDR Imaging)。
一、最傳統:多幀異曝光
????????HDR 成像這個概念最早被大眾熟知可以追溯到 2011 年發布的 iPhone 4S。
????????iPhone 4S 是首次引入 HDR 成像的手機之一,它使用的是多幀異曝光 HDR,原理也非常通俗易懂,如果一張圖片無法容納場景所有的動態范圍,那么我們多拍幾張,讓它們的亮部和暗部信息進行接力不就好了:
?????????在上面的示意圖中,紅色部分表示傳感器的本底噪聲,淹沒在本底噪聲中的信息是無法被獲取的,但通過多幀接力,我們就可以將它們拼接起來,獲得寬廣的動態范圍。
????????這種技法一般通過調節曝光時間來獲得不同曝光的畫面,最終通過多張不同曝光的圖片來把整個動態范圍包起來,因此也被稱作包圍曝光(Bracketing)。
????????包圍曝光是的具體操作是:一次拍攝后,以中間曝光值和減少曝光值和增加曝光值的方式,形成3張或者更多不同曝光量的照片。這個例子是以1eV為步進拍攝的3張包圍照片。
????????我們在包圍曝光拍攝得到多張不同曝光值照片后,使用后期軟件的蒙版功能,取低曝光值照片的高光處與高曝光值的暗光處,與正常曝光的照片進行合成。實際成片效果就比合成前好多了,暗處能看見,亮處有細節,每個部分都清晰可見。
????????包圍曝光(多幀異曝光HDR)是大部分HDR算法的基礎,包圍曝光的基本思路:“取長補短,合為一個”深深影響了之后的HDR算法演進。
????????多幀同曝光這個做法非常簡單,效果也不錯,但很容易就發現一個問題,它對運動物體的效果不好。因為這種多幀異曝光 HDR 需要拍攝多張曝光時間不同的畫面,在這個過程中如果出現運動物體,它在每一幀中移動的程度都不同,在不同幀里的位置也不同,在最終合成時就會出現各種各樣此外,曝光較長的幀也更容易因為手抖而糊片,這種拍攝方式在應對弱光 + 大光比場景下可用性會大幅降低。
? ? ? ? 工程師針對早期HDR技術的種種弊病提出了全新的修補方案。?
????????拍照時手會抖?沒關系,我們祭出多幀防抖對齊算法,拍攝后通過標記不同照片中的特征點位置(比如眉毛,衣襟,肩膀),然后把這些照片疊起來,將特征點對齊,這樣就能大大改善重影的問題。
??
????????拍照時被攝物會動?如果被攝物體在持續運動中,比如運動場上沖刺的運動員。該怎么辦?沒關系,我們選取其中一張為主圖,保留運動員與他身后的背景,把其它照片中穩定可用的部分(比如背景)疊加到主圖當作超采樣的原料。如果被攝物體不過偶爾動幾下,比如合影時的兒童,則可以篩選拍攝時沒有運動殘影的有效幀進行合成,而對有運動殘影的圖片予以舍棄。這種辦法能有效避免重影。
????????暗光下噪點多?沒關系,我們可以借助時間超采樣理念,用多張照片重復疊加,不同照片在同一位置出現的紅綠噪點可以相互重合,在進一步處理后,去除這些無序噪點。
????????若不是HDR+技術的出現,這類HDR技術還將會在手機市場長久占據大量市場。可惜技術的迭代是相當快的 。
二、HDR+:多幀同曝光
? ? ? ? 包圍曝光這種方法有一個很明顯的缺點,過曝那張照片拍攝時間過長,浪費了大量時間與圖片信息。使整組照片拍攝時間達到了拍攝一張普通非HDR照片時間的3倍左右。如果在明亮的室外晴天這問題倒是不大,快門時間都在千分之一秒以上。可是到了光照條件先天不足的室內,那張過曝的照片拍攝時長會大大超出安全快門速度,非常容易因抖動引起模糊,至于被攝物移動導致合成失敗等問題,則更難以處理。
????????Google 的工程師在提出了一種新的 HDR 實現方法,他們認為這種方法較傳統的多幀異曝光 HDR 提升很大,所以取名叫 HDR+。
????????整個HDR目標可以簡單總結就是“高光不過曝,暗處有細節” 。HDR +是如何實現高光不過曝的呢?很簡單,讓所有照片都欠曝就行了。
????????這便是HDR+的核心思路。捕獲曝光不足的幀,對齊和合并這些幀以產生高比特深度的單個中間圖像,并對該圖像進行色調映射以產生高分辨率照片。
? ? ? ? ?下面舉例進行說明。
????????如上圖,HDR+用4張1/40秒快門時間的照片堆在一起,4*(1/40秒)=1/10秒 達到正常曝光的1/10秒。而按正常曝光時間是1/10秒,“KABB”字樣是過曝的。而1/40s的照片曝光時間太短,“KABB”處是不會過曝的,能完好保存亮處的色彩信息。用4張1/40s的照片堆棧為最終成品時,既能獲得足夠的亮度,也能控制住高光處的過曝情況。
? ? ? ? 在實際操作中要實現4幀的合成的話,實際照片數量比4張多呢,一方面是因為暗處可能需要更多幀來進行降噪處理,另一方面是因為因抖動或其它因素會產生無用的幀,被當作廢片舍棄。當然其它原因也有不少。具體的實現過程相當復雜。谷歌白皮書給出的流程如下圖:
? ? ? ? 現在很多手機的超級夜景模式就是基于HDR+的,如華為從P20 Pro開始的超級夜景,自此把手機的夜拍表現提升了整整一個檔次。
? ? ? ? 上面提到的的HDR都是走的多幀的路子,但多幀又會帶來合成的問題。而且多幀異曝光和多幀同曝光的路子分別被蘋果和 Google 走了,那么接下來還有什么可以提升呢?
????????我們還是要把目光放回軟硬件結合上——軟件的路走過了,我們可以走硬件的路嘛。
????????下面介紹一些硬件 HDR 實現,它們都是由上游廠商提供的(Sony,OV)。
三、四像素拜耳陣列QHDR
????????這種sensor的設計是:每個像素是有四個子像素組成,他們公用一個color filter。
????????這種特殊的排列不是為了擴充像素數,而是進行單次多張HDR。按分區進行不同時長的曝光。比如所有標號為 1 的像素曝光 1/25 秒,所有標號為 2 的像素曝光 1/20 秒,所有標號為 3 的像素曝光 1/15 秒,所有標號為 4 的像素曝光 1/10 秒,相當于在這塊傳感器的一個拍照周期上執行了 4 次明暗各異的曝光,獲得了 4 張圖片。然后用 HDR算法 合成為最終圖片。
????????主流上游廠都提出了自己的處理方案,Sony的稱為QBC(Quad bayer coding),OV的稱為4-cell(four-cell color-filter pattern?HDR),下面分別介紹。
1、QBC(Quad bayer coding)
????????在非HDR模式下,四個像素合并成一個輸出值,與當年Nokia?用的4100萬像素出8百萬像素的照片的所謂超采樣是一個原理,具有降噪,增加動態范圍的好處。在HDR模式時,會把四個像素分成兩組,對角線方向的分到同一組,135度的那組曝光要短于45度的那組,然后再進行scale+combine,這樣就生成完全pixel位置的HDR圖像。
2、4-cell(four-cell color-filter pattern?HDR)
????????這種4cell HDR與sony的QBC類似,也可以看作一個大像素由四個小像素構成。它由兩種HDR設置:
? ? ? ? 1、按照對角線分成兩個不同的曝光輸出。
? ? ? ? 2、每個4-cell?單元,右小角的單元用不同的曝光,其余三個用相同的曝光。?(這個有點像大小像素的處理,后面介紹 Spatial HDR)。
?
四、隔行曝光iHDR(interlace HDR)
????????大家都知道CMOS成像是一行一行掃描的,而iHDR技術的原理,以完整的RGGB拜爾排列作為一行,對其設置交錯改變的曝光參數。比如奇數行長曝光,偶數行短曝光。掃描過程就是從上到下讀完奇數行,然后再從上到下讀完偶數行,使每一行都被讀取(掃)一遍。
????????但是iHDR的問題就在于,在列方向會損失一半的分辨率。這個很好理解,iHDR用奇數行與偶數行合成為一行,從而得到HDR照片,每行像素數不變,總行數只有拍攝時的一半。
? ? ? ? 因此,運用iHDR技術的設備在開啟HDR功能的時候是會掉畫質的。不過好在人眼對縱向分辨率的增減沒有像橫向分辨率那樣敏感,只要不是細密斜向線條,人眼都不能明確的感知到畫質下降。
????????這種方式類似對圖像進行了Binning操作,因此,Sony也把提出的技術稱為Binning Multiplexed Exposure (BME-HDR) ;對應地,OV也提出了類似的方案,稱為Alternate row HDR。
1、BME-HDR
? ? ? 這種sensor每隔兩行的曝光時間分別設為短曝光和長曝光。然后融合長短曝光的兩幀圖像,成為行數減半的一幀HDR圖像。空間分辨率損失了一半,就好像是做了1x2binning,所以叫做binned multiplexed exposure。
2、Alternate row HDR
????????這個alternate row HDR是每兩行用一個曝光,long或者short。對應長曝光、短曝光行的gain也可以分開控制。與sony?的BME HDR?類似,這個alternate row HDR會損失一半的空間分辨率。
????????iHDR這種方式,優勢就在于快,只要ISP處理速度足夠,那么拍攝HDR的速度和拍攝一張普通照片并無差別,按照最簡單的情況看,讀取過程就是ISP從上到下讀完奇數行,然后再從上到下讀完偶數行,使每一行都被ISP讀取一遍。所需時間與普通照片自上而下曝光沒有太大差別。
????????因為交替曝光幾乎就是同時發生,所以抑制重影的表現比HDR+還好不少。只不過這種方法面對畫質動態范圍全面提升的HDR+沒有很好的對應方案。
五、 zHDR(Zig-zag HDR)?
????????相比先前的iHDR,zHDR則是一種拍攝高動態范圍影片的改進方式。在iHDR理念的基礎上,把隔行交替曝光改成了特殊排列的 高 中 低 曝光。相比隔行的iHDR,行列都交替曝光的zHDR的處理過程比iHDR要復雜不少。相比分辨率砍半的iHDR,zHDR能夠輸出全分辨率的圖像,這可以算是個不小的進步。
? ? ? ? 這里主要是Sony了自己的方案:SME-HDR(Spatially multiplexed exposure)
1、SME-HDR
????????這種sensor在空間上以棋盤格的pattern排列著長曝光和短曝光的像素。下圖中顏色的深淺代表曝光時間的長短 。然后通過算法處理融合兩個曝光的圖像成為一幀HDR圖像。按照Sony的說法,這種SME技術只損失20%的空間分辨率,而前邊BME會損失一半的空間分辨率。也有別的ISP公司,用更好的算法來融合兩個曝光的圖像,能夠更少地損失空間分辨率。
????????從技術上來說,單幀HDR要比多幀HDR簡單不少,在早期設備處理能力不足的時候,速度快,沒拖影,性能要求低的單幀HDR反而要更有優勢。到了HDR+時代,單幀HDR漸漸不敵多幀合成HDR。技術的迭代就是這么殘酷。這些技術曾經短暫地在部分手機上應用過,但是很快因為效果不佳也退出了市場。
????????數次嘗試結果都很一般,硬件 HDR 的出路在何方呢?后面將繼續介紹。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的HDR 成像技术学习(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HDU1023 Train Proble
- 下一篇: 输入身份证自动回填地址,年龄,个人详细信