專利名稱:仿生學運動的制作方法
技術領域:
本發(fā)明涉及運動傳感系統(tǒng),尤其涉及運動傳感系統(tǒng)中的仿生學運動跟蹤和顯示。
背景技術:
諸如計算機游戲、多媒體應用等的許多計算應用使用控制命令來允許用戶操縱游 戲角色或應用的其他方面。通常,此類控制命令使用例如控制器、遙控器、鍵盤、鼠標等來輸 入。不幸的是,這些控制命令可能是難以學習的,由此造成了用戶和這些游戲及應用之間的 障礙。此外,這些控制命令可能與這些控制命令所用于的實際游戲動作或其他應用動作不 同。例如,使得游戲角色揮動棒球拍的游戲控制命令可能不與揮動棒球拍的實際動作相對 應。
發(fā)明內容
此處所公開的是用于跟蹤用戶或其它物體的運動的系統(tǒng)和方法。所跟蹤的運動隨 后被用來更新應用。例如,用戶可以通過使用用戶身體和/或用戶周圍物體的移動而非(或 作為補充)使用控制器、遙控器、鍵盤、鼠標等來操縱化身或應用的其他方面。提供了能在 虛擬世界中放大用戶的運動來創(chuàng)建更引人注目的體驗的技術。例如,用戶的小的跳躍可轉 換成虛擬世界游戲中的化身的非常高的跳躍。一個實施例包括使用相機來傳感用戶的運動。響應于傳感用戶的運動,該系統(tǒng)創(chuàng) 建并顯示對象以相比于用戶的運動被放大的方式執(zhí)行用戶的運動的動畫。該系統(tǒng)創(chuàng)建并輸 出與所傳感的用戶的運動的幅度成比例的音頻/視覺反饋。一個實施例包括能傳感用戶的運動的相機以及連接到該相機來接收來自該相機 的數據的計算機。該數據指示用戶的運動。該計算機確定對應于所傳感的用戶的運動的動 作,并確定所傳感的用戶的運動的幅度。該計算機創(chuàng)建并顯示視頻游戲中的化身以相比于 所傳感的運動被放大的方式執(zhí)行該動作的動畫。該動作按照與所傳感的用戶的運動的所確 定的幅度成比例的因子來放大。一個實施例包括一個或多個處理器可讀存儲設備,其具有包含在該一個或多個處 理器可讀存儲設備上的處理器可讀代碼。處理器可讀代碼對一個或多個處理器編程來執(zhí)行 一種方法,該方法包括從相機接收指示用戶的運動的數據,確定對應于所接收的數據所指 示的用戶的運動的動作(包括確定用戶開始該動作以及確定用戶結束該動作),以及創(chuàng)建 并顯示應用中的對象以相比于所傳感的用戶的運動被放大的方式來執(zhí)行動作的動畫,使得 該對象在用戶開始該動作時開始該動作,并且該對象在用戶結束該動作時結束該動作。提供本發(fā)明內容是為了以簡化的形式介紹將在以下具體實施方式
中進一步描述 的一些概念。本發(fā)明內容并非旨在標識所要求保護的主題的關鍵特征或必要特征,也不旨 在用于幫助確定所要求保護的主題的范圍。此外,所要求保護的主題不限于解決在本發(fā)明 的任一部分中提及的任何或所有缺點的實現。
圖IA和IB示出了其中用戶在玩游戲的跟蹤系統(tǒng)的示例實施例。圖2示出可用作跟蹤系統(tǒng)的一部分的捕捉設備的示例實施例。圖3描繪骨架的示例。圖4示出可被用來跟蹤運動并基于所跟蹤的運動來更新應用的計算系統(tǒng)的示例 實施例。圖5示出可被用來跟蹤運動并基于所跟蹤的運動來更新應用的計算系統(tǒng)的另一 示例實施例。圖6是描述用于與基于計算機的應用交互,包括放大運動以便在應用中創(chuàng)建仿生 學運動的過程的一個實施例的流程圖。圖7是描述用于確定用戶的動作是否能被放大的過程的一個實施例的流程圖。圖8是描述用于確定用戶運動的放大對于應用的當前上下文是否適當的過程的 一個實施例的流程圖。圖9是描述用于創(chuàng)建示出放大的運動的動畫的過程的一個實施例的流程圖。圖10圖形地描繪了確定用于創(chuàng)建放大的運動的比例因子的一個示例。圖11是描述用于繪制執(zhí)行放大的運動的化身的過程的一個實施例的流程圖。
具體實施例方式視頻游戲系統(tǒng)(或其他數據處理系統(tǒng))使用深度圖像和/或視覺圖像來跟蹤用戶 和物體。該跟蹤隨后被用來更新應用(例如,視頻游戲)。因此,用戶可以通過使用用戶身 體和/或用戶周圍的物體的移動而非(或作為補充)使用控制器、遙控器、鍵盤、鼠標等來 操縱游戲人物或應用的其他方面。例如,用戶的運動可用于驅動虛擬世界中的化身的移動。 化身將執(zhí)行與用戶相同(或相似)的動作。在某些情形中,化身將執(zhí)行用戶正在執(zhí)行的動作;然而,化身將以相比于用戶的運 動被放大的方式來執(zhí)行該動作。例如,化身將比用戶顯著跳得更高、比用戶蹲得更低、比用 戶投得更用力,等等。放大可以按照與所確定的用戶的幅度成比例的因子來進行。例如,用 戶跳得越快,則化身將跳得越高。視頻游戲系統(tǒng)還將創(chuàng)建并輸出與用戶的運動的幅度成比 例的音頻/視覺反饋。雖然以下示例包括視頻游戲系統(tǒng),但本文描述的技術也適用于其他類型的數據處 理系統(tǒng)和/或其他類型的應用。圖IA和IB示出了其中用戶18在玩拳擊游戲的系統(tǒng)10的示例實施方式。在一示 例實施方式中,系統(tǒng)10可被用來識別、分析和/或跟蹤人類目標,如跟蹤系統(tǒng)10范圍內的 用戶18或其他物體。如圖IA所示,跟蹤系統(tǒng)10可包括計算系統(tǒng)12。計算系統(tǒng)12可以是計算機、游戲 系統(tǒng)或控制臺等等。根據一示例實施方式,計算系統(tǒng)12可包括硬件組件和/或軟件組件,從 而使得計算系統(tǒng)12可用于執(zhí)行諸如游戲應用、非游戲應用等的應用。在一個實施方式中, 計算系統(tǒng)12可包括可執(zhí)行存儲在處理器可讀存儲設備上的用于執(zhí)行本文描述的過程的指 令的處理器,如標準化處理器、專用處理器、微處理器等。如圖IA所示,跟蹤系統(tǒng)10還可包括捕捉設備20。捕捉設備20可以是,例如可用于在視覺上監(jiān)視諸如用戶18等一個或多個用戶,從而可以捕捉、分析并跟蹤一個或多個用 戶所執(zhí)行的姿勢和/或移動,來執(zhí)行應用中的一個或多個控制命令或動作和/或動畫化化 身或屏上人物的相機,下面將更詳細地描述。根據一個實施方式,跟蹤系統(tǒng)10可連接到可向諸如用戶18等的用戶提供游戲或 應用視覺和/或音頻的視聽設備16,如電視機、監(jiān)視器、高清電視機(HDTV)等。例如,計算 系統(tǒng)12可包括諸如圖形卡等視頻適配器和/或諸如聲卡等音頻適配器,這些適配器可提供 與游戲應用、非游戲應用等相關聯的視聽信號。視聽設備16可從計算系統(tǒng)12接收視聽信 號,然后可向用戶18輸出與視聽信號相關聯的游戲或應用視覺和/或音頻。根據一個實施 方式,視聽設備16可經由例如,S-視頻電纜、同軸電纜、HDMI電纜、DVI電纜、VGA電纜、分 量視頻電纜等連接到計算系統(tǒng)12。如圖IA和IB所示,跟蹤系統(tǒng)10可用于識別、分析和/或跟蹤諸如用戶18等的人 類目標。例如,可使用捕捉設備20來跟蹤用戶18,從而可以捕捉用戶18的姿勢和/或移動 來動畫化化身或屏幕上人物,和/或可將用戶18的姿勢和/或移動解釋為可用于影響計算 環(huán)境12所執(zhí)行的應用的控制命令。因此,根據一實施例,用戶18可移動他的或她的身體來 控制應用和/或動畫化化身或屏幕上人物。在圖IA和IB中描繪的示例中,在計算系統(tǒng)12上執(zhí)行的應用可以是用戶18正在 玩的拳擊游戲。例如,計算系統(tǒng)12可使用視聽設備16來向用戶18提供拳擊對手22的視 覺表示。計算系統(tǒng)12還可使用視聽設備16來提供用戶18可用他的或她的移動來控制的 用戶化身M的視覺表示。例如,如圖IB所示,用戶18可在物理空間中揮重拳來使得用戶 化身M在游戲空間中揮重拳。因此,根據一示例實施方式,計算系統(tǒng)12和捕捉設備20識 別并分析物理空間中用戶18的重拳從而使得該重拳可被解釋為對游戲空間中的用戶化身 24的游戲控制和/或該重拳的運動可用于動畫化游戲空間中的用戶化身M。用戶18的其他移動也可被解釋為其他控制命令或動作,和/或用于動畫化用戶化 身,如上下快速擺動、閃避、滑步、封堵、用拳猛擊或揮動各種不同力量的重拳的控制命令。 此外,某些移動可被解釋為可對應于除控制用戶化身M之外的動作的控制命令。例如,在 一實施例中,用戶可使用移動來結束、暫?;虮4嬗螒?、選擇級別、查看高分、與朋友交流 等。根據另一實施例,用戶可使用移動來從主用戶界面選擇游戲或其他應用。因此,在示例 實施例中,用戶18的全范圍運動可以用任何合適的方式來獲得、使用并分析以與應用進行 交互。在各示例實施例中,諸如用戶18等的人類目標可具有一物體。在這些實施例中, 電子游戲的用戶可手持物體從而可以使用用戶和物體的運動來調整和/或控制游戲的參 數。例如,可以跟蹤并利用用戶手持球拍的運動來控制電子運動游戲中的屏幕上球拍。在 另一示例實施例中,可以跟蹤并利用用戶手持物體的運動來控制電子格斗游戲中的屏幕上 武器。用戶沒有手持的物體也可被跟蹤,如該用戶(或一不同用戶)扔出、推出或滾出的物 體或自推進的物體。除拳擊之外,也可實現其他游戲。根據其他示例實施方式,跟蹤系統(tǒng)10還可用于將目標移動解釋為游戲領域之外 的操作系統(tǒng)和/或應用控制命令。例如,事實上操作系統(tǒng)和/或應用的任何可控方面可由 諸如用戶18等目標的移動來控制。圖2示出可在跟蹤系統(tǒng)10中使用的捕捉設備20的示例實施方式。根據一示例實施例,捕捉設備20可被配置成經由任何合適的技術,包括例如飛行時間、結構化光、立體圖 像等來捕捉包括深度圖像的帶有深度信息的視頻,該深度圖像可包括深度值。根據一實施 例,捕捉設備20可將深度信息組織為“Z層”,即可與Z軸正交的從深度照相機沿著其視線 延伸的層。如圖2所示,捕捉設備20可包括相機組件23。根據一示例實施方式,相機組件23 可以是可捕捉場景的深度圖像的深度相機。深度圖像可包括所捕捉的場景的二維O-D)像 素區(qū)域,其中2-D像素區(qū)域中的每一像素可表示深度值,諸如例如以厘米、毫米等計的、所 捕捉的場景中的物體距相機的距離。如圖2所示,根據一示例實施方式,圖像相機組件23可包括可用于捕捉場景的深 度圖像的紅外(IR)光組件25、三維(3-D)相機沈、和RGB(視覺圖像)相機觀。例如,在 飛行時間分析中,捕捉設備20的頂光組件25可將紅外光發(fā)射到場景上,然后可使用傳感 器(未示出),使用例如3-D照相機沈和/或RGB照相機觀,來檢測來自場景中的一個或 多個目標和物體的表面的反向散射光。在某些實施例中,可以使用脈沖式紅外光從而可以 測量出射光脈沖和相應的入射光脈沖之間的時間差并將其用于確定從捕捉設備20到場景 中的目標或對象上的特定位置的物理距離。另外,在其他示例實施例中,可將入射光波的相 位與出射光波的相位進行比較來確定相移。然后可以使用相移來確定從捕捉設備到對象或 目標上的特定位置的距離。根據另一示例實施例,可使用飛行時間分析,通過經由包括例如快門式光脈沖成 像的各種技術來分析反射光束隨時間的強度變化以間接地確定從捕捉設備20到目標或對 象上的特定位置的物理距離。在另一示例實施例中,捕捉設備20可使用結構化光來捕捉深度信息。在這樣的分 析中,圖案化光(即,被顯示為諸如網格圖案、條紋圖案等已知圖案或不同圖案的光)可經 由例如頂光組件對被投影到場景上。在撞擊到場景中的一個或多個目標或對象的表面時, 作為響應,圖案可變形。圖案的這種變形可由例如3-D相機沈和/或RGB相機28 (和/或 其他傳感器)來捕捉,然后可被分析以確定從捕捉設備到目標或物體上的特定位置的物理 距離。在一些實現中,IR光組件25與相機25和沈分開,使得可以使用三角測量來確定距 相機25和沈的距離。在一些實現中,捕捉設備20將包括傳感頂光的專用頂傳感器或具 有頂濾波器的傳感器。根據另一實施例,捕捉設備20可包括兩個或更多物理上分開的照相機,這些照相 機可從不同角度查看場景來獲得可被解析以生成深度信息的視覺立體數據。其他類型的深 度圖像傳感器也可被用來創(chuàng)建深度圖像。捕捉設備20還可包括話筒30。話筒30可包括可接收聲音并將其轉換成電信號的 變換器或傳感器。根據一個實施方式,話筒30可用于減少目標識別、分析和跟蹤系統(tǒng)10中 的捕捉設備20與計算系統(tǒng)12之間的反饋。另外,話筒30可用于接收也可被提供給計算系 統(tǒng)12的音頻信號。在一示例實施方式中,捕捉設備20還可包括可與圖像相機組件22進行通信的處 理器32。處理器32可包括可執(zhí)行指令的標準處理器、專用處理器、微處理器等,這些指令包 括用于接收深度圖像、生成適當的數據格式(例如,幀)并將該數據傳送到計算系統(tǒng)12的 指令。
捕捉設備20還可包括存儲器組件34,存儲器組件34可存儲由處理器32執(zhí)行的指 令、3-D相機和/或RGB相機所捕捉的圖像或圖像的幀、或任何其他合適的信息、圖像等等。 根據一示例實施方式,存儲器組件34可包括隨機存取存儲器(RAM)、只讀存儲器(ROM)、高 速緩存、閃存、硬盤、或任何其他合適的存儲組件。如圖2所示,在一個實施方式中,存儲器 組件34可以是與圖像捕捉組件22和處理器32進行通信的單獨的組件。根據另一實施方 式,存儲器組件34可被集成到處理器32和/或圖像捕捉組件22中。如圖2所示,捕捉設備20可經由通信鏈路36與計算系統(tǒng)12進行通信。通信鏈 路36可以是包括例如USB連接、火線連接、以太網電纜連接等的有線連接和/或諸如無線 802. lib,802. llg、802. Ila或802. Iln連接等無線連接。根據一個實施方式,計算系統(tǒng)12 可經由通信鏈路36向捕捉設備20提供可用于確定例如何時捕捉場景的時鐘。另外,捕捉 設備20將由例如3-D相機沈和/或RGB相機觀捕捉的深度信息和視覺(例如,RGB)圖 像經由通信鏈路36提供給計算系統(tǒng)12。在一個實施方式中,深度圖像和視覺圖像以每秒 30幀的速率傳送。計算系統(tǒng)12然后可使用該模型、深度信息、以及所捕捉的圖像來例如控 制諸如游戲或文字處理程序等的應用和/或動畫化化身或屏上人物。計算系統(tǒng)12包括深度圖像處理和骨架跟蹤模塊50,該模塊使用深度圖像來跟蹤 可由深度相機檢測的一個或多個人。深度圖像處理和骨架跟蹤模塊50向應用196提供跟 蹤信息,該應用可以是視頻游戲、生產性應用、通信應用或其他軟件應用等。音頻數據和視 覺圖像數據也被提供給應用52和深度圖像處理和骨架跟蹤模塊50。應用52將跟蹤信息、 音頻數據和視覺圖像數據提供給識別器引擎M。在另一實施例中,識別器引擎M從深度圖 像處理和骨架跟蹤模塊50直接接收跟蹤信息,并從捕捉設備20直接接收音頻數據和視覺 圖像數據。識別器引擎討與過濾器60、62、64、……、66的集合相關聯,每一過濾器包括關于 可由捕捉設備20檢測的任何人或對象執(zhí)行的姿勢、動作或狀況的信息。例如,來自捕捉設 備20的數據可由過濾器60、62、64、……、66來處理,以便標識一個用戶或一組用戶何時執(zhí) 行了一個或多個姿勢或其他動作。那些姿勢可與應用52的各種控制、對象或狀況相關聯。 由此,計算環(huán)境12可借助過濾器使用識別器引擎M來解釋移動。圖2的捕捉設備20向計算系統(tǒng)12提供RGB圖像(或其他格式或色彩空間的視覺 圖像)和深度圖像。深度圖像可以是多個觀測到的像素,其中每個觀測到的像素具有觀測 到的深度值。例如,深度圖像可包括所捕捉的場景的二維O-D)像素區(qū)域,其中2-D像素區(qū) 域中的每一像素可具有深度值,如所捕捉的場景中的對象距捕捉設備的距離。系統(tǒng)將使用RGB圖像和深度圖像來跟蹤用戶的移動。例如,系統(tǒng)將使用深度圖 像來跟蹤人的骨架。可以使用許多方法來使用深度圖像跟蹤人的骨架。使用深度圖像跟 蹤骨架的一個合適的示例在2009年10月21日提交的Craig等人發(fā)明的美國專利申請 12/603,437 "Pose Tracking Pipeline (姿勢跟蹤流水線),,(此后稱為‘437申請,)中提 供,該專利申請整體通過引用結合于此。‘437申請的過程包括獲取深度圖像,對數據進行降 采樣,移除和/或平滑高變度噪聲數據,標識并移除背景,以及將前景像素中的每一個分配 給身體的不同部位?;谶@些步驟,系統(tǒng)將使一模型擬合到該數據并創(chuàng)建骨架。該骨架將 包括一組關節(jié)和這些關節(jié)之間的連接。圖3示出了具有15個關節(jié)(j0、jl、j2、j3、j4、j5、 j6、j7、j8、j9、jl0、jll、jl2、jl3和jl4)的示例骨架。這些關節(jié)中的每一個表示骨架中該骨架可以在X、y、Z方向上樞轉的位置或身體上關注的位置。也可使用用于跟蹤的其他方 法。合適的跟蹤技術也在以下四個美國專利申請中公開,所有這些申請都通過整體引用結 合于此2009年5月四日提交的美國專利申請12/475,308“Device for Identifying and Tracking MultipleHumans Over Time (用于隨時間標識并跟蹤多個人類的設備)”;2010年 1月四日提交的美國專利申請12/696,282 “Visual Based Identity Tracking(基于視 覺的身份跟蹤),,;2009年12月18日提交的美國專利申請12/641,788 "MotionDetection Using Depth Images (使用深度圖像的運動檢測)”;以及2009年10月7日提交的美國專 利申請 12/575,388 "Human Tracking System(人類跟蹤系統(tǒng))”。(圖2所示的計算系統(tǒng)12的)識別器引擎討包括多個過濾器60、62、64、……、 66來標識姿勢或動作。過濾器包括定義姿勢、動作或狀況以及該姿勢、動作或狀況的參數 或元數據的信息。例如,包括一只手從身體背后到身體前方的運動的投擲可被實現為包括 表示用戶的一只手從身體背后到身體前方的運動的信息的姿勢,該移動將由深度相機來捕 捉。然后可為該姿勢設定參數。在姿勢是投擲的情況下,參數可以是該手必須達到的閾值 速度、該手必須行進的距離(絕對的,或相對于用戶的整體大小)、以及識別器引擎對發(fā)生 了該姿勢的置信評級。用于姿勢的這些參數可以隨著時間在各應用之間、在單個應用的各 上下文之間、或在一個應用的一個上下文內變化。過濾器可以是模塊化的或是可互換的。在一個實施例中,過濾器具有多個輸入 (這些輸入中的每一個具有一類型)以及多個輸出(這些輸出中的每一個具有一類型)。第 一過濾器可用具有與第一過濾器相同數量和類型的輸入和輸出的第二過濾器來替換而不 更改識別器引擎體系結構的任何其他方面。例如,可以有用于駕駛的第一過濾器,該第一過 濾器取骨架數據作為輸入并輸出與該過濾器相關聯的姿勢正在發(fā)生的置信度以及轉向角。 在希望用第二駕駛過濾器來替換該第一駕駛過濾器的情況下一一這可能是因為第二駕駛 過濾器更高效且需要更少的處理資源——則可以通過簡單地用第二過濾器替換第一過濾 器來這樣做,只要第二過濾器具有相同的輸入和輸出-骨架數據類型的一個輸入,以及置 信度類型和角度類型的兩個輸出。過濾器不需要具有參數。例如,返回用戶的高度的“用戶高度”過濾器可能不允許 任何可調節(jié)的參數。替換的“用戶高度”過濾器可具有可調節(jié)參數,如在確定用戶的高度時 是否考慮用戶的鞋、發(fā)型、頭飾以及體態(tài)。對過濾器的輸入可包括諸如關于用戶的關節(jié)位置的關節(jié)數據、在關節(jié)處相交的骨 所形成的角度、來自場景的RGB色彩數據、以及用戶的某一方面的變化速率等內容。來自過 濾器的輸出可包括諸如正作出給定姿勢的置信度、作出姿勢運動的速度、以及作出姿勢運 動的時間等內容。識別器引擎M可具有向過濾器提供功能的基本識別器引擎。在一實施 例中,識別器引擎M實現的功能包括跟蹤所識別的姿勢和其他輸入的隨時間輸入 (input-over-time)存檔、隱馬爾可夫模型實現(其中模型化系統(tǒng)被假定為馬爾可夫過 程-其中當前狀態(tài)封裝了確定將來狀態(tài)所需的任何過去狀態(tài)信息,因此不必為此目的而維 護任何其他過去狀態(tài)信息的過程-該過程具有未知參數,并且隱藏參數是從可觀察數據來 確定的)、以及求解姿勢識別的特定實例所需的其他功能。過濾器60、62、64、……、66在識別器引擎M之上加載并實現,并且可利用識別器引擎M提供給所有過濾器60、62、64、……、66的服務。在一個實施例中,識別器引擎54 接收數據來確定該數據是否滿足任何過濾器60、62、64、……、66的要求。由于這些所提供 的諸如解析輸入等服務是由識別器引擎討一次性提供而非由每一過濾器60、62、64、……、 66提供的,因此這一服務在一段時間內只需被處理一次而不是在該時間段對每一過濾器處 理一次,因此減少了確定姿勢所需的處理。應用52可使用識別器引擎M所提供的過濾器60、62、64、……、66,或者它可提供 其自己的、插入到識別器引擎M中的過濾器。在一實施例中,所有過濾器具有啟用該插入 特性的通用接口。此外,所有過濾器可利用參數,因此可使用以下單個姿勢工具來診斷并調 節(jié)整個過濾器系統(tǒng)。關于識別器引擎M的更多信息可在2009年4月13日提交的美國專利申請 12/422, 661 "Gesture Recognizer System Architecture (姿勢識別器系統(tǒng)體系結構),,中 找到,該申請通過整體引用合并于此。關于識別姿勢的更多信息可在2009年2月23日提 交的美國專利申請12/391,150‘。tandard Gestures (標準姿勢)”;以及2009年5月29日 提交的美國專利申請12/474,655 "Gesture Tool (姿勢工具)”中找到,這兩個申請都通過 整體引用結合于此。圖4示出了計算系統(tǒng)的一示例實施例,該計算系統(tǒng)可以是圖1A-2所示的用于跟蹤 應用所顯示的化身或其他屏幕上對象的運動和/或動畫化(或以其他方式更新)化身或其 他屏幕上對象的計算系統(tǒng)12。諸如上面參考圖1A-2所描述的計算系統(tǒng)12等的計算系統(tǒng)可 以是諸如游戲控制臺等的多媒體控制臺100。如圖4所示,多媒體控制臺100具有含有一級 高速緩存102、二級高速緩存104和閃存ROM(只讀存儲器)106的中央處理單元(CPU) 101。 一級高速緩存102和二級高速緩存104臨時存儲數據并因此減少存儲器訪問周期數,由此 改進處理速度和吞吐量。CPU 101可以設置成具有一個以上的核,以及由此的附加的一級和 二級高速緩存102和104。閃存ROM 106可存儲在多媒體控制臺100通電時在引導進程初 始化階段加載的可執(zhí)行代碼。圖形處理單元(GPU) 108和視頻編碼器/視頻編解碼器(編碼器/解碼器)114形 成用于高速、高分辨率圖形處理的視頻處理流水線。數據經由總線從圖形處理單元108輸 送到視頻編碼器/視頻編解碼器114。視頻處理流水線將數據輸出到A/V (音頻/視頻)端 口 140以傳輸到電視機或其他顯示器。存儲器控制器110連接到GPU 108以方便處理器訪 問各種類型的存儲器112,諸如但不局限于RAM(隨機存取存儲器)。多媒體控制臺100包括較佳地在模塊118上實現的1/0控制器120、系統(tǒng)管理控 制器122、音頻處理單元123、網絡接口控制器124、第一 USB主控制器126、第二 USB控制器 1 和前面板1/0子部件130。USB控制器126和1 用作外圍控制器142 (1)-142 (2)、無 線適配器148、和外置存儲器設備146(例如閃存、外置⑶/DVD ROM驅動器、可移動介質等) 的主機。網絡接口 1 和/或無線適配器148提供對網絡(例如,因特網、家庭網絡等)的 訪問并且可以是包括以太網卡、調制解調器、藍牙模塊、電纜調制解調器等的各種不同的有 線和無線適配器組件中任何一種。提供系統(tǒng)存儲器143來存儲在引導進程期間加載的應用數據。提供媒體驅動器 144且其可包括DVD/⑶驅動器、藍光驅動器、硬盤驅動器、或其它可移動媒體驅動器等。媒 體驅動器144對于多媒體控制臺100可以內置或外置的。應用數據可經由媒體驅動器144訪問,以由多媒體控制臺100執(zhí)行、回放等。媒體驅動器144經由諸如串行ATA總線或其他 高速連接(例如IEEE 1394)等總線連接到I/O控制器120。系統(tǒng)管理控制器122提供涉及確保多媒體控制臺100的可用性的各種服務功能。 音頻處理單元123和音頻編解碼器132形成具有高保真度和立體聲處理的對應的音頻處理 流水線。音頻數據經由通信鏈路在音頻處理單元123與音頻編解碼器132之間傳輸。音頻 處理流水線將數據輸出到A/V端口 140以供外部音頻用戶或具有音頻能力的設備再現。前面板I/O子部件130支持暴露在多媒體控制臺100的外表面上的電源按鈕150 和彈出按鈕152以及任何LED(發(fā)光二極管)或其它指示器的功能。系統(tǒng)供電模塊136向 多媒體控制臺100的組件供電。風扇138冷卻多媒體控制臺100內的電路。CPU 101、GPU 108、存儲器控制器110、和多媒體控制臺100內的各個其它組件經 由一條或多條總線互連,包括串行和并行總線、存儲器總線、外圍總線、和使用各種總線架 構中任一種的處理器或局部總線。作為示例,這種架構可以包括外圍部件互連(PCI)總線、 PCI-Express 總線等。當多媒體控制臺100通電時,應用數據可從系統(tǒng)存儲器143加載到存儲器112和/ 或高速緩存102、104中并在CPU 101上執(zhí)行。應用可呈現在導航到多媒體控制臺100上可 用的不同媒體類型時提供一致的用戶體驗的圖形用戶界面。在操作中,媒體驅動器144中 包含的應用和/或其它媒體可從媒體驅動器144啟動或播放,以向多媒體控制臺100提供 附加功能。多媒體控制臺100可通過將該系統(tǒng)簡單地連接到電視機或其它顯示器而作為獨 立系統(tǒng)來操作。在該獨立模式中,多媒體控制臺100允許一個或多個用戶與該系統(tǒng)交互、看 電影、或聽音樂。然而,隨著通過網絡接口 1 或無線適配器148可用的寬帶連接的集成, 多媒體控制臺100還可作為較大網絡社區(qū)中的參與者來操作。當多媒體控制臺100通電時,可以保留設定量的硬件資源以供多媒體控制臺操作 系統(tǒng)作系統(tǒng)使用。這些資源可以包括存儲器保留(例如,16MB)、CPU和GPU周期(例如, 5%)、網絡帶寬(例如,SlAs)等。因為這些資源是在系統(tǒng)引導時保留的,所以所保留的資 源對應用而言是不存在的。具體地,存儲器保留較佳地足夠大,以包含啟動內核、并發(fā)系統(tǒng)應用和驅動程序。 CPU保留較佳地為恒定,使得若所保留的CPU用量不被系統(tǒng)應用使用,則空閑線程將消耗任 何未使用的周期。對于GPU保留,通過使用GPU中斷來顯示由系統(tǒng)應用生成的輕量消息(例如,彈出 窗口),以調度代碼來將彈出窗口呈現為覆蓋圖。覆蓋圖所需的存儲器量取決于覆蓋區(qū)域大 小,并且覆蓋圖較佳地與屏幕分辨率成比例縮放。在并發(fā)系統(tǒng)應用使用完整用戶界面的情 況下,優(yōu)選使用獨立于應用分辨率的分辨率。定標器可用于設置該分辨率,從而無需改變頻 率,也就不會引起TV重新同步。在多媒體控制臺100引導且系統(tǒng)資源被保留之后,就執(zhí)行并發(fā)系統(tǒng)應用來提供系 統(tǒng)功能。系統(tǒng)功能被封裝在一組在上述所保留的系統(tǒng)資源中執(zhí)行的系統(tǒng)應用中。操作系統(tǒng) 內核標識是系統(tǒng)應用線程而非游戲應用線程的線程。系統(tǒng)應用優(yōu)選地被調度為在預定時間 并以預定時間間隔在CPU 101上運行,以便為應用提供一致的系統(tǒng)資源視圖。進行調度是 為了把由在控制臺上運行的游戲應用所引起的高速緩存分裂最小化。
當并發(fā)系統(tǒng)應用需要音頻時,則由于時間敏感性而異步調度音頻處理給游戲應 用。多媒體控制臺應用管理器(如下所述)在系統(tǒng)應用活動時控制游戲應用的音頻水平 (例如,靜音、衰減)。輸入設備(例如,控制器142(1)和142( )由游戲應用和系統(tǒng)應用共享。輸入設 備不是所保留的資源,但卻在系統(tǒng)應用和游戲應用之間切換以使其各自具有設備的焦點。 應用管理器較佳地控制輸入流的切換,而無需知曉游戲應用的知識,并且驅動程序維持有 關焦點切換的狀態(tài)信息。照相機26J8和捕捉設備20可經由USB控制器1 或其他接口 來定義控制臺100的附加輸入設備。圖5示出了計算系統(tǒng)220的另一示例實施例,該計算系統(tǒng)可用于實現圖1A-2所示 的用于跟蹤應用所顯示的化身或其他屏幕上對象的運動和/或動畫化(或以其他方式更 新)化身或其他屏幕上對象的計算系統(tǒng)12。計算系統(tǒng)環(huán)境220只是合適的計算系統(tǒng)的一 個示例,并且不旨在對所公開的主題的使用范圍或功能提出任何限制。也不應該將計算系 統(tǒng)220解釋為對示例性操作系統(tǒng)220中示出的任一組件或其組合有任何依賴性或要求。在 某些實施方式中,所描繪的各種計算元素可包括被配置成實例化本公開的各具體方面的電 路。例如,本公開中使用的術語電路可包括被配置成通過固件或開關來執(zhí)行功能的專用硬 件組件。在其他示例實施方式中,術語電路可包括由實施可用于執(zhí)行功能的邏輯的軟件指 令配置的通用處理單元、存儲器等。在電路包括硬件與軟件組合的示例實施方式中,實現者 可編寫實施邏輯的源代碼且該源代碼可被編譯成可由通用處理單元處理的機器可讀代碼。 因為本領域技術人員可以明白現有技術已經進化到硬件、軟件或硬件/軟件組合之間幾乎 沒有差別的地步,因而選擇硬件或是軟件來實現具體功能是留給實現者的設計選擇。更具 體地,本領域技術人員可以明白軟件進程可被變換成等價的硬件結構,而硬件結構本身可 被變換成等價的軟件進程。因此,對于硬件實現還是軟件實現的選擇是設計選擇并留給實 現者。計算系統(tǒng)220包括計算機Ml,計算機241通常包括各種計算機可讀介質。計算機 可讀介質可以是能由計算機241訪問的任何可用介質,而且包含易失性和非易失性介質、 可移動和不可移動介質。系統(tǒng)存儲器222包括易失性和/或非易失性存儲器形式的計算 機存儲介質,如只讀存儲器(ROM) 223和隨機存取存儲器(RAM) 2600基本輸入/輸出系統(tǒng) 224 (BIOS)包括如在啟動時幫助在計算機Ml內的元件之間傳輸信息的基本例程,它通常 儲存在ROM 223中。RAM 260通常包含處理單元259可以立即訪問和/或目前正在操作的 數據和/或程序模塊。作為示例而非限制,圖5示出了操作系統(tǒng)225、應用程序226、其它程 序模塊227和程序數據228。計算機241還可以包括其他可移動/不可移動、易失性/非易失性計算機存儲介 質。僅作為示例,圖5示出了對不可移動、非易失性磁介質進行讀寫的硬盤驅動器238,對可 移動、非易失性磁盤2M進行讀寫的磁盤驅動器239,以及對諸如CD ROM或其它光學介質 等可移動、非易失性光盤253進行讀寫的光盤驅動器M0??梢栽谑纠圆僮鳝h(huán)境中使用 的其他可移動/不可移動、易失性/非易失性計算機存儲介質包括但不限于,磁帶盒、閃存 卡、數字多功能盤、數字錄像帶、固態(tài)RAM、固態(tài)ROM等等。硬盤驅動器238通常由諸如接口 234等不可移動存儲器接口連接至系統(tǒng)總線221,磁盤驅動器239和光盤驅動器240通常由 諸如接口 235等可移動存儲器接口連接至系統(tǒng)總線221。
以上描述和在圖5中示出的驅動器及其相關聯的計算機存儲介質為計算機241提 供對計算機可讀指令、數據結構、程序模塊和其他數據的存儲。例如,在圖5中,硬盤驅動器 238被示為存儲操作系統(tǒng)258、應用程序257、其它程序模塊256和程序數據255。注意,這 些組件可以與操作系統(tǒng)225、應用程序226、其他程序模塊227和程序數據2 相同,也可以 與它們不同。操作系統(tǒng)258、應用程序257、其他程序模塊256和程序數據255在這里被標 注了不同的標號是為了說明至少它們是不同的副本。用戶可以通過輸入設備,諸如鍵盤251 和定點設備252(通常被稱為鼠標、跟蹤球或觸摸墊),向計算機241輸入命令和信息。其 他輸入設備(未示出)可以包括話筒、操縱桿、游戲手柄、圓盤式衛(wèi)星天線、掃描儀等等。這 些和其他輸入設備通常由耦合至系統(tǒng)總線的用戶輸入接口 236連接至處理單元259,但也 可以由其他接口和總線結構,諸如并行端口、游戲端口或通用串行總線(USB),來連接。相 機沈、觀和捕捉設備20可經由用戶輸入接口 236來定義控制臺100的附加輸入設備。監(jiān) 視器242或其他類型的顯示設備也經由接口,諸如視頻接口 232,連接至系統(tǒng)總線221。除 監(jiān)視器以外,計算機也可以包括其它外圍輸出設備,諸如揚聲器244和打印機M3,它們可 以通過輸出外圍接口 233連接。捕捉設備20可經由輸出外圍接口 233、網絡接口 237或其 他接口連接到計算系統(tǒng)220。計算機241可使用至一個或多個遠程計算機,諸如遠程計算機M6的邏輯連接 在網絡化環(huán)境中操作。遠程計算機246可以是個人計算機、服務器、路由器、網絡PC、對等 設備或其他常見網絡節(jié)點,且通常包括上文相對于計算機241描述的許多或所有元件,但 在圖5中只示出存儲器存儲設備M7。圖中所示邏輯連接包括局域網(LAN) 245和廣域網 (WAN) M9,但也可以包括其它網絡。這樣的聯網環(huán)境在辦公室、企業(yè)范圍計算機網絡、內聯 網和因特網中是常見的。當在LAN聯網環(huán)境中使用時,計算機241通過網絡接口或適配器237連接至LAN 2450當在WAN聯網環(huán)境中使用時,計算機241通常包括調制解調器250或用于通過諸如因 特網等WAN 249建立通信的其他裝置。調制解調器250可以是內置或外置的,它可以經由 用戶輸入接口 236或其他適當的機制連接至系統(tǒng)總線221。在網絡化環(huán)境中,相對于計算機 241所描述的程序模塊或其部分可被存儲在遠程存儲器存儲設備中。作為示例而非局限,圖 5示出應用程序248駐留在存儲器設備247上??梢岳斫?,所示的網絡連接是示例性的,且 可以使用在計算機之間建立通信鏈路的其他手段。圖4或5的系統(tǒng)中的任一個或不同計算系統(tǒng)可用于實現圖2的計算系統(tǒng)12。如 上所述,計算系統(tǒng)12確定用戶的運動,并采用這些檢測到的運動來控制視頻游戲或其他應 用。例如,用戶的運動可用于控制視頻游戲中的化身和/或對象。在某些實施例中,系統(tǒng)可 同時跟蹤多個用戶,并允許多個用戶的運動控制應用。上述視頻游戲系統(tǒng)將使用深度圖像和/或視覺圖像來跟蹤用戶和對象。該跟蹤隨 后被用來更新應用(例如,視頻游戲)。因此,用戶可通過使用用戶的身體和/或用戶周圍 的物體的移動來操縱游戲人物或應用的其它方面。例如,用戶的運動可用于確定虛擬世界 中的化身的移動?;韺?zhí)行與用戶相同(或相似)的動作。在某些情形中,化身將執(zhí)行 用戶正在執(zhí)行的動作;然而,化身將以相比于用戶的運動被放大的方式來執(zhí)行該動作。圖6是描述用于在用戶和應用之間的交互期間提供放大的運動的過程的一個實 施例的流程圖。在以下討論中,視頻游戲將被用作應用的一個示例。然而,圖6(以及圖7-11)的過程也適用于其它類型的應用。在圖6的步驟302,系統(tǒng)將使用(如上所述的)深 度相機和/或視頻相機來傳感用戶的運動。在步驟304,系統(tǒng)將確定預期動作。例如,系統(tǒng) 將識別姿勢的開始或預定義動作的開始。預定義動作的一個示例是跳或蹲。也可包括其他 動作。在一個實施例中,如上所述地跟蹤骨架,以便標識指示跳或蹲或其它動作的特定關節(jié) 的運動。在某些實施例中,系統(tǒng)將不能從所發(fā)送的運動中確定預期動作。在一個實施例中, 如上所討論的,系統(tǒng)通過使用過濾器60、62、64、……、66,結合識別器引擎討(見圖2)來識 別/確定用戶的動作。在步驟306,系統(tǒng)確定預期動作是否是能被放大的動作。系統(tǒng)將被配置成使得某些 動作能被放大而其它動作不能被放大。在一個實施例中,僅跳和蹲能被放大。在另一實施 例中,僅跳、蹲、手臂擺動、猛擊和投擲能被放大。在其它實施例中,其它動作集能被放大。如果預期動作不是能被放大的動作,則在步驟314,系統(tǒng)將與用戶交互而不放大任 何動作。如果預期動作是能被放大的動作,則在步驟308,確定應用的上下文是否適合放大。 例如,系統(tǒng)將基于正在玩的視頻游戲的上下文來確定放大動作是否適當。例如,如果視頻游 戲中的化身在洞穴或具有非常低的天花板的房間中,且用戶執(zhí)行了跳躍,則放大該跳躍不 是適當的。如果應用的上下文不適合放大,則應用將與用戶交互(步驟314)而不放大用戶 的動作。然而,如果上下文適合放大用戶的動作,則在步驟310,系統(tǒng)將創(chuàng)建描繪該化身執(zhí)行 與用戶相同的移動的動畫;然而,該化身的移動相比于用戶將被放大,所有這些都是響應于 傳感用戶的運動來進行的。在一個實施例中,用戶的動作的放大量將按照與用戶的運動的 幅度成比例的因子,這將在下文中描述。另外,在一個實施例中,將創(chuàng)建動畫來與用戶的移 動同步,使得化身將在用戶開始和停止用戶的移動的同時開始和停止該動畫。另外,在步驟 312,系統(tǒng)將向用戶提供與所傳感的用戶的運動的幅度成比例的音頻/視覺反饋。出于本文 的目的,“音頻/視覺”包括僅音頻、僅視覺、或音頻和視覺的組合。在步驟314,系統(tǒng)將繼續(xù) 與用戶交互。圖6的過程可被連續(xù)重復。盡管圖6以順序的次序示出了各步驟,但這些步驟可以按不同次序來執(zhí)行。另外, 且有可能,系統(tǒng)將同時執(zhí)行這些步驟中的許多步驟。例如,在步驟314,應用與用戶交互能 在執(zhí)行其它步驟302-312的同時發(fā)生。在一個實施例中,與用戶交互的步驟314在執(zhí)行圖 6的整個時間期間執(zhí)行。在某些實施例中,步驟302的運動傳感被連續(xù)地執(zhí)行,并且在確定 預期動作時,可執(zhí)行動作302-312。另外,步驟310和312可被同時執(zhí)行,使得該動畫被實時 地創(chuàng)建并顯示。另外,步驟310-312可與傳感用戶的對應運動(步驟30 同時執(zhí)行,使得 該動畫與用戶的移動同步地顯示。圖7是描述用于某一特定動作是否能被放大的過程的一個實施例的流程圖。圖7 的過程是圖6的步驟306的一個示例實現。在步驟402,系統(tǒng)將訪問能被放大的動作的列 表。在一個實施例中,特定應用的創(chuàng)建者將提供可被放大的動作的預定義列表。在另一實 施例中,能被放大的每一動作與一過濾器(見圖2的過濾器60、62、64、……、66)相關聯, 使得步驟402將包括訪問過濾器列表。在步驟404,應用將確定用戶預期的動作是否在能被 放大的動作的列表上。如果是,則得出用戶的該特定動作能被放大的結論(步驟406);否 則,用戶預期的動作不能被放大(步驟408)。圖8是描述用于確定應用的當前上下文是否適合放大的過程的一個實施例的流 程圖。圖8的過程是圖6的步驟308的一個示例實現。在圖8的步驟452,應用將訪問虛擬世界中的化身的位置。在步驟454,應用將確定用戶預期的動作的放大形式在當前位置是 否可被允許。如果是,則該上下文適合放大(步驟456);否則,該上下文不適合放大(步驟 458)。圖9是描述用于創(chuàng)建描繪放大的移動的動畫和音頻/視覺反饋的過程的一個實施 例的流程圖。圖9的過程是圖6的步驟310的一個示例實現。在圖9的步驟502,系統(tǒng)將確 定移動的幅度。在一個實施例中,步驟502包括確定速度、速率、加速度、距離和/或定時信 息。在一個示例中,系統(tǒng)將確定在時間段P期間用戶移動的距離的單位量。在一個示例中, P可以是一秒;然而,可使用其它時間段。距離單位可以是米、厘米、英寸等。在步驟504,系統(tǒng)將訪問比例參數。例如,系統(tǒng)將采用要用作乘數的數字來創(chuàng)建對 應于用戶的移動的、化身的移動的放大。在一個實施例中,該乘數可以是整數。在其它實施 例中,可使用更復雜的數學函數來標識適當的乘數。該乘數可以基于用戶的移動的幅度、應 用的上下文和/或其它環(huán)境狀況。在一個實施例中,系統(tǒng)將存儲要評估的一組乘數或數學 等式/關系。該組乘數或數學等式/關系在步驟504中訪問。步驟506包括從步驟504中 訪問的該組乘數或數學等式/關系中確定放大的幅度。圖10圖形地描述了用于確定要用作創(chuàng)建放大的乘數的比例參數的系統(tǒng)的一個示 例。在圖10的實施例中,系統(tǒng)將包括內半徑頂和外半徑0R,兩者都是距離值。如果用戶在 時間段P中移動的距離量(例如,髖關節(jié)j9在跳躍期間向上移動的量)小于內半徑頂,則 化身的移動將被創(chuàng)建為用戶的移動乘以內比例參數IS。內半徑頂也與外比例參數起始值 OSS相關聯。外半徑OR與外比例參數結束值OSE相關聯。如果用戶在時間段P期間移動的 距離量等于內半徑頂,則化身的移動將被創(chuàng)建為用戶的移動乘以外比例參數起始值0SS。 如果用戶在時間段P期間移動的距離量等于外半徑0R,則化身的移動將被創(chuàng)建為用戶的移 動乘以外比例參數結束值0SE。如果用戶在時間段P內移動的距離量在頂和OR之間,則在 創(chuàng)建化身的移動時,將通過基于用戶在時間段P內移動的距離D如何在頂和OR之間在OSS 和OSE之間進行內插,來使用OSS和OSE之間的比例因子放大用戶的距離??墒褂靡韵碌?br>
式
/ D - /R \
放大幅度=055 + (OSE 一 OSS) (^37^]在步驟508,系統(tǒng)將基于步驟506中所確定的放大幅度和圖6的步驟302中所傳感 的用戶的移動來為化身確定移動數據。在步驟510,系統(tǒng)將基于步驟508中所確定的移動數 據來繪制化身移動?;淼囊苿訉⑾啾扔谒鶄鞲械挠脩舻倪\動按照與所確定的用戶移動的 幅度成比例的因子來放大。在步驟512,系統(tǒng)將提供與移動幅度成比例的音頻/視覺反饋。在一個實施例中,
系統(tǒng)將做出其音高或音調基于在步驟506所確定的放大的幅度/因子來變化的聲音,該放
大幅度/因子本身基于用戶的移動的幅度。在其它實施例中,系統(tǒng)可在動作的開頭、期間或
結束提供視覺反饋。例如,如果用戶跳躍且化身做出更高的跳躍,則當化身落地時,地面可
與放大幅度/因子成比例地搖晃。或者,化身的頭發(fā)可在風中吹起,其中風具有基于放大幅
度/因子的速度。音頻/視覺反饋的其它示例包括跳躍頂部的云、跳躍離地之處飛起的鴨
子、落地時的重擊聲、跳躍者離地之處的腳印等等。這些視覺反饋中的任一個可基于放大幅
度/因子來變化。例如,改變鴨子飛起的量、改變人群的大小、改變落地時的重擊聲的音量/音高/音調、和/或改變腳印的大小。盡管圖9按某一次序示出了各步驟,但圖9的這些步驟可以按與所描繪的不同的 步驟來執(zhí)行。另外,圖9的許多步驟可同時執(zhí)行。例如,在一個實施例中,確定移動數據(步 驟508)和繪制化身(步驟510)可連續(xù)執(zhí)行,而放大幅度可在動作的開頭確定。圖11是描繪用于基于移動數據來繪制化身移動的一個實施例的流程圖。圖11的 過程是圖9的步驟510的一個示例實現。在圖11的步驟602,系統(tǒng)標識用戶開始動作。在 該過程中的這一點,系統(tǒng)已經確定了用戶的預期動作,且因此系統(tǒng)知道該動作的開始。系統(tǒng) 將在步驟604基于游戲上下文來標識化身的開始位置。在步驟606,系統(tǒng)將在用戶開始動 作時或在非常接近該時間時在開始位置繪制化身。為了執(zhí)行上述步驟,可以在用戶開始動 作和化身開始動作之間有延遲;然而,這一延遲可以是最小的,且可能不被用戶感知。在步 驟608,將在對應于用戶的中間位置的時間在動作的中間位置繪制化身。在步驟610,系統(tǒng) 將標識用戶結束動作。例如,系統(tǒng)將通過確定用戶何時到達地面來標識用戶何時完成跳躍。 在步驟612,系統(tǒng)將標識化身的結束位置,然后在用戶結束用戶的動作的同時在該結束位置 繪制化身(步驟614)。在一個實施例中,圖11的過程是在用戶執(zhí)行動作的同時執(zhí)行的;因 此,系統(tǒng)將同時傳感用戶的運動數據并執(zhí)行圖11的過程。盡管用結構特征和/或方法動作專用的語言描述了本主題,但可以理解,所附權 利要求書中定義的主題不必限于上述具體特征或動作。相反,上述具體特征和動作是作為 實現權利要求的示例形式公開的。本發(fā)明的范圍旨在由所附權利要求書來定義。
權利要求
1.一種用于提供放大運動的方法,包括使用相機來傳感用戶的運動(302);響應于傳感所述用戶的運動,創(chuàng)建并顯示對象以相比于所述用戶的運動被放大的方式 執(zhí)行所述用戶的運動的動畫(310和312);以及創(chuàng)建并輸出與所傳感的用戶的運動的幅度成比例的音頻/視覺反饋(310和312)。
2.如權利要求1所述的方法,其特征在于所述使用相機來傳感運動包括使用深度相機來傳感深度圖像并從所述深度圖像中確 定所述用戶的運動。
3.如權利要求1或2所述的方法,其特征在于,還包括確定所傳感的用戶的運動的幅度,所述用戶的運動按照與所傳感的用戶的運動的幅度 成比例的因子來放大。
4.如權利要求1、2或3所述的方法,其特征在于所述創(chuàng)建并顯示對象執(zhí)行所述用戶的運動的動畫包括創(chuàng)建并顯示所述對象在用戶開 始所述運動時開始所述運動并在用戶完成所述運動時完成所述運動。
5.如權利要求1-4中的任一項所述的方法,其特征在于,還包括確定用戶執(zhí)行所述運動的意圖,所述創(chuàng)建并顯示動畫基于所確定的意圖。
6.如權利要求1-5中的任一項所述的方法,其特征在于所述對象是視頻游戲中的化身;以及所述方法還包括基于在所述用戶的運動的時間所述視頻游戲中的化身的上下文來確 定放大所述用戶的運動。
7.如權利要求1-6中的任一項所述的方法,其特征在于,還包括確定對應于所述用戶的運動的姿勢,所述對象執(zhí)行所述用戶的運動的動畫包括所述對 象執(zhí)行所述姿勢。
8.如權利要求1所述的方法,其特征在于,還包括確定對應于所述用戶的運動的動作,所述對象執(zhí)行所述用戶的運動的動畫包括所述對 象執(zhí)行所述動作。
9.如權利要求8所述的方法,其特征在于,還包括確定所傳感的用戶的運動的幅度,所述用戶的運動按照與所傳感的用戶的運動的所確 定的幅度成比例的因子來放大,所述使用相機來傳感運動包括使用深度相機來傳感深度圖 像并從所述深度圖像中確定所述用戶的運動,所述對象是視頻游戲中的化身。
10.一種能提供放大運動的系統(tǒng),包括能傳感用戶的運動的相機00);以及連接到所述相機來接收來自所述相機的數據的計算機(12),所述數據指示所述用戶的 運動,所述計算機確定對應于所傳感的用戶的運動的動作,并確定所傳感的用戶的運動的 幅度,所述計算機創(chuàng)建并顯示視頻游戲中的化身以相比于所傳感的運動按照與所確定的幅 度成比例的因子放大的方式執(zhí)行所述動作的動畫。
11.如權利要求10所述的系統(tǒng),其特征在于所述相機是深度相機,且來自所述相機的數據包括深度圖像。
12.如權利要求10或11所述的系統(tǒng),其特征在于所述動作是姿勢;以及所述視頻游戲中的化身執(zhí)行所述動作的動畫包括所述化身執(zhí)行所述姿勢。
13.如權利要求10、11或12所述的系統(tǒng),其特征在于所述計算機確定用戶執(zhí)行所述運動的意圖,所述計算機基于所確定的意圖來創(chuàng)建并顯 示所述動畫。
14.如權利要求10-13中的任一項所述的系統(tǒng),其特征在于 所傳感的運動的幅度包括每時間間隔的距離。
15.如權利要求10所述的系統(tǒng),其特征在于所述計算機創(chuàng)建并顯示視頻游戲中的化身執(zhí)行所述動作的動畫,使得所述化身在所述 用戶開始所述動作時開始所述動作,并且所述對象在所述用戶結束所述動作時結束所述動
全文摘要
本發(fā)明公開了一種仿生學運動系統(tǒng)和方法。能傳感用戶的運動的相機被連接到計算系統(tǒng)(例如,視頻游戲裝置或其它類型的計算機)。該計算系統(tǒng)確定對應于所傳感的用戶的運動的動作,并確定所傳感的用戶的運動的幅度。該計算系統(tǒng)創(chuàng)建并顯示對象(例如,視頻游戲中的化身)以相比于所傳感的運動按照與所確定的幅度成比例的因子放大的方式來執(zhí)行動作的動畫。該計算系統(tǒng)還創(chuàng)建并輸出與所傳感的用戶的運動的幅度成比例的音頻/視覺反饋。
文檔編號G06F3/01GK102135798SQ20111006591
公開日2011年7月27日 申請日期2011年3月11日 優(yōu)先權日2010年3月12日
發(fā)明者B·J·芒特, C·維勞比, D·奧斯本, D·本納特, G·N·斯努克, J·蒂亞奎羅, K·蓋斯那, R·馬爾科維奇, S·G·拉塔, Z·T·米德爾頓 申請人:微軟公司