TW202101172A - 用於人工實境系統的手臂視線驅動的使用者介面元件閘控 - Google Patents

用於人工實境系統的手臂視線驅動的使用者介面元件閘控 Download PDF

Info

Publication number
TW202101172A
TW202101172A TW109118810A TW109118810A TW202101172A TW 202101172 A TW202101172 A TW 202101172A TW 109118810 A TW109118810 A TW 109118810A TW 109118810 A TW109118810 A TW 109118810A TW 202101172 A TW202101172 A TW 202101172A
Authority
TW
Taiwan
Prior art keywords
gesture
artificial reality
wrist
hand
hmd
Prior art date
Application number
TW109118810A
Other languages
English (en)
Inventor
強納森 拉瓦斯
賈斯柏 史帝芬斯
亞當 瓦爾加
艾蒂安 蘋尚
西蒙 提克納
珍妮弗 沙史柏拉克
圖密 凱爾 沙爾居
羅伯特 艾利斯
巴列特 福克斯
Original Assignee
美商菲絲博克科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商菲絲博克科技有限公司 filed Critical 美商菲絲博克科技有限公司
Publication of TW202101172A publication Critical patent/TW202101172A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Optics & Photonics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本發明描述一種人工實境系統,其顯現、呈現及控制一人工實境環境內之使用者介面元件,並回應於使用者之一個或多個經偵測的手勢而執行動作。該人工實境系統包括一影像捕捉裝置、一頭戴式顯示器(HMD)、一使用者介面(UI)引擎及一顯現引擎。該影像捕捉裝置被配置以捕捉表示一實體環境之影像資料。該HMD輸出人工實境內容。手勢偵測器被配置以自該影像資料識別包括一腕部之一組態之一手勢,該腕部實質上靜止達至少一臨限時間段並經定位使得來自該腕部之一法線面向該HMD。該UI引擎被配置以回應於經識別的手勢而產生一UI元件。該顯現引擎顯現覆疊於該腕部之一影像上之該UI元件。

Description

