專利名稱:高效姿勢處理的制作方法
技術領域:
本發(fā)明的實施例一般涉及電子設備,尤其涉及姿勢識別系統(tǒng)。
背景技術:
基于諸如嵌入在小形狀因數設備(例如,啟用傳感器的手持設備或腕表)中的加速度計和陀螺儀之類的慣性傳感器的姿勢接口在諸如智能電話、遙控器和游戲控制臺之類的用戶設備中變得日益普遍。在移動空間中,姿勢交互是對傳統(tǒng)接口的有吸引力的替換,因為它不包含縮小諸如鍵盤和鼠標及屏幕之類的傳統(tǒng)輸入設備的形狀因數。此外,姿勢交互更支持移動性,因為用戶能夠在他們走路或駕駛時容易地完成精細姿勢?!皠討B(tài)3D姿勢”利用諸如基于微機電系統(tǒng)(MEMS)的加速度計和陀螺儀之類的慣性傳感器,基于用戶的極細微運動。諸如隱式馬爾可夫模型算法(HMM)之類的統(tǒng)計識別算法廣泛用于姿勢和語音識別以及很多其它機器學習任務。研究顯示HMM對于識別復雜姿勢和實現豐富的姿勢輸入詞匯而言極其有效。當將HMM用于移動設備中的姿勢識別時,出現若干挑戰(zhàn)。HMM在計算過程中要求很高(例如,0(num_of_samples*HMM_num_states~2) (0(樣本數目 *HMM 狀態(tài)數目 ~2)))。此夕卜,為了獲得非常精確的結果,通常將連續(xù)的高斯混合用于HMM的輸出概率,其概率密度函數評估計算代價很高。使輸入信號與若干模型匹配(通常每個訓練姿勢有一個模型)以找出最佳匹配(例如利用HMM中的維特比解碼)的計算強度也很大。移動設備的低等待時間要求造成了在資源受限設備上實時姿勢識別的問題,尤其是當使用改進精確性的技術時,例如改變姿勢“文法”或空中統(tǒng)計模型。另外,對于高級可用性,姿勢應易于使用。應避免基于推/釋放按鈕的用于姿勢測點定位的普通技術。僅基于搖動/重擊姿勢的不精確交互限制用戶體驗。最終,使用簡單且可容易識別的姿勢來觸發(fā)姿勢識別在基于復雜且持續(xù)的姿勢的用戶交互中將是麻煩的。減少這些問題的直接方法是運行用于姿勢測點定位和識別的連續(xù)HMM(CHMM)。然而,這將觸發(fā)很多假肯定,且在功耗和處理方面沒有效率。當前的姿勢接口還通?;陬A期的用戶姿勢類型選擇單一算法來識別所有的姿勢。例如,智能電話應用通常采用動態(tài)運動跟蹤,而在運動檢測游戲控制臺中可使用連續(xù)跟蹤。因此,姿勢識別設備通常被配置成僅識別并處理特定類型的姿勢。
以下描述包括對附圖的討論,這些附圖具有通過本發(fā)明的實施例的實現的示例的方式給出的例示。這些附圖應被理解成作為示例,而不是作為限制。如此處所使用的,對一個或多個“實施例”的引用應被理解成描述本發(fā)明的至少一個實現中所包括的特定特征、結構、或特性。因此,此處出現的諸如“在一個實施例中”或“在替換實施例中”之類的短語描述本發(fā)明的各種實施例和實現,并且不一定全部指代同一實施例。然而,它們也不一定是相互排他的。
圖IA是利用本發(fā)明實施例的進程的流程圖。
圖IB是示例傳感器數據流。
圖2是本發(fā)明的實施例的框圖。
圖3是描述本發(fā)明的實施例的流程圖。
圖4是可由本發(fā)明的實施例使用的時域信號特性的圖。
圖5是根據本發(fā)明的一個實施例的系統(tǒng)的高級體系結構。
以下是對某些細節(jié)和實現的描述,包括對可描繪部分或全部下述實施例的附圖的描述,以及對此處呈現的發(fā)明概念的其它潛在實施例或實現的討論。以下提供了對本發(fā)明各實施例的概覽,隨后是參考附圖的更詳細的描述。
具體實施方式
本發(fā)明的實施例描述了高效地執(zhí)行姿勢識別算法的系統(tǒng)。本發(fā)明的實施例還描述包含在任意特定情況下需要的取決于姿勢類型的很多類型的算法的系統(tǒng)。識別算法的示例包括但不限于用于復雜動態(tài)姿勢的HMM (例如,在空中寫字)、用于靜態(tài)姿勢的決策樹(DT)、 用于粗糙的搖動/重擊姿勢的峰值檢測或用于投擲/滾動檢測的慣性方法(INS)。
諸如隱式馬爾可夫模型算法(HMM)之類的統(tǒng)計識別算法廣泛用于姿勢和語音識別以及很多其它機器學習任務。這些算法往往資源強度很高(例如,計算資源、帶寬)。連續(xù)運行HMM算法在大多數姿勢識別場景中效率低下,其中所捕捉的傳感器數據的很大部分與姿勢運動無關。此外,連續(xù)運行姿勢識別算法可觸發(fā)在使用設備時的非姿勢運動的假肯定(例如,用戶在會話時的手部運動通常不是指令設備執(zhí)行命令的信號)。
減少資源識別算法的資源使用的一種方案包括縮小這些算法的實現;然而,這還導致姿勢識別精確度下降且由此不可能允許用戶將豐富的姿勢詞匯用于設備。
其它方案允許處理在姿勢訓練和識別期間用作詞匯的姿勢的靜態(tài)(B卩,預定)集合。該方案由于不允許在不同時間(例如,在不同的背景或位置或活動中)使用不同姿勢而不可能有豐富的移動體驗。
為了提供設備中的高效姿勢識別,而沒有限制可能的姿勢輸入的效應,本發(fā)明的實施例描述功率效率分階段的姿勢識別流水線,包括多模交互檢測、基于背景的優(yōu)化識別以及基于背景的優(yōu)化訓練和連續(xù)學習。
應該理解,利用計算階段的流水線(每個階段的復雜度增加)設計姿勢識別系統(tǒng)提高了系統(tǒng)的計算和功率效率。在一個實施例中,經由連續(xù)分析設備傳感器的數據流的低功率感測單元(LPSU)執(zhí)行低精確度低計算階段。LPSU可物理附連到主移動設備(例如,傳感器子系統(tǒng))或包括在外圍設備(例如,腕表)中并無線連接。當可能的類似姿勢的信號被粗糙識別時,事件可喚醒主處理器單元(MPU)執(zhí)行計算強度高的階段(例如,利用HMM進行數據流的特征提取、歸一化和統(tǒng)計分析)。
本發(fā)明的實施例通過充分利用用戶背景以及簡單/易于檢測的姿勢來確定姿勢交互可能被用戶執(zhí)行的時間段來進一步減少對姿勢識別算法的不必要調用。例如,如果電話呼叫進入利用本發(fā)明的實施例的移動設備,則可啟用特定的姿勢以“拒絕”、“回答”或“轉移”該呼叫。在另一個實施例中,如果用戶物理上接近一朋友,則將啟用姿勢以“發(fā)送”和“接收”聯系人信息。還可將簡單/易于檢測的姿勢(諸如“搖動”)用作開始被啟用的姿勢的姿勢識別的信令機制。
在一個實施例中,當姿勢交互被確認且相關的背景被檢測時,可僅基于所啟用的姿勢加載姿勢識別模型。應理解,選擇性地加載特定姿勢識別模型減少假肯定,因為它僅啟用可用姿勢的自己而不是整個輸入詞匯。此外,用于拒絕虛假姿勢的填充(filler)模型可被構建并且基于未使用的姿勢,由此增強系統(tǒng)的精確性。實時要求可能不允許填充模型在空中生成,因此所需的填充模型可根據可能的使用背景提前預編譯。當姿勢的數量有限時, 姿勢的所有可能組合可被潛在地預編譯為填充模型。如果僅組合的子集用于特定的基于背景的交互(例如,兩個特定姿勢集合用于電話呼叫和社交),則僅這些特定的組合將用于預編譯所需的填充模型。
實現本發(fā)明的實施例的姿勢識別系統(tǒng)還利用背景和活動信息(如果在系統(tǒng)中可用的話)來優(yōu)化訓練和識別。諸如HMM之類的算法一般依賴注釋的訓練樣本以便生成具有已知算法(諸如Baum-Welch)的模型。姿勢嚴重依賴于若干因素,諸如用戶姿態(tài)、運動噪聲和物理活動。這些因素中的差別很難通過僅使用數學或統(tǒng)計工具來消除。因此,為了改進姿勢識別算法的性能,本發(fā)明的實施例還可利用每個姿勢的訓練樣本的“標簽”。這些標簽不僅可標識姿勢的類型(例如,“耳觸摸”)還可標識被執(zhí)行時的活動(例如,“在火車上”或“在走路”)。由此,序列過程將產生用于每個姿勢/活動對而不是每個姿勢的分離模型。在識別階段,以與訓練模式相同的方式,背景信息將被用于選擇正確的姿勢/活動模型。
在本發(fā)明的另一個實施例中,將易于使用的連續(xù)學習模塊用于收集足夠的數據以便使系統(tǒng)的HMM模型可靠并計及隨時間的用戶的姿勢變化。連續(xù)的學習模塊可采用兩個姿勢的確認/忽略通知。例如,在剛執(zhí)行姿勢之后,用戶可通過執(zhí)行簡單的總能檢測到的姿勢 (例如,兩個手勢或重擊姿勢)指示姿勢適合于被包含(或不包含)在訓練集合。因此,新的訓練樣本數據連同所檢測的活動被用于創(chuàng)建新的姿勢/活動模型或增強現有的模型。
因此,通過采用分階段的流水線姿勢識別進程,并且充分利用用戶背景,能以高功率效率方式以高精確度執(zhí)行姿勢識別。
圖IA是利用本發(fā)明實施例的進程的流程圖。此處示出的流程圖提供各種過程動作的序列的示例。盡管以特定順序或次序示出,但是這些動作的次序可被更改,除非另行指出。因此,所示實現應被理解成僅作為示例,并且所示過程可按不同次序來執(zhí)行,且一些動作可被并行執(zhí)行。另外,在本發(fā)明的多種實施例中可省略一個或多個動作;因而,并不是每個實現都需要全部動作。其它過程流程是可能的。
從至少一個傳感器(例如3D加速度計或陀螺儀)收集數據,100。在一個實施例中, 傳感器與移動處理設備分離,并且經由本領域中已知的無線協(xié)議(例如,WiFi、藍牙)傳達數據。在另一個實施例中,傳感器被包含在移動處理設備中。在該實施例中,來自傳感器的數據指示來自用戶的運動。
還可從移動設備檢索用戶背景,105。用戶背景可標識例如移動設備正運行的應用或設備/用戶的位置。用戶設備然后可訪問將背景和活動信息輸入與姿勢關聯的數據庫, 可在任意時間點允許該姿勢并且該姿勢的算法可用于檢測這些姿勢。因此,用戶背景被用作啟用姿勢的子集(例如,當移動設備執(zhí)行電話應用時的“耳觸摸”)的過濾器。用戶活動還在識別期間實現正確模型的選擇(例如,用“走路”標記為活動的“耳觸摸”模型)。背景和活動更新的評論可相對較低,因此它對應于日常生活中用戶的背景變化。
當確定在給定用戶背景(例如,用戶正將移動設備用作電話,由此姿勢被禁用)下一個或多個姿勢可能被執(zhí)行和/或簡單/易于檢測的姿勢(例如,搖動腕表或設備上的重擊姿勢)已經由用戶執(zhí)行時,110,可啟用整個姿勢識別處理流水線,112。否則,丟棄傳感器數據,111??衫闷谕男袨榫幊逃邢逘顟B(tài)自動機。
本發(fā)明的實施例還基于數據的能級執(zhí)行傳感器數據按間隔的分割,115。這種分割可以是“無按鈕的”,因為不需要用戶輸入來將傳感器數據分割成“運動窗”??蓪⑦m當的滯后用于使能量值的高頻變化平滑。作為示例,可利用在運動窗上評估傳感器的標準偏差來測量能量。丟棄出現在“運動窗”之外的數據,111,隨后處理運動窗內執(zhí)行的數據。
隨后可處理整個數據分割。在一個實施例中,通過將當前待分析流的特性(例如, 信號持續(xù)時間、總能量、信號持續(xù)時間和能級的最小和最大值)與從“允許的姿勢”的所有訓練樣本獲得的單個模板進行比較來執(zhí)行低計算模板匹配,120。以此方式,例如,異常的長或低能姿勢將在流水線開始時被丟棄,而不在MPU上運行計算代價高的HMM算法。
在一個實施例中,“允許的姿勢”還基于訓練樣本以及每個訓練樣本的“標簽”,該標簽標識該姿勢的適當用戶背景。例如,用戶可執(zhí)行僅啟用特定“搖動”類型姿勢的應用(例如,游戲)。因此,沒有表現出類似的信號特性(即,高的最大能量值)的運動被丟棄,因為在給定的用戶背景下這些運動未被啟用。
應理解,可經由以上示例中描述的低復雜算法確定決策110、115和120,并且可由低功率處理單元執(zhí)行操作100-120。因此,本發(fā)明的實施例可啟用連續(xù)的傳感器數據處理, 同時輪停主處理器。如果當前信號匹配模板中的至少一個,則姿勢的信號被“傳遞”到主處理器單元(如果必要的話,喚醒主處理器),125。否則,丟棄該信號,111。因此,在低功率處理單元和主處理器之間平衡與姿勢識別處理相關聯的工作負載。
圖IB是示例傳感器數據流。假設用戶背景允許姿勢(如操作110所述),則交互 1000被分割成三個數據段(如操作115所述)——可能的姿勢1100、1200和1300。在該示例中,可能的姿勢1200異常地長,因此被丟棄(如操作120所述)。假設可能的姿勢1100和 1300匹配允許的姿勢模板,則它們被傳遞到MPU (如操作125所述)。
返回圖1A,如果需要可通過適當的姿勢算法(例如,HMM) 130在通過的姿勢信號上執(zhí)行歸一化和特征提取。在另一個實施例中,如果計算要求允許還可經由LPSU執(zhí)行該操作。歸一化過程可包括例如,用于傾斜校正的平均去除(對于加速度計)、幅度歸一化和再次采樣。過濾可包括例如指數移動平均低通過濾器。
本發(fā)明的實施例還將來自105的用戶背景作為輸入并產生模型姿勢數據集作為輸出,135。例如,為了實現無按鈕的交互,可提供用于每個允許的姿勢的一個模型加上用于濾除輸入詞匯中沒有的虛假姿勢的填充模型。如果背景不可用,則在當前的HMM “文法”中將允許所有的姿勢。
類似于語音識別,利用整個樣本集合或不在所識別的姿勢集合中的“無用”姿勢構建填充模型。實施例可僅利用“不允許的”姿勢(即,整個姿勢詞匯減去允許的姿勢)來創(chuàng)建針對特定情況優(yōu)化的填充模型(它被優(yōu)化,因為它不包含允許的姿勢)。例如,如果整個姿勢集合是A-Z姿勢,且一個特定交互僅允許A-D姿勢,則E-Z姿勢將被用于構建填充模型。如果系統(tǒng)具有低等待時間要求,則實時訓練填充模型可能是不可行的,因此可列舉可能的背景的集合并且預先計算并存儲相關聯的填充模型。如果不可能(例如,所有的姿勢均可能), 則可使用默認填充模型。
在本發(fā)明的一個實施例中,利用模型姿勢和填充算法從傳感器數據產生姿勢識別結果,140。還可執(zhí)行模板匹配以便進一步減少對用戶執(zhí)行的但不在允許的姿勢的當前輸入詞匯中的姿勢的假肯定,145。類似于操作120,將執(zhí)行處理以對照候選姿勢(從訓練數據獲得)的存儲模板匹配所識別的姿勢的數據流測量(例如,持續(xù)時間、能量),而不像操作120在所允許的姿勢的整個集合中。如果候選姿勢測量匹配模板,則向上層系統(tǒng)(例如,操作系統(tǒng)(OS))觸發(fā)姿勢事件,150。否則,丟棄該姿勢,155。在一個實施例中,假設在處理(即,MPU 處理)的這個部分期間的拒絕指示用戶實際上嘗試用姿勢示意對系統(tǒng)的輸入命令;因此通知用戶所述姿勢的拒絕。
本發(fā)明的實施例還能支持多個姿勢檢測算法。系統(tǒng)可需要支持多個姿勢算法,因為單個姿勢識別算法可能不會在不同類型的姿勢上充分精確。例如,姿勢可串聯成多種類型,包括動態(tài)姿勢(例如,在空中寫字母)、靜態(tài)姿態(tài)(例如,保持你的手朝上)以及搖動/重擊姿勢。對于這些姿勢類型中的每一個,存在對于該類型最好的特定識別算法。因此,需要一種用于選擇適當算法的機制。并行運行所有算法并且基于有些度量選擇“最佳輸出”顯然計算效率不高,尤其是對于類似傾向于計算強度高的HMM的算法。因此,本發(fā)明的實施例可合并選擇器系統(tǒng)以基于傳感器數據和用戶背景實時地預 先選擇適當的姿勢識別算法。選擇器系統(tǒng)可包括兩階段識別器選擇器,該兩階段識別器選擇器基于信號特性判定任意給定時間可運行哪種算法。
第一階段可基于在完整姿勢的原始數據段可用之前測量的信號特征執(zhí)行一個或多個算法的最大努力選擇。例如,它可將其選擇基于瞬時能量量級、信號中的峰值或信號的持續(xù)時間。第一階段可將這些特征與模板匹配數據進行比較,并且啟用其訓練姿勢的信號特性與輸入信號特性匹配的算法。
當被啟用時,每個算法標識原始數據流中的候選姿勢。一般而言,姿勢的數據流比算法被啟用的整個時段要短;此外,算法可在整個時間窗中標識多個姿勢(即,多個“搖動” 姿勢或一系列姿態(tài))。每個啟用的算法可通過確定姿勢的端點(例如,HMM)或在信號中找出特定模式(例如,峰值檢測)來執(zhí)行原始數據流的內部分割。因此,可僅在姿勢已經被暫時識別并且其相關聯的數據流可用之后分析一些信號特性(諸如,其頻譜特征或總能量內容)。
在隨后的處理中,第二階段可分析與每個候選姿勢相關聯的數據流,將所計算的特征(例如頻譜內容、能量內容)與模板頻譜數據進行比較并在算法中選擇最佳匹配,提供所識別的姿勢作為輸出。
圖2是本發(fā)明的實施例的框圖。向相對于姿勢識別器220-250處于上游的前RS (RSPre>210實時饋送傳感器290的原始數據流。前RS基于從傳感器290的原始信號獲得的度量和基于用戶背景允許的算法啟用姿勢識別器220-250中的一個或多個。在一個實施例中,用戶背景過濾器(UCF)200經由數據庫205檢索映射到背景的算法??蓮哪0迤ヅ鋽祿?15獲得用于任意算法的信號模板,并且可執(zhí)行模板匹配程序;因此將僅啟用姿勢識別器220-250中匹配輸入的信號特性的子集。在一個實施例中,模板匹配操作將產生用于每個算法的相似性度量,且如果相似性滿足預定的相似性閾值則第一 N個最佳算法將被選擇并激活。
用戶背景過濾器(UCF) 200跟蹤當前用戶背景,諸如位置、社會背景和物理活動、 系統(tǒng)和應用事件(例如,電話呼叫進入XUCF200跟蹤給定背景下允許的姿勢,并利用識別所允許的姿勢識別器所需的算法實時更新前RS210。UCF200利用姿勢-算法映射數據庫205, 該數據庫205包含從每個姿勢ID至所使用的算法的獨特映射。例如,姿勢“O”至“9”(在空中揮手)可在數據庫205中靜態(tài)映射到HMM (由識別器220)使用,而諸如“手掌向下/向上”可被映射到決策樹(由識別器230使用)。UCF200由外部應用饋送,該外部應用通知對于實際的用戶背景哪些姿勢當前有意義。例如,如果電話應用是活躍的,則“O”至“9”姿勢將被激活,且UCF200將僅激活HMM。UCF200的輸出(允許的算法)由前RS210使用。當用戶做出“背景外”的姿勢并被傳感器290檢測到時,該過濾器減少假肯定。
前RS210提供適當的滯后機制以便利用有限狀態(tài)自動機將來自傳感器290的數據流分割成有意義的分段,其轉變基于來自傳感器290的數據和數據庫215的模板之間的閾值的相似性。
后RS (RSPost>260在姿勢識別器220-250的下游,并且由所識別的姿勢事件實時饋送外加來自傳感器290的原始數據流。在以相同的時間間隔將一個以上的姿勢識別為候選的情況下,后RS260將執(zhí)行模板匹配(訪問數據庫265中的模塊)并將輸出最可能識別的姿勢。后RS260提供適當的試探機制,以便在模板匹配輸出一個以上的姿勢ID時選擇單個姿勢。例如,可從用于每個匹配算法的模板匹配算法生成相似性度量并且最佳匹配將被選擇。
數據庫265包括姿勢識別器220-250的每一個的信號“模板”(例如,能級的最小-最大值或信號快速傅立葉變換(FFT)特性)。例如,對于由HMM識別的動態(tài)運動,平均姿勢_能量可以是
能量_閾值_最小值〈姿勢_能量〈能量_閾值_最大值
并且其FFT可具有頻率 20Hz的分量。如果能量是
姿勢_能量 > 能量_閾值_最大值
則可檢測到搖動,并且其FFT具有高頻的顯著分量??蓮挠柧氉藙葑詣荧@得信號模板。
圖3是描述本發(fā)明的實施例的流程圖。在該示例中,在系統(tǒng)中存在四種算法 (HMM310、決策樹320、峰值檢測330和投擲/滾動慣性340)。分析用戶背景以確定適當的算法用于考慮傳感器數據,350。在該示例中,用戶背景從用于處理來自系統(tǒng)傳感器的任何傳入信號的適當算法中排除投擲/滾動慣性340。
分析傳入信號(經由前RS)以啟用系統(tǒng)中存在的剩余算法,360。在該示例中,前RS 啟用HMM310和峰值檢測320來運行。這兩個算法并行運行并且結果經由后RS分析以確定要使用的適當算法(如果經由前RS啟動一個以上的算法)和來自輸入信號的姿勢,370。在該示例中,后RS選擇HMM310連同通過HMM識別的姿勢。由前RS和后RS使用的模板匹配算法可利用例如傳感器數據的持續(xù)時間、能量量級和頻譜特性。在一個實施例中,前RS利用傳入信號的持續(xù)時間或能量量級特性分析輸入信號,而后RS利用傳入信號的頻譜特性分析傳入信號。
圖4是時域信號特性的圖,可用于前RS和后RS中使用的模板匹配算法,諸如運動能量(此處由信號的標準偏差表示)或量級的運行平均值,以判定例如姿態(tài)(分段410、430和450)、動態(tài)姿勢(分段420)或搖動(分段440)是否被執(zhí)行,由此以固定、動態(tài)或高能間隔分割數據流。以固定間隔,例如,決策樹算法將被啟用作為靜態(tài)“姿態(tài)”410、430和450的選擇算法。對于運動的幅度高于一定閾值但低于“高能”的時間間隔(例如,分段420),統(tǒng)計HMM 算法將被啟用作為動態(tài)姿勢的現有狀態(tài)算法。對于運動幅度為“高能”的時間間隔(例如, 分段440),將啟用峰值檢測算法。
由前RS和后RS使用的模板匹配算法可例如依賴于在信號的滑動窗上計算的特征的最小值-最大值比較,諸如平均、標準偏差和匹配分量能量。
模板匹配算法可被單獨應用于每個信號或從該信號導出的組合度量。例如,“運動量級”度量可從3D加速度計導出。
可利用訓練數據生成模板。例如,如果加速度計用于識別姿勢,基于HMM的姿勢的所有訓練數據可提供對于X、Y、Z軸的HMM算法的最小-最大值和頻譜成分以及整體量級。
還可將背景用于通過指示允許或不允許的姿勢來限制可能的姿勢和算法的子集的選擇。例如,應用可限定通過兩種不同的算法來識別的不同姿勢來拒絕或接受呼叫姿態(tài) “手掌向上”用于拒絕輸入呼叫而朝向用戶耳朵的運動用于接受呼叫。在該 特定情況下,UCF 將僅啟用決策樹和HMM作為用于識別允許的姿勢所需的僅有的兩種算法。因此,前RS和后 RS將僅對該算法子集計算模板匹配。
圖5是根據本發(fā)明的一個實施例的系統(tǒng)的高級體系結構。系統(tǒng)500是可縮放的一般系統(tǒng),且能夠從動態(tài)“高能”姿勢至靜止姿態(tài)進行區(qū)分。取決于信號特性和用戶背景,如上所述的姿勢處理實時執(zhí)行。系統(tǒng)500包括傳感器550、通信單元530、存儲器520和處理單元510,其中的每個經由系統(tǒng)總線540操作地耦合。應理解系統(tǒng)500的每個組件可被包括在單個或多個設備中。
在一個實施例中,系統(tǒng)500利用姿勢處理模塊525,其包括上述功能。姿勢處理模塊525被包含在存儲器520的存儲區(qū)域中,且經由處理單元510來執(zhí)行。在一個實施例中, 處理單元510包括低處理子單元和主處理子單元,每個用于執(zhí)行如上所述的特定姿勢處理模塊。
傳感器550可按有線和/或無線方式經由通信單元530向姿勢處理模塊525傳達數據。有線通信裝置的示例可包括但不限于導線、電纜、總線、印刷電路板(PCB)、以太網連接、底板、交換結構、半導體材料、雙絞線、同軸電纜、光纖連接等。無線通信裝置的例子可包括但不限于無線電信道、衛(wèi)星信道、電視信道、廣播信道、紅外信道、射頻(RF)信道、無線保真(WiFi)信道、RF頻譜的一部分和/或一個或多個許可或免許可頻帶。傳感器550可包括提供三維讀數(沿X、y和z軸)用于測量線性加速和傳感器方向的任何設備(例如,加速度計)。
此處所述的以上被稱為過程、服務器或工具的各種組件可以是執(zhí)行所述功能的裝置。此處所述的每個組件包括軟件和硬件,或者軟件和硬件的組合。組件可被實現為軟件模塊、硬件模塊、特定功能硬件(諸如,應用特定硬件、ASIC、DSP,等等)、嵌入式控制器、硬線電路等等。軟件內容(諸如,數據、指令、配置)可經由包括計算機存儲介質的制品來提供, 其提供的內容表示可被執(zhí)行的指令。內容可導致計算機執(zhí)行此處所述的各種功能/操作。 計算機可讀存儲介質包括提供可由計算機(例如,計算設備、電子系統(tǒng)等)訪問的信息的任何機制,諸如可記錄/不可記錄介質(例如,只讀存儲器(ROM)、隨機存取存儲器(RAM)、磁盤存儲介質、光學存儲介質、閃存設備等)。內容可以是可直接執(zhí)行的(“對象”或“可執(zhí)行”形式)、源代碼、或差異代碼(“ Δ ”或“補丁”代碼)。計算機可讀存儲介質還可包括可從其下載內容的存儲器或數據庫形式。計算機可讀介質還可包括在銷售或傳輸時其上存儲有內容的設備或產品。因此,傳輸具有存儲內容的設備或提供內容用于通過通信介質下載可被理解成提供具有此處所述的此類內容的制品。
權利要求
1.一種制品,包括提供指令的機器可讀存儲介質,所述指令如果被機器執(zhí)行則將使所述機器執(zhí)行操作,所述操作包括 從傳感器接收指示運動的數據,所述傳感器具有加速度計; 基于數據的持續(xù)時間和數據的能級中的至少一個,經由一個或多個算法的第一集合確定所述運動是否是姿勢運動;以及 響應于確定所述運動是姿勢運動基于所述數據,經由一個或多個算法的第二集合確定候選姿勢,算法的第二集合包括姿勢識別算法。
2.如權利要求I所述的制品,其特征在于,所述操作還包括 響應于確定所述運動不是姿勢運動而丟棄所述數據。
3.如權利要求I所述的制品,其特征在于,算法的第一集合包括一個或多個低復雜度算法,且所述機器包括低功率處理器和主處理器單元,算法的第一集合經由低功率處理器執(zhí)行且算法的第二集合經由主處理單元執(zhí)行。
4.如權利要求I所述的制品,其特征在于,所述姿勢識別算法基于隱式馬爾可夫模型(HMM)0
5.如權利要求4所述的制品,其特征在于,確定候選姿勢包括 利用系統(tǒng)用戶的背景來選擇一個或多個允許的姿勢的子集;以及 將HMM算法加載的姿勢模型限于允許的姿勢的子集。
6.如權利要求4所述的制品,其特征在于,確定候選姿勢包括 利用系統(tǒng)用戶的背景來拒絕一個或多個不允許的姿勢的子集;以及 選擇丟棄不允許的姿勢的子集的HMM填充模型。
7.如權利要求4所述的制品,其特征在于,HMM訓練集合和一個或多個姿勢模型基于機器的用戶的物理活動。
8.如權利要求4所述的制品,其特征在于,姿勢拒絕算法通過將姿勢運動的持續(xù)時間和能量與從訓練數據的數據庫獲得的持續(xù)時間和能量的最小和最大值中的一個或多個進行比較來確認通過HMM算法識別的姿勢。
9.如權利要求I所述的制品,其特征在于,所述傳感器包含在機器中,所述機器包括移動設備,并且經由第一算法確定運動是否是姿勢運動還基于移動設備的用戶背景以及來自用戶的指示姿勢命令的時段的明確動作中的至少一個。
10.如權利要求I所述的制品,其特征在于,基于所述數據確定候選姿勢包括 訪問一個或多個示例姿勢輸入的數據庫,所述示例姿勢數據包括最小和最大持續(xù)時間;以及 驗證姿勢運動的持續(xù)時間在示例姿勢輸入的最小和最大持續(xù)時間內。
11.如權利要求I所述的制品,其特征在于,來自傳感器的數據包含在一系列的數據段內,一個或多個段指示由能量閾值限定的運動,并且從傳感器接收數據是響應于超過能量閾值的數據。
12.—種制品,包括提供指令的機器可讀存儲介質,所述指令如果被機器執(zhí)行則將使所述機器執(zhí)行操作,所述操作包括 從傳感器接收指示運動的數據,所述傳感器具有加速度計; 至少部分地基于所述數據的一個或多個信號特性確定來自多個姿勢識別算法的一個或多個姿勢識別算法的子集;以及 至少部分地基于將姿勢識別算法的子集施加到所述數據,根據來自傳感器的數據確定姿勢。
13.如權利要求12所述的制品,其特征在于,所述數據的信號特性包括所述數據的能量量級。
14.如權利要求13所述的制品,其特征在于,確定姿勢識別算法的子集至少部分地基于將數據的能量量級與關聯于多個姿勢算法之一的一個或多個量級值進行比較。
15.如權利要求12所述的制品,其特征在于,所述數據的信號特性包括所述數據的持續(xù)時間。
16.如權利要求15所述的制品,其特征在于,確定姿勢識別算法的子集至少部分地基于將數據的持續(xù)時間與關聯于多個姿勢算法之一的一個或多個量級值進行比較。
17.如權利要求12所述的制品,其特征在于,所述數據的信號特性包括所述數據的頻P曰。
18.如權利要求17所述的制品,其特征在于,確定姿勢識別算法的子集至少部分地基于將數據的頻譜與所存儲的關聯于多個姿勢算法之一的一個或多個頻譜圖案進行比較。
19.一種方法,包括 從傳感器接收指示運動的數據,所述傳感器具有加速度計; 基于數據的持續(xù)時間和數據的能級中的至少一個,經由一個或多個算法的第一集合確定所述運動是否是姿勢運動;以及 響應于確定所述運動是姿勢運動基于所述數據,經由一個或多個算法的第二集合確定候選姿勢,算法的第二集合包括姿勢識別算法。
20.如權利要求19所述的方法,其特征在于,算法的第一集合包括經由低功率處理器執(zhí)行的一個或多個低復雜度算法,而算法的第二集合經由主處理單元執(zhí)行。
21.權利要求19所述的方法,其特征在于,算法的第二集合包括隱式馬爾可夫模型(HMM)姿勢決絕算法,并且確定候選姿勢包括 利用系統(tǒng)用戶的背景來選擇一個或多個允許的姿勢的子集;以及 將HMM算法使用的姿勢限于允許的姿勢的子集。
22.—種方法,包括 從傳感器接收指示運動的數據,所述傳感器具有加速度計; 至少部分地基于所述數據的一個或多個信號特性確定來自多個姿勢識別算法的一個或多個姿勢識別算法的子集;以及 至少部分地基于將姿勢識別算法的子集施加到所述數據,根據來自傳感器的數據確定姿勢。
23.權利要求22所述的方法,其特征在于,所述數據的一個或多個信號特性包括以下特性中的至少一個 數據的能量量級、 數據的持續(xù)時間以及 數據的頻譜。
24.權利要求23所述的方法,其特征在于,至少部分地基于以下步驟中的至少一個確定姿勢識別算法的子集 如果所述數據的信號特性包括所述數據的能量量級,將所述數據的能量量級與關聯于多個姿勢算法之一的一個或多個量級值進行比較, 如果所述數據的信號特性包括所述數據的持續(xù)時間,將所述數據的持續(xù)時間與關聯于多個姿勢算法之一的時間值進行比較,以及 如果所述數據的信號特性包括所述數據的頻譜,將所述數據的頻譜與關聯于多個姿勢算法之一的頻譜圖案進行比較。
全文摘要
本發(fā)明的實施例描述了高效地執(zhí)行姿勢識別算法的系統(tǒng)。本發(fā)明的實施例描述功率效率分階段的姿勢識別流水線,包括多模交互較側、基于背景的優(yōu)化識別和基于背景的優(yōu)化訓練和連續(xù)學習。本發(fā)明的實施例還描述包含在任意特定情況下需要的取決于姿勢類型的很多類型的算法的系統(tǒng)。識別算法的示例包括但不限于用于復雜動態(tài)姿勢的HMM(例如,在空中寫字)、用于靜態(tài)姿勢的決策樹(DT)、用于粗糙的搖動/重擊姿勢的峰值檢測或用于投擲/滾動檢測的慣性方法(INS)。
文檔編號G06F3/03GK102985897SQ201180034400
公開日2013年3月20日 申請日期2011年7月8日 優(yōu)先權日2010年7月13日
發(fā)明者G·拉法, L·納赫曼, J·李 申請人:英特爾公司