JP6556973B1 - 仮想現実システムにおける動作反映待ち時間およびメモリ帯域幅を低減するためのシステムおよび方法 - Google Patents

仮想現実システムにおける動作反映待ち時間およびメモリ帯域幅を低減するためのシステムおよび方法 Download PDF

Info

Publication number
JP6556973B1
JP6556973B1 JP2019502705A JP2019502705A JP6556973B1 JP 6556973 B1 JP6556973 B1 JP 6556973B1 JP 2019502705 A JP2019502705 A JP 2019502705A JP 2019502705 A JP2019502705 A JP 2019502705A JP 6556973 B1 JP6556973 B1 JP 6556973B1
Authority
JP
Japan
Prior art keywords
virtual reality
acceleration
velocity
sensor
gpu
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.)
Active
Application number
JP2019502705A
Other languages
English (en)
Other versions
JP2019532375A (ja
Inventor
ニョン・クアック
モイヌル・カーン
モーリス・リバル
マーティン・レンシュラー
メフラド・タバコリ
ラシュミ・クルカルニ
リッキー・ワイ・キット・ユエン
トッド・ルモワーヌ
Original Assignee
クアルコム,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Application granted granted Critical
Publication of JP6556973B1 publication Critical patent/JP6556973B1/ja
Publication of JP2019532375A publication Critical patent/JP2019532375A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/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/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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed 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/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
    • 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/0147Head-up displays characterised by optical features comprising a device modifying the resolution of the displayed image
    • 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
    • G02B2027/0178Eyeglass type
    • 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/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0187Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye

Abstract

仮想現実ディスプレイシステムにおける動作反映待ち時間およびメモリ帯域幅を低減するためのシステム、方法、およびコンピュータプログラムが開示される。例示的な方法は、仮想現実アプリケーション用の、ユーザの並進および回転動作を追跡する1つまたは複数のセンサからセンサデータを受信するステップを伴う。ユーザの更新された位置は、受信されたセンサデータに基づいて計算される。ユーザ運動の速度および加速度は、センサデータに基づいて計算されてもよい。更新された位置、速度、および加速度は、更新された位置、速度、および加速度のうちの1つまたは複数に基づいて、仮想現実ディスプレイに送信する前に、レンダリングされた画像を更新するように構成されるワープエンジンに提供されてもよい。

Description

優先権主張および関連出願の相互参照
本特許出願は、2016年7月29日に出願された、"SYSTEMS AND METHODS FOR REDUCING MOTION-TO-PHOTON LATENCY AND MEMORY BANDWIDTH IN A VIRTUAL REALITY SYSTEM"という表題の米国特許仮出願第62/368,241号への、米国特許法第119条(e)に基づく優先権を主張し、上記の出願の内容全体が参照により本明細書に組み込まれる。
仮想現実(VR)システムでは、動作反映(motion-to-photo:M2P)待ち時間または遅延が重要な性能メトリックである。M2P待ち時間は、ユーザの運動(たとえば、頭、眼、または他の身体部分)から、ディスプレイ上で仮想現実シーンが更新される時間までの時間遅延である。たとえば、ユーザがヘッドマウントディスプレイ(HMD)をつけた頭を左/右に動かしたとき、ユーザの運動をディスプレイ上で反映するのに50msかかる場合、50msが、仮想現実システムのM2P待ち時間である。高M2P待ち時間は、乏しい仮想現実エクスペリエンスを提供し、ユーザが運動をすると、頭では、ディスプレイがそのアクションを反映するように更新されることを予期するので、乗り物酔いおよび吐き気を引き起こす場合さえもある。表示がユーザ運動よりも遅れると、ユーザは、方向感覚喪失および乗り物酔いを経験する場合がある。仮想現実ユーザに、別の場所にいること(「プレゼンス」と呼ばれる)を確信させるために、低M2P待ち時間が必要である。プレゼンスは、仮想現実ユーザが、コンピュータシミュレーションされた世界にいるかのように感じる状態である。HMDを用いると、M2P待ち時間がおよそ20msを下回ると、仮想現実システムでのプレゼンスが達成される場合があることが研究により示されている。
既存のVRシステムは、「タイムワープ」、「再投影」、または「再レンダリング」(まとめて、「タイムワープ」と呼ばれる)と呼ばれるグラフィックスレンダリング技法を使って、M2P待ち時間を低減する。タイムワープは、レンダリングされた画像を、レンダリングの後に起きたユーザの運動を補正するために、ディスプレイに送信する前にワープすることを伴う。タイムワープは、待ち時間を低減し、フレームレート(すなわち、毎秒表示フレーム数(fps))を増大するか、または維持する場合がある。このプロセスは、すでにレンダリングされた画像をとり、センサ(たとえば、HMDに収容されたセンサ)から取得された、収集された位置的情報に基づいて、予測される位置的情報で修正し、次いで修正された画像をVRディスプレイ上に表示する。
タイムワープなしの場合、VRシステムは、ユーザの位置についてのデータをキャプチャし、この位置的データに基づいて画像をレンダリングし、次いで次のシーンが迫ると画像を表示する。たとえば、毎秒60フレーム(fps)のVRアプリケーションでは、新たなシーンが16.7msごとに一度、表示される場合がある。表示される各画像は、およそ16.7ms前に取得された位置的データに基づく。ただし、タイムワープを用いると、HMDは、位置的データをキャプチャし、位置的データに基づいて画像をレンダリングし、画像を表示する前に、HMDは更新された位置的データをキャプチャする。更新された位置的データを使って、レンダリングされた画像は、ユーザの最新の位置に合うように、適切なアルゴリズムで修正され、次いでユーザに対して表示される。このようにして、修正された画像は、表示時において、最初にレンダリングされた画像よりも最近のものになり、ユーザの位置をより正確に反映する。
ただし、既存のVRシステムには、M2P待ち時間を最適に最小限にすることを問題のあるものにする可能性があるいくつかの制限がある。タイムワープを実装するとき、位置的データは通常、様々な中間ユニットによって操作される必要があり、レンダリングのためにグラフィックス処理ユニット(GPU)に届くまでに、ダブルデータレート(DDR)メモリとの間で複数のホップをとる。たとえば、中間位置的データは、中間フロントエンド(IFE)によって処理され、DDRメモリ中に記憶されてもよい。センサ処理コンポーネントおよび/または処理デバイスが、中間位置的データにアクセスし、位置を算出し、算出された位置をDDRメモリ中に記憶し、算出された位置を、VRアプリケーション、GPUコマンドバッファ、ワープエンジンなどに提供してもよい。DDRメモリとの間のこれらの複数のホップにより、処理待ち時間が増大し、M2P待ち時間を最小限にする可能性を制限する可能性がある。
既存のVRシステムにおける別の限定は、利用可能なDDRメモリが欠如していることにある。仮想現実をシミュレートするために、ディスプレイ解像度は、非常に高い解像度(たとえば、片眼ごとに8Kピクセル)およびフレームレート(たとえば、120Hz)にある必要がある。両方の要因が、システムにおけるDDR帯域幅需要を大幅に増大する。これらの問題を軽減するために、既存のソリューションは、中心窩レンダリングなどのグラフィックスレンダリング技法に頼る場合がある。
したがって、VRシステムにおけるM2P待ち時間およびDDR帯域幅需要を低減するための改善されたシステムおよび方法が必要である。
仮想現実ディスプレイシステムにおける動作反映待ち時間およびDDRメモリ帯域幅を低減するためのシステム、方法、およびコンピュータプログラムが開示される。例示的な方法は、仮想現実アプリケーション用の、ユーザの並進および回転動作を追跡する1つまたは複数のセンサからセンサデータを受信するステップを伴う。ユーザの更新された位置は、受信されたセンサデータに基づいて計算される。ユーザ運動の速度および加速度は、センサデータに基づいて計算されてもよい。更新された位置、速度、および加速度は、レンダリングされた画像を、更新された位置、速度、および加速度のうちの1つまたは複数に基づいて、仮想現実ディスプレイに送信する前に更新するように構成されるハードウェアワープエンジンに提供されてもよい。
別の実施形態は、ユーザの並進および回転動作を追跡するための1つまたは複数のセンサを備えるコンピュータシステムである。コンピュータシステムは、処理デバイスによって実行される仮想現実アプリケーションを含む。グラフィック処理ユニット(GPU)が、仮想現実アプリケーションに関連付けられた、レンダリングされた画像を表示する。専用センサ処理コンポーネントが、1つまたは複数のセンサおよびGPUに電気的に結合される。専用センサ処理コンポーネントは、1つまたは複数のセンサからセンサデータを受信し、センサデータに基づいて、ユーザの更新された位置ならびに速度および加速度を計算する。専用センサ処理コンポーネントは、更新された位置、速度、および加速度を、GPUに関連付けられたワープエンジンに供給する。
図では、同様の参照番号は、その他の形で示されない限り、様々な図の全体を通して同様の部分を指す。"102A"または"102B"などの文字指定を伴う参照番号の場合、文字指定は、同じ図に存在している2つの同様の部分または要素を区別する場合がある。参照番号がすべての図において同じ参照番号を有するすべての部分を含むことが意図されるとき、参照番号に対する文字指定は省略される場合がある。
仮想現実システムにおける動作反映待ち時間およびDDR帯域幅を低減するためのシステムの実施形態のブロック図である。 図1のシステムを組み込むためのヘッドマウント仮想現実ディスプレイの実施形態を示す図である。 図1の仮想現実システムにおけるデータフローの実施形態を示す図である。 図1におけるセンサデータ処理オフロードハードウェアの例示的な実施形態のコンポーネントおよび入力/出力を示す図である。 動作反映待ち時間およびDDR帯域幅を低減するための図1のシステムにおいて実装される方法の実施形態を示すフローチャートである。 図1の仮想現実システムのいくつかの態様を実装するためのポータブルコンピューティングデバイスの実施形態のブロック図である。
「例示的」という語は、本明細書では「例、事例、または例示として機能すること」を意味するために使用される。本明細書で「例示的」と記載されている任意の態様は、必ずしも他の態様よりも好ましいまたは有利であると解釈されるべきではない。
本明細書において、「アプリケーション」という用語はまた、オブジェクトコード、スクリプト、バイトコード、マークアップ言語ファイル、およびパッチなどの実行可能なコンテンツを有するファイルを含む場合がある。さらに、本明細書で言及する「アプリケーション」はまた、開かれる必要がある場合があるドキュメント、またはアクセスされる必要がある他のデータファイルなどの本質的に実行可能ではないファイルを含む場合がある。
「コンテンツ」という用語はまた、オブジェクトコード、スクリプト、バイトコード、マークアップ言語ファイル、およびパッチなどの実行可能なコンテンツを有するファイルを含む場合がある。加えて、本明細書で参照される「コンテンツ」はまた、開かれる必要がある場合があるドキュメントまたはアクセスされる必要がある他のデータファイルなどの本質的に実行可能でないファイルを含む場合がある。
本説明で使用される場合、「コンポーネント」、「データベース」、「モジュール」、「システム」、「エンジン」などの用語は、ハードウェア、ファームウェア、ハードウェアとソフトウェアとの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかのコンピュータ関連エンティティを指すことが意図される。たとえば、コンポーネントは、限定はしないが、プロセッサ上で稼働するプロセス、プロセッサ、オブジェクト、実行ファイル、実行のスレッド、プログラム、および/またはコンピュータであってもよい。例として、コンピューティングデバイス上で稼働しているアプリケーションとコンピューティングデバイスとの両方がコンポーネントであってもよい。1つまたは複数のコンポーネントが、プロセスおよび/または実行のスレッド内に存在する場合があり、コンポーネントが、1つのコンピュータに局在し、かつ/または2つ以上のコンピュータ間に分散される場合がある。加えて、これらのコンポーネントは、様々なデータ構造を記憶している様々なコンピュータ可読媒体から実行してもよい。コンポーネントは、1つもしくは複数のデータパケット(たとえば、ローカルシステム、分散システムの中の別のコンポーネントと、ならびに/またはインターネットなどのネットワークにわたって、信号により他のシステムと対話する1つのコンポーネントからのデータなど)を有する信号などに従って、ローカルおよび/もしくは遠隔のプロセスにより通信してもよい。
図1は、仮想現実システムにおける動作反映(M2P)待ち時間およびダブルデータレート(DDR)帯域幅需要を低減するためのシステム100の実施形態を示す。システム100は、様々なタイプの仮想現実システム(たとえば、ヘッドセット、ゴーグル、アイウェア、外部VRディスプレイ、投射システムなど)において実装されてもよいことを了解されたい。図2の実施形態に示されるように、システム100は、ユーザによって装着される一体型ヘッドマウントディスプレイ(HMD)200に組み込まれてもよい。他の実施形態では、システム100におけるコンポーネントのうちのいくつかは、HMD200に統合されてもよく、他のコンポーネントは、外部処理システム(たとえば、ポータブルコンピューティングデバイス)または外部ディスプレイ(たとえば、コンピュータディスプレイ、投射ディスプレイなど)によって提供されてもよい。
図1に示すように、システム100は、メモリバスを介して1つまたは複数のセンサとメモリシステムとに電気的に結合されるシステムオンチップ(SoC)102を備える。図1の実施形態において、メモリシステムは、ランダムアクセスメモリ(RAM)バス(たとえば、ダブルデータレート(DDR)バス105)を介してSoC102に結合されるダイナミックランダムアクセスメモリ(DRAM)104を備える。センサは、カメラ124、加速度計センサ126、およびジャイロスコープセンサ128を備えてもよく、これらの各々は、SoC102中に存在するセンサ入力/出力(I/O)コンポーネント120に電気的に結合される場合がある。図2に示すように、センサは、システム100が、6自由度(6DOF)を使って、3次元空間内でのユーザ(たとえば、ユーザの頭、眼、および/または他の身体部分)の回転および並進運動を追跡することを可能にする。当技術分野において知られているように、6DOFという用語は、3次元空間におけるユーザの運動の自由度を指す。センサは、3つの垂直軸(すなわち、ピッチ、ヨー、およびロール)の回りの回転を通した配向の変化と組み合わされた、3つの垂直軸における前/後(サージ)、上/下(ヒーブ)、左/右(スウェイ)並進としての動作を追跡する。
様々なタイプ、構成、および数のセンサがシステム100において実装されてもよく、1つまたは複数のカメラ124が、眼の動きを追跡してもよい。1つまたは複数の加速度計センサ126が、ユーザの頭および/または他の身体部分の適切な加速度の規模および/または方向の変化を検知してもよい。1つまたは複数のジャイロスコープセンサ128が、ユーザの頭および/または他の身体部分の角度動作を追跡するのに使われてもよい。
図1に示すように、SoC102は、SoCバス122を介して相互接続される、中央処理ユニット(CPU)106、グラフィックス処理ユニット(GPU)108、1つまたは複数の仮想現実アプリケーションコンポーネント120、DRAMコントローラ112、システムキャッシュ118、スタティックランダムアクセスメモリ(SRAM)116、読出し専用メモリ(ROM)114、およびセンサI/O120を備える。システム100は、ハイレベルオペレーティングシステム(HLOS)122を含む。
仮想現実アプリケーションコンポーネント120は、仮想現実環境を提供するための専用処理デバイス(たとえば、アプリケーションデジタル信号プロセッサ(ADSP))として実装されてもよい。他の実施形態では、仮想現実アプリケーション120は、CPU106およびGPU108上で実行するソフトウェアを備えてもよい。仮想現実環境は、たとえばビデオゲーミング、エンターテインメント、設計アプリケーション、トレーニングシミュレーション、産業アプリケーションなどを含む、どの望ましい目的のために設計されてもよいことを了解されたい。
DRAMコントローラ112は、DDRバス105を介したデータの転送を制御する。システムキャッシュ118は、データについての将来の要求がより速くサーブされることが可能であるようにデータを記憶するコンポーネントである。ある実施形態では、システムキャッシュ118は、SoC102上の複数のメモリクライアントの間で共有される最終レベルキャッシュをもつマルチレベル階層(たとえば、L1キャッシュ、L2キャッシュなど)を備える場合がある。
図1に示すように、システム100は、センサデータ処理オフロードハードウェアコンポーネント130をさらに備える。センサデータ処理オフロードハードウェアコンポーネント130は、センサデータの処理をオフロードするように構成される専用ハードウェアユニットを備える。専用ハードウェアユニットへのセンサデータ処理のオフロードは、センサデータ処理オフロードハードウェアコンポーネント130を介して、追跡センサからGPU108への最適化センサデータフローパイプラインを提供することによってM2P待ち時間およびDDR帯域幅需要を低減する場合があることを了解されたい。最適化センサデータフローパイプラインは、追跡センサ(たとえば、センサI/O120を介したカメラ124、加速度計センサ126、ジャイロスコープセンサ128)からの直接供給132およびGPU108への直接供給を含む。
図3は、仮想現実システム100におけるM2P待ち時間およびDDR帯域幅需要を低減するためのセンサデータフローパイプライン300の実施形態を示す。センサデータ処理オフロードハードウェアコンポーネント130は、それぞれインターフェース301、303、および305を介して、加速度計センサ126、ジャイロスコープセンサ128、およびカメラ124から未加工センサデータを受信する場合がある。センサデータ処理オフロードハードウェアコンポーネント130は、センサデータを処理するための計算エンジンを備える。カメラ124、加速度計センサ126、およびジャイロスコープセンサ128からの未加工センサデータは、並進および回転座標に変換されてもよい。ジャイロスコープセンサ128および/または加速度計センサ126から受信されたデータに基づいて、速度および加速度情報が計算されてもよい。このように、計算エンジンは、更新された位置的情報、ならびにワープエンジンに提供される場合がある速度および加速度データを判断することを了解されたい。速度および加速度データは、ユーザの位置をより正確に予測するのに使われてもよい。たとえば、速度および加速度データを用いて、ワープエンジンは、更新時にユーザがどこにいるかを予測することができる。ワープエンジンは、レンダリング解像度を調整するために、速度データを眼追跡情報とともに使ってもよい。たとえば、ユーザの頭(または眼)が十分速く(たとえば、一定の閾、すなわち100度/秒を超えて)動いている場合、レンダリングは、DDR帯域幅を最小限にするために、より低い解像度で実施されてもよい。
図3に示すように、センサデータ処理オフロードハードウェアコンポーネント130は、更新された位置的情報、速度データ、および/または加速度データをDRAMメモリ104中に存在するGPUコマンドバッファ314に直接供給してもよい(参照番号331)。当技術分野において知られているように、GPUコマンドバッファ314は、レンダリングされた画像をステレオディスプレイ302において表示するためのコマンドをGPU108に与える。GPU108がハードウェアワープエンジンを含む場合、センサデータ処理オフロードハードウェアコンポーネント130は、更新された位置的情報、速度データ、および/または加速度データをGPU108に直接供給する(参照番号335)ことによってコマンドバッファ314をバイパスしてもよい。仮想現実アプリケーション120は、コマンドバッファ314とインターフェースする(参照番号329)。
GPU108は、マルチビューレンダリングされた画像320を生成するためのテクスチャプロセス(ブロック316)を実装してもよい(参照番号337および339)。GPU108はまた、後処理された画像324を生成するためのタイル行プロセス(ブロック322)を実装してもよい(参照番号343)。後処理された画像324は、ディスプレイ302上に提示される(参照番号343および345)。
図3にさらに示すように、システム100は、センサ処理コンポーネント350により、従来のセンサ処理を実装してもよい。この場合、センサデータは、DRAMメモリ104に書き込まれることになる。センサデータは次いで、センサデータ処理ブロック350(図3)によって取り出され、位置的および回転情報を生成するように処理されることになり、この情報は次いでVRアプリケーション120またはCPU106(図3)によって後で消費するためにDRAMメモリ104に戻されて書き込まれる。センサデータ処理は、DRAMメモリ104を複数回読み取り、書き込むことを伴ってもよいことを了解されたい。図3にさらに示すように、カメラデータは、CPU106またはVRアプリケーション120によって消費される前にIFE(撮像フロントエンド)304ブロック、および次いでIPE(撮像後処理エンジン)ブロック310によって処理される。
図4は、センサデータ処理オフロードハードウェア130の例示的な実施形態のコンポーネントおよび入力/出力を示す。本実施形態では、センサデータ処理オフロードハードウェア130は、サンプリング/フィルタリングコンポーネント404、構成レジスタ402、計算エンジン406、およびメモリ(たとえば、SRAM408)を備える。CPU106は、構成レジスタ402を介して、センサデータ処理オフロードハードウェア130の側面を制御および/またはプログラムしてもよい。SRAM408は、履歴的、位置的、速度、および加速度データを記憶してもよく、これらのデータは、計算エンジン406を強化する場合がある。サンプリング/フィルタリングコンポーネント404は、カメラ124、加速度計センサ126、およびジャイロスコープセンサ128から未加工センサデータ401を受信する。サンプリング/フィルタリングコンポーネント404は、未加工センサデータ401中のノイズを低減してもよい。フィルタリングされた位置情報に基づいて、計算エンジン406は、ワープエンジン403に提供される速度データ414、および/または加速度416を生成するための様々なアルゴリズムを実行してもよいことを了解されたい。これらのアルゴリズムは、速度および加速度データを作成するために、それぞれ位置的データの単純な第1または第2の導出物をとることを含む。
図5は、動作反映待ち時間およびDDR帯域幅を低減するための、システム100において実装される方法500の実施形態を示す。ブロック502において、未加工センサデータ401は、仮想現実ユーザの並進および回転動作を追跡する1つまたは複数のセンサ(たとえば、カメラ124、加速度計センサ126、およびジャイロスコープセンサ128)から受信される。ブロック504において、センサデータ処理オフロードハードウェア130は、受信されたセンサデータに基づいて、ユーザについての更新された位置データを計算する。センサデータ処理オフロードハードウェア130はまた、受信されたセンサデータに基づいて速度および加速度データを計算してもよい(ブロック506)。ブロック508において、センサデータ処理オフロードハードウェア130は、更新された位置、速度、および/または加速度をワープエンジン403に直接供給してもよい。
上述のように、システム100は、任意の望ましいコンピューティングシステム内に組み込まれてもよい。図6は、仮想現実システム100の1つまたは複数のコンポーネントが例示的なポータブルコンピューティングデバイス(PCD)600に組み込まれている実施形態を示す。PCD600は、スマートフォン、タブレットコンピュータ、ウェアラブルデバイス(たとえば、HMD200)を備えてもよい。システム100のいくつかのコンポーネント(たとえば、センサデータ処理オフロードハードウェア130および仮想現実アプリケーション120)が、SoC322(図6)上で含まれるが、他のコンポーネント(たとえば、DRAM104)は、SoC322に結合される外部コンポーネントであることが容易に了解されよう。SoC322は、マルチコアCPU602を含んでもよい。マルチコアCPU602は、第0のコア610、第1のコア612および第Nのコア614を含んでもよい。コアのうちの1つは、たとえばグラフィックス処理ユニット(GPU)を備えてもよく、他のコアのうちの1つまたは複数は、CPUを備える。
ディスプレイコントローラ328およびタッチスクリーンコントローラ330は、CPU602に結合されてもよい。一方、オンチップシステム322の外部にあるタッチスクリーンディスプレイ606は、ディスプレイコントローラ328およびタッチスクリーンコントローラ330に結合されてもよい。
図6は、ビデオエンコーダ334、たとえば位相反転線(PAL)エンコーダ、順次式カラーメモリ(SECAM)エンコーダ、または全米テレビジョン方式委員会(NTSC)エンコーダが、マルチコアCPU602に結合されることをさらに示す。さらに、ビデオ増幅器336がビデオエンコーダ334とタッチスクリーンディスプレイ606とに結合される。また、ビデオポート338がビデオ増幅器336に結合される。図6に示すように、ユニバーサルシリアルバス(USB)コントローラ340がマルチコアCPU602に結合される。また、USBポート342がUSBコントローラ340に結合される。メモリ104および加入者識別モジュール(SIM)カード346も、マルチコアCPU602に結合されてもよい。
さらに、図6に示すように、デジタルカメラ348がマルチコアCPU602に結合されてもよい。例示的な態様において、デジタルカメラ348は、電荷結合デバイス(CCD)カメラまたは相補型金属酸化物半導体(CMOS)カメラである。
図6にさらに示すように、ステレオオーディオコーダ-デコーダ(コーデック)350がマルチコアCPU602に結合されてもよい。さらに、オーディオ増幅器352がステレオオーディオコーデック350に結合されてもよい。例示的な態様では、第1のステレオスピーカー354および第2のステレオスピーカー356がオーディオ増幅器352に結合される。図6は、マイクロフォン増幅器358もまたステレオオーディオコーデック350に結合されてもよいことを示す。さらに、マイクロフォン360がマイクロフォン増幅器358に結合されてもよい。特定の態様では、周波数変調(FM)無線チューナー362がステレオオーディオコーデック350に結合される場合がある。また、FMアンテナ364が、FM無線チューナー362に結合される。さらに、ステレオヘッドフォン366がステレオオーディオコーデック350に結合されてもよい。
図6は、無線周波数(RF)トランシーバ368がマルチコアCPU602に結合されてもよいことをさらに示す。RFスイッチ370が、RFトランシーバ368およびRFアンテナ372に結合されてもよい。キーパッド204が、マルチコアCPU602に結合されてもよい。また、マイクロフォン付きモノヘッドセット376が、マルチコアCPU602に結合されてもよい。さらに、バイブレータデバイス378がマルチコアCPU602に結合されてもよい。
図6はまた、電源380がオンチップシステム322に結合されてもよいことを示す。特定の態様では、電源380は、電力を必要とするPCD600の様々なコンポーネントに電力を供給する直流(DC)電源である。さらに、特定の態様では、電源は、充電式DCバッテリ、またはAC電源に接続された交流(AC)からDC変圧器へと誘導されるDC電源である。
図6はさらに、PCD600がまた、データネットワーク、たとえばローカルエリアネットワーク、パーソナルエリアネットワーク、または任意の他のネットワークにアクセスするために使用される場合があるネットワークカード388を含んでもよいことを示す。ネットワークカード388は、Bluetooth(登録商標)ネットワークカード、WiFiネットワークカード、パーソナルエリアネットワーク(PAN)カード、パーソナルエリアネットワーク超低電力技術(PeANUT)ネットワークカード、テレビジョン/ケーブル/衛星チューナー、または当技術分野でよく知られている任意の他のネットワークカードであってもよい。さらに、ネットワークカード388は、チップ内に組み込まれる場合があり、すなわち、ネットワークカード388は、チップ内のフルソリューションである場合があり、別個のネットワークカード388でなくてもよい。
図6に示すように、タッチスクリーンディスプレイ606、ビデオポート338、USBポート342、カメラ348、第1のステレオスピーカー354、第2のステレオスピーカー356、マイクロフォン360、FMアンテナ364、ステレオヘッドフォン366、RFスイッチ370、RFアンテナ372、キーパッド374、モノヘッドセット376、バイブレータ378、および電源380は、オンチップシステム322の外部にあってもよい。
本明細書において説明する方法ステップのうちの1つまたは複数は、上記のモジュールなどのコンピュータプログラム命令としてメモリに記憶される場合があることを了解されたい。これらの命令は、本明細書で説明した方法を実施するために対応するモジュールと組み合わせて、または協働して、任意の適切なプロセッサによって実行されてもよい。
本明細書で説明するプロセスまたはプロセスフローにおけるいくつかのステップは、当然、説明したように本発明が機能するために他のステップに先行する。しかしながら、そのような順序またはシーケンスが本発明の機能を変えない場合には、本発明は、説明したステップの順序に限定されない。すなわち、本発明の範囲および趣旨から逸脱することなく、あるステップは、他のステップの前に実施されるか、後に実施されるか、または他のステップと並行して(実質的に同時に)実施される場合があることを認識されたい。いくつかの例では、ある特定のステップは、本発明から逸脱することなく、省略されるか、または実施されない場合がある。さらに、「その後(thereafter)」、「次いで(then)」、「次に(next)」などの語は、ステップの順序を限定することを意図していない。これらの語は単に、例示的な方法の説明を通して読者を導くために使用される。
加えて、プログラミングにおける当業者は、たとえば本明細書におけるフローチャートおよび関連する説明に基づいて、難なく、開示した発明を実装するコンピュータコードを書くことができるか、または実装するのに適したハードウェアおよび/もしくは回路を識別することができる。
したがって、プログラムコード命令または詳細なハードウェアデバイスの特定のセットの開示が、本発明をどのように製作し使用すべきかについて適切に理解するために必要であるとは見なされない。特許請求されるコンピュータ実装プロセスの発明性のある機能は、上記の説明において、かつ様々なプロセスフローを示す場合がある図とともに、より詳細に説明される。
1つまたは複数の例示的な態様では、説明する機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せとして実装されてもよい。ソフトウェアにおいて実装される場合、機能は、コンピュータ可読媒体上の1つまたは複数の命令またはコードとして記憶または送信されてもよい。コンピュータ可読媒体は、コンピュータ記憶媒体と、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体との両方を含む。記憶媒体は、コンピュータによりアクセスされる場合がある任意の利用可能な媒体であってもよい。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、NANDフラッシュ、NORフラッシュ、M-RAM、P-RAM、R-RAM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気記憶デバイス、または命令もしくはデータ構造の形態で所望のプログラムコードを搬送もしくは記憶するために使用され、コンピュータによってアクセスされる場合がある任意の他の媒体を含んでもよい。
また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線("DSL")、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。
本明細書で使用されるディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)("CD")、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)("DVD")、フロッピーディスク(disk)、およびブルーレイディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、レーザーを用いてデータを光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲に含まれるべきである。
代替的な実施形態は、本発明がその趣旨および範囲から逸脱することなく関係する技術分野の当業者には明らかとなろう。したがって、選択された態様が図示され詳細に説明されてきたが、以下の特許請求の範囲によって定義されるように、本発明の趣旨および範囲から逸脱することなく、態様において様々な置換および改変が行われてもよいことが理解されよう。
100 システム、仮想現実システム
102 システムオンチップ(SoC)
104 ダイナミックランダムアクセスメモリ(DRAM)、DRAMメモリ
105 ダブルデータレート(DDR)バス
106 中央処理ユニット(CPU)
108 グラフィックス処理ユニット(GPU)
112 DRAMコントローラ
114 読出し専用メモリ(ROM)
116 スタティックランダムアクセスメモリ(SRAM)
118 システムキャッシュ
120 センサ入力/出力(I/O)コンポーネント、センサI/O
120 仮想現実アプリケーションコンポーネント、仮想現実アプリケーション
122 SoCバス
124 カメラ
126 加速度計センサ
128 ジャイロスコープセンサ
130 センサデータ処理オフロードハードウェアコンポーネント、センサデータ処理オフロードハードウェア
200 一体型ヘッドマウントディスプレイ(HMD)
204 キーパッド
300 センサデータフローパイプライン
301 インターフェース
302 ステレオディスプレイ、ディスプレイ
303 インターフェース
304 IFE(撮像フロントエンド)
305 インターフェース
310 IPE(撮像後処理エンジン)ブロック
314 GPUコマンドバッファ、コマンドバッファ
322 SoC、オンチップシステム
328 ディスプレイコントローラ
330 タッチスクリーンコントローラ
334 ビデオエンコーダ
336 ビデオ増幅器
338 ビデオポート
340 ユニバーサルシリアルバス(USB)コントローラ
342 USBポート
346 加入者識別モジュール(SIM)カード
348 デジタルカメラ、カメラ
350 センサ処理コンポーネント、センサデータ処理ブロック
350 ステレオオーディオコーダ-デコーダ(コーデック)
352 オーディオ増幅器
354 第1のステレオスピーカー
356 第2のステレオスピーカー
358 マイクロフォン増幅器
360 マイクロフォン
362 周波数変調("FM")無線チューナー
364 FMアンテナ
366 ステレオヘッドフォン
368 無線周波数(RF)トランシーバ
370 RFスイッチ
372 RFアンテナ
374 キーパッド
376 マイクロフォン付きモノヘッドセット、モノヘッドセット
378 バイブレータデバイス、バイブレータ
380 電源
388 ネットワークカード
404 サンプリング/フィルタリングコンポーネント
402 構成レジスタ
403 ワープエンジン
406 計算エンジン
408 SRAM
600 ポータブルコンピューティングデバイス(PCD)
602 マルチコアCPU、CPU
606 タッチスクリーンディスプレイ
610 第0のコア
612 第1のコア
614 第Nのコア

