TW202336562A - 控制和虛擬物件的互動 - Google Patents

控制和虛擬物件的互動 Download PDF

Info

Publication number
TW202336562A
TW202336562A TW111135403A TW111135403A TW202336562A TW 202336562 A TW202336562 A TW 202336562A TW 111135403 A TW111135403 A TW 111135403A TW 111135403 A TW111135403 A TW 111135403A TW 202336562 A TW202336562 A TW 202336562A
Authority
TW
Taiwan
Prior art keywords
virtual
physical object
user
physical
representation
Prior art date
Application number
TW111135403A
Other languages
English (en)
Inventor
布蘭登 富特文格勒
C 喬納森安德魯
艾蒂安 蘋尚
薩幕爾 馬修 雷瓦帝克
馬修 亞倫 英斯利
傑森 查理斯 連姆格魯伯
諾拉 萊利 史密斯
珍妮弗 林恩 史柏拉克
麥克 梅德洛克
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 TW202336562A publication Critical patent/TW202336562A/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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • 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/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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/014Hand-worn input/output arrangements, e.g. data gloves
    • 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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • 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
    • 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/0485Scrolling or panning
    • 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/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/014Force feedback applied to GUI
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

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)
  • Computer Vision & Pattern Recognition (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

所揭露的電腦實施的方法可包含在一虛擬環境之中產生一虛擬項目。所述方法亦可包含利用各種的硬體感測器來偵測將在所述虛擬環境之中被描繪的一實體物件的一目前的位置。所述方法接著可包含在所述虛擬環境之中產生所述實體物件的一虛擬表示。所述實體物件的所述虛擬表示可被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動。所述方法亦可包含在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的移動脫鉤。各種其它的方法、系統及電腦可讀取的媒體亦被揭露。

Description

控制和虛擬物件的互動
本揭露內容大致是針對於以一受控的方式來使物件的虛擬表示與它們所代表的實體物件脫鉤的各種方法。
相關申請案的交互參照
此申請案主張2021年10月29日申請的美國非臨時申請案號17/514800的益處,所述美國非臨時申請案的揭露內容是以其整體被納入作為此案參考。
在包含擴增實境、虛擬實境、或其它類似系統的人工實境系統中,經常採取步驟來繪製及/或追蹤真實世界的物體,並且接著在人工實境環境中描繪那些被追蹤的物體。例如,人工實境系統可以判斷使用者的手臂或手的目前的位置,並且接著追蹤那些物體在實體空間中的任何移動。那些實體項目的移動接著可以在一人工實境環境中被對映到虛擬手臂或手。
在一態樣中,揭露一種電腦實施的方法,其包括:在一虛擬環境之中產生一虛擬項目;利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置;在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的所述移動脫鉤。
在另一態樣中,揭露一種系統,其包括:至少一實體處理器;以及包括電腦可執行的指令的實體記憶體,當所述指令藉由所述實體處理器執行時,其使得所述實體處理器:在一虛擬環境之中產生一虛擬項目;利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置;在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的所述移動脫鉤。
在又一態樣中,揭露一種非暫態的電腦可讀取的媒體,其包括一或多個電腦可執行的指令,當所述指令藉由一計算裝置的至少一處理器執行時,其使得所述計算裝置:在一虛擬環境之中產生一虛擬項目;利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置;在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的所述移動脫鉤。
本揭露內容大致是針對於以一受控的方式來使物件的虛擬的表示與它們所代表的實體物件脫鉤的各種方法。在包含擴增實境、虛擬實境、或其它類似系統的人工實境系統中,經常採取步驟來繪製及/或追蹤真實世界的物體,並且接著在人工實境環境中描繪那些被追蹤的物體。例如,人工實境系統可以判斷使用者的手臂或手的目前的位置,並且接著追蹤那些物體在實體空間中的任何移動。那些實體項目的移動接著可以在一人工實境環境中被對映到虛擬的手臂或手。
這些系統可以嘗試準確地將所述使用者的實體移動對映至人工實境環境中的所述虛擬手臂或手。在某些情形中,這些人工實境系統可以利用安裝到人工實境裝置的外部攝影機、或是安裝到控制器的攝影機,來判斷所述使用者的手的目前的位置。此位置接著將會被用來顯現所述使用者的實體移動的一虛擬表示。在其它情形中,這些人工實境系統可以使用全物理學模擬來實際模型化所述使用者的手指、手、或是其它身體部分,並且使用該全物理學模擬來判斷所述使用者在人工實境環境中將會如何和虛擬物件互動。然而,此全物理學模擬在計算上是非常昂貴的。再者,不論利用外部的攝影機或是執行全物理模擬,這些方法都未對於判斷何時使用者已經在所述虛擬環境中「觸碰」或者是和一虛擬物件互動提供控制。
相對於此種系統,在此的實施例是提供各種容許在人工環境之中精確的控制使用者和虛擬物件的互動之方法及系統。再者,這些實施例中的至少某些實施例可以容許和虛擬物件的虛擬互動,感覺好像它們是和實體物件的實體互動。在此的實施例可被設計以使那些實體物件(例如,使用者的手)的虛擬表示與實體物件的位置脫鉤。因此,相對於嘗試忠實地再現所述使用者的每一個移動的系統而言,在此的實施例是可控制地使所述使用者的移動與那些移動的虛擬表示脫鉤。就此而論,虛擬地代表實體物件的程序可以在計算上比全物理模擬便宜許多的,可以提供比物理為基礎的解決方案更大的彈性,並且可以容許和一虛擬項目的每一個互動為獨特的,此提供栩栩如生的感覺給每一個虛擬項目。這些實施例將會在以下參考以下的圖1的計算環境100更加詳細地加以描述。
圖1是描繪包含一電腦系統101的一計算環境100。所述電腦系統101可以是實質任意類型的電腦系統,其包含本地的電腦系統或是分散式(例如,雲端)電腦系統。所述電腦系統101可包含至少一處理器102以及至少某些系統記憶體103。所述電腦系統101亦可包含用於執行各種不同功能的程式模組。所述程式模組可以是硬體為基礎的、軟體為基礎的、或是可包含硬體及軟體的組合。每一個程式模組可以使用計算的硬體及/或軟體以執行指明的功能,其包含那些在此以下所述的功能。
例如,通訊模組104可以和其它電腦系統通訊。所述通訊模組104可包含有線或無線的通訊裝置,其接收及/或發送資料往返其它電腦系統。這些通訊裝置可包含硬體無線電,其例如包含硬體為基礎的接收器105、硬體為基礎的發送器106、或是能夠接收及發送資料的組合的硬體為基礎的收發器。所述無線電可以是WIFI無線電、蜂巢式無線電、藍芽無線電、全球定位系統(GPS)無線電、或是其它類型的無線電。所述通訊模組104可以和資料庫、行動計算裝置(例如是行動電話或平板電腦)、內嵌式或其它類型的計算系統互動。
所述電腦系統101亦可包含一虛擬環境產生模組107。所述虛擬環境產生模組107可被配置以產生人工實境的環境,其包含擴增實境的環境、虛擬實境的環境、以及其它類似的類型的虛擬或電腦產生的環境。這些虛擬環境可包含完全是虛擬項目、或是實體(亦即,真實世界的)項目以及虛擬項目108的組合。所述虛擬項目108可包含實質任何可藉由電腦產生的影像來表示的項目。在某些情形中,如同將會在以下相關於圖3進一步展示的,所述虛擬項目108可以是使用者可以互動的介面。在其它情形中,所述虛擬項目可以是牆壁、傢俱、玩具、電玩遊戲、畫筆、或是任意數量的其它項目。所述虛擬項目108可以具有真實世界的類似物、或者可以完全是出自某人的想像所產生的。所述虛擬項目108因此可以具有實質任意的形狀、大小、色彩、或是設計,並且可以用兩個維度或是三個維度來加以顯現。
電腦系統101的實體物件偵測模組109可被配置以偵測實體物件110,並且可以進一步判斷其位置及/或移動。當執行此種偵測時,所述實體物件偵測模組109可以實施任意數量的感測器或其它電子裝置(請參見圖14-20B的此種感測器及裝置的例子)。在某些情形中,所述實體物件偵測模組109可以偵測使用者的手、手指、手臂、腿、頭部、或是其它身體部分的位置111。在其它情形中,所述實體物件偵測模組109可以偵測使用者的手所持有的控制器、或指示筆、或其它電子裝置的位置。在其它情形中,所述實體物件偵測模組109可以偵測在所述系統的環境之中的包含傢俱、牆壁、窗戶、人們、智慧型手機或其它電子裝置、或是其它項目的實體物件的位置。所述實體物件偵測模組109可被配置以標示在所述環境之中的每一個項目並且追蹤其移動(若有的話)。在某些情形中,這些移動可被轉變至藉由模組107所產生的虛擬環境。
電腦系統101的虛擬表示產生模組112可以產生一偵測到的實體物件110的一虛擬表示。因此,例如若所述偵測到的實體物件110是使用者的手,則所述虛擬表示產生模組112可以產生所述使用者的手的一虛擬表示113。此虛擬表示113可被配置以大致追蹤所述使用者的手或是其它實體物件110的真實世界的實體移動。在許多在此的例子中,被所述實體物件偵測模組109追蹤的實體物件110是使用者的一隻手或兩隻手。就此而論,所述虛擬表示113在此經常可被稱為「虛擬手」,儘管將會瞭解到的是,所述虛擬表示113實際上可以代表任何實體物件,並且不限於使用者的手。確實,如同將會在此解說的,所述虛擬表示可以代表例如是鉛筆或筆的書寫工具、例如是電玩遊戲或虛擬實境控制器的控制器、使用者的臉、使用者的身體、或是其它實體物件。
電腦系統101的呈現模組114可以在一顯示器中呈現所述虛擬項目108(例如,一使用者介面)以及所述偵測到的實體物件110的虛擬表示113。所述顯示器可以是人工實境裝置117、智慧型手機116、電視、電腦螢幕、或是其它類型的使用者115可見的顯示器。在某些情形中,所述電腦系統101可以是和所述人工實境裝置117或所述智慧型手機116等等分開的,而在其它情形中,所述電腦系統(或是至少其某些構件或模組)可以是所述人工實境裝置117、所述智慧型手機116、或是其它電子裝置的部分。例如,利用所述人工實境裝置117或是所述智慧型手機116,所述使用者115可以提供輸入118至所述電腦系統,其包含相關於一人工實境介面的移動輸入。
然而,儘管所述虛擬表示113在所述虛擬環境之中的移動一般是被設計以追蹤所述偵測到的實體物件110的實體移動,但是在此的實施例中,呈現模組114可以是可控制地使所述虛擬表示與所述實體物件的真實世界的移動脫鉤。換言之,呈現模組114可以在一至少以某種方式而且在某種程度上不同於藉由所述實體物件的移動所指出的位置來呈現所述虛擬表示113。在所述虛擬表示與所述被追蹤的實體物件的實際的移動上的此差異,可以是根據該移動所判斷出的意圖而定的。譬如,若在此的系統判斷一使用者所做的一真實世界的移動是打算在所述虛擬環境之中產生某種效果,則該效果可以在所述虛擬環境之中被實行,而不論所述實體移動是否完全觸發該效果。這些概念將會在以下關於圖2的方法200以及圖3-13F來進一步加以解說。
來自在此所述的實施例的任一個的特點都可以根據在此所述的一般原理來彼此組合地利用。這些及其它實施例、特點及優點在閱讀以下的詳細說明結合所附的圖式及請求項之際將會更完全瞭解。
圖2是一種用於使物件的一虛擬表示與實體物件的移動脫鉤之範例的電腦實施的方法200的流程圖。在圖2中所示的步驟可以藉由任何適當的電腦可執行的碼及/或包含在圖1中所描繪的系統的計算系統來加以執行。在一例子中,在圖2中所示的步驟的每一個可以代表一演算法,其結構包含及/或藉由多個子步驟來加以表示,其例子將會在以下更加詳細地加以提出。
如同在圖2中所繪的,在步驟210,在此所述的系統中的一或多個可以在一虛擬環境之中產生一虛擬項目。例如,如同在圖1中所示,電腦系統101的虛擬環境產生模組107可以產生如同在圖3中所示的虛擬環境300。所述虛擬環境300可包含許多不同的虛擬項目108,其包含使用者介面301。如上所提到的,所述虛擬環境300可包含實質任意數量的虛擬項目108,並且這些項目可以對應或是可以不對應於真實世界的項目。在某些情形中,所述虛擬項目108是在所述虛擬環境之中被設置在一固定的位置,而在其它情形中,所述虛擬項目可以到處移動及重新設置,其例如是根據來自使用者115的輸入118而定。在圖3中,所述使用者介面301可包含多個不同的按鈕(例如,302)或是其它互動的元件。這些互動的元件可以容許和各種的軟體應用程式互動,所述程式可以在所述人工實境裝置117上、在所述智慧型手機116上、在另一電子裝置上執行。
電腦系統101的實體物件偵測模組109可以在方法200的步驟220偵測將在所述虛擬環境300之中被描繪的至少一實體物件110的目前的位置。所述實體物件偵測模組109可以利用各種的硬體感測器來偵測所述實體物件110以及其位置111及/或移動,其包含但不限於攝影機、加速度計、陀螺儀、壓電感測器、肌電圖(electromyography;EMG)感測器、或是其它類型的感測器。藉由模組109偵測到的實體物件110可包含使用者的左手、使用者的右手、使用者的手指、使用者的腿、腳、臉、或是其它身體部分、由使用者所持有的電子控制器、由所述使用者所持有的例如是筆或鉛筆的書寫工具、由使用者所持有的畫筆或其它工具、或是實質任何其它實體物件。儘管在此許多例子可以是指追蹤使用者的手,但將會瞭解到的是所述實體物件可以是單隻手、多隻手、一隻手的一部分、或是任何其它身體部分的一部分、或是可藉由電腦系統101的實體物件偵測模組109偵測的其它物件。
在方法200的步驟230,所述虛擬表示產生模組112可以在所述虛擬環境300之內,產生所述實體物件110的一虛擬表示113。所述實體物件110的虛擬表示113可被配置,以至少部分地依循所述實體物件相對於所述虛擬項目(例如,使用者介面301)的移動。因此,例如當所述實體物件偵測模組109追蹤使用者115的手的移動時,例如那些手的虛擬表示113可被展示在所述虛擬環境300中。因此,虛擬手303可以藉由所述虛擬表示產生模組112來加以產生,以代表所述使用者的真實世界的右手以及其相關所述使用者介面301的移動。然而,如同將會在以下展示的,在此的實施例可以可控制地使所述實體手與該手的虛擬表示113脫鉤。此受控制的脫鉤可以提供額外的感官的資訊,其可以讓所述使用者感覺好像他們正和一實際的實體物件互動。描繪此的實施例是在以下進一步加以描述。
在方法200的步驟240,電腦系統101的呈現模組114可以在所述虛擬環境300之內,呈現所述虛擬項目108以及所述實體物件110的產生的虛擬表示113。所述實體物件110的虛擬表示113可以至少部分可控制地與所述實體物件相對於所述虛擬項目108的移動脫鉤。因此,在圖3中,當使用者移動其實體手朝向所述虛擬使用者介面301時,所述使用者的實體移動可能並未對準所述介面的定位。例如,所述使用者可能意圖觸碰在使用者介面301上的按鈕302,其可能是漂浮在所述虛擬環境300之內的一固定的位置。然而,所述使用者可能不慎地移動其實體手遠超過所述使用者介面301的固定的位置。此可能在所述使用者介面上有非所要的結果。
譬如,所述使用者伸得過遠可能會不慎地選擇與所要的不同的按鈕。或是,所述使用者可能希望指向或選擇在所述使用者介面上的一特定的項目,但是接著可能移動其手或手腕,使得選擇點移動到一非所要的位置。或者是,所述使用者可能更進一步意圖在所述介面上按下一按鈕,但是可能移動其實體手遠超過所述介面的後面,並且於是可能收回其手以釋放所述按鈕。然而,因為所述使用者的實體手是如此遠超過所述使用者介面301的後面,因此取消選擇所述按鈕的動作,可能會直到所述使用者已經將其手移動回到在所述使用者介面301的前面的一位置之後才發生。這些移動可能會讓使用者感到疲勞,並且若非所要的動作在所述使用者介面上被實行可能會導致挫折。以上的例子可以藉由可控制地使所述使用者的實體移動與在所述虛擬環境300中的所述虛擬表示的移動(例如,虛擬手303)脫鉤來部分或完全地加以避免。
例如,圖4是提供一種用於使物件的一虛擬表示與實體物件的移動脫鉤之範例的電腦實施的方法400的流程圖,其藉由在一相關虛擬項目的指定的位置處停止所述虛擬表示。在圖4中所示的步驟可以藉由任何適當的電腦可執行的碼及/或包含在圖1中所描繪的系統的計算系統來加以執行。在一例子中,在圖4中所示的步驟的每一個可以代表一演算法,其結構包含及/或藉由多個子步驟來加以表示,其例子將會在以下更加詳細地加以提出。
在步驟410,所述虛擬環境產生模組107可以產生一虛擬項目(例如,圖5A的使用者介面501),其具有在一虛擬環境500之內的一指定的位置。在步驟420,所述實體物件偵測模組109接著可以利用各種的硬體感測器來偵測將在所述虛擬環境500之中被描繪的至少一實體物件110的目前的位置111。在步驟430,所述虛擬表示產生模組112可以在所述虛擬環境500之內產生所述實體物件110的一虛擬表示113。例如,圖5A的虛擬手503可以是使用者的實體手的一表示。所述虛擬手503可被配置以至少部分地依循所述使用者的實體手相對於所述虛擬使用者介面501的移動。在步驟440,所述實體物件偵測模組109接著可能判斷所述使用者的手的一偵測到的移動,將會移動所述實體物件的虛擬表示(例如,所述虛擬手503)超過所述虛擬使用者介面501的所指明的位置。在步驟450,呈現模組114接著可以在所述虛擬環境500之內呈現所述虛擬使用者介面501以及所產生的虛擬手503。然而,在此呈現之內,所述虛擬手503是被配置以至少部分地停止在所述虛擬使用者介面501的所指明的位置,而不論所述使用者移動其實體手超過所述虛擬使用者介面501的位置有多遠。
例如,如同在圖5A中所示,一虛擬手503可被描繪為和所述虛擬使用者介面501互動。在圖5A中,可以看到所述虛擬手503移動朝向使用者介面按鈕502。在圖5B中,所述虛擬手503已經到達所述虛擬使用者介面(UI)按鈕502,並且已經選擇該按鈕(如同藉由所述按鈕在色彩上的改變所表明的)。再者,在「接觸」所述使用者介面501的虛擬表面(或是某些其它虛擬項目108的表面)之際,所述虛擬環境500可以顯示一可視線索504,其有助於所述使用者知道他們已經在何處接觸所述使用者介面。在所述虛擬環境500之內,當所述被追蹤的實體物件已經移動其虛擬表示足夠接近另一虛擬物件時,一虛擬物件可以接觸所述另一虛擬物件。然而,超過所述虛擬物件的移動可能被錯誤地解釋,因而可能記錄非所要的輸入。
在此所述的實施例可被配置以在所述虛擬項目的表面處停止(或至少是暫時停止)所述虛擬表示,而不論所述實體物件行進超過所述虛擬項目的表面有多遠。譬如,如同在圖5C中所示,在距離D1,所述使用者的實體手505以及所述虛擬手503都可以是實質在所述虛擬使用者介面501的表面。在至少某些在此的實施例中,即使所述使用者移動其實體手505至超過所述虛擬使用者介面501的表面的距離D2,所述虛擬手仍可以保持停止在其觸碰所述虛擬使用者介面501的表面的位置。因此,在此種情形中,即使所述使用者是提供原本會移動所述虛擬手503超過所述虛擬使用者介面501的移動,但是在此的系統可以可控制地使所述使用者的實體手505的移動與所述虛擬手503的移動脫鉤,並且可以容許所述虛擬手503保持在其觸碰所述虛擬使用者介面501的表面的位置,而不是推進穿過所述虛擬使用者介面501。在此種實施例中,即使所述使用者移動其實體手至距離D2、D3、D4、或是超過D4,此仍然可以成立。此種實施例可被稱為「硬停」實施例。
額外或是替代地,在此的系統可以在「軟停」實施例中被配置以施加一較不嚴格的限制。例如,在圖6A中,一虛擬環境600可以具有一虛擬使用者介面601,其具有各種互動的元件(例如,602)。在圖6A中,使用者已經移動其實體手至一位置,其使得所述虛擬手603觸碰所述按鈕602(如同藉由可視線索604所指出的)。然而,並非施加硬停而不論所述使用者的手移動超過所述虛擬使用者介面601有多遠,所述軟停實施例可以只上到一指定的點停止移動所述虛擬手。例如,在某些情形中,如同在圖6B中所示,若所述使用者移動其實體手足夠遠到超過所述虛擬使用者介面601,則在此的系統可以把那些移動解釋為所述使用者意圖移動所述虛擬手超過所述虛擬使用者介面601,並且潛在的是移動到所述虛擬環境600中的一不同的虛擬項目(如同藉由所述虛擬手603的手指開始消失在所述虛擬使用者介面601之後所指出的)。因此,如同在圖6C中所示,所述虛擬手603可以是可控制地與所述使用者的實體手605脫鉤,使得若所述使用者的實體手是在位置D1或D2,則所述虛擬手將會被停止在其目前的位置,而若所述使用者移動其手至位置D3或D4,則所述虛擬手將不再被停止,並且將會開始移動超過所述虛擬使用者介面601。
使得所述虛擬手在被停止之後再移動所需的距離量可以藉由策略(例如,被儲存在圖1的資料儲存庫120中的策略121)來加以控制、或是可以藉由使用者來指明。這些策略121可以根據和使用者互動的虛擬物件的哪一種類型而變化。因此,某些介面或表面可以具有一非常短的距離量(例如,D1-D4),超過所述非常短距離量所述虛擬物件將不再被停止,而其它介面或表面可以具有一非常大的距離量,超過所述非常大距離量所述虛擬物件將不再被停止移動。因此,和一虛擬環境中的每一個表面的互動可以是獨特的。某些表面可以將所述虛擬手603停止在其表面,而不論進一步的實體手移動為何(例如,硬停)。其它表面可以只短暫地將所述虛擬手603停止在其表面,此是解釋甚至短距離的移動超過其表面也為所述使用者的意圖移動超過所述表面。停止的量可以完全是可變的,並且可以針對於不同的虛擬環境、不同的使用者、不同的物件或表面而為不同的,並且可以針對於不同的實體物件,包含手、控制器、鉛筆、畫筆等等而為不同的。停止的量亦可以隨著時間過去而改變,並且可以在每一個人工實境對話中變化。
以此種方式,虛擬表示(例如,虛擬手603)在虛擬項目的表面的受控制的停止,可以控制或施加限制到一虛擬環境之中的項目如何「被觸碰」或是「被接觸」。此觸碰限制可被用來定義一虛擬表面開始及結束之處。在一例子中,若所述虛擬項目是被顯示在一指定的位置的一燈開關,則在此的系統可以在所述虛擬手(或是其它虛擬表示)的位置上設置一嚴格的限制,因而即使所述使用者的實體手,提供將會把所述虛擬手帶到超過所述虛擬燈開關的輸入,所述虛擬手仍然可以是「觸碰受限的」,並且可被配置以可控制地停止在所述燈開關的表面上。就此而論,所述虛擬手的觸碰可被限制並且可被停止在所述燈開關處,即使所述使用者的實體手將會指出超過所述燈開關的移動。
在其它情形中,此限制可以不是硬停,而是可以成比例地被施加,因而若所述使用者的實體手譬如以超過所述虛擬燈開關5cm來移動超過所述燈開關,則所述虛擬手將會繼續移動。在某些情形中,所述虛擬手603可以更緩慢地移動超過所述虛擬燈開關或是其它虛擬項目,此給予所述虛擬手觸碰一像是麵團的厚的物質的感覺。若所述使用者的實體手移動到例如超過所述虛擬燈開關10cm,則所述虛擬手可以完全移動穿過所述虛擬燈開關而進入到開放空間中、或是到所述虛擬燈開關之後的另一虛擬物件之上。因此,所述觸碰限制可以用一完全開啟的方式(硬停)、或是用一成比例的方式(軟停)來施加,此容許觸碰限制能夠針對於接近所述虛擬項目的特定的移動而發生,但是一旦所述移動已經充分移動超過所述虛擬項目後就終止。
在某些情形中,當使用者最初學習和一人工實境介面互動時,所述使用者可以利用其手及/或手臂來提供移動,並且電腦系統101的實體物件偵測模組109可以追蹤那些移動,並且判斷所述虛擬表示113是如何相對於每一個虛擬項目108而移動的。當所述使用者例如利用其手來和一介面互動時,所述電腦系統101可以直接由所述使用者告知所述使用者的偏好、或是可以隨著時間過去學習所述使用者有關觸碰限制的偏好。因此,在所述使用者的移動以及所述虛擬表示相應地移動量(或是不移動)之間的脫鉤量可以改變,並且可以是隨著時間過去可適配的。這些改變可以根據來自所述使用者的輸入、或是根據機器學習演算法而發生,例如其監視所述使用者的移動並且判斷所述使用者相關每一個虛擬項目的意圖。所述使用者可以指明脫鉤的量(例如,在實體移動以及虛擬移動之間非常鬆散的關聯、或是非常密切的關聯,所述非常密切的關聯產生在實體移動以及虛擬表示移動之間幾乎一對一的關聯性)、或是所述基礎系統可以指明脫鉤的量。此脫鉤的量可以是針對於每一個使用者以及針對於每一個虛擬及/或實體物件而為不同的,並且可以在一控制政策中(例如,121)被指明。
在方法400的例子中,在此的系統可被配置,以避免一實體物件的一虛擬表示移動超過一虛擬項目的一給定的表面(亦即,他們利用所述虛擬表示正在接觸的表面)。受控制的停止可以實質減緩所述虛擬表示在所述虛擬項目的表面的移動,並且接著在偵測到實體移動指出此移動超過應該發生之後,容許所述虛擬表示移動超過所述虛擬項目的表面。額外或是替代地,在某些情形中,在所述虛擬環境之中,在所述實體物件的虛擬表示到達所述虛擬項目的表面之後,觸覺回授可被提供給所述使用者。此觸覺回授可以利用複數個不同的觸覺裝置的任一個來提供,其包含那些在以下的圖16中敘述者。所述觸覺回授可包含例如是嗡嗡聲或震動的身體感覺,其發生在例如所述使用者的虛擬手觸碰例如是虛擬介面或虛擬燈開關的一虛擬項目的表面時。所述觸覺回授可被提供至所述使用者的實體手、手腕、手臂、臉、頭部、腿、或是其它的身體部分。所述觸覺回授可以在強度上變化,其是根據何種類型的虛擬表面正被觸碰、或是所述虛擬項目正觸碰所述表面上的何處而定。再者,所述觸覺回授的強度可以根據所述觸覺回授是在一硬停觸碰限制實施例中、或是在一軟停觸碰限制實施例中被提供來變化。
現在轉向圖7,一種用於釘扎一虛擬表示至一位置之方法700被提出,以模擬使用者若執行一例如是滾動瀏覽網頁或是在應用程式之間快速滑動的指定的動作時將會感覺到的摩擦,即使所述虛擬介面是被顯示在半空中。例如,圖7是提供一種用於使物件的一虛擬表示與實體物件的移動脫鉤之範例的電腦實施的方法700的流程圖,其藉由釘扎所述虛擬表示至一虛擬項目上的一指定的位置。在圖7中所示的步驟可以藉由任何適當的電腦可執行的碼及/或包含在圖1中所描繪的系統的計算系統來加以執行。在一例子中,在圖7中所示的步驟的每一個可以代表一演算法,其結構包含及/或藉由多個子步驟來加以表示,其例子將會在以下更加詳細地加以提出。
在方法700的步驟710,圖1的虛擬環境產生模組107可以產生一虛擬項目108,其在一虛擬環境之中具有一指定的位置。例如,所述虛擬環境產生模組107可以在圖8的虛擬環境800之內產生虛擬使用者介面801。所述虛擬使用者介面801可以是在所述虛擬環境之中的一固定的(漂浮的)位置、或者可以是可藉由使用者在所述虛擬環境之中移動的。在方法700的步驟720,圖1的實體物件偵測模組109可以利用各種的硬體感測器來偵測將在所述虛擬環境800之中被描繪的至少一實體物件110的目前的位置111。因此,在一例子中,所述實體物件偵測模組109可以偵測使用者的實體手相對於所述虛擬使用者介面801(或是其它虛擬項目108)的目前的位置之位置。
在方法700的步驟730,圖1的虛擬表示產生模組112可以在所述虛擬環境800之內產生所述實體物件110的一虛擬表示113。在此種情形中,所述實體物件110的虛擬表示113可被配置,以至少部分地依循所述實體物件相對於所述虛擬使用者介面801或是其它虛擬項目的移動。在某些情形中,譬如所述實體物件110的虛擬表示113可被配置,以實質追蹤所述實體物件相對於所述虛擬使用者介面801的任何移動,但是可以是可控制地避免與那些被追蹤的移動一致地移動所述虛擬表示。譬如,所述電腦系統101可能判斷所述實體物件110的一偵測到的移動,將會相對於所述虛擬項目橫向地移動所述實體物件的虛擬表示113。接著,在方法700的步驟740,呈現模組114可以在所述虛擬環境之中呈現所述虛擬項目108以及所述實體物件的產生的虛擬表示113,其中並不是一點不差地追蹤所述實體物件的每一個運動,所述實體物件的虛擬表示可以保持被釘扎至所述實體物件相對於所述虛擬項目的偵測到的目前的位置。
因此,如同在圖8A-8F中所示,在所述使用者的實體移動以及所述虛擬表示的移動之間的可控制的脫鉤,可以導致所述虛擬表示被釘扎到相對於一虛擬項目的一指定的位置。譬如,圖8A是描繪一虛擬使用者介面801,使用者正利用其手、控制器、書寫工具、或是其它實體物件來和其互動。在圖8A中,所述使用者的手(例如,虛擬手803)的虛擬表示可以是選擇虛擬使用者介面801的「無釘扎(No Pinning)」按鈕802。因為所述使用者已經選擇在此實施例中不施加釘扎,因此所述使用者的虛擬手803將不會被釘扎至目前的位置。因此,例如若所述使用者橫向地將其手拉至右邊,則所述虛擬手803將會和所述使用者的實體手一起移動。在圖8A-8F之內,圓圈狀的可視線索804是指出所述虛擬手803觸碰在所述虛擬使用者介面801上的位置,而陰影的圓圈指示符805是指出所述使用者的實體手相對於所述虛擬使用者介面801之處。因此,在圖8C中,其中無釘扎被施加,當所述使用者橫向地移動其實體手至右邊時(如同藉由所述指示符805所指出),所述虛擬手803以及可視線索804將會相應地滑動至右邊,如同藉由尾跡線806所指出的。所述使用者的手腕的移動亦可被捕捉並且被展示為指示符807。
然而,在其中釘扎被施加的情形中,如同在圖8D中所示,在此的系統可以判斷針對於所述使用者的實體手805的最初的位置,並且可以施加一可視線索804以指出所述虛擬手803指向何處。即使所述使用者移動其手腕(如同藉由指示符807所表明)或是移動其實體手(如同在圖8E中藉由指示符805所表明),所述虛擬手803以及可視線索804仍然可以保持在所述最初的位置。即使所述使用者旋轉其手腕(如同在圖8F中藉由指示符807所展示)或是移動其實體手指離開一最初的位置(如同藉由指示符805所展示),所述虛擬手803以及可視線索804仍然會保持在其最初的位置。
在某些情形中,所述釘扎可以用一嚴格的方式來施加,其讓所述虛擬手803被釘扎至所述最初的位置,而不論進一步實體移動為何。在其它情形中,所述釘扎可以用較小限制的受控制的方式來施加,其容許所述虛擬手能夠在所述實體手的移動之後,以一尾跡方式來移動。若所述系統是釘扎所述使用者的虛擬手指至所述虛擬介面801上的一最初的觸碰點,並且相較於藉由所述使用者的實際的實體移動所表示的(例如,805)是用一延遲或成比例降低的量來滑動所述可視線索804(或是其它虛擬觸碰指示符),則此較慢的尾跡運動可以模擬所述使用者將會感覺到的摩擦。當利用釘扎時,所述使用者可以感知這些「更高努力的」移動為摩擦(亦即,他們將會在一實體介面上感覺到的摩擦)。如上所提到的,在此的實施例亦可以斷開所述使用者的實體手腕運動與所述虛擬手803。就此而論,即使所述使用者的實體手以及手腕正在旋轉,所述虛擬環境800可以展示一虛擬手803,其被釘扎至所述最初的觸碰點,並且只可以用所述受控制的成比例降低的方式來移動。
於是,如同在圖8A-8F中所繪,所述虛擬手803可以是可控制地與所述實體物件相對於所述虛擬使用者介面801的移動脫鉤。此脫鉤可包含移動所述實體物件的虛擬表示(例如,虛擬手803)為所述實體物件的實體移動的一較小的百分比。因此,例如大的實體移動只能夠在所述虛擬環境800之內產生小的橫向移動、或是在其它情形中,小的實體移動可能會導致大的橫向移動(或是潛在地例如是正交的移動的其它移動)。差異或脫鉤的量可加以控制,並且可以依循一線性曲線、一指數曲線、或是一使用者定義的曲線,其中所述曲線具備密切的實體移動追蹤是在一端上,而鬆散的實體移動追蹤是在另一端上。圖8A-8F是描繪其中所述可控制的脫鉤包含小至無釘扎、或是較大量的釘扎的實施例,其中所述虛擬手至少最初被釘扎到一虛擬項目(例如,虛擬使用者介面801)上的一特定的位置。所述使用者的手或是其它實體物件的後續的移動可以用一成比例地較慢的方式來移動所述虛擬手803,以模擬使用者在實體觸碰感測的表面上通常會感覺到的摩擦的感覺。至少在某些情形中,釘扎的量可以是可藉由使用者自訂的,並且可以不同地施加至不同的虛擬項目、或是不同的實體物件、或是不同的使用者。因此,在一虛擬環境的每一個實例中可以施加獨特的釘扎策略。
除了觸碰限制實施例以及釘扎實施例之外,在此的系統亦可以在和虛擬使用者介面或是任何其它類型的虛擬項目互動時施加彈回協助。在此種情形中,例如,若使用者正嘗試按壓一虛擬使用者介面中的一虛擬按鈕,並且所述使用者在超過所述虛擬使用者介面上的一虛擬按鈕的位置處實際移動其手10cm,以便藉由向後移動其手指2cm而完成所述按鈕按壓,則在此的系統可被配置,以從所述使用者開始縮回其手的所述實體位置(亦即,在超過所述虛擬UI的位置10cm處)處解釋所述2cm向後運動。就此而論,並不是迫使所述使用者從所述迴轉點縮回其手12cm來完成所述按鈕按壓,而是無論所述縮回自然發生在何處,所述使用者都可以單純縮回其手。此縮回或是「彈回」因此可能發生在各種位置,其並不一定與所述虛擬UI或是其它虛擬項目相關。藉由可控制地使所述虛擬表示與所述被追蹤的實體物件脫鉤,在此的系統可以提供彈回協助以容許用一自然且預期的方式來和物件互動。此可以降低因為容許無論所述使用者的實體手在何處(即使遠超過所述虛擬介面)開始縮回,所述虛擬手的開始縮回所造成的延遲。此亦可以藉由不需要使用者縮回其手一路回到所述虛擬介面再加上取消選擇所述虛擬按鈕所需的距離,而減低使用者的疲勞。此將會在以下相關圖9的方法900來進一步解說。
在圖9中,一種用於提供彈回協助給和虛擬項目互動的使用者之方法900被描述。例如,圖9是提供一種用於使物件的虛擬表示與實體物件的移動脫鉤之範例的電腦實施的方法900的流程圖,其藉由以一受控的方式來彈回所述虛擬表示。在圖9中所示的步驟可以藉由任何適當的電腦可執行的碼及/或包含在圖1中所描繪的系統的計算系統來加以執行。在一例子中,在圖9中所示的步驟的每一個可以代表一演算法,其結構包含及/或藉由多個子步驟來加以表示,其例子將會在以下更加詳細地加以提出。
在方法900的步驟910,圖1的虛擬環境產生模組107可以產生一虛擬項目108,其具有在一虛擬環境之中的一指定的位置。例如,如同在圖10A中所示,所述虛擬環境產生模組107可以產生具有一虛擬使用者介面1001的一虛擬環境1000,其具有包含虛擬按鈕1002的多個不同的按鈕。在方法900的步驟920,圖1的實體物件偵測模組109可以利用各種的硬體感測器來偵測將在所述虛擬環境1000之中被描繪的至少一實體物件110的目前的位置111。在步驟930,所述虛擬表示產生模組112可以在所述虛擬環境1000之內產生所述實體物件110的一虛擬表示113。所述實體物件的虛擬表示(例如,虛擬手1003)可以至少部分地依循所述實體物件110相對於所述虛擬項目108的移動。
所述電腦系統101接著可以在步驟940判斷所述實體物件110的一第一移動已經將所述實體物件的所述虛擬表示移動至一第一位置,其是在所述虛擬項目的一表面的一指定的距離之內,並且所述實體物件的一第二移動已經將所述實體物件的所述虛擬表示移動至一第二位置,其是較接近所述虛擬項目的所述表面一指定的距離。在步驟950,呈現模組114可以在所述虛擬環境1000之內呈現所述虛擬項目以及所述實體物件的產生的虛擬表示,其中所述虛擬表示(例如,1003)是被配置以根據所判斷的第一及第二移動而從所述虛擬項目的所述表面彈回。
因此,例如是如同在圖10A-10C中所示,一使用者的實體手(如同由陰影的圓圈1005所代表的)以及所述虛擬手1003(如同藉由可視線索圓圈1004所指出的)可以是已經移動到實質相同的位置(如同藉由路徑指示符1006所指出的)。若所述使用者持續移動其實體手超過所述虛擬介面1001,即如同在圖10B中藉由移動指示符1007所展示的,則所述使用者可能到達遠超過所述虛擬UI 1001的表面的位置的一點(例如,一「移動終點」)。在此種彈回協助實施例中,若所述使用者希望取消選擇所述按鈕1002,則並非必須移動其手一路回到所述最初的位置再加上某段距離以執行所述取消選擇,而是所述使用者可以單純從所述移動終點開始收回其手,即如同在圖10C中所示。在彈回協助被致能下,在此的系統可以解釋所述向後或反向運動為一彈回移動或是一取消選擇移動。此可以降低使用者必須移動其手以便於提供輸入的量,其導致在和虛擬項目互動時的降低的疲勞以及較小的挫折。
圖11A-11D是描繪容許力輪廓的實施的實施例。當力輪廓被實施時,選擇一虛擬介面中的一虛擬項目(例如,在虛擬介面1100之內的虛擬按鈕1102),該虛擬按鈕可以提供最初的「阻力」,其使得所述使用者移動其手一額外的距離(例如,5cm)以使得所述按鈕移動一較小的距離(例如,1cm)。因此,並不是一虛擬按鈕或其它虛擬項目與一使用者的實體輸入線性一致地壓下,而是所述虛擬按鈕可以依循一力輪廓(例如,1101),其在登記一選擇之前等待一指定的輸入力。在圖11A-11D的各種力輪廓(例如,1101)中,X軸可以代表相對於在0m的一按鈕的原始的壓縮點的實體位置。Y軸可以代表所述手的對映的虛擬位置,其中0m是有效的按鈕壓縮點。在圖11A的力輪廓1101中,在一按鈕點選將被登記之前,使用者例如可以從-0.05m至0.1m移動其手指,並且可以在另一點選被登記之前,使用者從0.1m至0.2m移動其手指。因此,並不是立即登記為一按鈕點選,所述力輪廓1101或「力曲線」可以使得所述使用者移動其手更遠,使得所述動作感覺就像是有重量的。確實,某些力輪廓可以使得虛擬物件感覺較重或是較輕的、或感覺像是它們具有多個狀態(例如,一(虛擬)多模式的切換開關)。
譬如,圖11B是描繪在無力輪廓被致能下,虛擬按鈕1102的行為方式。當所述使用者的實體手(如同藉由指示符1105所指出)或是其它實體物件觸碰所述虛擬按鈕1102時,所述按鈕立即被壓下及選擇。相對地,在圖11C及11D中,當力輪廓被致能時,所述虛擬按鈕1106如同在圖11C中所示的部分被壓下,並且在圖11D中是完全被壓下。如同在圖11D中可見的,所述使用者的實體手1105的指示符可以是在所述按鈕1106之下相當多,因為根據所述力輪廓1101,所述使用者需要移動其實體手更遠離所述虛擬介面1100,以便於造成所述虛擬按鈕的完全選擇。
再者,某些實施例可以在所述虛擬介面1100上提供視覺的提示(例如,1104),其指出所述虛擬手1103相對於所述虛擬介面的何處。至少在某些情形中,即使所述虛擬手1103並未確切地對應於所述使用者的實體移動,所述視覺的提示1104仍然可被提供。此可以由於在所述使用者的實體移動以及那些移動的虛擬表示(例如,虛擬手1103)之間的可控制的脫鉤而發生。所述視覺的提示訊號1104可被配置以追蹤所述虛擬手1103的位置,即使所述使用者的手的實體位置將會指出別的位置。脫鉤的量可被控制,並且可以在策略中加以指明。這些策略可以提供用於所述虛擬介面的資訊,以決定將所述視覺的提示訊號1104設置在何處。在某些情形中,並非只是顯示所述使用者的實體手的一指示符(例如,1105),所述虛擬環境可以展示所述使用者的實體手(或是其它實體物件)的一表示、以及並不一定追蹤所述實體物件的位置的虛擬表示(例如,在觸碰限制、釘扎、彈回協助、或是當實施力輪廓的情形中)。於是,在此種情形中,所述實體物件的所述虛擬表示以及所述實體物件本身都可被呈現在所述虛擬環境中。
除了這些情節之外,在此的實施例亦可以提供下衝補償以用於和虛擬項目的互動。如同在圖12A中所示,一虛擬介面1200例如可包含一列按鈕1201,其包含虛擬按鈕1202。所述虛擬手1203可被展示在所述虛擬按鈕1202之上,其目前登記在值「31」(1204)。在某些情形中,使用者的實體移動可能達不到和一例如是虛擬按鈕的虛擬項目的互動。因此,在此種情形中,即使所述使用者出現按下所述虛擬按鈕1202例如短少3cm,但若所述使用者的實體手的位置及速度是暗示所述虛擬按鈕1202被按下,則在此的系統可以解釋所述實體輸入為一按鈕按下。接著,如同在圖12B中所示,所述虛擬按鈕1202可被壓下,此在1204產生一增大的值「32」。因此,包含攝影機、加速度計等等的各種感測器可被用來追蹤所述使用者的手或是其它實體物件的位置及軌跡。根據所判斷的位置及/或軌跡,在此的系統可以判斷所述使用者意圖和一虛擬項目互動。所述系統亦可以根據所述實體物件的追蹤資訊來判斷所要的互動的類型。此互動接著可以在所述虛擬介面之內加以實行。
這些實施例的任一或是全部都可以利用使用者的手、利用所述使用者持有的工具(例如,鉛筆或畫筆)、或是利用在所述使用者手中的控制器或其它物件來作用。因此,例如一鉛筆尖端可以是被觸碰限制或釘扎的、或是一畫筆或其它工具可以依循某些力輪廓或是可以實施彈回協助。然而,其它工具可以實施下衝補償,其中各種的濾波器可被施加(例如包含雙指數濾波器),其被調諧以識別一被追蹤的實體項目的位置及速度,並且用一所要的方式刻意地過衝(overshoot)或下衝以和一虛擬項目互動。因此,例如若使用者正利用控制器並且快速地使所述控制器在一虛擬按鈕做手勢,則所述系統將會判斷所述意圖是一按鈕按下,並且可以用該方式來移動所述虛擬手。然而,若所述使用者是緩慢地移動所述控制器並且刻意地朝向一虛擬按鈕,但是並未觸碰該按鈕,則所述系統可以判斷所述使用者並非意圖和所述按鈕互動,並且在此種情形中,將會描繪所述虛擬手為接近所述虛擬按鈕,但是不觸碰按鈕。
在這些互動期間,各種的可視線索都可被描繪在所述虛擬環境之中。例如,如同在圖13A-13F中所示,所述虛擬環境1300可包含一虛擬介面1301。所述虛擬介面1301可包含一實體物件的一虛擬表示(例如,虛擬手1303代表使用者的實體左手(未顯示))。當所述使用者使其手盤旋在所述虛擬介面1301之上時,所述虛擬環境1300可以描繪一可視線索1302。所述可視線索1302例如可以開始為一定義的圓圈、或是可以開始為一個不太明確的顏色集合。當所述使用者移動其實體手更靠近所述虛擬介面1301時,所述虛擬手1303可以追蹤所述使用者的移動,並且可以移動所述虛擬手1303更靠近所述虛擬介面1301(如同在圖13B中所示)。再者,隨著所述使用者接近所述虛擬介面的表面,所述可視線索1302可以在不透明性上增加,從透明或部分透明改變為部分或完全不透明的。至少在某些情形中,當所述使用者接觸所述虛擬介面1301時,所述可視線索1302可以變成較小且較明確的,若所述使用者保持朝向其移動,則其更精確顯示所述使用者將會觸碰所述虛擬介面1301之處,即如同在圖13C中所示。以此種方式,所述可視線索1302可以對準所述使用者的手指最接近所述虛擬介面1301的表面的部分。
當所述使用者接觸所述虛擬介面1301時,所述可視線索1302可以變為兩環的圓圈,即如同在圖13D中所示。在至少某些情形中,若所述使用者的手指或手繼續移動超過所述虛擬介面1301的表面(在其中觸碰限制未被使用的實施例中),則所述兩環的圓圈可以在大小上增加並且從一明確的形狀淡出成為一無定形,其視覺化所述使用者的手指或手突破所述虛擬介面1301的表面。當然,將會瞭解到的是,所述可視線索1302可以是實質任何形狀、任何大小、任何色彩、或是任何設計,並且可以隨著所述使用者移動朝向或離開所述虛擬介面1301(或其它虛擬物件)而在形狀、大小、色彩等等之間轉變。再者,如同上述的其它實施例,所述可視線索1302可以在不同的虛擬項目下、在不同的虛擬環境中、在不同的實體物件下等等而為不同的。因此,和每一個虛擬項目或是每一個虛擬環境的互動可以是獨特的。
在某些情形中,在設置指出所述使用者觸碰所述虛擬介面1301之處的可視線索1302之後(如同在圖13D中),所述虛擬環境1300可以描繪一蹤跡特點1304,其指出所述使用者已經拖著其手之處。因此,在圖13D及13E之間,所述使用者可能已經向下拖著其手(並且因此拖著所述虛擬手1303),其留下一蹤跡特點1304,其指出所述使用者拖著其手指所沿著的路徑。此種額外的可視線索可以協助所述使用者知道所述虛擬手1303相對於所述虛擬介面1301之處。再者,所述可視線索1302可以指出所述使用者的手指離開所述表面有多遠,隨著所述使用者變得較接近或是遠離所述虛擬介面1301或是其它虛擬項目而動態地在大小、形狀、色彩等等上改變。在某些情形中,如同在圖13F中所示,即使所述使用者的手及/或手腕改變相對於所述虛擬介面1301的位置,所述可視線索1302可被配置以保持不動的。再者,應注意到的是,這些實施例的任一或是全部可被配置以在擴增實境介面、虛擬實境介面、或是任何其它類型的電腦產生的介面或虛擬環境下作用的。
除了上述的方法之外,系統可被提出,其包含以下:至少一物理處理器以及包括電腦可執行的指令的物理記憶體,當所述指令藉由所述物理處理器執行時,其使得所述物理處理器:在一虛擬環境之中產生一虛擬項目;利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置;在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的移動脫鉤。
再者,一種非暫態的電腦可讀取的媒體可被提出,其包含一或多個電腦可執行的指令,當所述指令藉由一計算裝置的至少一處理器執行時,其可以使得所述計算裝置:在一虛擬環境之中產生一虛擬項目;利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置;在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的移動脫鉤。
因此,以此種方式,方法、系統及電腦可讀取的媒體可被提出,其可控制地使一虛擬表示的移動與一實體物件的移動脫鉤。所述可控制的脫鉤可以具有觸碰限制、釘扎、彈回協助、下衝協助、力輪廓的形式、或是其它受控制的脫鉤的形式。藉由實施此種實施例,使用者在虛擬環境中和虛擬項目互動時可以體驗到較少疲勞以及較小挫折,因為其所要的動作可被解釋及實行,即使其實體移動並未精確反映出那些動作也是如此。
範例實施例
實例1:一種電腦實施的方法可包含在一虛擬環境之中產生一虛擬項目;利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置;在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的移動脫鉤。
實例2.如實例1之電腦實施的方法,其中所述虛擬項目是一介面。
實例3.如實例1或2的任一個之電腦實施的方法,其中所述介面包括在所述虛擬環境之中的一漂浮的使用者介面。
實例4.如實例1-3的任一個之電腦實施的方法,其中所述漂浮的使用者介面是在所述虛擬環境之中的一固定的位置被顯示。
實例5.如實例1-4的任一個之電腦實施的方法,其中所述至少一實體物件包括以下的至少一個:一使用者的左手、一使用者的右手、一使用者的手指、或是一電子控制器。
實例6.如實例1-5的任一個之電腦實施的方法,其中所述實體物件的所述虛擬表示是可控制地與所述實體物件相對於所述虛擬項目的移動以一指定的量脫鉤的。
實例7.如實例1-6的任一個之電腦實施的方法,其中所述脫鉤的指定的量是根據一政策來控制的。
實例8.如實例1-7的任一個之電腦實施的方法,其中所述脫鉤的指定的量是可隨著時間過去根據所述實體物件的移動適配的。
實例9.如實例1-8的任一個之電腦實施的方法,其中所述實體物件的所述虛擬表示與所述實體物件相對於所述虛擬項目的移動的所述可控制的脫鉤,是包含在所述虛擬環境之中,將所述實體物件的所述虛擬表示停止在所述虛擬項目的一表面。
實例10.如實例1-9的任一個之電腦實施的方法,其中在所述虛擬環境之中,將所述實體物件的所述虛擬表示停止在所述虛擬項目的所述表面,是包含防止所述實體物件的所述虛擬表示移動超過所述虛擬項目的所述表面。
實例11.如實例1-10的任一個之電腦實施的方法,其中在所述虛擬環境之中,將所述實體物件的所述虛擬表示停止在所述虛擬項目的所述表面是包含在所述虛擬項目的所述表面實質減緩所述實體物件的所述虛擬表示的移動、以及在偵測到實體移動如此指出之後,容許所述實體物件的所述虛擬表示移動超過所述虛擬項目的所述表面。
實例12.如實例1-11的任一個之電腦實施的方法,其進一步包括在所述虛擬環境之中,在所述實體物件的所述虛擬表示到達所述虛擬項目的所述表面之際,利用一或多個觸覺裝置來提供觸覺回授。
實例13:一種系統,其可包含:至少一物理處理器以及包括電腦可執行的指令的物理記憶體,當所述指令藉由所述物理處理器執行時,其使得所述物理處理器:在一虛擬環境之中產生一虛擬項目;利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置;在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的移動脫鉤。
實例14.如實例13之系統,其中所述實體物件的所述虛擬表示與所述實體物件相對於所述虛擬項目的移動的所述可控制的脫鉤,是包含移動所述實體物件的所述虛擬表示為所述實體物件的所述實體移動的一較小的百分比。
實例15.如實例13或14的任一個之系統,其中所述實體物件的所述虛擬表示與所述實體物件相對於所述虛擬項目的移動的所述可控制的脫鉤,是包含釘扎所述實體物件的所述虛擬表示至所述實體物件相對於所述虛擬項目的一偵測到的目前的位置。
實例16.如實例13-15的任一個之系統,其中即使所述實體物件的一部分移動離開所述實體物件的所述偵測到的目前的位置,所述實體物件的所述虛擬表示仍維持被釘扎至所述實體物件的所述偵測到的目前的位置。
實例17.如實例13-16的任一個之系統,其中所述實體物件的所述虛擬表示與所述實體物件相對於所述虛擬項目的移動的所述可控制的脫鉤,是包含登記從一移動終點的彈回移動。
實例18.如實例13-17的任一個之系統,其中所述實體物件的所述虛擬表示以及所述實體物件都在所述虛擬環境中被呈現。
實例19.如實例13-18的任一個之系統,其中所述虛擬環境是在所述虛擬項目上呈現一或多個可視線索,其指出所述實體物件的所述虛擬表示被定位以接觸所述虛擬項目之處。
實例20.一種非暫態的電腦可讀取的媒體,其可包含一或多個電腦可執行的指令,當所述指令藉由一計算裝置的至少一處理器執行時,其可以使得所述計算裝置:在一虛擬環境之中產生一虛擬項目、利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置、在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動、以及在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的移動脫鉤。
本揭露內容的實施例可包含各種類型的人工實境系統、或是結合各種類型的人工實境系統來加以實施。人工實境是一種形式的實境,其在呈現給一使用者之前已經用某種方式調整,例如可包含一虛擬實境、一擴增實境、一混合實境、一複合實境、或是其之某種組合及/或衍生。人工實境內容可包含完全是電腦產生的內容、或是結合所捕捉的(例如,真實世界的)內容之電腦產生的內容。所述人工實境內容可包含視訊、音訊、觸覺回授、或是其之某種組合,其之任一個都可以用單一通道或是多個通道來加以呈現(例如是產生三維(3D)效果給觀看者的立體視訊)。此外,在某些實施例中,人工實境亦可以是和應用程式、產品、配件、服務、或是其之某種組合相關的,其例如被用來在一人工實境中產生內容,且/或否則在一人工實境中被使用(例如,在人工實境中執行活動)。
在此所述的數位像素感測器系統可被用在包含人工實境環境的各種不同的計算環境中。人工實境系統可以用各種不同的形狀因數及配置來實施。一些人工實境系統可被設計成在無近眼顯示器(near-eye display;NED)下工作。其它人工實境系統可包含NED,其亦提供對真實世界的可見性(例如,圖14中的擴增實境系統1400)、或是使得使用者在視覺上沉浸在人工實境中(例如,圖15中的虛擬實境系統1500)。儘管一些人工實境裝置可以是獨立的系統,但是其它人工實境裝置可以與外部的裝置通訊及/或協作,以提供人工實境的體驗給使用者。此種外部的裝置的例子包含手持式控制器、行動裝置、桌上型電腦、由使用者穿戴的裝置、由一或多個其他使用者穿戴的裝置、及/或任何其它適當的外部系統。
轉到圖14,擴增實境系統1400可包含一具有框架1410的眼部穿戴裝置1402,所述框架1410是被配置以將一左顯示裝置1415(A)以及一右顯示裝置1415(B)保持在一使用者的眼睛的前面。顯示裝置1415(A)及1415(B)可以一起或獨立地動作來向使用者呈現一影像或是系列的影像。儘管擴增實境系統1400包含兩個顯示器,但是此揭露內容的實施例可以在具有單一NED或是超過兩個NED的擴增實境系統中實施。
在某些實施例中,擴增實境系統1400可包含一或多個感測器,例如是感測器1440。感測器1440可以響應於擴增實境系統1400的運動來產生測量信號,並且可以是位在框架1410的實質任何部分上。感測器1440可以代表各種不同的感測機構中的一或多個,例如位置感測器、慣性量測單元(inertial measurement unit;IMU)、深度相機組件、結構發光器及/或偵測器、或是其之任意組合。在某些實施例中,擴增實境系統1400可以包括或可以不包含感測器1440、或是可包含超過一感測器。在其中感測器1440包含IMU的實施例中,所述IMU可以根據來自感測器1440的量測信號來產生校準資料。感測器1440的例子可包含但不限於加速度計、陀螺儀、磁力儀、其它適當類型的偵測運動的感測器、用於所述IMU的誤差校正的感測器、或是其之某種組合。
在某些例子中,擴增實境系統1400亦可包含一具有複數個聲學換能器1420(A)-1420(J)(統稱為聲學換能器1420)的麥克風陣列。聲學換能器1420可以代表偵測由聲波引起的氣壓變化的換能器。每一個聲學換能器1420可被配置以偵測聲音,並且轉換所偵測到的聲音成為一電子格式(例如,一類比或數位格式)。在圖14中的麥克風陣列例如可包含十個聲學換能器:1420(A)及1420(B),其可被設計成置放在使用者的一對應的耳朵內、聲學換能器1420(C)、1420(D)、1420(E)、1420(F)、1420(G)及1420(H),其可以定位在框架1410上的各種位置處、及/或聲學換能器1420(I)及1420(J),其可被定位在一對應的圍頸帶1405上。
在某些實施例中,聲學換能器1420(A)-(J)中的一或多個可被使用作為輸出換能器(例如,揚聲器)。例如,聲學換能器1420(A)及/或1420(B)可以是耳塞式耳機、或是任何其它適當類型的頭戴式耳機或揚聲器。
所述麥克風陣列的聲學換能器1420的配置可以變化。儘管擴增實境系統1400在圖14中被展示為具有十個聲學換能器1420,但是聲學換能器1420的數目可以大於或小於十個。在某些實施例中,利用較多數量的聲學換能器1420可以增加收集的音訊資訊的量、及/或提高音訊資訊的靈敏度和準確度。相對地,利用較少數量的聲學換能器1420可以減少相關的控制器1450處理所收集到的音訊資訊所需的計算能力。此外,所述麥克風陣列的每一個聲學換能器1420的位置可以變化。例如,一聲學換能器1420的位置可包含在使用者上的一界定的位置、在框架1410上的一定義的座標、和每一個聲學換能器1420相關的一方位、或是其之某種組合。
聲學換能器1420(A)及1420(B)可被定位在使用者耳朵的不同部分上,例如是在耳廓之後、在耳屏之後、及/或在外耳或耳窩內。或者,除了在耳道內的聲學換能器1420之外,還可以有在耳朵上或是耳朵周圍的額外的聲學換能器1420。將聲學換能器1420定位在使用者的耳道旁可以使得所述麥克風陣列能夠收集有關於聲音如何到達耳道的資訊。藉由將聲學換能器1420中的至少兩個定位在使用者頭部的兩側上(例如,作為雙耳麥克風),擴增實境裝置1400可以模擬雙耳聽覺,並且圍繞使用者的頭部捕捉3D立體聲場。在某些實施例中,聲學換能器1420(A)及1420(B)可以經由一有線的連線1430來連接至擴增實境系統1400,而在其它實施例中,所述聲學換能器1420(A)及1420(B)可以經由一無線的連線(例如,藍芽連線)來連接至擴增實境系統1400。在另外其它實施例中,聲學換能器1420(A)及1420(B)可以完全不與擴增實境系統1400結合使用。
在框架1410上的聲學換能器1420可以用各種不同的方式,包含沿著鏡腿的長度、跨過鼻樑架、在顯示裝置1415(A)及1415(B)之上或之下、或是其之某種組合來加以定位。聲學換能器1420可被定向成使得所述麥克風陣列能夠在穿戴所述擴增實境系統1400的使用者周圍的各個方向上偵測聲音。在某些實施例中,在所述擴增實境系統1400的製造期間可以執行最佳化程序,以決定每一個聲學換能器1420在所述麥克風陣列中的相對定位。
在某些例子中,擴增實境系統1400可包含或是連接至一外部的裝置(例如,一配對的裝置),例如是圍頸帶1405。圍頸帶1405大致是代表任意類型或形式的配對的裝置。因此,以下關於圍頸帶1405的討論亦可以應用於各種其它配對的裝置,例如是充電盒、智慧型手錶、智慧型手機、腕帶、其它可穿戴的裝置、手持控制器、平板電腦、膝上型電腦、其它外部的計算裝置等等。
如圖所示,圍頸帶1405可以經由一或多個連接器來耦合至眼部穿戴裝置1402。所述連接器可以是有線或無線的,並且可包含電性及/或非電性(例如,結構的)構件。在某些情形中,眼部穿戴裝置1402及圍頸帶1405可以獨立地運作,而在它們之間沒有任何有線或無線的連線。儘管圖14在眼部穿戴裝置1402及圍頸帶1405上的範例的位置描繪眼部穿戴裝置1402及圍頸帶1405的構件,但是所述構件可以是位在眼部穿戴裝置1402及/或圍頸帶1405的別處,且/或被不同地分布在其上。在某些實施例中,眼部穿戴裝置1402及圍頸帶1405的構件可以是位在與眼部穿戴裝置1402、圍頸帶1405配對的一或多個額外的週邊裝置、或是其之某種組合上。
配對例如是圍頸帶1405的外部裝置與擴增實境的眼部穿戴裝置可以使得所述眼部穿戴裝置能夠達成一副眼鏡的形狀因數,同時仍然提供足夠的電池和計算能力用於擴充的功能。擴增實境系統1400的電池容量、計算資源、及/或額外的特點中的某些或全部,可以是由一配對的裝置提供的、或是在一配對的裝置以及一眼部穿戴裝置之間共用的,因此減小所述眼部穿戴裝置整體的重量、熱輪廓、以及形狀因數,同時仍然保持所要的功能。例如,圍頸帶1405可以容許原本要被納入在眼部穿戴裝置上的構件能夠內含在圍頸帶1405中,因為比在頭上將容忍的重量負荷,使用者可以在肩膀上容忍更重的重量負荷。圍頸帶1405亦可具有較大的表面積,以在該表面積上將熱擴散並分散到周圍環境中。因此,比在獨立的眼部穿戴裝置上原本可能具有的電池和計算容量,圍頸帶1405可以容許更大的電池和計算容量。由於比在眼部穿戴裝置1402中承載的重量,在圍頸帶1405中承載的重量可以對使用者的侵害性更小,因此比起使用者容忍穿戴沉重的獨立的眼睛穿戴裝置,使用者可以更長時間地容忍穿戴較輕的眼睛穿戴裝置並且承載或穿戴配對的裝置,藉此使得使用者能夠更充分地將人工實境環境結合到其日常活動中。
圍頸帶1405可以和眼部穿戴裝置1402及/或其它裝置通訊地耦合。這些其它裝置可以提供某些功能(例如,追蹤、定位、深度映射、處理、儲存等等)給擴增實境系統1400。在圖14的實施例中,圍頸帶1405可包含兩個聲學換能器(例如,1420(I)及1420(J))),其是所述麥克風陣列的部分(或是潛在地形成其本身的麥克風子陣列)。圍頸帶1405亦可包含一控制器1425以及一電源1435。
圍頸帶1405的聲學換能器1420(I)及1420(J)可被配置以偵測聲音,並且轉換所偵測到的聲音成為一電子格式(類比或數位)。在圖14的實施例中,聲學換能器1420(I)及1420(J)可被定位在圍頸帶1405上,藉此增加在所述圍頸帶的聲學換能器1420(I)及1420(J)、以及定位在眼部穿戴裝置1402上的其它聲學換能器1420之間的距離。在某些情形中,增加在所述麥克風陣列的聲學換能器1420之間的距離,可以改善經由所述麥克風陣列執行的波束成形的準確度。例如,若一聲音是藉由聲學換能器1420(C)及1420(D)偵測的,並且在聲學換能器1420(C)及1420(D)之間的距離大於例如在聲學換能器1420(D)及1420(E)之間的距離,則所述偵測到的聲音的判斷的來源位置可以是比藉由聲學換能器1420(D)及1420(E)偵測到的聲音更準確。
圍頸帶1405的控制器1425可以處理由在圍頸帶1405及/或擴增實境系統1400上的感測器產生的資訊。例如,控制器1425可以處理來自所述麥克風陣列的資訊,其描述由所述麥克風陣列偵測到的聲音。對於每一個偵測到的聲音,控制器1425可以執行到達方向(direction-of-arrival;DOA)的估計,以估計所述偵測到的聲音是從哪個方向到達所述麥克風陣列。當所述麥克風陣列偵測到聲音時,控制器1425可以用所述資訊來填充音訊資料集。在其中擴增實境系統1400包含慣性量測單元的實施例中,控制器1425可以從位在眼部穿戴裝置1402上的IMU計算所有慣性及空間的計算。一連接器可以在擴增實境系統1400與圍頸帶1405之間以及在擴增實境系統1400與控制器1425之間傳遞資訊。所述資訊可以具有光學資料、電性資料、無線資料、或是任何其它可傳輸的資料形式的形式。將由擴增實境系統1400產生的資訊的處理移動到圍頸帶1405可以減少眼部穿戴裝置1402中的重量及熱,使得其對使用者而言更為舒適。
在圍頸帶1405中的電源1435可以提供電力給眼部穿戴裝置1402及/或圍頸帶1405。電源1435可包含但不限於鋰離子電池、鋰聚合物電池、一次鋰電池、鹼性電池、或是任何其它形式的電力儲存。在某些情形中,電源1435可以是有線的電源。在圍頸帶1405上而不是在眼部穿戴裝置1402上包含電源1435可以有助於更佳的分布由電源1435所產生的重量及熱。
如同所指出的,代替混合人工實境與實際的實境的是,一些人工實境系統可以用虛擬體驗來實質取代使用者對真實世界的感官感知中的一或多個。此類型的系統的一個例子是頭戴式顯示器系統,例如在圖15中的虛擬實境系統1500,其大部分或完全地覆蓋使用者的視野。虛擬實境系統1500可包含一前剛性主體1502以及一條帶1504,其被成形為適合戴在使用者的頭部周圍。虛擬實境系統1500亦可包含輸出音訊換能器1506(A)及1506(B)。再者,儘管未展示在圖15中,前剛性主體1502可包含一或多個電子元件,其包含一或多個電子顯示器、一或多個慣性量測單元(IMU)、一或多個追蹤發射器或偵測器、及/或任何其它適當的用於產生人工實境體驗的裝置或系統。
人工實境系統可包含各種類型的視覺回授機構。例如,在擴增實境系統1400及/或虛擬實境系統1500中的顯示裝置可包含一或多個液晶顯示器(LCD)、發光二極體(LED)顯示器、microLED顯示器、有機LED(OLED)顯示器、數位光投影(DLP)微顯示器、液晶覆矽(LCoS)微顯示器、及/或任何其它適當類型的顯示器螢幕。這些人工實境系統可包含用於雙眼的單一顯示器螢幕、或是可以為每只眼睛提供一顯示器螢幕,此可以容許為變焦調整或是用於校正使用者的屈光不正提供額外的彈性。某些人工實境系統亦可包含光學子系統,其具有一或多個透鏡(例如,凹透鏡或凸透鏡、菲涅耳透鏡、可調整的液態透鏡等等),使用者可以透過其來觀看一顯示器螢幕。這些光學子系統可以用於各種目的,其包含準直(例如,使物體看起來處於比其物理距離更大的距離)、放大(例如,使物體看起來比其實際大小更大)、及/或中繼光(到例如觀看者的眼睛)。這些光學子系統可被用在一非瞳孔形成的架構(例如單一透鏡配置,其直接準直光但是產生所謂的枕形失真)及/或一瞳孔形成的架構(例如多透鏡配置,其產生所謂的桶形失真以抵消枕形失真)。
額外或代替利用顯示器螢幕,在此所述的某些人工實境系統可包含一或多個投影系統。例如,在擴增實境系統1400及/或虛擬實境系統1500中的顯示裝置可包含微型LED投影機,其投影光(例如利用波導)到顯示裝置中,例如是容許環境光通過的透明組合器透鏡。所述顯示裝置可以折射所述投影的光朝向使用者的瞳孔,並且可以使得使用者能夠同時觀看人工實境內容以及真實世界兩者。所述顯示裝置可以利用各種不同的光學構件的任一種來達成此,其包含波導構件(例如,全息、平面、繞射、偏振、及/或反射的波導元件)、光操縱表面及元件(例如繞射、反射及折射元件及光栅)、耦合元件等等。人工實境系統亦可被配置有任何其它適當類型或形式的影像投影系統,例如是用在虛擬視網膜顯示器中的視網膜投影機。
在此所述的人工實境系統亦可包含各種類型的電腦視覺構件及子系統。例如,擴增實境系統1400及/或虛擬實境系統1500可包含一或多個光學感測器,例如是二維(2D)或3D相機、結構光發射器及偵測器、飛行時間深度感測器、單一射束或掃描的雷射測距儀、3D LiDAR感測器、及/或任何其它適當類型或形式的光學感測器。人工實境系統可以處理來自這些感測器中的一或多個的資料,以識別使用者的位置、繪製真實世界的地圖、向使用者提供關於真實世界周圍環境的背景資訊、和/或執行各種其它功能。
在此所述的人工實境系統亦可包含一或多個輸入及/或輸出音訊換能器。輸出音訊換能器可包含音圈揚聲器、帶式揚聲器、靜電揚聲器、壓電揚聲器、骨傳導換能器、軟骨傳導換能器、耳屏振動換能器、及/或任何其它適當類型或形式的音訊換能器。類似地,輸入音訊換能器可包含電容式麥克風、動圈式麥克風、帶狀麥克風、及/或任何其它類型或形式的輸入換能器。在某些實施例中,單一換能器可被使用於音訊輸入及音訊輸出兩者。
在某些實施例中,在此所述的人工實境系統亦可包含觸感(亦即,觸覺)回授系統,其可被納入到頭飾、手套、連體衣、手持式控制器、環境的裝置(例如,椅子、地板墊等等)、及/或任何其它類型的裝置或系統中。觸覺回授系統可以提供各種類型的皮膚回授,其包含振動、力、牽引力、紋理、及/或溫度。觸覺回授系統亦可以提供各種類型的動覺回授,例如是運動及順應性。觸覺回授可以利用馬達、壓電致動器、流體系統、及/或各種其它類型的回授機構來實施。觸覺回授系統可以獨立於其它人工實境裝置、在其它人工實境裝置之內、及/或結合其它人工實境裝置來實施。
藉由提供觸覺感覺、可聽見的內容、及/或視覺的內容,人工實境系統可以產生整個虛擬體驗或是強化使用者在各種背景和環境中的真實世界體驗。譬如,人工實境系統可以在特定環境內協助或擴展使用者的感知、記憶或認知。某些系統可以強化使用者在真實世界中與其他人的互動、或是可以致能在虛擬世界中與其他人的更多的沉浸式互動。人工實境系統亦可被使用於教育目的(例如,用於學校、醫院、政府組織、軍事組織、商業企業等的教學或訓練)、娛樂目的(例如,用於進行電玩遊戲、聽音樂、觀看視訊內容等等)、及/或用於可接達目的(例如,作為助聽器、視覺輔助設備等等)。在此揭露的實施例可以在這些背景及環境中的一或多個中及/或在其它背景及環境中致能或強化使用者的人工實境體驗。
如同所指出的,人工實境系統1400及1500可以與各種其它類型的裝置一起使用,以提供更引人注目的人工實境體驗。這些裝置可以是具有換能器的觸覺介面,其提供觸覺回授及/或收集關於使用者與環境互動的觸覺資訊。在此揭露的人工實境系統可包含各種類型的觸覺介面,其偵測或傳遞各種類型的觸覺資訊,包含觸覺的回授(例如,使用者經由皮膚中之神經偵測到的回授,其亦可被稱為皮膚回授)及/或動覺回授(例如,使用者經由位於肌肉、關節及肌腱中之受體偵測到的回授)。
觸覺回授可以是由定位在使用者的環境之中的介面(例如,椅子、桌子、地板等)及/或使用者可以穿戴或攜帶的物件上的介面(例如,手套、腕帶等)來提供的。舉例而言,圖16是描繪一振動觸覺的系統1600,其具有一可穿戴的手套(觸覺裝置1610)以及腕帶(觸覺裝置1620)的形式。觸覺裝置1610及觸覺裝置1620是被展示為可穿戴的裝置的例子,其包含一撓性的可穿戴的紡織材料1630,所述材料1630是被成形並且配置以用於分別定位抵靠使用者的手及手腕。此揭露內容亦包含振動觸覺的系統,其可被成形並且配置以用於定位抵靠其他人體部位,例如手指、手臂、頭部、軀幹、腳或腿。例如且非限制性的,根據本揭露內容的各種實施例的振動觸覺的系統亦可以是具有手套、頭帶、臂章、袖子、頭套、襪子、襯衫或褲子以及其它可能性的形式。在某些例子中,所述術語「紡織物」可包含任何撓性的可穿戴的材料,其包含織造織物、非織造織物、皮革、布、撓性的聚合物材料、複合材料等。
一或多個振動觸覺的裝置1640可以至少部分地定位在形成在振動觸覺的系統1600的紡織材料1630中的一或多個對應袋之內。振動觸覺的裝置1640可以定位在提供振動感覺(例如,觸覺回授)給振動觸覺的系統1600的使用者的位置中。例如,如同在圖16中所示,振動觸覺的裝置1640可被定位抵靠使用者的手指、拇指或手腕。在某些例子中,振動觸覺的裝置1640可以是足夠撓性的,以順應使用者的對應的身體部位或隨之彎曲。
用於施加電壓至所述振動觸覺的裝置1640以用於其之啟動的電源1650(例如,電池)可以例如經由導電的佈線1652來電耦接至振動觸覺的裝置1640。在某些例子中,振動觸覺的裝置1640的每一個可以獨立地電耦接至電源1650以用於個別的啟動。在某些實施例中,一處理器1660可以是在操作上耦接至電源1650,並且被配置(例如,程式化)以控制振動觸覺的裝置1640的啟動。
振動觸覺的系統1600可以用各種方式來實施。在某些例子中,振動觸覺的系統1600可以是一具有整體的子系統及構件的獨立的系統,以用於與其它裝置及系統無關地操作。作為另一例子的是,振動觸覺的系統1600可被配置以用於和另一裝置或系統1670互動。例如,振動觸覺的系統1600在某些例子中可包含一通訊介面1680,以用於接收及/或傳送信號至其它裝置或系統1670。所述其它裝置或系統1670可以是行動裝置、遊戲主機、人工實境(例如,虛擬實境、擴增實境、混合實境)裝置、個人電腦、平板電腦、網路裝置(例如,數據機、路由器等)、手持式控制器等等。通訊介面1680可以經由一無線的(例如,Wi-Fi、藍芽、蜂巢、無線電等等)鏈接、或是一有線的鏈接來致能在振動觸覺的系統1600以及所述其它裝置或系統1670之間的通訊。若存在的話,通訊介面1680可以和處理器1660通訊,例如用以提供一信號至處理器1660以啟動或停止所述振動觸覺的裝置1640中的一或多個。
振動觸覺的系統1600可以選配地包含其它子系統及構件,例如是觸敏墊1690、壓力感測器、運動感測器、位置感測器、照明元件、及/或使用者介面元件(例如,開/關按鈕、振動控制元件等等)。在使用期間,振動觸覺的裝置1640可被配置以因為各種不同的原因而被啟動,例如是響應於使用者和使用者介面元件的互動、來自所述運動或位置感測器的信號、來自所述觸敏墊1690的信號、來自所述壓力感測器的信號、來自所述其它裝置或系統1670的信號等等。
儘管電源1650、處理器1660以及通訊介面1680在圖16中是被描繪為定位在觸覺裝置1620中,但本揭露內容並非限於此的。例如,電源1650、處理器1660、或是通訊介面1680中的一或多個可以定位在觸覺裝置1610之內或是在另一可穿戴的紡織物之內。
例如是那些在圖16中展示並且相關圖16所述的觸覺可穿戴裝置可被實施在各種類型的人工實境系統及環境中。圖17是展示一範例的人工實境環境1700,其包含一頭戴式虛擬實境顯示器以及兩個觸覺裝置(亦即手套),並且在其它實施例中,任意數目及/或組合的這些構件及其它構件都可以內含在一人工實境系統中。例如,在某些實施例中可以有多個頭戴式顯示器,其分別具有一相關的觸覺裝置,其中每一個頭戴式顯示器以及每一個觸覺裝置是和同一控制台、可攜式的計算裝置、或是其它計算系統通訊。
頭戴式顯示器1702大致是代表任意類型或形式的虛擬實境系統,例如是在圖15中的虛擬實境系統1500。觸覺裝置1704大致是代表任意類型或形式的可穿戴的裝置,由人工實境系統的使用者所穿戴,其提供觸覺回授至所述使用者以給予所述使用者其與虛擬物體實際接合的感知。在某些實施例中,觸覺裝置1704可以藉由施加振動、運動及/或力至使用者來提供觸覺回授。例如,觸覺裝置1704可以限制或擴展使用者的移動。為了給出一特定的例子,觸覺裝置1704可以限制使用者的手不向前移動,因而所述使用者具有其手已經與虛擬牆壁實體接觸的感知。在此特定的例子中,在所述觸覺裝置之內的一或多個致動器可以藉由泵送流體到所述觸覺裝置的一可充氣囊中,來達成所述實體移動的限制。在某些例子中,使用者亦可使用觸覺裝置1704來傳送動作請求至一控制台。動作請求的例子包含但不限於請求開始一應用程式及/或結束所述應用程式、及/或請求執行在所述應用程式內的一特定動作。
儘管觸覺介面可以與虛擬實境系統一起使用,即如同在圖17中所示,但觸覺介面亦可以與擴增實境系統一起使用,即如同在圖18中所示。圖18是使用者1810和一擴增實境系統1800互動的立體圖。在此例子中,使用者1810可以穿戴一副擴增實境眼鏡1820,其可以具有一或多個顯示器1822並且是與一觸覺裝置1830配對的。在此例子中,觸覺裝置1830可以是一腕帶,其包含複數個帶元件1832、以及一張緊機構1834,其將帶元件1832彼此連接。
帶元件1832中的一或多個可包含任意類型或形式的致動器,其適合用於提供觸覺回授。例如,帶元件1832中的一或多個可被配置以提供各種類型的皮膚回授中的一或多個,包含振動、力、牽引力、紋理及/或溫度。為了提供此種回授,帶元件1832可包含各種類型的致動器中的一或多個。在一例子中,帶元件1832的每一個可包含一振動反應器(例如,振動觸覺的致動器),其被配置以一致地或獨立地振動以提供各種類型的觸覺感覺中的一或多個給使用者。或者是,只有單一帶元件或是帶元件的一子集合可包含振動反應器。
觸覺裝置1610、1620、1704及1830可包含任何適當數目及/或類型的觸覺換能器、感測器、及/或回授機構。例如,觸覺裝置1610、1620、1704及1830可包含一或多個機械換能器、壓電換能器、及/或流體換能器。觸覺裝置1610、1620、1704及1830亦可包含不同類型及形式的換能器的各種組合,其一起或獨立地工作以強化使用者的人工實境體驗。在一例子中,觸覺裝置1830的帶元件1832的每一個可包含一振動反應器(例如,振動觸覺的致動器),其被配置以一致或獨立地振動以提供各種類型的觸覺感覺中的一或多個給使用者。
圖19A是描繪一範例的人機介面(在此亦被稱為一EMG控制介面),其被配置以穿戴在使用者的下手臂或手腕周圍以作為一可穿戴的系統1900。在此例子中,可穿戴的系統1900可包含十六個神經肌肉的感測器1910(例如,EMG感測器),其圍繞一彈性帶1920圓周地加以配置,其中一內表面1930是被配置以接觸使用者的皮膚。然而,任何適當數量的神經肌肉的感測器都可被利用。神經肌肉的感測器的數量及配置可以依據所述可穿戴的裝置被使用於的特定應用而定。例如,一可穿戴的臂帶或腕帶可被利用以產生控制資訊,以用於控制擴增實境系統、機械手臂、控制交通工具、滾動瀏覽文字、控制虛擬化身、或是任何其它適當的控制工作。如圖所示,所述感測器可以利用被納入所述無線裝置中的撓性電子設備來耦接在一起。圖19B是描繪穿過在圖19A中所示的可穿戴的裝置的感測器中之一的橫截面圖。在某些實施例中,所述感測構件中的一或多個的輸出可以選配地利用硬體信號處理電路來加以處理(例如,執行放大、濾波、及/或整流)。在其它實施例中,所述感測構件的輸出的至少某些信號處理可以用軟體來加以執行。因此,藉由所述感測器取樣的信號的信號處理可以用硬體、軟體、或是藉由硬體及軟體的任何適當的組合來加以執行,因為在此所述的技術的特點並未在此方面受到限制。被用來處理來自感測器1910的記錄的資料的一信號處理鏈路的一非限制性的例子是在以下參考圖20A及20B更詳細地論述。
圖20A及20B是描繪一具有EMG感測器的可穿戴的系統的內部構件的範例的概要圖。如圖所示,所述可穿戴的系統可包含一可穿戴的部分2010(圖20A)以及和所述可穿戴的部分2010通訊的一伺服器鑰(dongle)部分2020(圖20B)(例如,經由藍芽或是其它適當的無線通訊技術)。如同在圖20A中所示,所述可穿戴的部分2010可包含皮膚接觸電極2011,其例子是相關圖19A及19B來加以描述。所述皮膚接觸電極2011的輸出可被提供至類比前端2030,其可被配置以在所記錄的信號上執行類比處理(例如,放大、雜訊降低、濾波等等)。所述經處理的類比信號接著可被提供至類比至數位轉換器2032,其可以轉換所述類比信號至數位信號,所述數位信號可藉由一或多個電腦處理器來加以處理。可根據某些實施例而被使用的電腦處理器的一個例子是微控制器(MCU)2034,其被描繪在圖20A中。如圖所示,MCU 2034亦可包含來自其它感測器(例如,IMU感測器2040)、以及電源與電池模組2042的輸入。藉由MCU 2034所執行的處理的輸出可被提供至天線2050,以用於發送至圖20B中所示的伺服器鑰部分2020。
伺服器鑰部分2020可包含天線2052,其可被配置以和內含作為可穿戴的部分2010的部分的天線2050通訊。在天線2050及2052之間的通訊可以利用任何適當的無線技術及協定來發生,其非限制性的的例子包含射頻的發出信號以及藍芽。如圖所示,藉由伺服器鑰部分2020的天線2052接收到的信號可被提供至一主機電腦,以用於進一步處理、顯示、及/或用於達成一或多個特定的實體物件或虛擬物件的控制。
儘管參考圖19A-19B以及圖20A-20B所提供的例子是在具有EMG感測器的介面的背景下論述的,但是在此所述的用於降低電磁干擾的技術亦可被實施在具有其它類型的感測器的可穿戴的介面中,其包含但不限於肌動訊號(mechanomyography;MMG)感測器、肌聲訊號(sonomyography;SMG)感測器、以及電阻抗斷層攝影術(electrical impedance tomography;EIT)感測器。在此所述的用於降低電磁干擾的技術亦可被實施在透過導線及電纜線(例如,USB電纜線、光纖纜線等等)來和電腦主機通訊的可穿戴的介面中。
如同在以上詳述的,在此敘述及/或描繪的計算裝置及系統是廣泛地代表任意類型或形式的能夠執行電腦可讀取的指令之計算裝置或系統,例如是那些內含於在此所述的模組之內者。在其最基本的配置中,這些計算裝置分別可包含至少一記憶體裝置以及至少一物理處理器。
在某些例子中,所述術語「記憶體裝置」一般是指任意類型或形式的揮發性或非揮發性儲存裝置或媒體,其能夠儲存資料及/或電腦可讀取的指令。在一例子中,一記憶體裝置可以儲存、載入及/或維持在此所述的模組中的一或多個。記憶體裝置的例子是包含但不限於隨機存取記憶體(RAM)、唯讀記憶體(ROM)、快閃記憶體、硬碟機(HDD)、固態硬碟(SSD)、光碟機、快取、其中的一或多個的變化或組合、或是任何其它適當的儲存記憶體。
在某些例子中,所述術語「物理處理器」一般是指任意類型或形式的硬體實施的處理單元,其能夠解譯及/或執行電腦可讀取的指令。在一例子中,一物理處理器可以存取及/或修改在上述的記憶體裝置中儲存的一或多個模組。物理處理器的例子是包含但不限於微處理器、微控制器、中央處理單元(CPU)、實施軟核心處理器的現場可程式化的閘陣列(FPGA)、特殊應用積體電路(ASIC)、其中的一或多個的部分、其中的一或多個的變化或組合、或是任何其它適當的物理處理器。
儘管被描繪為個別的元件,在此敘述及/或描繪的模組可以代表單一模組或應用程式的部分。此外,在某些實施例中,這些模組中的一或多個可以代表一或多個軟體應用程式,當藉由一計算裝置執行時,其可以使得所述計算裝置執行一或多個工作。例如,在此敘述及/或描繪的模組中的一或多個可以代表被儲存並且配置以於在此敘述及/或描繪的計算裝置或系統中的一或多個上執行的模組。這些模組中的一或多個亦可以代表被配置以執行一或多個工作的一或多個特殊用途的電腦的全部或部分。
此外,在此所述的模組中的一或多個可以從一形式至另一形式地轉換資料、物理裝置及/或物理裝置的表示。例如,在此闡述的模組中的一或多個可以接收待被轉換的資料、轉換所述資料、輸出所述轉換的一結果以控制和虛擬物件的互動。額外或是替代地,在此闡述的模組中的一或多個可以藉由在所述計算裝置上執行、在所述計算裝置上儲存資料、及/或以其它方式和所述計算裝置互動,來從一形式至另一形式地轉換處理器、揮發性記憶體、非揮發性記憶體、及/或一物理計算裝置的任何其它部分。
在某些實施例中,所述術語「電腦可讀取的媒體」一般是指任何形式的裝置、載波、或是媒體,其能夠儲存或載有電腦可讀取的指令。電腦可讀取的媒體的例子是包含但不限於發送類型的媒體(例如載波)、以及非暫態類型的媒體(例如磁性儲存媒體(例如,硬碟機、碟帶機、以及軟碟片))、光學儲存媒體(例如,光碟(CD)、數位視頻光碟(DVD)、以及藍光光碟)、電子儲存媒體(例如,固態硬碟及快閃媒體)、以及其它分散系統。
在此敘述及/或描繪的程序參數以及步驟的順序是舉例給出的而已,並且可以根據需要而被改變。例如,儘管在此描繪及/或敘述的步驟可以用一特定的順序而被展示或論述,但是這些步驟並不一定需要用所描繪或論述的順序來執行。在此敘述及/或描繪的各種範例的方法亦可以省略在此敘述或描繪的步驟中的一或多個、或是包含除了那些揭露的以外的額外步驟。
先前的說明已經被提供以致能其他熟習此項技術者能夠最佳的利用在此揭露的範例實施例的各種特點。此範例的說明並不欲為窮舉的、或是被限制為任何所揭露的精確形式。許多修改及變化是可能的,而不脫離本揭露內容的精神及範疇。在此揭露的實施例應該在所有方面都被視為舉例說明的,而非限制性的。在判斷本揭露內容的範疇上應該參考到所附的請求項及其等同物。
除非另有指出,否則如同在所述說明書及請求項所用的術語「連接至」以及「耦接至」(及其衍生詞)將被解釋為允許直接以及間接的(亦即,經由其它元件或構件)連接。此外,如同在所述說明書及請求項所用的術語「一」或是「一個」將被解釋為表示「至少一個」。最後,為了便於使用,如同在所述說明書及請求項所用的術語「包含」以及「具有」(及其衍生詞)是和所述字詞「包括」可互換的並且具有相同的意義。
100:計算環境 101:電腦系統 102:處理器 103:記憶體 104:通訊模組 105:接收器 106:發送器 107:虛擬環境產生模組 108:虛擬項目 109:實體物件偵測模組 110:實體物件 111:位置 112:虛擬表示產生模組 113:虛擬表示 114:呈現模組 115:使用者 116:智慧型手機 117:人工實境裝置 118:輸入 120:資料儲存庫 121:策略 200:方法 210、220、230、240:步驟 300:虛擬環境 301:使用者介面 302:按鈕 303:虛擬手 400:方法 410、420、430、440:步驟 500:虛擬環境 501:使用者介面 502:按鈕 503:虛擬手 504:可視線索 505:實體手 600:虛擬環境 601:使用者介面 602:按鈕 603:虛擬手 604:可視線索 700:方法 710、720、730、740:步驟 800:虛擬環境 801:使用者介面 802:按鈕 803:虛擬手 804:可視線索 805:指示符 806:尾跡線 807:指示符 900:方法 910、920、930、940、950:步驟 1000:虛擬環境 1001:使用者介面 1002:按鈕 1003:虛擬手 1004:可視線索圓圈 1005:使用者的實體手 1006:路徑指示符 1007:移動指示符 1100:虛擬介面 1101:力輪廓 1102:虛擬按鈕 1103:虛擬手 1104:視覺的提示 1105:指示符 1106:虛擬按鈕 1200:虛擬介面 1201:一列按鈕 1202:虛擬按鈕 1203:虛擬手 1204:值 1300:虛擬環境 1301:虛擬介面 1302:可視線索 1303:虛擬手 1304:蹤跡特點 1400:擴增實境系統 1402:眼部穿戴裝置 1405:圍頸帶 1410:框架 1415(A):左顯示裝置 1415(B):右顯示裝置 1420、1420(A)-1420(J):聲學換能器 1425:控制器 1430:有線的連線 1435:電源 1440:感測器 1500:虛擬實境系統 1502:前剛性主體 1504:條帶 1506(A)、1506(B):輸出音訊換能器 1600:振動觸覺的系統 1610:觸覺裝置 1620:觸覺裝置 1630:材料 1640:振動觸覺的裝置 1650:電源 1652:佈線 1660:處理器 1670:裝置/系統 1680:通訊介面 1690:觸敏墊 1700:人工實境環境 1702:頭戴式顯示器 1704:觸覺裝置 1800:擴增實境系統 1810:使用者 1820:擴增實境眼鏡 1822:顯示器 1830:觸覺裝置 1832:帶元件 1834:張緊機構 1900:可穿戴的系統 1910:神經肌肉的感測器 1920:彈性帶 1930:內表面 2010:可穿戴的部分 2011:皮膚接觸電極 2020:伺服器鑰部分 2030:類比前端 2032:類比至數位轉換器 2034:微控制器(MCU) 2040:IMU感測器 2042:電源與電池模組 2050:天線 2052:天線 D1、D2、D3、D4:距離
所附圖式是描繪一些範例實施例並且是說明書的一部分。這些圖式是和以下的說明一起證明及解說本揭露內容的各種原理。
[圖1]是描繪在此的實施例中的至少某些實施例可以運作在其中的一計算環境。
[圖2]是一用於可控制地使實體物件的移動與物件的一虛擬表示脫鉤的範例的方法的流程圖。
[圖3]是描繪在一範例的虛擬環境中的一介面的一實施例。
[圖4]是一用於可控制地使實體物件的移動與物件的一虛擬表示脫鉤之範例的方法的流程圖,其包含限制所述虛擬表示的移動。
[圖5A]-[圖5C]是描繪其中當在一虛擬環境中接觸一表面時,被施加至一虛擬表示的指明的限制的實施例。
[圖6A]-[圖6C]是描繪其中當在一虛擬環境中接觸一表面時,替代的指明的限制被實施的實施例。
[圖7]是一用於可控制地使實體物件的移動與物件的一虛擬表示脫鉤之範例的方法的流程圖,其包含釘扎所述虛擬表示至一指定的位置。
[圖8A]-[圖8F]是描繪其中一虛擬表示被釘扎到一特定的位置的實施例。
[圖9]是一用於可控制地使實體物件的移動與物件的一虛擬表示脫鉤之範例的方法的流程圖,其包含以一受控的方式彈回所述虛擬表示。
[圖10A]-[圖10C]是描繪其中一虛擬表示以一受控的方式從一特定的位置彈回的實施例。
[圖11A]-[圖11D]是描繪其中指明的力曲線是在和一虛擬介面互動時被施加的實施例。
[圖12A]-[圖12B]是描繪其中當在一虛擬介面中選擇一項目時,下衝(undershot)補償被施加的實施例。
[圖13A]-[圖13F]是描繪其中在一虛擬環境中,不同的可視線索(affordance)被描繪在虛擬介面上的實施例。
[圖14]是可以關連此揭露內容的實施例而被使用的範例的擴增實境的眼鏡的圖示。
[圖15]是可以關連此揭露內容的實施例而被使用的一範例的虛擬實境的頭戴式裝置的圖示。
[圖16]是可以關連此揭露內容的實施例而被使用的範例的觸覺裝置的圖示。
[圖17]是根據此揭露內容的實施例的一範例的虛擬實境的環境的圖示。
[圖18]是根據此揭露內容的實施例的一範例的擴增實境的環境的圖示。
[圖19A]及[圖19B]是被配置以被穿戴在一使用者的下臂或手腕周圍的一範例的人機介面的圖示。
[圖20A]及[圖20B]是一可穿戴的系統的內部構件的一範例的概要圖的圖示。
在整個所述圖式,相同的元件符號及說明是指出類似、但不一定是相同的元件。儘管在此所述的範例實施例容易有各種的修改以及替代的形式,但是特定實施例已經在圖式中舉例展示並且將會在此詳細地描述。然而,在此所述的範例實施例並不欲受限於所揭露的特定形式。而是,本揭露內容涵蓋所有落入所附請求項的範疇內的修改、等同物及替換物。
100:計算環境
101:電腦系統
102:處理器
103:記憶體
104:通訊模組
105:接收器
106:發送器
107:虛擬環境產生模組
108:虛擬項目
109:實體物件偵測模組
110:實體物件
111:位置
112:虛擬表示產生模組
113:虛擬表示
114:呈現模組
115:使用者
116:智慧型手機
117:人工實境裝置
118:輸入
120:資料儲存庫
121:策略

