(57)【要約】  三次元データ符号化方法は、複数の点群データを結合することで結合点群データを生成し（Ｓ６３６１）、結合点群データを符号化することでビットストリームを生成し（Ｓ６３６２）、ビットストリームは、（ｉ）複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が複数の点群データのいずれに属するかを示す複数の第２情報と、を含む。
2020116563.tif 000002
【特許請求の範囲】
【請求項１】
複数の点群データを結合することで結合点群データを生成し、
前記結合点群データを符号化することでビットストリームを生成し、
前記ビットストリームは、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を含む、
三次元データ符号化方法。
【請求項２】
前記複数の第２情報の各々は、
対応する点インデックスを有する三次元点の数を示す第３情報と、
前記第３情報との組み合わせにより、前記対応する点インデックスを有する前記三次元点が前記複数の点群データのいずれに属するかを特定可能な第４情報とを含む
請求項１記載の三次元データ符号化方法。
【請求項３】
前記第３情報で示される前記三次元点の数が前記複数の点群データの数と等しい場合、対応する前記第２情報は、前記第４情報を含まない
請求項２記載の三次元データ符号化方法。
【請求項４】
前記複数の第２情報の各々は、前記複数の点群データの数と同じビット数を有するビットマップ情報である
請求項１記載の三次元データ符号化方法。
【請求項５】
複数の点群データが結合された結合点群データが符号化されることで生成されたビットストリームから、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を取得し、
前記第１情報及び前記複数の第２情報を用いて、（ｉ）前記ビットストリームから前記結合点群データを復号し、（ｉｉ）前記結合点群データから前記複数の点群データを生成する
三次元データ復号方法。
【請求項６】
前記複数の第２情報の各々は、
対応する点インデックスを有する三次元点の数を示す第３情報と、
前記第３情報との組み合わせにより、前記対応する点インデックスを有する前記三次元点が前記複数の点群データのいずれに属するかを特定可能な第４情報とを含む
請求項５記載の三次元データ復号方法。
【請求項７】
前記第３情報で示される前記三次元点の数が前記複数の点群データの数と等しい場合、対応する前記第２情報は、前記第４情報を含まない
請求項６記載の三次元データ復号方法。
【請求項８】
前記複数の第２情報の各々は、前記複数の点群データの数と同じビット数を有するビットマップ情報である
請求項５記載の三次元データ復号方法。
【請求項９】
プロセッサと、
メモリとを備え、
前記プロセッサは、前記メモリを用いて、
複数の点群データを結合することで結合点群データを生成し、
前記結合点群データを符号化することでビットストリームを生成し、
前記ビットストリームは、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を含む、
三次元データ符号化装置。
【請求項１０】
プロセッサと、
メモリとを備え、
前記プロセッサは、前記メモリを用いて、
複数の点群データが結合された結合点群データが符号化されることで生成されたビットストリームから、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を取得し、
前記第１情報及び前記複数の第２情報を用いて、（ｉ）前記ビットストリームから前記結合点群データを復号し、（ｉｉ）前記結合点群データから前記複数の点群データを生成する
三次元データ復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置に関する。
【背景技術】
【０００２】
自動車或いはロボットが自律的に動作するためのコンピュータビジョン、マップ情報、監視、インフラ点検、又は、映像配信など、幅広い分野において、今後、三次元データを活用した装置又はサービスの普及が見込まれる。三次元データは、レンジファインダなどの距離センサ、ステレオカメラ、又は複数の単眼カメラの組み合わせなど様々な方法で取得される。【０００３】
三次元データの表現方法の１つとして、三次元空間内の点群によって三次元構造の形状を表すポイントクラウドと呼ばれる表現方法がある。ポイントクラウドでは、点群の位置と色とが格納される。ポイントクラウドは三次元データの表現方法として主流になると予想されるが、点群はデータ量が非常に大きい。よって、三次元データの蓄積又は伝送においては二次元の動画像（一例として、ＭＰＥＧで規格化されたＭＰＥＧ−４  ＡＶＣ又はＨＥＶＣなどがある）と同様に、符号化によるデータ量の圧縮が必須となる。【０００４】
また、ポイントクラウドの圧縮については、ポイントクラウド関連の処理を行う公開のライブラリ（Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｌｉｂｒａｒｙ）などによって一部サポートされている。【０００５】
また、三次元の地図データを用いて、車両周辺に位置する施設を検索し、表示する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１４／０２０６６３号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
三次元データの符号化処理では、符号化効率を向上できることが望まれている。【０００８】
本開示は、符号化効率を向上できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本開示の一態様に係る三次元データ符号化方法は、複数の点群データを結合することで結合点群データを生成し、前記結合点群データを符号化することでビットストリームを生成し、前記ビットストリームは、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を含む。【００１０】
本開示の一態様に係る三次元データ復号方法は、複数の点群データが結合された結合点群データが符号化されることで生成されたビットストリームから、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を取得し、前記第１情報及び前記複数の第２情報を用いて、（ｉ）前記ビットストリームから前記結合点群データを復号し、（ｉｉ）前記結合点群データから前記複数の点群データを生成する。
【発明の効果】
【００１１】
本開示は、符号化効率を向上できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供できる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施の形態１に係る三次元データ符号化復号システムの構成を示す図である。
【図２】図２は、実施の形態１に係る点群データの構成例を示す図である。
【図３】図３は、実施の形態１に係る点群データ情報が記述されたデータファイルの構成例を示す図である。
【図４】図４は、実施の形態１に係る点群データの種類を示す図である。
【図５】図５は、実施の形態１に係る第１の符号化部の構成を示す図である。
【図６】図６は、実施の形態１に係る第１の符号化部のブロック図である。
【図７】図７は、実施の形態１に係る第１の復号部の構成を示す図である。
【図８】図８は、実施の形態１に係る第１の復号部のブロック図である。
【図９】図９は、実施の形態１に係る第２の符号化部の構成を示す図である。
【図１０】図１０は、実施の形態１に係る第２の符号化部のブロック図である。
【図１１】図１１は、実施の形態１に係る第２の復号部の構成を示す図である。
【図１２】図１２は、実施の形態１に係る第２の復号部のブロック図である。
【図１３】図１３は、実施の形態１に係るＰＣＣ符号化データに関わるプロトコルスタックを示す図である。
【図１４】図１４は、実施の形態２に係るＩＳＯＢＭＦＦの基本構造を示す図である。
【図１５】図１５は、実施の形態２に係るプロトコルスタックを示す図である。
【図１６】図１６は、実施の形態３に係る符号化部及び多重化部の構成を示す図である。
【図１７】図１７は、実施の形態３に係る符号化データの構成例を示す図である。
【図１８】図１８は、実施の形態３に係る符号化データ及びＮＡＬユニットの構成例を示す図である。
【図１９】図１９は、実施の形態３に係るｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅのセマンティクス例を示す図である。
【図２０】図２０は、実施の形態３に係るＮＡＬユニットの送出順序の例を示す図である。
【図２１】図２１は、実施の形態４に係る第１の符号化部のブロック図である。
【図２２】図２２は、実施の形態４に係る第１の復号部のブロック図である。
【図２３】図２３は、実施の形態４に係る分割部のブロック図である。
【図２４】図２４は、実施の形態４に係るスライス及びタイルの分割例を示す図である。
【図２５】図２５は、実施の形態４に係るスライス及びタイルの分割パターンの例を示す図である。
【図２６】図２６は、実施の形態４に係る依存関係の例を示す図である。
【図２７】図２７は、実施の形態４に係るデータの復号順の例を示す図である。
【図２８】図２８は、実施の形態４に係る符号化処理のフローチャートである。
【図２９】図２９は、実施の形態４に係る結合部のブロック図である。
【図３０】図３０は、実施の形態４に係る符号化データ及びＮＡＬユニットの構成例を示す図である。
【図３１】図３１は、実施の形態４に係る符号化処理のフローチャートである。
【図３２】図３２は、実施の形態４に係る復号処理のフローチャートである。
【図３３】図３３は、実施の形態４に係る符号化処理のフローチャートである。
【図３４】図３４は、実施の形態４に係る復号処理のフローチャートである。
【図３５】図３５は、実施の形態５に係る複数フレームの点群データからツリー構造及びオキュパンシー符号を生成するイメージを示す図である。
【図３６】図３６は、実施の形態５に係るフレーム結合の例を示す図である。
【図３７】図３７は、実施の形態５に係る複数フレームの結合の例を示す図である。
【図３８】図３８は、実施の形態５に係る三次元データ符号化処理のフローチャートである。
【図３９】図３９は、実施の形態５に係る符号化処理のフローチャートである。
【図４０】図４０は、実施の形態５に係る三次元データ復号処理のフローチャートである。
【図４１】図４１は、実施の形態５に係る復号及び分割処理のフローチャートである。
【図４２】図４２は、実施の形態５に係る符号化部のブロック図である。
【図４３】図４３は、実施の形態５に係る分割部のブロック図である。
【図４４】図４４は、実施の形態５に係る位置情報符号化部のブロック図である。
【図４５】図４５は、実施の形態５に係る属性情報符号化部のブロック図である。
【図４６】図４６は、実施の形態５に係る点群データの符号化処理のフローチャートである。
【図４７】図４７は、実施の形態５に係る符号化処理のフローチャートである。
【図４８】図４８は、実施の形態５に係る復号部のブロック図である。
【図４９】図４９は、実施の形態５に係る位置情報復号部のブロック図である。
【図５０】図５０は、実施の形態５に係る属性情報復号部のブロック図である。
【図５１】図５１は、実施の形態５に係る結合部のブロック図である。
【図５２】図５２は、実施の形態５に係る点群データの復号処理のフローチャートである。
【図５３】図５３は、実施の形態５に係る復号処理のフローチャートである。
【図５４】図５４は、実施の形態５に係るフレームの結合パターンの例を示す図である。
【図５５】図５５は、実施の形態５に係るＰＣＣフレームの構成例を示す図である。
【図５６】図５６は、実施の形態５に係る符号化位置情報の構成を示す図である。
【図５７】図５７は、実施の形態５に係る符号化位置情報のヘッダのシンタックス例を示す図である。
【図５８】図５８は、実施の形態５に係る符号化位置情報のペイロードのシンタックス例を示す図である。
【図５９】図５９は、実施の形態５に係るリーフノード情報の例を示す図である。
【図６０】図６０は、実施の形態５に係るリーフノード情報の例を示す図である。
【図６１】図６１は、実施の形態５に係るビットマップ情報の例を示す図である。
【図６２】図６２は、実施の形態５に係る符号化属性情報の構成を示す図である。
【図６３】図６３は、実施の形態５に係る符号化属性情報のヘッダのシンタックス例を示す図である。
【図６４】図６４は、実施の形態５に係る符号化属性情報のペイロードのシンタックス例を示す図である。
【図６５】図６５は、実施の形態５に係る符号化データの構成を示す図である。
【図６６】図６６は、実施の形態５に係るデータの送出順及びデータの参照関係を示す図である。
【図６７】図６７は、実施の形態５に係るデータの送出順及びデータの参照関係を示す図である。
【図６８】図６８は、実施の形態５に係るデータの送出順及びデータの参照関係を示す図である。
【図６９】図６９は、実施の形態５に係る一部のフレームを復号する例を示す図である。
【図７０】図７０は、実施の形態５に係るデータの送出順及びデータの参照関係を示す図である。
【図７１】図７１は、実施の形態５に係るデータの送出順及びデータの参照関係を示す図である。
【図７２】図７２は、実施の形態５に係るデータの送出順及びデータの参照関係を示す図である。
【図７３】図７３は、実施の形態５に係るデータの送出順及びデータの参照関係を示す図である。
【図７４】図７４は、実施の形態５に係る符号化処理のフローチャートである。
【図７５】図７５は、実施の形態５に係る復号処理のフローチャートである。
【図７６】図７６は、実施の形態６に係る符号化部のブロック図である。
【図７７】図７７は、実施の形態６に係るフレームインデックス生成部のブロック図である。
【図７８】図７８は、実施の形態６に係る復号部のブロック図である。
【図７９】図７９は、実施の形態６に係るフレームインデックス取得部のブロック図である。
【図８０】図８０は、実施の形態６に係るフレームインデックス符号化部のブロック図である。
【図８１】図８１は、実施の形態６に係るリーフノード及びビットマップの一例を示す図である。
【図８２】図８２は、実施の形態６に係るランキングの一例を示す図である。
【図８３】図８３は、実施の形態６に係るルックアップテーブルの一例を示す図である。
【図８４】図８４は、実施の形態６に係る符号化処理のフローチャートである。
【図８５】図８５は、実施の形態６に係る符号化データの生成処理のフローチャートである。
【図８６】図８６は、実施の形態６に係る結合情報のシンタックス例を示す図である。
【図８７】図８７は、実施の形態６に係るフレームインデックス取得部のブロック図である。
【図８８】図８８は、実施の形態６に係るルックアップテーブルの一例を示す図である。
【図８９】図８９は、実施の形態６に係るフレームインデックスの復号処理のフローチャートである。
【図９０】図９０は、実施の形態６に係る共通情報及び個別情報の復号処理のフローチャートである。
【図９１】図９１は、実施の形態６に係るリーフノードのシンタックスの第１例を示す図である。
【図９２】図９２は、実施の形態６に係るリーフノードのシンタックスの第２例を示す図である。
【図９３】図９３は、実施の形態６に係る位置情報のシンタックスの第１例を示す図である。
【図９４】図９４は、実施の形態６に係る位置情報のシンタックスの第２例を示す図である。
【図９５】図９５は、実施の形態６に係る符号化処理のフローチャートである。
【図９６】図９６は、実施の形態６に係る復号処理のフローチャートである。
【図９７】図９７は、実施の形態７に係るフレーム結合時の重複点の例を示す図である。
【図９８】図９８は、実施の形態７に係るヘッダのシンタックス例を示す図である。
【図９９】図９９は、実施の形態７に係るノード情報のシンタックス例を示す図である。
【図１００】図１００は、実施の形態７に係る重複点の例を示す図である。
【図１０１】図１０１は、実施の形態７に係る重複点の例を示す図である。
【図１０２】図１０２は、実施の形態７に係る重複点の例を示す図である。
【図１０３】図１０３は、実施の形態７に係る三次元データ符号化処理のフローチャートである。
【図１０４】図１０４は、実施の形態７に係るソート処理の例を示す図である。
【図１０５】図１０５は、実施の形態７に係るソート処理の例を示す図である。
【図１０６】図１０６は、実施の形態７に係る三次元データ復号処理のフローチャートである。
【図１０７】図１０７は、実施の形態７に係るノード情報のシンタックス例を示す図である。
【図１０８】図１０８は、実施の形態７に係るビットマップ情報と、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ及びｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏとの関係を示す図である。
【図１０９】図１０９は、実施の形態７に係るビットマップ情報と、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ及びｃｏｍｂｉｎｅ＿ｉｄｘとの関係を示す図である。
【図１１０】図１１０は、実施の形態７に係る三次元データ符号化処理のフローチャートである。
【図１１１】図１１１は、実施の形態７に係る三次元データ復号処理のフローチャートである。
【図１１２】図１１２は、実施の形態７に係るＳＰＳのシンタックス例を示す図である。
【図１１３】図１１３は、実施の形態７に係るＧＰＳのシンタックス例を示す図である。
【図１１４】図１１４は、実施の形態７に係るＧＰＳのシンタックス例を示す図である。
【図１１５】図１１５は、実施の形態７に係る符号化効率の比とフレーム結合の適用の可否との関係の例を示す図である。
【図１１６】図１１６は、実施の形態７に係る符号化効率の比とフレーム間の距離との関係の例を示す図である。
【図１１７】図１１７は、実施の形態７に係るフレーム結合の適用の可否の切り替えを模式的に示す図である。
【図１１８】図１１８は、実施の形態７に係る三次元データ符号化処理のフローチャートである。
【図１１９】図１１９は、実施の形態７に係る三次元データ符号化処理のフローチャートである。
【図１２０】図１２０は、実施の形態７に係る三次元データ符号化装置のブロック図である。
【図１２１】図１２１は、実施の形態７に係る三次元データ符号化装置のブロック図である。
【図１２２】図１２２は、実施の形態７に係る符号化データの構成例を示す図である。
【図１２３】図１２３は、実施の形態７に係る符号化データの構成例を示す図である。
【図１２４】図１２４は、実施の形態７に係るメタデータの復号処理のフローチャートである。
【図１２５】図１２５は、実施の形態７に係る三次元データ符号化処理のフローチャートである。
【図１２６】図１２６は、実施の形態７に係る三次元データ復号処理のフローチャートである。
【発明を実施するための形態】
【００１３】
本開示の一態様に係る三次元データ符号化方法は、複数の点群データを結合することで結合点群データを生成し、前記結合点群データを符号化することでビットストリームを生成し、前記ビットストリームは、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を含む。
【００１４】
これによれば、複数の点群データをまとめて符号化することにより符号化効率を向上できる。さらに、第１情報及び第２情報により、点群データ内の重複点及び点群データ間の重複点が存在する場合において、効率的に重複点を識別できる。
【００１５】
例えば、前記複数の第２情報の各々は、対応する点インデックスを有する三次元点の数を示す第３情報と、前記第３情報との組み合わせにより、前記対応する点インデックスを有する前記三次元点が前記複数の点群データのいずれに属するかを特定可能な第４情報とを含んでもよい。
【００１６】
例えば、前記第３情報で示される前記三次元点の数が前記複数の点群データの数と等しい場合、対応する前記第２情報は、前記第４情報を含まなくてもよい。
【００１７】
これによれば、ビットストリームの符号量を低減できる。
【００１８】
例えば、前記複数の第２情報の各々は、前記複数の点群データの数と同じビット数を有するビットマップ情報であってもよい。
【００１９】
本開示の一態様に係る三次元データ復号方法は、複数の点群データが結合された結合点群データが符号化されることで生成されたビットストリームから、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を取得し、前記第１情報及び前記複数の第２情報を用いて、（ｉ）前記ビットストリームから前記結合点群データを復号し、（ｉｉ）前記結合点群データから前記複数の点群データを生成する。
【００２０】
これによれば、複数の点群データをまとめて符号化することにより符号化効率を向上できる。さらに、第１情報及び第２情報により、点群データ内の重複点及び点群データ間の重複点が存在する場合において、効率的に重複点を識別できる。
【００２１】
例えば、前記複数の第２情報の各々は、対応する点インデックスを有する三次元点の数を示す第３情報と、前記第３情報との組み合わせにより、前記対応する点インデックスを有する前記三次元点が前記複数の点群データのいずれに属するかを特定可能な第４情報とを含んでもよい。
【００２２】
例えば、前記第３情報で示される前記三次元点の数が前記複数の点群データの数と等しい場合、対応する前記第２情報は、前記第４情報を含まなくてもよい。
【００２３】
これによれば、ビットストリームの符号量を低減できる。
【００２４】
例えば、前記複数の第２情報の各々は、前記複数の点群データの数と同じビット数を有するビットマップ情報であってもよい。
【００２５】
また、本開示の一態様に係る三次元データ符号化装置は、プロセッサと、メモリとを備え、前記プロセッサは、前記メモリを用いて、複数の点群データを結合することで結合点群データを生成し、前記結合点群データを符号化することでビットストリームを生成し、前記ビットストリームは、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を含む。
【００２６】
これによれば、複数の点群データをまとめて符号化することにより符号化効率を向上できる。さらに、第１情報及び第２情報により、点群データ内の重複点及び点群データ間の重複点が存在する場合において、効率的に重複点を識別できる。
【００２７】
また、本開示の一態様に係る三次元データ復号装置は、プロセッサと、メモリとを備え、前記プロセッサは、前記メモリを用いて、複数の点群データが結合された結合点群データが符号化されることで生成されたビットストリームから、（ｉ）前記複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックスの各々と対応し、対応する点インデックスを有する三次元点が前記複数の点群データのいずれに属するかを示す複数の第２情報と、を取得し、前記第１情報及び前記複数の第２情報を用いて、（ｉ）前記ビットストリームから前記結合点群データを復号し、（ｉｉ）前記結合点群データから前記複数の点群データを生成する。
【００２８】
これによれば、複数の点群データをまとめて符号化することにより符号化効率を向上できる。さらに、第１情報及び第２情報により、点群データ内の重複点及び点群データ間の重複点が存在する場合において、効率的に重複点を識別できる。
【００２９】
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【００３０】
以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【００３１】
（実施の形態１）
ポイントクラウドの符号化データを実際の装置又はサービスにおいて使用する際には、ネットワーク帯域を抑制するために用途に応じて必要な情報を送受信することが望ましい。しかしながら、これまで、三次元データの符号化構造にはそのような機能が存在せず、そのための符号化方法も存在しなかった。
【００３２】
本実施の形態では、三次元のポイントクラウドの符号化データにおいて用途に応じて必要な情報を送受信する機能を提供するための三次元データ符号化方法及び三次元データ符号化装置、並びに、当該符号化データを復号する三次元データ復号方法及び三次元データ復号装置、並びに、当該符号化データを多重化する三次元データ多重化方法、並びに、当該符号化データを伝送する三次元データ伝送方法について説明する。
【００３３】
特に、現在、点群データの符号化方法（符号化方式）として第１の符号化方法、及び第２の符号化方法が検討されているが、符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法が定義されておらず、このままでは符号化部におけるＭＵＸ処理（多重化）、又は、伝送或いは蓄積ができないという課題がある。
【００３４】
また、ＰＣＣ（Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｃｏｍｐｒｅｓｓｉｏｎ）のように、第１の符号化方法と第２の符号化方法の２つのコーデックが混在するフォーマットをサポートする方法はこれまで存在しない。
【００３５】
本実施の形態では、第１の符号化方法と第２の符号化方法の２つのコーデックが混在するＰＣＣ符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法について説明する。
【００３６】
まず、本実施の形態に係る三次元データ（点群データ）符号化復号システムの構成を説明する。図１は、本実施の形態に係る三次元データ符号化復号システムの構成例を示す図である。図１に示すように、三次元データ符号化復号システムは、三次元データ符号化システム４６０１と、三次元データ復号システム４６０２と、センサ端末４６０３と、外部接続部４６０４とを含む。
【００３７】
三次元データ符号化システム４６０１は、三次元データである点群データを符号化することで符号化データ又は多重化データを生成する。なお、三次元データ符号化システム４６０１は、単一の装置により実現される三次元データ符号化装置であってもよいし、複数の装置により実現されるシステムであってもよい。また、三次元データ符号化装置は、三次元データ符号化システム４６０１に含まれる複数の処理部のうち一部を含んでもよい。
【００３８】
三次元データ符号化システム４６０１は、点群データ生成システム４６１１と、提示部４６１２と、符号化部４６１３と、多重化部４６１４と、入出力部４６１５と、制御部４６１６とを含む。点群データ生成システム４６１１は、センサ情報取得部４６１７と、点群データ生成部４６１８とを含む。
【００３９】
センサ情報取得部４６１７は、センサ端末４６０３からセンサ情報を取得し、センサ情報を点群データ生成部４６１８に出力する。点群データ生成部４６１８は、センサ情報から点群データを生成し、点群データを符号化部４６１３へ出力する。
【００４０】
提示部４６１２は、センサ情報又は点群データをユーザに提示する。例えば、提示部４６１２は、センサ情報又は点群データに基づく情報又は画像を表示する。
【００４１】
符号化部４６１３は、点群データを符号化（圧縮）し、得られた符号化データと、符号化過程において得られた制御情報と、その他の付加情報とを多重化部４６１４へ出力する。付加情報は、例えば、センサ情報を含む。
【００４２】
多重化部４６１４は、符号化部４６１３から入力された符号化データと、制御情報と、付加情報とを多重することで多重化データを生成する。多重化データのフォーマットは、例えば蓄積のためのファイルフォーマット、又は伝送のためのパケットフォーマットである。
【００４３】
入出力部４６１５（例えば、通信部又はインタフェース）は、多重化データを外部へ出力する。または、多重化データは、内部メモリ等の蓄積部に蓄積される。制御部４６１６（またはアプリ実行部）は、各処理部を制御する。つまり、制御部４６１６は、符号化及び多重化等の制御を行う。
【００４４】
なお、センサ情報が符号化部４６１３又は多重化部４６１４へ入力されてもよい。また、入出力部４６１５は、点群データ又は符号化データをそのまま外部へ出力してもよい。
【００４５】
三次元データ符号化システム４６０１から出力された伝送信号（多重化データ）は、外部接続部４６０４を介して、三次元データ復号システム４６０２に入力される。
【００４６】
三次元データ復号システム４６０２は、符号化データ又は多重化データを復号することで三次元データである点群データを生成する。なお、三次元データ復号システム４６０２は、単一の装置により実現される三次元データ復号装置であってもよいし、複数の装置により実現されるシステムであってもよい。また、三次元データ復号装置は、三次元データ復号システム４６０２に含まれる複数の処理部のうち一部を含んでもよい。
【００４７】
三次元データ復号システム４６０２は、センサ情報取得部４６２１と、入出力部４６２２と、逆多重化部４６２３と、復号部４６２４と、提示部４６２５と、ユーザインタフェース４６２６と、制御部４６２７とを含む。
【００４８】
センサ情報取得部４６２１は、センサ端末４６０３からセンサ情報を取得する。
【００４９】
入出力部４６２２は、伝送信号を取得し、伝送信号から多重化データ（ファイルフォーマット又はパケット）を復号し、多重化データを逆多重化部４６２３へ出力する。
【００５０】
逆多重化部４６２３は、多重化データから符号化データ、制御情報及び付加情報を取得し、符号化データ、制御情報及び付加情報を復号部４６２４へ出力する。
【００５１】
復号部４６２４は、符号化データを復号することで点群データを再構成する。
【００５２】
提示部４６２５は、点群データをユーザに提示する。例えば、提示部４６２５は、点群データに基づく情報又は画像を表示する。ユーザインタフェース４６２６は、ユーザの操作に基づく指示を取得する。制御部４６２７（またはアプリ実行部）は、各処理部を制御する。つまり、制御部４６２７は、逆多重化、復号及び提示等の制御を行う。
【００５３】
なお、入出力部４６２２は、点群データ又は符号化データをそのまま外部から取得してもよい。また、提示部４６２５は、センサ情報などの付加情報を取得し、付加情報に基づいた情報を提示してもよい。また、提示部４６２５は、ユーザインタフェース４６２６で取得されたユーザの指示に基づき、提示を行ってもよい。
【００５４】
センサ端末４６０３は、センサで得られた情報であるセンサ情報を生成する。センサ端末４６０３は、センサ又はカメラを搭載した端末であり、例えば、自動車などの移動体、飛行機などの飛行物体、携帯端末、又はカメラなどがある。
【００５５】
センサ端末４６０３で取得可能なセンサ情報は、例えば、（１）ＬＩＤＡＲ、ミリ波レーダ、又は赤外線センサから得られる、センサ端末４６０３と対象物との距離、又は対象物の反射率、（２）複数の単眼カメラ画像又はステレオカメラ画像から得られるカメラと対象物との距離又は対象物の反射率等である。また、センサ情報は、センサの姿勢、向き、ジャイロ（角速度）、位置（ＧＰＳ情報又は高度）、速度、又は加速度等を含んでもよい。また、センサ情報は、気温、気圧、湿度、又は磁気等を含んでもよい。
【００５６】
外部接続部４６０４は、集積回路（ＬＳＩ又はＩＣ）、外部蓄積部、インターネットを介したクラウドサーバとの通信、又は、放送等により実現される。
【００５７】
次に、点群データについて説明する。図２は、点群データの構成を示す図である。図３は、点群データの情報が記述されたデータファイルの構成例を示す図である。
【００５８】
点群データは、複数の点のデータを含む。各点のデータは、位置情報（三次元座標）、及びその位置情報に対する属性情報を含む。この点が複数集まったものを点群と呼ぶ。例えば、点群は対象物（オブジェクト）の三次元形状を示す。
【００５９】
三次元座標等の位置情報（Ｐｏｓｉｔｉｏｎ）をジオメトリ（ｇｅｏｍｅｔｒｙ）と呼ぶこともある。また、各点のデータは、複数の属性種別の属性情報（ａｔｔｒｉｂｕｔｅ）を含んでもよい。属性種別は、例えば色又は反射率などである。
【００６０】
１つの位置情報に対して１つの属性情報が対応付けられてもよいし、１つの位置情報に対して複数の異なる属性種別を持つ属性情報が対応付けられてもよい。また、１つの位置情報に対して同じ属性種別の属性情報が複数対応付けられてもよい。
【００６１】
図３に示すデータファイルの構成例は、位置情報と属性情報とが１対１に対応する場合の例であり、点群データを構成するＮ個の点の位置情報と属性情報とを示している。
【００６２】
位置情報は、例えば、ｘ、ｙ、ｚの３軸の情報である。属性情報は、例えば、ＲＧＢの色情報である。代表的なデータファイルとしてｐｌｙファイルなどがある。
【００６３】
次に、点群データの種類について説明する。図４は、点群データの種類を示す図である。図４に示すように、点群データには、静的オブジェクトと、動的オブジェクトとがある。
【００６４】
静的オブジェクトは、任意の時間（ある時刻）の三次元点群データである。動的オブジェクトは、時間的に変化する三次元点群データである。以降、ある時刻の三次元点群データをＰＣＣフレーム、又はフレームと呼ぶ。
【００６５】
オブジェクトは、通常の映像データのように、ある程度領域が制限されている点群であってもよいし、地図情報のように領域が制限されていない大規模点群であってもよい。
【００６６】
また、様々な密度の点群データがあり、疎な点群データと、密な点群データとが存在してもよい。
【００６７】
以下、各処理部の詳細について説明する。センサ情報は、ＬＩＤＡＲ或いはレンジファインダなどの距離センサ、ステレオカメラ、又は、複数の単眼カメラの組合せなど様々な方法で取得される。点群データ生成部４６１８は、センサ情報取得部４６１７で得られたセンサ情報に基づき点群データを生成する。点群データ生成部４６１８は、点群データとして、位置情報を生成し、位置情報に、当該位置情報に対する属性情報を付加する。
【００６８】
点群データ生成部４６１８は、位置情報の生成又は属性情報の付加の際に、点群データを加工してもよい。例えば、点群データ生成部４６１８は、位置が重複する点群を削除することでデータ量を減らしてもよい。また、点群データ生成部４６１８は、位置情報を変換（位置シフト、回転又は正規化など）してもよいし、属性情報をレンダリングしてもよい。
【００６９】
なお、図１では、点群データ生成システム４６１１は、三次元データ符号化システム４６０１に含まれるが、三次元データ符号化システム４６０１の外部に独立して設けられてもよい。
【００７０】
符号化部４６１３は、点群データを予め規定された符号化方法に基づき符号化することで符号化データを生成する。符号化方法には大きく以下の２種類がある。一つ目は、位置情報を用いた符号化方法であり、この符号化方法を、以降、第１の符号化方法と記載する。二つ目は、ビデオコーデックを用いた符号化方法であり、この符号化方法を、以降、第２の符号化方法と記載する。
【００７１】
復号部４６２４は、符号化データを予め規定された符号化方法に基づき復号することで点群データを復号する。
【００７２】
多重化部４６１４は、符号化データを、既存の多重化方式を用いて多重化することで多重化データを生成する。生成された多重化データは、伝送又は蓄積される。多重化部４６１４は、ＰＣＣ符号化データの他に、映像、音声、字幕、アプリケーション、ファイルなどの他のメディア、又は基準時刻情報を多重化する。また、多重化部４６１４は、さらに、センサ情報又は点群データに関連する属性情報を多重してもよい。
【００７３】
多重化方式又はファイルフォーマットとしては、ＩＳＯＢＭＦＦ、ＩＳＯＢＭＦＦベースの伝送方式であるＭＰＥＧ−ＤＡＳＨ、ＭＭＴ、ＭＰＥＧ−２  ＴＳ  Ｓｙｓｔｅｍｓ、ＲＭＰなどがある。
【００７４】
逆多重化部４６２３は、多重化データからＰＣＣ符号化データ、その他のメディア、及び時刻情報などを抽出する。
【００７５】
入出力部４６１５は、多重化データを、放送又は通信など、伝送する媒体又は蓄積する媒体にあわせた方法を用いて伝送する。入出力部４６１５は、インターネット経由で他のデバイスと通信してもよいし、クラウドサーバなどの蓄積部と通信してもよい。
【００７６】
通信プロトコルとしては、ｈｔｔｐ、ｆｔｐ、ＴＣＰ又はＵＤＰなどが用いられる。ＰＵＬＬ型の通信方式が用いられてもよいし、ＰＵＳＨ型の通信方式が用いられてもよい。
【００７７】
有線伝送及び無線伝送のいずれが用いられてもよい。有線伝送としては、Ｅｔｈｅｒｎｅｔ（登録商標）、ＵＳＢ、ＲＳ−２３２Ｃ、ＨＤＭＩ（登録商標）、又は同軸ケーブルなどが用いられる。無線伝送としては、無線ＬＡＮ、Ｗｉ−Ｆｉ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）又はミリ波などが用いられる。
【００７８】
また、放送方式としては、例えばＤＶＢ−Ｔ２、ＤＶＢ−Ｓ２、ＤＶＢ−Ｃ２、ＡＴＳＣ３．０、又はＩＳＤＢ−Ｓ３などが用いられる。
【００７９】
図５は、第１の符号化方法の符号化を行う符号化部４６１３の例である第１の符号化部４６３０の構成を示す図である。図６は、第１の符号化部４６３０のブロック図である。第１の符号化部４６３０は、点群データを第１の符号化方法で符号化することで符号化データ（符号化ストリーム）を生成する。この第１の符号化部４６３０は、位置情報符号化部４６３１と、属性情報符号化部４６３２と、付加情報符号化部４６３３と、多重化部４６３４とを含む。
【００８０】
第１の符号化部４６３０は、三次元構造を意識して符号化を行うという特徴を有する。また、第１の符号化部４６３０は、属性情報符号化部４６３２が、位置情報符号化部４６３１から得られる情報を用いて符号を行うという特徴を有する。第１の符号化方法は、ＧＰＣＣ（Ｇｅｏｍｅｔｒｙ  ｂａｓｅｄ  ＰＣＣ）とも呼ばれる。
【００８１】
点群データは、ＰＬＹファイルのようなＰＣＣ点群データ、又は、センサ情報から生成されたＰＣＣ点群データであり、位置情報（Ｐｏｓｉｔｉｏｎ）、属性情報（Ａｔｔｒｉｂｕｔｅ）、及びその他の付加情報（ＭｅｔａＤａｔａ）を含む。位置情報は位置情報符号化部４６３１に入力され、属性情報は属性情報符号化部４６３２に入力され、付加情報は付加情報符号化部４６３３に入力される。
【００８２】
位置情報符号化部４６３１は、位置情報を符号化することで符号化データである符号化位置情報（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ）を生成する。例えば、位置情報符号化部４６３１は、８分木等のＮ分木構造を用いて位置情報を符号化する。具体的には、８分木では、対象空間が８個のノード（サブ空間）に分割され、各ノードに点群が含まれるか否かを示す８ビットの情報（オキュパンシー符号）が生成される。また、点群が含まれるノードは、さらに、８個のノードに分割され、当該８個のノードの各々に点群が含まれるか否かを示す８ビットの情報が生成される。この処理が、予め定められた階層又はノードに含まれる点群の数の閾値以下になるまで繰り返される。
【００８３】
属性情報符号化部４６３２は、位置情報符号化部４６３１で生成された構成情報を用いて符号化することで符号化データである符号化属性情報（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ）を生成する。例えば、属性情報符号化部４６３２は、位置情報符号化部４６３１で生成された８分木構造に基づき、処理対象の対象点（対象ノード）の符号化において参照する参照点（参照ノード）を決定する。例えば、属性情報符号化部４６３２は、周辺ノード又は隣接ノードのうち、８分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
【００８４】
また、属性情報の符号化処理は、量子化処理、予測処理、及び算術符号化処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、符号化のパラメータの決定に参照ノードの状態（例えば、参照ノードに点群が含まれる否かを示す占有情報）を用いること、である。例えば、符号化のパラメータとは、量子化処理における量子化パラメータ、又は算術符号化におけるコンテキスト等である。
【００８５】
付加情報符号化部４６３３は、付加情報のうち、圧縮可能なデータを符号化することで符号化データである符号化付加情報（Ｃｏｍｐｒｅｓｓｅｄ  ＭｅｔａＤａｔａ）を生成する。
【００８６】
多重化部４６３４は、符号化位置情報、符号化属性情報、符号化付加情報及びその他の付加情報を多重化することで符号化データである符号化ストリーム（Ｃｏｍｐｒｅｓｓｅｄ  Ｓｔｒｅａｍ）を生成する。生成された符号化ストリームは、図示しないシステムレイヤの処理部へ出力される。
【００８７】
次に、第１の符号化方法の復号を行う復号部４６２４の例である第１の復号部４６４０について説明する。図７は、第１の復号部４６４０の構成を示す図である。図８は、第１の復号部４６４０のブロック図である。第１の復号部４６４０は、第１の符号化方法で符号化された符号化データ（符号化ストリーム）を、第１の符号化方法で復号することで点群データを生成する。この第１の復号部４６４０は、逆多重化部４６４１と、位置情報復号部４６４２と、属性情報復号部４６４３と、付加情報復号部４６４４とを含む。
【００８８】
図示しないシステムレイヤの処理部から符号化データである符号化ストリーム（Ｃｏｍｐｒｅｓｓｅｄ  Ｓｔｒｅａｍ）が第１の復号部４６４０に入力される。
【００８９】
逆多重化部４６４１は、符号化データから、符号化位置情報（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ）、符号化属性情報（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ）、符号化付加情報（Ｃｏｍｐｒｅｓｓｅｄ  ＭｅｔａＤａｔａ）、及び、その他の付加情報を分離する。
【００９０】
位置情報復号部４６４２は、符号化位置情報を復号することで位置情報を生成する。例えば、位置情報復号部４６４２は、８分木等のＮ分木構造で表される符号化位置情報から三次元座標で表される点群の位置情報を復元する。
【００９１】
属性情報復号部４６４３は、位置情報復号部４６４２で生成された構成情報に基づき、符号化属性情報を復号する。例えば、属性情報復号部４６４３は、位置情報復号部４６４２で得られた８分木構造に基づき、処理対象の対象点（対象ノード）の復号において参照する参照点（参照ノード）を決定する。例えば、属性情報復号部４６４３は、周辺ノード又は隣接ノードのうち、８分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
【００９２】
また、属性情報の復号処理は、逆量子化処理、予測処理、及び算術復号処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、復号のパラメータの決定に参照ノードの状態（例えば、参照ノードに点群が含まれる否かを示す占有情報）を用いること、である。例えば、復号のパラメータとは、逆量子化処理における量子化パラメータ、又は算術復号におけるコンテキスト等である。
【００９３】
付加情報復号部４６４４は、符号化付加情報を復号することで付加情報を生成する。また、第１の復号部４６４０は、位置情報及び属性情報の復号処理に必要な付加情報を復号時に使用し、アプリケーションに必要な付加情報を外部に出力する。
【００９４】
次に、第２の符号化方法の符号化を行う符号化部４６１３の例である第２の符号化部４６５０について説明する。図９は、第２の符号化部４６５０の構成を示す図である。図１０は、第２の符号化部４６５０のブロック図である。
【００９５】
第２の符号化部４６５０は、点群データを第２の符号化方法で符号化することで符号化データ（符号化ストリーム）を生成する。この第２の符号化部４６５０は、付加情報生成部４６５１と、位置画像生成部４６５２と、属性画像生成部４６５３と、映像符号化部４６５４と、付加情報符号化部４６５５と、多重化部４６５６とを含む。
【００９６】
第２の符号化部４６５０は、三次元構造を二次元画像に投影することで位置画像及び属性画像を生成し、生成した位置画像及び属性画像を既存の映像符号化方式を用いて符号化するという特徴を有する。第２の符号化方法は、ＶＰＣＣ（Ｖｉｄｅｏ  ｂａｓｅｄ  ＰＣＣ）とも呼ばれる。
【００９７】
点群データは、ＰＬＹファイルのようなＰＣＣ点群データ、又は、センサ情報から生成されたＰＣＣ点群データであり、位置情報（Ｐｏｓｉｔｉｏｎ）、属性情報（Ａｔｔｒｉｂｕｔｅ）、及びその他の付加情報ＭｅｔａＤａｔａ）を含む。
【００９８】
付加情報生成部４６５１は、三次元構造を二次元画像に投影することで、複数の二次元画像のマップ情報を生成する。
【００９９】
位置画像生成部４６５２は、位置情報と、付加情報生成部４６５１で生成されたマップ情報とに基づき、位置画像（Ｇｅｏｍｅｔｒｙ  Ｉｍａｇｅ）を生成する。この位置画像は、例えば、画素値として距離（Ｄｅｐｔｈ）が示される距離画像である。なお、この距離画像は、一つの視点から複数の点群を見た画像（一つの二次元平面に複数の点群を投影した画像）であってもよいし、複数の視点から複数の点群を見た複数の画像であってもよいし、これらの複数の画像を統合した一つの画像であってもよい。
【０１００】
属性画像生成部４６５３は、属性情報と、付加情報生成部４６５１で生成されたマップ情報とに基づき、属性画像を生成する。この属性画像は、例えば、画素値として属性情報（例えば色（ＲＧＢ））が示される画像である。なお、この画像は、一つの視点から複数の点群を見た画像（一つの二次元平面に複数の点群を投影した画像）であってもよいし、複数の視点から複数の点群を見た複数の画像であってもよいし、これらの複数の画像を統合した一つの画像であってもよい。
【０１０１】
映像符号化部４６５４は、位置画像及び属性画像を、映像符号化方式を用いて符号化することで、符号化データである符号化位置画像（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ  Ｉｍａｇｅ）及び符号化属性画像（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ  Ｉｍａｇｅ）を生成する。なお、映像符号化方式として、公知の任意の符号化方法が用いられてよい。例えば、映像符号化方式は、ＡＶＣ又はＨＥＶＣ等である。
【０１０２】
付加情報符号化部４６５５は、点群データに含まれる付加情報、及びマップ情報等を符号化することで符号化付加情報（Ｃｏｍｐｒｅｓｓｅｄ  ＭｅｔａＤａｔａ）を生成する。
【０１０３】
多重化部４６５６は、符号化位置画像、符号化属性画像、符号化付加情報、及び、その他の付加情報を多重化することで符号化データである符号化ストリーム（Ｃｏｍｐｒｅｓｓｅｄ  Ｓｔｒｅａｍ）を生成する。生成された符号化ストリームは、図示しないシステムレイヤの処理部へ出力される。
【０１０４】
次に、第２の符号化方法の復号を行う復号部４６２４の例である第２の復号部４６６０について説明する。図１１は、第２の復号部４６６０の構成を示す図である。図１２は、第２の復号部４６６０のブロック図である。第２の復号部４６６０は、第２の符号化方法で符号化された符号化データ（符号化ストリーム）を、第２の符号化方法で復号することで点群データを生成する。この第２の復号部４６６０は、逆多重化部４６６１と、映像復号部４６６２と、付加情報復号部４６６３と、位置情報生成部４６６４と、属性情報生成部４６６５とを含む。
【０１０５】
図示しないシステムレイヤの処理部から符号化データである符号化ストリーム（Ｃｏｍｐｒｅｓｓｅｄ  Ｓｔｒｅａｍ）が第２の復号部４６６０に入力される。
【０１０６】
逆多重化部４６６１は、符号化データから、符号化位置画像（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ  Ｉｍａｇｅ）、符号化属性画像（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ  Ｉｍａｇｅ）、符号化付加情報（Ｃｏｍｐｒｅｓｓｅｄ  ＭｅｔａＤａｔａ）、及び、その他の付加情報を分離する。
【０１０７】
映像復号部４６６２は、符号化位置画像及び符号化属性画像を、映像符号化方式を用いて復号することで、位置画像及び属性画像を生成する。なお、映像符号化方式として、公知の任意の符号化方式が用いられてよい。例えば、映像符号化方式は、ＡＶＣ又はＨＥＶＣ等である。
【０１０８】
付加情報復号部４６６３は、符号化付加情報を復号することで、マップ情報等を含む付加情報を生成する。
【０１０９】
位置情報生成部４６６４は、位置画像とマップ情報とを用いて位置情報を生成する。属性情報生成部４６６５は、属性画像とマップ情報とを用いて属性情報を生成する。
【０１１０】
第２の復号部４６６０は、復号に必要な付加情報を復号時に使用し、アプリケーションに必要な付加情報を外部に出力する。
【０１１１】
以下、ＰＣＣ符号化方式における課題を説明する。図１３は、ＰＣＣ符号化データに関わるプロトコルスタックを示す図である。図１３には、ＰＣＣ符号化データに、映像（例えばＨＥＶＣ）又は音声などの他のメディアのデータを多重し、伝送又は蓄積する例を示す。
【０１１２】
多重化方式及びファイルフォーマットは、様々な符号化データを多重し、伝送又は蓄積するための機能を有している。符号化データを伝送又は蓄積するためには、符号化データを多重化方式のフォーマットに変換しなければならない。例えば、ＨＥＶＣでは、ＮＡＬユニットと呼ばれるデータ構造に符号化データを格納し、ＮＡＬユニットをＩＳＯＢＭＦＦに格納する技術が規定されている。
【０１１３】
一方、現在、点群データの符号化方法として第１の符号化方法（Ｃｏｄｅｃ１）、及び第２の符号化方法（Ｃｏｄｅｃ２）が検討されているが、符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法が定義されておらず、このままでは符号化部におけるＭＵＸ処理（多重化）、伝送及び蓄積ができないという課題がある。
【０１１４】
なお、以降において、特定の符号化方法の記載がなければ、第１の符号化方法、及び第２の符号化方法のいずれかを示すものとする。
【０１１５】
（実施の形態２）
本実施の形態では、ＮＡＬユニットをＩＳＯＢＭＦＦのファイルに格納する方法について説明する。
【０１１６】
ＩＳＯＢＭＦＦ（ＩＳＯ  ｂａｓｅｄ  ｍｅｄｉａ  ｆｉｌｅ  ｆｏｒｍａｔ）は、ＩＳＯ／ＩＥＣ１４４９６−１２に規定されるファイルフォーマット規格である。ＩＳＯＢＭＦＦは、ビデオ、オーディオ、及びテキストなど様々なメディアを多重して格納できるフォーマットを規定しており、メディアに依存しない規格である。
【０１１７】
ＩＳＯＢＭＦＦの基本構造（ファイル）について説明する。ＩＳＯＢＭＦＦにおける基本単位はボックスである。ボックスはｔｙｐｅ、ｌｅｎｇｔｈ、ｄａｔａで構成され、様々なｔｙｐｅのボックスを組み合わせた集合がファイルである。
【０１１８】
図１４は、ＩＳＯＢＭＦＦの基本構造（ファイル）を示す図である。ＩＳＯＢＭＦＦのファイルは、主に、ファイルのブランドを４ＣＣ（４文字コード）で示すｆｔｙｐ、制御情報などのメタデータを格納するｍｏｏｖ、及び、データを格納するｍｄａｔなどのボックスを含む。
【０１１９】
ＩＳＯＢＭＦＦのファイルへのメディア毎の格納方法は別途規定されており、例えば、ＡＶＣビデオ及びＨＥＶＣビデオの格納方法は、ＩＳＯ／ＩＥＣ１４４９６−１５に規定される。ここで、ＰＣＣ符号化データを蓄積又は伝送するために、ＩＳＯＢＭＦＦの機能を拡張して使用することが考えられるが、ＰＣＣ符号化データをＩＳＯＢＭＦＦのファイルに格納する規定はまだない。そこで、本実施の形態では、ＰＣＣ符号化データをＩＳＯＢＭＦＦのファイルに格納する方法について説明する。
【０１２０】
図１５は、ＰＣＣコーデック共通のＮＡＬユニットをＩＳＯＢＭＦＦのファイルに格納する場合のプロトコルスタックを示す図である。ここでは、ＰＣＣコーデック共通のＮＡＬユニットがＩＳＯＢＭＦＦのファイルに格納される。ＮＡＬユニットはＰＣＣコーデック共通であるが、ＮＡＬユニットには複数のＰＣＣコーデックが格納されるため、それぞれのコーデックに応じた格納方法（Ｃａｒｒｉａｇｅ  ｏｆ  Ｃｏｄｅｃ１、Ｃａｒｒｉａｇｅ  ｏｆ  Ｃｏｄｅｃ２）を規定することが望ましい。
【０１２１】
（実施の形態３）
本実施の形態では、上述した第１の符号化部４６３０、又は第２の符号化部４６５０で生成される符号化データ（位置情報（Ｇｅｏｍｅｔｒｙ）、属性情報（Ａｔｔｒｉｂｕｔｅ）、付加情報（Ｍｅｔａｄａｔａ））の種別、及び付加情報（メタデータ）の生成方法、及び多重化部における多重処理について説明する。なお、付加情報（メタデータ）は、パラメータセット、又は制御情報と表記することもある。
【０１２２】
本実施の形態では、図４で説明した動的オブジェクト（時間的に変化する三次元点群データ）を例に説明するが、静的オブジェクト（任意の時刻の三次元点群データ）の場合でも同様の方法を用いてもよい。
【０１２３】
図１６は、本実施の形態に係る三次元データ符号化装置に含まれる符号化部４８０１及び多重化部４８０２の構成を示す図である。符号化部４８０１は、例えば、上述した第１の符号化部４６３０又は第２の符号化部４６５０に対応する。多重化部４８０２は、上述した多重化部４６３４又は４６４５６に対応する。
【０１２４】
符号化部４８０１は、複数のＰＣＣ（Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｃｏｍｐｒｅｓｓｉｏｎ）フレームの点群データを符号化し、複数の位置情報、属性情報及び付加情報の符号化データ（Ｍｕｌｔｉｐｌｅ  Ｃｏｍｐｒｅｓｓｅｄ  Ｄａｔａ）を生成する。
【０１２５】
多重化部４８０２は、複数のデータ種別（位置情報、属性情報及び付加情報）のデータをＮＡＬユニット化することで、データを復号装置におけるデータアクセスを考慮したデータ構成に変換する。
【０１２６】
図１７は、符号化部４８０１で生成される符号化データの構成例を示す図である。図中の矢印は符号化データの復号に係る依存関係を示しており、矢印の元は矢印の先のデータに依存している。つまり、復号装置は、矢印の先のデータを復号し、その復号したデータを用いて矢印の元のデータを復号する。言い換えると、依存するとは、依存元のデータの処理（符号化又は復号等）において依存先のデータが参照（使用）されることを意味する。
【０１２７】
まず、位置情報の符号化データの生成処理について説明する。符号化部４８０１は、各フレームの位置情報を符号化することで、フレーム毎の符号化位置データ（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ  Ｄａｔａ）を生成する。また、符号化位置データをＧ（ｉ）で表す。ｉはフレーム番号、又はフレームの時刻等を示す。
【０１２８】
また、符号化部４８０１は、各フレームに対応する位置パラメータセット（ＧＰＳ（ｉ））を生成する。位置パラメータセットは、符号化位置データの復号に使用することが可能なパラメータを含む。また、フレーム毎の符号化位置データは、対応する位置パラメータセットに依存する。
【０１２９】
また、複数フレームから成る符号化位置データを位置シーケンス（Ｇｅｏｍｅｔｒｙ  Ｓｅｑｕｅｎｃｅ）と定義する。符号化部４８０１は、位置シーケンス内の複数のフレームに対する復号処理に共通に使用するパラメータを格納する位置シーケンスパラメータセット（Ｇｅｏｍｅｔｒｙ  Ｓｅｑｕｅｎｃｅ  ＰＳ：位置ＳＰＳとも記す）を生成する。位置シーケンスは、位置ＳＰＳに依存する。
【０１３０】
次に、属性情報の符号化データの生成処理について説明する。符号化部４８０１は、各フレームの属性情報を符号化することで、フレーム毎の符号化属性データ（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ  Ｄａｔａ）を生成する。また、符号化属性データをＡ（ｉ）で表す。また、図１７では、属性Ｘと属性Ｙとが存在する例を示しており、属性Ｘの符号化属性データをＡＸ（ｉ）で表し、属性Ｙの符号化属性データをＡＹ（ｉ）で表す。
【０１３１】
また、符号化部４８０１は、各フレームに対応する属性パラメータセット（ＡＰＳ（ｉ））を生成する。また、属性Ｘの属性パラメータセットをＡＸＰＳ（ｉ）で表し、属性Ｙの属性パラメータセットをＡＹＰＳ（ｉ）で表す。属性パラメータセットは、符号化属性情報の復号に使用することが可能なパラメータを含む。符号化属性データは、対応する属性パラメータセットに依存する。
【０１３２】
また、複数フレームから成る符号化属性データを属性シーケンス（Ａｔｔｒｉｂｕｔｅ  Ｓｅｑｕｅｎｃｅ）と定義する。符号化部４８０１は、属性シーケンス内の複数のフレームに対する復号処理に共通に使用するパラメータを格納する属性シーケンスパラメータセット（Ａｔｔｒｉｂｕｔｅ  Ｓｅｑｕｅｎｃｅ  ＰＳ：属性ＳＰＳとも記す）を生成する。属性シーケンスは、属性ＳＰＳに依存する。
【０１３３】
また、第１の符号化方法では、符号化属性データは符号化位置データに依存する。
【０１３４】
また、図１７では２種類の属性情報（属性Ｘと属性Ｙ）が存在する場合の例を示している。２種類の属性情報がある場合は、例えば、２つの符号化部により、それぞれのデータ及びメタデータが生成される。また、例えば、属性情報の種類毎に属性シーケンスが定義され、属性情報の種類毎に属性ＳＰＳが生成される。
【０１３５】
なお、図１７では、位置情報が１種類、属性情報が２種類である例を示しているが、これに限らず、属性情報は１種類であってもよいし、３種類以上であってもよい。この場合も、同様の方法で符号化データを生成できる。また、属性情報を持たない点群データの場合は、属性情報はなくてもよい。その場合は、符号化部４８０１は、属性情報に関連するパラメータセットを生成しなくてもよい。
【０１３６】
次に、付加情報（メタデータ）の生成処理について説明する。符号化部４８０１は、ＰＣＣストリーム全体のパラメータセットであるＰＣＣストリームＰＳ（ＰＣＣ  Ｓｔｒｅａｍ  ＰＳ：ストリームＰＳとも記す）を生成する。符号化部４８０１は、ストリームＰＳに、１又は複数の位置シーケンス及び１又は複数の属性シーケンスに対する復号処理に共通に使用することができるパラメータを格納する。例えば、ストリームＰＳには、点群データのコーデックを示す識別情報、及び符号化に使用されたアルゴリズムを示す情報等が含まれる。位置シーケンス及び属性シーケンスはストリームＰＳに依存する。
【０１３７】
次に、アクセスユニット及びＧＯＦについて説明する。本実施の形態では、新たにアクセスユニット（Ａｃｃｅｓｓ  Ｕｎｉｔ：ＡＵ）、及びＧＯＦ（Ｇｒｏｕｐ  ｏｆ  Ｆｒａｍｅ）の考え方を導入する。
【０１３８】
アクセスユニットは、復号時にデータにアクセスするため基本単位であり、１つ以上のデータ及び１つ以上のメタデータで構成される。例えば、アクセスユニットは、同一時刻の位置情報と１又は複数の属性情報とで構成される。ＧＯＦは、ランダムアクセス単位であり、１つ以上のアクセスユニットで構成される。
【０１３９】
符号化部４８０１は、アクセスユニットの先頭を示す識別情報として、アクセスユニットヘッダ（ＡＵ  Ｈｅａｄｅｒ）を生成する。符号化部４８０１は、アクセスユニットヘッダに、アクセスユニットに係るパラメータを格納する。例えば、アクセスユニットヘッダは、アクセスユニットに含まれる符号化データの構成又は情報を含む。また、アクセスユニットヘッダは、アクセスユニットに含まれるデータに共通に用いられるパラメータ、例えば、符号化データの復号に係るパラメータなどを含む。
【０１４０】
なお、符号化部４８０１は、アクセスユニットヘッダの代わりに、アクセスユニットに係るパラメータを含まないアクセスユニットデリミタを生成してもよい。このアクセスユニットデリミタは、アクセスユニットの先頭を示す識別情報として用いられる。復号装置は、アクセスユニットヘッダ又はアクセスユニットデリミタを検出することにより、アクセスユニットの先頭を識別する。
【０１４１】
次に、ＧＯＦ先頭の識別情報の生成について説明する。符号化部４８０１は、ＧＯＦの先頭を示す識別情報として、ＧＯＦヘッダ（ＧＯＦ  Ｈｅａｄｅｒ）を生成する。符号化部４８０１は、ＧＯＦヘッダに、ＧＯＦに係るパラメータを格納する。例えば、ＧＯＦヘッダは、ＧＯＦに含まれる符号化データの構成又は情報を含む。また、ＧＯＦヘッダは、ＧＯＦに含まれるデータに共通に用いられるパラメータ、例えば、符号化データの復号に係るパラメータなどを含む。
【０１４２】
なお、符号化部４８０１は、ＧＯＦヘッダの代わりに、ＧＯＦに係るパラメータを含まないＧＯＦデリミタを生成してもよい。このＧＯＦデリミタは、ＧＯＦの先頭を示す識別情報として用いられる。復号装置は、ＧＯＦヘッダ又はＧＯＦデリミタを検出することにより、ＧＯＦの先頭を識別する。
【０１４３】
ＰＣＣ符号化データにおいて、例えば、アクセスユニットはＰＣＣフレーム単位であると定義される。復号装置は、アクセスユニット先頭の識別情報に基づき、ＰＣＣフレームにアクセスする。
【０１４４】
また、例えば、ＧＯＦは１つのランダムアクセス単位であると定義される。復号装置は、ＧＯＦ先頭の識別情報に基づき、ランダムアクセス単位にアクセスする。例えば、ＰＣＣフレームが互いに依存関係がなく、単独で復号可能であれば、ＰＣＣフレームをランダムアクセス単位と定義してもよい。
【０１４５】
なお、１つのアクセスユニットに２つ以上のＰＣＣフレームが割り当てられてもよいし、１つのＧＯＦに複数のランダムアクセス単位が割り当てられてもよい。
【０１４６】
また、符号化部４８０１は、上記以外のパラメータセット又はメタデータを定義し、生成してもよい。例えば、符号化部４８０１は、復号時に必ずしも用いない可能性のあるパラメータ（オプションのパラメータ）を格納するＳＥＩ（Ｓｕｐｐｌｅｍｅｎｔａｌ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成してもよい。
【０１４７】
次に、符号化データの構成、及び符号化データのＮＡＬユニットへの格納方法を説明する。
【０１４８】
例えば、符号化データの種類毎にデータフォーマットが規定される。図１８は、符号化データ及びＮＡＬユニットの例を示す図である。
【０１４９】
例えば、図１８に示すように符号化データは、ヘッダとペイロードとを含む。なお、符号化データは、符号化データ、ヘッダ又はペイロードの長さ（データ量）を示す長さ情報を含んでもよい。また、符号化データは、ヘッダを含まなくてもよい。
【０１５０】
ヘッダは、例えば、データを特定するための識別情報を含む。この識別情報は、例えば、データ種別又はフレーム番号を示す。
【０１５１】
ヘッダは、例えば、参照関係を示す識別情報を含む。この識別情報は、例えば、データ間に依存関係がある場合にヘッダに格納され、参照元から参照先を参照するための情報である。例えば、参照先のヘッダには、当該データを特定するための識別情報が含まれる。参照元のヘッダには、参照先を示す識別情報が含まれる。
【０１５２】
なお、他の情報から参照先又は参照元を識別可能又は導出可能である場合は、データを特定するための識別情報、又は参照関係を示す識別情報を省略してもよい。
【０１５３】
多重化部４８０２は、符号化データを、ＮＡＬユニットのペイロードに格納する。ＮＡＬユニットヘッダには、符号化データの識別情報であるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅが含まれる。図１９は、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅのセマンティクスの例を示す図である。
【０１５４】
図１９に示すように、ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅがコーデック１（Ｃｏｄｅｃ１：第１の符号化方法）である場合、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値０〜１０は、コーデック１における、符号化位置データ（Ｇｅｏｍｅｔｒｙ）、符号化属性Ｘデータ（ＡｔｔｒｉｂｕｔｅＸ）、符号化属性Ｙデータ（ＡｔｔｒｉｂｕｔｅＹ）、位置ＰＳ（Ｇｅｏｍ．ＰＳ）、属性ＸＰＳ（ＡｔｔｒＸ．ＰＳ）、属性ＹＰＳ（ＡｔｔｒＸ．ＰＳ）、位置ＳＰＳ（Ｇｅｏｍｅｔｒｙ  Ｓｅｑｕｅｎｃｅ  ＰＳ）、属性ＸＳＰＳ（ＡｔｔｒｉｂｕｔｅＸ  Ｓｅｑｕｅｎｃｅ  ＰＳ）、属性ＹＳＰＳ（ＡｔｔｒｉｂｕｔｅＹ  Ｓｅｑｕｅｎｃｅ  ＰＳ）、ＡＵヘッダ（ＡＵ  Ｈｅａｄｅｒ）、ＧＯＦヘッダ（ＧＯＦ  Ｈｅａｄｅｒ）に割り当てられる。また、値１１以降は、コーデック１の予備に割り当てられる。
【０１５５】
ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅがコーデック２（Ｃｏｄｅｃ２：第２の符号化方法）である場合、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値０〜２は、コーデックのデータＡ（ＤａｔａＡ）、メタデータＡ（ＭｅｔａＤａｔａＡ）、メタデータＢ（ＭｅｔａＤａｔａＢ）に割り当てられる。また、値３以降は、コーデック２の予備に割り当てられる。
【０１５６】
次に、データの送出順序について説明する。以下、ＮＡＬユニットの送出順序の制約について説明する。
【０１５７】
多重化部４８０２は、ＮＡＬユニットをＧＯＦ又はＡＵ単位でまとめて送出する。多重化部４８０２は、ＧＯＦの先頭にＧＯＦヘッダを配置し、ＡＵの先頭にＡＵヘッダを配置する。
【０１５８】
パケットロスなどでデータが失われた場合でも、復号装置が次のＡＵから復号できるように、多重化部４８０２は、シーケンスパラメータセット（ＳＰＳ）を、ＡＵ毎に配置してもよい。
【０１５９】
符号化データに復号に係る依存関係がある場合には、復号装置は、参照先のデータを復号した後に、参照元のデータを復号する。復号装置において、データを並び替ることなく、受信した順番に復号できるようにするために、多重化部４８０２は、参照先のデータを先に送出する。
【０１６０】
図２０は、ＮＡＬユニットの送出順の例を示す図である。図２０は、位置情報優先と、パラメータ優先と、データ統合との３つの例を示す。
【０１６１】
位置情報優先の送出順序は、位置情報に関する情報と、属性情報に関する情報との各々をまとめて送出する例である。この送出順序の場合、位置情報に関する情報の送出が属性情報に関する情報の送出よりも早く完了する。
【０１６２】
例えば、この送出順序を用いることで、属性情報を復号しない復号装置は、属性情報の復号を無視することで、処理しない時間を設けることができる可能性がある。また、例えば、位置情報を早く復号したい復号装置の場合、位置情報の符号化データを早く得ることにより、より早く位置情報を復号することができる可能性がある。
【０１６３】
なお、図２０では、属性ＸＳＰＳと属性ＹＳＰＳを統合し、属性ＳＰＳと記載しているが、属性ＸＳＰＳと属性ＹＳＰＳとを個別に配置してもよい。
【０１６４】
パラメータセット優先の送出順序では、パラメータセットが先に送出され、データが後で送出される。
【０１６５】
以上のようにＮＡＬユニット送出順序の制約に従えば、多重化部４８０２は、ＮＡＬユニットをどのような順序で送出してもよい。例えば、順序識別情報が定義され、多重化部４８０２は、複数パターンの順序でＮＡＬユニットを送出する機能を有してもよい。例えばストリームＰＳにＮＡＬユニットの順序識別情報が格納される。
【０１６６】
三次元データ復号装置は、順序識別情報に基づき復号を行ってもよい。三次元データ復号装置から三次元データ符号化装置に所望の送出順序が指示され、三次元データ符号化装置（多重化部４８０２）は、指示された送出順序に従って送出順序を制御してもよい。
【０１６７】
なお、多重化部４８０２は、データ統合の送出順序のように、送出順序の制約に従う範囲であれば、複数の機能をマージした符号化データを生成してもよい。例えば、図２０に示すように、ＧＯＦヘッダとＡＵヘッダとを統合してもよいし、ＡＸＰＳとＡＹＰＳとを統合してもよい。この場合、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅには、複数の機能を有するデータであることを示す識別子が定義される。
【０１６８】
以下、本実施の形態の変形例について説明する。フレームレベルのＰＳ、シーケンスレベルのＰＳ、ＰＣＣシーケンスレベルのＰＳのように、ＰＳにはレベルがあり、ＰＣＣシーケンスレベルを上位のレベルとし、フレームレベルを下位のレベルとすると、パラメータの格納方法には下記の方法を用いてもよい。
【０１６９】
デフォルトのＰＳの値をより上位のＰＳで示す。また、下位のＰＳの値が上位のＰＳの値と異なる場合には、下位のＰＳでＰＳの値が示される。または、上位ではＰＳの値を記載せず、下位のＰＳにＰＳの値を記載する。または、ＰＳの値を、下位のＰＳで示すか、上位のＰＳで示すか、両方で示すかの情報を、下位のＰＳと上位のＰＳのいずれか一方又は両方に示す。または、下位のＰＳを上位のＰＳにマージしてもよい。または、下位のＰＳと上位のＰＳとが重複する場合には、多重化部４８０２は、いずれか一方の送出を省略してもよい。
【０１７０】
なお、符号化部４８０１又は多重化部４８０２は、データをスライス又はタイルなどに分割し、分割したデータを送出してもよい。分割したデータには、分割したデータを識別するための情報が含まれ、分割データの復号に使用するパラメータがパラメータセットに含まれる。この場合、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅには、タイル又はスライスに係るデータ又はパラメータを格納するデータであることを示す識別子が定義される。
【０１７１】
（実施の形態４）
ＨＥＶＣ符号化では復号装置における並列処理を可能とするために、スライス又はタイルといったデータ分割のツールがあるが、ＰＣＣ（Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｃｏｍｐｒｅｓｓｉｏｎ）符号化ではまだない。
【０１７２】
ＰＣＣでは、並列処理、圧縮効率、及び圧縮アルゴリズムによって、様々なデータ分割方法が考えられる。ここでは、スライス及びタイルの定義、データ構造及び送受信方法について説明する。
【０１７３】
図２１は、本実施の形態に係る三次元データ符号化装置に含まれる第１の符号化部４９１０の構成を示すブロック図である。第１の符号化部４９１０は、点群データを第１の符号化方法（ＧＰＣＣ（Ｇｅｏｍｅｔｒｙ  ｂａｓｅｄ  ＰＣＣ））で符号化することで符号化データ（符号化ストリーム）を生成する。この第１の符号化部４９１０は、分割部４９１１と、複数の位置情報符号化部４９１２と、複数の属性情報符号化部４９１３と、付加情報符号化部４９１４と、多重化部４９１５とを含む。
【０１７４】
分割部４９１１は、点群データを分割することで複数の分割データを生成する。具体的には、分割部４９１１は、点群データの空間を複数のサブ空間に分割することで複数の分割データを生成する。ここでサブ空間とは、タイル及びスライスの一方、又はタイル及びスライスの組み合わせである。より具体的には、点群データは、位置情報、属性情報、及び付加情報を含む。分割部４９１１は、位置情報を複数の分割位置情報に分割し、属性情報を複数の分割属性情報に分割する。また、分割部４９１１は、分割に関する付加情報を生成する。
【０１７５】
複数の位置情報符号化部４９１２は、複数の分割位置情報を符号化することで複数の符号化位置情報を生成する。例えば、複数の位置情報符号化部４９１２は、複数の分割位置情報を並列処理する。
【０１７６】
複数の属性情報符号化部４９１３は、複数の分割属性情報を符号化することで複数の符号化属性情報を生成する。例えば、複数の属性情報符号化部４９１３は、複数の分割属性情報を並列処理する。
【０１７７】
付加情報符号化部４９１４は、点群データに含まれる付加情報と、分割部４９１１で分割時に生成された、データ分割に関する付加情報とを符号化することで符号化付加情報を生成する。
【０１７８】
多重化部４９１５は、複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を多重化することで符号化データ（符号化ストリーム）を生成し、生成した符号化データを送出する。また、符号化付加情報は復号時に使用される。
【０１７９】
なお、図２１では、位置情報符号化部４９１２及び属性情報符号化部４９１３の数がそれぞれ２つの例を示しているが、位置情報符号化部４９１２及び属性情報符号化部４９１３の数は、それぞれ１つであってもよいし、３つ以上であってもよい。また、複数の分割データは、ＣＰＵ内の複数コアのように同一チップ内で並列処理されてもよいし、複数のチップのコアで並列処理されてもよいし、複数チップの複数コアで並列処理されてもよい。
【０１８０】
図２２は、第１の復号部４９２０の構成を示すブロック図である。第１の復号部４９２０は、点群データが第１の符号化方法（ＧＰＣＣ）で符号化されることで生成された符号化データ（符号化ストリーム）を復号することで点群データを復元する。この第１の復号部４９２０は、逆多重化部４９２１と、複数の位置情報復号部４９２２と、複数の属性情報復号部４９２３と、付加情報復号部４９２４と、結合部４９２５とを含む。
【０１８１】
逆多重化部４９２１は、符号化データ（符号化ストリーム）を逆多重化することで複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を生成する。
【０１８２】
複数の位置情報復号部４９２２は、複数の符号化位置情報を復号することで複数の分割位置情報を生成する。例えば、複数の位置情報復号部４９２２は、複数の符号化位置情報を並列処理する。
【０１８３】
複数の属性情報復号部４９２３は、複数の符号化属性情報を復号することで複数の分割属性情報を生成する。例えば、複数の属性情報復号部４９２３は、複数の符号化属性情報を並列処理する。
【０１８４】
複数の付加情報復号部４９２４は、符号化付加情報を復号することで付加情報を生成する。
【０１８５】
結合部４９２５は、付加情報を用いて複数の分割位置情報を結合することで位置情報を生成する。結合部４９２５は、付加情報を用いて複数の分割属性情報を結合することで属性情報を生成する。
【０１８６】
なお、図２２では、位置情報復号部４９２２及び属性情報復号部４９２３の数がそれぞれ２つの例を示しているが、位置情報復号部４９２２及び属性情報復号部４９２３の数は、それぞれ１つであってもよし、３つ以上であってもよい。また、複数の分割データは、ＣＰＵ内の複数コアのように同一チップ内で並列処理されてもよいし、複数のチップのコアで並列処理されてもよい、複数チップの複数コアで並列処理されてもよい。
【０１８７】
次に、分割部４９１１の構成を説明する。図２３は、分割部４９１１のブロック図である。分割部４９１１は、スライス分割部４９３１（Ｓｌｉｃｅ  Ｄｉｖｉｄｅｒ）と、位置情報タイル分割部４９３２（Ｇｅｏｍｅｔｒｙ  Ｔｉｌｅ  Ｄｉｖｉｄｅｒ）と、属性情報タイル分割部４９３３（Ａｔｔｒｉｂｕｔｅ  Ｔｉｌｅ  Ｄｉｖｉｄｅｒ）とを含む。
【０１８８】
スライス分割部４９３１は、位置情報（Ｐｏｓｉｔｉｏｎ（Ｇｅｏｍｅｔｒｙ））をスライスに分割することで複数のスライス位置情報を生成する。また、スライス分割部４９３１は、属性情報（Ａｔｔｒｉｂｕｔｅ）をスライスに分割することで複数のスライス属性情報を生成する。また、スライス分割部４９３１は、スライス分割に係る情報、及びスライス分割において生成された情報を含むスライス付加情報（Ｓｌｉｃｅ  ＭｅｔａＤａｔａ）を出力する。
【０１８９】
位置情報タイル分割部４９３２は、複数のスライス位置情報をタイルに分割することで複数の分割位置情報（複数のタイル位置情報）を生成する。また、位置情報タイル分割部４９３２は、位置情報のタイル分割に係る情報、及び位置情報のタイル分割において生成された情報を含む位置タイル付加情報（Ｇｅｏｍｅｔｒｙ  Ｔｉｌｅ  ＭｅｔａＤａｔａ）を出力する。
【０１９０】
属性情報タイル分割部４９３３は、複数のスライス属性情報をタイルに分割することで複数の分割属性情報（複数のタイル属性情報）を生成する。また、属性情報タイル分割部４９３３は、属性情報のタイル分割に係る情報、及び属性情報のタイル分割において生成された情報を含む属性タイル付加情報（Ａｔｔｒｉｂｕｔｅ  Ｔｉｌｅ  ＭｅｔａＤａｔａ）を出力する。
【０１９１】
なお、分割されるスライス又はタイルの数は１以上である。つまり、スライス又はタイルの分割を行わなくてもよい。
【０１９２】
また、ここでは、スライス分割後にタイル分割が行われる例を示したが、タイル分割後にスライス分割が行われてもよい。また、スライス及びタイルに加え新たな分割種別を定義し、３つ以上の分割種別で分割が行われてもよい。
【０１９３】
以下、点群データの分割方法について説明する。図２４は、スライス及びタイル分割の例を示す図である。
【０１９４】
まず、スライス分割の方法について説明する。分割部４９１１は、三次元点群データを、スライス単位で、任意の点群に分割する。分割部４９１１は、スライス分割において、点を構成する位置情報と属性情報とを分割せず、位置情報と属性情報とを一括で分割する。すなわち、分割部４９１１は、任意の点における位置情報と属性情報とが同じスライスに属するようにスライス分割を行う。なお、これらに従えば、分割数、及び分割方法はどのような方法でもよい。また、分割の最小単位は点である。例えば、位置情報と属性情報との分割数は同一である。例えば、スライス分割後の位置情報に対応する三次元点と、属性情報に対応する三次元点とは同一のスライスに含まれる。
【０１９５】
また、分割部４９１１は、スライス分割時に分割数及び分割方法に係る付加情報であるスライス付加情報を生成する。スライス付加情報は、位置情報と属性情報とで同一である。例えば、スライス付加情報は、分割後のバウンディングボックスの基準座標位置、大きさ、又は辺の長さを示す情報を含む。また、スライス付加情報は、分割数、及び分割タイプなどを示す情報を含む。
【０１９６】
次に、タイル分割の方法について説明する。分割部４９１１は、スライス分割されたデータを、スライス位置情報（Ｇスライス）とスライス属性情報（Ａスライス）とに分割し、スライス位置情報とスライス属性情報をそれぞれタイル単位に分割する。
【０１９７】
なお、図２４では８分木構造で分割する例を示しているが、分割数及び分割方法はどのような方法でもよい。
【０１９８】
また、分割部４９１１は、位置情報と属性情報とを異なる分割方法で分割してもよいし、同一の分割方法で分割してもよい。また、分割部４９１１は、複数のスライスを異なる分割方法でタイルに分割してもよいし、同一の分割方法でタイルに分割してもよい。
【０１９９】
また、分割部４９１１は、タイル分割時に分割数及び分割方法に係るタイル付加情報を生成する。タイル付加情報（位置タイル付加情報及び属性タイル付加情報）は、位置情報と属性情報とで独立している。例えば、タイル付加情報は、分割後のバウンディングボックスの基準座標位置、大きさ、又は辺の長さを示す情報を含む。また、タイル付加情報は、分割数、及び分割タイプなど示す情報を含む。
【０２００】
次に、点群データをスライス又はタイルに分割する方法の例を説明する。分割部４９１１は、スライス又はタイル分割の方法として、予め定められた方法を用いてもよいし、点群データに応じて使用する方法を適応的に切り替えてもよい。
【０２０１】
スライス分割時には、分割部４９１１は、位置情報と属性情報とに対して一括で三次元空間を分割する。例えば、分割部４９１１は、オブジェクトの形状を判定し、オブジェクトの形状に応じて三次元空間をスライスに分割する。例えば、分割部４９１１は、木又は建物などのオブジェクトを抽出し、オブジェクト単位で分割を行う。例えば、分割部４９１１は、１又は複数のオブジェクトの全体が１つのスライスに含まれるようにスライス分割を行う。または、分割部４９１１は、一つのオブジェクトを複数のスライスに分割する。
【０２０２】
この場合、符号化装置は、例えば、スライス毎に符号化方法を変えてもよい。例えば、符号化装置は、特定のオブジェクト、又はオブジェクトの特定の一部に対して、高品質な圧縮方法を用いてもよい。この場合、符号化装置は、スライス毎の符号化方法を示す情報を付加情報（メタデータ）に格納してもよい。
【０２０３】
また、分割部４９１１は、地図情報又は位置情報に基づき、各スライスが予め定められた座標空間に対応するようにスライス分割を行ってもよい。
【０２０４】
タイル分割時には、分割部４９１１は、位置情報と属性情報とを独立に分割する。例えば、分割部４９１１は、データ量又は処理量に応じてスライスをタイルに分割する。例えば、分割部４９１１は、スライスのデータ量（例えばスライスに含まれる三次元点の数）が予め定められた閾値より多いかを判定する。分割部４９１１は、スライスのデータ量が閾値より多い場合にはスライスをタイルに分割する。分割部４９１１は、スライスのデータ量が閾値より少ないときにはスライスをタイルに分割しない。
【０２０５】
例えば、分割部４９１１は、復号装置での処理量又は処理時間が一定の範囲（予め定められた値以下）となるよう、スライスをタイルに分割する。これにより、復号装置におけるタイル当たりの処理量が一定となり、復号装置における分散処理が容易となる。
【０２０６】
また、分割部４９１１は、位置情報と属性情報とで処理量が異なる場合、例えば、位置情報の処理量が属性情報の処理量より多い場合、位置情報の分割数を、属性情報の分割数より多くする。
【０２０７】
また、例えば、コンテンツによって、復号装置で、位置情報を早く復号して表示し、属性情報を後でゆっくり復号して表示してもよい場合に、分割部４９１１は、位置情報の分割数を、属性情報の分割数より多くしてもよい。これにより、復号装置は、位置情報の並列数を多くできるので、位置情報の処理を属性情報の処理より高速化できる。
【０２０８】
なお、復号装置は、スライス化又はタイル化されているデータを必ずしも並列処理する必要はなく、復号処理部の数又は能力に応じて、これらを並列処理するかどうかを判定してもよい。
【０２０９】
以上のような方法で分割することにより、コンテンツ又はオブジェクトに応じた、適応的な符号化を実現できる。また、復号処理における並列処理を実現できる。これにより、点群符号化システム又は点群復号システムの柔軟性が向上する。
【０２１０】
図２５は、スライス及びタイルの分割のパターンの例を示す図である。図中のＤＵはデータ単位（ＤａｔａＵｎｉｔ）であり、タイル又はスライスのデータを示す。また、各ＤＵは、スライスインデックス（ＳｌｉｃｅＩｎｄｅｘ）とタイルインデックス（ＴｉｌｅＩｎｄｅｘ）を含む。図中のＤＵの右上の数値がスライスインデックスを示し、ＤＵの左下の数値がタイルインデックスを示す。
【０２１１】
パターン１では、スライス分割において、ＧスライスとＡスライスとで分割数及び分割方法は同じである。タイル分割において、Ｇスライスに対する分割数及び分割方法とＡスライスに対する分割数及び分割方法とは異なる。また、複数のＧスライス間では同一の分割数及び分割方法が用いられる。複数のＡスライス間では同一の分割数及び分割方法が用いられる。
【０２１２】
パターン２では、スライス分割において、ＧスライスとＡスライスとで分割数及び分割方法は同じである。タイル分割において、Ｇスライスに対する分割数及び分割方法とＡスライスに対する分割数及び分割方法とは異なる。また、複数のＧスライス間で分割数及び分割方法が異なる。複数のＡスライス間で分割数及び分割方法が異なる。
【０２１３】
次に、分割データの符号化方法について説明する。三次元データ符号化装置（第１の符号化部４９１０）は、分割されたデータを、それぞれ符号化する。三次元データ符号化装置は、属性情報を符号化する際に、どの構成情報（位置情報、付加情報又は他の属性情報）に基づき符号化を行ったかを示す依存関係情報を付加情報として生成する。つまり、依存関係情報は、例えば、参照先（依存先）の構成情報を示す。この場合、三次元データ符号化装置は、属性情報の分割形状に対応する構成情報に基づき依存関係情報を生成する。なお、三次元データ符号化装置は、複数の分割形状に対応する構成情報に基づき依存関係情報を生成してもよい。
【０２１４】
依存関係情報は三次元データ符号化装置で生成され、生成された依存関係情報が三次元データ復号装置に送出されてもよい。または、三次元データ復号装置が依存関係情報を生成し、三次元データ符号化装置は依存関係情報を送出しなくてもよい。また、三次元データ符号化装置が使用する依存関係を、予め定めておき、三次元データ符号化装置は、依存関係情報を送出しなくてもよい。
【０２１５】
図２６は、各データの依存関係の一例を示す図である。図中の矢印の先は依存先を示し、矢印の元は依存元を示している。三次元データ復号装置は、依存先から依存元の順でデータを復号する。また、図中に実線で示すデータは実際に送出されるデータであり、点線で示すデータは送出されないデータである。
【０２１６】
また、同図において、Ｇは位置情報を示し、Ａは属性情報を示す。Ｇｓ１は、スライス番号１の位置情報を示し、Ｇｓ２は、スライス番号２の位置情報を示す。Ｇｓ１ｔ１は、スライス番号１かつタイル番号１の位置情報を示し、Ｇｓ１ｔ２は、スライス番号１かつタイル番号２の位置情報を示し、Ｇｓ２ｔ１は、スライス番号２かつタイル番号１の位置情報を示し、Ｇｓ２ｔ２は、スライス番号２かつタイル番号２の位置情報を示す。同様に、Ａｓ１は、スライス番号１の属性情報を示し、Ａｓ２は、スライス番号２の属性情報を示す。Ａｓ１ｔ１は、スライス番号１かつタイル番号１の属性情報を示し、Ａｓ１ｔ２は、スライス番号１かつタイル番号２の属性情報を示し、Ａｓ２ｔ１は、スライス番号２かつタイル番号１の属性情報を示し、Ａｓ２ｔ２は、スライス番号２かつタイル番号２の属性情報を示す。
【０２１７】
Ｍｓｌｉｃｅは、スライス付加情報を示し、ＭＧｔｉｌｅは、位置タイル付加情報を示し、ＭＡｔｉｌｅは、属性タイル付加情報を示す。Ｄｓ１ｔ１は属性情報Ａｓ１ｔ１の依存関係情報を示し、Ｄｓ２ｔ１は属性情報Ａｓ２ｔ１の依存関係情報を示す。
【０２１８】
また、三次元データ符号化装置は、三次元データ復号装置においてデータを並び替える必要がないように、データを復号順に並び替えてもよい。なお、三次元データ復号装置においてデータを並び替えてもよいし、三次元データ符号化装置と三次元データ復号装置との両方でデータを並び替えてもよい。
【０２１９】
図２７は、データの復号順の例を示す図である。図２７の例では、左のデータから順に復号が行われる。三次元データ復号装置は、依存関係にあるデータ間では、依存先のデータから先に復号する。例えば、三次元データ符号化装置は、この順序となるようにデータを予め並び替えて送出する。なお、依存先のデータが先になる順序であれば、どのような順序でもよい。また、三次元データ符号化装置は、付加情報及び依存関係情報をデータより先に送出してもよい。
【０２２０】
図２８は、三次元データ符号装置による処理の流れを示すフローチャートである。まず、三次元データ符号化装置は、上記のように複数のスライス又はタイルのデータを符号化する（Ｓ４９０１）。次に、三次元データ符号化装置は、図２７に示すように、依存先のデータが先になるようにデータを並び替える（Ｓ４９０２）。次に、三次元データ符号化装置は、並び替え後のデータを多重化（ＮＡＬユニット化）する（Ｓ４９０３）。
【０２２１】
次に、第１の復号部４９２０に含まれる結合部４９２５の構成を説明する。図２９は、結合部４９２５の構成を示すブロック図である。結合部４９２５は、位置情報タイル結合部４９４１（Ｇｅｏｍｅｔｒｙ  Ｔｉｌｅ  Ｃｏｍｂｉｎｅｒ）と、属性情報タイル結合部４９４２（Ａｔｔｒｉｂｕｔｅ  Ｔｉｌｅ  Ｃｏｍｂｉｎｅｒ）と、スライス結合部（Ｓｌｉｃｅ  Ｃｏｍｂｉｎｅｒ）とを含む。
【０２２２】
位置情報タイル結合部４９４１は、位置タイル付加情報を用いて複数の分割位置情報を結合することで複数のスライス位置情報を生成する。属性情報タイル結合部４９４２は、属性タイル付加情報を用いて複数の分割属性情報を結合することで複数のスライス属性情報を生成する。
【０２２３】
スライス結合部４９４３は、スライス付加情報を用いて複数のスライス位置情報を結合することで位置情報を生成する。また、スライス結合部４９４３は、スライス付加情報を用いて複数のスライス属性情報を結合することで属性情報を生成する。
【０２２４】
なお、分割されるスライス又はタイルの数は１以上である。つまり、スライス又はタイルの分割が行われていなくてもよい。
【０２２５】
また、ここでは、スライス分割後にタイル分割が行われる例を示したが、タイル分割後にスライス分割が行われてもよい。また、スライス及びタイルに加え新たな分割種別を定義し、３つ以上の分割種別で分割が行われてもよい。
【０２２６】
次に、スライス分割又はタイル分割された符号化データの構成、及び符号化データのＮＡＬユニットへの格納方法（多重化方法）を説明する。図３０は、符号化データの構成及び符号化データのＮＡＬユニットへの格納方法を示す図である。
【０２２７】
符号化データ（分割位置情報及び分割属性情報）は、ＮＡＬユニットのペイロードに格納される。
【０２２８】
符号化データは、ヘッダとペイロードとを含む。ヘッダは、ペイロードに含まれるデータを特定するための識別情報を含む。この識別情報は、例えば、スライス分割或いはタイル分割の種別（ｓｌｉｃｅ＿ｔｙｐｅ、ｔｉｌｅ＿ｔｙｐｅ）、スライス或いはタイルを特定するためのインデックス情報（ｓｌｉｃｅ＿ｉｄｘ、ｔｉｌｅ＿ｉｄｘ）、データ（スライス或いはタイル）の位置情報、又はデータのアドレス（ａｄｄｒｅｓｓ）などを含む。スライスを特定するためのインデックス情報は、スライスインデックス（ＳｌｉｃｅＩｎｄｅｘ）とも記す。タイルを特定するためのインデックス情報は、タイルインデックス（ＴｉｌｅＩｎｄｅｘ）とも記す。また、分割の種別とは、例えば、上述したようなオブジェクト形状に基づく手法、地図情報或いは位置情報に基づく手法、又は、データ量或いは処理量に基づく手法等である。
【０２２９】
なお、上記の情報の全て又は一部は、分割位置情報のヘッダ及び分割属性情報のヘッダの一方に格納され、他方に格納されてなくてもよい。例えば、位置情報と属性情報とで同一の分割方法が用いられる場合には、位置情報と属性情報とで分割の種別（ｓｌｉｃｅ＿ｔｙｐｅ、ｔｉｌｅ＿ｔｙｐｅ）及びインデックス情報（ｓｌｉｃｅ＿ｉｄｘ、ｔｉｌｅ＿ｉｄｘ）は同一である。よって、位置情報と属性情報の一方のヘッダにこれらの情報が含まれてもよい。例えば、位置情報に属性情報が依存する場合には、位置情報が先に処理される。よって、位置情報のヘッダにこれらの情報が含まれ、属性情報のヘッダにはこれらの情報が含まれなくてもよい。この場合、三次元データ復号装置は、例えば、依存先の位置情報のスライス又はタイルと同一のスライス又はタイルに依存元の属性情報が属すると判断する。
【０２３０】
また、スライス分割又はタイル分割に係る付加情報（スライス付加情報、位置タイル付加情報又は属性タイル付加情報）、及び依存関係を示す依存関係情報等は、既存のパラメータセット（ＧＰＳ、ＡＰＳ、位置ＳＰＳ又は属性ＳＰＳなど）に格納されて送出されてもよい。分割方法がフレーム毎に変化する場合は、フレーム毎のパラメータセット（ＧＰＳ又はＡＰＳ等）に分割方法を示す情報が格納されてもよい。シーケンス内で分割方法が変化しない場合は、シーケンス毎のパラメータセット（位置ＳＰＳ又は属性ＳＰＳ）に分割方法を示す情報が格納されてもよい。さらに、位置情報と属性情報とで同じ分割方法が用いられる場合は、ＰＣＣストリームのパラメータセット（ストリームＰＳ）に分割方法を示す情報が格納されてもよい。
【０２３１】
また、上記の情報は、上記のいずれかのパラメータセットに格納されてもよいし、複数のパラメータセットに格納されてもよい。また、タイル分割又はスライス分割用のパラメータセットを定義し、当該パラメータセットに上記の情報を格納してもよい。また、これらの情報は、符号化データのヘッダに格納されてもよい。
【０２３２】
また、符号化データのヘッダは、依存関係を示す識別情報を含む。つまり、当該ヘッダは、データ間に依存関係がある場合は、依存元から依存先を参照するための識別情報を含む。例えば、依存先のデータのヘッダには、当該データを特定するための識別情報が含まれる。依存元のデータのヘッダには、依存先を示す識別情報が含まれる。なお、データを特定するための識別情報、スライス分割又はタイル分割に係る付加情報、及び依存関係を示す識別情報を、他の情報から識別可能又は導出可能である場合は、これらの情報を省略してもよい。
【０２３３】
次に、本実施の形態に係る点群データの符号化処理及び復号処理の流れについて説明する。図３１は、本実施の形態に係る点群データの符号化処理のフローチャートである。
【０２３４】
まず、三次元データ符号化装置は、使用する分割方法を決定する（Ｓ４９１１）。この分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。分割の種別とは、上述したようなオブジェクト形状に基づく手法、地図情報或いは位置情報に基づく手法、又は、データ量或いは処理量に基づく手法等である。なお、分割方法は、予め定められていてもよい。
【０２３５】
スライス分割が行われる場合（Ｓ４９１２でＹｅｓ）、三次元データ符号化装置は、位置情報と属性情報とを一括で分割することで複数のスライス位置情報及び複数のスライス属性情報を生成する（Ｓ４９１３）。また、三次元データ符号化装置は、スライス分割に係るスライス付加情報を生成する。なお、三次元データ符号化装置は、位置情報と属性情報とを独立に分割してもよい。
【０２３６】
タイル分割が行われる場合（Ｓ４９１４でＹｅｓ）、三次元データ符号化装置は、複数のスライス位置情報及び複数のスライス属性情報（又は位置情報及び属性情報）を独立に分割することで複数の分割位置情報及び複数の分割属性情報を生成する（Ｓ４９１５）。また、三次元データ符号化装置は、タイル分割に係る位置タイル付加情報及び属性タイル付加情報を生成する。なお、三次元データ符号化装置は、スライス位置情報とスライス属性情報とを一括で分割してもよい。
【０２３７】
次に、三次元データ符号化装置は、複数の分割位置情報及び複数の分割属性情報の各々を符号化することで、複数の符号化位置情報及び複数の符号化属性情報を生成する（Ｓ４９１６）。また、三次元データ符号化装置は、依存関係情報を生成する。
【０２３８】
次に、三次元データ符号化装置は、複数の符号化位置情報、複数の符号化属性情報及び付加情報をＮＡＬユニット化（多重化）することで符号化データ（符号化ストリーム）を生成する（Ｓ４９１７）。また、三次元データ符号化装置は、生成した符号化データを送出する。
【０２３９】
図３２は、本実施の形態に係る点群データの復号処理のフローチャートである。まず、三次元データ復号装置は、符号化データ（符号化ストリーム）に含まれる、分割方法に係る付加情報（スライス付加情報、位置タイル付加情報及び属性タイル付加情報）を解析することで、分割方法を判定する（Ｓ４９２１）。この分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。
【０２４０】
次に、三次元データ復号装置は、符号化データに含まれる複数の符号化位置情報及び複数の符号化属性情報を、符号化データに含まれる依存関係情報を用いて復号することで分割位置情報及び分割属性情報を生成する（Ｓ４９２２）。
【０２４１】
付加情報によりタイル分割が行われていることが示される場合（Ｓ４９２３でＹｅｓ）、三次元データ復号装置は、位置タイル付加情報及び属性タイル付加情報に基づき、複数の分割位置情報と、複数の分割属性情報とを、それぞれの方法で結合することで、複数のスライス位置情報及び複数のスライス属性情報を生成する（Ｓ４９２４）。なお、三次元データ復号装置は、複数の分割位置情報と、複数の分割属性情報とを同一の方法で結合してもよい。
【０２４２】
付加情報によりスライス分割が行われていることが示される場合（Ｓ４９２５でＹｅｓ）、三次元データ復号装置は、スライス付加情報に基づき、複数のスライス位置情報及び複数のスライス属性情報（複数の分割位置情報及び複数の分割属性情報）を同一の方法で結合することで位置情報及び属性情報を生成する（Ｓ４９２６）。なお、三次元データ復号装置は、複数のスライス位置情報と複数のスライス属性情報とを、それぞれ異なる方法で結合してもよい。
【０２４３】
以上のように、本実施の形態に係る三次元データ符号化装置は、図３３に示す処理を行う。まず、三次元データ符号化装置は、複数の三次元点が含まれる対象空間が分割された複数のサブ空間（例えばスライス）に含まれ、各々が１以上の三次元点を含む複数の分割データ（例えばタイル）に分割する。ここで、分割データは、サブ空間に含まれ、１以上の三次元点を含む１以上のデータ集合体である。また、分割データは空間でもあり、三次元点を含まない空間を含んでいてもよい。また、１つのサブ空間に複数の分割データが含まれてもよいし、１つのサブ空間に１つの分割データが含まれてもよい。なお、対象空間に複数のサブ空間が設定されてもよいし、対象空間に１つのサブ空間が設定されてもよい。
【０２４４】
次に、三次元データ符号化装置は、複数の分割データの各々を符号化することで、複数の分割データの各々に対応する複数の符号化データを生成する（Ｓ４９３１）。三次元データ符号化装置は、複数の符号化データと、複数の符号化データの各々に対する複数の制御情報（例えば図３０に示すヘッダ）とを含むビットストリームを生成する（Ｓ４９３２）。複数の制御情報の各々には、当該制御情報に対応する符号化データに対応するサブ空間を示す第１識別子（例えばｓｌｉｃｅ＿ｉｄｘ）と、当該制御情報に対応する符号化データに対応する分割データを示す第２識別子（例えばｔｉｌｅ＿ｉｄｘ）とが格納される。
【０２４５】
これによれば、三次元データ符号化装置で生成されたビットストリームを復号する三次元データ復号装置は、第１識別子及び第２識別子を用いて、複数の分割データのデータを結合して対象空間を容易に復元できる。よって、三次元データ復号装置における処理量を低減できる。
【０２４６】
例えば、三次元データ符号化装置は、前記符号化では、複数の分割データの各々に含まれる三次元点の位置情報と属性情報とを符号化する。複数の符号化データの各々は、位置情報の符号化データと、属性情報の符号化データとを含む。複数の制御情報の各々は、位置情報の符号化データの制御情報と、属性情報の符号化データの制御情報とを含む。第１識別子及び第２識別子は、位置情報の符号化データの制御情報に格納される。
【０２４７】
例えば、ビットストリームにおいて、複数の制御情報の各々は、当該制御情報に対応する符号化データの前に配置されている。
【０２４８】
また、三次元データ符号化装置は、複数の三次元点が含まれる対象空間が１以上のサブ空間に設定され、前記サブ空間に１以上の三次元点を含む１以上の分割データが含まれ、前記分割データの各々を符号化することで、前記複数の分割データの各々に対応する複数の符号化データを生成し、前記複数の符号化データと、前記複数の符号化データの各々に対する複数の制御情報とを含むビットストリームを生成し、前記複数の制御情報の各々には、当該制御情報に対応する符号化データに対応するサブ空間を示す第１識別子と、当該制御情報に対応する符号化データに対応する分割データを示す第２識別子とが格納されてもよい。
【０２４９】
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０２５０】
また、本実施の形態に係る三次元データ復号装置は、図３４に示す処理を行う。まず、三次元データ復号装置は、複数の三次元点が含まれる対象空間が分割された複数のサブ空間（例えばスライス）に含まれ、各々が１以上の三次元点を含む複数の分割データ（例えばタイル）の各々が符号化されることで生成された複数の符号化データと、複数の符号化データの各々に対する複数の制御情報（例えば図３０に示すヘッダ）とを含むビットストリームから、前記複数の制御情報に格納されている、当該制御情報に対応する符号化データに対応するサブ空間を示す第１識別子（例えばｓｌｉｃｅ＿ｉｄｘ）と、当該制御情報に対応する符号化データに対応する分割データを示す第２識別子（例えばｔｉｌｅ＿ｉｄｘ）とを取得する（Ｓ４９４１）。次に、三次元データ復号装置は、複数の符号化データを復号することで複数の分割データを復元する（Ｓ４９４２）。次に、三次元データ復号装置は、第１識別子及び第２識別子を用いて、複数の分割データを結合することで対象空間を復元する（Ｓ４９４３）。例えば、三次元データ符号化装置は、第２識別子を用いて複数の分割データを結合することで複数のサブ空間を復元し、第１識別子を用いて複数のサブ空間を結合することで対象空間（複数の三次元点）を復元する。なお、三次元データ復号装置は、第１識別子及び第２識別子の少なくとも一方を用いて、所望のサブ空間又は分割データの符号化データをビットストリームから取得し、取得した符号化データを選択的に復号、又は優先的に復号してもよい。
【０２５１】
これによれば、三次元データ復号装置は、第１識別子及び第２識別子を用いて、複数の分割データのデータを結合して対象空間を容易に復元できる。よって、三次元データ復号装置における処理量を低減できる。
【０２５２】
例えば、複数の符号化データの各々は、対応する分割データに含まれる三次元点の位置情報と属性情報とが符号化されることで生成され、位置情報の符号化データと、属性情報の符号化データとを含む。複数の制御情報の各々は、位置情報の符号化データの制御情報と、属性情報の符号化データの制御情報とを含む。第１識別子及び第２識別子は、位置情報の符号化データの制御情報に格納されている。
【０２５３】
例えば、ビットストリームにおいて、制御情報は、対応する符号化データの前に配置されている。
【０２５４】
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０２５５】
（実施の形態５）
隣接依存を用いた位置情報符号化では、点群の密度が高いほど符号化効率が向上する可能性がある。本実施の形態では、三次元データ符号化装置は、連続するフレームの点群データを結合することで、連続するフレームの点群データをまとめて符号化する。このとき、三次元データ符号化装置は、結合後の点群データに含まれるリーフノードの各々が属するフレームを識別するための情報を加えた符号化データを生成する。
【０２５６】
ここで、連続するフレームの点群データは類似する可能性が高い。よって、連続するフレームで、オキュパンシー符号の上位レベルが同一になる可能性が高い。つまり、連続するフレームをまとめて符号化することで、オキュパンシー符号の上位レベルを共用できる。
【０２５７】
また、点群がどのフレームに属するかの区別は、フレームのインデックスを符号化することにより、リーフノードで行われる。
【０２５８】
図３５は、Ｎ個のＰＣＣ（Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｃｏｍｐｒｅｓｓｉｏｎ）フレームの点群データからツリー構造及びオキュパンシー符号（Ｏｃｃｕｐａｎｃｙ  Ｃｏｄｅ）を生成するイメージを示す図である。同図において、矢印中の点は、それぞれのＰＣＣフレームに属する点を示している。初めに、それぞれのＰＣＣフレームに属する点には、フレームを特定するためのフレームインデックスが付与される。
【０２５９】
次に、Ｎ個のフレームに属する点をツリー構造に変換し、オキュパンシー符号が生成される。具体的には、点ごとに、点がツリー構造におけるどのリーフノードに属するかが判定される。同図では、木構造（Ｔｒｅｅ  Ｓｔｒｕｃｔｕｒｅ）はノードの集合を示している。上位のノードから順番に、点がどのノードに属するかが判定される。ノードごとの判定結果がオキュパンシー符号として符号化される。オキュパンシー符号はＮ個のフレームで共通である。
【０２６０】
ノードには、異なるフレームインデックスが付与された、異なるフレームの点が混在する場合がある。なお、８分木（Ｏｃｔｒｅｅ）の分解能が小さい場合は、同一のフレームインデックスが付与された同一フレームの点が混在することもある。
【０２６１】
最下層のノード（リーフノード）には、複数のフレームに属する点が混在（重複）することがある。
【０２６２】
ツリー構造及びオキュパンシー符号において、上位のレベルのツリー構造及びオキュパンシー符号は、全てのフレームにおいて共通成分である可能性があり、下位のレベルのツリー構造及びオキュパンシー符号はフレーム毎の個別成分、又は共通成分と個別成分とが混在する可能性がある。
【０２６３】
例えば、リーフノードなどの最下層のノードには、フレームインデックスを持つ０以上の点が生成され、点の数を示す情報、及び各点に対するフレームインデックスの情報が生成される。これらの情報は、フレームにおいて個別の情報であるともいえる。
【０２６４】
図３６は、フレーム結合の例を示す図である。図３６の（ａ）に示すように、複数フレームをまとめてツリー構造を生成することにより、同一のノードに含まれるフレームの点の密度が増える。また、ツリー構造を共有することによりオキュパンシー符号のデータ量を削減できる。これらにより、符号化率を向上できる可能性がある。
【０２６５】
また、図３６の（ｂ）に示すように、ツリー構造におけるオキュパンシー符号の個別成分がより密になることにより、算術符号化の効果が高まるので、符号化率を向上できる可能性がある。
【０２６６】
以降、時間的に異なる複数のＰＣＣフレームの結合を例に説明するが、複数フレームでない場合、つまりフレームを結合しない場合（Ｎ＝１）にも適用可能である。また、結合する複数の点群データは、複数フレーム、つまり、同一対象物の時刻の異なる点群データに限らない。つまり、以下の手法は、空間的、又は時空間的に異なる複数の点群データの結合にも適用可能である。また、以下の手法は、コンテンツの異なる点群データ又は点群ファイルの結合にも適用可能である。
【０２６７】
図３７は、時間的に異なる複数のＰＣＣフレームの結合の例を示す図である。図３７は、自動車が移動しながら、ＬｉＤＡＲなどのセンサで点群データを取得する例を示す。点線は、フレーム毎のセンサの取得範囲、すなわち点群データの領域を示している。センサの取得範囲が大きい場合は、点群データの範囲も大きくなる。
【０２６８】
点群データを結合して符号化する手法は、以下のような点群データに対して有効である。例えば、図３７に示す例では、自動車は移動しており、フレームは自動車の周辺の３６０°のスキャンにより識別される。つまり、次のフレームであるフレーム２は、車両がＸ方向への移動した後の別の３６０°のスキャンに対応する。
【０２６９】
この場合、フレーム１とフレーム２とには、重複する領域が存在するため同一の点群データが含まれる可能性がある。よって、フレーム１とフレーム２とを結合して符号化することで符号化効率を向上できる可能性がある。なお、より多くのフレームを結合することも考えられる。ただし、結合するフレーム数を増やすと、リーフノードに付加されるフレームインデックスの符号化に必要なビット数が増加する。
【０２７０】
また、異なる位置のセンサによって点群データが取得されてもよい。それにより、それぞれの位置から取得されたそれぞれの点群データがそれぞれフレームとして用いられてもよい。つまり、複数のフレームは、単一のセンサで取得された点群データであってもよいし、複数のセンサで取得された点群データであってもよい。また、複数のフレーム間において、一部又は全ての対象物が同一であってもよいし、異なってもよい。
【０２７１】
次に、本実施の形態に係る三次元データ符号化処理の流れを説明する。図３８は、三次元データ符号化処理のフローチャートである。三次元データ符号化装置は、結合を行うフレームの数である結合フレーム数Ｎに基づき、Ｎ個全てのフレームの点群データを読み込む。
【０２７２】
まず、三次元データ符号化装置は、結合フレーム数Ｎを決定する（Ｓ５４０１）。例えば、この結合フレーム数Ｎはユーザにより指定される。
【０２７３】
次に、三次元データ符号化装置は、点群データを取得する（Ｓ５４０２）。次に、三次元データ符号化装置は、取得した点群データのフレームインデックスを記録する（Ｓ５４０３）。
【０２７４】
Ｎ個のフレームを処理済みでない場合（Ｓ５４０４でＮｏ）、三次元データ符号化装置は、次の点群データを指定し（Ｓ５４０５）、指定された点群データに対してステップＳ５４０２以降の処理を行う。
【０２７５】
一方、Ｎ個のフレームを処理済みである場合（Ｓ５４０４でＹｅｓ）、三次元データ符号化装置は、Ｎ個のフレームを結合し、結合後のフレームを符号化する（Ｓ５４０６）。
【０２７６】
図３９は、符号化処理（Ｓ５４０６）のフローチャートである。まず、三次元データ符号化装置は、Ｎ個のフレームに共通の共通情報を生成する（Ｓ５４１１）。例えば、共通情報は、オキュパンシー符号、及び結合フレーム数Ｎを示す情報を含む。
【０２７７】
次に、三次元データ符号化装置は、フレーム毎に個別の情報である個別情報を生成する（Ｓ５４１２）。例えば、個別情報は、リーフノードに含まれる点の数、及びリーフノードに含まれる点のフレームインデックスを含む。
【０２７８】
次に、三次元データ符号化装置は、共通情報と個別情報とを結合し、結合後の情報を符号化することで符号化データを生成する（Ｓ５４１３）。次に、三次元データ符号化装置は、フレーム結合に係る付加情報（メタデータ）を生成し、生成した付加情報を符号化する（Ｓ５４１４）。
【０２７９】
次に、本実施の形態に係る三次元データ復号処理の流れを説明する。図４０は、三次元データ復号処理のフローチャートである。
【０２８０】
まず、三次元データ復号装置は、ビットストリームから結合フレーム数Ｎを取得する（Ｓ５４２１）。次に、三次元データ符号化装置は、ビットストリームから符号化データを取得する（Ｓ５４２２）。次に、三次元データ復号装置は、符号化データを復号することで点群データとフレームインデックスと取得する（Ｓ５４２３）。最後に、三次元データ復号装置は、復号された点群データをフレームインデックスを用いて分割する（Ｓ５４２４）。
【０２８１】
図４１は、復号及び分割処理（Ｓ５４２３及びＳ５４２４）のフローチャートである。まず、三次元データ復号装置は、符号化データ（ビットストリーム）から共通情報及び個別情報を復号（取得）する（Ｓ５４３１）。
【０２８２】
次に、三次元データ復号装置は、単一のフレームを復号するか複数のフレームを復号するかを決定する（Ｓ５４３２）。例えば、単一のフレームを復号するか複数のフレームを復号するかは外部から指定されてもよい。ここで、複数のフレームとは、結合されたフレームの全てのフレームであってもよいし、一部のフレームであってもよい。例えば、三次元データ復号装置は、アプリケーションが必要とする特定のフレームを復号すると決定し、必要としないフレームを復号しないと決定してもよい。または、リアルタイムな復号が要求される場合には、三次元データ復号装置は、結合された複数フレームのうち単一のフレームを復号すると決定してもよい。
【０２８３】
単一のフレームを復号する場合（Ｓ５４３２でＹｅｓ）、三次元データ復号装置は、復号した個別情報から指定された単一のフレームインデックスに対応する個別情報を抽出し、抽出した個別情報を復号することで、指定されたフレームインデックスに対応するフレームの点群データを復元する（Ｓ５４３３）。
【０２８４】
一方、複数フレームを復号する場合（Ｓ５４３２でＮｏ）、三次元データ復号装置は、指定された複数のフレーム（又は全てのフレーム）のフレームインデックスに対応する個別情報を抽出し、抽出した個別情報を復号することで、指定された複数フレームの点群データを復元する（Ｓ５４３４）。次に、三次元データ復号装置は、フレームインデックスに基づき、復号した点群データ（個別情報）を分割する（Ｓ５４３５）。つまり、三次元データ復号装置は、復号した点群データを複数フレームに分割する。
【０２８５】
なお、三次元データ復号装置は、結合された全てのフレームのデータを一括で復号し、復号したデータを各フレームに分割してもよいし、結合された全てのフレームのうち、任意の一部のフレームを一括で復号し、復号したデータを各フレームに分割してもよい。また、三次元データ復号装置は、複数フレームからなる予め定められた単位フレームを単独で復号してもよい。
【０２８６】
以下、本実施の形態に係る三次元データ符号化装置の構成を説明する。図４２は、本実施の形態に係る三次元データ符号化装置に含まれる符号化部５４１０の構成を示すブロック図である。符号化部５４１０は、点群データ（ポイントクラウド）を符号化することで符号化データ（符号化ストリーム）を生成する。この符号化部５４１０は、分割部５４１１と、複数の位置情報符号化部５４１２と、複数の属性情報符号化部５４１３と、付加情報符号化部５４１４と、多重化部５４１５とを含む。
【０２８７】
分割部５４１１は、複数フレームの点群データを分割することで複数フレームの複数の分割データを生成する。具体的には、分割部５４１１は、各フレームの点群データの空間を複数のサブ空間に分割することで複数の分割データを生成する。ここでサブ空間とは、タイル及びスライスの一方、又はタイル及びスライスの組み合わせである。より具体的には、点群データは、位置情報、属性情報（色又は反射率等）、及び付加情報を含む。また、分割部５４１１には、フレーム番号が入力される。分割部５４１１は、各フレームの位置情報を複数の分割位置情報に分割し、各フレームの属性情報を複数の分割属性情報に分割する。また、分割部５４１１は、分割に関する付加情報を生成する。
【０２８８】
例えば、分割部５４１１は、まず、点群をタイルに分割する。次に、分割部５４１１は、得られたタイルを、さらにスライスに分割する。
【０２８９】
複数の位置情報符号化部５４１２は、複数の分割位置情報を符号化することで複数の符号化位置情報を生成する。例えば、位置情報符号化部５４１２は、８分木等のＮ分木構造を用いて分割位置情報を符号化する。具体的には、８分木では、対象空間が８個のノード（サブ空間）に分割され、各ノードに点群が含まれるか否かを示す８ビットの情報（オキュパンシー符号）が生成される。また、点群が含まれるノードは、さらに、８個のノードに分割され、当該８個のノードの各々に点群が含まれるか否かを示す８ビットの情報が生成される。この処理が、予め定められた階層又はノードに含まれる点群の数の閾値以下になるまで繰り返される。例えば、複数の位置情報符号化部５４１２は、複数の分割位置情報を並列処理する。
【０２９０】
属性情報符号化部４６３２は、位置情報符号化部４６３１で生成された構成情報を用いて符号化することで符号化データである符号化属性情報を生成する。例えば、属性情報符号化部４６３２は、位置情報符号化部４６３１で生成された８分木構造に基づき、処理対象の対象点（対象ノード）の符号化において参照する参照点（参照ノード）を決定する。例えば、属性情報符号化部４６３２は、周辺ノード又は隣接ノードのうち、８分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
【０２９１】
また、位置情報又は属性情報の符号化処理は、量子化処理、予測処理、及び算術符号化処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、符号化のパラメータの決定に参照ノードの状態（例えば、参照ノードに点群が含まれる否かを示す占有情報）を用いること、である。例えば、符号化のパラメータとは、量子化処理における量子化パラメータ、又は算術符号化におけるコンテキスト等である。
【０２９２】
複数の属性情報符号化部５４１３は、複数の分割属性情報を符号化することで複数の符号化属性情報を生成する。例えば、複数の属性情報符号化部５４１３は、複数の分割属性情報を並列処理する。
【０２９３】
付加情報符号化部５４１４は、点群データに含まれる付加情報と、分割部５４１１で分割時に生成された、データ分割に関する付加情報とを符号化することで符号化付加情報を生成する。
【０２９４】
多重化部５４１５は、複数フレームの、複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を多重化することで符号化データ（符号化ストリーム）を生成し、生成した符号化データを送出する。また、符号化付加情報は復号時に使用される。
【０２９５】
図４３は、分割部５４１１のブロック図である。分割部５４１１は、タイル分割部５４２１と、スライス分割部５４２２とを含む。
【０２９６】
タイル分割部５４２１は、複数フレームの位置情報（Ｐｏｓｉｔｉｏｎ（Ｇｅｏｍｅｔｒｙ））の各々をタイルに分割することで複数のタイル位置情報を生成する。また、タイル分割部５４２１は、複数フレームの属性情報（Ａｔｔｒｉｂｕｔｅ）の各々をタイルに分割することで複数のタイル属性情報を生成する。また、タイル分割部５４２１は、タイル分割に係る情報、及びタイル分割において生成された情報を含むタイル付加情報（Ｔｉｌｅ  ＭｅｔａＤａｔａ）を出力する。
【０２９７】
スライス分割部５４２２は、複数のタイル位置情報をスライスに分割することで複数の分割位置情報（複数のスライス位置情報）を生成する。また、スライス分割部５４２２は、複数のタイル属性情報をスライスに分割することで複数の分割属性情報（複数のスライス属性情報）を生成する。また、スライス分割部５４２２は、スライス分割に係る情報、及びスライス分割において生成された情報を含むスライス付加情報（Ｓｌｉｃｅ  ＭｅｔａＤａｔａ）を出力する。
【０２９８】
また、分割部５４１１は、分割処理において、原点座標及び属性情報等を示すために、フレーム番号（フレームインデックス）を用いる。
【０２９９】
図４４は、位置情報符号化部５４１２のブロック図である。位置情報符号化部５４１２は、フレームインデックス生成部５４３１と、エントロピー符号化部５４３２とを含む。
【０３００】
フレームインデックス生成部５４３１は、フレーム番号に基づきフレームインデックスの値を決定し、決定したフレームインデックスを位置情報に付加する。エントロピー符号化部５４３２は、フレームインデックスが付加された分割位置情報をエントロピー符号化することで符号化位置情報を生成する。
【０３０１】
図４５は、属性情報符号化部５４１３のブロック図である。属性情報符号化部５４１３は、フレームインデックス生成部５４４１と、エントロピー符号化部５４４２とを含む。
【０３０２】
フレームインデックス生成部５４４１は、フレーム番号に基づきフレームインデックスの値を決定し、決定したフレームインデックスを属性情報に付加する。エントロピー符号化部５４４２は、フレームインデックスが付加された分割属性情報をエントロピー符号化することで符号化属性情報を生成する。
【０３０３】
次に、本実施の形態に係る点群データの符号化処理及び復号処理の流れについて説明する。図４６は、本実施の形態に係る点群データの符号化処理のフローチャートである。
【０３０４】
まず、三次元データ符号化装置は、使用する分割方法を決定する（Ｓ５４４１）。この分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。
【０３０５】
タイル分割が行われる場合（Ｓ５４４２でＹｅｓ）、三次元データ符号化装置は、位置情報と属性情報とを分割することで複数のタイル位置情報及び複数のタイル属性情報を生成する（Ｓ５４４３）。また、三次元データ符号化装置は、タイル分割に係るタイル付加情報を生成する。
【０３０６】
スライス分割が行われる場合（Ｓ５４４４でＹｅｓ）、三次元データ符号化装置は、複数のタイル位置情報及び複数のタイル属性情報（又は位置情報及び属性情報）を分割することで複数の分割位置情報及び複数の分割属性情報を生成する（Ｓ５４４５）。また、三次元データ符号化装置は、スライス分割に係るスライス付加情報を生成する。
【０３０７】
次に、三次元データ符号化装置は、複数の分割位置情報及び複数の分割属性情報の各々をフレームインデックスと符号化することで、複数の符号化位置情報及び複数の符号化属性情報を生成する（Ｓ５４４６）。また、三次元データ符号化装置は、依存関係情報を生成する。
【０３０８】
次に、三次元データ符号化装置は、複数の符号化位置情報、複数の符号化属性情報及び付加情報をＮＡＬユニット化（多重化）することで符号化データ（符号化ストリーム）を生成する（Ｓ５４４７）。また、三次元データ符号化装置は、生成した符号化データを送出する。
【０３０９】
図４７は、符号化処理（Ｓ５４４６）のフローチャートである。まず、三次元データ符号化装置は、分割位置情報を符号化する（Ｓ５４５１）。次に、三次元データ符号化装置は、分割位置情報用のフレームインデックスを符号化する（Ｓ５４５２）。
【０３１０】
分割属性情報が存在する場合（Ｓ５４５３でＹｅｓ）、三次元データ符号化装置は、分割属性情報を符号化し（Ｓ５４５４）、分割属性情報用のフレームインデックスを符号化する（Ｓ５４５５）。一方、分割属性情報が存在しない場合（Ｓ５４５３でＮｏ）、三次元データ符号化装置は、分割属性情報の符号化、及び分割属性情報用のフレームインデックスの符号化を行わない。なお、フレームインデックスは分割位置情報と分割属性情報のいずれか一方または両方に格納されてもよい。
【０３１１】
なお、三次元データ符号化装置は、属性情報を、フレームインデックスを用いて符号化してもよいし、フレームインデックスを用いずに符号化してもよい。つまり、三次元データ符号化装置は、フレームインデックスを用いて、それぞれの点が属するフレームを識別し、フレーム毎に符号化してもよいし、フレームを識別せずに、全てのフレームに属する点を符号化してもよい。
【０３１２】
以下、本実施の形態に係る三次元データ復号装置の構成を説明する。図４８は、復号部５４５０の構成を示すブロック図である。復号部５４５０は、点群データが符号化されることで生成された符号化データ（符号化ストリーム）を復号することで点群データを復元する。この復号部５４５０は、逆多重化部５４５１と、複数の位置情報復号部５４５２と、複数の属性情報復号部５４５３と、付加情報復号部５４５４と、結合部５４５５とを含む。
【０３１３】
逆多重化部５４５１は、符号化データ（符号化ストリーム）を逆多重化することで複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を生成する。
【０３１４】
複数の位置情報復号部５４５２は、複数の符号化位置情報を復号することで複数の分割位置情報を生成する。例えば、複数の位置情報復号部５４５２は、複数の符号化位置情報を並列処理する。
【０３１５】
複数の属性情報復号部５４５３は、複数の符号化属性情報を復号することで複数の分割属性情報を生成する。例えば、複数の属性情報復号部５４５３は、複数の符号化属性情報を並列処理する。
【０３１６】
複数の付加情報復号部５４５４は、符号化付加情報を復号することで付加情報を生成する。
【０３１７】
結合部５４５５は、付加情報を用いて複数の分割位置情報を結合することで位置情報を生成する。結合部５４５５は、付加情報を用いて複数の分割属性情報を結合することで属性情報を生成する。また、結合部５４５５は、フレームインデックスを用いて位置情報及び属性情報を複数フレームの位置情報及び複数フレームの属性情報に分割する。
【０３１８】
図４９は、位置情報復号部５４５２のブロック図である。位置情報復号部５４５２は、エントロピー復号部５４６１と、フレームインデックス取得部５４６２とを含む。エントロピー復号部５４６１は、符号化位置情報をエントロピー復号することで分割位置情報を生成する。フレームインデックス取得部５４６２は、分割位置情報からフレームインデックを取得する。
【０３１９】
図５０は、属性情報復号部５４５３のブロック図である。属性情報復号部５４５３は、エントロピー復号部５４７１と、フレームインデックス取得部５４７２とを含む。エントロピー復号部５４７１は、符号化属性情報をエントロピー復号することで分割属性情報を生成する。フレームインデックス取得部５４７２は、分割属性情報からフレームインデックを取得する。
【０３２０】
図５１は、結合部５４５５の構成を示す図である。結合部５４５５は、複数の分割位置情報を結合することで位置情報を生成する。結合部５４５５は、複数の分割属性情報を結合することで属性情報を生成する。また、結合部５４５５は、フレームインデックスを用いて位置情報及び属性情報を複数フレームの位置情報及び複数フレームの属性情報に分割する。
【０３２１】
図５２は、本実施の形態に係る点群データの復号処理のフローチャートである。まず、三次元データ復号装置は、符号化データ（符号化ストリーム）に含まれる、分割方法に係る付加情報（スライス付加情報、及びタイル付加情報）を解析することで、分割方法を判定する（Ｓ５４６１）。この分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。
【０３２２】
次に、三次元データ復号装置は、符号化データに含まれる複数の符号化位置情報及び複数の符号化属性情報を、符号化データに含まれる依存関係情報を用いて復号することで分割位置情報及び分割属性情報を生成する（Ｓ５４６２）。
【０３２３】
付加情報によりスライス分割が行われていることが示される場合（Ｓ５４６３でＹｅｓ）、三次元データ復号装置は、スライス付加情報に基づき、複数の分割位置情報を結合することで複数のタイル位置情報を生成し、複数の分割属性情報を結合することで複数のタイル属性情報を生成する（Ｓ５４６４）。ここで、複数の分割位置情報、複数の分割属性情報、複数のタイル位置情報、及び複数のタイル属性情報は、フレームインデックスを含む。
【０３２４】
付加情報によりタイル分割が行われていることが示される場合（Ｓ５４６５でＹｅｓ）、三次元データ復号装置は、タイル付加情報に基づき、複数のタイル位置情報（複数の分割位置情報）を結合することで位置情報を生成し、複数のタイル属性情報（複数の分割属性情報）を結合することで属性情報を生成する（Ｓ５４６６）。ここで、複数のタイル位置情報、複数のタイル属性情報、位置情報及び属性情報は、フレームインデックスを含む。
【０３２５】
図５３は、復号処理（Ｓ５４６４又はＳ５４６６）のフローチャートである。まず、三次元データ復号装置は、分割位置情報（スライス位置情報）を復号する（Ｓ５４７１）。次に、三次元データ復号装置は、分割位置情報用のフレームインデックスを復号する（Ｓ５４７２）。
【０３２６】
分割属性情報が存在する場合（Ｓ５４７３でＹｅｓ）、三次元データ復号装置は、分割属性情報を復号し（Ｓ５４７４）、分割属性情報用のフレームインデックスを復号する（Ｓ５４７５）。一方、分割属性情報が存在しない場合（Ｓ５４７３でＮｏ）、三次元データ復号装置は、分割属性情報の復号、及び分割属性情報用のフレームインデックスの復号を行わない。
【０３２７】
なお、三次元データ復号装置は、属性情報を、フレームインデックスを用いて復号してもよいし、フレームインデックスを用いずに復号してもよい。
【０３２８】
以下、フレーム結合における符号化単位について説明する。図５４は、フレームの結合パターンの例を示す図である。同図の例は、例えば、ＰＣＣフレームが時系列であり、リアルタイムにデータの生成及び符号化が行われる場合の例である。
【０３２９】
図５４の（ａ）は、固定的に４フレームを結合する場合を示している。三次元データ符号化装置は、４フレーム分のデータの生成を待ってから符号化データを生成する。
【０３３０】
図５４の（ｂ）は、適応的にフレーム数が変化する場合を示している。例えば、三次元データ符号化装置は、レート制御において符号化データの符号量を調整するために結合フレーム数を変化させる。
【０３３１】
なお、三次元データ符号化装置は、フレーム結合による効果がない可能性がある場合は、フレームを結合しなくてもよい。また、三次元データ符号化装置は、フレーム結合する場合とフレーム結合しない場合とを切り替えてもよい。
【０３３２】
図５４の（ｃ）は、結合する複数のフレームの一部が次に結合する複数のフレームの一部と重複する場合の例である。この例は、符号化できたものから順次送出するなど、リアルタイム性、又は低遅延が要求される場合に有用である。
【０３３３】
図５５は、ＰＣＣフレームの構成例を示す図である。三次元データ符号化装置は、結合するフレームを、少なくとも単独で復号できるデータ単位を含むように構成してもよい。例えば、図５５の（ａ）に示すように、ＰＣＣフレームが全てイントラ符号化されており、ＰＣＣフレームを単独で復号可能な場合には、上記のいずれのパターンも適用可能である。
【０３３４】
また、図５５の（ｂ）に示すように、インター予測が適用されている場合などにおいてＧＯＦ（グループオブフレーム）などのランダムアクセス単位が設定される場合は、三次元データ符号化装置は、そのＧＯＦ単位を最小単位として、データを結合してもよい。
【０３３５】
なお、三次元データ符号化装置は、共通情報と個別情報とを一括で符号化してもよいし、それぞれを別に符号化してもよい。また、三次元データ符号化装置は、共通情報と個別情報とに共通のデータ構造を用いてもよいし別のデータ構造を用いてもよい。
【０３３６】
また、三次元データ符号化装置は、フレーム毎にオキュパンシー符号を生成した後に、複数フレームのオキュパンシー符号を比較し、例えば、所定の基準で複数フレームのオキュパンシー符号間で共通部分が多いか否かを判定し、共通部分が多い場合に共通情報を生成してもよい。あるいは、三次元データ符号化装置は、共通部分が多いか否に基づき、フレーム結合するかどうか、どのフレームを結合するか、又は結合フレーム数を決定してもよい。
【０３３７】
次に、符号化位置情報の構成を説明する。図５６は、符号化位置情報の構成を示す図である。符号化位置情報は、ヘッダとペイロードとを含む。
【０３３８】
図５７は、符号化位置情報のヘッダ（Ｇｅｏｍｅｔｒｙ＿ｈｅａｄｅｒ）のシンタックス例を示す図である。符号化位置情報のヘッダは、ＧＰＳインデックス（ｇｐｓ＿ｉｄｘ）と、オフセット情報（ｏｆｆｓｅｔ）と、その他の情報（ｏｔｈｅｒ＿ｇｅｏｍｅｔｒｙ＿ｉｎｆｏｒｍａｔｉｏｎ）と、フレーム結合フラグ（ｃｏｍｂｉｎｅ＿ｆｒａｍｅ＿ｆｌａｇ）と、結合フレーム数（ｎｕｍｂｅｒ＿ｏｆ＿ｃｏｍｂｉｎｅ＿ｆｒａｍｅ）とを含む。
【０３３９】
ＧＰＳインデックスは、符号化位置情報に対応するパラメータセット（ＧＰＳ）の識別子（ＩＤ）を示す。ＧＰＳは、１フレーム又は複数のフレームの符号化位置情報のパラメータセットである。なお、１フレーム毎にパラメータセットが存在する場合は、複数のパラメータセットの識別子がヘッダに示されてもよい。
【０３４０】
オフセット情報は、結合データを取得するためのオフセット位置を示す。その他の情報は、位置情報に関するその他の情報（例えば、量子化パラメータの差分値（ＱＰｄｅｌｔａ）など）を示す。フレーム結合フラグは、符号化データがフレーム結合されているか否かを示すフラグである。結合フレーム数は、結合されているフレームの数を示す。
【０３４１】
なお、上記の情報の一部又は全てがＳＰＳ又はＧＰＳに記載されてもよい。なお、ＳＰＳとは、シーケンス（複数フレーム）単位のパラメータセットであり、符号化位置情報と符号化属性情報とに共通に用いられるパラメータセットである。
【０３４２】
図５８は、符号化位置情報のペイロード（Ｇｅｏｍｅｔｒｙ＿ｄａｔａ）のシンタックス例を示す図である。符号化位置情報のペイロードは、共通情報と、リーフノード情報とを含む。
【０３４３】
共通情報は、１以上のフレーム結合したデータであり、オキュパンシー符号（ｏｃｃｕｐａｎｃｙ＿Ｃｏｄｅ）等を含む。
【０３４４】
リーフノード情報（ｃｏｍｂｉｎｅ＿ｉｎｆｏｒｍａｔｉｏｎ）は、各リーフノードの情報である。フレーム数のループとして、フレーム毎にリーフノード情報が示されてもよい。
【０３４５】
リーフノードに含まれる点のフレームインデックスを示す方法としては、方法１と方法２とのいずれかを用いることができる。図５９は、方法１の場合のリーフノード情報の例を示す図である。図５９に示すリーフノード情報は、ノードに含まれる点の数を示す三次元点数（ＮｕｍｂｅｒＯｆＰｏｉｎｔｓ）と、点ごとのフレームインデックス（ＦｒａｍｅＩｎｄｅｘ）とを含む。
【０３４６】
図６０は、方法２の場合のリーフノード情報の例を示す図である。図６０に示す例では、リーフノード情報は、ビットマップにより複数の点のフレームインデックを示すビットマップ情報（ｂｉｔｍａｐＩｓＦｒａｍｅＰｏｉｎｔｓＦｌａｇ）を含む。図６１は、ビットマップ情報の例を示す図である。この例では、ビットマップにより、リーフノードがフレームインデックス１と３と５の三次元点を含むことが示される。
【０３４７】
なお、量子化の分解能が低い場合は、同一フレームに重複点が存在する場合がある。この場合、三次元点数（ＮｕｍｂｅｒＯｆＰｏｉｎｔｓ）を共有化し、各フレームの三次元点の数と複数フレームの合計の三次元点の数とが示されてもよい。
【０３４８】
また、不可逆圧縮が用いられる場合、三次元データ符号化装置は、重複点を削除し、情報量を削減してもよい。三次元データ符号化装置は、フレーム結合前に重複点を削除してもよいし、フレーム結合後に重複点を削除してもよい。
【０３４９】
次に、符号化属性情報の構成を説明する。図６２は、符号化属性情報の構成を示す図である。符号化属性情報は、ヘッダとペイロードとを含む。
【０３５０】
図６３は、符号化属性情報のヘッダ（Ａｔｔｒｉｂｕｔｅ＿ｈｅａｄｅｒ）のシンタックス例を示す図である。符号化属性情報のヘッダは、ＡＰＳインデックス（ａｐｓ＿ｉｄｘ）と、オフセット情報（ｏｆｆｓｅｔ）と、その他の情報（ｏｔｈｅｒ＿ａｔｔｒｉｂｕｔｅ＿ｉｎｆｏｒｍａｔｉｏｎ）と、フレーム結合フラグ（ｃｏｍｂｉｎｅ＿ｆｒａｍｅ＿ｆｌａｇ）と、結合フレーム数（ｎｕｍｂｅｒ＿ｏｆ＿ｃｏｍｂｉｎｅ＿ｆｒａｍｅ）とを含む。
【０３５１】
ＡＰＳインデックスは、符号化属性情報に対応するパラメータセット（ＡＰＳ）の識別子（ＩＤ）を示す。ＡＰＳは、１フレーム又は複数のフレームの符号化属性情報のパラメータセットである。なお、１フレーム毎にパラメータセットが存在する場合は、複数のパラメータセットの識別子がヘッダに示されてもよい。
【０３５２】
オフセット情報は、結合データを取得するためのオフセット位置を示す。その他の情報は、属性情報に関するその他の情報（例えば、量子化パラメータの差分値（ＱＰｄｅｌｔａ）など）を示す。フレーム結合フラグは、符号化データがフレーム結合されているか否かを示すフラグである。結合フレーム数は、結合されているフレームの数を示す。
【０３５３】
なお、上記の情報の一部又は全てがＳＰＳ又はＡＰＳに記載されてもよい。
【０３５４】
図６４は、符号化属性情報のペイロード（Ａｔｔｒｉｂｕｔｅ＿ｄａｔａ）のシンタックス例を示す図である。符号化属性情報のペイロードは、リーフノード情報（ｃｏｍｂｉｎｅ＿ｉｎｆｏｒｍａｔｉｏｎ）を含む。例えば、このリーフノード情報の構成は、符号化位置情報のペイロードに含まれるリーフノード情報と同様である。つまり、リーフノード情報（フレームインデックス）は、属性情報に含まれてもよい。
【０３５５】
また、リーフノード情報（フレームインデックス）は、符号化位置情報と符号化属性情報との一方に格納され、他方に格納されてなくてもよい。この場合、符号化位置情報と符号化属性情報との一方に格納されているリーフノード情報（フレームインデックス）が他方の情報の復号時に参照される。また、参照先を示す情報が符号化位置情報又は符号化属性情報に含まれてもよい。
【０３５６】
次に、符号化データの送出順及び復号順の例を説明する。図６５は、符号化データの構成を示す図である。符号化データはヘッダとペイロードとを含む。
【０３５７】
図６６〜図６８は、データの送出順と、データの参照関係を示す図である。同図において、Ｇ（１）等は、符号化位置情報を示し、ＧＰＳ（１）等は、符号化位置情報のパラメータセットを示し、ＳＰＳは、シーケンス（複数フレーム）のパラメータセットを示す。また、（）内の数字はフレームインデックスの値を示す。なお、三次元データ符号化装置は、データを復号順で送出してもよい。
【０３５８】
図６６はフレームを結合しない場合の送出順の例を示す図である。図６７はフレームを結合する場合であって、ＰＣＣフレーム毎にメタデータ（パラメータセット）が付加される場合の例を示す図である。図６８はフレームを結合する場合であって、結合する単位でメタデータ（パラメータセット）が付加される場合の例を示す図である。
【０３５９】
フレーム結合されたデータのヘッダには、当該フレームのメタデータを得るために、参照先のメタデータの識別子が格納される。図６８のように、複数フレーム毎のメタデータをまとめてもよい。フレーム結合された複数のフレームに共通のパラメータは一つにまとめてもよい。フレームに共通でないパラメータは各フレームに対する値を示す。
【０３６０】
フレーム毎の情報（フレームで共通でないパラメータ）とは、例えば、フレームデータの生成時刻、符号化時刻、又は復号時刻などを示すタイムスタンプである。また、フレーム毎の情報は、フレームデータを取得したセンサの情報（センサのスピード、加速度、位置情報、センサの向き、その他のセンサ情報など）を含んでもよい。
【０３６１】
図６９は、図６７に示す例において、一部のフレームを復号する例を示す図である。図６９に示すように、フレーム結合データ内で、フレーム間に依存関係がなければ、三次元データ復号装置は、各データを独立に復号できる。
【０３６２】
点群データが属性情報を有する場合、三次元データ符号化装置は、属性情報をフレーム結合してもよい。属性情報は、位置情報を参照して符号化及び復号される。参照される位置情報は、フレーム結合する前の位置情報であってもよいし、フレーム結合した後の位置情報であってもよい。位置情報の結合フレーム数と属性情報の結合フレーム数とは共通（同じ）であってもよいし、独立していて（異なって）もよい。
【０３６３】
図７０〜図７３は、データの送出順と、データの参照関係を示す図である。図７０及び図７１は、位置情報と属性情報とを共に４フレームで結合する例を示す。図７０では、ＰＣＣフレーム毎にメタデータ（パラメータセット）が付加される。図７１では、結合する単位でメタデータ（パラメータセット）が付加される。同図において、Ａ（１）等は、符号化属性情報を示し、ＡＰＳ（１）等は、符号化属性情報のパラメータセットを示す。また、（）内の数字はフレームインデックスの値を示す。
【０３６４】
図７２は、位置情報を４フレームで結合し、属性情報を結合しない例を示す。図７２に示すように位置情報をフレーム結合し、属性情報をフレーム結合しなくてもよい。
【０３６５】
図７３は、フレーム結合とタイル分割とを組み合わせた例を示す。図７３に示すようにタイル分割を行う場合には、各タイル位置情報のヘッダは、ＧＰＳインデックス（ｇｐｓ＿ｉｄｘ）、及び結合フレーム数（ｎｕｍｂｅｒ＿ｏｆ＿ｃｏｍｂｉｎｅ＿ｆｒａｍｅ）等の情報を含む。また、各タイル位置情報のヘッダは、タイルを識別するためのタイルインデックス（ｔｉｌｅ＿ｉｄｘ）を含む。
【０３６６】
以上のように、本実施の形態に係る三次元データ符号化装置は、図７４に示す処理を行う。まず、三次元データ符号化装置は、第１点群データと第２点群データとを結合することで第３点群データを生成する（Ｓ５４８１）。次に、三次元データ符号化装置は、第３点群データを符号化することで符号化データを生成する（Ｓ５４８２）。また、符号化データは、第３点群データに含まれる複数の三次元点の各々が第１点群データと第２点群データとのいずれに属するかを示す識別情報（例えばフレームインデックス）を含む。
【０３６７】
これによれば、三次元データ符号化装置は、複数の点群データをまとめて符号化することにより符号化効率を向上できる。
【０３６８】
例えば、第１点群データと第２点群データとは、異なる時刻の点群データ（例えばＰＣＣフレーム）である。例えば、第１点群データと第２点群データとは、同一の対象物の異なる時刻の点群データ（例えばＰＣＣフレーム）である。
【０３６９】
符号化データは、第３点群データに含まれる複数の三次元点の各々の位置情報と属性情報とを含み、識別情報は、属性情報に含まれる。
【０３７０】
例えば、符号化データは、第３点群データに含まれる複数の三次元点の各々の位置をＮ（Ｎは２以上の整数）分木を用いて表した位置情報（例えばオキュパンシー符号）を含む。
【０３７１】
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０３７２】
また、本実施の形態に係る三次元データ復号装置は、図７５に示す処理を行う。まず、三次元データ復号装置は、符号化データを復号することで、第１点群データと第２点群データとが結合されることで生成された第３点群データと、第３点群データに含まれる複数の三次元点の各々が第１点群データと第２点群データとのいずれに属するかを示す識別情報とを取得する（Ｓ５４９１）。次に、三次元データ復号装置は、識別情報を用いて、第３点群データから第１点群データと第２点群データとを分離する（Ｓ５４９２）。
【０３７３】
これによれば、三次元データ復号装置は、複数の点群データをまとめて符号化することにより符号化効率を向上した符号化データを復号できる。
【０３７４】
例えば、第１点群データと第２点群データとは、異なる時刻の点群データ（例えばＰＣＣフレーム）である。例えば、第１点群データと第２点群データとは、同一の対象物の異なる時刻の点群データ（例えばＰＣＣフレーム）である。
【０３７５】
符号化データは、第３点群データに含まれる複数の三次元点の各々の位置情報と属性情報とを含み、識別情報は、属性情報に含まれる。
【０３７６】
例えば、符号化データは、第３点群データに含まれる複数の三次元点の各々の位置をＮ（Ｎは２以上の整数）分木を用いて表した位置情報（例えばオキュパンシー符号）を含む。
【０３７７】
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０３７８】
（実施の形態６）
上記では、リーフノードにある点のフレームインデックス情報を示す方法を説明した。フレームインデックス情報を示す方法として、上記では、ノードに含まれる点の数と、点ごとのフレームインデックスの値とをそれぞれ示す方法と、ビットマップで示す方法などを説明した。
【０３７９】
以下では、さらに符号化率の向上を期待できる三次元データ符号化方法について説明する。以下で説明する三次元データ符号化方法を用いることにより、算術符号化後の符号化データ（符号化データのビット数）を削減できる可能性があり、フレーム結合による符号化効率向上の効果を高めることが可能となる。
【０３８０】
図７６は、本実施の形態に係る符号化部のブロック図である。具体的には、図７６は、フレームインデックスの値（以下、単にフレームインデックスともいう）を符号化する符号化部を示すブロック図である。本実施の形態に係る三次元データ符号化装置が備える符号化部は、位置情報符号化部５５１０と、属性情報符号化部５５２０と、を有する。位置情報符号化部５５１０は、フレームインデックス生成部５５１１と、エントロピー符号化部５５１２と、を備える。
【０３８１】
フレームインデックス生成部５５１１は、三次元点の位置情報のフレームインデックス（複数のフレーム（三次元データ）のいずれに属するかを示す値である識別子）を決定して変換する。
【０３８２】
エントロピー符号化部５５１２は、フレームインデックス生成部５５１１で変換したフレームインデックスをエントロピー符号化する。エントロピー符号化部５５１２は、符号化したフレームインデックスを含む符号化データを含むビットストリームを生成して出力する。より具体的には、エントロピー符号化部５５１２は、符号化したフレームインデックス及び符号化した位置情報を含む符号化データを含む位置情報ビットストリームを出力する。
【０３８３】
属性情報符号化部５５２０は、フレームインデックス生成部５５２１と、エントロピー符号化部５５２２と、を備える。
【０３８４】
フレームインデックス生成部５５２１は、属性情報のフレームインデックスを決定して変換する。
【０３８５】
エントロピー符号化部５５２２は、フレームインデックス生成部５５２１で変換したフレームインデックスをエントロピー符号化する。エントロピー符号化部５５２２は、符号化したフレームインデックスを含む符号化データを含むビットストリームを出力する。より具体的には、エントロピー符号化部５５２２は、符号化したフレームインデックス及び符号化した属性情報を含む符号化データを含む属性情報ビットストリームを出力する。
【０３８６】
図７７は、実施の形態６に係るフレームインデックス生成部５５１１のブロック図である。
【０３８７】
フレームインデックス生成部５５１１は、フレーム結合部５５５０と、フレームインデックス符号化部５５６０と、結合データ生成部５５７０と、を備える。
【０３８８】
フレーム結合部５５５０は、複数のフレームを取得し、取得した複数のフレームを結合することで結合三次元データを生成する。具体的には、フレーム結合部５５５０は、複数のフレームのそれぞれにフレームインデックスを紐づけたフレームデータ、言い換えると、フレームインデックスを含む結合三次元データを生成する。フレーム結合部５５５０は、フレームの結合数を示す情報（以下、結合数ともいう）と、リーフノードに存在する重複するポイントの数を示す情報（以下、重複点数ともいう）と、フレームインデックスの値を含むフレームデータ（以下、結合三次元データともいう）と、を出力する。
【０３８９】
なお、リーフノードに存在する重複するポイントとは、リーフノードに存在する三次元点を示し、同じ単位空間に含まれる三次元点を示す。
【０３９０】
フレームインデックス符号化部５５６０は、フレーム結合部５５５０が出力した、結合数と、重複点数と、フレームインデックスを含むフレームデータと、を取得する。フレームインデックス符号化部５５６０は、フレームインデックスを予め定められた方法を用いて０又は正の整数で表される数値であるランク（ランキング又は変換符号ともいう）に変換する。例えば、フレームインデックス符号化部５５６０は、複数の三次元データが結合された結合三次元データにおける、リーフノード（単位空間）に含まれる三次元点が当該複数の三次元データのいずれに属するかを示すビットマップを生成する。ビットマップは、０と１とで表されるデジタルデータである。ビットマップと、変換符号及び単位空間に含まれる三次元点の数とは、１対１対応である。フレームインデックス符号化部５５６０は、例えば、後述するルックアップテーブルを用いて、生成したビットマップをランクに変換、言い換えると、生成したビットマップからランクを生成する。フレームインデックス符号化部５５６０は、ランクのビット数（ランクビットともいう）と、ランクとを結合データ生成部５５７０に出力する。
【０３９１】
結合データ生成部５５７０は、取得したランクのビット数に応じたサイズのランクとフレームデータとを結合した結合データを生成する。
【０３９２】
なお、上記したフレームインデックスに係る処理は、位置情報符号化部５５１０が実行してもよいし、属性情報符号化部５５２０が実行してもよく、いずれか一方が実行すればよい。つまり、フレーム結合部５５５０、フレームインデックス符号化部５５６０、及び、結合データ生成部５５７０は、フレームインデックス生成部５５２１が備えてもよい。
【０３９３】
図７８は、実施の形態６に係る復号部のブロック図である。具体的には、図７８は、本実施の形態に係る三次元データ復号装置が備える、符号化されたフレームインデックスを復号して取得する復号部を示すブロック図である。復号部は、位置情報復号部５５３０と、属性情報復号部５５４０と、を備える。
【０３９４】
位置情報復号部５５３０は、エントロピー復号部５５３１と、フレームインデックス取得部５５３２と、を備える。
【０３９５】
エントロピー復号部５５３１は、エントロピー符号化部５５１２がエントロピー符号化した符号化データ（結合数と、重複点数と、結合データとを含む符号化データ）を含むビットストリーム（より具体的には、位置情報ビットストリーム）を取得して、当該符号化データを復号する。
【０３９６】
フレームインデックス取得部５５３２は、エントロピー復号部５５３１が復号した符号化データからフレームインデックスを取得する。
【０３９７】
属性情報復号部５５４０は、エントロピー復号部５５４１と、フレームインデックス取得部５５４２と、を備える。
【０３９８】
エントロピー復号部５５４１は、エントロピー符号化部５５２２がエントロピー符号化した符号化データ（結合数と、重複点数と、結合データとを含む符号化データ）を含むビットストリーム（より具体的には、属性情報ビットストリーム）を取得して、当該符号化データを復号する。
【０３９９】
フレームインデックス取得部５５４２は、エントロピー復号部５５４１が復号した符号化データに含まれるフレームインデックスを取得する。
【０４００】
図７９は、実施の形態６に係るフレームインデックス取得部５５３２のブロック図である。
【０４０１】
フレームインデックス取得部５５３２は、予め定められた方法を用いてフレームインデックスを取得する。具体的には、フレームインデックス取得部５５３２は、フレーム結合部５５５０及びフレームインデックス符号化部５５６０から取得した、結合数と、重複点数と、ランクを含む結合データとから、予め定められた方法を用いてフレームインデックスを取得する。フレームインデックス取得部５５３２は、フレームインデックスの値を含むデータであるフレームデータを出力する。
【０４０２】
なお、上記したフレームインデックスに係る処理は、位置情報復号部５５３０が実行してもよいし、属性情報復号部５５４０が実行してもよく、いずれか一方が実行すればよい。つまり、フレームインデックス取得部５５３２が実行する処理は、フレームインデックス取得部５５４２が実行してもよい。
【０４０３】
続いて、ビットマップからランクを取得するためのルックアップテーブル（ＬＵＴ）について説明する。
【０４０４】
図８０は、実施の形態６に係るフレームインデックス符号化部５５６０のブロック図である。
【０４０５】
フレームインデックス符号化部５５６０は、個別情報（各フレームの個別情報）を生成し、符号化する。
【０４０６】
フレームインデックス符号化部５５６０は、ビットマップ生成部５５６１と、ルックアップテーブル参照部５５６２と、ビット数取得部５５６３と、を備える。
【０４０７】
まず、ビットマップ生成部５５６１は、結合数と、重複点数と、ポイント（三次元点）毎のフレームインデックスとに基づき、ビットマップを生成する。結合数は、例えば、上記したフレーム結合における符号化単位の方法を用いて決定する。また、ビットマップ生成部５５６１は、ツリー構造の分割において、リーフノード毎に存在する重複点数をカウントするとともに、重複する点に紐づくフレームインデックスに基づいて、例えば、図８１に示す方法でビットマップに変換する。
【０４０８】
図８１は、実施の形態６に係るリーフノード及びビットマップの一例を示す図である。
【０４０９】
例えば、フレームインデックスの値が１と３と５との三次元点を含むことをビットマップで示すとする。
【０４１０】
例えば、ビットマップ生成部５５６１は、図８１の（ａ）に示すリーフノードを示す情報（言い換えると、フレームインデックスの値が１と３と５との三次元点を含むことを示す情報）を取得したとする。この場合、ビットマップ生成部５５６１は、図８１の（ｂ）に示すビットマップを生成する。
【０４１１】
次に、ルックアップテーブル参照部５５６２は、ビットマップを所定のルックアップテーブルを用いてランクに変換する。言い換えると、ルックアップテーブル参照部５５６２は、ルックアップテーブルを用いてビットマップからランクを生成する。ルックアップテーブルは、ビットマップの値とランクとの対応関係を示すテーブルである。ルックアップテーブル参照部５５６２は、例えば、ルックアップテーブルを記憶しているメモリを有する。
【０４１２】
図８２は、実施の形態６に係るランクの一例を示す図である。
【０４１３】
ランクとは、ビットマップを、図８２に示すビットマップに含まれる１の数ではＮで示す毎に分類し、分類したグループ内でのインデックス又は順序を示す数値である。
【０４１４】
図８３は、実施の形態６に係るルックアップテーブル参照部５５６２が用いるルックアップテーブルの一例を示す図である。具体的には、図８３は、ビットマップをランクに変換する際のルックアップテーブルを示す図である。
【０４１５】
例えば、Ｎｏ．０〜Ｎｏ．７の中で、ビットマップに含まれる１の数が１つであるのは、Ｎｏ．１、Ｎｏ．２、及び、Ｎｏ．４である。また、ランクは、順に０、１、２となる。
【０４１６】
なお、図８３は、ビットマップが８ビットの場合におけるルックアップテーブルを例示しており、結合数が８以下に対応するテーブルである。結合数が８より小さい場合は、図８３に示すルックアップテーブルの一部を用いてもよく、フレームの結合数が８より大きい場合には、同様の方法でルックアップテーブルを拡張してもよい。例えば、ルックアップテーブルには、ビットマップとランクとの対応関係を示す情報が含まれていればよく、ビットマップと重複点数との対応関係を示す情報が含まれていなくてもよい。
【０４１７】
ビット数取得部５５６３は、結合数及び重複点数から、ランクのビット数を取得する。なお、ランクの最大数から決定されるランクの所要ビット数（ランクを２進数で表現するために必要とされるビット数）は、結合数及び重複点数から一意に決まる数である。三次元データ符号化装置は、ビット数取得部５５６３でランクのビット数を示す情報（ランク情報）を生成し、図示しないビット数取得部５５６３の後段にて算出符号化する。
【０４１８】
なお、ビット数取得部５５６３は、ランクの値が０の場合には、ランク情報を送らないとしてもよい。また、ビット数取得部５５６３では、ランクが０ではない場合、ランク−１の値を符号化するとしてもよい。或いは、ビット数取得部５５６３は、ランクが０ではない場合、ランク−１の値をランク情報として出力してもよい。
【０４１９】
なお、ルックアップテーブルは、予め三次元データ符号化装置が保持していてもよいし、例えば、ルックアップテーブル参照部５５６２が所定の計算式を用いて都度算出してもよい。
【０４２０】
また、最大の結合数を予め定め、最大の結合数に対応するルックアップテーブルを三次元データ符号化装置と三次元データ復号装置との双方で保持し、結合数が最大より小さい場合でも同一のルックアップテーブルを用いてもよい。
【０４２１】
また、三次元データ復号装置は、三次元データ符号化装置が保持するルックアップテーブルに対応するルックアップテーブルを予め保持していてもよい。或いは、三次元データ復号装置は、ビットマップとランクとの対応関係が互いに異なるルックアップテーブルを保持していてもよい。この場合、例えば、三次元データ符号化装置は、ルックアップテーブルの種類に関する付加情報（メタデータ）を送出してもよい。また、この場合、三次元データ復号装置は、付加情報に基づいて復号に用いるルックアップテーブルの種類を判定してもよい。
【０４２２】
続いて、フレームインデックスの符号化処理について説明する。
【０４２３】
図８４は、実施の形態６に係る符号化処理のフローチャートである。
【０４２４】
まず、三次元データ符号化装置は、複数のフレームで共通の情報である共通情報（フレーム共通情報）を生成する（Ｓ５５０１）。共通情報は、複数のフレームに共通の情報であり、例えば、オキュパンシー符号、及び、結合数等を含む情報である。
【０４２５】
次に、三次元データ符号化装置は、複数のフレーム毎に個別の情報である個別情報（フレーム個別情報）を生成する（Ｓ５５０２）。個別情報は、複数のフレームごとに個別に対応付けられた情報であり、例えば、重複点数、及び、リーフノードにおけるフレームインデックス等を含む情報である。
【０４２６】
次に、三次元データ符号化装置は、共通情報と個別情報とを結合し、符号化データを生成する（Ｓ５５０３）。
【０４２７】
次に、三次元データ符号化装置は、フレーム結合に係る付加情報を生成し、符号化する（Ｓ５５０４）。
【０４２８】
図８５は、実施の形態６に係る符号化データの生成処理のフローチャートである。具体的には、図８４に示すステップＳ５５０２及びステップＳ５５０３の詳細を示すフローチャートである。
【０４２９】
まず、三次元データ符号化装置は、重複点数及びフレームインデックスを示すビットマップを生成する（Ｓ５５１１）。
【０４３０】
次に、三次元データ符号化装置は、予め定められた方法を用いてランクを取得する（Ｓ５５１２）。本実施の形態では、三次元データ符号化装置は、ルックアップテーブルを用いて、ビットマップをランクに変換することで取得する。
【０４３１】
次に、三次元データ符号化装置は、符号化する必要があるランクのビット数を取得する（Ｓ５５１３）。
【０４３２】
次に、三次元データ符号化装置は、オキュパンシー符号、結合数、重複点数、及び、ランクを符号化する（Ｓ５５１４）。つまり、三次元データ符号化装置は、符号化したオキュパンシー符号、結合数、重複点数、及び、ランクを含む符号化データを生成する。
【０４３３】
図８６は、実施の形態６に係る結合情報（結合数を示す情報）のシンタックス例を示す図である。
【０４３４】
ランクのビット数は、重複点数と結合数とにより決定される。例えば、結合数が８、つまり、８つのフレームを結合した結合データ（結合三次元データ）の場合に、重複点数が７のとき、ランクのビット数の最大値は、８となる。
【０４３５】
三次元データ復号装置では、ランクのビット数を取得するために重複点数が必要である。そのため、三次元データ符号化装置は、重複点数、ランクの順に記述する（データをビットストリームに含める）としてもよい。
【０４３６】
続いて、三次元データ復号装置がランクからビットマップを取得するルックアップテーブルについて説明する。
【０４３７】
図８７は、実施の形態６に係るフレームインデックス取得部５５３２のブロック図である。
【０４３８】
フレームインデックス取得部５５３２は、個別情報を復号する。
【０４３９】
フレームインデックス取得部５５３２は、ビット数取得部５５８１と、ランク取得部５５８２と、ルックアップテーブル参照部５５８３と、フレーム分割部５５８４と、を備える。
【０４４０】
ビット数取得部５５８１は、符号化データに含まれる符号化された付加情報から結合数を復号し、さらに、符号化データから、リーフノード毎の重複点数を抽出する。次に、ビット数取得部５５８１は、結合数及び重複点数から、ランクのビット数を取得する。
【０４４１】
なお、ランクの最大数及びランクの所要ビット数は、結合数及び重複点数から一意に決まる数である。また、ビット数取得部５５８１の処理は、符号化における処理（より具体的には、ビット数取得部５５６３の処理）を同じである。
【０４４２】
ランク取得部５５８２は、ビット数取得部５５８１が復号した各種データから、上記で取得したビット数分のランクを取得する。
【０４４３】
ルックアップテーブル参照部５５８３は、リーフノードの重複点数及びランクから所定のルックアップテーブルを用いてビットマップを取得する。
【０４４４】
図８８は、実施の形態６に係るルックアップテーブル参照部５５８３が用いるルックアップテーブルの一例を示す図である。
【０４４５】
図８８に示すルックアップテーブルは、例えば、三次元データ符号化装置が用いたルックアップテーブルに対応するテーブルである。より具体的には、図８８に示すルックアップテーブルは、ルックアップテーブル参照部５５６２が用いたルックアップテーブルと同じルックアップテーブルである。ルックアップテーブル参照部５５８３は、例えば、図８８に示すルックアップテーブルを用いてビットマップから結合三次元データにおける重複する三次元点のフレームインデックスを取得する。
【０４４６】
三次元データ復号装置は、このように取得された所望のフレームインデックスのデータを用いて結合三次元データから複数の三次元データを再構成する。
【０４４７】
なお、ルックアップテーブルにおけるインデックスの数は、三次元データ符号化装置のルックアップテーブルと三次元データ復号装置のルックアップテーブルとで異なる可能性がある。例えば、三次元データ符号化装置は、１ビットから８ビットまで対応できるように、８つの互いに異なるルックアップテーブルを記憶していてもよい。この場合、三次元データ復号装置は、１ビットから４ビットまで対応できるように、８つの互いに異なるルックアップテーブルを記憶していてもよい。これにより、三次元データ復号装置のルックアップテーブルの数を少なくできる可能性がある。
【０４４８】
フレーム分割部５５８４は、フレームインデックスに基づいて結合データを複数のフレームデータに分割したフレームデータを生成して出力する。
【０４４９】
続いて、符号化されたフレームインデックスの復号処理について説明する。
【０４５０】
図８９は、実施の形態６に係るフレームインデックスの復号処理のフローチャートである。
【０４５１】
まず、三次元データ復号装置は、共通情報及び個別情報を復号して取得する（Ｓ５５２１）。
【０４５２】
次に、三次元データ復号装置は、単一のフレームを復号するか否かを判定する（Ｓ５５２２）。例えば、三次元データ復号装置は、単一のフレームを復号するか、任意の複数のフレームを復号するかを判定する。
【０４５３】
三次元データ復号装置は、単一のフレームを復号すると判定した場合（Ｓ５５２２でＹｅｓ）、指定されたフレームインデックス（つまり、上記単一のフレームインデックス）に対応付けられた個別情報を抽出し、復号する（Ｓ５５２３）。
【０４５４】
一方、三次元データ復号装置は、単一のフレームを復号しない、つまり、複数のフレームを復号すると判定した場合（Ｓ５５２２でＮｏ）、複数のフレームインデックスに対応するそれぞれの個別情報を抽出し、復号する（Ｓ５５２４）。
【０４５５】
次に、三次元データ復号装置は、フレームインデックスに基づきデータを分割する（Ｓ５５２５）。つまり、三次元データ復号装置は、複数の三次元データからなる結合三次元データを復号する場合（Ｓ５５２２でＮｏ）、ステップＳ５５２５では、結合三次元データをフレームインデックスに基づいて複数のフレームに分割する。
【０４５６】
図９０は、実施の形態６に係る共通情報及び個別情報の復号処理のフローチャートである。具体的には、図９０は、図８９に示すステップＳ５５２１の詳細を示すフローチャートである。
【０４５７】
まず、三次元データ復号装置は、符号化データを復号することで、取得した符号化された結合数及び取得した符号化された重複点数を復号する（Ｓ５５３１）。
【０４５８】
次に、三次元データ復号装置は、予め定められた方法を用いてランクのビット数を取得する（Ｓ５５３２）。
【０４５９】
次に、三次元データ復号装置は、ランクを取得する（Ｓ５５３３）。
【０４６０】
次に、三次元データ復号装置は、予め定められた方法を用いてビットマップを取得する（Ｓ５５３４）。本実施の形態では、三次元データ復号装置は、ルックアップテーブルを用いてランクをビットマップに変換することで、ビットマップを取得する。
【０４６１】
次に、三次元データ復号装置は、ビットマップを用いてフレームインデックスを取得する（Ｓ５５３５）。
【０４６２】
続いて、重複点数の決定方法について説明する。
【０４６３】
リーフノードにおいて、三次元点が重複するケースは、元々１フレームのリーフノードに２以上の三次元点がある場合と、フレーム結合により結合された結合三次元データのリーフノードにフレームインデックスの異なる２以上の三次元点がある場合がある。
【０４６４】
フレーム結合を適用する場合の上記の重複点を示す方法及び符号化の制約について説明する。
【０４６５】
図９１は、実施の形態６に係るリーフノードのシンタックスの第１例を示す図である。具体的には、図９１は、１フレーム内の重複点数と、フレーム結合による複数のフレームの重複点数とを同じフィールドを用いて示す場合のシンタックス例である。
【０４６６】
三次元データ符号化装置は、リーフノード毎の重複点数を示すフィールドについて、例えば、１とし、「１フレーム内に重複点がない」かつ「２以上のフレーム結合をする場合」、又は、「１フレーム内に重複点がある場合」かつ「フレーム結合をしない場合」に限り、重複点数を算出してもよい。また、例えば、三次元データ符号化装置は、２フレーム以上フレーム結合する場合において、１フレーム内に重複点がある場合は、１フレーム内の重複点は削除し、１つにしてもよい。或いは、例えば、三次元データ符号化装置は、１フレーム内に重複点がある場合は、当該１フレームを用いたフレーム結合をしなくてもよい。
【０４６７】
図９２は、実施の形態６に係るリーフノードのシンタックスの第２例を示す図である。具体的には、図９２は、１フレーム内の重複点と、フレーム結合による複数のフレームの重複点数とを別のフィールドを用いて示す場合のシンタックス例である。
【０４６８】
図９２に示すように、三次元データ符号化装置は、「フレーム結合をしない」かつ「１フレーム内に重複点がある」場合には、１フレーム内の重複点を示し、「フレーム結合をする」場合には、フレーム結合による重複点を示し、さらに、「１フレーム内に重複点がある」場合には、フレーム毎の重複点数を示してもよい。
【０４６９】
図９３は、実施の形態６に係る位置情報のシンタックスの第１例を示す図である。
【０４７０】
図９３に示すように、リーフノードの情報は、フレーム数のループとして、フレーム毎にリーフノードの情報を示すとしてもよい。
【０４７１】
続いて、ノード情報について説明する。
【０４７２】
Ｏｃｔｒｅｅ分割などのツリー分割において、最下位層のリーフノードまで分割せず、リーフノードの情報の代わりに、分割した深さのノードの情報を示す方法がある。ノード情報としては、例えば、ノードに属する三次元点毎の座標、つまり、ボクセルの位置を直接示す情報がある。この場合、ノード情報は、図９４に示すｄｉｒｅｃｔｆｌａｇによって制御される。
【０４７３】
続いて、上記ｄｉｒｅｃｔｆｌａｇを用いた方法とフレーム結合とを適用する場合のシグナリング方法及び符号化の制約について説明する。
【０４７４】
図９４は、実施の形態６に係る位置情報のシンタックスの第２例を示す図である。
【０４７５】
図９４に示すように、三次元データ符号化装置は、フレームの結合数が１より大きい場合、つまり、複数のフレームをフレーム結合する場合には、ｄｉｒｅｃｔｆｌａｇを０とし、上記方法を適用しなくてもよい。
【０４７６】
一方、例えば、三次元データ符号化装置は、フレームの結合数が１の場合は、ｄｉｒｅｃｔｆｌａｇを１としてもよい。
【０４７７】
これにより、三次元データ符号化装置は、フレーム結合の際に、フレームの結合数が１より大きい場合、つまり、複数のフレームをフレーム結合する場合には、ｄｉｒｅｃｔｆｌａｇを０としてｄｉｒｅｃｔｆｌａｇを利用した方法を用いないことにより、フレーム結合の効果をさらに向上できる可能性がある。
【０４７８】
また、ｄｉｒｅｃｔｆｌａｇ及び結合数は、例えば、ＧＰＳ（Ｇｅｏｍｅｔｒｙ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）に格納される。
【０４７９】
以上のように、本実施の形態に係る三次元データ符号化装置は、図９５に示す処理を行う。
【０４８０】
図９５は、実施の形態６に係る符号化処理のフローチャートである。
【０４８１】
まず、三次元データ符号化装置は、複数の三次元データ（フレーム）が結合された結合三次元データにおける、単位空間に含まれる三次元点が複数の三次元データのいずれに属するかを示すビットマップを生成する（Ｓ５５４１）。三次元データ符号化装置は、例えば、結合三次元データにおける、リーフノードに含まれる三次元点が複数の三次元データのいずれに属するかを示すビットマップを生成する。
【０４８２】
ビットマップは、例えば、結合された複数の三次元データの数の桁数であり、０又は１で表された数列を示す情報（マップ情報）である。例えば、第１三次元データから第８三次元データまでの８つの三次元データが結合された結合三次元データの場合、ビットマップは、８桁である。ビットマップの各桁は、第１三次元データから第８三次元データまでのいずれかに個別に対応付けられている。
【０４８３】
例えば、所定の単位空間に第１三次元データに属する三次元点と第２三次元データに属する三次元点とが位置し、第３三次元データから第８三次元データまでのいずれかの三次元データに属する三次元点が当該所定の単位空間に含まれていない場合、三次元データ符号化装置は、「００００００１１」というビットマップを生成する。
【０４８４】
或いは、例えば、所定の単位空間に第１三次元データに属する三次元点と第５三次元データに属する三次元点と第７三次元データに属する三次元点とが位置し、第２三次元データ、第３三次元データ、第４三次元データ、第６三次元データ、及び、第８三次元データまでのいずれかの三次元データに属する三次元点が当該所定の単位空間に含まれていない場合、三次元データ符号化装置は、「０１０５０００１」というビットマップを生成する。
【０４８５】
なお、三次元データ符号化装置は、ステップＳ５５５１を実行する前に、複数の三次元データを結合した結合三次元データを生成してもよい。三次元データ符号化装置が結合する三次元データの数は、特に限定されない。
【０４８６】
次に、三次元データ符号化装置は、ビットマップを用いて変換符号を生成する（Ｓ５５４２）。変換符号は、上記したランクを示す値である。三次元データ符号化装置は、例えば、ルックアップテーブルを用いて、ビットマップからランクを生成する。
【０４８７】
ルックアップテーブルは、ビットマップの値と変換符号との対応関係を示すテーブルである。ビットマップの値の各々と、変換符号及び単位空間に含まれる三次元点の数の組み合わせの各々とは、対応している。例えば、図８３に示すように、三次元データ符号化装置は、ビットマップが「０００００００１」である場合、ランク（つまり、変換符号）を０として生成する。また、ルックアップテーブルにおいて、ランクが０であり、且つ、単位空間に含まれる三次元点の数（図８３に示す重複点数）が１である組み合わせに対応するビットマップは、「０００００００１」である。このように、ルックアップテーブルにおいて、ランクと単位空間に含まれる三次元点の数と組み合わせに対応するビットマップは、１つ存在する。例えば、ルックアップテーブルでは、ビットマップの値の各々と、変換符号及び単位空間に含まれる三次元点の数の組み合わせの各々とは、１体１で対応している。
【０４８８】
次に、三次元データ符号化装置は、単位空間に含まれる三次元点の数を示す重複点情報と、変換符号を示す変換符号情報とを含む符号化データを生成する（Ｓ５５４３）。なお、本実施の形態では、ビットマップの生成及び変換符号の生成を符号化ともいう。
【０４８９】
また、上記した通り、ビットマップの値の各々と、変換符号及び単位空間に含まれる三次元点の数の組み合わせの各々とは、対応している。
【０４９０】
これによれば、例えば、ルックアップテーブルを用いるなどしてビットマップをランクに変換するために、符号化データにビットマップの値をそのまま含める場合と比較して、符号化データのデータ量を削減できる。
【０４９１】
また、例えば、符号化データは、三次元点の位置情報と属性情報とを含み、変換符号情報と重複点情報とは、位置情報に含まれる。三次元データ符号化装置は、位置情報を含む位置情報ビットストリームと、属性情報を含む属性情報ビットストリームとをビットストリームとして生成する。変換符号情報と、重複点情報とは、位置情報ビットストリームに含まれる。
【０４９２】
また、例えば、符号化データは、さらに、結合三次元データにおいて結合されている複数の三次元データの数を示すデータ数情報を含む。
【０４９３】
また、例えば、変換符号は、０又は正の整数である。三次元データ符号化装置は、例えば、変換符号が０でない場合には、変換符号から１を引いた数である変換符号情報を含む符号化データを生成する。一方、三次元データ符号化装置は、例えば、変換符号が０の場合には、変換符号情報を含まない符号化データを生成する。
【０４９４】
これによれば、変換符号が０の場合には、符号化データに変換符号を含めないため、符号化データのデータ量をさらに削減できる。
【０４９５】
また、例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０４９６】
また、本実施の形態に係る三次元データ復号装置は、図９６に示す処理を行う。
【０４９７】
図９６は、実施の形態６に係る復号処理のフローチャートである。
【０４９８】
まず、三次元データ復号装置は、符号化データを復号することで、複数の三次元データが結合されることで生成された結合三次元データにおける、単位空間に含まれる三次元点の数を示す重複点情報と、変換符号を示す変換符号情報とを取得する（Ｓ５５５１）。例えば、三次元データ復号装置は、符号化データを含むビットストリームを取得し、取得したビットストリームに含まれる符号化データを復号する。
【０４９９】
次に、三次元データ復号装置は、重複点情報と、変換符号情報とを用いて、単位空間に含まれる三次元点が複数の三次元データのいずれに属するかを示すビットマップを生成する（Ｓ５５５２）。
【０５００】
次に、三次元データ復号装置は、ビットマップを用いて、単位空間に含まれる三次元点が複数の三次元データのいずれに属するかを判定する（Ｓ５５５３）。つまり、三次元データ復号装置は、ビットマップから上記したフレームインデックスを取得する。
【０５０１】
例えば、次に、三次元データ復号装置は、取得したフレームインデックスを用いて、結合三次元データを複数の三次元データに分割する。
【０５０２】
また、上記した通り、ビットマップの値の各々と、変換符号及び単位空間に含まれる三次元点の数の組み合わせの各々とは、対応している。
【０５０３】
これによれば、例えば、ルックアップテーブルなどを用いてランクからビットマップを生成して、生成したビットマップからフレームインデックスを取得できる。つまり、単位空間含まれる三次元点の数と変換符号とから、複数の三次元データと結合三次元データにおける三次元点との対応関係を示すビットマップを適切に取得できる。また、ビットマップよりデータ量が少ないランクを用いて、結合三次元データに含まれる複数の三次元データを分割できる。これにより、符号化データのデータ量を削減しつつ、且つ、適切に結合三次元データを結合前の複数の三次元データに分割できる。
【０５０４】
また、例えば、符号化データは、三次元点の位置情報と属性情報とを含み、変換符号情報と重複点情報とは、位置情報に含まれる。
【０５０５】
また、例えば、符号化データは、さらに、結合三次元データにおいて結合されている複数の三次元データの数を示すデータ数情報を含む。
【０５０６】
また、例えば、変換符号は、０又は正の整数である。三次元データ復号装置は、例えば、符号化データに変換符号情報が含まれている場合には、変換符号情報に１を足した数を変換符号として取得する。一方、三次元データ復号装置は、例えば、符号化データに変換符号情報が含まれていない場合には、０を変換符号として取得する。
【０５０７】
また、例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０５０８】
（実施の形態７）
本実施の形態では、結合フレームにおいて重複点をサポートする方法について説明する。結合フレームを用いることで連続する複数のフレームをまとめて符号化できる。これにより、点群データの密度を高めることができる。また、オキュパンシー符号における８分木の上位レベルの占有状態を共有できるので、符号化効率を向上できる。また、ビットマップ符号、又は、ランク符号パターンを用いて、各ノードが属するフレームが示される。
【０５０９】
結合フレームを用いる場合、結合前の一つのフレームに重複点が含まれる場合に問題が発生する。つまり、重複点が属するフレームを識別する方法が必要である。例えば、三次元データの符号化及び復号では、重複点の数はパラメータｎｕｍ＿ｐｏｉｎｔ示される。例えば、ｎｕｍ＿ｐｏｉｎｔの値が３である場合、そのフレーム内に同じ位置情報を持つ３つの点が存在することが示される。上記の問題を解決する手法について以下詳細に説明する。
【０５１０】
図９７は、フレーム結合時の重複点の例を示す図である。同図は、フレーム０とフレーム１とをフレーム結合した例を示す。
【０５１１】
結合前のフレーム内のリーフノードに２個以上の三次元点が存在する場合、それらをフレーム内重複点（ｉｎｔｅｒｎａｌ  ｄｕｐｌｉｃａｔｅｄ  ｐｏｉｎｔ）と呼ぶ。フレーム結合によってリーフノード内に生成される重複点をフレーム間重複点（ｆｒａｍｅ  ｄｕｐｌｉｃａｔｅｄ  ｐｏｉｎｔ）と呼ぶ。また、同一リーフノード内にフレーム内重複点とフレーム間重複点とが混在する場合がある。
【０５１２】
複数のフレームが結合されると、空のリーフノードは符号化されない。また、フレーム０又はフレーム１からの少なくとも一つの点を含むリーフノードを全て符号化する必要がある。重複点を含むリーフノードに対して、他のフレームからのノードと同様の方法で重複点の最大数を符号化する必要がある。
【０５１３】
次に、ビットマップ符号化パターンを用いて重複点を示す場合のシンタックス例を説明する。図９８は、ビットストリームに含まれるヘッダのシンタックス例を示す図である。図９８に示すヘッダは、単一点情報（ｓｉｎｇｌｅ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆ）と、結合フレーム数（ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ）とを含む。
【０５１４】
単一点情報（ｓｉｎｇｌｅ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆ）は、８分木の各リーフノードが１個の点を含むか否か（複数の点を含まないか否か）を示す情報である。例えば、値１は各リーフノードが１個の点を持つことを示し、値０は各リーフノードが１個以上の点を持つことを示す。
【０５１５】
三次元データ符号化装置は、ｓｉｎｇｌｅ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆをヘッダに付加せずに、規格、又は規格のプロファイル或いはレベル等により、８分木の各リーフノードが１個の点を含むか否かが規定されてもよい。これにより、三次元データ復号装置は、規格情報を参照して、８分木の各リーフノードが１個の点を含むか否かを判定してビットストリームを正しく復元できる。
【０５１６】
結合フレーム数（ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ）は、フレーム結合するフレームの枚数を示す。
【０５１７】
図９９は、８分木に含まれる各ノードの情報であるノード情報（ｎｏｄｅ（ｄｅｐｔｈ、ｉｎｄｅｘ））のシンタックス例を示す図である。ノード情報は、オキュパンシー符号（ｏｃｃｕｐａｎｃｙ＿ｃｏｄｅ）と、三次元点数（ｎｕｍ＿ｐｏｉｎｔ）と、ビットマップ情報（ｃｏｍｂｉｎｅ＿ｂｉｔ）とを含む。
【０５１８】
オキュパンシー符号（ｏｃｃｕｐａｎｃｙ＿ｃｏｄｅ）は、ノードが持つ子ノードが占有状態（三次元点を含む）であるか否かを示す。８分木の場合、ｏｃｃｕｐａｎｃｙ＿ｃｏｄｅは８ビットで表され、各ビットは８個の子ノードがそれぞれ占有状態か否かを示す。
【０５１９】
また、ノードが木構造の最下層より１つ上の階層に属するかによってノードの子ノードがリーフノードか否かが判定される。これにより、子ノードがリーフノードか否かを示すフラグを符号化する必要がなくなり、ヘッダの符号量を削減できる。
【０５２０】
点を含むリーフノードの数を示すｎｕｍ＿ｌｅａｆは、ｏｃｃｕｐａｎｃｙ＿ｃｏｄｅから算出されてもよい。例えば、８分木でｏｃｃｕｐａｎｃｙ＿ｃｏｄｅ＝３の場合、ｎｕｍ＿ｌｅａｆ＝２と算出される。
【０５２１】
三次元点数（ｎｕｍ＿ｐｏｉｎｔ）は、リーフノードに含まれる三次元点の数を示す。ｓｉｎｇｌｅ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆ＝＝０の場合に、ｎｕｍ＿ｐｏｉｎｔが符号化される。なお、三次元データ符号化装置は、フレーム結合を行う場合は、リーフノード内の各フレームのフレーム内重複点の最大値をｎｕｍ＿ｐｏｉｎｔの値として符号化してもよい。例えば、あるリーフノードにおいて、フレーム１のフレーム内重複点の数が２であり、フレーム２のフレーム内重複点の数が１である場合、ｎｕｍ＿ｐｏｉｎｔは値２に設定される。
【０５２２】
ビットマップ情報（ｃｏｍｂｉｎｅ＿ｂｉｔ）は、あるリーフノードのｉ番目のフレーム内重複点がｊ番目のフレームに存在するかを示す情報である。例えば、値１は、フレーム内重複点が存在することを示し、値０はフレーム内重複点が存在しないことを示す。
【０５２３】
例えば、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［０］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［０］［１］＝１の場合は、リーフノード０の０番目のフレーム内重複点がフレーム０とフレーム１に存在し、それらはフレーム間重複点であることが示される。ビットマップ情報の他の例については後述する。
【０５２４】
三次元データ符号化装置は、ｎｕｍ＿ｐｏｉｎｔをエントロピー符号化してもよい。また、三次元データ符号化装置は、その際、複数の符号化テーブルを切替えて符号化を行ってもよい。例えば、三次元データ符号化装置は、先頭ビットを符号化テーブルＡを用いて算術符号化し、残りのビットを符号化テーブルＢを用いて算術符号化してもよい。
【０５２５】
三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｂｉｔをエントロピー符号化してもよい。例えば、三次元データ符号化装置は、値を二値化したうえで算術符号化してもよい。
【０５２６】
ここで、パラメータｎｕｍ＿ｐｏｉｎｔは、フレーム結合を行わない通常のＰＣＣ符号化において重複点を符号化する場合に用いられる。これに対して、フレーム結合においては、パラメータｎｕｍ＿ｐｏｉｎｔを、フレーム間重複点ではなく、フレーム内重複点の最大数を示す情報として用いる。
【０５２７】
図１００は、重複点の例を示す図である。この例では、フレーム０は、フレーム内重複点０、１を有する。フレーム１は、フレーム内重複点０を有する。よって、フレーム内重複点の最大数は、フレーム０の２個であり、ｎｕｍ＿ｐｏｉｎｔは２である。これにより、ｎｕｍ＿ｐｏｉｎｔ＿ｍｉｎｕｓ２は０に設定される。ここで、ｎｕｍ＿ｐｏｉｎｔ＿ｍｉｎｕｓ２はｎｕｍ＿ｐｏｉｎｔから２を減算した値を示す。
【０５２８】
また、ビットマップ情報によりリーフノードが有する重複点が示される。ビットマップの各ビットの値１は占有（ｏｃｃｕｐｉｅｄ）を示し、値０は、空（ｅｍｐｔｙ）を示す。ビットマップ情報の各ビットは、ｃｏｍｂｉｎｅ＿ｂｉｔ［フレーム内重複点番号］［フレーム番号］で表される。よって、図１００に示す例は、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［１］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［１］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［１］［１］＝０で表される。
【０５２９】
なお、ｃｏｍｂｉｎｅ＿ｂｉｔ［フレーム番号］［フレーム内重複点番号］のように配列のインデックスの順番を入れ替えても構わない。
【０５３０】
以下、ビットマップ情報を用いた具体例を説明する。図１０１及び図１０２は、あるリーフノードの重複点の例を示す図である。同図の例では、リーフノードの位置情報は（３、８、６）である。また、図１０１及び図１０２に示すフレームの列は、重複点が属する結合前のフレームの番号を示す。
【０５３１】
図１０１に示す例では、フレーム０には３個の重複点が含まれ、フレーム１には１個の重複点が含まれる。よって、フレーム内重複点の最大値は、フレーム０の３個である。つまり、ｎｕｍ＿ｐｏｉｎｔは３である。
【０５３２】
また、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［１］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［１］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［１］［１］＝０、ｃｏｍｂｉｎｅ＿ｂｉｔ［２］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［２］［１］＝０である。
【０５３３】
ここで、フレーム内重複点番号の最大値は、ｎｕｍ＿ｐｏｉｎｔと等しい。また、フレーム番号の最大値は、結合フレーム数に等しい。よって、フレーム内重複点番号とフレーム番号との組み合わせにより、各重複点が識別される。また、ｎｕｍ＿ｐｏｉｎｔ×結合フレーム数のビット数を有するビットマップ（ｃｏｍｂｉｎｅ＿ｂｉｔ［フレーム内重複点番号］［フレーム番号］）が生成される。
【０５３４】
図１０２に示す例では、フレーム０には３個の重複点が含まれ、フレーム１には２個の重複点が含まれ、フレーム２には４個の重複点が含まれ、フレーム３には１個の重複点が含まれる。よって、フレーム内重複点の最大値は、フレーム２の４個である。つまり、ｎｕｍ＿ｐｏｉｎｔは４である。
【０５３５】
また、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［１］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［２］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［０］［３］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［１］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［１］［１］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［１］［２］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［１］［３］＝０、ｃｏｍｂｉｎｅ＿ｂｉｔ［２］［０］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［２］［１］＝０、ｃｏｍｂｉｎｅ＿ｂｉｔ［２］［２］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［２］［３］＝０、ｃｏｍｂｉｎｅ＿ｂｉｔ［３］［０］＝０、ｃｏｍｂｉｎｅ＿ｂｉｔ［３］［１］＝０、ｃｏｍｂｉｎｅ＿ｂｉｔ［３］［２］＝１、ｃｏｍｂｉｎｅ＿ｂｉｔ［３］［３］＝０である。
【０５３６】
次に、三次元データ符号化処理の流れを説明する。図１０３は、三次元データ符号化処理のフローチャートである。図１０３に示す処理は、ノード毎に繰り返し行われる。
【０５３７】
まず、三次元データ符号化装置は、子ノードがリーフノードであるか否かを判定する（Ｓ６３０１）。子ノードがリーフノードである場合（Ｓ６３０１でＹｅｓ）、三次元データ符号化装置は、リーフノード内の、フレーム毎のフレーム内重複点の数を算出する（Ｓ６３０２）。次に、三次元データ符号化装置は、フレーム毎に算出したフレーム内重複点の最大値を示すｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］をヘッダに付加する（Ｓ６３０３）。つまり、リーフノード毎にｎｕｍ＿ｐｏｉｎｔがヘッダに付加される。
【０５３８】
次に、三次元データ符号化装置は、リーフノード内の重複点をソートする（Ｓ６３０４）。なお、この処理の詳細は後述する。
【０５３９】
次に、三次元データ符号化装置は、ｉを０に設定する（Ｓ６３０５）。ここでｉは、フレーム内重複点番号である。次に、三次元データ符号化装置は、ｉ＜ｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］が満たされるか否かを判定する（Ｓ６３０６）。ｉ＜ｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］が満たされる場合（Ｓ６３０６でＹｅｓ）、三次元データ符号化装置は、ｊを０に設定する（Ｓ６３０７）。ここでｊは、フレーム番号である。
【０５４０】
次に、三次元データ符号化装置は、ｊ＜ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅが満たされるか否かを判定する（Ｓ６３０８）。ここで、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅはフレーム結合されたフレームの数（結合フレーム数）を示す。
【０５４１】
ｊ＜ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅが満たされる場合（Ｓ６３０８でＹｅｓ）、三次元データ符号化装置は、ｉ番目の重複点がフレームｊに存在するか否かを判定する（Ｓ６３０９）。ｉ番目の重複点がフレームｊに存在する場合（Ｓ６３０９でＹｅｓ）、三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］を１に設定する（Ｓ６３１０）。一方、ｉ番目の重複点がフレームｊに存在しない場合（Ｓ６３０９でＮｏ）、三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］を０に設定する（Ｓ６３１１）。
【０５４２】
ステップＳ６３１０又はＳ６３１１の後、三次元データ符号化装置は、ｊを１インクリメントし（Ｓ６３１２）、ステップＳ６３０８以降の処理を再度行う。
【０５４３】
一方、ステップＳ６３０８において、ｊ＜ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅが満たされない場合（Ｓ６３０８でＮｏ）、三次元データ符号化装置は、ｉを１インクリメントし（Ｓ６３１３）、ステップＳ６３０６以降の処理を再度行う。
【０５４４】
また、ステップＳ６３０６において、ｉ＜ｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］が満たされない場合（Ｓ６３０６でＮｏ）、三次元データ符号化装置は、全てのリーフノードの処理が完了したか否かを判定する（Ｓ６３１４）。全てのリーフノードの処理が完了していない場合（Ｓ６３１４でＮｏ）、三次元データ符号化装置は、次のリーフノードに対してステップＳ６３０２以降の処理を行う。全てのリーフノードの処理が完了した場合（Ｓ６３１４でＹｅｓ）、三次元データ符号化装置は、処理を終了する。
【０５４５】
次に、上述したステップＳ６３０４で行われるソート処理について説明する。図１０４及び図１０５は、ソート処理の例を示す図である。
【０５４６】
三次元データ符号化装置は、リーフノード内の重複点を符号化する場合、図１０４及び図１０５に示すようにリーフノード内の重複点をソートして符号化してもよい。
【０５４７】
例えば、三次元データ符号化装置は、フレーム間重複点及びその属性情報をフレーム番号が小さい順になるようにソートしてもよい。例えば、三次元データ符号化装置は、フレーム間重複点がフレーム０とフレーム１とに存在する場合、フレーム０の重複点を最初に符号化し、次にフレーム１の重複点を符号化するようにソートを行う。
【０５４８】
また、三次元データ符号化装置は、フレーム間重複点が複数存在する場合は、同じフレーム間重複点に属する三次元点が順に符号化されるようにソートしてもよい。
【０５４９】
上記により三次元データ復号装置は、復号した順に応じてフレーム間重複点にフレーム番号を付加することができるので、復号処理の負荷を削減できる。また、三次元データ復号装置は、三次元点に属する属性情報を正しく復号できる。
【０５５０】
図１０６は、三次元データ復号処理のフローチャートである。図１０６に示す処理は、ノード毎に繰り返し行われる。
【０５５１】
まず、三次元データ復号装置は、子ノードがリーフノードであるか否かを判定する（Ｓ６３２１）。子ノードがリーフノードである場合（Ｓ６３２１でＹｅｓ）、三次元データ復号装置は、ビットストリームに含まれるヘッダからｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］を復号する（Ｓ６３２２）。
【０５５２】
次に、三次元データ復号装置は、ｉを０に設定する（Ｓ６３２３）。ここでｉは、フレーム内重複点番号である。次に、三次元データ復号装置は、ｉ＜ｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］が満たされるか否かを判定する（Ｓ６３２４）。
【０５５３】
ｉ＜ｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］が満たされる場合（Ｓ６３２４でＹｅｓ）、三次元データ復号装置は、ｊを０に設定する（Ｓ６３２５）。ここでｊは、フレーム番号である。次に、三次元データ復号装置は、ｊ＜ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅが満たされるか否かを判定する（Ｓ６３２６）。ここで、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅはフレーム結合されたフレームの数を示し、例えば、ビットストリームに含まれる。
【０５５４】
ｊ＜ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅが満たされる場合（Ｓ６３２６でＹｅｓ）、三次元データ復号装置は、ビットストリームからｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］を復号する（Ｓ６３２７）。次に、三次元データ復号装置は、復号したｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］が１であるか０であるかを判定する（Ｓ６３２８）。
【０５５５】
ｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］が１である場合（Ｓ６３２８でＹｅｓ）、三次元データ復号装置は、ｊ番目のフレームに属し、かつ、復号中のリーフノードの位置に対応する位置情報（ｘ，ｙ，ｚ）を持つｉ番目のフレーム内重複点を三次元点の復号結果として生成する（Ｓ６３２９）。
【０５５６】
ステップＳ６３２９の後、又は、ｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］が０である場合（Ｓ６３２８でＮｏ）、三次元データ復号装置は、ｊを１インクリメントし（Ｓ６３３０）、ステップＳ６３２６以降の処理を再度行う。
【０５５７】
また、ステップＳ６３２６において、ｊ＜ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅが満たされない場合（Ｓ６３２６でＮｏ）、三次元データ復号装置は、ｉを１インクリメントし（Ｓ６３３１）、ステップＳ６３２４以降の処理を再度行う。
【０５５８】
また、ステップＳ６３２４において、ｉ＜ｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］が満たされない場合（Ｓ６３２４でＮｏ）、三次元データ復号装置は、全てのリーフノードの処理が完了したか否かを判定する（Ｓ６３３２）。全てのリーフノードの処理が完了していない場合（Ｓ６３３２でＮｏ）、三次元データ復号装置は、次のリーフノードに対してステップＳ６３２２以降の処理を行う。全てのリーフノードの処理が完了した場合（Ｓ６３３２でＹｅｓ）、三次元データ復号装置は、処理を終了する。
【０５５９】
次に、ランク符号パターンを用いる例を説明する。図１０７は、ランク符号パターンを用いる場合のノード情報（ｎｏｄｅ（ｄｅｐｔｈ、ｉｎｄｅｘ））のシンタックス例を示す図である。なお、ヘッダの構成は、例えば、図９８と同様である。
【０５６０】
ノード情報は、オキュパンシー符号（ｏｃｃｕｐａｎｃｙ＿ｃｏｄｅ）と、三次元点数（ｎｕｍ＿ｐｏｉｎｔ）と、重複点数（ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ）と、フレーム０情報（ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ）と、結合インデックス（ｃｏｍｂｉｎｅ＿ｉｄｘ）とを含む。
【０５６１】
なお、ｏｃｃｕｐａｎｃｙ＿ｃｏｄｅ、ｎｕｍ＿ｐｏｉｎｔ、及びｎｕｍ＿ｌｅａｆ等については図９９と同様である。
【０５６２】
重複点数（ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ）は、ｉ番目のフレーム内重複点に関するフレーム間重複点の数を表す。例えば、０番目のフレーム内重複点をフレーム０とフレーム１とが含む場合、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｉ］＝２に設定される。この値は、図８３に示す重複点数に対応する。
【０５６３】
ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏは、リーフノードに含まれるｉ番目のフレーム内重複点が０番目のフレームに存在するか否かを示す。例えば、値１はｉ番目のフレーム内重複点が０番目のフレームに存在すること示し、値０はｉ番目のフレーム内重複点が０番目のフレームに存在しない（１番目のフレームに存在する）ことを示す。
【０５６４】
ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＝２かつｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｉ］＝２の場合は、フレーム０とフレーム１にフレーム間重複点が存在することが分かるため、三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏをビットストリームに含めなくてもよい。これによりビット量を抑制できる。またその際、三次元データ復号装置は、先に復号された重複点はフレーム０に属し、後に復号された重複点はフレーム１に属すると判定してもよい。また、三次元データ符号化装置は、フレーム間重複点がある場合、フレーム０に属する三次元点がフレーム１に属する三次元点より先に符号化されるように符号化順をソートしてもよい。これにより三次元点とその属性値を適切に符号化及び復号できる。
【０５６５】
結合インデックス（ｃｏｍｂｉｎｅ＿ｉｄｘ）は、ｉ番目のフレーム内重複点のランクを示す情報であり、図８３に示すランクに対応する。つまり、重複点数（ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ）と、結合インデックス（ｃｏｍｂｉｎｅ＿ｉｄｘ）との組み合わせに対してビットマップ情報が一意に対応付けられる。
【０５６６】
三次元データ符号化装置は、ｎｕｍ＿ｐｏｉｎｔ、及びｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ当をエントロピー符号化してもよい。また、その際、三次元データ符号化装置は、複数の符号化テーブルを切替えながら符号化を行ってもよい。例えば、三次元データ符号化装置は、先頭ビットを符号化テーブルＡを用いて算術符号化し、残りのビットを符号化テーブルＢを用いて算術符号化してもよい。
【０５６７】
ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔは常に１以上であるため、三次元データ符号化装置は、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔの代わりにｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ＿ｍｉｎｕｓ１（＝ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ−１）を符号化してもよい。
【０５６８】
また、三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ及びｃｏｍｂｉｎｅ＿ｉｄｘをエントロピー符号化してもよい。例えば、三次元データ符号化装置は、値を二値化したうえで算術符号化してもよい。
【０５６９】
次に、図１００に示す例において、ランク符号パターンを用いた場合について説明する。図１００に示す例では、フレーム０は、フレーム内重複点０、１を有する。フレーム１は、フレーム内重複点０を有する。よって、フレーム内重複点の最大数は、フレーム０の２個であり、ｎｕｍ＿ｐｏｉｎｔは２である。これにより、ｎｕｍ＿ｐｏｉｎｔ＿ｍｉｎｕｓ２は０に設定される。ここで、ｎｕｍ＿ｐｏｉｎｔ＿ｍｉｎｕｓ２はｎｕｍ＿ｐｏｉｎｔから２を減算した値を示す。
【０５７０】
重複点０のｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔは２であり、重複点１のｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔは１である。
【０５７１】
また、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏは、重複点毎に個別に設けられる。重複点０は、フレーム０とフレーム１との両方に含まれる。よって、重複点０のｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏは符号化されない。重複点１は、フレーム０に含まれ、フレーム１には含まれない。よって、重複点０のｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏは１に設定され、ビットストリームに符号化される。
【０５７２】
以下、図１０１及び図１０２に示す例において、ランク符号パターンを用いた場合について説明する。図１０１及び図１０２に示す例では、リーフノードの位置情報は（３、８、６）である。また、図１０１及び図１０２に示すフレームの列は、重複点が属する元のフレームの番号を示す。
【０５７３】
図１０１に示す例では、フレーム０には３個の重複点が含まれ、フレーム１には１個の重複点が含まれる。よって、フレーム内重複点の最大値は、フレーム０の３個である。つまり、ｎｕｍ＿ｐｏｉｎｔは３である。
【０５７４】
また、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［０］＝２であり、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［０］は符号化されない。ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［１］＝１であり、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［１］＝１である。ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［２］＝１であり、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［２］＝１である。
【０５７５】
また、図１０８は、図１０１に示す例における、フレーム０、フレーム１の占有状態（ビットマップ情報）と、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ及びｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏとの関係を示す図である。図１０８に示すようにｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ及びｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏの組み合わせにより、フレーム０、フレーム１の占有状態（ビットマップ情報）が一意に識別される。
【０５７６】
図１０２に示す例では、フレーム０には３個の重複点が含まれ、フレーム１には２個の重複点が含まれ、フレーム２には４個の重複点が含まれ、フレーム３には１個の重複点が含まれる。よって、フレーム内重複点の最大値は、フレーム２の４個である。つまり、ｎｕｍ＿ｐｏｒｔは４である。
【０５７７】
また、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［０］＝４であり、ｃｏｍｂｉｎｅ＿ｉｄｘ［０］＝０である。なお、ｃｏｍｂｉｎｅ＿ｉｄｘ［０］は、符号化されなくてもよい。ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［１］＝３であり、ｃｏｍｂｉｎｅ＿ｉｄｘ［１］＝３である。ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［２］＝２であり、ｃｏｍｂｉｎｅ＿ｉｄｘ［２］＝４である。ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［３］＝１であり、ｃｏｍｂｉｎｅ＿ｉｄｘ［３］＝１である。
【０５７８】
また、図１０９は、図１０２に示す例における、フレーム０〜フレーム３の占有状態（ビットマップ情報）と、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ及びｃｏｍｂｉｎｅ＿ｉｄｘとの関係を示す図である。図１０９に示すようにｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ及びｃｏｍｂｉｎｅ＿ｉｄｘの組み合わせにより、フレーム０〜フレーム３の占有状態（ビットマップ情報）が一意に識別される。
【０５７９】
次に、ランク符号パターンを用いた三次元データ符号化処理の流れを説明する。図１１０は、ランク符号パターンを用いた三次元データ符号化処理のフローチャートである。図１１０に示す処理は、ノード毎に繰り返し行われる。なお、ステップＳ６３０１〜ステップＳ６３０６及びステップＳ６３１４の処理は、図１０３と同様であり、説明を省略する。
【０５８０】
ステップＳ６３０６において、ｉ＜ｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］が満たされる場合（Ｓ６３０６でＹｅｓ）、三次元データ符号化装置は、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｌｅａｆ］［ｉ］を符号化する（Ｓ６３０７Ａ）。次に、三次元データ符号化装置は、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＝＝２、かつ、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｌｅａｆ］［ｉ］＝＝１が満たされるか否かを判定する（Ｓ６３０８Ａ）。
【０５８１】
ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＝＝２、かつ、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｌｅａｆ］［ｉ］＝＝１が満たされる場合（Ｓ６３０８ＡでＹｅｓ）、三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［ｌｅａｆ］［ｉ］を符号化する（Ｓ６３０９Ａ）。
【０５８２】
一方、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＝＝２、かつ、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｌｅａｆ］［ｉ］＝＝１が満たされない場合（Ｓ６３０８ＡでＮｏ）、三次元データ符号化装置は、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＞２が満たされるか否かを判定する（Ｓ６３１０Ａ）。
【０５８３】
ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＞２が満たされる場合（Ｓ６３１０ＡでＹｅｓ）、三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｉｄｘ［ｌｅａｆ］［ｉ］を符号化する（Ｓ６３１１Ａ）。
【０５８４】
ステップＳ６３０９Ａ或いはステップＳ６３１１Ａの後、又は、ステップＳ６３１０ＡにおいてＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＞２が満たされない場合（Ｓ６３１０ＡでＮｏ）、三次元データ符号化装置は、ｉを１インクリメントし（Ｓ６３１２Ａ）、ステップＳ６３０６以降の処理を再度行う。
【０５８５】
図１１１は、ランク符号パターンを用いた三次元データ復号処理のフローチャートである。図１１１に示す処理は、ノード毎に繰り返し行われる。なお、ステップＳ６３２１〜ステップＳ６３２４及びステップＳ６３３２の処理は、図１０６と同様であり、説明を省略する。
【０５８６】
ステップＳ６３２４において、ｉ＜ｎｕｍ＿ｐｏｉｎｔ［ｌｅａｆ］が満たされる場合（Ｓ６３２４でＹｅｓ）、三次元データ復号装置は、ビットストリームからｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｌｅａｆ］［ｉ］を復号する（Ｓ６３２５Ａ）。
【０５８７】
次に、三次元データ復号装置は、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＝＝２、かつ、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｌｅａｆ］［ｉ］＝＝１が満たされるか否かを判定する（Ｓ６３２６Ａ）。ここで、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅはフレーム結合されたフレームの数を示し、例えば、ビットストリームに含まれる。
【０５８８】
ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＝＝２、かつ、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｌｅａｆ］［ｉ］＝＝１が満たされる場合（Ｓ６３２６ＡでＹｅｓ）、三次元データ復号装置は、ビットストリームからｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［ｌｅａｆ］［ｉ］を復号する（Ｓ６３２７Ａ）。
【０５８９】
なお、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＝２かつｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｉ］＝２の場合は、フレーム０とフレーム１とにフレーム間重複点が存在することが分かるため、三次元データ復号装置は、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏを復号しなくてもよい。その際、三次元データ復号装置は、先に復号された重複点がフレーム０に属し、後に復号された重複点がフレーム１に属すると判断する。
【０５９０】
一方、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＝＝２、かつ、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｌｅａｆ］［ｉ］＝＝１が満たされない場合（Ｓ６３２６ＡでＮｏ）、三次元データ復号装置は、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＞２が満たされるか否かを判定する（Ｓ６３２８Ａ）。ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＞２が満たされる場合（Ｓ６３２８ＡでＹｅｓ）、三次元データ復号装置は、ビットストリームからｃｏｍｂｉｎｅ＿ｉｄｘ［ｌｅａｆ］［ｉ］を復号する（Ｓ６３２９Ａ）。
【０５９１】
ステップＳ６３２７Ａ或いはＳ６３２９Ａの後、又はステップＳ６３２８ＡにおいてＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＞２が満たされない場合（Ｓ６３２８ＡでＮｏ）、三次元データ復号装置は、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔと、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ又はｃｏｍｂｉｎｅ＿ｉｄｘとの値からフレーム間重複点がどのフレームに含まれるかを算出する。また、三次元データ復号装置は、復号中のリーフノードの位置に対応する位置情報（ｘ、ｙ、ｚ）を各重複点に付加することで三次元点を復号する（Ｓ６３３０Ａ）。この際、三次元データ復号装置は、最初の三次元点に最も値が小さいフレーム番号を付加し、以降、フレーム番号を昇順に付加してもよい。
【０５９２】
次に、三次元データ復号装置は、ｉを１インクリメントし（Ｓ６３３１Ａ）、ステップＳ６３２４以降の処理を再度行う。
【０５９３】
以下、結合符号化に用いられる各種フラグのシンタックス例を説明する。図１１２は、シーケンス単位（複数フレーム単位）のパラメータセットであるＳＰＳのシンタックス例を示す図である。図１１２に示すＳＰＳは、フレーム結合適用フラグ（ｃｏｍｂｉｎｅ＿ｃｏｄｉｎｇ＿ｅｎａｂｌｅ＿ｆｌａｇ）を含む。
【０５９４】
フレーム結合適用フラグ（ｃｏｍｂｉｎｅ＿ｃｏｄｉｎｇ＿ｅｎａｂｌｅ＿ｆｌａｇ）は、シーケンスレベルでフレーム結合を適用するか否かを切替えるためのフラグである。例えば、値１はフレーム結合を適用することを示し、値０はフレーム結合を適用しないことを示す。
【０５９５】
三次元データ符号化装置は、シーケンス内にてフレーム結合を適用する可能性がある場合は、フレーム結合適用フラグを値１に設定し、適用しない場合はフレーム結合適用フラグを値０に設定してもよい。三次元データ符号化装置は、フレーム結合適用フラグをＳＰＳ以外のヘッダ等に付加してもよい。
【０５９６】
図１１３は、フレーム単位のパラメータセットであり、位置情報のパラメータセットであるＧＰＳのシンタックス例を示す図である。図１１３に示すＧＰＳは、結合フレーム数−１（ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ１）を含む。
【０５９７】
結合フレーム数−１（ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ１）は、フレーム結合されたフレーム枚数−１を示す情報である。ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ１は、ｃｏｍｂｉｎｅ＿ｃｏｄｉｎｇ＿ｅｎａｂｌｅ＿ｆｌａｇが１のときビットストリームに付加されてもよい。また、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ１は、ＧＰＳ以外のヘッダ等に付加されてもよい。
【０５９８】
三次元データ符号化装置は、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅから値１を引いた値をＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ１としてビットストリームに付加してもよい。また、三次元データ符号化装置は、フレーム結合を適用しないフレームに関するＧＰＳには、値０のＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ１を付加してもよい。
【０５９９】
これにより、三次元データ復号装置は、復号したＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ１に値１を加算してＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅを算出できる。また、三次元データ復号装置は、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅが１の場合は、復号したＧＰＳに関連するフレームにはフレーム結合が適用されていないと判断できる。この際、三次元データ復号装置は、フレーム結合に関する情報（例えば、三次元点群毎のフレーム情報（例えば点群が属するフレームを示すフレームインデックス））が該当するフレームのビットストリームには含まれないと判断し、それらの情報を復号しなくてもよい。なお、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅの値は、例えば、１から最大結合数までの値をとる。また、最大結合数は２のべき乗の値に制限されてもよい。
【０６００】
図１１４は、ＧＰＳの別のシンタックス例を示す図である。図１１４に示すＧＰＳは、フレーム結合適用フラグ（ｃｏｍｂｉｎｅ＿ｃｏｄｉｎｇ＿ｅｎａｂｌｅ＿ｆｌａｇ）と、結合フレーム数−２（ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ２）とを含む。
【０６０１】
フレーム結合適用フラグ（ｃｏｍｂｉｎｅ＿ｃｏｄｉｎｇ＿ｅｎａｂｌｅ＿ｆｌａｇ）は、フレームレベルでフレーム結合を適用するか否かを切替えるためのフラグである。例えば、値１はフレーム結合を適用することを示し、値０はフレーム結合を適用しないことを示す。三次元データ符号化装置は、符号化対象の三次元点群をフレーム結合して符号化した場合は、フレーム結合適用フラグを値１に設定し、適用しなかった場合はフレーム結合適用フラグを値０に設定してもよい。また、三次元データ復号装置は、復号したｃｏｍｂｉｎｅ＿ｃｏｄｉｎｇ＿ｅｎａｂｌｅ＿ｆｌａｇが１の場合は、復号したＧＰＳに関連するフレームにはフレーム結合が適用されていないと判断してもよい。この際、三次元データ復号装置は、フレーム結合に関する情報（例えば、三次元点群毎のフレーム情報（例えば点群が属するフレームを示すフレームインデックス））が該当するフレームのビットストリームには含まれないと判断し、それらの情報を復号しなくてもよい。
【０６０２】
結合フレーム数−２（ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ２）は、フレーム結合されたフレーム枚数−２を示す。三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｃｏｄｉｎｇ＿ｅｎａｂｌｅ＿ｆｌａｇが１のときに、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ２をビットストリームに付加してもよい。三次元データ符号化装置は、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅから値２を引いた値をＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ２としてビットストリームに付加してもよい。また、三次元データ復号装置は、復号したＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ２に値２を加算することでＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅを算出してもよい。
【０６０３】
なお、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅの値は２から最大結合数までの値をとる。また、最大結合数は２のべき乗の値に制限されてもよい。
【０６０４】
三次元データ符号化装置は、ｃｏｍｂｉｎｅ＿ｃｏｄｉｎｇ＿ｅｎａｂｌｅ＿ｆｌａｇ、ＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ１、又はＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅＦｒａｍｅ＿ｍｉｎｕｓ２をエントロピー符号化してもよい。例えば、三次元データ符号化装置は、値を二値化したうえで算術符号化する。また、三次元データ符号化装置は、これらの情報を固定長で符号化してもよい。
【０６０５】
また、三次元データ符号化装置は、三次元点に付加するフレーム情報（例えば点群が属するフレームを示すフレームインデックス）を属性情報として符号化する場合は、属性情報の取り得る最大値をＮｕｍｂｅｒＯｆＣｏｍｂｉｎｅの最大結合数に設定してもよい。
【０６０６】
以下、フレーム結合を適用するか否かの切り替えについて説明する。一部のフレームに対してフレーム結合を適用不可に設定することにより、符号化効率を向上できる可能性がある。フレーム結合を適用するか否かを判定する方法として、結合するフレーム間の距離を用いる方法と、外部情報を用いる方法と、フレーム結合を用いる場合と用いない場合とを比較する方法とがある。
【０６０７】
ここで、外部情報には、例えば、速度計又は加速度計のデータが含まれる。また、フレーム結合を用いる場合と用いない場合とを比較する方法では、テスト圧縮により、結合符号化が有益であるか否かが確認される。
【０６０８】
例えば、三次元データ符号化装置は、速度計又は加速度センサから車体が止まっているか否かを判定し、止まっている場合はフレーム結合を適用し、そうでない場合はフレーム結合を適用しない。また、三次元データ符号化装置は、車両の速度が予め定められた速度以下ならフレーム結合を適用し、そうでなければフレーム結合を適用しなくてもよい。これにより、フレーム結合が効果的なシーンに対してフレーム結合が適用されるようになり、符号化効率を向上できる。
【０６０９】
図１１５は、フレーム結合を行う場合の符号化効率に対するフレーム結合を行わない場合の符号化効率の比と、フレーム結合の適用の可否との関係の例を示す図である。同図の縦軸は、フレーム結合を行わない場合の符号化効率からフレーム結合を行う場合の符号化効率を除算した値を示す。つまり、値が１を超える場合には、フレーム結合を行わない場合のほうが、フレーム結合を行う場合よりも符号化効率が向上する。よって、縦軸の比が１を超える領域ではフレーム結合が非適用に設定され、それ以外の領域ではフレーム結合が適用に設定される。
【０６１０】
図１１６は、上述した符号化効率の比と、フレーム結合するフレーム間の距離との関係を示す図である。同図に示すように、上述した符号化効率の比と、フレーム間の距離とは相関がある。よって、三次元データ符号化装置は、フレーム間の距離を用いてフレーム結合の適用の可否を切り替えることができる。
【０６１１】
例えば、三次元データ符号化装置は、下記（式Ｉ１）を用いてフレーム間の距離ｄｉｓｔを算出する。
【０６１２】
【数１】
2020116563.tif 000003
【０６１３】
また、三次元データ符号化装置は、複数フレームの符号化時に、符号化対象フレームの残数がＧＯＰより少なくなった場合は、フレーム結合をしないと判断してもよい。また、三次元データ符号化装置は、ＧＯＰに含まれるフレームの数を符号化対象フレームの残数に合わせて変更してもよい。これにより全てのフレームを適切に符号化できる。
【０６１４】
図１１７は、これらのフレーム結合の適用の可否の切り替えを模式的に示す図である。図１１７に示すように、フレーム結合の適用が適応的に切り替えられる。
【０６１５】
図１１８は、三次元データ符号化処理のフローチャートである。まず、三次元データ符号化装置は、入力フレームのデータを取得する（Ｓ６３４１）。次に、三次元データ符号化装置は、フレーム結合を利用可能であるか否かを判定する（Ｓ６３４２）。例えば、この判定は外部からの指示等に基づき行われてもよいし、上述した判定のいずれかが用いられてもよい。
【０６１６】
フレーム結合を利用可能である場合（Ｓ６３４２でＹｅｓ）、三次元データ符号化装置は、フレーム結合を利用するか否かを判定する（Ｓ６３４３）。例えば、この判定には、上述した判定のいずれかが用いられる。
【０６１７】
フレーム結合を利用すると判定された場合（Ｓ６３４３でＹｅｓ）、三次元データ符号化装置は、フレーム結合を行い（Ｓ６３４４）、結合フレームを符号化する（Ｓ６３４５）。
【０６１８】
一方、フレーム結合が利用不可である場合（Ｓ６３４２でＮｏ）、又は、フレーム結合を利用しないと判定された場合（Ｓ６３４３でＮｏ）、三次元データ符号化装置は、フレーム結合を行わず、入力フレームを符号化する（Ｓ６３４５）。
【０６１９】
図１１９は、図１１８に示す三次元データ符号化処理の具体例を示す図である。図１１９に示す処理は、図１１８に示すステップＳ６３４３の代わりにステップＳ６３４３Ａ及びＳ６３４３Ｂを含む。
【０６２０】
フレーム結合を利用可能である場合（Ｓ６３４２でＹｅｓ）、三次元データ符号化装置は、結合するフレーム間の距離ｄｉｆｆを算出する（Ｓ６３４３Ａ）。次に、三次元データ符号化装置は、距離ｄｉｆｆが予め定められた閾値ｔｈより大きいかを判定する（Ｓ６３４３Ｂ）。距離ｄｉｆｆが閾値ｔｈ以下の場合（Ｓ６３４３ＢでＮｏ）、三次元データ符号化装置は、フレーム結合を行い（Ｓ６３４４）、結合フレームを符号化する（Ｓ６３４５）。一方、距離ｄｉｆｆが閾値ｔｈより大きい場合（Ｓ６３４３ＢでＹｅｓ）、三次元データ符号化装置は、フレーム結合を行わず、入力フレームを符号化する（Ｓ６３４５）。
【０６２１】
図１２０は、本実施の形態に係る三次元データ符号化装置のブロック図である。図１２０に示す三次元データ符号化装置６３００は、Ｉ／Ｏモジュール６３０１と、結合決定部６３０２と、結合符号化部６３０３と、符号化部６３０４と、Ｉ／Ｏモジュール６３０５を備える。
【０６２２】
Ｉ／Ｏモジュール６３０１は、点群データを取得する。結合決定部６３０２は、フレーム結合を適用するか否かを決定する。例えば、結合決定部６３０２は、上述した、結合するフレーム間の距離を用いる方法と、外部情報を用いる方法と、フレーム結合を用いる場合と用いない場合とを比較する方法とのいずれかを用いて、フレーム結合を適用するか否かを決定する。
【０６２３】
結合符号化部６３０３は、フレーム結合を適用すると決定された場合に、フレーム結合を行い、結合フレームを符号化する。符号化部６３０４は、フレーム結合を適用しないと決定された場合に、フレーム結合を行わず、入力フレームを符号化する。Ｉ／Ｏモジュール６３０５は、結合符号化部６３０３又は符号化部６３０４で生成されたビットストリームを出力する。
【０６２４】
図１２１は、結合決定部６３０２の具体例を示す図である。図１２１に示す三次元データ符号化装置６３００Ａは、図１２０に示す結合決定部６３０２の代わりに距離算出部６３０２Ａを備える。距離算出部６３０２Ａは、結合するフレーム間の距離ｄｉｆｆを算出する。距離算出部６３０２Ａは、距離ｄｉｆｆが予め定められた閾値ｔｈより大きい場合、フレーム結合を適用しないと決定し、距離ｄｉｆｆが閾値ｔｈ以下の場合、フレーム結合を適用すると決定する。
【０６２５】
以下、メタデータ（付加情報）の送出例を説明する。三次元データ符号化装置は、フレーム結合を行った場合、ＧＰＳ又はＡＰＳなどには、結合フレームの復号に使用するメタデータを格納してもよい。例えば、このメタデータは、結合フレーム数、又は結合されるフレームを特定するための情報など、結合フレーム内で共通の情報であってもよい。なお、ＡＰＳとは、例えば、フレーム単位の属性情報のパラメータセットである。
【０６２６】
一方、三次元データ符号化装置は、復号に必須でない情報、又は、復号後にアプリケーションで活用可能な情報を、例えば、フレーム毎にＳＥＩ（Ｓｕｐｐｌｅｍｅｎｔａｌ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ）などのメタデータに格納し、フレーム毎に示してもよい。例えば、このメタデータは、フレームデータの生成時刻、符号化時刻、復号時刻、又は再生時刻などを示すタイムスタンプを含む。また、このメタデータは、フレームデータを取得した際のセンサ情報を含んでもよい。センサ情報は、例えば、センサのスピード、加速度、位置情報、又は向き等を含む。なお、センサ情報は、その他のセンサで得られる情報を含んでもよい。
【０６２７】
言い換えれば、三次元データ符号化装置は、結合フレームの復号に使用するメタデータを一つにまとめ、結合フレームを分割した後に使用するデータをフレーム毎に示す。これにより、三次元データ復号装置におけるフレーム毎の情報の統合又は分割処理が不要となる可能性がある。
【０６２８】
なお、三次元データ符号化装置は、ＳＥＩに対応するフレームの情報が記載されるＧＰＳ、ＡＰＳ又はＳＰＳのインデックスを記載してもよい。これにより、三次元データ復号装置は、対応する情報を参照できる。
【０６２９】
また、例えば、ＳＥＩは、ＧＰＳ又はＡＰＳの後に送信されると規定され、三次元データ復号装置は、ＳＥＩの前に送信されるＧＰＳ又はＡＰＳが当該ＳＥＩに対応すると判定してもよい。
【０６３０】
図１２２は、符号化データ（ビットストリーム）の構成例を示す図である。図１２２に示すように、結合フレームを復号する際に使用するメタデータは、全フレームの情報がまとめて格納される。また、結合フレームを分割した後に使用されるメタデータは、フレーム毎に格納される。
【０６３１】
また、三次元データ符号化装置は、復号に必須ではないが、復号に用いることが可能なメタデータを、全フレームの情報をまとめてＳＥＩに格納し、復号後にアプリケーションで用いるデータを、フレーム毎に格納してもよい。復号に用いるデータをまとめることで符号化のオーバヘッドを削減し、かつアプリケーションで用いるデータを、そのまま後段に入力することが可能となる。
【０６３２】
図１２３は、符号化データ（ビットストリーム）の構成例を示す図である。図１２３に示すように、結合フレームを復号する際に使用するメタデータは、全フレームの情報がまとめて格納される。復号に必須ではないが、復号に用いることのできるメタデータは、全フレームの情報がまとめて格納される。
【０６３３】
なお、上記では、メタデータに、結合フレームの全フレームの情報が格納される例と、フレーム毎の情報が格納されか例とを説明したが、メタデータに一部のフレームの情報が格納されてもよい。例えば、一部のフレームはセンサ情報を含まない場合は、メタデータは、センサ情報を含む残りのフレームの情報を示してもよい。
【０６３４】
次に、メタデータの復号処理について説明する。図１２４は、メタデータの復号処理のフローチャートである。まず、三次元データ復号装置は、メタデータを受信する（Ｓ６３５１）。次に、三次元データ復号装置は、メタデータが２以上のフレームの情報を含むか否かを判定する（Ｓ６３５２）。つまり、三次元データ復号装置は、メタデータに、結合フレームの全フレームの情報を格納されているか、フレーム毎の情報が格納されているかを判定する。なお、メタデータに、結合フレームの全フレームの情報を格納されているか、フレーム毎の情報が格納されているかは、メタデータの種類、又はＳＥＩのタイプなどによって予め規定されてもよい。または、メタデータ内に、結合フレームの全フレームの情報が格納されているか、フレーム毎の情報が格納されているかを示す情報が格納されてもよい。三次元データ復号装置は、これらに基づき、メタデータに含まれるフレームの数を判定し、処理を実施できる。
【０６３５】
メタデータが２以上のフレームの情報を含む場合（Ｓ６３５２でＹｅｓ）、三次元データ復号装置は、当該２以上のフレームの情報を解析し、得られた情報を復号処理に使用する（Ｓ６３５３）。次に、三次元データ復号装置は、２以上のフレームの情報を、フレーム毎の情報に変換し、フレーム毎の情報を後段のシステムレイヤに入力する（Ｓ６３５４）。
【０６３６】
一方、メタデータが２以上のフレームの情報を含まない場合（Ｓ６３５２でＮｏ）、三次元データ復号装置は、当該情報を復号に用いず、当該情報をシステムレイヤに入力する（Ｓ６３５５）。
【０６３７】
以上のように、本実施の形態に係る三次元データ符号化装置は、図１２５に示す処理を行う。三次元データ符号化装置は、複数の点群データ（例えば複数のフレーム）を結合することで結合点群データを生成する（Ｓ６３６１）。次に、三次元データ符号化装置は、結合点群データを符号化することでビットストリームを生成する（Ｓ６３６２）。ビットストリームは、（ｉ）複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報（例えばｎｕｍ＿ｐｏｉｎｔ）と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックス（例えば「ｉ」）の各々と対応し、対応する点インデックスを有する三次元点が複数の点群データのいずれに属するかを示す複数の第２情報（例えば、（１）ｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］、（２）ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｉ］及びｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［ｉ］、又は、（３）ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｉｎｔ［ｉ］及びｃｏｍｂｉｎｅ＿ｉｄｘ［ｉ］）と、を含む。
【０６３８】
これによれば、複数の点群データをまとめて符号化することにより符号化効率を向上できる。さらに、第１情報及び第２情報により、点群データ内の重複点及び点群データ間の重複点が存在する場合において、効率的に重複点を識別できる。例えば、対象ノードに含まれる重複点の総数と、各重複点が属する点群データを示す情報と、各重複点の識別子とを付加する場合に比べて、データ量を削減できる。
【０６３９】
例えば、複数の第２情報の各々は、対応する点インデックスを有する三次元点の数を示す第３情報（例えば、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｉ］）と、第３情報との組み合わせにより、対応する点インデックスを有する三次元点が複数の点群データのいずれに属するかを特定可能な第４情報（例えば、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［ｉ］、又は、ｃｏｍｂｉｎｅ＿ｉｄｘ［ｉ］）とを含む。言い換えると、第３情報と第４情報との組み合わせはビットマップ情報で示される各パターンを一意に対応付けられる。また、ビットマップ情報は、複数の点群データの数と同じビット数を有する。複数のビットは複数の点群データと一対一で対応し、各ビットにより対応する点群データに属する三次元点（重複点）が対象ノードに存在するか否かが示される。
【０６４０】
例えば、第３情報で示される三次元点の数が複数の点群データの数と等しい場合、対応する第２情報は、第４情報を含まない。これによれば、ビットストリームの符号量を低減できる。
【０６４１】
例えば、複数の第２情報の各々は、複数の点群データの数と同じビット数を有するビットマップ情報（例えば、ｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］）である。
【０６４２】
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０６４３】
また、本実施の形態に係る三次元データ復号装置は、図１２６に示す処理を行う。三次元データ復号装置は、複数の点群データが結合された結合点群データが符号化されることで生成されたビットストリームから、（ｉ）複数の点群データの各々に含まれる、位置情報が同じ三次元点である重複点の最大数を示す第１情報（例えばｎｕｍ＿ｐｏｉｎｔ）と、（ｉｉ）前記最大数と同数の値が割り当てられたインデックスであって、同一の点群データに属する複数の重複点を識別するための点インデックス（例えば「ｉ」）の各々と対応し、対応する点インデックスを有する三次元点が複数の点群データのいずれに属するかを示す複数の第２情報（例えば、（１）ｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］、（２）ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｉ］及びｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［ｉ］、又は、（３）ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｉｎｔ［ｉ］及びｃｏｍｂｉｎｅ＿ｉｄｘ［ｉ］）と、を取得する（Ｓ６３７１）。三次元データ復号装置は、第１情報及び複数の第２情報を用いて、（ｉ）ビットストリームから結合点群データを復号し、（ｉｉ）結合点群データから複数の点群データを生成する（Ｓ６３７２）。例えば、三次元データ復号装置は、第１情報及び複数の第２情報を用いて、対象ノードに含まれる三次元点（重複点）の数と、各三次元点が属する点群データを判定する。三次元データ復号装置は、対象ノードに含まれる三次元点（重複点）の数に基づき結合点群データを復号し、各三次元点が属する点群データに基づき、結合点群データから複数の点群データを分離する。
【０６４４】
これによれば、複数の点群データをまとめて符号化することにより符号化効率を向上できる。さらに、第１情報及び第２情報により、点群データ内の重複点及び点群データ間の重複点が存在する場合において、効率的に重複点を識別できる。
【０６４５】
例えば、複数の第２情報の各々は、対応する点インデックスを有する三次元点の数を示す第３情報（例えば、ｎｕｍ＿ｃｏｍｂｉｎｅ＿ｐｏｉｎｔ［ｉ］）と、第３情報との組み合わせにより、対応する点インデックスを有する三次元点が複数の点群データのいずれに属するかを特定可能な第４情報（例えば、ｃｏｍｂｉｎｅ＿ｅｑｕａｌｚｅｒｏ［ｉ］、又は、ｃｏｍｂｉｎｅ＿ｉｄｘ［ｉ］）とを含む。
【０６４６】
例えば、第３情報で示される三次元点の数が複数の点群データの数と等しい場合、対応する第２情報は、第４情報を含まない。これによれば、ビットストリームの符号量を低減できる。
【０６４７】
例えば、複数の第２情報の各々は、複数の点群データの数と同じビット数を有するビットマップ情報（例えば、ｃｏｍｂｉｎｅ＿ｂｉｔ［ｉ］［ｊ］）である。
【０６４８】
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０６４９】
以上、本開示の実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等について説明したが、本開示は、この実施の形態に限定されるものではない。
【０６５０】
また、上記実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等に含まれる各処理部は典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部又は全てを含むように１チップ化されてもよい。
【０６５１】
また、集積回路化はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、又はＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０６５２】
また、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【０６５３】
また、本開示は、三次元データ符号化装置及び三次元データ復号装置等により実行される三次元データ符号化方法又は三次元データ復号方法等として実現されてもよい。
【０６５４】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【０６５５】
また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時（並列）に実行されてもよい。
【０６５６】
以上、一つまたは複数の態様に係る三次元データ符号化装置及び三次元データ復号装置等について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
【産業上の利用可能性】
【０６５７】
本開示は、三次元データ符号化装置及び三次元データ復号装置に適用できる。
【符号の説明】
【０６５８】
４６０１  三次元データ符号化システム
４６０２  三次元データ復号システム
４６０３  センサ端末
４６０４  外部接続部
４６１１  点群データ生成システム
４６１２  提示部
４６１３  符号化部
４６１４  多重化部
４６１５  入出力部
４６１６  制御部
４６１７  センサ情報取得部
４６１８  点群データ生成部
４６２１  センサ情報取得部
４６２２  入出力部
４６２３  逆多重化部
４６２４  復号部
４６２５  提示部
４６２６  ユーザインタフェース
４６２７  制御部
４６３０  第１の符号化部
４６３１  位置情報符号化部
４６３２  属性情報符号化部
４６３３  付加情報符号化部
４６３４  多重化部
４６４０  第１の復号部
４６４１  逆多重化部
４６４２  位置情報復号部
４６４３  属性情報復号部
４６４４  付加情報復号部
４６５０  第２の符号化部
４６５１  付加情報生成部
４６５２  位置画像生成部
４６５３  属性画像生成部
４６５４  映像符号化部
４６５５  付加情報符号化部
４６５６  多重化部
４６６０  第２の復号部
４６６１  逆多重化部
４６６２  映像復号部
４６６３  付加情報復号部
４６６４  位置情報生成部
４６６５  属性情報生成部
４８０１  符号化部
４８０２  多重化部
４９１０  第１の符号化部
４９１１  分割部
４９１２  位置情報符号化部
４９１３  属性情報符号化部
４９１４  付加情報符号化部
４９１５  多重化部
４９２０  第１の復号部
４９２１  逆多重化部
４９２２  位置情報復号部
４９２３  属性情報復号部
４９２４  付加情報復号部
４９２５  結合部
４９３１  スライス分割部
４９３２  位置情報タイル分割部
４９３３  属性情報タイル分割部
４９４１  位置情報タイル結合部
４９４２  属性情報タイル結合部
４９４３  スライス結合部
５４１０  符号化部
５４１１  分割部
５４１２  位置情報符号化部
５４１３  属性情報符号化部
５４１４  付加情報符号化部
５４１５  多重化部
５４２１  タイル分割部
５４２２  スライス分割部
５４３１、５４４１  フレームインデックス生成部
５４３２、５４４２  エントロピー符号化部
５４５０  復号部
５４５１  逆多重化部
５４５２  位置情報復号部
５４５３  属性情報復号部
５４５４  付加情報復号部
５４５５  結合部
５４６１、５４７１  エントロピー復号部
５４６２、５４７２  フレームインデックス取得部
５５１０  位置情報符号化部
５５１１、５５２１  フレームインデックス生成部
５５１２、５５２２  エントロピー符号化部
５５２０  属性情報符号化部
５５３０  位置情報復号部
５５３１、５５４１  エントロピー復号部
５５３２、５５４２  フレームインデックス取得部
５５４０  属性情報復号部
５５５０  フレーム結合部
５５６０  フレームインデックス符号化部
５５６１  ビットマップ生成部
５５６２、５５８３  ルックアップテーブル参照部
５５６３、５５８１  ビット数取得部
５５７０  結合データ生成部
５５８２  ランク取得部
５５８４  フレーム分割部
６３００、６３００Ａ  三次元データ符号化装置
６３０１、６３０５  Ｉ／Ｏモジュール
６３０２  結合決定部
６３０２Ａ  距離算出部
６３０３  結合符号化部
６３０４  符号化部
【図１】
2020116563.tif 000004
【図２】
2020116563.tif 000005
【図３】
2020116563.tif 000006
【図４】
2020116563.tif 000007
【図５】
2020116563.tif 000008
【図６】
2020116563.tif 000009
【図７】
2020116563.tif 000010
【図８】
2020116563.tif 000011
【図９】
2020116563.tif 000012
【図１０】
2020116563.tif 000013
【図１１】
2020116563.tif 000014
【図１２】
2020116563.tif 000015
【図１３】
2020116563.tif 000016
【図１４】
2020116563.tif 000017
【図１５】
2020116563.tif 000018
【図１６】
2020116563.tif 000019
【図１７】
2020116563.tif 000020
【図１８】
2020116563.tif 000021
【図１９】
2020116563.tif 000022
【図２０】
2020116563.tif 000023
【図２１】
2020116563.tif 000024
【図２２】
2020116563.tif 000025
【図２３】
2020116563.tif 000026
【図２４】
2020116563.tif 000027
【図２５】
2020116563.tif 000028
【図２６】
2020116563.tif 000029
【図２７】
2020116563.tif 000030
【図２８】
2020116563.tif 000031
【図２９】
2020116563.tif 000032
【図３０】
2020116563.tif 000033
【図３１】
2020116563.tif 000034
【図３２】
2020116563.tif 000035
【図３３】
2020116563.tif 000036
【図３４】
2020116563.tif 000037
【図３５】
2020116563.tif 000038
【図３６】
2020116563.tif 000039
【図３７】
2020116563.tif 000040
【図３８】
2020116563.tif 000041
【図３９】
2020116563.tif 000042
【図４０】
2020116563.tif 000043
【図４１】
2020116563.tif 000044
【図４２】
2020116563.tif 000045
【図４３】
2020116563.tif 000046
【図４４】
2020116563.tif 000047
【図４５】
2020116563.tif 000048
【図４６】
2020116563.tif 000049
【図４７】
2020116563.tif 000050
【図４８】
2020116563.tif 000051
【図４９】
2020116563.tif 000052
【図５０】
2020116563.tif 000053
【図５１】
2020116563.tif 000054
【図５２】
2020116563.tif 000055
【図５３】
2020116563.tif 000056
【図５４】
2020116563.tif 000057
【図５５】
2020116563.tif 000058
【図５６】
2020116563.tif 000059
【図５７】
2020116563.tif 000060
【図５８】
2020116563.tif 000061
【図５９】
2020116563.tif 000062
【図６０】
2020116563.tif 000063
【図６１】
2020116563.tif 000064
【図６２】
2020116563.tif 000065
【図６３】
2020116563.tif 000066
【図６４】
2020116563.tif 000067
【図６５】
2020116563.tif 000068
【図６６】
2020116563.tif 000069
【図６７】
2020116563.tif 000070
【図６８】
2020116563.tif 000071
【図６９】
2020116563.tif 000072
【図７０】
2020116563.tif 000073
【図７１】
2020116563.tif 000074
【図７２】
2020116563.tif 000075
【図７３】
2020116563.tif 000076
【図７４】
2020116563.tif 000077
【図７５】
2020116563.tif 000078
【図７６】
2020116563.tif 000079
【図７７】
2020116563.tif 000080
【図７８】
2020116563.tif 000081
【図７９】
2020116563.tif 000082
【図８０】
2020116563.tif 000083
【図８１】
2020116563.tif 000084
【図８２】
2020116563.tif 000085
【図８３】
2020116563.tif 000086
【図８４】
2020116563.tif 000087
【図８５】
2020116563.tif 000088
【図８６】
2020116563.tif 000089
【図８７】
2020116563.tif 000090
【図８８】
2020116563.tif 000091
【図８９】
2020116563.tif 000092
【図９０】
2020116563.tif 000093
【図９１】
2020116563.tif 000094
【図９２】
2020116563.tif 000095
【図９３】
2020116563.tif 000096
【図９４】
2020116563.tif 000097
【図９５】
2020116563.tif 000098
【図９６】
2020116563.tif 000099
【図９７】
2020116563.tif 000100
【図９８】
2020116563.tif 000101
【図９９】
2020116563.tif 000102
【図１００】
2020116563.tif 000103
【図１０１】
2020116563.tif 000104
【図１０２】
2020116563.tif 000105
【図１０３】
2020116563.tif 000106
【図１０４】
2020116563.tif 000107
【図１０５】
2020116563.tif 000108
【図１０６】
2020116563.tif 000109
【図１０７】
2020116563.tif 000110
【図１０８】
2020116563.tif 000111
【図１０９】
2020116563.tif 000112
【図１１０】
2020116563.tif 000113
【図１１１】
2020116563.tif 000114
【図１１２】
2020116563.tif 000115
【図１１３】
2020116563.tif 000116
【図１１４】
2020116563.tif 000117
【図１１５】
2020116563.tif 000118
【図１１６】
2020116563.tif 000119
【図１１７】
2020116563.tif 000120
【図１１８】
2020116563.tif 000121
【図１１９】
2020116563.tif 000122
【図１２０】
2020116563.tif 000123
【図１２１】
2020116563.tif 000124
【図１２２】
2020116563.tif 000125
【図１２３】
2020116563.tif 000126
【図１２４】
2020116563.tif 000127
【図１２５】
2020116563.tif 000128
【図１２６】
2020116563.tif 000129
【国際調査報告】
2020116563.tif 000130
2020116563.tif 000131
2020116563.tif 000132
2020116563.tif 000133