Claims (25)

  1. 仮想現実ディスプレイシステムにおける動作反映待ち時間およびメモリ帯域幅を低減する方法であって、
    専用センサ処理コンポーネントによって、仮想現実アプリケーションのための、ユーザの並進および回転動作を追跡する1つまたは複数のセンサから直接センサデータを受信するステップと、
    前記専用センサ処理コンポーネントによって、前記センサデータに基づいて前記ユーザの更新された位置を計算するステップと、
    前記専用センサ処理コンポーネントによって、前記センサデータに基づいて前記ユーザの速度および加速度を計算するステップと、
    前記専用センサ処理コンポーネントによって、前記更新された位置、前記速度、および前記加速度をグラフィックス処理ユニット(GPU)に関連付けられたコマンドバッファおよび前記GPUによって実装されるワープエンジンに直接提供するステップであって、前記GPUは、前記更新された位置、前記速度、および前記加速度のうちの1つまたは複数に基づいて、仮想現実ディスプレイに送信する前にレンダリングされた画像を更新するように構成される、ステップと
    を含む、方法。
  2. 前記更新された位置、前記速度、および前記加速度をコマンドバッファに直接提供するステップは、前記コマンドバッファを有するダブルデータレート(DDR)メモリに前記更新された位置、前記速度、および前記加速度を提供するステップを含む、請求項1に記載の方法。
  3. 前記1つまたは複数のセンサは、カメラ、加速度計、およびジャイロスコープセンサを備える、請求項1に記載の方法。
  4. 専用ハードウェアデバイスが、前記センサデータを前記カメラ、前記加速度計、および前記ジャイロスコープセンサから直接受信する、請求項3に記載の方法。
  5. 前記ワープエンジンは、前記速度および前記加速度のうちの1つに基づいてレンダリング解像度を調整するようにさらに構成される、請求項1に記載の方法。
  6. ヘッドマウント仮想現実デバイスにおいて実装される、請求項1に記載の方法。
  7. 仮想現実ディスプレイシステムにおける動作反映待ち時間およびメモリ帯域幅を低減するためのシステムであって、
    仮想現実アプリケーションのための、ユーザの並進および回転動作を追跡する1つまたは複数のセンサから直接センサデータを受信するための手段と、
    前記センサデータに基づいて前記ユーザの更新された位置を計算するための手段と、前記センサデータに基づいて前記ユーザの速度および加速度を計算するための手段と、
    前記更新された位置、前記速度、および前記加速度をグラフィックス処理ユニット(GPU)に関連付けられたコマンドバッファおよび前記GPUによって実装されるワープエンジンに直接提供するための手段であって、前記GPUは、前記更新された位置、前記速度、および前記加速度のうちの1つまたは複数に基づいて、仮想現実ディスプレイに送信する前にレンダリングされた画像を更新するように構成される、手段と
    を備える、システム。
  8. 前記コマンドバッファはダブルデータレート(DDR)メモリ中に格納される、請求項7に記載のシステム。
  9. 前記1つまたは複数のセンサは、カメラ、加速度計、およびジャイロスコープセンサを備える、請求項7に記載のシステム。
  10. 前記センサデータを前記受信するための手段は、前記カメラ、前記加速度計、および前記ジャイロセンサに結合される専用ハードウェアユニットを備える、請求項9に記載のシステム。
  11. 前記ワープエンジンは、前記速度および前記加速度のうちの1つに基づいてレンダリング解像度を調整するようにさらに構成される、請求項7に記載のシステム。
  12. ヘッドマウント仮想現実デバイスにおいて実装される、請求項7に記載のシステム。
  13. 処理デバイスによって実行されると、仮想現実ディスプレイシステムにおける動作反映待ち時間およびメモリ帯域幅を低減するための方法を実装する命令をコンピュータ実行可能な形で記憶した非一時的コンピュータ可読記録媒体であって、前記方法は、
    専用センサ処理コンポーネントによって、仮想現実アプリケーションのための、ユーザの並進および回転動作を追跡する1つまたは複数のセンサから直接センサデータを受信するステップと、
    前記専用センサ処理コンポーネントによって、前記センサデータに基づいて前記ユーザの更新された位置を計算するステップと、
    前記専用センサ処理コンポーネントによって、前記センサデータに基づいて前記ユーザの速度および加速度を計算するステップと、
    前記専用センサ処理コンポーネントによって、前記更新された位置、前記速度、および前記加速度をグラフィックス処理ユニット(GPU)に関連付けられたコマンドバッファおよび前記GPUによって実装されるワープエンジンに直接提供するステップであって、前記GPUは、前記更新された位置、前記速度、および前記加速度のうちの1つまたは複数に基づいて、仮想現実ディスプレイに送信する前にレンダリングされた画像を更新するように構成される、ステップと
    を含む、非一時的コンピュータ可読記録媒体。
  14. 前記更新された位置、前記速度、および前記加速度を前記コマンドバッファに直接提供するステップは、前記更新された位置、前記速度、および前記加速度を、前記コマンドバッファを有するダブルデータレート(DDR)メモリに提供するステップを含む、請求項13に記載の非一時的コンピュータ可読記録媒体。
  15. 前記1つまたは複数のセンサは、カメラ、加速度計、およびジャイロセンサを備える、請求項13に記載の非一時的コンピュータ可読記録媒体
  16. 専用ハードウェアデバイスが、前記センサデータを前記カメラ、前記加速度計、および前記ジャイロセンサから直接受信する、請求項15に記載の非一時的コンピュータ可読記録媒体
  17. 前記ワープエンジンは、前記速度および前記加速度のうちの1つに基づいてレンダリング解像度を調整するようにさらに構成される、請求項13に記載の非一時的コンピュータ可読記録媒体
  18. ヘッドマウント仮想現実デバイスにおいて実装される、請求項13に記載の非一時的コンピュータ可読記録媒体
  19. 仮想現実ディスプレイシステムにおける動作反映待ち時間を低減するためのコンピュータシステムであって、
    ユーザの並進および回転動作を追跡するための1つまたは複数のセンサと、
    処理デバイスによって実行される仮想現実アプリケーションと、
    前記仮想現実アプリケーションに関連付けられた、レンダリングされた画像を表示するためのグラフィックス処理ユニット(GPU)と、
    前記1つまたは複数のセンサおよび前記GPUに電気的に結合される専用センサ処理コンポーネントであって、
    前記1つまたは複数のセンサから直接センサデータを受信することと、
    前記センサデータに基づいて前記ユーザの更新された位置を計算することと、
    前記センサデータに基づいて前記ユーザの速度および加速度を計算することと、
    前記更新された位置、前記速度、および前記加速度を前記GPUに関連付けられたコマンドバッファおよび前記GPUによって実装されるワープエンジンに直接供給することと、
    前記GPUによって、前記更新された位置、前記速度、および前記加速度のうちの1つまたは複数に基づいて、仮想現実ディスプレイに送信する前にレンダリングされた画像を更新することと
    を行うように構成される、専用センサ処理コンポーネントと
    を備える、コンピュータシステム。
  20. 前記コマンドバッファはダブルデータレート(DDR)メモリ中に格納される、請求項19に記載のコンピュータシステム。
  21. 前記1つまたは複数のセンサは、前記専用センサ処理コンポーネントに各々が電気的に結合されるカメラ、加速度計、およびジャイロセンサを備える、請求項19に記載のコンピュータシステム。
  22. 前記ワープエンジンは、前記速度および前記加速度のうちの1つに基づいてレンダリング解像度を調整するように構成される、請求項19に記載のコンピュータシステム。
  23. 前記仮想現実アプリケーション、前記GPU、および前記専用センサ処理コンポーネントは、ダブルデータレート(DDR)メモリに電気的に結合されるシステムオンチップ(SoC)上に存在し、前記コマンドバッファは前記DDRメモリ中に格納される、請求項19に記載のコンピュータシステム。
  24. 前記専用センサ処理コンポーネントは中央処理ユニット(CPU)を備える、請求項19に記載のコンピュータシステム。
  25. ヘッドマウント仮想現実デバイス中に組み込まれる、請求項19に記載のコンピュータシステム。