Claims (20)

  1. 一種電腦實施的方法,其包括: 在一虛擬環境之中產生一虛擬項目; 利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置; 在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及 在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的所述移動脫鉤。
  2. 如請求項1之電腦實施的方法,其中所述虛擬項目包括一介面。
  3. 如請求項2之電腦實施的方法,其中所述介面包括在所述虛擬環境之中的一漂浮的使用者介面。
  4. 如請求項3之電腦實施的方法,其中所述漂浮的使用者介面是在所述虛擬環境之中的一固定的位置被顯示。
  5. 如請求項1之電腦實施的方法,其中所述至少一實體物件包括以下的至少一個: 一使用者的左手; 一使用者的右手; 一使用者的手指;或是 一電子控制器。
  6. 如請求項1之電腦實施的方法,其中所述實體物件的所述虛擬表示是可控制地與所述實體物件相對於所述虛擬項目的移動以指定的量脫鉤的。
  7. 如請求項6之電腦實施的方法,其中所述脫鉤的所述指定的量是根據一政策來控制的。
  8. 如請求項6之電腦實施的方法,其中所述脫鉤的所述指定的量是可隨著時間過去根據所述實體物件的移動適配的。
  9. 如請求項1之電腦實施的方法,其中所述實體物件的所述虛擬表示與所述實體物件相對於所述虛擬項目的移動的所述可控制的脫鉤,是包含在所述虛擬環境之中,將所述實體物件的所述虛擬表示停止在所述虛擬項目的表面。
  10. 如請求項9之電腦實施的方法,其中在所述虛擬環境之中,將所述實體物件的所述虛擬表示停止在所述虛擬項目的所述表面,是包含防止所述實體物件的所述虛擬表示移動超過所述虛擬項目的所述表面。
  11. 如請求項9之電腦實施的方法,其中在所述虛擬環境之中,將所述實體物件的所述虛擬表示停止在所述虛擬項目的所述表面,是包含在所述虛擬項目的所述表面實質減緩所述實體物件的所述虛擬表示的移動,以及包括在偵測到實體移動如此指出之後,容許所述實體物件的所述虛擬表示移動超過所述虛擬項目的所述表面。
  12. 如請求項10之電腦實施的方法,其進一步包括在所述虛擬環境之中,在所述實體物件的所述虛擬表示到達所述虛擬項目的所述表面之際,利用一或多個觸覺裝置來提供觸覺回授。
  13. 一種系統,其包括: 至少一物理處理器;以及 包括電腦可執行的指令的物理記憶體,當所述指令藉由所述物理處理器執行時,其使得所述物理處理器: 在一虛擬環境之中產生一虛擬項目; 利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置; 在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及 在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的所述移動脫鉤。
  14. 如請求項13之系統,其中所述實體物件的所述虛擬表示與所述實體物件相對於所述虛擬項目的移動的所述可控制的脫鉤,是包含移動所述實體物件的所述虛擬表示為所述實體物件的所述移動的一較小的百分比。
  15. 如請求項13之系統,其中所述實體物件的所述虛擬表示與所述實體物件相對於所述虛擬項目的移動的所述可控制的脫鉤,是包含釘扎所述實體物件的所述虛擬表示至所述實體物件相對於所述虛擬項目的一偵測到的目前的位置。
  16. 如請求項15之系統,其中即使所述實體物件的部分移動離開所述實體物件的所述偵測到的目前的位置,所述實體物件的所述虛擬表示仍維持被釘扎至所述實體物件的所述偵測到的目前的位置。
  17. 如請求項13之系統,其中所述實體物件的所述虛擬表示與所述實體物件相對於所述虛擬項目的移動的所述可控制的脫鉤,是包含登記從移動終點的彈回移動。
  18. 如請求項13之系統,其中所述實體物件的所述虛擬表示以及所述實體物件都在所述虛擬環境中被呈現。
  19. 如請求項13之系統,其中所述虛擬環境是在所述虛擬項目上呈現一或多個可視線索,其指出所述實體物件的所述虛擬表示被定位以接觸所述虛擬項目之處。
  20. 一種非暫態的電腦可讀取的媒體,其包括一或多個電腦可執行的指令,當所述指令藉由一計算裝置的至少一處理器執行時,其使得所述計算裝置: 在一虛擬環境之中產生一虛擬項目; 利用一或多個硬體感測器來偵測將在所述虛擬環境之中被描繪的至少一實體物件的一目前的位置; 在所述虛擬環境之中產生所述實體物件的一虛擬表示,其中所述實體物件的所述虛擬表示是被配置以至少部分地依循所述實體物件相對於所述虛擬項目的移動;以及 在所述虛擬環境之中呈現所述虛擬項目以及所述實體物件的所述產生的虛擬表示,其中所述實體物件的所述虛擬表示是至少部分可控制地與所述實體物件相對於所述虛擬項目的所述移動脫鉤。
