專利名稱:對身體和道具的檢測的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)應(yīng)用,尤其涉及目標(biāo)檢測技術(shù)。優(yōu)先權(quán)要求本發(fā)明要求2009年5月20日提交的題為“Human Body Pose Estimation (人類身體姿態(tài)估計(jì))”、申請?zhí)枮?2/454,628的美國專利申請的優(yōu)先權(quán),該美國專利申請要求2009 年5月I日提交的題為“Human Body Pose Estimation(人類身體姿態(tài)估計(jì))”、申請?zhí)枮?61/174,878的臨時(shí)專利申請的優(yōu)先權(quán)。上述申請中的每一個(gè)的全部內(nèi)容通過引用結(jié)合于此。
背景技術(shù):
在典型的計(jì)算環(huán)境中,諸如多媒體應(yīng)用或計(jì)算機(jī)游戲等計(jì)算應(yīng)用的用戶使用輸入設(shè)備來控制計(jì)算應(yīng)用的各方面。用于控制計(jì)算應(yīng)用的常見輸入設(shè)備包括控制器、鍵盤、操縱桿、遙控器、鼠標(biāo)等。近來,計(jì)算游戲應(yīng)用已開始使用相機(jī)和姿勢識別軟件來提供自然用戶界面。使用自然用戶界面,用戶的身體部位和移動(dòng)可被檢測、解釋、和用于控制計(jì)算應(yīng)用的游戲角色或其他方面。
發(fā)明內(nèi)容
描述了用于檢測、分析和跟蹤包括身體部位和道具的目標(biāo)的技術(shù)。在一個(gè)實(shí)施例中,自然用戶界面系統(tǒng)包括目標(biāo)檢測和跟蹤系統(tǒng)。在一個(gè)實(shí)施例中,該目標(biāo)檢測和跟蹤系統(tǒng)包括目標(biāo)建議系統(tǒng)和目標(biāo)跟蹤系統(tǒng)。目標(biāo)建議系統(tǒng)標(biāo)識特定視野內(nèi)的一個(gè)或多個(gè)候選身體部位以及一個(gè)或多個(gè)候選道具位置。在一個(gè)示例中,目標(biāo)建議系統(tǒng)向特定深度圖像中的一個(gè)或多個(gè)像素分配屬于一個(gè)或多個(gè)候選身體部位和/或道具的概率。由于目標(biāo)建議系統(tǒng)可產(chǎn)生許多假肯定,因此目標(biāo)跟蹤系統(tǒng)被用于協(xié)調(diào)一個(gè)或多個(gè)候選身體部位和/或道具、并正確地輸出標(biāo)識出的身體部位和/或道具。在一個(gè)實(shí)施例中,所公開的技術(shù)獲得一個(gè)或多個(gè)深度圖像,生成與一個(gè)或多個(gè)身體部位和一個(gè)或多個(gè)道具相關(guān)聯(lián)的一個(gè)或多個(gè)分類圖,使用骨架跟蹤系統(tǒng)來跟蹤一個(gè)或多個(gè)身體部位,使用道具跟蹤系統(tǒng)來跟蹤一個(gè)或多個(gè)道具,以及報(bào)告與一個(gè)或多個(gè)身體部位和一個(gè)或多個(gè)道具有關(guān)的度量。在某些實(shí)施例中,反饋可在骨架跟蹤系統(tǒng)和道具跟蹤系統(tǒng)之間發(fā)生。在某些實(shí)施例中,持有一個(gè)或多個(gè)道具(例如,諸如塑料玩具劍或吉他之類的游戲道具)的一個(gè)或多個(gè)游戲玩家的物理移動(dòng)被跟蹤并被解釋為調(diào)節(jié)和/或控制電子游戲的各部分的實(shí)時(shí)用戶控制。例如,持有真實(shí)的網(wǎng)球拍或相似的物理對象的游戲玩家在玩虛擬網(wǎng)球游戲時(shí),可在游戲空間中實(shí)時(shí)地控制虛擬球拍。提供本發(fā)明內(nèi)容以便以簡化的形式介紹將在以下具體實(shí)施方式
中進(jìn)一步描述的一些概念。本發(fā)明內(nèi)容并非旨在標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。
圖IA和IB描繪跟蹤用戶的目標(biāo)檢測和跟蹤系統(tǒng)的一個(gè)實(shí)施例。圖IC描繪跟蹤用戶的目標(biāo)檢測和跟蹤系統(tǒng)的一個(gè)實(shí)施例。圖2描繪目標(biāo)檢測和跟蹤系統(tǒng)的一個(gè)實(shí)施例。圖3示出深度圖像的一個(gè)示例實(shí)施例。圖4示出根據(jù)本發(fā)明各實(shí)施例的計(jì)算環(huán)境的一個(gè)示例。圖5示出根據(jù)本發(fā)明各實(shí)施例的計(jì)算環(huán)境的一個(gè)示例。圖6A是描述用于檢測和跟蹤一個(gè)或多個(gè)目標(biāo)的過程的一個(gè)實(shí)施例的流程圖。圖6B是描述用于生成一個(gè)或多個(gè)分類圖的過程的一個(gè)實(shí)施例的流程圖。圖6C是描述用于生成一個(gè)或多個(gè)分類圖的過程的一個(gè)實(shí)施例的流程圖。圖7描繪原始圖像和對應(yīng)的被分割的圖像。圖8描繪已經(jīng)用3-D模型改型的三個(gè)訓(xùn)練圖像。圖9A-9C描繪深度圖像和對應(yīng)的被分割的圖像。
具體實(shí)施例方式描述了用于檢測、分析和跟蹤包括身體部位和道具的目標(biāo)的技術(shù)。在一個(gè)實(shí)施例中,自然用戶界面系統(tǒng)包括目標(biāo)檢測和跟蹤系統(tǒng)。在一個(gè)實(shí)施例中,該目標(biāo)檢測和跟蹤系統(tǒng)包括目標(biāo)建議系統(tǒng)和目標(biāo)跟蹤系統(tǒng)。目標(biāo)建議系統(tǒng)標(biāo)識特定視野內(nèi)的一個(gè)或多個(gè)候選身體部位以及一個(gè)或多個(gè)候選道具位置。在一個(gè)示例中,目標(biāo)建議系統(tǒng)向特定深度圖像中的一個(gè)或多個(gè)像素分配屬于一個(gè)或多個(gè)候選身體部位和/或道具的概率。由于目標(biāo)建議系統(tǒng)可產(chǎn)生許多假肯定,因此目標(biāo)跟蹤系統(tǒng)被用于協(xié)調(diào)一個(gè)或多個(gè)候選身體部位和/或道具、并正確地輸出標(biāo)識出的身體部位和/或道具。圖IA和IB通過用戶18在玩拳擊游戲來描繪目標(biāo)檢測和跟蹤系統(tǒng)10的一個(gè)實(shí)施例。目標(biāo)檢測和跟蹤系統(tǒng)10可用于檢測、識別、分析、和/或跟蹤人類目標(biāo)(諸如用戶18) 和/或非人類目標(biāo)(諸如用戶18拿著的道具(未示出))。如圖IA所示,目標(biāo)檢測和跟蹤系統(tǒng)10可包括計(jì)算環(huán)境12。計(jì)算環(huán)境12可包括計(jì)算機(jī)、游戲系統(tǒng)或控制臺等等。在一個(gè)實(shí)施例中,計(jì)算環(huán)境12可包括硬件組件和/或軟件組件,使得計(jì)算環(huán)境12可用于執(zhí)行操作系統(tǒng)和諸如游戲應(yīng)用、非游戲應(yīng)用等的應(yīng)用。在一個(gè)實(shí)施例中,計(jì)算系統(tǒng)12可包括可執(zhí)行存儲在處理器可讀存儲設(shè)備上的用于執(zhí)行此處描述的過程的指令的處理器,如標(biāo)準(zhǔn)化處理器、專用處理器、微處理器等。如圖IA所示,目標(biāo)檢測和跟蹤系統(tǒng)10還可包括捕捉設(shè)備20。在一個(gè)實(shí)施例中,捕捉設(shè)備20可包括可用于在視覺上監(jiān)視包括諸如用戶18等一個(gè)或多個(gè)用戶的一個(gè)或多個(gè)目標(biāo)。由一個(gè)或多個(gè)用戶執(zhí)行的姿勢(包括姿態(tài))可被捕捉、分析、和跟蹤,以便執(zhí)行對操作系統(tǒng)或應(yīng)用的用戶界面的一個(gè)或多個(gè)控制或動(dòng)作。用戶可通過移動(dòng)他或她的身體來創(chuàng)建姿勢。姿勢可包括用戶的運(yùn)動(dòng)或姿態(tài),其可被捕捉為圖像數(shù)據(jù)并解析其意義。姿勢可以是動(dòng)態(tài)的,包括運(yùn)動(dòng),如模仿投球。姿勢可以是靜態(tài)姿勢,諸如保持其前臂交叉。姿勢也可結(jié)合道具,如揮動(dòng)仿制的劍。在一個(gè)實(shí)施例中,捕捉設(shè)備20可捕捉與一個(gè)或多個(gè)用戶和/或?qū)ο笥嘘P(guān)的圖像和
5音頻數(shù)據(jù)。例如,捕捉設(shè)備20可用于捕捉與一個(gè)或多個(gè)用戶的部分或全部身體移動(dòng)、姿勢和語音有關(guān)的信息。由捕捉設(shè)備20捕捉的信息可通過計(jì)算環(huán)境12和/或捕捉設(shè)備20內(nèi)的處理元件來接收,并用于對游戲或其他應(yīng)用的各方面進(jìn)行呈現(xiàn)、交互和控制。在一個(gè)示例中,捕捉設(shè)備20捕捉與特定用戶有關(guān)的圖像和音頻數(shù)據(jù),并且計(jì)算環(huán)境12處理所捕捉的信息以便通過執(zhí)行面部和語音識別軟件來標(biāo)識該特定用戶。在一個(gè)實(shí)施例中,目標(biāo)檢測和跟蹤系統(tǒng)10可被連接到可向諸如用戶18等用戶提供游戲或應(yīng)用視覺和/或音頻的視聽設(shè)備16,如電視機(jī)、監(jiān)視器、高清電視機(jī)(HDTV)等。例如,計(jì)算環(huán)境12可包括諸如圖形卡等視頻適配器和/或諸如聲卡等音頻適配器,這些適配器可提供與游戲應(yīng)用、非游戲應(yīng)用等相關(guān)聯(lián)的視聽信號。視聽設(shè)備16可從計(jì)算環(huán)境12接收視聽信號,然后可向用戶18輸出與視聽信號相關(guān)聯(lián)的游戲或應(yīng)用視覺和/或音頻。在一個(gè)實(shí)施例中,視聽設(shè)備16可經(jīng)由例如,S-視頻電纜、同軸電纜、HDMI電纜、DVI電纜、VGA電纜等連接到計(jì)算環(huán)境12。如圖IA和IB所示,在計(jì)算環(huán)境12上執(zhí)行的應(yīng)用可以是用戶18可能正在玩的拳擊游戲。計(jì)算環(huán)境12可使用視聽設(shè)備16來向用戶18提供拳擊對手22的視覺表示。計(jì)算環(huán)境12還可使用視聽設(shè)備16來提供用戶18可通過他的或她的移動(dòng)來控制的玩家化身24 的視覺表示。例如,如圖IB所示,用戶18可在物理空間中揮重拳來使得玩家化身24在游戲空間中揮重拳。在一個(gè)實(shí)施例中,目標(biāo)檢測和跟蹤系統(tǒng)10的計(jì)算機(jī)環(huán)境12和捕捉設(shè)備 20可用于識別和分析用戶18在物理空間中的重拳,從而使得該重拳可被解釋為對游戲空間中的玩家化身24的游戲控制。在一個(gè)實(shí)施例中,用戶移動(dòng)可被解釋為可對應(yīng)于除控制玩家化身24之外的動(dòng)作的控制。例如,用戶18可以使用移動(dòng)來結(jié)束游戲、暫停游戲、保存游戲、選擇級別、查看高分、與朋友交流等。在另一實(shí)施例中,目標(biāo)檢測和跟蹤系統(tǒng)10將目標(biāo)的移動(dòng)解釋為游戲領(lǐng)域之外的操作系統(tǒng)和/或應(yīng)用控制。例如,事實(shí)上操作系統(tǒng)和/或應(yīng)用程序的任何可控方面都可由諸如用戶18等目標(biāo)的移動(dòng)來控制。在另一實(shí)施例中,用戶18可使用移動(dòng)來從主用戶界面選擇游戲或其他應(yīng)用。由此,用戶18的全范圍運(yùn)動(dòng)可以用任何合適的方式來獲得、 使用并分析以與應(yīng)用或操作系統(tǒng)進(jìn)行交互。如圖IC所示,諸如用戶18這樣的人類目標(biāo)可持有球拍21這樣的對象。在一個(gè)實(shí)施例中,用戶18可在與應(yīng)用交互時(shí)持有諸如道具等對象。在此類實(shí)施例中,個(gè)人和對象兩者的移動(dòng)都可用于控制應(yīng)用。例如,可以跟蹤并利用手持球拍21的玩家的運(yùn)動(dòng)來控制模擬網(wǎng)球游戲的應(yīng)用中的屏幕上的球拍23。在另一實(shí)施例中,可跟蹤并利用手持諸如塑料的劍等玩具武器的玩家的運(yùn)動(dòng)來控制電子格斗游戲中對應(yīng)的武器。在某些實(shí)施例中,也可以跟蹤包括一個(gè)或多個(gè)手套、球、球棒、球桿、吉它、話筒、桿、寵物、動(dòng)物、鼓等其他對象。被跟蹤的對象可緊密地映射到特定游戲或應(yīng)用(例如,虛擬網(wǎng)球游戲中使用的真實(shí)網(wǎng)球拍)或可以是更抽象的表示(例如,表示光刀的火炬或閃光)。在某些實(shí)施例中,由目標(biāo)檢測和跟蹤系統(tǒng)10跟蹤的一個(gè)或多個(gè)對象可以是活動(dòng)對象(active object) 0活動(dòng)對象可包括一個(gè)或多個(gè)傳感器,用于向目標(biāo)檢測和跟蹤系統(tǒng) 10提供諸如加速度或定向信息之類的信息。作為對比,不活動(dòng)對象(passive object)不向目標(biāo)檢測和跟蹤系統(tǒng)10提供附加信息。將視覺跟蹤信息與來自活動(dòng)對象的實(shí)時(shí)位置、加速度、和/或定向信息進(jìn)行組合的能力可允許目標(biāo)檢測和跟蹤系統(tǒng)10改進(jìn)其目標(biāo)跟蹤性能,尤其當(dāng)捕捉設(shè)備正捕捉高速移動(dòng)時(shí)(例如,揮動(dòng)棒球棒)時(shí)運(yùn)動(dòng)模糊可能是一問題的情況下。在一個(gè)實(shí)施例中,游戲道具包括加速計(jì)、磁力計(jì)、和陀螺儀,并且向目標(biāo)檢測和跟蹤系統(tǒng)傳輸加速度、磁場、和定向信息。在某些實(shí)施例中,由目標(biāo)檢測和跟蹤系統(tǒng)10跟蹤的一個(gè)或多個(gè)對象可以是不活動(dòng)對象。在一個(gè)實(shí)施例中,不活動(dòng)對象可通過諸如IR回射標(biāo)記之類的一個(gè)或多個(gè)標(biāo)記來擴(kuò)充,以便改進(jìn)對象檢測和跟蹤。在另一個(gè)實(shí)施例中,不活動(dòng)和活動(dòng)游戲道具可通過一個(gè)或多個(gè)IR回射標(biāo)記來擴(kuò)充。目標(biāo)檢測和跟蹤系統(tǒng)10及其組件的合適的示例在以下共同待審的專利申請中找到,所有這些專利申請都特此通過引用結(jié)合于此于2009年5月29日提交的名稱為“Environment And/Or Target Segmentation (環(huán)境和/或目標(biāo)分割)”的美國專利申請序列號No. 12/475,094 ;于2009年7月29日提交的名稱為“Auto Generating a Visual Representation(自動(dòng)生成視覺表示)”的美國專利申請序列號No. 12/511, 850 ; 于2009年5月29日提交的名稱為“Gesture Tool (姿勢工具)”的美國專利申請序列號 No. 12/474,655 ;于 2009 年 10 月 21 日提交的名稱為 “Pose Tracking Pipeline(姿態(tài)跟蹤流水線)”的美國專利申請序列號No. 12/603,437;于2009年5月29日提交的名稱為 “Device for Identifying and Tracking Multiple Humans Over Time(用于隨時(shí)間標(biāo)識和跟蹤多個(gè)人類的設(shè)備)”的美國專利申請序列號No. 12/475,308 ;于2009年 10月7日提交的名稱為“Human Tracking System(人類跟蹤系統(tǒng))”的美國專利申請序列號 No. 12/575,388 ;于 2009 年 4 月 13 日提交的名稱為 “Gesture Recognizer System Architecture (姿勢識別器系統(tǒng)架構(gòu))”的美國專利申請序列號No. 12/422,661 ;于2009 年2月23日提交的名稱為“Standard Gestures (標(biāo)準(zhǔn)姿勢)”的美國專利申請序列號 No. 12/391,150 ;以及于2009年5月29日提交的名稱為“Gesture Tool (姿勢工具)”的美國專利申請序列號No. 12/474,655。圖2示出包括捕捉設(shè)備20和計(jì)算環(huán)境12的目標(biāo)檢測和跟蹤系統(tǒng)10的一個(gè)實(shí)施例,該目標(biāo)檢測和跟蹤系統(tǒng)10可用于識別(需要或無需附加到對象的專門傳感設(shè)備)捕捉區(qū)域中的人類或非人類目標(biāo)、唯一地標(biāo)識他們并且在三維空間中跟蹤他們。在一實(shí)施例中, 捕捉設(shè)備20可以是深度相機(jī)(或深度傳感相機(jī)),該相機(jī)被配置成經(jīng)由任何合適的技術(shù),包括例如飛行時(shí)間、結(jié)構(gòu)化光、立體圖像等來捕捉包括深度圖像的帶有深度信息的視頻,該深度圖像可包括深度值。在一個(gè)實(shí)施例中,捕捉設(shè)備20可包括深度傳感圖像傳感器。在一個(gè)實(shí)施例中,捕捉設(shè)備20可將所計(jì)算的深度信息組織為“Z層”或可垂直于從深度相機(jī)沿其視線延伸的Z軸的層。如圖2所示,捕捉設(shè)備20可包括圖像相機(jī)組件32。在一個(gè)實(shí)施例中,圖像相機(jī)組件32可以是可捕捉場景的深度圖像的深度相機(jī)。深度圖像可包括所捕捉的場景的二維 (2-D)像素區(qū)域,其中2-D像素區(qū)域中的每個(gè)像素都可以表示深度值,比如所捕捉的場景中的對象與相機(jī)相距的例如以厘米、毫米等為單位的距離。如圖2所示,圖像相機(jī)組件32可包括可被用來捕捉捕捉區(qū)域的深度圖像的IR光組件34、三維(3-D)相機(jī)36、以及RGB相機(jī)38。例如,在飛行時(shí)間分析中,捕捉設(shè)備20的IR 光組件34可以將紅外光發(fā)射到捕捉區(qū)域上,然后可以使用傳感器,用例如3-D相機(jī)36和/ 或RGB相機(jī)38來檢測從捕捉區(qū)域中的一個(gè)或多個(gè)目標(biāo)和對象的表面反向散射的光。在某實(shí)施例中,捕捉設(shè)備20可包括IR CMOS圖像傳感器。在某些實(shí)施例中,可以使用脈沖式紅外光從而可以測量出射光脈沖和相應(yīng)的入射光脈沖之間的時(shí)間差并將其用于確定從捕捉設(shè)備20到捕捉區(qū)域中的目標(biāo)或?qū)ο笊系奶囟ㄎ恢玫奈锢砭嚯x。此外,可將出射光波的相位與入射光波的相位進(jìn)行比較來確定相移。然后可以使用該相移來確定從捕捉設(shè)備到目標(biāo)或?qū)ο笊系奶囟ㄎ恢玫奈锢砭嚯x。在一個(gè)實(shí)施例中,可使用飛行時(shí)間分析,通過經(jīng)由包括例如快門式光脈沖成像的各種技術(shù)來分析反射光束隨時(shí)間的強(qiáng)度以間接地確定從捕捉設(shè)備20到目標(biāo)或?qū)ο笊系奶囟ㄎ恢玫奈锢砭嚯x。在另一示例中,捕捉設(shè)備20可使用結(jié)構(gòu)化光來捕捉深度信息。在該分析中,圖案化光(即,被顯示為諸如網(wǎng)格圖案或條紋圖案等已知圖案的光)可經(jīng)由例如IR光組件34 被投影到捕捉區(qū)域上。在撞擊到捕捉區(qū)域中的一個(gè)或多個(gè)目標(biāo)或(對象)的表面時(shí),作為響應(yīng),圖案可變形。圖案的這種變形可由例如3-D相機(jī)36和/或RGB相機(jī)38來捕捉并被分析以確定從捕捉設(shè)備到目標(biāo)或?qū)ο笊系奶囟ㄎ恢玫奈锢砭嚯x。在一些實(shí)施例中,兩個(gè)或更多個(gè)不同的相機(jī)可以被合并到一集成的捕捉設(shè)備中。 例如,深度相機(jī)和視頻相機(jī)(例如RGB視頻相機(jī))可以被合并到共同的捕捉設(shè)備中。在一些實(shí)施例中,可以協(xié)作地使用兩個(gè)或更多個(gè)分開的捕捉設(shè)備。例如,可以使用深度相機(jī)和分開的視頻相機(jī)。當(dāng)使用視頻相機(jī)時(shí),該視頻相機(jī)可用于提供目標(biāo)跟蹤數(shù)據(jù)、對目標(biāo)跟蹤進(jìn)行糾錯(cuò)的確認(rèn)數(shù)據(jù)、圖像捕捉、面部識別、對手指(或其他小特征)的高精度跟蹤、光感測和 /或其他功能。在一個(gè)實(shí)施例中,捕捉設(shè)備20可包括可以從不同的角度觀察捕捉區(qū)域的兩個(gè)或更多個(gè)在物理上分離的相機(jī),以獲取可以被解析以生成深度信息的視覺立體數(shù)據(jù)。還可通過使用多個(gè)檢測器(可以是單色、紅外、RGB)或任意其它類型的檢測器捕捉圖像、以及執(zhí)行視差計(jì)算,來確定深度。也可使用其他類型的深度圖像傳感器來創(chuàng)建深度圖像。如圖2所示,捕捉設(shè)備20可以包括話筒40。話筒40可包括可接收聲音并將其轉(zhuǎn)換成電信號的變換器或傳感器。在一個(gè)實(shí)施例中,話筒40可用于減少目標(biāo)檢測和跟蹤系統(tǒng) 10中的捕捉設(shè)備20與計(jì)算環(huán)境12之間的反饋。另外,話筒40可用于接收也可由用戶提供的音頻信號,以控制可由計(jì)算環(huán)境12執(zhí)行的諸如游戲應(yīng)用程序、非游戲應(yīng)用程序等應(yīng)用程序。在一個(gè)實(shí)施例中,捕捉設(shè)備20可以包括可以在操作上與圖像相機(jī)組件32進(jìn)行通信的處理器42。處理器42可包括標(biāo)準(zhǔn)處理器,專用處理器、微處理器等。處理器42可執(zhí)行指令,這些指令可包括用于存儲簡檔的指令、用于接收深度圖像的指令、用于確定合適的目標(biāo)是否可被包括在深度圖像中的指令、用于將合適的目標(biāo)轉(zhuǎn)換成該目標(biāo)的骨架表示或模型的指令、或任何其他合適的指令??梢岳斫猓辽僖恍┠繕?biāo)分析和跟蹤操作可以由一個(gè)或多個(gè)捕捉設(shè)備內(nèi)包含的處理器來執(zhí)行。捕捉設(shè)備可以包括被配置成執(zhí)行一個(gè)或多個(gè)目標(biāo)分析和/或跟蹤功能的一個(gè)或多個(gè)板載處理單元。此外,捕捉設(shè)備可以包括便于更新這樣的板載處理邏輯的固件。如圖2所示,捕捉設(shè)備20可包括存儲器組件44,存儲器組件44可存儲可由處理器 42執(zhí)行的指令、由3-D相機(jī)或RGB相機(jī)所捕捉的圖像或圖像的幀、用戶簡檔、或任何其他合適的信息、圖像等等。在一個(gè)示例中,存儲器組件44可包括隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、高速緩存、閃存、硬盤或任何其他合適的存儲組件。如圖2所示,存儲器組件44 可以是與圖像捕捉組件32和處理器42進(jìn)行通信的單獨(dú)的組件。在另一實(shí)施例中,存儲器組件44可被集成到處理器42和/或圖像捕捉組件32中。在一個(gè)實(shí)施例中,圖2所示的捕捉設(shè)備20的組件32、34、36、38、40、42和44中的部分或全部被容納在單個(gè)外殼中。如圖2所示,捕捉設(shè)備20可以經(jīng)由通信鏈路46與計(jì)算環(huán)境12通信。通信鏈路 46可以是包括例如USB連接、火線連接、以太網(wǎng)電纜連接等的有線連接和/或諸如無線 802. Ilb,802. llg、802. Ila或802. Iln連接等的無線連接。計(jì)算環(huán)境12可以向捕捉設(shè)備 20提供時(shí)鐘,可以使用該時(shí)鐘來通過通信鏈路46確定何時(shí)捕捉,例如,場景。在一個(gè)實(shí)施例中,捕捉設(shè)備20可將由例如3-D照相機(jī)36和/或RGB照相機(jī)38捕捉的深度信息和圖像經(jīng)由通信鏈路46提供給計(jì)算環(huán)境12。計(jì)算環(huán)境12然后可使用深度信息和所捕捉的圖像來例如創(chuàng)建虛擬屏幕、改變用戶界面、以及控制諸如游戲或文字處理程序等應(yīng)用程序。如圖2所示,計(jì)算環(huán)境12包括姿勢庫192、結(jié)構(gòu)數(shù)據(jù)198、姿勢識別引擎190、深度圖像處理和對象報(bào)告模塊194以及操作系統(tǒng)196。深度圖像處理和對象報(bào)告模塊194使用深度圖像來跟蹤諸如用戶和其他對象等對象的運(yùn)動(dòng)。為了幫助跟蹤對象,深度圖像處理和對象報(bào)告模塊194使用姿勢庫190、結(jié)構(gòu)數(shù)據(jù)198和姿勢識別引擎190。在一個(gè)示例中,結(jié)構(gòu)數(shù)據(jù)198包括關(guān)于可被跟蹤的對象的結(jié)構(gòu)信息。例如,可以存儲人類的骨架模型以幫助理解用戶的移動(dòng)并識別身體部位。在另一示例中,還可以存儲關(guān)于無生命對象(諸如道具)的結(jié)構(gòu)信息以幫助識別這些對象并幫助理解移動(dòng)。在一個(gè)示例中,姿勢庫192可包括姿勢過濾器集合,每一姿勢過濾器包括關(guān)于骨架模型可執(zhí)行的姿勢的信息。姿勢識別引擎190可將由捕捉設(shè)備20捕捉的骨架模型以及與其相關(guān)聯(lián)的移動(dòng)形式的數(shù)據(jù)與姿勢庫192中的姿勢過濾器進(jìn)行比較來標(biāo)識用戶(如骨架模型所表示的)何時(shí)執(zhí)行了一個(gè)或多個(gè)姿勢。那些姿勢可與應(yīng)用的各種控制相關(guān)聯(lián)。因此, 計(jì)算環(huán)境12可使用姿勢識別引擎190來解釋骨架模型的移動(dòng)并基于該移動(dòng)來控制操作系統(tǒng)196或應(yīng)用。在一個(gè)實(shí)施例中,深度圖像處理和對象報(bào)告模塊194會將檢測到的每個(gè)對象的標(biāo)識以及每幀的對象的位置和/或定向報(bào)告給操作系統(tǒng)196。操作系統(tǒng)196將使用該信息來更新顯示畫面中的對象(例如,化身)或其他圖像的位置或移動(dòng),或在所提供的用戶界面上執(zhí)行動(dòng)作。關(guān)于姿勢識別器引擎190的更多信息參見2009年4月13日提交的美國專利申請 12/422,661 “Gesture Recognizer System Architecture (姿勢識別器系統(tǒng)架構(gòu))”,該申請通過整體引用合并于此。關(guān)于識別姿勢的更多信息可在2009年2月23日提交的美國專利申請12/391,150 “Standard Gestures (標(biāo)準(zhǔn)姿勢)”;以及2009年5月29日提交的美國專利申請12/474,655 “Gesture Tool (姿勢工具)”中找到,這兩個(gè)申請通過引用整體并入本文。關(guān)于運(yùn)動(dòng)檢測和跟蹤的更多信息可在2009年12月18日提交的美國專利申請 12/641,788 “Motion Detection Using Depth Images (使用深度圖像的運(yùn)動(dòng)檢測)”,以及美國專利申請 12/475,308 “Device for Identifying and Tracking Multiple Humans over Time (用于隨時(shí)間標(biāo)識和跟蹤多個(gè)人類的設(shè)備)”中找到,這兩個(gè)申請通過整體引用合并于此。
圖3示出可由目標(biāo)檢測和跟蹤系統(tǒng)接收的深度圖像60的示例實(shí)施例,諸如圖 1A-1C的目標(biāo)檢測和跟蹤系統(tǒng)10和/或計(jì)算環(huán)境12。在一個(gè)實(shí)施例中,深度圖像60可以是由例如以上參考圖2所描述的捕捉設(shè)備20的3-D相機(jī)36和/或RGB相機(jī)38所捕捉的場景的圖像或幀。如圖3中所示,深度圖像60可包括所捕捉的場景中的人類目標(biāo)62和一個(gè)或多個(gè)非人類目標(biāo)64,諸如墻壁、桌子、監(jiān)視器等。在一個(gè)示例中,深度圖像60可包括多個(gè)觀測到的像素,其中每一觀測到的像素具有相關(guān)聯(lián)的深度值。例如,深度圖像60可包括所捕捉的場景的二維(2-D)像素區(qū)域,其中2-D像素區(qū)域中的每一像素可表示深度值,諸如所捕捉的場景中的對象或目標(biāo)距捕捉設(shè)備的例如以厘米、毫米等為單位的長度或距離。回頭參考圖2,在一個(gè)實(shí)施例中,一旦接收到深度圖像,可將該深度圖像降采樣到較低的處理分辨率,從而可用更少的計(jì)算開銷來更容易地使用和/或更快地處理該深度圖像。另外,可以從深度圖像中移除和/或平滑一個(gè)或多個(gè)高變度和/或含噪聲的深度值,且可以填充和/或重構(gòu)遺漏的和/或被移除的深度信息的各部分。在一個(gè)實(shí)施例中,深度圖像(諸如深度圖像60)可被降采樣作為與來自RGB相機(jī)(諸如相機(jī)38)的圖像或由任何其他檢測器捕捉到的圖像組合使用,以便確定目標(biāo)的形狀和大小。圖4示出了可用于實(shí)現(xiàn)圖2的計(jì)算環(huán)境12的、包括多媒體控制臺(或游戲控制臺)100計(jì)算環(huán)境的示例。如圖4所示,多媒體控制臺100具有含有一級高速緩存102、二級高速緩存104和閃存ROM(只讀存儲器)106的中央處理單元(CPU) 101。一級高速緩存102 和二級高速緩存104臨時(shí)存儲數(shù)據(jù)并因此減少存儲器訪問周期數(shù),由此改進(jìn)處理速度和吞吐量。CPU 101可被設(shè)置成具有一個(gè)以上的內(nèi)核,并且由此附加一級和二級高速緩存102和 104。閃存ROM 106可存儲在多媒體控制臺100通電時(shí)引導(dǎo)過程的初始階段期間加載的可執(zhí)行代碼。圖形處理單元(GPU) 108和視頻編碼器/視頻編解碼器(編碼器/解碼器)114形成用于高速和高分辨率圖形處理的視頻處理流水線。數(shù)據(jù)經(jīng)由總線從圖形處理單元108輸送到視頻編碼器/視頻編解碼器114。視頻處理流水線向A/V(音頻/視頻)端口 140輸出數(shù)據(jù),以便傳輸?shù)诫娨暀C(jī)或其他顯示器。存儲器控制器110連接到GPU 108以方便處理器訪問各種類型的存儲器112,諸如但不局限于RAM(隨機(jī)存取存儲器)。多媒體控制臺100包括較佳地在模塊118上實(shí)現(xiàn)的I/O控制器120、系統(tǒng)管理控制器122、音頻處理單元123、網(wǎng)絡(luò)接口控制器124、第一 USB主控制器126、第二 USB控制器128和前面板I/O子部件130。USB控制器126和128用作外圍控制器142 (I)-142 (2)、 無線適配器148、以及外置存儲器設(shè)備146 (例如,閃存、外置⑶/DVD ROM驅(qū)動(dòng)器、可移動(dòng)介質(zhì)等)的主機(jī)。網(wǎng)絡(luò)接口 124和/或無線適配器148提供對網(wǎng)絡(luò)(例如,因特網(wǎng)、家庭網(wǎng)絡(luò)等)的訪問,并且可以是包括以太網(wǎng)卡、調(diào)制解調(diào)器、藍(lán)牙模塊、電纜調(diào)制解調(diào)器等的各種不同的有線或無線適配器組件中任何一種。提供系統(tǒng)存儲器143來存儲在引導(dǎo)過程期間加載的應(yīng)用數(shù)據(jù)。提供介質(zhì)驅(qū)動(dòng)器 144,并且其可包括DVD/CD驅(qū)動(dòng)器、硬盤驅(qū)動(dòng)器,或其他可移動(dòng)介質(zhì)驅(qū)動(dòng)器等。媒體驅(qū)動(dòng)器 144可以內(nèi)置或外置于多媒體控制臺100。應(yīng)用數(shù)據(jù)可經(jīng)由媒體驅(qū)動(dòng)器144訪問,以由多媒體控制臺100執(zhí)行、回放等。媒體驅(qū)動(dòng)器144經(jīng)由諸如串行ATA總線或其他高速連接(例如IEEE 1394)等總線連接到I/O控制器120。系統(tǒng)管理控制器122提供涉及確保多媒體控制臺100的可用性的各種服務(wù)功能。音頻處理單元123和音頻編解碼器132形成具有高保真度和立體聲處理的對應(yīng)的音頻處理流水線。音頻數(shù)據(jù)經(jīng)由通信鏈路在音頻處理單元123與音頻編解碼器132之間傳輸。音頻處理流水線將數(shù)據(jù)輸出到A/V端口 140,以供外置音頻播放器或具有音頻能力的設(shè)備再現(xiàn)。前面板I/O子部件130支持暴露在多媒體控制臺100的外表面上的電源按鈕150 和彈出按鈕152以及任何LED(發(fā)光二極管)或其他指示器的功能。系統(tǒng)供電模塊136向多媒體控制臺100的組件供電。風(fēng)扇138冷卻多媒體控制臺100內(nèi)的電路。CPU IOU GPU 108、存儲器控制器110、和多媒體控制臺100內(nèi)的各個(gè)其他組件經(jīng)由一條或多條總線互連,包括串行和并行總線、存儲器總線、外圍總線、和使用各種總線架構(gòu)中任一種的處理器或局部總線。作為示例,這些架構(gòu)可以包括外圍部件互連(PCI)總線、 PCI-Express 總線等。當(dāng)多媒體控制臺100通電時(shí),應(yīng)用數(shù)據(jù)可從系統(tǒng)存儲器143加載到存儲器112和 /或高速緩存102、104中,并且可在CPU 101上執(zhí)行。應(yīng)用可呈現(xiàn)在導(dǎo)航到多媒體控制臺 100上可用的不同媒體類型時(shí)提供一致的用戶體驗(yàn)的圖形用戶界面。在操作中,媒體驅(qū)動(dòng)器 144中包含的應(yīng)用和/或其他媒體可從媒體驅(qū)動(dòng)器144啟動(dòng)或播放,以向多媒體控制臺100 提供附加功能。多媒體控制臺100可通過將該系統(tǒng)簡單地連接到電視機(jī)或其他顯示器而作為獨(dú)立系統(tǒng)來操作。在該獨(dú)立模式中,多媒體控制臺100允許一個(gè)或多個(gè)用戶與該系統(tǒng)交互、看電影、或聽音樂。然而,隨著通過網(wǎng)絡(luò)接口 124或無線適配器148可用的寬帶連接的集成, 多媒體控制臺100還可作為較大網(wǎng)絡(luò)社區(qū)中的參與者來操作。當(dāng)多媒體控制臺100通電時(shí),可以保留設(shè)定量的硬件資源以供多媒體控制臺操作系統(tǒng)作系統(tǒng)使用。這些資源可以包括存儲器保留量(例如,16MB)、CPU和GPU周期保留量 (例如,5% )、網(wǎng)絡(luò)帶寬保留量(例如,8kbs)等。因?yàn)檫@些資源是在系統(tǒng)引導(dǎo)時(shí)保留的,所以所保留的資源從應(yīng)用的角度而言是不存在的。具體而言,存儲器保留優(yōu)選地足夠大,以包含啟動(dòng)內(nèi)核、并發(fā)系統(tǒng)應(yīng)用程序和驅(qū)動(dòng)程序。CPU保留優(yōu)選地為恒定,使得若所保留的CPU用量不被系統(tǒng)應(yīng)用使用,則空閑線程將消耗任何未使用的周期。對于GPU保留,通過使用GPU中斷來調(diào)度代碼以將彈出窗口呈現(xiàn)為覆蓋圖,從而顯示由系統(tǒng)應(yīng)用程序生成的輕量消息(例如,彈出窗口)。覆蓋圖所需的存儲器量取決于覆蓋區(qū)域大小,并且覆蓋圖優(yōu)選地與屏幕分辨率成比例縮放。在并發(fā)系統(tǒng)應(yīng)用使用完整用戶界面的情況下,優(yōu)選使用獨(dú)立于應(yīng)用分辨率的分辨率。定標(biāo)器可用于設(shè)置該分辨率,從而無需改變頻率和引起TV重新同步。在多媒體控制臺100引導(dǎo)且系統(tǒng)資源被保留之后,執(zhí)行并發(fā)系統(tǒng)應(yīng)用來提供系統(tǒng)功能。系統(tǒng)功能被封裝在上述所保留的系統(tǒng)資源中執(zhí)行的一組系統(tǒng)應(yīng)用中。操作系統(tǒng)內(nèi)核標(biāo)識線程是系統(tǒng)應(yīng)用線程還是游戲應(yīng)用線程。系統(tǒng)應(yīng)用優(yōu)選地被調(diào)度為在預(yù)定時(shí)間并以預(yù)定時(shí)間間隔在CPU 101上運(yùn)行,以便為應(yīng)用提供一致的系統(tǒng)資源視圖。進(jìn)行調(diào)度是為了把由在控制臺上運(yùn)行的游戲應(yīng)用所引起的高速緩存中斷最小化。當(dāng)并發(fā)系統(tǒng)應(yīng)用需要音頻時(shí),則由于時(shí)間敏感性而將音頻處理相對于游戲應(yīng)用進(jìn)行異步調(diào)度。多媒體控制臺應(yīng)用管理器在系統(tǒng)應(yīng)用活動(dòng)時(shí)控制游戲應(yīng)用音頻水平(例如, 靜音、衰減)。
輸入設(shè)備(例如,控制器142(1)和142(2))由游戲應(yīng)用和系統(tǒng)應(yīng)用共享。輸入設(shè)備不是保留資源,而是在系統(tǒng)應(yīng)用和游戲應(yīng)用之間切換以使其各自具有設(shè)備的焦點(diǎn)。應(yīng)用管理器較佳地控制輸入流的切換,而無需知曉游戲應(yīng)用的知識,并且驅(qū)動(dòng)程序維護(hù)有關(guān)焦點(diǎn)切換的狀態(tài)信息。在某些實(shí)施例中,圖2的捕捉設(shè)備20可以是對多媒體控制臺100的附加輸入設(shè)備。圖5示出了可用于實(shí)現(xiàn)圖2的計(jì)算環(huán)境12的計(jì)算環(huán)境的另一示例。圖5的計(jì)算環(huán)境只是合適的計(jì)算環(huán)境的一個(gè)示例,并且不旨在對所公開的主題的使用范圍或功能提出任何限制。也不應(yīng)該將圖2的計(jì)算環(huán)境12解釋為對圖5的示例性操作環(huán)境中示出的任一組件或其組合有任何依賴性或要求。在一些實(shí)施例中,各個(gè)所示的計(jì)算元素可包括被配置成實(shí)例化本公開的特定方面的電路。例如,本公開中所使用的術(shù)語電路可包括被配置成通過固件或開關(guān)來執(zhí)行功能的專用硬件組件。在其他示例中,術(shù)語電路可包括由軟件指令配置的實(shí)施可用于執(zhí)行功能的邏輯的通用處理單元、存儲器等。在其中電路包括硬件和軟件的組合的實(shí)施例中,實(shí)施者可以編寫體現(xiàn)邏輯的源代碼,且源代碼可以被編譯為可以由通用處理單元處理的機(jī)器可讀代碼。在圖5中,計(jì)算系統(tǒng)220包括通常包括各種計(jì)算機(jī)可讀介質(zhì)的計(jì)算機(jī)241。計(jì)算機(jī)可讀介質(zhì)可以是可由計(jì)算機(jī)241訪問的任何可用介質(zhì),而且包括易失性和非易失性介質(zhì)、 可移動(dòng)和不可移動(dòng)介質(zhì)。系統(tǒng)存儲器222包括易失性和/或非易失性存儲器形式的計(jì)算機(jī)存儲介質(zhì),如只讀存儲器(ROM) 223和隨機(jī)存取存儲器(RAM) 260。包含諸如在啟動(dòng)期間幫助在計(jì)算機(jī)241內(nèi)的元件之間傳輸信息的基本例程的基本輸入/輸出系統(tǒng)224 (BIOS)通常儲存儲在ROM 223中。RAM 260通常包含處理單元259可立即訪問和/或當(dāng)前正在其上操作的數(shù)據(jù)和/或程序模塊。作為示例而非限制,圖5示出了操作系統(tǒng)225、應(yīng)用程序226、其它程序模塊227和程序數(shù)據(jù)228。計(jì)算機(jī)241還可包括其他可移動(dòng)/不可移動(dòng)、易失性/非易失性計(jì)算機(jī)存儲介質(zhì)。 作為示例,圖5示出了從不可移動(dòng)、非易失性磁介質(zhì)中讀取或向其寫入的硬盤驅(qū)動(dòng)器238, 從可移動(dòng)、非易失性磁盤254中讀取或向其寫入的磁盤驅(qū)動(dòng)器239,以及從諸如CD ROM或其它光學(xué)介質(zhì)等可移動(dòng)、非易失性光盤253中讀取或向其寫入的光盤驅(qū)動(dòng)器240??稍谑纠圆僮鳝h(huán)境中使用的其它可移動(dòng)/不可移動(dòng)、易失性/非易失性計(jì)算機(jī)存儲介質(zhì)包括但不限于,磁帶盒、閃存卡、數(shù)字多功能盤、數(shù)字錄像帶、固態(tài)RAM、固態(tài)ROM等。硬盤驅(qū)動(dòng)器238通常通過諸如接口 234之類的不可移動(dòng)存儲器接口連接到系統(tǒng)總線221,并且磁盤驅(qū)動(dòng)器239 和光盤驅(qū)動(dòng)器240通常通過諸如接口 235之類的可移動(dòng)存儲器接口連接到系統(tǒng)總線221。上文討論并在圖5中示出的驅(qū)動(dòng)器及其相關(guān)聯(lián)的計(jì)算機(jī)存儲介質(zhì)為計(jì)算機(jī)241提供了對計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其他數(shù)據(jù)的存儲。例如,在圖5中,硬盤驅(qū)動(dòng)器238被示為存儲操作系統(tǒng)258、應(yīng)用程序257、其它程序模塊256和程序數(shù)據(jù)255。注意, 這些組件可與操作系統(tǒng)225、應(yīng)用程序226、其他程序模塊227和程序數(shù)據(jù)228相同,也可與它們不同。此處操作系統(tǒng)258、應(yīng)用程序257、其他程序模塊256、以及程序數(shù)據(jù)255被賦予不同的編號,以示出至少它們是不同的副本。用戶可以通過輸入設(shè)備,例如鍵盤251和定點(diǎn)設(shè)備252 (通常是指鼠標(biāo)、跟蹤球或觸摸墊)向計(jì)算機(jī)241輸入命令和信息。其他輸入設(shè)備 (未示出)可包括話筒、操縱桿、游戲手柄、圓盤式衛(wèi)星天線、掃描儀等。這些以及其他輸入設(shè)備通常通過耦合到系統(tǒng)總線的用戶輸入接口 236連接到處理單元259,但也可通過諸如并行端口、游戲端口或通用串行總線(USB)之類的其他接口和總線結(jié)構(gòu)來連接。圖2的相機(jī)34、36和捕捉設(shè)備20可定義用于計(jì)算機(jī)241的附加輸入設(shè)備。監(jiān)視器242或其他類型的顯示設(shè)備也經(jīng)由諸如視頻接口 232之類的接口連接到系統(tǒng)總線221。除監(jiān)視器之外,計(jì)算機(jī)還可以包括可以通過輸出外圍接口 233連接的諸如揚(yáng)聲器244和打印機(jī)243之類的其他外圍輸出設(shè)備。計(jì)算機(jī)241可使用到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī)(諸如,遠(yuǎn)程計(jì)算機(jī)246)的邏輯連接而在聯(lián)網(wǎng)環(huán)境中操作。遠(yuǎn)程計(jì)算機(jī)246可以是個(gè)人計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它常見網(wǎng)絡(luò)節(jié)點(diǎn),且通常包括上文相對于計(jì)算機(jī)241描述的許多或所有元件,盡管在圖5中只示出存儲器存儲設(shè)備247。圖5中所示的邏輯連接包括局域網(wǎng)(LAN) 245和廣域網(wǎng)(WAN)249,但也可以包括其它網(wǎng)絡(luò)。此類聯(lián)網(wǎng)環(huán)境在辦公室、企業(yè)范圍的計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)中是常見的。當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中使用時(shí),計(jì)算機(jī)241通過網(wǎng)絡(luò)接口或適配器237連接到LAN 245。當(dāng)在WAN聯(lián)網(wǎng)環(huán)境中使用時(shí),計(jì)算機(jī)241通常包括調(diào)制解調(diào)器250或用于通過諸如因特網(wǎng)之類的WAN 249建立通信的其他手段。調(diào)制解調(diào)器250可以是內(nèi)置的或外置的,可經(jīng)由用戶輸入接口 236或其他適當(dāng)?shù)臋C(jī)制連接到系統(tǒng)總線221。在聯(lián)網(wǎng)環(huán)境中,相對于計(jì)算機(jī) 241所示的程序模塊或其部分可被存儲在遠(yuǎn)程存儲器存儲設(shè)備中。作為示例而非限制,圖5 示出了遠(yuǎn)程應(yīng)用程序248駐留在存儲器設(shè)備247上。應(yīng)當(dāng)理解,所示的網(wǎng)絡(luò)連接是示例性的,并且可使用在計(jì)算機(jī)之間建立通信鏈路的其它手段。在一個(gè)實(shí)施例中,計(jì)算系統(tǒng)220可被配置成用模型來表示每個(gè)目標(biāo)。如下面更詳細(xì)地描述的,從這樣一種模型導(dǎo)出的信息可與從諸如深度相機(jī)之類的捕捉設(shè)備獲得信息相比較,使得模型的基本比例或形狀以及其當(dāng)前姿態(tài)可被調(diào)整成更準(zhǔn)確地表示被建模的目標(biāo)。模型可由一個(gè)或多個(gè)多邊形網(wǎng)格、由一組數(shù)學(xué)圖元、和/或通過被建模的目標(biāo)的其他合適的機(jī)器表不來表不。圖6A是描述用于檢測和跟蹤一個(gè)或多個(gè)目標(biāo)的過程的一個(gè)實(shí)施例的流程圖。在某些實(shí)施例中,一個(gè)或多個(gè)目標(biāo)可包括人類游戲玩家的身體部位和道具。在某些實(shí)施例中, 一個(gè)或多個(gè)目標(biāo)的特定對象可表示身體部位和道具的組合。例如,特定對象可包括棒球手套和前臂的上部。圖6A的過程可由一個(gè)或多個(gè)計(jì)算設(shè)備來執(zhí)行。圖6A的過程中每一步驟都可由與在其他捕捉中所使用的那些計(jì)算設(shè)備相同或不同的計(jì)算設(shè)備來執(zhí)行,且每一步驟不必由單個(gè)計(jì)算設(shè)備來執(zhí)行。在一個(gè)實(shí)施例中,圖6A的過程通過諸如圖2中的計(jì)算環(huán)境之類的計(jì)算環(huán)境來執(zhí)行。在步驟602,從諸如圖2的捕捉設(shè)備20之類的源獲得一個(gè)或多個(gè)深度圖像。在某些實(shí)施例中,源可以是配置成通過諸如飛行時(shí)間分析、結(jié)構(gòu)化光分析、立體視覺分析之類的合適的技術(shù)或其他合適的技術(shù)獲得關(guān)于目標(biāo)的深度信息的深度相機(jī)。在一個(gè)實(shí)施例中,所獲得的深度圖像可包括多個(gè)觀測到的像素,其中每一觀測到的像素都具有包括從源觀看到的目標(biāo)的深度信息在內(nèi)的一個(gè)或多個(gè)觀測到的深度值。所獲得的深度圖像可任選地被表示為像素矩陣,該像素矩陣包括對應(yīng)于每一像素地址、指示從深度相機(jī)的平面或另一合適的基準(zhǔn)平面到該像素地址處的表面的世界空間深度的深度值。在一個(gè)實(shí)施例中,可將所獲得的深度圖像降采樣至較低分辨率的圖像。在另一實(shí)施例中,所獲得的深度圖像可被過濾以移除和或平滑一個(gè)或多個(gè)高變度和/或含噪聲的深度值。所獲得的深度圖像中的此類高變度和/或含噪聲的深度值可源自多個(gè)不同的源,諸如在圖像捕捉過程期間發(fā)生的隨機(jī)和/ 或系統(tǒng)性誤差、因捕捉設(shè)備而導(dǎo)致的缺陷和/或畸變等。在步驟604,可以處理一個(gè)或多個(gè)所獲得的深度圖像,以將要被跟蹤的前景對象與非目標(biāo)對象或其他背景元素區(qū)分開來。如本文中所使用的,術(shù)語“背景”用來描述圖像中不作為要被跟蹤的一個(gè)或多個(gè)目標(biāo)的一部分的任何事物。背景可包括在要跟蹤的一個(gè)或多個(gè)目標(biāo)前面(即,更接近深度相機(jī))的元素。區(qū)分要被跟蹤的前景元素與可忽略的背景元素可增加跟蹤效率和/或簡化下游處理。在一個(gè)實(shí)施例中,可以向所獲得的深度圖像中的每一數(shù)據(jù)點(diǎn)(例如,像素)分配標(biāo)識特定數(shù)據(jù)點(diǎn)屬于前景元素或?qū)儆诜悄繕?biāo)背景元素的分段值(或索引)。分段值可表示指示像素屬于特定目標(biāo)和/或背景元素的概率的離散索引值或模糊索引值。在一個(gè)示例中, 可以向包括在前景圖像內(nèi)的一個(gè)或多個(gè)目標(biāo)中的每一個(gè)分配不同的分段值。例如,與第一游戲玩家相對應(yīng)的像素可分配有等于I的玩家索引,與第二玩家相對應(yīng)的像素可分配有等于2的玩家索引,而不與目標(biāo)玩家相對應(yīng)的像素可分配有等于O的背景索引。在另一實(shí)施例中,在一個(gè)或多個(gè)后續(xù)處理步驟中,可以將分配有背景索引的像素或其他數(shù)據(jù)點(diǎn)排除在考慮以外。在某些實(shí)施例中,可省略區(qū)分前景像素與背景像素的處理步驟。在步驟606,執(zhí)行前景像素分配。前景像素分配可包括分析一個(gè)或多個(gè)前景像素以確定一個(gè)或多個(gè)目標(biāo)(包括身體部位和道具)中的哪個(gè)有可能與一個(gè)或多個(gè)前景像素相關(guān)聯(lián)。各種不同的前景像素分配技術(shù)可用于評估特定像素有可能屬于一個(gè)或多個(gè)目標(biāo)(或?qū)σ粋€(gè)或多個(gè)目標(biāo)的機(jī)器表示)中的哪一個(gè)。在一個(gè)實(shí)施例中,在確定向特定前景像素或特定前景像素組分配哪些概率中使用深度信息和顏色信息兩者。在一個(gè)實(shí)施例中,機(jī)器學(xué)習(xí)可用于向每一前景像素分配目標(biāo)索引和/或目標(biāo)概率分布。機(jī)器學(xué)習(xí)方法使用從分析先前訓(xùn)練的已知姿勢集(例如,訓(xùn)練一組被分割的圖像) 中所學(xué)的信息,來分析前景對象。在一個(gè)示例中,可使用無狀態(tài)方法來在沒有任何在先上下文的情況下(即,不需要在先幀的知識)向每一前景像素分配目標(biāo)索引或分布。在某些實(shí)施例中,前景像素分配的機(jī)器學(xué)習(xí)方法可利用一個(gè)或多個(gè)判定樹來分析所獲得的深度圖像中每一感興趣的前景像素。這樣的分析可確定對該像素的目標(biāo)分配的最佳猜測,以及該最佳猜測是正確的置信度。在某些實(shí)施例中,最佳猜測可包括在兩個(gè)或更多可能目標(biāo)上的概率分布,以及置信度可通過不同的可能目標(biāo)的相對概率來表示。在判決樹的每一節(jié)點(diǎn)處,進(jìn)行兩個(gè)像素之間的觀測到的深度值比較,并且取決于該比較的結(jié)果,在判決樹的子節(jié)點(diǎn)處進(jìn)行兩個(gè)像素之間的后續(xù)深度值比較。在每一節(jié)點(diǎn)處的這些比較結(jié)果確定在下一節(jié)點(diǎn)處要比較的像素。 每一判決樹的端節(jié)點(diǎn)導(dǎo)致目標(biāo)分類和該分類中相關(guān)聯(lián)的置信度。在某些實(shí)施例中,后續(xù)判決樹可用于迭代地細(xì)化對每一像素的一個(gè)或多個(gè)目標(biāo)分配的最佳猜測以及該最佳猜測是正確的置信度。例如,一旦已經(jīng)用第一分類樹對像素進(jìn)行了分類(基于鄰近深度值),就可執(zhí)行細(xì)化分類以便使用查看先前已分類像素和/或深度值的第二判決樹來對每一像素進(jìn)行分類。第三次遍歷可用于通過查看先前已分類像素和/或深度值來進(jìn)一步細(xì)化對當(dāng)前像素的分類??梢岳斫猓梢詧?zhí)行實(shí)際上任何數(shù)量的迭代,較少的迭代導(dǎo)致較少的計(jì)算花費(fèi),而較多的迭代可能提供更準(zhǔn)確的分類和/或置信度。
在某些實(shí)施例中,判決樹可在訓(xùn)練模式期間被構(gòu)造,其中,已知姿態(tài)的已知模型的樣本(例如,被分割的圖像的訓(xùn)練集)被分析,以確定可在判決樹的每一節(jié)點(diǎn)處詢問的、用于產(chǎn)生準(zhǔn)確的像素分類的問題(即,測試)。在一個(gè)實(shí)施例中,前景像素分配是無狀態(tài)的,這意味著作出的像素分配并不參考在先狀態(tài)(或在先圖像幀)。用于分配特定像素或一組像素表示一個(gè)或多個(gè)對象的概率的無狀態(tài)處理的一個(gè)示例是樣本處理。樣本處理使用采用深度圖像的機(jī)器學(xué)習(xí)方法,并且通過向每一像素分配在其可能相對應(yīng)的一個(gè)或多個(gè)對象上的概率分布來對每一像素進(jìn)行分類。例如,可以向給定像素(它實(shí)際上是網(wǎng)球拍)分配它屬于網(wǎng)球拍的70%的可能性,它屬于乒乓拍的20%的可能性,以及它屬于右臂的10%的可能性。樣本處理可輸入上百萬個(gè)預(yù)分類訓(xùn)練樣本(例如,被分割的圖像),學(xué)習(xí)在預(yù)分類訓(xùn)練樣本內(nèi)的像素集合之間的關(guān)系, 以及基于特定深度圖像來生成被分割的圖像。在一個(gè)示例中,樣本處理可產(chǎn)生分類圖,其中像素是按屬于特定對象(例如身體部位或道具)的概率來分類的。樣本處理還在名稱為 “Human Body Pose Estimation(人類身體姿態(tài)估計(jì))”的美國專利申請序列號12/454,628 中描述,該專利申請的全部內(nèi)容通過引用結(jié)合于此。在另一實(shí)施例中,樣本處理和質(zhì)心生成被用于生成關(guān)于正確標(biāo)識諸如身體部位和 /或道具之類的特定對象的概率。質(zhì)心可具有所捕捉的對象被正確標(biāo)識為給定對象(諸如,手、臉或道具)的相關(guān)聯(lián)概率。在一個(gè)實(shí)施例中,生成用戶的頭、肩、肘、腕和手的質(zhì)心。 樣本處理和質(zhì)心生成在名稱為 “Skeletal Joint Recognition and Tracking System(骨架關(guān)節(jié)識別和跟蹤系統(tǒng))”的美國專利申請?zhí)?2/825,657和名稱為“Multiple Centroid Condensation of Probability Distribution Clouds (概率分布云的多質(zhì)心壓縮)”的美國專利申請?zhí)?2/770,394中進(jìn)一步描述。上述申請中的每一個(gè)的全部內(nèi)容通過引用結(jié)合于此。在步驟607,生成一個(gè)或多個(gè)分類圖。如圖6A中所示,步驟607可接收來自步驟 602、604和606的輸入。在一個(gè)實(shí)施例中,生成對應(yīng)于身體部位目標(biāo)的第一分類圖,并且生成對應(yīng)于道具目標(biāo)的第二分類圖。在另一實(shí)施例中,生成覆蓋多個(gè)目標(biāo)的統(tǒng)一分類圖,這些多個(gè)目標(biāo)包括身體部位目標(biāo)和道具目標(biāo)兩者。在用于生成統(tǒng)一分類圖的方法的一個(gè)示例中,向用于實(shí)現(xiàn)步驟606的機(jī)器學(xué)習(xí)技術(shù)提供的訓(xùn)練集合包括被分割的圖像,這些被分割的圖像包括一個(gè)或多個(gè)身體部位和一個(gè)或多個(gè)道具。在一個(gè)示例中,被分割的圖像中的每一像素被標(biāo)識為身體部位,對象,或是背景之一。圖6B是描述用于生成一個(gè)或多個(gè)分類圖的過程的另一實(shí)施例的流程圖。圖6B中描述的過程僅僅是用于實(shí)現(xiàn)圖6A中步驟607的處理的一個(gè)示例。圖6B的過程可由一個(gè)或多個(gè)計(jì)算設(shè)備來執(zhí)行。圖6B的過程中每一步驟都可由與在其他步驟中所使用的那些計(jì)算設(shè)備相同或不同的計(jì)算設(shè)備來執(zhí)行,且每一步驟不必由單個(gè)計(jì)算設(shè)備來執(zhí)行。在一個(gè)實(shí)施例中,圖6B的過程由游戲控制臺來執(zhí)行。在圖6B中,分類圖是從身體部位目標(biāo)的深度圖像中生成的。在一個(gè)實(shí)施例中,步驟654的分類圖可使用步驟606的概率分配來生成,借此向前景像素分配屬于一個(gè)或多個(gè)身體部位目標(biāo)的概率。在步驟656,可從步驟654所生成的分類圖中標(biāo)識出身體部位。在一個(gè)實(shí)施例中,在向一個(gè)或多個(gè)像素所分配的、該一個(gè)或多個(gè)像素表示特定身體部位的概率大于90%的情況下,該特定身體部位被標(biāo)識。在步驟657,將標(biāo)識出的身體部位從深度圖像(或深度圖像的派生物)中移除。在某些實(shí)施例中,背景也被移除。在步驟658,對深度圖像執(zhí)行對象識別,而標(biāo)識出的身體部位被移除以標(biāo)識一個(gè)或多個(gè)道具。在一個(gè)實(shí)施例中,樣本處理可用于執(zhí)行對象識別。也可使用其他合適的對象識別技術(shù)。在步驟659,基于步驟658 的結(jié)果來生成一個(gè)或多個(gè)道具的分類圖。使用沒有道具的訓(xùn)練集來執(zhí)行步驟606(而對象識別過程跟隨其后)的一個(gè)優(yōu)點(diǎn)是,與使用包括道具的訓(xùn)練集執(zhí)行步驟606相比,步驟658 的對象識別過程在檢測對象方面更高效。圖6C是描述用于生成一個(gè)或多個(gè)分類圖的過程的另一實(shí)施例的流程圖。圖6C中描述的過程僅僅是用于實(shí)現(xiàn)圖6A中步驟607的處理的一個(gè)示例。圖6C的過程可由一個(gè)或多個(gè)計(jì)算設(shè)備來執(zhí)行。圖6C的過程中每一步驟都可由與在其他步驟中所使用的那些計(jì)算設(shè)備相同或不同的計(jì)算設(shè)備來執(zhí)行,且每一步驟不必由單個(gè)計(jì)算設(shè)備來執(zhí)行。在一個(gè)實(shí)施例中,圖6C的過程由游戲控制臺來執(zhí)行。在圖6C中,分類圖是從道具目標(biāo)的深度圖像中生成的。道具目標(biāo)包括活動(dòng)道具和 /或不活動(dòng)道具。在一個(gè)實(shí)施例中,步驟663的分類圖可使用步驟606的概率分配來生成, 借此向前景像素分配屬于一個(gè)或多個(gè)道具目標(biāo)的概率。在步驟665,可從步驟663所生成的分類圖中標(biāo)識出道具。在一個(gè)實(shí)施例中,在向一個(gè)或多個(gè)像素所分配的、該一個(gè)或多個(gè)像素表示特定道具的概率大于90%的情況下,該特定道具被標(biāo)識。在步驟667,將標(biāo)識出的道具從深度圖像(或深度圖像的派生物)中移除。在某些實(shí)施例中,背景也被移除。在一個(gè)實(shí)施例中,向與一個(gè)或多個(gè)被移除的道具相關(guān)聯(lián)的像素分配“不在乎(don’t care)”值。該 “不在乎”值可被后續(xù)處理步驟用來忽視與被移除的像素相關(guān)聯(lián)的深度信息。這一信息對后續(xù)分類步驟而言可能是有幫助的,因?yàn)楸灰瞥南袼乜赡芤呀?jīng)與一個(gè)或多個(gè)道具相關(guān)聯(lián), 該一個(gè)或多個(gè)道具可能已經(jīng)在身體部位前面(即,在后續(xù)處理步驟中正被識別或分類的身體部位可能已經(jīng)被一個(gè)或多個(gè)道具遮擋)。在步驟668,對深度圖像執(zhí)行對象識別,而標(biāo)識出的道具被移除以標(biāo)識一個(gè)或多個(gè)身體部位。在一個(gè)實(shí)施例中,樣本處理可用于執(zhí)行對象識別。在一個(gè)示例中,步驟604和606可與包括被分割的身體部位圖像在內(nèi)的新訓(xùn)練集一起使用。也可使用其他合適的對象識別技術(shù)。在步驟669,基于步驟668的結(jié)果來生成一個(gè)或多個(gè)身體部位的分類圖?;仡^參考圖6A,在步驟610中,執(zhí)行模型解析和跟蹤。在一個(gè)實(shí)施例中,模型解析和跟蹤包括模型擬合608、骨架跟蹤620、以及道具跟蹤622。在一個(gè)實(shí)施例中,模型解析和跟蹤610可接收一個(gè)或多個(gè)分類圖,該一個(gè)或多個(gè)分類圖基于來自步驟602的一個(gè)或多個(gè)原始深度圖像、來自步驟604的前景/背景信息、來自步驟606的前景像素概率分配。在一個(gè)實(shí)施例中,模型擬合608用于將一個(gè)或多個(gè)可能的計(jì)算機(jī)模型擬合到一個(gè)或多個(gè)所獲得的圖像和/或一個(gè)或多個(gè)分類圖上。一個(gè)或多個(gè)計(jì)算機(jī)模型可包括所建模的目標(biāo)的機(jī)器表示(例如,身體部位或道具的機(jī)器表示)。在某些實(shí)施例中,涉及線、面、或更復(fù)雜的幾何形狀的模型擬合可應(yīng)用于跟蹤三維空間中的對象。在某些示例中,模型可包括將目標(biāo)表示為包括剛性的或可變形的形狀、或身體部位的三維模型的一個(gè)或多個(gè)數(shù)據(jù)結(jié)構(gòu)。每一目標(biāo)(例如,人類和/或道具)或目標(biāo)的一部分可被表征為數(shù)學(xué)圖元,數(shù)學(xué)圖元的示例包括但不限于,球體、各向異性地縮放的球體、圓柱體、各向異性圓柱體、平滑圓柱體、 方形、斜面方形、棱柱等。在某些示例中,目標(biāo)可使用參數(shù)化三維模型來建模。在某些示例中,模型可包括負(fù)空間(negative space)(即,應(yīng)沒有任何東西的空間)。在一個(gè)示例中,包含空的空間的方向盤可用包括與該空的空間相關(guān)聯(lián)的負(fù)空間的三維模型來建模。在另一示例中,棒球棒末端處的空間可用負(fù)空間來建模。在一個(gè)實(shí)施例中,在模型擬合608期間,將人類目標(biāo)建模成包括多個(gè)骨架點(diǎn)的骨架,每一骨架點(diǎn)在世界空間中具有三維位置。各個(gè)骨架點(diǎn)可與人類目標(biāo)的實(shí)際關(guān)節(jié)、人類目標(biāo)肢端的末端、和/或不與人類目標(biāo)在解剖上直接鏈接的點(diǎn)相對應(yīng)。每一骨架點(diǎn)具有至少三個(gè)自由度(例如,世界空間X、y、Z)。在一個(gè)示例中,具有31個(gè)骨架點(diǎn)的骨架可由93個(gè)值來定義。在某些實(shí)施例中,各種模型擬合方法可使用深度信息、背景信息、道具信息、身體部位信息、和/或在先訓(xùn)練的解剖學(xué)和運(yùn)動(dòng)信息,來將一個(gè)或多個(gè)計(jì)算機(jī)模型映射到所獲得的圖像上。例如,身體部位信息可用于找出一個(gè)或多個(gè)骨架骨頭的一個(gè)或多個(gè)候選位置。 隨后,多個(gè)似乎真實(shí)的骨架可被組裝以包括一個(gè)或多個(gè)候選位置的不同組合處的骨架骨頭。然后可對各個(gè)似乎真實(shí)的骨架打分,且可將打分的建議合并到最終評估中。在一個(gè)實(shí)施例中,模型擬合608包括兩個(gè)分量身體部位建議者,它為每一身體部位獨(dú)立地從前景像素分配606中提取候選位置(例如,找出每一身體部位的質(zhì)心);以及骨架生成器,它將這些候選合并成完整的骨架?;仡^參考圖6A,在一個(gè)實(shí)施例中,用于檢測和跟蹤一個(gè)或多個(gè)目標(biāo)的過程可由目標(biāo)建議系統(tǒng)和目標(biāo)跟蹤系統(tǒng)來實(shí)現(xiàn)。目標(biāo)建議系統(tǒng)可實(shí)現(xiàn)步驟602、604、606和607以便標(biāo)識一個(gè)或多個(gè)候選目標(biāo)。一個(gè)或多個(gè)候選目標(biāo)可在一個(gè)或多個(gè)分類圖內(nèi)被標(biāo)識。目標(biāo)跟蹤系統(tǒng)可實(shí)現(xiàn)步驟610和612,以便協(xié)調(diào)一個(gè)或多個(gè)候選目標(biāo)并且正確地報(bào)告標(biāo)識出的目標(biāo)。 在一個(gè)示例中,骨架跟蹤系統(tǒng)620消費(fèi)被分配為候選身體部位的一個(gè)或多個(gè)候選目標(biāo),而道具跟蹤系統(tǒng)622消費(fèi)被分配為候選道具的一個(gè)或多個(gè)候選目標(biāo)。在另一示例中,骨架跟蹤系統(tǒng)620消費(fèi)與一個(gè)或多個(gè)候選身體部位相關(guān)聯(lián)的第一分類圖,而道具跟蹤系統(tǒng)622消費(fèi)與一個(gè)或多個(gè)候選道具相關(guān)聯(lián)的第二分類圖?;仡^參考圖6A,在一個(gè)實(shí)施例中,骨架跟蹤系統(tǒng)620通過以各種方式連接一個(gè)或多個(gè)身體部位建議(或候選)以便產(chǎn)生大量(部分或整個(gè))骨架假設(shè)來工作。為了減小計(jì)算復(fù)雜性,可能首先解析骨架的某些部位(諸如頭和肩),之后解析其他部位(諸如手臂)。 然后,以任何方式對這些骨架假設(shè)打分,且使用分?jǐn)?shù)和其他信息來選擇最佳假設(shè)并協(xié)調(diào)正確的身體部位實(shí)際在哪里。類似地,道具跟蹤系統(tǒng)622考慮一個(gè)或多個(gè)道具建議(或候選)、 生成道具假設(shè)、對所生成的道具假設(shè)打分、并選擇最佳假設(shè),以便確定正確的道具。在一個(gè)實(shí)施例中,在步驟610,來自先前圖像的一個(gè)或多個(gè)先前高分假設(shè)的位置和/或定向被用來幫助對所生成的假設(shè)打分。例如,在先前圖像中對網(wǎng)球拍的位置和定向的先前確定可用于在當(dāng)前圖像中對該網(wǎng)球拍的位置和定向進(jìn)行打分。在一個(gè)實(shí)施例中,反饋可在骨架跟蹤系統(tǒng)620和道具跟蹤系統(tǒng)622之間發(fā)生。在一個(gè)示例中,骨架跟蹤系統(tǒng)620從道具跟蹤系統(tǒng)622接收道具跟蹤信息。道具跟蹤信息包括與一個(gè)或多個(gè)道具有關(guān)的位置和定向信息。當(dāng)對所生成的骨架假設(shè)打分時(shí),考慮道具跟蹤信息。例如,在特定對象(例如,網(wǎng)球拍或棒球棒)的位置與特定身體部位(例如,手或手臂)接近的情況下,可獎(jiǎng)勵(lì)經(jīng)打分的假設(shè)。該位置可以是三維空間中的3-D位置或二維空間中的2-D位置。類似地,在特定對象不在與該特定對象通常相關(guān)聯(lián)的特定身體部位的閾值距離內(nèi)的情況下,可降低(或懲罰)給予特定假定的分?jǐn)?shù)。在某些實(shí)施例中,給予特定成本函數(shù)的獎(jiǎng)勵(lì)或懲罰(例如,給予特定身體部位假設(shè)的分?jǐn)?shù))可以是線性的或非線性的。在另一個(gè)示例中,骨架跟蹤系統(tǒng)622從道具跟蹤系統(tǒng)620接收道具跟蹤信息。骨架跟蹤信息包括與一個(gè)或多個(gè)身體部位有關(guān)的位置和定向信息。當(dāng)對所生成的道具假設(shè)打分時(shí),考慮骨架跟蹤信息。例如,在特定身體部位(例如,頭)的位置在特定道具(例如,帽子)附近的情況下,可獎(jiǎng)勵(lì)經(jīng)打分的假設(shè)。該位置可以是三維空間中的3-D位置或二維空間中的2-D位置。類似地,在特定身體部位不在與該特定身體部位通常相關(guān)聯(lián)的特定道具的閾值距離內(nèi)的情況下,可降低(或懲罰)給予特定假定的分?jǐn)?shù)。在某些實(shí)施例中,給予特定成本函數(shù)的獎(jiǎng)勵(lì)或懲罰(例如,給予特定道具假設(shè)的分?jǐn)?shù))可以是線性的或非線性的。在跟蹤各對象是困難的情形中(例如,當(dāng)對象快速進(jìn)出視野時(shí),或當(dāng)對象以相對于捕捉設(shè)備捕捉該對象的運(yùn)動(dòng)的能力而言高速移動(dòng)時(shí))重新獲得一對象時(shí),與用戶的身體有關(guān)的反饋數(shù)據(jù)可能尤其有幫助。例如,在游戲玩家揮動(dòng)棒球棒的情況下,如果跟蹤該棒球棒丟失,則可通過考慮該游戲玩家的手的位置來重新獲得棒球棒的手柄。在某些實(shí)施例中,道具跟蹤 622與骨架跟蹤620并行地執(zhí)行。在步驟612,從步驟610正確標(biāo)識出的目標(biāo)的確定被報(bào)告,且其可為其他應(yīng)用所用。報(bào)告可按任何合適的方式來執(zhí)行。在一個(gè)示例中,應(yīng)用編程接口(API)可用于報(bào)告一個(gè)或多個(gè)所選目標(biāo)。例如,這樣的API可被配置成傳遞位置、速度、加速度、位置、速度和/ 或加速度中的置信度、和/或與一個(gè)或多個(gè)所選目標(biāo)有關(guān)的其他信息。圖7描繪了原始圖像750和基于原始圖像750的被分割的身體圖像752。在一個(gè)實(shí)施例中,被分割的身體圖像752通過向一個(gè)或多個(gè)像素區(qū)域中的每一個(gè)分配特定顏色, 來區(qū)分與特定身體部位目標(biāo)相關(guān)聯(lián)的一個(gè)或多個(gè)像素區(qū)域。原始圖像750可來自于多個(gè)源,包括諸如圖2中的捕捉設(shè)備20之類的捕捉設(shè)備、或圖形包或其他3-D呈現(xiàn)程序。在一個(gè)實(shí)施例中,原始圖像750表示來自用戶(諸如圖1A-1C中的用戶18)的特定姿態(tài)。在一個(gè)實(shí)施例中,圖2的目標(biāo)檢測和跟蹤系統(tǒng)10可接收原始圖像750,并使用參考圖6A描述的過程來生成分割的身體圖像752。在一個(gè)示例中,由圖6A的步驟607生成的分類圖可包括被分割的圖像。在一個(gè)實(shí)施例中,各自包括特定姿態(tài)的一個(gè)或多個(gè)被分割的圖像可用作機(jī)器學(xué)習(xí)方法的訓(xùn)練集(即,訓(xùn)練示例)中的一部分。訓(xùn)練集可包括上千、上百萬、或任何數(shù)量的被分割的圖像。在一個(gè)實(shí)施例中,訓(xùn)練集的一個(gè)或多個(gè)訓(xùn)練圖像可用特定對象或道具的3-D模型來改型。3-D模型可包括將特定目標(biāo)表示為三維形狀的一個(gè)或多個(gè)數(shù)據(jù)結(jié)構(gòu)。在另一實(shí)施例中,訓(xùn)練集的一個(gè)或多個(gè)訓(xùn)練圖像可使用特定對象或道具的3-D模型來呈現(xiàn)。在圖8中,三個(gè)訓(xùn)練圖像942、944和946已經(jīng)用各道具的3_D模型來改型。被分割的圖像942已經(jīng)用網(wǎng)球拍來改型。被分割的圖像944已經(jīng)用劍來改型。在該情況下,由于對象正穿入用戶的身體,所以經(jīng)改型的被分割的圖像可從訓(xùn)練集中被丟棄。被分割的圖像946已經(jīng)用棒球棒來改型。與創(chuàng)建涉及人類姿態(tài)和道具的新的捕捉移動(dòng)的訓(xùn)練集相比, 用道具來對現(xiàn)有人類姿態(tài)訓(xùn)練集進(jìn)行改型、和/或基于現(xiàn)有人類姿態(tài)訓(xùn)練集來自動(dòng)生成包括道具的新訓(xùn)練集是較不昂貴的。在某些實(shí)施例中,人類主體不觸碰或持有訓(xùn)練圖像中的對象或道具。例如,在兩個(gè)游戲玩家之間傳遞的球?qū)⒃诎肟罩校也慌c任一玩家直接接觸。由于在可同時(shí)檢測的身體部位和對象的數(shù)量之間存在折中,因此在某些實(shí)施例中,身體部位目標(biāo)的數(shù)量可能是有限的。例如,身體部位目標(biāo)可僅包括頭、頸、左右肩、左右上軀干、和上臂和下臂以及手,而不是搜索32個(gè)不同的身體部位。在某些實(shí)施例中,一個(gè)或多個(gè)道具目標(biāo)可包括多個(gè)部位。例如,網(wǎng)球拍可由拍柄和拍頭組成。一旦檢測和跟蹤系統(tǒng)(諸如圖2的檢測和跟蹤系統(tǒng)10)已經(jīng)用包括被分割的身體部位和道具的訓(xùn)練集訓(xùn)練過,身體部位目標(biāo)和道具目標(biāo)兩者的分類的分類圖就可被生成。 在圖9A中,戴手套的人類的原始深度圖像用于生成包括預(yù)測的身體部位和道具兩者的被分割的圖像。如圖9A的被分割的圖像中所示,用戶右手上的手套可被分類為一目標(biāo)以及多個(gè)身體部位目標(biāo)(例如,左肩和右肩)。在圖9B中,手持棒球棒的用戶的原始深度圖像可用于生成被分割的圖像,其中該棒球棒被分類為目標(biāo)。在一個(gè)實(shí)施例中,多個(gè)道具可連同多個(gè)身體部位一起被分類。在圖9C中,手持棒球棒和將足球擲向空中的用戶的深度圖像912用于生成被分割的圖像916,其中棒球棒和足球被分類為目標(biāo)。在一個(gè)實(shí)施例中,從捕捉設(shè)備接收到的顏色和/或樣式信息可用于幫助進(jìn)一步區(qū)分在形狀和大小上相似的各目標(biāo)。在一個(gè)示例中,籃球和足球可基于顏色信息來區(qū)分。在另一示例中,包括交替的黑色五邊形和白色六邊形的足球樣式可用于幫助將足球與具有相似的形狀和大小的其他對象相區(qū)分。在一個(gè)實(shí)施例中,檢測和/或跟蹤用戶挑選、選出特定道具、或?qū)⑻囟ǖ谰咭胍曇翱梢杂|發(fā)應(yīng)用以選擇特定應(yīng)用模式。在一個(gè)示例中,挑選足球的游戲玩家將導(dǎo)致體育應(yīng)用選擇與該足球相關(guān)聯(lián)的游戲模式。在另一示例中,特定游戲可允許游戲玩家基于該游戲玩家正持有一個(gè)或多個(gè)相關(guān)聯(lián)的道具中的哪些,來選擇并使用三個(gè)不同對象(例如,槍、棒球拍、和電鋸)在一個(gè)實(shí)施例中,游戲玩家可在游戲會話的中間使用介紹一個(gè)或多個(gè)道具。所公開的技術(shù)可用各種其它通用或?qū)S糜?jì)算系統(tǒng)環(huán)境或配置來操作。適合在該技術(shù)中使用的公知的計(jì)算系統(tǒng)、環(huán)境和/或配置的示例包括,但不限于,個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程消費(fèi)者電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機(jī)、大型機(jī)、包含上述系統(tǒng)或設(shè)備中的任一個(gè)的分布式計(jì)算機(jī)環(huán)境等。所公開的技術(shù)可在諸如程序模塊等由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述。一般而言,如此處所述的軟件和程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)和其他類型的結(jié)構(gòu)。硬件或硬件和軟件的組合可代替如此處所述的軟件模塊。所公開的技術(shù)也可以在任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行的分布式計(jì)算環(huán)境中實(shí)現(xiàn)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲器存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲介質(zhì)中。出于本文的目的,說明書中引述的“ 一實(shí)施例”、“ 一個(gè)實(shí)施例”、“某些實(shí)施例”或 “另一實(shí)施例”用于描述不同的實(shí)施例并且不必然指的是同一實(shí)施例。出于本文的目的,連接可以是直接連接或間接連接(例如,經(jīng)由另一方)。出于本文的目的,術(shù)語對象的“集合”指的是一個(gè)或多個(gè)對象的“集合”。盡管用結(jié)構(gòu)特征和/或方法動(dòng)作專用的語言描述了本主題,但可以理解,所附權(quán)利要求書中定義的主題不必限于上述具體特征或動(dòng)作。更確切而言,上述具體特征和動(dòng)作是作為實(shí)現(xiàn)權(quán)利要求的示例形式公開的。
權(quán)利要求
1.一種用于檢測一個(gè)或多個(gè)目標(biāo)的方法,包括從一個(gè)或多個(gè)深度傳感圖像傳感器獲得(602) —個(gè)或多個(gè)深度圖像(750、912),所述一個(gè)或多個(gè)深度圖像的第一深度圖像包括多個(gè)像素;生成¢07)與所述第一深度圖像相關(guān)聯(lián)的分類圖(752、916),所述生成步驟包括向所述多個(gè)像素中的一個(gè)或多個(gè)像素分配所述一個(gè)或多個(gè)像素與所述一個(gè)或多個(gè)目標(biāo)的特定目標(biāo)相關(guān)聯(lián)的概率,所述一個(gè)或多個(gè)目標(biāo)包括表示第一身體部位的至少一部分的第一目標(biāo)以及表示第一道具的至少一部分的第二目標(biāo);將一個(gè)或多個(gè)計(jì)算機(jī)模型中的至少一個(gè)計(jì)算機(jī)模型擬合(608)到所述分類圖的至少一部分上,所述一個(gè)或多個(gè)計(jì)算機(jī)模型包括至少所述第一目標(biāo)的第一模型以及至少所述第二目標(biāo)的第二模型;對所述第一目標(biāo)執(zhí)行骨架跟蹤¢20);對所述第二目標(biāo)執(zhí)行道具跟蹤¢22);以及報(bào)告(612)所述第一目標(biāo)的第一位置和所述第二目標(biāo)的第二位置。
2.如權(quán)利要求I所述的方法,其特征在于,進(jìn)一步包括從一個(gè)或多個(gè)顏色傳感圖像傳感器獲得一個(gè)或多個(gè)顏色圖像,所述執(zhí)行道具跟蹤的步驟包括使用來自所述一個(gè)或多個(gè)顏色圖像的顏色信息來幫助跟蹤所述第二目標(biāo)。
3.如權(quán)利要求I所述的方法,其特征在于所述生成步驟是使用機(jī)器學(xué)習(xí)技術(shù)來執(zhí)行的,所述機(jī)器學(xué)習(xí)技術(shù)使用被分割的圖像的訓(xùn)練集,所述被分割的圖像的訓(xùn)練集包括一個(gè)或多個(gè)改型的圖像。
4.如權(quán)利要求I所述的方法,其特征在于所述執(zhí)行骨架跟蹤的步驟包括接收關(guān)于所述第二目標(biāo)的位置信息,所述位置信息在確定所述第一目標(biāo)的第一位置時(shí)被考慮。
5.如權(quán)利要求I所述的方法,其特征在于所述執(zhí)行道具跟蹤的步驟包括接收關(guān)于所述第一目標(biāo)的位置信息,所述位置信息在確定所述第二目標(biāo)的第二位置時(shí)被考慮。
6.如權(quán)利要求I所述的方法,其特征在于,進(jìn)一步包括基于所述報(bào)告步驟來切換游戲模式。
7.如權(quán)利要求I所述的方法,其特征在于,進(jìn)一步包括接收來自所述第一道具的定向信息,所述執(zhí)行道具跟蹤的步驟使用所述定向信息來幫助跟蹤所述第一道具。
8.如權(quán)利要求I所述的方法,其特征在于所述第二模型包括一個(gè)或多個(gè)負(fù)空間。
9.一種用于檢測一個(gè)或多個(gè)目標(biāo)的電子設(shè)備,包括深度傳感相機(jī)(20),所述深度傳感相機(jī)捕捉第一深度圖像;以及一個(gè)或多個(gè)處理器(42、194),所述一個(gè)或多個(gè)處理器與所述深度傳感相機(jī)進(jìn)行通信, 所述一個(gè)或多個(gè)處理器生成與一個(gè)或多個(gè)身體部位和一個(gè)或多個(gè)道具相關(guān)聯(lián)的一個(gè)或多個(gè)分類圖,所述一個(gè)或多個(gè)處理器使用骨架跟蹤來跟蹤所述一個(gè)或多個(gè)身體部位,所述一個(gè)或多個(gè)處理器使用道具跟蹤來跟蹤所述一個(gè)或多個(gè)道具,所述一個(gè)或多個(gè)處理器報(bào)告與所述一個(gè)或多個(gè)身體部位和一個(gè)或多個(gè)道具有關(guān)的度量。
10.包含處理器可讀代碼的一個(gè)或多個(gè)存儲設(shè)備,所述處理器可讀代碼用于對一個(gè)或多個(gè)處理器進(jìn)行編程以執(zhí)行一種方法,所述方法包括以下步驟從一個(gè)或多個(gè)深度傳感圖像傳感器獲得(602) —個(gè)或多個(gè)深度圖像,所述一個(gè)或多個(gè)深度圖像的第一深度圖像包括多個(gè)像素;生成(607)與所述第一深度圖像相關(guān)聯(lián)的分類圖,所述生成步驟包括向所述多個(gè)像素中的一個(gè)或多個(gè)像素分配所述一個(gè)或多個(gè)像素與一個(gè)或多個(gè)目標(biāo)的特定目標(biāo)相關(guān)聯(lián)的概率,所述一個(gè)或多個(gè)目標(biāo)包括表示第一身體部位的至少一部分的第一目標(biāo)以及表示第一道具的至少一部分的第二目標(biāo);對所述第一目標(biāo)執(zhí)行骨架跟蹤(620),所述執(zhí)行骨架跟蹤的步驟包括接收關(guān)于所述第二目標(biāo)的位置信息,所述位置信息在確定所述第一目標(biāo)的第一位置時(shí)被考慮;對所述第二目標(biāo)執(zhí)行道具跟蹤¢22),所述執(zhí)行道具跟蹤的步驟包括接收關(guān)于所述第一目標(biāo)的位置信息,所述位置信息在確定所述第二目標(biāo)的第二位置時(shí)被考慮;報(bào)告(612)所述第一目標(biāo)的第一位置和所述第二目標(biāo)的第二位置。
全文摘要
本發(fā)明公開了對身體和道具的檢測。描述了一種用于檢測和跟蹤包括身體部位和道具的目標(biāo)的系統(tǒng)和方法。在一方面,所公開的技術(shù)獲得一個(gè)或多個(gè)深度圖像,生成與一個(gè)或多個(gè)身體部位和一個(gè)或多個(gè)道具相關(guān)聯(lián)的一個(gè)或多個(gè)分類圖,使用骨架跟蹤系統(tǒng)來跟蹤一個(gè)或多個(gè)身體部位,使用道具跟蹤系統(tǒng)來跟蹤一個(gè)或多個(gè)道具,以及報(bào)告與一個(gè)或多個(gè)身體部位和一個(gè)或多個(gè)道具有關(guān)的度量。在某些實(shí)施例中,反饋可在骨架跟蹤系統(tǒng)和道具跟蹤系統(tǒng)之間發(fā)生。
文檔編號G06F3/01GK102591456SQ20111042784
公開日2012年7月18日 申請日期2011年12月19日 優(yōu)先權(quán)日2010年12月20日
發(fā)明者A·克里米尼斯, D·莫利紐克斯, J·溫, J·肖頓, M·科克, O·希爾戈斯, S·伊扎迪 申請人:微軟公司