(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-03
(45)【発行日】2024-09-11
(54)【発明の名称】マルチビュービデオ処理方法および装置
(51)【国際特許分類】
H04N 21/854 20110101AFI20240904BHJP
H04N 21/266 20110101ALI20240904BHJP
【FI】
H04N21/854
H04N21/266
(21)【出願番号】P 2022531493
(86)(22)【出願日】2019-11-29
(86)【国際出願番号】 CN2019122095
(87)【国際公開番号】W WO2021102953
(87)【国際公開日】2021-06-03
【審査請求日】2022-07-25
(73)【特許権者】
【識別番号】511151662
【氏名又は名称】中興通訊股▲ふん▼有限公司
【氏名又は名称原語表記】ZTE CORPORATION
【住所又は居所原語表記】ZTE Plaza,Keji Road South,Hi-Tech Industrial Park,Nanshan Shenzhen,Guangdong 518057 China
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】リー, チウティン
(72)【発明者】
【氏名】フアン, チェン
【審査官】大西 宏
(56)【参考文献】
【文献】特表2016-506693(JP,A)
【文献】特表2018-513574(JP,A)
【文献】特表2018-530967(JP,A)
【文献】国際公開第2018/098054(WO,A1)
【文献】国際公開第2018/130491(WO,A1)
【文献】Minjae Seo;Jong-Ho Paik,Encapsulation Methods for Stable Free-Viewpoint Video Streaming Services,2018 Tenth International Conference on Ubiquitous and Future Networks (ICUFN),米国,IEEE,2018年,741-743,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8436955
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 -21/858
(57)【特許請求の範囲】
【請求項1】
メディアコンテンツを構築する方法であって、前記方法は、
複数のビューに関連付けられているメディアファイルの中に複数のメディアサンプルを設置することであって、前記複数のビューは、1つまたは複数の基本ビューと前記1つまたは複数の基本ビューの1つまたは複数の付加的ビューとを含み、各メディアサンプルは、前記複数のビューのうちの1つまたは複数のビューに対応し、かつ、前記対応するビューのテクスチャコンポーネントまたは深度コンポーネントのうちの少なくとも1つを含む、ことと、
前記1つまたは複数の基本ビューに対応する基本ビューメディアトラックと、前記1つまたは複数の付加的ビューに対応する1つまたは複数の付加的ビューメディアトラックとを決定することであって、各メディアトラックは、前記対応するビューについての情報を説明するための1つまたは複数のインジケータを含む、ことと、
前記複数のメディアサンプルが設置される複数のメディアトラックをグループ化することによって、前記1つまたは複数のインジケータに基づいて、前記複数のメディアサンプルから前記メディアコンテンツを構築することと
を含み、
前記メディアファイルは、メディアトラックグループに属する前記基本ビューメディアトラックおよび前記1つまたは複数の付加的ビューメディアトラックを含み、前記メディアトラックグループに属する前記基本ビューメディアトラックは、前記1つまたは複数の基本ビューに対応する1つまたは複数のアトラスのテクスチャコンポーネントまたは深度コンポーネントのうちの少なくとも1つを記憶し、前記メディアトラックグループに属する前記1つまたは複数の付加的ビューメディアトラックは、前記1つまたは複数の付加的ビューに対応する1つまたは複数のアトラスの付加的テクスチャコンポーネントまたは付加的深度コンポーネントのうちの少なくとも1つを記憶し、
前記メディアコンテンツは、前記1つまたは複数の基本ビューおよび前記1つまたは複数の付加的ビューの
1つまたは複数のアトラス
に対応する複数のパッチを使用して構築され、前記複数のパッチは、1つまたは複数のカメラによって捕捉されたビデオの1つまたは複数のビューから導出され、前記複数のアトラスのそれぞれは、複数のパッチの集約を含み、1つまたは複数のアトラス内の複数のパッチは、ユーザが視認することを所望する画像を合成するために選択され
、
前記1つまたは複数のインジケータは、前記1つまたは複数の基本ビューの前記複数のアトラスを示すための第1のインジケータを含み、前記第1のインジケータは、前記基本ビューメディアトラックに配置され、前記1つまたは複数の基本ビューの前記1つまたは複数のアトラスは、前記第1のインジケータを参照することによって決定され、前記1つまたは複数の付加的ビューの前記1つまたは複数のアトラスは、前記1つまたは複数の基本ビューの前記1つまたは複数のアトラスを参照することによって決定される、方法。
【請求項2】
各基本ビューは、基本ビューアトラスに対応する、請求項1に記載の方法。
【請求項3】
前記1つまたは複数のインジケータは、各メディアトラックが、前記テクスチャコンポーネントまたは前記深度コンポーネント、または、前記テクスチャコンポーネントおよび前記深度コンポーネントの両方を含有するかどうかを示すためのインジケータを含む、請求項1に記載の方法。
【請求項4】
前記1つまたは複数のインジケータは、前記テクスチャコンポーネントおよび前記深度コンポーネントのどの部分が前記メディアトラック内に含有されているかを定義するためのアトラス属性インジケータを含む、請求項1に記載の方法。
【請求項5】
前記1つまたは複数のインジケータは、前記対応するビューを説明するためのビュー識別子を含む、請求項1に記載の方法。
【請求項6】
前記メディアコンテンツの構築は、複数の異なるメディアサンプルからの複数のパッチを組み合わせることを含む、請求項1に記載の方法。
【請求項7】
メディアコンテンツを構築する方法であって、前記方法は、
複数のビューに関連付けられているメディアファイルの中に複数のメディアサンプルを設置することであって、前記複数のビューは、複数の基本ビューと前記複数の基本ビューの複数の付加的ビューとを含み、各メディアサンプルは、前記複数のビューのうちの1つに対応し、かつ、前記対応するビューに関連付けられているテクスチャコンポーネントまたは深度コンポーネントのうちの少なくとも1つを含む、ことと、
前記複数の基本ビューにそれぞれ対応する複数の基本ビューメディアトラックと、前記複数の付加的ビューにそれぞれ対応する複数の付加的ビューメディアトラックとを決定することであって、各メディアトラックは、前記対応するビューについての情報を説明するための1つまたは複数のインジケータを含む、ことと、
前記複数のメディアサンプルが設置される複数のメディアトラックをグループ化することによって、前記1つまたは複数のインジケータに基づいて、前記複数のメディアサンプルから前記メディアコンテンツを構築することと
を含み、
前記メディアファイルは、メディアトラックグループに属する前記複数の基本ビューメディアトラックおよび前記複数の付加的ビューメディアトラックを含み、前記メディアトラックグループに属する前記複数の基本ビューメディアトラックは、前記複数の基本ビューに対応する1つまたは複数のアトラスのテクスチャコンポーネントまたは深度コンポーネントのうちの少なくとも1つを記憶し、前記メディアトラックグループに属する前記複数の付加的ビューメディアトラックは、前記複数の付加的ビューに対応する1つまたは複数のアトラスの付加的テクスチャコンポーネントまたは付加的深度コンポーネントのうちの少なくとも1つを記憶し、
前記メディアコンテンツは、前記複数の基本ビューおよび前記複数の付加的ビューの
1つまたは複数のアトラス
に対応する複数のパッチを使用して構築され、前記複数のパッチは、1つまたは複数のカメラによって捕捉されたビデオの1つまたは複数のビューから導出され、前記複数のアトラスのそれぞれは、複数のパッチの集約を含み、1つまたは複数のアトラス内の複数のパッチは、ユーザが視認することを所望する画像を合成するために選択され
、
前記1つまたは複数のインジケータは、前記1つまたは複数の基本ビューの前記複数のアトラスを示すための第1のインジケータを含み、前記第1のインジケータは、前記基本ビューメディアトラックに配置され、前記1つまたは複数の基本ビューの前記1つまたは複数のアトラスは、前記第1のインジケータを参照することによって決定され、前記1つまたは複数の付加的ビューの前記1つまたは複数のアトラスは、前記1つまたは複数の基本ビューの前記1つまたは複数のアトラスを参照することによって決定される、方法。
【請求項8】
前記1つまたは複数の基本ビューに基づいて入手された画像は、他の画像を予測するためのベース画像として使用される、請求項7に記載の方法。
【請求項9】
前記1つまたは複数のインジケータは、複数の異なるビューを含有する複数の異なるメディアトラックをグループ化するためのグループ化タイプを説明するエンティティレベルグループ化インジケータを含む、請求項7に記載の方法。
【請求項10】
各メディアトラックは、前記複数のビューを基本ビューまたは付加的ビューとして識別するためのインジケータを含む、請求項7に記載の方法。
【請求項11】
無線通信のための装置であって、前記装置は、メモリとプロセッサとを備え、前記プロセッサは、前記メモリからコードを読み取り、請求項1~10のいずれかに記載の方法を実装する、装置。
【発明の詳細な説明】
【技術分野】
【0001】
本特許文書は、概して、没入型技術に関する。
【背景技術】
【0002】
人間とコンピュータの相互作用および人工知能技術の最近の発展に伴って、没入型技術が、我々の労働および生活方法に革命を起こしている。没入型技術は、マーケティングおよび広告、保健医療、教育、およびゲームを含む、いくつかの分野に適用されている。新しい没入型技術の高速発展は、ビデオおよび画像データを効果的に処理することを要求する。
【発明の概要】
【課題を解決するための手段】
【0003】
開示されるものは、メディアコンテンツ伝送を効果的に低減させ、没入型メディアコンテンツを効率的にレンダリングする、X、Y、およびZ軸に沿った、付加的な限定された平行移動(典型的には、頭部移動)を伴う、3DOFをサポートする、メディアデータの表現に関する、方法、デバイス、およびアプリケーションである。
【0004】
開示される技術の例示的実施形態では、本方法は、ユーザによって、ユーザの現在の視認位置、視認方向、およびビューポートに従って、メディアファイルをサーバに要求するステップと、ユーザによって、ユーザの現在の視認位置、視認方向、およびビューポートに従って、メディアファイルをサーバから受信するステップと、1つまたは複数のアトラスのパッチを抽出するステップと、ユーザの現在のビューポート内の視覚的コンテンツを合成するステップと、ユーザによって、ユーザの現在のビューポート内の3次元立体視ビデオコンテンツを取得するステップとを含む。
【0005】
開示される技術の別の例示的実施形態では、メディアコンテンツを構築する方法は、各メディアサンプルが、複数のビューのうちの1つまたは複数のものに対応し、対応するビューのテクスチャコンポーネントまたは深度コンポーネントのうちの少なくとも1つを含むように、複数のメディアサンプルを、1つまたは複数の基本ビューおよび1つまたは複数の付加的ビューを含む、複数のビューと関連付けられる、メディアファイルの中に(またはそこから)設置する(または抽出する)ステップと、各メディアトラックが、対応するビューについての情報を説明するための1つまたは複数のインジケータを含むように、1つまたは複数の基本ビューに対応する、基本ビューメディアトラック、および1つまたは複数の付加的ビューメディアトラックを決定するステップと、複数のメディアサンプルを、そのそれぞれが、1つの基本ビューと関連付けられる、1つまたは複数のサンプルグループにグループ化することによって、1つまたは複数のインジケータに基づいて、メディアコンテンツを複数のメディアサンプルから構築するステップ、またはその中に複数のメディアサンプルが設置される、複数のメディアトラックをグループ化することによって、1つまたは複数のインジケータに基づいて、メディアコンテンツを複数のメディアサンプルから構築するステップとを含む。
【0006】
開示される技術のさらに別の例示的実施形態では、メディアコンテンツを構築する方法は、各メディアサンプルが、複数のビューのうちの1つに対応し、対応するビューと関連付けられる、テクスチャコンポーネントまたは深度コンポーネントのうちの少なくとも1つを含むように、複数のメディアサンプルを複数の基本ビューおよび複数の付加的ビューを含む、複数のビューと関連付けられる、メディアファイルの中に(またはそこから)設置する(または抽出する)ステップと、各メディアトラックが、対応するビューについての情報を説明するための1つまたは複数のインジケータを含むように、それぞれ、複数の基本ビューに対応する、複数の基本ビューメディアトラック、およびそれぞれ、複数の付加的ビューに対応する、複数の付加的ビューメディアトラックを決定するステップと、複数のメディアサンプルを、そのそれぞれが少なくとも1つの基本ビューと関連付けられる、1つまたは複数のメディアサンプルグループの中にグループ化することによって、1つまたは複数のインジケータに基づいて、メディアコンテンツを複数のメディアサンプルから構築するステップとを含む。
【0007】
開示される技術のさらに別の例示的実施形態では、メディアコンテンツを構築する方法は、複数のビューと関連付けられる、メディアファイルの中に(またはそこから)、視認方向、視認位置、および視認ウィンドウに従って、複数のビューに対応する、カメラパラメータを含む、カメラ情報を設置する(または抽出する)ステップと、カメラパラメータ情報に基づいて、メディアメタデータをメディアファイルから選択するステップと、メディアメタデータに基づいて、メディアコンテンツを構築するステップとを含む。
【0008】
いくつかの実施形態は、好ましくは、以下のように、これらの方法を実装してもよい。
【0009】
上記の方法では、ベースビューは、他のビューを予測するためのビューを含む。
【0010】
上記の方法では、各基本ビューは、基本ビューアトラスに対応する。
【0011】
上記の方法では、パッチは、基本ビューアトラスに基づいて入手される。
【0012】
上記の方法では、メディアコンテンツは、1つまたは複数の基本ビューと1つまたは複数の付加的ビューの組み合わせに基づいて構築される。
【0013】
上記の方法では、1つまたは複数のインジケータは、サンプルグループの中に、2つまたは複数の基本ビューのアトラスに対応する、複数のサンプルをグループ化するためのインジケータを含む。
【0014】
上記の方法では、1つまたは複数のインジケータは、各メディアトラックが、テクスチャコンポーネントまたは深度コンポーネントまたは両方を含有するかどうかを示すためのインジケータを含む。
【0015】
上記の方法では、1つまたは複数のインジケータは、各メディアトラックが、テクスチャコンポーネントまたは深度コンポーネントまたは両方を含有するかどうかを示すためのインジケータを含む。
【0016】
上記の方法では、1つまたは複数のインジケータは、メディアトラック内に含有される、テクスチャコンポーネントおよび深度コンポーネントの部分を定義するためのアトラス属性インジケータを含む。
【0017】
上記の方法では、1つまたは複数のインジケータは、対応するビューを説明するためのビュー識別子を含む。ある実装では、各メディアトラックは、アトラスモードとして記憶される、1つまたは複数のビューを含む。
【0018】
上記の方法では、メディアコンテンツの構築は、異なるビューからのパッチを組み合わせるステップを含む。ある実装では、アトラスは、1つまたは複数のビューからの1つまたは複数のパッチの集約を含有する。
【0019】
上記の方法では、1つまたは複数のインジケータは、各アトラス内のパッチの数を説明する、インジケータを含む。
【0020】
上記の方法では、1つまたは複数のインジケータは、パッチが、アトラスから、対応するビューにマッピングする、回転角度に対するパッチ回転インジケータを含む。
【0021】
上記の方法では、1つまたは複数のインジケータは、異なるビューを含有する異なるメディアトラックをグループ化するためのグループ化タイプを説明する、ファイルレベルグループ化インジケータを含む。
【0022】
上記の方法では、ファイルレベルグループ化インジケータは、基本ビューと1つまたは複数の付加的ビューとの間のグループ化情報を含む。
【0023】
上記の方法では、ファイルレベルグループ化インジケータは、グループ内のエンティティの数を含む。
【0024】
上記の方法では、各メディアトラックは、複数のビューを基本ビューまたは付加的ビューとして識別するためのインジケータを含む。
【0025】
上記の方法では、カメラ情報は、メディアファイルベースで抽出される。
【0026】
上記の方法では、カメラ情報は、メディアトラックベースで抽出される。
【0027】
上記の方法では、複数のメディアトラックはそれぞれ、複数のビューのパッチからのものであって、各ビューは、1つのカメラに対応する。
【0028】
上記の方法では、ユーザの複数のビューは、少なくとも1つの基本ビューと、少なくとも1つの基本ビューと関連付けられる、少なくとも1つの付加的ビューとを含む。
【0029】
上記の方法では、少なくとも1つの基本ビューのメディアデータは、少なくとも1つの基本ビューと関連付けられる、少なくとも1つの付加的ビューのベース画像として使用される。
【0030】
上記の方法では、ユーザの複数のビューは、それぞれ、異なるメディアトラック内に記憶される、2つまたは複数の基本ビューを含む。
【0031】
上記の方法では、カメラ情報は、メディアトラックグループ内のメディアデータが、メディアトラックグループに対応する、ある空間範囲内の画像をデコーディングするために使用されるべきであることを示す、メディアトラックグループを含む。
【0032】
開示される技術のさらに別の例示的実施形態では、上記に説明される方法は、プロセッサ実行可能コードの形態で具現化され、コンピュータ可読プログラム媒体内に記憶される。
【0033】
開示される技術のさらに別の例示的実施形態では、上記に説明される方法を実施するように構成される、または動作可能である、デバイスが、開示される。
【0034】
上記および他の側面およびその実装は、図面、説明、および請求項において、より詳細に説明される。
本発明は、例えば、以下を提供する。
(項目1)
メディアコンテンツを構築する方法であって、
各メディアサンプルが、複数のビューのうちの1つまたは複数のものに対応し、上記対応するビューのテクスチャコンポーネントまたは深度コンポーネントのうちの少なくとも1つを含むように、複数のメディアサンプルを、1つまたは複数の基本ビューおよび1つまたは複数の付加的ビューを含む複数のビューと関連付けられるメディアファイルの中に設置することと、
各メディアトラックが、上記対応するビューについての情報を説明するための1つまたは複数のインジケータを含むように、上記1つまたは複数の基本ビューおよび1つまたは複数の付加的ビューメディアトラックに対応する基本ビューメディアトラックを決定することと、
上記複数のメディアサンプルを、そのそれぞれが1つの基本ビューと関連付けられる1つまたは複数のメディアサンプルグループの中にグループ化することによって、またはその中に上記複数のメディアサンプルが設置される複数のメディアトラックをグループ化することによって、上記1つまたは複数のインジケータに基づいて、上記メディアコンテンツを上記複数のメディアサンプルから構築することと
を含む、方法。
(項目2)
各基本ビューは、n個の基本ビューアトラスに対応する、項目1に記載の方法。
(項目3)
パッチは、上記基本ビューアトラスに基づいて入手される、項目2に記載の方法。
(項目4)
上記メディアコンテンツは、1つまたは複数の基本ビューと1つまたは複数の付加的ビューの組み合わせに基づいて構築される、項目2に記載の方法。
(項目5)
上記1つまたは複数のインジケータは、サンプルグループの中に、2つまたは複数の基本ビューに対応する上記複数のメディアサンプルをグループ化するためのインジケータを含む、項目4に記載の方法。
(項目6)
上記1つまたは複数のインジケータは、各メディアトラックが、上記テクスチャコンポーネントまたは上記深度コンポーネントまたは両方を含有するかどうかを示すためのインジケータを含む、項目1に記載の方法。
(項目7)
上記1つまたは複数のインジケータは、各メディアトラックが、上記テクスチャコンポーネントまたは上記深度コンポーネントまたは両方を含有するかどうかを示すためのインジケータを含む、項目1に記載の方法。
(項目8)
上記1つまたは複数のインジケータは、上記メディアトラック内に含有される上
記テクスチャコンポーネントおよび上記深度コンポーネントの部分を定義するためのアトラス属性インジケータを含む、項目1に記載の方法。
(項目9)
上記1つまたは複数のインジケータは、上記対応するビューを説明するためのビュー識別子を含む、項目1に記載の方法。
(項目10)
上記メディアコンテンツの構築は、異なるメディアサンプルからのパッチを組み合わせることを含む、項目1に記載の方法。
(項目11)
上記1つまたは複数のインジケータは、各メディアサンプル内のパッチの数を説明するインジケータを含む、項目10に記載の方法。
(項目12)
上記1つまたは複数のインジケータは、パッチが、ビューアトラスから、上記複数のビューと関連付けられるメディアサンプルにマッピングする回転角度に対するパッチ回転インジケータを含む、項目10に記載の方法。
(項目13)
メディアコンテンツを構築する方法であって、
各メディアサンプルが、複数のビューのうちの1つに対応し、上記対応するビューと関連付けられるテクスチャコンポーネントまたは深度コンポーネントのうちの少なくとも1つを含むように、複数のメディアサンプルを、複数の基本ビューおよび複数の付加的ビューを含む複数のビューと関連付けられるメディアファイルの中に設置することと、
各メディアトラックが、上記対応するビューについての情報を説明するための1つまたは複数のインジケータを含むように、それぞれ、上記複数の基本ビューに対応する複数の基本ビューメディアトラック、およびそれぞれ、上記複数の付加的ビューに対応する複数の付加的ビューメディアトラックを決定することと、
上記複数のメディアサンプルを、そのそれぞれが少なくとも1つの基本ビューと関連付けられる1つまたは複数のメディアサンプルグループの中にグループ化することによって、上記1つまたは複数のインジケータに基づいて、上記メディアコンテンツを上記複数のメディアサンプルから構築することと
を含む、方法。
(項目14)
上記1つまたは複数の基本ビューに基づいて入手された画像は、他の画像を予測するためのベース画像として使用される、項目13に記載の方法。
(項目15)
各基本ビューは、基本ビューアトラスに対応する、項目14に記載の方法。
(項目16)
上記画像は、上記基本ビューアトラスに基づいて入手される、項目15に記載の方法。(項目17)
各基本ビューアトラスは、別個のコードストリーム内に記憶される、項目15に記載の方法。
(項目18)
上記1つまたは複数のインジケータは、異なるビューを含有する異なるメディアトラックをグループ化するためのグループ化タイプを説明するエンティティレベルグループ化インジケータを含む、項目13に記載の方法。
(項目19)
上記エンティティレベルグループ化インジケータは、基本ビューと付加的ビューとの間のグループ化情報を含む、項目18に記載の方法。
(項目20)
上記エンティティレベルグループ化インジケータは、グループ内のエンティティの数を含む、項目18に記載の方法。
(項目21)
各メディアトラックは、上記複数のビューを基本ビューまたは付加的ビューとして識別するためのインジケータを含む、項目13に記載の方法。
(項目22)
メディアコンテンツを構築する方法であって、
複数のビューと関連付けられるメディアファイルの中に、視認方向、視認位置、および視認ウィンドウに従って、上記複数のビューに対応する、カメラパラメータを含むカメラ情報を設置することと、
上記カメラパラメータ情報に基づいて、メディアメタデータを上記メディアファイルから選択することと、
上記メディアメタデータに基づいて、上記メディアコンテンツを構築することと
を含む、方法。
(項目23)
上記カメラ情報は、メディアファイルベースで抽出される、項目22に記載の方法。
(項目24)
上記カメラ情報は、メディアトラックベースで抽出される、項目22に記載の方法。
(項目25)
上記複数のメディアトラックはそれぞれ、上記複数のビューのパッチからのものであり、各ビューは、1つのカメラに対応する、項目22-24のいずれかに記載の方法。
(項目26)
上記ユーザの複数のビューは、少なくとも1つの基本ビューと、上記少なくとも1つの基本ビューと関連付けられる少なくとも1つの付加的ビューとを含む、項目22-24のいずれかに記載の方法。
(項目27)
上記少なくとも1つの基本ビューのメディアメタデータは、上記少なくとも1つの基本ビューと関連付けられる少なくとも1つの付加的ビューのベース画像として使用される、項目26に記載の方法。
(項目28)
上記ユーザの複数のビューは、それぞれ、異なるメディアトラック内に記憶される2つまたは複数の基本ビューを含む、項目22-24のいずれかに記載の方法。
(項目29)
上記カメラ情報は、上記メディアトラックグループ内のメディアデータが、上記メディアトラックグループに対応するある空間範囲内の画像をデコーディングするために使用されるべきであることを示すメディアトラックグループを含む、項目22-24のいずれかに記載の方法。
(項目30)
メモリと、プロセッサとを備える無線通信のための装置であって、上記プロセッサは、コードを上記メモリから読み取り、項目1-29のいずれかに記載の方法を実装する、装置。
(項目31)
コンピュータ可読プログラム記憶媒体であって、上記コンピュータ可読プログラム記憶媒体は、その上に記憶されるコードを有し、上記コードは、プロセッサによって実行されると、上記プロセッサに、項目1-29のいずれかに記載の方法を実装させる、コンピュータ可読プログラム記憶媒体。
【図面の簡単な説明】
【0035】
【
図1】
図1は、開示される技術のいくつかの実施形態に基づく、3DOF+のコンテンツ集合の実施例を示す、略図である。
【0036】
【
図2】
図2は、開示される技術のいくつかの実施形態に基づく、ビデオデータ処理システムの実施例を示す、略図である。
【0037】
【
図3】
図3は、開示される技術のいくつかの実施形態に基づく、ビデオデータ処理方法の実施例を示す、フローチャートである。
【0038】
【
図4A】
図4Aは、開示される技術のいくつかの実施形態に基づく、メディアファイルの基本構造の実施例を示す、略図である。
【0039】
【
図4B】
図4Bは、開示される技術のいくつかの実施形態に基づく、メディアファイルの基本構造の別の実施例を示す、略図である。
【0040】
【
図5】
図5は、開示される技術のいくつかの実施形態に基づく、メディアファイル内の多層構造の実施例を示す、略図であって、1つのみのメディアトラックが、1つまたは
複数の基本ビューを含む。
【0041】
【
図6】
図6は、開示される技術のいくつかの実施形態に基づく、メディアファイル内の多層トラック構造の実施例を示す、略図である。
【発明を実施するための形態】
【0042】
詳細な説明
没入型メディアは、ユーザが、オーディオおよびビデオ技術を通した視覚的およびオーディオ体験を通して、高度に現実的な仮想空間環境を体験することを可能にする。現在、没入型体験は、主に、パノラマビデオをサポートする。例えば、ユーザは、頭部ディスプレイデバイスを通した頭部の自由回転を通して、360度ビデオ、すなわち、3自由度(3DOF)没入型体験を視聴することができる。向上された3自由度(3DOF+)および部分的6自由度(6DOF)をサポートする、ビデオに関して、ユーザの頭部はまた、限定された範囲内で移動し、オクルードされた視覚的コンテンツ等のさらなる詳細を視認することができる。
【0043】
3DOF+ビデオのためのサポートは、空間内で異なる形状に配列される複数のカメラを通して使用され、オリジナルビデオを捕捉し、次いで、3次元パノラマビデオのアルゴリズム合成によって、ユーザの頭部を没入型メディア限定移動内に合わせることができる。マルチカメラ展開に基づいて、マルチビュービデオは、典型的には、大量の冗長データを有し、記憶およびコンピューティングリソースの無駄をもたらす。現在、コンテンツ生産フェーズ(局面)では、同時に、複数のビューの重複部分の視覚的コンテンツを除去することによって、冗長性を低減させ、テクスチャおよび深度コンポーネントを伴うビューによって、ステレオ-ビデオをビューポート内に表すことが可能である。ユーザの端末デバイスが、没入型メディアコンテンツを受信すると、特に、ユーザのための最良没入体験を確実にするように、移動のプロセスにおいてレンダリングするために、ユーザの視認位置、視認方向、入手デバイスの性質、および他の情報に従って、コンテンツをレンダリングする必要がある。現在、3DOF+のメディアコンテンツのための対応するメディア表現の欠如が存在し、これは、メディアコンテンツの効果的レンダリングおよび再生に影響を及ぼすであろう。
【0044】
図1は、開示される技術のいくつかの実施形態に基づく、3DOF+のビデオ捕捉の実施例を示す、略図である。3DOF+シナリオをサポートするために、複数のカメラが、空間内の異なる場所に展開される。例えば、複数のカメラは、湾曲構成または矩形構成において、並列に配列され、画像が、同時に、複数のカメラによって捕捉される。カメラ展開の場所および配向に応じて、異なるカメラによって捕捉されたビデオは、類似コンテンツを有することができる。
【0045】
マルチビュービデオから収集されたコンテンツは、3次元パノラマビデオを生産するように合成される。マルチビュー入手コンテンツの類似性および差異に従って、ユーザは、没入型メディアを視認するプロセスにおいて、限定された範囲内で移動し、オクルードされた視覚的コンテンツ等のさらなる詳細を見ることができる。
【0046】
図2は、開示される技術のいくつかの実施形態に基づく、ビデオデータ処理システムの実施例を示す、略図である。開示される技術のいくつかの実施形態、ビデオデータ処理システムは、メディアサーバ10と、ユーザ端末20とを含む。
【0047】
いくつかの実装では、メディアサーバ10は、メディアファイルを記憶するためのメモリモジュール101と、ユーザ端末20と通信するための送受信機モジュール102とを含む。メモリモジュール101は、メディアファイルを記憶するために使用される。いくつかの実装では、送受信機モジュール102は、要求メッセージをユーザ端末20から受信し、および/または記憶されたメディアファイルをユーザに端末20に送信するように構成される。一実施例では、送受信機モジュール102は、無線ネットワークおよび/または有線ネットワークを通して、要求メッセージを受信し、メディアファイルを伝送してもよい。
【0048】
いくつかの実装では、ユーザ端末20は、送受信機モジュール201と、カプセル化解除およびデコーディングモジュール202と、メディア処理モジュール203と、メディア再生モジュール204とを含む。いくつかの実装では、送受信機モジュール201は、メディアファイルをメディアサーバ10から受信し、メディアファイル要求等の要求をメディアサーバ10に送信するように構成される。カプセル化解除およびデコーディングモジュール202は、送受信機モジュール201によって受信されたメディアファイルをアンパックおよびデコーディングするために使用される。いくつかの実装では、メディア処理モジュール203は、ユーザの現在の視認状態(例えば、ユーザの位置、視認方向、ユーザのビューポート)に従って、デコーディングモジュール202によってデコーディングされたマルチビューのアトラスのセット上において、ビデオ合成およびレンダリング等のビデオ処理を実施する。メディア再生モジュール204は、ユーザの現在の視認状態に対応する、視覚的コンテンツを再生するために使用される。
【0049】
図3は、開示される技術のいくつかの実施形態に基づく、ビデオデータ処理方法の実施例を示す、フローチャートである。
【0050】
開示される技術のいくつかの実施形態では、ビデオデータ処理方法は、ステップS301において、ユーザによって、ユーザの現在の視認位置、視認方向、およびビューポートに従って、メディアファイルをサーバから要求するステップを含む。一実施例では、対応するメディアファイルのための要求は、ユーザによって所望されるビューを視聴するためのユーザのリアルタイムフィードバックを含んでもよい。一実施例では、ユーザ端末内に実装されるメディア処理モジュールは、1つまたは複数のセンサと、関連付けられる信号処理デバイスとを使用して、ユーザのリアルタイムフィードバックをユーザの要求に変換してもよい。
【0051】
開示される技術のいくつかの実施形態では、ビデオデータ処理方法は、ステップS302において、ユーザによって、ユーザの現在の視認位置、視認方向、およびビューポートに従って、メディアファイルをサーバから受信するステップと、ユーザの現在の視認位置、視認方向、およびビューポートに従って、1つまたは複数のアトラスのパッチを抽出するステップと、視覚的コンテンツをユーザの現在のビューポート内に合成するステップとを含む。一実施例では、メディア処理モジュールは、ユーザのリアルタイム視認位置および方向に従って、ビデオをユーザのビューポート内に再構築し、再構築されたビデオをメディア再生モジュールまたはディスプレイ端末に伝送してもよい。
【0052】
開示される技術のいくつかの実施形態では、ビデオデータ処理方法は、ステップS303において、ユーザによって、ユーザの現在の視認位置、視認方向、およびビューポートに従って、再構築された3次元立体視ビデオコンテンツを取得するステップを含む。一実施例では、ユーザは、ディスプレイ端末またはメディア再生モジュールを使用して、再構築されたビデオを視認する。
【0053】
開示される技術のいくつかの実施形態では、ビデオデータ処理方法は、ISO(国際標準化機構)基本メディアファイルフォーマットに基づいて、ファイル内の3DOF+ビデオデータに対して実装されてもよい。ISO基本メディアファイルフォーマットは、とりわけ、制限されたスキーム情報ボックス、トラック参照ボックス、およびトラックグループボックスを含んでもよく、これは、ISO/IEC JTC1/SC29/WG11 Moving Picture Experts Group(MPEG)MPEG-4.Part 12 ISO Base Media File Formatに定義される。全方向性ビデオの投影、パッケージングステップ、および基本フォーマットは、ISO/IEC JTC1/SC29/WG11のMoving Picture Experts Group(MPEG)によって開発されたMPEG-I Part 2 OMAF(全方向性メディアフォーマット)に基づいて動作されることができる。
【0054】
開示される技術のいくつかの実施形態では、ISO基本ファイルフォーマット内の全てのデータが、ボックス(Box)内に含有される。一実施例では、mp4ファイルによって表されるISO基本ファイルフォーマットは、複数のボックスを含み、そのそれぞれが、特定のタイプおよび長さを有し、データオブジェクトと見なされ得る。ボックスは、コンテナボックスと呼ばれる、別のボックスを含有することができる。一実施例では、「ftyp」タイプボックスは、ファイルの先頭に設置される。一実施例では、「ftyp」タイプボックスは、ファイルフォーマットを示すためのフラグとして使用され、ファイルについてのある情報を含有する。
【0055】
開示される技術のいくつかの実施形態では、「ftyp」タイプボックス後には、「MOOV」タイプボックスが続き、これは、メディアに関するメタデータ情報を伴う、コンテナボックスである。ある実装では、MP4ファイルのためのメディアデータは、1つまたは複数の「mdat」タイプボックス内に含有され、そのそれぞれが、コンテナボックスである。別の実装では、MP4ファイルは、メディアデータが、その全体として、他のファイルを参照するとき、そのような「mdat」タイプボックスを含有しない。開示される技術のいくつかの実施形態では、メディアデータの構造は、メタデータによって説明される。いくつかの実装では、メディアに関するさらなるメタデータ説明のために、MP4ファイルは、「メタ」タイプボックスを含有してもよく、これもまた、ある汎用または付加的非時限メタデータを説明する、コンテナボックスである。
【0056】
開示される技術のいくつかの実施形態では、時限メタデータトラック(例えば、ISO Basic Media File Format(ISOBMFF)における機構)が、特定のサンプルと関連付けられる時限メタデータを確立するために使用される。時限メタデータは、メディアデータと殆ど結合されることはなく、通常、記述的である。
【0057】
図4Aは、開示される技術のいくつかの実施形態に基づく、アトラスのテクスチャコンポーネントおよび深度コンポーネントが同一メディアトラックの中に設置される、メディアファイルの基本構造の実施例を示す、略図である。
【0058】
図4Bは、開示される技術のいくつかの実施形態に基づく、アトラスのテクスチャコンポーネントおよび深度コンポーネントが異なるメディアトラックの中に設置される、メディアファイルの基本構造の別の実施例を示す、略図である。
【0059】
開示される技術のいくつかの実施形態では、複数のビューが、ベース層と、1つまたは複数の付加的層とを含む、層化構造を使用することによって、説明され得る。メディアファイルは、複数のビューのメディアメタデータを説明するための1つまたは複数のメディアトラックを含んでもよく、1つのメディアトラックは、1つの層に対応する。
【0060】
図4Bに示されるように、ビデオのビューは、テクスチャコンポーネントと、深度コンポーネントとに分割される、1つまたは
複数のアトラスによって表されてもよく、テクスチャコンポーネントおよび/または深度コンポーネントは、アトラスに対応する、1つまたは
複数の(例えば、1または2つの)メディアトラック内に含有される。アトラスは、完全ビューまたはビューからトリミングされた断片の一部のいずれかである、1つまたは
複数のビューからのパッチをまとめる。パッチのコンテンツ、サイズ、および量が、変化する場合、パッチに関する情報は、時限メタデータを使用して、説明される。
【0061】
ある実装では、カメラパラメータリスト等の複数のビューに関連する静的情報が、メディアトラック内のボックスまたはメディアファイル内のボックスに説明される。
【0062】
別の実装では、ボックスを「メタ」タイプボックスとして定義し、各カメラを1つずつ説明することによって、各カメラは、各ビューに対応する。
【0063】
別の実装では、1つのメディアトラック内のアトラスが、1つまたは複数のビューに対応する場合、ビューに対応する、カメラパラメータのリストは、メディアトラックに説明される。
【0064】
アトラス内の各パッチは、カメラによって捕捉されたビデオ内のビューから導出される。ユーザの視認位置および視認方向に従って、ユーザの視野内のパッチは、1つまたは複数の選択されたパッチを合成することによって、ユーザに現在のビューポートのメディアコンテンツが見え得るように、メディアトラックに説明される各パッチの性質に基づいて選択される。
【0065】
開示される技術のいくつかの実施形態では、ビデオデータを処理するための方法は、ユーザによって選択されたビューポート内のマルチビュービデオのビューに対応する、1つまたは複数のメディアトラック内の1つまたは複数のアトラスを決定するステップであって、1つまたは複数のアトラスは、1つまたは複数のビューのテクスチャコンポーネントおよび深度コンポーネントを含む、ステップと、ユーザが視認するために、アトラスおよびマルチビュービデオを撮影するためのカメラパラメータに基づいて、マルチビュービデオをビューポート内に生成するステップとを含むことを特徴とする。
【0066】
開示される技術のいくつかの実施形態では、ユーザによって選択されたマルチビュービデオのビューに対応する、1つまたは複数のメディアトラック内の1つまたは複数のアトラスの決定は、マルチビュービデオの基本ビューと、ユーザによって選択されたマルチビュービデオのビューに関連する、1つまたは複数の付加的ビューとを決定するステップと、メディアトラック内のマルチビュービデオの基本ビューおよび1つまたは複数の付加的ビューに対応する、1つまたは複数のアトラスに基づいて、メディアトラック内のユーザによって選択されたマルチビュービデオのビューに対応する、1つまたは複数のアトラスを決定するステップとを含む。
【0067】
図5は、開示される技術のいくつかの実施形態に基づく、メディアファイル内の多層構造の実施例を示す、略図であって、1つのみのメディアトラックは、ベース層であって、1つまたは
複数の基本ビューを含有する。
【0068】
開示される技術のいくつかの実施形態では、異なるビュー間の相関は、ビュー予測のために使用されることができる。同一空間内の複数のカメラによって入手されたビューは、異なる相関度を有し得る。高度に相関するビューに関して、ビューは、その近隣のビューを予測するために使用されることができる。しかしながら、低相関を伴うビューに関して、ビューのコンテンツは、独立し(または相関せず)、相互から予測されることができないが、基本ビューのフレーム間予測は、可能である。
【0069】
開示される技術のいくつかの実施形態では、メディアファイルは、1つまたは複数の基本ビューと関連付けられる、メディアデータを含み、各基本ビューは、アトラスに対応する。その点に関して、開示される技術は、種々の実施形態において、あるメディアトラックを、1つまたは複数の基本ビューに対応する、1つまたは複数のアトラスを説明および記憶するために使用される、ベース層として定義する、階層メディア説明構造を提供するために実装されることができる。他の関連付加的ビューに対応する、アトラスは、付加的層のメディアトラック等の1つまたは複数の他のメディアトラック内に説明および記憶され、ユーザのビューポートのビューは、ベース層および付加的層内のアトラス内のパッチの組み合わせから合成される。
【0070】
多層アトラスを通して、3次元パノラマビデオが、合成され、ユーザが、頭部セットの位置および配向を変化させることによって、部分的にオクルードされた視覚的コンテンツを見ることを可能にすることができる。
【0071】
ベース層のメディアトラックでは、サンプルグループのタイプ「oinf」(動作点情報)は、ベース層内の基本ビューのアトラスを示し、ビューのアトラスは、他のアトラスを参照せず、付加的層内の他のアトラスによって参照され得る。付加的ビューのアトラスを含む、付加的層に対応する、1つまたは複数のメディアトラックでは、グループタイプ「oinf」を伴うサンプルグループは、メディアトラック参照タイプ「oref」を伴うメディアトラックによって参照され得る。
【0072】
ベース層のメディアトラック名には、異なる基本ビューに基づいて、サンプルをグループ化し、サンプルグループタイプを「invw」として定義し、グループ化サンプルが基本ビューに属することを示す、複数の基本ビューが存在する。
【0073】
【0074】
具体的構文は、以下の通りである。
「version」は、ボックスのバージョンを示す。
「grouping_type」は、サンプルグループ化のタイプを示し、それをgrouping_typeに関する同一値を伴うそのサンプルグループ説明エントリにリンクする。
「grouping_type_parameter」は、グループ化のサブタイプを示す。
「entry_count」は、以下のテーブル内のサンプリングエントリの数を示す。「sample_count」は、同一サンプルグループに属する、連続サンプルの数を示す。
「group_description_index」は、本グループ内のサンプルを説明するサンプルグループエントリのインデックスを示す。
【0075】
基本ビューベースのサンプルに基づくグループ化のために、タイプ「bsvw」(基本ビュー)のサンプルグループエントリを定義し、グループ内のこれらのサンプルが対応する、基本ビューの識別子、基本ビューに対応するカメラの識別子、および基本ビューと関連付けられる他の付加的ビューを説明するステップが、説明される。
【0076】
実施例として、これらの識別子は、以下のように説明されることができる。
【化2-1】
【化2-2】
【0077】
構文は、以下のように定義される。
「group_id」は、それに対して現在のサンプルが属する、グループ識別子を示す。
「view_idx」は、現在のサンプルに対応する、基本ビューインデックス識別子、すなわち、それに対してサンプルが対応する、ビューを示す。
「camera_idx」は、基本ビューに対応する、カメラインデックス識別子を示す。
「num_ref_views」は、基本ビューアトラスのセットを参照する、他の付加的ビューの数を示す。
「additional_view_idx」は、グループ内の基本ビューと関連付けられる、付加的ビューのインデックス識別子を示す。
「track_id」は、関連付けられる付加的ビューが対応するサンプルが位置する、メディアトラックIDを示す。
「texture_or_depth_flag」は、関連付けられる付加的ビューが対応する、サンプルを含有する、メディアトラックが、テクスチャコンポーネントおよび/または深度コンポーネントを含むかどうかを示す。それが0に等しいとき、両方を含み、それが1に等しいとき、テクスチャコンポーネントのみを含む。
「depth_track_id」は、関連付けられる付加的ビューが対応する深度コンポーネントが位置する、メディアトラックIDを示す。
【0078】
開示される技術のいくつかの実施形態では、メディアトラック内のサンプルは、1つまたは複数のビューからのパッチを含有する、アトラスである。一実施例では、各ビューは、1つのアトラスに対応し得る。別の実施例では、1つまたは複数のビューは、1つのアトラスに対応し得る。アトラスは、テクスチャコンポーネントと、深度コンポーネントとを含む。ある例示的階層構造では、アトラスのテクスチャコンポーネントおよび深度コンポーネントは、それぞれ、2つのメディアトラック内に設置されてもよい。別の例示的階層構造では、アトラスのテクスチャコンポーネントおよび深度コンポーネントは、同一メディアトラック内に設置されてもよい。「AtlasAttributeBox」は、メディアトラック内に含有される、アトラスのコンポーネントを説明する。
【0079】
【0080】
構文は、以下のように定義される。
「texture_in_track」は、メディアトラックがテクスチャコンポーネントを含有するかどうかを示す。
「depth_in_track」は、メディアトラックが深度コンポーネントを含有するかどうかを示す。
「atlas_id」は、テクスチャコンポーネントおよび/または深度コンポーネントがメディアトラック内で属する、アトラスの識別子を示す。
【0081】
開示される技術のある実施形態では、アトラスのテクスチャコンポーネントおよび深度コンポーネントが、2つのメディアトラック内に設置されるとき、1つのメディアトラックグループ、例えば、トラック1に属する、2つのメディアトラックは、アトラス1のテクスチャコンポーネントを有し、トラック2は、アトラス1の深度コンポーネントを有し、トラック1およびトラック2のコンポーネントは、同一アトラスに属する。一実施例では、2つのメディアトラックが、track_group_typeを有する、TrackGrouptypeBoxが、「atls」であって、メディアトラックグループが、アトラスのアトラス識別インデックス(atlas_id)と同一であり得る、「track_group_id」によって識別されると定義することによって、1つのメディアトラックグループに属する。
【0082】
開示される技術の別の実施形態では、テクスチャおよび深度コンポーネントの両方が、メディアトラック内に設置されるとき、テクスチャおよび深度コンポーネントサンプルは、グループ化され、タイプ「テクスチャおよび深度グループ」は、各サンプルがテクスチャコンポーネントまたは深度コンポーネントに属するかどうかを説明する、テクスチャおよび深度サンプルグループとして定義される。
【0083】
実施例として、これらの識別子は、以下のように説明されることができる。
【化4】
【0084】
具体的構文は、以下のように定義される。
「texture_or_depth」は、グループのサンプルが、テクスチャまたは深度コンポーネントにグループ化されることを示す。texture_or_depthが、0に等しいとき、サンプルは、テクスチャコンポーネントにグループ化され、texture_or_depthが、1に等しいとき、サンプルは、深度コンポーネントにグループ化される。
「num_basicview_flag」は、メディアトラック内のサンプルが、複数の基本ビューに対応するかどうかを示し、それが、0に等しいとき、1つのみの基本ビューに対応し、これらのサンプルは、基本ビューによってグループ化されず、それが、1に等しいとき、2つを上回る基本ビューに対応する。
「group_id」は、メディアトラック内の複数の基本ビューのためのサンプルに関して、基本ビューに基づいて、サンプルグループのグループ化識別子を示す。
【0085】
開示される技術のいくつかの実施形態では、ISO基本ファイルフォーマットに定義される、ビュー識別子ボックス(ViewIdentifierBox)は、「vwid」であって、各メディアトラック内に含有されるビューを説明し、ビューの識別、ビューに対応する他の参照ビュー等を含む。これは、メディアトラックが、テクスチャコンポーネントまたは深度コンポーネントまたは両方を含有するかどうかを示すことができる。
【0086】
メディアトラック内のサンプルである、アトラスに基づいて、ユーザは、現在の視認位置、視認方向、およびビューポートに従って、1つまたは複数のメディアトラック内のアトラスを選択し、ユーザが視認することを所望する、画像を合成する。セット内のパッチは、1つまたは複数のビューに対応する、1つまたは複数のカメラによって捕捉されたビデオからのものである。いくつかの実装では、それに対して各パッチが属するビューおよびビュー内の各パッチの位置が、メディアトラックおよびその対応するアトラスの選択を促進するために説明される。ISO基本ファイルフォーマットに従って、アトラスに対してボックスのパラメータを定義することは、随意に、以下の方法のうちの1つにおいて行われる。
【0087】
開示される技術のいくつかの実施形態では、各フレームサンプル内に、パッチが、異なるビューから収集され、ビュー内の位置は、異なり、かつ可変であって、全てのアトラスに関するパッチ情報は、時限メタデータによって動的に説明される。
【0088】
アトラス情報リストが、サンプルエントリタイプに従って、時限メタデータトラックから識別され、アトラス情報リスト時限メタデータトラックは、アトラス内の各パッチに対応する場所情報および対応するビューおよび対応するビュー情報を示すために使用される。
【0089】
具体的には、アトラス情報リスト時限メタデータトラックの目的は、下記に定義されるように、「atpl」である、トラックサンプルエントリタイプによって示される。
【0090】
【0091】
具体的構文は、以下のように定義される。
「num_atlases」は、アトラスの数を示す。
「num_views」は、ビューの数を示す。
【0092】
時限メタデータトラック内の各サンプルは、ある時点における全てのアトラスに関する情報に対応する。以下の実施例は、アトラス情報のサンプルフォーマットが、上記のトラックサンプルエントリタイプ「atpl」を参照することを図示し、サンプル毎に、アトラス情報を示す。
【0093】
【0094】
具体的構文は、以下のように定義される。
「atlas_id」は、アトラスの識別子を示す。
「num_patches」は、アトラス内に含有されるパッチの数を示す。
「view_id」は、パッチが属する、ビュー識別子を示す。
「group_id」は、基本ビューおよびその関連付けられる付加的ビューに基づいて、グループ化のグループ識別子を示し、group_idが、0に等しいとき、1つのみの基本ビューであって、ビューは、グループ化される必要がない。
「patch_width_in_view」および「patch_height_in_view」は、それぞれ、輝度サンプル内のパッチの幅および高さを示す。
「patch_pos_in_atlas_x」および「patch_pos_in_atlas_y」は、それぞれ、アトラス内のX-軸およびY-軸の座標を示す。
「patch_pos_in_view_x」および「patch_pos_in_view_y」は、それぞれ、輝度サンプリング内のパッチのX-軸およびY-軸の座標を示す。
【0095】
「patch_rotation」は、パッチがアトラスからビューにマッピングする、回転角度を示す。patch_rotationが、0であるとき、これは、回転が存在しないことを示し、patch_rotationが、1であるとき、これは、時計回りに90度回転を示し、1を上回る他の値は、一時的に留保される。
【0096】
開示される技術のいくつかの実施形態では、アトラス情報は、他のメディアトラック内のアトラス設置を説明し、上記で定義された時限メタデータトラックは、「cdsc」referenceTypeを伴うTrackReferenceBoxを使用することによって、1つまたは複数の他のメディアトラックにリンクすることができる。
【0097】
開示される技術のいくつかの実施形態では、サンプルテーブルボックス(SampleTableBox)は、新しい定義されたボックス(AtlasParametersBox)を含み、メディアトラック内のサンプルのアトラス情報を1つずつ示す。
【化7】
【0098】
具体的構文は、以下のように定義される。
「sample_count」は、ある時間周期にわたる連続サンプルの数を示す。
「num_patches」は、アトラス内に含まれるパッチの数を示す。
「view_id」は、本パッチが属する、ビュー識別子を示す。
「patch_width_in_view」および「patch_height_in
_view」は、それぞれ、輝度サンプル内のパッチの幅および高さを示す。
「patch_pos_in_atlas_x」および「patch_pos_in_atlas_y」は、それぞれ、アトラス内のパッチのX-軸およびY-軸の座標を示す。「patch_pos_in_view_x」および「patch_pos_in_view_y」は、それぞれ、輝度サンプル内のX-軸およびY-軸の座標を示す。
「patch_rotation」は、アトラスからビュー画像までのパッチの回転角度を示す。それが、0に等しいとき、回転が存在しないことを示し、それが、1に等しいとき、時計回りに90度の回転を示し、1を上回る他の値は、一時的に留保される。
【0099】
図6は、開示される技術のいくつかの実施形態に基づく、メディアファイル内の多層トラック構造の実施例を示す、略図であって、メディアファイル内には、複数の基本ビューが存在し、基本ビューは、ベースビューとして使用され、他のビューを予測することができる。層化trackdescription構造に基づいて、メディアトラックは、1つの基本ビューの記憶のためのベース層として定義され、全ての基本ビューの動作点情報を説明する。他の基本ビューおよび付加的ビューの対応するビューは、1つまたは
複数の他のメディアトラック内に記憶される。複数のビューを通して、3次元立体視ビデオが、ユーザに頭部の変位を通して部分的にオクルードされた視覚的コンテンツを見え得るように、合成されることができる。
【0100】
ベース層のメディアトラック内のタイプ「oinf」(動作点情報)サンプルグループは、全ての基本ビュー内の動作点情報を説明するように定義される。全ての付加的層メディアトラックは、メディアトラックタイプインジケータ「oref」を参照することによって、ベース層メディアトラックを参照する。
【0101】
基本ビューは、メディアトラックレベルまたはファイルレベルにおいて、インジケーションを含むことによって、他の基本ビューおよびその関連付けられる付加的ビューから区別されることができる。
【0102】
開示される技術のいくつかの実施形態では、基本ビューと付加的ビューとの間の特異性は、メディアトラックレベルで説明される。基本ビューに属するアトラスを含有する、メディアトラックでは、メディアトラックは、タイプ「invw」のボックスをメディア情報ボックス内に定義することによって、基本ビューを含有する、メディアトラックとして説明される。
【0103】
【0104】
具体的構文は、以下のように定義される。
「basic_view_idx」は、メディアトラック内のアトラスに対応する、基本ビューの識別子である。
「camera_idx」は、基本ビューに対応する、カメラの識別子を示す。
「additional_view_idx」は、基本ビューを参照する、付加的ビューの識別子を示す。
「track_id」は、基本ビューと関連付けられる付加的ビューに対応する、アトラスを含有する、メディアトラックの識別子を示す。
「texture_or_depth_flag」は、サンプルに対応する付加的ビューと関連付けられる、サンプルを含有する、メディアトラックが、テクスチャコンポーネントおよび/または深度コンポーネントを含むかどうかを示し、それが、0である場合、両方を含み、それが、1である場合、テクスチャコンポーネントのみを含む。
「depth_track_id」は、関連付けられる付加的ビューが対応する、深度コンポーネントが位置する、メディアトラックIDを示す。
【0105】
基本ビューおよび基本ビューを参照するその関連付けられる付加的ビューに対応する、アトラスに関して、「cstg」のトラックグループタイプ(track_group_type)を伴う、トラックグループボックスが、定義され、基本ビューおよびその関連付けられる付加的ビューに対応する、アトラス間の関係を説明する。
【0106】
開示される技術のいくつかの実施形態では、グループ説明は、基本ビューが位置する、メディアトラックに関して、ファイルレベルで提供され、付加的ビューを有する、メディアトラックは、関連付けられる基本ビューを参照する。
【0107】
拡張EntityToGroupBoxが、ISOベースファイルフォーマットにおいて、グループ化タイプ(grouping_type)を「asvw」(関連付けられるビューグループ)として定義し、アトラス形態の関連付けられるビューを含有する、メディアトラックをグループするために使用される。グループメンバーは、その中に基本ビューが位置する、メディアトラックを区別するために説明され、トラックは、アトラスのテクスチャコンポーネントおよび/または深度コンポーネントを含有すると言える。1つのグループでは、1つのみの基本ビューが、メディアトラック内に存在し、他のビューは、
基本ビューと関連付けられる。
【0108】
【0109】
構文は、以下の通りである。
「group_id」は、各ボックスに説明されるグループ化のためのグループ識別子を示す。
「num_entities_in_group」は、グループ内のエンティティの数を示す。
「entity_id」は、track_idに等しい、その中にそれが属するアトラスが設置される、メディアトラックのエンティティ識別子を示す。
「is_basic_view」は、グループ内のグループメンバーメディアトラックが基本ビューを含むかどうかを示す。それが、1に等しいとき、グループ内のグループメンバーメディアトラックは、基本ビューを含有する、またはそれが、0であるとき、グループ内のグループメンバーメディアトラックは、基本ビューを含有せず、1つのみのグループメンバーが、1の値を有する。
「is_texture_in_entity」は、グループ内のあるグループメンバーのメディアトラックが、ビューが属する、アトラスのテクスチャコンポーネントを含有するかどうかを示す。
「is_depth_in_entity」は、グループ内のグループメンバーのメディアトラックが、ビューが属する、アトラスの深度コンポーネントを含有するかどうかを示す。
【0110】
いくつかの実装では、複数の基本ビューのアトラスは、別個のビットストリーム内に記憶される。例えば、1ビットストリームは、1つの基本ビューに対応する、1つのみのアトラスと、その基本ビューと関連付けられる、他のビューに対応する、アトラスとを含有する。この場合、層化構造は、依然として、使用されることができる。
【0111】
開示される技術のいくつかの実施形態では、メディアストリームファイルを受信およびデコーディング後、ユーザは、ユーザの視認方向、視認位置、およびビューポートに従って、基本ビューおよびその関連付けられる付加的ビューに対応する、メディアコンテンツを選択する。対応するカメラ情報は、選択されたコンテンツのレンダリングを完了するためのプロセスにおいて考慮される。
【0112】
開示される技術のいくつかの実施形態では、カメラパラメータの情報を説明する、ボックスを定義することによって、複数のビューのためのカメラが、詳細に説明される。
【0113】
開示される技術のいくつかの実施形態では、カメラパラメータ情報は、固有の情報および位置情報であって、データボックスは、説明のために、ファイルレベルで定義される。カメラパラメータリストボックスは、ボックスタイプに従って識別され、メディアファイル内の全てのパッチに対応する、カメラパラメータが、説明され、ボックスは、「メタ」タイプボックス内に含まれる。
【0114】
【0115】
具体的構文は、以下のように定義される。
「num_cameras」は、カメラの数を示す。
「view_idx」は、カメラによって捕捉されたビューの識別子であって、それによってビューに対応する、カメラが、見出されることができる。
「camera_pos_x」、「camera_pos_y」、および「camera_pos_z」は、グローバル参照座標系内のカメラの位置を示す。
「projection_type」は、カメラの投影方法を示す。それが、0に等しいとき、インジケーションは、ERP投影モードであって、それが、1に等しいとき、インジケーションは、CMP投影モードであって、それが、2に等しいとき、インジケーションは、透視投影であって、値は、0~255に及び、そのうちの3~255は、必要に応じて、将来的に定義され得る。
「projection_plane_width」および「projection_plane_height」はカメラ投影平面の水平および垂直分解能を示し、これは、エンコーディングされた明度サンプリングの水平および垂直分解能によって示される。
「erp_phi_min」および「erp_phi_max」は、ERP投影の緯度範囲(最小および最大)を示す。
「erp_theta_min」および「erp_theta_max」は、ERP投影の経度範囲(最小および最大)を示す。
「perspective_focal_hor」および「perspective_focal_ver」は、輝度サンプル位置単位における、それぞれ、透視投影の焦点の水平および垂直コンポーネントを示す。
「perspective_center_hor」および「perspective_center_ver」は、輝度サンプル位置における、それぞれ、透視投影の主点の水平および垂直座標を示す。
「quantization_law」は、カメラの深度数値化方法のタイプを示す。
「depth_near,depth_far」は、それぞれ、最小および最大正規化視差値を示す。
「cubic_map_type」は、CMP投影のタイプを示す。それが、0に等しいとき、インジケーションは、完全投影モード(6パッケージ面)であって、それが、0を上回るとき、一時的に留保される。
「rotation_yaw」および「rotation_pitch」および「rotation_roll」は、カメラが、それぞれ、X、Y、およびZ軸に沿って回転するためのヨー角度、ピッチ角、およびロール角度を規定する。
【0116】
開示される技術のいくつかの実施形態では、メディアトラックはそれぞれ、1つまたは複数のビューのパッチからのものであって、各ビューは、1つのカメラに対応し、各メディアトラック内のビューに対応する、カメラが、説明される。
【0117】
カメラパラメータリストボックスは、「schi」タイプボックス内に含有されるボックスタイプに従って識別され、これは、スキーム情報ボックスであって、ボックスがスキームタイプにある、制限されたスキーム情報を説明する(scheme_typeが、「altv」であるとき、アトラスモードをサポートする)。カメラパラメータボックスの実施例は、下記に説明される。
【0118】
【0119】
開示される技術のいくつかの実施形態では、カメラの展開モードに基づいて、2つまたは複数の基本ビューが存在し、基本ビューのアトラスは、異なるメディアトラック内に記憶され、各基本ビューのアトラスは、ベースビューとして使用され、関連付けられる付加的ビューのビューは、付加的ビューとしての役割を果たす。基本ビューが位置する、メディアトラックでは、基本ビューおよびその関連付けられる他のビューに対応する、カメラは、アトラスカメラパラメータボックス(AltalsCameraParametersListBox)を使用して説明されることができ、これは、「schi」タイプボックス内に含まれ、これは、ソリューション情報である。スキーム情報ボックスは、制限された情報を説明するために使用される。その中に他の関連ビューのアトラスが位置する、メディアトラックは、トラック参照タイプ「sbas」を伴うトラックを定義し、基本ビューのメディアトラックと関連する付加的ビューの他のメディアトラックを関連付
ける。
【0120】
開示される技術のいくつかの実施形態では、基本ビューおよびそれらに関連する他のビューと関連付けられる、メディアトラックは、トラックグループタイプ「cstg」を使用して定義されてもよい。
【0121】
開示される技術は、いくつかの実施形態では、複数の基本ビューが存在する状況では、ビューのアトラスをメディアトラックの中に入れるために実装されることができる。ある実装では、テクスチャコンポーネントおよび深度コンポーネントは、1つのメディアトラックの中に入れられる、または別の実装では、テクスチャコンポーネントおよび深度コンポーネントは、異なるメディアトラックの中に入れられる。開示される技術のいくつかの実施形態に基づいて実装される、マルチビュービデオ処理方法は、メディアトラックおよび関連メタデータの構造を定義するステップと、データのメタデータおよびメディアトラック内に入れられたビューのアトラス情報を説明するステップとを含んでもよい。開示される技術のいくつかの実施形態に基づいて実装される、マルチビュービデオ処理方法は、複数のビューに基づいて、ビデオを捕捉するステップと、ビデオをコーディングするステップと、コーディングされたビデオをそのメタデータとともにメディアファイルの中にパッキングするステップと、メディアファイルを、直接、またはユーザの選択に従って、送信するステップとを含んでもよい。ユーザは、メディアファイルを承認し、メタデータおよび必要とされるサンプルを抽出し、メディアファイル内の写真をデコーディングし、デコーディングされた写真を合成し、合成されたコンテンツをそのビューポート内で見ることができる。
【0122】
開示される技術のいくつかの実施形態では、ビデオデータ処理方法は、ユーザの視点内の多視点ビデオのビューに対応する、メディアトラック内の1つまたは複数のアトラスを決定するステップを含んでもよい。1つまたは複数のアトラスは、ビューのテクスチャ情報および深度情報を含む。
【0123】
開示される技術のいくつかの実施形態では、ビデオデータ処理方法はまた、マルチビュービデオに対応する、アトラスおよびカメラパラメータに基づいて、ユーザの視点内の多視点ビデオを生成するステップを含んでもよい。
【0124】
開示される技術のいくつかの実施形態では、ユーザの視点内の多視点ビデオのビューに対応する、メディアトラック内の1つまたは複数のアトラスを決定するステップは、多視点ビデオのベースビューおよびユーザによって選択された多視点ビデオのベースビューに関連する付加的ビューを決定するステップと、メディアトラック内の多視点ビデオのベースビューおよび付加的ビューに対応する、アトラスに基づいて、メディアトラック内のユーザによって選択されたマルチビュービデオのビューに対応する、1つまたは複数のアトラスを決定するステップとを含む。
【0125】
一実施例では、ユーザの視点内の多視点ビデオのビューに対応する、メディアトラック内の1つまたは複数のアトラスの決定はさらに、第2のグループタイプに基づいて、メディアトラック内のエンティティグループデータボックスを識別するステップを含み、エンティティグループデータボックスは、多視点ビデオのベースビューを示す。一実施例では、エンティティグループデータボックスは、エンティティグループのグループ識別を示す。
【0126】
一実施例では、ユーザの視点内の多視点ビデオのビューに対応する、メディアトラック内の1つまたは複数のアトラスの決定はさらに、ビデオトラックサンプルのエントリ内の基本ビューデータボックスを識別するステップを含み、および基本ビューデータボ
ックスは、多視点ビデオのベースビュー識別を示す。
【0127】
開示される技術のいくつかの実施形態では、サンプルグループデータボックスは、メディアトラック内にあって、その対応するサンプルグループ説明データボックスは、第1のグループタイプに基づいて識別され、サンプルグループ説明データボックス内のサンプルグループエントリは、多視点ビデオベースビューIDを示す。一実施例では、サンプルグループエントリは、サンプルグループのグループ化識別子を示す。
【0128】
開示される技術のいくつかの実施形態では、ビデオデータ処理方法はさらに、サンプルグループ説明データボックスまたはエンティティグループデータボックスまたは基本ビューデータボックスに示される、多視点ビデオのベースビュー識別子と関連付けられる、1つまたは複数の付加的ビューの識別子を示すステップを含む。一実施例では、ビデオデータ処理方法はさらに、ビューに対応するアトラスが位置する、メディアトラックの識別子を使用するステップを含む。
【0129】
開示される技術のいくつかの実施形態では、基本ビューデータボックスによって示されるベースビューと、基本ビューデータボックスによって示される多視点ビデオのベースビュー識別子によって識別される付加的ビューに対応する、アトラスとが、位置特定される。一実施例では、メディアトラックは、メディアトラックのタイプに従って、その中でチャートセットがベースビューに対応する、メディアトラックのグループ化と、その中に付加的ビューに対応するアトラスが位置する、メディアトラックとを識別することによって、特性評価される。
【0130】
開示される技術のいくつかの実施形態では、アトラスリスト時限メタデータトラックが、第1のサンプルエントリタイプに従って識別され、アトラスリスト時限メタデータトラックは、メディアトラック内のアトラスの画像ブロック情報を示すために使用される。
【0131】
開示される技術のいくつかの実施形態では、メディアトラック内のアトラスのパッチ情報は、以下、すなわち、アトラスの識別、アトラスのパッチの数、アトラスのパッチソースのビュー識別、アトラスに対応するビュー内のアトラスのパッチの幅および高さ、アトラスX-軸およびY-軸内のパッチの座標、X-軸およびY-軸のアトラスに対応する、ビュー内のアトラスのパッチの座標のうちの少なくとも1つを含み、アトラスのパッチは、アトラスからビューの対応する回転角度にマッピングされる。
【0132】
開示される技術のいくつかの実施形態では、ビデオデータ処理方法はさらに、アトラス属性データボックスを識別するステップを含み、これは、アトラスが、テクスチャ情報および/または深度情報を含有するかどうかを示し、かつアトラスの識別を示す。代替として、アトラスを含有するテクスチャ情報に属する、ビデオトラックと、アトラスの深度情報を含有する、ビデオトラックは、第3のトラックグループタイプに基づいて識別される。
【0133】
開示される技術のいくつかの実施形態では、カメラパラメータは、ファイルレベルカメラパラメータリストデータボックスを識別し、多視点ビューを撮影するためのカメラパラメータ情報を示すために使用されてもよい。代替として、制限されたソリューション情報を識別するためのアトラスカメラパラメータリストデータボックスが、メディアトラック内のアトラスに対応する、ビューのカメラパラメータ情報を示すために使用される。
【0134】
開示される技術のいくつかの実施形態では、カメラパラメータは、以下、すなわち、カメラ場所に関する座標情報、カメラ場所に関する座標回転情報、カメラマッピングフォーマット情報、カメラ深度定量化情報のうちの少なくとも1つを含んでもよい。
【0135】
本明細書に説明される実施形態のうちのいくつかは、方法またはプロセスの一般的文脈で説明され、これは、一実施形態では、ネットワーク化された環境内でコンピュータによって実行される、プログラムコード等のコンピュータ実行可能命令を含む、コンピュータ可読媒体で具現化されるコンピュータプログラム製品によって実装され得る。コンピュータ可読媒体は、限定ではないが、読取専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)等を含む、リムーバブルおよび非リムーバブル記憶デバイスを含んでもよい。したがって、コンピュータ可読媒体は、非一過性の記憶媒体を含むことができる。概して、プログラムモジュールは、特定のタスクを実施する、または特定の抽象データタイプを実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を含んでもよい。コンピュータまたはプロセッサ実行可能命令、関連付けられるデータ構造、およびプログラムモジュールは、本明細書に開示される方法のステップを実行するためのプログラムコードの実施例を表す。そのような実行可能命令または関連付けられるデータ構造の特定のシーケンスは、そのようなステップまたはプロセスで説明される機能を実装するための対応する行為の実施例を表す。
【0136】
開示される実施形態のうちのいくつかは、ハードウェア回路、ソフトウェア、またはそれらの組み合わせを使用する、デバイスまたはモジュールとして実装されることができる。例えば、ハードウェア回路実装は、例えば、プリント回路基板の一部として統合される、離散アナログおよび/またはデジタルコンポーネントを含むことができる。代替として、または加えて、開示されるコンポーネントまたはモジュールは、特定用途向け集積回路(ASIC)として、および/またはフィールドプログラマブルゲートアレイ(FPGA)デバイスとして実装されることができる。いくつかの実装は、加えて、または代替として、本願の開示される機能性と関連付けられるデジタル信号処理の動作の必要性のために最適化されるアーキテクチャを伴う特殊マイクロプロセッサである、デジタル信号プロセッサ(DSP)を含んでもよい。同様に、各モジュール内の種々のコンポーネントまたはサブコンポーネントが、ソフトウェア、ハードウェア、またはファームウェアで実装されてもよい。モジュールおよび/またはモジュール内のコンポーネントの間のコネクティビティは、限定ではないが、適切なプロトコルを使用する、インターネット、有線、または無線ネットワークを経由した通信を含む、当技術分野で公知であるコネクティビティ方法および媒体のうちのいずれか1つを使用して、提供され得る。
【0137】
本書は、多くの詳細を含有するが、これらは、請求される発明または請求され得るものの範囲への限定としてではなく、むしろ、特定の実施形態に特有の特徴の説明として解釈されるべきである。別個の実施形態との関連で本書に説明されるある特徴もまた、単一の実施形態において組み合わせて実装されることができる。逆に、単一の実施形態との関連で説明される種々の特徴もまた、複数の実施形態において別個に、または任意の好適な副次的組み合わせにおいて実装されることができる。さらに、特徴が、ある組み合わせにおいて作用するものとして上記に説明され、さらに、そのようなものとして最初に請求され得るが、請求される組み合わせからの1つまたは複数の特徴は、ある場合には、組み合わせから削除されることができ、請求される組み合わせは、副次的組み合わせまたは副次的組み合わせの変形例を対象とし得る。同様に、動作は、特定の順序で図面に描写され得るが、これは、望ましい結果を達成するために、そのような動作が示される特定の順序で、または連続的順序で実施されること、または全ての図示される動作が実施されることを要求するものとして理解されるべきではない。
【0138】
いくつかの実装および実施例のみが、説明され、他の実装、向上、および変形例も、本開示に説明および図示されるものに基づいて成されることができる。