用於人工實境系統的手臂視線驅動的使用者介面元件閘控
本揭示內容大體上係關於人工實境系統,諸如虛擬實境、混合實境、擴增實境及/或其他電腦中介的實境系統,且更特定言之,係關於人工實境系統之使用者介面。
人工實境系統在諸如電腦遊戲、健康與安全、工業及教育之許多領域中的應用正變得愈來愈普遍。作為幾項實例,人工實境系統正併入至行動裝置、遊戲控制台、個人電腦、電影院及主題公園中。一般而言,人工實境為在呈現給使用者之前已以某一方式調整的實境形式,其可包括例如虛擬實境(virtual reality;VR)、擴增實境(augmented reality;AR)、混合實境(mixed reality;MR)、混雜實境,或其某一組合及/或衍生物。
典型的人工實境系統包括用於向使用者顯現及顯示內容之一個或多個裝置。作為一項實例,人工實境系統可併有由使用者穿戴並被配置以將人工實境內容輸出至使用者之頭戴式顯示器(head-mounted display;HMD)。人工實境內容可包括完全產生之內容或與經捕捉內容(例如真實世界視訊及/或影像)組合之經產生內容。在操作期間,使用者典型地與人工實境系統互動以選擇內容,啟動應用程式或以其他方式組態該系統。
一般而言,本揭示內容描述人工實境系統,且更特定言之,描述用於在人工實境環境內呈現及控制使用者介面(user interface;UI)元件之系統組態及技術。本揭示內容之技術及系統組態之一些實例係關於回應於偵測到或回應於識別出由使用者執行之特定手勢而調用UI元件。UI元件之調用在整個本揭示內容中亦被稱作「觸發」UI元件或「閘控」UI元件。此類UI元件之實例包括但不限於使用者可選擇選項之選單。本揭示內容之態樣亦係關於回應於偵測到某些手勢而修改當前顯現之UI元件,諸如藉由回應於此等手勢而改變UI元件之定向或資料粒度級。
舉例而言,描述了人工實境系統,其回應於偵測到由使用者執行之一個或多個預定義手勢而產生及顯現圖形UI元件以供顯示給使用者,如可由人工實境系統存取之手勢庫中所定義。此類手勢之實例包括使用者之手、手指、拇指或手臂之特定運動、移動、靜態組態、移動組態、方位、相對方位及/或定向,或預定義手勢之組合。在一些實例中,人工實境系統可進一步回應於偵測到特定手勢與其他條件之組合而觸發圖形使用者介面元件之產生及顯現,該等其他條件係諸如實體環境中之特定手勢相對於使用者之當前視場(其可藉由使用者之即時視線追蹤而判定)或相對於由使用者穿戴之HMD之姿勢的方位及定向。
在一些實例中,人工實境系統可相對於當前在人工實境系統之顯示器內顯現之人工實境內容產生圖形UI(graphical UI;GUI)元件並將該等GUI元件呈現為覆疊元件。舉例而言,UI元件可包括互動式GUI元件,為互動式GUI元件,或為互動式GUI元件之部分,諸如選單或子選單,使用者與其互動以操作人工實境系統。在一些情況下,UI元件可包括個別GUI元件,諸如可由使用者選擇及/或操縱之元件。在各項實例中,此類個別GUI元件包括雙態觸變(或可雙態觸變)元件、下拉式元件、選單選擇元件(例如基於核取方塊之選單)、二維或三維形狀、圖形輸入鍵或鍵盤、內容顯示窗口及其類似者中之一者或多者。
根據本發明之第一態樣,提供一種人工實境系統,其包括影像捕捉裝置、頭戴式顯示器(HMD)、使用者介面(UI)引擎及顯現引擎。影像捕捉裝置被配置以捕捉表示實體環境之影像資料。HMD被配置以輸出人工實境內容。手勢偵測器被配置以自影像資料識別包括腕部之組態之手勢,腕部實質上靜止達至少一臨限時間段並經定位使得來自腕部之法線面向HMD。UI引擎被配置以回應於經識別的手勢而產生UI元件。顯現引擎被配置以顯現覆疊於腕部之影像上之UI元件。
在一些實施例中,覆疊於腕部之影像上之UI包含選單,且手勢偵測器被配置以在覆疊於腕部之影像上之UI元件之一部分處偵測觸碰手勢。
在一些實施例中,UI引擎進一步被配置以回應於手勢偵測器偵測到觸碰手勢而產生經更新的UI元件,且顯現引擎進一步被配置以顯現覆疊於腕部之影像上之經更新的UI元件。
在一些實施例中,為了偵測包含實質上靜止達至少臨限時間段並經定位使得來自腕部之法線面向HMD的腕部之手勢,手勢偵測器被配置以判定手勢由手勢庫中之項目來表示。
在一些實施例中,項目包括於手勢庫之一個或多個項目中,一個或多個項目中之每一者對應於預定義手勢。
在一些實施例中,影像捕捉裝置整合於HMD內。
本發明之另一態樣提供一種方法,其包括由頭戴式顯示器(HMD)輸出人工實境內容,及由影像捕捉裝置捕捉表示實體環境之影像資料。該方法進一步包括由手勢偵測器自影像資料識別包括腕部之組態之手勢,腕部實質上靜止達至少一臨限時間段並經定位使得來自腕部之法線面向HMD。該方法進一步包括由使用者介面(UI)引擎回應於經識別的手勢而產生UI元件,及由顯現引擎顯現覆疊於腕部之影像上之UI元件。
在一些實施例中,覆疊於腕部之影像上之UI包含選單,該方法進一步包含由手勢偵測器在覆疊於腕部之影像上之UI元件之一部分處偵測觸碰手勢。
在一些實施例中,該方法進一步包含:由UI引擎回應於手勢偵測器偵測到觸碰手勢而產生經更新的UI元件;及由顯現引擎顯現覆疊於腕部之影像上之經更新的UI元件。
在一些實施例中,偵測手勢包含由手勢偵測器判定手勢由手勢庫中之項目來表示。
在一些實施例中,項目包括於手勢庫之一個或多個項目中,一個或多個項目中之每一者對應於預定義手勢。
本發明之另一態樣提供一種非暫時性電腦可讀取儲存媒體,其被編碼有在執行時使人工實境系統之處理電路系統進行以下操作的指令:經由頭戴式顯示器(HMD)輸出人工實境內容;自影像捕捉裝置接收表示實體環境之影像資料;自影像資料識別包括腕部之組態之手勢,腕部實質上靜止達至少一臨限時間段並經定位使得來自腕部之法線面向HMD;回應於經識別的手勢而產生UI元件;及顯現覆疊於腕部之影像上之UI元件。
在一些實施例中,覆疊於腕部之影像上之UI包含選單,其中非暫時性電腦可讀取儲存媒體被進一步編碼有在執行時使人工實境系統之處理電路系統在覆疊於腕部之影像上之UI元件之一部分處偵測觸碰手勢的指令。
在一些實施例中,非暫時性電腦可讀取儲存媒體被進一步編碼有在執行時使人工實境系統之處理電路系統進行以下操作的指令:回應於手勢偵測器偵測到觸碰手勢而產生經更新的UI元件;及顯現覆疊於腕部之影像上之經更新的UI元件。
在一些實施例中,使處理電路系統偵測手勢的指令包含在執行時使人工實境系統之處理電路系統判定手勢由手勢庫中之項目來表示的指令。
在一些實施例中,項目包括於手勢庫之一個或多個項目中,一個或多個項目中之每一者對應於預定義手勢。
在另一實例中,一種系統包括用於經由頭戴式顯示器(HMD)輸出人工實境內容的構件,及用於捕捉表示實體環境之影像資料的構件。該系統進一步包括用於識別包括腕部之組態之手勢的構件,腕部實質上靜止達至少一臨限時間段並經定位使得來自腕部之法線面向HMD。該系統進一步包括用於回應於經識別的手勢而產生使用者介面(UI)元件的構件,及用於顯現覆疊於腕部之影像上之UI元件的構件。
以此方式,本揭示內容之系統組態及技術使人工實境系統之使用者能夠藉由執行特定手勢在由人工實境內容表示之虛擬環境中調用或閘控特定UI元件。在各項實例中,人工實境系統可使經偵測的影像資料與儲存至可由人工實境系統存取之手勢庫之預定義手勢匹配。在各項實施方案中,本揭示內容之人工實境系統可運用預定義手勢填入手勢庫之項目,預定義手勢可在尚未按下實體或虛擬按鈕的情況下執行且在一些狀況下可使用單手執行。本揭示內容之人工實境系統在常規人工實境操作之過程期間充分利用獨特手勢以在人工實境環境內使用UI元件閘控之此等特定手勢。
下文在隨附圖式及實施方式中闡述了本揭示內容之技術之一項或多項實例的細節。該等技術之其他特徵、目標及優勢將自實施方式及圖式以及申請專利範圍顯而易見。
圖1A為描繪根據本揭示內容之技術之實例人工實境系統10的繪示,該人工實境系統在人工實境環境內呈現及控制使用者介面元件。在一些實例實施方案中,人工實境系統10回應於由使用者110執行並由人工實境系統10及/或其組件偵測之一個或多個手勢而產生並向使用者110顯現圖形使用者介面元件。亦即,如本文中所描述,人工實境系統10回應於偵測到由使用者110執行之一個或多個特定手勢而呈現一個或多個圖形使用者介面元件124、126,該一個或多個特定手勢係諸如使用者之手、手指、拇指、手臂等等之特定運動、組態、位置及/或定向。
在一些實例中,人工實境系統10可基於滿足額外條件而偵測預定義手勢,該等額外條件係諸如實體環境中之手臂134(例如腕部)及/或手132(或其手指)之各部分相對於使用者110之當前視場130(如可藉由使用者之即時視線追蹤而判定)的方位及定向,或其他條件。在其他實例中,人工實境系統10呈現及控制針對人工實境環境內之使用者互動及操縱而特定地設計之使用者介面元件,諸如選單選擇元件(例如包括一個或多個使用者可選擇選項之選單)、專門雙態觸變元件、下拉式元件、圖形輸入鍵或鍵盤、內容顯示窗口及其類似者。
在圖1A之實例中,人工實境系統10包括頭戴式裝置(HMD)112、控制台106及在一些實例中為一個或多個外部感測器90。如所展示,HMD 112典型地由使用者110穿戴並包括用於向使用者110呈現人工實境內容122之電子顯示器及光學總成。另外,HMD 112包括用於追蹤HMD 112之運動之一個或多個感測器(例如加速計)。HMD 112可包括一個或多個影像捕捉裝置138,例如攝影機、線掃描器及其類似者。影像捕捉裝置138可被配置以用於捕捉周圍實體環境之影像資料。在此實例中,控制台106被展示為單一計算裝置,諸如遊戲控制台、工作站、桌上型電腦或膝上型電腦。
在其他實例中,控制台106可跨越諸如分散式計算網路、資料中心或雲端計算系統之複數個計算裝置而分佈。如此實例中所展示,控制台106、HMD 112及感測器90可經由網路104以通信方式耦接,該網路可為有線或無線網路,諸如基於WiFi®或5G®之網路、乙太網路、網狀網路或短程無線(例如Bluetooth®)通信媒體。儘管HMD 112在此實例中被展示為與控制台106通信,例如繫鏈至該控制台或與該控制台進行無線通信,但在一些實施方案中,HMD 112用作獨立行動人工實境系統。
一般而言,人工實境系統10使用自真實世界三維(3D)實體環境捕捉之資訊以顯現人工實境內容122以供顯示給使用者110。在圖1A之實例中,使用者110檢視由在控制台106及/或HMD 112上執行之人工實境應用程式建構及顯現之人工實境內容122。作為一項實例,人工實境內容122可為消費型遊戲應用程式,其中使用者110被顯現為具有一個或多個虛擬物件128A、128B之化身120。在一些實例中,人工實境內容122可包含真實世界影像與虛擬物件之混合物,例如混合實境及/或擴增實境。在其他實例中,人工實境內容122可為例如視訊會議應用程式、導航應用程式、教學應用程式、訓練或模擬應用程式,或實施人工實境之其他類型之應用程式。
在操作期間,人工實境應用程式藉由追蹤及計算參考座標(典型地為HMD 112之檢視視角)之姿勢資訊來建構人工實境內容122以供顯示給使用者110。使用HMD 112作為參考座標且基於如由HMD 112之當前估計姿勢所判定之當前視場130,人工實境應用程式顯現3D人工實境內容,其在一些實例中可至少部分地覆疊於使用者110之真實世界3D實體環境上。在此程序期間,人工實境應用程式使用自HMD 112接收之經感測資料,諸如移動資訊及使用者命令,並在一些實例中使用來自諸如外部攝影機102A及/或102B之任何外部感測器90之資料,以捕捉真實世界實體環境內之3D資訊,諸如使用者110之運動及/或關於使用者110之特徵追蹤資訊。基於經感測資料,人工實境應用程式判定HMD 112之參考座標之當前姿勢,並根據當前姿勢顯現人工實境內容122。
此外,根據本揭示內容之技術,基於經感測資料,人工實境應用程式偵測由使用者110執行之手勢,並回應於偵測到一個或多個特定手勢而產生一個或多個使用者介面元件,例如UI選單124及UI元件126,其可覆疊於呈現給使用者110之基礎人工實境內容122上。就此而言,使用者介面元件124、126可被視為人工實境環境中呈現給使用者110之人工實境內容122之部分。以此方式,人工實境系統10回應於偵測到使用者110之一個或多個特定手勢而動態地呈現一個或多個圖形使用者介面元件124、126,該一個或多個特定手勢係諸如使用者之手、手指、拇指或手臂之特定運動、組態、方位及/或定向。使用者之手之實例組態可包括拳頭、一個或多個手指伸展之部分拳頭、所有手指伸展之張開的手、兩個或多於兩個手指環繞虛擬物件之握持組態、手132之個別手指中之一者或多者之相對及/或絕對方位及定向、手之手掌之形狀(例如實質上平坦、杯形等等),等等。
舉例而言,使用者介面元件可包括圖形使用者介面,為圖形使用者介面,或為圖形使用者介面之部分,諸如選單或子選單,使用者110與其互動以操作人工實境系統;或可由使用者110選擇及操縱之個別使用者介面元件,諸如雙態觸變元件、下拉式元件、選單選擇元件、二維或三維形狀、圖形輸入鍵或鍵盤、內容顯示窗口及其類似者。雖然被描繪為例如二維元件,但UI元件126可為二維或三維形狀,其可由使用者110藉由執行手勢來操縱以在由人工實境內容122表示之虛擬環境內對形狀進行轉變、縮放及/或旋轉。
此外,如本文中所描述,在一些實例中,人工實境系統10可回應於其他條件而觸發圖形使用者介面元件124、126之產生及顯現,該等其他條件係諸如由系統執行之一個或多個應用程式之當前狀態,或實體環境中之特定經偵測的手勢相對於使用者110之當前視場130(如可藉由使用者之即時視線追蹤而判定)的方位及定向,或其他條件。更特定言之,如本文中進一步所描述,HMD 112之影像捕捉裝置138捕捉表示真實世界實體環境中在影像捕捉裝置138之視場130內之物件的影像資料。視場130典型地與HMD 112之檢視視角對應。
在諸如圖1A之所繪示實例之一些實例中,人工實境應用程式將使用者110之手132在視場130內之部分顯現為人工實境內容122內之虛擬手136。在其他實例中,人工實境應用程式可在人工實境內容122內呈現使用者110之手132及/或手臂134之真實世界影像,該人工實境內容包含混合實境、擴增實境,及/或直接再現實體環境之資訊與電腦中介的內容之任何其他組合。在任一實例中,使用者110能夠將他/她的手132及/或手臂134在視場130內之部分視為在由人工實境內容122表示之虛擬環境內之物件。在其他實例中,人工實境應用程式可在人工實境內容122內完全不顯現使用者110之手132或手臂134。
在操作期間,人工實境系統10在由HMD 112之影像捕捉裝置138(及/或由外部攝影機102)捕捉之影像資料內執行物件辨識,以識別使用者110之手132(視情況包括識別個別手指或拇指)及/或手臂134之全部或部分。另外,人工實境系統10經由時間滑動窗口追蹤手132(視情況包括手之特定手指)及/或手臂134之各部分之方位、定向及組態。人工實境應用程式分析手132及/或手臂134之各部分之任何追蹤運動、組態、方位及/或定向,以識別由特定物件,例如使用者110之手132(包括但不限於手132之一個或多個特定手指)及/或手臂134之各部分(或其特定部分,諸如腕部)執行的一個或多個手勢。
為了偵測手勢,人工實境應用程式可比較手132及/或手臂134之各部分之運動、組態、方位及/或定向與儲存於人工實境系統10之手勢庫中之手勢定義,其中手勢庫中之每一手勢可各自映射至一個或多個動作。在一些實例中,偵測移動可包括追蹤手132之手指中之一者或多者(個別手指及拇指)之方位,包括手指(諸如食指及拇指)之所定義組合中之任一者係共同在實體環境中觸碰或大致上觸碰,抑或格擋或環繞被呈現為人工實境內容122之部分之使用者介面元件(例如助理元件或顯示元件)。在其他實例中,偵測移動可包括追蹤相對於HMD 112之當前姿勢的手132之定向(例如手指指向HMD 112或遠離HMD 112)及/或手臂134之定向(亦即,手臂之法線面朝向HMD 112)。手132或其手臂134之各別部分或整體之方位及定向可替代地被稱作手132或手臂134之姿勢,或手132或手臂134之組態。
此外,人工實境應用程式可分析手132及/或手臂134之組態、運動、方位及/或定向以識別手勢,其包括手132及/或手臂134保持於一個或多個特定組態、移動、方位及/或定向達至少臨限時間段。作為實例,手132及/或手臂134在視場130內保持實質上靜止達至少可組態時間段的一個或多個特定方位可由人工實境系統10用作以下指示:使用者110正嘗試執行意欲觸發人工實境應用程式之所要回應之手勢,諸如觸發特定類型之使用者介面元件124、126,諸如選單之顯示器。
作為另一實例,維持於視場130內達至少可組態時間段之手132之手指(手指或拇指)及/或手掌及/或手臂134之一個或多個特定組態可由人工實境系統10用作使用者110正嘗試執行手勢的指示。舉例而言,人工實境系統10可使用經偵測的影像資料作為使用者110正嘗試執行儲存至可由人工實境系統10存取之手勢庫之預定義手勢的指示。儘管使用者110之僅僅右手及右手臂在圖1A中被繪示為手132及右手臂134,但將瞭解,在各項實例中,人工實境系統10可識別使用者110之左手及/或左手臂或使用者110之右手及左手及/或右手臂及左手臂兩者以用於本揭示內容之手勢偵測技術。以此方式,人工實境系統10可偵測在實體環境內由任一手執行之單手手勢、雙手手勢,或基於手臂之手勢,並回應於經偵測的手勢而產生關聯使用者介面元件。
根據本揭示內容之系統組態及技術之一些實例,人工實境系統10上運行之人工實境應用程式判定經識別的手勢是否對應於由手勢庫中之複數個項目中之一者定義的預定義手勢。手勢庫可在本端儲存於控制台106及/或HMD 112處或以其他方式可由控制台106及/或HMD 112存取。如下文更詳細地所描述,手勢庫中之項目中之每一者可將不同手勢定義為使用者之手、手指(手指或拇指)及/或手臂隨時間推移之特定運動、組態、方位及/或定向,或此類性質之組合。此外,所定義手勢中之每一者可與呈待由人工實境應用程式執行之一個或多個動作之形式的所要回應相關聯。
作為一項實例,手勢庫中之預定義手勢中之一者或多者可觸發一個或多個使用者介面元件(例如UI選單124)之產生、變換及/或組態,以顯現及覆疊於人工實境內容122上,其中手勢可定義UI選單124在人工實境內容內容122中之位置及/或定向。作為另一實例,所定義手勢中之一者或多者可指示使用者110與特定使用者介面元件之互動,例如UI選單124之UI元件126之選擇,以觸發對經呈現使用者介面之改變、經呈現使用者介面之子選單之呈現,或其類似者。
此外,本揭示內容之技術及系統組態之一些實例係關於回應於偵測到或識別出由使用者執行之特定手勢而調用UI元件。UI元件之調用在整個本揭示內容中亦被稱作「觸發」UI元件或「閘控」UI元件。此類UI元件之實例包括但不限於使用者可選擇選項之選單。本揭示內容之態樣亦係關於回應於偵測到某些手勢而修改當前顯現之UI元件,諸如藉由回應於此等手勢而改變UI元件之定向或資料粒度級。人工實境系統10可出於閘控目的而使用之手勢之實例包括呈某些組態達臨限時間段之手132之定位,或手132在對應於已經顯示之UI元件之虛擬位置的位置處之某些組態及移動。如本文中所使用,術語「閘控」係指虛擬環境中在發生閘控事件以前未顯示之某些UI元件之產生及顯現。
根據本文中所描述之技術中之一些,人工實境系統10上運行之人工實境應用程式回應於偵測到手132被配置使得兩個手指大致上形成直角的手勢而執行UI元件閘控。舉例而言,若手132之食指及拇指大致上形成直角,則人工實境系統10偵測閘控手勢。在一些實例中,人工實境系統10將時間分量添加至準則以用於待辨識之閘控手勢。亦即,若手132之組態實質上靜止達至少臨限時間段,則人工實境系統10可識別手勢,且在手132靜止之時間段期間,手132經定位使得手132之食指及拇指大致上形成直角。將瞭解,雖然手132之方位在本文中被描述為形成如由兩個直線之間的轉彎所表示的「角」,但人工實境系統10調整本揭示內容之角判定以適應人類解剖屬性的特性,諸如拇指與食指之間的織帶曲率、由手132之手指之指骨間關節引起的任何自然彎曲等等。
在一些實例中,人工實境系統10在食指與拇指大致上定位成直角時基於手132之定向識別不同閘控手勢。舉例而言,若手132之背面面向HMD 112,則人工實境系統10可識別一個閘控手勢,且若手132之手掌面向HMD 112,則可識別不同閘控手勢。亦即,人工實境系統10可在使用者110正穿戴HMD 112的同時基於手132(或其特定部分)在使用者110之視場(FoV)內時手132之某些屬性識別閘控手勢。作為另一實例,人工實境系統10可在手132之拇指在HMD 112之FoV中朝向上方的情況下識別一個閘控手勢,且可在手132之食指在HMD 112之FoV中朝向上方的情況下識別不同閘控手勢。在一些實例中,人工實境系統10可基於上文所描述之手132之各種定向屬性之組合辨識特定手勢。
根據本揭示內容之一些技術,若手132經定位成實質上靜止達至少臨限時間段,且手132之手指經定位使得手132之拇指與至少一個其他手指大致上形成圓形或大致上形成圓形區段,則人工實境系統10偵測閘控手勢。在一些實例中,若手132面向HMD 112之FoV之視圖為側向定向,且表示手132中拇指所在之一側,則人工實境系統10可偵測手勢。舉例而言,自HMD 112繪製至手132之法線可與由手132之拇指及其他手指形成之圓形或圓形區段之內部區域相交。將瞭解,雖然手132之組態在本文中被描述為大致上形成「圓形」或「圓形區段」之幾何形狀,但人工實境系統10調整本揭示內容之角判定以適應人類解剖屬性的特性,諸如由手132之手指之指骨間關節引起的較尖銳彎曲、拇指與食指之間的織帶褶皺等等。在此等實例中,人工實境系統10可在對應於食指與拇指之虛擬表示之間的空間的虛擬位置處閘控UI元件。
根據本揭示內容之一些技術,若手臂134之一部分經定位成實質上靜止達至少臨限時間段,且處於HMD 112之FoV中達至少臨限時間段,則人工實境系統10偵測閘控手勢。舉例而言,若手臂134之組態使得腕部實質上靜止達至少臨限時間段,且腕部經定位使得來自腕部之法線面向HMD 112之FoV,則人工實境系統10可偵測手勢。在一些實例中,若手臂134面向外部攝影機102及/或HMD 112之影像捕捉裝置138之視圖為側向定向,且表示腕部之內側,亦即,手132之拇指所在之一側,則人工實境系統10可偵測手勢。舉例而言,自HMD 112繪製至手132之法線可與手臂134之腕部之內表面相交。在此等實例中,人工實境系統10可在對應於相對腕部之表示的虛擬位置處閘控UI元件。
根據本揭示內容之一些技術,人工實境系統10將顯示元件添加至由HMD 112輸出之人工實境內容122以供使用者110檢視。在一些狀況下,顯示元件可被稱作相對於本文中所描述之閘控技術之「助理」。根據此等實例,人工實境系統10可偵測在大體上對應於顯示元件之位置的位置處執行的某些預定義手勢以閘控人工實境內容122內之UI元件。
在一些實施方案中,人工實境系統10之UI引擎可產生助理元件以模擬無人機,其中助理元件在由人工實境內容122表示之虛擬環境中懸停於使用者110之虛擬表示(例如化身)上方或旁邊,例如懸停於虛擬手136旁邊。在此等實施方案中,人工實境系統10可基於由手132相對於人工實境內容122中包括之助理元件執行之握持與投擲組合而偵測手勢。
舉例而言,若人工實境系統10識別(i)手132之兩個或多於兩個手指之握持運動以在對應於由人工實境內容122表示之虛擬環境內之助理元件的位置處形成握持組態與(ii)手132相對於助理元件之投擲運動的組合,則人工實境系統10可偵測閘控手勢,其中投擲運動發生於握持運動之後。舉例而言,人工實境系統10可藉由識別手132之握持組態之釋放與手132及/或手臂134之特定移動的組合而偵測投擲運動。伴隨握持組態之釋放、跟隨握持組態之釋放或與握持組態之釋放部分地重疊的特定移動可包括手132或手臂134之腕部之屈曲、手132之手指中之至少一者之向外輕擊運動或其類似者中的一者或多者。在此等實例中,人工實境系統10可在對應於虛擬地投擲助理元件之處的虛擬位置處閘控UI元件。
在一些實施方案中,人工實境系統10之UI引擎可產生顯示元件以模擬可穿戴或部分黏接實體。舉例而言,人工實境系統10之UI引擎可使人工實境系統10之顯現引擎在對應於使用者110之相對手臂(亦即,除手臂134之外的手臂)之表示的位置處輸出顯示元件。在一項實例中,人工實境系統10之UI引擎及顯現引擎顯現顯示元件以看起來疊加於使用者110之相對手臂上及附接至使用者110之相對手臂。在一些此類實施方案中,人工實境系統10可基於握持與移動組合、握持與釋放組合、握持-移動-釋放組合或僅僅為由手132相對於看起來疊加於使用者110之相對手臂上及附接至使用者110之相對手臂的助理元件執行的握持而偵測手勢。
舉例而言,人工實境系統10可藉由識別手132相對於置放於由人工實境內容122表示之虛擬環境中的使用者110之相對手臂上的顯示元件之握持運動而偵測手勢。回應於手勢之識別,人工實境系統10可更新顯示元件以看起來與使用者110之相對手臂脫離及與該相對手臂分開。人工實境系統10亦可回應於預定義手勢之識別而閘控UI元件。舉例而言,人工實境系統10之UI引擎及顯現引擎可調用由人工實境系統122表示之虛擬環境內的使用者可選擇選項之選單。在一些情況下,人工實境系統10可緊鄰或以其他方式大體上在顯示元件附近定位UI元件,而顯示元件仍看起來與使用者110之相對手臂脫離及分開。
在一些實施方案中,人工實境系統10可回應於識別出諸如源自使用者110之另一手臂之預定義區域,諸如另一手臂之腕部的握持與拉動組合或捏縮與拉動組合之移動而閘控UI元件(例如使用者可選擇選項之選單)。根據此等實施方案中之一些,人工實境系統10之UI引擎及顯現引擎可將UI元件輸出為對人工實境內容122中另一手臂之腕部之表示的覆疊。
在此等實施方案中,人工實境系統10之UI引擎及顯現引擎可回應於識別出手132相對於虛擬地覆疊於腕部上之UI元件之握持與拉動組合運動而藉由修改UI元件來閘控UI選單。舉例而言,人工實境系統10可識別用以形成握持組態的手132之兩個或多於兩個手指之握持運動,及在相同的兩個或多於兩個手指呈握持組態時,相同的兩個或多於兩個手指遠離另一隻手之腕部之後續拉動運動。亦即,人工實境系統10可在由人工實境內容122表示之虛擬環境內在覆疊於腕部上的UI元件之位置處偵測握持組態。以此方式,上文所描述之本揭示內容之此等特定態樣在調用UI元件方面模擬抽屜或文件櫃。
因此,本揭示內容之技術及系統組態由人工實境系統提供對顯現及顯示內容之電腦相關領域的特定技術改良。舉例而言,如本文中所描述之人工實境系統可藉由基於由使用者執行之直觀而獨特之手勢之偵測來產生及顯現覆疊於人工實境內容上之使用者介面元件而向人工實境應用程式之使用者(諸如使用者110)提供高品質的人工實境體驗。
另外,如本文中所描述之系統可被配置以基於經定義為避免追蹤遮擋之手及手臂移動來偵測某些手勢。追蹤遮擋可發生於使用者之一隻手與另一隻手至少部分地重疊時,從而使得難以準確地追蹤每一隻手上之個別手指(手指及拇指),以及每一隻手之方位及定向。因此,如本文中所描述之系統可被配置以主要偵測基於單手或單手臂之手勢。基於單手或單手臂之手勢之使用可進一步為具有較大及精細運動技能限制之使用者提供增強之可行性。此外,如本文中所描述之系統可被配置以偵測基於雙手或雙臂之手勢,其中使用者之手並不相互作用或彼此重疊。
另外,如本文中所描述之系統可被配置以偵測將自觸覺回饋提供至使用者之手勢。舉例而言,使用者之每一隻手上之拇指及一個或多個手指可在實體世界中進行觸碰或大致上觸碰以作為指示與人工實境內容中之特定使用者介面元件之互動的預定義手勢之部分。使用者之手之拇指與一個或多個手指之間的觸碰可為使用者提供在與實體使用者輸入物件,諸如實體鍵盤或其他實體輸入裝置上之按鈕直接互動時對使用者所感覺到之感覺的模擬。
在各項實例中,為了執行上文所描述的技術之手勢偵測/識別態樣,人工實境系統10可使經偵測的影像資料與儲存至可由人工實境系統10存取之手勢庫之預定義手勢匹配。在各項實施方案中,人工實境系統10可運用未必要求與虛擬控制器或實體裝置互動之預定義手勢填入手勢庫之項目。人工實境系統10亦可包括被配置以產生本文中所描述之各種元件(無論是否回應於特定刺激)之UI引擎。人工實境系統10亦可包括被配置以顯現人工實境內容122之顯現引擎。
以此方式,人工實境系統可根據本揭示內容之各種態樣被配置以使使用者110能夠藉由執行特定手勢而調用或閘控人工實境增強實體環境中之特定UI元件。藉由使用易於執行且並不需要使用者110固持實體裝置之預定義手勢,本揭示內容之人工實境系統10充分利用在常規人工實境操作之過程期間執行此等手勢之容易性以在由人工實境內容122表示之虛擬環境內使用UI元件閘控之此等特定手勢。
圖1B為描繪根據本揭示內容之技術之另一實例人工實境系統20的繪示。類似於圖1A之人工實境系統10,在一些實例中,圖1B之人工實境系統20可呈現及控制針對人工實境環境內之使用者互動及操縱而特定地設計之使用者介面元件。在各項實例中,人工實境系統20亦可產生並向使用者顯現某些圖形使用者介面元件以作為偵測到使用者之一個或多個特定手勢的回應。
在圖1B之實例中,人工實境系統20包括外部攝影機102A及102B(統稱為「外部攝影機102」)、HMD 112A至112C(統稱為「HMD 112」)、控制器114A及114B(統稱為「控制器114」)、控制台106及感測器90。如圖1B中所展示,人工實境系統20表示多使用者環境,其中在控制台106及/或HMD 112上執行之人工實境應用程式基於各別使用者110之對應參考座標之當前檢視視角向使用者110A至110C(統稱為「使用者110」)中之每一者呈現人工實境內容。亦即,在此實例中,人工實境應用程式藉由追蹤及計算HMD 112中之每一者之參考座標之姿勢資訊來建構人工內容。人工實境系統20使用自攝影機102、HMD 112及控制器114接收之資料來捕捉真實世界環境內之3D資訊,諸如使用者110之運動及/或關於使用者110及物件108之追蹤資訊,以用於計算HMD 112之對應參考座標之經更新的姿勢資訊。作為一項實例,人工實境應用程式可基於針對HMD 112C判定之當前檢視視角將具有虛擬物件128A至128C(統稱為「虛擬物件128」)之人工實境內容122顯現為在空間上覆疊於真實世界物件108A至108C(統稱為「真實世界物件108」)上。另外,自HMD 112C之視角,人工實境系統20分別基於使用者110A、110B之估計方位而顯現化身120A、120B。
HMD 112中之每一者在人工實境系統20內同時操作。在圖1B之實例中,使用者110中之每一者可為人工實境應用程式中之「玩家」或「參與者」,且使用者110中之任一者可為人工實境應用程式中之「觀眾」或「觀察者」。HMD 112C可藉由追蹤使用者110C之手132及/或手臂124且將手132在視場130內之部分顯現為人工實境內容122內之虛擬手136來實質上類似於圖1A之HMD 112而各自操作。HMD 112B可自由使用者110B固持之控制器114A接收使用者輸入。HMD 112A亦可實質上類似於圖1A之HMD 112操作且藉由追蹤使用者110A之手132A、132B之移動而接收使用者輸入。HMD 112B可自由使用者110B固持之控制器114接收使用者輸入。控制器114可使用短程無線通信之近場通信(諸如Bluetooth®)、使用有線通信鏈路或使用另一類型之通信鏈路而與HMD 112B通信。
以類似於上文關於圖1A所論述的實例之方式,人工實境系統20之控制台106及/或HMD 112C產生及顯現使用者介面元件124、126,其可覆疊於向使用者110C顯示之人工實境內容122上。此外,控制台106及/或HMD 112C可基於經由姿勢追蹤對由使用者110C進行之直觀而獨特之手勢之偵測來觸發使用者介面元件124、126之產生及動態顯示。舉例而言,人工實境系統20可回應於偵測到使用者110C之一個或多個特定手勢,諸如使用者之手、手指、拇指或手臂之特定運動、組態、方位及/或定向而動態地呈現一個或多個圖形使用者介面元件124、126。如圖1B中所展示,除經由HMD 112C之攝影機138捕捉之影像資料之外,來自外部攝影機102之輸入資料亦可用於追蹤及偵測使用者110之手及手臂(諸如使用者110C之手132)之特定運動、組態、方位及/或定向,包括手132之手指(手指、拇指)中之個別者及/或組合之移動。HMD 112之外部攝影機102及/或影像捕捉裝置138統稱為人工實境系統20之「影像捕捉裝置」,將瞭解,人工實境系統20上運行之人工實境應用程式可使用此等影像捕捉裝置中之任何一者或多者捕捉實體環境及本文中所描述之各種手勢之影像資料。
根據本揭示內容中所描述之技術,人工實境系統20可偵測維持於視場130內達至少可組態時間段的使用者110C之手132之手指(手指或拇指)及/或手掌及/或手臂134之一個或多個特定組態,並將保持組態解譯為各別使用者110C正嘗試執行手勢的指示。舉例而言,人工實境系統20可使用經偵測的影像資料作為使用者110C正嘗試執行儲存至可由人工實境系統20存取之手勢庫之預定義手勢的指示。儘管使用者110C之僅僅右手及右手臂在圖1B中被繪示為手132及右手臂134,但將瞭解,在各項實例中,人工實境系統20可識別各別使用者110C之左手及/或左手臂或各別使用者110C之右手及左手及/或右手臂及左手臂兩者用於本揭示內容之手勢偵測技術。
以此方式,人工實境系統20可偵測在實體環境內由任一手執行之單手手勢、雙手手勢,或基於手臂之手勢,並回應於經偵測的手勢而產生關聯使用者介面元件。藉由充分利用僅手之手勢、僅手及腕部之手勢、單手手勢,及/或手勢偵測並不需要手132之所有手指之手勢,人工實境系統20改良對使用者110之可行性,以適應殘疾、解剖屬性的特性、受傷、暫時性疾病等等。
在人工實境系統20上運行的人工實境應用程式可閘控(或「觸發」)一個或多個使用者介面元件(例如UI選單124)之產生、顯現、變換及/或組態,以顯現及覆疊於人工實境內容122上,其中手勢可定義UI選單124在人工實境內容內容122中之位置及/或定向。如上文關於圖1A更詳細地所描述,根據本揭示內容之系統組態及技術之各項實例,在人工實境系統20上運行之人工實境應用程式可回應於偵測到由手132執行之單手手勢(其中兩個手指大致上形成直角(例如以大致上形成「L」形或近似「L」形之鏡像))而閘控UI元件。根據本揭示內容之其他技術及系統組態,若手132經定位成實質上靜止達至少臨限時間段,且手132之手指經定位使得手132之拇指及至少一個其他手指大致上形成圓形(例如近似「O」形、近似「C」形,或近似「C」形之鏡像),則人工實境系統20上運行之人工實境應用程式偵測閘控手勢。
根據本揭示內容之其他技術及系統組態,若各別手臂134之腕部之特定表面經定位成實質上靜止達至少臨限時間段,且處於HMD之視場(FoV)中達至少臨限時間段,則人工實境系統20上運行之人工實境應用程式偵測閘控手勢。根據本揭示內容之一些技術,在人工實境系統20上運行之人工實境應用程式將顯示元件(例如在本揭示內容中亦被稱作「助理元件」)添加至由HMD 112輸出之人工實境內容122。根據此等實例,人工實境系統20可偵測在大體上對應於顯示元件之位置的位置處執行的某些預定義手勢以閘控人工實境內容122內之UI元件。人工實境系統20可相對於顯示或助理元件偵測之閘控手勢之實例包括當顯示/助理元件疊加於相對手臂之腕部之表示上時來自各別使用者110C之相對手臂(亦即,並非手臂134)之腕部的握持與拉動;當顯示/助理元件呈現為在由人工實境內容122表示之虛擬環境中與各別使用者110C之化身一起行進時顯示/助理元件之握持與投擲;或當顯示/助理元件疊加於另一手臂之腕部之表示上時來自相對手臂之握持及脫離。
圖2為描繪被配置以根據本揭示內容之技術而操作之實例HMD 112的繪示。圖2之HMD 112可為圖1A及圖1B之HMD 112中之任一者之實例。HMD 112可為人工實境系統(諸如圖1A、圖1B之人工實境系統10、20)之部分,或可操作為被配置以實施本文中所描述之技術之獨立行動人工實境系統。
在此實例中,HMD 112包括用於將HMD 112緊固至使用者之前剛體及帶。此外,HMD 112包括被配置以將人工實境內容呈現給使用者之內向電子顯示器203。電子顯示器203可包括任何合適顯示技術,為任何合適顯示技術,或為任何合適顯示技術之部分,諸如液晶顯示器(LCD)、量子點顯示器、點矩陣顯示器、發光二極體(LED)顯示器、有機發光二極體(OLED)顯示器、陰極射線管(CRT)顯示器、電子墨水,或能夠產生視覺輸出之單色、彩色或任何其他類型之顯示器。在一些實例中,電子顯示器為用於將單獨影像提供至使用者之每隻眼睛的戴眼鏡式立體顯示器。在一些實例中,當追蹤HMD 112之方位及定向以用於根據HMD 112及使用者之當前檢視視角來顯現人工實境內容時,將顯示器203相對於HMD 112之前剛體的已知定向及方位用作參考座標,亦被稱作本端原點。在其他實例中,HMD可呈其他可穿戴頭戴式顯示器之形式,諸如眼鏡。
如圖2中進一步所展示,在此實例中,HMD 112進一步包括:一個或多個運動感測器206,諸如一個或多個加速計(亦被稱作慣性量測單元或「IMU」),其輸出指示HMD 112之當前加速度的資料;GPS感測器,其輸出指示HMD 112之位置的資料;雷達或聲納,其輸出指示HMD 112距各種物件之距離的資料;或其他感測器,其提供實體環境內之HMD 112或其他物件之位置或定向的指示。此外,HMD 112可包括整合式影像捕捉裝置138A及138B(統稱為「影像捕捉裝置138」),諸如視訊攝影機、雷射掃描器、Doppler®雷達掃描器、深度掃描器或其類似者,其被配置以輸出表示實體環境之影像資料。
更特定言之,影像捕捉裝置138捕捉表示實體環境中在影像捕捉裝置138之視場130A、130B內之物件的影像資料,該視場130A、130B典型地與HMD 112之檢視視角對應。HMD 112包括內部控制單元210,其可包括內部電源及具有一個或多個處理器、記憶體及硬體之一個或多個印刷電路板,以提供用於執行可程式化之操作以處理經感測資料並在顯示器203上呈現人工實境內容之操作環境。
在一項實例中,根據本文中所描述之技術,控制單元210被配置以基於經感測資料識別由使用者110執行之特定手勢或手勢之一個或多個組合。控制單元210可回應於識別出或偵測到手勢或手勢之組合而執行一個或多個特定動作。舉例而言,回應於一個經識別的手勢,控制單元210可產生及顯現覆疊於人工實境內容上之特定使用者介面元件以供顯示於電子顯示器203上。如本文中所闡釋,根據本揭示內容之技術,控制單元210可執行由影像捕捉裝置138捕捉之影像資料內之物件辨識以識別手132(或其手指,諸如手指或拇指)、手臂134(或其腕部)或使用者110之另一部分,並追蹤經識別的部分之移動以識別由使用者110執行之預定義手勢。
回應於識別出預定義手勢(或其組合/序列),控制單元210採取某一動作,諸如閘控選單、自與使用者介面元件相關聯之選項集合(例如前述選單)選擇選項、將手勢變換為輸入(例如字元)、啟動應用程式或以其他方式顯示內容,及其類似者。在一些實例中,控制單元210回應於偵測到被指定為「觸發」顯示使用者介面或其特定元件,諸如使用者可選擇選項選單之預定義手勢而動態地閘控(產生及呈現)使用者介面元件,諸如選單。在其他實例中,控制單元210回應於來自可執行物件辨識、運動追蹤及手勢偵測或其任何部分之外部裝置(諸如控制台106)之方向而執行此類功能。
作為一項實例,根據本揭示內容之各個態樣,控制單元210可回應於偵測到由手132執行之單手手勢而閘控UI元件,其中兩個手指大致上形成直角(例如以大致上形成「L」形狀或近似「L」形狀之鏡像)。根據本揭示內容之其他技術及系統組態,若手132經定位成實質上靜止達至少臨限時間段,且手132之手指經定位使得手132之拇指與至少一個其他手指大致上形成圓形(例如近似「O」形、近似「C」形,或近似「C」形之鏡像),則控制單元210偵測或識別閘控手勢。
作為額外實例,根據本揭示內容之其他技術及系統組態,若手臂134之腕部之特定表面經定位成實質上靜止達至少臨限時間段,且處於HMD 112之FoV中達至少臨限時間段,則控制單元210偵測或識別閘控手勢。根據本揭示內容之一些態樣,控制單元210將顯示元件(例如在本揭示內容中有時亦被稱作「助理元件」)添加至由HMD 112輸出之人工實境內容122。根據此等實例,控制單元210可偵測在大體上對應於顯示元件之位置的位置處所執行之某些預定義手勢以閘控經由HMD 112顯示之人工實境內容122內之UI元件。
控制單元210可相對於顯示或助理元件偵測之閘控手勢之實例包括當顯示/助理元件疊加於另一手臂之腕部之表示上時來自使用者110之另一手臂(亦即,並非手臂134)之腕部的握持與拉動;當顯示/助理元件呈現為在由人工實境內容122表示之虛擬環境中與各別使用者110之化身一起行進時顯示/助理元件之握持與投擲;或當顯示/助理元件疊加於另一手臂之腕部之表示上時來自另一手臂之握持及脫離。
圖3為展示圖1A、圖1B之人工實境系統10、20之控制台106及頭戴式顯示器112之實例實施方案的方塊圖。在圖3之實例中,控制台106基於經感測資料,諸如自HMD 112及/或外部感測器接收之運動資料及影像資料,根據本文中所描述之技術來針對HMD 112執行姿勢追蹤、手勢偵測及使用者介面產生及顯現。
在此實例中,HMD 112包括一個或多個處理器302及記憶體304,在一些實例中,處理器302及記憶體304提供用於執行作業系統305之電腦平台,該作業系統305可為例如嵌入式即時多任務作業系統,或其他類型之作業系統。隨後,作業系統305提供用於執行一個或多個軟體組件307(包括應用程式引擎340)之多任務操作環境。如關於圖2之實例所論述,處理器302耦接至電子顯示器203、運動感測器206及影像捕捉裝置138。在一些實例中,處理器302及記憶體304可為單獨的離散組件。在其他實例中,記憶體304可為與處理器302共置於單一積體電路內之晶片上記憶體。
一般而言,控制台106為計算裝置,其處理自攝影機102(圖1B)及/或HMD 112接收之影像及追蹤資訊以針對HMD 112執行手勢偵測及使用者介面產生。在一些實例中,控制台106為單一計算裝置,諸如工作站、桌上型電腦、膝上型電腦或遊戲系統。在一些實例中,諸如處理器312及/或記憶體314之控制台106之至少一部分可跨越雲端計算系統、資料中心或跨越網路而分佈,該網路係諸如網際網路、另一公用或私用通信網路,例如寬頻、蜂巢式、Wi-Fi及/或用於在計算系統、伺服器及計算裝置之間傳輸資料之其他類型之通信網路。
在圖3之實例中,控制台106包括一個或多個處理器312及記憶體314,在一些實例中,處理器312及記憶體314提供用於執行作業系統316之電腦平台,該作業系統316可為例如嵌入式即時多任務作業系統,或其他類型之作業系統。隨後,作業系統316提供用於執行一個或多個軟體組件317之多任務操作環境。處理器312耦接至一個或多個I/O介面315,其提供用於與諸如鍵盤、遊戲控制器、顯示裝置、影像捕捉裝置、HMD及其類似者之外部裝置通信之一個或多個I/O介面。另外,一個或多個I/O介面315可包括用於與諸如網路104之網路通信的一個或多個有線或無線網路介面控制器(network interface controller;NIC)。處理器302、312中之每一者可包含多核心處理器、控制器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、現場可程式閘陣列(FPGA)、處理電路系統(例如固定功能電路系統或可程式電路系統或其任何組合)或等效離散或整合邏輯電路系統中之任何一者或多者。記憶體304、314可包含用於儲存資料及可執行軟體指令之任何形式之記憶體,諸如隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可程式唯讀記憶體(PROM)、可抹除可程式唯讀記憶體(EPROM)、電子可抹除可程式唯讀記憶體(EEPROM)及快閃記憶體。
控制台106之軟體應用程式317用以提供整個人工實境應用程式。在此實例中,軟體應用程式317包括應用程式引擎320、顯現引擎322、手勢偵測器324、姿勢追蹤器326,及使用者介面引擎328。一般而言,應用程式引擎320包括用以提供及呈現例如以下各者之人工實境應用程式之功能性:電話會議應用程式、遊戲應用程式、導航應用程式、教學應用程式、訓練或模擬應用程式及其類似者。應用程式引擎320可包括例如用於在控制台106上實施人工實境應用程式之一個或多個套裝軟體、軟體程式庫、硬體驅動程式及/或應用程式介面(Application Program Interface;API)。回應於應用程式引擎320進行之控制,顯現引擎322產生3D人工實境內容以由HMD 112之應用程式引擎340顯示給使用者。
應用程式引擎320及顯現引擎322根據如由姿勢追蹤器326判定之針對參考座標(典型地為HMD 112之檢視視角)之當前姿勢資訊而建構人工內容以供顯示給使用者110。基於當前檢視視角,顯現引擎322建構3D人工實境內容,其在一些狀況下可至少部分地覆疊於使用者110之真實世界3D環境上。在此程序期間,姿勢追蹤器326對自HMD 112接收之經感測資料進行操作,該資料係諸如移動資訊及使用者命令及在一些實例中為來自任何外部感測器90(圖1A、圖1B),諸如外部攝影機之資料,以捕捉真實世界環境內之3D資訊,諸如使用者110之運動及/或關於使用者110之特徵追蹤資訊。基於經感測資料,姿勢追蹤器326判定HMD 112之參考座標之當前姿勢,且根據當前姿勢來建構人工實境內容以用於經由一個或多個I/O介面315傳達至HMD 112以供顯示給使用者110。
此外,基於經感測資料,手勢偵測器324分析使用者之物件(例如手、手臂、腕部、手指、手掌、拇指)之追蹤運動、組態、方位及/或定向,以識別由使用者110執行之一個或多個手勢。更特定言之,手勢偵測器324分析在由HMD 112之影像捕捉裝置138及/或感測器90或外部攝影機102捕捉之影像資料內所辨識之物件,以識別使用者110之手及/或手臂,並追蹤手及/或手臂相對於HMD 112之移動以識別由使用者110執行之手勢。手勢偵測器324可基於經捕捉影像資料來追蹤移動,包括手、手指及/或手臂之方位及定向之改變,並比較物件之運動向量與手勢庫330中之一個或多個項目以偵測由使用者110執行之手勢或手勢之組合。手勢庫330中之一些項目可各自將手勢定義為一系列運動圖案,諸如使用者之手、特定手指、拇指、腕部及/或手臂之相對路徑或空間平移及旋轉。手勢庫330中之一些項目可各自將手勢定義為使用者之手及/或手臂(或其部分)在特定時間或在一時間段內之組態、方位及/或定向。手勢類型之其他實例係可能的。另外,手勢庫330中之項目中之每一者可針對所定義手勢或一系列手勢指定該手勢或一系列手勢觸發動作所需的條件,諸如與HMD 112之當前視場之空間關係、與當前由使用者觀察到之特定區之空間關係,如可藉由個人之即時視線追蹤、所顯示之人工內容之類型、所執行之應用程式之類型及其類似者而判定。
手勢庫330中之項目中之每一者進一步可針對所定義手勢中之每一者或手勢之組合/一系列手勢指定待由軟體應用程式317執行之所要回應或動作。舉例而言,根據本揭示內容之技術,某些專門手勢可經預定義使得回應於偵測到預定義手勢中之一者,使用者介面引擎328將使用者介面動態地產生為對向使用者顯示之人工實境內容之覆疊,藉此允許使用者110易於調用使用者介面以用於組態HMD 112及/或控制台106,即使在與人工實境內容互動時亦如此。在其他實例中,某些手勢可能與其他動作相關聯,該等動作係諸如提供輸入、選擇物件、啟動應用程式及其類似者。
根據本揭示內容之系統組態及技術之一些實例,手勢偵測器324判定使用者之物件(例如手、手臂、腕部、手指、手掌、拇指)之經識別的運動及/或組態是否對應於由手勢庫330中之複數個項目中之一者定義的預定義手勢。手勢庫330之項目中之每一者可將不同手勢定義為使用者之手、手指(手指或拇指)及/或手臂隨時間推移之特定運動、組態、方位及/或定向,或此類性質之組合。另外,所定義手勢中之每一者可與呈待由控制台106及/或HMD 112之其他組件執行之一個或多個動作之形式的所要回應相關聯。
作為一項實例,手勢庫330中之預定義手勢中之一者或多者可觸發一個或多個使用者介面元件由UI引擎328之產生、變換及/或組態。顯現引擎322可顯現及覆疊UI引擎328基於手勢偵測器324偵測到預定義手勢而產生之UI元件。在一些實例中,UI引擎328及顯現引擎322可定義傳達至HMD 112之人工實境內容122中UI元件(藉助於UI選單124之實例所論述)之位置及/或定向。
根據本文中所描述之技術中之一些,UI引擎328及顯現引擎322回應於手勢偵測器324識別出手132被配置使得兩個手指大致上形成直角之一個或多個手勢而執行UI元件閘控。舉例而言,若手132之食指及拇指大致上形成直角,則手勢偵測器324識別閘控手勢。在一些實例中,人手勢偵測器324將時間分量添加至準則以用於待辨識之閘控手勢。亦即,若手132之組態實質上靜止達至少臨限時間段,且在手132靜止之時間段期間,手132經定位使得手132之食指與拇指大致上形成直角,則手勢偵測器324可識別手勢。將瞭解,雖然手132之方位在本文中被描述為形成如由兩個直線之間的轉彎所表示的「角」,但手勢偵測器324調整本揭示內容之角判定以適應人類解剖屬性的特性,諸如拇指與食指之間的織帶曲率、由手132之手指之指骨間關節引起的任何自然彎曲等等。
在一些實例中,當食指與拇指經定位成大致上成直角時,手勢偵測器324基於手132之定向識別不同閘控手勢。舉例而言,若手132之背面面向影像捕捉裝置138,則手勢偵測器324可識別一個閘控手勢,且若手132之手掌面向影像捕捉裝置138,則可識別不同閘控手勢。作為另一實例,手勢偵測器324可在手132之拇指在由影像捕捉裝置138捕捉之視圖中朝向上方的情況下識別一個閘控手勢,且可在手132之食指在由影像捕捉裝置138捕捉之視圖中朝向上方的情況下識別不同閘控手勢。在一些實例中,人工實境系統10可基於上文所描述之手132之各種定向屬性之組合辨識特定手勢。
在此等實例中,UI引擎328可產生UI元件,使得形成於食指與拇指之間的角之近似頂點大體上指示UI元件之角點之位置。在一項實例中,假定手132為使用者110之右手,則UI引擎328可產生UI元件,使得手132之食指與拇指之間的角之頂點指示UI元件之右下角之位置。相反地,在一項實例中,假定手132為使用者110之左手,則UI引擎328可產生UI元件,使得手132之食指與拇指之間的角之頂點指示UI元件之左下角之位置。
另外,若手勢偵測器324偵測到手132之定向之改變,同時食指與拇指形成近似直角,則UI引擎328可編輯UI元件之定向、粒度、內容等等中之一者或多者。舉例而言,若手勢偵測器324偵測到手132之食指指向上且手132之背部面向影像捕捉裝置138,則UI引擎328可將UI元件閘控為縱向定向上之選單。在此實例中,若手勢偵測器324偵測到手132之定向已改變成使得手132之拇指面向上且手132之手掌面向影像捕捉裝置138,則UI引擎328可將選單切換為具有橫向定向。
在一些此類實例中,UI引擎328亦可基於如由手勢偵測器324識別的手132之定向之改變而改變選單之內容。舉例而言,UI引擎328可將選單編輯為包括使用者可選擇選項,與縱向定向選單相比,該選單提供在橫向定向選單中之使用者可選擇選項的較精細粒度集合。舉例而言,UI引擎328可產生橫向定向選單以作為下拉式選單,其相較於縱向定向選單展示較深層級之使用者可選擇選項。在一些實例中,若手勢偵測器324偵測到相較於上文所描述之「L」或鏡像「L」組態倒轉的手132之組態,則UI引擎328可被配置以藉由識別UI元件之右上角或左上角而閘控UI元件。
根據本揭示內容之一些技術,若手132經定位成實質上靜止達至少臨限時間段,且手132之手指經定位使得手132之拇指與至少一個其他手指大致上形成圓形或大致上形成圓形區段,則手勢偵測器324偵測閘控手勢。在一些實例中,若手132面向影像捕捉裝置138之視圖為側向定向且表示手132中拇指所在的一側,則手勢偵測器324可偵測到手勢。舉例而言,自影像捕捉裝置138繪製至手132之法線可與由手132之拇指及其他手指形成之圓形或圓形區段之內部區域相交。在此等實施方案中之一些中,UI引擎328可定位移動圖像以在由手132形成之圓形或圓形區段內播放視訊,藉此在由人工實境內容122表示之整個虛擬環境內產生「視訊直通」效果。在其他實施方案中,UI引擎328可顯示UI元件,諸如在大體上對應於由手132形成之圓形或圓形區段之位置內或處使用者可選擇選項之選單。顯現引擎322被配置以顯現人工實境內容122以供經由電子顯示器203輸出,其具有或不具有回應於由手勢偵測器324偵測之手勢而由UI引擎328所產生之各種UI元件。
根據本揭示內容之一些技術,若手臂134之一部分經定位成實質上靜止達至少臨限時間段,且處於HMD 112之FoV中達至少臨限時間段,則手勢偵測器324偵測閘控手勢。舉例而言,若手臂134之組態使得腕部實質上靜止達至少臨限時間段,且腕部經定位使得來自腕部之法線面向HMD 112,則手勢偵測器324可偵測手勢。在一些實例中,若手臂134面向HMD 112之視圖為側向定向且表示腕部之內側,亦即手132之拇指所在的一側,則手勢偵測器324可偵測手勢。舉例而言,自HMD 112繪製至手臂134之法線可與腕部之內表面相交。在此等實施方案中之一些中,UI引擎328可產生UI元件,諸如選單,顯現引擎322將其顯現為在由人工實境內容122表示之虛擬環境內疊加於腕部之表示上。
根據本揭示內容之一些技術,UI引擎328包括人工實境內容122內之顯示元件,使得手勢偵測器324能夠識別相對於顯示元件執行之手勢。在此等實例中,手勢偵測器324可偵測在大體上對應於虛擬環境內顯示元件之位置的位置處所執行之某些預定義手勢,且UI引擎324可回應於手勢偵測器324在對應於顯示元件之位置的位置處偵測到此等預定義手勢中之一者或多者而閘控UI元件。因而,顯示元件可被視為「助理」或「個人助理」,其與表示由人工實境內容122表示之虛擬環境內之使用者110的化身一起行進。根據本揭示內容之各種態樣,UI引擎328可使顯現引擎322將助理元件顯現為附接至化身之虛擬本體或與化身脫離並跟隨化身。
在一些實例中,顯現引擎322可產生助理元件以看起來自化身脫離,及跟隨化身在由人工實境內容122表示之虛擬環境內之移動。根據此等實例,助理元件模擬在由人工實境內容122表示之虛擬環境中懸停於使用者110之化身上方或在該化身旁邊漂浮的無人機。在此等實施方案中,手勢偵測器324可基於由手132相對於包括於人工實境內容122中之助理元件執行的握持與投擲組合偵測閘控手勢。
舉例而言,視偵測到以下各者之組合而定,手勢偵測器324可識別閘控手勢:(i)手132之兩個或多於兩個手指之握持運動以在對應於由人工實境內容122表示之虛擬環境內之助理元件的位置處形成握持組態;及(ii)手132相對於助理元件之投擲運動,其中投擲運動發生於握持運動之後。
舉例而言,人工實境系統10可藉由識別手132之握持組態之釋放與手132及/或手臂134之特定移動的組合而偵測投擲運動。伴隨握持組態之釋放、跟隨握持組態之釋放或與握持組態之釋放部分地重疊的特定移動可包括手臂134之腕部及/或手132之關節之屈曲、手132之手指中之至少一者之向外輕擊運動,或其各種排列/組合。
在一些實例中,顯現引擎322可將助理元件顯現為附接至化身之腕部。舉例而言,顯現引擎322可將助理元件顯現為附接至非主要手臂(諸如在手臂134表示使用者110之主要右手臂之情境下為左手臂)之腕部。在此等實例中,助理元件可模擬可穿戴物品,其中助理元件被顯現為當前附接至使用者110之另一手臂,但有可能與另一手臂脫離。舉例而言,顯現引擎322可在對應於使用者110之另一手臂(亦即,除手臂134之外的手臂)之表示的位置處顯現顯示元件,該手臂在一些實例中可表示使用者110之非主要手臂。在一些此類實施方案中,手勢偵測器324可基於握持與移動組合、握持與釋放組合、握持-移動-釋放組合或僅僅為由手132相對於看起來疊加於使用者110之另一手臂上及附接至使用者110之另一手臂的助理元件執行的握持而偵測手勢。
舉例而言,手勢偵測器324可藉由識別手132相對於顯示元件之握持運動而偵測手勢,且作為回應,UI引擎328及顯現引擎322可更新顯示元件之形態以看起來與使用者110之另一手臂脫離及分開。在一些實例中,手勢偵測器324可偵測在遠離使用者110之另一手臂(亦即,助理元件自其移除的手臂,如虛擬環境中所表示)某一距離的位置處手132的握持組態之釋放。隨後,UI引擎328可使顯現引擎322大致上在手132之握持組態被釋放之位置處顯示助理元件。在此實例中,手勢偵測器324充分利用單手手勢,藉此減輕與雙手手勢相關聯之使用者負擔。
另外,基於手勢偵測器324識別出手132之握持組態之釋放,UI引擎328可閘控UI元件,諸如使用者可選擇選項之選單。舉例而言,UI引擎328可使顯現引擎322顯現選單,使得選單經定位成緊鄰或以其他方式大體上在助理元件附近,而助理元件看起來懸置於手132之握持組態被釋放之位置處。在一些實例中,手勢偵測器324隨後可偵測手132相對於助理元件的握持與移動手勢,使得顯示元件移回至使用者110之另一手臂的腕部。在此等實例中,UI引擎328可自人工實境內容122移除選單,藉此使顯現引擎322停止在虛擬環境內顯現選單。
在一些實施方案中,手勢偵測器324可偵測源自使用者110之另一手臂之預定義區域處,諸如另一手臂之腕部處的相對於顯示元件之握持與拉動組合或捏縮與拉動組合。根據此等實施方案,UI引擎328可回應於手勢偵測器324識別出此等移動中之任一者而閘控使用者可選擇選項之UI選單。根據此等實施方案中之一些,UI引擎328及顯現引擎322可回應於手勢偵測器324偵測到自另一手臂之腕部的不同拉動長度而改變選單之內容、外觀尺寸或選擇粒度。
舉例而言,人工實境系統10之UI引擎328及顯現引擎322可回應於識別出手132相對於虛擬地覆疊於腕部上之UI元件(例如上文所描述之助理元件之實例)之握持與拉動組合運動藉由修改UI元件而閘控UI選單。若手勢偵測器324識別手132之兩個或多於兩個手指之握持運動以形成握持組態,及相同的兩個或多於兩個手指遠離另一隻手之腕部之後續拉動運動,同時相同的兩個或多於兩個手指呈握持組態,則UI引擎328可使顯現引擎322輸出選單,諸如圓形選單。
以此方式,上文所描述之本揭示內容之此等特定態樣在調用UI元件方面模擬抽屜或文件櫃。若手勢偵測器324識別在握持組態仍然完好的同時拉動運動停止,繼之以在握持組態仍然完好情況下的一另外拉動運動,則UI引擎328可對選單進行更新,並使顯現引擎122經由人工實境內容122輸出經更新的選單。在一些實例中,顯現引擎322可在不同位置(諸如在對應拉動運動停止所在的位置)定位原始選單及經更新的選單。
因此,本揭示內容之技術及系統組態由人工實境系統提供對顯現及顯示內容之電腦相關領域的特定技術改良。舉例而言,圖3之人工實境系統可藉由基於由使用者執行之直觀而獨特之手勢之偵測來產生及顯現覆疊於人工實境內容上之使用者介面元件而向使用者(諸如使用者110)提供高品質的人工實境體驗。
另外,如本文中所描述之系統可被配置以基於經定義為避免追蹤遮擋之手及手臂移動來偵測某些手勢。追蹤遮擋可發生於使用者之一隻手與另一隻手至少部分地重疊時,從而使得難以準確地追蹤每一隻手上之個別手指(手指及拇指),以及每一隻手之方位及定向。因此,如本文中所描述之系統可被配置以主要偵測基於單手或單手臂之手勢。基於單手或單手臂之手勢之使用可進一步為具有較大及精細運動技能限制之使用者提供增強之可行性。此外,如本文中所描述之系統可被配置以偵測基於雙手或雙臂之手勢,其中使用者之手並不相互作用或彼此重疊。
圖4為描繪根據本揭示內容之技術的由圖1A、圖1B之人工實境系統之HMD 112執行手勢偵測及使用者介面產生之實例的方塊圖。
在此實例中,類似於圖3,HMD 112包括一個或多個處理器302及記憶體304,在一些實例中,處理器302及記憶體304提供用於執行作業系統305之電腦平台,該作業系統305可為例如嵌入式即時多任務作業系統,或其他類型之作業系統。隨後,作業系統305提供用於執行一個或多個軟體組件417之多任務操作環境。此外,處理器302耦接至電子顯示器203、運動感測器206及影像捕捉裝置138。
在圖4之實例中,軟體組件417用以提供整個人工實境應用程式。在此實例中,軟體應用程式417包括應用程式引擎440、顯現引擎422、手勢偵測器424、姿勢追蹤器426及使用者介面引擎428。在各項實例中,軟體組件417類似於圖3之控制台106之對應組件(例如應用程式引擎320、顯現引擎322、手勢偵測器324、姿勢追蹤器326及使用者介面引擎328)而操作,以根據使用者110之經偵測的手勢來建構覆疊於人工內容上或作為人工內容之部分的使用者介面元件以供顯示給使用者110。在一些實例中,顯現引擎422建構3D人工實境內容,其可至少部分地覆疊於使用者110之真實世界實體環境上。
類似於關於圖3所描述之實例,基於經感測資料,手勢偵測器424分析使用者之物件(例如手、手臂、腕部、手指、手掌、拇指)之追蹤運動、組態、方位及/或定向,以識別由使用者110執行之一個或多個手勢。根據本揭示內容之技術,使用者介面引擎428將使用者介面元件產生為待向使用者110顯示之人工實境內容之部分(例如覆疊於該人工實境內容上),及/或基於由手勢偵測器424偵測的使用者110之一個或多個手勢或手勢之組合來執行動作。更特定言之,手勢偵測器424分析在由HMD 112之影像捕捉裝置138及/或感測器90或外部攝影機102捕捉之影像資料內所辨識之物件,以識別使用者110之手及/或手臂,並追蹤手及/或手臂相對於HMD 112之移動以識別由使用者110執行之手勢。手勢偵測器424可基於經捕捉影像資料來追蹤移動,包括手、手指及/或手臂之方位及定向之改變,並比較物件之運動向量與手勢庫430中之一個或多個項目以偵測由使用者110執行之手勢或手勢之組合。
手勢庫430類似於圖3之手勢庫330。手勢庫430中之項目中之每一者可針對所定義手勢或一系列手勢指定該手勢觸發動作所需的條件,諸如與HMD 112之當前視場之空間關係、與當前由使用者觀察到之特定區之空間關係,如可藉由個人之即時視線追蹤、所顯示之人工內容之類型、所執行之應用程式之類型及其類似者而判定。
回應於偵測到匹配手勢或手勢之組合,HMD 112執行指派給手勢庫430中之匹配項目之回應或動作。舉例而言,根據本揭示內容之技術,某些專門手勢可經預定義使得回應於手勢偵測器424偵測到預定義手勢中之一者,使用者介面引擎428將使用者介面動態地產生為對向使用者顯示之人工實境內容之覆疊,藉此允許使用者110易於調用使用者介面以用於組態HMD 112,即使在檢視人工實境內容時亦如此。在其他實例中,回應於手勢偵測器424偵測到預定義手勢中之一者,使用者介面引擎428及/或應用程式引擎440可接收輸入、選擇與使用者介面元件相關聯之值或參數、啟動應用程式、修改可組態設定、發送訊息、開始或停止程序,或執行其他動作。
手勢偵測器424可自由影像捕捉裝置138捕捉之影像資料識別的各種手勢包括手132之「L」形組態、由手132執行之握持與拉動移動,及由手132執行之握持與投擲移動。手勢偵測器424可自影像資料識別之手勢之另一實例為腕部凝視手勢,其中使用者110之相對手臂的腕部置放於HMD 112之FoV中達至少臨限時間段,且實質上靜止達至少臨限時間段。回應於手勢偵測器424識別出本揭示內容之預定義手勢中之任一者,UI引擎428及顯現引擎422可閘控各種UI元件,諸如使用者可選擇選項之選單。在一些實例中,UI引擎428及顯現引擎422可回應於手勢偵測器424自該影像資料識別出後續「去閘控」手勢而移除先前閘控之UI元件。
圖5為繪示人工實境系統10、20及/或其組件可根據本揭示內容之手勢驅動之UI元件閘控技術執行之程序450的流程圖。雖然圖5繪示按作為一實例之特定次序/序列的各種步驟,但將瞭解,人工實境系統10、20可按各種次序/序列執行所繪示步驟,包括部分或總體並行地執行,且可反覆各種步驟多次。UI引擎328、428及顯現引擎322、422可輸出人工實境內容122(452)。舉例而言,UI引擎328、428及顯現引擎322、422可經由電子顯示器203輸出人工實境內容122以產生虛擬環境。
影像捕捉裝置138及/或外部攝影機102可捕捉影像資料(454)。影像資料可反映使用者110周圍之實體環境。手勢偵測器324、424可判定是否在HMD 112之FoV內偵測到預定義手勢(決策區塊456)。舉例而言,手勢偵測器324、424可處理自影像捕捉裝置138及/或外部攝影機102接收之影像資料以判定自影像資料偵測之手/手臂組態及/或運動/移動中之一者或多者是否與手勢庫330、430之項目匹配。
若手勢偵測器324、424未自影像資料識別出預定義手勢(決策區塊456之否分支),則人工實境系統10、20可繼續輸出人工實境內容122並自使用者110之實體環境捕捉影像資料(實際上反覆步驟452及454)。若手勢偵測器324、424自影像資料識別出預定義手勢(決策區塊456之是分支),則UI引擎328、428及顯現引擎322、422可根據本揭示內容之手勢驅動之UI元件閘控技術而閘控一個或多個UI元件(458)。下文更詳細地描述可根據本揭示內容之技術而閘控之預定義手勢及UI元件之各項實例。
圖6A至圖11為根據本揭示內容之態樣的繪示可由手勢偵測器324、424使用以識別各種預定義閘控手勢的手132(及在一些狀況下為手臂134之腕部)之各種移動及組態的概念圖。手臂134之腕部在圖5A至圖10中之一些中被標註為腕部135,使用者110之另一手臂被標註為相對手臂934,且另一手臂之腕部被標註為相對腕部902。
圖6A至圖6D繪示手132之基於角點之閘控組態以及UI元件,人工實境系統10、20可回應於手132之基於角點之閘控組態之識別而調用該等UI元件。圖6A繪示手勢偵測器324、424可識別的手132之組態502,UI引擎328、428可回應於該組態而基於組態502識別出UI元件之角點之近似位置來閘控UI元件。如圖6A中所展示,組態502需要手132之食指與拇指之間的近似直角。亦即,影像捕捉裝置138及/或外部攝影機102可捕捉表示使用者110之實體環境之影像資料,且電子顯示器203可輸出人工實境內容。手勢偵測器328、428可自影像資料識別手勢,其包含手132實質上靜止達至少臨限時間段並經定位使得手132之食指與拇指大致上形成直角的組態502。UI引擎可回應於經識別的手勢而產生UI元件,且顯現引擎322、422可將UI元件顯現為對人工實境內容之覆疊。在組態502之狀況下,手132之食指在HMD 112之視場(FoV)中朝上指,且手132之背部面向影像捕捉裝置138。基於手勢偵測器322、422偵測到手132在組態502中達至少臨限時間段,UI引擎328、428可使顯現引擎322、422根據縱向定向顯現UI元件。
圖6B繪示手勢偵測器324、424可識別的手132之另一組態504,UI引擎328、428可回應於該另一組態而基於組態504識別出UI元件之角點之近似位置來閘控UI元件。在組態504之狀況下,手132之拇指在由影像捕捉裝置138捕捉之視圖中朝上指,且手132之手掌面向HMD 112。基於手勢偵測器322、422偵測到手132在組態504中達至少臨限時間段,UI引擎328、428可使顯現引擎322、422根據橫向定向顯現UI元件。組態504表示相對於組態502之90度手旋轉及180度手反射。
圖6C繪示UI引擎328、428及顯現引擎322、422可回應於手勢偵測器324、424識別出手132符合組態502達至少臨限時間段的手勢而閘控的選單506。如圖6C中所展示,UI引擎328、428及顯現引擎322、422回應於手勢偵測器324、424判定手132符合組態502達至少臨限時間段而根據縱向定向閘控選單506。
圖6D繪示UI引擎328、428及顯現引擎322、422可回應於手勢偵測器324、424識別出手132符合組態504達至少臨限時間段的手勢而閘控的選單508。如圖6D中所展示,UI引擎328、428及顯現引擎322、422回應於手勢偵測器324、424判定手132符合組態504達至少臨限時間段而根據橫向定向閘控選單508。
在一些使用案例情境下,手勢偵測器324、424可在執行兩個單獨依序手勢時偵測手132自組態502至組態504之轉變。因而,手勢偵測器324、424可基於符合組態502的手132之方位及符合組態504的手之方位來識別兩個單獨手勢。在此特定使用案例情境下,手勢偵測器324、424在基於偵測到第二方位(符合組態504)識別第二手勢之前基於偵測到第一方位(符合組態502)識別第一手勢。在此狀況下,UI引擎328、428及顯現引擎322、422可修改符合第一(縱向)定向之選單506,以形成符合第二(橫向)定向之選單508。在圖6C及圖6D中所繪示之實例中,選單506(符合第一(亦即,縱向)定向)包括選單508(符合第二(亦即,橫向)定向)中所包括之使用者可選擇選項之子集。
在圖6C及圖6D之特定實例中,UI引擎328、428解譯由手勢偵測器324、424提供之資料以判定手132符合組態502、504之手勢中之每一者分別指示選單506、508之右下角之位置。然而,將瞭解,在其他實例中,UI引擎328、428及顯現引擎322、422可基於由手勢偵測器324、424提供之資訊識別各種UI元件之左下角、左上角或右上角。在圖6C及圖6D中之每一者中,UI引擎328、428及顯現引擎322、422顯現選單506及選單508,使得各別選單506、508之長側與手132之食指實質上對準。
圖7A及圖7B繪示手132之圓形邊界組態,人工實境系統10、20可將其偵測為刺激以用於在由人工實境內容122表示之虛擬環境內閘控某些UI元件。圖7A繪示組態602,其中手132之食指與拇指形成圓形區段或大致上形成圓形區段。組態602之圓形區段大體上表示圓弧,其在自兩個開口端延伸時將有可能形成圍封空間,諸如圓形或大致上圓形。若手132符合組態602且保持於組態602達至少臨限時間段,則手勢偵測器324、424可識別圖7A中所繪示之閘控手勢。亦即,若手132之定位滿足保持實質上靜止達至少臨限時間段及手132之兩個手指經定位使得兩個手指形成組態602之圓形區段的兩個條件,則手勢偵測器324、424識別圖7A之閘控手勢。
為了有助於使用者體驗且基於人手之一般結構,若手132之拇指在臨限時間段期間結合至少一個其他手指(除拇指之外)形成圓形區段,則手勢偵測器324、424可偵測閘控手勢。本揭示內容之實例係關於手132之食指與拇指形成圓形區段。然而,將瞭解,手勢偵測器324、424可基於拇指與各個手指,諸如僅食指(所有四個其他手指中藉助於食指遮住其餘手指)或與其餘手指中除拇指及食指之外的任何一者或多者形成圓形區段而識別閘控手勢。
由手132根據組態602形成之圓形區段包括圍封區域604A。在一些實例中,若手132經定位使得來自組態602之圓形區段內的圍封區域604A中之任何地方的法線面向HMD 112,則手勢偵測器324、424可識別閘控手勢。在此等實例中,UI引擎328、428回應於手勢偵測器324、424識別出圖7A中所繪示之閘控手勢而產生UI元件,且可使顯現引擎322、422將UI元件顯現為相對於由人工實境內容122表示之虛擬環境之一部分的覆疊。
舉例而言,顯現引擎322、422可顯現由UI引擎328、428產生之UI元件(例如內容)以看起來在圍封區域604A內或至少部分地在圍封區域604A內。在一些實例中,UI引擎328、428產生UI元件以包括表示由影像捕捉裝置138及/或外部攝影機102捕捉之實體環境之影像資料之一部分的再現。在此等實例中,人工實境系統10、20實施本揭示內容之技術以藉由再現在圓形區段內的使用者110之實際實體環境同時維持由人工實境內容122表示之虛擬環境之其餘部分提供「直通」效果。在一項實例中,UI引擎328、428及顯現引擎322、422產生及顯現包括於UI元件中的影像資料之部分,使得影像資料對應於沿著來自圓形區段內之圍封區域604A之面向HMD 112的法線所處的實體環境之一部分。
在其他實例中,UI引擎328、428產生UI元件以包括視訊資料,諸如移動圖像。在此等實例中,人工實境系統10、20實施本揭示內容之技術以藉由播放圓形區段內之視訊同時維持由人工實境內容122表示之虛擬環境之其餘部分提供視訊「直通」效果或視訊「覆疊」效果。在另外其他實例中,UI引擎328、428產生UI元件以包括使用者可選擇選項之選單。在此等實例中,人工實境系統10、20實施本揭示內容之技術以提供圓形區段內之選單調用功能,同時維持由人工實境內容122表示之虛擬環境之其餘部分。在此等實例中,UI引擎328、428及顯現引擎322、422輸出在虛擬窗口內含有的內容。虛擬窗口之完整邊界或部分邊界係由手132所形成之內環指示。
圖7B繪示組態606,其中手132之食指與拇指形成圓形或大致上形成圓形。在考慮由手132之解剖屬性所引起的非平滑轉變之後,組態606之圓形或近似圓形大體上表示具有大體上邊界之閉合形狀。若手132符合組態606且維持於組態606達至少臨限時間段,則手勢偵測器324、424可識別圖7B中所繪示之閘控手勢。亦即,若手132之定位滿足保持實質上靜止達至少臨限時間段及手132之兩個手指經定位使得兩個手指形成組態606之圓形的兩個條件,則手勢偵測器324、424識別圖7B之閘控手勢。
為了有助於使用者體驗且基於人手之一般結構,若手132之拇指在臨限時間段期間結合至少一個其他手指(除拇指之外)形成圓形,則手勢偵測器324、424可偵測閘控手勢。本揭示內容之實例係關於手132之食指與拇指形成圓形。然而,將瞭解,手勢偵測器324、424可基於拇指與各個手指,諸如僅食指(所有四個其他手指中藉助於食指遮住其餘手指)或與其餘手指中除拇指及食指之外的任何一者或多者形成圓形而識別閘控手勢。
由手132根據組態606形成之圓形包括圍封區域604B。在一些實例中,若手132經定位使得來自組態606之圓形內的圍封區域604B中之任何地方的法線面向HMD 112,則手勢偵測器324、424可識別閘控手勢。在此等實例中,UI引擎328、428回應於手勢偵測器324、424識別出圖7B中所繪示之閘控手勢而產生UI元件,且可使顯現引擎322、422將UI元件顯現為相對於由人工實境內容122表示之虛擬環境之一部分的覆疊。
舉例而言,顯現引擎322、422可顯現由UI引擎328、428產生之UI元件(例如內容)以看起來在圍封區域604B內或至少部分地在圍封區域604B內。在一些實例中,UI引擎328、428產生UI元件以包括表示由影像捕捉裝置138及/或外部攝影機102捕捉之實體環境之影像資料之一部分的再現。在此等實例中,人工實境系統10、20實施本揭示內容之技術以藉由再現在圓形內的使用者110之實際實體環境同時維持由人工實境內容122表示之虛擬環境之其餘部分提供「直通」效果。在一項實例中,UI引擎328、428及顯現引擎322、422產生及顯現包括於UI元件中的影像資料之部分,使得影像資料對應於沿著來自圓形內之圍封區域604B之面向HMD 112的法線所處的實體環境之一部分。
在其他實例中,UI引擎328、428產生UI元件以包括視訊資料,諸如移動圖像。在此等實例中,人工實境系統10、20實施本揭示內容之技術以藉由播放圓形內之視訊同時維持由人工實境內容122表示之虛擬環境之其餘部分提供視訊「直通」效果或視訊「覆疊」效果。在另外其他實例中,UI引擎328、428產生UI元件以包括使用者可選擇選項之選單。在此等實例中,人工實境系統10、20實施本揭示內容之技術以提供圓形內之選單調用功能,同時維持由人工實境內容122表示之虛擬環境之其餘部分。在此等實例中,UI引擎328、428及顯現引擎322、422輸出在虛擬窗口內含有的內容。虛擬窗口之完整邊界或部分邊界係由手132所形成之內環指示。
圖8A及圖8B繪示手臂134之組態,人工實境系統10、20可將其偵測為刺激以用於在由人工實境內容122表示之虛擬環境內閘控某些UI元件。圖8A及圖8B繪示腕部702,其為緊鄰手132的手臂134之區段或段。手勢偵測器324、424可基於手臂134之組態使得腕部702實質上靜止達至少臨限時間段並經定位使得來自腕部702之法線面向HMD 112而識別閘控手勢。舉例而言,法線可表示自腕部702之任一點至HMD 112之前剛體繪製的直線。因而,圖8A繪示組態704,其中腕部702相對於HMD 112定位使得自腕部702繪製之虛法線與HMD 112之前剛體相交。腕部702之組態可模擬在固持控制器時的腕部組態或與該腕部組態實質上相同。以此方式,人工實境系統10、20充分利用使用者之自然方位,且可使能夠進行UI元件閘控,即使使用者正固持一個或多個控制器亦如此。
圖8B繪示在由人工實境內容122表示之虛擬實境環境中的手132及腕部702之表示。回應於手勢偵測器324、424基於腕部702實質上靜止並沿著自HMD 112之前剛體繪製的法線達臨限時間段而識別出手勢,UI引擎328、428可回應於經識別的手勢而產生UI元件,且顯現引擎322、422可顯現覆疊於腕部702之影像上的UI元件。藉助於圖8B中所繪示之組態706展示UI元件被覆疊之虛擬環境中的腕部702之表示。在圖8B之實例中,UI引擎328、428產生呈選單708之形式之UI元件且顯現引擎322、422顯現該UI元件。在其他實施方案中,UI引擎328、428可回應於手勢偵測器324、424識別出由組態704指示之手勢而產生不同UI元件,在該組態中腕部702實質上靜止達至少臨限時間段並經定位使得來自腕部702之法線面向HMD 112。
在顯現引擎322、422將選單708覆疊於腕部702之影像上的一些情況下,手勢偵測器324、424可在看起來覆疊於腕部702之影像上的選單708之一部分處偵測觸碰手勢。舉例而言,使用者110可使用他/她的另一隻手(非手132)來選擇選單708之該部分並藉由進行接觸或藉由以無接觸方式遮擋腕部702之點而提供自觸覺回饋。在此等實例中,UI引擎328、428可將表示實體環境之影像資料中之接觸點或遮擋點映射至如人工實境內容122之虛擬環境中所展示的選單708上之點。基於選單708上之經映射點之位置,人工實境系統10、20可識別待調用之特定使用者可選擇選項,以作為自使用者110接收之輸入的回應。
舉例而言,人工實境系統10、20可調用手勢偵測器324、424以識別指示上文所描述之輸入之選擇手勢。回應於手勢偵測器324、424識別出選擇手勢,且基於選單708上之觸覺輸入之對應座標,UI引擎328、428可產生經更新的UI元件,例如呈具有所選擇選項及/或一組其他可選擇選項之選單708之形式,該等其他可選擇選項係鑒於先前經由選擇輸入所選擇之選項。以此方式,人工實境系統10、20利用使用者110不間斷地凝視他的/她的自身腕部達某一時間段之手勢來閘控諸如選單708之UI元件,藉此在由人工實境內容122表示之虛擬環境內向使用者110提供可選擇選項。
圖9A至圖9C繪示根據本揭示內容之一些態樣的手132之各種組態,其形成握持與投擲手勢,人工實境系統10、20可回應於該握持與投擲手勢而閘控UI元件。在本揭示內容之各項實施方案中,UI引擎328、428可產生助理元件802,且顯現引擎322、422可經由電子顯示器203輸出助理元件802以看起來在由人工實境內容122表示之虛擬環境內。UI引擎328、428及顯現引擎322、422可輸出助理元件802以模擬無人機,其中助理元件802可看起來在虛擬環境中懸停於表示使用者110之化身上方或旁邊,且與化身同步地導覽虛擬環境。
圖9A繪示手132之握持組態810。手勢偵測器324、424可識別包括用以在對應於助理元件802之位置處形成握持組態810的手132之兩個或多於兩個手指之握持運動的手勢。舉例而言,手勢偵測器324、424可藉由判定手132之拇指在對應於助理元件802之第一部分的位置處並判定手132之除拇指之外的至少一個手指在對應於助理元件802之第二部分的位置處而偵測手132之握持運動之完成。舉例而言,助理元件802之第一部分與助理元件802之第二部分至少大致上完全相對。以此方式,手勢偵測器324、424可基於手132之手指圍繞助理元件802之虛擬位置形成鉗形(指端對指端)握持、圍繞助理元件802之虛擬位置形成捏縮(指肚對指肚)握持、蚓狀握持(其中手指接觸對應於助理元件802之位置,但並不在其周圍包繞)等等而偵測握持組態810之形成。
若手勢偵測器324、424識別用以在對應於助理元件802之虛擬位置的位置處形成握持組態810的手132之握持運動、繼之以手132相對於助理元件802之投擲運動的序列,則手勢偵測器324、424可偵測閘控手勢。手勢偵測器324、424可藉由識別握持組態810之釋放與手132及/或腕部702之特定移動的組合而偵測投擲運動。特定移動可伴隨握持組態810之釋放、跟隨握持組態810之釋放或與握持組態810之釋放部分地重疊。
圖9B繪示手勢偵測器324、424藉助於手132之手指中之一者或多者之向外輕擊運動而偵測的投擲運動。根據圖9B之投擲組態820,手勢偵測器324、424偵測握持運動810之釋放,其中手勢偵測器324、424判定形成握持組態810之拇指及其他手指不再在對應於助理元件802之虛擬位置的兩個方位(例如實質上完全相對方位)處。在圖9B之實例中,手勢偵測器324、424基於向外輕擊運動804識別後續投擲運動。
手勢偵測器324、424可基於形成握持組態810之拇指及其他手指之指骨之伸直而偵測向外輕擊運動804,其中伸直滿足最小速度以便模擬實體環境中之基於手指之投擲。為了模擬相對於諸如助理元件802之UI元件之投擲運動,UI引擎328、428及顯現引擎322、422可更新人工實境內容122以展示助理元件802遠離手132之移動,諸如模擬助理元件802之移動。
圖9C繪示手勢偵測器324、424藉助於腕部702之屈曲而偵測的投擲運動。根據圖9C之投擲組態830,手勢偵測器324、424偵測握持運動810之釋放,其中手勢偵測器324、424判定形成握持組態810之拇指及其他手指不再在對應於助理元件802之虛擬位置的兩個方位(例如實質上完全相對方位)處。在圖9C之實例中,手勢偵測器324、424基於腕部屈曲806識別後續投擲運動。
若腕部702之彎曲滿足最小速度以便模擬助理元件802之基於腕部之拋扔,則手勢偵測器324、424可基於腕部702之彎曲以及握持組態810之釋放或與握持組態810之釋放實質上同時偵測屈曲806。雖然圖9C繪示基於用以執行屈曲806的腕部702之彎曲移動的投擲組態830,但將瞭解,在其他使用案例情境下,手勢偵測器324、424可偵測基於腕部802之伸直運動的投擲屈曲。為了模擬相對於諸如助理元件802之UI元件之投擲運動,UI引擎328、428及顯現引擎322、422可更新人工實境內容122以展示助理元件802遠離手132之外展移動。
在各項實例中,回應於手勢偵測器324、424識別出包含用以形成握持組態810之握持運動、繼之以投擲運動820、830中之一者或兩者的閘控手勢,UI引擎328、428及顯現引擎322、422在由人工實境內容122表示之虛擬環境內閘控UI元件。在一些實例中,UI元件包括使用者可選擇選項之至少一個選單。亦即,UI引擎328、428可回應於手勢之識別而產生UI元件,且呈現引擎322、422可將UI元件顯現為對人工實境內容122中之至少一些的覆疊。
在一些使用案例情境下,手勢偵測器324、424在將UI元件顯現為對人工實境內容122之覆疊之後識別相對於助理元件之按住不放手勢。舉例而言,手勢偵測器324、424可偵測手132之手指中之一者在對應於助理元件802之虛擬位置的位置處的置放,其中此等一個或多個手指之置放保持於適當位置達至少臨限時間段。亦即,手勢偵測器324、424可藉由識別手132之手指中之至少一者定位於對應於人工實境內容中之助理元件的位置處且實質上靜止達至少臨限時間段而識別按住不放手勢。
手勢偵測器324、424可將按住不放手勢識別為在顯現引擎322、422將UI元件顯現為對人工實境內容122之覆疊之後發生。在此等實例中,顯現引擎322、422可回應於手勢偵測器324、424識別出在對應於助理元件802之虛擬位置的位置處的按住不放手勢而自人工實境內容移除UI元件之覆疊。以此方式,人工實境系統10、20可基於自使用者110接收之呈後續按住不放手勢之形式的輸入而去閘控UI元件(例如選單)。
圖10A及圖10B繪示手132及相對手臂934之各種組態,手勢偵測器324、424可使用其來偵測大體上對應於源自相對手臂934之預定義區域之握持(或「固持」或「抓握」)手勢的手勢。舉例而言,若手勢源自相對手臂934之相對腕部902,則手勢偵測器324、424可偵測握持與拉動手勢。在圖9之實例中,UI引擎328、428產生及顯現助理元件802以看起來被動地駐存於相對手臂934上。亦即,UI引擎328、428及顯現引擎322、422可將助理元件802輸出為經由電子顯示器203顯示之人工實境內容122之部分,使得助理元件802看起來疊加於相對手臂934上及附接至相對手臂934。舉例而言,UI引擎328、428及顯現引擎322、422可輸出助理元件802以看起來疊加於相對腕部902上及附接至相對腕部902。
手勢偵測器324、424可根據自影像捕捉裝置138接收之影像資料識別包括手132相對於助理元件802之握持運動之手勢。亦即,手勢偵測器324、424可偵測手132之手指之運動,該運動使拇指及一個或多個其他手指共同形成圖9A之握持組態810,或其他類型之握持(或「握持」或「固持」)組態。就在虛擬環境中握持助理元件802而言,握持運動包括手132之拇指經定位成接觸助理元件802之第一部分,及手132之至少一個手指(除拇指之外)經定位成接觸助理元件802之第二部分。
舉例而言,助理元件802之第一部分可與助理元件802之第二部分完全相對或至少大致上完全相對。此外,手臂134不同於相對手臂934,且手132為手臂134之部分。手臂134及相對手臂934表示在由人工實境內容122表示之虛擬環境中的使用者110之手臂。在一項實例中,手臂134表示使用者110之主要手臂,且相對手臂934表示使用者110之非主要手臂。
在圖10A之特定實例中,手勢偵測器324、424在握持組態810仍然完好時基於識別另一運動,亦即,拉動運動908,而識別手勢。拉動運動908表示遠離相對腕部902之外展移動。手勢偵測器324、424亦可在握持組態810仍然完好時識別額外運動,諸如由手臂134之水平移動及/或豎直移動及/或基於深度之平移移動所引起、由腕部702之屈曲所引起等等的手132之隨機移動。在此等實例中,只要握持組態810圍繞助理元件802之虛擬表示相對於手132之兩個或多於兩個手指仍然完好,UI引擎328、428及呈現引擎322、422就可在由人工實境內容122表示之虛擬環境內與手132之移動同步地移動助理元件802。
圖10B繪示UI引擎328、428及顯現引擎322、422基於助理元件802置放在由人工實境內容122表示之虛擬環境內之特定位置處而閘控UI選單912的情境。圖10B繪示UI引擎328、428及顯現引擎322、422回應於在握持組態810仍然完好時手132之拉動運動908之停止而閘控UI選單912的實例。在其他實例中,UI引擎328、428及顯現引擎322、422可回應於其他刺激,諸如由手勢偵測器324、424對握持組態810之釋放之判定等等,而閘控UI選單912。UI引擎328、428及顯現引擎322、422可回應於由手勢偵測器324、424偵測之此等手勢而閘控各種類型之UI元件。
UI選單912表示使用者可選擇選項之選單。UI引擎328、428及顯現引擎322、422將UI選單912輸出為對人工實境內容122之覆疊以看起來在虛擬環境內。在此實例中,手勢偵測器324、424可識別由手132執行之表示選單閘控手勢的後續手勢。在一些實例中,手勢偵測器324、424可偵測包括手132之與UI選單912之豎直軸線或豎直表面大致上平行之平移移動的滾動移動。滾動移動可表示滾動手勢,其中包括於UI選單912中之核取方塊與手132(或其水平延伸之手指)大致上平行,且UI引擎328、428可更新平行核取方塊以看起來呈「核取」形式。
圖11繪示源自相對腕部902之手132之握持與拉動手勢,及人工實境系統10、20可回應於該握持與拉動手勢之識別而調用之UI元件。在此等實例中,UI引擎328、428及顯現引擎322、422可將助理元件802輸出為對由人工實境內容122表示之虛擬環境中的相對腕部902之表示的覆疊。手勢偵測器324、424可基於偵測到用以在對應於虛擬環境中之助理元件802之位置處形成握持組態810的手132之兩個或多於兩個手指之握持運動,及手132之兩個或多於兩個手指在呈握持組態810的同時遠離(例如大體上垂直於)相對腕部902之拉動運動918,而識別握持與拉動手勢。
回應於識別出圖11中所繪示之握持與拉動手勢,UI引擎328、428及顯現引擎322、422可閘控諸如圓形(徑向)選單922之UI元件之顯現。在一些實例中,若拉動運動918在距相對腕部902之預定義距離內終止,則UI引擎328、428及顯現引擎322、422可僅僅閘控圓形選單922。然而,若拉動運動918終止於距相對腕部902之大於預定義距離的任何距離處,則UI引擎328、428及顯現引擎322、422可藉由亦閘控粒狀選單924之顯現而在使用者可選擇選項方面提供較精細粒度。粒狀選單924包括不包括於經由圓形選單922呈現之使用者可選擇選項之集合中的至少一個額外使用者可選擇選項。在一些此類情況下,粒狀選單924可包括表示在已選擇來自圓形選單922之選項之後變得可用之選項的一個或多個子選擇。在一些此類實例中,拉動運動918可在人工實境內容中被描繪為串或線,諸如呈虛擬繫鏈926之形式。被展示為拉動運動918之經偵測的運動可包括兩個相異部分,亦即,終止於預定義距離內以閘控圓形選單922之第一拉動運動,及超出預定義距離以閘控粒狀選單924外加圓形選單922之第二拉動運動。
在偵測到如所描述之握持與拉動手勢並顯現圓形選單922及在一些實例中為粒狀選單924後,手勢偵測器324、424就可進一步偵測大體上垂直於運動918之平面中之徑向運動(亦即,相對於由運動918界定之軸線之徑向運動)。回應於偵測到徑向運動,UI引擎328、428顯現助理元件802之顯示以選擇及取消選擇圓形選單922及/或粒狀選單924內之UI元件。
手勢偵測器324、424亦可識別手132之拇指與其他握持手指之間的接觸停止,藉此偵測握持組態810之釋放。在一些此類實例中,UI引擎328、428及顯現引擎322、422可回應於手勢偵測器324、424識別出握持組態810之釋放而移除圓形選單922及(在被閘控的情況下)粒狀選單924之覆疊。以此方式,關於圖11所描述的本揭示內容之技術運用添加之彈性或磁性模擬在調用UI元件方面模擬抽屜或文件櫃,其中在手握持釋放後就將虛擬抽屜「關閉」。
本揭示內容中所描述之技術可至少部分地實施於硬體、軟體、韌體或其任何組合中。舉例而言,所描述技術之各種態樣可實施於一個或多個處理器內,包括一個或多個微處理器、DSP、特殊應用積體電路(ASIC)、現場可程式閘陣列(FPGA),或任何其他等效積體或離散邏輯電路系統,以及此類組件之任何組合。術語「處理器」或「處理電路系統」大體上可指以下各者中之任一者:前述邏輯電路系統、固定功能電路系統、可程式電路系統,無論係單獨抑或與其他邏輯電路系統組合,或任何其他等效電路系統。包含硬體之控制單元亦可執行本揭示內容之技術中之一者或多者。
此類硬體、軟體及韌體可實施於同一裝置內或分開的裝置內,以支援本揭示內容中所描述之各種操作及功能。另外,可將所描述單元、模組或組件中之任一者一起實施或單獨實施為離散但可互操作之邏輯裝置。將不同特徵作為模組或單元之描述意欲突出不同功能性態樣,且未必暗示此類模組或單元必須由分開的硬體或軟體組件實現。確切而言,與一個或多個模組或單元相關聯之功能性可由分開的硬體或軟體組件執行,或整合於共同或分開的硬體或軟體組件內。
本揭示內容中所描述之技術亦可體現或編碼於含有指令之諸如電腦可讀取儲存媒體之電腦可讀取媒體中。嵌入或編碼於電腦可讀取儲存媒體中之指令可例如在執行指令時使可程式處理器或其他處理器執行方法。電腦可讀取儲存媒體可包括隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可程式唯讀記憶體(PROM)、可抹除可程式唯讀記憶體(EPROM)、電子可抹除可程式唯讀記憶體(EEPROM)、快閃記憶體、硬碟、CD-ROM、軟碟、卡匣、磁性媒體、光學媒體,或其他電腦可讀取媒體。
如本文中藉助於各項實例所描述,本揭示內容之技術可包括人工實境系統或結合人工實境系統而實施。如所描述,人工實境為在呈現給使用者之前已以某一方式調整的實境形式,其可包括例如虛擬實境(VR)、擴增實境(AR)、混合實境(MR)、混雜實境,或其某一組合及/或衍生物。人工實境內容可包括完全產生之內容或與經捕捉內容(例如真實世界相片)組合之經產生內容。人工實境內容可包括視訊、音訊、觸覺回饋或其某一組合,且其中之任一者可在單一通道中或在多個通道中呈現(諸如對檢視者產生三維效果之立體視訊)。另外,在一些實施例中,人工實境可與例如用以在人工實境中產生內容及/或用於人工實境中(例如在人工實境中執行活動)之應用程式、產品、配件、服務或其某一組合相關聯。提供人工實境內容之人工實境系統可實施於各種平台上,包括連接至主機電腦系統之頭戴式顯示器(HMD)、獨立HMD、行動裝置或計算系統,或能夠向一個或多個檢視者提供人工實境內容之任何其他硬體平台。
10:人工實境系統 20:人工實境系統 90:外部感測器 102A:外部攝影機 102B:外部攝影機 104:網路 106:控制台 108A:真實世界物件 108B:真實世界物件 108C:真實世界物件 110:使用者 110A:使用者 110B:使用者 110C:使用者 112:頭戴式裝置/頭戴式顯示器(HMD) 112A:頭戴式裝置/頭戴式顯示器(HMD) 112B:頭戴式裝置/頭戴式顯示器(HMD) 112C:頭戴式裝置/頭戴式顯示器(HMD) 114A:控制器 114B:控制器 120:化身 120A:化身 120B:化身 122:人工實境內容 124:圖形使用者介面元件/UI選單 126:圖形使用者介面元件/UI元件 128A:虛擬物件 128B:虛擬物件 128C:虛擬物件 130:當前視場 130A:視場 130B:視場 132:手 132A:手 132B:手 134:手臂 136:虛擬手 138:影像捕捉裝置 138A:整合式影像捕捉裝置 138B:整合式影像捕捉裝置 203:電子顯示器 206:運動感測器 210:內部控制單元 302:處理器 304:記憶體 305:作業系統 307:軟體組件 312:處理器 314:記憶體 315:I/O介面 316:作業系統 317:軟體組件/軟體應用程式 320:應用程式引擎 322:顯現引擎 324:手勢偵測器 326:姿勢追蹤器 328:使用者介面引擎 330:手勢庫 340:應用程式引擎 417:軟體組件/軟體應用程式 422:顯現引擎 424:手勢偵測器 426:姿勢追蹤器 428:使用者介面引擎 430:手勢庫 440:應用程式引擎 450:程序 452:步驟 454:步驟 456:決策區塊 458:步驟 502:組態 504:組態 506:選單 508:選單 602:組態 604A:圍封區域 604B:圍封區域 606:組態 702:腕部 704:組態 706:組態 708:選單 802:助理元件 804:向外輕擊運動 806:腕部屈曲 810:握持組態 820:投擲組態 830:投擲組態 902:相對腕部 908:拉動運動 912:UI選單 918:拉動運動 922:圓形選單 924:粒狀選單 926:虛擬繫鏈 934:相對手臂
[圖1A]為描繪根據本揭示內容之技術之實例人工實境系統的繪示,該人工實境系統在人工實境環境內呈現及控制使用者介面元件。
[圖1B]為描繪根據本揭示內容之技術之另一實例人工實境系統的繪示。
[圖2]為描繪根據本揭示內容之技術而操作之實例HMD的繪示。
[圖3]為展示圖1A、圖1B之人工實境系統之控制台及HMD之實例實施方案的方塊圖。
[圖4]為描繪根據本揭示內容之技術之實例的方塊圖,在該實例中由圖1A、圖1B之人工實境系統之HMD執行手勢偵測及使用者介面產生。
[圖5]為繪示本揭示內容之人工實境系統可根據本揭示內容之手勢驅動之UI元件閘控技術執行之程序的流程圖。
[圖6A]至[圖6D]繪示手之基於角點之閘控組態以及UI元件,本揭示內容之人工實境系統可回應於手之基於角點之閘控組態之識別而調用該等UI元件。
[圖7A]及[圖7B]繪示手之圓形邊界組態,本揭示內容之人工實境系統可將其偵測為刺激以用於在由人工實境內容表示之虛擬環境內閘控某些UI元件。
[圖8A]及[圖8B]繪示手臂之組態,本揭示內容之人工實境系統可將其偵測為刺激以用於在由人工實境內容表示之虛擬環境內閘控某些UI元件。
[圖9A]至[圖9C]繪示根據本揭示內容之一些態樣的手之各種組態,其形成握持與投擲手勢,本揭示內容之人工實境系統可回應於該握持與投擲手勢而閘控UI元件。
[圖10A]及[圖10B]繪示手及相對手臂之各種組態,本揭示內容之手勢偵測器可使用其來偵測大體上對應於源自相對手臂之預定義區域之握持(或「固持」或「抓握」)手勢的手勢。
[圖11]繪示源自相對腕部之手之握持與拉動手勢以及UI元件,本揭示內容之人工實境系統可回應於該握持與拉動手勢之識別而調用該等UI元件。
貫穿諸圖及實施方式,相同元件符號係指相同元件。
10:人工實境系統
90:外部感測器
104:網路
106:控制台
110:使用者
112:頭戴式裝置/頭戴式顯示器(HMD)
120:化身
122:人工實境內容
124:圖形使用者介面元件/UI選單
126:圖形使用者介面元件/UI元件
128A:虛擬物件
128B:虛擬物件
130:當前視場
132:手
134:手臂
136:虛擬手
138:影像捕捉裝置

