IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソニー株式会社の特許一覧

<>
  • 特許-投影ベースのメッシュ圧縮 図1
  • 特許-投影ベースのメッシュ圧縮 図2
  • 特許-投影ベースのメッシュ圧縮 図3
  • 特許-投影ベースのメッシュ圧縮 図4
  • 特許-投影ベースのメッシュ圧縮 図5
  • 特許-投影ベースのメッシュ圧縮 図6
  • 特許-投影ベースのメッシュ圧縮 図7A
  • 特許-投影ベースのメッシュ圧縮 図7B
  • 特許-投影ベースのメッシュ圧縮 図8
  • 特許-投影ベースのメッシュ圧縮 図9
  • 特許-投影ベースのメッシュ圧縮 図10
  • 特許-投影ベースのメッシュ圧縮 図11
  • 特許-投影ベースのメッシュ圧縮 図12
  • 特許-投影ベースのメッシュ圧縮 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-12
(45)【発行日】2024-07-23
(54)【発明の名称】投影ベースのメッシュ圧縮
(51)【国際特許分類】
   H04N 19/597 20140101AFI20240716BHJP
   H04N 19/46 20140101ALI20240716BHJP
   G06T 9/00 20060101ALI20240716BHJP
   G06T 17/20 20060101ALI20240716BHJP
   H04N 19/119 20140101ALI20240716BHJP
   H04N 19/136 20140101ALI20240716BHJP
   H04N 19/17 20140101ALI20240716BHJP
