(57)【要約】  三次元データ符号化方法は、複数の三次元点を含む対象フレームを複数の処理単位に分割し（Ｓ６２９１）、複数の処理単位を符号化することでビットストリームを生成し（Ｓ６２９２）、ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）対象フレームに含まれる複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）複数の処理単位のいずれにも重複点が存在しないか、を示す第１情報を含む。
2020101021.tif 000002
【特許請求の範囲】
【請求項１】
複数の三次元点を含む対象フレームを複数の処理単位に分割し、
前記複数の処理単位を符号化することでビットストリームを生成し、
前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含む
三次元データ符号化方法。
【請求項２】
前記複数の処理単位の符号化は量子化処理を含み、
前記フレーム単位の前記制御情報は、さらに、
前記量子化処理に用いる量子化パラメータとして、前記複数の処理単位に対して同一のパラメータを用いるか、個別のパラメータを用いるか、を示す第２情報を含む
請求項１記載の三次元データ符号化方法。
【請求項３】
前記複数の処理単位は、空間的に重複する２つの処理単位を含み、
前記ビットストリームは、前記２つの処理単位が重複する領域において、位置情報が同じ複数の三次元点であって、かつ、異なる処理単位に属する複数の三次元点が存在するか否かを示す第３情報を含む
請求項１又は２記載の三次元データ符号化方法。
【請求項４】
複数の三次元点を含む対象フレームが分割された複数の処理単位が符号化されることで生成されたビットストリームを取得し、
前記ビットストリームから前記複数の処理単位を復号し、
前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含み、
前記複数の処理単位の復号では、前記第１情報を用いて前記複数の処理単位を復号する
三次元データ復号方法。
【請求項５】
前記複数の処理単位の復号は逆量子化処理を含み、
前記フレーム単位の前記制御情報は、さらに、
前記逆量子化処理に用いる量子化パラメータとして、前記複数の処理単位に対して同一のパラメータを用いるか、個別のパラメータを用いるか、を示す第２情報を含む
請求項４記載の三次元データ復号方法。
【請求項６】
前記複数の処理単位は、空間的に重複する２つの処理単位を含み、
前記ビットストリームは、前記２つの処理単位が重複する領域において、位置情報が同じ複数の三次元点であって、かつ、異なる処理単位に属する複数の三次元点が存在するか否かを示す第３情報を含む
請求項４又は５記載の三次元データ復号方法。
【請求項７】
プロセッサと、
メモリとを備え、
前記プロセッサは、前記メモリを用いて、
複数の三次元点を含む対象フレームを複数の処理単位に分割し、
前記複数の処理単位を符号化することでビットストリームを生成し、
前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含む
三次元データ符号化装置。
【請求項８】
プロセッサと、
メモリとを備え、
前記プロセッサは、前記メモリを用いて、
複数の三次元点を含む対象フレームが分割された複数の処理単位が符号化されることで生成されたビットストリームを取得し、
前記ビットストリームから前記複数の処理単位を復号し、
前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含み、
前記複数の処理単位の復号では、前記第１情報を用いて前記複数の処理単位を復号する
三次元データ復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置に関する。
【背景技術】
【０００２】
自動車或いはロボットが自律的に動作するためのコンピュータビジョン、マップ情報、監視、インフラ点検、又は、映像配信など、幅広い分野において、今後、三次元データを活用した装置又はサービスの普及が見込まれる。三次元データは、レンジファインダなどの距離センサ、ステレオカメラ、又は複数の単眼カメラの組み合わせなど様々な方法で取得される。【０００３】
三次元データの表現方法の１つとして、三次元空間内の点群によって三次元構造の形状を表すポイントクラウドと呼ばれる表現方法がある。ポイントクラウドでは、点群の位置と色とが格納される。ポイントクラウドは三次元データの表現方法として主流になると予想されるが、点群はデータ量が非常に大きい。よって、三次元データの蓄積又は伝送においては二次元の動画像（一例として、ＭＰＥＧで規格化されたＭＰＥＧ−４  ＡＶＣ又はＨＥＶＣなどがある）と同様に、符号化によるデータ量の圧縮が必須となる。【０００４】
また、ポイントクラウドの圧縮については、ポイントクラウド関連の処理を行う公開のライブラリ（Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｌｉｂｒａｒｙ）などによって一部サポートされている。【０００５】
また、三次元の地図データを用いて、車両周辺に位置する施設を検索し、表示する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１４／０２０６６３号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
三次元データの符号化処理では、データ量を削減できることが望まれている。【０００８】
本開示は、データ量を削減できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本開示の一態様に係る三次元データ符号化方法は、複数の三次元点を含む対象フレームを複数の処理単位に分割し、前記複数の処理単位を符号化することでビットストリームを生成し、前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含む。【００１０】
本開示の一態様に係る三次元データ復号方法は、複数の三次元点を含む対象フレームが分割された複数の処理単位が符号化されることで生成されたビットストリームを取得し、前記ビットストリームから前記複数の処理単位を復号し、前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含み、前記複数の処理単位の復号では、前記第１情報を用いて前記複数の処理単位を復号する。
【発明の効果】
【００１１】
本開示は、データ量を削減できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供できる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施の形態１に係る三次元データ符号化復号システムの構成を示す図である。
【図２】図２は、実施の形態１に係る点群データの構成例を示す図である。
【図３】図３は、実施の形態１に係る点群データ情報が記述されたデータファイルの構成例を示す図である。
【図４】図４は、実施の形態１に係る点群データの種類を示す図である。
【図５】図５は、実施の形態１に係る第１の符号化部の構成を示す図である。
【図６】図６は、実施の形態１に係る第１の符号化部のブロック図である。
【図７】図７は、実施の形態１に係る第１の復号部の構成を示す図である。
【図８】図８は、実施の形態１に係る第１の復号部のブロック図である。
【図９】図９は、実施の形態１に係る第２の符号化部の構成を示す図である。
【図１０】図１０は、実施の形態１に係る第２の符号化部のブロック図である。
【図１１】図１１は、実施の形態１に係る第２の復号部の構成を示す図である。
【図１２】図１２は、実施の形態１に係る第２の復号部のブロック図である。
【図１３】図１３は、実施の形態１に係るＰＣＣ符号化データに関わるプロトコルスタックを示す図である。
【図１４】図１４は、実施の形態２に係るＩＳＯＢＭＦＦの基本構造を示す図である。
【図１５】図１５は、実施の形態２に係るプロトコルスタックを示す図である。
【図１６】図１６は、実施の形態２に係るＮＡＬユニットをコーデック１用のファイルに格納する例を示す図である。
【図１７】図１７は、実施の形態２に係るＮＡＬユニットをコーデック２用のファイルに格納する例を示す図である。
【図１８】図１８は、実施の形態２に係る第１の多重化部の構成を示す図である。
【図１９】図１９は、実施の形態２に係る第１の逆多重化部の構成を示す図である。
【図２０】図２０は、実施の形態２に係る第２の多重化部の構成を示す図である。
【図２１】図２１は、実施の形態２に係る第２の逆多重化部の構成を示す図である。
【図２２】図２２は、実施の形態２に係る第１の多重化部による処理のフローチャートである。
【図２３】図２３は、実施の形態２に係る第２の多重化部による処理のフローチャートである。
【図２４】図２４は、実施の形態２に係る第１の逆多重化部及び第１の復号部による処理のフローチャートである。
【図２５】図２５は、実施の形態２に係る第２の逆多重化部及び第２の復号部による処理のフローチャートである。
【図２６】図２６は、実施の形態３に係る符号化部及び第３の多重化部の構成を示す図である。
【図２７】図２７は、実施の形態３に係る第３の逆多重化部及び復号部の構成を示す図である。
【図２８】図２８は、実施の形態３に係る第３の多重化部による処理のフローチャートである。
【図２９】図２９は、実施の形態３に係る第３の逆多重化部及び復号部による処理のフローチャートである。
【図３０】図３０は、実施の形態３に係る三次元データ格納装置による処理のフローチャートである。
【図３１】図３１は、実施の形態３に係る三次元データ取得装置による処理のフローチャートである。
【図３２】図３２は、実施の形態４に係る符号化部及び多重化部の構成を示す図である。
【図３３】図３３は、実施の形態４に係る符号化データの構成例を示す図である。
【図３４】図３４は、実施の形態４に係る符号化データ及びＮＡＬユニットの構成例を示す図である。
【図３５】図３５は、実施の形態４に係るｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅのセマンティクス例を示す図である。
【図３６】図３６は、実施の形態４に係るＮＡＬユニットの送出順序の例を示す図である。
【図３７】図３７は、実施の形態５に係るスライス及びタイルの分割例を示す図である。
【図３８】図３８は、実施の形態５に係るスライス及びタイルの分割パターンの例を示す図である。
【図３９】図３９は、実施の形態６に係る第１の符号化部のブロック図である。
【図４０】図４０は、実施の形態６に係る第１の復号部のブロック図である。
【図４１】図４１は、実施の形態６に係るタイルの形状の例を示す図である。
【図４２】図４２は、実施の形態６に係るタイル及びスライスの例を示す図である。
【図４３】図４３は、実施の形態６に係る分割部のブロック図である。
【図４４】図４４は、実施の形態６に係る点群データを上面視した地図の例を示す図である。
【図４５】図４５は、実施の形態６に係るタイル分割の例を示す図である。
【図４６】図４６は、実施の形態６に係るタイル分割の例を示す図である。
【図４７】図４７は、実施の形態６に係るタイル分割の例を示す図である。
【図４８】図４８は、実施の形態６に係るサーバに保存されるタイルのデータの例を示す図である。
【図４９】図４９は、実施の形態６に係るタイル分割に関するシステムを示す図である。
【図５０】図５０は、実施の形態６に係るスライス分割の例を示す図である。
【図５１】図５１は、実施の形態６に係る依存関係の例を示す図である。
【図５２】図５２は、実施の形態６に係るデータの復号順の例を示す図である。
【図５３】図５３は、実施の形態６に係るタイルの符号化データの例を示す図である。
【図５４】図５４は、実施の形態６に係る結合部のブロック図である。
【図５５】図５５は、実施の形態６に係る符号化データ及びＮＡＬユニットの構成例を示す図である。
【図５６】図５６は、実施の形態６に係る符号化処理のフローチャートである。
【図５７】図５７は、実施の形態６に係る復号処理のフローチャートである。
【図５８】図５８は、実施の形態６に係るタイル付加情報のシンタックス例を示す図である。
【図５９】図５９は、実施の形態６に係る符号化復号システムのブロック図である。
【図６０】図６０は、実施の形態６に係るスライス付加情報のシンタックス例を示す図である。
【図６１】図６１は、実施の形態６に係る符号化処理のフローチャートである。
【図６２】図６２は、実施の形態６に係る復号処理のフローチャートである。
【図６３】図６３は、実施の形態６に係る符号化処理のフローチャートである。
【図６４】図６４は、実施の形態６に係る復号処理のフローチャートである。
【図６５】図６５は、実施の形態７に係る量子化部、および、逆量子化部の処理について説明するための図である。
【図６６】図６６は、実施の形態７に係る量子化値のデフォルト値と量子化デルタとを説明するための図である。
【図６７】図６７は、実施の形態７に係る三次元データ符号化装置に含まれる第１の符号化部の構成を示すブロック図である。
【図６８】図６８は、実施の形態７に係る分割部の構成を示すブロック図である。
【図６９】図６９は、実施の形態７に係る位置情報符号化部および属性情報符号化部の構成を示すブロック図である。
【図７０】図７０は、実施の形態７に係る第１の復号部の構成を示すブロック図である。
【図７１】図７１は、実施の形態７に係る位置情報復号部および属性情報復号部の構成を示すブロック図である。
【図７２】図７２は、実施の形態７に係る位置情報の符号化あるいは属性情報の符号化における量子化値の決定に関する処理の一例を示すフローチャートである。
【図７３】図７３は、実施の形態７に係る位置情報および属性情報の復号処理の一例を示すフローチャートである。
【図７４】図７４は、実施の形態７に係る量子化パラメータの伝送方法の第１の例について説明するための図である。
【図７５】図７５は、実施の形態７に係る量子化パラメータの伝送方法の第２の例について説明するための図である。
【図７６】図７６は、実施の形態８に係る重複点を説明するための図である。
【図７７】図７７は、実施の形態８に係る重複点に対する処理を説明するための図である。
【図７８】図７８は、実施の形態８に係るヘッダ情報のシンタックス例を示す図である。
【図７９】図７９は、実施の形態８に係るノードの情報のシンタックス例を示す図である。
【図８０】図８０は、実施の形態８に係る三次元データ符号化処理のフローチャートである。
【図８１】図８１は、実施の形態８に係る三次元データ符号化処理のフローチャートである。
【図８２】図８２は、実施の形態８に係る三次元データ復号処理のフローチャートである。
【図８３】図８３は、実施の形態８に係る三次元データ符号化装置のブロック図である。
【図８４】図８４は、実施の形態８に係る三次元データ復号装置のブロック図である。
【図８５】図８５は、実施の形態８に係る三次元データ符号化処理の変形例のフローチャートである。
【図８６】図８６は、実施の形態９に係る三次元データ符号化装置及び三次元データ復号装置のブロック図である。
【図８７】図８７は、実施の形態９に係る量子化部のブロック図である。
【図８８】図８８は、実施の形態９に係る量子化処理の例を示す図である。
【図８９】図８９は、実施の形態９に係るタイル毎の量子化処理を模式的に示す図である。
【図９０】図９０は、実施の形態９に係るＧＰＳのシンタックス例を示す図である。
【図９１】図９１は、実施の形態９に係るタイル情報のシンタックス例を示す図である。
【図９２】図９２は、実施の形態９に係るノード情報のシンタックス例を示す図である。
【図９３】図９３は、実施の形態９に係る三次元データ符号化処理のフローチャートである。
【図９４】図９４は、実施の形態９に係る三次元データ符号化処理のフローチャートである。
【図９５】図９５は、実施の形態９に係る三次元データ復号処理のフローチャートである。
【図９６】図９６は、実施の形態９に係るタイル分割の例を示す図である。
【図９７】図９７は、実施の形態９に係るタイル分割の例を示す図である。
【図９８】図９８は、実施の形態９に係る三次元データ符号化処理のフローチャートである。
【図９９】図９９は、実施の形態９に係る三次元データ符号化装置のブロック図である。
【図１００】図１００は、実施の形態９に係るＧＰＳのシンタックス例を示す図である。
【図１０１】図１０１は、実施の形態９に係る三次元データ復号処理のフローチャートである。
【図１０２】図１０２は、実施の形態９に係るアプリケーションの例を示す図である。
【図１０３】図１０３は、実施の形態９に係るタイル分割及びスライス分割の例を示す図である。
【図１０４】図１０４は、実施の形態９に係るシステムにおける処理のフローチャートである。
【図１０５】図１０５は、実施の形態９に係るシステムにおける処理のフローチャートである。
【図１０６】図１０６は、実施の形態９に係る符号化処理のフローチャートである。
【図１０７】図１０７は、実施の形態９に係る復号処理のフローチャートである。
【発明を実施するための形態】
【００１３】
本開示の一態様に係る三次元データ符号化方法は、複数の三次元点を含む対象フレームを複数の処理単位に分割し、前記複数の処理単位を符号化することでビットストリームを生成し、前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含む。
【００１４】
これによれば、フレーム単位で重複点の有無を通知できるのでビットストリームのデータ量を削減できる。
【００１５】
例えば、前記複数の処理単位の符号化は量子化処理を含み、前記フレーム単位の前記制御情報は、さらに、前記量子化処理に用いる量子化パラメータとして、前記複数の処理単位に対して同一のパラメータを用いるか、個別のパラメータを用いるか、を示す第２情報を含んでもよい。
【００１６】
これによれば、フレーム単位で量子化パラメータを設定するか否か通知できるのでビットストリームのデータ量を削減できる。
【００１７】
例えば、前記複数の処理単位は、空間的に重複する２つの処理単位を含み、前記ビットストリームは、前記２つの処理単位が重複する領域において、位置情報が同じ複数の三次元点であって、かつ、異なる処理単位に属する複数の三次元点が存在するか否かを示す第３情報を含んでもよい。
【００１８】
これによれば、三次元データ復号装置は、第３情報を用いて、処理単位が重複する領域における重複点の有無に応じて処理内容を制御できる。よって、三次元データ復号装置における処理負荷を低減できる。
【００１９】
本開示の一態様に係る三次元データ復号方法は、複数の三次元点を含む対象フレームが分割された複数の処理単位が符号化されることで生成されたビットストリームを取得し、前記ビットストリームから前記複数の処理単位を復号し、前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含み、前記複数の処理単位の復号では、前記第１情報を用いて前記複数の処理単位を復号する。
【００２０】
これによれば、フレーム単位で重複点の有無を通知できるのでビットストリームのデータ量を削減できる。
【００２１】
例えば、前記複数の処理単位の復号は逆量子化処理を含み、前記フレーム単位の前記制御情報は、さらに、前記逆量子化処理に用いる量子化パラメータとして、前記複数の処理単位に対して同一のパラメータを用いるか、個別のパラメータを用いるか、を示す第２情報を含む。
【００２２】
これによれば、フレーム単位で量子化パラメータを設定するか否か通知できるのでビットストリームのデータ量を削減できる。
【００２３】
例えば、前記複数の処理単位は、空間的に重複する２つの処理単位を含み、前記ビットストリームは、前記２つの処理単位が重複する領域において、位置情報が同じ複数の三次元点であって、かつ、異なる処理単位に属する複数の三次元点が存在するか否かを示す第３情報を含む。
【００２４】
これによれば、三次元データ復号装置は、第３情報を用いて、処理単位が重複する領域における重複点の有無に応じて処理内容を制御できる。よって、三次元データ復号装置における処理負荷を低減できる。
【００２５】
また、本開示の一態様に係る三次元データ符号化装置は、プロセッサと、メモリとを備え、前記プロセッサは、前記メモリを用いて、複数の三次元点を含む対象フレームを複数の処理単位に分割し、前記複数の処理単位を符号化することでビットストリームを生成し、前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含む。
【００２６】
これによれば、フレーム単位で重複点の有無を通知できるのでビットストリームのデータ量を削減できる。
【００２７】
また、本開示の一態様に係る三次元データ復号装置は、プロセッサと、メモリとを備え、前記プロセッサは、前記メモリを用いて、複数の三次元点を含む対象フレームが分割された複数の処理単位が符号化されることで生成されたビットストリームを取得し、前記ビットストリームから前記複数の処理単位を復号し、前記ビットストリームに含まれるフレーム単位の制御情報は、（ｉ）前記対象フレームに含まれる前記複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）前記複数の処理単位のいずれにも前記重複点が存在しないか、を示す第１情報を含み、前記複数の処理単位の復号では、前記第１情報を用いて前記複数の処理単位を復号する。
【００２８】
これによれば、フレーム単位で重複点の有無を通知できるのでビットストリームのデータ量を削減できる。
【００２９】
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【００３０】
以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【００３１】
（実施の形態１）
ポイントクラウドの符号化データを実際の装置又はサービスにおいて使用する際には、ネットワーク帯域を抑制するために用途に応じて必要な情報を送受信することが望ましい。しかしながら、これまで、三次元データの符号化構造にはそのような機能が存在せず、そのための符号化方法も存在しなかった。
【００３２】
本実施の形態では、三次元のポイントクラウドの符号化データにおいて用途に応じて必要な情報を送受信する機能を提供するための三次元データ符号化方法及び三次元データ符号化装置、並びに、当該符号化データを復号する三次元データ復号方法及び三次元データ復号装置、並びに、当該符号化データを多重化する三次元データ多重化方法、並びに、当該符号化データを伝送する三次元データ伝送方法について説明する。
【００３３】
特に、現在、点群データの符号化方法（符号化方式）として第１の符号化方法、及び第２の符号化方法が検討されているが、符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法が定義されておらず、このままでは符号化部におけるＭＵＸ処理（多重化）、又は、伝送或いは蓄積ができないという課題がある。
【００３４】
また、ＰＣＣ（Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｃｏｍｐｒｅｓｓｉｏｎ）のように、第１の符号化方法と第２の符号化方法の２つのコーデックが混在するフォーマットをサポートする方法はこれまで存在しない。
【００３５】
本実施の形態では、第１の符号化方法と第２の符号化方法の２つのコーデックが混在するＰＣＣ符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法について説明する。
【００３６】
まず、本実施の形態に係る三次元データ（点群データ）符号化復号システムの構成を説明する。図１は、本実施の形態に係る三次元データ符号化復号システムの構成例を示す図である。図１に示すように、三次元データ符号化復号システムは、三次元データ符号化システム４６０１と、三次元データ復号システム４６０２と、センサ端末４６０３と、外部接続部４６０４とを含む。
【００３７】
三次元データ符号化システム４６０１は、三次元データである点群データを符号化することで符号化データ又は多重化データを生成する。なお、三次元データ符号化システム４６０１は、単一の装置により実現される三次元データ符号化装置であってもよいし、複数の装置により実現されるシステムであってもよい。また、三次元データ符号化装置は、三次元データ符号化システム４６０１に含まれる複数の処理部のうち一部を含んでもよい。
【００３８】
三次元データ符号化システム４６０１は、点群データ生成システム４６１１と、提示部４６１２と、符号化部４６１３と、多重化部４６１４と、入出力部４６１５と、制御部４６１６とを含む。点群データ生成システム４６１１は、センサ情報取得部４６１７と、点群データ生成部４６１８とを含む。
【００３９】
センサ情報取得部４６１７は、センサ端末４６０３からセンサ情報を取得し、センサ情報を点群データ生成部４６１８に出力する。点群データ生成部４６１８は、センサ情報から点群データを生成し、点群データを符号化部４６１３へ出力する。
【００４０】
提示部４６１２は、センサ情報又は点群データをユーザに提示する。例えば、提示部４６１２は、センサ情報又は点群データに基づく情報又は画像を表示する。
【００４１】
符号化部４６１３は、点群データを符号化（圧縮）し、得られた符号化データと、符号化過程において得られた制御情報と、その他の付加情報とを多重化部４６１４へ出力する。付加情報は、例えば、センサ情報を含む。
【００４２】
多重化部４６１４は、符号化部４６１３から入力された符号化データと、制御情報と、付加情報とを多重することで多重化データを生成する。多重化データのフォーマットは、例えば蓄積のためのファイルフォーマット、又は伝送のためのパケットフォーマットである。
【００４３】
入出力部４６１５（例えば、通信部又はインタフェース）は、多重化データを外部へ出力する。または、多重化データは、内部メモリ等の蓄積部に蓄積される。制御部４６１６（またはアプリ実行部）は、各処理部を制御する。つまり、制御部４６１６は、符号化及び多重化等の制御を行う。
【００４４】
なお、センサ情報が符号化部４６１３又は多重化部４６１４へ入力されてもよい。また、入出力部４６１５は、点群データ又は符号化データをそのまま外部へ出力してもよい。
【００４５】
三次元データ符号化システム４６０１から出力された伝送信号（多重化データ）は、外部接続部４６０４を介して、三次元データ復号システム４６０２に入力される。
【００４６】
三次元データ復号システム４６０２は、符号化データ又は多重化データを復号することで三次元データである点群データを生成する。なお、三次元データ復号システム４６０２は、単一の装置により実現される三次元データ復号装置であってもよいし、複数の装置により実現されるシステムであってもよい。また、三次元データ復号装置は、三次元データ復号システム４６０２に含まれる複数の処理部のうち一部を含んでもよい。
【００４７】
三次元データ復号システム４６０２は、センサ情報取得部４６２１と、入出力部４６２２と、逆多重化部４６２３と、復号部４６２４と、提示部４６２５と、ユーザインタフェース４６２６と、制御部４６２７とを含む。
【００４８】
センサ情報取得部４６２１は、センサ端末４６０３からセンサ情報を取得する。
【００４９】
入出力部４６２２は、伝送信号を取得し、伝送信号から多重化データ（ファイルフォーマット又はパケット）を復号し、多重化データを逆多重化部４６２３へ出力する。
【００５０】
逆多重化部４６２３は、多重化データから符号化データ、制御情報及び付加情報を取得し、符号化データ、制御情報及び付加情報を復号部４６２４へ出力する。
【００５１】
復号部４６２４は、符号化データを復号することで点群データを再構成する。
【００５２】
提示部４６２５は、点群データをユーザに提示する。例えば、提示部４６２５は、点群データに基づく情報又は画像を表示する。ユーザインタフェース４６２６は、ユーザの操作に基づく指示を取得する。制御部４６２７（またはアプリ実行部）は、各処理部を制御する。つまり、制御部４６２７は、逆多重化、復号及び提示等の制御を行う。
【００５３】
なお、入出力部４６２２は、点群データ又は符号化データをそのまま外部から取得してもよい。また、提示部４６２５は、センサ情報などの付加情報を取得し、付加情報に基づいた情報を提示してもよい。また、提示部４６２５は、ユーザインタフェース４６２６で取得されたユーザの指示に基づき、提示を行ってもよい。
【００５４】
センサ端末４６０３は、センサで得られた情報であるセンサ情報を生成する。センサ端末４６０３は、センサ又はカメラを搭載した端末であり、例えば、自動車などの移動体、飛行機などの飛行物体、携帯端末、又はカメラなどがある。
【００５５】
センサ端末４６０３で取得可能なセンサ情報は、例えば、（１）ＬＩＤＡＲ、ミリ波レーダ、又は赤外線センサから得られる、センサ端末４６０３と対象物との距離、又は対象物の反射率、（２）複数の単眼カメラ画像又はステレオカメラ画像から得られるカメラと対象物との距離又は対象物の反射率等である。また、センサ情報は、センサの姿勢、向き、ジャイロ（角速度）、位置（ＧＰＳ情報又は高度）、速度、又は加速度等を含んでもよい。また、センサ情報は、気温、気圧、湿度、又は磁気等を含んでもよい。
【００５６】
外部接続部４６０４は、集積回路（ＬＳＩ又はＩＣ）、外部蓄積部、インターネットを介したクラウドサーバとの通信、又は、放送等により実現される。
【００５７】
次に、点群データについて説明する。図２は、点群データの構成を示す図である。図３は、点群データの情報が記述されたデータファイルの構成例を示す図である。
【００５８】
点群データは、複数の点のデータを含む。各点のデータは、位置情報（三次元座標）、及びその位置情報に対する属性情報とを含む。この点が複数集まったものを点群と呼ぶ。例えば、点群は対象物（オブジェクト）の三次元形状を示す。
【００５９】
三次元座標等の位置情報（Ｐｏｓｉｔｉｏｎ）をジオメトリ（ｇｅｏｍｅｔｒｙ）と呼ぶこともある。また、各点のデータは、複数の属性種別の属性情報（ａｔｔｒｉｂｕｔｅ）を含んでもよい。属性種別は、例えば色又は反射率などである。
【００６０】
１つの位置情報に対して１つの属性情報が対応付けられてもよいし、１つの位置情報に対して複数の異なる属性種別を持つ属性情報が対応付けられてもよい。また、１つの位置情報に対して同じ属性種別の属性情報が複数対応付けられてもよい。
【００６１】
図３に示すデータファイルの構成例は、位置情報と属性情報とが１対１に対応する場合の例であり、点群データを構成するＮ個の点の位置情報と属性情報とを示している。
【００６２】
位置情報は、例えば、ｘ、ｙ、ｚの３軸の情報である。属性情報は、例えば、ＲＧＢの色情報である。代表的なデータファイルとしてｐｌｙファイルなどがある。
【００６３】
次に、点群データの種類について説明する。図４は、点群データの種類を示す図である。図４に示すように、点群データには、静的オブジェクトと、動的オブジェクトとがある。
【００６４】
静的オブジェクトは、任意の時間（ある時刻）の三次元点群データである。動的オブジェクトは、時間的に変化する三次元点群データである。以降、ある時刻の三次元点群データをＰＣＣフレーム、又はフレームと呼ぶ。
【００６５】
オブジェクトは、通常の映像データのように、ある程度領域が制限されている点群であってもよいし、地図情報のように領域が制限されていない大規模点群であってもよい。
【００６６】
また、様々な密度の点群データがあり、疎な点群データと、密な点群データとが存在してもよい。
【００６７】
以下、各処理部の詳細について説明する。センサ情報は、ＬＩＤＡＲ或いはレンジファインダなどの距離センサ、ステレオカメラ、又は、複数の単眼カメラの組合せなど様々な方法で取得される。点群データ生成部４６１８は、センサ情報取得部４６１７で得られたセンサ情報に基づき点群データを生成する。点群データ生成部４６１８は、点群データとして、位置情報を生成し、位置情報に、当該位置情報に対する属性情報を付加する。
【００６８】
点群データ生成部４６１８は、位置情報の生成又は属性情報の付加の際に、点群データを加工してもよい。例えば、点群データ生成部４６１８は、位置が重複する点群を削除することでデータ量を減らしてもよい。また、点群データ生成部４６１８は、位置情報を変換（位置シフト、回転又は正規化など）してもよいし、属性情報をレンダリングしてもよい。
【００６９】
なお、図１では、点群データ生成システム４６１１は、三次元データ符号化システム４６０１に含まれるが、三次元データ符号化システム４６０１の外部に独立して設けられてもよい。
【００７０】
符号化部４６１３は、点群データを予め規定された符号化方法に基づき符号化することで符号化データを生成する。符号化方法には大きく以下の２種類がある。一つ目は、位置情報を用いた符号化方法であり、この符号化方法を、以降、第１の符号化方法と記載する。二つ目は、ビデオコーデックを用いた符号化方法であり、この符号化方法を、以降、第２の符号化方法と記載する。
【００７１】
復号部４６２４は、符号化データを予め規定された符号化方法に基づき復号することで点群データを復号する。
【００７２】
多重化部４６１４は、符号化データを、既存の多重化方式を用いて多重化することで多重化データを生成する。生成された多重化データは、伝送又は蓄積される。多重化部４６１４は、ＰＣＣ符号化データの他に、映像、音声、字幕、アプリケーション、ファイルなどの他のメディア、又は基準時刻情報を多重化する。また、多重化部４６１４は、さらに、センサ情報又は点群データに関連する属性情報を多重してもよい。
【００７３】
多重化方式又はファイルフォーマットとしては、ＩＳＯＢＭＦＦ、ＩＳＯＢＭＦＦベースの伝送方式であるＭＰＥＧ−ＤＡＳＨ、ＭＭＴ、ＭＰＥＧ−２  ＴＳ  Ｓｙｓｔｅｍｓ、ＲＭＰなどがある。
【００７４】
逆多重化部４６２３は、多重化データからＰＣＣ符号化データ、その他のメディア、及び時刻情報などを抽出する。
【００７５】
入出力部４６１５は、多重化データを、放送又は通信など、伝送する媒体又は蓄積する媒体にあわせた方法を用いて伝送する。入出力部４６１５は、インターネット経由で他のデバイスと通信してもよいし、クラウドサーバなどの蓄積部と通信してもよい。
【００７６】
通信プロトコルとしては、ｈｔｔｐ、ｆｔｐ、ＴＣＰ又はＵＤＰなどが用いられる。ＰＵＬＬ型の通信方式が用いられてもよいし、ＰＵＳＨ型の通信方式が用いられてもよい。
【００７７】
有線伝送及び無線伝送のいずれが用いられてもよい。有線伝送としては、Ｅｔｈｅｒｎｅｔ（登録商標）、ＵＳＢ、ＲＳ−２３２Ｃ、ＨＤＭＩ（登録商標）、又は同軸ケーブルなどが用いられる。無線伝送としては、無線ＬＡＮ、Ｗｉ−Ｆｉ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）又はミリ波などが用いられる。
【００７８】
また、放送方式としては、例えばＤＶＢ−Ｔ２、ＤＶＢ−Ｓ２、ＤＶＢ−Ｃ２、ＡＴＳＣ３．０、又はＩＳＤＢ−Ｓ３などが用いられる。
【００７９】
図５は、第１の符号化方法の符号化を行う符号化部４６１３の例である第１の符号化部４６３０の構成を示す図である。図６は、第１の符号化部４６３０のブロック図である。第１の符号化部４６３０は、点群データを第１の符号化方法で符号化することで符号化データ（符号化ストリーム）を生成する。この第１の符号化部４６３０は、位置情報符号化部４６３１と、属性情報符号化部４６３２と、付加情報符号化部４６３３と、多重化部４６３４とを含む。
【００８０】
第１の符号化部４６３０は、三次元構造を意識して符号化を行うという特徴を有する。また、第１の符号化部４６３０は、属性情報符号化部４６３２が、位置情報符号化部４６３１から得られる情報を用いて符号を行うという特徴を有する。第１の符号化方法は、ＧＰＣＣ（Ｇｅｏｍｅｔｒｙ  ｂａｓｅｄ  ＰＣＣ）とも呼ばれる。
【００８１】
点群データは、ＰＬＹファイルのようなＰＣＣ点群データ、又は、センサ情報から生成されたＰＣＣ点群データであり、位置情報（Ｐｏｓｉｔｉｏｎ）、属性情報（Ａｔｔｒｉｂｕｔｅ）、及びその他の付加情報（ＭｅｔａＤａｔａ）を含む。位置情報は位置情報符号化部４６３１に入力され、属性情報は属性情報符号化部４６３２に入力され、付加情報は付加情報符号化部４６３３に入力される。
【００８２】
位置情報符号化部４６３１は、位置情報を符号化することで符号化データである符号化位置情報（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ）を生成する。例えば、位置情報符号化部４６３１は、８分木等のＮ分木構造を用いて位置情報を符号化する。具体的には、８分木では、対象空間が８個のノード（サブ空間）に分割され、各ノードに点群が含まれるか否かを示す８ビットの情報（オキュパンシー符号）が生成される。また、点群が含まれるノードは、さらに、８個のノードに分割され、当該８個のノードの各々に点群が含まれるか否かを示す８ビットの情報が生成される。この処理が、予め定められた階層又はノードに含まれる点群の数の閾値以下になるまで繰り返される。
【００８３】
属性情報符号化部４６３２は、位置情報符号化部４６３１で生成された構成情報を用いて符号化することで符号化データである符号化属性情報（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ）を生成する。例えば、属性情報符号化部４６３２は、位置情報符号化部４６３１で生成された８分木構造に基づき、処理対象の対象点（対象ノード）の符号化において参照する参照点（参照ノード）を決定する。例えば、属性情報符号化部４６３２は、周辺ノード又は隣接ノードのうち、８分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
【００８４】
また、属性情報の符号化処理は、量子化処理、予測処理、及び算術符号化処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、符号化のパラメータの決定に参照ノードの状態（例えば、参照ノードに点群が含まれる否かを示す占有情報）を用いること、である。例えば、符号化のパラメータとは、量子化処理における量子化パラメータ、又は算術符号化におけるコンテキスト等である。
【００８５】
付加情報符号化部４６３３は、付加情報のうち、圧縮可能なデータを符号化することで符号化データである符号化付加情報（Ｃｏｍｐｒｅｓｓｅｄ  ＭｅｔａＤａｔａ）を生成する。
【００８６】
多重化部４６３４は、符号化位置情報、符号化属性情報、符号化付加情報及びその他の付加情報を多重化することで符号化データである符号化ストリーム（Ｃｏｍｐｒｅｓｓｅｄ  Ｓｔｒｅａｍ）を生成する。生成された符号化ストリームは、図示しないシステムレイヤの処理部へ出力される。
【００８７】
次に、第１の符号化方法の復号を行う復号部４６２４の例である第１の復号部４６４０について説明する。図７は、第１の復号部４６４０の構成を示す図である。図８は、第１の復号部４６４０のブロック図である。第１の復号部４６４０は、第１の符号化方法で符号化された符号化データ（符号化ストリーム）を、第１の符号化方法で復号することで点群データを生成する。この第１の復号部４６４０は、逆多重化部４６４１と、位置情報復号部４６４２と、属性情報復号部４６４３と、付加情報復号部４６４４とを含む。
【００８８】
図示しないシステムレイヤの処理部から符号化データである符号化ストリーム（Ｃｏｍｐｒｅｓｓｅｄ  Ｓｔｒｅａｍ）が第１の復号部４６４０に入力される。
【００８９】
逆多重化部４６４１は、符号化データから、符号化位置情報（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ）、符号化属性情報（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ）、符号化付加情報（Ｃｏｍｐｒｅｓｓｅｄ  ＭｅｔａＤａｔａ）、及び、その他の付加情報を分離する。
【００９０】
位置情報復号部４６４２は、符号化位置情報を復号することで位置情報を生成する。例えば、位置情報復号部４６４２は、８分木等のＮ分木構造で表される符号化位置情報から三次元座標で表される点群の位置情報を復元する。
【００９１】
属性情報復号部４６４３は、位置情報復号部４６４２で生成された構成情報に基づき、符号化属性情報を復号する。例えば、属性情報復号部４６４３は、位置情報復号部４６４２で得られた８分木構造に基づき、処理対象の対象点（対象ノード）の復号において参照する参照点（参照ノード）を決定する。例えば、属性情報復号部４６４３は、周辺ノード又は隣接ノードのうち、８分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
【００９２】
また、属性情報の復号処理は、逆量子化処理、予測処理、及び算術復号処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、復号のパラメータの決定に参照ノードの状態（例えば、参照ノードに点群が含まれる否かを示す占有情報）を用いること、である。例えば、復号のパラメータとは、逆量子化処理における量子化パラメータ、又は算術復号におけるコンテキスト等である。
【００９３】
付加情報復号部４６４４は、符号化付加情報を復号することで付加情報を生成する。また、第１の復号部４６４０は、位置情報及び属性情報の復号処理に必要な付加情報を復号時に使用し、アプリケーションに必要な付加情報を外部に出力する。
【００９４】
次に、第２の符号化方法の符号化を行う符号化部４６１３の例である第２の符号化部４６５０について説明する。図９は、第２の符号化部４６５０の構成を示す図である。図１０は、第２の符号化部４６５０のブロック図である。
【００９５】
第２の符号化部４６５０は、点群データを第２の符号化方法で符号化することで符号化データ（符号化ストリーム）を生成する。この第２の符号化部４６５０は、付加情報生成部４６５１と、位置画像生成部４６５２と、属性画像生成部４６５３と、映像符号化部４６５４と、付加情報符号化部４６５５と、多重化部４６５６とを含む。
【００９６】
第２の符号化部４６５０は、三次元構造を二次元画像に投影することで位置画像及び属性画像を生成し、生成した位置画像及び属性画像を既存の映像符号化方式を用いて符号化するという特徴を有する。第２の符号化方法は、ＶＰＣＣ（Ｖｉｄｅｏ  ｂａｓｅｄ  ＰＣＣ）とも呼ばれる。
【００９７】
点群データは、ＰＬＹファイルのようなＰＣＣ点群データ、又は、センサ情報から生成されたＰＣＣ点群データであり、位置情報（Ｐｏｓｉｔｉｏｎ）、属性情報（Ａｔｔｒｉｂｕｔｅ）、及びその他の付加情報ＭｅｔａＤａｔａ）を含む。
【００９８】
付加情報生成部４６５１は、三次元構造を二次元画像に投影することで、複数の二次元画像のマップ情報を生成する。
【００９９】
位置画像生成部４６５２は、位置情報と、付加情報生成部４６５１で生成されたマップ情報とに基づき、位置画像（Ｇｅｏｍｅｔｒｙ  Ｉｍａｇｅ）を生成する。この位置画像は、例えば、画素値として距離（Ｄｅｐｔｈ）が示される距離画像である。なお、この距離画像は、一つの視点から複数の点群を見た画像（一つの二次元平面に複数の点群を投影した画像）であってもよいし、複数の視点から複数の点群を見た複数の画像であってもよいし、これらの複数の画像を統合した一つの画像であってもよい。
【０１００】
属性画像生成部４６５３は、属性情報と、付加情報生成部４６５１で生成されたマップ情報とに基づき、属性画像を生成する。この属性画像は、例えば、画素値として属性情報（例えば色（ＲＧＢ））が示される画像である。なお、この画像は、一つの視点から複数の点群を見た画像（一つの二次元平面に複数の点群を投影した画像）であってもよいし、複数の視点から複数の点群を見た複数の画像であってもよいし、これらの複数の画像を統合した一つの画像であってもよい。
【０１０１】
映像符号化部４６５４は、位置画像及び属性画像を、映像符号化方式を用いて符号化することで、符号化データである符号化位置画像（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ  Ｉｍａｇｅ）及び符号化属性画像（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ  Ｉｍａｇｅ）を生成する。なお、映像符号化方式として、公知の任意の符号化方法が用いられてよい。例えば、映像符号化方式は、ＡＶＣ又はＨＥＶＣ等である。
【０１０２】
付加情報符号化部４６５５は、点群データに含まれる付加情報、及びマップ情報等を符号化することで符号化付加情報（Ｃｏｍｐｒｅｓｓｅｄ  ＭｅｔａＤａｔａ）を生成する。
【０１０３】
多重化部４６５６は、符号化位置画像、符号化属性画像、符号化付加情報、及び、その他の付加情報を多重化することで符号化データである符号化ストリーム（Ｃｏｍｐｒｅｓｓｅｄ  Ｓｔｒｅａｍ）を生成する。生成された符号化ストリームは、図示しないシステムレイヤの処理部へ出力される。
【０１０４】
次に、第２の符号化方法の復号を行う復号部４６２４の例である第２の復号部４６６０について説明する。図１１は、第２の復号部４６６０の構成を示す図である。図１２は、第２の復号部４６６０のブロック図である。第２の復号部４６６０は、第２の符号化方法で符号化された符号化データ（符号化ストリーム）を、第２の符号化方法で復号することで点群データを生成する。この第２の復号部４６６０は、逆多重化部４６６１と、映像復号部４６６２と、付加情報復号部４６６３と、位置情報生成部４６６４と、属性情報生成部４６６５とを含む。
【０１０５】
図示しないシステムレイヤの処理部から符号化データである符号化ストリーム（Ｃｏｍｐｒｅｓｓｅｄ  Ｓｔｒｅａｍ）が第２の復号部４６６０に入力される。
【０１０６】
逆多重化部４６６１は、符号化データから、符号化位置画像（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ  Ｉｍａｇｅ）、符号化属性画像（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ  Ｉｍａｇｅ）、符号化付加情報（Ｃｏｍｐｒｅｓｓｅｄ  ＭｅｔａＤａｔａ）、及び、その他の付加情報を分離する。
【０１０７】
映像復号部４６６２は、符号化位置画像及び符号化属性画像を、映像符号化方式を用いて復号することで、位置画像及び属性画像を生成する。なお、映像符号化方式として、公知の任意の符号化方式が用いられてよい。例えば、映像符号化方式は、ＡＶＣ又はＨＥＶＣ等である。
【０１０８】
付加情報復号部４６６３は、符号化付加情報を復号することで、マップ情報等を含む付加情報を生成する。
【０１０９】
位置情報生成部４６６４は、位置画像とマップ情報とを用いて位置情報を生成する。属性情報生成部４６６５は、属性画像とマップ情報とを用いて属性情報を生成する。
【０１１０】
第２の復号部４６６０は、復号に必要な付加情報を復号時に使用し、アプリケーションに必要な付加情報を外部に出力する。
【０１１１】
以下、ＰＣＣ符号化方式における課題を説明する。図１３は、ＰＣＣ符号化データに関わるプロトコルスタックを示す図である。図１３には、ＰＣＣ符号化データに、映像（例えばＨＥＶＣ）又は音声などの他のメディアのデータを多重し、伝送又は蓄積する例を示す。
【０１１２】
多重化方式及びファイルフォーマットは、様々な符号化データを多重し、伝送又は蓄積するための機能を有している。符号化データを伝送又は蓄積するためには、符号化データを多重化方式のフォーマットに変換しなければならない。例えば、ＨＥＶＣでは、ＮＡＬユニットと呼ばれるデータ構造に符号化データを格納し、ＮＡＬユニットをＩＳＯＢＭＦＦに格納する技術が規定されている。
【０１１３】
一方、現在、点群データの符号化方法として第１の符号化方法（Ｃｏｄｅｃ１）、及び第２の符号化方法（Ｃｏｄｅｃ２）が検討されているが、符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法が定義されておらず、このままでは符号化部におけるＭＵＸ処理（多重化）、伝送及び蓄積ができないという課題がある。
【０１１４】
なお、以降において、特定の符号化方法の記載がなければ、第１の符号化方法、及び第２の符号化方法のいずれかを示すものとする。
【０１１５】
（実施の形態２）
本実施の形態では、ＮＡＬユニットをＩＳＯＢＭＦＦのファイルに格納する方法について説明する。
【０１１６】
ＩＳＯＢＭＦＦ（ＩＳＯ  ｂａｓｅｄ  ｍｅｄｉａ  ｆｉｌｅ  ｆｏｒｍａｔ）は、ＩＳＯ／ＩＥＣ１４４９６−１２に規定されるファイルフォーマット規格である。ＩＳＯＢＭＦＦは、ビデオ、オーディオ、及びテキストなど様々なメディアを多重して格納できるフォーマットを規定しており、メディアに依存しない規格である。
【０１１７】
ＩＳＯＢＭＦＦの基本構造（ファイル）について説明する。ＩＳＯＢＭＦＦにおける基本単位はボックスである。ボックスはｔｙｐｅ、ｌｅｎｇｔｈ、ｄａｔａで構成され、様々なｔｙｐｅのボックスを組み合わせた集合がファイルである。
【０１１８】
図１４は、ＩＳＯＢＭＦＦの基本構造（ファイル）を示す図である。ＩＳＯＢＭＦＦのファイルは、主に、ファイルのブランドを４ＣＣ（４文字コード）で示すｆｔｙｐ、制御情報などのメタデータを格納するｍｏｏｖ、及び、データを格納するｍｄａｔなどのボックスを含む。
【０１１９】
ＩＳＯＢＭＦＦのファイルへのメディア毎の格納方法は別途規定されており、例えば、ＡＶＣビデオ及びＨＥＶＣビデオの格納方法は、ＩＳＯ／ＩＥＣ１４４９６−１５に規定される。ここで、ＰＣＣ符号化データを蓄積又は伝送するために、ＩＳＯＢＭＦＦの機能を拡張して使用することが考えられるが、ＰＣＣ符号化データをＩＳＯＢＭＦＦのファイルに格納する規定はまだない。そこで、本実施の形態では、ＰＣＣ符号化データをＩＳＯＢＭＦＦのファイルに格納する方法について説明する。
【０１２０】
図１５は、ＰＣＣコーデック共通のＮＡＬユニットをＩＳＯＢＭＦＦのファイルに格納する場合のプロトコルスタックを示す図である。ここでは、ＰＣＣコーデック共通のＮＡＬユニットがＩＳＯＢＭＦＦのファイルに格納される。ＮＡＬユニットはＰＣＣコーデック共通であるが、ＮＡＬユニットには複数のＰＣＣコーデックが格納されるため、それぞれのコーデックに応じた格納方法（Ｃａｒｒｉａｇｅ  ｏｆ  Ｃｏｄｅｃ１、Ｃａｒｒｉａｇｅ  ｏｆ  Ｃｏｄｅｃ２）を規定することが望ましい。
【０１２１】
次に、複数のＰＣＣコーデックをサポートする共通のＰＣＣ  ＮＡＬユニットをＩＳＯＢＭＦＦのファイルへ格納する方法について説明する。図１６は、共通のＰＣＣ  ＮＡＬユニットをコーデック１の格納方法（Ｃａｒｒｉａｇｅ  ｏｆ  Ｃｏｄｅｃ１）のＩＳＯＢＭＦＦのファイルに格納する例を示す図である。図１７は、共通のＰＣＣ  ＮＡＬユニットをコーデック２の格納方法（Ｃａｒｒｉａｇｅ  ｏｆ  Ｃｏｄｅｃ２）のＩＳＯＢＭＦＦのファイルに格納する例を示す図である。
【０１２２】
ここで、ｆｔｙｐは、ファイルフォーマットを識別するための重要な情報であり、ｆｔｙｐ用に、コーデック毎に異なる識別子が定義される。第１の符号化方法（符号化方式）で符号化されたＰＣＣ符号化データがファイルに格納される場合は、ｆｔｙｐ＝ｐｃｃ１に設定される。第２の符号化方法で符号化されたＰＣＣ符号化データがファイルに格納される場合は、ｆｔｙｐ＝ｐｃｃ２に設定される。
【０１２３】
ここで、ｐｃｃ１は、ＰＣＣのコーデック１（第１の符号化方法）が用いられることを示す。ｐｃｃ２は、ＰＣＣのコーデック２（第２の符号化方法）が用いられることを示す。つまり、ｐｃｃ１及びｐｃｃ２は、データがＰＣＣ（三次元データ（点群データ）の符号データ）であることを示し、かつ、ＰＣＣコーデック（第１の符号化方法及び第２の符号化方法）を示す。
【０１２４】
以下、ＮＡＬユニットをＩＳＯＢＭＦＦのファイルへ格納する方法について説明する。多重化部は、ＮＡＬユニットヘッダを解析し、ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅ＝Ｃｏｄｅｃ１である場合にはＩＳＯＢＭＦＦのｆｔｙｐにｐｃｃ１を記載する。
【０１２５】
また、多重化部は、ＮＡＬユニットヘッダを解析し、ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅ＝Ｃｏｄｅｃ２である場合にはＩＳＯＢＭＦＦのｆｔｙｐにｐｃｃ２を記載する。
【０１２６】
また、多重化部は、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅがメタデータである場合は、ＮＡＬユニットを所定の方法で、例えばｍｏｏｖ又はｍｄａｔに格納する。多重化部は、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅがデータである場合は、ＮＡＬユニットを所定の方法で、例えばｍｏｏｖ又はｍｄａｔに格納する。
【０１２７】
例えば、多重化部は、ＨＥＶＣと同様にＮＡＬユニットにＮＡＬユニットサイズを格納してもよい。
【０１２８】
本格納方法により、逆多重化部（システムレイヤ）においてファイルに含まれるｆｔｙｐを解析することで、ＰＣＣ符号化データが第１の符号化方法で符号化されたか、第２の符号化方法で符号化されたかを判定することが可能となる。さらに、上記の通り、ＰＣＣ符号化データが第１の符号化方法で符号化されたか、第２の符号化方法で符号化されたかを判定することで、両方の符号化方法で符号化された符号化データが混在するデータからいずれか一方の符号化方法で符号化された符号化データを抽出することができる。これにより、符号化データを伝送する際に、伝送されるデータ量を抑制することができる。また、本格納方法により、第１の符号化方法と第２の符号化方法とで、異なるデータ（ファイル）フォーマットを設定することなく、共通のデータフォーマットを用いることができる。
【０１２９】
なお、ＩＳＯＢＭＦＦにおけるｆｔｙｐなど、システムレイヤのメタデータにコーデックの識別情報が示される場合は、多重化部は、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを削除したＮＡＬユニットをＩＳＯＢＭＦＦのファイルに格納してもよい。
【０１３０】
次に、本実施の形態に係る三次元データ符号化システム（三次元データ符号化装置）が備える多重化部、及び、本実施の形態に係る三次元データ復号システム（三次元データ復号装置）が備える逆多重化部の構成及び動作について説明する。
【０１３１】
図１８は、第１の多重化部４７１０の構成を示す図である。第１の多重化部４７１０は、第１の符号化部４６３０で生成された符号化データ及び制御情報（ＮＡＬユニット）をＩＳＯＢＭＦＦのファイルに格納することで多重化データ（ファイル）を生成するファイル変換部４７１１を備える。この第１の多重化部４７１０は、例えば、図１に示す多重化部４６１４に含まれる。
【０１３２】
図１９は、第１の逆多重化部４７２０の構成を示す図である。第１の逆多重化部４７２０は、多重化データ（ファイル）から符号化データ及び制御情報（ＮＡＬユニット）を取得し、取得した符号化データ及び制御情報を第１の復号部４６４０に出力するファイル逆変換部４７２１を備える。この第１の逆多重化部４７２０は、例えば、図１に示す逆多重化部４６２３に含まれる。
【０１３３】
図２０は、第２の多重化部４７３０の構成を示す図である。第２の多重化部４７３０は、第２の符号化部４６５０で生成された符号化データ及び制御情報（ＮＡＬユニット）をＩＳＯＢＭＦＦのファイルに格納することで多重化データ（ファイル）を生成するファイル変換部４７３１を備える。この第２の多重化部４７３０は、例えば、図１に示す多重化部４６１４に含まれる。
【０１３４】
図２１は、第２の逆多重化部４７４０の構成を示す図である。第２の逆多重化部４７４０は、多重化データ（ファイル）から符号化データ及び制御情報（ＮＡＬユニット）を取得し、取得した符号化データ及び制御情報を第２の復号部４６６０に出力するファイル逆変換部４７４１を備える。この第２の逆多重化部４７４０は、例えば、図１に示す逆多重化部４６２３に含まれる。
【０１３５】
図２２は、第１の多重化部４７１０による多重化処理のフローチャートである。まず、第１の多重化部４７１０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅを解析することで、使用されているコーデックが第１の符号化方法であるか、第２の符号化方法であるかを判定する（Ｓ４７０１）。
【０１３６】
ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅが第２の符号化方法を示す場合（Ｓ４７０２で第２の符号化方法）、第１の多重化部４７１０は、当該ＮＡＬユニットを処理しない（Ｓ４７０３）。
【０１３７】
一方、ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅが第２の符号化方法を示す場合（Ｓ４７０２で第１の符号化方法）、第１の多重化部４７１０は、ｆｔｙｐにｐｃｃ１を記載する（Ｓ４７０４）。つまり、第１の多重化部４７１０は、第１の符号化方法で符号化されたデータがファイルに格納されていることを示す情報をｆｔｙｐに記載する。
【０１３８】
次に、第１の多重化部４７１０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを解析し、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅで示されるデータタイプに応じた所定の方法でデータをボックス（ｍｏｏｖ又はｍｄａｔ等）に格納する（Ｓ４７０５）。そして、第１の多重化部４７１０は、上記ｆｔｙｐ及び上記ボックスを含むＩＳＯＢＭＦＦのファイルを作成する（Ｓ４７０６）。
【０１３９】
図２３は、第２の多重化部４７３０による多重化処理のフローチャートである。まず、第２の多重化部４７３０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅを解析することで、使用されているコーデックが第１の符号化方法であるか、第２の符号化方法であるかを判定する（Ｓ４７１１）。
【０１４０】
ｐｃｃ＿ｕｎｉｔ＿ｔｙｐｅが第２の符号化方法を示す場合（Ｓ４７１２で第２の符号化方法）、第２の多重化部４７３０は、ｆｔｙｐにｐｃｃ２を記載する（Ｓ４７１３）。つまり、第２の多重化部４７３０は、第２の符号化方法で符号化されたデータがファイルに格納されていることを示す情報をｆｔｙｐに記載する。
【０１４１】
次に、第２の多重化部４７３０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを解析し、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅで示されるデータタイプに応じた所定の方法でデータをボックス（ｍｏｏｖ又はｍｄａｔ等）に格納する（Ｓ４７１４）。そして、第２の多重化部４７３０は、上記ｆｔｙｐ及び上記ボックスを含むＩＳＯＢＭＦＦのファイルを作成する（Ｓ４７１５）。
【０１４２】
一方、ｐｃｃ＿ｕｎｉｔ＿ｔｙｐｅが第１の符号化方法を示す場合（Ｓ４７１２で第１の符号化方法）、第２の多重化部４７３０は、当該ＮＡＬユニットを処理しない（Ｓ４７１６）。
【０１４３】
なお、上記処理は、ＰＣＣデータを第１の符号化方法、及び第２の符号化方法のいずれか一方で符号化する例を示している。第１の多重化部４７１０及び第２の多重化部４７３０は、ＮＡＬユニットのコーデックタイプを識別することにより、所望のＮＡＬユニットをファイルに格納する。なお、ＮＡＬユニットヘッダ以外に、ＰＣＣコーデックの識別情報が含まれる場合には、第１の多重化部４７１０及び第２の多重化部４７３０は、ステップＳ４７０１及びＳ４７１１において、ＮＡＬユニットヘッダ以外に含まれるＰＣＣコーデックの識別情報を用いて、コーデックタイプ（第１の符号化方法又は第２の符号化方法）を識別してもよい。
【０１４４】
また、第１の多重化部４７１０及び第２の多重化部４７３０は、ステップＳ４７０６及びＳ４７１４において、データをファイルに格納する際に、ＮＡＬユニットヘッダからｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを削除したうえでファイルに格納してもよい。
【０１４５】
図２４は、第１の逆多重化部４７２０及び第１の復号部４６４０による処理を示すフローチャートである。まず、第１の逆多重化部４７２０は、ＩＳＯＢＭＦＦのファイルに含まれるｆｔｙｐを解析する（Ｓ４７２１）。ｆｔｙｐで示されるコーデックが第２の符号化方法（ｐｃｃ２）である場合（Ｓ４７２２で第２の符号化方法）、第１の逆多重化部４７２０は、ＮＡＬユニットのペイロードに含まれるデータが第２の符号化方法で符号化されたデータであると判断する（Ｓ４７２３）。また、第１の逆多重化部４７２０は、判断の結果を第１の復号部４６４０に伝達する。第１の復号部４６４０は、当該ＮＡＬユニットを処理しない（Ｓ４７２４）。
【０１４６】
一方、ｆｔｙｐで示されるコーデックが第１の符号化方法（ｐｃｃ１）である場合（Ｓ４７２２で第１の符号化方法）、第１の逆多重化部４７２０は、ＮＡＬユニットのペイロードに含まれるデータが第１の符号化方法で符号化されたデータであると判断する（Ｓ４７２５）。また、第１の逆多重化部４７２０は、判断の結果を第１の復号部４６４０に伝達する。
【０１４７】
第１の復号部４６４０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅが、第１の符号化方法用のＮＡＬユニットの識別子であるとしてデータを識別する（Ｓ４７２６）。そして、第１の復号部４６４０は、第１の符号化方法の復号処理を用いてＰＣＣデータを復号する（Ｓ４７２７）。
【０１４８】
図２５は、第２の逆多重化部４７４０及び第２の復号部４６６０による処理を示すフローチャートである。まず、第２の逆多重化部４７４０は、ＩＳＯＢＭＦＦのファイルに含まれるｆｔｙｐを解析する（Ｓ４７３１）。ｆｔｙｐで示されるコーデックが第２の符号化方法（ｐｃｃ２）である場合（Ｓ４７３２で第２の符号化方法）、第２の逆多重化部４７４０は、ＮＡＬユニットのペイロードに含まれるデータが第２の符号化方法で符号化されたデータであると判断する（Ｓ４７３３）。また、第２の逆多重化部４７４０は、判断の結果を第２の復号部４６６０に伝達する。
【０１４９】
第２の復号部４６６０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅが、第２の符号化方法用のＮＡＬユニットの識別子であるとしてデータを識別する（Ｓ４７３４）。そして、第２の復号部４６６０は、第２の符号化方法の復号処理を用いてＰＣＣデータを復号する（Ｓ４７３５）。
【０１５０】
一方、ｆｔｙｐで示されるコーデックが第１の符号化方法（ｐｃｃ１）である場合（Ｓ４７３２で第１の符号化方法）、第２の逆多重化部４７４０は、ＮＡＬユニットのペイロードに含まれるデータが第１の符号化方法で符号化されたデータであると判断する（Ｓ４７３６）。また、第２の逆多重化部４７４０は、判断の結果を第２の復号部４６６０に伝達する。第２の復号部４６６０は、当該ＮＡＬユニットを処理しない（Ｓ４７３７）。
【０１５１】
このように、例えば、第１の逆多重化部４７２０又は第２の逆多重化部４７４０において、ＮＡＬユニットのコーデックタイプを識別することにより、早い段階でコーデックタイプを識別できる。さらに、所望のＮＡＬユニットを第１の復号部４６４０又は第２の復号部４６６０に入力し、不要なＮＡＬユニットを取り除くことができる。この場合、第１の復号部４６４０又は第２の復号部４６６０において、コーデックの識別情報を解析する処理は不要になる可能性がある。なお、第１の復号部４６４０又は第２の復号部４６６０で再度ＮＡＬユニットタイプを参照してコーデックの識別情報を解析する処理を実施してもよい。
【０１５２】
また、第１の多重化部４７１０又は第２の多重化部４７３０においてＮＡＬユニットヘッダからｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを削除されている場合には、第１の逆多重化部４７２０又は第２の逆多重化部４７４０は、ＮＡＬユニットにｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを付与したうえで第１の復号部４６４０又は第２の復号部４６６０へ出力してもよい。
【０１５３】
（実施の形態３）
本実施の形態では、実施の形態１で説明した、複数のコーデックに対応した符号化部４６７０及び復号部４６８０に対応する、多重化部および逆多重化部について説明する。図２６は、本実施の形態に係る符号化部４６７０及び第３の多重化部４７５０の構成を示す図である。
【０１５４】
符号化部４６７０は、点群データを、第１の符号化方法、及び第２の符号化方法のいずれか一方又は両方の方式を用いて符号化する。符号化部４６７０は、点群データ単位、又はフレーム単位で符号化方法（第１の符号化方法及び第２の符号化方法）を切り替えてもよい。また、符号化部４６７０は、符号化可能な単位で符号化方法を切り替えてもよい。
【０１５５】
符号化部４６７０は、ＰＣＣコーデックの識別情報を含む符号化データ（符号化ストリーム）を生成する。
【０１５６】
第３の多重化部４７５０は、ファイル変換部４７５１を備える。ファイル変換部４７５１は、符号化部４６７０から出力されたＮＡＬユニットをＰＣＣデータのファイルに変換する。ファイル変換部４７５１は、ＮＡＬユニットヘッダに含まれるコーデック識別情報を解析し、ＰＣＣ符号化データが、第１の符号化方法で符号化されたデータであるか、第２の符号化方法で符号化されたデータであるか、両方の方式で符号化されたデータであるかを判定する。ファイル変換部４７５１は、ｆｔｙｐにコーデックを識別可能なブランド名を記載する。例えば、両方の方式で符号化されたことを示す場合、ｆｔｙｐにｐｃｃ３が記載される。
【０１５７】
なお、符号化部４６７０が、ＮＡＬユニット以外にＰＣＣコーデックの識別情報を記載している場合、ファイル変換部４７５１は、当該識別情報を用いて、ＰＣＣコーデック（符号化方法）を判定してもよい。
【０１５８】
図２７は、本実施の形態に係る第３の逆多重化部４７６０及び復号部４６８０の構成を示す図である。
【０１５９】
第３の逆多重化部４７６０は、ファイル逆変換部４７６１を備える。ファイル逆変換部４７６１は、ファイルに含まれるｆｔｙｐを解析し、ＰＣＣ符号化データが、第１の符号化方法で符号化されたデータであるか、第２の符号化方法で符号化されたデータであるか、両方の方式で符号化されたデータであるかを判定する。
【０１６０】
ＰＣＣ符号化データがいずれか一方の符号化方法で符号化されている場合、第１の復号部４６４０及び第２の復号部４６６０のうち、対応する復号部にデータが入力され、もう一方の復号部にはデータが入力されない。ＰＣＣ符号化データが両方の符号化方法で符号化されている場合、両方式に対応する復号部４６８０にデータが入力される。
【０１６１】
復号部４６８０は、ＰＣＣ符号化データを、第１の符号化方法及び第２の符号化方法のいずれか一方又は両方の方式を用いて復号する。
【０１６２】
図２８は、本実施の形態に係る第３の多重化部４７５０による処理を示すフローチャートである。
【０１６３】
まず、第３の多重化部４７５０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅを解析することで、使用されているコーデックが第１の符号化方法であるか、第２の符号化方法であるか、第１の符号化方法及び第２の符号化方法の両方であるかを判定する（Ｓ４７４１）。
【０１６４】
第２の符号化方法が使用されている場合（Ｓ４７４２でＹｅｓ、かつ、Ｓ４７４３で第２の符号化方法）、第３の多重化部４７５０は、ｆｔｙｐにｐｃｃ２を記載する（Ｓ４７４４）。つまり、第３の多重化部４７５０は、第２の符号化方法で符号化されたデータがファイルに格納されていることを示す情報をｆｔｙｐに記載する。
【０１６５】
次に、第３の多重化部４７５０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを解析し、ｐｃｃ＿ｕｎｉｔ＿ｔｙｐｅで示されるデータタイプに応じた所定の方法でデータをボックス（ｍｏｏｖ又はｍｄａｔ等）に格納する（Ｓ４７４５）。そして、第３の多重化部４７５０は、上記ｆｔｙｐ及び上記ボックスを含むＩＳＯＢＭＦＦのファイルを作成する（Ｓ４７４６）。
【０１６６】
一方、第１の符号化方法が使用されている場合（Ｓ４７４２でＹｅｓ、かつ、Ｓ４７４３で第１の符号化方法）、第３の多重化部４７５０は、ｆｔｙｐにｐｃｃ１を記載する（Ｓ４７４７）。つまり、第３の多重化部４７５０は、第１の符号化方法で符号化されたデータがファイルに格納されていることを示す情報をｆｔｙｐに記載する。
【０１６７】
次に、第３の多重化部４７５０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを解析し、ｐｃｃ＿ｕｎｉｔ＿ｔｙｐｅで示されるデータタイプに応じた所定の方法でデータをボックス（ｍｏｏｖ又はｍｄａｔ等）に格納する（Ｓ４７４８）。そして、第３の多重化部４７５０は、上記ｆｔｙｐ及び上記ボックスを含むＩＳＯＢＭＦＦのファイルを作成する（Ｓ４７４６）。
【０１６８】
一方、第１の符号化方法と第２の符号化方法との両方の符号化方法が使用されている場合（Ｓ４７４２でＮｏ）、第３の多重化部４７５０は、ｆｔｙｐにｐｃｃ３を記載する（Ｓ４７４９）。つまり、第３の多重化部４７５０は、両方の符号化方法で符号化されたデータがファイルに格納されていることを示す情報をｆｔｙｐに記載する。
【０１６９】
次に、第３の多重化部４７５０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを解析し、ｐｃｃ＿ｕｎｉｔ＿ｔｙｐｅで示されるデータタイプに応じた所定の方法でデータをボックス（ｍｏｏｖ又はｍｄａｔ等）に格納する（Ｓ４７５０）。そして、第３の多重化部４７５０は、上記ｆｔｙｐ及び上記ボックスを含むＩＳＯＢＭＦＦのファイルを作成する（Ｓ４７４６）。
【０１７０】
図２９は、第３の逆多重化部４７６０及び復号部４６８０による処理を示すフローチャートである。まず、第３の逆多重化部４７６０は、ＩＳＯＢＭＦＦのファイルに含まれるｆｔｙｐを解析する（Ｓ４７６１）。ｆｔｙｐで示されるコーデックが第２の符号化方法（ｐｃｃ２）である場合（Ｓ４７６２でＹｅｓ、かつＳ４７６３で第２の符号化方法）、第３の逆多重化部４７６０は、ＮＡＬユニットのペイロードに含まれるデータが第２の符号化方法で符号化されたデータであると判断する（Ｓ４７６４）。また、第３の逆多重化部４７６０は、判断の結果を復号部４６８０に伝達する。
【０１７１】
復号部４６８０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅが、第２の符号化方法用のＮＡＬユニットの識別子であるとしてデータを識別する（Ｓ４７６５）。そして、復号部４６８０は、第２の符号化方法の復号処理を用いてＰＣＣデータを復号する（Ｓ４７６６）。
【０１７２】
一方、ｆｔｙｐで示されるコーデックが第１の符号化方法（ｐｃｃ１）である場合（Ｓ４７６２でＹｅｓ、かつＳ４７６３で第１の符号化方法）、第３の逆多重化部４７６０は、ＮＡＬユニットのペイロードに含まれるデータが第１の符号化方法で符号化されたデータであると判断する（Ｓ４７６７）。また、第３の逆多重化部４７６０は、判断の結果を復号部４６８０に伝達する。
【０１７３】
復号部４６８０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅが、第１の符号化方法用のＮＡＬユニットの識別子であるとしてデータを識別する（Ｓ４７６８）。そして、復号部４６８０は、第１の符号化方法の復号処理を用いてＰＣＣデータを復号する（Ｓ４７６９）。
【０１７４】
一方、ｆｔｙｐで両方の符号化方法が用いられていること（ｐｃｃ３）が示される場合（Ｓ４７６２でＮｏ）、第３の逆多重化部４７６０は、ＮＡＬユニットのペイロードに含まれるデータが、第１の符号化方法と第２符号化方法との両方の符号化方法で符号化されたデータであると判断する（Ｓ４７７０）。また、第３の逆多重化部４７６０は、判断の結果を復号部４６８０に伝達する。
【０１７５】
復号部４６８０は、ＮＡＬユニットヘッダに含まれるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅが、ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅに記載されるコーデック用のＮＡＬユニットの識別子であるとしてデータを識別する（Ｓ４７７１）。そして、復号部４６８０は、両方の符号化方法の復号処理を用いてＰＣＣデータを復号する（Ｓ４７７２）。つまり、復号部４６８０は、第１の符号化方法で符号化されたデータを、第１の符号化方法の復号処理を用いて復号し、第２の符号化方法で符号化されたデータを、第２の符号化方法の復号処理を用いて復号する。
【０１７６】
以下、本実施の形態の変形例を説明する。ｆｔｙｐに示されるブランドの種類として、以下の種類が識別情報で示されてもよい。また、以下に示す複数の種類の組み合わせが識別情報で示されてもよい。
【０１７７】
識別情報は、ＰＣＣ符号化前の元データのオブジェクトが、領域が制限されている点群であるか、地図情報のように領域が制限されていない大規模点群であるかを示してもよい。
【０１７８】
識別情報は、ＰＣＣ符号化前の元データが、静的オブジェクトであるか、動的オブジェクトであるかを示してもよい。
【０１７９】
上述のように、識別情報は、ＰＣＣ符号化データが、第１の符号化方法で符号化されたデータであるか、第２の符号化方法で符号化されたデータであるかを示してもよい。
【０１８０】
識別情報は、ＰＣＣ符号化において用いたアルゴリズムを示してもよい。ここで、アルゴリズムとは、例えば、第１の符号化方法又は第２の符号化方法において使用可能な符号化方法である。
【０１８１】
識別情報は、ＰＣＣ符号化データのＩＳＯＢＭＦＦのファイルへの格納方法の違いを示してもよい。例えば、識別情報は、使用された格納方法が、蓄積用の格納方法であるか、ダイナミックストリーミングのようなリアルタイム送出用の格納方法であるかを示してもよい。
【０１８２】
また、実施の形態２及び実施の形態３では、ファイルフォーマットとしてＩＳＯＢＭＦＦが用いられる例に説明したが、その他の方式が用いられてもよい。例えば、ＭＰＥＧ−２  ＴＳ  Ｓｙｓｔｅｍｓ、ＭＰＥＧ−ＤＡＳＨ、ＭＭＴ、又はＲＭＰにＰＣＣ符号化データを格納する際にも本実施の形態と同様の方法を用いてもよい。
【０１８３】
また、上記では、ｆｔｙｐに識別情報等のメタデータを格納する例を示したが、ｆｔｙｐ以外にこれらのメタデータが格納されてもよい。例えば、これらのメタデータがｍｏｏｖに格納されてもよい。
【０１８４】
以上のように、三次元データ格納装置（又は三次元データ多重化装置、又は三次元データ符号化装置）は、図３０に示す処理を行う。
【０１８５】
まず、三次元データ格納装置（例えば、第１の多重化部４７１０、第２の多重化部４７３０又は第３の多重化部４７５０を含む）は、点群データが符号化された符号化ストリームが格納された１以上のユニット（例えばＮＡＬユニット）を取得する（Ｓ４７８１）。次に、三次元データ格納装置は、１以上のユニットをファイル（例えばＩＳＯＢＭＦＦのファイル）に格納する（Ｓ４７８２）。また、三次元データ格納装置は、前記格納（Ｓ４７８２）では、ファイルに格納されているデータが、点群データが符号化されたデータであることを示す情報（例えばｐｃｃ１、ｐｃｃ２又はｐｃｃ３）を、前記ファイルの制御情報（例えばｆｔｙｐ）に格納する。
【０１８６】
これによれば、当該三次元データ格納装置で生成されたファイルを処理する装置では、ファイルの制御情報を参照して、当該ファイルに格納されているデータが点群データの符号化データであるか否かを早期に判定できる。よって、当該装置の処理量の低減又は処理の高速化を実現できる。
【０１８７】
例えば、前記情報は、さらに、第１符号化方法と第２符号化方法のうち、前記点群データの符号化に用いられた符号化方法を示す。なお、ファイルに格納されているデータが、点群データが符号化されたデータであることと、第１符号化方法と第２符号化方法のうち、点群データの符号化に用いられた符号化方法とは、単一の情報で示されてもよいし、異なる情報で示されてもよい。
【０１８８】
これによれば、当該三次元データ格納装置で生成されたファイルを処理する装置では、ファイルの制御情報を参照して、当該ファイルに格納されているデータに使用されたコーデックを早期に判定できる。よって、当該装置の処理量の低減又は処理の高速化を実現できる。
【０１８９】
例えば、前記第１符号化方法は、点群データの位置をＮ（Ｎは２以上の整数）分木で表した位置情報を符号化し、前記位置情報を用いて属性情報を符号化する方式（ＧＰＣＣ）であり、前記第２符号化方法は、点群データから二次元画像を生成し、前記二次元画像を映像符号化方法を用いて符号化する方式（ＶＰＣＣ）である。
【０１９０】
例えば、前記ファイルは、ＩＳＯＢＭＦＦ（ＩＳＯ  ｂａｓｅｄ  ｍｅｄｉａ  ｆｉｌｅ  ｆｏｒｍａｔ）に準拠する。
【０１９１】
例えば、三次元データ格納装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０１９２】
また、以上のように、三次元データ取得装置（又は三次元データ逆多重化装置、又は三次元データ復号装置）は、図３１に示す処理を行う。
【０１９３】
三次元データ取得装置（例えば、第１の逆多重化部４７２０、第２の逆多重化部４７４０又は第３の逆多重化部４７６０を含む）は、点群データが符号化された符号化ストリームが格納された１以上のユニット（例えばＮＡＬユニット）が格納されたファイル（例えばＩＳＯＢＭＦＦのファイル）を取得する（Ｓ４７９１）。次に、三次元データ取得装置は、ファイルから、１以上のユニットを取得する（Ｓ４７９２）。また、ファイルの制御情報（例えばｆｔｙｐ）は、ファイルに格納されているデータが、点群データが符号化されたデータであることを示す情報（例えばｐｃｃ１、ｐｃｃ２又はｐｃｃ３）を含む。
【０１９４】
例えば、三次元データ取得装置は、前記情報を参照して、ファイルに格納されているデータが、点群データが符号化されたデータであるか否かを判定する。また、三次元データ取得装置は、ファイルに格納されているデータが、点群データが符号化されたデータであると判定した場合、１以上のユニットに含まれる点群データが符号化されたデータを復号することで点群データを生成する。または、三次元データ取得装置は、ファイルに格納されているデータが、点群データが符号化されたデータであると判定した場合、１以上のユニットに含まれるデータが、点群データが符号化されたデータであることを示す情報を、後段の処理部（例えば、第１の復号部４６４０、第２の復号部４６６０又は復号部４６８０）に出力（通知）する。
【０１９５】
これによれば、当該三次元データ取得装置は、ファイルの制御情報を参照して、当該ファイルに格納されているデータが点群データの符号化データであるか否かを早期に判定できる。よって、当該三次元データ取得装置又は後段の装置の処理量の低減又は処理の高速化を実現できる。
【０１９６】
例えば、前記情報は、さらに、第１符号化方法と第２符号化方法のうち、前記符号化に用いた符号化方法を示す。なお、ファイルに格納されているデータが、点群データが符号化されたデータであることと、第１符号化方法と第２符号化方法のうち、点群データの符号化に用いられた符号化方法とは、単一の情報で示されてもよいし、異なる情報で示されてもよい。
【０１９７】
これによれば、当該三次元データ取得装置は、ファイルの制御情報を参照して、当該ファイルに格納されているデータに使用されたコーデックを早期に判定できる。よって、当該三次元データ取得装置又は後段の装置の処理量の低減又は処理の高速化を実現できる。
【０１９８】
例えば、三次元データ取得装置は、前記情報に基づき、第１符号化方法で符号化されたデータと第２符号化方法で符号化されたデータとを含む符号化された点群データから、いずれか一方の符号化方法で符号化されたデータを取得する。
【０１９９】
例えば、前記第１符号化方法は、点群データの位置をＮ（Ｎは２以上の整数）分木で表した位置情報を符号化し、前記位置情報を用いて属性情報を符号化する方式（ＧＰＣＣ）であり、前記第２符号化方法は、点群データから二次元画像を生成し、前記二次元画像を映像符号化方法を用いて符号化する方式（ＶＰＣＣ）である。
【０２００】
例えば、前記ファイルは、ＩＳＯＢＭＦＦ（ＩＳＯ  ｂａｓｅｄ  ｍｅｄｉａ  ｆｉｌｅ  ｆｏｒｍａｔ）に準拠する。
【０２０１】
例えば、三次元データ取得装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０２０２】
（実施の形態４）
本実施の形態では、上述した第１の符号化部４６３０、又は第２の符号化部４６５０で生成される符号化データ（位置情報（Ｇｅｏｍｅｔｒｙ）、属性情報（Ａｔｔｒｉｂｕｔｅ）、付加情報（Ｍｅｔａｄａｔａ））の種別、及び付加情報（メタデータ）の生成方法、及び多重化部における多重処理について説明する。なお、付加情報（メタデータ）は、パラメータセット、又は制御情報と表記することもある。
【０２０３】
本実施の形態では、図４で説明した動的オブジェクト（時間的に変化する三次元点群データ）を例に説明するが、静的オブジェクト（任意の時刻の三次元点群データ）の場合でも同様の方法を用いてもよい。
【０２０４】
図３２は、本実施の形態に係る三次元データ符号化装置に含まれる符号化部４８０１及び多重化部４８０２の構成を示す図である。符号化部４８０１は、例えば、上述した第１の符号化部４６３０又は第２の符号化部４６５０に対応する。多重化部４８０２は、上述した多重化部４６３４又は４６５６に対応する。
【０２０５】
符号化部４８０１は、複数のＰＣＣ（Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｃｏｍｐｒｅｓｓｉｏｎ）フレームの点群データを符号化し、複数の位置情報、属性情報及び付加情報の符号化データ（Ｍｕｌｔｉｐｌｅ  Ｃｏｍｐｒｅｓｓｅｄ  Ｄａｔａ）を生成する。
【０２０６】
多重化部４８０２は、複数のデータ種別（位置情報、属性情報及び付加情報）のデータをＮＡＬユニット化することで、データを復号装置におけるデータアクセスを考慮したデータ構成に変換する。
【０２０７】
図３３は、符号化部４８０１で生成される符号化データの構成例を示す図である。図中の矢印は符号化データの復号に係る依存関係を示しており、矢印の元は矢印の先のデータに依存している。つまり、復号装置は、矢印の先のデータを復号し、その復号したデータを用いて矢印の元のデータを復号する。言い換えると、依存するとは、依存元のデータの処理（符号化又は復号等）において依存先のデータが参照（使用）されることを意味する。
【０２０８】
まず、位置情報の符号化データの生成処理について説明する。符号化部４８０１は、各フレームの位置情報を符号化することで、フレーム毎の符号化位置データ（Ｃｏｍｐｒｅｓｓｅｄ  Ｇｅｏｍｅｔｒｙ  Ｄａｔａ）を生成する。また、符号化位置データをＧ（ｉ）で表す。ｉはフレーム番号、又はフレームの時刻等を示す。
【０２０９】
また、符号化部４８０１は、各フレームに対応する位置パラメータセット（ＧＰＳ（ｉ））を生成する。位置パラメータセットは、符号化位置データの復号に使用することが可能なパラメータを含む。また、フレーム毎の符号化位置データは、対応する位置パラメータセットに依存する。
【０２１０】
また、複数フレームから成る符号化位置データを位置シーケンス（Ｇｅｏｍｅｔｒｙ  Ｓｅｑｕｅｎｃｅ）と定義する。符号化部４８０１は、位置シーケンス内の複数のフレームに対する復号処理に共通に使用するパラメータを格納する位置シーケンスパラメータセット（Ｇｅｏｍｅｔｒｙ  Ｓｅｑｕｅｎｃｅ  ＰＳ：位置ＳＰＳとも記す）を生成する。位置シーケンスは、位置ＳＰＳに依存する。
【０２１１】
次に、属性情報の符号化データの生成処理について説明する。符号化部４８０１は、各フレームの属性情報を符号化することで、フレーム毎の符号化属性データ（Ｃｏｍｐｒｅｓｓｅｄ  Ａｔｔｒｉｂｕｔｅ  Ｄａｔａ）を生成する。また、符号化属性データをＡ（ｉ）で表す。また、図３３では、属性Ｘと属性Ｙとが存在する例を示しており、属性Ｘの符号化属性データをＡＸ（ｉ）で表し、属性Ｙの符号化属性データをＡＹ（ｉ）で表す。
【０２１２】
また、符号化部４８０１は、各フレームに対応する属性パラメータセット（ＡＰＳ（ｉ））を生成する。また、属性Ｘの属性パラメータセットをＡＸＰＳ（ｉ）で表し、属性Ｙの属性パラメータセットをＡＹＰＳ（ｉ）で表す。属性パラメータセットは、符号化属性情報の復号に使用することが可能なパラメータを含む。符号化属性データは、対応する属性パラメータセットに依存する。
【０２１３】
また、複数フレームから成る符号化属性データを属性シーケンス（Ａｔｔｒｉｂｕｔｅ  Ｓｅｑｕｅｎｃｅ）と定義する。符号化部４８０１は、属性シーケンス内の複数のフレームに対する復号処理に共通に使用するパラメータを格納する属性シーケンスパラメータセット（Ａｔｔｒｉｂｕｔｅ  Ｓｅｑｕｅｎｃｅ  ＰＳ：属性ＳＰＳとも記す）を生成する。属性シーケンスは、属性ＳＰＳに依存する。
【０２１４】
また、第１の符号化方法では、符号化属性データは符号化位置データに依存する。
【０２１５】
また、図３３では２種類の属性情報（属性Ｘと属性Ｙ）が存在する場合の例を示している。２種類の属性情報がある場合は、例えば、２つの符号化部により、それぞれのデータ及びメタデータが生成される。また、例えば、属性情報の種類毎に属性シーケンスが定義され、属性情報の種類毎に属性ＳＰＳが生成される。
【０２１６】
なお、図３３では、位置情報が１種類、属性情報が２種類である例を示しているが、これに限らず、属性情報は１種類であってもよいし、３種類以上であってもよい。この場合も、同様の方法で符号化データを生成できる。また、属性情報を持たない点群データの場合は、属性情報はなくてもよい。その場合は、符号化部４８０１は、属性情報に関連するパラメータセットを生成しなくてもよい。
【０２１７】
次に、付加情報（メタデータ）の生成処理について説明する。符号化部４８０１は、ＰＣＣストリーム全体のパラメータセットであるＰＣＣストリームＰＳ（ＰＣＣ  Ｓｔｒｅａｍ  ＰＳ：ストリームＰＳとも記す）を生成する。符号化部４８０１は、ストリームＰＳに、１又は複数の位置シーケンス及び１又は複数の属性シーケンスに対する復号処理に共通に使用することができるパラメータを格納する。例えば、ストリームＰＳには、点群データのコーデックを示す識別情報、及び符号化に使用されたアルゴリズムを示す情報等が含まれる。位置シーケンス及び属性シーケンスはストリームＰＳに依存する。
【０２１８】
次に、アクセスユニット及びＧＯＦについて説明する。本実施の形態では、新たにアクセスユニット（Ａｃｃｅｓｓ  Ｕｎｉｔ：ＡＵ）、及びＧＯＦ（Ｇｒｏｕｐ  ｏｆ  Ｆｒａｍｅ）の考え方を導入する。
【０２１９】
アクセスユニットは、復号時にデータにアクセスするため基本単位であり、１つ以上のデータ及び１つ以上のメタデータで構成される。例えば、アクセスユニットは、同一時刻の位置情報と１又は複数の属性情報とで構成される。ＧＯＦは、ランダムアクセス単位であり、１つ以上のアクセスユニットで構成される。
【０２２０】
符号化部４８０１は、アクセスユニットの先頭を示す識別情報として、アクセスユニットヘッダ（ＡＵ  Ｈｅａｄｅｒ）を生成する。符号化部４８０１は、アクセスユニットヘッダに、アクセスユニットに係るパラメータを格納する。例えば、アクセスユニットヘッダは、アクセスユニットに含まれる符号化データの構成又は情報を含む。また、アクセスユニットヘッダは、アクセスユニットに含まれるデータに共通に用いられるパラメータ、例えば、符号化データの復号に係るパラメータなどを含む。
【０２２１】
なお、符号化部４８０１は、アクセスユニットヘッダの代わりに、アクセスユニットに係るパラメータを含まないアクセスユニットデリミタを生成してもよい。このアクセスユニットデリミタは、アクセスユニットの先頭を示す識別情報として用いられる。復号装置は、アクセスユニットヘッダ又はアクセスユニットデリミタを検出することにより、アクセスユニットの先頭を識別する。
【０２２２】
次に、ＧＯＦ先頭の識別情報の生成について説明する。符号化部４８０１は、ＧＯＦの先頭を示す識別情報として、ＧＯＦヘッダ（ＧＯＦ  Ｈｅａｄｅｒ）を生成する。符号化部４８０１は、ＧＯＦヘッダに、ＧＯＦに係るパラメータを格納する。例えば、ＧＯＦヘッダは、ＧＯＦに含まれる符号化データの構成又は情報を含む。また、ＧＯＦヘッダは、ＧＯＦに含まれるデータに共通に用いられるパラメータ、例えば、符号化データの復号に係るパラメータなどを含む。
【０２２３】
なお、符号化部４８０１は、ＧＯＦヘッダの代わりに、ＧＯＦに係るパラメータを含まないＧＯＦデリミタを生成してもよい。このＧＯＦデリミタは、ＧＯＦの先頭を示す識別情報として用いられる。復号装置は、ＧＯＦヘッダ又はＧＯＦデリミタを検出することにより、ＧＯＦの先頭を識別する。
【０２２４】
ＰＣＣ符号化データにおいて、例えば、アクセスユニットはＰＣＣフレーム単位であると定義される。復号装置は、アクセスユニット先頭の識別情報に基づき、ＰＣＣフレームにアクセスする。
【０２２５】
また、例えば、ＧＯＦは１つのランダムアクセス単位であると定義される。復号装置は、ＧＯＦ先頭の識別情報に基づき、ランダムアクセス単位にアクセスする。例えば、ＰＣＣフレームが互いに依存関係がなく、単独で復号可能であれば、ＰＣＣフレームをランダムアクセス単位と定義してもよい。
【０２２６】
なお、１つのアクセスユニットに２つ以上のＰＣＣフレームが割り当てられてもよいし、１つのＧＯＦに複数のランダムアクセス単位が割り当てられてもよい。
【０２２７】
また、符号化部４８０１は、上記以外のパラメータセット又はメタデータを定義し、生成してもよい。例えば、符号化部４８０１は、復号時に必ずしも用いない可能性のあるパラメータ（オプションのパラメータ）を格納するＳＥＩ（Ｓｕｐｐｌｅｍｅｎｔａｌ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成してもよい。
【０２２８】
次に、符号化データの構成、及び符号化データのＮＡＬユニットへの格納方法を説明する。
【０２２９】
例えば、符号化データの種類毎にデータフォーマットが規定される。図３４は、符号化データ及びＮＡＬユニットの例を示す図である。
【０２３０】
例えば、図３４に示すように符号化データは、ヘッダとペイロードとを含む。なお、符号化データは、符号化データ、ヘッダ又はペイロードの長さ（データ量）を示す長さ情報を含んでもよい。また、符号化データは、ヘッダを含まなくてもよい。
【０２３１】
ヘッダは、例えば、データを特定するための識別情報を含む。この識別情報は、例えば、データ種別又はフレーム番号を示す。
【０２３２】
ヘッダは、例えば、参照関係を示す識別情報を含む。この識別情報は、例えば、データ間に依存関係がある場合にヘッダに格納され、参照元から参照先を参照するための情報である。例えば、参照先のヘッダには、当該データを特定するための識別情報が含まれる。参照元のヘッダには、参照先を示す識別情報が含まれる。
【０２３３】
なお、他の情報から参照先又は参照元を識別可能又は導出可能である場合は、データを特定するための識別情報、又は参照関係を示す識別情報を省略してもよい。
【０２３４】
多重化部４８０２は、符号化データを、ＮＡＬユニットのペイロードに格納する。ＮＡＬユニットヘッダには、符号化データの識別情報であるｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅが含まれる。図３５は、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅのセマンティクスの例を示す図である。
【０２３５】
図３５に示すように、ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅがコーデック１（Ｃｏｄｅｃ１：第１の符号化方法）である場合、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値０〜１０は、コーデック１における、符号化位置データ（Ｇｅｏｍｅｔｒｙ）、符号化属性Ｘデータ（ＡｔｔｒｉｂｕｔｅＸ）、符号化属性Ｙデータ（ＡｔｔｒｉｂｕｔｅＹ）、位置ＰＳ（Ｇｅｏｍ．ＰＳ）、属性ＸＰＳ（ＡｔｔｒＸ．ＰＳ）、属性ＹＰＳ（ＡｔｔｒＸ．ＰＳ）、位置ＳＰＳ（Ｇｅｏｍｅｔｒｙ  Ｓｅｑｕｅｎｃｅ  ＰＳ）、属性ＸＳＰＳ（ＡｔｔｒｉｂｕｔｅＸ  Ｓｅｑｕｅｎｃｅ  ＰＳ）、属性ＹＳＰＳ（ＡｔｔｒｉｂｕｔｅＹ  Ｓｅｑｕｅｎｃｅ  ＰＳ）、ＡＵヘッダ（ＡＵ  Ｈｅａｄｅｒ）、ＧＯＦヘッダ（ＧＯＦ  Ｈｅａｄｅｒ）に割り当てられる。また、値１１以降は、コーデック１の予備に割り当てられる。
【０２３６】
ｐｃｃ＿ｃｏｄｅｃ＿ｔｙｐｅがコーデック２（Ｃｏｄｅｃ２：第２の符号化方法）である場合、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値０〜２は、コーデックのデータＡ（ＤａｔａＡ）、メタデータＡ（ＭｅｔａＤａｔａＡ）、メタデータＢ（ＭｅｔａＤａｔａＢ）に割り当てられる。また、値３以降は、コーデック２の予備に割り当てられる。
【０２３７】
次に、データの送出順序について説明する。以下、ＮＡＬユニットの送出順序の制約について説明する。
【０２３８】
多重化部４８０２は、ＮＡＬユニットをＧＯＦ又はＡＵ単位でまとめて送出する。多重化部４８０２は、ＧＯＦの先頭にＧＯＦヘッダを配置し、ＡＵの先頭にＡＵヘッダを配置する。
【０２３９】
パケットロスなどでデータが失われた場合でも、復号装置が次のＡＵから復号できるように、多重化部４８０２は、シーケンスパラメータセット（ＳＰＳ）を、ＡＵ毎に配置してもよい。
【０２４０】
符号化データに復号に係る依存関係がある場合には、復号装置は、参照先のデータを復号した後に、参照元のデータを復号する。復号装置において、データを並び替ることなく、受信した順番に復号できるようにするために、多重化部４８０２は、参照先のデータを先に送出する。
【０２４１】
図３６は、ＮＡＬユニットの送出順の例を示す図である。図３６は、位置情報優先と、パラメータ優先と、データ統合との３つの例を示す。
【０２４２】
位置情報優先の送出順序は、位置情報に関する情報と、属性情報に関する情報との各々をまとめて送出する例である。この送出順序の場合、位置情報に関する情報の送出が属性情報に関する情報の送出よりも早く完了する。
【０２４３】
例えば、この送出順序を用いることで、属性情報を復号しない復号装置は、属性情報の復号を無視することで、処理しない時間を設けることができる可能性がある。また、例えば、位置情報を早く復号したい復号装置の場合、位置情報の符号化データを早く得ることにより、より早く位置情報を復号することができる可能性がある。
【０２４４】
なお、図３６では、属性ＸＳＰＳと属性ＹＳＰＳを統合し、属性ＳＰＳと記載しているが、属性ＸＳＰＳと属性ＹＳＰＳとを個別に配置してもよい。
【０２４５】
パラメータセット優先の送出順序では、パラメータセットが先に送出され、データが後で送出される。
【０２４６】
以上のようにＮＡＬユニット送出順序の制約に従えば、多重化部４８０２は、ＮＡＬユニットをどのような順序で送出してもよい。例えば、順序識別情報が定義され、多重化部４８０２は、複数パターンの順序でＮＡＬユニットを送出する機能を有してもよい。例えばストリームＰＳにＮＡＬユニットの順序識別情報が格納される。
【０２４７】
三次元データ復号装置は、順序識別情報に基づき復号を行ってもよい。三次元データ復号装置から三次元データ符号化装置に所望の送出順序が指示され、三次元データ符号化装置（多重化部４８０２）は、指示された送出順序に従って送出順序を制御してもよい。
【０２４８】
なお、多重化部４８０２は、データ統合の送出順序のように、送出順序の制約に従う範囲であれば、複数の機能をマージした符号化データを生成してもよい。例えば、図３６に示すように、ＧＯＦヘッダとＡＵヘッダとを統合してもよいし、ＡＸＰＳとＡＹＰＳとを統合してもよい。この場合、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅには、複数の機能を有するデータであることを示す識別子が定義される。
【０２４９】
以下、本実施の形態の変形例について説明する。フレームレベルのＰＳ、シーケンスレベルのＰＳ、ＰＣＣシーケンスレベルのＰＳのように、ＰＳにはレベルがあり、ＰＣＣシーケンスレベルを上位のレベルとし、フレームレベルを下位のレベルとすると、パラメータの格納方法には下記の方法を用いてもよい。
【０２５０】
デフォルトのＰＳの値をより上位のＰＳで示す。また、下位のＰＳの値が上位のＰＳの値と異なる場合には、下位のＰＳでＰＳの値が示される。または、上位ではＰＳの値を記載せず、下位のＰＳにＰＳの値を記載する。または、ＰＳの値を、下位のＰＳで示すか、上位のＰＳで示すか、両方で示すかの情報を、下位のＰＳと上位のＰＳのいずれか一方又は両方に示す。または、下位のＰＳを上位のＰＳにマージしてもよい。または、下位のＰＳと上位のＰＳとが重複する場合には、多重化部４８０２は、いずれか一方の送出を省略してもよい。
【０２５１】
なお、符号化部４８０１又は多重化部４８０２は、データをスライス又はタイルなどに分割し、分割したデータを送出してもよい。分割したデータには、分割したデータを識別するための情報が含まれ、分割データの復号に使用するパラメータがパラメータセットに含まれる。この場合、ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅには、タイル又はスライスに係るデータ又はパラメータを格納するデータであることを示す識別子が定義される。
【０２５２】
（実施の形態５）
以下、点群データの分割方法について説明する。図３７は、スライス及びタイル分割の例を示す図である。
【０２５３】
まず、スライス分割の方法について説明する。三次元データ符号化装置は、三次元点群データを、スライス単位で、任意の点群に分割する。三次元データ符号化装置は、スライス分割において、点を構成する位置情報と属性情報とを分割せず、位置情報と属性情報とを一括で分割する。すなわち、三次元データ符号化装置は、任意の点における位置情報と属性情報とが同じスライスに属するようにスライス分割を行う。なお、これらに従えば、分割数、及び分割方法はどのような方法でもよい。また、分割の最小単位は点である。例えば、位置情報と属性情報との分割数は同一である。例えば、スライス分割後の位置情報に対応する三次元点と、属性情報に対応する三次元点とは同一のスライスに含まれる。
【０２５４】
また、三次元データ符号化装置は、スライス分割時に分割数及び分割方法に係る付加情報であるスライス付加情報を生成する。スライス付加情報は、位置情報と属性情報とで同一である。例えば、スライス付加情報は、分割後のバウンディングボックスの基準座標位置、大きさ、又は辺の長さを示す情報を含む。また、スライス付加情報は、分割数、及び分割タイプなどを示す情報を含む。
【０２５５】
次に、タイル分割の方法について説明する。三次元データ符号化装置は、スライス分割されたデータを、スライス位置情報（Ｇスライス）とスライス属性情報（Ａスライス）とに分割し、スライス位置情報とスライス属性情報をそれぞれタイル単位に分割する。
【０２５６】
なお、図３７では８分木構造で分割する例を示しているが、分割数及び分割方法はどのような方法でもよい。
【０２５７】
また、三次元データ符号化装置は、位置情報と属性情報とを異なる分割方法で分割してもよいし、同一の分割方法で分割してもよい。また、三次元データ符号化装置は、複数のスライスを異なる分割方法でタイルに分割してもよいし、同一の分割方法でタイルに分割してもよい。
【０２５８】
また、三次元データ符号化装置は、タイル分割時に分割数及び分割方法に係るタイル付加情報を生成する。タイル付加情報（位置タイル付加情報及び属性タイル付加情報）は、位置情報と属性情報とで独立している。例えば、タイル付加情報は、分割後のバウンディングボックスの基準座標位置、大きさ、又は辺の長さを示す情報を含む。また、タイル付加情報は、分割数、及び分割タイプなど示す情報を含む。
【０２５９】
次に、点群データをスライス又はタイルに分割する方法の例を説明する。三次元データ符号化装置は、スライス又はタイル分割の方法として、予め定められた方法を用いてもよいし、点群データに応じて使用する方法を適応的に切り替えてもよい。
【０２６０】
スライス分割時には、三次元データ符号化装置は、位置情報と属性情報とに対して一括で三次元空間を分割する。例えば、三次元データ符号化装置は、オブジェクトの形状を判定し、オブジェクトの形状に応じて三次元空間をスライスに分割する。例えば、三次元データ符号化装置は、木又は建物などのオブジェクトを抽出し、オブジェクト単位で分割を行う。例えば、三次元データ符号化装置は、１又は複数のオブジェクトの全体が１つのスライスに含まれるようにスライス分割を行う。または、三次元データ符号化装置は、一つのオブジェクトを複数のスライスに分割する。
【０２６１】
この場合、符号化装置は、例えば、スライス毎に符号化方法を変えてもよい。例えば、符号化装置は、特定のオブジェクト、又はオブジェクトの特定の一部に対して、高品質な圧縮方法を用いてもよい。この場合、符号化装置は、スライス毎の符号化方法を示す情報を付加情報（メタデータ）に格納してもよい。
【０２６２】
また、三次元データ符号化装置は、地図情報又は位置情報に基づき、各スライスが予め定められた座標空間に対応するようにスライス分割を行ってもよい。
【０２６３】
タイル分割時には、三次元データ符号化装置は、位置情報と属性情報とを独立に分割する。例えば、三次元データ符号化装置は、データ量又は処理量に応じてスライスをタイルに分割する。例えば、三次元データ符号化装置は、スライスのデータ量（例えばスライスに含まれる三次元点の数）が予め定められた閾値より多いかを判定する。三次元データ符号化装置は、スライスのデータ量が閾値より多い場合にはスライスをタイルに分割する。三次元データ符号化装置は、スライスのデータ量が閾値より少ないときにはスライスをタイルに分割しない。
【０２６４】
例えば、三次元データ符号化装置は、復号装置での処理量又は処理時間が一定の範囲（予め定められた値以下）となるよう、スライスをタイルに分割する。これにより、復号装置におけるタイル当たりの処理量が一定となり、復号装置における分散処理が容易となる。
【０２６５】
また、三次元データ符号化装置は、位置情報と属性情報とで処理量が異なる場合、例えば、位置情報の処理量が属性情報の処理量より多い場合、位置情報の分割数を、属性情報の分割数より多くする。
【０２６６】
また、例えば、コンテンツによって、復号装置で、位置情報を早く復号して表示し、属性情報を後でゆっくり復号して表示してもよい場合に、三次元データ符号化装置は、位置情報の分割数を、属性情報の分割数より多くしてもよい。これにより、復号装置は、位置情報の並列数を多くできるので、位置情報の処理を属性情報の処理より高速化できる。
【０２６７】
なお、復号装置は、スライス化又はタイル化されているデータを必ずしも並列処理する必要はなく、復号処理部の数又は能力に応じて、これらを並列処理するかどうかを判定してもよい。
【０２６８】
以上のような方法で分割することにより、コンテンツ又はオブジェクトに応じた、適応的な符号化を実現できる。また、復号処理における並列処理を実現できる。これにより、点群符号化システム又は点群復号システムの柔軟性が向上する。
【０２６９】
図３８は、スライス及びタイルの分割のパターンの例を示す図である。図中のＤＵはデータ単位（ＤａｔａＵｎｉｔ）であり、タイル又はスライスのデータを示す。また、各ＤＵは、スライスインデックス（ＳｌｉｃｅＩｎｄｅｘ）とタイルインデックス（ＴｉｌｅＩｎｄｅｘ）を含む。図中のＤＵの右上の数値がスライスインデックスを示し、ＤＵの左下の数値がタイルインデックスを示す。
【０２７０】
パターン１では、スライス分割において、ＧスライスとＡスライスとで分割数及び分割方法は同じである。タイル分割において、Ｇスライスに対する分割数及び分割方法とＡスライスに対する分割数及び分割方法とは異なる。また、複数のＧスライス間では同一の分割数及び分割方法が用いられる。複数のＡスライス間では同一の分割数及び分割方法が用いられる。
【０２７１】
パターン２では、スライス分割において、ＧスライスとＡスライスとで分割数及び分割方法は同じである。タイル分割において、Ｇスライスに対する分割数及び分割方法とＡスライスに対する分割数及び分割方法とは異なる。また、複数のＧスライス間で分割数及び分割方法が異なる。複数のＡスライス間で分割数及び分割方法が異なる。
【０２７２】
（実施の形態６）
以下、タイル分割後にスライス分割を行う例について説明する。車両の自動運転等の自律型のアプリケーションでは、全ての領域の点群データではなく、車両の周辺の領域、又は車両の進行方向の地域の点群データが必要である。ここで、元の点群データを選択的に復号するためにタイル及びスライスを用いることができる。三次元点群データをタイルに分割し、さらにスライスを分割することで、符号化効率の向上、又は並列処理を実現できる。データを分割する際には、付加情報（メタデータ）が生成され、生成された付加情報は、多重化部に送られる。
【０２７３】
図３９は、本実施の形態に係る三次元データ符号化装置に含まれる第１の符号化部５０１０の構成を示すブロック図である。第１の符号化部５０１０は、点群データを第１の符号化方法（ＧＰＣＣ（Ｇｅｏｍｅｔｒｙ  ｂａｓｅｄ  ＰＣＣ））で符号化することで符号化データ（符号化ストリーム）を生成する。この第１の符号化部５０１０は、分割部５０１１と、複数の位置情報符号化部５０１２と、複数の属性情報符号化部５０１３と、付加情報符号化部５０１４と、多重化部５０１５とを含む。
【０２７４】
分割部５０１１は、点群データを分割することで複数の分割データを生成する。具体的には、分割部５０１１は、点群データの空間を複数のサブ空間に分割することで複数の分割データを生成する。ここでサブ空間とは、タイル及びスライスの一方、又はタイル及びスライスの組み合わせである。より具体的には、点群データは、位置情報、属性情報、及び付加情報を含む。分割部５０１１は、位置情報を複数の分割位置情報に分割し、属性情報を複数の分割属性情報に分割する。また、分割部５０１１は、分割に関する付加情報を生成する。
【０２７５】
例えば、分割部５０１１は、まず、点群をタイルに分割する。次に、分割部５０１１は、得られたタイルを、さらにスライスに分割する。
【０２７６】
複数の位置情報符号化部５０１２は、複数の分割位置情報を符号化することで複数の符号化位置情報を生成する。例えば、複数の位置情報符号化部５０１２は、複数の分割位置情報を並列処理する。
【０２７７】
複数の属性情報符号化部５０１３は、複数の分割属性情報を符号化することで複数の符号化属性情報を生成する。例えば、複数の属性情報符号化部５０１３は、複数の分割属性情報を並列処理する。
【０２７８】
付加情報符号化部５０１４は、点群データに含まれる付加情報と、分割部５０１１で分割時に生成された、データ分割に関する付加情報とを符号化することで符号化付加情報を生成する。
【０２７９】
多重化部５０１５は、複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を多重化することで符号化データ（符号化ストリーム）を生成し、生成した符号化データを送出する。また、符号化付加情報は復号時に使用される。
【０２８０】
なお、図３９では、位置情報符号化部５０１２及び属性情報符号化部５０１３の数がそれぞれ２つの例を示しているが、位置情報符号化部５０１２及び属性情報符号化部５０１３の数は、それぞれ１つであってもよいし、３つ以上であってもよい。また、複数の分割データは、ＣＰＵ内の複数コアのように同一チップ内で並列処理されてもよいし、複数のチップのコアで並列処理されてもよいし、複数チップの複数コアで並列処理されてもよい。
【０２８１】
次に、復号処理について説明する。図４０は、第１の復号部５０２０の構成を示すブロック図である。第１の復号部５０２０は、点群データが第１の符号化方法（ＧＰＣＣ）で符号化されることで生成された符号化データ（符号化ストリーム）を復号することで点群データを復元する。この第１の復号部５０２０は、逆多重化部５０２１と、複数の位置情報復号部５０２２と、複数の属性情報復号部５０２３と、付加情報復号部５０２４と、結合部５０２５とを含む。
【０２８２】
逆多重化部５０２１は、符号化データ（符号化ストリーム）を逆多重化することで複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を生成する。
【０２８３】
複数の位置情報復号部５０２２は、複数の符号化位置情報を復号することで複数の分割位置情報を生成する。例えば、複数の位置情報復号部５０２２は、複数の符号化位置情報を並列処理する。
【０２８４】
複数の属性情報復号部５０２３は、複数の符号化属性情報を復号することで複数の分割属性情報を生成する。例えば、複数の属性情報復号部５０２３は、複数の符号化属性情報を並列処理する。
【０２８５】
複数の付加情報復号部５０２４は、符号化付加情報を復号することで付加情報を生成する。
【０２８６】
結合部５０２５は、付加情報を用いて複数の分割位置情報を結合することで位置情報を生成する。結合部５０２５は、付加情報を用いて複数の分割属性情報を結合することで属性情報を生成する。例えば、結合部５０２５は、まず、スライス付加情報を用いて、スライスに対する復号された点群データを結合することでタイルに対応する点群データを生成する。次に、結合部５０２５は、タイル付加情報を用いて、タイルに対応する点群データを結合することで元の点群データを復元する。
【０２８７】
なお、図３９では、位置情報復号部５０２２及び属性情報復号部５０２３の数がそれぞれ２つの例を示しているが、位置情報復号部５０２２及び属性情報復号部５０２３の数は、それぞれ１つであってもよし、３つ以上であってもよい。また、複数の分割データは、ＣＰＵ内の複数コアのように同一チップ内で並列処理されてもよいし、複数のチップのコアで並列処理されてもよい、複数チップの複数コアで並列処理されてもよい。
【０２８８】
次に、点群データの分割方法について説明する。車両の自動運転等の自律型のアプリケーションでは、全ての領域の点群データではなく、車両の周辺の領域、又は車両の進行方向の地域の点群データが必要である。
【０２８９】
図４１は、タイルの形状の例を示す図である。図４１に示すように、タイルの形状として、円、矩形又は楕円等の様々な形状が用いられてもよい。
【０２９０】
図４２は、タイル及びスライスの例を示す図である。スライスの構成はタイル間で異なってもよい。例えば、タイル又はスライスの構成は、データ量に基づき最適化されてもよい。または、タイル又はスライスの構成は、復号速度に基づき最適化されてもよい。
【０２９１】
また、位置情報に基づきタイル分割が行われてもよい。この場合、属性情報は、対応する位置情報と同様に分割される。
【０２９２】
また、タイル分割後のスライス分割において、位置情報と属性情報とは異なる方法によりスライスに分割されてもよい。例えば、各タイルにおけるスライス分割の方法は、アプリケーションからの要求に応じて選択されてもよい。アプリケーションからの要求に基づき、異なるスライス分割の方法、又は、タイル分割の方法が用いられてもよい。
【０２９３】
例えば、分割部５０１１は、三次元点群データを上から見た二次元形状において、地図情報などの位置情報に基づき、点群データを１以上のタイルに分割する。その後、分割部５０１１は、それぞれのタイルを１以上のスライスに分割する。
【０２９４】
なお、分割部５０１１は、位置情報（Ｇｅｏｍｅｔｒｙ）と属性情報（Ａｔｔｒｉｂｕｔｅ）とを同じ方法でスライスに分割してもよい。
【０２９５】
なお、位置情報及び属性情報はそれぞれ１種類であってもよいし、２種類以上であってもよい。また、属性情報を持たない点群データの場合は、属性情報がなくてもよい。
【０２９６】
図４３は、分割部５０１１のブロック図である。分割部５０１１は、タイル分割部５０３１（Ｔｉｌｅ  Ｄｉｖｉｄｅｒ）と、位置情報スライス分割部５０３２（Ｇｅｏｍｅｔｒｙ  Ｓｌｉｃｅ  Ｄｉｖｉｄｅｒ）と、属性情報スライス分割部５０３３（Ａｔｔｒｉｂｕｔｅ  Ｓｌｉｃｅ  Ｄｉｖｉｄｅｒ）とを含む。
【０２９７】
タイル分割部５０３１は、位置情報（Ｐｏｓｉｔｉｏｎ（Ｇｅｏｍｅｔｒｙ））をタイルに分割することで複数のタイル位置情報を生成する。また、タイル分割部５０３１は、属性情報（Ａｔｔｒｉｂｕｔｅ）をタイルに分割することで複数のタイル属性情報を生成する。また、タイル分割部５０３１は、タイル分割に係る情報、及びタイル分割において生成された情報を含むタイル付加情報（ＴｉｌｅＭｅｔａＤａｔａ）を出力する。
【０２９８】
位置情報スライス分割部５０３２は、複数のタイル位置情報をスライスに分割することで複数の分割位置情報（複数のスライス位置情報）を生成する。また、位置情報スライス分割部５０３２は、位置情報のスライス分割に係る情報、及び位置情報のスライス分割において生成された情報を含む位置スライス付加情報（Ｇｅｏｍｅｔｒｙ  Ｓｌｉｃｅ  ＭｅｔａＤａｔａ）を出力する。
【０２９９】
属性情報スライス分割部５０３３は、複数のタイル属性情報をスライスに分割することで複数の分割属性情報（複数のスライス属性情報）を生成する。また、属性情報スライス分割部５０３３は、属性情報のスライス分割に係る情報、及び属性情報のスライス分割において生成された情報を含む属性スライス付加情報（Ａｔｔｒｉｂｕｔｅ  Ｓｌｉｃｅ  ＭｅｔａＤａｔａ）を出力する。
【０３００】
次に、タイルの形状の例について説明する。三次元地図（３Ｄマップ）の全体は、複数のタイルに分割される。複数のタイルのデータは、選択的に三次元データ復号装置に送信される。または、複数のタイルのデータのうち重要度の高いデータから順に三次元データ復号装置に送信される。状況に応じてタイルの形状は複数の形状から選択されてもよい。
【０３０１】
図４４は、ＬｉＤＡＲで得られた点群データを上面視した地図の一例を示す図である。図４４に示す例は、高速道路の点群データであり、立体交差部分（Ｆｌｙｏｖｅｒ）を含む。
【０３０２】
図４５は、図４４に示す点群データを正方形のタイルに分割した例を示す図である。このような正方形の分割は地図サーバにおいて容易に行うことができる。また、通常の道路に対しては、タイルの高さは低く設定される。立体交差部分では、タイルが立体交差部分を包含するように、タイルの高さは通常の道路よりも高く設定される。
【０３０３】
図４６は、図４４に示す点群データを円形のタイルに分割した例を示す図である。この場合、隣接するタイルが平面視において重複する場合がある。三次元データ符号化装置は、車両が周辺領域の点群データを必要な場合、車両の周辺の円柱（上面視における円）の領域の点群データを車両に送信する。
【０３０４】
また、図４５の例と同様に、通常の道路に対しては、タイルの高さは低く設定される。立体交差部分では、タイルが立体交差部分を包含するように、タイルの高さは通常の道路よりも高く設定される。
【０３０５】
三次元データ符号化装置は、タイルの高さを、例えば、道路又は建物の形状又は高さに応じて変えてもよい。また、三次元データ符号化装置は、位置情報又はエリア情報に応じてタイルの高さを変えてもよい。また、三次元データ符号化装置は、タイルの高さを、タイル毎に変えてもよい。または、三次元データ符号化装置は、複数のタイルを含む区間毎にタイルの高さを変えてもよい。つまり、三次元データ符号化装置は、区間内の複数のタイルの高さを同一にしてもよい。また、異なる高さのタイルが上面視において重複してもよい。
【０３０６】
図４７は、様々な形状、大きさ又は高さのタイルを用いた場合のタイル分割の例を示す図である。タイルの形状はどのような形状であってもよいし、どのような大きさであってもよいし、これらの組み合わせであってもよい。
【０３０７】
例えば、上述したような重複することなく正方形のタイルで分割する例、及び重複した円形のタイルで分割する例だけでなく、三次元データ符号化装置は、重複した正方形のタイルで分割を行ってもよい。また、タイルの形状は、正方形及び円形でなくてもよく、３以上の頂点を持つ多角形が用いられてもよいし、頂点を持たない形状が用いられてもよい。
【０３０８】
また、タイルの形状は、２種類以上であってもよいし、異なる形状のタイルが重複してもよい。また、タイルの形状の種類は１以上であり、分割する同一形状において、大きさの異なる形状を組み合わせてもよいし、それらが、重複してもよい。
【０３０９】
例えば、道路などのオブジェクトがない領域には、オブジェクトが存在する領域よりも大きなタイルが用いられる。また、三次元データ符号化装置は、オブジェクトに応じてタイルの形状又は大きさを適応的に変えてもよい。
【０３１０】
また、例えば、三次元データ符号化装置は、自動車（車両）の進行方向である、自動車の前方遠方のタイルの読み込みが必要となる可能性が高いため、進行方向のタイルを大きいサイズに設定し、自動車の側方に自動車が進む可能性が低いため、側方のタイルを進行方向のタイルよりも小さいサイズに設定してもよい。
【０３１１】
図４８は、サーバに保存されるタイルのデータの例を示す図である。例えば、予め点群データがタイル分割して符号化され、得られた符号化データがサーバに保存される。ユーザーは、必要なときに所望のタイルのデータをサーバから取得する。または、サーバ（三次元データ符号化装置）は、ユーザーの指示に応じてユーザーが所望するデータを含むようにタイル分割及び符号化を行ってもよい。
【０３１２】
例えば、移動体（車両）の移動速度が速い場合は、より広範囲な点群データが必要になることが考えられる。よって、サーバは、予め推測される車の速度（例えば、道路の法定速度、道路の幅及び形状から推測できる車の速度、又は統計上の速度等）に基づき、タイルの形状及び大きさを決定し、タイル分割を行ってもよい。あるいは、図４８に示すように、サーバは、予め複数の形状又は大きさのタイルを符号化し、得られたデータを保存しておいてもよい。移動体は、当該移動体の進行方向及び速度に応じて、適切な形状及び大きさのタイルのデータを取得してもよい。
【０３１３】
図４９は、タイル分割に関するシステムの例を示す図である。図４９に示すように、タイルの形状及び領域は、点群データを伝送する通信手段であるアンテナ（基地局）の位置、又はアンテナのサポートする通信エリアに基づいて決定されてもよい。あるいは、点群データをカメラなどのセンサで生成する場合、タイルの形状及び領域は、センサの位置又はセンサの対象範囲（検知範囲）に基づいて決定されてもよい。
【０３１４】
１つのアンテナ又はセンサに対して１つのタイルが割り当てられてもよいし、複数のアンテナ又はセンサに対して１つのタイルが割り当てられてもよい。１つのアンテナ又はセンサに対して複数のタイルが割り当てられてもよい。アンテナ又はセンサは固定されていてもよいし、移動可能であってもよい。
【０３１５】
例えば、タイルに分割された符号化データは、タイルに割り当てたエリアに対するアンテナ又はセンサに接続されたサーバで管理されてもよい。サーバは、自エリアの符号化データと、隣接するエリアのタイル情報とを管理してもよい。それぞれのタイルに対応する複数のサーバを管理する集中管理サーバ（クラウド）において、複数のタイルの複数の符号化データが管理されてもよい。または、タイルに対応するサーバを設けず、アンテナ又はセンサが集中管理サーバに直接接続されてもよい。
【０３１６】
なお、アンテナ又はセンサの対象範囲は、電波の電力、機器の違い、及び設置条件により異なる可能性があり、タイルの形状及び大きさも、これらに合わせて変化してもよい。アンテナ又はセンサの対象範囲に基づき、タイルではなく、スライスが割り当てられてもよいし、ＰＣＣフレームが割り当てられてもよい。
【０３１７】
次に、タイルをスライスに分割する手法について説明する。類似するオブジェクトを同じスライスに割り当てることで符号化効率を向上できる。
【０３１８】
例えば、三次元データ符号化装置は、点群データの特徴を用いてオブジェクト（道路、ビル、木など）を認識し、オブジェクト毎に点群をクラスタリングすることでスライス分割を行ってもよい。
【０３１９】
あるいは、三次元データ符号化装置は、同じ属性を持つオブジェクトをグループ化し、各グループにスライスを割り当てることでスライス分割を行ってもよい。ここで属性とは、例えば、動きに関する情報であり、歩行者及び車などの動的情報と、事故及び渋滞などの準動的情報と、交通規制及び道路工事などの準静的情報と、路面及び構造物などの静的情報とにオブジェクトを分類することでグループ化を行う。
【０３２０】
なお、複数のスライスにおいてデータが重複してもよい。例えば、複数のオブジェクトグループ毎にスライス分割する場合、任意のオブジェクトは１つのオブジェクトグループに属してもよいし、２以上の複数のオブジェクトグループに属してもよい。
【０３２１】
図５０は、このスライス分割の例を示す図である。例えば、図５０に示す例では、タイルは直方体である。なお、タイルは円柱状であってもよいし、その他の形状であってもよい。
【０３２２】
タイルに含まれる点群は、例えば、道、建物、木等のオブジェクトグループにグループ化される。そして、各オブジェクトグループが一つのスライスに含まれるようにスライス化が行われる。そして、各スライスは個別に符号化される。
【０３２３】
次に、分割データの符号化方法について説明する。三次元データ符号化装置（第１の符号化部５０１０）は、分割されたデータを、それぞれ符号化する。三次元データ符号化装置は、属性情報を符号化する際に、どの構成情報（位置情報、付加情報又は他の属性情報）に基づき符号化を行ったかを示す依存関係情報を付加情報として生成する。つまり、依存関係情報は、例えば、参照先（依存先）の構成情報を示す。この場合、三次元データ符号化装置は、属性情報の分割形状に対応する構成情報に基づき依存関係情報を生成する。なお、三次元データ符号化装置は、複数の分割形状に対応する構成情報に基づき依存関係情報を生成してもよい。
【０３２４】
依存関係情報は三次元データ符号化装置で生成され、生成された依存関係情報が三次元データ復号装置に送出されてもよい。または、三次元データ復号装置が依存関係情報を生成し、三次元データ符号化装置は依存関係情報を送出しなくてもよい。また、三次元データ符号化装置が使用する依存関係を、予め定めておき、三次元データ符号化装置は、依存関係情報を送出しなくてもよい。
【０３２５】
図５１は、各データの依存関係の一例を示す図である。図中の矢印の先は依存先を示し、矢印の元は依存元を示している。三次元データ復号装置は、依存先から依存元の順でデータを復号する。また、図中に実線で示すデータは実際に送出されるデータであり、点線で示すデータは送出されないデータである。
【０３２６】
また、同図において、Ｇは位置情報を示し、Ａは属性情報を示す。Ｇｔ１は、タイル番号１の位置情報を示し、Ｇｔ２は、タイル番号２の位置情報を示す。Ｇｔ１ｓ１は、タイル番号１かつスライス番号１の位置情報を示し、Ｇｔ１ｓ２は、タイル番号１かつスライス番号２の位置情報を示し、Ｇｔ２ｓ１は、タイル番号２かつスライス番号１の位置情報を示し、Ｇｔ２ｓ２は、タイル番号２かつスライス番号２の位置情報を示す。同様に、Ａｔ１は、タイル番号１の属性情報を示し、Ａｔ２は、タイル番号２の属性情報を示す。Ａｔ１ｓ１は、タイル番号１かつスライス番号１の属性情報を示し、Ａｔ１ｓ２は、タイル番号１かつスライス番号２の属性情報を示し、Ａｔ２ｓ１は、タイル番号２かつスライス番号１の属性情報を示し、Ａｔ２ｓ２は、タイル番号２かつスライス番号２の属性情報を示す。
【０３２７】
Ｍｔｉｌｅは、タイル付加情報を示し、ＭＧｓｌｉｃｅは、位置スライス付加情報を示し、ＭＡｓｌｉｃｅは、属性スライス付加情報を示す。Ｄｔ１ｓ１は属性情報Ａｔ１ｓ１の依存関係情報を示し、Ｄｔ２ｓ１は属性情報Ａｔ２ｓ１の依存関係情報を示す。
【０３２８】
なお、アプリケーション等に応じて、異なるタイル分割又はスライス分割の構造が用いられてもよい。
【０３２９】
また、三次元データ符号化装置は、三次元データ復号装置においてデータを並び替える必要がないように、データを復号順に並び替えてもよい。なお、三次元データ復号装置においてデータを並び替えてもよいし、三次元データ符号化装置と三次元データ復号装置との両方でデータを並び替えてもよい。
【０３３０】
図５２は、データの復号順の例を示す図である。図５２の例では、左のデータから順に復号が行われる。三次元データ復号装置は、依存関係にあるデータ間では、依存先のデータから先に復号する。例えば、三次元データ符号化装置は、この順序となるようにデータを予め並び替えて送出する。なお、依存先のデータが先になる順序であれば、どのような順序でもよい。また、三次元データ符号化装置は、付加情報及び依存関係情報をデータより先に送出してもよい。
【０３３１】
また、三次元データ復号装置は、アプリケーションからの要求、及びＮＡＬユニットヘッダから得られた情報に基づき、選択的にタイルを復号してもよい。図５３は、タイルの符号化データの例を示す図である。例えば、タイルの復号順は任意である。つまり、タイル間に依存関係がなくてもよい。
【０３３２】
次に、第１の復号部５０２０に含まれる結合部５０２５の構成を説明する。図５４は、結合部５０２５の構成を示すブロック図である。結合部５０２５は、位置情報スライス結合部５０４１（Ｇｅｏｍｅｔｒｙ  Ｓｌｉｃｅ  Ｃｏｍｂｉｎｅｒ）と、属性情報スライス結合部５０４２（Ａｔｔｒｉｂｕｔｅ  Ｓｌｉｃｅ  Ｃｏｍｂｉｎｅｒ）と、タイル結合部（Ｔｉｌｅ  Ｃｏｍｂｉｎｅｒ）とを含む。
【０３３３】
位置情報スライス結合部５０４１は、位置スライス付加情報を用いて複数の分割位置情報を結合することで複数のタイル位置情報を生成する。属性情報スライス結合部５０４２は、属性スライス付加情報を用いて複数の分割属性情報を結合することで複数のタイル属性情報を生成する。
【０３３４】
タイル結合部５０４３は、タイル付加情報を用いて複数のタイル位置情報を結合することで位置情報を生成する。また、タイル結合部５０４３は、タイル付加情報を用いて複数のタイル属性情報を結合することで属性情報を生成する。
【０３３５】
なお、分割されるスライス又はタイルの数は１以上である。つまり、スライス又はタイルの分割が行われていなくてもよい。
【０３３６】
次に、スライス分割又はタイル分割された符号化データの構成、及び符号化データのＮＡＬユニットへの格納方法（多重化方法）を説明する。図５５は、符号化データの構成及び符号化データのＮＡＬユニットへの格納方法を示す図である。
【０３３７】
符号化データ（分割位置情報及び分割属性情報）は、ＮＡＬユニットのペイロードに格納される。
【０３３８】
符号化データは、ヘッダとペイロードとを含む。ヘッダは、ペイロードに含まれるデータを特定するための識別情報を含む。この識別情報は、例えば、スライス分割或いはタイル分割の種別（ｓｌｉｃｅ＿ｔｙｐｅ、ｔｉｌｅ＿ｔｙｐｅ）、スライス或いはタイルを特定するためのインデックス情報（ｓｌｉｃｅ＿ｉｄｘ、ｔｉｌｅ＿ｉｄｘ）、データ（スライス或いはタイル）の位置情報、又はデータのアドレス（ａｄｄｒｅｓｓ）などを含む。スライスを特定するためのインデックス情報は、スライスインデックス（ＳｌｉｃｅＩｎｄｅｘ）とも記す。タイルを特定するためのインデックス情報は、タイルインデックス（ＴｉｌｅＩｎｄｅｘ）とも記す。また、分割の種別とは、例えば、上述したようなオブジェクト形状に基づく手法、地図情報或いは位置情報に基づく手法、又は、データ量或いは処理量に基づく手法等である。
【０３３９】
また、符号化データのヘッダは、依存関係を示す識別情報を含む。つまり、当該ヘッダは、データ間に依存関係がある場合は、依存元から依存先を参照するための識別情報を含む。例えば、依存先のデータのヘッダには、当該データを特定するための識別情報が含まれる。依存元のデータのヘッダには、依存先を示す識別情報が含まれる。なお、データを特定するための識別情報、スライス分割又はタイル分割に係る付加情報、及び依存関係を示す識別情報を、他の情報から識別可能又は導出可能である場合は、これらの情報を省略してもよい。
【０３４０】
次に、本実施の形態に係る点群データの符号化処理及び復号処理の流れについて説明する。図５６は、本実施の形態に係る点群データの符号化処理のフローチャートである。
【０３４１】
まず、三次元データ符号化装置は、使用する分割方法を決定する（Ｓ５０１１）。この分割方法は、タイル分割を行うか否か、スライス分割を行うか否かを含む。また、分割方法は、タイル分割又はスライス分割を行う場合の分割数、及び、分割の種別等を含んでもよい。分割の種別とは、上述したようなオブジェクト形状に基づく手法、地図情報或いは位置情報に基づく手法、又は、データ量或いは処理量に基づく手法等である。なお、分割方法は、予め定められていてもよい。
【０３４２】
タイル分割が行われる場合（Ｓ５０１２でＹｅｓ）、三次元データ符号化装置は、位置情報と属性情報とを一括で分割することで複数のタイル位置情報及び複数のタイル属性情報を生成する（Ｓ５０１３）。また、三次元データ符号化装置は、タイル分割に係るタイル付加情報を生成する。なお、三次元データ符号化装置は、位置情報と属性情報とを独立に分割してもよい。
【０３４３】
スライス分割が行われる場合（Ｓ５０１４でＹｅｓ）、三次元データ符号化装置は、複数のタイル位置情報及び複数のタイル属性情報（又は位置情報及び属性情報）を独立に分割することで複数の分割位置情報及び複数の分割属性情報を生成する（Ｓ５０１５）。また、三次元データ符号化装置は、スライス分割に係る位置スライス付加情報及び属性スライス付加情報を生成する。なお、三次元データ符号化装置は、タイル位置情報とタイル属性情報とを一括で分割してもよい。
【０３４４】
次に、三次元データ符号化装置は、複数の分割位置情報及び複数の分割属性情報の各々を符号化することで、複数の符号化位置情報及び複数の符号化属性情報を生成する（Ｓ５０１６）。また、三次元データ符号化装置は、依存関係情報を生成する。
【０３４５】
次に、三次元データ符号化装置は、複数の符号化位置情報、複数の符号化属性情報及び付加情報をＮＡＬユニット化（多重化）することで符号化データ（符号化ストリーム）を生成する（Ｓ５０１７）。また、三次元データ符号化装置は、生成した符号化データを送出する。
【０３４６】
図５７は、本実施の形態に係る点群データの復号処理のフローチャートである。まず、三次元データ復号装置は、符号化データ（符号化ストリーム）に含まれる、分割方法に係る付加情報（タイル付加情報、位置スライス付加情報及び属性スライス付加情報）を解析することで、分割方法を判定する（Ｓ５０２１）。この分割方法は、タイル分割を行うか否か、スライス分割を行うか否かを含む。また、分割方法は、タイル分割又はスライス分割を行う場合の分割数、及び、分割の種別等を含んでもよい。
【０３４７】
次に、三次元データ復号装置は、符号化データに含まれる複数の符号化位置情報及び複数の符号化属性情報を、符号化データに含まれる依存関係情報を用いて復号することで分割位置情報及び分割属性情報を生成する（Ｓ５０２２）。
【０３４８】
付加情報によりスライス分割が行われていることが示される場合（Ｓ５０２３でＹｅｓ）、三次元データ復号装置は、位置スライス付加情報及び属性スライス付加情報に基づき、複数の分割位置情報と、複数の分割属性情報とを、それぞれの方法で結合することで、複数のタイル位置情報及び複数のタイル属性情報を生成する（Ｓ５０２４）。なお、三次元データ復号装置は、複数の分割位置情報と、複数の分割属性情報とを同一の方法で結合してもよい。
【０３４９】
付加情報によりタイル分割が行われていることが示される場合（Ｓ５０２５でＹｅｓ）、三次元データ復号装置は、タイル付加情報に基づき、複数のタイル位置情報及び複数のタイル属性情報（複数の分割位置情報及び複数の分割属性情報）を同一の方法で結合することで位置情報及び属性情報を生成する（Ｓ５０２６）。なお、三次元データ復号装置は、複数のタイル位置情報と複数のタイル属性情報とを、それぞれ異なる方法で結合してもよい。
【０３５０】
次に、タイル付加情報について説明する。三次元データ符号化装置は、タイルの分割方法に関するメタデータであるタイル付加情報を生成し、生成したタイル付加情報を三次元データ復号装置に送信する。
【０３５１】
図５８は、タイル付加情報（ＴｉｌｅＭｅｔａＤａｔａ）のシンタックス例を示す図である。図５８に示すように、例えば、タイル付加情報は、分割方法情報（ｔｙｐｅ＿ｏｆ＿ｄｉｖｉｄｅ）と、形状情報（ｔｏｐｖｉｅｗ＿ｓｈａｐｅ）と、重複フラグ（ｔｉｌｅ＿ｏｖｅｒｌａｐ＿ｆｌａｇ）と、重複情報（ｔｙｐｅ＿ｏｆ＿ｏｖｅｒｌａｐ）と、高さ情報（ｔｉｌｅ＿ｈｅｉｇｈｔ）と、タイル数（ｔｉｌｅ＿ｎｕｍｂｅｒ）と、タイル位置情報（ｇｌｏｂａｌ＿ｐｏｓｉｔｉｏｎ、ｒｅｌａｔｉｖｅ＿ｐｏｓｉｔｉｏｎ）と、を含む。
【０３５２】
分割方法情報（ｔｙｐｅ＿ｏｆ＿ｄｉｖｉｄｅ）は、タイルの分割方法を示す。例えば、分割方法情報は、タイルの分割方法が、地図の情報に基づいた分割であるか、つまり上面視に基づく分割（ｔｏｐ＿ｖｉｅｗ）であるか、それ以外（ｏｔｈｅｒ）であるかを示す。
【０３５３】
形状情報（ｔｏｐｖｉｅｗ＿ｓｈａｐｅ）は、例えば、タイルの分割方法が上面視に基づく分割である場合に、タイル付加情報に含まれる。形状情報は、タイルを上面視した形状を示す。例えば、この形状は、正方形及び円を含む。なお、この形状は、楕円、矩形又は四角形以外の多角形を含んでもよいし、それ以外の形状を含んでもよい。なお、形状情報は、タイルを上面視した形状に限らず、タイルの三次元形状（例えば、立方体及び円柱等）を示してもよい。
【０３５４】
重複フラグ（ｔｉｌｅ＿ｏｖｅｒｌａｐ＿ｆｌａｇ）は、タイルが重複するか否かを示す。例えば、重複フラグは、タイルの分割方法が上面視に基づく分割である場合に、タイル付加情報に含まれる。この場合、重複フラグは、上面視において、タイルが重複するか否かを示す。なお、重複フラグは、三次元空間においてタイルが重複するか否かを示してもよい。
【０３５５】
重複情報（ｔｙｐｅ＿ｏｆ＿ｏｖｅｒｌａｐ）は、例えば、タイルが重複する場合に、タイル付加情報に含まれる。重複情報は、タイルの重複のしかた等を示す。例えば、重複情報は、重複する領域の大きさ等を示す。
【０３５６】
高さ情報（ｔｉｌｅ＿ｈｅｉｇｈｔ）は、タイルの高さを示す。なお、高さ情報は、タイルの形状を示す情報を含んでもよい。例えば、当該情報は、タイルの上面視における形状が矩形の場合には、当該の矩形の辺の長さ（縦の長さ及び横の長さ）を示してもよい。また、当該情報は、タイルの上面視における形状が円の場合には、当該円の直径又は半径を示してもよい。
【０３５７】
また、高さ情報は、各タイルの高さを示してもよし、複数のタイルで共通の高さを示してもよい。また、予め道路及び立体交差部分等の複数の高さタイプが設定され、高さ情報により、各高さタイプの高さと、各タイルの高さタイプとが示されてもよい。または、各高さタイプの高さは予め定義されており、高さ情報により、各タイルの高さタイプが示されてもよい。つまり、各高さタイプの高さは、高さ情報で示されなくてもよい。
【０３５８】
タイル数（ｔｉｌｅ＿ｎｕｍｂｅｒ）は、タイルの数を示す。なお、タイル付加情報は、タイルの間隔を示す情報を含んでもよい。
【０３５９】
タイル位置情報（ｇｌｏｂａｌ＿ｐｏｓｉｔｉｏｎ、ｒｅｌａｔｉｖｅ＿ｐｏｓｉｔｉｏｎ）は、各タイルの位置を特定するための情報である。例えば、タイル位置情報は、各タイルの絶対座標又は相対座標を示す。
【０３６０】
なお、上記の情報の一部又は全ては、タイル毎に設けられてもよいし、複数のタイル毎（例えばフレーム毎又は複数フレーム毎）に設けられてもよい。
【０３６１】
三次元データ符号化装置は、タイル付加情報を、ＳＥＩ（Ｓｕｐｐｌｅｍｅｎｔａｌ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ）に含めて送出してもよい。または、三次元データ符号化装置は、タイル付加情報を、既存のパラメータセット（ＰＰＳ、ＧＰＳ、又はＡＰＳ等）に格納して送出してもよい。
【０３６２】
例えば、タイル付加情報がフレーム毎に変化する場合は、フレーム毎のパラメータセット（ＧＰＳ又はＡＰＳ等）にタイル付加情報が格納されてもよい。シーケンス内でタイル付加情報が変化しない場合は、シーケンス毎のパラメータセット（位置ＳＰＳ又は属性ＳＰＳ）にタイル付加情報が格納されてもよい。さらに、位置情報と属性情報とで同じタイル分割情報が用いられる場合は、ＰＣＣストリームのパラメータセット（ストリームＰＳ）にタイル付加情報が格納されてもよい。
【０３６３】
また、タイル付加情報は、上記のいずれかのパラメータセットに格納されてもよいし、複数のパラメータセットに格納されてもよい。また、タイル付加情報は、符号化データのヘッダに格納されてもよい。また、タイル付加情報は、ＮＡＬユニットのヘッダに格納されてもよい。
【０３６４】
また、タイル付加情報の全て又は一部は、分割位置情報のヘッダ及び分割属性情報のヘッダの一方に格納され、他方に格納されてなくてもよい。例えば、位置情報と属性情報とで同一のタイル付加情報が用いられる場合には、位置情報と属性情報の一方のヘッダにタイル付加情報が含まれてもよい。例えば、位置情報に属性情報が依存する場合には、位置情報が先に処理される。よって、位置情報のヘッダにこれらのタイル付加情報が含まれ、属性情報のヘッダにはタイル付加情報が含まれなくてもよい。この場合、三次元データ復号装置は、例えば、依存先の位置情報のタイルと同一のタイルに依存元の属性情報が属すると判断する。
【０３６５】
三次元データ復号装置は、タイル付加情報に基づき、タイル分割された点群データを再構成する。三次元データ復号装置は、重複する点群データがある場合は、重複する複数の点群データを特定し、いずれかを選択、又は複数の点群データをマージする。
【０３６６】
また、三次元データ復号装置は、タイル付加情報を用いて復号を行ってもよい。例えば、三次元データ復号装置は、複数のタイルが重複する場合は、タイル毎に復号を行い、復号された複数のデータを用いた処理（例えば平滑化、又はフィルタリング等）を行い、点群データを生成してもよい。これにより精度の高い復号が可能となる可能性がある。
【０３６７】
図５９は、三次元データ符号化装置及び三次元データ復号装置を含むシステムの構成例を示す図である。タイル分割部５０５１は、位置情報及び属性情報を含む点群データを第１タイルと第２タイルとに分割する。また、タイル分割部５０５１は、タイル分割に係るタイル付加情報を復号部５０５３及びタイル結合部５０５４に送る。
【０３６８】
符号化部５０５２は、第１タイル及び第２タイルを符号化することで符号化データを生成する。
【０３６９】
復号部５０５３は、符号化部５０５２で生成された符号化データを復号することで第１タイル及び第２タイルを復元する。タイル結合部５０５４は、タイル付加情報を用いて、第１タイル及び第２タイルを結合することで点群データ（位置情報及び属性情報）を復元する。
【０３７０】
次に、スライス付加情報について説明する。三次元データ符号化装置は、スライスの分割方法に関するメタデータであるスライス付加情報を生成し、生成したスライス付加情報を三次元データ復号装置に送信する。
【０３７１】
図６０は、スライス付加情報（ＳｌｉｃｅＭｅｔａＤａｔａ）のシンタックス例を示す図である。図６０に示すように、例えば、スライス付加情報は、分割方法情報（ｔｙｐｅ＿ｏｆ＿ｄｉｖｉｄｅ）と、重複フラグ（ｓｌｉｃｅ＿ｏｖｅｒｌａｐ＿ｆｌａｇ）と、重複情報（ｔｙｐｅ＿ｏｆ＿ｏｖｅｒｌａｐ）と、スライス数（ｓｌｉｃｅ＿ｎｕｍｂｅｒ）と、スライス位置情報（ｇｌｏｂａｌ＿ｐｏｓｉｔｉｏｎ、ｒｅｌａｔｉｖｅ＿ｐｏｓｉｔｉｏｎ）と、スライスサイズ情報（ｓｌｉｃｅ＿ｂｏｕｎｄｉｎｇ＿ｂｏｘ＿ｓｉｚｅ）とを含む。
【０３７２】
分割方法情報（ｔｙｐｅ＿ｏｆ＿ｄｉｖｉｄｅ）は、スライスの分割方法を示す。例えば、分割方法情報は、スライスの分割方法が、図５０で示すようなオブジェクトの情報に基づいた分割である（ｏｂｊｅｃｔ）か否かを示す。なお、スライス付加情報は、オブジェクト分割の方法を示す情報を含んでもよい。例えば、この情報は、１つのオブジェクトを複数のスライスに分割するか、１つのスライスに割り当てるかを示す。また、この情報は、１つのオブジェクトを複数のスライスに分割する場合の分割数等を示してもよい。
【０３７３】
重複フラグ（ｓｌｉｃｅ＿ｏｖｅｒｌａｐ＿ｆｌａｇ）は、スライスが重複するか否かを示す。重複情報（ｔｙｐｅ＿ｏｆ＿ｏｖｅｒｌａｐ）は、例えば、スライスが重複する場合に、スライス付加情報に含まれる。重複情報は、スライスの重複のしかた等を示す。例えば、重複情報は、重複する領域の大きさ等を示す。
【０３７４】
スライス数（ｓｌｉｃｅ＿ｎｕｍｂｅｒ）は、スライスの数を示す。
【０３７５】
スライス位置情報（ｇｌｏｂａｌ＿ｐｏｓｉｔｉｏｎ、ｒｅｌａｔｉｖｅ＿ｐｏｓｉｔｉｏｎ）、及びスライスサイズ情報（ｓｌｉｃｅ＿ｂｏｕｎｄｉｎｇ＿ｂｏｘ＿ｓｉｚｅ）は、スライスの領域に関する情報である。スライス位置情報は、各スライスの位置を特定するための情報である。例えば、スライス位置情報は、各スライスの絶対座標又は相対座標を示す。スライスサイズ情報（ｓｌｉｃｅ＿ｂｏｕｎｄｉｎｇ＿ｂｏｘ＿ｓｉｚｅ）は、各スライスのサイズを示す。例えば、スライスサイズ情報は、各スライスのバウンディングボックスのサイズを示す。
【０３７６】
三次元データ符号化装置は、スライス付加情報をＳＥＩに含めて送出してもよい。または、三次元データ符号化装置は、スライス付加情報を、既存のパラメータセット（ＰＰＳ、ＧＰＳ、又はＡＰＳ等）に格納して送出してもよい。
【０３７７】
例えば、スライス付加情報がフレーム毎に変化する場合は、フレーム毎のパラメータセット（ＧＰＳ又はＡＰＳ等）にスライス付加情報が格納されてもよい。シーケンス内でスライス付加情報が変化しない場合は、シーケンス毎のパラメータセット（位置ＳＰＳ又は属性ＳＰＳ）にスライス付加情報が格納されてもよい。さらに、位置情報と属性情報とで同じスライス分割情報が用いられる場合は、ＰＣＣストリームのパラメータセット（ストリームＰＳ）にスライス付加情報が格納されてもよい。
【０３７８】
また、スライス付加情報は、上記のいずれかのパラメータセットに格納されてもよいし、複数のパラメータセットに格納されてもよい。また、スライス付加情報は、符号化データのヘッダに格納されてもよい。また、スライス付加情報は、ＮＡＬユニットのヘッダに格納されてもよい。
【０３７９】
また、スライス付加情報の全て又は一部は、分割位置情報のヘッダ及び分割属性情報のヘッダの一方に格納され、他方に格納されてなくてもよい。例えば、位置情報と属性情報とで同一のスライス付加情報が用いられる場合には、位置情報と属性情報の一方のヘッダにスライス付加情報が含まれてもよい。例えば、位置情報に属性情報が依存する場合には、位置情報が先に処理される。よって、位置情報のヘッダにこれらのスライス付加情報が含まれ、属性情報のヘッダにはスライス付加情報が含まれなくてもよい。この場合、三次元データ復号装置は、例えば、依存先の位置情報のスライスと同一のスライスに依存元の属性情報が属すると判断する。
【０３８０】
三次元データ復号装置は、スライス付加情報に基づき、スライス分割された点群データを再構成する。三次元データ復号装置は、重複する点群データがある場合は、重複する複数の点群データを特定し、いずれかを選択、又は複数の点群データをマージする。
【０３８１】
また、三次元データ復号装置は、スライス付加情報を用いて復号を行ってもよい。例えば、三次元データ復号装置は、複数のスライスが重複する場合は、スライス毎に復号を行い、復号された複数のデータを用いた処理（例えば平滑化、又はフィルタリング）を行い、点群データを生成してもよい。これにより精度の高い復号が可能となる可能性がある。
【０３８２】
図６１は、本実施の形態に係る三次元データ符号化装置による、タイル付加情報の生成処理を含む三次元データ符号化処理のフローチャートである。
【０３８３】
まず、三次元データ符号化装置は、タイルの分割方法を決定する（Ｓ５０３１）。具体的には、三次元データ符号化装置は、タイルの分割方法として、上面視に基づく分割方法（ｔｏｐ＿ｖｉｅｗ）を用いるか、それ以外（ｏｔｈｅｒ）を用いるかを決定する。また、三次元データ符号化装置は、上面視に基づく分割方法を用いる場合のタイルの形状を決定する。また、三次元データ符号化装置は、タイルが他のタイルと重複するか否かを決定する。
【０３８４】
ステップＳ５０３１で決定したタイルの分割方法が上面視に基づく分割方法である場合（Ｓ５０３２でＹｅｓ）、三次元データ符号化装置は、タイルの分割方法が上面視に基づく分割方法（ｔｏｐ＿ｖｉｅｗ）であることをタイル付加情報に記載する（Ｓ５０３３）。
【０３８５】
一方、ステップＳ５０３１で決定したタイルの分割方法が上面視に基づく分割方法以外である場合（Ｓ５０３２でＮｏ）、三次元データ符号化装置は、タイルの分割方法が上面視に基づく分割方法（ｔｏｐ＿ｖｉｅｗ）以外の方法であることをタイル付加情報に記載する（Ｓ５０３４）。
【０３８６】
また、ステップＳ５０３１で決定した、タイルを上面視した形状が正方形である場合（Ｓ５０３５で正方形）、三次元データ符号化装置は、タイルを上面視した形状が正方形であることをタイル付加情報に記載する（Ｓ５０３６）。一方、ステップＳ５０３１で決定した、タイルを上面視した形状が円である場合（Ｓ５０３５で円）、三次元データ符号化装置は、タイルを上面視した形状が円であることをタイル付加情報に記載する（Ｓ５０３７）。
【０３８７】
次に、三次元データ符号化装置は、タイルが他のタイルと重複するかを判定する（Ｓ５０３８）。タイルが他のタイルと重複している場合（Ｓ５０３８でＹｅｓ）、三次元データ符号化装置は、タイルが重複していることをタイル付加情報に記載する（Ｓ５０３９）。一方、タイルが他のタイルと重複していない場合（Ｓ５０３８でＮｏ）、三次元データ符号化装置は、タイルが重複していないことをタイル付加情報に記載する（Ｓ５０４０）。
【０３８８】
次に、三次元データ符号化装置は、ステップＳ５０３１で決定したタイルの分割方法に基づきタイルを分割し、各タイルを符号化し、生成された符号化データ及びタイル付加情報を送出する（Ｓ５０４１）。
【０３８９】
図６２は、本実施の形態に係る三次元データ復号装置による、タイル付加情報を用いた三次元データ復号処理のフローチャートである。
【０３９０】
まず、三次元データ復号装置は、ビットストリームに含まれるタイル付加情報を解析する（Ｓ５０５１）。
【０３９１】
タイル付加情報によりタイルが他のタイルと重複していないことが示される場合（Ｓ５０５２でＮｏ）、三次元データ復号装置は、各タイルを復号することで各タイルの点群データを生成する（Ｓ５０５３）。次に、三次元データ復号装置は、タイル付加情報で示されるタイルの分割方法及びタイルの形状に基づき、各タイルの点群データから点群データを再構成する（Ｓ５０５４）。
【０３９２】
一方、タイル付加情報によりタイルが他のタイルと重複していることが示される場合（Ｓ５０５２でＹｅｓ）、三次元データ復号装置は、各タイルを復号することで各タイルの点群データを生成する。また、三次元データ復号装置は、タイル付加情報に基づき、タイルの重複部分を特定する（Ｓ５０５５）。なお、三次元データ復号装置は、重複部分については重複する複数の情報を用いて復号処理を行ってもよい。次に、三次元データ復号装置は、タイル付加情報で示されるタイルの分割方法、タイルの形状、及び重複情報に基づき、各タイルの点群データから点群データを再構成する（Ｓ５０５６）。
【０３９３】
以下、スライスに関する変形例等を説明する。三次元データ符号化装置は、オブジェクトの種類（道、建物、木等）又は属性（動的情報、静的情報等）を示す情報を付加情報として送信してもよい。または、オブジェクトに応じて符号化のパラメータが予め規定され、三次元データ符号化装置は、オブジェクトの種類又は属性を送出することにより符号化パラメータを三次元データ復号装置へ通知してもよい。
【０３９４】
スライスデータの符号化順及び送出順について以下の方法を用いてもよい。例えば、三次元データ符号化装置は、オブジェクトの認識又はクラスタリングが容易なデータから順にスライスデータを符号化してもよい。または、三次元データ符号化装置は、早くクラスタリングが終わったスライスデータから順に符号化を行ってもよい。また、三次元データ符号化装置は、符号化されたスライスデータから順に送出してもよい。または、三次元データ符号化装置は、アプリケーションにおいて復号の優先度の高い順にスライスデータを送出してもよい。例えば、動的情報の復号の優先度が高い場合には、三次元データ符号化装置は、動的情報でグループ化されたスライスから順にスライスデータを送出してもよい。
【０３９５】
また、三次元データ符号化装置は、符号化データの順番と、復号の優先度の順番とが異なる場合には、符号化データを並び替えた後に送出してもよい。また、三次元データ符号化装置は、符号化データを蓄積する際には、符号化データを並び替えた後に蓄積してもよい。
【０３９６】
アプリケーション（三次元データ復号装置）は、所望のデータを含むスライスの送出をサーバ（三次元データ符号化装置）に要求する。サーバはアプリケーションが必要とするスライスデータを送出し、不要なスライスデータは送出しなくてもよい。
【０３９７】
アプリケーションは、所望のデータを含むタイルの送出をサーバに要求する。サーバはアプリケーションが必要とするタイルデータを送出し、不要なタイルデータは送出しなくてもよい。
【０３９８】
以上のように、本実施の形態に係る三次元データ符号化装置は、図６３に示す処理を行う。まず、三次元データ符号化装置は、複数の三次元点が含まれる対象空間を分割した複数のサブ空間（例えばタイル）を符号化することで複数の符号化データを生成する（Ｓ５０６１）。三次元データ符号化装置は、前記複数の符号化データと、前記複数のサブ空間の形状を示す第１情報（例えばｔｏｐｖｉｅｗ＿ｓｈａｐｅ）とを含むビットストリームを生成する（Ｓ５０６２）。
【０３９９】
これによれば、三次元データ符号化装置は、複数種類のサブ空間の形状から任意の形状を選択できるので符号化効率を向上できる。
【０４００】
例えば、前記形状は、前記複数のサブ空間の二次元における形状、又は三次元における形状である。例えば、前記形状は、前記複数のサブ空間を上面視した形状である。つまり、第１情報は、サブ空間を特定の方向（例えば上方向）から見た形状を示す。言い換えると、第１情報は、サブ空間を俯瞰した形状を示す。例えば、前記形状は、矩形又は円である。
【０４０１】
例えば、前記ビットストリームは、前記複数のサブ区間が重複するか否かを示す第２情報（例えばｔｉｌｅ＿ｏｖｅｒｌａｐ＿ｆｌａｇ）を含む。
【０４０２】
これによれば、三次元データ符号化装置は、サブ空間を重複させることができるので、サブ空間の形状を複雑にすることなくサブ空間を生成できる。
【０４０３】
例えば、前記ビットストリームは、前記複数のサブ区間の分割方法が上面視を用いた分割方法であるかを示す第３情報（例えばｔｙｐｅ＿ｏｆ＿ｄｉｖｉｄｅ）を含む。
【０４０４】
例えば、前記ビットストリームは、前記複数のサブ区間の高さ、幅、奥行き及び半径のうち少なくとも１つを示す第４情報（例えばｔｉｌｅ＿ｈｅｉｇｈｔ）を含む。
【０４０５】
例えば、前記ビットストリームは、前記複数のサブ区間の各々の位置を示す第５情報（例えばｇｌｏｂａｌ＿ｐｏｓｉｔｉｏｎ又はｒｅｌａｔｉｖｅ＿ｐｏｓｉｔｉｏｎ）を含む。
【０４０６】
例えば、前記ビットストリームは、前記複数のサブ区間の数を示す第６情報（例えばｔｉｌｅ＿ｎｕｍｂｅｒ）を含む。
【０４０７】
例えば、前記ビットストリームは、前記複数のサブ区間の間隔を示す第７情報を含む。
【０４０８】
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０４０９】
また、本実施の形態に係る三次元データ復号装置は、図６４に示す処理を行う。まず、三次元データ復号装置は、ビットストリームに含まれる、複数の三次元点が含まれる対象空間を分割した複数のサブ空間（例えばタイル）が符号化されることで生成された複数の符号化データを復号することで前記複数のサブ空間を復元する（Ｓ５０７１）。三次元データ復号装置は、前記ビットストリームに含まれる、前記複数のサブ空間の形状を示す第１情報（例えばｔｏｐｖｉｅｗ＿ｓｈａｐｅ）を用いて前記複数のサブ空間を結合することで前記対象空間を復元する（Ｓ５０７２）。例えば、三次元データ復号装置は、第１情報を用いて、複数のサブ空間の形状を認識することで、各サブ空間の対象空間内の位置及び範囲を把握できる。三次元データ復号装置は、把握した複数のサブ空間の位置及び範囲に基づき複数のサブ空間を結合できる。これにより、三次元データ復号装置は、複数のサブ空間を正しく結合できる。
【０４１０】
例えば、前記形状は、前記複数のサブ空間の二次元における形状、又は三次元における形状である。例えば、前記形状は、矩形又は円である。
【０４１１】
例えば、前記ビットストリームは、前記複数のサブ区間が重複するか否かを示す第２情報（例えばｔｉｌｅ＿ｏｖｅｒｌａｐ＿ｆｌａｇ）を含む。三次元データ復号装置は、前記対象空間の復元では、前記第２情報をさらに用いて前記複数のサブ空間を結合する。例えば、三次元データ復号装置は、第２情報を用いて、サブ空間が重複している否かを判定する。三次元データ復号装置は、サブ空間が重複している場合には、重複領域を特定し、特定した重複領域に対しては、所定の対応を行う。
【０４１２】
例えば、前記ビットストリームは、前記複数のサブ区間の分割方法が上面視を用いた分割方法であるかを示す第３情報（例えばｔｙｐｅ＿ｏｆ＿ｄｉｖｉｄｅ）を含む。三次元データ復号装置は、前記第３情報により、前記複数のサブ区間の分割方法が上面視を用いた分割方法であることが示される場合、前記第１情報を用いて前記複数のサブ空間を結合する。
【０４１３】
例えば、前記ビットストリームは、前記複数のサブ区間の高さ、幅、奥行き及び半径のうち少なくとも１つを示す第４情報（例えばｔｉｌｅ＿ｈｅｉｇｈｔ）を含む。三次元データ復号装置は、前記対象空間の復元では、前記第４情報をさらに用いて前記複数のサブ空間を結合する。例えば、三次元データ復号装置は、第４情報を用いて、複数のサブ空間の高さを認識することで、各サブ空間の対象空間内の位置及び範囲を把握できる。三次元データ復号装置は、把握した複数のサブ空間の位置及び範囲に基づき複数のサブ空間を結合できる。
【０４１４】
例えば、前記ビットストリームは、前記複数のサブ区間の各々の位置を示す第５情報（例えばｇｌｏｂａｌ＿ｐｏｓｉｔｉｏｎ又はｒｅｌａｔｉｖｅ＿ｐｏｓｉｔｉｏｎ）を含む。三次元データ復号装置は、前記対象空間の復元では、前記第５情報をさらに用いて前記複数のサブ空間を結合する。例えば、三次元データ復号装置は、第５情報を用いて、複数のサブ空間の位置を認識することで、各サブ空間の対象空間内の位置を把握できる。三次元データ復号装置は、把握した複数のサブ空間の位置に基づき複数のサブ空間を結合できる。
【０４１５】
例えば、前記ビットストリームは、前記複数のサブ区間の数を示す第６情報（例えばｔｉｌｅ＿ｎｕｍｂｅｒ）を含む。三次元データ復号装置は、前記対象空間の復元では、前記第６情報をさらに用いて前記複数のサブ空間を結合する。
【０４１６】
例えば、前記ビットストリームは、前記複数のサブ区間の間隔を示す第７情報を含む。三次元データ復号装置は、前記対象空間の復元では、前記第７情報をさらに用いて前記複数のサブ空間を結合する。例えば、三次元データ復号装置は、第７情報を用いて、複数のサブ空間の間隔を認識することで、各サブ空間の対象空間内の位置及び範囲を把握できる。三次元データ復号装置は、把握した複数のサブ空間の位置及び範囲に基づき複数のサブ空間を結合できる。
【０４１７】
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０４１８】
（実施の形態７）
以下、量子化パラメータについて説明する。
【０４１９】
点群データの特性および位置に基づき点群データを分割するために、スライスおよびタイルが用いられる。ここで、ハードウェアの制限、および、リアルタイム処理の要件により、それぞれの分割された点群データに求められる品質が異なる場合がある。例えば、オブジェクト毎にスライスに分割して符号化する場合、植物を含むスライスデータは、それほど重要でないため、量子化することにより解像度（品質）を落とすことができる。一方、重要なスライスデータは量子化の値を低い値に設定することで高い解像度（品質）とすることができる。このような量子化値のコントロールを可能とするために量子化パラメータが用いられる。
【０４２０】
ここで、量子化の対象となるデータと、量子化に用いられるスケールと、量子化によって算出される結果である量子化データとは、以下の（式Ｇ１）と（式Ｇ２）で表される。
【０４２１】
量子化データ＝データ／スケール      （式Ｇ１）
【０４２２】
データ＝量子化データ＊スケール      （式Ｇ２）
【０４２３】
図６５は、データを量子化する量子化部５３２３、および、量子化データを逆量子化する逆量子化部５３３３の処理について説明するための図である。
【０４２４】
量子化部５３２３は、スケールを用いてデータを量子化する、つまり、式Ｇ１を用いる処理を行うことで、データが量子化された量子化データを算出する。
【０４２５】
逆量子化部５３３３は、スケールを用いて量子化データを逆量子化する、つまり、式Ｇ２を用いる処理を行うことで、量子化データが逆量子化されたデータを算出する。
【０４２６】
また、スケールと、量子化値（ＱＰ（Quantization Parameter）値）とは、以下の（式Ｇ３）で表される。
【０４２７】
量子化値（ＱＰ値）＝ｌｏｇ（スケール）      （式Ｇ３）
【０４２８】
量子化値（ＱＰ値）＝デフォルト値（基準値）＋量子化デルタ（差分情報）      （式Ｇ４）
【０４２９】
また、これらのパラメータを総称して量子化パラメータ（Quantization Parameter）と呼ぶ。
【０４３０】
例えば、図６６に示されるように、量子化値は、デフォルト値を基準とした値であり、デフォルト値に量子化デルタを加算することで算出される。量子化値がデフォルト値よりも小さい値である場合には、量子化デルタは負の値となる。量子化値がデフォルト値よりも大きい値である場合には、量子化デルタは正の値となる。量子化値がデフォルト値と等しい場合には、量子化デルタは０となる。量子化デルタが０である場合、量子化デルタは、なくてもよい。
【０４３１】
符号化処理について説明する。図６７は、本実施の形態に係る三次元データ符号化装置に含まれる第１の符号化部５３００の構成を示すブロック図である。図６８は、本実施の形態に係る分割部５３０１の構成を示すブロック図である。図６９は、本実施の形態に係る位置情報符号化部５３０２および属性情報符号化部５３０３の構成を示すブロック図である。
【０４３２】
第１の符号化部５３００は、点群データを第１の符号化方法（ＧＰＣＣ（Ｇｅｏｍｅｔｒｙ  ｂａｓｅｄ  ＰＣＣ））で符号化することで符号化データ（符号化ストリーム）を生成する。この第１の符号化部５３００は、分割部５３０１と、複数の位置情報符号化部５３０２と、複数の属性情報符号化部５３０３と、付加情報符号化部５３０４と、多重化部５３０５とを含む。
【０４３３】
分割部５３０１は、点群データを分割することで複数の分割データを生成する。具体的には、分割部５３０１は、点群データの空間を複数のサブ空間に分割することで複数の分割データを生成する。ここでサブ空間とは、タイル及びスライスの一方、又はタイル及びスライスの組み合わせである。より具体的には、点群データは、位置情報、属性情報、及び付加情報を含む。分割部５３０１は、位置情報を複数の分割位置情報に分割し、属性情報を複数の分割属性情報に分割する。また、分割部５３０１は、分割に関する付加情報を生成する。
【０４３４】
分割部５３０１は、図６８に示すように、タイル分割部５３１１と、スライス分割部５３１２とを含む。例えば、タイル分割部５３１１は、点群をタイルに分割する。タイル分割部５３１１は、分割した各タイルに用いる量子化値をタイル付加情報として決定してもよい。
【０４３５】
スライス分割部５３１２は、タイル分割部５３１１により得られたタイルを、さらにスライスに分割する。スライス分割部５３１２は、分割した各スライスに用いる量子化値をスライス付加情報として決定してもよい。
【０４３６】
複数の位置情報符号化部５３０２は、複数の分割位置情報を符号化することで複数の符号化位置情報を生成する。例えば、複数の位置情報符号化部５３０２は、複数の分割位置情報を並列処理する。
【０４３７】
位置情報符号化部５３０２は、図６９に示すように、量子化値算出部５３２１と、エントロピ符号化部５３２２とを含む。量子化値算出部５３２１は、符号化される分割位置情報の量子化値（量子化パラメータ）を取得する。エントロピ符号化部５３２２は、量子化値算出部５３２１により取得された量子化値（量子化パラメータ）を用いて、分割位置情報を量子化することで、量子化位置情報を算出する。
【０４３８】
複数の属性情報符号化部５３０３は、複数の分割属性情報を符号化することで複数の符号化属性情報を生成する。例えば、複数の属性情報符号化部５３０３は、複数の分割属性情報を並列処理する。
【０４３９】
属性情報符号化部５３０３は、図６９に示すように、量子化値算出部５３３１と、エントロピ符号化部５３３２とを含む。量子化値算出部５３３１は、符号化される分割属性情報の量子化値（量子化パラメータ）を取得する。エントロピ符号化部５３３２は、量子化値算出部５３３１により取得された量子化値（量子化パラメータ）を用いて、分割属性情報を量子化することで、量子化属性情報を算出する。
【０４４０】
付加情報符号化部５３０４は、点群データに含まれる付加情報と、分割部５３０１で分割時に生成された、データ分割に関する付加情報とを符号化することで符号化付加情報を生成する。
【０４４１】
多重化部５３０５は、複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を多重化することで符号化データ（符号化ストリーム）を生成し、生成した符号化データを送出する。また、符号化付加情報は復号時に使用される。
【０４４２】
なお、図６７では、位置情報符号化部５３０２及び属性情報符号化部５３０３の数がそれぞれ２つの例を示しているが、位置情報符号化部５３０２及び属性情報符号化部５３０３の数は、それぞれ１つであってもよいし、３つ以上であってもよい。また、複数の分割データは、ＣＰＵ内の複数コアのように同一チップ内で並列処理されてもよいし、複数のチップのコアで並列処理されてもよいし、複数チップの複数コアで並列処理されてもよい。
【０４４３】
次に、復号処理について説明する。図７０は、第１の復号部５３４０の構成を示すブロック図である。図７１は、位置情報復号部５３４２および属性情報復号部５３４３の構成を示すブロック図である。
【０４４４】
第１の復号部５３４０は、点群データが第１の符号化方法（ＧＰＣＣ）で符号化されることで生成された符号化データ（符号化ストリーム）を復号することで点群データを復元する。この第１の復号部５３４０は、逆多重化部５３４１と、複数の位置情報復号部５３４２と、複数の属性情報復号部５３４３と、付加情報復号部５３４４と、結合部５３４５とを含む。
【０４４５】
逆多重化部５３４１は、符号化データ（符号化ストリーム）を逆多重化することで複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を生成する。
【０４４６】
複数の位置情報復号部５３４２は、複数の符号化位置情報を復号することで複数の量子化位置情報を生成する。例えば、複数の位置情報復号部５３４２は、複数の符号化位置情報を並列処理する。
【０４４７】
位置情報復号部５３４２は、図７１に示すように、量子化値算出部５３５１と、エントロピ復号部５３５２とを含む。量子化値算出部５３５１は、量子化位置情報の量子化値を取得する。エントロピ復号部５３５２は、量子化値算出部５３５１により取得された量子化値を用いて、量子化位置情報を逆量子化することで、位置情報を算出する。
【０４４８】
複数の属性情報復号部５３４３は、複数の符号化属性情報を復号することで複数の分割属性情報を生成する。例えば、複数の属性情報復号部５３４３は、複数の符号化属性情報を並列処理する。
【０４４９】
属性情報復号部５３４３は、図７１に示すように、量子化値算出部５３６１と、エントロピ復号部５３６２とを含む。量子化値算出部５３６１は、量子化属性情報の量子化値を取得する。エントロピ復号部５３６２は、量子化値算出部５３６１により取得された量子化値を用いて、量子化属性情報を逆量子化することで、属性情報を算出する。
【０４５０】
複数の付加情報復号部５３４４は、符号化付加情報を復号することで付加情報を生成する。
【０４５１】
結合部５３４５は、付加情報を用いて複数の分割位置情報を結合することで位置情報を生成する。結合部５３４５は、付加情報を用いて複数の分割属性情報を結合することで属性情報を生成する。例えば、結合部５３４５は、まず、スライス付加情報を用いて、スライスに対する復号された点群データを結合することでタイルに対応する点群データを生成する。次に、結合部５３４５は、タイル付加情報を用いて、タイルに対応する点群データを結合することで元の点群データを復元する。
【０４５２】
なお、図７０では、位置情報復号部５３４２及び属性情報復号部５３４３の数がそれぞれ２つの例を示しているが、位置情報復号部５３４２及び属性情報復号部５３４３の数は、それぞれ１つであってもよし、３つ以上であってもよい。また、複数の分割データは、ＣＰＵ内の複数コアのように同一チップ内で並列処理されてもよいし、複数のチップのコアで並列処理されてもよい、複数チップの複数コアで並列処理されてもよい。
【０４５３】
［量子化パラメータの決定方法］
図７２は、位置情報（Ｇｅｏｍｅｔｒｙ）の符号化あるいは属性情報（Ａｔｔｒｉｂｕｔｅ）の符号化における量子化値（Ｑｕａｎｔｉｚａｔｉｏｎ  Ｐａｒａｍｅｔｅｒ値：ＱＰ値）の決定に関する処理の一例を示すフローチャートである。
【０４５４】
ＱＰ値は、例えばＰＣＣフレームを構成する位置情報のデータ単位毎、あるいは属性情報のデータ単位毎に符号化効率を考慮して決定される。データ単位が分割されたタイル単位、あるいは、分割されたスライス単位である場合には、ＱＰ値は、分割のデータ単位の符号化効率を考慮し、分割のデータ単位で決定される。また、ＱＰ値は、分割前のデータ単位で決定されてもよい。
【０４５５】
図７２に示すように、三次元データ符号化装置は、位置情報の符号化に使用するＱＰ値を決定する（Ｓ５３０１）。三次元データ符号化装置は、ＱＰ値の決定を、分割された複数のスライス毎に、所定の方法に基づいて行ってもよい。具体的には、三次元データ符号化装置は、位置情報のデータの特徴または品質に基づいて、ＱＰ値を決定する。三次元データ符号化装置は、例えば、データ単位毎に、点群データの密度、つまり、スライスに属する単位領域あたりの点の数を判定し、点群データの密度に対応する値をＱＰ値として決定してもよい。あるいは、三次元データ符号化装置は、点群データの点の数、点の分布、点の偏り、または、点の情報から得られる特徴量、特徴点の数、あるいは認識されるオブジェクトに基づき、対応する値をＱＰ値として決定してもよい。また、三次元データ符号化装置は、地図の位置情報におけるオブジェクトを判定し、位置情報に基づくオブジェクトに基づきＱＰ値を決定してもよいし、三次元点群を二次元に投影した情報あるいは特徴量に基づきＱＰ値を決定してもよい。対応するＱＰ値は、あらかじめ、点群データの密度、点の数、点の分布、または点の偏りと対応付けられているテーブルとしてメモリに保持されていてもよい。また、対応するＱＰ値は、予め、点の情報から得られる特徴量もしくは特徴点の数、または、点の情報に基づいて認識されるオブジェクトと対応付けられているテーブルとしてメモリに保持されていてもよい。また、対応するＱＰ値は、点群データの位置情報を符号化する際に、様々なＱＰ値で符号化率などをシミュレーションした結果に基づき決定されてもよい。
【０４５６】
次に、三次元データ符号化装置は、位置情報のＱＰ値の基準値（デフォルト値）および差分情報（量子化デルタ）を決定する（Ｓ５３０２）。三次元データ符号化装置は、具体的には、決定したＱＰ値および所定の方法を用いて、伝送する基準値および差分情報を決定し、決定した基準値および差分情報を、付加情報およびデータのヘッダの少なくとも一方に設定（追加）する。
【０４５７】
次に、三次元データ符号化装置は、属性情報の符号化に使用するＱＰ値を決定する（Ｓ５３０３）。三次元データ符号化装置は、ＱＰ値の決定を、分割された複数のスライス毎に、所定の方法に基づいて行ってもよい。具体的には、三次元データ符号化装置は、属性情報のデータの特徴または品質に基づいて、ＱＰ値を決定する。三次元データ符号化装置は、例えば、データ単位毎に、属性情報の特性に基づいて、ＱＰ値を決定してもよい。色の特性とは、例えば、輝度、色度、彩度、これらのヒストグラム、色の連続性などである。属性情報が反射率の場合は、反射率に基づく情報に応じて判定してもよい。三次元データ符号化装置は、例えば、点群データからオブジェクトとして顔を検出した場合、顔を検出したオブジェクトを構成する点群データに対して、品質のよいＱＰ値を決定してもよい。このように、三次元データ符号化装置は、オブジェクトの種類に応じて、オブジェクトを構成する点群データに対するＱＰ値を決定してもよい。
【０４５８】
また、三次元データ符号化装置は、三次元点に複数の属性情報がある場合、属性情報毎に独立に、それぞれの属性情報に基づくＱＰ値を決定してもよいし、あるいは、いずれか一方の属性情報に基づき、複数の属性情報のＱＰ値を決定してもよいし、複数の属性情報を用いて当該複数の属性情報のＱＰ値を決定してもよい。
【０４５９】
次に、三次元データ符号化装置は、属性情報のＱＰ値の基準値（デフォルト値）および差分情報（量子化デルタ）を決定する（Ｓ５３０４）。三次元データ符号化装置は、具体的には、決定したＱＰ値および所定の方法を用いて、伝送する基準値および差分情報を決定し、決定した基準値および差分情報を、付加情報およびデータのヘッダの少なくとも一方に設定（追加）する。
【０４６０】
そして、三次元データ符号化装置は、それぞれ、決定された位置情報および属性情報のＱＰ値に基づき、位置情報および属性情報を量子化し、符号化する（Ｓ５３０５）。
【０４６１】
なお、位置情報のＱＰ値は、位置情報に基づいて決定され、属性情報のＱＰ値は、属性情報に基づいて決定される例を説明したが、これに限らない。例えば、位置情報および属性情報のＱＰ値は、位置情報に基づいて決定されてもよいし、属性情報に基づいて決定されてもよいし、位置情報および属性情報に基づいて決定されてもよい。
【０４６２】
なお、位置情報および属性情報のＱＰ値は、点群データにおける、位置情報の品質と属性情報の品質とのバランスを考慮して調整されてもよい。例えば、位置情報および属性情報のＱＰ値は、位置情報の品質が高く設定され、かつ、属性情報の品質が位置情報の品質より低く設定されるように決定されてもよい。例えば、属性情報のＱＰ値は、位置情報のＱＰ値以上という制約された条件を満たすように決定されてもよい。
【０４６３】
また、ＱＰ値は、符号化データがあらかじめ定められた所定のレートの範囲内に収まるように符号化されるように調整されてもよい。ＱＰ値は、例えば、ひとつ前のデータ単位の符号化で符号量が所定のレートを超えそうな場合、つまり、所定のレートまでの差が第一の差分未満である場合、データ単位の符号量が第一の差分未満となるよう符号化品質が低下するように調整されてもよい。一方で、ＱＰ値は、所定のレートまでの差が、第一の差分よりも大きい第二の差分より大きく、十分に大きな差がある場合、データ単位の符号化品質が向上するように調整されてもよい。データ単位の間の調整は、例えばＰＣＣフレーム間であってもよいし、タイルの間やスライスの間であってもよい。属性情報のＱＰ値の調整は、位置情報の符号化のレートに基づいて調整されてもよい。
【０４６４】
なお、図７２におけるフローチャートにおいて、位置情報に係る処理と属性情報に係る処理の処理順は、反対でも良いし、並列でもよい。
【０４６５】
なお、図７２におけるフローチャートでは、スライス単位の処理を例にしているが、タイル単位や、その他のデータ単位での処理の場合もスライス単位と同様に処理することができる。つまり、図７２のフローチャートのスライスは、タイルまたは他のデータ単位と読み替えることができる。
【０４６６】
図７３は、位置情報および属性情報の復号処理の一例を示すフローチャートである。
【０４６７】
図７３に示すように、三次元データ復号装置は、位置情報のＱＰ値を示す基準値および差分情報と、属性情報のＱＰ値を示す基準値および差分情報とを取得する（Ｓ５３１１）。具体的には、三次元データ復号装置は、伝送されるメタデータ、符号化データのヘッダのいずれか一方または両方を解析し、ＱＰ値を導出するための基準値および差分情報を取得する。
【０４６８】
次に、三次元データ復号装置は、取得した基準値および差分情報を用いて、所定の方法に基づいて、ＱＰ値を導出する（Ｓ５３１２）。
【０４６９】
そして、三次元データ復号装置は、量子化位置情報を取得し、導出されたＱＰ値を用いて量子化位置情報を逆量子化することで、位置情報を復号する（Ｓ５３１３）。
【０４７０】
次に、三次元データ復号装置は、量子化属性情報を取得し、導出されたＱＰ値を用いて量子化属性情報を逆量子化することで、属性情報を復号する（Ｓ５３１４）。
【０４７１】
次に、量子化パラメータの伝送方法について説明する。
【０４７２】
図７４は、量子化パラメータの伝送方法の第１の例について説明するための図である。図７４の（ａ）は、ＱＰ値の関係の一例を示す図である。
【０４７３】
図７４において、ＱＧおよびＱＡは、それぞれ、位置情報の符号化に用いるＱＰ値の絶対値、および、属性情報の符号化に用いるＱＰ値の絶対値を示す。ＱＧは、複数の三次元点のそれぞれの位置情報を量子化するために用いられる第１量子化パラメータの一例である。また、Δ（ＱＡ，ＱＧ）は、ＱＡの導出に用いるＱＧとの差分を示す差分情報を示す。つまり、ＱＡは、ＱＧとΔ（ＱＡ，ＱＧ）とを用いて導出される。このように、ＱＰ値は、基準値（絶対値）と差分情報（相対値）とに分けて伝送される。また、復号では、伝送された基準値および差分情報から所望のＱＰ値を導出する。
【０４７４】
例えば、図７４の（ａ）では、絶対値ＱＧと差分情報Δ（ＱＡ，ＱＧ）とが伝送され、復号では、下記の（式Ｇ５）で示すように、ＱＡは、ＱＧにΔ（ＱＡ，ＱＧ）を加算することで導出される。
【０４７５】
ＱＡ＝ＱＧ＋Δ（ＱＡ，ＱＧ）      （式Ｇ５）
【０４７６】
図７４の（ｂ）および（ｃ）を用いて位置情報および属性情報からなる点群データをスライス分割する場合のＱＰ値の伝送方法を説明する。図７４の（ｂ）は、各ＱＰ値の基準値と差分情報との関係の第１の例を示す図である。図７４の（ｃ）は、ＱＰ値、位置情報、および、属性情報の伝送順の第１の例を示す図である。
【０４７７】
ＱＰ値は、位置情報毎、および、属性情報毎に、大きく、ＰＣＣのフレーム単位のＱＰ値（フレームＱＰ）と、データ単位のＱＰ値（データＱＰ）に分かれている。データ単位のＱＰ値は、図７２のステップＳ５３０１で決定した、符号化に用いるＱＰ値である。
【０４７８】
ここでは、ＰＣＣフレーム単位の位置情報の符号化に用いるＱＰ値であるＱＧを基準値とし、データ単位のＱＰ値をＱＧからの差分を示す差分情報として生成し、送出する。
【０４７９】
ＱＧ：ＰＣＣフレームにおける位置情報の符号化のＱＰ値・・・ＧＰＳを用いて基準値「１．」として送出される
ＱＡ：ＰＣＣフレームにおける属性情報の符号化のＱＰ値・・・ＡＰＳを用いてＱＧからの差分を示す差分情報「２．」として送出される
ＱＧｓ１，ＱＧｓ２：スライスデータにおける位置情報の符号化のＱＰ値…位置情報の符号化データのヘッダを用いて、ＱＧからの差分を示す差分情報「３．」および「５．」として送出される
ＱＡｓ１，ＱＡｓ２：スライスデータにおける属性情報の符号化のＱＰ値…属性情報の符号化データのヘッダを用いて、ＱＡからの差分を示す差分情報「４．」および「６．」として送出される
【０４８０】
なお、フレームＱＰの導出に用いる情報は、フレームに係るメタデータ（ＧＰＳ，ＡＰＳ）に記載され、データＱＰの導出に用いる情報は、データに係るメタデータ（符号化データのヘッダ）に記載される。
【０４８１】
このように、データＱＰは、フレームＱＰからの差分を示す差分情報として生成され、送出される。よって、データＱＰのデータ量を削減することができる。
【０４８２】
第１の復号部５３４０は、それぞれの符号化データにおいて、図７４の（ｃ）の矢印で示したメタデータを参照し、当該符号化データに対応する基準値および差分情報を取得する。そして、第１の復号部５３４０は、取得した基準値および差分情報に基づいて、復号対象の符号化データに対応するＱＰ値を導出する。
【０４８３】
第１の復号部５３４０は、例えば、図７４の（ｃ）において矢印で示した基準情報「１．」および差分情報「２．」、「６．」をメタデータあるいはヘッダから取得し、下記の（式Ｇ６）で示すように、基準情報「１．」に差分情報「２．」および「６．」を加算することで、Ａｓ２のＱＰ値を導出する。
【０４８４】
ＱＡＳ２＝ＱＧ＋Δ（ＱＡ，ＱＧ）＋Δ（ＱＡｓ２，ＱＡ）      （式Ｇ６）
【０４８５】
次に、位置情報および属性情報をタイルに２分割した後に、スライスに２分割する場合の例について図７５を用いて説明する。図７５は、量子化パラメータの伝送方法の第２の例について説明するための図である。図７５の（ａ）は、各ＱＰ値の基準値と差分情報との関係の第２の例を示す図である。図７５の（ｂ）は、ＱＰ値、位置情報、および、属性情報の伝送順の第２の例を示す図である。図７５の（ｃ）は、第２の例における、差分情報の中間生成値について説明するための図である。
【０４８６】
複数のタイルに分割した後に、さらに複数のスライスに分割する場合、図７５の（ｃ）に示すように、タイルに分割した後にタイル毎のＱＰ値（ＱＡｔ１）および差分情報Δ（ＱＡｔ１，ＱＡ）が中間生成値として生成される。そして、スライスに分割した後にスライス毎のＱＰ値（ＱＡｔ１ｓ１，ＱＡｔ１ｓ２）および差分情報（Δ（ＱＡｔ１ｓ１，ＱＡｔ１），Δ（ＱＡｔ１ｓ２，ＱＡｔ１））が生成される。
【０４８７】
この場合、例えば、図７５の（ａ）における、差分情報「４．」は、以下の（式Ｇ８）で導出される。
【０４８８】
Δ（ＱＡｔ１ｓ１，ＱＡ）＝Δ（ＱＡｔ１，ＱＡ）＋Δ（ＱＡｔ１ｓ１，ＱＡｔ１）      （式Ｇ８）
【０４８９】
第１の復号部５３４０は、例えば、タイル２におけるスライス１の属性情報Ａｔ２ｓ１を復号する際、図７５の（ｂ）の矢印で示した基準情報「１．」および差分情報「２．」、「８．」をメタデータあるいはヘッダから取得し、下記の（式Ｇ９）で示すように、基準情報「１．」に差分情報「２．」、「８．」を加算することで、属性情報Ａｔ２ｓ１のＱＰ値を導出する。
【０４９０】
ＱＡｔ２ｓ１＝ＱＧ＋Δ（ＱＡｔ２ｓ１，ＱＡ）＋Δ（ＱＡ，ＱＧ）      （式Ｇ９）
【０４９１】
（実施の形態８）
本実施の形態では、三次元データ符号化装置は、入力された三次元点群（Ｐｏｉｎｔ  Ｃｌｏｕｄ）の三次元位置情報に量子化を適用して８分木構造で符号化する。このとき、量子化により三次元位置は同じだが色又は反射率等の属性情報が異なる点群（以下、重複点（ｄｕｐｌｉｃａｔｅｄ  ｐｏｉｎｔ）と呼ぶ）が発生する。三次元データ符号化装置は、この重複点を８分木のリーフ情報としてどのように符号化するかを制御するための情報をヘッダに付加する。これにより、三次元データ復号装置は、正しくリーフ情報を復号できる。ここで、量子化により三次元位置が同じとは、図７６に示す点Ａ及び点Ｂのように元々の三次元位置が近い位置にあり、三次元位置の情報が量子化されることで三次元位置の値が同一になったことを含む。
【０４９２】
例えば、三次元データ符号化装置は、重複点をマージするか否かを制御するフラグである重複点マージフラグ（ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ）をヘッダ情報に付加する。図７７は、重複点マージフラグに応じた処理を模式的に示す図である。
【０４９３】
三次元データ符号化装置は、重複点マージフラグが１の場合は、重複点を１個の点にマージして符号化する。ここで、マージとは、例えば点Ａと点Ｂが重複点の場合、点Ａを残し点Ｂを削除すること、又はその逆である。なおこの際、三次元データ符号化装置は、点Ａと点Ｂの色又は反射率等の属性情報から新たな属性情報を算出し、算出した属性情報をマージ後の点に割り当ててもよい。例えば、三次元データ符号化装置は、点Ａと点Ｂの属性情報の平均値をマージ後の点に割り当ててもよい。
【０４９４】
また、重複点マージフラグが１の場合は、８分木で符号化する際の各リーフは１個の点のみを含むため、三次元データ符号化装置は、リーフ情報としてリーフが何個の三次元点を含むかを示す情報を符号化しなくてもよい。また、三次元データ符号化装置は、リーフ内の１個の点の三次元位置情報と、色又は反射率などの属性情報に関わる情報とを符号化してもよい。
【０４９５】
このように、重複点が復号後に不要な場合は、三次元データ符号化装置は、重複点マージフラグを１に設定してストリームに付加し、重複点をマージして符号化する。これにより、不要な重複点のデータ量を削減でき、符号化効率を向上できる。
【０４９６】
重複点マージフラグが０の場合は、三次元データ符号化装置は、重複点の情報をリーフ情報として符号化する。例えば、各リーフは１個以上の重複点を含む可能性があるため、三次元データ符号化装置は、リーフが何個の三次元点を含むかを示す情報を符号化する。また、三次元データ符号化装置は、重複点の各属性情報をそれぞれ符号化してもよい。例えばリーフ内に点Ａと点Ｂが重複点として存在する場合、三次元データ符号化装置は、２個の点がリーフ内に存在することを示す情報を符号化してもよい。また、三次元データ符号化装置は、点Ａと点Ｂのそれぞれの属性情報を符号化してもよい。
【０４９７】
このように、重複点が復号後に必要な場合は、三次元データ符号化装置は、重複点マージフラグを０に設定してストリームに付加し、重複点を符号化する。これにより、三次元データ復号装置は、正しく重複点に関わる情報を復号できる。
【０４９８】
例えば、三次元データ符号化装置は、三次元位置の量子化として、例えば、三次元位置（ｘ，ｙ，ｚ）を量子化パラメータ（ｑｘ，ｑｙ，ｑｚ）で除算することで量子化位置（ｘ／ｑｘ，ｙ／ｑｙ，ｚ／ｑｚ）を算出する。
【０４９９】
重複点マージフラグは、ビットストリームのヘッダ情報に含まれてもよい。例えば、重複点マージフラグは、ＷＬＤ、ＳＰＣ又はＶＬＭ等のビットストリームのヘッダに含まれる。
【０５００】
なお、上記では、属性情報として色又は反射率を例に挙げたが、属性情報は必ずしもこれに限らない。例えば、属性情報は、点の法線ベクトル、点の重要度を表す情報、点の持つ三次元特徴量、又は、点の緯度、経度及び高度などの位置情報などを含んでもよい。
【０５０１】
また、マージとは、２個以上の点を１個の点に統合することを表す。また、マージとは、Ｍ個以上の点をＮ個（Ｍ＞Ｎ）の点に統合することを表してもよい。
【０５０２】
上述したように、量子化により、三次元点群の座標は同じだが、色又は反射率などの属性情報が異なる重複点が発生する。例えば、量子化前は点Ａと点Ｂの三次元位置は異なるが、量子化により点Ａと点Ｂの三次元位置が同じになり、属性情報が異なるといったケースが発生する。つまり、点Ａと点Ｂが重複点である。
【０５０３】
なお、量子化に限らず、ＬｉＤＡＲ等のセンサで同一物体の点群の三次元位置及び属性情報を、時間又は方向を変えて取得することで、重複点が発生するケースもある。
【０５０４】
また、三次元位置が同じとは、三次元位置が完全に一致するケースだけに限らない。例えば、三次元データ符号化装置は、点Ａと点Ｂの三次元位置の差が予め定められた閾値α以下である場合に、点Ａと点Ｂは三次元位置が同じとみなし、点Ａと点Ｂを重複点と判定してもよい。また、三次元データ符号化装置は、閾値αをストリームに付加し、三次元データ復号装置に閾値α以下の点は重複点として扱われたことを伝えてもよい。
【０５０５】
また、三次元データ符号化装置は、重複点の三次元位置として点Ａの三次元位置を用いてもよい。または、三次元データ符号化装置は、重複点の三次元位置として点Ｂの三次元位置を用いてもよい。または、三次元データ符号化装置は、重複点の三次元位置として点Ａの三次元位置と点Ｂの三次元位置とから算出した三次元位置を用いてもよい。例えば、三次元データ符号化装置は、点Ａの三次元位置と点Ｂの三次元位置との平均値を用いてもよい。
【０５０６】
また、三次元データ符号化装置は、重複点のうち、三次元位置が同じでかつ属性情報も一致する点については、重複点マージフラグの値に関わらず、マージを行ってもよいし、どちらか一方の点を削除してもよい。
【０５０７】
また、重複点マージフラグが１の場合に、三次元データ符号化装置は、リーフ内のＭ点をＮ点（Ｍ＞Ｎ）にマージしてもよい。この場合、三次元データ符号化装置は、Ｎ点の三次元位置情報と属性情報をそれぞれリーフ情報として符号化してもよい。また、三次元データ符号化装置は、Ｍ個の属性情報を用いてＮ個の属性情報を算出してもよい。
【０５０８】
また、三次元データ符号化装置は、マージ後のリーフ内の点の数（Ｎ）をヘッダに付加して三次元データ復号装置に知らせてもよい。また、規格等でＮの値が固定値として予め設定されていてもよい。これにより、リーフ毎にＮ個という情報を付加する必要がなくなり、発生符号化量を抑制できる。上記により、三次元データ復号装置はＮ個の点を正しく復号できる。
【０５０９】
重複点マージフラグが１の場合は、重複点が１個の点にマージされる。例えば、三次元データ符号化装置は、点Ａと点Ｂを同じ三次元位置情報を持つ点Ｃにマージしてもよい。なお、三次元データ符号化装置は、点Ａと点Ｂの色又は反射率等の属性情報の平均値を点Ｃに割り当ててもよい。また、三次元データ符号化装置は、点Ｂを点Ａにマージしてもよいし、点Ａを点Ｂにマージしてもよい。
【０５１０】
次に、重複点マージフラグのシンタックス例を説明する。図７８はヘッダ情報のシンタックス例を示す図である。図７９は、ノードの情報のシンタックス例を示す図である。
【０５１１】
図７８に示すようにヘッダ情報は、重複点マージフラグ（ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ）を含む。重複点マージフラグは重複点をマージするか否かを示す情報である。例えば、重複点マージフラグの値１は、重複点をマージすることを示し、値０は重複点をマージしないことを示す。
【０５１２】
なお、三次元データ符号化装置は、重複点マージフラグをヘッダに付加せずに、規格、又は規格のプロファイル或いはレベル等で重複点をマージするか否かを規定してもよい。これにより、三次元データ復号装置は規格情報を参照して、重複点がストリームに含まれるか否かを判定してビットストリームを正しく復元できる。
【０５１３】
図７９に示すように、ノードの情報は、ｉｓｌｅａｆと、ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆとを含む。ｉｓｌｅａｆは対象ノードがリーフであるか否かを示すフラグである。値１は対象ノードがリーフであることを示し、値０は対象ノードがリーフでなくノードであることを示す。なお、ノードがリーフであるか否かを示す情報はヘッダに付加されなくてもよい。この場合、三次元データ復号装置は、別の方法でノードがリーフであるか否かを判定する。例えば、三次元データ復号装置は、８分木の各ノードをこれ以上分割できないサイズまで分割したか否かを判定し、真であればノードがリーフであると判定してもよい。これにより、ノードがリーフであるか否かを示すフラグを符号化する必要がなくなり、ヘッダの符号量を削減できる。
【０５１４】
ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆは、リーフ情報であり、リーフに含まれる三次元点の数を示す。このｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆは、重複点マージフラグが０の場合に符号化される。また、重複点マージフラグが１の場合はリーフ内の点の数は１であるため、ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆは符号化されない。これにより、符号量を削減できる。
【０５１５】
なお、ここでは、重複点マージフラグに応じて直接的にリーフ情報を符号化するか否かを切り替える例を示すが、間接的にリーフ情報を符号化するか否かを切り替えてもよい。例えば、三次元データ符号化装置は、重複点マージフラグに応じてｓｉｎｇｌｅ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆを切り替え、シンタックスに基づき、リーフ情報を符号化するか否かを切り替えてもよい。つまり、三次元データ符号化装置は、重複点マージフラグが１の場合には、ｓｉｎｇｌｅ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆを１に設定し、重複点マージフラグが０の場合には、ｓｉｎｇｌｅ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆを０に設定してもよい。また、この場合、三次元データ符号化装置は、重複点マージフラグをビットストリームに付加しなくてもよい。
【０５１６】
また、三次元データ符号化装置は、ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆをエントロピー符号化によって符号化してもよい。また、その際、三次元データ符号化装置は、複数の符号化テーブルを切替えながら符号化を行ってもよい。例えば、三次元データ符号化装置は、先頭ビットを符号化テーブルＡを用いて算術符号化し、残りのビットを符号化テーブルＢを用いて算術符号化してもよい。
【０５１７】
上記のように、三次元データ符号化装置は、ビットストリームのヘッダに重複点をマージするか否かを示す情報を付加し、その値に応じて重複点をマージするか否かを切替える。また、三次元データ符号化装置は、重複点をマージする場合は、リーフ情報としてリーフ内に含まれる点の数を符号化しなくてもよい。また、三次元データ符号化装置は、重複点をマージしない場合は、リーフ情報としてリーフ内に含まれる点の数を符号化してもよい。
【０５１８】
また、三次元データ符号化装置は、上記方法で生成されたｉｓｌｅａｆ、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ、及びｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆをエントロピー符号化してもよい。例えば、三次元データ符号化装置は、各値を二値化して算術符号化してもよい。
【０５１９】
また、本実施の形態は、８分木構造を例に示したが、必ずしもこれに限らず、４分木及び１６分木等のＮ分木（Ｎは２以上の整数）、又は、その他の木構造に対して、上記手法を適用してもよい。
【０５２０】
重複点マージフラグ＝１として符号化した場合、元の入力三次元点群、又は量子化後の三次元点群に重複点が含まれる場合は、不可逆符号化（ｌｏｓｓｙ  ｃｏｄｉｎｇ）となり、符号量を削減できる。また、三次元データ符号化装置は、元の入力三次元点群に重複点が含まれず、かつ、可逆符号化（ｌｏｓｓｌｅｓｓ  ｃｏｄｉｎｇ）で符号化する（量子化をスキップして符号化する）場合において重複点マージフラグ＝１として符号化してもよい。これにより、可逆符号化を維持しつつ、ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆを符号化しない分の符号量を削減できる。
【０５２１】
また、三次元データ符号化装置は、同一リーフ内の２個以上の重複点をリーフ情報としてそれぞれ符号化する場合は、各点の持つ属性情報（色又は反射率等）もそれぞれ符号化してもよい。この場合、各点の符号化順で各点の属性情報を紐付けてもよい。例えば、三次元データ符号化装置は、同一リーフ内の２点Ａ、Ｂをリーフ情報としてそれぞれ符号化する場合は、２点Ａ、Ｂの両方の属性情報も符号化し、ビットストリームに付加してもよい。また、２点Ａ、Ｂの符号化順で各属性情報を紐付けしてもよい。例えば、点Ａ、点Ｂの順で各三次元位置を符号化した場合は、点Ａ、点Ｂの順でそれぞれの属性情報を符号化し、紐付けすることが考えられる。
【０５２２】
また、三次元データ符号化装置は、同一リーフ内のＭ個以上の点群をマージしてＮ点（Ｍ＞Ｎ）として符号化する場合は、Ｍ個以上の点群のＭ個以上の属性情報を例えば平均化等で平滑化してＮ点の属性情報を生成し、それらを符号化してもよい。例えば、三次元データ符号化装置は、同一リーフ内の２点Ａ、Ｂをマージして１点として符号化する場合は、２点Ａ、Ｂの属性情報を例えば平均化等で平滑化して１点の属性情報を算出し、算出した属性情報を符号化してもよい。
【０５２３】
また、三次元データ符号化装置は、点の重要度又は特徴量に応じて属性情報の算出方法を切替えてもよい。例えば、三次元データ符号化装置は、重要度が高い点、又は特徴量が大きい点の属性情報に高い重みをつけて重みづけ平均値を算出し、算出した値をマージ後の属性情報として用いてもよい。また、三次元データ符号化装置は、量子化前後の三次元位置の変化量に応じて重みを変えてもよい。例えば変化量が小さいほど高い重みをつけて重みづけ平均値を算出し、算出した値をマージ後の属性情報として用いてもよい。
【０５２４】
次に、三次元データ符号化装置による三次元データ符号化処理の流れを説明する。図８０及び図８１は、三次元データ符号化装置による三次元データ符号化処理のフローチャートである。
【０５２５】
まず、三次元データ符号化装置は、重複点をマージして符号化するか否かを決定する（Ｓ２４０１）。例えば、三次元データ符号化装置は、符号化効率を優先する場合は、重複点をマージすると判断してもよい。また、三次元データ符号化装置は、三次元データ復号装置において重複点が必要であれば、マージしないと判断してもよい。また、三次元データ符号化装置は、入力三次元点群に重複点がなく、かつ、ロスレス符号化（可逆符号化）、つまり量子化が適用されない場合において、重複点マージフラグを１に設定してもよい。これにより、リーフ情報としてリーフ内の点の数が符号化されなくなるため、符号量を削減できる。
【０５２６】
重複点をマージして符号化する場合（Ｓ２４０１でＹｅｓ）、三次元データ符号化装置は、重複点マージフラグを１に設定し、当該重複点マージフラグをヘッダに付加する（Ｓ２４０２）。
【０５２７】
重複点をマージして符号化しない場合（Ｓ２４０１でＮｏ）、三次元データ符号化装置は、重複点マージフラグを０に設定し、当該重複点マージフラグをヘッダに付加する（Ｓ２４０３）。
【０５２８】
次に、三次元データ符号化装置は、入力三次元点群の三次元位置を量子化する（Ｓ２４０４）。三次元データ符号化装置は、三次元位置の量子化として、例えば三次元位置（ｘ，ｙ，ｚ）を量子化パラメータ（ｑｘ，ｑｙ，ｑｚ）で除算することで量子化位置（ｘ／ｑｘ，ｙ／ｑｙ，ｚ／ｑｚ）を算出する。また、三次元データ符号化装置は、量子化パラメータをヘッダに付加し、三次元データ復号装置は、当該量子化パラメータを用いて逆量子化を行ってもよい。なお、三次元データ符号化装置は、ロスレス符号化時には量子化処理をスキップしてもよい。
【０５２９】
次に、三次元データ符号化装置は、重複点マージフラグが１であるか否かを判定する（Ｓ２４０５）。重複点マージフラグが１である場合（Ｓ２４０５でＹｅｓ）、三次元データ符号化装置は、量子化後の三次元点群のうち重複点をマージする（Ｓ２４０６）。なお、三次元データ符号化装置は、ロスレス符号化、かつ入力三次元点群に重複点が含まれない場合には、本処理をスキップしてもよい。
【０５３０】
また、重複点マージフラグが０である場合（Ｓ２４０５でＮｏ）、三次元データ符号化装置は、重複点をマージ処理を行わない。
【０５３１】
次に、三次元データ符号化装置は、ノードを８分木に分割する（Ｓ２４１１）。例えば、三次元データ符号化装置は、量子化後の三次元点群を含む大空間（ルートノード）から８分木分割を行いながら、８分木の各ノードのオキュパンシー符号を順に算出し、算出したオキュパンシー符号を符号化してもよい。また、三次元データ符号化装置は、８分木分割を繰返し適用し、８分木分割を適用できなくなった時点でリーフ情報を符号化してもよい。なお、三次元データ符号化装置は、事前に全てのノードのオキュパンシー符号及びリーフ情報を算出し、その後にそれら情報を符号化してもよい。
【０５３２】
次に、三次元データ符号化装置は、次のノード（対象ノード）がリーフであるか否かを判定する（Ｓ２４１２）。例えば、三次元データ符号化装置は、８分木をこれ以上分割できないサイズまで分割したか否かを判定し、真であればノードがリーフであると判定してもよい。
【０５３３】
対象ノードがリーフである場合（Ｓ２４１２でＹｅｓ）、三次元データ符号化装置は、重複点マージフラグが０であるか否かを判定する（Ｓ２４１３）。重複点マージフラグが０である場合（Ｓ２４１３でＹｅｓ）、三次元データ符号化装置は、リーフに含まれる三次元点の数（ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆ）を符号化する（Ｓ２４１４）。重複点マージフラグが１である場合（Ｓ２４１３でＮｏ）、三次元データ符号化装置は、リーフに含まれる三次元点の数（ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆ）を符号化しない。
【０５３４】
また、対象ノードがリーフでない場合（Ｓ２４１２でＮｏ）、三次元データ符号化装置は、対象ノードのオキュパンシー符号を符号化する（Ｓ２４１５）。
【０５３５】
次に、三次元データ符号化装置は、全てのノードの処理が完了したか否かを判定する（Ｓ２４１６）。全てのノードの処理が完了していない場合（Ｓ２４１６でＮｏ）、三次元データ符号化装置は、次のノードに対してステップＳ２４１２以降の処理を行う。
【０５３６】
全てのノードの処理が完了した場合（Ｓ２４１６でＹｅｓ）、三次元データ符号化装置は、符号化した三次元点に関わる属性情報を符号化する（Ｓ２４１７）。
【０５３７】
なお、三次元データ符号化装置は、大空間（ルートノード）のｘ軸、ｙ軸又はｚ軸のサイズを、各軸に対して常に均等に２分割ができるように、２のべき乗のサイズに調整してもよい。また、三次元データ符号化装置は、分割後のノードが常に立方体になるように大空間のサイズを調整してもよい。例えば、三次元点群の三次元位置がｘ軸で０〜２５６、ｙ軸で０〜１２０、ｚ軸で０〜６２の値の範囲を取る場合、まず、三次元データ符号化装置は、各軸の最小値と最大値を比較し、全ての点群の座標の最小値と最大値を算出する。この場合は、最小値は０、最大値は２５６である。次に、算出した最小値と最大値を包括し、かつ、大空間のサイズが２のべき乗となる値を算出する。この場合は、サイズが５１２であり、空間内の座標の最小値が０であり、最大値が５１１である。これにより、０〜２５６の範囲の点群を包括できる。また、この場合、三次元データ符号化装置は、５１２×５１２×５１２のサイズの大空間から８分木の分割をスタートする。
【０５３８】
次に、三次元データ復号装置による三次元データ復号処理の流れを説明する。図８２は、三次元データ復号装置による三次元データ復号処理のフローチャートである。まず、三次元データ復号装置は、ビットストリームのヘッダ内の重複点マージフラグを復号する（Ｓ２４２１）。
【０５３９】
次に、三次元データ復号装置は、ノードを８分木に分割する（Ｓ２４２２）。例えば、三次元データ復号装置は、ビットストリームのヘッダ情報等を用いて、ある空間（ノード）の８分木を生成する。例えば、三次元データ復号装置は、ヘッダ情報に付加されたある空間のｘ軸、ｙ軸、ｚ軸方向の大きさを用いて大空間（ルートノード）を生成し、その空間をｘ軸、ｙ軸、ｚ軸方向にそれぞれ２分割することで８個の小空間Ａ（ノードＡ０〜Ａ７）を生成して８分木を生成する。また、三次元データ復号装置は、同様にノードＡ０〜Ａ７の各々を更に８個の小空間に分割する。このように、三次元データ復号装置は、本フローの処理を通して、各ノードのオキュパンシー符号の復号と、リーフ情報の復号とを順に行う。
【０５４０】
次に、三次元データ復号装置は、次のノード（対象ノード）がリーフであるか否かを判定する（Ｓ２４２３）。対象ノードがリーフである場合（Ｓ２４２３でＹｅｓ）、三次元データ復号装置は、重複点マージフラグが０であるか否かを判定する（Ｓ２４２４）。重複点マージフラグが０である場合（Ｓ２４２４でＹｅｓ）、三次元データ復号装置は、ビットストリームから、リーフに含まれる三次元点の数（ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆ）を復号する（Ｓ２４２５）。一方、重複点マージフラグが１である場合（Ｓ２４２４でＮｏ）、三次元データ復号装置は、ビットストリームから、リーフに含まれる三次元点の数（ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆ）を復号しない。
【０５４１】
また、次のノードがリーフでない場合（Ｓ２４２３でＮｏ）、三次元データ復号装置は、ビットストリームから対象ノードのオキュパンシー符号を復号する（Ｓ２４２６）。
【０５４２】
次に、三次元データ復号装置は、復号したオキュパンシー符号、及び８分木の分割数等の情報を用いてリーフの三次元位置を算出する（Ｓ２４２７）。例えば大空間のサイズが８×８×８の場合に、８分木分割を３回適用するとノードのサイズが１×１×１となる。このサイズ（１×１×１）が分割できる最小単位（リーフ）である。また、三次元データ復号装置は、各リーフに点が含まれるか否かを、リーフの親ノードの、復号したオキュパンシー符号から判定する。これにより、三次元データ復号装置は、各リーフの三次元位置を算出できる。
【０５４３】
次に、三次元データ復号装置は、算出した三次元位置を逆量子化する（Ｓ２４２８）。具体的には、三次元データ復号装置は、ヘッダから復号した量子化パラメータを用いて逆量子化を行うことで、点群の三次元位置を算出する。例えば、三次元データ復号装置は、三次元位置の逆量子化として、例えば逆量子化前の三次元位置（ｘ，ｙ，ｚ）に量子化パラメータ（ｑｘ，ｑｙ，ｑｚ）を乗算することで逆量子化位置（ｘ×ｑｘ，ｙ×ｑｙ，ｚ×ｑｚ）を算出する。なお、三次元データ復号装置は、ロスレス符号化時には逆量子化処理をスキップしてもよい。また、三次元データ復号装置は、ロスレス符号化でない（不可逆符号化）時でも、スケールを元のスケールに戻す必要がない場合は、逆量子化処理をスキップしてよい。例えば、三次元データ復号装置は、三次元点の絶対的な位置関係ではなく、相対的な位置関係が必要な場合は、逆量子化処理をスキップしてもよい。
【０５４４】
次に、三次元データ復号装置は、全てのノードの処理が完了したか否かを判定する（Ｓ２４２９）。全てのノードの処理が完了していない場合（Ｓ２４２９でＮｏ）、三次元データ復号装置は、次のノードに対してステップＳ２４２３以降の処理を行う。
【０５４５】
全てのノードの処理が完了した場合（Ｓ２４２９でＹｅｓ）、三次元データ復号装置は、復号した三次元点に関わる属性情報をビットストリームから復号する（Ｓ２４３０）。なお、重複点マージフラグが１である場合は、復号された異なる三次元位置を持つ各点に１個の属性情報が復号後に紐付けされる。また、重複点マージフラグが０である場合は、復号された同じ三次元位置を持つ複数の点に、複数の異なる属性情報が復号され紐付けされる。
【０５４６】
次に、三次元データ符号化装置の構成例を説明する。図８３は、本実施の形態に係る三次元データ符号化装置２４００のブロック図である。三次元データ符号化装置２４００は、量子化部２４０１と、８分木生成部２４０２と、マージ決定部２４０３と、エントロピー符号化部２４０４とを備える。
【０５４７】
量子化部２４０１は、入力された三次元点（ポイントクラウド）を量子化する。なお、可逆符号化の場合には量子化処理を省略してもよい。
【０５４８】
８分木生成部２４０２は、入力された三次元点（ポイントクラウド）から、例えば８分木を生成し、８分木の各ノードのオキュパンシー符号及びリーフ情報を生成する。
【０５４９】
マージ決定部２４０３は、重複点をマージして符号化するか否かを判定し、判定結果に基づき重複点マージフラグの値を設定する。例えば、マージ決定部２４０３は、量子化後の三次元点群の情報を用いて、重複点マージフラグの値を決定する。例えば、マージ決定部２４０３は、量子化後の三次元点群に重複点が含まれるか否かに基づき重複点マージフラグの値を決定する。
【０５５０】
エントロピー符号化部２４０４は、重複点マージフラグに応じてリーフ情報の符号化を行うことでビットストリームを生成する。エントロピー符号化部２４０４は、重複点マージフラグをビットストリームに付加してもよい。また、エントロピー符号化部２４０４は、オキュパンシー符号を符号化してもよい。また、エントロピー符号化部２４０４は、符号化した三次元点に関わる属性情報を符号化してもよい。
【０５５１】
次に、三次元データ復号装置の構成例を説明する。図８４は、本実施の形態に係る三次元データ復号装置２４１０のブロック図である。三次元データ復号装置２４１０は、８分木生成部２４１１と、マージ情報復号部２４１２と、エントロピー復号部２４１３と、逆量子化部２４１４とを備える。
【０５５２】
８分木生成部２４１１は、ビットストリームのヘッダ情報等を用いて、ある空間（ノード）の８分木を生成する。例えば、８分木生成部２４１１は、ヘッダ情報に付加されたある空間のｘ軸、ｙ軸、ｚ軸方向の大きさを用いて大空間（ルートノード）を生成し、その空間をｘ軸、ｙ軸、ｚ軸方向にそれぞれ２分割することで８個の小空間Ａ（ノードＡ０〜Ａ７）を生成して８分木を生成する。また、８分木生成部２４１１は、同様にノードＡ０〜Ａ７の各々を更に８個の小空間に分割する。このように、８分木生成部２４１１は８分木の生成を繰り返す。
【０５５３】
マージ情報復号部２４１２は、ビットストリームのヘッダ情報から重複点マージフラグを復号する。なお、マージ情報復号部２４１２は、エントロピー復号部２４１３に含まれてもよい。
【０５５４】
エントロピー復号部２４１３は、復号した重複点マージフラグの情報に応じてリーフ情報を復号し、三次元点群（三次元位置）を生成する。なお、エントロピー復号部２４１３は、復号した三次元点に関わる属性情報を復号してもよい。
【０５５５】
逆量子化部２４１４は、復号した点群の三次元位置に逆量子化を適用し、出力三次元点群を生成する。なお、可逆符号化の場合は逆量子化処理を省略してもよい。また、三次元データ復号装置は、不可逆符号化の場合でも、スケールを元のスケールに戻す必要がない場合は、逆量子化処理を省略してよい。例えば、三次元点の絶対的な位置関係ではなく、相対的な位置関係が必要な場合は、逆量子化処理を省略してもよい。
【０５５６】
次に、三次元データ符号化装置による三次元データ符号化処理の変形例を説明する。図８５は、三次元データ符号化処理の変形例のフローチャートである。
【０５５７】
まず、三次元データ符号化装置は、入力された三次元点群の三次元位置を量子化する（Ｓ２４４１）。例えば、三次元データ符号化装置は、三次元位置の量子化として、例えば三次元位置（ｘ，ｙ，ｚ）を量子化パラメータ（ｑｘ，ｑｙ，ｑｚ）で除算することで量子化位置（ｘ／ｑｘ，ｙ／ｑｙ，ｚ／ｑｚ）を算出する。また、三次元データ符号化装置は、量子化パラメータをヘッダに付加し、三次元データ復号装置は。当該量子化パラメータを用いて逆量子化を行ってもよい。なお、三次元データ符号化装置は、ロスレス符号化時には量子化処理をスキップしてもよい。
【０５５８】
次に、三次元データ符号化装置は、量子化後の三次元点群に重複点が含まれるか否かを判定する（Ｓ２４４２）。例えば、三次元データ符号化装置は、全ての三次元点群の三次元位置情報を比較し、同一の値が存在するかで判定する。または、三次元データ符号化装置は、全ての三次元位置情報の差分を算出し、その差分の絶対値が予め定められた閾値より大きい場合は、重複点が含まれないと判定してもよい。
【０５５９】
三次元点群に重複点が含まれる場合（Ｓ２４４２でＹｅｓ）、三次元データ符号化装置は、重複点をマージして符号化するか否かを判定する（Ｓ２４４３）。例えば、三次元データ符号化装置は、符号化効率を優先する場合は、重複点をマージすると判断してもよい。また、三次元データ符号化装置は、三次元データ復号装置で重複点が必要であれば、マージしないと判断してもよい。
【０５６０】
三次元点群に重複点が含まない場合（Ｓ２４４２でＮｏ）、又は、重複点をマージする場合（Ｓ２４４３でＹｅｓ）、三次元データ符号装置は、重複点マージフラグを１に設定し、当該重複点マージフラグをヘッダに付加する（Ｓ２４４４）。一方、重複点をマージしない場合（Ｓ２４４３でＮｏ）、三次元データ符号装置は、重複点マージフラグを０に設定し、当該重複点マージフラグをヘッダに付加する（Ｓ２４４５）。
【０５６１】
次に、三次元データ符号装置は、重複点マージフラグが１であるか否かを判定する（Ｓ２４４６）。重複点マージフラグが１である場合（Ｓ２４４６でＹｅｓ）、三次元データ符号装置は、量子化後の三次元点群に含まれる重複点をマージする（Ｓ２４４７）。なお、三次元データ符号化装置は、ロスレス符号化、かつ入力三次元点群に重複点が含まれない場合は、本処理をスキップしてもよい。また、重複点マージフラグが０である場合（Ｓ２４４６でＮｏ）、三次元データ符号装置は、量子化後の三次元点群に含まれる重複点をマージしない。その後の処理は、図８１に示す処理と同様である。
【０５６２】
（実施の形態９）
本実施の形態に係る三次元データ符号化装置及び三次元データ復号装置の構成を説明する。図８６は、本実施の形態に係る三次元データ符号化装置６２００及び三次元データ復号装置６２１０の構成を示すブロック図である。なお、同図では、三次元データ符号化装置６２００及び三次元データ復号装置６２１０に含まれる処理部のうち、位置情報の符号化に係る処理部を抽出して記載している。
【０５６３】
ここで、点群データをタイル又はスライスなどにデータ分割する場合、分割データ単位（タイル又はスライス）で量子化を行うことが考えられる。
【０５６４】
図８６に示すように、三次元データ符号化装置６２００は、分割部６２０１と、複数の量子化部６２０２と、複数の符号化部６２０３と、多重化部６２０４とを備える。
【０５６５】
分割部６２０１は、点群データをタイル又はスライスなどの１以上のデータ単位に分割することで複数の分割データを生成する。複数の量子化部６２０２は、複数の分割データの各々を量子化することで複数の量子化データを生成する。
【０５６６】
複数の符号化部６２０３は、複数の量子化データの各々を符号化することで複数の符号化データを生成する。多重化部６２０４は、複数の符号化データを多重化することでビットストリームを生成する。
【０５６７】
三次元データ復号装置６２１０は、逆多重化部６２１１と、複数の復号部６２１２と、再構成部６２１３とを備える。逆多重化部６２１１は、ビットストリームを逆多重化することで複数の符号化データを生成する。
【０５６８】
複数の復号部６２１２は、複数の符号化データの各々を復号することで複数の復号データを生成する。再構成部６２１３は、複数の復号データを再構成することで点群データを再構成する。
【０５６９】
次に、量子化部６２０２の詳細について説明する。図８７は、量子化部６２０２の構成を示すブロック図である。量子化部６２０２は、最小位置シフト部６２２１と、位置情報量子化部６２２２と、重複点マージ部６２２３とを備える。
【０５７０】
最小位置シフト部６２２１は、点群の中で最も座標の値が小さい最小点が原点にシフトするように点群の全体をシフトする。図８８は、量子化処理の例を示す図である。同図において、黒丸はこのシフト後の点を示す。
【０５７１】
位置情報量子化部６２２２は、位置情報を量子化する。これにより、図８８に示すように、黒丸の点が白丸の点にシフトされる。この量子化により、複数の点が重複する場合がある。その場合、重複点マージ部６２２３は、重複点をマージする。具体的には、同じ位置情報に属する複数の点を１点とし、その点に対応する属性情報を統合（マージ）する。例えば、重複点マージ部６２２３は、複数の属性情報のいずれかをマージ後の属性情報として決定する。または、重複点マージ部６２２３は、複数の属性情報に所定の演算（例えば平均値の演算）を行うことでマージ後の属性情報を算出する。
【０５７２】
このとき、量子化によって重複した点と、もともと点群データ内に存在する重複点が同時にマージされる。このように、点群データの量子化では、正確な位置情報と点の数が失われる。さらに属性情報（色情報等）もマージされる。
【０５７３】
一方、量子化しない場合は、量子化及び重複点のマージは行われない。したがって、量子化によって発生する重複点はないものの、もともとの点群データ内に存在する重複点もマージされずに残る。
【０５７４】
符号化部６２０３は、例えば、点群の情報をオキュパンシー符号に変換する。重複点がある場合はリーフノードに重複点が存在する。符号化部６２０３は、重複点の数、及び点毎の属性情報を算術符号化することで符号化データを生成する。
【０５７５】
以下、タイル毎に量子化を行う処理について説明する。図８９は、タイル毎の量子化処理を模式的に示す図である。
【０５７６】
三次元データ符号化装置は、点群データを、タイルなどの、独立に符号化及び復号可能な複数のデータ単位に分割し、分割により得られた分割データ毎に量子化を行う。
【０５７７】
以下の方法を用いることにより、タイル分割時に量子化及び重複点のマージを行うことで、量子化データの符号化効率を向上できる。
【０５７８】
三次元データ符号化装置は、分割データ毎に量子化を行う場合、タイル毎に、タイル内に属する点の位置情報を量子化し、重複点を１つの点にマージする。その後、三次元データ符号化装置は、タイル毎に、点群データの位置情報をオキュパンシー符号に変換し、オキュパンシー符号を算術符号化する。
【０５７９】
例えば、三次元データ符号化装置は、点Ａと点Ｂとを同じ三次元位置情報を持つ点Ｃにマージしてもよい。なお、三次元データ符号化装置は、点Ａと点Ｂの色又は反射率等の属性情報の平均値を点Ｃに割り当ててもよい。また、三次元データ符号化装置は、点Ｂを点Ａにマージしてもよいし、点Ａを点Ｂにマージしてもよい。
【０５８０】
三次元データ符号化装置は、マージを行う場合、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇを１に設定する。このＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇにより、タイル内の重複点がマージされており、タイル内において重複点がないことが示される。三次元データ符号化装置は、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇをメタデータ（付加情報）としてパラメータセットに格納する。
【０５８１】
ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇが１の場合は、タイル毎のオキュパンシー符号において各リーフノードは１個の点を含む。よって、三次元データ符号化装置は、リーフノードの情報として、リーフノードに含まれる点の数を示す情報を符号化しなくてもよい。また、三次元データ符号化装置は、１個の点の三次元位置情報と、色及び反射率などの属性情報とを符号化してもよい。
【０５８２】
ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇが１の場合に、三次元データ符号化装置は、Ｍ個の重複点をＮ（Ｍ＞Ｎ）個の点にマージしてもよい。この際、三次元データ符号化装置は、値Ｎを示す情報をヘッダ等に付加してもよい。または、値Ｎが規格等で規定されてもよい。これにより、三次元データ符号化装置は、リーフノード毎に値Ｎを示す情報を付加する必要がなくなり、発生符号化量を抑制できる。
【０５８３】
三次元データ符号化装置は、タイルに分割された点群データを量子化しない場合、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇを０にセットする。ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇが０の場合、三次元データ符号化装置は、タイル内のリーフノードに含まれる重複点に関する情報をリーフノードの情報として符号化する。例えば、各リーフノードは１個以上の重複点を含む可能性がある。よって、三次元データ符号化装置は、リーフノードが何個の点を含むかを示す情報を符号化してもよい。また、三次元データ符号化装置は、重複点の各属性情報をそれぞれ符号化してもよい。
【０５８４】
以上のように、三次元データ符号化装置は、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇに基づき符号化データ構造を変えてもよい。
【０５８５】
三次元データ符号化装置は、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇをフレーム毎のパラメータセットであるＧＰＳに記載してもよい。この場合、例えば、ヌルタイルを除く全てのタイルの少なくとも一つのタイルに重複ポイントが含まれるか否かを示すフラグが用いられる。当該フラグはフレーム毎に付加されてもよいし、全て又は複数のフレームに対して同一のフラグが適用されてもよい。全て又は複数のフレームに対して同一のフラグが適用される場合、三次元データ符号化装置は、当該フラグをＳＰＳに記載し、ＧＰＳに記載しなくてもよい。これにより、伝送データ量を削減できる。ここで、ＳＰＳは、シーケンス（複数フレーム）単位のパラメータセットである。
【０５８６】
なお、三次元データ符号化装置は、タイル毎に量子化パラメータを変えてもよいし、タイルに応じて、量子化するか、しないかを変えてもよい。
【０５８７】
また、三次元データ符号化装置は、タイル毎に量子化又はマージするか否かを決定する場合、ＧＰＳにタイル毎のフラグ（例えばＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ）を格納する。あるいは、三次元データ符号化装置は、タイル毎のデータのヘッダにＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇを格納し、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇを当該タイル内に重複ポイントがあるか否かを示すフラグとして用いる。この場合、三次元データ符号化装置は、データのヘッダに当該フラグが格納されていることを示すフラグをＧＰＳに記載する。なお、三次元データ符号化装置は、タイルがヌルタイルである場合はフラグを格納しなくてもよい。
【０５８８】
次に、データ構造について説明する。図９０は、フレーム単位の位置情報のパラメータセットであるＧＰＳのシンタックス例を示す図である。ＧＰＳは、は、フレーム番号を示すｇｐｓ＿ｉｄｘ及びシーケンス番号を示すｓｐｓ＿ｉｄｘの少なくとも一方を含む。
【０５８９】
また、ＧＰＳは、重複点マージフラグ（ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ）と、タイル情報（ｔｉｌｅ＿ｉｎｆｏｒｍａｔｉｏｎ）とを含む。
【０５９０】
ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝１は、タイルを分割しない場合には、点群データ内の重複点がマージされ、重複点がないことを示す。ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝１は、タイルを分割する場合には、点群データを構成するヌルタイルを除く全てのタイルにおいて、タイル内の重複点がマージされ、重複点がないことを示す。
【０５９１】
ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝０は、タイル分割しない場合には、点群データ内の重複点がマージされず、重複点がある可能性があることを示す。ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝０は、タイル分割する場合には、点群データを構成するヌルタイルを除く全てのタイルにおいて、タイル内の重複点がマージされず、いずれかにタイルにおいてタイル内に重複点がある可能性があることを示す。
【０５９２】
タイル情報（ｔｉｌｅ＿ｉｎｆｏｒｍａｔｉｏｎ）は、タイル分割に係る情報を示す。具体的には、タイル情報は、タイル分割のタイプ、分割数、各タイルの座標（位置）及び各タイルの大きさ等を示す。また、タイル情報は、量子化パラメータ、又はヌルタイルの情報などを示してもよい。また、三次元データ復号装置において、各タイルの座標又は大きさが既知である場合、又は導出可能な場合は、各タイルの座標又は大きさを示す情報は省略されてもよい。これにより、符号量を削減できる。
【０５９３】
図９１は、タイル情報（ｔｉｌｅ＿ｉｎｆｏｒｍａｔｉｏｎ）のシンタックス例を示す図である。タイル情報は、量子化独立フラグ（ｉｎｄｅｐｅｎｄｅｎｔ＿ｑｕａｎｔｉｚａｔｉｏｎ＿ｆｌａｇ）を含む。量子化独立フラグ（ｉｎｄｅｐｅｎｄｅｎｔ＿ｑｕａｎｔｉｚａｔｉｏｎ＿ｆｌａｇ）は、量子化パラメータを複数のタイル全体で統一するか、タイル毎に個別に設定するかを示すフラグである。
【０５９４】
例えば、ｉｎｄｅｐｅｎｄｅｎｔ＿ｑｕａｎｔｉｚａｔｉｏｎ＿ｆｌａｇ＝１は、複数のタイル全体で量子化パラメータを統一することを示す。この場合、ＧＰＳにＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ、及びＱＰ＿ｖａｌｕｅが示され、これらの情報が用いられる。ここで、ＱＰ＿ｖａｌｕｅは、複数のタイルに用いる量子化パラメータである。
【０５９５】
例えば、ｉｎｄｅｐｅｎｄｅｎｔ＿ｑｕａｎｔｉｚａｔｉｏｎ＿ｆｌａｇ＝２は、タイル毎に量子化パラメータが設定されることを示す。この場合において、タイルがヌルタイルでない場合は、タイル毎のループ処理内において、ＴｉｌｅＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ、及びｑｐ＿ｖａｌｕｅが示される。あるいは、位置情報のヘッダ内にＴｉｌｅＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ、及びｑｐ＿ｖａｌｕｅが示される。ここで、ＴｉｌｅＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇは、処理対象のタイルである対象タイルにおいて、重複点をマージするか否かを示すフラグである。ｑｐ＿ｖａｌｕｅは、対象タイルに用いる量子化パラメータである。
【０５９６】
なお、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇを複数のタイル全体で統一するか、タイル毎に個別に設定するかを示すフラグと、ＱＰ（量子化パラメータ）の値を複数のタイル全体で統一するか、タイル毎に個別に設定するかを示すフラグとを個別に設けてもよい。または、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ又はＱＰの値を、ＧＰＳに示すか、位置情報のヘッダ内に示すかを示すフラグを設けてもよい。以上により、タイル毎に独立に量子化パラメータを設定できる。
【０５９７】
図９２は、位置情報のデータに含まれるノード情報（ｎｏｄｅ（ｄｅｐｔｈ、ｉｎｄｅｘ））のシンタックス例を示す図である。ノード情報は、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝０の場合は、リーフノードの重複点の数を示す情報（ｎｕｍ＿ｐｏｉｎｔ＿ｐｅｒ＿ｌｅａｆ）を含む。また、対応する数の属性情報が、属性情報のデータに含まれるリーフノード情報に示される。
【０５９８】
以下、本実施の形態に係る三次元データ符号化処理について説明する。図９３は、本実施の形態に係る三次元データ符号化処理のフローチャートである。
【０５９９】
まず、三次元データ符号化装置は、タイルを分割するか否か、及び重複点をマージするか否かを決定する（Ｓ６２０１、Ｓ６２０２、Ｓ６２１４）。例えば、三次元データ符号化装置は、外部からの指示に基づき、タイルを分割するか否か、及び重複点をマージするか否かを決定する。
【０６００】
タイル分割を行わず、重複点をマージする場合（Ｓ６２０１でＮｏ、かつＳ６２０２でＹｅｓ）、三次元データ符号化装置は、出力される点群は重複点を含まないことを示すＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝１を設定し、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇをメタデータ（付加情報）に格納する（Ｓ６２０３）。
【０６０１】
次に、三次元データ符号化装置は、点群の位置情報を量子化し（Ｓ６２０４）、量子化後の位置情報に基づき、重複点をマージする（Ｓ６２０５）。次に、三次元データ符号化装置は、オキュパンシー符号を符号化する（Ｓ６２０６）。次に、三次元データ符号化装置は、重複点を持たない点に対する属性情報を符号化する（Ｓ６２０８）。
【０６０２】
一方、タイル分割を行わず、重複点をマージしない場合（Ｓ６２０１でＮｏ、かつＳ６２０２でＮｏ）、三次元データ符号化装置は、出力する点群は重複点を含む可能性があることを示すＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝０を設定し、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇをメタデータ（付加情報）に格納する（Ｓ６２０９）。
【０６０３】
次に、三次元データ符号化装置は、点群の位置情報を量子化し（Ｓ６２１０）、オキュパンシー符号を符号化する（Ｓ６２１１）。また、三次元データ符号化装置は、全リーフノードに対して、各リーフノードに含まれる三次元点の数を示す情報を符号化する（Ｓ６２１２）。次に、三次元データ符号化装置は、重複点を持つ点に対する属性情報を符号化する（Ｓ６２１３）。
【０６０４】
一方、タイル分割を行い、重複点をマージする場合（Ｓ６２０１でＹｅｓ、かつＳ６２１４でＹｅｓ）、三次元データ符号化装置は、出力される全タイルにおいてタイル内に重複点がないことを示すＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝１を設定し、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇをメタデータ（付加情報）に格納する（Ｓ６２１５）。次に、三次元データ符号化装置は、点群をタイルに分割し（Ｓ６２１６）。
【０６０５】
次に、三次元データ符号化装置は、処理対象の対象タイル内の点群の位置情報を量子化し（Ｓ６２１７）、量子化後の位置情報に基づき、対象タイル内の重複点をマージする（Ｓ６２１８）。次に、三次元データ符号化装置は、オキュパンシー符号を符号化（Ｓ６２１９）、重複点を持たない点に対する属性情報を符号化する（Ｓ６２２０）。
【０６０６】
全タイルの処理が完了していない場合（Ｓ６２２１でＮｏ）、次のタイルに対してステップＳ６２１７以降の処理が行われる。全タイルの処理が完了した場合（Ｓ６２２１でＹｅｓ）、三次元データ符号化装置は、処理を終了する。
【０６０７】
一方、タイル分割を行い、重複点をマージしない場合（Ｓ６２０１でＹｅｓ、かつＳ６２１４でＮｏ）、三次元データ符号化装置は、出力されるタイルが重複点を含む可能性があることを示すＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝０を設定し、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇをメタデータ（付加情報）に格納する（Ｓ６２２２）。次に、三次元データ符号化装置は、点群をタイルに分割する（Ｓ６２２３）。
【０６０８】
次に、三次元データ符号化装置は、対象タイル内の点群の位置情報を量子化し（Ｓ６２２４）、オキュパンシー符号を符号化する（Ｓ６２２５）。次に、三次元データ符号化装置は、全リーフノードに対して各リーフノードに含まれる三次元点の数を示す情報を符号化する（Ｓ６２２６）。次に、三次元データ符号化装置は、重複点を持つ点に対する属性情報を符号化する（Ｓ６２２７）。
【０６０９】
全タイルの処理が完了していない場合（Ｓ６２２８でＮｏ）、次のタイルに対してステップＳ６２２４以降の処理が行われる。全タイルの処理が完了した場合（Ｓ６２２８でＹｅｓ）、三次元データ符号化装置は、処理を終了する。
【０６１０】
なお、符号化部の構成において、タイル分割部の前に量子化部が配置されてもよい。つまり、全ての点群データを量子化した後にタイル分割が行われてもよい。点群データは量子化により位置シフトされ、その後、重複点がマージされる。重複点がマージされない場合もある。
【０６１１】
この構成の場合、量子化パラメータをタイル全体で統一するか個別に設定するかを示すフラグ（ｉｎｄｅｐｅｎｄｅｎｔ＿ｑｕａｎｔｉｚａｔｉｏｎ＿ｆｌａｇ）は、値１（全体で統一する）に指定される。
【０６１２】
図９４は、この場合の三次元データ符号化処理のフローチャートである。なお、図９４に示す処理は、図９３に示す処理に対して、タイル分割を行う場合（Ｓ６２０１でＹｅｓ）における、タイル分割処理と量子化処理との順序が異なる。以下では、相違点を主に説明する。
【０６１３】
タイル分割を行い、重複点をマージする場合（Ｓ６２０１でＹｅｓ、かつＳ６２１４でＹｅｓ）、三次元データ符号化装置は、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝１を設定し（Ｓ６２１５）、点群の位置情報を量子化する（Ｓ６２１７Ａ）。次に、三次元データ符号化装置は、量子化後の位置情報に基づき重複点をマージする（Ｓ６２１８Ａ）。次に、三次元データ符号化装置は、マージ後の点群をタイルに分割する（Ｓ６２１６Ａ）。
【０６１４】
一方、タイル分割を行い、重複点をマージしない場合（Ｓ６２０１でＹｅｓ、かつＳ６２１４でＮｏ）、三次元データ符号化装置は、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝０を設定し（Ｓ６２２２）、点群の位置情報を量子化する（Ｓ６２２４Ａ）。次に、三次元データ符号化装置は、量子化後の点群をタイルに分割する（Ｓ６２２３Ａ）。
【０６１５】
次に、本実施の形態に係る三次元データ復号処理について説明する。図９５は、本実施の形態に係る三次元データ復号処理のフローチャートである。
【０６１６】
まず、三次元データ復号装置は、ビットストリームに含まれるメタデータからＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇを復号する（Ｓ６２３１）。次に、三次元データ復号装置は、タイル分割が行われているか否かを判定する（Ｓ６２３２）。例えば、三次元データ復号装置は、ビットストリームに含まれる情報に基づきタイル分割が行われているか否かを判定する。
【０６１７】
タイル分割が行われてない場合（Ｓ６２３２でＮｏ）、三次元データ復号装置は、ビットストリームからオキュパンシー符号を復号する（Ｓ６２３３）。具体的には、三次元データ復号装置は、ビットストリームに含まれるヘッダ情報等を用いて、ある空間（ノード）の８分木を生成する。例えば、三次元データ復号装置は、ヘッダ情報に付加されたある空間のｘ軸、ｙ軸、ｚ軸方向の大きさを用いて大空間（ルートノード）を生成し、その空間をｘ軸、ｙ軸、ｚ軸方向にそれぞれ２分割することで８個の小空間Ａ（ノードＡ０〜Ａ７）を生成して８分木を生成する。同様に、三次元データ復号装置は、ノードＡ０〜Ａ７のそれぞれを更に８個の小空間に分割し、本フローの処理を通して、各ノードのオキュパンシー符号の復号と、リーフ情報の復号とを順に行う。
【０６１８】
ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇが０である場合（Ｓ６２３４でＹｅｓ）、三次元データ復号装置は、全リーフノードに対して各リーフノードに含まれる三次元点の数を示す情報を復号する（Ｓ６２３５）。例えば、大空間が８×８×８の場合、８分木分割を３回適用するとノードが１×１×１となる。このサイズが分割できる最小単位（リーフ）である場合、三次元データ復号装置は、各リーフノードに点が含まれるか否かを、リーフノードの親ノードの復号したオキュパンシー符号から判定し、各リーフノードの三次元位置を算出する。
【０６１９】
ステップＳ６２３５の後、又は、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇが１である場合（Ｓ６２３４でＮｏ）、三次元データ復号装置は、復号したオキュパンシー符号、８分木の分割数等の情報を用いてリーフノードの位置情報（三次元位置）を算出する（Ｓ６２３６）。次に、三次元データ復号装置は、位置情報を逆量子化する（Ｓ６２３７）。
【０６２０】
具体的には、三次元データ復号装置は、ヘッダから復号した量子化パラメータを用いて逆量子化を行うことで、点群の位置情報（三次元位置）を算出する。例えば、三次元データ復号装置は、逆量子化前の三次元位置（ｘ、ｙ、ｚ）に量子化パラメータ（ｑｘ、ｑｙ、ｑｚ）を乗算することで逆量子化位置（ｘ×ｑｘ、ｙ×ｑｙ、ｚ×ｑｚ）を算出する。なお、ロスレス（ｌｏｓｓｌｅｓｓ）符号化時には逆量子化処理がスキップされてもよい。
【０６２１】
次に、三次元データ復号装置は、位置情報が復号された三次元点に関わる属性情報を復号する（Ｓ６２３８）。ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝１の場合は、復号された異なる三次元位置を持つ各点に１個の属性情報が復号後に紐づけされる。また、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ＝０の場合は、復号された同じ三次元位置を持つ複数の点に、複数の異なる属性情報が復号され紐づけされる。
【０６２２】
一方、タイル分割が行われている場合（Ｓ６２３２でＹｅｓ）、三次元データ復号装置は、タイル毎にオキュパンシー符号を復号する（Ｓ６２３９）。ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇが０の場合（Ｓ６２４０でＹｅｓ）、三次元データ復号装置は、タイル内の全リーフノードに対して各リーフノードに含まれる三次元点の数を示す情報を復号する（Ｓ６２４１）。
【０６２３】
ステップＳ６２４１の後、又は、ＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇが１の場合（Ｓ６２４０でＮｏ）、三次元データ復号装置は、復号したオキュパンシー符号、８分木の分割数等の情報を用いてリーフノードの位置情報（三次元位置）を算出する（Ｓ６２４２）。
【０６２４】
次に、三次元データ復号装置は、タイル内の点群の位置情報（三次元位置）を逆量子化し（Ｓ６２４３）、位置情報が復号された三次元点に関わる属性情報を復号する（Ｓ６２４４）。
【０６２５】
全タイルの処理が完了していない場合（Ｓ６２４５でＮｏ）、次のタイルに対してステップＳ６２３９以降の処理が行われる。全タイルの処理が完了した場合（Ｓ６２４５でＹｅｓ）、三次元データ符号化装置は、処理を終了する。
【０６２６】
以下、タイル間で三次元点が重複する例と、その符号化方法について説明する。タイル間で重複点が発生するケースとして、以下のケースがある。図９６及び図９７はタイル分割の例を示す図である。
【０６２７】
図９６に示すように、分割部において点群をタイル分割する場合において、実線で示すタイル領域が重なるように分割する場合、分割後、破線で示す領域内に、タイル間で重複する点が存在する。また、図９７に示すように、タイル領域が重ならないように分割する場合、分割後のタイル間で重複する点は存在しない。
【０６２８】
また、タイル毎の位置情報の量子化においてそれぞれの点の位置がシフトされる。これにより、タイル内及びタイル間に重複点が発生する可能性がある。その後のタイル毎のタイル内のマージ処理により、個々のタイル内の重複点は１つの点にマージされる。一方、タイル間の重複点は残存する。
【０６２９】
図９６の例では、タイル領域が重なっているエリアに加え、タイル境界付近に新たに重複点が発生する可能性がある。図９７の例では、タイル境界付近に重複点が発生する可能性がある。
【０６３０】
タイル間に重複点がある場合、三次元データ復号装置においてタイルを再構成する際に、点群データに重複点が発生する。これにより、三次元データ復号装置は重複点が不要な場合に、余分な処理が必要となってしまう。
【０６３１】
そこで、三次元データ符号化装置は、タイル内に重複点があるか否かを示すＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ、又はＴｉｌｅＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇをビットストリームに格納するとともに、タイル間に重複点があるか否かを示すフラグであるＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇをビットストリームに格納する。これにより、三次元データ復号装置は、ＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ＝０の場合、重複点の削除又はマージを行うことにより、扱うポイント数を削減し、処理負荷を軽減できる。
【０６３２】
また、三次元データ符号化装置は、タイル分割又は量子化において、タイル間の重複点が発生した場合、その後にタイル間の重複点を削除又はマージしてもよい。この場合、三次元データ符号化装置は、タイル間に重複点が発生しないことを示すＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ＝１をビットストリームに格納する。三次元データ復号装置は、ＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇに基づき、重複点のマージが必要ないと判断できる。
【０６３３】
三次元データ符号化装置は、タイル領域が重複するようにタイル分割を行う場合、又はタイルをそれぞれ量子化する場合など、タイル間に重複点が発生する可能性がある場合に、ＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇを０に設定する。なお、タイル領域が重複している場合であっても、重複領域内にもともと点がない場合は、重複点は発生しない。その場合も、三次元データ符号化装置は、ＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇを０に設定してもよい。また、三次元データ符号化装置は、量子化を行う場合、必ずしも重複点が発生しない状況であっても、重複点が発生する可能性がある場合に、ＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇを０に設定してもよい。
【０６３４】
図９８は、三次元データ符号化処理のフローチャートである。まず、三次元データ符号化装置は、タイル領域が重複するかを判定する（Ｓ６２５１）。タイル領域が重複しない場合（Ｓ６２５２でＮｏ）、三次元データ符号化装置は、タイルを個別に量子化してマージを行うかを判定する（Ｓ６２５２）。タイル領域が重複する場合（Ｓ６２５１でＹｅｓ）、又は、タイルを個別に量子化してマージを行う場合（Ｓ６２５２でＹｅｓ）、三次元データ符号化装置は、分割データ間の重複点をマージするか否かを判定する（Ｓ６２５３）。
【０６３５】
タイルを個別に量子化してマージを行わない場合（Ｓ６２５２でＮｏ）、又は、分割データ間の重複点をマージする場合（Ｓ６２５３でＹｅｓ）、三次元データ符号化装置は、タイル間に重複点がないことを示すＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ＝１を設定する（Ｓ６２５４）。
【０６３６】
分割データ間の重複点をマージしない場合（Ｓ６２５３でＮｏ）、三次元データ符号化装置は、タイル間に重複点があることを示すＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ＝０を設定する（Ｓ６２５５）。
【０６３７】
なお、図９８に示す処理以外の処理が用いられてもよい。例えば、三次元データ符号化装置は、実際に量子化後にタイルを再構成し、タイル間の重複点をサーチすることにより、重複点があるか否かを判定し、判定結果に応じてＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇを設定してもよい。
【０６３８】
また、三次元データ符号化装置は、重複する領域又は範囲に関するメタデータをビットストリームに格納してもよい。例えば、このメタデータは、タイル間で、タイル境界に重複点が存在する可能性があることを示してもよい。これにより、三次元データ復号装置は、タイル境界をサーチして重複点を削除することができるので、処理負荷を軽減できる。
【０６３９】
図９９は、三次元データ符号化装置の構成を示すブロック図である。図９９に示すように三次元データ符号化装置は、分割部６２３１と、複数の量子化部６２３２Ａ及び６２３２Ｂと、分割データ間重複点マージ部６２３３と、複数の符号化部６２３４Ａ及び６２３４Ｂとを備える。
【０６４０】
分割部６２３１は、点群データを複数のタイルに分割することで複数の分割データを生成する。複数の量子化部６２３２Ａ及び６２３２Ｂは、複数の分割データを量子化することで複数の量子化データを生成する。
【０６４１】
複数の量子化部６２３２Ａ及び６２３２Ｂの各々は、最小位置シフト部６２４１と、位置情報量子化部６２４２と、分割データ内重複点マージ部６２４３とを備える。
【０６４２】
最小位置シフト部６２４１は、点群の中で最も座標の値が小さい最小点が原点にシフトするように点群をシフトする。位置情報量子化部６２４２は、位置情報を量子化する。分割データ内重複点マージ部６２４３は、タイル内の重複点をマージする。
【０６４３】
分割データ間重複点マージ部６２３３は、タイル間の重複点をマージする。複数の符号化部６２３４Ａ及び６２３４Ｂは、タイル間の重複点がマージされた後の複数の量子化データを符号化することで複数の符号化データを生成する。
【０６４４】
また、分割部の前に量子化部を配置する構成が用いられてもよい。つまり、三次元データ符号化装置は、全ての点群データに対して量子化を行った後にタイル分割を行ってもよい。この場合、量子化の際にタイル間の重複は発生しない。
【０６４５】
図１００は、ＧＰＳのシンタックス例を示す図である。図１００に示すように、ＧＰＳは、タイル間重複点フラグ（ＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ）を含む。タイル間重複点フラグは、タイル間で重複点が存在する可能性があるか否かを示すフラグである。
【０６４６】
図１０１は、三次元データ復号処理のフローチャートである。まず、三次元データ復号装置は、ビットストリームに含まれるメタデータからＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ及びＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇを復号する（Ｓ６２６１）。次に、三次元データ復号装置は、タイル毎に位置情報及び属性情報を復号し、点群を再構成する（Ｓ６２６２）。
【０６４７】
次に、三次元データ復号装置は、重複点のマージが必要であるか否かを判定する（Ｓ６２６３）。例えば、三次元データ復号装置は、アプリケーションが重複点に対応できるか否か、又は重複点をマージしたほうがよいか否かに応じて、マージが必要であるか否かを判定する。または、三次元データ復号装置は、重複点に対応する複数の属性情報を平滑化又はフィルタリング処理し、雑音除去又は推定精度を向上することを目的として、重複点をマージすると判定してもよい。
【０６４８】
重複点のマージが必要である場合（Ｓ６２６３でＹｅｓ）、三次元データ復号装置は、タイル間の重複がある（重複点が存在する）か否かを判定する（Ｓ６２６４）。例えば、三次元データ復号装置は、ＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ及びＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇの復号結果に基づき、タイル間の重複の有無を判定してもよい。これにより、三次元データ復号装置における重複点のサーチが不要となり、三次元データ復号装置の処理負荷を軽減できる。なお、三次元データ復号装置は、タイルを再構成後に重複点をサーチすることにより、重複点が存在するか否かを判定してもよい。
【０６４９】
タイル間の重複がある場合（Ｓ６２６４でＹｅｓ）、三次元データ復号装置は、タイル間の重複点をマージする（Ｓ６２６５）。次に、三次元データ復号装置は、重複する複数の属性情報をマージする（Ｓ６２６６）。
【０６５０】
ステップＳ６２６６の後、又は、タイル間の重複がない場合（Ｓ６２６４でＮｏ）、三次元データ復号装置は、重複点のない点群を用いてアプリケーションを実行する（Ｓ６２６７）。
【０６５１】
一方、重複点のマージが必要でない場合（Ｓ６２６３でＮｏ）、三次元データ復号装置は、重複点のマージは行わず、重複点が存在する点群を用いてアプリケーションを実行する（Ｓ６２６８）。
【０６５２】
以下、アプリケーションの例を説明する。まず、重複点のない点群を用いるアプリケーションの例を説明する。
【０６５３】
図１０２は、アプリケーションの例を示す図である。図１０２に示す例は、タイルＡの領域からタイルＢの領域へ走行中の移動体が、サーバから地図点群をリアルタイムにダウンロードするユースケースを示す。サーバは複数の重複するエリアの地図点群の符号化データを格納している。移動体は、タイルＡの地図情報を取得済みであり、移動方向に位置するタイルＢの地図情報の取得をサーバに要求する。
【０６５４】
その際、移動体は、タイルＡとタイルＢとの重複部分のデータは不要であると判断し、タイルＢに含まれるタイルＢとタイルＡとの重複部分を削除する指示をサーバに送信する。サーバは、タイルＢから上記重複部分を削除し、削除後のタイルＢを移動体に配信する。これにより、伝送データ量の削減、及び復号処理の負荷の低減を実現できる。
【０６５５】
なお、移動体はフラグに基づき重複点がないことを確認してもよい。また、移動体は、タイルＡを取得済みでない場合は、重複部分を削除しないデータをサーバに要求する。また、移動体は、サーバに重複点の削除機能がない場合、又は重複点があるか否かわからない場合、配信されたデータを確認して重複点があるか否かを判定し、重複点がある場合はマージを行ってもよい。
【０６５６】
次に、重複点のある点群を用いるアプリケーションの例を説明する。移動体は、ＬｉＤＡＲで取得した地図点群データをリアルタイムにサーバにアップロードする。例えば、移動体は、タイル毎に取得したデータをサーバにアップロードする。この場合、タイルＡとタイルＢとが重複する領域は存在するが、符号化側の移動体は、タイル間の重複点をマージせず、タイル間の重複があることを示すフラグとともにデータをサーバに送出する。サーバは、受信したデータに含まれる重複データをマージせずに、受信したデータをそのまま蓄積する。
【０６５７】
また、点群データをＩＳＯＢＭＦＦ、ＭＰＥＧ−ＤＡＳＨ／ＭＭＴ、又はＭＰＥＧ−ＴＳなどのシステムを用いて伝送あるいは蓄積する場合、装置は、ＧＰＳに含まれる、タイル内に重複点があるか否か、又はタイル間に重複点があるか否かを示すフラグを、システムレイヤにおける記述子又はメタデータに置き換え、ＳＩ、ＭＰＤ、ｍｏｏｖ、又はｍｏｏｆボックスなどに格納してもよい。これにより、アプリケーションがシステムの機能を活用することができる。
【０６５８】
また、三次元データ符号化装置は、図１０３に示すように、例えば、タイルＢを、他のタイルとの重複領域に基づき、複数のスライスに分割してもよい。図１０３に示す例では、スライス１はどのタイルとも重複しない領域であり、スライス２はタイルＡと重複する領域であり、スライス３はタイルＣと重複する領域である。これにより、符号化データからの所望データの分離が容易となる。
【０６５９】
また、地図情報は、点群データであってもよいし、メッシュデータであってもよい。点群データは、領域ごとにタイル化され、サーバに保存されてもよい。
【０６６０】
図１０４は、上記システムにおける処理の流れを示すフローチャートである。まず、端末（例えば移動体）は、端末の領域Ａから領域Ｂへの移動を検知する（Ｓ６２７１）。次に、端末は、領域Ｂの地図情報の取得を開始する（Ｓ６２７２）。
【０６６１】
端末が領域Ａの情報をダウンロード済である場合（Ｓ６２７３でＹｅｓ）、端末は、領域Ａとの重複点を含まない領域Ｂのデータの取得をサーバに指示する（Ｓ６２７４）。サーバは領域Ｂから領域Ａを削除し、削除後の領域Ｂのデータを端末へ送信する（Ｓ６２７５）。なお、サーバは、端末からの指示に応じて、重複点が生じないようにリアルタイムに領域Ｂのデータを符号化して送信してもよい。
【０６６２】
次に、端末は、領域Ａの地図情報に領域Ｂの地図情報をマージ（結合）し、マージ後の地図情報を表示する（Ｓ６２７６）。
【０６６３】
一方、端末が領域Ａの情報をダウンロード済でない場合（Ｓ６２７３でＮｏ）、端末は、領域Ａとの重複点を含む領域Ｂのデータの取得をサーバに指示する（Ｓ６２７７）。サーバは、領域Ｂのデータを端末に送信する（Ｓ６２７８）。次に、端末は、領域Ａとの重複点を含む領域Ｂの地図情報を表示する（Ｓ６２７９）。
【０６６４】
図１０５は、システムにおける別の動作例を示すフローチャートである。送信装置（三次元データ符号化装置）は、タイルのデータを順番に送信する（Ｓ６２８１）。また、送信装置は、送信対象のタイルのデータに、送信対象のタイルが一つ前に送信したデータのタイルと重複するか否かを示すフラグを付加し、当該データを送出する（Ｓ６２８２）。
【０６６５】
受信装置（三次元データ復号装置）は、データに付加されたフラグに基づき、受信したデータのタイルが前に受信したデータのタイルと重複するか否かを判定する（Ｓ６２８３）。受信したデータのタイルが前に受信したデータのタイルと重複する場合（Ｓ６２８３でＹｅｓ）、受信装置は、重複点を削除又はマージする（Ｓ６２８４）。一方、受信したデータのタイルが前に受信したデータのタイルと重複しない場合（Ｓ６２８３でＮｏ）、受信装置は、重複点を削除又はマージする処理を行ず、処理を終了する。これにより、受信装置の処理負荷の軽減、及び属性情報の推定精度向上を実現できる。なお、受信装置は、重複点のマージが必要ない場合は、マージを行わなくてもよい。
【０６６６】
以上のように、本実施の形態に係る三次元データ符号化装置は、図１０６に示す処理を行う。三次元データ符号化装置は、複数の三次元点を含む対象フレームを複数の処理単位（例えばタイル又はスライス）に分割する（Ｓ６２９１）。三次元データ符号化装置は、複数の処理単位を符号化することでビットストリームを生成する（Ｓ６２９２）。ビットストリームに含まれるフレーム単位の制御情報（例えばＧＰＳ）は、（ｉ）対象フレームに含まれる複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）複数の処理単位のいずれにも重複点が存在しないか、を示す第１情報（例えばＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ）を含む。
【０６６７】
これによれば、フレーム単位で重複点の有無を通知できるのでビットストリームのデータ量を削減できる。
【０６６８】
例えば、複数の処理単位の符号化は量子化処理を含む。フレーム単位の制御情報（例えばＧＰＳ）は、さらに、量子化処理に用いる量子化パラメータとして、複数の処理単位に対して同一のパラメータを用いるか、個別のパラメータを用いるか、を示す第２情報（例えばｉｎｄｅｐｅｎｄｅｎｔ＿ｑｕａｎｔｉｚａｔｉｏｎ＿ｆｌａｇ）を含む。
【０６６９】
これによれば、フレーム単位で量子化パラメータを設定するか否か通知できるのでビットストリームのデータ量を削減できる。
【０６７０】
例えば、複数の処理単位は、空間的に重複する２つの処理単位を含む。ビットストリームは、２つの処理単位が重複する領域において、位置情報が同じ複数の三次元点であって、かつ、異なる処理単位に属する複数の三次元点が存在するか否かを示す第３情報（例えばＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ）を含む。
【０６７１】
これによれば、三次元データ復号装置は、第３情報を用いて、処理単位が重複する領域における重複点の有無に応じて処理内容を制御できる。よって、三次元データ復号装置における処理負荷を低減できる。
【０６７２】
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０６７３】
また、本実施の形態に係る三次元データ復号装置は、図１０７に示す処理を行う。三次元データ復号装置は、複数の三次元点を含む対象フレームが分割された複数の処理単位（例えばタイル又はスライス）が符号化されることで生成されたビットストリームを取得する（Ｓ６２９６）。三次元データ復号装置は、ビットストリームから複数の処理単位を復号する（Ｓ６２９７）。ビットストリームに含まれるフレーム単位の制御情報（例えばＧＰＳ）は、（ｉ）対象フレームに含まれる複数の処理単位のいずれかに、位置情報が同じ複数の三次元点である重複点が存在するか、（ｉｉ）複数の処理単位のいずれにも重複点が存在しないか、を示す第１情報（例えばＭｅｒｇｅＤｕｐｌｉｃａｔｅｄＰｏｉｎｔＦｌａｇ）を含む。三次元データ復号装置は、複数の処理単位の復号（Ｓ６２９７）では、第１情報を用いて複数の処理単位を復号する。例えば、三次元データ復号装置は、第１情報により対象フレームに含まれる複数の処理単位のいずれかに重複点が含まれることが示される場合、重複点を削除又はマージする処理を行い、第１情報により対象フレームに含まれる複数の処理単位のいずれにも重複点が含まれないことが示される場合、重複点を削除又はマージする処理を行わない。
【０６７４】
これによれば、フレーム単位で重複点の有無を通知できるのでビットストリームのデータ量を削減できる。
【０６７５】
例えば、複数の処理単位の復号は逆量子化処理を含む。フレーム単位の制御情報は、さらに、逆量子化処理に用いる量子化パラメータとして、複数の処理単位に対して同一のパラメータを用いるか、個別のパラメータを用いるか、を示す第２情報（例えばｉｎｄｅｐｅｎｄｅｎｔ＿ｑｕａｎｔｉｚａｔｉｏｎ＿ｆｌａｇ）を含む。
【０６７６】
これによれば、フレーム単位で量子化パラメータを設定するか否か通知できるのでビットストリームのデータ量を削減できる。
【０６７７】
例えば、複数の処理単位は、空間的に重複する２つの処理単位を含む。ビットストリームは、２つの処理単位が重複する領域において、位置情報が同じ複数の三次元点であって、かつ、異なる処理単位に属する複数の三次元点が存在するか否かを示す第３情報（例えばＵｎｉｑｕｅＢｅｔｗｅｅｎＴｉｌｅｓＦｌａｇ）を含む。
【０６７８】
これによれば、三次元データ復号装置は、第３情報を用いて、処理単位が重複する領域における重複点の有無に応じて処理内容を制御できる。よって、三次元データ復号装置における処理負荷を低減できる。
【０６７９】
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
【０６８０】
以上、本開示の実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等について説明したが、本開示は、この実施の形態に限定されるものではない。
【０６８１】
また、上記実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等に含まれる各処理部は典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部又は全てを含むように１チップ化されてもよい。
【０６８２】
また、集積回路化はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、又はＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０６８３】
また、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【０６８４】
また、本開示は、三次元データ符号化装置及び三次元データ復号装置等により実行される三次元データ符号化方法又は三次元データ復号方法等として実現されてもよい。
【０６８５】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【０６８６】
また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時（並列）に実行されてもよい。
【０６８７】
以上、一つまたは複数の態様に係る三次元データ符号化装置及び三次元データ復号装置等について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
【産業上の利用可能性】
【０６８８】
本開示は、三次元データ符号化装置及び三次元データ復号装置に適用できる。
【符号の説明】
【０６８９】
２４００  三次元データ符号化装置
２４０１  量子化部
２４０２、２４１１  ８分木生成部
２４０３  マージ決定部
２４０４  エントロピー符号化部
２４１０  三次元データ復号装置
２４１２  マージ情報復号部
２４１３  エントロピー復号部
２４１４  逆量子化部
４６０１  三次元データ符号化システム
４６０２  三次元データ復号システム
４６０３  センサ端末
４６０４  外部接続部
４６１１  点群データ生成システム
４６１２  提示部
４６１３  符号化部
４６１４  多重化部
４６１５  入出力部
４６１６  制御部
４６１７  センサ情報取得部
４６１８  点群データ生成部
４６２１  センサ情報取得部
４６２２  入出力部
４６２３  逆多重化部
４６２４  復号部
４６２５  提示部
４６２６  ユーザインタフェース
４６２７  制御部
４６３０  第１の符号化部
４６３１  位置情報符号化部
４６３２  属性情報符号化部
４６３３  付加情報符号化部
４６３４  多重化部
４６４０  第１の復号部
４６４１  逆多重化部
４６４２  位置情報復号部
４６４３  属性情報復号部
４６４４  付加情報復号部
４６５０  第２の符号化部
４６５１  付加情報生成部
４６５２  位置画像生成部
４６５３  属性画像生成部
４６５４  映像符号化部
４６５５  付加情報符号化部
４６５６  多重化部
４６６０  第２の復号部
４６６１  逆多重化部
４６６２  映像復号部
４６６３  付加情報復号部
４６６４  位置情報生成部
４６６５  属性情報生成部
４６７０  符号化部
４６８０  復号部
４７１０  第１の多重化部
４７１１  ファイル変換部
４７２０  第１の逆多重化部
４７２１  ファイル逆変換部
４７３０  第２の多重化部
４７３１  ファイル変換部
４７４０  第２の逆多重化部
４７４１  ファイル逆変換部
４７５０  第３の多重化部
４７５１  ファイル変換部
４７６０  第３の逆多重化部
４７６１  ファイル逆変換部
４８０１  符号化部
４８０２  多重化部
５０１０  第１の符号化部
５０１１  分割部
５０１２  位置情報符号化部
５０１３  属性情報符号化部
５０１４  付加情報符号化部
５０１５  多重化部
５０２０  第１の復号部
５０２１  逆多重化部
５０２２  位置情報復号部
５０２３  属性情報復号部
５０２４  付加情報復号部
５０２５  結合部
５０３１  タイル分割部
５０３２  位置情報スライス分割部
５０３３  属性情報スライス分割部
５０４１  位置情報スライス結合部
５０４２  属性情報スライス結合部
５０４３  タイル結合部
５０５１  タイル分割部
５０５２  符号化部
５０５３  復号部
５０５４  タイル結合部
５３００  第１の符号化部
５３０１  分割部
５３０２  位置情報符号化部
５３０３  属性情報符号化部
５３０４  付加情報符号化部
５３０５  多重化部
５３１１  タイル分割部
５３１２  スライス分割部
５３２１、５３３１、５３５１、５３６１  量子化値算出部
５３２２、５３３２  エントロピ符号化部
５３２３  量子化部
５３３３  逆量子化部
５３４０  第１の復号部
５３４１  逆多重化部
５３４２  位置情報復号部
５３４３  属性情報復号部
５３４４  付加情報復号部
５３４５  結合部
５３５２、５３６２  エントロピ復号部
６２００  三次元データ符号化装置
６２０１、６２３１  分割部
６２０２、６２３２Ａ、６２３２Ｂ  量子化部
６２０３、６２３４Ａ、６２３４Ｂ  符号化部
６２０４  多重化部
６２１０  三次元データ復号装置
６２１１  逆多重化部
６２１２  復号部
６２１３  再構成部
６２２１、６２４１  最小位置シフト部
６２２２、６２４２  位置情報量子化部
６２２３  重複点マージ部
６２３３  分割データ間重複点マージ部
６２４３  分割データ内重複点マージ部
【図１】
2020101021.tif 000003
【図２】
2020101021.tif 000004
【図３】
2020101021.tif 000005
【図４】
2020101021.tif 000006
【図５】
2020101021.tif 000007
【図６】
2020101021.tif 000008
【図７】
2020101021.tif 000009
【図８】
2020101021.tif 000010
【図９】
2020101021.tif 000011
【図１０】
2020101021.tif 000012
【図１１】
2020101021.tif 000013
【図１２】
2020101021.tif 000014
【図１３】
2020101021.tif 000015
【図１４】
2020101021.tif 000016
【図１５】
2020101021.tif 000017
【図１６】
2020101021.tif 000018
【図１７】
2020101021.tif 000019
【図１８】
2020101021.tif 000020
【図１９】
2020101021.tif 000021
【図２０】
2020101021.tif 000022
【図２１】
2020101021.tif 000023
【図２２】
2020101021.tif 000024
【図２３】
2020101021.tif 000025
【図２４】
2020101021.tif 000026
【図２５】
2020101021.tif 000027
【図２６】
2020101021.tif 000028
【図２７】
2020101021.tif 000029
【図２８】
2020101021.tif 000030
【図２９】
2020101021.tif 000031
【図３０】
2020101021.tif 000032
【図３１】
2020101021.tif 000033
【図３２】
2020101021.tif 000034
【図３３】
2020101021.tif 000035
【図３４】
2020101021.tif 000036
【図３５】
2020101021.tif 000037
【図３６】
2020101021.tif 000038
【図３７】
2020101021.tif 000039
【図３８】
2020101021.tif 000040
【図３９】
2020101021.tif 000041
【図４０】
2020101021.tif 000042
【図４１】
2020101021.tif 000043
【図４２】
2020101021.tif 000044
【図４３】
2020101021.tif 000045
【図４４】
2020101021.tif 000046
【図４５】
2020101021.tif 000047
【図４６】
2020101021.tif 000048
【図４７】
2020101021.tif 000049
【図４８】
2020101021.tif 000050
【図４９】
2020101021.tif 000051
【図５０】
2020101021.tif 000052
【図５１】
2020101021.tif 000053
【図５２】
2020101021.tif 000054
【図５３】
2020101021.tif 000055
【図５４】
2020101021.tif 000056
【図５５】
2020101021.tif 000057
【図５６】
2020101021.tif 000058
【図５７】
2020101021.tif 000059
【図５８】
2020101021.tif 000060
【図５９】
2020101021.tif 000061
【図６０】
2020101021.tif 000062
【図６１】
2020101021.tif 000063
【図６２】
2020101021.tif 000064
【図６３】
2020101021.tif 000065
【図６４】
2020101021.tif 000066
【図６５】
2020101021.tif 000067
【図６６】
2020101021.tif 000068
【図６７】
2020101021.tif 000069
【図６８】
2020101021.tif 000070
【図６９】
2020101021.tif 000071
【図７０】
2020101021.tif 000072
【図７１】
2020101021.tif 000073
【図７２】
2020101021.tif 000074
【図７３】
2020101021.tif 000075
【図７４】
2020101021.tif 000076
【図７５】
2020101021.tif 000077
【図７６】
2020101021.tif 000078
【図７７】
2020101021.tif 000079
【図７８】
2020101021.tif 000080
【図７９】
2020101021.tif 000081
【図８０】
2020101021.tif 000082
【図８１】
2020101021.tif 000083
【図８２】
2020101021.tif 000084
【図８３】
2020101021.tif 000085
【図８４】
2020101021.tif 000086
【図８５】
2020101021.tif 000087
【図８６】
2020101021.tif 000088
【図８７】
2020101021.tif 000089
【図８８】
2020101021.tif 000090
【図８９】
2020101021.tif 000091
【図９０】
2020101021.tif 000092
【図９１】
2020101021.tif 000093
【図９２】
2020101021.tif 000094
【図９３】
2020101021.tif 000095
【図９４】
2020101021.tif 000096
【図９５】
2020101021.tif 000097
【図９６】
2020101021.tif 000098
【図９７】
2020101021.tif 000099
【図９８】
2020101021.tif 000100
【図９９】
2020101021.tif 000101
【図１００】
2020101021.tif 000102
【図１０１】
2020101021.tif 000103
【図１０２】
2020101021.tif 000104
【図１０３】
2020101021.tif 000105
【図１０４】
2020101021.tif 000106
【図１０５】
2020101021.tif 000107
【図１０６】
2020101021.tif 000108
【図１０７】
2020101021.tif 000109
【国際調査報告】
2020101021.tif 000110
2020101021.tif 000111