劉 昕 張 冰
(江蘇科技大學電信信息學院 鎮江 212003)
如今的生活中,人們對計算機的依賴程度越來越深,視頻作為傳遞信息的載體也具有獲取快捷、內容豐富、表現直接等突出優勢。而基于視頻的人體行為識別主要是通過計算機對外部傳感器采集到的視頻序列,采用模板匹配、狀態空間、基于模型等方法進行處理、分析、學習并理解其中人的動作行為。近年來,為了進一步提高識別率,Niebles[1]等提出了將幾何信息引入到概率潛在語義分析模型中,這類高層語義分析方法可以有效提高識別率[2],但同時存在復雜度高,耗時長等問題。因此,如何在提高識別率的同時又將計算復雜度控制在一定范圍內,就成為了當前研究行為識別的焦點之一[3],而特征融合恰好可以解決這一問題。
單一的特征雖然也可以較為準確地描述視頻中人體行為的運動信息,但是它只能表達動作的部分屬性,不同的特征描述的視頻信息的側重點也不同,所以僅僅使用單一的特征表達的信息比較片面,無法準確全面地描述人體運動,從而限制了行為識別準確度的提高。多特征融合將多種信息以一定的方式進行合并,使不同的信息相互補充,既可以更加準確地表征運動,又可以減少信息冗余,在精度和效率上都有較大的優勢。本文提出了一種基于特征融合的描述方法,選取三維梯度方向直方圖(3DHOG)與三維光流方向直方圖(3DHOF)作為特征融合的基礎。
本文主要對人體行為識別技術進行探究,那么對人體的特征提取是必不可少的。特征一般可以分為全局特征和局部特征。相對于全局特征,局部特征具有良好的魯棒性,而時空興趣點就是常用的局部特征之一[4]。在對運動人體提取到興趣點之后,采用融合了三維梯度直方圖(3DHOG)與三維光流方向直方圖(3DHOF)的新特征描述子對提取到的興趣點進行量化描述,得到一個多維特征向量。對該特征使用視覺詞袋模型BOW 進行降維處理[5],最終通過支持向量機SVM進行識別[6]。

圖1 人體行為識別框架
人體行為識別過程中,運動中的人體才是研究目標,而時空興趣點的檢測對復雜背景較為敏感。因此,在對視頻序列的處理中,如何減少來自背景中的無關興趣點十分重要。背景減除法在獲取視頻中人體運動部分和去除無關背景信息方面,能夠發揮很好的效果。但是,對于視頻來說,如果攝像機靜止,場景固定,就可以認為背景是已知的,然而實際情況下,視頻的背景也會發生變化,那么背景模型的建立和不斷更新就顯得尤為重要。為了解決這一問題,本文采用混合高斯背景建模的方法提取出前景[7],可提取出完整的前景目標,如圖2(a)所示。
圖2(a)中是混合高斯背景建模法提取的前景目標,(b)是KTH數據庫中walk的一幀。

圖2 (a)混合高斯背景建模法提取的前景目標;(b)KTH數據庫中walk的一幀
在對圖像序列的處理過程中,總是關注變化較為明顯的部分。因此,我們對圖像中像素點變化強烈的點非常感興趣,這些變化強烈的像素點包含了圖像的大部分信息,目標可以用這些興趣點進行可區別的表示。本文采用局部特征對目標信息進行表示,這樣可以有效避免目標遮擋、目標形態變化等復雜情況。
比較主流的興趣點檢測有3D-Harris時空興趣點檢測算法,該算法對于變化強烈的局部特征,具有很好的提取效果,但是該算法得到的時空興趣點在數量上較少,只能在動作方向發生改變時才能發揮更好的作用。對于一些變化程度較小的運動不能夠有效提取到足夠的興趣點。雖然視頻處理提倡使用稀疏的局部時空特征,但是獲得的時空興趣點太少時,就不能把視頻中的運動信息表述清楚。為了彌補這一缺點,本文采用Dollar 時空興趣點檢測[8],該方法檢測到的時空興趣點要比3D-Harris算法提取到的興趣點稠密的多,具體原理如下:
I(x,y,t)為一個視頻序列,R為響應函數

其中,g( x,y;σ2)用來進行空間域濾波,是一個二維高斯平滑核函數:

用Gabor 濾波器對時間維度進行濾波,hev和hod是一對正交的Gabor濾波器:

