專利名稱:用于姿勢識別的方法和系統(tǒng)的制作方法
用于姿勢識別的方法和系統(tǒng)關(guān)聯(lián) 申請的交叉引用本申請要求于2009年2月17日提交的,申請?zhí)枮?1/153,229,題為“用于姿勢識別的方法和系統(tǒng)”的美國臨時申請的優(yōu)先權(quán),該美國臨時申請的整體通過引用并入本申請。背景信息有很多種用于解釋計算機(jī)系統(tǒng)的玩家或用戶的動作的技術(shù),于是玩家或用戶得以通過自然而直觀的界面來和計算機(jī)系統(tǒng)溝通。近來,這些界面在家庭娛樂及游戲市場上的應(yīng)用引起人們極大的興趣。其中比較值得注意的例如任天堂Wii的控制器以及Wii Fit的平衡板。任天堂控制器依賴于加速計并用三角測量來計算控制器的位置。作為一種替代方式,很多人機(jī)界面技術(shù)依賴于不同類型的攝像頭?;跀z像頭的界面系統(tǒng)的一個較早的例子是索尼的Eyetoy系統(tǒng),其中使用常見的彩色攝像頭來檢測大致的動作并將其歸類為用戶完成的姿勢。在計算機(jī)電子游戲背景下,有幾個在設(shè)計姿勢識別系統(tǒng)時需要考慮的重要因素, 且其相對重要性取決于姿勢識別系統(tǒng)在游戲中是如何使用的。對該姿勢識別系統(tǒng)的一種應(yīng)用是允許用戶反饋,例如,一旦具體的姿勢被識別出來,可以播放預(yù)先存儲的動畫序列來向用戶展現(xiàn)系統(tǒng)認(rèn)為他所做的是怎樣的。該姿勢識別系統(tǒng)的另一種應(yīng)用是作為游戲設(shè)定機(jī)制來記分,例如,增加記分,以及允許玩家進(jìn)入不同等級。因此,姿勢識別系統(tǒng)在游戲中的使用方式構(gòu)成了對該系統(tǒng)設(shè)計的不同限制。作為一個例子,如果該系統(tǒng)用來向用戶提供關(guān)于他所做動作的反饋,那么將用戶作出姿勢與系統(tǒng)識別出同一姿勢之間的延遲最小化就很重要。如果該姿勢識別系統(tǒng)被用來計算玩家的得分,那么對系統(tǒng)延遲的敏感度就沒有這么重要。編號7,340,077的美國專利介紹了一種姿勢識別系統(tǒng),該系統(tǒng)獲得表示人的身體部分上的多個離散區(qū)域的深度的位置信息,然后使用這一信息來將姿勢歸類。根據(jù)該專利, 有一個確切的起始時間,其指定了何時開始存儲離散區(qū)域,還有一個確切的結(jié)束時間,其表示用戶已經(jīng)完成該姿勢。在確切地確定了起始與結(jié)束時間后,進(jìn)行與姿勢庫的比對。因此, 該方法就引入了一個固有的延遲。另外,數(shù)據(jù)采集直接在深度數(shù)據(jù)上完成。也即,只能從對應(yīng)于二元掩模上的值“1”的深度數(shù)據(jù)對數(shù)據(jù)點(diǎn)進(jìn)行采樣。從深度數(shù)據(jù)來對數(shù)據(jù)點(diǎn)進(jìn)行采樣帶來了一些限制。首先,深度數(shù)據(jù)本身一般是多噪的,這可能會給采樣值的質(zhì)量造成不利影響。其次,從深度數(shù)據(jù)來對數(shù)據(jù)點(diǎn)進(jìn)行采樣必然限于攝像頭的視野的領(lǐng)域。概要本發(fā)明涉及對玩家在深度攝像頭前作出的姿勢和動作的識別,以及,在一個實施例中,使用這些姿勢來驅(qū)動計算機(jī)電子游戲中的游戲設(shè)定。在本發(fā)明的接下來的概要中先定義若干術(shù)語如下。^MSM^M姿勢識別系統(tǒng)是,例如,識別和確定使用者在輸入設(shè)備前作出的預(yù)先確定的動作的系統(tǒng)。例子包括對來自攝像頭的數(shù)據(jù)進(jìn)行解讀以識別出用戶攥起了手,或是解讀該數(shù)據(jù)以識別出一記左手直拳。M^SMi本發(fā)明可以使用來自生成3D數(shù)據(jù)的深度攝像頭的數(shù)據(jù)來進(jìn)行姿勢識另IJ。有若干種不同類型的深度攝像頭。其中有依賴飛行時間原理的攝像頭,或依賴結(jié)構(gòu)光技術(shù)的攝像頭,以及立體攝像頭。這些攝像頭可以生成具有固定像素分辨率的圖像,其中每個像素具有整數(shù)值,這些值對應(yīng)于攝像頭投射到該圖像的這一區(qū)域上的對象的距離。除此深度數(shù)據(jù)外,該深度攝像頭還可以以常見彩色攝像頭同樣的方式來生成色彩數(shù)據(jù),該數(shù)據(jù)可以與深度數(shù)據(jù)合并以用于處理。槿使用該深度數(shù)據(jù),可以容易地創(chuàng)建二元掩模。二元掩模是有著和原始圖像相同分辨率的圖像,但是二元掩模的所有像素均具有對應(yīng)于0或1的整數(shù)值。一般,所有像素都有閾值,在像素值低于閾值時在該二元掩模中接收0值,并在像素值高于閾值時在該二元掩模中接收1值。例如,在玩家站在深度攝像頭前面的情形下,二元掩模被生成(并因此計算出閾值),使得對應(yīng)于該玩家身體的像素為1,所有其它像素為0。于是該二元掩模有效地成為該用戶的如攝像頭所捕捉到的剪影。M置關(guān)節(jié)圖是彼此間以某種固定方式連接并被限制以某些方式運(yùn)動的關(guān)節(jié)的集合,例如,人體骨骼。反向動力學(xué)求解器反向動力學(xué)(IK)求解器可以用于本發(fā)明。已知所需的關(guān)節(jié)圖的配置(例如,某些關(guān)節(jié)的位置),反向動力學(xué)求解器計算圖中已知關(guān)節(jié)與其它關(guān)節(jié)之間的角度,這些角度決定所選關(guān)節(jié)的已知位置。例如,已知手腕與肩的位置,IK求解器可以計算肩關(guān)節(jié)與肘關(guān)節(jié)的角度來得到已知的腕、肩的位置,由此也有效地計算出了肘關(guān)節(jié)的位置。申請?zhí)枮?1/866,280,題為“用于姿勢分類的方法和系統(tǒng)”的美國專利申請中介紹了使用姿勢識別來驅(qū)動游戲中的游戲設(shè)定的方法與系統(tǒng),其整體通過引用并入本申請。如下所述,該方法和系統(tǒng)可以用于本發(fā)明。在一個實施例中,美國專利申請11/866,280可用于IK求解器模型所生成的數(shù)據(jù)。在某一誤差界限內(nèi),人體的各部分可以由深度攝像頭所產(chǎn)生的數(shù)據(jù)來識別。在人體的各部分的位置在深度圖像上被識別出來以后,可以從該圖像中采樣出深度值,從而獲得每個身體部分的三維(3D)位置。(這一步驟稱為跟蹤模塊。)然后,姿勢識別系統(tǒng)可以被訓(xùn)練并用于這些與用戶身體上的點(diǎn)相對應(yīng)的那些3D位置。 在本發(fā)明中,對應(yīng)于身體上的各部分的3D位置可以映射到一個模型上。在實施例中,反向動力學(xué)(IK)求解器用來將從深度圖像上獲得的數(shù)據(jù)點(diǎn)投射到人體關(guān)節(jié)能夠采取的可能配置上。IK求解器模型要作為限制來過濾數(shù)據(jù),從而使數(shù)據(jù)匹配于自然的人類動作的模型框架之內(nèi)。使用IK求解器來過濾來自跟蹤模塊的數(shù)據(jù)有幾個重要的好處。首先,IK求解器模型有效地平滑了數(shù)據(jù),由此將攝像頭噪聲的影響降到最低。其次,取自跟蹤模塊的數(shù)據(jù)點(diǎn)需對應(yīng)于二元掩模上的值“1”的像素(也即,他們落在用戶的剪影上)。對于由IK求解器獲得的數(shù)據(jù)則沒有附加這樣的限制。舉一個具體的例子,玩家可能站得靠近攝像頭的視野邊緣。在這種情況下,當(dāng)他把手伸向旁邊時,手臂末端就在攝像頭的視野之外了。盡管如此, IK求解器會計算出玩家的胳膊伸到了視野之外,并將他的手的位置復(fù)原。顯然,僅適用來自跟蹤模塊的數(shù)據(jù)是無法做到這點(diǎn)的。使用IK求解器的第三個好處在于應(yīng)對阻擋。例如,玩家的手經(jīng)常會擋住攝像頭視野而使攝像頭無法看到他的肘部。因此,不會從深度圖像中采樣出對應(yīng)于肘的數(shù)據(jù)(因此其位置未知)。但是,如果已知手和肩的位置,IK求解器模型還可以計算出肘的大致位置。本發(fā)明的另外一個部分就是姿勢分類方法。美國專利申請11/866,280中介紹的方法是關(guān)于姿勢是否作出的二元分類法。也即,這個方法產(chǎn)生關(guān)于姿勢是否作出的二元標(biāo)記,“是”或“否”。美國專利申請11/866,280中介紹的方法的特點(diǎn)是它必須等到姿勢完成才能決定姿勢庫中的任意姿勢是否被作出。一種作為替代方式的姿勢分類方法包括在本發(fā)明中。本發(fā)明中介紹的方法不再二元地確定姿勢是否已經(jīng)作出(“是”或“否”),而是逐幀地跟蹤正在作出的姿勢,并在每一幀后指出正在作出的姿勢與姿勢庫中的已知姿勢的接近程度。
圖中示出 了姿勢識別系統(tǒng)與方法的例子。這些例子和圖是示例性的,而非限定性的。圖1示出了該姿勢識別系統(tǒng)的一個實施例的總體架構(gòu)的框圖100A。圖2描繪了根據(jù)本發(fā)明公開的一個實施例的用于從攝像頭獲取數(shù)據(jù)并處理該數(shù)據(jù)來獲得特征位置的示例過程200A的流程圖。圖3A描繪了示出根據(jù)本發(fā)明公開的一個實施例的用于構(gòu)建姿勢庫的示例性過程 300A的流程圖。圖3B描繪了示出根據(jù)本發(fā)明公開的一個實施例的使用動作捕捉設(shè)備來創(chuàng)建姿勢庫的示例性過程300B的流程圖。圖3C描繪了示出根據(jù)本發(fā)明公開的一個實施例的使用彩色和深度圖像來創(chuàng)建姿勢庫的示例性過程300C的流程圖。圖4A描繪了示出根據(jù)本發(fā)明公開的一個實施例的用二元姿勢識別技術(shù)來確定所搜索的姿勢是否被作出的示例性過程400A的流程圖。圖4B為示出根據(jù)本發(fā)明公開的一個實施例的從一系列圖像所捕捉到的動作中識別出姿勢的方法的過程400B的流程圖。圖5描繪了示出根據(jù)本發(fā)明公開的一個實施例的示例性過程500A的流程圖,該過程確認(rèn)玩家是否在一段時間內(nèi)(也即,一系列幀)作出特定姿勢,并確定玩家作出提示動作的精確程度。圖6為根據(jù)本發(fā)明公開的一個實施例的并入交互式程序中的姿勢分類系統(tǒng)的實施例的框圖600。圖7為根據(jù)本發(fā)明公開的一個實施例的并入到由多個玩家通過網(wǎng)絡(luò)訪問的互動式程序中的姿勢分類系統(tǒng)的實施例的框圖700。詳細(xì)說明圖1示出了姿勢識別系統(tǒng)的一個實施例的整體架構(gòu)的框圖100A。圖像采集與數(shù)據(jù)預(yù)處理模塊200獲得來自攝像頭的數(shù)據(jù),并對其進(jìn)行處理,而后將經(jīng)處理的數(shù)據(jù)供給三個其它模塊,姿勢訓(xùn)練模塊300、二元姿勢識別模塊400和實時姿勢識別模塊500。在一個實施計算例中,姿勢訓(xùn)練模塊300根據(jù)供給到該模塊的數(shù)據(jù)來計算出最有效地描繪特定姿勢的特性的方式,以此來訓(xùn)練姿勢識別算法。在一個實施例中,姿勢訓(xùn)練模塊300作為離線任務(wù)運(yùn)行。以該數(shù)據(jù)為根據(jù)的由姿勢訓(xùn)練模塊300生成的姿勢的特性描述被發(fā)送到二元姿勢識別模塊400和實時姿勢識別模塊500。此外,來自圖像采集與數(shù)據(jù)預(yù)處理模塊200的數(shù)據(jù)也被發(fā)送到二元姿勢識別模塊400和實時姿勢識別模塊500。
圖2描繪了根據(jù)本發(fā)明公開的實施例的用于從攝像頭獲取數(shù)據(jù)并處理該數(shù)據(jù)來獲得特征位置的示例過程200A的流程圖。該系統(tǒng)的圖像采集與數(shù)據(jù)預(yù)處理模塊200執(zhí)行過程200A。在一個實施例中,這 些特征位置為關(guān)節(jié)位置。所獲得的特征位置被發(fā)送到模塊 300、400 和 500。在框210,模塊200獲得來自攝像頭的二維圖像數(shù)據(jù)。該數(shù)據(jù)既可以只是深度數(shù)據(jù),也可以是深度數(shù)據(jù)和色彩數(shù)據(jù)。在框220,模塊200處理來自攝像頭的數(shù)據(jù)。其可以只是深度圖像,或者其可以是深度圖像與色彩圖像相結(jié)合。圖像處理算法用于盡可能準(zhǔn)確地確定取自攝像頭的二維(2D) 圖像上的與被跟蹤的物體的各特征相對應(yīng)的點(diǎn)。如果對玩家的身體進(jìn)行跟蹤,這些特征可以包括玩家的頭、左右肩關(guān)節(jié)、左右肘關(guān)節(jié)、左右手、軀干、骨盆、左右膝關(guān)節(jié)。在感興趣的特征的位置在2D圖像上確定下來后,可以從該深度圖像中采樣出深度值來獲得每個特征的三維(3D)位置。在一個實施例中,這對應(yīng)于獲得每個感興趣的關(guān)節(jié)的3D位置(包括來自深度圖像的深度)。在框220中獲得的關(guān)節(jié)的3D位置在框330中投射到被跟蹤的物體的模型上??梢詫?shù)據(jù)映射到其上的模型有幾種不同類型。在一個實施例中,該模型可以為幾何形狀。例如,該模型可以是人的手的簡單的幾何再現(xiàn),有手掌和五根手指。在一個實施例中,該模型是人的骨骼的再現(xiàn),通過使用反向動力學(xué)(IK)求解器或其它限制系統(tǒng),其被限于僅顯示那些與自然的人體運(yùn)動相一致的配置。在一個實施例中,IK求解器求解等式系統(tǒng),該系統(tǒng)對人體骨骼的關(guān)節(jié)的可能配置進(jìn)行建模,并作為對每個關(guān)節(jié)的運(yùn)動自由度的限制。在框230中限制框220中獲得的關(guān)節(jié)位置限制到該模型有幾個重要的功能。第一,濾除了來自攝像頭的噪聲,且有效地對結(jié)果進(jìn)行了平滑處理。第二,確信玩家的四肢可能會在攝像頭的視野之外。在這種情況下,框230的模型能夠計算出不在攝像頭視野中的關(guān)節(jié)的大致位置。第三,其填補(bǔ)了那些不能從攝像頭數(shù)據(jù)中獲得的關(guān)節(jié)的位置。已知“附近”其它關(guān)節(jié),IK求解器可以計算出一些關(guān)節(jié)的位置。例如,如果玩家的手直對著攝像頭向外伸展,他的肘關(guān)節(jié)甚至肩關(guān)節(jié)很有可能在視野中被擋住。在這種情況下,不可能在框220 中獲得這些關(guān)節(jié)的3D位置。但是,在框230中,這些關(guān)節(jié)的3D位置將從人體骨骼的模型來獲得,已知其它關(guān)節(jié)的位置,該模型能夠計算出這些關(guān)節(jié)的位置。一些實施例包括可選的框240,其中特征(或關(guān)節(jié))的位置數(shù)據(jù)被縮放到標(biāo)準(zhǔn)骨架或標(biāo)準(zhǔn)模型。這通常稱作“動畫重定位”。盡管并非必要,但這個框是有作用的,因為雖然訓(xùn)練數(shù)據(jù)采自的用戶的身體比例與測試數(shù)據(jù)采自的用戶有著不同的身體比例,訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)必須參照同一坐標(biāo)系。為了更好地將經(jīng)訓(xùn)練的姿勢適用于訓(xùn)練數(shù)據(jù)中未包含的用戶身體,該跟蹤數(shù)據(jù)可以被適當(dāng)縮放。在框250,從用作動畫重定位的標(biāo)準(zhǔn)模型采集數(shù)據(jù)。在一個實施例中,這對應(yīng)于從骨骼模型獲得關(guān)節(jié)的3D位置。在框260,從該模型檢索出的數(shù)據(jù)被發(fā)送到姿勢訓(xùn)練模塊300 來訓(xùn)練姿勢分類算法,另外還被發(fā)送到姿勢識別模塊400和500。圖3A描繪了示出根據(jù)本發(fā)明公開的實施例的用于構(gòu)建姿勢庫的示例性過程300A 的流程圖。該系統(tǒng)的姿勢訓(xùn)練模塊300執(zhí)行過程300A。在框310,模塊300接收由圖像采集與數(shù)據(jù)預(yù)處理模塊200生成的特征數(shù)據(jù)。接著在框320,模塊300根據(jù)該特征數(shù)據(jù)來描述這些姿勢的特性。根據(jù)本發(fā)明公開的實施例,在框330,模塊300將這些姿勢與特定的預(yù)先確定的姿勢關(guān)聯(lián)。作為過程300A的輸出,在框330,構(gòu)建姿勢庫,其中每個姿勢具有依照圖像采集與數(shù)據(jù)預(yù)處理模塊200生成的數(shù)據(jù)的特定的特性描述。圖3A中的框320和330可以包含圖3B各框,其在下文中有詳述并見于美國專利申請11/866,280的圖1。作為替代方式,圖3A中的框310可以包含圖3C中的各框,其在下文中有詳述并見 于美國專利申請11/866,280的圖2。在一個實施例中,框320和330作為離線任務(wù)執(zhí)行。為了將用戶的姿勢歸類為特定姿勢,將用戶的動作與收編并存儲在姿勢庫中的已知姿勢集合進(jìn)行比對。對于庫中的每個姿勢,首先在預(yù)處理步驟中為每個姿勢生成基線或 “地面真值”數(shù)據(jù)?!暗孛嬲嬷怠睌?shù)據(jù)接著用作基線,用戶的動作與之比對,來將該動作歸類為特定姿勢。在成一系列的若干圖像中描述感興趣的特征點(diǎn)的相對位置的數(shù)據(jù)被用于上述比對。圖3B示出了一種為姿勢庫獲得“地面真值”數(shù)據(jù)的方法300B。在步驟IlOA中,至少一個多次作出感興趣的姿勢的主體被記錄。在該主體身體的每個感興趣的特征點(diǎn)上放置傳感器,而動作捕捉設(shè)備則用于將該主體的動作記錄在一些里的圖像中。感興趣的特征點(diǎn)可以包括對應(yīng)于,例如,該主體的左手、左肘、左肩、或頭的關(guān)節(jié)和位置。對于本領(lǐng)域技術(shù)人員而言,很明顯主體身上的很多其它位置也可以作為感興趣的特征點(diǎn)。步驟IlOA的輸出是三維點(diǎn)的集合,其中每個點(diǎn)對應(yīng)于系列中每張圖片中的一個特征點(diǎn)。在步驟120A,通過使用處理動作捕捉數(shù)據(jù)的標(biāo)準(zhǔn)技術(shù)手動清理和平滑所述數(shù)據(jù)來對來自該動作捕捉過程的數(shù)據(jù)進(jìn)行后處理。對本領(lǐng)域技術(shù)人員而言,很明顯也可以執(zhí)行其它后處理步驟。接著,在步驟125中,將所述數(shù)據(jù)在所述姿勢被作出的多次上取平均,以消除偏置。在優(yōu)選實施例中,很多不同作出該姿勢的主體被記錄,這些不同主體的姿勢被取平均以防止地面真值數(shù)據(jù)過度適合一個人。相似點(diǎn)測量是一種將兩個姿勢集合的相似點(diǎn)定量地相比較的功能。相似點(diǎn)測量值越高,一個人的動作與該動作所比對的已知姿勢越相似。在步驟130A中,計算出該姿勢的閾值,當(dāng)把所述姿勢與人的動作比對的相似點(diǎn)測量大于該特定姿勢的閾值,很可能這個人的動作已被確定為該姿勢。步驟140A詢問是否要將另一姿勢加入到該姿勢庫中。如果是,上述步驟將從步驟 IlOA開始重復(fù),伴隨著對至少一個作出該新姿勢的主體的記錄。如果沒有進(jìn)一步的姿勢要加入到該庫中,那么該姿勢庫就完成了。圖3C示出了作為替代方式的方法300C,可以由該方法來為姿勢庫獲得姿勢的“地面真值”數(shù)據(jù)及其對應(yīng)的姿勢閾值。在步驟210A中,能夠記錄色彩與深度圖像的攝像機(jī)被用于記錄至少一個幾次作出感興趣姿勢的主體。在步驟220A中,感興趣的特征點(diǎn)的位置被手動標(biāo)記在一系列色彩與深度圖像上。在其它實施例中,標(biāo)記這些感興趣的點(diǎn)可以是自動的或半自動的。例如,可以在來自攝像機(jī)的深度圖像上運(yùn)行自動跟蹤來確定感興趣的點(diǎn),在一些實施例中,這些被自動確定的感興趣的點(diǎn)可以被手動修正。在階段230A中,為捕捉該姿勢的圖像系列中的每個色彩-深度圖像對計算出每個感興趣的特征點(diǎn)的三維坐標(biāo)。數(shù)據(jù)的后處理出現(xiàn)在步驟240A中??梢赃M(jìn)行的后處理步驟包括在時間和空間上對數(shù)據(jù)進(jìn)行平滑處理。對于本領(lǐng)域技術(shù)人員而言,很明顯也可以執(zhí)行其它后處理步驟。接著,在步驟250A中,將所述數(shù)據(jù)在所述姿勢被作出的多次上取平均以消除偏置。在優(yōu)選實施例中,很多不同作出該姿勢的主體被記錄,這些不同主體的姿勢被取平均以防止地面真值數(shù)據(jù)過度適合一個人。在步驟260A中,計算出該姿勢的閾值,當(dāng)把所述姿勢與人的動作比對的相似點(diǎn)測量大于該特定姿勢的閾值,很可能這個人的動作已被確定為該姿勢。步驟270A詢問是否要將另一姿勢加入到該姿勢庫中。如果是,上述步驟將從步驟 210A開始重復(fù),伴隨著對至少一個作出該新姿勢的主體的記錄。如果沒有進(jìn)一步的姿勢要加入到該庫中,那么該姿勢庫就完成了??梢允褂萌魏斡糜谧詣臃诸悢?shù)據(jù)的技術(shù),包括有監(jiān)督和無監(jiān)督的機(jī)器學(xué)習(xí)技術(shù)。 數(shù)據(jù)分類技術(shù)包括但不限于,支撐矢量機(jī)(SVM)、隱馬爾可夫模型(HMM)、以及逐步聚類分析(k-means clustering)。例如,SVM可以用來找出兩類數(shù)據(jù)點(diǎn)(“所需的姿勢”和“不需要的姿勢”)之間的“最佳分割”,推導(dǎo)出的判決函數(shù)可以用于備選姿勢來確定該備選姿勢落入哪個分類。圖4A描繪了示出根據(jù)本發(fā)明公開的實施例的用二元姿勢識別技術(shù)來確定所搜索的姿勢是否被作出的示例性過程400A的流程圖。在一個實施例中,二元姿勢識別技術(shù)等待到從圖像采集與數(shù)據(jù)預(yù)處理模塊200接收到全部的時間相關(guān)序列,才計算姿勢庫中的姿勢是否被作出,由此在游戲中引入了延時。在框410,二元姿勢識別模塊400接收來自該圖像采集與數(shù)據(jù)預(yù)處理模塊200的描述這些特征的特征數(shù)據(jù)。然后,在框420,玩家的對應(yīng)于姿勢庫中的姿勢被模塊400檢測出來???20的輸出為檢測到的姿勢。在一個實施例中,框420可以包含美國專利申請 11/866,280圖3中的各框,如圖4B所示。在框430,該系統(tǒng)的游戲引擎模塊基于框420中檢測出的姿勢來為該玩家生成反饋。所述游戲引擎模塊必須控制與玩家互動的游戲應(yīng)用。在框440,該系統(tǒng)在顯示器上為玩家顯示所生成的反饋,例如,根據(jù)玩家的表現(xiàn)調(diào)整該玩家的分?jǐn)?shù)。圖5描繪了示出根據(jù)本發(fā)明公開的實施例的示例性過程500A的流程圖,該過程確認(rèn)玩家是否在一段時間內(nèi)(也即,一系列幀)作出特定姿勢,并確定玩家作出提示動作的精確程度。在框510,實時姿勢識別模塊500接收來自圖像采集與數(shù)據(jù)預(yù)處理模塊200的特征數(shù)據(jù)。該實時姿勢識別模塊在作出該姿勢的過程中實時地更新該玩家的進(jìn)展,例如,在每幀之后。在框520,該系統(tǒng)的所述游戲引擎模塊選擇感興趣的姿勢并提示用戶來作出該姿勢。在框530,累積跟蹤分?jǐn)?shù)(CTS)置0。在一個實施例中,CTS在每一幀被更新。但是,CTS可以以其它間隔來更新,例如,每兩幀。接著,在框510中接收到的特征數(shù)據(jù)被與在框520中選出的感興趣的姿勢進(jìn)行比對,并計算出對應(yīng)于該玩家的動作匹配所述感興趣的姿勢的程度的數(shù)值。一種將來自框510的數(shù)據(jù)與來自框520的感興趣的數(shù)據(jù)進(jìn)行比對的方式是使用相似點(diǎn)測量。以下為一種示例性的相似點(diǎn)測量例如,視x(i,j)為根據(jù)感興趣的姿勢預(yù)先確定的關(guān)節(jié)i在時間j上的位置,且y (i,j)為從框510獲得的關(guān)節(jié)i在時間j的值,即,所述感興趣的姿勢中關(guān)節(jié)i在時間j上的位置。令w(i)為每個關(guān)節(jié)的 權(quán)重,且u(j)為每次的權(quán)重。那么,一種示例性的相似點(diǎn)測量為
權(quán)利要求
1.一種識別感興趣的姿勢的方法,包括 提示主體做出所述感興趣的姿勢;從傳感器獲得在做出動作的所述主體的多幅圖像;在獲得所述多幅圖像中的每幅圖像后,將所述多幅圖像中的每一幅與所述感興趣的姿勢進(jìn)行比對;基于所述比對確定跟蹤分?jǐn)?shù);以及如果跟蹤分?jǐn)?shù)保持在已知閾值之內(nèi),確定所述主體在做出所述感興趣的姿勢。
2.如權(quán)利要求1所述的方法,進(jìn)一步包括在所述比對中使用反向動力學(xué)求解器來將所述多幅圖像中的每一幅限制到模型。
3.如權(quán)利要求1所述的方法,進(jìn)一步包括從姿勢庫中選擇所述感興趣的姿勢。
4.如權(quán)利要求1所述的方法,其中所述比對包括計算相似點(diǎn)測量。
5.如權(quán)利要求1所述的方法,其中所述傳感器包括深度攝像頭。
6.一種圖像采集與數(shù)據(jù)預(yù)處理方法,包括 從傳感器獲得在做出動作的主體的圖像; 從所述圖像中選出多個感興趣的特征;對對應(yīng)于所述多個感興趣的特征的多個深度值進(jìn)行采樣; 用所述多個深度值來將所述多個感興趣的特征投射到模型上; 用限制系統(tǒng)對投射所述多個特征到所述模型進(jìn)行限制。
7.如權(quán)利要求6所述的方法,其中所述限制系統(tǒng)包括反向動力學(xué)求解器。
8.如權(quán)利要求6所述的方法,其中所述傳感器包括深度攝像頭。
9.如權(quán)利要求6所述的方法,進(jìn)一步包括用于將所述模型縮放到標(biāo)準(zhǔn)模型的動畫重定位。
10.一種識別姿勢的系統(tǒng),包括 攝像頭,用于采集得多個圖像深度數(shù)據(jù)幀;圖像采集模塊,配置為接收來自所述攝像頭的所述多個圖像深度數(shù)據(jù)幀,并處理所述圖像深度數(shù)據(jù)來確定主體的特征位置;姿勢訓(xùn)練模塊,配置為接收來自所述圖像采集模塊的所述主體的特征位置,并將所述特征位置與預(yù)先確定的姿勢相關(guān)聯(lián);二元姿勢識別模塊,配置為接收來自所述圖像采集模塊的所述主體的特征位置,并確定所述特征位置是否匹配特定的姿勢;實時姿勢識別模塊,配置為接收來自所述圖像采集模塊的所述主體的特征位置,并確定所述特定姿勢是否正在多于一個圖像深度數(shù)據(jù)幀中被做出。
11.如權(quán)利要求10所述的系統(tǒng),進(jìn)一步包括游戲引擎模塊,配置為選擇所述特定姿勢并提示所述主體來做出所述特定姿勢。
12.如權(quán)利要求10所述的系統(tǒng),進(jìn)一步包括 姿勢數(shù)據(jù)庫,其中包含所述預(yù)先確定的姿勢。
13.如權(quán)利要求10所述的系統(tǒng),進(jìn)一步包括顯示器,用于向所述主體提供關(guān)于由所述主體做出的姿勢的反饋。
14.如如權(quán)利要求10所述的系統(tǒng),其中所述攝像頭進(jìn)一步獲得色彩圖像數(shù)據(jù)。
15.如權(quán)利要求10所屬的系統(tǒng),其中所述實時姿勢識別模塊進(jìn)一步配置為計算相似點(diǎn)測量和累積跟蹤分?jǐn)?shù),其中為每一幀更新所述相似點(diǎn)測量和所述累積跟蹤分?jǐn)?shù),進(jìn)一步地, 其中所述對所述特定姿勢是否正在被做出的確定是基于為每一幀將所述累積跟蹤分?jǐn)?shù)與所述特定姿勢的閾值進(jìn)行比對。
16.如權(quán)利要求10所述的系統(tǒng),其中所述圖像采集模塊將所述圖像深度數(shù)據(jù)映射到模型上。
17.如權(quán)利要求16所述的系統(tǒng),其中所述圖像采集模塊為在所述多個幀中的至少一個幀中不可見的特征位置來使用反向動力學(xué)求解器來限制所述模型的動作。
18.如權(quán)利要求10所述的系統(tǒng),其中所述圖像采集模塊將所述特征位置縮放到標(biāo)準(zhǔn)模型。
19.如權(quán)利要求10所述的系統(tǒng),其中所述姿勢訓(xùn)練模塊使用機(jī)器學(xué)習(xí)技術(shù)來確定所述特征位置是否匹配特定姿勢。
20.一種識別姿勢的系統(tǒng),包括用于采集多個圖像深度數(shù)據(jù)幀的裝置;用于接收來自所述攝像頭的所述多個圖像深度數(shù)據(jù)幀,并處理所述圖像深度數(shù)據(jù)來確定主體的特征位置的裝置;用于接收來自所述圖像采集模塊的所述主體的特征位置,并將所述特征位置與預(yù)先確定的姿勢相關(guān)聯(lián)的裝置;用于接收來自所述圖像采集模塊的所述主體的特征位置,并確定所述特征位置是否匹配特定的姿勢的裝置;用于接收來自所述圖像采集模塊的所述主體的特征位置,并確定所述特定姿勢是否正在多于一個圖像深度數(shù)據(jù)幀中被做出的裝置;用于向所述主體提供關(guān)于所述主體做出的姿勢的反饋的裝置。
21.如權(quán)利要求1所述的方法,其中確定所述跟蹤分?jǐn)?shù)包括在所述感興趣的姿勢上應(yīng)用支撐矢量機(jī)。
22.如權(quán)利要求1所述的方法,其中確定所述跟蹤分?jǐn)?shù)包括應(yīng)用相似點(diǎn)測量。
全文摘要
圖像采集與數(shù)據(jù)預(yù)處理方法包括獲得來自傳感器的在做出動作的主體的圖像。該傳感器可以是深度攝像頭。該方法還包括從圖像中選出多個感興趣的特征,采樣出對應(yīng)于所述多個感興趣的特征的多個深度值,用所述多個深度值來將所述多個感興趣的特征投射到模型上,以及用限制系統(tǒng)來限制投射所述多個感興趣的特征到所述模型上。該限制系統(tǒng)可以上包括反向動力學(xué)求解器。
文檔編號G06T7/20GK102317977SQ201080007962
公開日2012年1月11日 申請日期2010年2月4日 優(yōu)先權(quán)日2009年2月17日
發(fā)明者埃蘭·艾拉特, 格爾紹姆·庫特利洛夫, 艾米特·布萊維斯 申請人:奧美可互動有限責(zé)任公司