"現実3次元3D画像についてのゼロ視差平面までの距離を決定することと、前記ゼロ視差平面までの前記距離に少なくとも部分的に基づいて射影行列に関する1つまたは複数のパラメータを決定することと、前記射影行列に少なくとも部分的に基づいて仮想3Dオブジェクトをレンダリングすることと、混合リアリティ3D画像を生成するために前記現実画像と前記仮想オブジェクトとを組み合わせることとを備える、方法。前記ゼロ視差平面までの前記距離に少なくとも部分的に基づいて両眼間隔値を決定することと、前記両眼間隔値に少なくとも部分的に基づいて前記仮想3Dオブジェクトをレンダリングすることとをさらに備える、請求項1に記載の方法。前記現実3D画像がステレオカメラによってキャプチャされる、請求項1に記載の方法。前記方法が、前記ステレオカメラのアスペクト比を決定することと、前記射影行列に関する1つまたは複数のパラメータのうちの少なくとも1つを決定するために前記アスペクト比を使用することとをさらに備える、請求項3に記載の方法。前記パラメータが、左境界パラメータ、右境界パラメータ、上境界パラメータ、下境界パラメータ、ニアクリッピング平面パラメータ、およびファークリッピング平面パラメータを備える、請求項1に記載の方法。前記現実3D画像についてのニア平面視差値を決定することと、前記ニア平面視差値を用いて前記仮想3Dオブジェクトをレンダリングすることとをさらに備える、請求項1に記載の方法。前記現実3D画像についてのファー平面視差値を決定することと、前記ファー平面視差値を用いて前記仮想3Dオブジェクトをレンダリングすることとをさらに備える、請求項1に記載の方法。前記混合リアリティ3D画像のビューポートをシフトすることをさらに備える、請求項1に記載の方法。3次元3Dビデオデータを処理するためのシステムであって、前記システムが、現実3D画像ソースであって、キャプチャされた3D画像についてのゼロ視差平面までの距離を決定するように構成された現実3D画像ソースと、仮想画像ソースであって、前記ゼロ視差平面までの前記距離に少なくとも基づいて射影行列に関する1つまたは複数のパラメータを決定することと、前記射影行列に少なくとも部分的に基づいて仮想3Dオブジェクトをレンダリングすることと、を行うように構成された仮想画像ソースと、混合リアリティ3D画像を生成するために前記現実画像と前記仮想オブジェクトとを組み合わせるように構成された混合シーン合成ユニットとを備える、システム。前記仮想画像ソースが、さらに、前記ゼロ視差平面までの前記距離に少なくとも基づいて前記両眼間隔値を決定し、前記両眼間隔値に少なくとも部分的に基づいて前記仮想3Dオブジェクトをレンダリングするように構成された、請求項9に記載のシステム。前記現実3D画像ソースがステレオカメラである、請求項9に記載のシステム。前記仮想画像ソースが、さらに、前記ステレオカメラのアスペクト比を決定し、前記射影行列に関する1つまたは複数のパラメータのうちの少なくとも1つを決定するために前記アスペクト比を使用するように構成された、請求項11に記載のシステム。前記パラメータが、左境界パラメータ、右境界パラメータ、上境界パラメータ、下境界パラメータ、ニアクリッピング平面パラメータ、およびファークリッピング平面パラメータを備える、請求項9に記載のシステム。前記仮想画像ソースが、さらに、前記現実3D画像についてのニア平面視差値を決定し、前記同じニア平面視差値を用いて前記仮想3Dオブジェクトをレンダリングするように構成された、請求項9に記載のシステム。前記仮想画像ソースが、さらに、前記現実3D画像についてのファー平面視差値を決定し、前記同じファー平面視差値を用いて前記仮想3Dオブジェクトをレンダリングするように構成された、請求項9に記載のシステム。前記混合シーン合成ユニットが、さらに、前記混合リアリティ3D画像のビューポートをシフトするように構成された、請求項9に記載のシステム。現実3次元3D画像についてのゼロ視差平面までの距離を決定するための手段と、前記ゼロ視差平面までの前記距離に少なくとも部分的に基づいて射影行列に関する1つまたは複数のパラメータを決定するための手段と、前記射影行列に少なくとも部分的に基づいて仮想3Dオブジェクトをレンダリングするための手段と、混合リアリティ3D画像を生成するために前記現実画像と前記仮想オブジェクトとを組み合わせるための手段とを備える、装置。前記ゼロ視差平面までの前記距離に少なくとも部分的に基づいて両眼間隔値を決定するための手段と、前記両眼間隔値に少なくとも部分的に基づいて前記仮想3Dオブジェクトをレンダリングするための手段とをさらに備える、請求項17に記載の装置。前記現実3D画像がステレオカメラによってキャプチャされる、請求項17に記載の装置。前記装置が、前記ステレオカメラのアスペクト比を決定するための手段と、前記射影行列に関する1つまたは複数のパラメータのうちの少なくとも1つを決定するために前記アスペクト比を使用するための手段とをさらに備える、請求項19に記載の装置。前記パラメータが、左境界パラメータ、右境界パラメータ、上境界パラメータ、下境界パラメータ、ニアクリッピング平面パラメータ、ファークリッピング平面パラメータを備える、請求項17に記載の装置。前記現実3D画像についてのニア平面視差値を決定するための手段と、前記ニア平面視差値を用いて前記仮想3Dオブジェクトをレンダリングするための手段とをさらに備える、請求項17に記載の装置。前記現実3D画像についてのファー平面視差値を決定するための手段と、前記ファー平面視差値を用いて前記仮想3Dオブジェクトをレンダリングするための手段とをさらに備える、請求項17に記載の装置。前記混合リアリティ3D画像のビューポートをシフトするための手段をさらに備える、請求項17に記載の装置。1つまたは複数のプロセッサによって実行されたときに前記1つまたは複数のプロセッサに、現実3次元3D画像についてのゼロ視差平面までの距離を決定することと、前記ゼロ視差平面までの前記距離に少なくとも部分的に基づいて射影行列に関する1つまたは複数のパラメータを決定することと、前記射影行列に少なくとも部分的に基づいて仮想3Dオブジェクトをレンダリングすることと、混合リアリティ3D画像を生成するために前記現実画像と前記仮想オブジェクトとを組み合わせることとを行わせる1つまたは複数の命令を有形に記憶する、非一時的コンピュータ可読記憶媒体。前記1つまたは複数のプロセッサによって実行されたときに前記1つまたは複数のプロセッサに、前記ゼロ視差平面までの前記距離に少なくとも部分的に基づいて両眼間隔値を決定することと、前記両眼間隔値に少なくとも部分的に基づいて前記仮想3Dオブジェクトをレンダリングすることとを行わせるさらなる命令を記憶する、請求項25に記載のコンピュータ可読記憶媒体。前記現実3D画像がステレオカメラによってキャプチャされる、請求項25に記載のコンピュータ可読記憶媒体。前記1つまたは複数のプロセッサによって実行されたときに前記1つまたは複数のプロセッサに、前記ステレオカメラのアスペクト比を決定することと、前記射影行列に関する1つまたは複数のパラメータのうちの少なくとも1つを決定するために前記アスペクト比を使用することと行わせるさらなる命令を記憶する、請求項27に記載のコンピュータ可読記憶媒体。前記パラメータが、左境界パラメータ、右境界パラメータ、上境界パラメータ、下境界パラメータ、ニアクリッピング平面パラメータ、およびファークリッピング平面パラメータを備える、請求項27に記載のコンピュータ可読記憶媒体。前記1つまたは複数のプロセッサによって実行されたときに前記1つまたは複数のプロセッサに、前記現実3D画像についてのニア平面視差値を決定することと、前記ニア平面視差値を用いて前記仮想3Dオブジェクトをレンダリングすることとを行わせるさらなる命令を記憶する、請求項25に記載のコンピュータ可読記憶媒体。前記1つまたは複数のプロセッサによって実行されたときに前記1つまたは複数のプロセッサに、前記現実3D画像についてのファー平面視差値を決定することと、前記ファー平面視差値を用いて前記仮想3Dオブジェクトをレンダリングすることとを行わせるさらなる命令を記憶する、請求項25に記載のコンピュータ可読記憶媒体。前記1つまたは複数のプロセッサによって実行されたときに前記1つまたは複数のプロセッサに、前記混合リアリティ3D画像のビューポートをシフトすることを行わせるさらなる命令を記憶する、請求項25に記載のコンピュータ可読記憶媒体。3次元3D混合リアリティは、たとえば3Dカメラによってキャプチャされた現実3D画像またはビデオを、コンピュータまたは他の機械によってレンダリングされた仮想3D画像と組み合わせる。3Dカメラは、共通のシーンの2つの別個の画像たとえば、左側および右側を取得し、その2つの別個の画像を重畳して、3D深度効果をもつ現実画像を作成することができる。仮想3D画像は、一般に、カメラによって取得された画像から生成されるのではなく、OpenGLなどのコンピュータグラフィックスプログラムによって描かれる。現実3D画像と仮想3D画像の両方を組み合わせる混合リアリティシステムを用いると、ユーザは、コンピュータによって描かれた仮想オブジェクトと3Dカメラによってキャプチャされた現実オブジェクトの両方から構成された空間に没入しているように感じることができる。1ウェイ混合リアリティシーンの一例では、閲覧者viewerは、セールスマン現実オブジェクトがコンピュータ生成された仮想3D車仮想オブジェクトなどの仮想オブジェクトと対話するショールームにおいて、そのセールスマンを見ることができる。2ウェイ混合リアリティシーンの一例では、チェスの仮想ゲームなどの仮想ゲームにおいて、第1のコンピュータのところの第1のユーザが第2のコンピュータのところの第2のユーザと対話し得る。2つのコンピュータは、互いに対して遠く離れた物理的ロケーションに位置し得るものであり、インターネットなど、ネットワークを介して接続され得る。3Dディスプレイ上では、第1のユーザは、コンピュータ生成されたチェスボードおよびチェスの駒仮想オブジェクトをもつ第2のユーザ現実オブジェクトの3Dビデオを見ることができ得る。異なる3Dディスプレイ上で、第2のユーザは、同じコンピュータ生成チェスボード仮想オブジェクトをもつ第1のユーザ現実オブジェクトの3Dビデオを見ることができ得る。混合リアリティシステムでは、上述のように、仮想オブジェクトからなる仮想シーンのステレオディスプレイ視差は、現実オブジェクトからなる現実シーンのステレオディスプレイ視差に一致する必要がある。視差という用語は、概して、深度などの3D効果をもたらすべき、一方の画像たとえば、左現実画像中のピクセルの、他方の画像たとえば、右現実画像中の対応するピクセルに対する水平方向オフセットを表す。現実シーンと仮想シーンとの間の視差ずれdisparitymismatchは、現実シーンと仮想シーンとが混合リアリティシーンに組み合わされたときに望ましくない効果を引き起こすことがある。たとえば、仮想チェスゲームでは、視差ずれにより、混合シーン中のチェスボード仮想オブジェクトが、ユーザ現実オブジェクトの前にあるように見えるのではなく、部分的にユーザの後ろにあるように見えるようになるか、またはユーザの中に突き出るように見えるようになることがある。仮想チェスゲームにおける別の例としては、視差ずれにより、チェスの駒仮想オブジェクトが正しくないアスペクト比を有し、人間現実オブジェクトを備えた混合リアリティシーン中でひずんで見えるようになることがある。仮想シーンと現実シーンとの視差を一致させることに加えて、現実シーンと仮想シーンとの射影スケールを一致させることも望ましい。射影スケールは、以下でより詳細に説明するように、概して、ディスプレイ平面上に射影されたときの画像のサイズおよびアスペクト比を指す。現実シーンと仮想シーンとの間の射影スケールのミスマッチにより、仮想オブジェクトが現実オブジェクトに対して大きすぎるまたは小さすぎるものになることがあり、または仮想オブジェクトが現実オブジェクトに対してひずんだ形状を有するようになることがある。本開示の技法は、現実シーンの現実画像と仮想シーンの仮想画像との間の射影スケール一致を達成するためのアプローチと、現実シーンの現実画像と仮想シーンの仮想画像との間の視差スケール一致を達成するためのアプローチとを含む。本技法は、通信ネットワークのアップストリーム方向またはダウンストリーム方向のいずれかにおいて、すなわち、3D画像コンテンツの送信側または3D画像コンテンツの受信側のいずれかによって、計算効率の良い方法で適用され得る。既存のソリューションとは異なり、本開示の技法は、リアルタイムアプリケーションにおける現実シーンと仮想シーンとの間の正しい深度感覚を達成するためにディスプレイチェーンにおいても適用され得る。本開示で使用する視差という用語は、概して、3D効果をもたらすような、一方の画像中のピクセルの、他方の画像中の対応するピクセルに対する水平方向オフセットを表す。本開示で使用する、対応するピクセルとは、概して、3D画像をレンダリングするために左画像と右画像とが合成されるときの3Dオブジェクト中の同じ点に関連するピクセル左画像中のピクセルおよび右画像中のピクセルを指す。画像のステレオペアに関する複数の視差値は、視差マップと呼ばれるデータ構造中に記憶され得る。画像のステレオペアに関連する視差マップは、第1の画像中の所与のx,y座標における値dが、第2の画像中の対応するピクセルを見つけるために第2の画像中の座標x,yにおけるピクセルに適用される必要があるx座標のシフトに対応するような、第1の画像中のピクセル座標x,yを視差値dにマッッピングする2次元2D関数dx,yを表す。たとえば、特定の例として、視差マップは、第1の画像中の座標250,150におけるピクセルについてのd値6を記憶し得る。この例では、d値6が与えられると、第1の画像中の、クロマ値およびルミナンス値など、ピクセル250,150を表すデータが、第2の画像中のピクセル256,150において生じる。図1は、本開示の態様を実装するための例示的なシステムであるシステム110を示すブロック図である。図1に示すように、システム110は、現実画像ソース122と、仮想画像ソース123と、混合シーン合成ユニットMSSU:mixedscenesynthesizingunit145と、画像ディスプレイ142とを含む。MSSU145は、現実画像ソース122から現実画像を受信し、仮想画像ソース123から仮想画像を受信する。現実画像は、たとえば、3Dカメラによってキャプチャされた3D画像であり得、仮想画像は、たとえば、コンピュータ生成された3D画像であり得る。MSSU145は、現実オブジェクトと仮想オブジェクトの両方を含む混合リアリティシーンを生成し、混合リアリティシーンを画像ディスプレイ142に出力する。本開示の技法によれば、MSSU145は、現実画像に関する複数のパラメータを決定し、それらのパラメータに基づいて、仮想画像の射影スケールおよび視差が現実画像の射影スケールおよび視差に一致するような仮想画像を生成する。図2は、本開示の諸態様を実装するための別の例示的なシステムであるシステム210を示すブロック図である。図2に示すように、システム210は、現実画像ソース222と、仮想画像ソース223と、視差処理ユニット224と、エンコーダ226と、送信機228とを備えるソースデバイス220を含むことができ、またさらに、画像ディスプレイ242と、現実ビュー合成ユニット244と、混合シーン合成ユニットMSSU245と、デコーダ246と、受信機248とを備える宛先デバイス240を含むことができる。図1および図2のシステムは、本開示の諸態様が実装され得る複数のタイプのシステムのうちの2つの例にすぎず、説明の目的で使用される。以下でより詳細に説明するように、本開示の諸態様を実装する代替システムでは、システム210の様々な要素は、別様に構成され、代替要素によって置き換えられ、または場合によっては完全に省略され得る。図2の例では、宛先デバイス240は、ソースデバイス220から符号化画像データ254を受信する。ソースデバイス220および/または宛先デバイス240は、パーソナルコンピュータPC、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、専用コンピュータ、スマートフォンなどのワイヤレス通信デバイス、または通信チャネルを介してピクチャおよび/またはビデオ情報を通信することができる任意のデバイスを備え得る。いくつかの事例では、単一のデバイスは、双方向通信をサポートするソースデバイスと宛先デバイスの両方であり得、したがってソースデバイス220と宛先デバイス240の両方の機能を含み得る。ソースデバイス220と宛先デバイス240との間の通信チャネルは、ワイヤードまたはワイヤレス通信チャネルを備えることができ、インターネットなどのネットワーク接続であり得、または直接通信リンクであり得る。宛先デバイス240は、3次元3Dディスプレイデバイスまたは3Dレンダリングデバイスと呼ばれることがある。現実画像ソース222は、第1のビュー250と第2のビュー256とを含む画像のステレオペアを視差処理ユニット224に与える。視差処理ユニット224は、第1のビュー250と第2のビュー256とを使用して3D処理情報252を生成する。視差処理ユニット224は、3D処理情報252と、2つのビューのうちの1つ図2の例では第1のビュー250とをエンコーダ226に転送し、エンコーダ226は、第1のビュー250と3D処理情報252とを符号化して符号化画像データ254を形成する。エンコーダ226はまた、仮想画像ソース223からの仮想画像データ253を符号化画像データ254内に含める。送信機228は、符号化画像データ254を宛先デバイス240に送信する。受信機248は、送信機228から符号化画像データ254を受信する。デコーダ246は、符号化画像データ254を復号して、第1のビュー250を抽出し、符号化画像データ254から3D処理情報252ならびに仮想画像データ253を抽出する。第1のビュー250および3D処理情報252に基づいて、ビュー合成ユニット244は第2のビュー256を再構築することができる。第1のビュー250および第2のビュー256に基づいて、現実ビュー合成ユニット244は現実3D画像をレンダリングすることができる。図1には示されていないが、第1のビュー250および第2のビュー256は、ソースデバイス220または宛先デバイス240のいずれかにおいて追加の処理を受け得る。したがって、いくつかの例では、ビュー合成ユニット244によって受信された第1のビュー250、または画像ディスプレイ242によって受信された第1のビュー250および第2のビュー256は、実際には、画像ソース256から受信された第1のビュー250および第2のビュー256の修正されたバージョンであり得る。3D処理情報252は、たとえば、視差マップを含むことがあり、または視差マップに基づく深度情報を含んでいることがある。視差情報に基づいて深度情報を決定し、またその逆を行うための様々な技法が存在する。したがって、本開示で視差情報の符号化、復号、または送信について説明するときはいつでも、視差情報に基づく深度情報が符号化され、復号され、または送信され得ることも企図される。現実画像ソース222は、画像センサアレイ、たとえば、デジタル静止ピクチャカメラもしくはデジタルビデオカメラ、1つまたは複数の記憶された画像を備えるコンピュータ可読記憶媒体、または外部ソースからデジタル画像を受信するためのインターフェースを含み得る。いくつかの例では、現実画像ソース222は、デスクトップ、ラップトップ、またはタブレットコンピュータなどのパーソナルコンピューティングデバイスの3Dカメラに対応し得る。仮想画像ソース223は、ビデオゲームまたは他の対話型マルチメディアソース、または画像データの他のソースを実行することなどによって、デジタル画像を生成する処理ユニットを含み得る。現実画像ソース222は、概して、キャプチャされた画像またはプリキャプチャされた画像のいずれか1つのタイプのソースに対応し得る。概して、本開示における画像への言及は、静止ピクチャとビデオデータのフレームの両方を含む。したがって、本開示の諸態様は、静止デジタルピクチャと、キャプチャされたデジタルビデオデータまたはコンピュータ生成されたデジタルビデオデータのフレームの両方に適用し得る。現実画像ソース222は、画像250および256のステレオペアに関する画像データを、それらの画像間の視差値の計算のために視差処理ユニット224に与える。画像250および256のステレオペアは、第1のビュー250と第2のビュー256とを備える。視差処理ユニット224は、画像250および256のステレオペアに関する視差値を自動的に計算するように構成されることができ、この視差値は、3D画像中のオブジェクトに関する深度値を計算するために使用されることができる。たとえば、現実画像ソース222は、シーンの2つのビューを異なるパースペクティブでキャプチャし、次いで、決定された視差マップに基づいてシーン中のオブジェクトに関する深度情報を計算することができる。様々な例では、現実画像ソース222は、標準的な2次元カメラ、シーンの立体視ビューを与える2カメラシステム、シーンの複数のビューをキャプチャするカメラアレイ、または1つのビューと深度情報とをキャプチャするカメラを備えることができる。現実画像ソース222は、複数のビューすなわち、第1のビュー250および第2のビュー256を与えることができ、視差処理ユニット224は、これらの複数のビューに基づいて視差値を計算することができる。ソースデバイス220は、しかしながら、第1のビュー250と3D処理情報252すなわち、視差マップ、または視差マップから決定されたシーンのビューの各ペアに関する深度情報のみを送信し得る。たとえば、現実画像ソース222は、異なる角度から見られるシーンのビューの4つのペアを生成するように意図された、8カメラアレイを備え得る。ソースデバイス220は、ビューの各ペアに関する視差情報または深度情報を計算し、各ペアのただ1つの画像と、ペアに関する視差情報または深度情報とを宛先デバイス240に送信することができる。したがって、8つのビューを送信するのではなく、ソースデバイス220は、この例では、符号化画像データ254を含むビットストリームの形態で、4つのビューと、4つのビューの各々に関する深度/視差情報すなわち、3D処理情報252とを送信することができる。いくつかの例では、視差処理ユニット224は、ユーザから、または別の外部デバイスから、画像に関する視差情報を受信することができる。視差処理ユニット224は、第1のビュー250と3D処理情報252とをエンコーダ226に渡す。3D処理情報252は、画像250および256のステレオペアに関する視差マップを備え得る。エンコーダ226は、第1のビュー250と3D処理情報252と仮想画像データ253とに関する符号化画像データを含む、符号化画像データ254を形成する。いくつかの例では、エンコーダ226は、符号化画像データ254をソースデバイス220から宛先デバイス240に送信するために必要とされるビット数を低減するために、様々なロスレスlosslessまたはロッシーlossyコーディング技法を適用し得る。エンコーダ226は、符号化画像データ254を送信機228に渡す。第1のビュー250がデジタル静止ピクチャであるときには、エンコーダ226は、たとえば、JointPhotographicExpertsGroupJPEG画像として第1のビュー250を符号化するように構成されることができる。第1のビュー250がビデオデータのフレームであるときには、エンコーダ226は、たとえば、MotionPictureExpertsGroupMPEG、MPEG-2、国際電気通信連合ITUH.263、ITU-TH.264/MPEG-4、H.264AdvancedVideoCodingAVC、ITU-TH.265と呼ばれることもある新生のHEVC規格、または他のビデオ符号化規格などのビデオコーディング規格に従って第1のビュー250を符号化するように構成されることができる。たとえば、ITU-TH.264/MPEG-4AVC規格は、JointVideoTeamJVTとして知られる共同パートナーシップの成果として、ISO/IECMovingPictureExpertsGroupMPEGとともにITU-TVideoCodingExpertsGroupVCEGによって策定された。いくつかの態様では、本開示で説明する技法は、概してH.264規格に準拠するデバイスに適用され得る。H.264規格は、ITU-TStudyGroupによる2005年3月付けのITU-T勧告H.264AdvancedVideoCodingforgenericaudiovisualservicesに記載されており、本明細書では、H.264規格またはH.264仕様、あるいはH.264/AVC規格または仕様と呼ぶことがある。JointVideoTeamJVTは、H.264/MPEG-4AVCへの拡張に取り組み続けている。新生のHEVC規格など、新しいビデオコーディング規格が発展し、出現し続けている。本開示で説明する技法は、H.264などの現世代の規格と、新生のHEVC規格などの将来世代の規格の両方と互換性があり得るものである。視差処理ユニット224は、視差マップの形態で3D処理情報252を生成することができる。エンコーダ226は、符号化画像データ254としてビットストリームで送信される3Dコンテンツの一部として視差マップを符号化するように構成され得る。このプロセスは、1つのキャプチャされたビューに関する1つの視差マップ、またはいくつかの送信されたビューに関する視差マップを生成することができる。エンコーダ226は、1つまたは複数のビューと視差マップとを受信し、複数のビューをジョイントコーディングすることができるH.264またはHEVC、または深度とテクスチャとをジョイントコーディングすることができるスケーラブルビデオコーディングSVCのようなビデオコーディング規格を用いて、該1つまたは複数のビューと視差マップとをコーディングすることができる。上記のように、画像ソース222は、3D処理情報252を生成する目的で、視差処理ユニット224に同じシーンの2つのビューを与えることができる。そのような例では、エンコーダ226は、3D処理情報256とともにビューのうちの1つのみを符号化することができる。概して、ソースデバイス220は、3D処理情報252とともに第1の画像250を宛先デバイス240などの宛先デバイスに送るように構成され得る。視差マップまたは深度マップとともにただ1つの画像を送ることにより、そうでなければ3D画像を生成するためにシーンの2つの符号化ビューを送る結果として生じ得る、帯域幅消費量を低減し、および/または記憶スペースの使用量を低減することができる。送信機228は、符号化画像データ254を含むビットストリームを宛先デバイス240の受信機248に送ることができる。たとえば、送信機228は、トランスポートレベルカプセル化技法、たとえば、MPEG-2システム技法を使用して、ビットストリーム中の符号化画像データ254をカプセル化することができる。送信機228は、たとえば、ネットワークインターフェース、ワイヤレスネットワークインターフェース、無線周波数送信機、送信機/受信機トランシーバ、または他の送信ユニットを備え得る。他の例では、ソースデバイス220は、符号化画像データ254を含むビットストリームを、たとえば、コンパクトディスクなどの光ストレージ媒体、デジタルビデオディスク、ブルーレイ登録商標ディスク、フラッシュメモリ、磁気媒体、または他の記憶媒体などの物理媒体に記憶するように構成され得る。そのような例では、記憶媒体は、宛先デバイス240のロケーションに物理的に移送され、データを取り出すために適切なインターフェースユニットによって読み取られ得る。いくつかの例では、符号化画像データ254を含むビットストリームは、送信機228によって送信される前に変調器/復調器モデムによって変調され得る。符号化画像データ254をもつビットストリームを受信し、そのデータをカプセル化解除した後、いくつかの例では、受信機248は、符号化画像データ254をデコーダ246にまたは、いくつかの例では、ビットストリームを復調するモデムに与えることができる。デコーダ246は、符号化画像データ254から、第1のビュー250と、3D処理情報252と、仮想画像データ253とを復号する。たとえば、デコーダ246は、3D処理情報252から第1のビュー250と第1のビュー250に関する視差マップとを再現することができる。視差マップの復号後、送信されていない他のビューに関するテクスチャを生成するためにビュー合成アルゴリズムが実装され得る。デコーダ246はまた、第1のビュー250と3D処理情報252とを現実ビュー合成ユニット244に送ることができる。現実ビュー合成ユニット244は、第1のビュー250と3D処理情報252とに基づいて第2のビュー256を再現する。概して、ヒューマンビジョンシステムHVSは、オブジェクトに対する収束角に基づいて深度を知覚する。閲覧者に比較的近いオブジェクトは、閲覧者から比較的遠いオブジェクトよりも大きい角度で閲覧者の眼がオブジェクトに収束することにより、閲覧者により近いと知覚される。ピクチャおよびビデオなどのマルチメディアにおいて3次元をシミュレートするために、2つの画像、すなわち、閲覧者の眼の各々に対して1つの画像左側および右側が、閲覧者に表示される。画像内の同じ空間ロケーションに位置するオブジェクトは、概して、画像が表示されているスクリーンと同じ深度にあるものとして知覚される。深度の錯覚を生み出すために、オブジェクトは、水平軸に沿って画像の各々におけるわずかに異なる位置に示され得る。2つの画像におけるオブジェクトのロケーション間の差は、視差と呼ばれる。概して、オブジェクトが、スクリーンに対して、閲覧者のより近くに見えるようにするために、負の視差値が使用されることができ、オブジェクトがスクリーンに対してユーザからより遠くに見えるようにするために、正の視差値が使用されることができる。正または負の視差をもつピクセルは、いくつかの例では、焦点からの正または負の深度の効果をさらに生み出すために、シャープネスまたはぼけ度を増加または減少させるように、より高いまたはより低い解像度で表示され得る。ビュー合成は、任意のビューアングルでビューを生成するために密にサンプリングされたビューを使用するサンプリング問題と見なされ得る。しかしながら、実際の適用例では、密にサンプリングされたビューによって必要とされる記憶または送信帯域幅は、比較的大きいものとなり得る。したがって、疎にサンプリングされたビューとそれらの深度マップとに基づくビュー合成に関する研究が行われている。詳細は異なるが、疎にサンプリングされたビューに基づくアルゴリズムは、ほとんど3Dワーピングに基づいている。3Dワーピングでは、深度とカメラモデルとが与えられると、リファレンスビューのピクセルが最初に2Dカメラ座標から世界座標における点Pに逆射影され得る。点Pは、次いで、宛先ビュー生成されるべき仮想ビューに射影され得る。世界座標における同じオブジェクトの異なる射影に対応する2つのピクセルは、同じ色強度を有し得る。現実ビュー合成ユニット244は、画像のオブジェクトたとえば、ピクセル、ブロック、ピクセルのグループ、またはブロックのグループに関する視差値を、オブジェクトに関する深度値に基づいて計算するように構成されることができ、または符号化画像データ254をもつビットストリーム中で符号化された視差値を受信することができる。現実ビュー合成ユニット244は、視差値を使用して第1のビュー250から第2のビュー256を生成することができ、これにより、閲覧者が一方の眼で第1のビュー250を見て、他方の眼で第2のビュー256を見るときに3次元効果が生み出される。現実ビュー合成ユニット244は、第1のビュー250と第2のビュー256とを、画像ディスプレイ242上に表示されるべき混合リアリティシーン中に含まれるように、MSSU245に渡すことができる。画像ディスプレイ242は、立体視ディスプレイまたは裸眼立体視ディスプレイを備えることができる。概して、立体視ディスプレイは、2つの画像を表示することによって3次元をシミュレートする。閲覧者は、1つの画像を一方の眼に、第2の画像を他方の眼に向けるために、ゴーグルまたは眼鏡などの頭部装着型ユニットを着用することができる。いくつかの例では、各画像は、たとえば、偏光眼鏡またはカラーフィルタ処理眼鏡を使用して、同時に表示される。いくつかの例では、画像は、高速で交互に入れ替えられ、眼鏡またはゴーグルは、正しい画像が対応する眼のみに示されるように、ディスプレイと同期して、高速にシャッタリングを交互に入れ替える。裸眼立体視ディスプレイは、眼鏡を使用せず、代わりに、正しい画像を閲覧者の対応する眼に向けることができる。たとえば、裸眼立体視ディスプレイは、閲覧者の眼がどこに位置するかを決定するためのカメラと、閲覧者の眼に画像を向けるための機械的手段および/または電子的手段とを備えることができる。画像を分離し、および/または画像をユーザの異なる眼に向けるために、カラーフィルタ処理技法、偏光フィルタ処理技法、または他の技法も使用され得る。現実ビュー合成ユニット244は、閲覧者に対して、スクリーンの後ろ、スクリーン、およびスクリーンの前、に関する深度値を用いて構成され得る。現実ビュー合成ユニット244は、符号化画像データ254中に表されたオブジェクトの深度を視差値にマッピングする関数を用いて構成され得る。したがって、現実ビュー合成ユニット244は、オブジェクトに関する視差値を計算するために関数のうちの1つを実行することができる。3D処理情報252に基づいて第1のビュー250のオブジェクトに関する視差値を計算した後に、現実ビュー合成ユニット244は、第1のビュー250と視差値とから第2のビュー256を生成することができる。現実ビュー合成ユニット244は、スクリーンの前または後ろに最大深度でオブジェクトを表示するための最大視差値を用いて構成されることができる。このようにして、現実ビュー合成ユニット244は、ゼロ視差値から最大の正および負の視差値までの視差範囲を用いて構成されることができる。閲覧者は、宛先デバイス240によってオブジェクトが表示されるスクリーンの前または後ろの最大深度を変更するように設定を調節することができる。たとえば、宛先デバイス240は、閲覧者が操作し得る遠隔制御ユニットまたは他の制御ユニットと通信し得る。遠隔制御は、オブジェクトを表示すべきスクリーンの前の最大深度およびスクリーンの後ろの最大深度を閲覧者が制御できるようにするユーザインターフェースを備え得る。このようにして、閲覧者は、閲覧経験viewingexperienceを改善するために画像ディスプレイ242に関する設定パラメータを調節することが可能である。スクリーンの前およびスクリーンの後ろにオブジェクトが表示されるように最大視差値を設定することによって、ビュー合成ユニット244は、比較的単純な計算を使用して3D処理情報252に基づいて視差値を計算することが可能である。たとえば、ビュー合成ユニット244は、深度値を視差値にマッピングする関数を適用するように構成されることができる。該関数は、収束深度間隔における深度値を有するピクセルがゼロの視差値にマッピングされ、スクリーンの前の最大深度にあるオブジェクトが最小の負の視差値にマッピングされ、したがってスクリーンの前にあるように示され、また、最大深度にあり、したがってスクリーンの後ろにあるように示されるオブジェクトがスクリーンの後ろに関する最大の正の視差値にマッピングされるような、深度と対応する視差値範囲内の1つの視差値との間の線形関係を備え得る。現実世界座標に関する一例では、深度範囲は、たとえば[200,1000]であり得、収束深度距離は、たとえば約400であり得る。この場合、スクリーンの前の最大深度は200に対応し、スクリーンの後ろの最大深度は1000であり、収束深度間隔は、たとえば[395,405]であり得る。しかしながら、現実世界座標系における深度値は、利用可能でないことがあり、または、たとえば、8ビット値0~255に及ぶであり得る、より小さいダイナミックレンジに量子化され得る。いくつかの例では、値が0~255であるそのような量子化深度値は、深度マップが格納もしくは送信されるとき、または深度マップが推定されるときのシナリオにおいて使用され得る。一般的な深度画像ベースレンダリングDIBRプロセスは、視差が計算される前に、低ダイナミックレンジ量子化深度マップを現実世界深度マップ中のマップに変換することを含み得る。従来は、より小さい量子化深度値が、現実世界座標中のより大きい深度値に対応することに留意されたい。しかしながら、本開示の技法では、この変換を実行することが不要であり、したがって、現実世界座標中の深度範囲、または量子化深度値から現実世界座標中の深度値への変換関数を知ることが不要である。例示的な視差範囲[-disn,disp]について考えると、量子化深度範囲が、0であり得るdminから255であり得るdmaxまでの値を含むときには、深度値dminはdispにマッピングされ、255であり得る深度値dmaxは-disnにマッピングされる。この例ではdisnが正であることに留意されたい。収束深度マップ間隔が[d0-δ,d0δ]であると仮定した場合、この間隔中の深度値は視差ゼロにマッピングされる。概して、本開示において、深度値という句は、低ダイナミックレンジ[dmin,dmax]における値を指す。δ値は、許容値と呼ばれることもあり、各方向で同じである必要はない。すなわち、d0は、第1の許容差値δ1と、潜在的に異なる第2の許容差値δ2とによって修正されることができ、その結果、[d0-δ2,d0δ1]は、ゼロ視差値にすべてマッピングされ得る様々な深度値を表すことができる。このようにして、宛先デバイス240は、たとえば、焦点距離、仮定されたカメラパラメータ、および現実世界の深度範囲値などの追加の値を考慮する、より複雑な手順を用いることなく、視差値を計算することができる。システム210は、本開示に合致する1つの例示的な構成にすぎない。上記で説明したように、本開示の技法はソースデバイス220または宛先デバイス240によって実行され得る。いくつかの代替構成では、たとえば、MSSU245の機能の一部は、宛先デバイス240の代わりにソースデバイス220のところにあることができる。そのような構成では、仮想画像ソース223は、実際の仮想3D画像に対応する仮想画像データ223を生成するために本開示の技法を実装し得る。他の構成では、宛先デバイス240のMSSU245が仮想3D画像をレンダリングすることができるように、仮想画像ソース223は、3D画像を記述するデータを生成することができる。さらに、他の構成では、ソースデバイス220は、1つの画像と視差マップとを送信するのではなく、現実画像250および256を直接、宛先デバイス240に送信することができる。さらに他の構成では、ソースデバイス220は、混合リアリティシーンを生成し、その混合リアリティシーンを宛先デバイスに送信することができる。図3A~図3Cは、ピクセルの深度に基づく、正の視差値、ゼロの視差値、および負の視差値の例を示す概念図である。概して、3次元効果を作り出すために、2つの画像が、たとえば、スクリーン上に示される。スクリーンの前または後ろのいずれかに表示されるべきオブジェクトのピクセルは、それぞれ正または負の視差値を有しており、スクリーンの深度のところに表示されるべきオブジェクトは、ゼロの視差値を有する。いくつかの例では、たとえば、ユーザが頭部装着型ゴーグルを着用したときには、スクリーンの深度は、共通の深度d0に対応し得る。図3A~図3Cは、スクリーン382が、同時に、または高速で連続的に、左画像384と右画像386とを表示する例を示す。図3Aは、スクリーン382の後ろにまたは内部に生じるものとしてピクセル380Aを示す。図3Aの例では、スクリーン382は、左画像ピクセル388Aと右画像ピクセル390Aとを表示し、ここで、左画像ピクセル388Aおよび右画像ピクセル390Aは、一般に、同じオブジェクトに対応し、したがって、同様のまたは同一のピクセル値を有し得る。いくつかの例では、たとえば、わずかに異なる角度からオブジェクトを見るときに生じ得る照度または色差におけるわずかな変化を考慮するために、左画像ピクセル388Aと右画像ピクセル390Aとに関するルミナンス値およびクロミナンス値は、3次元閲覧経験をさらに改善するためにわずかに異なり得る。この例では、左画像ピクセル388Aの位置は、スクリーン382によって表示されたとき、右画像ピクセル90Aの左側に生じる。すなわち、左画像ピクセル388Aと右画像ピクセル390Aとの間に正の視差がある。視差値がdであり、左画像ピクセル392Aが左画像384中の水平位置xのところに生じ、左画像ピクセル392Aが左画像ピクセル388Aに対応すると仮定すると、右画像ピクセル394Aは、右画像386中の水平位置xdのところに生じ、右画像ピクセル394Aは右画像ピクセル390Aに対応する。この正の視差により、ユーザの左眼が左画像ピクセル88Aに焦点を合わせ、ユーザの右眼が右画像ピクセル390Aに焦点を合わせるときに、閲覧者の眼は、スクリーン382の比較的後ろにある点に収束し、ピクセル80Aがスクリーン382の後ろにあるように見える錯覚を生み出す。左画像384は、図2に示した第1の画像250に対応し得る。他の例では、右画像386が第1の画像250に対応し得る。図3Aの例において正の視差値を計算するために、現実ビュー合成ユニット244は、左画像384と、スクリーン382の後ろの左画像ピクセル392Aの深度位置を示す左画像ピクセル392Aに関する深度値とを受信することができる。現実ビュー合成ユニット244は、左画像384をコピーして右画像386を形成し、右画像ピクセル394Aの値を、左画像ピクセル392Aの値に合致または類似するように変更することができる。すなわち、右画像ピクセル394Aは、左画像ピクセル392Aと同じまたは同様のルミナンス値および/またはクロミナンス値を有し得る。したがって、画像ディスプレイ242に対応し得るスクリーン382は、ピクセル380Aがスクリーン382の後ろに生じるという効果を生み出すために、左画像ピクセル388Aと右画像ピクセル390Aとを、実質的に同時に、または高速で連続的に、表示することができる。図3Bは、ピクセル380Bがスクリーン382の深度のところに描かれる一例を示す。図3Bの例では、スクリーン382は、左画像ピクセル388Bと右画像ピクセル390Bとを同じ位置に表示する。すなわち、この例では、左画像ピクセル388Bと右画像ピクセル390Bとの間にゼロ視差がある。左画像384中のスクリーン382によって表示される左画像ピクセル388Bに対応する左画像ピクセル392Bが水平位置xのところに生じると仮定すると、スクリーン382によって表示される右画像ピクセル390Bに対応する右画像ピクセル394Bも、右画像386中の水平位置xのところに生じる。現実ビュー合成ユニット244は、左画像ピクセル392Bに関する深度値が、スクリーン382の深度に等しい深度d0のところにある、またはスクリーン382の深度から小さい距離δ内にあると決定し得る。したがって、現実ビュー合成ユニット244は、左画像ピクセル392Bにゼロの視差値を割り当て得る。左画像384と視差値とから右画像386を構築するときには、現実ビュー合成ユニット244は、右画像ピクセル394Bの値を左画像ピクセル392Bと同じままにし得る。図3Cは、スクリーン382の前にあるピクセル380Cを示す。図3Cの例では、スクリーン382は、左画像ピクセル388Cを、右画像ピクセル390Cの右側に表示する。すなわち、この例では、左画像ピクセル388Cと右画像ピクセル390Cとの間に負の視差がある。したがって、ユーザの眼は、スクリーン382の前の位置に収束し、ピクセル380Cがスクリーン382の前にあるように見える錯覚を生み出す。現実ビュー合成ユニット244は、左画像ピクセル392Cに関する深度値がスクリーン382の前である深度のところにあると決定し得る。したがって、現実ビュー合成ユニット244は、左画像ピクセル392Cの深度を負の視差値-dにマッピングする関数を実行し得る。次いで、現実ビュー合成ユニット244は、左画像384と負の視差値とに基づいて、右画像386を構築し得る。たとえば、右画像386を構築するときには、左画像ピクセル392Cが水平位置xを有すると仮定すると、現実ビュー合成ユニット244は、右画像386中の水平位置x-dのところにあるピクセルすなわち、右画像ピクセル394Cの値を、左画像ピクセル392Cの値に変更し得る。現実ビュー合成ユニット244は、第1のビュー250および第2のビュー256をMSSU245に送信する。MSSU245は、現実3D画像を作り出すために第1のビュー250と第2のビュー256とを組み合わせる。MSSU245はまた、画像ディスプレイ242によるディスプレイのための混合リアリティ3D画像を生成するために、仮想画像データ253に基づいて現実3D画像に仮想3Dオブジェクトを追加する。本開示の技法によれば、MSSU245は、現実3D画像から抽出されたパラメータのセットに基づいて仮想3Dオブジェクトをレンダリングする。図4Aは、現実シーンの立体視ビューを取得するための2カメラシステムと得られた3D画像によって包含された視野とのトップダウン図を示し、図4Bは、図4Aに示した同じ2カメラシステムの側面図を示す。2カメラシステムは、たとえば、図1中の現実画像ソース122または図2中の現実画像ソース222に対応し得る。L’は2カメラシステムについての左カメラ位置を表し、R’は2カメラシステムについての右カメラ位置を表す。L’およびR’のところに位置するカメラは、上記で説明した第1のビューと第2のビューとを取得することができる。M’はモノスコープカメラ位置を表し、Aは、M’とL’との間の距離ならびにM’とR’との間の距離を表す。したがって、L’とR’との間の距離は2Aである。Z’はゼロ視差平面ZDPまでの距離を表す。ZDPのところにある点は、ディスプレイ上にレンダリングされたときには、ディスプレイ平面上にあるように見える。ZDPの後ろの点は、ディスプレイ上にレンダリングされたときにはディスプレイ平面の後ろにあるように見え、ZDPの前の点は、ディスプレイ上にレンダリングされたときにはディスプレイ平面の前にあるように見える。M’からZDPまでの距離は、レーザ測距器rangefinder、赤外線測距器、または他のそのような距離測定ツールを使用するカメラによって測定されることができる。いくつかの動作環境では、Z’の値は、測定される必要のない既知の値であり得る。写真撮影では、画角AOV:angleofviewという用語は、一般に、カメラによって画像化される所与のシーンの角度範囲を表すために使用される。AVOは、しばしば、視野FOV:fieldofviewというより一般的な用語と互換的に使用される。カメラについての水平方向画角θ’hは、特定のカメラについてのセットアップに基づく既知の値である。カメラセットアップによってキャプチャされるZDPの幅の半分を表すW’の値は、θ’hの既知の値とZ’の決定された値とに基づいて、次のように計算される。カメラによってキャプチャされるZDPの高さの半分を表すH’の値は、カメラに関する既知のパラメータである所与のアスペクト比を使用して、次のように決定される。したがって、カメラセットアップの垂直方向画角θ’vは、次のように計算される。図5Aは、仮想ディスプレイシーンのトップダウン概念図を示し、図5Bは、同じ仮想ディスプレイシーンの側面図を示す。図5Aおよび図5Bにおいてディスプレイシーンを表すパラメータは、図4Aおよび図4Bの現実シーンについて決定されたパラメータに基づいて選択される。具体的には、仮想シーンの水平方向AOVθhは、現実シーンの水平方向AOVθ’hに一致するように選択され、仮想シーンの垂直方向AOVθvは現実シーンの垂直方向AOVθ’vに一致するように選択され、仮想シーンのアスペクト比Rは、現実シーンのアスペクト比R’に一致するように選択される。仮想シーンが現実シーンと同じ閲覧量を有するように、また、仮想オブジェクトがレンダリングされるときに視覚ひずみがないように、仮想ディスプレイシーンの視野は、カメラによって取得された現実3D画像の視野に一致するように選ばれる。図6は、混合リアリティシーンをレンダリングするための3D視野角錐体を示す3D図である。3D視野角錐体は、3Dグラフィックスを生成するためのアプリケーションプログラムインターフェースAPIによって定義され得る。OpenGraphicsLibraryOpenGLは、たとえば、3Dコンピュータグラフィックスを生成するために使用される1つの共通のクロスプラットフォームAPIである。OpenGLにおける3D視野角錐体は、図6に示す6つのパラメータ左境界l、右境界r、上部境界t、下部境界b、Znear、およびZfarによって定義され得る。lパラメータ、rパラメータ、tパラメータ、およびbパラメータは、上記で決定された水平AOVおよび垂直AOVを使用して以下のように決定される。lの値およびtの値を決定するために、Znearの値が決定される必要がある。ZnearおよびZfarは、以下の制約を満たすように選択される。以上で決定されたWの値とθhの値とを使用して、ZZDPの値が、以下のように決定される。ZZDPの値を決定した後、ZnearおよびZfarの値が、仮想ディスプレイ平面に対応する、現実シーンのニアnearおよびファーfarクリッピング平面に基づいて選ばれる。ZDPが、たとえばディスプレイ上にある場合、ZDPは、閲覧者からディスプレイまでの距離に等しい。ZfarとZnearとの間の比が、深度バッファの非線形性問題により深度バッファ精度に影響を及ぼすことがあるが、深度バッファは、通常、ニア平面に近い領域においてより高い精度を有し、ファー平面に近い領域においてより低い精度を有する。この精度変化は、閲覧者により近いオブジェクトの画質を改善し得る。したがって、ZnearおよびZfarの値は、以下のように選択される。他の、CZnおよびCZfの値が、また、システム設計者およびシステムユーザの選好に基づいて選択され得る。Znearの値とZfarの値とを決定した後、lの値およびtの値が、上記の式4および式5を使用して決定されることができる。rの値およびbの値は、それぞれ、lの負数およびtの負数であり得る。OpenGL角錐体パラメータが導出される。したがって、OpenGL射影行列は、以下のように導出される。上記の射影行列を使用して、シーン中の仮想オブジェクトの射影スケールがシーン中の現実オブジェクトの射影スケールと一致する、混合リアリティシーンが、レンダリングされることができる。上記の式4および式5に基づいて、以下であることがわかる。射影スケール一致に加えて、本開示の諸態様は、現実3D画像と仮想3D画像との間の視差スケールを一致させることをさらに含む。再び図4を参照すると、現実画像の視差は、以下のように決定される。前述のように、Aの値は、使用された3Dカメラに基づいて既知であり、Z’の値は、既知であるかまたは測定され得る。N’の値およびF’の値は、それぞれ、上記で決定されたZnearの値およびZfarの値に等しい。仮想3D画像の視差スケールを現実3D画像に一致させるために、仮想画像のニア平面視差dNは、d’Nに等しく設定され、仮想画像のファー平面視差dFは、d’Fに等しく設定される。仮想画像に関する両眼間隔値eyeseparationvalueEを決定するためには、以下のいずれかの式を解くことができる:例としてニア平面視差dNを使用する。したがって、式13は、ニア視差平面の場合、以下のようになる:次に、現実世界座標が、画像平面ピクセル座標にマッピングされる必要がある。3Dカメラのカメラ解像度がW’P×H’Pであることがわかっていると仮定すると、ニア平面視差は、以下のようになる:閲覧者空間視差をグラフィックス座標からディスプレイピクセル座標にマッピングすると、ディスプレイ解像度は、Wp×Hpであり、ここで、以下のとおりである:d’Np=dNpの視差の等式、およびディスプレイからキャプチャされた画像への以下のスケーリング比Sを使用すると:OpenGLにおいて閲覧者ロケーションを決定するために使用され得る両眼間隔値は、以下のように決定される:両眼間隔値は、仮想3D画像を生成するためのOpenGL関数呼び出しで使用されるパラメータである。図7は、図6の視野角錐体のような視野角錐体のトップダウン図を示す。OpenGLでは、視野角錐体内のすべての点は、通常、ニアクリッピング平面たとえば、図7に図示上に射影され、次いで、ビューポートスクリーン座標にマッピングされる。左ビューポートと右ビューポートの両方を動かすことによって、シーンのうちの特定の部分の視差を変えることができる。これにより、ZDP調整およびビュー深度調整の両方が達成されることができる。ひずみのないステレオビューを維持するために、左ビューポートと右ビューポートの両方が、同じ距離の量だけ対称的に反対方向にシフトされることができる。図7は、左ビューポートが少量の距離だけ左にシフトされ、右ビューポートが同じ量の距離だけ右にシフトされるときのビュー空間ジオメトリを示す。線701aおよび線701bは、元の左ビューポート構成を表し、線702aおよび702b線は、変更された左ビューポート構成を表す。線703aおよび線703bは、元の右ビューポート構成を表し、線704aおよび線704bは、変更された右ビューポート構成を表す。Zobjは、ビューポートのシフト前のオブジェクト距離を表し、Z’objは、ビューポートのシフト後のオブジェクト距離を表す。ZZDPは、ビューポートのシフト前のゼロ視差平面距離を表し、Z’ZDPは、ビューポートのシフト後のゼロ視差平面距離を表す。Znearはニアクリッピング平面距離を表し、Eは上記で決定された両眼間隔値を表す。点Aはビューポートのシフト前のオブジェクト深度位置であり、点A’はビューポートのシフト後のオブジェクト深度位置である。ビューポートをシフトすることの深度変化の数学的関係は、以下のように導出され、Δはオブジェクトの投影ビューポートサイズの半分であり、VPsはビューポートがシフトされた量である。点A、点A’ならびに左眼および右眼の位置の三角法に基づいて、式20および式21が導出される。ビューポートのシフト後の閲覧者空間におけるオブジェクト距離を導出するために、次のように、式20および式21が組み合わされることができる。式22に基づいて、閲覧者空間における新しいZDP位置が次のように導出される。Z’ZDPを使用すると、新しい射影行列が、ZnearおよびZfarの新しい値を使用して生成されることができる。図8は、本開示の技法を示す流れ図である。技法について、図2のシステム210に関連して説明するが、技法は、そのようなシステムに限定されない。現実画像ソース222が、キャプチャされた現実3D画像について、ゼロ視差平面までの距離を決定することができる810。MSSU245が、ゼロ視差平面までの距離に基づいて、射影行列に関する1つまたは複数のパラメータを決定することができる820。MSSU245が、ゼロ視差平面までの距離に基づいて、仮想画像に関する両眼間隔値も決定することができる830。射影行列と両眼間隔値とに少なくとも部分的に基づいて、仮想3Dオブジェクトがレンダリングされることができる840。上記で説明したように、射影行列の決定および仮想3Dオブジェクトのレンダリングは、ソースデバイス220など、ソースデバイスによって、または、宛先デバイス240など、宛先デバイスによって実行されることができる。MSSU245は、混合リアリティ3Dシーンを生成するために仮想3Dオブジェクトと現実3D画像とを組み合わせることができる850。混合リアリティシーンの生成は、ソースデバイスまたは宛先デバイスのいずれかによって同様に実行され得る。本開示の技法は、ワイヤレスハンドセット、および集積回路ICまたはICのセットすなわち、チップセットを含む、多種多様なデバイスまたは装置において具体化され得る。機能的態様を強調するために与えられた任意の構成要素、モジュールまたはユニットについて説明したが、異なるハードウェアユニットなどによる実現を必ずしも必要とするわけではない。したがって、本明細書で説明する技法は、ハードウェア、ソフトウェア、ファームウェア、またはそれの任意の組合せで実装され得る。モジュールまたは構成要素として説明する任意の機能は、集積論理デバイスに一緒に、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアで実装する場合、これらの技法は、プロセッサで実行されると、上記で説明した方法の1つまたは複数を実行する命令を備えるコンピュータ可読媒体によって、少なくとも部分的に実現され得る。コンピュータ可読媒体は、有形コンピュータ可読記憶媒体を備え得、パッケージング材料を含むことがあるコンピュータプログラム製品の一部を形成し得る。コンピュータ可読記憶媒体は、同期型ダイナミックランダムアクセスメモリSDRAMなどのランダムアクセスメモリRAM、読取り専用メモリROM、不揮発性ランダムアクセスメモリNVRAM、電気消去可能プログラマブル読取り専用メモリEEPROM、フラッシュメモリ、磁気または光学データ記憶媒体などを備え得る。本技法は、追加または代替として、命令またはデータ構造の形態でコードを搬送または通信し、コンピュータによってアクセス、読取り、および/または実行され得るコンピュータ可読通信媒体によって少なくとも部分的に実現され得る。コードは、1つまたは複数のデジタル信号プロセッサDSPなど、1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路ASIC、フィールドプログラマブル論理アレイFPGA、または他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用するプロセッサという用語は、前述の構造、または本明細書で説明する技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のソフトウェアモジュールまたはハードウェアモジュール内に提供され得、あるいは複合ビデオエンコーダ/デコーダコーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素中に十分に実装され得る。本開示の様々な態様について説明した。これらおよび他の態様は以下の特許請求の範囲内に入る。本開示の多くの態様について説明した。特許請求の範囲から逸脱することなく、様々な修正を行うことができる。これらおよび他の態様は以下の特許請求の範囲内に入る。"