Claims (15)

  1. 一種人工實境系統,其包含: 一影像捕捉裝置,其被配置以捕捉表示一實體環境之影像資料; 一頭戴式顯示器(HMD),其被配置以輸出人工實境內容; 一手勢偵測器,其被配置以自該影像資料識別包含一腕部之一組態之一手勢,該腕部實質上靜止達至少一臨限時間段並經定位使得來自該腕部之一法線面向該HMD; 一使用者介面(UI)引擎,其被配置以回應於經識別的手勢而產生一UI元件;及 一顯現引擎,其被配置以顯現覆疊於該腕部之一影像上之該UI元件。
  2. 如請求項1之人工實境系統,其中覆疊於該腕部之該影像上之該UI包含一選單,且其中該手勢偵測器被配置以在覆疊於該腕部之該影像上之該UI元件之一部分處偵測一觸碰手勢。
  3. 如請求項2之人工實境系統, 其中該UI引擎進一步被配置以回應於該手勢偵測器偵測到該觸碰手勢而產生一經更新的UI元件,且 其中該顯現引擎進一步被配置以顯現覆疊於該腕部之該影像上之該經更新的UI元件。
  4. 如請求項1至3中任一項之人工實境系統,其中為了偵測包含實質上靜止達至少該臨限時間段並經定位使得來自該腕部之該法線面向該HMD的該腕部之該手勢,該手勢偵測器被配置以判定該手勢由一手勢庫中之一項目來表示。
  5. 如請求項4之人工實境系統,其中該項目包括於該手勢庫之一個或多個項目中,該一個或多個項目中之每一者對應於一預定義手勢。
  6. 如請求項1至3中任一項之人工實境系統,其中該影像捕捉裝置整合於該HMD內。
  7. 一種方法,其包含: 由一頭戴式顯示器(HMD)輸出人工實境內容; 由該HMD捕捉表示一實體環境之影像資料; 由一手勢偵測器自該影像資料識別包含一腕部之一手勢,該腕部實質上靜止達至少一臨限時間段並經定位使得來自該腕部之一法線面向該HMD; 由一使用者介面(UI)引擎回應於經識別的手勢而產生一UI元件;及 由一顯現引擎顯現覆疊於該腕部之一影像上之該UI元件。
  8. 如請求項7之方法,其中覆疊於該腕部之該影像上之該UI包含一選單,該方法進一步包含由該手勢偵測器在覆疊於該腕部之該影像上之該UI元件之一部分處偵測一觸碰手勢。
  9. 如請求項8之方法,其進一步包含: 由該UI引擎回應於該手勢偵測器偵測到該觸碰手勢而產生一經更新的UI元件;及 由該顯現引擎顯現覆疊於該腕部之該影像上之該經更新的UI元件。
  10. 如請求項7至9中任一項之方法,其中偵測該手勢包含由該手勢偵測器判定該手勢由一手勢庫中之一項目來表示。
  11. 如請求項10之方法,其中該項目包括於該手勢庫之一個或多個項目中,該一個或多個項目中之每一者對應於一預定義手勢。
  12. 一種非暫時性電腦可讀取儲存媒體,其被編碼有在執行時使一人工實境系統之處理電路系統進行以下操作的指令: 經由一頭戴式顯示器(HMD)輸出人工實境內容; 自該HMD接收表示一實體環境之影像資料; 自該影像資料識別包含一腕部之一手勢,該腕部實質上靜止達至少一臨限時間段並經定位使得來自該腕部之一法線面向該HMD; 回應於經識別的手勢而產生一使用者介面(UI)元件;及 顯現覆疊於該腕部之一影像上之該UI元件。
  13. 如請求項12之非暫時性電腦可讀取儲存媒體,其中覆疊於該腕部之該影像上之該UI包含一選單,其中該非暫時性電腦可讀取儲存媒體被進一步編碼有在執行時使該人工實境系統之該處理電路系統在覆疊於該腕部之該影像上之該UI元件之一部分處偵測一觸碰手勢的指令。
  14. 如請求項13之非暫時性電腦可讀取儲存媒體,其被進一步編碼有在執行時使該人工實境系統之該處理電路系統進行以下操作的指令: 回應於手勢偵測器偵測到該觸碰手勢而產生一經更新的UI元件;及 顯現覆疊於該腕部之該影像上之該經更新的UI元件。
  15. 如請求項12至14中任一項之非暫時性電腦可讀取儲存媒體,其中使該處理電路系統偵測該手勢的該等指令包含在執行時使該人工實境系統之該處理電路系統判定該手勢由一手勢庫中之一項目來表示的指令;且較佳地其中該項目包括於該手勢庫之一個或多個項目中,該一個或多個項目中之每一者對應於一預定義手勢。
