摘 要:提出了一種新的運動目標(biāo)分類方法,該方法利用sigmoid函數(shù)將標(biāo)準(zhǔn)SVM的輸出結(jié)果直接轉(zhuǎn)換為目標(biāo)所屬類別的概率,避免了分類器的組合問題;同時該方法還利用后置加權(quán)均值濾波器對SVM的初始輸出結(jié)果進行濾波平滑處理,進一步提高了分類的正確率。實驗結(jié)果表明,該方法能有效地提高運動目標(biāo)分類的精度。
關(guān)鍵詞:支持向量機; 后驗概率; 均值濾波; 運動目標(biāo)分類
中圖法分類號:TP391.4
文獻標(biāo)志碼:A
文章編號:1001-3695(2010)02-0778-03
doi:10.3969/j.issn.1001-3695.2010.2.106
Moving target classification using SVM probability and post-filtering
LI Zhan-chuang, XIAO Guo-qiang, DAI Yi, QIU Kai-jin
(College of Computer Information Science, Southwest University, Chongqing 400715, China)
Abstract:This paper presented a new method to classify moving targets, in which the outputs of standard SVMs could be mapped directly into target category’s posterior probabilities by the sigmoid function. Furthermore,also put forward a post-filtering framework to improve classification accuracy, using a weighted average filter to smooth the initial outputs of SVM classifiers. Experimental results demonstrate that the framework of SVM probability outputs combined with a post-filter is more effective for moving target classification from video in terms of classification accuracy.
Key words:SVM(support vector machine); posterior probability; average-filtering; moving target classification
在智能視頻處理中,需要系統(tǒng)依據(jù)原始的視頻數(shù)據(jù)自動分析真實環(huán)境下發(fā)生的事件。運動目標(biāo)分類是智能視頻處理中一個重要的組成部分,它是指將視頻中檢測到的運動目標(biāo)劃分為預(yù)先定義好的目標(biāo)類別,如交通視頻中的行人、車輛等。運動目標(biāo)分類的本質(zhì)是多類分類問題,常用有監(jiān)督的機器學(xué)習(xí)方法來解決,即先通過對已知類別樣本進行學(xué)習(xí)獲得分類模型,然后通過模型對未知類別樣本進行預(yù)測。支持向量機(SVM)、K近鄰、神經(jīng)網(wǎng)絡(luò)等都屬于這類方法。其中,SVM方法由于其堅實的理論基礎(chǔ)和良好的泛化性能,成為解決此類問題最常用的方法之一。
在標(biāo)準(zhǔn)SVM方法中,預(yù)測樣本類別時只考慮兩個極端情況,即樣本屬于某一類別的概率為1或0。因此,傳統(tǒng)的SVM方法在解決運動目標(biāo)分類問題時,必須將多個兩類分類器的結(jié)果進行組合以獲得最終的分類結(jié)果。其中最常用的組合方式是投票法[1]和Pairwise coupling[2]方法。投票法用于M類分類問題時,每任意兩類都要構(gòu)造一個SVM分類器,共需構(gòu)造M(M-1)/2個分類器。由于每個分類器的輸出結(jié)果都是1或0,組合分類器的結(jié)果只能得到樣本的粗糙后驗概率,因此不利于結(jié)果的后續(xù)優(yōu)化處理。而Pairwise coupling方法由于在預(yù)測時要解一個優(yōu)化問題,計算代價比較大,不利于實時處理。
1 基于SVM輸出概率的運動目標(biāo)分類
基于SVM方法的目標(biāo)分類可分解成兩個步驟完成:a)預(yù)先定義目標(biāo)類別和提取目標(biāo)特征;b)設(shè)計合適的分類準(zhǔn)則。
在步驟a)中首先預(yù)先定義目標(biāo)類別。在本文中,行人、小轎車、自行車/摩托車和卡車四個目標(biāo)類別被預(yù)先定義,然后進行目標(biāo)特征的提取。本文所采用的目標(biāo)特征有:(a)形狀特征(包括目標(biāo)高寬比,目標(biāo)高度分別與目標(biāo)區(qū)域三分之一處和三分之二處寬度之比[3],目標(biāo)輪廓周長的平方與目標(biāo)面積之比,目標(biāo)面積與外接矩形面積之比,目標(biāo)偏心率);(b)灰度特征(包括目標(biāo)區(qū)域灰度直方圖的一、二階矩);(c)紋理特征[4]。
使用xi來表示目標(biāo)特征,其中i=1,2,…,L(L表示目標(biāo)特征向量的維度)。因此,每個目標(biāo)樣本都用L維的特征矢量X=(x1,x2,…,xL)來表示。假設(shè)共有M類,則目標(biāo)類別集合C={c1,c2,…,cM},其中cj(j=1,2,…,M)表示目標(biāo)的類別。為使提取的特征具有可比性,在使用前先用式(1)進行歸一化處理。
xi′=(xi-ximin)/(ximax-ximin)(1)
其中:xi′是對應(yīng)的歸一化后的特征值;ximin和ximax分別指所采集特征分量的最小值和最大值。
在步驟b)中,本文使用Platt[5]提出的SVM后驗概率建模方法對已知類別樣本進行SVM訓(xùn)練。該方法利用Sigmoid函數(shù)將標(biāo)準(zhǔn)SVM的輸出值映射為目標(biāo)的后驗概率P(cj=1|X)。Sigmoid函數(shù)的轉(zhuǎn)換形式如下:
P(y=1|f)=1/(1+exp(Af+B))(2)
其中: f為標(biāo)準(zhǔn)SVM的輸出結(jié)果;P(y=1|f )表示在輸出值f的條件下分類正確的概率;A和B是函數(shù)中的參數(shù),其優(yōu)化策略通過解如下一個最大似然問題來解決[5]:
F(z)=minZ=(A,B)(-li=1(ti log(pi)+(1-ti)log(1-pi)))(3)
其中: Pi=1exp(Afi+B), fi=f(xi),ti由式(4)確定:
ti=(N++1)(N++2) if yi=11(N-+2)if yi=-1(4)
其中:N+、N-分別為SVM模型中正例和反例的個數(shù)。
采用上述方法,針對每個類別cj都通過訓(xùn)練構(gòu)造一個SVM分類器Cj,然后直接將SVM分類器輸出的概率值P(cj=1|X)作為目標(biāo)樣本屬于類別cj的可能性。每個測試目標(biāo)樣本都經(jīng)過M個SVM分類器分別輸出對應(yīng)的后驗概率。因此目標(biāo)樣本X所屬的類別就是輸出值最大的分類器Cj所對應(yīng)的類別cj,即
c^=argmaxciP(ci=1|X)(5)
在解決M類分類問題時,本文方法只需構(gòu)造M個SVM分類器,避免了投票法中的分類器組合問題,便于結(jié)果的實時處理。另外,SVM輸出概率的方法與投票法、Pairwise Coupling方法相比,得到的后驗概率擁有更好的分布[6],其主要表現(xiàn)為SVM分類器在樣本正確類中具有較高的概率,而在其他類中的概率相對較低,如圖1所示。
2 后置濾波器
在運動目標(biāo)分類的前期處理中,某些幀可能由于某些因素(如噪聲干擾等)而無法獲得精準(zhǔn)的目標(biāo)輪廓,這樣勢必會影響目標(biāo)特征的提取,進而影響到SVM分類的結(jié)果。
如圖2(a)所示,在PETS2001(DATASET4)視頻片段的第23幀中,運動目標(biāo)(行人)經(jīng)過各個SVM分類器輸出的后驗概率值分別為0.622 1(自行車/摩托車)、0.046 9(小轎車)、0.314 1(行人)、0.116 0(卡車)。由式(5)可知目標(biāo)分類結(jié)果為自行車/摩托車,與實際結(jié)果(行人)不符。
SVM分類器輸出的概率值經(jīng)過式(5)計算后得到目標(biāo)的類別,如圖2(b)所示,黑色圓點的位置表示行人目標(biāo)在各幀的分類結(jié)果。由圖2(b)可以明顯地看出,分類錯誤只在個別幀發(fā)生,而且這些幀的相鄰幾幀大多數(shù)分類正確。根據(jù)視頻中目標(biāo)運動的連續(xù)性,提出一種后置加權(quán)均值濾波器的方法來進一步優(yōu)化運動目標(biāo)分類的結(jié)果。
圖2(c)是各SVM分類器在每幀輸出的后驗概率值,這些概率值可以看做是一個時序信號序列。運動目標(biāo)在每幀間的變化不大,所以相鄰幀中的運動目標(biāo)經(jīng)過分類器后輸出的概率值在理想情況下是比較平穩(wěn)的。圖2(a)中發(fā)生的分類錯誤可認為是信號的高頻噪聲所致,因此可利用低通濾波器過濾掉信號中的高頻噪聲,提高目標(biāo)分類系統(tǒng)的性能。在時序信號處理中,加權(quán)均值濾波器由于其簡單有效的特性,常被用于平滑濾波,其本質(zhì)是低通濾波器[7]。本文采用加權(quán)均值濾波器作為后置濾波器,對SVM輸出的概率值進行平滑濾波。圖3為加權(quán)均值濾波器的結(jié)構(gòu)示意圖。
圖3中,x(t)為t時刻的信號輸入采樣值;z-1表示延遲一個采樣周期;w[k]為t-k時刻采樣值對應(yīng)的濾波器系數(shù);N為濾波器的長度;y(t)為t時刻輸出的信號值。此濾波器的時域表達式[7]可寫為
y(t)=w[0]x(t)+…+w[N-1]x(t-N+1)=
N-1k=0w[k]x(t-k)(6)
對應(yīng)到本文解決的運動目標(biāo)分類問題有式(7):
P^(cj=1|Xt-k)=N-1k=0[w[k](P(cj=1|Xt-k))](7)
P^(cj=1|Xt)是平滑濾波后第t幀中目標(biāo)樣本Xt屬于類別cj 的概率。
濾波器系數(shù)w[k]的取值應(yīng)遵守以下兩個原則:a)由于時序性,距離第t幀越近的觀測概率值,對第t幀估計值的影響越大;b)滿足歸一化,即w[k]=1且0≤w[k]≤1。在此原則下經(jīng)大量實驗發(fā)現(xiàn),以下加權(quán)策略具有較好的實時性和濾波性能。
設(shè)k為第t幀和第t-k幀的距離,定義k在[0,N-1]上的單調(diào)遞減函數(shù)F(k)為
F(k)=(N-k)2(8)
用式(9)對F(k)進行歸一化:
F′(k)=F(k)/N-1i=0F(i)(9)
本文取F′(k)作為濾波器的系數(shù)w[k]。
對加權(quán)均值濾波器來說,其長度N越大,濾波時參考的信號值就越多,濾波后的結(jié)果就越平滑,但是保留N幀圖像中的運動目標(biāo)所需的存儲空間也越大。在實驗中發(fā)現(xiàn),不同類別的目標(biāo)對窗口寬度N的要求也不同。圖4為濾波器長度N對各個類別的影響曲線,Y軸為濾波器的性能,由歸一化后的糾錯率ECR(error correcting rate)表示。
ECR=(CR′-CR)/CR(10)
其中:CR是平滑濾波前的分類正確率;CR′是平滑濾波后的分類正確率。目標(biāo)Xi的分類正確率由式(11)計算:
CRi=TPi/totali(11)
其中:TPi為目標(biāo)Xi出現(xiàn)且被正確分類的幀數(shù),totali為目標(biāo)Xi出現(xiàn)的總幀數(shù)。
由圖4可以看出,當(dāng)N>20時,濾波器對各類別結(jié)果的優(yōu)化效果接近上限。因此本文選取N=20作為濾波器長度,即能滿足各類別目標(biāo)的要求。
需要指出的是,視頻畫面中可能同時出現(xiàn)多個運動目標(biāo),因此必須考慮多個目標(biāo)在連續(xù)幀中的對應(yīng)關(guān)系,即多目標(biāo)跟蹤。現(xiàn)今已有大量性能良好的算法可以實現(xiàn)此功能,本文采用文獻[8]提出的基于時空上下文的多目標(biāo)跟蹤方法實現(xiàn)系統(tǒng)中的多目標(biāo)跟蹤模塊。
3 算法流程及實驗結(jié)果分析
本文提出的SVM輸出概率結(jié)合加權(quán)均值濾波器的運動目標(biāo)分類算法框圖如圖5所示。其算法流程如下:
a)先對訓(xùn)練視頻進行降噪處理,并用自適應(yīng)高斯背景模型[9]方法提取出運動目標(biāo)區(qū)域,再對其進行形態(tài)學(xué)處理后得到目標(biāo)完整輪廓;手動標(biāo)記部分目標(biāo)樣本并提取目標(biāo)特征;按Platt提出的概率建模方法進行訓(xùn)練,獲得SVM分類模型。
b)對測試視頻進行同樣的降噪、目標(biāo)區(qū)域分割、形態(tài)學(xué)處理后,提取目標(biāo)的特征。將目標(biāo)特征送入訓(xùn)練好的SVM分類器,輸出目標(biāo)類別的后驗概率。
c)同一目標(biāo)的后驗概率值在濾波器中由式(7)計算出平滑后的概率值 P^(cj=1|Xt),再經(jīng)過式(5)獲得目標(biāo)的最終分類結(jié)果。
依照本文算法對PETS2001視頻集進行了實驗(共包括14個視頻片段,其中4個片段用于訓(xùn)練,其余用于測試,視頻畫面大小均為768×576)。圖6是PETS2001-DATASET4視頻中卡車目標(biāo)的分類結(jié)果。其中(a)是卡車目標(biāo)在每幀中經(jīng)過不同SVM分類器后輸出的初始概率值;(b)是該目標(biāo)的初始分類結(jié)果;(c)是初始概率值經(jīng)過濾波器后得到的平滑概率值;(d)是最終的分類結(jié)果。對比(b)和(d)可以明顯看出,加權(quán)均值濾波器能有效提高目標(biāo)分類的正確率。
對PETS2001視頻分別使用傳統(tǒng)SVM+投票法、SVM輸出概率方法和SVM輸出概率+濾波器方法進行了對比實驗,目標(biāo)分類的結(jié)果如表1所示。從表1可以看出,在使用相同目標(biāo)特征的條件下,本文提出的算法在運動目標(biāo)分類問題上具有更高的分類正確率。
需要說明的是,在PETS2001視頻中,運動目標(biāo)只有自行車、行人、小轎車和卡車,因此定義以上四種類別即可。在實際應(yīng)用中,應(yīng)根據(jù)任務(wù)需求定義不同的類別。
4 結(jié)束語
本文提出了一種新的運動目標(biāo)分類方法,該方法有以下兩個特點:a)引入SVM直接輸出后驗概率的方法,使SVM分類器的輸出結(jié)果得以量化,使之更接近真實的目標(biāo)后驗概率,提高了分類的正確率,并為結(jié)果的后續(xù)處理提供了方便;b)采用后置加權(quán)均值濾波器的方法,對SVM分類器輸出的初始概率進行濾波平滑,消除了由于偶然因素導(dǎo)致的目標(biāo)分類錯誤,有效提高了運動目標(biāo)分類系統(tǒng)的性能。實驗結(jié)果表明,該算法對視頻中的運動目標(biāo)具有良好的分類效果。
在今后的工作中,將進一步增加和細化類別,并且研究目標(biāo)特征對分類結(jié)果的影響,以獲得更好的分類結(jié)果。
參考文獻:
[1]
MOREIRA M, MAYORAZ E. Improved pairwise coupling classification with correcting classifierstes[C]//Proc of the 10th European Conference on Machine Learning. London: Springer-Verlag, 1998: 160-171.
[2]HASTIE T, TIBSHIRANI R. Classification by pairwise coupling [J]. The Annals of Statistics,1998, 26(1):451-471.
[3]劉麗麗, 鄒北驥, 劉相濱,等.視頻監(jiān)控系統(tǒng)中的運動目標(biāo)分類技術(shù)研究[J]. 工程圖學(xué)學(xué)報, 2007,28(6):79-84.
[4]HARALICK R M, SHANMUGAM K, DISTEIN I. Textural features for image classification[J]. IEEE Trans on Systems, Man and Cybernetics,1973, 3(6):610-621.
[5]PLATT J C. Probabilities for SV machinestes[C]//Proc of Advances in Large Margin Classifiers. Cambridge: MIT Press, 2000:61-74.
[6]肖小玲, 李臘元, 張翔.一種多類支持向量機概率建模新方法[J]. 計算機工程, 2006, 32(20):28-29,113.
[7]MITRA J K. Digital signal processing: a computer-based approach[M].2nd ed. 孫洪, 余翔宇,譯.北京: 電子工業(yè)出版社, 2005.
[8]NGUYEN H T, JI Qiang, SMEULDERS A W M. Spatio-temporal context for robust multitarget tracking[J]. IEEE Trans on Pattern Analysis and Machine Intelligence,2007, 29(1):52-64.
[9]劉鑫, 劉輝, 強振平,等.混合高斯模型和幀間差分相融合的自適應(yīng)背景模型[J]. 中國圖象圖形學(xué)報, 2008, 13(4):729-734.