陳國軍,李開悅,孔李燕,程 琰
(中國石油大學(xué)(華東) 計(jì)算機(jī)與通信工程學(xué)院, 山東 青島 266000)
運(yùn)動(dòng)目標(biāo)檢測(cè),即前景/背景分割,是計(jì)算機(jī)視覺中最基本的任務(wù)之一,尤其對(duì)于實(shí)時(shí)視頻流的處理。在視頻監(jiān)控、行人檢測(cè)、電影制作及人機(jī)交互等應(yīng)用中,前景/背景分割作為一種預(yù)處理手段為后期圖像處理奠定基礎(chǔ)。
RGB-D相機(jī)提供的深度數(shù)據(jù)對(duì)室內(nèi)場(chǎng)景下的目標(biāo)檢測(cè)具有重要的研究意義,因?yàn)樗苊饬嘶陬伾畔⒌哪繕?biāo)檢測(cè)方法帶來的一些問題,如:光照變化,陰影及由于前景目標(biāo)和背景顏色相似時(shí)產(chǎn)生的顏色偽裝等。
但是,深度相機(jī)獲取的深度圖[1]分辨率低,噪聲多,僅通過深度數(shù)據(jù)分割前景和背景,同樣會(huì)產(chǎn)生一些問題。例如,由于物體表面反射、散射及遮擋等影響,深度測(cè)量并不總是有效;前景目標(biāo)輪廓受到深度數(shù)據(jù)高水平噪聲的影響;場(chǎng)景中的目標(biāo)物體靠近背景時(shí),產(chǎn)生深度偽裝。
基于上述原因,有效地結(jié)合顏色和深度信息分割前景和背景[2-3],能夠獲得更加精確和可靠的分割效果,降低上述問題產(chǎn)生的影響。對(duì)此,文中提出一種有效的目標(biāo)檢測(cè)方法,該方法利用兩種背景差分法分別作用于顏色圖和深度圖:基于改進(jìn)的LBSP的背景差分法作用于顏色圖;基于一種新的混合模型的背景差分法作用于深度圖。將兩種方法得到的二值圖像以及差分后的Canny邊緣檢測(cè)圖通過邏輯運(yùn)算結(jié)合后,經(jīng)過后期處理操作,將會(huì)提高目標(biāo)檢測(cè)的精度,獲得更加完整的目標(biāo)。
隨著計(jì)算機(jī)視覺技術(shù)的不斷發(fā)展,運(yùn)動(dòng)目標(biāo)檢測(cè)技術(shù)得到了國內(nèi)外專家學(xué)者的廣泛關(guān)注,在傳統(tǒng)的目標(biāo)檢測(cè)方法得到不斷改善的同時(shí),也出現(xiàn)了一些新的算法。在眾多研究方法中,典型的有光流法、幀間差分法、背景差分法。
背景差分法(又稱背景減法)是應(yīng)用最廣泛的目標(biāo)檢測(cè)方法,該方法檢測(cè)速度快,提取的目標(biāo)也相對(duì)完整,但其結(jié)果受背景模型的影響較大,因此,如何魯棒性地構(gòu)建背景模型并適時(shí)地更新該模型至關(guān)重要。近年來,國內(nèi)外學(xué)者根據(jù)場(chǎng)景和應(yīng)用情況的不同,對(duì)傳統(tǒng)的背景差分法進(jìn)行了改進(jìn)[4-6],同時(shí)也提出一些新的方法。文獻(xiàn)[7-9]中較為詳細(xì)地描述了前景/背景分割算法。
Stauffer等提出的混合高斯背景建模方法[10]是背景建模方法的經(jīng)典,該方法通常能夠較好地適應(yīng)復(fù)雜場(chǎng)景,后期許多學(xué)者對(duì)這種方法進(jìn)行了改進(jìn)(如Zivkovic[11]),算法的效率和魯棒性都得到了提升。后來,許多學(xué)者提出了一些新方法,這些方法無需對(duì)視頻序列的像素值進(jìn)行任何概率估計(jì)的假設(shè),其中包括Wang等提出的基于樣本一致性(SACON)的背景建模方法[12],Barnich等[13]提出的基于像素點(diǎn)的視覺背景提取法(VIBE),Hofmann等[14]提出的PBAS(pixel-based adaptive segmenter)運(yùn)動(dòng)目標(biāo)檢測(cè)法。此外,Bilodeau等[15]提出在紋理空間中使用局部二值相似性模式(LBSP)檢測(cè)運(yùn)動(dòng)目標(biāo)的算法;St-Charles P L等[16]提出改進(jìn)的局部二值相似性模式(LOBSTER)的運(yùn)動(dòng)目標(biāo)檢測(cè)算法。
隨著Kinect相機(jī)的出現(xiàn)和使用,深度數(shù)據(jù)被應(yīng)用到目標(biāo)檢測(cè)過程中。Kinect相機(jī)獲取的深度圖用圖像表現(xiàn)出來,即為灰度圖,因此,深度數(shù)據(jù)可以用到大多數(shù)基于顏色數(shù)據(jù)的背景差分算法中。文獻(xiàn)[17-21]將深度數(shù)據(jù)引入背景差分法,結(jié)合顏色和深度信息來實(shí)現(xiàn)前景和背景的分割。Massimo Camplani等[17]提出基于兩個(gè)單像素統(tǒng)計(jì)分類器結(jié)合的前景/背景分割策略,這兩個(gè)分類器分別基于顏色和深度數(shù)據(jù),通過一個(gè)加權(quán)均值將兩個(gè)分類器的輸出結(jié)果結(jié)合起來。同年,J. Gallego等[19]提出一個(gè)結(jié)合顏色和深度信息的前景/背景分割系統(tǒng),該系統(tǒng)中使用了兩種高斯混合模型,其中前景模型是基于顏色空間和深度空間的,兩種模型通過貝葉斯框架結(jié)合起來。文獻(xiàn)[19]的方法比較簡單,在顏色圖和深度圖中用VIBE算法分別提取目標(biāo)前景,然后用邏輯或運(yùn)算將兩者結(jié)合起來。文獻(xiàn)[20]中提出的方法來源于文獻(xiàn)[10],將深度信息和振幅信息作為額外的顏色信息加入混合高斯背景模型中。
盡管文獻(xiàn)[17-21]都是結(jié)合顏色和深度數(shù)據(jù)檢測(cè)運(yùn)動(dòng)目標(biāo),但這些方法在同時(shí)存在顏色偽裝和深度偽裝的情況下,取得的目標(biāo)精度并不理想。因此,文中提出在顏色圖和深度圖中使用不同的背景差分法,得到對(duì)應(yīng)的二值圖,同時(shí)在顏色圖中使用Canny邊緣檢測(cè)算法,將差分后的結(jié)果圖與前面得到的兩種二值圖相結(jié)合,經(jīng)過后期處理得到最終的檢測(cè)目標(biāo)。
背景差分法相對(duì)于其他方法能更好地提取前景目標(biāo)。文中的數(shù)據(jù)處理流程如圖1所示。
圖1 數(shù)據(jù)處理流程
基于LOBSTER的背景差分法是由St-Charles P L[16]等提出,是一種改進(jìn)的LBSP算法。該方法借鑒了VIBE[13,22]算法的思想,加入鄰域空間信息,并與LBP算子[23]進(jìn)行結(jié)合。
計(jì)算LBSP的核心思想是比較中心像素點(diǎn)與鄰域像素的相似性,然后進(jìn)行編碼,其計(jì)算公式為:
(1)
(2)
其中,ix,y表示中心像素(x,y)處的像素值,ix,y,p表示(x,y)的第p個(gè)鄰域像素的值,文獻(xiàn)[24]詳細(xì)描述了LBSP特征值的中心像素及其鄰域像素的位置信息;Tr為相對(duì)閾值,相似度閾值(Tr·ic)隨著中心像素的變化而變化,相比恒定閾值,能夠提高LBSP的精度。在計(jì)算LBSP特征值的過程中,如果ix,y與ix,y,p屬于同一區(qū)域(稱為intra區(qū)域),得到intra-LBSP算子;如果ix,y與ix,y,p不在同一區(qū)域(稱為inter區(qū)域),得到inter-LBSP算子。
由于在LBSP特征值中加入了鄰域像素和中心像素的對(duì)比,該方法對(duì)噪聲更具魯棒性。intra-LBSP和 inter-LBSP的計(jì)算,能夠同時(shí)獲得紋理和像素值的變化。
基于LOBSTER的背景差分法,與VIBE算法的思想一致,不同的是,文中將LBSP特征值和像素值同時(shí)用于背景差分算法中。此外,在對(duì)某像素(x,y)進(jìn)行背景建模時(shí),把該像素的LBSP特征值及其鄰域像素的LBSP特征值同時(shí)加入到背景模型MLBSP(x,y)中,在與MLBSP(x,y)對(duì)應(yīng)的原圖像像素的背景模型Mc(x,y)中加入(x,y)的像素值。詳細(xì)的背景建模過程可見文獻(xiàn)[24]。當(dāng)前幀中某一位置的像素與背景模型匹配的個(gè)數(shù)超過給定閾值Tmin時(shí),該像素才最終被判定為背景。式(3)為像素類別的判斷公式。
F(x,y)=
假定背景模型中(x,y)處的顏色樣本集為{Mc1,Mc2,…,McN},intra-LBSP樣本集為{MLBSP1,MLBSP2,…,MLBSPN};BG表示背景像素,F(xiàn)G表示前景像素;#{·}表示符合條件的像素個(gè)數(shù);Tmin表示給定的比較閾值;p(x,y)表示當(dāng)前幀在(x,y)處的像素強(qiáng)度,L1函數(shù)用來計(jì)算Mci(x,y)和p(x,y)之間的L1距離;LBSP(x,y)表示當(dāng)前幀在(x,y)位置處的inter-LBSP算子,H函數(shù)用來計(jì)算MLBSPi(x,y)和LBSP(x,y)之間的漢明距離;TC是顏色閾值,TLBSP是漢明距離閾值。
Kinect相機(jī)獲取的深度數(shù)據(jù)與光照、陰影等因素?zé)o關(guān),只與物體到相機(jī)間的距離有關(guān),因而可以采用Stauffer[10]提出的混合高斯建模方法(簡稱MOG算法)作用于深度數(shù)據(jù),構(gòu)建基于深度數(shù)據(jù)的背景模型。雖然該方法能夠通過調(diào)整像素的模型參數(shù)來適應(yīng)受噪聲影響的深度數(shù)據(jù),但由于噪聲點(diǎn)的值變化較大,用該方法來分割背景和前景物體,也會(huì)造成錯(cuò)誤的檢測(cè)結(jié)果。為降低噪聲對(duì)目標(biāo)檢測(cè)精度的影響,文中分別為有深度值和無深度值的像素建立不同的背景模型,從而得到一個(gè)混合的背景模型。
對(duì)于深度數(shù)據(jù)中的無深度值的像素(稱為“孔洞像素”),如果在連續(xù)的一段時(shí)間內(nèi),某一處的像素一直是孔洞像素,文中認(rèn)為該點(diǎn)的像素為恒定孔洞像素,也被視為背景點(diǎn)。深度值表現(xiàn)了目標(biāo)或背景物體與相機(jī)間的距離,因此,同一位置處的像素值在不同的時(shí)刻按照大小進(jìn)行有序的排列,值最大的表明距離傳感器最遠(yuǎn),表現(xiàn)為背景,即μt=max(Dk),k∈[0,t];同時(shí),如果前后兩幀的像素值之差超過一定值,則說明有異常值出現(xiàn)。根據(jù)此原理,在前N幀圖像背景建模過程中,背景模型不斷更新,其步驟如下:
(1)背景初始化:B0=D0(第一幀為初始背景)
(2)背景模型更新:
if:Dt+1(x,y)=0
Bt+1(x,y)=0;count(x,y)++;
if:count(x,y)≥Thc
BN(x,y)=0;(恒定孔洞)
if:Dt+1(x,y)≠0
if:Bt(x,y)=0
Bt+1(x,y)=Dt+1(x,y);count(x,y)=0;
else:
if:|Dt+1(x,y)-Bt(x,y)|≥Thd·Bt(x,y)
Bt+1(x,y)=min(Dt+1(x,y),Bt(x,y));
else:
Bt+1(x,y)=max(Dt+1(x,y),Bt(x,y));
其中,Bt+1(x,y)、Dt+1(x,y)分別表示t+1時(shí)刻(x,y)處的背景值和當(dāng)前深度值;count(x,y)為(x,y)處的計(jì)數(shù)器,記錄像素值連續(xù)為0的幀數(shù),用來判斷該處像素是否為恒定孔洞像素;Thc表示孔洞的判定閾值(是一個(gè)表示幀數(shù)的值),其值的大小受到N值的影響,N越大Thc也越大;Thd為相對(duì)閾值,當(dāng)背景發(fā)生變化時(shí),閾值(Thd·Bt(x,y))也發(fā)生變化,用該閾值來判斷當(dāng)前像素值是否為異常值,更具魯棒性。
經(jīng)過上述背景建模產(chǎn)生一個(gè)背景模型BN,該背景在后期過程并不是一成不變的。從第N+1幀開始進(jìn)行背景差分,同時(shí)背景模型(BN)也會(huì)更新。如果t時(shí)刻,背景模型中(x,y)處的像素為恒定孔洞,若t+1時(shí)刻(x,y)處像素值不為0,則該處像素被判定為前景像素,否則為背景像素;如果t時(shí)刻,背景模型中(x,y)處的像素不為恒定孔洞,t+1時(shí)刻該處像素的分類算法采用Stauffer[10]提出的混合高斯建模方法。其前景/背景分割具體步驟如下:
(1)if:Bt(x,y)=0(恒定孔洞)
Bt+1(x,y)=0;
if:Dt+1(x,y)≠0(只要當(dāng)前像素不為0,那么視為前景)
FD(x,y)=255;
else:
FD(x,y)=0;(否則,視為背景)
(2)else:(MOG算法)
if:FD(x,y)=0(當(dāng)前像素被判定為背景,背景模型中匹配的高斯函數(shù)參數(shù)更新)
υi,t+1=υi,t(1-α)+α;
else:(當(dāng)前像素被判定為前景,不匹配的高斯函數(shù)中只有權(quán)值更新,其余參數(shù)不變)
υi,t+1=υi,t(1-α);
高斯分布重新排序:γi=ωi,t/σi,t;
前B個(gè)高斯分布被選為背景模型:
其中,MOG算法中背景模型的似然函數(shù)為:
其中,K表示高斯分布數(shù)量(一般取3~5間的數(shù));α表示學(xué)習(xí)率(0<α<1),決定了適應(yīng)場(chǎng)景變化的速度,場(chǎng)景變化越快,α越大;υi,t表示第i個(gè)高斯函數(shù)在t時(shí)刻的權(quán)值,其均值為μi,t,∑i,t表示其協(xié)方差矩陣。
由于深度圖的分辨率低,邊界受噪聲影響較大,而Kinect獲取的彩色圖的分辨率高,邊界更加完整。Canny的目標(biāo)是找到一個(gè)最優(yōu)的邊緣檢測(cè)算法。文中采用Canny邊緣檢測(cè)方法作用于彩色圖,得到差分后的邊緣檢測(cè)圖,為獲取較好的邊界,在邊緣檢測(cè)圖上進(jìn)行形態(tài)學(xué)膨脹操作,得到最終的Canny邊緣檢測(cè)差分圖DCanny。計(jì)算公式為:
DCanny=ICanny-BCanny
(5)
其中,ICanny表示當(dāng)前幀邊緣檢測(cè)圖;BCanny表示作為背景的邊緣檢測(cè)圖,文中取圖像序列的第一幀為背景邊緣檢測(cè)圖。
經(jīng)過2.1-2.3節(jié)后,用邏輯或運(yùn)算將三部分得到的圖像結(jié)合,得到較為完整的前景目標(biāo),但目標(biāo)圖像中可能會(huì)出現(xiàn)部分的噪聲及孔洞,因此需要經(jīng)過后期的處理操作。文中采用的后期處理操作包括:中值濾波(3*3)、腐蝕膨脹、4-鄰域孔洞填充。
文中采用假陽率FPR、假陰率FNR、準(zhǔn)確率Precision、召回率Recall、F-measure參數(shù)作為評(píng)價(jià)指標(biāo)。為驗(yàn)證該方法的有效性,將MOGziv[11]、PBAS[14]、VIBE[13]算法分別作用于顏色圖和深度圖,得到對(duì)應(yīng)的二值圖,然后通過邏輯或運(yùn)算將得到的二值圖結(jié)合,得到三種方法的分割結(jié)果圖。將用文中方法得到的結(jié)果圖與上述三種方法得到的結(jié)果圖以及單獨(dú)用顏色和深度數(shù)據(jù)得到的結(jié)果圖進(jìn)行了對(duì)比。數(shù)據(jù)來自Massimo Camplani等提供的數(shù)據(jù)集,針對(duì)要解決的問題,只在ColCamSeq和DCamSeq圖像序列上進(jìn)行對(duì)比。
ColCamSeq場(chǎng)景旨在測(cè)試當(dāng)存在顏色偽裝時(shí)文中方法的性能。圖2(a)、(b)分別表示用Kinect相機(jī)獲取的該場(chǎng)景中的顏色數(shù)據(jù)和深度數(shù)據(jù),其中一個(gè)白色的盒子在一個(gè)白色平板前面移動(dòng),而白色平板屬于背景。圖3展示了不同算法在ColCamSeq上得到的分割結(jié)果圖。從圖中可以看出,單獨(dú)使用顏色數(shù)據(jù)得到的FNR值較高,獲取的目標(biāo)不太完整,在目標(biāo)區(qū)域出現(xiàn)空洞;PBAS算法和VIBE算法的FPR值較高,分割結(jié)果要比原目標(biāo)區(qū)域大;而文中方法降低了FNR和FPR的值,使獲得的目標(biāo)更加完整,檢測(cè)精度更高。
圖2 Kinect采集的圖像序列
圖3 ColCamSeq第928幀分割結(jié)果
DCamSeq場(chǎng)景是為了測(cè)試當(dāng)存在深度偽裝時(shí)文中方法的性能。圖3(c)、(d)分別表示該場(chǎng)景的顏色數(shù)據(jù)和深度數(shù)據(jù),人的手逐漸靠近檔案柜,而檔案柜是背景中的一部分。從圖4可以看出,由于圖中存在深度偽裝,單獨(dú)使用深度數(shù)據(jù)得到的FNR值很高,檢測(cè)到的目標(biāo)不完整;同時(shí),手和檔案柜顏色也較相似,僅用顏色數(shù)據(jù)取得的分割效果并不十分理想,對(duì)比其他方法得到的結(jié)果精度也不理想;而文中方法在結(jié)合Canny邊緣檢測(cè)的差分圖后,得到的目標(biāo)輪廓更加完整,F(xiàn)NR和FPR值都相對(duì)較低。
綜上所述,文中方法在存在顏色偽裝和深度偽裝的情況下,得到的分割效果要優(yōu)于對(duì)比的幾種方法。
圖4 DCamSeq第974幀分割結(jié)果
表1、表2展示了文中方法與對(duì)比方法在ColCamSeq和DCamSeq圖像序列上的精度分析。在數(shù)據(jù)集中提供了手工繪制的真值圖,選取其中一部分真值圖像與文中方法所得結(jié)果圖進(jìn)行了對(duì)比分析,其中選取ColCamSeq中第847幀到1 081幀中的39幀,在DCamSeq中選取第839幀到1 199幀中的61幀。由于數(shù)據(jù)集中的數(shù)據(jù)為圖像序列,所以結(jié)果分析以參數(shù)的平均值形式表現(xiàn)。
表1 ColCamSeq的檢測(cè)精度
表2 DCamSeq的檢測(cè)精度
表1表明,在存在顏色偽裝的情況下,Z. Zivkovic提出的混合高斯背景建模的方法能夠取得較高的Precision、Recall、F-measure值,其檢測(cè)結(jié)果較好;文中方法得到的FPR和FNR值比MOGziv方法都低,其他的參數(shù)結(jié)果也都優(yōu)于Z. Zivkovic提出的方法。
表2表明,在存在深度偽裝的情況下,只使用顏色數(shù)據(jù)取得的結(jié)果較好,雖然文中方法取得的FPR值較高,但Recall和F-measure值要明顯高于其他對(duì)比方法。
根據(jù)上述分析可知,文中方法在存在顏色偽裝和深度偽裝的情況下,均能較好地分割前景目標(biāo)和背景,而且分割精度較高。
針對(duì)場(chǎng)景中存在的顏色偽裝和深度偽裝問題,提出一種融合顏色和深度數(shù)據(jù)檢測(cè)目標(biāo)的方法。與其他方法不同的是,文中在顏色和深度數(shù)據(jù)分別采用不同的目標(biāo)檢測(cè)方法,在顏色圖中用基于LOBSTER的背景差分法,得到分割后的二值圖;在深度圖中用提出的基于混合背景模型的背景差分法,得到分割后的二值圖;同時(shí),還用差分后的Canny邊緣檢測(cè)圖來補(bǔ)充目標(biāo)輪廓;最后,通過形態(tài)學(xué)濾波、孔洞填充、腐蝕膨脹等后期操作完善分割結(jié)果。實(shí)驗(yàn)結(jié)果表明,該方法在測(cè)試數(shù)據(jù)集上比其他對(duì)比方法獲取的目標(biāo)更加完整、精度更高。同時(shí),在結(jié)果圖中噪聲點(diǎn)依然存在,盡管在2.2中對(duì)孔洞像素單獨(dú)進(jìn)行背景建模,也處理了部分異常值,減少了部分噪聲,但并未對(duì)差分過程中出現(xiàn)的異常值進(jìn)行處理,因此,增加了結(jié)果分析中的FPR值。后期工作中會(huì)針對(duì)上述問題做進(jìn)一步改善。同時(shí),還會(huì)通過超像素分割方法,來加快算法執(zhí)行的速度,從而提高目標(biāo)檢測(cè)的實(shí)時(shí)性。