實驗過程中,判斷像素點是否為時空興趣點,要先設定Dollar 算法的閾值λ,將響應函數R 的局部最大值與閾值λ 的大小進行比較,若響應函數值大于λ 就認為該點為時空興趣點。設置λ 的大小就可以控制時空興趣點的數量。
3DHOG 即三維空間的梯度方向直方圖[9],它是二維HOG 描述在三維空間的繼承與擴展,該描述子繼承了其在二維平面上,對光照變化的良好抵抗性。由于時空興趣點在不同時間和空間尺度下,對其領域進行描述時,所描述的立體大小是不同的,因此描述子所描述的三維空間區域隨著當前的時間尺度和空間尺度的變化而變化[10]。
為了得到三維空間的梯度,這里使用積分視頻,方便計算和實現。
1)計算梯度
v(x,y,t)是一個視頻序列,vx、vy、vt分別是對x、y、t 方向的偏導,則積分視頻可以定義為

a=(x,y,t,w,h,l)T表示寬、高、長分別為w、h、l的視頻立方體,a=(ax,ay,at)T表示平均梯度,其中:

2)量化梯度
為了統計梯度向量直方圖,需要將向量根據方向量化到不同的通道內,量化過程與二維平面中量化n 個方向的梯度類似,在三維空間中,實際上就是把正多邊形變為正多面體。
一個正n 面體,在三維歐式坐標中,使其中心對應坐標的原點,通過映射,將平均梯度映射到正多面體每個面的中心。
pi=( p1,p2,…pn)T(i=1,2,…n)表示正n 面體的中心,定義向量P



3)直方圖的建立
定義一個立方體快C=(xc,yc,tc,wc,hc,lc)T,劃分的子塊大小為S×S×S ,計算每個子塊的直方圖。
如圖2(b)所示,對每一個視頻子塊ai,它的平均梯度gˉai經過量化處理后,都會得到每個子塊的直方圖qai。最終,視頻序列的直方圖由子塊的直方圖累加得到。

然而,本文的3DHOG 描述是基于時空興趣點展開的,每個時空興趣點所在尺度不同,S 的大小也 不 同。即 對 于 一 個 時 空 興 趣 點S=(xs,ys,ts,σs,τs)T,(xs,ys,ts)為它的三維時空坐標,σs,τs分別為空間尺度和時間尺度,興趣點S 的鄰域為RS=(xs,ys,ts,ws,hs,ls)T,其 中 ws=hs=σ0σs2+n1,ls=τ0τs2+n2,參數σ0,τ0表示了像素與尺度的比例關系。將像素快RS分成一組M×M×N 個單元,將每個單元的梯度方向直方圖按照一定順序組合在一起,形成最終的時空梯度方向直方圖,即ds=(hc1,hc2,…,hcM×M×N)。
光流反映了像素運動的瞬時速度,代表了圖像序列中相鄰序列之間的運動信息,HOG 描述子是對像素點的梯度方向進行統計,而HOF 描述子就是對像素點的光流信息進行統計。3DHOF 描述子則是在時間和空間對光流求取梯度后,再進行三維時空量化,構建三維光流梯度方向直方圖特征[11~12]。具體方法如下:
1)稠密光流提取
步驟一:對視頻幀構建尺度總數為Numδ的圖像金字塔,相鄰圖層之間的比率為1 √2。視頻幀在不同尺度下每個w 像素進行網格采樣,獲得稠密采樣點。然后選取特征角點,本文采用Dollar 時空興趣點檢測法對稠密采樣點進行篩選,去除平滑區域的采樣點,其中λ 的取值方法在2.2 節中有具體描述。
步驟二:去除靜止角點,假設采樣點處的光流flowp=( )flowpx,flowpy,如果∥flowp∥≥Tflow,則將該點作為興趣點并記入興趣點總數Nump,否則認為該點不能作為興趣點。
步驟三:特征點跟蹤,具體方法如下:對t 時刻的圖像It,若計算得到該點的稠密光流為flowt=(ut,vt),其中ut,vt分別為t 時刻光流在水平和垂直方向上的分量,則圖像It中的一個像素點Pt=(xt,yt),在圖像It+1中的跟蹤位置Pt+1為

