Cascading Convolutional Color Constancy

Abstract

在計算色彩恆常性中,將場景的光照從物體的表象中迴歸是一種普遍採用的方法。然而,由於光源未知、材料的反射性質不同、外部成像因素(如不同的相機傳感器)等原因造成的固有外觀和標籤的模糊性,仍然是一個具有挑戰性的問題。在本文中,我們引入了一種新的算法,通過級聯卷積顏色恆常性(簡而言之,C4)來提高迴歸學習的魯棒性,並在一個獨特的框架中實現跨數據集(不同相機和場景)的穩定泛化能力。所提出的C4方法通過引入加權乘累積損失函數,從各個級聯階段集成了一系列依賴的照明假設,該方法可以從本質上捕獲不同的照明模式,並顯式地實施由粗到細的網絡優化。在公共顏色檢查器和NUS 8-Camera基準上的實驗結果表明,與最先進的方法相比,該算法具有更好的性能,特別是在更困難的場景中。

Introduction

除了場景對象的固有反射特性和相機上的外部光譜敏感性外,圖像中的顏色還會受到光照的影響而產生偏差,但對於人類的視覺感知系統來說,它們似乎是相對恆定的。這種特性被稱爲顏色恆常性,它使得物體在不同的光源下呈現,而不依賴於投射的照明,這是很多高級視覺問題所需要的。顏色恆常性問題通常可以通過先估計場景光源的顏色,然後再恢復場景物體的標準顏色來解決。大量計算色彩恆常性算法(Qian et al. 2019;陳等人2019年;Cheng et al. 2015;Bianco、Cusano和Schettini 2017;Shi, Loy, and Tang 2016;Hu, Wang, and Lin 2017)依賴於準確和穩健的照明預測,然後使用簡單而有效的von Kries模型(von Kries 1902)進行圖像校正。估計一幅圖像的照度可以表示爲學習一個從圖像表示到其相應照度標籤的迴歸映射。從外觀不一致和標籤不明確的角度出發,尋找和確定光照的最佳假設並非易事。除了未知的表面反射外,傳感器的靈敏度和光源光譜也會導致被捕獲場景物體的外觀變化較大。具體來說,相機中用於彩色成像的傳感器的光譜響應在不同的相機型號和品牌之間並不一致,例如,在NUS 8-camera數據集(Cheng, Prasad, and Brown 2014)中,一個場景被8個不同的相機捕獲,它們對於相同的物體表面有視覺上不同的顏色。因此,典型的解決方案是訓練特定於攝像機的估計器,由於數據需求特性,該估計器效率較低,甚至不切實際。 很少有算法(Qian等人2019)專注於具有挑戰性的與攝像機無關的照明估計,從而實現了強大的性能。因此,挑戰仍然存在。現有的大部分算法(Bianco、Cusano和Schettini 2017;巴倫2015;Shi, Loy, and Tang 2016;2017年;Hu, Wang, and Lin(2017)提出了處理外觀不一致性的方法,但在實踐中很少有人關注易出錯假設帶來的挑戰,即每張圖像的整個場景中都存在一個獨特的光譜光照。在顏色恆定數據集的標籤獲取過程中,通常在圖像中放置一個Macbeth ColorChecker圖表,其顏色被記錄爲地面真實照明,從而破壞了保證:所記錄的地面真實代表了真實的全局照明。因此,在空間區域上,標籤和真實場景照明之間的差距使得學習迴歸變得更有挑戰性,特別是考慮到在最先進的深度方法(Bianco, Cusano,和Schettini 2017;Shi, Loy, and Tang 2016;胡,王,林2017)。對物體外觀不一致和標籤模糊的魯棒性是期望從圖像觀察和照明標籤中學習的圖像表示屬性。爲了實現這些,我們在實驗中引入了一個用於級聯卷積顏色恆常性的多重累積損失函數(例如FC4 (Hu, Wang, Lin, 2017))來同時應對這兩個挑戰。詳細地,一系列相關的照明假設,反映了不同的照明模式,通過提出的級聯模型,然後在一個集合中結合,以強制明確的粗到細細化照明假設,如圖1所示。本文的貢獻有三方面。

本文針對照度估計提出了一種通用的級聯結構,以:1)集合多重相關照度假設和2)通過新穎的乘積損失實現粗到細的細化,可以容易地將其插入其他基於學習的照度估計方法中 。

