(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-21
(54)【発明の名称】メッシュ圧縮のための境界UV2XYZインデックスのコーディングの改善
(51)【国際特許分類】
H04N 19/597 20140101AFI20241114BHJP
【FI】
H04N19/597
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024527415
(86)(22)【出願日】2023-03-30
(85)【翻訳文提出日】2024-05-09
(86)【国際出願番号】 US2023016835
(87)【国際公開番号】W WO2023200600
(87)【国際公開日】2023-10-19
(32)【優先日】2022-04-15
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2023-03-28
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】シャン・ジャン
(72)【発明者】
【氏名】シャオジョン・シュ
(72)【発明者】
【氏名】チャオ・フアン
(72)【発明者】
【氏名】ジュン・ティアン
(72)【発明者】
【氏名】シャン・リュウ
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159PP03
5C159PP13
5C159RC11
5C159RC38
5C159UA02
5C159UA05
(57)【要約】
デコーダ内の少なくとも1つのプロセッサによって行われる方法は、三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信するステップを含む。方法は、圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、圧縮された2Dメッシュに含まれる現在の頂点を予測するステップをさらに含む。方法は、予測された現在の頂点に関連付けられた予測残差を導出するステップをさらに含む。方法は、予測された現在の頂点および導出された予測残差に基づいて、3Dボリュームオブジェクトに関連付けられた境界頂点を再構成するステップをさらに含む。
【特許請求の範囲】
【請求項1】
デコーダ内の少なくとも1つのプロセッサによって行われる方法であって、前記方法は、
三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信するステップと、
前記圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、前記圧縮された2Dメッシュに含まれる現在の頂点を予測するステップと、
前記予測された現在の頂点に関連付けられた予測残差を導出するステップと、
前記予測された現在の頂点および前記導出された予測残差に基づいて、前記3Dボリュームオブジェクトに関連付けられた境界頂点を再構成するステップとを含む、方法。
【請求項2】
前記補間ベースの階層予測方式は、(i)前記少なくとも1つのサンプリングされた頂点を使用する単方向予測を適用することによって前記圧縮された2Dメッシュに含まれる頂点を予測する第1の予測タイプ、ならびに(ii)前記少なくとも1つのサンプリングされた頂点および前記圧縮された2Dメッシュに含まれる他のサンプリングされた頂点を使用する双方向予測を適用することによって前記圧縮された2Dメッシュに含まれる前記頂点を予測する第2の予測タイプを含む、請求項1に記載の方法。
【請求項3】
前記現在の頂点は、前記少なくとも1つのサンプリングされた頂点が前記現在の頂点の前に予測される前記第1の予測タイプに従って予測される、請求項2に記載の方法。
【請求項4】
前記現在の頂点は前記第2の予測タイプに従って予測される、請求項2に記載の方法。
【請求項5】
前記少なくとも1つのサンプリングされた頂点は前記第1の予測タイプに従って予測され、前記他のサンプリングされた頂点は前記第1の予測タイプに従って予測される、請求項4に記載の方法。
【請求項6】
前記少なくとも1つのサンプリングされた頂点は前記第1の予測タイプに従って予測され、前記他のサンプリングされた頂点は前記第2の予測タイプに従って予測される、請求項4に記載の方法。
【請求項7】
前記少なくとも1つのサンプリングされた頂点と前記他のサンプリングされた頂点とは反対方向にある、請求項4に記載の方法。
【請求項8】
前記少なくとも1つのサンプリングされた頂点と前記他のサンプリングされた頂点との間の間隔は、前記コーディングされたビデオビットストリームに含まれる構文要素において指定される、請求項4に記載の方法。
【請求項9】
前記予測残差はN点1-D変換に従って導出される、請求項1に記載の方法。
【請求項10】
前記予測残差はN×N 2-D変換に従って導出される、請求項1に記載の方法。
【請求項11】
プログラムコードを記憶するように構成された少なくとも1つのメモリと、
前記プログラムコードを読み出し、前記プログラムコードによって命令されるように動作するように構成された少なくとも1つのプロセッサであって、前記プログラムコードは、
前記少なくとも1つのプロセッサに、三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信させるように構成された受信コードと、
前記少なくとも1つのプロセッサに、前記圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、前記圧縮された2Dメッシュに含まれる現在の頂点を予測させるように構成された予測コードと、
前記少なくとも1つのプロセッサに、前記予測された現在の頂点に関連付けられた予測残差を導出させるように構成された導出コードと、
前記少なくとも1つのプロセッサに、前記予測された現在の頂点および前記導出された予測残差に基づいて、前記3Dボリュームオブジェクトに関連付けられた境界頂点を再構成させるように構成された再構成コードとを含む、少なくとも1つのプロセッサと
を含む、デコーダ。
【請求項12】
前記補間ベースの階層予測方式は、(i)前記少なくとも1つのサンプリングされた頂点を使用する単方向予測を適用することによって前記圧縮された2Dメッシュに含まれる頂点を予測する第1の予測タイプ、ならびに(ii)前記少なくとも1つのサンプリングされた頂点および前記圧縮された2Dメッシュに含まれる他のサンプリングされた頂点を使用する双方向予測を適用することによって前記圧縮された2Dメッシュに含まれる前記頂点を予測する第2の予測タイプを含む、請求項11に記載のデコーダ。
【請求項13】
前記現在の頂点は、前記少なくとも1つのサンプリングされた頂点が前記現在の頂点の前に予測される前記第1の予測タイプに従って予測される、請求項12に記載のデコーダ。
【請求項14】
前記現在の頂点は前記第2の予測タイプに従って予測される、請求項12に記載のデコーダ。
【請求項15】
前記少なくとも1つのサンプリングされた頂点は前記第1の予測タイプに従って予測され、前記他のサンプリングされた頂点は前記第1の予測タイプに従って予測される、請求項14に記載のデコーダ。
【請求項16】
前記少なくとも1つのサンプリングされた頂点は前記第1の予測タイプに従って予測され、前記他のサンプリングされた頂点は前記第2の予測タイプに従って予測される、請求項14に記載のデコーダ。
【請求項17】
前記少なくとも1つのサンプリングされた頂点と前記他のサンプリングされた頂点とは反対方向にある、請求項14に記載のデコーダ。
【請求項18】
前記少なくとも1つのサンプリングされた頂点と前記他のサンプリングされた頂点との間の間隔は、前記コーディングされたビデオビットストリームに含まれる構文要素において指定される、請求項14に記載のデコーダ。
【請求項19】
前記予測残差はN点1-D変換に従って導出される、請求項11に記載のデコーダ。
【請求項20】
命令を記憶している非一時的コンピュータ可読媒体であって、前記命令は、デコーダ内の少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに、
三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信することと、
前記圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、前記圧縮された2Dメッシュに含まれる現在の頂点を予測することと、
前記予測された現在の頂点に関連付けられた予測残差を導出することと、
前記予測された現在の頂点および前記導出された予測残差に基づいて、前記3Dボリュームオブジェクトに関連付けられた境界頂点を再構成することとを実行させる、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2022年4月15日に出願された米国仮特許出願第63/331,705号および2023年3月28日に出願された米国特許出願第18/191,600号の優先権を主張し、これらの開示はその全体が参照により本明細書に組み込まれる。
【0002】
本開示は、高度なビデオコーディング技術のセットを対象とする。より具体的には、本開示は、効率的なメッシュ圧縮のための境界頂点のUV情報の方法を含むビデオベースのメッシュ圧縮を対象とする。
【背景技術】
【0003】
世界の高度な三次元(3D)表現は、より没入型のインタラクションおよび通信を可能にしている。3D表現における臨場感を実現するために、3Dモデルは、これまで以上に洗練されてきており、かなりの量のデータがこれらの3Dモデルの作成および消費に結び付けられる。3Dメッシュが3Dモデル没入型コンテンツに広く使用される。
【0004】
3Dメッシュは、ボリュームオブジェクトの表面を記述するいくつかのポリゴンから構成されうる。動的メッシュシーケンスは、メッシュシーケンスが経時的に変化するかなりの量の情報を有しうるので、大量のデータを必要としうる。したがって、そのようなコンテンツを記憶および伝送するために効率的な圧縮技術が必要とされる。
【0005】
メッシュ圧縮規格IC、MESHGRID、FAMCは、常時接続性および時変ジオメトリおよび頂点属性を有する動的メッシュに対処するために以前に開発された。しかしながら、これらの規格は、時変属性マップおよび接続性情報を考慮に入れない。
【0006】
さらに、特にリアルタイム制約下で、ボリューム取得技術が常時接続性動的メッシュを生成することも困難である。このタイプの動的メッシュコンテンツは、既存の規格によってサポートされていない。
【発明の概要】
【課題を解決するための手段】
【0007】
1つまたは複数の実施形態によれば、デコーダにおいて少なくとも1つのプロセッサによって行われる方法は、三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信するステップを含む。方法は、圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、圧縮された2Dメッシュに含まれる現在の頂点を予測するステップを含む。方法は、予測された現在の頂点に関連付けられた予測残差を導出するステップを含む。方法は、予測された現在の頂点および導出された予測残差に基づいて、3Dボリュームオブジェクトに関連付けられた境界頂点を再構成するステップをさらに含む。
【0008】
1つまたは複数の実施形態によれば、デコーダは、プログラムコードを記憶するように構成された少なくとも1つのメモリと、プログラムコードを読み出し、プログラムコードによって命令されるように動作するように構成された少なくとも1つのプロセッサとを含む。プログラムコードは、少なくとも1つのプロセッサに、三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信させるように構成された受信コード、を含む。プログラムコードは、少なくとも1つのプロセッサに、圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、圧縮された2Dメッシュに含まれる現在の頂点を予測させるように構成された予測コードを含む。プログラムコードは、少なくとも1つのプロセッサに、予測された現在の頂点に関連付けられた予測残差を導出させるように構成された導出コードを含む。プログラムコードは、少なくとも1つのプロセッサに、予測された現在の頂点および導出された予測残差に基づいて、3Dボリュームオブジェクトに関連付けられた境界頂点を再構成させるように構成された再構成コードを含む。
【0009】
1つまたは複数の実施形態によれば、命令を記憶している非一時的コンピュータ可読媒体であって、命令は、デコーダ内の少なくとも1つのプロセッサによって実行されると、デコーダに、三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信することを実行させる、非一時的コンピュータ可読媒体。命令は、少なくとも1つのプロセッサに、圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、圧縮された2Dメッシュに含まれる現在の頂点を予測することをさらに実行させる。命令は、少なくとも1つのプロセッサに、予測された現在の頂点に関連付けられた予測残差を導出することをさらに実行させる。命令は、少なくとも1つのプロセッサに、予測された現在の頂点および導出された予測残差に基づいて、3Dボリュームオブジェクトに関連付けられた境界頂点を再構成することをさらに実行させる。
【0010】
開示の主題のさらなる特徴、性質、および様々な利点は、以下の詳細な説明および添付の図面からより明らかなるであろう。
【図面の簡単な説明】
【0011】
【
図1】本開示の実施形態による、通信システムのブロック図の概略図である。
【
図2】本開示の実施形態による、ストリーミングシステムのブロック図の概略図である。
【
図3】本開示の実施形態による、ビデオエンコーダおよびビデオデコーダのブロック図の概略図である。
【
図4】本開示の実施形態による、3Dメッシュセグメントから2Dチャート上へのUVパラメータ化マッピングの一例を例示する。
【
図5】3Dメッシュセグメントが複数の別々のチャートにマッピングされる異なるUVパラメータ化の一例を例示する。
【
図6】本開示の実施形態による、複数のチャートを有する例示的な2D UVアトラスを例示する。
【
図7】本開示の実施形態による、2Dパッチにおける境界頂点の一例を例示する。
【
図8】本開示の実施形態による、UV平面上のサンプリング座標の一例を例示する。
【
図9】本開示の実施形態による、補間ベースの階層予測方式の一例を例示する。
【
図10】本開示の実施形態による、境界頂点を再構成するための例示的なプロセスを例示する。
【
図11】本開示の実施形態を実装するのに適したコンピュータシステムの図である。
【発明を実施するための形態】
【0012】
例示的な実施形態の以下の詳細な説明は、添付の図面を参照する。異なる図面における同じ参照番号は、同じかまたは類似の要素を識別しうる。
【0013】
前述の開示は、例示および説明を提供しているが、網羅的であることも、実装形態を開示される厳密な形態に限定することも意図されていない。修正形態および変形形態が上記の開示に照らして可能であり、または実装形態の実践から取得されてもよい。さらに、ある実施形態の1つまたは複数の特徴または構成要素が、他の実施形態(または他の実施形態の1つもしくは複数の特徴)に組み込まれるか、またはそれと組み合わされてもよい。加えて、以下に提供される動作のフローチャートおよび説明では、1つまたは複数の動作が省略されてもよく、1つまたは複数の動作が追加されてもよく、1つまたは複数の動作が同時に(少なくとも部分的に)行われてもよく、1つまたは複数の動作の順序が入れ替えられてもよいことが理解される。
【0014】
本明細書で説明されるシステムおよび/または方法は、ハードウェア、ファームウェア、またはハードウェアとソフトウェアとの組合せの異なる形態で実装されてもよいことは明らかであろう。これらのシステムおよび/または方法を実装するために使用される実際の専用の制御ハードウェアまたはソフトウェアコードは、実装形態を限定するものではない。よって、システムおよび/または方法の動作ならびに挙動は、特定のソフトウェアコードを参照することなく本明細書で説明されており、ソフトウェアおよびハードウェアは、本明細書の説明に基づいてシステムおよび/または方法を実装するように設計されうることが理解される。
【0015】
特徴の特定の組合せが、特許請求の範囲に記載され、かつ/または本明細書に開示されていても、これらの組合せは、可能な実装形態の開示を限定することを意図されたものではない。実際、これらの特徴の多くは、特許請求の範囲に具体的に記載されておらず、かつ/または本明細書に開示されていないやり方で組み合わされてもよい。以下に列挙されている各従属請求項は1つの請求項のみに直接従属しうるが、可能な実装形態の開示は、請求項セット内の他のすべての請求項との組合せで各従属請求項を含む。
【0016】
本明細書で使用される要素、動作、または命令は、そのように明示的に説明されていない限り、重要または必須であると解釈されるべきではない。また、本明細書で使用される場合、冠詞「a」および「an」は、1つまたは複数の項目を含むことを意図されており、「1つまたは複数」と交換可能に使用されてもよい。1つの項目のみが意図されている場合、「1つ」という用語または同様の言葉が使用される。また、本明細書で使用される場合、「有する(has)」、「有する(have)」、「有する(having)」、「含む(include)」、「含む(including)」などの用語は、オープンエンドの用語であることを意図されている。さらに、「に基づいて」という句は、特に明記されない限り、「に少なくとも部分的に基づいて」を意味することを意図されている。さらに、「[A]および[B]の少なくとも一方」または「[A]または[B]の少なくとも一方」などの表現は、Aのみ、Bのみ、またはAとBの両方を含むと理解されるべきである。
【0017】
本明細書を通して、「ある実施形態」、「一実施形態」、または同様の表現への言及は、指示される実施形態に関連して説明される特定の特徴、構造、または特性が、本解決策の少なくとも1つの実施形態に含まれることを意味する。よって、「ある実施形態では」、「一実施形態では」という句、および類似の言葉は、本明細書全体を通して、必ずしもそうとは限らないが、すべて同じ実施形態を指す場合がある。
【0018】
さらに、本開示の説明される特徴、利点、および特性は、1つまたは複数の実施形態において任意の適切なやり方で組み合わされてもよい。当業者は、本明細書の説明に照らして、本開示が、特定の実施形態の特定の特徴または利点のうちの1つまたは複数なしでも実施されうることを認めるであろう。他の例では、本開示のすべての実施形態には存在しない可能性がある付加的な特徴および利点が、特定の実施形態において認められる場合がある。
【0019】
本開示の実施形態は、メッシュを圧縮することを対象とする。メッシュは、ボリュームオブジェクトの表面を記述するいくつかのポリゴンから構成されうる。3D空間内のメッシュの頂点および頂点がどのように接続されているかの情報は各ポリゴンを定義し、接続性情報と呼ばれうる。任意選択で、色、法線などといった頂点属性が、メッシュ頂点に関連付けられてもよい。属性はまた、メッシュを2D属性マップでパラメータ化するマッピング情報を利用することによって、メッシュの表面に関連付けられてもよい。そのようなマッピングは、UV座標またはテクスチャ座標と呼ばれるパラメトリック座標のセットを使用して定義され、メッシュ頂点に関連付けられうる。2D属性マップは、テクスチャ、法線、変位などといった高解像度属性情報を記憶するために使用されうる。高解像度属性情報は、テクスチャマッピングやシェーディングなどの様々な目的に使用されうる。
【0020】
上記のように、3Dメッシュまたは動的メッシュは、経時的に変化するかなりの量の情報からなりうるので、大量のデータを必要としうる。既存の規格は、時変属性マップおよび接続性情報を考慮に入れない。既存の規格はまた、特にリアルタイム条件下で、常時接続性動的メッシュを生成するボリューム取得技術もサポートしていない。
【0021】
したがって、時変接続性情報および任意選択で時変属性マップを有する動的メッシュを直接扱うための新たなメッシュ圧縮規格が必要である。本開示の実施形態は、そのような動的メッシュを記憶および伝送するための効率的な圧縮技術を可能にする。本開示の実施形態は、リアルタイム通信、記憶、自由視点ビデオ、ARおよびVRなどの様々な用途のための不可逆圧縮および/または可逆圧縮を可能にする。
【0022】
本開示の1つまたは複数の実施形態によれば、動的メッシュ圧縮のための方法、システム、および非一時的記憶媒体が提供される。本開示の実施形態はまた、メッシュのただ1つのフレームまたはメッシュコンテンツが経時的に変化しない静的メッシュにも適用されうる。
【0023】
図1~
図2を参照すると、本開示のエンコーディングおよびデコーディングの構造を実装するための本開示の1つまたは複数の実施形態が説明されている。
【0024】
図1は、本開示の一実施形態による通信システム100の簡略ブロック図を例示している。システム100は、ネットワーク150を介して相互接続された少なくとも2つの端末110、120を含みうる。データの単方向伝送の場合、第1の端末110は、メッシュデータを含みうるビデオデータを、ネットワーク150を介して他方の端末120に送信するためにローカル位置でコーディングしうる。第2の端末120は、ネットワーク150から他方の端末のコーディングされたビデオデータを受信し、コーディングされたデータをデコーディングし、復元されたビデオデータを表示しうる。単方向データ伝送は、メディアサービング用途などにおいて一般的でありうる。
【0025】
図1は、例えばビデオ会議中に発生しうるコーディングされたビデオの双方向伝送をサポートするために設けられた端末130、140の第2のペアを例示している。データの双方向伝送の場合、各端末130、140は、ネットワーク150を介して他方の端末に送信するためにローカル位置で取り込まれたビデオデータをコーディングしうる。各端末130、140はまた、他方の端末によって送信されたコーディングされたビデオデータを受信し、コーディングされたデータをデコーディングし、復元されたビデオデータをローカルディスプレイデバイスに表示しうる。
【0026】
図1において、端末110~140は、例えば、サーバ、パーソナルコンピュータ、およびスマートフォン、ならびに/または任意の他のタイプの端末であってもよい。例えば、端末(110~140)は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤおよび/または専用のビデオ会議機器であってもよい。ネットワーク150は、例えば、有線および/または無線通信ネットワークを含む、端末110~140間でコーディングされたビデオデータを伝達する任意の数のネットワークを表す。通信ネットワーク150は、回線交換チャネルおよび/またはパケット交換チャネルでデータを交換しうる。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、および/またはインターネットを含む。本考察の目的では、ネットワーク150のアーキテクチャおよびトポロジーは、本明細書で以下に説明されない限り、本開示の動作にとって重要ではない場合がある。
【0027】
図2は、開示の主題についての用途の一例として、ストリーミング環境におけるビデオエンコーダおよびビデオデコーダの配置を例示している。開示の主題は、例えば、ビデオ会議、デジタルテレビ、CD、DVD、メモリスティックなどを含むデジタルメディアへの圧縮ビデオの記憶などを含む他のビデオ対応用途で使用されてもよい。
【0028】
図2に例示されるように、ストリーミングシステム200は、ビデオソース201およびエンコーダ203を含むキャプチャサブシステム213を含みうる。ストリーミングシステム200は、少なくとも1つのストリーミングサーバ205および/または少なくとも1つのストリーミングクライアント206をさらに含んでもよい
【0029】
ビデオソース201は、例えば、3Dメッシュおよび3Dメッシュに関連付けられたメタデータを含むストリーム202を作成しうる。3Dメッシュは、ボリュームオブジェクトの表面を記述するいくつかのポリゴンから構成されうる。例えば、3Dメッシュは、各頂点が3D座標(例えば、x、y、z)に関連付けられている3D空間内の複数の頂点を含んでもよい。ビデオソース201は、例えば、3Dセンサ(例えば、深度センサ)または3Dイメージング技術(例えば、(1つもしくは複数の)デジタルカメラ)と、3Dセンサまたは3Dイメージング技術から受信されたデータを使用して3Dメッシュを生成するように構成されたコンピューティングデバイスとを含んでもよい。サンプルストリーム202は、エンコーディングされたビデオビットストリームと比較して高いデータ量を有する可能性があり、ビデオソース201に結合されたエンコーダ203によって処理されうる。エンコーダ203は、以下でより詳細に説明されるように、開示の主題の態様を可能にするかまたは実装するために、ハードウェア、ソフトウェア、またはそれらの組合せを含んでもよい。エンコーダ203はまた、エンコーディングされたビデオビットストリーム204をさらに生成しうる。エンコーディングされたビデオビットストリーム204は、圧縮されていないストリーム202と比較して低いデータ量を有する可能性があり、後で使用するためにストリーミングサーバ205上に記憶されうる。1つまたは複数のストリーミングクライアント206は、ストリーミングサーバ205にアクセスして、エンコーディングされたビデオビットストリーム204のコピーでありうるビデオビットストリーム209を取り出しうる。
【0030】
ストリーミングクライアント206は、ビデオデコーダ210およびディスプレイ212を含みうる。ビデオデコーダ210は、例えば、エンコーディングされたビデオビットストリーム204の入力されるコピーである、ビデオビットストリーム209をデコーディングし、ディスプレイ212または他のレンダリングデバイス(図示せず)上にレンダリングされうる、出力されるビデオサンプルストリーム211を作成してもよい。一部のストリーミングシステムでは、ビデオビットストリーム204、209は、特定のビデオコーディング/圧縮規格に従ってエンコーディングされうる。
【0031】
図3は、エンコーダおよびデコーダを使用した動的メッシュ圧縮およびメッシュ再構成のためのフレームワーク300の例示的な図である。
【0032】
図3に見られるように、フレームワーク300は、エンコーダ301およびデコーダ351を含みうる。エンコーダ301は、1つまたは複数の入力メッシュ305、1つまたは複数のUVアトラスを有するメッシュ310、占有マップ315、ジオメトリマップ320、属性マップ325、およびメタデータ330を含みうる。デコーダ351は、デコーディングされた占有マップ335、デコーディングされたジオメトリマップ340、デコーディングされた属性マップ345、デコーディングされたメタデータ350、および再構成されたメッシュ360を含みうる。
【0033】
本開示の1つまたは複数の実施形態によれば、入力メッシュ305は、1つまたは複数のフレームを含んでもよく、1つまたは複数のフレームの各々は、一連の動作によって前処理され、UVアトラスを有するメッシュ310を生成するために使用されうる。一例として、前処理動作は、トラッキング、パラメータ化、再メッシュ化、ボクセル化などを含み得るが、これらに限定されなくてもよい。いくつかの実施形態では、前処理動作は、エンコーダ側でのみ行われ、デコーダ側では行われなくてもよい。
【0034】
UVアトラスを有するメッシュ310は2Dメッシュでありうる。2Dメッシュは、2D空間内の座標(例えば2D座標)と各々関連付けられた頂点のチャートでありうる。2Dメッシュ内の各頂点は3Dメッシュ内の対応する頂点に関連付けられていてもよく、3Dメッシュ内の頂点は3D空間内の座標に関連付けられている。圧縮された2Dメッシュは、圧縮されていない2Dメッシュと比較して情報が減少した2Dメッシュのバージョンでありうる。例えば、2Dメッシュは、圧縮された2Dメッシュがサンプリングされた点を含むサンプリングレートでサンプリングされてもよい。UVアトラスを有する2Dメッシュは、メッシュの各頂点が2Dアトラス上のUV座標に関連付けられうるメッシュでありうる。例えば、2Dアトラスは、3D空間内の各3D座標が2D平面内の2D座標に割り当てられうる二次元平面であってもよい。接続された2D座標は、2Dチャートまたはパッチと呼ばれうる。UVアトラスを有するメッシュ310は、サンプリングに基づいて処理され、複数のマップに変換されうる。一例として、UVアトラス310は、UVアトラスを有する2Dメッシュのサンプリングに基づいて処理され、占有マップ、ジオメトリマップ、および属性マップに変換されてもよい。生成された占有マップ335、ジオメトリマップ340、および属性マップ345は、適切なコーデック(例えば、HVEC、VVC、AV1、AVS3など)を使用してエンコーディングされ、デコーダに送信されうる。いくつかの実施形態では、メタデータ(例えば、接続性情報など)もデコーダに送信されうる。
【0035】
いくつかの実施形態では、デコーダ側で、デコーディングされた2Dマップからメッシュが再構成されうる。再構成されたメッシュに対して後処理およびフィルタリングも適用されうる。いくつかの例では、メタデータは、3Dメッシュ再構成を目的としてデコーダ側にシグナリングされてもよい。占有マップは、各パッチの境界頂点がシグナリングされる場合にデコーダ側から推測されうる。
【0036】
一態様によれば、デコーダ351は、エンコーダからエンコーディングされた占有マップ、ジオメトリマップ、および属性マップを受信しうる。デコーダ315は、本明細書で説明される実施形態に加えて、適切な技術および方法を使用して、占有マップ、ジオメトリマップ、および属性マップをデコーディングしてもよい。いくつかの実施形態では、デコーダ351は、デコーディングされた占有マップ335、デコーディングされたジオメトリマップ340、デコーディングされた属性マップ345、およびデコーディングされたメタデータ350を生成しうる。入力メッシュ305は、1つまたは複数の再構成フィルタおよび技術を使用して、デコーディングされた占有マップ335、デコーディングされたジオメトリマップ340、デコーディングされた属性マップ345、およびデコーディングされたメタデータ350に基づいて、再構成されたメッシュ360に再構成されうる。いくつかの実施形態では、メタデータ330はデコーダ351に直接送信されてもよく、デコーダ351は、メタデータを使用して、デコーディングされた占有マップ335、デコーディングされたジオメトリマップ340、およびデコーディングされた属性マップ345に基づいて、再構成されたメッシュ360を生成しうる。再メッシュ化、パラメータ化、トラッキング、ボクセル化などを含むがこれらに限定されない、ポストフィルタリング技術もまた、再構成されたメッシュ360に対して適用されうる。
【0037】
いくつかの実施形態によれば、3Dメッシュは、いくつかのセグメント(またはパッチ/チャート)に分割されうる。各セグメントは、それらのジオメトリ、属性、および接続性情報に関連付けられた接続頂点のセットから構成されうる。
図4に例示されるように、UVパラメータ化プロセスは、メッシュセグメント400を2D UVアトラス内の2Dチャート(402、404)上にマッピングする。メッシュセグメント内の各頂点には、2D UVアトラス内の2D UV座標が割り当てられうる。2Dチャート内の頂点は、それらの3D対応頂点として接続構成要素を形成しうる。各頂点のジオメトリ、属性、および接続性情報もまた、それらの3D対応ジオメトリ、属性、および接続性情報から継承されうる。
【0038】
いくつかの実施形態によれば、3Dメッシュセグメントはまた、複数の別々の2Dチャートにもマッピングされうる。3Dメッシュセグメントが別々の2Dチャートにマッピングされる場合、3Dメッシュセグメント内の頂点は、2D UVアトラス内の複数の頂点に対応してもよい。
図5に例示されるように、3Dメッシュセグメント400に対応しうる、3Dメッシュセグメント500は、2D UVアトラスにおいて、単一のチャートの代わりに、2つの2Dチャート(502A、502B)にマッピングされてもよい。
図5に例示されるように、3D頂点v
1およびv
4は、それぞれ、2つの2D対応頂点v
1’およびv
4’を有する。
【0039】
図6は、複数のチャートを含む3Dメッシュの一般的な2D UVアトラス600の例を例示しており、各チャートは、それらの3Dジオメトリ、属性、および接続性情報に関連付けられた複数の(例えば、3つ以上の)頂点を含みうる。
【0040】
境界頂点は、2D UV空間内で定義されうる。
図7に示されるように、塗りつぶされた頂点は、接続構成要素(パッチ/チャート)の境界エッジ上にあるため、境界頂点である。境界エッジは、そのエッジが1つの三角形にのみ現れるかどうかをチェックすることによって決定されうる。ジオメトリ情報(例えば、3D xyz座標)および2D UV座標は、ビットストリームでシグナリングされうる。
【0041】
動的メッシュシーケンスは、メッシュシーケンスが経時的に変化するかなりの量の情報から構成されうるので、大量のデータを必要としうる。特に、境界情報は、メッシュ全体のかなりの部分を表す。したがって、境界情報を効率的に圧縮するためには効率的な圧縮技術が必要である。
【0042】
本開示の実施形態は、別々に使用されても、任意の順序で組み合わされてもよい。さらに、方法(または実施形態)、エンコーダ、およびデコーダの各々は、処理回路(例えば、1つまたは複数のプロセッサや1つまたは複数の集積回路)によって実装されてもよい。一例では、1つまたは複数のプロセッサは、非一時的コンピュータ可読媒体に記憶されたプログラムを実行する。
【0043】
本開示の実施形態によれば、メッシュ圧縮におけるパッチ境界のUV座標のコーディングのためのいくつかの方法が提案される。方法は、個別に適用されても、任意の形態の組合せによって適用されてもよいことに留意されたい。方法は、メッシュのただ1つのフレームがあるか、またはメッシュコンテンツが経時的に変化しない静的メッシュに適用されてもよいことにも留意されたい。さらに、同様の方法は、深度画像/属性画像/テクスチャ画像などのコーディングに拡張されてもよい。
【0044】
いくつかの実施形態によれば、2D UVアトラスを有する入力メッシュは頂点を有しえ、メッシュの各頂点は、2Dアトラス上の関連付けられたUV座標を有しうる。占有マップ、ジオメトリマップ、および属性マップは、UVアトラス上の1つまたは複数の点/位置をサンプリングすることによって生成されうる。各サンプル位置は、その位置がメッシュ頂点によって定義されたポリゴンの内側にある場合、占有される場合も占有されない場合もある。各占有サンプルについて、関連付けられたポリゴン頂点から補間することによって、そのサンプルの対応する3Dジオメトリ座標および属性を計算しうる。
【0045】
本開示の一態様によれば、サンプリングレートは、2Dアトラス全体にわたって一貫していてもよい。いくつかの実施形態では、u軸およびv軸のサンプリングレートは異なっていてもよく、異方性再メッシュ化を可能にする。いくつかの実施形態では、2Dアトラス全体が、スライスやタイルなどの複数の領域に分割されてもよく、そのような各領域が異なるサンプリングレートを有してもよい。
【0046】
本開示の1つまたは複数の実施形態によれば、各領域(または2Dアトラス全体)のサンプリングレートは、シーケンスヘッダ、フレームヘッダ、スライスヘッダなどを含むがこれらに限定されない、ハイレベル構文でシグナリングされうる。いくつかの実施形態では、各領域(または2Dアトラス全体)のサンプリングレートは、エンコーダとデコーダの両方によって想定されている予め確立されたレートのセットから選択されうる。予め確立されたレートのセットはエンコーダとデコーダの両方によって既知でありうるため、1つの特定のサンプリングレートのシグナリングは、予め確立されたレートセット内のインデックスをシグナリングしさえすればよい。そのような予め確立されたセットの例は、2ピクセルごと、4ピクセルごと、8ピクセルごとなどでありうる。いくつかの実施形態では、メッシュフレームの各領域(または2Dアトラス全体)のサンプリングレートは、予め確立されたレートセットから、同じフレームの他のすでにコーディングされた領域内の前に使用されたサンプリングレートから、または他のすでにコーディングされたメッシュフレーム内での前に使用されたサンプリングレートから予測されうる。
【0047】
いくつかの実施形態では、各領域(または2Dアトラス全体)のサンプリングレートは、各領域(または2Dアトラス全体)の何らかの特性に基づくものでありうる。一例として、サンプルレートはアクティビティに基づいてもよく、リッチテクスチャ領域(もしくは2Dアトラス全体)、または高アクティビティの領域(もしくは2Dアトラス全体)の場合、サンプルレートは高く設定されうる。他の例として、滑らかな領域(もしくは2Dアトラス全体)、または低アクティビティの領域(もしくは2Dアトラス全体)の場合、サンプルレートは低く設定されうる。
【0048】
いくつかの実施形態では、メッシュフレームの各領域(または2Dアトラス全体)のサンプリングレートは、予測と直接シグナリングとの組合せが可能とされうるやり方でシグナリングされうる。構文は、サンプリングレートが予測されるかそれとも直接シグナリングされるかを指示するように構造化されうる。予測される場合、どの予測子サンプリングレートが使用されるべきかがさらにシグナリングされうる。直接シグナリングされる場合、レートの値を表す構文がシグナリングされうる。
【0049】
図8は、UV平面800上のサンプリング座標の例を示しており、テクスチャ点V1、V2、およびV3は境界頂点のUV座標である。UV平面全体は、一定のサンプル間隔でサンプリングされうる。
図8の2つの隣接サンプル間の距離(例えば、元のサンプル数を単位とした)は、サンプリングステップ(またはサンプリングレート)と呼ばれうる。これらの頂点の元のUV座標は、V1の元の位置など、UV平面上のサンプリング位置に厳密には当てはまらない場合がある。最も近いサンプリング座標V1’は、圧縮における予測子として使用されうる。
【0050】
境界頂点のUV座標は、例えば、サンプリング座標およびオフセットを含む2つの部分でコーディングされうる。
図8では、座標(u
i,v
i)は、パッチの境界頂点の元のUV座標であってもよく、i=0、1、…、N-1、Nは、チャート内の境界頂点の数である。チャートのサンプリングレートはSで表されうる。UV平面800をサンプリングした後、境界頂点のサンプリング座標
【数1】
は、(u
i,v
i)をサンプリングレートで除算し、続いて丸めを行うことによって計算されうる。例えば、丸めは、以下のように行われうる。
【数2】
【0051】
1つまたは複数の例では、床演算または天井演算などの様々な丸め演算はまた、サンプリング座標を計算するときに除算後に適用されうる。境界頂点のUV座標のオフセット
【数3】
は、以下のように計算されうる。
【数4】
【0052】
したがって、
図8の境界頂点V1のオフセットは、以下のように計算されうる。
【数5】
【0053】
1つまたは複数の例では、サンプリング座標とオフセットの両方が、可逆または不可逆コーディングによってコーディングされうる。再構成されたサンプリング座標およびオフセットは、それぞれ、
【数6】
および
【数7】
と表されうる。デコーダ側では、境界頂点の再構成されたUV座標(例えば、
【数8】
)は、以下のように導出されうる。
【数9】
【0054】
いくつかの実施形態によれば、前のコーディングされたサンプリング座標が、現在のサンプリング座標を予測するために使用されうる。1つまたは複数の実施形態では、同じ境界ループ上の頂点のUV座標は、順番に一緒にコーディングされうる。デコーディング順序で現在の頂点より前にある1つの頂点のUV座標は、現在のUV座標の予測子として使用されうる。現在の境界頂点の予測されるサンプリング座標は、
【数10】
と表されうる。この目的で異なる予測技術が適用されてもよい。
【0055】
1つまたは複数の実施形態では、前にコーディングされたサンプリング座標が、以下のように現在の座標の予測に使用されうる。
【数11】
【0056】
1つまたは複数の実施形態では、2つの前にコーディングされたサンプリング座標が、現在の座標を予測するために使用されうる。例えば、現在の座標は、以下のように線形予測を用いて2つの以前にコーディングされたサンプリング座標を使用して予測されうる。
【数12】
【0057】
1つまたは複数の例では、より高次の多項式による予測も採用されうる。
【0058】
1つまたは複数の実施形態によれば、補間ベースの階層予測方式がサンプリングUV座標に使用されうる。
図9は、サンプリングされた頂点のセット900を例示している。1つまたは複数の例では、第1の予測タイプは、単方向予測(例えば、太い矢印)によるコーディング頂点(例えば、塗りつぶされた頂点)を含む。例えば、
図9に例示されるように、頂点902A~902Dは、第1の予測タイプに従ってコーディングされる。1つまたは複数の例では、前のコーディングされた塗りつぶし頂点の任意の組合せ(例えば、加重和)が、現在の塗りつぶし頂点の予測に使用されうる。例えば、
図9に例示されるように、頂点902Aは、頂点902Bを予測するために使用される。1つまたは複数の例では、塗りつぶし頂点間の間隔は、エンコーダとデコーダの両方に対して固定されてもよく、または異なるレベルでビットストリーム内でシグナリングされてもよい。例えば、異なる間隔が、異なるフレームに対して、または異なるチャートに対して使用されてもよい。
【0059】
いくつかの実施形態によれば、第2の予測方式は、双方向予測を適用することを含み、予測は、2つのコーディングされた頂点から導出されうる。例えば、
図9に例示されるように、頂点904A~904H(例えば、破線の頂点)は、第2の予測方式に基づいて予測される。破線の頂点の予測は、塗りつぶし頂点および/または破線の頂点に基づくものでありうる。1つまたは複数の例では、前のコーディングされた頂点の任意の組合せ(例えば、加重和)が、現在の破線の頂点の予測に使用されうる。1つまたは複数の例では、破線の頂点の最後のグループ(例えば、904Gおよび904H)は、最初の塗りつぶし頂点(例えば、902A)から予測されうる。
図9に例示されるように、破線の頂点は、反対方向の2つの隣接する塗りつぶし頂点の線形補間から予測されうる。1つまたは複数の例では、予測を導出するために任意の補間方法が使用しされてもよく、2つの頂点の距離は、それらの間の頂点の数によって定義されうる。
【0060】
1つまたは複数の実施形態によれば、現在の座標(例えば、現在の頂点)が予測された後、サンプリング座標の予測残差は、以下のように導出されうる。
【数13】
【0061】
予測残差は、1つまたは複数の異なる方法によってコーディングされてもよい。1つまたは複数の実施形態では、予測残差は固定長コーディングによってコーディングされうる。ビット長は、すべてのパッチに対してハイレベル構文テーブルにおいてコーディングされてもよいし、または各パッチに対して異なるようにコーディングされてもよい。1つまたは複数の実施形態では、予測残差は指数ゴロムコーディングによってコーディングされうる。
【0062】
1つまたは複数の実施形態では、予測残差は、単項コーディングによってコーディングされうる。1つまたは複数の実施形態では、予測残差は、表1に示される構文要素によってコーディングされうる。
【0063】
【0064】
1つまたは複数の例では、変数prediction_residual_signは、バイパスコーディングによってコーディングされうる。1つまたは複数の例では、変数prediction_residual_eq0は、予測残差が0に等しいか否かを指定しうる。1つまたは複数の例では、変数prediction_residual_signは、予測残差の符号ビットを指定しうる。1つまたは複数の例では、変数prediction_residual_abs_eq1は、予測残差の絶対値が1であるか否かを指定しうる。1つまたは複数の例では、変数prediction_residual_abs_eq2は、予測残差の絶対値が2であるか否かを指定しうる。1つまたは複数の例では、変数prediction_residual_abs_minus3は、予測残差-3の絶対値を指定しうる。
【0065】
1つまたは複数の実施形態によれば、予測残差は、表2に示される構文要素によってコーディングされうる。
【0066】
【0067】
1つまたは複数の例では、変数prediction_residual_signは、算術コーディングによってコーディングされてもよく、異なるコンテキストが使用されてもよい。例えば、前のコーディングされた境界頂点の予測残差の符号がコンテキストとして使用されてもよい。1つまたは複数の例では、変数prediction_residual_eq0は、予測残差が0に等しいか否かを指定しうる。1つまたは複数の例では、変数prediction_residual_signは、予測残差の符号ビットを指定しうる。1つまたは複数の例では、変数prediction_residual_abs_eq1は、予測残差の絶対値が1であるか否かを指定しうる。1つまたは複数の例では、変数prediction_residual_abs_eq2は、予測残差の絶対値が2であるか否かを指定しうる。1つまたは複数の例では、prediction_residual_abs_minus3は、予測残差-3の絶対値を指定しうる。
【0068】
1つまたは複数の実施形態によれば、デコーダ側では、サンプリングUV座標の予測残差は、上述の構文要素から導出されうる。例えば、U座標は、以下のステップによって復元されうる。
【数14】
}
}
【0069】
当業者によって理解されるように、V座標は、U座標を復元するための上述されたのと同じかまたは同様のステップを使用して復元されうる。
【0070】
1つまたは複数の実施形態によれば、UV境界座標の予測は、前にコーディングされたメッシュフレームからももたらされうる。現在のメッシュフレームに適用されるものと前のメッシュフレーム内のものとの間で異なるサンプリングレートの場合には、予測子はその元の値に逆量子化され、次いで現在のサンプリングレートに従って量子化されうる。
【0071】
1つまたは複数の実施形態によれば、
図9に示されるように補間ベースの階層予測方式が適用される場合、異なる層内の頂点に異なる残差コーディング方式が適用されてもよく、前述の残差コーディング方法の任意の組合せが使用されうる。
【0072】
1つまたは複数の例では、UV境界座標の予測残差は、エントロピーコーディングされる前に変換されてもよい。例えば、離散コサイン/サイン変換、ウェーブレット変換、(高速)フーリエ変換、スプライン変換など、様々な変換関数が採用されてもよい。
【0073】
1つまたは複数の実施形態によれば、変換は、使用される異なる予測方式に基づいて部分的予測残差に適用されうる。例えば、
図9に例示されるように補間ベースの階層予測方式が適用される場合、変換は、双方向予測を有するより上位の予測層内の破線の頂点の予測残差に適用されうる。
【0074】
1つまたは複数の実施形態によれば、固定点1-D変換が、予測残差に適用されうる。例えば、16点1-D変換が、予測残差に適用されてもよい。この場合、残差は、各グループが変換を使用しうるように16サンプルにグループ化されうる。
【0075】
1つまたは複数の実施形態によれば、固定点2-D変換が、予測残差に適用されうる。例えば、4×4 2-D変換が、予測残差に適用されてもよい。この場合、残差は、各グループが変換を使用しうるように(例えば、8×8残差ブロックの形態の)16サンプルにグループ化されうる。
【0076】
1つまたは複数の実施形態によれば、複数のカーネルを有する変換が、予測残差に適用されうる。例えば、DCTまたはDSTのいずれかの4×4 2-D変換が、予測残差に適用されてもよい。この場合、残差は、各グループが変換を使用しうるように(8×8残差ブロックの形態の)16サンプルにグループ化されうる。さらに、エンコーダは、デコーダが変換タイプに関連付けられた正しい変換係数をデコーディングすることができるように、グループごとに選択された変換タイプインデックスを送信しうる。
【0077】
1つまたは複数の実施形態によれば、固定点1-D変換または2-D変換の組合せが、予測残差に適用されうる。例えば、4×4、8×4、および4×8 2-D変換が、予測残差に適用されてもよい。この場合、残差は、各グループが変換を使用しうるように(例えば、2-D残差ブロックの形態の)16サンプルまたは32サンプルのいずれかにグループ化されうる。エンコーダは、デコーダが変換に関連付けられた正しい数の変換係数をデコーディングすることができるように、グループごとに選択された変換タイプインデックスを送信しうる。
【0078】
図10は、1つまたは複数の実施形態による、圧縮された2Dメッシュに基づいて境界頂点を再構成するためのプロセス1000を例示している。プロセスは、圧縮された2Dメッシュを含むコーディングされたビデオビットストリームが受信される動作S1002から開始しうる。圧縮された2Dメッシュは、サンプリングUV平面800(
図8)の圧縮に対応しうる。プロセスは動作S1004に進み、そこで、補間ベースの階層予測方式に基づいて、圧縮された2Dメッシュに含まれる現在の頂点が予測される。例えば、補間ベースの階層予測方式は、上述された第1の予測タイプまたは第2の予測タイプに基づいて現在の頂点を予測しうる。
【0079】
プロセスは動作S1006に進み、そこで、予測された現在の頂点に関連付けられた予測残差が導出される。例えば、予測残差は、式(3)~式(6)のいずれか1つに従って、または表1もしくは表2のいずれか1つに指定された構文要素に従って導出されてもよい。さらに、予測残差は、N点1-D変換またはN×N 2-D変換に基づいて導出されてもよい。プロセスは動作S1008に進み、そこで、予測された現在の頂点および導出された予測残差に基づいて、3Dボリュームオブジェクトに関連付けられた境界頂点が再構成される。例えば、
図8を参照すると、
図10のプロセスは、サンプリング2D座標(例えば、現在の頂点)V
1’(u
1’,v
1’)を予測し、対応するオフセットを導出して、デコーダ側で元の2D座標(例えば、境界頂点)V
1を再構成しうる。
【0080】
上述された技術は、コンピュータ可読命令を使用するコンピュータソフトウェアとして実装され、1つまたは複数のコンピュータ可読媒体に物理的に記憶されてもよい。例えば、
図11は、本開示の特定の実施形態を実装するのに適したコンピュータシステム1100を示している。
【0081】
コンピュータソフトウェアは、コンピュータ中央処理装置(CPU)、グラフィックスプロセッシングユニット(GPU)などによって直接、または解釈、マイクロコード実行などを介して実行されうる命令を含むコードを作成するためにアセンブリ、コンパイル、リンクなどのメカニズムを施されうる、任意の適切な機械コードまたはコンピュータ言語を使用してコーディングされうる。
【0082】
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲーム機、モノのインターネットデバイスなどを含む様々なタイプのコンピュータまたはコンピュータの構成要素上で実行されうる。
【0083】
コンピュータシステム1100について
図11に示されている構成要素は、例であり、本開示の実施形態を実装するコンピュータソフトウェアの使用または機能の範囲に関する限定を示唆することを意図されていない。構成要素の構成は、コンピュータシステム1100の非限定的な実施形態に例示される構成要素のいずれか1つまたは組合せに関連するいかなる依存性も要件も有すると解釈されるべきではない。
【0084】
コンピュータシステム1100は、特定のヒューマンインターフェース入力デバイスを含んでもよい。そのようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(キーストローク、スワイプ、データグローブの動きなど)、オーディオ入力(声、拍手など)、視覚入力(ジェスチャなど)、嗅覚入力(図示せず)を介した、1人または複数の人間ユーザによる入力に応答してもよい。ヒューマンインターフェースデバイスはまた、オーディオ(音声、音楽、環境音など)、画像(走査画像、写真画像静止画像カメラから取得するなど)、ビデオ(二次元ビデオ、立体ビデオを含む三次元ビデオなど)といった、必ずしも人間による意識的な入力に直接関連しない特定の媒体を取り込むためにも使用されてもよい。
【0085】
入力ヒューマンインターフェースデバイスは、キーボード1101、マウス1102、トラックパッド1103、タッチスクリーン1110、データグローブ、ジョイスティック1105、マイクロフォン1106、スキャナ1107、カメラ1108のうちの1つまたは複数(各々の1つのみを図示)を含んでもよい。
【0086】
コンピュータシステム1100はまた、特定のヒューマンインターフェース出力デバイスを含んでもよい。そのようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、および匂い/味によって1人または複数の人間ユーザの感覚を刺激してもよい。そのようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン1110、データグローブ、またはジョイスティック1105による触覚フィードバック、ただし、入力デバイスとして機能しない触覚フィードバックデバイスがあってもよい)を含んでもよい。例えば、そのようなデバイスは、オーディオ出力デバイス(スピーカ1109、ヘッドホン(図示せず)など)、視覚出力デバイス(各々タッチスクリーン入力能力を有するかまたは有さず、各々触覚フィードバック能力を有するかまたは有さず、その一部は二次元視覚出力または立体出力などの手段による三次元を超える出力を出力することが可能でありうる、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン1110、仮想現実メガネ(図示せず)、ホログラフィックディスプレイおよびスモークタンク(図示せず)など)、ならびにプリンタ(図示せず)であってもよい。
【0087】
コンピュータシステム1100はまた、CD/DVDまたは同様の媒体1121を有するCD/DVD ROM/RW1120を含む光媒体、サムドライブ1122、リムーバブルハードドライブまたはソリッドステートドライブ1123、テープやフロッピーディスク(図示せず)などのレガシー磁気媒体、セキュリティドングル(図示せず)などの専用のROM/ASIC/PLDベースのデバイスなどといった人間がアクセス可能な記憶デバイスおよびそれらの関連媒体を含んでもよい。
【0088】
当業者はまた、本開示の主題と関連して使用される「コンピュータ可読媒体」という用語が、伝送媒体、搬送波、または他の一時的な信号を包含しないことも理解するはずである。
【0089】
コンピュータシステム1100はまた、1つまたは複数の通信ネットワークへのインターフェースを含んでもよい。ネットワークは、無線、有線、光であってもよい。ネットワークはさらに、ローカル、ワイドエリア、メトロポリタン、車両用および産業用、リアルタイム、遅延耐性などであってもよい。ネットワークの例は、イーサネットなどのローカルエリアネットワーク、無線LAN、GSM、3G、4G、5G、LTEなどを含むセルラーネットワーク、ケーブルテレビ、衛星テレビおよび地上波テレビを含むテレビの有線または無線広域デジタルネットワーク、CANBusを含む車両用および産業用などを含む。特定のネットワークは、一般に、特定の汎用データポートまたは周辺バス1149(例えば、コンピュータシステム1100のUSBポートなど)に接続された外部ネットワークインターフェースアダプタを必要とし、他のネットワークは、一般に、以下で説明されるように、システムバスへの接続によってコンピュータシステム1100のコアに統合される(例えば、PCコンピュータシステムへのイーサネットインターフェースや、スマートフォンコンピュータシステムへのセルラーネットワークインターフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム1100は他のエンティティと通信しうる。そのような通信は、単方向受信のみ(例えば、テレビ放送)であっても、単方向送信のみ(例えば、特定のCANbusデバイスへのCANbus)であっても、例えば、ローカルまたはワイドエリアデジタルネットワークを使用する他のコンピュータシステムへの双方向であってもよい。そのような通信は、クラウドコンピューティング環境1155への通信を含んでもよい。特定のプロトコルおよびプロトコルスタックが、上述されたようなネットワークおよびネットワークインターフェースの各々で使用されてもよい。
【0090】
前述のヒューマンインターフェースデバイス、人間がアクセス可能な記憶デバイス、およびネットワークインターフェース1154は、コンピュータシステム1100のコア1140に取り付けられうる。
【0091】
コア1140は、1つまたは複数の中央処理装置(CPU)1141、グラフィックスプロセッシングユニット(GPU)1142、フィールドプログラマブルゲートエリア(FPGA)1143の形式の専用プログラマブル処理ユニット、特定のタスク用のハードウェアアクセラレータ1144などを含んでもよい。これらのデバイスは、読出し専用メモリ(ROM)1145、ランダムアクセスメモリ1146、内部のユーザがアクセスできないハードドライブ、SSDなどの内部大容量ストレージ1147と共に、システムバス1148を介して接続されうる。いくつかのコンピュータシステムでは、システムバス1148は、追加のCPU、GPUなどによる拡張を可能にするために1つまたは複数の物理プラグの形式でアクセス可能であってもよい。周辺デバイスは、コアのシステムバス1148に直接取り付けられても、周辺バス1149を介して取り付けられてもよい。周辺バスのアーキテクチャは、PCI、USBなどを含む。グラフィックスアダプタ1150がコア1140に含まれてもよい。
【0092】
CPU1141、GPU1142、FPGA1143、およびアクセラレータ1144は、組み合わさって、前述のコンピュータコードを構成しうる特定の命令を実行してもよい。そのコンピュータコードは、ROM1145またはRAM1146に記憶されてもよい。RAM1146には暫定的なデータも記憶されうるが、永続データは、例えば、内部大容量ストレージ1147に記憶されうる。メモリデバイスのいずれかへの高速記憶および取出しは、1つまたは複数のCPU1141、GPU1142、大容量ストレージ1147、ROM1145、RAM1146などと密接に関連付けられうるキャッシュメモリの使用によって可能とされてもよい。
【0093】
コンピュータ可読媒体は、様々なコンピュータ実装動作を行うためのコンピュータコードを有しうる。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構成されたものであってもよいし、コンピュータソフトウェア技術の当業者に周知の利用可能な種類のものであってもよい。
【0094】
限定ではなく例として、アーキテクチャを有するコンピュータシステム1100、具体的にはコア1140は、(CPU、GPU、FPGA、アクセラレータなどを含む)(1つまたは複数の)プロセッサが、1つまたは複数の有形のコンピュータ可読媒体において具体化されたソフトウェアを実行した結果として機能を提供してもよい。そのようなコンピュータ可読媒体は、上記で紹介されたようなユーザアクセス可能な大容量ストレージ、ならびにコア内部の大容量ストレージ1147やROM1145などの非一時的な性質のものであるコア1140の特定のストレージに関連付けられた媒体であってもよい。本開示の様々な実施形態を実装するソフトウェアは、そのようなデバイスに記憶され、コア1140によって実行されてもよい。コンピュータ可読媒体は、特定の必要性に応じて、1つまたは複数のメモリデバイスまたはチップを含んでもよい。ソフトウェアは、コア1140、具体的にはその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、RAM1146に記憶されたデータ構造を定義すること、およびソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を修正することを含む、本明細書で説明された特定のプロセスまたは特定のプロセスの特定の部分を実行させうる。加えて、または代替として、コンピュータシステムは、ソフトウェアの代わりに、またはソフトウェアと共に本明細書で説明された特定のプロセスまたは特定のプロセスの特定の部分を実行するように動作しうる回路(例えば、アクセラレータ1144)に配線されるかまたは他の方法で具体化されたロジックの結果として機能を提供してもよい。ソフトウェアへの言及は、必要に応じて、ロジックを包含する場合もあり、逆もまた同様である。コンピュータ可読媒体への言及は、必要に応じて、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のためのロジックを具体化する回路、またはその両方を包含しうる。本開示は、ハードウェアとソフトウェアの任意の適切な組合せを包含する。
【0095】
本開示はいくつかの非限定的な実施形態を説明しているが、変更形態、置換形態、および様々な代替の均等物が存在し、それらは本開示の範囲内に入る。よって、当業者は、本明細書で明示的に図示または説明されていないが、本開示の原理を具体化する、よって本開示の趣旨および範囲内にある多数のシステムおよび方法を考案することができることが理解されよう。
【0096】
上記の開示は、以下に列挙される実施形態も包含する。
【0097】
(1)デコーダ内の少なくとも1つのプロセッサによって行われる方法であって、方法は、三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信するステップと、圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、圧縮された2Dメッシュに含まれる現在の頂点を予測するステップと、予測された現在の頂点に関連付けられた予測残差を導出するステップと、予測された現在の頂点および導出された予測残差に基づいて、3Dボリュームオブジェクトに関連付けられた境界頂点を再構成するステップと、を含む。
【0098】
(2)補間ベースの階層予測方式は、(i)少なくとも1つのサンプリングされた頂点を使用する単方向予測を適用することによって圧縮された2Dメッシュに含まれる頂点を予測する第1の予測タイプ、ならびに(ii)少なくとも1つのサンプリングされた頂点および圧縮された2Dメッシュに含まれる他のサンプリングされた頂点を使用する双方向予測を適用することによって圧縮された2Dメッシュに含まれる頂点を予測する第2の予測タイプを含む、特徴(1)に記載の方法。
【0099】
(3)現在の頂点は、少なくとも1つのサンプリングされた頂点が現在の頂点の前に予測される第1の予測タイプに従って予測される、特徴(2)に記載の方法。
【0100】
(4)現在の頂点は第2の予測タイプに従って予測される、特徴(2)に記載の方法。
【0101】
(5)少なくとも1つのサンプリングされた頂点は第1の予測タイプに従って予測され、他のサンプリングされた頂点は第1の予測タイプに従って予測される、特徴(4)に記載の方法。
【0102】
(6)少なくとも1つのサンプリングされた頂点は第1の予測タイプに従って予測され、他のサンプリングされた頂点は第2の予測タイプに従って予測される、特徴(4)に記載の方法。
【0103】
(7)少なくとも1つのサンプリングされた頂点と他のサンプリングされた頂点とは反対方向にある、特徴(4)に記載の方法。
【0104】
(8)少なくとも1つのサンプリングされた頂点と他のサンプリングされた頂点との間の間隔は、コーディングされたビデオビットストリームに含まれる構文要素において指定される、特徴(4)に記載の方法。
【0105】
(9)予測残差はN点1-D変換に従って導出される、特徴(1)~(8)のいずれか1つに記載の方法。
【0106】
(10)予測残差はN×N 2-D変換に従って導出される、特徴(1)~(8)のいずれか1つに記載の方法。
【0107】
(11)プログラムコードを記憶するように構成された少なくとも1つのメモリと、プログラムコードを読み出し、プログラムコードによって命令されるように動作するように構成された少なくとも1つのプロセッサであって、プログラムコードが、少なくとも1つのプロセッサに、三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信させるように構成された受信コードと、少なくとも1つのプロセッサに、圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、圧縮された2Dメッシュに含まれる現在の頂点を予測させるように構成された予測コードと、少なくとも1つのプロセッサに、予測された現在の頂点に関連付けられた予測残差を導出させるように構成された導出コードと、少なくとも1つのプロセッサに、予測された現在の頂点および導出された予測残差に基づいて、3Dボリュームオブジェクトに関連付けられた境界頂点を再構成させるように構成された再構成コードと、を含む、少なくとも1つのプロセッサと、を含む、デコーダ。
【0108】
(12)補間ベースの階層予測方式は、(i)少なくとも1つのサンプリングされた頂点を使用する単方向予測を適用することによって圧縮された2Dメッシュに含まれる頂点を予測する第1の予測タイプ、ならびに(ii)少なくとも1つのサンプリングされた頂点および圧縮された2Dメッシュに含まれる他のサンプリングされた頂点を使用した双方向予測を適用することによって圧縮された2Dメッシュに含まれる頂点を予測する第2の予測タイプを含む、特徴(11)に記載のデコーダ。
【0109】
(13)現在の頂点は、少なくとも1つのサンプリングされた頂点が現在の頂点の前に予測される第1の予測タイプに従って予測される、特徴(12)に記載のデコーダ。
【0110】
(14)現在の頂点は第2の予測タイプに従って予測される、特徴(12)に記載のデコーダ。
【0111】
(15)少なくとも1つのサンプリングされた頂点は第1の予測タイプに従って予測され、他のサンプリングされた頂点は第1の予測タイプに従って予測される、特徴(14)に記載のデコーダ。
【0112】
(16)少なくとも1つのサンプリングされた頂点は第1の予測タイプに従って予測され、他のサンプリングされた頂点は第2の予測タイプに従って予測される、特徴(14)に記載のデコーダ。
【0113】
(17)少なくとも1つのサンプリングされた頂点と他のサンプリングされた頂点とは反対方向にある、特徴(14)に記載のデコーダ。
【0114】
(18)少なくとも1つのサンプリングされた頂点と他のサンプリングされた頂点との間の間隔は、コーディングされたビデオビットストリームに含まれる構文要素において指定される、特徴(14)に記載のデコーダ。
【0115】
(19)予測残差はN点1-D変換に従って導出される、特徴(11)~(18)のいずれか1つに記載のデコーダ。
【0116】
(20)命令を記憶している非一時的コンピュータ可読媒体であって、命令は、デコーダ内の少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに、三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信することと、圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、圧縮された2Dメッシュに含まれる現在の頂点を予測することと、予測された現在の頂点に関連付けられた予測残差を導出することと、予測された現在の頂点および導出された予測残差に基づいて、3Dボリュームオブジェクトに関連付けられた境界頂点を再構成することと、を実行させる、非一時的コンピュータ可読媒体。
【符号の説明】
【0117】
100 通信システム
110 端末
120 端末
130 端末
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 メッシュセグメント
402 2Dチャート
404 2Dチャート
500 3Dメッシュセグメント
502A 2Dチャート
502B 2Dチャート
600 2D UVアトラス
800 UV平面
902A 頂点
902B 頂点
902C 頂点
902D 頂点
904A 頂点
904B 頂点
904C 頂点
904D 頂点
904E 頂点
904F 頂点
904G 頂点
904H 頂点
1000 圧縮された2Dメッシュに基づいて境界頂点を再構成するためのプロセス
1100 コンピュータシステム
1101 キーボード
1102 マウス
1103 トラックパッド
1105 ジョイスティック
1106 マイクロフォン
1107 スキャナ
1108 カメラ
1109 スピーカ
1110 タッチスクリーン
1120 CD/DVD ROM/RW
1121 CD/DVDまたは同様の媒体
1122 サムドライブ
1123 リムーバブルハードドライブまたはソリッドステートドライブ
1140 コンピュータシステムのコア
1141 中央処理装置(CPU)
1142 グラフィックスプロセッシングユニット(GPU)
1143 フィールドプログラマブルゲートエリア(FPGA)
1144 ハードウェアアクセラレータ
1145 読み出し専用メモリ(ROM)
1146 ランダムアクセスメモリ
1147 内部大容量ストレージ
1148 システムバス
1149 周辺バス
1150 グラフィックスアダプタ
1154 ネットワークインターフェース
1155 クラウドコンピューティング環境
【手続補正書】
【提出日】2024-05-09
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
デコーダ内の少なくとも1つのプロセッサ
が実行する方法であって、前記方法は、
三次元(3D)ボリュームオブジェクトの表面に対応する圧縮された二次元(2D)メッシュを含むコーディングされたビデオビットストリームを受信するステップと、
前記圧縮された2Dメッシュに含まれる少なくとも1つのサンプリングされた頂点を使用する補間ベースの階層予測方式に基づいて、前記圧縮された2Dメッシュに含まれる現在の頂点を予測するステップと、
前記予測された現在の頂点に関連付けられた予測残差を導出するステップと、
前記予測された現在の頂点および前記導出された予測残差に基づいて、前記3Dボリュームオブジェクトに関連付けられた境界頂点を再構成するステップとを含む、方法。
【請求項2】
前記補間ベースの階層予測方式は、(i)前記少なくとも1つのサンプリングされた頂点を使用する単方向予測を適用することによって前記圧縮された2Dメッシュに含まれる頂点を予測する第1の予測タイプ、ならびに(ii)前記少なくとも1つのサンプリングされた頂点および前記圧縮された2Dメッシュに含まれる他のサンプリングされた頂点を使用する双方向予測を適用することによって前記圧縮された2Dメッシュに含まれる前記頂点を予測する第2の予測タイプを含む、請求項1に記載の方法。
【請求項3】
前記現在の頂点は、前記少なくとも1つのサンプリングされた頂点が前記現在の頂点の前に予測される前記第1の予測タイプに従って予測される、請求項2に記載の方法。
【請求項4】
前記現在の頂点は前記第2の予測タイプに従って予測される、請求項2に記載の方法。
【請求項5】
前記少なくとも1つのサンプリングされた頂点は前記第1の予測タイプに従って予測され、前記他のサンプリングされた頂点は前記第1の予測タイプに従って予測される、請求項4に記載の方法。
【請求項6】
前記少なくとも1つのサンプリングされた頂点は前記第1の予測タイプに従って予測され、前記他のサンプリングされた頂点は前記第2の予測タイプに従って予測される、請求項4に記載の方法。
【請求項7】
前記少なくとも1つのサンプリングされた頂点と前記他のサンプリングされた頂点とは反対方向にある、請求項4に記載の方法。
【請求項8】
前記少なくとも1つのサンプリングされた頂点と前記他のサンプリングされた頂点との間の間隔は、前記コーディングされたビデオビットストリームに含まれる構文要素において指定される、請求項4に記載の方法。
【請求項9】
前記予測残差はN点1-D変換に従って導出される、請求項1に記載の方法。
【請求項10】
前記予測残差はN×N 2-D変換に従って導出される、請求項1に記載の方法。
【請求項11】
請求項1~10のいずれか一項に記載の方法を行うように構成された、デコーダ。
【請求項12】
コンピュータに、請求項1~10のいずれか一項に記載の方法を実行させるためのコンピュータプログラム。
【国際調査報告】