王小念,姚莉秀
人體動作識別是計算機視覺領域非常活躍的研究內容之一,在現實中有廣泛的應用,如人機交互,視頻檢索以及行為分析等。對人體動作識別方法的改進通常包括兩個部分:尋找最優的時空興趣點檢測器和最優的動作特征時空描述子。然而,尋找最優的時空興趣點檢測器和最優的動作特征時空描述子有相當大的困難。目前仍然沒有通用的時空興趣點檢測器和時空描述子對所有數據庫均行之有效。
在以往的動作框架中,詞袋(bag-of-words,BOW)是經常采用的方法。但是詞袋表示方法并不能準確刻畫視覺特征的相似性,且產生詞袋的聚類過程要耗費較多的時間。文獻[1]采用最大似然估計對每段動作視頻估計出相應的權重直方圖,較好地解決了這些難題。近來利用人工定義的動作語義屬性進行動作識別取得了比較好的結果。文獻[2]由人工定義高層次動作語義屬性,將低層次特征和高層次特征相融合,結合隱支持向量機求解動作識別分類器的最優解,獲得了較為滿意的識別效果。
本文提出了一種新的時空興趣點檢測器,該檢測器通過不同方向的二維Gabor濾波器的聯合作用,對遮擋,光照變化以及鏡頭縮放等具有較強的魯棒性。基于檢測出的時空興趣點,在其時空領域內利用正多面體良好的幾何對稱性提取精細的時空梯度描述子,該描述子能夠準確反映人體動作的視覺特征。隨后隨機抽取部分時空梯度描述子特征作為基準特征,對每段視頻特征基于基準特征采用最大似然估計得到權重直方圖。最后將低層次權重直方圖特征與高層次的人工定義的動作語義屬性相結合,采用隱支持向量機求解最終動作識別模型的局部最優解。
在眾多的時空興趣點檢測的方法中,Dollar等人[3]提出的時空興趣點檢測方法是應用最廣泛的方法之一,其主要思想是在空間上和時間上分別加入兩個獨立的濾波器來求得響應函數。但是Dollar檢測器對視頻噪聲不具有魯棒性,對噪聲,鏡頭的縮放比較敏感,同時Dollar檢測器的作用范圍是整幅圖像區域而不是感興趣的運動區域,對背景與前景紋理比較密集的區域容易造成誤檢測,檢測出的時空興趣點的數量也相對比較少,且是基于單一時空尺度。本文僅采用二維Gabor濾波器的虛部作為新的核函數:

算法1 時空興趣點檢測器
(1)使用逐幀差分法并設置一定的閾值T1(本文取T1=200),得到表征像素值顯著變化的前景掩膜M;
(2)取{θ=0°,45°,90°,135°,180°,225°,270°},得到七個不同方向的濾波器,將每個濾波器作用于得到的前景掩膜M ,最后將得到的結果取平方和進行疊加得到E;
(3)若E最大值大于T2(本文取T2=6000),則尋找2×2領域范圍內的局部響應最大值,保留響應值大于閾值T2的點。若數目大于設置的每幀檢測的興趣點最大數目N(本文取N=12),則取前N個響應最大值作為該幀檢測出的時空興趣點;
(4)在該幀的3×3時間鄰域內計算所有興趣點的位置均值μ和所有點偏離μ的距離均值d,若該幀興趣點位置和μ之差大于λd,則過濾掉該點,λ為調節系數(本文取λ=4)。
KTH數據庫三種動作分別采用Dollar檢測器和本文提出的時空興趣點檢測器檢測的結果,如圖1所示:

圖1 對KTH數據庫三種動作的時空興趣點檢測結果,紅色的點表示一維Gabor檢測器的檢測結果,黃色的點表示本文提出的檢測器的檢測結果
提出的檢測器在其中一個方向(45度)上的響應。可以看出,本文提出的興趣點檢測器能更準確地反映人體動作特征,而Dollar檢測器通常漂移到身體紋理密集的靜態區域或背景邊緣顯著的區域,如圖2所示:

