(57)【要約】      （修正有）【課題】指定された点数以下の点数となるように、出力点数を制限したスケーラブル復号装置を提供する。【解決手段】点群復号装置２００は、幾何情報復号部２０１０と、ツリー合成部２０２０と、近似表面合成部２０３０と、幾何情報再構成部２０４０と、逆座標変換部２０５０と、属性情報復号部２０６０と、逆量子化部２０７０と、ＲＡＨＴ（Ｒｅｇｉｏｎ  Ａｄａｐｔｉｖｅ  Ｈｉｅｒａｒｃｈｉｃａｌ  Ｔｒａｎｓｆｏｒｍ）部２０８０と、ＬｏＤ（Ｌｅｖｅｌ  ｏｆ  Ｄｅｔａｉｌ）算出部２０９０と、逆リフティング部２１００と、逆色変換部２１１０とを有する。幾何情報復号部２０１０は、８分木構造の各層の点数或いは８分木構造の各層の点数の差分を復号する。【選択図】図２
2022002382.tif 000002
【特許請求の範囲】
【請求項１】
点群復号装置であって、
８分木構造の各層の点数或いは前記８分木構造の各層の点数の差分を復号するように構成されている幾何情報復号部を備えることを特徴とする点群復号装置。
【請求項２】
入力パラメータとして与えられる出力最大点数を超えないように、前記点数或いは前記差分値に基づいて、スケーラブル復号を行う層の数を決定するように構成されているツリー合成部を備えることを特徴とする請求項１に記載の点群復号装置。
【請求項３】
入力パラメータとして与えられる比率を超えないように、前記点数或いは前記差分値に基づいて、スケーラブル復号を行う層の数を決定するように構成されているツリー合成部を備えることを特徴とする請求項１に記載の点群復号装置。
【請求項４】
点群復号装置であって、
８分木構造の各層の点数或いは前記８分木構造の各層の点数の差分を復号するように構成されている幾何情報復号部を備え、
前記幾何情報復号部は、シンタックスとして規定されるｍ（ｍは、１以上の整数）を復号し、最初のｍ層の点数或いは点数の差分については記録しないように構成されていることを特徴とする点群復号装置
【請求項５】
点群復号装置であって、
入力される層のｍ（ｍは、１以上の整数）層下の層まで、スケーラブル復号を行うように構成されているツリー合成部と、
（ｍ＋１）層の幾何情報に基づいて、ＬｏＤ（Ｌｅｖｅｌ  ｏｆ  Ｄｅｔａｉｌ）を算出するように構成されているＬｏＤ算出部とを備えることを特徴とする点群復号装置。
【請求項６】
８分木構造の各層の点数或いは前記８分木構造の各層の点数の差分を復号する工程を有することを特徴とする点群復号方法。
【請求項７】
点群復号装置で用いるプログラムであって、コンピュータに、
８分木構造の各層の点数或いは前記８分木構造の各層の点数の差分を復号する工程を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、点群復号装置、点群復号方法及びプログラムに関する。
【背景技術】
【０００２】
非特許文献１及び非特許文献２では、再帰的に実施された８分木（Ｏｃｔｒｅｅ）分割により圧縮された点群の３Ｄ位置（Ｇｅｏｍｅｔｒｙ）情報を復号する技術及び必要に応じて復号された点群位置に対応する点の属性（Ａｔｔｒｉｂｕｔｅ）情報を復号する技術が開示されている。
【０００３】
また、非特許文献３では、非特許文献１及び非特許文献２の中の１つの機能として、図１３に示すように、Ｏｃｔｒｅｅ構造を中間解像度までのみ復号することによって、スケーラブルに解像度の異なる点群を復号（デコード）するスケーラブル復号技術が開示されている。
【０００４】
かかるスケーラブル復号技術により、全てのビットストリームを復号することなく、低解像度の点群をスケーラブルに復号することができ、サムネイル等の用途で用いることができる。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ｔｅｘｔ  ｏｆ  ＩＳＯ/ＩＥＣ  ２３０９０-９  ＤＩＳ  Ｇｅｏｍｅｔｒｙ-ｂａｓｅｄ  ＰＣＣ  ｗ１９０８８
【非特許文献２】Ｇ-ＰＣＣ  ｃｏｄｅｃ  ｄｅｓｃｒｉｐｔｉｏｎ  ｖ６、ＩＳＯ/ＩＥＣ  ＪＴＣ１/ＳＣ２９/ＷＧ１１  ｗ１９０９１
【非特許文献３】Ｓｐａｔｉａｌ  ｓｃａｌａｂｉｌｉｔｙ  ｓｕｐｐｏｒｔ  ｆｏｒ  Ｇ-ＰＣＣ、ＩＳＯ/ＩＥＣ  ＪＴＣ１/ＳＣ２９/ＷＧ１１  ｍ４７３５２
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一般に、例えば、自由視点映像技術等で生成した点群を視聴するビューアのようなアプリケーションを考えた際に、計算機資源に乏しい端末上では、入力される点数が多すぎるとリアルタイムレンダリングができなくなる。
【０００７】
そこで、リアルタイムレンダリングを実施するために、非特許文献３に開示されているスケーラブル復号機能で復号後の点数を一定以下になるように抑えたいケースが存在する。
【０００８】
しかしながら、非特許文献１に記載の仕様では、非特許文献３に開示されているスケーラブル復号を実施する際には、Ｏｃｔｒｅｅ構造の上位ｎ層を復号することはできても、上から（ｎ＋１）層目の点数については復号するまで知ることができないことから、所定の点数に収まるように復号を行うことができないという問題点があった。
【０００９】
この点、（ｎ＋１）層目を復号すれば点数を知ることができるが、（ｎ＋１）層目を復号することは処理負荷の面で課題が大きいという問題点があった。
【００１０】
そこで、本発明は、上述の課題に鑑みてなされたものであり、指定された点数以下の点数となるように、出力点数を制限したスケーラブル復号を実施することができる点群復号
装置、点群復号方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の第１の特徴は、点群復号装置であって、８分木構造の各層の点数或いは前記８分木構造の各層の点数の差分を復号するように構成されている幾何情報復号部を備えることを要旨とする。
【００１２】
本発明の第２の特徴は、点群復号装置であって、８分木構造の各層の点数或いは前記８分木構造の各層の点数の差分を復号するように構成されている幾何情報復号部を備え、前記幾何情報復号部は、シンタックスとして規定されるｍ（ｍは、１以上の整数）を復号し、最初のｍ層の点数或いは点数の差分については記録しないように構成されていることを要旨とする。
【００１３】
本発明の第３の特徴は、点群復号装置であって、入力される層のｍ（ｍは、１以上の整数）層下の層まで、スケーラブル復号を行うように構成されているツリー合成部と、（ｍ＋１）層の幾何情報に基づいて、ＬｏＤ（Ｌｅｖｅｌ  ｏｆ  Ｄｅｔａｉｌ）を算出するように構成されているＬｏＤ算出部とを備えることを要旨とする。
【００１４】
本発明の第４の特徴は、点群復号方法であって、８分木構造の各層の点数或いは前記８分木構造の各層の点数の差分を復号する工程を有することを要旨とする。
【００１５】
本発明の第５の特徴は、点群復号装置で用いるプログラムであって、コンピュータに、８分木構造の各層の点数或いは前記８分木構造の各層の点数の差分を復号する工程を実行させることを要旨とする。
【発明の効果】
【００１６】
本発明によれば、指定された点数以下の点数となるように、出力点数を制限したスケーラブル復号を実施することができる点群復号装置、点群復号方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１７】
【図１】一実施形態に係る点群処理システム１０の構成の一例を示す図である。
【図２】一実施形態に係る点群復号装置２００の機能ブロックの一例を示す図である。
【図３】一実施形態に係る点群復号装置２００の幾何情報復号部２０１０で受信する符号化データ（ビットストリーム）の構成の一例である。
【図４】一実施形態に係るＧＰＳ２０１１のシンタックス構成の一例である。
【図５】一実施形態に係るＧＰＳ２０１２Ａ/２０１２Ｂのシンタックス構成の一例である。
【図６】一実施形態に係るＧＰＳ２０１２Ａ/２０１２Ｂのシンタックス構成の一例である。
【図７】一実施形態に係る点群復号装置２００の幾何情報復号部２０１０によって復号される制御データについて説明するための図である。
【図８】一実施形態に係る点群復号装置２００の幾何情報復号部２０１０によって復号される制御データについて説明するための図である。
【図９】一実施形態に係る点群復号装置２００の属性情報復号部２０６０で復号される制御データについて説明するための図である。
【図１０】一実施形態に係るＡＰＳ２０６１のシンタックス構成の一例である。
【図１１】一実施形態に係る点群復号装置２００のＬｏＤ算出部２０９０の処理内容の一例について説明するための図である。
【図１２】一実施形態に係る点群復号装置２００のＬｏＤ算出部２０９０の処理内容の一例について説明するための図である。
【図１３】従来技術について説明するための図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施形態における構成要素は、適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【００１９】
（第１実施形態）
以下、図１〜図１２を参照して、本発明の第１実施形態に係る点群処理システム１０について説明する。図１は、本実施形態に係る実施形態に係る点群処理システム１０を示す図である。
【００２０】
図１に示すように、点群処理システム１０は、点群符号化装置１００及び点群復号装置２００を有する。
【００２１】
点群符号化装置１００は、入力点群信号を符号化することによって符号化データ（ビットストリーム）を生成するように構成されている。点群復号装置２００は、ビットストリームを復号することによって出力点群信号を生成するように構成されている。
【００２２】
なお、入力点群信号及び出力点群信号は、点群内の各点の位置情報と属性情報とから構成される。属性情報は、例えば、各点の色情報や反射率である。
【００２３】
ここで、かかるビットストリームは、点群符号化装置１００から点群復号装置２００に対して伝送路を介して送信されてもよい。また、ビットストリームは、記憶媒体に格納された上で、点群符号化装置１００から点群復号装置２００に提供されてもよい。
【００２４】
（点群復号装置２００）
以下、図２を参照して、本実施形態に係る点群復号装置２００について説明する。図２は、本実施形態に係る点群復号装置２００の機能ブロックの一例について示す図である。
【００２５】
点群復号装置２００は、点群符号化装置１００により生成されたビットストリームを入力として、点群の位置情報と属性情報を復号する機能を有する。
【００２６】
図２に示すように、点群復号装置２００は、幾何情報復号部２０１０と、ツリー合成部２０２０と、近似表面合成部２０３０と、幾何情報再構成部２０４０と、逆座標変換部２０５０と、属性情報復号部２０６０と、逆量子化部２０７０と、ＲＡＨＴ（Ｒｅｇｉｏｎ
Ａｄａｐｔｉｖｅ  Ｈｉｅｒａｒｃｈｉｃａｌ  Ｔｒａｎｓｆｏｒｍ）部２０８０と、ＬｏＤ（Ｌｅｖｅｌ  ｏｆ  Ｄｅｔａｉｌ）算出部２０９０と、逆リフティング部２１００と、逆色変換部２１１０とを有する。以下、図２に示す機能ブロック図中の各部の詳細な機能についてそれぞれ説明する。
【００２７】
幾何情報復号部２０１０は、点群符号化装置１００から出力されるビットストリームのうち、幾何情報に関するビットストリーム（幾何情報ビットストリーム）を入力とし、シンタックスを復号するように構成されている。
【００２８】
復号処理は、例えば、コンテキスト適応二値算術復号処理である。ここで、例えば、シ
ンタックスは、位置情報の復号処理を制御するための制御データ（フラグやパラメータ）を含む。
【００２９】
ツリー合成部２０２０は、幾何情報復号部２０１０によって復号された制御データ及び後述するツリー構造内のどのノードに点群が存在するかを示すｏｃｃｕｐａｎｃｙ  ｃｏｄｅを入力として、復号対象空間内のどの領域に点が存在するかという点の位置（ツリー情報）を生成するように構成されている。
【００３０】
近似表面合成部２０３０は、ツリー情報合成部２０２０によって生成されたツリー情報を用いて、近似表面情報を生成するように構成されている。
【００３１】
近似表面情報は、例えば、物体の３次元点群データを復号する際等において、点群が物体表面に密に分布しているような場合に、個々の点群を復号するのではなく、点群の存在領域を小さな平面で近似して表現したものである。
【００３２】
具体的には、近似表面合成部２０３０は、例えば、「Ｔｒｉｓｏｕｐ」と呼ばれる手法で、近似表面情報を生成することができる。「Ｔｒｉｓｏｕｐ」の具体的な処理としては、例えば、非特許文献１及び非特許文献２に記載の方法を用いることができる。また、Ｌｉｄａｒ等で取得した疎な点群を復号する場合は、本処理を省略することができる。
【００３３】
幾何情報再構成部２０４０は、ツリー情報合成部２０２０によって生成されたツリー情報及び近似表面合成部２０３０によって生成された近似表面情報を元に、復号対象の点群の各点の幾何情報（復号処理が仮定している座標系における位置情報）を再構成するように構成されている。
【００３４】
逆座標変換部２０５０は、幾何情報再構成部２０４０によって再構成された幾何情報を入力として、復号処理が仮定している座標系から、出力点群信号の座標系に変換を行い、位置情報を出力するように構成されている。
【００３５】
属性情報復号部２０６０は、点群符号化装置１００から出力されるビットストリームのうち、属性情報に関するビットストリーム（属性情報ビットストリーム）を入力とし、シンタックスを復号するように構成されている。
【００３６】
復号処理は、例えば、コンテキスト適応二値算術復号処理である。ここで、例えば、シンタックスは、属性情報の復号処理を制御するための制御データ（フラグ及びパラメータ）を含む。
【００３７】
また、属性情報復号部２０６０は、復号したシンタックスから、量子化済み残差情報を復号するように構成されている。
【００３８】
逆量子化部２０７０は、属性情報復号部２０６０によって復号された量子化済み残差情報と、属性情報復号部２０６０によって復号された制御データの１つである量子化パラメータとを元に、逆量子化処理を行い、逆量子化済み残差情報を生成するように構成されている。
【００３９】
逆量子化済み残差情報は、復号対象の点群の特徴に応じて、ＲＡＨＴ部２０８０及びＬｏＤ算出部２０９０のいずれかに出力される。いずれに出力されるかは、属性情報復号部２０６０によって復号される制御データによって指定される。
【００４０】
ＲＡＨＴ部２０８０は、逆量子化済み残差情報によって生成された逆量子化済み残差情
報及び幾何情報再構成部２０４０によって生成された幾何情報を入力とし、ＲＡＨＴと呼ばれるＨａａｒ変換（復号処理においては、逆Ｈａａｒ変換）の一種を用いて、各点の属性情報を復号するように構成されている。ＲＡＨＴの具体的な処理としては、例えば、非特許文献１及び非特許文献２に記載の方法を用いることができる。
【００４１】
ＬｏＤ算出部２０９０は、幾何情報再構成部２０４０によって生成された幾何情報を入力とし、ＬｏＤを生成するように構成されている。
【００４２】
ＬｏＤは、ある点の属性情報から、他のある点の属性情報を予測し、予測残差を符号化或いは復号するといった予測符号化を実現するための参照関係（参照する点及び参照される点）を定義するための情報である。
【００４３】
言い換えると、ＬｏＤは、幾何情報に含まれる各点を複数のレベルに分類し、上位のレベルに属する点については下位のレベルに属する点の属性情報を用いて属性を符号化或いは復号するといった階層構造を定義した情報である。
【００４４】
ＬｏＤの具体的な決定方法としては、例えば、非特許文献１及び非特許文献２に記載の方法を用いてもよい。
【００４５】
逆リフティング部２１００は、ＬｏＤ算出部２０９０によって生成されたＬｏＤ及び逆量子化済み残差情報によって生成された逆量子化済み残差情報を用いて、ＬｏＤで規定した階層構造に基づいて各点の属性情報を復号するように構成されている。逆リフティングの具体的な処理としては、例えば、非特許文献１及び非特許文献２に記載の方法を用いることができる。
【００４６】
逆色変換部２１１０は、復号対象の属性情報が色情報であり且つ点群符号化装置１００側で色変換が行われていた場合に、ＲＡＨＴ部２０８０又は逆リフティング部２１００から出力される属性情報に逆色変換処理を行うように構成されている。かかる逆色変換処理の実行有無については、属性情報復号部２０６０によって復号された制御データによって決定される。
【００４７】
点群復号装置２００は、以上の処理により、点群内の各点の属性情報を復号して出力するように構成されている。
【００４８】
以下に、点群復号装置２００の各部において、本発明に特有な部分を説明する。
【００４９】
（幾何情報復号部２０１０）
以下、図４〜図７を用いて幾何情報復号部２０１０で復号される制御データについて説明する。
【００５０】
図４は、幾何情報復号部２０１０で受信する符号化データ（ビットストリーム）の構成の一例である。
【００５１】
第１に、ビットストリームは、ＧＰＳ２０１１を含んでいてもよい。ＧＰＳ２０１１は、Ｇｅｏｍｅｔｒｙ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔの略で、幾何情報の復号に関する制御データの集合である。具体例については後述する。各ＧＰＳ２０１１は、複数のＧＰＳ２０１１が存在する場合に個々を識別するためのＧＰＳ  ｉｄ情報を少なくとも含む。
【００５２】
第２に、ビットストリームは、ＧＳＨ２０１２Ａ/２０１２Ｂを含んでいてもよい。Ｇ
ＳＨ２０１２Ａ/２０１２Ｂは、Ｇｅｏｍｅｔｒｙ  Ｓｌｉｃｅ  Ｈｅａｄｅｒの略で、
後述するスライスに対応する制御データの集合である。具体例については後述する。ＧＳＨ２０１２Ａ/２０１２Ｂは、各ＧＳＨ２０１２Ａ/２０１２Ｂに対応するＧＰＳ２０１１を指定するためのＧＰＳ  ｉｄ情報を少なくとも含む。
【００５３】
第３に、ビットストリームは、ＧＳＨ２０１２Ａ/２０１２Ｂの次に、スライスデータ
２０１３Ａ/２０１３Ｂを含んでいてもよい。スライスデータ２０１３Ａ/２０１３Ｂには、幾何情報を符号化したデータが含まれている。スライスデータ２０１３Ａ/２０１３Ｂ
の一例としては、後述するｏｃｃｕｐａｎｃｙ  ｃｏｄｅが挙げられる。
【００５４】
以上のように、ビットストリームは、各スライスデータ２０１３Ａ/２０１３Ｂに、１
つずつＧＳＨ２０１２Ａ/２０１２Ｂ及びＧＰＳ２０１１が対応する構成となる。
【００５５】
上述のように、ＧＳＨ２０１２Ａ/２０１２Ｂにて、どのＧＰＳ２０１１を参照するか
をＧＰＳ  ｉｄ情報で指定するため、複数のスライスデータ２０１３Ａ/２０１３Ｂに対
して共通のＧＰＳ２０１１を用いることができる。
【００５６】
言い換えると、ＧＰＳ２０１１は、スライスごとに必ずしも伝送する必要がない。例えば、図３のように、ＧＳＨ２０１２Ｂ及びスライスデータ２０１３Ｂの直前では、ＧＰＳ２０１１を符号化しないようなビットストリームの構成とすることもできる。
【００５７】
なお、図３の構成は、あくまで一例である。各スライスデータ２０１３Ａ/２０１３Ｂ
に、ＧＳＨ２０１２Ａ/２０１２Ｂ及びＧＰＳ２０１１が対応する構成となっていれば、
ビットストリームの構成要素として、上述以外の要素が追加されてもよい。例えば、ビットストリームは、シーケンスパラメータセット（ＳＰＳ）を含んでいてもよい。また、同様に、伝送に際して、図３と異なる構成に整形されてもよい。
【００５８】
図４は、ＧＰＳ２０１１のシンタックス構成の一例である。
【００５９】
なお、以下で説明するシンタックス名は、あくまで一例である。以下で説明したシンタックスの機能が同様であれば、シンタックス名は異なっていても差し支えない。
【００６０】
ＧＰＳ２０１１は、各ＧＰＳ２０１１を識別するためのＧＰＳ  ｉｄ情報（ｇｐｓ_ｇ
ｅｏｍ_ｐａｒａｍｅｔｅｒ_ｓｅｔ_ｉｄ）を含んでもよい。
【００６１】
ＧＰＳ２０１１は、ツリー合成部２０２０にて後述のＩＤＣＭ（ｉｎｆｅｒｒｅｄ  Ｄｉｒｅｃｔ  Ｃｏｄｉｎｇ  Ｍｏｄｅ）のＯＮ/ＯＦＦを制御するためのフラグ（ｉｎｆ
ｅｒｒｅｄ_ｄｉｒｅｃｔ_ｃｏｄｉｎｇ_ｍｏｄｅ_ｅｎａｂｌｅｄ_ｆｌａｇ）を含んで
もよい。
【００６２】
非特許文献１や非特許文献２では、８分木分割ではなく４分木分割や２分木分割を行う手法（ｉｍｐｌｉｃｉｔＱｔＢｔ）が開示されているが、ＧＰＳ２０１１は、かかる手法に基づき、非特許文献１や非特許文献２に記載の通りに、ツリー合成部２０２０で４分木分割や２分木分割（ＱｔＢｔ）を行うかどうかを示すフラグ（ｇｐｓ_ｉｍｐｌｉｃｉｔ_ｇｅｏｍ_ｐａｒｔｉｔｉｏｎ_ｆｌａｇ）を含んでもよい。
【００６３】
例えば、ｇｐｓ_ｉｍｐｌｉｃｉｔ_ｇｅｏｍ_ｐａｒｔｉｔｉｏｎ_ｆｌａｇの値が「１」の場合は、「ＱｔＢｔ」を行うと定義し、ｇｐｓ_ｉｍｐｌｉｃｉｔ_ｇｅｏｍ_ｐａｒ
ｔｉｔｉｏｎ_ｆｌａｇの値が「０」の場合は、「Ｏｃｔｒｅｅ」のみを行うと定義して
もよい。
【００６４】
ＧＰＳ２０１１は、ツリー構造を復号した際の各階層の点数を記録するかどうかを制御するフラグ（ｇｅｏｍ_ｒｅｃｏｒｄｉｎｇ_ｐｏｉｎｔ_ｎｕｍ_ｆｌａｇ）を含んでもよい。
【００６５】
かかる点数を通知すべきではない場合には、ｇｅｏｍ_ｒｅｃｏｒｄｉｎｇ_ｐｏｉｎｔ_ｎｕｍ_ｆｌａｇをＯＦＦにすることで、かかる点数の記録を行わなくすることが可能である。一般に、かかる点数を記録することは、データサイズの増大に繋がることから、ユーザの用途に応じて、ｇｅｏｍ_ｒｅｃｏｒｄｉｎｇ_ｐｏｉｎｔ_ｎｕｍ_ｆｌａｇのＯＮ/ＯＦＦを切り替えることができる。
【００６６】
また、各層の点数を通知するメリットとしてスケーラブル復号のユースケースが存在することを鑑みると、文献Ａ「［Ｎｅｗ  Ｐｒｏｐｏｓａｌ］Ｏｎ  ｉｎｔｅｒａｃｔｉｏｎ  ｂｅｔｗｅｅｎ  ｉｍｐｌｉｃｉｔ  ＱＴＢＴ  ａｎｄ  Ｓｃａｌａｂｌｅ  ｌｉｆｔｉｎｇ（ＩＳＯ/ＩＥＣ  ＪＴＣ１/ＳＣ２９/ＷＧ１１  ｍ５３４９７）」の中でスケ
ーラブル復号とＩｍｐｌｉｃｉｔ  ＱｔＢｔとを併用すると不具合が発生するため、両者を排他にする提案が成されていること。したがって、ｇｐｓ_ｉｍｐｌｉｃｉｔ_ｇｅｏｍ_ｐａｒｔｉｔｉｏｎ_ｆｌａｇがＯＮの場合には、ｇｅｏｍ_ｒｅｃｏｒｄｉｎｇ_ｐｏｉｎｔ_ｎｕｍ_ｆｌａｇをＯＦＦとしてもよい。
【００６７】
なお、図４のＤｅｓｃｒｉｐｔｏｒ欄は、各シンタックスが、どのように符号化されているかを意味している。ｕｅ（ｖ）は、符号無し０次指数ゴロム符号であることを意味し、ｕ（１）は、１ビットのフラグであることを意味する。
【００６８】
図５は、ＧＳＨ２０１２Ａ/２０１２Ｂのシンタックス構成の一例である。
【００６９】
ＧＳＨ２０１２Ａ/２０１２Ｂは、当該ＧＳＨ２０１２Ａ/２０１２Ｂに対応するＧＰＳ２０１２を指定するためのシンタックス（ｇｓｈ_ｇｅｏｍｅｔｒｙ_ｐａｒａｍｅｔｅｒ_ｓｅｔ_ｉｄ）を含んでもよい。
【００７０】
ＧＳＨ２０１２Ａ/２０１２Ｂは、当該ＧＳＨ２０１２Ａ/２０１２Ｂに対応するＧＰＳ２０１２においてｇｐｓ_ｉｍｐｌｉｃｉｔ_ｇｅｏｍ_ｐａｒｔｉｔｉｏｎ_ｆｌａｇの値が「１」のとき（すなわち、「ＯＮ」のとき）、ＧＳＨ２０１２Ａ/２０１２Ｂは、Ｉｍ
ｐｌｉｃｉｔＱｔＢｔに関する制御データを追加で含んでもよい。
【００７１】
例えば、ＩｍｐｌｉｃｉｔＱｔＢｔに関する制御データには、図５に示すｇｓｈ_ｌｏ
ｇ２_ｒｏｏｔ_ｎｏｄｅｓｉｚｅ_ｓや、ｇｓｈ_ｌｏｇ２_ｒｏｏｔ_ｎｏｄｅｓｉｚｅ_
ｔ_ｍｉｎｕｓ_ｓや、ｇｓｈ_ｌｏｇ２_ｒｏｏｔ_ｎｏｄｅｓｉｚｅ_ｖ_ｍｉｎｕｓ_ｔ等が含まれる。
【００７２】
また、ＧＳＨ２０１２Ａ/２０１２Ｂは、図５のように、ツリー合成部２０２０で合成
されるツリーの各階層の点数を示すシンタックス（ｇｓｈ_ｐｏｉｎｔ_ｎｕｍ_ｐｅｒ_ｄｅｐｔｈ［ｉ］）を含んでもよい。
【００７３】
ｇｓｈ_ｐｏｉｎｔ_ｎｕｍ_ｐｅｒ_ｄｅｐｔｈ［ｉ］は、必ず「０」以上の値を取ることと規定されていてもよい。ｇｓｈ_ｐｏｉｎｔ_ｎｕｍ_ｐｅｒ_ｄｅｐｔｈ［ｉ］は、例えば、符号なし０次指数ゴロム符号で符号化されていてもよいし、予め指定されたビット数で符号化されていてもよい。
【００７４】
また、ツリー構造における最上層のノードが１個であること、及び、ツリー構造における最下層のノードの点数が「全点数」−「最下層以外のノードの点数の和」で計算される
ことから、最上層のノードの点数及び最下層のノードの点数に関しては、計算可能なものとして、ｇｓｈ_ｐｏｉｎｔ_ｎｕｍ_ｐｅｒ_ｄｅｐｔｈ［ｉ］には含めずに、ツリー合成部２０２０が、幾何情報の復号後に計算してもよい。
【００７５】
また、ツリー構造における各階層の点数は、１つ前に保存した階層の点数との差分値が記録されるようになっていてもよい。この場合、かかる差分値が負の値を取ることがあるため、符号ありゴロム符号ｓｅ（ｖ）で点数が記録されてもよい。
【００７６】
また、ここで記録される点数は、情報量を減らす観点から正確な点数ではなく、おおよその近似値としての点数が入ってもよい。その結果、正確な点数を記載する必要がなくなることから、少ない情報量で点数の情報を書き込むことができる一方、実際の点数と誤差が生じるため、後述の「所定の点数に収まるように復号する」という観点で、所定の点数を超過してしまう可能性がある。
【００７７】
また、極度に低解像度な点を復号する用途は少ないと考えられることから、ｇｅｏｍ_
ｒｅｃｏｒｄｉｎｇ_ｐｏｉｎｔ_ｎｕｍ_ｆｌａｇがＯＮの場合（例えば、ｇｅｏｍ_ｒｅｃｏｒｄｉｎｇ_ｐｏｉｎｔ_ｎｕｍ_ｆｌａｇの値が「１」の場合）に、幾何情報復号部
２０１０は、最上層から見てｍ層については点数を記録せずにスキップしてもよい。
【００７８】
この場合、ｇｅｏｍ_ｒｅｃｏｒｄｉｎｇ_ｐｏｉｎｔ_ｎｕｍ_ｆｌａｇがＯＮの場合に、幾何情報復号部２０１０は、シンタックスとして規定されるｍに基づき、最初のｍ層の点数（或いは、点数の差分）をスキップして記録せず、ｍ＋１層目以降の点数（或いは、点数の差分）をｇｓｈ_ｐｏｉｎｔ_ｎｕｍ_ｐｅｒ_ｄｅｐｔｈ［ｉ］に記録するように構成されていてもよい。
【００７９】
例えば、ｍ＝５のとき、幾何情報復号部２０１０は、１層目〜５層目の点数（或いは、点数の差分）についてｇｓｈ_ｐｏｉｎｔ_ｎｕｍ_ｐｅｒ_ｄｅｐｔｈ［ｉ］には記録せず、６層目以降の点数（或いは、点数の差分）についてｇｓｈ_ｐｏｉｎｔ_ｎｕｍ_ｐｅｒ_ｄｅｐｔｈ［０］から順番に記録するように構成されていてもよい。
【００８０】
図６に、かかる場合のシンタックス構成の一例を示す。図６において、ｍは、ｇｓｈ_
ｒｅｃｏｒｄｉｎｇ_ｓｔａｒｔ_ｌａｙｅｒという名前のシンタックスとして記録されている。
【００８１】
図６の例では、ｇｓｈ_ｒｅｃｏｒｄｉｎｇ_ｓｔａｒｔ_ｌａｙｅｒは、符号なし０次
指数ゴロム符号で示しているが、層の数が極度に多くなることは考えられないことを鑑み、ｓビットの固定長のＤｅｓｃｒｉｐｔｏｒとして記録されてもよい。
【００８２】
なお、かかる各階層の点数を記録する部分は、必ずしもＧＳＨ２０１２Ａ/２０１２Ｂ
ではなくてもよく、例えば、スライスが１つであることが保証されていれば、かかる各階層の点数は、ＧＰＳ２０１１に記録されてもよい。
【００８３】
スケーラブル復号の場合には、ＬｏＤ算出部２０９０で形成されるＬｏＤ構造及びＯｃｔｒｅｅ構造の各階層が一致することから、かかる各階層の点数は、ＬｏＤ構造の点数として、後述するＡＳＨ（Ａｔｔｒｉｂｕｔｅ  Ｓｌｉｃｅ  Ｈｅａｄｅｒ）やＡＰＳに記録されてもよい。
【００８４】
（ツリー合成部２０２０）
図７及び図８を用いて、幾何情報復号部２０１０によって復号される制御データについて説明する。
【００８５】
ツリー合成部２０２０は、幾何情報復号部２０１０によって復号された制御データ及び後述するツリー構造内のどのノードに点群が存在するかを示すｏｃｃｕｐａｎｃｙ  ｃｏｄｅを入力として、ツリー構造を復号することで、復号対象空間内のどの領域に点が存在するかという点の位置を取得するように構成されている。
【００８６】
ツリー合成部２０２０は、復号対象空間を立方体として定義し、立方体の中を２×２×２のさらに細かい立方体に分割することを再帰的に繰り返すことで、かかる点の位置を取得するように構成されている。このとき、ツリー合成部２０２０は、１つのノードにつき８ビットのｏｃｃｕｐａｎｃｙ  ｃｏｄｅを参照することで、２×２×２のどの領域にノードが形成されるかを順次計算していく。
【００８７】
ここで、図１５に示すように、スケーラブル復号機能を実施する際には、非特許文献１によると、Ｏｃｔｒｅｅ構造の下から何層をスキップするかを示すパラメータ（ＳｋｉｐＯｃｔｒｅｅＬａｙｅｒｓ）が点群復号装置２００の外から与えられる。図７に示すように、ＳｋｉｐＯｃｔｒｅｅＬａｙｅｒｓに基づいて、上位何層目まで復号するかが決定される。
【００８８】
これにより、ＳｋｉｐＯｃｔｒｅｅＬａｙｅｒｓに基づき点群復号装置２０によって復号される点群の解像度は、スケーラブルに決定できるものの、図８のように、次の層（図８における点数Ｃ）まで復号した際の点数を知ることはできない。
【００８９】
よって、例えば、復号後の点群数がＳ個以下になるように処理をストップしてスケーラブル復号を行いたい場合に、図８における「点数１＋点数Ａ＋点数Ｂ」の時点でＴ点（Ｔ＜Ｓ）だったとすると、点数Ｃの層を復号しないと、点数Ｃの層を含めて復号してもＳ点を超えないのか或いは点数Ｃの層を含めるとＳ点を超えてしまうのかが判断できない。
【００９０】
しかしながら、点数Ｃの層を復号することは、それだけ計算リソースの上で無駄が発生することになる。
【００９１】
したがって、本実施形態では、幾何情報復号部２０１０が、各層の点数を通知することで、次の層を復号する前に、次の層の点数を知ることで、復号を実施せずにＳ点以下に収まるように復号処理を行うことができる。これは、点群の個数を閾値にすることに限らず、全体点数の５０％未満になるように抑えて復号する等の比率を指定する場合にも同様に考えることができる。
【００９２】
かかるＯｃｔｒｅｅ構造の復号を実施する際に、非特許文献１や非特許文献２に記載の技術では、ＤＣＭ（Ｄｉｒｅｃｔ  Ｃｏｄｉｎｇ  Ｍｏｄｅ）が導入されている。ＤＣＭは、あるノードの下に紐づくノードが１点や２点等の少数の場合には、ｏｃｃｕｐａｎｃｙ  ｃｏｄｅを記載するのではなく、点の存在する位置を直接符号化して点群復号装置２００で復号することで、圧縮効率を高めるツールである。特に、非特許文献１や非特許文献２では、ＤＣＭを行うかどうかを周囲のノードから暗黙的に判定するＩｎｆｅｒｒｅｄ
ＤＣＭ（ＩＤＣＭ）が導入されていた。
【００９３】
（属性情報復号部２０６０）
以下、図９及び図１０を用いて、属性情報復号部２０６０で復号される制御データについて説明する。
【００９４】
図９は、幾何情報復号部２０６０で受信する符号化データ（ビットストリーム）の構成の一例である。
【００９５】
第１に、ビットストリームは、ＡＰＳ２０６１を含んでいてもよい。ＡＰＳ２０６１は、Ａｔｔｒｉｂｕｔｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔの略であり、属性情報の復号に関する制御データの集合である。具体例については後述する。
【００９６】
属性情報としては、点群の色情報の他に、点群の反射率（Ｒｅｆｌｅｃｔａｎｃｅ）の情報等が考えられるが、Ａｔｔｒｉｂｕｔｅの種類ごとにＡＰＳ２０６１が複数用意されてもよい。各ＡＰＳ２０６１は、複数のＡＰＳ２０６１が存在する場合に個々を識別するためのＡＰＳ  ｉｄ情報を少なくとも含む。
【００９７】
第２に、ビットストリームは、ＡＳＨ２０６２Ａ/２０６２Ｂを含んでいてもよい。Ａ
ＳＨ２０６２Ａ/２０６２Ｂは、Ａｔｔｒｉｂｕｔｅ  Ｓｌｉｃｅ  Ｈｅａｄｅｒの略で
あり、各スライスに対応する制御データを有する。具体例については後述する。ＡＳＨ２０６２Ａ/２０６２Ｂは、各ＡＳＨ２０６２Ａ/２０６２Ｂに対応するＡＰＳ２０６１を指定するためのＡＰＳ  ｉｄ情報を少なくとも含む。
【００９８】
第３に、ビットストリームは、ＡＳＨ２０６２Ａ/２０６２Ｂの次に、スライスデータ
２０６３Ａ/２０６３Ｂを含んでいてもよい。スライスデータ２０６３Ａ/２０６３Ｂには、属性情報を符号化したデータが含まれている。
【００９９】
以上のように、ビットストリームは、各スライスデータ２０６３Ａ/２０６３Ｂに、１
つずつＡＳＨ２０６２Ａ/２０６２Ｂ及びＡＰＳ２０６１が対応する構成となる。
【０１００】
上述のように、ＡＳＨ２０６２Ａ/２０６２Ｂにて、どのＡＰＳ２０６１を参照するか
をＡＰＳ  ｉｄ情報で指定するため、複数のスライスデータ２０６３Ａ/２０６３Ｂに対
して共通のＡＰＳ２０６１を用いることができる。
【０１０１】
なお、図９の構成は、あくまで一例である。各スライスデータ２０６３Ａ/２０６３Ｂ
に、ＡＳＨ２０６２Ａ/２０６２Ｂ及びＡＰＳ２０６１が対応する構成となっていれば、
ビットストリームの構成要素として、上述以外の要素が追加されてもよい。例えば、ビットストリームは、シーケンスパラメータセット（ＳＰＳ）を含んでいてもよい。
【０１０２】
また、同様に、伝送に際して、図９と異なる構成に整形されてもよい。更に、前記幾何情報復号部２０１０で復号されるビットストリームと合成して単一のビットストリームとして伝送されてもよい。例えば、スライスデータ２０１３Ａ及び２０６３Ａ、スライスデータ２０１３Ｂ及び２０６３Ｂを、それぞれ単一のスライスデータとして扱い、各スライスの直前にＧＳＨ２０１２Ａ及びＡＳＨ２０６２Ａ、ＧＳＨ２０１２Ｂ及びＡＳＨ２０６２Ｂを、それぞれ配置する構成となっていてもよい。また、その際、各ＧＳＨ及びＡＳＨに先立って、ＧＰＳ２０１１及びＡＰＳ２０６１が配置されていてもよい。
【０１０３】
図１０は、ＡＰＳ２０６１のシンタックス構成の一例である。
【０１０４】
ＡＰＳ２０６１は、各ＡＰＳ２０６１を識別するためのＡＰＳ  ｉｄ情報（ａｐｓ_ａ
ｔｔｒ_ｐａｒａｍｅｔｅｒ_ｓｅｔ_ｉｄ）を含んでもよい。
【０１０５】
ＡＰＳ２０６１は、属性情報の復号方法を示す情報（ａｔｔｒ_ｃｏｄｉｎｇ_ｔｙｐｅ）を含んでもよい。例えば、ａｔｔｒ_ｃｏｄｉｎｇ_ｔｙｐｅの値が「１」の時は、逆リフティング部２１００において可変の重み付きリフティング予測を行い、ａｔｔｒ_ｃｏ
ｄｉｎｇ_ｔｙｐｅの値が「０」の時は、ＲＡＨＴ部２０８０にてＲＡＨＴを行い、ａｔ
ｔｒ_ｃｏｄｉｎｇ_ｔｙｐｅの値が「２」の時は、逆リフティング部２１００において固
定の重みでのリフティング予測を行うというように規定されていてもよい。
【０１０６】
ＡＰＳ２０６１は、ａｔｔｒ_ｃｏｄｉｎｇ_ｔｙｐｅの値が「２」の時、すなわち、逆リフティング部２１００において固定の重みでのリフティング予測を行う場合、スケーラブルリフティング（非特許文献３で開示されているスケーラブル復号時のリフティング手法）を適用するかどうかを示すフラグ（ｌｉｆｔｉｎｇ_ｓｃａｌａｂｉｌｉｔｙ_ｅｎａｂｌｅｄ_ｆｌａｇ）を含んでもよい。
【０１０７】
本実施形態では、ｌｉｆｔｉｎｇ_ｓｃａｌａｂｉｌｉｔｙ_ｅｎａｂｌｅｄ_ｆｌａｇ
が「０」の場合に、スケーラブルリフティングを実施せず、ｌｉｆｔｉｎｇ_ｓｃａｌａ
ｂｉｌｉｔｙ_ｅｎａｂｌｅｄ_ｆｌａｇが「１」の場合に、スケーラブルリフティングを実施するものとする。
【０１０８】
本実施形態においては、Ｏｃｔｒｅｅ構造の各層の点数をシンタックスに規定する目的は、このスケーラブル復号が実施される際に、復号されていないｎ＋１層目の点数を知ることにある。このことから、スケーラブルリフティングが使用されないとき（ｌｉｆｔｉｎｇ_ｓｃａｌａｂｉｌｉｔｙ_ｅｎａｂｌｅｄ_ｆｌａｇ＝０であるとき）、ｇｅｏｍ_ｒｅｃｏｒｄｉｎｇ_ｐｏｉｎｔ_ｎｕｍ_ｆｌａｇは必ず「０」に設定すると規定されてい
てもよい。
【０１０９】
（ＬｏＤ算出部２０９０）
以下、図１１及び図１２を用いて、ＬｏＤ算出部２０９０の処理内容の一例について説明する。
【０１１０】
ＬｏＤ算出部２０９０は、幾何情報再構成部２０４０で生成される幾何情報を入力とし、ＬｏＤ を生成するように構成されている。
【０１１１】
ＬｏＤ構造の生成方法は、非特許文献１や非特許文献２の中で触れられているが、図１５に示すスケーラブル復号を実施する場合には、ＬｏＤ構造における各層の点数を、Ｏｃｔｒｅｅ構造における各層の点数と一致させる必要がある。これは、スケーラブル復号を行う際に、Ｇｅｏｍｅｔｒｙ（Ｏｃｔｒｅｅ）構造及びＡｔｔｒｉｂｕｔｅ（ＬｏＤ）構造に関して、それぞれ図１１のように、どの層までスキップしても点数が合致するようにするためである。
【０１１２】
かかるＯｃｔｒｅｅ構造及びＬｏＤ構造での点数の一致を実現するために、スケーラブルリフティングでは、ＬｏＤ算出部２０９０は、Ｏｃｔｒｅｅ構造をベースとしたＬｏＤを生成するように構成されている。
【０１１３】
参考に、符号化時のＬｏＤ構造の生成方法を記載すると、具体的には、図１２に示すように、幾何情報再構成部２０４０で得られた点群をＬｏＤ構造における最下層に配置し（ここでの下とは点が密な方向/ピラミッドの下方向である）、同じ親ノードを持つ位置の
ノードを１つの集合とし、その中から１個の点を代表として上の層のＬｏＤに選出する。
【０１１４】
選ばれなかった点は、その層に残される。この動作を繰り返していくことによって、上位の層に選出される点の数は、Ｏｃｔｒｅｅ構造の同じ深さの層の点数に一致する。
点群復号装置２００が、スケーラブル復号を行う場合には、中間の層から図１２における上部に向かって順番にＬｏＤの生成を行うこととなるが、位置に関しては量子化誤差が発生するものの、どの点を上位に上げてＬｏＤを構築するかというＬｏＤ構造自体は、中間の層から復号する場合でも同じように構築することが可能である。
【０１１５】
かかるＬｏＤ構造を形成する際に、上位に選出する点を選択する方法として、非特許文献１や非特許文献２のように、モートンコードの順序を基に、モートンコードが一番小さいもの/大きいものを選出する方法を採ってもよいし、或いは、文献Ｂ「［Ｇ-ＰＣＣ］ＣＥ１３.１５  ｒｅｐｏｒｔ  ｏｎ  ＬｏＤ  ｇｅｎｅｒａｔｉｏｎ  ｗｉｔｈ  ｄｉｓ
ｔａｎｃｅ  ｆｒｏｍ  ｃｅｎｔｒｏｉｄ  ｆｏｒ  ｓｐａｔｉａｌ  ｓｃａｌａｂｉｌｉｔｙ（ＩＳＯ/ＩＥＣ  ＪＴＣ１/ＳＣ２９/ＷＧ１１  ｍ５３２８８）」に示すように
、同じ親ノードに属する集団の中で重心を計算し、その重心に最も近い点を選出する方法を採ってもよい。
【０１１６】
また、上述のように、重心位置に基づくＬｏＤの生成を実施するにあたり、点が２点の場合等は、重心位置が必ず点同士の中間になってしまい、重心に近い点を選択するのが難しいという問題がある。このような場合に、モートンコードの順番等に応じて、どちらかを選出することは可能であるが、必ずしも最適な点を選出できるとは限らない。
【０１１７】
そこで、ツリー合成部２０２０は、スケーラブル復号を実施する際に、ＳｋｉｐＯｃｔｒｅｅＬａｙｅｒｓで指定された層よりもさらに一段深い層まで復号し、重心が中間位置になる場合には、各点のさらにもう１層下に紐づく点の数を基に、数が多い方を上位のＬｏＤに選択するようなＬｏＤの生成の洗練化を行ってもよい。
【０１１８】
また、２層下にある点の重心位置に最も近い点を選出する方法や、１層下の重心位置及び２層下の重心位置に重みをつけて算出した重心位置に最も近いノードを選出する方法を採ってもよい。また、ツリー合成部２０２０は、１層下を復号するだけでなく、ｍ層下まで復号して、その幾何情報を基にＬｏＤの生成の洗練化してもよい。
【０１１９】
また、上述の点群符号化装置１００及び点群復号装置２００は、コンピュータに各機能（各工程）を実行させるプログラムであって実現されていてもよい。
【０１２０】
なお、上記の各実施形態では、本発明を点群符号化装置１００及び点群復号装置２００への適用を例にして説明したが、本発明は、かかる例のみに限定されるものではなく、点群符号化装置１００及び点群復号装置２００の各機能を備えた点群符号化/復号システム
にも同様に適用できる。
【符号の説明】
【０１２１】
１０…点群処理システム
１００…点群符号化装置
２００…点群復号装置
２０１０…幾何情報復号部
２０２０…ツリー合成部
２０３０…近似表面合成部
２０４０…幾何情報再構成部
２０５０…逆座標変換部
２０６０…属性情報復号部
２０７０…逆量子化部
２０８０…ＲＡＨＴ部
２０９０…ＬｏＤ算出部
２１００…逆リフティング部
２１１０…逆色変換部 
【図１】
2022002382.tif 000003
【図２】
2022002382.tif 000004
【図３】
2022002382.tif 000005
【図４】
2022002382.tif 000006
【図５】
2022002382.tif 000007
【図６】
2022002382.tif 000008
【図７】
2022002382.tif 000009
【図８】
2022002382.tif 000010
【図９】
2022002382.tif 000011
【図１０】
2022002382.tif 000012
【図１１】
2022002382.tif 000013
【図１２】
2022002382.tif 000014
【図１３】
2022002382.tif 000015
【手続補正書】
【提出日】令和3年5月24日(2021.5.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
点群復号装置であって、
８分木構造の各層の点数を復号するように構成されている幾何情報復号部を備えることを特徴とする点群復号装置。
【請求項２】
前記幾何情報復号部は、前記各層の点数のうち、最上層の点数及び最下層の点数に関しては復号しないように構成されていることを特徴とする請求項１に記載の点群復号装置。
【請求項３】
前記最上層の点数は、１であることを特徴とする請求項２に記載の点群復号装置。
【請求項４】
入力パラメータとして与えられる出力最大点数を超えないように、前記点数に基づいて、スケーラブル復号を行う層の数を決定するように構成されているツリー合成部を備えることを特徴とする請求項１〜３のいずれか一項に記載の点群復号装置。
【請求項５】
入力パラメータとして与えられる比率を超えないように、前記点数に基づいて、スケーラブル復号を行う層の数を決定するように構成されているツリー合成部を備えることを特徴とする請求項１〜３のいずれか一項に記載の点群復号装置。
【請求項６】
８分木構造の各層の点数を復号する工程を有することを特徴とする点群復号方法。
【請求項７】
点群復号装置で用いるプログラムであって、コンピュータに、
８分木構造の各層の点数を復号する工程を実行させることを特徴とするプログラム。