Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android手機 >> Android刷機教程 >> 安卓刷機技巧 >> 什麼是白平衡? ROM之家詳細告訴你

什麼是白平衡? ROM之家詳細告訴你

編輯:安卓刷機技巧

  首先要明白什麼是白平衡,它指的是在圖像處理的過程中,對原本材質為白色的物體的圖像進行色彩還原,去除外部光源色溫的影響,使其在照片上也顯示白色。

  那色溫是怎麼理解的呢?這個概念其實有點繞, 它是開爾文通過黑體(blackbody) 這一理想光源, 在不同溫度下, 所發出光線的顏色特性來定義的。黑體是一個理想化的概念。它是這麼一個物體, 能發光, 但會吸收掉任何來自外部的光線, 同時又會把吸收的所有能量以光的形式完全釋放出來, 所以叫做黑體。黑體的溫度單叫做開爾(K)。從 3300K 到 9300K 的溫度變化情況下, 它發光的顏色分別是, 紅色, 白色、藍色。便於理解, 你可以這麼想象, 火焰你肯定見過, 內焰溫度較低, 外焰溫度較高(藍色), 內焰溫度較低的地方是黃色的(暖色), 於是火焰最外面溫度最高的地方反而會是藍色的(冷色), 是不是有點反常識。而色溫就是借助黑體的這個溫度變化特性來量化色彩傾向的。色溫數值低, 偏黃, 色溫數值高, 偏藍, 所謂的冷暖色調就是一種比較感性的叫法了。

  《3300K

  暖色

  3300~6000K

  白色

  》6000K

  冷色

  以下是幾個常見場景的色溫:

  燭光 1930K, 鎢絲燈 2900K, 中午陽光 5600K, 藍天 18000K

  講白平衡是如何修正之前, 有兩個很重要的理論需要知道:

  灰度世界理論:這個理論蠻有意思, 與其說是色彩學, 我覺得更像是統計學的范疇, 它認為任何一幅圖像, 當有足夠的色彩變化時, 其R, G, B分量均值會趨於平衡(即 RGB 三個數值相等, 也就是說應當是黑白灰類型的顏色)。這個理論在全局白平衡中得到廣泛應用, 特點是能夠利用更多的圖像信息來做判斷, 但在面對色彩較為單一的圖像時就顯得有些乏力了。

  全反射理論:一幅圖像中亮度最大的點就是白點, 即假設在 YCbCr 空間中Y值最大的點為白色, 以此來校正整幅圖像。特點是只考慮色彩最亮的那部分, 跟上面的灰度世界理論正好相反, 在處理色彩偏單調的圖像時效果好些, 但面對顏色豐富的圖片時, 因為最亮的點不一定是白色的, 可能會出現偏色的情況。

  這兩個理論分別對應著兩種色彩空間 RGB 和 YCbCr 調整白平衡的理論基礎:判斷一張圖片白平衡是否准確, 如果不准確, 如何量化其偏離數值。

  白平衡就是一個糾正畫面整體偏色的過程, 那為什麼人眼不需要呢?其實在你看到一個東西的時候, 眼睛就已經對它進行了色彩修正。相機肯定沒有人眼那麼智能(至少現在沒有), 概括的說, 它的自動白平衡算法就是設定一個范圍, 如果拍攝照片的色彩平均值落在這個范圍裡面, 那就 OK, 說明無需修正。如果偏離出這個范圍, 就需要調整參數, 並校正色彩數據直到其均值落入指定的范圍內。這就是WB白平衡修正的過程。

  下面就來簡單介紹幾個白平衡算法大致原理, 但具體的增益計算和數學建模過程就不作贅述了, 這東西正常人看了都會頭大的。

  1. 灰度世界算法(Gray World Assumption)

  這個算法原理很簡單, 就是根據前面所說的灰度世界理論, 將原始圖像的RGB均值分別調整到R=G=B即可。不完美的地方就是這個算法對顏色不豐富的圖像敏感程度一般, 處理起來效果也就不會很理想, 局限性較大。

  2. 標准差加權灰度世界算法(Standard DeviationWeighted Gray World Assumption)

  標准差加權灰度世界算法是針對上一個算法的改進, 它的原理是把圖像等分成幾塊, 然後對每個塊利用統計學進行分析, 看裡面顏色的豐富程度, 顏色多的就加權, 顏色少得就減少權重, 最後求和得出一個均值。根據這個相對精確的數值來進行RGB數值的修正。

  3. 全反射算法(Perfect Reflector Assumpution)

  這個是基於前面介紹的全反射理論生成的算法, 理解起來也不難, 它認為中最亮的那個點就一定是白色的, 如果原始圖像中最亮的那個點不是, 那就針對偏離白色的數值進行逆向修正。缺點就是如果圖像色彩復雜或者就是沒有高光點, 它的修正效果就會比較乏力。

  上面三個算法比較簡單, 運算量不大, 但各有優缺點, 也就進一步衍生出了更加有效但是卻要復雜的多一些混合算法, 例如:亮度加權灰度世界算法與全反射算法的正交組合算法(QuadraticCombining Luminance Weighted Gray World & Prefect Reflector Assumption)。看這麼長的名字就知道, 這個算法很復雜, 白平衡修正效果也是蠻不錯的, 而且它本身是收斂的, 在對圖像處理的時候不會帶來太多損失, 但可惜運算量巨大, 對硬件資源的要求過高。

  算法方面挺枯燥的, 非理工科對數學沒興趣的也可以直接略過, 大體知道這麼回事兒就行。但我可以給出的結論是:最終效果越好的算法, 其復雜程度就越高, 運算量就越大, 對硬件電路的要求也高。具體的實現還需要在白平衡校正能力, 算法執行效率, 處理器硬件性能三個方面進行權衡。

  而通過上面的了解你就會發現, 如果ISP圖像處理器的性能夠高, 白平衡算法施展的空間就會大了很多。某些時候白平衡不准確, 一定程度上確實是與ISP性能跟不上有關, 當然, 這裡也要看各家廠商在算法優化方面的功底。一般來說同一代各個品牌的旗艦處理性能差別不會特別大, 雖然軟件方面下的功夫不容易看到, 但重要性確實毋庸置疑的, 能否把硬件整體性能充分發揮出來才是關鍵。

  舉例來說, 在單反剛剛數碼化的那個年代, 相機的圖像處理器性能比較低下, 難以承受高運算強度的白平衡算法的蹂躏, 於是很多單反相機(如佳能1D, 尼康D2, 奧林巴斯E-1等) 機身上是有一個白平衡感應裝置的(就是機身正面的那個小白點), 這個可以輔助提高白平衡准確度。到後來隨著相機圖像處理器的性能飙升, 大概是從富士通給尼康代工的Expeed一代處理器開始, 就取消了外置白平衡感應器這個裝置。通過越來越多的RGB測光分區數, 配合越發強大的處理器來進行更加准確的色溫修正。這裡多說兩句, 分區越多, 白平衡采樣處理就越准確, 但同時也會帶來計算量上面的飙升, 從最初的只有幾個分區, 到 D800 上面用的 9.1 萬像素 RGB 感應器, 在同時完成測光和白平衡計算的同時, 甚至還能夠余出力氣進行人臉識別, 背後那塊改用了 ARM 架構 Expeed 3 才是最大的功臣。而像 DC 啊, 手機攝像頭啊這類連續取景的相機, 則是用前一幀圖像的處理結果應用到後面的圖像上去的, 實現方式同單反上面那個單獨的測光感應器還不太一樣的。這是產品本身結構差異性導致的。

  現如今手機上自帶相機的白平衡功能不太強, 可以從圖像處理器性能不夠強的角度上去理解, 但也不否認, 一些品牌在優化方面依然可以做的很好, 就像拓海開他爸那輛老掉牙的AE86在秋名山上一樣能贏GTR一樣, 內功外功都很重要。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved