本發(fā)明涉及人體運動數(shù)據(jù)檢索方法,屬于計算機三維動畫技術(shù)及多媒體數(shù)據(jù)處理領(lǐng)域,具體地說,是一種基于姿態(tài)相對時空特征統(tǒng)計描述的人體運動數(shù)據(jù)檢索方法。
背景技術(shù):
由于各種應(yīng)用的迫切需要以及商業(yè)捕獲設(shè)備的廣泛推廣,目前已經(jīng)出現(xiàn)了越來越多的大型三維人體動作庫,如美國卡內(nèi)基梅隆大學(xué)的人體動作庫(http://mocap.cs.cmu.edu)等。如何從人體動作庫中獲取用戶所需要的人體運動數(shù)據(jù)已經(jīng)成為動作數(shù)據(jù)有效利用的關(guān)鍵問題,基于實例的檢索技術(shù)采用特征表示運動的內(nèi)容,通過特征之間的相似度度量實現(xiàn)內(nèi)容相似運動的匹配,較好地克服了傳統(tǒng)的基于文本標(biāo)注檢索方法的不足,已經(jīng)成為運動捕獲數(shù)據(jù)檢索領(lǐng)域的研究熱點。有效的特征表示及相應(yīng)的相似度匹配機制是基于實例的檢索的基本和關(guān)鍵問題。
特征要能夠?qū)\動的內(nèi)容進(jìn)行完整而有效的表示。在已有的姿態(tài)特征表示中,關(guān)節(jié)的三維坐標(biāo)及其編碼表示、四元數(shù)和歐拉角及其編碼表示是常用的表示方法,然而研究表明它們只適用于數(shù)值相似的運動數(shù)據(jù)檢索,并不能有效地表示由于風(fēng)格、持續(xù)時間等差異形成的邏輯相似的運動。Müller等人在文獻(xiàn)Müller M,et al.Efficient content based retrieval of motion capture data.ACM Transactions on Graphics,2005,24(3):677-685)中提出布爾幾何特征以實現(xiàn)邏輯相似的運動檢索,然而有限的特征數(shù)量及二值布爾狀態(tài)使得其對于細(xì)分的動作區(qū)分能力較差。潘紅等人在文獻(xiàn)潘紅,肖俊,吳飛等.基于關(guān)鍵幀的三維人體運動檢索[J],計算機輔助設(shè)計與圖形學(xué)學(xué)報,2009,21(2):214-222[77]中提出以四肢骨骼和中心骨骼之間的夾角作為姿態(tài)特征,然而存在著眾多和中心骨骼無關(guān)的局部動作。Tang等人在文獻(xiàn)Tang J T,et al.Retrieval of logically relevant 3D human motions by Adaptive Feature Selection with Graded Relevance Feedback[J].Pattern Recognition Letters,2012,33(4):420-430中指出相對位置關(guān)系是提取邏輯含義的有效表示,并使用關(guān)節(jié)對之間的距離作為姿態(tài)的特征表示,然而其忽略了直線和平面這兩個重要的幾何元素,此外,該特征不能直接表達(dá)關(guān)節(jié)旋轉(zhuǎn)內(nèi)容。Chen等人在文獻(xiàn)Chen C,et al.Perceptual 3D pose distance estimation by boosting relational geometric features[J].Computer Animation and Virtual Worlds,2009,20(2-3):267-277中定義了姿態(tài)相對幾何特征集以評價感知上姿態(tài)的相似性,然而不同關(guān)節(jié)形成的點、線、面的任意組合,使得特征數(shù)量達(dá)到了56萬多維,需要針對具體應(yīng)用加以合理約束以降低特征維數(shù)。
姿態(tài)是運動的構(gòu)成單元,一些研究者以姿態(tài)的特征表示為基礎(chǔ),通過降維以及聚類方法來獲取姿態(tài)的低維表示;通過矩陣奇異值分解、球諧變換、張量代數(shù)子空間分解以及關(guān)鍵幀技術(shù)獲取在更高層次上對運動片段的重新描述。然而在降維、聚類以及動作的二次特征提取距離計算中,反映運動內(nèi)容的姿態(tài)局部特征均分配了特定的權(quán)重,這些局部特征的權(quán)重并不能夠在檢索的過程中隨著檢索實例的不同進(jìn)行動態(tài)調(diào)整,導(dǎo)致了上述特征表示并不能有效地支持運動的局部空間檢索。
綜上所述,已有的運動內(nèi)容特征表示尚不能夠有效地支持運動數(shù)據(jù)檢索,本發(fā)明提出了一種基于姿態(tài)相對時空特征統(tǒng)計描述的運動數(shù)據(jù)實例檢索方法,在姿態(tài)時空相對特征內(nèi)容表示的基礎(chǔ)上,該方法進(jìn)一步采用統(tǒng)計描述提取動作的二次特征向量,在檢索的過程中,該方法還采用基于SVM相關(guān)反饋以提高檢索性能。與本發(fā)明方法比較接近的方法是文獻(xiàn)(陳松樂等.民族舞蹈運動數(shù)據(jù)的實例檢索方法.計算機輔助設(shè)計與圖形學(xué)學(xué)報,2014,26(2):198-210)和文獻(xiàn)(Songle Chen,et al.Relevance Feedback for Human Motion Retrieval Using a Boosting Approach.Multimedia tools and applications,2016,75(2):787-817)中提出的方法,然而這兩種方法均直接以姿態(tài)相對時空特征作為特征表示,并采用動態(tài)時間彎曲算法作為動作的相似度計算方法,計算復(fù)雜度太高,難以滿足大規(guī)模運動捕獲數(shù)據(jù)庫檢索的性能需求。
技術(shù)實現(xiàn)要素:
發(fā)明目的:本發(fā)明所要解決的技術(shù)問題是針對現(xiàn)有技術(shù)的不足,提出了一種基于姿態(tài)相對時空特征統(tǒng)計描述的運動數(shù)據(jù)檢索方法。
技術(shù)方案:本發(fā)明公開的一種基于姿態(tài)相對時空特征統(tǒng)計描述的運動數(shù)據(jù)檢索方法,包括以下步驟:
步驟1,三維姿態(tài)相對時空特征提取:三維姿態(tài)中關(guān)節(jié)形成的點、線、面幾何元素集合是不同動作模式對應(yīng)的局部區(qū)域的最小構(gòu)成單元。本發(fā)明提取三維姿態(tài)中關(guān)節(jié)形成的點、線、面幾何元素之間的相對空間位置及其變化的度量作為姿態(tài)的特征表示,通過不同局部區(qū)域包含的不同類型特征的權(quán)重組合,來表達(dá)廣泛的姿態(tài)模式。對于庫中所有動作包含的每個姿態(tài),其相對時空特征提取具體步驟如下:
1)定義三維人體關(guān)節(jié)模型,選擇其中最重要的若干個關(guān)節(jié)作為三維姿態(tài)表示;
2)構(gòu)建幾何元素集合,選擇的關(guān)節(jié)構(gòu)成了幾何元素集合中的點集,點集中任意2點形成直線,任意3點則構(gòu)成平面;
3)提取每個三維姿態(tài)相對空間特征,包括關(guān)節(jié)對距離特征、關(guān)節(jié)與骨骼距離特征、關(guān)節(jié)與平面距離特征、骨骼對夾角特征、骨骼與平面夾角特征、平面與平面夾角特征、關(guān)節(jié)旋轉(zhuǎn)特征;
4)提取每個三維姿態(tài)相對時間特征,包括關(guān)節(jié)角速度與加速度特征。
步驟2,動作統(tǒng)計描述生成:動作由若干個姿態(tài)連續(xù)變化而成,本發(fā)明提取姿態(tài)相對時空特征的統(tǒng)計描述作為動作的特征向量表示,選擇的統(tǒng)計量包括,均值、極差、方差以及偏態(tài)共4個統(tǒng)計變量。對于庫中的每個動作,動作統(tǒng)計描述生成的具體步驟如下:
1)裝載動作中包含的每個三維姿態(tài)的相對時空特征,并把每個特征作為一維隨機變量,動作中的每個姿態(tài)對應(yīng)了該隨機變量的取值;
2)計算每個相對時空特征的均值;
3)計算每個相對時空特征的極差;
4)計算每個相對時空特征的方差;
5)計算每個相對時空特征的偏態(tài);
6)將每個相對時空特征提取的均值、極差、方差、偏態(tài)歸一化后按順序進(jìn)行排列并保存,形成每個動作的特征向量表示。
步驟3,相似度匹配:采用步驟1和步驟2提取用戶提交的檢索動作實例的特征描述,并進(jìn)而采用歐式距離計算庫中動作和檢索動作的相似程度,對最終相似度由高到低排序后將結(jié)果動作返回。相似度匹配過程具體步驟如下:
1)用戶提交檢索動作實例;
2)采用步驟1和步驟2計算用戶提交的檢索動作的相對時空特征統(tǒng)計描述;
3)對于庫中的每個動作,基于相對時空特征統(tǒng)計描述,采用歐式距離計算和用戶提交的檢索動作的距離,每個特征的權(quán)重相同;
4)對庫中每個動作和用戶提交的檢索動作的距離進(jìn)行排序;
5)將距離最小的Top-20個動作返回給用戶。
步驟4,相關(guān)反饋:步驟3的相似度計算中每個特征都采用了相同的權(quán)重。實際上對于用戶的每一次檢索都存在著一個特定的特征子集及其權(quán)重組合,使得檢索的性能達(dá)到最優(yōu)。為了更好的捕捉用戶的檢索意圖并逐步逼近最優(yōu)的特征子集及其權(quán)重組合,本發(fā)明通過支持向量機(SVM-Support Vector Machine)相關(guān)反饋方法來優(yōu)化檢索結(jié)果,基于SVM的相關(guān)反饋具體步驟如下:
1)對于步驟3或者上一輪相關(guān)反饋的結(jié)果,用戶標(biāo)注返回實例和其提交的檢索動作是否相關(guān);
2)將用戶標(biāo)注的和其提交檢索動作相關(guān)的樣本作為正例樣本,將用戶標(biāo)注的和其提交檢索動作不相關(guān)的樣本作為反例樣本;
3)選擇線性核,采用SVM對正反例樣本進(jìn)行學(xué)習(xí),得到SVM分類模型;
4)依次將庫中的每個動作輸入到SVM分類模型,計算得分;
5)對得分進(jìn)行排序,將得分最高的Top-20個動作返回給用戶;
6)如果用戶對結(jié)果滿意,則檢索過程結(jié)束,否則返回步驟1),進(jìn)行下一輪反饋。
有益效果
1)本發(fā)明采用姿態(tài)時空相對特征作為三維姿態(tài)描述,該特征描述提取姿態(tài)中關(guān)節(jié)形成的點、線、面幾何元素之間的相對空間位置及其變化的度量作為動作內(nèi)容表示。關(guān)節(jié)形成的點、線、面幾何元素集合是不同動作模式對應(yīng)的局部區(qū)域的最小構(gòu)成單元,而點、線、面幾何元素之間的角度與距離等度量從不同方面反映了最小構(gòu)成單元之間的相對空間位置關(guān)系,通過不同局部區(qū)域包含的不同類型特征的權(quán)重組合能夠表達(dá)廣泛的動作模式。
2)本發(fā)明采用三維姿態(tài)時空相對特征的統(tǒng)計描述作為動作的特征表示,均值、極差、方差、偏態(tài)統(tǒng)計變量反映了每個特征在動作中的基準(zhǔn)與變化情況,能夠有效表達(dá)動作運動內(nèi)容。同時,統(tǒng)計描述將時間上不同長度的動作統(tǒng)一轉(zhuǎn)換為統(tǒng)一長度的特征向量,因此可以使用歐式距離以及線性SVM等方法來進(jìn)行相似度計算和相關(guān)反饋,極大地提高了計算效率和檢索的有效性。
3)本發(fā)明采用線性SVM進(jìn)行相關(guān)反饋以進(jìn)一步提高檢索性能,SVM本身具有小樣本學(xué)習(xí)泛化能力好的優(yōu)點,因此可以克服由于用戶標(biāo)注的樣本量的不足而導(dǎo)致的一般學(xué)習(xí)方法泛化能力差的問題。而采用線性核函數(shù)使得可以根據(jù)分類模型中每個特征的權(quán)重解釋對于本次檢索每個特征的不同重要程序,提高了檢索結(jié)果的可解釋性。
附圖說明
圖1為本發(fā)明的方法流程圖。
圖2為本發(fā)明中使用的人體關(guān)節(jié)模型示意圖。
圖3為本發(fā)明定義的相對時空特征示意圖。
圖4為實施例通過相似度匹配獲得的對檢索輸入動作“跳”的檢索結(jié)果。
圖5為實施例通過SVM相關(guān)反饋對檢索動作“跳”進(jìn)行檢索4次迭代后的結(jié)果。
具體實施方式
下面結(jié)合附圖和具體實施方式對本發(fā)明做更進(jìn)一步的具體說明。
一種基于姿態(tài)相對時空特征統(tǒng)計描述的運動數(shù)據(jù)檢索方法,包括以下步驟:
步驟1,三維姿態(tài)相對時空特征提?。喝S姿態(tài)中關(guān)節(jié)形成的點、線、面幾何元素集合是不同動作模式對應(yīng)的局部區(qū)域的最小構(gòu)成單元。本發(fā)明提取三維姿態(tài)中關(guān)節(jié)形成的點、線、面幾何元素之間的相對空間位置及其變化的度量作為姿態(tài)的特征表示,通過不同局部區(qū)域包含的不同類型特征的權(quán)重組合,姿態(tài)時空相對特征能夠表達(dá)廣泛的姿態(tài)模式。對于庫中所有動作包含的每個姿態(tài),其相對時空特征提取具體步驟如下:
1)定義三維人體關(guān)節(jié)模型,本發(fā)明采用的三維人體關(guān)節(jié)模型如圖2所示,共包含了18個關(guān)節(jié)。根據(jù)每個關(guān)節(jié)在采樣時刻的具體平移或者旋轉(zhuǎn)數(shù)值,計算出采樣時刻每個關(guān)節(jié)的三維坐標(biāo)(x,y,z);
2)構(gòu)建幾何元素集合,選擇的關(guān)節(jié)構(gòu)成了幾何元素集合中的點集,點集中任意2點形成直線,任意3點則構(gòu)成平面。本發(fā)明對直線和平面這兩個幾何元素進(jìn)行合理的約束,只考慮相鄰關(guān)節(jié)形成的直線與平面以約減姿態(tài)特征的維數(shù),最終的姿態(tài)幾何元素集合中共包含了17條骨骼形成的直線,以及相鄰關(guān)節(jié)形成的10個平面;
3)提取每個三維姿態(tài)相對空間特征,包括關(guān)節(jié)對距離特征、關(guān)節(jié)與骨骼距離特征、關(guān)節(jié)與平面距離特征、骨骼對夾角特征、骨骼與平面夾角特征、平面與平面夾角特征、關(guān)節(jié)旋轉(zhuǎn)特征。提取的三維姿態(tài)相對空間特征如圖3所示,具體計算過程如下;
a)關(guān)節(jié)對距離特征Fj,j,d,本發(fā)明使用歐氏距離計算幾何元素集合中關(guān)節(jié)對之間的距離,設(shè)姿態(tài)中關(guān)節(jié)j1、j2的三維坐標(biāo)分別為(x1,y1,z1)、(x2,y2,z2),則關(guān)節(jié)對之間的距離計算公式為:
b)關(guān)節(jié)與骨骼距離特征Fj,l,d,關(guān)節(jié)到骨骼的距離通過三角形面積公式來計算,設(shè)d12、d13、d23分別為關(guān)節(jié)j1、j2、j3之間的距離,p=(d12+d23+d13)/2,則關(guān)節(jié)j1與關(guān)節(jié)j2、j3形成的直線之間的距離為:
Fj,l,d=2p(p-d12)(p-d13)(p-d23)/d23;
c)關(guān)節(jié)與平面距離特征Fj,p,d,關(guān)節(jié)到平面的距離通過關(guān)節(jié)和平面上任意一點形成的向量和平面法向量之間的點積求得,設(shè)n為關(guān)節(jié)j2、j3、j4形成的平面的法向量,v為關(guān)節(jié)j1、j3形成的向量,則關(guān)節(jié)j1到j(luò)2、j3、j4形成的平面的距離為:
Fj,p,d=n·v/||n||;
d)骨骼對夾角特征Fl,l,a,骨骼與骨骼的夾角通過向量點積公式來計算,若關(guān)節(jié)j1、j2形成向量va,關(guān)節(jié)j3、j4形成向量vb,則骨骼之間的夾角計算公式為:
Fl,l,a=arccos(va·vb/(||va||×||vb||));
e)骨骼與平面夾角特征Fl,p,a,骨骼與平面之間的夾角通過骨骼與平面法向量的點積公式進(jìn)行計算,設(shè)n為關(guān)節(jié)j3、j4、j5形成的平面P的法向量,v為關(guān)節(jié)j1、j2形成的向量,則關(guān)節(jié)j1、j2形成的骨骼與P的夾角為:
Fl,p,a=arccos(n·v/(||n||×||v||));
f)平面與平面夾角特征Fp,p,a,平面與平面之間的夾角通過平面的法向量的點積公式進(jìn)行計算,設(shè)n1為關(guān)節(jié)j1、j2、j3形成的平面P1的法向量,n2為關(guān)節(jié)j4、j5、j6形成的平面P2的法向量,則P1與P2的夾角為:
Fp,p,a=arccos(n1·n2/(||n1||×||n2||));
g)關(guān)節(jié)旋轉(zhuǎn)特征Feuler,以上姿態(tài)空間特征只有一維信息,并不能反映三維的相鄰關(guān)節(jié)旋轉(zhuǎn)信息,本發(fā)明選用歐拉角表示相鄰關(guān)節(jié)的旋轉(zhuǎn)信息。
4)提取每個三維姿態(tài)相對時間特征,包括關(guān)節(jié)角速度與加速度特征。本發(fā)明采用Kim等人在文獻(xiàn)Kim T H,Park S I,Shin S Y.Rhythmic-motion synthesis based on motion-beat analysis[J].Acm Transactions on Graphics,2003,22(3):392-401中提出的方法來計算關(guān)節(jié)的角速度與加速度。提取的角速度與加速度特征示意圖如圖3所示。假設(shè)關(guān)節(jié)j在時刻i-1和i的旋轉(zhuǎn)用四元數(shù)分別表示為qj(i-1)和qj(i),采樣間隔時間為Δt。
a)關(guān)節(jié)j在時刻i的角速度為:
b)在計算出角速度后,加速度可以根據(jù)角速度的變化求得,即:
步驟2,動作統(tǒng)計描述生成:動作由若干個姿態(tài)連續(xù)變化而成,本發(fā)明提取姿態(tài)相對時空特征的統(tǒng)計描述作為動作的特征向量表示,選擇的統(tǒng)計量包括,均值、極差、方差以及偏態(tài)共4個統(tǒng)計變量。對于庫中的每個動作,動作統(tǒng)計描述生成的具體步驟如下:
1)裝載動作中包含的每個三維姿態(tài)的相對時空特征,并把每個特征作為一維隨機變量,動作中的每個姿態(tài)對應(yīng)了該隨機變量的取值,n為動作中包含的姿態(tài)數(shù),動作中包含的n個姿態(tài)關(guān)于一個姿態(tài)相對時空特征的取值為x1,x2,...,xn;
2)計算每個相對時空特征的均值:
3)計算每個相對時空特征的極差:
r=max(x1,x2,…,xn)-min(x1,x2,…,xn);
4)計算每個相對時空特征的方差:
5)計算每個相對時空特征的偏態(tài),偏態(tài)是數(shù)據(jù)分布形狀的度量,計算方法為:
6)將每個相對時空特征提取的均值、極差、方差、偏態(tài),進(jìn)行歸一化處理,然后按順序進(jìn)行排列并保存,形成每個動作的特征向量表示。
步驟3,相似度匹配:采用步驟1和步驟2提取用戶提交的檢索動作實例的特征描述,并進(jìn)而采用歐式距離計算庫中動作和檢索動作的相似程度,對最終相似度由高到低排序后將結(jié)果動作返回。相似度匹配過程具體步驟如下:
1)用戶提交檢索動作實例;
2)采用步驟1和步驟2計算用戶提交的檢索動作的相對時空特征統(tǒng)計描述;
3)對于庫中的每個動作,基于相對時空特征統(tǒng)計描述,采用歐式距離計算和用戶提交的檢索動作的距離,每個特征的權(quán)重相同。設(shè)用戶的檢索動作為i,庫中的候選動作為j,Nf為三維姿態(tài)相對時空特征總數(shù),fi,k,l和fj,k,l分別為動作i和動作j關(guān)于姿態(tài)相對時空特征f的統(tǒng)計描述k的取值,則檢索動作為i和庫中的候選動作為j之間的距離具體計算方法為:
4)對庫中每個動作和用戶提交的檢索動作的距離進(jìn)行排序;
5)將距離最小的Top-20個動作返回給用戶。
步驟4,相關(guān)反饋:步驟3的相似度計算中每個特征都采用了相同的權(quán)重。實際上對于用戶的每一次檢索都存在著一個特定的特征子集及其權(quán)重組合,使得檢索的性能達(dá)到最優(yōu)。為了更好的捕捉用戶的檢索意圖并逐步逼近最優(yōu)的特征子集及其權(quán)重組合,本發(fā)明通過支持向量機(SVM-Support Vector Machine)相關(guān)反饋方法來優(yōu)化檢索結(jié)果,基于SVM的相關(guān)反饋具體步驟如下:
1)對于步驟3或者上一輪相關(guān)反饋的結(jié)果,用戶標(biāo)注返回實例和其提交的檢索動作是否相關(guān);
2)將用戶標(biāo)注的和其提交檢索動作相關(guān)的樣本作為正例樣本,將用戶標(biāo)注的和其提交檢索動作不相關(guān)的樣本作為反例樣本;
3)選擇線性核,采用SVM對正反例樣本進(jìn)行學(xué)習(xí),得到SVM分類模型;
4)依次將庫中的每個動作輸入到SVM分類模型,計算得分;
5)對得分進(jìn)行排序,將得分最高的Top-20個動作返回給用戶;
6)如果用戶對結(jié)果滿意,則檢索過程結(jié)束,否則返回步驟1),進(jìn)行下一輪反饋。
使用本方案實現(xiàn)的運動檢索系統(tǒng)對“跳”動作進(jìn)行檢索的效果如圖4和圖5所示,圖4為使用相似度匹配的結(jié)果,由于每個特征都使用相同的權(quán)重,特征的權(quán)重組合并沒有經(jīng)過優(yōu)化,所以在首頁顯示的9個檢索結(jié)果動作中,只有4個是相關(guān)的。圖5為經(jīng)過線性SVM相關(guān)反饋4次迭代后的結(jié)果,通過在線學(xué)習(xí)分類模型優(yōu)化特征權(quán)重組合,檢索性能得到了明顯的提高,在首頁顯示9個檢索結(jié)果動作全部為相關(guān)動作。
本發(fā)明提供了一種基于姿態(tài)相對時空特征統(tǒng)計描述的運動數(shù)據(jù)檢索方法,具體實現(xiàn)該技術(shù)方案的方法和途徑很多,以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。本實施例中未明確的各組成部分均可用現(xiàn)有技術(shù)加以實現(xiàn)。