專利名稱:一種基于視頻內(nèi)容的人體姿態(tài)變形方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域,特別是一種基于視頻內(nèi)容的人體姿態(tài)變形方法。
背景技術(shù):
從二維的視頻中獲取三維的人體姿態(tài)信息是計(jì)算機(jī)視覺(jué)、模式識(shí)別、虛擬現(xiàn)實(shí)、智能人機(jī)接口領(lǐng)域的熱點(diǎn)和難點(diǎn)問(wèn)題。在本文中,按照慣例,我們統(tǒng)一將二維簡(jiǎn)寫為2D,三維簡(jiǎn)寫為3D。
在已知初始人體姿態(tài)3D信息的前提下,如何根據(jù)視頻內(nèi)容對(duì)初始姿態(tài)進(jìn)行變形,從而得到視頻中對(duì)應(yīng)的3D信息是其中一個(gè)非常重要的子問(wèn)題,它不僅具有重要的研究意義,而且在游戲、關(guān)鍵幀3D動(dòng)畫、以及基于實(shí)例數(shù)據(jù)的3D信息獲取等方面具有廣闊的應(yīng)用前景。例如,在基于視頻的人體運(yùn)動(dòng)分析領(lǐng)域,我們只要有一個(gè)小樣本的3D人體姿態(tài)庫(kù),就可以根據(jù)視頻圖像,恢復(fù)出對(duì)應(yīng)的人體姿態(tài)信息。再如,在動(dòng)畫領(lǐng)域中,只要給定一個(gè)小樣本的2D關(guān)鍵幀及其對(duì)應(yīng)的3D姿態(tài)信息,就可以將所有2D動(dòng)畫幀的3D信息恢復(fù)出來(lái),輕松的實(shí)現(xiàn)3D動(dòng)畫的效果。
因此,基于視頻內(nèi)容的人體姿態(tài)變形技術(shù)不僅有重大的理論意義,也具有廣泛的應(yīng)用領(lǐng)域以及重要的實(shí)用價(jià)值。但是,在國(guó)內(nèi)外的現(xiàn)有的基于視頻的運(yùn)動(dòng)分析以及重構(gòu)軟件中,都沒(méi)有提供基于視頻內(nèi)容的人體姿態(tài)變形技術(shù)功能。在進(jìn)行相關(guān)的專利檢索時(shí),也沒(méi)有檢索到任何相關(guān)專利的信息。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于視頻內(nèi)容的人體姿態(tài)變形方法,實(shí)現(xiàn)在已知初始3D姿態(tài)的情況下,根據(jù)視頻內(nèi)容,對(duì)3D姿態(tài)進(jìn)行變形,從而恢復(fù)視頻中對(duì)應(yīng)的人體3D姿態(tài)信息。
為了實(shí)現(xiàn)上述目的,本發(fā)明提供了一種基于視頻內(nèi)容的人體姿態(tài)變形方法,用于在已知初始人體三維姿態(tài)信息的基礎(chǔ)上,根據(jù)視頻中人體信息內(nèi)容,將初始人體3D姿態(tài)根據(jù)視頻內(nèi)容進(jìn)行變形,從而求取出視頻中對(duì)應(yīng)的3D人體結(jié)構(gòu)信息;該方法包括以下步驟1)根據(jù)視頻內(nèi)容定制3D人體模型;2)將3D人體姿態(tài)(表面幾何模型描述)在2D平面上投影,生成2D模型輪廓,并用采樣點(diǎn)集表示;3)將3D人體姿態(tài)(骨架模型描述)在2D平面上投影,生成2D模型骨架;4)提取視頻中人體輪廓信息,并用采樣點(diǎn)集表示;5)建立視頻輪廓與模型輪廓的點(diǎn)集對(duì)應(yīng)關(guān)系;6)將模型輪廓中的2D骨架移植到視頻輪廓;7)恢復(fù)視頻中人體的3D結(jié)構(gòu)參數(shù)。
上述技術(shù)方案中,步驟5)中的求取視頻輪廓與模型輪廓的點(diǎn)集對(duì)應(yīng)關(guān)系是這樣實(shí)現(xiàn)的計(jì)算輪廓中每一個(gè)點(diǎn)的形狀上下文,即建立該點(diǎn)與該輪廓中所有其它點(diǎn)的用距離和角度表示的度量;以形狀上下文(shape context)為度量特征點(diǎn)相似性的標(biāo)準(zhǔn),兩個(gè)輪廓中形狀上下文最近似的兩個(gè)特征點(diǎn)即為匹配的特征點(diǎn),從而建立模型輪廓與視頻輪廓的點(diǎn)集對(duì)應(yīng)關(guān)系。
上述技術(shù)方案中,步驟6)中將模型輪廓中的2D骨架移植到視頻輪廓是這樣實(shí)現(xiàn)的確定2D骨架的各個(gè)關(guān)節(jié)點(diǎn)的支持集;通過(guò)建立的兩個(gè)輪廓之間的點(diǎn)集對(duì)應(yīng)關(guān)系,確定2D關(guān)節(jié)點(diǎn)的各個(gè)支持集的仿射變換關(guān)系;將模型輪廓的2D骨架的關(guān)節(jié)點(diǎn)位置進(jìn)行與其支持集所確定的仿射變換同樣的變換,變換結(jié)果即為視頻輪廓的2D骨架關(guān)節(jié)點(diǎn)位置。
上述技術(shù)方案中,步驟7)中恢復(fù)視頻中人體的3D結(jié)構(gòu)參數(shù)是這樣實(shí)現(xiàn)的只需要對(duì)已知的初始3D人體骨架進(jìn)行變換即可。
所述的對(duì)已知的初始3D人體骨架進(jìn)行變換是這樣實(shí)現(xiàn)的保持原數(shù)據(jù)的深度Z方向的數(shù)據(jù)不變,對(duì)X、Y方向的數(shù)據(jù)進(jìn)行與前面確定的,與其投影的2D關(guān)節(jié)點(diǎn)一樣的仿射變換。
本發(fā)明的優(yōu)點(diǎn)在于1、本發(fā)明方法實(shí)現(xiàn)了對(duì)基于視頻內(nèi)容的人體姿態(tài)變形方法,不僅具有重要的理論意義,而且具有廣泛的應(yīng)用范圍和重要的使用價(jià)值。
2、本發(fā)明方法可用于各種類型的運(yùn)動(dòng)對(duì)象,具有良好的通用性。
3、本發(fā)明僅需要簡(jiǎn)單高效的二維運(yùn)算,可以達(dá)到實(shí)時(shí)的效果。
圖1為基于視頻內(nèi)容的人體姿態(tài)變形技術(shù)流程圖。
具體實(shí)施例方式
下面結(jié)合附圖,對(duì)本發(fā)明所述方法進(jìn)行進(jìn)一步地說(shuō)明。
如圖1所示,為本實(shí)施例方法的流程圖,流程圖中虛線框內(nèi)表示操作,實(shí)線框內(nèi)表示相關(guān)操作得到的結(jié)果。
本發(fā)明的一種基于視頻內(nèi)容的人體姿態(tài)變形技術(shù)主要分成以下步驟步驟1.根據(jù)視頻內(nèi)容定制3D人體模型;步驟2.將步驟10定制的3D人體姿態(tài)(表面幾何模型描述)在2D平面上投影,生成2D模型輪廓,并用采樣點(diǎn)集表示;a1、通過(guò)上一步定制的3D人體模型,對(duì)3D姿態(tài)數(shù)據(jù)用表面幾何模型描述;b1、從給定視頻中確定人體姿態(tài)顯示的視角,并用該視角將用表面幾何模型描述的3D姿態(tài)在2D平面上投影,生成2D模型輪廓;
c1、將生成的2D模型輪廓用輪廓邊界的采樣點(diǎn)表示(例如采樣200個(gè)點(diǎn));步驟3.將3D人體姿態(tài)(骨架模型描述)在2D平面上投影,生成2D模型骨架。采用上一步驟從視頻中求取的視角信息,將用骨架模型描述的3D姿態(tài)在2D平面上投影,生成用2D關(guān)節(jié)點(diǎn)位置表示的2D模型骨架;步驟4.提取視頻中人體輪廓信息,并用采樣點(diǎn)集表示。提取視頻中人體輪廓的方法很多,我們采用簡(jiǎn)單的背景剪除的方法;同時(shí),將視頻輪廓用輪廓邊界的采樣點(diǎn)表示(例如采樣200個(gè)點(diǎn)),采樣的點(diǎn)數(shù)應(yīng)與模型輪廓的采樣點(diǎn)數(shù)相同;步驟5.建立視頻輪廓與模型輪廓的點(diǎn)集對(duì)應(yīng)關(guān)系。建立輪廓點(diǎn)集之間的對(duì)應(yīng)關(guān)系是采用形狀上下文(Shape Context)方法實(shí)現(xiàn)的;利用形狀上下文(Shape Context)方法建立點(diǎn)集合中特征點(diǎn)的對(duì)應(yīng)關(guān)系的具體步驟為a2、對(duì)于每一個(gè)特征點(diǎn),建立以該點(diǎn)位置為原點(diǎn)的,以該輪廓中所有其它特征點(diǎn)為終點(diǎn)的矢量的集合;b2、將以上矢量集合按照角度空間和??臻g分別劃分為12和5份,然后統(tǒng)計(jì)分別落在以上劃分空間內(nèi)的矢量的數(shù)目,用此信息做成一個(gè)12*5的直方圖。該直方圖就稱為形狀上下文(Shape Context);c2、由b2步驟,可以建立采樣點(diǎn)集中每一個(gè)特征點(diǎn)的形狀上下文;d2、將特征點(diǎn)的形狀上下文用一個(gè)60維的向量表示,則可以用歐氏距離作為集合中特征點(diǎn)的形狀上下文與給定特征點(diǎn)的形狀上下文的距離度量例如,設(shè)(x1,x2,...,x60)與(y1,y2,...,y60)為分別為兩個(gè)特征點(diǎn)的形狀上下文,則兩點(diǎn)間形狀上下文的歐氏距離為(x1-y1)2+(x2-y2)2+,...,+(x60-y60)2.]]>形狀上下文之間距離最近的特征點(diǎn)即為與給定特征點(diǎn)最近似的特征點(diǎn)。按此方法,可以建立兩個(gè)特征點(diǎn)集的點(diǎn)對(duì)應(yīng)關(guān)系。
步驟6、將模型輪廓中的2D骨架移植到視頻輪廓。將模型輪廓中的2D骨架移植到視頻輪廓是這樣實(shí)現(xiàn)的
a3、確定2D骨架的各個(gè)關(guān)節(jié)點(diǎn)的支持集;所謂支持集,就是以關(guān)節(jié)點(diǎn)為圓心,以R(自定義)為半徑的圓型區(qū)域內(nèi)的特征點(diǎn)的集合,支持集為特征點(diǎn)集的子集;b3、求取模型輪廓與視頻輪廓之間各個(gè)對(duì)應(yīng)2D關(guān)節(jié)點(diǎn)的支持集的二維仿射變換關(guān)系;形式為x′=axxx+axyy+bx,y′=ayxx+ayyy+by的坐標(biāo)變換稱為二維仿射變換(affine transformation)。變換的坐標(biāo)x′和y′都是原始坐標(biāo)x和y的線性函數(shù)。參數(shù)aij和bk是由變換類型確定的常數(shù)。
在已知對(duì)應(yīng)點(diǎn)集[(x1,y1),(x2,y2),(x3,y3),...,(xn,yn)]和[(x′1,y′1),(x′2,y′2),(x′3,y′3),...,(x′n,y′n)]的情況下,用最小二乘法求解下列超定方程即可求取對(duì)應(yīng)的仿射變換x′1=axxx1+axyy1+bxy′1=ayxx1+ayyy1+byx′2=axxx2+axyy2+bxy′2=ayxx2+ayyy2+by···x′n=axxxn+axyyn+bxy′n=ayxxn+ayyyn+by]]>c3、將模型輪廓的2D骨架的關(guān)節(jié)點(diǎn)位置進(jìn)行與其支持集所確定的仿射變換同樣的變換,變換結(jié)果即為視頻輪廓的2D骨架關(guān)節(jié)點(diǎn)位置。
步驟7、恢復(fù)視頻中人體的3D結(jié)構(gòu)參數(shù)。通過(guò)對(duì)已知的初始3D人體(模型)姿態(tài)進(jìn)行變換即可a4、保持初始3D(模型)姿態(tài)數(shù)據(jù)的深度Z方向的數(shù)據(jù)不變;b4、對(duì)初始3D(模型)姿態(tài)數(shù)據(jù)的X、Y方向的數(shù)據(jù)進(jìn)行與前面確定的,與其投影后對(duì)應(yīng)的2D關(guān)節(jié)點(diǎn)一樣的仿射變換。
具體操作如下設(shè)(xo,yo,zo)為初始姿態(tài)的關(guān)節(jié)點(diǎn)位置,(x′o,y′o)為該關(guān)節(jié)點(diǎn)在2D平面的投影位置(平行投影),其對(duì)應(yīng)于模型骨架中的關(guān)節(jié)點(diǎn)位置;(x′t,y′t)為將(x′o,y′o)仿射變換以后的坐標(biāo),其對(duì)應(yīng)于估計(jì)的視頻骨架的關(guān)節(jié)點(diǎn)位置。
即x′t=axxx′o+axyy′o+bx,y′t=ayxx′o+ayyy′o+by因?yàn)椴捎玫氖欠律渫队澳P?平行投影),所以,(xo,yo,zo)與(x′o,y′o),(xt,yt,zt)與(x′t,y′t)之間保持下列關(guān)系成立xo=kxo′yo=kyo′,]]>xt=kxt′yt=kyt′]]>(k為已知縮放因子)。
則,與(x′t,y′t)對(duì)應(yīng)的三維坐標(biāo)(xt,yt,zt)為
權(quán)利要求
1.一種基于視頻內(nèi)容的人體姿態(tài)變形方法,用于在已知初始人體三維姿態(tài)信息的基礎(chǔ)上,根據(jù)視頻中人體信息內(nèi)容,將初始人體3D姿態(tài)根據(jù)視頻內(nèi)容進(jìn)行變形,從而求取出視頻中對(duì)應(yīng)的3D人體結(jié)構(gòu)信息;該方法包括以下步驟1)根據(jù)視頻內(nèi)容定制3D人體模型;2)將3D人體姿態(tài)在2D平面上投影,生成2D模型輪廓,并用采樣點(diǎn)集表示;3)將3D人體姿態(tài)在2D平面上投影,生成2D模型骨架;4)提取視頻中人體輪廓信息,并用采樣點(diǎn)集表示;5)建立視頻輪廓與模型輪廓的點(diǎn)集對(duì)應(yīng)關(guān)系;6)將模型輪廓中的2D骨架移植到視頻輪廓;7)恢復(fù)視頻中人體的3D結(jié)構(gòu)參數(shù)。
2.根據(jù)權(quán)利要求1所述的基于視頻內(nèi)容的人體姿態(tài)變形方法,其特征在于,步驟5)中的求取視頻輪廓與模型輪廓的點(diǎn)集對(duì)應(yīng)關(guān)系是這樣實(shí)現(xiàn)的計(jì)算輪廓中每一個(gè)點(diǎn)的形狀上下文,即建立該點(diǎn)與該輪廓中所有其它點(diǎn)的用距離和角度表示的度量;以形狀上下文為度量特征點(diǎn)相似性的標(biāo)準(zhǔn),兩個(gè)輪廓中形狀上下文最近似的兩個(gè)特征點(diǎn)即為匹配的特征點(diǎn),從而建立模型輪廓與視頻輪廓的點(diǎn)集對(duì)應(yīng)關(guān)系。
3.根據(jù)權(quán)利要求1所述的基于視頻內(nèi)容的人體姿態(tài)變形方法,其特征在于,步驟6)中將模型輪廓中的2D骨架移植到視頻輪廓是這樣實(shí)現(xiàn)的確定2D骨架的各個(gè)關(guān)節(jié)點(diǎn)的支持集;通過(guò)建立的兩個(gè)輪廓之間的點(diǎn)集對(duì)應(yīng)關(guān)系,確定2D關(guān)節(jié)點(diǎn)的各個(gè)支持集的仿射變換關(guān)系;將模型輪廓的2D骨架的關(guān)節(jié)點(diǎn)位置進(jìn)行與其支持集所確定的仿射變換同樣的變換,變換結(jié)果即為視頻輪廓的2D骨架關(guān)節(jié)點(diǎn)位置。
4.根據(jù)權(quán)利要求1所述的基于視頻內(nèi)容的人體姿態(tài)變形方法,其特征在于,步驟7)中恢復(fù)視頻中人體的3D結(jié)構(gòu)參數(shù)是這樣實(shí)現(xiàn)的只需要對(duì)已知的初始3D人體骨架進(jìn)行變換即可。
5.根據(jù)權(quán)利要求4所述的基于視頻內(nèi)容的人體姿態(tài)變形方法,其特征在于,所述的對(duì)已知的初始3D人體骨架進(jìn)行變換是這樣實(shí)現(xiàn)的保持原數(shù)據(jù)的深度Z方向的數(shù)據(jù)不變,對(duì)X、Y方向的數(shù)據(jù)進(jìn)行與前面確定的,與其投影的2D關(guān)節(jié)點(diǎn)一樣的仿射變換。
6.根據(jù)權(quán)利要求2所述的基于視頻內(nèi)容的人體姿態(tài)變形方法,其特征在于,所述的利用形狀上下文方法建立點(diǎn)集合中特征點(diǎn)的對(duì)應(yīng)關(guān)系的具體步驟為a2、對(duì)于每一個(gè)特征點(diǎn),建立以該點(diǎn)位置為原點(diǎn)的,以該輪廓中所有其它特征點(diǎn)為終點(diǎn)的矢量的集合;b2、將以上矢量集合按照角度空間和??臻g分別劃分為12和5份,然后統(tǒng)計(jì)分別落在以上劃分空間內(nèi)的矢量的數(shù)目,用此信息做成一個(gè)12*5的直方圖;c2、由b2步驟,可以建立采樣點(diǎn)集中每一個(gè)特征點(diǎn)的形狀上下文;d2、將特征點(diǎn)的形狀上下文用一個(gè)60維的向量表示,則可以用歐氏距離作為集合中特征點(diǎn)的形狀上下文與給定特征點(diǎn)的形狀上下文的距離度量設(shè)(x1,x2,...,x60)與(y1,y2,...,y60)為分別為兩個(gè)特征點(diǎn)的形狀上下文,則兩點(diǎn)間形狀上下文的歐氏距離為(x1-y1)2+(x2-y2)2+,···,+(x60-y60)2;]]>形狀上下文之間距離最近的特征點(diǎn)即為與給定特征點(diǎn)最近似的特征點(diǎn),按此方法,可以建立兩個(gè)特征點(diǎn)集的點(diǎn)對(duì)應(yīng)關(guān)系。
7.根據(jù)權(quán)利要求1所述的基于視頻內(nèi)容的人體姿態(tài)變形方法,其特征在于,步驟6)、將模型輪廓中的2D骨架移植到視頻輪廓是這樣實(shí)現(xiàn)的a3、確定2D骨架的各個(gè)關(guān)節(jié)點(diǎn)的支持集;所謂支持集,就是以關(guān)節(jié)點(diǎn)為圓心,以R為半徑的圓型區(qū)域內(nèi)的特征點(diǎn)的集合,支持集為特征點(diǎn)集的子集;b3、求取模型輪廓與視頻輪廓之間各個(gè)對(duì)應(yīng)2D關(guān)節(jié)點(diǎn)的支持集的二維仿射變換關(guān)系;形式為x′=axxx+axyy+bx,y′=ayxx+ayyy+by的坐標(biāo)變換稱為二維仿射變換,變換的坐標(biāo)x′和y′都是原始坐標(biāo)x和y的線性函數(shù),參數(shù)aij和bk是由變換類型確定的常數(shù),在已知對(duì)應(yīng)點(diǎn)集[(x1,y1),(x2,y2),(x3,y3),...,(xn,yn)]和[(x′1,y′1),(x′2,y′2),(x′3,y′3),...,(x′n,y′n)]的情況下,用最小二乘法求解下列超定方程即可求取對(duì)應(yīng)的仿射變換x′1=axxx1+axyy1+bxy′1=ayxx1+ayyy1+byx′2=axxx2+axyy2+bxy′2=ayxx2+ayyy2+by···x′n=axxxn+axyyn+bxy′n=ayxxn+ayyyn+by]]>c3、將模型輪廓的2D骨架的關(guān)節(jié)點(diǎn)位置進(jìn)行與其支持集所確定的仿射變換同樣的變換,變換結(jié)果即為視頻輪廓的2D骨架關(guān)節(jié)點(diǎn)位置。
8.根據(jù)權(quán)利要求1所述的基于視頻內(nèi)容的人體姿態(tài)變形方法,其特征在于,步驟7)、恢復(fù)視頻中人體的3D結(jié)構(gòu)參數(shù),通過(guò)對(duì)已知的初始3D人體姿態(tài)進(jìn)行變換即可具體操作如下設(shè)(xo,yo,zo)為初始姿態(tài)的關(guān)節(jié)點(diǎn)位置,(x′o,y′o)為該關(guān)節(jié)點(diǎn)在2D平面的投影位置,其對(duì)應(yīng)于模型骨架中的關(guān)節(jié)點(diǎn)位置;(x′t,y′t)為將(x′o,y′o)仿射變換以后的坐標(biāo),其對(duì)應(yīng)于估計(jì)的視頻骨架的關(guān)節(jié)點(diǎn)位置,即x′t=axxx′o+axyy′o+bx,y′t=ayxx′o+ayyy′o+by因?yàn)椴捎玫氖欠律渫队澳P?平行投影),所以,(xo,yo,zo)與(x′o,y′o),(xt,yt,zt)與(x′t,y′t)之間保持下列關(guān)系成立xo=kxo′yo=kyo′,]]>xt=kxt′yt=kyt′,]]>k為已知縮放因子,則,與(x′t,y′t)對(duì)應(yīng)的三維坐標(biāo)(xt,yt,zt)為
全文摘要
本發(fā)明涉及計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域,特別是一種基于視頻內(nèi)容的人體姿態(tài)變形方法。用于在已知初始人體三維姿態(tài)信息的基礎(chǔ)上,根據(jù)視頻內(nèi)容,恢復(fù)視頻中對(duì)應(yīng)的3D人體結(jié)構(gòu);該方法包括以下步驟根據(jù)視頻內(nèi)容定制3D人體模型;將3D人體姿態(tài)進(jìn)行投影,生成模型骨架;提取視頻中人體輪廓信息;建立視頻輪廓與模型輪廓的點(diǎn)集對(duì)應(yīng)關(guān)系;將模型輪廓中的2D骨架移植到視頻輪廓;恢復(fù)視頻中人體的3D結(jié)構(gòu)參數(shù)。本發(fā)明優(yōu)點(diǎn)在于對(duì)視頻輪廓提取的質(zhì)量要求不高,具有相當(dāng)?shù)聂敯粜?;可用于各種類型的已知初始3D信息的運(yùn)動(dòng)對(duì)象的3D結(jié)構(gòu)參數(shù)恢復(fù),具有良好的通用性;僅需要簡(jiǎn)單高效的二維運(yùn)算,可以達(dá)到實(shí)時(shí)的效果。
文檔編號(hào)G06T7/00GK1725246SQ20051001217
公開日2006年1月25日 申請(qǐng)日期2005年7月14日 優(yōu)先權(quán)日2005年7月14日
發(fā)明者邱顯杰, 王兆其, 夏時(shí)洪 申請(qǐng)人:中國(guó)科學(xué)院計(jì)算技術(shù)研究所