趙曉葉,王豪聰,吉訓生,彭 力
(江南大學物聯(lián)網工程學院物聯(lián)網應用技術教育部工程中心,江蘇 無錫 214122)
目前,人體行為識別已成為機器視覺與模式識別最熱門的研究方向之一,該技術利用計算機對含有行人的視頻進行分析,識別出不同的人體行為,在視頻檢索、視頻監(jiān)控、智能家居、醫(yī)療健康看護等領域具有廣泛的應用[1,2]。目前關于人體行為識別的研究主要集中在傳統(tǒng)的RGB視頻上,缺少三維立體信息,且對光照條件和背景極其敏感,魯棒性差,應用效果及范圍受到很大限制[3 - 8]。隨著圖像獲取技術的發(fā)展,深度圖像獲取也越來越容易,深度圖像比RGB圖像提供更多的人體表觀和結構信息,且對光照變化不敏感。因此,基于深度圖像傳感器的人體行為識別技術已引起人們的極大關注[6 - 10]。
目前,基于深度圖像傳感器的人體行為識別方法主要分為基于骨架關節(jié)點的方法[10 - 12]和基于深度映射圖像的方法[13 - 19]。骨架關節(jié)點數(shù)據(jù)非常簡單,只包含關節(jié)點的三維位置信息,而深度映射圖像可以提供整個身體的深度數(shù)據(jù),從而得到更豐富的有關動作的形狀和運動信息。一般地,基于深度映射圖像的人體行為識別技術可分為整體特征方法和局部特征方法,本文主要關注基于投影的全局特征方法。
在RGB彩色圖像中,文獻[20]引用了運動歷史圖MHI(Motion History Images)來表征動作序列形狀的改變,得到高識別率。受MHI成功的啟發(fā),Yang等人[13]首次提出了一種稱為深度運動圖DMM(Depth Motion Map)的方法來捕獲時間聚集的運動能量,用來描述形狀和深度動作序列的運動線索。然后,將DMM投影到三個互相正交的平面上,并且在每個平面上提取梯度方向直方圖HOG(Gradient Direction Histogram)特征,將三個平面的特征連接在一起形成 DMM-HOG 描述子,用支持向量機分類器得到了高識別率。Chen等人[14]改進了DMM的計算方法,取消了文獻[13]中計算運動能量表達式的閾值,并且引入了協(xié)同分類器。進一步,在文獻[14]的基礎上,文獻[15]引入了局部二值模式LBP(Local Binary Pattern)作為特征描述子,并使用改進的核極端學習機KELM(Kernel Extreme Learning Machine)進行分類。另外,在文獻[13]的基礎上,Liang等人[16]進行了DMM橫向分層優(yōu)化,其中第一層DMM計算的是相鄰幀差分能量之和,第二層DMM計算的是每隔三幀差分能量之和,第三層DMM計算的是每隔五幀差分能量之和,通過DMM分層,在一定程度上緩解了同一動作由于速度不同造成的識別誤差,最后使用稀疏字典學習對分層后得到的HOG特征描述的人體行為進行識別。文獻[17]在文獻[16]基礎上,引入LBP特征,使用協(xié)同分類器進行了人體行為識別。
盡管文獻[13-17]在基于深度信息的人體行為識別上已實現(xiàn)較高識別率,但仍存在不足。首先,文獻[14-17]得到DMM的投影策略采用的都是文獻[13]的投影策略,只考慮了原深度圖的位置信息,并沒有考慮數(shù)量信息,導致得到的DMM反映動作信息不穩(wěn)定;其次,文獻[13-15]都是基于整個深度圖得到的DMM,雖然文獻[16,17]進行了DMM橫向分層優(yōu)化,在一定程度上對動作速度變化具有魯棒性,但本質上來說DMM仍然是基于整個深度圖得到的,這樣會造成區(qū)分不同人體動作的許多細節(jié)信息丟失,從而降低識別率?;谝陨戏治?,本文提出一種結合新投影策略和能量均勻化視頻分割的多層DMM的人體行為識別方法。首先,對所有視頻序列,不同于文獻[13]的投影策略,本文采用新的投影策略投影到三個正交笛卡爾平面;其次,為了適應動作速度差異,不同于文獻[16]的橫向分層,本文利用基于能量均勻化的縱向視頻分割方法將一個動作視頻劃分為幾個子視頻序列;然后,對子視頻序列相鄰幀進行差分后得到的運動能量求和,形成DMM,更大限度地保留了視頻序列的細節(jié)信息;最后,計算所有子視頻序列DMM的LBP特征表征人體運動,并建立行為分類器進行識別。
本文主要內容結構如下:第1節(jié)是引言,主要介紹人體行為識別的研究背景、意義、現(xiàn)狀及本文算法核心思想;第2節(jié)詳細介紹本文新的投影策略;第3節(jié)給出本文算法的具體實現(xiàn)流程,并將基于能量均勻化的行為序列分割方法運用到深度圖序列中;第4節(jié)給出了具體的實驗結果和分析;最后,第5節(jié)進行總結和展望。
為了進行人體行為識別,本文首先需要將深度圖投影到三個正交笛卡爾平面,該部分將對已有的投影策略以及本文改進的投影策略進行詳細介紹,并進行對比。
為了充分利用視頻中的每一幀深度圖像所反映的身體形狀和運動信息,基于DMM進行人體行為識別的方法基本都采用文獻[13]中的方法,將原始深度圖像投影到三個正交平面上,其中,正面投影、側面投影、頂面投影分別是原深度圖像在X-Y平面、X-Z平面、Z-Y平面的投影。正面投影是原本的深度圖像,描述了動作序列的正面形狀信息,可反映大部分動作信息。側面投影和頂面投影從其他層面上體現(xiàn)了動作信息,是對正面投影信息的細微補充。
假定原深度圖像為depth,大小為M×N(M為行數(shù),N為列數(shù)),z=depth(x,y)表示空間位置(x,y)處的深度值。從文獻[13]中可以得出:正面投影是原本的深度圖像,每個點(x,y)記錄了原始深度圖中的深度信息,如式(1)所示;側面投影中,每個點(x,z)記錄了原深度圖中對應的第x行中深度為z的最后一個點的列坐標y,如式(2)所示;頂面投影中,每個點(z,y)記錄了原深度圖中對應的第y列中深度為z的最后一個點的行坐標x,如式(3)所示。
If(x,y)=depth(x,y)=z
(1)
Is(x,z)=max(y),where (z=depth(x,y))
(2)
It(z,y)=max(x),where (z=depth(x,y))
(3)
這種投影策略從一定程度上更進一步豐富了原深度圖中的運動信息,但忽略了深度數(shù)據(jù)本身的數(shù)量統(tǒng)計信息。
如2.1節(jié)所述,傳統(tǒng)DMM中的投影方法,側面投影和頂面投影沒有反映深度圖本身的數(shù)量統(tǒng)計信息?;诖?,本文提出了一種基于統(tǒng)計具有同一深度值的像素個數(shù)的新的投影策略,從另一層面上對原本深度信息進行補充。正面投影不變,依舊是原深度圖像;側面投影中,對式(2)進行了改進,每個點(x,z)記錄了原深度圖中對應的第x行中深度為z的像素點個數(shù),如式(4)所示;頂面投影中,對式(3)進行改進,每個點(z,y)記錄了原深度圖中對應的第y列中深度為z的像素點個數(shù),如式(5)所示。
(4)
(5)
為將原深度圖像本身的位置信息和數(shù)量統(tǒng)計信息同時反映在側面投影和頂面投影中,本文將文獻[13]中的基于固定深度值的像素位置的投影策略和2.2節(jié)中提出的基于具有同一深度值的像素個數(shù)的投影策略相結合,最終提出了同時考慮深度位置和像素個數(shù)的新投影策略。綜合的投影策略得到的運動能量圖DMM包含的信息更穩(wěn)定。
在此策略的側面投影中,每個點(x,z)記錄了原深度圖中對應的第x行中深度為z的像素點個數(shù)和位置信息,將式(2)改進為式(6);頂面投影中,每個點(z,y)記錄了原深度圖中對應的第y列中深度為z的像素點個數(shù)和位置信息,將式(3)改進為式(7)。
(6)
(7)
對于給定的一幀深度圖像,分別采用上面三種投影策略進行投影,得到的結果如圖1所示,其中,策略1、策略2、策略3分別是2.1節(jié)、2.2節(jié)、2.3節(jié)中的投影策略。
總體來說,策略1記錄的是深度信息的位置信息,本文提出的策略2記錄的是深度信息的數(shù)量統(tǒng)計信息,二者反映的信息都有些片面,得到的行為識別特征不是很穩(wěn)定。策略3將二者結合,在此投影策略上可得到分類性能表現(xiàn)更好的特征描述子。
Figure 1 Front projection,side projection,and top projection obtained by three projection strategies圖1 采用三種投影策略得到的正面投影、側面投影和頂面投影
本文使用基于深度圖像全局特征的人體行為識別方法,在訓練和識別過程中都包括DMM獲取、特征提取和分類三個步驟。本節(jié)將對具體流程做詳細介紹:3.1節(jié)介紹DMM獲取過程,為了充分利用深度視頻序列中的細節(jié)信息,首先對整個行為序列進行視頻分割,然后利用第2節(jié)提出的新投影策略求得各個子視頻序列的DMM;3.2節(jié)介紹本文所用的人體行為特征描述子LBP和行為分類器KELM。
基于整個視頻得到的DMM雖然可以反映視頻的整體運動信息,但忽略了很多細節(jié)信息,可以考慮將整個視頻序列劃分為多個子視頻序列。經典的視頻分割采用在時間維度上進行均勻分割的時間金字塔[10]方法,但由于同一動作由不同人多次完成,動作幅度和速度是變化的,幅度大和速度快的動作不但能量變化更大,而且還包含更多的細節(jié),幅度小和速度慢的動作反之?;诖耍疚牟捎没谀芰烤鶆蚧痆18]的視頻分割方法(如圖2所示),將一個動作視頻劃分為多個子視頻序列。
Figure 2 Video segmentation based on the uniform division of energy function圖2 基于能量函數(shù)均勻劃分進行視頻分割
(8)
然后對歸一化能量進行四等分均勻劃分后對應得到五個時刻t0、t1、t2、t3、t4,構建一個如圖3所示的時間金字塔。原深度視頻序列在時間維度上被劃分為七個子序列,用式(9)分別計算七個子視頻序列的正面投影、側面投影、頂面投影的DMM。
(9)
Figure 3 Three-level time pyramid based on energy homogenization圖3 基于能量均勻化構建的三層時間金字塔
LBP[21]是一種用來描述圖像局部紋理特征的算子,具有旋轉不變性和灰度不變性等顯著優(yōu)點,已經被廣泛應用于各種場合。因此,本文采用等價LBP特征來表征DMM的紋理特征,并作為動作的特征描述輸入到分類器中進行動作識別。
為了驗證本文算法的識別效果,基于兩個公開的人體行為識別數(shù)據(jù)集,開展了如下實驗與分析。
MSRAction3D數(shù)據(jù)庫[9]是一個由557個視頻序列組成的人體行為公共數(shù)據(jù)庫,使用微軟Kinect深度傳感器采集得到。該數(shù)據(jù)庫包含20種動作,由10個表演者對每個動作重復2~3次得到。該數(shù)據(jù)庫的視頻背景雖然已經進行過預處理,但由于許多動作之間的高相似性,進行行為識別仍然具有很大挑戰(zhàn)性。為了便于性能比較,本文的實驗設置和文獻[18]中的設置完全相同,將20個動作作為一個集合,在10個表演者中選擇第1、3、5、7、9個的數(shù)據(jù)作為訓練集,第2、4、6、8、10個的數(shù)據(jù)作為測試集。本文算法與近幾年比較優(yōu)秀的識別算法的比較結果見表1。從表1可以看出:與文獻[13]的投影策略相比,本文提出的新的投影策略在MSRAction3D數(shù)據(jù)庫上的識別率可提高0.83%,本文算法可達到94.55%的高識別率。
Table 1 Recognition rate of the proposed algorithm and the existing algorithms on MSRAction3D database表1 本文算法與現(xiàn)有算法在MSRAction3D 數(shù)據(jù)庫上的識別率
Figure 4 MSRAction3D database:confusion matrix圖4 MSRAction3D數(shù)據(jù)庫:混淆矩陣
在MSRAction3D數(shù)據(jù)庫上,實驗的混淆矩陣如圖4所示,其中,縱坐標表示視頻序列標記的動作類別,橫坐標表示實驗識別得到的動作類別。從圖4中可看出,本文算法的識別率可達到94.55%,除了特別相似的動作(例如,33%的“手抓”被識別成了“高拋”,15% 的“畫╳”被識別成“敲打”,15%的“畫╳”被識別成“畫√”。)外,其他絕大部分動作都被正確地識別出來了。
MSRGesture3D是一個由333個視頻序列組成的十分流行的人體手勢測試評價數(shù)據(jù)庫,使用深度相機采集得到,包含12個由美國標準手語定義的動態(tài)手勢,每個手勢由10個人執(zhí)行2~3次。這個數(shù)據(jù)庫存在很多自遮擋問題,因此基于該數(shù)據(jù)庫的識別具有很大的挑戰(zhàn)性。本文采用文獻[15,18,19]中的Leave one-subject-out交叉驗證方法,總共進行10次實驗。第n次實驗使用第n個表演者的所有數(shù)據(jù)作為測試集,其余表演者的數(shù)據(jù)作為訓練集,最終取這10次實驗結果的平均值作為最終得到的識別率。
在MSRGesture3D數(shù)據(jù)庫上,實驗的混淆矩陣如圖5所示。從圖5可以看出,本文算法在很多手勢識別上都取得了優(yōu)異效果。另外,在表2中,將本文算法與近幾年的識別算法進行了比較。從表2可以看出:與文獻[13]的投影策略相比,本文提出的新的投影策略在MSRGesture3D數(shù)據(jù)庫上的識別率提高了0.47%,本文算法可達到95.67%的高識別率。
Table 2 Recognition rate of the proposed algorithm and the existing algorithms on MSRGesture3D database表2 本文算法與現(xiàn)有算法在MSRGesture3D 數(shù)據(jù)庫上的識別率
Figure 5 MSRGesture3D database:Confusion matrix圖5 MSRGesture3D數(shù)據(jù)庫:混淆矩陣
本文算法得到的LBP特征屬于高維數(shù)據(jù),且包含了大量的冗余,因此需要消除冗余,本文采用主成分分析PCA(Principal Componet Analysis)進行特征降維。為了綜合評價本文算法,對計算效率進行了分析。本文實驗的硬件配置為Intel i7,4 GB RAM,3.2 GHz,軟件配置為Matlab 2012,本文中PCA降維的維度設置為稍小于訓練樣本數(shù)(比樣本數(shù)小10),在MSRAction3D數(shù)據(jù)庫中設置為274,在MSRGesture3D數(shù)據(jù)庫中,實驗評估采用的是Leave one-subject-out交叉驗證方法,總共進行10次實驗,PCA維度分別設置為287、299、299、287、287、287、287、290、287、287。表3和表4分別顯示在MSRAction3D和MSRGesture3D兩個數(shù)據(jù)庫中,本文算法各個步驟的耗時情況。由于不同視頻序列的視頻幀數(shù)不同,所以計算DMM時間耗費情況也不一樣。幀數(shù)越多,計算DMM耗時越長。
Table 3 Time consumption of each step on MSRAction3D database表3 MSRAction3D數(shù)據(jù)庫上各個步驟的時間消耗
Table 4 Time consumption of each step on MSRGesture3D database表4 在MSRGesture3D數(shù)據(jù)庫上各個步驟的時間消耗
本文提出了一種結合新投影策略和能量均勻化視頻分割的多層DMM的人體行為識別算法。該算法首先采用新的投影策略將三維信息轉化為三個二維平面信息;然后采用基于能量均勻化的視頻分割方法,將原視頻序列分割為多個子序列,并求得所有子序列的三個平面的運動能量圖;最后,提取LBP紋理特征作為動作的特征描述子進行人體行為識別。實驗表明:本文算法與現(xiàn)存許多算法相比,在人體行為識別上都有更高的識別率、魯棒性和實時性。但是,本文算法對于動作幅度較小的行為識別率仍有待提高,因此,接下來考慮結合關節(jié)信息進一步提高微小行為的識別率。