TW109118810A 2019-06-07 2020-06-04 用於人工實境系統的手臂視線驅動的使用者介面元件閘控 TW202101172A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/435,060 US20200387286A1 (en) 2019-06-07 2019-06-07 Arm gaze-driven user interface element gating for artificial reality systems
US16/435,060 2019-06-07

Publications (1)

Publication Number Publication Date
TW202101172A true TW202101172A (zh) 2021-01-01

Family

ID=71842805

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109118810A TW202101172A (zh) 2019-06-07 2020-06-04 用於人工實境系統的手臂視線驅動的使用者介面元件閘控

Country Status (7)

Country Link
US (1) US20200387286A1 (zh)
EP (1) EP3980869A1 (zh)
JP (1) JP2022535325A (zh)
KR (1) KR20220012990A (zh)
CN (1) CN113892074A (zh)
TW (1) TW202101172A (zh)
WO (1) WO2020247464A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10477090B2 (en) * 2015-02-25 2019-11-12 Kyocera Corporation Wearable device, control method and non-transitory storage medium
US11043192B2 (en) * 2019-06-07 2021-06-22 Facebook Technologies, Llc Corner-identifiying gesture-driven user interface element gating for artificial reality systems
US11455078B1 (en) 2020-03-31 2022-09-27 Snap Inc. Spatial navigation and creation interface
US11348155B2 (en) * 2020-05-28 2022-05-31 Diamonds Direct, LC Step through process of generating custom jewelry
CN116057451A (zh) * 2020-09-03 2023-05-02 三星电子株式会社 改变显示器的设置的方法及电子装置
KR20230119005A (ko) * 2020-12-22 2023-08-14 스냅 인코포레이티드 안경류 디바이스 상의 제스처 제어
US11797162B2 (en) 2020-12-22 2023-10-24 Snap Inc. 3D painting on an eyewear device
US12105283B2 (en) 2020-12-22 2024-10-01 Snap Inc. Conversation interface on an eyewear device
US11782577B2 (en) 2020-12-22 2023-10-10 Snap Inc. Media content player on an eyewear device
KR20230116938A (ko) 2020-12-22 2023-08-04 스냅 인코포레이티드 안경류 디바이스 상의 미디어 콘텐츠 플레이어
CN112650391A (zh) * 2020-12-23 2021-04-13 网易(杭州)网络有限公司 基于虚拟现实的人机交互方法、装置、设备及存储介质
KR102633495B1 (ko) * 2021-10-14 2024-02-06 주식회사 피앤씨솔루션 손목과 트리거 제스처의 단계적 인식을 통한 앱 라이브러리 동작 방법 및 앱 라이브러리가 동작하는 머리 착용형 디스플레이 장치
US11899833B2 (en) * 2022-05-09 2024-02-13 Shopify Inc. Systems and methods for interacting with augmented reality content using a dual-interface
US20240012238A1 (en) * 2022-07-06 2024-01-11 Htc Corporation Tracking apparatus, method, and non-transitory computer readable storage medium thereof
KR102599022B1 (ko) * 2022-11-25 2023-11-06 주식회사 피앤씨솔루션 증강현실 글래스 장치의 전자제품 조작 방법 및 전자제품 조작 기능이 있는 증강현실 글래스 장치
CN116492675B (zh) * 2023-04-13 2024-04-16 因子(深圳)艺术科技有限公司 一种3d模型实时渲染方法、计算机设备与存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140046922A1 (en) * 2012-08-08 2014-02-13 Microsoft Corporation Search user interface using outward physical expressions
US10157593B2 (en) * 2014-02-24 2018-12-18 Microsoft Technology Licensing, Llc Cross-platform rendering engine
WO2015192117A1 (en) * 2014-06-14 2015-12-17 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US10657367B2 (en) * 2017-04-04 2020-05-19 Usens, Inc. Methods and systems for hand tracking

