TW202303350A - 使用自追踪控制器的身體姿勢估計 - Google Patents

使用自追踪控制器的身體姿勢估計 Download PDF

Info

Publication number
TW202303350A
TW202303350A TW111113233A TW111113233A TW202303350A TW 202303350 A TW202303350 A TW 202303350A TW 111113233 A TW111113233 A TW 111113233A TW 111113233 A TW111113233 A TW 111113233A TW 202303350 A TW202303350 A TW 202303350A
Authority
TW
Taiwan
Prior art keywords
user
controller
pose
headset
key points
Prior art date
Application number
TW111113233A
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 TW202303350A publication Critical patent/TW202303350A/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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • 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/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • 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
    • G06F3/012Head tracking input arrangements
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant 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/017Head mounted
    • G02B2027/0178Eyeglass type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Optics & Photonics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

在一個具體實例中,一種計算系統可基於由一使用者握持的一控制器俘獲之感測器資料來判定該控制器之一姿勢。該系統可基於由控制器攝影機俘獲之影像及(2)該控制器姿勢來判定與該使用者之一身體之一第一部分相關聯的一第一組關鍵點之位置。該系統可基於由該使用者佩戴的一頭戴式器件俘獲之感測器資料來判定該頭戴式器件之一姿勢。該系統可基於由頭戴式器件攝影機俘獲之影像及(2)該頭戴式器件之該姿勢來判定與該使用者之該身體之一第二部分相關聯的一第二組關鍵點之位置。該系統可至少基於該第一組關鍵點及該第二組關鍵點之該等位置來判定該使用者之一全身姿勢。

Description

