(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-18
(54)【発明の名称】データ処理方法、記憶媒体、及びプログラム製品
(51)【国際特許分類】
H04N 21/231 20110101AFI20241010BHJP
H04N 5/92 20060101ALI20241010BHJP
【FI】
H04N21/231
H04N5/92 010
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024524448
(86)(22)【出願日】2023-03-01
(85)【翻訳文提出日】2024-04-23
(86)【国際出願番号】 CN2023079080
(87)【国際公開番号】W WO2023174059
(87)【国際公開日】2023-09-21
(31)【優先権主張番号】202210249027.9
(32)【優先日】2022-03-14
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】511151662
【氏名又は名称】中興通訊股▲ふん▼有限公司
【氏名又は名称原語表記】ZTE CORPORATION
【住所又は居所原語表記】ZTE Plaza,Keji Road South,Hi-Tech Industrial Park,Nanshan Shenzhen,Guangdong 518057 China
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】李 秋 ▲ティン▼
(72)【発明者】
【氏名】黄 成
(72)【発明者】
【氏名】白 雅 賢
(72)【発明者】
【氏名】謝 紹 偉
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164SA26S
5C164SB11S
5C164SB36P
(57)【要約】
本願の実施例は、少なくとも1つのテクスチャマップ及び/又は深さマップを含むフリービュービデオデータを取得するステップと、前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するステップと、ターゲットビュー情報に基づいて前記フリービュービデオデータを処理するステップと、を含む、データ処理方法、装置、機器、コンピュータ読み取り可能な記憶媒体、及びコンピュータプログラム製品を提供する。
【特許請求の範囲】
【請求項1】
データ処理方法であって、
少なくとも1つのテクスチャマップ及び/又は深さマップを含むフリービュービデオデータを取得するステップと、
前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するステップと、
ターゲットビュー情報に基づいて前記フリービュービデオデータを処理するステップと、を含む、方法。
【請求項2】
前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する前記ステップは、
収集装置によって収集された前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するステップを含む、請求項1に記載の方法。
【請求項3】
収集装置によって収集された前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する前記ステップは、
前記少なくとも1つの収集装置によって収集されたテクスチャマップ及び/又は深さマップを第1メディアトラックにカプセル化するステップを含む、請求項2に記載の方法。
【請求項4】
前記第1メディアトラックのサンプルは、少なくとも1つのサブサンプルを含み、
前記サブサンプルは、前記テクスチャマップ及び/又は深さマップを含む、請求項3に記載の方法。
【請求項5】
前記サブサンプルは、前記テクスチャマップ及び/又は深さマップを含み、
前記サブサンプルは、複数の前記収集装置によって収集されたテクスチャマップ及び深さマップを含む場合、
前記サブサンプルは、1つの前記収集装置によって収集されたテクスチャマップ及び/又は深さマップを含む場合のうちの少なくとも1つを含む、請求項4に記載の方法。
【請求項6】
収集装置によって収集された前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する前記ステップは、
前記少なくとも1つの収集装置によって収集されたテクスチャマップを少なくとも1つのテクスチャマップメディアトラックにカプセル化するステップと、
前記少なくとも1つの収集装置によって収集された深さマップを少なくとも1つの深さマップメディアトラックにカプセル化するステップと、を含む、請求項2に記載の方法。
【請求項7】
前記第1メディアトラックのサンプルエントリは、第1ボックス及び/又は第2ボックスを含み、
前記第1ボックスは、前記収集装置の装置情報を含み、
前記第2ボックスは、前記テクスチャマップ及び/又は深さマップの属性情報を含む、請求項3に記載の方法。
【請求項8】
前記テクスチャマップメディアトラックのサンプルエントリは、第1テクスチャマップボックスを含み、
前記深さマップメディアトラックのサンプルエントリは、第1深さマップボックスを含み、
前記第1テクスチャマップボックスは、前記テクスチャマップメディアトラックに対応する収集装置の装置情報又はテクスチャマップの属性情報を含み、
前記第1深さマップボックスは、前記深さマップメディアトラックに対応する収集装置の装置情報又は深さマップの属性情報を含む、請求項6に記載の方法。
【請求項9】
前記テクスチャマップメディアトラックのサンプルエントリは、第2テクスチャマップボックスをさらに含み、
前記深さマップメディアトラックのサンプルエントリは、第2深さマップボックスをさらに含み、
前記第2テクスチャマップボックスは、前記テクスチャマップメディアトラックに対応する収集装置の装置情報又はテクスチャマップの属性情報を含み、
前記第2深さマップボックスは、前記深さマップメディアトラックに対応する収集装置の装置情報又は深さマップの属性情報を含み、
前記第1テクスチャマップボックスと前記第2テクスチャマップボックスは異なる情報を含み、前記第1深さマップボックスと前記第2深さマップボックスは異なる情報を含む、請求項8に記載の方法。
【請求項10】
前記第1ボックスは、トラック情報をさらに含み、
前記トラック情報は、テクスチャマップが存在するトラックの識別子、深さマップが存在するトラックの識別子のうちの少なくとも1つを含む、請求項7に記載の方法。
【請求項11】
前記第1テクスチャマップボックスは、テクスチャマップが存在するトラックの識別子をさらに含み、
前記第1深さマップボックスは、深さマップが存在するトラックの識別子をさらに含む、請求項8に記載の方法。
【請求項12】
前記収集装置の装置情報は、収集装置の数、収集装置の識別子、及び収集装置のパラメータ情報のうちの少なくとも1つを含み、
前記テクスチャマップの属性情報は、テクスチャマップ情報識別子、テクスチャマップ画像情報のうちの少なくとも1つを含み、
前記深さマップの属性情報は、深さマップ情報識別子、深さマップ画像情報のうちの少なくとも1つを含む、請求項7~11のいずれか1項に記載の方法。
【請求項13】
ターゲットビュー情報を取得するステップをさらに含み、
フリービュービデオデータを取得する前記ステップは、
ターゲットビュー情報に基づいて、ターゲットビューに対応するフリービュービデオデータを取得するステップを含む、請求項1に記載の方法。
【請求項14】
前記ターゲットビュー情報に基づいて、ターゲットビューに対応するフリービュービデオデータを取得するステップは、
前記ターゲットビュー情報に基づいて、前記ターゲットビューに対応するテクスチャマップ及び/又は深さマップを取得するステップを含む、請求項13に記載の方法。
【請求項15】
ターゲットビュー情報を取得する前記ステップは、タイミングメタデータトラックに応じてターゲットビュー情報を取得するステップを含み、前記ターゲットビューは、前記タイミングメタデータトラックの指示に従って動的に変化する、請求項13又は14に記載の方法。
【請求項16】
前記ターゲットビュー情報は、収集装置の識別子、収集装置のパラメータ情報、ターゲットビューの位置情報、ターゲットビューの回転情報、ターゲットビューの識別子のうちの少なくとも1つを含む、請求項1又は13に記載の方法。
【請求項17】
前記タイミングメタデータトラックは、前記ターゲットビューに対応する前記フリービュービデオデータが存在するメディアトラックに関連付けられる、請求項15に記載の方法。
【請求項18】
前記ターゲットビュー情報に基づいて前記フリービュービデオデータを処理する前記ステップは、
前記フリービュービデオデータ及び前記ターゲットビュー情報に基づいて、前記ターゲットビューに対応する収集装置によって収集されたテクスチャマップ及び深さマップを選択し、前記ターゲットビューに対応するテクスチャマップを合成する、
又は、
前記フリービュービデオデータ及び前記ターゲットビュー情報に基づいて、前記ターゲットビューに対応する収集装置によって収集されたテクスチャマップを選択するステップを含む、請求項1に記載の方法。
【請求項19】
第3ボックスによって前記テクスチャマップメディアトラックと前記深さマップメディアトラックとを関連付けるステップと、
第4ボックスによって前記深さマップメディアトラックと前記テクスチャマップメディアトラックとを関連付けるステップと、
第5ボックスによって前記深さマップメディアトラックと前記テクスチャマップメディアトラックとをトラックグループのように関連付けるステップとのうちの少なくともの1つをさらに含む、請求項5に記載の方法。
【請求項20】
予め設定された情報に基づいて、前記メディアトラックをメディアトラックグループとしてカプセル化するステップをさらに含み、
前記予め設定された情報は、収集装置の位置、収集装置の識別子、画像収集頻度、符号化方式のうちの少なくとも1つを含む、請求項19に記載の方法。
【請求項21】
予め設定された情報に基づいて、前記メディアトラックをメディアトラックグループとしてカプセル化する前記ステップは、
前記予め設定された情報に基づいて、前記少なくとも2つのテクスチャマップメディアトラックを第1メディアトラックグループとしてカプセル化するステップと、
前記予め設定された情報に基づいて、前記少なくとも2つの深さマップメディアトラックを第2メディアトラックグループとしてカプセル化するステップと、
前記予め設定された情報に基づいて、前記少なくとも1つのテクスチャマップメディアトラック及び前記少なくとも1つの深さマップメディアトラックを第3メディアトラックグループとしてカプセル化するステップと、のうちの少なくとも1つを含む、請求項20に記載の方法。
【請求項22】
画像表示装置であって、
少なくとも1つの収集装置によって収集されたテクスチャマップ及び/又は深さマップを含むフリービュービデオデータ、及びターゲットビュー情報を取得するように構成された取得モジュールと、
前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するように構成されたカプセル化モジュールと、
前記ターゲットビュー情報に基づいて、前記フリービュービデオデータを処理するように構成された処理モジュールと、を含む、装置。
【請求項23】
前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する前記ステップは、
収集装置によって収集された前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するステップを含む、請求項22に記載の装置。
【請求項24】
収集装置によって収集された前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する前記ステップは、
前記少なくとも1つの収集装置によって収集されたテクスチャマップを少なくとも1つのテクスチャマップメディアトラックにカプセル化するステップと、
前記少なくとも1つの収集装置によって収集された深さマップを少なくとも1つの深さマップメディアトラックにカプセル化するステップと、を含む、請求項23に記載の装置。
【請求項25】
画像表示装置であって、
少なくとも1つのテクスチャマップ及び/又は深さマップを含むフリービュービデオデータ、及びターゲットビュー情報を取得するように構成された取得モジュールと、
カプセル化されたフリービュービデオデータを記憶するように構成された記憶モジュールと、
前記ターゲットビュー情報に基づいて、前記フリービュービデオデータを処理するように構成された処理モジュールと、を含む、装置。
【請求項26】
請求項1~21のいずれか1項に記載のデータ処理方法を実行するためのコンピュータ実行可能命令を記憶しているコンピュータ読み取り可能な記憶媒体。
【請求項27】
コンピュータプログラム又はコンピュータ命令を含むコンピュータプログラム製品であって、
前記コンピュータプログラム又はコンピュータ命令は、コンピュータ読み取り可能な記憶媒体に記憶されており、コンピュータ機器のプロセッサは、前記コンピュータ読み取り可能な記憶媒体から前記コンピュータプログラム又はコンピュータ命令を読み取り、前記コンピュータプログラム又はコンピュータ命令を実行することにより、請求項1~21のいずれか1項に記載のデータ処理方法を前記コンピュータ機器に実行させる、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、出願番号が202210249027.9、出願日が2022年3月14日の中国特許出願に基づいて提出され、当該中国特許出願の優先権を主張しており、当該中国特許出願の全ての内容はここで参考として本願に組み込まれている。
【0002】
本願の実施例は、コンピュータの技術分野、特にデータ処理方法、装置、機器、記憶媒体、及びプログラム製品に関する。
【背景技術】
【0003】
コンピュータ技術の発展に伴い、ユーザは自由な視点の切り替えにより、ビデオ再生やバーチャルゲームなどのシーンでより強いライブ感を得られることを望んでいる。
【0004】
関連技術では、メディアデータ処理や伝送の効率が低いため、ユーザによる柔軟な視点切り替えやシーン表示が困難である。いかにデータ処理効率を向上させ、ユーザの使用感を向上させるかは、現在、検討および解決の急務となっている。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本願の実施例は、データ処理効率を向上させることを目的とするデータ処理方法、装置、機器、コンピュータ読み取り可能な記憶媒体、及びコンピュータプログラム製品を提供する。
【課題を解決するための手段】
【0006】
第1態様では、本願の実施例は、
少なくとも1つの収集されたテクスチャマップ及び/又は深さマップを含むフリービュービデオデータを取得するステップと、
前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するステップと、
ターゲットビュー情報に基づいて前記フリービュービデオデータを処理するステップと、を含む、データ処理方法を提供する。
【0007】
第2態様では、本願の実施例は
少なくとも1つのテクスチャマップ及び/又は深さマップを含むフリービュービデオデータ、及びターゲットビュー情報を取得するように構成された取得モジュールと、
前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するように構成されたカプセル化モジュールと、
前記ターゲットビュー情報に基づいて、前記フリービュービデオデータを処理するように構成された処理モジュールと、を含む、画像表示装置を提供する。
【0008】
第3態様では、本願の実施例は、
第1態様に記載のデータ処理方法を実行するためのコンピュータ実行可能命令を記憶しているコンピュータ読み取り可能な記憶媒体を提供する。
【0009】
第4態様では、本願の実施例は、
コンピュータプログラム又はコンピュータ命令を含むコンピュータプログラム製品であって、
前記コンピュータプログラム又はコンピュータ命令は、コンピュータ読み取り可能な記憶媒体に記憶されており、コンピュータ機器のプロセッサは、前記コンピュータ読み取り可能な記憶媒体から前記コンピュータプログラム又はコンピュータ命令を読み取り、前記コンピュータプログラム又はコンピュータ命令を実行することにより、第1態様に記載のデータ処理方法を前記コンピュータ機器に実行させる、コンピュータプログラム製品を提供する。
【図面の簡単な説明】
【0010】
【
図1】ユーザが表示装置を介してライブビデオを視聴するときの模式図である。
【
図2】ユーザが他の表示装置を介してビデオを視聴するときの模式図である。
【
図3】本願の一実施例によるデータ処理方法の適用シーンのシステムアーキテクチャの模式図である。
【
図4】本願の一実施例によるデータ処理方法のフローチャートである。
【
図5】本願の一実施例によるデータ処理方法のフローチャートである。
【
図6】本願の一実施例によるデータ処理方法のフローチャートである。
【
図7】本願の一実施例によるシングルトラックカプセル化フリービュービデオデータのファイルの構造図である。
【
図8】本願の一実施例によるシングルトラックカプセル化モード拡張に基づくフリービュービデオのメディアファイルの構造図である。
【
図9】本願の一実施例によるシングルトラックカプセル化に基づくフリービュービデオデータの処理のフローチャートである。
【
図10】本願の一実施例によるマルチトラックカプセル化フリービュービデオデータのファイルの構造図である。
【
図11】本願の一実施例によるマルチトラックカプセル化モード拡張に基づくフリービュービデオのメディアファイルの構造図である。
【
図12】本願の一実施例によるマルチトラックカプセル化に基づくフリービュービデオデータの処理のフローチャートである。
【
図13】本願の一実施例によるメディアトラックのグループ化の模式図である。
【
図14】本願の一実施例によるデータ処理装置の構造模式図である。
【
図15】本願の一実施例によるデータ処理装置の構造模式図である。
【
図16】本願の一実施例によるデータ処理装置の構造模式図である。
【
図17】本願の一実施例によるデータ処理装置の構造模式図である。
【
図18】本願の一実施例によるデータ処理機器の構造模式図である。
【
図19】本願の一実施例によるデータ処理機器の構造模式図である。
【発明を実施するための形態】
【0011】
本願の目的、技術案及び利点をより明確にするために、以下では、図面及び実施例を参照して、本願をさらに詳細に説明する。本明細書に記載された具体的な実施例は、本願を説明するためにのみ使用され、本願を限定するために使用されないことを理解されたい。
【0012】
なお、機能モジュール分割は装置の模式図に示され、論理的順序はフローチャートに示されているが、場合によっては、装置のモジュール分割とは異なってもよく、又は示されたもくしは説明されたステップは、フローチャートに示された順序とは異なるもので実行されてもよい。明細書及び特許請求の範囲、並びに前述の図面における「第1」、「第2」などの用語は、特定の順序又は優先順位を説明するために使用されるのではなく、類似の対象を区別するために使用される。
【0013】
本願の実施例の説明において、別途明確な限定がない限り、「設ける」、「取り付ける」、「接続」などの用語は広義に理解すべきであり、当業者は技術案の具体的な内容と合わせて、本願の実施例における上記の用語の具体的な意味を合理的に決定することができる。本願の実施例では、「さらに」、「例示的に」、又は「任意選択で」などの語は、例、例証、又は例示を示すもので、他の実施例又は設計案よりも好ましい又は有利であると解釈されるべきではない。「さらに」、「例示的に」、又は「任意選択で」のような語の使用は、関連する概念を具体的な方法で提示することを意図している。
【0014】
本願の実施例は、携帯電話、タブレット、コンピュータ、ノートパソコン、ウェアラブルデバイス、車載デバイス、液晶ディスプレイ、ブラウン管モニタ、ホログラフィックディスプレイ、又はプロジェクタなどの端末機器など、画像及びビデオの表示に関連する様々な機器に適用することができ、また、携帯電話、タブレット、コンピュータ、ノートパソコン、ウェアラブルデバイス、車載機器などのサーバ機器など、画像及びビデオデータを処理する様々な機器に適用することができる。本願の実施例は、これらに限定されるものではない。
【0015】
没入型メディアは、ビデオやオーディオなどの技術により、ユーザに視覚や聴覚などの面で高度にリアルな仮想空間環境を体験させ、その場にいるような感覚を生み出す。関連技術では、ユーザがヘッドマウントディスプレイデバイスを装着した後、頭部を自由に回転させることで360度のビデオを視聴することができる、3自由度(3DOF:3 Degrees of Freedom)の没入体験ができる。また、より良い視覚体験を得るために、関連技術は、強化された3自由度(3DOF+:3 Degrees of Freedom Plus)と6自由度(6DOF:6 Degrees of Freedom)のビデオをサポートすることができ、つまり、ユーザの頭部や体は空間の中で限られた又は自由に移動することができ、ビューの自由な切り替えを実現し、よりリアルな没入感を実現することができる。
【0016】
6DOFビデオを例にすると、6DOFビデオの収集と再生には多くの実現方式が存在し、フリービュービデオはその中の1つである。フリービュービデオは、通常、同じ3次元シーンを向いて撮影されたマルチカメラマトリックスアレイから収集された異なるビューのビデオの集合である。ユーザは、フリービュービデオの視聴中に、対応するビデオ画像を現実視点又は合成された仮想視点で視聴しながら、自由にビューを切り替えることができる。フリービュービデオデータには、マルチビューのテクスチャマップと深さマップが含まれており、ユーザが現実視点に切り替えた場合、カメラで収集された現実のビデオを直接表示することができ、ユーザが仮想視点に切り替えた場合、仮想視点に対応する仮想視点テクスチャマップをリアルタイムに合成することができる。フリービュービデオデータの収集過程におけるカメラ配置の位置と数、リアルタイムで仮想視点画像を合成する過程におけるカメラに対応するビデオデータの選択、伝送及び処理は、データ合成の時間消費、品質などにそれぞれ異なる程度の影響を与え、これはユーザの使用体験に直接影響する。
【0017】
フリービュービデオとは、一般的に複数のカメラを用いて対象シーンの周囲を撮影し、仮想ビュー合成技術を利用して仮想ビューの画像を取得する新しい仮想現実(VR:Virtual Reality)ビデオ技術である。フリービュービデオ技術を利用することで、ユーザはその対象シーンを任意のビューで見ることができ、パノラマビデオよりも優れた視聴体験を得ることができる。ただし、現在、対象シーンをライブ配信している中に、対象シーンのフリービュービデオをユーザに提供することはできない。したがって、ビデオをライブ配信している中に、どのようにしてユーザが自分の必要なビューでビデオライブ配信の中のいくつかの素晴らしいビデオを視聴することができるかは、当業者が早急に解決すべき技術的課題である。
【0018】
本技術案を詳しく述べるために、
図1、
図2の例として、関連技術についてさらに説明する。
【0019】
図1は、ユーザが表示装置を介してライブビデオを視聴するときの模式図である。
図1に示すように、ユーザ200は、第1表示装置100を介してライブコンテンツを視聴する。しかし、ユーザ200は、表示装置が現在再生しているビューからしかライブのシーンコンテンツを見ることができず、自分の希望に応じて視聴ビューを調整することは困難である。
【0020】
図2は、ユーザが他の表示装置を介してビデオを視聴するときの模式図である。
図2に示すように、ユーザ200は、第2表示装置300を介してビデオコンテンツを視聴する。ユーザ200は、第2表示装置300により、頭部を回転させることにより、また、第2表示装置300のリモコン310により、視聴ビューを切り替えることができる。この方式は、3次元画像を提供し、ユーザの所望に応じて、視聴角度を調整することができるが、画像選択が制限され、伝送及び処理効率が低く、3DOF+及び6DOFの適用シーンを完全に満足することが困難であると同時に、リアルタイムに画像を表示又は合成する場合にも、この技術を応用することが困難である。
【0021】
本願の実施例は、テクスチャマップ、深さマップをメディアトラックにカプセル化することにより、データ処理効率を向上させ、データカプセル化、伝送をより柔軟にし、さらに、フリービュービデオの処理効率を向上させるデータ処理方法、装置、機器、コンピュータ読み取り可能な記憶媒体、及びコンピュータプログラム製品を提供する。
【0022】
以下、図面を参照して、本願の実施例についてさらに説明する。
【0023】
図3は、本願の一実施例によるデータ処理方法の適用シーンのシステムアーキテクチャの模式図である。
図3に示すように、このシステムアーキテクチャは、データ処理装置400及びデータ収集装置を含む。
【0024】
本実施例では、第1画像収集装置510、第2画像収集装置520、2台のデータ収集装置を例に挙げる。第1画像収集装置510は、第1領域Aの画像データを収集し、第2画像収集装置520は、第2領域Bの画像データを収集する。
【0025】
本実施例のフリービュービデオデータは、第1画像収集装置510及び第2画像収集装置520によって収集される。
【0026】
データ処理装置400は、フリービュービデオデータを取得する。
【0027】
一実施形態では、フリービュービデオデータは、第1画像収集装置510によって収集された第1テクスチャマップと、第2画像収集装置520によって収集された第2テクスチャマップとを含む。
【0028】
一実施形態では、フリービュービデオデータは、第1画像収集装置510によって収集された第1深さマップと、第2画像収集装置520によって収集された第2深さマップとを含む。
【0029】
別の実施形態では、フリービュービデオデータは、第1画像収集装置510の第1テクスチャマップ、第1深さマップ、及び第2画像収集装置520の第2テクスチャマップ、第2深さマップを含む。
【0030】
なお、テクスチャマップ、深さマップは、収集装置によって収集されてもよく、コンピュータ生成などの他の方法によって取得されてもよい。
【0031】
第1ビュー610は、第1領域Aを見るビューであり、第2ビュー620は、第2領域Bを見るビューである。
【0032】
一実施形態では、データ処理装置400は、第1領域Aを見ているときに、第1画像収集装置510によって収集された第1テクスチャマップを取得し、カプセル化モジュール、処理モジュールによってカプセル化して処理し、現在のフリービュービデオデータを取得する。第2領域Bを見たい場合、データ処理装置400は、第2画像収集装置520によって収集された第2テクスチャマップを取得し、カプセル化モジュール、処理モジュールによってカプセル化して処理し、現在のフリービュービデオデータを取得する。本実施例の技術案を使用すると、所望のビューにリアルタイムで迅速かつ自由に切り替えることでビューに関する体験を向上させることができる。
【0033】
別の実施形態では、第3領域Cを第3ビュー630(すなわち、仮想視点)で見ることが望ましい場合、データ処理装置400は、まず、第3領域Cに隣接する第1領域A及び/又は第2領域Bを決定し、すなわち、第3ビュー630に隣接する第1ビュー610又は第2ビュー620を決定し、次に、第1ビュー610に対応する収集装置510によって収集された第1深さマップ及び/又は第2ビュー620に対応する収集装置520によって収集された第2深さマップを合成処理することによって、第3ビュー630に対応する第3深さマップを得、最後に、第1ビュー610に対応する収集装置510によって収集された第1テクスチャマップ及び/又は第2ビュー620に対応する収集装置520によって収集された第2テクスチャマップと、合成処理によって得られた第3深さマップとを組み合わせて、第3ビュー630(すなわち、仮想視点)に対応する第3テクスチャマップを合成して、現在のフリービュービデオデータを取得する。本実施例の技術案を使用すると、収集装置の使用量を削減するだけでなく、リアルタイムにビューを自由に切り替えて見ることができ、よりリアルな没入体験を得ることができる。
【0034】
別の実施例では、テクスチャマップ及び深さマップは、他の方法で得ることもできる。例えば、深さマップはテクスチャマップ計算により得られ、テクスチャマップ及び深さマップはコンピュータ合成によりシミュレーションデータを得ることもできる。
【0035】
図4は、本願の一実施例によるデータ処理方法のフローチャートである。
図4に示すように、このデータ処理方法は、端末用としてもサーバ用としてもよい。
図4の実施例において、このデータ処理方法は、ステップS1000、ステップS2000、及びステップS3000を含んでもよいが、これらに限定されない。
【0036】
ステップS1000:フリービュービデオデータを取得する。
【0037】
一実施例では、フリービュービデオデータは、テクスチャマップを含む。
【0038】
一実施例では、フリービュービデオデータは、深さマップを含む。
【0039】
一実施例では、フリービュービデオデータは、テクスチャマップ及び深さマップを含む。
【0040】
なお、テクスチャマップ、深さマップは、収集装置によって収集されてもよく、コンピュータ生成などの他の方法によって取得されてもよい。以下、収集装置による収集を例に説明する。
【0041】
フリービュービデオは、同一の3次元シーンに向けて撮影されたマルチカメラマトリックスアレイから収集された異なるビューのビデオの集合である。フリービュービデオデータは、通常、複数の収集装置によって収集されるが、異なる角度と異なる位置に配置された収集装置により、撮影したいシーンや対象について画像を収集する。収集装置は、カメラなど、画像収集を行うことができる任意の装置であってもよい。なお、収集装置は1つ又は複数であってもよく、収集装置の数は本願の実施例において限定されない。
【0042】
フリービュービデオは、フリービューでのビデオ画像の合成をサポートすることができ、そのビデオデータには、通常、テクスチャマップと深さマップが含まれる。テクスチャマップは、被写体の表面の性質に関するデータを記載したものである。テクスチャマップをレンダリングすることにより、リアルなビデオ画像を得ることができる。深さマップは距離画像とも呼ばれ、物体の可視表面の幾何学的形状を直接反映し、深さマップはグレースケール画像に似ているが、深さマップ内の各画素値は物体からカメラまでの実際の距離である。なお、端末の記憶能力及び計算能力が制限されている場合、又はビュー切り替えの自由度が制限されている場合など、いくつかの適用シーンでは、フリービュービデオデータは、テクスチャマップ又は深さマップのいずれかのみを含んでもよい。
【0043】
一実施例では、切り替え後のビューに対応する収集装置がない場合、仮想視点合成が行われる。仮想視点合成再構成過程では、ビュー切り替え後のビュー近傍の複数のカメラを決定した後、カメラの深さマップを処理し、処理した深さマップに基づいてカメラのテクスチャマップを結合して仮想視点に対応するテクスチャマップを合成する。したがって、本実施例に対応する適用シーンでは、フリービュービデオは、テクスチャマップデータ及び深さマップデータを含む。
【0044】
一実施例では、視点切り替えの自由度は制限され、すなわち、仮想視点を合成せずにカメラが対応する現実視点間を切り替える場合、又は収集装置が深さマップ収集能力を有していない場合に限り、本実施例に対応する適用シーンでは、フリービュービデオはテクスチャマップデータのみを含み、深さマップデータは含まない。あるいは、切り替え後のビューに対応する収集装置がある場合には、深さマップを用いて仮想視点を合成することなく、収集装置に対応するテクスチャマップを用いる。
【0045】
ステップS2000:少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する。
【0046】
メディアシステムにおけるフリービュービデオデータのカプセル化記憶、伝送、及び処理をサポートするために、フリービュービデオデータの合理的なフォーマット構造をメディアファイルに定義する必要がある。
【0047】
なお、本願の実施例では、1つの実施形態は、国際標準化機構の基本メディアファイルフォーマット(ISOBMFF:International Organization for Standardization Base Media File Format)に基づいて、フリービュービデオデータをファイルに記憶することである。なお、制限されたスキーム、すなわち仮想視点を合成する必要がある場合の適用シーンでは、情報ボックス、トラック参照ボックス、トラックグループボックスなどのISO基本メディアファイルフォーマットは、ISO/IEC JTC1/SC29/WG11ビデオ像専門家グループ(MPEG:Moving Picture Experts Group,)が策定したMPEG-4 Part 12 ISO Base Media File Formatを参照することができる。
【0048】
ISO基本メディアファイルフォーマットに基づいて、すべてのデータはボックス(Box)にカプセル化されており、ISO基本メディアファイルフォーマットは、いくつかのボックスで構成され、それぞれのボックスは、タイプと長さを持ち、1つのデータオブジェクトと見なすことができ、他のボックスを収容することができるボックスは、コンテナボックスと呼ばれる。MP4ファイルを例にとると、MP4ファイルは「ftyp」型のボックスを1つ持っており、ftypボックスはファイルフォーマットの識別子であり、ファイルに関するいくつかの情報を含んでいる。MP4ファイルには、「MOOV」型のボックス(Movie Box)も1つあり、これはコンテナボックスであり、MOOVボックスのサブボックスには、メディアのコンテンツを記述するための情報であるメディアのメタデータ情報が含まれている。MP4ファイルのメディアデータは「mdat」型のボックス(Media Data Box)に含まれており、mdatボックスもコンテナボックスであり、複数あってもよい。メディアデータがすべて他のファイルを参照している場合、mdatボックスがないこともある。メディアデータの構造はメタデータによって記述され、「meta」型のボックス(Meta box)を使用して、いくつかの一般的又は追加的な非タイミングメタデータを記述することができ、metaボックスもコンテナボックスである。
【0049】
タイミングメタデータトラックは、特定のサンプルに関連付けられたタイミングメタデータを確立するISOBMFFのメカニズムである。タイミングメタデータは、メディアデータとの結合が少なく、一般に「記述的」である。
【0050】
一般的な適用シーンでは、フリービュービデオデータにはテクスチャマップデータと深さマップデータが含まれており、処理中に自由に切り替えられるビューに基づいて仮想視点の合成が行われることが多いため、フリービュービデオメディアトラックは制限されたビデオとしてメディアファイルに表現されるべきである。本願の実施例では、ISO/IEC 14496-12標準規格で定義されたRestrictedSchemeInfoBoxのSchemeTypeBoxを使用してフリービュービデオメディアトラックが記述され、SchemeTypeBoxのscheme_typeは「as3f」に設定されている。
【0051】
フリービュービデオトラックは、VisualSampleEntryを使用して、ISO/IEC 19946-12で定義されている。フリービュービデオメディアトラックがテクスチャマップのみを含む場合、テクスチャマップメディアトラックである。深さマップメディアトラックは、MediaBoxにおけるHandlerBoxの処理タイプ(handler type)を用いて「auxv」タイプであることは、深さマップ情報が深さマップトラックに含まれていることを意味する。
【0052】
なお、フリービュービデオがテクスチャマップデータのみを含む場合、仮想視点合成の処理過程は存在せず、フリービュービデオメディアトラックは制限されたビデオとしてメディアファイルに表現されない、すなわち、上記SchemeTypeBoxを用いてフリービュービデオメディアトラックを記述することはしない。
【0053】
一実施例では、収集装置によって収集されたテクスチャマップ及び深さマップは、1つのメディアトラックにカプセル化され、すなわち、1つのメディアトラックには、テクスチャマップ及び深さマップが含まれている。
【0054】
一実施例では、収集装置によって収集されたテクスチャマップは、1つのメディアトラックにカプセル化され、すなわち、1つのメディアトラックには、テクスチャマップが含まれている。
【0055】
一実施例では、収集装置によって収集された深さマップは、1つのメディアトラックにカプセル化され、すなわち、1つのメディアトラックには、深さマップが含まれている。
【0056】
上記の実施例では、1つのメディアトラックを使用してビデオデータをカプセル化する方式は、総称してシングルトラックカプセル化と呼ばれてもよい。シングルトラックカプセル化が適するフリービュービデオデータは、通常、収集装置の数が多くなく、単一フレームのテクスチャマップの画素数が大きくない場合に適用され、この場合、端末が、対応する収集装置のテクスチャマップ及び/又は深さマップの取得を要求すると、サーバは、メディアファイル内のすべてのカメラのテクスチャマップ及び/又は深さマップを端末に伝送し、端末は、すべての収集装置のテクスチャマップ及び/又は深さマップを事前にダウンロードすることができる。端末は、カプセル化を解除し、復号するときに、ビューが自由に切り替えられた後のビューに関する収集装置、すなわち、仮想視点合成が可能な収集装置のテクスチャマップ及び/又は深さマップを選択し、このようにして、必要な収集装置に対応するテクスチャマップおよび/または深さマップを端末上でローカルに直接検索でき、すべて又は必要な関連収集装置に対応するテクスチャマップおよび深さマップを復号できる。
【0057】
一実施例では、収集装置によって収集されたテクスチャマップ及び深さマップは、複数のメディアトラックにカプセル化され、すなわち、1つ又は複数のメディアトラックには、テクスチャマップが含まれ、他の1つ又は複数のメディアトラックには、深さマップが含まれる。
【0058】
一実施例では、収集装置によって収集されたテクスチャマップは、複数のメディアトラックにカプセル化され、すなわち、複数のメディアトラックには、テクスチャマップが含まれる。
【0059】
一実施例では、収集装置によって収集された深さマップは、複数のメディアトラックにカプセル化され、すなわち、複数のメディアトラックには、深さマップが含まれる。
【0060】
上記の実施例では、複数のメディアトラックを使用してビデオデータをカプセル化する方式は、総称してマルチトラックカプセル化と呼ばれてもよい。シングルトラックカプセル化とは異なり、マルチトラックカプセル化は、通常、収集装置の数が多く、単一フレームのテクスチャマップの画素数が大きく、データ量が多くなる場合に適用され、収集装置によって収集されたテクスチャマップ及び深さマップをそれぞれ異なるメディアトラックにカプセル化することにより、異なる符号化方式、アクセス要求、伝送能力に応じて、各メディアトラックに1つ又は複数の収集装置のテクスチャマップデータ及び深さマップデータをカプセル化する。テクスチャマップデータをカプセル化するメディアトラックはテクスチャマップメディアトラックであり、深さマップデータをカプセル化するメディアトラックは深さマップメディアトラックである。
【0061】
なお、テクスチャマップ及び/又は深さマップを1つ又は複数のメディアトラックにカプセル化する実行主体は、カプセル化能力を有する任意の処理装置であってもよい。
【0062】
ステップS3000:ターゲットビュー情報に基づいて、フリービュービデオデータを処理する。
【0063】
ユーザがビュー切り替えを行った後、端末は、ユーザが希望するフリービューやディレクタが希望する再生ビューを反映した、通常は視聴位置や視聴方向などの情報を含むターゲットビュー情報を取得することができ、このターゲットビュー情報に基づいて、仮想視点の合成の要否や合成に必要な元の収集装置のビデオデータを判断することができる。
【0064】
一実施例では、ターゲットビュー情報は、収集装置の識別子、収集装置のパラメータ情報、ターゲットビューの位置情報、ターゲットビューの回転情報、ターゲットビューの識別子などを含む。
【0065】
一実施例では、端末はデータ処理能力が高いので、端末自身がターゲットビュー情報に基づいてフリービュービデオデータを処理し、処理されたフリービュービデオデータを表示する。
【0066】
図5は、本願の一実施例によるデータ処理方法のフローチャートである。
図5に示すように、端末のデータ処理プロセスを具体的に説明すると、ステップS1100、ステップS3110、及びステップS3120を含んでもよいが、これらに限定されない。
【0067】
ステップS1100:端末は、メディアファイルの取得をサーバに要求する。
【0068】
ステップS3110:端末は、取得したメディアファイルを復号/デカプセル化し、メディアファイル内のフリービュービデオデータ、対応するメタデータ情報、及びターゲットビュー情報に基づいて、仮想視点のテクスチャマップを合成する。
【0069】
ステップS3120:端末は、合成した仮想視点テクスチャマップを表示する。
【0070】
一実施例では、端末は強いデータ処理能力を有していないので、サーバは、仮想視点のテクスチャマップを合成するなど、ターゲットビュー情報に基づいてフリービュービデオデータを処理し、処理したビデオデータを表示のために端末に送信してもよい。
【0071】
図6は、本願の一実施例によるデータ処理方法のフローチャートである。
図5に示すように、端末及びサーバのデータ処理プロセスを具体的に説明すると、ステップS4000、ステップS3210及びステップS3220を含んでもよいが、これらに限定されない。
【0072】
ステップS4000:端末は、ターゲットビュー情報をサーバに送信する。
【0073】
ステップS3110:サーバ側は、ターゲットビュー情報に基づいて記憶されているメディアファイルを取得し、フリービュービデオデータ及び対応するメタデータ情報を抽出し、仮想視点のテクスチャマップを合成する。
【0074】
ステップS3120:端末は、サーバで処理された自由視点ビデオデータを受信し、合成された仮想視点のテクスチャマップを表示する。
【0075】
なお、
図5と
図6に対応する実施例では、端末が仮想視点テクスチャマップの合成を行うか、サーバが仮想視点テクスチャマップの合成を行うかにかかわらず、本願によるデータ処理方法が使用され、処理されたテクスチャマップ及び/又は深さマップが少なくとも1つのメディアトラックにカプセル化される。
【0076】
図7は、シングルトラック(single track)カプセル化フリービュービデオデータのファイルの構造図である。
図7に示すように、ISO基本メディアファイルフォーマットに基づくメディアファイルは、1つのメディアトラックを有し、このトラックには、MOOVボックス及びmadtボックスが含まれ、MOOVボックスには、FreeViewExtInfoBoxサブボックス及びTrackBoxサブボックスが含まれ、メディアのメタデータ情報がカプセル化され、madtボックスには、サンプル(Sample)の形でフリービュービデオデータがカプセル化されている。
【0077】
別の実施例では、MOOVボックスには、TrackBoxサブボックス、TrackBoxサブボックスに含まれるFreeViewExtInfoBoxサブボックスが含まれる。
【0078】
シングルトラックカプセル化フリービュービデオデータは、複数の元の収集装置によって収集されたテクスチャマップ及び深さマップデータを含み、これらのテクスチャマップ及び深さマップデータは、すべて1つのメディアトラックに記憶され、すなわち、メディアトラック内の各フレーム画像は、ある時点におけるすべての元の収集装置のテクスチャマップ(Texture)及び/又は深さマップ(Depth)を含み、各元の収集装置に対応するテクスチャマップ及び深さマップは個別にコーデックされ、すなわち、収集装置間のテクスチャマップ及び深さマップデータのコーデックに依存関係がない。端末は、シングルトラックカプセル化フリービュービデオを取得する際に、全ての元の収集装置のテクスチャマップ及び深さマップデータが送信される。
【0079】
端末は、フリービュービデオデータを有するメディアファイルを取得した後、各フレーム画像において、仮想視点を合成するために必要なビュー近傍のいくつかの元の収集装置のテクスチャマップ及び深さマップを選択して復号する。シングルトラックカプセル化メディアトラック内の各サンプルは、ある時点にすべての元の収集装置によって収集されたテクスチャマップ及び/又は深さマップを含み、サンプルを複数のサブサンプル(SubSample)に分割することによって、各サブサンプルが、1つの収集装置に対応するテクスチャマップ又は/及び深さマップを含むようにする。より具体的には、サブサンプルの情報は、SampleTableBox又はTrackFragmentBoxのSubSampleInformationBoxボックスによって記述され、サブサンプルの使用は、サブサンプルの情報ボックス内のflagsフィールド(flagsフィールドによれば、サブサンプルに記憶されているデータタイプ、すなわちテクスチャマップ及び/又は深さマップの3つを識別することができる)に従って行われる必要があり、特に、フリービュービデオデータに対応する各サンプルの特定の構成構造はcodec_specific_parametersによって記述され、以下は2つの具体例を示す。
【0080】
例1:
flagsは、サブサンプルにカプセル化されている情報のタイプを示し、具体的なタイプは次のとおりである。
flags値は0であり、元の収集装置に対応するテクスチャマップ及び深さマップのサブサンプルに基づいており、1つのサブサンプルには、1つの元の収集装置に対応するテクスチャマップ又は深さマップが含まれている。
flags値は1であり、元の収集装置のサブサンプルに基づいており、1つのサブサンプルには、1つの元の収集装置に対応するテクスチャマップ及び深さマップが含まれている。
if (flags==0){
unsigned int(8) camera_id;
unsigned int(1) payload_type;
unsigned int(1) All_data;// 任意選択で
bit(21) reserved = 0;
}
else if (flags==1){
unsigned int(8) camera_id;
bit(21) reserved = 0;
}
【0081】
例2:
flagsは、サブサンプルにカプセル化されている情報のタイプを示し、具体的なタイプは次のとおりである。
flags値は0であり、データタイプ(元のマップ、深さマップ)のサブサンプルに基づいており、1つのサブサンプルには、1つの元の収集装置に対応するテクスチャマップ又は深さマップが含まれている。
flags値は1であり、元の収集装置のサブサンプルに基づいており、1つのサブサンプルは、1つの元の収集装置に対応するテクスチャマップ及び深さマップが含まれている。
if (flags==0){
unsigned int(16) camera_id;
bit(16) reserved = 0;
}
else if (flags==1){
unsigned int(8) payload_type;
bit(24) reserved = 0;
}
ここで、camera_idは、現在のサブサンプルにおけるテクスチャマップ又は深さマップに対応する収集装置(カメラ)識別子を示し、
payload_typeは、サブサンプルに含まれるデータタイプを示し、値が0の場合、テクスチャマップを含み、値が1の場合、深さマップを含み、値が2の場合、SEI情報などのパラメータ情報を含む。
All_dataは、サブサンプルがすべての元の収集装置に対応するテクスチャマップ又は深さマップを含むことを示す。
【0082】
なお、仮想視点の合成プロセスは、好ましくは選択された元の収集装置の深さマップを処理することであり、カプセル化の構造及び復号プロセスをさらに単純化するために、メディアトラック内の各サンプルは、複数の元の収集装置のテクスチャマップを含むテクスチャマップサブサンプルと、複数の元の収集装置の深さマップ、さらにすべての元の収集装置の深さマップを含む深さマップサブサンプルとを含む。具体的なサブサンプル構造は、本実施例で定義されたcodec_specific_parametersを使用して記述してもよい。
【0083】
なお、例1のように定義する場合、サブサンプル構造情報は1つのSubSampleInformationBoxを使用して記述され、flagsが0の場合、camera_idは0に設定され、当該サブサンプルがすべての元の収集装置のテクスチャマップ又は深さマップを含むことを意味する。例2のように定義する場合、サブサンプル構造情報は、2つのSubSampleInformationBoxを使用して記述されてもよく、そのうちの1つのSubSampleInformationBox内のflags値は0であり、camera_idは0に設定されており、すべての元の収集装置の深さマップ又はテクスチャマップが1つのサブサンプル内にあることを示しており、別のSubSampleInformationBoxのflags値は1であり、flags値が1の場合、サブサンプルがテクスチャマップ又は深さマップを含むことを示す。
【0084】
SubSampleInformationBoxは、サンプル中の各サブサンプルのサイズ、対応する元の収集装置、画像データのタイプ(テクスチャマップ又は深さマップ)に対して、仮想視点を合成するために必要な元のカメラのテクスチャマップ及び深さマップを選択的に部分復号することができ、それによって、データ処理効率を向上させ、フリービュービデオの適用シーンを拡張することができる。
【0085】
一実施例では、ユーザのビューは、自由な切り替え過程において、元の収集装置に対応する現実視点の間で切り替えられるだけであり、その場合、仮想視点を合成するプロセスは存在しない。この場合、通常、シングルトラックカプセル化フリービュービデオデータは、元の収集装置のテクスチャマップデータであり、サブサンプルには深さマップは存在しない、すなわち、payload_typeの値は常に0である。
【0086】
いくつかの実施例では、フリービュービデオデータの量が非常に大きい、すなわち、元の収集装置の配置数が多い、収集されるテクスチャマップの画素数が大きい、又は元の収集装置間にグループ化関係が存在する場合には、フリービュービデオデータのカプセル化は、拡張シングルトラックカプセル化方式によって行われてもよい。
【0087】
図8は、シングルトラックカプセル化モード拡張に基づくフリービュービデオのメディアファイルの構造図である。
図8に示すように、ISO基本メディアファイルフォーマットに基づくメディアファイルは、複数のメディアトラックを有し、トラックには、MOOVボックス及びmadtボックスが含まれ、MOOVボックスには、FreeViewExtInfoBoxサブボックス及びSubSampleInfoBoxサブボックスが収容され、メディアのメタデータ情報がカプセル化され、madtボックスには、サンプル(Sample)の形でフリービュービデオデータがカプセル化されている。
【0088】
拡張されたシングルトラックカプセル化メディアファイル構造では、テクスチャマップ及び深さマップは1対1で対応し、トラック内の各サンプルは、ある時点における複数の元の収集装置に対応するテクスチャマップ及び深さマップを含み、サブサンプルの情報は、SampleTableBox又はTrackFragmentBox内のSubSampleInformationBoxのボックスによって記述され、上記の実施例で定義されたcodec_specific_parameters構文要素を使用して記述され、各サブサンプルは、1つ又は複数の元の収集装置のテクスチャマップ及び/又は深さマップを含む。
【0089】
一実施例では、メディアトラックにカプセル化されたテクスチャマップ及び深さマップがAVS2、AVC、HEVCなどのビデオ符号化方式を使用する場合、フリービュービデオの符号化情報の拡張又は補完が存在する場合、そのような拡張/補完の符号化情報は、メディアトラックのサンプルに直接記憶されてもよく、特定の拡張/補完の符号化情報又は他のパラメータ情報は、(ISO/IEC 14496-12において)MediaInformationBox又はVisualSampleEntryに含まれるフリービュー拡張のボックスを定義することによって、記述してもよく、以下は2つの具体例を示す。
【0090】
例1:
シングルトラックカプセル化フリービュービデオのメディアトラックは、フリービュー情報ボックスFreeViewExtInfoBoxとペイロード情報ボックスPayloadInfoBoxの2つのボックスを含むサンプルエントリVisualSampleEntryを使用する。
フリービュー情報ボックスFreeViewExtInfoBoxは、メディアトラック中のフリービュービデオデータに対応する元の収集装置情報を記述し、ビューと収集装置を対応させることで、カメラ情報をビューの情報と見なすことができる。具体的な構文セマンティクスは次のとおりである。
Box Type: 'fvei'
Container: MediaInformationBox or VisualSampleEntry
Mandatory: No
Quantity: Zero or one.
aligned(8) class FreeViewInfoBox extends FullBox(' fvin', 0, 0){
unsigned int(1) texture_in_track;
unsigned int(1) depth_in_track;
unsigned int(16) num_cameras;
for (i=0; i<num_cameras; i++) {
unsigned int(16) camera_id;
unsigned int(1) int_camera_flag;
unsigned int(1) ext_camera_flag;
if(int_camera _flag)
IntCameraInfoStruct();
if(Ext_camera _flag)
ExtCameraInfoStruct();}}
ペイロード情報ボックスPayloadInfoBoxは、メディアトラック内のフリービュービデオの元のカメラ/ビューに対応するテクスチャマップ情報TextureInfostruct()と深さマップ情報DepthInfostruct()を記述する。具体的な構文セマンティクスは次のとおりである。
aligned(8) class PayloadInfoBox extends FullBox(' plin', 0, 0){
unsigned int(1) texture_info_flag;
unsigned int(1) depth_info_flag;
unsigned int(16) num_cameras;
for (i=0; i<num_cameras; i++) {
unsigned int(16) camera_id;
if(texture_info_flag)
TextureInfostruct();
if(depth_info_flag)
DepthInfostruct();}}aligned(8) TextureInfostruct(){
unsigned int(8) texture_padding_size;
unsigned int(16) texture_top_left_x;
unsigned int(16) texture_top_left_y;
unsigned int(16) texture_bottom_right_x;
unsigned int(16) texture_bottom_right_y;}
aligned(8) DepthInfostruct(){
unsigned int(8) depth_padding_size;
unsigned int(16) depth_top_left_x;
unsigned int(16) depth_top_left_y;
unsigned int(16) depth_bottom_right_x;
unsigned int(16) depth_bottom_right_y;
unsigned int(8) depth_range_near;
unsigned int(8) depth_range_far;
unsigned int(8) depth_scale_type;}
【0091】
例2:
シングルトラックカプセル化フリービュービデオのメディアトラックは、フリービュー情報拡張ボックスFreeViewExtInfoBoxを含むサンプルエントリVisualSampleEntryを使用する。フリービュー情報拡張ボックスは、メディアトラック内のフリービュービデオデータに対応する元の収集装置情報と、元の収集装置に対応するテクスチャマップ及び深さマップ情報とを記述する。
aligned(8) class FreeViewExtInfoBox extends FullBox(' fvei', 0, 0){
unsigned int(1) texture_in_track;
unsigned int(1) depth_in_track;
unsigned int(16) num_cameras;
for (i=0; i<num_cameras; i++) {
unsigned int(16) camera_id;
unsigned int(1) int_camera_flag;
unsigned int(1) ext_camera_flag;
unsigned int(1) decoding_info_flag;
if(int_camera _flag)
IntCameraInfoStruct();
if(Ext_camera _flag)
ExtCameraInfoStruct();
unsigned int(1) texture_info_flag;
unsigned int(1) depth_info_flag;
if(texture_info_flag){
unsigned int(8) texture_padding_size;
unsigned int(16) texture_top_left_x[i];
unsigned int(16) texture_top_left_y[i];
unsigned int(16) texture_bottom_right_x[i];
unsigned int(16) texture_bottom_right_y[i];
}
if(depth_info_flag){
unsigned int(8) depth_padding_size;
unsigned int(16) depth_top_left_x[i];
unsigned int(16) depth_top_left_y[i];
unsigned int(16) depth_bottom_right_x[i];
unsigned int(16) depth_bottom_right_y[i];
unsigned int(8) depth_range_near;
unsigned int(8) depth_range_far;
unsigned int(8) depth_scale_type;}}}
ここで、texture_in_trackは、メディアトラックにテクスチャマップが含まれているか否かを示し、値が1の場合、テクスチャマップが含まれ、値が0の場合、テクスチャマップが含まれない。
depth_in_trackは、メディアトラックに深さマップが含まれているか否かを示し、値が1の場合、深さマップが含まれ、値が0の場合、深さマップが含まれない。
num_camerasは、深さマップ又はテクスチャマップに対応するメディアトラック内の元のカメラの数を示す。
camera_idは、元のカメラの識別子を示す。
int_camera_flagは、元のカメラの内部パラメータが表示されるか否かを示し、値が1の場合、内部パラメータが表示され、値が0の場合、内部パラメータが表示されない。内部パラメータの構文は、AVS3-P1のIntCameraInfoStruct()構文セマンティクスを参照する。
ext_camera_flagは、元のカメラの外部パラメータが表示されるか否かを示し、値が1の場合、外部パラメータが表示され、値が0の場合、外部パラメータが表示されない。外部パラメータの構文は、AVS3-P1のExtCameraInfoStruct()構文セマンティクスを参照する。
元のカメラ情報は、元のカメラの内部パラメータ、外部パラメータによって記述することができる。同一の元のカメラのパラメータ情報は、1つのボックスにのみ記述されている。
texture_info_flagは、テクスチャマップに関する記述メタデータ情報が含まれているか否かを示し、値が1の場合、メタデータ情報が含まれ、値が0の場合、メタデータ情報が含まれない。
depth_info_flagは、深さマップに関する記述メタデータ情報が含まれているか否かを示し、値が1の場合、メタデータ情報が含まれ、値が0の場合、メタデータ情報が含まれない。
texture_padding_sizeは、テクスチャマップの拡張エッジの画素数を示す。
texture_top_left_xは、ビデオフレームプレーン内の対応する元のカメラに対応するテクスチャマップの左上隅のx座標を表す。
texture_top_left_yは、ビデオフレームプレーン内の対応する元のカメラに対応するテクスチャマップの左上隅のy座標を示す。
texture_bottom_right_xは、ビデオフレームプレーン内の対応する元のカメラに対応するテクスチャマップの右下隅のx座標を示す。
texture_bottom_right_yは、ビデオフレームプレーン内の対応する元のカメラに対応するテクスチャマップの右下隅のy座標を示す。
depth_padding_sizeは、深さマップを拡張する画素数を示す。
depth_top_left_xは、ビデオフレームプレーン内の対応する元のカメラに対応する深さマップの左上隅のx座標を示す。
depth_top_left_yは、ビデオフレームプレーン内の対応する元のカメラに対応する深さマップの左上隅のy座標を示す。
depth_bottom_right_xは、ビデオフレームプレーン内の対応する元のカメラに対応する深さマップの右下隅のx座標を示す。
depth_bottom_right_yは、ビデオフレームプレーン内の対応する元のカメラに対応する深さマップの右下隅のy座標を示す。
depth_range_nearは、深さマップによって定量化された光学中心からの最小深さ距離を示す。
depth_range_farは、深さマップによって定量化された光学中心からの最大深さ距離を示す。
depth_scale_typeは、深さマップを表すダウンサンプリングのタイプを示す。
なお、このサンプルエントリVisualSampleEntryには、フリービュー情報ボックスFreeViewExtInfoBoxとペイロード情報ボックスPayloadInfoBoxが含まれる。
【0092】
一実施例では、フリービュー情報ボックスFreeViewExtInfoBoxには、トラック情報が含まれ、トラック情報は、テクスチャマップが存在するトラックの識別子及び/又は深さマップが存在するトラックの識別子を含んでもよい。
【0093】
一実施例では、フリービュー情報ボックスFreeViewExtInfoBoxには、収集装置の装置情報が含まれ、装置情報は、収集装置の数、収集装置の識別子、収集装置のパラメータ情報を含んでもよい。収集装置の設置方法及び属性に関する情報であれば、装置情報としてフリービュー情報ボックスFreeViewExtInfoBoxにカプセル化されてもよい。
【0094】
一実施例では、ペイロード情報ボックスPayloadInfoBoxには、テクスチャマップの属性情報及び/又は深さマップの属性情報が含まれ、テクスチャマップの属性情報はテクスチャマップ情報識別子、テクスチャマップ画像情報などを含んでもよく、深さマップの属性情報は深さマップ情報識別子、深さマップ画像情報などを含んでもよい。
図9は、シングルトラックカプセル化に基づくフリービュービデオデータの処理のフローチャートであり、少なくともステップS1300及びステップS3300を含む。
【0095】
ステップS1300:端末は、すべての元の収集装置によって収集されたテクスチャマップ及び深さマップを取得する。
【0096】
ステップS3300:端末は、ターゲットビュー情報に基づいて、選択されたいくつかの元の収集装置のテクスチャマップ及び深さマップを部分的に復号し、仮想視点テクスチャマップを合成する。
【0097】
図10は、マルチトラック(multi track)カプセル化フリービュービデオデータのファイルの構造図である。
図10に示すように、ISO基本メディアファイルフォーマットに基づくメディアファイルは、複数のメディアトラックを有する。各トラックは、1つの元の収集装置によって収集されたテクスチャマップ(すなわち、テクスチャマップメディアトラック)又は深さマップ(すなわち、深さマップメディアトラック)をカプセル化することができる。マルチトラックカプセル化構造により、任意の1つの収集されたテクスチャマップ又は深さマップを柔軟に取得することができる。
【0098】
深さマップは、符号化効率が高く、復号複雑度が低いグレースケールマップを用いて表現してもよく、複数の元の収集装置の複数の深さマップを1つ又は複数の深さマップメディアトラックにカプセル化してもよい。また、複数の元のカメラのテクスチャマップも、1つ又は複数のテクスチャマップメディアトラックにカプセル化してもよい。
【0099】
一実施形態では、テクスチャマップメディアトラック及び深さマップメディアトラックに対応する元の収集装置の数は、元の収集装置のテクスチャマップ又は深さマップの画像サイズ、符号化方法などの違いに応じて、同じであっても異なっていてもよい。具体的には、テクスチャマップメディアトラック及び深さマップメディアトラックに対応する元の収集装置の数が異なる場合、m個の元の収集装置のテクスチャマップはi個のテクスチャマップメディアトラックにカプセル化され、対応する深さマップはj個の深さマップメディアトラックにカプセル化され、ここで、iはjになどしくなく、iはm以下であり、jはmより小さい。別の実施形態では、複数の元の収集装置の深さマップを1つのメディアトラックに記憶し、対応するテクスチャマップを複数のメディアトラックに記憶してもよい。
【0100】
一実施形態では、元の収集装置は、カメラ配置の位置属性、カメラの内部パラメータ属性、カメラに対応するテクスチャマップ又は深さマップの符号化依存関係などのカメラ属性に応じてグループ化され、同じグループの元の収集装置のテクスチャマップ又は深さマップは、1つのメディアトラックにカプセル化される。
図11は、マルチトラックカプセル化モード拡張に基づくフリービュービデオのメディアファイルの構造図である。
図11に示すように、同種のマルチグラフに基づくマルチトラックカプセル化フリービュービデオデータのファイル構造の1つである。
【0101】
マルチトラックカプセル化には、MOOVボックス及びmadtボックスが含まれ、MOOVボックスには、FreeViewExtInfoBoxサブボックスが収容され、メディアのメタデータ情報がカプセル化され、madtボックスには、サンプル(Sample)の形でフリービュービデオデータがカプセル化されている。
【0102】
マルチトラックカプセル化フリービュービデオデータは、複数の元の収集装置によって収集されたテクスチャマップ及び深さマップデータを含み、テクスチャマップ及び深さマップデータは、それぞれ異なるメディアトラックに記憶される。さらに、テクスチャマップはテクスチャマップメディアトラックに記憶され、深さマップは深さマップメディアトラックに記憶される。すなわち、テクスチャマップメディアトラック内の各フレーム画像は、ある時点におけるすべての元の収集装置のテクスチャマップ(Texture)を含み、深さマップメディアトラック内の各フレーム画像は、ある時点におけるすべての元の収集装置の深さマップ(Depth)を含み、各元の収集装置に対応するテクスチャマップ及び深さマップは関連付けられてコーデックされ、すなわち、1つの収集装置のテクスチャマップと深さマップデータのコーデックに依存/マッピング関係が存在する。端末は、マルチトラックカプセル化フリービュービデオを取得する際に、ユーザの現在のビューであるターゲットビュー情報に基づいて、対応する収集装置によって収集されたテクスチャマップ及び深さマップデータを伝送する。
【0103】
端末は、ターゲットビュー情報に対応するフリービュービデオデータのメディアファイルを取得した後、各フレーム画像において、仮想視点を合成するために必要なビュー近傍のいくつかの元の収集装置のテクスチャマップ及び深さマップを選択して復号する。マルチトラックカプセル化されたテクスチャマップメディアトラック内の各サンプルは、ある時点において元の収集装置によって収集されたテクスチャマップを含み、マルチトラックカプセル化された深さマップメディアトラック内の各サンプルは、ある時点において元の収集装置によって収集された深さマップを含む。さらに、サンプルを複数のサブサンプル(SubSample)に分割することによって、各サブサンプルが、1つの収集装置に対応するテクスチャマップ又は深さマップを含むようにしてもよい。より具体的には、サブサンプルの情報は、SampleTableBox又はTrackFragmentBoxのSubSampleInformationBoxボックスによって記述され、サブサンプルの使用は、サブサンプル情報ボックス内のflagsフィールド(flagsフィールドは、サブサンプルに記憶されているデータタイプを識別することができる)に従って行われる必要があり、flagsフィールドの値が0の場合、テクスチャマップ及び深さマップはメディアトラック内にあり、特に、フリービュービデオデータに対応する各サンプルの特定の構成構造は、codec_specific_parametersによって記述される。
【0104】
テクスチャマップ及び深さマップはそれぞれ異なるメディアトラックにカプセル化され、すなわち、テクスチャマップはテクスチャマップメディアトラックにカプセル化され、深さマップは深さマップメディアトラックにカプセル化される。仮想視点を合成するプロセスは次の通りである。まず、ビューが切り替えられた後にビューの近傍のいくつかの元の収集を特定し、元々収集された深さマップを処理し、更に元々収集されたテクスチャマップ及び処理された後の深さマップに基づいて仮想視点に対応するテクスチャマップを合成する。
同じ元の収集装置のテクスチャマップ及び深さマップをカプセル化するテクスチャマップメディアトラックと深さマップメディアトラックとの間に、関連付け/参照/マッピング関係が設定されている。以下に3つの具体的な例を示す。
例1:
【0105】
ISO/IEC 14494-12で定義されているTrackReferenceBox(参照トラックボックス)は、メディアトラック間の参照関係に使用でき、定義されている参照タイプreference_typeが「auxl」又は「vdep」の場合に、関連付け/参照/マッピングされたメディアトラックの補助メディア(深さマップなど)を記述する。本実施例では、ISO/IEC 14494-12で定義されている方法を直接使用して、TrackReferenceBoxを深さマップメディアトラックに含み、同じ元の収集装置に対応するテクスチャマップメディアトラックに関連付け/参照/マッピングし、ここでreference_typeは「auxl」又は「vdep」である。通常、「auxl」は、復号依存性のある参照又は関連付け関係に使用される。
例2:
【0106】
ISO/IEC 14494-12で定義されているTrackReferenceBoxは、トラック間の参照関係のために使用でき、新しい参照タイプreference_typeを定義することによって、テクスチャマップメディアトラックの深さマップメディアトラックへの関連付け/参照/マッピングを記述する。本実施例では、reference_typeは「tdrf」に設定され、この参照タイプを含むTrackReferenceBoxのテクスチャマップメディアトラックは、TrackReferenceBoxで示される深さマップメディアトラックを参照または関連付けられる。
例3:
【0107】
トラックグループの方式でテクスチャマップメディアトラック及び深さマップメディアトラックをグループ化することは、深さマップメディアトラックに対応する元の収集装置とテクスチャマップメディアトラックに対応する収集装置とが完全に対応していない場合に特に適している。例えば、複数の元の収集装置の深さマップは1つのメディアトラックに記憶され、対応するテクスチャマップは複数のメディアトラックに記憶される。
トラックグループは、同じ元の収集装置に対応するテクスチャマップメディアトラックと深さマップメディアトラックを1つのグループとすることによってグループ化される。同じ元の収集装置のテクスチャマップメディアトラック及び深さマップメディアトラックに対応するトラックグループはAttrAndDepGroupBoxによって示され、このボックスは、ISO/IEC 14494-12で定義されているTrackGroupTypeBox(トラックタイプボックス)を拡張することにより、track_group_typeが「tadg」に設定されており、具体的な構文構造は次のとおりである。
aligned(8) class AttrAndDepGroupBox extends TrackGroupTypeBox(' tadg ') {
unsigned int(8) num_camera;
unsigned int(1) unequal_flag;
for(int i=0; i< num_camera; i++)
unsigned int(8) camera_id;
}
ここで、num_cameraは、メディアトラックグループ内のテクスチャマップに対応する元の収集装置の数を示す。
unequal_flagは、メディアトラックグループにおいて、深さマップメディアトラックに対応する元の収集装置の数が、テクスチャマップメディアトラックに対応する元の収集装置の数と同じであるか否かを示し、1の場合、対応する元の収集装置の数が異なることを示し、通常、深さマップメディアトラックにおける対応する元の収集装置の数がテクスチャマップメディアトラックにおける対応する元の収集装置の数より多く、0の場合、対応する元の収集装置の数が同じであることを示す。
camera_idは、メディアトラックグループにおいて、テクスチャマップ及び深さマップに対応する同じ元の収集装置の識別子を示す。
【0108】
一実施形態では、unequal_flagが1の場合、1つの深さマップメディアトラックには、同じタイプのAttrAndDepGroupBoxが複数存在する可能性があるが、track_group_idが異なる。
一実施形態では、フリービュービデオがAVCのMVD方式で符号化される場合、ISO/IEC 14494-15で定義されているボックスタイプ「vwid」の視点識別子ボックス(ViewIdentifierBox)を使用して、各メディアトラックに含まれる元の収集装置に対応する視点を記述することができ、視点の識別子、ビューに対応する他の参照視点などの情報を含むことができ、このボックスは、メディアトラックにテクスチャマップ、深度マップ、またはその両方が含まれるかどうかを記述するために使用することもできる。
【0109】
一実施形態では、深さマップ及びテクスチャマップが異なるメディアトラックにある場合、深さマップメディアトラック及びテクスチャマップメディアトラックは、参照タイプreference_typeが「deps」であるTrackReferenceBox(このボックスは深さマップメディアトラックに含まれる。)ボックスによって、同じ元の収集装置に対応するテクスチャマップメディアトラックに関連付け/参照/マッピングされる。
【0110】
なお、このサンプルエントリVisualSampleEntryには、フリービュー情報ボックスAvsFreeViewInfoBox及びペイロード情報ボックスPayloadInfoBoxが含まれる。
【0111】
一実施例では、フリービュー情報ボックスAvsFreeViewInfoBoxには、トラック情報が含まれ、トラック情報は、テクスチャマップが存在するトラックの識別子又は深さマップが存在するトラックの識別子を含んでもよい。
【0112】
一実施例では、フリービュー情報ボックスAvsFreeViewInfoBoxには、収集装置の装置情報が含まれ、装置情報は、収集装置の数、収集装置の識別子、収集装置のパラメータ情報を含んでもよい。収集装置の設置方法及び属性に関する情報であれば、装置情報としてフリービュー情報ボックスAvsFreeViewInfoBoxにカプセル化されてもよい。
【0113】
一実施例では、ペイロード情報ボックスPayloadInfoBoxには、テクスチャマップの属性情報及び/又は深さマップの属性情報が含まれ、テクスチャマップの属性情報はテクスチャマップ情報識別子、テクスチャマップ画像情報などを含んでもよく、深さマップの属性情報は深さマップ情報識別子、深さマップ画像情報などを含んでもよい。
【0114】
なお、マルチトラックカプセル化は、少なくともテクスチャマップメディアトラック及び深さマップメディアトラックを有する。各テクスチャマップメディアトラック及び深さマップメディアトラックのサンプルエントリVisualSampleEntryには、それぞれフリービュー情報ボックスAvsFreeViewInfoBox及びペイロード情報ボックスPayloadInfoBoxが含まれる。
図12は、マルチトラックカプセル化に基づくフリービュービデオデータの処理のフローチャートであり、少なくともステップS1400及びステップS3400を含む。
【0115】
ステップS1400:端末は、ターゲットビュー情報に基づいて、ビュー近傍の元の収集装置によって収集されたテクスチャマップ及び深さマップを取得する。
【0116】
ステップS3400:端末は、必要ないくつかの元の収集装置のテクスチャマップ及び深さマップが存在する1つ又は複数のテクスチャマップメディアトラック及び深さマップメディアトラックを取得し、メディアトラック内の必要ないくつかの元の収集装置のテクスチャマップ及び深さマップデータを抽出し、仮想視点のテクスチャマップを合成する。
【0117】
シングルトラックカプセル化では、端末はすべての収集装置によって収集されたフリービュービデオデータを取得する必要があり、これに対し、マルチトラックカプセル化構造では、端末は、ターゲットビュー情報に基づいて、それぞれテクスチャマップメディアトラック及び深さマップメディアトラックでターゲットビュー情報に対応するテクスチャマップ及び/又は深さマップを選択的に取得し、それによって、データ伝送及び処理効率を向上させることができる。
【0118】
いくつかの適用シーンでは、ユーザはフリービュービデオを視聴する時に、自分の必要に応じて自主的にビューを切り替えることができ、ディレクタによる推薦などの方式によってビューを切り替え、すなわち、受動的にビューを切り替えることもでき、この場合、動的ビューのタイミングメタデータを定義することによって、動的に変化するビュー情報及びそれに対応する元の収集装置の情報を記述する必要があり、すなわち、ビューとビデオ再生時間とを関連付ける必要があるため、フリービュービデオを再生する過程で、ある時刻の推薦ビュー及びその近傍の元の収集装置の情報に基づいて、提示する必要がある対応するビューのコンテンツを合成する必要がある。タイミングメタデータは、ターゲットビューに対応する前記フリービュービデオデータが存在するメディアトラックと相互に関連付けられたタイミングメタデータトラックにカプセル化される。
【0119】
具体的には、動的ビューのタイミングメタデータトラックのサンプルエントリタイプは「dyfv」であり、構文は以下のように定義される。
DynamicFreeViewSampleEntry extends MetaDataSampleEntry ('dyfv'){
string freeview_description;
unsigned int(8) play_camera_id;
}
ここで、freeview_descriptionは、空白文字で終わる文字列であり、フリービューでのテキスト記述情報を提供する。
play_camera_idは、最初の再生時にビューが対応する元のカメラの識別子を示し、通常は仮想視点合成を必要としない。
動的ビューのタイミングメタデータトラック内の各サンプルは、フリービューサンプルフォーマットによって、特定のビューの動的状況を記述する。
aligned(8) FreeviewSample(){
unsigned int(1) dynamic_switch_flag;
if(dynamic_switch_flag)
unsigned int(1) virtual_view_flag;
if(virtual_view_flag){
unsigned int(8) original_camera_num;
for(int i=0; i< original_camera_num; i++){
unsigned int(8) original_camera_id[i];
unsigned int(1) int_camera _flag;
unsigned int(1) ext_camera _flag;
if(int_camera_flag)
IntCameraInfoStruct();
if(ext_camera_flag)
ExtCameraInfoStruct();
FreeViewStruct();
}
else
unsigned int(8) play_camera_id;}}
aligned(8) class FreeViewStruct(){
signed int(32) freeview_x;
signed int(32) freeview_y;
signed int(32) freeview_z;
unsigned int(1) rotation_flag;
bit(7) reserved = 0;
if(rotation_flag) {
signed int(32) freeview_yaw;
signed int(32) freeview_pitch;
signed int(32) freeview_roll;}}
ここで、dynamic_switch_flagは、サンプル中のビューが切り替わるか否かを示し、値が1の場合、ビューが切り替わることを示し、値が0の場合、ビューの切り替えは行われず、前のサンプルのビューが使用されることを示す。
virtual_camera_flagは、仮想視点を合成する必要があるか否かを示し、値が1の場合、合成する必要があることを示し、値が0の場合、合成は不要で、ビューを切り替えて元のカメラに直接対応することを示す。
original_camera_numは、仮想視点を合成する元のカメラの数を示す。
original_camera_idは、仮想視点を合成する元のカメラの識別子を示す。
play_camera_idは、仮想視点を合成することを必要とせずに直接再生される元のカメラの識別子を示す。
FreeViewStruct()は、フリービューのパラメータ構造を示す。
Freeview_x、Freeview_y、Freeview_zは、それぞれ、共通の基準座標系に対するフリービューのx、y、z軸の座標値を示す。
grotation_flagは、フリービューの回転を表現するか否かを示し、値が1の場合、表現し、値が0の場合、表現しない。
freeview_yaw、freeview_pitch、freeview_rollは、それぞれ共通の参照座標系に対するフリービューの回転角度を示す。
【0120】
元のカメラのパラメータ情報がMediaInformationBox又はSampleEntryに存在する場合、サンプルフォーマットで繰り返し記述する必要はなく、int_camera_flag、ext_camera_flagの値は0である。
【0121】
前記動的ビューメタデータトラックは、「cdsc」タイプのトラック参照ボックス(Track Reference Box)を参照することによって、元の収集装置の深さマップ及び/又はテクスチャマップを含む1つ又は複数のメディアトラックに関連付け又は参照することができる。
【0122】
上記の実施例におけるディレクタ推奨ビュー切り替え方式を採用することにより、推奨ビューとその近傍の元のカメラ情報に基づいて推奨ビューに対応するコンテンツを事前に合成することができ、それによって、端末などの装置に対するデータ処理の要求を低減し、ビデオ処理効率をさらに向上させ、ユーザの視聴体験を向上させ、フリービュービデオの適用シーンを拡大することができる。
【0123】
一部の適用シーンでは、元の収集装置の配置位置、元の収集装置の画像収集頻度、元の収集装置によって収集された画像の圧縮方式などの属性が異なるため、ユーザが自由にビューを切り替える過程において、メディア処理時にしばしば差異が存在し、例えば、同一領域にある元の収集装置によって収集されたテクスチャマップ及び深さマップは仮想視点を合成することができるが、2つの部屋など、非同一領域にある元の収集装置によって収集されたテクスチャマップ及び深さマップは、共同で仮想視点を合成することができない。したがって、本実施例では、元の収集装置のテクスチャマップメディアトラック及び深さマップメディアトラックを、元の収集装置の属性に応じてグループ化し、同じ属性(例えば、位置属性)の元の収集装置のテクスチャマップメディアトラック及び深さマップメディアトラックを1つのトラックグループとしてグループ化することを提案している。
図13は、元のカメラの属性に基づいてグループ化されたテクスチャマップメディアトラック及び深さマップメディアトラックのトラックグループの例を示す、メディアトラックグループ化の模式図である。
【0124】
図に示すように、トラック(Track)1~4は、テクスチャマップメディアトラックであり、トラック(Track)5~7は、深さマップメディアトラックであり、トラック3、4、7は予め設定されたトラックグループ化の条件に合致し、トラック1、2、5、6はトラックグループ化の予め設定された条件に合致するので、トラック3、4、7は1つのメディアトラックグループとされ、トラック1、2、5、6は1つのメディアトラックグループとされる。端末がフリービュービデオデータを要求すると、1つのメディアトラックグループのデータが統一的に伝送されるので、端末はターゲットビューに対応する画像データを的確に取得し、データグループを的確に処理することができる。
【0125】
一実施例では、元の収集装置の属性に基づくテクスチャマップメディアトラック及び深さマップメディアトラックのトラックグループは、CamAttrGroupBoxによって表され、このボックスは、ISO/IEC 14494-12で定義されているTrackGroupTypeBoxを拡張することによって、track_group_typeは「caag」に設定され、具体的な構文構造は次のとおりである。
aligned(8) class CamAttrGroupBox extends TrackGroupTypeBox(' caag ',0,0) {
string group_description;
unsigned int(8) num_camera;
for(int i=0; i< num_camera; i++)
unsigned int(8) camera_id;
}
ここで、group_descriptionは、空白文字で終わる文字列であり、元の収集装置の属性に基づいてグループ化されたテキスト記述情報を提供する。
num_cameraは、メディアトラックグループ内のテクスチャマップに対応する元の収集装置の数を示す。
camera_idは、トラックグループ内の対応する元の収集装置の識別子を示す。
一実施例では、元の収集装置の属性に基づくテクスチャマップメディアトラック及び深さマップメディアトラックのトラックグループは、ISO/IEC14494-12で定義されているEntityToGroupBoxを拡張することによって記述される。グループ化タイプgrouping_typeは「caeg」に設定され、構文構造は次のとおりである。
aligned(8) class CamAttrEntityGroupBox extends EntityToGroupBox(' caeg ',0,0) {
string group_description;
unsigned int(8) num_camera;
for(int i=0; i< num_camera; i++)
unsigned int(8) camera_id;
}
【0126】
一実施例では、元のカメラ属性などの要素に基づくグループ化は、深さマップメディアトラックのみのグループ化であってもよいし、テクスチャマップメディアトラックのみのグループ化であってもよいし、テクスチャマップ及び対応する深さマップメディアトラックの両方のグループ化であってもよい。
別の実施例では、深さマップメディアトラック又はテクスチャマップメディアトラックのみがグループ化された場合にも、深さマップメディアトラックとテクスチャマップメディアトラックとの間の関連付け関係によって、同様の効果が得られる。
【0127】
図14は、本願の一実施例によるデータ処理装置の構造模式図である。
図14に示すように、本願の実施例によるデータ処理装置は、端末に適用され、本願の実施例によるデータ処理方法を実行することができ、この端末は、方法の実行に対応する機能モジュール及び技術的効果を有する。この装置は、ソフトウェア、ハードウェア、又はソフトウェアとハードウェアの組み合わせとして実装されてもよく、取得モジュール700、カプセル化モジュール800、及び処理モジュール900を含む。
【0128】
取得モジュール700は、フリービュービデオデータを取得するように構成される。
【0129】
一実施形態では、取得モジュール700はまた、ターゲットビュー情報を取得するように構成される。
【0130】
カプセル化モジュール800は、テクスチャマップをメディアトラックにカプセル化するように構成される。
一実施形態では、カプセル化モジュール800は、収集装置によって収集されたテクスチャマップを1つのメディアトラックにカプセル化するように構成される。
一実施形態では、カプセル化モジュール800は、収集装置によって収集されたテクスチャマップを複数のメディアトラックにカプセル化するように構成される。
一実施形態では、カプセル化モジュール800は、収集装置によって収集された深さマップを1つのメディアトラックにカプセル化するように構成される。
一実施形態では、カプセル化モジュール800は、収集装置によって収集された深さマップを複数のメディアトラックにカプセル化するように構成される。
一実施形態では、カプセル化モジュール800は、収集装置によって収集されたテクスチャマップ及び深さマップを1つのメディアトラックにカプセル化するように構成される。
一実施形態では、カプセル化モジュール800は、収集装置によって収集されたテクスチャマップ及び深さマップを複数のメディアトラックにカプセル化するように構成される。
【0131】
処理モジュール900は、ターゲットビュー情報に基づいて、フリービュービデオデータを処理するように構成される。
【0132】
一実施形態では、処理モジュール900は、要求されたフリービュービデオデータを復号/デカプセル化し、ターゲットビュー情報に基づいて対応する自由ビデオビューデータを取得し、現実視点に対応するテクスチャマップ又は合成された仮想視点に対応するテクスチャマップを抽出するなどの処理を行うように構成される。さらに、要求されたフリービュービデオのメディアファイル又は処理されたメディアデータを復号/デカプセル化し、要求されたメディアファイル及びユーザがビューを切り替えた後の視聴の位置、視聴方向に基づいて、対応するフリービュービデオデータを抽出し、メディア処理を行う。
【0133】
図15は、本願の一実施例によるデータ処理装置の構造模式図である。
図15に示すように、データ処理装置は、処理モジュールによって処理されたフリービュービデオデータに応じて画像を表示するように構成された表示モジュール1000をさらに含む。すなわち、処理モジュール900による処理結果に応じて、現在のビューに対応する現実視点のテクスチャマップがユーザに表示され、又は現在のビューに対応する仮想視点のテクスチャマップがユーザに表示される。
【0134】
図16は、本願の一実施例によるデータ処理装置の構造模式図である。
図16に示すように、データ処理装置は、データ要求をサーバに送信するように構成された送信モジュール1100をさらに含む。
【0135】
一実施形態では、送信モジュール1100はまた、ターゲットビュー情報をサーバに送信するように構成される。
【0136】
なお、データ処理装置は、カプセル化モジュール800ではなく、記憶モジュール1200を備えていてもよい。図**は、本願の一実施例によるデータ処理装置の構造模式図である。図**に示すように、取得モジュール700と、処理モジュール900と、記憶モジュール1200と、を含む。取得モジュール700、処理モジュール900は、前述の実施例と同じように動作するので、ここでは説明を省略する。記憶モジュール1200は、カプセル化されたフリービュービデオデータのメディアファイルを記憶するように構成される。
【0137】
図17は、本願の一実施例によるデータ処理装置の構造模式図である。
図17に示すように、本願の実施例によるデータ処理装置は、メディアサーバに適用され、本願の実施例によるデータ処理方法を実行することができ、サーバは、方法の実行に対応する機能モジュール及び技術的効果を有する。この装置は、ソフトウェア、ハードウェア、又はソフトウェアとハードウェアの組み合わせとして実現されてもよく、伝送モジュール1300、演算モジュール1400、記憶モジュール1500を含む。
【0138】
伝送モジュール1300は、端末の要求メッセージを受信し、要求情報に応じてターゲットビュー情報を送信して、フリービュービデオデータを処理するように構成される。具体的には、記憶モジュール1500によって記憶されたメディアファイル、又は、演算モジュール1400によって処理されたメディアデータを送信する。上記の受信又は送信は、通信ベンダーによって提供される無線ネットワーク、ローカルに構成される無線ローカルネットワーク、又は有線方式によって実現され得る。
【0139】
演算モジュール1400は、要求メッセージに従って、記憶モジュール1500から必要なメディアファイルを取得し、メディアファイルから対応するフリービュービデオデータを抽出して演算処理するように構成される。
記憶モジュール1500は、カプセル化されたフリービュービデオデータのメディアファイルを記憶するように構成される。
【0140】
図18は、本願の一実施例によるデータ処理機器の構造模式図である。
図18に示すように、この機器は、メモリ1600、プロセッサ1700、通信装置1800を含む。メモリ1600、プロセッサ1700の数は1つ又は複数としてもよく、
図16では、1つのメモリ1600及び1つのプロセッサ1700が例示されている。機器のメモリ1600及びプロセッサ1700はバス又は他の方式で接続されてもよく、
図16には、バスを介した接続が例示されている。
【0141】
メモリ1600は、コンピュータ読み取り可能な記憶媒体として、本願のいずれかの実施例によるデータ処理方法に対応するプログラム命令/モジュールのような、ソフトウェアプログラム、コンピュータ実行可能プログラム、及びモジュールを記憶するために使用されてもよい。プロセッサ1700は、メモリ1600に記憶されたソフトウェアプログラム、命令、及びモジュールを実行することによって、上記のデータ処理方法を実現する。
【0142】
メモリ1600は、主に、オペレーティングシステム、少なくとも1つの機能に必要なアプリケーションプログラムを記憶することができるプログラム記憶領域と、データ記憶領域と、を含んでもよい。また、メモリ1600は、高速ランダムアクセスメモリを含んでもよく、さらに、少なくとも1つの磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステートメモリデバイスなどの不揮発性メモリを含んでもよい。いくつかの例では、メモリ1600は、プロセッサ1700に対してリモートに配置されたメモリをさらに含んでもよく、これらのリモートに配置されたメモリはネットワークを介して機器に接続されてもよい。上記のネットワークの例には、インターネット、企業イントラネット、ローカルエリアネットワーク、移動通信ネットワーク、及びこれらの組み合わせが含まれるが、これらに限定されない。
【0143】
通信装置1800は、プロセッサ1700の制御に従って情報の送受信通信を行うように構成される。
一実施例では、通信装置1800は、受信機1810、送信機1820を含む。受信機1810は、電子機器内のデータ受信を行うモジュール又はデバイスの組み合わせである。送信機1820は、電子機器内のデータ送信を行うモジュール又はデバイスの組み合わせである。
【0144】
図19は、本願の一実施例によるデータ処理機器の構造模式図である。
図19に示すように、一実施例では、データ処理機器は、入力装置1400、出力装置1500をさらに含んでもよい。
【0145】
入力装置1400は、入力された数字又は文字情報を受け取り、機器のユーザ設定及び機能制御に関連するキー信号入力を生成するために使用されることができる。出力装置1500は、表示画面などの表示機器を含んでもよい。
本願の一実施例はまた、本願のいずれかの実施例によるデータ処理方法を実行するためのコンピュータ実行可能命令を記憶しているコンピュータ読み取り可能な記憶媒体を提供する。
【0146】
本願の一実施例はまた、コンピュータ読み取り可能な記憶媒体に記憶されたコンピュータプログラム又はコンピュータ命令を含むコンピュータプログラム製品であって、コンピュータ機器のプロセッサは、コンピュータ読み取り可能な記憶媒体からコンピュータプログラム又はコンピュータ命令を読み取り、プロセッサは、コンピュータプログラム又はコンピュータ命令を実行することにより、本願のいずれかの実施例によるデータ処理方法をコンピュータ機器に実行させる、コンピュータプログラム製品を提供する。
【0147】
本願の実施例に記載されたシステムアーキテクチャ及び適用シーンは、本願の実施例の技術案をより明確に説明するためのものであり、本願の実施例による技術案を限定するものではなく、システムアーキテクチャの進化及び新たな適用シーンの出現に伴い、本願の実施例による技術案は類似の技術的課題に対しても同様に適用されることが当業者には分かる。
【0148】
当業者であれば、上記で開示された方法におけるステップの全部又は一部、システム、機器における機能モジュール/ユニットが、ソフトウェア、ファームウェア、ハードウェア、及びそれらの適切な組み合わせとして実装されてもよいことを理解する。
【0149】
ハードウェアの実施形態では、上記の説明に記載された機能モジュール/ユニット間の区分は、必ずしも物理的な構成要素の区分に対応するものではなく、例えば、1つの物理コンポーネントが複数の機能を有していてもよいし、複数の物理コンポーネントが協働して1つの機能又はステップを実行していてもよい。物理コンポーネントの一部又はすべては、中央処理装置、デジタル信号処理装置、マイクロプロセッサなどのプロセッサによって実行されるソフトウェアとして、又はハードウェアとして、又は特定用途向け集積回路などの集積回路として実装されてもよい。このようなソフトウェアは、コンピュータ記憶媒体(又は非一時的媒体)及び通信媒体(又は一時的媒体)を含んでもよいコンピュータ読み取り可能な媒体上に配布してもよい。当業者に周知のように、コンピュータ記憶媒体という用語は、情報(コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又は他のデータ)を記憶するための任意の方法又は技術において実施される、揮発性及び不揮発性の、取り外し可能な、及び取り外し不可能な媒体を含む。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリもしくは他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)もしくは他の光ディスク記憶装置、磁気ボックス、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、又は所望の情報を記憶するために使用することができ、コンピュータによってアクセスすることができる他の任意の媒体を含むが、これらに限定されない。さらに、通信媒体は、通常、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又は搬送波や他の送信機構のような変調データ信号中の他のデータを含み、任意の情報配信媒体を含み得ることが当業者には周知である。
【0150】
本明細書で使用される用語「構成要素」、「モジュール」、「システム」などは、コンピュータ関連エンティティ、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、又は実行中のソフトウェアを意味するために使用される。例えば、構成要素は、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、又はコンピュータであってもよいが、これらに限定されるものではない。図示により、計算機器上で動作するアプリケーション及び計算機器は、いずれも構成要素であってもよい。1つ又は複数の構成要素は、プロセス又は実行スレッド内に常駐してもよいし、構成要素は1つのコンピュータ上に配置しても、2つ以上のコンピュータ間に分散してもよい。さらに、これらの構成要素は、様々なデータ構造を記憶する様々なコンピュータ読み取り可能な媒体から実行することができる。構成要素は、例えば、1つ又は複数のデータパケット(例えば、ローカルシステム、分散システム、又はネットワーク間の他の構成要素と相互作用する2つの構成要素からのデータ、例えば、信号を介して他のシステムと相互作用するインターネットからのデータ)を有する信号に従って、ローカルプロセス又はリモートプロセスを介して通信することができる。
【0151】
本願のいくつかの実施例は、添付の図面を参照して説明されているが、本願の権利の範囲を限定するものではない。当業者が本願の範囲及び本質から逸脱せずに行う補正、均等置換及び改良は、いずれも本願の権利の範囲内にあるものとする。
【手続補正書】
【提出日】2024-04-23
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
データ処理方法であって、
少なくとも1つのテクスチャマップ及び/又は深さマップを含むフリービュービデオデータを取得するステップと、
前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するステップと、
ターゲットビュー情報に基づいて前記フリービュービデオデータを処理するステップと、を含む、方法。
【請求項2】
前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する前記ステップは、
収集装置によって収集された前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化するステップを含む、請求項1に記載の方法。
【請求項3】
収集装置によって収集された前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する前記ステップは、
前記少なくとも1つの収集装置によって収集されたテクスチャマップ及び/又は深さマップを第1メディアトラックにカプセル化するステップを含む、請求項2に記載の方法。
【請求項4】
前記第1メディアトラックのサンプルは、少なくとも1つのサブサンプルを含み、
前記サブサンプルは、前記テクスチャマップ及び/又は深さマップを含む、請求項3に記載の方法。
【請求項5】
前記サブサンプルは、前記テクスチャマップ及び/又は深さマップを含み、
前記サブサンプルは、複数の前記収集装置によって収集されたテクスチャマップ及び深さマップを含む場合、
前記サブサンプルは、1つの前記収集装置によって収集されたテクスチャマップ及び/又は深さマップを含む場合のうちの少なくとも1つを含む、請求項4に記載の方法。
【請求項6】
収集装置によって収集された前記少なくとも1つのテクスチャマップ及び/又は深さマップを少なくとも1つのメディアトラックにカプセル化する前記ステップは、
前記少なくとも1つの収集装置によって収集されたテクスチャマップを少なくとも1つのテクスチャマップメディアトラックにカプセル化するステップと、
前記少なくとも1つの収集装置によって収集された深さマップを少なくとも1つの深さマップメディアトラックにカプセル化するステップと、を含む、請求項2に記載の方法。
【請求項7】
前記第1メディアトラックのサンプルエントリは、第1ボックス及び/又は第2ボックスを含み、
前記第1ボックスは、前記収集装置の装置情報を含み、
前記第2ボックスは、前記テクスチャマップ及び/又は深さマップの属性情報を含む、請求項3に記載の方法。
【請求項8】
前記テクスチャマップメディアトラックのサンプルエントリは、第1テクスチャマップボックスを含み、
前記深さマップメディアトラックのサンプルエントリは、第1深さマップボックスを含み、
前記第1テクスチャマップボックスは、前記テクスチャマップメディアトラックに対応する収集装置の装置情報又はテクスチャマップの属性情報を含み、
前記第1深さマップボックスは、前記深さマップメディアトラックに対応する収集装置の装置情報又は深さマップの属性情報を含
み、
前記第1テクスチャマップボックスは、テクスチャマップが存在するトラックの識別子をさらに含み、
前記第1深さマップボックスは、深さマップが存在するトラックの識別子をさらに含む、請求項6に記載の方法。
【請求項9】
前記テクスチャマップメディアトラックのサンプルエントリは、第2テクスチャマップボックスをさらに含み、
前記深さマップメディアトラックのサンプルエントリは、第2深さマップボックスをさらに含み、
前記第2テクスチャマップボックスは、前記テクスチャマップメディアトラックに対応する収集装置の装置情報又はテクスチャマップの属性情報を含み、
前記第2深さマップボックスは、前記深さマップメディアトラックに対応する収集装置の装置情報又は深さマップの属性情報を含み、
前記第1テクスチャマップボックスと前記第2テクスチャマップボックスは異なる情報を含み、前記第1深さマップボックスと前記第2深さマップボックスは異なる情報を含む、請求項8に記載の方法。
【請求項10】
前記第1ボックスは、トラック情報をさらに含み、
前記トラック情報は、テクスチャマップが存在するトラックの識別子、深さマップが存在するトラックの識別子のうちの少なくとも1つを含む、請求項7に記載の方法。
【請求項11】
前記収集装置の装置情報は、収集装置の数、収集装置の識別子、及び収集装置のパラメータ情報のうちの少なくとも1つを含み、
前記テクスチャマップの属性情報は、テクスチャマップ情報識別子、テクスチャマップ画像情報のうちの少なくとも1つを含み、
前記深さマップの属性情報は、深さマップ情報識別子、深さマップ画像情報のうちの少なくとも1つを含む、請求項
7に記載の方法。
【請求項12】
ターゲットビュー情報を取得するステップをさらに含み、
フリービュービデオデータを取得する前記ステップは、
ターゲットビュー情報に基づいて、ターゲットビューに対応するフリービュービデオデータを取得するステップを含む、請求項1に記載の方法。
【請求項13】
前記ターゲットビュー情報に基づいて、ターゲットビューに対応するフリービュービデオデータを取得するステップは、
前記ターゲットビュー情報に基づいて、前記ターゲットビューに対応するテクスチャマップ及び/又は深さマップを取得するステップを含む、請求項
12に記載の方法。
【請求項14】
ターゲットビュー情報を取得する前記ステップは、タイミングメタデータトラックに応じてターゲットビュー情報を取得するステップを含み、前記ターゲットビューは、前記タイミングメタデータトラックの指示に従って動的に変化
し、
前記タイミングメタデータトラックは、前記ターゲットビューに対応する前記フリービュービデオデータが存在するメディアトラックに関連付けられる、請求項
12に記載の方法。
【請求項15】
前記ターゲットビュー情報は、収集装置の識別子、収集装置のパラメータ情報、ターゲットビューの位置情報、ターゲットビューの回転情報、ターゲットビューの識別子のうちの少なくとも1つを含
み、
前記ターゲットビュー情報に基づいて前記フリービュービデオデータを処理する前記ステップは、
前記フリービュービデオデータ及び前記ターゲットビュー情報に基づいて、前記ターゲットビューに対応する収集装置によって収集されたテクスチャマップ及び深さマップを選択し、前記ターゲットビューに対応するテクスチャマップを合成する、
又は、
前記フリービュービデオデータ及び前記ターゲットビュー情報に基づいて、前記ターゲットビューに対応する収集装置によって収集されたテクスチャマップを選択するステップを含む、請求項1に記載の方法。
【請求項16】
第3ボックスによって前記テクスチャマップメディアトラックと前記深さマップメディアトラックとを関連付けるステップと、
第4ボックスによって前記深さマップメディアトラックと前記テクスチャマップメディアトラックとを関連付けるステップと、
第5ボックスによって前記深さマップメディアトラックと前記テクスチャマップメディアトラックとをトラックグループのように関連付けるステップとのうちの少なくともの1つをさらに含む、請求項5に記載の方法。
【請求項17】
予め設定された情報に基づいて、前記メディアトラックをメディアトラックグループとしてカプセル化するステップをさらに含み、
前記予め設定された情報は、収集装置の位置、収集装置の識別子、画像収集頻度、符号化方式のうちの少なくとも1つを含む、請求項
16に記載の方法。
【請求項18】
予め設定された情報に基づいて、前記メディアトラックをメディアトラックグループとしてカプセル化する前記ステップは、
前記予め設定された情報に基づいて、前記少なくとも2つのテクスチャマップメディアトラックを第1メディアトラックグループとしてカプセル化するステップと、
前記予め設定された情報に基づいて、前記少なくとも2つの深さマップメディアトラックを第2メディアトラックグループとしてカプセル化するステップと、
前記予め設定された情報に基づいて、前記少なくとも1つのテクスチャマップメディアトラック及び前記少なくとも1つの深さマップメディアトラックを第3メディアトラックグループとしてカプセル化するステップと、のうちの少なくとも1つを含む、請求項
17に記載の方法。
【請求項19】
プロセッサによって実行されると、請求項1~
18のいずれか1項に記載のデータ処理方法を
実現す
るコンピュータ実行可能命令を記憶しているコンピュータ読み取り可能な記憶媒体。
【請求項20】
コンピュータプログラム又はコンピュータ命令を含むコンピュータプログラム製品であって、
前記コンピュータプログラム又はコンピュータ命令は、コンピュータ読み取り可能な記憶媒体に記憶されており、コンピュータ機器のプロセッサは、前記コンピュータ読み取り可能な記憶媒体から前記コンピュータプログラム又はコンピュータ命令を読み取り、前記コンピュータプログラム又はコンピュータ命令を実行することにより、請求項1~
18のいずれか1項に記載のデータ処理方法を前記コンピュータ機器に実行させる、コンピュータプログラム製品。
【国際調査報告】