圖2 二維Gabor濾波器45°方向的響應圖
Scovanner等人[4]通過增加時間軸上的梯度信息將SIFT(Scale Invariant Feature Transform)[5]描述子從二維擴展到了三維,
把極坐標用經線和緯線劃分為8×4的直方圖,得到一個二維直方圖,由此在每一個時空興趣點一定的時空鄰域內統計所有像素點的(θ,φ)信息來得到一個1x256維的特征向量。但是該方法如果直方圖的塊不斷的變小會使極點產生奇異性,采用正多面體均勻分布的面作為直方圖的塊可以很好的解決這一問題。梯度直方圖可以通過將梯度向量投影到通過正多面體中心和每個面的中心的軸上來高效的計算。
本文采用80面體模型來建立時空梯度描述子,在各個方向上反映以時空興趣點為中心的時空梯度信息,進行了更精細的特征提取,因而具有更大的信息含量和區分度,雖然在描述子的維數上有了較大的增加,但是實驗表明,能在一定程度上提高動作的識別準確率。對于檢測到的時空興趣點,首先計算M1×M1×M1(本文取M1=4)每個像素點的時空梯度向量,將該梯度添加到距離梯度向量最近的面的中心,選取權重最大的3個方向作為該點的主方向,如果這3個主方向兩兩之間的夾角小于夾角θ(θ=25°),則認為該點不足以反映人體動作的時空特征,只有當 3個主方向大于θ,才認為該點具有足夠的描述能力。若經過判斷檢測出的點具有足夠的描述能力,則將該點M2×M2×M2(本文取M2=6)的時空領域內劃分為N×N×N(本文取N=2)的子塊,梯度方向劃分為80個面的中心點的方向。建立80面體模型的時空梯度描述子的過程如算法2所述。
算法2 基于八十面體模型的時空梯度描述子
(1)以(0,0,0)為原點建立以(0,0,0)為原點建立 20面體模型,共計 12 個頂點(vertex),20 個面(face),以每個 face的每條邊的中點為頂點,將每個 face劃分為4個小的face,這樣,20個面就又再分成了80個face;
(2)以(0,0,0)為原點建立一個半徑為r的球體,將步驟1中得到的80個face的頂點投射到球體的表面,轉換成相應的球面坐標,記錄每個 face中心的坐標,并將坐標做歸一化處理;
(3)為80個face分別建立相對應的直方圖,以關鍵點為中心,計算其一定時空領域內的像素的梯度幅值和梯度方向,將梯度方向作歸一化處理,計算梯度方向和80個face中心的夾角,將梯度幅值添加到夾角最小的face對應的直方圖中;
(4)找出所有直方圖中前3個權重最大的直方圖,計算其對應的 face的中心之間的夾角,如果兩兩之間的夾角小于25°,則說明此時空興趣點不具備足夠的描述能力,舍棄這個興趣點;
(5)為每個 face建立相應的直方圖,每個直方圖對應于一個 2×2×2的矩陣,添加到每個直方圖對應的矩陣中的權重由以下3部分組成:(1)局部時空鄰域內每個像素點與時空興趣點的相對位置(2)局部時空鄰域內每個像素點的梯度幅值(3)局部時空鄰域內每個像素點的梯度方向與 face中心的夾角。最后將2×2×2×80的矩陣拼接成一個1×640維的向量,此向量即為每個時空興趣點對應的反應人體動作特征的特征向量。
文獻[1]隨機從提取的所有特征中(在本文中即指提取的時空梯度特征)抽取部分特征作為基準特征,采用支撐有界的核函數對每個基準特征賦予相應的權重,基于最大似然估計通過迭代的方法估計每幅圖像或動作視頻的每個基準特征的最優權重。該方法以隨機抽樣替代詞袋方法中聚類過程,提高了算法的計算效率,同時最大似然估計考慮了視覺特征相似性對識別結果的影響。因此,本文采用文獻[1]的方法將每個動作的基準特征權重作為動作的低層次特征。
人工定義的動作屬性提供了高層次的語義信息,因而能夠增強對動作特征的描述。本文定義一組動詞作為高層次的動作屬性,將每個動作屬性看作隱變量,采用文獻[2]的隱支持向量機方法估計每個動作屬性屬于每種動作的概率。
本文采用KTH,WEIZMANN及UCF Sports等3種數據庫來進行算法驗證,支持向量機采用線性核函數,為了驗證本文的時空檢測器和梯度描述子的有效性,低層次特征均采用權重直方圖[1],分類方法均采用文獻[2]中的隱支持向量機分類方法。本文采用文獻[2]定義的 22個動作屬性作為高層次語義特征,如“standing with arm motion”,“leg fold and unfold motion”等。
KTH(瑞典皇家理工學院)數據庫包含六種不同的動作(boxing,handwaving,handclapping,jogging,running,walking),每種動作分別由 25個不同的人在四種不同的場景下完成。每段視頻包含一個人的一種動作,共計599段視頻。WEIZMANN(魏茨曼科學研究所)數據庫包含9個人的10種不同的動作,共計90段視頻。這10種動作包括:bend,jack,jump,pjump,run,side,skip,walk,wave1,wave2,每個動作分別由 10個不同的人完成,背景靜止,視角固定如圖3(a)和(b)所示:
圖3(a)和(b)分別是 KTH,WEIZMANN數據庫的混淆矩陣。KTH數據庫中的jogging和running兩種動作由于僅僅是速度上的差異,所以容易出現錯分,WEIZMANN數據庫中的run和skip兩種動作外觀上很相似,也容易出現錯分。
WEIZMANN數據庫圖像質量比較好,攝像機固定,沒有鏡頭的晃動和縮放,圖像背景噪聲低,數據規模較小,這些都是動作識別準確率高的原因。KTH數據庫圖像噪聲大,分辨率低,有些視頻還伴隨陰影的出現和相機的運動,數據規模較大,因而準確率也相對較低。表1是對3種數據庫采用不同時空興趣點檢測器和描述子得到的動作分類準確率。可以看出,本文提出的興趣點檢測器和時空梯度描述子均有效的提高了動作識別準確率,如表1所示:

