(57)【特許請求の範囲】
【請求項１】
ビデオコーディングのためのコンピュータ実施方法であって、
パノラマビデオ及び関連するパノラママップを２Ｄデコーダによりデコードするステップであって、前記パノラマビデオ及び前記関連するパノラママップは、多重テクスチャビュー及びカメラパラメータに少なくとも部分的に基づいて生成されたものである、ステップと、
前記パノラマビデオ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄビデオを抽出するステップであって、前記パノラマビデオをマルチビューピクチャに分解し、前記分解されたマルチビューピクチャを、他のパノラマビデオのインターピクチャ予測のために参照バッファに挿入することを含む、ステップと
を含む、方法。
【請求項２】
前記３Ｄビデオの抽出は更に、
前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの対象領域を出力テクスチャビューにワープするステップと、
前記出力テクスチャビューに少なくとも部分的に基づいて、前記３Ｄビデオの左右のビューを決定するステップと、
前記決定された左右のビューに少なくとも部分的に基づいて、前記３Ｄビデオをユーザのビュープリファレンスで表示するステップと
を更に含む、請求項１に記載の方法。
【請求項３】
前記３Ｄビデオの抽出は更に、
ユーザ入力を受信するステップと、
前記ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及び前記パノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定するステップと、
前記ユーザのビュープリファレンスに少なくとも部分的に基づいて、仮想カメラをセットアップするステップと、
前記仮想カメラのカメラパラメータ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの前記対象領域を出力テクスチャビューにワープするステップと
を更に含む、請求項１に記載の方法。
【請求項４】
前記３Ｄビデオの抽出は更に、
ユーザ入力を受信するステップと、
前記ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及び前記パノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定するステップであって、該ユーザのビュープリファレンスは、対象ビューのビュー方向と、視点の位置と、視野とのうちの１つ又は複数により定義され得る、ステップと、
前記パノラマビデオにおける視点の位置と、視野と、決定されるビュー範囲とのうちの１つ又は複数に対する事前構成に少なくとも部分的に基づいて、仮想カメラをセットアップするステップと、
前記仮想カメラのカメラパラメータ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの前記対象領域を出力テクスチャビューにワープするステップと
を更に含む、請求項１に記載の方法。
【請求項５】
前記３Ｄビデオの抽出は更に、
前記パノラマビデオについてビューブレンドを実行するステップ
を更に含む、請求項１に記載の方法。
【請求項６】
前記３Ｄビデオの抽出は更に、
ユーザ入力を受信するステップと、
前記ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及び前記パノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定するステップであって、該ユーザのビュープリファレンスは、対象ビューのビュー方向と、視点の位置と、視野とのうちの１つ又は複数により定義され得る、ステップと、
前記パノラマビデオにおける視点の位置と、視野と、決定されるビュー範囲とのうちの１つ又は複数に対する事前構成に少なくとも部分的に基づいて、仮想カメラをセットアップするステップと、
前記パノラマビデオの前記対象領域が単一のテクスチャビューより多くのテクスチャビューに由来するものであるとき、前記パノラマビデオの前記対象領域についてビューブレンドを実行するステップであって、前記ビューブレンドは、ワープ又はエンコードに先行して行われる、ステップと、
前記仮想カメラのカメラパラメータ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの前記対象領域を出力テクスチャビューにワープするステップと、
前記出力テクスチャビューに少なくとも部分的に基づいて、前記３Ｄビデオの左右のビューを決定するステップと、
前記決定された左右のビューに少なくとも部分的に基づいて、前記３Ｄビデオをユーザのビュープリファレンスで表示するステップと、
を更に含む、請求項１に記載の方法。
【請求項７】
前記パノラマビデオ及び前記関連するパノラママップの生成は、
画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成するステップと、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成するステップと
を含む、請求項１に記載の方法。
【請求項８】
前記パノラマビデオ及び前記関連するパノラママップの生成は、
決定される投影行列及び決定されるピクセル対応に少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成するステップと、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成するステップと、
前記パノラマビデオ及び前記関連するパノラママップをエンコードするステップと
を含む、請求項１に記載の方法。
【請求項９】
前記パノラマビデオ及び前記関連するパノラママップの生成は、
前記多重テクスチャビューから主要特徴点によりピクセル座標をマッピングすることができる、ピクセル対応を決定するステップと、
カメラ外部パラメータ及びカメラ内部パラメータに少なくとも部分的に基づいて、投影行列を決定するステップと、
前記決定される投影行列及び／又は前記決定されるピクセル対応からの幾何学マッピングに少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成するステップと、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成するステップと、
前記パノラマビデオ及び前記関連するパノラママップをエンコードするステップと
を含む、請求項１に記載の方法。
【請求項１０】
前記パノラマビデオ及び前記関連するパノラママップの生成は、
前記多重テクスチャビューから主要特徴点によりピクセル座標をマッピングすることができる、ピクセル対応を決定するステップと、
カメラ外部パラメータを予想するステップであって、該カメラ外部パラメータは、複数のカメラ間の変換ベクトルと回転行列とのうちの１つ又は複数を備える、ステップと、
前記カメラ外部パラメータ及びカメラ内部パラメータに少なくとも部分的に基づいて、投影行列を決定するステップと、
前記決定される投影行列及び／又は前記決定されるピクセル対応からの幾何学マッピングに少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成するステップと、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成するステップと、
前記パノラマビデオ及び前記関連するパノラママップをエンコードするステップと
を含む、請求項１に記載の方法。
【請求項１１】
２Ｄエンコーダ側において：
前記多重テクスチャビューから主要特徴点によりピクセル座標をマッピングすることができる、ピクセル対応を決定するステップと、
カメラ外部パラメータを予想するステップであって、該カメラ外部パラメータは、複数のカメラ間の変換ベクトルと回転行列とのうちの１つ又は複数を備える、ステップと、
前記カメラ外部パラメータ及びカメラ内部パラメータに少なくとも部分的に基づいて、投影行列を決定するステップと、
前記決定される投影行列及び／又は前記決定されるピクセル対応からの幾何学マッピングに少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成するステップと、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成するステップと、
前記パノラマビデオ及び前記関連するパノラママップをエンコードするステップと
を更に含み、
２Ｄデコーダ側において、前記３Ｄビデオの抽出は更に：
ユーザ入力を受信するステップと、
前記ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及び前記パノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定するステップであって、該ユーザのビュープリファレンスは、対象ビューのビュー方向と、視点の位置と、視野とのうちの１つ又は複数により定義され得る、ステップと、
前記パノラマビデオにおける視点の位置と、視野と、決定されるビュー範囲とのうちの１つ又は複数に対する事前構成に少なくとも部分的に基づいて、仮想カメラをセットアップするステップと、
前記パノラマビデオの前記対象領域が単一のテクスチャビューより多くのテクスチャビューに由来するものであるとき、前記パノラマビデオの前記対象領域についてビューブレンドを実行するステップであって、前記ビューブレンドは、ワープ又はエンコードに先行して行われる、ステップと、
前記仮想カメラのカメラパラメータ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの前記対象領域を出力テクスチャビューにワープするステップと、
前記出力テクスチャビューに少なくとも部分的に基づいて、前記３Ｄビデオの左右のビューを決定するステップと、
前記決定された左右のビューに少なくとも部分的に基づいて、前記３Ｄビデオをユーザのビュープリファレンスで表示するステップと、
を更に含む、請求項１に記載の方法。
【請求項１２】
コンピュータにおけるビデオコーディングのためのシステムであって、
ビデオデータを提示するように構成されるディスプレイデバイスと、
前記ディスプレイデバイスに通信可能に結合される１つ又は複数のプロセッサと、
前記１つ又は複数のプロセッサに通信可能に結合される１つ又は複数のメモリストアと、
前記１つ又は複数のプロセッサに通信可能に結合され、パノラマビデオ及び関連するパノラママップをデコードするように構成される２Ｄデコーダであって、前記パノラマビデオ及び前記関連するパノラママップが、多重テクスチャビュー及びカメラパラメータに少なくとも部分的に基づいて生成されたものである、２Ｄデコーダと、
前記２Ｄデコーダに通信可能に結合され、前記パノラマビデオ及び前記関連するパノラママップに少なくとも部分的に基づいて３Ｄビデオを抽出するように構成される、３Ｄビデオ抽出論理モジュールと
を備え、
前記２Ｄデコーダは、前記パノラマビデオをマルチビューピクチャに分解し、前記分解されたマルチビューピクチャを、他のパノラマビデオのインターピクチャ予測のために参照バッファに挿入するように更に構成される、システム。
【請求項１３】
前記３Ｄビデオ抽出論理モジュールは更に、
前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの対象領域を出力テクスチャビューにワープし、
前記出力テクスチャビューに少なくとも部分的に基づいて、前記３Ｄビデオの左右のビューを決定する
ように構成され、
前記ディスプレイデバイスは更に、前記決定された左右のビューに少なくとも部分的に基づいて、前記３Ｄビデオをユーザのビュープリファレンスで表示するように構成される
請求項１２に記載のシステム。
【請求項１４】
前記３Ｄビデオ抽出論理モジュールは更に、
前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの対象領域を出力テクスチャビューにワープする
ように構成される、請求項１２に記載のシステム。
【請求項１５】
前記３Ｄビデオ抽出論理モジュールは更に、
ユーザ入力を受信し、
前記ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及び前記パノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定し、
前記ユーザのビュープリファレンスに少なくとも部分的に基づいて、仮想カメラをセットアップし、
前記仮想カメラのカメラパラメータ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの前記対象領域を出力テクスチャビューにワープする
ように構成される、請求項１２に記載のシステム。
【請求項１６】
前記３Ｄビデオ抽出論理モジュールは更に、
ユーザ入力を受信し、
前記ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及び前記パノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定することであって、該ユーザのビュープリファレンスは、対象ビューのビュー方向と、視点の位置と、視野とのうちの１つ又は複数により定義されることがあり、
前記パノラマビデオにおける視点の位置と、視野と、決定されるビュー範囲とのうちの１つ又は複数に対する事前構成に少なくとも部分的に基づいて、仮想カメラをセットアップし、
前記仮想カメラのカメラパラメータ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの前記対象領域を出力テクスチャビューにワープする
ように構成される、請求項１２に記載のシステム。
【請求項１７】
前記３Ｄビデオ抽出論理モジュールは更に、
前記パノラマビデオについてビューブレンドを実行する
ように構成される、請求項１２に記載のシステム。
【請求項１８】
前記３Ｄビデオ抽出論理モジュールは更に、
ユーザ入力を受信し、
前記ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及び前記パノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定することであって、該ユーザのビュープリファレンスは、対象ビューのビュー方向と、視点の位置と、視野とのうちの１つ又は複数により定義されることがあり、
前記パノラマビデオにおける視点の位置と、視野と、決定されるビュー範囲とのうちの１つ又は複数に対する事前構成に少なくとも部分的に基づいて、仮想カメラをセットアップし、
前記パノラマビデオの前記対象領域が単一のテクスチャビューより多くのテクスチャビューに由来するとき、前記パノラマビデオの前記対象領域についてビューブレンドを実行することであって、前記ビューブレンドは、ワープに先行して又はエンコードに先行して行われる、ステップと、
前記仮想カメラのカメラパラメータ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの前記対象領域を出力テクスチャビューにワープし、
前記出力テクスチャビューに少なくとも部分的に基づいて、前記３Ｄビデオの左右のビューを決定する
ように構成され、
前記ディスプレイデバイスは更に、前記決定された左右のビューに少なくとも部分的に基づいて、前記３Ｄビデオをユーザのビュープリファレンスで表示するように構成される、
請求項１２に記載のシステム。
【請求項１９】
パノラマ生成論理モジュールを更に備え、該パノラマ生成論理モジュールは、
画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成し、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成する
ように構成される、請求項１２に記載のシステム。
【請求項２０】
パノラマ生成論理モジュールを更に備え、該パノラマ生成論理モジュールは、
決定される投影行列及び決定されるピクセル対応に少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成し、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成する
ように構成され、
当該システムは、前記パノラマビデオ及び前記関連するパノラママップをエンコードするように構成される２Ｄエンコーダ
を更に備える、請求項１２に記載のシステム。
【請求項２１】
パノラマ生成論理モジュールを更に備え、該パノラマ生成論理モジュールは、
前記多重テクスチャビューから主要特徴点によりピクセル座標をマッピングすることができる、ピクセル対応を決定し、
カメラ外部パラメータ及びカメラ内部パラメータに少なくとも部分的に基づいて、投影行列を決定し、
前記決定される投影行列及び／又は前記決定されるピクセル対応からの幾何学マッピングに少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成し、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成する
ように構成され、
当該システムは、前記パノラマビデオ及び前記関連するパノラママップをエンコードする２Ｄエンコーダ
を更に備える、請求項１２に記載のシステム。
【請求項２２】
パノラマ生成論理モジュールを更に備え、該パノラマ生成論理モジュールは、
前記多重テクスチャビューから主要特徴点によりピクセル座標をマッピングすることができる、ピクセル対応を決定し、
カメラ外部パラメータを予想することであって、該カメラ外部パラメータは、複数のカメラ間の変換ベクトルと回転行列とのうちの１つ又は複数を備え、
前記カメラ外部パラメータ及びカメラ内部パラメータに少なくとも部分的に基づいて、投影行列を決定し、
前記決定される投影行列及び／又は前記決定されるピクセル対応からの幾何学マッピングに少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、前記多重テクスチャビューから前記パノラマビデオを生成し、
前記多重テクスチャビューと前記パノラマビデオとの間のピクセル座標を、前記多重テクスチャビューから前記パノラマビデオへの透視投影としてマッピングすることができる前記関連するパノラママップを生成する
ように構成され、
当該システムは、前記パノラマビデオ及び前記関連するパノラママップをエンコードする２Ｄエンコーダ
を更に備え、
前記３Ｄビデオ抽出論理モジュールは更に、
ユーザ入力を受信し、
前記ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及び前記パノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定することであって、該ユーザのビュープリファレンスは、対象ビューのビュー方向と、視点の位置と、視野とのうちの１つ又は複数により定義されることがあり、
前記パノラマビデオにおける視点の位置と、視野と、決定されるビュー範囲とのうちの１つ又は複数に対する事前構成に少なくとも部分的に基づいて、仮想カメラをセットアップし、
前記パノラマビデオの前記対象領域が単一のテクスチャビューより多くのテクスチャビューからのものであるとき、前記パノラマビデオの前記対象領域についてビューブレンドを実行することであって、前記ビューブレンドは、ワープ又はエンコードに先行して行われ、
前記仮想カメラのカメラパラメータ及び前記関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により前記パノラマビデオの前記対象領域を出力テクスチャビューにワープし、
前記出力テクスチャビューに少なくとも部分的に基づいて、前記３Ｄビデオの左右のビューを決定する
ように構成され、
前記ディスプレイデバイスは更に、前記決定された左右のビューに少なくとも部分的に基づいて、前記３Ｄビデオをユーザのビュープリファレンスで表示するように構成される、
請求項１２に記載のシステム。
【請求項２３】
コンピューティングデバイスにおいて実行されたことに応答して、該コンピューティングデバイスに、請求項１乃至１１のいずれか１項に記載の方法を実行させるコンピュータプログラム。
【請求項２４】
請求項２３に記載のコンピュータプログラムを記憶する、少なくとも１つのマシン読取可能媒体。
【請求項２５】
請求項１乃至１１のいずれか１項に記載の方法を実行するための手段
を備える、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パノラマベースの３Ｄビデオコーディングに関する。
【背景技術】
【０００２】
ビデオエンコーダはビデオ情報を圧縮するので、より多くの情報を、所与の帯域幅を介して送信することができる。圧縮された信号はその後、受信機に送信され、該受信機は、表示する前に信号をデコードするか圧縮解除する。
【０００３】
３Ｄビデオは、従来の２Ｄビデオよりも豊富なビジュアル経験を提示することができる、新たな媒体となってきている。潜在的な用途には、自由視点ビデオ（ＦＶＶ；free-viewpoint  video）、自由視点テレビ（ＦＶＴ：free-viewpoint  television）、３Ｄテレビ（３ＤＴＶ）、ＩＭＡＸシアター、没入型テレビ会議、監視装置等が含まれる。これらの用途をサポートするために、ビデオシステムは典型的に、異なる視点からシーンをキャプチャし、その結果、幾つかのビデオシーケンスを異なるカメラから同時に生成することになる。
【０００４】
３Ｄビデオコーディング（３ＤＶＣ）は、様々な３Ｄディスプレイの供給を対象とする、新たなビデオ圧縮規格を指す。３ＤＶＣは、ＩＳＯ／ＩＥＣ  ＭＰＥＧ（Moving  Picture  Expert  Group）により開発中である。現在、３ＤＶＣの分岐規格の１つが、最近標準化されたビデオコーディング規格、すなわちＨＥＶＣ（High  Efficient  Video  Coding）に基づいて構築されており、ＨＥＶＣは２０１２年の末までにまとめられるよう計画されている。３ＤＶＣの他の分岐は、Ｈ２６４／ＡＶＣに基づいて構築されている。
【０００５】
ＩＳＯ／ＩＥＣ  ＭＰＥＧは現在、３Ｄビデオコーディング（３ＤＶＣ）の標準化に取り組んでいる。新たな３ＤＶＣ規格は、限られた量の入力データから、多くの高品質のビューの生成を可能にする可能性が高いであろう。例えばマルチビュービデオプラス深度（ＭＶＤ：Multiview  Video  plus  Depth）の概念が、そのような高品質のビューを限られた量の入力データから生成するのに使用されることがある。さらに、３ＤＶＣは、進化した立体処理機能に用いられることがあり、ユーザが３Ｄディスプレイの前で位置を自由に変えつつ、３Ｄ視覚の経験を体感するのを可能にする、自動立体ディスプレイ及びＦＴＶをサポートすることができる。
【０００６】
概して、マルチビュービデオプラス深度（ＭＶＤ）の概念には、ＦＴＶ機能、マルチビュービデオ及び関連付け深度マップ情報をサポートする、２つの主なコンポーネントがある。そのようなマルチビュービデオは典型的に、多くのカメラによって、異なる視点からキャプチャされるシーンを指す。上記の関連付け深度マップ情報は典型的に、シーン内の物体がカメラからどのくらい離れているかを伝える深度マップに関連付けられる、それぞれのテクスチャのビューを指す。マルチビュービデオ及び深度情報から、任意の視点において仮想ビューを生成することができる。
【０００７】
マルチビュービデオプラス深度（ＭＶＤ）の概念はしばしば、３Ｄビデオコンテンツを表すのに使用され、そのコンテンツ内において、複数のビュー及び関連する深度マップが符号されてビットストリームにマルチプレクサされる。また、各ビューのカメラパラメータは典型的に、ビューの同期のために、ビットストリーム内にパッケージされる。これらのビューのうち、典型的にベースビュー又は独立ビューと呼ばれることもあるビューは、典型的に他のビューとは独立にコード化される。従属ビューでは、ビデオ及び深度が、他のビューのピクチャ又は同じビュー内の以前にコード化されたピクチャから予測され得る。具体的な適用によると、サブビットストリームが、不必要なビットストリームのパケットを破棄することにより、デコーダ側で抽出され得る。
【０００８】
本明細書で説明される題材は、限定ではなく例示のために、添付の図面において図示される。図面の簡潔性及び明瞭性のために、図面内に示される要素は、必ずしもスケーリングして描かれていない。例えば一部の要素の寸法は、明瞭性のために、他の要素に対して誇張されることがある。さらに、適切であると考えられる場合、参照ラベルが、対応又は類似する要素を示すのに図面内で繰り返し用いられている。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
一部の場合において、従来的な３Ｄビデオ圧縮コーディングでは、２つ又は３つのビュー及び関連する深度マップが、ビットストリームにコード化されて、様々な３Ｄビデオアプリケーションをサポートし得る。デコーダ側において、ある視点で仮想的に同期化されたビューが、深度画像に基づくレンダリング技術を使用することによって生成され得る。従来の２Ｄビデオエンコーダ／デコーダとの後方互換性のために、３Ｄビデオの１つのビューが独立のビューとしてマークされることがあり、これは、従来の２Ｄエンコーダ／デコーダを使用して独立にコード化されなければならない。独立のビューに加えて、他のビューは、インタービューの冗長性を露呈するインタービュー予測だけでなく、同じビューにおける空間的及び時間的冗長性を露呈するイントラビュー予測も可能にする従属ビューであってもよい。しかしながら、大量の３Ｄビデオデータは、単一のビュービデオと比べて、必要とされる帯域幅が急増する。したがって、３Ｄビデオデータをより効果的に圧縮する必要がある。
【課題を解決するための手段】
【００１０】
パノラマベースの３Ｄビデオコーディングのための動作を含む、システム、装置、製品及び方法が以下で説明される。
【図面の簡単な説明】
【００１１】
【図１】本開示の少なくとも一部の実施形態に従って配置される、例示の３Ｄビデオコーディングシステムを示す図である。
【図２】本開示の少なくとも一部の実施形態に従って配置される、例示の３Ｄビデオコーディングシステムを示す図である。
【図３】本開示の少なくとも一部の実施形態に従って配置される、例示の３Ｄビデオコーディング処理を示すフローチャートである。
【図４】本開示の少なくとも一部の実施形態に従って配置される、例示の３Ｄビデオコーディング処理をおける動作を示す図である。
【図５】本開示の少なくとも一部の実施形態に従って配置される、例示の３Ｄビデオコーディングの流れに基づく例示のパノラマを示す図である。
【図６】本開示の少なくとも一部の実施形態に従って配置される、例示の３Ｄビデオコーディングシステムを示す図である。
【図７】本開示の少なくとも一部の実施形態に従って配置される、例示のシステムを示す図である。
【図８】本開示の少なくとも一部の実施形態に従って配置される、例示のシステムを示す図である。
【発明を実施するための形態】
【００１２】
ここから、１つ又は複数の実施形態又は実装を、添付の図面を参照して説明する。具体的な構成及び配置を検討するが、これは単に例示の目的でなされることを理解されたい。当業者には、本開示の精神及び範囲から逸脱することなく、他の構成及び配置を用いてもよいことが認識されよう。当業者には、本明細書で説明される技術及び／又は配置を、本明細書で説明されるもの以外の様々な他のシステム及び用途に用いてもよいことが認識されよう。
【００１３】
以下の記載では、例えばシステムオンチップ（ＳｏＣ）アーキテクチャのようなアーキテクチャにおいて宣言され得る様々な実装を説明するが、説明される技術及び／又は配置の実装は、特定のアーキテクチャ及び／又はコンピューティングシステムに限定されず、同様の目的の如何なるアーキテクチャ及び／又はコンピューティングシステムによって実装されてもよい。例えば複合集積回路（ＩＣ）チップ及び／若しくはパッケージ、並びに／又はセットトップボックス、スマートフォン等の様々なコンピューティングデバイス及び／若しくは家庭用電気（ＣＥ）デバイスを用いる様々なアーキテクチャが、本明細書で説明される技術及び／又は配置を実装してもよい。さらに、以下の説明では、論理実装、システムコンポーネントのタイプ及び相互関係、ロジックの分割／統合の選択等のような多くの具体的な詳細を説明することがあるが、特許請求に係る主題は、そのような具体的な詳細を用いずに実施されてもよい。他の場合において、例えば制御構造及び完全なソフトウェア命令シーケンスのような一部の題材は、本明細書で開示され題材を曖昧にしないために詳細には示されていないことがある。
【００１４】
本明細書で開示される題材は、ハードウェア、ファームウェア、ソフトウェア又は任意の組み合わせで実装され得る。本明細書で開示される題材は、マシン読取可能媒体に格納される命令として実装されてもよく、これらの命令は、１つ又は複数のプロセッサによって読み取られて実行され得る。マシン読取可能な媒体は、マシン（例えばコンピューティングデバイス）によって読取可能な形式で情報を格納又は伝送するための任意の媒体及び／又は機構を含んでよい。例えばマシン読取可能な媒体は、読取専用メモリ（ＲＯＭ）；ランダムアクセスメモリ（ＲＡＭ）；磁気ディスク記憶媒体；光記憶媒体；フラッシュメモリデバイス；電子、光、音響又は他の形式の伝搬信号（例えば搬送波、赤外線信号、デジタル信号等）及び他のものを含んでよい。
【００１５】
本明細書において、「一実装」、「実装」、「例示の実装」等への言及は、説明される実装が特定の特徴、構造又は特性を含み得るが、必ずしも全ての実装がその特定の特徴、構造又は特性を含まなくてもよい。さらに、そのようなフレーズは、必ずしも同じ実装を指していないことがある。さらに、特定の特徴、構造又は特性は、ある実装との関連で説明されるが、明示的に説明されるか否かに関わらず、そのような特徴、構造又は特性が他の実装との関連で達成されることは当業者の知識内である。
【００１６】
以下では、パノラマベースの３Ｄビデオコーディングのための動作を含む、システム、装置、製品及び方法を説明する。
【００１７】
説明されるように、一部の場合において、従来的な３Ｄビデオ圧縮コーディングでは、２つ又は３つのビュー及び関連する深度マップが、ビットストリームにコード化されて、様々な３Ｄビデオアプリケーションをサポートし得る。デコーダ側において、ある視点で仮想的に同期化されたビューが、深度画像に基づくレンダリング技術を使用することによって生成され得る。従来の２Ｄビデオエンコーダ／デコーダとの後方互換性のために、３Ｄビデオの１つのビューが独立のビューとしてマークされることがあり、これは、従来の２Ｄエンコーダ／デコーダを使用して独立にコード化されなければならない。独立のビューに加えて、他のビューは、インタービューの冗長性を用いるインタービュー予測だけでなく、同じビューにおける空間的及び時間的冗長性を用いるイントラビュー予測も可能にする従属ビューであってもよい。しかしながら、大量の３Ｄビデオデータは、単一のビュービデオと比べて、必要とされる帯域幅が急増する。したがって、３Ｄビデオデータをより効果的に圧縮する必要がある。
【００１８】
以下でより詳細に説明されるように、３Ｄビデオコーディングのための動作は、パノラマベースの３Ｄビデオコーディング方法を用いてよく、この方法は、一部の実施形態において、従来の２Ｄビデオコーダと完全に互換性がある可能性がある。複数ビューのシーケンス及び関連する深度マップのシーケンスをコード化する代わりに、パノラマビデオシーケンス及びパノラママップのみがコード化されて、伝送され得る。さらに、いずれかの任意の視野を、そのようなパノラマシーケンスから抽出することができ、いずれかの中間の視点における３Ｄビデオを直接導出することができる。そのようなパノラマベースの３Ｄビデオコーディングは、３Ｄビデオコーディングシステムのコード化効率及び柔軟性を改善することがある。
【００１９】
図１は、本開示の少なくとも一部の実装に従って配置される、例示の３Ｄビデオコーディングシステム１００を示す図である。図示される実装において、３Ｄビデオコーディングシステム１００は、１つ又は複数のタイプのディスプレイ（例えばＮビューディスプレイ１４０、立体ディスプレイ１４２、２Ｄディスプレイ１４４等）、１つ又は複数の画像化デバイス（図示せず）、３Ｄビデオエンコーダ１０３、３Ｄビデオデコーダ１０５、立体ビデオデコーダ１０７、２Ｄビデオデコーダ１０９及び／又はビットストリーム抽出器１１０を含んでよい。
【００２０】
一部の例において、３Ｄビデオコーディングシステム１００は、明瞭性の目的で図１には図示されていない追加のアイテムを含んでもよい。例えば３Ｄビデオコーディングシステム１００は、プロセッサ、無線周波数型（ＲＦ）トランシーバ及び／又はアンテナを含み得る。さらに、３Ｄビデオコーディングシステム１００は、明瞭性の目的で図１には図示されていないスピーカ、マイクロフォン、加速度計、メモリ、ルータ、ネットワークインタフェースロジック等のような追加のアイテムを含んでもよい。
【００２１】
本明細書で使用されるとき、「コーダ」という用語は、エンコーダ及び／又はデコーダを指すことがある。同様に、本明細書で使用されるとき、「コード化／コーディング」という用語は、エンコーダによるエンコード及び／又はデコーダによるデコードを指すことがある。例えば３Ｄビデオエンコーダ１０３及び３Ｄビデオデコーダ１０５は双方とも、３Ｄコーディングの能力を有するコーダの例示であり得る。
【００２２】
一部の例において、送信機１０２は、複数のビューを複数の画像化デバイス（図示せず）から受信することがある。３Ｄエンコーダ１０３の入力信号は、複数のビュー（例えばビデオピクチャ１１２及び１１３）、関連する深度マップ（例えば深度マップ１１４及び１１５）及び対応するカメラパラメータ（図示せず）を含んでよい。しかしながら、３Ｄビデオコーディングシステム１００は、深度データを必要とせずに動作することも可能である。入力コンポーネント信号は、３Ｄビデオエンコーダ１０３を使用してビットストリームへコード化され、３Ｄビデオエンコーダ１０３において、基本のビューが、２Ｄビデオエンコーダ、例えばＨ２６４／ＡＶＣエンコーダ又はＨＥＶＣエンコーダを使用してコード化され得る。ビットストリーム抽出器１１０からのビットストリームが、３Ｄビデオデコーダ１０５を使用する３Ｄ受信機１０４によってデコードされる場合、ビデオ（例えばビデオピクチャ１１６及び１１７）、深度データ（例えば深度マップ１１８及び１１９）及び／又はカメラパラメータ（図示せず）が、所与の忠実性により再構築され得る。
【００２３】
他の例では、ビットストリーム抽出器１１０からのビットストリームが、３Ｄビデオを自動立体ディスプレイ（例えば立体ディスプレイ１４２）上に表示するために立体受信機１０６によってデコードされる場合、追加の中間ビュー（例えば２つのビューピクチャ１２０及び１２１）が、再構築されたビュー及び深度データを使用して、ＤＩＢＲ（Depth-Image-Based  Rendering）アルゴリズムによって生成され得る。３Ｄビデオエンコーダ１０３が、従来型の立体ディスプレイ（例えば立体ディスプレイ１４２）に接続されると、立体ビューの対が、ビットストリーム抽出器１１０からのビットストリーム内に実際に提示されない場合、中間ビュー合成器１３０は、１対の立体ビューを生成してもよい。
【００２４】
更なる例では、ビットストリーム抽出器１１０からのビットストリームが、２Ｄ受信機１０８によってデコードされる場合、デコードされたビューの１つ（例えば独立のビューピクチャ１２２）又は任意の仮想カメラ位置における中間のビューが、従来の２Ｄディスプレイ（例えば２Ｄディスプレイ１４４）上で単一のビューを表示するために使用されてもよい。
【００２５】
自動立体ディスプレイのための典型的な３ＤＶシステムの例が、図１として示されている。エンコーダの入力信号は、多重テクスチャビュー（multiple  texture  view）、関連する複数の深度マップ及び対応するカメラパラメータで構成されてよい。入力データは、多重テクスチャビューのみとすることも可能であることに留意されたい。コード化された３Ｄビデオビットストリームが受信機側で受信されると、多重テクスチャビュー、関連する複数の深度マップ及び対応するカメラパラメータを、３Ｄビデオデコーダを通して十分に再構築することができる。３Ｄビデオを自動立体ディスプレイ上に表示するために、追加の中間ビューが、再構築されたテクスチャビュー及び深度マップを使用して、ＤＩＢＲ技術により生成される。
【００２６】
図２は、本開示の少なくとも一部の実装に従って配置される、例示の２Ｄビデオコーディングシステム２００を示す図である。図示される実装において、２Ｄビデオコーディングシステム２００は、パノラマベースのビデオコーディングのための動作を実装してよい。
【００２７】
以下で更に詳細に説明されるように、パノラマビデオ２１０は、ビデオピクチャビュー１１２、１１３からのビデオコンテンツを含んでよく、パノラマビデオ２１０は、画像ステッチ及びパノラママップ生成モジュール２０７により画像ステッチアルゴリズムを使用することによって生成され得る。複数のビデオピクチャビュー１１２、１１３のビデオデータを、パラレルのカメラアレイ又はアークカメラアレイのいずれかによってキャプチャすることができることに留意されたい。
【００２８】
パノラママップ２１２は、生の各画像を、パノラマビデオ２１０内のある領域にマップする一連の透視射影行列（perspective  projection  matrix）、カメラビュー間の射影行列及びカメラ画像間のピクセル対応（例えば６〜７ピクセルの対応）を含み得る。逆のマップは、パノラマビデオ２１０からカメラビュー（例えば生の画像又は同期されたビュー）までのマップを実現する。パノラママップ２１２が、画像ステッチ及びパノラママップ生成モジュール２０７を介して、各ビデオピクチャビュー１１２〜１１３とパノラマビデオ２１０との間の安定ピクセルポイント対応（例えば６〜７個の安定ピクセルポイント）及びカメラ内部／外部パラメータ２０１〜２０２によって構築され得る。画像を混合して、露出の差分及び照明変化やゴースト現象のような他の不整合を補償するために、パノラマの対象領域が幾つかの異なる生の画像に由来するものであるとき、その対象領域についてビューブレンド技術を実行してもよい。ビューブレンドは、２Ｄビデオエンコーダ２０３の前に送信機側に置かれるか、３Ｄワープ及び／又はビューブレンドモジュール２１７による３Ｄワープ技術の一部のように２Ｄビデオデコーダ２０５の後に受信機側に置かれる可能性がある。ビューブレンドが送信機側に置かれる場合、その計算は、パノラマビデオ２１０の生成後、２Ｄビデオエンコーダ２０３の前に処理され得る。一方、ビューブレンドが受信機側に置かれる場合、その計算は、パノラマビデオ２１０の生成の後、３Ｄワープ及び／又はビューブレンドモジュール２１７による３Ｄワープの前に処理されることになる。
【００２９】
２Ｄビデオコーディングシステム２００は、ＭＰＥＧ−２、Ｈ２６４／ＡＶＣ、ＨＥＶＣ等のような典型的な２Ｄビデオエンコーダ２０３を使用して、パノラマビデオ２１０をエンコードしてもよく、パノラママップ２１２は、ＭＰＥＧ−２ユーザデータシンタックス、Ｈ２６４／ＡＶＣ  ＳＥＩシンタックス又はＨＥＶＣ  ＳＥＩシンタックスを通してコード化されて、伝送される可能性がある。
【００３０】
３Ｄ受信機１０４において、パノラマビデオ２１０及びパノラママップ２１２を、対応する２Ｄビデオデコーダ２０５によって完全に再構築することができる。次いで、任意のビュービデオが、いずれかの中間の視聴位置において、３Ｄワープ及び／又はビューブレンドモジュール２１７により３Ｄワープ技術を使用して生成される可能性がある。例えば自動立体ビデオをディスプレイ１４０上に表示することができ、ユーザ２０２は、該ユーザがどの視点を望むかを示す入力を供給してよい。指示された視点に応答して、任意のビュービデオが、いずれかの中間の視聴位置において、３Ｄワープ及び／又はビューブレンドモジュール２１７により３Ｄワープ技術を通して生成され得る。結果として、自動立体ビデオを取得することができる。複数のビューの入力フィールド内の任意のビューのランダムアクセスが、２Ｄビデオコーディングシステム２００のパノラマベースの３Ｄビデオコーディングによって効率的に達成され得る。
【００３１】
以下で更に詳細に検討されるように、３Ｄビデオコーディングシステム２００を使用して、図３及び／又は図４に関連して以下で検討される様々な機能の一部又は全てを実行してもよい。
【００３２】
図３は、本開示の少なくとも一部の実装に従って配置される、例示の２Ｄビデオコーディングプロセス３００を示すフローチャートである。図示された実装では、プロセス３００は、ブロック３０２及び／又は３０４のうちの１つ又は複数によって示されるような１つ又は複数の動作、機能又はアクションを含んでもよい。非限定的な例として、本明細書では、処理３００を、図２及び／又は図６の例示の２Ｄビデオコーディングシステム２００との関連で説明することにする。
【００３３】
処理３００は、コンピュータにより実施される、パノラマベースの３Ｄビデオコーディングのための方法として用いられてよい。処理３００は、ブロック３０２「多重テクスチャビュー及びカメラパラメータに少なくとも部分的に基づいて生成されたパノラマビデオ及びパノラママップをデコードする」で開始し、ここで、パノラマビデオ及びパノラママップがデコードされ得る。例えば多重テクスチャビュー及びカメラパラメータに少なくとも部分的に基づいて生成されたパノラマビデオ及びパノラママップが、２Ｄデコーダ（図示せず）によりデコードされてよい。
【００３４】
処理は、動作３０２から動作３０４「生成されたパノラマビデオに少なくとも部分的に基づいて３Ｄビデオを抽出する」に続き、ここで、３Ｄビデオが抽出され得る。例えば３Ｄビデオは、生成されたパノラマビデオ及び関連するパノラママップに少なくとも部分的に基づいて抽出されてよい。
【００３５】
プロセス３００に関連する幾つかの追加的及び／又は代替的な詳細は、図４に関連して以下で更に詳細に検討される実装の１つ又は複数の例において説明され得る。
【００３６】
図４は、本開示の少なくとも一部の実装に従って配置される、例示の２Ｄビデオコーディングシステム２００及び３Ｄビデオコーディングプロセス４００の動作を示す図である。図示される実装において、プロセス４００は、アクション４１２、４１４、４１６、４１８、４２０、４２２、４２４、４２６、４２８、４３０、４３２、４３４及び／又は４３６のうちの１つ又は複数によって示されるような、１つ又は複数の動作、機能又はアクションを含んでよい。非限定的な例として、本明細書では、プロセス４００を、図２及び／又は図６の例示の２Ｄビデオコーディングシステム２００との関連で説明することにする。
【００３７】
図示される実装において、２Ｄビデオコーディングシステム２００は、論理モジュール４０６及び同様のもの等並びに／又はその組合せを含んでよい。例えば論理モジュール４０６は、パノラマ生成論理モジュール４０８、３Ｄビデオ抽出論理モジュール４１０及び同様のもの等並びに／又はその組み合わせを含んでよい。図４に示されるように、３Ｄビデオコーディングシステム１００は、特定のモジュールに関連付けられるブロック又はアクションのある特定のセットを含み得るが、これらのブロック又はアクションは、ここに図示されている特定のモジュールと異なるモジュールに関連付けられてもよい。
【００３８】
プロセス４００は、ブロック４１２「ピクセル対応を決定する」で開始し、ここで、ピクセル対応が決定され得る。例えば２Ｄエンコーダ側において、主要特徴点（key  point  feature）を通じて多重テクスチャビューからピクセル座標をマッピングすることができるピクセル対応が決定され得る。
【００３９】
一部の例において、マルチビュービデオ及びカメラパラメータを使用することによる事前処理中に、ピクセル対応（例えば数学的関係）が確立され得る。そのようなピクセル対応は、例えばＳＵＲＦ（Speeded  Up  Robust  Feature）又はSIFT(Scale-Invariant  Feature  Transform)のような主要特徴点のマッチングにより予測され得る。
【００４０】
例示されるように、プロセス４００はデコードを対象としているが、説明した概念及び／又は動作は、同じ又は同様の手法により、エンコードを含め、一般的なコード化に適用されてもよい。
【００４１】
処理は、動作４１２から動作４１４「カメラ外部パラメータを予測する」に続き、ここで、カメラ外部パラメータが予測され得る。カメラ外部パラメータは、複数のカメラの間の変換ベクトル及び回転行列及び／又はその組み合わせのうちの１つ又は複数を含んでよい。
【００４２】
処理は、動作４１４から動作４１６「射影行列を決定する」に続き、ここで、射影行列が決定され得る。例えば射影行列は、カメラ外部パラメータ及びカメラ内部パラメータに少なくとも部分的に基づいて決定され得る。
【００４３】
一部の例では、射影行列Ｐが、カメラ内部パラメータ（予め与えられる）とカメラ外部パラメータ（例えば回転行列Ｒと変換ベクトルｔ）から、次の式で示されるように確立され得る：Ｐ＝Ｋ［Ｒ，ｔ］、ここで、Ｋは、カメラ行列であり、カメラのスケーリング係数とカメラの光学中心を含む。射影行列は、３Ｄシーンからカメラビュー（例えば生の画像）へマップしてよい。
【００４４】
処理は、動作４１６から動作４１８「パノラマビデオを生成する」に続き、ここで、パノラマビデオが生成され得る。例えばパノラマビデオは、多重テクスチャビューから、画像ステッチアルゴリズムを介して、決定された射影行列及び／又は決定されたピクセル対応からの幾何学マッピングに少なくとも部分的に基づいて生成され得る。
【００４５】
一部の例において、多重テクスチャビューは、パラレルカメラアレイ、アークカメラアレイ等及び／又はその組み合わせのような、様々なカメラのセットアップ方法によってキャプチャされてよい。そのような例において、パノラマビデオは、円筒型のパノラマであっても、球型のパノラマであってもよい。
【００４６】
処理は、動作４１８から動作４２０「関連するパノラママップを生成する」に続き、ここで、関連するパノラママップが生成され得る。例えば関連するパノラママップが生成され、該関連するパノラママップは、多重テクスチャビューとパノラマビデオの間のピクセル座標を、多重テクスチャビューからパノラマ画像への透視射影としてマッピングすることができる。
【００４７】
処理は、動作４２０から動作４２２「パノラマビデオ及び関連するパノラママップをエンコードする」に続き、ここで、パノラマビデオ及び関連するパノラママップがエンコードされ得る。例えばパノラマビデオ及び関連するパノラママップは、２Ｄエンコーダ（図示せず）によりエンコードされてよい。
【００４８】
処理は、動作４２２から動作４２４「パノラマビデオ及び関連するパノラママップをデコードする」に続き、ここで、パノラマビデオ及び関連するパノラママップがデコードされ得る。例えばパノラマビデオ及び関連するパノラママップは、２Ｄデコーダ（図示せず）によりデコードされてよい。
【００４９】
一部の例では、従来的な２Ｄビデオエンコーダ／デコーダシステムを使用して、パノラマビデオ及びパノラママップをコード化してもよい。生成されるパノラマビデオは、例えばＭＰＥＧ−２、Ｈ．２６４／ＡＶＣ、ＨＥＶＣ又は他の２Ｄビデオエンコーダでコード化され得る。一方、生成されるパノラママップは、ＭＰＥＧ−２ユーザデータシンタックス、Ｈ．２６４／ＡＶＣ  ＳＥＩシンタックステーブル、ＨＥＶＣ  ＳＥＩシンタックステーブルを通して、コード化されてデコーダに伝送され得る。パノラママップは、カメラビュー間の射影行列、カメラ画像間のピクセル対応（例えば６〜７）及び生の画像からパノラマビデオへの透視射影行列を含んでよい。この場合、生成される３Ｄビットストリームは、従来の２Ｄビデオコーディング規格と互換性があり得る。したがって、３Ｄ出力は、３Ｄビデオエンコーダ／デコーダシステムの必要性なしに、ユーザに提示され得る。
【００５０】
処理は、動作４２４から動作４２６「ユーザ入力を受信する」に続き、ここで、ユーザ入力が受信され得る。例えばユーザは、パノラマビューのどの部分に関心があるかに関する入力を提供してもよい。一部の例では、受信機側において、いずれか任意の視点のビデオが、２Ｄビデオデコーダによって選択的にデコードされ得る。一部の例では、そのようなユーザ入力は、視野や焦点距離等のようなカメラ内部パラメータ及び／又は元のマルチビュービデオ内の既存のカメラに関する外部パラメータを示してよい。例えばパノラマ内の第１のカメラに対する回転及び変換である。
【００５１】
処理は、動作４２６から動作４２８「ユーザのビュープリファレンスを決定する」に続き、ここで、ユーザのビュープリファレンスが決定され得る。例えばユーザのビュープリファレンスは、いずれか任意の対象のビュー及びパノラマビデオの関連する対象領域において、少なくとも部分的にユーザ入力に基づいて決定され得る。ユーザのビュープリファレンスは、次の基準のうちの１つ又は複数、すなわち対象のビューのビュー方向、視点の位置、視野等及び／又はこれらの組み合わせ、のうちの１つ又は複数により定義されてもよい。
【００５２】
処理は、動作４２８から動作４３０「仮想カメラをセットアップする」に続き、ここで、仮想カメラがセットアップされ得る。例えば仮想カメラは、次の基準のうちの１つ又は複数、すなわち、パノラマビデオにおける視点の位置、視野及び決定されたビュー範囲、のうちの１つ又は複数に対する予測構成に少なくとも部分的に基づいて、セットアップされ得る。
【００５３】
処理は、動作４３０から動作４３２「ビューブレンドを実行する」に続き、ここで、ビューブレンドが実行され得る。例えばビューブレンドは、パノラマビデオの対象領域が、単一テクスチャビューよりも多くのビューに由来するものであるときに、その対象領域に対して実行され得る。一部の例において、そのようなビューブレンドは、図４に示されるようにワープの前に起こる。あるいは、そのようなビューブレンドは、動作４２２におけるエンコードの前に起こってもよい。
【００５４】
処理は、動作４３２から動作４３４「出力テクスチャビューにワープする」に続き、ここで、ワープが行われて、出力テクスチャビューが生成され得る。例えばパノラマビデオの対象領域が、３Ｄワープ技術により、仮想カメラのカメラパラメータ及び関連するパノラママップに少なくとも部分的に基づいて、出力テクスチャビューにワープされ得る。
【００５５】
処理は、動作４３４から動作４３６「左右のビューを決定する」に続き、ここで、左右のビューが決定され得る。例えば左右のビューは、３Ｄビデオのために出力テクスチャビューに少なくとも部分的に基づいて決定され得る。したがって、視聴者に、現実的な３Ｄシーンの知覚を任意の視点で提供するため、そのような左のビューと右のビューが導出されて、次いで各目に対して同時に提示され得る。
【００５６】
３Ｄビデオは、ユーザのビュープリファレンスにより、決定された左右のビューに少なくとも部分的に基づいて３Ｄディスプレイ（図示せず）を介して表示され得る。
【００５７】
あるいはまた、以下で図５に関連して更に詳細に説明されるように、他のパノラマビデオのインターピクチャ予測を、少なくとも部分的に出力テクスチャビューに基づいて実行してもよい。例えば修正した２Ｄビデオコーダは、コード化されたパノラマビデオを多重ビューピクチャへと分解してもよく、次いで、分解された多重ビューピクチャが、他のパノラマピクチャのインター予測のための参照バッファに挿入される可能性がある。そのような例では、インループ分解モジュールは、例えばパノラマビデオ及びパノラママップから追加の参照フレームを生成することにより、コード化効率を改善することが可能である。
【００５８】
動作において、プロセス４００（及び／又はプロセス３００）は、パノラマベースのビデオコーディングを実行して、３Ｄビデオコーデック及び／又はマルチビュービデオコーデックのコード化効率のような、ビデオコード化効率を改善し得る。プロセス４００（及び／又はプロセス３００）は、複数のビューシーケンス及び対応するカメラ内部／外部パラメータを介して、パノラマビデオシーケンスを生成してもよい。プロセス４００（及び／又はプロセス３００）は、３Ｄビデオ又はマルチビュービデオを、エンコード及び伝送のためにパノラマビュー及びパノラママップに変換してもよい。そして、デコーダ側において、デコードされたパノラマビデオが、デコードされたパノラママップの情報を使用して複数のビューのビデオに分解され得る。
【００５９】
動作において、プロセス４００（及び／又はプロセス３００）は、既存の３Ｄビデオコーディング方法と比較して有利であり得る。例えばプロセス４００（及び／又はプロセス３００）は、データの冗長性及びチャネルの通信トラフィックを減少させ得る。具体的に言うと、従来のマルチビュービデオコーディング（ＭＶＣ））は、入力ビューを１つずつ全てエンコードする。冗長性を低減するようインタービュー予測及びイントラビュー予測がＭＶＣにおいて用いられるが、予測後の残りのデータは依然としてパノラマビデオよりもかなり多い。
【００６０】
別の例では、プロセス４００（及び／又はプロセス３００）は、一部の実装において従来の２Ｄエンコーダ／デコーダに対する修正を必要とせず、従来の２Ｄエンコーダ／デコーダとの完全に互換性を有する可能性のある、ビットストリームを生成することがある。一部の実装では、そのようなパノラマベースの３Ｄビデオコーディングをサポートするのには、ハードウェアの変更が全く必要でない可能性がある。一方、ＭＶＣや現在進行中の３ＤＶ規格（例えばマルチビュープラス深度の３Ｄビデオフォーマットを使用するもの）のような従来の３Ｄビデオコーディングでは、従属ビューは、インタービュー予測に起因して、従来の２Ｄエンコーダ／デコーダと互換性を有しないことがある。
【００６１】
更なる例では、プロセス４００（及び／又はプロセス３００）は、頭部の動きの視差をサポートし得るが、ＭＶＣはそのような機能をサポートすることができない。提示されるパノラマベースの３Ｄビデオコーディングを使用することによって、任意のビューのビデオを、いずれかの中間の視聴位置で、プロセス４００（及び／又はプロセス３００）によりパノラマビデオから導出することができる。しかしながら、ＭＶＣでは、複数の出力を変化させることはできない（低減されるだけである）。
【００６２】
また更なる例では、プロセス４００（及び／又はプロセス３００）は、マルチビューの深度マップをエンコードする必要がないことがある。現在進行中の３ＤＶ規格は典型的に、マルチビュープラス深度の３Ｄビデオフォーマットをエンコードする。それにもかかわらず、深度マップの導出は、依然として曖昧な点である。既存の深度センサ及び深度予測アルゴリズムは、そのような現在進行中の３ＤＶ規格化の方法において高品質の深度マップを達成するために、まだ開発する必要がある。
【００６３】
また更なる例では、プロセス４００（及び／又はプロセス３００）は、パノラマビデオ及びパノラママップから追加の参照フレームを生成することによって、インループマルチビュー分解モジュールを用いてもよい。抽出されたマルチビュービデオは、ビューブレンド及び３Ｄワープ技術により得られるので、視覚品質を高レベルに保つことができる。したがって、コード化効率は、パノラマベースの参照フレームを追加することによって更に改善され得る。
【００６４】
図３及び図４に図示されるように、例示のプロセス３００及び４００の実装は、示された全てのブロックの図示される順序での取り組みを含み得るが、本開示はこの観点に限定されず、様々な例において、プロセス３００及びプロセス４００の実装は、示されたブロックの一部のみ及び／又は図示された順序と異なる順序での取り組みも含み得る。
【００６５】
さらに、図３及び図４のブロックのいずれか１つ又は複数は、１つ又は複数のコンピュータプログラム製品によって提供される命令に応答して行われてもよい。そのようなプログラム製品は、例えばプロセッサによって実行されると本明細書で説明される機能性を提供し得る命令を提供する、信号担持媒体を含むことがある。コンピュータプログラム製品は、任意の形式のコンピュータ読取可能媒体として提供され得る。したがって、例えば１つ又は複数のプロセッサコアを含むプロセッサは、コンピュータ読取可能媒体によってプロセッサに伝達される命令に応答して、図３及び図４に示されるブロックの１つ又は複数に着手することがある。
【００６６】
本明細書で説明されるいずれかの実装において使用されるとき、「モジュール」という用語は、本明細書で説明される機能を提供するように構成されるソフトウェア、ファームウェア及び／又はハードウェアの任意の組み合わせを指す。ソフトウェアは、ソフトウェアパッケージ、コード及び／又は命令セット又は命令として具現化され、「ハードウェア」は、本明細書で説明されるいずれかの実装で使用されるとき、例えばハードワイヤード回路、プログラマブル回路、状態マシン回路及び／又はプログラマブル回路によって実行される命令を格納するファームウェアを単独又は任意の組み合わせで含み得る。モジュールは集合的又は個々に、例えば集積回路（ＩＣ）、システムオンチップ（ＳｏＣ）等の大きなシステムの一部を形成する回路として具現化され得る。
【００６７】
図５は、本開示の少なくとも一部の実装に従って、修正された２Ｄビデオコーダ５００の例示のパノラマベースの３Ｄビデオコーディングの流れを示す図である。図示される実装において、他のパノラマビデオのインターピクチャ予測が、修正された２Ｄビデオコーダ５００を介して、図４において上述したような出力テクスチャビューに少なくとも部分的に基づいて実行され得る。
【００６８】
例えばパノラマビデオ５０４は、変換及び量子化モジュール５０８に渡されてよい。変換及び量子化モジュール５０８は、公知のビデオ変換及び量子化プロセスを実行してよい。変換及び量子化モジュール５０８の出力は、エントロピーコード化モジュール５０９と逆量子化及び逆変換モジュール５１０とに提供されてよい。逆量子化及び逆変換モジュール５１０は、変換及び量子化モジュール５０８によって行われる動作と反対の動作を実施して、パノラマビデオ５０４の出力を、インループフィルタ５１４（例えばブロック化解除フィルタ、サンプル適合オフセットフィルタ、適合ループフィルタ等を含む）、バッファ５２０、動き予想モジュール５２２、動き補償モジュール５２４及びイントラフレーム予測モジュール５２６へ提供してよい。当業者には、本明細書で説明されるように、変換及び量子化モジュールと、逆量子化及び逆変換モジュールはスケーリング技術を用いてもよいことが理解されよう。ループフィルタ５１４の出力は、マルチビュー分解モジュール５１８に供給され得る。
【００６９】
したがって、一部の実施形態において、パノラマビデオを、図５に示されるような、修正された２Ｄビデオコーダ５００を使用してエンコードすることも可能である。エンコーダ／デコーダ側において、インループマルチビュー分解モジュール５１８を適用して、マルチビューピクチャを、コード化されたパノラマビデオ及びパノラママップから抽出してよい。次いで、コード化効率を改善するために、抽出されたマルチビューピクチャを、他のパノラマピクチャのインター予測のために、参照バッファ５２０へ挿入することが可能である。例えば修正された２Ｄビデオコーダ５００は、コード化されたパノラマビデオを複数のビューピクチャに分解し、次いで分解された複数のビューピクチャが、他のパノラマピクチャのインター予測のために参照バッファ５２０に挿入され得る。そのような例において、インループ分解モジュール５１８は、追加の参照フレームを、例えばパノラマビデオ及びパノラママップから生成することによって、コード化効率を改善することが可能である。
【００７０】
図６は、本開示の少なくとも一部の実装に従って配置される、例示の２Ｄビデオコーディングシステム２００を示す図である。図示された実装において、２Ｄビデオコーディングシステム２００は、ディスプレイ６０２、画像化デバイス６０４、２Ｄエンコーダ２０３、２Ｄビデオデコーダ２０５及び／又は論理モジュール４０６を含んでよい。論理モジュール４０６は、パノラマ生成論理モジュール４０８、３Ｄビデオ抽出論理モジュール４１０等及び／又はこれらの組み合わせを含んでよい。
【００７１】
図示されるように、ディスプレイ６０２、２Ｄビデオデコーダ２０５、プロセッサ６０６及び／又はメモリストア６０８は、相互に通信すること及び／又は論理モジュール４０６の一部と通信することができる。同様に、画像化デバイス６０４及び２Ｄビデオエンコーダ２０３も、相互に通信すること及び／又は論理モジュール４０６の一部と通信することができる。したがって、２Ｄビデオデンコーダ２０５は、論理モジュール４０６の一部又は全てを含んでよく、２Ｄビデオエンコーダ２０３も同様な論理モジュールを含んでよい。２Ｄビデオコーディングシステム２００は、図６に示されるように特定のモジュールに関連付けられるブロック又はアクションのある特定のセットを含み得るが、これらのブロック又はアクションは、ここに図示されている特定のモジュールと異なるモジュールに関連付けられてもよい。
【００７２】
一部の例において、ディスプレイデバイス６０２は、ビデオデータを提示するように構成され得る。プロセッサ６０６は、ディスプレイ６０２に通信可能に結合され得る。メモリストア６０８が、プロセッサ６０６に通信可能に結合されてもよい。パノラマ生成論理モジュール４０８は、プロセッサ６０６に通信可能に結合され、パノラマビデオ及びパノラママップを生成するように構成されてよい。２Ｄエンコーダ２０３は、パノラマ生成論理モジュール４０８に通信可能に結合されて、パノラマビデオ及び関連するパノラママップをエンコードするように構成されてよい。２Ｄデコーダ２０５は、２Ｄエンコーダ２０３に通信可能に結合されて、パノラマビデオ及び関連するパノラママップをデコードするように構成されるが、ここで、パノラマビデオ及びパノラママップは、多重テクスチャビュー及びカメラパラメータに少なくとも部分的に基づいて生成されたものである。３Ｄビデオ抽出論理モジュール４１０は、２Ｄデコーダ２０５に通信可能に結合されて、パノラマビデオ及び関連するパノラママップに少なくとも部分的に基づいて、３Ｄビデオを抽出するように構成されてよい。
【００７３】
様々な実施形態において、パノラマ生成論理モジュール４０８がハードウェアで実装され、一方、ソフトウェアが、３Ｄビデオ抽出論理モジュール４１０を実装してもよい。例えば一部の実施形態では、パノラマ生成論理モジュール４０８が特定用途向け集積回路（ＡＳＩＣ）ロジックによって実装され、３Ｄビデオ抽出論理モジュール４１０が、プロセッサ６０６のようなロジックによって実行されるソフトウェア命令によって提供されてもよい。しかしながら、本開示はこのような観点に限定されず、パノラマ生成論理モジュール４０８及び／又は３Ｄビデオ抽出論理モジュール４１０は、ハードウェア、ファームウェア及び／又はソフトウェアの任意に組み合わせによって実装されてよい。加えて、メモリストア６０８は、揮発性メモリ（例えば静的ＲＡＭ（ＳＲＡＭ）、動的ＲＡＭ（ＤＲＡＭ）等）又は非揮発性メモリ（例えばフラッシュメモリ等）等のような任意のタイプのメモリであってよい。非限定的な例において、メモリストア６０８はキャッシュメモリによって実装され得る。
【００７４】
図７は、本開示に係る例示のシステム７００を図示している。様々な実装において、システム７００はメディアシステムであってよいが、システム７００はこのようなコンテキストに限定されない。例えばシステム７００を、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パルムトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、テレビジョン、スマートデバイス（例えばスマートフォン、スマートタブレット又はスマートテレビジョン）、モバイルインターネットデバイス（ＭＩＤ）、メッセージングデバイス、データ通信デバイス等に組み込んでもよい。
【００７５】
様々な実装において、システム７００は、ディスプレイ７２０に結合されるプラットフォーム７０２を含む。プラットフォーム７０２は、コンテンツサービスデバイス７３０又はコンテンツ配信デバイス７４０又は他の同様のコンテンツソースのようなコンテンツデバイスから、コンテンツを受け取ることができる。１つ又は複数のナビゲーション機能を含むナビゲーションコントローラ７５０を用いて、例えばプラットフォーム７０２及び／又はディスプレイ７２０と対話することができる。これらのコンポーネントの各々は、以下で更に詳細に説明される。
【００７６】
様々な実装において、プラットフォーム７０２は、チップセット７０５、プロセッサ７１０、メモリ７１２、ストレージ７１４、グラフィクスサブシステム７１５、アプリケーション７１６及び／又は無線機７１８の任意の組み合わせを含む。チップセット７０５は、プロセッサ７１０、メモリ７１２、ストレージ７１４、グラフィクスサブシステム７１５、アプリケーション７１６及び／又は無線機７１８の間の相互通信を提供し得る。例えばチップセット７０５は、ストレージ７１４との相互通信を提供することができるストレージアダプタ（図示せず）を含んでもよい。
【００７７】
プロセッサ７１０は、複合命令セットコンピュータ（ＣＩＳＣ）若しくは縮小命令セットコンピュータ（ＲＩＳＣ）プロセッサ、ｘ８６命令セット互換プロセッサ、マルチコア又は任意の他のマイクロプロセッサ若しくは中央処理ユニット（ＣＰＵ）として実装され得る。様々な実装において、プロセッサ７１０は、デュアルコアプロセッサ、デュアルコアモバイルプロセッサ等とすることができる。
【００７８】
メモリ７１２は、これらに限られないが、ランダムアクセスメモリ（ＲＡＭ）、動的ＲＡＭ（ＤＲＡＭ）又は静的ＲＡＭ（ＳＲＡＭ）のような揮発性メモリデバイスとして実装され得る。
【００７９】
ストレージ７１４は、これらに限られないが、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内蔵記憶デバイス、外付け記憶デバイス、フラッシュメモリ、バッテリバックアップＳＤＲＡＭ（同期ＤＲＡＭ）及び／又はネットワークアクセス可能な記憶デバイスのような非揮発性記憶デバイスとして実装されてよい。様々な実装において、ストレージ７１４は、例えば複数のハードドライブが含まれるとき、価値あるデジタルメディアについて保護を強化した記憶性能を向上させる技術を含み得る。
【００８０】
グラフィクスサブシステム７１５は、表示用に静止画又はビデオのような画像の処理を実行し得る。グラフィクスサブシステム７１５は、例えばグラフィクス処理ユニット（ＧＰＵ）又はビジュアル処理ユニット（ＶＰＵ）とすることができる。アナログ又はデジタルインタフェースを使用して、グラフィクスサブシステム７１５とディスプレイ７２０を通信可能に結合することができる。例えばインタフェースは、高解像度マルチメディアインタフェース（ＨＤＭＩ（登録商標））、ディスプレイポート、無線ＨＤＭＩ及び／又は無線ＨＤ互換技術のうちのいずれかとすることができる。グラフィクスサブシステム７１５を、プロセッサ７１０又はチップセット７０５に統合してもよい。一部の実装において、グラフィクスサブシステム７１５は、チップセット７０５に通信可能に結合される、スタンドアロンのカードとすることができる。
【００８１】
本明細書で説明されるグラフィック及び／又はビデオ処理技術は、様々なハードウェアアーキテクチャで実装され得る。例えばグラフィック及び／又はビデオ処理機能を、チップセット内に統合してもよい。あるいは、個別のグラフィック及び／又はビデオプロセッサを使用してもよい。更に別の実装として、グラフィック及び／又はビデオ機能は、マルチコアプロセッサを含め、汎用プロセッサによって提供されてもよい。更なる実施形態では、グラフィック及び／又はビデオ機能を、家庭用電化製品デバイスにおいて実装してもよい。
【００８２】
無線機７１８は、様々な適切な無線通信技術を使用して信号を送受信することができる１つ又は複数の無線機を含み得る。そのような技術は、１つ又は複数の無線ネットワークにわたる通信を含んでもよい。例示の無線ネットワークには、（これらに限られないが）無線ローカルエリアネットワーク（ＷＬＡＮ）、無線パーソナルエリアネットワーク（ＷＰＡＭ）、無線メトロポリタンエリアネットワーク（ＷＭＡＮ）、セルラネットワーク及びサテライトネットワークが含まれる。そのようなネットワークにわたる通信において、無線機７１８は、任意のバージョンの１つ又は複数の適用可能な規格に従って動作し得る。
【００８３】
様々な実装において、ディスプレイ７２０は、任意のテレビ型のモニタ又はディスプレイを含み得る。ディスプレイ７２０は、例えばコンピュータディスプレイ画面、タッチスクリーンディスプレイ、ビデオモニタ、テレビ類似のデバイス及び／又はテレビを含み得る。ディスプレイ７２０はデジタル及び／又はアナログとすることができる。様々な実装において、ディスプレイ７２０はホログラフィックディスプレイとすることができる。また、ディスプレイ７２０は、視覚的射影を受信し得る透明な面であってもよい。そのような射影は、様々な形式の情報、画像及び／又は物体を伝達することができる。例えばそのような射影は、モバイル拡張現実（ＭＡＲ）アプリケーション用の視覚的オーバレイとすることができる。１つ又は複数のソフトウェアアプリケーション７１６の制御の下、プラットフォーム７０２は、ディスプレイ７２０上にユーザインタフェース７２２を表示してもよい。
【００８４】
様々な実装において、コンテンツサービスデバイス７３０は、いずれかの国のサービス、国際的サービス及び／又は独立のサービスによってホストされることがあり、したがって、例えばプラットフォーム７０２からインターネットを介してアクセス可能なことがある。コンテンツサービスデバイス７３０は、プラットフォーム７０２及び／又はディスプレイ７２０に結合され得る。プラットフォーム７０２及び／又はコンテンツサービスデバイス７３０は、ネットワーク７６０に結合されて、媒体情報をネットワーク７６０へ及びネットワーク７６０から通信（例えば送信及び／又は受信）することができる。コンテンツ配信デバイス７４０もプラットフォーム７０２及び／又はディスプレイ７２０に結合され得る。
【００８５】
様々な実装において、コンテンツサービスデバイス７３０は、ケーブルテレビボックス、パーソナルコンピュータ、ネットワーク、電話、デジタル情報及び／又はコンテンツを配信することができるインターネット対応型デバイス又は機器、並びにコンテンツプロバイダとプラットフォーム７０２及び／又はディスプレイ７２０との間でネットワーク７６０を介するか直接的に一方向又は双方向でコンテンツを通信することができる任意の他の同様のデバイスを含み得る。コンテンツは、システム７００内のコンポーネントのいずれか１つとの間で、及びネットワーク７６０経由でコンテンツプロバイダとの間で、一方向及び／又は双方向で通信され得ることが認識されよう。コンテンツの例には、例えばビデオ、音楽、医療及びゲーム情報等を含め、任意のメディア情報が含まれ得る。
【００８６】
コンテンツサービスデバイス７３０は、メディア情報、デジタル情報及び／又は他のコンテンツを含む、ケーブルテレビ番組のようなコンテンツを受信することができる。コンテンツプロバイダの例には、任意のケーブル又は衛星テレビ又は無線又はインターネットコンテンツプロバイダが含まれ得る。提供される例は、いずれも本開示に係る実装を限定するようには意図されていない。
【００８７】
様々な実装において、プラットフォーム７０２は、１つ又は複数の機能を有するナビゲーションコントローラ７５０から制御信号を受信し得る。コントローラ７５０のナビゲーション機能を使用して、例えばユーザインタフェース７２２と対話することができる。諸実施形態において、ナビゲーションコントローラ７５０は、ユーザが空間的（例えば連続的で多次元の）データをコンピュータに入力できるようにするコンピュータハードウェアコンポーネント（特にヒューマンインタフェースデバイス）であり得る、ポインティングデバイスとすることができる。グラフィカルユーザインタフェース（ＧＵＩ）、テレビ及びモニタのような多くのシステムは、ユーザが、身体的なジェスチャを使用してコンピュータ又はテレビに対してデータを制御又は提供できるようにする。
【００８８】
コントローラ７５０のナビゲーション機能の動きは、ディスプレイ（例えばディスプレイ７２０）上で、ポインタ、カーソル、フォーカスリング又はディスプレイ上に表示される他の視覚的インジケータの動きによって複製され得る。例えばソフトウェアアプリケーション７１６の制御の下、ナビゲーションコントローラ７５０に配置されるナビゲーション機能が、例えばユーザインタフェース７２２上に表示される仮想ナビゲーション機能にマップされ得る。諸実施形態において、コントローラ７５０は、別個のコンポーネントであるだけでなく、プラットフォーム７０２及び／又はディスプレイ７２０に統合されてもよい。しかしながら、本開示は、本明細書で図示又は説明される要素又はコンテキストに限定されない。
【００８９】
様々な実装において、ドライバ（図示せず）は、例えば初期ブートアップの後、有効にされると、ユーザがすぐに、テレビのようにボタンのタッチでプラットフォーム７０２をターンオン及びターンオフできるようにする技術を含み得る。プログラムロジックは、プラットフォーム７０２がターン「オフ」されるときであっても、プラットフォーム７０２がコンテンツをメディアアダプタあるいは他のコンテンツサービスデバイス７３０又はコンテンツ配信デバイス７４０にストリーミングできるようにする。加えて、チップセット７０５は、例えば（６．１）サラウンドサウンドオーディオ及び／又は高精細度（７．１）サラウンドサウンドオーディオのためのハードウェア及び／又はソフトウェアサポートを含んでもよい。ドライバは、統合されたグラフィックプラットフォームのためのグラフィックドライバを含み得る。諸実施形態において、グラフィックドライバは、ＰＣＩエクスプレスグラフィックカードを備えてよい。
【００９０】
様々な実装において、システム７００内に示されるコンポーネントのいずれか１つ又は複数を統合してもよい。例えばプラットフォーム７０２とコンテンツサービスデバイス７３０を統合してもよく、プラットフォーム７０２とコンテンツ配信デバイス７４０を統合してもよく、プラットフォーム７０２とコンテンツサービスデバイス７３０とコンテンツ配信デバイス７４０とを統合してもよい。様々な実施形態において、プラットフォーム７０２とディスプレイ７４０は一体型のユニットであってよい。例えばディスプレイ７２０とコンテンツサービスプロバイダ７３０を統合し、あるいはディスプレイ７２０とコンテンツ配信デバイス７４０とを統合してもよい。これらの例は、本開示を限定するようには意図されていない。
【００９１】
様々な実施形態において、システム７００は、無線システム、有線システム又はこれらの組み合わせとして実装され得る。無線システムとして実装されるとき、システム７００は、１つ又は複数のアンテナ、送信機、受信機、送受信機、増幅器、フィルタ及び制御ロジックのような無線共有媒体を介して通信するのに適したコンポーネント及びインタフェースを含み得る。無線共有媒体の例は、ＲＦスペクトル等のような無線スペクトルの一部を含み得る。有線システムとして実装されるとき、システム７００は、入出力（Ｉ／Ｏ）アダプタ、対応する有線通信媒体を有するＩ／Ｏアダプタへ接続する物理コネクタ、ネットワークインタフェースカード（ＮＩＣ）、ディスクコントローラ、ビデオコントローラ、オーディオコントローラ等のような、有線通信媒体を介して通信するのに適したコンポーネント及びインタフェースを含み得る。有線通信媒体の例には、有線、ケーブル、金属導線、プリント基板、バックプレーン、スイッチファブリック、半導体材料、二重ペアワイヤ、同軸ケーブル、光ファイバ等が含まれ得る。
【００９２】
プラットフォーム７０２は、１つ又は複数の論理的又は物理的チャネルを確立して情報を通信し得る。そのような情報は、媒体情報及び制御情報を含み得る。媒体情報は、ユーザに対して意図されたコンテンツを表す任意のデータを指すことがある。コンテンツの例は、例えば音声会話、ビデオ会議、ストリーミングビデオ、電子メール（ｅメール）メッセージ、ボイスメールメッセージ、英数字の記号、グラフィック、画像、ビデオ、テキスト等からのデータを含み得る。音声会話からのデータは、例えばスピーチ情報、無音の期間、背景雑音、快適雑音、トーン等であってよい。制御情報は、自動システム用に意図されたコマンド、命令又は制御語を表す任意のデータを指すことがある。例えば制御情報を使用して、システムを通してメディア情報をルーティングするか、メディア情報を所定の手法により処理するようノードに指示することができる。しかしながら、諸実施形態は、図７に図示されるか説明される要素又はコンテキストに限定されない。
【００９３】
上述のように、システム７００は、変化する物理的なスタイル又はフォームファクタで具現化され得る。図８は、システム７００が具現化され得る小さなフォームファクタデバイス８００の実装を図示している。諸実施形態において、例えばデバイス８００は、無線機能を有するモバイルコンピューティングデバイスとして実装され得る。モバイルコンピューティングデバイスは、処理システムと、例えば１つ又は複数のバッテリのようなモバイル電源又は電力供給とを有する任意のデバイスを指すことがある。
【００９４】
上述のように、モバイルコンピューティングデバイスの例は、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パルムトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、テレビジョン、スマートデバイス（例えばスマートフォン、スマートタブレット又はスマートテレビジョン）、モバイルインターネットデバイス（ＭＩＤ）、メッセージングデバイス、データ通信デバイス等を含み得る。
【００９５】
モバイルコンピューティングデバイスの例は、人によって装着されるように構成されたコンピュータ、例えばリストコンピュータ、フィンガコンピュータ、リングコンピュータ、アイグラスコンピュータ、ベルトクリップコンピュータ、アームバンドコンピュータ、シューズコンピュータ、クローズコンピュータ及び他の装着可能なコンピュータのようなものも含み得る。様々な実施形態において、例えばモバイルコンピューティングデバイスは、コンピュータアプリケーションだけでなく、音声通信及び／又はデータ通信を実行することができるスマートフォンとして実装され得る。一部の実施形態を、例としてスマートフォンとして実装されるモバイルコンピューティングデバイスを用いて説明しているが、他の実施形態は、他の無線モバイルコンピューティングデバイスを使用して実装されてもよいことが認識されよう。諸実施形態は、このコンテキストに限定されない。
【００９６】
図８に示されるように、デバイス８００は、ハウジング８０２、ディスプレイ８０４、入出力（Ｉ／Ｏ）デバイス８０６及びアンテナ８０８を含み得る。デバイス８００は、ナビゲーション機能８１２も含み得る。ディスプレイ８０４は、モバイルコンピューティングデバイスに適した情報を表示するための任意の適切なディスプレイユニットを含み得る。Ｉ／Ｏデバイス８０６は、情報をモバイルコンピューティングデバイスに入力するための任意の適切なＩ／Ｏデバイスを含み得る。Ｉ／Ｏデバイス８０６の例には、英数字のキーボード、数字のキーパッド、タッチパッド、入力キー、ボタン、スイッチ、ロッカースイッチ、マイクロフォン、スピーカ、音声認識デバイス及びソフトウェア等が含まれ得る。情報は、マイクロフォン（図示せず）によってデバイス８００に入力されてもよい。そのような情報は、音声認識デバイス（図示せず）によってデジタル化されてもよい。諸実施形態はこのコンテキストに限定されない。
【００９７】
様々な実施形態が、ハードウェア要素、ソフトウェア要素又はこれらの組み合わせを使用して実装され得る。ソフトウェア要素の例は、プロセッサ、マイクロプロセッサ、回路、回路要素（例えばトランジスタ、レジスタ、キャパシタ、インダクタ等）、集積回路、特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理デバイス（ＰＬＤ）、デジタル信号プロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセット等を含み得る。ソフトウェアの例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェアインタフェース、アプリケーションプログラムインタフェース（ＡＰＩ）、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、記号又はこれらの任意の組み合わせを含み得る。実施形態を、ハードウェア要素及び／又はソフトウェア要素を使用して実装するかどうかの判断は、所望の計算レート、電力レベル、ヒートトレランス、処理サイクルバゲット、入力データレート、出力データレート、メモリリソース、データバススピード及び他の設計的若しくは性能的制約のような、任意の数のファクタに応じて異なり得る。
【００９８】
少なくとも１つの実施形態の１つ又は複数の態様は、プロセッサ内の様々なロジックを表すマシン読取可能な媒体に格納される代表的命令によって実装されてよく、そのような命令は、マシンによって読み取られると、該マシンに、本明細書で説明される技術を実行するロジックを構築させる。「ＩＰコア」として知られるそのような表現は、有形のマシン読取可能な媒体に格納され、様々な消費者又は製造施設に供給されて、実際にロジック又はプロセッサを作る製作マシンにロードされる。
【００９９】
本明細書で説明される特定の特徴は、様々な実装との関連で説明されているが、この説明は、限定的な意味で解釈されるように意図されていない。したがって、本明細書で説明される実装、並びに本開示に関して当業者に明らかとなる他の実装の様々な修正は、本開示の精神及び範囲内に含まれるように意図される。
【０１００】
以下の例は、更なる実施形態に関する。
【０１０１】
一例において、ビデオコーディングのためのコンピュータ実施方法は、パノラマビデオ及び関連するパノラママップを、２Ｄデコーダを介してデコードすることを含んでよい。パノラマビデオ及び関連するパノラママップは、多重テクスチャビュー及びカメラパラメータに少なくとも部分的に基づいて生成されている。３Ｄビデオが、パノラマビデオ及び関連するパノラママップに少なくとも部分的に基づいて抽出され得る。
【０１０２】
別の例では、ビデオコーディングのためのコンピュータ実施方法は更に、２Ｄエンコーダ側において、多重テクスチャビューから主要特徴点によりピクセル座標をマッピングすることができる、ピクセル対応を決定するステップを含む。カメラ外部パラメータが予想されるが、該カメラ外部パラメータは、複数のカメラ間の変換ベクトルと回転行列とのうちの１つ又は複数を備える。射影行列が、カメラ外部パラメータ及びカメラ内部パラメータに少なくとも部分的に基づいて決定される。パノラマビデオが、決定される射影行列及び／又は決定されるピクセル対応からの幾何学マッピングに少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、多重テクスチャビューから生成される。関連するパノラママップが生成され、該関連するパノラママップは、多重テクスチャビューとパノラマビデオとの間のピクセル座標を、多重テクスチャビューからパノラマビデオへの透視射影としてマッピングすることができる。パノラマビデオ及び関連するパノラママップがエンコードされる。２Ｄデコーダ側において、３Ｄビデオの抽出は更に、ユーザ入力を受信するステップを含み得る。ユーザのビュープリファレンスが、ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及びパノラマビデオの関連する対象領域において決定され得る。ユーザのビュープリファレンスは、次の基準：対象ビューのビュー方向と、視点の位置と、視野と、のうちの１つ又は複数により定義され得る。仮想カメラが、次の基準：パノラマビデオにおける視点の位置と、視野と、決定されるビュー範囲と、のうちの１つ又は複数に対する事前構成に少なくとも部分的に基づいてセットアップされ得る。パノラマビデオの対象領域が単一のテクスチャビューより多くのテクスチャビューに由来するものであるとき、該パノラマビデオの対象領域についてビューブレンドが実行され得る。ビューブレンドは、ワープに先行して又はエンコードに先行して行われる。パノラマビデオの対象領域が、仮想カメラのカメラパラメータ及び関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術により出力テクスチャビューにワープされ得る。３Ｄビデオの左右のビューが、出力テクスチャビューに少なくとも部分的に基づいて決定され得る。３Ｄビデオが、決定された左右のビューに少なくとも部分的に基づいて、ユーザのビュープリファレンスで表示され得る。他のパノラマビデオのインターピクチャ予測が、出力テクスチャビューに少なくとも部分的に基づいて実行され得る。
【０１０３】
他の例では、コンピュータにおけるビデオコーディングのためのシステムは、ディスプレイデバイス、１つ又は複数のプロセッサ、１つ又は複数のメモリストア、２Ｄデコーダ、３Ｄビデオ抽出論理モジュール及び／又はこれらの組み合わせを含み得る。ディスプレイデバイスは、ビデオデータを提示するように構成され得る。１つ又は複数のプロセッサは、ディスプレイデバイスに通信可能に結合され得る。１つ又は複数のメモリストアは、１つ又は複数のプロセッサに通信可能に結合され得る。２Ｄデコーダは、１つ又は複数のプロセッサに通信可能に結合され、パノラマビデオ及び関連するパノラママップをデコードするように構成され得る。パノラマビデオ及び関連するパノラママップは、多重テクスチャビュー及びカメラパラメータに少なくとも部分的に基づいて生成されたものである。３Ｄビデオ抽出論理モジュールは、２Ｄデコーダに通信可能に結合され、パノラマビデオ及び関連するパノラママップに少なくとも部分的に基づいて３Ｄビデオを抽出するように構成され得る。
【０１０４】
別の例では、コンピュータにおけるビデオコーディングのためのシステムは、パノラマ生成論理モジュールを更に備えてもよく、該パノラマ生成論理モジュールは、多重テクスチャビューから主要特徴点によりピクセル座標をマッピングすることができるピクセル対応を決定し、カメラ外部パラメータを予想し、ここで該カメラ外部パラメータは、複数のカメラ間の変換ベクトルと回転行列とのうちの１つ又は複数を備えており、カメラ外部パラメータ及びカメラ内部パラメータに少なくとも部分的に基づいて射影行列を決定し、決定される射影行列及び／又は決定されるピクセル対応からの幾何学マッピングに少なくとも部分的に基づいて、画像ステッチアルゴリズムにより、多重テクスチャビューからパノラマビデオを生成し、多重テクスチャビューとパノラマビデオとの間のピクセル座標を、多重テクスチャビューからパノラマビデオへの透視射影としてマッピングすることができる関連するパノラママップを生成するように構成され得る。当該システムは、パノラマビデオ及び関連するパノラママップをエンコードする２Ｄエンコーダを更に含み得る。３Ｄビデオ抽出論理モジュールは更に、ユーザ入力を受信し、ユーザ入力に少なくとも部分的に基づいて、いずれか任意の対象ビュー及びパノラマビデオの関連する対象領域におけるユーザのビュープリファレンスを決定するように構成され、該ユーザのビュープリファレンスは、対象ビューのビュー方向と、視点の位置と、視野とのうちの１つ又は複数により定義され得る。３Ｄビデオ抽出論理モジュールは更に、パノラマビデオにおける視点の位置と、視野と、決定されるビュー範囲とのうちの１つ又は複数に対する事前構成に少なくとも部分的に基づいて、仮想カメラをセットアップし、パノラマビデオの対象領域が単一のテクスチャビューより多くのテクスチャビューに由来するとき、パノラマビデオの対象領域について、ワープに先行して及びエンコードに先行してビューブレンドを実行し、仮想カメラのカメラパラメータ及び関連するパノラママップに少なくとも部分的に基づいて、３Ｄワープ技術によりパノラマビデオの対象領域を出力テクスチャビューにワープし、出力テクスチャビューに少なくとも部分的に基づいて、３Ｄビデオの左右のビューを決定するように構成され得る。ディスプレイは更に、決定された左右のビューに少なくとも部分的に基づいて、３Ｄビデオをユーザのビュープリファレンスで表示するように構成され得る。また、２Ｄデコーダは更に、出力テクスチャビューに少なくとも部分的に基づいて、他のパノラマビデオのインターピクチャ予測を実行するように構成され得る。
【０１０５】
上記の例は、特徴の具体的な組み合わせを含む。しかしながら、このような上記の例は、この観点に限定されず、様々な実装において、上記の例は、そのような特徴の一部のみの実施、そのような特徴の異なる順序の実施、そのような特徴の異なる組み合わせの実施及び／又は明示的にリストされた特徴に対して追加的な特徴の実施を含み得る。例えば例示の方法に関して説明された全ての特徴は、例示の装置、例示のシステム及び／又は例示の製品との関連で実装されてもよく、またその逆もあり得る。
【図１】
0006030230.tif 000002
【図２】
0006030230.tif 000003
【図３】
0006030230.tif 000004
【図４】
0006030230.tif 000005
【図５】
0006030230.tif 000006
【図６】
0006030230.tif 000007
【図７】
0006030230.tif 000008
【図８】
0006030230.tif 000009