1. 為何需要白平衡?
討論白平衡,那就要從色溫(CCT)談起,色溫顧名思義就是色彩的溫度,但是這個色溫和我們一般所認知的冷色、暖色不同,它指的是一個絕對黑體(物理學家想象出來的)從絕對零度(-273℃)開始持續加溫所呈現出來的顏色,譬如在煉鋼爐里給一塊鐵加熱,就會從黑-》暗紅-》亮紅-》金黃,接著就融化了,因為鐵的熔點是1535℃,所以更高溫度的顏色就看不到。但從焊接用的火可以看到藍色的火焰,那是更高的溫度所輻射出來的顏色。
這些顏色的差異來自于不同波長光線的比例不同,如下圖所示,色溫低的情況下(紅色)波長較長的光線比例較大,反之亦然。那么就造成白色在高色溫的光線照射下顯得較藍,在低色溫的光線下顯得較黃。
將不同色溫下的白色在色品圖上連接起來就形成了普朗克曲線:
而人眼中的白色總是R = G = B,那么白平衡所做的事情就是在不同色溫條件下將圖像做歸一化,也就是如下將sensor響應的RGB分別乘上一個系數,使得“白色成為白色”。
R‘ = R x R_Gain
G’ = G x G_Gain
B‘ = B x B_Gain
使得R‘ = G’ = B‘。
總而言之,白平衡的目的就是讓物體在不同光源條件下所呈現出來的顏色,恢復到物體的固有色。
2. 白平衡的幾種方法
根據白平衡的進化史,下面由遠及近介紹了幾種白平衡的方法。
2.1 灰世界
最初的白平衡是由Buchsbaum提出的一個叫灰世界的假說而來。這個假說指的是在一副色彩多樣的圖像中,最終所有顏色的平均統計值應該是一致的,也就是灰色的。
這個假說是由下列的公式推導而出。
f是圖像,e(λ)代表入射光頻譜,s(λ)代表物體反射率,c(λ)代表sensor的感光度,λ代表波長。
e代表sensor對光源的響應,在特定光源情況下應該是一個常數。
Buchsbaum就提出:一張普通圖像的反射率對圖像的積分再求平均會是一個恒定值k,也就是說圖像的顏色做整體平均后會是一張灰色,也就是無色的圖。
將f(x)帶入公式后可以做出如下推導:
這個方法非常的簡單和直觀,也是最經典和傳統的算法,后續算法都是在此基礎上衍生而來。但是此算法有一個致命的缺陷,當背景有大片單一顏色時(比如草地,藍天等),該算法就會導致嚴重的色差。
2.2 完美反射
完美反射法(perfect reflection)基于白色是將光全部反射這個基礎上,也就是說圖像上如果有白色區域,那么它就會呈現出該色溫條件下光原本的顏色,也就是會落在普朗克曲線上。完美反射法可以很大程度的彌補灰世界法的不足,在HDR場景下效果很好,但是依賴于圖像中有白色這個前提條件,倘若圖像中沒有白色,或者噪聲很強,方法就會失效。
2.3 早期的白塊法
接下來的思路就是如何找到白點/白塊。早期的思路是將RGB圖像先轉換到某個色彩空間,譬如下圖中YCbCr,Y是垂直于該平面晚些考慮,那么在原點附近就是色度接近0的區域,也就是我們要尋找的白塊。將這個區域內的所有點做一個平均,平均點的坐標就認為是這個圖像色溫下可能的白色,然后將圖像色彩根據平均點做轉換,逐步收斂。
設定了區域直徑后再考慮Y軸方向,只將最亮的點篩選出來認為是白點。
這個區域的直徑也就是該方法主要考慮的問題,設的太大就會導致將原本不是白色的顏色納入計算也會造成偏差,設的太小就會造成樣本量太小。
2.4 基于校準的白塊法
白塊法在對圖像要求比較高的情況下就不適用了,后來就產生了基于校準的白塊法。
折線上的點是在產線上針對不同光源(D65, A光,H光等)使用標準白/灰卡紙拍出照片算出來的B_gain和R_gain坐標,黃色點是使用白點法實時計算出的坐標,那就找到一個靠近的先驗值(紅色點),取該點的gain值。
2.5 加權重白塊法
加權白塊法就是將圖片分為M塊,每塊都計算出一個白點,將靠近折線區域(紅色)的權重加高,遠離的(藍色)權重降低,再計算出一個最終白點,使用折線上的不同點做插值計算出一個最終Gain值。
這個方法的缺點在于校準需要增加產線的大量工作量。
3. 無解的白平衡場景
根據國際電聯的標準ITU P910, ITU-R BT500-11,可以歸納出24個典型場景。基本可以分為“有無灰色”,“有無人”,“有無混合光源”,以及“有無大色塊”這幾種。
以大色塊為例,在相同的亮度條件下,機器是無法區分在日光燈下的黃色紙張與白熾燈下的白色紙張。
然而人卻能區分,因為人眼有一個叫做視覺恒常性的特點,人判斷物體的顏色還有大腦的參與,大腦會透過對環境物體的先驗認知來做校準,比如人知道草是綠色,香蕉是黃色。人腦通過這些物體來感知當前的光源情況。
很典型的如下圖,實際上圖中沒有任何紅色的像素點,然而人憑借著“草莓是紅色的”這個認知做了校準,看到紅色草莓,白色盤子和黃色花紋的桌子。這就是根據先驗知識來做白平衡的例子。
4. 機器學習帶來的希望
在傳統的白平衡算法都失效的情況下,機器學習帶來了模仿人腦視覺恒常性的希望。
簡而言之就是給機器做大量的圖片庫訓練,從而讓機器可以像人腦一樣識別不同物體的特征(草地,花朵等),從而在真正拍攝的圖片中篩選出這些特殊區域應用上有針對性的白平衡參數。
編輯:lyn
-
白平衡
+關注
關注
0文章
14瀏覽量
7991 -
機器學習
+關注
關注
66文章
8378瀏覽量
132412 -
工業視覺
+關注
關注
0文章
70瀏覽量
7123
原文標題:工業視覺之白平衡
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論