【FI】
H04N19/597
H04N19/46
G06T9/00
G06T17/20
H04N19/119
H04N19/136
H04N19/17
【請求項の数】 21
(21)【出願番号】P 2022550760
(86)(22)【出願日】2021-02-13
(65)【公表番号】
(43)【公表日】2023-04-11
(86)【国際出願番号】 US2021018063
(87)【国際公開番号】W WO2021188238
(87)【国際公開日】2021-09-23
【審査請求日】2022-08-23
(31)【優先権主張番号】62/991,128
(32)【優先日】2020-03-18
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/161,300
(32)【優先日】2021-01-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100092093
【弁理士】
【氏名又は名称】辻居 幸一
(74)【代理人】
【識別番号】100109070
【弁理士】
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【弁理士】
【氏名又は名称】大塚 文昭
(74)【代理人】
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【弁理士】
【氏名又は名称】近藤 直樹
(72)【発明者】
【氏名】グラジオッシ ダニーロ
(72)【発明者】
【氏名】中神 央二
(72)【発明者】
【氏名】ザゲットー アレクサンドレ
(72)【発明者】
【氏名】タバタバイ アリ
【審査官】田部井 和彦
(56)【参考文献】
【文献】国際公開第2019/142667(WO,A1)
【文献】国際公開第2020/003037(WO,A1)
【文献】米国特許出願公開第2007/0291031(US,A1)
【文献】特表2021-528734(JP,A)
【文献】国際公開第2019/012975(WO,A1)
【文献】特開2019-211965(JP,A)
【文献】国際公開第2019/039282(WO,A1)
【文献】特開2003-271684(JP,A)
【文献】特許第7303992(JP,B2)
【文献】Esmaeil Faramarzi et al.,[V-PCC] EE2.6 Report on mesh coding with V-PCC [online],ISO/IEC JTC1/SC29/WG11 MPEG2019 m49588 (m49588-v1.zip), July 2019, Gothenburg, Sweden,2019年07月05日,インターネット <URL: https://mpeg-pcc.org/wp-content/uploads/2019/07/m49588-v1.zip>,INTERNATIONAL ORGANISATION FOR STANDARDISATION ORGANISATION INTERNATIONALE DE NORMALISATION ISO/IEC JTC1/SC29/WG11 CODING OF MOVING PICTURES AND AUDIO
【文献】C Sheker et al.,A compression framework for triangulated 3-D meshes [online],Published in: 2013 Annual IEEE India Conference (INDICON),2014年01月30日,インターネット <URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6726135>,DOI: 10.1109/INDCON.2013.6726135
【文献】Danillo Bracco Graziosi,Video-Based Dynamic Mesh Coding [online],Published in: 2021 IEEE International Conference on Image Processing (ICIP),2021年08月23日,pp.3133-3137,インターネット <URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9506298>,DOI: 10.1109/ICIP42928.2021.9506298
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/597
H04N 19/46
G06T 9/00
G06T 17/20
H04N 19/119
H04N 19/136
H04N 19/17
(57)【特許請求の範囲】
【請求項1】
装置の非一時的メモリにプログラムされた方法であって、
入力メッシュの三角形に基づいて複数のバウンディングボックス生成することを含む、前記入力メッシュに対してメッシュボクセル化を実行してボクセル化されたメッシュを生成するステップであって、バウンディングボックスが最大許容値深度を上回る深度値含むときに対応する三角形を欠損三角形リストに加えられるステップと、
前記ボクセル化されたメッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、
前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、
前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、
前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、
を含むことを特徴とする方法。
【請求項2】
前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュの頂点値をシフト及び/又はスケーリングするステップを含むことを特徴とする、請求項1に記載の方法。
【請求項3】
前記メッシュボクセル化は、ゼロを下回る最も低い頂点の座標値を見つけて、前記最も低い頂点の座標値がゼロを上回るようにメッシュ値をシフトするステップを含むことを特徴とする、請求項2に記載の方法。
【請求項4】
前記パッチ生成を実装するステップは、
三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、
前記法線に従って前記三角形をカテゴリ化するステップと、
隣接する三角形を分析することによって、精細化プロセスを実装するステップと、
を含むことを特徴とする、請求項1に記載の方法。
【請求項5】
ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するステップを更に含むことを特徴とする、請求項1に記載の方法。
【請求項6】
前記V-PCCビットストリームに、追跡された頂点のデルタ位置情報が含まれることを特徴とする、請求項1に記載の方法。
【請求項7】
ジッパリング(zippering)を実装するステップを更に含み、前記ジッパリングを実装するステップは、
頂点を、境界頂点又は非境界頂点として分類するステップと、
前記境界頂点のうちの隣接する境界頂点を決定するステップと、
前記隣接する境界頂点をマージするステップと、
を含むことを特徴とする、請求項1に記載の方法。
【請求項8】
装置であって、
アプリケーションを記憶するための非一時的メモリであって、前記アプリケーションは、
入力メッシュの三角形に基づいて複数のバウンディングボックス生成することを含む、前記入力メッシュに対してメッシュボクセル化を実行してボクセル化されたメッシュを生成するステップであって、バウンディングボックスが最大許容値深度を上回る深度値含むときに対応する三角形を欠損三角形リストに加えられるステップと、
前記ボクセル化されたメッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、
前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、
前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、
前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、
を実行するためのものである、非一時的メモリと、
前記非一時的メモリに結合され、前記アプリケーションを処理するように構成されるプロセッサと、
を含むことを特徴とする装置。
【請求項9】
前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュの頂点値をシフト及び/又はスケーリングするステップを含むことを特徴とする、請求項8に記載の装置。
【請求項10】
前記メッシュボクセル化は、ゼロを下回る最も低い頂点の座標値を見つけて、前記最も低い頂点の座標値がゼロを上回るようにメッシュ値をシフトするステップを含むことを特徴とする、請求項9に記載の装置。
【請求項11】
前記パッチ生成を実装するステップは、
三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、
前記法線に従って前記三角形をカテゴリ化するステップと、
隣接する三角形を分析することによって、精細化プロセスを実装するステップと、
を含むことを特徴とする、請求項8に記載の装置。
【請求項12】
前記アプリケーションは、ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するように更に構成されることを特徴とする、請求項8に記載の装置。
【請求項13】
前記V-PCCビットストリームに、追跡された頂点のデルタ位置情報が含まれることを特徴とする、請求項8に記載の装置。
【請求項14】
前記アプリケーションは、ジッパリングを実装するように更に構成され、前記ジッパリングを実装するステップは、
頂点を、境界頂点又は非境界頂点として分類するステップと、
前記境界頂点のうちの隣接する境界頂点を決定するステップと、
前記隣接する境界頂点をマージするステップと、
を含むことを特徴とする、請求項8に記載の装置。
【請求項15】
システムであって、
3次元コンテンツを取得するための1又は2以上のカメラと、
前記3次元コンテンツを符号化するためのエンコーダであって、前記3次元コンテンツの符号化は、
入力メッシュの三角形に基づいて複数のバウンディングボックス生成することを含む、ボクセル化されたメッシュを生成するために前記3次元コンテンツの前記入力メッシュに対してメッシュボクセル化を実行するステップであって、バウンディングボックスが最大許容値深度を上回る深度値含むときに対応する三角形を欠損三角形リストに加えられるステップと、
前記ボクセル化されたメッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、
前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、
前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、
前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、
によって実行される、エンコーダと、
を含むことを特徴とするシステム。
【請求項16】
前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュの頂点値をシフト及び/又はスケーリングするステップを含むことを特徴とする、請求項15に記載のシステム。
【請求項17】
前記メッシュボクセル化は、ゼロを下回る最も低い頂点の座標値を見つけて、前記最も低い頂点の座標値がゼロを上回るようにメッシュ値をシフトするステップを含むことを特徴とする、請求項16に記載のシステム。
【請求項18】
前記パッチ生成を実装するステップは、
三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、
前記法線に従って三角形をカテゴリ化するステップと、
隣接する三角形を分析することによって、精細化プロセスを実装するステップと、
を含むことを特徴とする、請求項15に記載のシステム。
【請求項19】
前記エンコーダは、ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するように更に構成されることを特徴とする、請求項15に記載のシステム。
【請求項20】
前記V-PCCビットストリームに、追跡された頂点のデルタ位置情報が含まれることを特徴とする、請求項15に記載のシステム。
【請求項21】
前記エンコーダは、ジッパリングを実装するように更に構成され、前記ジッパリングを実装するステップは、
頂点を、境界頂点又は非境界頂点として分類するステップと、
前記境界頂点のうちの隣接する境界頂点を決定するステップと、
前記隣接する境界頂点をマージするステップと、
を含むことを特徴とする、請求項15に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
〔関連出願の相互参照〕
本出願は、米国特許法第119条(e)の下で、2020年3月18日出願の米国仮特許出願第62/991,128号「投影ベースのメッシュ圧縮(PROJECTION-BASED MESH COMPRESSION)」の優先権を主張するものであり、その開示内容全体は、全ての目的に対して引用により本明細書に組み込まれる。
【0002】
本発明は、3次元グラフィックに関する。より具体的には、本発明は、3次元グラフィックの符号化に関する。
【背景技術】
【0003】
近年、3Dから2Dへの投影に基づいてポイントクラウドを圧縮するための新規の方法が標準化されている。この方法(V-PCC(ビデオベースのポイントクラウド圧縮)としても知られる)は、3Dポイントクラウドデータをいくつかの2Dパッチにマッピングし、次に、パッチをアトラス画像内に更に配置し、その後、ビデオエンコーダで符号化する。アトラス画像は、ポイントのジオメトリと、それぞれのテクスチャと、ポイントクラウド再構築のためにどの位置を考慮すべきかを示すオキュパンシーマップとに対応する。
【0004】
2017年、MPEGは、ポイントクラウドの圧縮のための提案募集(CfP)を実施した。いくつかの提案の評価の後、現在、MPEGは、ポイントクラウド圧縮のための2つの異なる技術、すなわち、(octree及び同様の符号化方法に基づく)3Dネイティブ符号化技術、又は3Dから2Dへの投影後に従来のビデオ符号化を行うことを検討している。動的3Dシーンの場合、MPEGは、パッチ表面モデリング、3D画像から2D画像へのパッチの投影、及びHEVCなどのビデオエンコーダで2D画像を符号化することに基づいて、テストモデルソフトウェア(TMC2)を使用している。この方法は、ネイティブ3D符号化よりも効率的であることが判明しており、許容品質で競合ビットレートを実現することができる。
【0005】
投影ベースの方法(ビデオベースの方法又はV-PCCとしても知られる)の3Dポイントクラウドの符号化の成功に起因して、規格は、未来のバージョンにおいて、3Dメッシュなどの更なる3Dデータを含むことを期待される。しかしながら、規格の現在のバージョンは、接続されていないポイントのセットの送信のみに適しているので、3Dメッシュ圧縮に必要なポイントの接続性を送信するための機構がない。
【0006】
V-PCCの機能性をメッシュに拡張するための方法も提案されている。1つの可能な方法は、V-PCCを使用して頂点を符号化し、次に、TFAN又はEdgebreakerなどのメッシュ圧縮方法を使用して接続性を符号化することである。この方法の制限は、頂点から生成されるポイントクラウドがまばらではなく、投影後に効率的に符号化することができるように、元のメッシュが高密度である必要があることである。また、頂点の順序は接続性の符号化に影響を及ぼし、メッシュ接続性を再編成するための異なる方法が提案されている。まばらなメッシュを符号化するための代替の方法は、RAWパッチデータを使用して、3D内の頂点位置を符号化することである。RAWパッチは(x,y,z)を直接符号化するので、この方法では、全ての頂点はRAWデータとして符号化され、一方、接続性は、前述のように、同様のメッシュ圧縮方法によって符号化される。RAWパッチにおいて、頂点を任意の好ましい順序で送信することができるので、接続性符号化から生成される順序を使用することができる。この方法は、まばらなポイントクラウドを符号化することができるが、RAWパッチは、3Dデータを符号化するのに効率的ではなく、この方法から、三角形の面の属性などの更なるデータが欠けている場合がある。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本明細書では、投影ベースの方法を使用して、かつ投影ベースのポイントクラウド圧縮のために既に生成されたツール及びシンタックスを利用して、追跡されていないメッシュ及び追跡されたメッシュを圧縮する方法を説明する。V-PCC方法と同様に、メッシュを表面パッチにセグメント化するが、相違点は、セグメントがメッシュの接続性に従うことである。次に、各表面パッチ(又は3Dパッチ)を2Dパッチに投影することによって、メッシュの場合、三角形表面サンプリングは、コンピュータグラフィックスで使用される共通のラスタ化方法と同様である。各パッチに対して、投影された頂点の位置と、それらの頂点の接続性とをリストに保つ。サンプリングされた表面はポイントクラウドに似ており、ポイントクラウド圧縮のために使用される同じ方法で符号化される。更に、パッチごとに頂点及び接続性のリストを符号化して、そのデータと、符号化されたポイントクラウドデータとを送信する。
【課題を解決するための手段】
【0008】
一態様では、装置の非一時的メモリにプログラムされた方法。前記方法は、入力メッシュに対してメッシュボクセル化を実行するステップと、前記メッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、を含む。前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュ値をシフト及び/又はスケーリングするステップを含む。前記メッシュボクセル化は、ゼロを下回る最も低い頂点値を見つけて、前記最も低い頂点値がゼロを上回るように前記メッシュ値をシフトするステップを含む。前記パッチ生成を実装するステップは、三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、前記法線に従って三角形をカテゴリ化するステップと、隣接する三角形を分析することによって、精細化プロセスを実装するステップと、を含む。前記方法は、ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するステップを更に含む。前記ビットストリームに、追跡された頂点のデルタ位置情報が含まれる。前記方法は、ジッパリング(zippering)を実装するステップを更に含み、前記ジッパリングを実装するステップは、頂点を、境界頂点又は非境界頂点として分類するステップと、前記境界頂点のうちの隣接する境界頂点を決定するステップと、前記隣接する境界頂点をマージするステップと、を含む。
【0009】
別の態様では、装置は、アプリケーションを記憶するための非一時的メモリであって、前記アプリケーションは、入力メッシュに対してメッシュボクセル化を実行するステップと、前記メッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、を実行するためのものである、非一時的メモリと、前記メモリに結合され、前記アプリケーションを処理するように構成されるプロセッサと、を含む。前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュ値をシフト及び/又はスケーリングするステップを含む。前記メッシュボクセル化は、ゼロを下回る最も低い頂点値を見つけて、前記最も低い頂点値がゼロを上回るように前記メッシュ値をシフトするステップを含む。前記パッチ生成を実装するステップは、三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、前記法線に従って三角形をカテゴリ化するステップと、隣接する三角形を分析することによって、精細化プロセスを実装するステップと、を含む。前記装置において、前記アプリケーションは、ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するように更に構成される。前記ビットストリームに、追跡された頂点のデルタ位置情報が含まれる。前記装置において、前記アプリケーションは、ジッパリングを実装するように更に構成され、前記ジッパリングを実装するステップは、頂点を、境界頂点又は非境界頂点として分類するステップと、前記境界頂点のうちの隣接する境界頂点を決定するステップと、前記隣接する境界頂点をマージするステップと、を含む。
【0010】
別の態様では、システムは、3次元コンテンツを取得するための1又は2以上のカメラと、前記3次元コンテンツを符号化するためのエンコーダであって、前記3次元コンテンツの符号化は、前記3次元コンテンツの入力メッシュに対してメッシュボクセル化を実行するステップと、前記メッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、によって実行される、エンコーダと、を含む。前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュ値をシフト及び/又はスケーリングするステップを含む。前記メッシュボクセル化は、ゼロを下回る最も低い頂点値を見つけて、前記最も低い頂点値がゼロを上回るように前記メッシュ値をシフトするステップを含む。前記パッチ生成を実装するステップは、三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、前記法線に従って三角形をカテゴリ化するステップと、隣接する三角形を分析することによって、精細化プロセスを実装するステップと、を含む。前記エンコーダは、ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するように更に構成される。前記ビットストリームに、追跡された頂点のデルタ位置情報が含まれる。前記エンコーダは、ジッパリングを実装するように更に構成され、前記ジッパリングを実装するステップは、頂点を、境界頂点又は非境界頂点として分類するステップと、前記境界頂点のうちの隣接する境界頂点を決定するステップと、前記隣接する境界頂点をマージするステップと、を含む。
【図面の簡単な説明】
【0011】
図1】いくつかの実施形態による投影ベースのメッシュ圧縮を実装する方法のフローチャートである。
図2】いくつかの実施形態によるメッシュボクセル化の図である。
図3】いくつかの実施形態によるパッチ生成の図である。
図4】いくつかの実施形態によるパッチ投影及びパッチラスタ化を含むパッチ生成の図である。
図5】いくつかの実施形態によるベースメッシュ符号化/シグナリングのためのデータ構造を示す図である。
図6】いくつかの実施形態によるポイントクラウドとメッシュ情報とを組み合わせる例を示す図である。
図7A】いくつかの実施形態による追跡されていないメッシュ情報と追跡されたメッシュ情報とを組み合わせる例を示す図である。
図7B】いくつかの実施形態による追跡されていないメッシュ情報と追跡されたメッシュ情報とを組み合わせる例を示す図である。
図8】いくつかの実施形態によるV-PCC画像生成の図である。
図9】いくつかの実施形態によるメッシュ再構築の図である。
図10】いくつかの実施形態によるジッパリングアルゴリズムの図である。
図11】いくつかの実施形態による頂点を境界又は非境界として分類する図である。
図12】いくつかの実施形態による代替の接続性符号化の図である。
図13】いくつかの実施形態による投影ベースのメッシュ圧縮方法を実装するように構成される例示的なコンピュータ装置のブロック図である。
【発明を実施するための形態】
【0012】
本明細書では、投影ベースの方法を使用して、かつ投影ベースのポイントクラウド圧縮のために既に生成されたツール及びシンタックスを利用して、追跡されていないメッシュ及び追跡されたメッシュを圧縮する方法を説明する。追跡されていないメッシュは、全てのフレームが異なるメッシュ及び異なる接続性を有する場所である。追跡されたメッシュは、メッシュを含む第1のフレームを有し、次に、そのメッシュは追跡され、メッシュの構造は同じに保たれ、その位置は時間とともに変化する。V-PCC方法と同様に、メッシュを表面パッチにセグメント化するが、相違点は、セグメントがメッシュの接続性に従うことである。次に、各表面パッチ(又は3Dパッチ)を2Dパッチに投影することによって、メッシュの場合、三角形表面サンプリングは、コンピュータグラフィックスで使用される共通のラスタ化方法と同様である。各パッチに対して、投影された頂点の位置と、それらの頂点の接続性とをリストに保つ。サンプリングされた表面はポイントクラウドに似ており、ポイントクラウド圧縮のために使用される同じ方法で符号化される。更に、パッチごとに頂点及び接続性のリストを符号化して、そのデータと、符号化されたポイントクラウドデータとを送信する。
【0013】
2つの新たなシンタックス要素を導入して、メッシュ情報、すなわち、メッシュパッチデータユニットと、追跡されたメッシュパッチデータユニットとを記述する。メッシュパッチデータユニットは、頂点位置及びそれらのそれぞれの接続性を示すことができる。代替的に、パッチデータを介さずにオキュパンシーマップを介して、頂点の位置を送信することができる。追跡されたメッシュの場合では、追跡されたメッシュの場合の2つの通常のモーション、すなわち、グローバルモーション及び表面モーションを送信することができるシンタックス要素を導入する。追跡されたメッシュパッチデータユニットのシンタックス要素は、パッチの平行移動及び回転を介してグローバルモーションを表現し、一方、頂点移動によって表面モーション(例えば布のしわの動き)を表現する。
【0014】
各パッチに対して生成されるベースメッシュとして追加の接続性データを解釈して、この追加のデータを使用するか否かの柔軟性をデコーダに与えることができる。また、シンタックスによって、エンコーダはコンテンツを混合して、共存するポイントクラウド及びメッシュを有することができ(例えば、毛髪などのより精細な構造にはポイントクラウドを使用するが、平坦面にはメッシュを使用したいと望むことができる)、かつ追跡されたメッシュ及び追跡されていないメッシュを含むポイントクラウドでさえも有することができる(例えば、追跡することが困難である表面の部分を、追跡されていないものとして送信することができるか、又は過度に変形する追跡された部分でさえも、ポイントクラウドレイヤによって隠すことができる)。このデータを使用して、レンダリング及びインポイントフィルタリングアルゴリズム(in point filtering algorithms)を向上させることができる。また、投影ベースの圧縮の同じ原理を用いて、メッシュを符号化して、ポイントクラウドの投影ベースの符号化の現在のV-PCC方法とより良く統合させる。
【0015】
図1に、いくつかの実施形態による投影ベースのメッシュ圧縮を実装する方法のフローチャートを示す。ステップ100において、入力メッシュを受け取る又は取得する。例えば、入力メッシュは、(例えばネットワーク装置から)ダウンロードされるか、又は装置(例えばカメラ又は自律車両)によって取得/キャプチャされる。
【0016】
ステップ102において、メッシュボクセル化を実行する。メッシュは、浮動小数点で頂点の位置を有することができるので、これらの位置は整数空間に変換される。V-PCCは、ボクセル化されたポイントクラウドを仮定する。
【0017】
ステップ104において、パッチ生成(又は作成)を実装する。パッチ生成は、法線計算と、隣接性計算と、初期セグメント化と、精細化と、パッチ投影と、パッチラスタ化とを含む。法線計算は、各三角形の法線(例えば、三角形のエッジの外積)を計算することである。隣接性計算は、各三角形の隣接性(例えば、メッシュ内のどの三角形が、現在の三角形又は他の三角形に隣接するか又は接するか)を計算する。初期セグメント化は、向きに従って法線を分類することを含む。例えば、三角形の法線は、上、下、左、右、前、又は後に向くことができ、方向/向きに基づいて分類することができる。いくつかの実施形態では、三角形は、それらの法線の向きに基づいて色分けされる(例えば、上に向いている法線を含む三角形の全ては緑色である)。精細化は、アウトライア(例えば、青色の三角形によって取り囲まれる単一の赤色の三角形)を位置決めして、アウトライアを平滑化して取り除く(例えば、隣接する青色の三角形と一致するように、単一の赤色の三角形を変更する)。隣接する三角形を分析し、向きを平滑化する(例えば、法線の向きを調整する)ことによって、精細化を実行する。滑らかな面が存在すると、次に、パッチ投影を実行して、(例えば向きに基づいて)三角形の特定の分類のためにパッチを投影する。投影で、パッチ上に頂点及び接続性を示す。例えば、この例の身体及び顔面は、これら2つを分離する異なる分類を含む三角形が存在するので、別個の投影である。V-PCCはこれを理解しないが、むしろ、V-PCCはポイントを理解するので、投影はラスタ化される(例えば、ポイントの距離を含む表面上のポイントをサンプリングして、ジオメトリ画像及び表面の属性を生成する)。ラスタ化されたメッシュ表面は、V-PCC画像に非常に類似している。
【0018】
パッチ生成の結果、ラスタ化されたメッシュ表面と、頂点位置及び接続性とが得られる。ステップ106において、ラスタ化されたメッシュ表面を、V-PCC画像生成/作成に利用する。ステップ108において、頂点位置及び接続性を、ベースメッシュ符号化のために使用する。ステップ110において、生成されたV-PCC画像及びベースメッシュ符号化から、V-PCCビットストリームを生成する。いくつかの実施形態では、ベースメッシュ符号化は、いかなる追加の符号化も含まず、頂点位置及び接続性は、V-PCCビットストリームに直接進む。
【0019】
V-PCCビットストリームは、ステップ112においてポイントクラウド再構築を可能にし、及び/又はステップ114においてメッシュ再構築を可能にする。V-PCCビットストリームから、ポイントクラウド及び/又はメッシュを抽出することができ、これにより、著しい柔軟性を提供する。いくつかの実施形態では、より少ない又は追加のステップを実装する。いくつかの実施形態では、ステップの順序が変更される。
【0020】
図2に、いくつかの実施形態によるメッシュボクセル化の図を示す。各フレームは、異なるバウンディングボックスを有する。各フレームのバウンディングボックスを取得する(例えば、t=1、t=16及びt=32においてフレーム200)。次に、多くのバウンディングボックスからシーケンスバウンディングボックス202を計算する:sequenceBB = (minPoint, maxPoint)。シーケンスバウンディングボックス202は、フレームにかかわらず、頂点の全てを含む。ビット深さによって定められる範囲内の最大範囲に合うためのスケールを計算する:maxRange = max(maxPoint[0..2]-minPoint[0..2]), scale = (2bitdepth -1)/maxRange。最小値によって、結果をスケーリング及びシフトする:voxelizedpoint = floor(scale*originalPoint+minPoint)。スケール量及びシフト量は、学習アルゴリズムに基づいて(例えば、バウンディングボックスを分析し、スケール量及びシフト量を自動的に計算することによって)ユーザ定義又はコンピュータ生成のものとすることができる。
【0021】
いくつかの実施形態では、メッシュボクセル化は、入力メッシュのポイントの位置の浮動小数点値を整数に変換することを含む。整数の精度を、ユーザによって又は自動的に設定することができる。いくつかの実施形態では、メッシュボクセル化は、負の数が存在しないように値をシフトすることを含む。
【0022】
例えば、元のメッシュが軸線よりも下にあると、負の数になる。メッシュボクセルを介して、負の値及び非整数値を回避するように、メッシュをシフト及び/又はスケーリングする。1つの実装では、ゼロを下回る最も低い頂点値を見つけて、次に、最も低い頂点値がゼロを上回るように値をシフトすることができる。いくつかの実施形態では、値の範囲を(例えばスケーリングによって)11ビットなどの特定のビット範囲内に収める。
【0023】
ボクセル化されたメッシュ210は、スケーリング及びシフト後の元のメッシュである。例えば、ボクセル化されたメッシュ210は、成長して正の値のみであるようにシフトされた後の元のメッシュであり、これは、いくつかの例では符号化にとってより良い。
【0024】
図3に、いくつかの実施形態によるパッチ生成の図を示す。説明するように、パッチ生成は、法線計算と、隣接性計算と、初期セグメント化と、セグメント化精細化とを含む。各三角形の法線の計算は、三角形のエッジ間の外積を含む。法線は、画像300に示すように、矢印又はスパイク(spikes)として表現することができる。隣接性計算は、三角形が頂点を共有するかどうかを判定し、そうである場合、三角形は隣接する三角形である。図に示すように、灰色の三角形302の全ては、中央の白色の三角形304の隣接する三角形である。初期セグメント化及びセグメント化精細化は、法線の向きを分析し、法線の向き(例えば、上、下、左、右、前方、後方)を分類し、法線の向きが、全て同じであると分類される隣接する法線とは異なって分類されるかどうかを判定し(例えば、第1のパッチは、上306として分類され、一方、隣接するパッチの大部分又は全ては、前方として分類される)、その後、隣接するパッチの向きと一致するように、パッチの法線の分類を変更する(例えば、第1のパッチの分類を前方308に変更する)ことによって、V-PCCと同様に実行される。
【0025】
説明するように、メッシュをパッチにセグメント化するパッチ生成を実装する。パッチ生成は、また、1)ラスタ化されたメッシュ表面と、2)頂点位置及び接続性情報とを生成する。ラスタ化されたメッシュ表面は、V-PCC画像生成を経てV-PCC画像として符号化されるポイントのセットである。頂点位置及び接続性情報は、ベースメッシュ符号化のために受け取られる。
【0026】
本明細書で説明するパッチ生成は、V-PCCにおけるパッチ生成と同様である。しかしながら、ポイントごとの法線を計算する代わりに、三角形ごとの法線を計算する。エッジ間の外積を使用して法線ベクトルを決定して、三角形ごとの法線を計算する。次に、法線に従って三角形をカテゴリ化する。例えば、前、後、上、下、左、及び右などのn個の(例えば6つの)カテゴリに法線を分割する。異なる色で法線を示して、初期セグメント化を示す。図3は、異なる法線を示す異なる色として黒及びライトグレーなどのグレースケールで異なる色を示す。見ることが困難である場合があるが、上面(例えば、人物の頭部の上部、ボールの上部、及びスニーカーの上部)は1つの色(例えば緑色)であり、人物/ボールの第1の側は非常に暗く、別の色(例えば赤色)を表し、ボールの下部は別の色(例えば紫色)であり、人物及びボールの前部は、ほとんどライトグレーであり、別の色(例えばシアン)を表す。
【0027】
法線の積に方向を乗じることによって、主方向を求めることができる。隣接する三角形を見ることによって、平滑化/精細化プロセスを実装することができる。例えば、閾値を上回る数の隣接する三角形が全て青色である場合、最初に三角形が赤色であると示す異常があった場合でも、この三角形も青色として分類される。
【0028】
三角形の接続された成分を生成して、どの三角形が同じ色を有するか(例えば、少なくとも1つの頂点を共有する同じカテゴリを含む三角形)を識別する。
【0029】
接続性情報は、3D内でポイントがどのように接続されるかを記述する。これらの接続は、一緒に三角形(すなわち、3つのポイントを共有する3つの別個の接続)を生成し、その結果、(三角形の集合によって記述される)表面を生成する。本明細書では三角形について説明するが、他の幾何学形状も可能である(例えば矩形)。
【0030】
色を使用して、異なる色を含む三角形を識別することによって、接続性を符号化することができる。3つの接続によって識別される各三角形を、一意の色でコード化する。
【0031】
図4に、いくつかの実施形態によるパッチ投影及びパッチラスタ化を含むパッチ生成の図を示す。パッチ投影は、三角形の成分を生成することを含む。少なくとも1つの頂点によって接続され(例えば隣接する)、かつ同じ分類である全ての三角形を一緒に、1つのパッチとしてグループ化する。
【0032】
パッチ投影は、また、キャンバス上のパッチに各三角形を投影することを含む。頂点の投影された位置が既に占有されている場合、別のパッチにおいて三角形を符号化するので、三角形は欠損三角形リストに進み、後で再び処理される。
【0033】
三角形が、最大許容深度を上回る深度値になるバウンディングボックスを生成する場合、値は投影されず、これも欠損三角形リストに進む。
【0034】
パッチラスタ化は、投影された三角形をラスタ化して、ポイントクラウド表現(ジオメトリ及び属性)のためにポイントを生成することを含む。このパッチ投影及びパッチラスタ化のループは、三角形の全てが投影されるまで実行される。
【0035】
三角形の全てが投影された後に、欠損三角形リスト内の三角形をパッチとしてまとめて、新たなパッチへの投影を再び試みる。
【0036】
また、2D表面上にメッシュを投影することによって、三角形の投影によってカバーされるエリアを、画素の集合によって決定する。グループ化された画素が異なる色でコード化される場合、画像内の異なる色によって、三角形を識別することができる。三角形が分かると、三角形を形成する3つの接続を識別するだけで、接続性を取得することができる。
【0037】
パッチに各三角形を投影する。頂点の投影された位置が既に占有されている場合、別のパッチにおいて三角形を符号化するので、三角形は欠損三角形リストに進み、後で再び処理される。代替的に、マップを使用して、重なる頂点を識別して、重なる頂点を含む三角形を表現することができる。別の代替例では、ポイントを別個のレイヤ(例えば、1つのレイヤ内の1つのポイントのセット及び第2のレイヤ内の第2のポイントのセット)に分離することができる。
【0038】
画像400は、少なくとも1つの頂点によって接続される同じ分類内の三角形を含むブランクパッチを示す。画像402は、頂点及び接続性を示す三角形を含むパッチを示す。画像404は、属性情報を含むパッチを示す。
【0039】
図5に、いくつかの実施形態によるベースメッシュ符号化/シグナリングのためのデータ構造を示す。ベースメッシュシグナリングに関して、ビデオシーケンスと関連付けられるメタデータのために、パケット及びアトラスストリームを使用する。2D空間内の頂点の位置を追加することによって、メタデータを追加する。
【0040】
データ構造は、ヘッダと、タイルグループレイヤと、パッチ情報(例えば、面の数、頂点の数、0から面情報を含む面の数までのリスト、及び0から頂点情報を含む頂点の数までのリスト)とを含む。頂点情報は、2D空間内の頂点の位置である。リストを用いて、ポイントクラウドからメッシュを再構築することができる。頂点リスト及び接続性情報を送信することによって、いかなる圧縮もなく、送信を実行することができる。いくつかの実施形態では、圧縮を利用するために、TFAN又はEdgebreakerを使用して、パッチ接続性を符号化することができる。いくつかの実施形態では、頂点のための平行四辺形予測を使用することができる。いくつかの実施形態では、DPCM符号化を実装する。いくつかの実施形態では、オキュパンシーマップを使用して(例えば、ポイントが存在するかどうかを示すためのフラグを含み、ポイントが頂点であるかどうかを示すためのフラグを使用することによって)頂点リストを符号化する。
【0041】
パッチ内のポイントのリストは、三角形の頂点であり、メッシュの接続性は、投影の後でも同じである。
【0042】
(例えばカラーコードに基づいて)接続性を符号化する。いくつかの実施形態では、整数値のリストを符号化する。リスト内の差分パルス符号変調(DPCM)を使用することができる。いくつかの実施形態では、リストを精細化することができるか、又はスマートメッシュ符号化(例えばEdgebreaker)を実装することができる。いくつかの実施形態では、(例えば、Edgebreaker又はTFAN(両方とも、符号化アルゴリズムである)を使用して)より高度な方法も可能である。
【0043】
パッチごとに、追加の情報を送信することができる。各パッチ情報内で、接続された成分(例えば頂点)のリストと、2D空間内の頂点の位置とを送信する。本明細書で説明するように、より効率的な表記法が、面及び頂点のためにDPCMスキームを使用することができる。
【0044】
追跡されたメッシュパッチデータユニットは、パッチを使用して、接続性がフレーム相互間で変化しなかったことを示すことができる。これは、特に、追跡されたメッシュの場合に役に立つことができる。というのは、デルタ位置のみを送信するからである。追跡されたメッシュの場合、バウンディングボックスの位置及び回転(四元数を使用する、新たに導入されたシンタックス要素)によって、グローバルモーションをキャプチャすることができ、頂点モーションによって表面モーションをキャプチャする。デルタ頂点情報を送信するためのビットの数は、AFPSで送信することができる。代替的に、モーション情報をホモグラフィ変換として送信することができる。
【0045】
図6に、いくつかの実施形態によるポイントクラウドとメッシュ情報とを組み合わせる例を示す。説明するように、ポイントクラウドとメッシュ情報とを組み合わせることができる。例えば、頭部にはポイントクラウドのみのパッチを使用することができ、一方、身体にはポイントクラウド及びメッシュパッチを使用する。
【0046】
図7A及び図7Bに、いくつかの実施形態による追跡されていないメッシュ情報と追跡されたメッシュ情報とを組み合わせる例を示す。トラッキングの問題を回避するために、いくつかの実装は、メッシュを、追跡された部分と、追跡されていない部分とにセグメント化する。追跡された部分は、時間的に一貫しており、tracked_mesh_patch_data_unit()によって表すことができ、一方、追跡されていない部分は、新たな各フレームであり、mesh_patch_data_unit()によって表すことができる。本明細書で説明するようにポイントクラウドをジオメトリに混入することができるので、例えば、元のメッシュを保持して、メッシュの上にポイントクラウドを挿入して欠陥を隠して、表面表現を改善することができる。
【0047】
図8に、いくつかの実施形態によるV-PCC画像生成の図を示す。通常、V-PCCのために、オキュパンシーマップ及びジオメトリを生成する。圧縮されていないジオメトリから、属性マップを生成する。メッシュを使用して、属性転送を実行することができる。
【0048】
図9に、いくつかの実施形態によるメッシュ再構築の図を示す。パッチが生成される/受け取られると、接続性は、新たな頂点ナンバリングを使用するが、パッチを一緒に追加することができる。各パッチはミニメッシュに類似しているので、パッチの全てを一緒に結合する。頂点変換があり得るが、パッチを一緒に結合して、メッシュを形成する。しかしながら、頂点のうちのいくつかは、圧縮のために一致しないので、更なるステップを実行すべきである。ジッパリングアルゴリズムを実装して、位置ずれした頂点の問題に対処することができる。
【0049】
図10に、いくつかの実施形態によるジッパリングアルゴリズムの図を示す。ジッパリングアルゴリズムは、頂点を境界頂点及び非境界頂点として分類するステップを含む。分類するステップは、他の任意の頂点が特定の方向の頂点に接続するかどうかを判定するなどの任意の方法で実行することができる。次に、境界の最も隣接する境界頂点を決定し、それらの隣接する境界の頂点をマージする(例えば、同じ位置に置く)。更に、V-PCCでは、3つの座標のうちの2つを可逆的に符号化するので、x,y,zから、座標のうちの2つが正確であることが分かり、これにより、近いポイントを決定するのを助けることができる。同様に、法線座標のみを変えることによって生成される線が互いに交差する場合、2つのポイントは一致するとみなされる。適応的な方法を実装することができる。すなわち、パッチの境界の基準ポイントが与えられると、ポイントは、少なくとも1つの潜在的な候補に出合うまでますます変化することができ、新たな距離を使用して、他のパッチからの候補ポイントを修正し、複数の一致する候補の場合、最大数の一致を生成した値に基準を修正する。新たな修正された基準を用いて、隣接するパッチから最も近い境界画素を探索する。一致が見つかった場合、境界頂点値を基準ポイントに修正し、リストから境界頂点を削除する。そうでない場合には、非境界頂点のリスト内の一致の探索を実行する。一致が見つかった場合、非境界頂点値を基準ポイントに修正する。
【0050】
図11に、いくつかの実施形態による頂点を境界又は非境界として分類する図を示す。頂点がオープンエリア(例えば黒色のエリア)に接続される場合、その頂点は境界である。別の例では、頂点に隣接するオキュパンシーマップ内のゼロ値は、頂点が境界頂点であることを示す。
【0051】
図12に、いくつかの実施形態による代替の接続性符号化の図を示す。特定の値を使用して、頂点の存在及びエッジの存在を示すことができる。例えば、画像はオキュパンシーマップを示し、このオキュパンシーマップにおいて、パッチのうちの1つは、頂点を示すポイントと、エッジを示す黒い線とを含む。
【0052】
図13に、いくつかの実施形態による投影ベースのメッシュ圧縮方法を実装するように構成される例示的なコンピュータ装置のブロック図を示す。コンピュータ装置1300を使用して、3Dコンテンツを含む画像及びビデオなどの情報を、取得、記憶、計算、処理、通信及び/又は表示することができる。コンピュータ装置1300は、投影ベースのメッシュ圧縮の態様のいずれかを実装することができる。一般に、コンピュータ装置1300を実装するのに適したハードウェア構造は、ネットワークインターフェイス1302、メモリ1304、プロセッサ1306、I/Oデバイス1308、バス1310、及び記憶装置1312を含む。プロセッサの選択は、十分な速度を有する好適なプロセッサが選ばれる限り重要ではない。メモリ1304は、当該技術分野で公知の任意の従来のコンピュータメモリとすることができる。記憶装置1312は、ハードドライブ、CDROM、CDRW、DVD、DVDRW、高精細ディスク/ドライブ、超高精細ドライブ、フラッシュメモリカード又は他の任意の記憶装置を含むことができる。コンピュータ装置1300は、1又は2以上のネットワークインターフェイス1302を含むことができる。ネットワークインターフェイスの一例は、イーサネット又は他のタイプのLANに接続されるネットワークカードを含む。I/Oデバイス1308は、以下のもの、すなわち、キーボード、マウス、モニタ、スクリーン、プリンタ、モデム、タッチスクリーン、ボタンインターフェイス及び他のデバイスのうちの1又は2以上を含むことができる。投影ベースのメッシュ圧縮方法を実装するのに使用される投影ベースのメッシュ圧縮アプリケーション1330は、記憶装置1312及びメモリ1304に記憶されて、アプリケーションが通常処理されるように処理される可能性が高い。コンピュータ装置1300は、図13に示すより多い又は少ない構成要素を含むことができる。いくつかの実施形態では、投影ベースのメッシュ圧縮ハードウェア1320が含まれる。図13のコンピュータ装置1300は、投影ベースのメッシュ圧縮方法のためのアプリケーション1330及びハードウェア1320を含むが、投影ベースのメッシュ圧縮方法は、コンピュータ装置に、ハードウェア、ファームウェア、ソフトウェア又はそれらの任意の組み合わせとして実装することができる。例えば、いくつかの実施形態では、投影ベースのメッシュ圧縮アプリケーション1330は、メモリにプログラムされて、プロセッサを使用して実行される。別の例では、いくつかの実施形態では、投影ベースのメッシュ圧縮ハードウェア1320は、投影ベースのメッシュ圧縮方法を実装するように専用に設計されるゲートを含む、プログラムされたハードウェアロジックである。
【0053】
いくつかの実施形態では、投影ベースのメッシュ圧縮アプリケーション1330は、いくつかのアプリケーション及び/又はモジュールを含む。いくつかの実施形態では、モジュールは、1又は2以上のサブモジュールも含む。いくつかの実施形態では、より少ない又は追加のモジュールを含むことができる。
【0054】
好適なコンピュータ装置の例は、パーソナルコンピュータ、ラップトップコンピュータ、コンピュータワークステーション、サーバ、メインフレームコンピュータ、ハンドヘルドコンピュータ、携帯情報端末、セルラ電話/携帯電話、スマート家電、ゲーム機、デジタルカメラ、デジタルカムコーダ、カメラ付き携帯電話、スマートフォン、携帯音楽プレーヤー、タブレットコンピュータ、移動体デバイス、ビデオプレーヤー、ビデオディスクライター/プレーヤー(例えば、DVDライター/プレーヤー、高精細ディスクライター/プレーヤー、超高精細ディスクライター/プレーヤー)、テレビジョン、家庭用娯楽システム、拡張現実デバイス、仮想現実デバイス、スマートジュエリー(例えば、スマートウォッチ)、車両(例えば、自動運転車両)又は他の任意の好適なコンピュータ装置を含む。
【0055】
投影ベースのメッシュ圧縮方法を利用するために、装置が3Dコンテンツを取得又は受信して、3Dコンテンツの適切で効率的な表示を可能にするように最適化された方法でコンテンツを処理及び/又は送信する。投影ベースのメッシュ圧縮方法は、ユーザの援助によって又はユーザが関与することなく自動的に実装することができる。
【0056】
動作時、投影ベースのメッシュ圧縮方法は、従来の実装と比較して、より効率的でより正確な投影ベースのメッシュ圧縮を可能にする。
【0057】
例示的な実装では、1つのみのフレーム及び単一のマップを含むTMC2v8.0上に、本明細書で説明する投影ベースのメッシュ圧縮を実装した。この実装からの情報は、以下を含む。
ビットストリームスタット(stat):
ヘッダ:16B 128b
vpccUnitSize[VPCC_VPS]:31 B 248 b
vpccUnitSize[VPCC_AD]:190396 B 1523168 b
vpccUnitSize[VPCC_OVD]:29591 B 236728 b(Ocm video = 29583 B)
vpccUnitSize[VPCC_GVD]:59108 B 472864 b(Geo video = 59100 B)
vpccUnitSize[VPCC_AVD]:172441 B 1379528 b(Tex video = 172433 B)
TotalMetadata:220050 B 1760400 b
TotalGeometry:59100 B 472800 b
TotalTexture:172433 B 1379464 b
Total:451583 B 1379464 b
全ビットストリームサイズ 451599 B
【0058】
投影ベースのメッシュ圧縮のいくつかの実施形態
1.装置の非一時的メモリにプログラムされた方法であって、
入力メッシュに対してメッシュボクセル化を実行するステップと、
前記メッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、
前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、
前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、
前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、
を含む方法。
【0059】
2.前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュ値をシフト及び/又はスケーリングするステップを含む、第1項に記載の方法。
【0060】
3.前記メッシュボクセル化は、ゼロを下回る最も低い頂点値を見つけて、前記最も低い頂点値がゼロを上回るように前記メッシュ値をシフトするステップを含む、第2項に記載の方法。
【0061】
4.前記パッチ生成を実装するステップは、
三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、
前記法線に従って三角形をカテゴリ化するステップと、
隣接する三角形を分析することによって、精細化プロセスを実装するステップと、
を含む、第1項に記載の方法。
【0062】
5.ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するステップを更に含む、第1項に記載の方法。
【0063】
6.前記ビットストリームに、追跡された頂点のデルタ位置情報が含まれる、第1項に記載の方法。
【0064】
7.ジッパリングを実装するステップを更に含み、前記ジッパリングを実装するステップは、
頂点を、境界頂点又は非境界頂点として分類するステップと、
前記境界頂点のうちの隣接する境界頂点を決定するステップと、
前記隣接する境界頂点をマージするステップと、
を含む、第1項に記載の方法。
【0065】
8.装置であって、
アプリケーションを記憶するための非一時的メモリであって、前記アプリケーションは、
入力メッシュに対してメッシュボクセル化を実行するステップと、
前記メッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、
前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、
前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、
前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、
を実行するためのものである、非一時的メモリと、
前記メモリに結合され、前記アプリケーションを処理するように構成されるプロセッサと、
を含む装置。
【0066】
9.前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュ値をシフト及び/又はスケーリングするステップを含む、第8項に記載の装置。
【0067】
10.前記メッシュボクセル化は、ゼロを下回る最も低い頂点値を見つけて、前記最も低い頂点値がゼロを上回るように前記メッシュ値をシフトするステップを含む、第9項に記載の装置。
【0068】
11.前記パッチ生成を実装するステップは、
三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、
前記法線に従って三角形をカテゴリ化するステップと、
隣接する三角形を分析することによって、精細化プロセスを実装するステップと、
を含む、第8項に記載の装置。
【0069】
12.前記アプリケーションは、ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するように更に構成される、第8項に記載の装置。
【0070】
13.前記ビットストリームに、追跡された頂点のデルタ位置情報が含まれる、第8項に記載の装置。
【0071】
14.前記アプリケーションは、ジッパリングを実装するように更に構成され、前記ジッパリングを実装するステップは、
頂点を、境界頂点又は非境界頂点として分類するステップと、
前記境界頂点のうちの隣接する境界頂点を決定するステップと、
前記隣接する境界頂点をマージするステップと、
を含む、第8項に記載の装置。
【0072】
15.システムであって、
3次元コンテンツを取得するための1又は2以上のカメラと、
前記3次元コンテンツを符号化するためのエンコーダであって、前記3次元コンテンツの符号化は、
前記3次元コンテンツの入力メッシュに対してメッシュボクセル化を実行するステップと、
前記メッシュを、ラスタ化されたメッシュ表面と頂点位置及び接続性情報とを含むパッチにセグメント化するパッチ生成を実装するステップと、
前記ラスタ化されたメッシュ表面から、ビデオベースのポイントクラウド圧縮(V-PCC)画像を生成するステップと、
前記頂点位置及び接続性情報を用いてベースメッシュ符号化を実装するステップと、
前記V-PCC画像と前記ベースメッシュ符号化とに基づいて、V-PCCビットストリームを生成するステップであって、前記V-PCCビットストリームは、ポイントクラウド再構築及びメッシュ再構築のための情報を含む、ステップと、
によって実行される、エンコーダと、
を含むシステム。
【0073】
16.前記メッシュボクセル化は、負の値及び非整数値を回避するように、メッシュ値をシフト及び/又はスケーリングするステップを含む、第15項に記載のシステム。
【0074】
17.前記メッシュボクセル化は、ゼロを下回る最も低い頂点値を見つけて、前記最も低い頂点値がゼロを上回るように前記メッシュ値をシフトするステップを含む、第16項に記載のシステム。
【0075】
18.前記パッチ生成を実装するステップは、
三角形ごとの法線を計算するステップであって、前記三角形の前記法線を計算するステップは、エッジ間の外積を使用するステップを含む、ステップと、
前記法線に従って三角形をカテゴリ化するステップと、
隣接する三角形を分析することによって、精細化プロセスを実装するステップと、
を含む、第15項に記載のシステム。
【0076】
19.前記エンコーダは、ポイントクラウドを部分的に含み、かつメッシュを部分的に含むコンテンツを表示するように更に構成される、第15項に記載のシステム。
【0077】
20.前記ビットストリームに、追跡された頂点のデルタ位置情報が含まれる、第15項に記載のシステム。
【0078】
21.前記エンコーダは、ジッパリングを実装するように更に構成され、前記ジッパリングを実装するステップは、
頂点を、境界頂点又は非境界頂点として分類するステップと、
前記境界頂点のうちの隣接する境界頂点を決定するステップと、
前記隣接する境界頂点をマージするステップと、
を含む、第15項に記載のシステム。
【0079】
本発明の構成及び動作の原理の理解を容易にするために、詳細内容を組み込んだ特定の実施形態に関して本発明を説明してきた。このような本明細書における特定の実施形態及びその詳細内容への言及は、本明細書に添付される特許請求の範囲を限定することを意図するものではない。特許請求の範囲によって規定される本発明の精神及び範囲から逸脱することなく、例示のために選択された実施形態に、他の様々な修正を行うことができることは、当業者に容易に理解されるであろう。
【符号の説明】
【0080】
100 入力メッシュ
102 メッシュボクセル化
104 パッチ生成
106 V-PCC画像生成
108 ベースメッシュ符号化
110 V-PCCビットストリーム
112 ポイントクラウド再構築
114 メッシュ再構築
200 フレーム
202 シーケンスバウンディングボックス
210 ボクセル化されたメッシュ
300 画像
302 灰色の三角形
304 白色の三角形
306 上
308 前方
400 画像
402 画像
404 画像
1300 コンピュータ装置
1302 ネットワークインターフェイス
1304 メモリ
1306 プロセッサ
1308 I/Oデバイス
1310 バス
1312 記憶装置
1320 投影ベースのメッシュ圧縮ハードウェア
1330 投影ベースのメッシュ圧縮アプリケーション
図1
図2
図3
図4
図5
図6
図7A
図7B
図8
図9
図10
図11
図12
図13