JP2019502705A 2016-07-29 2017-06-29 仮想現実システムにおける動作反映待ち時間およびメモリ帯域幅を低減するためのシステムおよび方法 Active JP6556973B1 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662368241P 2016-07-29 2016-07-29
US62/368,241 2016-07-29
US15/253,201 2016-08-31
US15/253,201 US9858637B1 (en) 2016-07-29 2016-08-31 Systems and methods for reducing motion-to-photon latency and memory bandwidth in a virtual reality system
PCT/US2017/040080 WO2018022250A1 (en) 2016-07-29 2017-06-29 Systems and methods for reducing motion-to-photon latency and memory bandwidth in a virtual reality system

Publications (2)

Publication Number Publication Date
JP6556973B1 true JP6556973B1 (ja) 2019-08-07
JP2019532375A JP2019532375A (ja) 2019-11-07

Family

ID=60788960

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019502705A Active JP6556973B1 (ja) 2016-07-29 2017-06-29 仮想現実システムにおける動作反映待ち時間およびメモリ帯域幅を低減するためのシステムおよび方法

Country Status (7)

Country Link
US (1) US9858637B1 (ja)
EP (1) EP3491489B1 (ja)
JP (1) JP6556973B1 (ja)
KR (1) KR101979564B1 (ja)
CN (1) CN109564466B (ja)
BR (1) BR112019001320A2 (ja)
WO (1) WO2018022250A1 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9332285B1 (en) 2014-05-28 2016-05-03 Lucasfilm Entertainment Company Ltd. Switching modes of a media content item
US10379601B2 (en) * 2015-09-10 2019-08-13 Google Llc Playing spherical video on a limited bandwidth connection
US10962780B2 (en) * 2015-10-26 2021-03-30 Microsoft Technology Licensing, Llc Remote rendering for virtual images
EP3619568A4 (en) * 2017-05-01 2021-01-27 Infinity Augmented Reality Israel Ltd. OPTICAL MOTOR TIME ALIGNMENT FOR AN AUGMENTED OR MIXED REALITY ENVIRONMENT
US20180329465A1 (en) * 2017-05-11 2018-11-15 Qualcomm Incorporated System and method for intelligent adjustment of an immersive multimedia workload in a portable computing device
US10496579B2 (en) * 2017-11-13 2019-12-03 Bobby Gene Burrough Graphics processing unit with sensor interface
US10559276B2 (en) 2018-02-03 2020-02-11 Facebook Technologies, Llc Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays
US10706813B1 (en) 2018-02-03 2020-07-07 Facebook Technologies, Llc Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays
US10818086B2 (en) * 2018-02-09 2020-10-27 Lenovo (Singapore) Pte. Ltd. Augmented reality content characteristic adjustment
US10796407B2 (en) * 2018-05-11 2020-10-06 Samsung Electronics Co., Ltd. Foveated domain storage and processing
US10678325B2 (en) 2018-05-22 2020-06-09 Facebook Technologies, Llc Apparatus, system, and method for accelerating positional tracking of head-mounted displays
CN108632598A (zh) * 2018-05-25 2018-10-09 小派科技(上海)有限责任公司 降低vr设备mtp延时的方法及装置
US10388255B2 (en) * 2018-06-29 2019-08-20 Intel Corporation Computers for supporting multiple virtual reality display devices and related methods
US20220091427A1 (en) * 2018-12-28 2022-03-24 Magic Leap, Inc. Low motion-to-photon latency architecture for augmented and virtual reality display systems
KR102261993B1 (ko) * 2019-08-20 2021-06-07 주식회사 엘지유플러스 가상 현실 영상 제공 방법
US20210192681A1 (en) * 2019-12-18 2021-06-24 Ati Technologies Ulc Frame reprojection for virtual reality and augmented reality
KR20230058712A (ko) * 2020-09-03 2023-05-03 삼성전자주식회사 통신 시스템에서 컨텐츠와 디바이스들의 성능 차이 완화를 위한 방법 및 장치
EP4059581A1 (en) * 2021-03-16 2022-09-21 Deutsche Telekom AG Method and system to reduce vr sickness in a cloud game service
US11822713B2 (en) * 2021-06-11 2023-11-21 Rockwell Collins, Inc. Pose augmentation of head worn display video for latency reduction
US11652513B2 (en) 2021-08-17 2023-05-16 Cisco Technology, Inc. Wireless reliability for devices in motion
CN114167992A (zh) * 2021-12-17 2022-03-11 深圳创维数字技术有限公司 显示画面渲染方法、电子设备及可读存储介质
US20240096026A1 (en) * 2022-06-20 2024-03-21 Jan Bajana Low latency hand-tracking in augmented reality systems
WO2024063253A1 (ko) * 2022-09-23 2024-03-28 삼성전자주식회사 카메라로부터 획득한 이미지 내에 포함된 복수의 영역들 각각의 해상도들을 제어하기 위한 전자 장치 및 그 방법

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6801989B2 (en) * 2001-06-28 2004-10-05 Micron Technology, Inc. Method and system for adjusting the timing offset between a clock signal and respective digital signals transmitted along with that clock signal, and memory device and computer system using same
EP1740564A2 (en) 2004-04-26 2007-01-10 Teva Gyógyszergyár Zártköruen Muködo Részvenytarsaság Process for preparation of mycophenolic acid and ester derivatives thereof
EP1782228A1 (en) * 2004-08-03 2007-05-09 Silverbrook Research Pty. Ltd Walk-up printing
US7483806B1 (en) 2007-07-20 2009-01-27 International Business Machines Corporation Design structures, method and systems of powering on integrated circuit
JP5388534B2 (ja) * 2008-10-09 2014-01-15 キヤノン株式会社 画像処理装置およびその方法、頭部装着型ディスプレイ、プログラム、記録媒体
US8294723B2 (en) * 2008-11-07 2012-10-23 Google Inc. Hardware-accelerated graphics for web applications using native code modules
US9024972B1 (en) * 2009-04-01 2015-05-05 Microsoft Technology Licensing, Llc Augmented reality computing with inertial sensors
US9400695B2 (en) * 2010-02-26 2016-07-26 Microsoft Technology Licensing, Llc Low latency rendering of objects
US20110242427A1 (en) * 2010-04-01 2011-10-06 Timothy Ramsdale Method and System for Providing 1080P Video With 32-Bit Mobile DDR Memory
WO2014160342A1 (en) 2013-03-13 2014-10-02 The University Of North Carolina At Chapel Hill Low latency stabilization for head-worn displays
WO2015052588A2 (en) * 2013-10-10 2015-04-16 Itay Katz Systems, devices, and methods for touch-free typing
US9412332B2 (en) * 2013-12-20 2016-08-09 Blackberry Limited Method for wirelessly transmitting content from a source device to a sink device
US9529195B2 (en) * 2014-01-21 2016-12-27 Osterhout Group, Inc. See-through computer display systems
US9766463B2 (en) * 2014-01-21 2017-09-19 Osterhout Group, Inc. See-through computer display systems
EP4206870A1 (en) 2014-06-14 2023-07-05 Magic Leap, Inc. Method for updating a virtual world
US20150370322A1 (en) * 2014-06-18 2015-12-24 Advanced Micro Devices, Inc. Method and apparatus for bezel mitigation with head tracking
US20160027141A1 (en) * 2014-07-22 2016-01-28 Oculus Vr, Llc In-band latency detection system
US9659410B2 (en) 2014-10-21 2017-05-23 Honeywell International Inc. Low latency augmented reality display
WO2016092698A1 (ja) * 2014-12-12 2016-06-16 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
US9240069B1 (en) * 2015-06-30 2016-01-19 Ariadne's Thread (Usa), Inc. Low-latency virtual reality display system