TW111135403A 2021-10-29 2022-09-19 控制和虛擬物件的互動 TW202336562A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/514,800 US11836828B2 (en) 2021-10-29 2021-10-29 Controlling interactions with virtual objects
US17/514,800 2021-10-29

Publications (1)

Publication Number Publication Date
TW202336562A true TW202336562A (zh) 2023-09-16

Family

ID=84370053

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111135403A TW202336562A (zh) 2021-10-29 2022-09-19 控制和虛擬物件的互動

Country Status (4)

Country Link
US (1) US11836828B2 (zh)
CN (1) CN118202321A (zh)
TW (1) TW202336562A (zh)
WO (1) WO2023076646A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI842650B (zh) 2023-11-08 2024-05-11 中華電信股份有限公司 在虛擬世界中協助多人選擇活動之系統、方法及電腦程式產品

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120218395A1 (en) 2011-02-25 2012-08-30 Microsoft Corporation User interface presentation and interactions
US9696867B2 (en) 2013-01-15 2017-07-04 Leap Motion, Inc. Dynamic user interactions for display control and identifying dominant gestures
US9766806B2 (en) 2014-07-15 2017-09-19 Microsoft Technology Licensing, Llc Holographic keyboard display
CA3045664A1 (en) 2016-12-05 2018-06-14 Magic Leap, Inc. Virtual user input controls in a mixed reality environment
CN108536273A (zh) 2017-03-01 2018-09-14 天津锋时互动科技有限公司深圳分公司 基于手势的人机菜单交互方法与系统
US10606343B2 (en) * 2017-04-01 2020-03-31 Intel Corporation Keyboard for virtual reality
US10445935B2 (en) 2017-05-26 2019-10-15 Microsoft Technology Licensing, Llc Using tracking to simulate direct tablet interaction in mixed reality
US11875013B2 (en) * 2019-12-23 2024-01-16 Apple Inc. Devices, methods, and graphical user interfaces for displaying applications in three-dimensional environments
AU2021349381B2 (en) * 2020-09-25 2024-02-22 Apple Inc. Methods for interacting with virtual controls and/or an affordance for moving virtual objects in virtual environments
US11615597B2 (en) * 2020-09-25 2023-03-28 Apple Inc. Devices, methods, and graphical user interfaces for interacting with three-dimensional environments

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI842650B (zh) 2023-11-08 2024-05-11 中華電信股份有限公司 在虛擬世界中協助多人選擇活動之系統、方法及電腦程式產品

