深度學習白平衡(Color Constancy,AWB):ICCV2019論文解析
What Else Can Fool Deep Learning? Addressing Color Constancy Errors on Deep Neural Network Performance
論文鏈接:
摘要
有針對局部圖像處理的積極研究,可以欺騙深層神經網絡(DNNs)產生錯誤的結果。本文研究了一種能產生類似負面影響的全局圖像處理方法。具體地說,本文探討了由於不正確地應用計算色彩恆常性(攝影中稱為白平衡(WB))而導致的強烈色彩投射如何對DNN目標圖像分割和分類的性能產生負面影響。此外,本文還討論了現有的圖像增強方法如何提高DNNs的魯棒性不太適合於WB誤差建模。針對這一問題,提出了一種新的增廣方法,該方法可以模擬精確的顏色恆常性退化。本文還探索了預處理訓練和測試圖像與最新的WB校正算法,以減少錯誤的白平衡圖像的影響。本文研究了不同數據集上的增強和預處理策略,並展示了對CIFAR-10、CIFAR-100和ADE20K數據集的顯著改進。
1. Introduction
人們對局部圖像處理有着濃厚的興趣,它可以用來愚弄深層神經網絡(DNNs)產生錯誤的結果。這種“對抗性攻擊”常常導致嚴重的錯誤分類。本文研究了一個探索較少的全局圖像處理問題,該問題可能會對DNNs的性能產生類似的負面影響。特別是,本文對計算色彩恆常性的作用感興趣,它構成了數碼相機上的白平衡(WB)程序。本文關注計算的顏色恆常性,因為它代表了在真實圖像中發現的全局圖像錯誤的一個共同來源。 當WB不正確地應用在相機上時,它會在捕獲的圖像中產生不希望的顏色投射。具有如此強烈的顏色投射的圖像經常被用戶丟棄。因此,在線圖像數據庫和存儲庫傾向於包含大部分正確的白平衡圖像。這是一個隱含的假設,對於由從web和在線抓取的圖像組成的數據集是不被承認的。然而,在實際應用中,不可避免的是,在某些情況下,圖像會被應用錯誤的WB捕獲。WB不正確的圖像在基於白平衡偏壓訓練圖像的dnn上可能有不可預測的結果,如圖1所示。
貢獻
本文研究與計算顏色恆定性相關的錯誤如何對側重於圖像分類和語義分割的dnn產生不利影響。此外,本文還發現,用於擴展訓練圖像變化的圖像增強策略不太適合模擬由顏色恆定性誤差引起的圖像退化類型。為了解決這些問題,本文提出了一種新的增強方法,能夠精確地模擬真實感顏色的恆定性退化。本文還研究了一種新的WB校正方法[2]對測試和訓練圖像進行預處理。在CIFAR-10、CIFAR-100和ADE20K數據集上使用所提出的增強和預處理校正的實驗表明,在測試具有顏色恆定性錯誤的圖像輸入時,有顯著的改進。
2. Related Work
計算色彩恆常性
相機具有機載圖像信號處理器(ISP),可將rawRGB傳感器值轉換為標准RGB輸出圖像(表示為sRGB圖像)[33,47]。計算色彩恆常性,在攝影中常被稱為WB,用於模擬人類在任何類型的光照下將物體視為同一顏色的能力。WB用於通過從輸入圖像(例如,[1、6、7、9、17、25、30、51])估計場景的照明來手動或自動識別場景照明的色溫。將WB應用於原始RGB圖像之后,ISP進一步應用一些附加的非線性光飾顏色操作來渲染最終sRGB圖像[2]。這些照片修飾操作包括但不限於色調/飽和度操作、一般顏色操作和局部/全局色調映射[8、27、33、44、47]。相機通常有多種照片修飾風格,用戶可以選擇[2,33,34]。
sRGB圖像的WB校正后,當WB應用不正確時,會導致sRGB圖像具有很強的色彩投射。由於ISP在WB之后應用了非線性光飾操作,因此糾正sRGB圖像中的錯誤是非常重要的[2,45]。目前的解決方案需要元數據,由輻射定標或原始圖像重建方法(如[14,34,45])估計,其中包含撤銷ISP應用的特定非線性光飾過程所需的信息。通過轉換回原始RGB空間,可以使用對角校正矩陣應用正確的WB,然后由ISP重新提交。不幸的是,用於反轉相機管道和重新渲染圖像的元數據很少可用,特別是對於從web上收集的sRGB圖像,就像現有的計算機視覺數據集一樣。
最近的研究表明,通過估計一個高次多項式校正矩陣,可以獲得白平衡的sRGB圖像[2]。文獻[2]中的工作,稱為sRGB圖像的WB(WB-sRGB),介紹了一個數據驅動的框架來估計給定測試圖像的多項式矩陣。本文在WB-sRGB[2]的基礎上進行擴展,在最終的sRGB圖像上模擬WB錯誤,而不是校正WB。本文還使用WB-sRGB方法[2]來檢查對訓練和測試圖像應用預處理WB校正,以提高DNN模型對錯誤白平衡圖像的性能。
對抗性攻擊
DNN模型易受局部圖像操縱形式的對抗性攻擊(例如,參見[18、26、37、54])。這些圖像是通過在原始圖像中添加精心制作的不可察覺的擾動層來創建的[26,54]。這種擾動層通常由局部非隨機對抗噪聲[3,26,41,54,58]或局部空間變換[57]表示。對抗性的例子能夠誤導預先訓練的模型,從而預測某個錯誤的響應(即,目標攻擊)或任何錯誤的響應(即,非目標攻擊)[3,12,40]。雖然不正確的顏色恆常性不是對抗性攻擊的明確嘗試,但這種全局修改所產生的失敗類型與非目標攻擊非常相似,並可能對DNNs的性能產生不利影響。
數據擴充
為了克服訓練數據的有限性和增加視覺變化,將圖像增強技術應用於訓練圖像。現有的圖像增強技術包括:幾何變換(例如旋轉、平移、剪切)[19、28、28、46]、合成遮擋[60]、像素強度處理(例如均衡、對比度調整、亮度、噪聲)[19、56]和顏色處理(例如RGB顏色抖動和基於PCA的移位、HSV抖動、顏色信道丟棄,彩色信道交換)[15,19,23,32,36,38,42,48,49]。傳統的增色技術隨機改變訓練圖像的原色,以提高訓練模型的泛化性和魯棒性推理階段。
然而,現有的色彩增強方法往往產生不現實的色彩,在現實中很少發生(例如,綠色皮膚或紫色草)。更重要的是,如圖2所示,現有顏色增強技術的視覺外觀不能很好地表示由應用於機載相機的不正確WB產生的顏色投射。如[4,13,22]所示,圖像形成對不同計算機視覺任務的准確性有重要影響。最近,一個簡化版的攝像機成像管道被用於數據增強[13]。然而,在[13]中的這種增強方法,顯然沒有考慮由於WB之后應用的后續非線性操作而導致的不正確WB的影響。為了解決這一問題,本文提出了一種基於攝像機的增強技術,可以綜合生成具有真實WB設置的圖像。
DNN規范化層
規范化層通常用於提高訓練過程的效率。這些層將簡單的基於統計的移位和縮放操作應用於網絡層的激活。移位和比例因子可以從整個小批量(即批量規范化[31])或從每個訓練實例(即實例規范化[55])計算。近年來,為了解決訓練圖像中的樣式/紋理問題,在當前任務的基礎上,引入了批實例規范化(BIN)[43]。盡管BIN的設計是為了學習在使用簡單的基於統計的操作保持或減少原始訓練風格變化之間的權衡,但是[43]中的工作並沒有提供任何關於錯誤WB設置的研究。本文工作中提出的增強和預處理方法直接針對訓練和測試圖像,不需要對DNNs體系結構或訓練機制進行任何更改。
3. Effects of WB Errors on Pre-trained DNNs
本文首先研究不正確的白平衡圖像對用於圖像分類和語義分割的預訓練DNN模型的影響。作為動機,圖3示出了應用於同一圖像的兩個不同WB設置。圖3示出,通過改變WB設置,DNN對同一場景的注意力顯著改變。為了進行定量評估,本文采用了為ImageNet大型視覺識別挑戰(ILSVRC)2012[21]和ADE20K場景解析挑戰2016[61]訓練的幾個DNN模型。生成一個由WB不正確的圖像組成的全新標記測試集是一項巨大的任務ImageNet分類包括1000個類,像素精確的語義標注需要每幅圖像60分鍾[50]。代替一個新的測試集,本文應用本文的方法來模擬每個數據集的驗證圖像的WB錯誤。本文的方法不久將在Sec. 4中詳細介紹。
分類
本文將本文的方法應用於ImageNet的驗證集,生成具有五種不同色溫和兩種不同光飾風格的圖像,每個驗證圖像總共有十種WB變化;此過程中排除了899個灰度圖像。本文總共生成了491010張圖像。本文研究了以下六個著名的DNN模型,它們是在原始ImageNet訓練圖像上訓練的:AlexNet[36]、VGG-16和VGG-19[52]、GoogLeNet[53]和ResNet-50和ResNet101[29]。表1顯示了在本文生成的驗證集(即,使用不同的WB和光飾設置)上進行測試時,與原始驗證集相比,每個模型的准確度下降。在大多數情況下,准確度下降了10%。圖4示出了不正確WB的影響的示例。
語義分割
本文對2000張圖片使用了ADE20K驗證集,並為每個圖片生成了10張具有不同WB/照片修飾設置的圖片。最后,本文總共生成了20000張新圖像。本文測試了在原始ADE20K訓練集上訓練的以下兩個DNN模型:ExpandDNET[16,59]和Re finenet[39]。表2顯示了不正確的白平衡圖像對原始驗證集上相同模型獲得的並集交集(IoU)和像素精度(pxl acc)的影響。盡管用於分割的dnn比用於分類的結果要好,但本文仍然會導致性能下降超過2%。
4. Proposed Method to Emulate WB Errors
本文采用了一種數據驅動的方法,直接在sRGB顏色空間中模擬這種操作。本文的框架很大程度上借鑒了WB-sRGB數據驅動框架[2],該框架旨在糾正不適當的白平衡sRGB圖像。然而,本文的框架在渲染的sRGB圖像上“模擬”WB錯誤。圖5提供了本文的方法的概述。
數據集
本文的方法依賴於由[2]生成的大量sRGB圖像。此數據集包含使用不同WB設置和照片修飾樣式渲染的圖像。與每個訓練圖像相關聯的是地面真值sRGB圖像(即用“正確”色溫渲染)。訓練的sRGB圖像使用五種不同的色溫進行渲染:2850開爾文(K)、3800K、5500K、6500K和7500K。此外,每個圖像都使用不同的相機照片處理風格進行渲染。在本文的WB仿真框架中,本文使用了來自這個數據集的17970個圖像(1797個正確的sRGB圖像,每個圖像有10個對應的圖像,分別用五種不同的色溫和兩種不同的光飾風格、相機標准和Adobe標准渲染)。
顏色映射
本文計算了每一對正確的白平衡圖像與其對應的目標圖像之間的顏色轉換矩陣,目標圖像是用特定的色溫和光處理渲染的。最后,本文得到了與訓練數據中的每個圖像相關的10個矩陣。
顏色特征
如圖5所示,當增加輸入sRGB圖像以具有不同的WB設置時,本文在數據集中搜索與輸入圖像相似的sRGB圖像。這種搜索不是基於場景內容,而是基於圖像的顏色分布。因此,本文使用[2]中使用的RGB uv投影顏色直方圖特征來表示訓練集中的每個圖像。每個直方圖特征用m×m×3張量表示。為了進一步減小直方圖特征的大小,將主成分分析(PCA)應用於三層直方圖特征。這種轉換將以零為中心的矢量化直方圖映射到一個新的低維空間。本文的實現使用了一個55維PCA向量。因此,本文的最終訓練數據由每個訓練白平衡圖像的壓縮特征向量、相關顏色轉換矩陣、PCA系數矩陣和偏差向量組成。
KNN檢索
給出一個新的輸入圖像Iin,提取其壓縮后的顏色特征v,然后搜索與輸入圖像顏色分布相似的訓練樣本。采用L2距離作為v與訓練壓縮顏色特征的相似度度量。然后,本文檢索與最近的k個訓練圖像相關聯的顏色變換矩陣。
變換矩陣
5. Experiments
魯棒性策略
本文的目標是提高DNN方法在測試圖像中的性能。
由於計算顏色恆定性錯誤,可能具有強的全局顏色轉換。基於WB sRGB框架[2]和Sec.4討論的修改框架。研究了三種提高DNN模型魯棒性的策略。
(1) 第一種策略是對每個測試圖像應用WB校正,以便在推斷期間移除任何意外的顏色投射。注意,這種方法隱式地假設訓練圖像是正確的WB。在本文的實驗中,本文使用WB-sRGB方法[2]對測試圖像進行校正,因為它目前在白平衡sRGB渲染圖像方面達到了最先進的水平。本文研究了采用簡單的基於對角線的校正方法(該方法由傳統的WB方法應用於原始RGB圖像(例如,gray world[10]),但發現它們在應用於sRGB圖像時給出的結果不足,如[2]所示。實際上,直接對訓練圖像進行基於對角線的校正類似於乘法顏色抖動。這就是為什么本文需要使用非線性顏色操作(例如,由[2]估計的多項式校正)來對sRGB圖像進行更精確的WB校正。差分的示例如圖6所示。 值得一提的是,WB-sRGB方法使用的訓練數據有固定的色溫(2850K、3800K、5500K、6500K、7500K),所有色溫都有顏色校正矩陣映射到相應的正確WB。在大多數情況下,其中一種固定的色溫在視覺上與正確的WB相似。因此,如果WB-sRGB方法應用於已經正確白平衡的輸入圖像,則計算的轉換將充當標識。
(2) 第二種策略考慮了一些訓練圖像可能包含一些錯誤的情況247個 白色平衡圖像。因此,本文還將WB校正步驟應用於所有訓練圖像以及測試圖像。這再次在測試和訓練圖像上使用WB-sRGB方法[2]。
(3) 最終的策略是根據本文在Sec.4中描述的方法擴充訓練數據集。與其他增強方法一樣,不需要預處理校正。這種增強過程背后的假設是,DNN模型的穩健性可以通過對作為顏色恆定性誤差樣本的增強圖像進行訓練來提高。
測試數據類別測試圖像分為兩類。在類別1(Cat-1)中,本文通過應用本文的方法來模擬相機WB錯誤,擴展了CIFAR-10、CIFAR-100和ADE20K數據集中的原始測試圖像。現在,每個測試圖像都有十(10)個變體,它們共享相同的地面真值標簽。本文承認這是不太理想的,假設同樣的方法修改測試圖像是用來增加訓練圖像。然而,本文確信所提出的方法能夠模擬WB誤差,本文認為Cat-1圖像代表了真實世界的例子。盡管如此,本文並沒有將策略1和策略2應用於Cat-1,因為WB-sRGB方法基於用於生成測試圖像的類似框架。為了完整起見,本文還包括類別2(Cat-2),它由直接從原始RGB圖像生成的新數據集組成。具體來說,原始RGB圖像使用完整的相機內管道渲染到sRGB圖像,相機內顏色恆定性錯誤。因此,Cat-2的測試圖像顯示出精確的顏色恆定性錯誤,但包含的測試圖像較少,本文已經為其提供了地面真實性標簽。
5.1. Experimental Setup
本文將上述三種策略與現有的兩種廣泛采用的顏色增強過程:RGB顏色抖動和HSV抖動進行了比較。
本文的方法
使用k=25應用最近鄰搜索。所提出的WB增強模型在7.3秒(CPU)和1.0秒(GPU)中運行,生成10幅1200萬像素圖像。報告的運行時間是使用Intelr Xeonr E5-1607@3.10ghz CPU和NVIDIA計算的™ 泰坦X GPU。
現有顏色增強
據本文所知,現有的增色方法沒有標准化的方法。因此,本文測試了不同的設置並選擇了產生最佳結果的設置。
5.2. Network Training
對於圖像分類,在ImageNet數據集上訓練新模型需要付出難以承受的努力,例如,ILSVRC 2012由100萬張圖像組成,在應用任何顏色增強技術后將為1000萬張圖像。因此,本文在CIFAR-10和CIFAR-100數據集[35]上進行實驗,因為每個數據集中的圖像數量更易於管理。本文在CIFAR-10上從頭開始訓練SmallNet[46]。本文還調整了AlexNet[36]以識別CIFAR-10和CIFAR-100數據集中的新類。對於語義分割,本文在ADE20K數據集的訓練集上對SegNet[5]進行了調整[61]。
本文對每種型號進行以下訓練:
(i) 原始的訓練圖像,
(ii)應用於原始訓練圖像的WB-sRGB方法[2],以及
(iii)原始訓練圖像和通過顏色增強方法生成的附加圖像。對於顏色增強,本文檢查了RGB顏色抖動、HSV抖動和WB增強。因此,本文為每個CNN架構訓練了五個模型,每個模型都是在上述訓練環境中訓練的。
為了進行公平的比較,本文為每個模型訓練相同的迭代次數。具體來說,訓練分別針對圖像分類和語義分割任務的∼29000和∼550000次迭代。本文調整了階段數,以確保每個模型都在相同數量的小批量上進行訓練,以便在增廣集和原始集上進行公平的比較。
注意,通過使用固定數量的迭代來使用原始訓練數據和增強數據訓練模型,當本文使用附加增強數據訓練模型時,本文沒有充分發揮附加訓練圖像的全部潛力。訓練是用英偉達進行的™ 泰坦X GPU。
5.3. Results on Cat-1
Cat-1使用由本文在第1節中描述的方法生成的測試圖像測試每個模型。
分類
本文使用CIFAR-10測試集(10000個圖像)測試在同一數據集的訓練集上訓練的SmallNet和AlexNet模型。本文還使用CIFAR100測試集(10000個圖像)來評估在CIFAR-100上訓練的AlexNet模型。在將WB仿真應用於測試集之后,對於CIFAR-10和CIFAR-100的每個測試集,本文有100000個圖像。各訓練模型獲得的最高精度見表3。在本文所提出的WB增強數據上訓練的模型在本文的擴展測試圖像(包括強色彩投射)上獲得了最好的結果。
有趣的是,實驗表明,在大多數情況下,對訓練數據應用WB校正[2],可以使用原始測試集和擴展測試集提高准確性。在WB增強訓練圖像上訓練的DNNs與使用其他顏色增強器相比,在原始測試圖像上取得了最好的改進。
語義分割
本文使用了ADE20K驗證集,使用的設置與第2節中解釋的相同。表4顯示了訓練的SegNet模型的pxl acc和IoU。本文的WB增強得到了最好的結果;圖7顯示了定性的例子。
5.4. Results on Cat-2
Cat-2數據要求本文使用原始RGB圖像生成和標記自己的測試圖像數據集。為此,本文從以下數據集中收集了518個包含CIFAR-10對象類的原始RGB圖像:HDR+突發攝影數據集[27]、MIT Adobe FiveK數據集[11]和Raise數據集[20]。本文使用Adobe Camera raw模塊渲染了所有不同色溫和兩種光飾風格的原始RGB圖像。Adobe Camera Raw精確地模擬了相機上的ISP,產生的結果幾乎與incamera處理產生的結果相同[2]。包含多個對象的圖像被手動裁剪為只包含感興趣的對象,即CIFAR-10類。最后,本文生成了15098個渲染的測試圖像,這些圖像真實地反映了相機的WB設置。本文在實驗中使用了以下測試集:
(i) 在相機中,auto WB包含使用Adobe camera Raw中的auto WB(AWB)校正設置渲染的圖像,該設置模擬相機的AWB功能。AWB有時確實會失敗;本文手動刪除具有明顯顏色投射的圖像。這組圖像相當於在現有圖像分類數據集上測試圖像。
(ii)在相機中,WB設置包含使用不同色溫和照片處理風格渲染的圖像。此集合表示測試包含WB顏色轉換錯誤的圖像。
(iii)應用於集合(ii)的WB預處理校正包含應用WB sRGB校正后的集合(ii)的圖像[2]。該集合用於研究在推理階段應用預處理WB校正的潛在改進。
表5顯示了SmallNet和AlexNet在外部測試集上獲得的最高精度。實驗表明,當測試集是用不正確的WB設置修改的圖像時,與使用相機內AWB的“適當”白平衡圖像獲得的原始精度相比,精度降低了6%。本文還注意到,通過對訓練/測試圖像應用預處理WB或以端到端的方式應用WB增強,可以獲得最佳的精度。錯誤分類圖像的示例如圖8所示。
6. Conclusion
本文研究了在圖像分類和語義分割中,計算色彩恆常性誤差對DNNs的影響。介紹了一種精確模擬WB誤差的增廣方法。本文證明,預處理WB校正和訓練DNNs與本文的增強WB圖像都提高了針對CIFAR-10、CIFAR100和ADE20K數據集的DNNs的結果。本文相信本文的WB增強方法對於DNN尋求圖像增強的其他任務是有用的。