特許第6787622号(P6787622)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ インテル・コーポレーションの特許一覧

特許6787622ヘッドマウントディスプレイ更新バッファ
<>
  • 特許6787622-ヘッドマウントディスプレイ更新バッファ 図000002
  • 特許6787622-ヘッドマウントディスプレイ更新バッファ 図000003
  • 特許6787622-ヘッドマウントディスプレイ更新バッファ 図000004
  • 特許6787622-ヘッドマウントディスプレイ更新バッファ 図000005
  • 特許6787622-ヘッドマウントディスプレイ更新バッファ 図000006
  • 特許6787622-ヘッドマウントディスプレイ更新バッファ 図000007
  • 特許6787622-ヘッドマウントディスプレイ更新バッファ 図000008
  • 特許6787622-ヘッドマウントディスプレイ更新バッファ 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6787622
(24)【登録日】2020年11月2日
(45)【発行日】2020年11月18日
(54)【発明の名称】ヘッドマウントディスプレイ更新バッファ
(51)【国際特許分類】
   G09G 5/00 20060101AFI20201109BHJP
   G09G 5/39 20060101ALI20201109BHJP
   G09G 5/36 20060101ALI20201109BHJP
   G02B 27/02 20060101ALI20201109BHJP
   G06F 3/14 20060101ALI20201109BHJP
【FI】
   G09G5/00 550M
   G09G5/36 530D
   G09G5/00 550R
   G09G5/00 550P
   G09G5/00 550C
   G09G5/00 555D
   G09G5/36 520P
   G02B27/02 Z
   G06F3/14 360C
   G06F3/14 360B
