唐鳳,宣士斌*,范曉杰
?
人體行為識別中骨骼特征信息的雞群優(yōu)化選擇算法
唐鳳,宣士斌*,范曉杰
(廣西民族大學信息科學與工程學院,南寧,530006)
隨著低成本深度傳感器的出現(xiàn),人體行為識別研究吸引了很多研究人員。由于這些設備提供了身體關節(jié)的三維位置等骨骼數(shù)據(jù),使得基于骨骼的人體行為識別變得簡單。但這些關節(jié)特征的信息存在部分冗余或者不必要的關節(jié)點信息,從而降低識別精度。為此,提出了用改進的CSO(Chicken Swarm Optimization)算法來優(yōu)化關節(jié)點信息的方法,過濾一些不必要的關節(jié)點的特征信息,提高了識別精度。改進的CSO算法引入“佳點集”和OS(Ordered Subsets)方法,利用“佳點集”均勻化初始種群;利用OS方法將整個有序種群分成了3個部分,在進行位置更新時,引入猴群算法中的望-眺過程來比擬雞群在覓食的過程中尋找食物的眺望過程作為其修正公式,加快了算法的收斂速度并且避免算法陷入局部最優(yōu)。實驗結(jié)果表明,提出的方法在UTKinect和Florence3D數(shù)據(jù)集上測試得到的精度分別達到98.01%和93.77%。
行為識別;特征選擇;雞群優(yōu)化算法;佳點集;有序子集
人類具有從視覺信息感知人體動作的非凡能力,能夠準確地定位人、物并跟蹤人體運動,通過分析人與物體的交互可以知道人們在做什么并且推斷其意圖。自動識別與理解人體動作在許多人工智能系統(tǒng)中是非常重要的,在智能視頻監(jiān)控、人機交互、視頻分析與檢索以及機器人等領域中廣泛地應用。尤其是微軟Kinect等的出現(xiàn),這些設備提供了身體關節(jié)的三維位置等骨骼數(shù)據(jù),然后用各種描述子對相關的運動信息進行描述識別。
文獻[1]用固定長度的圓柱體表示相對關節(jié)肢體距離和關節(jié)角之間的信息,該文章的主要貢獻就是采用了數(shù)據(jù)驅(qū)動的馬爾可夫鏈蒙特卡爾理論方法,不需要很大的數(shù)據(jù)集,但是他們的方法對快速運動和背景比較敏感。文獻[2]用了Plagemann 等人提出的基于15個肢體部分的運動學鏈模型,并提出用一個平滑的似然函數(shù)來定位追蹤身體的位置,但是在一些系統(tǒng)中(Grest et al.[3], 2005; Knoop et al.[4], 2009)的快速的運動環(huán)境下會導致模糊或者追蹤定位失敗。文獻[5]從一個3D點云中粗糙的評估整個身體模型,他們首先找到身體的中心和外部邊界點,姿勢的表示就簡單地用這些點組成的向量來表示,方便定位和追蹤,但是得到的精度主要依靠先驗的身體姿勢。文獻[6]用文獻[7]中的方法實現(xiàn)了對20個關節(jié)點的追蹤,并且用傅立葉金字塔來建立關節(jié)特征向量之間時間模式的模型,他的主要工作是采用了Actionlet Ensemble (AE)方法,這個方法可以處理骨骼追蹤的錯誤并能得到類內(nèi)之間更好的特征,但是他沒有考慮骨骼局部的相對關系。文獻[8]采用了基于李群的幾何關系對人體行為進行識別,主要的貢獻是用旋轉(zhuǎn)和平移表示不同肢體部分之間的3D幾何關系模型。
文獻[8]中使用的是相對關節(jié)之間的幾何關系,所以得到的關節(jié)點的信息比較多。對于一些行為或者姿勢只用到了手臂或者手上的一些信息,卻包括了整個身體肢體特征的信息。比如說舉東西這個動作只用到了手臂上的信息,而其他的關節(jié)信息就變的冗余了,并且比較容易與其他行為產(chǎn)生混淆;走的這個動作只有下半身的關節(jié)坐標會產(chǎn)生相應的變化,而上半身的只有在水平方向有相應的變化,而在縱向和垂向兩個方向上沒有相應的變化。這些多余的關節(jié)特征信息會降低識別的精度,因此關節(jié)的哪些信息對識別性能有較高的價值并拋棄關節(jié)的哪些特征成為了一個重點考慮的對象。
本文提出了一個改進的雞群智能優(yōu)化方法來選擇關節(jié)的有用信息以提高行為的識別精度,將雞群的位置信息對應到骨骼特征的選擇中去,實現(xiàn)算法對特征信息的選擇。因為智能優(yōu)化算法對初始值的依賴性比較大,所以改進的CSO算法引入佳點集方法對種群初始化,以達到均勻化初始種群的目的,預防種群過早陷入局部最優(yōu)。還引入了OS方法,將整個有序種群分成了3個部分,在進行位置更新的時候,也就是在迭代過程中,引入猴群算法中的望-眺過程來比擬雞群在覓食的過程中尋找食物的眺望過程作為其修正公式,加快了算法的收斂速度并且避免算法陷入局部最優(yōu)。最后將行為的識別精度作為算法的適應度函數(shù)得到相應的實驗結(jié)果。
1.1 基于李群的骨骼表示
在這一部分中,我們首先介紹基于李群[9]的行為識別方法。由于三維剛體運動是歐幾里德群的一部分,作者提出的骨骼表示是基于李群的基礎上進行的。即將整個視頻中的骨骼變化表示成一個曲率流形。在關節(jié)位置的計算上面,分別采用了關節(jié)位置的計算和相對關節(jié)位置的計算,然后在李氏空間中分別對它們進行旋轉(zhuǎn)和平移操作,形成兩種描述子的方法,由20個關節(jié)點,19個肢體組成的人體骨骼圖如圖1所示。
圖1 由20個關節(jié)點,19個肢體組成的人體骨骼圖
Figure1.Human Skeleton is composed of 20 joints and 19 limbs
第一種描述子:關節(jié)位置(Joint positions—JP)。在第t幀肢體j的位置可以定義為,肢體的位置定義為其中,表示的是肢體的數(shù)目。直接將關節(jié)位置隨著時間的變化作為行為的一種描述子。
第二種描述子:基于李群的相對關節(jié)位置(Relative Joint position based on lie groups—Li_JP)。根據(jù)第一種描述子得到了關節(jié)的位置,則肢體之間的相對位置表示方式為,其中;以此類推計算所有的兩兩肢體的相對位置數(shù)據(jù)。
得到肢體的相對關節(jié)之后,將其中一個肢體相對于另一個肢體進行旋轉(zhuǎn)平移,如文獻[8]中所示。在兩個相對肢體部分的局部坐標系,其中一個向另一個旋轉(zhuǎn)平移示意圖如圖2所示。
圖2 在兩個相對肢體部分的局部坐標系,其中一個向另一個旋轉(zhuǎn)平移示意圖。
Figure 2.In the local coordinate,the schematic view of two opposite limbs and one of them translate and rotate to another one
(2)
由于肢體的長度不會隨著幀數(shù)的變化而變化,所以兩肢體的相對幾何關系可以用式(3)和(4)來表示:
(4)
(6)
將整個人體看作是一個點,用DTW[10](Dynamic Time Warping)方法,一個行為就產(chǎn)生了一條曲線。用傅立葉描述子對曲線進行描述,將得到的傅立葉描述子用一個三層時間金字塔表示,并將每個部分長度的1/4作為其低頻系數(shù)[6],得到整個視頻的特征描述子。
由于文獻計算的是相對肢體之間的幾何關系,所以對于取點越多的骨骼文獻計算量就越大,最后產(chǎn)生的關節(jié)的信息也會產(chǎn)生很大的冗余或者不必要的肢體特征,這些肢體特征對行為識別的精度造成一定的負面的影響,從而降低識別精度。本文在這個基礎上引入了改進的智能算法對最后的識別精度進行優(yōu)化,并且取得了較好的結(jié)果。
1.2 雞群算法
雞群算法是MENG Xianbing[11]等人提出的基于雞群搜索行為的隨機優(yōu)化算法,他們模擬了雞群的行為并且它們之間存在等級制度。
整個算法概括如下:
1. 將整個雞群分成若干個群體,每一個群體均有一只公雞,若干只母雞和小雞組成,母雞中還包含帶小雞的雞媽媽。
2. 不同的雞有不同的移動規(guī)律,在一個具體的等級制度下,它們之間存在競爭關系。適應度值大的作為公雞,最小的最為小雞,其他的是母雞,其中母雞與小雞的關系是隨機建立的。
3. 雞群中的等級制度,群內(nèi)關系以及小雞與母雞的關系要在數(shù)代之后才更新。
4. 群體里的雞隨著它們的組員公雞尋找食物,并且他們阻止其他種群的雞來偷吃它們的食物。小雞跟隨雞媽媽一起尋找食物,并可以隨機偷食其他雞找到的食物。在雞群里,具有支配地位的個體優(yōu)先于其他個體先找到食物。
根據(jù)上述的規(guī)則對每一類雞分別制定相應的位置更新公式,迭代,直到滿足迭代條件停止。所有只雞,它們在時間的位置表示方法是,該公式表示第個體第維在時間迭代的值。表示的是雞群搜索食物的維空間。
整個雞群中三種類型的雞,每一個個體根據(jù)自身的種類不同更新公式不同,公雞對應于雞群中適應度值最好的個體,其對應的位置更新公式如下:
(8)
母雞跟隨它們所在的群體尋找食物,并且可以隨機偷取其他雞找到的食物,占有更多主導地位的母雞比其他個體更容易找到食物,也就是說適應度值越大的母雞在競爭中的優(yōu)勢越大。則母雞的位置更新公式如下:
其中,
(10)
根據(jù)上面算法的相關描述,小雞的位置更新數(shù)學公式表示如下:
(11)
2.1 佳點集初始化
智能優(yōu)化算法的收斂過程中,很大程度的依賴于生成的初始值,若產(chǎn)生的初始值太極端,可能很難得到收斂的值。因此引入數(shù)論中的佳點集對初始值均勻化[12],如圖3,在區(qū)域[1,1]之間隨機生成600個點。若使用佳點集法產(chǎn)生的點是均勻分布在圖像中如圖a,若未使用,則生成的點則是散亂的分布在圖像中如圖b。因此使用佳點集可以有效的預防算法過早陷入局部最優(yōu),并提高搜索效率,a佳點集生成的點圖; b、隨機生成的點圖如圖3 a、b所示。
圖3. a、佳點集生成的點圖;
Figure 3. a. A dot plot is generated by good point set ;
圖 3. b、隨機生成的點圖
Figure 3. b. A dot plot is generated by random.
2.2 基于有序子集(OS)的雞群優(yōu)化算法(Chicken Swarm Optimization based on ordered subsets —OS_CSO)
在有序子集的方法中,將整個數(shù)據(jù)集分成T個有序子集。其中的子集水平定義為這些子集的數(shù)目。每次迭代時使用相應的更新公式對子集內(nèi)的每個數(shù)據(jù)進行修正,這樣所有的子集中的數(shù)據(jù)就被修正一次,得到的整個數(shù)據(jù)集就被更新了T次,完成一次迭代過程。與傳統(tǒng)的迭代更新算法相比較,在相同的時間和計算量的基礎下,數(shù)據(jù)集被多更新了T次,因此有序子集方法具有加快收斂速度的作用。我們將這個方法應用到雞群優(yōu)化算法中來,以此提高算法的收斂速度。
在雞群優(yōu)化算法中,整個算法分成的是三個子集,分別是公雞,母雞,小雞三個群體,各個子集水平則為公雞,母雞,小雞對應的群體個數(shù)。每次迭代的時候我們效仿猴群算法[13]中望-眺的過程作為OS方法中的修正公式。雞群在尋找食物的過程中,可以通過眺望的過程,在視野范圍內(nèi)尋找優(yōu)于當前位置的點,然后去食物更多的位置覓食。相應的步驟如下:
2)若是更新后的群體比未更新的群體的適應度值大,則用更新后的群體替代以前的群體,得到新的適應度值,反之則不替換。
其中,在對應雞群更新位置公式的時候,其他雞群的位置保持不變,計算相應的適應度值。以此類推,得到最后的實驗結(jié)果。因為在OS方法中引入了雞群的眺望動作,在提高算法的收斂速度的同時也避免算法陷入局部最優(yōu)。
2.3 人體行為識別中骨骼特征的雞群優(yōu)化選擇算法
當使用骨骼特征向量的時候,特征向量信息的選擇成了值得考慮的問題,由于這些特征信息可能包含降低識別精度的不相關或者冗余的信息。事實上,不相關或者冗余的信息對有用的特征信息的影響比較大,大多數(shù)的分類器不能區(qū)分開它們。所以特征的選擇在于找到優(yōu)化分類的子集,以找到更好的分類性能,得到更高的分類精度。
比如對于跑跟走的兩個動作,兩者之間需要的關節(jié)特征是差不多的,但是跑的時候人體的軀干上的縱坐標會發(fā)生一定的變化,而對于走路的這個姿勢幾乎是不變的,所以這個時候人體軀干上縱坐標的特征對于走的這個姿勢就顯得冗余了,而且可能會讓分類器混淆對這兩個動作正確的判斷。如果我們將軀干上縱坐標的特征用0表示,表示沒有選擇這個特征。這樣子即使走的這個姿勢在軀干的縱坐標上有輕微的變化也不會影響最后的分類的結(jié)果,也對行為識別產(chǎn)生了一定的魯棒性,提高了分類器的識別精度。最后的實驗結(jié)果顯示選擇了之后的關節(jié)信息降低了動作之間的混淆程度,大大的提高了動作的識別精度。
本文主要的貢獻是用改進的CSO算法選擇關節(jié)特征信息。將個體的關節(jié)特征信息選擇編碼成一個布爾數(shù)組,數(shù)組的值表示對于該特征信息在識別系統(tǒng)中選或者不選。需要注意的是,數(shù)組的維數(shù)在不同的模型中已經(jīng)選擇好了,也就是識別特征信息的數(shù)目是確定的,也就是雞群覓食的搜索空間。在整個算法的計算過程中,我們將位置搜索空間固定在和之間,其中,搜索空間為維,對應于文中關節(jié)特征的總數(shù)目。由于計算的是雞群的最優(yōu)位置,在這個過程中會產(chǎn)生小數(shù),我們設計若產(chǎn)生的數(shù)是大于等于0.5(按實驗的經(jīng)驗取值),則向上取整,反之向下取整。再根據(jù)這個數(shù)組進行計算,0表示的是不選,1表示的是選擇。需要注意的是迭代更新的位置是在按上述規(guī)則取值之前的數(shù)據(jù)計算的,所以取值后的操作是不影響位置的更新,只會影響適應度大小的求解。最后再把得到的行為識別精度作為適應度函數(shù)值。參照圖1建立的模型表一所示。
表 1 骨骼特征信息選擇模型
在大多數(shù)使用相對骨骼位置和骨骼位置進行特征計算的文獻中,學者們使用的是全部肢體或者關節(jié)的所有信息進行特征表示,但不是所有的肢體或關節(jié)特征對最后的識別有用,相反,有的肢體或關節(jié)特征會混淆最后的識別,導致精度下降。我們提出基于CSO算法的特征選擇[14],對信息進行優(yōu)化,選取有效的關節(jié)特征進行識別。算法流程如下:
2. 評估初始種群的適應度值,將種群的代數(shù)設為0;
3. 判斷種群的代數(shù)是否大于最大的迭代次數(shù),如果大于,則停止計算,輸出相應的最大適應度值(識別精度),否則轉(zhuǎn)向第4步;
5. 根據(jù)得到的適應度值排序,并建立一個等級制度,得到一個有序子集。將一個雞群劃分成若干個群體并確定小雞與雞媽媽的關系。轉(zhuǎn)向第6步。
6. 根據(jù)公式7得到公雞的位置更新公式,根據(jù)OS方法,用公式12替代公式7中的位置信息,計算適應度值,小雞和母雞的位置信息不變。若得到的適應度值比未替代之前的適應度值大,則替代式7,否則不替代。其中,的值取為0.25。根據(jù)式9和11分別得到母雞和小雞的位置更新公式,跟公雞的位置更新處理一致。其中,的值分別取為0.2和0.1(按實驗的經(jīng)驗取值)。轉(zhuǎn)向第7步。
7. 更新雞群中個體當前最優(yōu)位置和雞群的全局個體最優(yōu)位置,迭代次數(shù)加1,并轉(zhuǎn)向第3步。
在用改進的CSO算法對特征選擇進行優(yōu)化的過程中,由于智能優(yōu)化算法對初始值的依賴性很強,一個好的初始值可能會讓算法很快得到全局最優(yōu),反之,也有可能讓算法陷入局部最優(yōu),針對這個問題,我們提出了佳點集對算法的初始值進行了優(yōu)化處理,得到一個分布比較均勻的初始值,可避免算法過早陷入局部最優(yōu)。然后根據(jù)群體的位置信息決定骨骼特征信息在計算的過程中是選還是不選。在算法的位置更新上,也就是在迭代的過程中,引入了OS方法,將整個群體分成了三個子集,在一定的程度上加快了算法的收斂性并避免陷入局部最優(yōu)。
本文在數(shù)據(jù)集UTKinect-Action[15]和Florence3D-Action[16]上進行比較,為了使得人體骨骼在場景中的位置數(shù)據(jù)不變,所有的三維關節(jié)位置坐標均從世界坐標系轉(zhuǎn)換為以人體的髖關節(jié)為坐標中心的局部坐標系中。在所有的實驗中,我們均采用3層傅立葉時間金字塔得到描述系數(shù),并使用每個部分的1/4作為低頻系數(shù)。最后均采用動態(tài)時間規(guī)劃、傅立葉時間金字塔和線性SVM(Support Vector Machine)方法對得到的描述子進行分類。
UTKinect-Action數(shù)據(jù)集:這個數(shù)據(jù)集用一個固定的Kinect傳感器獲得。它由10個行為組成,分別為:walk, sit_down, stand_ up, pick _ up, carry, thow, push, pull, wave_ hands, clap_ hands。這10個行為由10個不同的人來演示。每一個人展示每一個行為2次,其中一個是無效的,總共產(chǎn)生199個行為序列。這個數(shù)據(jù)集提供了20個關節(jié)點的三維位置信息,由于視點和類內(nèi)的變化,識別這個數(shù)據(jù)集是一項充滿挑戰(zhàn)的任務。
Florence3D-Action數(shù)據(jù)集:這個數(shù)據(jù)集用一個固定的Kinect傳感器獲得。它由9個行為組成,分別為:wave, drink, answer phone, clap, tight lace, sit down, stand up, read wath, bow。這9個行為有10個不同的人來演示,每一個人對于每一個行為重復2次或者3次。總共產(chǎn)生215個行為序列。這個數(shù)據(jù)集提供了15個關節(jié)點的三維坐標位置。由于類內(nèi)的多變性(一些行為在一些序列中用左手而在另一些序列中用右手),并且有一些行為的表現(xiàn)方式也比較相似,像喝水和打電話這兩個行為的動作就比較的相似,對這個數(shù)據(jù)集的識別也是一項比較有挑戰(zhàn)性的任務。
表2顯示了關節(jié)位置(JP)方法在數(shù)據(jù)集UTKinect-Action和Florence3D-Action中的識別率。在數(shù)據(jù)集UTKinect-Action中,在JP的基礎上使用了CSO方法之后數(shù)據(jù)集的識別率比之前方法的精度提高了1.44%,在JP的基礎上使用了改進的CSO方法之后比原來方法的精度提高了2.33%。在數(shù)據(jù)集Florence3D-Action中,使用CSO方法和改進的CSO方法數(shù)據(jù)集的識別精度分別提高了2.44%和3.77%。
表2 關節(jié)位置(JP)方法在數(shù)據(jù)集UTKinect和Florence3D上不同方法識別率的比較
Table 2 The comparison of different methods’ recognition rate base on JP in UTKinect dataset and
表3顯示了基于李群的關節(jié)位置(Li_JP)方法在數(shù)據(jù)集UTKinect和Florence3D上不同方法識別率。在數(shù)據(jù)集UTKinect-Action中,在Li_JP的基礎上使用了CSO方法之后數(shù)據(jù)集的識別精度比之前的方法提高了0.52%,在Li_JP的基礎上使用了改進的CSO方法之后比原來方法的精度提高了0.93%。從得到的數(shù)據(jù)上分析,算法的識別精度在改進后提高的不是特別明顯,主要的原因是Li_JP的識別精度在UTKinect-Action已經(jīng)很高了,每一次精度的提高都是一種挑戰(zhàn),更是一種突破,因此,算法的改進還是有效的。在數(shù)據(jù)集Florence3D-Action中,使用CSO方法和改進的CSO 方法數(shù)據(jù)集的識別精度分別提高了1.63%和2.89%。
表3 基于李群的關節(jié)位置(Li_JP)方法在數(shù)據(jù)集UTKinect和Florence3D上不同方法識別率的比較
Table 2 The comparison of different methods’ recognition rate base on Li_JP in UTKinect dataset and Florence3D dataset
在數(shù)據(jù)集UTKinect和Florence3D上生成的混淆矩陣的數(shù)據(jù)如圖4所示。
從得到的混淆矩陣可以看出,在圖4a中,數(shù)據(jù)集UTKinect數(shù)據(jù)集中throw和push、clap-Hands、pull; walk和pick_up比較容易產(chǎn)生了混淆。在圖4b中,只有throw和push,pull,clap_hands比較容易產(chǎn)生混淆。圖a和圖b分別是在未優(yōu)化關節(jié)點信息特征和使用了改進的雞群優(yōu)化算法優(yōu)化關節(jié)點信息特征的基礎上得到的混淆矩陣,從兩個圖的對比上可以看出,優(yōu)化后的pick_up, throw等動作的識別精度提高了,并且throw和pull,clap_hands的混淆率降低了。在圖4c中,drink和wave、answer phone;answer phone 和read watch、clap、read watch;read watch和wave、answer phone、clap產(chǎn)生了比較明顯的混淆。在圖d中,drink和answer phone;answer phone 和drink、clap;read watch和clap產(chǎn)生了比較明顯的混淆。從兩幅圖的對比上看,使用了改進的雞群優(yōu)化算法進行特征選擇后改善了read watch 和drink、answer phone等比較容易混淆的動作,從得到的單個動作的識別精度上看,wave,drink, answer phone等動作的識別精度明顯得到了提高。綜合以上兩個實驗的對比,說明了使用改進的雞群優(yōu)化算法對關節(jié)點信息特征選擇可以減少動作之間的混淆并且提高識別精度。因此,也進一步說明了提出的算法的有效性。
圖4 混淆矩陣a、b是基于UTKinect數(shù)據(jù)集方法JP和JP用改進的CSO方法—Li_JP得到的混淆矩陣;c、d是基于Florence3D數(shù)據(jù)集用同樣的兩種方法得到的混淆矩陣。
Figure 4.a and b are confusion matrix base on JP and JP using improved CSO-Li_JP in UTKinect dataset respectively;c and d are confusion matrix base on same methods in Florence3D dataset respectively;
數(shù)據(jù)集Florence3D中喝水和打電話這兩個動作比較容易混淆,因為都是在頭部上面的相關動作,并且手臂對頭部也會有一定的遮擋的作用,使得計算機更加容易混淆,因此這也是以后我們需要努力與改進的方向??偟膩碚f,這幾種混淆的動作大多是同一肢體上的運行,所以比較容易產(chǎn)生混淆。這也是視頻行為識別的難點之一。
改進后算法的收斂性和識別精度均得到了提高,在兩個數(shù)據(jù)集上的Li_JP方法上同時使用CSO方法和改進的CSO方法舉例說明。如圖5_a所示,表示的是在數(shù)據(jù)集UTKinect-Action上算法的收斂性和識別精度,從圖中可以直觀的看出,改進后的算法無論在識別精度還是在收斂速度上均優(yōu)于為改進的算法。我們將算法的迭代次數(shù)設置為400代,從圖中可以看出,改進前算法的迭代收斂代數(shù)在第270代左右,而改進后算法在160代左右就收斂了,并且精度也有所提高。如圖5_b所示,和圖5_a類似,表示的是Florence3D-Action數(shù)據(jù)集上的識別精度和算法的收斂速度,也能得到和上個數(shù)據(jù)集一樣的結(jié)果。我們將算法的迭代次數(shù)設置為250代,從圖中可以看出,改進前算法的迭代收斂代數(shù)在第200代左右,而改進后算法在120代左右就收斂了,并且精度也有所提高。實驗證明說明OS方法對算法的收斂速度有一定的提高作用并且有利于實驗識別精度的提高,并且都這兩個不同的數(shù)據(jù)集都達到了期望的結(jié)果,UTKinect-Action dataset收斂曲線;Florence3D-Action dataset收斂曲線如圖5 a、b所示。
圖5 a、UTKinect-Action dataset收斂曲線b、Florence3D-Action dataset收斂曲線
Figure 5 a. The convergence curve of UTKinect-Action dataset b.The convergence curve of Florence3D-Action dataset
提出的這個方法也優(yōu)于許多已經(jīng)存在的基于這兩個數(shù)據(jù)集的方法,如表4。在同一個數(shù)據(jù)集上,提出的方法比文獻15中的Histograms of 3Dionts方法得出的識別精度高了7.09%,比文獻17中Random forests方法高了10.11%。比文獻16中的Multi-part Bag-of-Poses方法高出11.77%。
表4 與其他方法的實驗結(jié)果比較
Table 4 Comparison with other methods’ experimental results
在本文中,我們將一個人體骨骼看作是一個點,將一個行為看作是一條曲線。建立三維位置的關節(jié)模型,最后對該曲線用傅立葉時間金字塔描述,得到相應的描述子。對描述子用改進的CSO算法進行優(yōu)化,用線性SVM對優(yōu)化后的描述子分類,得到分類結(jié)果。在用改進的CSO算法對關節(jié)進行選擇的時候,將種群的位置與關節(jié)的選擇對應起來,由于在位置更新的時候相應的位置數(shù)據(jù)會產(chǎn)生小數(shù)的情況,我們設定當位置信息大于某個小數(shù)時則向上取1,否則取0。取后的實驗數(shù)據(jù)并不影響種群的位置更新,再用得到的識別精度作為適應度函數(shù)值。改進的CSO算法引入佳點集的方法對種群初始化,預防種群過早陷入局部最優(yōu)。還引入了OS方法,將整個有序種群分成了3個部分,在進行位置更新的時候,也就是在迭代過程中,引入猴群算法中的望-眺的過程來比擬雞群在覓食的過程中尋找食物的眺望過程作為其修正公式,加快了算法的收斂速度。實驗結(jié)果表明本文提出的方法比其他很多方法在這兩個數(shù)據(jù)集得到的結(jié)果均要高出很多。由于在這兩個數(shù)據(jù)集中沒有涉及到人與人之間的交互運動,所以在以后的工作中,我們要更加注重研究人與人之間的交互活動以及在更加嘈雜的壞境中得到更高的識別精度。
[1] Siddiqui, M., Medioni, G., 2010. Human pose estimation from a single view point, real-time range sensor. In: 2010 IEEE Computer Society Conf. on ComputerVision and Pattern Recognition Workshops (CVPRW), pp. 1-8.
[2] Ganapathi, V., Plagemann, C., Koller, D., Thrun, S., 2010. Real time motion capture using a single time-of-flight camera. In: 2010 IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), pp. 755-762.
[3] Grest, D., Woetzel, J., Koch, R., 2005. Nonlinear body pose estimation from depth images. In: Proc. of the 27th DAGM Conf. on Pattern Recognition. Springer-Verlag, Berlin, Heidelberg, pp. 285-292.
[4] Knoop, S., Vacek, S., Dillmann, R., 2009. Fusion of 2D and 3D sensor data for articulated body tracking. Robot. Autonom. Systems 57, 321-329.
[5] Schwarz, L.A., Mateus, D., Castaneda, V., Nava, N., 2010. Manifold learning for tofbased human body tracking and activity recognition. In: British Machine Vision Conf. (BMVC).
[6] J. Wang, Z. Liu, Y. Wu, and J. Yuan. Mining Actionlet Ensemble for Action Recognition with Depth Cameras. In CVPR, 2012. 2, 5, 7.
[7] Shotton, J., Girshick, R., Fitzgibbon, A., Sharp, T., Cook, M., Finocchio, M., Moore, R.,Kohli, P., Criminisi, A., Kipman, A., Blake, A., 2012. Efficient human poseestimation from single depth images. IEEE Trans. Pattern Anal. Machine Intell., 1.
[8] Raviteja Vemulapalli.Human Action Recognition by Representing 3D Skeletons as Points in a Lie Group.IEEE Conference on Computer Vision & Pattern Re..., 2014: 588-595
[9] B. Hall. Lie Groups, Lie Algebras, and Representations: An Elementary Introduction. Springer, 2003. 3.
[10] 孫燾, 夏斐, 劉洪波. 基于動態(tài)規(guī)劃求解時間序列DTW中心[J]. 計算機科學, 2015(12) : 278-282. (Sun T, Xia F, Liu H B . Calculating DTW Center of Time Series Using Dynamic Planning[J]. Computer Science,2015(12) : 278-282. )
[11] MENG X B, LIU Y, GAO X Z, et al. A new bio-inspired algorithm: chicken swarm optimization[C]/ /5th International Conference on Swarm Intelligence. Hefei: Springer International Publishing, 2014: 86-94.
[12] 李志俊, 程家興. 基于數(shù)論佳點集的遺傳算法初始種群均勻設計[J]. 電腦與信息技術. 2007(04). 29-32.(Zhi-jun LI ,Jia-xing CHENG Uniform Design of Initial Population of Genetic Algorithm Based on Good Point Set.Computer and Information Technology.2007(04).29-32.)
[13] 陳信, 周永權. 基于猴群算法和單純法的混合優(yōu)化算法[J]. 計算機科學. 2013(11)。248-254. (Xin C,Yongquan Z.Hybrid Algorithm Based on Monkey Algorithm and Simple Method. Computer Science. 2013(11): 248-254.)
[14] 黃煒, 黃志華.一種基于遺傳算法和SVM的特征選擇[J]. 計算機技術與發(fā)展. 2010(06): 21-24. (Huang W, Huang Z H.Feature Selection Based on Genetic Algorithm and SVM[J]. Computer Technology and Development.2010(06):21-24.)
[15] L. Xia, C. C. Chen, and J. K. Aggarwal. View Invariant Human Action Recognition Using Histograms of 3D Joints. In CVPRW, 2012. 2, 3, 5, 7.
[16] L. Seidenari, V. Varano, S. Berretti, A. D. Bimbo, and P. Pala. Recognizing Actions from Depth Cameras as Weakly Aligned Multi-part Bag-of-Poses. In CVPRW, 2013. 2, 5, 7.
[17] Y. Zhu, W. Chen, and G. Guo. Fusing Spatiotemporal Features and Joints for 3D Action Recognition. In CVPRW, 2013. 3, 6, 7.
Selecting Optimal Skeletal Features Information in Human Action Recognition by Chicken Swarm Optimization
TANG Feng, XUAN Shibin*, FAN Xiaojie
(College of Information Science and Engineering, GuangXi University for Nationalities, Nanning, Guangxi, 530006, China)
With the low-cost depth sensors developed, human action recognition has attracted the attention of many researchers. Since these devices provided skeletal data consisting of 3D positions of body joints, human action recognition became simple. But these might contain irrelevant or redundant features information of body joints that could cut down recognition accuracy. An improved CSO (Chicken Swarm Optimization) is used to optimize features information of body joints by filtering unnecessary data. The Good Point Set and OS (Ordered Subsets) are added to the improved CSO algorithm. The Good Point Set is used to uniform initial population .The OS method divides entire ordered population into three parts correspondingly. During the process of updating position information, the Monkey Algorithm’s gaze afar motion is regarded as the process of gazing afar when chicken looking for food, and revised formula is established. It improved the convergence speed of algorithm and avoided falling into local optimal. The proposed approach has been tested on UTKinect-Action dataset and Florence3D-Action dataset. Experimental results show that our method gains test accuracy with 98.01% and 93.77% respectively.
action recognition;features selection;improved CSO;Good Point Set;Ordered Subsets
10.19551/j.cnki.issn1672-9129.2017.02.02
TP39
A
1672-9129(2017)02-0009-008
2016-12-14;
2017-01-09。
本課題研究受廣西自然科學基金(2015GXNSFAA139311)資助(National Natural Science Foundation of Guangxi, China (2015GXNSFAA139311))
宣士斌,廣西民族大學信息科學與工程學院。
E-mail:sbinx@qq.com
引用:唐鳳, 宣士斌, 范曉杰. 人體行為識別中骨骼特征信息的雞群優(yōu)化選擇算法[J]. 數(shù)碼設計, 2017, 6(2): 9-16.
Cite:Tang Feng, Xuan Shibin, Fan Xiaojie. Selecting Optimal Skeletal Features Information in Human Action Recognition by Chicken Swarm Optimization[J]. Peak Data Science, 2017, 6(2): 9-16.