JP7401454B2 - 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 - Google Patents

三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 Download PDF

Info

Publication number
JP7401454B2
JP7401454B2 JP2020555704A JP2020555704A JP7401454B2 JP 7401454 B2 JP7401454 B2 JP 7401454B2 JP 2020555704 A JP2020555704 A JP 2020555704A JP 2020555704 A JP2020555704 A JP 2020555704A JP 7401454 B2 JP7401454 B2 JP 7401454B2
Authority
JP
Japan
Prior art keywords
data
information
encoding
point group
tile
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020555704A
Other languages
English (en)
Other versions
JPWO2020100866A1 (ja
Inventor
賀敬 井口
敏康 杉尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Publication of JPWO2020100866A1 publication Critical patent/JPWO2020100866A1/ja
Priority to JP2023206742A priority Critical patent/JP2024023586A/ja
Application granted granted Critical
Publication of JP7401454B2 publication Critical patent/JP7401454B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/62Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding by frequency transforming in three dimensions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Description

本開示は、三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置に関する。
自動車或いはロボットが自律的に動作するためのコンピュータビジョン、マップ情報、監視、インフラ点検、又は、映像配信など、幅広い分野において、今後、三次元データを活用した装置又はサービスの普及が見込まれる。三次元データは、レンジファインダなどの距離センサ、ステレオカメラ、又は複数の単眼カメラの組み合わせなど様々な方法で取得される。
三次元データの表現方法の1つとして、三次元空間内の点群によって三次元構造の形状を表すポイントクラウドと呼ばれる表現方法がある。ポイントクラウドでは、点群の位置と色とが格納される。ポイントクラウドは三次元データの表現方法として主流になると予想されるが、点群はデータ量が非常に大きい。よって、三次元データの蓄積又は伝送においては二次元の動画像(一例として、MPEGで規格化されたMPEG-4 AVC又はHEVCなどがある)と同様に、符号化によるデータ量の圧縮が必須となる。
また、ポイントクラウドの圧縮については、ポイントクラウド関連の処理を行う公開のライブラリ(Point Cloud Library)などによって一部サポートされている。
また、三次元の地図データを用いて、車両周辺に位置する施設を検索し、表示する技術が知られている(例えば、特許文献1参照)。
国際公開第2014/020663号
三次元データの符号化処理では、符号化効率を向上できることが望まれている。
本開示は、符号化効率を向上できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供することを目的とする。
本開示の一態様に係る三次元データ符号化方法は、同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで第3点群データを生成し、前記第3点群データを符号化することでビットストリームを生成し、前記ビットストリームは、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを含む。
本開示の一態様に係る三次元データ復号方法は、同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで生成された第3点群データが符号化されることで生成されたビットストリームから、前記第3点群データを復号し、前記ビットストリームから、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを取得し、前記第1情報及び前記第2情報を用いて、復号した前記第3点群データから前記第1点群データ及び前記第2点群データを復元する。
本開示は、符号化効率を向上できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供できる。
図1は、実施の形態1に係る三次元データ符号化復号システムの構成を示す図である。 図2は、実施の形態1に係る点群データの構成例を示す図である。 図3は、実施の形態1に係る点群データ情報が記述されたデータファイルの構成例を示す図である。 図4は、実施の形態1に係る点群データの種類を示す図である。 図5は、実施の形態1に係る第1の符号化部の構成を示す図である。 図6は、実施の形態1に係る第1の符号化部のブロック図である。 図7は、実施の形態1に係る第1の復号部の構成を示す図である。 図8は、実施の形態1に係る第1の復号部のブロック図である。 図9は、実施の形態1に係る第2の符号化部の構成を示す図である。 図10は、実施の形態1に係る第2の符号化部のブロック図である。 図11は、実施の形態1に係る第2の復号部の構成を示す図である。 図12は、実施の形態1に係る第2の復号部のブロック図である。 図13は、実施の形態1に係るPCC符号化データに関わるプロトコルスタックを示す図である。 図14は、実施の形態2に係るISOBMFFの基本構造を示す図である。 図15は、実施の形態2に係るプロトコルスタックを示す図である。 図16は、実施の形態3に係る符号化部及び多重化部の構成を示す図である。 図17は、実施の形態3に係る符号化データの構成例を示す図である。 図18は、実施の形態3に係る符号化データ及びNALユニットの構成例を示す図である。 図19は、実施の形態3に係るpcc_nal_unit_typeのセマンティクス例を示す図である。 図20は、実施の形態3に係るNALユニットの送出順序の例を示す図である。 図21は、実施の形態4に係る第1の符号化部のブロック図である。 図22は、実施の形態4に係る第1の復号部のブロック図である。 図23は、実施の形態4に係る分割部のブロック図である。 図24は、実施の形態4に係るスライス及びタイルの分割例を示す図である。 図25は、実施の形態4に係るスライス及びタイルの分割パターンの例を示す図である。 図26は、実施の形態4に係る依存関係の例を示す図である。 図27は、実施の形態4に係るデータの復号順の例を示す図である。 図28は、実施の形態4に係る符号化処理のフローチャートである。 図29は、実施の形態4に係る結合部のブロック図である。 図30は、実施の形態4に係る符号化データ及びNALユニットの構成例を示す図である。 図31は、実施の形態4に係る符号化処理のフローチャートである。 図32は、実施の形態4に係る復号処理のフローチャートである。 図33は、実施の形態4に係る符号化処理のフローチャートである。 図34は、実施の形態4に係る復号処理のフローチャートである。 図35は、実施の形態5に係る複数フレームの点群データからツリー構造及びオキュパンシー符号を生成するイメージを示す図である。 図36は、実施の形態5に係るフレーム結合の例を示す図である。 図37は、実施の形態5に係る複数フレームの結合の例を示す図である。 図38は、実施の形態5に係る三次元データ符号化処理のフローチャートである。 図39は、実施の形態5に係る符号化処理のフローチャートである。 図40は、実施の形態5に係る三次元データ復号処理のフローチャートである。 図41は、実施の形態5に係る復号及び分割処理のフローチャートである。 図42は、実施の形態5に係る符号化部のブロック図である。 図43は、実施の形態5に係る分割部のブロック図である。 図44は、実施の形態5に係る位置情報符号化部のブロック図である。 図45は、実施の形態5に係る属性情報符号化部のブロック図である。 図46は、実施の形態5に係る点群データの符号化処理のフローチャートである。 図47は、実施の形態5に係る符号化処理のフローチャートである。 図48は、実施の形態5に係る復号部のブロック図である。 図49は、実施の形態5に係る位置情報復号部のブロック図である。 図50は、実施の形態5に係る属性情報復号部のブロック図である。 図51は、実施の形態5に係る結合部のブロック図である。 図52は、実施の形態5に係る点群データの復号処理のフローチャートである。 図53は、実施の形態5に係る復号処理のフローチャートである。 図54は、実施の形態5に係るフレームの結合パターンの例を示す図である。 図55は、実施の形態5に係るPCCフレームの構成例を示す図である。 図56は、実施の形態5に係る符号化位置情報の構成を示す図である。 図57は、実施の形態5に係る符号化位置情報のヘッダのシンタックス例を示す図である。 図58は、実施の形態5に係る符号化位置情報のペイロードのシンタックス例を示す図である。 図59は、実施の形態5に係るリーフノード情報の例を示す図である。 図60は、実施の形態5に係るリーフノード情報の例を示す図である。 図61は、実施の形態5に係るビットマップ情報の例を示す図である。 図62は、実施の形態5に係る符号化属性情報の構成を示す図である。 図63は、実施の形態5に係る符号化属性情報のヘッダのシンタックス例を示す図である。 図64は、実施の形態5に係る符号化属性情報のペイロードのシンタックス例を示す図である。 図65は、実施の形態5に係る符号化データの構成を示す図である。 図66は、実施の形態5に係るデータの送出順及びデータの参照関係を示す図である。 図67は、実施の形態5に係るデータの送出順及びデータの参照関係を示す図である。 図68は、実施の形態5に係るデータの送出順及びデータの参照関係を示す図である。 図69は、実施の形態5に係る一部のフレームを復号する例を示す図である。 図70は、実施の形態5に係るデータの送出順及びデータの参照関係を示す図である。 図71は、実施の形態5に係るデータの送出順及びデータの参照関係を示す図である。 図72は、実施の形態5に係るデータの送出順及びデータの参照関係を示す図である。 図73は、実施の形態5に係るデータの送出順及びデータの参照関係を示す図である。 図74は、実施の形態5に係る符号化処理のフローチャートである。 図75は、実施の形態5に係る復号処理のフローチャートである。 図76は、実施の形態6に係る空間的に異なる複数の点群データを結合する例を示す図である。 図77は、実施の形態6に係る空間的に異なる複数の点群データを結合する例を示す図である。 図78は、実施の形態6に係る符号化部の構成を示すブロック図である。 図79は、実施の形態6に係る分割結合部の構成を示すブロック図である。 図80は、実施の形態6に係る位置情報符号化部及び属性情報符号化部の構成を示すブロック図である。 図81は、実施の形態6に係る三次元データ符号化処理のフローチャートである。 図82は、実施の形態6に係る分割処理及び結合処理を模式的に示す図である。 図83は、実施の形態6に係る位置情報の符号化処理のフローチャートである。 図84は、実施の形態6に係る前処理の例を示す図である。 図85は、実施の形態6に係るGPSのシンタックス例を示す図である。 図86は、実施の形態6に係るタイル結合情報のシンタックス例を示す図である。 図87は、実施の形態6に係るタイル情報のシンタックス例を示す図である。 図88は、実施の形態6に係る符号化位置情報の構成を示す図である。 図89は、実施の形態6に係る符号化位置情報のヘッダのシンタックス例を示す図である。 図90は、実施の形態6に係る符号化位置情報のペイロードのシンタックス例を示す図である。 図91は、実施の形態6に係る方法1における結合情報のシンタックス例を示す図である。 図92は、実施の形態6に係る方法2における結合情報のシンタックス例を示す図である。 図93は、実施の形態6に係るビットマップ情報の例を示す図である。 図94は、実施の形態6に係るタイルID符号化部の構成を示すブロック図である。 図95は、実施の形態6に係るタイルID取得部の構成を示すブロック図である。 図96は、実施の形態6に係る符号化属性情報の構成を示す図である。 図97は、実施の形態6に係る符号化属性情報のヘッダのシンタックス例を示す図である。 図98は、実施の形態6に係る符号化属性情報のペイロードのシンタックス例を示す図である。 図99は、実施の形態6に係る符号化データの構成を示す図である。 図100は、実施の形態6に係るデータの送出順とデータの参照関係を示す図である。 図101は、実施の形態6に係るデータの送出順とデータの参照関係を示す図である。 図102は、実施の形態6に係るデータの送出順とデータの参照関係を示す図である。 図103は、実施の形態6に係る一部のフレームを復号する例を示す図である。 図104は、実施の形態6に係るデータの送出順とデータの参照関係を示す図である。 図105は、実施の形態6に係るデータの送出順とデータの参照関係を示す図である。 図106は、実施の形態6に係るデータの送出順とデータの参照関係を示す図である。 図107は、実施の形態6に係る復号部の構成を示すブロック図である。 図108は、実施の形態6に係る位置情報復号部及び属性情報復号部の構成を示すブロック図である。 図109は、実施の形態6に係る分割結合部の構成を示すブロック図である。 図110は、実施の形態6に係る三次元データ復号処理のフローチャートである。 図111は、実施の形態6に係るデータの送出順とデータの参照関係を示す図である。 図112は、実施の形態6に係るデータの送出順とデータの参照関係を示す図である。 図113は、実施の形態6に係るデータ構造を示す図である。 図114は、実施の形態6に係る分割と結合の組み合わせの例を示す図である。 図115は、実施の形態6に係るフレーム結合と空間結合とを組み合わせた例を示す図である。 図116は、実施の形態6に係る符号化処理のフローチャートである。 図117は、実施の形態6に係る復号処理のフローチャートである。
本開示の一態様に係る三次元データ符号化方法は、同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで第3点群データを生成し、前記第3点群データを符号化することでビットストリームを生成し、前記ビットストリームは、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを含む。
これによれば、同一時刻の複数の点群データをまとめて符号化することにより符号化効率を向上できる。
例えば、前記変換処理は、前記移動に加え、幾何学変換を含み、前記ビットストリームは、前記幾何学変換の内容を示す第3情報を含んでもよい。
これによれば、幾何学変換を行うことで符号化効率が向上できる。
例えば、前記幾何学変換は、シフト、回転、及び反転の少なくとも一つを含んでもよい。
例えば、前記第3点群データにおいて位置情報が同じ三次元点である重複点の数に基づき、前記幾何学変換の内容を決定してもよい。
例えば、前記第2情報は、前記移動の移動量を示す情報を含んでもよい。
例えば、前記第2情報は、前記第2点群データの原点を、前記第1点群データの原点に移動させるか否かを示す情報を含んでもよい。
例えば、第4点群データを空間的に分割することで前記第1点群データ及び前記第2点群データを生成してもよい。
例えば、前記ビットストリームは、前記第3点群データに含まれる前記複数の三次元点の各々の位置情報と1以上の属性情報とを含み、前記1以上の属性情報の一つは、前記第1情報を含んでもよい。
本開示の一態様に係る三次元データ復号方法は、同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで生成された第3点群データが符号化されることで生成されたビットストリームから、前記第3点群データを復号し、前記ビットストリームから、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを取得し、前記第1情報及び前記第2情報を用いて、復号した前記第3点群データから前記第1点群データ及び前記第2点群データを復元する。
これによれば、同一時刻の複数の点群データをまとめて符号化することにより符号化効率を向上できる。
例えば、前記変換処理は、前記移動に加え、幾何学変換を含み、前記ビットストリームから、前記幾何学変換の内容を示す第3情報を取得し、前記第1点群データ及び前記第2点群データの前記復元では、前記第1情報、前記第2情報及び前記第3情報を用いて、復号した前記第3点群データから前記第1点群データ及び前記第2点群データを復元してもよい。
これによれば、幾何学変換を行うことで符号化効率が向上できる。
例えば、前記幾何学変換は、シフト、回転、及び反転の少なくとも一つを含んでもよい。
例えば、前記第2情報は、前記移動の移動量を示す情報を含んでもよい。
例えば、前記第2情報は、前記第2点群データの原点を、前記第1点群データの原点に移動させるか否かを示す情報を含んでもよい。
例えば、復元した前記第1点群データ及び前記第2点群データを空間的に結合することで第4点群データを生成してもよい。
例えば、前記ビットストリームは、前記第3点群データに含まれる前記複数の三次元点の各々の位置情報と1以上の属性情報とを含み、前記1以上の属性情報の一つは、前記第1情報を含んでもよい。
また、本開示の一態様に係る三次元データ符号化装置は、プロセッサと、メモリとを備え、前記プロセッサは、前記メモリを用いて、同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで第3点群データを生成し、前記第3点群データを符号化することでビットストリームを生成し、前記ビットストリームは、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを含む。
これによれば、同一時刻の複数の点群データをまとめて符号化することにより符号化効率を向上できる。
また、本開示の一態様に係る三次元データ復号装置は、プロセッサと、メモリとを備え、前記プロセッサは、前記メモリを用いて、同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで生成された第3点群データが符号化されることで生成されたビットストリームから、前記第3点群データを復号し、前記ビットストリームから、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを取得し、前記第1情報及び前記第2情報を用いて、復号した前記第3点群データから前記第1点群データ及び前記第2点群データを復元する。
これによれば、同一時刻の複数の点群データをまとめて符号化することにより符号化効率を向上できる。
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
(実施の形態1)
ポイントクラウドの符号化データを実際の装置又はサービスにおいて使用する際には、ネットワーク帯域を抑制するために用途に応じて必要な情報を送受信することが望ましい。しかしながら、これまで、三次元データの符号化構造にはそのような機能が存在せず、そのための符号化方法も存在しなかった。
本実施の形態では、三次元のポイントクラウドの符号化データにおいて用途に応じて必要な情報を送受信する機能を提供するための三次元データ符号化方法及び三次元データ符号化装置、並びに、当該符号化データを復号する三次元データ復号方法及び三次元データ復号装置、並びに、当該符号化データを多重化する三次元データ多重化方法、並びに、当該符号化データを伝送する三次元データ伝送方法について説明する。
特に、現在、点群データの符号化方法(符号化方式)として第1の符号化方法、及び第2の符号化方法が検討されているが、符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法が定義されておらず、このままでは符号化部におけるMUX処理(多重化)、又は、伝送或いは蓄積ができないという課題がある。
また、PCC(Point Cloud Compression)のように、第1の符号化方法と第2の符号化方法の2つのコーデックが混在するフォーマットをサポートする方法はこれまで存在しない。
本実施の形態では、第1の符号化方法と第2の符号化方法の2つのコーデックが混在するPCC符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法について説明する。
まず、本実施の形態に係る三次元データ(点群データ)符号化復号システムの構成を説明する。図1は、本実施の形態に係る三次元データ符号化復号システムの構成例を示す図である。図1に示すように、三次元データ符号化復号システムは、三次元データ符号化システム4601と、三次元データ復号システム4602と、センサ端末4603と、外部接続部4604とを含む。
三次元データ符号化システム4601は、三次元データである点群データを符号化することで符号化データ又は多重化データを生成する。なお、三次元データ符号化システム4601は、単一の装置により実現される三次元データ符号化装置であってもよいし、複数の装置により実現されるシステムであってもよい。また、三次元データ符号化装置は、三次元データ符号化システム4601に含まれる複数の処理部のうち一部を含んでもよい。
三次元データ符号化システム4601は、点群データ生成システム4611と、提示部4612と、符号化部4613と、多重化部4614と、入出力部4615と、制御部4616とを含む。点群データ生成システム4611は、センサ情報取得部4617と、点群データ生成部4618とを含む。
センサ情報取得部4617は、センサ端末4603からセンサ情報を取得し、センサ情報を点群データ生成部4618に出力する。点群データ生成部4618は、センサ情報から点群データを生成し、点群データを符号化部4613へ出力する。
提示部4612は、センサ情報又は点群データをユーザに提示する。例えば、提示部4612は、センサ情報又は点群データに基づく情報又は画像を表示する。
符号化部4613は、点群データを符号化(圧縮)し、得られた符号化データと、符号化過程において得られた制御情報と、その他の付加情報とを多重化部4614へ出力する。付加情報は、例えば、センサ情報を含む。
多重化部4614は、符号化部4613から入力された符号化データと、制御情報と、付加情報とを多重することで多重化データを生成する。多重化データのフォーマットは、例えば蓄積のためのファイルフォーマット、又は伝送のためのパケットフォーマットである。
入出力部4615(例えば、通信部又はインタフェース)は、多重化データを外部へ出力する。または、多重化データは、内部メモリ等の蓄積部に蓄積される。制御部4616(またはアプリ実行部)は、各処理部を制御する。つまり、制御部4616は、符号化及び多重化等の制御を行う。
なお、センサ情報が符号化部4613又は多重化部4614へ入力されてもよい。また、入出力部4615は、点群データ又は符号化データをそのまま外部へ出力してもよい。
三次元データ符号化システム4601から出力された伝送信号(多重化データ)は、外部接続部4604を介して、三次元データ復号システム4602に入力される。
三次元データ復号システム4602は、符号化データ又は多重化データを復号することで三次元データである点群データを生成する。なお、三次元データ復号システム4602は、単一の装置により実現される三次元データ復号装置であってもよいし、複数の装置により実現されるシステムであってもよい。また、三次元データ復号装置は、三次元データ復号システム4602に含まれる複数の処理部のうち一部を含んでもよい。
三次元データ復号システム4602は、センサ情報取得部4621と、入出力部4622と、逆多重化部4623と、復号部4624と、提示部4625と、ユーザインタフェース4626と、制御部4627とを含む。
センサ情報取得部4621は、センサ端末4603からセンサ情報を取得する。
入出力部4622は、伝送信号を取得し、伝送信号から多重化データ(ファイルフォーマット又はパケット)を復号し、多重化データを逆多重化部4623へ出力する。
逆多重化部4623は、多重化データから符号化データ、制御情報及び付加情報を取得し、符号化データ、制御情報及び付加情報を復号部4624へ出力する。
復号部4624は、符号化データを復号することで点群データを再構成する。
提示部4625は、点群データをユーザに提示する。例えば、提示部4625は、点群データに基づく情報又は画像を表示する。ユーザインタフェース4626は、ユーザの操作に基づく指示を取得する。制御部4627(またはアプリ実行部)は、各処理部を制御する。つまり、制御部4627は、逆多重化、復号及び提示等の制御を行う。
なお、入出力部4622は、点群データ又は符号化データをそのまま外部から取得してもよい。また、提示部4625は、センサ情報などの付加情報を取得し、付加情報に基づいた情報を提示してもよい。また、提示部4625は、ユーザインタフェース4626で取得されたユーザの指示に基づき、提示を行ってもよい。
センサ端末4603は、センサで得られた情報であるセンサ情報を生成する。センサ端末4603は、センサ又はカメラを搭載した端末であり、例えば、自動車などの移動体、飛行機などの飛行物体、携帯端末、又はカメラなどがある。
センサ端末4603で取得可能なセンサ情報は、例えば、(1)LIDAR、ミリ波レーダ、又は赤外線センサから得られる、センサ端末4603と対象物との距離、又は対象物の反射率、(2)複数の単眼カメラ画像又はステレオカメラ画像から得られるカメラと対象物との距離又は対象物の反射率等である。また、センサ情報は、センサの姿勢、向き、ジャイロ(角速度)、位置(GPS情報又は高度)、速度、又は加速度等を含んでもよい。また、センサ情報は、気温、気圧、湿度、又は磁気等を含んでもよい。
外部接続部4604は、集積回路(LSI又はIC)、外部蓄積部、インターネットを介したクラウドサーバとの通信、又は、放送等により実現される。
次に、点群データについて説明する。図2は、点群データの構成を示す図である。図3は、点群データの情報が記述されたデータファイルの構成例を示す図である。
点群データは、複数の点のデータを含む。各点のデータは、位置情報(三次元座標)、及びその位置情報に対する属性情報とを含む。この点が複数集まったものを点群と呼ぶ。例えば、点群は対象物(オブジェクト)の三次元形状を示す。
三次元座標等の位置情報(Position)をジオメトリ(geometry)と呼ぶこともある。また、各点のデータは、複数の属性種別の属性情報(attribute)を含んでもよい。属性種別は、例えば色又は反射率などである。
1つの位置情報に対して1つの属性情報が対応付けられてもよいし、1つの位置情報に対して複数の異なる属性種別を持つ属性情報が対応付けられてもよい。また、1つの位置情報に対して同じ属性種別の属性情報が複数対応付けられてもよい。
図3に示すデータファイルの構成例は、位置情報と属性情報とが1対1に対応する場合の例であり、点群データを構成するN個の点の位置情報と属性情報とを示している。
位置情報は、例えば、x、y、zの3軸の情報である。属性情報は、例えば、RGBの色情報である。代表的なデータファイルとしてplyファイルなどがある。
次に、点群データの種類について説明する。図4は、点群データの種類を示す図である。図4に示すように、点群データには、静的オブジェクトと、動的オブジェクトとがある。
静的オブジェクトは、任意の時間(ある時刻)の三次元点群データである。動的オブジェクトは、時間的に変化する三次元点群データである。以降、ある時刻の三次元点群データをPCCフレーム、又はフレームと呼ぶ。
オブジェクトは、通常の映像データのように、ある程度領域が制限されている点群であってもよいし、地図情報のように領域が制限されていない大規模点群であってもよい。
また、様々な密度の点群データがあり、疎な点群データと、密な点群データとが存在してもよい。
以下、各処理部の詳細について説明する。センサ情報は、LIDAR或いはレンジファインダなどの距離センサ、ステレオカメラ、又は、複数の単眼カメラの組合せなど様々な方法で取得される。点群データ生成部4618は、センサ情報取得部4617で得られたセンサ情報に基づき点群データを生成する。点群データ生成部4618は、点群データとして、位置情報を生成し、位置情報に、当該位置情報に対する属性情報を付加する。
点群データ生成部4618は、位置情報の生成又は属性情報の付加の際に、点群データを加工してもよい。例えば、点群データ生成部4618は、位置が重複する点群を削除することでデータ量を減らしてもよい。また、点群データ生成部4618は、位置情報を変換(位置シフト、回転又は正規化など)してもよいし、属性情報をレンダリングしてもよい。
なお、図1では、点群データ生成システム4611は、三次元データ符号化システム4601に含まれるが、三次元データ符号化システム4601の外部に独立して設けられてもよい。
符号化部4613は、点群データを予め規定された符号化方法に基づき符号化することで符号化データを生成する。符号化方法には大きく以下の2種類がある。一つ目は、位置情報を用いた符号化方法であり、この符号化方法を、以降、第1の符号化方法と記載する。二つ目は、ビデオコーデックを用いた符号化方法であり、この符号化方法を、以降、第2の符号化方法と記載する。
復号部4624は、符号化データを予め規定された符号化方法に基づき復号することで点群データを復号する。
多重化部4614は、符号化データを、既存の多重化方式を用いて多重化することで多重化データを生成する。生成された多重化データは、伝送又は蓄積される。多重化部4614は、PCC符号化データの他に、映像、音声、字幕、アプリケーション、ファイルなどの他のメディア、又は基準時刻情報を多重化する。また、多重化部4614は、さらに、センサ情報又は点群データに関連する属性情報を多重してもよい。
多重化方式又はファイルフォーマットとしては、ISOBMFF、ISOBMFFベースの伝送方式であるMPEG-DASH、MMT、MPEG-2 TS Systems、RMPなどがある。
逆多重化部4623は、多重化データからPCC符号化データ、その他のメディア、及び時刻情報などを抽出する。
入出力部4615は、多重化データを、放送又は通信など、伝送する媒体又は蓄積する媒体にあわせた方法を用いて伝送する。入出力部4615は、インターネット経由で他のデバイスと通信してもよいし、クラウドサーバなどの蓄積部と通信してもよい。
通信プロトコルとしては、http、ftp、TCP又はUDPなどが用いられる。PULL型の通信方式が用いられてもよいし、PUSH型の通信方式が用いられてもよい。
有線伝送及び無線伝送のいずれが用いられてもよい。有線伝送としては、Ethernet(登録商標)、USB、RS-232C、HDMI(登録商標)、又は同軸ケーブルなどが用いられる。無線伝送としては、無線LAN、Wi-Fi(登録商標)、Bluetooth(登録商標)又はミリ波などが用いられる。
また、放送方式としては、例えばDVB-T2、DVB-S2、DVB-C2、ATSC3.0、又はISDB-S3などが用いられる。
図5は、第1の符号化方法の符号化を行う符号化部4613の例である第1の符号化部4630の構成を示す図である。図6は、第1の符号化部4630のブロック図である。第1の符号化部4630は、点群データを第1の符号化方法で符号化することで符号化データ(符号化ストリーム)を生成する。この第1の符号化部4630は、位置情報符号化部4631と、属性情報符号化部4632と、付加情報符号化部4633と、多重化部4634とを含む。
第1の符号化部4630は、三次元構造を意識して符号化を行うという特徴を有する。また、第1の符号化部4630は、属性情報符号化部4632が、位置情報符号化部4631から得られる情報を用いて符号を行うという特徴を有する。第1の符号化方法は、GPCC(Geometry based PCC)とも呼ばれる。
点群データは、PLYファイルのようなPCC点群データ、又は、センサ情報から生成されたPCC点群データであり、位置情報(Position)、属性情報(Attribute)、及びその他の付加情報(MetaData)を含む。位置情報は位置情報符号化部4631に入力され、属性情報は属性情報符号化部4632に入力され、付加情報は付加情報符号化部4633に入力される。
位置情報符号化部4631は、位置情報を符号化することで符号化データである符号化位置情報(Compressed Geometry)を生成する。例えば、位置情報符号化部4631は、8分木等のN分木構造を用いて位置情報を符号化する。具体的には、8分木では、対象空間が8個のノード(サブ空間)に分割され、各ノードに点群が含まれるか否かを示す8ビットの情報(オキュパンシー符号)が生成される。また、点群が含まれるノードは、さらに、8個のノードに分割され、当該8個のノードの各々に点群が含まれるか否かを示す8ビットの情報が生成される。この処理が、予め定められた階層又はノードに含まれる点群の数の閾値以下になるまで繰り返される。
属性情報符号化部4632は、位置情報符号化部4631で生成された構成情報を用いて符号化することで符号化データである符号化属性情報(Compressed Attribute)を生成する。例えば、属性情報符号化部4632は、位置情報符号化部4631で生成された8分木構造に基づき、処理対象の対象点(対象ノード)の符号化において参照する参照点(参照ノード)を決定する。例えば、属性情報符号化部4632は、周辺ノード又は隣接ノードのうち、8分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
また、属性情報の符号化処理は、量子化処理、予測処理、及び算術符号化処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、符号化のパラメータの決定に参照ノードの状態(例えば、参照ノードに点群が含まれる否かを示す占有情報)を用いること、である。例えば、符号化のパラメータとは、量子化処理における量子化パラメータ、又は算術符号化におけるコンテキスト等である。
付加情報符号化部4633は、付加情報のうち、圧縮可能なデータを符号化することで符号化データである符号化付加情報(Compressed MetaData)を生成する。
多重化部4634は、符号化位置情報、符号化属性情報、符号化付加情報及びその他の付加情報を多重化することで符号化データである符号化ストリーム(Compressed Stream)を生成する。生成された符号化ストリームは、図示しないシステムレイヤの処理部へ出力される。
次に、第1の符号化方法の復号を行う復号部4624の例である第1の復号部4640について説明する。図7は、第1の復号部4640の構成を示す図である。図8は、第1の復号部4640のブロック図である。第1の復号部4640は、第1の符号化方法で符号化された符号化データ(符号化ストリーム)を、第1の符号化方法で復号することで点群データを生成する。この第1の復号部4640は、逆多重化部4641と、位置情報復号部4642と、属性情報復号部4643と、付加情報復号部4644とを含む。
図示しないシステムレイヤの処理部から符号化データである符号化ストリーム(Compressed Stream)が第1の復号部4640に入力される。
逆多重化部4641は、符号化データから、符号化位置情報(Compressed Geometry)、符号化属性情報(Compressed Attribute)、符号化付加情報(Compressed MetaData)、及び、その他の付加情報を分離する。
位置情報復号部4642は、符号化位置情報を復号することで位置情報を生成する。例えば、位置情報復号部4642は、8分木等のN分木構造で表される符号化位置情報から三次元座標で表される点群の位置情報を復元する。
属性情報復号部4643は、位置情報復号部4642で生成された構成情報に基づき、符号化属性情報を復号する。例えば、属性情報復号部4643は、位置情報復号部4642で得られた8分木構造に基づき、処理対象の対象点(対象ノード)の復号において参照する参照点(参照ノード)を決定する。例えば、属性情報復号部4643は、周辺ノード又は隣接ノードのうち、8分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
また、属性情報の復号処理は、逆量子化処理、予測処理、及び算術復号処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、復号のパラメータの決定に参照ノードの状態(例えば、参照ノードに点群が含まれる否かを示す占有情報)を用いること、である。例えば、復号のパラメータとは、逆量子化処理における量子化パラメータ、又は算術復号におけるコンテキスト等である。
付加情報復号部4644は、符号化付加情報を復号することで付加情報を生成する。また、第1の復号部4640は、位置情報及び属性情報の復号処理に必要な付加情報を復号時に使用し、アプリケーションに必要な付加情報を外部に出力する。
次に、第2の符号化方法の符号化を行う符号化部4613の例である第2の符号化部4650について説明する。図9は、第2の符号化部4650の構成を示す図である。図10は、第2の符号化部4650のブロック図である。
第2の符号化部4650は、点群データを第2の符号化方法で符号化することで符号化データ(符号化ストリーム)を生成する。この第2の符号化部4650は、付加情報生成部4651と、位置画像生成部4652と、属性画像生成部4653と、映像符号化部4654と、付加情報符号化部4655と、多重化部4656とを含む。
第2の符号化部4650は、三次元構造を二次元画像に投影することで位置画像及び属性画像を生成し、生成した位置画像及び属性画像を既存の映像符号化方式を用いて符号化するという特徴を有する。第2の符号化方法は、VPCC(Video based PCC)とも呼ばれる。
点群データは、PLYファイルのようなPCC点群データ、又は、センサ情報から生成されたPCC点群データであり、位置情報(Position)、属性情報(Attribute)、及びその他の付加情報MetaData)を含む。
付加情報生成部4651は、三次元構造を二次元画像に投影することで、複数の二次元画像のマップ情報を生成する。
位置画像生成部4652は、位置情報と、付加情報生成部4651で生成されたマップ情報とに基づき、位置画像(Geometry Image)を生成する。この位置画像は、例えば、画素値として距離(Depth)が示される距離画像である。なお、この距離画像は、一つの視点から複数の点群を見た画像(一つの二次元平面に複数の点群を投影した画像)であってもよいし、複数の視点から複数の点群を見た複数の画像であってもよいし、これらの複数の画像を統合した一つの画像であってもよい。
属性画像生成部4653は、属性情報と、付加情報生成部4651で生成されたマップ情報とに基づき、属性画像を生成する。この属性画像は、例えば、画素値として属性情報(例えば色(RGB))が示される画像である。なお、この画像は、一つの視点から複数の点群を見た画像(一つの二次元平面に複数の点群を投影した画像)であってもよいし、複数の視点から複数の点群を見た複数の画像であってもよいし、これらの複数の画像を統合した一つの画像であってもよい。
映像符号化部4654は、位置画像及び属性画像を、映像符号化方式を用いて符号化することで、符号化データである符号化位置画像(Compressed Geometry Image)及び符号化属性画像(Compressed Attribute Image)を生成する。なお、映像符号化方式として、公知の任意の符号化方法が用いられてよい。例えば、映像符号化方式は、AVC又はHEVC等である。
付加情報符号化部4655は、点群データに含まれる付加情報、及びマップ情報等を符号化することで符号化付加情報(Compressed MetaData)を生成する。
多重化部4656は、符号化位置画像、符号化属性画像、符号化付加情報、及び、その他の付加情報を多重化することで符号化データである符号化ストリーム(Compressed Stream)を生成する。生成された符号化ストリームは、図示しないシステムレイヤの処理部へ出力される。
次に、第2の符号化方法の復号を行う復号部4624の例である第2の復号部4660について説明する。図11は、第2の復号部4660の構成を示す図である。図12は、第2の復号部4660のブロック図である。第2の復号部4660は、第2の符号化方法で符号化された符号化データ(符号化ストリーム)を、第2の符号化方法で復号することで点群データを生成する。この第2の復号部4660は、逆多重化部4661と、映像復号部4662と、付加情報復号部4663と、位置情報生成部4664と、属性情報生成部4665とを含む。
図示しないシステムレイヤの処理部から符号化データである符号化ストリーム(Compressed Stream)が第2の復号部4660に入力される。
逆多重化部4661は、符号化データから、符号化位置画像(Compressed Geometry Image)、符号化属性画像(Compressed Attribute Image)、符号化付加情報(Compressed MetaData)、及び、その他の付加情報を分離する。
映像復号部4662は、符号化位置画像及び符号化属性画像を、映像符号化方式を用いて復号することで、位置画像及び属性画像を生成する。なお、映像符号化方式として、公知の任意の符号化方式が用いられてよい。例えば、映像符号化方式は、AVC又はHEVC等である。
付加情報復号部4663は、符号化付加情報を復号することで、マップ情報等を含む付加情報を生成する。
位置情報生成部4664は、位置画像とマップ情報とを用いて位置情報を生成する。属性情報生成部4665は、属性画像とマップ情報とを用いて属性情報を生成する。
第2の復号部4660は、復号に必要な付加情報を復号時に使用し、アプリケーションに必要な付加情報を外部に出力する。
以下、PCC符号化方式における課題を説明する。図13は、PCC符号化データに関わるプロトコルスタックを示す図である。図13には、PCC符号化データに、映像(例えばHEVC)又は音声などの他のメディアのデータを多重し、伝送又は蓄積する例を示す。
多重化方式及びファイルフォーマットは、様々な符号化データを多重し、伝送又は蓄積するための機能を有している。符号化データを伝送又は蓄積するためには、符号化データを多重化方式のフォーマットに変換しなければならない。例えば、HEVCでは、NALユニットと呼ばれるデータ構造に符号化データを格納し、NALユニットをISOBMFFに格納する技術が規定されている。
一方、現在、点群データの符号化方法として第1の符号化方法(Codec1)、及び第2の符号化方法(Codec2)が検討されているが、符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法が定義されておらず、このままでは符号化部におけるMUX処理(多重化)、伝送及び蓄積ができないという課題がある。
なお、以降において、特定の符号化方法の記載がなければ、第1の符号化方法、及び第2の符号化方法のいずれかを示すものとする。
(実施の形態2)
本実施の形態では、NALユニットをISOBMFFのファイルに格納する方法について説明する。
ISOBMFF(ISO based media file format)は、ISO/IEC14496-12に規定されるファイルフォーマット規格である。ISOBMFFは、ビデオ、オーディオ、及びテキストなど様々なメディアを多重して格納できるフォーマットを規定しており、メディアに依存しない規格である。
ISOBMFFの基本構造(ファイル)について説明する。ISOBMFFにおける基本単位はボックスである。ボックスはtype、length、dataで構成され、様々なtypeのボックスを組み合わせた集合がファイルである。
図14は、ISOBMFFの基本構造(ファイル)を示す図である。ISOBMFFのファイルは、主に、ファイルのブランドを4CC(4文字コード)で示すftyp、制御情報などのメタデータを格納するmoov、及び、データを格納するmdatなどのボックスを含む。
ISOBMFFのファイルへのメディア毎の格納方法は別途規定されており、例えば、AVCビデオ及びHEVCビデオの格納方法は、ISO/IEC14496-15に規定される。ここで、PCC符号化データを蓄積又は伝送するために、ISOBMFFの機能を拡張して使用することが考えられるが、PCC符号化データをISOBMFFのファイルに格納する規定はまだない。そこで、本実施の形態では、PCC符号化データをISOBMFFのファイルに格納する方法について説明する。
図15は、PCCコーデック共通のNALユニットをISOBMFFのファイルに格納する場合のプロトコルスタックを示す図である。ここでは、PCCコーデック共通のNALユニットがISOBMFFのファイルに格納される。NALユニットはPCCコーデック共通であるが、NALユニットには複数のPCCコーデックが格納されるため、それぞれのコーデックに応じた格納方法(Carriage of Codec1、Carriage of Codec2)を規定することが望ましい。
(実施の形態3)
本実施の形態では、上述した第1の符号化部4630、又は第2の符号化部4650で生成される符号化データ(位置情報(Geometry)、属性情報(Attribute)、付加情報(Metadata))の種別、及び付加情報(メタデータ)の生成方法、及び多重化部における多重処理について説明する。なお、付加情報(メタデータ)は、パラメータセット、又は制御情報と表記することもある。
本実施の形態では、図4で説明した動的オブジェクト(時間的に変化する三次元点群データ)を例に説明するが、静的オブジェクト(任意の時刻の三次元点群データ)の場合でも同様の方法を用いてもよい。
図16は、本実施の形態に係る三次元データ符号化装置に含まれる符号化部4801及び多重化部4802の構成を示す図である。符号化部4801は、例えば、上述した第1の符号化部4630又は第2の符号化部4650に対応する。多重化部4802は、上述した多重化部4634又は4656に対応する。
符号化部4801は、複数のPCC(Point Cloud Compression)フレームの点群データを符号化し、複数の位置情報、属性情報及び付加情報の符号化データ(Multiple Compressed Data)を生成する。
多重化部4802は、複数のデータ種別(位置情報、属性情報及び付加情報)のデータをNALユニット化することで、データを復号装置におけるデータアクセスを考慮したデータ構成に変換する。
図17は、符号化部4801で生成される符号化データの構成例を示す図である。図中の矢印は符号化データの復号に係る依存関係を示しており、矢印の元は矢印の先のデータに依存している。つまり、復号装置は、矢印の先のデータを復号し、その復号したデータを用いて矢印の元のデータを復号する。言い換えると、依存するとは、依存元のデータの処理(符号化又は復号等)において依存先のデータが参照(使用)されることを意味する。
まず、位置情報の符号化データの生成処理について説明する。符号化部4801は、各フレームの位置情報を符号化することで、フレーム毎の符号化位置データ(Compressed Geometry Data)を生成する。また、符号化位置データをG(i)で表す。iはフレーム番号、又はフレームの時刻等を示す。
また、符号化部4801は、各フレームに対応する位置パラメータセット(GPS(i))を生成する。位置パラメータセットは、符号化位置データの復号に使用することが可能なパラメータを含む。また、フレーム毎の符号化位置データは、対応する位置パラメータセットに依存する。
また、複数フレームから成る符号化位置データを位置シーケンス(Geometry Sequence)と定義する。符号化部4801は、位置シーケンス内の複数のフレームに対する復号処理に共通に使用するパラメータを格納する位置シーケンスパラメータセット(Geometry Sequence PS:位置SPSとも記す)を生成する。位置シーケンスは、位置SPSに依存する。
次に、属性情報の符号化データの生成処理について説明する。符号化部4801は、各フレームの属性情報を符号化することで、フレーム毎の符号化属性データ(Compressed Attribute Data)を生成する。また、符号化属性データをA(i)で表す。また、図17では、属性Xと属性Yとが存在する例を示しており、属性Xの符号化属性データをAX(i)で表し、属性Yの符号化属性データをAY(i)で表す。
また、符号化部4801は、各フレームに対応する属性パラメータセット(APS(i))を生成する。また、属性Xの属性パラメータセットをAXPS(i)で表し、属性Yの属性パラメータセットをAYPS(i)で表す。属性パラメータセットは、符号化属性情報の復号に使用することが可能なパラメータを含む。符号化属性データは、対応する属性パラメータセットに依存する。
また、複数フレームから成る符号化属性データを属性シーケンス(Attribute Sequence)と定義する。符号化部4801は、属性シーケンス内の複数のフレームに対する復号処理に共通に使用するパラメータを格納する属性シーケンスパラメータセット(Attribute Sequence PS:属性SPSとも記す)を生成する。属性シーケンスは、属性SPSに依存する。
また、第1の符号化方法では、符号化属性データは符号化位置データに依存する。
また、図17では2種類の属性情報(属性Xと属性Y)が存在する場合の例を示している。2種類の属性情報がある場合は、例えば、2つの符号化部により、それぞれのデータ及びメタデータが生成される。また、例えば、属性情報の種類毎に属性シーケンスが定義され、属性情報の種類毎に属性SPSが生成される。
なお、図17では、位置情報が1種類、属性情報が2種類である例を示しているが、これに限らず、属性情報は1種類であってもよいし、3種類以上であってもよい。この場合も、同様の方法で符号化データを生成できる。また、属性情報を持たない点群データの場合は、属性情報はなくてもよい。その場合は、符号化部4801は、属性情報に関連するパラメータセットを生成しなくてもよい。
次に、付加情報(メタデータ)の生成処理について説明する。符号化部4801は、PCCストリーム全体のパラメータセットであるPCCストリームPS(PCC Stream PS:ストリームPSとも記す)を生成する。符号化部4801は、ストリームPSに、1又は複数の位置シーケンス及び1又は複数の属性シーケンスに対する復号処理に共通に使用することができるパラメータを格納する。例えば、ストリームPSには、点群データのコーデックを示す識別情報、及び符号化に使用されたアルゴリズムを示す情報等が含まれる。位置シーケンス及び属性シーケンスはストリームPSに依存する。
次に、アクセスユニット及びGOFについて説明する。本実施の形態では、新たにアクセスユニット(Access Unit:AU)、及びGOF(Group of Frame)の考え方を導入する。
アクセスユニットは、復号時にデータにアクセスするため基本単位であり、1つ以上のデータ及び1つ以上のメタデータで構成される。例えば、アクセスユニットは、同一時刻の位置情報と1又は複数の属性情報とで構成される。GOFは、ランダムアクセス単位であり、1つ以上のアクセスユニットで構成される。
符号化部4801は、アクセスユニットの先頭を示す識別情報として、アクセスユニットヘッダ(AU Header)を生成する。符号化部4801は、アクセスユニットヘッダに、アクセスユニットに係るパラメータを格納する。例えば、アクセスユニットヘッダは、アクセスユニットに含まれる符号化データの構成又は情報を含む。また、アクセスユニットヘッダは、アクセスユニットに含まれるデータに共通に用いられるパラメータ、例えば、符号化データの復号に係るパラメータなどを含む。
なお、符号化部4801は、アクセスユニットヘッダの代わりに、アクセスユニットに係るパラメータを含まないアクセスユニットデリミタを生成してもよい。このアクセスユニットデリミタは、アクセスユニットの先頭を示す識別情報として用いられる。復号装置は、アクセスユニットヘッダ又はアクセスユニットデリミタを検出することにより、アクセスユニットの先頭を識別する。
次に、GOF先頭の識別情報の生成について説明する。符号化部4801は、GOFの先頭を示す識別情報として、GOFヘッダ(GOF Header)を生成する。符号化部4801は、GOFヘッダに、GOFに係るパラメータを格納する。例えば、GOFヘッダは、GOFに含まれる符号化データの構成又は情報を含む。また、GOFヘッダは、GOFに含まれるデータに共通に用いられるパラメータ、例えば、符号化データの復号に係るパラメータなどを含む。
なお、符号化部4801は、GOFヘッダの代わりに、GOFに係るパラメータを含まないGOFデリミタを生成してもよい。このGOFデリミタは、GOFの先頭を示す識別情報として用いられる。復号装置は、GOFヘッダ又はGOFデリミタを検出することにより、GOFの先頭を識別する。
PCC符号化データにおいて、例えば、アクセスユニットはPCCフレーム単位であると定義される。復号装置は、アクセスユニット先頭の識別情報に基づき、PCCフレームにアクセスする。
また、例えば、GOFは1つのランダムアクセス単位であると定義される。復号装置は、GOF先頭の識別情報に基づき、ランダムアクセス単位にアクセスする。例えば、PCCフレームが互いに依存関係がなく、単独で復号可能であれば、PCCフレームをランダムアクセス単位と定義してもよい。
なお、1つのアクセスユニットに2つ以上のPCCフレームが割り当てられてもよいし、1つのGOFに複数のランダムアクセス単位が割り当てられてもよい。
また、符号化部4801は、上記以外のパラメータセット又はメタデータを定義し、生成してもよい。例えば、符号化部4801は、復号時に必ずしも用いない可能性のあるパラメータ(オプションのパラメータ)を格納するSEI(Supplemental Enhancement Information)を生成してもよい。
次に、符号化データの構成、及び符号化データのNALユニットへの格納方法を説明する。
例えば、符号化データの種類毎にデータフォーマットが規定される。図18は、符号化データ及びNALユニットの例を示す図である。
例えば、図18に示すように符号化データは、ヘッダとペイロードとを含む。なお、符号化データは、符号化データ、ヘッダ又はペイロードの長さ(データ量)を示す長さ情報を含んでもよい。また、符号化データは、ヘッダを含まなくてもよい。
ヘッダは、例えば、データを特定するための識別情報を含む。この識別情報は、例えば、データ種別又はフレーム番号を示す。
ヘッダは、例えば、参照関係を示す識別情報を含む。この識別情報は、例えば、データ間に依存関係がある場合にヘッダに格納され、参照元から参照先を参照するための情報である。例えば、参照先のヘッダには、当該データを特定するための識別情報が含まれる。参照元のヘッダには、参照先を示す識別情報が含まれる。
なお、他の情報から参照先又は参照元を識別可能又は導出可能である場合は、データを特定するための識別情報、又は参照関係を示す識別情報を省略してもよい。
多重化部4802は、符号化データを、NALユニットのペイロードに格納する。NALユニットヘッダには、符号化データの識別情報であるpcc_nal_unit_typeが含まれる。図19は、pcc_nal_unit_typeのセマンティクスの例を示す図である。
図19に示すように、pcc_codec_typeがコーデック1(Codec1:第1の符号化方法)である場合、pcc_nal_unit_typeの値0~10は、コーデック1における、符号化位置データ(Geometry)、符号化属性Xデータ(AttributeX)、符号化属性Yデータ(AttributeY)、位置PS(Geom.PS)、属性XPS(AttrX.PS)、属性YPS(AttrX.PS)、位置SPS(Geometry Sequence PS)、属性XSPS(AttributeX Sequence PS)、属性YSPS(AttributeY Sequence PS)、AUヘッダ(AU Header)、GOFヘッダ(GOF Header)に割り当てられる。また、値11以降は、コーデック1の予備に割り当てられる。
pcc_codec_typeがコーデック2(Codec2:第2の符号化方法)である場合、pcc_nal_unit_typeの値0~2は、コーデックのデータA(DataA)、メタデータA(MetaDataA)、メタデータB(MetaDataB)に割り当てられる。また、値3以降は、コーデック2の予備に割り当てられる。
次に、データの送出順序について説明する。以下、NALユニットの送出順序の制約について説明する。
多重化部4802は、NALユニットをGOF又はAU単位でまとめて送出する。多重化部4802は、GOFの先頭にGOFヘッダを配置し、AUの先頭にAUヘッダを配置する。
パケットロスなどでデータが失われた場合でも、復号装置が次のAUから復号できるように、多重化部4802は、シーケンスパラメータセット(SPS)を、AU毎に配置してもよい。
符号化データに復号に係る依存関係がある場合には、復号装置は、参照先のデータを復号した後に、参照元のデータを復号する。復号装置において、データを並び替ることなく、受信した順番に復号できるようにするために、多重化部4802は、参照先のデータを先に送出する。
図20は、NALユニットの送出順の例を示す図である。図20は、位置情報優先と、パラメータ優先と、データ統合との3つの例を示す。
位置情報優先の送出順序は、位置情報に関する情報と、属性情報に関する情報との各々をまとめて送出する例である。この送出順序の場合、位置情報に関する情報の送出が属性情報に関する情報の送出よりも早く完了する。
例えば、この送出順序を用いることで、属性情報を復号しない復号装置は、属性情報の復号を無視することで、処理しない時間を設けることができる可能性がある。また、例えば、位置情報を早く復号したい復号装置の場合、位置情報の符号化データを早く得ることにより、より早く位置情報を復号することができる可能性がある。
なお、図20では、属性XSPSと属性YSPSを統合し、属性SPSと記載しているが、属性XSPSと属性YSPSとを個別に配置してもよい。
パラメータセット優先の送出順序では、パラメータセットが先に送出され、データが後で送出される。
以上のようにNALユニット送出順序の制約に従えば、多重化部4802は、NALユニットをどのような順序で送出してもよい。例えば、順序識別情報が定義され、多重化部4802は、複数パターンの順序でNALユニットを送出する機能を有してもよい。例えばストリームPSにNALユニットの順序識別情報が格納される。
三次元データ復号装置は、順序識別情報に基づき復号を行ってもよい。三次元データ復号装置から三次元データ符号化装置に所望の送出順序が指示され、三次元データ符号化装置(多重化部4802)は、指示された送出順序に従って送出順序を制御してもよい。
なお、多重化部4802は、データ統合の送出順序のように、送出順序の制約に従う範囲であれば、複数の機能をマージした符号化データを生成してもよい。例えば、図20に示すように、GOFヘッダとAUヘッダとを統合してもよいし、AXPSとAYPSとを統合してもよい。この場合、pcc_nal_unit_typeには、複数の機能を有するデータであることを示す識別子が定義される。
以下、本実施の形態の変形例について説明する。フレームレベルのPS、シーケンスレベルのPS、PCCシーケンスレベルのPSのように、PSにはレベルがあり、PCCシーケンスレベルを上位のレベルとし、フレームレベルを下位のレベルとすると、パラメータの格納方法には下記の方法を用いてもよい。
デフォルトのPSの値をより上位のPSで示す。また、下位のPSの値が上位のPSの値と異なる場合には、下位のPSでPSの値が示される。または、上位ではPSの値を記載せず、下位のPSにPSの値を記載する。または、PSの値を、下位のPSで示すか、上位のPSで示すか、両方で示すかの情報を、下位のPSと上位のPSのいずれか一方又は両方に示す。または、下位のPSを上位のPSにマージしてもよい。または、下位のPSと上位のPSとが重複する場合には、多重化部4802は、いずれか一方の送出を省略してもよい。
なお、符号化部4801又は多重化部4802は、データをスライス又はタイルなどに分割し、分割したデータを送出してもよい。分割したデータには、分割したデータを識別するための情報が含まれ、分割データの復号に使用するパラメータがパラメータセットに含まれる。この場合、pcc_nal_unit_typeには、タイル又はスライスに係るデータ又はパラメータを格納するデータであることを示す識別子が定義される。
(実施の形態4)
HEVC符号化では復号装置における並列処理を可能とするために、スライス又はタイルといったデータ分割のツールがあるが、PCC(Point Cloud Compression)符号化ではまだない。
PCCでは、並列処理、圧縮効率、及び圧縮アルゴリズムによって、様々なデータ分割方法が考えられる。ここでは、スライス及びタイルの定義、データ構造及び送受信方法について説明する。
図21は、本実施の形態に係る三次元データ符号化装置に含まれる第1の符号化部4910の構成を示すブロック図である。第1の符号化部4910は、点群データを第1の符号化方法(GPCC(Geometry based PCC))で符号化することで符号化データ(符号化ストリーム)を生成する。この第1の符号化部4910は、分割部4911と、複数の位置情報符号化部4912と、複数の属性情報符号化部4913と、付加情報符号化部4914と、多重化部4915とを含む。
分割部4911は、点群データを分割することで複数の分割データを生成する。具体的には、分割部4911は、点群データの空間を複数のサブ空間に分割することで複数の分割データを生成する。ここでサブ空間とは、タイル及びスライスの一方、又はタイル及びスライスの組み合わせである。より具体的には、点群データは、位置情報、属性情報、及び付加情報を含む。分割部4911は、位置情報を複数の分割位置情報に分割し、属性情報を複数の分割属性情報に分割する。また、分割部4911は、分割に関する付加情報を生成する。
複数の位置情報符号化部4912は、複数の分割位置情報を符号化することで複数の符号化位置情報を生成する。例えば、複数の位置情報符号化部4912は、複数の分割位置情報を並列処理する。
複数の属性情報符号化部4913は、複数の分割属性情報を符号化することで複数の符号化属性情報を生成する。例えば、複数の属性情報符号化部4913は、複数の分割属性情報を並列処理する。
付加情報符号化部4914は、点群データに含まれる付加情報と、分割部4911で分割時に生成された、データ分割に関する付加情報とを符号化することで符号化付加情報を生成する。
多重化部4915は、複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を多重化することで符号化データ(符号化ストリーム)を生成し、生成した符号化データを送出する。また、符号化付加情報は復号時に使用される。
なお、図21では、位置情報符号化部4912及び属性情報符号化部4913の数がそれぞれ2つの例を示しているが、位置情報符号化部4912及び属性情報符号化部4913の数は、それぞれ1つであってもよいし、3つ以上であってもよい。また、複数の分割データは、CPU内の複数コアのように同一チップ内で並列処理されてもよいし、複数のチップのコアで並列処理されてもよいし、複数チップの複数コアで並列処理されてもよい。
図22は、第1の復号部4920の構成を示すブロック図である。第1の復号部4920は、点群データが第1の符号化方法(GPCC)で符号化されることで生成された符号化データ(符号化ストリーム)を復号することで点群データを復元する。この第1の復号部4920は、逆多重化部4921と、複数の位置情報復号部4922と、複数の属性情報復号部4923と、付加情報復号部4924と、結合部4925とを含む。
逆多重化部4921は、符号化データ(符号化ストリーム)を逆多重化することで複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を生成する。
複数の位置情報復号部4922は、複数の符号化位置情報を復号することで複数の分割位置情報を生成する。例えば、複数の位置情報復号部4922は、複数の符号化位置情報を並列処理する。
複数の属性情報復号部4923は、複数の符号化属性情報を復号することで複数の分割属性情報を生成する。例えば、複数の属性情報復号部4923は、複数の符号化属性情報を並列処理する。
複数の付加情報復号部4924は、符号化付加情報を復号することで付加情報を生成する。
結合部4925は、付加情報を用いて複数の分割位置情報を結合することで位置情報を生成する。結合部4925は、付加情報を用いて複数の分割属性情報を結合することで属性情報を生成する。
なお、図22では、位置情報復号部4922及び属性情報復号部4923の数がそれぞれ2つの例を示しているが、位置情報復号部4922及び属性情報復号部4923の数は、それぞれ1つであってもよし、3つ以上であってもよい。また、複数の分割データは、CPU内の複数コアのように同一チップ内で並列処理されてもよいし、複数のチップのコアで並列処理されてもよい、複数チップの複数コアで並列処理されてもよい。
次に、分割部4911の構成を説明する。図23は、分割部4911のブロック図である。分割部4911は、スライス分割部4931(Slice Divider)と、位置情報タイル分割部4932(Geometry Tile Divider)と、属性情報タイル分割部4933(Attribute Tile Divider)とを含む。
スライス分割部4931は、位置情報(Position(Geometry))をスライスに分割することで複数のスライス位置情報を生成する。また、スライス分割部4931は、属性情報(Attribute)をスライスに分割することで複数のスライス属性情報を生成する。また、スライス分割部4931は、スライス分割に係る情報、及びスライス分割において生成された情報を含むスライス付加情報(Slice MetaData)を出力する。
位置情報タイル分割部4932は、複数のスライス位置情報をタイルに分割することで複数の分割位置情報(複数のタイル位置情報)を生成する。また、位置情報タイル分割部4932は、位置情報のタイル分割に係る情報、及び位置情報のタイル分割において生成された情報を含む位置タイル付加情報(Geometry Tile MetaData)を出力する。
属性情報タイル分割部4933は、複数のスライス属性情報をタイルに分割することで複数の分割属性情報(複数のタイル属性情報)を生成する。また、属性情報タイル分割部4933は、属性情報のタイル分割に係る情報、及び属性情報のタイル分割において生成された情報を含む属性タイル付加情報(Attribute Tile MetaData)を出力する。
なお、分割されるスライス又はタイルの数は1以上である。つまり、スライス又はタイルの分割を行わなくてもよい。
また、ここでは、スライス分割後にタイル分割が行われる例を示したが、タイル分割後にスライス分割が行われてもよい。また、スライス及びタイルに加え新たな分割種別を定義し、3つ以上の分割種別で分割が行われてもよい。
以下、点群データの分割方法について説明する。図24は、スライス及びタイル分割の例を示す図である。
まず、スライス分割の方法について説明する。分割部4911は、三次元点群データを、スライス単位で、任意の点群に分割する。分割部4911は、スライス分割において、点を構成する位置情報と属性情報とを分割せず、位置情報と属性情報とを一括で分割する。すなわち、分割部4911は、任意の点における位置情報と属性情報とが同じスライスに属するようにスライス分割を行う。なお、これらに従えば、分割数、及び分割方法はどのような方法でもよい。また、分割の最小単位は点である。例えば、位置情報と属性情報との分割数は同一である。例えば、スライス分割後の位置情報に対応する三次元点と、属性情報に対応する三次元点とは同一のスライスに含まれる。
また、分割部4911は、スライス分割時に分割数及び分割方法に係る付加情報であるスライス付加情報を生成する。スライス付加情報は、位置情報と属性情報とで同一である。例えば、スライス付加情報は、分割後のバウンディングボックスの基準座標位置、大きさ、又は辺の長さを示す情報を含む。また、スライス付加情報は、分割数、及び分割タイプなどを示す情報を含む。
次に、タイル分割の方法について説明する。分割部4911は、スライス分割されたデータを、スライス位置情報(Gスライス)とスライス属性情報(Aスライス)とに分割し、スライス位置情報とスライス属性情報をそれぞれタイル単位に分割する。
なお、図24では8分木構造で分割する例を示しているが、分割数及び分割方法はどのような方法でもよい。
また、分割部4911は、位置情報と属性情報とを異なる分割方法で分割してもよいし、同一の分割方法で分割してもよい。また、分割部4911は、複数のスライスを異なる分割方法でタイルに分割してもよいし、同一の分割方法でタイルに分割してもよい。
また、分割部4911は、タイル分割時に分割数及び分割方法に係るタイル付加情報を生成する。タイル付加情報(位置タイル付加情報及び属性タイル付加情報)は、位置情報と属性情報とで独立している。例えば、タイル付加情報は、分割後のバウンディングボックスの基準座標位置、大きさ、又は辺の長さを示す情報を含む。また、タイル付加情報は、分割数、及び分割タイプなど示す情報を含む。
次に、点群データをスライス又はタイルに分割する方法の例を説明する。分割部4911は、スライス又はタイル分割の方法として、予め定められた方法を用いてもよいし、点群データに応じて使用する方法を適応的に切り替えてもよい。
スライス分割時には、分割部4911は、位置情報と属性情報とに対して一括で三次元空間を分割する。例えば、分割部4911は、オブジェクトの形状を判定し、オブジェクトの形状に応じて三次元空間をスライスに分割する。例えば、分割部4911は、木又は建物などのオブジェクトを抽出し、オブジェクト単位で分割を行う。例えば、分割部4911は、1又は複数のオブジェクトの全体が1つのスライスに含まれるようにスライス分割を行う。または、分割部4911は、一つのオブジェクトを複数のスライスに分割する。
この場合、符号化装置は、例えば、スライス毎に符号化方法を変えてもよい。例えば、符号化装置は、特定のオブジェクト、又はオブジェクトの特定の一部に対して、高品質な圧縮方法を用いてもよい。この場合、符号化装置は、スライス毎の符号化方法を示す情報を付加情報(メタデータ)に格納してもよい。
また、分割部4911は、地図情報又は位置情報に基づき、各スライスが予め定められた座標空間に対応するようにスライス分割を行ってもよい。
タイル分割時には、分割部4911は、位置情報と属性情報とを独立に分割する。例えば、分割部4911は、データ量又は処理量に応じてスライスをタイルに分割する。例えば、分割部4911は、スライスのデータ量(例えばスライスに含まれる三次元点の数)が予め定められた閾値より多いかを判定する。分割部4911は、スライスのデータ量が閾値より多い場合にはスライスをタイルに分割する。分割部4911は、スライスのデータ量が閾値より少ないときにはスライスをタイルに分割しない。
例えば、分割部4911は、復号装置での処理量又は処理時間が一定の範囲(予め定められた値以下)となるよう、スライスをタイルに分割する。これにより、復号装置におけるタイル当たりの処理量が一定となり、復号装置における分散処理が容易となる。
また、分割部4911は、位置情報と属性情報とで処理量が異なる場合、例えば、位置情報の処理量が属性情報の処理量より多い場合、位置情報の分割数を、属性情報の分割数より多くする。
また、例えば、コンテンツによって、復号装置で、位置情報を早く復号して表示し、属性情報を後でゆっくり復号して表示してもよい場合に、分割部4911は、位置情報の分割数を、属性情報の分割数より多くしてもよい。これにより、復号装置は、位置情報の並列数を多くできるので、位置情報の処理を属性情報の処理より高速化できる。
なお、復号装置は、スライス化又はタイル化されているデータを必ずしも並列処理する必要はなく、復号処理部の数又は能力に応じて、これらを並列処理するかどうかを判定してもよい。
以上のような方法で分割することにより、コンテンツ又はオブジェクトに応じた、適応的な符号化を実現できる。また、復号処理における並列処理を実現できる。これにより、点群符号化システム又は点群復号システムの柔軟性が向上する。
図25は、スライス及びタイルの分割のパターンの例を示す図である。図中のDUはデータ単位(DataUnit)であり、タイル又はスライスのデータを示す。また、各DUは、スライスインデックス(SliceIndex)とタイルインデックス(TileIndex)を含む。図中のDUの右上の数値がスライスインデックスを示し、DUの左下の数値がタイルインデックスを示す。
パターン1では、スライス分割において、GスライスとAスライスとで分割数及び分割方法は同じである。タイル分割において、Gスライスに対する分割数及び分割方法とAスライスに対する分割数及び分割方法とは異なる。また、複数のGスライス間では同一の分割数及び分割方法が用いられる。複数のAスライス間では同一の分割数及び分割方法が用いられる。
パターン2では、スライス分割において、GスライスとAスライスとで分割数及び分割方法は同じである。タイル分割において、Gスライスに対する分割数及び分割方法とAスライスに対する分割数及び分割方法とは異なる。また、複数のGスライス間で分割数及び分割方法が異なる。複数のAスライス間で分割数及び分割方法が異なる。
次に、分割データの符号化方法について説明する。三次元データ符号化装置(第1の符号化部4910)は、分割されたデータを、それぞれ符号化する。三次元データ符号化装置は、属性情報を符号化する際に、どの構成情報(位置情報、付加情報又は他の属性情報)に基づき符号化を行ったかを示す依存関係情報を付加情報として生成する。つまり、依存関係情報は、例えば、参照先(依存先)の構成情報を示す。この場合、三次元データ符号化装置は、属性情報の分割形状に対応する構成情報に基づき依存関係情報を生成する。なお、三次元データ符号化装置は、複数の分割形状に対応する構成情報に基づき依存関係情報を生成してもよい。
依存関係情報は三次元データ符号化装置で生成され、生成された依存関係情報が三次元データ復号装置に送出されてもよい。または、三次元データ復号装置が依存関係情報を生成し、三次元データ符号化装置は依存関係情報を送出しなくてもよい。また、三次元データ符号化装置が使用する依存関係を、予め定めておき、三次元データ符号化装置は、依存関係情報を送出しなくてもよい。
図26は、各データの依存関係の一例を示す図である。図中の矢印の先は依存先を示し、矢印の元は依存元を示している。三次元データ復号装置は、依存先から依存元の順でデータを復号する。また、図中に実線で示すデータは実際に送出されるデータであり、点線で示すデータは送出されないデータである。
また、同図において、Gは位置情報を示し、Aは属性情報を示す。Gs1は、スライス番号1の位置情報を示し、Gs2は、スライス番号2の位置情報を示す。Gs1t1は、スライス番号1かつタイル番号1の位置情報を示し、Gs1t2は、スライス番号1かつタイル番号2の位置情報を示し、Gs2t1は、スライス番号2かつタイル番号1の位置情報を示し、Gs2t2は、スライス番号2かつタイル番号2の位置情報を示す。同様に、As1は、スライス番号1の属性情報を示し、As2は、スライス番号2の属性情報を示す。As1t1は、スライス番号1かつタイル番号1の属性情報を示し、As1t2は、スライス番号1かつタイル番号2の属性情報を示し、As2t1は、スライス番号2かつタイル番号1の属性情報を示し、As2t2は、スライス番号2かつタイル番号2の属性情報を示す。
Msliceは、スライス付加情報を示し、MGtileは、位置タイル付加情報を示し、MAtileは、属性タイル付加情報を示す。Ds1t1は属性情報As1t1の依存関係情報を示し、Ds2t1は属性情報As2t1の依存関係情報を示す。
また、三次元データ符号化装置は、三次元データ復号装置においてデータを並び替える必要がないように、データを復号順に並び替えてもよい。なお、三次元データ復号装置においてデータを並び替えてもよいし、三次元データ符号化装置と三次元データ復号装置との両方でデータを並び替えてもよい。
図27は、データの復号順の例を示す図である。図27の例では、左のデータから順に復号が行われる。三次元データ復号装置は、依存関係にあるデータ間では、依存先のデータから先に復号する。例えば、三次元データ符号化装置は、この順序となるようにデータを予め並び替えて送出する。なお、依存先のデータが先になる順序であれば、どのような順序でもよい。また、三次元データ符号化装置は、付加情報及び依存関係情報をデータより先に送出してもよい。
図28は、三次元データ符号装置による処理の流れを示すフローチャートである。まず、三次元データ符号化装置は、上記のように複数のスライス又はタイルのデータを符号化する(S4901)。次に、三次元データ符号化装置は、図27に示すように、依存先のデータが先になるようにデータを並び替える(S4902)。次に、三次元データ符号化装置は、並び替え後のデータを多重化(NALユニット化)する(S4903)。
次に、第1の復号部4920に含まれる結合部4925の構成を説明する。図29は、結合部4925の構成を示すブロック図である。結合部4925は、位置情報タイル結合部4941(Geometry Tile Combiner)と、属性情報タイル結合部4942(Attribute Tile Combiner)と、スライス結合部(Slice Combiner)とを含む。
位置情報タイル結合部4941は、位置タイル付加情報を用いて複数の分割位置情報を結合することで複数のスライス位置情報を生成する。属性情報タイル結合部4942は、属性タイル付加情報を用いて複数の分割属性情報を結合することで複数のスライス属性情報を生成する。
スライス結合部4943は、スライス付加情報を用いて複数のスライス位置情報を結合することで位置情報を生成する。また、スライス結合部4943は、スライス付加情報を用いて複数のスライス属性情報を結合することで属性情報を生成する。
なお、分割されるスライス又はタイルの数は1以上である。つまり、スライス又はタイルの分割が行われていなくてもよい。
また、ここでは、スライス分割後にタイル分割が行われる例を示したが、タイル分割後にスライス分割が行われてもよい。また、スライス及びタイルに加え新たな分割種別を定義し、3つ以上の分割種別で分割が行われてもよい。
次に、スライス分割又はタイル分割された符号化データの構成、及び符号化データのNALユニットへの格納方法(多重化方法)を説明する。図30は、符号化データの構成及び符号化データのNALユニットへの格納方法を示す図である。
符号化データ(分割位置情報及び分割属性情報)は、NALユニットのペイロードに格納される。
符号化データは、ヘッダとペイロードとを含む。ヘッダは、ペイロードに含まれるデータを特定するための識別情報を含む。この識別情報は、例えば、スライス分割或いはタイル分割の種別(slice_type、tile_type)、スライス或いはタイルを特定するためのインデックス情報(slice_idx、tile_idx)、データ(スライス或いはタイル)の位置情報、又はデータのアドレス(address)などを含む。スライスを特定するためのインデックス情報は、スライスインデックス(SliceIndex)とも記す。タイルを特定するためのインデックス情報は、タイルインデックス(TileIndex)とも記す。また、分割の種別とは、例えば、上述したようなオブジェクト形状に基づく手法、地図情報或いは位置情報に基づく手法、又は、データ量或いは処理量に基づく手法等である。
なお、上記の情報の全て又は一部は、分割位置情報のヘッダ及び分割属性情報のヘッダの一方に格納され、他方に格納されてなくてもよい。例えば、位置情報と属性情報とで同一の分割方法が用いられる場合には、位置情報と属性情報とで分割の種別(slice_type、tile_type)及びインデックス情報(slice_idx、tile_idx)は同一である。よって、位置情報と属性情報の一方のヘッダにこれらの情報が含まれてもよい。例えば、位置情報に属性情報が依存する場合には、位置情報が先に処理される。よって、位置情報のヘッダにこれらの情報が含まれ、属性情報のヘッダにはこれらの情報が含まれなくてもよい。この場合、三次元データ復号装置は、例えば、依存先の位置情報のスライス又はタイルと同一のスライス又はタイルに依存元の属性情報が属すると判断する。
また、スライス分割又はタイル分割に係る付加情報(スライス付加情報、位置タイル付加情報又は属性タイル付加情報)、及び依存関係を示す依存関係情報等は、既存のパラメータセット(GPS、APS、位置SPS又は属性SPSなど)に格納されて送出されてもよい。分割方法がフレーム毎に変化する場合は、フレーム毎のパラメータセット(GPS又はAPS等)に分割方法を示す情報が格納されてもよい。シーケンス内で分割方法が変化しない場合は、シーケンス毎のパラメータセット(位置SPS又は属性SPS)に分割方法を示す情報が格納されてもよい。さらに、位置情報と属性情報とで同じ分割方法が用いられる場合は、PCCストリームのパラメータセット(ストリームPS)に分割方法を示す情報が格納されてもよい。
また、上記の情報は、上記のいずれかのパラメータセットに格納されてもよいし、複数のパラメータセットに格納されてもよい。また、タイル分割又はスライス分割用のパラメータセットを定義し、当該パラメータセットに上記の情報を格納してもよい。また、これらの情報は、符号化データのヘッダに格納されてもよい。
また、符号化データのヘッダは、依存関係を示す識別情報を含む。つまり、当該ヘッダは、データ間に依存関係がある場合は、依存元から依存先を参照するための識別情報を含む。例えば、依存先のデータのヘッダには、当該データを特定するための識別情報が含まれる。依存元のデータのヘッダには、依存先を示す識別情報が含まれる。なお、データを特定するための識別情報、スライス分割又はタイル分割に係る付加情報、及び依存関係を示す識別情報を、他の情報から識別可能又は導出可能である場合は、これらの情報を省略してもよい。
次に、本実施の形態に係る点群データの符号化処理及び復号処理の流れについて説明する。図31は、本実施の形態に係る点群データの符号化処理のフローチャートである。
まず、三次元データ符号化装置は、使用する分割方法を決定する(S4911)。この分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。分割の種別とは、上述したようなオブジェクト形状に基づく手法、地図情報或いは位置情報に基づく手法、又は、データ量或いは処理量に基づく手法等である。なお、分割方法は、予め定められていてもよい。
スライス分割が行われる場合(S4912でYes)、三次元データ符号化装置は、位置情報と属性情報とを一括で分割することで複数のスライス位置情報及び複数のスライス属性情報を生成する(S4913)。また、三次元データ符号化装置は、スライス分割に係るスライス付加情報を生成する。なお、三次元データ符号化装置は、位置情報と属性情報とを独立に分割してもよい。
タイル分割が行われる場合(S4914でYes)、三次元データ符号化装置は、複数のスライス位置情報及び複数のスライス属性情報(又は位置情報及び属性情報)を独立に分割することで複数の分割位置情報及び複数の分割属性情報を生成する(S4915)。また、三次元データ符号化装置は、タイル分割に係る位置タイル付加情報及び属性タイル付加情報を生成する。なお、三次元データ符号化装置は、スライス位置情報とスライス属性情報とを一括で分割してもよい。
次に、三次元データ符号化装置は、複数の分割位置情報及び複数の分割属性情報の各々を符号化することで、複数の符号化位置情報及び複数の符号化属性情報を生成する(S4916)。また、三次元データ符号化装置は、依存関係情報を生成する。
次に、三次元データ符号化装置は、複数の符号化位置情報、複数の符号化属性情報及び付加情報をNALユニット化(多重化)することで符号化データ(符号化ストリーム)を生成する(S4917)。また、三次元データ符号化装置は、生成した符号化データを送出する。
図32は、本実施の形態に係る点群データの復号処理のフローチャートである。まず、三次元データ復号装置は、符号化データ(符号化ストリーム)に含まれる、分割方法に係る付加情報(スライス付加情報、位置タイル付加情報及び属性タイル付加情報)を解析することで、分割方法を判定する(S4921)。この分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。
次に、三次元データ復号装置は、符号化データに含まれる複数の符号化位置情報及び複数の符号化属性情報を、符号化データに含まれる依存関係情報を用いて復号することで分割位置情報及び分割属性情報を生成する(S4922)。
付加情報によりタイル分割が行われていることが示される場合(S4923でYes)、三次元データ復号装置は、位置タイル付加情報及び属性タイル付加情報に基づき、複数の分割位置情報と、複数の分割属性情報とを、それぞれの方法で結合することで、複数のスライス位置情報及び複数のスライス属性情報を生成する(S4924)。なお、三次元データ復号装置は、複数の分割位置情報と、複数の分割属性情報とを同一の方法で結合してもよい。
付加情報によりスライス分割が行われていることが示される場合(S4925でYes)、三次元データ復号装置は、スライス付加情報に基づき、複数のスライス位置情報及び複数のスライス属性情報(複数の分割位置情報及び複数の分割属性情報)を同一の方法で結合することで位置情報及び属性情報を生成する(S4926)。なお、三次元データ復号装置は、複数のスライス位置情報と複数のスライス属性情報とを、それぞれ異なる方法で結合してもよい。
以上のように、本実施の形態に係る三次元データ符号化装置は、図33に示す処理を行う。まず、三次元データ符号化装置は、複数の三次元点が含まれる対象空間が分割された複数のサブ空間(例えばスライス)に含まれ、各々が1以上の三次元点を含む複数の分割データ(例えばタイル)に分割する。ここで、分割データは、サブ空間に含まれ、1以上の三次元点を含む1以上のデータ集合体である。また、分割データは空間でもあり、三次元点を含まない空間を含んでいてもよい。また、1つのサブ空間に複数の分割データが含まれてもよいし、1つのサブ空間に1つの分割データが含まれてもよい。なお、対象空間に複数のサブ空間が設定されてもよいし、対象空間に1つのサブ空間が設定されてもよい。
次に、三次元データ符号化装置は、複数の分割データの各々を符号化することで、複数の分割データの各々に対応する複数の符号化データを生成する(S4931)。三次元データ符号化装置は、複数の符号化データと、複数の符号化データの各々に対する複数の制御情報(例えば図30に示すヘッダ)とを含むビットストリームを生成する(S4932)。複数の制御情報の各々には、当該制御情報に対応する符号化データに対応するサブ空間を示す第1識別子(例えばslice_idx)と、当該制御情報に対応する符号化データに対応する分割データを示す第2識別子(例えばtile_idx)とが格納される。
これによれば、三次元データ符号化装置で生成されたビットストリームを復号する三次元データ復号装置は、第1識別子及び第2識別子を用いて、複数の分割データのデータを結合して対象空間を容易に復元できる。よって、三次元データ復号装置における処理量を低減できる。
例えば、三次元データ符号化装置は、前記符号化では、複数の分割データの各々に含まれる三次元点の位置情報と属性情報とを符号化する。複数の符号化データの各々は、位置情報の符号化データと、属性情報の符号化データとを含む。複数の制御情報の各々は、位置情報の符号化データの制御情報と、属性情報の符号化データの制御情報とを含む。第1識別子及び第2識別子は、位置情報の符号化データの制御情報に格納される。
例えば、ビットストリームにおいて、複数の制御情報の各々は、当該制御情報に対応する符号化データの前に配置されている。
また、三次元データ符号化装置は、複数の三次元点が含まれる対象空間が1以上のサブ空間に設定され、前記サブ空間に1以上の三次元点を含む1以上の分割データが含まれ、前記分割データの各々を符号化することで、前記複数の分割データの各々に対応する複数の符号化データを生成し、前記複数の符号化データと、前記複数の符号化データの各々に対する複数の制御情報とを含むビットストリームを生成し、前記複数の制御情報の各々には、当該制御情報に対応する符号化データに対応するサブ空間を示す第1識別子と、当該制御情報に対応する符号化データに対応する分割データを示す第2識別子とが格納されてもよい。
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
また、本実施の形態に係る三次元データ復号装置は、図34に示す処理を行う。まず、三次元データ復号装置は、複数の三次元点が含まれる対象空間が分割された複数のサブ空間(例えばスライス)に含まれ、各々が1以上の三次元点を含む複数の分割データ(例えばタイル)の各々が符号化されることで生成された複数の符号化データと、複数の符号化データの各々に対する複数の制御情報(例えば図30に示すヘッダ)とを含むビットストリームから、前記複数の制御情報に格納されている、当該制御情報に対応する符号化データに対応するサブ空間を示す第1識別子(例えばslice_idx)と、当該制御情報に対応する符号化データに対応する分割データを示す第2識別子(例えばtile_idx)とを取得する(S4941)。次に、三次元データ復号装置は、複数の符号化データを復号することで複数の分割データを復元する(S4942)。次に、三次元データ復号装置は、第1識別子及び第2識別子を用いて、複数の分割データを結合することで対象空間を復元する(S4943)。例えば、三次元データ符号化装置は、第2識別子を用いて複数の分割データを結合することで複数のサブ空間を復元し、第1識別子を用いて複数のサブ空間を結合することで対象空間(複数の三次元点)を復元する。なお、三次元データ復号装置は、第1識別子及び第2識別子の少なくとも一方を用いて、所望のサブ空間又は分割データの符号化データをビットストリームから取得し、取得した符号化データを選択的に復号、又は優先的に復号してもよい。
これによれば、三次元データ復号装置は、第1識別子及び第2識別子を用いて、複数の分割データのデータを結合して対象空間を容易に復元できる。よって、三次元データ復号装置における処理量を低減できる。
例えば、複数の符号化データの各々は、対応する分割データに含まれる三次元点の位置情報と属性情報とが符号化されることで生成され、位置情報の符号化データと、属性情報の符号化データとを含む。複数の制御情報の各々は、位置情報の符号化データの制御情報と、属性情報の符号化データの制御情報とを含む。第1識別子及び第2識別子は、位置情報の符号化データの制御情報に格納されている。
例えば、ビットストリームにおいて、制御情報は、対応する符号化データの前に配置されている。
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
(実施の形態5)
隣接依存を用いた位置情報符号化では、点群の密度が高いほど符号化効率が向上する可能性がある。本実施の形態では、三次元データ符号化装置は、連続するフレームの点群データを結合することで、連続するフレームの点群データをまとめて符号化する。このとき、三次元データ符号化装置は、結合後の点群データに含まれるリーフノードの各々が属するフレームを識別するための情報を加えた符号化データを生成する。
ここで、連続するフレームの点群データは類似する可能性が高い。よって、連続するフレームで、オキュパンシー符号の上位レベルが同一になる可能性が高い。つまり、連続するフレームをまとめて符号化することで、オキュパンシー符号の上位レベルを共用できる。
また、点群がどのフレームに属するかの区別は、フレームのインデックスを符号化することにより、リーフノードで行われる。
図35は、N個のPCC(Point Cloud Compression)フレームの点群データからツリー構造及びオキュパンシー符号(Occupancy Code)を生成するイメージを示す図である。同図において、矢印中の点は、それぞれのPCCフレームに属する点を示している。初めに、それぞれのPCCフレームに属する点には、フレームを特定するためのフレームインデックスが付与される。
次に、N個のフレームに属する点をツリー構造に変換し、オキュパンシー符号が生成される。具体的には、点ごとに、点がツリー構造におけるどのリーフノードに属するかが判定される。同図では、木構造(Tree Structure)はノードの集合を示している。上位のノードから順番に、点がどのノードに属するかが判定される。ノードごとの判定結果がオキュパンシー符号として符号化される。オキュパンシー符号はN個のフレームで共通である。
ノードには、異なるフレームインデックスが付与された、異なるフレームの点が混在する場合がある。なお、8分木(Octree)の分解能が小さい場合は、同一のフレームインデックスが付与された同一フレームの点が混在することもある。
最下層のノード(リーフノード)には、複数のフレームに属する点が混在(重複)することがある。
ツリー構造及びオキュパンシー符号において、上位のレベルのツリー構造及びオキュパンシー符号は、全てのフレームにおいて共通成分である可能性があり、下位のレベルのツリー構造及びオキュパンシー符号はフレーム毎の個別成分、又は共通成分と個別成分とが混在する可能性がある。
例えば、リーフノードなどの最下層のノードには、フレームインデックスを持つ0以上の点が生成され、点の数を示す情報、及び各点に対するフレームインデックスの情報が生成される。これらの情報は、フレームにおいて個別の情報であるともいえる。
図36は、フレーム結合の例を示す図である。図36の(a)に示すように、複数フレームをまとめてツリー構造を生成することにより、同一のノードに含まれるフレームの点の密度が増える。また、ツリー構造を共有することによりオキュパンシー符号のデータ量を削減できる。これらにより、符号化率を向上できる可能性がある。
また、図36の(b)に示すように、ツリー構造におけるオキュパンシー符号の個別成分がより密になることにより、算術符号化の効果が高まるので、符号化率を向上できる可能性がある。
以降、時間的に異なる複数のPCCフレームの結合を例に説明するが、複数フレームでない場合、つまりフレームを結合しない場合(N=1)にも適用可能である。また、結合する複数の点群データは、複数フレーム、つまり、同一対象物の時刻の異なる点群データに限らない。つまり、以下の手法は、空間的、又は時空間的に異なる複数の点群データの結合にも適用可能である。また、以下の手法は、コンテンツの異なる点群データ又は点群ファイルの結合にも適用可能である。
図37は、時間的に異なる複数のPCCフレームの結合の例を示す図である。図37は、自動車が移動しながら、LiDARなどのセンサで点群データを取得する例を示す。点線は、フレーム毎のセンサの取得範囲、すなわち点群データの領域を示している。センサの取得範囲が大きい場合は、点群データの範囲も大きくなる。
点群データを結合して符号化する手法は、以下のような点群データに対して有効である。例えば、図37に示す例では、自動車は移動しており、フレームは自動車の周辺の360°のスキャンにより識別される。つまり、次のフレームであるフレーム2は、車両がX方向への移動した後の別の360°のスキャンに対応する。
この場合、フレーム1とフレーム2とには、重複する領域が存在するため同一の点群データが含まれる可能性がある。よって、フレーム1とフレーム2とを結合して符号化することで符号化効率を向上できる可能性がある。なお、より多くのフレームを結合することも考えられる。ただし、結合するフレーム数を増やすと、リーフノードに付加されるフレームインデックスの符号化に必要なビット数が増加する。
また、異なる位置のセンサによって点群データが取得されてもよい。それにより、それぞれの位置から取得されたそれぞれの点群データがそれぞれフレームとして用いらてもよい。つまり、複数のフレームは、単一のセンサで取得された点群データであってもよいし、複数のセンサで取得された点群データであってもよい。また、複数のフレーム間において、一部又は全ての対象物が同一であってもよいし、異なってもよい。
次に、本実施の形態に係る三次元データ符号化処理の流れを説明する。図38は、三次元データ符号化処理のフローチャートである。三次元データ符号化装置は、結合を行うフレームの数である結合フレーム数Nに基づき、N個全てのフレームの点群データを読み込む。
まず、三次元データ符号化装置は、結合フレーム数Nを決定する(S5401)。例えば、この結合フレーム数Nはユーザにより指定される。
次に、三次元データ符号化装置は、点群データを取得する(S5402)。次に、三次元データ符号化装置は、取得した点群データのフレームインデックスを記録する(S5403)。
N個のフレームを処理済みでない場合(S5404でNo)、三次元データ符号化装置は、次の点群データを指定し(S5405)、指定された点群データに対してステップS5402以降の処理を行う。
一方、N個のフレームを処理済みである場合(S5404でYes)、三次元データ符号化装置は、N個のフレームを結合し、結合後のフレームを符号化する(S5406)。
図39は、符号化処理(S5406)のフローチャートである。まず、三次元データ符号化装置は、N個のフレームに共通の共通情報を生成する(S5411)。例えば、共通情報は、オキュパンシー符号、及び結合フレーム数Nを示す情報を含む。
次に、三次元データ符号化装置は、フレーム毎に個別の情報である個別情報を生成する(S5412)。例えば、個別情報は、リーフノードに含まれる点の数、及びリーフノードに含まれる点のフレームインデックスを含む。
次に、三次元データ符号化装置は、共通情報と個別情報とを結合し、結合後の情報を符号化することで符号化データを生成する(S5413)。次に、三次元データ符号化装置は、フレーム結合に係る付加情報(メタデータ)を生成し、生成した付加情報を符号化する(S5414)。
次に、本実施の形態に係る三次元データ復号処理の流れを説明する。図40は、三次元データ復号処理のフローチャートである。
まず、三次元データ復号装置は、ビットストリームから結合フレーム数Nを取得する(S5421)。次に、三次元データ符号化装置は、ビットストリームから符号化データを取得する(S5422)。次に、三次元データ復号装置は、符号化データを復号することで点群データとフレームインデックスと取得する(S5423)。最後に、三次元データ復号装置は、復号された点群データをフレームインデックスを用いて分割する(S5424)。
図41は、復号及び分割処理(S5423及びS5424)のフローチャートである。まず、三次元データ復号装置は、符号化データ(ビットストリーム)から共通情報及び個別情報を復号(取得)する(S5431)。
次に、三次元データ復号装置は、単一のフレームを復号するか複数のフレームを復号するかを決定する(S5432)。例えば、単一のフレームを復号するか複数のフレームを復号するかは外部から指定されてもよい。ここで、複数のフレームとは、結合されたフレームの全てのフレームであってもよいし、一部のフレームであってもよい。例えば、三次元データ復号装置は、アプリケーションが必要とする特定のフレームを復号すると決定し、必要としないフレームを復号しないと決定してもよい。または、リアルタイムな復号が要求される場合には、三次元データ復号装置は、結合された複数フレームのうち単一のフレームを復号すると決定してもよい。
単一のフレームを復号する場合(S5432でYes)、三次元データ復号装置は、復号した個別情報から指定された単一のフレームインデックスに対応する個別情報を抽出し、抽出した個別情報を復号することで、指定されたフレームインデックスに対応するフレームの点群データを復元する(S5433)。
一方、複数フレームを復号する場合(S5432でNo)、三次元データ復号装置は、指定された複数のフレーム(又は全てのフレーム)のフレームインデックスに対応する個別情報を抽出し、抽出した個別情報を復号することで、指定された複数フレームの点群データを復元する(S5434)。次に、三次元データ復号装置は、フレームインデックスに基づき、復号した点群データ(個別情報)を分割する(S5435)。つまり、三次元データ復号装置は、復号した点群データを複数フレームに分割する。
なお、三次元データ復号装置は、結合された全てのフレームのデータを一括で復号し、復号したデータを各フレームに分割してもよいし、結合された全てのフレームのうち、任意の一部のフレームを一括で復号し、復号したデータを各フレームに分割してもよい。また、三次元データ復号装置は、複数フレームからなる予め定められた単位フレームを単独で復号してもよい。
以下、本実施の形態に係る三次元データ符号化装置の構成を説明する。図42は、本実施の形態に係る三次元データ符号化装置に含まれる符号化部5410の構成を示すブロック図である。符号化部5410は、点群データ(ポイントクラウド)を符号化することで符号化データ(符号化ストリーム)を生成する。この符号化部5410は、分割部5411と、複数の位置情報符号化部5412と、複数の属性情報符号化部5413と、付加情報符号化部5414と、多重化部5415とを含む。
分割部5411は、複数フレームの点群データを分割することで複数フレームの複数の分割データを生成する。具体的には、分割部5411は、各フレームの点群データの空間を複数のサブ空間に分割することで複数の分割データを生成する。ここでサブ空間とは、タイル及びスライスの一方、又はタイル及びスライスの組み合わせである。より具体的には、点群データは、位置情報、属性情報(色又は反射率等)、及び付加情報を含む。また、分割部5411には、フレーム番号が入力される。分割部5411は、各フレームの位置情報を複数の分割位置情報に分割し、各フレームの属性情報を複数の分割属性情報に分割する。また、分割部5411は、分割に関する付加情報を生成する。
例えば、分割部5411は、まず、点群をタイルに分割する。次に、分割部5411は、得られたタイルを、さらにスライスに分割する。
複数の位置情報符号化部5412は、複数の分割位置情報を符号化することで複数の符号化位置情報を生成する。例えば、位置情報符号化部5412は、8分木等のN分木構造を用いて分割位置情報を符号化する。具体的には、8分木では、対象空間が8個のノード(サブ空間)に分割され、各ノードに点群が含まれるか否かを示す8ビットの情報(オキュパンシー符号)が生成される。また、点群が含まれるノードは、さらに、8個のノードに分割され、当該8個のノードの各々に点群が含まれるか否かを示す8ビットの情報が生成される。この処理が、予め定められた階層又はノードに含まれる点群の数の閾値以下になるまで繰り返される。例えば、複数の位置情報符号化部5412は、複数の分割位置情報を並列処理する。
属性情報符号化部4632は、位置情報符号化部4631で生成された構成情報を用いて符号化することで符号化データである符号化属性情報を生成する。例えば、属性情報符号化部4632は、位置情報符号化部4631で生成された8分木構造に基づき、処理対象の対象点(対象ノード)の符号化において参照する参照点(参照ノード)を決定する。例えば、属性情報符号化部4632は、周辺ノード又は隣接ノードのうち、8分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
また、位置情報又は属性情報の符号化処理は、量子化処理、予測処理、及び算術符号化処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、符号化のパラメータの決定に参照ノードの状態(例えば、参照ノードに点群が含まれる否かを示す占有情報)を用いること、である。例えば、符号化のパラメータとは、量子化処理における量子化パラメータ、又は算術符号化におけるコンテキスト等である。
複数の属性情報符号化部5413は、複数の分割属性情報を符号化することで複数の符号化属性情報を生成する。例えば、複数の属性情報符号化部5413は、複数の分割属性情報を並列処理する。
付加情報符号化部5414は、点群データに含まれる付加情報と、分割部5411で分割時に生成された、データ分割に関する付加情報とを符号化することで符号化付加情報を生成する。
多重化部5415は、複数フレームの、複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を多重化することで符号化データ(符号化ストリーム)を生成し、生成した符号化データを送出する。また、符号化付加情報は復号時に使用される。
図43は、分割部5411のブロック図である。分割部5411は、タイル分割部5421と、スライス分割部5422とを含む。
タイル分割部5421は、複数フレームの位置情報(Position(Geometry))の各々をタイルに分割することで複数のタイル位置情報を生成する。また、タイル分割部5421は、複数フレームの属性情報(Attribute)の各々をタイルに分割することで複数のタイル属性情報を生成する。また、タイル分割部5421は、タイル分割に係る情報、及びタイル分割において生成された情報を含むタイル付加情報(Tile MetaData)を出力する。
スライス分割部5422は、複数のタイル位置情報をスライスに分割することで複数の分割位置情報(複数のスライス位置情報)を生成する。また、スライス分割部5422は、複数のタイル属性情報をスライスに分割することで複数の分割属性情報(複数のスライス属性情報)を生成する。また、スライス分割部5422は、スライス分割に係る情報、及びスライス分割において生成された情報を含むスライス付加情報(Slice MetaData)を出力する。
また、分割部5411は、分割処理において、原点座標及び属性情報等を示すために、フレーム番号(フレームインデックス)を用いる。
図44は、位置情報符号化部5412のブロック図である。位置情報符号化部5412は、フレームインデックス生成部5431と、エントロピー符号化部5432とを含む。
フレームインデックス生成部5431は、フレーム番号に基づきフレームインデックスの値を決定し、決定したフレームインデックスを位置情報に付加する。エントロピー符号化部5432は、フレームインデックスが付加された分割位置情報をエントロピー符号化することで符号化位置情報を生成する。
図45は、属性情報符号化部5413のブロック図である。属性情報符号化部5413は、フレームインデックス生成部5441と、エントロピー符号化部5442とを含む。
フレームインデックス生成部5441は、フレーム番号に基づきフレームインデックスの値を決定し、決定したフレームインデックスを属性情報に付加する。エントロピー符号化部5442は、フレームインデックスが付加された分割属性情報をエントロピー符号化することで符号化属性情報を生成する。
次に、本実施の形態に係る点群データの符号化処理及び復号処理の流れについて説明する。図46は、本実施の形態に係る点群データの符号化処理のフローチャートである。
まず、三次元データ符号化装置は、使用する分割方法を決定する(S5441)。この分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。
タイル分割が行われる場合(S5442でYes)、三次元データ符号化装置は、位置情報と属性情報とを分割することで複数のタイル位置情報及び複数のタイル属性情報を生成する(S5443)。また、三次元データ符号化装置は、タイル分割に係るタイル付加情報を生成する。
スライス分割が行われる場合(S5444でYes)、三次元データ符号化装置は、複数のタイル位置情報及び複数のタイル属性情報(又は位置情報及び属性情報)を分割することで複数の分割位置情報及び複数の分割属性情報を生成する(S5445)。また、三次元データ符号化装置は、スライス分割に係るスライス付加情報を生成する。
次に、三次元データ符号化装置は、複数の分割位置情報及び複数の分割属性情報の各々をフレームインデックスと符号化することで、複数の符号化位置情報及び複数の符号化属性情報を生成する(S5446)。また、三次元データ符号化装置は、依存関係情報を生成する。
次に、三次元データ符号化装置は、複数の符号化位置情報、複数の符号化属性情報及び付加情報をNALユニット化(多重化)することで符号化データ(符号化ストリーム)を生成する(S5447)。また、三次元データ符号化装置は、生成した符号化データを送出する。
図47は、符号化処理(S5446)のフローチャートである。まず、三次元データ符号化装置は、分割位置情報を符号化する(S5451)。次に、三次元データ符号化装置は、分割位置情報用のフレームインデックスを符号化する(S5452)。
分割属性情報が存在する場合(S5453でYes)、三次元データ符号化装置は、分割属性情報を符号化し(S5454)、分割属性情報用のフレームインデックスを符号化する(S5455)。一方、分割属性情報が存在しない場合(S5453でNo)、三次元データ符号化装置は、分割属性情報の符号化、及び分割属性情報用のフレームインデックスの符号化を行わない。なお、フレームインデックスは分割位置情報と分割属性情報のいずれか一方または両方に格納されてもよい。
なお、三次元データ符号化装置は、属性情報を、フレームインデックスを用いて符号化してもよいし、フレームインデックスを用いずに符号化してもよい。つまり、三次元データ符号化装置は、フレームインデックスを用いて、それぞれの点が属するフレームを識別し、フレーム毎に符号化してもよいし、フレームを識別せずに、全てのフレームに属する点を符号化してもよい。
以下、本実施の形態に係る三次元データ復号装置の構成を説明する。図48は、復号部5450の構成を示すブロック図である。復号部5450は、点群データが符号化されることで生成された符号化データ(符号化ストリーム)を復号することで点群データを復元する。この復号部5450は、逆多重化部5451と、複数の位置情報復号部5452と、複数の属性情報復号部5453と、付加情報復号部5454と、結合部5455とを含む。
逆多重化部5451は、符号化データ(符号化ストリーム)を逆多重化することで複数の符号化位置情報、複数の符号化属性情報及び符号化付加情報を生成する。
複数の位置情報復号部5452は、複数の符号化位置情報を復号することで複数の分割位置情報を生成する。例えば、複数の位置情報復号部5452は、複数の符号化位置情報を並列処理する。
複数の属性情報復号部5453は、複数の符号化属性情報を復号することで複数の分割属性情報を生成する。例えば、複数の属性情報復号部5453は、複数の符号化属性情報を並列処理する。
複数の付加情報復号部5454は、符号化付加情報を復号することで付加情報を生成する。
結合部5455は、付加情報を用いて複数の分割位置情報を結合することで位置情報を生成する。結合部5455は、付加情報を用いて複数の分割属性情報を結合することで属性情報を生成する。また、結合部5455は、フレームインデックスを用いて位置情報及び属性情報を複数フレームの位置情報及び複数フレームの属性情報に分割する。
図49は、位置情報復号部5452のブロック図である。位置情報復号部5452は、エントロピー復号部5461と、フレームインデックス取得部5462とを含む。エントロピー復号部5461は、符号化位置情報をエントロピー復号することで分割位置情報を生成する。フレームインデックス取得部5462は、分割位置情報からフレームインデックを取得する。
図50は、属性情報復号部5453のブロック図である。属性情報復号部5453は、エントロピー復号部5471と、フレームインデックス取得部5472とを含む。エントロピー復号部5471は、符号化属性情報をエントロピー復号することで分割属性情報を生成する。フレームインデックス取得部5472は、分割属性情報からフレームインデックを取得する。
図51は、結合部5455の構成を示す図である。結合部5455は、複数の分割位置情報を結合することで位置情報を生成する。結合部5455は、複数の分割属性情報を結合することで属性情報を生成する。また、結合部5455は、フレームインデックスを用いて位置情報及び属性情報を複数フレームの位置情報及び複数フレームの属性情報に分割する。
図52は、本実施の形態に係る点群データの復号処理のフローチャートである。まず、三次元データ復号装置は、符号化データ(符号化ストリーム)に含まれる、分割方法に係る付加情報(スライス付加情報、及びタイル付加情報)を解析することで、分割方法を判定する(S5461)。この分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。
次に、三次元データ復号装置は、符号化データに含まれる複数の符号化位置情報及び複数の符号化属性情報を、符号化データに含まれる依存関係情報を用いて復号することで分割位置情報及び分割属性情報を生成する(S5462)。
付加情報によりスライス分割が行われていることが示される場合(S5463でYes)、三次元データ復号装置は、スライス付加情報に基づき、複数の分割位置情報を結合することで複数のタイル位置情報を生成し、複数の分割属性情報を結合することで複数のタイル属性情報を生成する(S5464)。ここで、複数の分割位置情報、複数の分割属性情報、複数のタイル位置情報、及び複数のタイル属性情報は、フレームインデックスを含む。
付加情報によりタイル分割が行われていることが示される場合(S5465でYes)、三次元データ復号装置は、タイル付加情報に基づき、複数のタイル位置情報(複数の分割位置情報)を結合することで位置情報を生成し、複数のタイル属性情報(複数の分割属性情報)を結合することで属性情報を生成する(S5466)。ここで、複数のタイル位置情報、複数のタイル属性情報、位置情報及び属性情報は、フレームインデックスを含む。
図53は、復号処理(S5464又はS5466)のフローチャートである。まず、三次元データ復号装置は、分割位置情報(スライス位置情報)を復号する(S5471)。次に、三次元データ復号装置は、分割位置情報用のフレームインデックスを復号する(S5472)。
分割属性情報が存在する場合(S5473でYes)、三次元データ復号装置は、分割属性情報を復号し(S5474)、分割属性情報用のフレームインデックスを復号する(S5475)。一方、分割属性情報が存在しない場合(S5473でNo)、三次元データ復号装置は、分割属性情報の復号、及び分割属性情報用のフレームインデックスの復号を行わない。
なお、三次元データ復号装置は、属性情報を、フレームインデックスを用いて復号してもよいし、フレームインデックスを用いずに復号してもよい。
以下、フレーム結合における符号化単位について説明する。図54は、フレームの結合パターンの例を示す図である。同図の例は、例えば、PCCフレームが時系列であり、リアルタイムにデータの生成及び符号化が行われる場合の例である。
図54の(a)は、固定的に4フレームを結合する場合を示している。三次元データ符号化装置は、4フレーム分のデータの生成を待ってから符号化データを生成する。
図54の(b)は、適応的にフレーム数が変化する場合を示している。例えば、三次元データ符号化装置は、レート制御において符号化データの符号量を調整するために結合フレーム数を変化させる。
なお、三次元データ符号化装置は、フレーム結合による効果がない可能性がある場合は、フレームを結合しなくてもよい。また、三次元データ符号化装置は、フレーム結合する場合とフレーム結合しない場合とを切り替えてもよい。
図54の(c)は、結合する複数のフレームの一部が次に結合する複数のフレームの一部と重複する場合の例である。この例は、符号化できたものから順次送出するなど、リアルタイム性、又は低遅延が要求される場合に有用である。
図55は、PCCフレームの構成例を示す図である。三次元データ符号化装置は、結合するフレームを、少なくとも単独で復号できるデータ単位を含むように構成してもよい。例えば、図55の(a)に示すように、PCCフレームが全てイントラ符号化されており、PCCフレームを単独で復号可能な場合には、上記のいずれのパターンも適用可能である。
また、図55の(b)に示すように、インター予測が適用されている場合などにおいてGOF(グループオブフレーム)などのランダムアクセス単位が設定される場合は、三次元データ符号化装置は、そのGOF単位を最小単位として、データを結合してもよい。
なお、三次元データ符号化装置は、共通情報と個別情報とを一括で符号化してもよいし、それぞれを別に符号化してもよい。また、三次元データ符号化装置は、共通情報と個別情報とに共通のデータ構造を用いてもよいし別のデータ構造を用いてもよい。
また、三次元データ符号化装置は、フレーム毎にオキュパンシー符号を生成した後に、複数フレームのオキュパンシー符号を比較し、例えば、所定の基準で複数フレームのオキュパンシー符号間で共通部分が多いか否かを判定し、共通部分が多い場合に共通情報を生成してもよい。あるいは、三次元データ符号化装置は、共通部分が多いか否に基づき、フレーム結合するかどうか、どのフレームを結合するか、又は結合フレーム数を決定してもよい。
次に、符号化位置情報の構成を説明する。図56は、符号化位置情報の構成を示す図である。符号化位置情報は、ヘッダとペイロードとを含む。
図57は、符号化位置情報のヘッダ(Geometry_header)のシンタックス例を示す図である。符号化位置情報のヘッダは、GPSインデックス(gps_idx)と、オフセット情報(offset)と、その他の情報(other_geometry_information)と、フレーム結合フラグ(combine_frame_flag)と、結合フレーム数(number_of_combine_frame)とを含む。
GPSインデックスは、符号化位置情報に対応するパラメータセット(GPS)の識別子(ID)を示す。GPSは、1フレーム又は複数のフレームの符号化位置情報のパラメータセットである。なお、1フレーム毎にパラメータセットが存在する場合は、複数のパラメータセットの識別子がヘッダに示されてもよい。
オフセット情報は、結合データを取得するためのオフセット位置を示す。その他の情報は、位置情報に関するその他の情報(例えば、量子化パラメータの差分値(QPdelta)など)を示す。フレーム結合フラグは、符号化データがフレーム結合されているか否かを示すフラグである。結合フレーム数は、結合されているフレームの数を示す。
なお、上記の情報の一部又は全てがSPS又はGPSに記載されてもよい。なお、SPSとは、シーケンス(複数フレーム)単位のパラメータセットであり、符号化位置情報と符号化属性情報とに共通に用いられるパラメータセットである。
図58は、符号化位置情報のペイロード(Geometry_data)のシンタックス例を示す図である。符号化位置情報のペイロードは、共通情報と、リーフノード情報とを含む。
共通情報は、1以上のフレーム結合したデータであり、オキュパンシー符号(occupancy_Code)等を含む。
リーフノード情報(combine_information)は、各リーフノードの情報である。フレーム数のループとして、フレーム毎にリーフノード情報が示されてもよい。
リーフノードに含まれる点のフレームインデックスを示す方法としては、方法1と方法2とのいずれかを用いることができる。図59は、方法1の場合のリーフノード情報の例を示す図である。図59に示すリーフノード情報は、ノードに含まれる点の数を示す三次元点数(NumberOfPoints)と、点ごとのフレームインデックス(FrameIndex)とを含む。
図60は、方法2の場合のリーフノード情報の例を示す図である。図60に示す例では、リーフノード情報は、ビットマップにより複数の点のフレームインデックを示すビットマップ情報(bitmapIsFramePointsFlag)を含む。図61は、ビットマップ情報の例を示す図である。この例では、ビットマップにより、リーフノードがフレームインデックス1と3と5の三次元点を含むことが示される。
なお、量子化の分解能が低い場合は、同一フレームに重複点が存在する場合がある。この場合、三次元点数(NumberOfPoints)を共有化し、各フレームの三次元点の数と複数フレームの合計の三次元点の数とが示されてもよい。
また、不可逆圧縮が用いられる場合、三次元データ符号化装置は、重複点を削除し、情報量を削減してもよい。三次元データ符号化装置は、フレーム結合前に重複点を削除してもよいし、フレーム結合後に重複点を削除してもよい。
次に、符号化属性情報の構成を説明する。図62は、符号化属性情報の構成を示す図である。符号化属性情報は、ヘッダとペイロードとを含む。
図63は、符号化属性情報のヘッダ(Attribute_header)のシンタックス例を示す図である。符号化属性情報のヘッダは、APSインデックス(aps_idx)と、オフセット情報(offset)と、その他の情報(other_attribute_information)と、フレーム結合フラグ(combine_frame_flag)と、結合フレーム数(number_of_combine_frame)とを含む。
APSインデックスは、符号化属性情報に対応するパラメータセット(APS)の識別子(ID)を示す。APSは、1フレーム又は複数のフレームの符号化属性情報のパラメータセットである。なお、1フレーム毎にパラメータセットが存在する場合は、複数のパラメータセットの識別子がヘッダに示されてもよい。
オフセット情報は、結合データを取得するためのオフセット位置を示す。その他の情報は、属性情報に関するその他の情報(例えば、量子化パラメータの差分値(QPdelta)など)を示す。フレーム結合フラグは、符号化データがフレーム結合されているか否かを示すフラグである。結合フレーム数は、結合されているフレームの数を示す。
なお、上記の情報の一部又は全てがSPS又はAPSに記載されてもよい。
図64は、符号化属性情報のペイロード(Attribute_data)のシンタックス例を示す図である。符号化属性情報のペイロードは、リーフノード情報(combine_information)を含む。例えば、このリーフノード情報の構成は、符号化位置情報のペイロードに含まれるリーフノード情報と同様である。つまり、リーフノード情報(フレームインデックス)は、属性情報に含まれてもよい。
また、リーフノード情報(フレームインデックス)は、符号化位置情報と符号化属性情報との一方に格納され、他方に格納されてなくてもよい。この場合、符号化位置情報と符号化属性情報との一方に格納されているリーフノード情報(フレームインデックス)が他方の情報の復号時に参照される。また、参照先を示す情報が符号化位置情報又は符号化属性情報に含まれてもよい。
次に、符号化データの送出順及び復号順の例を説明する。図65は、符号化データの構成を示す図である。符号化データはヘッダとペイロードとを含む。
図66~図68は、データの送出順と、データの参照関係を示す図である。同図において、G(1)等は、符号化位置情報を示し、GPS(1)等は、符号化位置情報のパラメータセットを示し、SPSは、シーケンス(複数フレーム)のパラメータセットを示す。また、()内の数字はフレームインデックスの値を示す。なお、三次元データ符号化装置は、データを復号順で送出してもよい。
図66はフレームを結合しない場合の送出順の例を示す図である。図67はフレームを結合する場合であって、PCCフレーム毎にメタデータ(パラメータセット)が付加される場合の例を示す図である。図68はフレームを結合する場合であって、結合する単位でメタデータ(パラメータセット)が付加される場合の例を示す図である。
フレーム結合されたデータのヘッダには、当該フレームのメタデータを得るために、参照先のメタデータの識別子が格納される。図68のように、複数フレーム毎のメタデータをまとめてもよい。フレーム結合された複数のフレームに共通のパラメータは一つにまとめてもよい。フレームに共通でないパラメータは各フレームに対する値を示す。
フレーム毎の情報(フレームで共通でないパラメータ)とは、例えば、フレームデータの生成時刻、符号化時刻、又は復号時刻などを示すタイムスタンプである。また、フレーム毎の情報は、フレームデータを取得したセンサの情報(センサのスピード、加速度、位置情報、センサの向き、その他のセンサ情報など)を含んでもよい。
図69は、図67に示す例において、一部のフレームを復号する例を示す図である。図69に示すように、フレーム結合データ内で、フレーム間に依存関係がなければ、三次元データ復号装置は、各データを独立に復号できる。
点群データが属性情報を有する場合、三次元データ符号化装置は、属性情報をフレーム結合してもよい。属性情報は、位置情報を参照して符号化及び復号される。参照される位置情報は、フレーム結合する前の位置情報であってもよいし、フレーム結合した後の位置情報であってもよい。位置情報の結合フレーム数と属性情報の結合フレーム数とは共通(同じ)であってもよいし、独立していて(異なって)もよい。
図70~図73は、データの送出順と、データの参照関係を示す図である。図70及び図71は、位置情報と属性情報とを共に4フレームで結合する例を示す。図70では、PCCフレーム毎にメタデータ(パラメータセット)が付加される。図71では、結合する単位でメタデータ(パラメータセット)が付加される。同図において、A(1)等は、符号化属性情報を示し、APS(1)等は、符号化属性情報のパラメータセットを示す。また、()内の数字はフレームインデックスの値を示す。
図72は、位置情報を4フレームで結合し、属性情報を結合しない例を示す。図72に示すように位置情報をフレーム結合し、属性情報をフレーム結合しなくてもよい。
図73は、フレーム結合とタイル分割とを組み合わせた例を示す。図73に示すようにタイル分割を行う場合には、各タイル位置情報のヘッダは、GPSインデックス(gps_idx)、及び結合フレーム数(number_of_combine_frame)等の情報を含む。また、各タイル位置情報のヘッダは、タイルを識別するためのタイルインデックス(tile_idx)を含む。
以上のように、本実施の形態に係る三次元データ符号化装置は、図74に示す処理を行う。まず、三次元データ符号化装置は、第1点群データと第2点群データとを結合することで第3点群データを生成する(S5481)。次に、三次元データ符号化装置は、第3点群データを符号化することで符号化データを生成する(S5482)。また、符号化データは、第3点群データに含まれる複数の三次元点の各々が第1点群データと第2点群データとのいずれに属するかを示す識別情報(例えばフレームインデックス)を含む。
これによれば、三次元データ符号化装置は、複数の点群データをまとめて符号化することにより符号化効率を向上できる。
例えば、第1点群データと第2点群データとは、異なる時刻の点群データ(例えばPCCフレーム)である。例えば、第1点群データと第2点群データとは、同一の対象物の異なる時刻の点群データ(例えばPCCフレーム)である。
符号化データは、第3点群データに含まれる複数の三次元点の各々の位置情報と属性情報とを含み、識別情報は、属性情報に含まれる。
例えば、符号化データは、第3点群データに含まれる複数の三次元点の各々の位置をN(Nは2以上の整数)分木を用いて表した位置情報(例えばオキュパンシー符号)を含む。
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
また、本実施の形態に係る三次元データ復号装置は、図75に示す処理を行う。まず、三次元データ復号装置は、符号化データを復号することで、第1点群データと第2点群データとが結合されることで生成された第3点群データと、第3点群データに含まれる複数の三次元点の各々が第1点群データと第2点群データとのいずれに属するかを示す識別情報とを取得する(S5491)。次に、三次元データ復号装置は、識別情報を用いて、第3点群データから第1点群データと第2点群データとを分離する(S5492)。
これによれば、三次元データ復号装置は、複数の点群データをまとめて符号化することにより符号化効率を向上した符号化データを復号できる。
例えば、第1点群データと第2点群データとは、異なる時刻の点群データ(例えばPCCフレーム)である。例えば、第1点群データと第2点群データとは、同一の対象物の異なる時刻の点群データ(例えばPCCフレーム)である。
符号化データは、第3点群データに含まれる複数の三次元点の各々の位置情報と属性情報とを含み、識別情報は、属性情報に含まれる。
例えば、符号化データは、第3点群データに含まれる複数の三次元点の各々の位置をN(Nは2以上の整数)分木を用いて表した位置情報(例えばオキュパンシー符号)を含む。
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
(実施の形態6)
本実施の形態では、異なる空間の点群データを結合して符号化する空間結合について説明する。図76及び図77は、空間的に異なる複数の点群データを結合する例を示す図である。以下では、点群データが静的な点群データである場合の例を説明する。
図76に示す例では、三次元データ符号化装置は、1つの点群データを4つの点群に分割し、分割された4つの空間を1つの空間に結合(マージ)する。
図77に示す例では、三次元データ符号化装置は、大規模地図などの点群データを位置情報に基づきタイルに分割し、各タイルを三次元点が属するオブジェクトに応じてスライスに分割する。三次元データ符号化装置は、さらに、タイル及びスライスに分割されたデータの一部を結合(マージ)する。ここでタイルとは、例えば、元の空間を位置情報に基づき分割したサブ空間である。スライスとは、例えば、三次元点が属するオブジェクトの種別に応じて三次元点を分類した点群である。なお、スライスは、元の空間又はタイルを分割したサブ空間であってもよい。
図77に示す例では、三次元データ符号化装置は、スライスに分割されたデータのうち、オブジェクトが建物及び木に対しては、同一のオブジェクトを持つスライスを結合(マージ)する。なお、三次元データ符号化装置は、1以上の点群データを分割し、分割後の2以上の点群データをマージしてもよい。また、三次元データ符号化装置は、分割されたデータの一部を結合し、その他は結合しなくてもよい。
次に、本実施の形態に係る三次元データ符号化装置の構成を説明する。図78は、三次元データ符号化装置が備える符号化部6100の構成を示すブロック図である。
符号化部6100は、点群データ(ポイントクラウド)を符号化することで符号化データ(符号化ストリーム)を生成する。この符号化部6100は、分割結合部6101と、複数の位置情報符号化部6102と、複数の属性情報符号化部6103と、付加情報符号化部6104と、多重化部6105とを含む。
分割結合部6101は、点群データを分割することで複数の分割データを生成し、生成した複数の分割データを結合することで結合データを生成する。具体的には、分割結合部6101は、点群データの空間を複数のサブ空間に分割することで複数の分割データを生成する。ここでサブ空間とは、タイル及びスライスの一方、又はタイル及びスライスの組み合わせである。より具体的には、点群データは、位置情報、属性情報(色又は反射率等)、及び付加情報を含む。分割結合部6101は、位置情報を複数の分割位置情報に分割し、複数の分割位置情報を結合することで結合位置情報を生成する。また、分割結合部6101は、属性情報を複数の分割属性情報に分割し、複数の分割属性情報を結合することで結合属性情報を生成する。また、分割結合部6101は、分割に関する分割付加情報及び結合に関する結合付加情報を生成する。
複数の位置情報符号化部6102は、結合位置情報を符号化することで符号化位置情報を生成する。例えば、位置情報符号化部6102は、8分木等のN分木構造を用いて分割位置情報を符号化する。具体的には、8分木では、対象空間が8個のノード(サブ空間)に分割され、各ノードに点群が含まれるか否かを示す8ビットの情報(オキュパンシー符号)が生成される。また、点群が含まれるノードは、さらに、8個のノードに分割され、当該8個のノードの各々に点群が含まれるか否かを示す8ビットの情報が生成される。この処理が、予め定められた階層又はノードに含まれる点群の数の閾値以下になるまで繰り返される。
属性情報符号化部6103は、位置情報符号化部6102で生成された構成情報を用いて、結合属性情報を符号化することで符号化属性情報を生成する。例えば、属性情報符号化部6103は、位置情報符号化部6102で生成された8分木構造に基づき、処理対象の対象点(対象ノード)の符号化において参照する参照点(参照ノード)を決定する。例えば、属性情報符号化部6103は、周辺ノード又は隣接ノードのうち、8分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。
また、位置情報又は属性情報の符号化処理は、量子化処理、予測処理、及び算術符号化処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、符号化のパラメータの決定に参照ノードの状態(例えば、参照ノードに点群が含まれる否かを示す占有情報)を用いること、である。例えば、符号化のパラメータとは、量子化処理における量子化パラメータ、又は算術符号化におけるコンテキスト等である。
付加情報符号化部6104は、分割付加情報及び結合付加情報を符号化することで符号化付加情報を生成する。
多重化部6105は、符号化位置情報、符号化属性情報及び符号化付加情報を多重化することで符号化データ(符号化ストリーム)を生成し、生成した符号化データを送出する。また、符号化付加情報は復号時に使用される。
図79は、分割結合部6101のブロック図である。分割結合部6101は、分割部6111と、結合部6112とを含む。
分割部6111は、位置情報(Position(Geometry))の各々をタイルに分割することで複数の分割位置情報を生成する。また、分割部6111は、属性情報(Attribute)の各々をタイルに分割することで複数の分割属性情報を生成する。また、分割部6111は、分割に係る情報、及び分割において生成された情報を含む分割付加情報を出力する。なお、タイルの代わりにスライスが用いられてもよいし、タイルとスライスとの組み合わせが用いられてもよい。
結合部6112は、分割位置情報を結合すること結合位置情報を生成する。また、結合部6112は、結合位置情報に含まれる各点にタイルIDを付加する。タイルIDは、対応する点が属するタイルを示す。また、結合部6112は、分割属性情報を結合すること結合属性情報を生成する。
図80は、位置情報符号化部6102及び属性情報符号化部6103のブロック図である。位置情報符号化部6102は、タイルID符号化部6121と、エントロピー符号化部6122とを含む。
タイルID符号化部6121は、リーフノードにおける重複点が、どのタイルに属するかを示す情報である空間インデックスを生成し、生成した空間インデックスを符号化する。ここでは、空間インデックスがタイルIDである場合の例を示す。エントロピー符号化部6122は、結合位置情報をエントロピー符号化することで符号化位置情報を生成する。
属性情報符号化部6103は、タイルID符号化部6123と、エントロピー符号化部6124とを含む。
タイルID符号化部6123は、空間インデックスを生成し、生成した空間インデックスを符号化する。ここでは、空間インデックスがタイルIDである場合の例を示す。エントロピー符号化部6124は、フレームインデックスが付加された分割属性情報をエントロピー符号化することで符号化属性情報を生成する。
なお、空間インデックスは位置情報として符号化されてもよいし、属性情報として符号化されてもよい。
このように、三次元データ符号化装置は、点群データを位置情報及び属性情報毎に、タイル又はスライスなどに分割し、その後、分割したデータを結合する。三次元データ符号化装置は、結合したデータをそれぞれ算術符号化する。また、三次元データ符号化装置は、データ分割及びデータ結合時に生じた付加情報(メタデータ)(例えば、付加データ及び属性情報等)を算術符号化する。
次に、空間分割と空間結合の動作について説明する。図81は、三次元データ符号化装置による三次元データ符号化処理のフローチャートである。まず、三次元データ符号化装置は、分割方法及び結合方法を決定する(S6101)。例えば、分割方法は、スライス分割を行うか否か、タイル分割を行うか否かを含む。また、分割方法は、スライス分割又はタイル分割を行う場合の分割数、及び、分割の種別等を含んでもよい。また、結合方法は、結合を行うか否かを含む。また、結合を行う場合の結合数、及び、結合の種別等を含んでもよい。また、分割方法及び結合方法は、外部から指示されてもよいし、三次元点の情報(例えば、三次元の数又は密度等)に基づき決定されてもよい。
次に、三次元データ符号化装置は、点群データを読み込む(S6102)。次に、三次元データ符号化装置は、各点がどのタイルに属するかを判定する(S6103)。つまり、タイル分割(又は/及びスライス分割)が行われる。例えば、三次元データ符号化装置は、分割領域の情報に基づき、点群データをタイル又はスライスに分割する。図82は、分割処理及び結合処理を模式的に示す図である。分割領域の情報とは、例えば図82におけるA、B、D、C、E、Fで示す空間領域である。例えば、点群を分割する際の分割領域の情報は、分割する空間の境界を示す情報であってもよいし、空間の基準位置を示す情報及び基準位置に対するバウンディングボックスの範囲を示す情報であってもよい。
また、上記の情報は、既知であってもよいし、当該情報を特定又は導出できる他の情報を用いて上記の情報が特定又は導出されてもよい。例えば、点群データを地図のGPS座標に基づきタイルに分割する場合、それぞれのタイルの基準位置及びサイズが予め定められていてもよい。または、タイル識別子(タイルID)に対応付けられた基準位置及びサイズを示すテーブルが別途設けられ、三次元データ符号化装置は、タイルIDに基づき、タイルの基準位置及びサイズ等を判定してもよい。以降、タイルIDを用いる前提で説明を行う。
次に、三次元データ符号化装置は、タイル毎に位置情報をシフトする(S6104)。また、三次元データ符号化装置は、位置情報にタイルIDを付与する(S6105)。これにより、データ結合が行われる。つまり、三次元データ符号化装置は、分割されたタイル又はスライスを結合する。具体的には、タイル毎に、点群の位置情報を空間結合の三次元の基準位置へシフトする。図82に示す例では、三次元データ符号化装置は、タイルEの領域がタイルAの領域に重なるように、タイルEに属する点をシフトする。例えば、三次元データ符号化装置は、タイルEに属する点をタイルEの基準位置とタイルAの基準位置との差分が0となるようにシフトする。同様に、三次元データ符号化装置は、F、B、Cに属する点をそれぞれ、タイルAの位置までシフトする。なお、図82では、二次元シフトが用いられる例を示しているが三次元シフトが用いられてもよい。
また、シフト後のデータ(結合後のデータ)は、シフト後の位置情報とタイルIDとの組を含む。結合後のデータには、同一の位置情報と異なるタイルIDとを有する複数の点が存在することがある。
また、例えば、シフト量はタイルID毎に定められる。三次元データ符号化装置は、タイルIDに基づきシフト量を判定できる。
次に、三次元データ符号化装置は、位置情報を符号化する(S6106)。このとき、三次元データ符号化装置は、結合後の位置情報と、タイルIDとを一括で符号化する。
また、位置情報に対して色又は反射率などの属性情報がある場合は、三次元データ符号化装置は、属性情報を変換(S6107)及び符号化(S6108)する。なお、三次元データ符号化装置は、属性情報の変換及び属性情報の符号化に、結合後の位置情報を用いてもよいし、結合前の位置情報を用いてもよい。また、三次元データ符号化装置は、結合後と結合前の位置情報とのいずれを用いたかを示す情報を付加情報(メタデータ)に格納してもよい。
また、属性情報の変換では、例えば、三次元データ符号化装置は、位置情報の符号化後に、量子化等によって三次元点の位置が変化した場合に、変化後の三次元点に元の三次元点の属性情報を再割当てする。
図83は、位置情報の符号化処理(S6106)のフローチャートである。三次元データ符号化装置は、結合後の位置情報及びタイルIDを符号化する。
まず、三次元データ符号化装置は、複数のタイルで共通の共通情報を生成する(S6111)。この共通情報は、タイルの分割情報、タイルの結合情報、及びオキュパンシー符号等を含む。具体的には、三次元データ符号化装置は、複数のタイルに属する点の位置情報をツリー構造に変換し、オキュパンシー符号を生成する。より具体的には、三次元データ符号化装置は、点ごとに、点がツリー構造におけるどのリーフノードに属するかを判定する。また、三次元データ符号化装置は、処理対象の点がどのノードに属するかを上位のノードから順番に判定し、ノード毎の判定結果をオキュパンシー符号として符号化する。オキュパンシー符号は複数のタイルで共通である。
次に、三次元データ符号化装置は、タイル毎に個別の個別情報を生成する(S6112)。この個別情報は、ノードに含まれる重複点の数を示す情報、及び空間インデックス(タイルID)等を含む。
具体的には、ノードには、異なるタイルIDが付与された、異なるタイルに属する点が混在する場合がある。また、最下層のノード(リーフノード)には、複数のタイルに属する点が混在(重複)することがある。三次元データ符号化装置は、リーフノードにおける重複点が、どのタイルに属するかを示す情報(空間インデックス)を生成し、当該情報を符号化する。
ここでは、タイル分割における分割領域の情報、分割数、及び分割データの結合方法等、タイル全体に係る情報を共通情報と呼ぶ。これに対し、リーフノードにおける重複点など、タイル毎の情報を個別情報と呼ぶ。
このように、三次元データ符号化装置は、位置シフトした複数タイルを一括で処理し、共通のオキュパンシー符号を生成するとともに、空間インデックスを生成する。
次に、三次元データ符号化装置は、共通情報と個別情報とを結合し、符号化データを生成する(S6113)。例えば、三次元データ符号化装置は、共通情報及び個別情報を、算術符号化する。次に、三次元データ符号化装置は、空間結合に係る付加情報(メタデータ)を生成し、当該付加情報を符号化する(S6114)。
なお、三次元データ符号化装置は、空間インデックスを、オキュパンシー符号とともに符号化してもよいし、属性情報として符号化してもよいし、両方に符号化してもよい。
また、8分木の分解能が低い場合は、同一のタイルIDが付与された同一タイル内の点が一つのリーフノードに含まれる場合もある。その場合、同一のタイルIDが付与された同一タイルの複数の点が重複するとともに、異なるタイルIDが付与された異なるタイルの複数の点が重複する場合もある。
なお、三次元データ符号化装置は、点群データを含まないタイルであるヌルタイルに対しても個別のタイルIDを付加してもよいし、ヌルタイルに対しては個別のタイルIDを付加せず、ヌルタイル以外のタイルに個別のタイルのタイルIDを付加してもよい。
以下、タイル結合の前処理について説明する。図84は、この前処理の例を示す図である。つまり、タイル結合の方法は、上述した複数のタイルが重複するように位置シフトを行う方法に限らない。例えば、三次元データ符号化装置は、図84に示すようにタイルのデータの位置を変換する前処理を行った後に結合してもよい。なお、以下では主に、前処理が行われた後に、上述したシフト(例えばタイルの原点を合わせるシフト)が行われる場合を例に説明するが、前処理に上述したシフトが含まれてもよい。
変換方法は、例えば、巡回シフト(同図のB)、シフト(同図のC)、回転(同図のE)、反転(同図のF)などを含む。なお、変換方法は、その他の変換方法を含んでもよい。例えば、変換方法は、その他の幾何学変換を含んでもよい。例えば、変換方法は、拡大又は縮小を含んでもよい。なお、巡回シフトとは、点群データの位置をシフトさせるとともに、元の空間からはみ出たデータを逆方向に移動させる変換である。また、三次元データ符号化装置は、結合時のシフト量をタイル毎に定めてもよい。また、三次元データ符号化装置は、上記の複数の変換方法のいずれかを用いてもよいし、複数を用いてもよい。
例えば、三次元データ符号化装置は、これらの変換方法の種別及び内容(回転量又はシフト量等)、並びに結合時の位置シフト量を示す情報を、タイル毎の情報として算術符号化して伝送する。三次元データ復号装置において、これらの情報が既知又は導出可能である場合、三次元データ符号化装置は、これらの情報を伝送しなくてもよい。
また、三次元データ符号化装置は、結合後の点群データにおいて、重複点が多くなるように元データの変換及び位置シフトを行ってもよい。または、三次元データ符号化装置は、重複点が少なくなるように元データの変換及び位置シフトを行ってもよい。また、三次元データ符号化装置は、センサ情報に基づき変換を行ってもよい。
次に、付加情報(メタデータ)の構成を説明する。図85は、位置情報のパラメータセットであるGPSのシンタックス例を示す図である。GPSは、フレーム番号を示すgps_idx及びシーケンス番号を示すsps_idxの少なくとも一方を含む。
また、GPSは、GPS情報(gps_information)と、タイル情報(tile_information)と、タイル結合フラグ(tile_combine_flag)と、タイル結合情報(tile_combine_information)とを含む。
GPS情報(gps_information)は、PCCフレームにおけるバウンディングボックスの座標及び大きさ、並びに量子化パラメータなどを示す。タイル情報(tile_information)は、タイル分割に係る情報を示す。タイル結合フラグ(tile_combine_flag)は、データ結合するか否かを示すフラグである。タイル結合情報(tile_combine_information)は、データ結合に係る情報を示す。
図86は、タイル結合情報(tile_combine_information)のシンタックス例を示す図である。タイル結合情報(tile_combine_information)は、結合タイプ情報(type_of_combine)と、原点シフトフラグ(shift_equal_origin_flag)と、シフト量(shift_x、shift_y、shift_z)とを含む。
結合タイプ情報(type_of_combine)は、データ結合のタイプを示す。例えば、type_of_combine=Aは分割タイルを変形せずに結合することを示す。
原点シフトフラグ(shift_equal_origin_flag)は、タイルの原点を対象空間の原点にシフトする原点シフトを行うか否かを示すフラグである。原点シフトの場合は、シフト量は、タイル情報(tile_information)に含まれる原点(origin)と同じ値であるため省略できる。
原点シフトを行わない場合等、結合のためのシフト量が既知でない場合には、タイル結合情報は、タイル毎のシフト量(shift_x、shift_y、shift_z)を含む。また、タイルがヌルタイルである場合にはシフト量は記載されない。
また、タイル結合情報は、その他の結合方法の情報を示すinformation()を含む。例えば、この情報は、結合前に前処理を行う場合における当該前処理の情報である。例えば、この情報は、使用される前処理の種別(巡回シフト、シフト、回転、反転等、拡大、縮小等)と、その内容(シフト量、回転量等、拡大率、縮小率等)とを含む。
図87は、タイル情報(tile_information)のシンタックス例を示す図である。タイル情報は、分割タイプ情報(type_of_divide)と、タイル数情報(number_of_tiles)と、ヌルタイルフラグ(tile_null_flag)と、原点情報(origin_x、origin_y、origin_z)と、ノードサイズ(node_size)とを含む。
分割タイプ情報(type_of_divide)は、タイル分割のタイプを示す。タイル数情報(number_of_tiles)は、分割数(タイルの数)を示す。ヌルタイルフラグ(tile_null_flag)は、ヌルタイルの情報であって、タイルがヌルタイルであるか否かを示す。原点情報(origin_x、origin_y、origin_z)は、タイルの位置(座標)を示す情報であって、例えば、タイルの原点の座標を示す。ノードサイズ(node_size)は、タイルの大きさを示す。
また、タイル情報は、量子化パラメータを示す情報などを含んでもよい。また、タイルの座標及び大きさの情報は、三次元データ復号装置において既知である場合、又は三次元データ復号装置で導出可能な場合は、省略されてもよい。
なお、タイル情報(tile_information)とタイル結合情報(tile_combine_information)とはマージされてもよい。また、分割タイプ情報(type_of_devide)と結合タイプ情報(type_of_combine)とはマージされてもよい。
次に、符号化位置情報の構成を説明する。図88は、符号化位置情報の構成を示す図である。符号化位置情報は、ヘッダとペイロードとを含む。
図89は、符号化位置情報のヘッダ(Geometry_header)のシンタックス例を示す図である。符号化位置情報のヘッダは、GPSインデックス(gps_idx)と、オフセット情報(offset)と、位置情報(geometry_information)と、結合フラグ(combine_flag)と、結合タイル数(number_of_combine_tile)と、結合インデックス(combine_index)とを含む。
GPSインデックス(gps_idx)は、符号化属性情報に対応するパラメータセット(GPS)のIDを示す。なお、タイル毎にパラメータセットが存在する場合は、複数のIDがヘッダに示されてもよい。オフセット情報(offset)は、データを取得するためのオフセット位置(アドレス)を示す。位置情報(geometry_information)は、PCCフレームのバウンディングボックスの情報(例えばタイルの座標及び大きさ)などを示す。
結合フラグ(combine_flag)は、符号化データが空間結合されているか否かを示すフラグである。結合タイル数(number_of_combine_tile)は、結合されるタイル数を示す。なお、これらの情報は、SPS又はGPSに記載されてもよい。結合インデックス(combine_index)は、データ結合した際の結合データのインデックスを示す。フレーム内の結合データの数が1である場合は、結合インデックスは省略されてもよい。
図90は、符号化位置情報のペイロード(Geometry_data)のシンタックス例を示す図である。符号化位置情報のペイロードは、オキュパンシー符号(occupancy_Code(depth、i))と、結合情報(combine_information)とを含む。
オキュパンシー符号(occupancy_Code(depth、i))は、1以上のフレーム結合されたデータであり、共通情報である。
結合情報(combine_information)は、リーフノードの情報である。リーフノードの情報は、タイル数のループとして記載されてもよい。つまり、タイル毎にリーフノードの情報が示されてもよい。
また、リーフノードに含まれる複数の点の空間インデックスを示す方法としては、例えば、ノードに含まれる重複点の数と、点ごとの空間インデックスの値とをそれぞれ示す方法(方法1)と、ビットマップを用いる方法(方法2)などがある。
図91は、方法1における結合情報(combine_information)のシンタックス例を示す図である。結合情報は、重複点の数を示す重複点数(NumberOfPoints)と、タイルID(TileID(i))とを含む。
なお、量子化の分解能が低い場合は、同一フレームに重複点が存在する場合がある。この場合には、重複点数(NumberOfPoints)を共有化し、同一フレームに含まれる重複点の数と複数フレームに含まれる重複点の数の合計とが記載されてもよい。
図92は、方法2における結合情報(combine_information)のシンタックス例を示す図である。結合情報は、ビットマップ情報(bitmap)を含む。図93は、ビットマップ情報の例を示す図である。この例では、リーフノードがタイル番号1と3と5の三次元点を含むことがビットマップで示される。
なお、三次元データ符号化装置は、不可逆圧縮を行う場合は、重複点を削除し、情報量を削減してもよい。また、三次元データ符号化装置は、データ結合前に重複点を削除してもよいし、データ結合後に重複点を削除してもよい。
次に、空間インデックスのその他の送出方法について説明する。三次元データ符号化装置は、空間インデックスをランク(RANK)情報に変換して送出してもよい。ランク変換とは、ビットマップをランク(Ranking)及びビット数(RANKbit)に変換し、変換したランク及びビット数を送出する方法である。
図94は、タイルID符号化部6121のブロック図である。このタイルID符号化部6121は、ビットマップ生成部6131と、ビットマップ反転部6132と、ルックアップテーブル参照部6133と、ビット数取得部6134とを含む。
ビットマップ生成部6131は、結合タイル数、重複点数、及び、三次元点毎のタイルIDに基づき、ビットマップを生成する。例えば、ビットマップ生成部6131は、複数の三次元データが結合された結合三次元データにおける、リーフノード(単位空間)に含まれる三次元点が当該複数の三次元データのいずれに属するかを示すビットマップを生成する。ビットマップは、0と1とで表されるデジタルデータである。ビットマップと、変換符号及び単位空間に含まれる三次元点の数とは、1対1対応である。
ビットマップ反転部6132は、重複点数に基づき、ビットマップ生成部6131が生成したビットマップを反転させる。
具体的には、例えば、ビットマップ反転部6132は、重複点数が、結合タイル数の半数を超えているか否かを判定し、半数を超えていればビットマップのそれぞれのビットを反転(言い換えると、0と1とを入れ替え)させる。また、例えば、ビットマップ反転部6132は、重複点数が、結合タイル数の半数を超えていなければビットマップは反転させない。
このように、ビットマップ反転部6132は、重複点数が、所定の閾値を超えているか否かを判定し、当該所定の閾値を超えていればビットマップのそれぞれのビットを反転させる。また、例えば、ビットマップ反転部6132は、重複点数が、所定の閾値を超えていなければビットマップは反転させない。例えば、所定の閾値は、結合タイル数の半数である。
ルックアップテーブル参照部6133は、ビットマップ反転部6132が反転させた後のビットマップ(反転ビットマップ)、又は、重複点数が結合タイル数の半数を超えていないビットマップを所定のルックアップテーブルを用いてランク(ランキングともいう)に変換する。つまり、ルックアップテーブル参照部6133は、例えば、ルックアップテーブルを用いて、ビットマップ生成部6131が生成したビットマップ、又は、ビットマップ反転部6132が生成した反転ビットマップをランクに変換(言い換えると、ランクを生成)する。ルックアップテーブル参照部6133は、例えば、ルックアップテーブルを記憶しているメモリを有する。
ランクとは、ビットマップを、ビットマップに含まれる1の数毎(つまり、Nで示す数毎)に分類し、分類したグループ内でのタイルID又は順序を示す数値である。例えば、Nは、重複点数でもある。
ビット数取得部6134は、結合タイル数及び重複点数から、ランクのビット数を取得する。なお、ランクの最大数から決定されるランクの所要ビット数(ランクを2進数で表現するために必要とされるビット数)は、結合タイル数及び重複点数から一意に決まる数である。三次元データ符号化装置は、ビット数取得部6134でランクのビット数を示す情報(ランク情報)を生成し、図示しないビット数取得部6134の後段にて算出符号化する。
なお、ビット数取得部6134は、ランクの値が0の場合には、ランク情報を送らないとしてもよい。また、ビット数取得部6134では、ランクが0ではない場合、ランク-1の値を符号化するとしてもよい。或いは、ビット数取得部6134は、ランクが0ではない場合、ランク-1の値をランク情報として出力してもよい。
図95は、タイルID取得部6162のブロック図である。このタイルID取得部6162は、ビット数取得部6141と、ランク取得部6142と、ルックアップテーブル参照部6143と、ビットマップ反転部6144とを備える。
タイルID取得部6140は、三次元データ符号化装置から取得した符号化データに含まれる付加情報(メタデータ)より結合タイル数を復号し、さらに、当該符号化データから、リーフノード毎の重複点数を抽出する。
ビット数取得部6141は、結合タイル数及び重複点数からランクのビット数を取得する。
なお、ランクの最大数及びランクのビット数(所要ビット数)は、結合タイル数及び重複点数から一意に決まる数である。また、三次元データ復号装置がランクを取得する処理は、上記した三次元データ符号化装置における処理を同じである。
ランク取得部6142は、復号した符号化データから、上記で取得したビット数分のランクを取得する。
ルックアップテーブル参照部6143は、リーフノードの重複点数及びランク取得部6142が取得したランクから所定のルックアップテーブルを用いてビットマップを取得する。ルックアップテーブル参照部6143は、例えば、ルックアップテーブルを記憶するメモリを備える。
なお、ルックアップテーブル参照部6143が記憶するルックアップテーブルは、三次元データ符号化装置で用いたルックアップテーブルに対応するテーブルである。すなわち、ルックアップテーブル参照部6143がランクに基づいて、1の数が半数を超えない反転されたビットマップを出力するためのテーブルである。例えば、三次元データ復号装置が備えるルックアップテーブル参照部6143が用いるルックアップテーブルは、三次元データ符号化装置が備えるルックアップテーブル参照部6133が備えるルックアップテーブルと同じである。
次に、ビットマップ反転部6144は、ルックアップテーブル参照部6143が出力したビットマップにおいて、重複点数に基づき、当該ビットマップを反転させる。
具体的には、ビットマップ反転部6144は、重複点数が結合タイル数の半数を超えているか否かを判定し、半数を超えていればビットマップのそれぞれのビットを反転させる。一方、ビットマップ反転部6144は、半数を超えていなければビットマップは反転させない。すなわち、ビットマップに含まれる1の数が半数を超えない反転されたビットマップは、1の数が半数を超えるビットマップに変換される。
これにより、三次元データ復号装置は、ビットマップから重複する点のタイルIDを取得できる。
また、タイルID取得部6140は、例えば、取得した符号化データに含まれる結合データ(例えば、結合三次元データ)とビットマップとから、三次元点とタイルIDとを紐づけた三次元データを出力する。
また、ここでは、重複点数が結合タイル数の半数を超えている場合にビットマップを反転させる手法が用いられる例を示したが、ビットマップを反転させない手法が用いられてもよい。
次に、符号化属性情報の構成を説明する。図96は符号化属性情報の構成を示す図である。符号化属性情報は、ヘッダとペイロードとを含む。
図97は、符号化属性情報のヘッダ(Attribute_header)のシンタックス例を示す図である。符号化属性情報のヘッダ(Attribute_header)は、APSインデックス(aps_idx)と、オフセット情報(offset)と、その他の情報(other_attribute_information)と、結合タイル数(number_of_combine_tile)と、参照情報(refer_different_tile)とを含む。
APSインデックス(aps_idx)は、符号化属性情報に対応するパラメータセット(APS)のIDを示す。なお、タイル毎にパラメータセットが存在する場合は、複数のIDがヘッダに示されてもよい。オフセット情報(offset)は、結合データを取得するためのオフセット位置(アドレスと)を示す。その他の情報(other_attribute_information)は、その他の属性データを示し、例えば、量子化パラメータの差分値(QPdelta)などを示す。結合タイル数(number_of_combine_tile)は、結合されるタイルの数を示す。なお、これらの情報は、SPS又はAPSに記載されてもよい。
参照情報(refer_different_tile)は、符号化又は復号対象の三次元点である対象点の属性情報を、同一タイル、又は、同一タイル及び同一タイル以外に属する三次元点の属性情報を用いて符号化又は復号するかを示すフラグである。例えば、下記のような値の割り当てが考えられる。refer_different_tile=0は、対象点と同一タイル内の三次元点の属性情報を用いて対象点の属性情報を符号化又は復号することを示す。refer_different_tile=1は、対象点と同一タイル及び同一タイル以外の三次元点の属性情報を用いて対象点の属性情報を符号化又は復号することを示す。
図98は、符号化属性情報のペイロード(Attribute_data)のシンタックス例を示す図である。符号化属性情報のペイロードは、結合情報(combine_information)を含む。例えば、この結合情報は、図90に示す結合情報(combine_information)と同様である。
次に、符号化データの送出順及び復号順の例を説明する。図99は、符号化データの構成を示す図である。符号化データはヘッダとペイロードとを含む。
図100~図102は、データの送出順と、データの参照関係を示す図である。同図において、G(1)等は、符号化位置情報を示し、GPS(1)等は、符号化位置情報のパラメータセットを示し、SPSは、シーケンス(複数フレーム)のパラメータセットを示す。また、()内の数字はタイルIDの値を示す。なお、三次元データ符号化装置は、データを復号順で送出してもよい。
図100は空間結合を行わない場合の送出順の例を示す図である。図101は、空間結合を行う場合であって、空間(タイル)毎にメタデータ(パラメータセット)が付加される場合の例を示す図である。図102は、空間結合を行う場合であって、結合する単位でメタデータ(パラメータセット)が付加される場合の例を示す図である。
空間結合されたデータのヘッダには、当該タイルのメタデータを得るための、参照先のメタデータの識別子が格納される。図102のように、複数タイルのメタデータをまとめてもよい。タイル結合された複数のタイルに共通のパラメータは一つにまとめてもよい。複数タイルに共通でないパラメータは各タイルに対する値を示してもよい。
タイル毎の情報(複数タイルに共通でないパラメータ)とは、例えば、タイルの位置情報、他のタイルとの相対位置、符号化時刻、タイルの形状及び大きさ、タイルが重複しているかを示す情報、タイル毎の量子化パラメータ、並びに、前処理の情報等を含む。前処理の情報は、前処理の種別及び内容を示し、例えば、タイル分割後に回転を行った場合、回転が行われたことを示す情報と回転量を示す情報等を含む。
図103は、図101に示す例において、一部のフレームを復号する例を示す図である。図103に示すように、空間結合データ内で、タイル間に依存関係がなければ、三次元データ復号装置は、一部のデータを抽出して復号できる。つまり、三次元データ復号装置は、各データを独立に復号できる。
なお、タイル間に依存関係がある場合は、三次元データ符号化装置は、参照先のデータを先に送出する。三次元データ復号装置は、参照先のデータを先に復号する。なお、三次元データ符号化装置は送出順序を考慮せず、三次元データ復号装置がデータを並び替えてもよい。
点群データが属性情報を有する場合、三次元データ符号化装置は、属性情報を空間結合してもよい。属性情報は、位置情報を参照して符号化又は復号される。参照される位置情報は、空間結合する前の位置情報であってもよいし、空間結合した後の位置情報であってもよい。
図104~図106は、データの送出順と、データの参照関係を示す図である。同図において、A(1)等は、符号化属性情報を示し、APS(1)等は、符号化属性情報のパラメータセットを示し、SPSは、シーケンス(複数フレーム)のパラメータセットを示す。また、()内の数字はタイルIDの値を示す。
図104は、refer_different_tile=1の場合のデータの送出順と、データの参照関係を示す図である。この例では、A(1-4)は互いを参照してもよい。また、G(1-4)の情報を用いてA(1-4)が符号化又は復号される。
また、三次元データ復号装置は、G(1-4)と共に復号されたタイルID1-4を用いてG(1-4)とA(1-4)をタイル1-4に分割する。
図105は、refer_different_tile=1の場合のデータの送出順と、データの参照関係を示す図である。この例では、A(1-4)は互いを参照しない。例えばA(1)はA(1)を参照するが、A(2-4)を参照しない。また、G(1-4)の情報を用いてA(1-4)が符号化又は復号される。
三次元データ復号装置は、G(1-4)と共に復号されたタイルID1-4を用いてG(1-4)とA(1-4)をタイル1-4に分割する。
図106は、refer_different_tile=0の場合のデータの送出順と、データの参照関係の別の例を示す図である。この例では、A(1-4)のそれぞれに対してAPSがヘッダに付加される。また、位置情報の結合タイル数と属性情報の結合タイル数を同じであってもよいし、独立していてもよい(異なってもよい)。
例えば、図106に示すように位置情報はタイル結合され、属性情報はタイル結合されなくてもよい。
以下、本実施の形態に係る三次元データ復号装置の構成を説明する。図107は、本実施の形態に係る三次元データ復号装置が備える復号部6150の構成を示すブロック図である。復号部6150は、点群データが符号化されることで生成された符号化データ(符号化ストリーム)を復号することで点群データを復元する。この復号部6150は、逆多重化部6151と、位置情報復号部6152と、属性情報復号部6153と、付加情報復号部6154と、分割結合部6155とを含む。
逆多重化部6151は、符号化データ(符号化ストリーム)を逆多重化することで符号化位置情報、符号化属性情報及び符号化付加情報を生成する。
位置情報復号部6152は、符号化位置情報を復号することでタイルIDが付加された結合位置情報を生成する。属性情報復号部6153は、符号化属性情報を復号することで結合属性情報を生成する。付加情報復号部6154は、符号化付加情報を復号することで結合付加情報及び分割付加情報を生成する。
分割結合部6155は、結合付加情報及び分割付加情報を用いて結合位置情報を分割及び結合することで位置情報を生成する。分割結合部6155は、結合付加情報及び分割付加情報を用いて結合属性情報を分割及び結合することで属性情報を生成する。
図108は、位置情報復号部6152及び属性情報復号部6153のブロック図である。位置情報復号部6152は、エントロピー復号部6161と、タイルID取得部6162とを含む。エントロピー復号部6161は、符号化位置情報をエントロピー復号することで結合位置情報を生成する。タイルID取得部6162は、タイルIDが位置情報に付加されている場合には、結合位置情報からタイルIDを取得する。
属性情報復号部6153は、エントロピー復号部6163と、タイルID取得部6164とを含む。エントロピー復号部6163は、符号化属性情報をエントロピー復号することで結合属性情報を生成する。タイルID取得部6164は、タイルIDが属性情報に付加されている場合には結合属性情報からタイルIDを取得する。
図109は、分割結合部6155の構成を示す図である。分割結合部6155は、分割部6171と、結合部6172とを含む。分割部6171は、結合位置情報をタイルID及び結合付加情報を用いて分割することで複数の分割位置情報(タイル位置情報)を生成する。分割部6171は、結合属性情報をタイルID及び結合付加情報を用いて分割することで複数の分割属性情報(タイル属性情報)を生成する。
結合部6172は、複数の分割位置情報を分割付加情報を用いて結合することで位置情報を生成する。結合部6172は、複数の分割属性情報を分割付加情報を用いて結合することで属性情報を生成する。
次に、三次元データ復号処理について説明する。図110は、本実施の形態に係る三次元データ復号処理のフローチャートである。
まず、三次元データ復号装置は、分割方法に係るメタデータである分割付加情報と、結合方法に係るメタデータである結合付加情報とをビットストリームから復号することで取得する(S6121)。次に、三次元データ復号装置は、ビットストリームからい位置情報を復号することで、復号データ(復号された位置情報)とタイルIDとを取得する(S6122)。
次に、三次元データ復号装置は、APSに含まれるrefer_different_tileが1であるか否かを判定する(S6123)。refer_different_tileが1である場合(S6123でYes)、三次元データ復号装置は、復号後の位置情報と、処理対象の三次元点である対象点が含まれるタイルと同一タイル及び同一タイル以外のタイルに含まれる三次元点の属性情報とに基づき対象点の属性情報を復号する(S6124)。一方、refer_different_tileが1でない(0である)場合(S6123でNo)、三次元データ復号装置は、復号後の位置情報と、対象点が含まれるタイルと同一タイル内の三次元点の属性情報とに基づき対象点の属性情報を復号する(S6125)。つまり、三次元データ復号装置は、対象点が含まれるタイルと異なるタイルに含まれる三次元点の属性情報を参照しない。
以上の復号処理により、三次元データ復号装置は、タイルID、位置情報及び属性情報を復号する。
また、タイルIDが位置情報として符号化されている場合は、三次元データ復号装置は、位置情報の復号の際にタイルIDを取得する。また、属性情報がある場合は、三次元データ復号装置は、復号済みの属性情報に基づき対象点の属性情報を復号する。一方、属性情報がない場合は、三次元データ復号装置は、属性情報を復号しない。なお、三次元データ復号装置は、属性情報がある場合であっても復号を必要としない場合は属性情報を復号しなくてもよい。
また、APSに含まれるrefer_different_tile=1の場合は、三次元データ復号装置は、タイル結合された属性情報に基づき属性情報を復号する。すなわち、三次元データ復号装置は、タイルIDに関わらず属性情報を用いて復号する。
一方、APSに含まれるrefer_different_tile=0の場合は、三次元データ復号装置は、タイル結合されない属性情報に基づき属性情報を復号する。すなわち、三次元データ復号装置は、タイルIDを用いて三次元点をフィルタリングし、対象点と同じタイルIDの三次元点の属性情報を用いて対象点を復号する。つまり、三次元データ復号装置は、対象点と異なるタイルIDの三次元点の属性情報を用いない。
次に、三次元データ復号装置は、結合データを分離する。具体的には、三次元データ復号装置は、タイルIDに基づき位置情報をタイル毎に分割する(S6126)。
次に、三次元データ復号装置は、タイル又はスライスを結合する。具体的には、三次元データ復号装置は、タイル毎に位置情報を逆シフトし(S6127)、処理後の位置情報を結合する(S6128)。
以下、空間インデックスを属性情報として送出する手法について説明する。複数の点群データを空間結合した際に各三次元点に付加したタイルID(空間インデックス)を各三次元点の位置情報としてではなく、新たな属性情報として、本開示で説明した予測符号化方法を用いて符号化してもよい。以下、この方法の具体例を示す。
図111及び図112は、この場合のデータの送出順とデータの参照関係とを示す図である。また、図111は、refer_different_tile=1の場合の例を示し、図112は、refer_different_tile=0の場合の例を示す。
例えば、点群データが位置情報と第1の属性情報(例えば色)を持つ場合において、空間結合を適用する場合、三次元データ符号化装置は、図111に示すように、空間インデックス(例えばタイルID)を第2の属性情報(図111におけるA2)として符号化し、SPSには第2の属性情報が空間インデックスを含むことを示す識別情報を格納する。
なお、空間インデックスを属性情報として送出する際には、必ず可逆の符号化方法を用いると定めてもよい。例えば、可逆の符号化方法とは量子化を行わない符号化方法である。また、空間インデックスが属性情報である場合は、可逆の符号化となるように量子化パラメータに制約を与えてもよい。例えば、属性情報が色又は反射率などである場合には、可逆の符号化となるパラメータと不可逆の符号化となるパラメータとが適用範囲に含まれる。属性情報がフレームインデックス又は空間インデックスである場合には可逆の符号化となるパラメータが適用範囲に含まれ、不可逆の符号化となるパラメータは適用範囲に含まれなくてもよい。
なお、三次元データ符号化装置は、空間インデックス以外にも、空間(タイル)毎の情報を第2の属性情報として送出してもよい。例えば、タイル毎の情報は、タイルの位置、対象タイルと他のタイルとの相対位置、符号化時間、タイルの形状、タイルの大きさ、タイルが重複しているかを示す情報、タイル毎の量子化パラメータ、及び、前処理の情報の少なくとも一つを示してもよい。前処理の情報は、前処理の種別及び内容を示し、例えば、タイル分割後に回転を行った場合、回転が行われたことを示す情報と回転量を示す情報等を含む。また、三次元データ符号化装置は、複数タイルの情報をまとめて格納してもよい。
図111に示すrefer_different_tile=1の例では、第2の属性情報の付加情報(メタデータ)は、当該属性情報のタイプが空間インデックス又はタイルIDであることを示す。なお、当該付加情報は、空間インデックスのタイプを示してもよい。例えば、この付加情報はSPSに含まれる。
また、A(1-4)は互いを参照してもよい。例えば、第1の属性情報は、色情報を示す。また、G(1-4)の情報を用いてA(1-4)が符号化又は復号される。三次元データ復号装置は、G(1-4)と共に復号されたタイルID1-4を用いてG(1-4)とA(1-4)とをタイル1-4に分割する。
第2の属性情報は、タイル1~4に係るタイルIDを示す。タイルIDに属する点がない場合、すなわちヌルタイルである場合にはタイルIDは示されなくてもよい。
図112に示すrefer_different_tile=0の例では、三次元データ復号装置は、空間インデックスに基づき参照する属性情報を判定する。そのため、三次元データ符号化装置は、空間インデックスを色又は反射率などの属性情報の前に送出する。図112ではAPS2及びA2はAPS1及びA1より先に送出される。三次元データ復号装置はAPS2及びA2をAPS1及びA1よりも先に復号する。
なお、refer_different_tileの値に応じて送出順序が変更されてもよい。また、三次元データ復号装置は、データが順序どおりでない場合にはデータを並び替えてもよい。
例えば、A(1-4)は互いを参照しない。例えば、A(1)はA(1)を参照する。また、G(1-4)の情報を用いてA(1-4)が符号化又は復号される。
以下、点群データが色の属性情報と空間インデックスの属性情報を持つ場合の例を説明する。図113は、この場合のデータ構成を示す図である。
三次元データ符号化装置は、空間結合を行う場合には、属性情報を生成し、当該属性情報を送出する。なお、空間結合数が可変である場合において、空間結合数が1である場合には、点群データは空間インデックスを持たなくてもよい。三次元データ復号装置は、空間結合数が1である場合には、空間インデックスに対応する属性情報が存在しないと判断してもよい。
三次元データ符号化装置は、GPS、APS1、APS2のパラメータセットのIDを同一の値に設定してもよい。また、三次元データ符号化装置は、このIDの値をフレーム毎に設定し、複数のフレームで連続の値に設定してもよい。空間インデックスを含む属性情報が存在しない場合は、パラメータセットのIDは連続した値でなく、空間インデックスを含む属性情報が存在しないフレームのIDがスキップされてもよい。
結合数が2以上の場合は、位置情報に対応する、空間インデックスの属性情報が存在する。結合数が1の場合は、位置情報に対応する、空間インデックスの属性情報が存在しない。
以下、その他の例について説明する。例えば、上記では、空間分割としてタイル分割を例に説明したが、これに限らず、その他の空間を分割する方法又は点群をクラスタリングする方法に対して上記手法を適用してもよい。
また、上記では、空間インデックスとして、タイルIDを符号化する例を主に説明したが、タイルIDの代わりに、結合の際の空間のシフト量を示す情報などが用いられてもよい。
また、上記では、空間インデックスをビットマップ又はランク情報として、位置情報又は属性情報に格納する例を示した。これらの複数の方法のいずれかの方法が用いられてもよいし、複数の方法を組み合わせた方法が用いられてもよい。例えば、位置情報及び属性情報の両方に空間インデックスが含まれてもよい。また、位置情報及び属性情報に含まれる空間インデックスの形式(例えばビットマップ又はランク情報)は同一であってもよいし、異なってもよい。
また、空間分割の方法、分割数、結合する方法、及び結合数の少なくとも一つは、時間的に変化してもよい。例えば、三次元データ符号化装置は、空間毎に分割数又は結合数を変えてもよいし、適応的に変化させてもよい。また、分割数と結合数とは一致してもよいし、一致しなくてもよい。
また、上記では、分割データを結合し、結合データを送出する例を示したが、以下のような組み合わせが用いられてもよい。図114は、分割と結合の組み合わせの例を示す図である。例えば、図114に示すフレーム3のように、分割データの一部を結合してもよい。その場合は、三次元データ符号化装置は、分割データと、結合データとを送出する。このとき、三次元データ符号化装置は、分割データと結合データとを識別する識別子を生成し、当該識別子を送出する。
また、図114に示すフレーム1のように、三次元データ符号化装置は、分割データを結合した後、再び分割してもよい。この場合、三次元データ符号化装置は、分割に関する情報を生成し、当該情報を送出する。
また、図114に示すように複数の組み合わせが切り替えられてもよい。この場合、フレーム2のように分割及び結合が用いられないフレームが存在してもよい。
図115は、フレーム結合と空間結合とを組み合わせた例を示す図である。同図に示すように、フレーム結合と空間結合とが組み合わされてもよい。
以上のように、本実施の形態に係る三次元データ符号化装置は、図116に示す処理を行う。三次元データ符号化装置は、同一時刻の第1点群データ及び第2点群データのうち、第2点群データに移動を含む変換処理を行い、第1点群データと、変換処理後の第2点群データとを結合することで第3点群データを生成する(S6131)。次に、三次元データ符号化装置は、第3点群データを符号化することでビットストリームを生成する(S6132)。ビットストリームは、第3点群データに含まれる複数の三次元点の各々が第1点群データと第2点群データとのいずれに属するかを示す第1情報(例えばタイルID又は空間インデックス)と、移動の内容を示す第2情報(例えば、原点シフトフラグ(shift_equal_origin_flag)、又はシフト量(shift_x、shift_y、shift_z))とを含む。これによれば、同一時刻の複数の点群データをまとめて符号化することにより符号化効率を向上できる。
例えば、変換処理は、移動に加え、幾何学変換を含み、ビットストリームは、幾何学変換の内容を示す第3情報(例えば、図86に示すinformation()等)を含む。これによれば、幾何学変換を行うことで符号化効率が向上できる。
例えば、幾何学変換は、シフト、回転、及び反転の少なくとも一つを含む。例えば、三次元データ符号化装置は、第3点群データにおいて位置情報が同じ三次元点である重複点の数に基づき、幾何学変換の内容を決定する。
例えば、第2情報は、前記移動の移動量を示す情報(例えば、シフト量(shift_x、shift_y、shift_z))を含む。
例えば、第2情報は、第2点群データの原点を、第1点群データの原点に移動させるか否かを示す情報(例えば、原点シフトフラグ(shift_equal_origin_flag)を含む。
例えば、三次元データ符号化装置は、第4点群データを空間的に分割することで第1点群データ及び第2点群データを生成する。
例えば、ビットストリームは、第3点群データに含まれる複数の三次元点の各々の位置情報と1以上の属性情報とを含み、1以上の属性情報の一つは、第1情報を含む。
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
また、本実施の形態に係る三次元データ復号装置は、図117に示す処理を行う。三次元データ復号装置は、同一時刻の第1点群データ及び第2点群データのうち、第2点群データに移動を含む変換処理を行い、第1点群データと、変換処理後の第2点群データとを結合することで生成された第3点群データが符号化されることで生成されたビットストリームから、第3点群データを復号する(S6141)。また、三次元データ復号装置は、ビットストリームから、第3点群データに含まれる複数の三次元点の各々が第1点群データと第2点群データとのいずれに属するかを示す第1情報(例えばタイルID又は空間インデックス)と、移動の内容を示す第2情報(例えば、原点シフトフラグ(shift_equal_origin_flag)、又はシフト量(shift_x、shift_y、shift_z))とを取得する(S6142)。次に、三次元データ復号装置は、第1情報及び第2情報を用いて、復号した第3点群データから第1点群データ及び第2点群データを復元する(S6143)。例えば、三次元データ復号装置は、第1情報を用いて、第3点群データから、第1点群データと、変換処理後の第2点群データとを分離する。三次元データ復号装置は、第2情報を用いて、変換処理後の第2点群データに逆変換を行うことで第2点群データを生成する。これによれば、同一時刻の複数の点群データをまとめて符号化することにより符号化効率を向上できる。
例えば、変換処理は、移動に加え、幾何学変換を含む。三次元データ復号装置は、ビットストリームから、幾何学変換の内容を示す第3情報(例えば、図86に示すinformation()等)を取得する。三次元データ復号装置は、第1点群データ及び第2点群データの復元では、第1情報、第2情報及び第3情報を用いて、復号した第3点群データから第1点群データ及び第2点群データを復元する。これによれば、幾何学変換を行うことで符号化効率が向上できる。
例えば、幾何学変換は、シフト、回転、及び反転の少なくとも一つを含む。例えば、第2情報は、前記移動の移動量を示す情報(例えば、シフト量(shift_x、shift_y、shift_z))を含む。例えば、第2情報は、第2点群データの原点を、第1点群データの原点に移動させるか否かを示す情報(例えば、原点シフトフラグ(shift_equal_origin_flag)を含む。
例えば、三次元データ復号装置は、復元した第1点群データ及び第2点群データを空間的に結合することで第4点群データを生成する。
例えば、ビットストリームは、第3点群データに含まれる複数の三次元点の各々の位置情報と1以上の属性情報とを含み、1以上の属性情報の一つは、第1情報を含む。
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。
以上、本開示の実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等について説明したが、本開示は、この実施の形態に限定されるものではない。
また、上記実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等に含まれる各処理部は典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。
また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
また、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
また、本開示は、三次元データ符号化装置及び三次元データ復号装置等により実行される三次元データ符号化方法又は三次元データ復号方法等として実現されてもよい。
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。
以上、一つまたは複数の態様に係る三次元データ符号化装置及び三次元データ復号装置等について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
本開示は、三次元データ符号化装置及び三次元データ復号装置に適用できる。
4601 三次元データ符号化システム
4602 三次元データ復号システム
4603 センサ端末
4604 外部接続部
4611 点群データ生成システム
4612 提示部
4613 符号化部
4614 多重化部
4615 入出力部
4616 制御部
4617 センサ情報取得部
4618 点群データ生成部
4621 センサ情報取得部
4622 入出力部
4623 逆多重化部
4624 復号部
4625 提示部
4626 ユーザインタフェース
4627 制御部
4630 第1の符号化部
4631 位置情報符号化部
4632 属性情報符号化部
4633 付加情報符号化部
4634 多重化部
4640 第1の復号部
4641 逆多重化部
4642 位置情報復号部
4643 属性情報復号部
4644 付加情報復号部
4650 第2の符号化部
4651 付加情報生成部
4652 位置画像生成部
4653 属性画像生成部
4654 映像符号化部
4655 付加情報符号化部
4656 多重化部
4660 第2の復号部
4661 逆多重化部
4662 映像復号部
4663 付加情報復号部
4664 位置情報生成部
4665 属性情報生成部
4801 符号化部
4802 多重化部
4910 第1の符号化部
4911 分割部
4912 位置情報符号化部
4913 属性情報符号化部
4914 付加情報符号化部
4915 多重化部
4920 第1の復号部
4921 逆多重化部
4922 位置情報復号部
4923 属性情報復号部
4924 付加情報復号部
4925 結合部
4931 スライス分割部
4932 位置情報タイル分割部
4933 属性情報タイル分割部
4941 位置情報タイル結合部
4942 属性情報タイル結合部
4943 スライス結合部
5410 符号化部
5411 分割部
5412 位置情報符号化部
5413 属性情報符号化部
5414 付加情報符号化部
5415 多重化部
5421 タイル分割部
5422 スライス分割部
5431、5441 フレームインデックス生成部
5432、5442 エントロピー符号化部
5450 復号部
5451 逆多重化部
5452 位置情報復号部
5453 属性情報復号部
5454 付加情報復号部
5455 結合部
5461、5471 エントロピー復号部
5462、5472 フレームインデックス取得部
6100 符号化部
6101 分割結合部
6102 位置情報符号化部
6103 属性情報符号化部
6104 付加情報符号化部
6105 多重化部
6111 分割部
6112 結合部
6121、6123 タイルID符号化部
6122、6124 エントロピー符号化部
6131 ビットマップ生成部
6132、6144 ビットマップ反転部
6133、6143 ルックアップテーブル参照部
6134、6141 ビット数取得部
6142 ランク取得部
6150 復号部
6151 逆多重化部
6152 位置情報復号部
6153 属性情報復号部
6154 付加情報復号部
6155 分割結合部
6161、6163 エントロピー復号部
6162、6164 タイルID取得部
6171 分割部
6172 結合部

Claims (17)

  1. 同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで第3点群データを生成し、
    前記第3点群データを符号化することでビットストリームを生成し、
    前記ビットストリームは、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを含む
    三次元データ符号化方法。
  2. 前記変換処理は、前記移動に加え、幾何学変換を含み、
    前記ビットストリームは、前記幾何学変換の内容を示す第3情報を含む
    請求項1記載の三次元データ符号化方法。
  3. 前記幾何学変換は、シフト、回転、及び反転の少なくとも一つを含む
    請求項2記載の三次元データ符号化方法。
  4. 前記第3点群データにおいて位置情報が同じ三次元点である重複点の数に基づき、前記幾何学変換の内容を決定する
    請求項2又は3記載の三次元データ符号化方法。
  5. 前記第2情報は、前記移動の移動量を示す情報を含む
    請求項1~4のいずれか1項に記載の三次元データ符号化方法。
  6. 前記第2情報は、前記第2点群データの原点を、前記第1点群データの原点に移動させるか否かを示す情報を含む
    請求項1~5のいずれか1項に記載の三次元データ符号化方法。
  7. 第4点群データを空間的に分割することで前記第1点群データ及び前記第2点群データを生成する
    請求項1~6のいずれか1項に記載の三次元データ符号化方法。
  8. 前記ビットストリームは、前記第3点群データに含まれる前記複数の三次元点の各々の位置情報と1以上の属性情報とを含み、
    前記1以上の属性情報の一つは、前記第1情報を含む
    請求項1~7のいずれか1項に記載の三次元データ符号化方法。
  9. 同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで生成された第3点群データが符号化されることで生成されたビットストリームから、前記第3点群データを復号し、
    前記ビットストリームから、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを取得し、
    前記第1情報及び前記第2情報を用いて、復号した前記第3点群データから前記第1点群データ及び前記第2点群データを復元する
    三次元データ復号方法。
  10. 前記変換処理は、前記移動に加え、幾何学変換を含み、
    前記ビットストリームから、前記幾何学変換の内容を示す第3情報を取得し、
    前記第1点群データ及び前記第2点群データの前記復元では、前記第1情報、前記第2情報及び前記第3情報を用いて、復号した前記第3点群データから前記第1点群データ及び前記第2点群データを復元する
    請求項9記載の三次元データ復号方法。
  11. 前記幾何学変換は、シフト、回転、及び反転の少なくとも一つを含む
    請求項10記載の三次元データ復号方法。
  12. 前記第2情報は、前記移動の移動量を示す情報を含む
    請求項9~11のいずれか1項に記載の三次元データ復号方法。
  13. 前記第2情報は、前記第2点群データの原点を、前記第1点群データの原点に移動させるか否かを示す情報を含む
    請求項9~12のいずれか1項に記載の三次元データ復号方法。
  14. 復元した前記第1点群データ及び前記第2点群データを空間的に結合することで第4点群データを生成する
    請求項9~13のいずれか1項に記載の三次元データ復号方法。
  15. 前記ビットストリームは、前記第3点群データに含まれる前記複数の三次元点の各々の位置情報と1以上の属性情報とを含み、
    前記1以上の属性情報の一つは、前記第1情報を含む
    請求項9~14のいずれか1項に記載の三次元データ復号方法。
  16. プロセッサと、
    メモリとを備え、
    前記プロセッサは、前記メモリを用いて、
    同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで第3点群データを生成し、
    前記第3点群データを符号化することでビットストリームを生成し、
    前記ビットストリームは、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを含む
    三次元データ符号化装置。
  17. プロセッサと、
    メモリとを備え、
    前記プロセッサは、前記メモリを用いて、
    同一時刻の第1点群データ及び第2点群データのうち、前記第2点群データに移動を含む変換処理を行い、前記第1点群データと、前記変換処理後の前記第2点群データとを結合することで生成された第3点群データが符号化されることで生成されたビットストリームから、前記第3点群データを復号し、
    前記ビットストリームから、前記第3点群データに含まれる複数の三次元点の各々が前記第1点群データと前記第2点群データとのいずれに属するかを示す第1情報と、前記移動の内容を示す第2情報とを取得し、
    前記第1情報及び前記第2情報を用いて、復号した前記第3点群データから前記第1点群データ及び前記第2点群データを復元する
    三次元データ復号装置。
JP2020555704A 2018-11-13 2019-11-12 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 Active JP7401454B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023206742A JP2024023586A (ja) 2018-11-13 2023-12-07 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862760544P 2018-11-13 2018-11-13
US62/760,544 2018-11-13
PCT/JP2019/044272 WO2020100866A1 (ja) 2018-11-13 2019-11-12 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023206742A Division JP2024023586A (ja) 2018-11-13 2023-12-07 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Publications (2)

Publication Number Publication Date
JPWO2020100866A1 JPWO2020100866A1 (ja) 2021-10-07
JP7401454B2 true JP7401454B2 (ja) 2023-12-19

Family

ID=70731228

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020555704A Active JP7401454B2 (ja) 2018-11-13 2019-11-12 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JP2023206742A Pending JP2024023586A (ja) 2018-11-13 2023-12-07 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023206742A Pending JP2024023586A (ja) 2018-11-13 2023-12-07 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Country Status (5)

Country Link
US (1) US11470352B2 (ja)
EP (1) EP3883246A4 (ja)
JP (2) JP7401454B2 (ja)
CN (1) CN112997498A (ja)
WO (1) WO2020100866A1 (ja)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10897269B2 (en) 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
US11818401B2 (en) 2017-09-14 2023-11-14 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10909725B2 (en) 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
US10909726B2 (en) 2018-04-10 2021-02-02 Apple Inc. Point cloud compression
US10939129B2 (en) 2018-04-10 2021-03-02 Apple Inc. Point cloud compression
US11010928B2 (en) 2018-04-10 2021-05-18 Apple Inc. Adaptive distance based point cloud compression
US10909727B2 (en) 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
US11017566B1 (en) 2018-07-02 2021-05-25 Apple Inc. Point cloud compression with adaptive filtering
US11202098B2 (en) 2018-07-05 2021-12-14 Apple Inc. Point cloud compression with multi-resolution video encoding
EP3595180B1 (en) * 2018-07-10 2021-12-08 BlackBerry Limited Methods and devices for neighbourhood-based occupancy prediction in point cloud compression
US11012713B2 (en) 2018-07-12 2021-05-18 Apple Inc. Bit stream structure for compressed point cloud data
US11367224B2 (en) 2018-10-02 2022-06-21 Apple Inc. Occupancy map block-to-patch information compression
MX2021008753A (es) * 2019-02-28 2021-08-24 Panasonic Ip Corp America Metodo de codificacion de datos tridimensionales, metodo de decodificacion de datos tridimensionales, dispositivo de codificacion de datos tridimensionales y dispositivo de decodificacion de datos tridimensionales.
US11057564B2 (en) 2019-03-28 2021-07-06 Apple Inc. Multiple layer flexure for supporting a moving image sensor
US11711544B2 (en) 2019-07-02 2023-07-25 Apple Inc. Point cloud compression with supplemental information messages
WO2021002558A1 (ko) * 2019-07-03 2021-01-07 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법.
US11196977B2 (en) * 2019-09-24 2021-12-07 Sony Group Corporation Unified coding of 3D objects and scenes
US11562507B2 (en) 2019-09-27 2023-01-24 Apple Inc. Point cloud compression using video encoding with time consistent patches
US11627314B2 (en) 2019-09-27 2023-04-11 Apple Inc. Video-based point cloud compression with non-normative smoothing
US11538196B2 (en) 2019-10-02 2022-12-27 Apple Inc. Predictive coding for point cloud compression
US11895307B2 (en) 2019-10-04 2024-02-06 Apple Inc. Block-based predictive coding for point cloud compression
US11798196B2 (en) 2020-01-08 2023-10-24 Apple Inc. Video-based point cloud compression with predicted patches
US11475605B2 (en) * 2020-01-09 2022-10-18 Apple Inc. Geometry encoding of duplicate points
US11310528B2 (en) * 2020-03-30 2022-04-19 Tencent America LLC Methods of coding duplicate and isolated points for point cloud coding
CN115997237A (zh) * 2020-06-23 2023-04-21 松下电器(美国)知识产权公司 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置
US11615557B2 (en) 2020-06-24 2023-03-28 Apple Inc. Point cloud compression using octrees with slicing
US11620768B2 (en) 2020-06-24 2023-04-04 Apple Inc. Point cloud geometry compression using octrees with multiple scan orders
WO2022075234A1 (ja) * 2020-10-05 2022-04-14 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US11948338B1 (en) 2021-03-29 2024-04-02 Apple Inc. 3D volumetric content encoding using 2D videos and simplified 3D meshes
EP4325857A1 (en) * 2021-04-13 2024-02-21 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Point cloud encoding and decoding methods, encoder, decoder, and computer readable storage medium
CN113568912B (zh) * 2021-07-27 2023-05-02 重庆紫光华山智安科技有限公司 一种设备编码的管理方法、系统、介质及终端
CN114697668B (zh) * 2022-04-22 2023-06-30 腾讯科技(深圳)有限公司 点云媒体的编解码方法及相关产品
WO2024065272A1 (zh) * 2022-09-28 2024-04-04 Oppo广东移动通信有限公司 点云编解码方法、装置、设备及存储介质
WO2024065271A1 (zh) * 2022-09-28 2024-04-04 Oppo广东移动通信有限公司 点云编解码方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018181047A (ja) 2017-04-17 2018-11-15 凸版印刷株式会社 三次元形状モデル生成装置、三次元形状モデル生成方法及びプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140023996A1 (en) * 2012-07-18 2014-01-23 F3 & Associates, Inc. Three Dimensional Model Objects
DE112012006746T5 (de) 2012-07-30 2015-05-21 Mitsubishi Electric Corporation Kartenanzeigevorrichtung
US9953443B2 (en) * 2016-02-03 2018-04-24 Daniel Limberger Interactive, adaptive level-of-detail in 2.5D treemaps
US11297346B2 (en) * 2016-05-28 2022-04-05 Microsoft Technology Licensing, Llc Motion-compensated compression of dynamic voxelized point clouds
EP4035943B1 (en) * 2016-11-01 2023-08-30 Panasonic Intellectual Property Corporation of America Display method and display device
US10909725B2 (en) * 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US11113845B2 (en) * 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10657689B2 (en) * 2018-04-13 2020-05-19 Sony Corporation Method and apparatus for point cloud color processing
EP4343702A2 (en) 2018-10-09 2024-03-27 Panasonic Intellectual Property Corporation of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018181047A (ja) 2017-04-17 2018-11-15 凸版印刷株式会社 三次元形状モデル生成装置、三次元形状モデル生成方法及びプログラム

Also Published As

Publication number Publication date
CN112997498A (zh) 2021-06-18
JP2024023586A (ja) 2024-02-21
US11470352B2 (en) 2022-10-11
JPWO2020100866A1 (ja) 2021-10-07
US20210258610A1 (en) 2021-08-19
EP3883246A4 (en) 2021-12-15
EP3883246A1 (en) 2021-09-22
WO2020100866A1 (ja) 2020-05-22

Similar Documents

Publication Publication Date Title
JP7401454B2 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US11423581B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US11488327B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
JP2024026525A (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JP2023129667A (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2020059826A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US11750840B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
JP7358376B2 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US11936919B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2020032136A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JPWO2020027317A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JP7448518B2 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
KR102624513B1 (ko) 3차원 데이터 저장 방법, 3차원 데이터 취득 방법, 3차원 데이터 저장 장치, 및 3차원 데이터 취득 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220922

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231207

R150 Certificate of patent or registration of utility model

Ref document number: 7401454

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150