王 瀛,徐 奔,左 方
(1. 河南大學(xué)智能網(wǎng)絡(luò)系統(tǒng)研究所,河南 開封 475001;2. 河南大學(xué)河南省現(xiàn)代網(wǎng)絡(luò)技術(shù)實驗教學(xué)示范中心,河南 開封 475001;3. 河南大學(xué)軟件學(xué)院,河南 開封 475001;4. 河南大學(xué)河南省智能網(wǎng)絡(luò)理論與關(guān)鍵技術(shù)國際聯(lián)合實驗室,河南 開封 475001)
視頻動作識別是計算機視覺中的熱門研究分支,隨著各種技術(shù)和智能設(shè)備的發(fā)展,視頻行為識別的研究已經(jīng)成為了機器視覺領(lǐng)域的一種重要研究問題。視頻動作識別在監(jiān)控、網(wǎng)絡(luò)信息檢索、人機交互等很多領(lǐng)域都有大量的需求和應(yīng)用。
特征提取是視頻動作識別中的關(guān)鍵步驟,獲取更具區(qū)分性的特征在視頻動作識別中至關(guān)重要。在已有的動作識別方法中,有基于單特征的方法。比如李等人的研究中,提出了基于關(guān)鍵幀和視頻中人物的骨骼信息的動作識別方法,通過Kinect v2獲取人體的骨骼點信息,通過K-means算法提取動作視頻中的關(guān)鍵幀,通過計算關(guān)鍵幀中的骨骼點特征,通過動態(tài)時間規(guī)整算法識別人體動作,該方法最終達到了良好的識別率,但還有待提升。此外,深度學(xué)習(xí)是一種常用于特征提取的方法。比如在巴的研究中,使用一個4層的卷積神經(jīng)網(wǎng)絡(luò)對10種圖像進行特征提取,最終得到了可觀的分類準確率,視頻動作識別也屬于分類問題,將視頻轉(zhuǎn)換成圖像就可以使用卷積神經(jīng)網(wǎng)絡(luò)對其進行良好的特征提取。近年,基于卷積神經(jīng)網(wǎng)絡(luò)的雙流方法是一種比較流行的用于視頻動作識別的方法。Simonyan等人提出的雙流網(wǎng)絡(luò),證明了卷積神經(jīng)網(wǎng)絡(luò)雙流方法在視頻識別領(lǐng)域的良好性能。本文基于雙流方法理念,在稀疏光流方法的基礎(chǔ)上加入自建的前饋卷積神經(jīng)網(wǎng)絡(luò)提取出動作視頻流的時間特征,基于提取的運動幀使用HOG方法提取其HOG特征作為運動的空間特征。通過在UCF101的部分數(shù)據(jù)上進行實驗,結(jié)合提取的兩種特征,最后使用KNN學(xué)習(xí)器訓(xùn)練并生成了動作識別模型,該模型可以達到可觀的識別能力。
光流方向直方圖HOF是一種基于光流的圖像提取方法。視頻中對象的運動光流即隨著時間的推進,運動對象在空間上的運動矢量信息。稀疏光流(Lucas-Kanade,LK)是一種常用的光流計算方法,該方法基于3個假設(shè)條件:
1)灰度不變假設(shè):在不同幀的重疊區(qū)域匯總,重疊像素點的灰度值恒定不變。
2)小運動:當對象的運動比較輕微時,像素的位置不會隨著時間發(fā)生劇烈的變化。
3)空間一致性:真實場景中相鄰的區(qū)域即使投影到二維圖像中,其仍然是相鄰的圖像區(qū)域。
在對象運動速度較快的情況時,LK光流法的計算誤差較大,可使用金字塔分層方法縮減運動速度,進而得到對象的運動光流。
方向梯度直方圖HOG特征是計算機視覺中的一種圖像特征描述方法,該特征描述方法通過計算、統(tǒng)計圖像中局部區(qū)域的梯度方向直方圖來構(gòu)成圖像的特征。HOG方法是在圖像的局部單元格上進行操作,對圖像的幾何和光學(xué)形變等都能保持很好的不變性。對一個提取HOG特征的步驟如下:
首先對圖像進行g(shù)amma化處理,以減少光照的影響。其次計算每個像素點的梯度值,得到一個梯度圖像。
圖1 待求梯度的圖像
如圖1所示,要求“T”點的梯度,要對其進行梯度強度和梯度方向的計算:
水平梯度為:g
(x
)=(50-10)=40垂直梯度為:g
(y
)=(30-20)=10則T
點的梯度強度為(1)
梯度方向為
(2)
梯度直方圖是在cell
里面進行計算的,將0~360°劃分成n
個區(qū)域,將一個cell
內(nèi)所有像素點的梯度按照對應(yīng)的區(qū)域進行劃分,最終每個cell得到n個特征。假定k個cell組成一個block,在一個block中的所有cell做完梯度直方圖的計算后,則在一個block中可以得到n×k個特征。block按照一定的步長遍歷整張圖像,最終一共得到q個block,則整張圖像一共可以得到n×k×q個特征。
一個圖像提取出HOG特征的維數(shù)F計算方程為
(3)
式中,F
表示cell
的維數(shù),S
便是block
塊的大小,S
表示cell
的大小,STR
表示block
的步長,Ih
和Iw
表示圖像的高和寬。卷積神經(jīng)網(wǎng)絡(luò)CNN是神經(jīng)網(wǎng)絡(luò)中一種代表性網(wǎng)絡(luò),二維卷積神經(jīng)網(wǎng)絡(luò)(2D CNN)主要用于圖像的處理,通過使用卷積層和池化層交替采樣訓(xùn)練,逐步提取出圖像的抽象特征。
2D CNN中的卷積層主要使用卷積運算,作用于圖像像素點,用于增強圖像的原始信號特征,達到深層特征提取的目的。一個卷積核對應(yīng)可生產(chǎn)一張卷積圖像,多個卷積核則可以生成多個特征圖像。一個卷積核在遍歷圖像的過程中,核內(nèi)的各個權(quán)重系數(shù)與圖像中對應(yīng)區(qū)域的像素值相乘,最后取乘加和并加上偏置項,得到的結(jié)果對應(yīng)生成的特征圖像的一個像素點的值。
這里給出一個卷積樣例,如圖2所示,卷積核大小為3×3,步長為3×3,卷積核內(nèi)9個權(quán)重參數(shù)和原始圖像中藍色區(qū)域的對應(yīng)像素點進行乘加和運算,最后加上偏置項,對應(yīng)生成的圖像中的紅色像素點。
圖2 CNN卷積樣例
實際中的圖像數(shù)據(jù)往往像素值較大,所以除了卷積層,CNN還使用池化層用來對卷積后的圖像進行子采樣,以較少特征數(shù)量,以達到減少計算量的目的。
本文基于HOF方法,設(shè)計了基于HOF圖像CNN深層特征提取方案,并結(jié)合視頻流HOG運動幀作為視頻流樣本的運動特征,最后使用KNN機器學(xué)習(xí)器進行訓(xùn)練生成最終的識別模型。這里給出了該模型的結(jié)構(gòu)設(shè)計思路,如圖3所示。
圖3 模型大體架構(gòu)
圖4 HOF-CNN&HOG融合特征
對于每個輸入的視頻樣本,這里首先要對它們采用幀取樣操作,可以使用順序采樣或者隨機采樣的方法,這里使用順序采樣的方法,對每個視頻樣本采樣第5到第9這5幀運動圖像。融合特征的提取基于采樣的視頻幀,最終模型對樣本動作的識別也是基于視頻幀,所以對每個視頻樣本進行5幀的采樣,即是將每個視頻樣本擴充5倍。融合特征的提取流程如圖4所示。
這里給出了一個彈奏動作的HOF提取樣例,包括原始幀、稀疏光流檢測點以及運動光流圖像,如圖5所示。
圖5 彈奏動作運動光流
為了提取HOF圖像的深層特征,本文構(gòu)建了一個簡單的前饋二維卷積神經(jīng)網(wǎng)絡(luò)。該網(wǎng)絡(luò)分為4層,由2個卷積層和2和池化層組成,兩個卷積層都使用一個相同的大小為3×3的卷積核進行卷積,卷積的步長都為2,兩個池化層都使用大小為2×2、步長為2的池化核進行操作。實驗所用數(shù)據(jù)集視頻幀寬高為(320,240),首先對視頻幀提取的HOF樣本圖像進行灰度處理,然后將其進行卷積池化等操作獲取深層特征,每個樣本圖像經(jīng)過處理后大小為(80,60),將處理后的HOF圖像中每個像素數(shù)值作為其特征,每個樣本圖像可得到4800維特征。本文設(shè)計的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖6所示。
圖6 本文設(shè)計的CNN網(wǎng)絡(luò)
這里給出了一張灰度HOF圖像樣本經(jīng)過本文構(gòu)建神經(jīng)網(wǎng)絡(luò)各層后的處理結(jié)果,如圖7所示。
圖7 本文網(wǎng)絡(luò)各層結(jié)果
本實驗所用數(shù)據(jù)集為公開的UCF101視頻數(shù)據(jù)集,該數(shù)據(jù)集包含101種人類的行為類別,比如運動、演奏樂器以及人物的交互行為等動作,共有13320個視頻樣本。每個視頻樣本中單幀像素寬高為320×240,樣本中有光照變化以及鏡頭移動等噪聲,圖8給出部分視頻樣本圖像。
圖8 UCF101部分視頻樣本
本實驗從UCF101數(shù)據(jù)集使用5種動作視頻樣本,每種動作視頻樣本數(shù)量取60個,一共使用300個視頻樣本。
本實驗的軟硬件環(huán)境如下:
硬件環(huán)境:i7-5500U CPU,Intel HD Graphics 5500顯卡,8G運行內(nèi)存。
軟件環(huán)境:Windows10 64位操作系統(tǒng),PyCharm2018編程環(huán)境,Python3.6.5編程語言。
各種動作上識別結(jié)果
在該實驗中,在特征提取階段,通過幀取樣擴充后的動作樣本量為1500個,將這1500個樣本數(shù)據(jù)按照8:2劃分為訓(xùn)練集和測試集,其在各種測試動作上的識別結(jié)果如下。
圖9 模型測試結(jié)果的混肴矩陣圖像
表1 各種動作上識別準確率
表2 30個測試樣本的識別結(jié)果
圖9和表1展示了構(gòu)建的模型在所用的UCF101視頻數(shù)據(jù)集上的識別能力。圖9為各個動作識別結(jié)果的混肴矩陣圖像,從左上角到右下角對角線上為各個動作分類的準確率,其它塊則是表示分錯的百分比。表2中給出了從樣本中隨機篩選的30個樣本的識別結(jié)果,以數(shù)字0到4表示5種動作的類別,T表示真實動作類別,P表示模型識別出的類別,可以看出這30個測試樣本全部正確識別,證明了本模型的有效性。
表3 各種動作上識別準確率
這里將本文設(shè)計的動作識別系統(tǒng)和其它幾種方法進行了對比,結(jié)果表明本文的方法在UCF101數(shù)據(jù)中取得了更好的識別效果。
本文提出了一種基于稀疏光流和梯度方向直方圖特征的視頻動作識別系統(tǒng),通過在視頻流稀疏光流圖像的基礎(chǔ)上使用卷積神經(jīng)網(wǎng)絡(luò)提取特征,結(jié)合視頻運動幀的HOG特征使用KNN機器學(xué)習(xí)器生成動作識別模型,通過在UCF101部分數(shù)據(jù)上的仿真,證明了本文構(gòu)建的動作識別系統(tǒng)的有效性。在下一步的研究中,希望通過優(yōu)化神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)并使用其它特征提取方法,優(yōu)化系統(tǒng)的性能和時效性。