(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022162485
(43)【公開日】2022-10-24
(54)【発明の名称】点群復号装置、点群符号化装置、点群処理システム、点群復号方法及びプログラム
(51)【国際特許分類】
G06T 9/40 20060101AFI20221017BHJP
H04N 19/597 20140101ALI20221017BHJP
H04N 19/46 20140101ALI20221017BHJP
【FI】
G06T9/40
H04N19/597
H04N19/46
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021067392
(22)【出願日】2021-04-12
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和元年度、総務省、「多様な用途、環境下での高精細映像の活用に資する次世代映像伝送・通信技術の研究開発」委託事業、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】110001564
【氏名又は名称】フェリシテ弁理士法人
(72)【発明者】
【氏名】海野 恭平
(72)【発明者】
【氏名】河村 圭
【テーマコード(参考)】
5B057
5C159
【Fターム(参考)】
5B057CA01
5B057CA08
5B057CA13
5B057CA16
5B057CB01
5B057CB08
5B057CB13
5B057CB16
5B057CC01
5B057CE18
5B057CG03
5C159MA00
5C159MD00
5C159PP03
5C159PP13
5C159RC11
5C159UA02
5C159UA05
(57)【要約】
【課題】各点の属性情報の符号化・復号に際して、インター予測及びイントラ予測を適用するか否かを適応的に決定することで符号化効率を高めること。
【解決手段】本発明に係る点群復号装置200は、属性情報の復号処理に際して、対象の時刻の点群におけるk近傍点、時間的に異なる符号化済み点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点のうち、いずれか1つのk近傍点を用いて予測を行うように構成されている逆リフティング部2100を備える。
【選択図】
図11
【特許請求の範囲】
【請求項1】
点群復号装置であって、
属性情報の復号処理に際して、対象の時刻の点群におけるk近傍点、時間的に異なる符号化済み点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点のうち、いずれか1つのk近傍点を用いて予測を行うように構成されている逆リフティング部を備える、点群復号装置。
【請求項2】
前記逆リフティング部は、復号対象点毎に、前記時刻の点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点、前記いずれか1つのk近傍点を算出し、それぞれのk近傍点のコスト値を基に点毎にいずれのk近傍点を用いるかを決定するように構成されている、請求項1に記載の点群復号装置。
【請求項3】
前記コスト値は、それぞれのk近傍点内の属性値の最大値と最小値との差分値である、請求項2に記載の点群復号装置。
【請求項4】
前記逆リフティング部は、点群符号化装置側から伝送される制御データに基づいて前記時刻の点群におけるk近傍点、前記時間的に異なる符号化済み点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点のうち、いずれのk近傍点を用いるかについて決定するように構成されている、請求項1に記載の点群復号装置。
【請求項5】
点群符号化装置であって、
Trisoup処理を行うノードのエッジに隣接している点及び前記エッジに隣接していない点の両方を考慮して、Trisoupの頂点位置を決定するように構成されている近似表面解析部を備える、点群符号化装置。
【請求項6】
前記近似表面解析部は、前記エッジからの距離に応じて設定した座標値の重み付き平均によって、前記頂点位置を決定するように構成されている、請求項5に記載の点群復号装置。
【請求項7】
点群処理システムであって、
Trisoup処理を行うノードのエッジに隣接している点及び前記エッジに隣接していない点の両方を考慮して、Trisoupの頂点位置を決定するように構成されている近似表面解析部を備える、点群処理システム。
【請求項8】
前記近似表面解析部は、前記エッジからの距離に応じて設定した座標値の重み付き平均によって、前記頂点位置を決定するように構成されている、請求項7に記載の点群処理システム。
【請求項9】
前記近似表面解析部によって決定された前記頂点位置に基づいて、投影面を決定し、前記投影面上で頂点のソート処理を行い、前記ソート処理の結果に基づいて三角形面を生成し、前記三角形面に基づいて点の位置情報を復号するように構成されている近似表面合成部を更に備える、請求項7又は8に記載の点群処理システム。
【請求項10】
属性情報の復号処理に際して、対象の時刻の点群におけるk近傍点、時間的に異なる符号化済み点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点のうち、いずれか1つのk近傍点を用いて予測を行う工程を有する、点群復号方法。
【請求項11】
コンピュータを、点群復号装置として機能させるプログラムであって、
前記点群復号装置は、属性情報の復号処理に際して、対象の時刻の点群におけるk近傍点、時間的に異なる符号化済み点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点のうち、いずれか1つのk近傍点を用いて予測を行うように構成されている逆リフティング部を備える、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、点群復号装置、点群符号化装置、点群処理システム、点群復号方法及びプログラムに関する。
【背景技術】
【0002】
非特許文献1には、属性情報のインター予測技術が開示されている。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Interframe Prediction for Attribute Coding、ISO/IEC JTC1/SC29/WG11 m47838
【非特許文献2】G-PCC codec description、ISO/IEC JTC1/SC29/WG7 N0011
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、非特許文献1では、各点の属性情報の符号化・復号に際して、常にイントラ予測及びインター予測の両方を行うが、符号化効率の観点で点毎にどの予測方法が適切であるかは異なるという問題点があった。
【0005】
そこで、本発明は、上述の課題に鑑みてなされたものであり、各点の属性情報の符号化・復号に際して、インター予測及びイントラ予測を適用するか否かを適応的に決定することで符号化効率を高めることができる点群復号装置、点群符号化装置、点群処理システム、点群復号方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の特徴は、点群復号装置であって、属性情報の復号処理に際して、対象の時刻の点群におけるk近傍点、時間的に異なる符号化済み点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点のうち、いずれか1つのk近傍点を用いて予測を行うように構成されている逆リフティング部を備えることを要旨とする。
【0007】
本発明の第2の特徴は、点群符号化装置であって、Trisoup処理を行うノードのエッジに隣接している点及び前記エッジに隣接していない点の両方を考慮して、Trisoupの頂点位置を決定するように構成されている近似表面解析部を備えることを要旨とする。
【0008】
本発明の第3の特徴は、点群処理システムであって、Trisoup処理を行うノードのエッジに隣接している点及び前記エッジに隣接していない点の両方を考慮して、Trisoupの頂点位置を決定するように構成されている近似表面解析部を備えることを要旨とする。
【0009】
本発明の第4の特徴は、点群復号方法であって、属性情報の復号処理に際して、対象の時刻の点群におけるk近傍点、時間的に異なる符号化済み点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点のうち、いずれか1つのk近傍点を用いて予測を行う工程を有することを要旨とする。
【0010】
本発明の第5の特徴は、コンピュータを、点群復号装置として機能させるプログラムであって、前記点群復号装置は、属性情報の復号処理に際して、対象の時刻の点群におけるk近傍点、時間的に異なる符号化済み点群におけるk近傍点、前記対象の時刻の点群及び前記時間的に異なる符号化済み点群の両方を考慮した場合のk近傍点のうち、いずれか1つのk近傍点を用いて予測を行うように構成されている逆リフティング部を備えることを要旨とする。
【発明の効果】
【0011】
本発明によれば、各点の属性情報の符号化・復号に際して、インター予測及びイントラ予測を適用するか否かを適応的に決定することで符号化効率を高めることができる点群復号装置、点群符号化装置、点群処理システム、点群復号方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、一実施形態に係る点群処理システム10の構成の一例を示す図である。
【
図2】
図2は、一実施形態に係る点群符号化装置100の機能ブロックの一例を示す図である。
【
図3】
図3は、一実施形態に係る点群符号化装置100の近似表面解析部1040による処理の一例を示すフローチャートである。
【
図4】
図4A~
図4Dは、一実施形態に係る点群符号化装置100の近似表面解析部1040による各ノードにおける頂点位置の決定方法の具体例について説明するための図である。
【
図5】
図5A~
図5Cは、一実施形態に係る点群符号化装置100の近似表面解析部1040による処理の一例を説明するための図である。
【
図6】
図6A及び
図6Bは、一実施形態に係る点群符号化装置100の近似表面解析部1040による処理の一例を説明するための図である。
【
図7】
図7は、一実施形態に係る点群符号化装置100の近似表面解析部1040による処理の一例を示すフローチャートである。
【
図8】
図8は、一実施形態に係る点群符号化装置100の近似表面解析部1040による処理の一例を説明するための図である。
【
図9】
図9は、一実施形態に係る点群符号化装置100のリフティング部1110の処理の一例を示すフローチャートである。
【
図10】
図10は、
図9のステップS802の処理の一例を示すフローチャートである。
【
図11】
図11は、一実施形態に係る点群復号装置200の機能ブロックの一例を示す図である。
【
図12】
図12は、一実施形態に係る点群復号装置200の近似表面合成部2030の処理の一例を示すフローチャートである。
【
図13】
図13は、逆リフティング部2100の処理の一例を示すフローチャートである。
【
図14】
図14は、一実施形態に係るリフティング部1110の処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施形態における構成要素は、適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0014】
(第1実施形態)
以下、
図1~
図14を参照して、本発明の第1実施形態に係る点群処理システム10について説明する。
図1は、本実施形態に係る実施形態に係る点群処理システム10を示す図である。
【0015】
図1に示すように、点群処理システム10は、点群符号化装置100及び点群復号装置200を有する。
【0016】
点群符号化装置100は、入力点群信号を符号化することによって符号化データ(ビットストリーム)を生成するように構成されている。点群復号装置200は、ビットストリームを復号することによって出力点群信号を生成するように構成されている。
【0017】
なお、入力点群信号及び出力点群信号は、点群内の各点の位置情報と属性情報とから構成される。属性情報は、例えば、各点の色情報や反射率である。
【0018】
ここで、かかるビットストリームは、点群符号化装置100から点群復号装置200に対して伝送路を介して送信されてもよい。また、ビットストリームは、記憶媒体に格納された上で、点群符号化装置100から点群復号装置200に提供されてもよい。
【0019】
(点群符号化装置100)
以下、
図2を参照して、本実施形態に係る点群符号化装置100について説明する。
図2は、本実施形態に係る点群符号化装置100の機能ブロックの一例について示す図である。
【0020】
図2に示すように、点群符号化装置100は、座標変換部1010と、幾何情報量子化部1020と、ツリー解析部1030と、近似表面解析部1040と、幾何情報符号化部1050と、幾何情報再構成部1060と、色変換部1070と、属性転移部1080と、RAHT部1090と、LoD算出部1100と、リフティング部1110と、属性情報量子化部1120と、属性情報符号化部1130とを有する。
【0021】
座標変換部1010は、入力点群の3次元座標系から、任意の異なる座標系への変換処理を行うよう構成されている。座標変換は、例えば、入力点群を回転することにより、入力点群のx、y、z座標を任意のs、t、u座標に変換してもよい。また、変換のバリエーションの1つとして、入力点群の座標系をそのまま使用してもよい。
【0022】
幾何情報量子化部1020は、座標変換後の入力点群の位置情報の量子化及び座標が重複する点の除去を行うように構成されている。なお、量子化ステップサイズが1の場合は、入力点群の位置情報と量子化後の位置情報とが一致する。すなわち、量子化ステップサイズが1の場合は、量子化を行わない場合と等価になる。
【0023】
ツリー解析部1030は、量子化後の点群の位置情報を入力として、後述のツリー構造に基づいて、符号化対象空間のどのノードに点が存在するかについて示すoccupancy codeを生成するように構成されている。
【0024】
ツリー解析部1030は、本処理において、符号化対象空間を再帰的に直方体で区切ることにより、ツリー構造を生成するように構成されている。
【0025】
ここで、ある直方体内に点が存在する場合、かかる直方体を複数の直方体に分割する処理を、直方体が所定のサイズになるまで再帰的に実行することでツリー構造を生成することができる。なお、かかる各直方体をノードと呼ぶ。また、ノードを分割して生成される各直方体を子ノードと呼び、子ノード内に点が含まれるか否かについて0又は1で表現したものがoccupancy codeである。
【0026】
以上のように、ツリー解析部1030は、所定のサイズになるまでノードを再帰的に分割しながら、occupancy codeを生成するように構成されている。
【0027】
本実施形態では、上述の直方体を常に立方体として8分木分割を再帰的に行う「Octree」と呼ばれる手法、及び、8分木分割に加え、4分木分割及び2分木分割を行う「QtBt」と呼ばれる手法を使用することができる。
【0028】
ここで、「QtBt」を使用するか否かについては、制御データとして点群復号装置200に伝送される。
【0029】
或いは、任意のツリー構成を用いるPredicitive codingを使用するように指定されてもよい。かかる場合、ツリー解析部1030が、ツリー構造を決定し、決定されたツリー構造は、制御データとして点群復号装置200へ伝送される。
【0030】
近似表面解析部1040は、ツリー解析部1030によって生成されたツリー情報を用いて、近似表面情報を生成するように構成されている。
【0031】
近似表面情報は、例えば、物体の3次元点群データを復号する際等において、点群が物体表面に密に分布しているような場合に、個々の点群を復号するのではなく、点群の存在領域を小さな平面で近似して表現したものである。
具体的には、近似表面解析部1040は、例えば、「Trisoup」と呼ばれる手法で、近似表面情報を生成するように構成されていてもよい。
【0032】
「Trisoup」の具体的な処理例については後述する。また、Lidar等で取得した疎な点群を復号する場合は、本処理を省略することができる。
幾何情報符号化部1050は、ツリー解析部1030によって生成されたoccupancy code及び近似表面解析部1040によって生成された近似表面情報等のシンタックスを符号化してビットストリーム(幾何情報ビットストリーム)を生成するように構成されている。
【0033】
符号化処理は、例えば、コンテキスト適応二値算術符号化処理である。ここで、例えば、シンタックスは、位置情報の復号処理を制御するための制御データ(フラグやパラメータ)を含む。
【0034】
幾何情報再構成部1060は、ツリー解析部1030によって生成されたツリー情報及び近似表面解析部1040によって生成された近似表面情報に基づいて、符号化対象の点群データの各点の幾何情報(符号化処理が仮定している座標系、すなわち、座標変換部1010における座標変換後の位置情報)を再構成するように構成されている。
【0035】
色変換部1070は、入力の属性情報が色情報であった場合に、色変換を行うように構成されている。色変換は、必ずしも実行する必要は無く、色変換処理の実行の有無については、制御データの一部として符号化され、点群復号装置200へ伝送される。
【0036】
属性転移部1080は、入力点群の位置情報、幾何情報再構成部1060における再構成後の点群の位置情報及び色変換部1070での色変化後の属性情報に基づいて、属性情報の歪みが最小となるように属性値を補正するように構成されている。具体的な補正方法は、例えば、非特許文献2に記載の方法を適用できる。
【0037】
RAHT部1090は、属性転移部1080による転移後の属性情報及び幾何情報再構成部1060によって生成された幾何情報を入力とし、RAHT(Region Adaptive Hierarchical Transform)と呼ばれるHaar変換の一種を用いて、各点の残差情報を生成するように構成されている。RAHTの具体的な処理としては、例えば、非特許文献2に記載の方法を用いることができる。
LoD算出部1100は、幾何情報再構成部1060によって生成された幾何情報を入力とし、LoD(Level of Detail)を生成するように構成されている。
【0038】
LoDは、ある点の属性情報から、他のある点の属性情報を予測し、予測残差を符号化或いは復号するといった予測符号化を実現するための参照関係(参照する点及び参照される点)を定義するための情報である。
【0039】
言い換えると、LoDは、幾何情報に含まれる各点を複数のレベルに分類し、下位のレベルに属する点については上位のレベルに属する点の属性情報を用いて属性を符号化或いは復号するといった階層構造を定義した情報である。
【0040】
LoDの具体的な決定方法としては、例えば、非特許文献2に記載の方法を用いてもよい。
【0041】
リフティング部1110は、LoD算出部1100によって生成されたLoD及び属性転移部1080での属性転移後の属性情報を用いて、リフティング処理により残差情報を生成するように構成されている。
【0042】
リフティングの具体的な処理としては、例えば、非特許文献2に記載の方法を用いてもよい。
【0043】
属性情報量子化部1120は、RAHT部1090又はリフティング部1110から出力される残差情報を量子化するように構成されている。ここで、量子化ステップサイズが1の場合は、量子化を行わない場合と等価である。
【0044】
属性情報符号化部1130は、属性情報量子化部1120から出力される量子化後の残差情報等をシンタックスとして符号化処理を行い、属性情報に関するビットストリーム(属性情報ビットストリーム)を生成するように構成されている。
【0045】
符号化処理は、例えば、コンテキスト適応二値算術符号化処理である。ここで、例えば、シンタックスは、属性情報の復号処理を制御するための制御データ(フラグ及びパラメータ)を含む。
【0046】
点群符号化装置100は、以上の処理により、点群内の各点の位置情報及び属性情報を入力として符号化処理を行い、幾何情報ビットストリーム及び属性情報ビットストリームを出力するように構成されている。
【0047】
(近似表面解析部1040)
以下、
図3~
図8を用いて、本実施形態における近似表面解析部1040の処理の一例を説明する。
【0048】
ここで、近似表面解析部1040の処理に先立って、ツリー合成部2020において所定のサイズになるまでノードを分割する。かかる所定のサイズは、例えば、点群符号化装置100側で決定され、制御情報として点群復号装置200側に伝送され得る。かかる所定サイズのノード毎に、例えば、以下に説明する処理を実行する。
【0049】
図3は、近似表面解析部1040の処理の一例を示すフローチャートである。
【0050】
図3に示すように、ステップS301において、近似表面解析部1040は、各ノードにおける頂点位置を決定する。
【0051】
かかる頂点位置は、
図5Aに示すように、直方体(立方体の場合も含む)の辺上にのみ存在する。また、各辺に対して存在できる頂点は、1点ずつである。すなわち、近似表面解析部1040は、ノード毎に最大で12点の頂点を生成する。
図5Aは、5点の頂点が生成された場合の例を示している。
【0052】
かかる頂点位置の決定方法の具体例について、
図4を用いて説明する。かかる頂点位置は、
図4Aに示すように、ノードのエッジ(辺)近傍の点を用いて決定される。
【0053】
なお、
図4Aに示すように、あるノードのエッジは、隣接するノードと共有されている。よって、近似表面解析部1040は、あるエッジ上の頂点を決定する際は、全ての隣接するノード内に存在する点を考慮する。
【0054】
ここで、
図4Aの中央の太線になっているエッジ上の頂点を決定する場合を例に説明する。
【0055】
図4Bは、
図4Aを正面から見た図である。言い換えると、
図4Aのy座標軸方向を縮退し、x-z平面に投影した図である。
【0056】
図4Bにおける直線は、ノードのエッジを示し、
図4Bにおける円は、点が取り得る座標位置を示している。ここで、
図4Bにおいて、円の中に4と書かれている4点は、エッジに隣接する位置に存在する点である。言い換えると、
図4Bにおいて、円の中に4と書かれている4点は、エッジからの距離がz軸方向及びx軸方向両方において0である点である。
【0057】
非特許文献2は、エッジに隣接する位置に存在する点、すなわち、エッジからの距離がz軸方向及びx軸方向両方において0である点が存在する場合、それらの点のy軸座標の平均値を算出することにより、当該エッジ上の頂点位置を決定している。
【0058】
しかし、非特許文献2に記載の手法では、ノード内に点群が面状に分布していた場合でも、偶然エッジからの距離がz軸方向及びx軸方向両方において0の位置に点が存在しなかった場合、当該エッジには頂点が生成されない。
【0059】
したがって、後述するステップS304及びステップS305のように、頂点位置に基づいて点が生成される場合、頂点が存在しない場合は、当該エッジ周辺には点が生成されなくなってしまう。よって、主観的には穴が開いたような見た目になってしまう。
【0060】
本実施形態では、
図4Bのように、エッジからの距離が0より大きな点も頂点の算出処理の際に考慮される。例えば、
図4Bは、エッジからの距離がz軸方向及びx軸方向ともに1以下の範囲の点を考慮する場合の例を示している。
【0061】
本実施形態では、近似表面解析部1040は、頂点位置の決定処理に際して使用する点の範囲を拡大するとともに、単純なy座標値の平均ではなく、例えば、エッジからの距離に応じた重み付き平均によって頂点位置を決定する。
【0062】
かかる重みは、例えば、エッジからの距離が最も離れた点の重みを1として、z軸方向及びx軸方向それぞれ1ずつエッジに近づくにつれて重みを2倍にするように決定されてもよい。
【0063】
図4B内の各点の中に書いてある数字(4、2、1)は、上述の方法に基づいて算出された重みを示している。すなわち、近似表面解析部1040は、エッジからの距離が(x、z)=(1、1)の点の重みを1と決定し、エッジからの距離が(1、0)又は(0、1)の点の重みを2と決定し、エッジからの距離が(0、0)の点の重みを4と決定することができる。
【0064】
ここでは、エッジからの距離が最大で1の場合について説明したが、同様の手法でエッジからの距離を拡大した場合についても重みを求めることができる。
【0065】
頂点決定に際して考慮する点のエッジからの距離は、上述のノードの所定サイズに基づいて決定されてもよい。例えば、近似表面解析部1040は、所定サイズの1/4とするといったように決定することができる。
【0066】
或いは、
図4Cのように、近似表面解析部1040は、点の位置と重なるようにエッジの位置を定義してもよい。
【0067】
非特許文献2に記載の手法は、
図4Cのグレーで塗りつぶした位置に存在する点のみを考慮することと等価である。一方、本実施形態では、例えば、近似表面解析部1040は、エッジの位置を中心として対称となる範囲の点を考慮して頂点位置を決定してもよい。
【0068】
言い換えると、近似表面解析部1040は、エッジの座標を中心として±N(Nは、自然数)の範囲内に含まれる点を考慮して頂点位置を決定してもよい。例えば、
図4Cのグレーで塗りつぶした位置及び白で塗りつぶした位置は、エッジを中心としてx軸方向及びz軸方向の座標を±1した範囲、すなわちN=1の場合の例を示している。
【0069】
さらに、
図4Dのように、近似表面解析部1040は、エッジからの距離に応じて重みを設定してもよい。重みの決定方法は、上記と同様に決定することができる。
【0070】
以上のように、頂点位置の決定処理に際して考慮する点のエッジからの距離を広げることで、点が面状に分布しているにもかかわらず頂点が生成されないという状況を防ぎ、主観品質の劣化を抑えることができる。
【0071】
また、エッジからの距離に基づいた重み付き平均によって頂点位置を決定することで、従来の方法でエッジに隣接した点のみから頂点を生成できていた場合から結果が大きく変わってしまうことを防ぎ、客観品質の劣化を防ぐことができる。
【0072】
以上のように決定した頂点位置は、幾何情報符号化部1050で符号化され、ビットストリームとして点群復号装置200へ伝送される。
【0073】
なお、ステップS301は、上述のようにノード間に存在するエッジ上の頂点を決定する処理であるため、あるエッジに隣接する全てのノード内に存在する点を考慮する必要がある。よって、ステップS302に移る前に、符号化対象点群内の全てのノードについて頂点位置を決定してから、次のステップS302へ進む。
【0074】
一方、ステップS302~S305は、ノード毎に独立して実行する。
【0075】
ステップS302において、近似表面解析部1040は、投影面を決定する。投影面決定処理に先立って、ステップS301で決定した頂点の中から、当該ノードのエッジ上に存在する頂点を一点ずつ抽出する。ここで、ある頂点の座標(x、y、zの値)が、既に抽出した頂点の座標と完全に同一の場合は、既に抽出した頂点のみを当該ノードの頂点として残し、座標が重複する点は当該ノードの頂点として加えないようにしてもよい。これにより、ステップS302~S305において、座標が完全に同一の頂点が複数存在することで不要な処理が発生するのを防ぐことができる。
【0076】
ここで、近似表面解析部1040は、各頂点のx軸方向座標、y軸方向座標及びz軸方向座標のうち、それぞれ最大値と最小値とを用いて投影面を決定する。
【0077】
例えば、非特許文献2に記載されているように、近似表面解析部1040は、各頂点の座標のx軸方向、y軸方向及びz軸方向の分散を計算し、かかる分散が最も小さい軸方向を縮退するように、かかる投影面を決定してもよい。
【0078】
すなわち、近似表面解析部1040は、z軸方向の分散が最も小さい場合には、z軸方向を縮退して、x-y平面を投影面として決定してもよい。
【0079】
また、近似表面解析部1040は、y軸方向の分散が最も小さい場合には、y軸方向を縮退して、x-z平面を投影面として決定してもよい。
【0080】
さらに、近似表面解析部1040は、x軸方向の分散が最も小さい場合には、x軸方向を縮退して、y-z平面を投影面として決定してもよい。
【0081】
或いは、近似表面解析部1040は、各頂点の座標のx軸方向、y軸方向及びz方向の最大値と最小値との差分値を算出し、かかる差分値が最も小さい軸方向を縮退し、残りの2つの軸方向で構成される面を投影面と決定してもよい。
【0082】
図5Bは、
図5Aの頂点A~Eをx-y平面に投影したケースについて示し、
図5Cは、
図5Aの頂点A~Eをx-z平面に投影したケースについて示す。
【0083】
ここで、x軸方向の座標の最小値及び最大値は、それぞれ
図5Bのxmin及びxmaxに相当し、y軸方向の座標の最小値及び最大値は、それぞれ
図5Bのymin及びとymaxに相当し、z軸方向の座標の最小値及び最大値は、それぞれ
図5Cのzmin及びzmaxに相当する。
【0084】
近似表面解析部1040は、上述の最大値と最小値との差分値(例えば、x軸方向であれば、xmax-xmin)をそれぞれ各軸方向について計算し、かかる差分値が最も小さい軸方向を縮退する。
【0085】
例えば、
図5の例では、z軸方向の差分値(zmax-zmin)が最も小さくなるため、近似表面解析部1040は、z軸方向を縮退して、投影面をx-y平面に決定することができる。
【0086】
以上のように、近似表面解析部1040は、各頂点のx軸方向、y軸方向及びz軸方向座標のうち、最大値と最小値の差が最も小さい軸方向を縮退し、残りの2つの軸方向で構成される面を投影面と決定するように構成されている。
【0087】
以上のような構成とすることで、分散を用いて投影面を決定する場合と比較して、演算量を削減することができる。ソフトウェアで実装する場合は、処理時間を削減することができ、ハードウェアで実装する場合は、回路規模及び消費電力を削減することができる。
【0088】
ステップS303において、近似表面解析部1040は、各頂点をソートして、各頂点にインデックス(index)を付与する。
図6~
図7を用いて、ステップS303における処理の一例を説明する。
【0089】
図6は、
図4に示す頂点位置の例において、近似表面解析部1040がz軸方向を縮退してx-y平面上に頂点を投影した場合の例である。ここで、以下では、x軸をa軸としy軸をb軸として説明する。
【0090】
なお、y軸方向が縮退された場合にはx軸をa軸としz軸をb軸として、また、x軸方向が縮退された場合にはy軸をa軸としz軸をb軸として、それぞれ以下の処理を適用することができる。
【0091】
また、以下の説明では、
図6Aに示すように、各頂点A~Eの座標をa-b平面に投影した長方形の中心を原点Oとした場合の座標として表現することとする。なお、以下では、長方形の一種として正方形が投影面とされた場合を例に説明するが、辺の長さを適切に考慮することで、下記と同様な方法で長方形にも対応可能である。
【0092】
図7は、ステップS303において、各頂点をソートしインデックスを付与する手順の一例を示すフローチャートである。
【0093】
図8に示すように、ステップS601において、近似表面解析部1040は、該当するノードの全ての頂点について、後述するスコアを算出したかどうかを判定する。
【0094】
全ての頂点についてスコアが算出済みであると判定された場合、本手順は、ステップS609へ進み、そうでない場合、本手順は、ステップS602へ進む。
【0095】
ステップS602において、近似表面解析部1040は、現在処理している頂点が、
図6Bにおける辺pq上に存在しているか否かを判定する。辺pq上に存在するかどうかは、例えば、当該頂点のa座標が、ノードサイズ(以下、NSとする)の半分であるか否か、すなわち、NS/2であるか否かによって判定できる。
【0096】
当該頂点が辺pq上に存在していると判定された場合は、本手順は、ステップS603へ進み、そうでない場合は、本手順は、ステップS604へ進む。
【0097】
ステップS603において、近似表面解析部1040は、当該頂点のスコアを算出する。例えば、当該頂点が辺pq上にある場合は、近似表面解析部1040は、当該頂点のb座標をそのままスコアとして用いる。
【0098】
ステップS603においてスコアが算出された後、本手順は、ステップS601へ進み、近似表面解析部1040は、次の頂点について処理を行う。
【0099】
ステップS604において、近似表面解析部1040は、現在処理している頂点が、
図6Bにおける辺qr上に存在しているか否かを判定する。辺qr上に存在するかどうかは、例えば、当該頂点のb座標が、NSの半分であるか否か、すなわち、NS/2であるか否かによって判定できる。
【0100】
当該頂点が辺qr上に存在していると判定された場合は、本手順は、ステップS605へ進み、そうでない場合は、本手順は、ステップS606へ進む。
【0101】
ステップS605において、近似表面解析部1040は、当該頂点のスコアを算出する。例えば、当該頂点が辺qr上にある場合は、近似表面解析部1040は、当該頂点のa座標を用いて、スコア=-a+NSとする。
【0102】
ステップS605においてスコアが算出された後、本手順は、ステップS601へ進み、近似表面解析部1040は、次の頂点について処理を行う。
【0103】
ステップS606において、近似表面解析部1040は、現在処理している頂点が、
図6Bにおける辺rs上に存在しているか否かを判定する。辺rs上に存在するかどうかは、例えば、当該頂点のa座標が、NSの半分であるか否か、すなわち、NS/2であるか否かによって判定できる。
【0104】
当該頂点が辺rs上に存在すると判定された場合は、本手順は、ステップS607へ進み、そうでない場合は、本手順は、ステップS608へ進む。
【0105】
ステップS607において、近似表面解析部1040は、当該頂点のスコアを算出する。例えば、当該頂点が辺rs上にある場合は、近似表面解析部1040は、当該頂点のb座標を用いて、スコア=-b+NS*2とする(ここで、*は、乗算を示す)。
【0106】
ステップSS607においてスコアが算出された後、本手順は、ステップS601へ進み、近似表面解析部1040は、次の頂点について処理を行う。
【0107】
ステップS608において、近似表面解析部1040は、当該頂点のスコアを算出する。例えば、当該頂点が
図6Bにおける辺sp上にある場合は、近似表面解析部1040は、当該頂点のa座標を用いて、スコア=a+NS*3とする(ここで、*は、乗算を示す)。
【0108】
ステップSS608においてスコアが算出された後、本手順は、ステップS601へ進み、近似表面解析部1040は、次の頂点について処理を行う。
【0109】
ステップS609において、近似表面解析部1040は、各頂点のスコア(上述の例では、-NS/2~NS*7/2の値を取る)が小さい順に各頂点をソートし、スコアが小さい順に各頂点にインデックスを付与する。
【0110】
その後、本手順は、ステップS610へ進み、処理を終了する。
【0111】
なお、上述の例では、各頂点のスコア値として、負の値を取れるようにしたが、例えば、全体にNS/2を加えて必ず非負の値(例えば、0~4*NS)となるように定義してもよい。
【0112】
また、上述の例では、座標値を実数精度で表現するケースを例に挙げて説明したが、本発明は、かかるケースに限定されることなく、座標値を整数値で表現する場合、適宜除算による誤差を補正するためのオフセット(+1又は-1)を加えることで、上述の実数精度の例と等価な処理を実現できる。
【0113】
上述の手順では、
図6Aに示すように投影した長方形の右下の頂点から反時計回りとなる順番で各頂点にインデックスが付与される。なお、
図6Aにおける「B:0」とは、頂点Bのインデックスが「0」であることを意味しており、その他の頂点についても同様である。
【0114】
上述の例では、
図6Aにおける長方形の右下を起点として反時計回りになる順で各頂点にインデックスが付与されているが、起点は、右下以外でも明確に決まっていればよい。すなわち、起点は、長方形の辺上に存在していればどこでもよい。
【0115】
また、起点は、近似表面解析部1040における符号化処理に先立って1か所に決定されてもよいし、ノード毎に適応的に起点の位置が変更されてもよい。例えば、起点は、頂点が最も多い辺に最後にインデックスが付与されるように決定されてもよい。
【0116】
図6A及び
図6Bの例では、辺sp上に最も頂点が多いため、各頂点にインデックスを反時計回りの順で付与する場合は、起点を頂点pの位置と決定できる。
【0117】
また、近似表面解析部1040は、反時計回りではなく、起点から時計回りとなる順で各頂点にインデックスを付与してもよい。
【0118】
いずれにせよ、近似表面解析部1040は、投影した長方形の辺上に起点を設定し、各頂点にインデックスを付与する順序を決定する際に、頂点が必ず長方形の辺上に存在するという特徴を利用して、座標値から時計回り又は反時計回りとなるように各頂点にインデックスを付与するように構成されていれば、上述以外の手法を用いてもよい。
【0119】
以上のように、近似表面解析部1040は、垂直方向の辺上にある頂点に対して、垂直方向軸の座標値を用いてインデックスを扶養するように構成されていてもよい。
【0120】
同様に、近似表面解析部1040は、水平方向の辺上にある頂点に対して、水平方向軸の座標値を用いてインデックスを付与するように構成されていてもよい。
【0121】
また、近似表面解析部1040は、平面上に投影された長方形の辺上に起点を設定し、かかる起点から時計回り又は反時計回りとなるように各頂点にインデックスを付与するように構成されていてもよい。
【0122】
以上のような構成とすることで、後段のステップS304の処理と組み合わせて、三角形で定義される面で適切に点の分布を生成できる。これに対して、非特許文献2の方法では、アークタンジェントの近似が正しくなく、各頂点のインデックスが時計回り又は反時計回りの順にはならないため、適切に点の分布を生成できない。
【0123】
更に、非特許文献2の方法では、アークタンジェントの近似計算において除算が行われているが、本実施形態の処理は、基本的に加減算のみで実現できる(NS/2等のオフセット値は、TrisoupのNSに応じて予め算出しておくことで、定数として扱える)。よって、本実施形態によれば、非特許文献2の方法と比較して、特に、ハードウェアで実装した際に処理サイクル数を短縮することができる。
【0124】
以上のように、各頂点をソートしてインデックスが付与された後、本処理は、
図3のステップS304へ進む。
【0125】
ステップS304において、近似表面解析部1040は、ステップS303で付与した各頂点のインデックスを基に、三角形を生成する。
【0126】
例えば、
図6Aに示すように、頂点が5点の場合、近似表面解析部1040は、
図8に示すように、3つの三角形を生成することができる。
【0127】
かかる三角形の生成は、例えば、非特許文献2に記載のように、三角形を構成するための頂点のインデックスの組み合わせを予め定義しておくことで実現できる。
【0128】
図7は、例えば、頂点が5点の場合は、三角形を構成するための頂点のインデックスの組み合わせが{0、1、2}、{0、2、4}、{2、3、4}となる3点で、それぞれ三角形を生成するように予め定義されていた場合の例である。
【0129】
以上のように三角形が生成された後、本処理は、ステップS305へ進む。
【0130】
ステップS305において、近似表面解析部1040は、ステップS304で生成した三角形を基に、点を生成する。三角形から点を生成する方法としては、例えば、非特許文献2に記載の方法を適用することができる。
【0131】
以上のような手順で、全てのノードについて点を生成した後、ステップS306へ進んで処理を終了する。
【0132】
(リフティング部1110)
以下、
図9、
図10及び
図14を参照して、本実施形態に係るリフティング部1110の処理の一例を説明する。
【0133】
図9は、リフティング部1110の処理の一例を示すフローチャートである。
【0134】
図9に示すように、ステップS801において、リフティング部1110は、kNN(k近傍探索)処理を行う。
【0135】
kNNは、符号化対象の点を基準として設定した探索範囲内の点について、符号化対象点との距離(L1距離やL2距離)が小さい順にk点(k近傍点)を収集する処理である。
【0136】
ここで、kの具体的な値は、点群符号化装置100側で決定され、制御データとして点群復号装置200側に伝送されてもよいし、点群符号化装置100側及び点群復号装置200側で共通して予め決定した所定の値が用いられてもよい。
【0137】
かかる探索範囲は、例えば、非特許文献2に記載のように、各点の座標から算出したMorton codeを基準に設定され得る。
【0138】
本実施形態では、入力として時間方向に連続した点群を用いる場合を想定する。kNN探索を、それぞれ以下の3パターンについて実行して、それぞれk近傍点を収集する。
(1)当該時刻(対象の時刻)の点群におけるk近傍点(イントラ予測)
(2)時間的に異なる符号化済み点群におけるk近傍点(インター予測)
(3)イントラ予測及びインター予測の両方を考慮した場合のk近傍点
なお、リフティング部1110は、(2)のパターンにおけるk近傍探索の基準点を、符号化対象点の座標位置又は動きベクトルによって動き補償された座標位置としてもよい。動きベクトルの導出方法は、公知の方法が適用できるため、詳細な説明については省略する。
【0139】
また、上述の時間的に異なる符号化済み点群は、点群符号化装置100側で復号処理と等価な処理を実施して生成した再構成点群を、図示しないフレームバッファに格納しておいたものである。例えば、点群を時系列順に符号化している場合、例えば、上述の時間的に異なる符号化済み点群として、直前の時刻の点群を用いることができる。
【0140】
また、リフティング部1110は、(3)のパターンでは、イントラ予測において符号化対象点の座標位置を基準点とし、インター予測において(2)のパターンと同様の方法で決定した座標位置を基準点として、かかる基準点からの距離が小さいk点を収集してもよい。
【0141】
この時、リフティング部1110は、インター予測の距離として、単純なL1距離やL2距離Dを基に、下記のように補正した値D#interを距離として用いてもよい。
D#inter=a*D+b
ここで、a及びbは、定数である。上述の(1)~(3)のパターンのそれぞれについて、k近傍点が収集された後、本手順は、ステップS802へ進む。
【0142】
ステップS802において、リフティング部1110は、先に探索した(1)~(3)のパターンにおけるk近傍点のうち、どのk近傍点を用いるかを決定する。
【0143】
図10は、ステップS802の処理の一例を示すフローチャートである。
【0144】
図10に示すように、ステップS901において、リフティング部1110は、上述の(1)~(3)のパターンのそれぞれについてコスト値を算出する。ここで、コスト値は、例えば、各k近傍点内の属性値の最大値と最小値との差分値であってもよい。
【0145】
ステップS902において、リフティング部1110は、上述の(1)~(3)のパターンにおけるコスト値のうち、どの値が最小であるかを判定する。
【0146】
(1)のパターンにおけるコストが最小の場合、本手順は、ステップS903へ進み、リフティング部1110は、(1)のパターンにおけるk近傍点を使用することを決定する。
【0147】
(2)のパターンにおけるコストが最小の場合、本手順は、ステップS904へ進み、リフティング部1110は、(2)のパターンにおけるk近傍点を使用することを決定する。
【0148】
(3)のパターンにおけるコストが最小の場合、本手順は、ステップS905へ進み、リフティング部1110は、(3)のパターンにおけるk近傍点を使用することを決定する。
【0149】
最後に、本手順は、ステップS906へ進み、処理を終了する。
以上のように、リフティング部1110は、ステップS802では探索した(1)~(3)のパターンにおけるk近傍点のうち、どのk近傍点を用いるかを決定し、本手順は、ステップS803へ進む。
【0150】
なお、以上ではコスト値が最小となるパターンを選択する例を説明したが、
図14に示すように、コスト値の比較を2段階で実施してもよい。例えば、
図14の例では、ステップS1401において、(1)のコストと(3)のコストとを比較し、(1)のコストが(3)のコストより小さい場合は、本手順は、ステップS903へ進み、そうでない場合は、本手順は、ステップS1402へ進む。
【0151】
ステップS1402において、(2)のコストと(3)のコストとを比較し、(2)のコストが(3)のコストより小さい場合は、本手順は、ステップS904へ進み、そうでない場合は、本手順は、ステップS905へ進む。
【0152】
また、以上では、(1)~(3)の3パターンからいずれかを選択する場合について説明したが、(1)~(3)のうちいずれか2パターンの中から選択してもよい。
【0153】
例えば、(1)及び(3)の2パターンのうちいずれかを選択する形でもよい。これは、例えば、
図14のステップS1401で、(1)のコストが(3)のコストより小さい場合は、本手順がステップS903へ進み、そうでない場合は、本手順がステップS905へ進むことと等価である。ここで、(1)及び(3)の2パターンというのは一例であり、(1)~(3)の3パターンのうちいずれか2パターンの組み合わせであればよい。
【0154】
以上で説明したS802の手順は、既に符号化済み又は復号済みの点の属性値のみを用いて、上記(1)~(3)のうちどのパターンを使用するかを決定する方法である。上述の通り、既に符号化済み又は復号済みの点の情報のみを用いるため、点群符号化装置100(リフティング部1110)及び点群復号装置200(逆リフティング部2100)の両方において全く同じ処理が可能である。言い換えると、上記(1)~(3)のうちどのパターンを使用するかという情報は、点群復号装置200で導出可能であるため、点群符号化装置100から付加情報として伝送する必要がない。
【0155】
一方、S802の手順の代わりに、上記(1)~(3)のうちどのパターンを使用するかをリフティング部1110で決定し、かかるどのパターンを使用するか等情報を点群符号化装置100から点群復号装置200に伝送してもよい。どのパターンを使用するかは、例えば、各パターンを使用した場合の符号量と歪み(MSEやPSNR)等で定義されるコスト関数の値が最も小さくなるパターンを選択してもよい。パターンの選択単位は、点毎でもよいし、予め定めたノードサイズ毎でもよい。また、動きベクトルを使用する場合は、動きベクトルの導出単位ごとに選択してもよい。
【0156】
ステップS803において、リフティング部1110は、ステップS802で決定したk近傍点の属性値の変化が小さいか大きいかどうかを判定する。具体的な判定方法としては、非特許文献2に記載の方法を適用することができる。
【0157】
かかる変化が小さい場合は、本手順は、ステップS805へ進む。かかる変化が大きい場合は、本手順は、ステップS804へ進む。
【0158】
ステップS804において、リフティング部1110は、k近傍点に基づいて予測値を生成する場合の予測器を選択する。
【0159】
予測器(予測の方法)としては、非特許文献2に記載のように、k近傍点の重み付き平均や、k近傍点内のある点の属性値をそのまま予測値とする、といった方法を適用することができる。
【0160】
予め複数の予測器を用意しておき、例えば、リフティング部1110は、かかる複数の予測器の中から、符号化効率が最もよくなる予測器を選択する。具体的な選択方法としては、公知の方法を適用することができるため、詳細な説明については省略する。
【0161】
選択した予測器の情報は、符号化されてビットストリームとして点群復号装置200へ伝送される。
【0162】
予測器が選択された後、本手順は、ステップS805へ進む。
【0163】
ステップS805において、リフティング部1110は、符号化対象の点の予測値を生成する。
【0164】
ステップS803で変化が小さいと判定された場合は、ステップS805において、リフティング部1110は、k近傍点の重み付き平均によって予測値を生成する。
【0165】
一方、ステップS803で変化が小さいと判定されなかった場合は、ステップS805において、ステップS804で決定した予測器によって予測値を生成する。
【0166】
具体的な予測値の生成方法については、非特許文献2に記載の方法を適用することができるため、詳細な説明については省略する。
【0167】
予測値が生成された後、本手順は、ステップS806へ進む。
【0168】
ステップS806において、リフティング部1110は、符号化対象点の属性情報の値とステップS805で生成された予測値との差分を算出し、残差情報を生成する。
【0169】
その後、本手順は、ステップS807へ進み、処理を終了する。
【0170】
(点群復号装置200)
以下、
図11を参照して、本実施形態に係る点群復号装置200について説明する。
図11は、本実施形態に係る点群復号装置200の機能ブロックの一例について示す図である。
【0171】
図11に示すように、点群復号装置200は、幾何情報復号部2010と、ツリー合成部2020と、近似表面合成部2030と、幾何情報再構成部2040と、逆座標変換部2050と、属性情報復号部2060と、逆量子化部2070と、RAHT部2080と、LoD算出部2090と、逆リフティング部2100と、逆色変換部2110とを有する。
【0172】
幾何情報復号部2010は、点群符号化装置100から出力されるビットストリームのうち、幾何情報に関するビットストリーム(幾何情報ビットストリーム)を入力とし、シンタックスを復号するように構成されている。
【0173】
復号処理は、例えば、コンテキスト適応二値算術復号処理である。ここで、例えば、シンタックスは、位置情報の復号処理を制御するための制御データ(フラグやパラメータ)を含む。
【0174】
ツリー合成部2020は、幾何情報復号部2010によって復号された制御データ及び後述するツリー内のどのノードに点群が存在するかを示すoccupancy codeを入力として、復号対象空間内のどの領域に点が存在するかというツリー情報を生成するように構成されている。
【0175】
本処理は、復号対象空間を直方体で区切り、occupancy codeを参照して各直方体内に点が存在するかを判断し、点が存在する直方体を複数の直方体に分割し、occupancy codeを参照するという処理を再帰的に繰り返すことで、ツリー情報を生成することができる。
【0176】
本実施形態では、上述の直方体を常に立方体として8分木分割を再帰的に行う「Octree」と呼ばれる手法、及び、8分木分割に加え、4分木分割及び2分木分割を行う「QtBt」と呼ばれる手法を使用することができる。「QtBt」を使用するか否かは、制御データとして点群符号化装置100側から伝送される。
【0177】
或いは、制御データによってPredicitive codingを使用するように指定された場合、ツリー合成部2020は、点群符号化装置100において決定した任意のツリー構成に基づいて各点の座標を復号するように構成されている。
【0178】
近似表面合成部2030は、ツリー合成部2020によって生成されたツリー情報を用いて近似表面情報を生成するように構成されている。
【0179】
近似表面情報は、例えば、物体の3次元点群データを復号する際等において、点群が物体表面に密に分布しているような場合に、個々の点群を復号するのではなく、点群の存在領域を小さな平面で近似して表現したものである。
【0180】
具体的には、近似表面合成部2030は、例えば、「Trisoup」と呼ばれる手法で、近似表面情報を生成し、点群を復号することができる。「Trisoup」の具体的な処理例については後述する。また、Lidar等で取得した疎な点群を復号する場合は、本処理を省略することができる。
【0181】
幾何情報再構成部2040は、ツリー合成部2020によって生成されたツリー情報及び近似表面合成部2030によって生成された近似表面情報を元に、復号対象の点群データの各点の幾何情報(復号処理が仮定している座標系における位置情報)を再構成するように構成されている。
【0182】
逆座標変換部2050は、幾何情報再構成部2040によって再構成された幾何情報を入力として、復号処理が仮定している座標系から、出力点群信号の座標系に変換を行い、位置情報を出力するように構成されている。
【0183】
属性情報復号部2060は、点群符号化装置100から出力されるビットストリームのうち、属性情報に関するビットストリーム(属性情報ビットストリーム)を入力とし、シンタックスを復号するように構成されている。
【0184】
復号処理は、例えば、コンテキスト適応二値算術復号処理である。ここで、例えば、シンタックスは、属性情報の復号処理を制御するための制御データ(フラグ及びパラメータ)を含む。
【0185】
また、属性情報復号部2060は、復号したシンタックスから、量子化済み残差情報を復号するように構成されている。
【0186】
逆量子化部2070は、属性情報復号部2060によって復号された量子化済み残差情報と、属性情報復号部2060によって復号された制御データの一つである量子化パラメータとを元に、逆量子化処理を行い、逆量子化済み残差情報を生成するように構成されている。
【0187】
逆量子化済み残差情報は、復号対象の点群の特徴に応じて、RAHT部2080及びLoD算出部2090のいずれかに出力される。いずれに出力されるかは、属性情報復号部2060によって復号される制御データによって指定される。
【0188】
RAHT部2080は、逆量子化部2070によって生成された逆量子化済み残差情報及び幾何情報再構成部2040によって生成された幾何情報を入力とし、RAHT(Region Adaptive Hierarchical Transform)と呼ばれるHaar変換(復号処理においては、逆Haar変換)の一種を用いて、各点の属性情報を復号するように構成されている。RAHTの具体的な処理としては、例えば、非特許文献2に記載の方法を用いることができる。
【0189】
LoD算出部2090は、幾何情報再構成部2040によって生成された幾何情報を入力とし、LoD(Level of Detail)を生成するように構成されている。
【0190】
LoDは、ある点の属性情報から、他のある点の属性情報を予測し、予測残差を符号化或いは復号するといった予測符号化を実現するための参照関係(参照する点及び参照される点)を定義するための情報である。
【0191】
言い換えると、LoDは、幾何情報に含まれる各点を複数のレベルに分類し、下位のレベルに属する点については上位のレベルに属する点の属性情報を用いて属性を符号化或いは復号するといった階層構造を定義した情報である。
【0192】
LoDの具体的な決定方法としては、例えば、非特許文献2に記載の方法を用いてもよい。
【0193】
逆リフティング部2100は、LoD算出部2090によって生成されたLoD及び逆量子化部2070によって生成された逆量子化済み残差情報を用いて、LoDで規定した階層構造に基づいて各点の属性情報を復号するように構成されている。逆リフティングの具体的な処理としては、例えば、非特許文献2に記載の方法を用いることができる。
【0194】
逆色変換部2110は、復号対象の属性情報が色情報であり且つ点群符号化装置100側で色変換が行われていた場合に、RAHT部2080又は逆リフティング部2100から出力される属性情報に逆色変換処理を行うように構成されている。かかる逆色変換処理の実行の有無については、属性情報復号部2060によって復号された制御データによって決定される。
【0195】
点群復号装置200は、以上の処理により、点群内の各点の属性情報を復号して出力するように構成されている。
【0196】
(近似表面合成部2030)
以下、
図12を用いて、本実施形態における近似表面合成部2030の処理の一例を説明する。
図12は、近似表面合成部2030の処理の一例をフローチャートである。
図12は、ステップS1101を除いて
図3に示す近似表面解析部1040のフローチャートと同一である。
【0197】
図12に示すように、ステップS1101において、近似表面合成部2030は、各ノードにおける頂点位置を復号する。かかる頂点位置は、
図3のステップS301で決定したものである。
【0198】
図3の説明と同様に、ステップS302~S305は、ノード毎に独立して実行する。
【0199】
ステップS302では、ステップS1101で復号した頂点の中から、当該ノードのエッジ上に存在する頂点を一点ずつ抽出する。ここで、
図3の説明と同様に、ある頂点の座標(x、y、zの値)が、既に抽出した頂点の座標と完全に同一の場合は、既に抽出した頂点のみを当該ノードの頂点として残し、座標が重複する点は当該ノードの頂点として加えないようにする。これにより、ステップS302~S305において座標が完全に同一の頂点が複数存在することで不要な処理が発生するのを防ぐことができる。
【0200】
以降、近似表面合成部2030は、
図3と同様の処理を行うため、説明を省略する。
【0201】
(逆リフティング部2100)
以下、
図13を用いて、本実施形態における逆リフティング部2100の処理の一例を説明する。
図13は、逆リフティング部2100の処理の一例を示すフローチャートである。
【0202】
図13は、ステップS1201及びS1202を除いて、
図9に示すリフティング部1110の処理と同一である。以降、同一の処理については説明を省略する。
【0203】
ステップS802では、点群符号化装置100と同一の方法で上記(1)~(3)のどのパターンを用いるか決定する。具体的には、
図10や
図14で説明した方法で決定できる。
【0204】
または、S802の代わりに、点群符号化装置100から付加情報として伝送される、上述の(1)~(3)のどのパターンを用いるかという情報を復号し、これに基づいてどのパターンを使用するか決定してもよい。
【0205】
ステップS1201において、逆リフティング部2100は、リフティング部1110によって決定された予測器の情報を、ビットストリームから復号する。
【0206】
ステップS1202において、逆リフティング部2100は、ステップS805で生成された予測値と逆量子化済み残差情報とを足し合わせることで復号対象点の属性情報の値を復号する。
【0207】
また、上述の点群符号化装置100及び点群復号装置200は、コンピュータに各機能(各工程)を実行させるプログラムであって実現されていてもよい。
【0208】
なお、上記の各実施形態では、本発明を点群符号化装置100及び点群復号装置200への適用を例にして説明したが、本発明は、かかる例のみに限定されるものではなく、点群符号化装置100及び点群復号装置200の各機能を備えた点群符号化/復号システムにも同様に適用できる。
【産業上の利用可能性】
【0209】
なお、本実施形態によれば、例えば、動画像通信において総合的なサービス品質の向上を実現できることから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
【符号の説明】
【0210】
10…点群処理システム
100…点群符号化装置
1010…座標変換部
1020…幾何情報量子化部
1030…ツリー解析部
1040…近似表面解析部
1050…幾何情報符号化部
1060…幾何情報再構成部
1070…色変換部
1080…属性転移部
1090…RAHT部
1100…LoD算出部
1110…リフティング部
1120…属性情報量子化部
1130…属性情報符号化部
200…点群復号装置
2010…幾何情報復号部
2020…ツリー合成部
2030…近似表面合成部
2040…幾何情報再構成部
2050…逆座標変換部
2060…属性情報復号部
2070…逆量子化部
2080…RAHT部
2090…LoD算出部
2100…逆リフティング部
2110…逆色変換部