JP2023109848A - 仮想現実システムのための安全境界を修正するためのシステムおよび方法 - Google Patents

仮想現実システムのための安全境界を修正するためのシステムおよび方法 Download PDF

Info

Publication number
JP2023109848A
JP2023109848A JP2023078135A JP2023078135A JP2023109848A JP 2023109848 A JP2023109848 A JP 2023109848A JP 2023078135 A JP2023078135 A JP 2023078135A JP 2023078135 A JP2023078135 A JP 2023078135A JP 2023109848 A JP2023109848 A JP 2023109848A
Authority
JP
Japan
Prior art keywords
virtual boundary
real
world environment
virtual
view
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
Application number
JP2023078135A
Other languages
English (en)
Inventor
ジョン ポラード,
Pollard John
ジミー ケー. ユン,
K Yun Jimmy
ジェーソン ドン ウク キム,
Dong Uk Kim Jason
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meta Platforms Technologies LLC
Original Assignee
Meta Platforms Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Meta Platforms Technologies LLC filed Critical Meta Platforms Technologies LLC
Publication of JP2023109848A publication Critical patent/JP2023109848A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction 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 for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • G06T5/80
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/67ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for remote operation
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Graphics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Business, Economics & Management (AREA)
  • Optics & Photonics (AREA)
  • Epidemiology (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Geometry (AREA)

Abstract

【課題】HMDデバイスを着用しているユーザが、現実世界環境中の特徴または障害との衝突を防ぐために使用する現実世界環境中の仮想境界(virtual boundary)を修正する方法、コンピュータ可読記憶媒体およびシステムを提供する。【解決手段】方法は、現実世界環境の平面を表す基準高度の指示を受信することと、基準高度に対して、仮想世界環境についての仮想境界を確立することと、仮想境界を修正したいというユーザからの要求を受信することと、ユーザからの要求に応答して、配向データを生成するために方向インジケータの配向を監視することと、基準高度と配向データとに基づいて仮想境界を修正することと、を含む。【選択図】図1

Description

関連出願の相互参照
本出願は、その開示全体がこの参照により組み込まれる、2018年10月31日に出願された米国非仮出願第16/177,424号の利益を主張する。
仮想現実(VR)システムおよび拡張現実(AR)システムは、ユーザが、通常のテレビまたはビデオゲーミングが提供することができるものよりも没入型のエクスペリエンスを有することを可能にし得る。ヘッドマウントディスプレイ(HMD)を着用しながら、ユーザは、まさに、ユーザが現実世界環境を観察するために自然に行うように、単に、自分の頭部を配向することによって、キャプチャされたシーンまたは人工的に生成されたシーンの異なる部分を観察することができる。シーンは、シーンがユーザの頭部の位置および配向の変化に基づいて変化するように、ユーザの頭部の位置および配向に基づいて、HMDにおいてユーザに提示され得る。また、モバイルVRシステムが、ユーザが現実世界環境中を歩き回るとき、ユーザの移動を考慮することができ、その結果、ユーザは自身が仮想環境中で移動していると知覚する。
没入型であるが、これらの特徴は、ユーザにユーザの現実世界環境の重要な態様を忘れさせるやり方で、ユーザが仮想環境と関与することを可能にし得る。たとえば、仮想環境中のある位置から別の位置に歩くことを試みるユーザは、ユーザの、現実世界環境の認識の欠如により、テーブル、カウチ、または壁など、現実世界の障害を考慮することに失敗すること(または、見ることができないこと)がある。これにより、現実世界環境または現実世界環境中の特徴との衝突が生じ得る。
以下でより詳細に説明されるように、本開示は、HMDデバイスを着用しているユーザが、現実世界環境中の特徴または障害との衝突を防ぐために使用され得る、現実世界環境中の仮想境界(virtual boundary)を修正することを可能にし得る、システムおよび方法について説明する。
一例では、仮想境界を修正するためのコンピュータ実装方法が、(1)現実世界環境の平面を表す基準高度(reference elevation)の指示を受信することと、(2)基準高度に対して、仮想世界環境についての仮想境界を確立することと、(3)仮想境界を修正したいというユーザからの要求を受信することと、(4)ユーザからの要求に応答して、配向データを生成するために方向インジケータの配向を監視することと、(5)基準高度と配向データとに基づいて仮想境界を修正することとを含み得る。
いくつかの例では、配向データは、基準高度に対する方向インジケータの高度の高度データを含み得る。仮想境界を修正することは、平面と、高度データによって示された高度におけるおよび配向データによって示された配向におけるユーザデバイスから延びる仮想線との交差部を決定することを含み得る。
いくつかの例では、本方法は、ヘッドマウントディスプレイシステムのイメージングシステムで現実世界環境のビューをキャプチャすることを含み得る。キャプチャされたビューは、レンズ誘発ひずみを有し得る。本方法は、現実世界環境の補償ビューを作り出すために、キャプチャされたビュー中のレンズ誘発ひずみを補正することと、仮想境界を現実世界環境の補償ビューに重ね合わせることと、境界修正状態中に現実世界環境の補償ビューをヘッドマウントディスプレイシステムのディスプレイに表示することとをも含み得る。
いくつかの例では、仮想境界が最小エリアしきい値を満たすとき、仮想境界は成功色で表示され得、仮想境界が最小エリアしきい値を満たさないとき、仮想境界は警告色で表示され得る。いくつかの例では、仮想境界は、仮想境界によって定義された塗りつぶされた形状として表示され得る。
いくつかの例では、仮想境界を修正することは、仮想境界に部分を加えること、または仮想境界から部分を減じることを含み得る。いくつかの例では、本方法は、基準高度の確認を受信することを含み得る。いくつかの例では、本方法は、仮想境界をリセットするための指示を受信することを含み得る。
いくつかの例では、上記で説明された方法は、コンピュータ可読媒体上のコンピュータ可読命令として符号化され得る。たとえば、コンピュータ可読媒体は、1つまたは複数のコンピュータ実行可能命令を含み得、それらの命令は、コンピューティングデバイスの少なくとも1つのプロセッサによって実行されたとき、コンピューティングデバイスに、(1)現実世界環境の平面を表す基準高度の指示を受信することと、(2)基準高度に対して、仮想世界環境についての仮想境界を確立することと、(3)配向データを生成するために方向インジケータの配向を監視することと、(4)基準高度と配向データとに基づいて仮想境界を修正することとを行わせ得る。
いくつかの例では、配向データは、基準高度に対する方向インジケータの高度の高度データを含み得る。仮想境界を修正することは、平面と、高度データによって示された高度におけるおよび配向データによって示された配向における方向インジケータから延びる仮想線との交差部を決定することを含み得る。
いくつかの例では、命令は、ヘッドマウントディスプレイシステムのイメージングシステムで現実世界環境のビューをキャプチャするための命令を含み得る。キャプチャされたビューは、レンズ誘発ひずみを有し得る。命令は、現実世界環境の補償ビューを作り出すために、キャプチャされたビュー中のレンズ誘発ひずみを補正することと、仮想境界を、仮想境界によって定義された塗りつぶされた形状として、現実世界環境の補償ビューに重ね合わせることと、境界修正状態中に現実世界環境の補償ビューをヘッドマウントディスプレイシステムのディスプレイに表示することとを行うための命令を含み得る。
いくつかの例では、仮想境界が最小エリアしきい値を満たすとき、仮想境界は成功色で表示され得、仮想境界が最小エリアしきい値を満たさないとき、仮想境界は警告色で表示され得る。
いくつかの例では、仮想境界を修正することは、仮想境界に部分を加えること、または仮想境界から部分を減じることを含み得る。いくつかの例では、命令は、基準高度の確認を受信するための命令を含み得る。いくつかの例では、命令は、仮想境界をリセットするための指示を受信するための命令を含み得る。
さらに、ヘッドマウントディスプレイシステムが、ユーザアタッチメントシステムに固定されたディスプレイと、方向インジケータと、処理システムとを含み得る。処理システムは、(1)現実世界環境の平面を表す基準高度を識別することと、(2)基準高度に対して、仮想世界環境についての仮想境界を確立することと、(3)基準高度と方向インジケータの配向を特徴づける配向データとに基づいて仮想境界を修正することと行うように構成され得る。
いくつかの例では、処理システムは、ヘッドマウントディスプレイシステムのイメージングシステムで現実世界環境のビューをキャプチャするようにさらに構成され得る。キャプチャされたビューは、レンズ誘発ひずみを有し得る。処理システムは、現実世界環境の補償ビューを作り出すために、キャプチャされたビュー中のレンズ誘発ひずみを補正することと、仮想境界を、仮想境界によって定義された塗りつぶされた形状として、現実世界環境の補償ビューに重ね合わせることと、境界修正状態中に現実世界環境の補償ビューをヘッドマウントディスプレイシステムのディスプレイに表示することとを行うようにさらに構成され得る。
いくつかの例では、仮想境界が最小エリアしきい値を満たすとき、仮想境界は成功色で表示され得、仮想境界が最小エリアしきい値を満たさないとき、仮想境界は警告色で表示され得る。
いくつかの例では、仮想境界を修正することは、仮想境界に部分を加えること、または仮想境界から部分を減じることを含み得る。いくつかの例では、配向データは、方向インジケータの高度の高度データを含み得る。仮想境界を修正することは、平面と、高度データによって示された高度におけるおよび配向データによって示された配向におけるユーザデバイスから延びる仮想線との交差部を決定することを含み得る。
上述の実施形態のいずれかからの特徴が、本明細書で説明される一般的な原理に従って、互いと組み合わせて使用され得る。これらおよび他の実施形態、特徴、および利点は、添付の図面および特許請求の範囲とともに以下の発明を実施するための形態を読むとより十分に理解されよう。
本発明による一実施形態では、1つまたは複数のコンピュータ可読非一時的記憶媒体は、実行されたとき、本発明による方法または上述の実施形態のいずれかにおける方法を実施するように動作可能であるソフトウェアを具現し得る。
本発明による一実施形態では、システムは、1つまたは複数のプロセッサと、プロセッサに結合され、プロセッサによって実行可能な命令を備える少なくとも1つのメモリとを備え得、プロセッサは、命令を実行したとき、本発明による方法または上述の実施形態のいずれかにおける方法を実施するように動作可能である。
本発明による一実施形態では、好ましくはコンピュータ可読非一時的記憶媒体を備えるコンピュータプログラム製品は、データ処理システム上で実行されたとき、本発明による方法または上述の実施形態のいずれかにおける方法を実施するように動作可能であり得る。
本発明による実施形態は、特に、方法、記憶媒体、およびヘッドマウントディスプレイ(HMD)を対象とする添付の特許請求の範囲で開示され、1つの請求項カテゴリー、たとえば、方法において述べられた任意の特徴は、別の請求項カテゴリー、たとえば、HMD、システムおよびコンピュータプログラム製品においても請求され得る。添付の特許請求の範囲における従属関係または参照は、形式上の理由で選定されるにすぎない。ただし、前の請求項への意図的な参照(特に複数の従属関係)から生じる主題も請求され得、その結果、請求項とその特徴との任意の組合せが、開示され、添付の特許請求の範囲で選定された従属関係にかかわらず請求され得る。請求され得る主題は、添付の特許請求の範囲に記載の特徴の組合せだけでなく、特許請求の範囲における特徴の任意の他の組合せをも含み、特許請求の範囲において述べられた各特徴は、特許請求の範囲における任意の他の特徴または他の特徴の組合せと組み合わせられ得る。さらに、本明細書で説明または示される実施形態および特徴のいずれも、別個の請求項において、ならびに/あるいは、本明細書で説明もしくは示される任意の実施形態もしくは特徴との、または添付の特許請求の範囲の特徴のいずれかとの任意の組合せで請求され得る。
添付の図面は、いくつかの例示的な実施形態を示し、本明細書の一部である。以下の説明とともに、これらの図面は、本開示の様々な原理を示し、それらの原理について説明する。
本開示の態様による、現実世界環境に対する仮想境界を修正するための例示的な方法の流れ図である。 本開示の態様による、例示的なヘッドマウントディスプレイ(HMD)システムのブロック図である。 本開示の態様による、図2のHMDシステム中に含まれ得る例示的なHMDデバイスの斜視図である。 本開示の態様による、図2のHMDシステム中に含まれ得る例示的なハンドヘルドコントローラの斜視図である。 本開示の態様による、現実世界環境中で図3のHMDデバイスを着用し、図4のハンドヘルドコントローラを保持するユーザの、それぞれ、斜視図および上面図である。 本開示の態様による、仮想安全境界を作り出すために現実世界環境の再生と対話するユーザの、それぞれ、斜視図および上面図である。 本開示の態様による、仮想境界を定義するために現実世界環境と対話するためのシステムを示す図である。 本開示の態様による、仮想境界を作り出すために現実世界環境の再生と対話し続けるユーザの、それぞれ、斜視図および上面図である。 本開示の態様による、定義された仮想境界と対話するユーザの、それぞれ、斜視図および上面図である。 本開示の態様による、あらかじめ定義された仮想境界のセットに対応する物理的定義のセットを含んでいるメモリデバイスの図である。
図面全体にわたって、同一の参照符号および説明は、同様であるが、必ずしも同一でない要素を示す。本明細書で説明される例示的な実施形態は、様々な修正および代替形態が可能であるが、特定の実施形態が、図面において例として示されており、本明細書で詳細に説明される。しかしながら、本明細書で説明される例示的な実施形態は、開示される特定の形態に限定されるものではない。むしろ、本開示は、添付の特許請求の範囲内に入るすべての修正、均等物、および代替形態をカバーする。
本開示は、概して、ユーザがユーザの現実世界環境および/または仮想環境に対する仮想境界を修正することを可能にするシステムおよび方法を対象とする。以下でより詳細に説明されるように、本開示の実施形態は、ユーザが、たとえば、ハンドヘルドコントローラ、指、視線、または他の方向インジケータを使用することによって、現実世界環境の床(floor)上の仮想境界を修正することを可能にし得る。ユーザは、仮想境界に対する修正を「描画」(たとえば、方向インジケータを使用して仮想的に描画)し得る。ユーザがHMDデバイスを着用している間、HMDデバイス上に配設された1つまたは複数のカメラによって、現実世界環境のビューが提供され得る。これらのカメラは、ユーザがHMDデバイスを着用していないかのように現実世界環境を示す、パススルービュー(pass-through view)を可能にし得る。このようにして、ユーザは、回避されるべき環境の特徴および障害を見ることがあり、そのような特徴から安全な距離離れた仮想境界を定義および修正し得る。
いくつかの実施形態では、ユーザは、現実世界環境の床上のロケーションをポイントするために方向インジケータを使用し得る。たとえば、HMDシステムは、床をポイントするために使用され得るハンドヘルドコントローラを含み得る。床からのハンドヘルドコントローラの高さとハンドヘルドコントローラの配向とを使用することなどによって、処理サブシステムによって床上の特定のポイントを識別するために、ハンドヘルドコントローラの位置および配向情報が使用され得る。境界修正状態中に、仮想境界は床上に表示され得、ユーザが床上の仮想境界を修正する間、ユーザに視覚フィードバックを提供するために、仮想線が、ユーザにとってハンドヘルドコントローラから床のほうへ延びるように現れ得る。
仮想境界を修正した後に、ユーザに現実世界環境を気づかせ、および/またはユーザが物体につまずき、転び、またはぶつかるのを防ぐために、ユーザが仮想境界のしきい値距離内に入るときはいつでも、仮想境界および/または仮想境界から導出された境界壁の指示が、HMDデバイス中でユーザに提示され得る。仮想境界に依拠して、ユーザは、動作状態中にユーザに提示される仮想環境とより良く関与するために、HMDデバイスをオンに保ち、現実世界環境を安全に動き回ることができる。本明細書で説明される態様は、追加のセンサーまたは専用ハードウェアを必要とすることなしに安全特徴を提供することによって、VRおよびAR技術を改善し得る。さらに、本明細書で説明される態様は、追加のリソースを必要とすることなしに実装され得る安全特徴を提供することによって、コンピュータの働きを改善し得る。たとえば、安全特徴は、コンピュータからのかなりの処理およびメモリリソースを必要とすることなしに実装され得、したがって、コンピューティング性能に悪影響は及ぼし得ない。
以下は、図1~図9を参照しながら、ユーザが、現実世界環境に対する、自身の仮想境界を修正することと、偶発的衝突のリスクが高くなりすぎるときはいつでもユーザに現実世界環境に気づかせるためにユーザに視覚および/または聴覚指示を提供するために、その仮想境界を使用することとを可能にする、システムおよび方法の詳細な説明を提供する。図1は、仮想境界を修正する例示的なプロセスを示す。図2は、例示的なVRシステムを示す。図3は、例示的なHMDデバイスを示す。図4は、例示的な方向インジケータを示す。図5A~図5Bは、例示的なARシステムを使用するユーザを示す。図6A~図6Cは、ユーザが現実世界環境の再生とどのように対話し得るかを示す。図7A~図7Bは、ユーザが仮想境界をどのように修正し得るかを示す。図8A~図8Bは、ユーザが仮想境界とどのように対話し得るかを示す。図9は、VRシステムの例示的なメモリデバイスを示す。
図1は、仮想境界を修正するための例示的なコンピュータ実装方法100の流れ図である。図1に示されているステップは、図2~図4に示されている(1つまたは複数の)システムを含む、任意の好適なコンピュータ実行可能コードおよび/またはコンピューティングシステムによって実施され得る。一例では、図1に示されているステップの各々は、その構造が複数のサブステップを含み、および/または複数のサブステップによって表される、アルゴリズムを表し得、その例は以下でより詳細に提供される。
図1に示されているように、ステップ110において、本明細書で説明されるシステムのうちの1つまたは複数が、現実世界環境の平面を表す基準高度の指示を受信し得る。たとえば、図2に示されている、HMDシステム200の処理サブシステム210が、基準高度の指示を受信し得る。
いくつかの実施形態では、「基準高度」という用語は、方向インジケータによってポイントされたポイント/ロケーションを決定するために使用され得る、現実世界環境中の基準平面に対応する高度を指し得る。いくつかの実施形態では、基準高度は、現実世界環境のベース平面に対応するベースライン高度であり得る。「ベース平面」という用語は、ユーザが現実世界環境中で遭遇し得る最低高度を指し得る。ベース平面の例は、限定はしないが、床、テーブル、地面を含む。ベースライン高度は、ベース平面の高度を表し得、床に対して直角に定義され得る。VRシステムのための仮想境界は、基準高度および/または対応する平面に対して、定義および/または修正され得る。図2は、仮想境界を利用し得る例示的なVRシステムを示す。
図2は、ユーザにシーン(たとえば、キャプチャされたシーン、人工的に生成されたシーン、またはそれらの組合せ)を提示するHMDシステム200の一実施形態のブロック図である。HMDシステム200は、仮想現実(VR)システム環境、拡張現実(AR)システム環境、複合現実(MR)システム環境、またはそれらの何らかの組合せにおいて動作し得る。図2に示されているHMDシステム200は、HMDデバイス205を含み得、HMDデバイス205は、処理サブシステム210および入出力(I/O)インターフェース215を含むかまたは処理サブシステム210および入出力(I/O)インターフェース215と通信する。HMDデバイス205は、いくつかの実施形態では、現実世界環境のユーザのビューを完全に遮断し得る。他の実施形態は、現実世界環境のユーザのビューを部分的にのみ遮断し得、および/またはHMDデバイス205のディスプレイにおいて表示されているコンテンツに応じて、ユーザのビューを遮断し得る。
図2は、少なくとも1つのHMDデバイス205と少なくとも1つのI/Oインターフェース215とを含む例示的なHMDシステム200を示しているが、他の実施形態では、任意の数のこれらの構成要素が、HMDシステム200中に含まれ得る。たとえば、関連するI/Oインターフェース215を各々が有する、複数のHMD205があり得、各HMDデバイス205およびI/Oインターフェース215は処理サブシステム210と通信する。処理サブシステム210がHMDデバイス205内に含まれないかまたはHMDデバイス205と統合されない実施形態では、HMDデバイス205は、ワイヤード接続またはワイヤレス接続を介して処理サブシステム210と通信し得る。代替構成では、異なるおよび/または追加の構成要素が、HMDシステム200中に含まれ得る。さらに、図2に示されている構成要素のうちの1つまたは複数に関連して説明される機能性は、いくつかの実施形態では、図2に関して説明されるものとは異なる様式で構成要素の間で分散され得る。
HMDデバイス205は、人工的にレンダリングされた仮想世界環境の仮想ビュー、および/またはコンピュータ生成された要素(たとえば、2次元(2D)または3次元(3D)画像、2Dまたは3Dビデオ、音など)を用いて拡張された物理的現実世界環境の拡張ビューを含む、様々なコンテンツをユーザに提示し得る。いくつかの実施形態では、提示されるコンテンツは、内部または外部デバイス(たとえば、スピーカーおよび/またはヘッドフォン)を介して提示されるオーディオを含み、内部または外部デバイスは、HMDデバイス205、処理サブシステム210、またはその両方からオーディオ情報を受信し、そのオーディオ情報に基づいてオーディオデータを提示する。いくつかの実施形態では、そのようなスピーカーおよび/またはヘッドフォンは、HMDデバイス205に統合されるかまたは解放可能に結合またはアタッチされ得る。HMDデバイス205は、1つまたは複数の本体を備え得、これらの本体は、剛性的にまたは非剛性的に互いに結合され得る。剛体間の剛性結合は、結合された剛体が単一の剛性エンティティとして働くことを引き起こし得る。対照的に、剛体間の非剛性結合は、剛体が互いに対して移動することを可能にし得る。HMDデバイス205の一実施形態は、図3に示されているHMDデバイス300であり、以下でさらに詳細に説明される。
いくつかの例では、HMDデバイス205は、深度検知サブシステム220(または深度カメラシステム)、電子ディスプレイ225、1つまたは複数のカメラを含む画像キャプチャサブシステム230、1つまたは複数の位置センサー235、および/または慣性測定ユニット(IMU)240を含み得る。HMDデバイス205の他の実施形態は、ユーザの視線を推定するためにHMDデバイス205のユーザの眼を追跡するように構成された随意の視標追跡または視線推定システムを含み得る。随意の可変焦点モジュールが、視標追跡システムおよび他の構成要素から取得された決定された視標追跡情報に基づいて、電子ディスプレイ225上に表示される1つまたは複数の画像の焦点を調整するように構成され得る。HMDデバイス205のいくつかの実施形態は、図2に関連して説明されるものとは異なる構成要素を有し得る。
深度検知サブシステム220は、HMDデバイス205の一部または全部を囲むローカル現実世界エリアまたは環境を特徴づける、および/あるいはローカルエリア内の深度検知サブシステム220の(および、それによりHMDデバイス205の)位置、速度、または位置を特徴づける深度情報を説明するデータをキャプチャし得る。深度検知サブシステム220は、収集されたデータを使用して(たとえば、1つまたは複数のコンピュータビジョン方式またはアルゴリズムに従って、キャプチャされた光に基づいて、構造化光パターンの一部分を処理することによって、飛行時間(ToF)イメージング、同時位置特定およびマッピング(SLAM:simultaneous localization and mapping)によってなど)深度情報を算出することができるか、あるいは深度検知サブシステム220は、深度検知サブシステム220からのデータを使用して深度情報を決定することができる処理サブシステム210の外部実装などの別のデバイスに、このデータを送信することができる。
電子ディスプレイ225は、処理サブシステム210から受信されたデータに従って、2次元または3次元画像をユーザに表示し得る。様々な実施形態では、電子ディスプレイ225は、単一の電子ディスプレイまたは複数の電子ディスプレイ(たとえば、ユーザの各眼のためのディスプレイ)を含む。電子ディスプレイ225の例は、液晶ディスプレイ(LCD)、有機発光ダイオード(OLED)ディスプレイ、無機発光ダイオード(ILED)ディスプレイ、アクティブマトリックス有機発光ダイオード(AMOLED)ディスプレイ、透明有機発光ダイオード(TOLED)ディスプレイ、別の好適なディスプレイ、またはそれらの何らかの組み合わせを含み得る。電子ディスプレイ225は、ユーザが電子ディスプレイ225を通してローカル環境を見ることができないように、不透明であり得る。
画像キャプチャサブシステム230は、ローカル環境から画像データをキャプチャおよび収集する1つまたは複数の光学画像センサーまたはカメラを含み得る。いくつかの実施形態では、画像キャプチャサブシステム230中に含まれるセンサーは、ローカル環境の立体視ビューを提供し得、この立体視ビューは、処理サブシステム210によって、ローカル環境、ならびに/またはローカル環境内のHMDデバイス205の位置および配向を特徴づける、画像データを生成するために使用され得る。たとえば、画像キャプチャサブシステム230は、同時位置特定およびマッピング(SLAM)カメラ、またはユーザの眼によってキャプチャされ得るよりも広い視野をキャプチャする広角レンズシステムを含む他のカメラを含み得る。本明細書で説明されるように、画像キャプチャサブシステム230は、HMDシステム200が境界定義状態にあるとき、電子ディスプレイ225を介してユーザに表示される現実世界環境のパススルービューを提供し得る。
いくつかの実施形態では、処理サブシステム210は、画像キャプチャサブシステム230のレンズシステムによって、および/あるいはユーザの眼の間の平均的な分離距離よりも著しく大きいかまたは著しく小さい2つの画像センサー間の分離距離によって引き起こされた、ひずみを除去するために、画像キャプチャサブシステム230によってキャプチャされた画像を処理し得る。たとえば、画像キャプチャサブシステム230がSLAMカメラシステムであるかまたはSLAMカメラシステムの一部であるとき、画像キャプチャサブシステム230からの直接画像は、補正されていないフォーマットで示された場合、ユーザにとってひずんでいるように見えることがある。画像補正または補償は、画像を補正し、より自然な外観でユーザに提示するために、処理サブシステム210によって実施され得、その結果、画像は、ユーザにとってユーザがHMDデバイス205の電子ディスプレイ225を通して見ているかのように見える。いくつかの実施形態では、画像キャプチャサブシステム230は、ローカル環境のパススルービューを提供するように(視野、分離距離などの観点から)適応されたレンズを有する、1つまたは複数の画像センサーを含み得る。画像キャプチャサブシステム230は、色画像またはモノクロ画像をキャプチャし得る。
IMU240は、いくつかの例では、位置センサー235のうちの1つまたは複数から受信された測定信号に基づいて、および深度検知サブシステム220および/または画像キャプチャサブシステム230から受信された深度情報から、HMDデバイス205の位置および/または配向を示すデータを生成する電子サブシステムを表し得る。たとえば、位置センサー235は、HMDデバイス205の運動に応答して1つまたは複数の測定信号を生成する。位置センサー235の例は、1つまたは複数の加速度計、1つまたは複数のジャイロスコープ、1つまたは複数の磁力計、運動を検出する別の好適なタイプのセンサー、IMU240のエラー補正のために使用されるタイプのセンサー、またはそれらの何らかの組合せを含む。位置センサー235は、IMU240の外部に、IMU240の内部に、またはそれらの何らかの組合せで位置し得る。
1つまたは複数の位置センサー235からの1つまたは複数の測定信号に基づいて、IMU240は、HMDデバイス205の初期位置および/または配向に対する、HMDデバイス205の推定された現在の位置、高度、および/または配向を示すデータを生成し得る。たとえば、位置センサー235は、並進運動(前/後、上/下、左/右)を測定するための複数の加速度計と、回転運動(たとえば、ピッチ、ヨー、ロール)を測定するための複数のジャイロスコープとを含み得る。本明細書で説明されるように、画像キャプチャサブシステム230および/または深度検知サブシステム220は、HMDデバイス205が使用される現実世界環境に対するHMDデバイス205の推定された現在の位置および/または配向を示すデータを生成し得る。
I/Oインターフェース215は、ユーザが、アクション要求を送り、処理サブシステム210および/または方向インジケータ270からの応答を受信することを可能にする、サブシステムまたはデバイスを表し得る。いくつかの実施形態では、方向インジケータ270は、方向インジケータ270のセンサーによって検知された配向および/または位置データなど、入力をI/Oインターフェース215に提供するためにユーザによって操作され得る、ハンドヘルドコントローラまたは他のデバイスを備え得る。他の実施形態では、方向インジケータ270は、I/Oインターフェース215に受動入力を提供し得る。たとえば、方向インジケータ270は、ユーザの指または手、手袋または他の装着可能な物体、ハンドヘルド物体、ユーザの眼および/または視線、ならびに/あるいは方向インジケータ270に対する配向および/または位置データを決定するためにHMDシステム200のセンサーによって検出され得る別のユーザ操作可能な物体を含み得る。いくつかの実施形態では、I/Oインターフェース215は、2つ以上の方向インジケータ270との通信を容易にし得る。たとえば、ユーザは、各手において1つずつ、2つの方向インジケータ270を有し得る。アクション要求は、いくつかの例では、特定のアクションを実施するための要求を表し得る。たとえば、アクション要求は、画像データまたはビデオデータのキャプチャを開始または終了するための命令、あるいはアプリケーション内で特定のアクションを実施するか、境界定義状態を開始または終了するための命令であり得る。I/Oインターフェース215は、1つまたは複数の入力デバイスを含むか、または1つまたは複数の入力デバイスとの通信を可能にし得る。例示的な入力デバイスは、キーボード、マウス、ハンドヘルドコントローラ、またはアクション要求を受信し、アクション要求を処理サブシステム210に通信するための任意の他の好適なデバイスを含み得る。
I/Oインターフェース215によって受信されたアクション要求は、処理サブシステム210に通信され得、処理サブシステム210は、アクション要求に対応するアクションを実施し得る。いくつかの実施形態では、方向インジケータ270は、初期位置に対する方向インジケータ270の推定された位置を示す慣性データをキャプチャするIMU240を含む。いくつかの実施形態では、I/Oインターフェース215および/または方向インジケータ270は、処理サブシステム210および/またはHMDデバイス205から受信された命令に従って、ユーザに触覚フィードバックを提供し得る。たとえば、アクション要求が受信されたときに触覚フィードバックが提供されるか、または処理サブシステム210がアクションを実施するときに、処理サブシステム210がI/Oインターフェース215に命令を通信して、I/Oインターフェース215が触覚フィードバックを生成するか、触覚フィードバックの生成を指令することを引き起こす。
処理サブシステム210は、深度検知サブシステム220、画像キャプチャサブシステム230、I/Oインターフェース215、および方向インジケータ270のうちの1つまたは複数から受信された情報に従って、HMDデバイス205にコンテンツを提供する、1つまたは複数の処理デバイスまたは物理プロセッサを含み得る。図2に示されている例では、処理サブシステム210は、エンジン260と、アプリケーションストア250と、追跡モジュール255とを含む。処理サブシステム210のいくつかの実施形態は、図2に関連して説明されるものとは異なるモジュールまたは構成要素を有する。同様に、以下でさらに説明される機能は、図2に関連して説明されるものとは異なる様式でHMDシステム200の構成要素の間で分散され得る。
アプリケーションストア250は、処理サブシステム210による実行のための1つまたは複数のアプリケーションを記憶し得る。アプリケーションは、いくつかの例では、プロセッサによって実行されたとき、ユーザへの提示のためのコンテンツを生成する命令のグループを表し得る。アプリケーションによって生成されたコンテンツは、HMDデバイス205または方向インジケータ270の移動を介してユーザから受信された入力に応答して生成され得る。アプリケーションの例は、ゲームアプリケーション、会議アプリケーション、ビデオ再生アプリケーション、または他の好適なアプリケーションを含む。
追跡モジュール255は、1つまたは複数の較正パラメータを使用してHMDシステム200を較正し得、HMDデバイス205または方向インジケータ270の位置の決定におけるエラーを低減するために、1つまたは複数の較正パラメータを調整し得る。たとえば、追跡モジュール255は、深度検知サブシステム220によってキャプチャされた構造化光要素の位置をより正確に決定するために、深度検知サブシステム220の焦点を調節するための較正パラメータを深度検知サブシステム220に通信し得る。また、追跡モジュール255によって実施される較正は、HMDデバイス205中のIMU240および/または方向インジケータ270中に含まれる別のIMU240から受信された情報を考慮し得る。さらに、HMDデバイス205の追跡が失われた(たとえば、深度検知サブシステム220が、少なくともしきい値数の構造化光要素の見通し線を失った)場合、追跡モジュール255は、HMDシステム200の一部または全部を再較正し得る。
追跡モジュール255は、深度検知サブシステム220、画像キャプチャサブシステム230、1つまたは複数の位置センサー235、IMU240、またはそれらの何らかの組合せからの情報を使用して、HMDデバイス205の移動または方向インジケータ270の移動を追跡し得る。たとえば、追跡モジュール255は、HMDデバイス205で収集された情報に基づいて、現実世界環境のマッピングにおいてHMDデバイス205の基準ポイントの位置を決定し得る。さらに、いくつかの実施形態では、追跡モジュール255は、HMDデバイス205および/または方向インジケータ270の将来の位置および/または配向を予測するために、IMU240からのHMDデバイス205および/または方向インジケータ270の位置および/または配向を指示するデータの部分を使用し得る。また、追跡モジュール255は、エンジン260に、HMDデバイス205またはI/Oインターフェース215の推定または予測された将来の位置を提供し得る。
いくつかの実施形態では、追跡モジュール255は、深度検知サブシステム220、画像キャプチャサブシステム230、および/または別のシステムによって観測され得る他の特徴を追跡し得る。たとえば、追跡モジュール255は、現実世界環境内のユーザの手のロケーションが知られ、利用され得るように、ユーザの手の一方または両方を追跡し得る。追跡モジュール255は、たとえば、方向インジケータ270がユーザの手を含むとき、ユーザの手のうちの一方の指のポインティング方向を決定するためにデータを受信し、処理し得る。追跡モジュール255はまた、ユーザの視線を追跡するために、HMDデバイス205のいくつかの実施形態に含まれる、1つまたは複数の視標追跡カメラから情報を受信し得る。
画像処理エンジン260は、HMDデバイス205から受信された情報に基づいて、HMDデバイス205の一部または全部を囲むエリア(すなわち、「ローカルエリア」または「現実世界環境」)の3次元マッピングを生成し得る。いくつかの実施形態では、エンジン260は、深度を算出する際に使用される技法について関連のある深度検知サブシステム220から受信された情報に基づいて、ローカルエリアの3次元マッピングのために深度情報を決定する。エンジン260は、構造化光から深度を算出する際に、1つまたは複数の技法を使用して深度情報を計算し得る。様々な実施形態では、エンジン260は、たとえば、ローカルエリアのモデルを更新するために、深度情報を使用し、更新されたモデルに部分的に基づいてコンテンツを生成する。
エンジン260はまた、HMDシステム200内のアプリケーションを実行し、追跡モジュール255から、HMDデバイス205の位置情報、加速度情報、速度情報、予測された将来の位置、またはそれらの何らかの組合せを受信し得る。受信された情報に基づいて、エンジン260は、ユーザへの提示のためにHMDデバイス205に提供すべきコンテンツを決定し得る。たとえば、受信された情報が、ユーザが左を見ていることを指示する場合、エンジン260は、仮想環境において、またはローカルエリアを追加のコンテンツで拡張する環境において、ユーザの移動に対応するHMDデバイス205のためのコンテンツを生成する。さらに、エンジン260は、I/Oインターフェース215および/または方向インジケータ270から受信されたアクション要求に応答して、処理サブシステム210上で実行しているアプリケーション内でアクションを実施し、そのアクションが実施されたというフィードバックをユーザに提供し得る。提供されたフィードバックは、HMDデバイス205を介した視覚または可聴フィードバック、あるいは方向インジケータ270を介した触覚フィードバックであり得る。
図1に戻ると、本明細書で説明されるシステムは、様々なやり方でステップ110を実施し得る。一例では、基準高度は、前に確立および記憶され得る。他の例では、基準高度は、基準高度を定義および/または確認するためにHMDデバイス300および/またはハンドヘルドコントローラ400を使用することなどによって、ユーザによって設定され得る。たとえば、HMDシステム200は、HMDデバイス300および/またはハンドヘルドコントローラ400から基準高度の指示を受信し得る。
図3は、HMDデバイス205の一実施形態による、HMDデバイス300の図である。HMDデバイス300は、イメージングサブシステムと、深度検知サブシステムとを含み得る。HMDデバイス300は、たとえば、VRシステム、ARシステム、MRシステムの一部、またはそれらの何らかの組合せであり得る。ARシステムおよび/またはMRシステムを説明する実施形態では、HMDデバイス300の前側302の部分が、可視帯域(約380ナノメートル(nm)~750nm)内で少なくとも部分的に透明である。より詳細には、HMDデバイス300の前側302とユーザの眼との間にあるHMDデバイス300の部分が、少なくとも部分的に透明(たとえば、部分透明電子ディスプレイ225)であり得る。他の実施形態では、前側302は不透明であり、ユーザが現実世界環境を見るのを防ぐ。HMDデバイス300は、電子ディスプレイ225および他の構成要素を格納する前方剛体305と、HMDデバイス300をユーザの頭部に固定するバンド310などのユーザアタッチメントシステムと、HMDデバイス300の位置および/または配向を特徴づけることができる基準ポイント315とを含み得る。
さらに、HMDデバイス300は、イメージング開口320と、照明開口325とを含み得る。深度検知サブシステム220中に含まれる照明源が、照明開口325を通して光(たとえば、構造化光)を放出し得る。深度検知サブシステム220のイメージングデバイスが、イメージング開口320を通して、ローカルエリアから反射または後方散乱される照明源からの光をキャプチャし得る。HMDデバイス300の実施形態は、図2の画像キャプチャサブシステム230の構成要素であり得るカメラ340Aとカメラ340Bとをさらに含み得る。カメラ340Aとカメラ340Bとは、ユーザの眼の間の平均分離距離とは異なる距離だけ互いに分離され得る。
前方剛体305は、1つまたは複数の電子ディスプレイ要素と、1つまたは複数の統合視標追跡システムと、IMU330と、1つまたは複数の位置センサー335と、基準ポイント315とを含み得る。IMU330は、位置センサー335のうちの1つまたは複数から受信された測定信号に基づいて高速較正データを生成する電子デバイスを表し得る。位置センサー335は、HMDデバイス300の運動に応答して1つまたは複数の測定信号を生成し得る。
図4は、いくつかの実施形態による、図2のHMDシステム200中に含まれる方向インジケータ270の一実施形態であり得る例示的なハンドヘルドコントローラ400の斜視図である。HMDシステム200は、コントローラ400のような1つまたは複数のハンドヘルドコントローラを含み得る。たとえば、HMDシステム200は、2つのハンドヘルドコントローラ400を含み得、ユーザの右手および左手の各々について1つのハンドヘルドコントローラ400がある。各ハンドヘルドコントローラ400は、HMDデバイス205に、および/またはコンピューティングデバイス(たとえば、パーソナルコンピュータ、処理サブシステム210など)に通信可能に結合され得る。ハンドヘルドコントローラ400は、任意の好適なワイヤレスおよび/またはワイヤード接続を介してHMDデバイス205に通信可能に結合され得る。
図4に示されているように、ハンドヘルドコントローラ400は、ユーザの手の内に収まるようにサイズ決定されたグリップ402を含み得る。ハンドヘルドコントローラ400は、HMDデバイス205に対するおよび/または現実世界環境に対するハンドヘルドコントローラ400の位置、配向、および/または移動を追跡するための追跡ループ404をも含み得る。いくつかの実施形態では、追跡ループ404は、追跡光(tracking light)406のアレイなど、1つまたは複数の追跡光を含み得る。追跡光406のアレイは、HMDシステム200を使用しながら360度の運動制御を提供するために、運動および位置追跡目的で使用される追跡LED(たとえば、赤外線(IR)LED)を含み得る。追跡光406は、仮想境界を「描画する」ために現実世界環境の床との交差ポイントが識別され得るように、コントローラ400の配向を決定するために利用され得る。コントローラ400は、コントローラ400の任意の好適な部分上に追跡光を含み得る。いくつかの例では、ハンドヘルドコントローラ400の追跡光406は、ほぼ700nmよりも大きい波長とほぼ900nmよりも小さい波長とを有する光を放出し得る。一実施形態では、ハンドヘルドコントローラ400の追跡光406は、ほぼ850nm(たとえば、ほぼ840nmから860nmの間、またはほぼ830nmから870nmの間)の波長を有する光を放出し得る。少なくとも1つの実施形態では、カメラ340Aおよび340Bが、ハンドヘルドコントローラ400上の追跡光406によって放出された光を受信し得、追跡モジュール255は、HMDデバイス205および/または、現実世界環境の基準フレームなど、別の基準フレームに対する、ハンドヘルドコントローラ400のロケーション、配向、および/または移動を決定するために、受信された光を利用し得る。
基準高度を定義するために、ユーザは、HMDシステム200と対話し得る。たとえば、ユーザは、ハンドヘルドコントローラ400を、現実世界環境のベース平面を提供し得る床と接触して配置するように促され得る。基準高度は、床に対して直角に定義され得る。いくつかの実施形態では、HMDデバイス300の構成要素が、HMDデバイス300の配向と、HMDデバイス300から床までの距離を特徴づける1つまたは複数の深度測定値とに基づいて、床からの高さを決定し得る。たとえば、HMDシステム200は、仮想境界定義プロセスの一部として、現実世界環境の床を見るようにユーザに促し得る。
いくつかの実施形態は、基準高度の確認を受信することをさらに含み得る。ユーザは、基準高度の指示を提示され得る。たとえば、HMDシステム200は、基準高度および/または基準高度からのHMDデバイス300の現在の高さに関連付けられた平面の視覚表現を示し得る。ユーザは、次いで、上記で説明されたように、基準高度を確認するか、または基準高度を定義/再定義し得る。
図1に戻ると、ステップ120において、本明細書で説明されるシステムのうちの1つまたは複数が、基準高度に対して、仮想世界環境のための仮想境界を確立し得る。たとえば、処理サブシステム210および/またはHMDデバイス205および/またはHMDデバイス300は、方向インジケータ270および/またはコントローラ400からの入力に基づいて、または前に定義された仮想境界を取り出すことに基づいて、仮想境界を決定し得る。
いくつかの実施形態では、「仮想境界」という用語は、ユーザの現実世界環境および/または仮想環境に対して定義される境界を指し得る。仮想境界の例は、限定はしないが、ユーザがVRおよび/またはARエクスペリエンス中に遭遇し得る現実世界環境中の障害から安全な距離離れて定義し得る、本明細書で説明される安全境界を含む。他の仮想境界は、センサーによって検出されるための理想的なロケーションを示す境界と、現実世界環境中のユーザの移動を制限するための境界と、仮想環境中の障害の配置および/またはクリアのために使用され得る境界と、他の使用のための境界とを含み得る。
本明細書で説明されるシステムは、様々なやり方でステップ120を実施し得る。一例では、仮想境界は、HMDシステム200に記憶されたデフォルト設定または前のユーザアクションなど、前に記憶された設定からロードされ得る。他の例では、ユーザは、たとえば、HMDシステム200を使用して仮想境界を定義し得る。
図5Aおよび図5Bは、いくつかの実施形態による、リビングルームなど、現実世界環境500中で図3のHMDデバイス300を着用し、図4のハンドヘルドコントローラ400を保持するユーザの、それぞれ、斜視図および上面図を提示する。現実世界環境500は、床502とも呼ばれるベース平面502と、壁504と総称される壁504A、504B、504C、および504Dとを含み得る。現実世界環境500は、ユーザのビューがHMDデバイス300によって遮断されるときに衝突リスクをもたらす室内の複数の物体または特徴をさらに含み得る。たとえば、環境500は、突出するマントルピース506Bを有する暖炉506Aと、テーブル506Cと、棚506Dとを含み得る。環境500は、図5Bに示されているように、ソファー506Eをさらに含み得る。物体および特徴506A、506B、506C、506D、および506Eは、壁504とともに、現実世界環境500の特徴506と呼ばれることがある。
いくつかの実施形態では、ユーザは、HMDデバイス300中に表示された仮想環境内を移動するために、現実世界環境500内を移動し得る。言い換えれば、ユーザが現実世界環境500内を移動するとき、HMDデバイス300の電子ディスプレイ225に示されている画像は、ユーザの移動に基づいて更新され得る。したがって、ユーザは、ユーザが現実世界環境500中を移動するとき、仮想環境に対して移動する。以下でより詳細に説明されるように、本明細書で説明されるシステムおよび方法の実施形態は、ユーザが(たとえば、HMDデバイス300によるユーザの現実世界ビューの遮断により)現実世界環境を見ることができないとき、ユーザが特徴506のいずれかと衝突するの防ぐために使用され得る仮想境界をユーザが定義することを可能にし得る。
図6Aおよび図6Bは、いくつかの実施形態による、仮想境界または安全境界を作り出すために図5Aおよび図5Bの現実世界環境500の再生600と対話するユーザの、それぞれ、斜視図および上面図を提示する。現実世界環境500のユーザのビューが、HMDデバイス300によってすっかりまたは部分的に遮断されることがあるので、現実世界の環境500の再生600は、HMDデバイス300の電子ディスプレイ225中でユーザに提供され得る。再生600は、現実世界の環境500のパススルービューを提供するために、画像キャプチャサブシステム230によって作り出され得る。いくつかの実施形態では、処理サブシステム210は、ひずみを除去し、現実世界環境500の改善されたビューを提供するために、画像キャプチャサブシステム230によってキャプチャされた画像に画像補正を実施し得る。たとえば、処理サブシステム210は、カメラ340Aおよび340Bのレンズによっておよび/またはカメラ340Aとカメラ340Bとの間の分離距離によって引き起こされるひずみを緩和するために、画像補正を実施し得る。
図6Aに示されているように、ユーザは、ユーザが仮想境界を定義し得る境界定義状態中に、交差ポイント602を選択するためにポインタまたは方向インジケータとしてコントローラ400を利用し得る。交差ポイント602は、ユーザによって保持および操作されるコントローラ400の配向および位置によって定義される、床502と仮想線604との交差部のロケーションとして定義され得る。仮想線604は、ユーザが床502上に仮想境界606を描画することができるように、HMDデバイス300中でユーザに表示され得る。ユーザがコントローラ400を操作するとき、床502に沿って延びる仮想境界606を形成するために、交差ポイント602のような、一連の交差ポイントが結合され得る。図6Bは、交差ポイント602と仮想線604と仮想境界606とを示す現実世界環境500の再生600内の上面図を示す。
図6Cは、いくつかの実施形態による、交差ポイント602がどのように定義され得るかを示す図である。現実世界環境500内のハンドヘルドコントローラの位置および配向は、IMUおよび/または位置トラッカなど、ハンドヘルドコントローラ400内に含まれるサブシステムに基づいて決定され得る。いくつかの事例では、ユーザは、HMDデバイス300中に表示されたメッセージによって、境界定義プロセスのために準備するためにハンドヘルドコントローラ400をベース平面または床502に接触して配置するように命令され得る。ユーザは、次いで、コントローラ400が床502と接触していることをHMDシステム200に示すために、コントローラ400上のボタンをアクティブ化するか、または所定の時間量の間、依然としてコントローラ400を保持する。ユーザは、次いで、立つように指示され、それによりHMDデバイス300とコントローラ400の両方は、変位D1だけ床502から離れて変位され得、変位D1は、床502のコントローラ400の高さまたは高度として使用され得る。いくつかの実施形態では、HMDデバイス300は、床502からのHMDデバイス300の高度と、HMDデバイス300とハンドヘルドコントローラ400との間の距離とを決定し得る。たとえば、深度検知サブシステム220は、構造化光を使用して、または立体視画像を使用する三角測量推定によって、床502からHMDデバイス300までの距離を決定し得る。HMDデバイス300とハンドヘルドコントローラ400との間の距離は、変位D1またはハンドヘルドコントローラ400の高度を決定するために、床502からのHMDデバイス300の高さから減算され得る。コントローラ400の配向は、コントローラ400の軸が床502とともに作る角度A1を決定するために使用され得る。コントローラ400のロケーションと変位D1と角度A1とを使用して、仮想線604と床502との交差のポイントは、交差ポイント602として使用され得る。コントローラ400を操作することによって、複数の交差ポイント602が識別され得、これらのポイント602は、仮想境界606を形成するために接続され得る。図6Cは、床502を基準高度として示しているが、他の実施形態では、基準高度は、現実世界環境中の別の平面に対して定義され得る。
図1に戻ると、ステップ130において、本明細書で説明されるシステムのうちの1つまたは複数が、ユーザから、仮想境界を修正したいという要求を受信し得る。たとえば、HMDシステム200は、コントローラ400を介してユーザから、仮想境界を修正したいという要求を受信し得る。
いくつかの実施形態では、HMDシステム200は、仮想境界を修正するための入力を監視するための境界修正状態に入り得る。「境界修正状態」という用語は、仮想境界がユーザによってその間修正され得る状態またはフェーズを指し得る。境界修正状態は、仮想境界がその間定義され得る境界定義状態と同じまたは同様のフェーズであるか、または別個のフェーズであり得る。境界修正状態は、もっぱら仮想境界を修正するためのHMDシステム200の固有モードであり得る。代替的に、境界修正状態は、HMDシステム200の他の動作状態と一体化され得る。
本明細書で説明されるシステムは、様々なやり方でステップ130を実施し得る。一例では、ユーザは仮想境界が不十分であり得ると通知され得、したがって、ユーザは境界修正状態を始動し得る。ユーザは、様々なやり方で仮想境界の不十分さに関して通知され得る。たとえば、ユーザは、HMDデバイス300などを通して、視覚または可聴通知を受信し得る。通知は、アイコンであり得るか、またはよりロバストな視覚インジケータであり得る。
いくつかの例では、本システムはまた、ヘッドマウントディスプレイシステムのイメージングシステムで現実世界環境のビューをキャプチャし得る。キャプチャされたビューは、レンズ誘発ひずみを有し得る。本システムは、現実世界環境の補償ビューを作り出すために、キャプチャされたビュー中のレンズ誘発ひずみを補正し得る。本システムは、仮想境界を現実世界環境の補償ビューに重ね合わせ、境界修正状態中に現実世界環境の補償ビューをヘッドマウントディスプレイシステムのディスプレイに表示し得る。図7Aおよび図7Bは、ユーザに提示される現実世界環境の補償ビューの例示的なシナリオを示す。
図7Aおよび図7Bは、いくつかの実施形態による、仮想境界606を作り出すために現実世界環境500の再生600と対話するユーザの、それぞれ、斜視図および上面図を提示する。仮想境界606は、境界領域608を定義し得る。境界領域608は、たとえばHMDデバイス300によって、仮想境界606によって定義された塗りつぶされた形状として表示され得る。境界領域608は、単色(solid color)など、仮想境界606と同様に表示され得るか、あるいは仮想境界606に対応する影付きまたは半透明色であり得る。
いくつかの例では、仮想境界606によって定義されたエリア、たとえば、境界領域608は、最小エリアしきい値と比較され得る。最小エリアしきい値は、ユーザが現実世界環境においてVRおよび/またはARシステムを安全に動作させることが予想され得る、最小平方フィート数など、最小エリアに対応し得る。最小エリアしきい値は、所定のまたはデフォルトの値であり得るか、あるいは現実世界環境において動的に決定され得る。最小エリアしきい値は、最小および/または最大の長さおよび/または幅など、寸法限界を含み得る。
いくつかの例では、最小エリアしきい値は、最小エリアしきい値のために満たされるべきまたは必要とされる平方フィート数の量など、明示的にユーザに提示され得る。他の例では、最小エリアしきい値は、最小エリアしきい値が満たされたときは成功色で、または最小エリアしきい値が満たされない場合は警告色で境界領域を表示することによって表され得る。たとえば、仮想境界606および/または境界領域608は、最小エリアしきい値が満たされたときは緑で表示され、最小エリアしきい値が満たされないときは赤で表示され得る。
仮想境界606が最小エリアしきい値を満たさないことがわかると、ユーザは、仮想境界を修正するために境界修正状態を始動し得る。代替的に、境界修正状態は、最小エリアしきい値が満たされない場合、自動的に始動され得る。たとえば、境界定義状態中に、仮想境界606が最小エリアしきい値を満たさない場合、境界修正状態は自動的に始動され得る。さらに、ユーザは、他の理由のために境界修正状態を始動し得る。たとえば、現実世界環境が変化することがあり、あるいは、ユーザがより小さいまたはより大きい境界領域を選好する場合など、ユーザが仮想境界を微調整することを望むことがある。
図1に戻ると、ステップ140において、本明細書で説明されるシステムのうちの1つまたは複数は、ユーザからの要求に応答して、配向データを生成するために方向インジケータの配向を監視する。たとえば、処理サブシステム210および/またはHMDデバイス205および/またはHMDデバイス300は、方向インジケータ270および/またはコントローラ400からの入力に基づいて配向データを決定し得る。いくつかの例では、配向データは、追加の入力データを含み、および/または追加の入力データに関連付けられ得る。たとえば、配向データは、基準高度に対する方向インジケータの高度データを含み得る。配向データは、方向インジケータの位置データを含み得る。
本明細書で説明されるシステムは、様々なやり方でステップ140を実施し得る。一例では、現実世界環境500内のハンドヘルドコントローラ400の位置および配向は、IMUおよび/または位置センサーなど、ハンドヘルドコントローラ400内に含まれるサブシステムに基づいて決定され得る。図6Cに関して上記で説明されたように、高度データを決定するためにD1が監視され、配向データを決定するためにA1が監視され得る。代替的に、高度データおよび配向データは、現実世界環境500中のコントローラ400を観察するカメラなど、コントローラ400の外部のセンサーから決定され得る。
図1に戻ると、ステップ150において、本明細書で説明されるシステムのうちの1つまたは複数が、基準高度と配向データとに基づいて仮想境界を修正し得る。たとえば、処理サブシステム210および/またはHMDデバイス205および/またはHMDデバイス300は、方向インジケータ270および/またはコントローラ400からの高度データおよび配向データと、基準高度とに基づいて、仮想境界を修正し得る。
本明細書で説明されるシステムは、様々なやり方でステップ150を実施し得る。一例では、平面と、高度データによって示された高度におけるおよび配向データによって示された配向におけるユーザデバイスから延びる仮想線との交差部が、決定され得る。図6Cに示されているように、コントローラ400のロケーション、D1、およびA1は、仮想線604がどこで始まるかを定義し得、仮想線604と床502との交差のポイントが、交差ポイント602を定義し得る。複数の交差ポイント602が仮想境界606をどのように定義し得るかと同様に、仮想境界606に対する修正は、1つまたは複数の交差ポイント602によって定義され得る。交差ポイント602は、仮想境界606に対する伸張を定義し得る。
仮想境界は、様々なやり方で修正され得る。たとえば、図7Aおよび図7Bは、仮想境界606がどのように修正され得るかを示す。仮想境界606は最小エリアしきい値を満たさないことがあり、境界領域608が警告色で表示され得る。ユーザは、1つまたは複数の交差ポイント602によって定義され得る修正線610を定義するために、コントローラ400を操作し得る。図7Aおよび図7Bに完全には示されていないが、修正線610は、最小エリアしきい値を満たすために、境界領域608を包囲する領域の輪郭を描き得る。
仮想境界は、仮想境界に部分を加えることによって修正され得る。たとえば、境界領域608に追加の領域を加えるために仮想境界606の部分が延長され得る。追加の領域は、境界領域608の側部に接続されるなど、境界領域608に接続され得るか、あるいは、境界領域608に関連付けられた、切り離されたまたは場合によっては不連続の領域であり得る。追加の領域は、境界領域608を部分的にまたは完全に包囲し得る。
他の例では、仮想境界を修正することは、仮想境界から部分を減じることを含み得る。たとえば、境界修正状態は、部分を加えるための加える状態(addition state)と、仮想境界から部分を除去するための減じる状態(subtraction state)とを含み得る。ユーザは、仮想境界を所望の形状に定義および修正するために、加える状態と減じる状態との間をトグルし得る。たとえば、ユーザは、加える状態に入って、仮想境界606に加えるものを描画するために、コントローラ400を使用し得る。ユーザは、減じる状態に入って、仮想境界606から部分を切り取るために、コントローラ400を使用し得る。
また他の例では、仮想境界を修正することは、仮想境界をリセットすることによって達成され得る。たとえば、ユーザは、仮想境界をリセットするための指示を送り得る。ユーザは、次いで、空の状態から仮想境界を定義し得る。代替的に、ユーザは、1つまたは複数の修正を取り消す/やり直すことが可能であり得る。
修正された仮想境界は、最小エリアしきい値と比較され得る。比較は、たとえば、ユーザが修正を描画するときにリアルタイムで、動的に行われ得る。不完全なループおよび/または接続されていない部分は、エリアを推定する目的で、たとえば、接続されていない部分を接続するための最短距離直線で、自動的に接続され得る。したがって、ユーザは、最小エリアしきい値がいつ満たされるかが、リアルタイムでわかり得る。代替的に、ユーザが境界修正状態を終えることを示すとき、最小エリア比較が行われ得る。いくつかの例では、ユーザは、最小エリアしきい値が満たされない限り、境界修正状態を終えないことがある。
さらに、境界修正状態が終わるとき、仮想境界はエラーについて検査され得る。エラーは、たとえば、閉じられていないループ、ゼロエリア部分、ユーザが適度に使用するには小さすぎる部分(最小部分エリアしきい値と比較され得る)、および他のエラーを含み得る。いくつかの例では、エラーは、自動的に補正され得る。たとえば、閉じられていないループが接続され得る、問題になる部分が除去され得るなどである。他の例では、ユーザはエラーに関してアラートされ得、いくつかの例では、境界修正状態が自動的に再始動され得る。いくつかの例では、仮想境界中で検出されるエラーがなくなるまで、境界修正状態は終わらないことがある。
ユーザが、最小エリアしきい値を満たすことを必要とし得る、境界修正状態を完了することと、仮想境界を確定することとを行った後、ユーザは、仮想境界と対話し得る。図8Aおよび図8Bは、いくつかの実施形態による、仮想環境中の定義された仮想境界と対話するユーザの、それぞれ、斜視図および上面図である。図8Aおよび図8Bに示されているように、仮想環境800は、HMDデバイス300においてユーザに表示され得る。仮想環境800は、ユーザが移動することができるキャプチャされたシーン、またはビデオゲームなどにおける人工環境を表し得る。ユーザは、現実世界環境500内を移動することによって、仮想環境800内を移動し得る。仮想環境は、仮想境界606の視覚指示を含み得る。言い換えれば、HMDデバイス300の視野が仮想境界606を含むときはいつでも、ユーザが仮想境界606を見ることが可能であるように、仮想境界606は、可視的にレンダリングされ、ユーザに提示され得る。いくつかの実施形態では、ユーザは、仮想境界606が常に現れるようにするための設定、またはユーザがしきい値距離内にいるときのみ仮想境界606が現れるようにするための設定を選択し得る。そのようなしきい値距離は、速度またはユーザの移動に依存し、および/あるいは境界に最も近いユーザまたはHMDシステム200の特定の部分に依存し得る。
いくつかの実施形態では、ユーザが仮想境界606に接近するとき、仮想境界606への、したがって衝突リスクをもたらす現実世界環境500内の特徴506へのユーザの近接度についてユーザにアラートするために、(要素802Aおよび802Bとして示される)境界壁802が、HMDデバイス300においてレンダリングされ得る。境界壁802は、一連の垂直または水平バー、線のグリッド、ドットのグリッドなどとしてレンダリングされ得、それにより、ユーザは境界壁802を通して仮想環境800の一部分を観察し続けることが可能になり得る。他の実施形態では、境界壁802は、仮想環境800の一部分のユーザのビューを完全に「遮る」様式でレンダリングされ得る。いくつかの実施形態では、境界壁802のレンダリングは、ユーザが仮想境界606に近づくにつれて増加する量のユーザのビューを遮断し得る。他の例では、境界壁802は、(たとえば、画像キャプチャサブシステム230によって提供される)現実世界環境のパススルービューの上部にオーバーレイされるかまたは場合によってはレンダリングされる。
図8Aおよび図8Bに示されているように、別個の壁部分が、HMDデバイス300においてレンダリングされ得る。したがって、境界壁802Aおよび境界壁802Bが示される。境界壁802Aは、ユーザと仮想境界606との間の距離が距離D2よりも小さいかまたはそれに等しいとき、レンダリングされ得る。距離D2は、ユーザによって、または自動的にHMDシステム200によって構成可能であり得る。たとえば、いくつかの実施形態において、2フィートから5フィートの間のしきい値距離が使用され得る。しきい値距離は、いくつかの実施形態では、ユーザの速度の関数であり得る。境界壁802Bは、コントローラ400と仮想境界606との間の距離D3に基づいて、またはHMDデバイス300と仮想境界606との間の距離D4に基づいて、HMDデバイス300においてレンダリングされ得る。いくつかの実装形態では、ユーザの手の位置が監視され得、ユーザが1つまたは複数のコントローラ400を保持しているか否かにかかわらず、ユーザの1つまたは複数の手が仮想境界606に近すぎると決定されたとき、境界壁802がユーザに表示され得る。
いくつかの実施形態では、方法100は、現実世界環境の物理的定義を生成する動作と、仮想境界が定義された現実世界環境の物理的定義に関連する、任意の修正を含む仮想境界をメモリデバイスに記憶する動作とをさらに含み得、その結果、ユーザ定義された仮想境界は、再ロードされ、その仮想境界が定義されたのと同じ現実世界環境中で再び使用され得る。図9に示されているように、メモリデバイス900と呼ばれるメモリデバイスは、HMDシステム200中に含まれ得る。メモリデバイス900は、複数の物理的定義902A~Dを含んでいるテーブルまたは仮想境界ライブラリを記憶し得る。物理的定義902A~Dの各々は、それぞれ、仮想境界904A~Dに関連付けられ得る。いくつかの実施形態では、仮想境界ライブラリは、たとえば、ユーザが修正を取り消す/やり直すことを可能にし得る修正の履歴を決定するために、エントリが修正に対応するかどうかさらにを示し得る。方法100は、現実世界環境検査を実施する動作を含み得、これは、現実世界環境の仮物理的定義を生成することと、次いでその定義を、メモリデバイス900中に含まれる物理的定義902A~Dと比較することとを含み得る。比較の結果として一致が見つけられたとき、処理サブシステム210は、HMDシステム200による、対応する仮想境界の使用を許可し得る。処理サブシステム210は、現実世界環境検査の結果、一致が見つけられないとき、HMDシステム200による仮想境界の使用を拒否し、ユーザが新しい仮想境界を定義することを必要とし得る。
本明細書で説明される態様に従って、VRシステムのユーザは、前に定義された仮想境界を修正し得る。HMDデバイスを着用して、ユーザは、現実世界環境のパススルービュー上にオーバーレイされた仮想境界を観察し得る。ユーザは、仮想境界に対する修正を描画するためにハンドヘルドコントローラを使用し得る。HMDデバイスおよびハンドヘルドコントローラは、ユーザが、修正を「描画する」かまたは「ペイントブラッシングする」ことによって仮想境界を直観的に修正することを可能にし得る。ユーザが仮想境界を修正することを可能にすることは、補正が必要とされる場合、ユーザが完全に最初から仮想境界を再定義しなければならないことを防ぎ得る。ユーザはまた、仮想境界に対して補正が必要とされる場合、視覚的におよび/または聴覚的に通知され得、次いでリアルタイムで仮想境界を補正し得る。したがって、ユーザは、仮想境界を定義および修正するためのより効率的なおよび直観的なインターフェースを提示され得る。
上記で詳述されたように、本明細書で説明および/または示されるコンピューティングデバイスおよびシステムは、本明細書で説明されるモジュール内に含まれているものなど、コンピュータ可読命令を実行することが可能な任意のタイプまたは形態のコンピューティングデバイスまたはシステムを広く表す。それらの最も基本的な構成では、(1つまたは複数の)これらのコンピューティングデバイスは、各々、少なくとも1つのメモリデバイスと少なくとも1つの物理プロセッサとを含み得る。
いくつかの例では、「メモリデバイス」という用語は、概して、データおよび/またはコンピュータ可読命令を記憶することが可能な、任意のタイプまたは形態の揮発性または不揮発性記憶デバイスまたは媒体を指す。一例では、メモリデバイスは、本明細書で説明されるモジュールのうちの1つまたは複数を記憶、ロード、および/または維持し得る。メモリデバイスの例は、限定はしないが、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、フラッシュメモリ、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、光ディスクドライブ、キャッシュ、上記のうちの1つまたは複数の変形形態または組合せ、あるいは任意の他の好適な記憶メモリを含む。
いくつかの例では、「物理プロセッサ」という用語は、概して、コンピュータ可読命令を解釈および/または実行することが可能な任意のタイプまたは形態のハードウェア実装処理ユニットを指す。一例では、物理プロセッサは、上記で説明されたメモリデバイスに記憶された1つまたは複数のモジュールにアクセスし、および/またはそれらのモジュールを変更し得る。物理プロセッサの例は、限定はしないが、マイクロプロセッサ、マイクロコントローラ、中央処理ユニット(CPU)、ソフトコアプロセッサを実装するフィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、上記のうちの1つまたは複数の部分、上記のうちの1つまたは複数の変形形態または組合せ、あるいは任意の他の好適な物理プロセッサを含む。
別個の要素として示されているが、本明細書で説明および/または示されるモジュールは、単一のモジュールまたはアプリケーションの部分を表し得る。さらに、いくつかの実施形態では、これらのモジュールのうちの1つまたは複数は、コンピューティングデバイスによって実行されたとき、コンピューティングデバイスに1つまたは複数のタスクを実施させ得る、1つまたは複数のソフトウェアアプリケーションまたはプログラムを表し得る。たとえば、本明細書で説明および/または示されるモジュールのうちの1つまたは複数は、本明細書で説明および/または示されるコンピューティングデバイスまたはシステムのうちの1つまたは複数上で稼働するように記憶および構成されたモジュールを表し得る。これらのモジュールのうちの1つまたは複数は、1つまたは複数のタスクを実施するように構成された1つまたは複数の専用コンピュータのすべてまたは部分をも表し得る。
さらに、本明細書で説明されるモジュールのうちの1つまたは複数は、データ、物理デバイス、および/または物理デバイスの表現をある形態から別の形態に変換し得る。たとえば、本明細書で具陳されるモジュールのうちの1つまたは複数は、変換されるべきセンサーデータを受信し、センサーデータを変換し、仮想境界を表示するために変換の結果を出力し、仮想境界を定義および/または修正するために変換の結果を使用し、仮想境界を確立するために変換の結果を記憶し得る。追加または代替として、本明細書で具陳されるモジュールのうちの1つまたは複数は、コンピューティングデバイス上で実行すること、コンピューティングデバイスにデータを記憶すること、および/または場合によっては、コンピューティングデバイスと対話することによって、物理コンピューティングデバイスのプロセッサ、揮発性メモリ、不揮発性メモリ、および/または任意の他の部分をある形態から別の形態に変換し得る。
いくつかの実施形態では、「コンピュータ可読媒体」という用語は、概して、コンピュータ可読命令を記憶または搬送することが可能な任意の形態のデバイス、キャリア、または媒体を指す。コンピュータ可読媒体の例は、限定はしないが、搬送波など、送信タイプ媒体、磁気記憶媒体など、非一時的タイプの媒体(たとえば、ハードディスクドライブ、テープドライブ、およびフロッピーディスク)、光記憶媒体(たとえば、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、およびBLU-RAYディスク)、電子記憶媒体(たとえば、ソリッドステートドライブおよびフラッシュメディア)、および他の配信システムを含む。
本開示の実施形態は、人工現実システムを含むか、または人工現実システムとともに実装され得る。人工現実は、ユーザへの提示の前に何らかの様式で調整された形式の現実であり、これは、たとえば、仮想現実(VR)、拡張現実(AR)、複合現実(MR)、ハイブリッド現実、あるいはそれらの何らかの組合せおよび/または派生物を含み得る。人工現実コンテンツは、完全に生成されたコンテンツ、またはキャプチャされた(たとえば、現実世界の)コンテンツと組み合わせられた生成されたコンテンツを含み得る。人工現実コンテンツは、ビデオ、オーディオ、触覚フィードバック、またはそれらの何らかの組合せを含み得、それらのいずれも、単一のチャネルまたは複数のチャネルにおいて提示され得る(観察者に3次元効果をもたらすステレオビデオなど)。加えて、いくつかの実施形態では、人工現実は、たとえば、人工現実におけるコンテンツを作り出すために使用される、および/または人工現実において別様に使用される(たとえば、人工現実におけるアクティビティを実施する)アプリケーション、製品、アクセサリ、サービス、またはそれらの何らかの組合せにも関連付けられ得る。人工現実コンテンツを提供する人工現実システムは、ホストコンピュータシステムに接続されたヘッドマウントディスプレイ(HMD)、独立型HMD、モバイルデバイスまたはコンピューティングシステム、あるいは、1人または複数の観察者に人工現実コンテンツを提供することが可能な任意の他のハードウェアプラットフォームを含む、様々なプラットフォーム上に実装され得る。
本明細書で説明および/または示されるステップのプロセスパラメータおよびシーケンスは、単に例として与えられ、必要に応じて変動させられ得る。たとえば、本明細書で示されるおよび/または説明されるステップは特定の順序で示されるかまたは説明され得るが、これらのステップは、必ずしも、示されるかまたは説明される順序で実施される必要がない。本明細書で説明および/または示される様々な例示的な方法はまた、本明細書で説明されるかまたは示されるステップのうちの1つまたは複数を省略するか、あるいは、開示されるものに加えて追加のステップを含み得る。
先行する説明は、他の当業者が、本明細書で開示される例示的な実施形態の様々な態様を最も良く利用することを可能にするために提供された。この例示的な説明は、網羅的であること、または開示される正確な形態に限定されることは意図されない。多くの変更および変形が、本開示の趣旨および範囲から逸脱することなく可能である。本明細書で開示される実施形態は、あらゆる点で、限定的ではなく例示的であると見なされるべきである。本開示の範囲を決定する際に、添付の特許請求の範囲およびそれらの均等物の参照が行われるべきである。
別段に記載されていない限り、本明細書および特許請求の範囲において使用される「に接続された(connected to)」および「に結合された(coupled to)」という用語(およびそれらの派生語)は、直接接続と間接接続(すなわち、他の要素または構成要素を介したもの)の両方を許容するものとして解釈されるべきである。さらに、本明細書および特許請求の範囲において使用される「a」または「an」という用語は、「のうちの少なくとも1つ」を意味するものとして解釈されるべきである。最後に、使いやすさのために、本明細書および特許請求の範囲において使用される「含む(including)」および「有する(having)」という用語(およびそれらの派生語)は、「備える、含む(comprising)」という単語と交換可能であり、その単語と同じ意味を有する。

Claims (35)

  1. 現実世界環境の平面を表す基準高度の指示を受信することと、
    前記基準高度に対して、仮想世界環境についての仮想境界を確立することと、
    前記仮想境界を修正したいというユーザからの要求を受信することと、
    前記ユーザからの前記要求に応答して、配向データを生成するために方向インジケータの配向を監視することと、
    前記基準高度と前記配向データとに基づいて前記仮想境界を修正することと
    を含む、方法。
  2. 前記配向データが、前記基準高度に対する前記方向インジケータの高度の高度データを含む、請求項1に記載の方法。
  3. 前記仮想境界を修正することが、前記平面と、前記高度データによって示された高度におけるおよび前記配向データによって示された前記配向における前記方向インジケータから延びる仮想線との交差部を決定することを含む、請求項2に記載の方法。
  4. ヘッドマウントディスプレイシステムのイメージングシステムで前記現実世界環境のビューをキャプチャすることであって、前記キャプチャされたビューがレンズ誘発ひずみを有する、前記現実世界環境のビューをキャプチャすることと、
    前記現実世界環境の補償ビューを作り出すために、前記キャプチャされたビュー中の前記レンズ誘発ひずみを補正することと、
    前記仮想境界を前記現実世界環境の前記補償ビューに重ね合わせることと、
    前記現実世界環境の前記補償ビューを前記ヘッドマウントディスプレイシステムのディスプレイに表示することと
    をさらに含む、請求項1に記載の方法。
  5. 前記仮想境界が最小エリアしきい値を満たすとき、前記仮想境界が成功色で表示され、前記仮想境界が前記最小エリアしきい値を満たさないとき、前記仮想境界が警告色で表示される、請求項4に記載の方法。
  6. 前記仮想境界が、前記仮想境界によって定義された塗りつぶされた形状として表示される、請求項4に記載の方法。
  7. 前記仮想境界を修正することが、前記仮想境界に部分を加えること、または前記仮想境界から部分を減じることを含む、請求項1に記載の方法。
  8. 前記基準高度の確認を受信することをさらに含む、請求項1に記載の方法。
  9. 前記仮想境界をリセットするための指示を受信することをさらに含む、請求項1に記載の方法。
  10. 命令が記憶された有形非一時的コンピュータ可読記憶媒体であって、前記命令が、処理システムによって実行されたとき、前記処理システムに、
    現実世界環境の平面を表す基準高度の指示を受信することと、
    前記基準高度に対して、仮想世界環境についての仮想境界を確立することと、
    配向データを生成するために方向インジケータの配向を監視することと、
    前記基準高度と前記配向データとに基づいて前記仮想境界を修正することと
    を含む動作を実施させる、有形非一時的コンピュータ可読記憶媒体。
  11. 前記配向データが、前記基準高度に対する前記方向インジケータの高度の高度データを含む、請求項10に記載の非一時的コンピュータ可読記憶媒体。
  12. 前記仮想境界を修正することが、前記平面と、前記高度データによって示された高度におけるおよび前記配向データによって示された前記配向における前記方向インジケータから延びる仮想線との交差部を決定することを含む、請求項11に記載の非一時的コンピュータ可読記憶媒体。
  13. ヘッドマウントディスプレイシステムのイメージングシステムで前記現実世界環境のビューをキャプチャすることであって、前記キャプチャされたビューがレンズ誘発ひずみを有する、前記現実世界環境のビューをキャプチャすることと、
    前記現実世界環境の補償ビューを作り出すために、前記キャプチャされたビュー中の前記レンズ誘発ひずみを補正することと、
    前記仮想境界を、前記仮想境界によって定義された塗りつぶされた形状として、前記現実世界環境の前記補償ビューに重ね合わせることと、
    前記現実世界環境の前記補償ビューを前記ヘッドマウントディスプレイシステムのディスプレイに表示することと
    を行うための命令をさらに含む、請求項10に記載の非一時的コンピュータ可読記憶媒体。
  14. 前記仮想境界が最小エリアしきい値を満たすとき、前記仮想境界が成功色で表示され、前記仮想境界が前記最小エリアしきい値を満たさないとき、前記仮想境界が警告色で表示される、請求項13に記載の非一時的コンピュータ可読記憶媒体。
  15. 前記仮想境界を修正することが、前記仮想境界に部分を加えること、または前記仮想境界から部分を減じることを含む、請求項10に記載の非一時的コンピュータ可読記憶媒体。
  16. ユーザアタッチメントシステムに固定されたディスプレイと、
    方向インジケータと、
    処理システムと
    を備えるヘッドマウントディスプレイシステムであって、前記処理システムが、
    現実世界環境の平面を表す基準高度を識別することと、
    前記基準高度に対して、仮想世界環境についての仮想境界を確立することと、
    前記基準高度と前記方向インジケータの配向を特徴づける配向データとに基づいて前記仮想境界を修正することと
    を行うように構成された、ヘッドマウントディスプレイシステム。
  17. 前記処理システムは、
    ヘッドマウントディスプレイシステムのイメージングシステムで前記現実世界環境のビューをキャプチャすることであって、前記キャプチャされたビューがレンズ誘発ひずみを有する、前記現実世界環境のビューをキャプチャすることと、
    前記現実世界環境の補償ビューを作り出すために、前記キャプチャされたビュー中の前記レンズ誘発ひずみを補正することと、
    前記仮想境界を、前記仮想境界によって定義された塗りつぶされた形状として、前記現実世界環境の前記補償ビューに重ね合わせることと、
    前記現実世界環境の前記補償ビューを前記ヘッドマウントディスプレイシステムのディスプレイに表示することと
    を行うようにさらに構成された、請求項16に記載のヘッドマウントディスプレイシステム。
  18. 前記仮想境界が最小エリアしきい値を満たすとき、前記仮想境界が成功色で表示され、前記仮想境界が前記最小エリアしきい値を満たさないとき、前記仮想境界が警告色で表示される、請求項17に記載のヘッドマウントディスプレイシステム。
  19. 前記仮想境界を修正することが、前記仮想境界に部分を加えること、または前記仮想境界から部分を減じることを含む、請求項16に記載のヘッドマウントディスプレイシステム。
  20. 前記配向データが、前記方向インジケータの高度の高度データを含み、前記仮想境界を修正することが、前記平面と、前記高度データによって示された前記高度におけるおよび前記配向データによって示された前記配向における前記方向インジケータから延びる仮想線との交差部を決定することを含む、請求項16に記載のヘッドマウントディスプレイシステム。
  21. 現実世界環境の平面を表す基準高度の指示を受信することと、
    前記基準高度に対して、仮想世界環境についての仮想境界を確立することと、
    前記仮想境界を修正したいというユーザからの要求を受信することと、
    前記ユーザからの前記要求に応答して、配向データを生成するために方向インジケータの配向を監視することと、
    前記基準高度と前記配向データとに基づいて前記仮想境界を修正することと
    を含む、コンピュータ実装方法。
  22. 前記配向データが、前記基準高度に対する前記方向インジケータの高度の高度データを含み、
    随意に、前記仮想境界を修正することが、前記平面と、前記高度データによって示された高度におけるおよび前記配向データによって示された前記配向における前記方向インジケータから延びる仮想線との交差部を決定することを含む、
    請求項21に記載の方法。
  23. ヘッドマウントディスプレイシステムのイメージングシステムで前記現実世界環境のビューをキャプチャすることであって、前記キャプチャされたビューがレンズ誘発ひずみを有する、前記現実世界環境のビューをキャプチャすることと、
    前記現実世界環境の補償ビューを作り出すために、前記キャプチャされたビュー中の前記レンズ誘発ひずみを補正することと、
    前記仮想境界を前記現実世界環境の前記補償ビューに重ね合わせることと、
    前記現実世界環境の前記補償ビューを前記ヘッドマウントディスプレイシステムのディスプレイに表示することと
    をさらに含む、請求項21または22に記載の方法。
  24. 前記仮想境界が最小エリアしきい値を満たすとき、前記仮想境界が成功色で表示され、前記仮想境界が前記最小エリアしきい値を満たさないとき、前記仮想境界が警告色で表示され、および/または
    前記仮想境界が、前記仮想境界によって定義された塗りつぶされた形状として表示される、
    請求項23に記載の方法。
  25. 前記仮想境界を修正することが、前記仮想境界に部分を加えること、または前記仮想境界から部分を減じることを含む、請求項21から24のいずれか一項に記載の方法。
  26. 前記基準高度の確認を受信することをさらに含む、請求項21から25のいずれか一項に記載の方法。
  27. 前記仮想境界をリセットするための指示を受信することをさらに含む、請求項21から26のいずれか一項に記載の方法。
  28. 命令が記憶された有形非一時的コンピュータ可読記憶媒体であって、前記命令が、処理システムによって実行されたとき、前記処理システムに、
    現実世界環境の平面を表す基準高度の指示を受信することと、
    前記基準高度に対して、仮想世界環境についての仮想境界を確立することと、
    配向データを生成するために方向インジケータの配向を監視することと、
    前記基準高度と前記配向データとに基づいて前記仮想境界を修正することと
    を含む動作を実施させる、有形非一時的コンピュータ可読記憶媒体。
  29. 前記配向データが、前記基準高度に対する前記方向インジケータの高度の高度データを含み、
    随意に、前記仮想境界を修正することが、前記平面と、前記高度データによって示された高度におけるおよび前記配向データによって示された前記配向における前記方向インジケータから延びる仮想線との交差部を決定することを含む、
    請求項28に記載の非一時的コンピュータ可読記憶媒体。
  30. ヘッドマウントディスプレイシステムのイメージングシステムで前記現実世界環境のビューをキャプチャすることであって、前記キャプチャされたビューがレンズ誘発ひずみを有する、前記現実世界環境のビューをキャプチャすることと、
    前記現実世界環境の補償ビューを作り出すために、前記キャプチャされたビュー中の前記レンズ誘発ひずみを補正することと、
    前記仮想境界を、前記仮想境界によって定義された塗りつぶされた形状として、前記現実世界環境の前記補償ビューに重ね合わせることと、
    前記現実世界環境の前記補償ビューを前記ヘッドマウントディスプレイシステムのディスプレイに表示することと
    を行うための命令をさらに含み、
    随意に、前記仮想境界が最小エリアしきい値を満たすとき、前記仮想境界が成功色で表示され、前記仮想境界が前記最小エリアしきい値を満たさないとき、前記仮想境界が警告色で表示される、
    請求項28または29に記載の非一時的コンピュータ可読記憶媒体。
  31. 前記仮想境界を修正することが、前記仮想境界に部分を加えること、または前記仮想境界から部分を減じることを含む、請求項28から30のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
  32. ユーザアタッチメントシステムに固定されたディスプレイと、
    方向インジケータと、
    処理システムと
    を備えるヘッドマウントディスプレイシステムであって、前記処理システムが、
    現実世界環境の平面を表す基準高度を識別することと、
    前記基準高度に対して、仮想世界環境についての仮想境界を確立することと、
    前記基準高度と前記方向インジケータの配向を特徴づける配向データとに基づいて前記仮想境界を修正することと
    を行うように構成された、ヘッドマウントディスプレイシステム。
  33. 前記処理システムは、
    ヘッドマウントディスプレイシステムのイメージングシステムで前記現実世界環境のビューをキャプチャすることであって、前記キャプチャされたビューがレンズ誘発ひずみを有する、前記現実世界環境のビューをキャプチャすることと、
    前記現実世界環境の補償ビューを作り出すために、前記キャプチャされたビュー中の前記レンズ誘発ひずみを補正することと、
    前記仮想境界を、前記仮想境界によって定義された塗りつぶされた形状として、前記現実世界環境の前記補償ビューに重ね合わせることと、
    前記現実世界環境の前記補償ビューを前記ヘッドマウントディスプレイシステムのディスプレイに表示することと
    を行うようにさらに構成され、
    随意に、前記仮想境界が最小エリアしきい値を満たすとき、前記仮想境界が成功色で表示され、前記仮想境界が前記最小エリアしきい値を満たさないとき、前記仮想境界が警告色で表示される、
    請求項32に記載のヘッドマウントディスプレイシステム。
  34. 前記仮想境界を修正することが、前記仮想境界に部分を加えること、または前記仮想境界から部分を減じることを含む、請求項32または33に記載のヘッドマウントディスプレイシステム。
  35. 前記配向データが、前記方向インジケータの高度の高度データを含み、前記仮想境界を修正することが、前記平面と、前記高度データによって示された前記高度におけるおよび前記配向データによって示された前記配向における前記方向インジケータから延びる仮想線との交差部を決定することを含む、請求項32から34のいずれか一項に記載のヘッドマウントディスプレイシステム。
JP2023078135A 2018-10-31 2023-05-10 仮想現実システムのための安全境界を修正するためのシステムおよび方法 Pending JP2023109848A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US16/177,424 2018-10-31
US16/177,424 US11244483B2 (en) 2018-10-31 2018-10-31 Systems and methods for modifying a safety boundary for virtual reality systems
PCT/US2018/066974 WO2020091822A1 (en) 2018-10-31 2018-12-20 Systems and methods for modifying a safety boundary for virtual reality systems
JP2021548502A JP7279176B2 (ja) 2018-10-31 2018-12-20 仮想現実システムのための安全境界を修正するためのシステムおよび方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021548502A Division JP7279176B2 (ja) 2018-10-31 2018-12-20 仮想現実システムのための安全境界を修正するためのシステムおよび方法

Publications (1)

Publication Number Publication Date
JP2023109848A true JP2023109848A (ja) 2023-08-08

Family

ID=70327132

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021548502A Active JP7279176B2 (ja) 2018-10-31 2018-12-20 仮想現実システムのための安全境界を修正するためのシステムおよび方法
JP2023078135A Pending JP2023109848A (ja) 2018-10-31 2023-05-10 仮想現実システムのための安全境界を修正するためのシステムおよび方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021548502A Active JP7279176B2 (ja) 2018-10-31 2018-12-20 仮想現実システムのための安全境界を修正するためのシステムおよび方法

Country Status (6)

Country Link
US (3) US11244483B2 (ja)
EP (2) EP3874357A4 (ja)
JP (2) JP7279176B2 (ja)
KR (1) KR20210071083A (ja)
CN (1) CN113260969A (ja)
WO (1) WO2020091822A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019135634A1 (en) * 2018-01-05 2019-07-11 Samsung Electronics Co., Ltd. Method and apparatus to navigate a virtual content displayed by a virtual reality (vr) device
US10965985B2 (en) * 2018-05-21 2021-03-30 Hisense Visual Technology Co., Ltd. Display apparatus with intelligent user interface
US10901081B2 (en) * 2018-10-02 2021-01-26 International Business Machines Corporation Virtual reality safety
US11756259B2 (en) * 2019-04-17 2023-09-12 Rakuten Group, Inc. Display controlling device, display controlling method, program, and non-transitory computer-readable information recording medium
KR102306392B1 (ko) * 2019-08-19 2021-09-30 한국과학기술연구원 인터랙션 인터페이스의 제어 방법 및 이를 지원하는 장치
US11175730B2 (en) * 2019-12-06 2021-11-16 Facebook Technologies, Llc Posture-based virtual space configurations
US11073902B1 (en) * 2019-12-30 2021-07-27 Facebook Technologies, Llc Using skeletal position to predict virtual boundary activation
US11602691B2 (en) * 2020-03-13 2023-03-14 Harmonix Music Systems, Inc. Techniques for virtual reality boundaries and related systems and methods
US11257280B1 (en) 2020-05-28 2022-02-22 Facebook Technologies, Llc Element-based switching of ray casting rules
US11493764B2 (en) 2020-06-04 2022-11-08 Htc Corporation Method for dynamically displaying real-world scene, electronic device, and computer readable medium
KR20230026503A (ko) * 2020-06-29 2023-02-24 스냅 인코포레이티드 사회적 거리두기를 사용한 증강 현실 경험들
US11256336B2 (en) 2020-06-29 2022-02-22 Facebook Technologies, Llc Integration of artificial reality interaction modes
US11178376B1 (en) 2020-09-04 2021-11-16 Facebook Technologies, Llc Metering for display modes in artificial reality
US11294475B1 (en) 2021-02-08 2022-04-05 Facebook Technologies, Llc Artificial reality multi-modal input switching model
JP2023056109A (ja) * 2021-10-07 2023-04-19 トヨタ自動車株式会社 仮想空間制御システム、その制御方法、及び、制御プログラム
CN113932805B (zh) * 2021-10-12 2024-02-23 天翼数字生活科技有限公司 用于提高ar虚拟对象定位准确性与速度的方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2636030A1 (en) 2006-01-17 2007-07-26 Qualcomm Incorporated Method and apparatus for setting the boundaries of virtual operations
US8161397B2 (en) 2008-06-05 2012-04-17 Samsung Electronics Co., Ltd. Interaction between real-world digital environments and virtual worlds
DE102009037835B4 (de) * 2009-08-18 2012-12-06 Metaio Gmbh Verfahren zur Darstellung von virtueller Information in einer realen Umgebung
CN104641399B (zh) 2012-02-23 2018-11-23 查尔斯·D·休斯顿 用于创建环境并用于共享环境中基于位置的体验的系统和方法
US9754167B1 (en) 2014-04-17 2017-09-05 Leap Motion, Inc. Safety for wearable virtual reality devices via object detection and tracking
US9864016B2 (en) 2014-10-31 2018-01-09 GM Global Technology Operations LLC Battery system pack life estimation systems and methods
CN107850953B (zh) * 2014-11-05 2021-08-31 威尔乌集团 用于在虚拟现实环境中引导用户的感官反馈系统和方法
EP3037917B1 (en) 2014-12-24 2021-05-19 Nokia Technologies Oy Monitoring
US9955862B2 (en) * 2015-03-17 2018-05-01 Raytrx, Llc System, method, and non-transitory computer-readable storage media related to correction of vision defects using a visual display
US9690374B2 (en) * 2015-04-27 2017-06-27 Google Inc. Virtual/augmented reality transition system and method
JP6346131B2 (ja) 2015-09-07 2018-06-20 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像生成方法
US20170103574A1 (en) 2015-10-13 2017-04-13 Google Inc. System and method for providing continuity between real world movement and movement in a virtual/augmented reality experience
US9996944B2 (en) 2016-07-06 2018-06-12 Qualcomm Incorporated Systems and methods for mapping an environment
WO2018158896A1 (ja) * 2017-03-01 2018-09-07 三菱電機株式会社 情報処理システム
US9971854B1 (en) * 2017-06-29 2018-05-15 Best Apps, Llc Computer aided systems and methods for creating custom products
US10803663B2 (en) * 2017-08-02 2020-10-13 Google Llc Depth sensor aided estimation of virtual reality environment boundaries

Also Published As

Publication number Publication date
US11741649B2 (en) 2023-08-29
EP4227777A1 (en) 2023-08-16
US20220156997A1 (en) 2022-05-19
US11244483B2 (en) 2022-02-08
EP3874357A4 (en) 2021-12-15
WO2020091822A1 (en) 2020-05-07
EP3874357A1 (en) 2021-09-08
KR20210071083A (ko) 2021-06-15
CN113260969A (zh) 2021-08-13
JP2022509483A (ja) 2022-01-20
US20230377744A1 (en) 2023-11-23
US20200134895A1 (en) 2020-04-30
JP7279176B2 (ja) 2023-05-22

Similar Documents

Publication Publication Date Title
JP7279176B2 (ja) 仮想現実システムのための安全境界を修正するためのシステムおよび方法
US10535199B1 (en) Systems and methods for determining a safety boundary for a mobile artificial reality user
US11361513B2 (en) Head-mounted display with pass-through imaging
US20220196840A1 (en) Using photometric stereo for 3d environment modeling
US10901215B1 (en) Systems and methods for providing a mobile artificial reality user with environmental awareness
JP6381711B2 (ja) 仮想現実システムの較正
US10859831B1 (en) Systems and methods for safely operating a mobile virtual reality system
US10740971B2 (en) Augmented reality field of view object follower
US9230368B2 (en) Hologram anchoring and dynamic positioning
CN110362193B (zh) 用手或眼睛跟踪辅助的目标跟踪方法及系统
US8878846B1 (en) Superimposing virtual views of 3D objects with live images
JP6558839B2 (ja) 媒介現実
US20210215940A1 (en) End-to-end artificial reality calibration testing
US20190371072A1 (en) Static occluder
JP2022122876A (ja) 画像表示システム
US11302023B2 (en) Planar surface detection
JP7103354B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US11195320B2 (en) Feed-forward collision avoidance for artificial reality environments
US20200035023A1 (en) Rendering Objects in Virtual Views
WO2021241110A1 (ja) 情報処理装置、情報処理方法及びプログラム
CN117496098A (zh) 使用深度神经网络的稀疏颜色重建
JP2024500740A (ja) オブジェクトの選択の方法及びシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230609

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230609