IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ソニー・コンピュータエンタテインメントの特許一覧

特許7465067仮想オブジェクトを表示するための方法およびシステム
<>
  • 特許-仮想オブジェクトを表示するための方法およびシステム 図1
  • 特許-仮想オブジェクトを表示するための方法およびシステム 図2
  • 特許-仮想オブジェクトを表示するための方法およびシステム 図3A
  • 特許-仮想オブジェクトを表示するための方法およびシステム 図3B
  • 特許-仮想オブジェクトを表示するための方法およびシステム 図4
  • 特許-仮想オブジェクトを表示するための方法およびシステム 図5
  • 特許-仮想オブジェクトを表示するための方法およびシステム 図6
  • 特許-仮想オブジェクトを表示するための方法およびシステム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-02
(45)【発行日】2024-04-10
(54)【発明の名称】仮想オブジェクトを表示するための方法およびシステム
(51)【国際特許分類】
   G06T 19/00 20110101AFI20240403BHJP
   G06F 3/01 20060101ALI20240403BHJP
   H04N 23/60 20230101ALI20240403BHJP
   H04N 23/63 20230101ALI20240403BHJP
【FI】
G06T19/00 600
G06F3/01 510
H04N23/60 500
H04N23/63
【請求項の数】 14
【外国語出願】
(21)【出願番号】P 2019115531
(22)【出願日】2019-06-21
(65)【公開番号】P2020004407
(43)【公開日】2020-01-09
【審査請求日】2022-03-31
(31)【優先権主張番号】1810270.7
(32)【優先日】2018-06-22
(33)【優先権主張国・地域又は機関】GB
【前置審査】
(73)【特許権者】
【識別番号】310021766
【氏名又は名称】株式会社ソニー・インタラクティブエンタテインメント
(74)【代理人】
【識別番号】100105924
【弁理士】
【氏名又は名称】森下 賢樹
(72)【発明者】
【氏名】デイビッド エルワン ダミエン ウベルティ
【審査官】中田 剛史
(56)【参考文献】
【文献】特開2010-092436(JP,A)
【文献】特開2017-130190(JP,A)
【文献】特開2016-195323(JP,A)
【文献】特表2016-520891(JP,A)
【文献】特開2002-163670(JP,A)
【文献】特開2012-058968(JP,A)
【文献】特開2011-164666(JP,A)
【文献】特開2012-221250(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
G06F 3/01
H04N 23/63
H04N 23/60
(57)【特許請求の範囲】
【請求項1】
仮想オブジェクトを表示するためのシステムであって、
環境を表示するためのディスプレイ装置と、
ユーザの環境の一領域のビデオ画像をキャプチャするように動作することができ、前記ビデオ画像における前記領域のサイズは、前記ディスプレイ装置において見ることができる前記環境の前記領域のサイズよりも大きいビデオカメラと、
前記ビデオカメラの動きを予測するように動作することができる動き予測器と、
前記環境のうちの前記予測された動きの結果として前記ディスプレイ装置において見ることができるようになると期待される領域、に対応する前記キャプチャされたビデオ画像の一部分を識別して処理するように動作することができるシーンプロセッサと、
前記シーンプロセッサからの入力を受け取り、該入力に応答して前記ディスプレイ装置における表示用の仮想オブジェクトを生成するように構成された画像生成器と
を備えており、
前記画像生成器は、前記予測された動きの検出に応答して、前記表示用の仮想オブジェクトを出力するように構成されており、
前記動き予測器は、前記キャプチャされたビデオ画像内の1つ以上の物理的な物体を検出するように構成され、
前記動き予測器は、前記検出された1つ以上の物理的な物体の動きに基づいて前記ディスプレイ装置の動きを予測するように構成されている、システム。
【請求項2】
2つのビデオカメラを備えており、各々のビデオカメラが、前記環境の少なくとも部分的に異なる領域の画像をキャプチャするように構成されており、
前記ディスプレイ装置において見ることができる前記環境の前記領域は、前記2つのビデオカメラによってキャプチャされた前記領域よりも小さく、
前記シーンプロセッサは、前記ディスプレイ装置において見ることができる前記環境の領域の外側の領域についてのビデオ画像データを処理するように構成されている、請求項1に記載のシステム。
【請求項3】
前記シーンプロセッサは、前記キャプチャされたビデオ画像の前記一部分における照明条件を明らかにするように構成され、
前記画像生成器は、前記仮想オブジェクトをあたかも前記照明条件に曝されているかのように生成するように構成されている、請求項1または2に記載のシステム。
【請求項4】
前記シーンプロセッサは、前記キャプチャされたビデオ画像の前記一部分における少なくとも1つの物理的な物体を検出するように構成され、
前記画像生成器は、前記検出された少なくとも1つの物理的な物体に応じて仮想オブジェクトを生成するように構成されている、請求項1~3のいずれか一項に記載のシステム。
【請求項5】
前記シーンプロセッサは、前記少なくとも1つの物理的な物体の相対位置および深度を明らかにするように構成され、
前記画像生成器は、前記少なくとも1つの物理的な物体の前記相対位置および深度に応じたオクルージョンにて前記仮想オブジェクトを生成するように構成されている、請求項4に記載のシステム。
【請求項6】
前記画像生成器は、アニメーションによる仮想オブジェクトを生成するように構成されており、前記アニメーションは、前記仮想オブジェクトと前記少なくとも1つの物理的な物体との間の仮想の相互作用に対応する、請求項4または5に記載のシステム。
【請求項7】
前記動き予測器は、前記ユーザの視線の方向を検出するように動作することができる視線方向検出器を備え、
前記動き予測器は、前記検出された前記ユーザの視線の方向の変化に基づいて前記ディスプレイ装置の動きを予測するように構成されている、請求項1~6のいずれか一項に記載のシステム。
【請求項8】
前記ディスプレイ装置の動きを検出するように動作することができる動き検出器を備えており、
前記動き予測器は、前記動き検出器によって検出された前記ディスプレイ装置の動きに基づいて前記ディスプレイ装置の前記動きを予測するように構成されている、請求項1~7のいずれか一項に記載のシステム。
【請求項9】
前記動き予測器は、コンピュータビジョンまたは機械学習によって前記1つ以上の物理的な物体を検出するように構成されている、請求項1に記載のシステム。
【請求項10】
前記動き予測器は、前記ディスプレイ装置の動きを示す動きデータと、前記キャプチャされたビデオ画像のコンテンツを示す画像データとを受け取るように構成され、
前記動き予測器は、前記キャプチャされたビデオ画像のコンテンツに基づいて前記ディスプレイ装置の動きを予測するように訓練される機械学習アルゴリズムを備える、請求項1~9のいずれか一項に記載のシステム。
【請求項11】
前記機械学習アルゴリズムを訓練するように動作することができる訓練ユニットを備えており、前記訓練ユニットは、複数の異なるディスプレイ装置からの動きデータと、前記ディスプレイ装置によってキャプチャされたビデオデータとを受け取るように構成され、
前記訓練ユニットは、前記キャプチャされたビデオ画像のコンテンツと前記ディスプレイ装置の動きとの間の関係を割り出すように構成されている、請求項10に記載のシステム。
【請求項12】
仮想オブジェクトを表示する方法であって、
ディスプレイ装置において環境のビューを提示するステップと、
前記環境のビデオ画像をキャプチャするステップであって、前記ビデオ画像にキャプチャされる前記環境の領域は、前記環境のうちの前記ディスプレイ装置において見ることができる前記領域よりも大きいステップと、
カメラの動きを予測するステップと、
前記環境のうちの前記カメラの前記予測された動きの結果として前記ディスプレイ装置において見ることができるようになると期待される領域を識別するステップと、
前記環境のうちの前記ディスプレイ装置において見ることができるようになると期待される前記領域に対応する前記キャプチャされたビデオ画像の一部分を処理するステップと、
前記ディスプレイ装置における表示用の仮想オブジェクトの画像を生成するステップであって、前記画像は、前記ビデオ画像の前記一部分の前記処理に基づいて生成されるステップと、
前記ディスプレイ装置の前記予測された動きが実行された旨の検出に応答して、前記仮想オブジェクトを表示するステップと、
前記キャプチャされたビデオ画像内の1つ以上の物理的な物体を検出するステップと、
前記検出された1つ以上の物理的な物体の動きに基づいて前記ディスプレイ装置の動きを予測するステップと
を含む方法。
【請求項13】
前記キャプチャされたビデオ画像の前記一部分を処理するステップは、
i.前記キャプチャされたビデオ画像の前記一部分に存在する照明条件を明らかにすること、および
ii.前記キャプチャされたビデオ画像の前記一部分における1つ以上の物理的な物体を検出すること
の少なくとも一方を含む、請求項12に記載の方法。
【請求項14】
前記ディスプレイ装置の動きを予測するステップは、
i.前記キャプチャされたビデオ画像のコンテンツ、
ii.ユーザの視線の方向の変化、および
iii.現時点よりも前の前記カメラの動き
のうちの少なくとも1つを検出することを含む、請求項12または13に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、仮想オブジェクトを表示するための方法およびシステムに関する。
【背景技術】
【0002】
多くのディスプレイ装置が、ユーザが拡張現実を体験することを可能にする。典型的には、これらの装置は、スマートフォンまたはヘッドマウントディスプレイ(HMD)の形態であり、ユーザの物理的な現実世界の環境のライブビューをキャプチャするためにカメラを使用する。このビューに仮想オブジェクトを重ね合わせることによって、ユーザは、それらの仮想オブジェクトがユーザの現実世界の環境に存在しているかのように見える迫真性を体験することができる。
【0003】
さらに最近では、拡張現実は、いわゆる「複合現実」の形態へとさらなる一歩を進めている。複合現実は、ユーザの物理的な環境の物理的な境界または表面が、その環境内に仮想オブジェクトを表示するときに考慮される点で、拡張現実と異なる。例えば、単に仮想オブジェクトがユーザのビューに重ねられるのではなく、仮想オブジェクトが、あたかも現実世界の物理的な表面に載っており、現実世界の環境においてその表面の位置に対応する深度を有しているかのように現れることができる。
【0004】
複合現実のいくつかのバージョンにおいては、ユーザの現実世界のビューが、仮想現実のビューによって完全に見えなくなる可能性があるが、仮想現実自体は、現実世界の環境内の1つ以上の物理的な境界または表面の表現を含むことができる。
【0005】
一般に、拡張現実または複合現実において仮想オブジェクトを表示する場合、それらのオブジェクトの見え方の現実感は、ユーザの現実世界の環境のさまざまな側面に依存する。これらは、例えば、現実世界の環境の照明条件、何らかの(現実の)物理的物体、表面、または境界の存在を含むことができる。環境についてのユーザのビューが変化するとき、環境のこれらの側面も変化する可能性があり、したがって仮想オブジェクトをレンダリングするときに考慮される必要がある。
【0006】
既知のシステムにおいては、環境についてのユーザの視点の変化を検出するために、通常は、リアルタイムでビデオ画像を処理することが必要である。これは、必要とされる処理に関して、いささか過酷になる可能性がある。多くの場合、変化の検出と、それらの変化を考慮に入れた仮想オブジェクトのレンダリングとの間に、遅延が存在する。この遅延が、現実世界の環境に同期していないように見える仮想オブジェクトの表示として現れることがある。例えば、仮想オブジェクトが、誤った照明で表示される可能性があり、あるいはユーザのビュー内に存在する他の物体に対して誤った深度で現れる可能性がある。全体として、これは、ユーザのエクスペリエンスの没入を損なう可能性があり、ユーザにとって最適でないエクスペリエンスにつながる。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、これらの問題を軽減または少なくとも緩和しようと試みる。
【課題を解決するための手段】
【0008】
本明細書に開示される第1の態様によれば、請求項1に記載のシステムが提供される。
【0009】
本明細書に開示される第2の態様によれば、請求項13に記載の仮想オブジェクトの表示方法が提供される。
【図面の簡単な説明】
【0010】
本開示の理解を助け、実施形態をどのように実施できるかを示すために、添付の図面を、あくまでも例として参照する。
図1】本発明によるHMDの一例を概略的に示している。
図2】本発明によるモバイルデバイスの一例を概略的に示している。
図3A】単一のビデオカメラを使用するディスプレイ装置を概略的に示している。
図3B】2つのビデオカメラを使用するディスプレイ装置を概略的に示している。
図4】本発明のディスプレイ装置によってキャプチャされた画像の一例を概略的に示している。
図5】拡張現実画像の一例を概略的に示している。
図6】本発明によるシステムの一例を示している。
図7】仮想オブジェクトを表示する方法のフロー図を示している。
【発明を実施するための形態】
【0011】
図1は、本発明によるディスプレイ装置20の一例を概略的に示している。
【0012】
図1において、ディスプレイ装置20は、ユーザの頭部30に装着されたヘッドマウントディスプレイ(HMD)として示されている。HMDは、HMDをユーザの頭部に固定するためのストラップ40と、画像をユーザへと表示するための表示部50とを備える。画像は、例えば、仮想オブジェクトまたは仮想環境に対応し得る。
【0013】
図1では、表示部50は、周囲の環境についてのユーザのビューを完全に見えなくするものとして示されている。この例において、ユーザは、(表示部50において)HMD内に表示された1対の画像だけを見ることが可能であってよい。他の例においては、外部環境についてのユーザのビューが、表示部50によって完全には見えなくされていなくてもよい。例えば、画像を、(ユーザの視点から)外部環境へと重ね合わせられるように配置することができる。これは、厳密な仮想現実とは対照的に、ユーザに「拡張」現実の体験をもたらすことができる。
【0014】
図1において、フレーム40は、後部ストラップおよび上部ストラップを備えるものとして図示されている。他の例において、フレーム40は、従来からの眼鏡に関するフレームに、より類似していてもよい。例えば、フレーム40は、表示部50からユーザの耳の上部後方まで延び、おそらくは耳の後ろへと下方に曲がる実質的に水平なレッグを有することができる。これは、例えば、ユーザが表示部50を介して外部環境の少なくとも一部を見ることができる場合であってよい。換言すると、表示部50が、画像が投影される透明または部分的に透明な表面を含む場合である。
【0015】
いくつかの例において、HMDは、別個のコンピューティングデバイスと通信することができる。別個のコンピューティングデバイスは、ビデオ信号源として機能することができ、ビデオ信号をHMDへと送信するように構成されてよい。これらの例において、HMDを、別個のビデオ信号源からビデオ信号を受信して表示するように構成することができる。外部のビデオ信号源は、例えば、ゲーム機であってよい。他の例において、HMDは、別個のコンピューティングデバイスから表示用の画像を受信するのではなく、表示用の画像を生成するように動作可能であってよい。
【0016】
さらに、図1において、HMDは、ユーザの左右の耳70にフィットするヘッドホンイヤピース60を含むものとして示されている。イヤピース60は、内部または外部の供給源からもたらされるオーディオ信号を再生する。例えば、HMDは、ゲーム機などの他のコンピューティングデバイスと通信でき、イヤピースを、ゲーム機から受信したオーディオ信号を出力するように構成することができる。他の例においては、HMD自体を、オーディオ信号の外部の供給源から受信するのではなく、オーディオ信号を生成するように構成することができる。いくつかの例において、HMDは、オーディオ信号をキャプチャするための1つ以上のマイクロフォン(図示せず)を含むことができる。
【0017】
さらに、図1に示されるHMDは、ビデオカメラ90を備えるものとして示されている。図1において、ビデオカメラ90は、HMDに取り付けられ、ユーザの目の上方かつ(ほぼ)ユーザの額の中心に位置するように図示されている。いくつかの例においては、ビデオカメラ90を、ビデオカメラ90のレンズをHMDの外面に露出させつつ、HMDと一体的に形成することができる。一般に、ビデオカメラ90は、環境のうち、本来であればユーザの視野内に入ると考えられる環境の範囲を含み、かつそれよりも大きい領域を、キャプチャするように配置される。
【0018】
ビデオカメラ90によってキャプチャされたビデオ画像を、表示部50に表示することができる。例えば、外部環境についてのユーザのビューは、環境についてキャプチャされたビデオ画像に対応することができる。これは、例えば、環境についてのユーザのビューが表示部50によって完全に見えなくされている場合であってよい。他の例においては、ユーザが、(ディスプレイ要素の透明性ゆえに)ディスプレイ要素を通して環境を見ることが可能であり、キャプチャされたビデオ画像を表示部50に表示する必要がなくてよい。(両方の例における)ビデオ画像の使用は、図3Aおよび図3Bに関連して後で説明される。
【0019】
いくつかの例において、HMDは、2つのビデオカメラを備えることができる。これらの例において、各々のビデオカメラ90は、環境の異なる領域をキャプチャするように配置される。すなわち、各々のカメラ90を、環境の異なる領域が各々のビデオカメラ90の視野内に入るように、HMD上またはHMD内に配置することができる。ビデオカメラのうちの1つを、ユーザの視野をカバーするビデオ画像をキャプチャするように、HMD上またはHMD内の中心位置に配置することができる。他方のビデオカメラ90(図示せず)を、まだユーザの視野内にない環境の領域をキャプチャするように、第1のビデオカメラ90の側方に配置することができる。いくつかの例においては、2つのカメラを、外部環境の360度(水平方向および/または垂直方向)のビューをもたらすように配置することができる。
【0020】
図2が、本発明によるディスプレイ装置20の第2の例を概略的に示している。図2において、ディスプレイ装置は、スマートフォンの形態のモバイルデバイスを含む。スマートフォンは、前面20Aと後面20Bとから形成されるものとして図示されている。前面20Aは、画面の形態の表示部50を含み、後面は、ビデオ画像をキャプチャするための少なくとも1つのビデオカメラ90Aを備える。図示の例において、ビデオカメラ90Aは、モバイルデバイスの後面に埋め込まれ、後面の上部中央に向かって位置するものとして図示されている。
【0021】
すでに述べたように、ビデオカメラ90Aは、環境のうちのビデオカメラの視野内にある領域のビデオ画像をキャプチャするように構成される。モバイルデバイスを、ビデオカメラによってキャプチャされたビデオ画像をモバイルデバイスの画面に表示するように構成することができる。これは、例えば、拡張現実画像がモバイルデバイスに表示される場合であってよい。ビデオ画像を使用して、ユーザの環境のビューを、1つ以上の仮想オブジェクトをそのビューの上に(あるいは、それらのオブジェクトのオクルージョンによっては、中に)重ねて提供することができる。ビデオカメラ90Aが、モバイルデバイスの後面の他の場所に位置してもよいことを、理解できるであろう。
【0022】
いくつかの実施形態において、モバイルデバイスは、環境の別の領域のビデオ画像をキャプチャするための第2のビデオカメラ90Bを含むことができる。図2に見られるように、第2のビデオカメラは、第1のビデオカメラ90Aの右側に配置されているが、それ以外の点では、最上端および最下端において第1のビデオカメラ90Aに整列している。一般に、第2のビデオカメラ90Bは、環境のうちの(現時点においては)モバイルデバイスの画面において見ることができない領域のビデオ画像をキャプチャするように配置される。
【0023】
図2に示したものとは異なるビデオカメラ90A、90Bの配置が本発明において採用されてもよいことを、理解できるであろう。一般に、ビデオカメラのうちの少なくとも1つは、外部環境のユーザのビューに対応するように配置され、他のビデオカメラは、環境の隣接するビューをキャプチャするように配置される。いくつかの例においては、各々のビデオカメラの視野が、部分的に重なってもよい。
【0024】
図3Aは、ディスプレイ装置20およびディスプレイ装置20によって使用されるビデオカメラ(図示せず)の視野の上面図を概略的に示している。
【0025】
図3Aにおいて、ディスプレイ装置20は、方向304を向いているものとして図示されている。ディスプレイ装置20は、すでに述べたように、HMDまたはモバイルデバイスに相当することができる。ディスプレイ装置20によって使用されるビデオカメラの視野が、2つの部分を含むものとして図示されている。第1の部分302Aは、環境のうち、ディスプレイ装置20の表示部50において(あるいは、ディスプレイ装置20の表示部50を通して)見ることができる/ディスプレイ装置20の表示部50によって提示される領域に対応する。第2の周辺部分302Bは、環境のうち、ディスプレイ装置20において(あるいは、ディスプレイ装置20を通して)見ることができない/ディスプレイ装置20によって提示されない領域に対応する。したがって、図3Aにおいて、ビデオ画像にキャプチャされた領域の全体サイズが、ディスプレイ装置20において(あるいは、ディスプレイ装置20を通して)見ることができる/ディスプレイ装置20によって提示される領域のサイズよりも大きいことを、見て取ることができる。
【0026】
図3Bは、2つのビデオカメラ90A、90Bを使用するディスプレイ装置20の上面図を概略的に示している。第1のビデオカメラ90Aが、視野302Aを有して図示されており、第2のビデオカメラ90Bが、視野302Bを有して図示されている。視野302Bは、視野302Aからオフセットされており、随意により、より広くてもよい(図3Bには示されていない)。ディスプレイ装置20は、すでに述べたHMDまたはモバイルデバイスに相当することができる。
【0027】
図3Bに見られるように、各々のビデオカメラ90A、90Bは、環境の異なる領域(それにもかかわらず、互いに重なり合ってよいが、少なくとも一方向には異なる広がりを有する)をキャプチャするように配置される。第1のビデオカメラ90Aによってキャプチャされた領域は、環境のうちのディスプレイ装置20において見ることができる/ディスプレイ装置20によって提示される領域に相当することができる。第2のビデオカメラ90Bによってキャプチャされた領域は、少なくとも部分的に、環境のうちのディスプレイ装置20においては見ることができない領域に相当することができる。ビデオ画像の組み合わせは、環境のうち、ディスプレイ装置20において見ることができる/ディスプレイ装置20によって提示される環境の領域よりも大きい領域をカバーする。
【0028】
図3Bにおいて、ビデオカメラ90A、90Bは、ディスプレイ装置20の両端に配置されているものとして図示されている。これは、2つのビデオカメラ90A、90Bの異なる視野302A、302Bを強調するためのものである。実際には、ビデオカメラのうちの1つを(図1および図2に示されるように)ディスプレイ装置20内(または、ディスプレイ装置20上)の中央位置に配置でき、他のビデオカメラ90Bを第1のビデオカメラ90Aの片側に配置できることを、理解できるであろう。いくつかの例において、ビデオカメラ90A、90Bは、各々のカメラによってキャプチャされたビデオ画像をつなぎ合わせてパノラマ画像を形成することができるように、ディスプレイ装置20内(または、ディスプレイ装置20上)に配置される。
【0029】
図3Bの例において、ディスプレイ装置20の時計方向の回転は、環境のうちの回転前に第2のビデオカメラ90Bによってのみキャプチャされていた領域を指すように第1のビデオカメラ90Aを移動させることに相当できる。同様に、例えば左側から右側への方向へのディスプレイ装置20の並進運動は、環境のうちの並進運動前に第2のビデオカメラ90Bによってのみキャプチャされていた領域をより多く含むように第1のビデオカメラ90Aを移動させることに相当できる。一般に、後述の実施形態から明らかになるように、これらの種類の動きを予測できることが望ましい。
【0030】
しかしながら、この例において、ディスプレイ装置20の回転が反時計方向であり、あるいは右から左の方向に並進運動する場合、第1のビデオカメラは、以前には第2のカメラによってカバーされていなかった領域へと移動する。
【0031】
この状況に対応するために、随意により、第2のカメラは、第1のカメラのFOVの左側/反時計方向の領域もキャプチャするように、第1のカメラよりも広い視野を有することができ、あるいはこれに代え、もしくはこれに加えて、環境のうちのディスプレイ装置20において見ることができる/ディスプレイ装置20によって提示される領域が、2つのカメラの間の重なり合いの領域302Cに相当し、両方のカメラは、環境のうちのディスプレイ装置20において見ることができない/ディスプレイ装置20によって提示されない領域を画像化するように動作でき、現時点において観察中のシーンの各側をカバーする。
【0032】
また、ビデオカメラ90A(随意により、ビデオカメラ90Bも)が、環境のうちのディスプレイ装置20において見ることができる/ディスプレイ装置20によって提示される環境の領域の垂直上方および/または下方に広がる視野を有することができ、したがって本明細書に開示される原理を、垂直方向および水平方向に、個別または組み合わせのいずれにおいても適用できることを、理解できるであろう。
【0033】
また、必要に応じて、単数形の用語「ビデオ画像」は、2つのカメラからの2つのビデオ画像であって、環境の連続的かつ典型的には重なり合うビューを画像間に提供する2つのビデオ画像を包含できることも、理解できるであろう。
【0034】
図3Bにおいて、第1および第2のビデオカメラ90A、90Bは、それぞれ方向304Aおよび304Bを向いているものとして図示されている。図3Bにおいて、両方のビデオカメラ90A、90Bは、同じ方向を向いているものとして図示されている。しかしながら、いくつかの例において、カメラは、(例えば、各々のカメラの視野、および環境のうちのビデオカメラによってキャプチャされるべき範囲に応じて)異なる方向を向いていてもよい。
【0035】
図4は、本発明のディスプレイ装置20のカメラによってキャプチャされたビデオ画像400の一例を概略的に示している。画像400は、第1の領域402Aおよび第2の領域402Bという2つの領域から形成されるものとして図示されている。第1の領域402Aは、環境のうちのディスプレイ装置20において見ることができる/ディスプレイ装置20によって提示される部分に対応することができる。第2の領域402Bは、環境のうち、ディスプレイ装置20において見ることはできないが、ディスプレイ装置20によって使用されるビデオカメラの視野内にある部分に対応することができる。2つのビデオカメラが使用される場合、第2の部分402Bは、環境のうちの第2のビデオカメラ90Bの視野内にある部分に対応することができる。
【0036】
図4において、ビデオ画像400は、2人のプレーヤ404A、404Bがバスケットボールをしているシーンを描いている。バスケットボールフープ406と、2人のプレーヤがバスケットボールをしている領域を画定する壁408とが示されている。2人のプレーヤは、バスケットボールコートでプレーしているところが示されており、バスケットボールコートの床/地面が、物理的な表面410によって表されている。
【0037】
画像400の第1の部分402Aに、第1のプレーヤ404Aおよびバスケットボールフープ406が示されている。画像400の第2の部分402Bに、第2のプレーヤ404Bがボールを渡すように呼びかけている様子が示されている。この状況において、第2のプレーヤ404Bがユーザの視野内に入るように、ユーザ10がディスプレイ装置20を動かすことが予想され得る。これは、第2のプレーヤ404Bがキャプチャされたビデオ画像400においてより中央の位置を占めるようにディスプレイ装置20を移動させることに対応し得る。移動は、例えば、ユーザが例えばHMDを装着した状態で頭部を回転および/または移動させ、あるいはモバイルデバイスの向き/位置を変えることによる結果としてのディスプレイ装置20の回転および/または並進に対応し得る。
【0038】
図5は、図4のシーンと同様のシーンの例を示しており、この場合にはティラノサウルス・レックス(T-Rex)である仮想オブジェクト502が、ユーザの物理的な現実世界の環境に存在するものとして示されている。図5において、ディスプレイ装置20は、スマートフォンとして示されており、環境についてのユーザのビューは、スマートフォンに表示されるビデオ画像によって定められる。
【0039】
T-Rexが現実世界の環境についてのユーザのビュー内に本物らしく現れるためには、仮想オブジェクト502を表示のためにレンダリングする前に、いくつかの要因が考慮される必要があるかもしれない。第1に、プレーヤがプレー中の物理的な表面を、T-Rexがこの表面上を歩いているように描かれることを保証するために、検出する必要がある。これは、仮想オブジェクトの仮想の影504が正しく表示されることを保証するためにも、検出される必要があるかもしれない。同様に、壁またはフェンスなどの物理的な境界も、T-Rexがこれらの境界の内側にとどまり、あるいはこれらの境界と適切に相互作用することを保証するために、検出される必要があるかもしれない。図5には、フェンスの形態の物理的な境界408が図示されている。
【0040】
いくつかの例においては、環境内の1つ以上の物理的な物体の存在も、検出される必要があるかもしれない。これは、例えば、シーン内の1名以上のプレーヤ、バスケットボール、およびバスケットボールフープの相対位置および深度(距離)を検出することを含むことができる。これらの物体の相対的な位置および深度の両方を検出することによって、T-Rexは、或る物体が(ユーザの視点から)T-Rexの前方に位置する場合に、その物体によって遮られているように現れることができる。これは、T-Rexをそれらの物体と相互作用するようにアニメーションさせることも可能にできる。例えば、T-Rexをプレーヤのうちの1人を食べるようにアニメーションさせることができ、したがって、そのプレーヤをシーンからデジタル的に取り除く必要があるかもしれない。
【0041】
いくつかの例において、物理的な物体の検出は、物理的な物体を所定の(すなわち、既知の)物体に対応するものとして認識することを含むことができる。これは、例えば、物理的な物体がバスケットボールフープに対応すると認識することを含むことができる。さらなる例または代替の例において、これは、個々のプレーヤのアイデンティティを識別および/または認識し、特定のプレーヤに向けられるようにT-Rexの行動を制御することを含むことができる。やはり、これは、特定の物理的な物体を認識することによって、仮想オブジェクトを物理的な物体と相互作用しているように見せる方法を制御するために使用することができる。
【0042】
いくつかの例においては、シーン内の照明条件を、T-Rexがあたかもそれらの照明条件の下にあるかのように表示されるように決定することができる。例えば、バスケットボールの試合が夕方に行われている場合、T-Rexを、例えばバスケットボールの試合が正午に行われている場合よりも薄暗く表示することが、望ましいかもしれない。いくつかの場合、照明条件はユーザの環境内の種々の場所においてさまざまである可能性があり、したがって、環境についてのユーザのビューが変化するとき、仮想オブジェクトが照明に曝されているとして表示されるか、照明を調節することが必要かもしれない。さらに、T-Rexの仮想の影をシーン内にどのように表示すべきかを決定するために、照明条件を検出する必要がある。
【0043】
さらなる例においては、シーン内で発生している特定のイベントを追跡することも望まれるかもしれない。図5において、これは、例えばバスケットボールがフープに入るとき、または2人のプレーヤが互いに衝突するときを追跡することに対応できる。これらのイベントを追跡することによって、仮想オブジェクトのアニメーションを、検出されたイベントに反応するように制御することができる。
【0044】
理解できるとおり、表示された環境のこれらの特徴のうちの任意の1つは、表示された環境のビューが変化するにつれて変化し得る。既知のシステムにおいて、これらの変化は、典型的には、新たな特徴または変化する特徴をキャプチャすべくディスプレイ装置(または、ディスプレイ装置のビデオカメラ)が動かされたときに検出される。しかしながら、このやり方での変化の検出には問題がある。例えば、依然として検出中のユーザの環境の特徴が存在する場合、仮想オブジェクトをユーザの環境にリアルタイムで反応するように表示することは、不可能かもしれない。ユーザがディスプレイ装置をさらに動かす場合、検出される必要がある環境のさらに多くの特徴が存在するかもしれない。結果として、仮想オブジェクトがユーザの環境に同期していないように見える可能性がある。全体として、ユーザが、説得力のない拡張現実または複合現実を体験することになり得る。
【0045】
図6は、本明細書で論じられる技術を実施することによってこの問題を軽減または少なくとも緩和するためのシステム600の一例を概略的に示している。そのようなシステムを、本明細書において、本発明によるシステムと称する。図6に示される構成要素はすべて、すでに述べたディスプレイ装置20の構成要素であってよい。他の実施形態においては、以下で説明されるように、構成要素の少なくともいくつかが、別個のコンピューティングデバイスに実装されてよい。
【0046】
システム600は、ユーザの外部環境の一領域のビデオ画像をキャプチャするためのビデオカメラユニット602を備える。ビデオカメラユニット602は、図3Aおよび図3Bに関連してすでに述べたように、ただ1つのビデオカメラまたは2つのビデオカメラを備えることができる。ビデオカメラユニット602によってキャプチャされたビデオ画像(または、ビデオ画像の組み合わせ)は、ディスプレイ装置20において見ることができる/ディスプレイ装置20によって提示される環境の領域のサイズよりも大きい環境の領域をカバーする。
【0047】
さらに、システム600は、カメラの動きを、例えば代理としてのディスプレイ装置20の動きを予測することによって予測するように構成された動き予測器604の形態の1つ以上のプロセッサをさらに備える。予測されるディスプレイ装置20の動きを使用して、動きが実行されたときに結果としてディスプレイ装置20において視認可能になる可能性が高い環境の領域を決定することができる。
【0048】
いくつかの例において、動き予測器604を、ディスプレイ装置の以前の姿勢に基づいてディスプレイ装置20の姿勢(すなわち、位置および/または向き)を予測するように構成することができる。例えば、ディスプレイ装置20は、ディスプレイ装置20の姿勢を検出するように構成された動き検出器(図示せず)を備えることができる。ディスプレイ装置20の姿勢を継続的に監視し、ディスプレイ装置20の次の姿勢を予測するために使用することができる。これは、例えば、ディスプレイ装置20の速度を決定することを含むことができる。このやり方でディスプレイ装置20の動きを予測することが、短い時間枠において充分に信頼可能であり得ることに、注意すべきである。より長い時間枠、または例えば方向の急激な変化を含む複雑な動きにおいて、この動きの予測の方法は、あまり正確でないかもしれない。このような動きの予測の単純な例は、動きの方向および程度を予測可能であると考えることができるテニスまたはフットボールの試合あるいは飛び込み競技の観戦に関連し得る。
【0049】
さらなる例、または代案の例において、動き予測器604は、ユーザの視線の方向の変化を検出するための視線方向検出器を備えることができる。視線方向検出器は、例えば、ユーザの目(または、両目)の画像をキャプチャするように構成された赤外線カメラを含むことができ、視線方向検出器を、キャプチャされた画像におけるユーザの瞳孔の位置を識別および追跡するように構成することができる。動き予測器604を、検出されたユーザの視線方向の変化に基づいてディスプレイ装置20の動きを予測するように構成することができる。例えば、ユーザの瞳孔が例えば左側に動いていると検出された場合、ユーザが装置20を対応する方向に動かすことが予想される。
【0050】
またさらなる例、または代替の例においては、動き予測器604を、ビデオカメラユニット602によってキャプチャされたビデオ画像内の1つ以上の物理的な(すなわち、現実の)物体の検出に基づいてディスプレイ装置20の動きを予測するように構成することができる。いくつかの例において、これは、1つ以上の物理的な物体の動きを検出することを含むことができる。例えば、ユーザ10が移動する物体を環境についてのユーザの視野内に保持するようにディスプレイ装置20を移動させると予想することができる。いくつかの例において、これは、物理的な物体が、ユーザ10がその物体の方を向く(あるいは、その物体の方に装置20を向ける)可能性が高い動きまたは動作を実行していることを、検出することを含むことができる。物体は、例えば、特定の人、またはボール、あるいは(例えば、スポットライトが当てられているがゆえに)シーン全体に対して著しい明るさまたはコントラストの差を有する物体であってよい。
【0051】
動き予測器604は、カメラのパンまたは回転による画像内の特徴の全体的な動きであるいわゆる「オプティカルフロー」を検出することができる。
【0052】
動き予測器604は、例えば、ビデオ画像内の種々の物理的な物体を検出するために、コンピュータビジョンまたは機械学習を使用することができる。同様に、動き予測器604は、ユーザが見守り、さらには/あるいは視線を集中させる可能性が高い行動に対応するものとして、ビデオ画像内の特定の動きを認識するための機械学習を使用することができる。
【0053】
さらなる例においては、動き予測器604を、音源に関連付けられているとして検出された環境内の位置に基づいてディスプレイ装置20の動きを予測するように構成することができる。例えば、一般に、ユーザ10が、話している人などの物理的な物体に目を向ける(そして、そのようにする際に装置を物理的な物体に面するように向ける)と期待することができる。そのような場合、動き予測器604を、ディスプレイ装置20が検出された音源の方向に移動(例えば、回転)させられる可能性が高いと判断するように構成することができる。ディスプレイ装置20は、例えば、ユーザに対する音源の方向を検出するための2つ以上のマイクロフォンを含むことができる。
【0054】
またさらなる例においては、動き予測器604を、ディスプレイ装置20に表示された仮想オブジェクト、または表示される仮想オブジェクトの位置に基づいて、ディスプレイ装置20の動きを予測するように構成することができる。例えば、ユーザ10が、仮想オブジェクトをよりよく眺めるために、ディスプレイ装置20を仮想オブジェクトへと向けると期待することができる。したがって、動き予測器604を、ユーザの環境内の仮想オブジェクトの位置を取得し、それに応じて、ディスプレイ装置20が被る可能性が高い対応する動きを決定するように構成することができる。位置(または、最後の位置)は、仮想オブジェクトを用いてシーンの拡張を実行するプロセッサ(例えば、画像生成器608)から取得することができ、あるいは画像解析などから取得することができる。
【0055】
好ましい実施形態においては、機械学習アルゴリズムを使用してディスプレイ装置20の動き(あるいは、それどころか、後続の姿勢)を予測する。
【0056】
機械学習アルゴリズムを、ディスプレイ装置20の動きを示すデータと、動きの前にディスプレイ装置20によってキャプチャされた対応するビデオデータとによって訓練することができる。訓練は、ディスプレイ装置20によってキャプチャされたビデオデータ(環境についてのユーザのビューに対応する)をその後のディスプレイ装置20の動きにマッピングする関数を決定することを含み得る。関数を、1つ以上のパラメータに関して定めることができ、これらのパラメータを、関数が充分な精度でディスプレイ装置20の動きを予測できるまで調整することができる。一例においては、これらのパラメータを、逆伝播を使用して調整することができ、すなわち機械学習アルゴリズムの出力(予測されたディスプレイ装置20の動き)を元の入力(ディスプレイ装置20の実際の動き)と比較することができ、ディスプレイ装置20の動きを充分な精度で予測することができるまでパラメータを調整することができる。技術的に知られているように、アルゴリズムは、ひとたび初見のテストデータのセットに対して正確な結果を生みだすと、充分に訓練されたと言うことができる。訓練において使用される他のパラメータとして、上述のように、ビデオデータ内の1つ以上の物体を識別/区別するメタデータ、ビデオに含まれており、もしくはビデオに含まれる拡張オブジェクトの位置、姿勢、および/または種類に関する情報、オーディオデータまたはそれらの抽象化(例えば、音量レベル、または音声アクティビティフラグ)を挙げることができる。例えばGPS座標、あるいはシナリオ、したがって予測可能な挙動(例えば、テニスコートにおける挙動など)を示すことができる記述的なキーワードなど、他のパラメータが当業者にとって明らかであろう。
【0057】
いくつかの例においては、機械学習アルゴリズムの訓練を、例えばサーバにおいて行うことができる。サーバを、動きデータ、ビデオデータ、および他の随意によるパラメータを複数の異なるディスプレイ装置20から受信し、上述のやり方で機械学習アルゴリズムを訓練するように構成することができる。ひとたび機械学習アルゴリズムが充分に訓練されると、アルゴリズムの訓練後のバージョンを、ディスプレイ装置20へとエクスポートすることができる。これを、例えば、通信ネットワークを介してディスプレイ装置へとダウンロードされるソフトウェア更新の一部として実行することができる。
【0058】
機械学習アルゴリズムは、「深層学習」ネットワークなどのニューラルネットワーク、またはベイジアンエキスパートシステム600、あるいは遺伝的アルゴリズム、決定木学習アルゴリズム、関連ルール学習方式、などの第1組のデータポイントと第2組のデータポイントとの間の相関を学習するように動作することができる任意の適切な仕組みを採用することができる。
【0059】
そのような相関の例として、ボールの動きとディスプレイ装置の動き、可視的に表示された領域の周辺または周辺付近における1つ以上の所定の種類の実際の物体または仮想オブジェクトの全体または一部分の出現と、それらを中央に移動させる動き、可視の物体に関する音源と、それを中央に移動させる動き、などが挙げられる。
【0060】
図6に示されるシステム600は、ビデオカメラユニット602によってキャプチャされたビデオ画像の一部を処理するように構成されたシーンプロセッサ606をさらに備える。図6において見て取ることができるとおり、シーンプロセッサ606は、図6に示されるように、動き予測器604およびビデオカメラユニット602から入力を受け取る。シーンプロセッサ606は、ディスプレイ装置20が予測されたやり方で移動したときに結果としてユーザの視野内に入ると予想される環境の領域に対応するビデオ画像の部分を識別するように構成される。
【0061】
図4に示した例において、これは、キャプチャされたビデオ画像の第2の部分402Bが後の時点においてユーザのビューの範囲内に入る可能性が高いことを検出することに対応し得る。したがって、シーンプロセッサ606は、キャプチャされたビデオ画像のこの部分を識別し、処理することができる。すでに述べたように、ビデオカメラユニット602は、2つのビデオカメラを備えることができ、環境についてのユーザのビューは、一方のカメラによってキャプチャされたビデオ画像に対応し得る。この場合、シーンプロセッサ606は、他方のカメラによってキャプチャされた画像を処理するように構成されてよい。
【0062】
図6に戻ると、シーンプロセッサ606を、キャプチャされたビデオ画像の識別された部分に存在する照明条件を処理するように構成することができる。例えば、一部の環境においては、例えば各々の場所が光源にどれだけ近いか遠いかに応じて、照明が環境内の種々の場所において異なる可能性がある。シーンプロセッサ606を、例えば、ビデオ画像の識別された部分の露出レベル、色温度、ホワイトバランス、優勢なシーン色、などを検出することによって照明条件を検出するように構成することができる。
【0063】
さらなる実施形態または代案の実施形態においては、シーンプロセッサ606を、キャプチャされたビデオ画像の識別された部分における任意の物理的な(すなわち、現実の)物体、あるいは物理的な表面または境界の存在を検出するように構成することができる。図4の例において、これは、キャプチャされたビデオ画像内の第2のプレーヤの位置を検出し、シーンプロセッサ606において受信される後続のビデオ画像におけるこのプレーヤの位置を追跡することを含み得る。
【0064】
いくつかの例においては、シーンプロセッサ606は、検出された物理的な物体を、予め定められた物体に対応するものとして識別するように構成され得る。図4の例において、これは、第2の部分における第2のプレーヤ404Bの存在を検出し、このプレーヤを人として(さらに、随意により、システム600にとって身元が既知である人として)認識することに対応し得る。キャプチャされたビデオ画像内の物体の検出および/または認識は、例えばコンピュータビジョンまたは機械学習によって達成することができる。他の例においては、ディスプレイ装置20にとってアクセス可能なデータベースを介して、検出および/または認識を達成することができる。例えば、データベースは、複数の異なる物体の各々についての画像特徴を定義することができ、キャプチャされた画像内の物体を、データベースに格納されている画像特徴との比較に基づいて認識することができる。
【0065】
さらに、好ましい例において、シーンプロセッサ606は、環境についてのユーザの後のビューの範囲内に入ると予想される物理的な物体の深度(距離)を決定するように構成される。例えば、ディスプレイ装置20は、ユーザの環境の深度データを取り込むための深度カメラまたは3Dスキャナを含むことができる。シーンプロセッサ606を、キャプチャされたビデオ画像の識別された部分に存在するとして検出された任意の物理的な物体の深度を決定するように構成することができる。2つのビデオカメラが使用される例においては、技術的に知られているとおり、物理的な物体の深度を、2ビュー深度推定によって決定することができる。そのような物体が、最初は1つのカメラにとってのみ視認可能であり、したがって2ビュー深度推定に適さない可能性があることを、理解できるであろう。この場合、随意により、シーン内の現時点において既知の物体とのサイズ比較を使用して、物理的な物体の距離を概算することができる。同様に、随意により、シーン内の物理的な物体に関するサイズデータを、画像および深度データ(利用可能な場合)から確立させ、所定の期間にわたって記憶することができ、したがって、その物体に再度遭遇した場合に、その距離を単一の画像内の見かけのサイズから推定することができる。一般に、物理的な物体の深度の検出は、仮想オブジェクトを適切なオクルージョン(存在する場合)で表示することを可能にするため、有用である。
【0066】
いくつかの例において、ディスプレイ装置20は、シーンプロセッサ606を備える。他の例において、シーンプロセッサ606は、ディスプレイ装置と通信する別個のコンピューティングデバイスに実装されてよい。例えば、シーンプロセッサ606は、例えばゲーム機において実行されてよく、あるいは、例えばディスプレイ装置が通信ネットワークを介して通信するサーバにおいて実行されてよい。
【0067】
図6において見て取ることができるとおり、シーンプロセッサ606は、画像生成器608に入力を提供するものとして示されている。入力は、検出された照明条件、ならびにユーザが(使用されるディスプレイ装置の種類に応じて、直接的または間接的に)見ることが予想される環境の領域内の任意の物理的な物体、表面、または境界の存在のうちの少なくとも1つを示すデータを含むことができる。
【0068】
画像生成器608は、シーンプロセッサ606からの入力の受信に応答して、ディスプレイ装置に表示するための仮想オブジェクト502を生成するように構成される。画像生成器608は、照明条件、ならびにユーザがディスプレイ装置において予測された動きを実行したときに結果としてユーザのビューの範囲内に入ると予想される任意の物理的な物体、表面、または境界を考慮に入れる仮想オブジェクト502を生成するように構成される。画像生成器608は、生成した仮想オブジェクト502を、予測された動きの検出に応答して出力するように構成される。これにより、検出された照明条件、物理的な物体、物理的な表面、または境界がユーザに見えるようになったときにのみ、仮想オブジェクト502がユーザに表示されることが保証される。図6において、画像生成器608は、ディスプレイ装置20に表示するために仮想オブジェクト502を出力するように示されている。
【0069】
図6において、画像生成器608は、破線の矢印の形態で、追加の入力を受け取るように示されている。この入力は、ゲーム機などの別個のコンピューティングデバイスから受信される画像データに対応し得る。例えば、ゲーム機が、仮想オブジェクト502を生成するように構成されてよく、画像生成器608が、シーンプロセッサ606によって実行される処理に基づいて、仮想オブジェクト502の1つ以上の特性を調整するように構成されてよい。
【0070】
いくつかの例において、画像生成器608は、ディスプレイ装置20から分離していてもよい。例えば、シーンの処理および画像の生成の両方が、ディスプレイ装置20と通信する別個のコンピューティングデバイスで実行されてよい。したがって、ディスプレイ装置20は、別個のコンピューティングデバイスで生成された仮想オブジェクト502を表示するだけでよい。
【0071】
次に、図6のシステム600の使用例を、図5に関連して説明する。
【0072】
図5において、環境についてのユーザの現在のビュー(すなわち、ユーザのスマートフォンの画面において見ることができる)は、第1のプレーヤ404Aおよび第2のプレーヤ404B、ならびにバスケットボールフープ406、およびT-Rexを含む。T-Rexは、画像生成器608によって生成された仮想オブジェクト502に相当する。
【0073】
図5においては、第2のプレーヤ404Bが第1のプレーヤを呼んでいるかもしれず、あるいは第1のプレーヤ404Aがおおむね第2のプレーヤ404Bの方向に移動しているかもしれない。そのような場合、ユーザ10が、第1のプレーヤ404Aを追うようにスマートフォンを回転させ、あるいは第2のプレーヤ404Bをより中央に位置させるビューを得るようにスマートフォンを回転させることが予想され得る。したがって、動き予測器604は、ユーザ10がスマートフォンで対応する動き、すなわち回転(矢印506によって示される)を実行すると予測することができる。これに応答して、シーンプロセッサ606は、ユーザの次の視野の範囲内に入ると予想されるシーンの部分を識別し、処理する。すでに述べたように、これは、シーンのその部分を含むビデオ画像の一部を処理すること、またはシーンのその領域よりも多くを含むビデオ画像を処理することを含むことができる。
【0074】
画像生成器608は、シーンプロセッサ606によって実行される処理に基づいて、T-Rexの画像を生成するように構成される。これは、例えば、環境のうちのユーザが見ると予想される領域の照明条件に曝されるT-Rexの画像を生成することを含み得る。図示されていないが、例えば、バスケットボールコートのうちの第2のプレーヤ404Bによって占められている部分が、バスケットボールコートのうちの第1のプレーヤ404Aによって占められている部分よりも暗く、あるいは明るいかもしれない。いくつかの例において、画像生成器608は、例えば第2のプレーヤ404Bとの相互作用に対応するT-Rexのアニメーションを生成するように構成され得る。
【0075】
図5に示されているT-Rexが、表示された画像の右側の方に位置している一方で、画像生成器608を、例えばバスケットボールを追いかけるようにT-Rexをアニメーションさせるように構成できることを、理解できるであろう。そのような場合、T-Rexが第2のプレーヤに向かって移動しているように描かれることが予想され得る。そのような場合、画像生成器608は、ユーザのビューが変化するときに、T-Rexが正しい照明で出現し、環境についてのユーザのビューに含まれるあらゆる物理的な物体、境界、または表面を尊重するように、T-Rexの表示を調整するように構成される。
【0076】
図7が、本発明による方法の一例を示している。
【0077】
ステップS702において、環境のビューが、ディスプレイ装置に提示される。ビューは、現実世界のビュー(例えば、拡張現実)または仮想世界のビュー(例えば、複合現実)に対応し得る。一例において、環境は、図4および図5に関連してすでに説明したバスケットボールコートであり得る。
【0078】
ステップS704において、環境のビデオ画像が、ビデオカメラでキャプチャされる。ビデオ画像にキャプチャされた環境の領域は、ディスプレイ装置において見ることができる環境の領域よりも大きい。すでに説明したように、ビデオカメラは、ディスプレイ装置自体の一部を形成してもよく、あるいはディスプレイ装置から分離していてもよい(しかしながら、ディスプレイ装置と通信する)。ビデオ画像を、すでに述べたように、2つのビデオカメラまたは単一のビデオカメラによってキャプチャすることができる。
【0079】
ステップS706において、ビデオカメラの動きが予測される。ビデオカメラの動きを、すでに述べた方法のいずれかに基づいて予測することができる。例えば、動きを、キャプチャされたビデオ画像のコンテンツ、ユーザの視線方向の変化、および現在の時点より前のディスプレイ装置の動き(例えば、ビデオカメラの現在の軌跡)のうちの少なくとも1つに基づいて予測することができる。すでに述べたように、機械学習を使用して、ビデオコンテンツとビデオカメラの後の動きとの間の関係を識別することができる。いくつかの例においては、ビデオカメラの動きを、キャプチャされたビデオ画像内の1つ以上の物理的な物体(人など)の検出された動きに基づいて予測することができる。
【0080】
ステップS708において、環境のうちのディスプレイ装置において見えるようにされると予想される領域が識別される。この領域は、予測されたビデオカメラの動きに基づいて識別される。
【0081】
ステップ710において、ディスプレイ装置において見えるようにされるべき環境の部分に対応するキャプチャされたビデオ画像の部分が処理される。処理は、キャプチャされたビデオ画像の部分に存在する照明条件を決定すること、およびキャプチャされた画像の部分内の1つ以上の物理的な物体を検出することのうちの少なくとも1つを含むことができる。1つ以上の物理的な物体の検出は、キャプチャされたビデオ画像内の物体の相対位置および深度の検出を含むことができる。1つ以上の物理的な物体を、例えばコンピュータビジョンまたは機械学習を使用して検出することができる。
【0082】
ステップS712において、ステップS710において実行された処理に基づいて、仮想オブジェクトの画像が生成される。仮想オブジェクトは、ディスプレイ装置に提示される環境のビュー内に表示されるように生成される。すでに述べたように、仮想オブジェクトを、ステップS710の処理の一部として検出された照明条件に曝されるように生成することができる。さらなる例においては、仮想オブジェクトを、1つ以上の検出された物理的な物体に基づいて生成することができる。これは、ステップS710において識別された1つ以上の物理的な物体の相対位置および深度に依存するオクルージョンを有するように仮想オブジェクトを生成することを含み得る。これは、環境内の1つ以上の検出された物理的な物体と相互作用するように仮想オブジェクトをアニメーションさせることも含み得る。仮想オブジェクトは、例えば、図5に関してすでに述べたT-Rexであってよい。
【0083】
ステップS714において、予測された動きに対応するビデオカメラの動きが検出される。いくつかの例において、これは完全な一致である必要はなく、むしろ予測された動きに充分に類似した動きである。
【0084】
ステップS716において、生成された仮想オブジェクトはディスプレイ装置に表示される。仮想オブジェクトを、ディスプレイ装置に提示された環境のビューの上に重ね合わせることができ、あるいは現実世界の環境に(少なくとも部分的に)対応する仮想環境内に埋め込むことができる。表示された仮想オブジェクトは、すでに述べたように、例えばシーン内の適切な位置、深度、相互作用、および照明を有するT-Rexに相当することができる。
【0085】
本明細書に記載の実施形態に従って仮想オブジェクトを生成することによって、ディスプレイ装置は、周囲の環境についてのユーザのビューの変化を先取りし、それに応じて仮想オブジェクトの表示を調整することができる。これにより、環境のうちのその部分がユーザのビュー内に入る前に処理の大部分がすでに実行されているため、仮想オブジェクトをリアルタイムで環境と相互作用しているように描くことができる。
【0086】
したがって、本発明の利点は、ディスプレイ装置の視野の変化を予測し、したがって現実世界の環境のどの部分が見えるようになり得るのかを予測することにより、拡張現実の目的のための現実世界の環境の少なくとも一部分の特徴付け(表面、境界、物体、照明条件、などの識別など)を、そのような拡張の発生(典型的には、毎秒30または60フレームの速度を有する)を先取りして実行することができ、したがって最初の可視フレーム内で環境を特徴付けなければならない処理のボトルネックまたはピークを回避できることである。
【0087】
対応する利点は、随意により、システムが、現実世界の環境のどの部分がもはや見えなくなるかを同じように予測することもでき、したがって計算リソースを削減できることである。例えば、その部分の特徴付けデータを外し、あるいは予測が正しいかどうかが明確になるまでその部分の相互作用や拡張の計算を延期することができる。
【0088】
やはり同様に、見えるようになると予測される現実世界の環境の少なくとも一部の事前の特徴付けに加えて、随意により、環境のその部分に対応する任意の増強に関連する資産を事前に準備する(例えば、バスケットボールフープが今にも見えるようになろうとしていると予測される場合にフープを点滅光で拡張するために、関連のテクスチャを解凍し、あるいは関連のシェーダをロードする)こともできる。
【0089】
以上の説明は、大部分において、HMDまたはモバイルデバイスなどのディスプレイ装置20がカメラおよびディスプレイを同じ装置の一部として備え、随意により処理の一部またはすべてがビデオゲーム機またはサーバなどの遠方の装置で実行されると仮定している。しかしながら、本明細書の技術が、第1のユーザが(例えば、スポーツイベントに出向いて)カメラまたは各カメラを制御し、ビューを遠方のディスプレイ装置(例えば、家族あるいはストリーミング/ブロードキャストの契約者のディスプレイ装置)へとストリーミング/ブロードキャストするテレプレゼンスシステムにも適用可能であることを、理解できるであろう。この場合、モジュール604および606は、カメラ、ディスプレイユニット、あるいはビデオゲーム機またはサーバなどのさらなる遠方の装置に位置することができる。
【0090】
したがって、上述の構成のいずれも、本明細書に記載の技術に従って仮想オブジェクトを表示するためのシステムとして機能できることを、理解できるであろう。
【0091】
上述の技術は、ハードウェア、ソフトウェア、または両者の組み合わせにて実施可能である。実施形態の1つ以上の特徴を実施するためにソフトウェアによって制御されるデータ処理装置が使用される場合、そのようなソフトウェア、ならびにそのようなソフトウェアを提供するための非一時的な機械可読記憶媒体などの記憶媒体または伝送媒体も、本発明の実施形態と見なされることを理解できるであろう。
図1
図2
図3A
図3B
図4
図5
図6
図7