表1 不同算法的識別準確率
UCF(中弗羅里達大學)Sports數據庫來源于BBC、ESPN等廣播電視中的各種體育運動類型,包括 diving,golf swinging,kicking,lifting,horseback riding,running,skating,swinging a baseball bat等。由于其場景復雜,視角多變,采集的是真實場景下人的各種自然的體育動作,相對于 KTH數據庫和WEIZMANN數據庫更具代表性和復雜性。我們將每個動作大致平均分成5份,采用leave-one-out方法進行交叉驗證,準確率最大值為 88.34%,實驗得到的混淆矩陣,如圖4所示:

圖4 對UCF Sports數據庫得到的混淆矩陣
識別失敗主要是由于不同的動作類型的相似度很高,如Kicking-Front和Kicking-Side。第二行最后一列的Riding-Horse的同時在走下坡路,導致了身體上半部分也出現了比較劇烈的晃動,因而被錯誤的識別為比較相似的Run-Side。表2是本文采用的方法和一些方法的結果對比。,如表2所示:

表2 不同人體動作識別方法的準確率
本文提出了一種新的二維時空興趣點檢測器檢測更密集,更準確同時更具區分度的反映人體動作特征的時空興趣點,在此基礎上,利用正八十面體模型建立了一種新的時空梯度描述子提取時空上更富信息含量的梯度信息來刻畫人體動作的時空視覺特征。基于最大似然估計得到權重直方圖取代傳統的詞袋(bag-of-words)方法,使算法更有效率且權重直方圖描述特征更具區分度。將低層次權重直方圖特征和高層次動作語義屬性相結合,采用隱支持向量機對動作進
行識別取得了較好的效果。但是,本文采用的方法僅僅針對單人的單個動作識別,對于單人連續不同動作的識別以及多人動作識別結合多人身份識別將是我們今后重點研究的內容。
[1]BHATTACHARYA S,SUKTHANKAR R,JIN R,et al.A Probabilistic Representation for Ef fi cient Large Scale Visual Recognition Tasks.IEEE Computer Society Conference on Computer Vision and Pattern Recognition,Colorado Springs,USA,2011.
[2]LIU J G,KUIPERS B,SAVARESE S.Recognizing human actions by attributes.IEEE Computer Society Conference on Computer Vision and Pattern Recognition,Colorado Springs,USA,2011: 850– 857.
[3]DOLLAR P,RABAUD V,COTTRELL G,et al.Behavior recognition via sparse spatio-temporal features.IEEE International Workshop on Visual Surveillance and Performance Evaluation of Tracking and Surveillance,Beijing,China,2005:65-72.
[4]SCOVANNER P,ALI S,SHAH M.A 3-dimensional SIFT descriptor and its application to action recognition.Proceedings of the International Conference on Multimedia,New York,USA,2007:56-60.
[5]LOWE D G.Distinctive Image Features from Scale-Invariant Keypoints.International Journal of Computer Vision,2004,60(2):91-110.
[6]LE Q V,ZHOU W Y,YEUNG S Y,et al.Learning hierarchical invariant spatio-temporal features for action recognition with independent subspace analysis.IEEE Computer Society Conference on Computer Vision and Pattern Recognition,Colorado Springs,USA,2011.