【請求項の数】18
【全頁数】17
(21)【出願番号】特願2017-526934(P2017-526934)
(86)(22)【出願日】2015年10月5日
(65)【公表番号】特表2018-502317(P2018-502317A)
(43)【公表日】2018年1月25日
(86)【国際出願番号】US2015053949
(87)【国際公開番号】WO2016099630
(87)【国際公開日】20160623
【審査請求日】2018年9月28日
(31)【優先権主張番号】14/575,612
(32)【優先日】2014年12月18日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】591003943
【氏名又は名称】インテル・コーポレーション
(74)【代理人】
【識別番号】110000877
【氏名又は名称】龍華国際特許業務法人
(72)【発明者】
【氏名】トゥラシマニ、シヴァクマル
(72)【発明者】
【氏名】スマイタンギ タッタイ、ガネシュ ラム
(72)【発明者】
【氏名】サメール、カラチル、ペラジ
【審査官】 橋本 直明
(56)【参考文献】
【文献】 特開2000−029617(JP,A)
【文献】 特開2013−093706(JP,A)
【文献】 国際公開第2014/128810(WO,A1)
【文献】 米国特許出願公開第2014/0111427(US,A1)
【文献】 特開2013−258614(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G09G 5/00
G02B 27/02
G06F 3/14
G09G 5/36
G09G 5/39
(57)【特許請求の範囲】
【請求項1】
環境のビューを表示するヘッドマウントディスプレイ(HMD)デバイスと、
前記HMDデバイスの更新バッファであって、
前記環境の現在のビューの画像データと、
前記現在のビュー外にある前記環境の画像データと
を含む画像データを記憶する更新バッファと、
更新モジュールと、
前記更新バッファにおける、前記HMDデバイスの動きに起因する前記環境の新しいビューに対する更新と、前記環境の現在のビューに対する更新と、前記現在のビュー外にある前記環境の前記画像データに対する更新とのうちの少なくとも1つを含む、更新を提供する前記HMDデバイスの外部のソースコンピューティングデバイスと
を備え、
前記更新モジュールが、前記ソースコンピューティングデバイスから前記HMDデバイスに表示される画像データを直接提供するのではなく、前記更新バッファから前記HMDデバイスに表示される画像データを提供し、
前記更新モジュールがさらに、前記更新バッファに選択的更新を前記ソースコンピューティングデバイスに指示し、画像データの変化率が所定の閾値を超えることをトリガとして前記現在のビューの画像データへの更新を含む前記選択的更新が行われる、
画像データを更新するための装置。
【請求項2】
前記更新モジュールが、
前記HMDデバイスの動きに起因する前記環境の新しいビューに対する更新を提供し、
前記環境の現在のビューに対する更新を提供し、
前記現在のビュー外にある前記環境の前記画像データに対する更新を提供する、
請求項1に記載の装置。
【請求項3】
前記更新モジュールが、
前記HMDデバイスの動きがいつ発生したかを判定し、
前記動きに起因する新しいビューの新しい位置を計算し、
前記更新バッファから画像データを提供することによって前記HMDデバイスに表示されるコンテンツを更新し、
前記ソースコンピューティングデバイスに前記動きを通知する、
請求項1または2に記載の装置。
【請求項4】
前記更新モジュールがさらに、前記更新バッファに選択的更新を提供するために前記ソースコンピューティングデバイスに指示し、前記選択的更新が、画像データの変化率が所定の閾値を超える前記現在のビュー外にある前記環境の前記画像データへの更新を含む、請求項1〜3のいずれか一項に記載の装置。
【請求項5】
前記更新モジュールがさらに、前記更新バッファから部分的更新を取得し、前記部分的更新が、前記現在のビューの一部と、前記HMDデバイスの動きの後に以前は前記現在のビュー外にあった前記環境の前記画像データの一部とを含む、請求項1〜4のいずれか一項に記載の装置。
【請求項6】
前記更新モジュールがさらに、部分的更新を取得し、前記ソースコンピューティングデバイスから提供される新しいビューの一部が前記更新バッファから利用可能でないときに、前記部分的更新が、前記新しいビューの前記一部を含む、請求項1〜5のいずれか一項に記載の装置。
【請求項7】
前記現在のビューの前記画像データが、前記現在のビュー外にある前記環境の前記画像データより低いサイズの解像度である、請求項1〜6のいずれか一項に記載の装置。
【請求項8】
ヘッドマウントディスプレイ(HMD)デバイスに環境のビューを表示することと、
前記HMDデバイスの更新バッファに画像データを記憶することと
を含み、
前記画像データは、
前記環境の現在のビューの画像データと、
前記現在のビュー外にある前記環境の画像データと
を含み、
前記更新バッファから前記HMDデバイスに表示される画像データを提供することと、
前記HMDデバイスの外部のソースコンピューティングデバイスから前記更新バッファにおける、前記HMDデバイスの動きに起因する前記環境の新しいビューに対する更新と、前記環境の現在のビューに対する更新と、前記現在のビュー外にある前記環境の前記画像データに対する更新とのうちの少なくとも1つを含む、更新を提供することと、
前記更新バッファに選択的更新を提供するために前記ソースコンピューティングデバイスに指示することと
像データの変化率が所定の閾値を超えることをトリガとして前記現在のビューの画像データへの更新を含む前記選択的更新を行うことと、をさらに含む
画像データを更新するための方法。
【請求項9】
前記HMDデバイスの動きに起因する前記環境の新しいビューに対する更新を提供することと、
前記環境の現在のビューに対する更新を提供することと、
前記現在のビュー外にある前記環境の前記画像データに対する更新を提供することと
を含む、
請求項8に記載の方法。
【請求項10】
前記HMDデバイスの動きがいつ発生したかを判定することと、
前記動きに起因する新しいビューの新しい位置を計算することと、
前記更新バッファから画像データを提供することによって前記HMDデバイスに表示されるコンテンツを更新することと、
前記ソースコンピューティングデバイスに前記動きを通知することと
をさらに含む、請求項8または9に記載の方法。
【請求項11】
前記更新バッファに選択的更新を提供するために前記ソースコンピューティングデバイスに指示することをさらに含み、前記選択的更新が、画像データの変化率が所定の閾値を超える前記現在のビュー外にある前記環境の前記画像データへの更新を含む、請求項8〜10のいずれか一項に記載の方法。
【請求項12】
前記更新バッファから部分的更新を提供することをさらに含み、前記部分的更新が、前記現在のビューの一部と、前記HMDデバイスの動きの後に以前は前記現在のビュー外にあった前記環境の前記画像データの一部とを含む、請求項8〜11のいずれか一項に記載の方法。
【請求項13】
前記ソースコンピューティングデバイスから部分的更新を取得することをさらに含み、前記ソースコンピューティングデバイスから提供される新しいビューの一部が前記更新バッファから利用可能でないときに、前記部分的更新が、前記新しいビューの前記一部を含む、請求項8〜12のいずれか一項に記載の方法。
【請求項14】
前記現在のビューの前記画像データが、前記現在のビュー外にある前記環境の前記画像データより低いサイズの解像度である、請求項8〜13のいずれか一項に記載の方法。
【請求項15】
環境のビューを表示するためのヘッドマウントディスプレイ(HMD)デバイスと、
前記HMDデバイスの更新バッファであって、前記環境の現在のビューの画像データ、および前記現在のビュー外にある前記環境の画像データを有する画像データを記憶する更新バッファと、
更新モジュールと、
前記更新バッファにおける、前記HMDデバイスの動きに起因する前記環境の新しいビューに対する更新と、前記環境の現在のビューに対する更新と、前記現在のビュー外にある前記環境の前記画像データに対する更新とのうちの少なくとも1つを含む、更新を提供する前記HMDデバイスの外部のソースコンピューティングデバイスと
を備え、
前記更新モジュールが、前記ソースコンピューティングデバイスから前記HMDデバイスに表示される画像データを直接提供するのではなく、前記更新バッファから前記HMDデバイスに表示される画像データを提供し、
前記更新モジュールは、さらに、前記ソースコンピューティングデバイスに指示して、前記更新バッファにおいて、画像データの変化率が所定の閾値を超えることをトリガとして前記現在のビューにある画像データへの更新を含む選択的更新が行われる、
画像データを更新するためのシステム。
【請求項16】
前記更新モジュールが、
前記HMDデバイスの動きに起因する前記環境の新しいビューに対する更新を提供し、
前記環境の現在のビューに対する更新を提供し、
前記現在のビュー外にある前記環境の前記画像データに対する更新を提供する、
請求項15に記載のシステム。
【請求項17】
前記更新モジュールが、前記HMDデバイスの動きがいつ発生したかを判定し、
前記動きに起因する新しいビューの新しい位置を計算し、
前記更新バッファから画像データを提供することによって前記HMDデバイスに表示されるコンテンツを更新し、
ソースコンピューティングデバイスに前記動きを通知する、請求項15または16に記載のシステム。
【請求項18】
前記更新モジュールがさらに、
画像データの変化率が所定の閾値を超える前記現在のビュー外にある前記環境の前記画像データへの更新を含む選択的更新をバッファに提供するために、および
前記現在のビューの一部と、前記HMDデバイスの動きの後に以前は前記現在のビュー外にあった前記環境の前記画像データの一部、
前記更新バッファから利用可能でないときに前記ソースコンピューティングデバイスから提供される新しいビューの一部、または
それらの任意の組み合わせ
を含む部分的更新を提供するために、
前記ソースコンピューティングデバイスに指示する、請求項15〜17のいずれか一項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本出願は、2014年12月18日に出願された米国特許出願第14/575,612号の出願日の利益を主張し、参照により本明細書に組み込まれる。
【背景技術】
【0002】
コンピュータグラフィックスでは、画像データをレンダリングして、ディスプレイデバイスに提供することができる。場合によっては、ディスプレイデバイスは、ヘッドマウントディスプレイ(HMD)デバイスを含み得る。HMDデバイスは、仮想現実システムで使用することができ、HMDの動きが表示される画像データに変化をもたらす。場合によっては、仮想現実または拡張現実システムにおいて、仮想現実酔いがHMDを使用することによる副作用となる。HMDデバイスのユーザは、HMDディスプレイがユーザの目に近接しているために画像更新に敏感な場合がある。たとえば、ユーザの頭の動きに遅れる画像更新は、不快感を与える可能性がある。遅延を招く画像更新は、画像更新プロセスのフローに関わる様々な構成要素に関連する場合がある。たとえば、HMDデバイスのセンサは、動きを検出することができ、センサイベントは、HMDの周辺にあるソースコンピューティングデバイスなどのソースに送信され得る。新しい更新は、ソースによってレンダリングされ、HMDに提供される。場合によっては、これらのステップは、最大40ミリ秒を必要とすることがある。この遅延時間は、ユーザが感じる仮想現実酔いに関連する可能性がある。
【図面の簡単な説明】
【0003】
図1】ヘッドマウントディスプレイ(HMD)デバイスに通信可能に結合されたソースコンピューティングデバイスを示すブロック図である。
【0004】
図2】可視領域および更新バッファ領域を含むHMDを示す図である。
【0005】
図3】更新バッファから提供される画像更新を示すプロセスのフロー図である。
【0006】
図4】更新バッファから提供され得る画像更新を示す図である。
【0007】
図5】ソースコンピューティングデバイスから提供され得る部分的更新を示す第1の図である。
【0008】
図6】ソースコンピューティングデバイスから提供され得る部分的更新を示す第2の図である。
【0009】
図7】画像データを変更するために提供され得る選択的更新を示す図である。
【0010】
図8】画像データを更新するための方法を示すブロック図である。
【発明を実施するための形態】
【0011】
本開示および図を通して、同じ参照番号を同様の構成要素および特徴を示すために使用する。100番台の番号は本来図1で見られる特徴を指し、200番台の番号は本来図2で見られる特徴を指しており、以下同様である。
【0012】
本明細書で開示される主題は、ヘッドマウントディスプレイ(HMD)デバイスに表示される画像データを更新するための技術に関する。上述したように、HMDデバイスに表示される画像データへの更新は、仮想または拡張現実環境において更新がHMDデバイスの動きに遅れる場合、ユーザに不快感を与える可能性がある。本明細書で説明される技術は、HMDデバイスに表示される環境の現在のビューの画像データを記憶することを含む。画像データは、HMDデバイスの更新バッファに記憶される。画像データは、環境の現在のビューの画像データ、ならびに現在のビュー外にある環境の画像データを含む。言い換えれば、更新バッファは、HMDの任意の所与のビューポートの現在のビューに対する解像度より高い解像度の画像データをローカルに記憶することができる。HMDデバイスに提供される画像更新を必要とする動きは、ローカル更新バッファからリトリーブすることができ、それにより画像更新の遅延を減少させ、ユーザ体験を改善する。
【0013】
図1は、ヘッドマウントディスプレイ(HMD)デバイスに通信可能に結合されたソースコンピューティングデバイスを示すブロック図である。コンピューティングデバイス100は、たとえば、とりわけラップトップコンピュータ、デスクトップコンピュータ、ウルトラブック、タブレットコンピュータ、モバイルデバイス、サーバ、またはデジタルビデオディスクプレーヤであってもよい。いずれにしても、コンピューティングデバイス100は、画像データをHMDデバイス102に提供するように構成されたビデオソースとすることができる。HMDデバイス102は、ユーザの頭に装着されるデバイスであってもよい。HMDデバイス102は、ディスプレイ104と、更新バッファ106とを含むことができる。コンピューティングデバイス100は、記憶された命令を実施するように構成されている中央処理ユニット(CPU)108と、非一時的コンピュータ可読媒体を含むストレージデバイス110と、メモリデバイス112とを含むことができる。
【0014】
コンピューティングデバイス100はまた、グラフィックス処理ユニット(GPU)114を含んでもよい。示されているように、CPU102は、バス116を介してGPU114に結合することができる。実施形態では、GPU114は、CPU102に組み込まれている。GPU114は、キャッシュを含むことができ、コンピューティングデバイス100内で任意の数のグラフィックス処理を実行するように構成することができる。たとえば、GPU108は、ディスプレイインターフェース118を介してHMDデバイス102でコンピューティングデバイス100のユーザに表示されるグラフィックス画像、グラフィックスフレーム、ビデオなどをレンダリングまたは操作するように構成してもよい。
【0015】
場合によっては、HMDデバイス102に表示される画像は、部分的には、仮想現実アプリケーション120によって生成されてもよい。場合によっては、仮想現実アプリケーション120は、拡張現実を含むことができる。いずれにしても、仮想現実アプリケーション120は、HMDデバイス102に表示される環境の画像データを提供するように構成することができる。環境の画像データは、更新バッファ106に記憶される。ディスプレイ104は、ビューポート内に画像を表示するように構成することができ、HMDデバイス102が移動すると、センサ122は動きを検出することができ、画像データは、コンピューティングデバイス102などのソースデバイスから直接ではなく更新バッファ106からリトリーブすることができる。上述したように、HMDデバイス102の更新バッファ106などのローカルバッファから画像データをリトリーブすることにより、ディスプレイ104に画像を表示することに関連する遅延時間を減少させることができる。
【0016】
HMDデバイス102はまた、更新モジュール124を含むことができる。更新モジュール124、センサ122、ディスプレイ104、および更新バッファ106は、以下により詳細に説明するコンピューティングデバイスのバス116と同様のバス126によって通信可能に結合することができる。更新モジュール124は、ハードウェアロジックを少なくとも部分的に含むロジックとして実装することができる。場合によっては、更新モジュール124は、集積回路、マイクロプロセッサなどとして実装されてもよい。更新モジュール124は、独立して、並列に、分散して、またはより広範なプロセスの一部として動作するように構成することができる。
【0017】
更新モジュール124は、更新ポリシーに基づいて、HMDデバイス102のディスプレイ104に表示されるように、更新バッファ106から画像データを提供するように構成することができる。たとえば、更新ポリシーは、第1の優先順位でHMDデバイス102の動きに起因する環境の新しいビューに対する更新を提供することと、第1の優先順位より低い第2の優先順位で環境の現在のビューに対する更新を提供することと、第2の優先順位より低い第3の優先順位で現在のビュー外にある環境の画像データに対する更新を提供することとを含む。
【0018】
場合によっては、更新モジュール124は、センサ122によって検出されるHMDデバイス102の動きがいつ発生したかを判定し、動きに起因する新しいビューの新しい位置を計算するように構成されてもよい。HMDデバイス102に表示されるコンテンツは、更新バッファ106から画像データを提供することによって更新することができる。さらに、HMDデバイス102は、コンピューティングデバイス100に動きを通知するように構成することができる。
【0019】
更新モジュール124は、追加の処理を実行するように構成することができる。たとえば、更新モジュール124は、以下により詳細に説明するように、選択的更新、部分的更新などを実行するように構成することができる。
【0020】
CPU102は、バス116を介して、コンピューティングデバイス100をデジタルディスプレイインターフェースを介してHMDデバイス102に接続するように構成されたディスプレイインターフェース118にリンクすることができる。CPU102は、記憶された命令を実施するように適合されているメインプロセッサであってもよい。CPU102は、単一コアプロセッサ、マルチコアプロセッサ、コンピューティングクラスタ、または任意の数の他の構成であってもよい。CPU102は、複合命令セットコンピュータ(CISC)または縮小命令セットコンピュータ(RISC)プロセッサ、x86命令セット互換プロセッサ、マルチコア、または任意の他のマイクロプロセッサもしくは中央処理ユニット(CPU)として実装することができる。
【0021】
メモリデバイス112は、ランダムアクセスメモリ(RAM)(たとえば、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ゼロキャパシタRAM、シリコン−酸化物−窒化物−酸化物−シリコンSONOS、混載DRAM、エクステンディッドデータアウトRAM、ダブルデータレート(DDR)RAM、抵抗ランダムアクセスメモリ(RRAM(登録商標))、パラメータランダムアクセスメモリ(PRAM)など)、リードオンリメモリ(ROM)(たとえば、マスクROM、プログラマブルリードオンリメモリ(PROM)、消去可能プログラマブルリードオンリメモリ(EPROM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)など)、フラッシュメモリ、または任意の他の適切なメモリシステムを含むことができる。CPU108は、システムバス116(たとえば、ペリフェラルコンポーネントインターコネクト(PCI)、インダストリスタンダードアーキテクチャ(ISA)、PCIエクスプレス、ハイパートランスポート(登録商標)、ヌーバスなど)を介して、メモリ112およびストレージデバイス110を含む構成要素に接続することができる。
【0022】
更新バッファ106は、メモリデバイス112と同様のメモリデバイスであってもよい。たとえば、更新バッファ106は、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、フラッシュメモリ、または任意の他の適切なメモリシステムを含むことができる。
【0023】
図1のブロック図は、コンピューティングデバイス100およびHMDデバイス102が図1に示されている構成要素のすべてを含まなければならないことを示すことを意図するものではない。さらに、コンピューティングデバイス100および/またはHMDデバイス102は、特定の実装の詳細に応じて、図1に示されていない任意の数の追加の構成要素を含むことができる。
【0024】
図2は、可視領域および更新バッファ領域を含むHMDを示す図である。上述したように、図1の更新バッファ106に記憶された画像データは、HMDデバイス102のビューポートを介して見ることができるデータより多くのデータを含むことができる。図2に示すように、可視領域202は、HMDデバイス102の図1のディスプレイ104のような、ディスプレイで見ることができる領域を示している。対照的に、更新バッファ106は、現在のビューの可視領域202とより大きい領域204の画像データの両方の画像データを含むことができ、それによりユーザ206が動いても、遅延が少なくHMDデバイス102のディスプレイに画像が提供される。場合によっては、更新は、本明細書において「ゼロ遅延更新」と呼ぶこともできる。更新は、ユーザ206の動きの結果として、コンテンツ自体の変化の結果として、またはそれらの任意の組み合わせの結果として、表示されたコンテンツに変化が発生するときに画像コンテンツが表示される処理である。
【0025】
図3は、更新バッファから提供される画像更新を示すプロセスのフロー図である。図1のコンピューティングデバイス100などのコンピューティングデバイスは、302に示すように、HMDデバイス102に画像データを提供するように構成されたビデオソースとすることができる。画像データは、304でレンダリングされ、パケットは、306で送信され得る。304におけるレンダリングは、図5図7に関して以下により詳細に説明するように、フレーム全体であってもよいし、または選択的更新、部分的更新、もしくはそれらの任意の組み合わせに基づいてもよい。
【0026】
306で送信されたパケットは、図1に関して上述したような更新ポリシーに基づいて送信することができる。より具体的には、更新ポリシーは、第1の優先順位でHMDデバイスの動きに起因する環境の新しいビューに対する更新を送信することができる。第1の優先順位より低い第2の優先順位では、環境の現在のビューに対する更新が提供される。第2の優先順位より低い第3の優先順位では、現在のビュー外にある環境の画像データに対する更新が提供される。更新ポリシーは、更新モジュール124などのHMDデバイス102のモジュール、コンピューティングデバイス102のモジュール、またはそれらの任意の組み合わせによって実装されてもよい。
【0027】
HMDデバイス102では、画像データの中心は、308に示すように、HMDデバイス102に表示されている可視領域または現在のビューに基づいて、図1の更新バッファ106などの更新バッファに設定される。310では、更新フレームが、更新ポリシーに基づいて更新バッファ106に提供される。312では、動きを待機し、314では、動きが検出された後に新しいビューの方向および位置が計算される。316では、新しいビューで表示されるコンテンツが、図1のディスプレイ104などのHMDのディスプレイで更新される。矢印318によって示されるように、プロセスは、さらなる動きが検出されるまで待機するために312に戻ることができ、320において、コンピューティングデバイス100に動きが通知される。
【0028】
図4は、更新バッファから提供され得る画像更新を示す図である。上述したように、図1のHMD102のディスプレイ104などのディスプレイへの更新は、更新バッファ106などのHMDにローカルであるバッファからリトリーブすることができる。図4において、破線のボックスは、画像データのビューを示している。402では、破線のボックスは、現在のビューを示している。ボックス404,406,408,410および412は、図1のコンピューティングデバイス100などのビデオソースから直接更新が提供されることを必要とするのではなく、更新バッファ106から表示およびリトリーブされ得る可能性のある新しいビューとすることができる。
【0029】
図5は、ソースコンピューティングデバイスから提供され得る部分的更新を示す第1の図である。図5において、更新バッファ106の画像データ502は、現在のビュー504と、可能性のある新しいビュー506とを含む。ユーザが回転すると、図1のHMDデバイス102は、その動きを検出することができる。左に回転すると、新しいビュー506の一部を明らかにすることができる。
【0030】
いくつかの実施形態では、新しいビューの一部を明らかにすることは、本明細書において部分的更新と呼ぶこともできる。しかし、部分的更新はまた、コンピューティングデバイス102などのビデオソースから図1の更新バッファ106に提供され、図6に関して以下により詳細に説明する更新と見なすことができる。
【0031】
図6は、ソースコンピューティングデバイスから提供され得る部分的更新を示す第2の図である。図6において、602は、表示されている現在のビューを示している。場合によっては、更新バッファ106は、バッファフレーム606全体の一部604に関連する画像データを含まなくてもよい。この場合、図1のコンピューティングデバイス100などのビデオソースからバッファフレーム606全体を要求するのではなく、バッファフレーム606全体の一部604のみを含む部分的更新を、コンピューティングデバイス100から提供することができる。このシナリオでは、部分的更新を介してコンピューティングデバイス100からリトリーブされた可能性のあるビュー610および612に対する更新は、バッファフレーム606全体がコンピューティングデバイス100からリトリーブされた場合に発生する遅延時間を低減することができる。
【0032】
図7は、画像データを変更するために提供され得る選択的更新を示す図である。場合によっては、更新は、図1のコンピューティングデバイス100などのビデオソースからHMD102の更新バッファ106に選択的に提供されてもよい。図7に示すように、バッファフレーム702全体は、現在のビュー704と、706,708,710および712を含む他の可能性のある新しいビューとを含む。本明細書で説明される技術は、画像データの変化率に基づいてバッファフレーム702全体の画像データの一部を選択的に更新することを含む。
【0033】
たとえば、図7において、電車に関連する画像データは、領域714外にある画像データより領域714内で急速に変化する可能性がある。このシナリオでは、更新は、バッファフレーム702全体に対する更新とは反対に、領域714に対してコンピューティングデバイス100から更新バッファ106に提供されてもよい。このシナリオでは、更新バッファ106への更新は、現在のビュー704内にある画像データ、現在のビュー704外にあるが領域714内にある画像データ、またはそれらの任意の組み合わせに提供されてもよい。選択的更新は、所定の閾値を超える変化率によってトリガされてもよく、図2に関して上述した更新モジュール124によって指示されてもよい。
【0034】
選択的更新および部分的更新は、場合によっては、図1および図3に関して上述したような更新ポリシーと連動して機能してもよい。たとえば、図7において、現在のビュー704に含まれる領域714への更新は、現在のビュー704外にある領域714に対して提供された更新より高い優先順位で提供されてもよい。
【0035】
図8は、画像データを更新するための方法を示すブロック図である。802では、方法800は、ヘッドマウントディスプレイ(HMD)デバイスに環境のビューを表示することを含む。804では、方法800は、HMDデバイスの更新バッファに画像データを記憶することを含む。画像データは、環境の現在のビューの画像データと、現在のビュー外にある環境の画像データとを含む。場合によっては、方法800は、HMDデバイスの動きが発生したときに現在のビュー外にある環境の現在のビューまたは画像データのいずれかを表示すること806を含むことができる。
【0036】
場合によっては、方法800は、更新ポリシーに基づいて更新バッファからHMDデバイスに表示される画像データを提供することを含むことができる。更新ポリシーは、第1の優先順位でHMDの動きに起因する環境の新しいビューに対する更新を提供することと、第1の優先順位より低い第2の優先順位で環境の現在のビューに対する更新を提供することとを含む。更新ポリシーはまた、第2の優先順位より低い第3の優先順位で現在のビュー外にある環境の画像データに対する更新を提供することを含む。
【0037】
場合によっては、方法800は、HMDデバイスの外部のソースコンピューティングデバイスから更新バッファに更新を提供することを含むことができる。ソースコンピューティングデバイスからの更新は、選択的更新、部分的更新、またはそれらの任意の組み合わせを含むことができる。
【0038】
例は、方法、方法の動作を実行するための手段、マシンによって実行されると、マシンに方法の動作を実行させる命令を含む少なくとも1つのマシン可読媒体のような主題を含み得る。上記の例の詳細は、1つまたは複数の実施形態のいずれでも使用できることを理解されたい。たとえば、上述したコンピューティングデバイスのすべての任意選択の特徴はまた、本明細書で説明される方法またはコンピュータ可読媒体のいずれかに関して実装されてもよい。さらに、フロー図および/または状態図を本明細書で用いて実施形態を記載したが、本技術は、これらの図または本明細書における対応する記載に限定されない。たとえば、フローは、図示された各ボックスまたは状態を通る必要はなく、図示され本明細書で説明された通りの同じ順序で通る必要もない。
【0039】
例1は、画像データを更新するための装置を含む。装置は、環境のビューを表示するヘッドマウントディスプレイ(HMD)デバイスを含む。装置はまた、HMDデバイスの更新バッファを含み、更新バッファは、画像データを記憶する。画像データは、環境の現在のビューの画像データと、現在のビュー外にある環境の画像データとを含む。
【0040】
例1において、装置は、以下に説明する場合の任意の組み合わせを含むことができる。場合によっては、装置は、ハードウェアロジックを少なくとも部分的に含む更新モジュールを含み、更新モジュールのロジックは、更新ポリシーに基づいて更新バッファからHMDデバイスに表示される画像データを提供する。更新ポリシーは、第1の優先順位でHMDデバイスの動きに起因する環境の新しいビューに対する更新を提供することと、第1の優先順位より低い第2の優先順位で環境の現在のビューに対する更新を提供することと、第2の優先順位より低い第3の優先順位で現在のビュー外にある環境の画像データに対する更新を提供することとを含む。
【0041】
場合によっては、装置は、更新バッファに更新を提供するHMDデバイスの外部のソースコンピューティングデバイスを含み、更新モジュールは、ソースコンピューティングデバイスからHMDデバイスに表示される画像データを直接提供するのではなく、更新バッファからHMDデバイスに表示される画像データを提供する。更新モジュールは、HMDデバイスの動きがいつ発生したかを判定し、動きに起因する新しいビューの新しい位置を計算し、更新バッファから画像データを提供することによってHMDデバイスに表示されるコンテンツを更新し、ソースコンピューティングデバイスに動きを通知するように構成することができる。場合によっては、更新モジュールはさらに、バッファに選択的更新を提供するためにソースに指示するように構成され、選択的更新は、所定の閾値を超えて変化する現在のビューの画像データへの更新を含む。場合によっては、更新モジュールはさらに、バッファに選択的更新を提供するためにソースに指示するように構成され、選択的更新は、所定の閾値を超えて変化する現在のビュー外にある環境の画像データへの更新を含む。場合によっては、更新モジュールはさらに、更新バッファから部分的更新をリトリーブするように構成され、部分的更新は、現在のビューの一部と、HMDデバイスの動きの後に以前は現在のビュー外にあった環境の画像データの一部とを含む。場合によっては、更新モジュールはさらに、部分的更新をリトリーブするように構成され、ソースから提供される新しいビューの一部が更新バッファから利用可能でないときに、部分的更新が新しいビューの一部を含む。さらに、場合によっては、現在のビューの画像データは、現在のビュー外にある環境の画像データより低いサイズの解像度である。
【0042】
例2は、画像データを更新するための方法を含む。方法は、ヘッドマウントディスプレイ(HMD)デバイスに環境のビューを表示することと、HMDデバイスの更新バッファに画像データを記憶することとを含む。画像データは、環境の現在のビューの画像データと、現在のビュー外にある環境の画像データとを含む。
【0043】
例2において、方法は、以下に説明する場合の任意の組み合わせを含むことができる。場合によっては、方法は、更新ポリシーに基づいて更新バッファからHMDデバイスに表示される画像データを提供することを含む。更新ポリシーは、第1の優先順位でHMDデバイスの動きに起因する環境の新しいビューに対する更新を提供することと、第1の優先順位より低い第2の優先順位で環境の現在のビューに対する更新を提供することと、第2の優先順位より低い第3の優先順位で現在のビュー外にある環境の画像データに対する更新を提供することとを含む。
【0044】
場合によっては、方法は、HMDデバイスの外部のソースコンピューティングデバイスから更新バッファに更新を提供することを含む。方法は、HMDデバイスの動きがいつ発生したかを判定することと、動きに起因する新しいビューの新しい位置を計算することと、更新バッファから画像データを提供することによってHMDデバイスに表示されるコンテンツを更新することと、ソースコンピューティングデバイスに動きを通知することとを含むことができる。場合によっては、方法は、バッファに選択的更新を提供するためにソースに指示することを含むことができ、選択的更新は、所定の閾値を超えて変化する現在のビューの画像データへの更新を含む。場合によっては、方法は、バッファに選択的更新を提供するためにソースに指示することを含むことができ、選択的更新は、所定の閾値を超えて変化する現在のビュー外にある環境の画像データへの更新を含む。場合によっては、方法は、更新バッファから部分的更新をリトリーブすることを含むことができ、部分的更新は、現在のビューの一部と、HMDデバイスの動きの後に以前は現在のビュー外にあった環境の画像データの一部とを含む。場合によっては、方法は、部分的更新をリトリーブすることを含むことができ、ソースから提供される新しいビューの一部が更新バッファから利用可能でないときに、部分的更新が新しいビューの一部を含む。さらに、場合によっては、現在のビューの画像データは、現在のビュー外にある環境の画像データより低いサイズの解像度である。
【0045】
例3は、画像データを更新するためのシステムを含む。システムは、環境のビューを表示するヘッドマウントディスプレイ(HMD)デバイスを含む。システムはまた、HMDデバイスの更新バッファを含み、更新バッファは、画像データを記憶する。画像データは、環境の現在のビューの画像データと、現在のビュー外にある環境の画像データとを含む。システムは、ハードウェアロジックを少なくとも部分的に含む更新モジュールを含み、更新モジュールのロジックは、更新ポリシーに基づいて更新バッファからHMDデバイスに表示される画像データを提供する。
【0046】
例3において、システムは、以下に説明する場合の任意の組み合わせを含むことができる。更新ポリシーは、第1の優先順位でHMDデバイスの動きに起因する環境の新しいビューに対する更新を提供することと、第1の優先順位より低い第2の優先順位で環境の現在のビューに対する更新を提供することと、第2の優先順位より低い第3の優先順位で現在のビュー外にある環境の画像データに対する更新を提供することとを含む。
【0047】
場合によっては、システムは、更新バッファに更新を提供するHMDデバイスの外部のソースコンピューティングデバイスを含み、更新モジュールは、ソースコンピューティングデバイスからHMDデバイスに表示される画像データを直接提供するのではなく、更新バッファからHMDデバイスに表示される画像データを提供する。更新モジュールは、HMDデバイスの動きがいつ発生したかを判定し、動きに起因する新しいビューの新しい位置を計算し、更新バッファから画像データを提供することによってHMDデバイスに表示されるコンテンツを更新し、ソースコンピューティングデバイスに動きを通知するように構成することができる。場合によっては、更新モジュールはさらに、バッファに選択的更新を提供するためにソースに指示するように構成され、選択的更新は、所定の閾値を超えて変化する現在のビューの画像データへの更新を含む。場合によっては、更新モジュールはさらに、バッファに選択的更新を提供するためにソースに指示するように構成され、選択的更新は、所定の閾値を超えて変化する現在のビュー外にある環境の画像データへの更新を含む。場合によっては、更新モジュールはさらに、更新バッファから部分的更新をリトリーブするように構成され、部分的更新は、現在のビューの一部と、HMDデバイスの動きの後に以前は現在のビュー外にあった環境の画像データの一部とを含む。場合によっては、更新モジュールはさらに、部分的更新をリトリーブするように構成され、ソースから提供される新しいビューの一部が更新バッファから利用可能でないときに、部分的更新が新しいビューの一部を含む。さらに、場合によっては、現在のビューの画像データは、現在のビュー外にある環境の画像データより低いサイズの解像度である。
【0048】
例4は、画像データを更新するための方法を含む。方法は、ヘッドマウントディスプレイ(HMD)デバイスに環境のビューを表示することと、HMDデバイスで画像データを記憶するための手段に画像データを記憶することとを含む。画像データは、環境の現在のビューの画像データと、現在のビュー外にある環境の画像データとを含む。
【0049】
例4において、方法は、以下に説明する場合の任意の組み合わせを含むことができる。場合によっては、方法は、更新ポリシーに基づいてHMDデバイスで画像データを記憶するための手段からHMDデバイスに表示される画像データを提供することを含む。更新ポリシーは、第1の優先順位でHMDデバイスの動きに起因する環境の新しいビューに対する更新を提供することと、第1の優先順位より低い第2の優先順位で環境の現在のビューに対する更新を提供することと、第2の優先順位より低い第3の優先順位で現在のビュー外にある環境の画像データに対する更新を提供することとを含む。
【0050】
場合によっては、方法は、HMDデバイスの外部のソースコンピューティングデバイスからHMDデバイスで画像データを記憶するための手段に更新を提供することを含む。方法は、HMDデバイスの動きがいつ発生したかを判定することと、動きに起因する新しいビューの新しい位置を計算することと、HMDデバイスで画像データを記憶するための手段から画像データを提供することによってHMDデバイスに表示されるコンテンツを更新することと、ソースコンピューティングデバイスに動きを通知することとを含むことができる。場合によっては、方法は、バッファに選択的更新を提供するためにソースに指示することを含むことができ、選択的更新は、所定の閾値を超えて変化する現在のビューの画像データへの更新を含む。場合によっては、方法は、バッファに選択的更新を提供するためにソースに指示することを含むことができ、選択的更新は、所定の閾値を超えて変化する現在のビュー外にある環境の画像データへの更新を含む。場合によっては、方法は、HMDデバイスで画像データを記憶するための手段から部分的更新をリトリーブすることを含むことができ、部分的更新は、現在のビューの一部と、HMDデバイスの動きの後に以前は現在のビュー外にあった環境の画像データの一部とを含む。場合によっては、方法は、部分的更新をリトリーブすることを含むことができ、ソースから提供される新しいビューの一部がHMDデバイスで画像データを記憶するための手段から利用可能でないときに、部分的更新が新しいビューの一部を含む。さらに、場合によっては、現在のビューの画像データは、現在のビュー外にある環境の画像データより低いサイズの解像度である。
【0051】
例5は、画像データを更新するための装置を含む。装置は、環境のビューを表示するヘッドマウントディスプレイ(HMD)デバイスを含む。装置はまた、HMDデバイスで画像データを記憶するための手段を含み、HMDデバイスで画像データを記憶するための手段は、画像データを記憶する。画像データは、環境の現在のビューの画像データと、現在のビュー外にある環境の画像データとを含む。
【0052】
例5において、装置は、以下に説明する場合の任意の組み合わせを含むことができる。場合によっては、装置は、ハードウェアロジックを少なくとも部分的に含む更新モジュールを含み、更新モジュールのロジックは、更新ポリシーに基づいてHMDデバイスで画像データを記憶するための手段からHMDデバイスに表示される画像データを提供する。更新ポリシーは、第1の優先順位でHMDデバイスの動きに起因する環境の新しいビューに対する更新を提供することと、第1の優先順位より低い第2の優先順位で環境の現在のビューに対する更新を提供することと、第2の優先順位より低い第3の優先順位で現在のビュー外にある環境の画像データに対する更新を提供することとを含む。
【0053】
場合によっては、装置は、HMDデバイスで画像データを記憶するための手段に更新を提供するHMDデバイスの外部のソースコンピューティングデバイスを含み、更新モジュールは、ソースコンピューティングデバイスからHMDデバイスに表示される画像データを直接提供するのではなく、HMDデバイスで画像データを記憶するための手段からHMDデバイスに表示される画像データを提供する。更新モジュールは、HMDデバイスの動きがいつ発生したかを判定し、動きに起因する新しいビューの新しい位置を計算し、HMDデバイスで画像データを記憶するための手段から画像データを提供することによってHMDデバイスに表示されるコンテンツを更新し、ソースコンピューティングデバイスに動きを通知するように構成することができる。場合によっては、更新モジュールはさらに、バッファに選択的更新を提供するためにソースに指示するように構成され、選択的更新は、所定の閾値を超えて変化する現在のビューの画像データへの更新を含む。場合によっては、更新モジュールはさらに、バッファに選択的更新を提供するためにソースに指示するように構成され、選択的更新は、所定の閾値を超えて変化する現在のビュー外にある環境の画像データへの更新を含む。場合によっては、更新モジュールはさらに、HMDデバイスで画像データを記憶するための手段から部分的更新をリトリーブするように構成され、部分的更新は、現在のビューの一部と、HMDデバイスの動きの後に以前は現在のビュー外にあった環境の画像データの一部とを含む。場合によっては、更新モジュールはさらに、部分的更新をリトリーブするように構成され、ソースから提供される新しいビューの一部がHMDデバイスで画像データを記憶するための手段から利用可能でないときに、部分的更新が新しいビューの一部を含む。さらに、場合によっては、現在のビューの画像データは、現在のビュー外にある環境の画像データより低いサイズの解像度である。
【0054】
上記の説明および以下の特許請求の範囲において、「結合された」および「接続された」という用語は、それらの派生語と共に使用される場合がある。これらの用語は、互いの同義語として意図されていないことを理解すべきである。むしろ、特定の実施形態では、「接続された」は、2つ以上の要素が互いに物理的または電気的に直接接触していることを指すのに用いられる場合がある。「結合された」は、2つ以上の要素が物理的または電気的に直接接触していることを意味する場合がある。しかし、「結合された」はまた、2つ以上の要素が互いに直接接触してはいないが、それでもなお互いに協働するか相互作用することを意味してもよい。
【0055】
いくつかの実施形態は、ハードウェア、ファームウェア、およびソフトウェアの1つまたはそれらの組み合わせで実装することができる。いくつかの実施形態はまた、本明細書で説明される処理を実行するためにコンピューティングプラットフォームによって読み取られ実施されるマシン可読媒体に格納された命令として実装されてもよい。マシン可読媒体は、マシン、たとえば、コンピュータにより読取可能な形式の情報を記憶または送信するための任意のメカニズムを含むことができる。たとえば、マシン可読媒体は、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイスを含むことができる。
【0056】
実施形態は、実装または例である。本明細書における「実施形態」、「一実施形態」、「いくつかの実施形態」、「様々な実施形態」、または「他の実施形態」という言及は、その実施形態に関連して説明された特定の特徴、構造、または特性が、必ずしも本技術のすべての実施形態ではなく、少なくともいくつかの実地形態に含まれることを意味する。「実施形態」、「一実施形態」、または「いくつかの実施形態」の様々な出現は、必ずしもすべて同一の実施形態に言及することではない。ある実施形態の要素または態様は、他の実施形態の要素または態様に組み合わされることができる。
【0057】
本明細書で説明および示されるすべての構成要素、特徴、構造、特性などは、特定の実施形態または複数の実施形態に含まれる必要があるとは限らない。たとえば、構成要素、特徴、構造、または特性が含まれ「てよい」、「るかもしれない」、「ることができる」、または「得る」と本明細書が述べる場合、その特定の構成要素、特徴、構造、または特性は、含まれることが必要とされない。本明細書または特許請求の範囲が、「一の」または「ある」要素と言及する場合、それは、その要素が1つだけあることを意味しない。本明細書または特許請求の範囲が、「追加の」要素と言及する場合、それは、その追加の要素が1つより多くあることを除外しない。
【0058】
いくつかの実施形態は特定の実装を参照して説明されるが、いくつかの実施形態に従って、他の実装が可能であるということに注意すべきである。さらに、図面に示されおよび/または本明細書で説明される回路要素または他の特徴の配置および/または順序は、示されたおよび説明された特定の方法で配置される必要はない。いくつかの実施形態に従って、多くの他の配置が可能である。
【0059】
図に示される各システムにおいて、表される複数の要素が異なるおよび/または同様であり得ることを示唆するために、場合によっては、複数の要素が同一の参照番号または異なる参照番号を各々有してよい。しかし、要素は、異なる実装を有し、本明細書で示されまたは説明されるシステムのいくつかまたはすべてと連携するために十分に柔軟性があってよい。図に示される様々な要素は、同一でもまたは異なっていてもよい。どの1つが第1の要素と称され、どれが第2の要素と呼ばれるかは任意である。
【0060】
本技術は、本明細書に列挙された特定の詳細に限定されない。実際に、本開示の便益を有する当業者は、前述の説明および図面から多くの他の変形を本技術の範囲内で行うことができることを理解するであろう。したがって、本技術の範囲を定義するものは、いかなる補正をも含む以下の特許請求の範囲である。
図1
図2
図3
図4
図5
図6
図7
図8