JP2023549657A - 複数の視点から撮像された立体レンダリング画像データを表示するための3dビデオ会議システムおよび方法 - Google Patents
複数の視点から撮像された立体レンダリング画像データを表示するための3dビデオ会議システムおよび方法 Download PDFInfo
- Publication number
- JP2023549657A JP2023549657A JP2023524549A JP2023524549A JP2023549657A JP 2023549657 A JP2023549657 A JP 2023549657A JP 2023524549 A JP2023524549 A JP 2023524549A JP 2023524549 A JP2023524549 A JP 2023524549A JP 2023549657 A JP2023549657 A JP 2023549657A
- Authority
- JP
- Japan
- Prior art keywords
- computing system
- camera
- proxy
- planar
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000009877 rendering Methods 0.000 claims description 19
- 238000010586 diagram Methods 0.000 abstract description 7
- 230000006855 networking Effects 0.000 description 56
- 230000015654 memory Effects 0.000 description 30
- 238000004891 communication Methods 0.000 description 19
- 210000003128 head Anatomy 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 239000008186 active pharmaceutical agent Substances 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000007667 floating Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- H04N13/344—Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/194—Transmission of image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
- H04N13/117—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/133—Equalising the characteristics of different image components, e.g. their average brightness or colour balance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/15—Processing image signals for colour aspects of image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/239—Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/275—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
- H04N13/279—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals the virtual viewpoint locations being selected by the viewers or determined by tracking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/366—Image reproducers using viewer tracking
- H04N13/383—Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
- H04N7/157—Conference systems defining a virtual conference space and using avatars or agents
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本方法は、人工現実デバイスに関連付けられたコンピューティングシステムによって、ネットワークを介して、ユーザの第1の画像および第2の画像を含む第2のコンピューティングシステムのユーザのビデオデータを受信することを含む。第1の画像および第2の画像は、第2のコンピューティングシステムの第1のカメラおよび第2のカメラによってそれぞれ同時に撮像されてもよい。コンピューティングシステムは、ユーザを表示するための平面プロキシを生成し、かつ3次元仮想環境内の平面プロキシの姿勢を決定する。コンピューティングシステムは、それぞれ、決定された姿勢を有する平面プロキシおよび第1の画像と、決定された姿勢を有する平面プロキシおよび第2の画像とに基づいて、人工現実デバイスの左目用ディスプレイの左側画像および右目用ディスプレイの右側画像をレンダリングする。コンピューティングシステムは、左目用ディスプレイおよび右目用ディスプレイをそれぞれ使用して、レンダリングされた左側画像および右側画像を表示する。【選択図】図2
Description
本開示は、一般に、コンピュータグラフィックスおよびレンダリング画像データの表示に関する。
人工現実は、ユーザへの提示の前に何らかの様式で調整された形式の現実であり、これは、たとえば、仮想現実(VR)、拡張現実(AR)、複合現実(MR)、ハイブリッド現実、あるいはそれらの何らかの組合せおよび/または派生物を含み得る。人工現実コンテンツは、完全に生成されたコンテンツ、または撮像されたコンテンツ(たとえば、現実世界の写真)と組み合わせられた生成されたコンテンツを含み得る。人工現実コンテンツは、ビデオ、オーディオ、触覚フィードバック、またはそれらの何らかの組合せを含み得、それらのいずれも、単一のチャネルまたは複数のチャネルにおいて提示され得る(観察者に3次元効果をもたらすステレオビデオなど)。人工現実は、たとえば人工現実におけるコンテンツの生成および/または人工現実における使用(たとえば、人工現実における活動の実行)がなされるアプリケーション、製品、付属品、サービス、またはこれらの何らかの組合せと関連付けられている場合がある。人工現実コンテンツを提供する人工現実システムは、ホストコンピュータシステムに接続されたヘッドマウントディスプレイ(HMD)、スタンドアロンHMD、モバイルデバイスまたはコンピューティングシステム、あるいは、1人または複数の観察者に人工現実コンテンツを提供することが可能な任意の他のハードウェアプラットフォームを含む、様々なプラットフォーム上に実装され得る。
本明細書に記載の実施形態は、人工現実デバイス上で複数の視点から撮像された画像データを表示するためのシステム、方法およびメディアを包含する。複数の視点から撮像されたユーザまたは対象の画像データをレンダリングして表示することにより、本明細書で開示される実施形態は、3次元再生に従来必要とされていた複雑なハードウェア設定ならびに相当な電力および帯域幅の要件なしに、仮想環境におけるユーザの3次元再生をシミュレートする。開示された実施形態は、様々な用途、たとえば、人工現実デバイスを使用するビデオ通話体験に有用である。
一実施形態では、コンピューティングシステムは、対象またはユーザの複数の視点を含む画像データを受信し、本明細書に記載の1つまたは複数の技術を利用して、3次元体験をシミュレートする人工現実システムの第2のユーザに多視点画像データをレンダリングして表示してもよい。特定の実施形態では、コンピューティングシステムは、たとえば限定ではなく、多視点画像データをレンダリングして表示するために、仮想環境内の平面プロキシまたは3Dメッシュをさらに利用してもよい。本明細書に記載の技術は、2次元再生と比較した場合に対象のシルエット周辺の画質および深度知覚を改善する一方で、3次元再生と比較した場合に電力およびデータ帯域幅の要件を同時に低減する没入型の多視点体験を提供することによって既存の技術を改善する。
本発明の実施形態は、人工現実システムを含むか、または人工現実システムに関連して実装され得る。人工現実は、たとえば、仮想現実(VR)、拡張現実(AR)、複合現実(MR)、ハイブリッド現実、またはそれらの何らかの組合せおよび/もしくは派生物を含み得る、ユーザへの提示前に何らかの様式で調節されている現実の形態である。人工現実コンテンツは、完全に生成されたコンテンツ、または撮像されたコンテンツ(たとえば、現実世界の写真)と組み合わせられた生成されたコンテンツを含み得る。人工現実コンテンツは、ビデオ、オーディオ、触覚フィードバック、またはそれらの何らかの組合せを含み得、それらのいずれも、単一のチャネルまたは複数のチャネルにおいて提示され得る(観察者に3次元効果をもたらすステレオビデオなど)。また、特定の実施形態では、人工現実は、たとえば人工現実におけるコンテンツの生成および/または人工現実における使用(たとえば、人工現実における活動の実行)がなされるアプリケーション、製品、付属品、サービスまたはこれらの何らかの組合せと関連付けられてもよい。人工現実コンテンツを提供する人工現実システムは、ホストコンピュータシステムに接続されたヘッドマウントディスプレイ(HMD)、スタンドアロンHMD、モバイルデバイスまたはコンピューティングシステム、あるいは、1人または複数の観察者に人工現実コンテンツを提供することが可能な任意の他のハードウェアプラットフォームを含む、様々なプラットフォーム上に実装され得る。
本開示の第1の態様によれば、人工現実デバイスに関連付けられた第1のコンピューティングシステムによって、ネットワークを介して、第2のコンピューティングシステムのユーザのビデオデータを受信することであって、ビデオデータが、第2のコンピューティングシステムのユーザの第1の撮像された画像およびユーザの第2の撮像された画像を含み、第1の撮像された画像および第2の撮像された画像が、それぞれ第2のコンピューティングシステムの第1のカメラおよび第2のカメラによって同時に撮像される、第2のコンピューティングシステムのユーザのビデオデータを受信することと、第2のコンピューティングシステムのユーザを表示するための平面プロキシを生成することと、3次元仮想環境内で平面プロキシの姿勢を決定することと、決定された姿勢を有する平面プロキシおよび第1の撮像された画像に基づいて、人工現実デバイスの左目用ディスプレイの左側表示画像をレンダリングすることと、決定された姿勢を有する平面プロキシおよび第2の撮像された画像に基づいて、人工現実デバイスの右目用ディスプレイの右側表示画像をレンダリングすることと、レンダリングされた左側表示画像および右側表示画像をそれぞれ左目用ディスプレイおよび右目用ディスプレイを使用して表示することとを含む方法が提供される。
いくつかの実施形態では、平面プロキシは、人工現実デバイスの姿勢に対して配置される。
いくつかの実施形態では、平面プロキシは、3次元仮想環境内の固定された位置および向きに配置されてもよい。
いくつかの実施形態では、本方法は、第2のコンピューティングシステムから設定データを受信することであって、第2のコンピューティングシステムからの設定データが、第2のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、第2のコンピューティングシステムから設定データを受信することと、第3のコンピューティングシステムから設定データを受信することであって、第3のコンピューティングシステムからの設定データが、第3のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、第3のコンピューティングシステムから設定データを受信することと、第2のコンピューティングシステムおよび第3のコンピューティングシステムからの設定データに基づいて、3次元環境内の平面プロキシの姿勢を調整することとをさらに含んでもよい。
いくつかの実施形態では、第1のカメラおよび第2のカメラは、縦座標平面において互いに人間の瞳孔間距離未満の距離に位置してもよい。
いくつかの実施形態では、本方法は、第1のコンピューティングシステムまたは第2のコンピューティングシステムが、縦座標平面における第1のカメラまたは第2のカメラの位置を調整することをさらに含んでもよい。
いくつかの実施形態では、本方法は、ユーザを含む第1の撮像された画像の一部分を選択することと、ユーザを含む第2の撮像された画像の一部分を選択することとをさらに含んでもよく、左側表示画像は、第1の撮像された画像の選択された一部分に基づいてレンダリングされ、右側表示画像は、第2の撮像された画像の選択された一部分に基づいてレンダリングされる。
いくつかの実施形態では、本方法は、第1の画像内の1つまたは複数の画素の赤/緑/青(RGB)色値を決定することと、第2の画像内の1つまたは複数の対応する画素の赤/緑/青(RGB)色値を決定することと、第1の画像内の1つまたは複数の画素のRGB色値を、第2の画像内の1つまたは複数の対応する画素のRGB色値と一致するように調整することとをさらに含んでもよい。
いくつかの実施形態では、本方法は、平面プロキシに対する人工現実の視野角を決定することと、
視野角が所定の最大閾値を超えていると決定することと、人工現実デバイスの視野角が所定の最大閾値を超えているという決定に基づいて、左目用ディスプレイ上の左側表示画像および右目用ディスプレイ上の右側表示画像の表示を終了することとをさらに含んでもよい。
視野角が所定の最大閾値を超えていると決定することと、人工現実デバイスの視野角が所定の最大閾値を超えているという決定に基づいて、左目用ディスプレイ上の左側表示画像および右目用ディスプレイ上の右側表示画像の表示を終了することとをさらに含んでもよい。
本開示のさらなる態様によれば、ソフトウェアを具現化する1つまたは複数のコンピュータ可読非一時的記憶媒体であって、ソフトウェアは、人工現実デバイスに関連付けられた第1のコンピューティングシステムによって実行された場合に、ネットワークを介して、第2のコンピューティングシステムのユーザのビデオデータを受信することであって、ビデオデータが、ユーザの第1の撮像された画像およびユーザの第2の撮像された画像を含み、第1の撮像された画像および第2の撮像された画像が、それぞれ第2のコンピューティングシステムの第1のカメラおよび第2のカメラによって同時に撮像される、第2のコンピューティングシステムのユーザのビデオデータを受信することと、ユーザを表示するための平面プロキシを生成することと、3次元仮想環境内で平面プロキシの姿勢を決定することと、決定された姿勢を有する平面プロキシおよび第1の撮像された画像に基づいて、人工現実デバイスの左目用ディスプレイの左側表示画像をレンダリングすることと、決定された姿勢を有する平面プロキシおよび第2の撮像された画像に基づいて、人工現実デバイスの右目用ディスプレイの右側表示画像をレンダリングすることと、レンダリングされた左側表示画像および右側表示画像をそれぞれ左目用ディスプレイおよび右目用ディスプレイを使用して表示することと、を行うように動作可能である、ソフトウェアを具現化する1つまたは複数のコンピュータ可読非一時的記憶媒体が提供される。
いくつかの実施形態では、平面プロキシは、人工現実デバイスの姿勢に対して配置されてもよい。
いくつかの実施形態では、平面プロキシは、3次元仮想環境内の固定された位置および向きに配置されてもよい。
いくつかの実施形態では、ソフトウェアは、実行される場合に、第2のコンピューティングシステムから設定データを受信することであって、第2のコンピューティングシステムからの設定データが、第2のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、第2のコンピューティングシステムから設定データを受信することと、第3のコンピューティングシステムから設定データを受信することであって、第3のコンピューティングシステムからの設定データが、第3のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、第3のコンピューティングシステムから設定データを受信することと、第2のコンピューティングシステムおよび第3のコンピューティングシステムからの設定データに基づいて、3次元環境内の平面プロキシの姿勢を調整することとを行うように、さらに動作可能であってもよい。
いくつかの実施形態では、第1のカメラおよび第2のカメラは、縦座標平面において互いに人間の瞳孔間距離未満の距離に位置してもよい。
いくつかの実施形態では、ソフトウェアは、第1のコンピューティングシステムまたは第2のコンピューティングシステムによって実行される場合に、縦座標平面における第1のカメラまたは第2のカメラの位置を調整するようにさらに動作可能であってもよい。
本開示のさらなる態様によれば、1つまたは複数のプロセッサと、1つまたは複数のコンピュータ可読非一時的記憶媒体とを備える人工現実デバイスに関連付けられた第1のコンピューティングシステムが提供され、1つまたは複数のコンピュータ可読非一時的記憶媒体は、1つまたは複数のプロセッサに接続され、かつ命令を含み、命令は、1つまたは複数のプロセッサによって実行された場合に、システムに、ネットワークを介して、第2のコンピューティングシステムのユーザのビデオデータを受信することであって、ビデオデータが、ユーザの第1の撮像された画像およびユーザの第2の撮像された画像を含み、第1の撮像された画像および第2の撮像された画像が、それぞれ第2のコンピューティングシステムの第1のカメラおよび第2のカメラによって同時に撮像される、第2のコンピューティングシステムのユーザのビデオデータを受信することと、ユーザを表示するための平面プロキシを生成することと、3次元仮想環境内で平面プロキシの姿勢を決定することと、決定された姿勢を有する平面プロキシおよび第1の撮像された画像に基づいて、人工現実デバイスの左目用ディスプレイの左側表示画像をレンダリングすることと、決定された姿勢を有する平面プロキシおよび第2の撮像された画像に基づいて、人工現実デバイスの右目用ディスプレイの右側表示画像をレンダリングすることと、レンダリングされた左側表示画像および右側表示画像をそれぞれ左目用ディスプレイおよび右目用ディスプレイを使用して表示することとを行わせるように動作可能である。
いくつかの実施形態では、平面プロキシは、人工現実デバイスの姿勢に対して配置されてもよい。
いくつかの実施形態では、平面プロキシは、3次元仮想環境内の固定された位置および向きに配置されてもよい。
いくつかの実施形態では、プロセッサは、命令を実行した場合に、第2のコンピューティングシステムから設定データを受信することであって、第2のコンピューティングシステムからの設定データが、第2のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、第2のコンピューティングシステムから設定データを受信することと、第3のコンピューティングシステムから設定データを受信することであって、第3のコンピューティングシステムからの設定データが、第3のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、第3のコンピューティングシステムから設定データを受信することと、第2のコンピューティングシステムおよび第3のコンピューティングシステムからの設定データに基づいて、3次元環境内の平面プロキシの姿勢を調整することとを行うように、さらに動作可能であってもよい。
いくつかの実施形態では、第1のカメラおよび第2のカメラは、縦座標平面において互いに人間の瞳孔間距離未満の距離に位置してもよい。
本明細書で開示される実施形態は例にすぎず、本開示の範囲はそれらに限定されない。特定の実施形態は、本明細書で開示される実施形態の構成要素、要素、特徴、機能、動作、またはステップのすべてを含むか、いくつかを含むか、またはいずれをも含まないことがある。本発明による実施形態は、特に、方法、記憶媒体、システムおよびコンピュータプログラム製品を対象とする添付の特許請求の範囲で開示され、1つの請求項カテゴリー、たとえば、方法において述べられた任意の特徴は、別の請求項カテゴリー、たとえば、システムにおいても請求され得る。添付の特許請求の範囲における従属関係または参照は、形式的理由で選定されるにすぎない。ただし、前の請求項への意図的な参照(特に複数の従属関係)から生じる主題も請求され得、その結果、請求項とその特徴との任意の組合せが、開示され、添付の特許請求の範囲で選定された従属関係にかかわらず請求され得る。請求され得る主題は、添付の特許請求の範囲に記載の特徴の組合せだけでなく、特許請求の範囲における特徴の任意の他の組合せをも含み、特許請求の範囲において述べられた各特徴は、特許請求の範囲における任意の他の特徴または他の特徴の組合せと組み合わせられ得る。さらに、本明細書で説明または示される実施形態および特徴のいずれも、別個の請求項において、ならびに/あるいは、本明細書で説明もしくは示される任意の実施形態もしくは特徴との、または添付の特許請求の範囲の特徴のいずれかとの任意の組合せで請求され得る。
図1は、例示的な人工現実システム100およびユーザ102を示す図である。特定の実施形態では、人工現実システム100は、ヘッドセット104と、コントローラ106と、コンピューティングシステム108とを備えてもよい。ユーザ102は、左目用ディスプレイおよび右目用ディスプレイを介してユーザ102に視覚的な人工現実コンテンツを表示してもよいヘッドセット104を装着してもよい。ヘッドセット104は、オーディオ人工現実コンテンツをユーザ102に提供してもよいオーディオ機器を含んでもよい。ヘッドセット104は、環境の画像および映像をキャプチャすることができる1つまたは複数のカメラ110を備えてもよい。ヘッドセット104は、ユーザ102の輻輳距離を決定する視線追跡システムを含んでもよい。輻輳距離は、ユーザの目から、ユーザの視線が収束しているオブジェクト(たとえば、現実世界のオブジェクトまたは仮想空間内の仮想オブジェクト)までの距離であってもよい。ヘッドセット104は、ヘッドマウントディスプレイ(HMD)と呼ばれてもよい。
1つまたは複数のコントローラ106は、人工現実システム100とペアリングされてもよい。特定の実施形態では、1つまたは複数のコントローラ106には、ユーザ102がコントローラ106を介して特定の機能を実行してもよいように、人工現実システム100がコントローラの姿勢を推定し、および/またはコントローラの位置を追跡するための少なくとも1つの慣性測定ユニット(IMU)および赤外線(IR)発光ダイオード(LED)が備えられてもよい。特定の実施形態では、1つまたは複数のコントローラ106は、コンピューティングシステム108によって追跡されるように分散した1つまたは複数の追跡可能なマーカを備えてもよい。1つまたは複数のコントローラ106は、トラックパッドおよび1つまたは複数のボタンを備えてもよい。1つまたは複数のコントローラ106は、ユーザ102からの入力を受け、この入力をコンピューティングシステム108に伝えてもよい。1つまたは複数のコントローラ106はまた、ユーザ102に触覚フィードバックを提供してもよい。コンピューティングシステム108は、ケーブルまたは無線接続によって、ヘッドセット104および1つまたは複数のコントローラ106に接続されてもよい。1つまたは複数のコントローラ106は、本開示の他の態様を不明瞭にしないようここでは明確に示されていない、ハードウェア、ソフトウェアおよび/またはファームウェアの組合せを含んでもよい。
コンピューティングシステム108は、ヘッドセット104およびコントローラ106を制御して、人工現実コンテンツをユーザ102に与えるとともに、ユーザ102からの入力を受けるようにしてもよい。コンピューティングシステム108は、独立型ホストコンピュータシステムであってもよいし、ヘッドセット104と一体化されたオンボードコンピュータシステムであってもよいし、モバイル機器であってもよいし、人工現実コンテンツをユーザ102に与えるとともに、ユーザ102からの入力を受けることが可能なその他任意のハードウェアプラットフォームであってもよい。
特定の実施形態では、コンピューティングシステム108は、人工現実システム100の1つまたは複数の構成要素からセンサデータを受信してもよい。たとえば限定ではなく、ヘッドセット104は、ユーザのリアルタイムの動きを追跡し、その動きを表現するかまたは記述するためにセンサデータを出力するジャイロスコープまたは慣性測定ユニットを含んでもよい。このような動き追跡センサーによって提供されるセンサデータは、ユーザの現在の向きを決定し、その向きをレンダリングエンジンに提供して、仮想カメラを3次元空間内で配向/再配向するために、コンピューティングシステム108によって使用されてもよい。限定ではなく別の例として、1つまたは複数のコントローラ106は、IMUセンサデータを収集してコンピューティングシステム108に送信するように構成された慣性測定ユニット(IMU)および赤外線(IR)発光ダイオード(LED)を含んでもよい。特定の実施形態では、コンピューティングシステム108は、たとえば限定ではなく、SLAM追跡またはIRベースの追跡などの1つまたは複数の追跡技術を含む1つまたは複数のセンサデータを利用して、人工現実システム100の1つまたは複数の構成要素の姿勢を決定してもよい。
特定の実施形態では、コンピューティングシステム108は、人工現実システム100の1つまたは複数の構成要素から1つまたは複数の画像データを受信してもよい。特定の実施形態では、この画像データは、人工現実システム100に関連付けられた1つまたは複数のカメラ110からの撮像された画像データを含む。たとえば、図1は、ヘッドセット104内に接続された1つまたは複数のカメラ110を示す。これらの1つまたは複数のカメラ110は、たとえば限定ではなく、ヘッドセット104に関連付けられた下向きの1つまたは複数のカメラ(たとえば、起立中のユーザ102の足の方を向く)など、様々な視点に関連付けられた画像をキャプチャするように位置決めされてもよい。
特定の実施形態では、コンピューティングシステム108は、3次元空間内の1つまたは複数のカメラ110の姿勢を決定してもよい。コンピューティングシステムは、センサデータまたは画像データのうちの1つまたは複数を利用して、1つまたは複数のカメラ110の姿勢を決定してもよい。特定の実施形態では、コンピューティングシステム108は、SLAMなどの位置特定技術を利用して、3次元座標空間内の1つまたは複数のカメラ110の姿勢を決定してもよい。特定の実施形態では、この姿勢は、たとえば限定ではなく絶対グローバル座標系(たとえば、x,y,z)を介して、または人工現実システム100の1つまたは複数の構成要素、たとえば限定ではなく、ヘッドセット104もしくは1つまたは複数のコントローラ106に対するローカル座標系を介して、1つまたは複数の座標系を使用して表されてもよい。
特定の実施形態では、コンピューティングシステム108は、ユーザ102に関連付けられたヘッドセット104の姿勢を決定してもよい。ヘッドセットの姿勢は、コンピューティングシステム108によって受信されたセンサデータまたは画像データのいずれかを利用することによって決定されてもよい。ユーザ102に関連付けられたヘッドセットの姿勢は、ヘッドセット104の位置および向きを含んでもよい。特定の実施形態では、ユーザ102に関連付けられたヘッドセットの姿勢を含む位置および向きは、たとえば限定ではなく絶対グローバル座標系(たとえば、x,y,z)を介して、または人工現実システム100の1つまたは複数の構成要素もしくはユーザ102の1つまたは複数のジョイント、たとえば限定ではなく、1つまたは複数のコントローラ106に対するローカル座標系を介して、1つまたは複数の座標系を使用して表されてもよい。
特定の実施形態では、コンピューティングシステム108は、ユーザ102に関連付けられた1つまたは複数のコントローラ106のコントローラ姿勢を決定してもよい。ユーザ102に関連付けられたコントローラ姿勢は、コンピューティングシステム108によって受信されたセンサデータまたは画像データのいずれかを利用することによって決定されてもよい。特定の実施形態では、コンピューティングシステム108は、たとえば限定ではなく、画像分類またはオブジェクト検出などの1つまたは複数のコンピュータビジョン技術を使用して、ユーザ102に関連付けられたコントローラ106の姿勢を決定してもよい。ユーザ102に関連付けられたコントローラの姿勢は、コントローラ106の位置および向きを含んでもよい。ユーザ102に関連付けられたコントローラの姿勢を含む位置および向きは、たとえば限定ではなく絶対グローバル座標系(たとえば、x,y,z)を介して、または人工現実システム100の1つまたは複数の構成要素もしくはユーザ102の1つまたは複数のジョイント、たとえば限定ではなく、ヘッドセット104に対するローカル座標系を介して、1つまたは複数の座標系を使用して表されてもよい。コントローラの姿勢を決定するための方法は、米国特許出願第2020年1月3日に出願された、「Joint Infrared and Visible Light Visual-Inertial Object Tracking」と題する米国特許出願第16/734,172号明細書に記載されている。
人工現実システムは、各ユーザのオーディオおよび画像のデータ(たとえば、ビデオ)を送信するビデオ通話アプリケーションにおいて2人またはそれ以上のユーザが互いに通信することを可能にすることを含む、様々なアプリケーションに利用される。人工現実システムは、一般に、計算およびリソース効率が良いビデオ通話アプリケーションにおいて2次元画像データを使用するが、人工現実システムの全機能を利用して豊かで没入型のビデオ通話体験を提供するものではない。他の人工現実システムは、人工現実環境においてユーザまたはシーンの完全なモデルをレンダリングするために3次元ビデオ通話を利用する。しかし、完全な3次元ビデオ通話は、複雑なハードウェア設定ならびに相当な電力および帯域幅の要件を必要とするため、平均的な消費者にとって有益ではない。
さらに、人間の両眼視の性質により、現実世界のオブジェクトは、人間の2つの目によって知覚されるオブジェクトの両視点に起因してのみ知覚可能な視野依存性の外観の違い(たとえば、反射、屈折)を示す。これらの視野依存性の外観の違いは、異なる物質を知覚して識別する人間の脳の能力において重要な役割を果たす。しかし、2次元および3次元の両方のビデオ通話アプリケーションは、画像データをキャプチャするために単一の入力RGBカメラを利用することが多く、ユーザに表示されると、表示のために単一の視点のみが撮像されてレンダリングされるため、これらの視野依存性の外観の違い(たとえば、光沢のある机の上の光沢および鏡面反射)を示すことができない。
本開示は、人工現実システムを使用したビデオ通話のための立体レンダリング技術を使用することによって、既存の人工現実ビデオ通話技術を改善する。高い水準では、コンピューティングシステムは、対象またはユーザの複数の視点を含む画像データを受信し、本明細書に記載の1つまたは複数の技術を利用して、3次元のビデオ通話体験をシミュレートする人工現実システムのユーザに多視点画像データをレンダリングして表示してもよい。特定の実施形態では、コンピューティングシステムは、たとえば限定ではなく、多視点画像データをレンダリングして表示するために、仮想環境内の平面プロキシまたは3Dメッシュをさらに利用してもよい。本明細書に記載の技術を使用して、開示された実施形態は、3次元ビデオ通話と比較した場合に電力およびデータ帯域幅の要件を同時に低減しながら、オブジェクトのシルエット周辺の画質および深度知覚の顕著な改善と共に、没入型の多視点ビデオ通話体験を提供することによって既存の技術を改善する。
特定の実施形態では、人工現実デバイスに関連付けられたコンピューティングシステムのユーザは、第2の人工現実デバイスに関連付けられた第2のコンピューティングシステムの第2のユーザを含む環境の画像データを受信してもよい。図2は、環境内のユーザの画像データをキャプチャする複数のカメラを示している。特定の実施形態では、対象210は、人工現実デバイスに関連付けられたコンピューティングシステムのユーザであってもよい。特定の実施形態では、画像データはビデオデータであってもよい。特定の実施形態では、左カメラ215および右カメラ225の2つのカメラを使用して、環境内の対象210の画像データをキャプチャしてもよい。特定の実施形態では、複数のカメラの各々は、(図2に示すように)単一のデバイス内に含まれてもよく、たとえば、複数のカメラを備えるモバイルコンピューティングデバイス、または、複数のカメラのうちの1つまたは複数のカメラは、別個のデバイスに含まれ(たとえば、カメラ215はモバイルコンピューティングデバイス上のカメラであってもよく、カメラ225はウェブカメラであってもよい)、コンピューティングシステムに通信可能に結合されるかまたは関連付けられてもよい。特定の実施形態では、複数のカメラは、対象210の人工現実デバイスに関連付けられたコンピュータシステムに通信可能に結合されるかまたは関連付けられてもよい。
特定の実施形態では、複数のカメラにおける各カメラは、水平な部屋の床から同じ垂直距離になるように位置決めされる(すなわち、各カメラは、図2に示すx-y-z座標空間内の適用軸またはz軸上の共通の座標を共有する)。特定の実施形態では、複数のカメラの各カメラは、任意の2つの隣接するカメラが縦座標軸上で互いに既知の距離に位置するように、縦座標軸または図2に示すようなy軸に沿って位置決めされる。特定の実施形態では、縦座標軸上の任意の2つのカメラ間の既知の距離は、コンピューティングシステムによって調整されてもよい。限定ではなく、例として、任意の2つのカメラ間の距離は、人間の瞳孔間距離のおおよその範囲内(たとえば、25mmから80mmの間)の距離、人間の瞳孔間距離のおおよその範囲よりも小さい(たとえば、クライアントデバイス上の任意の2つのカメラ間の距離のおおよその範囲(たとえば、5mmから25mmの間))距離、またはより大きな動物の視覚をシミュレートする人間の瞳孔間距離よりも広い距離であってもよい。
特定の実施形態では、複数のカメラの各カメラは、複数のカメラにおける他のカメラの各々とは異なる視点から対象210の画像データを同時にキャプチャする。図2に示すように、左カメラ215は左カメラ画像235をキャプチャしてもよく、右カメラ225は右カメラ画像245をキャプチャしてもよく、左カメラ画像235の視点は、カメラ215から収集された画像データがカメラ225および複数のカメラにおける他のすべてのカメラとは異なる視点からのものであるように、右カメラ画像245の視点とは異なる。特定の実施形態では、この左画像235は、対象210を観察する人の左目から観察されるシーンの視点を表してもよく、特定の実施形態では、右画像245は、対象210を観察する人の右目から観察されるシーンの視点を表してもよい。特定の実施形態では、これらの異なる視点は、複数のカメラの各カメラが他のカメラの各々から(カメラの位置および向きを含む)固有の姿勢 を有することを保証することによって達成されてもよい。特定の実施形態では、複数のカメラ内の1つまたは複数のカメラの1つまたは複数の特性を変更することによって、異なる視点を達成してもよい(たとえば、左カメラ215は広角レンズを有し、右カメラ225は望遠レンズを有する)。図2は、2つの異なるカメラから撮像された2つの視点からの画像データを示しているが、本開示は、各々が異なる視点から画像データをキャプチャする、複数のカメラにおける任意の数のカメラを想定している。特定の実施形態では、撮像された画像データは、撮像された画像データをレンダリングして人工現実デバイスに表示するために、第2のユーザの人工現実デバイスに関連付けられたコンピューティングシステムに送信されてもよい。
特定の実施形態では、コンピューティングシステムは、複数のカメラのうちの1つまたは複数の1つまたは複数のパラメータを調整してもよい。これらの調整は、画像データをキャプチャする前に、またはキャプチャすると同時に行ってもよい。特定の実施形態では、1つまたは複数のカメラに対するこれらの調整のうちの1つまたは複数は、画像データ内で観察される対象210の視点を調整してもよい。一例として、特定の実施形態では、コンピューティングシステムは、縦座標軸上の複数のカメラのうちの1つまたは複数のカメラ間のベースライン距離を調整してもよい。特定の実施形態では、複数のカメラのうちの1つまたは複数のカメラ間の既定のベースライン距離は、平均的な人間の瞳孔間距離(たとえば、25mm~80mm)にほぼ等しい。特定の実施形態では、この調整は所定の範囲内に含まれてもよい。特定の実施形態では、カメラ間のベースライン距離がより小さい構成(たとえば、35mm)は、ユーザが、サイズは大きく見えるがより遠くに離れている(すなわち、横軸またはx軸に沿った複数のカメラからの距離が大きい)大きなシーンの画像をもたらす一方で、カメラ間のベースライン距離がより大きい構成(たとえば、75mm)は、ユーザが、サイズは小さく見えるがカメラに近い(すなわち、横軸またはx軸に沿った複数のカメラからの距離が小さい)小さなシーンの画像をもたらす。
特定の実施形態では、コンピューティングシステムは、レンダリングされたステレオ画像のスケーリングをさらに調整し、それによって画像データ内のカメラからのユーザの視差、知覚されたサイズ、および知覚された距離をスケーリングしてもよい。これらの調整は、たとえば、限定するものではないが、対象が等身大を超えるが、カメラから遠く離れていると知覚される画像をもたらすことがある。
特定の実施形態では、コンピューティングシステムは、ステレオ収束オフセットを調整してもよい。特定の実施形態では、この収束オフセットは、たとえば、0.0から1.0の間に限定されず、所定の範囲内に入っていてもよい。収束オフセットが小さい(たとえば、約0.0)表示構成では、深度が大きい画像が得られ、シーンの背景は無限大にマッピングされ(すなわち、背景は、横軸またはx軸に沿って複数のカメラからより大きな距離に現れる)、その一方で、収束オフセットが大きい(たとえば、約1.0)構成では、深度が小さい画像が得られ、シーンの背景は対象とほぼ同じ深度に現れる(すなわち、背景は、横軸またはx軸に沿って複数のカメラからより小さい距離に現れる)。
特定の実施形態では、1つまたは複数のカメラに対する1つまたは複数の調整は、対象210に関連付けられたコンピューティングシステムによって実行されてもよく、または、これらの1つまたは複数の調整は、たとえば限定ではなく、対象210の画像を見ている第2のユーザの人工現実デバイスに関連付けられたコンピューティングシステムなど、対象210から画像データを受信しているコンピューティングシステムによって実行されてもよい。
本明細書で開示される特定の実施形態はまた、コンピューティングシステムが、たとえば限定ではなく、画質を改善するために、または人工現実デバイス上で画像データをレンダリングして表示するために必要なリソースを低減するために、撮像された画像データのうちの1つまたは複数の特性を調整することを可能にする。特定の実施形態では、撮像された画像データに対する1つまたは複数の調整は、画像データを送信する前に対象210に関連付けられたコンピューティングシステムによって実行されてもよく、または撮像された画像データに対する1つまたは複数の調整は、たとえば限定ではなく、対象210の画像を見ているユーザの人工現実デバイスに関連付けられたコンピューティングシステムなど、対象210から画像データを受信しているコンピューティングシステムによって実行されてもよい。
特定の実施形態では、コンピューティングシステムは、1つまたは複数の撮像された画像の色を決定して調整してもよい。特定の実施形態では、撮像された画像内の各ピクセルには、赤/緑/青(RGB)の色値(たとえば、白色画素に(255,255,255)のRGB色値が割り当てられてもよい)および対応するローカル座標値(たとえば、x,y座標)が割り当てられてもよい。特定の実施形態では、コンピューティングシステムは、このデータを使用してユーザの画像を強調することができる。特定の実施形態では、RGB色値は、照明および色補正の目的のために、典型的な環境のRGB色値と比較されてもよい。たとえば、RGB色値が、現在、撮像された画像に青みがあることを示す場合、コンピューティングシステムは、シーンを色補正するために1つまたは複数の撮像された画像内の1つまたは複数のピクセルを調整してもよい。
特定の実施形態では、コンピューティングシステムは、割り当てられた画素RGBおよび位置座標値を使用して、1つまたは複数の画像内の1つまたは複数の画素を互いに対して色補正してもよい。たとえば、限定ではなく、各カメラの異なる視点もしくは設定のために、左画像235内の画素のRGB色は右画像245のものとは異なっていてもよい。たとえば、左画像235内のグローバル位置座標(0,40)の画素が(165,42,42)のRGB色値を有してもよい一方で、右画像245では、対応するグローバル位置(0,40)の画素は(160,82,45)のRGB色値を有してもよい。特定の実施形態では、コンピューティングシステムは、特定の位置の画素のRGB色値が撮像された各画像にわたって一貫しているように、1つまたは複数の画素のRGB色値を調整してもよい。そうすることにより、画像がレンダリングされて表示されるときに、ユーザにとってより一貫した審美的に満足のいく体験を提供してもよい。
特定の実施形態では、コンピューティングシステムは、人工現実デバイス上で画像をレンダリングして表示する前に画像をセグメント化してもよい。たとえば、コンピューティングシステムは、各画像内の背景環境(たとえば、椅子、テーブルなど)から前景(たとえば、ユーザ)を識別してセグメント化してもよい。特定の実施形態では、コンピューティングシステムは、対象210上の複数の表面点に対応する左画像235および右画像245内の1つまたは複数の座標点を決定してもよい。特定の実施形態では、これらの座標点の各々は、対象210の特定の関節(たとえば、頭部関節、首関節など)に対応してもよい。特定の実施形態では、コンピューティングシステムは、前景(たとえば、ユーザ)を背景環境から区別するために、前述のように画像内のピクセルの割り当てられたRGB色値をさらに利用してもよい。特定の実施形態では、コンピューティングシステムは、点のセット内の1つまたは複数の点を包含する各画像の境界ボックスを生成してもよい。境界ボックスは、点のセット内のすべての点を含むのに十分な大きさであってもよい。特定の実施形態では、コンピューティングシステムは、境界ボックス内の画像データを含む前景データのみがコンピューティングシステムによって送信されてレンダリングされてもよいように、背景画像データを前景画像データから除去してもよい。画像の前景領域をレンダリングして表示するだけで、コンピューティングシステムは、ビデオ通話体験中の帯域幅要件および待ち時間を低減することができる。
特定の実施形態では、コンピューティングシステムは、対象210の受信画像データを表示するために仮想現実環境で平面プロキシを生成してもよい。図3は、仮想環境内で生成された平面プロキシを示している。特定の実施形態では、コンピューティングシステムに関連付けられた人工現実デバイス315を装着している観察者310は、たとえばビデオ通話アプリケーションを介して、対象210の画像データを見ることを望む場合がある。平面プロキシ320をレンダリングすることは、コンピューティングシステムが多視点画像データ325を表示することを可能にし、これは、特定の実施形態では、平面プロキシ320を用いて左目用ディスプレイ上の左カメラ画像235および右目用ディスプレイ上の右カメラ画像245の両方を同時に表示することを含む。画像データをレンダリングして表示するために平面プロキシを利用することにより、視覚的アーチファクトを相対的に低減し、ならびに計算、電力およびデータ帯域幅の要件を低減しながら、対象210の現実的な表示が観察者310に提供される。
特定の実施形態では、コンピューティングシステムは、3次元仮想環境内の平面プロキシ320の姿勢をさらに決定してもよい。平面プロキシ320の姿勢は、たとえば限定ではなく、観察者310の仮想環境に基づいて、観察者310が対話しているアプリケーションに基づいて、または観察者310による選択を通じて決定されてもよい。特定の実施形態では、平面プロキシ320の姿勢は、仮想環境にアンカされてもよい(すなわち、仮想環境内の固定された位置および向きに配置されてもよい)。この実施形態では、平面プロキシ320は、人工現実デバイス315の観察者310が平面プロキシ320に近づくと、平面プロキシ320を使用してレンダリングされた多視点画像データ325のサイズがより大きく現れるように、仮想環境内に固定されているように見える。特定の実施形態では、平面プロキシ320の姿勢は、(たとえば、特定のx,y,z座標の)仮想環境内の絶対座標に基づいて固定されてもよく、または、平面プロキシ320の姿勢は、(たとえば、仮想環境内の壁またはテーブルに対する座標に配置される)仮想環境内の1つまたは複数の固定されたオブジェクトまたは位置に対して固定されてもよい。固定された(すなわち、アンカされた)姿勢は、観察者310が仮想環境全体にわたって移動するときに、観察者310が、平面プロキシ320を用いてレンダリングされた多視点画像データ325を異なる視点から見ることを可能にし、観察者310が環境全体にわたって移動するときに平面プロキシ320からの距離を調整することをさらに可能にする。
特定の実施形態では、平面プロキシ320の姿勢は、仮想環境内の観察者310の位置に対して、または観察者310に関連付けられた人工現実デバイス315、たとえばヘッドセットまたはコントローラの位置に対して決定されてもよい。特定の実施形態では、コンピューティングシステムは、観察者310に関連付けられた人工現実デバイス315からセンサデータを受信して、その位置を決定してもよい。特定の実施形態では、コンピューティングシステムは、観察者310と人工現実デバイス315との間の既知の関係をさらに利用して、観察者310の姿勢(たとえば、人工現実デバイス315の姿勢と観察者310の頭部姿勢との間の既知の関係)を決定してもよい。特定の実施形態では、コンピューティングシステムは、平面プロキシ320が常に観察者310の頭部姿勢から一定の距離および向きに留まる(すなわち、仮想環境全体にわたって観察者310と共に移動する)ように、たとえば観察者310の頭部姿勢(たとえば、頭部が固定された姿勢)に対して平面プロキシ320を配置してもよい。この実施形態では、多視点画像データ325のレンダリングは、人工現実デバイス315の観察者310から所定の距離にある仮想環境において 「浮遊」 しているように見え、したがって、観察者310が仮想環境全体を移動するときであっても、観察者310からは同じサイズで同じ距離にあるように見える。これにより、観察者310は、平面プロキシ320を用いてレンダリングされた多視点画像データ325を観察者310が仮想環境全体を移動するのと同じ視点から見ることが可能になり、これは、たとえば限定ではなく、仮想環境を歩いている間に対象210とビデオ会議を行うのに有用であってもよい。
特定の実施形態では、コンピューティングシステムは、平面プロキシ320の固定された(すなわち、アンカされた)姿勢と相対(すなわち、浮いている)姿勢の表示を切り替えることができる。特定の実施形態では、観察者310は、1つまたは複数のコントローラ106と対話すること(たとえば、コントローラボタンを押すこと、またはコントローラを特定の方法で動かすこと)によって、平面プロキシ320の固定された(すなわち、アンカされた)姿勢と相対(すなわち、浮いている)姿勢とを切り替えることができる。
特定の実施形態では、コンピューティングシステムは、平面プロキシ320の代わりに、またはそれに加えて、対象210の撮像された画像データをレンダリングするために仮想環境内の対象210を表す3Dメッシュを生成してもよい。図4は、仮想環境内で生成された3Dメッシュを示している。特定の実施形態では、人工現実デバイス315を装着している観察者310は、たとえばビデオ通話アプリケーションを介して、対象210の画像データを見ることを望む場合がある。3Dメッシュ420は、たとえば限定ではなく、対象210の撮像されたセンサデータまたは画像データを使用する既知の技術を使用して生成されてもよい。特定の実施形態では、3Dメッシュ420は、観察者310の仮想環境(たとえば、対象210の頭部または上部胴体)における対象210の少なくとも一部の3次元投影をシミュレートしてもよい。3Dメッシュ420をレンダリングすることは、コンピューティングシステムが多視点画像データ325を表示することを可能にし、これは、特定の実施形態では、3Dメッシュ420を用いて左目用ディスプレイ上の左カメラ画像235および右目用ディスプレイ上の右カメラ画像245の両方を同時に表示することを含む。
特定の実施形態では、コンピューティングシステムは、3次元仮想環境内の3Dメッシュ420の姿勢をさらに決定してもよい。3Dメッシュ420の姿勢は、たとえば限定ではなく、観察者310の仮想環境に基づいて、観察者310が対話しているアプリケーションに基づいて、または観察者310による選択を通じて決定されてもよい。特定の実施形態では、3Dメッシュ420の姿勢は、仮想環境に固定されてもよい(すなわち、仮想環境内の固定された位置および向きに配置されてもよい)。この実施形態では、3Dメッシュ420は、人工現実デバイス315の観察者310が3Dメッシュ420に近づくと、3Dメッシュ420を使用してレンダリングされた多視点画像データ325のサイズがより大きく現れるように、仮想環境内に固定されているように見える。特定の実施形態では、3Dメッシュ420の姿勢は、(たとえば、特定のx,y,z座標の)仮想環境内の絶対座標に基づいて固定されてもよく、または、3Dメッシュ420の姿勢は、(たとえば、仮想環境内の壁またはテーブルに対する座標に配置される)仮想環境内の1つまたは複数の固定されたオブジェクトまたは位置に対して固定されてもよい。固定された(すなわち、アンカされた)姿勢は、観察者310が仮想環境全体にわたって移動するときに、観察者310が、3Dメッシュ420を用いてレンダリングされた多視点画像データ325を異なる視点から見ることを可能にし、観察者310が環境全体にわたって移動するときに3Dメッシュ420からの距離を調整することをさらに可能にする。
特定の実施形態では、3Dメッシュ420の姿勢は、仮想環境内の観察者310の位置に対して、または観察者310に関連付けられた人工現実デバイス315、たとえばヘッドセットまたはコントローラの位置に対して決定されてもよい。特定の実施形態では、コンピューティングシステムは、観察者310に関連付けられた人工現実デバイス315からセンサデータを受信して、その位置を決定してもよい。特定の実施形態では、コンピューティングシステムは、観察者310と人工現実デバイス315との間の既知の関係をさらに利用して、観察者310の姿勢(たとえば、人工現実デバイス315の姿勢と観察者310の頭部姿勢との間の既知の関係)を決定してもよい。特定の実施形態では、コンピューティングシステムは、3Dメッシュ420が常に観察者310の頭部姿勢から一定の距離および向きに留まる(すなわち、仮想環境全体にわたって観察者310と共に移動する)ように、たとえば観察者310の頭部姿勢(たとえば、頭部が固定された姿勢)に対して3Dメッシュ420を配置してもよい。この実施形態では、多視点画像データ325のレンダリングは、人工現実デバイス315の観察者310から所定の距離にある仮想環境において 「浮遊」 しているように見え、したがって、観察者310が仮想環境全体を移動するときであっても、観察者310からは同じサイズで同じ距離にあるように見える。これにより、観察者310は、3Dメッシュ420を用いてレンダリングされた多視点画像データ325を観察者310が仮想環境全体を移動するのと同じ視点から見ることが可能になり、これは、たとえば限定ではなく、仮想環境を歩いている間に対象210とビデオ会議を行うのに有用であってもよい。
特定の実施形態では、コンピューティングシステムは、3Dメッシュ420の固定された(すなわち、アンカされた)姿勢と相対(すなわち、浮いている)姿勢の表示を切り替えることができる。特定の実施形態では、観察者310は、1つまたは複数のコントローラ106と対話すること(たとえば、コントローラボタンを押すこと、またはコントローラを特定の方法で動かすこと)によって、3Dメッシュ420の固定された(すなわち、アンカされた)姿勢と相対(すなわち、浮いている)姿勢とを切り替えることができる。
特定の実施形態では、コンピューティングシステムは、観察者310に関連付けられた人工現実デバイス上に表示するために、対象210の多視点画像データ325をレンダリングしてもよい。たとえば、コンピューティングシステムは、観察者310に関連付けられた人工現実デバイスの左目用ディスプレイおよび右目用ディスプレイにそれぞれ表示するために左カメラ画像235および右カメラ画像245をレンダリングしてもよい。特定の実施形態では、撮像された画像は、平面プロキシの決定された姿勢、3Dメッシュの決定された姿勢に基づいて、または1つまたは複数のカメラによって撮像された対応する画像を使用してレンダリングされてもよい。特定の実施形態では、レンダリングされた画像のうちの1つまたは複数は、本明細書に開示されるように撮像された画像データの特性に対する1つまたは複数の調整を含んでもよい。
特定の実施形態では、レンダリングされた左カメラ画像235および右カメラ画像245は、対象210の3D視点をシミュレートする、観察者310の人工現実デバイスの左目用ディスプレイおよび右目用ディスプレイにそれぞれ同時に表示されてもよい。図5は、人工現実デバイス上に表示されたユーザのレンダリング画像データを示している。特定の実施形態では、コンピューティングシステムは、人工現実デバイスの各ディスプレイ、たとえば、ヘッドセットの左目用ディスプレイ510および右目用ディスプレイ520の画像をレンダリングして表示してもよい。特定の実施形態では、左目の視点を表すカメラから撮像された画像、たとえば左カメラ215によって撮像された左カメラ画像235は、左目用ディスプレイ510に表示されてもよい。特定の実施形態では、右目の視点を表すカメラから撮像された画像、たとえば右カメラ225によって撮像された右カメラ画像245は、右目用ディスプレイ520に表示されてもよい。
たとえば左画像235および右画像245を含む多視点画像データ325を表示することは、たとえば限定ではなく、対象210と観察者310との間のビデオ通話体験など、様々な用途のためのいくつかの改善を生みだす。たとえば、多視点画像データ325が対象210を表す平面プロキシ320に基づいてレンダリングされる場合、コンピューティングシステムは、リソースが集約的であってもよい対象210の完全な3D再構成を必要とせずに、対象210を用いた3D通話体験の視覚的外観をシミュレートすることができる。さらに、平面プロキシ320上に多視点画像データ325を表示することは、視覚的アーチファクトの低減、ならびに計算、電力およびデータ帯域幅の要件の低減をもたらす。
別の例として、生成された3Dメッシュ420に関連して多視点画像データ325がレンダリングされる場合、出力は、立体テクスチャモデリングを使用して、撮像された画像を3Dメッシュ420にマッピングし、これは対象210の3次元モデルを表してもよい。この立体テクスチャモデリングは、人間の両眼視の複数の視点(たとえば、深度再構成、テクスチャ、または左目および右目の視点が同時に見られた場合にのみ見える可能性があるユーザの他の固有の特徴)に起因してのみ見える特徴を3Dメッシュ420上にレンダリングする。たとえば、観察者310によって知覚される画質は、平面視テクスチャと比較した場合、屈折およびハイライトが適切に再現されるため、オブジェクトのシルエット周辺で大幅に改善され、光沢のある表面(たとえば、ガラステーブルまたは携帯電話の画面)のユーザの知覚を改善する。別の例として、対象210と視線を合わせることは、3Dメッシュ420を回転させることによってシミュレートすることができ、3Dメッシュ420は、たとえば、通話者間の正確なポインティングジェスチャ、または両方のユーザによる仮想オブジェクトの操作を限定するものではないが、仮想空間における相互作用をサポートする。
さらなる実施形態は、観察者310が本明細書に記載の方法(たとえば、グループビデオ通話アプリケーション)を使用して2人または以上の対象を同時に見ることを可能にする。さらに、観察者310が複数の通話者と対話する場合、コンピューティングシステムは、設定データ(たとえば、付帯的および固有のカメラパラメータ、センサデータ、または対象に関連付けられたコンピューティングシステムからの画像データ)を利用して、複数の通話者間でより一貫した体験を作り出してもよい。一例として、観察者310は、第1の対象および第2の対象との三者体験を開始し、第1の対象および第2の対象の両方が観察者310に同時に表示される。特定の実施形態では、第1の対象の設定データは、第2の対象の設定データとは異なる可能性がある(たとえば、第1の対象は第2の対象よりもカメラから遠くに位置する可能性があり、第2の対象は第1の対象よりもベースライン距離が広いカメラを有する可能性がある、など)。調整しない場合、第1の対象および第2の対象を同時に表示することは、観察者にとって不快な体験になる可能性がある(たとえば、第1の対象は第2の対象よりもはるかに大きくなる可能性があり、一方の対象は他方の対象よりも遠くに見える可能性がある、など)。
これを改善するために、コンピューティングシステムは、たとえば限定ではなく、カメラの特性または対象とカメラとの間の距離など、各対象の構成に関する設定データを受信し、かつ観察者310に対するすべての対象の知覚された深度もしくは位置を調整してもよい。特定の実施形態では、これらの調整は、たとえば限定ではなく、平面プロキシもしくは3Dメッシュの姿勢を調整すること、または平面プロキシもしくは3Dメッシュをスケーリングすることを含んでもよい。これらの調整により、異なる構成にもかかわらず、第1の対象および第2の対象の両方が、観察者310からほぼ同じサイズと距離とで現れてもよい。
特定の実施形態は、コンピューティングシステムが、観察者310に関連付けられた人工現実デバイスの向きに基づいて多視点画像データ325の向きを調整することをさらに可能にする。特定の実施形態では、コンピューティングシステムは、観察者310に関連付けられた人工現実デバイスからセンサデータを受信し、センサデータに基づいて、観察者310に関連付けられた人工現実デバイスの向きを決定してもよい。この向きを使用して、コンピューティングシステムは、その後、観察者310に関連付けられた人工現実デバイスの向きに一致するように、表示された多視点画像データ325の向きを調整してもよい。特定の実施形態では、コンピューティングシステムは、人工現実デバイスの向きが所定の最大閾値、たとえば、観察者310が多視点画像データ325を見ている特定の視野角を超えているとさらに決定してもよい。特定の実施形態では、コンピューティングシステムは、人工現実デバイスの向きが所定の最大閾値を超えているという決定に基づいて、観察者310に関連付けられた人工現実デバイス上の多視点画像データ325の表示を終了してもよい。
簡単にするために、本明細書で開示される実施形態は、複数の視点から対象210の画像データをキャプチャし、かつこれらの画像を観察者310に表示する方法を説明する。しかし、特定の実施形態では、これらの方法を使用して、複数の視点から観察者310の画像データを同時にキャプチャし、かつこれらの画像を対象210に表示してもよいことを理解されたい。このようにして、対象210および観察者310は、たとえば限定ではなく、両方のユーザが同時に他方のユーザのシミュレートされた3D画像データの表示を見ることができるように、人工現実ビデオ通話体験を通じて互いに対話することができる。
図6は、複数の視点から撮像された立体レンダリング画像データを表示するための例示的な方法600を示している。本方法は、人工現実デバイスに関連付けられたコンピューティングシステムが、ネットワークを介して、第2のコンピューティングシステムのユーザのビデオデータを受信するステップ610で開始してもよく、ビデオデータは、ユーザの第1の撮像された画像およびユーザの第2の撮像された画像を含み、第1の撮像された画像および第2の撮像された画像は、第2のコンピューティングシステムの第1のカメラおよび第2のカメラによってそれぞれ同時に撮像される。特定の実施形態では、左カメラおよび右カメラの2つのカメラを使用して、環境内のユーザの画像データをキャプチャしてもよい。特定の実施形態では、左カメラおよび右カメラは、水平な部屋の床から同じ垂直距離になるように位置決めされる。特定の実施形態では、縦座標軸上の左カメラと右カメラとの間の既知の距離は、平均的な人間の瞳孔間距離にほぼ等しい。特定の実施形態では、コンピューティングシステムは、複数のカメラのうちの1つまたは複数の1つまたは複数のパラメータを調整してもよい。
ステップ620では、コンピューティングシステムは、ユーザを表示するための平面プロキシを生成する。ステップ630では、コンピューティングシステムは、3次元仮想環境内の平面プロキシの姿勢を決定する。特定の実施形態では、平面プロキシの姿勢は、仮想環境に固定されてもよい(すなわち、仮想環境内の固定された位置および向きに配置されてもよい)。特定の実施形態では、平面プロキシの姿勢は、表示された画像データを見るユーザの位置に対して、または表示された画像データを見るユーザに関連付けられた人工現実デバイス、たとえばヘッドセットまたはコントローラの位置に対して決定されてもよい。特定の実施形態では、コンピューティングシステムは、平面プロキシの固定された(すなわち、アンカされた)姿勢と相対(すなわち、浮いている)姿勢の表示を切り替えることができる。
ステップ640では、コンピューティングシステムは、決定された姿勢を有する平面プロキシと第1の撮像された画像とに基づいて、人工現実デバイスの左目用ディスプレイの左側表示画像をレンダリングする。ステップ650では、コンピューティングシステムは、決定された姿勢を有する平面プロキシと第2の撮像された画像とに基づいて、人工現実デバイスの右目用ディスプレイの右側表示画像をレンダリングする。特定の実施形態では、撮像された画像は、平面プロキシの決定された姿勢に基づいてレンダリングされてもよい。ステップ660では、コンピューティングシステムは、左目用ディスプレイおよび右目用ディスプレイをそれぞれ使用して、レンダリングされた左側表示画像および右側表示画像を表示する。
特定の実施形態は、適切な場合、図6の方法の1つまたは複数のステップを繰り返してもよい。本開示では、図6の方法の特定のステップが特定の順序で発生するものとして説明および図示がなされているが、本開示は、図6の方法の任意の好適なステップが任意の好適な順序で発生することを想定している。さらに、本開示は、図6の方法の特定のステップを含む複数の視点から撮像された立体レンダリング画像データを表示するための例示的な方法を説明し、かつ図示しているが、本開示は、適切な場合、図6の方法のステップのすべてを含むか、一部を含むか、またはいずれも含まない任意の好適なステップを含むレンダリング画像データを表示するための任意の好適な方法を想定している。さらに、本開示では、図6の方法の特定のステップを実行する特定の構成要素、デバイスまたはシステムの説明および図示がなされているが、本開示は、図6の方法の任意の好適なステップを実行する任意の好適な構成要素、デバイスまたはシステムの任意の好適な組合せを想定している。
図7は、ソーシャルネットワーキングシステムと関連付けられた例示的なネットワーク環境700を示している。ネットワーク環境700は、ネットワーク710によって互いに接続されているクライアントシステム730、ソーシャルネットワーキングシステム760、およびサードパーティシステム770を含む。図7は、クライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770およびネットワーク710の特定の配置を示しているが、本開示は、クライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770およびネットワーク710の任意の好適な配置を想定している。限定ではなく、例として、クライアントシステム730、ソーシャルネットワーキングシステム760、およびサードパーティシステム770のうちの2つまたはそれ以上は、ネットワーク710を迂回して互いに直接接続されてもよい。別の例として、クライアントシステム730、ソーシャルネットワーキングシステム760、およびサードパーティシステム770のうちの2つまたはそれ以上は、全体的または部分的に互いが物理的または論理的に同一場所に位置してもよい。また、図7は、特定の数のクライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770、およびネットワーク710を示しているが、本開示は、任意の好適な数のクライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770、およびネットワーク710を想定している。限定ではなく、例として、ネットワーク環境700は、複数のクライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770およびネットワーク710を含んでもよい。
本開示は、任意の好適なネットワーク710を想定している。限定ではなく、例として、ネットワーク710の1つまたは複数の部分は、アドホックネットワーク、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、ワイヤレスLAN(WLAN)、ワイドエリアネットワーク(WAN)、ワイヤレスWAN(WWAN)、メトロポリタンエリアネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの2つ以上の組合せを含むことが可能である。ネットワーク710は、1つまたは複数のネットワーク710を含むことが可能である。
リンク750は、クライアントシステム730、ソーシャルネットワーキングシステム760、およびサードパーティシステム770を、通信ネットワーク710に接続するかまたは互いに接続してもよい。本開示は、任意の好適なリンク750を想定している。特定の実施形態では、1つまたは複数のリンク750は、1つまたは複数の、(たとえば、デジタル加入者回線(DSL)またはデータオーバーケーブルサービスインターフェース仕様(DOCSIS)などの)有線リンク、(たとえば、Wi-Fiまたはワールドワイドインターオペラビリティフォーマイクロウェーブアクセス(WiMAX)などの)無線リンク、または(たとえば、同期光ネットワーク(SONET)または同期デジタルハイアラーキ(SDH)などの)光リンクを含む。特定の実施形態では、1つまたは複数のリンク750は、各々、アドホックネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部分、PSTNの一部分、セルラー技術ベースのネットワーク、衛星通信技術ベースのネットワーク、別のリンク750、または、2つまたはそれ以上のこのようなリンク750の組合せを含む。リンク750は、ネットワーク環境700の全体を通じて必ずしも同じである必要はない。1つまたは複数の第1のリンク750は、1つまたは複数の第2のリンク750とは1つまたは複数の点において異なっていてもよい。
特定の実施形態では、クライアントシステム730は、クライアントシステム730によって実施されるかまたはサポートされる適切な機能を実行することが可能な、ハードウェア、ソフトウェア、または埋込み論理構成要素、または2つまたはそれ以上のこのような構成要素の組合せを含む電子デバイスであってもよい。限定ではなく、例として、クライアントシステム730は、デスクトップコンピュータ、ノートブックコンピュータもしくはラップトップコンピュータ、ネットブック、タブレットコンピュータなどのコンピュータシステム、eブックリーダ、GPSデバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、拡張/仮想現実デバイス、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含むことが可能である。本開示は、任意の好適なクライアントシステム730を想定している。クライアントシステム730は、クライアントシステム730のネットワークユーザがネットワーク710にアクセスすることを可能にすることができる。クライアントシステム730は、クライアントシステム730のユーザが、他のクライアントシステム730で他のユーザと通信することを可能にしてもよい。
特定の実施形態では、クライアントシステム730は、ウェブブラウザ732を含んでもよく、1つまたは複数のアドオン、プラグインまたは他の拡張機能を有してもよい。クライアントシステム730におけるユーザは、ウェブブラウザ732を(サーバ762、またはサードパーティシステム770に関連付けられたサーバなどの)特定のサーバに向けるユニフォームリソースロケータ(URL)または他のアドレスを入力してもよく、ウェブブラウザ732は、ハイパーテキスト転送プロトコル(HTTP)要求を生成し、HTTP要求をサーバに通信してもよい。サーバは、HTTP要求を受け入れ、HTTP要求に応答する1つまたは複数のハイパーテキストマークアップ言語(HTML)ファイルをクライアントシステム730に通信してもよい。クライアントシステム730は、ユーザへの提示のためにサーバからのHTMLファイルに基づいてウェブインターフェース(たとえば、ウェブページ)をレンダリングしてもよい。本開示は、任意の好適なソースファイルを想定している。限定ではなく、例として、ウェブインターフェースは、特定の必要に応じて、HTMLファイル、拡張可能ハイパーテキストマークアップ言語(XHTML)ファイル、または拡張可能マークアップ言語(XML)ファイルからレンダリングされてもよい。このようなインターフェースは、スクリプト、マークアップ言語とスクリプトとの組合せ、などを実行してもよい。本明細書では、ウェブインターフェースへの言及は、適切な場合、(ブラウザがウェブインターフェースをレンダリングするために使用してもよい)1つまたは複数の対応するソースファイルを包含し、その逆もまた同様である。
特定の実施形態では、ソーシャルネットワーキングシステム760は、オンラインソーシャルネットワークをホストすることができるネットワークアドレス指定可能なコンピューティングシステムであってもよい。ソーシャルネットワーキングシステム760は、たとえば、ユーザプロファイルデータ、概念プロファイルデータ、ソーシャルグラフ情報、またはオンラインソーシャルネットワークに関係する他の好適なデータなどの、ソーシャルネットワーキングデータを生成し、記憶し、受信し、送信してもよい。ソーシャルネットワーキングシステム760は、直接的に、またはネットワーク710を介して、ネットワーク環境700の他の構成要素によってアクセスされてもよい。限定ではなく、例として、クライアントシステム730は、ウェブブラウザ732、または、ソーシャルネットワーキングシステム760に関連付けられているネイティブアプリケーション(たとえば、モバイルソーシャルネットワーキングアプリケーション、メッセージングアプリケーション、別の好適なアプリケーション、もしくはそれらの任意の組合せ)を使用して、直接またはネットワーク710を介してソーシャルネットワーキングシステム760にアクセスしてもよい。特定の実施形態では、ソーシャルネットワーキングシステム760は、1つまたは複数のサーバ762を含んでもよい。各サーバ762は、単一のサーバ、あるいは複数のコンピュータまたは複数のデータセンタにわたる分散型サーバであってもよい。サーバ762は、たとえば限定ではないが、ウェブサーバ、ニュースサーバ、メールサーバ、メッセージサーバ、広告サーバ、ファイルサーバ、アプリケーションサーバ、交換サーバ、データベースサーバ、プロキシサーバ、本明細書に記載の機能またはプロセスを実施するのに好適な別のサーバ、あるいはそれらの任意の組合せなど、様々な種類のものであってもよい。特定の実施形態では、各サーバ762は、サーバ762によって実施されるかまたはサポートされる適切な機能を実行するための、ハードウェア、ソフトウェア、または埋込み論理構成要素、または2つまたはそれ以上のこのような構成要素の組合せを含んでもよい。特定の実施形態では、ソーシャルネットワーキングシステム760は、1つまたは複数のデータストア764を含んでもよい。データストア764は、様々な種類の情報を記憶するために使用されてもよい。特定の実施形態では、データストア764に記憶された情報は、固有のデータ構造に従って編成されてもよい。特定の実施形態では、各データストア764は、リレーショナルデータベース、列指向データベース、相関データベース、または他の好適なデータベースであってもよい。本開示は、特定のタイプのデータベースを説明するかまたは示すが、本開示は任意の好適なタイプのデータベースを企図する。特定の実施形態は、クライアントシステム730、ソーシャルネットワーキングシステム760、またはサードパーティシステム770が、データストア764に記憶された情報の管理、取り出し、修正、追加または削除を行うことを可能にするインターフェースを提供してもよい。
特定の実施形態では、ソーシャルネットワーキングシステム760は、1つまたは複数のソーシャルグラフを1つまたは複数のデータストア764に記憶してもよい。特定の実施形態では、ソーシャルグラフは、(各々特定のユーザに対応する)複数のユーザノードまたは(各々特定の概念に対応する)複数の概念ノードを含み得る、複数のノードと、ノードをつなげる複数のエッジとを含み得る。ソーシャルネットワーキングシステム760は、オンラインソーシャルネットワークのユーザに、他のユーザとの通信および対話を行う能力を提供してもよい。特定の実施形態では、ユーザは、ソーシャルネットワーキングシステム760を介してオンラインソーシャルネットワークに参加し、次いで、自分が繋がりたいと望むソーシャルネットワーキングシステム760の複数の他のユーザに繋がり(たとえば、関係)を付加してもよい。本明細書では、「友達」という用語は、ユーザが、ソーシャルネットワーキングシステム760を介して、繋がり、関連付けまたは関係を形成したソーシャルネットワーキングシステム760の任意の他のユーザを指してもよい。
特定の実施形態では、ソーシャルネットワーキングシステム760は、ソーシャルネットワーキングシステム760によってサポートされる様々な種類のアイテムまたはオブジェクトについてアクションをとる能力をユーザに提供してもよい。限定ではなく、例として、アイテムおよびオブジェクトは、ソーシャルネットワーキングシステム760のユーザが属してもよいグループまたはソーシャルネットワーク、ユーザが興味を持つ可能性があるイベントまたはカレンダーエントリ、ユーザが使用してもよいコンピュータベースアプリケーション、ユーザがサービスを介してアイテムの購入または販売を行うことを可能にするトランザクション、ユーザが実施してもよい広告との対話、あるいは他の好適なアイテムまたはオブジェクトを含んでもよい。ユーザは、ソーシャルネットワーキングシステム760において、またはソーシャルネットワーキングシステム760とは別個であり、ネットワーク710を介してソーシャルネットワーキングシステム760に結合された、サードパーティシステム770の外部システムによって、表されることが可能であるものと対話してもよい。
特定の実施形態では、ソーシャルネットワーキングシステム760は、様々なエンティティをリンクすることが可能であってもよい。限定ではなく、例として、ソーシャルネットワーキングシステム760は、ユーザが、互いと対話すること、ならびにサードパーティシステム770または他のエンティティからコンテンツを受信することを可能にしてもよく、あるいは、ユーザがアプリケーションプログラミングインターフェース(API)または他の通信チャネルを通してこれらのエンティティと対話することを可能にしてもよい。
特定の実施形態では、サードパーティシステム770は、1つまたは複数の種類のサーバ、1つまたは複数のデータストア、限定はしないがAPIを含む1つまたは複数のインターフェース、1つまたは複数のウェブサービス、1つまたは複数のコンテンツソース、1つまたは複数のネットワーク、または、たとえばサーバが通信してもよい任意の他の好適な構成要素を含んでもよい。サードパーティシステム770は、ソーシャルネットワーキングシステム760を動作させるエンティティとは異なるエンティティによって動作させられてもよい。しかし、特定の実施形態では、ソーシャルネットワーキングシステム760およびサードパーティシステム770は、互いと連携して動作して、ソーシャルネットワーキングシステム760またはサードパーティシステム770のユーザにソーシャルネットワーキングサービスを提供してもよい。この意味で、ソーシャルネットワーキングシステム760は、サードパーティシステム770などの他のシステムが、インターネットにわたってユーザにソーシャルネットワーキングサービスおよび機能を提供するために使用してもよい、プラットフォームまたはバックボーンを提供してもよい。
特定の実施形態では、サードパーティシステム770は、サードパーティコンテンツオブジェクトプロバイダを含んでもよい。サードパーティコンテンツオブジェクトプロバイダは、クライアントシステム730に通信されてもよい、コンテンツオブジェクトの1つまたは複数のソースを含んでもよい。限定としてではなく一例として、コンテンツオブジェクトは、たとえば、映画の上映時間、映画のレビュー、レストランのレビュー、レストランのメニュー、製品情報およびレビュー、または他の好適な情報など、ユーザにとって興味のある物またはアクティビティに関する情報を含み得る。限定としてではなく別の例として、コンテンツオブジェクトは、クーポン、ディスカウントチケット、ギフト券、または他の好適なインセンティブオブジェクトなど、インセンティブコンテンツオブジェクトを含み得る。
特定の実施形態では、ソーシャルネットワーキングシステム760は、ソーシャルネットワーキングシステム760とのユーザの対話を向上させてもよい、ユーザ生成コンテンツオブジェクトも含む。ユーザ生成コンテンツは、ユーザがソーシャルネットワーキングシステム760に追加するか、アップロードするか、送信するかまたは「投稿」してもよいものを含んでもよい。限定ではなく、例として、ユーザは、クライアントシステム730からソーシャルネットワーキングシステム760への投稿を通信する。投稿は、ステータス更新または他のテキストデータ、ロケーション情報、写真、ビデオ、リンク、音楽あるいは他の同様のデータまたはメディアなど、データを含み得る。コンテンツはまた、ニュースフィードまたはストリームなどの「通信チャネル」を通して、サードパーティによってソーシャルネットワーキングシステム760に追加されてもよい。
特定の実施形態では、ソーシャルネットワーキングシステム760は、様々なサーバ、サブシステム、プログラム、モジュール、ログおよびデータストアを含んでもよい。特定の実施形態では、ソーシャルネットワーキングシステム760は、ウェブサーバ、アクションロガー、API要求サーバ、関連性およびランキングエンジン、コンテンツオブジェクト分類子、通知コントローラ、アクションログ、サードパーティコンテンツオブジェクト露出ログ、推論モジュール、許可/プライバシーサーバ、検索モジュール、広告ターゲッティングモジュール、ユーザインターフェースモジュール、ユーザプロファイルストア、つながりストア、サードパーティコンテンツストア、またはロケーションストアのうちの1つまたは複数を含んでもよい。ソーシャルネットワーキングシステム760は、ネットワークインターフェース、セキュリティ機構、ロードバランサ、フェイルオーバサーバ、管理およびネットワーク運用コンソール、他の好適な構成要素、またはそれらの任意の好適な組合せなど、好適な構成要素も含んでもよい。特定の実施形態では、ソーシャルネットワーキングシステム760は、ユーザプロファイルを記憶するための1つまたは複数のユーザプロファイルストアを含んでもよい。ユーザプロファイルは、たとえば、経歴情報、人口統計学的情報、行動情報、ソーシャル情報、あるいは、職歴、学歴、趣味もしくは選好、興味、親和性、またはロケーションなど、他のタイプの記述的情報を含み得る。興味情報は、1つまたは複数のカテゴリーに関係する興味を含み得る。カテゴリーは一般的であるかまたは固有のものであり得る。限定としてではなく一例として、ユーザが、靴のブランドに関する記事に対して「いいね!」を表明した場合、カテゴリーは、ブランド、あるいは「靴」または「衣類」の一般的なカテゴリーであり得る。つながりストアは、ユーザに関するつながり情報を記憶するために使用され得る。つながり情報は、同様のまたは共通の職歴、グループメンバーシップ、趣味、学歴を有するか、あるいはいかなる形でも関係するか、または共通属性を共有する、ユーザを指示し得る。つながり情報は、(内部と外部の両方の)異なるユーザとコンテンツとの間のユーザ定義されたつながりをも含み得る。ウェブサーバは、ネットワーク710を介してソーシャルネットワーキングシステム760を1つまたは複数のクライアントシステム730もしくは1つまたは複数のサードパーティシステム770にリンクさせるために使用されてもよい。ウェブサーバは、ソーシャルネットワーキングシステム760と1つまたは複数のクライアントシステム730との間でメッセージの受信およびルーティングを行うためのメールサーバまたは他のメッセージング機能を含んでもよい。API要求サーバは、サードパーティシステム770が、1つまたは複数のAPIを呼び出すことによってソーシャルネットワーキングシステム760からの情報にアクセスすることを可能にしてもよい。アクションロガーは、ソーシャルネットワーキングシステム760上の、またはソーシャルネットワーキングシステム760から離れたユーザのアクションに関するウェブサーバからの通信を受信するために使用されてもよい。アクションログと併せて、サードパーティコンテンツオブジェクトへのユーザ露出についてのサードパーティコンテンツオブジェクトログが維持され得る。通知コントローラは、コンテンツオブジェクトに関する情報をクライアントシステム730に提供してもよい。情報は、通知としてクライアントシステム730へ押し出されることが可能であり、または情報は、クライアントシステム730から受け取られた要求に応答してクライアントシステム730から引き出されることが可能である。許可サーバは、ソーシャルネットワーキングシステム760のユーザの1つまたは複数のプライバシー設定を施行するために使用されてもよい。ユーザのプライバシー設定は、ユーザに関連付けられた特定の情報がどのように共有され得るかを決定する。許可サーバは、ユーザが、たとえば適切なプライバシー設定を設定することなどによって、自分のアクションがソーシャルネットワーキングシステム760によって記録されること、またはその他のシステム(たとえば、サードパーティシステム770)と共有されることについてオプトインまたはオプトアウトを行うことを可能にしてもよい。サードパーティコンテンツオブジェクトストアは、サードパーティシステム770などのサードパーティから受信されたコンテンツオブジェクトを記憶するために使用されてもよい。ロケーションストアは、ユーザに関連付けられたクライアントシステム730から受信されたロケーション情報を記憶するために使用されてもよい。広告価格設定モジュールは、ソーシャル情報、現在時間、ロケーション情報、または他の好適な情報を組み合わせて、関連する広告を通知の形態でユーザに提供し得る。
図8は、例示的なコンピュータシステム800を示している。特定の実施形態では、1つまたは複数のコンピュータシステム800は、本明細書に記載または図示される1つまたは複数の方法の1つまたは複数のステップを実施する。特定の実施形態では、1つまたは複数のコンピュータシステム800は、本明細書に記載または図示される機能を提供する。特定の実施形態では、1つまたは複数のコンピュータシステム800上で稼働しているソフトウェアは、本明細書に記載または図示される1つまたは複数の方法の1つまたは複数のステップを実施するか、あるいは本明細書で説明または図示される機能を提供する。特定の実施形態は、1つまたは複数のコンピュータシステム800の1つまたは複数の部分を含む。本明細書では、コンピュータシステムへの言及は、適切な場合、コンピューティングデバイスを包含し得、その逆も同様である。その上、コンピュータシステムへの言及は、適切な場合、1つまたは複数のコンピュータシステムを包含し得る。
本開示は、任意の好適な数のコンピュータシステム800を想定している。本開示は、任意の好適な物理的形態をとるコンピュータシステム800を想定している。限定としてではなく例として、コンピュータシステム800は、組込み型コンピュータシステム、システムオンチップ(SOC)、(たとえば、コンピュータオンモジュール(COM)またはシステムオンモジュール(SOM)などの)シングルボードコンピュータシステム(SBC)、デスクトップコンピュータシステム、ラップトップまたはノートブックコンピュータシステム、対話型キオスク、メインフレーム、コンピュータシステムのメッシュ、携帯電話、携帯情報端末(PDA)、サーバ、タブレットコンピュータシステム、拡張/仮想現実デバイス、あるいはこれらのうちの2つまたはそれ以上の組合せであってもよい。適切な場合、コンピュータシステム800は、1つまたは複数のコンピュータシステム800を含むか、単一または分散型であるか、複数のロケーションにわたるか、複数のマシンにわたるか、複数のデータセンタにわたるか、あるいは1つまたは複数のネットワーク内の1つまたは複数のクラウド構成要素を含んでもよいクラウド内に常駐してもよい。適切な場合、1つまたは複数のコンピュータシステム800は、実質的な空間的もしくは時間的制限なしに、本明細書に記載または図示される1つまたは複数の方法の1つまたは複数のステップを実施してもよい。限定ではなく、例として、1つまたは複数のコンピュータシステム800は、リアルタイムでまたはバッチモードで、本明細書に記載または図示される1つまたは複数の方法の1つもしくは複数のステップを実施してもよい。1つまたは複数のコンピュータシステム800は、適切な場合、異なる時間においてまたは異なるロケーションにおいて、本明細書に記載または図示される1つまたは複数の方法の1つまたは複数のステップを実施してもよい。
特定の実施形態では、コンピュータシステム800は、プロセッサ802と、メモリ804と、記憶装置806と、入出力(I/O)インターフェース808と、通信インターフェース810と、バス812とを含む。本開示は、特定の配置において特定の数の特定の構成要素を有する特定のコンピュータシステムを説明し、示すが、本開示は、任意の好適な配置において任意の好適な数の任意の好適な構成要素を有する任意の好適なコンピュータシステムを企図する。
特定の実施形態では、プロセッサ802は、コンピュータプログラムを作成する命令など、命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ802は、内部レジスタ、内部キャッシュ、メモリ804または記憶装置806から命令を取り出し(またはフェッチし)、それらの命令を復号して実行し、次いで、1つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ804または記憶装置806に書き込んでもよい。特定の実施形態では、プロセッサ802は、データ、命令またはアドレスのための1つまたは複数の内部キャッシュを含んでもよい。本開示は、適切な場合、任意の好適な数の任意の好適な内部キャッシュを含むプロセッサ802を想定している。限定ではなく、例として、プロセッサ802は、1つまたは複数の命令キャッシュと、1つまたは複数のデータキャッシュと、1つまたは複数のトランスレーションルックアサイドバッファ(TLB)とを含んでもよい。命令キャッシュ内の命令は、メモリ804または記憶装置806内の命令のコピーであってもよく、命令キャッシュは、プロセッサ802によるそれらの命令の取出しを高速化してもよい。データキャッシュ内のデータは、プロセッサ802で実行される命令が動作する対象のメモリ804または記憶装置806内のデータのコピー、プロセッサ802で実行される後続の命令によるアクセスのための、またはメモリ804もしくは記憶装置806に書き込むための、プロセッサ802で実行された以前の命令の結果、あるいは他の好適なデータであってもよい。データキャッシュは、プロセッサ802による読取りまたは書込みの動作を高速化してもよい。TLBは、プロセッサ802のための仮想アドレストランスレーションを高速化してもよい。特定の実施形態では、プロセッサ802は、データ、命令またはアドレスのための1つまたは複数の内部レジスタを含んでもよい。本開示は、適切な場合、任意の好適な数の任意の好適な内部レジスタを含むプロセッサ802を想定している。適切な場合、プロセッサ802は、1つまたは複数の算術論理ユニット(ALU)を含むか、マルチコアプロセッサであるか、または1つまたは複数のプロセッサ802を含んでもよい。本開示は、特定のプロセッサを説明し、示すが、本開示は任意の好適なプロセッサを企図する。
特定の実施形態では、メモリ804は、プロセッサ802が実行するための命令、またはプロセッサ802が動作する対象のデータを記憶するためのメインメモリを含む。限定ではなく、例として、コンピュータシステム800は、記憶装置806または(たとえば、別のコンピュータシステム800などの)別のソースからメモリ804に命令をロードしてもよい。プロセッサ802は、次いで、命令をメモリ804から内部レジスタもしくは内部キャッシュにロードしてもよい。命令を実行するために、プロセッサ802は、命令を内部レジスタもしくは内部キャッシュから取り出し、それらの命令を復号してもよい。命令の実行中またはその後に、プロセッサ802は、(中間結果または最終結果であってもよい)1つまたは複数の結果を内部レジスタもしくは内部キャッシュに書き込んでもよい。プロセッサ802は、次いで、それらの結果のうちの1つまたは複数をメモリ804に書き込んでもよい。特定の実施形態では、プロセッサ802は、1つまたは複数の内部レジスタもしくは内部キャッシュ内の、あるいは(記憶装置806または他の場所とは対照的な)メモリ804内の命令のみを実行し、1つまたは複数の内部レジスタもしくは内部キャッシュ内の、あるいは(記憶装置806または他の場所とは対照的な)メモリ804内のデータのみに対して動作する。(アドレスバスおよびデータバスを各々が含んでもよい)1つまたは複数のメモリバスは、プロセッサ802をメモリ804に結合してもよい。バス812は、以下で説明されるように、1つまたは複数のメモリバスを含んでもよい。特定の実施形態では、1つまたは複数のメモリ管理ユニット(MMU)は、プロセッサ802とメモリ804との間に常駐し、プロセッサ802によって要求されるメモリ804へのアクセスを容易にする。特定の実施形態では、メモリ804は、ランダムアクセスメモリ(RAM)を含む。このRAMは、適切な場合、揮発性メモリであり得る。適切な場合、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であり得る。その上、適切な場合、このRAMは、シングルポートまたはマルチポートRAMであり得る。本開示は、任意の好適なRAMを想定している。メモリ804は、適切な場合には、1つまたは複数のメモリ804を含んでもよい。本開示は、特定のメモリを説明し、示すが、本開示は任意の好適なメモリを企図する。
特定の実施形態では、記憶装置806は、データまたは命令のための大容量記憶装置を含む。限定ではなく、例として、記憶装置806は、ハードディスクドライブ(HDD)、フロッピーディスクドライブ、フラッシュメモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサルシリアルバス(USB)ドライブ、あるいはこれらのうちの2つまたはそれ以上の組合せを含んでもよい。記憶装置806は、適切な場合、取外し可能な媒体または取外し不可能な(または固定された)媒体を含んでもよい。記憶装置806は、適切な場合、コンピュータシステム800の内部または外部にあってもよい。特定の実施形態では、記憶装置806は、不揮発性ソリッドステートメモリである。特定の実施形態では、記憶装置806は、読取り専用メモリ(ROM)を含む。適切な場合、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書き換え可能ROM(EAROM)、またはフラッシュメモリ、あるいはこれらのうちの2つまたはそれ以上の組合せであり得る。本開示は、任意の好適な物理的形態をとる大容量記憶装置806を想定している。記憶装置806は、適切な場合、プロセッサ802と記憶装置806との間の通信を容易にする1つまたは複数の記憶装置制御ユニットを含んでもよい。適切な場合、記憶装置806は、1つまたは複数の記憶装置806を含んでもよい。本開示は、特定のストレージを説明し、示すが、本開示は任意の好適なストレージを企図する。
特定の実施形態では、I/Oインターフェース808は、コンピュータシステム800と1つまたは複数のI/Oデバイスとの間の通信のための1つまたは複数のインターフェースを提供する、ハードウェア、ソフトウェアまたはその両方を含む。コンピュータシステム800は、適切な場合、これらのI/Oデバイスのうちの1つまたは複数を含んでもよい。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータシステム800との間の通信を可能にしてもよい。限定としてではなく一例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカー、スチールカメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、別の好適なI/Oデバイス、またはこれらのうちの2つまたはそれ以上の組合せを含み得る。I/Oデバイスは1つまたは複数のセンサーを含み得る。本開示は、任意の好適なI/Oデバイスと、それらのI/Oデバイスのための任意の好適なI/Oインターフェース808とを想定している。適切な場合、I/Oインターフェース808は、プロセッサ802がこれらのI/Oデバイスのうちの1つまたは複数を駆動することを可能にする1つまたは複数のデバイスまたはソフトウェアドライバを含んでもよい。I/Oインターフェース808は、適切な場合、1つまたは複数のI/Oインターフェース808を含んでもよい。本開示は、特定のI/Oインターフェースを説明し、示すが、本開示は任意の好適なI/Oインターフェースを企図する。
特定の実施形態では、通信インターフェース810は、コンピュータシステム800と、1つまたは複数の他のコンピュータシステム800もしくは1つまたは複数のネットワークとの間の(たとえば、パケットベース通信などの)通信のための1つまたは複数のインターフェースを提供する、ハードウェア、ソフトウェアまたはその両方を含む。限定ではなく、例として、通信インターフェース810は、イーサネットまたは他の有線ベースのネットワークと通信するためのネットワークインターフェースコントローラ(NIC)もしくはネットワークアダプタ、または、WI-FIネットワークなどの無線ネットワークと通信するための無線NIC(WNIC)もしくは無線アダプタを含んでよい。本開示は、任意の好適なネットワークと、そのネットワークのための任意の好適な通信インターフェース810とを想定している。限定ではなく、例として、コンピュータシステム800は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、またはインターネットの1つまたは複数の部分、あるいはこれらのうちの2つまたはそれ以上の組合せと通信してもよい。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、ワイヤードまたはワイヤレスであり得る。一例として、コンピュータシステム800は、(たとえば、BLUETOOTH WPANなどの)ワイヤレスPAN(WPAN)、WI-FIネットワーク、WI-MAXネットワーク、(たとえば、モバイル通信用グローバルシステム(GSM)ネットワークなどの)セルラー電話ネットワーク、または他の好適なワイヤレスネットワーク、あるいはこれらのうちの2つまたはそれ以上の組合せと通信してもよい。コンピュータシステム800は、適切な場合、これらのネットワークのいずれかのための任意の好適な通信インターフェース810を含んでもよい。通信インターフェース810は、適切な場合、1つまたは複数の通信インターフェース810を含んでもよい。本開示は、特定の通信インターフェースを説明し、示すが、本開示は任意の好適な通信インターフェースを企図する。
特定の実施形態では、バス812は、コンピュータシステム800の構成要素を互いに結合する、ハードウェア、ソフトウェアまたはその両方を含む。限定ではなく、例として、バス812は、アクセラレーテッドグラフィックスポート(AGP)または他のグラフィックスバス、拡張業界標準アーキテクチャ(EISA)バス、フロントサイドバス(FSB)、HYPERTRANSPORT(HT)相互接続、業界標準アーキテクチャ(ISA)バス、INFINIBAND相互接続、ローピンカウント(LPC)バス、メモリバス、マイクロチャネルアーキテクチャ(MCA)バス、周辺構成要素相互接続(PCI)バス、PCI-Express(PCIe)バス、シリアルアドバンストテクノロジーアタッチメント(SATA)バス、ビデオエレクトロニクス規格協会ローカル(VLB)バス、または別の好適なバス、あるいはこれらのうちの2つまたはそれ以上の組合せを含んでもよい。バス812は、適切な場合、1つまたは複数のバス812を含んでもよい。本開示は、特定のバスを説明し、示すが、本開示は任意の好適なバスまたは相互接続を企図する。
本明細書では、1つまたは複数のコンピュータ可読非一時的記憶媒体は、適切な場合、(たとえば、フィールドプログラマブルゲートアレイ(FPGA)または特定用途向けIC(ASIC)などの)1つまたは複数の半導体ベースまたは他の集積回路(IC)、ハードディスクドライブ(HDD)、ハイブリッドハードドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピーディスケット、フロッピーディスクドライブ(FDD)、磁気テープ、ソリッドステートドライブ(SSD)、RAMドライブ、セキュアデジタルカードまたはドライブ、任意の他の好適なコンピュータ可読非一時的記憶媒体、あるいはこれらのうちの2つまたはそれ以上の任意の好適な組合せを含み得る。コンピュータ可読非一時的記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性との組合せであり得る。
本明細書では、「または」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、包括的であり、排他的ではない。したがって、本明細書では、「AまたはB」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、「A、B、またはその両方」を意味する。その上、「および」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、共同と個別の両方である。したがって、本明細書では、「AおよびB」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、「共同でまたは個別に、AおよびB」を意味する。
本開示の範囲は、当業者が理解するであろう、本明細書で説明または示される例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書で説明または示される例示的な実施形態に限定されない。その上、本開示は、本明細書のそれぞれの実施形態を、特定の構成要素、要素、特徴、機能、動作、またはステップを含むものとして説明し、示すが、これらの実施形態のいずれも、当業者が理解するであろう、本明細書のどこかに説明または示される構成要素、要素、特徴、機能、動作、またはステップのうちのいずれかの任意の組合せまたは置換を含み得る。さらに、特定の機能を実施するように適応されるか、配置されるか、実施することが可能であるか、実施するように構成されるか、実施することが可能にされるか、実施するように動作可能であるか、または実施するように動作する、装置またはシステムあるいは装置またはシステムの構成要素に対する添付の特許請求の範囲における参照は、その装置、システム、または構成要素が、そのように適応されるか、配置されるか、可能であるか、構成されるか、可能にされるか、動作可能であるか、または動作する限り、その装置、システム、構成要素またはその特定の機能が、アクティブにされるか、オンにされるか、またはロック解除されるか否かにかかわらず、その装置、システム、構成要素を包含する。さらに、本開示は、特定の実施形態を、特定の利点を提供するものとして説明するかまたは示すが、特定の実施形態は、これらの利点のいずれをも提供しないか、いくつかを提供するか、またはすべてを提供し得る。
Claims (15)
- 人工現実デバイスに関連付けられた第1のコンピューティングシステムによって、
ネットワークを介して、第2のコンピューティングシステムのユーザのビデオデータを受信することであって、前記ビデオデータが、前記第2のコンピューティングシステムの前記ユーザの第1の撮像された画像および前記ユーザの第2の撮像された画像を含み、前記第1の撮像された画像および前記第2の撮像された画像が、それぞれ前記第2のコンピューティングシステムの第1のカメラおよび第2のカメラによって同時に撮像される、受信することと、
前記第2のコンピューティングシステムの前記ユーザを表示するための平面プロキシを生成することと、
3次元仮想環境内で前記平面プロキシの姿勢を決定することと、
決定された前記姿勢を有する前記平面プロキシおよび前記第1の撮像された画像に基づいて、前記人工現実デバイスの左目用ディスプレイの左側表示画像をレンダリングすることと、
決定された前記姿勢を有する前記平面プロキシおよび前記第2の撮像された画像に基づいて、前記人工現実デバイスの右目用ディスプレイの右側表示画像をレンダリングすることと、
レンダリングされた前記左側表示画像および前記右側表示画像をそれぞれ前記左目用ディスプレイおよび前記右目用ディスプレイを使用して表示することと
を含む、方法。 - 前記平面プロキシが、前記人工現実デバイスの姿勢に対して配置され、および/または好ましくは、前記平面プロキシが、前記3次元仮想環境内の固定された位置および向きに配置される、請求項1に記載の方法。
- 前記第2のコンピューティングシステムから設定データを受信することであって、前記第2のコンピューティングシステムからの前記設定データが、前記第2のコンピューティングシステムの前記第1のカメラおよび前記第2のカメラの1つまたは複数の特性を含む、受信することと、
第3のコンピューティングシステムから設定データを受信することであって、前記第3のコンピューティングシステムからの前記設定データが、前記第3のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、受信することと、
前記第2のコンピューティングシステムおよび前記第3のコンピューティングシステムからの前記設定データに基づいて、前記3次元環境内の前記平面プロキシの前記姿勢を調整することと
をさらに含む、請求項1または2に記載の方法。 - 前記第1のカメラおよび前記第2のカメラが、縦座標平面において互いに人間の瞳孔間距離未満の距離に位置し、好ましくは、前記縦座標平面における前記第1のカメラまたは前記第2のカメラの位置を調整する前記第1のコンピューティングシステムまたは前記第2のコンピューティングシステムをさらに備える、請求項1、2または3に記載の方法。
- 前記ユーザを含む前記第1の撮像された画像の一部分を選択することと、
前記ユーザを含む前記第2の撮像された画像の一部分を選択することと
をさらに含み、
前記左側表示画像が、前記第1の撮像された画像の選択された前記一部分に基づいてレンダリングされ、前記右側表示画像が、前記第2の撮像された画像の選択された前記一部分に基づいてレンダリングされる、請求項1から4のいずれか一項に記載の方法。 - 前記第1の画像内の1つまたは複数の画素の赤/緑/青(RGB)色値を決定することと、
前記第2の画像内の1つまたは複数の対応する画素の赤/緑/青(RGB)色値を決定することと、
前記第1の画像内の前記1つまたは複数の画素の前記RGB色値を、前記第2の画像内の前記1つまたは複数の対応する画素の前記RGB色値と一致するように調整することと
をさらに含む、請求項1から5のいずれか一項に記載の方法。 - 前記平面プロキシに対する前記人工現実の視野角を決定することと、
前記視野角が所定の最大閾値を超えていると決定することと、
前記人工現実デバイスの前記視野角が前記所定の最大閾値を超えているという決定に基づいて、前記左目用ディスプレイ上の前記左側表示画像および前記右目用ディスプレイ上の前記右側表示画像の表示を終了することと
をさらに含む、請求項1から6のいずれか一項に記載の方法。 - ソフトウェアを具現化する1つまたは複数のコンピュータ可読非一時的記憶媒体であって、前記ソフトウェアは、人工現実デバイスに関連付けられた第1のコンピューティングシステムによって実行された場合に、
ネットワークを介して、第2のコンピューティングシステムのユーザのビデオデータを受信することであって、前記ビデオデータが、前記ユーザの第1の撮像された画像および前記ユーザの第2の撮像された画像を含み、前記第1の撮像された画像および前記第2の撮像された画像が、それぞれ前記第2のコンピューティングシステムの第1のカメラおよび第2のカメラによって同時に撮像される、受信することと、
前記ユーザを表示するための平面プロキシを生成することと、
3次元仮想環境内で前記平面プロキシの姿勢を決定することと、
決定された前記姿勢を有する前記平面プロキシおよび前記第1の撮像された画像に基づいて、前記人工現実デバイスの左目用ディスプレイの左側表示画像をレンダリングすることと、
決定された前記姿勢を有する前記平面プロキシおよび前記第2の撮像された画像に基づいて、前記人工現実デバイスの右目用ディスプレイの右側表示画像をレンダリングすることと、
レンダリングされた前記左側表示画像および前記右側表示画像をそれぞれ前記左目用ディスプレイおよび前記右目用ディスプレイを使用して表示することと
を行うように動作可能である、コンピュータ可読非一時的記憶媒体。 - 前記平面プロキシが、前記人工現実デバイスの姿勢に対して配置され、および/または好ましくは、前記平面プロキシが、前記3次元仮想環境内の固定された位置および向きに配置される、請求項8に記載のコンピュータ可読非一時的記憶媒体。
- 前記ソフトウェアが、実行された場合に、
前記第2のコンピューティングシステムから設定データを受信することであって、前記第2のコンピューティングシステムからの前記設定データが、前記第2のコンピューティングシステムの第前記1のカメラおよび前記第2のカメラの1つまたは複数の特性を含む、受信することと、
第3のコンピューティングシステムから設定データを受信することであって、前記第3のコンピューティングシステムからの前記設定データが、前記第3のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、受信することと、
前記第2のコンピューティングシステムおよび前記第3のコンピューティングシステムからの前記設定データに基づいて、前記3次元環境内の前記平面プロキシの前記姿勢を調整することと
を行うようにさらに動作可能である、請求項8または9に記載のコンピュータ可読非一時的記憶媒体。 - 前記第1のカメラおよび前記第2のカメラが、縦座標平面において互いに人間の瞳孔間距離未満の距離に位置し、好ましくは、前記ソフトウェアが、前記縦座標平面における前記第1のカメラまたは前記第2のカメラの位置を調整する前記第1のコンピューティングシステムまたは前記第2のコンピューティングシステムによって実行される場合にさらに動作可能である、請求項8、9または10に記載のコンピュータ可読非一時的記憶媒体。
- 人工現実デバイスに関連付けられた第1のコンピューティングシステムであって、
1つまたは複数のプロセッサと、
1つまたは複数のコンピュータ可読非一時的記憶媒体と、
を備え、前記1つまたは複数のコンピュータ可読非一時的記憶媒体は、1つまたは複数の前記プロセッサに接続され、かつ命令を含み、前記命令は、1つまたは複数の前記プロセッサによって実行された場合に、前記システムに、
ネットワークを介して、第2のコンピューティングシステムのユーザのビデオデータを受信することであって、前記ビデオデータが、前記ユーザの第1の撮像された画像および前記ユーザの第2の撮像された画像を含み、前記第1の撮像された画像および前記第2の撮像された画像が、それぞれ前記第2のコンピューティングシステムの第1のカメラおよび第2のカメラによって同時に撮像される、受信することと、
前記ユーザを表示するための平面プロキシを生成することと、
3次元仮想環境内で前記平面プロキシの姿勢を決定することと、
決定された前記姿勢を有する前記平面プロキシおよび前記第1の撮像された画像に基づいて、前記人工現実デバイスの左目用ディスプレイの左側表示画像をレンダリングすることと、
決定された前記姿勢を有する前記平面プロキシおよび前記第2の撮像された画像に基づいて、前記人工現実デバイスの右目用ディスプレイの右側表示画像をレンダリングすることと、
レンダリングされた前記左側表示画像および前記右側表示画像をそれぞれ前記左目用ディスプレイおよび前記右目用ディスプレイを使用して表示することと
を行わせるように動作可能である、第1のコンピューティングシステム。 - 前記平面プロキシが、前記人工現実デバイスの姿勢に対して配置され、および/または好ましくは、前記平面プロキシが、前記3次元仮想環境内の固定された位置および向きに配置される、請求項12に記載のシステム。
- 前記プロセッサが、前記命令を実行した場合に、
前記第2のコンピューティングシステムから設定データを受信することであって、前記第2のコンピューティングシステムからの前記設定データが、前記第2のコンピューティングシステムの第前記1のカメラおよび前記第2のカメラの1つまたは複数の特性を含む、受信することと、
第3のコンピューティングシステムから設定データを受信することであって、前記第3のコンピューティングシステムからの前記設定データが、前記第3のコンピューティングシステムの第1のカメラおよび第2のカメラの1つまたは複数の特性を含む、受信することと、
前記第2のコンピューティングシステムおよび前記第3のコンピューティングシステムからの前記設定データに基づいて、前記3次元環境内の前記平面プロキシの前記姿勢を調整することと
を行うようにさらに動作可能である、請求項12または13に記載のシステム。 - 前記第1のカメラおよび前記第2のカメラが、縦座標平面において互いに人間の瞳孔間距離未満の距離に位置する、請求項12、13または14に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/093,228 | 2020-11-09 | ||
US17/093,228 US11538214B2 (en) | 2020-11-09 | 2020-11-09 | Systems and methods for displaying stereoscopic rendered image data captured from multiple perspectives |
PCT/US2021/055693 WO2022098509A1 (en) | 2020-11-09 | 2021-10-19 | 3d video conference systems and methods for displaying stereoscopic rendered image data captured from multiple perspectives |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023549657A true JP2023549657A (ja) | 2023-11-29 |
Family
ID=78650063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023524549A Pending JP2023549657A (ja) | 2020-11-09 | 2021-10-19 | 複数の視点から撮像された立体レンダリング画像データを表示するための3dビデオ会議システムおよび方法 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11538214B2 (ja) |
EP (1) | EP4241444A1 (ja) |
JP (1) | JP2023549657A (ja) |
KR (1) | KR20230104662A (ja) |
CN (1) | CN116530078A (ja) |
WO (1) | WO2022098509A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107924690B (zh) * | 2015-09-02 | 2021-06-25 | 交互数字Ce专利控股公司 | 用于促进扩展场景中的导航的方法、装置和系统 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120182403A1 (en) * | 2004-09-30 | 2012-07-19 | Eric Belk Lange | Stereoscopic imaging |
US8300086B2 (en) * | 2007-12-20 | 2012-10-30 | Nokia Corporation | Image processing for supporting a stereoscopic presentation |
CN104409032B (zh) * | 2008-11-26 | 2017-05-10 | 日本电气株式会社 | 显示设备、终端设备和显示方法 |
US20120113235A1 (en) * | 2010-11-08 | 2012-05-10 | Sony Corporation | 3d glasses, systems, and methods for optimized viewing of 3d video content |
JP2012217591A (ja) * | 2011-04-07 | 2012-11-12 | Toshiba Corp | 画像処理システム、装置、方法及びプログラム |
US9626798B2 (en) * | 2011-12-05 | 2017-04-18 | At&T Intellectual Property I, L.P. | System and method to digitally replace objects in images or video |
US20130321564A1 (en) * | 2012-05-31 | 2013-12-05 | Microsoft Corporation | Perspective-correct communication window with motion parallax |
US10719967B2 (en) * | 2012-08-01 | 2020-07-21 | Dreamworks Animation L.L.C. | Techniques for placing masking window objects in a computer-generated scene for stereoscopic computer-animation |
US8787664B2 (en) * | 2012-09-24 | 2014-07-22 | Adobe Systems Incorporated | Automatically matching colors in stereoscopic image pairs |
US8994780B2 (en) * | 2012-10-04 | 2015-03-31 | Mcci Corporation | Video conferencing enhanced with 3-D perspective control |
US9094576B1 (en) * | 2013-03-12 | 2015-07-28 | Amazon Technologies, Inc. | Rendered audiovisual communication |
US10175483B2 (en) * | 2013-06-18 | 2019-01-08 | Microsoft Technology Licensing, Llc | Hybrid world/body locked HUD on an HMD |
US10579207B2 (en) | 2014-05-14 | 2020-03-03 | Purdue Research Foundation | Manipulating virtual environment using non-instrumented physical object |
EP3219098B1 (en) | 2014-11-14 | 2021-10-06 | PCMS Holdings, Inc. | System and method for 3d telepresence |
US10154239B2 (en) * | 2014-12-30 | 2018-12-11 | Onpoint Medical, Inc. | Image-guided surgery with surface reconstruction and augmented reality visualization |
US11164670B2 (en) * | 2015-03-18 | 2021-11-02 | Canfield Scientific, Incorporated | Methods and apparatus for identifying skin features of interest |
US9240069B1 (en) * | 2015-06-30 | 2016-01-19 | Ariadne's Thread (Usa), Inc. | Low-latency virtual reality display system |
US9785741B2 (en) * | 2015-12-30 | 2017-10-10 | International Business Machines Corporation | Immersive virtual telepresence in a smart environment |
CN105808015B (zh) * | 2016-05-27 | 2018-10-12 | 京东方科技集团股份有限公司 | 防窥用户交互装置及方法 |
US10762708B2 (en) * | 2016-06-23 | 2020-09-01 | Intel Corporation | Presentation of scenes for binocular rivalry perception |
EP3504873A1 (en) * | 2016-08-29 | 2019-07-03 | Koninklijke KPN N.V. | Communicating in a virtual reality environment |
US10269177B2 (en) * | 2016-10-06 | 2019-04-23 | Google Llc | Headset removal in virtual, augmented, and mixed reality using an eye gaze database |
US10699461B2 (en) * | 2016-12-20 | 2020-06-30 | Sony Interactive Entertainment LLC | Telepresence of multiple users in interactive virtual space |
US20210136342A1 (en) * | 2016-12-21 | 2021-05-06 | Interaptix Inc. | Telepresence system and method |
DE102017203721A1 (de) * | 2017-03-07 | 2018-09-13 | Bitmanagement Software GmbH | Vorrichtung und Verfahren zur Darstellung eines Raumbilds von einem Objekt in einer virtuellen Umgebung |
WO2018193687A1 (ja) * | 2017-04-18 | 2018-10-25 | ソニー株式会社 | 情報処理装置、情報処理方法、および記録媒体 |
US10523912B2 (en) * | 2018-02-01 | 2019-12-31 | Microsoft Technology Licensing, Llc | Displaying modified stereo visual content |
US10582181B2 (en) * | 2018-03-27 | 2020-03-03 | Honeywell International Inc. | Panoramic vision system with parallax mitigation |
US11074717B2 (en) * | 2018-05-17 | 2021-07-27 | Nvidia Corporation | Detecting and estimating the pose of an object using a neural network model |
-
2020
- 2020-11-09 US US17/093,228 patent/US11538214B2/en active Active
-
2021
- 2021-10-19 JP JP2023524549A patent/JP2023549657A/ja active Pending
- 2021-10-19 KR KR1020237018614A patent/KR20230104662A/ko unknown
- 2021-10-19 EP EP21810185.5A patent/EP4241444A1/en not_active Withdrawn
- 2021-10-19 CN CN202180075744.8A patent/CN116530078A/zh active Pending
- 2021-10-19 WO PCT/US2021/055693 patent/WO2022098509A1/en active Application Filing
-
2022
- 2022-12-22 US US18/145,603 patent/US11887249B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US11538214B2 (en) | 2022-12-27 |
WO2022098509A1 (en) | 2022-05-12 |
KR20230104662A (ko) | 2023-07-10 |
US11887249B2 (en) | 2024-01-30 |
US20220148254A1 (en) | 2022-05-12 |
EP4241444A1 (en) | 2023-09-13 |
CN116530078A (zh) | 2023-08-01 |
US20230125961A1 (en) | 2023-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10691202B2 (en) | Virtual reality system including social graph | |
US10666921B2 (en) | Generating content for a virtual reality system | |
US10701426B1 (en) | Virtual reality system including social graph | |
US11113891B2 (en) | Systems, methods, and media for displaying real-time visualization of physical environment in artificial reality | |
JP2023551727A (ja) | 物理キーボード追跡 | |
TW202249484A (zh) | 在虛擬實境中動態混合實境內容 | |
US11887249B2 (en) | Systems and methods for displaying stereoscopic rendered image data captured from multiple perspectives | |
US11481960B2 (en) | Systems and methods for generating stabilized images of a real environment in artificial reality | |
CN115661408A (zh) | 在人工现实环境中生成和修改手的表示 | |
KR20230137936A (ko) | 교차 애플리케이션 가상 현실 설정에서의 적응 가능한개인 사용자 인터페이스 | |
JP2023547838A (ja) | 待ち時間復元クラウドレンダリング | |
CN116194792A (zh) | 连接评估系统 | |
US20240037886A1 (en) | Environment sharing | |
US20240078745A1 (en) | Generation of a virtual viewpoint image of a person from a single captured image | |
US12033270B2 (en) | Systems and methods for generating stabilized images of a real environment in artificial reality | |
US11818474B1 (en) | Sparse RGB cameras for image capture | |
US20240119672A1 (en) | Systems, methods, and media for generating visualization of physical environment in artificial reality | |
US20230259194A1 (en) | Spatial Anchor Sharing for Multiple Virtual Reality Systems in Shared Real-World Environments | |
US20230289993A1 (en) | 3D Representation of Physical Environment Objects | |
WO2024081260A1 (en) | Systems, methods, and media for generating visualization of physical environment in artificial reality | |
CN115512087A (zh) | 使用在预定距离处的遮挡表面生成和修改人工现实环境 | |
CN114339120A (zh) | 沉浸式视频会议系统 |