Also Published As

Publication number Publication date
EP3491489A1 (en) 2019-06-05
JP2019532375A (ja) 2019-11-07
CN109564466B (zh) 2020-08-25
BR112019001320A2 (pt) 2019-05-07
KR101979564B1 (ko) 2019-05-16
KR20190015577A (ko) 2019-02-13
US9858637B1 (en) 2018-01-02
WO2018022250A1 (en) 2018-02-01
CN109564466A (zh) 2019-04-02
EP3491489B1 (en) 2023-04-05

Similar Documents

Publication Publication Date Title
JP6556973B1 (ja) 仮想現実システムにおける動作反映待ち時間およびメモリ帯域幅を低減するためのシステムおよび方法
US10739599B2 (en) Predictive, foveated virtual reality system
CN110199267B (zh) 利用数据压缩进行实时图像转换的无缺失的高速缓存结构
US20230410720A1 (en) Optimized Display Image Rendering
EP3552081B1 (en) Display synchronized image warping
CN110249317B (zh) 用于实时图像变换的无未命中高速缓存结构
US10672368B2 (en) No miss cache structure for real-time image transformations with multiple LSR processing engines
US20170076425A1 (en) Electronic device and method for displaying an image on head mounted display device
WO2022252924A1 (zh) 图像传输与显示方法、相关设备及系统
US11468611B1 (en) Method and device for supplementing a virtual environment
US11706383B1 (en) Presenting video streams on a head-mountable device
US11301035B1 (en) Method and device for video presentation
EP4216544A1 (en) Stereoscopic-image playback device and method for generating stereoscopic images
WO2024020258A1 (en) Late stage occlusion based rendering for extended reality (xr)

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190118

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190118

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190118

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190603

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190610

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190710

R150 Certificate of patent or registration of utility model

Ref document number: 6556973

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250