JP7750944B2 - G-pccにおける予測ジオメトリコーディング - Google Patents

G-pccにおける予測ジオメトリコーディング

Info

Publication number
JP7750944B2
JP7750944B2 JP2023520501A JP2023520501A JP7750944B2 JP 7750944 B2 JP7750944 B2 JP 7750944B2 JP 2023520501 A JP2023520501 A JP 2023520501A JP 2023520501 A JP2023520501 A JP 2023520501A JP 7750944 B2 JP7750944 B2 JP 7750944B2
Authority
JP
Japan
Prior art keywords
tree node
node
value
point cloud
predicted
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
Application number
JP2023520501A
Other languages
English (en)
Other versions
JP2023545699A (ja
JP2023545699A5 (ja
Inventor
バッパディトヤ・レイ
アダルシュ・クリシュナン・ラマスブラモニアン
ヘルト・ファン・デル・アウウェラ
マルタ・カルチェヴィッチ
Original Assignee
クアルコム,インコーポレイテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Publication of JP2023545699A publication Critical patent/JP2023545699A/ja
Publication of JP2023545699A5 publication Critical patent/JP2023545699A5/ja
Application granted granted Critical
Publication of JP7750944B2 publication Critical patent/JP7750944B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/02Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
    • G01S13/06Systems determining position data of a target
    • G01S13/42Simultaneous measurement of distance and other co-ordinates
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/4808Evaluating distance, position or velocity data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9316Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles combined with communication equipment with other vehicles or with base stations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9327Sensor installation details
    • G01S2013/93271Sensor installation details in the front of the vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/003Transmission of data between radar, sonar or lidar systems and remote stations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/4802Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Optical Radar Systems And Details Thereof (AREA)

Description

本出願は、2021年9月27日に出願された米国出願第17/449,013号、および2020年10月7日に出願された米国仮特許出願第63/088,831号、および2020年11月16日に出願された米国仮出願第63/114,317号の優先権を主張し、これらの出願の内容全体は、参照によって本明細書に組み込まれる。2021年9月27日に出願された米国特許出願第17/449,013号は、2020年10月7日に出願された米国仮特許出願第63/088,831号、および2020年11月16日に出願された米国仮出願第63/114,317号の利益を主張するものである。
本開示は、点群の符号化および復号に関する。
点群とは、3次元空間における点の集合体である。点は、3次元空間内のオブジェクト上の点に対応し得る。したがって、点群は、3次元空間の物理的内容を表すのに使われてよい。点群は、非常に様々な状況における有用性を有し得る。たとえば、点群は、道路上のオブジェクトの位置を表すために、自律車両のコンテキストにおいて使われ得る。別の例では、点群は、拡張現実(AR)または複合現実(MR)アプリケーションにおいて仮想オブジェクトを位置決めする目的のために、環境の物理的内容を表すコンテキストにおいて使われ得る。点群圧縮とは、点群を符号化し、復号するためのプロセスである。点群を符号化すると、点群の記憶および送信に要するデータの量を削減することができる。
一般に、本開示は、たとえば現在開発されているジオメトリ点群圧縮(G-PCC)規格に対する、点群のノードをコーディングするための技法を説明する。しかしながら、例示的な技法は、G-PCC規格に限定されない。G-PCCのいくつかの例では、点群のノード(点とも呼ばれる)の位置の座標は、ノードの位置が、3つのパラメータ、半径r、方位角φ、およびレーザインデックスiで表される(r,φ,i)ドメインにコンバートされ得る。G-PCCにおける予測ジオメトリコーディングに対して角度モードを使用するとき、G-PCCコーダは、(r,φ,i)ドメインにおける予測を実行し得る。たとえば、G-PCCコーダは、ノードの予測位置を決定し、ノードの予測位置を一次残差データに加算して、ノードの再構築位置を決定し得る。それに応じて、少なくともいくつかの例では、一次残差が、(r,φ,i)ドメインの中でコーディングされ得る。丸め(たとえば、座標変換に対する)における誤差に起因して、r,φ,iにおけるコーディングは損失を伴う場合がある。いくつかの例では、この損失は、デカルトドメインの中にあり得る残差の第2のセットをコーディングすることによって低減または消去され得る。しかしながら、G-PCCのいくつかの実装形態は、一次および二次残差をシグナリングするために多くのコンテキストコーディングされたビンを必要とする場合があり、それは、計算集約的であって望ましくない。
本開示の1つまたは複数の態様によれば、G-PCCコーダは、低減された数のコンテキストおよび/またはコンテキストコーディングされたビンを使用して二次残差をシグナリングし得る。たとえば、2つの別々のシンタックス要素(たとえば、コンテキスト0...15でコーディングされたptn_sec_residual_abs_minus2、およびプレフィックスコンテキストとして0を有し、サフィックスをバイパスコーディングするptn_sec_residual_abs_minus17)を使用して二次残差値の絶対値をシグナリングするのではなく、G-PCCコーダは、単一のシンタックス要素を使用して二次残差値の絶対値をシグナリングし得る。たとえば、G-PCCコーダは、プレフィックスコンテキストの第1のセット(たとえば、0...4)およびサフィックスコンテキストの第2のセット(たとえば、5...8)を有する、二次残差値の絶対値を指定する単一のシンタックス要素をシグナリングし得る。このようにして、本開示の技法は、二次残差をシグナリングするために使用されるコンテキストおよび/またはコンテキストコーディングされたビンの数を低減し得る。そのため、本開示の技法は、点群コーディングの計算の複雑さを低減し得る。
上記で説明したように、G-PCCにおける予測ジオメトリコーディングに対して角度モードを使用するとき、G-PCCコーダは、ノードの予測位置を決定し、ノードの予測位置を残差データに加算して、ノードの再構築位置を決定し得る。G-PCCは、ノードの予測位置を決定するためにいくつかの技法を提供し得る。一例として、G-PCCは、予測位置のr,φ,iがすべてゼロであると推測され得るゼロ予測モードを提供する。別の例として、G-PCCは、予測位置のr,φ,iが再構築ノード(たとえば、現在ノードの親ノード)のr,φ,iから継承される(たとえば、コピーされる)、デルタ予測モードを提供する。しかしながら、ゼロ予測モードは、非常に非効率である場合があり、その結果、ゼロ予測はほとんど使用されない。
本開示の1つまたは複数の技法によれば、G-PCCコーダは、現在ノードの予測位置の成分のサブセットが親ノードから継承される、修正ゼロ予測モードを実行し得る。たとえば、予測位置のr,φ,iの3つすべてを親ノードから継承するのではなく、G-PCCコーダは、予測位置のφおよびiを親ノードから継承し、rが最小値(たとえば、0または個別にシグナリングされた最小値)であるものと推測し得る。予測位置のφおよびiを継承するが、rを継承しないことによって、G-PCCコーダは、rに対する残差データの大きな値をシグナリングする必要性を回避し得、ここでφおよびiの値は、そうではなく同様である(およびしたがって、残差データに対する小さい値を有する)。このようにして、本開示の技法は、点群コーディングのコーディング効率を改善し得る。
一例では、点群を符号化する方法は、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得するステップと、二次残差の値を符号化するステップとを含み、値を符号化するステップは、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、コンテキスト適応型バイナリ算術コーディング(CABAC)コンテキストの第1のセットを使用して符号化するステップと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して符号化するステップとを含む。
別の例では、点群を復号する方法は、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得するステップと、二次残差の値を復号するステップとを含み、値を符号化するステップは、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、CABACコンテキストの第1のセットを使用して復号するステップと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して復号するステップとを含む。
別の例では、点群を符号化するためのデバイスは、点群の少なくとも一部を記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサとを含み、1つまたは複数のプロセッサは、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得することと、二次残差の値を符号化することとを行うように構成され、値を符号化するために、1つまたは複数のプロセッサは、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、CABACコンテキストの第1のセットを使用して符号化することと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して符号化することとを行うように構成される。
別の例では、点群を復号するためのデバイスは、点群の少なくとも一部を記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサとを含み、1つまたは複数のプロセッサは、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得することと、二次残差の値を復号することとを行うように構成され、値を復号するために、1つまたは複数のプロセッサは、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、CABACコンテキストの第1のセットを使用して復号することと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して復号することとを行うように構成される。
別の例では、コンピュータ可読記憶媒体は命令を記憶し、命令は、実行されると、点群エンコーダの1つまたは複数のプロセッサに、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得することと、二次残差の値を符号化することとを行わせ、1つまたは複数のプロセッサに値を符号化させる命令は、1つまたは複数のプロセッサに、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、CABACコンテキストの第1のセットを使用して符号化することと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して符号化することとを行わせる命令を含む。
別の例では、コンピュータ可読記憶媒体は命令を記憶し、命令は、実行されると、点群デコーダの1つまたは複数のプロセッサに、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得することと、二次残差の値を復号することとを行わせ、1つまたは複数のプロセッサに値を復号させる命令は、1つまたは複数のプロセッサに、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、CABACコンテキストの第1のセットを使用して復号することと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して復号することとを行わせる命令を含む。
別の例では、点群を復号する方法は、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択するステップであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ステップと、ゼロ予測モードを選択することに応答して、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定するステップと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測するステップと、予測位置の半径が最小半径値であるものと推測するステップであって、最小半径値は親ノードの半径と異なる、ステップと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定するステップとを含む。
別の例では、点群を符号化する方法は、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択するステップであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ステップと、選択されたモードがゼロ予測モードである場合に、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定するステップと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測するステップと、予測位置の半径が最小半径値であるものと推測するステップであって、最小半径値は親ノードの半径と異なる、ステップと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定するステップとを含む。
別の例では、点群を復号するためのデバイスは、点群の少なくとも一部を記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサとを含み、1つまたは複数のプロセッサは、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ことと、ゼロ予測モードを選択することに応答して、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定することと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測することと、予測位置の半径が最小半径値であるものと推測することであって、最小半径値は親ノードの半径と異なる、ことと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定することとを行うように構成される。
別の例では、点群を符号化するためのデバイスは、点群の少なくとも一部を記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサとを含み、1つまたは複数のプロセッサは、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ことと、選択されたモードがゼロ予測モードである場合に、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定することと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測することと、予測位置の半径が最小半径値であるものと推測することであって、最小半径値は親ノードの半径と異なる、ことと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定することとを行うように構成される。
別の例では、コンピュータ可読記憶媒体は命令を記憶し、命令は、実行されると、点群復号デバイスの1つまたは複数のプロセッサに、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ことと、ゼロ予測モードを選択することに応答して、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定することと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測することと、予測位置の半径が最小半径値であるものと推測することであって、最小半径値は親ノードの半径と異なる、ことと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定することとを行わせる。
別の例では、コンピュータ可読記憶媒体は命令を記憶し、命令は、実行されると、点群符号化デバイスの1つまたは複数のプロセッサに、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ことと、選択された予測モードがゼロ予測モードである場合に、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定することと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測することと、予測位置の半径が最小半径値であるものと推測することであって、最小半径値は親ノードの半径と異なる、ことと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定することとを行わせる。
1つまたは複数の例の詳細が、添付の図面および以下の説明に記載されている。他の特徴、目的、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
本開示の技法を実施し得る例示的な符号化および復号システムを示すブロック図である。 例示的ジオメトリ点群圧縮(G-PCC)エンコーダを示すブロック図である。 例示的G-PCCデコーダを示すブロック図である。 予測ジオメトリコーディングのための予測木の概念図である。 回転するLIDAR獲得モデルの概念図である。 回転するLIDAR獲得モデルの概念図である。 本開示の1つまたは複数の技法とともに使用され得る、例示的な距離測定システムを示す概念図である。 本開示の1つまたは複数の技法が使用され得る例示的な車両ベースシナリオを示す概念図である。 本開示の1つまたは複数の技法が使用され得る例示的なエクステンデッドリアリティ(extended reality)システムを示す概念図である。 本開示の1つまたは複数の技法が使用され得る例示的なモバイルデバイスシステムを示す概念図である。 バイナリ算術コーディングにおける範囲更新プロセスを示す概念図である。 バイナリ算術コーディングにおける範囲更新プロセスを示す概念図である。 バイナリ算術コーディングにおける出力プロセスを示す概念図である。 G-PCCエンコーダの中のコンテキスト適応型バイナリ算術コーダを示すブロック図である。 G-PCCデコーダの中のコンテキスト適応型バイナリ算術コーダを示すブロック図である。 本開示の1つまたは複数の技法による、点群を処理するための例示的な技法を示すフロー図である。 本開示の1つまたは複数の技法による、点群を処理するための例示的な技法を示すフロー図である。
図1は、本開示の技法を実施し得る例示的な符号化および復号システム100を示すブロック図である。本開示の技法は、一般に、点群データをコーディング(符号化および/または復号)すること、すなわち、点群圧縮をサポートすることを対象とする。一般に、点群データは、点群を処理するための任意のデータを含む。コーディングは、点群データを圧縮および/または圧縮解除するのに有効であり得る。
図1に示すように、システム100は、ソースデバイス102および宛先デバイス116を含む。ソースデバイス102は、宛先デバイス116によって復号されるべき符号化点群データを提供する。詳細には、図1の例では、ソースデバイス102は、コンピュータ可読媒体110を介して宛先デバイス116に点群データを提供する。ソースデバイス102および宛先デバイス116は、デスクトップコンピュータ、ノートブック(すなわち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、スマートフォンなどの電話ハンドセット、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、ビデオストリーミングデバイス、地上または海上車両、宇宙船、航空機、ロボット、LIDARデバイス、衛星などを含む、広範囲のデバイスのいずれかを備え得る。いくつかの場合、ソースデバイス102および宛先デバイス116は、ワイヤレス通信に対応し得る。
図1の例では、ソースデバイス102は、データソース104、メモリ106、G-PCCエンコーダ200、および出力インターフェース108を含む。宛先デバイス116は、入力インターフェース122、G-PCCデコーダ300、メモリ120、およびデータコンシューマ118を含む。本開示によれば、ソースデバイス102のG-PCCエンコーダ200および宛先デバイス116のG-PCCデコーダ300は、予測ジオメトリコーディングに関連する本開示の技法を適用するように構成され得る。したがって、ソースデバイス102は符号化デバイスの例を表し、宛先デバイス116は復号デバイスの例を表す。他の例では、ソースデバイス102および宛先デバイス116は、他の構成要素または配置を含んでよい。たとえば、ソースデバイス102は、内部または外部ソースからデータ(たとえば、点群データ)を受信し得る。同様に、宛先デバイス116は、同じデバイスの中にデータコンシューマを含むのではなく、外部データコンシューマとインターフェースすればよい。
図1に示すようなシステム100は一例にすぎない。概して、他のデジタル符号化および/または復号デバイスが、予測ジオメトリコーディングに関連する本開示の技法を実行し得る。ソースデバイス102および宛先デバイス116は、ソースデバイス102が宛先デバイス116への送信のためにコード化データを生成するようなデバイスの例にすぎない。本開示は、データのコーディング(符号化および/または復号)を実施するデバイスを「コーディング」デバイスと呼ぶ。したがって、G-PCCエンコーダ200およびG-PCCデコーダ300は、コーディングデバイス、具体的には、それぞれ、エンコーダおよびデコーダの例を表す。いくつかの例では、ソースデバイス102および宛先デバイス116は、ソースデバイス102および宛先デバイス116の各々が符号化および復号構成要素を含むように実質的に対称的な方法で動作し得る。したがって、システム100は、たとえば、ストリーミング、再生、ブロードキャスト、電話、ナビゲーション、および他のアプリケーションのために、ソースデバイス102と宛先デバイス116との間の一方向または双方向送信をサポートし得る。
一般に、データソース104は、データのソース(すなわち、未加工の符号化されていない点群データ)を表し、データの逐次的な一連の「フレーム」をG-PCCエンコーダ200に提供してよく、エンコーダ200はフレームのためのデータを符号化する。ソースデバイス102のデータソース104は、様々なカメラもしくはセンサ、たとえば、3Dスキャナもしくは光検出および測距(LIDAR)デバイス、1つもしくは複数のビデオカメラ、以前キャプチャされたデータを含むアーカイブ、ならびに/またはデータコンテンツプロバイダからデータを受信するためのデータフィードインターフェースのうちのいずれかなどの点群キャプチャデバイスを含み得る。代替または追加として、点群データは、スキャナ、カメラ、センサまたは他のデータからコンピュータ生成されてよい。たとえば、データソース104は、コンピュータグラフィックスベースのデータをソースデータとして生成するか、またはライブデータとアーカイブされたデータとコンピュータ生成されたデータとの組合せを生じ得る。各場合において、G-PCCエンコーダ200は、キャプチャされた、事前にキャプチャされた、またはコンピュータ生成されたデータを符号化する。G-PCCエンコーダ200は、受信された順序(「表示順序」と呼ばれることがある)からコーディング用のコーディング順序にフレームを並べ替え得る。G-PCCエンコーダ200は、符号化データを含む1つまたは複数のビットストリームを生成してよい。次いで、ソースデバイス102は、たとえば、宛先デバイス116の入力インターフェース122による受信および/または取出しのために、符号化データを、出力インターフェース108を介してコンピュータ可読媒体110上に出力し得る。
ソースデバイス102のメモリ106および宛先デバイス116のメモリ120は、汎用メモリを表す場合がある。いくつかの例では、メモリ106およびメモリ120は、未加工データ、たとえば、データソース104からの未加工データ、およびG-PCCデコーダ300からの未加工の復号データを記憶してよい。追加または代替として、メモリ106およびメモリ120は、たとえば、それぞれ、G-PCCエンコーダ200およびG-PCCデコーダ300によって実行可能なソフトウェア命令を記憶し得る。メモリ106およびメモリ120は、この例ではG-PCCエンコーダ200およびG-PCCデコーダ300とは別々に示されているが、G-PCCエンコーダ200およびG-PCCデコーダ300は、機能的に同様のまたは等価な目的で内部メモリも含み得ることを理解されたい。さらに、メモリ106およびメモリ120は、符号化データ、たとえば、G-PCCエンコーダ200からの出力およびG-PCCデコーダ300への入力を記憶し得る。いくつかの例では、メモリ106およびメモリ120の一部は、たとえば、未加工の復号および/または符号化データを記憶するための、1つまたは複数のバッファとして割り振られ得る。たとえば、メモリ106およびメモリ120は、点群を表すデータを記憶してよい。
コンピュータ可読媒体110は、符号化データをソースデバイス102から宛先デバイス116にトランスポートすることが可能な任意のタイプの媒体またはデバイスを表す場合がある。一例では、コンピュータ可読媒体110は、たとえば、無線周波数ネットワークまたはコンピュータベースのネットワークを介して、ソースデバイス102が符号化データを宛先デバイス116にリアルタイムで直接送信することを可能にする通信媒体を表す。ワイヤレス通信プロトコルなどの通信規格に従って、出力インターフェース108が、符号化データを含む送信信号を変調してよく、入力インターフェース122が、受信された送信信号を復調してよい。通信媒体は、無線周波数(RF)スペクトル、または1つもしくは複数の物理伝送線路など、任意のワイヤレス通信媒体またはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースのネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス102から宛先デバイス116への通信を容易にするために有用であり得る任意の他の機器を含んでもよい。
いくつかの例では、ソースデバイス102は、符号化データを出力インターフェース108から記憶デバイス112に出力してもよい。同様に、宛先デバイス116は、入力インターフェース122を介して、記憶デバイス112からの符号化データにアクセスし得る。記憶デバイス112は、ハードドライブ、ブルーレイディスク、DVD、CD-ROM、フラッシュメモリ、揮発性もしくは不揮発性メモリ、または符号化データを記憶するための任意の他の好適なデジタル記憶媒体のような、種々の分散型またはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。
いくつかの例では、ソースデバイス102は、ソースデバイス102によって生成された符号化データを記憶し得るファイルサーバ114または別の中間記憶デバイスに、符号化データを出力してよい。宛先デバイス116は、ストリーミングまたはダウンロードを介して、ファイルサーバ114からの記憶されたデータにアクセスし得る。ファイルサーバ114は、符号化データを記憶し、その符号化データを宛先デバイス116に送信することが可能な任意のタイプのサーバデバイスであってよい。ファイルサーバ114は、(たとえば、ウェブサイト用の)ウェブサーバ、ファイル転送プロトコル(FTP)サーバ、コンテンツ配信ネットワークデバイス、またはネットワーク接続ストレージ(NAS)デバイスを表し得る。宛先デバイス116は、インターネット接続を含む任意の標準的なデータ接続を通して、ファイルサーバ114からの符号化データにアクセスしてよい。これは、ワイヤレスチャネル(たとえば、Wi-Fi接続)、ワイヤード接続(たとえば、デジタル加入者回線(DSL)、ケーブルモデムなど)、またはファイルサーバ114上に記憶された符号化データにアクセスするのに適した両方の組合せを含み得る。ファイルサーバ114および入力インターフェース122は、ストリーミング送信プロトコル、ダウンロード送信プロトコル、またはそれらの組合せに従って動作するように構成され得る。
出力インターフェース108および入力インターフェース122は、ワイヤレス送信機/受信機、モデム、ワイヤードネットワーキング構成要素(たとえば、イーサネットカード)、種々のIEEE 802.11規格のいずれかに従って動作するワイヤレス通信構成要素、または他の物理構成要素を表してもよい。出力インターフェース108および入力インターフェース122がワイヤレス構成要素を備える例では、出力インターフェース108および入力インターフェース122は、4G、4G-LTE(ロングタームエボリューション)、LTEアドバンスト、5Gなどのセルラー通信規格に従って、符号化データなどのデータを転送するように構成され得る。出力インターフェース108がワイヤレス送信機を備えるいくつかの例では、出力インターフェース108および入力インターフェース122は、IEEE 802.11仕様、IEEE 802.15仕様(たとえば、ZigBee(商標))、Bluetooth(商標)規格などの他のワイヤレス規格に従った、符号化データなどのデータを転送するように構成され得る。いくつかの例では、ソースデバイス102および/または宛先デバイス116は、それぞれのシステムオンチップ(SoC)デバイスを含み得る。たとえば、ソースデバイス102は、G-PCCエンコーダ200および/または出力インターフェース108に起因する機能性を実施するためのSoCデバイスを含むことができ、宛先デバイス116は、G-PCCデコーダ300および/または入力インターフェース122に起因する機能性を実施するためのSoCデバイスを含んでよい。
本開示の技法は、自律車両の間の通信、スキャナ、カメラ、センサおよびローカルもしくはリモートサーバなどの処理デバイスの間の通信、地理的マッピング、または他のアプリケーションなど、様々なアプリケーションのいずれかをサポートする符号化および復号に適用されてよい。
宛先デバイス116の入力インターフェース122は、コンピュータ可読媒体110(たとえば、通信媒体、記憶デバイス112、ファイルサーバ114など)から、符号化ビットストリームを受信する。符号化ビットストリームは、コード化単位(たとえば、スライス、ピクチャ、ピクチャグループ、シーケンスなど)の特性および/または処理を記述する値を有するシンタックス要素などの、G-PCCデコーダ300によっても使用されるG-PCCエンコーダ200によって定義されるシグナリング情報を含み得る。データコンシューマ118は、復号データを使う。たとえば、データコンシューマ118は、物理オブジェクトのロケーションを判断するのに、復号データを使ってよい。いくつかの例では、データコンシューマ118は、点群に基づいて像を提示するためのディスプレイを備えてよい。
G-PCCエンコーダ200およびG-PCCデコーダ300は各々、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなど、様々な適切なエンコーダおよび/またはデコーダ回路構成のいずれかとして実装されてよい。技法が部分的にソフトウェアにおいて実装されるとき、デバイスは、適切な非一時的コンピュータ可読媒体にソフトウェア用の命令を記憶し、本開示の技法を実施するために1つまたは複数のプロセッサを使用してハードウェアにおいて命令を実行し得る。G-PCCエンコーダ200およびG-PCCデコーダ300の各々は、1つまたは複数のエンコーダまたはデコーダに含まれてよく、それらのいずれも、それぞれのデバイスの中で複合エンコーダ/デコーダ(コーデック)の一部として統合されてよい。G-PCCエンコーダ200および/またはG-PCCデコーダ300を含むデバイスは、1つまたは複数の集積回路、マイクロプロセッサ、および/または他のタイプのデバイスを備えてよい。
G-PCCエンコーダ200およびG-PCCデコーダ300は、ビデオ点群圧縮(V-PCC)規格またはジオメトリ点群圧縮(G-PCC)規格などのコーディング規格に従って動作してよい。本開示は、一般に、データを符号化または復号するプロセスを含めるように、ピクチャのコーディング(たとえば、符号化および復号)に言及することがある。符号化ビットストリームは、一般に、コーディング決定(たとえば、コーディングモード)を表すシンタックス要素のための一連の値を含む。
本開示は、一般に、シンタックス要素などの特定の情報を「シグナリングすること」を指す。「シグナリング」という用語は、一般に、シンタックス要素および/または符号化データを復号するために使用される他のデータのための値の通信を指すことがある。すなわち、G-PCCエンコーダ200は、ビットストリーム中でシンタックス要素のための値をシグナリングし得る。一般に、シグナリングすることは、ビットストリーム中で値を生成することを指す。上述のように、ソースデバイス102は、実質的にリアルタイムで、または、宛先デバイス116によって後で取り出すためにシンタックス要素を記憶デバイス112に記憶するときに行われ得るなど、リアルタイムではなく、ビットストリームを宛先デバイス116にトランスポートし得る。
ISO/IEC MPEG(JTC1/SC29/WG11)は、現行の手法のものを大幅に超える圧縮能力をもつ点群コーディング技術の規格化に対する潜在的必要性を調査しており、規格を作成することを目指している。このグループは、この分野の専門家により提案されている圧縮技術の設計を評価するために、3-Dimensional Graphics Team(3DG)として知られている共同研究において、この調査活動に一緒に取り組んでいる。
点群圧縮活動は、2つの異なる手法にカテゴリ化される。第1の手法は「ビデオ点群圧縮」(V-PCC)であり、これは、3Dオブジェクトをセグメント化し、セグメントを複数の2D平面(2Dフレームにおける「パッチ」として表される)に投射し、これらは、高効率ビデオコーディング(HEVC)(ITU-T H.265)コーデックなどのレガシー2Dビデオコーデックによってさらにコーディングされる。第2の手法は「ジオメトリベース点群圧縮」(G-PCC)であり、これは、3Dジオメトリ、すなわち、3D空間中の点のセットの位置と、(3Dジオメトリに関連付けられた各点についての)関連付けられた属性値とを直接圧縮する。G-PCCは、カテゴリ1(静的点群)とカテゴリ3(動的に獲得された点群)の両方における点群の圧縮に対処する。G-PCC規格の最新の草案が、G-PCC DIS、ISO/IEC JTC1/SC29/WG11 w19328、ベルギー、ブリュッセル、2020年1月において入手可能であり、コーデックの記述が、G-PCC Codec Description v8、ISO/IEC JTC1/SC29/WG11 w19525、ベルギー、ブリュッセル、2020年1月において入手可能である。
点群は、3D空間中の点のセットを含み、点に関連付けられた属性を有してよい。属性は、R、G、BもしくはY、Cb、Crなどの色情報、または反射率情報、あるいは他の属性であってよい。点群は、LIDARセンサおよび3Dスキャナなど、様々なカメラまたはセンサによってキャプチャされてよく、コンピュータ生成されてもよい。点群データは、構築(モデリング)、グラフィックス(視覚化およびアニメーションのための3Dモデル)、ならびに自動車産業(ナビゲーションを助けるのに使われるLIDARセンサ)を含むが、それらに限定されない様々なアプリケーションにおいて使われる。
点群データによって占有される3D空間は、仮想境界ボックスによって囲まれてよい。境界ボックス中での点の位置は、一定の精度で表されてよく、したがって、1つまたは複数の点の位置は、精度に基づいて量子化されてよい。最も小さいレベルにおいて、境界ボックスは、単位立方体によって表される、空間の最も小さい単位であるボクセルに分割される。境界ボックス中のボクセルは、ゼロ、1つ、または複数の点に関連付けられてよい。境界ボックスは、タイルと呼ばれ得る、複数の立方体/直方体領域に分割されてよい。各タイルは、1つまたは複数のスライスにコーディングされ得る。境界ボックスの、スライスおよびタイルへの区分は、各区分中の点の数に基づいて、または他の事項に基づいてよい(たとえば、特定の領域がタイルとしてコーディングされてよい)。スライス領域は、ビデオコーデックにおけるものと同様の分割決定を使って、さらに区分されてよい。
図2は、G-PCCエンコーダ200の概観を与える。図3は、G-PCCデコーダ300の概観を与える。図示されるモジュールは論理的であり、G-PCCコーデックの基準実装、すなわち、ISO/IEC MPEG(JTC1/SC29/WG11)によって研究されるTMC13テストモデルソフトウェアにおいて実装されるコードに必ずしも1対1で対応するわけではない。
G-PCCエンコーダ200とG-PCCデコーダ300の両方において、点群位置が最初にコーディングされる。属性コーディングは、復号されたジオメトリに依存する。図2および図3において、グレーの陰影モジュールは、カテゴリ1データ用に通常使われるオプションである。斜め平行線付きモジュールは、カテゴリ3データ用に通常使われるオプションである。他のモジュールはすべて、カテゴリ1と3との間で共通である。
カテゴリ3データの場合、圧縮されたジオメトリは通常、個々のボクセルのルートからリーフレベルまでの8分木として表される。カテゴリ1データの場合、圧縮されたジオメトリは通常、刈り込み8分木(すなわち、ボクセルよりも大きいブロックの、ルートからリーフレベルまでの8分木)に、刈り込み8分木の各リーフ内の表面に近似するモデルを加えたものによって表される。このようにして、カテゴリ1および3データの両方が、8分木コーディング機構を共有し、カテゴリ1データは、表面モデルをもつ各リーフ内のボクセルにさらに近似してよい。使われる表面モデルは、ブロックごとに1~10個の三角形を含む三角測量であり、三角形スープを生じる。カテゴリ1ジオメトリコーデックはしたがって、Trisoupジオメトリコーデックとして知られ、カテゴリ3ジオメトリコーデックは、8分木ジオメトリコーデックとして知られる。
8分木の各ノードにおいて、その子ノード(最大8つのノード)のうちの1つまたは複数について占有がシグナリングされる(推論されないとき)。(a)現在の8分木ノードと面を共有するノード、(b)現在の8分木ノードと面、辺、または頂点を共有するノードなどを含む複数の近傍が指定される。各近傍の中で、ノードおよび/またはその子の占有が、現在ノードまたはその子の占有を予測するために使用され得る。8分木のいくつかのノードにおいて過疎な点について、コーデックは、点の3D位置が直接符号化される直接コーディングモードもサポートする。直接モードがシグナリングされることを示すためのフラグがシグナリングされてよい。最も低いレベルにおいて、8分木ノード/リーフノードに関連付けられた点の数もコーディングされてよい。
ジオメトリがコーディングされると、ジオメトリ点に対応する属性がコーディングされる。1つの再構築/復号されたジオメトリ点に対応する複数の属性点があるとき、再構築点を表す属性値が導出されてよい。
G-PCCには、3つの属性コーディング方法、すなわち、領域適応階層変換(RAHT)コーディング、補間ベース階層最近傍予測(予測変換)、および更新/リフティングステップを用いる補間ベース階層最近傍予測(リフティング変換)がある。RAHTおよびリフティングは通常、カテゴリ1データ用に使われ、予測は通常、カテゴリ3データ用に使われる。ただし、いずれの方法がどのデータに対して使われてもよく、単にG-PCCにおけるジオメトリコーデックでのように、点群をコーディングするのに使われる属性コーディング方法はビットストリームの中で指定される。
属性のコーディングは、ある詳細度(LOD)で執り行われてよく、各詳細度を用いて、点群属性のより精密な表現が取得され得る。各詳細度は、近隣ノードからの距離メトリックに基づいて、またはサンプリング距離に基づいて指定されてよい。
G-PCCエンコーダ200において、属性向けのコーディング方法の出力として取得された残差が量子化される。量子化された残差は、コンテキスト適応算術コーディングを使ってコーディングされてよい。
図2の例では、G-PCCエンコーダ200は、座標変換ユニット202、色変換ユニット204、ボクセル化ユニット206、属性転送ユニット208、8分木分析ユニット210、表面近似分析ユニット212、算術符号化ユニット214、ジオメトリ再構築ユニット(GRU)216、RAHTユニット218、LOD生成ユニット220、リフティングユニット222、係数量子化ユニット224、および算術符号化ユニット226を含み得る。
図2の例に示すように、G-PCCエンコーダ200は、位置のセットおよび属性のセットを受信し得る。位置は、点群の中の点の座標を含み得る。属性は、点群の中の点に関連付けられた色など、点群の中の点についての情報を含み得る。
座標変換ユニット202は、座標を初期ドメインから変換ドメインに変換するように、点の座標に変換を適用してよい。本開示では、変換された座標を変換座標と呼ぶ場合がある。色変換ユニット204は、属性の色情報を異なるドメインに変換するための変換を適用してよい。たとえば、色変換ユニット204は、色情報をRGB色空間からYCbCr色空間に変換してよい。
さらに、図2の例では、ボクセル化ユニット206は、変換座標をボクセル化してよい。変換座標のボクセル化は、量子化と、点群のいくつかの点を除去することとを含み得る。言い換えると、点群の複数の点が単一の「ボクセル」内に包含されてよく、ボクセルはその後、いくつかの観点において1つの点として扱われてよい。さらに、8分木分析ユニット210が、ボクセル化された変換座標に基づいて8分木を生成し得る。さらに、図2の例では、表面近似分析ユニット212が点を分析して、点のセットの表面表現を判断する可能性がある。算術符号化ユニット214は、8分木および/または表面近似分析ユニット212によって判断された表面の情報を表すシンタックス要素をエントロピー符号化してよい。G-PCCエンコーダ200は、これらのシンタックス要素をジオメトリビットストリームの中で出力してよい。
ジオメトリ再構築ユニット216は、8分木、表面近似分析ユニット212によって判断された表面を示すデータ、および/または他の情報に基づいて、点群の中の点の変換座標を再構築してよい。ジオメトリ再構築ユニット216によって再構築された変換座標の数は、ボクセル化および表面近似により、点群の点の元の数とは異なり得る。本開示では、得られた点を再構築点と呼ぶ場合がある。属性転送ユニット208は、点群の元の点の属性を、点群の再構築点へ転送してよい。
さらに、RAHTユニット218は、RAHTコーディングを、再構築点の属性に適用してよい。代替または追加として、LOD生成ユニット220およびリフティングユニット222が、LOD処理およびリフティングを、それぞれ、再構築点の属性に適用してよい。RAHTユニット218およびリフティングユニット222は、属性に基づいて係数を生成してよい。係数量子化ユニット224は、RAHTユニット218またはリフティングユニット222によって生成された係数を量子化してよい。算術符号化ユニット226は、量子化された係数を表すシンタックス要素に算術コーディングを適用してよい。G-PCCエンコーダ200は、これらのシンタックス要素を属性ビットストリームの中で出力してよい。
図3の例では、G-PCCデコーダ300は、ジオメトリ算術復号ユニット302、属性算術復号ユニット304、8分木合成ユニット306、逆量子化ユニット308、表面近似合成ユニット310、ジオメトリ再構築ユニット312、RAHTユニット314、LoD生成ユニット316、逆リフティングユニット318、逆座標変換ユニット320、および逆色変換ユニット322を含み得る。
G-PCCデコーダ300は、ジオメトリビットストリームおよび属性ビットストリームを取得し得る。デコーダ300のジオメトリ算術復号ユニット302は、ジオメトリビットストリーム中のシンタックス要素に算術復号(たとえば、コンテキスト適応型バイナリ算術コーディング(CABAC)または他のタイプの算術復号)を適用してよい。同様に、属性算術復号ユニット304は、属性ビットストリーム中のシンタックス要素に算術復号を適用してよい。
8分木合成ユニット306は、ジオメトリビットストリームから解析されたシンタックス要素に基づいて8分木を合成してよい。ジオメトリビットストリーム中で表面近似が使われる事例では、表面近似合成ユニット310は、ジオメトリビットストリームから解析されたシンタックス要素に基づいて、および8分木に基づいて、表面モデルを判断してよい。
さらに、ジオメトリ再構築ユニット312は、点群の中の点の座標を判断するために、再構築を実施してよい。逆座標変換ユニット320は、点群の中の点の再構築座標(位置)を変換ドメインから初期ドメインにコンバートし戻すように、再構築座標に逆変換を適用してよい。
さらに、図3の例では、逆量子化ユニット308は属性値を逆量子化し得る。属性値は、属性ビットストリームから取得されたシンタックス要素(たとえば、属性算術復号ユニット304によって復号されたシンタックス要素を含む)に基づき得る。
属性値がどのように符号化されるかに依存して、RAHTユニット314は、逆量子化された属性値に基づいて、点群の点についての色値を判断するために、RAHTコーディングを実施してよい。代替として、LOD生成ユニット316および逆リフティングユニット318が、詳細度ベースの技法を使って、点群の点についての色値を判断してよい。
さらに、図3の例では、逆色変換ユニット322は、色値に逆色変換を適用してよい。逆色変換は、エンコーダ200の色変換ユニット204によって適用される色変換の逆であってよい。たとえば、色変換ユニット204は、色情報をRGB色空間からYCbCr色空間に変換してよい。したがって、逆色変換ユニット322は、色情報をYCbCr色空間からRGB色空間に変換してよい。
図2および図3に示される様々なユニットは、エンコーダ200およびデコーダ300によって実施される動作を理解するのを助けるために示されている。ユニットは、固定機能回路、プログラマブル回路、またはそれらの組合せとして実装され得る。固定機能回路は、特定の機能性を提供する回路を指し、実施され得る動作に対してプリセットされる。プログラマブル回路は、様々なタスクを実施するようにプログラムされ得る回路を指し、実施され得る動作において柔軟な機能性を提供する。たとえば、プログラマブル回路は、ソフトウェアまたはファームウェアの命令によって定義された方法でプログラマブル回路を動作させるソフトウェアまたはファームウェアを実行し得る。固定機能回路は(たとえば、パラメータを受信するまたはパラメータを出力するための)ソフトウェア命令を実行し得るが、固定機能回路が実施する動作のタイプは概して不変である。いくつかの例では、ユニットのうちの1つまたは複数はそれぞれに異なる回路ブロック(固定機能またはプログラマブル)であってよく、いくつかの例では、1つまたは複数のユニットは集積回路であってよい。
予測ジオメトリコーディングは、8分木ジオメトリコーディングに対する代替として導入され、ノードは(予測構造を定義する)木構造の中に配置され、様々な予測戦略が、その予測子に関連する木の中の各ノードの座標を予測するために使用される。図4は、予測木、有向グラフの例を示し、矢印が予測方向を指す概念図である。水平網掛けノードはルート頂点(root vertex)であって予測子を有さず、格子網掛けノードは2つの子を有し、対角網掛けノードは3つの子を有し、網掛けなしノードは1つの子を有し、垂直網掛けノードはリーフノード(leaf node)であってこれらは子を有しない。各ノードは1つだけの親ノードを有する。
4つの予測戦略は、その親(p0)、祖父(p1)および高祖父(p2)に基づいて各ノードに対して指定され得る。予測戦略は、予測なし(no prediction)、デルタ予測(p0)、直線予測(2*p0-p1)、および平行四辺形予測(2*p0+p1-p2)を含む。
エンコーダ(たとえば、G-PCCエンコーダ200)は、予測木を生成するために任意のアルゴリズムを採用してもよく、使用されるアルゴリズムは、適用/使用ケースに基づいて決定されてもよく、いくつかの戦略が使用されてもよい。エンコーダは、各ノードに対して、ルートノードから開始するビットストリームの中の残差座標値(residual coordinate value)を深さ優先で符号化し得る。予測ジオメトリコーディングは、カテゴリ3(たとえば、LIDAR獲得された)点群データに対して、たとえば低レイテンシアプリケーションに対して、特に有用であり得る。
角度モードが、予測ジオメトリコーディングの中で使用されてもよく、ここで、LIDARセンサの特性が、予測木をより効率的にコーディングすることにおいて利用され得る。位置(position)の座標が、(r,φ,i)(半径、方位角およびレーザインデックス)にコンバートされ、予測は、このドメインの中で実行される(残差が、r,φ,iドメインの中でコーディングされる)。丸めにおける誤差に起因して、r,φ,iにおけるコーディングは無損失ではなく、したがって、デカルト座標に対応する残差の第2のセットがコーディングされ得る。予測ジオメトリコーディングに対する角度モードに対して使用される符号化および復号戦略の説明が、以下で再現される。説明は、回転するLIDAR獲得モデルの概念図である図5Aおよび図5Bに基づく。
方法は、回転するLIDARモデルを使用して獲得された点群に焦点を合わせる。ここで、LIDARは、方位角φに従ってZ軸回りに回転するN個のレーザ(たとえば、N=16、32、64)を有する(図5Aおよび図5B参照)。各レーザは、異なる仰角θ(i)i=1...Nと高さ
とを有し得る。レーザiが、図5Aで説明する座標系に従って規定された、デカルト整数座標(x,y,z)を有する点Mに当たると仮定する。
Mの位置は、3つのパラメータ(r,φ,i)でモデル化され、それは、以下の
として算出される。
より詳細には、G-PCCコーダは、
で示される、(r,φ,i)の量子化バージョンを使用してもよく、ここで3つの整数
およびiは、以下の
として算出され、上式で、
・ (qr,or)および(qφ,oφ)は、
とのそれぞれの精度を制御する量子化パラメータであり、
・ sign(t)は、tが正であれば1を、そうでなければ(-1)を返す関数である。
・ |t|は、tの絶対値である。
浮動小数点演算の使用に起因する再構築不整合を回避するために、
およびtan(θ(i))i=1…Nの値が、以下の
として事前計算されて量子化されてもよく、上式で、
・ (qζ,oζ)および(qθ,oθ)は、
とのそれぞれの精度を制御する量子化パラメータである。
再構築されたデカルト座標は、以下の
として取得され、上式で、app_cos(.)およびapp_sin(.)は、cos(.)およびsin(.)の近似値である。計算は、固定小数点表示、参照表、および線形補間が使用することができる。
は、様々な理由
- 量子化
- 近似値
- モデルの不正確性
- モデルパラメータの不正確性
に起因して、(x,y,z)と異なる場合があることに留意されたい。
(rx,ry,rz)は、以下の
として定義された再構築残差であるものとする。
この方法では、G-PCCエンコーダ200は、以下のように進み得る。
・ モデルパラメータ
および
ならびに量子化パラメータqr、qζ、qθ、およびqφを符号化する
・ G-PCC DISにおいて説明されるジオメトリ予測スキームを表現
に適用する
○ ライダーの特性を活用する新しい予測子が導入され得る。たとえば、z軸回りのライダースキャナの回転速度は通常一定である。それゆえ、電流
が、以下の
として予測され得る。上式で、
○ (δφ(k))k=1...Kは、エンコーダがそこから選択することができる可能な速度のセットである。インデックスkは、ビットストリームに明確に書き込まれ得るか、またはエンコーダとデコーダの両方によって適用された決定論的戦略に基づいてコンテキストから推測され得る。および
○ n(j)はスキップされた点の数であり、それは、ビットストリームに明確に書き込まれ得るか、またはエンコーダとデコーダの両方によって適用される決定論的戦略に基づいてコンテキストから推測され得る。
・ 各ノードを用いて再構築残差(rx,ry,rz)を符号化する。
G-PCCデコーダ300は、以下のように進み得る。
・ モデルパラメータ
および
ならびに量子化パラメータqr、qζ、qθ、およびqφを復号する
・ G-PCC DISにおいて説明されるジオメトリ予測スキームに従ってノードに関連する
パラメータを復号する
・ 上記で説明したように、再構築座標
を計算する
・ 残差(rx,ry,rz)を復号する
○ 次のセクションで説明するように、損失を伴う圧縮は、再構築残差(rx,ry,rz)を量子化することによってサポートされ得る
・ 元の座標(x,y,z)を以下のように計算する。
損失を伴う圧縮は、再構築残差(rx,ry,rz)に量子化を適用することによって、または点を削除する(drop)ことによって達成され得る。
量子化された再構築残差は、以下の
として計算される。上式で、(qx,ox)、(qy,oy)および(qz,oz)は、
および
のそれぞれの精度を制御する量子化パラメータである。
いくつかの例では、G-PCCエンコーダ200および/またはG-PCCデコーダ300は、トレリス量子化を使用して、RD(レート歪み)性能結果をさらに改善し得る。量子化パラメータは、領域適応品質(region adaptive quality)を達成するため、およびレート制御目的のために、シーケンス/フレーム/スライス/ブロックレベルにおいて変化し得る。
以下は、例示的な予測ジオメトリコーディングのシンタックス、セマンティックス、シンタックスバイナリ化、およびコンテキストの表である。
ptn_qp_offset_eq0_flag、ptn_qp_offset_sign_flag、およびptn_qp_offset_abs_minus1は、存在するとき、スライスジオメトリ量子化パラメータに対するオフセットを、一緒に指定する。存在しないptn_qp_offset_sign_flagまたはptn_qp_offset_abs_minus1のいずれかは、0であるものと推測される。
nodeIdx % PtnQpIntervalが0に等しいとき、復号順序で次のPtnQpIntervalノードに対するノードQPは、以下のように決定される。
geom_scaling_enabled_flagが1に等しいとき、
PtnQp[nodeIdx / PtnQpInterval] =
geom_base_qp + geom_slice_qp_offset
+ (2×ptn_qp_offset_sign_flag - 1)
×(!ptn_qp_offset_eq0_flag + ptn_qp_offset_abs_minus1)
そうでないとき、PtnQp[ nodeIdx ]は0に等しく設定される。
ptn_point_cnt_gt1_flagおよびptn_point_cnt_minus2は、現在の予測木ノードによって表される点の数を、一緒に指定する。存在しないとき、ptn_point_cnt_gt1_flagおよびptn_point_cnt_minus2の値は、ともに0であるものと推定される。現在の予測木ノードによって表される点の数は、以下のように導出される。
PtnPointCount[nodeIdx] = 1 + ptn_point_cnt_gt1_flag + ptn_point_cnt_minus2
ptn_child_cut[ nodeIdx ]は、ジオメトリ予測木の中に存在する現在の予測木ノードの直接子ノードの数である。
ptn_pred_mode[ nodeIdx ]は、現在ノードに関連する位置を予測するために使用されるモードである。
ptn_phi_mult_eq0_flag,、ptn_phi_mult_sign_flag、ptn_phi_mult_eq1_flag,、ptn_phi_mult_abs_minus2、およびptn_phi_mult_abs_minus17は、デルタ角度予測の中で使用される乗法係数を一緒に指定する。ptn_phi_mult_eq0_flagは、存在するとき、係数がゼロに等しいかどうかを指定する。ptn_phi_mult_eq1_flagは、存在するとき、係数の大きさが1に等しいかどうかを指定する。1に等しいptn_phi_mult_sign_flagは、係数の符号が正であることを示す。0に等しいptn_phi_mult_sign_flagは、係数の符号が負であることを示す。存在しないptn_phi_mult_sign_flag、ptn_phi_mult_abs_minus2、またはptn_phi_mult_abs_minus17のいずれかは、0であるものと推測される。存在しないptn_phi_mult_eq0_flagまたはptn_phi_mult_eq1_flagのいずれかは、1であるものと推測される。
現在の木ノードに対するファイ因子は、以下のように導出される。
PtnPhiMult[nodeIdx] =
(2×ptn_phi_mult_sign_flag - 1)
×(!ptn_phi_mult_eq0_flag+!ptn_phi_mult_eq1_flag
+ptn_phi_mult_abs_minus2+ptn_phi_mult_abs_minus17)
ptn_residual_eq0_flag[ k ]、ptn_residual_sign_flag[ k ]、ptn_residual_abs_log2[ k ]、およびptn_residual_abs_remaining[ k ]は、k番目のジオメトリ位置成分の第1の予測残差を、一緒に指定する。ptn_residual_eq0_flag[ k ]は、残差成分がゼロに等しいかどうかを指定する。1に等しいptn_residual_sign_flag[ k ]は、残差成分の符号が正であることを示す。0に等しいptn_residual_sign_flag[ k ]は、残差成分の符号が負であることを示す。存在しないptn_residual_sign_flag[ k ]、ptn_residual_abs_log2[ k ]、またはptn_residual_abs_remaining[ k ]のいずれかは、0であるものと推測される。
現在の木ノードに関連する第1の予測残差は、以下のように導出される。
for (k = 0; k < 3; k++)
PtnResidual[nodeIdx][k] =
(2 ×ptn_residual_sign_flag - 1)
×(!ptn_residual_eq0_flag[k]
+ ((1 << ptn_residual_abs_log2[k]) >> 1)
+ ptn_residual_abs_remaining[k])
ptn_sec_residual_eq0_flag[ k ]、ptn_sec_residual_eq1_flag[ k ]、ptn_sec_residual_sign_flag[ k ]、ptn_sec_residual_abs_minus2[ k ]、およびptn_sec_residual_abs_minus17[ k ]は、k番目のジオメトリ位置成分の二次残差を、一緒に指定する。ptn_sec_residual_eq0_flag[ k ]は、残差成分がゼロに等しいかどうかを指定する。ptn_sec_residual_eq1_flag[ k ]は、存在するとき、残差成分の大きさが1に等しいかどうかを指定する。1に等しいptn_sec_residual_sign_flag[ k ]は、残差成分の符号が正であることを示す。0に等しいptn_sec_residual_sign_flag[ k ]は、残差成分の符号が負であることを示す。存在しないptn_src_residual_sign_flag[ k ]、ptn_sec_residual_abs_minus2[ k ]、またはptn_sec_residual_abs_minus17[ k ]のいずれかは、0であるものと推測される。存在しないptn_sec_residual_eq0_flag[ k ]またはptn_sec_residual_eq1_flag[ k ]のいずれかは、1であるものと推測される。
現在の木ノードに関連する第2の予測残差は、以下のように導出される。
for (k = 0; k < 3; k++)
PtnSecResidual[nodeIdx][k] =
(2×ptn_sec_residual_sign_flag - 1)
×(!ptn_sec_residual_eq0_flag[k] + !ptn_sec_residual_eq1_flag[k]
+ ptn_sec_residual_abs_minus2[k] + ptn_sec_residual_abs_minus17[k])
予測ジオメトリコーディングの上記の実装形態は、1つまたは複数の不都合を提示する場合がある。一例として、角度コーディングモードを用いる予測ジオメトリコーディングの上記の実装形態は、一次(r,φ,i)と二次(rx,ry,rz)の両方の残差のコーディングを必要とするので、多くのコンテキストコーディングされたビンを必要とする場合があり、それは計算集約的である。別の例として、予測子インデックスのシグナリングおよび子の数のシグナリング(両ケースは合計4つの候補を有する)に対して、予測ジオメトリコーディングの上記の実装形態は、2ビットの固定長コーディングを使用し、それは、候補が等確率でないので最適ではない。別の例として、予測ジオメトリコーディングの上記の実装形態における一次残差に対して、レーザインデックス(i)に関連するシグナリングは、たとえば点のカウントが単一のレーザを使用してキャプチャされるとき、冗長であり得る。別の例として、予測ジオメトリコーディングの上記の実装形態では、ゼロ予測子(または、上記で説明した「予測なし」)は、非常に非効率であり、予測のために使用されることはほとんどない。その上、「r」部に対して、それは非負であり、予測は常にゼロであるので、「r」成分に対する残差の符号は常に推測され得、したがって、対応するシグナリングは冗長である。
本開示の1つまたは複数の技法によれば、エンコーダ(たとえば、G-PCCエンコーダ200)および/またはデコーダ(たとえば、G-PCCデコーダ300)は、前述の不都合を克服し得る。第1の例として、エンコーダおよび/またはデコーダは、二次残差およびファイ乗数に対するコンテキストおよびコンテキストコーディングされたビンの低減を実行し得る。第2の例として、エンコーダおよび/またはデコーダは、子の数および予測子インデックスシグナリングに対して可変長コーディングを実行し得る。第3の例として、エンコーダおよび/またはデコーダは、コンテキストが単一のレーザによってキャプチャされるとき、レーザインデックスのシグナリングを除去し得る。第4の例として、エンコーダおよび/またはデコーダは、親の近傍の方位角およびレーザインデックス、ならびに符号推定を利用することによってゼロ予測を修正し得る。
本開示の技法のいくつかの詳細例は以下のとおり。
上記で説明したように、第1の例によれば、エンコーダおよび/またはデコーダは、二次残差およびファイ乗数に対するコンテキストおよびコンテキストコーディングされたビンの低減を実行し得る。たとえば、二次残差コーディングは、ptn_sec_residual_abs_minus17[ k ]シンタックス要素および関連する3*15=45個のコンテキストを除去することによって簡略化され得る。いくつかの例では、ptn_sec_residual_abs_minus2[ k ]に対するバイナリ化およびコンテキストが修正され得る。いくつかの例示的な修正が、<ADD> . . . </ADD>タグにおける追加と<REMOVE> . . . </REMOVE>タグにおける除去とともに以下に示される。
ptn_sec_residual_eq0_flag[ k ]、ptn_sec_residual_eq1_flag[ k ]、ptn_sec_residual_sign_flag[ k ]、<ADD> and </ADD>ptn_sec_residual_abs_minus2[ k ]、<REMOVE>およびptn_sec_residual_abs_minus17[ k ]</REMOVE>は、k番目のジオメトリ位置成分の二次残差を、一緒に指定する。ptn_sec_residual_eq0_flag[ k ]は、残差成分がゼロに等しいかどうかを指定する。ptn_sec_residual_eq1_flag[ k ]は、存在するとき、残差成分の大きさが1に等しいかどうかを指定する。1に等しいptn_sec_residual_sign_flag[ k ]は、残差成分の符号が正であることを示す。0に等しいptn_sec_residual_sign_flag[ k ]は、残差成分の符号が負であることを示す。存在しないptn_src_residual_sign_flag[ k ]、<ADD> or </ADD> ptn_sec_residual_abs_minus2[ k ]、<REMOVE>またはptn_sec_residual_abs_minus17[ k ] </REMOVE>のいずれかは、0であるものと推測される。存在しないptn_sec_residual_eq0_flag[ k ]またはptn_sec_residual_eq1_flag[ k ]のいずれかは、1であるものと推測される。
現在の木ノードに関連する第2の予測残差は、以下のように導出される。
for (k = 0; k < 3; k++)
PtnSecResidual[nodeIdx][k] =
(2×ptn_sec_residual_sign_flag - 1)
×(!ptn_sec_residual_eq0_flag[k] + !ptn_sec_residual_eq1_flag[k]
+ ptn_sec_residual_abs_minus2[k] <REMOVE> + ptn_sec_residual_abs_minus17[k] </REMOVE>)
代替的に、G-PCCコーダは、指数ゴロムコーディングに対する一定数のプレフィックスコンテキスト(たとえば、aコンテキスト)およびサフィックスコンテキスト(たとえば、bコンテキスト)を使用してシグナリングを実行し得る。プレフィックスコンテキストおよびサフィックスコンテキストの使用は、二次残差成分の中にかなりのエネルギーがあるときに効果的であり得る(たとえば、コーディング利得を提供し得る)。一例では、a=5、b=4である。
第二に、ファイ乗数に関連するシンタックスは、8個のコンテキストを除去し、シグナリングを修正することによって簡略化され、詳細は以下のとおりである。
ptn_phi_mult_eq0_flag,、ptn_phi_mult_sign_flag、ptn_phi_mult_eq1_flag,、ptn_phi_mult_abs_minus2、および<REMOVE>ptn_phi_mult_abs_minus17</REMOVE> <ADD>ptn_phi_mult_abs_minus9</ADD>は、デルタ角度予測の中で使用される乗法係数を一緒に指定する。ptn_phi_mult_eq0_flagは、存在するとき、係数がゼロに等しいかどうかを指定する。ptn_phi_mult_eq1_flagは、存在するとき、係数の大きさが1に等しいかどうかを指定する。1に等しいptn_phi_mult_sign_flagは、係数の符号が正であることを示す。0に等しいptn_phi_mult_sign_flagは、係数の符号が負であることを示す。存在しないptn_phi_mult_sign_flag、ptn_phi_mult_abs_minus2、または<REMOVE>ptn_phi_mult_abs_minus17 </REMOVE> <ADD> ptn_phi_mult_abs_minus9 </ADD>のいずれかは、0であるものと推測される。存在しないptn_phi_mult_eq0_flagまたはptn_phi_mult_eq1_flagのいずれかは、1であるものと推測される。
現在の予測木ノードに対するファイ因子は、以下のように導出される。
PtnPhiMult[nodeIdx] =
(2×ptn_phi_mult_sign_flag - 1)
×(!ptn_phi_mult_eq0_flag+!ptn_phi_mult_eq1_flag
+ ptn_phi_mult_abs_minus2 + <REMOVE>ptn_phi_mult_abs_minus17 </REMOVE> <ADD>ptn_phi_mult_abs_minus9</ADD>)
上記で説明したように、第2の例によれば、エンコーダおよび/またはデコーダは、子の数および予測子インデックスシグナリングに対して可変長コーディングを実行し得る。現在、予測子モードおよび子の数のシグナリング情報はともに、以下のマッピングを用いて、3つのコンテキストを有する2ビット固定長コーディングにおいてシグナリングされる。
しかしながら、不等確率のシンボル統計を考慮するために、可変長バイナリ化、たとえば切り捨てられた単項バイナリ化を用いてシグナリングすることが提案されている。それは、シグナリングに関連するビンの総数を低減し得る。predModeの統計は角度モードが適用されるかどうかに応じて異なる場合があるので、対応するジオメトリパラメータセットの中ですでにシグナリングされている角度モードが有効か否かに応じて、異なるマッピングが使用され得る。
上記で説明したように、第3の例によれば、エンコーダおよび/またはデコーダは、コンテキストが単一のレーザによってキャプチャされるとき、レーザインデックスのシグナリングを除去し得る(たとえば、符号化も復号もしない)。num_lasers_minus1が0に等しいとき、レーザインデックスは、点群の中のすべての点に対して同じである。それゆえ、レーザインデックスに対して関連する残差シグナリングは、冗長であり得る(すなわち、第3の成分の残差はシグナリングされる必要がない)。シンタックスの中の変化が、レーザインデックスに対応する第3の成分を考慮して以下に示される。(それは、軸変換が存在する場合に変化し得る)。
軸変換が存在する場合、レーザインデックスに対応する成分は、シグナリングされない。
その上、num_lasers_minus1が1である(2つだけのレーザが存在する)とき、残差は、ゼロ、-1、または+1のいずれかであり得るが、ここで非ゼロの場合に対して、符号および後続の情報が推測され得、シグナリングされる必要はない。たとえば、我々が、0および1のlaserIdxを有する2つのレーザを有すると仮定すると、予測されるlaserIdxが1であり、残差が非ゼロである場合、現在のlaserIdx=0であることが推測され得る。それゆえ、その場合、ptn_residual_eq0_flag[2]をシグナリングするだけで十分である。それに応じて、シンタックスにおける以下の変更が実践され得る。
上記で説明したように、第4の例によれば、エンコーダおよび/またはデコーダは、親の近傍の方位角およびレーザインデックス、ならびに符号推定を利用することによってゼロ予測を修正し得る。
現在、角度ドメインの中のゼロ予測が、ゼロに等しいすべての成分に対応する。しかしながら、ゼロ予測の現在の実装形態は、非効率的である場合があり、したがって、ほとんど使用されない。
本開示の1つまたは複数の技法によれば、エンコーダまたはデコーダは、parentNode(祖先)が利用可能である場合、方位角およびレーザインデックスをparentNodeから継承し得る。それゆえ、ある意味では、半径がゼロ(または、最小半径値)に設定されることを除いて、デルタ予測と同様である。
位置予測プロセスにおける以下の変更が必要である(セクション8.2.6.4)[w19522]。
#############################################################################
predModeが0に等しいとき、予測される点の位置は、<REMOVE>0</REMOVE>:
for (k = 0; k < 3; k++){
predPos[k] = 0
<ADD>if(geometry_angular_enabled_flag && k)
predPos[k] = aPos0[k] </ADD>
}
predModeが1に等しいとき、予測される点の位置は、第1の祖先に関連する位置である。
for (k = 0; k < 3; k++)
predPos[k] = aPos0[k]
predModeが2に等しいとき、予測される点の位置は、第1の2つの祖先に関連する位置の線形結合である。
for (k = 0; k < 3; k++)
predPos[k] = aPos0[k] + aPos0[k] - aPos1[k]
そうではなく、predModeが3に等しいとき、予測される点の位置は、3つすべての祖先に関連する位置の線形結合である。
for (k = 0; k < 3; k++)
predPos[k] = aPos0[k] + aPos1[k] - aPos2[k]
#############################################################################
第二に、ゼロ予測子が使用されるとき、予測される半径はゼロであるので、対応する残差は正であるものと推測され、それに応じて、対応する符号はシグナリングされる必要はなく、推測される。角度モードが無効であるときも同様である。
代替的に、半径の最小値(すべての点の中の最小半径)が、スライスヘッダの中でシグナリングされ得、それは、0の代わりにゼロ予測子に対する半径として使用され得る。
ゼロ予測子を改善するために、ファイ乗数が、デルタ予測子だけでなく、すべての予測子に適用され得る。シンタックスにおける次の変更は、以下のとおりである。
図6は、本開示の1つまたは複数の技法とともに使用され得る、例示的な距離測定システム600を示す概念図である。図6の例では、距離測定システム600は、照明器602とセンサ604とを含む。照明器602は、光606を放射し得る。いくつかの例では、照明器602は、1つまたは複数のレーザビームとして光606を放射し得る。光606は、赤外波長または可視光波長など、1つまたは複数の波長であり得る。他の例では、光606は、コヒーレントではないレーザ光である。光606が、オブジェクト608などのオブジェクトに遭遇するとき、光606は、戻り光(returning light)610を生成する。戻り光610は、後方散乱光および/または反射光を含み得る。戻り光610は、オブジェクト608の画像612をセンサ604の上に生成するように戻り光610を案内するレンズ611を通過し得る。センサ604は、画像612に基づいて信号614を生成する。画像612は、(たとえば、図6の画像612の中のドットによって表されるような)点のセットを含み得る。
いくつかの例では、照明器602およびセンサ604が、360度の環境の視界をキャプチャするように、回転する構造の上に搭載され得る。他の例では、距離測定システム600は、照明器602およびセンサ604が特定の範囲(たとえば、360度まで)の中でオブジェクトの距離を検出することを可能にする、1つまたは複数の光学構成要素(たとえば、ミラー、コリメータ、回折格子など)を含み得る。図6の例は単一の照明器602およびセンサ604だけを示すが、距離測定システム600は、照明器およびセンサの複数のセットを含み得る。
いくつかの例では、照明器602は、構造化光パターンを生成する。そのような例では、距離測定システム600は、構造化光パターンのそれぞれの画像が形成される複数のセンサ604を含み得る。距離測定システム600は、構造化光パターンの画像の間の視差を使用して、構造化光パターンがそこから後方散乱するオブジェクト608までの距離を決定し得る。構造化光ベースの距離測定システムは、オブジェクト608がセンサ604に比較的近い(たとえば、0.2メートル~2メートル)とき、高レベルの精度(たとえば、ミリメートル未満の範囲内の精度)を有し得る。この高レベルの精度は、モバイルデバイス(たとえば、携帯電話、タブレットコンピュータなど)のアンロックおよびセキュリティ用途のためなど、顔認識用途において有用であり得る。
いくつかの例では、距離測定システム600は、飛行時間(ToF)型システムである。距離測定システム600がToF型システムであるいくつかの例では、照明器602は、光のパルスを生成する。言い換えれば、照明器602は、放射光606の振幅を変調し得る。そのような例では、センサ604は、照明器602によって生成された光606のパルスからの戻り光610を検出する。次いで、距離測定システム600は、光606が放射されるときと検出されるときとの間の遅延と、知られている空気中の光の速度とに基づいて、光606がそこから後方散乱するオブジェクト608までの距離を決定し得る。いくつかの例では、放射光606の振幅を変調するのではなく(または、それに加えて)、照明器602は、放射光606の位相を変調してもよい。そのような例では、センサ604は、オブジェクト608からの戻り光610の位相を検出し、光の速度を使用して、および照明器602が特定の位相において光606を生成したときと、センサ604がその特定の位相において戻り光610を検出したときとの間の時間差に基づいて、オブジェクト608の上の点までの距離を決定し得る。
他の例では、点群が、照明器602を使用することなく生成され得る。たとえば、いくつかの例では、距離測定システム600のセンサ604は、2つ以上の光学カメラを含み得る。そのような例では、距離測定システム600は、光学カメラを使用して、オブジェクト608を含む環境の立体画像をキャプチャし得る。距離測定システム600は、立体画像の中のロケーションの間の視差を計算し得る点群生成器616を含み得る。次いで、距離測定システム600は、視差を使用して、立体画像の中で示されるロケーションまでの距離を決定し得る。これらの距離から、点群生成器616は、点群を生成し得る。
センサ604は、色および反射率の情報など、オブジェクト608の他の属性も検出し得る。図6の例では、点群生成器616は、センサ604によって生成された信号614に基づいて点群を生成し得る。距離測定システム600および/または点群生成器616は、データソース104(図1)の一部を形成し得る。したがって、距離測定システム600によって生成された点群は、本開示の技法のいずれかに従って符号化および/または復号され得る。
図7は、本開示の1つまたは複数の技法が使用され得る例示的な車両ベースシナリオを示す概念図である。図7の例では、車両700は、距離測定システム702を含む。距離測定システム702は、図7に関して説明した方式で実装され得る。図7に示されていないが、車両700は、同じく、データソース104(図1)などのデータソースと、G-PCCエンコーダ200(図1)などのG-PCCエンコーダとを含み得る。図7の例では、距離測定システム702は、道路の中の歩行者706または他のオブジェクトに反射するレーザビーム704を放射する。車両700のデータソースは、距離測定システム702によって生成された信号に基づいて点群を生成し得る。車両700のG-PCCエンコーダは、点群を符号化して、ジオメトリビットストリーム(図2)および属性ビットストリーム(図2)などのビットストリーム708を生成し得る。ビットストリーム708は、G-PCCエンコーダによって取得される符号化されない点群よりはるかに少ないビットを含み得る。
車両700の出力インターフェース(たとえば、出力インターフェース108(図1))は、ビットストリーム708を1つまたは複数の他のデバイスに送信し得る。ビットストリーム808は、G-PCCエンコーダによって取得される符号化されない点群よりはるかに少ないビットを含み得る。したがって、車両700は、ビットストリーム708を他のデバイスに、符号化されない点群データより速やかに送信することができる場合がある。加えて、ビットストリーム708が必要とするデータ戦略能力は、より少なくてもよい。
図7の例では、車両700は、ビットストリーム708を別の車両710に送信してもよい。車両710は、G-PCCデコーダ300(図1)などのG-PCCデコーダを含み得る。車両710のG-PCCデコーダは、ビットストリーム708を復号して点群を再構築し得る。車両710は、再構築された点群を様々な目的のために使用し得る。たとえば、車両710は、再構築された点群に基づいて、歩行者706が車両700の前方の道路の中にいると決定し、それゆえ、たとえば、歩行者706が道路の中にいることを車両710のドライバが気付く前であっても減速を開始し得る。したがって、いくつかの例では、車両710は、再構築された点群に基づいて自律航法動作を実行し得る。
追加または代替として、車両700は、ビットストリーム708をサーバシステム712に送信し得る。サーバシステム712は、ビットストリーム708を様々な目的のために使用し得る。たとえば、サーバシステム712は、ビットストリーム708を、点群を後で再構築するために記憶し得る。この例では、サーバシステム712は、点群を他のデータ(たとえば、車両700によって生成された車両テレメトリデータ)とともに使用して、自律運転システムを訓練し得る。他の例では、サーバシステム712は、フォレンジック衝突調査(たとえば、車両700が歩行者706と衝突する場合)のために後で再構築するために、ビットストリーム708を記憶し得る。
図8、本開示の1つまたは複数の技法が使用され得る例示的なエクステンデッドリアリティシステムを示す概念図である。エクステンデッドリアリティ(XR)は、拡張現実(AR)、混合現実(MR)、および仮想現実(VR)を含む技術の範囲をカバーするために使用される用語である。図8の例では、ユーザ800は、第1のロケーション802に位置する。ユーザ800は、XRヘッドセット804を装着している。XRヘッドセット804の代替として、ユーザ800は、モバイルデバイス(たとえば、携帯電話、タブレットコンピュータなど)を使用してもよい。XRヘッドセット804は、ロケーション802におけるオブジェクト806の上の点の位置を検出する、距離測定システムなどの深さ検出センサを含む。XRヘッドセット804のデータソースは、深さ検出センサによって生成された信号を使用して、ロケーション802におけるオブジェクト806の点群表現を生成し得る。XRヘッドセット804は、点群を符号化してビットストリーム808を生成するように構成されたG-PCCエンコーダ(たとえば、図1のG-PCCエンコーダ200)を含み得る。
XRヘッドセット804は、ビットストリーム808を(たとえば、インターネットなどのネットワークを介して)、第2のロケーション814におけるユーザ812によって装着されたXRヘッドセット810に送信し得る。XRヘッドセット810は、ビットストリーム808を復号して点群を再構築し得る。XRヘッドセット810は、点群を使用して、ロケーション802におけるオブジェクト806を表すXR可視化(たとえば、AR、MR、VR可視化)を生成し得る。したがって、いくつかの例では、たとえばXRヘッドセット810がVR可視化を生成するとき、ユーザ812は、ロケーション802の3D没入型体験を有し得る。いくつかの例では、XRヘッドセット810は、再構築された点群に基づいて仮想オブジェクトの位置を決定し得る。たとえば、XRヘッドセット810は、環境(たとえば、ロケーション802)が平面を含むことを、再構築された点群に基づいて決定し、したがって、仮想オブジェクト(たとえば、アニメキャラクタ)は平面の上に設置されるべきであることを決定し得る。XRヘッドセット810は、仮想オブジェクトが決定された位置にあるXR可視化を生成し得る。たとえば、XRヘッドセット810は、平面の上に座っているアニメキャラクタを示し得る。
図9は、本開示の1つまたは複数の技法が使用され得る例示的なモバイルデバイスシステムを示す概念図である。図9の例では、携帯電話またはタブレットコンピュータなどのモバイルデバイス900は、モバイルデバイス900の環境の中のオブジェクト902の上の点の位置を検出する、LIDARシステムなどの距離測定システムを含む。モバイルデバイス900のデータソースは、深さ検出センサによって生成された信号を使用して、オブジェクト902の点群表現を生成し得る。モバイルデバイス900は、点群を符号化してビットストリーム904を生成するように構成されたG-PCCエンコーダ(たとえば、図1のG-PCCエンコーダ200)を含み得る。図9の例では、モバイルデバイス900は、ビットストリームをサーバシステムまたは他のモバイルデバイスなどのリモートデバイス906に送信し得る。リモートデバイス906は、ビットストリーム904を復号して点群を再構築し得る。リモートデバイス906は、点群を様々な目的のために使用し得る。たとえば、リモートデバイス906は、点群を使用して、モバイルデバイス900の環境のマップを生成し得る。たとえば、リモートデバイス906は、再構築された点群に基づいて建物の内部のマップを生成し得る。別の例では、リモートデバイス906は、点群に基づいてイメージ(たとえば、コンピュータグラフィックス)を生成し得る。たとえば、リモートデバイス906は、点群の点を多角形の頂点として使用し、点の色属性を多角形を網掛けするための基準として使用し得る。いくつかの例では、リモートデバイス906は、再構築された点群を顔認識または他のセキュリティ用途のために使用し得る。
図10Aおよび図10Bは、ビンnにおけるこのプロセスの例を示す。図10Aの例201では、ビンnにおける範囲は、特定のコンテキスト状態(σ)が与えられると、LPS(pσ)の確率によって与えられるRangeMPSおよびRangeLPSを含む。例201は、ビンnの値がMPSに等しいときの、ビンn+1における範囲の更新を示す。この例では、ローは同じままあるが、ビンn+1における範囲の値は、ビンnにおいてRangeMPSの値まで下げられる。図10Bの例203は、ビンnの値がMPSに等しくない(すなわち、LPSに等しい)とき、ビンn+1における範囲の更新を示す。この例では、ローが、ビンnにおいてRangeLPSのより低い範囲値に移される。加えて、ビンn+1における範囲の値は、ビンnにおけるRangeLPSの値まで下げられる。
いくつかの例では、範囲は9ビットで表され、ローは10ビットで表される。範囲およびローの値を十分な精度で維持するための再正規化プロセスがある。再正規化は、範囲が256未満であるときはいつでも起こる。したがって、範囲は、再正規化の後は常に256以上である。範囲および低(low)の値に依存して、BACは、ビットストリームに、「0」、もしくは「1」を出力し、または将来の出力に備えるために、内部変数(BO:未解決ビットと呼ばれる)を更新する。図11は、範囲に依存するBAC出力の例を示す。たとえば、範囲および低(low)が特定の閾(たとえば、512)を上回るとき、「1」がビットストリームに出力される。範囲および低(low)が特定の閾(たとえば、512)を下回るとき、「0」がビットストリームに出力される。範囲およびより低(lower)がいくつかの閾の間であるとき、ビットストリームには何も出力されない。そうではなく、BO値が増分され、次のビンが符号化される。
上記で説明したように、算術コーディング法が、高い圧縮効率をもたらすために使用され得る。これは、非バイナリシンタックス要素をバイナリ化と呼ばれるプロセスを使用してバイナリ表現(たとえば、0、1)に最初に変換することによって達成される。結果として得られる変換されたエントリーは、ビンまたはビン文字列と呼ばれる。次いで、これらのビンまたはビン文字列は、算術コーディングプロセスに供給される。図11は、例示的なコンテキスト適応型バイナリ算術コーディング(CABAC)符号化段階を示す。例示的なCABAC符号化段階は、たとえば図2のG-PCCエンコーダ200の算術符号化ユニット214および/または算術符号化ユニット226によって、G-PCCエンコーダの中に実装され得る。
G-PCCのいくつかの例では、コンテキスト適応型バイナリ算術コーディング(CABAC)は、バイナリ化プロセスを介してビンを生成するために使用され得る。各コーディングされたビン値に対して、適切なコンテキストモデルが選択される。これらのコンテキストモデルは、ビン確率値に基づいて各ビン値を出力ビットに符号化するために使用される。CABACエンジンは、ビンが、等しく0または1となる可能性が高いとき、コンテキストモデル化およびビン符号化をバイパスする。これは、以下で説明するバイパスコーディング段階である。場合によっては、適切なコンテキストモデルは、ビン値が符号化されるときに指定され、ビン値の確率に基づいてモデル化する。コンテキストは、エンコーダがより多くのビンを符号化するに連れて適応される。最後に、コンテキストコーディングされたビン値または生のビットストリームが、デコーダに送信されるかまたは他の方法で供給される。
図12は、本開示の技法による、CABACを実施するように構成され得る例示的算術符号化ユニット214のブロック図である。シンタックス要素1180が、算術符号化ユニット214へと入力される。シンタックス要素が、すでにバイナリ値シンタックス要素(たとえば、0および1の値のみを有するフラグまたは他のシンタックス要素)である場合、バイナリ化のステップはスキップされてもよい。シンタックス要素が非バイナリ値のシンタックス要素(たとえば、1または0以外の値を有し得るシンタックス要素)である場合、非バイナリ値のシンタックス要素はバイナライザ1200によってバイナリ化される。バイナライザ1200は、非バイナリ値のシンタックス要素の、バイナリ決定のシーケンスへのマッピングを実行する。これらのバイナリ決定はしばしば、「ビン」と呼ばれる。たとえば、変換係数レベルに対して、レベルの値を連続するビンに分解することができ、各ビンは、係数レベルの絶対値が何らかの値よりも大きいかどうかを示す。たとえば、ビン0(有意性フラグと呼ばれることがある)は、変換係数レベルの絶対値が0より大きいかどうかを示す。ビン1は、変換係数レベルの絶対値が1より大きいかどうかを示し、以下同様である。各非バイナリ値のシンタックス要素のために、固有のマッピングが開発されてもよい。
バイナライザ1200によって生成された各ビンは、算術符号化ユニット214のバイナリ算術コーディング側に供給される。つまり、非バイナリ値のシンタックス要素の所定のセットに対して、各ビンタイプ(たとえば、ビン0)は、次のビンタイプ(たとえば、ビン1)の前にコーディングされる。コーディングは、普通モードまたはバイパスモードのいずれかで実行され得る。バイパスモードでは、バイパス符号化エンジン1260は、固定確率モデルを使用して、たとえば、ゴロムライスコーディングまたは指数ゴロムコーディングを使用して、算術コーディングを実行する。バイパスモードは一般に、より予測可能なシンタックス要素のために使用される。
普通モードでのコーディングは、CABACを実行することを伴う。普通モードCABACは、前にコーディングされたビンの値を与えられるとビンの値の確率が予測可能である場合のビン値をコーディングするためである。ビンがLPSである確率は、コンテキストモデラ1220によって決定される。コンテキストモデラ1220は、ビン値とコンテキストに対する確率状態(たとえば、LPSの値およびLPSが発生する確率を含む確率状態σ)とを出力する。コンテキストは、一連のビンのための初期コンテキストであってもよく、前にコーディングされたビンのコーディングされた値に基づいて決定されてもよい。コンテキストのアイデンティティは、変数ctxIncの値(前のコンテキストに加えるための増分を表すctxIncの値などのコンテキストの増分)に基づいて表現および/または決定され得る。上で説明されたように、コンテキストモデラ1220は、受信されたビンがMPSであったかまたはLPSであったかに基づいて状態を更新し得る。コンテキストおよび確率状態σがコンテキストモデラ1220によって決定された後、普通符号化エンジン1240は、ビン値に対してBACを実行する。
図13は、本開示の技法による、CABACを実行するように構成され得る例示的な算術復号ユニット302のブロック図である。図13の算術復号ユニット302は、図12において説明される算術符号化ユニット214のものとは逆方式で、CABACを実行する。ビットストリーム2180からのコーディングされたビットが、算術復号ユニット302へと入力される。コーディングされたビットは、コーディングされたビットが普通モードを使用してエントロピーコーディングされたか、またはバイパスモードを使用してエントロピーコーディングされたかに基づいて、コンテキストモデラ2200またはバイパス復号エンジン2220のいずれかに供給される。コード化ビットがバイパスモードでコーディングされた場合、バイパス復号エンジンは、たとえば、バイナリ値のシンタックス要素または非バイナリシンタックス要素のビンを取り出すのに、ゴロムライスまたは指数ゴロム復号を使うことになる。
コーディングされたビットが普通モードでコーディングされた場合、コンテキストモデラ2200は、コーディングされたビットに対する確率モデルを決定してもよく、普通復号エンジン2240は、非バイナリ値のシンタックス要素のビン(または、バイナリ値である場合はシンタックス要素自体)を生成するように、コーディングされたビットを復号してもよい。コンテキストおよび確率状態σがコンテキストモデラ2200によって決定された後、普通復号エンジン2240は、ビン値を復号するためにBACを実行する。言い換えれば、普通復号エンジン2240は、コンテキストの確率状態を決定し、前にコーディングされたビンおよび現在の範囲に基づいてビン値を復号し得る。ビンを復号した後、コンテキストモデラ2200は、ウインドウサイズおよび復号されたビンの値に基づいてコンテキストの確率状態を更新し得る。
図14は、本開示の1つまたは複数の技法による、現在の予測木ノードを符号化するための例示的な方法を示すフローチャートである。現在の予測木ノード(PTN)は、点群の中に含まれ得る。G-PCCエンコーダ200(図1および図2)に関して説明されるが、他のデバイスが図14の方法に類似の方法を実行するように構成され得ることを理解されたい。たとえば、G-PCCデコーダ300(図1および図3)などのG-PCCデコーダは、図14の方法に対する補間方法を実行する(たとえば、符号化するのではなく復号する)場合がある。
G-PCCエンコーダ200は、点群の現在の予測木ノード(PTN)をジオメトリコーディングするために、二次残差の値を取得し得る(1402)。上記で説明したように、G-PCCにおける予測ジオメトリコーディングに対して角度モードを使用するとき、G-PCCエンコーダ200は、(r,φ,i)ドメインにおける予測を実行し得る。丸めにおける誤差に起因して、r,φ,iにおけるコーディングは、損失を伴う場合がある。いくつかの例では、この損失は、デカルトドメインの中にあり得る残差の第2のセット(二次残差と呼ばれる)をコーディングすることによって低減または消去され得る。たとえば、現在のPTNは、3つの二次残差(rx,ry,rz)を含み、そのうちの1つまたは複数が、図14の技法を使用して符号化され得る。
G-PCCエンコーダ200は、二次残差の値を符号化し得る。二次残差の値を符号化するために、G-PCCエンコーダ200は、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、コンテキスト適応型バイナリ算術コーディング(CABAC)コンテキストの第1のセットを使用して符号化し(1404)、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して符号化し得る(1406)。たとえば、G-PCCエンコーダ200の算術符号化ユニット214は、0とa-1との間のコンテキストインデックス(ctxIdx)を有するコンテキストを使用してptn_sec_residual_abs_minus2シンタックス要素のプレフィックスビンを符号化し、aとa+b-1との間のコンテキストインデックス(ctxIdx)を有するコンテキストを使用してptn_sec_residual_abs_minus2[ k ]シンタックス要素のサフィックスビンを符号化し得る。いくつかの例では、aは5であり、bは4であり得る。
いくつかの例では、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素に加えて、G-PCCエンコーダ200は、二次残差の値を指定する1つまたは複数の他のシンタックス要素を符号化し得る。一例として、G-PCCエンコーダ200は、二次残差の値がゼロ(たとえば、ptn_sec_residual_eq0_flag)に等しいかどうかを指定する値を有するシンタックス要素を符号化し得る。別の例として、二次残差の値がゼロに等しくない場合、G-PCCエンコーダ200は、二次残差の値の符号(たとえば、ptn_sec_residual_sign_flag)を指定する値を有するシンタックス要素と、二次残差の値が1より大きい(たとえば、ptn_sec_residual_eq1_flag)かどうかを指定する値を有するシンタックス要素とを符号化し得る。
しかしながら、本開示の1つまたは複数の技法に従って上記で説明したように、G-PCCエンコーダ200は、二次残差の絶対値が17より大きい場合でも、二次残差の絶対値マイナス17(たとえば、ptn_sec_residual_abs_minus17)を指定するシンタックス要素を符号化することを回避し得る。二次残差の絶対値マイナス17を指定するシンタックス要素を符号化しないことによって、および二次残差の絶対値マイナス2を指定するシンタックス要素のプレフィックスおよびサフィックスをコンテキストコーディングすることによって、G-PCCエンコーダ200は、二次残差をシグナリングするために使用されるコンテキストおよび/またはコンテキストコーディングされたビンの数を低減し得る。そのため、本開示の技法は、点群コーディングの計算の複雑さを低減し得る。
本開示の技法は、二次残差を超えるシグナリングに対して適用可能であり得る。たとえば、G-PCCエンコーダ200は、点群の現在の予測木ノードをジオメトリコーディングするためにファイ乗数の値を取得し(1408)、ファイ乗数の値の絶対値マイナス9(たとえば、ptn_phi_mult_abs_minus9)を指定する値を有するシンタックス要素を少なくとも符号化することによってファイ乗数の値を符号化し得る(1410)。しかしながら、二次残差と同様に、G-PCCエンコーダ200は、(たとえば、ファイ乗数の絶対値が17より大きい場合でも)ファイ乗数の絶対値マイナス17を指定するシンタックス要素を符号化することを回避し得る。
上記で説明したように、いくつかの例では、G-PCCエンコーダは、PTNの直接子ノードの数をシグナリングし得る。たとえば、G-PCCエンコーダ200は、点群を表すジオメトリ予測木の中に存在する現在の予測木ノードの直接子ノードの数(たとえば、Ptn_child_cnt)を表すシンタックス要素を符号化し得る。いくつかの例では、G-PCCエンコーダ200は、シンタックス要素を符号化する(たとえば、バイナリ化する)ために固定長コーディングを利用し得る。たとえば、G-PCCエンコーダ200は、直接子ノードの数を表すシンタックス要素を符号化するために以下の表を利用し得る。
しかしながら、いくつかの例では、固定長コーディングを利用することは、望ましくない場合がある。たとえば、子ノードの数の確率分布は、0、2または3個の子ノードを有するPTNより多くのPTNが、1つの子ノードを有することをもたらす場合がある。本開示の1つまたは複数の技法によれば、G-PCCエンコーダ200は、点群を表すジオメトリ予測木の中に存在する現在の予測木ノードの直接子ノードの数(たとえば、Ptn_child_cnt)を表すシンタックス要素を、可変長コーディングを使用して符号化し得る(1412)。たとえば、G-PCCエンコーダ200は、直接子ノードの数を表すシンタックス要素を符号化するために以下の表を利用し得る。
上表に見られるように、直接子ノードの数を表すシンタックス要素を可変長コーディングすることには、直接子ノードの数が0である場合よりも直接子ノードの数が1である場合に、より短い符号語を利用することが含まれ得る(たとえば、子ノードの数が1である場合に符号語「0」を使用するのに対して、子ノードの数が0である場合に符号語「10」を使用する)。
図15は、本開示の1つまたは複数の技法による、現在の予測木ノードを復号するための例示的な方法を示すフローチャートである。現在の予測木ノード(PTN)は、点群の中に含まれ得る。G-PCCデコーダ300(図1および図3)に関して説明されるが、他のデバイスが図15の方法に類似の方法を実行するように構成され得ることを理解されたい。たとえば、G-PCCエンコーダ200(図1および図2)などのG-PCCエンコーダは、図15の方法に対する補間方法を実行する(たとえば、GRU216によって実行される再構築ループの中など、復号するのではなく符号化する)場合がある。
G-PCCデコーダ300は、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択し得る。上記で説明したように、複数の予測モードは、少なくともゼロ予測モードとデルタ予測モードとを含み得る。いくつかの例では、G-PCCデコーダ300は、シンタックス要素の値に基づいて予測モードを選択し得る。たとえば、ジオメトリ算術デコーダユニット302は、どの予測モードが選択されるべきかを指定する値を有するptn_pred_modeシンタックス要素を復号し得る。
ゼロ予測モードを選択する(1502)ことに応答して、G-PCCデコーダ300は、ゼロ予測を実行して現在のPTNの位置を決定し得る。ゼロ予測を実行するために、G-PCCデコーダ300は、現在の予測木ノードの親ノードの半径、方位角、およびレーザインデックスを決定し得る(1504)。たとえば、G-PCCデコーダ300は、親ノードの半径、方位角、およびレーザインデックスを、(たとえば、G-PCCデコーダ300によって前に決定されているので)メモリから取得し得る。
G-PCCデコーダ300は、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測し得る(1506)。たとえば、G-PCCデコーダ300は、親ノードの方位角およびレーザインデックスを、現在ノードの予測位置の方位角およびレーザインデックスとしてコピーし得る。
G-PCCデコーダ300は、予測位置の半径が最小半径値であるものと推測し得る(1508)。たとえば、G-PCCデコーダ300は、常に、予測位置の半径が最小半径値となるように設定し得る。いくつかの例では、最小半径値は、常にゼロであってよい。いくつかの例では、最小半径値は、ゼロよりも大きくてよい。たとえば、G-PCCデコーダ300は、最小半径値を(たとえば、スライスヘッダから)指定するシンタックス要素を復号し得る。
ゼロ予測の実行を完了するために、G-PCCデコーダ300は、現在の予測木ノードの位置を、現在の予測木ノードの予測位置に基づいて決定し得る(1510)。たとえば、G-PCCデコーダ300は、現在の予測木ノードの予測位置の半径の値と現在の予測木ノードの位置の半径の値との間の差を表す残差半径値を取得し得る。選択されたモードがゼロ予測モードである場合など、いくつかの例では、G-PCCデコーダ300は、残差半径値の符号は正であると推測し得る(かつ、符号が正であるかまたは負であるかをシグナリングする必要性を回避する)。G-PCCデコーダ300は、現在のPTNの位置の半径の値を取得するために、最小半径値(たとえば、現在のPTNの予測位置の半径値)に残差半径値を加算し得る。G-PCCデコーダ300は、同様に、他の成分(たとえば、方位角およびレーザインデックス)に対する残差を取得して加算し得る。
いくつかの例では、G-PCCデコーダ300は、点群を生成するために使用されるレーザの量に基づいて復号を修正し得る。たとえば、G-PCCデコーダ300は、点群を表す光検出および測距(LIDAR)データをキャプチャするために使用されるレーザの量を決定し得(1512)、レーザの量が1つであるとの決定に応答して、点群の中のすべてのノードに対するレーザインデックスは同じ値(たとえば、0のレーザインデックス値)であるものと推測し得る(1514)。このようにして、G-PCCデコーダ300は、レーザインデックスをシグナリングおよび/または予測する必要性を回避し得る。そのため、本開示の技法は、点群を表すために必要なビットの数を低減し得、かつ/または点群コーディングの複雑さを低減し得る。
以下の番号付き条項は、本開示の1つまたは複数の態様を示してもよい。
条項1A. 点群を処理する方法であって、点群のジオメトリコーディングに対する二次残差の、17より大きい値を取得するステップと、二次残差の値マイナス17を指定するシンタックス要素をコーディングすることなく二次残差の値をコーディングするステップとを含む、方法。
条項2A. シンタックス要素は、ptn_sec_residual_abs_minus17シンタックス要素を含む、条項1Aに記載の方法。
条項3A. 点群のジオメトリコーディングに対する、17より大きいファイ乗数の値を取得するステップと、ファイ乗数の値マイナス17を指定するシンタックス要素をコーディングすることなくファイ乗数の値をコーディングするステップとをさらに含む、条項1Aまたは2Aに記載の方法。
条項4A. ファイ乗数の値マイナス17を指定するシンタックス要素は、ptn_phi_mult_abs_minus17シンタックス要素を含む、条項3Aに記載の方法。
条項5A. ファイ乗数の値マイナス9を指定するシンタックス要素をコーディングするステップをさらに含む、条項3Aまたは4Aに記載の方法。
条項6A. 二次残差の値をコーディングするステップが、二次残差の値マイナスNを指定するシンタックス要素のビットを、a個のプレフィックスコンテキストおよびb個のサフィックスコンテキストを用いて指数ゴロムコーディングを使用してコーディングするステップを含む、条項1Aから5Aのいずれか一項に記載の方法。
条項7A. Nは2である、条項6Aに記載の方法。
条項8A. aは5である、条項6Aまたは7Aに記載の方法。
条項9A. bは4である、条項6Aから8Aのいずれか一項に記載の方法。
条項1B. 点群を処理する方法であって、点群を表すジオメトリ予測木の中に存在する現在の予測木ノードの直接子ノードの数を表すシンタックス要素を、可変長コーディングを使用してコーディングするステップと、現在の予測木ノードに関連する位置を予測するために使用されるモードを表すシンタックス要素を、可変長コーディングを使用してコーディングするステップとを含む、方法。
条項2B. ジオメトリ予測木の中に存在する現在の予測木ノードの直接子ノードの数を表すシンタックス要素は、ptn_child_cntシンタックス要素を含む、条項1Bに記載の方法。
条項3B. 現在の予測木ノードに関連する位置を予測するために使用されるモードを表すシンタックス要素は、ptn_pred_modeシンタックス要素を含む条項1Bまたは2Bに記載の方法。
条項1C. 点群を処理する方法であって、単一のレーザが、点群を表す光検出および測距(LIDAR)データをキャプチャするために使用されたとの決定に応答して、単一のレーザのレーザインデックス値をシグナリングすることを抑制するステップを含む、方法。
条項1D. 点群を処理する方法であって、親の近傍の方位角、レーザインデックス、および符号推定に基づいて点群のゼロ予測を実行するステップを含む、方法。
条項1E. 点群を符号化する方法であって、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得するステップと、二次残差の値を符号化するステップとを含み、値を符号化するステップは、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、コンテキスト適応型バイナリ算術コーディング(CABAC)コンテキストの第1のセットを使用して符号化するステップと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して符号化するステップとを含む、方法。
条項2E. シンタックス要素は、ptn_sec_residual_abs_minus2シンタックス要素を含む、条項1Eに記載の方法。
条項3E. 二次残差の絶対値は17より大きく、二次残差の値を符号化するステップが、二次残差の絶対値マイナス17を指定するシンタックス要素を符号化するステップを含まない、条項1Eから2Eのいずれか一項に記載の方法。
条項4E. CABACコンテキストの第1のセットは、0とa-1との間のコンテキストインデックスを有するCABACコンテキストを含み、CABACコンテキストの第2のセットは、aとa+b-1との間のコンテキストインデックスを有するCABACコンテキストを含む、条項1Eから3Eのいずれか一項に記載の方法。
条項5E. aは5であり、bは4である、条項4Eに記載の方法。
条項6E. シンタックス要素は第1のシンタックス要素を含み、二次残差の値を符号化するステップは、二次残差の値がゼロに等しいかどうかを指定する値を有する第2のシンタックス要素を符号化するステップと、二次残差の値がゼロに等しくない場合に、二次残差の値の符号を指定する値を有する第3のシンタックス要素を符号化するステップと、二次残差の値が1より大きいかどうかを指定する値を有する第4のシンタックス要素を符号化するステップと、二次残差の値が1より大きい場合に、第1のシンタックス要素を符号化するステップとをさらに含む、条項1Eから5Eのいずれか一項に記載の方法。
条項7E. 現在の予測木ノードは第1の予測木ノードであり、シンタックス要素は第1のシンタックス要素を含み、方法は、点群の第2の予測木ノードをジオメトリコーディングするためにファイ乗数の値を取得するステップと、ファイ乗数の値を符号化するステップとをさらに含み、ファイ乗数の値を符号化するステップは、ファイ乗数の値の絶対値マイナス9を指定する値を有する第5のシンタックス要素を符号化するステップを含む、条項1Eから6Eのいずれか一項に記載の方法。
条項8E. ファイ乗数の絶対値は17より大きく、ファイ乗数の値を符号化するステップは、ファイ乗数の値マイナス17を指定するシンタックス要素を符号化するステップを含まない、条項7Eに記載の方法。
条項9E. 現在の予測木ノードは第1の予測木ノードであり、シンタックス要素は第1のシンタックス要素を含み、方法は、点群を表すジオメトリ予測木の中に存在する第2の予測木ノードの直接子ノードの数を表す値を有する第6のシンタックス要素を、可変長コーディングを使用して符号化するステップをさらに含む、条項1Eから8Eのいずれか一項に記載の方法。
条項10E. ジオメトリ予測木の中に存在する第2の予測木ノードの直接子ノードの数を表す第6のシンタックス要素は、ptn_child_cntシンタックス要素を含む、条項9Eに記載の方法。
条項11E. 可変長コーディングを使用して第6のシンタックス要素を符号化するステップは、直接子ノードの数が1である場合に、直接子ノードの数が0である場合より短い符号語を利用するステップを含む、条項9Eに記載の方法。
条項12E. 点群を復号する方法であって、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得するステップと、二次残差の値を復号するステップとを含み、値を符号化するステップは、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、コンテキスト適応型バイナリ算術コーディング(CABAC)コンテキストの第1のセットを使用して復号するステップと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して復号するステップとを含む、方法。
条項13E. シンタックス要素は、ptn_sec_residual_abs_minus2シンタックス要素を含む、条項12Eに記載の方法。
条項14E. 二次残差の絶対値は17より大きく、二次残差の値を復号するステップは、二次残差の絶対値マイナス17を指定するシンタックス要素を復号するステップを含まない、条項12Eから13Eのいずれか一項に記載の方法。
条項15E. CABACコンテキストの第1のセットは、0とa-1との間のコンテキストインデックスを有するCABACコンテキストを含み、CABACコンテキストの第2のセットは、aとa+b-1との間のコンテキストインデックスを有するCABACコンテキストを含む、条項12Eから14Eのいずれか一項に記載の方法。
条項16E. aは5であり、bは4である、条項15Eに記載の方法。
条項17E. シンタックス要素は第1のシンタックス要素を含み、二次残差の値を復号するステップは、二次残差の値がゼロに等しいかどうかを指定する値を有する第2のシンタックス要素を復号するステップと、二次残差の値がゼロに等しくない場合に、二次残差の値の符号を指定する値を有する第3のシンタックス要素を復号するステップと、二次残差の値が1より大きいかどうかを指定する値を有する第4のシンタックス要素を復号するステップと、二次残差の値が1より大きい場合に、第1のシンタックス要素を復号するステップとをさらに含む、条項12Eから16Eのいずれか一項に記載の方法。
条項18E. 現在の予測木ノードは第1の予測木ノードであり、シンタックス要素は第1のシンタックス要素を含み、方法は、点群の第2の予測木ノードをジオメトリコーディングするためにファイ乗数の値を取得するステップと、ファイ乗数の値を復号するステップとをさらに含み、ファイ乗数の値を復号するステップは、ファイ乗数の値の絶対値マイナス9を指定する値を有する第5のシンタックス要素を復号するステップを含む、条項12Eから17Eのいずれか一項に記載の方法。
条項19E. ファイ乗数の絶対値は17より大きく、ファイ乗数の値を復号するステップは、ファイ乗数の値マイナス17を指定するシンタックス要素を復号するステップを含まない、条項18Eに記載の方法。
条項20E. 現在の予測木ノードは第1の予測木ノードであり、シンタックス要素は第1のシンタックス要素を含み、方法は、点群を表すジオメトリ予測木の中に存在する第2の予測木ノードの直接子ノードの数を表す値を有する第6のシンタックス要素を、可変長コーディングを使用して復号するステップをさらに含む、条項12Eから19Eのいずれか一項に記載の方法。
条項21E. ジオメトリ予測木の中に存在する第2の予測木ノードの直接子ノードの数を表す第6のシンタックス要素は、ptn_child_cntシンタックス要素を含む、条項20Eに記載の方法。
条項22E. 可変長コーディングを使用して第6のシンタックス要素を復号するステップは、直接子ノードの数が1である場合に、直接子ノードの数が0である場合より短い符号語を利用するステップを含む、条項20Eに記載の方法。
条項23E. 点群を符号化するためのデバイスであって、デバイスは、点群の少なくとも一部を記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサとを含み、1つまたは複数のプロセッサは、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得することと、二次残差の値を符号化することとを行うように構成され、値を符号化するために、1つまたは複数のプロセッサは、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、コンテキスト適応型バイナリ算術コーディング(CABAC)コンテキストの第1のセットを使用して符号化することと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して符号化することとを行うように構成される、デバイス。
条項24E. シンタックス要素は、ptn_sec_residual_abs_minus2シンタックス要素を含む、条項23Eに記載のデバイス。
条項25E. 二次残差の絶対値は17より大きく、二次残差の値を符号化するために、1つまたは複数のプロセッサは、二次残差の絶対値マイナス17を指定するシンタックス要素を符号化するように構成されない、条項23Eから24Eのいずれか一項に記載のデバイス。
条項26E. CABACコンテキストの第1のセットは、0とa-1との間のコンテキストインデックスを有するCABACコンテキストを含み、CABACコンテキストの第2のセットは、aとa+b-1との間のコンテキストインデックスを有するCABACコンテキストを含む、条項23Eから25Eのいずれか一項に記載のデバイス。
条項27E. aは5であり、bは4である、条項26Eに記載のデバイス。
条項28E. シンタックス要素は第1のシンタックス要素を含み、さらに二次残差の値を符号化するために、1つまたは複数のプロセッサは、二次残差の値がゼロに等しいかどうかを指定する値を有する第2のシンタックス要素を符号化することと、二次残差の値がゼロに等しくない場合に、二次残差の値の符号を指定する値を有する第3のシンタックス要素を符号化することと、二次残差の値が1より大きいかどうかを指定する値を有する第4のシンタックス要素を符号化することと、二次残差の値が1より大きい場合に、第1のシンタックス要素を符号化することとを行うように構成される、条項23Eから27Eのいずれか一項に記載のデバイス。
条項29E. 現在の予測木ノードは第1の予測木ノードであり、シンタックス要素は第1のシンタックス要素を含み、1つまたは複数のプロセッサは、点群の第2の予測木ノードをジオメトリコーディングするためにファイ乗数の値を取得することと、ファイ乗数の値を符号化することとを行うようにさらに構成され、ファイ乗数の値を符号化するために、1つまたは複数のプロセッサは、ファイ乗数の値の絶対値マイナス9を指定する値を有する第5のシンタックス要素を符号化するように構成される、条項23Eから29Eのいずれか一項に記載のデバイス。
条項30E. ファイ乗数の絶対値は17より大きく、ファイ乗数の値を符号化するために、1つまたは複数のプロセッサは、ファイ乗数の値マイナス17を指定するシンタックス要素を符号化するように構成されない、条項29Eに記載のデバイス。
条項31E. 現在の予測木ノードは第1の予測木ノードであり、シンタックス要素は第1のシンタックス要素を含み、1つまたは複数のプロセッサは、点群を表すジオメトリ予測木の中に存在する第2の予測木ノードの直接子ノードの数を表す値を有する第6のシンタックス要素を、可変長コーディングを使用して符号化するようにさらに構成される、条項23Eから30Eのいずれか一項に記載のデバイス。
条項32E. ジオメトリ予測木の中に存在する第2の予測木ノードの直接子ノードの数を表す第6のシンタックス要素は、ptn_child_cntシンタックス要素を含む、条項31Eに記載のデバイス。
条項33E. 可変長コーディングを使用して第6のシンタックス要素を符号化するために、1つまたは複数のプロセッサは、直接子ノードの数が1である場合に、直接子ノードの数が0である場合より短い符号語を利用するように構成される、条項31Eに記載のデバイス。
条項34E. 点群を復号するためのデバイスであって、デバイスは、点群の少なくとも一部を記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサとを含み、1つまたは複数のプロセッサは、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得することと、二次残差の値を復号することとを行うように構成され、値を復号するために、1つまたは複数のプロセッサは、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、コンテキスト適応型バイナリ算術コーディング(CABAC)コンテキストの第1のセットを使用して復号することと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して復号することとを行うように構成される、デバイス。
条項35E. シンタックス要素は、ptn_sec_residual_abs_minus2シンタックス要素を含む、条項34Eに記載のデバイス。
条項36E. 二次残差の絶対値は17より大きく、二次残差の値を復号するために、1つまたは複数のプロセッサは、二次残差の絶対値マイナス17を指定するシンタックス要素を復号するように構成されない、条項34Eから35Eのいずれか一項に記載のデバイス。
条項37E. CABACコンテキストの第1のセットは、0とa-1との間のコンテキストインデックスを有するCABACコンテキストを含み、CABACコンテキストの第2のセットは、aとa+b-1との間のコンテキストインデックスを有するCABACコンテキストを含む、条項34Eから36Eのいずれか一項に記載のデバイス。
条項38E. aは5であり、bは4である、条項37Eに記載のデバイス。
条項39E. シンタックス要素は第1のシンタックス要素を含み、さらに二次残差の値を復号するために、1つまたは複数のプロセッサは、二次残差の値がゼロに等しいかどうかを指定する値を有する第2のシンタックス要素を復号することと、二次残差の値がゼロに等しくない場合に、二次残差の値の符号を指定する値を有する第3のシンタックス要素を復号することと、二次残差の値が1より大きいかどうかを指定する値を有する第4のシンタックス要素を復号することと、二次残差の値が1より大きい場合に、第1のシンタックス要素を復号することとを行うように構成される、条項34Eから38Eのいずれか一項に記載のデバイス。
条項40E. 現在の予測木ノードは第1の予測木ノードであり、シンタックス要素は第1のシンタックス要素を含み、1つまたは複数のプロセッサは、点群の第2の予測木ノードをジオメトリコーディングするためにファイ乗数の値を取得することと、ファイ乗数の値を復号することとを行うようにさらに構成され、ファイ乗数の値を復号するために、1つまたは複数のプロセッサは、ファイ乗数の値の絶対値マイナス9を指定する値を有する第5のシンタックス要素を復号するように構成される、条項34Eから39Eのいずれか一項に記載のデバイス。
条項41E. ファイ乗数の絶対値は17より大きく、ファイ乗数の値を復号するために、1つまたは複数のプロセッサは、ファイ乗数の値マイナス17を指定するシンタックス要素を復号するように構成されない、条項34Eから40Eのいずれか一項に記載のデバイス。
条項42E. 現在の予測木ノードは第1の予測木ノードであり、シンタックス要素は第1のシンタックス要素を含み、1つまたは複数のプロセッサは、点群を表すジオメトリ予測木の中に存在する第2の予測木ノードの直接子ノードの数を表す値を有する第6のシンタックス要素を、可変長コーディングを使用して復号するようにさらに構成される、条項34Eから41Eのいずれか一項に記載のデバイス。
条項43E. ジオメトリ予測木の中に存在する第2の予測木ノードの直接子ノードの数を表す第6のシンタックス要素は、ptn_child_cntシンタックス要素を含む、条項42Eに記載のデバイス。
条項44E. 可変長コーディングを使用して第6のシンタックス要素を復号するために、1つまたは複数のプロセッサは、直接子ノードの数が1である場合に、直接子ノードの数が0である場合より短い符号語を利用するように構成される、条項42Eに記載のデバイス。
条項45E. 命令を記憶するコンピュータ可読記憶媒体であって、命令は、実行されると、点群エンコーダの1つまたは複数のプロセッサに、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得することと、二次残差の値を符号化することとを行わせ、1つまたは複数のプロセッサに値を符号化させる命令は、1つまたは複数のプロセッサに、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、コンテキスト適応型バイナリ算術コーディング(CABAC)コンテキストの第1のセットを使用して符号化することと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して符号化することとを行わせる命令を含む、コンピュータ可読記憶媒体。
条項46E. 命令を記憶するコンピュータ可読記憶媒体であって、命令は、実行されると、点群デコーダの1つまたは複数のプロセッサに、点群の現在の予測木ノードをジオメトリコーディングするために二次残差の値を取得することと、二次残差の値を復号することとを行わせ、1つまたは複数のプロセッサに値を復号させる命令は、1つまたは複数のプロセッサに、二次残差の値の絶対値マイナス2を指定する値を有するシンタックス要素のプレフィックスビンを、コンテキスト適応型バイナリ算術コーディング(CABAC)コンテキストの第1のセットを使用して復号することと、シンタックス要素のサフィックスビンを、コンテキストの第1のセットと異なるCABACコンテキストの第2のセットを使用して復号することとを行わせる命令を含む、コンピュータ可読記憶媒体。
条項1F. 点群を復号する方法であって、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択するステップであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ステップと、ゼロ予測モードを選択することに応答して、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定するステップと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測するステップと、予測位置の半径が最小半径値であるものと推測するステップであって、最小半径値は親ノードの半径と異なる、ステップと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定するステップとを含む、方法。
条項2F. デルタ予測モードを選択することに応答して、現在の予測木ノードの予測位置の半径、方位角、およびレーザインデックスを親ノードの半径、方位角、およびレーザインデックスとして推測するステップをさらに含む、条項1Fに記載の方法。
条項3F. 最小半径値がゼロである、条項1Fから2Fのいずれか一項に記載の方法。
条項4F. 最小半径値がゼロより大きい、条項1Fから3Fのいずれか一項に記載の方法。
条項5F. 予測位置に基づいて現在ノードの位置を決定するステップが、現在の予測木ノードの予測位置の半径の値と現在の予測木ノードの位置の半径の値との間の差を表す残差半径値を取得するステップを含む、条項1Fから4Fのいずれか一項に記載の方法。
条項6F. 残差半径値を取得するステップが、ゼロ予測モードを選択することに応答して、残差半径値の符号が正であるものと推測するステップを含む、条項5Fに記載の方法。
条項7F. 点群を表す光検出および測距(LIDAR)データをキャプチャするために使用されるレーザの量を決定するステップと、レーザの量が1つであるとの決定に応答して、点群の中のすべてのノードに対するレーザインデックスは同じ値であるものと推測するステップとをさらに含む、条項1Fから6Fのいずれか一項に記載の方法。
条項8F. 予測モードを選択するステップが、選択された予測モードを示す値を有するシンタックス要素を復号するステップを含む、条項1Fから7Fのいずれか一項に記載の方法。
条項9F. 点群を符号化する方法であって、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択するステップであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ステップと、選択されたモードがゼロ予測モードである場合に、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定するステップと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測するステップと、予測位置の半径が最小半径値であるものと推測するステップであって、最小半径値は親ノードの半径と異なる、ステップと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定するステップとを含む、方法。
条項10F. デルタ予測モードを選択することに応答して、現在の予測木ノードの予測位置の半径、方位角、およびレーザインデックスを親ノードの半径、方位角、およびレーザインデックスとして推測するステップをさらに含む、条項9Fに記載の方法。
条項11F. 最小半径値がゼロである、条項9Fから10Fのいずれか一項に記載の方法。
条項12F. 最小半径値がゼロより大きい、条項9Fから11Fのいずれか一項に記載の方法。
条項13F. 予測位置に基づいて現在ノードの位置を決定するステップが、現在の予測木ノードの予測位置の半径の値と現在の予測木ノードの位置の半径の値との間の差を表す残差半径値を取得するステップを含む、条項9Fから12Fのいずれか一項に記載の方法。
条項14F. 残差半径値を取得するステップが、選択されたモードがゼロ予測モードである場合に、残差半径値の符号が正であるものと推測するステップを含む、条項13Fに記載の方法。
条項15F. 点群を表す光検出および測距(LIDAR)データをキャプチャするために使用されるレーザの量を決定するステップと、レーザの量が1つであるとの決定に応答して、点群の中のすべてのノードに対するレーザインデックスは同じ値であるものと推測するステップとをさらに含む、条項9Fから14Fのいずれか一項に記載の方法。
条項16F. 予測モードを選択するステップが、選択された予測モードを示す値を有するシンタックス要素を符号化するステップを含む、条項9Fから15Fのいずれか一項に記載の方法。
条項17F. 点群を復号するためのデバイスであって、デバイスは、点群の少なくとも一部を記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサとを含み、1つまたは複数のプロセッサは、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ことと、ゼロ予測モードを選択することに応答して、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定することと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測することと、予測位置の半径が最小半径値であるものと推測することであって、最小半径値は親ノードの半径と異なる、ことと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定することとを行うように構成される、デバイス。
条項18F. 1つまたは複数のプロセッサが、デルタ予測モードを選択することに応答して、現在の予測木ノードの予測位置の半径、方位角、およびレーザインデックスを親ノードの半径、方位角、およびレーザインデックスとして推測するようにさらに構成される、条項17Fに記載のデバイス。
条項19F. 最小半径値がゼロである、条項17Fから18Fのいずれか一項に記載のデバイス。
条項20F. 最小半径値がゼロより大きい、条項17Fから19Fのいずれか一項に記載のデバイス。
条項21F. 予測位置に基づいて現在ノードの位置を決定するために、1つまたは複数のプロセッサが、現在の予測木ノードの予測位置の半径の値と現在の予測木ノードの位置の半径の値との間の差を表す残差半径値を取得するように構成される、条項17Fから20Fのいずれか一項に記載のデバイス。
条項22F. 残差半径値を取得するために、1つまたは複数のプロセッサが、ゼロ予測モードを選択することに応答して、残差半径値の符号が正であるものと推測するように構成される、条項21Fに記載のデバイス。
条項23F. 1つまたは複数のプロセッサが、点群を表す光検出および測距(LIDAR)データをキャプチャするために使用されるレーザの量を決定することと、レーザの量が1つであるとの決定に応答して、点群の中のすべてのノードに対するレーザインデックスは同じ値であるものと推測することとを行うようにさらに構成される、条項17Fから22Fのいずれか一項に記載のデバイス。
条項24F. 予測モードを選択するために、1つまたは複数のプロセッサが、選択された予測モードを示す値を有するシンタックス要素を復号するようにさらに構成される、条項17Fから23Fのいずれか一項に記載のデバイス。
条項25F. 点群を符号化するためのデバイスであって、デバイスは、点群の少なくとも一部を記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサとを含み、1つまたは複数のプロセッサは、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ことと、選択されたモードがゼロ予測モードである場合に、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定することと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測することと、予測位置の半径が最小半径値であるものと推測することであって、最小半径値は親ノードの半径と異なる、ことと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定することとを行うように構成される、デバイス。
条項26F. 1つまたは複数のプロセッサが、デルタ予測モードを選択することに応答して、現在の予測木ノードの予測位置の半径、方位角、およびレーザインデックスを親ノードの半径、方位角、およびレーザインデックスとして推測するようにさらに構成される、条項25Fに記載のデバイス。
条項27F. 最小半径値がゼロである、条項25Fから26Fのいずれか一項に記載のデバイス。
条項28F. 最小半径値がゼロより大きい、条項25Fから27Fのいずれか一項に記載のデバイス。
条項29F. 予測位置に基づいて現在ノードの位置を決定するために、1つまたは複数のプロセッサが、現在の予測木ノードの予測位置の半径の値と現在の予測木ノードの位置の半径の値との間の差を表す残差半径値を取得するように構成される、条項25Fから28Fのいずれか一項に記載のデバイス。
条項30F. 残差半径値を取得するために、1つまたは複数のプロセッサが、ゼロ予測モードを選択することに応答して、残差半径値の符号が正であるものと推測するように構成される、条項29Fに記載のデバイス。
条項31F. 1つまたは複数のプロセッサが、点群を表す光検出および測距(LIDAR)データをキャプチャするために使用されるレーザの量を決定することと、レーザの量が1つであるとの決定に応答して、点群の中のすべてのノードに対するレーザインデックスは同じ値であるものと推測することとを行うようにさらに構成される、条項25Fから30Fのいずれか一項に記載のデバイス。
条項32F. 予測モードを選択するために、1つまたは複数のプロセッサが、選択された予測モードを示す値を有するシンタックス要素を符号化するようにさらに構成される、条項25Fから31Fのいずれか一項に記載のデバイス。
条項33F. 命令を記憶するコンピュータ可読記憶媒体であって、命令は、実行されると、点群復号デバイスの1つまたは複数のプロセッサに、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ことと、ゼロ予測モードを選択することに応答して、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定することと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測することと、予測位置の半径が最小半径値であるものと推測することであって、最小半径値は親ノードの半径と異なる、ことと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定することとを行わせる、コンピュータ可読記憶媒体。
条項34F. 命令を記憶するコンピュータ可読記憶媒体であって、命令は、実行されると、点群符号化デバイスの1つまたは複数のプロセッサに、点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、複数の予測モードは、少なくとも、ゼロ予測モードとデルタ予測モードとを含む、ことと、選択された予測モードがゼロ予測モードである場合に、現在の予測木ノードの親ノードの半径、方位角およびレーザインデックスを決定することと、現在の予測木ノードの予測位置の方位角およびレーザインデックスを親ノードの方位角およびレーザインデックスとして推測することと、予測位置の半径が最小半径値であるものと推測することであって、最小半径値は親ノードの半径と異なる、ことと、現在の予測木ノードの位置を現在の予測木ノードの予測位置に基づいて決定することとを行わせる、コンピュータ可読記憶媒体。
条項1Z. 点群を処理するためのデバイスであって、条項1Aから1Fのいずれか一項に記載の方法を実行するための1つまたは複数の手段を含む、デバイス。
条項2Z. 1つまたは複数の手段が、回路において実装された1つまたは複数のプロセッサを含む、条項1Zに記載のデバイス。
条項3Z. 点群を表すデータを記憶するためのメモリをさらに含む、条項1Zまたは2Zに記載のデバイス。
条項4Z. デバイスはデコーダを含む、条項1Zから3Zのいずれか一項に記載のデバイス。
条項5Z. デバイスはエンコーダを含む、条項1Zから4Zのいずれか一項に記載のデバイス。
条項6Z. 点群を生成するためのデバイスをさらに含む、条項1Zから5Zのいずれか一項に記載のデバイス。
条項7Z. 点群に基づいて画像を提示するためのディスプレイをさらに含む、条項1Zから6Zのいずれか一項に記載のデバイス。
条項8Z. 命令を記憶したコンピュータ可読記憶媒体であって、命令は、実行されると、1つまたは複数のプロセッサに、条項1Aから1Fのいずれか一項に記載の方法を実行させる、コンピュータ可読記憶媒体。
本開示の様々な態様における例は、個々に、または任意の組合せで使用されてよい。
例によっては、本明細書で説明した技法のうちのいずれかのいくつかの行為またはイベントが、異なるシーケンスで実施されてよく、追加され、統合され、または完全に除外されてよい(たとえば、説明したすべての行為またはイベントが技法の実践にとって必要であるとは限らない)ことを認識されたい。その上、いくつかの例では、行為またはイベントは、連続的にではなく、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通して並行して実施されてよい。
1つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せとして実装されてもよい。ソフトウェアにおいて実装される場合、機能は、1つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体を含み得る。このように、コンピュータ可読媒体は一般に、(1)非一時的な有形コンピュータ可読記憶媒体、または(2)信号もしくは搬送波などの通信媒体に対応してもよい。データ記憶媒体は、本開示で説明した技法の実装のための命令、コード、および/またはデータ構造を取り出すために、1つもしくは複数のコンピュータまたは1つもしくは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であってもよい。コンピュータプログラム製品がコンピュータ可読媒体を含んでもよい。
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令もしくはデータ構造の形態の所望のプログラムコードを記憶するために使用でき、コンピュータによってアクセスすることができる任意の他の媒体を備えることができる。また、いかなる接続も適切にコンピュータ可読媒体と呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まず、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は通常、データを磁気的に再生し、ディスク(disc)は、レーザを用いてデータを光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他の同等の集積論理回路もしくはディスクリート論理回路などの、1つまたは複数のプロセッサによって実行されてもよい。したがって、本明細書で使用する「プロセッサ」および「処理回路構成」という用語は、上記の構造、または本明細書で説明する技法の実装に適した任意の他の構造のいずれかを指すことがある。加えて、いくつかの態様では、本明細書で説明する機能性は、符号化および復号のために構成された専用のハードウェアモジュールおよび/もしくはソフトウェアモジュール内で提供されてよく、または複合コーデックに組み込まれてよい。また、技法は、1つまたは複数の回路または論理要素において完全に実装され得る。
本開示の技法は、ワイヤレスハンドセット、集積回路(IC)、またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置に実装されてもよい。開示される技法を実施するように構成されたデバイスの機能的態様を強調するために、様々な構成要素、モジュール、またはユニットについて本開示において説明したが、それらは必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明したように、様々なユニットは、コーデックハードウェアユニットにおいて組み合わされてよく、または適切なソフトウェアおよび/もしくはファームウェアとともに、上で説明したような1つまたは複数のプロセッサを含む、相互動作可能なハードウェアユニットの集合によって提供されてよい。
様々な例について説明してきた。これらおよび他の例は、以下の特許請求の範囲内に入る。
100 符号化および復号システム
102 ソースデバイス
104 データソース
106 メモリ
108 出力インターフェース
110 コンピュータ可読媒体
112 記憶デバイス
114 ファイルサーバ
116 宛先デバイス
118 データコンシューマ
120 メモリ
122 入力インターフェース
200 ジオメトリ点群圧縮(G-PCC)エンコーダ
201 例
202 座標変換ユニット
203 例
204 色変換ユニット
206 ボクセル化ユニット
208 属性転送ユニット
210 8分木分析ユニット
212 表面近似分析ユニット
214 算術符号化ユニット
216 ジオメトリ再構築ユニット(GRU)
218 RAHTユニット
220 LOD生成ユニット
222 リフティングユニット
224 係数量子化ユニット
226 算術符号化ユニット
300 G-PCCデコーダ
302 ジオメトリ算術復号ユニット
304 属性算術復号ユニット
306 8分木合成ユニット
308 逆量子化ユニット
310 表面近似合成ユニット
312 ジオメトリ再構築ユニット
314 RAHTユニット
316 LoD生成ユニット
318 逆リフティングユニット
320 逆座標変換ユニット
322 逆色変換ユニット
600 距離測定システム
602 照明器
604 センサ
606 光
608 オブジェクト
610 戻り光
611 レンズ
612 画像
614 信号
616 点群生成器
700 車両
702 距離測定システム
704 レーザビーム
706 歩行者
708 ビットストリーム
710 車両
712 サーバシステム
800 ユーザ
802 第1のロケーション
804 エクステンデッドリアリティ(XR)ヘッドセット
806 オブジェクト
808 ビットストリーム
810 XRヘッドセット
812 ユーザ
814 第2のロケーション
900 モバイルデバイス
902 オブジェクト
904 ビットストリーム
906 リモートデバイス
1180 シンタックス要素
1200 バイナライザ
1220 コンテキストモデラ
1240 普通符号化エンジン
1260 バイパス符号化エンジン
2180 ビットストリーム
2200 コンテキストモデラ
2220 バイパス復号エンジン
2240 普通復号エンジン
2300 逆バイナライザ

Claims (15)

  1. 点群を復号する方法であって、
    前記点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択するステップであって、前記複数の所定の予測モードは、少なくともゼロ予測モードとデルタ予測モードとを含む、ステップと、
    前記現在の予測木ノードの親ノードの半径、前記現在の予測木ノードの前記親ノードの方位角、および前記現在の予測木ノードの前記親ノードのレーザインデックスを決定するステップと、
    前記ゼロ予測モードを選択することに応答して
    記現在の予測木ノードの予測位置の方位角およびレーザインデックスを前記親ノードの前記方位角および前記レーザインデックスとして推測するステップと、
    前記予測位置の半径が最小半径値であるものと推測するステップであって、前記最小半径値は前記親ノードの前記半径と異なる、ステップと、
    前記現在の予測木ノードの前記予測位置に基づいて、前記現在の予測木ノードの前記位置を決定するステップと
    を含む、方法。
  2. 前記デルタ予測モードを選択することに応答して、
    前記現在の予測木ノードの前記予測位置の前記半径、前記方位角および前記レーザインデックスを前記親ノードの前記半径、前記方位角および前記レーザインデックスとして推測するステップをさらに含む、請求項1に記載の方法。
  3. 前記最小半径値がゼロである、請求項1に記載の方法。
  4. 前記最小半径値がゼロより大きい、請求項1に記載の方法。
  5. 前記予測位置に基づいて前記現在の予測木ノードの前記位置を決定するステップが、
    前記現在の予測木ノードの前記予測位置の前記半径の値と、前記現在の予測木ノードの前記位置の前記半径の値との間の差を表す残差半径値を取得するステップを含む、請求項1に記載の方法。
  6. 前記残差半径値を取得するステップが、
    前記ゼロ予測モードを選択することに応答して、前記残差半径値の符号が正であるものと推測するステップを含む、請求項5に記載の方法。
  7. 点群を符号化する方法であって、
    前記点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択するステップであって、前記複数の所定の予測モードは、少なくともゼロ予測モードとデルタ予測モードとを含む、ステップと、
    前記現在の予測木ノードの親ノードの半径、前記現在の予測木ノードの前記親ノードの方位角、および前記現在の予測木ノードの前記親ノードのレーザインデックスを決定するステップと、
    前記選択されたモードがゼロ予測モードである場合に
    記現在の予測木ノードの予測位置の方位角およびレーザインデックスを前記親ノードの前記方位角および前記レーザインデックスとして推測するステップと、
    前記予測位置の半径が最小半径値であるものと推測するステップであって、前記最小半径値は前記親ノードの前記半径と異なる、ステップと、
    前記現在の予測木ノードの前記予測位置に基づいて、前記現在の予測木ノードの前記位置を決定するステップと
    を含む、方法。
  8. 前記デルタ予測モードを選択することに応答して、
    前記現在の予測木ノードの前記予測位置の前記半径、前記方位角および前記レーザインデックスを前記親ノードの前記半径、前記方位角および前記レーザインデックスとして推測するステップをさらに含む、請求項7に記載の方法。
  9. 前記最小半径値がゼロである、請求項7に記載の方法。
  10. 前記最小半径値がゼロより大きい、請求項7に記載の方法。
  11. 前記予測位置に基づいて前記現在の予測木ノードの前記位置を決定するステップが、
    前記現在の予測木ノードの前記予測位置の前記半径の値と、前記現在の予測木ノードの前記位置の前記半径の値との間の差を表す残差半径値を取得するステップを含む、請求項7に記載の方法。
  12. 点群を復号するためのデバイスであって、
    前記点群の少なくとも一部を記憶するように構成されたメモリと、
    回路の中に実装された1つまたは複数のプロセッサと
    を含み、前記1つまたは複数のプロセッサは、
    前記点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、前記複数の所定の予測モードは、少なくともゼロ予測モードとデルタ予測モードとを含む、選択することと、
    前記現在の予測木ノードの親ノードの半径、前記現在の予測木ノードの前記親ノードの方位角、および前記現在の予測木ノードの前記親ノードのレーザインデックスを決定することと、
    前記ゼロ予測モードを選択することに応答して
    記現在の予測木ノードの予測位置の方位角およびレーザインデックスを前記親ノードの前記方位角および前記レーザインデックスとして推測することと、
    前記予測位置の半径が最小半径値であるものと推測することであって、前記最小半径値は前記親ノードの前記半径と異なる、推測することと、
    前記現在の予測木ノードの前記予測位置に基づいて、前記現在の予測木ノードの前記位置を決定することと
    を行うように構成される、デバイス。
  13. 点群を符号化するためのデバイスであって、
    前記点群の少なくとも一部を記憶するように構成されたメモリと、
    回路の中に実装された1つまたは複数のプロセッサと
    を含み、前記1つまたは複数のプロセッサは、
    前記点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、前記複数の所定の予測モードは、少なくともゼロ予測モードとデルタ予測モードとを含む、選択することと、
    前記現在の予測木ノードの親ノードの半径、前記現在の予測木ノードの前記親ノードの方位角、および前記現在の予測木ノードの前記親ノードのレーザインデックスを決定することと、
    前記選択されたモードが前記ゼロ予測モードである場合に
    記現在の予測木ノードの予測位置の方位角およびレーザインデックスを前記親ノードの前記方位角および前記レーザインデックスとして推測することと、
    前記予測位置の半径が最小半径値であるものと推測することであって、前記最小半径値は前記親ノードの前記半径と異なる、推測することと、
    前記現在の予測木ノードの前記予測位置に基づいて、前記現在の予測木ノードの前記位置を決定することと
    を行うように構成される、デバイス。
  14. 命令を記憶したコンピュータ可読記憶媒体であって、前記命令は、実行されると、点群復号デバイスの1つまたは複数のプロセッサに、
    点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、前記複数の所定の予測モードは、少なくともゼロ予測モードとデルタ予測モードとを含む、選択することと、
    前記現在の予測木ノードの親ノードの半径、前記現在の予測木ノードの前記親ノードの方位角、および前記現在の予測木ノードの前記親ノードのレーザインデックスを決定することと、
    前記ゼロ予測モードを選択することに応答して
    記現在の予測木ノードの予測位置の方位角およびレーザインデックスを前記親ノードの前記方位角および前記レーザインデックスとして推測することと、
    前記予測位置の半径が最小半径値であるものと推測することであって、前記最小半径値は前記親ノードの前記半径と異なる、推測することと、
    前記現在の予測木ノードの前記予測位置に基づいて、前記現在の予測木ノードの前記位置を決定することと
    を行わせる、コンピュータ可読記憶媒体。
  15. 命令を記憶したコンピュータ可読記憶媒体であって、前記命令は、実行されると、点群符号化デバイスの1つまたは複数のプロセッサに、
    点群の現在の予測木ノードの位置の予測ジオメトリコーディングを実行するための予測モードを、複数の所定の予測モードから選択することであって、前記複数の所定の予測モードは、少なくともゼロ予測モードとデルタ予測モードとを含む、選択することと、
    前記現在の予測木ノードの親ノードの半径、前記現在の予測木ノードの前記親ノードの方位角、および前記現在の予測木ノードの前記親ノードのレーザインデックスを決定することと、
    前記選択された予測モードがゼロ予測モードである場合に
    記現在の予測木ノードの予測位置の方位角およびレーザインデックスを前記親ノードの前記方位角および前記レーザインデックスとして推測することと、
    前記予測位置の半径が最小半径値であるものと推測することであって、前記最小半径値は前記親ノードの前記半径と異なる、推測することと、
    前記現在の予測木ノードの前記予測位置に基づいて、前記現在の予測木ノードの前記位置を決定することと
    を行わせる、コンピュータ可読記憶媒体。
JP2023520501A 2020-10-07 2021-09-28 G-pccにおける予測ジオメトリコーディング Active JP7750944B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US202063088831P 2020-10-07 2020-10-07
US63/088,831 2020-10-07
US202063114317P 2020-11-16 2020-11-16
US63/114,317 2020-11-16
US17/449,013 US11935270B2 (en) 2020-10-07 2021-09-27 Predictive geometry coding in G-PCC
US17/449,013 2021-09-27
PCT/US2021/052357 WO2022076197A1 (en) 2020-10-07 2021-09-28 Predictive geometry coding in g-pcc

Publications (3)

Publication Number Publication Date
JP2023545699A JP2023545699A (ja) 2023-10-31
JP2023545699A5 JP2023545699A5 (ja) 2024-09-20
JP7750944B2 true JP7750944B2 (ja) 2025-10-07

Family

ID=80931561

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2023520501A Active JP7750944B2 (ja) 2020-10-07 2021-09-28 G-pccにおける予測ジオメトリコーディング
JP2023520504A Active JP7850144B2 (ja) 2020-10-07 2021-09-28 G-pccにおける予測ジオメトリコーディング

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023520504A Active JP7850144B2 (ja) 2020-10-07 2021-09-28 G-pccにおける予測ジオメトリコーディング

Country Status (7)

Country Link
US (2) US11875541B2 (ja)
EP (2) EP4226628B1 (ja)
JP (2) JP7750944B2 (ja)
KR (2) KR20230081705A (ja)
CN (2) CN116325756B (ja)
BR (2) BR112023005746A2 (ja)
WO (2) WO2022076198A1 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022025278A1 (ja) * 2020-07-31 2022-02-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US12033360B2 (en) * 2020-10-05 2024-07-09 Qualcomm Incorporated Clipping laser indices in predictive geometry coding for point cloud compression
US11875541B2 (en) * 2020-10-07 2024-01-16 Qualcomm Incorporated Predictive geometry coding in G-PCC
EP4020396B1 (en) * 2020-12-23 2026-03-04 Beijing Xiaomi Mobile Software Co., Ltd. Method and apparatus of entropy encoding/decoding point cloud geometry data captured by a spinning sensors head
EP4304180A4 (en) * 2021-03-05 2025-04-02 LG Electronics Inc. POINT CLOUD DATA TRANSMISSION DEVICE, POINT CLOUD DATA TRANSMISSION METHOD, POINT CLOUD DATA RECEIVING DEVICE, AND POINT CLOUD DATA RECEIVING METHOD
EP4072145B1 (en) * 2021-04-09 2026-04-08 Beijing Xiaomi Mobile Software Co., Ltd. Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head
CN115412713B (zh) 2021-05-26 2024-06-25 荣耀终端有限公司 一种点云深度信息的预测编解码方法及装置
US20250267272A1 (en) * 2022-04-24 2025-08-21 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
CN119343920A (zh) * 2022-06-13 2025-01-21 Oppo广东移动通信有限公司 几何点云编码系统和方法
CN121837399A (zh) * 2022-06-18 2026-04-10 腾讯科技(深圳)有限公司 点云处理方法、装置及计算机设备、存储介质
WO2024011381A1 (zh) * 2022-07-11 2024-01-18 上海交通大学 点云编解码方法、装置、设备及存储介质
CN115379190B (zh) * 2022-08-19 2024-04-26 腾讯科技(深圳)有限公司 一种点云处理方法、装置及计算机设备、存储介质
KR20250060185A (ko) * 2022-08-30 2025-05-07 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
CN119365894A (zh) * 2022-09-29 2025-01-24 Oppo广东移动通信有限公司 编解码方法、码流、编码器、解码器以及存储介质
GB2623372B (en) * 2022-10-14 2024-11-13 Canon Kk Method and apparatus for compression and encoding of 3D dynamic point cloud
US12430809B2 (en) * 2022-10-17 2025-09-30 Qualcomm Incorporated Predictive geometry coding of point cloud
WO2024119419A1 (zh) * 2022-12-07 2024-06-13 Oppo广东移动通信有限公司 编解码方法、码流、编码器、解码器以及存储介质
GB2626029A (en) * 2023-01-06 2024-07-10 Canon Kk Enhanced method for point cloud compression
CN118338006B (zh) * 2023-01-11 2026-02-24 维沃移动通信有限公司 变换系数编码方法、变换系数解码方法及终端
WO2024207244A1 (zh) * 2023-04-04 2024-10-10 Oppo广东移动通信有限公司 点云的编解码方法、码流、编码器、解码器以及存储介质
WO2024212043A1 (zh) * 2023-04-10 2024-10-17 Oppo广东移动通信有限公司 编解码方法、码流、编码器、解码器以及存储介质
JP2024152166A (ja) * 2023-04-14 2024-10-25 Kddi株式会社 点群復号装置、点群復号方法及びプログラム
JP2024162356A (ja) * 2023-05-10 2024-11-21 キヤノン株式会社 符号化装置、復号化装置、及びコンピュータプログラム
CN121444455A (zh) * 2023-05-12 2026-01-30 Oppo广东移动通信有限公司 点云编解码方法、解码器、编码器及计算机可读存储介质
WO2025063408A1 (ko) * 2023-09-19 2025-03-27 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
WO2025076663A1 (zh) * 2023-10-09 2025-04-17 Oppo广东移动通信有限公司 编解码方法、编解码器以及存储介质
US20250310575A1 (en) * 2024-04-01 2025-10-02 Samsung Electronics Co., Ltd. Basemesh entropy coding improvements in video-based dynamic mesh coding (v-dmc)
WO2025249868A1 (ko) * 2024-05-31 2025-12-04 엘지전자 주식회사 포인트 클라우드 데이터 부호화 장치, 포인트 클라우드 데이터 부호화 방법, 포인트 클라우드 데이터 복호화 장치 및 포인트 클라우드 데이터 복호화 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020075862A1 (ja) 2018-10-12 2020-04-16 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US20200302237A1 (en) 2019-03-22 2020-09-24 Pablo Horacio Hennings Yeomans System and method for ordered representation and feature extraction for point clouds obtained by detection and ranging sensor
US20200394822A1 (en) 2019-06-11 2020-12-17 Tencent America LLC Method and apparatus for point cloud compression
WO2021084295A1 (en) 2019-10-31 2021-05-06 Blackberry Limited Angular priors for improved prediction in tree-based point cloud coding
WO2021095879A1 (ja) 2019-11-13 2021-05-20 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2021207502A1 (en) 2020-04-08 2021-10-14 Qualcomm Incorporated Coding of laser angles for angular and azimuthal modes in geometry-based point cloud compression

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9088796B2 (en) * 2011-11-07 2015-07-21 Sharp Kabushiki Kaisha Video decoder with enhanced CABAC decoding
EP3301921A1 (en) * 2016-09-30 2018-04-04 Thomson Licensing Method and apparatus for calculating quantization parameters to encode and decode an immersive video
US10805646B2 (en) * 2018-06-22 2020-10-13 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
EP4213096B1 (en) * 2018-01-18 2026-04-22 Malikie Innovations Limited Methods and devices for entropy coding point clouds
US10939129B2 (en) * 2018-04-10 2021-03-02 Apple Inc. Point cloud compression
BR112021004798A2 (pt) * 2018-09-14 2021-06-08 Huawei Technologies Co., Ltd. suporte de atributo melhorado em codificação de nuvem de pontos
WO2020123469A1 (en) * 2018-12-11 2020-06-18 Futurewei Technologies, Inc. Hierarchical tree attribute coding by median points in point cloud coding
MX2021006569A (es) * 2018-12-21 2021-07-07 Panasonic Ip Corp America Metodo de codificacion de datos tridimensionales, metodo de decodificacion de datos tridimensionales, dispositivo codificador de datos tridimensionales y dispositivo decodificador de datos tridimensionales.
EP3926962A4 (en) * 2019-03-16 2022-04-20 LG Electronics Inc. DEVICE AND METHOD FOR PROCESSING POINT CLOUD DATA
EP3713237A1 (en) * 2019-03-20 2020-09-23 InterDigital VC Holdings, Inc. A method and apparatus for depth encoding and decoding
CN111699697B (zh) * 2019-06-14 2023-07-11 深圳市大疆创新科技有限公司 一种用于点云处理、解码的方法、设备及存储介质
JP7480791B2 (ja) * 2019-06-27 2024-05-10 ホアウェイ・テクノロジーズ・カンパニー・リミテッド V-pcc用の仮想参照デコーダ
EP3800892B1 (en) * 2019-10-01 2025-03-05 BlackBerry Limited Angular mode syntax for tree-based point cloud coding
WO2021062447A2 (en) * 2020-01-06 2021-04-01 Futurewei Technologies, Inc. Signaling camera parameters in point cloud coding
KR102659806B1 (ko) * 2020-01-14 2024-04-22 후아웨이 테크놀러지 컴퍼니 리미티드 V-pcc용 스케일링 파라미터
US11580672B2 (en) 2020-04-08 2023-02-14 Qualcomm Incorporated Angular mode simplification for geometry-based point cloud compression
US12033360B2 (en) * 2020-10-05 2024-07-09 Qualcomm Incorporated Clipping laser indices in predictive geometry coding for point cloud compression
US11875541B2 (en) 2020-10-07 2024-01-16 Qualcomm Incorporated Predictive geometry coding in G-PCC
CN120835159A (zh) 2021-02-08 2025-10-24 荣耀终端股份有限公司 点云数据的预处理方法及点云几何编解码方法、装置
EP4072145B1 (en) 2021-04-09 2026-04-08 Beijing Xiaomi Mobile Software Co., Ltd. Method and apparatus of encoding/decoding point cloud geometry data captured by a spinning sensors head
US12518428B2 (en) * 2021-10-04 2026-01-06 Qualcomm Incorporated Inter prediction coding with radius interpolation for predictive geometry-based point cloud compression

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020075862A1 (ja) 2018-10-12 2020-04-16 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US20200302237A1 (en) 2019-03-22 2020-09-24 Pablo Horacio Hennings Yeomans System and method for ordered representation and feature extraction for point clouds obtained by detection and ranging sensor
US20200394822A1 (en) 2019-06-11 2020-12-17 Tencent America LLC Method and apparatus for point cloud compression
WO2021084295A1 (en) 2019-10-31 2021-05-06 Blackberry Limited Angular priors for improved prediction in tree-based point cloud coding
WO2021095879A1 (ja) 2019-11-13 2021-05-20 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2021207502A1 (en) 2020-04-08 2021-10-14 Qualcomm Incorporated Coding of laser angles for angular and azimuthal modes in geometry-based point cloud compression

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
G-PCC codec description v7,N19331,ISO/IEC JTC1/SC29/WG11,2020年06月,pp.1-5,50-52
G-PCC codec description v8,N19525,ISO/IEC JTC 1/SC 29/WG 11,2020年10月,pp.1-6,52-58

Also Published As

Publication number Publication date
KR20230081705A (ko) 2023-06-07
US11875541B2 (en) 2024-01-16
JP2023545699A (ja) 2023-10-31
US20220108484A1 (en) 2022-04-07
EP4226627A1 (en) 2023-08-16
JP2023545700A (ja) 2023-10-31
CN116325756B (zh) 2026-03-10
JP7850144B2 (ja) 2026-04-22
TW202222075A (zh) 2022-06-01
BR112023005737A2 (pt) 2023-05-02
CN116325749A (zh) 2023-06-23
TW202220442A (zh) 2022-05-16
CN116325756A (zh) 2023-06-23
EP4226627C0 (en) 2025-08-27
WO2022076197A1 (en) 2022-04-14
WO2022076198A1 (en) 2022-04-14
US11935270B2 (en) 2024-03-19
EP4226628B1 (en) 2025-08-20
EP4226628A1 (en) 2023-08-16
EP4226627B1 (en) 2025-08-27
BR112023005746A2 (pt) 2023-05-02
CN116325749B (zh) 2025-09-05
KR20230081704A (ko) 2023-06-07
EP4226628C0 (en) 2025-08-20
US20220108491A1 (en) 2022-04-07

Similar Documents

Publication Publication Date Title
JP7750944B2 (ja) G-pccにおける予測ジオメトリコーディング
EP4162693B1 (en) Attribute residual coding in g-pcc
JP2023520855A (ja) ジオメトリベースのポイントクラウド圧縮における角度モードおよび方位角モードについてのレーザー角度のコーディング
JP7798872B2 (ja) ジオメトリ点群圧縮(g-pcc)におけるレーザー回転のための高レベルシンタックス
US12003768B2 (en) Residual coding for geometry point cloud compression
JP7757397B2 (ja) ポイントクラウド圧縮のために予測ジオメトリコーディングにおいてレーザーインデックスをクリッピングすること
US11869220B2 (en) Scaling of quantization parameter values in geometry-based point cloud compression (G-PCC)
US12328448B2 (en) Residual coding for geometry point cloud compression
EP4172943A1 (en) Scale factor for quantization parameter values in geometry-based point cloud compression
TWI916412B (zh) G-pcc中的預測性幾何寫碼
TWI914417B (zh) G-pcc中的預測性幾何寫碼
US12526422B2 (en) Entropy continuation and dependent frame entropy coding in point cloud compression
KR20250167632A (ko) 포인트 클라우드 압축을 위한 예측 지오메트리 코딩
WO2024226507A1 (en) Entropy continuation and dependent frame entropy coding in point cloud compression

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240911

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250820

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: 20250826

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250925

R150 Certificate of patent or registration of utility model

Ref document number: 7750944

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150