張懿揚(yáng),陳 志*,岳文靜,張怡靜
(1.南京郵電大學(xué) 計(jì)算機(jī)學(xué)院,江蘇 南京 210023; 2.南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210023; 3.南京郵電大學(xué) 物聯(lián)網(wǎng)學(xué)院,江蘇 南京 210023)
在進(jìn)行人物姿態(tài)分類時(shí),一般認(rèn)為人的行為具有多種模式,在群體人物行為中表現(xiàn)為三個(gè)或者更多相互作用、相互影響、有共同目標(biāo)的人物組成的群體的相對(duì)運(yùn)動(dòng)現(xiàn)象[1],具體到競(jìng)技比賽中表現(xiàn)為運(yùn)動(dòng)者做出一些具有典型特點(diǎn)的競(jìng)技運(yùn)動(dòng)行為。通過(guò)對(duì)運(yùn)動(dòng)特征的分析與處理來(lái)提出可行性建議,可以提高運(yùn)動(dòng)質(zhì)量,優(yōu)化人們生活品質(zhì),提升體育競(jìng)技水平[2]。當(dāng)前已開始使用深度學(xué)習(xí)等算法進(jìn)行研究實(shí)驗(yàn),形成了基于人工特征提取[3]的傳統(tǒng)方法和基于深度學(xué)習(xí)[4]的方法。
在Microsoft Kinect、OpenPose等人體姿態(tài)檢測(cè)系統(tǒng)中,人體關(guān)鍵點(diǎn)的運(yùn)動(dòng)軌跡為動(dòng)作的描述提供了較好的表征,基于骨架關(guān)鍵點(diǎn)的模型通常能傳達(dá)出重要的特征信息。以連續(xù)的視頻幀中檢測(cè)到的人體骨架關(guān)鍵點(diǎn)序列為輸入,能夠輸出在視頻中發(fā)生的人物動(dòng)作類別。在早期使用骨骼進(jìn)行人物動(dòng)作識(shí)別時(shí),僅僅利用單個(gè)時(shí)間步長(zhǎng)的關(guān)鍵點(diǎn)坐標(biāo)形成的特征向量,對(duì)其進(jìn)行時(shí)間分析,并沒(méi)有顯式地利用關(guān)鍵點(diǎn)之間的空間聯(lián)系。
在近期的研究中,利用關(guān)鍵點(diǎn)間自然聯(lián)系的方法已經(jīng)被開發(fā)出來(lái)[5],其效果較早期方法有著長(zhǎng)足的進(jìn)步,證明了連接的重要性。目前多數(shù)方法仍需要用手工制作的規(guī)則及部件來(lái)分析空間模式[6],這導(dǎo)致應(yīng)用程序的設(shè)計(jì)模型很難泛化使用。
Yan S考慮到骨架的結(jié)構(gòu)特征,提出了新的動(dòng)態(tài)骨架模型:ST-GCN[7](時(shí)空?qǐng)D卷積網(wǎng)絡(luò))。因?yàn)槠湟詧D結(jié)構(gòu)而非網(wǎng)絡(luò)形式呈現(xiàn),給卷積網(wǎng)絡(luò)模型的使用造成困難。近來(lái)發(fā)現(xiàn)可以對(duì)任意圖結(jié)構(gòu)進(jìn)行卷積的GCN(圖卷積網(wǎng)絡(luò))有了快速的發(fā)展,不同于傳統(tǒng)的基于圖像的CNN(卷積神經(jīng)網(wǎng)絡(luò)),GCN可以基于任意拓?fù)浣Y(jié)構(gòu)進(jìn)行卷積,因此可以基于人體姿態(tài)估計(jì)構(gòu)造拓?fù)涞娜梭w結(jié)構(gòu),對(duì)人體結(jié)構(gòu)進(jìn)行運(yùn)動(dòng)學(xué)分析,最后以時(shí)序的人體結(jié)構(gòu)進(jìn)行CNN卷積,基于卷積的結(jié)果進(jìn)行人體運(yùn)動(dòng)姿態(tài)分類。
盡管人體運(yùn)動(dòng)姿態(tài)分類任務(wù)有了新方向,在進(jìn)行卷積網(wǎng)絡(luò)模型訓(xùn)練時(shí)常常會(huì)出現(xiàn)特征冗余的問(wèn)題。在卷積網(wǎng)絡(luò)訓(xùn)練的過(guò)程中,關(guān)鍵點(diǎn)檢測(cè)是檢測(cè)人體的不同部分,并不是人體各個(gè)部分的特征都集中在最后一層特征圖上,不同部分的特征可能會(huì)分布到不同尺度的特征圖上,如果只是通過(guò)最后一層的特征圖來(lái)進(jìn)行關(guān)鍵點(diǎn)檢測(cè),會(huì)得到比較差的結(jié)果。Feichtenhofer等[8]在分類器級(jí)融合[9]的基礎(chǔ)上提出了時(shí)間與空間特征融合算法,通過(guò)在Softmax層和卷積層之后的ReLU層進(jìn)行操作以實(shí)現(xiàn)特征級(jí)的融合,有效避免特征冗余的問(wèn)題,增強(qiáng)模型的魯棒性。
考慮到要處理視頻時(shí)需要分別進(jìn)行空間部分與時(shí)序部分的網(wǎng)絡(luò)訓(xùn)練,引入ST-GCN(spatial temporal graph convolutional networks)模型,即,該模型是結(jié)合圖卷積網(wǎng)絡(luò)和時(shí)間卷積網(wǎng)絡(luò)進(jìn)行的基于骨骼點(diǎn)的動(dòng)作識(shí)別分類模型。
首先,為得到骨骼的數(shù)據(jù),先使用OpenPose對(duì)視頻進(jìn)行預(yù)處理。該步驟將人體關(guān)節(jié)連接成骨骼,從而進(jìn)行姿態(tài)估計(jì)。ST-GCN模型只需要關(guān)注其輸出,由一系列的輸入幀的身體關(guān)節(jié)序列構(gòu)造時(shí)空?qǐng)D,時(shí)空?qǐng)D中將人體的關(guān)節(jié)作為圖節(jié)點(diǎn),將人體結(jié)構(gòu)和時(shí)間上的連通性對(duì)應(yīng)的兩類邊組成圖的邊。因此,ST-GCN將圖節(jié)點(diǎn)的聯(lián)合坐標(biāo)向量作為輸入,再對(duì)數(shù)據(jù)進(jìn)行多層時(shí)空?qǐng)D卷積操作,從而形成更高級(jí)別的特征圖。最后由SoftMax分類器分類到相應(yīng)的動(dòng)作類別。
在描述特征時(shí)需要表達(dá)多層骨骼序列從而盡可能保留原有的信息,ST-GCN使用時(shí)空卷積圖來(lái)描述,能夠很好地做到這一點(diǎn)。該模型使用每一幀每一個(gè)人體骨骼的坐標(biāo)表示骨架關(guān)鍵點(diǎn)序列,基于此構(gòu)建一個(gè)時(shí)空?qǐng)D,其中人體的關(guān)節(jié)關(guān)鍵點(diǎn)為圖的節(jié)點(diǎn)V,以骨架自然連接方式構(gòu)建空間圖,得到空間邊集Esp;身體結(jié)構(gòu)的連通性和時(shí)間上的連通性為圖的時(shí)序邊集Et。由以上節(jié)點(diǎn)集與空間邊集可構(gòu)成訓(xùn)練時(shí)所需要的時(shí)空特征圖。
在該模型中使用的卷積公式為:
aggre(x)=D-1AX
(1)
第一部分連接根節(jié)點(diǎn)本身,表示靜止的特征;第二部分連接比節(jié)點(diǎn)本身更靠近骨架重心的相鄰節(jié)點(diǎn)集,表示向心運(yùn)動(dòng)的特征;第三部分連接比節(jié)點(diǎn)本身更遠(yuǎn)離骨架重心的相鄰節(jié)點(diǎn)集,表示離心運(yùn)動(dòng)的特征。
由此,一個(gè)卷積核將被劃分為三個(gè),其中每個(gè)卷積結(jié)果都代表了不同尺度的動(dòng)作運(yùn)動(dòng)特征,將它們進(jìn)行加權(quán)平均便能得到卷積的結(jié)果。
在完成以上步驟后,可以得到帶有k個(gè)卷積核的圖卷積表達(dá)式:
(2)
式中,n表示視頻中的人數(shù),k表示卷積核數(shù)量,使用上述子圖劃分方法后一般值為3,c表示關(guān)節(jié)特征數(shù),t表示關(guān)鍵幀數(shù),v、w表示OpenPose預(yù)處理后的輸出關(guān)節(jié)數(shù)。對(duì)v求和代表節(jié)點(diǎn)的加權(quán)平均,對(duì)k求和代表不同卷積核的加權(quán)平均。
在通過(guò)圖卷積網(wǎng)絡(luò)得到空間上的節(jié)點(diǎn)特征后,還需要學(xué)習(xí)得到時(shí)間中節(jié)點(diǎn)的變化特征。在該模型中使用TCN,即時(shí)間卷積網(wǎng)絡(luò),通過(guò)傳統(tǒng)卷積層的時(shí)間卷積操作來(lái)完成這項(xiàng)任務(wù)。
與此同時(shí),考慮到在運(yùn)動(dòng)過(guò)程中,不同部分的軀干變化特征的重要性各不相同,因此在每個(gè)ST-GCN單元中都引入了注意力模型[10],用于在最后加權(quán)計(jì)算時(shí)保證每個(gè)單元有自己合適的權(quán)重,提高模型訓(xùn)練的準(zhǔn)確性。最終利用標(biāo)準(zhǔn)的Softmax分類器將合并所有時(shí)空特征后的特征圖分類到相應(yīng)的類別當(dāng)中,并用梯度下降SGD進(jìn)行結(jié)果誤差優(yōu)化。
時(shí)空卷積網(wǎng)絡(luò)ST-GCN具有良好的人體運(yùn)動(dòng)動(dòng)作分類能力,但該模型仍存在不足之處。經(jīng)過(guò)特征提取后得到的特征數(shù)據(jù)也存在著一些問(wèn)題,例如,一單元內(nèi)的方差較小,整體數(shù)據(jù)各個(gè)單元之間卻有著較大數(shù)值的方差,而因?yàn)閷?duì)圖像部分特性的變化和其他特性的變化相比,同一種特征的敏感性不相同,因此當(dāng)兩類圖像差異在某種特征敏感特性上的差異不大時(shí),基于單一特征訓(xùn)練的分類器將無(wú)法得出正確的分類。此外,其他問(wèn)題也會(huì)導(dǎo)致特征數(shù)據(jù)質(zhì)量下降,例如復(fù)雜的背景噪聲等,既增加了分類器訓(xùn)練難度,也降低了其準(zhǔn)確性。
特征融合的方法可以解決這種問(wèn)題,這種方法同時(shí)提取多種特征進(jìn)行分類器訓(xùn)練,實(shí)現(xiàn)特征的互補(bǔ)。Simonyan提出了一種使用雙流架構(gòu)的網(wǎng)絡(luò)模型[9],該模型屬于分類器級(jí)的融合,通過(guò)對(duì)建立的空間流和時(shí)間流卷積神經(jīng)網(wǎng)絡(luò)分別進(jìn)行獨(dú)立訓(xùn)練,最終由Softmax分類器將上述兩個(gè)網(wǎng)絡(luò)融合。而Feichtenhofer在上述模型基礎(chǔ)上做了網(wǎng)絡(luò)融合方面的改進(jìn)[8],提出了空間特征融合和時(shí)間特征融合算法,可以同時(shí)在分類器級(jí)和ReLU層進(jìn)行融合操作,實(shí)現(xiàn)特征級(jí)的融合。
ST-GCN模型目前僅適用于分類器級(jí)的融合,因此對(duì)該模型進(jìn)行如下改進(jìn):
針對(duì)該模型的時(shí)空特征圖進(jìn)行特征的融合,融合函數(shù)定義為[8]:
(3)
融合函數(shù)包括加性融合函數(shù)、級(jí)聯(lián)融合函數(shù)、卷積融合函數(shù)等,為了盡可能保留原本特征圖的結(jié)果,此處使用級(jí)聯(lián)融合函數(shù)ycat=fcat(xa,xb),即:
(4)
式中,y∈H×W×2D,i∈[1,H],j∈[1,W],d∈[1,D]。它能夠保留兩個(gè)特征圖的結(jié)果,保證特征描述的準(zhǔn)確性,而融合后特征圖的通道數(shù)量會(huì)變?yōu)樵继卣鲌D的兩倍。實(shí)現(xiàn)特征級(jí)的融合,增強(qiáng)分類器結(jié)果的魯棒性[11]。
實(shí)驗(yàn)的數(shù)據(jù)集來(lái)源于hmdb51數(shù)據(jù)集[12],該數(shù)據(jù)集是當(dāng)前識(shí)別動(dòng)作研究領(lǐng)域最為重要的幾個(gè)數(shù)據(jù)集之一,多數(shù)來(lái)源于電影,還有一部分來(lái)自公共數(shù)據(jù)庫(kù)以及YouTube等網(wǎng)絡(luò)視頻庫(kù),包含51類動(dòng)作,共有6 849個(gè)視頻,每個(gè)動(dòng)作每類至少包含有101段樣本,分辨率為320*240。本次實(shí)驗(yàn)采用該數(shù)據(jù)集中的肢體動(dòng)作部分,包括一般身體動(dòng)作(general body movements)、與對(duì)象交互動(dòng)作(body movements with object interaction)和人體動(dòng)作(body movements for human interaction)三大類,實(shí)驗(yàn)數(shù)據(jù)集參數(shù)如表1所示。
表1 實(shí)驗(yàn)數(shù)據(jù)集參數(shù)
為證明基于ST-GCN的視頻人物運(yùn)動(dòng)分類改進(jìn)模型的有效性以及更好的魯棒性,現(xiàn)對(duì)某一視頻進(jìn)行運(yùn)動(dòng)人物檢測(cè)與跟蹤。該視頻分辨率為320*240,幀率為30 F/s。
前10幀中每隔一幀取一次圖像輸出的運(yùn)動(dòng)人物檢測(cè)與跟蹤結(jié)果,如圖1至圖5所示,分類結(jié)果為上述圖中人物正進(jìn)行射門(足球運(yùn)動(dòng))。
圖1 第1幀圖像(左)與運(yùn)動(dòng)姿態(tài)分類結(jié)果 (中上為原ST-GCN模型輸出的骨骼圖,中下為改進(jìn)后模型骨骼圖;右上為原ST-GCN模型輸出的RGB渲染圖,右下為改進(jìn)后模型渲染圖)
圖2 第3幀圖像(左)與運(yùn)動(dòng)姿態(tài)分類結(jié)果 (中上為原ST-GCN模型輸出的骨骼圖,中下為改進(jìn)后模型骨骼圖;右上為原ST-GCN模型輸出的RGB渲染圖,右下為改進(jìn)后模型渲染圖)
圖3 第5幀圖像(左)與運(yùn)動(dòng)姿態(tài)分類結(jié)果 (中上為原ST-GCN模型輸出的骨骼圖,中下為改進(jìn)后模型骨骼圖;右上為原ST-GCN模型輸出的RGB渲染圖,右下為改進(jìn)后模型渲染圖)
圖4 第7幀圖像(左)與運(yùn)動(dòng)姿態(tài)分類結(jié)果 (中上為原ST-GCN模型輸出的骨骼圖,中下為改進(jìn)后模型骨骼圖;右上為原ST-GCN模型輸出的RGB渲染圖,右下為改進(jìn)后模型渲染圖)
圖5 第9幀圖像(左)與運(yùn)動(dòng)姿態(tài)分類結(jié)果 (中上為原ST-GCN模型輸出的骨骼圖,中下為改進(jìn)后模型骨骼圖;右上為原ST-GCN模型輸出的RGB渲染圖,右下為改進(jìn)后模型渲染圖)
實(shí)驗(yàn)采用HMDB51數(shù)據(jù)集進(jìn)行測(cè)試,將結(jié)果根據(jù)動(dòng)作分類進(jìn)行每一類的對(duì)比后,再將改進(jìn)后的模型與雙流法Two-stream模型、深度監(jiān)督網(wǎng)絡(luò)Deeply-Supervised Nets模型[13]、殘差網(wǎng)絡(luò)ResNet-152[14]模型、TVNet[15]模型進(jìn)行了對(duì)比,結(jié)果如表2和表3所示。
表2 模型改進(jìn)前后不同動(dòng)作的準(zhǔn)確性比較 %
表3 改進(jìn)模型與其他模型的準(zhǔn)確度比較 %
圖1至圖5展示了視頻中人物運(yùn)動(dòng)姿態(tài)分類模型的姿態(tài)分類結(jié)果,結(jié)果顯示原ST-GCN與改進(jìn)后的模型均能夠正確地分類視頻中的人物動(dòng)作,但是相比于原模型,改進(jìn)后的模型對(duì)于每個(gè)關(guān)節(jié)節(jié)點(diǎn)的特征進(jìn)行卷積時(shí)的權(quán)重分配更符合人體運(yùn)動(dòng)規(guī)律。從表2和表3中能夠看出,改進(jìn)模型改善了原模型特征類內(nèi)方差較小而類間方差較大的問(wèn)題,具有更好的魯棒性。
文中提出了基于時(shí)空?qǐng)D卷積網(wǎng)絡(luò)的視頻中人物姿態(tài)分類改進(jìn)模型,該模型首先將輸入的視頻人體骨骼關(guān)鍵點(diǎn)進(jìn)行處理,構(gòu)造關(guān)節(jié)序列的時(shí)空?qǐng)D,繼而將得到的時(shí)間特征圖與空間特征圖分別劃分并進(jìn)行級(jí)聯(lián)特征融合,最后基于空間構(gòu)型劃分進(jìn)行時(shí)序卷積與圖卷積操作,得到分類結(jié)果。該模型能夠準(zhǔn)確得到視頻中人物姿態(tài)的分類結(jié)果,解決了卷積網(wǎng)絡(luò)在訓(xùn)練中的特征冗余問(wèn)題,有效地提高人物姿態(tài)分類的魯棒性。
在后續(xù)的研究中,可以考慮對(duì)視頻中的一個(gè)群體進(jìn)行動(dòng)作分類,此外該算法是針對(duì)完整目標(biāo)檢測(cè)后的特征圖分析與訓(xùn)練結(jié)果的分類,對(duì)于畫面中有不完整人物出現(xiàn)時(shí)的目標(biāo)檢測(cè)仍有較大的發(fā)展空間。