Also Published As

Publication number Publication date
CN118202321A (zh) 2024-06-14
WO2023076646A1 (en) 2023-05-04
US11836828B2 (en) 2023-12-05
US20230140550A1 (en) 2023-05-04

Similar Documents

Publication Publication Date Title
US11150730B1 (en) Devices, systems, and methods for controlling computing devices via neuromuscular signals of users
US11256341B1 (en) Systems and methods for transitioning between modes of tracking real-world objects for artificial reality interfaces
US11720175B1 (en) Spatially offset haptic feedback
US11397467B1 (en) Tactile simulation of initial contact with virtual objects
US11150800B1 (en) Pinch-based input systems and methods
US11599193B1 (en) Finger pinch detection
US11175731B1 (en) Apparatus, system, and method for directional acoustic sensing via wearables donned by users of artificial reality systems
US11366527B1 (en) Systems and methods for sensing gestures via vibration-sensitive wearables donned by users of artificial reality systems
US20230259207A1 (en) Apparatus, system, and method for detecting user input via hand gestures and arm movements
CN115087947A (zh) 经由飞行时间传感器进行手腕跟踪和手势检测的装置、系统及方法
US11874966B1 (en) Variable-resistance actuator
US11579704B2 (en) Systems and methods for adaptive input thresholding
US11334157B1 (en) Wearable device and user input system with active sensing for computing devices and artificial reality environments
US11836828B2 (en) Controlling interactions with virtual objects
US11726552B1 (en) Systems and methods for rendering a trigger finger
US11722137B1 (en) Variable-distance proximity detector
US11662815B2 (en) Apparatus, system, and method for detecting user input via hand gestures and arm movements
US11399074B2 (en) Devices, systems, and methods for modifying features of applications based on predicted intentions of users
US20240103626A1 (en) Haptic ring
US20240225545A9 (en) Electrode placement calibration
US20240130681A1 (en) Electrode placement calibration
JP2024516755A (ja) 親指圧力感知を有するハンドヘルドコントローラ
CN118056176A (zh) 用于经由手部姿势和手臂运动来检测用户输入的装置、系统和方法
WO2024064350A1 (en) User interfaces for capturing stereoscopic media
WO2023009492A1 (en) Method and device for managing interactions directed to a user interface with a physical object