提出的C4方法通過在更深的網絡結構中豐富抽象特徵來增加模型靈活性,並且還發現了假設空間中的潛在相關性,從而減輕了訓練樣本不明確的困擾。

在兩個流行的基準上進行的大量實驗表明,我們的C4取得了比最先進技術更好的性能,特別是在處理更困難的場景時。

源代碼和預先訓練的模型可在https://github.com/yhlscut/C4獲得。

Related work

顏色恆常性已經研究了幾十年,大量的傳統算法是基於低級圖像統計,如白色的補丁(佈雷納德和萬德爾1986),灰色世界(Buchsbaum 1980), Gray-Edge (Van De Weijer、Gevers Gijsenij 2007),灰度的顏色(Finlayson Trezzi 2004),明亮的像素(Joze et al . 2012),灰色像素(楊高,和李2015)和灰色指數(黔et al . 2019年)。提出這些算法以使用算法特定的假設來確定中性白色,這鼓勵以無學習的方式直接應用於測試圖像,但考慮到它們依賴於像素級顏色的統計分佈(例如, 使用灰色像素(Yang,Gao和Li,2015年)以及最先進的統計灰度指數(Qian等人,2019年)缺乏灰色像素。

基於學習的方法是在場景光照下生成恆定顏色的強大替代方法,它可以分爲兩組色域映射(Barnard 2000;(Chakrabarti, Hirakawa,和Zickler, 2011)和迴歸學習(Funt和Xiong, 2004;Cheng et al. 2015;Qian等,2017;陳等人2019年;Cardei和Funt 1999;Schaefer, Hordley,和Finlayson 2005;Bianco、Cusano和Schettini 2017;巴倫2015;Shi, Loy, and Tang 2016;2017年;胡,王,林2017)。以前的色域映射算法包括基於邊緣的(Barnard 2000),基於交點的(Chakrabarti,Hirakawa和Zickler 2011)和基於像素的(Chakrabarti,Hirakawa和Zickler 2011)假定給定光源下顏色的大小是有限的 ,但是當光源的顏色發生偏差時,觀察到的顏色會有變化。在給定足夠的標記訓練數據的情況下,通過將測試圖像在未知光源下的色域映射到正則色域,訓練模型識別正則光照,從而生成場景光照的估計。

後一種基於迴歸學習的算法旨在學習從圖像表示到相應的光照向量的直接回歸映射。這些方法側重於基於支持向量迴歸(Funt和Xiong, 2004年)、迴歸樹(Cheng et al. 2015年)和一組淺層迴歸(Cardei和Funt, 1999年;(Schaefer, Hordley, and Finlayson 2005)或挖掘維度間標籤相關作爲結構輸出迴歸(Qian et al. 2016;陳等人,2019年)。受卷積神經網絡在衆多視覺任務上取得成功的啓發,許多著作將二維卷積特徵編碼引入到顏色恆常性中。(Bianco, Cusano,和Schettini 2017)是深度顏色恆常性的第一次嘗試,它通過基於補丁的採樣擬合數百萬網絡參數來處理數據稀疏性問題。卷積顏色恆量(CCC)(Barron 2015)和快速傅立葉顏色恆量(FFCC)(Barron and Tsai 2017)將問題表達爲二維對數色度空間上的二維空間定位任務,兩種方法的區別在於,後者的性能和加速性能得益於額外的語義特徵和頻域中的BVM估計。在(Hu,Wang,and Lin 2017)中,引入了置信度合併層以自動進行編碼特徵並發現用於照明估計的基本空間區域的位置。 現有的深度學習方法主要專注於設計網絡結構以進行健壯的特徵編碼,以應對外觀不一致的挑戰,但是卻無法從整體中結合多個照明假設來處理模棱兩可的樣本中受益。

最近的DS-Net(Shi,Loy,and Tang 2016)有兩個專家分支,首先生成兩個假設,然後自動選擇一個更好的假設。 與我們的C4方法類似,其動機是利用場景照明的多種假設來獲得穩定的色彩穩定性。但是,有兩個主要區別。 首先,DS-Net進行判別式選擇,而不是像我們的C4模型那樣共同學習發現多個照明假設之間的潛在依賴性。其次,DS-Net並行生成多個獨立的照明假設,而所提出的級聯網絡結構中的C4方法會串行生成相關的假設,以明確地執行從粗到精的細化。 表1和表2中的實驗結果表明,我們的C4模型優於DS-Net和其他最新方法。

C4:Cascading Convolutional Color Constancy

單個照度估計問題的問題定義是從圖像X\in R^{HXWX3}預測照度向量y\inR^{3}。 對於基於學習的照明估計,目標函數可編寫如下:

\underset{\theta}{min}L(f^{\theta}(X),y)

其中f(\theta)(.)\in R^{3}是從圖像X到照明矢量y的映射,θ表示要優化的f的模型參數。 L(·)表示損耗函數,照度估計中的典型損耗爲角度損耗(由式(3)表示)。在測試過程中,給定輸入,訓練後的模型fθ(·)會推斷出預測的照明度fθ(X),用於生成色彩校正的圖像。在卷積顏色恆定的情況下,fθ(·)是深層網絡的輸出,而θ表示網絡權重。 本節將分別概述提出的C4算法,新穎的乘加損失,圖像校正和實現細節。

Network Structure

C4網絡由三個階段組成,如圖2所示。給定訓練對\{X,y\}_{i},i\in\{1,2,...,N\},在級聯結構中,f^{\theta}(.)可分解爲f_{l}(.),l=1,2,...,L,
其中l和L分別表示級聯級別和級聯總數,爲簡單起見,省略了θ。我們將f_{l}f_{l-1}(X)定義爲f_{l}(X/f_{l-1}(X))的更簡單表示法(圖像校正,在公式(5)中說明)。 考慮到級聯結構,現在可以將三級C4的公式(1)編寫如下:

\underset{\theta}{min}L(f_{3}f_{2}f_{1}(X)),y;\theta)

鑑於其在照度估計方面的良好性能,我們在Hu,Wang和Lin(2017)中採用了基於AlexNet和SqueezeNet主幹的最新CNN模型– FC4。詳細地講,FC4採用了在ImageNet上預先訓練的現成的AlexNet和SqueezeNet的低層卷積層(Deng等,2009),並用另外兩個卷積層代替了其餘的層。其中,AlexNet-FC4模型將所有層保持到conv5層,將其餘全連通層替換爲conv6,其中卷積濾波器爲6×6×64,卷積濾波器爲conv7(1×1×4),而SqueezeNet-FC4的詳細網絡結構如圖2所示。對於這兩個網絡,每個卷積層之後都有一個ReLU非線性,在最後一個卷積層之前添加一個概率爲0.5的dropout。請注意,置信加權池化層後跟原始FC4中的最後一個conv層,以通過抑制不太可信的預測來提高針對空間區域的顏色一致性的魯棒性,而我們的FC4模型對最後一個轉換層的輸出採用了簡單得多的求和,以獲得全局照明y(即,圖2頂部的紅色條),而不會影響性能。

A Noval Multiply-Accumulate Loss

如前所述,不同級聯階段的照明預測都近似於地面真實照明,可以將其視爲其不同節點。與DS-Net(Shi,Loy,and Tang 2016)不同,它通過訓練另一個分支來確定更好的假設來設計選擇機制,所提出的級聯網絡旨在利用照明假設之間的潛在依賴性來顯式實施逼近地面真相的從粗到精的細化。爲此,我們在所有假設上引入組合的乘加損失,以捕獲它們的潛在相關性以細化照明假設,其描述如下:

L=\sum_{l=1}^{L}L^{l}(\Pi_{i=1}^{l}f_{i}(X_{i}),y)

其中,L(l)代表第l級聯階段的損耗。 此外,建議的損耗可以通過監督中間照明預測來減輕累積誤差。 我們還認爲其簡單的加權擴展爲

L=\sum_{l=1}^{L}w_{l}L^{(l)}(\Pi _{i=1}^{l}f_{i}(X_{i}),y)

其中wl表示第l階段的照明預測和地面真實性y的損失權重。 我們在等式(4)中比較權重的變體,結果如表3所示。建議的損失以端到端的學習方式嵌入到深度級聯網絡中,如圖2所示。

對於較大的外觀變化和不明確的標籤,已驗證了多個照明估計器的選擇或集合具有出色的魯棒性,但要在照明假設之間捕獲潛在的相關性仍然具有挑戰性。 本文提出的綜合損失非常簡單而有效,因爲可以通過強制每個級聯階段學習特定的校正模式來抑制先前階段的模棱兩可的假設來解釋我們的設計原理。

Image Correction

利用經過訓練的C4模型,對於偏向圖像X的估計照度\hat{y}=[\hat{y}_{r},\hat{y}_{g},\hat{y}_{b}],可以在簡化的假設下恢復圖像中場景對象的規範顏色,即可以分別修改每個RGB通道(von Kries 1902)。 換句話說,我們可以在標準照明下獲得校正後的圖像X\in R^{HXWX3}

\bar{X}_{j}=X_{j}/y_{j} \in R^{HXW}, J\in \{R,G,B\}

Implementation Details

在數據增強中,我們從原始圖像中隨機裁剪補丁,其邊長爲原始圖像較短邊的[0.1,1]倍,並在−30°和30°之間隨機旋轉。 然後將這些色塊調整爲512×512像素,最後以0.5的概率隨機水平翻轉。爲了增加有限訓練數據的多樣性,每個圖像中的照明標籤在0.6和1.4之間的範圍內按三個不同的隨機值進行縮放,並且原始圖像中存在的逐像素場景顏色也因隨機生成的比率而產生偏差。我們進一步應用伽瑪校正將線性圖像轉換爲非線性圖像並將圖像的值歸一化爲[0,1]。 在訓練期間,採用ADAM算法(Kingma和Ba 2014)來訓練具有固定批次大小的模型(即在我們的實驗中爲16),並且對於基於SqueezeNet和AlexNet主幹網的C4模型,學習率分別設置爲3×10−4和1×10−4。爲了提高計算效率和魯棒性能,我們首先訓練2k epoch的一級C4,將學習到的網絡權重作爲初始權重加載到每個級聯級中,作爲我們三級C4模型中的初始權重,以進行進一步的微調。

Experiments

Datasets and Settings

我們對兩個公共色彩恆定性基準進行實驗評估:NUS 8-Camera數據集(Cheng,Prasad和Brown 2014)和重新處理的Color Checker數據集(Shi 2000)。NUS 8相機數據集由來自8臺商用相機的1736張圖像組成,而Color Checker數據集包含568張圖像,包括室內和室外場景。兩個基準中的所有圖像均爲採集設備RAW格式的線性圖像,每個圖像均帶有Macbeth ColorChecker(MCC)圖表,該圖表提供了光源顏色的估計。

爲了防止卷積網絡檢測到MCC並將其用作視覺提示,在訓練和測試過程中,所有圖像均會以MCC提供的位置遮蓋。 隨後(Chen et al.2019; Qian et al.2019; Barron 2015),我們在所有實驗中對兩個數據集採用三重交叉驗證。

正如(Hordley和Finlayson 2004)以及最近的一些著作(Chen等人2019; Qian等人2019; Barron 2015)所建議的那樣,
我們將估計的光源\hat{y}的RGB三元組與測量的地面真實光源y的RGB三元組之間的角度誤差\in用作性能指標,表示爲:

\in(\hat{y},y)=arccos(\frac{\hat{y}.y}{||\hat{y}||||y||})

其中·表示向量之間的內積,||.||是歐幾里得範數。 在我們的實驗中,報告了所有角度誤差的均值,中位數,三次均值,最佳25%和最差25%的平均值。

Comparision to State-of-the-Art Methods

表1在兩個數據集的角度誤差的均值,中位數,三次均值,最佳25%和最差25%方面將建議的C4與最新方法進行了比較。
所提出的方法可以擊敗除FFCC之外的大多數顏色恆定性算法(Barron和Tsai 2017)。 一方面,在Color Checker數據集上,我們的方法在所有五個指標上均明顯優於FFCC,尤其是在均值和最差25%指標上分別提高了18.18%和15.10%。另一方面,在NUS 8相機基準上,儘管FFCC在某些指標上表現優越,但我們的C4 SqueezeNet-FC4在平均值和最差的25%指標上都優於FFCC。NUS 8相機的性能差距可以通過有限的場景大小來解釋(即每個場景使用不同的相機生成8張圖像),從而導致我們方法中數據增強的積極作用降低。更重要的是,C4可以在兩個數據集的所有五個指標中始終擊敗其直接競爭對手–骨幹AlexNet-FC4和SqueezeNet-FC4。鑑於用於特徵編碼的相同網絡結構,只能通過級聯網絡結構的設計來解釋性能提升。 注意,在更具挑戰性的場景中,建議的C4方法始終勝過其主幹FC4,如圖3所示。

Evaluation on Camera-Agnostic Color Constancy

爲了驗證我們的模型針對由於相機靈敏度引起的外觀不一致的魯棒性,我們採用了兩個不相交的數據集,一個用於訓練,另一個用於測試。具體來說,我們使用在NUS 8相機數據集上訓練的模型對Color Checker數據集進行評估,反之亦然,其結果記錄在表2中。與最先進的統計GI(Qian等人,2019)相比,C4達到了有競爭力的性能,甚至始終如一且顯着地在最差25%指標中表現最佳。此外,在兩個數據集的所有性能指標中,具有不同主幹CNN的C4再次在基於學習的照明估計中再次獲得最佳性能,這證明了我們的模型通過逐步完善和數據論證具有強大的泛化能力,可以減輕攝像機成像模式的負面影響。

Discussion about Loss Combination

在我們的級聯結構中,損失函數的組合值得討論。我們進一步討論了我們的損失函數的設計與兩種策略:三級C4模型:單倍乘法損失和加權乘累積損失。

Single multiplication Loss

它只會懲罰最終的精細照明預測。 (例如,在公式(4)中,當L = 3時,權重應爲[w1,w2,w3] = [0,0,1])

Weighted multiply-accumulate loss
它結合了每個階段的中間照明預測,並共同懲罰了這些照明假設。 (例如在等式(4)中,當L = 3時,滿足w_{1}\times w_{2} \times w_{3} \neq 0的權重)

表3顯示了損失函數組合策略的比較結果。 後者的加權乘積損失式(4)優於其特定情況–單一乘積損失,這支持了我們設計乘積損失以利用多個照明假設的動機。此外,在權重設置中,相等的權重可能會稍好於其餘的權重,儘管改善幅度很小。

Discussion of Cascade Size

我們的C4的另一個關鍵見解是逐步改善級聯結構中的照明預測。這種級聯結構的性能取決於級聯級的大小。 通過比較不同級聯級別的性能,我們證明了級聯結構的有效性。如圖5所示,兩個C4變體的所有度量中的角度誤差都隨着級聯級別的增加而減小。特別是,性能從一級C4到二級變體大幅提高,而從二級到三級甚至四級都有適度的提高。但是,隨着級聯數量的不斷增加,性能不會提高。我們認爲,更深的網絡使其難以適應急劇增加的網絡參數大小。 這種現象促使級聯級的尺寸相對較大,以保持顏色恆定。

爲了進一步說明引入的級聯結構的有效性,我們在圖4的Color Checker數據集上以提出的C4級聯的每個階段的中間照明預測來可視化一些示例。(c)和(d)中大多數校正後的圖像在視覺上比(b)中更接近地面真實(GT),並且我們以地面真實爲來定量測量三級C4模型的第一,第二和第三階段中的預測。 測試樣本,P(1,2)= 69.72%,P(2,3)= 60.21%,其中P(l,l + 1)表示測試期間第(l + 1)個階段與第l個階段的預測相比更準確的預測的比率。 它進一步驗證了從粗到細級聯結構的基本原理。

Evaluation with Comparable Network Parameters

如前所述,這種級聯結構的性能可以隨着級聯級L的尺寸的增加而提高(當L <= 4時)。 但是,網絡參數的數量與L的大小成正比。爲了探索這種改進的真正根源,我們通過減少每個卷積層中的卷積內核數來壓縮骨幹網的網絡參數(即AlexNet-FC4和SqueezeNet-FC4)。如表4所示,壓縮後,方法B)和E)中網絡參數的數量是原始骨幹方法A)和D)的三分之一。使用壓縮骨幹網絡時,我們得到了新的級聯模型(即三級C4方法C)和F)),其網絡參數的大小可與A)和D)中的原始FC4模型相媲美。
表4揭示了我們的C4的出色性能可以歸功於級聯網絡結構。

Conclusion

本文設計了一個級聯的卷積神經網絡以實現色彩恆定性,對於不具挑戰性的樣本(最差的25%度量標準)和在與攝影機無關的設置下,其性能始終保持穩定,從而始終達到最佳性能。實驗結果支持相對較大的級聯大小,並驗證了結合多個照明假設和從粗到精的細化效果的好處。


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章