(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-21
(54)【発明の名称】点群の符号化方法、復号化方法、エンコーダ及びデコーダ
(51)【国際特許分類】
G06T 9/40 20060101AFI20231214BHJP
H04N 19/597 20140101ALI20231214BHJP
【FI】
G06T9/40
H04N19/597
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023538020
(86)(22)【出願日】2020-12-22
(85)【翻訳文提出日】2023-06-27
(86)【国際出願番号】 CN2020138421
(87)【国際公開番号】W WO2022133752
(87)【国際公開日】2022-06-30
(81)【指定国・地域】
(71)【出願人】
【識別番号】516227559
【氏名又は名称】オッポ広東移動通信有限公司
【氏名又は名称原語表記】GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
【住所又は居所原語表記】No. 18 Haibin Road,Wusha, Chang’an,Dongguan, Guangdong 523860 China
(74)【代理人】
【識別番号】100120031
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100152205
【氏名又は名称】吉田 昌司
(74)【代理人】
【識別番号】100137523
【氏名又は名称】出口 智也
(74)【代理人】
【識別番号】100220630
【氏名又は名称】河崎 亮
(72)【発明者】
【氏名】ユアン、ホイ
(72)【発明者】
【氏名】ワン、シアオホイ
(72)【発明者】
【氏名】ワン、ルー
(72)【発明者】
【氏名】リウ、チー
(72)【発明者】
【氏名】リー、ミン
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159PP03
(57)【要約】
本願の実施例は、点群の符号化方法、復号化方法、エンコーダ及びデコーダを提供する。前記符号化方法は、点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得ることと、前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得ることであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、ことと、前記量子化残差値を符号化して、コードストリームを得ることと、を含む。本願によって提供される技術方案では、目標点の量子化重みを導入することにより、前記目標点の量子化重みに基づいて前記目標点の量子化ステップ長を補正し、その予測精度を向上させることができる。
【特許請求の範囲】
【請求項1】
点群の符号化方法であって、
点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得ることと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得ることであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、ことと、
前記量子化残差値を符号化して、コードストリームを得ることと、を含む、点群の符号化方法。
【請求項2】
前記点群の符号化方法は、
前記目標点のインデックスを決定することと、
前記目標点のインデックスに対応する量子化重みを、前記目標点の量子化重みとして決定することと、をさらに含む、
請求項1に記載の点群の符号化方法。
【請求項3】
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得ることは、
目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することと、
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記予測残差値を量子化して、前記量子化残差値を得ることと、を含む、
請求項1に記載の点群の符号化方法。
【請求項4】
前記有効量子化重みは、前記目標点の量子化ステップ長以下である、
請求項3に記載の点群の符号化方法。
【請求項5】
前記目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することは、
effectiveQuantWeight=min(QuantWeight[index])k,Qstep)という式を利用して前記目標点の有効量子化重みを決定することを含み、
effectiveQuantWeightは、前記目標点の有効量子化重みを表し、QuantWeight[index]は、前記目標点の量子化重みを表し、kは、前記QuantWeight[index]に対する右シフト演算のビット数を表し、Qstepは、前記目標点の量子化ステップ長を表す、
請求項3に記載の点群の符号化方法。
【請求項6】
前記有効量子化重みの値は、2の冪に等しい、
請求項3に記載の点群の符号化方法。
【請求項7】
前記有効量子化重みの値は、2の冪に等しくなく、目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することは、
前記目標点の量子化重みの値に基づいて、前記目標点の量子化重みに最も近い2の冪を、前記有効量子化重みとして決定することを含む、
請求項3に記載の点群の符号化方法。
【請求項8】
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記予測残差値を量子化して、前記量子化残差値を得ることは、
前記有効量子化重みに前記予測残差値を乗算して、重み付け残差値を得ることと、
前記目標点の量子化ステップ長を利用して前記重み付け残差値を量子化して、前記量子化残差値を得ることと、を含む、
請求項3に記載の点群の符号化方法。
【請求項9】
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記予測残差値を量子化して、前記量子化残差値を得ることは、
attrResidualQuant2=attrResidualQuant1×effectiveQuantWeight/Qstepという式を利用して前記予測残差値を量子化して、前記量子化残差値を得ることを含み、
attrResidualQuant2は、前記量子化残差値を表し、attrResidualQuant1は、前記予測残差値を表し、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、Qstepは、前記目標点の量子化ステップ長を表す、
請求項3に記載の点群の符号化方法。
【請求項10】
【請求項11】
前記点群の符号化方法は、
前記点群の符号化順序の逆順に従って前記点群内の点をトラバースすることにより、現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新することをさらに含み、Nは、0より大きい整数である、
請求項1に記載の点群の符号化方法。
【請求項12】
前記点群内の各点の量子化重みの初期値は、所定値である、
請求項11に記載の点群の符号化方法。
【請求項13】
前記点群の符号化方法は、
前記点群を1つ又は複数のLODに分割することと、をさらに含み、各LODは、1つ又は複数の点を含み、
前記複数のLODのうちの先頭のM個のLOD内の点の量子化重みの初期値は、前記複数のLODのうちの残りのLOD内の点の量子化重みの初期値より大きい、
請求項11に記載の点群の符号化方法。
【請求項14】
前記現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新することは、
前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得することであって、前記影響重みは、前記現在点と前記N個の最近傍点の位置情報に依存する、ことと、
前記現在点の量子化重み及び前記N個の最近傍点のそれぞれに対する前記現在点の影響重みに基づいて、前記N個の最近傍点の量子化重みを更新することと、を含む、
請求項11に記載の点群の符号化方法。
【請求項15】
前記点群の属性パラメータセットは、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを含み、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得することは、
前記属性パラメータセットを照会することにより、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得することを含む、
請求項14に記載の点群の符号化方法。
【請求項16】
前記現在点の量子化重み及び前記N個の最近傍点のそれぞれに対する前記現在点の影響重みに基づいて、前記N個の最近傍点の量子化重みを更新することは、
newneighborQuantWeight[i]=neighborQuantWeight[i]+(T[i]*QuantWeight[index-c])≫k下記式に基づいて前記N個の最近傍点の量子化重みを更新することを含み、
newneighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新されたi番目の最近傍点の量子化重みを表し、前記neighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新される前の前記i番目の最近傍点の量子化重みを表し、QuantWeight[index-c]は、前記現在点の量子化重みを表し、T[i]は、前記i番目の最近傍点に対する前記現在点の影響重みを表し、kは、T[i]*QuantWeight[index-c]に対する右シフト演算のビット数を表す、
請求項11に記載の点群の符号化方法。
【請求項17】
T[i]の値は、iが大きくなるにつれて小さくなる、
請求項14に記載の点群の符号化方法。
【請求項18】
前記点群の量子化重みは、配列として記憶され、前記配列の次元は、前記点群内の点の数と同じである、
請求項1に記載の点群の符号化方法。
【請求項19】
前記点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得ることは、
前記目標点の位置情報を処理して、前記目標点の位置情報の再構築情報を得ることと、
前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得ることと、
点群内の前記目標点の属性情報を処理して、前記目標点の属性情報の実値を得ることと、
前記目標点の属性情報の予測値及び前記目標点の属性情報の実値に基づいて、前記予測残差値を得ることと、を含む、
請求項1に記載の点群の符号化方法。
【請求項20】
点群の復号化方法であって、
点群のコードストリームを解析して、前記点群の目標点の属性情報の量子化残差値を得ることと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得ることであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、ことと、
前記再構築残差値及び前記目標点の属性情報の予測値に基づいて、前記目標点の属性情報の再構築値を得ることと、
前記目標点の属性情報の再構築値に基づいて、復号化された点群を得ることと、を含む、点群の復号化方法。
【請求項21】
前記点群の復号化方法は、
前記目標点のインデックスを決定することと、
前記目標点のインデックスに対応する量子化重みを、前記目標点の量子化重みとして決定することと、をさらに含む、
請求項20に記載の点群の復号化方法。
【請求項22】
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得ることは、
前記目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することと、
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることと、を含む、
請求項20に記載の点群の復号化方法。
【請求項23】
前記有効量子化重みは、前記目標点の量子化ステップ長以下である、
請求項22に記載の点群の復号化方法。
【請求項24】
前記目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することは、
effectiveQuantWeight=min(QuantWeight[index])≫k,Qstep)という式を利用して前記目標点の有効量子化重みを決定することを含み、
effectiveQuantWeightは、前記目標点の有効量子化重みを表し、QuantWeight[index]は、前記目標点の量子化重みを表し、kは、前記QuantWeight[index]に対する右シフト演算のビット数を表し、Qstepは、前記目標点の量子化ステップ長を表す、
請求項22に記載の点群の復号化方法。
【請求項25】
前記有効量子化重みの値は、2の冪に等しい、
請求項22に記載の点群の復号化方法。
【請求項26】
前記有効量子化重みの値は、2の冪に等しくなく、目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することは、
前記目標点の量子化重みの値に基づいて、前記目標点の量子化重みに最も近い2の冪を、前記有効量子化重みとして決定することを含む、
請求項22に記載の点群の復号化方法。
【請求項27】
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることは、
前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、重み付け残差値を得ることと、
前記重み付け残差値を前記有効量子化重みで除算して、前記再構築残差値を得ることと、を含む、
請求項22に記載の点群の復号化方法。
【請求項28】
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることは、
attrResidualQuant1=(attrResidualQuant2×Qstep)/effectiveQuantWeightという式を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることを含み、
attrResidualQuant2は、前記量子化残差値を表し、attrResidualQuant1は、前記再構築残差値を表し、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、Qstepは、前記目標点の量子化ステップ長を表す、
請求項22に記載の点群の復号化方法。
【請求項29】
【請求項30】
前記点群の復号化方法は、
前記点群の符号化順序の逆順に従って前記点群内の点をトラバースすることにより、現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新することをさらに含み、Nは、0より大きい整数である、
請求項22に記載の点群の復号化方法。
【請求項31】
前記点群内の各点の量子化重みの初期値は、所定値である、
請求項30に記載の点群の復号化方法。
【請求項32】
前記点群の復号化方法は、
前記点群を1つ又は複数のLODに分割することと、をさらに含み、各LODは、1つ又は複数の点を含み、
前記複数のLODのうちの先頭のM個のLOD内の点の量子化重みの初期値は、前記複数のLODのうちの残りのLOD内の点の量子化重みの初期値より大きい、
請求項30に記載の点群の復号化方法。
【請求項33】
前記現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新することは、
前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得することであって、前記影響重みは、前記現在点と前記N個の最近傍点の位置情報に依存する、ことと、
前記現在点の量子化重み及び前記N個の最近傍点のそれぞれに対する前記現在点の影響重みに基づいて、前記N個の最近傍点の量子化重みを更新することと、を含む、
請求項30に記載の点群の復号化方法。
【請求項34】
前記点群の属性パラメータセットは、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを含み、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得することは、
前記属性パラメータセットを照会することにより、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得することを含む、
請求項33に記載の点群の復号化方法。
【請求項35】
前記現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新することは、
newneighborQuantWeight[i]=neighborQuantWeight[i]+(T[i]*QuantWeight[index-c])≫kという式に基づいて前記N個の最近傍点の量子化重みを更新することを含み、
newneighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新されたi番目の最近傍点の量子化重みを表し、前記neighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新される前の前記i番目の最近傍点の量子化重みを表し、QuantWeight[index-c]は、前記現在点の量子化重みを表し、T[i]は、前記i番目の最近傍点に対する前記現在点の影響重みを表し、kは、T[i]*QuantWeight[index-c]に対する右シフト演算のビット数を表す、
請求項30に記載の点群の復号化方法。
【請求項36】
T[i]の値は、iが大きくなるにつれて小さくなる、
請求項35に記載の点群の復号化方法。
【請求項37】
前記点群の量子化重みは、配列として記憶され、前記配列の次元は、前記点群内の点の数と同じである、
請求項20に記載の点群の復号化方法。
【請求項38】
前記点群の復号化方法は、
前記コードストリームを解析して、前記目標点の位置情報の再構築情報を得ることと、
前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得ることと、をさらに含む、
請求項20に記載の点群の復号化方法。
【請求項39】
点群のエンコーダであって、
点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得るように構成される第1処理ユニットと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を量子化して、前記目標点の属性情報の量子化残差値を得るように構成される第2処理ユニットであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、第2処理ユニットと、
前記量子化残差値を符号化して、コードストリームを得るように構成される符号化ユニットと、を備える、点群のエンコーダ。
【請求項40】
点群のデコーダであって、
点群のコードストリームを解析して、前記点群の目標点の属性情報の量子化残差値を得るように構成される解析ユニットと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得るように構成される第1処理ユニットであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、第1処理ユニットと、
前記再構築残差値及び前記目標点の属性情報の予測値に基づいて、前記目標点の属性情報の再構築値を得るように構成される第2処理ユニットと、
前記目標点の属性情報の再構築値に基づいて、復号化された点群を得るように構成される第3処理ユニットと、を備える、点群のデコーダ。
【請求項41】
コンピュータプログラムを実行するプロセッサと、
実行されるときに前記プロセッサに、請求項1~19のいずれか一項に記載の点群の復号化方法、又は請求項20~38のいずれか一項に記載の点群の復号化方法を実行させるコンピュータプログラムが記憶されたコンピュータ可読記憶媒体と、を備える、電子機器。
【請求項42】
プロセッサによってロードされ、請求項1~19のいずれか一項に記載の点群の復号化方法、又は請求項20~38のいずれか一項に記載の点群の復号化方法を実行するコンピュータ命令を含む、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願の実施例は、点群コーデックの技術分野に関し、より具体的には、点群の符号化方法、復号化方法、エンコーダ及びデコーダに関する。
【背景技術】
【0002】
点群は、仮想/拡張現実、ロボット、地理情報システム、医療分野など、様々な分野に普及し始めている。スキャニング機器の基準度と速度が増加し続けるにつれて、物体表面の大量の点群を正確に取得することができ、1つのシーンで数十万個の点に対応することができる。このような膨大な数の点は、コンピュータの保存と伝送にも課題をもたらす。したがって、点の圧縮も重要な課題となっている。
【0003】
点群の圧縮について、主に位置情報と色情報を圧縮する必要がある。具体的には、まず、点群の位置情報に対して八分木符号化を行うとともに、八分木符号化後の位置情報に基づいて、その色情報を予測し、次に、オリジナル色情報と差分を取る方式で色情報を符号化し、点群の符号化を実現する。
【0004】
これまで、色情報を予測する過程において、予測効果をどのように向上させるかが当分野で早急な解決の待たれる課題である。
【発明の概要】
【0005】
本願の実施例は、点の属性情報の予測精度を向上させることができる、点群の符号化方法、復号化方法、エンコーダ及びデコーダを提供する。
【0006】
一態様では、点群の符号化方法を提供し、前記方法は、
点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得ることと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得ることであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、ことと、
前記量子化残差値を符号化して、コードストリームを得ることと、を含む。
【0007】
別の態様では、点群の復号化方法を提供し、前記方法は、
点群のコードストリームを解析して、前記点群の目標点の属性情報の量子化残差値を得ることと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得ることであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、ことと、
前記予測残差値及び前記目標点の属性情報の予測値に基づいて、前記目標点の属性情報の再構築値を得ることと、
前記目標点の属性情報の再構築値に基づいて、復号化された点群を得ることと、を含む。
【0008】
別の態様では、点群のエンコーダを提供し、前記エンコーダは、
点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得るように構成される第1処理ユニットと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得るように構成される第2処理ユニットであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、第2処理ユニットと、
前記量子化残差値を符号化して、コードストリームを得るように構成される符号化ユニットと、を備える。
【0009】
別の態様では、点群のデコーダを提供し、前記デコーダは、
点群のコードストリームを解析して、前記点群の目標点の属性情報の量子化残差値を得るように構成される解析ユニットと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得るように構成される第1処理ユニットであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、第1処理ユニットと、
前記予測残差値及び前記目標点の属性情報の予測値に基づいて、前記目標点の属性情報の再構築値を得るように構成される第2処理ユニットと、
前記目標点の属性情報の再構築値に基づいて、復号化された点群を得るように構成される第3処理ユニットと、を備える。
【0010】
別の態様では、本願の実施例は、点群媒体のデータ処理機器を提供し、当該点群媒体のデータ処理機器は、
コンピュータプログラムを実行するプロセッサと、
プロセッサによってロードされ、上記の点群媒体のデータ処理方法を実行するコンピュータ命令を含む、コンピュータ可読記憶媒体と、を備える。
【0011】
別の態様では、本願の実施例は、コンピュータ可読記憶媒体を提供し、当該コンピュータ可読記憶媒体は、コンピュータ機器のプロセッサによって読み取られて実行されるとき、コンピュータ機器に、上記の点群媒体のデータ処理方法を実行させるコンピュータ命令を含む。
【0012】
本願によって提供される技術方案では、前記点群内の点の属性情報を予測するプロセスにおいて、前記目標点の重要度を表すパラメータ、即ち、前記目標点の量子化重みを導入し、前記目標点の量子化重みと前記目標点の量子化ステップ長とを結合して前記目標点の予測残差値を量子化することにより、前記目標点の属性情報の量子化残差値を得、さらに前記量子化残差値を符号化して、コードストリームを得る。目標点の量子化重みを導入することにより、前記目標点の量子化重みに基づいて前記目標点の量子化ステップ長を補正し、即ち、前記目標点の重要度に応じて前記目標点の量子化ステップ長を適応的に調整し、さらに調整後の量子化ステップ長に基づいて前記目標点の予測残差値を量子化することができ、前記点群内の点の属性情報を予測するプロセスにおいて、符号化順序における位置が上位の点については、予測において重要である場合、量子化ステップ長が大きすぎることを回避でき、さらに大きな再構築誤差の発生を回避でき、量子化重みの高い点に対しては、小さい量子化ステップ長を採用して量子化を行うことで再構築誤差を低減し、符号化順序における位置が下位の点については、その予測精度を向上させることができる。
【図面の簡単な説明】
【0013】
【
図1】本願の実施例による符号化フレームワークの例示的なブロック図である。
【
図2】本願の実施例によるLODの例示的なブロック図である。
【
図3】本願の実施例による復号化フレームワークの例示的なブロック図である。
【
図4】本願の実施例による符号化方法のフローチャートである。
【
図5】本願の実施例による復号化方法のフローチャートである。
【
図6】本願の実施例によるエンコーダの例示的なブロック図である。
【
図7】本願の実施例によるデコーダの例示的なブロック図である。
【
図8】本願の実施例による電子機器の例示的なブロック図である。
【発明を実施するための形態】
【0014】
以下では、点群に関連する概念について説明する。
【0015】
点群(Point Cloud)は、空間内に不規則に分布された、3D物体又は3Dシーンの空間構造と表面属性を表現する離散点セットである。
【0016】
点群データ(Point Cloud Data)は、点群の具体的な記録形態であり、点群内の各点の点群データは、ジオメトリ情報及び属性情報を含み得る。ここで、点群内の各点のジオメトリ情報は、当該点のデカルト3次元座標データであり、点群内の各点の属性情報は、色情報、材質情報、レーザ反射強度情報のうちの少なくとも1つを含み得るが、これらに限定されない。色情報は、任意の色空間の情報であり得る。例えば、色情報は、赤緑青(RGB:Red Green Blue)情報であり得る。別の例として、色情報は、輝度色度(YcbCr、YUV)情報であり得る。ここで、Yは、輝度(Luma)を表し、Cb(U)は、青色の色差を表し、Cr(V)は、赤色を表し、UとVは、色度(Chroma)を表し、色度は色差情報を示すためのものである。
【0017】
点群内の各点は、同じ数の属性情報を有する。例えば、点群内の各点は、色情報とレーザ反射強度の2種類の属性情報を有する。別の例として、点群内の各点は、色情報、材質情報、及びレーザ反射強度情報の3種類の属性情報を有する。点群媒体のパッケージングでは、点のジオメトリ情報は、点群媒体のジオメトリ成分又はジオメトリコンポーネント(Geometry Component)とも呼ばれ得、点の属性情報は、点群媒体の属性成分又は属性コンポーネント(Attribute Component)とも呼ばれ得る。点群媒体は、1つのジオメトリ成分及び1つ又は複数の属性成分を含み得る。
【0018】
適用シーンに基づいて、点群は、機械感知点群と人眼感知点群の2つのカテゴリに分類することができる。機械感知点群の適用シーンは、自律ナビケーションシステム、リアルタイム巡検システム、地理情報システム、視覚仕分けロボット、救急救助ロボットなどの点群適用シーンを含むが、これらに限定されない。人眼感知点群の適用シーンは、デジタル文化遺産、自由視点放送、3D没入通信、3D没入インタラクションなどの点群適用シーンを含むが、これらに限定されない。点群の取得方法は、コンピュータ生成、3Dレーザスキャン、3D撮影測定などを含むが、これらに限定されない。コンピュータは、仮想3D物体や仮想3Dシーンの点群を生成することができる。3Dスキャンは、静的実世界の3D物体又は3Dシーンの点群を取得することができ、毎秒100万レベルの点群データを取得することができる。3D撮影は、動的実世界の3D物体又は3Dシーンの点群を取得することができ、毎秒1000万レベルの点群データを取得することができる。具体的には、フォトレーダ、LIDAR、レーザスキャナ、マルチビューカメラなどの収集機器により、物体表面の点群を取得することができる。レーザ計測の原理に基づいて得られた点群は、点の3D座標情報及び点のレーザ反射強度(reflectance)の情報を含み得る。撮影測定原理に基づいて得られた点群は、点の3D座標情報及び点の色情報を含み得る。レーザ計測と撮影測定原理を合わせて得られた点群は、点の3D座標情報、点のレーザ反射強度(reflectance)、及び点の色情報を含み得る。これに対応して、点群の取得方法に基づいて、点群は、第1種類の静的点群、第2種類の動的点群、及び第3種類の動的取得点群の3種類に分類することもできる。第1種類の静的点群において、物体が静止し、点群を取得する機器も静止している。第2種類の動的点群において、物体は動いているが、点群を取得する機器は静止している。第3種類の動的取得点群において、点群を取得する機器が動いている。
【0019】
例えば、医療分野では、磁気共鳴映像(MRI:Magnetic Resonance Imaging)、コンピュータ断層撮影(CT:Computed Tomography)、電磁測位情報によって、生物組織器官の点群を取得することができる。これらの技術により、点群取得のコストと時間周期を削減し、データの精度を向上させることができる。点群の取得方法の変化により、大量の点群の取得が可能になる。大規模な点群の蓄積に伴い、点群の効率的な保存、伝送、配布、共有、標準化が点群応用の鍵となっている。
【0020】
点群データは、点群媒体を形成するために使用され得、点群媒体は、媒体ファイルであり得る。点群媒体は、複数の媒体フレームを含み得、点群媒体における各媒体フレームは、点群データから構成される。点群媒体は、3D物体や3Dシーンの空間構造や表面属性を柔軟且つ容易に表現できるため、広く利用されている。点群媒体を符号化した後、符号化後のコードストリームをパッケージングすることにより、パッケージファイルを形成することができ、パッケージファイルは、ユーザへの伝送のために使用され得る。これに対応して、点群媒体プレーヤ側では、まずパッケージファイルを展開する必要があり、次に復号化し、最後に復号化後のデータストリームを表示する。パッケージファイルは、点群ファイルとも呼ばれ得る。
【0021】
これまでは、点群符号化フレームワークを使用して点群を符号化することができる。
【0022】
点群符号化フレームワークは、MPEG(Moving Picture Experts Group)によって提供されるジオメトリベースの点群圧縮(G-PCC:Geometry Point Cloud Compression)コーデックフレームワーク又はビデオベースの点群圧縮(V-PCC:Video Point Cloud Compression)コーデックフレームワークであってもよいし、音声ビデオ符号化規格(AVS:Audio Video Standard)が提供するAVS-PCCコーデックフレームワークであってもよい。G-PCCコーデックフレームワークは、第1種類の静的点群及び第3種類の動的取得点群を圧縮するために使用され得、V-PCCコーデックフレームワークは、第2種類の動的点群を圧縮するために使用され得る。G-PCCコーデックフレームワークは、点群コーデックTMC13とも呼ばれ、V-PCCコーデックフレームワークは、点群コーデックTMC2とも呼ばれる。下記において、G-PCCコーデックフレームワークを例として、本願の実施例における適用可能なコーデックフレームについて説明する。
【0023】
図1は、本願の実施例による符号化フレームワーク100の例示的なブロック図である。
【0024】
図1に示すように、符号化フレームワーク100は、収集機器から点群の位置情報及び属性情報を取得することができる。点群の符号化は、位置符号化及び属性符号化を含む。一実施例では、位置符号化のプロセスは、オリジナル点群に対して座標変換、量子化による重複点除去のなどの前処理を行い、八分木を構築した後に符号化してジオメトリコードストリームを形成することを含む。属性符号化のプロセスは、所与の入力点群の位置情報の再構築情報及び属性情報の実値により、3つの予測モードのうちの1つを選択して点群予測を行い、予測後の結果を量子化し、算術符号化して属性コードストリームを形成することを含む。
【0025】
図1に示すように、位置符号化は、下記のユニットによって実現することができ、即ち、
座標変換(Tanmsform coordinates)ユニット101、量子化及び重複点除去(Quantize and remove points)ユニット102、八分木分析(Analyze octree)ユニット103、ジオメトリ再構築(Reconstruct geometry)ユニット104、及び第1算術符号化(Arithmetic enconde)ユニット105によって実現することができる。
【0026】
座標変換ユニット101は、点群内の点の世界座標を相対座標に変換するために使用され得る。例えば、点のジオメトリ座標からxyz座標軸の最小値をそれぞれ減算し、それは、直流成分除去操作に相当し、それによって点群内の点の座標を世界座標から相対座標に変換する。量子化及び重複点除去ユニット102は、量子化により、座標の数を減らすことができ、量子化後に、本来、異なる点であっても、同じ座標が与えられ、これによって、重複除去操作で重複点を削除し、例えば、同じ量子化位置及び異なる属性情報を有する複数のクラウドは、属性変換により1つのクラウドに統合することができる。本願のいくつかの実施例では、量子化及び重複点除去ユニット102は、任意選択的なユニットモジュールである。八分木分析ユニット103は、八分木(octree)符号化方式で量子化された点の位置情報を符号化することができる。例えば、点群を八分木のように分割し、それによって、点の位置は、八分木の位置に1対1で対応し、八分木内の点の位置を統計し、そのフラグ(flag)を1として、ジオメトリ符号化を行うことができる。第1算術符号化ユニット105は、エントロピー符号化方式で八分木分析ユニット103から出力された位置情報に対して算術符号化を行い、即ち、八分木分析ユニット103から出力された位置情報を、算術符号化方式でジオメトリコードストリームを生成することができ、ジオメトリコードストリームは、ジオメトリビットストリーム(geometry bitstream)とも呼ばれ得る。
【0027】
属性符号化は、は、下記のユニットによって実現することができ、即ち、
色空間変換(Transform colors)ユニット110、属性変換(Transfer attributes)ユニット111、領域適応階層変換(RAHT:Region Adaptive Hierarchical Transform) ユニット112、予測変換(predicting transform)ユニット113及びリフティング変換(lifting transform)ユニット114、量子化(Quantize)ユニット115及び第2算術符号化ユニット116によって実現することができる。
【0028】
色空間変換ユニット110は、点群内の点のRGB色空間を、YCbCr形式又は他の形式に変換するために使用され得る。属性変換ユニット111は、点群内の点の属性情報を変換して、属性歪みを最小限にするために使用され得る。例えば、属性変換ユニット111は、点の属性情報の実値を取得するために使用され得る。例えば、前記属性情報は、点の色情報であり得る。属性変換ユニット111により変換して点の属性情報の実値を得られた後、いずれかの予測ユニットを選択して、点群内の点を予測することができる。点群内の点を予測するためのユニットは、RAHT 112、予測変換(predicting transform)ユニット113、及びリフティング変換(lifting transform)ユニット114うちの少なくとも1つを含み得る。換言すれば、RAHT 112、予測変換(predicting transform)ユニット113、及びリフティング変換(lifting transform)ユニット114のいずれかは、点群内の点の属性情報を予測して、点の属性情報の予測値を取得し、さらに、点の属性情報の予測値に基づいて点の属性情報の残差値を取得するために使用され得る。例えば、点の属性情報の残差値は、点の属性情報の実値から点の属性情報の予測値を減算したものであり得る。
【0029】
予測変換ユニット113は、詳細レベル(LOD:level of detail)を生成し、LOD内の点の属性情報を順次予測し、後続の量子化符号化のために予測残差を計算するためにも使用され得る。具体的には、LOD内の各点に対して、現在点より前のLOD内から距離が最も近い近傍点を3つ見つけ、次に、3つの近傍点の再構築値を利用して現在点を予測して予測値を得、これに基づき、現在点の予測値及び現在点の実値に基づいて現在点の残差値を得ることができる。例えば、下記式に基づいて残差値を決定することができる。
【0030】
attrResidualQuant=(attrValue-attrPred)surasshuQstep
ここで、attrResidualQuantは、現在点の残差値を表し、attrPredは、現在点の予測値を表し、attrValueは、現在点の実値を表し、Qstepは、量子化ステップ長を表す。ここで、Qstepは、量子化パラメータ(Qp:Quantization Parameter)から計算されるものである。
【0031】
現在点は、後続の点の最近傍点とされることができ、現在点の再構築値を利用して、後続の点の属性情報を予測する。現在点の属性情報の再構築値は、下記式によって得ることができる。
【0032】
reconstructedColor=attrResidualQuant×Qstep+attrPred
ここで、reconstructedColorは、現在点の再構築値を表し、attrResidualQuantは、現在点の残差値を表し、Qstepは、量子化ステップ長を表し、attrPredは、現在点の予測値を表す。ここで、Qstepは、量子化パラメータ(Qp:Quantization Parameter)から計算されるものである。
【0033】
LODの生成プロセスは、点群内の点の位置情報に基づいて、点と点とのユークリッド距離を取得することと、ユークリッド距離に基づいて、点を異なるLODに分割することと、を含む。一実施例では、ユークリッド距離に対してソートをかけた後、異なる範囲のユークリッド距離を、異なるLODに分割することができる。例えば、ランダムに1つの点を選択して、第1LODとすることができる。次に、残りの点と当該点とのユークリッド距離を計算し、ユークリッド距離が第1閾値要件を満たす点を、第2LODに分類する。第2LOD内の点の質量中心を取得して、第1、第2LOD以外の点と当該質量中心とのユークリッド距離を計算し、ユークリッド距離が第2閾値を満たす点を、第3LODに分類する。このように、すべての点をLODに分類する。ユークリッド距離の閾値を調整することにより、各LODの点の数を漸増させることができる。理解すべきこととして、LODの分割方式は、他の方式を採用することもでき、本願はこれらに限定されない。説明すべきこととして、点群を直接1つ又は複数のLODに分割してもよく、点群を複数の点群スライス(slice)に分割してから、各点群スライスを1つ又は複数のLODに分割してもよい。例えば、点群を複数の点群スライスに分割することができ、各点群スライスの点の数は、55万~110万個であり得る。各点群スライスは、単独の点群とみなすことができる。各点群スライスは、複数のLODに分割することもでき、各LODは、複数の点を含む。一実施例では、点と点とのユークリッド距離に基づいて、LODの分割を行うことができる。
【0034】
図2は、本願の実施例によるLODの例示的なブロック図である。
【0035】
図2に示すように、点群がオリジナル順序(originalorder)で配列された複数の点、即ち、P0、P1、P2、P3、P4、P5、P6、P7、P8、及びP9を含むものであり、点と点とのユークリッド距離に基づいて、点群は、3つのLOD、即ち、LOD0、LOD1、及びLOD2に分割することができるものとする。ここで、LOD0は、P0、P5、P4、及びP2を含み得、LOD2は、P1、P6、及びP3を含み得、LOD3は、P9、P8、及びP7を含み得る。この場合、LOD0、LOD1、及びLOD2は、当該点群のLODに基づく順序(LOD-based order)、即ち、P0、P5、P4、P2、P1、P6、P3、P9、P8、及びP7を形成するために使用され得る。前記LODに基づく順序は、当該点群の符号化順序とすることができる。
【0036】
量子化ユニット115は、点の属性情報の残差値を量子化するために使用され得る。例えば、前記量子化ユニット115と前記予測変換ユニット113とが接続されている場合、前記量子化ユニットは、前記予測変換ユニット113から出力された点の属性情報の残差値を量子化するために使用され得る。例えば、予測変換ユニット113から出力された点の属性情報の残差値に対して、量子化ステップ長を使用して量子化することにより、システム性能の向上を実現する。第2算術符号化ユニット116は、ゼロランレングス符号化(Zero run length coding)を使用して点の属性情報の残差値をエントロピー符号化することにより、属性コードストリームを得ることができる。前記属性コードストリームは、ビットストリーム情報であり得る。
【0037】
理解すべきこととして、本願の実施例では、点群内の点の属性情報の予測値(predictedvalue)は、LODモードにおける色予測値(predictedColor)とも呼ばれ得る。点の属性情報の実値から点の属性情報の予測値を減算することにより点の残差値(residualvalue)を得ることができる。点の属性情報の残差値は、LODモードにおける色残差値(residualColor)とも呼ばれ得る。点の属性情報の予測値を、点の属性情報の残差値に加算することにより、点の属性情報の再構築値(reconstructedvalue)を生成することができる。点の属性情報の再構築値は、LODモードにおける色再構築値(reconstructedColor)とも呼ばれ得る。
【0038】
図3は、本願の実施例による復号化フレームワーク200の例示的なブロック図である。
【0039】
図3に示すように、復号化フレームワーク200は、エンコーダから点群のコードストリームを取得し、コードを解析することにより点群内の点の位置情報及び属性情報を得ることができる。点群の復号化は、位置復号化及び属性復号化を含む。
【0040】
一実施例では、位置復号化のプロセスは、ジオメトリコードストリームを算術復号化することと、八分木を構築した後にマージして、点の位置情報を構築することにより、点の位置情報の再構築情報を得ることと、点の位置情報の再構築情報を座標変換して、点の位置情報を得ることと、を含む。点の位置情報は、点のジオメトリ情報とも呼ばれ得る。
【0041】
属性復号化のプロセスは、属性コードストリームを解析することにより、点群内の点の属性情報の残差値を取得することと、点の属性情報の残差値を逆量子化することにより、逆量子化された点の属性情報の残差値を得ることと、位置復号化プロセスで取得された点の位置情報の再構築情報に基づいて、3つの予測モードのうちの1つを選択して点群予測を行い、点の属性情報の再構築値を得ることと、点の属性情報の再構築値を色空間逆変換することにより、復号化された点群を得ることと、を含む。
【0042】
図3に示すように、位置復号化は、第1算数復号化ユニット201、八分木分析(synthesize octree)ユニット202、ジオメトリ再構築(Reconstruct geometry)ユニット203、及び座標逆変換(inverse transform coordinates)ユニット204によって実現することができる。属性符号化は、第2算数復号化ユニット210、逆量子化(inverse quantize)ユニット211、RAHTユニット212、予測変換(predicting transform)ユニット213、リフティング変換(lifting transform)ユニット214、及び色空間逆変換(inverse trasform colors)ユニット215によって実現することができる。
【0043】
説明すべきこととして、解凍は、圧縮の逆処理であり、同様に、復号化フレームワーク200内の各ユニットの機能は、符号化フレームワーク100内の対応するユニットの機能を参照することができる。例えば、復号化フレームワーク200は、点群内の点と点とのユークリッド距離に基づいて、点群を複数のLODに分割し、次に、LOD内の点の属性情報を順次復号化すること、例えば、ゼロランレングス符号化技術におけるゼロの数(zero_cnt)を計算して、ゼロの数に基づいて残差を復号化することができ、次に、復号化フレームワーク200は、すべての点群が復号化されるまで、復号化して得られた残差値を逆量子化し、逆量子化後の残差値と現在点の予測値とを加算して、当該点群の再構築値を取得することができる。現在点は、後続のLOD内の点の最近傍点として、現在点の再構築値を利用して、後続の点の属性情報を予測する。また、逆変換(transform)及び逆量子化(scale/scaling)については、直交変換の場合、そのうちの一方の行列を変換に使用すれば、他方の行列は逆変換に使用される。復号化方法では、デコーダで使用される行列を「変換(transform)行列」と呼ぶことができる。
【0044】
上記の符号化フレームワーク100では、量子化ユニット115は、固定量子化ステップ長技術又は可変量子化ステップ長技術により、量子化ステップ長を利用して予測変換ユニット113から出力される点の属性情報の予測残差値を量子化することができる。固定量子化ステップ長技術では、すべてのLOD内の点の予測残差値に対して固定量子化ステップ長を利用して量子化し、可変量子化ステップ長技術において、LODのレベル分けの量子化技術に基づいて、LOD毎に量子化パラメータの増分を設定し、属性パラメータセットにより提供される量子化パラメータと重畳することにより、各LODの有効量子化パラメータを取得することができ、その具体的な量子化パラメータの増分は、下記の表1に示すように設定する。
【表1】
表1に示すように、LOD0~LOD14は、異なるLODを表し、R1~R5は異なるビットレート、即ち、異なる量子化パラメータ(Qp:Quantization Parameter)を表し、Qpの値が大きいほどビットレートは高く、R1は、Qpの値が10であることを表し、R2は、Qpの値が16であることを表し、Qpの値が6ずつ増加し、R5は、Qpの値が大きいことを表し、即ち、量子化ステップ長が大きく、コードストリームが小さくなり、そのため、ビットレートは非常に低い。
【0045】
以上の分析によれば、固定量子化ステップ長技術及び可変量子化ステップ長技術の予測精度を向上させる必要がある。固定量子化ステップ長技術は、後続のLOD内の点が前のLOD内の点の再構築値を利用して予測変換を行う時に、前のLOD内の点の再構築値より後続のLOD内の点の予測変換に与える影響を考慮せず、前のレベルのLODの量子化ステップ長が大きい場合、それの対応する再構築誤差も大きくなり、点の属性情報に基づく予測変換技術において、再構築誤差が後続のLODへ伝播され、さらに後続のLOD内の点の予測効果に影響を与え、予測の精度を低下させる。また、可変量子化ステップ長技術では、LODのレベル数及び各レベルのLODの点数の特性を十分に考慮せず、機械的にステップ方式で各レベルのLODの量子化パラメータの増分を設定しており、前のレベルのLOD点の再構築値の品質より後続の点の予測効果に与える影響を考慮していないため、前のレベルのLODの量子化ステップ長が大きく、ビットレート及び符号化品質を両立することができないことを招く。
【0046】
本願の実施例は、点の属性情報の予測精度を向上させることができる点群の符号化方法、復号化方法、エンコーダ及びデコーダを提供する。
【0047】
図4は、本願の実施例による点群の符号化方法300のフローチャートであり、前記符号化方法300は、エンコーダによって実行することができる。例えば、
図1に示す符号化フレームワーク100は、即ち、点群エンコーダTMC13である。説明の便宜上、以下では、エンコーダを実行主体として本願の技術方案について説明する。
【0048】
図4に示すように、前記符号化方法300は、次のステップを含み得る。
【0049】
ステップS301において、点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得る。
【0050】
ステップS302において、前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである。
【0051】
ステップS303において、前記量子化残差値を符号化して、コードストリームを得る。
【0052】
要するに、エンコーダは、前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得、さらに前記量子化残差値を符号化して、コードストリームを得る。
【0053】
本願によって提供される技術方案では、前記点群内の点の属性情報を予測するプロセスにおいて、前記目標点の量子化ステップ長に対して重み付けを行う量子化重みを導入し、前記目標点の量子化重みと前記目標点の量子化ステップ長とを結合して前記目標点の予測残差値を量子化することにより、前記目標点の属性情報の量子化残差値を得、さらに前記量子化残差値を符号化して、コードストリームを得る。目標点の量子化重みを導入することにより、前記目標点の量子化重みに基づいて前記目標点の量子化ステップ長を補正し、即ち、前記目標点の重要度に応じて前記目標点の量子化ステップ長を適応的に調整し、さらに調整後の量子化ステップ長に基づいて前記目標点の予測残差値を量子化することができ、前記点群内の点の属性情報を予測するプロセスにおいて、符号化順序で位置が前である点が予測に重要である場合、量子化ステップ長が大きすぎることを回避することができ、さらに大きな再構築誤差の発生を回避することができ、それは、量子化重みの高い点に対して、小さい量子化ステップ長を採用して量子化を行うことで再構築誤差を低減することに相当し、符号化順序で位置が後ろである点の予測精度を向上させ、符号化効果を向上させることができる。
【0054】
本願によって提供される技術方案に基づき、G-PCCに関するソフトウェア(TMC13 V11.0)でテストを行い、CTC CYテスト条件下でMPEG(Moving Picture Experts Group)に要求されるテストシーケンスの一部をテストし、テスト結果は、下記表2に示す通りであり、以下では、表2を参照して性能向上効果について説明する。
【0055】
【0056】
【0057】
【0058】
説明すべきこととして、本願の実施例では、説明の便宜上、前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記予測残差値を量子化する前の予測値を、予測残差値と呼び、前記目標点の量子化重みに基づいて前記予測残差値を処理した後、且つ前記目標点の量子化ステップ長に基づいて前記予測残差値を処理する前の予測値を、重み付け残差値と呼び、前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記予測残差値を量子化した後の予測値を、量子化残差値と呼ぶ。もちろん、上記の命名方式は、本願の一例に過ぎず、本願に対する制限として理解されるべきではない。本願の代替実施例では、前記量子化残差値は、重み付け量子化残差値とも呼ばれ得、又は、残差値と直接呼ぶこともできる。
【0059】
本願のいくつかの実施例では、前記方法300は、
前記目標点のインデックスを決定することと、前記目標点のインデックスに対応する量子化重みを、前記目標点の量子化重みとして決定することと、をさらに含み得る。
【0060】
要するに、エンコーダは、点のインデックスに基づいて、点の量子化重みを取得することができる。
【0061】
任意選択的に、前記点群の量子化重みは、配列として記憶され、前記配列の次元は、前記点群内の点の数と同じである。例えば、QuantWeight[index]は、点のインデックスがindexである量子化重みを表し、この場合、QuantWeight[]は、前記点群内のすべての点の量子化重みを記憶した配列と理解でき、前記配列の次元は、前記点群内の点の数と一致し、点のインデックスによって点の量子化重みを照会することができる。
【0062】
本願のいくつかの実施例では、前記方法300は、
前記点群を1つ又は複数のLODに分割することをさらに含み得、各LODは、1つ又は複数の点を含み、前記複数のLODのうちの先頭のM個のLOD内の点の量子化重みの初期値は、前記複数のLODのうちの残りのLOD内の点の量子化重みの初期値より大きい。Mは、0より大きい整数である。例えば、先頭の7個のLOD内の各点の量子化重みの初期値を、512と設定し、残りのLOD内の各点の量子化重みの初期値を、256と設定する。
【0063】
一実施形態では、前記点群の符号化順序の逆順に従って前記点群内の点をトラバースすることにより、現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新し、Nは、0より大きい整数である。例えば、目標点であれば、前記目標点の量子化重みに基づいて、前記目標点のN個の最近傍点のそれぞれの量子化重みを更新し、Nは、0より大きい整数である。一実施形態では、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得し、前記影響重みは、前記現在点と前記N個の最近傍点の位置情報に依存し、前記現在点の量子化重み及び前記N個の最近傍点のそれぞれに対する前記現在点の影響重みに基づいて、前記N個の最近傍点の量子化重みを更新する。一実施形態では、前記点群の属性パラメータセットは、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを含み、前記属性パラメータセットを照会することにより、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得する。
【0064】
任意選択的に、前記点群内の各点の量子化重みの初期値は、所定値である。
【0065】
説明すべきこととして、本願の実施例は、初期値の具体的な値を限定しない。一例として、前記初期値は、256、512又は他の特定の値であってもよい。256と初期化することは、前記点群内のすべての点の量子化重みの値を256に設定することである。
【0066】
エンコーダが前記点群内の各点を逆順にトラバースした後、各点の量子化重みは、前記点群の点の属性情報を予測するプロセスにおける当該点の重要度に応じて更新され、重要な点ほどその量子化重みの値が大きい。
【0067】
一実施形態では、下記式に基づいて前記N個の最近傍点の量子化重みを更新する。
【0068】
newneighborQuantWeight[i]=neighborQuantWeight[i]+(T[i]*QuantWeight[index-c])≫k
ここで、newneighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新されたi番目の最近傍点の量子化重みを表し、前記neighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新される前の前記i番目の最近傍点の量子化重みを表し、QuantWeight[index-c]は、前記現在点の量子化重みを表し、T[i]は、前記i番目の最近傍点に対する前記現在点の影響重みを表し、kは、T[i]*QuantWeight[index-c]に対する右シフト演算のビット数を表す。任意選択的に、T[i]の値は、iが大きくなるにつれて小さくなる。
【0069】
例えば、前記点群内のすべての点の量子化重みの初期値を256に設定し、次に、符号化順序の逆順で各点をトラバースして、その3つの最近傍点の量子化重みを更新すると仮定し、現在トラバースされた点のインデックスがindexであり、現在点の3つの最近傍点のインデックスがそれぞれindexN1、indexN2、indexN3であると仮定すると、現在点の3つの最近傍点の量子化重みは、次のように記することができる。
【0070】
neighborQuantWeight[0]=QuantWeight[indexN1]
neighborQuantWeight[1]=QuantWeight[indexN2]
neighborQuantWeight[2]=QuantWeight[indexN3]
現在点の量子化重みを利用して、次の方式でその3つの最近傍点の量子化重みを更新する。
【0071】
newneighborQuantWeight[0]=neighborQuantWeight[0]+(32×QuantWeight[index])≫k
newneighborQuantWeight[1]=neighborQuantWeight[1]+(16×QuantWeight[index])≫k
newneighborQuantWeight[2]=neighborQuantWeight[2]+(8×QuantWeight[index])≫k
ここで、kの値は、8である。32、16、8は、それぞれ第1、2、3最近傍点に対する現在点の影響重みであり、当該影響重みは、文法として点群の属性パラメータセットに定義され得、即ち、属性パラメータセットによって影響重みの値を設定することができる。エンコーダは、属性情報の符号化プロセスにおいて、前記属性パラメータセットをアクティブ化又はアクセスすることができ、それによって、前記属性パラメータセットから点の影響重みの値を呼び出すことができる。「>>」は、右シフト演算を表す。もちろん、本願の実施例は、k及び影響重みの具体的な値を限定するものではなく、上記の数字は例示的な説明に過ぎず、本願の制限として理解されるべきではない。例えば、本願の代替実施例では、第1、2、3最近傍点の影響重みを、それぞれ64、32、16に変更することもできる。現在点の量子化重みが256であり、最近傍点0(即ち、第1最近傍点)の量子化重みも256である場合、(32×256)>>8の結果が32であり、即ち、演算結果が右に8ビットシフトし、このとき、最近傍点0の量子化重みは、256+32=288に更新され、この結果は、点群のすべての点の量子化重みを含む配列QuantWeight「」に同時に保存され得、最近傍点0までトラバースした場合、量子化重み288を使用して最近傍点0の3つの隣接点を更新する。
【0072】
下記において、表3を参照して属性パラメータセットの文法を説明する。
【0073】
【0074】
表3に示すように、attribute_parameter_setは、属性パラメータセットを表し、aps_chroma_qp_offseは、色度偏差を表し、weightOfNearestNeighborsInAdaptiveQuant[i]は、i番目の最近傍点に対する現在点の影響重みを表し、ここで、iは、0、1、2であり、現在点の第1、2、3最近傍点をそれぞれ表す。具体的には、第1最近傍点は、現在点から最も近い近傍点を表し、第2最近傍点は、現在点から2番目に近い近傍点を表し、このように類推する。
【0075】
本願のいくつかの実施例では、前記ステップS302は、
目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することと、前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記予測残差値を量子化して、前記量子化残差値を得ることと、を含み得る。
【0076】
任意選択的に、前記有効量子化重みは、前記目標点の量子化ステップ長以下である。
【0077】
任意選択的に、下記式を利用して前記目標点の有効量子化重みを決定する。
【0078】
effectiveQuantWeight=min(QuantWeight[index])k, Qstep)
ここで、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、QuantWeight[index]は、前記目標点の量子化重みを表し、kは、前記QuantWeight[index]に対する右シフト演算のビット数を表し、Qstepは、前記目標点の量子化ステップ長を表す。
【0079】
本願の実施例では、前記目標点の量子化ステップ長が小さく設定されている場合、前記目標点の量子化重みは、量子化ステップ長を超える可能性があり、このとき、量子化重み及び量子化ステップ長のうちの小さい値を取って有効量子化重みを得る必要があり、これにより、エンコーダが予測残差値に対して量子化操作を行うことができることを保証し、即ち、エンコーダの符号化性能を保証する。
【0080】
任意選択的に、前記有効量子化重みの値は、2の冪に等しい。
【0081】
任意選択的に、前記目標点の量子化重みの値は、2の冪に等しくなく、前記目標点の量子化重みの値に基づいて、前記目標点の量子化重みに最も近い2の冪を、前記有効量子化重みとして決定する。
【0082】
例えば、前記目標点の量子化重みの値が18であると仮定すると、ハードウェアの実現を容易にするために、18をそれと最も近い2の冪、即ち、16又は32に変換することができ、例えば、18を16に変換し、即ち、18を16に置き換える。前記目標点の量子化重みの値が30であると仮定すると、30と最も近い2の冪は32になり、このとき、前記目標点の量子化重みは、32に変換され、2の冪については、2進数のシフト操作により適応的に量子化を実現することができ、ハードウェアの実現が容易になる。
【0083】
本願の実施例では、前記有効量子化重みの値を2の冪とすることにより、重み付けの乗算演算をシフト演算として処理することができ、エンコーダの処理効率を向上させ、エンコーダの性能をさらに向上させることができる。
【0084】
説明すべきこととして、本願の別の代替実施例では、まず、目標点の量子化重み及び目標点の量子化ステップ長から最小値を取り、次に、前記最小値に最も近い2の冪を、前記有効量子化重みとして決定する。もちろん、他の方法により有効量子化重みを決定することもでき、本願の実施例はこれを限定しない。例えば、前記目標点の量子化重みを、直接前記目標点の有効量子化重みとして決定することができる。
【0085】
本願のいくつかの実施例では、前記ステップS302は、
前記有効量子化重みに前記予測残差値を乗算して、重み付け残差値を得ることと、前記目標点の量子化ステップ長を利用して前記重み付け残差値を量子化して、前記量子化残差値を得ることと、を含み得る。
【0086】
具体的には、エンコーダは、予測変換により現在点の属性情報の予測値を得ることができる。現在点の属性情報の実値が既知である場合、実値から予測値を減算することにより、現在点の属性情報の予測残差値を得ることができ、予測残差値と有効量子化重みを乗算して重み付け予測残差値を得、量子化ステップ長を利用して重み付け予測残差値を量子化して、量子化重み付け予測残差値、即ち、量子化残差値を得、次いで現在点の量子化残差値をエントロピー符号化してコードストリームに書き込むことができる。
【0087】
これに対応して、デコーダは、まず、再構築された位置情報に基づいて点群内の各点の量子化重みを計算し、量子化ステップ長と比較することによって各点の有効量子化重みを決定し、次に、コードストリームを解析して現在点の量子化残差値を得、逆量子化して重み付け予測残差値を得、重み付け予測残差値を有効量子化重みで除算して予測残差値を得る。デコーダは、予測変換により現在点の属性情報の予測値を決定し、次いで現在点の属性情報の予測値及び予測残差値に基づいて、現在点の属性情報の再構築値を得、デコーダは、現在点の属性情報の再構築値を得た後、順次に次の点を復号化及び再構築を行う。
【0088】
以上より、本願の実施例では、エンコーダは、量子化前に、予測残差値に有効量子化重みを乗算して重み付けを行い、デコーダは、逆量子化の後、逆量子化後の重み付け予測残差値を有効量子化重みで除算して重み付け影響を除去して、予測残差値を得る。説明すべきこととして、量子化はロスレスではないため、デコーダが得られる重み付け予測残差値は、必ずしもエンコーダで得られる重み付け予測残差値と等しいものではない。
【0089】
本願のいくつかの実施例では、前記ステップS302は、
下記式を利用して前記予測残差値を量子化して、前記量子化残差値を得ることを含み得、
attrResidualQuant2=attrResidualQuant1×effectiveQuantWeight/Qstep
ここで、attrResidualQuant2は、前記量子化残差値を表し、attrResidualQuant1は、前記予測残差値を表し、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、Qstepは、前記目標点の量子化ステップ長を表す。
【0090】
【0091】
本願のいくつかの実施例では、前記ステップS301は、
前記目標点の位置情報を処理して、前記目標点の位置情報の再構築情報を得ることと、前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得ることと、点群内の前記目標点の属性情報を処理して、前記目標点の属性情報の実値を得ることと、前記目標点の属性情報の予測値及び前記目標点の属性情報の実値に基づいて、前記予測残差値を得ることと、を含み得る。
【0092】
エンコーダは、点群内の1つの目標点の位置情報を処理して、前記目標点の位置情報の再構築情報を得、前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得、点群内の前記目標点の属性情報を処理して、前記目標点の属性情報の実値を得、前記目標点の属性情報の予測値及び前記目標点の属性情報の実値に基づいて、前記目標点の属性情報の予測残差値を得、前記予測残差値に基づいて前記コードストリームを得る。
【0093】
図5は、本願の実施例による点群の復号化方法400のフローチャートであり、前記方法400は、復号化側で実行することができる。例えば、
図3に示す復号化フレームワーク200は、即ち、点群デコーダTMC13である。説明の便宜上、以下では、デコーダを実行主体として本願の技術方案について説明する。
【0094】
図5に示すように、前記方法400は、次のステップを含み得る。
【0095】
ステップS401において、点群のコードストリームを解析して、前記点群の目標点の属性情報の量子化残差値を得る。
【0096】
ステップS402において、前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである。
【0097】
ステップS403において、前記再構築残差値及び前記目標点の属性情報の予測値に基づいて、前記目標点の属性情報の再構築値を得る。
【0098】
ステップS404において、前記目標点の属性情報の再構築値に基づいて、復号化された点群を得る。
【0099】
本願のいくつかの実施例では、前記方法400は、
前記目標点のインデックスを決定することと、
前記目標点のインデックスに対応する量子化重みを、前記目標点の量子化重みとして決定することと、をさらに含み得る。
【0100】
本願のいくつかの実施例では、前記ステップS402は、
目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することと、
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることと、を含み得る。
【0101】
本願のいくつかの実施例では、前記有効量子化重みは、前記目標点の量子化ステップ長以下である。
【0102】
本願のいくつかの実施例では、effectiveQuantWeight=min(QuantWeight[index])k,Qstep)という式を利用して前記目標点の有効量子化重みを決定することを含み、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、QuantWeight[index]は、前記目標点の量子化重みを表し、kは、前記QuantWeight[index]に対する右シフト演算のビット数を表し、Qstepは、前記目標点の量子化ステップ長を表す。
【0103】
本願のいくつかの実施例では、前記有効量子化重みの値は、2の冪に等しい。
【0104】
本願のいくつかの実施例では、前記目標点の量子化重みの値が2の冪に等しくない場合、前記目標点の量子化重みの値に基づいて、前記目標点の量子化重みに最も近い2の冪を、前記有効量子化重みとして決定することができる。
【0105】
本願のいくつかの実施例では、前記ステップS402は、
前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、重み付け残差値を得ることと、
前記重み付け残差値を前記有効量子化重みで除算して、前記再構築残差値を得ることと、を含み得る。
【0106】
本願のいくつかの実施例では、前記ステップS402は、
attrResidualQuant1=(attrResidualQuant2×Qstep)/effectiveQuantWeightという式を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることを含み、
attrResidualQuant2は、前記量子化残差値を表し、attrResidualQuant1は、前記再構築残差値を表し、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、Qstepは、前記目標点の量子化ステップ長を表す。
【0107】
【0108】
本願のいくつかの実施例では、前記方法400は、
前記目標点の量子化重みに基づいて、前記目標点のN個の最近傍点のそれぞれの量子化重みを更新することをさらに含み得、Nは、0より大きい整数である。
【0109】
本願のいくつかの実施例では、前記点群の符号化順序の逆順に従って前記点群内の点をトラバースすることにより、現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新し、Nは、0より大きい整数である。
【0110】
本願のいくつかの実施例では、前記点群内の各点の量子化重みの初期値は、所定値である。
【0111】
本願のいくつかの実施例では、前記方法400は、
前記点群を1つ又は複数のLODに分割することをさらに含み得、各LODは、1つ又は複数の点を含み、
前記複数のLODのうちの先頭のM個のLOD内の点の量子化重みの初期値は、前記複数のLODのうちの残りのLOD内の点の量子化重みの初期値より大きい。
【0112】
本願のいくつかの実施例では、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得し、前記影響重みは、前記現在点と前記N個の最近傍点の位置情報に依存し、前記現在点の量子化重み及び前記N個の最近傍点のそれぞれに対する前記現在点の影響重みに基づいて、前記N個の最近傍点の量子化重みを更新する。
【0113】
本願のいくつかの実施例では、前記点群の属性パラメータセットは、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを含み、前記属性パラメータセットを照会することにより、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得する。
【0114】
本願のいくつかの実施例では、newneighborQuantWeight[i]=neighborQuantWeight[i]+(T[i]*QuantWeight[index-c])≫kという式に基づいて前記N個の最近傍点の量子化重みを更新することを含み、
ここで、newneighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新されたi番目の最近傍点の量子化重みを表し、前記neighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新される前の前記i番目の最近傍点の量子化重みを表し、QuantWeight[index-c]は、前記現在点の量子化重みを表し、T[i]は、前記i番目の最近傍点に対する前記現在点の影響重みを表し、kは、T[i]*QuantWeight[index-c]に対する右シフト演算のビット数を表す。
【0115】
本願のいくつかの実施例では、T[i]の値は、iが大きくなるにつれて小さくなる。
【0116】
本願のいくつかの実施例では、前記点群の量子化重みは、配列として記憶され、前記配列の次元は、前記点群内の点の数と同じである。
【0117】
本願のいくつかの実施例では、前記方法400は、
前記コードストリームを解析して、前記目標点の位置情報の再構築情報を得ることと、前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得ることと、をさらに含み得る。
【0118】
以上により、添付の図面を参照して、本願の好ましい実施形態について説明したが、本願は、上記の実施形態における具体的な詳細に限定されない。本願の技術的構想の範囲内で、本願の技術的解決策に対して様々な簡単な変更を行うことができ、これらの簡単な変更はすべて、本願の保護範囲に属する。例えば、上記の具体的な実施形態で説明される各具体的な技術的特徴は、矛盾することなく、任意の適切な方式で組み合わせることができ、不必要な繰り返しを回避するために、本願は様々な可能な組み合わせについては説明しない。別の例では、本願の様々な異なる実施形態も、任意に組み合わせることができ、本願の思想に違反しない限り、当該組み合わせも、本願で開示される内容と見なされるべきである。また、理解すべきこととして、本願の各実施例において、上記の各プロセスのシーケンス番号の大きさは、実行シーケンスを意味するものではなく、各プロセスの実行シーケンスは、その機能と内部論理によって決定されるべきであり、本願の実施例の実施プロセスにいかなる制限も構成すべきではない。
【0119】
以下では、図面を参照して本願の実施例によって提供される点群のエンコーダ又はデコーダについて説明する。
【0120】
図6は、本願の実施例による点群のエンコーダ500の例示的なブロック図である。
【0121】
図6に示すように、前記エンコーダ500は、
点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得るように構成される第1処理ユニット501と、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得るように構成される第2処理ユニット502であって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、第2処理ユニット502と、
前記量子化残差値を符号化して、コードストリームを得るように構成される符号化ユニット503と、を備えることができる。
【0122】
説明すべきこととして、前記エンコーダ500は、
図1に示す符号化フレームワーク100に結合されることもでき、即ち、前記エンコーダ500のユニットを、符号化フレームワーク100における関連ユニットに置換又は結合することができる。例えば、前記第1処理ユニット501は、符号化フレームワーク100における予測変換ユニット113の関連機能を実現するように構成され得、さらに、位置符号化機能及び属性情報の予測前の機能を実現するようにも構成され得る。別の例として、前記第2処理ユニット502は、前記符号化フレームワーク100における量子化ユニット115を置き換えるように構成され得る。
【0123】
本願のいくつかの実施例では、前記第2処理ユニット502はさらに、
前記目標点のインデックスを決定し、
前記目標点のインデックスに対応する量子化重みを、前記目標点の量子化重みとして決定するように構成される。
【0124】
本願のいくつかの実施例では、前記第2処理ユニット502は、具体的に、
目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定し、
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記予測残差値を量子化して、前記量子化残差値を得るように構成される。
【0125】
本願のいくつかの実施例では、前記有効量子化重みは、前記目標点の量子化ステップ長以下である。
【0126】
本願のいくつかの実施例では、前記第2処理ユニット502は、具体的に、
effectiveQuantWeight=min(QuantWeight[index])k,Qstep)という式を利用して前記目標点の有効量子化重みを決定するように構成され、
ここで、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、QuantWeight[index]は、前記目標点の量子化重みを表し、kは、前記QuantWeight[index]に対する右シフト演算のビット数を表し、Qstepは、前記目標点の量子化ステップ長を表す。
【0127】
本願のいくつかの実施例では、前記有効量子化重みの値は、2の冪に等しい。
【0128】
本願のいくつかの実施例では、前記有効量子化重みの値は、2の冪に等しくなく、前記第2処理ユニット502は、具体的に、
前記目標点の量子化重みの値に基づいて、前記目標点の量子化重みに最も近い2の冪を、前記有効量子化重みとして決定するように構成される。
【0129】
本願のいくつかの実施例では、前記第2処理ユニット502は、具体的に、
前記有効量子化重みに前記予測残差値を乗算して、重み付け残差値を得、
前記目標点の量子化ステップ長を利用して前記重み付け残差値を量子化して、前記量子化残差値を得るように構成される。
【0130】
本願のいくつかの実施例では、前記第2処理ユニット502は、具体的に、
attrResidualQuant2=attrResidualQuant1×effectiveQuantWeight/Qstepという式を利用して前記予測残差値を量子化して、前記量子化残差値を得るように構成され、
ここで、attrResidualQuant2は、前記量子化残差値を表し、attrResidualQuant1は、前記予測残差値を表し、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、Qstepは、前記目標点の量子化ステップ長を表す。
【0131】
【0132】
本願のいくつかの実施例では、前記第2処理ユニット502はさらに、
前記点群の符号化順序の逆順に従って前記点群内の点をトラバースすることにより、現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新するように構成され、Nは、0より大きい整数である。
【0133】
本願のいくつかの実施例では、前記点群内の各点の量子化重みの初期値は、所定値である。
【0134】
本願のいくつかの実施例では、前記第1処理ユニット501はさらに、
前記点群を1つ又は複数のLODに分割するように構成され、各LODは、1つ又は複数の点を含み、
前記複数のLODのうちの先頭のM個のLOD内の点の量子化重みの初期値は、前記複数のLODのうちの残りのLOD内の点の量子化重みの初期値より大きい。
【0135】
本願のいくつかの実施例では、前記第2処理ユニット502は、具体的に、
前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得することであって、前記影響重みは、前記現在点と前記N個の最近傍点の位置情報に依存する、ことと、
前記現在点の量子化重み及び前記N個の最近傍点のそれぞれに対する前記現在点の影響重みに基づいて、前記N個の最近傍点の量子化重みを更新することと、を実行するように構成される。
【0136】
本願のいくつかの実施例では、前記点群の属性パラメータセットは、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを含み、前記第2処理ユニット502は、具体的に、
前記属性パラメータセットを照会することにより、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得するように構成される。
【0137】
本願のいくつかの実施例では、前記第2処理ユニット502は、具体的に、
newneighborQuantWeight[i]=neighborQuantWeight[i]+(T[i]*QuantWeight[index-c])≫kという式に基づいて前記N個の最近傍点の量子化重みを更新するように構成され、
ここで、newneighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新されたi番目の最近傍点の量子化重みを表し、前記neighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新される前の前記i番目の最近傍点の量子化重みを表し、QuantWeight[index-c]は、前記現在点の量子化重みを表し、T[i]は、前記i番目の最近傍点に対する前記現在点の影響重みを表し、kは、T[i]*QuantWeight[index-c]に対する右シフト演算のビット数を表す。
【0138】
本願のいくつかの実施例では、T[i]の値は、iが大きくなるにつれて小さくなる。
【0139】
本願のいくつかの実施例では、前記点群の量子化重みは、配列として記憶され、前記配列の次元は、前記点群内の点の数と同じである。
【0140】
本願のいくつかの実施例では、前記第1処理ユニット501は、具体的に、
前記目標点の位置情報を処理して、前記目標点の位置情報の再構築情報を得、
前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得、
点群内の前記目標点の属性情報を処理して、前記目標点の属性情報の実値を得、
前記目標点の属性情報の予測値及び前記目標点の属性情報の実値に基づいて、前記予測残差値を得るように構成される。
【0141】
図7は、本願の実施例による点群のデコーダ600の例示的なブロック図である。
【0142】
図7に示すように、前記デコーダ600は、
点群のコードストリームを解析して、前記点群の目標点の属性情報の量子化残差値を得るように構成される解析ユニット601と、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得るように構成される第1処理ユニット602であって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、第1処理ユニット602と、
前記再構築残差値及び前記目標点の属性情報の予測値に基づいて、前記目標点の属性情報の再構築値を得るように構成される第2処理ユニット603と、
前記目標点の属性情報の再構築値に基づいて、復号化された点群を得るように構成される第3処理ユニット604と、を備えることができる。
【0143】
説明すべきこととして、前記デコーダ600は、
図3に示す復号化フレームワーク200に結合されることもでき、即ち、前記デコーダ600のユニットを、復号化フレームワーク200における関連ユニットに置換又は結合することができる。例えば、前記解析ユニット601は、復号化フレームワーク200における予測変換ユニット213の関連機能を実現するように構成され得、さらに、位置復号化機能及び第2算数復号化の機能を実現するようにも構成され得る。別の例として、前記第1処理ユニット602及び前記第2処理ユニット603は、前記復号化フレームワーク200における逆量子化ユニット211を置き換えるように構成され得る。別の例として、前記第3処理ユニット604は、前記復号化フレームワーク200における色空間逆変換ユニット215的の機能を実現するように構成され得る。
【0144】
本願のいくつかの実施例では、前記第1処理ユニット602はさらに、
前記目標点のインデックスを決定し、
前記目標点のインデックスに対応する量子化重みを、前記目標点の量子化重みとして決定するように構成される。
【0145】
本願のいくつかの実施例では、前記第1処理ユニット602は、具体的に、
目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定し、
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得るように構成される。
【0146】
本願のいくつかの実施例では、前記有効量子化重みは、前記目標点の量子化ステップ長以下である。
【0147】
本願のいくつかの実施例では、前記有効量子化重みの値は、2の冪に等しい。
【0148】
本願のいくつかの実施例では、前記有効量子化重みの値は、2の冪に等しくなく、前記第1処理ユニット602は、
前記目標点の量子化重みの値に基づいて、前記目標点の量子化重みに最も近い2の冪を、前記有効量子化重みとして決定するように構成される。
【0149】
本願のいくつかの実施例では、前記第1処理ユニット602は、具体的に、
effectiveQuantWeight=min(QuantWeight[index])k,Qstep)という式を利用して前記目標点の有効量子化重みを決定するように構成され、
ここで、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、QuantWeight[index]は、前記目標点の量子化重みを表し、kは、前記QuantWeight[index]に対する右シフト演算のビット数を表し、Qstepは、前記目標点の量子化ステップ長を表す。
【0150】
本願のいくつかの実施例では、前記第1処理ユニット602は、具体的に、
前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、重み付け残差値を得、
前記重み付け残差値を前記有効量子化重みで除算して、前記再構築残差値を得るように構成される。
【0151】
本願のいくつかの実施例では、前記第1処理ユニット602は、具体的に、
attrResidualQuant1=(attrResidualQuant2×Qstep)/effectiveQuantWeightという式を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得るように構成され、
ここで、attrResidualQuant2は、前記量子化残差値を表し、attrResidualQuant1は、前記再構築残差値を表し、effectiveQuantWeightは、前記目標点の有効量子化重みを表し、Qstepは、前記目標点の量子化ステップ長を表す。
【0152】
【0153】
本願のいくつかの実施例では、前記第1処理ユニット602はさらに、
前記目標点の量子化重みに基づいて、前記目標点のN個の最近傍点のそれぞれの量子化重みを更新するように構成され、Nは、0より大きい整数である。
【0154】
本願のいくつかの実施例では、前記第1処理ユニット602は、具体的に、
前記点群の符号化順序の逆順に従って前記点群内の点をトラバースすることにより、現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新するように構成され、Nは、0より大きい整数である。
【0155】
本願のいくつかの実施例では、前記点群内の各点の量子化重みの初期値は、所定値である。
【0156】
本願のいくつかの実施例では、前記第2処理ユニット603は、具体的に、
前記点群を1つ又は複数のLODに分割するように構成され、各LODは、1つ又は複数の点を含み、
前記複数のLODのうちの先頭のM個のLOD内の点の量子化重みの初期値は、前記複数のLODのうちの残りのLOD内の点の量子化重みの初期値より大きい。
【0157】
本願のいくつかの実施例では、前記第1処理ユニット602は、具体的に、
前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得することであって、前記影響重みは、前記現在点と前記N個の最近傍点の位置情報に依存する、ことと、
前記現在点の量子化重み及び前記N個の最近傍点のそれぞれに対する前記現在点の影響重みに基づいて、前記N個の最近傍点の量子化重みを更新することと、を実行するように構成される。
【0158】
本願のいくつかの実施例では、前記点群の属性パラメータセットは、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを含み、前記第1処理ユニット602は、具体的に、
前記属性パラメータセットを照会することにより、前記N個の最近傍点のそれぞれに対する前記現在点の影響重みを取得するように構成される。
【0159】
本願のいくつかの実施例では、前記第1処理ユニット602は、具体的に、
newneighborQuantWeight[i]=neighborQuantWeight[i]+(T[i]*QuantWeight[index-c])≫kという式に基づいて前記N個の最近傍点の量子化重みを更新するように構成され、
ここで、newneighborQuantWeight[i]]は、前記現在点の量子化重みに基づいて更新されたi番目の最近傍点の量子化重みを表し、前記neighborQuantWeight[i]は、前記現在点の量子化重みに基づいて更新される前の前記i番目の最近傍点の量子化重みを表し、QuantWeight[index-c]は、前記現在点の量子化重みを表し、T[i]は、前記i番目の最近傍点に対する前記現在点の影響重みを表し、kは、T[i]*QuantWeight[index-c]に対する右シフト演算のビット数を表す。
【0160】
本願のいくつかの実施例では、T[i]の値は、iが大きくなるにつれて小さくなる。
【0161】
本願のいくつかの実施例では、前記点群の量子化重みは、配列として記憶され、前記配列の次元は、前記点群内の点の数と同じである。
【0162】
本願のいくつかの実施例では、前記解析ユニット601は、具体的に、
前記コードストリームを解析して、前記目標点の位置情報の再構築情報を得、
前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得るように構成される。
【0163】
理解すべきこととして、装置の実施例と方法の実施例は相互に対応し、同様の説明は方法の実施例を参照することができる。簡潔にするために、ここでは繰り返して説明しない。具体的には、エンコーダ500は、本願の実施例の方法300における関連主体に対応することができ、エンコーダ500の各ユニットは、それぞれ方法300における関連プロセスを実現し、同様に、デコーダ600は、本願の実施例の方法400における関連主体に対応することができ、デコーダ600の各ユニットは、それぞれ方法400における関連プロセスを実現し、簡潔性のために、ここでは繰り返して説明しない。
【0164】
また、理解すべきこととして、本願の実施例に係るエンコーダ又はデコーダの各ユニットは、別々に、又はすべてを組み合わせて1つ又は複数の別のユニットに統合して構成されもよく、又はユニットの1つ(一部)を機能的に小さい複数のユニットにさらに分割して構成されてもよい。換言すれば、上記のユニットは、論理的な機能に基づいて分割されているが、実際の適用では、1つのユニットの機能は複数のユニットによって実現されてもよく、複数のユニットの機能は1つのユニットによって実現されてもよい。もちろん、本願の別の実施例では、当該エンコーダ又はデコーダは、他のユニットを備えてもよく、実際の適用では、これらの機能は、他のユニットの支援によって実現されてもよく、複数のユニットの連携によって実現されてもよい。
【0165】
本願の別の実施例によれば、中央処理装置(CPU)、ランダムアクセス記憶媒体(RAM)、読み取り専用記憶媒体(ROM)などの処理要素と記憶要素とを含む、コンピュータなどの汎用コンピュータ機器上で、
図3に示す対応する方法に係る各ステップを実行できるコンピュータプログラム(プログラムコードを含む)を実行することにより、本願の実施例に係るエンコーダ又はデコーダを構成し、本願の実施例によって提供される符号化方法又は復号化方法を実現することができる。コンピュータプログラムは、例えば、コンピュータ可読記憶媒体に記録され、コンピュータ可読記憶媒体によって処理能力を有する任意の電子機器上にロードされ、実行されることにより、本願の実施例の対応する方法を実現することができる。換言すれば、上述したユニットは、ハードウェアの形で実装されてもよく、ソフトウェア命令の形で実装されてもよく、ハードウェアとソフトウェアの組み合わせで実装されてもよい。具体的には、本願の実施例における方法の実施例の各ステップは、プロセッサ内のハードウェア集積論理回路及び/又はソフトウェア形の命令によって完了することができ、本願の実施例に開示された方法のステップは、ハードウェア復号化プロセッサによって完了するか、又は復号化プロセッサ内のハードウェア及びソフトウェアユニットの組み合わせによって完了することができる。例示的に、ソフトウェアは、ランダムアクセスメモリ、フラッシュメモリ、読み取り専用メモリ、プログラマブル読み取り専用メモリ、又は電気的に消去可能なプログラマブルメモリ、レジスタなどの従来の記憶媒体に配置されることができる。当該記憶媒体はメモリ内に配置され、プロセッサは、メモリ内の情報を読み取り、そのハードウェアと組み合わせて上記の方法の実施例のステップを完了する。
【0166】
図8は、本願の実施例による電子機器700の例示的な構造図である。
【0167】
図8に示すように、当該電子機器700は、少なくともプロセッサ710及びコンピュータ可読記憶媒体720を備える。ここで、プロセッサ710及びコンピュータ可読記憶媒体720は、バスによって、又はその他の方法で接続される。コンピュータ可読記憶媒体720は、コンピュータプログラム721を記憶するように構成され、コンピュータプログラム721は、コンピュータ命令を含み、プロセッサ710は、コンピュータ可読記憶媒体720に記憶されたコンピュータ命令を実行するように構成される。プロセッサ710は、電子機器700のコンピューティングコア及び制御コアであり、1つ又は複数のコンピュータ命令を実行するように構成され、具体的には、1つ又は複数のコンピュータ命令をロードして実行することにより、対応するプロセス又は対応する機能を実現する。
【0168】
一例として、プロセッサ710は、中央処理装置(CPU:CentralProcessingUnit)とも呼ばれ得る。プロセッサ710は、汎用コンピュータ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、特定用途向け集積回路(ASIC:Application Specific Integrated Circuit)、フィールドプログラマブルゲートアレイ(FPGA:Field Programmable Gate Array)又は他のプログラマブルロジックデバイス、ディスクリートゲート又はトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントなどを含んでもよいが、これらに限定されない。
【0169】
一例として、コンピュータ可読記憶媒体720は、高速RAMメモリであってもよく、少なくとも1つのディスクメモリなどの不揮発性メモリ(Non-VolatileMemory)であってもよく、任意選択的に、少なくとも1つの前記プロセッサ710から離れたコンピュータ可読記憶媒体であってもよい。具体的には、コンピュータ可読記憶媒体720は、揮発性メモリ及び/又は不揮発性メモリを含むが、これらに限定されない。ここで、不揮発性メモリは、読み取り専用メモリ(ROM:Read-Only Memory)、プログラマブル読み取り専用メモリ(PROM:Programmable ROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM:Erasable PROM)、電気的に消去可能なプログラマブル読み取り専用メモリ(EEPROM:Electrically EPROM)又はフラッシュメモリであり得る。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(RAM:Random Access Memory)であり得る。例示的であるが限定的ではない例示によれば、多くの形のRAM、例えば、静的ランダムアクセスメモリ(SRAM:Static RAM)、ダイナミックランダムアクセスメモリ(DRAM:Dynamic RAM)、同期ダイナミックランダムアクセスメモリ(SDRAM:Synchronous DRAM)、ダブルデータレートの同期ダイナミックランダムアクセスメモリ(DDR SDRAM:Double Data Rate SDRAM)、拡張された同期ダイナミックランダムアクセスメモリ(ESDRAM:Enhanced SDRAM)、同期接続ダイナミックランダムアクセスメモリ(SLDRAM:Synchronous link DRAM)及びダイレクトメモリバスランダムアクセスメモリ(DR RAM:Direct Rambus RAM)などであり得る。
【0170】
一実施形態では、当該電子機器700は、
図1に示す符号化フレームワーク100又は
図6に示すエンコーダ500であり得、当該コンピュータ可読記憶媒体720には、第1コンピュータ命令が記憶され、プロセッサ710は、コンピュータ可読記憶媒体720に記憶された第1コンピュータ命令をロードされ実行することにより、
図4に示す方法実施例における対応するステップを実現し、具体的な実装では、コンピュータ可読記憶媒体720内の第1コンピュータ命令は、プロセッサ710によってロードされ、対応するステップを実行し、簡潔にするために、ここでは繰り返して説明しない。
【0171】
一実施形態では、当該電子機器700は、
図3に示す復号化フレームワーク200又は
図7に示すデコーダ600であり得、当該コンピュータ可読記憶媒体7200には、第2コンピュータ命令が記憶され、プロセッサ710は、コンピュータ可読記憶媒体720に記憶された第2コンピュータ命令をロードして実行することにより、
図5に示す方法実施例における対応するステップを実現し、具体的な実装では、コンピュータ可読記憶媒体720内の第2コンピュータ命令は、プロセッサ710によってロードされ、対応するステップを実行し、簡潔にするために、ここでは繰り返して説明しない。
【0172】
本願の別の態様によれば、本願の実施例は、コンピュータ可読記憶媒体(Memory)をさらに提供し、コンピュータ可読記憶媒体は、プログラム及びデータを格納するための電子機器700内の記憶装置である。例えば、コンピュータ可読記憶媒体720である。理解可能なこととして、ここでのコンピュータ可読記憶媒体720は、電子機器700に内蔵された記憶媒体を含んでいてもよく、もちろん、電子機器700がサポートする拡張記憶媒体を含んでいてもよい。コンピュータ可読記憶媒体は、記憶空間を提供し、当該記憶空間は、電子機器700のオペレーティングシステムを記憶する。また、当該記憶空間には、プロセッサ710によってロードされて実行される1つ又は複数のコンピュータ命令が格納され、コンピュータ命令は、1つ又は複数のコンピュータプログラム721(プログラムコードを含む)であり得る。
【0173】
本願の別の態様によれば、コンピュータプログラム製品又はコンピュータプログラムを提供し、当該コンピュータプログラム製品又はコンピュータプログラムは、コンピュータ命令を含み、当該コンピュータ命令は、コンピュータ可読記憶媒体に記憶される。例えば、コンピュータプログラム721である。このとき、電子機器700は、コンピュータであり得、プロセッサ710は、コンピュータ可読記憶媒体720から当該コンピュータ命令を読み取り、プロセッサ710は、当該コンピュータ命令を実行することにより、当該コンピュータに、上記の様々な代替方式で提供される符号化方法又は復号化方法を実行させる。
【0174】
換言すれば、ソフトウェアを使用して実現する場合、コンピュータプログラム製品の形態で全体的又は部分的に実現することができる。当該コンピュータプログラム製品は、1つ又は複数のコンピュータ命令を含む。コンピュータに当該コンピュータプログラム命令をロードして実行するとき、本願の実施例のプロセスの全部又は一部を実行するか、又は本願の実施例の機能を実現する。当該コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、又は他のプログラマブル装置であり得る。当該コンピュータ命令は、コンピュータ可読記憶媒体に記憶されてもよく、1つのコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に伝送されてもよく、例えば、当該コンピュータ命令は、有線(例えば、同軸ケーブル、光ファイバ、デジタル加入者線(DSL:Digital Subscriber Line))又は無線(赤外線、無線、マイクロ波など)によって、1つのWebサイト、コンピュータ、サーバ又はデータセンタから別のWebサイト、コンピュータ、サーバ又はデータセンタに伝送することができる。
【0175】
当業者なら、本明細書で開示される実施例を参照しながら説明された各例示のユニット及びプロセスステップは、電子ハードウェア、又はコンピュータソフトウェアと電子ハードウェアの組み合わせによって実現されてもよいことを理解することができる。これらの機能がハードウェアで実行されるかソフトウェアで実行されるかは、特定の適用と技術ソリューションの設計上の制約条件によって異なる。専門技術者は、各特定の用途に応じて異なる方法を使用して、説明された機能を実現することができるが、このような実現は、本願の範囲を超えると見なされるべきではない。
【0176】
最後に、説明すべきこととして、上記の内容は、本願の特定の実施形態に過ぎず、本願の保護範囲はこれに限定されない。本願で開示された技術的範囲内で、当業者が容易に想到し得る変形又は置換はすべて、本願の保護範囲内に含まれるべきである。したがって、本願の保護範囲は、特許請求の保護範囲に従うものとする。
【手続補正書】
【提出日】2023-12-11
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
点群の符号化方法であって、
点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得ることと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得ることであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、ことと、
前記量子化残差値を符号化して、コードストリームを得ることと、を含む、点群の符号化方法。
【請求項2】
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて、前記予測残差値を量子化して、前記目標点の属性情報の量子化残差値を得ることは、
目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することと、
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記予測残差値を量子化して、前記量子化残差値を得ることと、を含む、
請求項1に記載の点群の符号化方法。
【請求項3】
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記予測残差値を量子化して、前記量子化残差値を得ることは、
newQstep=「Qstep/effectiveQuantWeight」という式を利用して前記目標点の量子化ステップ長を更新することであって、effectiveQuantWeightは、前記目標点の有効量子化ステップ長を表し、newQstepは、前記目標点の有効量子化ステップ長に基づいて更新された前記目標点の量子化ステップ長を表し、Qstepは、前記目標点の有効量子化ステップ長に基づいて更新される前の前記目標点の量子化ステップ長を表す、ことと、
前記目標点の更新後の量子化ステップ長を利用して前記予測残差値を量子化して、前記量子化残差値を得ることと、を含む、
請求項
2に記載の点群の符号化方法。
【請求項4】
前記点群の符号化方法は、
前記点群の符号化順序の逆順に従って前記点群内の点をトラバースすることにより、現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新することをさらに含み、Nは、0より大きい整数である、
請求項1に記載の点群の符号化方法。
【請求項5】
前記点群の符号化方法は、
前記点群を1つ又は複数のLODに分割することと、をさらに含み、各LODは、1つ又は複数の点を含み、
前記複数のLODのうちの先頭のM個のLOD内の点の量子化重みの初期値は、前記複数のLODのうちの残りのLOD内の点の量子化重みの初期値より大きい、
請求項
4に記載の点群の符号化方法。
【請求項6】
前記点群内の目標点の属性情報を処理して、前記目標点の属性情報の予測残差値を得ることは、
前記目標点の位置情報を処理して、前記目標点の位置情報の再構築情報を得ることと、
前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得ることと、
点群内の前記目標点の属性情報を処理して、前記目標点の属性情報の実値を得ることと、
前記目標点の属性情報の予測値及び前記目標点の属性情報の実値に基づいて、前記予測残差値を得ることと、を含む、
請求項1に記載の点群の符号化方法。
【請求項7】
点群の復号化方法であって、
点群のコードストリームを解析して、前記点群の目標点の属性情報の量子化残差値を得ることと、
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得ることであって、前記目標点の量子化重みは、前記目標点の量子化ステップ長に対して重み付けを行う際に採用される重みである、ことと、
前記再構築残差値及び前記目標点の属性情報の予測値に基づいて、前記目標点の属性情報の再構築値を得ることと、
前記目標点の属性情報の再構築値に基づいて、復号化された点群を得ることと、を含む、点群の復号化方法。
【請求項8】
前記目標点の量子化重み及び前記目標点の量子化ステップ長に基づいて前記量子化残差値を逆量子化して、前記目標点の属性情報の再構築残差値を得ることは、
前記目標点の量子化重みに基づいて、前記目標点の有効量子化重みを決定することと、
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることと、を含む、
請求項
7に記載の点群の復号化方法。
【請求項9】
前記目標点の有効量子化重み及び前記目標点の量子化ステップ長を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることは、
newQstep=「Qstep/effectiveQuantWeight」という式を利用して前記目標点の量子化ステップ長を更新することであって、effectiveQuantWeightは、前記目標点の有効量子化
重みを表し、newQstepは、前記目標点の有効量子化ステップ長に基づいて更新された前記目標点の量子化ステップ長を表し、Qstepは、前記目標点の有効量子化ステップ長に基づいて更新される前の前記目標点の量子化ステップ長を表す、ことと、
前記目標点の更新後の量子化ステップ長を利用して前記量子化残差値を逆量子化して、前記再構築残差値を得ることと、を含む、
請求項
8に記載の点群の復号化方法。
【請求項10】
前記点群の復号化方法は、
前記点群の符号化順序の逆順に従って前記点群内の点をトラバースすることにより、現在点の量子化重みに基づいて前記現在点のN個の最近傍点の量子化重みを更新することをさらに含み、Nは、0より大きい整数である、
請求項
8に記載の点群の復号化方法。
【請求項11】
前記点群の復号化方法は、
前記点群を1つ又は複数のLODに分割することと、をさらに含み、各LODは、1つ又は複数の点を含み、
前記
1つ又は複数のLODのうちの先頭のM個のLOD内の点の量子化重みの初期値は、前記複数のLODのうちの残りのLOD内の点の量子化重みの初期値より大きい、
請求項
10に記載の点群の復号化方法。
【請求項12】
前記点群の復号化方法は、
前記コードストリームを解析して、前記目標点の位置情報の再構築情報を得ることと、
前記目標点の位置情報の再構築情報に基づいて、前記目標点の属性情報の予測値を得ることと、をさらに含む、
請求項
7に記載の点群の復号化方法。
【請求項13】
点群のエンコーダであって、
プロセッサと、
コンピュータプログラムを記憶するためのコンピュータ可読記憶媒体と、を含み、
前記プロセッサは、前記コンピュータプログラムを実行して請求項1~6のいずれか一項に記載の点群の符号化方法を実行するように構成される、
点群のエンコーダ。
【請求項14】
点群のデコーダであって、
プロセッサと、
コンピュータプログラムを記憶するためのコンピュータ可読記憶媒体と、を含み、
前記プロセッサは、前記コンピュータプログラムを実行して請求項1~6のいずれか一項に記載の点群の復号化方法を実行するように構成される、
点群のデコーダ。
【請求項15】
プロセッサによってロードされ、請求項1~
6のいずれか一項に記載の点群の復号化方法、又は請求項
7~
12のいずれか一項に記載の点群の復号化方法を実行するコンピュータ命令を含む、コンピュータ可読記憶媒体。
【国際調査報告】