使用自追踪控制器的身體姿勢估計
本發明大體上係關於一種人類-電腦互動技術,詳言之係關於追踪使用者身體姿勢。 相關申請案之交互參照
本申請案主張2021年6月21日申請的名稱為「BODY POSE ESTIMATION USING SELF-TRACKED CONTROLLERS」之美國非臨時申請案第17/353,696號之權利及優先權,該案之內容特此以全文引用方式併入。
人工實境為在向使用者呈現之前已以某一方式調整的實境形式,其可包括例如虛擬實境(virtual reality;VR)、擴增實境(AR)、混合實境(mixed reality;MR)、混雜實境或其某一組合及/或衍生物。人工實境內容可包括完整產生之內容或與所俘獲內容(例如,真實世界相片)組合的產生之內容。人工實境內容可包括視訊、音訊、觸覺反饋或其某一組合,其中之任一者可在單通道中或在多個通道中(諸如,對檢視者產生三維效應之立體視訊)呈現。人工實境可與例如用以在人工實境中創造內容及/或用於人工實境中(例如,在人工實境中執行活動)之應用程式、產品、配件、服務或其某一組合相關聯。提供人工實境內容之人工實境系統可實施於各種平台上,包括連接至主機電腦系統之頭戴式顯示器(head-mounted display;HMD)、獨立式HMD、行動裝置或計算系統或能夠將人工實境內容提供至一或多個檢視者之任何其他硬體平台。
本文中所描述的特定具體實例係關於使用與一或多個控制器整合以估計使用者之全身姿勢(包括不為頭戴式顯示器(HMD)攝影機可見的身體部位)的攝影機之系統及方法。在特定具體實例中,控制器可為具有與該控制器整合之一或多個整合式攝影機(亦稱作內外攝影機)及IMU的自追踪控制器。自追踪控制器可使用其內外攝影機及IMU以執行即時定位與地圖建構(simultaneous localization and mapping;SLAM)以用於自定位。由控制器攝影機俘獲之影像可用於估計使用者身體之姿勢,詳言之用於估計不為HMD攝影機可見的身體部位(例如,腿、腳、膝部等)。在特定具體實例中,控制可不需要為自追踪。實際上,控制器之在3D空間中的位置或部位可使用HMD攝影機或感測器來判定。
作為實例而非作為限制,系統可使用HMD攝影機以追踪為HMD攝影機可見的使用者身體部位(例如,使用者之頭部、肩部、臂、手、手指等),以判定與此等可見身體部位相關聯的一第一組關鍵點。同時,控制器可使用其內外攝影機以追踪不為HMD攝影機可見的使用者身體部位,以判定與使用者之此等身體部位(例如,下部身體部位,諸如膝部等)相關聯的一第二組關鍵點。每一控制器攝影機可自其自身視角俘獲使用者身體部位之影像,且此等影像可用以判定落在彼控制器攝影機之FOV內的此等身體部位之對應關鍵點。控制器可基於控制器攝影機之3D位置、攝影機之固有/非固有參數及由攝影機俘獲之影像來判定與膝部、腿、腳等相關的關鍵點之3D部位。每一控制器可自不同視角俘獲身體姿勢資訊且多個控制器可彼此合作及協調以判定使用者身體之關鍵點的更準確估計。每一控制器本身可具有使用者身體姿勢之不完整估計但多個控制器總體上可判定關鍵點之準確估計。系統可組合藉由每一控制器之控制器攝影機(例如,用於下部身體)判定的關鍵點與基於HMD攝影機(例如,用於上部身體)判定的關鍵點並將此等關鍵點饋入至逆動態最佳化器中以判定對於使用者之全身的估計。
為保護使用者之隱私,由每一控制器攝影機俘獲之影像可在控制器內本地端地進行處理,且控制器可僅僅發出經處理資訊(諸如關鍵點之3D位置)至任務為基於經判定關鍵點來估計使用者身體姿勢的計算單元(例如,頭戴式器件中)。在一些具體實例中,由控制器俘獲之影像及控制器之姿勢資訊可經發送至頭戴式器件以用於處理但將經嚴格地在本地端保存於頭戴式器件上且將不發送至任何遠端電腦。
為基於關鍵點來估計使用者身體姿勢,系統可使用肌肉-骨架模型以擬合全部關鍵點以判定使用者之最可能身體姿勢。舉例而言,即使使用者身體之一部位(例如,臂)不為任何攝影機完全可見,系統仍可使用肌肉-骨架模型以基於整個擬合結果來估計身體部位之姿勢。肌肉-骨架模型可強加一些約束條件(例如,前臂可僅僅前向彎曲,不後向彎曲),且系統可對於所觀測關鍵點使用此等約束條件以估計全身姿勢。全部此等約束條件可經施加於逆動態最佳化器上以算出符合約束條件之最可能全身姿勢。在判定使用者身體姿勢之後,系統可針對於基於與人體相關之知識而判定的數個規則來檢查所估計姿勢以確保所估計姿勢不違反人體之自然約束條件。
在特定具體實例中,系統可使用ML模型以基於來自先前訊框之關鍵點而估計與不為任何攝影機直接可見的使用者身體部位相關聯的關鍵點。舉例而言,系統可運用基於先前訊框(例如,在隨著時間滑動之時間窗內)而判定的使用者身體之關鍵點來訓練時間神經網路(temporal neural network;TNN)以預測使用者身體之當前關鍵點,甚至使用者身體之一些部位當前不為任何攝影機可見。此後,系統可饋入使用者身體之所估計關鍵點至逆動態最佳化器以判定使用者之全身姿勢(基於肌肉-骨架模型約束條件)。
本文所揭示之具體實例僅僅為實例,且本發明之範疇不限於該等具體實例。特定具體實例可包括上文所揭示之具體實例的組件、元件、特徵、功能、操作或步驟中之全部、一些或無一者。根據本發明之具體實例特定言之揭示於針對於方法、儲存媒體、系統及電腦程式產品的所附申請專利範圍中,其中一個請求項類別(例如方法)中提及的任何特徵亦可在另一請求項類別(例如系統)中主張。出於僅僅形式原因而選擇所附申請專利範圍中的依賴性或反向參考。然而,亦可主張由對任何前述請求項之反向故意參考(在特定多個依賴性方面)產生的任何主題,以使得請求項及其特徵之任何組合被揭示且可無關於在所附申請專利範圍中選擇的依賴性而主張。可主張主題不僅包含如所附申請專利範圍中陳述的特徵之組合而且包含請求項中特徵之任何其他組合,其中請求項中所提及的每一特徵可與任何其他特徵或請求項中之其他特徵組合予以合併。此外,本文中描述或描繪的具體實例及特徵中之任一者可在獨立請求項中及/或在與本文中描述或描繪的任何具體實例或特徵或與所附申請專利範圍之特徵中之任一者的任何組合中主張。
現有AR/VR系統可基於由HMD攝影機俘獲之影像來估計使用者之身體姿勢。然而,此方法具有一些限制性。舉例而言,HMD上之攝影機不能看到使用者身體之下部部位(例如,腿、腳、膝部),從而導致使用者之所估計身體姿勢不完整。此可在其中使用者預期看到彼此之全身虛擬化身或全身姿勢的情形中負面地影響使用者體驗。
為解決此問題,系統之特定具體實例可使用具有攝影機之一或多個自追踪控制器以俘獲不為HMD攝影機可見的身體部位之影像以估計使用者之全身姿勢。自追踪控制器可執行即時定位與地圖建構(SLAM)以用於自定位。由控制器攝影機俘獲之影像可用於身體姿勢估計,詳言之用於判定不為HMD攝影機可見的身體部位(例如,腿、腳、膝部等)之姿勢。舉例而言,控制器可基於以下各者判定與膝部、腿、腳等相關的關鍵點之3D部位:(1)控制器攝影機之3D位置及姿勢(例如,朝向);(2)攝影機之固有/非固有參數(例如,視場(field of view;FOV));及(3)由攝影機俘獲之影像。每一控制器可自不同視角俘獲身體姿勢資訊且多個控制器可彼此合作及協調以判定使用者身體之關鍵點的更準確估計。每一控制器本身可具有使用者身體之不完整資訊,但多個控制器總體上可判定關鍵點之準確估計。系統可組合基於全部控制器之控制器攝影機資料(例如,用於下部身體)判定的關鍵點與基於HMD攝影機(例如,用於上部身體)判定的關鍵點並將此等關鍵點饋入至逆動態最佳化器中以判定對於使用者之全身的估計。
藉由使用來自HMD攝影機及控制器攝影機兩者之影像資料,系統之特定具體實例可更準確地估計全身姿勢,甚至使用者身體之一些部位不為HMD攝影機或控制器攝影機可見時亦如此。藉由總體上使用多個控制器,即使每一控制器可僅僅感知使用者身體之一部分,系統之特定具體實例仍可準確地估計使用者之全身姿勢,此係因為多個控制器當工作時總體上可提供關於使用者身體姿勢的更完整資訊。藉由將影像資料限制於本地端系統(例如,在控制器、頭戴式器件或本地端電腦內進行處理),系統之特定具體實例可對使用者之隱私提供強保護。藉由提供全身姿勢估計,系統之特定具體實例可向使用者提供較佳使用者體驗以與人工實境系統互動及/或彼此互動(例如,看到使用者虛擬化身之全身姿勢)。
1A說明具有自追踪控制器106之實例虛擬實境系統100A。在特定具體實例中,虛擬實境系統100A可包括頭戴式器件104、控制器106及計算系統108。使用者102可佩戴頭戴式器件104,該頭戴式器件可將視覺人工實境內容顯示給使用者102。頭戴式器件104可包括音訊裝置,其可將音訊人工實境內容提供給使用者102。在特定具體實例中,頭戴式器件104可包括可俘獲環境之影像及視訊的一或多個攝影機。舉例而言,頭戴式器件104可包括用以俘獲使用者102前方之影像的前置攝影機105A及105B,且可包括用以俘獲使用者身體之影像的一或多個朝下攝影機(例如,105C)。頭戴式器件104可包括眼睛追踪系統以判定使用者102之聚散度(vergence)距離。頭戴式器件104可稱為頭戴式顯示器(HMD)。控制器106可包括觸控板及一或多個按鈕。控制器106可自使用者102接收輸入,且將該等輸入中繼至計算系統108。控制器106亦可將觸覺反饋提供至使用者102。
在特定具體實例中,控制器106可為自追踪控制器。術語「自追踪」控制器可指可使用其整合式感測器及/或攝影機來判定其在3D空間內之自身位置或部位(相對於頭戴式器件或環境中之其他物件)的控制器。自追踪控制器可包括一或多個感測器(例如,IMU、加速度感測器、空間角感測器、姿態感測器)及攝影機,且此等感測器及攝影機之資料可用於執行自定位。舉例而言,自追踪控制器106可包括可用以追踪使用者身體姿勢及/或運動之一或多個感測器及攝影機,包括例如但不限於RGB攝影機、熱攝影機、紅外攝影機、雷達、LiDAR、結構化光感測器、慣性量測單元(inertial measurement unit;IMU)、陀螺儀感測器、加速計、空間角感測器、姿態感測器等。在特定具體實例中,自追踪控制器106可包括用以俘獲周圍環境之影像的一或多個攝影機(例如,攝影機107A、107B及107C)。舉例而言,控制器攝影機107A、107B及107C可用以追踪可或可不為頭戴式器件攝影機(例如,105A、105B及105C)可見的使用者身體部位以判定使用者102之全身姿勢。計算系統108可經由纜線或無線通信連接件連接至頭戴式器件104及控制器106。計算系統108可控制頭戴式器件104及控制器106以將人工實境內容提供至使用者102且可自使用者102接收輸入。計算系統108可為獨立式主機電腦系統、與頭戴式器件104整合之機載電腦系統、行動裝置,或能夠將人工實境內容提供至使用者102及自該使用者接收輸入之任何其他硬體平台。
1B說明具有自追踪控制器126之實例擴增實境系統100B。擴增實境系統100B可包括頭戴式顯示器(HMD)110(例如,AR眼鏡),其包含框架112、一或多個顯示器114A及114B及計算系統120等。顯示器114可為透明或半透明的,從而允許佩戴HMD 110之使用者經由顯示器114A及114B觀看以看到真實世界,且同時,可將視覺人工實境內容顯示給使用者。HMD 110可包括音訊裝置,其可將音訊人工實境內容提供至使用者。在特定具體實例中,HMD 110可包括一或多個攝影機(例如,117A及117B),其可俘獲周圍環境之影像及視訊。HMD 110可包括眼球追踪系統以追踪佩戴HMD 110之使用者的聚散度移動。擴增實境系統100B可進一步包括具有觸控板及一或多個按鈕之控制器126。控制器126可自使用者接收輸入且將輸入中繼至計算系統120。控制器126可將觸覺反饋提供至使用者。
在特定具體實例中,控制器126可為包括可用以追踪使用者身體姿勢及/或運動之一或多個感測器的自追踪控制器。感測器可為或包括例如但不限於RGB攝影機、熱攝影機、紅外攝影機、雷達、LiDAR、結構化光感測器、慣性量測單元(IMU)、陀螺儀感測器、加速計、空間角感測器、姿態感測器等。在特定具體實例中,控制器126可包括用以俘獲周圍環境中之影像的一或多個攝影機(例如,127A、127B、127C)。舉例而言,控制器攝影機(127A、127B、127C)可用以追踪不為HMD攝影機117A及117B可見的使用者身體部位。計算系統120可經由纜線或無線連接件連接至HMD 110及控制器126。計算系統120可控制HMD 110及控制器126以將擴增實境內容提供至使用者且自使用者接收輸入。計算系統120可為獨立式主機電腦系統、與HMD 110整合之機載電腦系統、行動裝置,或能夠將人工實境內容提供至使用者及自該使用者接收輸入之任何其他硬體平台。
2A說明使用頭戴式器件感測器及控制器感測器以追踪使用者身體姿勢之實例機制200A。在特定具體實例中,頭戴式器件210可包括一或多個感測器(例如,IMU)及攝影機(例如,211、213)。攝影機(例如,211、213)可具有不同視場(FOV)。舉例而言,攝影機211可為具有FOV 212之前置攝影機且攝影機213可具有FOV 214之朝下攝影機。攝影機211可用以追踪在周圍環境中之在使用者201前方的物件。攝影機213可用以追踪接近於使用者身體的物件及使用者之上部身體部位(例如,在使用者身體前方的使用者之臂及/或手、在使用者身體前方的使用者之腳及腿、使用者之上部身體、控制器220等)。在特定具體實例中,每一控制器(例如,220、230)可包括具有不同FOV之一或多個攝影機(例如,221、223、225)。取決於控制器之3D位置及姿勢(例如,方向),控制器攝影機之FOV可面向不同方向且控制器攝影機可用以追踪使用者之不同身體部位。舉例而言,控制器220可在把手部分之底部具有攝影機221,其FOV 222面向下(相對於控制器自身)。攝影機221可用以追踪在使用者身體前方的物件及使用者之下部身體部位(例如,在使用者身體前方的使用者之腿及腳)。作為另一實例,具有FOV 224之攝影機223可用以追踪在使用者之下部身體部位的物件。具有FOV 226之攝影機225可用以追踪在使用者之上部身體部位之前方的物件。類似地,控制器230可具有分別具備FOV 232、234及236的攝影機231、233及235。取決於控制器之3D位置及姿勢,攝影機之FOV可面向不同方向且攝影機可用以追踪使用者身體之不同部位。舉例而言,攝影機231可用以追踪後向伸展的使用者之腿及腳。攝影機233可用以追踪落在FOV 234內的使用者之上部身體部位(例如,臂或肩部)。攝影機235可用以追踪前向伸展的使用者之腿及腳。在特定具體實例中,控制器220及230可使其攝影機自不同視角俘獲使用者身體部位之影像,以追踪使用者201之此等身體部位。影像可在各別控制器上在本地端進行處理或可在頭戴式器件210上或在本地端電腦208上進行處理且將經嚴格地限制而不傳輸到本地端計算系統外部。
值得注意的,用於控制器220之攝影機221、223及225及用於控制器230之攝影機231、233及235係出於實例目的且控制器攝影機不如此受限。舉例而言,控制器可具有安裝在控制器上之任何合適部位的任何合適數目個攝影機。控制器可以任何合適方式並以任何合適位置及姿勢藉由使用者201握持或附接至該使用者。控制器攝影機可取決於攝影機定向及控制器位置而具有面向不同方向之單獨FOV。相同或不同控制器之一或多個控制器攝影機可具有重疊FOV,此取決於攝影機定向及控制器位置。控制器攝影機可自特定視角俘獲使用者之身體部位,且相同控制器或不同控制器之不同控制器攝影機可自不同視角俘獲使用者之相同身體部位或可俘獲使用者之不同身體部位。在特定具體實例中,多個控制器中之一控制器的攝影機FOV總體上可覆蓋周圍環境之360度。
2B說明使用控制器及頭戴式器件姿勢以追踪使用者之上部身體部位的實例過程200B。在特定具體實例中,頭戴式器件210可包括IMU及攝影機(例如,211及213),其可用以執行即時定位與地圖建構(SLAM)以用於自定位。因此,頭戴式器件210可用以準確地判定使用者201之頭部位置(例如,如由關鍵點241表示)(考慮頭戴式器件210與使用者201之頭部的相對位置)。在特定具體實例中,控制器220及230可各自包括IMU、攝影機及任何合適的感測器,其可用以執行SLAM以用於自定位。因此,控制器220及230可準確地判定使用者之手位置(例如,如由關鍵點242A及242B表示)。結果,系統可準確地判定與使用者之頭部及手相關聯的至少三個關鍵點241、242A及242B。因為人骨架具有固有結構約束條件,因此系統可使用有限關鍵點(例如,242A、242B及241)以推斷其他關鍵點(例如,頸部、肩部、肘部)之位置並估計使用者201之上部身體的身體姿勢。舉例而言,因為當使用者之手242B在關鍵點244B處時人骨架僅僅允許臂207B之特定臂姿勢,因此系統可基於單一關鍵點244B準確地推斷使用者之右臂207B的臂姿勢。類似地,因為當使用者之手在關鍵點244A處時人骨架僅僅允許臂207A之特定臂姿勢,因此系統可基於單一關鍵點244A有效地推斷使用者之左臂207A的臂姿勢。
在特定具體實例中,系統可使用面朝下以追踪使用者身體部位之身體姿勢及運動的頭戴式器件攝影機(例如,213),該等使用者身體部位為此等頭戴式器件攝影機可見。舉例而言,攝影機213可用以在此等身體部位落在攝影機213之FOV內時追踪使用者之肩部、肘部、臂、手及使用者之其他上部身體部位。然而,使用以上方法進行的身體姿勢估計可具有一些限制。舉例而言,系統可僅具有有限數目個關鍵點(例如,242A、242B及241)且所估計身體姿勢可在一些情形中並不準確。此外,系統可能無法估計使用者201之下部身體部位(例如,腿205A及205B、腳206A及206B),此係因為使用者201之下部身體部位可不為頭戴式器件攝影機(例如,211、213)可見且可不存在附接至使用者201之下部身體部位的控制器或感測器。系統可能無法估計一些部分
2C說明使用控制器攝影機以追踪使用者之下部身體部位的實例過程200C。在特定具體實例中,系統可使用具有各別攝影機(例如,221、231)之一或多個控制器(例如,220、230)以追踪使用者201之下部身體部位。舉例而言,控制器220可具有帶FOV 222之攝影機221。取決於控制器220之位置及其在3D空間中之定向,攝影機220之FOV 222可面向不同方向,從而俘獲使用者201之不同身體部位或周圍環境中之不同物件。類似地,控制器230可具有帶FOV 232之攝影機231。取決於控制器230之位置及其在3D空間中的定向,攝影機230之FOV 232可面向不同方向,從而俘獲使用者201之不同身體部位或周圍環境中之不同物件。當使用者201具有如圖2C中所說明之身體姿勢時,攝影機221可俘獲使用者之左腿205A及左腳206A的影像。因此,系統可基於由攝影機221俘獲之影像來判定與使用者之左腳相關聯的關鍵點244A及使用者之左膝部的關鍵點243A的位置。類似地,攝影機231可俘獲使用者之右腿205B及右腳206B的影像。因此,系統可判定關鍵點244B及243B之關鍵點位置,關鍵點244B及243B分別與使用者之左腳206B及左腿205B相關聯。如圖2C中所說明,控制器230上之攝影機231及控制器220上之攝影機221可各自自不同視角俘獲使用者之下部身體部位。使用者之下部身體部位可或可不完全由單一攝影機俘獲。然而,當總體上使用相同控制器或不同控制器之多個攝影機時,系統可自判定使用者身體姿勢所需要的全部視角獲得足夠影像資料以涵蓋使用者之下部身體部位。
2D說明使用頭戴式器件感測器及控制器感測器以追踪使用者之全身的實例過程200D。在特定具體實例中,系統總體上可使用頭戴式器件感測器(例如,攝影機、IMU)及控制器感測器(例如,攝影機、LiDAR、結構化光感測器、IMU等)以追踪使用者之全身。舉例而言,系統可使用頭戴式器件211上之IMU以判定使用者201之頭部位置參數(例如,如由對應關鍵點表示)。頭部位置參數可包括例如但不限於至地面238之頭部距離、頭部定向、面向方向、移動速度、移動方向、頭部旋轉速度及旋轉方向等。作為另一實例,系統可使用頭戴式器件攝影機(例如,211、213)以追踪使用者身體部位及周圍環境中之物件(其可用於推斷或確認使用者身體姿勢及運動參數)。作為另一實例,系統可使用頭戴式器件攝影機(例如,213)以追踪為頭戴式器件攝影機可見的使用者身體部位(例如,在使用者身體前方的臂、肘部及手)。作為另一實例,系統可使用控制器(例如,220、230)上之IMU 以判定控制器位置參數,包括例如但不限於3D空間內控制器位置、控制器定向、控制器移動速度及移動方向、控制器旋轉速度及旋轉方向。
在特定具體實例中,系統可使用控制器位置參數以判定相關聯使用者身體部位(例如,握持各別控制器之兩手)之對應關鍵點位置。作為另一實例,系統可使用控制器攝影機(例如,控制器230上之攝影機231、233及235,控制器220上之攝影機221、223及225)以追踪為此等攝影機可見的使用者身體部位。每一攝影機可自特定視角俘獲使用者201之一或多個特定身體部位的影像。控制器可彼此通信及協調且攝影機可自追踪使用者之全身姿勢所需要的不同視角在總體上俘獲使用者身體之影像。舉例而言,控制器230之攝影機231及233可俘獲使用者201之下部身體部位(例如,腿、膝部、腳等)之影像。攝影機233可俘獲使用者之上部身體部位的影像。類似地,控制器220之攝影機221可俘獲使用者之下部身體部位的影像且控制器220之攝影機225可俘獲使用者之上部身體部位的影像。在本發明中,術語「全身姿勢」可指包括使用者之上部身體部位及下部身體部位的使用者身體之姿勢。在特定具體實例中,使用者之全身姿勢可包括例如但不限於使用者頭部、頸部、肩部、臂、肘部、手、身體塊、髖部、腿、膝部、腳等之姿勢,即使使用者之一或多個身體部位可不為頭戴式器件攝影機/感測器可見或可追踪。在本發明中,術語「身體姿勢」、「控制器姿勢」或「頭戴式器件姿勢」可各自由數個參數表示,該等參數包括例如但不限於三維空間中之三維位置、一或多個三維定向,及一或多個空間角。在本發明中,術語「自追踪控制器」或「自追踪控制器」可指可追踪其在3D空間中之自身姿勢參數(例如,位置、定向角、旋轉角、運動等)的控制器。「自追踪控制器」或「自追踪控制器」可包括一或多個感測器或/及攝影機以追踪其自身姿勢或/及周圍環境。
3A說明使用自追踪控制器320以執行即時定位與地圖建構(SLAM)的實例過程300A。在特定具體實例中,系統可使用具有IMU、感測器及一或多個內外攝影機(例如,RGB攝影機、紅外攝影機、LiDAR、結構化光等的自追踪控制器320以執行即時定位與地圖建構(SLAM)。自追踪控制器320可使用其攝影機(例如,321、322及323)及IMU 324以執行即時定位與地圖建構(SLAM)以用於自定位。舉例而言,控制器323可使用IMU 324以判定在3D空間(如由XYZ座標系統表示)中之控制器位置及定向。系統可首先基於IMU資料判定控制器320之中心點位置。接著,系統可基於IMU資料判定控制器軸線325之方向及控制器320之旋轉角(在垂直於控制器軸線325之平面中)。此後,系統可基於控制器位置、控制器軸線425及旋轉角以及攝影機之對應非固有參數(例如,攝影機相對於控制器之相對安裝位置及朝向)來判定攝影機(例如,321、322、323)之FOV。在攝影機FOV經判定情況下,控制器320可用以追踪落在攝影機FOV內的使用者身體部位並基於由此等控制器攝影機俘獲之影像而準確地判定對應關鍵點位置。在特定具體實例中,頭戴式器件310可包括一或多個感測器,其包括例如但不限於IMU 311、攝影機(例如,312、313及314)、LiDAR、結構化光感測器等。頭戴式器件310可基於IMU資料判定其在3D空間中之自身位置及定向。頭戴式器件310亦可使用攝影機(例如,312、313及314)以俘獲周圍環境中之物件的影像以判定或確認在3D空間中之頭戴式器件位置及定向。頭戴式器件310及控制器320可經由無線通信連接件342彼此通信。
3B說明使用頭戴式器件感測器判定控制器位置及定向的實例過程300B。在特定具體實例中,控制器330可不需要為自追踪。實際上,控制器在3D空間中之3D位置及姿勢可使用頭戴式器件攝影機(例如,312、313及314)來判定。舉例而言,當控制器330落在兩個或多於兩個頭戴式器件攝影機312、313及314之FOV內時,系統可使用該兩個或多於兩個攝影機(例如,312、313及314)自不同視角俘獲控制器330之影像。接著,系統可基於藉由各別攝影機(例如,使用視差原理)自不同視角俘獲的控制器330之影像來判定控制器位置及定向。此後,系統可基於控制器位置、控制器軸線335及旋轉角以及攝影機之對應非固有參數(例如,攝影機相對於控制器之相對安裝位置及朝向)來判定控制器攝影機(例如,331、332、333)之FOV。在攝影機FOV經判定情況下,控制器220可追踪落在攝影機FOV內的使用者身體部位並基於由此等控制器攝影機俘獲之影像來準確地判定對應關鍵點位置。
在特定具體實例中,系統可使用頭戴式器件及控制器之全部感測器(例如,攝影機、IMU)以判定使用者身體參數。在特定具體實例中,使用者之身體部位可直接與頭戴式器件位置或控制器位置相關聯(例如,頭部及握持控制器的使用者之手)。系統可直接基於相關聯頭戴式器件位置或控制器位置判定對應關鍵點。舉例而言,系統可使用頭戴式器件IMU資料以判定在3D空間中之頭部位置及頭部姿勢並判定對應關鍵點。作為另一實例,系統可使用控制器IMU資料以對於握持彼控制器之手來判定在3D空間中之手位置及手姿勢,並判定對應關鍵點。
3C說明用於使用控制器攝影機資料判定與使用者身體部分相關聯之關鍵點的實例過程300C。在特定具體實例中,使用者身體部位可為控制器攝影機可見且對應關鍵點可基於如由控制器攝影機俘獲的彼身體部位之影像而判定。舉例而言,系統可首先基於控制器IMU資料及/或控制器攝影機資料來判定控制器位置(例如,如由中心點342表示)及控制器姿勢(如由控制器軸線345及旋轉角349表示)。接著,控制器340可俘獲使用者之腳347的影像並基於使用者之腳347的經俘獲影像、攝影機固有參數(例如,透鏡畸變網格,FOV 346)及攝影機非固有參數(例如,攝影機341相對於控制器中心點342之相對位置)而判定關鍵點348之位置。3D空間內的關鍵點348之絕對位置可基於關鍵點348相對於XYZ之3D空間中的控制器位置342之相對位置,及腳347相對於控制器攝影機341之相對位置而判定。
在特定具體實例中,使用者身體部位可為多個控制器攝影機可見。系統可基於由多個控制器攝影機俘獲之影像來判定對應關鍵點。多個控制器攝影機可與單一控制器或多個控制器相關聯。在特定具體實例中,可俘獲相同身體部位之影像的多個攝影機可與單一控制器、不同控制器或頭戴式器件相關聯。每一控制器攝影機可自不同視角俘獲使用者身體部位,且藉由多個控制器攝影機自不同視角俘獲的影像可用以基於三角量測原理或視差原理來判定關鍵點之3D位置。系統可或可能無法基於由單一控制器攝影機俘獲的單一影像而準確地判定關鍵點之3D位置,但可基於由多個控制器攝影機自不同視角俘獲的多個影像而準確地判定關鍵點之3D位置。在特定具體實例中,系統可饋入使用者身體部位之經俘獲影像至神經網路以判定對應關鍵點。神經網路可基於實驗資料而訓練以自對應影像提取身體部位之關鍵點。藉由系統判定之關鍵點可由3D空間內之對應3D位置表示。
在特定具體實例中,兩個或多於兩個控制器可彼此協調以判定使用者之一或多個經追踪身體部位的關鍵點位置。舉例而言,由第一控制器俘獲的影像可僅僅覆蓋使用者腿之小部分,且第一控制器可不具有足夠資料到準確地判定與彼腿相關之關鍵點。然而,由第二控制器俘獲之影像可覆蓋使用者腿之另一小部分。第二控制器本身亦可不具有足夠資料到準確地判定關鍵點。然而,第一控制器及第二控制器可彼此通信以同步追踪過程。系統可組合來自第一控制器及第二控制器之影像資料以具有使用者之腿上的較佳大圖像。組合的影像資料在俘獲使用者之腿中可或可不完整,但系統可以較佳準確度判定對應關鍵點。在特定具體實例中,第一控制器及第二控制器可直接彼此通信及協調以俘獲影像並總體上判定關鍵點。在特定具體實例中,第一控制器及第二控制器可各自與頭戴式器件通信及協調以俘獲影像並總體上判定關鍵點。在特定具體實例中,系統可融合由(例如,相同控制器或不同控制器之)不同控制器攝影機自不同視角俘獲的相同身體部位之影像並使用所融合影像資料以總體上判定相關關鍵點。在特定具體實例中,系統可使用由第一控制器攝影機俘獲的影像以判定相關關鍵點並使用由第二控制器攝影機俘獲之影像以驗證或確認如基於由第一控制器俘獲之影像而判定的關鍵點。
在特定具體實例中,系統可使用電腦演算法(例如,肌肉-骨架模型、機器學習(machine-learning;ML)模型或基於規則之演算法)以判定不為頭戴式器件攝影機及控制器攝影機可見亦不可藉由頭戴式器件感測器及控制器感測器直接追踪的使用者身體部位之關鍵點。舉例而言,當使用者之腳可不為任何頭戴式器件攝影機或控制器攝影機可見亦不可藉由頭戴式器件感測器及控制器感測器直接追踪時。系統可使用肌肉-骨架模型以擬合使用者之其他身體部位的已經判定關鍵點並推斷不可見身體部位之關鍵點。肌肉-骨架模型可包括自人體之實體限制性導出的數個約束條件及關於人體姿勢及運動之經驗資料。不可見身體部位之關鍵點可基於其他身體部位之關鍵點及包含於肌肉-骨架模型中的關於人體之知識而判定。作為另一實例,系統可訓練ML模型以基於可見(或可追踪)身體部位之關鍵點來預測不可見身體部位之關鍵點。在訓練過程期間,系統可首先判定使用者身體之全部關鍵點並使用已知關鍵點之一子集作為輸入訓練樣本並使用已知關鍵點之另一子集作為地面實況以訓練ML模型。在經訓練後,系統可饋入可基於感測器資料及攝影機資料而直接判定的有限數目個關鍵點至ML模型中,並判定不可藉由感測器或攝影機直接追踪的其他關鍵點。在運作時間,系統可判定使用者身體部位(例如,頭部、手、可見身體部位)之儘可能多的可能關鍵點並饋入經判定關鍵點至ML模型以估計使用者身體之其他關鍵點。作為另一實例,系統可使用基於規則之演算法以處理已經判定之關鍵點並推斷其他身體部位之關鍵點。基於規則之演算法可包括自實體限制及特性判定的關於人體姿勢及運動之數個約束條件。
在特定具體實例中,系統可能無法判定時域中之特定時刻的使用者身體之關鍵點。舉例而言,在先前時刻先前為控制器攝影機或頭戴式器件攝影機可見的使用者之身體部位可由於使用者身體部位之運動而變得不可見。作為另一實例,用於追踪使用者身體的頭戴式器件感測器/攝影機及控制器感測器/攝影機可使用有限訊框速率(例如,每秒1訊框)以減小系統之功率消耗及資料處理負擔。因此,系統可不具有在落在兩個隨之發生的訊框之間的時刻之身體追踪資料。在特定具體實例中,系統可使用內插演算法以基於可用追踪資料來判定此等時刻之關鍵點。舉例而言,因為使用者身體運動大體上限於最大可能運動速度,因此兩個隨之發生的訊框(例如,1秒時間週期)之間的使用者身體姿勢之變化量可係有限的。系統可使用在彼特定時刻之前及之後的追踪資料(例如,身體部位影像)以使用內插來判定彼特定時刻之關鍵點。作為另一實例,系統可訓練ML模型以基於先前時刻之關鍵點預測使用者身體關鍵點。ML模型可基於包括輸入關鍵點集合及地面實況關鍵點集合兩者之實驗資料而訓練。在運行時間,系統可記錄已在特定時間窗內判定的使用者身體之關鍵點並饋入此等關鍵點至ML模型以預測當前時刻之關鍵點。由系統使用的時間窗可對應於在當前時刻之前的一段時間且可為隨著時間移動之滑動窗。
在特定具體實例中,系統可使用如上文所論述之一或多種方法儘可能多判定使用者身體之關鍵點,且聚集使用者身體之全部關鍵點以判定初始全身姿勢。舉例而言,系統可使用頭戴式器件IMU資料以判定使用者之頭部的關鍵點並使用控制器IMU資料以判定使用者之手的關鍵點。作為另一實例,系統可使用頭戴式器件/控制器攝影機資料(例如,影像)以判定使用者之可見身體部位的關鍵點。作為另一實例,系統可使用關鍵點之一子集以判定使用者之其他關鍵點,其基於肌肉-骨架模型或經訓練以基於關鍵點之有限子集判定使用者身體之關鍵點的ML模型。作為另一實例,系統可使用ML模型以基於在此等特定時刻之前的時間窗之身體追踪資料(例如,影像之先前訊框)來預測特定時刻之身體部分的關鍵點。藉由每一方法判定之關鍵點可為使用者身體之不完整資料點集合。然而,在全部此等關鍵點經判定之後,系統可聚集全部此等關鍵點以判定使用者之初始全身姿勢。在特定具體實例中,系統可判定與例如但不限於使用者之頭部、面部、頸部、肩部、臂、肘部、手、髖部、身體質量中心、腿、膝部、腳等相關聯之關鍵點。初始全身姿勢可使用人體之肌肉-骨架模型及/或經訓練以優化使用者之全身姿勢的ML模型來最佳化及優化。
4說明人體之實例肌肉-骨架模型400。在特定具體實例中,系統可使用人體之肌肉-骨架模型以(1)基於其他關鍵點推斷使用者身體關鍵點之位置;及(2)基於關鍵點之全集或基於關鍵點之不完整集合判定使用者之全身姿勢。作為實例而非作為限制,肌肉-骨架模型400可包括與例如但不限於使用者之頭部位置401、面部方向402、頸部402、肩部404A及404B、臂410A及410B、肘部405A及405B、手406A及406B、髖部411A及411B、身體中心參考點412、膝部407A及407B、腿409A及409B、腳408A及408B、腕等相關的資訊。在特定具體實例中,肌肉-骨架模型400可藉由電腦基於關於人體之理論及經驗知識產生。舉例而言,模型400可包括表示之硬骨之數個線性線區段及表示關鍵身體部位(例如,關節)之位置的數個關鍵點。作為另一實例,模型400亦可模型化附接至人體之主要骨骼的肌肉,描述肌肉如何以特定方式(例如,彈性而不是剛性運動)拉動骨骼。肌肉可首先藉由有限元素法(finite element method;FEM)模擬而模型化以判定對應屬性,其可由肌肉-骨架模型400俘獲。結果,肌肉-骨架模型400可包括用於人體姿勢及運動之數個約束條件。約束條件可基於人體之實體限制而判定。
在特定具體實例中,系統可使用此等約束條件以基於有限追踪資料推斷使用者身體姿勢(例如,使用關鍵點之一子集以推斷使用者之全身姿勢)。舉例而言,使用者之前臂可僅僅朝向使用者身體而不是相反方向彎曲。系統可使用此約束條件以排除不符合此約束條件的大量臂姿勢並基於有限數目個關鍵點推斷使用者之經校正臂姿勢。作為另一實例,可存在供人體形成特定姿勢之僅僅有限數目個方式。舉例而言,人體可僅僅自一側將手放置在其背部之特定部位後方,此係因為臂並不足夠長以過到另一側。當系統偵測到使用者之手在其背部之較低或較高部位後方之此特定位置(例如,基於握持於彼手中之控制器位置)時,系統可合理地推斷使用者之臂必須處於彼特定臂姿勢且無其他臂姿勢在此特定情形中將係可能的。
5說明估計使用者之全身姿勢的實例過程500。在特定具體實例中,系統可使用頭戴式器件感測器503(例如,IMU、攝影機)以追踪使用者身體部位。另外,系統可使用具有感測器(例如,攝影機、IMU)之一或多個控制器(例如,501、502)以追踪不為頭戴式器件攝影機可見或可藉由頭戴式器件感測器追踪的使用者身體部位。舉例而言,系統可使用頭戴式器件攝影機及控制器攝影機以俘獲落在此等攝影機之FOV內的使用者身體部位之影像。系統可饋入此等影像至關鍵點提取模組511A以判定對應關鍵點。關鍵點提取模組511A可為可處理輸入影像(及IMU資料)以判定對應關鍵點位置的影像處理演算法。在特定具體實例中,關鍵點提取模組511A可為經訓練以提取關鍵點並基於輸入影像判定此等關鍵點之3D位置的ML模型。在特定具體實例中,使用者身體部位之關鍵點可基於經俘獲影像、頭戴式器件IMU資料、控制器IMU資料以及此等攝影機之非固有及固有參數(例如,攝影機相對於控制器或頭戴式器件之相對位置,FOV)而判定。在關鍵點經判定之後,系統可輸入經判定關鍵點523A至聚集模組512,該聚集模組可將不同身體部位之關鍵點聚集成初始全身姿勢513。
在特定具體實例中,系統可需要判定與不為頭戴式器件/控制器攝影機可見且不可藉由頭戴式器件感測器及控制器感測器直接追踪的一或多個身體部位相關聯的一或多個關鍵點。系統可將已基於可用攝影機或感測器資料判定(例如,與可見身體部位相關聯或可藉由頭戴式器件/控制器感測器直接追踪)的關鍵點之集合輸入至關鍵點推斷模組517,該關鍵點推斷模組可基於已知關鍵點之3D位置推斷其他關鍵點之3D位置。在特定具體實例中,關鍵點推斷模組517可為包括關於可能人體姿勢及運動之數個約束條件的人體之肌肉-骨架模型。系統可基於在對應身體部位之間的關係以肌肉-骨架模型為基礎來推斷其他關鍵點之位置。在特定具體實例中,關鍵點推斷模組517可為基於經驗資料而訓練以基於已經判定的其他關鍵點來預測關鍵點之位置的ML模型。在經推斷關鍵點523B經判定之後,系統可輸入此等推斷關鍵點至聚集模組512,該聚集模組可聚集全部關鍵點以判定初始全身姿勢513。
在特定具體實例中,系統可需要判定不能基於當前時刻之即時感測器資料(例如,攝影機影像、IMU資料)而直接地或間接地判定身體部位之關鍵點。舉例而言,使用者之一個身體部位可隱藏在其他身體部位後方且系統可能無法藉由頭戴式器件/控制器攝影機或感測器直接追踪所隱藏身體部分。且,因為系統可能夠判定僅有限數目個使用者身體之關鍵點,因此系統可不具有足夠即時資料到推斷所隱藏身體部位之關鍵點。為解決此問題,在特定具體實例中,系統可使用在當前時刻之前的滑動時間窗之感測器及攝影機資料以判定所隱藏身體部位之關鍵點。舉例而言,當前所隱藏身體部位可在先前訊框中為頭戴式器件攝影機或控制器攝影機可見。系統可存取當前所隱藏身體部位之先前影像訊框521以推斷此等身體部位之當前關鍵點位置。系統可輸入先前訊框521至關鍵點抽取模組511B以判定當前關鍵點位置(對應於先前時刻)。接著,系統可饋入先前關鍵點至時間神經網路(TNN)522中以推斷此等關鍵點之當前位置。時間神經網路(TNN)522可為經訓練以基於先前關鍵點位置來預測當前關鍵點位置的ML模型。時間神經網路(TNN)522可在當前時刻之前得到滑動時間窗之關鍵點及/或感測器資料並判定(預測)對應關鍵點之當前位置。在判定此等關鍵點之後,系統可饋入此等經預測關鍵點523C至聚集模組512中以判定初始全身姿勢513。結果,聚集模組512可接收基於當前感測器/攝影機資料而直接地或間接地判定的關鍵點及基於先前訊框預測的關鍵點,並將該等關鍵點聚集成整體以判定初始全身姿勢513。經輸入至聚集模組512中的關鍵點可與不同身體部位相關聯且可基於來自不同源(例如,頭戴式器件攝影機影像、控制器攝影機影像、頭戴式器件感測器資料、控制器感測器資料)之資料而判定。基於每一資料源而判定的關鍵點可具有關鍵點之不完整集合,但基於不同資料源而判定的關鍵點總體上可為使用者之全身姿勢提供關鍵點之整個集合。
在特定具體實例中,系統可藉由聚集在先前步驟中經判定用於使用者身體的全部關鍵點而判定初始全身姿勢513。然而,初始全身姿勢513可對於一些身體部位並不完全準確。舉例而言,基於其他關鍵點之推斷關鍵點523B及基於先前訊框之預測關鍵點523C可並非100%與使用者在當前時刻之實際身體部位位置一致。此外,甚至基於不同資料源而判定之關鍵點係與實際身體部位位置一致,初始全身姿勢可由於聚集過程可產生一些偏差(例如,使用者之不同身體部位之間的相對位置具有誤差)而偏離實際身體姿勢。結果,初始全身姿勢513可提供使用者身體姿勢之粗略估計且可並不完全準確。系統可饋入初始全身姿勢513至逆動態最佳化器以優化並最佳化結果。舉例而言,初始全身姿勢513可包括已經判定用於使用者身體的全部關鍵點。逆動態最佳化器515可為經訓練以基於對應身體部位之關係來最佳化關鍵點位置的ML模型。舉例而言,逆動態最佳化器515可基於肌肉-骨架模型514而擬合輸入關鍵點以判定任何關鍵點位置或關鍵點關係是否不符合肌肉-骨架模型,並進行相應調整以判定使用者之最佳身體姿勢。肌肉-骨架模型514可包括限制使用者之可能身體姿勢的數個約束條件且此等約束條件可藉由逆動態最佳化器515施加。結果,與初始全身姿勢513相比,經優化全身姿勢516可提供更準確身體姿勢估計結果。
在特定具體實例中,系統可使用如本發明中所描述之一或多個步驟判定使用者之所估計身體姿勢。然而,在一些情形中,使用者之所估計身體姿勢可具有不符合人體之肌肉-骨架模型之約束條件的一或多個部分。在此等情形下,系統可根據此等約束條件來調整彼等非符合部分並使所估計身體姿勢符合此類約束條件。舉例而言,所估計身體姿勢可具有對於人體而言不可能的後向彎曲之臂。系統可基於其他身體部位之身體姿勢及使用者活動之背景而反轉彎曲方向或輸出彼臂之另一姿勢。作為另一實例,系統可偵測身體部位之突然改變,該突然改變超出人體可產生的最大可能速度。系統根據肌肉-骨架模型將彼改變減小成對於人體實際的一速度。
在特定具體實例中,系統可使用如基於頭戴式器件攝影機影像或控制器攝影機影像而判定的身體部位形狀(例如,輪廓、包封)或全身形狀以優化如基於關鍵點而判定的全身姿勢。如先前所論述,不同組關鍵點可與不同身體部位相關聯且可基於不同資料源而判定。在不同組關鍵點之間的關係可基於相關身體部位之整個身體形狀而經優化或經再校準。舉例而言,系統可基於對應兩組關鍵點、兩個部位之整個身體形狀及肌肉-骨架模型來判定兩個相關身體部位之身體姿勢。結果,系統可具有使用者之全身姿勢的更準確估計結果。
在特定具體實例中,系統可僅俘獲有限資料以用於判定使用者身體姿勢且甚至經優化身體姿勢結果可能無法準確地反映在特定時刻的使用者之實際身體姿勢。系統可使用人體之肌肉-骨架模型、有限感測器/攝影機日期及使用者之進行中的活動之背景,以在此情形下判定使用者之最可能或合適之身體姿勢。舉例而言,系統可判定使用者是否進行遊戲、與虛擬環境中之朋友聊天、與多個人遠端地進行電話會議、與朋友虛擬地觀看音樂會等。系統可基於使用者之活動的背景及特性來判定使用者之所估計身體姿勢。舉例而言,若使用者站立且與朋友在虛擬環境中聊天,則系統可輸出適合聊天背景的使用者之身體姿勢,舉例而言,使用者可在與朋友聊天時可能使其腿在鬆弛身體姿勢中交叉。使用者可稍微將一腳放在另一腳前面。使用者可在聊天變熱絡時移位其腿及腳。作為另一實例,若使用者正進行需要許多跑步之遊戲,則系統可輸出處於跑步狀態中之身體姿勢及運動。作為另一實例,若使用者聽現場音樂會,則系統可輸出與音樂之跳動不相關的身體姿勢及運動(例如,根據音樂輕踏一或兩個腳)。結果,即使有限資料可不允許系統準確地判定實際身體姿勢(例如,不可見且牢固之下部身體部位),系統仍可輸出理解活動之背景且符合人體之肌肉-骨架模型之約束條件的使用者之身體姿勢。藉由輸出此不準確但可能且背景合適之身體姿勢,即使當僅有限資料可用於身體姿勢估計時,系統仍可為經由AR/VR系統彼此互動之使用者提供更實際使用者體驗。
在特定具體實例中,系統可在頭戴式器件、控制器及/或單獨計算單元(例如,手機/平台)當中分配計算任務以用於處理感測器資料(例如,IMU資料、影像資料)、判定關鍵點,並估計全身姿勢。全部此等系統組件可為在本發明中參考的「計算系統」之部分。在特定具體實例中,每一控制器可處理其感測器資料(例如,IMU資料攝影機資料)並在控制器內本地端地判定對應關鍵點。控制器可發送經處理資料(例如,控制器姿勢、關鍵點位置)至其他控制器、頭戴式器件或其他本地端計算單元以判定使用者之全身姿勢。在特定具體實例中,多個控制器可彼此通信及協調以處理感測器資料並判定對應關鍵點。舉例而言,控制器可彼此同步影像俘獲過程並彼此交換感測器資料(例如,IMU資料及原始影像)以總體上判定對應關鍵點及使用者之全身姿勢。此等關鍵點可基於來自多個控制器之感測器資料(例如,IMU資料、影像資料)的融合而判定。在特定具體實例中,控制器可發送其原始感測器資料(例如,IMU資料、影像資料)至平台/頭戴式器件,平台/頭戴式器件可處理影像及IMU資料,判定關鍵點位置,並估計使用者之全身姿勢。在特定具體實例中,計算任務可基於取決於一或多個因數的最佳化機制經分配至控制器、平台/頭戴式器件,及/或本地端計算裝置(例如,智慧型手機/平台),該一或多個因數包括計算資源之可用性、計算任務特性、資料安全機制,及如藉由使用者設定之隱私設置等。
6說明用於資料安全及使用者隱私保護之實例機制600。在特定具體實例中,系統可使用控制器攝影機或頭戴式器件攝影機以僅在使用者主動及肯定地選擇加入詢問系統以提供此功能性時追踪使用者身體姿勢。除非使用者已授權並准許系統如此執行,否則系統將不追踪使用者身體姿勢。即使使用者授權及准許,系統仍可藉由在本地端運用控制器、頭戴式器件或本地端電腦來處理資料及將資料嚴格地保持在本地端計算系統內而對使用者之隱私提供額外保護。作為實例,系統可採用需要控制器620及630以在各別控制器內本地端地處理全部經俘獲影像的嚴格的資料安全機制650。由控制器620及630俘獲之全部原始影像資料可嚴格地保存在各別控制器內。控制器620及630可僅傳輸經處理結果(例如,關鍵點位置)至頭戴式器件610或本地端電腦640。控制器620及630可彼此通信以交換關鍵點資訊但由每一控制器俘獲的原始影像可嚴格地保存在各別控制器內。作為另一實例,系統可採用一資料安全機制660,該資料安全機制需要藉由頭戴式器件攝影機(例如,611A、611B、611C)或控制器攝影機(例如,控制器620之攝影機621A、621B及621C、控制器630之攝影機631A、631B及631C)俘獲的全部影像資料以本地端地保存在頭戴式器件610或本地端電腦640內。影像可自各別控制器620及630傳輸至頭戴式器件560且可在頭戴式器件610內本地端地進行處理。替代地,影像可藉由本地端電腦640來處理。然而,影像資料將嚴格地保存在本地端計算系統(例如,本地端電腦640或頭戴式器件610)內且將限制而不傳輸至本地端計算系統以外之任何電腦。
在特定具體實例中,在判定使用者之全身姿勢之後,系統可使用使用者之全身姿勢資料以促進對於AV/VR內容之更實際的使用者體驗。在特定具體實例中,系統可使用全身姿勢資料以控制向與使用者互動或通信的另一使用者顯示的虛擬化身。舉例而言,兩個使用者可使用系統以與由虛擬化身或實際人工實境角色表示之每一使用者進行虛擬電話會議。系統可在會議期間即時或接近即時地追踪每一使用者之全身姿勢並使用全身姿勢資料以控制各別虛擬化身或人工實境角色,以允許使用者看到彼此之全身姿勢(例如,如由虛擬化身之身體姿勢表示)。在特定具體實例中,系統可使用全身姿勢資料以促進至使用者之更實際聲音。舉例而言,系統可基於使用者之即時身體姿勢來控制不同聲源(例如,在使用者周圍之揚聲器)以創造至使用者之實際立體音響效果。
7說明使用自追踪控制器來判定使用者之全身姿勢的實例方法700。方法可在步驟710處開始,其中計算系統可基於由使用者握持的控制器俘獲之感測器資料來判定控制器之姿勢。在步驟720處,系統可基於(1)由控制器之一或多個攝影機俘獲的一或多個第一影像及(2)控制器之姿勢來判定與使用者之身體的一第一部分相關聯的一第一組關鍵點之位置。在步驟730處,系統可基於由使用者佩戴的頭戴式器件俘獲之感測器資料來判定頭戴式器件之姿勢。在步驟740處,系統可基於(1)由頭戴式器件之一或多個攝影機俘獲之一或多個第二影像及(2)頭戴式器件之姿勢來判定與使用者之身體之第二部分相關聯的一第二組關鍵點之位置。在步驟750處,系統可至少基於第一組關鍵點之位置及第二組關鍵點之位置來判定使用者之一全身姿勢。在特定具體實例中,控制器之姿勢可包括控制器在三維空間內的位置、軸線方向及旋轉角。頭戴式器件之姿勢可包括頭戴式器件在三維空間內的位置及兩個軸線方向。在特定具體實例中,由控制器俘獲之感測器資料可包括慣性量測單元(IMU)資料。控制器之姿勢可使用即時定位與地圖建構(SLAM)判定以用於自定位。在特定具體實例中,系統可基於在使用者之身體的第三部分與控制器之姿勢之間的直接相關(例如,握持控制器之手)來判定使用者之身體的第三部分之第三組關鍵點(排除一或多個第一影像)。在特定具體實例中,系統可基於在使用者之身體的第三部分與頭戴式器件之姿勢之間的直接相關(例如,佩戴頭戴式器件之使用者頭部)來判定使用者之身體的第三部分之第三組關鍵點(排除一或多個第二影像)。
在特定具體實例中,系統可基於由第二控制器之一或多個攝影機俘獲的一或多個第三影像來判定與使用者之身體的第一部分相關聯的一第三組關鍵點之位置。一或多個第三影像可自不同於由控制器之一或多個攝影機俘獲的一或多個第一影像的視角來俘獲使用者之身體的第一部分。在特定具體實例中,系統可聚集第一組關鍵點、第二組關鍵點及第三組關鍵點。系統可饋入經聚集之第一、第二及第三組關鍵點至逆動態最佳化器中。使用者之全身姿勢可使用逆動態最佳化器來判定。在特定具體實例中,逆動態最佳化器可包括基於肌肉-骨架模型而判定的一或多個約束條件。使用者之全身姿勢可根據一或多個約束條件及肌肉-骨架模型來判定。在特定具體實例中,系統可饋入與使用者之身體之一或多個部分相關聯的先前經判定關鍵點至時間神經網路(TNN)。先前經判定關鍵點可基於使用者之身體的一或多個部分之先前影像而判定。系統可藉由時間神經網路(TNN)基於與使用者之身體的一或多個部分相關聯的先前經判定關鍵點,來判定與使用者之身體之一或多個部分相關聯的一或多個預測關鍵點。時間神經網路可使用歷史資料來訓練。在特定具體實例中,使用者之全身姿勢可基於與使用者的身體之一或多個部分相關聯的一或多個預測關鍵點而判定。
在特定具體實例中,一或多個第一影像可在控制器內本地端地進行處理。系統防止一或多個第一影像在控制器外傳輸。系統可傳輸第一組關鍵點至頭戴式器件,且使用者之全身姿勢可在頭戴式器件內本地端地經判定。在特定具體實例中,系統可傳輸一或多個第一影像至頭戴式器件。一或多個第一影像可在本地端藉由頭戴式器件之一或多個計算單元處理。第一組關鍵點可在頭戴式器件內本地端地經判定。系統可防止一或多個第一影像及第一組關鍵點傳輸到頭戴式器件外部。在特定具體實例中,使用者之全身姿勢可涵蓋使用者之身體的第一部分及使用者之身體的第二部分。使用者之身體的第一部分可落在頭戴式器件之一或多個攝影機之視場外。在特定具體實例中,使用者之全身姿勢可至少包括:使用與頭戴式器件相關聯之一慣性量測單元判定的一頭部姿勢、基於控制器之姿勢而判定的一手姿勢、基於由控制器之一或多個攝影機俘獲的一或多個第一影像而判定的一下部身體姿勢,及基於由頭戴式器件之一或多個攝影機俘獲的一或多個第二影像而判定的一上部身體姿勢。
適當時,特定具體實例可重複圖7之一或多個方法步驟。儘管本發明將圖7之特定方法步驟描述及說明為按特定次序發生,但本發明預期圖7之任何合適的方法步驟按任何合適之次序發生。此外,儘管本發明描述且說明包括圖7之特定方法步驟之用於使用自追踪控制器判定使用者之全身姿勢的實例方法,但本發明預期包括任何適合步驟之用於使用自追踪控制器來判定使用者之全身姿勢的任何適合方法,任何適合步驟在適當情況下可包括圖7之方法步驟中之全部、一些或無一者。此外,儘管本發明描述及說明實施圖7之特定方法步驟的特定組件、裝置或系統,但本發明預期實施圖7之任何合適方法步驟的任何合適組件、裝置或系統的任何合適組合。
圖8說明實例電腦系統800。在特定具體實例中,一或多個電腦系統800執行本文中描述或說明的一或多種方法之一或多個步驟。在特定具體實例中,一或多個電腦系統800提供本文中描述或說明之功能性。在特定具體實例中,在一或多個電腦系統800上執行的軟體執行本文中描述或說明的一或多種方法之一或多個步驟或提供本文中描述或說明的功能性。特定具體實例包括一或多個電腦系統800之一或多個部分。本文中,適當時,對電腦系統之參考可涵蓋計算裝置,且反之亦然。此外,適當時,對電腦系統之參考可涵蓋一或多個電腦系統。
本發明預期任何合適數目個電腦系統800。本發明預期採取任何合適實體形式的電腦系統800。作為實例而非作為限制,電腦系統800可為嵌入式電腦系統、系統單晶片(system-on-chip;SOC)、單板電腦系統(single-board computer system;SBC)(諸如模組電腦(computer-on-module;COM)或模組系統(system-on-module;SOM))、桌上型電腦系統、膝上型電腦或筆記本電腦系統、互動式多媒體資訊站、大型電腦、電腦系統之網格、行動電話、個人數位助理(personal digital assistant;PDA)、伺服器、平板電腦系統、擴增/虛擬實境裝置,或此等中之兩者或大於兩者的組合。適當時,電腦系統800可包括一或多個電腦系統800;為單機式或分佈式;橫跨多個方位;橫跨多個機器;橫跨多個資料中心;或駐留於雲中,該雲可包括一或多個網路中之一或多個雲組件。適當時,一或多個電腦系統800可在無實質空間或時間限制情況下執行本文中所描述或說明的一或多種方法之一或多個步驟。作為實例而非作為限制,一或多個電腦系統800可即時或以批量模式執行本文中描述或說明一或多種方法之一或多個步驟。適當時,一或多個電腦系統800可在不同時間或在不同方位執行本文中描述或說明的一或多種方法之一或多個步驟。
在特定具體實例中,電腦系統800包括處理器802、記憶體804、儲存器806、輸入/輸出(input/output;I/O)介面808、通信介面810及匯流排812。儘管本發明描述及說明具有在特定配置中之特定數目個特定組件的特定電腦系統,但本發明預期具有在任何合適配置中之任何合適數目個任何合適組件的任何合適之電腦系統。
在特定具體實例中,處理器802包括用於執行指令(諸如組成電腦程式之指令)之硬體。作為實例而非作為限制,為執行指令,處理器802可:自內部暫存器、內部快取記憶體、記憶體804或儲存器806擷取(或提取)指令;對其進行解碼並加以執行;且接著寫入一或多個結果至內部暫存器、內部快取記憶體、記憶體804或儲存器806。在特定具體實例中,處理器802可包括用於資料、指令或位址之一或多個內部快取記憶體。適當時,本發明預期包括任何合適數目個任何合適內部快取記憶體的處理器802。作為實例而非作為限制,處理器802可包括一或多個指令快取記憶體、一或多個資料快取記憶體及一或多個轉譯後備緩衝器(translation lookaside buffer;TLB)。指令快取記憶體中之指令可為記憶體804或儲存器806中之指令的複本,且指令快取記憶體可加速由處理器802進行的對於彼等指令的擷取。資料快取記憶體中之資料可為記憶體804或儲存器806中供在處理器802處執行的指令加以操作之資料的複本、供在處理器802處執行之後續指令存取或供寫入至記憶體804或儲存器806的在處理器802處執行的先前指令之結果,或其他合適資料。資料快取記憶體可加速由處理器802進行的讀取或寫入操作。TLB可加速用於處理器802之虛擬位址轉譯。在特定具體實例中,處理器802可包括用於資料、指令或位址之一或多個內部暫存器。適當時,本發明預期包括任何合適數目個任何合適內部暫存器的處理器802。適當時,處理器802可包括一或多個算術邏輯單元(arithmetic logic unit;ALU)、為多核心處理器,或包括一或多個處理器802。儘管本發明描述及說明特定處理器,但本發明預期任何合適的處理器。
在特定具體實例中,記憶體804包括用於儲存供處理器802執行之指令或供處理器802操作之資料的主記憶體。作為實例而非作為限制,電腦系統800可自儲存器806或另一源(諸如另一電腦系統800)加載指令至記憶體804。處理器802接著可自記憶體804加載指令至內部暫存器或內部快取記憶體。為執行指令,處理器802可自內部暫存器或內部快取記憶體擷取指令並對其進行解碼。在指令執行期間或之後,處理器802可寫入一或多個結果(其可為中間或最終結果)至內部暫存器或內部快取記憶體。處理器802接著可寫入彼等結果中之一或多者至記憶體804。在特定具體實例中,處理器802僅僅執行一或多個內部暫存器或內部快取記憶體中或記憶體804(與儲存器806相對或在別處)中的指令且僅僅對一或多個內部暫存器或內部快取記憶體中或記憶體804(與儲存器806相對或在別處)中之資料進行操作。一或多個記憶體匯流排(其可各自包括位址匯流排及資料匯流排)可將處理器802耦接至記憶體804。如下文所描述,匯流排812可包括一或多個記憶體匯流排。在特定具體實例中,一或多個記憶體管理單元(memory management unit;MMU)駐留在處理器802與記憶體804之間並促進對由處理器802所請求之記憶體804的存取。在特定具體實例中,記憶體804包括隨機存取記憶體(random access memory;RAM)。適當時,此RAM可為揮發性記憶體。適當時,此RAM可為動態RAM(dynamic RAM;DRAM)或靜態RAM(static RAM;SRAM)。此外,適當時,此RAM可為單埠或多埠RAM。本發明預期任何合適的RAM。適當時,記憶體804可包括一或多個記憶體804。儘管本發明描述及說明特定記憶體,但本發明預期任何合適的記憶體。
在特定具體實例中,儲存器806包括用於資料或指令之大容量儲存器。作為實例而非作為限制,儲存器806可包括硬碟機(hard disk drive;HDD)、軟碟機、快閃記憶體、光學光碟、磁性光學光碟、磁帶或通用串列匯流排(Universal Serial Bus;USB)隨身碟或此等中之兩者或大於兩者的組合。適當時,儲存器806可包括可移式或非可移式(或固定)媒體。適當時,儲存器806可在電腦系統800內部或外部。在特定具體實例中,儲存器806為非揮發性固態記憶體。在特定具體實例中,儲存器806包括唯讀記憶體(read-only memory;ROM)。適當時,此ROM可為掩模經程式化ROM、可程式化ROM(programmable ROM;PROM)、可抹除PROM(erasable PROM;EPROM)、電可抹除PROM(electrically erasable PROM;EEPROM)、電可改ROM(electrically alterable ROM;EAROM),或快閃記憶體或此等中之兩者或大於兩者的組合。本發明預期採取任何合適實體形式的大容量儲存器806。適當時,儲存器806可包括一或多個儲存器控制單元,其促進處理器802與儲存器806之間的通信。適當時,儲存器806可包括一或多個儲存器806。儘管本發明描述及說明特定儲存器,但本發明預期任何合適的儲存器。
在特定具體實例中,I/O介面808包括硬體、軟體或兩者,提供一或多個介面用於在電腦系統800與一或多個I/O裝置之間的通信。適當時,電腦系統800可包括此等I/O裝置中之一或多者。此等I/O裝置中之一或多者可啟用在個人與電腦系統800之間的通信。作為實例而非作為限制,I/O裝置可包括鍵盤、小鍵盤、麥克風、監視器、滑鼠、印表機、掃描器、揚聲器、靜態攝影機、手寫筆、平板電腦、觸控螢幕、軌跡球、視訊攝影機,另一合適之I/O裝置或此等中之兩者或大於兩者的組合。I/O裝置可包括一或多個感測器。本發明預期任何合適之I/O裝置及用於其之任何合適之I/O介面808。適當時,I/O介面808可包括一或多個裝置或軟體驅動程式,使得處理器802能夠驅動此等I/O裝置中之一或多者。適當時,I/O介面808可包括一或多個I/O介面808。儘管本發明描述及說明特定I/O介面,但本發明預期任何合適的I/O介面。
在特定具體實例中,通信介面810包括硬體、軟體或兩者,提供一或多個介面用於在電腦系統800與一或多個其他電腦系統800或一或多個網路之間的通信(諸如基於封包之通信)。作為實例而非作為限制,通信介面810可包括用於與乙太網路或其他基於有線之網路通信的網路介面控制器(network interface controller;NIC)或網路配接器或用於與無線網路(諸如WI-FI網路)通信的無線NIC(wireless NIC;WNIC)或無線配接器。本發明預期任何合適的網路及用於其之任何合適的通信介面810。作為實例而非作為限制,電腦系統800可與特用網路、個人區域網路(personal area network ;PAN)、區域網路(local area network;LAN)、廣域網路(wide area network;WAN)、都會區域網路(metropolitan area network;MAN)或網際網路之一或多個部分或此等中之兩者或大於兩者的組合通信。此等網路中之一或多者的一或多個部分可為有線或無線。作為實例,電腦系統800可與無線PAN(wireless PAN;WPAN)(諸如藍芽WPAN)、WI-FI網路、WI-MAX網路、蜂巢式電話網路(諸如全球行動通信系統(Global System for Mobile Communication;GSM)網路),或其他合適無線網路或此等中之兩者或大於兩者的組合通信。適當時,電腦系統800可包括用於此等網路中之任一者的任何合適之通信介面810。適當時,通信介面810可包括一或多個通信介面810。儘管本發明描述及說明特定通信介面,但本發明預期任何合適的通信介面。
在特定具體實例中,匯流排812包括將電腦系統800之組件彼此耦接的硬體、軟體,或兩者。作為實例而非作為限制,匯流排812可包括加速圖形埠(Accelerated Graphics Port;AGP)或另一圖形匯流排、增強行業標準架構(Enhanced Industry Standard Architecture;EISA)匯流排、前側匯流排(front-side bus;FSB)、超傳輸(HT)互連、行業標準架構(Industry Standard Architecture;ISA)匯流排、INFINIBAND互連、低針腳數(low-pin-count;LPC)匯流排、記憶體匯流排、微型通道架構(Micro Channel Architecture;MCA)匯流排、周邊組件互連(Peripheral Component Interconnect;PCI)匯流排、PCI高速(PCI-Express;PCIe)匯流排、串列進階附接技術(serial advanced technology attachment;SATA)匯流排、視訊電子標準協會局部(Video Electronics Standards Association local;VLB)匯流排,或另一合適之匯流排或此等匯流排中之兩者或大於兩者的組合。適當時,匯流排812可包括一或多個匯流排812。儘管本發明描述及說明特定匯流排,但本發明預期任何合適的匯流排或互連。
本文中,一或多個電腦可讀非暫時性儲存媒體在適當時可包括一或多個基於半導體或其他積體電路(integrated circuit;IC)(諸如場可程式化閘陣列(FPGA)或特殊應用IC(ASIC))、硬碟機(HDD)、混合式硬碟機(hybrid hard drive;HHD)、光學光碟、光學光碟機(optical disc drives;ODD)、磁性光學光碟、磁性光碟機、軟碟、軟碟機(floppy disk drive;FDD)、磁帶、固態硬碟機(solid-state drive;SSD)、RAM硬碟機、安全數位卡或驅動機、任何其他合適之電腦可讀取非暫時性儲存媒體,或此等中之兩者或大於兩者的任何合適組合。電腦可讀取非暫時性儲存媒體可在適當時為揮發性、非揮發性或揮發性與非揮發性的組合。
本文中,除非另外明確指示或上下文另外指示,否則「或」為包括性且並非排他性的。因此,除非另外明確指示或上下文另外指示,否則本文中「A或B」意謂「A、B或兩者」。此外,除非另外明確指示或上下文另外指示,否則「及」為聯合及各自兩者。因此,除非另外明確指示或上下文另外指示,否則本文中「A及B」意謂「A及B,聯合地或各自地」。
本發明之範疇涵蓋所屬技術領域中具有通常知識者將瞭解的本文中描述或說明之實例具體實例的全部改變、取代、變化、更改及修改。本發明之範疇不限於本文中所描述或說明的實例具體實例。此外,儘管本發明將本文各別具體實例描述及說明為包括特定組件、元件、特徵、功能、操作或步驟,但此等具體實例中之任一者可包括所屬技術領域中具有通常知識者將瞭解的本文中任何位置描述或說明的組件、元件、特徵、功能、操作或步驟中之任一者的任何組合或排列。此外,所附申請專利範圍中對經調適以、經配置以、能夠、經組態以、經啟用以、可操作以或操作以執行一特定功能的設備或系統或設備或系統之組件的參考涵蓋只要彼設備、系統或組件因此經調適、經配置、能夠、經組態、經啟用、經操作或可操作,彼設備、系統、組件(不管其或彼特定功能)便經激活、接通或解鎖。另外,儘管本發明將特定具體實例描述或說明為提供特定優點,但特定具體實例可提供此等優點中之無一者、一些或全部。
100A:虛擬實境系統 100B:擴增實境系統 102,201:使用者 104:頭戴式頭戴式器件 106,126:自追踪控制器 105A,105B,105C,107A,107B,107C,127A,127B,127C,211,213,221,223,225,231,233,235,312,313,314,321,322,323,331,332,333,341:攝影機 108,120:計算系統 110:頭戴式顯示器(HMD) 112:框架 114A,114B:顯示器 200A,600:實例機制 200B,200C,200D,300A,300B,300C,500:實例過程 204A,204B:手 205A,205B,409A,409B:腿 206A,206B,347,408A,408B:腳 207A,207B,410A,410B:臂 208,640:本地端電腦 210,310,610:頭戴式器件 212,214,222,224,226,232,234,236,346:視場/FOV 220,230,320,330,340,501,502,620,630:控制器 238:地面 241,242A,242B,243A,243B,244A,244B,348:關鍵點 311,324,612,622,632:慣性量測單元(IMU) 325,335,345:控制器軸線 342:控制器中心點/無線通信連接件 349:旋轉角 400,514:肌肉-骨架模型 401:頭部位置 402:面部方向 403:頸部 404A,404B:肩部 405A,405B:肘部 406A,406B:手 407A,407B:膝部 411A,411B:髖部 412:身體中心參考點 503:頭戴式器件感測器 511A,511B:關鍵點提取模組 512:聚集模組 513:初始全身姿勢 515:逆動態最佳化器 516:經優化全身姿勢 517:關鍵點推斷模組 521:先前訊框 522:時間神經網路(TNN) 523A:經判定關鍵點 523B:經推斷關鍵點 523C:經預測關鍵點 611A,611B,611C:頭戴式器件攝影機 621A,621B,621C,631A,631B,631C:控制器攝影機 650,660:資料安全機制 700:實例方法 710,720,730,740,750,760:步驟 800:電腦系統 802:處理器 804:記憶體 806:儲存器 808:輸入/輸出(I/O)介面 810:通信介面 812:匯流排
[圖1A]說明具有自追踪控制器之實例人工實境系統。
[圖1B]說明具有自追踪控制器之實例擴增實境系統。
[圖2A]說明使用頭戴式器件感測器及控制器感測器以追踪使用者身體姿勢之實例機制。
[圖2B]說明使用控制器及頭戴式器件姿勢以追踪使用者之上部身體部位的實例過程。
[圖2C]說明使用控制器攝影機以追踪使用者之下部身體部位的實例過程。
[圖2D]說明使用頭戴式器件感測器及控制器感測器以追踪使用者之全身的實例過程。
[圖3A]說明使用自追踪控制器以執行即時定位與地圖建構(SLAM)的實例過程。
[圖3B]說明使用頭戴式器件感測器判定控制器位置及定向的實例過程。
[圖3C]說明用於使用控制器攝影機資料判定與使用者身體部分相關聯之關鍵點的實例過程。
[圖4]說明人體之實例肌肉-骨架模型。
[圖5]說明估計使用者之全身姿勢的實例過程。
[圖6]說明用於資料安全及使用者隱私保護之實例機制。
[圖7]說明使用自追踪控制器來判定使用者之全身姿勢的實例方法。
[圖8]說明實例電腦系統。
700:實例方法
710,720,730,740,750,760:步驟

Claims (20)

  1. 一種藉由一計算系統進行之方法,其包含: 基於由使用者握持的控制器俘獲之感測器資料來判定該控制器之姿勢; 基於(1)由該控制器之一或多個攝影機俘獲的一或多個第一影像及(2)該控制器之該姿勢來判定與該使用者之身體的第一部分相關聯的第一組關鍵點之位置; 基於由頭戴式器件俘獲之感測器資料來判定由該使用者佩戴的該頭戴式器件之姿勢; 基於(1)由該頭戴式器件之一或多個攝影機俘獲之一或多個第二影像及(2)該頭戴式器件之該姿勢來判定與該使用者之該身體之第二部分相關聯的第二組關鍵點之位置;及 至少基於該第一組關鍵點之該位置及該第二組關鍵點之該位置來判定該使用者之全身姿勢。
  2. 如請求項1之方法,其中該控制器之該姿勢包含該控制器在三維空間內的位置、軸線方向及旋轉角,且其中該頭戴式器件之該姿勢包含該頭戴式器件在該三維空間內的位置及兩個軸線方向。
  3. 如請求項1之方法,其中由該控制器俘獲之該感測器資料包含慣性量測單元(IMU)資料,且其中該控制器之該姿勢係使用即時定位與地圖建構(SLAM)來判定以用於自定位。
  4. 如請求項1之方法,其進一步包含: 基於在該使用者之該身體的第三部分與該控制器之該姿勢之間的直接相關來判定該使用者之該身體的該第三部分之第三組關鍵點。
  5. 如請求項1之方法,其進一步包含: 基於在該使用者之該身體的第三部分與該頭戴式器件之該姿勢之間的直接相關來判定該使用者之該身體的該第三部分之第三組關鍵點。
  6. 如請求項1之方法,其進一步包含: 基於由第二控制器之一或多個攝影機俘獲的一或多個第三影像來判定與該使用者之該身體的該第一部分相關聯的第三組關鍵點之位置,其中該一或多個第三影像自不同於由該控制器之該一或多個攝影機俘獲的該一或多個第一影像的視角來俘獲該使用者之該身體的該第一部分。
  7. 如請求項6之方法,其進一步包含: 聚集該第一組關鍵點、該第二組關鍵點及該第三組關鍵點;及 饋送經聚集之該第一組關鍵點、該第二組關鍵點及該第三組關鍵點至逆動態最佳化器中,其中該使用者之該全身姿勢係使用該逆動態最佳化器而判定。
  8. 如請求項7之方法,其中該逆動態最佳化器包含基於肌肉-骨架模型而判定的一或多個約束條件,且其中該使用者之該全身姿勢係根據該一或多個約束條件及該肌肉-骨架模型而判定。
  9. 如請求項1之方法,其進一步包含: 饋送與該使用者之該身體之一或多個部分相關聯的先前經判定關鍵點至時間神經網路(TNN),其中該先前經判定關鍵點係基於該使用者之該身體的該一或多個部分之先前影像而判定;及 藉由該時間神經網路(TNN)基於與該使用者之該身體之該一或多個部分相關聯的該先前經判定關鍵點來判定與該使用者的該身體之該一或多個部分相關聯的一或多個預測關鍵點,其中該時間神經網路係使用歷史資料而訓練。
  10. 如請求項9之方法,其中該使用者之該全身姿勢係基於與該使用者的該身體之該一或多個部分相關聯的該一或多個預測關鍵點而判定。
  11. 如請求項1之方法,其中該一或多個第一影像係在該控制器內本地端地進行處理,該方法進一步包含: 防止該一或多個第一影像傳輸到該控制器外部;及 傳輸該第一組關鍵點至該頭戴式器件,且其中該使用者之該全身姿勢係在該頭戴式器件內本地端地進行判定。
  12. 如請求項1之方法,其進一步包含: 傳輸該一或多個第一影像至該頭戴式器件,其中該一或多個第一影像係在本地端藉由該頭戴式器件之一或多個計算單元來處理,且其中該第一組關鍵點係在該頭戴式器件內本地端地進行判定;及 防止該一或多個第一影像及該第一組關鍵點傳輸到該頭戴式器件外部。
  13. 如請求項1之方法,其中該使用者之該全身姿勢覆蓋該使用者之該身體的該第一部分及該使用者之該身體的該第二部分,且其中該使用者之該身體的該第一部分落在該頭戴式器件之該一或多個攝影機的視場外。
  14. 如請求項1之方法,其中該使用者之該全身姿勢至少包含:使用與該頭戴式器件相關聯之慣性量測單元判定的頭部姿勢、基於該控制器之該姿勢而判定的手姿勢、基於由該控制器之該一或多個攝影機俘獲的該一或多個第一影像而判定的下部身體姿勢,及基於由該頭戴式器件之該一或多個攝影機俘獲的該一或多個第二影像而判定的上部身體姿勢。
  15. 一或多個體現軟體之電腦可讀取非暫時性儲存媒體,該軟體經執行時在操作上進行以下操作: 基於由使用者握持的控制器俘獲之感測器資料來判定該控制器之姿勢; 基於(1)由該控制器之一或多個攝影機俘獲的一或多個第一影像及(2)該控制器之該姿勢來判定與該使用者之身體的第一部分相關聯的第一組關鍵點之位置; 基於由該使用者佩戴的頭戴式器件俘獲之感測器資料來判定該頭戴式器件之姿勢; 基於(1)由該頭戴式器件之一或多個攝影機俘獲之一或多個第二影像及(2)該頭戴式器件之該姿勢來判定與該使用者之該身體之第二部分相關聯的第二組關鍵點之位置;及 至少基於該第一組關鍵點之該位置及該第二組關鍵點之該位置來判定該使用者之全身姿勢。
  16. 如請求項15之電腦可讀取非暫時性儲存媒體,其中該控制器之該姿勢包含該控制器在三維空間內的位置、軸線方向及空間角,且其中該頭戴式器件之該姿勢包含該頭戴式器件在該三維空間內的位置及兩個軸線方向。
  17. 如請求項16之電腦可讀取非暫時性儲存媒體,其中由該控制器俘獲之該感測器資料包含慣性量測單元(IMU)資料,且其中該控制器之該姿勢係使用即時定位與地圖建構(SLAM)來判定以用於自定位。
  18. 一種系統,其包含: 一或多個非暫時性電腦可讀取儲存媒體,其包含指令;及 一或多個處理器,其耦接至該一或多個非暫時性電腦可讀取儲存媒體且執行該指令以在操作上進行以下操作: 基於由使用者握持的控制器俘獲之感測器資料來判定該控制器之姿勢; 基於(1)由該控制器之一或多個攝影機俘獲的一或多個第一影像及(2)該控制器之該姿勢來判定與該使用者之身體的第一部分相關聯的第一組關鍵點之位置; 基於由該使用者佩戴的頭戴式器件俘獲之感測器資料來判定該頭戴式器件之一姿勢; 基於(1)由該頭戴式器件之一或多個攝影機俘獲之一或多個第二影像及(2)該頭戴式器件之該姿勢來判定與該使用者之該身體之第二部分相關聯的第二組關鍵點之位置;及 至少基於該第一組關鍵點之該位置及該第二組關鍵點之該位置來判定該使用者之一全身姿勢。
  19. 如請求項18之系統,其中該控制器之該姿勢包含該控制器在三維空間內的位置、軸線方向及空間角,且其中該頭戴式器件之該姿勢包含該頭戴式器件在該三維空間內的位置及兩個軸線方向。
  20. 如請求項19之系統,其中由該控制器俘獲之該感測器資料包含慣性量測單元(IMU)資料,且其中該控制器之該姿勢係基於使用即時定位與地圖建構(SLAM)來判定以用於自定位。
TW111113233A 2021-06-21 2022-04-07 使用自追踪控制器的身體姿勢估計 TW202303350A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/353,696 US11507203B1 (en) 2021-06-21 2021-06-21 Body pose estimation using self-tracked controllers
US17/353,696 2021-06-21

Publications (1)

Publication Number Publication Date
TW202303350A true TW202303350A (zh) 2023-01-16

Family

ID=82156817

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111113233A TW202303350A (zh) 2021-06-21 2022-04-07 使用自追踪控制器的身體姿勢估計

Country Status (5)

Country Link
US (3) US11507203B1 (zh)
EP (1) EP4359892A1 (zh)
CN (1) CN117529700A (zh)
TW (1) TW202303350A (zh)
WO (1) WO2022271415A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3093578A1 (fr) * 2019-03-05 2020-09-11 Orange Procédé et dispositif de traitement de données d'un environnement de réalité virtuelle.
US11995240B2 (en) 2021-11-16 2024-05-28 Neosensory, Inc. Method and system for conveying digital texture information to a user
CN115862074B (zh) * 2023-02-28 2023-05-30 科大讯飞股份有限公司 人体指向确定、屏幕控制方法、装置及相关设备
CN116994339B (zh) * 2023-09-27 2024-01-23 成都谷帝科技有限公司 一种基于图像处理的用于坐位体前屈测试的方法和系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8702516B2 (en) * 2010-08-26 2014-04-22 Blast Motion Inc. Motion event recognition system and method
JP6355978B2 (ja) * 2014-06-09 2018-07-11 株式会社バンダイナムコエンターテインメント プログラムおよび画像生成装置
WO2017117675A1 (en) 2016-01-08 2017-07-13 Sulon Technologies Inc. Head mounted device for augmented reality
US20210157394A1 (en) 2019-11-24 2021-05-27 XRSpace CO., LTD. Motion tracking system and method

Also Published As

Publication number Publication date
US20240085993A1 (en) 2024-03-14
EP4359892A1 (en) 2024-05-01
US20230185386A1 (en) 2023-06-15
US11868546B2 (en) 2024-01-09
US11507203B1 (en) 2022-11-22
CN117529700A (zh) 2024-02-06
WO2022271415A1 (en) 2022-12-29

Similar Documents

Publication Publication Date Title
US10453175B2 (en) Separate time-warping for a scene and an object for display of virtual reality content
TW202303350A (zh) 使用自追踪控制器的身體姿勢估計
JP6439702B2 (ja) 画像処理装置及び画像処理方法、コンピューター・プログラム、並びに画像表示システム
US20150070274A1 (en) Methods and systems for determining 6dof location and orientation of head-mounted display and associated user movements
JP6619871B2 (ja) 媒介現実コンテンツの共有
US20130241927A1 (en) Computer device in form of wearable glasses and user interface thereof
US11199711B2 (en) Enhanced reality systems
CN114365555A (zh) 人工现实设备之间的时间同步
US20130265300A1 (en) Computer device in form of wearable glasses and user interface thereof
TW201835723A (zh) 圖形處理方法和裝置、虛擬實境系統和計算機儲存介質
CN102959616A (zh) 自然交互的交互真实性增强
KR20220137880A (ko) 증강 현실에서 물리적 객체에 의한 가상 객체의 오클루전
US11436790B2 (en) Passthrough visualization
TW202326365A (zh) 手持裝置的追蹤
KR20220125353A (ko) 인공 현실에서 물리적 환경의 실시간 시각화를 자동으로 트리거하기 위한 시스템, 방법 및 매체
KR20220092998A (ko) 공유된 인공 현실 환경에서 동일 장소에 위치된 포즈 추정
CN116261706A (zh) 用于使用融合数据进行对象跟踪的系统和方法
US20220319041A1 (en) Egocentric pose estimation from human vision span
WO2017061890A1 (en) Wireless full body motion control sensor
US20230136662A1 (en) Parallax Asynchronous Spacewarp for Multiple Frame Extrapolation
TW202240538A (zh) 基於人類視覺跨度之自我中心姿勢估計
WO2023277043A1 (ja) 情報処理装置
US20230316636A1 (en) Reprojection method of generating reprojected image data, XR projection system, and machine-learning circuit
JP6983639B2 (ja) 仮想空間を介して通信するための方法、当該方法をコンピュータに実行させるためのプログラム、および当該プログラムを実行するための情報処理装置
TW202334905A (zh) 在共享現實世界環境中的多個虛擬實境系統之空間錨點共享