(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-04-03
(54)【発明の名称】時間的に相関するUVアトラスを生成するための方法、デバイスおよびコンピュータプログラム
(51)【国際特許分類】
G06T 9/00 20060101AFI20240327BHJP
【FI】
G06T9/00 100
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023565566
(86)(22)【出願日】2023-03-17
(85)【翻訳文提出日】2023-10-25
(86)【国際出願番号】 US2023015439
(87)【国際公開番号】W WO2023183183
(87)【国際公開日】2023-09-28
(32)【優先日】2022-03-25
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2023-03-16
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】チャオ・フアン
(72)【発明者】
【氏名】シャオジョン・シュ
(72)【発明者】
【氏名】ジュン・ティアン
(72)【発明者】
【氏名】シャン・ジャン
(72)【発明者】
【氏名】シャン・リュウ
(57)【要約】
時間的に相関するUVアトラスを生成するための方法、装置、およびシステムが提供される。プロセスは、1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて複数の一貫したUVチャートを生成するステップ、対応するUVチャートに1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を割り当てるステップに基づいて、複数の一貫したUVチャートから1つまたは複数の非マニホールド頂点を除去するステップ、複数の一貫したUVチャートと1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいて、複数の一貫したUVチャートのうちの2つ以上をマージするステップ、および複数の一貫したUVチャートを1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートと位置合わせするステップに基づいて、現在のフレームの時間的に相関するUVアトラスを生成するステップを含み得る。
【特許請求の範囲】
【請求項1】
時間的に相関するUVアトラスを生成するための方法であって、前記方法は少なくとも1つのプロセッサによって実行され、前記方法は、
1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて現在のフレームに関連付けられた複数の一貫したUVチャートを生成するステップと、
前記複数の一貫したUVチャートの中の対応するUVチャートに1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を割り当てるステップに基づいて、前記複数の一貫したUVチャートから前記1つまたは複数の非マニホールド頂点を除去するステップと、
前記複数の一貫したUVチャートと前記1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいて、前記複数の一貫したUVチャートのうちの2つ以上をマージするステップと、
前記複数の一貫したUVチャートを前記1つまたは複数の前のフレームに関連付けられた前記1つまたは複数の基準チャートと位置合わせするステップに基づいて、前記現在のフレームの時間的に相関するUVアトラスを生成するステップであって、位置合わせする前記ステップは、前記1つまたは複数の基準チャートに関連付けられたパッキング情報に基づく、ステップと
を含む、方法。
【請求項2】
前記パーティション情報は、前記1つまたは複数の前のフレームからの基準頂点および前記1つまたは複数の前のフレームからの基準チャートのうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項3】
前記現在のフレームを分割するための代表的な頂点は、前記1つまたは複数の前のフレームからの前記基準頂点に測地的に近い前記現在のフレームにおけるランドマーク頂点の中から選択される、請求項2に記載の方法。
【請求項4】
前記現在のフレームを分割するための代表的なチャートは、前記1つまたは複数の前のフレームに関連付けられた前記基準チャートの中から選択され、前記選択は、前記基準チャートにおける頂点の数、前記基準チャートにおける面の数、または前記基準チャートにおけるチャート領域の数のうちの少なくとも1つに基づく、請求項2に記載の方法。
【請求項5】
マージする前記ステップが、
前記1つまたは複数の基準チャートから推測された前記現在のフレームに関連付けられた各UVチャートにマージIDを割り当てるステップを含み、
前記1つまたは複数の前のフレームでマージされている前記1つまたは複数の基準チャートの中の基準チャートに基づいて、前記現在のフレームに関連付けられた前記複数の一貫したUVチャートの中のUVチャートのマージに同じマージIDが割り当てられる、
請求項1に記載の方法。
【請求項6】
マージする前記ステップが、前記同じマージIDを有する前記複数の一貫したUVチャートのうちの2つ以上をマージするステップをさらに含む、請求項5に記載の方法。
【請求項7】
マージする前記ステップは、前記複数の一貫したUVチャートの中の大きいUVチャートと、前記複数の一貫したUVチャートの中の小さいUVチャートとをマージするステップをさらに含み、前記大きいUVチャートと前記小さいUVチャートとをマージするステップは、前記マージされたUVチャートの面の数を変更せず、前記大きいUVチャートは、前記小さいUVチャートとは異なるマージIDを有する、請求項6に記載の方法。
【請求項8】
時間的に相関するUVアトラスを生成するためのデバイスであって、前記デバイスは、
プログラムコードを記憶するように構成された少なくとも1つのメモリと、
前記プログラムコードを読み取り、前記プログラムコードによって命令されるように動作するように構成された少なくとも1つのプロセッサとを備え、前記プログラムコードは、
前記少なくとも1つのプロセッサに、1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて現在のフレームに関連付けられた複数の一貫したUVチャートを生成させるように構成された第1の生成コードと、
前記少なくとも1つのプロセッサに、1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を前記複数の一貫したUVチャートの中の対応するUVチャートに割り当てるステップに基づいて、前記複数の一貫したUVチャートから前記1つまたは複数の非マニホールド頂点を除去させるように構成された第1の除去コードと、
前記少なくとも1つのプロセッサに、前記複数の一貫したUVチャートと前記1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいて、前記複数の一貫したUVチャートのうちの2つ以上をマージさせるように構成された第1のマージコードと、
前記少なくとも1つのプロセッサに、前記複数の一貫したUVチャートを、前記1つまたは複数の前のフレームに関連付けられた前記1つまたは複数の基準チャートと位置合わせするステップに基づいて、前記現在のフレームの時間的に相関するUVアトラスを生成させるように構成された第2の生成コードであって、位置合わせする前記ステップは、前記1つまたは複数の基準チャートに関連付けられたパッキング情報に基づく、第2の生成コードと
を含む、デバイス。
【請求項9】
前記パーティション情報は、前記1つまたは複数の前のフレームからの基準頂点および前記1つまたは複数の前のフレームからの基準チャートのうちの少なくとも1つを含む、請求項8に記載のデバイス。
【請求項10】
前記現在のフレームを分割するための代表的な頂点は、前記1つまたは複数の前のフレームからの前記基準頂点に測地的に近い前記現在のフレームにおけるランドマーク頂点の中から選択される、請求項9に記載のデバイス。
【請求項11】
前記現在のフレームを分割するための代表的なチャートは、前記1つまたは複数の前のフレームに関連付けられた前記基準チャートの中から選択され、前記選択は、前記基準チャートにおける頂点の数、前記基準チャートにおける面の数、または前記基準チャートにおけるチャート領域の数のうちの少なくとも1つに基づく、請求項9に記載のデバイス。
【請求項12】
前記第1のマージコードが、
前記1つまたは複数の基準チャートから推測された前記現在のフレームに関連付けられた各UVチャートにマージIDを割り当てるステップを含み、
前記1つまたは複数の前のフレームでマージされている前記1つまたは複数の基準チャートの中の基準チャートに基づいて、前記現在のフレームに関連付けられた前記複数の一貫したUVチャートの中のUVチャートのマージに同じマージIDが割り当てられる、
請求項8に記載のデバイス。
【請求項13】
前記第1のマージコードが、前記同じマージIDを有する前記複数の一貫したUVチャートのうちの2つ以上をマージするステップをさらに含む、請求項12に記載のデバイス。
【請求項14】
前記第1のマージコードは、前記複数の一貫したUVチャートの中の大きいUVチャートと、前記複数の一貫したUVチャートの中の小さいUVチャートとをマージするステップをさらに含み、前記大きいUVチャートと前記小さいUVチャートとをマージするステップは、前記マージされたUVチャートの面の数を変更せず、前記大きいUVチャートは、前記小さいUVチャートとは異なるマージIDを有する、請求項13に記載のデバイス。
【請求項15】
命令を記憶する非一時的コンピュータ可読媒体であって、前記命令は、時間的に相関するUVアトラスを生成するためのデバイスの1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、
1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて現在のフレームに関連付けられた複数の一貫したUVチャートを生成させ、
前記複数の一貫したUVチャートの中の対応するUVチャートに1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を割り当てるステップに基づいて、前記複数の一貫したUVチャートから前記1つまたは複数の非マニホールド頂点を除去させ、
前記複数の一貫したUVチャートと前記1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいて、前記複数の一貫したUVチャートのうちの2つ以上をマージさせ、
前記複数の一貫したUVチャートを前記1つまたは複数の前のフレームに関連付けられた前記1つまたは複数の基準チャートと位置合わせするステップに基づいて、前記現在のフレームの時間的に相関するUVアトラスを生成させ、位置合わせする前記ステップは、前記1つまたは複数の基準チャートに関連付けられたパッキング情報に基づく、
1つまたは複数の命令を含む、非一時的コンピュータ可読媒体。
【請求項16】
前記パーティション情報は、前記1つまたは複数の前のフレームからの基準頂点および前記1つまたは複数の前のフレームからの基準チャートのうちの少なくとも1つを含む、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項17】
前記現在のフレームを分割するための代表的な頂点は、前記1つまたは複数の前のフレームからの前記基準頂点に測地的に近い前記現在のフレームにおけるランドマーク頂点の中から選択される、請求項16に記載の非一時的コンピュータ可読媒体。
【請求項18】
前記現在のフレームを分割するための代表的なチャートは、前記1つまたは複数の前のフレームに関連付けられた前記基準チャートの中から選択され、前記選択は、前記基準チャートにおける頂点の数、前記基準チャートにおける面の数、または前記基準チャートにおけるチャート領域の数のうちの少なくとも1つに基づく、請求項16に記載の非一時的コンピュータ可読媒体。
【請求項19】
マージする前記ステップが、
前記1つまたは複数の基準チャートから推測された前記現在のフレームに関連付けられた各UVチャートにマージIDを割り当てるステップを含み、
前記1つまたは複数の前のフレームでマージされている前記1つまたは複数の基準チャートの中の基準チャートに基づいて、前記現在のフレームに関連付けられた前記複数の一貫したUVチャートの中のUVチャートのマージに同じマージIDが割り当てられる、
請求項18に記載の非一時的コンピュータ可読媒体。
【請求項20】
マージする前記ステップが、前記同じマージIDを有する前記複数の一貫したUVチャートのうちの2つ以上をマージするステップをさらに含む、請求項16に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2022年3月25日に出願された米国仮特許出願第63/323885号および2023年3月16日に出願された米国特許出願第18/185033号の優先権を主張し、これらの開示はその全体が参照により本明細書に組み込まれる。
【0002】
本開示は、高度なビデオコーディング技術のセットに関する。より詳細には、本開示は、ビデオベースの動的メッシュアライメントおよび圧縮に関する。
【背景技術】
【0003】
世界の高度な3次元(3D)表現により、さらに没入型の相互作用および通信が可能になっている。3D表現の臨場感を実現するために、3Dモデルは、これまで以上に洗練されてきており、かなりの量のデータがこれらの3Dモデルの作成および消費に結び付けられる。3Dメッシュが3Dモデル没入型コンテンツに広く使用される。
【0004】
3Dメッシュは、ボリュームオブジェクトの表面を記述するいくつかの多角形から構成され得る。動的メッシュシーケンスは、これが経時的に変化するかなりの量の情報を有し得るので、大量のデータを必要とする場合がある。したがって、そのようなコンテンツを記憶しかつ送信するために効率的な圧縮技術が必要となる。
【0005】
メッシュ圧縮規格IC、MESHGRID、FAMCは、常時接続性および時変ジオメトリおよび頂点属性を伴う動的メッシュに対処するために以前に開発された。しかしながら、これらの規格は、時変属性マップおよび接続性情報を考慮していない。
【0006】
さらに、特にリアルタイム制約下で、ボリューム取得技術が常時接続性動的メッシュを生成することも困難である。このタイプの動的メッシュコンテンツは、既存の規格ではサポートされない。
【0007】
上記に加えて、多くのアライメント方法、特に時間的アライメントは逐次技術に基づく。言い換えれば、1つのフレームの処理は、前のフレームからのチャート割り当ての結果を現在のフレームのチャートを割り当てるための基礎として使用するなど、他のフレームに依存する。依存性により、それらの方法は並列化に適さなくなり、したがって、メッシュを符号化/復号するのが遅くなる。したがって、この依存性を排除する方法が、並列化を可能にし、符号化および復号効率を改善するために必要とされる。
【発明の概要】
【課題を解決するための手段】
【0008】
実施形態によれば、時間的に相関するUVアトラスを生成するための方法は、1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて現在のフレームに関連付けられた複数の一貫したUVチャートを生成するステップ、複数の一貫したUVチャートの中の対応するUVチャートに1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を割り当てるステップに基づいて、複数の一貫したUVチャートから1つまたは複数の非マニホールド頂点を除去するステップ、複数の一貫したUVチャートと1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいて、複数の一貫したUVチャートのうちの2つ以上をマージするステップ、および複数の一貫したUVチャートを1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートと位置合わせするステップに基づいて、現在のフレームの時間的に相関するUVアトラスを生成するステップであって、位置合わせするステップは、1つまたは複数の基準チャートに関連付けられたパッキング情報に基づく、ステップとを含む。
【0009】
実施形態によれば、時間的に相関するUVアトラスを生成するためのデバイスは、プログラムコードを記憶するように構成された少なくとも1つのメモリ、およびプログラムコードを読み取り、プログラムコードによって命令されるように動作するように構成された少なくとも1つのプロセッサを含み、プログラムコードは、少なくとも1つのプロセッサに、1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて現在のフレームに関連付けられた複数の一貫したUVチャートを生成させるように構成された第1の生成コード、少なくとも1つのプロセッサに、1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を複数の一貫したUVチャートの中の対応するUVチャートに割り当てるステップに基づいて、複数の一貫したUVチャートから1つまたは複数の非マニホールド頂点を除去させるように構成された第1の除去コード、少なくとも1つのプロセッサに、複数の一貫したUVチャートと1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいて、複数の一貫したUVチャートのうちの2つ以上をマージさせるように構成された第1のマージコード、ならびに少なくとも1つのプロセッサに、複数の一貫したUVチャートを、1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートと位置合わせするステップに基づいて、現在のフレームの時間的に相関するUVアトラスを生成させるように構成された第2の生成コードであって、位置合わせするステップは、1つまたは複数の基準チャートに関連付けられたパッキング情報に基づく第2の生成コードとを含む。
【0010】
実施形態によれば、非一時的コンピュータ可読媒体は、時間的に相関するUVアトラスを生成するためのデバイスの1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて現在のフレームに関連付けられた複数の一貫したUVチャートを生成させ、複数の一貫したUVチャートの中の対応するUVチャートに1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を割り当てるステップに基づいて、複数の一貫したUVチャートから1つまたは複数の非マニホールド頂点を除去させ、複数の一貫したUVチャートと1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいて、複数の一貫したUVチャートのうちの2つ以上をマージさせ、複数の一貫したUVチャートを1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートと位置合わせするステップに基づいて、現在のフレームの時間的に相関するUVアトラスを生成させ、位置合わせするステップは、1つまたは複数の基準チャートに関連付けられたパッキング情報に基づく、1つまたは複数の命令を含む、命令を記憶する。
【0011】
開示された主題のさらなる特徴、性質、および様々な利点は、以下の詳細な説明および添付の図面からより明らかになるであろう。
【図面の簡単な説明】
【0012】
【
図1】本開示の実施形態による、通信システムの簡略化されたブロック図の概略図である。
【
図2】本開示の実施形態による、ストリーミングシステムの簡略化されたブロック図の概略図である。
【
図3】本開示の実施形態による、ビデオエンコーダおよびデコーダの簡略化されたブロック図の概略図である。
【
図4】本開示の実施形態による、3Dチャートを2D UV平面上に投影する一例示的な図である。
【
図5】本開示の実施形態による、チャートにおける「穴」の充填の図である。
【
図6】本開示の実施形態による、時間的に相関するUVアトラスを生成するためのプロセスを示す一例示的な流れ図である。
【
図7】実施形態を実装するために適したコンピュータシステムの図である。
【発明を実施するための形態】
【0013】
メッシュは、ボリュームオブジェクトの表面を記述するいくつかの多角形を含み得る。3D空間内のメッシュの頂点および頂点がどのように接続されているかの情報は、接続性情報と呼ばれる各多角形を画定し得る。随意に、色や法線などの頂点属性は、メッシュ頂点に関連付けられ得る。属性は、メッシュを2D属性マップでパラメータ化するマッピング情報を利用することにより、メッシュの表面にも関連付けられ得る。そのようなマッピングは、UV座標またはテクスチャ座標と呼ばれ、メッシュ頂点に関連付けられたパラメトリック座標のセットを使用して定義され得る。テクスチャ、法線、変位などの高解像度属性情報を記憶するために2D属性マップが使用され得る。高解像度属性情報は、テクスチャマッピングやシェーディングなどの様々な目的に使用され得る。
【0014】
上記のように、3Dメッシュまたは動的メッシュは、これが経時的に変化するかなりの量の情報からなり得るので、大量のデータを必要とする場合がある。既存の規格は、時変属性マップおよび接続性情報を考慮していない。既存の規格はまた、特にリアルタイム条件下で、常時接続性動的メッシュを生成するボリューム取得技法をサポートしていない。
【0015】
したがって、時変接続性情報および随意に時変属性マップを伴う動的メッシュを直接処理するための新たなメッシュ圧縮規格が必要とされる。本開示の実施形態は、そのような動的メッシュを記憶および送信するための効率的な圧縮技術を可能にする。本開示の実施形態は、リアルタイム通信、記憶、自由視点ビデオ、ARおよびVRなどの様々なアプリケーションのための不可逆圧縮および/または可逆圧縮を可能にする。
【0016】
効率的な圧縮を達成するために、本開示の実施形態は、フレーム内および/またはフレーム間相関を取得するために空間的および時間的アライメントを採用する。従来技術では、アライメント方法の多く、特に時間的アライメントは、逐次技術に基づいている。言い換えれば、1つのフレームの処理は、前のフレームからのチャート割り当ての結果を現在のフレームのチャートを割り当てるための基礎として使用するなど、他のフレームに依存する。依存性により、それらの方法は並列化に適さなくなり、したがって、メッシュを符号化/復号するのが遅くなる。したがって、この依存性を排除する方法が、並列化を可能にし、符号化および復号効率を改善するために必要とされる。
【0017】
本開示の一態様によれば、動的メッシュ圧縮の並列処理のための方法、システム、および非一時的記憶媒体が提供される。本開示の実施形態は、静的メッシュにも適用され得る。
【0018】
図1および
図2を参照すると、本開示の符号化構造および復号化構造を実施するための本開示の一実施形態が説明される。
【0019】
図1は、本開示の一実施形態による通信システム100の簡略化されたブロック図を示す。システム100は、ネットワーク150を通じて相互接続された少なくとも2つの端末110、120を含み得る。データの単方向送信の場合、第1の端末110は、ネットワーク150を通じて他の端末120に送信するために、ローカルロケーションでメッシュデータを含み得るビデオデータをコード化し得る。第2の端末120は、ネットワーク150から他の端末のコード化されたビデオデータを受信し、コード化されたデータを復号し、復元されたビデオデータを表示し得る。単方向データ送信は、メディア提供用途などで一般的であり得る。
【0020】
図1は、例えばビデオ会議中に行われ得るコード化されたビデオの双方向伝送をサポートするために設けられた第2の端末対130、140を示す。データの双方向伝送の場合、各端末130、140は、ネットワーク150を介して他の端末に伝送するために、ローカルロケーションでキャプチャされたビデオデータをコード化し得る。各端末130、140はまた、他の端末によって送信されたコード化されたビデオデータを受信し得、コード化されたデータを復号し得、復元されたビデオデータをローカル表示デバイスに表示し得る。
【0021】
図1では、端末110~140は、例えば、サーバ、パーソナルコンピュータ、およびスマートフォン、ならびに/あるいは他のタイプの端末とし得る。例えば、端末(110~140)は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤ、および/または専用ビデオ会議機器であってもよい。ネットワーク150は、例えば、有線および/または無線通信ネットワークを含む、端末110~140間でコード化されたビデオデータを伝達する任意の数のネットワークを表す。通信ネットワーク150は、回線交換および/またはパケット交換チャネルでデータを交換し得る。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、および/またはインターネットを含む。本解説の目的のために、ネットワーク150のアーキテクチャおよびトポロジは、本明細書で以下に説明されない限り、本開示の動作にとって重要ではない場合がある。
【0022】
図2は、開示された主題の用途の一例として、ストリーミング環境におけるビデオエンコーダおよびデコーダの配置を示す。開示された主題は、例えば、ビデオ会議、デジタルTV、CD、DVD、メモリスティックなどを含むデジタル媒体への圧縮ビデオの記憶などを含む、他のビデオ対応アプリケーションで使用され得る。
【0023】
図2に示すように、ストリーミングシステム200は、ビデオソース201およびエンコーダ203を含むキャプチャサブシステム213を含み得る。ストリーミングシステム200は、少なくとも1つのストリーミングサーバ205および/または少なくとも1つのストリーミングクライアント206をさらに含み得る。
【0024】
ビデオソース201は、例えば、3Dメッシュおよび3Dメッシュに関連付けられメタデータを含むストリーム202を作成することができる。ビデオソース201は、例えば、3Dセンサ(例えば、深度センサ)または3D撮像技術(例えば、デジタルカメラ(複数可))と、3Dセンサから受信されたデータまたは3D撮像技術を使用して3Dメッシュを生成するように構成された計算デバイスと、を含み得る。サンプルストリーム202は、符号化されたビデオビットストリームに比べて大きいデータ量を有し得るものであり、ビデオソース201に結合されたエンコーダ203によって処理することができる。以下で詳細に説明するように、エンコーダ203は、開示の主題の態様を可能にする、または実施するために、ハードウェア、ソフトウェア、またはこれらの組合せを含むことができる。エンコーダ203は、符号化されたビデオビットストリーム204をさらに生成し得る。圧縮されていないストリーム202と比較して、データ量が小さくてもよい符号化されたビデオビットストリーム204は、後で使用するためにストリーミングサーバ205に記憶することができる。1つまたは複数のストリーミングクライアント206は、符号化されたビデオビットストリーム204のコピーであり得るビデオビットストリーム209を検索するために、ストリーミングサーバ205にアクセスすることができる。
【0025】
ストリーミングクライアント206は、ビデオデコーダ210およびディスプレイ212を含むことができる。ビデオデコーダ210は、例えば、符号化されたビデオビットストリーム204の着信コピーである、ビデオビットストリーム209を復号し、ディスプレイ212または別のレンダリングデバイス(図示せず)上にレンダリングすることができる発信ビデオサンプルストリーム211を作成することができる。いくつかのストリーミングシステムでは、ビデオビットストリーム204、209は、特定のビデオコーディング/圧縮規格に従って符号化することができる。
【0026】
図3は、エンコーダおよびデコーダを使用して動的メッシュ圧縮およびメッシュ再構成するためのフレームワーク300の一例示的な図である。
【0027】
図3に見られるように、フレームワーク300は、エンコーダ301およびデコーダ351を含み得る。エンコーダ301は、1つまたは複数の入力メッシュ305、UVアトラス310を伴う1つまたは複数のメッシュ、占有マップ315、ジオメトリマップ320、属性マップ325、およびメタデータ330を含み得る。デコーダ351は、復号された占有マップ335、復号されたジオメトリマップ340、復号された属性マップ345、復号されたメタデータ350、および再構成されたメッシュ360を含み得る。
【0028】
本開示の一態様によれば、入力メッシュ305は、1つまたは複数のフレームを含み得、1つまたは複数のフレームの各々は、一連の動作によって前処理され、UVアトラス310を伴うメッシュを生成するために使用され得る。一例として、前処理動作は、トラッキング、パラメータ化、再メッシュ化、ボクセル化などを含み得るが、これらに限定されなくてもよい。いくつかの実施形態では、前処理動作は、エンコーダ側でのみ実行され、デコーダ側では実行されなくてもよい。
【0029】
UVアトラス310を伴うメッシュは、2Dメッシュとし得る。UVアトラスを伴う2Dメッシュは、メッシュの各頂点が2Dアトラス上のUV座標に関連付けられ得るメッシュとし得る。UVアトラス310を伴うメッシュは、サンプリングに基づいて処理され、複数のマップに変換され得る。一例として、UVアトラス310は、UVアトラスを伴う2Dメッシュをサンプリングすることに基づいて処理され、占有マップ、ジオメトリマップ、および属性マップに変換され得る。生成された占有マップ335、ジオメトリマップ340、および属性マップ345は、適切なコーデック(例えば、HVEC、VVC、AV1など)を使用して符号化され、デコーダに送信され得る。いくつかの実施形態では、メタデータ(例えば、接続性情報など)もデコーダに送信され得る。
【0030】
一態様によれば、デコーダ351は、エンコーダから符号化された占有マップ、ジオメトリマップ、および属性マップを受信し得る。デコーダ351は、本明細書に記載の実施形態に加えて、占有マップ、ジオメトリマップ、および属性マップを復号するために適切な技法および方法を使用し得る。一実施形態では、デコーダ351は、復号された占有マップ335、復号されたジオメトリマップ340、復号された属性マップ345、および復号されたメタデータ350を含み得る。入力メッシュ305は、復号された占有マップ335、復号されたジオメトリマップ340、復号された属性マップ345、および復号されたメタデータ350に基づいて、1つまたは複数の再構成フィルタおよび技法を使用して再構成されたメッシュ360に再構成され得る。いくつかの実施形態では、メタデータ330はデコーダ351に直接送信されてもよく、デコーダ351は、復号された占有マップ335、復号されたジオメトリマップ340、および復号された属性マップ345に基づいて再構成されたメッシュ360を生成するために、メタデータを使用し得る。再メッシュ化、パラメータ化、トラッキング、ボクセル化などを含むが、これらに限定されないポストフィルタリング技法も、再構成されたメッシュ360に適用されてもよい。
【0031】
2D UVアトラスを伴う入力メッシュは頂点を有し得、メッシュの各頂点は、2Dアトラス上の関連するUV座標を有し得る。占有マップ、ジオメトリマップ、および属性マップは、UVアトラス上の1つまたは複数の点/位置をサンプリングすることによって生成され得る。各サンプル位置は、その位置がメッシュ頂点によって画定された多角形の内側にある場合、占有されていても占有されていなくてもよい。各占有サンプルについて、関連する多角形頂点から補間することにより、そのサンプルの対応する3Dジオメトリ座標および属性を計算することができる。
【0032】
本開示の一態様によれば、サンプリングレートは、2Dアトラス全体にわたって一貫していてもよい。いくつかの実施形態では、u軸およびv軸のサンプリングレートは異なっていてもよく、異方性再メッシュ化を可能にする。いくつかの実施形態では、2Dアトラス全体は、スライスやタイルなどの複数の領域に分割されてもよく、そのような各領域は異なるサンプリングレートを有してもよい。
【0033】
本開示の一態様によれば、各領域(または2Dアトラス全体)のサンプリングレートは、以下に限定されるものではないが、シーケンスヘッダ、フレームヘッダ、スライスヘッダなどを含む高レベルシンタックスで信号伝達され得る。いくつかの実施形態では、各領域(または2Dアトラス全体)のサンプリングレートは、エンコーダとデコーダの両方によって仮定されている予め確立されたレートのセットから選択され得る。エンコーダとデコーダの両方によって知られている予め確立されたレートのセットのため、1つの特定のサンプリングレートのシグナリングは、予め確立されたレートセット内のインデックスを信号で送ることのみを必要とする。そのような予め確立されたセットの例が、2画素ごと、4画素ごと、8画素ごとなどであり得る。いくつかの実施形態では、メッシュフレームの各領域(または2Dアトラス全体)のサンプリングレートは、予め確立されたレートセットから、同じフレームの他の既にコード化された領域内での以前に使用されたサンプリングレートから、または他の既にコード化されたメッシュフレーム内での以前に使用されたサンプリングレートから予測され得る。
【0034】
いくつかの実施形態では、各領域(または2Dアトラス全体)のサンプリングレートは、各領域(または2Dアトラス全体)の何らかの特性に基づき得る。一例として、サンプルレートはアクティビティに基づくことができ、リッチテクスチャード領域(または2Dアトラス全体)、または高アクティビティの領域(または2Dアトラス全体)の場合、サンプルレートは高く設定することができる。別の例として、滑らかな領域(または2Dアトラス全体)、または低アクティビティの領域(または2Dアトラス全体)の場合、サンプルレートは低く設定することができる。
【0035】
いくつかの実施形態では、メッシュフレームの各領域(または2Dアトラス全体)のサンプリングレートは、予測と直接シグナリングとを組み合わせることが可能にされ得るように信号伝達され得る。シンタックスは、サンプリングレートが予測されるか直接信号で送られるかを指示するように構成され得る。予測される場合、どの予測子サンプリングレートが使用されるべきかがさらに信号で送られ得る。直接信号で送られる場合、レートの値を表すべきシンタックスは信号で送られ得る。
【0036】
図4は、本開示の実施形態による、3Dチャートを2D UV平面(2D UVチャート)に投影することを示す一例示的な
図400である。
【0037】
図4に見られるように、3Dメッシュは、各々が2D平面に投影され得る、いくつかのチャートに分割され得る。2D UV平面上で、テクスチャ情報などのメッシュの属性情報には、3D頂点との対応関係を見つけることができる。
【0038】
図4に見られるように、UV座標情報は、2D UV平面上の3D位置(頂点など)のテクスチャ情報を見つけるために使用され得る。実施形態では、チャートの分割プロセスは同じでなくてもよく、異なるメッシュフレームにわたる2D平面上のチャートおよび割り当ての様々な形状をもたらす。
【0039】
上記のように、動的メッシュシーケンスは、これが経時的に変化するかなりの量の情報からなり得るので、大量のデータを必要とする場合がある。特に、異なるメッシュフレームのUVアトラス間の相関が低い場合、テクスチャマップまたはジオメトリ画像の圧縮は非効率的であり得る。したがって、動的メッシュ圧縮には、異なるメッシュフレームにわたる高度に相関するUVアトラスが望ましい。
【0040】
本開示の実施形態は、動的メッシュ圧縮のための時間的に相関するUVアトラスを生成することに関する。実施形態は、個別にまたは任意の形態の組合せによって適用され得る。
【0041】
メッシュUVアトラスを作成するフレームワークは、メッシュ前処理、パーティション、パラメータ化、マージおよびパッキングの5つのステップを含み得る。
【0042】
実施形態によれば、メッシュパラメータ化アルゴリズムの入力要件を満たすためにメッシュ前処理が必要とされ得る。実施形態では、メッシュは、重複、分離、または縮退した面または頂点を除去することによって最初に洗浄されてもよい。次に、メッシュの平滑度に応じて、生成されるUVチャートの数が減少するように、平滑化フィルタは洗浄されたメッシュに適用され得る。いくつかの実施形態では、メッシュの接続性は、平滑化動作の下で不変である。
【0043】
実施形態によれば、高度に相関するUVアトラスを生成するために、最初に一貫したUVチャートを生成し得る。一貫したUVチャートは、現在のフレームのチャートのいくつかが3D位置、形状、サイズなどの点で前のフレームのチャートと同様であるチャートを含み得る。一貫したUVチャートは、前のフレームからのパーティション情報を使用して取得し得る。
【0044】
一実施形態では、メッシュ分割のために前のフレームで採用された代表的な頂点を基準頂点として使用され得る。現在のフレームにおける分割のための代表的な頂点は、それらの基準頂点に最も近いランドマーク頂点から選択され得る。分割は、面と代表的な頂点との間の測地線距離に基づいてもよいため、類似の代表的な頂点は、類似の分割をもたらし、したがって一貫したチャートをもたらす。
【0045】
別の実施形態では、前のフレームのチャートのいくつかは、現在のフレームで分割するための基準チャートとして使用され得る。例えば、基準チャートは、頂点の数、面の数、または2Dもしくは3Dのチャート領域などに関して最大のチャートに基づいて選択され得る。前のフレームの基準チャートが決定された後、それらの情報は、現在のフレームの対応するチャートを見つけるために使用され得る。例えば、基準チャートにおける各面の重心を利用して、対応するチャートにおける面となる、現在のフレームにおける最も近い面を見つけることができる。
【0046】
いくつかの実施形態では、生成されたチャートを検証し得る。一例では、基準チャートから得られた対応するチャートは、マニホールドでなくてもよく、単に(標準的な定義によって)接続されていなくてもよく、したがって、非マニホールド頂点を除去する必要があり得る、および/またはチャートの「穴」を埋める必要があり得る。非マニホールド頂点は、すべての入射面を対応するチャートに割り当てることによって検出および除去され得る。チャートにおける「穴」を検出するために、チャートのオイラー特性を計算し得る。
【数1】
【0047】
ここで、k0、k1、k2は、チャートにおける頂点、エッジ、および面の数であり、χ=b0-b1であり、b0は、接続された構成要素の数であり、b1は、内部境界ループによって囲まれ「穴」の数である。したがって、単一のチャートの場合、b0=1であるため、チャートにおける「穴」の数は次のように計算できる。
b1=b0-χ=1-k0+k1-k2 式(2)
【0048】
いくつかの実施形態では、「穴」は、チャートにおけるすべての内部境界ループを見つけることによって検出され得る。「穴」を検出した後、「穴」において接続された構成要素を対応するチャートに割り当てるか、または対応するチャートの一部として内部境界に入射する面に繰り返し再ラベル付けすることによって、「穴」が埋められ得る。
【0049】
一例として、
図5は、本開示の実施形態による、チャートにおける「穴」の充填を示す。
図5において、左右のパネルは、「穴」を充填する前後のチャートをそれぞれ示す。
【0050】
対応するチャートのトポロジを検証した後、上述した顔再割り当て動作によって対応するチャートが大きくなりすぎていないかどうかを検証する必要があり得る。一例として、検証されたチャートにおけるチャート領域または面の数が基準チャートと大きく異なるかどうかが決定され得る。そうである場合、基準チャートから推測されたものとしてのチャートがドロップされ得る。
【0051】
来る実施形態では、チャートはマージされなければならない場合がある。マージ中は、前のフレームにおける基準チャートと現在のフレームの対応するチャートの類似度を維持することが望ましい。したがって、類似度がマージによって損なわれないように、マージチャートにはいくつかの制限が必要である。1つの非限定的な例として、チャートをマージするために特定のポリシーが採用されてもよい。最初の事柄として、基準チャートから推論された対応するチャートごとに固有のマージIDが割り当てられてもよい。例外は、基準チャートが前のフレームでマージされた場合であり、そのとき、対応するチャートは、それらがマージされることも可能にされ得るため、同じマージIDを有し得る。基準チャートから推論されない他のすべてのチャートは、対応するチャートとは異なる同じマージIDを有し得る。いくつかの実施形態では、すべての子孫チャートは、それらの祖先チャートと同じマージIDを継承し得る。そして、マージIDが同じチャートのみをマージしてもよい。大きな対応チャートと、対応チャートをあまり変化させない小さなチャートとをマージするときには、例えば、面の数やチャート領域の数の点で、同じマージIDを必要とする例外としてもよい。そして、マージIDにかかわらずマージさせるようにしてもよい。
【0052】
UVメッシュアトラスを生成するための最終ステップは、パッキングチャートであってもよい。いくつかの実施形態では、前のフレームからの基準チャートと現在のフレームにおいて対応するチャートが位置合わせされ得る。最初に、位置、向きなどの基準チャートのパッキング情報を使用して、対応するチャートをパッキングし得る。その後、基準チャートから推測されないチャートをパッキングし得る。
【0053】
図6は、本開示の実施形態による、時間的に相関するUVアトラスを生成するためのプロセス600を示す流れ図である。
【0054】
動作605では、現在のフレームは、重複、分離、または縮退した面または頂点を除去することによって前処理され得る。
【0055】
いくつかの実施形態では、前処理の後、メッシュの平滑度に応じて、生成されるUVチャートの数が減少するように、平滑化フィルタを洗浄されたメッシュに随意に適用することができる。
【0056】
動作610では、1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて現在のフレームに関連付けられた1つまたは複数の一貫したUVチャートが生成され得る。
【0057】
いくつかの実施形態では、パーティション情報は、1つまたは複数の前のフレームからの基準頂点および1つまたは複数の前のフレームからの基準チャートのうちの少なくとも1つを含み得る。いくつかの実施形態では、現在のフレームを分割するための代表的な頂点は、1つまたは複数の前のフレームからの基準頂点に測地的に近い現在のフレームにおけるランドマーク頂点の中から選択され得る。いくつかの実施形態では、現在のフレームを分割するための代表的なチャートは、1つまたは複数の前のフレームに関連付けられた基準チャートの中から選択されてもよく、選択は、基準チャートにおける頂点の数、基準チャートにおける面の数、または基準チャートにおけるチャート領域の数のうちの少なくとも1つに基づいてもよい。
【0058】
動作615では、1つまたは複数の一貫したUVチャートからの1つまたは複数の非マニホールド頂点は、1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を1つまたは複数の一貫したUVチャートの中の対応するUVチャートに割り当てることに基づいて除去され得る。
【0059】
動作620では、1つまたは複数の一貫したUVチャートのうちの複数は、1つまたは複数の一貫したUVチャートと1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいてマージされ得る。
【0060】
いくつかの実施形態では、マージは、1つまたは複数の基準チャートから推測された現在のフレームに関連付けられた各UVチャートにマージIDを割り当てるステップを含み得、1つまたは複数の前のフレームでマージされている1つまたは複数の基準チャートの中の基準チャートに基づいて、現在のフレームに関連付けられた1つまたは複数の一貫したUVチャートの中のUVチャートのマージに同じマージIDが割り当てられ得る。いくつかの実施形態では、マージは、同じマージIDを有する1つまたは複数の一貫したUVチャートのうちの2つ以上をマージすることを含み得る。
【0061】
いくつかの実施形態では、マージは、1つまたは複数の一貫したUVチャートの中の大きいUVチャートと、1つまたは複数の一貫したUVチャートの中の小さいUVチャートとをマージすることを含み得、大きいUVチャートと小さいUVチャートとをマージすることはマージされたUVチャートの面の数を変更しない可能性があり、大きいUVチャートは小さいUVチャートとは異なるマージIDを有し得る。
【0062】
動作625では、現在のフレームの時間的に相関するUVアトラスは、1つまたは複数の一貫したUVチャートを1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートと位置合わせすることに基づいて生成され得、位置合わせは、1つまたは複数の基準チャートに関連付けられたパッキング情報に基づく。
【0063】
上述した技術は、コンピュータ可読命令を使用し、1つまたは複数のコンピュータ可読媒体に物理的に記憶されたコンピュータソフトウェアとして実装されることができる。例えば、
図7は、本開示の特定の実施形態を実装するために適したコンピュータシステム700を示している。
【0064】
コンピュータソフトウェアは、コンピュータ中央処理装置(CPU)、グラフィックス処理装置(GPU)などにより、直接、または解釈、マイクロコード実行などを介して実行されることができる命令を含むコードを作成するために、アセンブル、コンパイル、リンク、または同様のメカニズムを受け得る任意の適切なマシンコードまたはコンピュータ言語を使用してコード化されることができる。
【0065】
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲーム機、モノのインターネットデバイスなどを含む様々なタイプのコンピュータまたはコンピュータの構成要素上で実行することができる。
【0066】
コンピュータシステム700について
図7に示される構成要素は、例であり、本開示の実施形態を実装するコンピュータソフトウェアの使用範囲または機能に関するいかなる制限を示唆することを意図するものではない。構成要素の構成は、コンピュータシステム700の非限定的な実施形態に示されている構成要素のいずれか1つ、または構成要素の組合せに関して、依存性を有するものとも、要件を有するものとも解釈されてはならない。
【0067】
コンピュータシステム700は、特定のヒューマンインターフェース入力デバイスを含み得る。そのようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(キーストローク、スワイプ、データグローブの動きなど)、オーディオ入力(声、拍手など)、視覚入力(ジェスチャなど)、嗅覚入力(図示されていない)を介した1人または複数の人間ユーザによる入力に応答し得る。ヒューマンインターフェースデバイスは、オーディオ(音声、音楽、環境音など)、画像(走査画像、写真画像は静止画像カメラから取得など)、ビデオ(2次元ビデオ、立体ビデオを含む3次元ビデオなど)など、必ずしも人間による意識的な入力に直接関連しない特定の媒体を取り込むためにも使用されることができる。
【0068】
入力ヒューマンインターフェースデバイスは、キーボード701、マウス702、トラックパッド703、タッチスクリーン710、データグローブ、ジョイスティック705、マイク706、スキャナ707、カメラ708のうちの1つまたは複数(それぞれの1つのみを図示)を含んでもよい。
【0069】
コンピュータシステム700はまた、特定のヒューマンインターフェース出力デバイスを含んでもよい。そのようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、および臭い/味を介して、1人または複数の人間ユーザの感覚を刺激している場合がある。そのようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン710、データグローブ、またはジョイスティック705による触覚フィードバックであるが、入力デバイスとして機能しない触覚フィードバックデバイスも存在することができる)を含み得る。例えば、そのようなデバイスは、音声出力デバイス(スピーカ709、ヘッドホン(図示せず)など)、視覚出力デバイス(CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン710など、それぞれタッチスクリーン入力機能の有無にかかわらず、それぞれ触覚フィードバック機能の有無にかかわらず、そのいくつかはステレオグラフィック出力などの手段を通して、2次元視覚出力または3次元を超える出力を出力できるものもある、仮想現実メガネ(図示せず)、ホログラフィックディスプレイ、およびスモークタンク(図示せず))、およびプリンタ(図示せず)であり得る。
【0070】
コンピュータシステム700はまた、人間がアクセス可能な記憶デバイスと、CD/DVDなどの媒体721を伴うCD/DVD ROM/RW720、サムドライブ722、リムーバブルハードドライブまたはソリッドステートドライブ723、テープやフロッピーディスク(図示されていない)などのレガシー磁気媒体、セキュリティドングル(図示されていない)などの専用ROM/ASIC/PLDベースのデバイスなどを含む光媒体などの記憶デバイスと関連付けられた媒体も含むことができる。
【0071】
当業者はまた、本開示の主題に関連して使用される「コンピュータ可読媒体」という用語が、伝送媒体、搬送波、または他の一時的な信号を包含しないことを理解するべきである。
【0072】
コンピュータシステム700はまた、1つまたは複数の通信ネットワークへのインターフェースも含むことができる。ネットワークは、例えば、無線、有線、光であり得る。ネットワークはさらに、ローカル、ワイドエリア、メトロポリタン、車両および産業用、リアルタイム、遅延耐性、などとすることができる。ネットワークの例には、イーサネットなどのローカルエリアネットワーク、無線LAN、GSM、3G、4G、5G、LTEなどを含むセルラネットワーク、ケーブルテレビ、衛星テレビおよび地上波テレビを含むテレビの有線または無線ワイドエリアデジタルネットワーク、CANBusを含む車両用および産業用などが含まれる。特定のネットワークは、一般に、特定の汎用データポートまたは周辺バス749(例えば、コンピュータシステム700のUSBポートなど)に接続された外部ネットワークインターフェースアダプタを必要とし、他のものは一般に、以下に記載されるようにシステムバスへの接続によってコンピュータシステム700のコアに統合される(例えば、PCコンピュータシステムへのイーサネットインターフェースまたはスマートフォンコンピュータシステムへのセルラネットワークインターフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム700は他のエンティティと通信することができる。そのような通信は、例えば、ローカルまたはワイドエリアデジタルネットワークを使用して、他のコンピュータシステムに対して、単方向、受信のみ(例えば、放送テレビ)、単方向送信のみ(例えば、特定のCANbusデバイスへのCANbus)、または双方向であることができる。そのような通信は、クラウドコンピューティング環境755への通信を含むことができる。特定のプロトコルおよびプロトコルスタックは、上述したように、それらのネットワークおよびネットワークインターフェースの各々で使用することができる。
【0073】
前述のヒューマンインターフェースデバイス、ヒューマンアクセス可能な記憶デバイス、およびネットワークインターフェース754は、コンピュータシステム700のコア740に接続することができる。
【0074】
コア740は、1つまたは複数の中央処理装置(CPU)741、グラフィックス処理装置(GPU)742、フィールドプログラマブルゲートエリア(FPGA)743の形態の特殊なプログラマブル処理装置、特定のタスクのためのハードウェアアクセラレータ744などを含むことができる。これらのデバイスは、読み出し専用メモリ(ROM)745、ランダムアクセスメモリ746、内部の非ユーザアクセス可能ハードドライブ、SSDなど747の内部大容量記憶部と共に、システムバス748を介して接続され得る。いくつかのコンピュータシステムでは、システムバス748は、追加のCPU、GPUなどによる拡張を可能にするために、1つまたは複数の物理プラグの形態でアクセス可能であることができる。周辺デバイスは、コアのシステムバス748に直接取り付けることも、周辺バス749を介して取り付けることもできる。周辺バス用のアーキテクチャには、PCI、USBなどが含まれる。グラフィックスアダプタ750は、コア740に含まれてもよい。
【0075】
CPU741、GPU742、FPGA743、およびアクセラレータ744は、組み合わさって前述のコンピュータコードを構成することができる特定の命令を実行することができる。そのコンピュータコードを、ROM745またはRAM746に記憶することができる。過渡的なデータをRAM746に記憶することもでき、一方永続的なデータを、例えば、内部大容量記憶部747に記憶することができる。メモリデバイスのいずれかへの高速記憶および取得を、1つまたは複数のCPU741、GPU742、大容量記憶部747、ROM745、RAM746などと密接に関連付けることができるキャッシュメモリの使用によって可能にすることができる。
【0076】
コンピュータ可読媒体は、様々なコンピュータ実装動作を実施するためのコンピュータコードをそこに有することができる。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構築されたものであることができ、またはコンピュータソフトウェア技術の当業者に周知の利用可能な種類のものであることができる。
【0077】
限定ではなく、例として、コンピュータシステム700に対応するアーキテクチャを有するコンピュータシステム、特にコア740は、1つまたは複数の有形のコンピュータ可読媒体で具現化されたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)の結果として機能を提供することができる。そのようなコンピュータ可読メディアは、上述したようなユーザアクセス可能な大容量記憶、ならびにコア内部大容量記憶部747やROM745などの非一時的な性質のものであるコア740の特定の記憶に関連付けられたメディアとすることができる。本開示の様々な実施形態を実施するソフトウェアを、そのようなデバイスに記憶し、コア740によって実行することができる。コンピュータ可読メディアは、特定の必要性に応じて、1つまたは複数のメモリデバイスまたはチップを含むことができる。ソフトウェアは、コア740、具体的にはコア中のプロセッサ(CPU、GPU、FPGAなどを含む)に、RAM746に記憶されたデータ構造を定義すること、およびソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を変更することを含む、本明細書に記載される特定のプロセスまたは特定のプロセスの特定の部分を実行させることができる。加えて、または代替として、コンピュータシステムは、本明細書に記載される特定のプロセスまたは特定のプロセスの特定の部分を実行するためにソフトウェアの代わりに、またはソフトウェアと一緒に動作することができる、回路において配線またはそれ以外の方法で具体化されたロジック(例えば、アクセラレータ744)の結果としての機能を提供することもできる。ソフトウェアへの言及は、必要に応じて、ロジックを包含することができ、その逆も同様である。コンピュータ可読媒体への言及は、必要に応じて、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のための論理を具現化する回路、またはその両方を包含することができる。本開示は、ハードウェアとソフトウェアの任意の適切な組合せを包含する。
【0078】
本開示は、いくつかの非限定的な実施形態を説明しているが、本開示の範囲内にある変更、順列、および様々な代替的な同等物が存在する。したがって、当業者は、本明細書に明示的に示されていない、または記載されていないが、本開示の原理を具体化し、したがってその趣旨および範囲内にある多数のシステムおよび方法を考案できることが理解されよう。
【符号の説明】
【0079】
100 通信システム、110~140 端末、150 通信ネットワーク、200 ストリーミングシステム、201 ビデオソース、202 サンプルストリーム、203 エンコーダ、204 ビデオビットストリーム、205 ストリーミングサーバ、206 ストリーミングクライアント、209 ビデオビットストリーム、210 ビデオデコーダ、211 発信ビデオサンプルストリーム、212 ディスプレイ、213 キャプチャサブシステム、300 フレームワーク、301 エンコーダ、305 入力メッシュ、310 UVアトラス、315 占有マップ、320 ジオメトリマップ、325 属性マップ、330 メタデータ、335 復号された占有マップ、生成された占有マップ、340 復号されたジオメトリマップ、345 復号された属性マップ、350 復号されたメタデータ、351 デコーダ、360 再構成されたメッシュ、400 一例示的な図、600 プロセス、700 コンピュータシステム、701 キーボード、702 マウス、703 トラックパッド、705 ジョイスティック、706 マイク、707 スキャナ、708 カメラ、709 スピーカ、710 タッチスクリーン、720 CD/DVD ROM/RW、721 CD/DVDなどの媒体、722 サムドライブ、723 リムーバブルハードドライブまたはソリッドステートドライブ、740 コア、741 中央処理装置、CPU、742 グラフィックス処理装置、GPU、743 フィールドプログラマブルゲートエリア、FPGA、744 ハードウェアアクセラレータ、745 読み出し専用メモリ、ROM、746 ランダムアクセスメモリ、RAM、747 コア内部大容量記憶部、748 システムバス、749 周辺バス、750 グラフィックスアダプタ、754 ネットワークインターフェース、755 クラウドコンピューティング環境
【手続補正書】
【提出日】2023-10-25
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
時間的に相関するUVアトラスを生成するための方法であって、前記方法は少なくとも1つのプロセッサによって実行され、前記方法は、
1つまたは複数の前のフレームに関連付けられたパーティション情報に基づいて現在のフレームに関連付けられた複数の一貫したUVチャートを生成するステップと、
前記複数の一貫したUVチャートの中の対応するUVチャートに1つまたは複数の非マニホールド頂点に関連付けられた1つまたは複数の入射面を割り当てるステップに基づいて、前記複数の一貫したUVチャートから前記1つまたは複数の非マニホールド頂点を除去するステップと、
前記複数の一貫したUVチャートと前記1つまたは複数の前のフレームに関連付けられた1つまたは複数の基準チャートの間の類似度に基づいて、前記複数の一貫したUVチャートのうちの2つ以上をマージするステップと、
前記複数の一貫したUVチャートを前記1つまたは複数の前のフレームに関連付けられた前記1つまたは複数の基準チャートと位置合わせするステップに基づいて、前記現在のフレームの時間的に相関するUVアトラスを生成するステップであって、位置合わせする前記ステップは、前記1つまたは複数の基準チャートに関連付けられたパッキング情報に基づく、ステップと
を含む、方法。
【請求項2】
前記パーティション情報は、前記1つまたは複数の前のフレームからの基準頂点および前記1つまたは複数の前のフレームからの基準チャートのうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項3】
前記現在のフレームを分割するための代表的な頂点は、前記1つまたは複数の前のフレームからの前記基準頂点に測地的に近い前記現在のフレームにおけるランドマーク頂点の中から選択される、請求項2に記載の方法。
【請求項4】
前記現在のフレームを分割するための代表的なチャートは、前記1つまたは複数の前のフレームに関連付けられた前記基準チャートの中から選択され、前記選択は、前記基準チャートにおける頂点の数、前記基準チャートにおける面の数、または前記基準チャートにおけるチャート領域の数のうちの少なくとも1つに基づく、請求項2に記載の方法。
【請求項5】
マージする前記ステップが、
前記1つまたは複数の基準チャートから推測された前記現在のフレームに関連付けられた各UVチャートにマージIDを割り当てるステップを含み、
前記1つまたは複数の前のフレームでマージされている前記1つまたは複数の基準チャートの中の基準チャートに基づいて、前記現在のフレームに関連付けられた前記複数の一貫したUVチャートの中のUVチャートのマージに同じマージIDが割り当てられる、
請求項1に記載の方法。
【請求項6】
マージする前記ステップが、前記同じマージIDを有する前記複数の一貫したUVチャートのうちの2つ以上をマージするステップをさらに含む、請求項5に記載の方法。
【請求項7】
マージする前記ステップは、前記複数の一貫したUVチャートの中の大きいUVチャートと、前記複数の一貫したUVチャートの中の小さいUVチャートとをマージするステップをさらに含み、前記大きいUVチャートと前記小さいUVチャートとをマージするステップは、前記マージされたUVチャートの面の数を変更せず、前記大きいUVチャートは、前記小さいUVチャートとは異なるマージIDを有する、請求項6に記載の方法。
【請求項8】
時間的に相関するUVアトラスを生成するためのデバイスであって、前記デバイスは、
プログラムコードを記憶するように構成された少なくとも1つのメモリと、
前記プログラムコードを読み取り、前記プログラムコードによって命令されるように動作するように構成された少なくとも1つのプロセッサとを備え、前記プログラムコードは、
前記少なくとも1つのプロセッサに、請求項1から7のいずれか一項に記載の方法を実行させる、デバイス。
【請求項9】
時間的に相関するUVアトラスを生成するためのデバイスの1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、
請求項1から7のいずれか一項に記載の方法を実行させる1つまたは複数の命令を含む、コンピュータプログラム。
【国際調査報告】