陳 亮,林 增
(武夷學(xué)院 數(shù)學(xué)與計算機學(xué)院,福建 武夷山 354300)
在當(dāng)今社會行人檢測為人們的生產(chǎn)生活提供了很大的便利,而行人檢測由于受到環(huán)境的影響使檢測的準(zhǔn)確率受到影響,而光照是影響行人檢測的一大關(guān)鍵影響因素。人們往往通過對視頻圖像進行預(yù)處理來提高行人檢測的準(zhǔn)確性。目前,針對光照的預(yù)處理方法有直方圖均衡化、伽馬校正法、Retinex算法等。但是由于光照因素的復(fù)雜性,往往還達不到非常理想的效果,時有出現(xiàn)漏檢、錯檢等情況。
本文主要主要針對上述問題進行研究,提出了基于gamma校正后的多尺度Retinex圖像預(yù)處理算法。通過實驗效果表明在特定的光照條件下,本文的算法效果更佳。
基于視頻行人檢測的預(yù)處理算法研究目的是將圖像中的行人從背景中凸顯出來,使圖像檢測獲得更多有效信息[1]。光照環(huán)境的變化是對視頻行人檢測一大影響因素,對受光照因素污染的圖像基本預(yù)處理方法以下幾種方法。
直方圖均衡化:將原始圖像進行灰度處理,矯正灰度處理后的圖像。經(jīng)過灰度處理的直方圖包含信息量更多,因而圖像的清晰度更高。該圖像增強方式基于累計分布函數(shù),增強變換相關(guān)圖像,因而該方式具有全局性特點[2]。
直方圖均衡化流程如圖1:
圖1 直方圖均衡化算法流程圖Figure 1 Flow chart of histogram equalization algorithm
rk代表第k個灰度級,n代表最初圖像的像素,rk代表像素數(shù)量,nk代表處理圖像的灰度級,rk代表出現(xiàn)像素的概率,p(rk)代表灰度級,gk為第k個灰度級別變換后的灰度值。
直方圖均衡化可以擴大灰度間距,使其趨于均勻,進而形成反差效果,提升圖像清辨識度,實現(xiàn)圖像增強[2]。如圖2-3所示,其灰度過度集中于某個較小范圍內(nèi),導(dǎo)致僅僅通過視覺不能對相關(guān)的圖像內(nèi)容進行辨識,原始圖像在處理之后,清晰度得以提升,辨識難度降低。
直方圖均衡化存在以下兩個特點:
(1)按照灰度級別頻率的不同,分別增強相應(yīng)的灰度級別,即分別加大每個級別的間距。
(2)原始圖像灰度級別的個數(shù)可能存在減少現(xiàn)象,即可以簡并相關(guān)頻率較小的灰度級別。
當(dāng)滿足公式1時,才能夠?qū)崿F(xiàn)不同灰度級別的映射,即簡并現(xiàn)象。通過簡并現(xiàn)象不但會過度增強頻次較多的灰度級別,還會造成重要信息的破壞或者丟失,無法實現(xiàn)預(yù)期目標(biāo)。
圖2 直方圖均衡化實驗結(jié)果Figure 2 Experiment results of histogram equalization
直方圖均衡化實驗所得到的圖像呈灰度化,可能導(dǎo)致目標(biāo)原本灰度級過大的圖像信息得到簡并,導(dǎo)致細節(jié)信息丟失。
圖像處理技術(shù)中,Gamma校正技術(shù)的應(yīng)用非常普遍,通過伽馬校正進行修正,圖像信息的對比效果更加明顯,相關(guān)的處理形式如下[3]:
其中r代表輸入圖像的輸入數(shù)據(jù),c代表常量系數(shù),通常可將其設(shè)為1,ε代表補償系數(shù),λ決定了像素變換方式,λ=1時代表線性變換,不會影響對比度,λ≠1時表示指數(shù)變換,會導(dǎo)致相應(yīng)的對比度發(fā)生改變,Gamma校正的效果可參照圖3所示。
圖3 Gamma校正實驗結(jié)果Figure 3 Experiment results of gamma calibration
圖2-4中左邊為原始圖像,當(dāng)ε=0,λ=0.5時,矯正效果如右圖。
如上圖所示,Gamma校正方法存在對高光區(qū)校正程度的不足。不僅如此,如果缺乏對圖像視覺效果的整體經(jīng)驗評價,在圖片處理過程中,很難確定一個合理的Gamma數(shù)值來修正原始圖像,在很大程度上制約了該方法的實際應(yīng)用[2]。
基于色彩的相關(guān)理論,Retinex能夠?qū)崿F(xiàn)邊緣增強、顏色恒常性以及灰度壓縮的均衡,所以可有效的增強處理不同種類的圖像,特別是彩色圖像。
Retinex算法的理論基礎(chǔ)是色彩恒常性,即人類視覺系統(tǒng)可以對感知到亮度或者顏色進行調(diào)節(jié)。按照該理論的觀點,物體的反射特點決定了視覺系統(tǒng)感知到的亮度和色彩通常而言,色彩由于場景照度導(dǎo)致的變化較為緩和,而色彩由于表面導(dǎo)致的變化較為突然。對比兩種變化形式,可以輕易分辨出圖像照度以及表面變化[4]。
在Retinex算法中,存在一個基本假設(shè),即:
F代表原始圖像彩色信息,R代表反射率,I代表入射光。
原理示意圖如圖4所示:
圖4 Retinex原理示意圖Figure 4 Schematic diagram of Retinex
Retinex算法的原理說明原始圖像的色彩信息在很大程度上取決于反射物體R(x,y),其信息的動態(tài)范圍則取決于入射光I(x,y)。
Retinex算法的基本流程是:初步處理原始圖像的色彩信息F(x,y),估算反射光的照射分量I(x,y),以及發(fā)射物體相應(yīng)的反射分量R(x,y),可以提升影像光照的均勻度,從而有針對性的增強處理原始圖像,實現(xiàn)最佳的視覺效果。
在增強處理圖像的實際過程中,理論意義上的乘積運算通常會被更簡潔的加減法取代,具體表達公式如下:
其中f(x,y)=log(F(x,y)),r(x,y)=log(R(x,y)),i(x,y)=log(I(x,y))。
通過視覺系統(tǒng),我們不能直接估算反射分量,但可對入射光部分進行相關(guān)估算,再根據(jù)公式3估算反射分量,最后通過修正可獲取最后的結(jié)果。Retinex算法的計算過程可參照框圖5所示。
圖5 Retinex算法過程框圖Figure 5 Process block diagram of Retinex algorithm
Retinex算法能夠在提升待處理圖像對比度和亮度的同時,最大程度的縮減動態(tài)灰度范圍。隨著光照均勻度的提升,可以提升原始圖像在亮區(qū)和暗區(qū)內(nèi)容的顯示效果。除此之外,Retinex算法具有一定的穩(wěn)定性,通常不會隨著圖像的變化而發(fā)生改變,因此在增強彩色圖像方面,有明顯的優(yōu)越性[4]。在實驗中,實驗運行的速度較為緩慢,耗時較多,同時處理過后的圖像亮度區(qū)域會被過度的放大。
實驗效果如下圖6所示:
圖6 Retinex算法實驗結(jié)果Figure 6 Experiment results of Retinex algorithm
本文提出一種新的基于光照污染的圖像預(yù)處理算法:基于gamma校正后的多尺度Retinex算法。經(jīng)過實驗的結(jié)果表明,本文的算法效果更佳。
2.1.1 多尺度Retinex算法
多尺度Retinex算法為數(shù)個單尺度Retinex算法輸出的加權(quán)平均,可以在確保圖像色彩不變的同時,將圖像信息突顯,相關(guān)公式如下所示:
Ii(x,y)代表輸入圖像第i個顏色通道的像素值,i∈(R,G,B)通道中的一個,F(xiàn)(x,y)代表高斯函數(shù),* 代表卷積運算,Ri(x,y)就是所需獲取的第i個顏色通道的輸出圖像,在原始圖像中將亮度圖像的估算值減去得到該值;N代表尺度的數(shù)量,ωn代表和所有尺度有關(guān)的權(quán)重值,Cn和σn則代表所有尺度上高斯卷積函數(shù)的標(biāo)準(zhǔn)偏差和系數(shù)。
針對多尺度Retinex算法的相關(guān)定義存在多個尺度下,并進一步將不同的Cn和σn分配到相應(yīng)尺度上,這樣在提升圖像內(nèi)容細節(jié)對比度的同時,確保圖像彩色信息不會丟失。按照Jobson等研究者的相關(guān)成果,就絕大部分圖像而言,基于這三個尺度的運算已經(jīng)足夠,并且各個尺度上的權(quán)重值可以是一樣的。通常而言,三個尺度在選擇過程中,可以和高、中、低三個尺度分別對應(yīng),ωi能按照進行細微調(diào)節(jié)[5]。
Jobson等相關(guān)研究者的實驗數(shù)據(jù)可參照下表1所示:
表1 多尺度Retinex算法常數(shù)列表Table 1 Constant list of Retinex algorithm with multi-scale
算法效果如圖7:
圖7 多尺度Retinex算法效果圖Figure 7 Experiment results of Retinex algorithm with multi-scale
可以看出經(jīng)過多尺度Retinex算法在彩色圖像處理過程中,會出現(xiàn)“顏色失真、泛白、整體亮度較低”等問題,無法將顏色效果原本的展現(xiàn)出來[5]。
基于Gamma校正后的多尺度Retinex算法是將圖像經(jīng)過Gamma校正,得以保存梯度信息,圖像的對比度得到加強[14],再利用多尺度Retinex算法處理,能有效克服了圖像只經(jīng)過多尺度Retinex算法的泛白和圖像失真現(xiàn)象,從而達到更好的預(yù)處理效果。
基于Gamma校正后的多尺度Retinex算法流程如圖8:
圖8 基于Gamma校正后的多尺度Retinex算法流程圖Figure 8 Flow chart of Gamma-corrected multiscale Retinex algorithm
算法效果如圖9:
圖9 實驗效果圖Figure 9 Experimental effect diagram
從實驗結(jié)果表明新的預(yù)處理方法處理后的效果得到有效的改善,相對效果更好。
本文采用目前比較流行的方法:梯度方向直方圖[14](Histogram of Oriented Gradients,HOG)對待處理圖像進行行人檢測實驗,用檢測到的行人數(shù)量多少以及檢測是否有效來判斷圖像預(yù)處理的效果好壞。
實驗驗證采用受光照污染圖像經(jīng)過相應(yīng)預(yù)處理后進行行人檢測實驗。實驗結(jié)果如下:
圖10 原圖1行人檢測結(jié)果Figure 10 Results of pedestrian detection original figure 1
圖11 直方圖均衡化后行人檢測結(jié)果Figure 11 Results of pedestrian detection after histogram equalization
圖12 伽馬校正法后行人檢測結(jié)果Figure 12 Results of pedestrian detection after gamma correction
圖13 Retinex算法后行人檢測結(jié)果Figure 13 Results of pedestrian detection after Retinex algorithm
圖14 本文方法預(yù)處理后的行人檢測結(jié)果Figure14 Resultsof pedestrian detection after preprocessingin this
圖15 原圖2行人檢測結(jié)果Figure 15 Results of pedestrian detection original figure 2
圖16 直方圖均衡化后行人檢測結(jié)果Figure 16 Results of pedestrian detection after histogram equalization
圖17 伽馬校正法后行人檢測結(jié)果Figure 17 Results of pedestrian detection after gamma correction
圖18 Retinex算法后行人檢測結(jié)果Figure 18 Results of pedestrian detection after Retinex algorithm
圖19 本文方法預(yù)處理后的行人檢測結(jié)果Figure 19 Results of pedestrian detection after preprocessing in this paper
經(jīng)過梯度方向直方圖 (Histogram of Oriented Gradients,HOG)對光照不同的圖像進行行人檢測后,得到的行人檢測人數(shù)及準(zhǔn)確性如下表2所示:
表2 夜晚光照弱情況下行人檢測實驗結(jié)果Table 2 Results of pedestrian detection under weak light at night
表3 夜晚光照弱情況下行人檢測實驗結(jié)果Table 3 Results of pedestrian detection results under weak light at night
其中,伽馬校正在圖1中雖然的檢測出的人數(shù)的數(shù)量與實際人數(shù)數(shù)量相同,但存在這一個誤判。從表中可以看出,采用本文所提出的預(yù)處理算法得到的預(yù)處理圖像對行人檢測實驗有一定的幫助,得到的效果更好。
基于伽馬校正后的多尺度Retinex算法通過多組實驗驗證,此方法可以有效的提高圖像的對比度,避免了直方圖均衡化帶來的圖像信息簡并情況,有效的解決了Retinex算法的泛白,整體呈灰色的情況,同時還能降低伽馬校正對高光區(qū)校正不足的影響。從而體現(xiàn)出基于伽馬校正后的多尺度Retinex算法在特定的光照條件下的處理效果,在特定的受光照污染的圖像行人檢測的預(yù)處理上效果更佳。