JP7703796B2 - 動的メッシュコーディングのためのパッチ生成 - Google Patents
動的メッシュコーディングのためのパッチ生成 Download PDFInfo
- Publication number
- JP7703796B2 JP7703796B2 JP2024556568A JP2024556568A JP7703796B2 JP 7703796 B2 JP7703796 B2 JP 7703796B2 JP 2024556568 A JP2024556568 A JP 2024556568A JP 2024556568 A JP2024556568 A JP 2024556568A JP 7703796 B2 JP7703796 B2 JP 7703796B2
- Authority
- JP
- Japan
- Prior art keywords
- triangle
- triangles
- checking
- depth
- vertex
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three-dimensional [3D] modelling for computer graphics
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/77—Retouching; Inpainting; Scratch removal
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/248—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Image Generation (AREA)
Description
〔関連出願の相互参照〕
本出願は、2022年3月25日に出願された「動的メッシュコーディングのためのパッチ生成(PATCH GENERATION FOR DYNAMIC MESH CODING)」という名称の米国仮特許出願第63/269,910号の米国特許法第119条に基づく優先権を主張するものであり、この出願は、全ての目的に対してその全体が引用により本明細書に組み込まれる。
本出願は、2022年3月25日に出願された「動的メッシュコーディングのためのパッチ生成(PATCH GENERATION FOR DYNAMIC MESH CODING)」という名称の米国仮特許出願第63/269,910号の米国特許法第119条に基づく優先権を主張するものであり、この出願は、全ての目的に対してその全体が引用により本明細書に組み込まれる。
本発明は、3次元グラフィックスに関する。より具体的には、本発明は、3次元グラフィックスのコーディングに関する。
近年、3Dから2Dへの投影に基づいて、ポイントクラウドなどのボリュームコンテンツを圧縮する新しい方法が標準化されつつある。V3C(視覚ボリュームビデオベースの圧縮)としても知られるこの方法は、3Dボリュームデータをいくつかの2Dパッチにマッピングし、更にパッチをアトラス画像に配置し、その後、ビデオエンコーダで符号化する。アトラス画像は、ポイントのジオメトリ、それぞれのテクスチャ、及びポイントクラウド再構築のためにどの位置を考慮すべきかを示す占有マップに対応する。
2017年、MPEGは、ポイントクラウドの圧縮のための提案募集(CfP)を実施した。いくつかの提案の評価の後、現在、MPEGは、ポイントクラウド圧縮のための2つの異なる技術、すなわち、3Dネイティブコーディング技術(オクツリー及び同様のコーディング方法に基づく)、又は3Dから2Dへの投影後に従来のビデオコーディングを行うことを検討している。動的3Dシーンの場合、MPEGは、パッチ表面モデリング、3Dから2D画像へのパッチの投影、及びHEVCなどのビデオエンコーダによる2D画像のコーディングに基づいて、テストモデルソフトウェア(TMC2)を使用している。この方法は、ネイティブ3Dコーディングよりも効率的であることが判明しており、許容できる品質で競争力のあるビットレートを実現することができる。
投影ベースの方法(ビデオベースの方法、又はV-PCCとしても知られる)による3Dポイントクラウドのコーディングが成功したため、この標準の将来のバージョンでは、3Dメッシュなどの更なる3Dデータを含むことが予想される。しかしながら、この標準の現在のバージョンは、接続されていないポイントのセットの送信にのみ適しているため、3Dメッシュ圧縮で必要とされるようなポイントの接続性を送信する機構がない。
V-PCCの機能をメッシュに拡張するための方法も提案されている。1つの可能な方法は、V-PCCを使用して頂点を符号化し、次に、TFAN又はEdgebreakerなどのメッシュ圧縮方法を使用して接続性を符号化することである。この方法の制限は、頂点から生成されるポイントクラウドがまばらではなく、投影後に効率的に符号化することができるように、元のメッシュが高密度である必要があることである。更に、頂点の順序は接続性のコーディングに影響を及ぼすため、メッシュの接続性を再編成するための異なる方法が提案されている。まばらなメッシュを符号化するための代替の方法は、RAWパッチデータを使用して、3Dの頂点の位置を符号化することである。RAWパッチは(x,y,z)を直接符号化するので、この方法では、全ての頂点がRAWデータとして符号化され、一方、接続性は、前述のように、同様のメッシュ圧縮方法によって符号化される。RAWパッチにおいて、頂点は任意の好ましい順序で送信することができるため、接続性符号化から生成される順序を使用することができることに留意されたい。この方法は、まばらなポイントクラウドを符号化することができるが、RAWパッチは、3Dデータを符号化するのに効率的ではなく、この方法から、三角形の面の属性などの更なるデータが欠落している場合がある。
アーキテクチャは、メッシュの接続性を変換して非可逆圧縮を可能にする新しいブロックを含む。更に、方法は、メッシュから表面パッチを生成し、オブジェクトの全体的な態様を維持しながら、V3C標準を使用して効率的な符号化のためのパッチを生成する。三角形が、接続されたコンポーネント(connected components)に一緒に結合され、各三角形の表面への条件付き投影が実行されて、投影された表面での接続性を強化する。新しい深度フィルタリングアルゴリズムを使用して、圧縮性能を向上させることができる。本明細書では、接続性圧縮のために追加される新しいブロックと、2Dの接続性を確保してUVテクスチャマップの送信を可能にし、深度値をフィルタリングして深度画像内の高周波エッジを回避するために導入される技術について説明する。
1つの態様では、パッチ生成の方法は、三角形の面法線を計算するステップと、前記三角形の面隣接(face adjacency)を計算するステップと、前記三角形の面近隣(face neighbors)を計算するステップと、前記三角形の前記法線を分類することを含む初期セグメンテーションを実装するステップと、前記分類された法線内の外れ値を特定して平滑化することを含む精緻化を実行するステップと、前記三角形のパッチセグメンテーションを実行するステップと、を含む。前記三角形の面隣接を計算するステップ及び前記三角形の面近隣を計算するステップは、隣接する三角形及び近隣の三角形のリストを生成することを含む。前記隣接する三角形及び前記近隣の三角形のリストを生成することは、テクスチャマップ境界を考慮に入れることを含む。前記テクスチャマップ境界を考慮に入れることは、現在の三角形の境界の反対側にある三角形を除外することを含む。パッチセグメンテーションを実行するステップは、縮退(degenerates)を除去することと、頂点の遮蔽をチェックすることと、ハーフエッジをチェックすることと、表面の遮蔽をチェックすることと、深度フィルタリングと、深度範囲及び接続性の分析と、三角形をラスタ化することと、を含む。縮退した三角形(degenerate triangles)を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含み、頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含み、ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含み、表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含み、深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定し、深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含み、前記三角形を投影してラスタ化する。基準が満たされない時に、前記三角形は欠落三角形リスト(missing triangles list)に追加される。
別の態様では、装置は、アプリケーションを記憶するための非一時的メモリであって、前記アプリケーションは、三角形の面法線を計算することと、前記三角形の面隣接を計算することと、前記三角形の面近隣を計算することと、前記三角形の前記法線を分類することを含む初期セグメンテーションを実装することと、前記分類された法線内の外れ値を特定して平滑化することを含む精緻化を実行することと、前記三角形のパッチセグメンテーションを実行することと、を行うためのものである、非一時的メモリと、前記メモリに結合され、前記アプリケーションを処理するように構成されるプロセッサと、を含む。前記三角形の面隣接を計算すること及び前記三角形の面近隣を計算することは、隣接する三角形及び近隣の三角形のリストを生成することを含む。前記隣接する三角形及び前記近隣の三角形のリストを生成することは、テクスチャマップ境界を考慮に入れることを含む。前記テクスチャマップ境界を考慮に入れることは、現在の三角形の境界の反対側にある三角形を除外することを含む。パッチセグメンテーションを実行することは、縮退を除去することと、頂点の遮蔽をチェックすることと、ハーフエッジをチェックすることと、表面の遮蔽をチェックすることと、深度フィルタリングと、深度範囲及び接続性の分析と、三角形をラスタ化することと、を含む。縮退した三角形を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含み、頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含み、ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含み、表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含み、深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定し、深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含み、前記三角形を投影してラスタ化する。基準が満たされない時に、前記三角形は欠落三角形リストに追加される。
別の態様では、パッチセグメンテーションの方法は、縮退情報(degenerate information)を除去するステップと、三角形の頂点の遮蔽をチェックするステップと、前記三角形のハーフエッジをチェックするステップと、前記三角形の表面の遮蔽をチェックするステップと、前記三角形の深度フィルタリングと、前記三角形の深度範囲及び接続性の分析を実行するステップと、前記三角形をキャンバスに投影してラスタ化するステップと、を含む。縮退した三角形を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含む。頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含む。ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含む。表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含む。深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定する。深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含む。基準が満たされない時に、前記三角形は欠落三角形リストに追加される。
アーキテクチャは、メッシュの接続性を変換して非可逆圧縮を可能にする新しいブロックを含む。更に、方法は、メッシュから表面パッチを生成し、オブジェクトの全体的な態様を維持しながら、V3C標準を使用して効率的な符号化のためのパッチを生成する。三角形が、接続されたコンポーネントに一緒に結合され、各三角形の表面への条件付き投影が実行されて、投影された表面での接続性を強化する。新しい深度フィルタリングアルゴリズムを使用して、圧縮性能を向上させることができる。本明細書では、接続性圧縮のために追加される新しいブロックと、2Dの接続性を確保してUVテクスチャマップの送信を可能にし、深度値をフィルタリングして深度画像内の高周波エッジを回避するために導入される技術について説明する。本明細書で説明するアーキテクチャは、2021年5月17日に出願された「ビデオベースのメッシュ圧縮(VIDEO BASED MESH COMPRESSION)」という名称の米国特許出願第17/322,662号、2020年10月7日に出願された「ビデオベースのメッシュ圧縮」という名称の米国仮特許出願第63/088,705号、及び2020年10月6日に出願された「ビデオベースのメッシュ圧縮」という名称の米国仮特許出願第63/087,958号に関連し、これらの出願はいずれも、全ての目的に対してその全体が引用により本明細書に組み込まれる。また、本明細書で説明する方法は、2021年1月28日に出願された「投影ベースのメッシュ圧縮(PROJECTION-BASED MESH COMPRESSION)」という名称の米国特許出願第17/161,300号に関連し、この出願は、全ての目的に対してその全体が引用により本明細書に組み込まれる。
図1に、いくつかの実施形態による動的メッシュコーディングを実装する方法のフローチャートを示す。入力メッシュ100が受信又は取得される。例えば、入力メッシュは(例えば、ネットワークデバイスから)ダウンロードされるか、又はデバイス(例えば、カメラ又は自律走行車)によって取得/キャプチャされる。
メッシュボクセル化102が実行される。メッシュは、頂点の位置を浮動小数点数で有することができるため、これらの位置は整数空間に変換される。V-PCC及びV3Cは、ボクセル化されたポイントクラウドを想定している。
次に、3Dメッシュの簡略化104が実行される。3Dメッシュの簡略化104は、パッチ生成の前に行われる。3Dメッシュの簡略化104は、投影する三角形の数を減らし、境界に低解像度情報を含むパッチを生成し、ジオメトリ画像から高解像度情報を回復することができるが、境界はまだ低解像度である。
ステップ106において、パッチ生成(又は作成)が実装される。パッチ生成106は、法線計算150、隣接計算152、近隣計算154、初期セグメンテーション156、精緻化158、及びパッチセグメンテーション160を含む。法線計算150では、各三角形の法線(例えば、三角形のエッジの外積)を計算する。隣接計算152では、各三角形の隣接関係(例えば、メッシュ内のどの三角形が、現在の三角形又は他の三角形に対して近隣である又は接触しているか)を計算する。近隣計算154は、近隣の三角形を計算することを含む。初期セグメンテーション156は、法線を向きに従って分類することを含む。例えば、三角形の法線は、上、下、左、右、前、又は後ろを向くことができ、方向/向きに基づいて分類することができる。いくつかの実施形態では、三角形は、法線の向きに基づいて色分けされる(例えば、法線が上を向いている三角形は全て緑色に着色される)。精緻化158は、外れ値(例えば、青い三角形に囲まれた単一の赤い三角形)を特定して、外れ値を平滑化する(例えば、単一の赤い三角形を、その近隣の青い三角形と一致するように変更する)ことを含む。精緻化158は、近隣を分析し、向きを平滑化する(例えば、法線の向きを調整する)ことによって実行される。滑らかな表面になると、パッチセグメンテーション160が実行されて、(例えば、向きに基づいて)特定の分類の三角形に対してパッチをセグメント化する。セグメンテーションは、パッチ投影を含むことができる。セグメンテーションでは、頂点及び接続性がパッチ上に表示される。例えば、この例の身体及び顔は、これらを分離する異なる分類の三角形があるため、別個のセグメンテーションである。いくつかの実施形態では、セグメンテーションはラスタ化される(例えば、ポイントの距離を含めて表面上のポイントをサンプリングして、ジオメトリ画像及び表面の属性を生成する)。ラスタ化されたメッシュ表面は、V3C画像と非常に類似する。
パッチ生成の結果として、セグメント化されたパッチ又はラスタ化されたメッシュ表面と、頂点の位置及び接続性がもたらされる。セグメント化されたパッチ又はラスタ化されたメッシュ表面は、ステップ108において、パッチパッキングで利用される。パッチパッキング108は、パッチをアトラス又は2Dキャンバスにパッキングすることを含むことができる。
パッチパッキング108の後、プロセスは、テクスチャ画像生成110、ジオメトリ画像生成112、及び2Dメッシュの簡略化114へと続く。2Dメッシュの簡略化114は、パッチ生成後に実行される。2Dメッシュの簡略化114は、パッチ内の三角形のみを削減し(境界三角形は削減されない)、境界に高解像度情報を含むパッチを生成し、パッチに保存された境界領域を含むジオメトリ画像から高解像度情報を回復することができる。
テクスチャ画像生成110から画像パディング116が行われ、その後、パディングされた画像は、ビデオコーデック122に送られて符号化される。テクスチャ画像は、テクスチャ情報を格納する。画像パディング116は、パッチ間の間隔を提供する。ビデオコーデック122は、任意の適切な符号化スキームを実行することができる。
ジオメトリ画像生成112から画像パディング118が行われ、その後、パディングされた画像は、ビデオコーデック124に送られて符号化される。ジオメトリ画像は、ジオメトリ情報を格納する。画像パディング118は、パッチ間の間隔を提供する。ビデオコーデック124は、任意の適切な符号化スキームを実行することができる。
2Dメッシュの簡略化114から接続性符号化120が行われ、その後、接続性情報は、メッシュジッパリング(mesh zippering)126及びアトラスコーデック128に送られて符号化される。メッシュジッパリング126は、ビデオコーデック124からも情報を受け取る。接続性符号化120は、ポイントの接続性情報を符号化することを含む。メッシュジッパリング126は、三角形又はパッチ間のギャップを除去するための実装である。
マルチプレクサ130は、V3Cビットストリームを出力する。V3Cビットストリームにより、ポイントクラウドの再構築及び/又はメッシュの構築が可能になる。ポイントクラウド及び/又はメッシュは、V3Cビットストリームから抽出することができ、これにより、大きな柔軟性をもたらす。いくつかの実施形態では、より少ないステップ又は追加のステップが実装される。いくつかの実施形態では、ステップの順序が変更される。
図2に、いくつかの実施形態によるパッチ生成を実装する方法のフローチャートを示す。パッチセグメンテーションにより、接続されたコンポーネント200が生成される。接続されたコンポーネント200は、同じ分類(例えば、図5では同じ色)を有する、近隣の三角形及び/又は隣接する三角形である。接続されたコンポーネント内の各三角形に対して、条件付きラスタ化202が実行される。つまり、三角形は、指定された基準を満たす場合にのみ、パッチに投影される。これにより、三角形が一貫して投影されることが保証される。三角形が指定された基準を満たさない場合、その三角形は欠落三角形とみなされ、欠落三角形はリストに戻され、異なる近隣の三角形又は隣接する三角形で再試行され、指定された基準による分析プロセスが繰り返される。
ラスタ化基準(例えば、三角形が投影されるかどうか)は、縮退の除去204、頂点の遮蔽のチェック206、ハーフエッジのチェック208、表面の遮蔽のチェック210、深度フィルタリング212、深度範囲及び接続性214、及び三角形のラスタ化216を含む。
縮退した三角形の除去204は、線である三角形(例えば、2つの点が重なり合って、三角形ではなく線が存在する場合)を除去することを含む。線又は点が除去され、少なくとも特定の領域(例えば、閾値を超える)を有する三角形のみが保持される。
頂点の遮蔽のチェック206は、三角形の頂点が遮蔽されているかどうかを判定することを含む。三角形の頂点が、既に投影されている三角形によって遮蔽されている(又はそれを閉塞する可能性がある)場合、投影は許可されず、三角形はリストから削除され、欠落三角形リストに移動する。
ハーフエッジのチェック208は、投影すべき三角形が、2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定する。既に共有されている場合、投影は許可されず、三角形はリストから削除され、欠落三角形リストに移動する。
表面の遮蔽のチェック210では、三角形の頂点が遮蔽されていなくても、点の間の領域が既に投影された三角形(例えば、既に投影された三角形の頂点)によって遮蔽されている(又はそれを遮蔽する可能性がある)場合、投影は許可されず、三角形はリストから削除され、欠落三角形リストに移動する。
深度フィルタリング212は、近隣の点の三角形の深度差が閾値よりも小さいことを確認する(例えば、現在の三角形の点が、近隣の三角形の点と比較される)。深度差が閾値よりも大きい場合、三角形は投影されない。
深度範囲及び接続性214は、投影すべき三角形が既に投影された三角形の少なくとも1つ(例えば、共有エッジ又は頂点)に接しているかどうかを判定することを含む。投影すべき三角形と既に投影された三角形との間に接続性がない場合、投影は許可されず、三角形はリストから削除され、欠落三角形リストに移動する。深度範囲もチェックされる。
接続性及び許容可能な深度範囲がある場合(及び他の全ての基準が満たされている場合)、三角形は(例えば、キャンバスへの)投影が許容され、三角形はラスタ化(216)される(例えば、表面上の点を生成し、ジオメトリ画像及びテクスチャ画像を生成して、パッチ上の接続性を符号化する)。
図3に、いくつかの実施形態による法線を計算する図を示す。いくつかの実施形態では、面法線のみが計算される。法線300は、2つのベクトル(例えば、AB及びAC)の外積である。画像302は、面法線を含む例示的な画像を示す。
図4に、いくつかの実施形態による面隣接及び面近隣の分析の図を示す。三角形400は、多くの隣接する三角形及び近隣の三角形を有する。隣接する三角形は、指定された三角形と少なくとも1つの頂点を共有する三角形である。例えば、三角形1~15{T1、...、T15}は全て、三角形400と頂点を共有する。近隣の三角形は、三角形とエッジを共有する。例えば、三角形4、10、14{T4、T10、T14}は、三角形400とエッジを共有する。隣接する三角形及び近隣の三角形のリストは、三角形ごとに保持することができる。境界を保持するためにフラグを含めることもできる。
3次元(3D)の三角形は、2次元(2D)の表面にマッピングされる。そのためには、メッシュの表面を(例えば、異なるグループ又はセクションに)分離する。例えば、テクスチャマップ境界402は、テクスチャマップ上の1つの部分又はグループ404と、テクスチャマップ上の第2の部分又はグループ406を分離する。換言すれば、2つの三角形が3D空間で互いに隣り合っている(例えば、近隣の三角形である)場合でも、2D空間では異なるグループにあるため、2D空間では分離されている(例えば、近隣の三角形ではない)場合がある。テクスチャマップ境界を維持するために、隣接する三角形及び近隣の三角形の2つのリストを生成する時に、テクスチャマップ境界402が考慮に入れられる。したがって、テクスチャマップ境界402を考慮すると(例えば、ターゲットの三角形と同じ境界側にない三角形を除外する)、三角形400の場合、隣接する三角形のリストは{T6、...、T14}になり、近隣の三角形のリストは{T10、T14}になる。したがって、パッチが投影されると、境界が維持され、領域のテクスチャシーンが保存されるため、デコーダ側で使用できるようになる。
図5に、いくつかの実施形態によるパッチ生成の図を示す。説明したように、パッチ生成は、法線計算、隣接計算、初期セグメンテーション(又は法線カテゴリ化)、及びセグメンテーション精緻化(又はカテゴリ精緻化)を伴う。各三角形の法線の計算は、三角形のエッジ間の外積を伴う。隣接計算は、三角形が頂点を共有しているかどうかを判定し、共有している場合には三角形が近隣の三角形であると判定するものである。初期セグメンテーション及びセグメンテーション精緻化は、法線の向きを分析し、法線の向き(例えば、上、下、左、右、前、後)を分類し、全て同様に分類された近隣の法線に比べて法線の向きが異なるように分類されている(例えば、第1のパッチが上向きとして分類されたのに対し、ほとんど又は全ての近隣のパッチが前向きとして分類されている)かどうかを判定し、その後にパッチの法線の分類を近隣の法線の向きと一致するように変更する(例えば、第1のパッチの分類を前向きに変更する)ことによって、V-PCCと同様に実行される。
説明したように、メッシュをパッチにセグメント化するパッチ生成が実装される。パッチ生成は、1)ラスタ化されたメッシュ表面、及び2)頂点位置及び接続性情報も生成する。ラスタ化されたメッシュ表面は、V3C画像又はV-PCC画像生成を受けるポイントのセットであり、V3C画像又はV-PCC画像として符号化される。頂点位置及び接続性情報は、ベースメッシュコーディングのために受け取られる。
本明細書で説明するパッチ生成は、V-PCCにおけるパッチ生成と同様のものである。しかしながら、点ごとに法線を計算する代わりに、三角形ごとに法線を計算する。エッジ間の外積を使用して三角形ごとに法線を計算して、法線ベクトルを決定する。次に、法線に従って三角形をカテゴリ化する。例えば、法線を、前、後、上、下、左及び右などのn個(例えば、6個)のカテゴリに分割する。法線は、初期セグメンテーションを示すように異なる色で示される。図5には、異なる法線を示す異なる色として、黒色及び明るいグレーなどの異なる色をグレースケールで示す。見えにくいかもしれないが、上面(例えば、人の頭頂部、ボールの上面及びスニーカーの上面)は1つの色(例えば、緑色)であり、人物/ボールの第1の側は非常に暗く、別の色(例えば、赤色)を表しており、ボールの底面は別の色(例えば、紫色)であり、ほとんどが明るいグレーである人物及びボールの前面は別の色(例えば、シアン)を表している。
法線の積に方向を乗算することによって、主方向を求めることができる。近隣の三角形に目を向けることによって、平滑化/精緻化プロセスを実装することができる。例えば、閾値を上回る数の近隣の三角形が全て青色である三角形は、最初は赤色として示される異常があった場合でも青色として分類される。
三角形の接続されたコンポーネントを生成して、どの三角形が同じ色を有しているか(例えば、少なくとも1つの頂点を共有している同じカテゴリの三角形)を識別する。
接続性情報は、3Dにおいて点がどのように接続されているかを表す。これらの接続(より具体的には、3つの点を共有する3つの異なる接続)が組み合わさって三角形を生成し、この結果として(一群の三角形によって表される)表面が生成される。本明細書では三角形について説明するが、他の幾何学的形状(例えば、矩形)も可能である。
色を使用して、異なる色の三角形を識別することによって、接続性を符号化する。3つの接続によって識別される各三角形は、固有の色でコード化される。
図6に、いくつかの実施形態による条件付きラスタ化を使用するパッチセグメンテーションのフローチャート及び図を示す。パッチセグメンテーションにより、接続されたコンポーネント200が生成される。接続されたコンポーネント200は、同じ分類(例えば、図5では同じ色)を有する、近隣の三角形及び/又は隣接する三角形である。接続されたコンポーネント内の各三角形に対して、条件付きラスタ化202が実行される。つまり、三角形は、指定された基準を満たす場合にのみ、パッチに投影される。これにより、三角形が一貫して投影されることが保証される。三角形が指定された基準を満たさない場合、その三角形は欠落三角形とみなされ、欠落三角形はリストに戻され、異なる近隣の三角形又は隣接する三角形で再試行され、指定された基準による分析プロセスが繰り返される。
ラスタ化基準(例えば、三角形が投影されるかどうか)は、縮退の除去204、頂点の遮蔽のチェック206、ハーフエッジのチェック208、表面の遮蔽のチェック210、深度フィルタリング212、深度範囲及び接続性214、及び三角形のラスタ化216を含む。
縮退した三角形の除去204は、線である三角形(例えば、2つの点が重なり合って、三角形ではなく線が存在する場合)を除去することを含む。線又は点が除去され、少なくとも特定の領域(例えば、閾値を超える)を有する三角形のみが保持される。
頂点の遮蔽のチェック206は、三角形の頂点が遮蔽されているかどうかを判定することを含む。三角形の頂点が、既に投影されている三角形によって遮蔽されている(又はそれを閉塞する可能性がある)場合、投影は許可されず、三角形はリストから削除され、欠落三角形リストに移動する。
ハーフエッジのチェック208は、投影すべき三角形が、2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定する。既に共有されている場合、投影は許可されず、三角形はリストから削除され、欠落三角形リストに移動する。
表面の遮蔽のチェック210では、三角形の頂点が遮蔽されていなくても、点の間の領域が既に投影された三角形(例えば、既に投影された三角形の頂点)によって遮蔽されている(又はそれを遮蔽する可能性がある)場合、投影は許可されず、三角形はリストから削除され、欠落三角形リストに移動する。
深度フィルタリング212は、近隣の点の三角形の深度差が閾値よりも小さいことを確認する(例えば、現在の三角形の点が、近隣の三角形の点と比較される)。深度差が閾値よりも大きい場合、三角形は投影されない。
深度範囲及び接続性214は、投影すべき三角形が既に投影された三角形の少なくとも1つ(例えば、共有エッジ又は頂点)に接しているかどうかを判定することを含む。投影すべき三角形と既に投影された三角形との間に接続性がない場合、投影は許可されず、三角形はリストから削除され、欠落三角形リストに移動する。深度範囲もチェックされる。
接続性及び許容可能な深度範囲がある場合(及び他の全ての基準が満たされている場合)、三角形は(例えば、キャンバスへの)投影が許容され、三角形はラスタ化(216)される(例えば、表面上の点を生成し、ジオメトリ画像及びテクスチャ画像を生成して、パッチ上の接続性を符号化する)。
図7に、いくつかの実施形態による深度フィルタリングの図を示す。深度フィルタリングは、近隣の点の三角形の深度差が閾値よりも小さいことを確認する。深度差が閾値よりも大きい場合、三角形は投影されない。例えば、点の深度及び近隣の点の深度が分析される。しかしながら、他の三角形の近隣の点のみが分析される。図では、Tとラベル付けされた点は三角形からのものであるため、分析されない。三角形A(ラベルTA)及び三角形B(ラベルTB)の点からの深度が分析される。換言すれば、グリッドの中央にある点Tの深度を比較するために、点Tの深度は、グリッドの左下の正方形にあるTAの深度、グリッドの左中央の正方形にあるTAの深度、グリッドの左上の正方形にあるTAの深度、グリッドの中央上部の正方形にあるTBの深度、及びグリッドの右上の正方形にあるTBの深度と比較される(例えば、それらの差を計算する)。比較された点の深度と他のいずれかの点の深度との差が閾値よりも大きい場合、三角形700は投影されない。深度フィルタリングを実行することによって、大きな勾配が回避される。3x3フィルタが示されているが、より大きなフィルタを実装することができる。いくつかの実施形態では、閾値は適応型であり、つまり、受け取られた情報又は特定の実装などの状況に応じて、閾値を変更することができる。
図8に、いくつかの実施形態による動的メッシュコーディングのためのパッチ生成方法を実装するように構成される例示的なコンピュータ装置のブロック図を示す。コンピュータ装置800を使用して、3Dコンテンツを含む画像及びビデオなどの情報を取得、記憶、計算、処理、通信及び/又は表示することができる。コンピュータ装置800は、符号化/復号化の態様のいずれかを実装することができる。一般に、コンピュータ装置800を実装するのに適したハードウェア構造は、ネットワークインターフェイス802、メモリ804、プロセッサ806、(単複の)I/O装置808、バス810及び記憶装置812を含む。プロセッサの選択は、十分な速度の好適なプロセッサが選択される限り重要ではない。メモリ804は、当業で周知のいずれかの従来のコンピュータメモリとすることができる。記憶装置812は、ハードドライブ、CDROM、CDRW、DVD、DVDRW、高精細ディスク/ドライブ、超高精細ドライブ、フラッシュメモリカード、又はその他のいずれかの記憶装置を含むことができる。コンピュータ装置800は、1又は2以上のネットワークインターフェイス802を含むことができる。ネットワークインターフェイスの例としては、イーサネット又は他のタイプのLANに接続されたネットワークカードが挙げられる。(単複の)I/O装置808は、キーボード、マウス、モニタ、画面、プリンタ、モデム、タッチ画面、ボタンインターフェイス及びその他の装置のうちの1つ又は2つ以上を含むことができる。記憶装置812及びメモリ804には、動的メッシュコーディングのためのパッチ生成の実装を実行するために使用される(単複の)動的メッシュコーディングのためのパッチ生成アプリケーション830が記憶されて、アプリケーションが通常処理されるように処理される可能性が高い。コンピュータ装置800には、図8に示すものよりも多くの又は少ないコンポーネントを含めることもできる。いくつかの実施形態では、動的メッシュコーディングのためのパッチ生成ハードウェア820が含まれる。図8のコンピュータ装置800は、動的メッシュコーディングのためのパッチ生成の実装のためのアプリケーション830及びハードウェア820を含むが、動的メッシュコーディングのためのパッチ生成方法は、ハードウェア、ファームウェア、ソフトウェア、又はこれらのいずれかの組み合わせでコンピュータ装置上に実装することもできる。例えば、いくつかの実施形態では、動的メッシュコーディングのためのパッチ生成アプリケーション830がメモリにプログラムされ、プロセッサを使用して実行される。別の例として、いくつかの実施形態では、動的メッシュコーディングのためのパッチ生成ハードウェア820は、動的メッシュコーディングのためのパッチ生成方法を実装するように特別に設計されたゲートを含むプログラムされたハードウェアロジックである。
いくつかの実施形態では、(単複の)動的メッシュコーディングのためのパッチ生成アプリケーション830は、複数のアプリケーション及び/又はモジュールを含む。いくつかの実施形態では、モジュールは1又は2以上のサブモジュールも含む。いくつかの実施形態では、これよりも少ない又は更なるモジュールを含めることもできる。
好適なコンピュータ装置の例としては、パーソナルコンピュータ、ラップトップコンピュータ、コンピュータワークステーション、サーバ、メインフレームコンピュータ、ハンドヘルドコンピュータ、携帯情報端末、セルラ/携帯電話機、スマート家電、ゲーム機、デジタルカメラ、デジタルカムコーダ、カメラ付き電話機、スマートホン、ポータブル音楽プレーヤ、タブレットコンピュータ、モバイル装置、ビデオプレーヤ、ビデオディスクライタ/プレーヤ(例えば、DVDライタ/プレーヤ、高精細ディスクライタ/プレーヤ、超高精細ディスクライタ/プレーヤ)、テレビ、家庭用エンターテイメントシステム、拡張現実装置、仮想現実装置、スマートジュエリ(例えば、スマートウォッチ)、車両(例えば、自動走行車両)、又はその他のいずれかの好適なコンピュータ装置が挙げられる。
動的メッシュコーディングのためのパッチ生成方法を利用するには、装置が3Dコンテンツ(例えば、ポイントクラウドコンテンツ)を取得又は受信する。動的メッシュコーディングのためのパッチ生成方法は、ユーザの支援を伴って、又はユーザの関与を伴わずに自動的に実装することができる。
動作時、動的メッシュコーディングのためのパッチ生成方法は、従来の実装と比較して、より効率的かつ正確な3Dコンテンツ符号化を可能にする。
動的メッシュコーディングのためのパッチ生成のいくつかの実施形態
1.パッチ生成の方法であって、
三角形の面法線を計算するステップと、
前記三角形の面隣接を計算するステップと、
前記三角形の面近隣を計算するステップと、
前記三角形の前記法線を分類することを含む初期セグメンテーションを実装するステップと、
前記分類された法線内の外れ値を特定して平滑化することを含む精緻化を実行するステップと、
前記三角形のパッチセグメンテーションを実行するステップと、
を含む方法。
1.パッチ生成の方法であって、
三角形の面法線を計算するステップと、
前記三角形の面隣接を計算するステップと、
前記三角形の面近隣を計算するステップと、
前記三角形の前記法線を分類することを含む初期セグメンテーションを実装するステップと、
前記分類された法線内の外れ値を特定して平滑化することを含む精緻化を実行するステップと、
前記三角形のパッチセグメンテーションを実行するステップと、
を含む方法。
2.前記三角形の面隣接を計算するステップ及び前記三角形の面近隣を計算するステップは、隣接する三角形及び近隣の三角形のリストを生成することを含む、第1項に記載の方法。
3.前記隣接する三角形及び前記近隣の三角形のリストを生成することは、テクスチャマップ境界を考慮に入れることを含む、第2項に記載の方法。
4.前記テクスチャマップ境界を考慮に入れることは、現在の三角形の境界の反対側にある三角形を除外することを含む、第3項に記載の方法。
5.パッチセグメンテーションを実行するステップは、縮退を除去することと、頂点の遮蔽をチェックすることと、ハーフエッジをチェックすることと、表面の遮蔽をチェックすることと、深度フィルタリングと、深度範囲及び接続性の分析と、三角形をラスタ化することと、を含む、第1項に記載の方法。
6.縮退した三角形を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含み、
頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含み、
ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含み、
表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含み、
深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定し、
深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含み、
前記三角形を投影してラスタ化する、
第5項に記載の方法。
頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含み、
ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含み、
表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含み、
深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定し、
深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含み、
前記三角形を投影してラスタ化する、
第5項に記載の方法。
7.基準が満たされない時に、前記三角形は欠落三角形リストに追加される、第5項に記載の方法。
8.装置であって、
アプリケーションを記憶するための非一時的メモリであって、前記アプリケーションは、
三角形の面法線を計算することと、
前記三角形の面隣接を計算することと、
前記三角形の面近隣を計算することと、
前記三角形の前記法線を分類することを含む初期セグメンテーションを実装することと、
前記分類された法線内の外れ値を特定して平滑化することを含む精緻化を実行することと、
前記三角形のパッチセグメンテーションを実行することと、
を行うためのものである、非一時的メモリと、
前記メモリに結合され、前記アプリケーションを処理するように構成されるプロセッサと、
を含む装置。
アプリケーションを記憶するための非一時的メモリであって、前記アプリケーションは、
三角形の面法線を計算することと、
前記三角形の面隣接を計算することと、
前記三角形の面近隣を計算することと、
前記三角形の前記法線を分類することを含む初期セグメンテーションを実装することと、
前記分類された法線内の外れ値を特定して平滑化することを含む精緻化を実行することと、
前記三角形のパッチセグメンテーションを実行することと、
を行うためのものである、非一時的メモリと、
前記メモリに結合され、前記アプリケーションを処理するように構成されるプロセッサと、
を含む装置。
9.前記三角形の面隣接を計算すること及び前記三角形の面近隣を計算することは、隣接する三角形及び近隣の三角形のリストを生成することを含む、第8項に記載の装置。
10.前記隣接する三角形及び前記近隣の三角形のリストを生成することは、テクスチャマップ境界を考慮に入れることを含む、第9項に記載の装置。
11.前記テクスチャマップ境界を考慮に入れることは、現在の三角形の境界の反対側にある三角形を除外することを含む、第10項に記載の装置。
12.パッチセグメンテーションを実行することは、縮退を除去することと、頂点の遮蔽をチェックすることと、ハーフエッジをチェックすることと、表面の遮蔽をチェックすることと、深度フィルタリングと、深度範囲及び接続性の分析と、三角形をラスタ化することと、を含む、第8項に記載の装置。
13.縮退した三角形を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含み、
頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含み、
ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含み、
表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含み、
深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定し、
深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含み、
前記三角形を投影してラスタ化する、
第12項に記載の装置。
頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含み、
ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含み、
表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含み、
深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定し、
深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含み、
前記三角形を投影してラスタ化する、
第12項に記載の装置。
14.基準が満たされない時に、前記三角形は欠落三角形リストに追加される、第12項に記載の装置。
15.パッチセグメンテーションの方法であって、
縮退情報を除去するステップと、
三角形の頂点の遮蔽をチェックするステップと、
前記三角形のハーフエッジをチェックするステップと、
前記三角形の表面の遮蔽をチェックするステップと、
前記三角形の深度フィルタリングと、
前記三角形の深度範囲及び接続性の分析を実行するステップと、
前記三角形をキャンバスに投影してラスタ化するステップと、
を含む方法。
縮退情報を除去するステップと、
三角形の頂点の遮蔽をチェックするステップと、
前記三角形のハーフエッジをチェックするステップと、
前記三角形の表面の遮蔽をチェックするステップと、
前記三角形の深度フィルタリングと、
前記三角形の深度範囲及び接続性の分析を実行するステップと、
前記三角形をキャンバスに投影してラスタ化するステップと、
を含む方法。
16.縮退した三角形を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含む、第15項に記載の方法。
17.頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含む、第15項に記載の方法。
18.ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含む、第15項に記載の方法。
19.表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含む、第15項に記載の方法。
20.深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定する、第15項に記載の方法。
21.深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含む、第15項に記載の方法。
22.基準が満たされない時に、前記三角形は欠落三角形リストに追加される、第15項に記載の方法。
本発明の構成及び動作の原理を容易に理解できるように、詳細を含む特定の実施形態に関して本発明を説明してきた。本明細書におけるこのような特定の実施形態及びその詳細についての言及は、本明細書に添付する特許請求の範囲を限定することを意図するものではない。当業者には、特許請求の範囲によって定められる本発明の趣旨及び範囲から逸脱することなく、例示のために選択した実施形態において他の様々な修正を行えることが容易に明らかになるであろう。
100 入力メッシュ
102 メッシュボクセル化
104 3Dメッシュの簡略化
106 パッチ生成
108 パッチパッキング
110 テクスチャ画像生成
112 ジオメトリ画像生成
114 2Dメッシュの簡略化
116 画像パディング
118 画像パディング
120 接続性符号化
122 ビデオコーデック
124 ビデオコーデック
126 メッシュジッパリング
128 アトラスコーデック
130 マルチプレクサ
150 法線計算
152 隣接計算
154 近隣計算
156 初期セグメンテーション
158 精緻化
160 パッチセグメンテーション
200 接続されたコンポーネント
202 条件付きラスタ化
204 縮退の除去
206 頂点の遮蔽のチェック
208 ハーフエッジのチェック
210 表面の遮蔽のチェック
212 深度フィルタリング
214 深度範囲及び接続性
216 三角形のラスタ化
300 法線
302 画像
400 三角形
700 三角形
800 コンピュータ装置
802 ネットワークインターフェイス
804 メモリ
806 プロセッサ
808 I/O装置
810 バス
812 記憶装置
820 動的メッシュコーディングのためのパッチ生成ハードウェア
830 動的メッシュコーディングのためのパッチ生成アプリケーション
102 メッシュボクセル化
104 3Dメッシュの簡略化
106 パッチ生成
108 パッチパッキング
110 テクスチャ画像生成
112 ジオメトリ画像生成
114 2Dメッシュの簡略化
116 画像パディング
118 画像パディング
120 接続性符号化
122 ビデオコーデック
124 ビデオコーデック
126 メッシュジッパリング
128 アトラスコーデック
130 マルチプレクサ
150 法線計算
152 隣接計算
154 近隣計算
156 初期セグメンテーション
158 精緻化
160 パッチセグメンテーション
200 接続されたコンポーネント
202 条件付きラスタ化
204 縮退の除去
206 頂点の遮蔽のチェック
208 ハーフエッジのチェック
210 表面の遮蔽のチェック
212 深度フィルタリング
214 深度範囲及び接続性
216 三角形のラスタ化
300 法線
302 画像
400 三角形
700 三角形
800 コンピュータ装置
802 ネットワークインターフェイス
804 メモリ
806 プロセッサ
808 I/O装置
810 バス
812 記憶装置
820 動的メッシュコーディングのためのパッチ生成ハードウェア
830 動的メッシュコーディングのためのパッチ生成アプリケーション
Claims (22)
- パッチ生成の方法であって、
三角形の面法線を計算するステップと、
前記三角形の面隣接(face adjacency)を計算するステップと、
前記三角形の面近隣(face neighbors)を計算するステップと、
前記三角形の前記法線を分類することを含む初期セグメンテーションを実装するステップと、
前記分類された法線内の外れ値を特定して平滑化することを含む精緻化を実行するステップと、
前記三角形のパッチセグメンテーションを実行するステップと、
を含むことを特徴とする方法。 - 前記三角形の面隣接を計算するステップ及び前記三角形の面近隣を計算するステップは、隣接する三角形及び近隣の三角形のリストを生成することを含むことを特徴とする、請求項1に記載の方法。
- 前記隣接する三角形及び前記近隣の三角形のリストを生成することは、テクスチャマップ境界を考慮に入れることを含むことを特徴とする、請求項2に記載の方法。
- 前記テクスチャマップ境界を考慮に入れることは、現在の三角形の境界の反対側にある三角形を除外することを含むことを特徴とする、請求項3に記載の方法。
- パッチセグメンテーションを実行するステップは、縮退(degenerates)を除去することと、頂点の遮蔽をチェックすることと、ハーフエッジをチェックすることと、表面の遮蔽をチェックすることと、深度フィルタリングと、深度範囲及び接続性の分析と、三角形をラスタ化することと、を含むことを特徴とする、請求項1に記載の方法。
- 縮退した三角形(degenerate triangles)を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含み、
頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含み、
ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含み、
表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含み、
深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定し、
深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含み、
前記三角形を投影してラスタ化する、
ことを特徴とする、請求項5に記載の方法。 - 基準が満たされない時に、前記三角形は欠落三角形リスト(missing triangles list)に追加されることを特徴とする、請求項5に記載の方法。
- 装置であって、
アプリケーションを記憶するための非一時的メモリであって、前記アプリケーションは、
三角形の面法線を計算することと、
前記三角形の面隣接を計算することと、
前記三角形の面近隣を計算することと、
前記三角形の前記法線を分類することを含む初期セグメンテーションを実装することと、
前記分類された法線内の外れ値を特定して平滑化することを含む精緻化を実行することと、
前記三角形のパッチセグメンテーションを実行することと、
を行うためのものである、非一時的メモリと、
前記メモリに結合され、前記アプリケーションを処理するように構成されるプロセッサと、
を含むことを特徴とする装置。 - 前記三角形の面隣接を計算すること及び前記三角形の面近隣を計算することは、隣接する三角形及び近隣の三角形のリストを生成することを含むことを特徴とする、請求項8に記載の装置。
- 前記隣接する三角形及び前記近隣の三角形のリストを生成することは、テクスチャマップ境界を考慮に入れることを含むことを特徴とする、請求項9に記載の装置。
- 前記テクスチャマップ境界を考慮に入れることは、現在の三角形の境界の反対側にある三角形を除外することを含むことを特徴とする、請求項10に記載の装置。
- パッチセグメンテーションを実行することは、縮退を除去することと、頂点の遮蔽をチェックすることと、ハーフエッジをチェックすることと、表面の遮蔽をチェックすることと、深度フィルタリングと、深度範囲及び接続性の分析と、三角形をラスタ化することと、を含むことを特徴とする、請求項8に記載の装置。
- 縮退した三角形を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含み、
頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含み、
ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含み、
表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含み、
深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定し、
深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含み、
前記三角形を投影してラスタ化する、
ことを特徴とする、請求項12に記載の装置。 - 基準が満たされない時に、前記三角形は欠落三角形リストに追加されることを特徴とする、請求項12に記載の装置。
- パッチセグメンテーションの方法であって、
縮退情報(degenerate information)を除去するステップと、
三角形の頂点の遮蔽をチェックするステップと、
前記三角形のハーフエッジをチェックするステップと、
前記三角形の表面の遮蔽をチェックするステップと、
前記三角形の深度フィルタリングと、
前記三角形の深度範囲及び接続性の分析を実行するステップと、
前記三角形をキャンバスに投影してラスタ化するステップと、
を含むことを特徴とする方法。 - 縮退した三角形を除去することは、点の間の領域が閾値より小さいことを判定することによって、線又は点である三角形を除去することを含むことを特徴とする、請求項15に記載の方法。
- 頂点の遮蔽をチェックすることは、前記三角形の頂点が既に投影された三角形によって遮蔽されているかどうかを判定することを含むことを特徴とする、請求項15に記載の方法。
- ハーフエッジをチェックすることは、前記三角形が2つの投影された三角形によって既に共有されているエッジを共有しているかどうかを判定することを含むことを特徴とする、請求項15に記載の方法。
- 表面の遮蔽をチェックすることは、前記三角形の点の間の領域が遮蔽されているか、又は前記既に投影された三角形を遮蔽する可能性があるかどうかを判定することを含むことを特徴とする、請求項15に記載の方法。
- 深度フィルタリングは、近隣の点と前記三角形の点との深度差が深度閾値より小さいかどうかを判定することを特徴とする、請求項15に記載の方法。
- 深度範囲及び接続性の分析は、前記三角形が前記既に投影された三角形の少なくとも1つのエッジ又は頂点に接しているかどうかを判定することを含むことを特徴とする、請求項15に記載の方法。
- 基準が満たされない時に、前記三角形は欠落三角形リストに追加されることを特徴とする、請求項15に記載の方法。
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202263269910P | 2022-03-25 | 2022-03-25 | |
| US63/269,910 | 2022-03-25 | ||
| US17/987,846 | 2022-11-15 | ||
| US17/987,846 US12327313B2 (en) | 2022-03-25 | 2022-11-15 | Patch generation for dynamic mesh coding |
| PCT/IB2023/052106 WO2023180843A1 (en) | 2022-03-25 | 2023-03-07 | Patch generation for dynamic mesh coding |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2025510194A JP2025510194A (ja) | 2025-04-14 |
| JP7703796B2 true JP7703796B2 (ja) | 2025-07-07 |
Family
ID=88096229
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2024556568A Active JP7703796B2 (ja) | 2022-03-25 | 2023-03-07 | 動的メッシュコーディングのためのパッチ生成 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US12327313B2 (ja) |
| EP (1) | EP4480181A1 (ja) |
| JP (1) | JP7703796B2 (ja) |
| KR (1) | KR20240152867A (ja) |
| CN (1) | CN117897957A (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20250159217A1 (en) * | 2023-11-09 | 2025-05-15 | Tencent America LLC | Zero byte coding of attribute connectivity in polygon meshes |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20210295566A1 (en) | 2020-03-18 | 2021-09-23 | Sony Corporation | Projection-based mesh compression |
| JP2022542419A (ja) | 2019-12-10 | 2022-10-03 | ソニーグループ株式会社 | 点群表現を介したメッシュ圧縮 |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5601084A (en) * | 1993-06-23 | 1997-02-11 | University Of Washington | Determining cardiac wall thickness and motion by imaging and three-dimensional modeling |
| US6167159A (en) * | 1998-04-30 | 2000-12-26 | Virtue Ltd. | Triangle mesh compression |
| US6801215B1 (en) * | 2001-11-29 | 2004-10-05 | At&T Corp. | Hardware-assisted visibility-ordering algorithm |
| JP4381743B2 (ja) * | 2003-07-16 | 2009-12-09 | 独立行政法人理化学研究所 | 境界表現データからボリュームデータを生成する方法及びそのプログラム |
| US8169435B2 (en) * | 2007-12-06 | 2012-05-01 | Esko Ip Nv | Generating and rendering three dimensional models of flexible packaging |
| AU2013206560A1 (en) * | 2013-06-27 | 2015-01-22 | Canon Kabushiki Kaisha | Method, system and apparatus for rendering |
| US10242493B2 (en) * | 2014-06-30 | 2019-03-26 | Intel Corporation | Method and apparatus for filtered coarse pixel shading |
| EP3698332A4 (en) | 2017-10-18 | 2021-06-30 | Nokia Technologies Oy | DEVICE, METHOD AND COMPUTER PROGRAM FOR VOLUMETRIC VIDEO |
| US12394101B2 (en) * | 2021-09-07 | 2025-08-19 | Tencent America LLC | Segment based compression methods for mesh compression |
-
2022
- 2022-11-15 US US17/987,846 patent/US12327313B2/en active Active
-
2023
- 2023-03-07 KR KR1020247030495A patent/KR20240152867A/ko active Pending
- 2023-03-07 EP EP23712606.5A patent/EP4480181A1/en active Pending
- 2023-03-07 CN CN202380013355.1A patent/CN117897957A/zh active Pending
- 2023-03-07 JP JP2024556568A patent/JP7703796B2/ja active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022542419A (ja) | 2019-12-10 | 2022-10-03 | ソニーグループ株式会社 | 点群表現を介したメッシュ圧縮 |
| US20210295566A1 (en) | 2020-03-18 | 2021-09-23 | Sony Corporation | Projection-based mesh compression |
Also Published As
| Publication number | Publication date |
|---|---|
| CN117897957A (zh) | 2024-04-16 |
| US20230306684A1 (en) | 2023-09-28 |
| JP2025510194A (ja) | 2025-04-14 |
| KR20240152867A (ko) | 2024-10-22 |
| EP4480181A1 (en) | 2024-12-25 |
| US12327313B2 (en) | 2025-06-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7520295B2 (ja) | 投影ベースのメッシュ圧縮 | |
| JP7672629B2 (ja) | ビデオベースのメッシュ圧縮 | |
| JP7303992B2 (ja) | 点群表現を介したメッシュ圧縮 | |
| US11908169B2 (en) | Dense mesh compression | |
| JP7371691B2 (ja) | ホモグラフィ変換を使用した点群符号化 | |
| US12183045B2 (en) | Mesh patch simplification | |
| JP7703796B2 (ja) | 動的メッシュコーディングのためのパッチ生成 | |
| JP2025510195A (ja) | メッシュジッパリング(mesh zippering) | |
| KR20240148896A (ko) | 메시 패치 세분화 | |
| WO2023180843A1 (en) | Patch generation for dynamic mesh coding | |
| US20250022179A1 (en) | Mesh segmentation | |
| WO2023180842A1 (en) | Mesh patch simplification | |
| EP4724988A1 (en) | Mesh segmentation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240924 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20250526 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250625 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7703796 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |