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