JP2022535316A - Artificial reality system with sliding menu - Google Patents
Artificial reality system with sliding menu Download PDFInfo
- Publication number
- JP2022535316A JP2022535316A JP2021555497A JP2021555497A JP2022535316A JP 2022535316 A JP2022535316 A JP 2022535316A JP 2021555497 A JP2021555497 A JP 2021555497A JP 2021555497 A JP2021555497 A JP 2021555497A JP 2022535316 A JP2022535316 A JP 2022535316A
- Authority
- JP
- Japan
- Prior art keywords
- menu
- hand
- artificial reality
- gesture
- reality system
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 230000033001 locomotion Effects 0.000 claims abstract description 111
- 230000004044 response Effects 0.000 claims abstract description 60
- 230000004913 activation Effects 0.000 claims abstract description 52
- 230000009471 action Effects 0.000 claims abstract description 28
- 210000003811 finger Anatomy 0.000 claims description 81
- 238000000034 method Methods 0.000 claims description 54
- 210000003813 thumb Anatomy 0.000 claims description 52
- 238000009877 rendering Methods 0.000 claims description 17
- 230000008859 change Effects 0.000 abstract description 2
- 230000015654 memory Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 19
- 210000004247 hand Anatomy 0.000 description 18
- 238000001514 detection method Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 8
- 230000003190 augmentative effect Effects 0.000 description 6
- 208000013057 hereditary mucoepithelial dysplasia Diseases 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 239000013598 vector Substances 0.000 description 5
- 230000003213 activating effect Effects 0.000 description 3
- 210000000617 arm Anatomy 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 210000000707 wrist Anatomy 0.000 description 3
- 230000001143 conditioned effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 210000005224 forefinger Anatomy 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005057 finger movement Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 210000004932 little finger Anatomy 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000014616 translation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/04815—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
人工現実環境内でユーザインタフェース要素を描画、提示、および制御し、検出されたユーザの1つまたは複数のジェスチャに応答して動作を実行する、人工現実システムについて説明されている。人工現実システムは、片手で起動および相互作用され得るメニューを含むことができる。人工現実システムは、片手で実行されたメニュー起動ジェスチャの検出に応答して、メニューを描画することができる。手のメニュースライドジェスチャ(たとえば、水平方向の動き)を使用して、UIメニューの水平方向の位置を一定に保ちながら、スライド可能に係合可能なユーザインタフェース(UI)要素を、メニューの水平方向の広がりに沿って移動させることができる。メニュースライドジェスチャに直交する手の動き(たとえば、水平方向でない動き)により、メニューの位置を変更することができる。人工現実システムの実施態様では、人工現実システムと相互作用するために、両手の使用または他の入力デバイスの使用が、実際に必要となる。【選択図】図7AAn artificial reality system is described that renders, presents, and controls user interface elements within an artificial reality environment and performs actions in response to one or more detected user gestures. Artificial reality systems can include menus that can be activated and interacted with with one hand. The artificial reality system can render a menu in response to detecting a menu activation gesture performed with one hand. A menu slide gesture (e.g., horizontal movement) of the hand is used to move a slidably engageable user interface (UI) element horizontally in the menu while maintaining a constant horizontal position in the UI menu. can be moved along the spread of A hand movement orthogonal to the menu slide gesture (eg, non-horizontal movement) can change the position of the menu. Implementations of the artificial reality system actually require the use of both hands or other input devices to interact with the artificial reality system. [Selection drawing] Fig. 7A
Description
関連出願の相互参照
この出願は、2019年6月7日に出願された米国特許出願第16/434,919号の優先権を主張し、その内容は、あらゆる目的のためにその全体が参照により本明細書に組み入れられる。
CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority to U.S. patent application Ser. incorporated herein.
この開示は、一般的に、仮想現実、複合現実、および/または拡張現実システムなどの人工現実システムに関し、より具体的には、人工現実システムのユーザインタフェースに関する。 TECHNICAL FIELD This disclosure relates generally to artificial reality systems such as virtual reality, mixed reality, and/or augmented reality systems, and more specifically to user interfaces for artificial reality systems.
人工現実システムは、コンピュータゲーム、健康および安全、産業、ならびに教育など多くの分野での用途により、ますます遍在するようになっている。いくつかの例として、人工現実システムは、携帯デバイス、ゲーム機、パーソナルコンピューター、映画館、およびテーマパークに組み込まれている。一般に、人工現実は、ユーザに提示する前に何らかのやり方で調整された現実の形式であり、たとえば、仮想現実(VR:virtual reality)、拡張現実(AR:augmented reality)、複合現実(MR:mixed reality)、ハイブリッド現実、またはそれらの何らかの組合せおよび/もしくは派生的なものが含まれ得る。 Artificial reality systems are becoming increasingly ubiquitous with applications in many areas such as computer games, health and safety, industry, and education. As a few examples, artificial reality systems have been integrated into mobile devices, game consoles, personal computers, movie theaters, and theme parks. In general, artificial reality is a form of reality that is conditioned in some way before being presented to the user, e.g., virtual reality (VR), augmented reality (AR), mixed reality (MR) reality), hybrid reality, or any combination and/or derivative thereof.
典型的な人工現実システムは、ユーザに対してコンテンツを描画および表示する、1つまたは複数のデバイスを備える。一例として、人工現実システムは、ユーザが着用し、人工現実コンテンツをユーザに出力するよう構成された、ヘッドマウントディスプレイ(HMD:head-mounted display)を組み込むことができる。人工現実コンテンツには、全面的に生成されたコンテンツ、または取り込まれたコンテンツ(たとえば、実世界のビデオおよび/または画像)と組み合わせて生成されたコンテンツが含まれ得る。動作中、ユーザは通常、人工現実システムと相互作用して、コンテンツを選択し、アプリケーションを起動するか、またはその他の方法でシステムを設定する。 A typical artificial reality system comprises one or more devices that render and display content to a user. As an example, an artificial reality system may incorporate a head-mounted display (HMD) that is worn by a user and configured to output artificial reality content to the user. Artificial reality content may include content that is entirely generated or content that is generated in combination with captured content (eg, real-world videos and/or images). In operation, users typically interact with the artificial reality system to select content, launch applications, or otherwise configure the system.
この開示は、一般的に、人工現実システムについて説明し、より具体的には、グラフィカルユーザインタフェース要素、ならびに人工現実環境内でユーザインタフェース要素を提示および制御する技法について説明する。 This disclosure generally describes an artificial reality system, and more specifically describes graphical user interface elements and techniques for presenting and controlling user interface elements within an artificial reality environment.
たとえば、ユーザの手、手指(finger)、親指、もしくは腕、または事前定義されたジェスチャの組合せの、特定の動き、配置、位置、および/または向きなど、ユーザによる1つまたは複数の事前定義されたジェスチャの検出に応答して、グラフィカルユーザインタフェース要素を生成および描画し、ユーザに対して表示する、人工現実システムについて説明されている。いくつかの例では、人工現実システムはさらに、特定のジェスチャと、リアルタイムでのユーザの凝視追跡によって、またはユーザが着用しているHMDのポーズに関連して判断され得る、物理的環境でのユーザの現在の視野に対する、特定のジェスチャの位置および向きなど、他の条件との組合せの検出に応答して、グラフィカルユーザインタフェース要素の生成および描画をトリガすることができる。 For example, one or more predefined gestures by the user, such as particular movements, placements, positions, and/or orientations of the user's hand, finger, thumb, or arm, or combinations of predefined gestures. An artificial reality system is described that generates, renders, and displays graphical user interface elements to a user in response to detecting gestures. In some examples, the artificial reality system also provides a visual representation of the user in the physical environment, which can be determined by specific gestures and gaze tracking of the user in real-time or in relation to the pose of the HMD the user is wearing. Generation and rendering of graphical user interface elements can be triggered in response to detection of a combination of other conditions, such as the position and orientation of a particular gesture relative to the current field of view of the .
いくつかの例では、人工現実システムは、人工現実システムのディスプレイ内に現在描画されている人工現実コンテンツに対して、重畳する要素であるグラフィカルユーザインタフェース要素を生成および提示することができる。グラフィカルユーザインタフェース要素は、たとえば、ユーザが人工現実システムを動作させるために相互作用するメニューもしくはサブメニューなどのグラフィカルユーザインタフェース、またはトグル要素、ドロップダウン要素、メニュー選択要素、2次元もしくは3次元形状、グラフィカル入力キーもしくはキーボード、コンテンツ表示ウィンドウなどの、ユーザが選択可能かつ操作可能な個々のグラフィカルユーザインタフェース要素であり得る。 In some examples, the artificial reality system can generate and present graphical user interface elements that are overlaying elements to the artificial reality content currently rendered in the display of the artificial reality system. A graphical user interface element may be, for example, a graphical user interface such as a menu or submenus that a user interacts with to operate an artificial reality system, or a toggle element, a dropdown element, a menu selection element, a 2D or 3D shape, It can be an individual user selectable and operable graphical user interface element, such as a graphical input key or keyboard, a content display window, or the like.
一部のHMDの技術的な問題は、人工現実システムの態様と相互作用するために、たとえば、メニュー内に選択用のユーザインタフェース要素を置くために使用できる、入力デバイスがないことである。一部のシステムでは、人工現実システムは、ユーザの両手を使用した、ユーザのメニューまたはアイコンとの相互作用を実現することができる。しかし、この種の相互作用の技術的な問題は、一方の手がもう一方の手を隠してしまう可能性があり、これにより人工現実システムが、ユーザの意図を正確に判断するのが困難になることである。さらに、一部のユーザは、人工現実システムと相互作用するのに両手を使用することを妨げ得る、障害を持っている場合がある。前述の技術的問題に対する技術的解決策として、いくつかの態様は、片手で起動および相互作用することができるメニューを有している。人工現実システムは、片手で実行されたメニュー起動ジェスチャの検出に応答して、メニューを描画することができる。手のメニュースライドジェスチャ(たとえば、水平方向の動き)を使用して、メニューの水平位置を一定に保ちながら、スライド可能に係合可能なユーザインタフェース(UI:user interface)要素を、メニューの水平方向の広がりに沿って移動させることができる。いくつかの態様では、メニュースライドジェスチャに実質的に直交する手の動き(たとえば、水平方向でない動き)により、メニューの位置を変更することができる。人工現実システムの実施形態は、人工現実システムと相互作用するために、両手の使用も他の入力デバイスの使用も必要とせず、したがって、従来の人工現実の実施態様に対するこの技術的改善は、使いやすさを提供すること、障害を持っている人に、システムと相互作用するための片手の使用に関係する機能、およびメニューまたは他のユーザインタフェース要素とのユーザの相互作用を正確に判断する機能を提供することなど、1つまたは複数の実用的なアプリケーションを提供することができる。 A technical problem with some HMDs is the lack of input devices that can be used to interact with aspects of the artificial reality system, for example, to place user interface elements for selection in menus. In some systems, the artificial reality system can enable interaction with the user's menus or icons using the user's two hands. However, the technical problem with this kind of interaction is that one hand can hide the other, making it difficult for artificial reality systems to accurately determine the user's intentions. It is to become. Additionally, some users may have disabilities that may prevent them from using both hands to interact with the artificial reality system. As a technical solution to the above technical problem, some embodiments have menus that can be activated and interacted with with one hand. The artificial reality system can render a menu in response to detecting a menu activation gesture performed with one hand. A menu slide gesture (e.g., horizontal movement) of the hand is used to move a slidably engageable user interface (UI) element into the horizontal direction of the menu while maintaining a constant horizontal position of the menu. can be moved along the spread of In some aspects, a hand movement (eg, non-horizontal movement) that is substantially orthogonal to the menu slide gesture can change the position of the menu. Embodiments of the artificial reality system do not require the use of both hands or other input devices to interact with the artificial reality system, thus this technical improvement over conventional artificial reality implementations is easy to use. Providing ease of use, features related to using one hand to interact with the system for people with disabilities, and the ability to accurately determine user interaction with menus or other user interface elements can provide one or more practical applications, such as providing a
1つまたは複数の例示的な態様では、人工現実システムは、画像データを取り込むよう構成される画像取込みデバイス、人工現実コンテンツを出力するよう構成されるヘッドマウントデバイス(HMD:head mounted device)、画像データから、手が実質的に上向きである手の配置と、手の親指および手指の挟持配置とを含む、メニュー起動ジェスチャを識別するよう構成されるジェスチャ検出器、メニュー起動ジェスチャに応答して、メニューインタフェース、およびメニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成するよう構成されるUIエンジン、ならびにHMDで表示するための人工現実コンテンツ、メニューインタフェース、およびスライド可能に係合可能なUI要素を描画するよう構成される描画エンジンを備える。 In one or more exemplary aspects, an artificial reality system includes an image capture device configured to capture image data, a head mounted device (HMD) configured to output artificial reality content, an image a gesture detector configured to identify, from the data, a menu-activated gesture including a hand placement in which the hand is pointing substantially upwards and a pinched placement of the thumb and fingers of the hand; A UI engine configured to generate a menu interface and a slidably engageable UI element in a first position relative to the menu interface, and artificial reality content for display on an HMD, the menu interface, and A rendering engine configured to render slidably engageable UI elements.
1つまたは複数のさらなる例示的な態様では、方法は、ヘッドマウントデバイス(HMD)を含む人工現実システムによって、画像取込みデバイスを介して画像データを取得すること、人工現実システムによって、画像データから、メニュー起動ジェスチャを識別することであって、メニュー起動ジェスチャが、手が実質的に上向きである手の配置と、手の親指および手指の挟持配置とを含む、メニュー起動ジェスチャを識別すること、人工現実システムによって、メニュー起動ジェスチャに応答して、メニューインタフェース、およびメニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成すること、ならびに人工現実システムによって、HMDで表示するための人工現実コンテンツ、メニューインタフェース、およびスライド可能に係合可能なUI要素を描画することを含む。 In one or more further exemplary aspects, a method comprises: acquiring image data via an image capture device by an artificial reality system including a head-mounted device (HMD); from the image data by the artificial reality system; identifying a menu-activating gesture, the menu-activating gesture including a hand placement with the hand pointing substantially upward and a pinching placement of the thumb and fingers of the hand; generating, by the reality system, a menu interface and a slidably engageable UI element in a first position relative to the menu interface in response to the menu activation gesture; Including rendering artificial reality content for display, menu interfaces, and slidably engageable UI elements.
1つまたは複数の追加の例示的な態様では、非一時的なコンピュータ可読媒体は、実行されると、人工現実システムの1つまたは複数のプロセッサに、画像取込みデバイスを介して画像データを取り込ませ、画像データから、手の配置を含むメニュー起動ジェスチャを識別させ、メニュー起動ジェスチャに応答して、メニューインタフェース、およびメニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成させ、メニュー起動ジェスチャに続く、手の動きと組み合わせた手の配置を含む、メニュースライドジェスチャを識別させ、メニュースライドジェスチャに応答して、スライド可能に係合可能なUI要素を、メニューインタフェースに対して第2の位置に移動させ、かつヘッドマウントデバイス(HMD)で表示するための、人工現実コンテンツ、メニューインタフェース、およびスライド可能に係合可能なUI要素を描画させる命令を含む。 In one or more additional exemplary aspects, a non-transitory computer-readable medium, when executed, causes one or more processors of an artificial reality system to capture image data via an image capture device. , identifying from the image data a menu activation gesture including hand placement, and responsive to the menu activation gesture, a menu interface and a slidably engageable UI element at a first position relative to the menu interface. to identify menu slide gestures, including hand placement in combination with hand movements following menu activation gestures; to a second position relative to and render artificial reality content, a menu interface, and slidably engageable UI elements for display on a head-mounted device (HMD).
一例では、画像データを取り込むよう構成される画像取込みデバイス、人工現実コンテンツを出力するよう構成されるヘッドマウントディスプレイ(HMD)、画像データから、手が実質的に上向きである手の配置と、手の親指および手指の挟持配置とを含む、メニュー起動ジェスチャを識別するよう構成されるジェスチャ検出器、メニュー起動ジェスチャに応答して、メニューインタフェース、およびメニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成するよう構成されるユーザインタフェース(UI)エンジン、ならびにHMDで表示するための人工現実コンテンツ、メニューインタフェース、およびスライド可能に係合可能なUI要素を描画するよう構成される描画エンジンを備える、人工現実システムが提供される。 In one example, an image capture device configured to capture image data; a head-mounted display (HMD) configured to output artificial reality content; a gesture detector configured to identify a menu-activated gesture, comprising: a pinched placement of the thumb and fingers of a human body; a menu interface in response to the menu-activated gesture; and a slide in a first position relative to the menu interface. A user interface (UI) engine configured to generate engagable UI elements, and to render artificial reality content, menu interfaces, and slidably engagable UI elements for display on an HMD An artificial reality system is provided comprising a rendering engine configured.
いくつかの実施形態では、メニューインタフェースは、好ましくは、メニューインタフェースの広がりに沿って配列された1つまたは複数のメニューアイテムを有し、UIエンジンは、メニューインタフェースに対するスライド可能に係合可能なUI要素の位置に応じて、メニューアイテムのうちの1つを強調表示するよう構成される。 In some embodiments, the menu interface preferably has one or more menu items arranged along the extent of the menu interface, and the UI engine generates a slidably engageable UI for the menu interface. It is arranged to highlight one of the menu items depending on the position of the element.
いくつかの実施形態では、1つまたは複数のメニューアイテムは、好ましくは、人工現実システム上で実行されるそれぞれのアプリケーションに対応する。 In some embodiments, one or more menu items preferably correspond to respective applications running on the artificial reality system.
いくつかの実施形態では、ジェスチャ検出器はさらに、好ましくは、画像データから、手の動きと組み合わせた手の配置を含むメニュースライドジェスチャを識別するよう構成され、UIエンジンはさらに、メニュースライドジェスチャに応答して、スライド可能に係合可能なUI要素を、メニューインタフェースに対して第2の位置に移動させるよう構成される。 In some embodiments, the gesture detector is further preferably configured to identify, from the image data, a menu slide gesture including hand placement in combination with hand movement, and the UI engine is further configured to identify the menu slide gesture. In response, the slidably engagable UI element is configured to move to a second position relative to the menu interface.
いくつかの実施形態では、メニューインタフェースは、好ましくは、メニューインタフェースの広がりに沿って配列された1つまたは複数のメニューアイテムを有し、スライド可能に係合可能なUI要素を、メニューインタフェースに対して第2の位置に移動させるために、UIエンジンは、スライド可能に係合可能なUI要素を、メニューインタフェースの広がりに沿って、メニューインタフェースに対する第2の位置へスライドさせるよう構成される。 In some embodiments, the menu interface preferably has one or more menu items arranged along the extent of the menu interface, with slidably engageable UI elements positioned relative to the menu interface. The UI engine is configured to slide the slidably engageable UI element to the second position relative to the menu interface along the extent of the menu interface.
いくつかの実施形態では、メニュースライドジェスチャは、好ましくは、実質的に第1の方向への手の動きを含み、ジェスチャ検出器は、画像データから、メニュー起動ジェスチャに続く、実質的に第2の方向への手の動きを識別するように構成され、実質的に第2の方向は、実質的に第1の方向に実質的に直交しており、UIエンジンはさらに、実質的に第2の方向への手の動きに応答して、メニューインタフェースに対するスライド可能に係合可能なUI要素の位置を維持しながら、スライド可能に係合可能なUI要素およびメニューインタフェースを移動させるよう構成される。 In some embodiments, the menu slide gesture preferably includes hand movement in substantially a first direction, and the gesture detector detects from the image data substantially a second direction following the menu activation gesture. wherein the substantially second direction is substantially orthogonal to the first direction, and the UI engine is further configured to identify hand motion in a direction configured to move the slidably engagable UI element and the menu interface while maintaining the position of the slidably engagable UI element relative to the menu interface in response to movement of the hand in the direction of .
いくつかの実施形態では、人工現実システムは、好ましくは、1つまたは複数の人工現実アプリケーションを実行するためのアプリケーションエンジンをさらに備え、ジェスチャ検出器は、画像データから、メニュースライドジェスチャに続く選択ジェスチャを識別するよう構成され、アプリケーションエンジンは、選択ジェスチャに応答して動作を実行するよう構成される。 In some embodiments, the artificial reality system preferably further comprises an application engine for executing one or more artificial reality applications, wherein the gesture detector detects from the image data a menu slide gesture followed by a selection gesture. and the application engine is configured to perform an action in response to the selection gesture.
いくつかの実施形態では、選択ジェスチャは、好ましくは、(1)手の別の手指を動かすこと、(2)メニューインタフェースに実質的に垂直な方向へ手を移動させること、または(3)手の親指および手指がもはや挟持配置でなくなるように再配置することのうちの1つを含む。 In some embodiments, the selection gesture is preferably (1) moving another finger of the hand, (2) moving the hand in a direction substantially perpendicular to the menu interface, or (3) moving the hand repositioning the thumb and fingers of the patient so that they are no longer in a pinching position.
いくつかの実施形態では、ジェスチャ検出器はさらに、好ましくは、画像データから、メニュー起動ジェスチャの前にメニュープロンプトジェスチャを識別するよう構成され、UIエンジンはさらに、メニュープロンプトジェスチャに応答して、メニュープロンプト要素を生成するよう構成される。 In some embodiments, the gesture detector is further preferably configured to identify, from the image data, a menu prompt gesture prior to the menu activation gesture, and the UI engine is further configured, in response to the menu prompt gesture, to identify the menu prompt gesture. Configured to generate prompt elements.
いくつかの実施形態では、メニュープロンプトジェスチャは、好ましくは、親指と手指との間に間隔をあけた状態で、実質的に上向きの位置に配置された手を含み、UIエンジンは、仮想の手の親指と手指との間隔にメニュープロンプト要素を生成する。 In some embodiments, the menu prompt gesture preferably includes a hand placed in a substantially upward position with space between the thumb and fingers, and the UI engine uses the virtual hand generates a menu prompt element between the thumb and finger of the .
いくつかの実施形態では、メニュープロンプト要素は、好ましくは、仮想の手の親指と手指との間の線を含む。 In some embodiments, the menu prompt element preferably includes a line between the thumb and fingers of the virtual hand.
いくつかの実施形態では、画像取込みデバイスは、好ましくは、HMDと統合される。 In some embodiments, the image capture device is preferably integrated with the HMD.
いくつかの例では、ヘッドマウントディスプレイ(HMD)を含む人工現実システムによって、画像取込みデバイスを介して画像データを取得すること、人工現実システムによって、画像データから、メニュー起動ジェスチャを識別することであって、メニュー起動ジェスチャが、手が実質的に上向きである手の配置と、手の親指および手指の挟持配置とを含む、メニュー起動ジェスチャを識別すること、人工現実システムによって、メニュー起動ジェスチャに応答して、メニューインタフェース、およびメニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成すること、ならびに人工現実システムによって、HMDで表示するための人工現実コンテンツ、メニューインタフェース、およびスライド可能に係合可能なUI要素を描画することを含む方法が提供される。 Some examples include acquiring image data via an image capture device by an artificial reality system that includes a head-mounted display (HMD), and identifying a menu activation gesture from the image data by the artificial reality system. identifying a menu-activated gesture, wherein the menu-activated gesture includes a hand placement with the hand pointing substantially upward and a pinched placement of the thumb and fingers of the hand; responding to the menu-activated gesture by an artificial reality system; to generate a menu interface and a slidably engageable UI element in a first position with respect to the menu interface; A method is provided that includes rendering an interface and slidably engageable UI elements.
いくつかの実施形態では、メニューインタフェースは、好ましくは、メニューインタフェースの広がりに沿って配列された1つまたは複数のメニューアイテムを有し、この方法は、人工現実システムによって、メニューインタフェースに対するスライド可能に係合可能なUI要素の位置に応じて、メニューアイテムのうちの1つを強調表示することをさらに含む。 In some embodiments, the menu interface preferably has one or more menu items arranged along the extent of the menu interface, and the method is rendered slidable relative to the menu interface by the artificial reality system. Further including highlighting one of the menu items according to the position of the engagable UI element.
いくつかの実施形態では、この方法は、好ましくは、人工現実システムによって、画像データから手の動きと組み合わせた手の配置を含むメニュースライドジェスチャを識別することと、人工現実システムによって、メニュースライドジェスチャに応答して、スライド可能に係合可能なUI要素を、メニューインタフェースに対して第2の位置に移動させることとをさらに含む。 In some embodiments, the method preferably comprises identifying a menu slide gesture including hand placement combined with hand movement from image data by an artificial reality system; responsive to moving the slidably engagable UI element to a second position relative to the menu interface.
いくつかの実施形態では、スライド可能に係合可能なUI要素を、メニューインタフェースに対して第2の位置に移動させることが、好ましくは、スライド可能に係合可能なUI要素を、メニューインタフェースの広がりに沿ってメニューインタフェースに対する第2の位置へスライドさせることを含む。 In some embodiments, moving the slidably engagable UI element to a second position relative to the menu interface preferably moves the slidably engagable UI element to the position of the menu interface. Sliding along the spread to a second position relative to the menu interface.
いくつかの実施形態では、メニュースライドジェスチャは、好ましくは、実質的に第1の方向への手の動きを含み、この方法は、人工現実システムによって、画像データから、メニュー起動ジェスチャに続く、実質的に第2の方向への手の動きを識別することであって、実質的に第2の方向は、実質的に第1の方向に実質的に直交している、第2の方向への手の動きを識別することと、人工現実システムによって、実質的に第2の方向への手の動きに応答して、メニューインタフェースに対するスライド可能に係合可能なUI要素の位置を維持しながら、スライド可能に係合可能なUI要素およびメニューインタフェースを移動させることとをさらに含む。 In some embodiments, the menu slide gesture preferably includes a hand movement substantially in the first direction, and the method is performed by the artificial reality system from the image data following the menu activation gesture, substantially identifying movement of the hand substantially in a second direction, wherein the second direction is substantially orthogonal to the first direction; identifying the hand movement and maintaining the position of the slidably engagable UI element with respect to the menu interface by the artificial reality system in response to the hand movement substantially in the second direction; Further including moving the slidably engagable UI element and menu interface.
いくつかの実施形態では、この方法は、好ましくは、人工現実システムによって、画像データからメニュープロンプトジェスチャを識別することと、人工現実システムによって、メニュープロンプトジェスチャに応答して、メニュープロンプト要素を生成することとをさらに含む。 In some embodiments, the method preferably comprises identifying, by an artificial reality system, a menu prompt gesture from image data; and generating, by the artificial reality system, a menu prompt element in response to the menu prompt gesture. further comprising:
いくつかの例では、実行されると、人工現実システムの1つまたは複数のプロセッサに、画像取込みデバイスを介して画像データを取り込ませ、画像データから、手の配置を含むメニュー起動ジェスチャを識別させ、メニュー起動ジェスチャに応答して、メニューインタフェース、およびメニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成させ、メニュー起動ジェスチャに続く、手の動きと組み合わせた手の配置を含む、メニュースライドジェスチャを識別させ、メニュースライドジェスチャに応答して、スライド可能に係合可能なUI要素を、メニューインタフェースに対して第2の位置に移動させ、かつヘッドマウントディスプレイ(HMD)で表示するための、人工現実コンテンツ、メニューインタフェース、およびスライド可能に係合可能なUI要素を描画させる命令を含む、非一時的なコンピュータ可読媒体が提供される。 Some examples, when executed, cause one or more processors of the artificial reality system to capture image data via the image capture device and identify menu activation gestures, including hand placement, from the image data. , in response to the menu activation gesture, generating a menu interface and a slidably engageable UI element in a first position relative to the menu interface, combined with a hand movement following the menu activation gesture. identifying a menu slide gesture, including hand placement; moving a slidably engageable UI element to a second position relative to the menu interface in response to the menu slide gesture; A non-transitory computer-readable medium is provided that includes instructions for rendering artificial reality content, a menu interface, and slidably engageable UI elements for display on an HMD.
命令がさらに、1つまたは複数のプロセッサに、画像データから、親指と手指との間に間隔をあけた状態で、実質的に上向きの位置に配置された手を含む、メニュープロンプトジェスチャを識別させ、かつメニュープロンプトジェスチャに応答して、仮想の手の親指と手指との間隔にメニュープロンプト要素を生成させる、請求項19に記載の非一時的なコンピュータ可読媒体。 The instructions further cause the one or more processors to identify from the image data a menu prompt gesture including a hand placed in a substantially upward position with a space between the thumb and fingers. 20. The non-transitory computer-readable medium of claim 19, wherein in response to a menu prompt gesture, a menu prompt element is generated at the thumb-to-finger spacing of a virtual hand.
本開示の1つまたは複数の例または実施形態に組み込むのに好適であると説明されている本開示の特徴は、本開示のありとあらゆる例および実施形態にわたって、一般化できることを意図していることが理解されよう。この開示の技法の1つまたは複数の例の詳細が、添付図面および以下の説明に示されている。技法の他の特徴、目的、および利点は、説明および図面から、ならびに特許請求の範囲から明らかとなろう。 Features of the disclosure described as suitable for incorporation in one or more examples or embodiments of the disclosure are intended to be generalizable across any and all examples and embodiments of the disclosure. be understood. The details of one or more examples of the techniques of this disclosure are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the technique will be apparent from the description and drawings, and from the claims.
同じ参照符号は、図および説明全体を通して、同じ要素を指す。 Like reference numbers refer to like elements throughout the drawings and description.
図1Aは、本開示の技法による、人工現実環境内のユーザインタフェース要素を提示および制御する、例示的な人工現実システム10を示す図である。いくつかの例示的な実施態様では、人工現実システム10は、ユーザ110が実行する1つまたは複数のジェスチャの検出に応答して、グラフィカルユーザインタフェース要素を生成し、ユーザ110に対して描画する。すなわち、本明細書で説明されるように、人工現実システム10は、ユーザの手、手指、親指、または腕の特定の動き、配置、場所、および/または向きなど、ユーザ110が実行する1つまたは複数の特定のジェスチャの検出に応答して、1つまたは複数のグラフィカルユーザインタフェース要素124、126を提示する。他の例では、人工現実システム10は、特殊なトグル要素、ドロップダウン要素、メニュー選択要素、グラフィカル入力キーまたはキーボード、コンテンツ表示ウィンドウなど、人工現実環境内でのユーザとの相互作用および操作用に特別に設計されたユーザインタフェース要素を提示および制御する。
FIG. 1A is a diagram illustrating an exemplary
図1Aの例では、人工現実システム10は、ヘッドマウントデバイス(HMD:head mounted device)112、コンソール106、およびいくつかの例では、1つまたは複数の外部センサ90を備えている。図示のように、HMD112は、通常、ユーザ110が着用し、人工現実コンテンツ122をユーザ110に提示する電子ディスプレイおよび光学組立体を備えている。加えて、HMD112は、HMD112の動きを追跡する1つまたは複数のセンサ(たとえば、加速度計)を備え、また周囲の物理的環境の画像データを取り込む、1つまたは複数の画像取込みデバイス138、たとえば、カメラ、ラインスキャナなどを備えることができる。この例では、コンソール106は、ゲーム機、ワークステーション、デスクトップコンピュータ、またはラップトップなど、ただ1つのコンピュータ処理デバイスとして示されている。他の例では、コンソール106は、分散型コンピュータ処理ネットワーク、データセンタ、またはクラウドコンピュータ処理システムなど、複数のコンピュータ処理デバイスに分散されていてもよい。コンソール106、HMD112、およびセンサ90は、この例に示されているように、ネットワーク104を介して通信可能に結合することができ、ネットワークは、WiFi、メッシュネットワーク、または短距離無線通信媒体などの有線または無線ネットワークであり得る。この例では、HMD112は、コンソール106と通信する、たとえば、コンソール106と繋がっているか、または無線通信するように示されているが、いくつかの実施態様では、HMD112は、独立型の携帯人工現実システムとして動作する。
In the example of FIG. 1A, the
一般に、人工現実システム10は、実世界の3D物理的環境から取り込まれた情報を使用して、ユーザ110に対して表示するための人工現実コンテンツ122を描画する。図1Aの例では、ユーザ110は、コンソール106および/またはHMD112上で人工現実アプリケーションを実行することによって構築および描画される、人工現実コンテンツ122を観察する。一例として、人工現実コンテンツ122は、ユーザ110が、1つまたは複数の仮想物体128A、128Bと共に、アバター120として描画される、民生ゲームアプリケーションであり得る。いくつかの例では、人工現実コンテンツ122には、実世界の形象と仮想物体との混在、たとえば、複合現実および/または拡張現実が含まれ得る。他の例では、人工現実コンテンツ122は、たとえば、ビデオ会議アプリケーション、ナビゲーションアプリケーション、教育アプリケーション、訓練もしくはシミュレーションアプリケーション、または人工現実を実装する他の種類のアプリケーションであり得る。
In general,
人工現実アプリケーションは、動作中、基準フレーム、通常はHMD112の観察視点に対するポーズ情報を追跡および計算することによって、ユーザ110に対して表示する人工現実コンテンツ122を構築する。基準フレームとしてHMD112を使用し、HMD112の現在の推定ポーズによって判断される現在の視野130に基づいて、人工現実アプリケーションは、いくつかの例では、ユーザ110の実世界での3D物理的環境の上に少なくとも部分的に重畳され得る、3D人工現実コンテンツを描画する。この処理中に、人工現実アプリケーションは、HMD112から受け取った動き情報およびユーザコマンドなどの感知されたデータ、ならびにいくつかの例では、外部カメラなどの任意の外部センサ90からのデータを使用して、実世界の物理的環境内での、ユーザ110の動きおよび/またはユーザ110に関する特徴追跡情報などの3D情報を取り込む。感知されたデータに基づいて、人工現実アプリケーションは、HMD112の基準フレームの現在のポーズを判断し、現在のポーズにしたがって、人工現実コンテンツ122を描画する。
During operation, the artificial reality application builds the
さらに、この開示の技法によれば、人工現実アプリケーションは、感知されたデータに基づいて、ユーザ110が実行するジェスチャを検出し、1つまたは複数の特定のジェスチャの検出に応答して、ユーザに提示されている、下にある人工現実コンテンツ122上に重畳され得る、1つまたは複数のユーザインタフェース要素、たとえば、UIメニュー124およびUI要素126を生成する。この点に関して、ユーザインタフェース要素124、126は、人工現実環境でユーザに提示されている人工現実コンテンツ122の一部と見ることができる。このようにして、人工現実システム10は、ユーザの手、手指、親指、または腕の特定の動き、配置、位置、および/または向きなど、ユーザ110による1つまたは複数の特定のジェスチャの検出に応答して、1つまたは複数のグラフィカルユーザインタフェース要素124、126を動的に提示する。ユーザの手の例示的な配置には、拳、伸ばした1本または複数本の指、手の個々の指のうちの1本または複数本の相対的および/または絶対的位置および向き、手のひらの形状などが含まれ得る。ユーザインタフェース要素は、たとえば、ユーザ110が人工現実システムを動作させるために相互作用するメニューもしくはサブメニューなどのグラフィカルユーザインタフェース、またはアイコン要素、トグル要素、ドロップダウン要素、メニュー選択要素、2次元または3次元形状、グラフィカル入力キーもしくはキーボード、コンテンツ表示ウィンドウなどの、ユーザ110が選択可能かつ操作可能な個々のユーザインタフェース要素であり得る。UI要素126は、2次元要素として描かれているが、たとえば、ユーザが、人工現実環境において形状を平行移動、拡大縮小、および/または回転させる、ジェスチャを実行することによって操作可能な2次元または3次元形状であってもよい。
Further, in accordance with the techniques of this disclosure, the artificial reality application detects gestures performed by
さらに、本明細書で説明されているように、いくつかの例では、人工現実システム10は、システムが実行している1つもしくは複数のアプリケーションの現在の状態、または物理的環境において、リアルタイムでのユーザの視線追跡によって判断され得る、ユーザ110の現在の視野130に対して検出された特定のジェスチャの位置および向き、もしくは他の条件など、他の条件に応答してグラフィカルユーザインタフェース要素124、126の生成および描画をトリガすることができる。
Further, as described herein, in some examples, the
より具体的には、本明細書でさらに説明されているように、HMD112の画像取込みデバイス138は、画像取込みデバイス138の視野130内にある実世界の物理的環境内の物体を表す画像データを取り込む。視野130は、通常、HMD112の観察視点に対応する。図1Aに示されている例などのいくつかの例では、人工現実アプリケーションは、視野130内にあるユーザ110の手132の部分を、人工現実コンテンツ122内の仮想の手136として描画する。他の例では、人工現実アプリケーションは、複合現実および/または拡張現実を含む人工現実コンテンツ122内で、ユーザ110の手132および/または腕134の実世界画像を提示することができる。いずれの例においても、ユーザ110は、視野130内にあるユーザの手132および/または腕134の部分を、人工現実コンテンツ122内の物体として観察することができる。他の例では、人工現実アプリケーションは、ユーザの手132または腕134の表現を描画しない場合がある。
More specifically, as further described herein,
いずれにせよ、人工現実システム10は、動作中、HMD112の画像取込みデバイス138によって取り込まれた画像データ内で物体認識を実行して、手132を識別する。この識別は、オプションで、個々の手指もしくは親指、および/またはユーザ110の腕134の全部または一部を識別することを含む。さらに、人工現実システム10は、時間のスライディングウィンドウにわたって、手132(オプションで、手の特定の指を含む)および/または腕134の部分の位置、向き、および配置を追跡する。人工現実アプリケーションは、追跡される手132および/または腕134の部分の任意の動き、配置、位置、および/または向きを分析し、特定の物体、たとえばユーザ110の手132(手の特定の指を含む)および/または腕134の部分を使って実行される、1つまたは複数のジェスチャを識別する。人工現実アプリケーションは、ジェスチャを検出するために、手132および/または腕134の部分の動き、配置、位置、および/または向きを、人工現実システム10のジェスチャライブラリに記憶されたジェスチャの定義と比較することができ、ジェスチャライブラリ内の各ジェスチャは、1つまたは複数の動作にマッピングされ得る。いくつかの例では、動きの検出には、物理的環境で、指(人差し指および親指など)の定義された組合せのいずれかが、くっついて触れるまたはほぼ触れるかどうかを含む、手132の1本または複数本の指(個々の手指および親指)の位置を追跡することが含まれ得る。他の例では、動きの検出には、HMD112の現在のポーズに対する手132の向き(たとえば、HMD112の方を、もしくはHMD112とは反対の方を指す手指)、および/または腕134の向き(すなわち、HMD112の方に向く腕の法線)を追跡することが含まれ得る。ユーザの手132(または手の一部)の位置および向きは、あるいは、手132(または手の一部)のポーズと呼ばれ得る。
In any event, during operation,
さらに、人工現実アプリケーションは、手132および/または腕134の配置、位置、および/または向きを分析し、少なくとも閾値期間にわたって1つまたは複数の特定の配置、位置、および/または向きに保持されている手132および/または腕134を含む、ジェスチャを識別することができる。人工現実システム10は、例として、手132および/または腕134が視野130内で少なくとも設定可能な期間、実質的に静止状態で保持されている1つまたは複数の特定の位置を、ユーザ110が、メニューなどの特定の種類のユーザインタフェース要素124、126の表示をトリガすることなど、人工現実アプリケーションによる所望の応答をトリガすることを意図したジェスチャを、実行しようとしていることを示すものとして使用することができる。人工現実システム10は、別の例として、少なくとも設定可能な期間、視野130内に維持されている手132の手指および/もしくは手のひら、ならびに/または腕134の1つまたは複数の特定の配置を、ユーザ110がジェスチャを実行しようとしていることを示すものとして使用することができる。図1Aには、ユーザ110の右手132および右腕134しか示されていないが、他の例では、人工現実システム10は、ユーザ110の左手および/もしくは左腕、またはユーザ110の左右両手および/もしくは両腕を識別することができる。このようにして、人工現実システム10は、物理的環境内で、どちらかの手で実行される片手ジェスチャ、両手ジェスチャ、または腕ベースのジェスチャを検出し、検出されたジェスチャに応答して、関連するユーザインタフェース要素を生成することができる。
In addition, the artificial reality application analyzes the placement, position and/or orientation of the
この開示の技法によれば、人工現実アプリケーションは、識別されたジェスチャが、コンソール106および/またはHMD112のジェスチャライブラリ内の複数のエントリのうちの1つによって定義されたジェスチャに相当するかどうかを判断する。以下でより詳細に説明されるように、ジェスチャライブラリのエントリはそれぞれ、相異なるジェスチャを、ユーザの手、指(手指もしくは親指)、および/もしくは腕の、時間の経過に伴う特定の動き、配置、位置、および/もしくは向き、またはかかるプロパティの組合せとして定義することができる。加えて、定義されたジェスチャはそれぞれ、人工現実アプリケーションによって実行されるべき1つまたは複数の動作の形で、所望の応答に関連づけられ得る。一例として、ジェスチャライブラリ内の1つまたは複数の定義されたジェスチャは、1つまたは複数のユーザインタフェース要素、たとえば、UIメニュー124の生成、変形、および/または配置をトリガして、人工現実コンテンツ122上に描画および重畳することができる。ここで、ジェスチャは、人工現実コンテンツ122内のUIメニュー124の位置および/または向きを定義することができる。別の例として、定義されたジェスチャのうちの1つまたは複数は、提示されたユーザインタフェースの変更、提示されたユーザインタフェースのサブメニューの提示などをトリガするための、ユーザ110の特定のユーザインタフェース要素との相互作用、たとえば、UIメニュー124のUI要素126の選択を示すことができる。
According to techniques of this disclosure, an artificial reality application determines whether an identified gesture corresponds to a gesture defined by one of multiple entries in a gesture library of
いくつかの態様では、人工現実アプリケーションは、手132および/または腕134の配置、位置、および/または向きを分析し、少なくとも閾値期間にわたって特定の配置および向きに保たれている手132を含む、メニュー起動ジェスチャを識別することができる。いくつかの態様では、メニュー起動ジェスチャは、たとえば、手の手指および親指を挟持配置にしながら、実質的に上向きの位置に保たれている手であり得る。いくつかの態様では、メニュー起動ジェスチャは、手の向きに関わらず、挟持配置に置かれた手の手指および親指を含むことができる。メニュースライドジェスチャは、メニューがスライド方向に静止状態で保持されている間に、ユーザの手に応じて動く仮想の手を、UIメニュー124の広がりに沿ってスライドさせることができる。メニュースライドジェスチャ以外の方向への動きにより、UIメニュー124が、動きに基づいて位置変更され得る。一例として、メニュースライドジェスチャは、メニュー起動ジェスチャを持続しながらの、水平方向へのユーザの手132の動きであり得る。仮想の手136は、メニューが水平方向に静止状態で保持されている間に、水平方向の広がりに沿って移動させることができる。いくつかの例では、人工現実アプリケーションは、仮想の手136に加えて、または仮想の手136の代わりに、スライド可能に係合可能なUI要素(図1には示されていない)を生成する。垂直方向に移動させることにより、UIメニュー124が位置変更され得る。
In some aspects, the artificial reality application analyzes the placement, position, and/or orientation of the
メニュー起動ジェスチャを持続しながらのメニュースライドジェスチャにより、人工現実アプリケーションは、ユーザが、仮想の手132を、たとえばUIメニュー124の別のメニューアイテムの近くの別の場所にスライドさせるための、メニュースライドジェスチャをさらに実行することなしに、選択ジェスチャを実行するつもりである場合、UIメニュー124の特定のメニューアイテムが選択されることになるという指示を描画することができる。そうした特定のメニューは、ユーザが選択できるように準備される。この指示は、メニューアイテムの近くにある仮想の手132もしくはスライド可能に係合可能なUI要素の場所、たとえば相異なる色を使ったメニューアイテムの強調表示、メニューアイテムの拡大、または他の何らかの指示であり得る。
A menu slide gesture while sustaining a menu launch gesture causes the artificial reality application to allow the user to slide the
したがって、本開示の技法は、人工現実システムによってコンテンツを描画および表示するコンピュータ関連分野への、特定の技術的改善をもたらす。たとえば、本明細書に記載の人工現実システムは、ユーザが実行する直感的でありながらも独特のジェスチャの検出に基づいて、人工現実コンテンツに重畳されたユーザインタフェース要素を生成および描画することによって、ユーザ110などのユーザに、人工現実アプリケーションの高品質の人工現実体験を提供することができる。より具体的には、この技法は、ユーザがメニューインタフェースを有効にし、その後、メニューの広がりに沿って、スライド可能に係合可能なUI要素、またはユーザが選択できるように準備されたメニューアイテムの他の指示を移動させることができるジェスチャの形の、直感的なユーザ入力をユーザに提供することができる。
Accordingly, the techniques of this disclosure provide certain technical improvements to the computer-related field of rendering and displaying content through artificial reality systems. For example, the artificial reality system described herein generates and renders user interface elements overlaid on artificial reality content based on the detection of intuitive yet unique gestures performed by the user to: A user, such as
さらに、本明細書に記載のシステムは、隠れてしまうもの(occlusion)の追跡を回避するよう定義された手および腕の動きに基づいて、所定のジェスチャを検出するよう構成され得る。隠れてしまうものの追跡は、ユーザの一方の手が他方の手と少なくとも部分的に重なっている場合に起きることがあり、それぞれの手の個々の指(手指および親指)ばかりでなく、それぞれの手の位置および向きを正確に追跡することを困難にする。したがって、本明細書で説明されているシステムは、主に片手または片腕ベースのジェスチャを検出するよう構成され得る。片手または片腕ベースのジェスチャを使用すると、大きい運動技能および細かい運動技能に制限があるユーザにとって、利用し易さがさらに向上する可能性がある。さらに、本明細書に記載のシステムは、ユーザの手が、相互作用するかまたは互いに重なることのない、両手または両腕ベースのジェスチャを検出するよう構成され得る。 Additionally, the system described herein can be configured to detect predetermined gestures based on defined hand and arm movements to avoid occlusion tracking. Tracking of obscured objects can occur when one hand of the user overlaps at least partially the other, and not only the individual fingers (fingers and thumb) of each hand, but also the individual fingers of each hand. make it difficult to accurately track the position and orientation of Accordingly, the systems described herein may be configured to detect predominantly one-handed or one-arm based gestures. The use of one-handed or one-arm based gestures may further improve accessibility for users with limited large and fine motor skills. Additionally, the systems described herein can be configured to detect two-handed or two-arm based gestures in which the user's hands do not interact or overlap each other.
加えて、本明細書に記載のシステムは、ユーザに自己触覚型フィードバックを与えるジェスチャを検出するよう構成され得る。たとえば、ユーザのそれぞれの手の親指および1本または複数本の手指は、人工現実コンテンツの特定のユーザインタフェース要素との相互作用を示す事前定義されたジェスチャの一部として、物理的世界で触れるか、またはほぼ触れることができる。ユーザの手の親指と1本または複数本の手指との間の接触は、ユーザが、物理的キーボードまたは他の物理的入力デバイス上の釦などの、物理的ユーザ入力物体と直接相互作用するときに感じる、感覚のシミュレーションをユーザに与えることができる。 Additionally, the systems described herein can be configured to detect gestures that provide self-haptic feedback to the user. For example, the user's thumb and one or more fingers on each hand may be touched or touched in the physical world as part of predefined gestures that indicate interaction with specific user interface elements of artificial reality content. , or almost touchable. Contact between the thumb of a user's hand and one or more fingers is when the user directly interacts with a physical user input object, such as a button on a physical keyboard or other physical input device. It is possible to give the user a simulation of the sense of feeling.
図1Bは、本開示の技法による別の例示的な人工現実システム20を示す図である。図1Aの人工現実システム10と同様に、いくつかの例では、図1Bの人工現実システム20は、人工現実環境内でのユーザの相互作用および操作のために特別に設計された、ユーザインタフェース要素を提示および制御することができる。人工現実システム20はまた、様々な例において、ユーザの1つまたは複数の特定のジェスチャの検出に応答して、所定のグラフィカルユーザインタフェース要素を生成し、ユーザに対して描画することができる。
FIG. 1B is a diagram illustrating another example
図1Bの例では、人工現実システム20は、外部カメラ102Aおよび102B(総称して「外部カメラ102」)、HMD112A~112C(総称して「HMD112」)、コントローラ114Aおよび114B(総称して「コントローラ114」)、コンソール106、およびセンサ90を備える。図1Bに示されているように、人工現実システム20は、コンソール106および/またはHMD112上で実行される人工現実アプリケーションが、ユーザ110A~110C(総称して「ユーザ110」)のそれぞれに、それぞれのユーザに対応する基準フレームの現在の観察視点に基づいて人工現実コンテンツを提示する、マルチユーザ環境を示している。すなわち、この例では、人工現実アプリケーションは、HMD112ごとの基準フレームのポーズ情報を追跡および計算することによって、人工コンテンツを構築する。人工現実システム20は、HMD112の対応する基準フレームの更新されたポーズ情報を計算するのに使用するために、カメラ102、HMD112、およびコントローラ114から受け取ったデータを使用して、ユーザ110の動きなど、実世界環境内の3D情報を、かつ/またはユーザ110および物体108に関する追跡情報を取り込む。一例として、人工現実アプリケーションは、HMD112Cについて判断された現在の観察視点に基づいて、実世界の物体108A~108C(総称して「実世界の物体108」)上に空間的に重畳される、仮想物体128A~128C(総称して「仮想物体128」)を有する人工現実コンテンツ122を描画することができる。さらに、人工現実システム20は、HMD112Cの視点から、ユーザ110A、110Bのそれぞれの推定位置に基づいて、アバター120A、120Bを描画する。
In the example of FIG. 1B,
HMD112のそれぞれは、人工現実システム20内で同時に動作する。図1Bの例では、ユーザ110のそれぞれは、人工現実アプリケーションの「プレーヤ」または「参加者」であってもよく、ユーザ110のいずれも、人工現実アプリケーションの「観客」または「観察者」であってもよい。HMD112Cはユーザ110Cの手132および/または腕134を追跡し、視野130内にある手132の部分を人工現実コンテンツ122内の仮想の手136として描画することによって、図1AのHMD112と実質的に同様に動作することができる。HMD112Bは、ユーザ110Bが保持しているコントローラ114Aから、ユーザ入力を受け取ることができる。HMD112Aはまた、図1AのHMD112と実質的に同様に動作し、ユーザ110Aの手132A、132Bによって、ジェスチャの形のユーザ入力を受け取ることができる。HMD112Bは、ユーザ110Bが保持しているコントローラ114から、ユーザ入力を受け取ることができる。コントローラ114は、ブルートゥースなどの短距離無線通信である近距離通信を使用して、有線通信リンクを使用して、または別の種類の通信リンクを使用して、HMD112Bと通信することができる。
Each of
図1Aに関して上記で論じられた例と同様のやり方で、人工現実システム20のコンソール106および/またはHMD112Cは、ユーザ110Cに対して表示される人工現実コンテンツ122上に重畳され得る、ユーザインタフェース要素124、126を生成および描画する。さらに、コンソール106および/またはHMD112Cは、ポーズの追跡による、ユーザ110Cが実行する直感的でありながらも独特のジェスチャの検出に基づいて、ユーザインタフェース要素124、126の生成および動的な表示をトリガすることができる。人工現実システム20は、たとえば、ユーザの手、手指、親指、または腕の特定の動き、配置、位置、および/または向きなど、ユーザ110Cによる1つまたは複数の特定のジェスチャの検出に応答して、1つまたは複数のグラフィカルユーザインタフェース要素124、126を動的に提示することができる。図1Bに示されているように、HMD112Cのカメラ138を介して取り込まれた画像データに加えてまたはあるいは、外部カメラ102からの入力データを使用して、手の個々の指(手指、親指)および/または指の組合せの動きを含む、ユーザ110Cの手132などのユーザ110の手および腕の特定の動き、配置、位置、および/または向きを追跡および検出することができる。
In a manner similar to the examples discussed above with respect to FIG. 1A,
いくつかの態様では、人工現実アプリケーションは、コンソール106上で実行することができ、画像取込みデバイス102Aおよび102Bを利用して、手132Bの配置、位置、および/または向きを分析し、HMD112Aのユーザによって実行され得るメニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、選択ジェスチャ、またはメニュー位置決めの動きなどを識別することができる。同様に、HMD112Cは、画像取込みデバイス138を利用して、手132Cの配置、位置、および/または向きを分析し、HMD112Cのユーザによって実行され得るメニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、選択ジェスチャ、またはメニュー位置決めの動きなどを識別することができる。人工現実アプリケーションは、図1Aに関して上記で説明されたのと同様のやり方で、かかるジェスチャに応答して、UIメニュー124および仮想の手136を描画することができる。
In some aspects, an artificial reality application may run on the
図2は、本開示の技法にしたがって動作するよう構成された、例示的なHMD112を示す図である。図2のHMD112は、図1Aおよび図1BのHMD112のいずれの例でもあり得る。HMD112は、図1A、図1Bの人工現実システム10、20などの人工現実システムの一部であり得るか、または本明細書に記載の技法を実施するよう構成された、独立型の携帯人工現実システムとして動作することができる。
FIG. 2 is a diagram illustrating an
この例では、HMD112は、HMD112をユーザに固定するための前部剛体およびバンドを備える。加えて、HMD112は、人工現実コンテンツをユーザに提示するよう構成された、内側に向く電子ディスプレイ203を備える。電子ディスプレイ203は、液晶ディスプレイ(LCD:liquid crystal display)、量子ドットディスプレイ、ドットマトリックスディスプレイ、発光ダイオード(LED:light emitting diode)ディスプレイ、有機発光ダイオード(OLED:organic light-emitting diode)ディスプレイ、陰極線管(CRT:cathode ray tube)ディスプレイ、電子ペーパ、または視覚出力を生成できる白黒、カラー、もしくは他の任意の種類のディスプレイなどの、任意の好適なディスプレイ技術であり得る。いくつかの例では、電子ディスプレイは、ユーザのそれぞれの目に別々の画像を提示する、立体視ディスプレイである。いくつかの例では、HMD112およびユーザの現在の観察視点にしたがって人工現実コンテンツを描画するために、HMD112の位置および向きを追跡するときに、HMD112の前部剛体に対するディスプレイ203の既知の向きおよび位置が、ローカル原点とも呼ばれる、基準フレームとして使用される。他の例では、HMD112は、眼鏡またはゴーグルなどの他の着用可能なヘッドマウントディスプレイの形式をとることができる。
In this example,
図2にさらに示されているように、この例では、HMD112は、HMD112の現在の加速度を示すデータを出力する、1つもしくは複数の加速度計(慣性測定ユニットまたは「IMU:inertial measurement unit」とも呼ばれる)などの、1つもしくは複数の動きセンサ206、HMD112の場所を示すデータを出力するGPSセンサ、様々な物体からHMD112の距離を示すデータを出力するレーダもしくはソナー、またはHMD112または物理環境内の他の物体の場所もしくは向きを示す他のセンサをさらに備える。さらに、HMD112は、ビデオカメラ、レーザスキャナ、ドップラレーダスキャナ、深度スキャナなどの、統合された画像取込みデバイス138Aおよび138B(総称して「画像取込みデバイス138」)を備えることができ、画像取込みデバイスは、物理的環境を表す画像データを出力するよう構成されている。より具体的には、画像取込みデバイス138は、通常、HMD112の観察視点に相当する、画像取込みデバイス138の視野130A、130B内にある、物理的環境内の物体を表す画像データを取り込む。HMD112は、内部電源と、1つまたは複数のプロセッサ、メモリ、およびハードウェアを備え、感知されたデータを処理し、人工現実コンテンツをディスプレイ203上に提示する、プログラム可能な動作を実行する動作環境を提供する、1つまたは複数のプリント回路基板とを備えることができる、内部制御ユニット210を備える。
As further shown in FIG. 2, in this example,
一例では、本明細書に記載の技法によれば、制御ユニット210は、感知されたデータに基づいて、ユーザが実行する特定のジェスチャまたはジェスチャの組合せを識別し、それに応答して動作を実行するよう構成される。制御ユニット210は、たとえば、識別した1つのジェスチャに応答して、電子ディスプレイ203上に表示するための、人工現実コンテンツ上に重畳される特定のユーザインタフェース要素を生成および描画することができる。本明細書で説明されているように、本開示の技法によれば、制御ユニット210は、画像取込みデバイス138によって取り込まれた画像データ内の物体認識を実行して、手132、手指、親指、腕、またはユーザの別の一部を識別し、ユーザが実行する事前定義されたジェスチャを識別するために、識別された部分の動き、位置、配置などを追跡することができる。事前定義されたジェスチャの識別に応答して、制御ユニット210は、ユーザインタフェース要素に関連づけられたオプションのセットからオプションを選択する、ジェスチャを入力(たとえば、文字)に変換する、アプリケーションを起動する、さもなければコンテンツを表示するなど、何らかの動作を行う。いくつかの例では、制御ユニット210は、ユーザインタフェースを示すための「トリガ」として指定された、事前定義されたジェスチャを検出するのに応答して、メニューなどのユーザインタフェース要素を動的に生成および提示する。他の例では、制御ユニット210は、コンソール106などの外部デバイスからの指図に応答して、物体認識、動き追跡、およびジェスチャ検出、またはそれらの任意の部分を実行することができる、かかる機能を実行する。
In one example, in accordance with the techniques described herein,
一例として、制御ユニット210は、画像取込みデバイス138Aおよび138Bを利用して、手132および/または腕134の配置、位置、動き、および/または向きを分析し、HMD112のユーザによって実行され得るメニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、選択ジェスチャ、またはメニュー位置決めの動きなどを識別することができる。制御ユニット210は、メニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、選択ジェスチャ、およびメニュー位置決めの動きの検出に基づいて、UIメニュー、スライド可能に係合可能なUI要素、および/または仮想の手を描画することができる。
As an example,
図3は、図1A、図1Bの人工現実システム10、20のコンソール106およびHMD112の例示的な実施態様を示す構成図である。図3の例では、コンソール106は、HMD112および/または外部センサから受け取った動きデータおよび画像データなどの感知されたデータに基づいて、本明細書に記載の技法による、ポーズ追跡、ジェスチャ検出、およびHMD112用ユーザインタフェースの生成および描画を実行する。
FIG. 3 is a block diagram illustrating an exemplary implementation of the
この例では、HMD112は、いくつかの例において、たとえば、組込み型のリアルタイムマルチタスクオペレーティングシステム、または他の種類のオペレーティングシステムであり得る、オペレーティングシステム305を実行するためのコンピュータプラットフォームを提供する、1つまたは複数のプロセッサ302およびメモリ304を備えている。次に、オペレーティングシステム305は、アプリケーションエンジン340を含む1つまたは複数のソフトウェア構成要素307を実行する、マルチタスク動作環境を提供する。図2の例に関して論じられたように、プロセッサ302は、電子ディスプレイ203、動きセンサ206、および画像取込みデバイス138に結合されている。いくつかの例では、プロセッサ302およびメモリ304は、別個の離散した構成要素であり得る。他の例では、メモリ304は、ただ1つの集積回路内にプロセッサ302と併置されたオンチップメモリであってもよい。
In this example,
コンソール106は、概ね、カメラ102(図1B)および/またはHMD112から受け取った画像および追跡情報を処理して、ジェスチャ検出およびHMD112用ユーザインタフェース生成を実行する、コンピュータ処理デバイスである。いくつかの例では、コンソール106は、ワークステーション、デスクトップコンピュータ、ラップトップ、またはゲームシステムなどの、ただ1つのコンピュータ処理デバイスである。いくつかの例では、プロセッサ312および/またはメモリ314などのコンソール106の少なくとも一部は、クラウドコンピュータ処理システム、データセンタにわたって、またはインターネット、別の公衆もしくは専用通信ネットワーク、たとえば、コンピュータ処理システム、サーバ、およびコンピュータ処理デバイス間でデータを伝送するための広帯域、移動体通信、Wi-Fi、および/または他の種類の通信ネットワークなどの、ネットワークにわたって分散されていてもよい。
図3の例では、コンソール106は、いくつかの例において、たとえば、組込み型のリアルタイムマルチタスクオペレーティングシステム、または他の種類のオペレーティングシステムであり得る、オペレーティングシステム316を実行するためのコンピュータプラットフォームを提供する、1つまたは複数のプロセッサ312およびメモリ314を備えている。次に、オペレーティングシステム316は、1つまたは複数のソフトウェア構成要素317を実行するための、マルチタスク動作環境を提供する。プロセッサ312は、1つまたは複数のI/Oインタフェース315に結合され、キーボード、ゲームコントローラ、ディスプレイデバイス、画像取込みデバイス、HMDなどの外部デバイスと通信するための、1つまたは複数のI/Oインタフェースを提供する。さらに、1つまたは複数のI/Oインタフェース315には、ネットワーク104などのネットワークと通信する、1つまたは複数の有線または無線ネットワークインタフェースコントローラ(NIC:network interface controller)が含まれ得る。プロセッサ302、312のそれぞれには、マルチコアプロセッサ、コントローラ、デジタル信号プロセッサ(DSP:digital signal processor)、特定用途向け集積回路(ASIC:application specific integrated circuit)、フィールドプログラマブルゲートアレイ(FPGA:field-programmable gate array)、または同等の離散した、もしくは集積論理回路のうちの任意の1つまたは複数が含まれ得る。メモリ304、314には、ランダムアクセスメモリ(RAM:random-access memory)、読取り専用メモリ(ROM:read only memory)、プログラム可能な読取り専用メモリ(PROM:programmable read only memory)、消去可能でプログラム可能な読取り専用メモリ(EPROM:erasable programmable read only memory)、電子的に消去可能でプログラム可能な読取り専用メモリ(EEPROM:electronically erasable programmable read only memory)、およびフラッシュメモリなどの、データおよび実行可能なソフトウェア命令を記憶する任意の形式のメモリが含まれ得る。
In the example of FIG. 3,
コンソール106のソフトウェアアプリケーション317は、全体的な人工現実アプリケーションを提供するよう動作する。この例では、ソフトウェアアプリケーション317は、アプリケーションエンジン320、描画エンジン322、ジェスチャ検出器324、ポーズ追跡器326、およびユーザインタフェースエンジン328を有している。
アプリケーションエンジン320は、概して、人工現実アプリケーション、たとえば、電話会議アプリケーション、ゲームアプリケーション、ナビゲーションアプリケーション、教育アプリケーション、訓練またはシミュレーションアプリケーションなどを提供し、提示する機能を有している。アプリケーションエンジン320は、たとえば、コンソール106上で人工現実アプリケーションを実施するための1つまたは複数のソフトウェアパッケージ、ソフトウェアライブラリ、ハードウェアドライバ、および/またはアプリケーションプログラムインタフェース(API:Application Program Interface)を含むことができる。アプリケーションエンジン320による制御に応答して、描画エンジン322は、HMD112のアプリケーションエンジン340によってユーザに対して表示する、3D人工現実コンテンツを生成する。
アプリケーションエンジン320および描画エンジン322は、ポーズ追跡器326によって判断される基準フレーム、典型的にはHMD112の観察視点での現在のポーズ情報にしたがって、ユーザ110に対して表示する人工コンテンツを構築する。現在の観察視点に基づいて、描画エンジン322は、場合によっては少なくとも部分的に、ユーザ110の実世界の3D環境に重畳され得る、3Dの人工現実コンテンツを構築する。この処理中に、ポーズ追跡器326は、HMD112から受け取った動き情報およびユーザコマンドなどの感知されたデータ、ならびにいくつかの例では、外部カメラなどの任意の外部センサ90(図1A、図1B)からのデータに基づいて動作し、実世界の環境内での、ユーザ110の動きおよび/またはユーザ110に関する特徴追跡情報などの3D情報を取り込む。ポーズ追跡器326は、感知されたデータに基づいて、HMD112の基準フレームでの現在のポーズを判断し、現在のポーズにしたがって人工現実コンテンツを構築し、ユーザ110に対して表示するために、1つまたは複数のI/Oインタフェース315を介してHMD112と通信する。
さらに、ジェスチャ検出器324は、感知されたデータに基づいて、ユーザの物体(たとえば、手、腕、手首、手指、手のひら、親指)の追跡された動き、配置、位置、および/または向きを分析し、ユーザ110が実行する1つまたは複数のジェスチャを識別する。より具体的には、ジェスチャ検出器324は、HMD112の画像取込みデバイス138ならびに/またはセンサ90および外部カメラ102によって取り込まれた、画像データ内で認識された物体を分析し、ユーザ110の手および/または腕を識別し、HMD112に対する手および/または腕の動きを追跡して、ユーザ110が実行するジェスチャを識別する。ジェスチャ検出器324は、取り込まれた画像データに基づいて、手、指、および/または腕の位置および向きの変化を含む動きを追跡し、物体の動きベクトルをジェスチャライブラリ330内の1つまたは複数のエントリと比較して、ユーザ110が実行するジェスチャまたはジェスチャの組合せを検出することができる。ジェスチャライブラリ330内の一部のエントリはそれぞれ、ジェスチャを、ユーザの手、特定の手指、親指、手首、および/または腕の相対的経路または空間的平行移動および回転などの、一連の動きまたは動きのパターンとして定義することができる。ジェスチャライブラリ330内の一部のエントリはそれぞれ、ジェスチャを、特定の時間の、または一定期間にわたる、ユーザの手および/もしくは腕(またはその一部)の配置、位置、および/または向きとして定義することができる。ジェスチャの種類の他の例もあり得る。加えて、ジェスチャライブラリ330内のエントリのそれぞれは、定義されたジェスチャまたは一連のジェスチャについての、HMD112の現在の視野との空間的関係、ユーザが現在観察している特定の領域との空間的関係など、個人のリアルタイムでの凝視追跡、表示されている人工コンテンツの種類、実行されているアプリケーションの種類などによって判断され得る、ジェスチャまたは一連のジェスチャが動作をトリガするのに必要な条件を指定することができる。
Additionally, the
ジェスチャライブラリ330内のエントリのそれぞれはさらに、定義されたジェスチャのそれぞれまたはジェスチャの組合せ/一連のジェスチャについて、ソフトウェアアプリケーション317によって実行されるべき所望の応答または動作を指定することができる。たとえば、この開示の技法によれば、所定の特殊なジェスチャは、ユーザインタフェースエンジン328が、事前定義されたジェスチャの1つを検出することに応答して、ユーザに対して表示されている人工現実コンテンツに重畳するユーザインタフェースを動的に生成するように、事前定義することができ、それによりユーザ110は、人工現実コンテンツと相互作用している間でさえ、HMD112および/またはコンソール106を設定するために、ユーザインタフェースを容易に呼び出すことができる。他の例では、所定のジェスチャは、入力の提供、物体の選択、アプリケーションの起動などの、他の動作に関連づけられていてもよい。
Each of the entries in
一例として、ジェスチャライブラリ330は、メニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、選択ジェスチャ、およびメニュー位置決めの動きについて記載するエントリを含むことができる。ジェスチャ検出器324は、画像取込みデバイス138からの画像データを処理して、ユーザの手の配置、位置、動き、および/または向きを分析し、ユーザによって実行され得るメニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、選択ジェスチャ、およびメニュー位置決めの動きなどを識別することができる。描画エンジン322は、メニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、およびメニュー位置決めの動きの検出に基づいて、メニューおよび仮想の手を描画することができる。ユーザインタフェースエンジン328は、表示されるメニューを定義することができ、選択ジェスチャによってもたらされた選択結果に応答して実行される動作を制御することができる。
As an example, the
図4は、本開示の技法による、図1A、図1Bの人工現実システムのHMD112によって、ジェスチャ検出およびユーザインタフェース生成が実行される例を示す構成図である。
FIG. 4 is a block diagram illustrating an example of gesture detection and user interface generation performed by the
この例では、HMD112は、図3と同様に、いくつかの例において、たとえば、組込み型のリアルタイムマルチタスクオペレーティングシステム、または他の種類のオペレーティングシステムであり得る、オペレーティングシステム305を実行するためのコンピュータプラットフォームを提供する、1つまたは複数のプロセッサ302およびメモリ304を備えている。次に、オペレーティングシステム305は、1つまたは複数のソフトウェア構成要素417を実行する、マルチタスク動作環境を提供する。さらに、プロセッサ302は、電子ディスプレイ203、動きセンサ206、および画像取込みデバイス138に結合されている。
In this example,
図4の例において、ソフトウェア構成要素417は、全体的な人工現実アプリケーションを提供するよう動作する。この例では、ソフトウェアアプリケーション417は、アプリケーションエンジン440、描画エンジン422、ジェスチャ検出器424、ポーズ追跡器426、およびユーザインタフェースエンジン428を有している。様々な例において、ソフトウェア構成要素417は、図3のコンソール106の相当する構成要素(たとえば、アプリケーションエンジン320、描画エンジン322、ジェスチャ検出器324、ポーズ追跡器326、およびユーザインタフェースエンジン328)と同様に動作し、検出されたユーザ110のジェスチャにしたがって、ユーザ110に対して表示する人工コンテンツに重畳されるかまたは人工コンテンツの一部である、ユーザインタフェース要素を構築する。いくつかの例では、描画エンジン422は、少なくとも部分的に、ユーザ110の実世界の物理的環境に重畳され得る、3Dの人工現実コンテンツを構築する。
In the example of FIG. 4,
図3に関して説明された例と同様に、ジェスチャ検出器424は、感知されたデータに基づいて、ユーザの物体(たとえば、手、腕、手首、手指、手のひら、親指)の追跡された動き、配置、位置、および/または向きを分析し、ユーザ110が実行する1つまたは複数のジェスチャを識別する。本開示の技法にしたがって、ユーザインタフェースエンジン428は、ユーザ110に対して表示されるべき人工現実コンテンツの一部である、たとえば人工現実コンテンツに重畳される、ユーザインタフェース要素を生成し、かつ/あるいはジェスチャ検出器424によって検出された、ユーザ110の1つもしくは複数のジェスチャまたはジェスチャの組合せに基づいて、動作を実行する。より具体的には、ジェスチャ検出器424は、HMD112の画像取込みデバイス138および/またはセンサ90もしくは外部カメラ102によって取り込まれた画像データ内で認識された物体を分析し、ユーザ110の手および/または腕を識別し、HMD112に対する手および/または腕の動きを追跡して、ユーザ110が実行するジェスチャを識別する。ジェスチャ検出器424は、取り込まれた画像データに基づいて、手、指、および/または腕の位置および向きの変化を含む動きを追跡し、物体の動きベクトルをジェスチャライブラリ430内の1つまたは複数のエントリと比較して、ユーザ110が実行するジェスチャまたはジェスチャの組合せを検出することができる。
Similar to the example described with respect to FIG. 3, the
ジェスチャライブラリ430は、図3のジェスチャライブラリ330と同様である。ジェスチャライブラリ430内のエントリのそれぞれは、定義されたジェスチャまたは一連のジェスチャについて、HMD112の現在の視野との空間的関係、ユーザが現在観察している特定の領域との空間的関係など、個人のリアルタイムでの凝視追跡、表示されている人工コンテンツの種類、実行されているアプリケーションの種類などによって判断され得る、ジェスチャが動作をトリガするのに必要な条件を指定することができる。
一致するジェスチャまたはジェスチャの組合せを検出することに応答して、HMD112は、ジェスチャライブラリ430内の一致するエントリに割り当てられた応答または動作を実行する。たとえば、この開示の技法によれば、所定の特殊なジェスチャは、ジェスチャ検出器424が、事前定義されたジェスチャの1つを検出することに応答して、ユーザインタフェースエンジン428が、ユーザに対して表示されている人工現実コンテンツに重畳するユーザインタフェースを動的に生成するように、事前定義することができ、それによりユーザ110は、人工現実コンテンツを観察している間に、HMD112を設定するため、ユーザインタフェースを容易に呼び出すことができる。他の例では、ジェスチャ検出器424が事前定義されたジェスチャの1つを検出するのに応答して、ユーザインタフェースエンジン428および/またはアプリケーションエンジン440は、入力を受け取り、ユーザインタフェース要素に関連する値もしくはパラメータを選択し、アプリケーションを起動し、設定変更可能な設定を修正し、メッセージを送り、処理を開始もしくは停止するか、または他の動作を実行することができる。
In response to detecting a matching gesture or combination of gestures,
ジェスチャライブラリ430は、一例として、メニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、メニュー位置決めの動き、および選択ジェスチャについて記載したエントリを含むことができる。ジェスチャ検出器424は、画像取込みデバイス138からの画像データを利用して、ユーザの手の配置、位置、および/または向きを分析し、ユーザによって実行され得るメニュープロンプトジェスチャ、メニュー起動ジェスチャ、メニュースライドジェスチャ、選択ジェスチャ、またはメニュー位置決めの動きなどを識別することができる。描画エンジン422は、メニュー起動ジェスチャ、メニュースライドジェスチャ、選択ジェスチャ、およびメニュー位置決めの動きの検出に基づいて、UIメニュー、スライド可能に係合可能な要素、および/または仮想の手を描画することができる。ユーザインタフェースエンジン328は、表示されるメニューを定義することができ、選択ジェスチャによってもたらされた選択結果に応答して、アプリケーションエンジン440によって実行される動作を制御することができる。
図5および図6は、メニュープロンプトおよびメニューを起動するための、またメニューの位置を決めて、ユーザがメニューと相互作用するための、例示的な方法を示す流れ図である。図5および図6で示されている動作は、図1A、図1Bの人工現実システム10、20などの、人工現実システムの1つまたは複数の構成要素によって実行され得る。たとえば、動作の一部またはすべては、ジェスチャ検出器(図3および図4の324、424)、ユーザインタフェースエンジン(図3および図4の328、428)、ならびに描画エンジン(図3および図4の322、422)のうちの1つまたは複数によって実行され得る。
5 and 6 are flow diagrams illustrating exemplary methods for activating menu prompts and menus, and for locating menus and for user interaction with menus. The operations illustrated in FIGS. 5 and 6 may be performed by one or more components of an artificial reality system, such as the
図5は、本開示の態様による、メニュープロンプトまたはメニューインタフェースを起動する、例示的な方法の動作を示す流れ図である。上記のように、手の所定の配置が検出され、メニューインタフェースまたはメニュープロンプトの起動をトリガするために使用され得る。人工現実システムは、手の現在の配置を判断することができる(502)。配置には、手の向き、および手の指の互いに対する位置が含まれ得る。1つまたは複数の態様では、画像データを取り込んで分析し、手の配置を判断することができる。手の配置を判断するために、画像データに加えて、または画像データの代わりに、他のセンサデータを使用することができる。 FIG. 5 is a flow diagram illustrating operations of an exemplary method of activating a menu prompt or menu interface, according to aspects of this disclosure. As described above, predetermined hand placements can be detected and used to trigger activation of a menu interface or menu prompt. An artificial reality system can determine the current placement of the hand (502). Placement can include the orientation of the hand and the position of the fingers of the hand relative to each other. In one or more aspects, image data can be captured and analyzed to determine hand placement. Other sensor data can be used in addition to or instead of image data to determine hand placement.
人工現実システムは、手の現在の配置が、ユーザがメニュープロンプトジェスチャを実行していることを示しているかどうかを判断することができる(504)。1つまたは複数の態様では、人工現実システムは、左手または右手の配置を判断するよう(たとえば、ユーザによって)設定可能であり得る。1つまたは複数の態様では、人工現実システムは、手の現在の配置について記載したデータ、および特定のジェスチャを指定する、ジェスチャライブラリの1つまたは複数のエントリのデータを利用して、手の現在の配置がメニュープロンプトジェスチャであるかどうかを判断することができる。1つまたは複数の態様では、メニュープロンプトジェスチャは、手が実質的に上向きであり、ユーザの手の手指および親指が手指および親指の間に間隔をあけるように置かれている手の配置であり得る。メニュープロンプトジェスチャでは、ユーザの手の手指および親指が、「C」字型または鋏形を形成することができ、手指と親指とは指先が接触しない。本開示の恩恵を受ける当業者は、手の他の配置がメニュープロンプトジェスチャとして使用され得ることを理解されよう。 The artificial reality system can determine if the current hand placement indicates that the user is performing a menu prompt gesture (504). In one or more aspects, an artificial reality system may be configurable (eg, by a user) to determine left or right hand placement. In one or more aspects, an artificial reality system utilizes data describing the current placement of a hand and data in one or more entries in a gesture library that specify a particular gesture to determine the current position of the hand. is a menu prompt gesture. In one or more aspects, the menu prompt gesture is a hand placement in which the hand is facing substantially upward and the fingers and thumb of the user's hand are placed with spacing between the fingers and thumb. obtain. In a menu prompt gesture, the fingers and thumb of the user's hand may form a "C" or scissors shape, with no fingertip contact between the fingers and thumb. Those of ordinary skill in the art having the benefit of this disclosure will appreciate that other placements of the hand may be used as menu prompt gestures.
ユーザがメニュープロンプトジェスチャを実行したとの判断に応答して、人工現実システムは、メニュープロンプトを描画することができる(506)。1つまたは複数の態様では、メニュープロンプトは、ユーザの手の向きを表す仮想の手の近くに描画される。メニュープロンプトは、メニュープロンプトジェスチャを実行するユーザの手指および親指に対応する、仮想の手の仮想の手指と仮想の親指との間に位置するUI要素であり得る。 In response to determining that the user has performed the menu prompt gesture, the artificial reality system can render the menu prompt (506). In one or more aspects, the menu prompt is drawn near a virtual hand that represents the orientation of the user's hand. A menu prompt may be a UI element located between the virtual finger and virtual thumb of a virtual hand that corresponds to the user's finger and thumb performing the menu prompt gesture.
図8は、本開示の態様によるメニュープロンプト810を示す、例示的なHMDディスプレイ800である。図8に示されている例では、人工現実システムのユーザは、実質的に上向きのユーザの手を、人差し指と親指との間に間隔をあけて置いている。(人差し指以外の他の手指は、メニュープロンプトおよびメニュー起動ジェスチャに使用され得る。)人工現実システムは、手の位置および向きを判断することができ、また仮想の手136を、ユーザの手の向きおよび指の位置に一致するように、描画することができる。加えて、人工現実システムは、ユーザがユーザの手を使ってメニュープロンプトジェスチャを実行したことを、手の配置に基づいて検出することができる。メニュープロンプトジェスチャの検出に応答して、人工現実システムは、仮想の手の人差し指と親指との間に、メニュープロンプト810を描画することができる。メニュープロンプト810は、ユーザが、親指および人差し指を使って動作(たとえば、挟持動作)を実行し、ユーザの手をメニュー起動ジェスチャにすることにより、人工現実システムがユーザへメニューを提示できることを、ユーザに示すかまたは思い出させるもの(すなわち、プロンプト)として機能するユーザインタフェース要素であり得る。いくつかの態様では、メニュープロンプト810は、人差し指と親指との間に延在する線を含むことができる。いくつかの態様では、メニュープロンプト810は、親指と人差し指との間に置かれた仮想物体を含むことができる。いくつかの態様では、メニュープロンプト810は、人差し指および/または親指の強調表示を含むことができる。他の種類のユーザインタフェース要素が、メニュープロンプト810として描画されてもよい。たとえば、矢印を使用して、メニューを起動するためにユーザの人差し指および親指を動かすべき方向を示すことができる。
FIG. 8 is an exemplary HMD display 800 showing a menu prompt 810 according to aspects of this disclosure. In the example shown in FIG. 8, the user of the artificial reality system places the user's hand, pointing substantially upwards, spaced between the index finger and thumb. (Fingers other than the index finger may be used for menu prompts and menu activation gestures.) The artificial reality system can determine the position and orientation of the hand, and also map the
図5に戻ると、人工現実システムは、メニュープロンプトを描画した後、手の新しい現在の配置を判断することができる(502)。メニュープロンプトを描画してから手の新しい配置を判断するまでの間に、他の多くの動作が、人工現実システムによって実行され得る。 Returning to FIG. 5, after rendering the menu prompt, the artificial reality system can determine the new current placement of the hand (502). Many other actions may be performed by the artificial reality system between drawing the menu prompt and determining the new placement of the hand.
手の現在の配置がメニュープロンプトジェスチャと一致しない場合、人工現実システムは、手の現在の配置が、ユーザがメニュー起動ジェスチャを実行していることを示しているかどうかを判断することができる。1つまたは複数の態様では、人工現実システムは、手の現在の配置について記載したデータ、およびジェスチャライブラリの1つまたは複数のエントリのデータを利用して、手の現在の配置がメニュー起動ジェスチャであるかどうかを判断することができる。1つまたは複数の態様では、メニュー起動ジェスチャは、手が実質的に上向きである手の配置であり得、ユーザの手の手指および親指は、挟持配置に置かれている。本開示の恩恵を受ける当業者は、手の他の配置がメニュー起動ジェスチャとして使用され得ることを理解されよう。たとえば、メニュー起動ジェスチャは、手の向きに関わらず、挟持配置に置かれた手指および親指を含むことができる。 If the current hand placement does not match the menu prompt gesture, the artificial reality system can determine whether the current hand placement indicates that the user is performing a menu activation gesture. In one or more aspects, the artificial reality system utilizes data describing the current placement of the hands and data from one or more entries in the gesture library to determine the current placement of the hands in the menu-activated gesture. can determine whether there is In one or more aspects, the menu activation gesture may be a hand placement in which the hand is facing substantially upward, and the fingers and thumb of the user's hand are placed in a pinching position. Those skilled in the art having the benefit of this disclosure will appreciate that other hand placements may be used as menu activation gestures. For example, a menu activation gesture may include fingers and thumbs placed in a pinching position regardless of hand orientation.
ユーザがメニュー起動ジェスチャを実行したとの判断に応答して、人工現実システムは、UIメニューを描画することができる(510)。1つまたは複数の態様では、メニューは、ユーザの手の向きを表す仮想の手の近くに描画される。いくつかの態様では、人工現実システムは、人工現実システムが最初にメニュープロンプトジェスチャを検出した場合にだけ、メニュー起動ジェスチャの検出に応答してUIメニューを描画することができる。いくつかの態様では、メニュープロンプトジェスチャは必要条件ではない。 In response to determining that the user has performed a menu activation gesture, the artificial reality system can render a UI menu (510). In one or more aspects, the menu is drawn near a virtual hand representing the orientation of the user's hand. In some aspects, the artificial reality system may render the UI menu in response to detecting the menu launch gesture only if the artificial reality system first detects the menu prompt gesture. In some aspects, a menu prompt gesture is not a requirement.
図7Aは、本開示の態様によるUIメニュー124を示す、例示的なHMDディスプレイ700である。図7Aに示されている例では、人工現実システムのユーザは、実質的に上向きのユーザの手を、手の人差し指と親指とが挟持配置にある状態で置いている。(この場合も、人差し指は、手の手指の一例として使用されている。)人工現実システムは、手の位置および向きを判断することができ、仮想の手136を、ユーザの手の向きおよび手指の位置を表すように、描画することができる。加えて、人工現実システムは、ユーザがユーザの手を使ってメニュー起動ジェスチャを実行したことを、手の配置に基づいて検出することができる。メニュー起動ジェスチャの検出に応答して、人工現実システムは、仮想の手の近くにUIメニュー124を描画することができる。UIメニュー124は、UIメニュー124の広がりに沿って配列される1つまたは複数のUI要素126を含むことができる。1つまたは複数の態様では、1つまたは複数のUI要素126は、観察空間または表示空間などの座標空間の水平方向の広がりに沿って配列されたメニューアイテムであり得る。図7Aに示されている例では、座標軸704は、座標空間を説明するためだけに示されている。座標軸704は、実際のディスプレイ上に提示される必要はない。図7A~図7Gに示されている例では、水平方向の広がりはX軸に沿っており、垂直方向の広がりはY軸に沿っており、深さはZ軸に沿っている。
FIG. 7A is an
上記のように、メニュー起動ジェスチャは、ユーザがユーザの手を実質的に上向きに置くことを含むことができる。たとえば、人工現実システムは、手の他の面の手のひらに垂直なベクトル702もまた、X軸およびZ軸で形成される平面に実質的に垂直であることを検出することができる。1つまたは複数の態様では、ベクトル702が、X軸およびZ軸で形成される平面に対する垂直線の30度以内にある場合(破線で示されている)、ベクトル702は実質的に垂直線であると見なされ得る。1つまたは複数の態様では、30度以外の他の閾値が使用され得る。
As noted above, the menu activation gesture may involve the user placing the user's hand substantially upwards. For example, the artificial reality system can detect that the
1つまたは複数の態様では、スライド可能に係合可能なUI要素706が、仮想の手136の近くに描画され得る。図7Aに示されている例では、スライド可能に係合可能なUI要素706は円である。球、三角形、正方形などの他のグラフィカル要素、または仮想の手136のみが、スライド可能に係合可能なUI要素706として機能してもよい。さらに、仮想の手136の1本または複数本の手指を強調表示して、1本または複数本の手指の強調表示された部分が、スライド可能に係合可能なUI要素であることを示してもよい。
In one or more aspects, a slidably
図7Bは、本開示の態様による、UIメニューおよびスライド可能に係合可能なUI要素を示す、例示的なHMDディスプレイ740である。図7Bに示されている例では、ユーザは、人工現実システムに、メニューアイテム708に近い位置でスライド可能に係合可能なUI要素706を描画させるように、メニュースライドジェスチャを実行している。1つまたは複数の態様では、スライド可能に係合可能なUI要素706の近くにあるメニューアイテム708が強調表示されるか、さもなければ、ユーザが選択ジェスチャ708を実行すると、メニューアイテム708が、選択されることを示すために増大または修正され得る。ラベル710は、メニューアイテム708の強調表示に加えて、または強調表示の代わりに、メニューアイテム708の近くに提示され得る。境界線の強調表示、背景の強調表示、点滅、拡大などを含む、様々な強調表示の仕組みが使用され得、メニューアイテム708を強調表示するために使用され得る。メニュー要素708の強調表示は、ユーザが選択ジェスチャを実行した場合にメニュー要素708が選択されることを、示すことができる。1つまたは複数の態様では、選択ジェスチャは、挟持配置の手指とは相異なる、たとえば挟持配置を解除する、手の手指の動きであり得る。1つまたは複数の態様では、選択ジェスチャは、UIメニューの平面に実質的に垂直な方向への手の動きであり得る。本明細書で使用される場合、平面に対する「実質的に垂直な」は、平面に対する垂直線の0~2度以内、平面に対する垂直線の0~5度以内、平面に対する垂直線の0~10度以内、平面に対する垂直線の0~20度以内、または平面に対する垂直線の0~30度以内を示すことができる。1つまたは複数の態様では、選択ジェスチャは、手の親指および手指が、もはや挟持配置でなくなるよう再配置され得る。1つまたは複数の態様では、選択ジェスチャは、別の手指(たとえば、小指)を丸めるかまたは伸ばすなどの動きまたは再配置であり得る。選択ジェスチャを検出することにより、人工現実システムは、何らかの動作を実行することができる。たとえば、選択ジェスチャにより、アプリケーションが、インスタンスを生成することができるか、現在実行中のアプリケーションが、HMDのディスプレイの前面に表示され得るか、または場合によっては、人工現実システムが、特定の実行している人工現実アプリケーション内で、何らかの動作を実行することができる。
FIG. 7B is an
したがって、一連のジェスチャを使用して、メニュー124の表示をトリガし、スライド可能に係合可能なUI要素706を、メニュー124のメニュー要素708の上または近くに置き、メニュー要素708を選択することができる。例示的な実施態様では、ユーザは、メニュー起動ジェスチャを実行し(たとえば、手の手指を挟持配置に置く)、これによりメニュー124が、HMDによって表示され得る。ユーザは、メニュースライドジェスチャ(たとえば、挟持配置を持続しながら手を動かす)を実行し、これによりスライド可能に係合可能なUI要素706を、手の動きに応じてメニュー124に沿ってスライドさせることができる。次いで、ユーザは、選択ジェスチャを実行して(たとえば、手指および親指を挟持配置から解除する)、スライド可能に係合可能なUI要素706によって指示されるメニュー要素708を選択することができる。
Thus, using a series of gestures to trigger the display of
図5に戻ると、人工現実システムは、UIメニュー124を描画した後、手の新しい現在の配置を判断することができる(502)。UIメニュー124を描画してから手の新しい配置を判断するまでの間に、他の多くの動作が、人工現実システムによって実行され得る。
Returning to FIG. 5, after rendering the
人工現実システムが、ユーザの手がもはやメニュープロンプトジェスチャまたはメニュー起動ジェスチャを実行していないことを検出した場合、人工現実システムは、UIメニュー124またはメニュープロンプト810が表示されているかどうかを判断することができる。表示されている場合、人工現実システムは、ユーザの手がもはやUIメニュー124またはメニュープロンプト810を表示するための適切な配置にないので、UIメニュー124またはメニュープロンプト810をディスプレイから削除することができる(514)。
If the artificial reality system detects that the user's hand is no longer performing the menu prompt gesture or menu activation gesture, the artificial reality system determines whether the
UIメニュー124またはメニュープロンプト810を削除した後、フローは、手の新しい現在の配置を判断するために戻る(502)。UIメニュー124またはメニュープロンプト810を削除してから手の新しい配置を判断するまでの間に、他の多くの動作が、人工現実システムによって実行され得る。
After deleting
図6は、本開示の態様による、UIメニューを位置決めし、UIメニューと相互作用する、例示的な方法の動作を示す流れ図である。人工現実システムは、手の位置を判断することができる(602)。たとえば、位置は、画像センサから、または人工現実システムと結合された他の種類のセンサから取り込まれた画像データから、判断され得る。 FIG. 6 is a flow diagram illustrating the operations of an exemplary method for locating and interacting with UI menus, according to aspects of this disclosure. The artificial reality system can determine the position of the hand (602). For example, position may be determined from image data captured from an image sensor or from other types of sensors coupled with an artificial reality system.
人工現実システムは、UIメニューが現在有効であるかどうか(すなわち、HMDによって描画および表示されているかどうか)を判断することができる(604)。UIメニューが現在有効でない場合、フローは、手の更新された位置の判断に戻ることができる(602)。UIメニューが有効であるかどうかを判断してから手の更新された位置を判断するまでの間に、他の多くの動作が、人工現実システムによって実行され得る。 The artificial reality system can determine 604 whether the UI menu is currently active (ie, whether it is drawn and displayed by the HMD). If the UI menu is not currently active, flow may return to determining the updated position of the hand (602). Many other actions may be performed by the artificial reality system between determining whether the UI menu is valid and determining the updated position of the hand.
UIメニューが有効である場合、人工現実システムは、ユーザがメニュースライドジェスチャを実行しているかどうかを判断することができる(606)。いくつかの態様では、メニュースライドジェスチャは、メニューが有効である間(たとえば、ユーザの手がメニュー起動ジェスチャを実行している間)の、手の実質的に水平方向の動きであり得る。たとえば、人工現実システムは、手の以前の位置を手の現在の位置と比較して、メニュースライドジェスチャが行われているかどうかを判断することができる。メニュースライドジェスチャが検出された場合、人工現実システムは、メニュースライドジェスチャに応じて、仮想の手および/またはスライド可能に係合可能なインタフェース要素を、UIメニュー124に沿って移動させることができる(608)。メニューアイテムが垂直方向に向けられている場合、メニュースライドジェスチャは、手の実質的に垂直方向の動きであり得る。メニュースライドジェスチャが検出されない場合、人工現実システムは、メニュースライドジェスチャではない他の手の動きが検出されるかどうかを判断することができる(610)。「実質的に」垂直方向および水平方向とは、垂直方向または水平方向の5度、10度、20度、または30度以内であり得る。
If the UI menu is enabled, the artificial reality system can determine if the user is performing a menu slide gesture (606). In some aspects, the menu slide gesture may be a substantially horizontal movement of the hand while the menu is active (eg, while the user's hand is performing a menu activation gesture). For example, the artificial reality system can compare the previous position of the hand to the current position of the hand to determine if a menu slide gesture is being performed. If a menu slide gesture is detected, the artificial reality system can move the virtual hand and/or the slidably engageable interface element along the
図7Cは、本開示の態様による、UIメニューおよびメニュースライドジェスチャを示す、例示的なHMDディスプレイ750である。1つまたは複数の態様では、メニュースライドジェスチャは、UIメニュー124の水平方向の広がりに沿ったユーザの手の動き(たとえば、X軸に平行な動き)であり得る。図7Cに示されている例では、ユーザは、UIメニュー124の水平方向の広がりに沿って(メニュー起動ジェスチャを持続しながら)ユーザの手を動かしている。人工現実システムは、ユーザの手の動きに応じて、仮想の手136およびスライド可能に係合可能なUI要素706が、メニューアイテム712の近くにくるように、仮想の手136およびスライド可能に係合可能なUI要素706の位置を変更することができる。人工現実システムは、メニュー要素708から強調表示を削除することができ、またメニュー要素712を強調表示して、ユーザが選択ジェスチャを実行する場合には、メニュー要素712が選択されることを示すことができる。メニューアイテム712の強調表示に加えて、またはメニューアイテム712の強調表示の代わりに、ラベル714が表示され得る。いくつかの例では、人工現実システムは、メニューアイテムを強調表示しない。いくつかの例では、人工現実システムは、UI要素706を描画しない。1つまたは複数の態様では、UIメニュー124は、メニュースライドジェスチャより前にUIメニューがあったのと同じ水平方向の位置に保持される。言い換えれば、UIメニュー124は水平方向に静止しており、一方仮想の手136およびスライド可能に係合可能なUI要素706は、ユーザがメニュースライドジェスチャを実行するのに応答して、UIメニュー124の水平方向の広がりに沿って動く。
FIG. 7C is an exemplary HMD display 750 showing a UI menu and menu slide gestures, according to aspects of this disclosure. In one or more aspects, the menu slide gesture may be a movement of the user's hand along the horizontal extent of the UI menu 124 (eg, movement parallel to the X-axis). In the example shown in FIG. 7C, the user is moving his hand (while maintaining the menu activation gesture) along the horizontal extent of the
図6に戻ると、水平方向の動きが検出されたかどうかを判断した後、人工現実システムは、ユーザの手による水平方向ではない動きが行われているかどうかを判断することができる(610)。たとえば、人工現実システムは、垂直方向の動き(すなわち、Y軸に平行な動き)および/または前から後ろもしくは後ろから前への動き(すなわち、Z軸に平行な動き)があったかどうかを判断することができる。ユーザの手の水平方向ではない動きが検出された場合、人工現実システムは、水平方向ではない動きに基づいて、仮想の手、スライド可能に係合可能なUI要素、およびUIメニューの位置を移動させることができる。UIメニューアイテムが垂直方向に配列されている例では、ユーザの手の垂直方向でない動きが、手の「他の動き」を構成する。 Returning to FIG. 6, after determining whether horizontal motion has been detected, the artificial reality system can determine whether non-horizontal motion is being performed by the user's hand (610). For example, the artificial reality system determines whether there was vertical motion (i.e., motion parallel to the Y-axis) and/or front-to-back or back-to-front motion (i.e., motion parallel to the Z-axis). be able to. If non-horizontal movement of the user's hand is detected, the artificial reality system moves the positions of the virtual hand, slidably engageable UI elements, and UI menus based on the non-horizontal movement. can be made In examples where the UI menu items are arranged vertically, non-vertical movements of the user's hand constitute "other movements" of the hand.
図7Dは、垂直方向の動きが検出された後のUIメニューを示す、例示的なHMDディスプレイ760である。図7Dに示されている例では、ユーザは、ユーザの手を下向きに動かしている。人工現実システムは、垂直方向の動きを検出することができ、検出された垂直方向の動きに基づいて、UIメニュー124、仮想の手136、およびスライド可能に係合可能なUI要素706の位置を移動させることができる。いくつかの態様では、垂直方向の動きに加えて水平方向の動きが検出されない場合、仮想の手136およびスライド可能に係合可能なUI要素706は、UIメニュー124に対する仮想の手およびスライド可能に係合可能なUI要素の以前の位置で保持される。したがって、同じメニュー要素712が、垂直方向の動きが行われるときに強調表示されていた状態で保持される。
FIG. 7D is an
図7Eは、後から前への動きが検出された(すなわち、ユーザがZ軸に沿ってユーザの手をユーザ自身により近づけた)後のUIメニューを示す、例示的なHMDディスプレイ770である。人工現実システムは、後から前への動きを検出することができ、検出された後から前への動きに基づいて、UIメニュー124、仮想の手136、およびスライド可能に係合可能なUI要素706の位置を移動させることができる。したがって、仮想の手、UIメニュー124、およびスライド可能に係合可能なUI要素706の位置は、より大きく、したがってユーザに対してより近くに表示される。いくつかの態様では、Z軸に沿った動きに加えて、水平方向の動きが検出されない場合、仮想の手136およびスライド可能に係合可能なUI要素706は、UIメニュー124に対する仮想の手およびスライド可能に係合可能なUI要素の以前の位置で保持される。したがって、同じメニュー要素712が、Z軸に沿った動きが行われるときに強調表示されていた状態で保持される。
FIG. 7E is an
図6に戻ると、UIメニュー、仮想の手、およびスライド可能に係合可能なUI要素が、ユーザの手の動き(もしあれば)に応じて移動された後に、人工現実システムは、仮想の手およびスライド可能に係合可能なUI要素を、ユーザの手の現在の位置に基づいて、UIメニュー124の近くにくるように描画することができる。次いで、フローは、手の更新された位置を判断するために戻ることができる(602)。UIメニューを描画してから手の更新された位置を判断するまでの間に、他の多くの動作が、人工現実システムによって実行され得る。
Returning to FIG. 6, after the UI menu, the virtual hand, and the slidably engageable UI elements have been moved in response to the user's hand movements (if any), the artificial reality system Hands and slidably engageable UI elements can be drawn to be
図7Fは、本開示の態様による、UIメニュー124およびUIアイコン配列720を示す、例示的なHMDディスプレイ780である。いくつかの態様では、UIメニュー124のメニューアイテムは、アプリケーションに対応することができる。1つまたは複数の態様では、UIメニュー124は、2つの部分716および718に分割され得る。部分716のメニュー要素は、お気に入りのアプリケーションを表すことができ、部分718のメニュー要素は、人工現実システム内で現在実行されているアプリケーションを表すことができる。さらに、いくつかの態様では、人工現実システムは、人工現実システムで利用可能であるかまたは実行されているアプリケーションを表すアイコンの、アイコン配列710を提示することができる。アイコン配列720内の個々のアイコン上の画像は、対応するアプリケーションの現在の表示、またはアプリケーションに関連づけられた画像を表すことができる。
FIG. 7F is an
図7Gは、本開示の態様による、UIメニュー124およびUIアイコン配列720を示す、例示的なHMDディスプレイ790である。図7Gに示されている例では、仮想の手136およびスライド可能に係合可能なUI要素706は、メニューアイテム724の近くにある。この例では、3次元強調表示が使用され、スライド可能に係合可能なUI要素706の近くにあるメニューアイテムを、前方にもってきて、それにより画像を、ユーザに、より大きく見せることができる。加えて、メニューアイテム724に対応するアイコン722も強調表示され得る。この例では、アイコン722の境界線が強調表示されている。
FIG. 7G is an
上記の考察では、UIメニューが水平方向に配置される人工現実システムの態様を提示してきた。他の態様では、UIメニューは、垂直方向に配置され得る。かかる態様では、UIメニューが垂直方向に静止状態で保持されている間に、手の垂直方向の動きによって、スライド可能に係合可能なUI要素および仮想の手を、UIメニューの垂直方向の広がりに沿って移動させることができる。垂直方向でない動き(すなわち、水平方向の動きまたは前から後ろへの動き)によって、垂直方向でない動きに応じて、UIメニューの位置を移動させることができる。 The discussion above has presented aspects of an artificial reality system in which the UI menus are arranged horizontally. In other aspects, the UI menus may be arranged vertically. In such an aspect, while the UI menu is held vertically stationary, vertical movement of the hand causes the slidably engagable UI elements and the virtual hand to expand the vertical extent of the UI menu. can be moved along Non-vertical movement (ie, horizontal movement or front-to-back movement) can cause the position of the UI menu to move in response to the non-vertical movement.
この開示で説明される技法は、少なくとも部分的に、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実施され得る。たとえば、説明された技法の様々な態様は、1つもしくは複数のマイクロプロセッサ、DSP、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他の任意の同等の集積型または離散型論理回路ばかりでなく、かかる構成要素の任意の組合せを含む、1つまたは複数のプロセッサ内で実施され得る。用語「プロセッサ」または「処理回路」は、概して、単独で、もしくは他の論理回路と組み合わせた、前述の論理回路のいずれか、または他の任意の同等の回路を指すことができる。ハードウェアを備える制御ユニットはまた、この開示の1つまたは複数の技法を実行することができる。 The techniques described in this disclosure may be implemented, at least in part, in hardware, software, firmware, or any combination thereof. For example, various aspects of the described techniques may be implemented in one or more microprocessors, DSPs, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or any other equivalent integrated or discrete. It may be implemented in one or more processors comprising any combination of such components, as well as type logic. The term "processor" or "processing circuit" can generally refer to any of the aforementioned logic circuits, either alone or in combination with other logic circuits, or any other equivalent circuit. A control unit comprising hardware may also perform one or more techniques of this disclosure.
かかるハードウェア、ソフトウェア、およびファームウェアは、この開示で説明されている様々な動作および機能をサポートするために、同じデバイス内または別個のデバイス内に実装され得る。加えて、説明されているユニット、モジュール、または構成要素のいずれも、一体的に、または離散的であるが相互運用可能な論理デバイスとして別々に実装され得る。モジュールまたはユニットとしての様々な特徴の記述は、様々な機能的側面を強調することが意図されており、かかるモジュールまたはユニットが、別々のハードウェアまたはソフトウェア構成要素で実現される必要があることを必ずしも含意しない。それどころか、1つまたは複数のモジュールまたはユニットに関連する機能は、別々のハードウェアもしくはソフトウェア構成要素によって実行されるか、または共通もしくは別々のハードウェアもしくはソフトウェア構成要素内に統合され得る。 Such hardware, software, and firmware may be implemented within the same device or within separate devices to support the various operations and functions described in this disclosure. Additionally, any of the described units, modules, or components may be implemented together or separately as discrete but interoperable logic devices. The description of various features as modules or units is intended to emphasize various functional aspects and implies that such modules or units must be implemented with separate hardware or software components. not necessarily implied. Rather, the functionality associated with one or more modules or units may be performed by separate hardware or software components, or integrated within common or separate hardware or software components.
この開示で説明されている技法はまた、命令を格納するコンピュータ可読記憶媒体などのコンピュータ可読媒体内で、具現化されるかまたは符号化され得る。コンピュータ可読記憶媒体内に組み込まれたまたは符号化された命令は、たとえば、命令が実行されるときに、プログラム可能なプロセッサまたは他のプロセッサに方法を実行させることができる。コンピュータ可読記憶媒体には、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、プログラム可能な読取り専用メモリ(PROM)、消去可能でプログラム可能な読取り専用メモリ(EPROM)、電子的に消去可能でプログラム可能な読取り専用メモリ(EEPROM)、フラッシュメモリ、ハードディスク、CD-ROM、フロッピディスク、カセット、磁気媒体、光学媒体、または他のコンピュータ可読媒体が含まれ得る。 The techniques described in this disclosure may also be embodied or encoded in a computer-readable medium, such as a computer-readable storage medium that stores instructions. Instructions embodied in or encoded in a computer-readable storage medium, for example, may cause a programmable processor or other processor to perform a method when the instructions are executed. Computer readable storage media include random access memory (RAM), read only memory (ROM), programmable read only memory (PROM), erasable programmable read only memory (EPROM), electronically erasable It may include programmable read only memory (EEPROM), flash memory, hard disk, CD-ROM, floppy disk, cassette, magnetic media, optical media, or other computer readable media.
本明細書で様々な例として説明されるように、本開示の技法は、人工現実システムを含むか、または人工現実システムと組み合わせて実施され得る。説明されたように、人工現実は、ユーザに提示する前に何らかのやり方で調整された現実の形式であり、たとえば、仮想現実(VR)、拡張現実(AR)、複合現実(MR)、ハイブリッド現実、またはそれらの何らかの組合せおよび/もしくは派生的なものが含まれ得る。人工現実コンテンツには、全面的に生成されたコンテンツ、または取り込まれたコンテンツ(たとえば、実世界の写真)と組み合わせて生成されたコンテンツが含まれ得る。人工現実コンテンツは、ビデオ、オーディオ、触覚フィードバック、またはそれらの何らかの組合せを含むことができ、これらのいずれかが、単一チャネルまたは複数チャネル(観察者に対して3次元効果を生成する立体式ビデオなど)で提示され得る。さらに、いくつかの実施形態では、人工現実は、アプリケーション、製品、アクセサリ、サービス、またはそれらの何らかの組合せに付随する場合があり、たとえば、人工現実内でコンテンツを作成するために使用され、かつ/または人工現実内で使用される(たとえば、人工現実内で活動を行う)。人工現実コンテンツを提供する人工現実システムは、ホストコンピュータシステムに接続されたヘッドマウントデバイス(HMD)、独立型HMD、携帯デバイスもしくはコンピュータ処理システム、または1人もしくは複数人の観察者に人工現実コンテンツを提供することができる他の任意のハードウェアプラットフォームを含む、様々なプラットフォーム上に実装され得る。 As described in various examples herein, the techniques of this disclosure may include or be implemented in conjunction with an artificial reality system. As explained, artificial reality is a form of reality that is conditioned in some way before presentation to the user, e.g. virtual reality (VR), augmented reality (AR), mixed reality (MR), hybrid reality , or any combination and/or derivative thereof. Artificial reality content may include content that is entirely generated or content that is generated in combination with captured content (eg, real-world photographs). Artificial reality content can include video, audio, haptic feedback, or some combination thereof, any of which can be single-channel or multi-channel (stereoscopic video that produces a three-dimensional effect for the viewer). etc.). Further, in some embodiments, artificial reality may accompany applications, products, accessories, services, or some combination thereof, for example, used to create content within artificial reality and/or or used within an artificial reality (eg, performing an activity within an artificial reality). An artificial reality system that provides artificial reality content may be a head-mounted device (HMD) connected to a host computer system, a stand-alone HMD, a handheld device or computer processing system, or presents artificial reality content to one or more viewers. It can be implemented on a variety of platforms, including any other hardware platform that can be provided.
Claims (14)
人工現実コンテンツを出力するよう構成される、ヘッドマウントディスプレイ(HMD)、
前記画像データから、手が実質的に上向きである前記手の配置と、前記手の親指および手指の挟持配置とを含む、メニュー起動ジェスチャを識別するよう構成される、ジェスチャ検出器、
前記メニュー起動ジェスチャに応答して、メニューインタフェース、および前記メニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成するよう構成される、ユーザインタフェース(UI)エンジン、ならびに
前記HMDで表示するための前記人工現実コンテンツ、前記メニューインタフェース、および前記スライド可能に係合可能なUI要素を描画するよう構成される、描画エンジン
を備える、人工現実システム。 an image capture device configured to capture image data;
a head-mounted display (HMD) configured to output artificial reality content;
a gesture detector configured to identify, from the image data, a menu activation gesture including a placement of the hand with the hand pointing substantially upwards and a pinching placement of the thumb and fingers of the hand;
a user interface (UI) engine configured to generate, in response to said menu activation gesture, a menu interface and a slidably engageable UI element in a first position relative to said menu interface; and an artificial reality system, comprising a rendering engine configured to render the artificial reality content, the menu interface, and the slidably engageable UI elements for display on the HMD.
前記UIエンジンが、前記メニューインタフェースに対する前記スライド可能に係合可能なUI要素の位置に応じて、前記メニューアイテムのうちの1つを強調表示するよう構成され、好ましくは、前記1つまたは複数のメニューアイテムが、前記人工現実システム上で実行されるそれぞれのアプリケーションに対応する、
請求項1に記載の人工現実システム。 the menu interface having one or more menu items arranged along the extent of the menu interface; and configured to highlight one of said menu items accordingly, preferably said one or more menu items corresponding to respective applications running on said artificial reality system;
The artificial reality system of claim 1.
前記UIエンジンがさらに、前記メニュースライドジェスチャに応答して、前記スライド可能に係合可能なUI要素を、前記メニューインタフェースに対して第2の位置に移動させるよう構成され、かつ好ましくは、
前記メニューインタフェースが、前記メニューインタフェースの広がりに沿って配列された1つまたは複数のメニューアイテムを有し、
前記スライド可能に係合可能なUI要素を、前記メニューインタフェースに対して前記第2の位置に移動させるために、前記UIエンジンが、前記スライド可能に係合可能なUI要素を、前記メニューインタフェースの前記広がりに沿って前記メニューインタフェースに対する前記第2の位置へスライドさせるよう構成され、かつ/または好ましくは、
前記メニュースライドジェスチャが、実質的に第1の方向への前記手の動きを含み、
前記ジェスチャ検出器が、前記画像データから、前記メニュー起動ジェスチャに続く実質的に第2の方向への前記手の動きを識別するよう構成され、前記実質的に第2の方向が、前記実質的に第1の方向に実質的に直交しており、
前記UIエンジンがさらに、前記実質的に第2の方向への前記手の前記動きに応答して、前記メニューインタフェースに対する前記スライド可能に係合可能なUI要素の位置を維持しながら、前記スライド可能に係合可能なUI要素および前記メニューインタフェースを移動させるよう構成される、
請求項1または2に記載の人工現実システム。 The gesture detector is further configured to identify, from the image data, a menu slide gesture including the placement of the hand in combination with the hand movement, and the UI engine is further configured to respond to the menu slide gesture. to move said slidably engageable UI element to a second position relative to said menu interface, and preferably comprising:
the menu interface having one or more menu items arranged along the extent of the menu interface;
moving the slidably engagable UI element to the second position relative to the menu interface, wherein the UI engine moves the slidably engagable UI element to the menu interface; configured to slide along said extent to said second position relative to said menu interface and/or preferably
wherein the menu slide gesture includes movement of the hand substantially in a first direction;
The gesture detector is configured to identify, from the image data, movement of the hand in a substantially second direction following the menu activation gesture, wherein the substantially second direction corresponds to the substantially substantially orthogonal to the first direction in
The UI engine further comprises the slidable element while maintaining the position of the slidably engageable UI element relative to the menu interface in response to the movement of the hand in the substantially second direction. configured to move UI elements and said menu interface engageable with
3. The artificial reality system according to claim 1 or 2.
前記ジェスチャ検出器が、前記画像データから、前記メニュースライドジェスチャに続く選択ジェスチャを識別するよう構成され、かつ
前記アプリケーションエンジンが、前記選択ジェスチャに応答して動作を実行するよう構成され、好ましくは、前記選択ジェスチャが、(1)前記手の別の手指を動かすこと、(2)前記メニューインタフェースに実質的に垂直な方向へ前記手を移動させること、または(3)前記手の前記親指および前記手指がもはや前記挟持配置でなくなるように再配置することのうちの1つを含む、
請求項1から3のいずれか一項に記載の人工現実システム。 further comprising an application engine for executing one or more artificial reality applications;
wherein said gesture detector is configured to identify from said image data a selection gesture following said menu slide gesture, and said application engine is configured to perform an action in response to said selection gesture, preferably comprising: The selection gesture includes (1) moving another finger of the hand, (2) moving the hand in a direction substantially perpendicular to the menu interface, or (3) the thumb of the hand and the repositioning the fingers so that they are no longer in the pinching position;
An artificial reality system according to any one of claims 1-3.
前記UIエンジンがさらに、前記メニュープロンプトジェスチャに応答して、メニュープロンプト要素を生成するように構成され、好ましくは、前記メニュープロンプトジェスチャが、親指と手指との間に間隔をあけた状態で、実質的に上向きの位置に配置された前記手を含み、かつ
前記UIエンジンが、仮想の手の親指と手指との間の前記間隔に前記メニュープロンプト要素を生成し、好ましくは、前記メニュープロンプト要素が、前記仮想の手の前記親指と前記手指との間の線を含む、
請求項1から4のいずれか一項に記載の人工現実システム。 the gesture detector is further configured to identify from the image data a menu prompt gesture prior to the menu activation gesture;
The UI engine is further configured to generate a menu prompt element in response to the menu prompt gesture, preferably the menu prompt gesture is substantially spaced between the thumb and finger. and said UI engine generates said menu prompt element at said spacing between the thumb and fingers of a virtual hand, said menu prompt element preferably comprising: , including the line between the thumb and the fingers of the virtual hand;
5. An artificial reality system according to any one of claims 1-4.
前記人工現実システムによって、前記画像データから、メニュー起動ジェスチャを識別することであって、前記メニュー起動ジェスチャが、手が実質的に上向きである前記手の配置と、前記手の親指および手指の挟持配置とを含む、メニュー起動ジェスチャを識別すること、
前記人工現実システムによって、前記メニュー起動ジェスチャに応答して、メニューインタフェース、および前記メニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成すること、ならびに
前記人工現実システムによって、前記HMDで表示するための人工現実コンテンツ、前記メニューインタフェース、および前記スライド可能に係合可能なUI要素を描画すること
を含む、方法。 Acquiring image data via an image capture device by an artificial reality system including a head-mounted display (HMD);
identifying, by the artificial reality system, a menu-activated gesture from the image data, wherein the menu-activated gesture comprises a placement of the hand in which the hand is pointing substantially upwards and a pinching of the thumb and fingers of the hand; identifying menu activation gestures, including positioning;
generating, by the artificial reality system, a menu interface and a slidably engageable UI element in a first position relative to the menu interface in response to the menu activation gesture; and the artificial reality system. A method comprising rendering, by a system, artificial reality content for display on the HMD, the menu interface, and the slidably engageable UI elements.
前記人工現実システムによって、前記メニューインタフェースに対する前記スライド可能に係合可能なUI要素の位置に応じて、前記メニューアイテムのうちの1つを強調表示すること
をさらに含む、請求項7に記載の方法。 the menu interface having one or more menu items arranged along the extent of the menu interface, the method comprising:
8. The method of claim 7, further comprising highlighting, by the artificial reality system, one of the menu items according to the position of the slidably engageable UI element relative to the menu interface. .
前記人工現実システムによって、前記メニュースライドジェスチャに応答して、前記スライド可能に係合可能なUI要素を、前記メニューインタフェースに対する第2の位置に移動させることと
をさらに含む、請求項7または8に記載の方法。 identifying, by the artificial reality system, from the image data a menu slide gesture comprising the placement of the hand in combination with the movement of the hand;
9. The method of claim 7 or 8, further comprising moving, by the artificial reality system, the slidably engageable UI element to a second position relative to the menu interface in response to the menu slide gesture. described method.
前記人工現実システムによって、前記画像データから、前記メニュー起動ジェスチャに続く実質的に第2の方向への前記手の動きを識別することであって、前記実質的に第2の方向が、前記実質的に第1の方向に実質的に直交している、前記手の動きを識別することと、
前記人工現実システムによって、前記実質的に第2の方向への前記手の前記動きに応答して、前記メニューインタフェースに対する前記スライド可能に係合可能なUI要素の位置を維持しながら、前記スライド可能に係合可能なUI要素および前記メニューインタフェースを移動させることと
をさらに含む、請求項9または10に記載の方法。 wherein the menu slide gesture includes movement of the hand substantially in a first direction, the method comprising:
identifying, by the artificial reality system, from the image data a movement of the hand substantially in a second direction following the menu activation gesture, wherein the substantially second direction identifying movements of the hand that are substantially orthogonal to a first direction;
The artificial reality system causes the slidable while maintaining the position of the slidably engageable UI element relative to the menu interface in response to the movement of the hand in the substantially second direction. 11. The method of claim 9 or 10, further comprising moving UI elements engageable with and the menu interface.
前記人工現実システムによって、前記メニュープロンプトジェスチャに応答して、メニュープロンプト要素を生成することと
をさらに含む、請求項7から11のいずれか一項に記載の方法。 identifying a menu prompt gesture from the image data by the artificial reality system;
12. The method of any one of claims 7-11, further comprising generating a menu prompt element in response to the menu prompt gesture by the artificial reality system.
画像取込みデバイスを介して画像データを取り込ませ、
前記画像データから、手の配置を含むメニュー起動ジェスチャを識別させ、
前記メニュー起動ジェスチャに応答して、メニューインタフェース、および前記メニューインタフェースに対して第1の位置にある、スライド可能に係合可能なUI要素を生成させ、
前記メニュー起動ジェスチャに続く、前記手の動きと組み合わせた前記手の前記配置を含む、メニュースライドジェスチャを識別させ、
前記メニュースライドジェスチャに応答して、前記スライド可能に係合可能なUI要素を、前記メニューインタフェースに対する第2の位置に移動させ、かつ
ヘッドマウントディスプレイ(HMD)で表示するための、人工現実コンテンツ、前記メニューインタフェース、および前記スライド可能に係合可能なUI要素を描画させる
命令を含む、非一時的なコンピュータ可読媒体。 When executed, causes one or more processors of the artificial reality system to:
Capture image data via an image capture device,
identifying from the image data a menu activation gesture including hand placement;
generating a menu interface and a slidably engageable UI element in a first position relative to the menu interface in response to the menu activation gesture;
identifying a menu slide gesture following the menu activation gesture, including the placement of the hand in combination with the movement of the hand;
responsive to the menu slide gesture to move the slidably engageable UI element to a second position relative to the menu interface and for display on a head mounted display (HMD); artificial reality content; A non-transitory computer-readable medium comprising instructions for rendering the menu interface and the slidably engageable UI element.
前記画像データから、親指と手指との間に間隔をあけた状態で、実質的に上向きの位置に配置された前記手を含む、メニュープロンプトジェスチャを識別させ、かつ
前記メニュープロンプトジェスチャに応答して、仮想の手の親指と手指との間の前記間隔にメニュープロンプト要素を生成させる、
請求項13に記載の非一時的なコンピュータ可読媒体。 The instructions further cause the one or more processors to:
identifying from the image data a menu prompt gesture comprising the hand positioned in a substantially upward position with a space between the thumb and fingers; and in response to the menu prompt gesture. , causing the spacing between the thumb and fingers of the virtual hand to generate a menu prompt element;
14. The non-transitory computer-readable medium of claim 13.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/434,919 US10890983B2 (en) | 2019-06-07 | 2019-06-07 | Artificial reality system having a sliding menu |
US16/434,919 | 2019-06-07 | ||
PCT/US2020/035998 WO2020247550A1 (en) | 2019-06-07 | 2020-06-03 | Artificial reality system having a sliding menu |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022535316A true JP2022535316A (en) | 2022-08-08 |
Family
ID=71842836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021555497A Pending JP2022535316A (en) | 2019-06-07 | 2020-06-03 | Artificial reality system with sliding menu |
Country Status (7)
Country | Link |
---|---|
US (1) | US10890983B2 (en) |
EP (1) | EP3980870A1 (en) |
JP (1) | JP2022535316A (en) |
KR (1) | KR20220016274A (en) |
CN (1) | CN113853575A (en) |
TW (1) | TW202113555A (en) |
WO (1) | WO2020247550A1 (en) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11275453B1 (en) | 2019-09-30 | 2022-03-15 | Snap Inc. | Smart ring for manipulating virtual objects displayed by a wearable device |
US11455078B1 (en) * | 2020-03-31 | 2022-09-27 | Snap Inc. | Spatial navigation and creation interface |
US11798429B1 (en) | 2020-05-04 | 2023-10-24 | Snap Inc. | Virtual tutorials for musical instruments with finger tracking in augmented reality |
US11520399B2 (en) | 2020-05-26 | 2022-12-06 | Snap Inc. | Interactive augmented reality experiences using positional tracking |
US11925863B2 (en) * | 2020-09-18 | 2024-03-12 | Snap Inc. | Tracking hand gestures for interactive game control in augmented reality |
US12032803B2 (en) * | 2020-09-23 | 2024-07-09 | Apple Inc. | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments |
US11562528B2 (en) | 2020-09-25 | 2023-01-24 | Apple Inc. | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments |
US11921931B2 (en) * | 2020-12-17 | 2024-03-05 | Huawei Technologies Co., Ltd. | Methods and systems for multi-precision discrete control of a user interface control element of a gesture-controlled device |
US11782577B2 (en) | 2020-12-22 | 2023-10-10 | Snap Inc. | Media content player on an eyewear device |
US11797162B2 (en) * | 2020-12-22 | 2023-10-24 | Snap Inc. | 3D painting on an eyewear device |
US20220206588A1 (en) * | 2020-12-29 | 2022-06-30 | Snap Inc. | Micro hand gestures for controlling virtual and graphical elements |
US11740313B2 (en) | 2020-12-30 | 2023-08-29 | Snap Inc. | Augmented reality precision tracking and display |
US11954242B2 (en) | 2021-01-04 | 2024-04-09 | Apple Inc. | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments |
AU2022210589A1 (en) * | 2021-01-20 | 2023-09-07 | Apple Inc. | Methods for interacting with objects in an environment |
US11995230B2 (en) * | 2021-02-11 | 2024-05-28 | Apple Inc. | Methods for presenting and sharing content in an environment |
US12013985B1 (en) | 2021-02-25 | 2024-06-18 | Snap Inc. | Single-handed gestures for reviewing virtual content |
EP4327185A1 (en) | 2021-04-19 | 2024-02-28 | Snap, Inc. | Hand gestures for animating and controlling virtual and graphical elements |
CN113282169B (en) * | 2021-05-08 | 2023-04-07 | 青岛小鸟看看科技有限公司 | Interaction method and device of head-mounted display equipment and head-mounted display equipment |
TWI764838B (en) * | 2021-09-27 | 2022-05-11 | 國立臺中科技大學 | A synchronous live teaching device integrating real-time recording and screenshot functions |
US20230135974A1 (en) * | 2021-11-04 | 2023-05-04 | Microsoft Technology Licensing, Llc | Multi-factor intention determination for augmented reality (ar) environment control |
WO2023080943A1 (en) * | 2021-11-04 | 2023-05-11 | Microsoft Technology Licensing, Llc. | Multi-factor intention determination for augmented reality (ar) environment control |
WO2023080957A1 (en) * | 2021-11-04 | 2023-05-11 | Microsoft Technology Licensing, Llc. | Multi-factor intention determination for augmented reality (ar) environment control |
US11928264B2 (en) * | 2021-12-16 | 2024-03-12 | Lenovo (Singapore) Pte. Ltd. | Fixed user interface navigation |
CN116795203A (en) * | 2022-03-17 | 2023-09-22 | 北京字跳网络技术有限公司 | Control method and device based on virtual reality and electronic equipment |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8935003B2 (en) * | 2010-09-21 | 2015-01-13 | Intuitive Surgical Operations | Method and system for hand presence detection in a minimally invasive surgical system |
EP3654146A1 (en) * | 2011-03-29 | 2020-05-20 | QUALCOMM Incorporated | Anchoring virtual images to real world surfaces in augmented reality systems |
US20120249740A1 (en) * | 2011-03-30 | 2012-10-04 | Tae-Yon Lee | Three-dimensional image sensors, cameras, and imaging systems |
US9477303B2 (en) * | 2012-04-09 | 2016-10-25 | Intel Corporation | System and method for combining three-dimensional tracking with a three-dimensional display for a user interface |
US10228242B2 (en) * | 2013-07-12 | 2019-03-12 | Magic Leap, Inc. | Method and system for determining user input based on gesture |
CN112651288B (en) | 2014-06-14 | 2022-09-20 | 奇跃公司 | Method and system for generating virtual and augmented reality |
US20160088060A1 (en) * | 2014-09-24 | 2016-03-24 | Microsoft Technology Licensing, Llc | Gesture navigation for secondary user interface |
US10067636B2 (en) * | 2016-02-09 | 2018-09-04 | Unity IPR ApS | Systems and methods for a virtual reality editor |
DE102016006767A1 (en) * | 2016-06-02 | 2017-12-07 | Audi Ag | A method of operating a display system and display system |
CN108536273A (en) * | 2017-03-01 | 2018-09-14 | 天津锋时互动科技有限公司深圳分公司 | Man-machine menu mutual method and system based on gesture |
-
2019
- 2019-06-07 US US16/434,919 patent/US10890983B2/en active Active
-
2020
- 2020-06-03 JP JP2021555497A patent/JP2022535316A/en active Pending
- 2020-06-03 TW TW109118659A patent/TW202113555A/en unknown
- 2020-06-03 CN CN202080035337.XA patent/CN113853575A/en active Pending
- 2020-06-03 KR KR1020227000364A patent/KR20220016274A/en unknown
- 2020-06-03 WO PCT/US2020/035998 patent/WO2020247550A1/en active Application Filing
- 2020-06-03 EP EP20747255.6A patent/EP3980870A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20200387228A1 (en) | 2020-12-10 |
KR20220016274A (en) | 2022-02-08 |
US10890983B2 (en) | 2021-01-12 |
TW202113555A (en) | 2021-04-01 |
WO2020247550A1 (en) | 2020-12-10 |
CN113853575A (en) | 2021-12-28 |
EP3980870A1 (en) | 2022-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2022535316A (en) | Artificial reality system with sliding menu | |
EP3997552B1 (en) | Virtual user interface using a peripheral device in artificial reality environments | |
US11003307B1 (en) | Artificial reality systems with drawer simulation gesture for gating user interface elements | |
US11334212B2 (en) | Detecting input in artificial reality systems based on a pinch and pull gesture | |
JP2022535315A (en) | Artificial reality system with self-tactile virtual keyboard | |
US20200387286A1 (en) | Arm gaze-driven user interface element gating for artificial reality systems | |
JP2022534639A (en) | Artificial Reality System with Finger Mapping Self-Tactile Input Method | |
US10921879B2 (en) | Artificial reality systems with personal assistant element for gating user interface elements | |
US11086475B1 (en) | Artificial reality systems with hand gesture-contained content window | |
US11043192B2 (en) | Corner-identifiying gesture-driven user interface element gating for artificial reality systems | |
US11422669B1 (en) | Detecting input using a stylus in artificial reality systems based on a stylus movement after a stylus selection action | |
US10852839B1 (en) | Artificial reality systems with detachable personal assistant for gating user interface elements | |
WO2024064231A1 (en) | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230310 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240326 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240409 |