周小靜,陳俊洪,楊振國,劉文印
廣東工業(yè)大學(xué) 計算機(jī)學(xué)院,廣州510006
隨著計算機(jī)技術(shù)的不斷發(fā)展與深入研究,操作行為的理解作為建立任意動作機(jī)制的基礎(chǔ)激發(fā)了廣大科研工作者的研發(fā)興趣,在智能家居、智能監(jiān)控、人機(jī)交互等多種應(yīng)用方面具備廣闊的應(yīng)用前景,使得人類行為識別成為了一個很活躍的研究領(lǐng)域,并成為計算機(jī)領(lǐng)域中的前沿方向之一。
當(dāng)前針對多種應(yīng)用,如視頻監(jiān)控、視頻搜索與人機(jī)交互等,有相當(dāng)多的研究者對人體動作的識別進(jìn)行了研究。文獻(xiàn)[1]提出了一種基于部位密集軌跡的行為識別算法,通過人體姿態(tài)估計模塊檢測人體并定位后,對人體進(jìn)行密集點采樣,使用部位關(guān)鍵點軌跡來提升識別精度。文獻(xiàn)[2]提出了一種新穎的時空融合網(wǎng)絡(luò)(STFN),對整個視頻的外觀與運動信息的時間動態(tài)進(jìn)行整合,然后聚合捕獲的時間動態(tài)信息,從而獲取更好的視頻級動作表示。文獻(xiàn)[3]提出一種基于低分辨率紅外陣列傳感器并使用VGGNet進(jìn)行分類識別的方法,能夠有效地識別出人的身份與動作。但是上述這些工作更多的是針對人類全身動作的識別,在處理更為精細(xì)的操作動作時可靠性較低,尤其是針對家庭或工作環(huán)境中手部的操作動作。手部操作動作對于學(xué)習(xí)人類行為的重要性不容小覷,從視覺感知中自動理解手部操作動作的能力在機(jī)器人領(lǐng)域具備多種潛在的應(yīng)用,對日常任務(wù)中手部的抓取行為的研究可以為機(jī)器人手部設(shè)計與開發(fā)工作提供手部功能的重要信息[4-6]。通過對操作任務(wù)中不同組件,如手部、物體、動作等之間的關(guān)系進(jìn)行研究,可以模擬抽象人類行為并將操縱功能轉(zhuǎn)移至機(jī)器人來執(zhí)行任務(wù),能有效促進(jìn)機(jī)器人的動作學(xué)習(xí)[7-8]。手部操作動作與抓取方式具有較強(qiáng)的關(guān)聯(lián)性,手部抓取中包含了人類行為的細(xì)粒度信息,對詳細(xì)地分析人類手部操作動作至關(guān)重要,除此之外,還有助于對人類的行動意圖進(jìn)行預(yù)測。Yang 等人[9]提出抓取類型是表征人類操作行為必不可少的一部分,人類在執(zhí)行操作任務(wù)時手部對物體執(zhí)行的特定的動作與此時手部的抓取方式具備相關(guān)性。文獻(xiàn)[10]指出抓取方式包含了有關(guān)動作本身的信息,并且可以將其用于預(yù)測或作為識別動作的功能。
為了更好地識別手部操作動作,本文提出了一個基于手勢特征融合的操作動作識別框架,該框架主要包含三個模塊,分別為RGB視頻特征提取網(wǎng)絡(luò)、手勢特征提取網(wǎng)絡(luò)和動作分類器。其中第一個模塊主要利用I3D網(wǎng)絡(luò)對動作進(jìn)行初步檢測與識別,結(jié)果作為動作特征;第二個模塊利用Mask R-CNN 網(wǎng)絡(luò)檢測識別手部抓取類型并將結(jié)果作為手勢特征;最后一個模塊用于融合動作特征與手勢特征,并使用SVM 分類器對動作進(jìn)行識別分類。與其他動作識別方法相比,本文所提出的框架無論是性能還是識別效果均取得了最好的結(jié)果,證明了手勢特征在動作識別中的可行性與有效性。
近年來,人類動作的識別與理解是人們在計算機(jī)視覺領(lǐng)域的一個研究熱點,根據(jù)使用的特征信息的差異動作識別方法大致可以劃分為三個類別。第一類是基于深度圖像與骨骼數(shù)據(jù)對人體動作進(jìn)行識別[11-13],這些方法都是使用基于深度圖像模態(tài)信息的時空興趣點特征或人體關(guān)節(jié)點位置特征對動作建模,能夠較為準(zhǔn)確地識別出人體動作,但這類方法僅適用于動作數(shù)據(jù)集相對較小的特定動作類別的識別問題,在實際的日常操作中應(yīng)用的可能性較小且可用數(shù)據(jù)集較少。第二類方法的研究內(nèi)容更多地集中于以運動與姿態(tài)變化(如走路、奔跑)為特征的全身運動,這類方法中的絕大多數(shù)通常是通過視頻序列來分析人類的動作姿態(tài)[14-15]。第三類方法為使用人體運動軌跡來進(jìn)行動作識別[16-18],由于使用到了人體姿態(tài)信息來助于識別,人們通常認(rèn)為這種方法更為可靠,但是在日常實際操作中,人類與物體進(jìn)行交互時會產(chǎn)生遮擋,這種方法很容易識別失敗。目前動作識別的研究內(nèi)容更多地集中于從人體全身來識別分類動作,仍然缺乏表現(xiàn)執(zhí)行細(xì)微操作動作的能力。
手勢的識別更接近于物體操作動作識別的問題,目前的手勢識別方法根據(jù)訓(xùn)練數(shù)據(jù)的不同大致可以劃分為三類。第一種方法是使用傳感器對手勢信息進(jìn)行感知與識別[19-20],通常這種方式具備較高的識別率并能夠?qū)?fù)雜動態(tài)的手勢具備較好的可識別性,但這種識別方式成本較高,訓(xùn)練數(shù)據(jù)珍貴。第二種方式為使用RGB-D圖像數(shù)據(jù)訓(xùn)練學(xué)習(xí)手勢識別模型[21-22],通常使用Kinect等深度攝像機(jī)采集到的視覺信息,從手形、軌跡、點云等特征識別手勢,這類識別方法的計算復(fù)雜度較高,難度較大。第三種方式為基于RGB圖像的二維特征來識別分類手勢[23-24],由于訓(xùn)練數(shù)據(jù)采集簡單,研究者們更傾向于使用這種方式來研究手勢識別問題。上述這些方法的目的通常是為了識別出手語手勢,如揮手、握拳等,而不是人類的手部與物體交互時的姿態(tài)(即抓取方式)。為了解決這個問題,更好地理解人類對手部的使用,許多學(xué)者對抓取已經(jīng)進(jìn)行了數(shù)十年的研究[8,25-26],還提出了抓取分類的方法來促進(jìn)對手部抓取的分析[27-29]。Cai 等人[30]于2015年首次提出了一種基于外觀的方法,能夠在現(xiàn)實場景中使用可穿戴式相機(jī)識別出操作任務(wù)中的抓取類型。
目前,僅有少量的研究者使用抓取信息來進(jìn)行動作識別工作[9,31-32]。Yang等人[32]基于語義,使用抓取信息將人類動作意圖劃分為三個粗略的抽象類別,然后使用卷積神經(jīng)網(wǎng)絡(luò)識別出抓取類型從而理解推斷動作類別,但這種動作模型相對較為簡單,僅需要學(xué)習(xí)三個類別,無法在更精細(xì)的級別上對操作動作進(jìn)行識別分類,導(dǎo)致識別日常操作動作并將處理復(fù)雜任務(wù)能力傳遞給機(jī)器人操作的可行性降低。為了解決該缺陷,本文提出手勢特征與細(xì)粒度動作特征相融合后識別操作動作,有效地提升了日常操作動作的識別精度。
圖1 是本文提出的方法框架。將整個模型劃分為手勢特征提取模塊、RGB 視頻特征提取模塊與動作分類模塊三個部分。手勢特征提取模塊用于檢測識別出當(dāng)前執(zhí)行的細(xì)粒度動作所對應(yīng)的手部抓取類型并將結(jié)果作為手勢特征;RGB 視頻特征提取模塊用于初步檢測識別視頻中細(xì)粒度動作并將結(jié)果作為動作特征;最后在動作分類模塊將動作特征與操作手勢特征相融合后輸入分類器推斷預(yù)測操作動作類別。
圖1 基于手勢特征融合的操作動作識別框架
抓取方式對于理解手部的操作非常重要,因為它決定了操作過程中手部如何抓取物體以及表征了要實現(xiàn)的動作功能。已經(jīng)有大量的工作將抓取的分類劃分為離散類型[27,33],以便于對抓取的研究。根據(jù)Feix 等人[27]提出的廣泛使用的抓取分類,選擇了6種常用抓取類型,這些抓取類型的日常使用頻率都很高,并且能基本涵蓋不同的抓取分類標(biāo)準(zhǔn)。這些抓取類型不但能夠用于分析大量的操作任務(wù),還能夠從圖像外觀中自動地識別。
手部抓取類型識別的輸入是從視頻中分割出的RGB 圖像片段序列。首先將圖像統(tǒng)一裁剪為224×224的尺寸,然后使用Mask R-CNN網(wǎng)絡(luò)[34]對圖像中演示者的手部進(jìn)行檢測分割。Mask R-CNN為兩階段程序,第一階段使用區(qū)域提議網(wǎng)絡(luò)(RPN)對候選對象生成邊界框,在第二階段,網(wǎng)絡(luò)對對象進(jìn)行分類并輸出標(biāo)簽、置信度、蒙版與邊界框。由于該網(wǎng)絡(luò)較為成熟且需要識別的對象單一,采用了網(wǎng)絡(luò)的默認(rèn)配置。作為識別輸出,獲得抓取類型的置信分布(或給定圖像證據(jù)表示為P(G|I)的抓取類型的后驗概率)以及具備最高概率得分的預(yù)測抓取類型。抓取類型的識別可提供有關(guān)在操作過程中手部如何抓取操作物體的信息,在動作分類部分將作為手勢特征。
動作所實現(xiàn)的功能是影響人類手部抓取方式選擇的重要因素[35],因此可以從抓取類型來推斷動作。假設(shè)抓取類型可以提供用于描述操作動作的補(bǔ)充信息,所以在這項工作中,在識別分類操作動作時,除了使用分類網(wǎng)絡(luò)從動作的視覺圖像信息中進(jìn)行視覺特征的提取與識別分類,還對手部抓取的語義特征進(jìn)行了應(yīng)用。
將抓取類型的語義信息用作訓(xùn)練動作分類器的中間特征,對操作動作的識別分類進(jìn)行補(bǔ)充,提出了如圖1所示的語義動作模型,該模型建立在抓取類型的語義信息與動作的視覺特征信息的基礎(chǔ)上,獲取到二者的置信分布后,為每個動作學(xué)習(xí)線性映射函數(shù),該函數(shù)使用抓取類型與初步識別的動作來進(jìn)一步識別分類當(dāng)前動作,表示為公式(1):
PA=f(P(a|I),P(G|I)|θ) (1)
其中,PA為操作動作的概率估計,P(G|I)為給定圖像下手部抓取類型的置信分布,P(a|I)為根據(jù)給定圖像中視覺特征所得的動作的置信分布,θ則為衡量每個動作與抓取類型之間關(guān)系的一組參數(shù)。
在根據(jù)圖像中視覺特征進(jìn)行動作初步識別時,由于動作是在時間與空間兩個維度上進(jìn)行變化的序列,考慮從時序與空間信息中共同提取動作特征,從而有效地提高動作識別的準(zhǔn)確性。主要采用了I3D 雙流網(wǎng)絡(luò)(Two-Stream Inflated 3D ConvNets)[36]對動作進(jìn)行視覺特征的提取與分類。
與傳統(tǒng)的雙流卷積網(wǎng)絡(luò)類似,分別對RGB 數(shù)據(jù)與光流信息進(jìn)行分開訓(xùn)練,在測試時將它們的預(yù)測結(jié)果進(jìn)行平均。3D 卷積網(wǎng)絡(luò)能高精度獲取動作的空間特征,還能學(xué)習(xí)RGB 流的時間模式,通過可見光流信息還能大大提高它們的性能。I3D網(wǎng)絡(luò)是基于Inception-V1架構(gòu)進(jìn)行了擴(kuò)展所得,該網(wǎng)絡(luò)中的2D 卷積核與池化均增加了一個時間維度,由原本的N×N擴(kuò)展為N×N×N,具體實現(xiàn)方式為沿著時間維度將2D濾波器權(quán)重重復(fù)N次,并通過除以N進(jìn)行歸一化,該模型通過將ImageNet上的二維圖像重復(fù)疊加為一個連續(xù)的視頻實現(xiàn)了從預(yù)先訓(xùn)練好的ImageNet模型來學(xué)習(xí)3D卷積核的參數(shù)。
網(wǎng)絡(luò)結(jié)構(gòu)細(xì)節(jié)為第一個卷積層步長為(2,2,2),卷積核大小為7×7×7,并連接到BN(Batch Normalization,批處理歸一化)層,與一個步長為(1,2,2),大小為1×3×3的最大池化層;第二個卷積層步長為(1,1,1),卷積核大小為1×1×1,并連接到BN 層;第三個卷積層步長為(1,1,1),卷積核大小為3×3×3,并連接到BN層,與一個步長為(1,2,2),大小為1×3×3的最大池化層;接下來為兩個連續(xù)的Mixed層(結(jié)構(gòu)如圖2所示),連接到BN層,與一個步長為(2,2,2),大小為3×3×3的最大池化層;經(jīng)過5個連續(xù)的Mixed層,連接到BN層與一個步長為(2,2,2),大小為2×2×2的最大池化層;經(jīng)過兩個Mixed層,連接到BN層與一個步長為(1,1,1),大小為2×7×7的平均池化層;最后為一個步長為(1,1,1),卷積核大小為1×1×1的卷積層。整個網(wǎng)絡(luò)模型中,除了最后一個生成每一類別分?jǐn)?shù)的卷積層,其他卷積層后均使用一個ReLU激活函數(shù)。
圖2 I3D網(wǎng)絡(luò)中Mixed層結(jié)構(gòu)圖
I3D 模型在TensorFlow 中實現(xiàn),訓(xùn)練過程中,將原始視頻幀尺寸修改為256×256,然后隨機(jī)裁剪為尺寸224×224的圖像后,分別對RGB流圖像與光流圖像進(jìn)行訓(xùn)練,每個流都使用了softmax分類損失。在訓(xùn)練期間,使用動量值為0.9的同步SGD作為優(yōu)化器,dropout設(shè)置為0.5,應(yīng)用最小批量大小為6的Batch Norm,使用的權(quán)重衰減值為1E-7,對RGB 流與光流分別以115 000 和155 000 步進(jìn)行訓(xùn)練,初始學(xué)習(xí)速率為1E-1,當(dāng)驗證損失達(dá)到飽和時,學(xué)習(xí)速率降低10倍。
進(jìn)一步來說,對于每個訓(xùn)練圖像,視覺識別層被用于提取手部的語義信息與動作視覺特征,結(jié)果表示為一個22 維特征向量,其中12 維由左右兩手的抓取置信度分布組成,剩下的10 維則由初步識別的動作的置信分布組成,基于獲取的22 維特征向量,針對不同的動作,使用線性SVM 對融合特征進(jìn)行分類,最終獲得操作動作類別。
在該章主要了介紹數(shù)據(jù)集的細(xì)節(jié)與實驗設(shè)置,然后進(jìn)行了三組實驗來驗證所提出的方法的不同組成部分:(1)抓取類型識別;(2)動作的初步識別;(3)抓取類型對動作識別分類的改善。
烹飪是一項復(fù)雜而多樣的活動,它可以很好地揭示機(jī)器人的靈活性并有效地驗證本文的框架性能。對從不受修飾的真實環(huán)境中收集的大型公開烹飪視頻數(shù)據(jù)集進(jìn)行了實驗,該數(shù)據(jù)集稱為EPIC Kitchens,為最大的第一人稱視角數(shù)據(jù)集[37]。EPIC-Kitchens記錄了來自4個城市的32 位參與者使用頭戴式相機(jī)所捕獲的在廚房的一些日?;顒?,記錄的視頻總時長達(dá)55 h,共包含11 500 000 幀圖像,數(shù)據(jù)集作者對數(shù)據(jù)集進(jìn)行了密集標(biāo)記,以表示39 594個動作片段。每一個動作片段都有一個具備時間間隔的復(fù)合標(biāo)簽,標(biāo)簽內(nèi)容包括活動描述、活動的開始時間與結(jié)束時間、細(xì)粒度的動作與所操作的一組物體。
本文實驗設(shè)置的一些細(xì)節(jié)如下:(1)選擇了如圖3所示的最常用的6 種手勢與表1 所示的10 種常用烹飪動作來表示抓取方式與動作;(2)一共選取了26 711 個動作片段作為本文的數(shù)據(jù)集,其中隨機(jī)選取了24 040個(90%)動作片段作為訓(xùn)練集來訓(xùn)練動作識別網(wǎng)絡(luò)I3D,剩余的2 671 個(10%)片段作為測試集,用于評估本文的框架性能;(3)從訓(xùn)練集中隨機(jī)選取了3 000 幀圖像并對其標(biāo)注手部輪廓與用于訓(xùn)練Mask R-CNN 的抓取類型。
表1 EPIC-Kitchens中10種常用烹飪動作
圖3 選定的6種常用抓取手勢
為了從EPIC-Kitchens 中識別手部抓取類型,對數(shù)據(jù)集中隨機(jī)選取的3 000 張圖像進(jìn)行了抓取類型標(biāo)注,用來訓(xùn)練抓取分類器。在本文方法中,采用了Mask R-CNN作為抓取識別分類器,在訓(xùn)練時將epochs 設(shè)置為100。在對抓取類型進(jìn)行分類時,為了證明所提議的Mask RCNN方法的有效性,使用了一些常用的經(jīng)典分類方法,如支持向量機(jī)(SVM)、隨機(jī)森林(Random Forest)、決策樹(Decision Tree)來進(jìn)行了比較。表2總結(jié)了應(yīng)用不同方法時抓取類型的分類性能,根據(jù)該表格內(nèi)容,可以觀察到所提出的方法在抓取分類上取得了最好的性能,識別抓取類型的準(zhǔn)確性達(dá)到了89.63%的性能。
表2 不同方法的抓取類型分類結(jié)果
在本節(jié)中,主要展示了基于視覺特征的動作識別模型的性能與基于抓取類型的語義信息對操作動作理解的有效性。采用EPIC-Kitchens中原始動作標(biāo)簽的動詞部分作為本工作中的動作標(biāo)簽,例如,圖4 所顯示的一些視頻幀,盡管場景人物都不相同,但由于主要專注于需要雙手協(xié)調(diào)的運動,不論是“切芝士”還是“切番茄”被認(rèn)為是相同的動作,因此這些視頻幀均表示動作“切”。
圖4 EPIC-Kitchens數(shù)據(jù)集中的一些視頻幀
在對手部動作進(jìn)行初步識別時,為了驗證所采用的動作識別網(wǎng)絡(luò)的有效性,除了本文所介紹的動作識別網(wǎng)絡(luò),還采用了另外三種常用的與一種較新的動作識別模型來進(jìn)行評估與比較,結(jié)果如表3 所示,在沒有應(yīng)用抓取類型信息對動作進(jìn)行識別時,與其他的動作識別模型CNN3D[38]、LSTM[39]、Two-stream[40]、GFA(Gated Feature Aggregator)[41]與TSN(Temporal Segment Network,時序分割網(wǎng)絡(luò))[37]相比,所采用的I3D模型,在回調(diào)值以及F1 分?jǐn)?shù)均取得了最高分?jǐn)?shù),整體來看模型達(dá)到了最好的性能。在實驗過程中,CNN3D 與LSTM 這兩種模型僅僅是從RGB信息中直接提取空間特征與時序特征來識別分類動作,并且無法從光流數(shù)據(jù)中提取出時序特征,在很多情況下無法捕捉到手部的一些較為精細(xì)的動作。雖然Two-stream 方法較好地利用了視頻的光流數(shù)據(jù),能夠分別從空間特征與時序特征兩個方面對動作進(jìn)行預(yù)測并取平均,但該方法中的兩個網(wǎng)絡(luò)均采用2D CNN,在學(xué)習(xí)的過程中丟失了較多的時序信息,對于運動線索如何隨時間的演變不能很好地體現(xiàn),TSN是基于Two-stream 的改進(jìn),提升了長范圍時間結(jié)構(gòu)建模的能力,這兩種方法對時間維度的利用非常有限(空間網(wǎng)絡(luò)僅使用動作中的一幀RGB 圖像,而時序網(wǎng)絡(luò)采用10 幀光流圖像)。GFA模型主要是應(yīng)用視頻中動作特征與物體特征的融合來識別分類操作動作,給網(wǎng)絡(luò)模型提供了補(bǔ)充性信息,有效提升了識別效果,但由于場景遮擋,物體的特征提取難度較大。所采用的I3D模型,分別使用兩個3D CNN對RGB數(shù)據(jù)與光流數(shù)據(jù)中的空間特征與時序特征進(jìn)行有效提取,盡可能地利用到數(shù)據(jù)流中的動作特征信息,這個方法要優(yōu)于其他的方法,并取得了最好的結(jié)果。
為了驗證所提出的方法,即基于抓取方式理解操作行為的模型的有效性,在基于已知I3D網(wǎng)絡(luò)的優(yōu)越表現(xiàn)的條件下,比較了在應(yīng)用I3D網(wǎng)絡(luò)對動作初步識別后是否應(yīng)用抓取類型(GT,Grasp type)對動作識別性能的影響,結(jié)果如表3 最后一項所示。根據(jù)實驗結(jié)果,應(yīng)用抓取類型(GT)信息可以有效提升動作識別分類的性能,大約提升了7%的分類準(zhǔn)確度,證實了本文方法的可行性。
提出了基于手勢特征融合的操作動作識別方法,有效提升了操作動作的識別精度。從圖像中檢測識別抓取類型,并初步識別當(dāng)前手部動作,在此之后,探索抓取與動作之間的語義關(guān)系,從而促進(jìn)對動作的認(rèn)識,提升動作的識別分類準(zhǔn)確性。
通過實驗驗證了本文的想法:(1)抓取類型識別的平均準(zhǔn)確度達(dá)到了89.63%。(2)使用視覺信息對動作進(jìn)行初步識別時,準(zhǔn)確度達(dá)到了67.51%。(3)使用手勢類型語義信息后,動作識別分類的準(zhǔn)確性達(dá)到了74.67%,大約提升了7%的準(zhǔn)確率。實驗結(jié)果證明了本文的假設(shè),即抓取類型可以提供用于描述操作動作的補(bǔ)充信息。研究抓取類型與動作之間的關(guān)系的工作可以指出一個從視覺理解手部操作行為的重要方向。
在未來工作中,希望將當(dāng)前動作下手部所操縱的物體也納入手部操作行為理解的研究范圍,考慮共同使用抓取信息與物體信息作為描述操作行為的補(bǔ)充信息,探究三者間的關(guān)系,達(dá)到更好地理解場景中操作的行為與目的。