(57)【特許請求の範囲】
【請求項１】
メディアコンテナファイルを生成する方法であって、
−前記メディアコンテナファイルの少なくとも１つのメディアトラックに映像コンテンツの複数のカメラビューを表す符号化映像データを編成する工程と、
−前記複数のカメラビューの相対位置に基づいて、前記複数のカメラビューの異なる所定の配置及び位置関係を示す複数の所定のビュー構成表現の中から、１つのビュー構成表現を選択する工程と、
−前記選択したビュー構成表現に前記複数のカメラビューのビュー識別子を付加する工程と、
−前記メディアコンテナファイル内で、前記選択したビュー構成表現を前記少なくとも１つのメディアトラックに対して関連付けて編成する工程と
を備え、
前記選択する工程は、前記複数のカメラビューの前記相対位置に基づいて、インラインビュー構成表現、平面ビュー構成表現、矩形ビューアレイ構成表現、球体ビューアレイ構成表現及び立体ビューペア構成表現のうち１つのビュー構成表現を選択する工程を含むことを特徴とする方法。
【請求項２】
前記付加する工程は、前記選択したビュー構成表現により定義された所定の配置及び位置関係で、前記複数のカメラビューの相対位置順序を記述する順序で前記ビュー識別子を付加する工程を含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記選択する工程が、前記複数のカメラビューの前記相対位置に基づいて前記インラインビュー構成表現を選択する工程を含む場合に、
前記方法は、前記複数のカメラビューの前記相対位置に基づいて第１のインラインバージョンと第２のインラインバージョンとの間で選択を行う工程を更に含み、
前記付加する工程は、
前記第１のインラインバージョンが選択された場合に前記ビュー識別子を付加する工程と、
前記第２のインラインバージョンが選択された場合に前記ビュー識別子から選択された開始ビュー識別子と、前記複数のカメラビューの少なくとも一部分のビュー識別子を取得するために前記開始ビュー識別子に適用可能な識別子の増分とを付加する工程と
を含むことを特徴とする請求項１または２に記載の方法。
【請求項４】
前記選択する工程が、前記複数のカメラビューの前記相対位置に基づいて前記平面ビュー構成表現を選択する工程を含む場合に、
前記方法は、前記複数のカメラビューの前記相対位置に基づいて第１の平面バージョンと第２の平面バージョンとの間で選択を行う工程を更に含み、
前記付加する工程は、
前記第１の平面バージョンが選択された場合に前記ビュー識別子を付加する工程と、
前記第２の平面バージョンが選択された場合に前記ビュー識別子から選択された開始ビュー識別子と、前記複数のカメラビューの少なくとも一部分のビュー識別子を取得するために前記開始ビュー識別子に適用可能な識別子の増分とを付加する工程と
を含むことを特徴とする請求項１または２に記載の方法。
【請求項５】
前記選択する工程が、前記複数のカメラビューの前記相対位置に基づいて前記矩形ビューアレイ構成表現を選択する工程を含む場合に、
前記方法は、
−前記複数のカメラビューの矩形カメラビューアレイの行数及び列数の表現を前記矩形ビューアレイ構成表現に付加する工程と、
−前記矩形カメラビューアレイの連続した行の間の距離の表現及び連続した列の間の距離の表現を前記矩形ビューアレイ構成表現に付加する工程と
を更に含むことを特徴とする請求項１または２に記載の方法。
【請求項６】
前記選択する工程が、前記複数のカメラビューの前記相対位置に基づいて前記球体ビューアレイ構成表現を選択する工程を含む場合に、
前記方法は、前記複数のカメラビューを含む球体カメラビューアレイの半径の表現及び中心座標の表現を前記球体ビューアレイ構成表現に付加する工程を更に含むことを特徴とする請求項１または２に記載の方法。
【請求項７】
前記選択する工程が、前記複数のカメラビューの前記相対位置に基づいて前記立体ビューペア構成表現を選択する工程を含む場合に、
前記付加する工程は、前記複数のカメラビューの左眼カメラビューのビュー識別子と右眼カメラビューのビュー識別子とを前記立体ビューペア構成表現に付加する工程を含む
ことを特徴とする請求項１または２に記載の方法。
【請求項８】
前記メディアコンテナファイル内で、前記複数のカメラビューのオーバラッピングカメラビューの表現を前記少なくとも１つのメディアトラックに対して関連付けて編成することを更に含むことを特徴とする請求項１から７のいずれか１項に記載の方法。
【請求項９】
−前記複数のカメラビューのうちの基本カメラビューのビュー識別子を前記オーバラッピングカメラビューの表現に付加する工程と、
−前記基本カメラビューにオーバラップする前記複数のカメラビューのうちのいずれかのカメラビューのビュー識別子を前記オーバラッピングカメラビューの表現に付加する工程と
を更に含むことを特徴とする請求項８記載の方法。
【請求項１０】
−前記基本カメラビューと前記基本カメラビューにオーバラップする前記いずれかのカメラビューとの間のオフセットの情報を、前記オーバラッピングカメラビューの表現に付加する工程と、
−前記基本カメラビュー及び前記基本カメラビューにオーバラップする前記いずれかのカメラビューのオーバラッピング領域のサイズの情報を、前記オーバラッピングカメラビューの表現に付加する工程と
を更に含むことを特徴とする請求項９記載の方法。
【請求項１１】
メディアコンテナファイルを生成する装置であって、
−前記メディアコンテナファイルの少なくとも１つのメディアトラックに、映像コンテンツの複数のカメラビューを表す符号化映像データを編成するトラック編成器と、
−前記複数のカメラビューの相対位置に基づいて、前記複数のカメラビューの異なる所定の配置及び位置関係を示す複数の所定のビュー構成表現の中から、１つのビュー構成表現を選択する表現選択器と、
−前記表現選択器により選択された前記ビュー構成表現に前記複数のカメラビューのビュー識別子を付加する識別子プロセッサと、
−前記メディアコンテナファイル内で、前記表現選択器により選択された前記ビュー構成表現を前記少なくとも１つのメディアトラックに対して関連付けて編成する表現編成器と
を備え、
前記表現選択器は、前記複数のカメラビューの前記相対位置に基づいて、インラインビュー構成表現、平面ビュー構成表現、矩形ビューアレイ構成表現、球体ビューアレイ構成表現及び立体ビューペア構成表現のうち１つのビュー構成表現を選択するように構成されていることを特徴とする装置。
【請求項１２】
前記識別子プロセッサは、前記表現選択器により選択された前記ビュー構成表現により定義された所定の配置及び位置関係で、前記複数のカメラビューの相対位置順序を記述する順序で前記ビュー識別子を付加するように構成されていることを特徴とする請求項１１記載の装置。
【請求項１３】
前記表現選択器が、前記複数のカメラビューの前記相対位置に基づいて前記インラインビュー構成表現を選択するように構成されている場合に、
前記装置は、前記複数のカメラビューの前記相対位置に基づいて第１のインラインバージョン又は第２のインラインバージョンのバージョン識別子を前記インラインビュー構成表現に付加するバージョンプロセッサを更に備え、
前記識別子プロセッサは、
前記バージョンプロセッサが前記第１のインラインバージョンの前記バージョン識別子を付加する場合に、前記ビュー識別子を含め、
前記バージョンプロセッサが前記第２のインラインバージョンの前記バージョン識別子を付加する場合に、前記ビュー識別子から選択された開始ビュー識別子と、前記複数のカメラビューの少なくとも一部分のビュー識別子を取得するために前記開始ビュー識別子に適用可能な識別子の増分とを付加するように構成されている
ことを特徴とする請求項１１または１２に記載の装置。
【請求項１４】
前記表現選択器が、前記複数のカメラビューの前記相対位置に基づいて前記平面ビュー構成表現を選択するように構成されている場合に、
前記装置は、前記複数のカメラビューの前記相対位置に基づいて第１の平面バージョン又は第２の平面バージョンのバージョン識別子を前記平面ビュー構成表現に付加するバージョンプロセッサを更に備え、
前記識別子プロセッサは、
前記バージョンプロセッサが前記第１の平面バージョンの前記バージョン識別子を付加する場合に、前記ビュー識別子を含め、
前記バージョンプロセッサが前記第２の平面バージョンの前記バージョン識別子を付加する場合に、前記ビュー識別子から選択された開始ビュー識別子と、前記複数のカメラビューの少なくとも一部分のビュー識別子を取得するために前記開始ビュー識別子に適用可能な識別子の増分とを付加するように構成されている
ことを特徴とする請求項１１または１２に記載の装置。
【請求項１５】
前記表現選択器が、前記複数のカメラビューの前記相対位置に基づいて前記矩形ビューアレイ構成表現を選択するように構成されている場合に、
前記装置は、
−前記複数のカメラビューの矩形カメラビューアレイの行数及び列数の表現を前記矩形ビューアレイ構成表現に付加する数プロセッサと、
−前記矩形カメラビューアレイの連続した行の間の距離の表現及び連続した列の間の距離の表現を前記矩形ビューアレイ構成表現に付加する距離プロセッサと
を更に備えることを特徴とする請求項１１または１２に記載の装置。
【請求項１６】
前記表現選択器が、前記複数のカメラビューの前記相対位置に基づいて前記球体ビューアレイ構成表現を選択するように構成されている場合に、
前記装置は、前記複数のカメラビューを含む球体カメラビューアレイの半径の表現及び中心座標の表現を前記球体ビューアレイ構成表現に付加する球体プロセッサを更に備えることを特徴とする請求項１１または１２に記載の装置。
【請求項１７】
前記表現選択器が、前記複数のカメラビューの前記相対位置に基づいて前記立体ビューペア構成表現を選択するように構成されている場合に、
前記識別子プロセッサは、前記複数のカメラビューの左眼カメラビューのビュー識別子及び右眼カメラビューのビュー識別子を前記立体ビューペア構成表現に付加するように構成されていることを特徴とする請求項１１または１２に記載の装置。
【請求項１８】
前記メディアコンテナファイル内で、前記複数のカメラビューのオーバラッピングカメラビューの表現を前記少なくとも１つのメディアトラックに対して関連付けて編成するビュー編成器を更に備えることを特徴とする請求項１１から１７のいずれか１項に記載の装置。
【請求項１９】
前記複数のカメラビューのうちの基本カメラビューのビュー識別子を前記オーバラッピングカメラビューの表現に付加し、前記基本カメラビューにオーバラップする前記複数のカメラビューのうちのいずれかのカメラビューのビュー識別子を前記オーバラッピングカメラビューの表現に付加するビュープロセッサを更に備えることを特徴とする請求項１８記載の装置。
【請求項２０】
−前記基本カメラビューと前記基本カメラビューにオーバラップする前記いずれかのカメラビューとの間のオフセットの情報を前記オーバラッピングカメラビューの表現に付加するオフセットプロセッサと、
−前記基本カメラビュー及び前記基本カメラビューにオーバラップする前記いずれかのカメラビューのオーバラッピング領域のサイズの情報を前記オーバラッピングカメラビューの表現に付加するサイズプロセッサと
を更に備えることを特徴とする請求項１９記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に多視点映像データに関し、特にそのような多視点映像データを含むメディアコンテナファイルに関する。
【背景技術】
【０００２】
ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）（非特許文献１を参照）及び国際電気通信連合電気通信標準化部門（ＩＴＵ−Ｔ）Ｓｔｕｄｙ  Ｇｒｏｕｐ１６（ＳＧ１６）により進行中の多視点映像符号化（ＭＶＣ）の標準化は、いくつかのカメラ又はカメラアレイにより生成された映像系列を符号化する映像符号化技術である。ＭＶＣは、コンパクトな符号化映像ストリームを提供するために複数の映像ビューの間の冗長性を効率的に利用する。ＭＶＣは、ＩＴＵ−Ｔ  Ｈ．２６４としても既知である高度映像符号化（ＡＶＣ）規格に基づくため、ＭＶＣビットストリームの構文及びセマンティクスはＡＶＣビットストリームの構文及びセマンティクスと同様に維持される。
【０００３】
ＩＳＯ／ＩＥＣ１４４９６−１５（非特許文献２を参照）は、ＡＶＣビットストリームの管理を行いやすくする融通性のある拡張可能な形式で高度映像符号化（ＡＶＣ）ビットストリーム情報を含むように設計された国際標準である。この標準は、ＭＰ４ファイル形式（非特許文献３を参照）及び３ＧＰＰファイル形式（非特許文献４を参照）に準拠する。これらの全ての標準は、ＭＰＥＧにより規定されたＩＳＯ準拠メディアファイル形式（非特許文献５を参照）から導出される。ＭＶＣ映像ストリームの保存形式はＭＶＣファイル形式と呼ばれる。
【０００４】
ＭＶＣファイル形式において、多視点映像ストリームはファイル中の１つ以上の映像トラックにより表される。各トラックは、ストリームの１つ以上のビューを表す。ＭＶＣファイル形式は、符号化された多視点映像データ自体に加えて、映像データを処理する時に使用されるメタデータを含む。例えば各ビューは、１つのビュー内のＭＶＣネットワーク抽象化層（ＮＡＬ）ユニットが全て同一のビュー識別子を有すること、すなわちＭＶＣ  ＮＡＬユニットヘッダ拡張部において同一の値のview_idフィールドを有することを示す関連付けられたビュー識別子を有する。
【０００５】
今日、カメラパラメータは、多視点取得情報付加拡張情報（ＳＥＩ）メッセージに格納され、外部カメラパラメータボックス及び内部カメラパラメータボックスに含まれる。これらのパラメータは、カメラの位置及びカメラ焦点距離の座標を提供する平行移動ベクトルを含む。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】ISO/IEC JTC1/SC29/WG11 - Coding of Moving Pictures and Audio, MPEG-4 Overview、２０００年７月
【非特許文献２】ISO/IEC 14496-15:2004 - Information Technology, Coding of Audio-visual Objects, Part 15: Advanced Video Coding (AVC) File Format
【非特許文献３】ISO/IEC 14496-14:2003 - Information Technology, Coding of Audio-Visual Objects, Part 14: MP4 File Format
【非特許文献４】3GPP TS 26.244 V7.3.0 - 3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; Transparent end-to-end packet switched streaming service (PSS); 3GPP file format、２００７年
【非特許文献５】ISO/IEC 14496-12:2005 - Information Technology, Coding of Audio-Visual Objects, Part 12: ISO Base Media File Format
【発明の概要】
【０００７】
多視点取得情報ＳＥＩメッセージに含まれた情報に基づいてカメラ及びカメラビューの関係並びに全体的な配置(deployment)及びレイアウトを判定することは非常に困難であり且つ場合によっては不可能である。
【０００８】
本発明の実施形態は、従来の構成の上記欠点及び他の欠点を克服する。
【０００９】
一般的な目的は、有用なカメラビュー配置情報を含むメディアコンテナファイルを生成することである。
【００１０】
この目的及び他の目的は、添付の請求の範囲により規定されるように実施形態により達成される。
【００１１】
簡単に説明すると、一実施形態は、メディアコンテナファイルの少なくとも１つのメディアトラックにシーンの複数のカメラビューを表す符号化映像データを編成することによりメディアコンテナファイルを生成することを含む。カメラビューの他の所定の配置及び位置関係を示す複数の所定のビュー構成表現が利用可能である。複数のカメラビューの現在のアレイに関連する１つ以上のビュー構成表現が選択される。複数のカメラビューのビュー識別子は、選択されたビュー構成表現に含まれる。このビュー識別子を有するビュー構成表現は、少なくとも１つのメディアトラックに対してメディアコンテナファイルに関連付けて編成される。
【００１２】
ビュー構成表現は、多視点データを録画するのに使用されるカメラの互いに対する配置方法に関する直観的な見識を直接与え且つカメラの配置にあらゆるパターンを与える高レベル情報を提供する。
【００１３】
更に実施形態は、メディアコンテナファイルを生成する装置及びそのようなメディアコンテナファイルに関する。
【図面の簡単な説明】
【００１４】
実施形態は、添付の図面と共に以下の説明を参照することにより更なる目的及び利点と共に最もよく理解されるだろう。
【図１】発明の実施形態に係るメディアコンテナファイルを生成する方法を示すフローチャートである。
【図２】複数のカメラ及びカメラビューのアレイの一例を示す概略図である。
【図３】複数のカメラビューのアレイの別の例を示す概略図である。
【図４】メディアコンテナファイルの一実施形態を示す図である。
【図５】図４のメディアコンテナファイルに含まれる複数のビュー構成表現のボックスを示す図である。
【図６】図１の生成方法の選択するステップ及び付加するステップの一実施形態を示すフローチャートである。
【図７Ａ】、
【図７Ｂ】インラインビュー（inline view）構成表現の例を示す図である。
【図８】図１の生成方法の選択するステップ及び付加するステップの別の実施形態を示すフローチャートである。
【図９Ａ】、
【図９Ｂ】平面ビュー（plane view）構成表現の例を示す図である。
【図１０】図１の生成方法の選択するステップの一実施形態を示すフローチャートである。
【図１１】矩形ビュー（rectangular view）構成表現の一例を示す図である。
【図１２】図１の生成方法の選択するステップの別の実施形態を示すフローチャートである。
【図１３Ａ】、
【図１３Ｂ】球体ビュー（sphere view）構成表現の例を示す図である。
【図１４】図１の生成方法の選択するステップの更に別の実施形態を示すフローチャートである。
【図１５】立体ビュー（stereo view）構成表現の一例を示す図である。
【図１６】図１の生成方法のオプションの追加のステップを示すフローチャートである。
【図１７】図４のメディアコンテナファイルに含まれるオーバラッピングカメラビューの表現の一例を示す図である。
【図１８】一実施形態に係るコンテナファイル生成装置を示す概略ブロック図である。
【図１９】実施形態が実現される通信システムの一例を示す概略図である。
【図２０】オーバラッピングカメラビューを概略的に示す図である。
【発明を実施するための形態】
【００１５】
図中、同一の図中符号は対応する要素又は同様の要素に対して使用される。
【００１６】
本発明の実施形態は、多視点映像データ及び符号化された多視点映像データを含むメディアコンテナファイルに関する。
【００１７】
多視点映像データとは、コンテンツの複数のカメラビューが利用可能であることを示し、そのような各カメラビューは複数の利用可能なカメラビューのうちの１つからコンテンツを表す映像データを生成する。多視点映像において、複数のカメラ又は他のメディア録画／作成機器又は複数のそのようなカメラのアレイが録画するシーンに対して提供される。カメラがシーンに対する種々の位置及び／又は種々の指示方向及び／又は焦点距離を有するため、カメラはコンテンツに対して別のビューを提供する。図２は、例えばサッカーの試合が異なるカメラ１２〜１８により録画されるサッカー競技場であるシーン５に隣接して位置付けられた複数のカメラ１２〜１８のアレイ１０を使用してこの概念を概略的に示す。図２は、カメラ１２〜１８の各カメラビュー２２〜２８を更に示す。この図示する例において、カメラ１２〜１８は、サッカー競技場の長さに沿う異なる位置に位置付けられるため、競技場の異なる部分を録画する。これは、カメラ１２〜１８が各カメラビュー２２〜２８から見えるようなメディアコンテンツの異なるバージョンを取り込むことを意味する。
【００１８】
従来技術において既知であるように、映像データ符号化は、一般にＨ．２６１、Ｈ．２６３、ＭＰＥＧ−４及びＨ．２６４等の相対画素予測に基づく。Ｈ．２６４において、利用される画素予測方法は３つ存在する。すなわち、イントラ予測、インター予測及び双方向予測が存在する。イントラ予測は、現在のフレームの先に復号化された画素から現在の画素ブロックの空間予測を提供する。インター予測は、先に復号化されたフレームの対応する変位画素ブロックを使用して現在のブロックの時間的予測を与える。双方向予測は、２つのインター予測の加重平均を与える。従って、イントラフレームは、映像ストリームのいずれの先行フレームにも依存しないが、双方向予測によるインターフレームを含むインターフレームは映像ストリームの１つ以上の他の基準フレームからの動き補償を使用する。
【００１９】
多視点映像符号化は、単一のカメラビューからのフレーム間の予測を可能にするだけでなくビュー間予測も可能にすることにより一歩進んだ予測を用いた符号化を利用している。従って、基準フレームは、符号化する現在のフレームと比較して別のカメラビューに属する同一の相対時間のフレームであってもよい。ビュー間予測及びビュー内予測の組み合わせも可能であり、これにより種々のカメラビューから複数の基準フレームを有する。
【００２０】
従来技術において、ＭＶＣ規格の草案において開示されるように、録画されたシーンに対してカメラの位置のＭＶＣファイル形式で含まれた情報の量は非常に限られている。基本的に、従来の情報はカメラの焦点距離に対する平行移動ベクトル及び座標に限定される。しかし、本質的にこの情報は、例えばカメラビューがグローバルに編成される方法、互いに隣接するか又は実際にはオーバラップするカメラビューに関して直観的な指示を与えない。これに対して、各カメラに対するベクトル及び座標情報は、カメラビューのメディアコンテナファイルの各記憶位置から取り出される必要がある。取り出されたデータは、あらゆるグローバル及びローカルカメラビュー相互関係を判定するために計算の複雑なアルゴリズムで処理される。例えば、ベクトル及び座標に基づいて、カメラが平面又は球面にグリッド状に編成されるかを判断することは非常に困難であり且つ場合によっては不可能である。
【００２１】
実施形態は、複雑な計算をせずにメディアコンテナファイルから直接取り出されるビュー構成表現の明示的な情報を提供することにより従来技術の制約を解決する。
【００２２】
図１は、一実施形態に係るメディアコンテナファイルを生成する方法を示すフローチャートである。
【００２３】
方法は、ステップＳ１で開始し、映像コンテンツの複数のカメラビューを表す符号化映像データが提供される。このステップＳ１の多視点映像データの提供は、映像データが先に入力されたアクセス可能なメディアメモリから映像データを取り出すことにより実現される。あるいは、映像データは、映像データが格納されたか、録画されたか又は生成された他のある外部ユニットから受信される。更なる可能性は、映像系列を録画すること又は映像データを合成して生成すること等、映像データを実際に作成及び符号化することである。
【００２４】
次のステップＳ２において、提供された符号化多視点映像データは、メディアコンテナファイルの少なくとも１つのメディアトラックとして編成される。メディアコンテナファイルは、例えばいわゆるＭＶＣファイル又はＩＳＯ準拠メディアファイル形式に基づくのが好ましい他のあるファイル形式であってもよい。
【００２５】
メディアコンテナファイルは、映像コンテンツを提供し且つ映像データを送信可能なデータパケットに形成するためにメディアセッション中にメディアサーバにより使用される完全な入力パッケージとして考えられる。従って、コンテナファイルは、本質的な映像コンテンツに加え、メディアセッション中に映像コンテンツの処理を実行し且つ送信を可能にするためにメディアサーバにより要求された情報及び命令を含むのが好ましい。
【００２６】
一実施形態において、各カメラビューは、メディアコンテナファイルの別個の割り当てられたメディアトラックを有し、これによりカメラビューの数とメディアトラックの数との間に１対１関係を提供する。あるいは、少なくとも２つのカメラビュー、可能性として全てのカメラビューの符号化映像データは、メディアコンテナファイルの単一のメディアトラックに格納される。図４は、符号化多視点映像データを保持する１つ以上のメディアトラック３２を有するメディアコンテナファイル３０の一例を概略的に示す。
【００２７】
１つ以上のメディアトラックに編成されるか否かに関わらず、複数のカメラビューの各映像データは、カメラビューと関連付けられた各ビュー識別子を割り当てられるのが好ましい。
【００２８】
生成方法の次のステップＳ３は、複数のカメラビューの相対位置に基づいて多視点映像データに対するビュー構成表現を選択する。このビュー構成表現は、複数の所定のビュー構成表現の中から更に選択される。これらのビュー構成表現は、複数のカメラビューの種々の所定の配置及び位置関係を示す。ビュー構成表現は、録画されたシーンに対する複数のカメラ及びカメラビューの特定の全体の配置の識別子として考えられる。従って、ビュー構成表現は、複数のカメラビューの編成方法に関する情報を直接提供し、現在のカメラビュー配置を判定するためにカメラベクトル及び座標のいかなる処理も必要としない。
【００２９】
ステップＳ３は、複数の所定のビュー構成表現の集合からビュー構成を選択する。これは、カメラが多視点設定で録画されるシーン又は被写体に対して編成される事前に指定及び許可された配置の数が限られることを意味する。これらの所定のビュー構成表現は、多視点映像の録画で使用されるカメラの最も一般的な配置案に対応する。
【００３０】
使用可能なそのような所定のビュー構成表現の例には、インラインビュー構成表現、平面ビュー構成表現、矩形ビューアレイ表現、球体ビューアレイ構成表現及び立体ビューペア構成表現が含まれる。従って、複数の所定のビュー構成表現、すなわち少なくとも２つの所定のビュー構成表現が集合に存在する限り、複数の所定のビュー構成表現の集合は上述のビュー構成表現の全て又はその部分集合を含むことができる。本発明の実施形態は、それらの特定のビュー構成表現に限定されず、代わりに又は更に、直線、平面、矩形の格子、球体又は立体ビューペアの他に異なるカメラビュー配置を有する他のビュー構成表現を使用できる。
【００３１】
ステップＳ３の選択は、単一のビュー構成表現を選択することにより実行される。あるいは、複数の所定のビュー構成表現の部分集合は、実際には現在のカメラビュー構成に適用されてもよいため、ステップＳ３で選択されてもよい。例えば矩形ビューアレイ構成表現により規定されるようにデプロイされたカメラビューは平面にもデプロイされるため、平面ビュー構成表現も選択可能である。
【００３２】
ステップＳ４において、複数のカメラビューのビュー識別子は、選択されたビュー構成表現に含まれる。従って、これらのビュー識別子は、選択されたビュー構成表現により示される配置案に従って記録されたシーンに対してデプロイされるカメラビューを指定する。ビュー識別子は、選択されたビュー構成表現により規定された配置及び位置関係でカメラビューの相対位置順序を記述する順序でビュー構成表現に含まれるのが好ましい。従って、カメラビューのビュー識別子は、カメラビューがビュー構成表現により規定された配置案においてシーンに対して位置付けられた順序でビュー構成に含まれるのが好ましい。
【００３３】
ステップＳ５において、含まれたビュー識別子を有する選択されたビュー構成は、ステップＳ２でファイルに編成された少なくとも１つのメディアトラックに対してメディアコンテナファイルに関連付けて編成される。関連付けて編成するとは、ビュー構成表現とビュー構成表現が適用されるカメラビューとの間に関連性を提供するように、ビュー構成表現がメディアコンテナファイルに含まれることを示す。これに対応して、そのような関連性は、ビュー構成表現と少なくとも１つのメディアトラックに編成された符号化多視点データとの間に代わりに提供されてもよい。
【００３４】
関連性は、メディアコンテナファイル内の映像データの記憶位置からビュー構成表現の記憶位置へのポインタ形式又はその逆のポインタ形式であってもよい。このポインタ又はそれに対するメタデータにより、メディアコンテナファイル内の特定の映像データ又はその場所を仮定すると、関連付けられたビュー構成表現又はファイル内のビュー構成表現の記憶位置の識別が可能になる。ポインタを採用する代わりに、メタデータは映像データの映像データ識別子又は多視点映像データを保持するメディアトラックのトラック識別子を含むことができる。更なる例はビュー構成表現に含まれたビュー識別子を含み、これにより、カメラビュー、並びにビュー構成表現が適用されるメディアトラック及び映像データの識別が可能になる。
【００３５】
その後、方法は終了する。生成方法の動作ステップは、図１に示すように順番に実行されてもよい。あるいは、ステップＳ３〜Ｓ５は、ステップＳ１及びＳ２の前に又は実際にはステップＳ１及びＳ２と並列に実行可能である。
【００３６】
図４は、メディアコンテナファイル３０の一実施形態を概略的に示す。メディアコンテナファイル３０は、符号化多視点映像データを保持する１つ以上のメディアトラック３２を含む。カメラビューのビュー識別子３６を含む選択されたビュー構成表現３４は、メディアコンテナファイル３０にメタデータとして更に編成される。
【００３７】
図５は、ビュー構成表現がメディアコンテナファイルに編成される方法の一例を示す。この図示する例において、メディアコンテナファイルは、グローバル補助ビュー位置ボックス３８で示されるボックスを含む。このボックス３８は、一般に使用されたカメラ位置を記録する。これは、カメラ及びカメラビューがカメラ位置の座標から抽出するのは複雑である直観的に単純なパターンで方向付けられる時に特に有用である。コンテンツ作成者は、自身の選択したカメラの間の有用な関係を強調表示するためにこのボックスを使用できる。
【００３８】
図５のグローバル補助ビュー位置ボックス３８は、一実施形態に従って複数の所定のビュー構成表現３４Ａ〜３４Ｅを示す。ボックス３８は、インラインビューボックス３４Ａ、平面ビューボックス３４Ｂ、矩形ビューボックス３４Ｃ、球体ビューボックス３４Ｄ及び立体ビューボックス３４Ｅを含む。尚、最も実用的な実現例において、ビュー構成表現３４Ａ〜３４Ｅのうちの１つのみ又は部分集合は、それらが現在のカメラビュー構成に対して選択されると、グローバル補助ビュー位置ボックス３８に実際に含まれる。
【００３９】
メディアコンテナファイルのグローバル補助ビュー位置ボックス３８を提供する例は以下の通りであるが、これに限定されない。
【００４０】
ボックスタイプ：「gsvp」
コンテナ：動画像ボックス（「moov」）
必須：Ｎｏ
数量：１
aligned(8) class GlobalSupplementaryViewPositionBox
extends Fullbox('gsvp', version = 0, 0){
Inline ViewBox();  //オプション
PlaneViewBox();  //オプション
RectangularViewBox(); //オプション
SphereViewBox();  //オプション
StereoViewBox();  //オプション
}
【００４１】
ボックスタイプ「gsvp」に対して利用可能なビューボックス３４Ａ〜３４Ｅはオプションであり、それらの全てが必ずしも所定のカメラビュー構成に対するメディアコンテナファイルに含まれる必要はないことを示す。図５において、ボックス３８は、ビュー構成表現タイプ毎に最大１つのボックス３４Ａ〜３４Ｅを有するものとして示される。しかし、一部のカメラアレイに対しては、複数のインラインビュー構成表現３４Ａ及び／又は複数の立体ビュー構成表現３４Ｅ等の所定のタイプの複数のビュー構成表現を含むのが有利である。
【００４２】
図６は、図１の生成方法の選択するステップＳ３及び付加するステップＳ４の一実施形態を示すフローチャートである。方法は、図１のステップＳ２から継続する。次のステップＳ１０は、複数のカメラビュー又は複数のカメラの相対位置に基づいてインラインビュー構成表現を選択する。例えば図２を参照すると、カメラビュー２２〜２８は全て直線に配置され、インラインビュー構成表現がこのカメラビューの配置に対して選択されるべきである。
【００４３】
図３は、カメラビューの別のグループを示す。この時、カメラビューの最小数が３である場合、１６個のカメラビュー２２Ａ〜２８Ｄを含むアレイに対してインラインビュー構成表現の３４個の可能なエントリが実際には存在する。
22A, 22B, 22C, 22D      24A, 24B, 24C, 24D      26A, 26B, 26C, 26D
28A, 28B, 28C, 28D      22A, 24A, 26A, 28A      22B, 24B, 26B, 28B 
22C, 24C, 26C, 28C      22D, 24D, 26D, 28D      22A, 24B, 26C, 28D
28A, 26B, 24C, 22D      24A, 26B, 28C           22A, 24B, 26C
24B, 26C, 28D           22B, 24C, 26D           26A, 24B, 22C
28A, 26B, 24C           26B, 24C, 22D           28B, 26C, 24D
22A, 22B, 22C           22B, 22C, 22D           24A, 24B, 24C 
24B, 24C, 24D           26A, 26B, 26C           26B, 26C, 26D
28A, 28B, 28C           28B, 28C, 28D           22A, 24A, 26A
24A, 26A, 28A           22B, 24B, 26B           24B, 26B, 28B
22C, 24C, 26C           24C, 26C, 28C           22D, 24D, 26D
24D, 26D, 28D
【００４４】
好適な一実施形態において、直線状であると考えられるカメラビューの数は、上記例と同様に少なくとも３つである。
【００４５】
オプションの次のステップＳ１１は、第１のインラインバージョン及び第２のインラインバージョンから１つのインラインバージョンを選択する。これらの複数のインラインバージョンは、直線状にデプロイされた好ましくは少なくとも３つのカメラビューのビュー識別子を編成する種々の方法を規定する。ステップＳ１１のインラインバージョンの選択は、複数のカメラビューの相対位置に基づいて実行される。ステップＳ１１で第１のインラインバージョンＶ１が選択される場合、ステップＳ１２に進む。ステップＳ１２は、直線状にデプロイされたカメラビューの全てのビュー識別子をインラインビュー構成表現に付加する。従って、カメラビューは線に沿ってデプロイされるように正確な順序で提供される。例えば２２Ａ〜２８Ｄがカメラビューに対するビュー識別子を表す場合、図３において２２Ａ、２４Ｂ、２６Ｃ、２８Ｄである。
【００４６】
しかし、ステップＳ１１で第２のインラインバージョンＶ０が選択される場合、ステップＳ１３は、開始ビュー識別子及びオプションとして識別子の増分をインラインビュー構成表現に付加する。このビュー識別子の表現方法は、ビュー識別子の合計のビットサイズに関してより効率的である。しかし、ビュー識別子がstart_view_id、start_view_id+id_increment、start_view_id+2×id_increment、start_view_id+3×id_increment、．．．となるようにカメラビューが編成される場合、第２のインラインバージョンのみが利用可能である。ここで、start_view_idは一連の位置合わせされたカメラビューのうち最小のビュー識別子を有するカメラビューのビュー識別子であり、id_incrementは識別子の増分である。いくつかの応用例において、識別子の増分は１等の所定の値を有することができ、これによりインラインビューボックスにおいて識別子の増分を指定する必要性を緩和する。その後、図１のステップＳ５に進む。
【００４７】
図７Ａは、図６のステップＳ１１で第１のインラインバージョンが選択された場合のインラインビューボックス３４Ａの第１の例を示す。インラインビューボックス３４Ａは、第１のインラインバージョンと関連付けられた値を有するバージョン識別子３１を含む。更に、位置合わせされたカメラビューのビュー識別子３６Ａがインラインビューボックス３４Ａに含まれる。
【００４８】
図７Ｂは、図６のステップＳ１１で第２のインラインバージョンが選択された場合の対応するインラインビューボックス３４Ａを示す。インラインビューボックス３４Ａは、上述したようにインラインバージョン識別子３１、開始ビュー識別子３６Ｂ及びオプションの識別子の増分３６Ｃを含む。開始ビュー識別子３６Ｂ及び識別子の増分３６Ｃは、位置合わせされたカメラビューのビュー識別子の表現であり、view_idk = start_view_id + k × id_incrementに従ってカメラビューを計算するのに使用される。ここで、k = 0, 1, 2, ..., view_count-1であり、view_countは連続して位置合わせされたカメラビューの数を指定する整数である。
【００４９】
図７Ａ及び図７Ｂには示さないが、インラインビューボックス３４Ａは、view_count、すなわち直線状に位置合わせされたカメラビューの総数を更に含むことができる。しかし、これは、ボックス／フルボックス構造に含まれたサイズフィールドがボックス中のビューエントリの数の指示を与えるため必要ではない。ビューの総数を得るためにサイズを各ビューにより占有されたビット数で常に除算できる。
【００５０】
インラインビューボックス３４Ａは以下のように規定される。
ボックスタイプ：「ilvi」
コンテナ：グローバル補助ビュー位置ボックス（「gsvp」）
必須：Ｎｏ
数量：０以上
aligned(8) class InlineViewBox extends Fullbox('ilvi', version, 0){
if(version == 1){
for (i=0; ; i++){  //ボックスの最後まで
unsigned int(6) reserved1 = 0;
unsigned int(10) view_id;
}
} else {
unsigned int(6) reserved2 = 0;
unsigned int(10) start_view_id;
unsigned int(16) view_count;
unsigned int(16) id_increment
}
}
【００５１】
セマンティクス
versionは、インラインビューボックスのインラインバージョンを指定する整数である。
view_idは、ＭＶＣ規格の草案のViewIdentifier Boxで指示されるようなカメラビューの識別子である。
start_view_idは、ViewIdentifierBoxで指示されるようなカメラビューのビュー識別子であり、これは位置合わせされた一連のカメラビューのうち最小のview_idである。
view_countは、連続的に位置合わせされたカメラビューの数をカウントする整数である。
id_incrementは識別子の増分である。
尚、単一のカメラビュー構成は、図３と関連して上述して示したように複数のインラインビューボックスを含んでもよい。
【００５２】
別の実施形態において、第１のインラインバージョンのみが利用可能である。従って、ステップＳ１１及びＳ１３は省略されてもよく、全てのインラインビューボックスは図７Ａに示す通りである。更に別の実施形態は、第２のインラインバージョンのみを許可することである。従って、ステップＳ１１及びＳ１２は省略されてもよく、インラインビューボックスは図７Ｂに示す通りである。
【００５３】
他の実施形態において、インラインビュー構成表現は、位置合わせされたカメラビューの直線が水平線であるか、垂直線であるか又は斜線であるかを示す情報を更に含む。
【００５４】
図８は、図１の選択するステップＳ３及び付加するステップＳ４の一実施形態を示すフローチャートである。方法は、図１のステップＳ２から継続する。次のステップＳ２０は、複数のカメラビューの相対位置に基づいて平面ビュー構成表現を選択する。カメラビュー又はカメラのグループが平面上に配置される場合、このビュー構成表現が選択される。グループ中のカメラビューの数は３つ以上であるのが好ましい。図３に示した全てのカメラビュー２２Ａ〜２８Ｄは平面上に存在するため、平面ビュー構成表現がカメラビュー２２Ａ〜２８Ｄのグループに対して選択される。
【００５５】
次のオプションのステップＳ２１は、インラインビュー構成表現の場合に対応して第１の平面ビューバージョン及び第２の平面ビューバージョンから選択する。ステップＳ２１の選択は、複数のカメラビューの相対位置に基づいて実行される。ステップＳ２１で第１の平面バージョンＶ１が選択される場合、ステップＳ２２は、平面に位置合わせされたカメラビューの全てのビュー識別子を平面ビュー構成表現に付加する。このステップＳ２２は、複数のカメラビューが直線にだけでなく平面に位置合わせされること以外は基本的に図６のステップＳ１２と同様に実行される。ビュー識別子は、例えば左上のカメラビューから開始して第１の行に沿って走査し且つ第２の行に継続するような所定の走査方式に従って平面のカメラビューを移動することにより取得された順序で含まれるのが好ましい。使用される他の可能な走査順序はジグザグ走査順序を含む。これは、例えば３×３のカメラ又はカメラビューを含むマトリクスが（行，列）で（１，１）、（１，２）、（２，１）、（３，１）、（２，２）、（１，３）、（２，３）、（３，２）及び（３，３）の順序で走査されることを意味する。更なる例は、飛越し走査順序である。
【００５６】
ステップＳ２２で第２の平面バージョンＶ０が選択される場合、ステップＳ２３は、開始ビュー識別子及び一定でない限りオプションの識別子の増分を平面ビュー構成表現に付加する。このステップＳ２３は、基本的に図６のステップＳ１３と同様に実行される。その後、図１のステップＳ５に進む。
【００５７】
図９Ａは、第１の平面バージョンに対する平面ビューボックス３４Ｂ、すなわち平面ビュー構成表現を示す。平面ビューボックス３４Ｂは、バージョン識別子３１及び平面に位置合わせされたカメラビューの全てのビュー識別子３６Ａを含む。図９Ｂは、バージョン識別子３１が第２の平面バージョンを信号で伝送する場合の平面ビューボックス３４Ｂを示す。平面ビューボックス３４Ｂは、開始ビュー識別子３６Ｂ及びオプションの識別子の増分３６Ｃを含む。平面ビューボックス３４Ｂは、平面に位置合わせされたカメラビューの数の情報、すなわちview_countをオプションとして含む。
【００５８】
インラインビュー構成表現と同様に、別の実施形態において、第１の平面バージョンのみ又は第２の平面バージョンのみが利用可能である。
【００５９】
平面ビューボックスは以下のように規定される。
ボックスタイプ：「plvi」
コンテナ：グローバル補助ビュー位置ボックス（「gsvp」）
必須：Ｎｏ
数量：０以上
aligned(8) class PlaneViewBox extends FullBox('plvi', version, 0){
if (version == 1){
for (i=0; ; i++){ //ボックスの最後まで
unsigned int(6) reserved1 = 0;
unsigned int(10) view_id;
}
} else {
unsigned int(6) reserυed2 = 0;
unsigned int(10) start_view_id;
unsigned int(16) view_count;
unsigned int(16) id_increment;
}
}
【００６０】
セマンティクス
versionは、平面ビューボックスの平面バージョンを指定する整数である。
view_idは、ＭＶＣ規格の草案のViewIdentifier Boxで指示されるようなカメラビューの識別子である。
start_view_idは、ViewIdentifierBoxで指示されるようなカメラビューのビュー識別子であり、これは平面に配置された一連の連続したカメラビューのうち最小のview_idである。
view_countは、平面に連続的に位置合わせされたカメラビューの数をカウントする整数である。
id_incrementは識別子の増分である。
【００６１】
図１０は、図１の選択するステップＳ３の一実施形態を示すフローチャートである。方法は、図１のステップＳ２から継続する。次のステップＳ３０は、複数のカメラビューの相対位置に基づいて矩形ビューアレイ構成を選択する。そのような矩形ビュー構成表現は、平面に矩形の格子又はグリッドを形成するカメラビュー又はカメラのグループを表現するのに適する。グループ中のカメラビューの数は４つ以上であるのが好ましく、周期的なパターンで同等に離間されるのが好ましい。図３は、カメラビュー２２Ａ〜２８Ｄのグループが矩形アレイに配置されることを示す。
【００６２】
次のステップＳ３１は、矩形のカメラビューアレイの行数の表現及び列数の表現を平面ビューアレイ構成表現に付加する。ステップＳ３２において、矩形カメラビューアレイの連続した行の間の距離の表現及び連続した列の間の距離の表現が判定され且つ矩形ビューアレイ構成表現に含まれる。図１のステップＳ４に進み、矩形アレイのカメラビューのビュー識別子が構成表現に含まれる。ビュー識別子は、上述の走査方式により判定されるような順序で含まれるのが好ましい。
【００６３】
図１１は、一実施形態に従って矩形ビューボックス３４Ｃ、すなわち矩形ビューアレイ構成表現を示す概略図である。矩形ビューボックス３４Ｃは、矩形アレイの行数の表現３５Ａ及び列数の表現３５Ｂ、並びに連続した行の間の距離の表現３７Ａ及び連続した列の間の距離の表現３７Ｂを含む。矩形アレイに編成されたカメラビューのビュー識別子３６Ａは、矩形ビューボックス３４Ｃに更に含まれる。
【００６４】
インラインビューボックス及び平面ビューボックスと同様に２つの矩形バージョンの間の選択は、矩形ビューボックス３４Ｃに対しても使用される。更に、カメラビューの全てのビュー識別子３６Ａを明示的に一覧表示する代わりに、ビュー識別子の明示的な一覧表示を提供するために開始ビュー識別子及びオプションの識別子の増分が使用されてもよい。
【００６５】
矩形ビューボックス３４Ｃは、メディアコンテナファイルにおいて以下のように表される。
ボックスタイプ：「rtvi」
コンテナ：グローバル補助ビュー位置ボックス（「gsvp」）
必須：Ｎｏ
数量：０以上
aligned(8) class RectangularViewBox extends Box('rtvi'){
unsigned int(32) row_view_count;
unsigned int(32) row_interval;
unsigned int(32) column_view_count;
unsigned int(32) column_interval;
for (i=0; i＜row_view_count; i++){
for (j=0; j＜column_view_count; j++){
unsigned int (6) reserved = 0;
unsigned int(10) view_id[i][j];
}
}
}
【００６６】
セマンティクス
row_view_countは、矩形アレイにおける行数を指定する。
row_intervalは、矩形アレイにおける２つの行の間の距離を示す。
column_view_countは、矩形アレイにおける列数である。
column_intervalは、矩形アレイにおける２つの列の間の距離を指定する。
view_id[i][j]は、ＭＶＣ規格の草案のViewIdentifier Boxで指示されるようなカメラビューの識別子である。
【００６７】
図１２は、図１の選択するステップＳ３及び付加するステップＳ４の一実施形態を示すフローチャートである。方法は、図１のステップＳ２から継続する。次のステップＳ４０は、複数のカメラビューの相対位置に基づいて球体ビュー構成表現を選択する。この構成表現は、球面に配置されたカメラビュー又はカメラのグループに対して利用可能である。カメラビューは、例えば球の周囲に沿って提供されてもよい。すなわち、基本的に球の中心を中心とする円の円周に沿って位置付けられ且つ同一の半径を有する。カメラビューが球面の一部分にわたり配置されるような更に高度な実施形態も可能である。一般に、カメラビューの数は４つ以上であるのが好ましい。
【００６８】
図１２の次のステップＳ４１は、球の半径及び中心座標の情報を球体ビュー構成表現に付加する。オプションの一実施形態において、２つの球体ビューバージョンがインラインビュー構成表現及び平面ビュー構成表現と同様に利用可能である。ステップＳ４２は、カメラビューの相対位置に基づいてカメラビューの現在のグループに対して使用する球体バージョンビューを選択する。第１の球体ビューバージョンが選択される場合、ステップＳ４３において、グループ中のカメラビューの全てのビュー識別子が球体ビュー構成表現に明示的に含まれる。しかし、第２の球体ビューバージョンが選択される場合、グループ中のカメラビューの総数の情報に加えて、開始ビュー識別子及びオプションの識別子の増分が含まれる。
【００６９】
その後、図１のステップＳ５に進む。
【００７０】
別の実施形態において、第１の球体バージョン及び第２の球体バージョンの一方のみが利用可能である。
【００７１】
図１３Ａは、第１の球体バージョンに従って球体ビューボックス３４Ｄを示す。球体ビューボックス３４Ｄは、球体バージョン識別子３１に加えて球の半径３９Ａ及び中心座標３９Ｂの情報を含む。カメラビュー３６Ａは、この球体バージョンで球体ビューボックスに明示的に一覧表示される。
【００７２】
図１３Ｂは、第２の球体バージョンに従って球体ビューボックス３４Ｄを示す。球体ビューボックス３４Ｄは、明示的に一覧表示されたビュー識別子の代わりに、開始ビュー識別子３６Ｂ及び一定でない限り１又は他の整数等のオプションの識別子の増分を含む。
【００７３】
球体ビューボックスは、以下のようにメディアコンテナファイルに規定されてもよい。
ボックスタイプ：「spvi」
コンテナ：グローバル補助ビュー位置ボックス（「gsvp」）
必須：Ｎｏ
数量：０以上
aligned(8) class SphereViewBox extends FullBox('spvi'){
unsigned int(32) radius;
unsigned int(32) center_of_sphere[3];
if(version == 1){
for (i=0; ; i++){ //ボックスの最後まで
unsigned int(6) reserved1 = 0;
unsigned int(10) view_id;
}
} else {
unsigned int(6) reserved2 = 0;
unsigned int(10) start_view_id;
unsigned int(16) view_count;
unsigned int(16) id_increment;
}
}
【００７４】
セマンティクス
versionは、球体ビューボックスの球体バージョンを指定する整数である。
radiusは、球体ビューアレイ構成における球の半径を指定する。
center_of_sphereは、球の中心点座標である。
view_idは、ＭＶＣ規格の草案のViewIdentifier Boxで指示されるようなカメラビューの識別子である。
start_view_idは、ViewIdentifierBoxで指示されるようなカメラビューのビュー識別子であり、これは球面に配置された一連の連続したカメラビューのうち最小のview_idである。
view_countは、球面に連続的に位置合わせされたカメラビューの数をカウントする整数である。
id_incrementは識別子の増分である。
【００７５】
図１４は、図１の選択するステップＳ３の一実施形態を示すフローチャートである。方法は、図１のステップＳ２から継続する。ステップＳ５０は、複数のカメラビューの相対位置に基づいて立体ビュー構成表現を選択する。この立体ビュー構成は、３次元（３Ｄ）映像をレンダリングするために使用される一対のカメラビューを示す。従って、カメラビューは人間の視覚系に適切な焦点角度及び左眼と右眼との距離を有するのが好ましい。
【００７６】
ステップＳ５０から図１のステップＳ４に進み、左カメラビュー及び右カメラビューのビュー識別子は、立体ビュー構成表現に含まれる。
【００７７】
図１５は、立体ビューボックス３４Ｅ、すなわち立体ビュー構成表現の一実施形態を概略的に示す。立体ビューボックスは、立体ビューペアを形成する左カメラビュー及び右カメラビューのそれぞれの上記識別子３６Ｄ及び３６Ｅを含む。
【００７８】
立体ビューボックス３４Ｅは以下のように実現される。
ボックスタイプ：「stvi」
コンテナ：グローバル補助ビュー位置ボックス（「gsvp」）
必須：Ｎｏ
数量：０以上
aligned(8) class StereoViewBox extends Box('stvi'){
unsigned int(6) reserved1 = 0;
unsigned int(10) left_view_id;
unsigned int(6) reserυed2 = 0;
unsigned int(10) right_view_id;
}
【００７９】
セマンティクス
left_view_idは、ＭＶＣ規格の草案のViewIdentifierBoxに示されるようなカメラビューのビュー識別子であり、左眼ビューとして使用される。
right_view_idは、右眼ビューとして使用される対応するビュー識別子である。
【００８０】
複数のカメラビューの所定のグループは、上述したように複数のビュー構成表現が割り当てられる。そのような場合、複数のビュー構成表現は同一のタイプ又は異なるタイプであってもよい。例えば図３に示したカメラビュー配置は、潜在的に３４個の異なるインラインビュー構成表現、平面ビュー構成表現、矩形ビュー構成表現及び可能性として１つ以上の立体ビュー構成表現が割り当てられる。
【００８１】
従って、上述した所定のビュー構成表現の定義は排他的ではない。例えば、矩形ビュー構成は平面ビュー構成でもあるが、その逆は必ずしも成り立たない。メディアコンテナファイルを作成するコンテンツプロバイダが現在のカメラビュー構成に最も重要であるか又は最も関連性が高いと考える１つ以上のビュー構成を指定することは、コンテンツプロバイダに依存する。コンテンツ作成者は、複数のカメラにより録画された特定のシーンに基づいて選択する１つ以上のビュー構成表現のタイプを更に選択してもよい。例えばニュースナレータのシーンにおいては、球体ビュー構成が有益である。これに対応して、１００ｍ走等のトラック競技においてはインラインビュー構成が適切な選択であり、その一方で、平面ビュー構成及び矩形ビュー構成は対戦やオリンピック大会等の広範なシーンの取り込みに使用されてもよい。
【００８２】
メディアコンテナファイルに含まれた多視点映像データを生成するのに使用される複数のカメラビューのグローバル構成を表すために選択されたビュー構成表現に加えて、メディアコンテナファイルはカメラビューの局所的な関係を記述する情報を更に含んでもよい。そのような局所的な関係の例は、隣接するビュー、すなわち現在のカメラビューに対して距離が最も近いカメラビュー、並びにオーバラッピングビュー、すなわちオーバラッピングコンテンツ領域を有するカメラビューを指定することである。
【００８３】
そのような場合、メディアコンテナファイルは、図１７に示すようにいわゆるローカル補助ビュー位置ボックス４０を含んでもよい。ローカル補助ビュー位置ボックス４０は、以下のようにメディアコンテナファイルに実現される。
ボックスタイプ：「lsvp」
コンテナ：ローカル補助ビュー位置コンテナボックス（「lvpc」）
必須：Ｎｏ
数量：０以上
aligned(8) class LocalSupplementaryViewPositionBox
extends FullBox('lsvp', version = 0, 0){
LocalPosistionViewIdentifierBox(); //必須
AdjacentViewBox();   //オプション
OverlapViewBox();   //オプション
}
【００８４】
この図示する例において、ローカル補助ビュー位置ボックス４０は、メディアコンテナファイルに配置されたローカル補助ビュー位置コンテナボックスに提供される。ローカル補助ビュー位置コンテナボックスは以下のように実現される。
【００８５】
ボックスタイプ：「lvpc」
コンテナ：サンプルエントリ（「avc1」、「avc2」、「mvc1」）
必須：Ｎｏ
数量：０又は１
aligned(8) class LocalSupplementaryViewPositionContainerBox
extends FullBox('lsvp', version = 0, 0){
LocalSupplementaryViewPositionBox(); //オプション
}
【００８６】
あるいは、ローカル補助ビュー位置コンテナボックスは省略されてもよい。
【００８７】
ローカル補助ビュー位置ボックス４０は、基本ビューと考えられる１つのカメラビューのビュー識別子５１を指定するローカル位置ビュー識別子ボックスを含む。従って、ローカル補助ビュー位置ボックス５０は以下のように実現される。
ボックスタイプ：「lpvi」
コンテナ：ローカル補助ビュー位置ボックス（「lsvp」）
必須：Ｙｅｓ
数量：１
aligned(8) class LocalPositionViewIdentifierBox
extends Box('lpvi'){
unsigned int(6) reserved = 0;
unsigned int(10) view_id;
}
【００８８】
セマンティクス
view_idは、隣接及び／又はオーバラップ情報がローカル補助ビュー位置ボックスに含まれる他のボックスにより提供されてもよいカメラビューのビュー識別子である。
【００８９】
オプションの隣接ビューボックス７０は、ローカル位置ビュー識別子ボックス５０で識別された基本カメラビューに対する距離に関して最近接する１つ以上のカメラビューの１つ以上のビュー識別子７１を含む。隣接ビューボックス７０は以下のように実現されてもよい。
ボックスタイプ：「advi」
コンテナ：ローカル補助ビュー位置ボックス（「lsvp」）
必須：Ｎｏ
数量：０又は１
aligned(8) class AdjacentViewBox extends Box('advi'){
for (i=0; ; i++){  //ボックスの最後まで
unsigned int(6) reserved = 0;
unsigned int(10) view_id;
}
}
【００９０】
セマンティクス
view_idは、ローカル位置ビュー識別子ボックス５０で識別されたカメラビューに隣接するカメラビューのビュー識別子である。
【００９１】
隣接ビューは、近傍に配置されたカメラの物理的位置定義である。これは、カメラの一に関連するが、カメラが撮影しているシーン又は被写体については考慮しない。３つ以上のカメラのグループの２つのカメラの距離が最近接している限り、それらのカメラは、異なる方向又は反対方向を撮影している可能性があるが隣接カメラに分類される。
【００９２】
隣接ビューとは対照的に、オーバラップビューは、少なくとも２つのカメラのカメラビューが少なくとも部分的にオーバラップしていることを規定するコンテンツ毎の表現である。そのような一実施形態において、オーバラッピングカメラビューの表現は、メディアコンテナファイルに編成される。
【００９３】
図１６は、そのようなオーバラップビュー表現を提供する一実施形態を示すフローチャートである。方法は、図１のステップＳ５から継続する。図１６及び図１７を参照すると、次のステップＳ６０は、少なくとも１つのメディアトラックに対してメディアコンテナファイルにオーバラッピングカメラビューの表現４０を関連付けて編成する。ステップＳ６１において、基本ビュー識別子として選択されたカメラビューのビュー識別子５１は、好ましくはローカル位置ビュー識別子ボックス５０に含まれることによりオーバラッピングカメラビューの表現４０に含まれる。
【００９４】
ステップＳ６２において、基本カメラビューと少なくとも部分的にオーバラップする１つ以上のカメラビューの１つ以上のビュー識別子６１は表現４０に含まれる。図２において、カメラビュー２２が基本カメラビューとして選択される場合、カメラビュー２４は、オーバラッピングカメラビューとなる。これに対応して、カメラビュー２４が基本カメラビューである場合、カメラビュー２２及びカメラビュー２６はオーバラッピングビューとなる。
【００９５】
被写体又はシーンと撮影しているカメラとの間の距離は、異なるオーバラップ領域を与える。例えば、２つのカメラが警察官を録画してもよい。警察官が２つのカメラの前に近接して立っている場合、左側のカメラは左腕を撮影し、右側のカメラは右腕を撮影する。そのような場合、２つのカメラビューの間にはオーバラッピング領域は存在しない。警察官が離れて立っている場合、双方のカメラは警察官の全体像を撮影でき、その結果、警察官が立っているカメラの画面の領域はオーバラップ領域に属する。
【００９６】
従って、カメラと共通に関心のある被写体との距離を指定する被写体距離６２が判定され且つステップＳ６３で表現４０に含まれるのが好ましい。
【００９７】
図１６、図１７及び図２０を参照すると、オーバラッピングビュー２４が基本カメラビュー２２にオーバラップする方法を規定するために、水平オフセット８３を指定するオフセット情報６３及び垂直オフセット８４を指定するオフセット情報６４がステップＳ６４において表現４０に含まれる。オーバラッピング領域のサイズは、サイズ情報６５、６６、好ましくはオーバラッピング領域の幅８５及び高さ８６により規定される。ステップＳ６５において、このサイズ情報６５、６６は表現４０に含まれる。
【００９８】
図１７において、オーバラッピング領域及びカメラビューに関連する情報は、ローカル補助ビュー位置ボックス４０に含まれたオーバラップビューボックス６０に提供される。オーバラップビューボックス６０は以下のように実現される。
ボックスタイプ：「olvi」
コンテナ：ローカル補助ビュー位置ボックス（「lsvp」）
必須：Ｎｏ
数量：０以上
aligned(8) class OverlapViewBox extends Box('spvi'){
unsigned int(6) reserved = 0;
unsigned int(10) view_id;
unsigned int(1) dynamic_overlap;
unsigned int(7) reserved = 0;
unsigned int(32) object_distance;
if (dynamic overlap == 0){
unsigned int(16) horizontal_offset;
unsigned int(16) vertical_offset;
unsigned int(16) region_width;
unsigned int(16) region_height;
}
}
【００９９】
セマンティクス
view_idは、ローカル位置ビュー識別子ボックス５０で識別されたカメラビューとオーバラップしているカメラビューの識別子である。
dynamic_overlapは、１である場合、現在の層により表された領域が基本領域の動的に変化する矩形部分であることを示す。あるいは、すなわち０である場合、現在の層により表された領域は基本領域の固定された矩形部分である。
object_distanceは、複数のカメラと関心のある共通の被写体との間の距離を示す。これが値０を有する場合、オーバラップ領域に対して利用可能な情報は存在せず、オーバラップ領域は、例えば１００ユニット離れた被写体の距離を仮定してデフォルト値をとる。
horizontal_offset及びvertical_offsetは、基本領域の輝度サンプルにおいて、基本カメラビューにより表された基本領域の左上画素に対するカメラビューにより表された矩形領域の左上画素の水平オフセット及び垂直オフセットをそれぞれ与える。
region_width及びregion_heightは、基本領域の輝度サンプルにおいて、カメラビューにより表された矩形領域の幅及び高さをそれぞれ与える。
【０１００】
ローカル補助ビュー位置ボックス４０は、最近接する隣接カメラビューの数及び情報がコンテンツ作成者により有益であると考えられてローカル補助ビュー位置ボックス４０に含まれるべきであるか否かに依存して０、１又は複数個の隣接ビューボックス７０を含んでもよい。これに対応して、０、１又は複数個のオーバラップビューボックス６０がオーバラッピングカメラビューの数に基づいて判定されるようにローカル補助ビュー位置ボックス４０毎に使用可能である。尚、メディアコンテナファイルは、０、１又は複数個のローカル補助ビュー位置ボックスを含むことができる。
【０１０１】
ローカル補助ビュー位置ボックスに含まれた情報は、ビュー構成表現により提供されたグローバルビュー情報に加えて関心のある追加情報又は付加情報として考えられる。別の方法において、いかなるビュー構成表現を選択することも含むことも必要なく、ローカル補助ビュー位置ボックスが使用され且つメディアコンテナファイルに含まれる。
【０１０２】
図１８は、一実施形態に係るメディアコンテナファイルを生成する装置を示す概略ブロック図である。装置１００は、メディアコンテナファイルの少なくとも１つのメディアトラックの映像コンテンツの複数のカメラビューを表す符号化映像データを編成するように構成されたトラック編成器１２０を含む。トラック編成器１２０は、複数のカメラビューの映像データを録画又は生成する機器１２〜１８及び録画又は生成した映像データを符号化するエンコーダ１９０を含む内部又は外部メディアエンジンに接続される。あるいは、トラック編成器１２０は、一般に符号化形式で又は非符号化映像データとして映像データを装置１００の接続された受信機１１０から受信する。受信機１１０は、通信システムにおいて外部端末から有線又は無線通信を介して映像データを受信する。更に別の例として、トラック編成器１２０は、装置１００の接続されたメディアメモリ１３０から多視点映像データを取り出せる。
【０１０３】
表現選択器１４０は、複数の所定のビュー構成表現のうち１つのビュー構成表現を選択するように実現される。選択は、少なくとも部分的に複数のカメラビューの相対位置に基づいて更に実行される。ビュー構成表現の選択は、カメラビュー配置の知識を有するコンテンツ作成者により手作業で実行されてもよい。そのような場合、表現選択器１４０は、ユーザ入力を含むか又はユーザ入力に接続され、ユーザ入力は、ビュー構成表現を選択するためにコンテンツ作成者により使用される。別の例として、カメラの座標は、例えばユーザ入力を介して又は映像データ自体から表現選択器１４０に提供される。表現選択器１４０は、カメラビュー配置及び相互関係を規定する複雑な計算を実行する処理能力を含む。メディアコンテナファイルがオフラインで生成され且つ一般に無制限の電力を利用できる装置１００にあるため、実際には冗長な計算が表現選択器１４０により実行される。そのような計算は、特に移動端末等の計算の処理能力が制限されたシン端末にとって、一般に不可能であるか又は少なくとも映像復号化及びレンダリングに関連して不都合である。
【０１０４】
識別子プロセッサ１６０は、表現選択器１４０により選択されたビュー構成表現に複数のカメラビューのビュー識別子を含むために装置１００に提供される。そのような場合、識別子プロセッサ１６０は、選択されたビュー構成表現により規定された所定の配置及び位置関係で複数のカメラビューの相対位置順序を記述する順序でビュー識別子を含むのが好ましい。
【０１０５】
ビュー識別子を含む選択されたビュー構成表現は、表現編成器１５０により少なくとも１つのメディアトラックに対してメディアコンテナファイルに関連付けて編成される。
【０１０６】
表現選択器１４０がインラインビュー構成表現を選択する場合、オプションのバージョンプロセッサ１７０は、直線状に位置合わせされたカメラビューの相対位置に基づいて第１のインラインバージョン及び第２のインラインバージョンから選択するために起動される。前者の場合、識別子プロセッサ１６０は、位置合わせされた全てのカメラビューのビュー識別子を含む。しかし、第２のバージョンがバージョン識別子により選択された場合、識別子プロセッサ１６０は、開始ビュー識別子及びオプションの識別子の増分を含む。この情報により、カメラビューに単純な計算が可能になる。
【０１０７】
バージョンプロセッサ１７０は、連続したカメラビューの各ビュー識別子を調査することによりバージョンを選択する。線に沿って移動した時にビュー識別子が増分又は減分により増加又は減少した場合、バージョンプロセッサ１７０は第２のインラインバージョンを選択し、それ以外の場合は第１のインラインバージョンが使用される。
【０１０８】
表現選択器１４０は、代わりに又は加えて平面ビュー構成表現を選択してもよい。そのような場合、バージョンプロセッサ１７０は、上述した第１の平面バージョン及び第２の平面バージョンから選択するのが好ましい。選択される平面バージョンに依存して、識別子プロセッサ１６０は、平面に存在する全てのカメラビューのビュー識別子、あるいは開始ビュー識別子、オプションのカメラビューの総数及びオプションの識別子の増分を含む。
【０１０９】
カメラビューの総数は、符号化多視点データに含まれた入力情報又はユーザ入力からの入力情報に基づいて数プロセッサ１７４により判定されてもよい。
【０１１０】
表現選択器１４０が矩形ビューアレイ構成表現を選択する場合、装置１００の数プロセッサ１７４は、矩形ビューアレイ構成表現の矩形カメラビューアレイの行数及び列数の表現を含む。距離プロセッサ１７６は、矩形ビューアレイ構成表現の連続した行の間の距離及び連続した列の間の距離の情報を含む。
【０１１１】
球体プロセッサ１７２は、表現選択器１４０が球体ビューアレイ構成表現を選択した場合に起動される。この球体プロセッサ１７２は、複数のカメラが配置される球の半径及び中心座標の情報を構成表現に含む。
【０１１２】
表現選択器１４０が立体ビュー構成表現を選択する場合、識別子プロセッサ１６０は、立体ビュー構成表現の左眼カメラビュー及び右眼カメラビューのビュー識別子を含む。
【０１１３】
装置１００は、メディアコンテナファイルに付加情報を提供するプロセッサをオプションとして更に含んでもよい。ビュープロセッサ１８２は、例えば線状に、平面に、矩形格子に又は球に配置される複数の利用可能なカメラビューの基本カメラビューとして選択されたカメラビューのビュー識別子を含んでもよい。ビュープロセッサ１８２は、基本カメラビューとして指定されたカメラビューまでの距離に関して最近接すると判定される１つ以上のカメラビューのビュー識別子を更に含んでもよい。
【０１１４】
ビュー編成器１８０は、少なくとも１つのメディアトラックに対してメディアコンテナファイルにオーバラッピングカメラビューの表現を関連付けて編成できる。ビュープロセッサ１８２は、オーバラッピングカメラビュー及び基本カメラビューの識別子を表現に付加する。
【０１１５】
装置１００の距離プロセッサ１７６又は別のプロセッサは、オーバラッピングカメラと関心のあるオーバラッピング被写体との間の距離の情報を含んでもよい。これに対応して、オフセットプロセッサ１８４は、基本カメラビューとオーバラッピングカメラビューとの間のオフセットの情報を含み、サイズプロセッサは、上述したようにオーバラッピング領域のサイズの情報を含む。
【０１１６】
装置１００の一実施形態に従って生成されたメディアコンテナフレームは、後で外部ユニットに送信するためにメディアメモリ１３０に入力され、外部ユニットはメディアコンテナファイルを転送又は処理する。あるいは、メディアコンテナファイルは、メディアサーバ、トランスコーダ、あるいはメディアレンダリング又は再生機能を有するユーザ端末等の外部ユニットに対して装置１００の送信機１１０により直接送信される。
【０１１７】
装置１００のユニット１１０、１２０及び１４０〜１９０は、ハードウェア、ソフトウェア、あるいはハードウェア及びソフトウェアの組み合わせで提供されてもよい。装置１００は、有線又は好ましくは無線通信システムのネットワークノードで構成されるのが有利である。装置１００は、コンテンツプロバイダ又はサーバの一部を構成でき、あるいはそれらに接続可能である。
【０１１８】
図１８において、受信機能性及び送信機能性の双方を含む組み合わせユニット、すなわちトランシーバが使用されている。あるいは、無線の実現例において別個の受信アンテナ及び送信アンテナ、あるいは組み合わされた送受信アンテナにオプションとして接続された専用受信機及び専用送信機が使用可能である。
【０１１９】
図１９は、実施形態が実現される無線通信システム１の一部分を示す概略図である。通信システム１は、１つ以上のネットワークノード又は基地局３００を含み、接続されたユーザ端末４００に通信サービスを提供する。基地局３００のうち少なくとも１つは、上述し且つ図１８に開示されたコンテナファイル生成装置１００を含むメディアサーバ又はプロバイダ２００を含むか又はそれに接続される。メディアコンテナファイルに含まれた多視点映像データは、通信システム１に提供されたユーザ端末２００及び／又は他のデータ処理装置に配信される。そのような場合、多視点映像データは、ユニキャスト送信で、あるいは図に概略的に示すようなマルチキャスト又はブロードキャスト送信の形態でユーザ端末４００に送信される。
【０１２０】
メディアコンテナファイルに含まれたビュー構成表現は、カメラ間の頻繁に使用される関係に関する高レベル情報を提供する。ビュー構成表現は、全てのカメラパラメータを走査せず且つ徹底的な計算を回避せずにカメラのパターンに関する直観的情報を非常に容易に提供するために使用される。従って、構成表現は、平面又は他の配置パターンで位置合わせされるカメラ及びカメラビュー、互いに隣接するカメラ、立体レンダリングに適するカメラビューを容易に見つけるために使用される。
【０１２１】
ビュー構成表現及びそれに含まれた情報は、例えばトランスコード又はレンダリング等の更なる処理を行うメディアデータを選択する時にレンダリング機器、メディアプレーヤ又は他のメディアプロセッサにより使用される。従って多視点映像データを録画するのに使用されるカメラが互いに対してどのように配置されるかの情報は、メディアコンテナファイルの映像データを処理するのに有利に使用される。例えば３Ｄ映像をレンダリングする時、立体ビュー構成表現により、３Ｄ効果を達成するために共にレンダリングするカメラビュー及び従ってカメラビューからの映像データの識別が可能になる。
【０１２２】
配置情報に基づく多視点映像データ処理の他の例は、直線状に配置された連続したカメラビューを切り替えたい場合である。従って、インラインビュー構成表現により、このようにレンダリングビューを切り替える時に使用するカメラビュー及びカメラビューからの映像データの識別が可能になる。これに対応して、球体ビューアレイ構成表現は、球面に配置されたカメラビューの間でパン又は移動したい場合に使用される。
【０１２３】
更に、ビュー構成表現に含まれた情報は、カメラビューの結合が適切であるか否か又は実際に可能であるか否かを判断するために、例えば隣接カメラがオーバラッピングビューを有するか否かのローカル情報と組み合わされる。結合の使用例は、いくつかのカメラビューの結合又は単一の３６０°パノラマビューを必要とする大画面及びプロジェクタである。
【０１２４】
ビュー構成表現は、被写体の追跡にも使用される。例えば、左から右に非常に迅速に進む被写体を仮定する。進む被写体の追跡が可能であるように水平インラインビュー構成表現が現在のカメラアレイに存在するかを認識することは利点である。
【０１２５】
添付の請求の範囲により規定される本発明の範囲から逸脱せずに、種々の変形及び変更が本発明に対して行われてもよいことは、当業者には理解されるだろう。
【図１】
0005298201.tif 000002
【図２】
0005298201.tif 000003
【図３】
0005298201.tif 000004
【図４】
0005298201.tif 000005
【図５】
0005298201.tif 000006
【図６】
0005298201.tif 000007
【図７Ａ】
0005298201.tif 000008
【図７Ｂ】
0005298201.tif 000009
【図８】
0005298201.tif 000010
【図９Ａ】
0005298201.tif 000011
【図９Ｂ】
0005298201.tif 000012
【図１０】
0005298201.tif 000013
【図１１】
0005298201.tif 000014
【図１２】
0005298201.tif 000015
【図１３Ａ】
0005298201.tif 000016
【図１３Ｂ】
0005298201.tif 000017
【図１４】
0005298201.tif 000018
【図１５】
0005298201.tif 000019
【図１６】
0005298201.tif 000020
【図１７】
0005298201.tif 000021
【図１８】
0005298201.tif 000022
【図１９】
0005298201.tif 000023
【図２０】
0005298201.tif 000024