Also Published As

Publication number Publication date
CN113892074A (zh) 2022-01-04
WO2020247464A1 (en) 2020-12-10
EP3980869A1 (en) 2022-04-13
KR20220012990A (ko) 2022-02-04
US20200387286A1 (en) 2020-12-10
JP2022535325A (ja) 2022-08-08

Similar Documents

Publication Publication Date Title
TW202101172A (zh) 用於人工實境系統的手臂視線驅動的使用者介面元件閘控
US11003307B1 (en) Artificial reality systems with drawer simulation gesture for gating user interface elements
US11461955B2 (en) Holographic palm raycasting for targeting virtual objects
US10890983B2 (en) Artificial reality system having a sliding menu
JP7574208B2 (ja) 摘まんで引くジェスチャーに基づいた人工現実システムにおける入力の検出
US10921879B2 (en) Artificial reality systems with personal assistant element for gating user interface elements
TW202101170A (zh) 用於人工實境系統的角點識別手勢驅動的使用者介面元件閘控
US11294475B1 (en) Artificial reality multi-modal input switching model
US11086475B1 (en) Artificial reality systems with hand gesture-contained content window
US10852839B1 (en) Artificial reality systems with detachable personal assistant for gating user interface elements
TW202105133A (zh) 在人工實境環境中使用周邊裝置的虛擬使用者介面
JP2022535315A (ja) 自己触覚型仮想キーボードを有する人工現実システム
US11422669B1 (en) Detecting input using a stylus in artificial reality systems based on a stylus movement after a stylus selection action
JP2022534639A (ja) 指マッピング自己触覚型入力方法を有する人工現実システム