劉凱 孫鵬 童世博 解夢達 中國刑事警察學院
視頻偵查是指通過分析、研判涉案視頻,確定與案件相關的嫌疑人、嫌疑車輛、涉案物品等信息,如車輛型號、車身顏色、嫌疑人外貌及行為特征等,從而鎖定嫌疑人、確定偵查方向[1]。在實際工作中,由于涉案視頻現場存在眾多影響因素,如環(huán)境、設備等,導致成像質量低下,影響視頻偵查人員對嫌疑目標的認定。特別是在確定嫌疑目標顏色特征時,由于場景光源的復雜性,會使涉案視頻中目標人物衣著、目標車輛的色彩表現發(fā)生變化,即產生偏色,將會影響視頻偵查人員對目標的辨認,從而導致錯誤的偵查方向[2]。為解決上述問題,需要對視頻圖像進行偏色校正,以獲取目標真實顏色信息。顏色恒常性計算便是通過估計未知光源下獲取到圖像的光照顏色,將其校正至標準光照顏色下,從而解決視頻圖像偏色問題,校正過程如圖1所示。
顏色恒常性是指人眼的視覺系統(tǒng)不管所處場景的光照顏色如何變化,都能夠輕易地識別出物體以及物體表面真實顏色的能力[3]?,F有的顏色恒常性計算可以分為單光照下顏色恒常性計算和多光照下顏色恒常性計算[4],單光照下顏色恒常性計算是基于場景中只有一種光源,即使存在多種光源也將其平均地看成一種光照的假設[5];多光照下顏色恒常性計算是基于場景中有多種光源的假設,本文所做研究都是以單一光照為前提。
顏色恒常性計算種類繁多,但應用于公安實際的卻很少,本文意將顏色恒常性計算應用領域擴充至公安實際工作中,滿足實際工作“快速、穩(wěn)定、高效”的需要,從視頻圖像中目標人物衣著的偏色情況入手,利用Gehler-Shi數據集[6]以及自建的模擬現場環(huán)境的數據集(文中簡稱為自建數據集),研究各種顏色恒常性計算方法在不同環(huán)境下的應用性能,篩選出具有魯棒性、處理效果與時間俱佳的方法。
自建的模擬現場環(huán)境數據集旨在貼合公安工作實際情況,通過模擬涉案現場中光源種類、環(huán)境狀況、鏡頭角度對目標人物衣著色彩表現的影響等所得,數據集圖像使用佳能77D拍攝,共220張,場景包括:室外場景、室內場景、路燈下場景,每一場景都在適當位置放置Datacolor Spydercheckr 24色色卡。其中,室外場景與室內場景各20組,每組圖像包括5張同一場景不同白平衡模式拍攝的圖像,白平衡模式有日光(5200K)、陰影(7000K)、陰天(6000K)、鎢絲燈(3200K)、白色熒光燈(4000K),拍攝時保證同組照片參數設置一致,包括快門時間、光圈大小、感光度等;路燈下的場景包括白色路燈、黃色路燈兩種場景各10張圖像,均在日光白平衡模式下拍攝。每組圖像拍攝前,都使用了Sekonic C-800型光譜儀對場景色溫進行測量,以便獲取真實圖像顏色,部分數據集圖像如圖2所示。
1. Lambert反射模型
顏色恒常性計算大都基于Lambert反射模型建立[7,8],本文使用的四種基于統(tǒng)計的方法都是基于Lambert反射模型進行光照顏色估計。在成像過程中,光線照射到物體表面后會發(fā)生漫反射和鏡面反射兩種情況,理想Lambert反射模型假設物體表面只存在漫反射光,即反射光線在所有方向上強度相同。公式如下:
其中f(x)表示待校正圖像,取決于:光源顏色I(λ)、相機感光函數ρ(λ)以及物體的表面反射R(x,λ)。λ表示波長,x表示圖像像素的空間坐標,c={R,G,B},ω表示波長范圍為380nm~780nm的可見光譜。在不考慮相機自身因素對圖像顏色影響的情況下,圖像的光照顏色估計就是估計出場景的光照顏色e:
2. Von Kries模型
經過各種顏色恒常性計算方法進行光照顏色估計后,為獲取圖像真實顏色,還需使用Von Kries模型[9]將估計后的圖像映射到標準光照下。該模型利用一個對角矩陣對圖像進行線性映射變換,實現未知光照條件下所得圖像的R、G、B三通道的獨立變換,從而將未知光照下獲取的圖像映射到標準光照下,公式如下:
其中,Ru、Gu、Bu表示未知光照條件下所得圖像R、G、B三個顏色通道值,Rs、Gs、Bs表示標準光照條件下圖像的R、G、B三個顏色通道值,通過調整對角矩陣中f1-1、的不同取值,從而獲得不同的顏色校正結果。
單光照下顏色恒常性計算按學習方式可分為基于統(tǒng)計的方法(Statistics-based Methods)和基于學習的方法(Learning-based Methods),本文各取其中具有代表性的算法用于實驗,包括基于統(tǒng)計的方法中的灰度世界(Gray World)算法[10]、 完美反射(White Patch)算法[11]、灰度陰影(Shades of Gray)算法[12]、灰度邊緣(Gray Edge)算法[13];基于學習的方法中的色域映射(Gamutmapping)算 法[3]、FC4(Fully Convolutional Color Constancy with Confidence Weighted Pooling)算 法[14]、FFCC(Fast Fourier Color Constancy)算法[15]。
1. 灰度世界算法
灰度世界算法以Gray World假設為基礎,該假設認為對于一幅色彩豐富的圖像,場景中所有物理表面的平均反射是無色差的[10],即R、G、B三個通道的平均值趨于同一個灰度值。因此,在算法中,對一幅圖像R、G、B三個通道分別求平均值,所得的平均值即可看作是圖像的光照顏色。
2. 完美反射算法
完美反射算法是基于White Patch假設提出的,該假設認為圖像中存在白色表面,RGB通道中的最大響應是由場景中白色表面的完美反射引起的[11],在算法中常將RGB三個通道的最大值作為圖像的光照顏色,因此,完美反射算法也被稱為MaxRGB算法。
3. 灰度陰影算法
灰度陰影算法是在灰度世界算法的基礎之上提出的,通過引入閔可夫斯基范式(Minkowski-norm)從而擴展為一個包括灰度世界算法、完美反射算法、灰度陰影算法在內的顏色恒常性計算框架,其目的是利用閔可夫斯基范式距離代替了簡單求平均的方法,算法框架如下式:
其中ρ是閔可夫斯基范數,用于確定多個測量值的相對權重,通過改變閔可夫斯基范數,可以得到一系列顏色恒常性算法,如當ρ=1時,公式(3)為灰度世界算法;當ρ=∞時,公式(3)為完美反射算法;當1<ρ<∞時,公式(3)為灰度陰影算法。為設定合適的ρ值,本文通過使用Gehler-Shi數據集進行參數尋優(yōu),計算ρ∈[2,10]時的中值角度誤差,實驗結果如圖3所示。
從圖3可以看出,當ρ=7時,灰度陰影算法在兩個數據集中的中值角度誤差最小。因此,本文實驗部分使用的灰度陰影算法,其閔可夫斯基范數ρ默認為7。
4. 灰度邊緣算法
灰度邊緣(Gray Edge)算法基于Gray Edge假設提出,Gray Edge假設認為場景中所有物體表面的反射差的平均值是無色差的(灰色的)。為將基于統(tǒng)計的方法統(tǒng)一在統(tǒng)一框架內,Van de Weijer提出一個通用的計算公式,如下式:
其中n表示階數,取值為1時為一階灰度邊緣算法,取值為2時為二階灰度邊緣算法;ρ表示閔可夫斯基范數;σ表示高斯濾波器的尺度參數,即局部測量的比例;,表示圖像fc(x)與高斯濾波器Gσ的卷積。ρ與σ的取值將會影響一階或二階灰度邊緣算法在數據集中的角度誤差,本文使用自建數據集,探究ρ與σ的取值對算法性能的影響,實驗結果如圖4所示。
如圖4所示,當一階灰度邊緣算法ρ與σ的取值分別為1和6時所得中值角度誤差最??;二階灰度邊緣算法ρ與σ的取值分別為1和5時所得中值角度誤差最小。本文實驗部分使用的一階、二階灰度邊緣算法ρ與σ取值參照如上。
5. 色域映射算法
色域映射算法(Gamut-mapping),通過大量學習標準光照下各種圖像顏色特征,建立標準色域;再計算未知光源下圖像的色域,建立該色域到標準色域的映射模型[3],即同時使用標準色域與待校正圖像的色域估計圖像的光照顏色。
6. FC4算法
FC4算法(Fully Convolutional Color Constancy with Confidence Weighted Pooling)將傳統(tǒng)卷積網絡CNN(Convolutional Neural Network)的全連接層轉化為一個個的卷積層,層數深、學習能力強;同時FC4將置信度權重集成到一個新的池化層,應用于局部像素點估計,以確定全局顏色恒定結果。
7. FFCC算法
FFCC(Fast Fourier Color Constancy)算法將對場景的光照顏色估計簡化為色度環(huán)面上的空間定位任務,從而解決光照顏色估計問題,同時產生能用于評估模型置信度的后驗分布[15]。FFCC算法通過使用快速傅里葉變換,將圖像轉化至頻域中運算,速度快、準確率高、誤差小。
計算機處理器為AMD Ryzen 5 5600H with Radeo Graphics @ 3.30 GHz,16GB內存;對幾種顏色恒常性計算方法的測試基于Matlab2020a和Pycharm2020平臺實現;校正自建數據集圖像光照顏色所使用的軟件為SpyderCheckr 1.3。n
為貼合實際工作,本文中三種基于學習的算法訓練使用的數據集為NUS數據集[16](NUS 8-camera Dataset)中部分圖像,NUS數據集是使用8臺不同型號相機在相同場景下拍攝的1736張圖像,適合研究顏色恒常性計算方法的跨相機光源顏色估計性能。本文僅側重研究各種顏色恒常性計算方法對未知光源下圖像的光照估計性能,因此僅使用NUS數據集中Canon1DsMkIII型號相機拍攝的259張圖像作為訓練使用的數據集。測試時使用數據集為Gehler-Shi數據集(Gehler-Shi Color Checker Dataset)和自建數據集,Gehler-Shi數據集包括2臺相機(Canon 1D和Canon 5D)拍攝的568張圖像。其中,NUS數據集和Gehler-Shi數據集的部分圖像如圖7、圖8所示。
1. 顏色恒常性計算在Gehler-Shi數據集中的性能效果
本文先使用Gehler-Shi數據集對不同顏色恒常性計算方法的性能進行測試,并用角度誤差(Angle Error)對算法性能進行評價,角度誤差公示如下:
其中,Eangle(ee,eu) 是測量的角度誤差,ee= [Re,Ge,Be]和eu= [Ru,Gu,Bu]分別表示算法估計的光照與圖像真實光照兩個向量的內積運算, 表示歐幾里得范數(Euclidean Norm),即角度誤差Eangle越小,顏色恒常性計算算法準確率越高,當Eangle=0時,算法估計光照色度與真實光照色度完全一致。各類算法光源估計結果和可視化結果如表1、圖9所示。
?
2. 顏色恒常性計算在自建數據集中的性能效果
自建數據集在拍攝時由于相機感光芯片、環(huán)境光照等影響,圖像色彩與真實色彩存在偏差,為獲取圖像的真實顏色,需要使用拍攝前光譜儀測量的色溫值以及SpyderCheckr 軟件對圖像進行校正,得到標準圖像。測試各類算法的性能仍使用公式(6)進行誤差度量,光源估計結果及可視化結果如表2、圖10所示。
?
通過觀察實驗過程各種算法對數據集處理的可視化結果(如圖9、圖10),以及最終得出的整體性能評價結果(表1、表2)可以看出:
基于學習的方法在兩個數據集中的整體效果優(yōu)于基于統(tǒng)計的方法。其中,FFCC算法效果最佳,運算速度最快;色域映射算法和FC4算法誤差較大的原因可能是由于用于訓練的NUS數據集數目較少,FC4算法在兩個測試集中所得角度誤差遠遠大于Hu等人[14]的測試結果,又因為其全卷積的網絡層次較深,用時最長。
在基于統(tǒng)計的方法中,灰度陰影算法的測試效果在各個評價指標中都取得了令人滿意的結果;完美反射算法在兩個數據集中的測試效果都不太理想,其原因是因為輸入圖像顏色整體偏暗,在這種情況下,White Patch假設無法滿足,因此算法效果不佳;灰度世界算法基于簡單求平均的假設,在測試過程中表現平平,但在處理一部分含有大面積單一色塊的偏色圖像時發(fā)生了嚴重的偏色問題(如圖10(c));灰度邊緣算法效果的好壞依賴于場景中物體的邊緣數量及對比度,其中一階灰度邊緣算法適用于紋理較少且對比度較弱的圖像,二階灰度邊緣算法適用于紋理豐富且對比度強的圖像[17],兩種灰度邊緣算法在測試過程中相對于其他基于統(tǒng)計的方法,灰度邊緣算法用時較長,測試效果較好。
目前對顏色恒常性研究較多,形成了較完整的一個體系,但并不能夠很好地應用于公安實際工作中。本文將常用的幾種顏色恒常性計算方法通過在Gehler-Shi數據集及自建的數據集中的測試,展現出各種算法在不同場景中的測試效果及運算速度,篩選出能滿足公安實際工作“快速、穩(wěn)定、高效”需要的算法。
通過在Gehler-Shi數據集和自建數據集中的測試,發(fā)現基于學習的算法測試效果總體上優(yōu)于基于統(tǒng)計的方法,但這依賴于前期的大量學習,基于學習的算法本就是訓練數據越多,效果越好,在擁有理想訓練數據數量的情況下,基于學習的算法呈現出的效果會更好。FFCC算法在各項性能指標中的測試效果最優(yōu),發(fā)揮也最穩(wěn)定,但存在一個無法避免的問題——測試圖像的整理,不同于其他算法簡單輸入圖像,FFCC算法在測試時需要將測試圖像及每張圖像對應的真實光照值存入相應文件夾,并設置路徑,這對于沒有編程基礎的公安技術人員來說較為困難。FFCC算法在各項性能指標中都有著令人滿意的效果,如果能簡化FFCC算法的處理過程,從而將其廣泛應用于視頻偵查領域,案件的偵破效率將會得到很大提升。
實際上,基于統(tǒng)計的方法相比于基于學習的方法更適合公安實際工作,一方面不需要前期的訓練學習,另一方面基于統(tǒng)計的方法簡單易操作。在幾種基于統(tǒng)計的方法中,灰度陰影算法在兩個數據集中的測試效果最佳,無論在室外、室內,還是燈光下等各種場景中均能取得較好且穩(wěn)定的偏色校正效果。就目前而言,灰度陰影算法相對于其它顏色恒常性計算方法能更好地在視頻偵查領域展開應用。