其中,M 是一個中值濾波器,中值濾波相較于線性濾波更加魯棒,對處于運動邊界的點也能實現很好的軌跡跟蹤[13]。
2)3DHOF特征提取算法
本文中分別在時間和空間對光流求梯度,再進行三維時空量化,構建三維光流梯度方向直方圖,具體步驟如下:
步驟一:獲取視頻幀 fi的稠密光流圖像flowi(x,y)。
步驟二:根據獲得的稠密軌跡點,分別計算低i幀中每個軌跡點在x,y,t三個方向上的光流梯度。
步驟三:梯度的量化,獲取光流梯度量化的方向bin 和模值q,計算光流矢量與坐標軸之間的夾角,根據角度將其投影到對應的直方圖bin 中,根據模值進行加權。
步驟四:首先將視頻分為若干小的連通區域si,然后計算每個連通區域的光流直方圖,并將所有區域的直方圖連接得到3DHOF特征描述子。
在特征提取中,HOG 特征描述子是對細胞(cell)中的每個像素點的梯度方向進行統計,而HOF特征描述子是對每個像素點的光流進行統計,將二維圖像中的處理方法擴展到三維空間中,不同點在于二維圖像中的細胞單元(cell)在三維時空域中變為立體塊(Patch)。每個立體快的處理方法如下:實驗中,將每個立方體分為20 個細胞,3DHOG使用4 個bin,3DHOF 使用5 個bin,則梯度方向直方圖為80 維,光流直方圖為100 維,再將兩個特征拼接起來,成為融合特征。
本文中,先用Dollar 時空興趣點檢測方法對輸入的視頻進行興趣點檢測,得到興趣點的位置坐標(x,y,t)。以檢測到的時空興趣點為中心向三維空間進行鄰域擴充,得到一個立方體空間P,立方體大小為(H,W,T),用3DHOG 和3DHOF 描述子進行描述,得到時空特征向量L。然后以立方體P 的8 個頂點為中心進行鄰域擴充,得到P1,P2…P8八個立方體,再次使用3DHOG 和3DHOF描述子進行特征描述,得到L1,L2…L8八個特征向量。最后,將之前得到的特征向量L 與這八個特征向量拼接在一起,融合后的特征向量為F=(L,L1,L2…L8)。
本文利用Weizmann 數據庫和KTH 數據庫進行實驗評估,實驗在Matlab 2014a 編程環境中進行。Weizmann 數據庫一共包括90 段視頻,這些視頻分別由9 個人執行10 個不同的動作(bend、jack、jump、pjump、run、sideways、skip、walk、wave1、wave2),視頻的背景,視角以及攝像頭都是靜止的。實驗采取留一法交叉驗證,即依次把每個人的10 種動作作為測試樣本,剩下的所有動作作為訓練樣本,整個實驗過程重復10 次。本方法在Weizman 數據庫中的識別結果如下圖4 所示,平均識別率達到98.82%。

圖4 復合時空特征算法在Weimann數據集上的混淆矩陣
KTH 視頻數據庫包含6 種行為,包括拍手、揮手、拳擊、慢跑、快跑和走。每種動作由25個人在4個不同場景中完成,合計將近600 段視頻,是一個數據量相對較大的數據庫,數據庫的視頻樣本中包含了尺度變化、光照變化、著裝變化等。本實驗從數據庫中隨機抽取15 個人的視頻作為測試樣本,剩余的10 個人作為訓練樣本,本文方法在KTH 數據庫中的識別結果如下圖5 所示,平均識別率為95.04%。

圖5 復合時空特征算法在KTH數據集上的混淆矩陣
表1 列出了本文實驗在兩個不同視頻數據庫上的具體數據表現。

表1 本文算法在不同數據集中的表現
如表1 結果所示,在相同的驗證方法下,采用復合時空特征的識別率比采用單一特征的識別率明顯提高,證明了本文采取的特征融合方法的有效性。
表2 列出了本文方法和目前其他方法在Weizmann 數據集和KTH 數據集上識別率的比較[14~15]??梢钥闯?,本文的方法取得了較高的識別率。

表2 本文算法與其他算法識別率的比較
由于基于視頻的人體行為識別在多個領域都有廣泛的應用和潛在價值,成為很多領域的熱門研究課題。本文主要從時空興趣點的提取和特征描述方面出發,有效減少了背景中無關興趣點的數量。采用了3DHOG 和3DHOF 相融合的復合特征對興趣點進行描述,仿真實驗證實本文方法在Weizmann 和KTH 數據集上都取得了較高的識別率,但由于興趣點的提取可能不夠準確、個人動作差異,不同行為的相似性等原因,仍然存在錯判的情況。后期,本文有待通過獲取更多的數據來消除個體差異等問題帶來的影響,進一步提高算法性能。