專利名稱:利用計算設備計算代謝當量的制作方法
技術領域:
本發明涉及利用計算設備計算代謝當量。
背景技術:
計算機游戲系統已經演化為包括對體力有更高要求的活動,尤其是配備有諸如深度相機之類的自然輸入設備的計算機游戲系統。因此,游戲對于ー些用戶而言已經成為某種形式的鍛煉。然而,這些用戶難以精確地弄清楚鍛煉的嚴酷程度,比如特定的鍛煉已經燃燒了多少卡路里。ー種在先方案可以在被設計為模擬跑步的計算機游戲中找到。跑步游戲向用戶顯示跑步活動的任務代謝當量(MET),該任務代謝當量可以用于確定所燃燒的卡路里。然而,MET模型是任務專用的,并且因此該跑步游戲是構建在跑步專用的MET模型上的,該MET模型僅能應用于跑歩。任務專用的方案的缺點是,計算機游戲中的許多運動都是“非標準活動”,并且不存在針對這些活動的MET模型。此外,針對這些活動定制設計MET模型將是昂貴得驚人的,并將耗費大量的開發時間。出于該原因,大多數計算機游戲都不能為這樣的非標準活動提供MET值或卡路里輸出估計,從而使萌芽中的基于計算機的鍛煉受挫。
發明內容
在此提供了ー種供與計算設備一起使用的用于估計任務代謝當量的方法。該方法包括從用戶的捕捉設備接收輸入;以及跟蹤該用戶的多個關節中的每個的位置。該方法還包括確定所述多個關節中的每個關節在第一幀與第二幀之間行進的距離;以及基于該行進的距離和在第一和第二幀之間的流逝時間來計算所述多個關節中的每個關節的水平速度和垂直速度。該方法還包括使用代謝等式估計任務代謝當量的值,所述代謝等式包括所述多個關節中的每個關節的水平速度的分量和垂直速度的分量;以及輸出所述值以供顯
/Jn o提供本發明內容以便以簡化形式介紹將在以下具體實施方式
中進ー步描述的ー些概念。本發明內容并不g在標識所要求保護主題的關鍵特征或必要特征,也不g在用于限制所要求保護主題的范圍。此外,所要求保護的主題不限于解決在本公開的任一部分中所提及的任何或所有缺點的實現。
圖1是根據本公開的實施例查看所觀測的場景的示例性游戲系統的立體圖。圖2A示意性地示出所觀測場景中的由圖1的游戲系統用示例性骨架數據建模的人類目標。圖2B示意性地示出了由圖1的游戲系統隨時間跟蹤的示例性骨架數據。圖3是示出了用于使用圖1的游戲系統來估計任務代謝當量的方法的示例性實施例的流程圖。圖4是示出了用于使用圖1的游戲系統對用戶的多個關節中的每個進行加權的方法的示例性實施例的流程圖。圖5是可用作圖1的游戲系統的計算系統的示意圖。
具體實施例方式現在將通過示例并參照所示的以上列出的實施例來描述本發明的各方面。圖1示出了用戶10所處的示例性3D交互空間100。圖1還示出了游戲系統12,其可使得用戶10能夠與視頻游戲交互。游戲系統102可被用于玩多種不同的游戲、播放一個或多個不同的媒體類型、和/或控制或操縱非游戲應用和/或操作系統。游戲系統12可以包括游戲控制臺14和顯示設備16,該顯示設備16可用于向游戲玩家呈現游戲視覺。游戲系統12是ー種計算設備,其細節將參照圖5予以描述。回到圖1,3D交互空間100還可以包括諸如相機之類的捕捉設備18,其可以耦合到游戲系統12。捕捉設備18例如可以是用于通過捕捉圖像來觀測3D交互空間100的深度相機。因此,捕捉設備18可以用于通過跟蹤用戶10的多個關節中的每個的位置來估計用戶10的任務代謝當量(MET)。例如,捕捉設備18可以捕捉用戶的圖像,所述圖像可以用于確定每個關節的増量距離并且還可用于計算每個關節的速度。另外,一個或多個關節可以與其他關節不同地被加權以計及各種因素,比如重力、用戶人體解剖、用戶體能、自由度等等。通過這種方式,用戶10可以與游戲系統交互,并且可以基于用戶10的實際運動(或無運動)來估計MET的值。用于估計MET的傳統方法是基于特定活動或任務的。一種傳統方案包括確定用戶所參與的特定活動,并且向用戶輸出該特定活動的平均MET值。該方案不是基于用戶實際上正在做什么來估計MET值的。相反,該方案是基于如下假設來操作的特定活動總是具有相同的MET值,而不管用戶執行該特定活動的強度,使得MET輸出將對大多數用戶而言是有誤的。另外,該方法不適用于無平均MET值可用的非標準活動(例如非體力活動)。另ー傳統方案基于針對用戶身體的片段(例如用戶的腿)所檢測到的速度來估計MET值。然而,該方案也假定特定的活動,并且使用活動專用的MET模型來基于該特定活動估計MET值。因此,該方案也是活動專用的,并且因此未通用得足以估計非標準活動的MET值。本公開通過估計用戶的MET值來解決這些挑戰中的至少ー些,而不管用戶10所執行的活動類型如何。由于MET值是在未將MET值限于特定活動的情況下估計的,因此可以估計反映用戶10與游戲系統12進行交互的強度的更精確MET值。換言之,該用戶的MET值是在游戲系統12未假定或確定用戶在執行什么活動的情況下被估計的。因此,用戶10可以執行基本上任何活動,并且游戲系統12可以通過實時地跟蹤用戶10的運動來估計MET值。例如,用戶10可以通過玩魔法游戲、格斗游戲、拳擊游戲、跳舞游戲、賽車游戲等等來與游戲系統12交互,并且用戶的MET可以在未假定用戶施放法術、與故人打斗、打拳擊、跳舞或賽車的情況下被估計。另外,用戶10可以通過觀看電影、與各種應用交互等等來與游戲系統12交互。這樣的示例可以在此稱為非標準活動,但是由于在此所述的方法是在未假定特定活動的情況下估計MET的,因此甚至可以為可以與可能更低的強度相關聯的非標準活動估計MET值。
圖2A示出了簡化的處理流水線26,其中3D交互空間100中的游戲玩家10被建模成虛擬骨架36,所述虛擬骨架36可以充當用于控制游戲、應用和/或操作系統的各個方面的控制輸入。圖2A示出了處理流水線26的四個階段圖像收集28、深度映射30、骨架建模34、以及游戲輸出40。可以理解,與圖2A中所描繪的那些步驟相比,處理流水線可包括更多的步驟和/或可替代的步驟,而不背離本發明的范圍。在圖像收集28期間,游戲玩家10和3D交互空間100的其余部分可以由諸如深度相機18之類的捕捉設備來成像。具體而言,深度相機被用于跟蹤用戶(例如游戲玩家10)的多個關節中的每個的位置。在圖像收集28期間,深度相機可以為每個像素確定所觀測場景中的表面相對于深度相機的深度。可以使用基本上任何深度尋找(depth finding)技術而不背離本公開的范圍。參考圖5更詳細地討論了示例深度尋找技木。在深度映射30期間,為每個像素確定的深度信息可用于生成深度圖32。這樣的深度圖可采用基本上任何合適的數據結構的形式,包括但不限于包括所觀測場景的每個像素的深度值的深度圖像緩沖區。在圖2A中,深度圖32被示意性地示為游戲玩家10的輪廓的像素化網格。這ー例示是出于理解簡明的目的、而不是出于技術精確性的目的。能夠理解,深度圖一般包括所有像素的深度信息,而不僅僅是對游戲玩家10成像的那些像素。深度映射可以由深度相機或計算系統來執行,或者深度相機和計算系統可以協作來執行深度映射。在骨架建模34期間,從深度相機獲得包括計算機用戶(例如游戲玩家10)的3D交互空間的ー個或多個深度圖像(例如深度圖32)。虛擬骨架36可從深度圖32導出以提供游戲玩家10的機器可讀表示。換言之,從深度圖36導出虛擬骨架36以對游戲玩家10建摸。虛擬骨架36可以按任何合適的方式從深度圖中導出。在某些實施例中,可將ー個或多個骨架擬合算法應用于深度圖。例如,先前訓練的模型集合可被用于將來自深度圖的每個像素標記為屬于特定的身體部位;并且虛擬骨架36可以被擬合到所標記的身體部位。本發明與實際上任何骨架建模技術兼容。在一些實施例中,可以使用機器學習來從深度圖像中導出虛擬骨架。虛擬骨架提供了深度相機18所觀測的游戲玩家10的機器可讀表示。虛擬骨架36可包括多個關節,每個關節都對應于游戲玩家的一部分。根據本發明的虛擬骨架可包括基本上任何數量的關節,每個關節都可與基本上任何數量的參數(例如三維關節位置、關節旋轉、對應身體部位的身體姿勢(例如手張開、手合上等)等)相關聯。應當理解,虛擬骨架可采取如下數據結構的形式該數據結構包括多個骨架關節中的每個關節的ー個或多個參數(例如包含每個關節的X位置、y位置、z位置和旋轉的關節矩陣)。在一些實施例中,可使用其他類型的虛擬骨架(例如線框、ー組形狀圖元等等)。骨架建模可以由計算系統來執行。具體而言,骨架建模可以用于從接收自ー個或多個傳感器(例如圖1的深度相機18)的觀測信息(例如深度圖32)中導出虛擬骨架。在一些實施例中,計算系統可以包括可由多種不同應用使用的專用骨架建模模塊。通過這種方式,每個應用都不必獨立地將深度圖解釋成機器可讀骨架。相反,各個應用可以以預期數據格式從專用骨架建模模塊(例如通過應用編程接ロ或API)接收虛擬骨架。在一些實施例中,專用骨架建模模塊可以是可通過網絡訪問的遠程建模器。在一些實施例中,應用自己可以執行骨架建摸。
如上所述,可以通過跟蹤游戲玩家的運動來估計MET的值。能夠理解,上述估計建模技術可以隨時間提供機器可讀信息,該信息包括表示游戲玩家的多個骨架關節中的每個關節的三維位置。可以將這樣的數據至少部分地用于估計用戶的MET,這將在下面予以更詳細描述。圖2B示出了使用骨架建模技術來跟蹤游戲玩家的運動的示例。如上所述,游戲玩家可以被建模成虛擬骨架36。如所示那樣,虛擬骨架36 (以及由此游戲玩家10)可以隨時間運動,使得虛擬骨架的一個或多個關節的三維位置例如在第一幀與第二幀之間的改變。能夠理解,為了改變位置,可以改變ー個或多個參數。例如,關節可以在X方向上改變位置,但是可以不在y和/或z方向上改變。基本上任何位置改變都是可能的,而不背離本公開的范圍。如圖2B所示,第一幀50可以被第二幀52跟隨,并且每個幀都可以包括如上所述對3D交互空間100中的游戲玩家10進行建模的虛擬骨架36。另外,骨架建模可以進行任何合適的時間段,例如進行到第n幀54。能夠理解,在此所使用的“第二幀”(以及同樣第n幀)可以指代在第一幀之后發生的幀,其中之后可以是任何合適的時間段。第一幀50可以包括虛擬骨架36,其中左腕關節56被確定為具有所示出的3D位置X1, Y1,另外,第二幀52可以包括虛擬骨架36,其中左腕關節56被確定為具有所示出的3D位置X2,Y2, Z2。由于腕關節56的至少ー個位置參數已經在第一幀50與第二幀52之間發生了改變,因此可以確定關節56行進的距離。換言之,該距離可以基于在第一和第二幀之間腕關節56的位置改變來確定。如所示那樣,該距離例如可以使用公式58來確定。另夕卜,關節56的速度例如可以根據公式60來計算。如所示那樣,公式60可以基于所確定的距離和第一幀50與第二幀52之間流逝的時間。下面描述用于確定關節所行進距離、計算該運動的速度以及導致估計MET的值的其他計算的方法。回到圖2A,在游戲數據40期間,通過骨架建模34識別的游戲玩家10的身體運動被用于控制游戲、應用或操作系統的各方面。另外,這樣的交互可以通過如下方式來測量從表示游戲玩家10的虛擬骨架的多個關節中的每個關節的所檢測位置中估計MET值。在所示的場景中,游戲玩家10正在玩幻想主題的游戲并且已經執行了法術投擲姿勢。與執行法術投擲姿勢相關聯的運動可以被跟蹤,使得可以估計MET的值。如所示那樣,MET的估計值(一般在44處指示)可以在顯示設備16上顯示。圖3是示出了用于使用圖1的游戲系統來估計MET的方法300的示例性實施例的流程圖。方法300可使用在此所述的硬件和軟件組件來實現。在302,方法300包括從捕捉設備接收輸入。例如,捕捉設備可以是深度相機18,并且輸入可以包括用戶隨時間捕捉的圖像序列。因此,用戶的圖像序列例如可以是用戶隨時間捕捉的深度圖像序列。在304,方法300包括跟蹤用戶的多個關節中的每個關機的位置。例如,用戶的多個關節中的每個關節的位置可以從如在用戶的深度圖像序列中捕捉的每個關節的深度信息中確定。另外,多個關節中的每個關節的位置可以通過上述骨架跟蹤流水線來確定。通過這種方式,可以在每幀內(即利用所捕捉的每個深度圖像)確定所跟蹤的每個關節的三維(3D)位置。例如,3D位置可以使用包括x、y和z方向的笛卡爾坐標系來確定。在306,方法300包括確定多個關節中的每個關節在第一幀與第二幀之間的增量位置。在此所涉及的増量位置可以被定義成位置的改變。因此,増量位置可以被用于確定多個關節中的每個關節所行進的距離。例如,増量位置可以基于所跟蹤的多個關節中的每個關節的位置在第一和第二幀之間的改變。另外,如在此所涉及的那樣,第一幀例如可以是所捕捉的第一圖像并且第二幀可以是所捕捉的第二圖像。能夠理解,第二幀可以是在第一幀之后發生的任何幀。例如,第二幀可以是緊跟在第一幀之后的第二幀。作為另ー示例,第二幀可以是在捕捉了第一幀一定時間段以后捕捉的幀。該時間段可以是任何合適的時間段,例如比如毫秒、秒、分鐘、一分鐘以上或任何其他時間段。能夠理解,該時間段可以是閾值時間段。例如,閾值時間段可以對應于時間段的前述示例中的任何示例。另外,閾值時間段例如可以是被預先確定為用于估計MET的充足時間段的時間段。這樣的閾值時間段可以對應于由第一和第二幀定義的流逝時間段。通過這種方式,確定在第一和第二幀之間的流逝時間段期間用戶的多個關節中的每個關節的增量距離。在308,方法300包括計算多個關節中的每個關節的水平速度和垂直速度。例如,水平速度和垂直速度可以基于在第一和第二幀之間多個關節中的每個關節的增量位置以及流逝時間。例如,水平速度可以等于多個關節中的每個關節的水平増量位置除以流逝時間。作為另ー示例,垂直速度可以等于多個關節中的每個關節的垂直増量位置除以流逝時間。計算水平速度可以包括水平平面內的ー個或多個速度分量。例如,計算水平速度可以包括X方向的速度以及Z方向的速度,其中X和Z方向來自深度相機的視角。因此,X方向可以表示深度相機的橫向方向(邊到邊),并且Z方向可以表示深度相機的深度方向(逼近/遠離)。類似地,計算垂直速度可以包括與水平平面垂直的垂直平面內的ー個或多個速度分量。例如,計算垂直速度可以包括y方向的速度,其中y方向來自深度相機的視角。因此,y方向可以表示深度相機的向上/向下方向。在310,方法300包括使用代謝等式估計任務代謝當量的值。例如,代謝等式可以包括水平分量和垂直分量。水平和垂直分量可以分別是多個關節中的每個關節的水平速度和垂直速度之和。另外,水平和垂直分量可以另外地分別包括水平變量和垂直變量。例如,代謝等式可以是用于計算任務代謝當量(MET)的美國運動醫學會(ACSM)代謝等式等式1:MET =其中VO2表示氧氣消耗,其由下列等式來計算等式2 -.VO2=分量h +分量v + R其中“ R”是等于3. 5的常數,“分量h”是水平分量,并且“分量是垂直分量。水平和垂直分量可以通過將等式2擴充為以下等式來定義等式 3 =VO2=Kh (速度 h) + Kv (速度 J + R其中“速度h”表示水平速度并且“速度v”表示垂直速度,其可以如上所述根據用戶的多個關節在第一幀與第二幀之間的増量位置以及第一和第二幀之間的流逝時間來計算。另外,等式3包括“Kh”和“Kv”可以分別表示水平變量和垂直變量。“Kh”和“Kv”的值可以通過將所述變量訓練為反映大范圍的MET活動來確定。例如,“Kh”和“Kv”各自都可以是ー個或多個低MET值、ー個或多個中MET值、以及ー個或多個高MET值的平均值。例如,低MET值可以對應于用戶通過坐在沙發上并觀看電影來與游戲系統12交互(例如小于3.O的MET值)。另外,中MET值可以對應于用戶通過用該用戶在賽車游戲中的運動控制賽車化身來與游戲系統12交互(例如3. O和6. O之間的MET值)。另外,高MET值可以對應于用戶通過用該用戶在跳舞游戲中的運動控制玩家化身來與游戲系統12交互(例如大于6. O的MET值)。通過這種方式,低到高MET值例如可以與低強度到高強度活動相關。用于估計MET值的傳統方法可以使用與特定活動相對應的特定水平變量和特定垂直變量。本公開考慮到了大范圍的水平和垂直變量,使得用于估計MET的方法可以如在此所述那樣被應用于任何活動。能夠理解,“ Kh ”和“ Kv ”的值可以從實驗數據中確定和分析,其中該實驗數據包括來自大范圍的MET值的值。作為另ー示例,可以自適應特定用戶的“Kh”和“Kv”的值。例如,可以提示用戶執行某些姿勢、運動、活動等等,并且來自相關聯的骨架跟蹤的數據可以被用于確定該用戶的特定“ Kh”和“ Kv ”。在這樣的場景中,還可以采用用戶標識技木。例如,可以采用面部識別技術來標識出特定用戶,使得與該用戶相關聯的包括該用戶的特定“ Kh”和“Kv”值的簡檔可以被訪問以估計MET。能夠理解,可以采用其他用戶標識技術而不偏移被公開的范圍。回到圖3,在312,方法300包括輸出MET的值以供顯示。例如,顯示器16可以包括顯示該用戶的MET的值的圖形用戶界面。例如在完成與游戲系統12的用戶交互以后,MET的值可以是表示MET的值的最終值(end value)。另外,在用戶與游戲系統12交互時,MET的值可以是表示快照的實時值和/或MET的累積值。能夠理解,方法300是以舉例方式提供的,并且因此不g在為限制性的。因此,能夠理解,方法300可以以任何合適的順序執行而不背離本公開的范圍。另外,與圖3中所示的那些步驟相比,方法300可包括更多的和/或可替代的步驟。例如,方法300可以包括對用戶的多個關節中的每個關節進行加權以實現對MET的更精確估計。例如,圖4是示出了用于對用戶的多個關節中的每個關節進行加權的示例性方法400的流程圖。如上所述,與未對多個關節中的每個關節進行加權相比,對用戶的多個關節中的每個關節進行加權可以導致更精確的MET估計。能夠理解,方法400可以包括已經參照圖3描述過的ー個或多個步驟。另外,能夠理解,這樣的步驟可以類似地或者與在此所述相比稍加變化地執行。另外,方法400的一個或多個步驟可以在如上述那樣確定多個關節中的每個關節在第一幀與第二幀之間的増量位置(例如步驟306)以后進行。方法400可使用在此所述的硬件和軟件組件來實現。在402,方法400包括向用戶的多個關節中的每個關節分配權重。能夠理解,可以向每個關節分配特定的權重。另外,能夠理解,一個關節的特定權重可以不同于另ー關節的特定權重。可以根據基本上任何加權方案向用戶的多個關節中的每個關節分配特定權重。例如,可以向比另ー關節具有更大自由度的關節分配更高加權值。作為ー個非限制性示例,肩膀關節可以比膝蓋關節具有更高加權值。由于肩膀關節是球窩型關節(旋轉自由度),因此肩膀關節比類似于鉸鏈型關節(限于屈伸運動)的膝蓋關節具有更大的自由度。在404,方法400包括將用戶的經加權的多個關節中的每個關節劃分成ー個或多個身體片段。例如,用戶的經加權的多個關節中的一些關節可以被分配給上身片段。例如,上身片段可以包括用戶的經加權關節中在頭部位與髖部位之間的ー個或多個關節。因此,上身片段可以包括頭關節、左髖關節、右髖關節以及在解剖學上定位在頭關節與左髖和右髖關節之間的其他關節。例如,與用戶的右臂和左臂相關聯的ー個或多個關節可以被分配給上身片段。如在此所示使用的那樣,解剖學上的定位可以指與用戶的人體解剖結構有關的關節位置。因此,即使手關節可能在物理上位于髖關節的垂直下方(例如當用戶彎曲髖關節以觸摸腳關節時),手關節仍然被分配給上身片段,因為手關節在解剖學上定位在髖關節與頭關節之間。換言之,手關節高于髖關節,并且低于頭關節,因此手關節屬于上身片段。類似地,用戶的經加權的其他多個關節可以被分配給另一身體片段,比如下身片段。例如,下身片段可以包括用戶的經加權關節中在髖部位與腳部位之間的ー個或多個關節。因此,下身片段可以包括膝蓋關節、腳關節以及在解剖學上定位在髖部位與腳部位之間的其他關節。例如,與用戶的右腿和左腿相關聯的一個或多個關節可以被分配給下身片段。因此,即使左腿關節可能在物理上位于髖關節的垂直上方(例如當用戶執行諸如回旋踢之類的高踢腿時),左腿關節仍然被分配給下身片段,因為左腿關節在解剖學上位于髖關節與腳關節之間。換言之,左腿關節低于髖關節,并且高于腳關節,因此腿關節屬于下身片段。能夠理解,多個經加權關節中的每個關節可以被分配給僅僅ー個身體片段。換言之,單個關節不能被分配給ー個以上身體片段。通過這種方式,可以分析用戶的經加權的多個關節中的每個關節,而無需在兩個身體片段中重復特定的經加權關節。另外,由于髖部位 在上面被描述為上身片段與下身片段之間的間隔,因此能夠理解,各髖關節中的一個或多個髖關節可以被分配給上身片段或下身片段。例如,左髖關節和右髖關節二者可以都被分配給上身片段,或者左髖關節和右髖關節二者可以都被分配給下身片段。可替代地,ー個髖關節可以被分配給上身片段,并且另一髖關節可以被分配給下身片段。回到圖4,在406,方法400包括計算上身片段的平均加權水平速度以及平均加權垂直速度。例如,上身片段的平均加權水平和垂直速度可以通過如下方式來計算與上面的描述類似地,確定經加權的多個關節中處于上身部位內的每個關節在第一幀與第二幀之間的増量位置、以及第一幀與第二幀之間的流逝時間。例如,上身片段的平均加權速度可以根據下面提供的等式4和等式5來計算。能夠理解,等式4和5是作為非限制性示例提供的。等式4Ffr —ムi=體[速,又hWx權干-⑴J
總權東
剛等式5謂速民=1^[=観⑴]如等式4和5中所示,“ UB”指示上身片段并且索引“ i”表示特定關節。另外,總權重可以是例如應用于被分配給上身片段的多個關節中的每個關節的權重之和。在408,方法400包括計算下身片段的平均加權水平速度以及平均加權垂直速度。例如,下身片段的平均加權水平和垂直速度可以通過如下方式來計算與上面的描述類似地,確定經加權的多個關節中處于下身部位內的每個關節在第一幀與第二幀之間的増量位置、以及第一幀與第二幀之間的流逝時間。例如,下身片段的平均加權速度可以根據下面提供的等式6和等式7來計算。能夠理解,等式6和7是作為非限制性示例提供的。等式 6 T D4* FtF 一 Zj1=w [速度h (Ox權承⑴]
又hSm等式7 :ムg速度—E1=腳[速M’.(1)X權重(1)]
如等式6和7中所示,“LB”指示下身片段并且索引“i”表示特定關節。另外,總 權重可以是例如應用于被分配給下身片段的多個關節中的每個關節的權重之和。
在410,方法400包括將下身因子應用于下身片段的平均加權水平和垂直速度。 例如,下身片段和上身片段可能對MET具有不同的影響。因此,下身因子可以被應用于下身 片段的平均加權水平和垂直速度以考慮對MET的影響的差異。
例如,下身片段可以對MET具有更大影響,因為下身片段承載了上身片段的重量。 附加地和/或可替代地,下身片段可以對MET具有更大的影響,因為下身片段在活動期間受 到與地面的摩擦力。通過這種方式,即使下身片段和上身片段內的關節可能具有相似的速 度,但是例如下身片段內的關節可能比上身片段內的關節對MET值影響更大。本發明人在 此已經認識到,值2和值3間的下身因子考慮了影響的差異。然而能夠理解,其他下身因子 是可能的,和/或上身因子可以被應用于上身片段速度而不偏移本公開的范圍。
在412,方法400包括使用代謝等式估計任務代謝當量(MET)的值。例如,所述代 謝等式可以基于上身的平均加權速度以及下身的平均加權速度,其中下身的平均加權速度 包括所應用的下身因子。例如,可以根據上述等式I來計算MET,并且氧氣消耗(VO2)的值 可以通過使用下面提供的等式8、9和10來確定。能夠理解,等式8、9和10是作為非限制 性示例提供的。
等式8 :身體速度h = UB速度h + LB因子XLB速度h
等式9 :身體速度v = UB速度v + LB因子XLB速度v
等式10 =VO2=Kh (身體速度h)+Kv (身體速度V)+R
如等式8和9中所示,“UB”指示上身片段并且“LB”指示下身片段。另外,能夠理 解,等式8、9和10包括與之前所述等式中的一些所包括的變量類似的變量,并且為簡潔起 見將不予以進一步描述。
在414,方法400包括輸出所計算的MET值以供顯示。例如,顯示器16可以包括 顯示該用戶的MET的值的圖形用戶界面。MET的值可以是上述MET的最終值、實時值、快照 值和/或累積值。
能夠理解,方法400是以舉例方式提供的,并且因此不旨在為限制性的。因此,能 夠理解,方法400可以以任何合適的順序執行而不背離本公開的范圍。另外,方法400可包 括與圖4中所示的步驟相比更多的或可替代的步驟。例如,方法400可以包括基于所計算 的MET值計算卡路里燃燒。另外,所計算的MET值可以用于確定其他身體參數,所述身體參 數可以評估用戶在與計算計系統交互時的體能的一方面。
作為另一示例,方法400可以包括為特定用戶調節加權因子。在一些實施例中, 為特定用戶調節加權因子可以包括用戶標識技術。例如,用戶可以通過面部識別技術和/ 或通過另一用戶標識技術來標識。
通過這種方式,可以為與計算設備交互(比如游戲系統12)的用戶估計MET的值。 另外,由于用戶的運動(或無運動)被跟蹤,因此估計MET的值可以被更精確地完成,而不必 假設用戶實際執行的特定活動。
在一些實施例中,可將以上所描述的方法和過程捆綁到包括一個或多個計算機的 計算系統。具體而言,此處所述的方法和過程可被實現為計算機應用、計算機服務、計算機 AP1、計算機庫、和/或其他計算機程序產品。
圖5示意性示出了可以執行上述方法和過程之中的一個或多個的非限制性計算 系統70。以簡化形式示出了計算系統70。應當理解,可使用基本上任何計算機架構而不背 離本公開的范圍。在不同的實施例中,計算系統70可以采取大型計算機、服務器計算機、臺 式計算機、膝上型計算機、平板計算機、家庭娛樂計算機、網絡計算設備、移動計算設備、移 動通信設備、游戲設備等等的形式。
計算系統70包括處理器72和存儲器74。計算系統70可以任選地包括顯示子系 統76、通信子系統78、傳感器子系統80和/或在圖5中未示出的其他組件。計算系統70 還可以任選地包括諸如下列用戶輸入設備例如鍵盤、鼠標、游戲控制器、相機、話筒和/或觸摸屏等等。
處理器72可包括被配置成執行一個或多個指令的一個或多個物理設備。例如,處 理器可被配置為執行一個或多個指令,該一個或多個指令是一個或多個應用、服務、程序、 例程、庫、對象、組件、數據結構、或其它邏輯構造的部分。可實現這樣的指令以執行任務、實 現數據類型、變換一個或多個設備的狀態、或以其他方式得到所希望的結果。
處理器可包括被配置成執行軟件指令的一個或多個處理器。另外或另選地,處理 器可包括被配置成執行硬件或固件指令的一個或多個硬件或固件邏輯機器。處理器的各處 理器可以是單核或多核,且在其上執行的程序可被配置為并行或分布式處理。處理器可以 任選地包括遍布兩個或多個設備的獨立組件,所述設備可遠程放置和/或被配置為進行協 同處理。該處理器的一個或多個方面可被虛擬化并由以云計算配置進行配置的可遠程訪問 的聯網計算設備執行。
存儲器74可包括一個或更多個物理、非瞬時設備,這些設備被配置成保持數據和 /或可由該處理器執行的指令,以實現此處描述的方法和過程。在實現這些方法和過程時, 可以變換存儲器74的狀態(例如以保存不同的數據)。
存儲器74可包括可移動介質和/或內置設備。存儲器74可包括光學存儲器設備 (例如,CD、DVD、HD-DVD、藍光盤等)、半導體存儲器設備(例如,RAM、EPR0M、EEPR0M等)和/或 磁存儲器設備(例如,硬盤驅動器、軟盤驅動器、磁帶驅動器、MRAM等)等等。存儲器74可包 括具有以下特性中的一個或多個特性的設備易失性、非易失性、動態、靜態、讀/寫、只讀、 隨機存取、順序存取、位置可尋址、文件可尋址、以及內容可尋址。在一些實施例中,可將處 理器72和存儲器74集成到一個或多個常見設備中,如專用集成電路或片上系統。
圖5還示出可移動的計算機可讀存儲介質82形式的存儲器的一方面,該介質可以 用于存儲和/或傳送可執行以實現此處所述的方法和過程的數據和/或指令。可移動計算 機可讀存儲介質82尤其是可以采取⑶、DVD、HD-DVD、藍光盤、EEPROM和/或軟盤的形式。
能夠理解,存儲器74包括一個或多個物理的、非瞬時的設備。相反,在一些實施例 中,本文描述的指令的各方面可以按暫態方式通過不由物理設備在至少有限持續時間期間 保持的純信號(例如電磁信號、光信號等)傳播。此外,與本發明有關的數據和/或其他形式 的信息可以通過純信號傳播。
術語“模塊”、“程序”和“引擎”可用于描述被實現為執行一個或多個具體功能的 計算系統70的一方面。在一些情況下,可以通過執行由存儲器74所保持的指令的處理器 72來實例化這樣的模塊、程序或引擎。應當理解,可以從同一應用、服務、代碼塊、對象、庫、 例程、AP1、函數等來實例化不同的模塊、程序和/或引擎。同樣,可以由不同的應用程序、服務、代碼塊、對象、例程、AP1、函數等來實例化同一模塊、程序和/或引擎。術語“模塊”、“程 序”和“引擎”意在涵蓋單個或成組的可執行文件、數據文件、庫、驅動程序、腳本、數據庫記錄等。
應當理解,如此處所使用的“服務”可以是跨越多個用戶會話可執行的、且對一個 或更多系統組件、程序、和/或其他服務可用的應用程序。在一些實現中,服務可以響應于 來自客戶機的請求而在服務器上運行。
在被包括時,顯示子系統76可用于呈現由存儲器74保持的數據的視覺表示。由 于此處所描述的方法和過程改變了由存儲器保持的數據,并由此變換了存儲器的狀態,因 此同樣可以轉變顯示子系統76的狀態以視覺地表示底層數據的改變。顯示子系統76可以 包括使用實際上任何類型的技術的一個或多個顯示設備。可將這樣的顯示設備與處理器72 和/或存儲器74組合在共享封裝中,或這樣的顯示設備可以是外圍顯示設備。
當包括通信子系統78時,通信子系統78可以被配置成將計算系統70與一個或多 個其他計算設備可通信地耦合。通信子系統78可包括與一個或多個不同的通信協議相兼 容的有線和/或無線通信設備。作為非限制性示例,通信子系統可被配置為經由無線電話 網、無線局域網、有線局域網、無線廣域網、有線廣域網等進行通信。在一些實施例中,通信 子系統可允許計算系統70經由諸如因特網之類的網絡發送消息至其他設備和/或從其他 設備接收消息。
傳感器子系統80可以包括被配置為如上述那樣感測一個或多個人類主體的一個 或多個傳感器。例如,傳感器子系統80可以包括一個或多個圖像傳感器、諸如加速度計之 類的運動傳感器、觸摸板、觸摸屏和/或任何其他合適的傳感器。因此,傳感器子系統80例 如可以被配置為向處理器72提供觀測信息。如上所述,諸如圖像數據、運動傳感器數據和/ 或任何其他合適傳感器數據的觀測信息可以用于執行這樣的任務,比如確定一個或多個人 類主體的多個關節中的每個關節的位置。
在一些實施例中,傳感器子系統80可包括深度相機84(例如圖1的深度相機18)。 深度相機84可包括例如立體視覺系統的左和右相機。來自兩個相機的時間解析的圖像可 被相互配準并可被組合來產生深度解析的視頻。
在其它實施例中,深度相機84可以是結構化光深度相機,其被配置成投影包括多 個離散的特征(例如,線或點)的結構化紅外照明。深度相機84可被配置成對從結構化照明 被投影到其之上的場景中反射的結構化照明進行成像。基于所成像的場景的各個區域內鄰 近特征之間的間隔,可構造該場景的深度圖像。
在其它實施例中,深度相機84可以是飛行時間相機,其被配置成將脈沖的紅外照 明投影到該場景上。深度相機可包括兩個相機,這兩個被配置成檢測從場景反射的脈沖照 明。兩個相機均可包括與脈沖照明同步的電子快門,但用于這兩個相機的集成時間可不同, 使得脈沖照明的從源到場景再接著到這兩個相機的像素解析的飛行時間可從在兩個相機 的相應的像素中接收到的相對光的量中辨別。
在一些實施例中,傳感器子系統80可包括可見光相機86。可以使用基本上任何類 型的數字相機技術而不背離本公開的范圍。作為非限制的示例,可見光相機86可包括電荷 耦合設備圖像傳感器。
應該理解,此處所述的配置和/或方法在本質上是示例性的,并且這些具體實施例或示例不應被認為是局限性的,因為多個變體是可能的。此處所述的具體例程或方法可 表示任何數量的處理策略中的一個或多個。由此,所示出的各個動作可以按所示次序執行、 按其他次序執行、并行地執行、或者在某些情況下被省略。同樣,可以改變上述過程的次序。
本公開的主題包括各種過程、系統和配置、此處所公開的其他特征、功能、動作、和 /或特性、以及其任何和全部等效物的所有新穎和非顯而易見的組合和子組合。
權利要求
1.一種供與計算設備(14) 一起使用的用于估計任務代謝當量的方法,該方法包括 從捕捉設備(18)接收包括用戶(10)的隨時間捕捉的圖像序列的輸入; 從所述圖像序列中跟蹤所述用戶的多個關節(36)中的每個關節的位置; 基于所跟蹤的多個關節中的每個關節在第一幀(50)和第二幀(52)之間的位置改變來確定所述多個關節中的每個關節在所述第一幀(50)與第二幀(52)之間的距離; 基于所述多個關節中的每個關節的所述距離以及在所述第一幀和所述第二幀之間的流逝時間來計算所述多個關節中的每個關節的水平速度和垂直速度; 使用代謝等式來估計所述任務代謝當量的值,所述代謝等式包括水平分量和垂直分量,該水平和垂直分量基于所計算的所述多個關節中的每個關節的垂直和水平速度;以及輸出所述值以供顯示。
2.如權利要求1所述的方法,其特征在于,還包括根據加權方案對所述多個關節中的每個關節進行加權。
3.如權利要求1所述的方法,其特征在于,所述捕捉設備是深度相機并且其中所述圖像序列是深度圖像序列。
4.如權利要求1所述的方法,其特征在于,所述代謝等式包括氧氣消耗的值,所述氧氣消耗的值包括水平變量和垂直變量,該水平和垂直變量基于大范圍的代謝當量值。
5.如權利要求1所述的方法,其特征在于,所述水平速度包括X方向的速度和z方向的速度,并且所述垂直速度包括I方向的速度。
6.一種包括存儲器保持指令的計算設備,所述指令被處理器執行以便 使用與所述計算設備(14)相關聯的深度相機(18)捕捉用戶(10)的多個圖像; 隨時間跟蹤所述用戶的多個關節(36)中的每個關節的位置; 確定所述多個關節中的每個關節在第一幀(50)和相繼的第二幀(52)之間的位置改變;所述位置改變是從所述多個關節中的每個關節的所跟蹤位置中確定的; 基于在第一和第二幀之間的流逝時間期間的位置改變來計算所述多個關節中的每個關節的速度;以及 輸出任務代謝當量的值,所述值是從代謝等式中輸出的,所述代謝等式包括所述多個關節中的每個關節的水平速度分量和垂直速度分量。
7.如權利要求6所述的設備,其特征在于,所述計算設備是游戲設備并且所輸出的值被輸出在所述計算設備的顯示器上。
8.如權利要求6所述的設備,其特征在于,所述值是針對閾值時間段的總值,其中所述總值是在所述閾值時間段內的每幀與相繼幀之間計算的任務代謝當量之和。
9.如權利要求6所述的設備,其特征在于,該包括根據加權方案對所述多個關節中的每個關節進行加權的指令,所述加權方案包括將所述多個關節中的每個關節分配給上身片段或下身片段,其中所述下身片段比所述上身片段具有更高的加權值。
10.如權利要求9所述的設備,其特征在于,所述代謝等式是■= 其中VO2是氧氣消耗的變量,其中所述氧氣消耗是使用氧氣消耗等式計算的,所述氧氣消耗等式包括 VO2=Kh (身體速度h) +Kv (身體速度V) +3. 5。
全文摘要
本發明涉及利用計算設備計算代謝當量。在此提供了一種供與計算設備一起使用的用于估計任務代謝當量的方法。該方法包括從用戶的捕捉設備接收輸入;以及跟蹤該用戶的多個關節中的每個關節的位置。該方法還包括確定所述多個關節中的每個關節在第一幀與第二幀之間行進的距離;以及基于該行進的距離和在第一和第二幀之間的流逝時間來計算所述多個關節中的每個關節的水平速度和垂直速度。該方法還包括使用代謝等式估計任務代謝當量的值,所述代謝等式包括所述多個關節中的每個關節的水平速度的分量和垂直速度的分量;以及輸出所述值以供顯示。
文檔編號A63B71/06GK103019372SQ20121040271
公開日2013年4月3日 申請日期2012年10月19日 優先權日2011年10月21日
發明者E·巴蘇姆, R·福布斯, T·萊瓦德, T·杰肯 申請人:微軟公司