(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-08
(45)【発行日】2024-03-18
(54)【発明の名称】ポイントクラウドデータ処理方法及び装置
(51)【国際特許分類】
G06T 9/40 20060101AFI20240311BHJP
H04N 19/132 20140101ALI20240311BHJP
H04N 19/597 20140101ALI20240311BHJP
【FI】
G06T9/40
H04N19/132
H04N19/597
(21)【出願番号】P 2021577665
(86)(22)【出願日】2020-06-11
(86)【国際出願番号】 KR2020007566
(87)【国際公開番号】W WO2021002604
(87)【国際公開日】2021-01-07
【審査請求日】2021-12-27
(31)【優先権主張番号】10-2019-0079322
(32)【優先日】2019-07-02
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】502032105
【氏名又は名称】エルジー エレクトロニクス インコーポレイティド
【氏名又は名称原語表記】LG ELECTRONICS INC.
【住所又は居所原語表記】128, Yeoui-daero, Yeongdeungpo-gu, 07336 Seoul,Republic of Korea
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100165191
【氏名又は名称】河合 章
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100159259
【氏名又は名称】竹本 実
(72)【発明者】
【氏名】ホ へチョン
(72)【発明者】
【氏名】オ セチン
【審査官】岡本 俊威
(56)【参考文献】
【文献】米国特許出願公開第2019/0080483(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 9/00- 9/40
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
ジオメトリ情報及び特質情報を含むポイントクラウドデータを符号化する段階であって、前記ジオメトリ情報は前記ポイントクラウドデータのポイントの位置を示し、前記特質情報は前記ポイントクラウドデータのポイントの特質を示す、段階と、
前記ポイントクラウドデータを符号化する段階は前記ジオメトリ情報を符号化する段階と前記特質情報を符号化する段階を含み、
前記特質情報を符号化する段階は、少なくとも一つのLOD(Level of Detail)を生成する段階を含み、
前記少なくとも一つのLODを生成する段階は、
八分木(octree)に基づいてサンプリング範囲において一つのポイントをサンプリングする段階を含み、
前記サンプリングする段階は、サンプリング範囲内のポイントの数に基づいたグルーピング過程(grouping operation)と、前記グルーピング過程に基づいた一つのポイントを付与する過程(assigning operation)を含み、
前記符号化されたポイントクラウドデータを含むビットストリームを送信する段階を含む、ポイントクラウドデータ処理方法。
【請求項2】
前記グルーピング過程は、前記サンプリング範囲のポイントの数に基づいて、前記サンプリング範囲と少なくとも一つの他のサンプリング範囲とをグルーピングする段階を含み、
前記グルーピングする段階は、前記サンプリング範囲のポイントの数を特定の最小数と比較する段階を含み、
前記サンプリング範囲のポイントの数が前記特定の最小数より小さい場合、前記サンプリング範囲は前記少なくとも一つの他のサンプリング範囲とグルーピングされ、
前記サンプリング範囲は、前記
八分木(octree)の少なくとも一つのノードに対応する、請求項1に記載のポイントクラウドデータ処理方法。
【請求項3】
前記ビットストリームは、前記少なくとも一つのLODを生成するためのサンプリング方法のタイプを示す第1情報を含み、
前記第1情報は、前記
八分木(octree)に基づいて前記サンプリング範囲を示すサンプリング方法の第1タイプを含み、
前記第1情報がサンプリング方法の前記第1タイプを含む場合、一つのポイントは、前記少なくとも一つのLODを生成するために前記サンプリング範囲からサンプルされ、
前記ビットストリームは、サンプリング期間に関連する第2情報を含む、請求項1に記載のポイントクラウドデータ処理方法。
【請求項4】
ジオメトリ情報及び特質情報を含むポイントクラウドデータを符号化するエンコーダであって、前記ジオメトリ情報は前記ポイントクラウドデータのポイントの位置を示し、前記特質情報は前記ポイントクラウドデータのポイントの特質を示す、エンコーダと、
前記エンコーダは、前記ジオメトリ情報を符号化する第1エンコーダを含み、
前記エンコーダは、前記特質情報を符号化する第2エンコーダを含み、
前記第2エンコーダは少なくとも一つのLOD(Level of Detail)を生成するLOD生成器を含み、
前記LOD生成器は
八分木(octree)に基づいてサンプリング範囲内の一つのポイントのサンプリングを実行するように構成され、
前記LOD生成器は、サンプリング範囲内のポイントの数に基づいたグルーピング過程(grouping operation)と、前記グルーピング過程に基づいた一つのポイントを付与する過程(assigning operation)を実行するように構成され、
前記符号化されたポイントクラウドデータを含むビットストリームを送信する送信部を含む、ポイントクラウドデータ処理装置。
【請求項5】
前記LOD生成器は、前記サンプリング範囲のポイントの数に基づいて、前記サンプリング範囲と少なくとも一つの他のサンプリング範囲とをグルーピングするように構成され、
前記LOD生成器は、前記サンプリング範囲のポイントの数を特定の最小数と比較するように構成され、
前記サンプリング範囲のポイント数が前記特定の最小数より小さい場合、前記サンプリング範囲は前記少なくとも一つの他のサンプリング範囲とグルーピングされ、
前記サンプリング範囲は、前記
八分木(octree)の少なくとも一つのノードに対応する、請求項4に記載のポイントクラウドデータ処理装置。
【請求項6】
前記ビットストリームは、前記少なくとも一つのLODを生成するためのサンプリング方法のタイプを示す第1情報を含む、請求項4に記載のポイントクラウドデータ処理装置。
【請求項7】
前記第1情報は、前記
八分木(octree)に基づいて、前記サンプリング範囲を表すサンプリング方法の第1タイプを含み、
前記第1情報がサンプリング方法の前記第1タイプを含む場合、一つのポイントは、前記少なくとも一つのLODを生成するために前記サンプリング範囲からサンプルされ、
前記ビットストリームは、サンプリング期間に関連する第2情報を含む、請求項6に記載のポイントクラウドデータ処理装置。
【請求項8】
ポイントクラウドデータを含むビットストリームを受信する段階であって、前記ポイントクラウドデータはジオメトリ情報及び特質情報を含み、前記ジオメトリ情報は前記ポイントクラウドデータのポイントの位置を示し、前記特質情報は前記ポイントクラウドデータのポイントの特質を示す、段階と、
前記ポイントクラウドデータを復号する段階を含み、
前記ポイントクラウドデータを復号する段階は前記ジオメトリ情報を復号する段階と前記特質情報を復号する段階を含み、
前記特質情報を復号する段階は、少なくとも一つのLOD(Level of Detail)を生成する段階を含み、
前記少なくとも一つのLODを生成する段階は、
八分木(octree)に基づいてサンプリング範囲において一つのポイントをサンプリングする段階を含み、
前記サンプリングする段階は、サンプリング範囲内のポイントの数に基づいたグルーピング過程(grouping operation)と、前記グルーピング過程に基づいた一つのポイントを付与する過程(assigning operation)を含む、ポイントクラウドデータ処理方法。
【請求項9】
前記グルーピング過程は、前記サンプリング範囲のポイントの数に基づいて、前記サンプリング範囲と少なくとも一つの他のサンプリング範囲とをグルーピングする過程を含み、
前記グルーピングする過程は、前記サンプリング範囲のポイントの数を特定の最小数と比較する段階を含み、
前記サンプリング範囲のポイントの数が前記特定の最小数より小さい場合、前記サンプリング範囲は前記少なくとも一つの他のサンプリング範囲とグルーピングされ、
前記サンプリング範囲は、前記
八分木(octree)の少なくとも一つのノードに対応する、請求項8に記載のポイントクラウドデータ処理方法。
【請求項10】
前記ビットストリームは、前記少なくとも一つのLODを生成するためのサンプリング方法のタイプを示す第1情報を含み、
前記第1情報は、前記
八分木(octree)に基づいて前記サンプリング範囲を示すサンプリング方法の第1タイプを含み、
前記第1情報がサンプリング方法の前記第1タイプを示す場合、一つのポイントは、前記少なくとも一つのLODを生成するために前記サンプリング範囲からサンプルされ、
前記ビットストリームは、サンプリング期間に関連する第2情報を含む、請求項9に記載のポイントクラウドデータ処理方法。
【請求項11】
ポイントクラウドデータを含むビットストリームを受信する受信機であって、前記ポイントクラウドデータはジオメトリ情報及び特質情報を含み、前記ジオメトリ情報は前記ポイントクラウドデータのポイントの位置を示し、前記特質情報は前記ポイントクラウドデータのポイントの一つ又はそれ以上の特質を示す、受信機と、
前記ポイントクラウドデータを復号するデコーダを含み、
前記デコーダは、前記ジオメトリ情報を復号する第1デコーダを含み、
前記デコーダは、前記特質情報を復号する第2デコーダを含み、
前記第2デコーダは少なくとも一つのLOD(Level of Detail)を生成するLOD生成器を含み、
前記LOD生成器は、
八分木(octree)に基づいてサンプリング範囲内の一つのポイントのサンプリングを実行するように構成され、
前記LOD生成器は、サンプリング範囲内のポイントの数に基づいたグルーピング過程(grouping operation)と、前記グルーピング過程に基づいた一つのポイントを付与する過程(assigning operation)を実行するように構成された、ポイントクラウドデータ処理装置。
【請求項12】
前記LOD生成器は、前記サンプリング範囲のポイントの数に基づいて、前記サンプリング範囲と少なくとも一つの他のサンプリング範囲をグルーピングするように構成され、
前記LOD生成器は、前記サンプリング範囲のポイントの数を特定の最小数と比較するように構成され、
前記サンプリング範囲のポイント数が前記特定の最小数より小さい場合、前記サンプリング範囲は前記少なくとも一つの他のサンプリング範囲とグルーピングされ、
前記サンプリング範囲は、前記
八分木(octree)の少なくとも一つのノードに対応する、請求項11に記載のポイントクラウドデータ処理装置。
【請求項13】
前記ビットストリームは、前記少なくとも一つのLODを生成するためのサンプリング方法のタイプを示す第1情報を含み、
前記第1情報は、前記
八分木(octree)に基づいて前記サンプリング範囲を示すサンプリング方法の第1タイプを含み、
前記第1情報がサンプリング方法の前記第1タイプを含む場合、一つのポイントは、前記少なくとも一つのLODを生成するために前記サンプリング範囲からサンプルされる、請求項12に記載のポイントクラウドデータ処理装置。
【請求項14】
前記ビットストリームは、サンプリング期間に関連する第2情報を含む、請求項13に記載のポイントクラウドデータ処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
実施例はユーザにVR(Virtual Reality、仮想現実)、AR(Augmented Reality、拡張現実)、MR(Mixed Reality、複合現実)及び自律走行サービスなどの様々なサービスを提供するために、ポイントクラウド(Point Cloud)コンテンツを提供する方案を提供する。
【背景技術】
【0002】
ポイントクラウドコンテンツは3次元空間を表現する座標系に属する点(ポイント)の集合であるポイントクラウドで表現されるコンテンツである。ポイントクラウドコンテンツは3次元からなるメディアを表現でき、VR(Virtual Reality、仮想現実)、AR(Augmented Reality、拡張現実)、MR(Mixed Reality、複合現実)及び自律走行サービスなどの様々なサービスを提供するために使用される。しかし、ポイントクラウドコンテンツを表現するためには、数万から数十万個のポイントデータが必要である。従って、膨大な量のポイントデータを効率的に処理する方法が求められる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
実施例はポイントクラウドデータを効率的に処理するための装置及び方法を提供する。実施例は遅延(latency)及び符号化/復号複雑度を解決するためのポイントクラウドデータ処理方法及び装置を提供する。
【0004】
但し、上述した技術的課題のみに制限されず、記載する全ての内容に基づいて当業者が導き出される他の技術的課題にも実施例の権利範囲を拡張することができる。
【課題を解決するための手段】
【0005】
よって、効率的にポイントクラウドデータを処理するために、実施例によるポイントクラウドデータ処理方法では、ジオメトリ(geometry)情報及び特質(attribute)情報を含むポイントクラウドデータ(point cloud data)を符号化する段階及び符号化されたポイントクラウドデータを含むビットストリームを送信する段階を含む。実施例による、ジオメトリ情報はポイントクラウドデータのポイントの位置(position)を示す情報であり、実施例による特質情報はポイントクラウドデータのポイントの特質を示す情報である。
【0006】
実施例によるポイントクラウドデータ処理装置は、ジオメトリ情報及び特質情報を含むポイントクラウドデータを符号化するエンコーダ及び符号化されたポイントクラウドデータを含むビットストリームを送信する送信部を含む。実施例によるジオメトリ情報はポイントクラウドデータのポイントの位置を示す情報であり、実施例による特質情報はポイントクラウドデータのポイントの特質を示す情報である。
【0007】
実施例によるポイントクラウドデータ処理方法は、ポイントクラウドデータを含むビットストリームを受信する段階及びポイントクラウドデータを復号する段階を含む。実施例によるポイントクラウドデータはジオメトリ情報及び特質情報を含む。実施例によるジオメトリ情報はポイントクラウドデータのポイントの位置を示す情報であり、実施例による特質情報はポイントクラウドデータのポイントの一つ又はそれ以上の特質を示す情報である。
【0008】
実施例によるポイントクラウドデータ処理装置は、ポイントクラウドデータを含むビットストリームを受信する受信機及びポイントクラウドデータを復号するデコーダを含む。実施例によるポイントクラウドデータはジオメトリ情報及び特質情報を含む。実施例によるジオメトリ情報はポイントクラウドデータのポイントの位置を示す情報であり、実施例による特質情報はポイントクラウドデータのポイントの一つ又はそれ以上の特質を示す情報である。
【発明の効果】
【0009】
実施例による装置及び方法は、高効率でポイントクラウドデータを処理することができる。
【0010】
実施例による装置及び方法は、良質のポイントクラウドサービスを提供することができる。
【0011】
実施例による装置及び方法は、VRサービス、自律走行サービスなどの汎用的なサービスを提供するためのポイントクラウドコンテンツを提供することができる。
【図面の簡単な説明】
【0012】
添付図面は本発明の実施例を示し、説明と共に本発明の原理を説明する。
【0013】
図面は実施例をより理解するために添付し、実施例に関連する説明と共に実施例を示す。
【0014】
【
図1】実施例によるポイントクラウドコンテンツ提供システムの一例を示す。
【
図2】実施例によるポイントクラウドコンテンツ提供動作を示すブロック図である。
【
図3】実施例によるポイントクラウドビデオキャプチャー過程の一例を示す。
【
図4】実施例によるポイントクラウドエンコーダ(Point Cloud Encoder)の一例を示す。
【
図6】実施例による八分木及び占有コード(occupancy code)の一例を示す。
【
図7】実施例による隣接ノードパターンの一例を示す。
【
図8】実施例によるLODごとのポイント構成の一例を示す。
【
図9】実施例によるLODごとのポイント構成の一例を示す。
【
図10】実施例によるポイントクラウドデコーダ(Point Cloud Decoder)の一例を示す。
【
図11】実施例によるポイントクラウドデコーダ(Point Cloud Decoder)の一例を示す。
【
図14】実施例によるG-PCC基盤のポイントクラウドコンテンツストリーミングのためのアーキテクチャを示す。
【
図17】実施例によるポイントクラウドデータ送受信方法/装置に連動可能な構造の一例を示す。
【
図18】ポイントクラウドエンコーダの一例を示すブロック図である。
【
図19】ジオメトリ情報エンコーダの一例を示すブロック図である。
【
図20】実施例による特質情報エンコーダの一例を示す。
【
図21】実施例による特質情報エンコーダの一例を示す。
【
図22】実施例による特質情報予測部の一例を示す。
【
図24】実施例によるモールトンコード基盤のサンプリング過程の一例を示す。
【
図25】実施例によるLOD生成過程の一例を示す。
【
図26】実施例による孤立ポイント処理方法の一例を示す。
【
図27】実施例による孤立ポイント処理方法の一例を示す。
【
図28】ポイントクラウド圧縮(PCC)ビットストリームの構造図の一例を示す。
【
図29】実施例によるAPSのためのシンタックスの一例を示す。
【
図30】実施例によるAPSのためのシンタックスの一例を示す。
【
図31】実施例によるTPSのためのシンタックスの一例を示す。
【
図32】実施例によるTPSのためのシンタックスの一例を示す。
【
図33】実施例による特質ヘッダーのためのシンタックスの一例を示す。
【
図34】実施例による特質ヘッダーのためのシンタックスの一例を示す。
【
図35】ポイントクラウドデコーダの一例を示すブロック図である。
【
図36】ジオメトリ情報デコーダの一例を示すブロック図である。
【
図37】特質情報デコーダの一例を示すブロック図である。
【
図38】実施例によるポイントクラウドデータ処理方法のフローチャートの一例を示す。
【
図39】実施例によるポイントクラウドデータ処理方法のフローチャートの一例を示す。
【発明を実施するための形態】
【0015】
添付図面を参照しながら望ましい実施例について具体的に説明する。添付図面を参照した以下の詳細な説明は、実施例によって具現可能な実施例のみを示すというより、望ましい実施例を説明するためのものである。以下の詳細な説明は実施例に関する徹底な理解を提供するために細部事項を含む。しかし、かかる細部事項がなくても実施例を実行できることは当業者にとって明らかである。
【0016】
実施例で使用するほとんどの用語は該当分野において広く使用される一般的なものであるが、一部は出願人によって任意に選択されたものもあり、その意味は必要によって以下に詳しく説明する。よって、実施例は用語の単純な名称や意味ではなく、用語が意図する意味に基づいて理解されるべきである。
【0017】
図1は実施例によるポイントクラウドコンテンツ提供システムの一例を示す図である。
【0018】
図1に示したポイントクラウドコンテンツ提供システムは、送信装置(transmission device)10000及び受信装置(reception device)10004を含む。送信装置10000及び受信装置10004はポイントクラウドデータを送受信するために有無線通信が可能である。
【0019】
実施例による送信装置10000は、ポイントクラウドビデオ(又はポイントクラウドコンテンツ)を確保し処理して送信する。実施例において、送信装置10000は固定局(fixed station)、BTS(base transceiver system)、ネットワーク、AI(Ariticial Intelligence)機器及び/又はシステム、ロボット、AR/VR/XR機器及び/又はサーバーなどを含む。また実施例において、送信装置10000は無線接続技術(例、5G NR(New RAT)、LTE(Long Term Evolution))を用いて、基地局及び/又は他の無線機器と通信を行う機器、ロボット、車両、AR/VR/XR機器、携帯機器、家電、IoT(Internet of Thing)機器、AI機器/サーバーなどを含む。
【0020】
実施例による送信装置10000は、ポイントクラウドビデオ獲得部(Point Cloud Video Acquisition)10001、ポイントクラウドビデオエンコーダ(Point Cloud Video Encoder)10002及び/又は送信機(Transmitter(又は通信モジュール)10003を含む。
【0021】
実施例によるポイントクラウドビデオ獲得部10001は、キャプチャー、合成又は生成などの処理過程によりポイントクラウドビデオを獲得する。ポイントクラウドビデオは、3次元空間に位置するポイントの集合であるポイントクラウドで表現されるポイントクラウドコンテンツであって、ポイントクラウドビデオデータなどと呼ばれる。実施例によるポイントクラウドビデオは、一つ又はそれ以上のフレームを含む。一つのフレームは停止映像/ピクチャを示す。よって、ポイントクラウドビデオはポイントクラウド映像/フレーム/ピクチャを含み、ポイントクラウド映像、フレーム及びピクチャのうちのいずれかに呼ばれる。
【0022】
実施例によるポイントクラウドビデオエンコーダ10002は、確保したポイントクラウドビデオデータを符号化する。ポイントクラウドビデオエンコーダ10002はポイントクラウド圧縮(Point Cloud Compression)コーディングに基づいてポイントクラウドビデオデータを符号化する。実施例によるポイントクラウド圧縮コーディングは、G-PCC(Geometry-based Point Cloud Compression)コーディング及び/又はV-PCC(Video based Point Cloud Compression)コーディング又は次世代コーディングを含む。なお、実施例によるポイントクラウド圧縮コーディングは、上述した実施例に限られない。ポイントクラウドビデオエンコーダ10002は、符号化されたポイントクラウドビデオデータを含むビットストリームを出力することができる。ビットストリームは符号化されたポイントクラウドビデオデータだけではなく、ポイントクラウドビデオデータの符号化に関連するシグナリング情報を含む。
【0023】
実施例による送信機10003は、符号化されたポイントクラウドビデオデータを含むビットストリームを送信する。実施例によるビットストリームはファイル又はセグメント(例えば、ストリーミングセグメント)などにカプセル化されて、放送網及び/又はブロードバンド網などの様々なネットワークにより送信される。図示していないが、送信装置10000はカプセル化動作を行うカプセル化部(又はカプセル化モジュール)を含む。また実施例において、カプセル化部は送信機10003に含まれる。実施例において、ファイル又はセグメントはネットワークにより受信装置10004に送信されるか、又はデジタル格納媒体(例えば、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど)に格納される。実施例による送信機10003は受信装置10004(又は受信機(Receiver)10005)と4G、5G、6Gなどのネットワークにより有無線通信が可能である。また送信機10003はネットワークシステム(例えば、4G、5G、6Gなどの通信ネットワークシステム)によって必要なデータ処理動作を行うことができる。また送信装置10000はオン・デマンド(On Demand)方式によってカプセル化されたデータを送信することもできる。
【0024】
実施例による受信装置10004は、受信機(Receiver)10005、ポイントクラウドビデオデコーダ(Point Cloud Decoder)10006及び/又はレンダラー(Renderer)10007を含む。実施例において、受信装置10004は無線接続技術(例、5G NR(New RAT)、LTE(Long Term Evolution))を用いて、基地局及び/又は他の無線機器と通信を行う機器、ロボット、車両、AR/VR/XR機器、携帯機器、家電、IoT(Internet of Thing)機器、AI機器/サーバーなどを含む。
【0025】
実施例による受信機10005は、ポイントクラウドビデオデータを含むビットストリーム又はビットストリームがカプセル化されたファイル/セグメントなどをネットワーク又は格納媒体から受信する。受信機10005はネットワークシステム(例えば、4G、5G、6Gなどの通信ネットワークシステム)により必要なデータ処理動作を行う。実施例による受信機10005は、受信したファイル/セグメントをデカプセル化してビットストリームを出力する。また実施例において、受信機10005はデカプセル化の動作を行うためのデカプセル化部(又はデカプセル化モジュール)を含む。またデカプセル化部は受信機10005とは別個のエレメント(又はコンポーネント)で具現される。
【0026】
ポイントクラウドビデオデコーダ10006は、ポイントクラウドビデオデータを含むビットストリームを復号する。ポイントクラウドビデオデコーダ10006はポイントクラウドビデオデータが符号化された方式により復号することができる(例えば、ポイントクラウドビデオエンコーダ10002の動作の逆の過程)。従って、ポイントクラウドビデオデコーダ10006はポイントクラウド圧縮の逆過程であるポイントクラウド復元コーディングを行って、ポイントクラウドビデオデータを復号することができる。ポイントクラウド復元コーディングはG-PCCコーディングを含む。
【0027】
レンダラー10007は復号されたポイントクラウドビデオデータをレンダリングする。レンダラー10007はポイントクラウドビデオデータだけではなく、オディオデータもレンダリングしてポイントクラウドコンテンツを出力する。実施例において、レンダラー10007はポイントクラウドコンテンツをディスプレイするためのディスプレイを含む。実施例において、ディスプレイはレンダラー10007に含まれず、別のデバイス又はコンポーネントで具現される。
【0028】
図面において、点線で示した矢印は、受信装置10004で得たフィードバック情報(feedback information)の送信経路を示す。フィードバック情報はポイントクラウドコンテンツを消費するユーザとの相互作用を反映するための情報であって、ユーザの情報を含む(例えば、ヘッドオリエンテーション情報)、ビューポート情報など)。特に、ポイントクラウドコンテンツがユーザとの相互作用が必要なサービス(例えば、自律走行サービスなど)のためのものである場合には、フィードバック情報はコンテンツ送信側(例えば、送信装置10000)及び/又はサービス供給者に伝達されることができる。実施例において、フィードバック情報は送信装置10000だけではなく受信装置10004でも使用されることができ、提供されないこともできる。
【0029】
実施例によるヘッドオリエンテーション情報はユーザの頭の位置、方向、角度、動きなどに関する情報である。実施例による受信装置10004はヘッドオリエンテーション情報に基づいてビューポート情報を計算する。ビューポート情報はユーザが見ているポイントクラウドビデオの領域に関する情報である。視点(viewpoint)はユーザがポイントクラウドビデオを見ている点であり、ビューポート領域の真ん中を意味する。即ち、ビューポートは視点を中心とする領域であり、領域のサイズ、形態などはFOV(Field Of View)により決定される。従って、受信装置10004はヘッドオリエンテーション情報以外に、装置が支援する垂直(vertical)或いは水平(horizontal)FOVなどに基づいてビューポート情報を抽出することができる。また受信装置10004はゲイズ分析(Gaze Analysis)などを行って、ユーザのポイントクラウド消費方式、ユーザが凝視するポイントクラウドビデオ領域、凝視時間などを確認する。実施例において、受信装置10004はゲイズ分析の結果を含むフィードバック情報を送信装置10000に送信することができる。実施例によるフィードバック情報はレンダリング及び/又はディスプレイ過程で得られる。実施例によるフィードバック情報は受信装置10004に含まれた一つ又はそれ以上のセンサにより確保される。また実施例において、フィードバック情報はレンダラー10007又は別の外部エレメント(又はデバイス、コンポーネントなど)により確保される。
図1に示された点線はレンダラー10007で確保したフィードバック情報の伝達過程を示す。ポイントクラウドコンテンツ提供システムはフィードバック情報に基づいてポイントクラウドデータを処理(符号化/復号)する。従って、ポイントクラウドビデオデータデコーダ10006はフィードバック情報に基づいて復号の動作を行うことができる。また受信装置10004はフィードバック情報を送信装置10000に送信することができる。送信装置10000(又はポイントクラウドビデオデータエンコーダ10002)はフィードバック情報に基づいて符号化の動作を行うことができる。従って、ポイントクラウドコンテンツ提供システムは全てのポイントクラウドデータを処理(符号化/復号)せず、フィードバック情報に基づいて必要なデータ(例えば、ユーザのヘッド位置に対応するポイントクラウドデータ)を効率的に処理して、ユーザにポイントクラウドコンテンツを提供することができる。
【0030】
実施例において、送信装置10000はエンコーダ、送信デバイス、送信機などに呼ばれ、受信装置10004はデコーダ、受信デバイス、受信機などに呼ばれる。
【0031】
実施例による
図1のポイントクラウドコンテンツ提供システムで処理される(獲得/符号化/送信/復号/レンダリングの一連の過程で処理される)ポイントクラウドデータは、ポイントクラウドコンテンツデータ又はポイントクラウドビデオデータとも呼ばれる。実施例において、ポイントクラウドコンテンツデータはポイントクラウドデータに関連するメタデータ或いはシグナリング情報を含む概念として使用することができる。
【0032】
図1に示したポイントクラウドコンテンツ提供システムのエレメントは、ハードウェア、ソフトウェア、プロセッサ及び/又はこれらの組み合わせなどで具現される。
【0033】
図2は実施例によるポイントクラウドコンテンツ提供の動作を示すブロック図である。
【0034】
図2は
図1で説明したポイントクラウドコンテンツ提供システムの動作を示すブロック図である。上述したように、ポイントクラウドコンテンツ提供システムは、ポイントクラウド圧縮コーディング(例えば、G-PCC)に基づいてポイントクラウドデータを処理する。
【0035】
実施例によるポイントクラウドコンテンツ提供システム(例えば、ポイントクラウド送信装置10000又はポイントクラウドビデオ獲得部10001)では、ポイントクラウドビデオを獲得する(20000)。ポイントクラウドビデオは3次元空間を表現する座標系に属するポイントクラウドで表現される。実施例によるポイントクラウドビデオはPly(Polygon File format or the Stanford Triangle format)ファイルを含む。ポイントクラウドビデオが一つ又はそれ以上のフレームを有する場合、獲得したポイントクラウドビデオは一つ又はそれ以上のPlyファイルを含む。Plyファイルはポイントのジオメトリ(Geometry)及び/又は特質(Attribute)のようなポイントクラウドデータを含む。ジオメトリはポイントの位置を含む。それぞれのポイントの位置は3次元座標系(例えば、XYZ軸からなる座標系など)を示すパラメータ(例えば、X軸、Y軸、Z軸それぞれの値)で表現される。特質はポイントの特質(例えば、それぞれのポイントのテクスチャ情報、色相(YCbCr又はRGB)、反射率(r)、透明度など)を含む。一つのポイントは一つ又はそれ以上の特質(又は属性)を有する。例えば、一つのポイントは、色相の一つの特質を有するか、或いは色相及び反射率の二つの特質を有することができる。実施例において、ジオメトリは位置、ジオメトリ情報、ジオメトリデータなどとも呼ばれ、特質は特質、特質情報、特質データなどとも呼ばれる。またポイントクラウドコンテンツ提供システム(例えば、ポイントクラウド送信装置10000又はポイントクラウドビデオ獲得部10001)は、ポイントクラウドビデオの獲得過程に関連する情報(例えば、深さ情報、色相情報など)からポイントクラウドデータを確保することができる。
【0036】
実施例によるポイントクラウドコンテンツ提供システム(例えば、送信装置10000又はポイントクラウドビデオエンコーダ10002)は、ポイントクラウドデータを符号化する(20001)。ポイントクラウドコンテンツ提供システムは、ポイントクラウド圧縮コーディングに基づいてポイントクラウドデータを符号化する。上述したように、ポイントクラウドデータはポイントのジオメトリ及び特質を含む。よって、ポイントクラウドコンテンツ提供システムは、ジオメトリを符号化するジオメトリ符号化を行ってジオメトリビットストリームを出力することができる。ポイントクラウドコンテンツ提供システムは、特質を符号化する特質符号化を行って特質ビットストリームを出力することができる。実施例において、ポイントクラウドコンテンツ提供システムはジオメトリ符号化に基づいて特質符号化を行うことができる。実施例によるジオメトリビットストリーム及び特質ビットストリームは多重化されて一つのビットストリームで出力される。実施例によるビットストリームはジオメトリ符号化及び特質符号化に関連するシグナリング情報をさらに含む。
【0037】
実施例によるポイントクラウドコンテンツ提供システム(例えば、送信装置10000又は送信機10003)は、符号化されたポイントクラウドデータを送信する(20002)。
図1で説明したように、符号化されたポイントクラウドデータはジオメトリビットストリーム、特質ビットストリームで表現される。また符号化されたポイントクラウドデータはポイントクラウドデータの符号化に関連するシグナリング情報(例えば、ジオメトリ符号化及び特質符号化に関連するシグナリング情報)と共に、ビットストリームの形態で送信される。またポイントクラウドコンテンツ提供システムは符号化されたポイントクラウドデータを送信するビットストリームをカプセル化してファイル又はセグメントの形態で送信する。
【0038】
実施例によるポイントクラウドコンテンツ提供システム(例えば、受信装置10004又は受信機10005)は、符号化されたポイントクラウドデータを含むビットストリームを受信する。またポイントクラウドコンテンツ提供システム(例えば、受信装置10004又は受信機10005)は、ビットストリームを逆多重化することができる。
【0039】
ポイントクラウドコンテンツ提供システム(例えば、受信装置10004又はポイントクラウドビデオデコーダ10005)は、ビットストリームで送信される符号化されたポイントクラウドデータ(例えば、ジオメトリビットストリーム、特質ビットストリーム)を復号する。ポイントクラウドコンテンツ提供システム(例えば、受信装置10004又はポイントクラウドビデオデコーダ10005)は、ビットストリームに含まれたポイントクラウドビデオデータの符号化に関連するシグナリング情報に基づいてポイントクラウドビデオデータを復号する。ポイントクラウドコンテンツ提供システム(例えば、受信装置10004又はポイントクラウドビデオデコーダ10005)は、ジオメトリビットストリームを復号してポイントの位置(ジオメトリ)を復元する。ポイントクラウドコンテンツ提供システムは、復元したジオメトリに基づいて特質ビットストリームを復号してポイントの特質を復元する。ポイントクラウドコンテンツ提供システム(例えば、受信装置10004又はポイントクラウドビデオデコーダ10005)は、復元されたジオメトリによる位置及び復号された特質に基づいてポイントクラウドビデオを復元する。
【0040】
実施例によるポイントクラウドコンテンツ提供システム(例えば、受信装置10004又はレンダラー10007)は、復号されたポイントクラウドデータをレンダリングする(20004)。ポイントクラウドコンテンツ提供システム(例えば、受信装置10004又はレンダラー10007)は、復号過程で復号されたジオメトリ及び特質を様々なレンダリング方式によってレンダリングする。ポイントクラウドコンテンツのポイントは、一定の厚さを有する定点、該当定点の位置を中央とする所定の最小サイズを有する立方体、又は定点の位置を中央とする円などにレンダリングされる。レンダリングされたポイントクラウドコンテンツの全部又は一部の領域はディスプレイ(例えば、VR/ARディスプレイ、一般ディスプレイなど)によりユーザに提供される。
【0041】
実施例によるポイントクラウドコンテンツ提供システム(例えば、受信装置10004)は、フィードバック情報を確保することができる(20005)。ポイントクラウドコンテンツ提供システムは、フィードバック情報に基づいてポイントクラウドデータを符号化及び/又は復号する。実施例によるフィードバック情報及びポイントクラウドコンテンツ提供システムの動作は、
図1で説明したフィードバック情報及び動作と同一であるので、具体的な説明は省略する。
【0042】
図3は実施例によるポイントクラウドビデオキャプチャー過程の一例を示す図である。
【0043】
図3は
図1及び
図2で説明したポイントクラウドコンテンツ提供システムのポイントクラウドビデオキャプチャー過程の一例を示す。
【0044】
ポイントクラウドコンテンツは、様々な3次元空間(例えば、現実環境を示す3次元空間、仮想環境を示す3次元空間など)に位置するオブジェクト(object)及び/又は環境を示すポイントクラウドビデオ(イメージ及び/又は映像)を含む。従って、実施例によるポイントクラウドコンテンツ提供システムは、ポイントクラウドコンテンツを生成するために一つ又はそれ以上のカメラ(例えば、深さ情報を確保できる赤外線カメラ、深さ情報に対応する色相情報を抽出できるRGBカメラなど)、プロジェクト(例えば、深さ情報を確保するための赤外線パターンプロジェクターなど)、LiDARなどを使用してポイントクラウドビデオをキャプチャーする。実施例によるポイントクラウドコンテンツ提供システムは、深さ情報から3次元空間上のポイントで構成されたジオメトリの形態を抽出し、色相情報からそれぞれのポイントの特質を抽出してポイントクラウドデータを確保する。実施例によるイメージ及び/又は映像は内向き(inward-facing)方式及び外向き(outward-facing)方式のうちのいずれかに基づいてキャプチャーされる。
【0045】
図3の左側には内向き方式が示されている。内向き方式は中心オブジェクトを取り囲んで位置する一つ又はそれ以上のカメラ(又はカメラセンサ)が中心オブジェクトをキャプチャーする方式である。内向き方式は核心客体に対する360°イメージをユーザに提供するポイントクラウドコンテンツ(例えば、ユーザに客体(例:キャラクター、選手、品物、俳優などの核心となる客体)の360°イメージを提供するVR/ARコンテンツ)を生成するために使用される。
【0046】
図3の右側には外向き方式が示されている。外向き方式は中心オブジェクトを取り囲んで位置する一つ又はそれ以上のカメラ(又はカメラセンサ)が中心オブジェクトではない中心オブジェクトの環境をキャプチャーする方式である。外向き方式はユーザの視点からの周辺環境を提供するためのポイントクラウドコンテンツ(例えば、自律走行車両のユーザに提供される外部環境を示すコンテンツ)を生成するために使用される。
【0047】
図示したように、ポイントクラウドコンテンツは一つ又はそれ以上のカメラのキャプチャー動作に基づいて生成される。この場合、それぞれのカメラの座標系が異なるので、ポイントクラウドコンテンツ提供システムはキャプチャー動作前にグローバル空間座標系(global coordinate system)を設定するために、一つ又はそれ以上のカメラの較正(calibration)を行う。またポイントクラウドコンテンツ提供システムは、上述したキャプチャー方式でキャプチャーされたイメージ及び/又は映像と任意のイメージ及び/又は映像を合成してポイントクラウドコンテンツを生成する。またポイントクラウドコンテンツ提供システムは、仮想空間を示すポイントクラウドコンテンツを生成する場合、
図3で説明したキャプチャー動作を行わない。実施例によるポイントクラウドコンテンツ提供システムは、キャプチャーしたイメージ及び/又は映像に対して後処理を行うこともできる。即ち、ポイントクラウドコンテンツ提供システムは、望まない領域(例えば、背景)を除去したり、キャプチャーしたイメージ及び/又は映像が連結された空間を認識して空間(spatial hole)がある場合、それを埋める動作を行うことができる。
【0048】
またポイントクラウドコンテンツ提供システムは、それぞれのカメラから確保したポイントクラウドビデオのポイントに対して座標系変換を行って、一つのポイントクラウドコンテンツを生成することができる。ポイントクラウドコンテンツ提供システムは、それぞれのカメラの位置座標を基準としてポイントの座標系変換を行う。これにより、ポイントクラウドコンテンツ提供システムは、一つの広い範囲を示すコンテンツを生成するか、或いはポイントの密度が高いポイントクラウドコンテンツを生成することができる。
【0049】
図4は実施例によるポイントクラウドエンコーダ(Point Cloud Encoder)の一例を示す図である。
【0050】
図4は
図1のポイントクラウドビデオエンコーダ10002の一例を示す。ポイントクラウドエンコーダは、ネットワーク状況或いはアプリケーションなどによってポイントクラウドコンテンツの質(例えば、無損失-lossless、損失-lossy、損失に近い-near-lossless)を調節するために、ポイントクラウドデータ(例えば、ポイントの位置及び/又は特質)を再構成して符号化動作を行う。ポイントクラウドコンテンツの全体サイズが大きい場合(例えば、30fpsの場合、60Gbpsであるポイントクラウドコンテンツ)、ポイントクラウドコンテンツ提供システムは該当コンテンツをリアルタイムストリーミングすることができない。従って、ポイントクラウドコンテンツ提供システムは、ネットワーク環境などに合わせて提供するために、最大ターゲットビットレートに基づいてポイントクラウドコンテンツを再構成することができる。
【0051】
図1及び
図2に示したように、ポイントクラウドエンコーダはジオメトリ符号化及び特質符号化を行うことができる。ジオメトリ符号化は特質符号化よりも先に行われる。
【0052】
実施例によるポイントクラウドエンコーダは、座標系変換部(Transformation Coordinates)40000、量子化部(Quantize and Remove Points(Voxelize))40001、八分木分析部(Analyze Octree)40002、表面近似分析部(Analyze Surface Approximation)40003、演算エンコーダ(Arithmetic Encode)40004、ジオメトリ再構成部(Reconstruct Geometry)40005、色変換部(Transform Colors)40006、特質変換部(Transfer Attributes)40007、RAHT変換部40008、LOD生成部(Generated LOD)40009、リフト変換部(Lifting)40010、係数量子化部(Quantize Coefficients)40011及び/又は演算エンコーダ(Arithmetic Encode)40012を含む。
【0053】
座標系変換部40000、量子化部40001、八分木分析部40002、表面近似分析部40003、演算エンコーダ40004及びジオメトリ再構成部40005は、ジオメトリ符号化を行うことができる。実施例によるジオメトリ符号化は、八分木ジオメトリコーディング、ダイレクトコーディング(direct coding)、trisoupジオメトリ符号化(trisoup geometry encoding)及びエントロピー符号化を含む。ダイレクトコーディング及びtrisoupジオメトリ符号化は選択的に或いは組み合わせて適用される。なお、ジオメトリ符号化は上記の例示に限られない。
【0054】
図示したように、実施例による座標系変換部40000は、位置を受信して座標系(coordinate)に変換する。例えば、位置は3次元空間(例えば、XYZ座標系で表現される3次元空間など)の位置情報に変換される。実施例による3次元空間の位置情報はジオメトリ情報とも称される。
【0055】
実施例による量子化部40001はジオメトリを量子化する。例えば、量子化部40001は全体ポイントの最小位置値(例えば、X軸、Y軸、Z軸に対して各軸上の最小値)に基づいてポイントを量子化する。量子化部40001は最小の位置値とそれぞれのポイントの位置値との差に所定の量子スケール(quatization scale)値を掛けた後、切り下げ又は切り上げをして最も近い整数値を探す量子化動作を行う。従って、一つ又はそれ以上のポイントは同一の量子化された位置(又は位置値)を有することができる。実施例による量子化部40001は量子化されたポイントを再構成するために、量子化された位置に基づいてボクセル化(voxelization)を行う。2次元イメージ/ビデオ情報を含む最小単位はピクセル(pixel)のように、実施例によるポイントクラウドコンテンツ(又は3次元ポイントクラウドビデオ)のポイントは一つ又はそれ以上のボクセル(voxel)に含まれる。ボクセルはボリューム(Volume)とピクセル(Pixel)を組み合わせた言葉であり、3次元空間を表現する軸(例えば、X軸、Y軸、Z軸)に基づいて3次元空間をユニット(unit=1.0)単位で分けたときに発生する3次元キュービック空間を意味する。量子化部40001は3次元空間のポイントのグループをボクセルでマッチングすることができる。実施例において、一つのボクセルは一つのポイントのみを含むことができる。実施例において、一つのボクセルは一つ又はそれ以上のポイントを含む。また一つのボクセルを一つのポイントで表現するために、一つのボクセルに含まれた一つ又はそれ以上のポイントの位置に基づいて、該当ボクセルの中央点(ceter)の位置を設定することができる。この場合、一つのボクセルに含まれた全ての位置の特質が統合されて(combined)、該当ボクセルに割り当てられる。
【0056】
実施例による八分木分析部40002は、ボクセルを八分木構造で表すための八分木ジオメトリコーディング(又は八分木コーディング)を行う。八分木構造は八分割構造に基づいてボクセルにマッチングされたポイントを表現する。
【0057】
実施例による表面近似分析部40003は、八分木を分析して近似化する。実施例による八分木分析及び近似化は、八分木及びボクセル化を効率的に提供するために、多数のポイントを含む領域をボクセル化するために分析を行う過程である。
【0058】
実施例による演算エンコーダ40004は、八分木及び/又は近似化された八分木をエントロピー符号化する。例えば、符号化方式は演算(Arithmetic)符号化方法を含む。符号化の結果としてジオメトリビットストリームが生成される。
【0059】
色変換部40006、特質変換部40007、RAHT変換部40008、LOD生成部40009、リフト変換部40010、係数量子化部40011及び/又は演算エンコーダ40012は、特質符号化を行う。上述したように、一つのポイントは一つ又はそれ以上の特質を有する。実施例による特質符号化は、一つのポイントが有する特質に対して等しく適用される。但し、一つの特質(例えば、色相)が一つ又はそれ以上の要素を含む場合は、各要素ごとに独立した特質符号化が適用される。実施例による特質符号化は、色変換コーディング、特質変換コーディング、RAHT(Region Adaptive Hierarchial Transform)コーディング、予測変換(Interpolaration-based hierarchical nearest-neighbour prediction-Prediction Transform)コーディング及びリフト変換(interpolation-based hierarchical nearest-neighbour prediction with an update/lifting step(Lifting Transform))コーディングを含む。ポイントクラウドコンテンツによって、上述したRAHTコーディング、予測変換コーディング及びリフト変換コーディングが選択的に使用されるか、又は一つ又はそれ以上のコーディングの組み合わせが使用される。また実施例による特質符号化は上述した例示に限られない。
【0060】
実施例による色変換部40006は、特質に含まれた色値(又はテクスチャ)を変換する色変換コーディングを行う。例えば、色変換部40006は色相情報のフォーマットを変換(例えば、RGBからYCbCrに変換)する。実施例による色変換部40006の動作は、特質に含まれた色値によって任意に(optional)適用される。
【0061】
実施例によるジオメトリ再構成部40005は、八分木及び/又は近似化した八分木を再構成(復元)する。ジオメトリ再構成部40005はポイントの分布を分析した結果に基づいて八分木/ボクセルを再構成する。再構成された八分木/ボクセルは再構成されたジオメトリ(又は復元されたジオメトリ)とも呼ばれる。
【0062】
実施例による特質変換部40007は、ジオメトリ符号化が行われていない位置及び/又は再構成されたジオメトリに基づいて特質を変換する特質変換を行う。上述したように、特質はジオメトリに従属するので、特質変換部40007は再構成されたジオメトリ情報に基づいて特質を変換することができる。例えば、特質変換部40007は、ボクセルに含まれたポイントの位置値に基づいてその位置のポイントが有する特質を変換することができる。上述したように、一つのボクセルに含まれた一つ又はそれ以上のポイントの位置に基づいて該当ボクセルの中央点の位置が設定される場合、特質変換部40007は一つ又はそれ以上のポイントの特質を変換する。trisoupジオメトリ符号化が行われた場合、特質変換部40007はtrisoupジオメトリ符号化に基づいて特質を変換することができる。
【0063】
特質変換部40007は、各ボクセルの中央点の位置(又は位置値)から特定の位置/半径内に隣接しているポイントの特質又は特質値(例えば、各ポイントの色相、又は反射率など)の平均値を計算して特質変換を行う。特質変換部40007は平均値の計算時、中央点から各ポイントまでの距離による加重値を適用する。従って、各ボクセルは位置及び計算された特質(又は特質値)を有する。
【0064】
特質変換部40007はK-Dツリー又はモールトンコード(moulton code)に基づいて各ボクセルの中央点の位置から特定の位置/半径内に存在する隣接ポイントを探索する。K-Dツリーは二分探索木(binary search tree)で迅速に最短隣接点探索(Nearest Neighbor Search-NNS)をできるように、ポイントを位置基盤に管理する資料構造を支援する。モールトンコードは全てのポイントの3次元位置を示す座標値(例えば、(x,y,z))をビット値で示し、ビットを混ぜて生成される。例えば、ポイントの位置を示す座標値が(5,9,1)であると、座標値のビット値は(0101、1001、0001)である。ビット値をz、y、xの順にビットインデックスに合わせて混ぜると、010001000111である。この値を10進数で示すと1095になる。即ち、座標値が(5,9,1)であるポイントのモールトンコード値は1095である。特質変換部40007はモールトンコード値を基準としてポイントを整列し、depth-first traversal過程により最短隣接点探索(NNS)を行う。特質変換動作後、特質コーディングのための他の変換過程でも最短隣接点探索(NNS)が必要であれば、K-Dツリー又はモールトンコードが活用される。
【0065】
図示したように、変換された特質はRAHT変換部40008及び/又はLOD生成部40009に入力される。
【0066】
実施例によるRAHT変換部40008は、再構成されたジオメトリ情報に基づいて特質情報を予測するRAHTコーディングを行う。例えば、RAHT変換部40008は、八分木の下位レベルにあるノードに連関する特質情報に基づいて、八分木の上位レベルにあるノードの特質情報を予測することができる。
【0067】
実施例によるLOD生成部40009は予測変換コーディングを行うために、LOD(Level of Detail)を生成する。実施例によるLODはポイントクラウドコンテンツの詳細(detail)を示す程度であり、LOD値が小さいほどポイントクラウドコンテンツの詳細が下がり、LOD値が大きいほどポイントクラウドコンテンツの詳細が高いことが示されている。ポイントをLODによって分類できる。
【0068】
実施例によるリフト変換部40010は、ポイントクラウドの特質を加重値に基づいて変換するリフト変換コーディングを行う。上述したように、リフト変換コーディングは選択的に適用される。
【0069】
実施例による係数量子化部40011は、特質コーディングされた特質を係数に基づいて量子化する。
【0070】
実施例による演算エンコーダ40012は、量子化された特質を演算コーディングに基づいて符号化する。
【0071】
図4のポイントクラウドエンコーダのエレメントは、図示していないが、ポイントクラウド提供装置に含まれた一つ又はそれ以上のメモリと通信可能に設定された一つ又はそれ以上のプロセッサ又は集積回路(integrated circuits)を含むハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせで具現される。一つ又はそれ以上のプロセッサは、上述した
図4のポイントクラウドエンコーダのエレメントの動作及び/又は機能のうち、いずれか一つを行うことができる。また、一つ又はそれ以上のプロセッサは、
図4のポイントクラウドエンコーダのエレメントの動作及び/又は機能を行うためのソフトウェアプログラム及び/又は指示(instruction)のセットを動作又は実行することができる。実施例による一つ又はそれ以上のメモリは高速ランダムアクセスメモリを含むか、又は非揮発性メモリ(例えば、一つ又はそれ以上のマグネチックディスク格納デバイス、フラッシュメモリデバイス、又は他の非揮発性固体のメモリデバイス(Solid-state memory devices)など)を含む。
【0072】
【0073】
図5はX軸、Y軸、Z軸の3つの軸で構成された座標系で表現される3次元空間上に位置するボクセルを示す。
図4に示すように、ポイントクラウドエンコーダ(例えば、量子化部40001など)はボクセル化を行う。ボクセルは3次元空間を表現する軸(例えば、X軸、Y軸、Z軸)に基づいて3次元空間をユニット(unit=1.0)単位で分けたときに発生する3次元キュービック空間を意味する。
図5は2つの極点(0,0,0)及び(2
d、2
d、2
d)により定義される境界ボックス(cubical axis-aligned bounding box)を再帰的に分割(reculsive subdividing)する八分木構造により生成されたボクセルの一例を示す。一つのボクセルは少なくとも一つ以上のポイントを含む。ボクセルはボクセル群(voxel group)との位置関係から空間座標を推定することができる。上述したように、ボクセルは2次元イメージ/映像のピクセルと同様に、特質(色相又は反射率など)を有する。ボクセルに対する具体的な説明は
図4で説明した通りであるので、省略する。
【0074】
図6は実施例による八分木及び占有コード(occupancy code)の一例を示す図である。
【0075】
図1ないし
図4に示したように、ポイントクラウドコンテンツ提供システム(ポイントクラウドビデオエンコーダ10002)又はポイントクラウドエンコーダ(例えば、八分木分析部40002)は、ボクセルの領域及び/又は位置を効率的に管理するために、八分木構造基盤の八分木ジオメトリコーディング(又は八分木コーディング)を行う。
【0076】
図6の上側は八分木構造を示している。実施例によるポイントクラウドコンテンツの3次元空間は座標系の軸(例えば、X軸、Y軸、Z軸)で表現される。八分木構造は2つの極点(0,0,0)及び(2
d、2
d、2
d)により定義される境界ボックス(cubical axis-aligned bounding box)を再帰的に分割(reculsive subdividing)して生される。2dはポイントクラウドコンテンツ(又はポイントクラウドビデオ)の全体ポイントを取り囲む最小の境界ボックスを構成する値で設定される。dは八分木の深さを示す。d値は以下の式により決定される。以下の式において、(x
int
n、y
int
n、z
int
n)は量子化されたポイントの位置(又は位置値)を示す。
【0077】
【0078】
図6の上側中央に示したように、分割によって全体3次元空間は8つの空間に分かれる。分割されたそれぞれの空間は6つの面を有するキューブで表現される。
図6の右上側に示したように、8つの空間はそれぞれ再び座標系の軸(例えば、X軸、Y軸、Z軸)により分かれる。よって、それぞれの空間は再び8つの小さい空間に分かれる。分割された小さい空間も6つの面を有するキューブで表現される。このような分割方式は八分木の葉節点(leaf node)がボクセルになるまで適用される。
【0079】
図6の下側は八分木の占有コードを示す。八分木の占有コードは一つの空間が分かれて発生する8つの分割空間がそれぞれ少なくとも一つのポイントを含むか否かを示すために生成される。従って、一つの占有コードは8つの子ノード(child node)で表現される。それぞれの子ノードは分割された空間の占有率(occupancy)を示し、子ノードは1ビットの値を有する。従って、占有コードは8ビットコードで表現される。即ち、子ノードに対応する空間に少なくとも一つのポイントが含まれていると、該当ノードは1値を有する。ノードに対応する空間にポイントが含まれていないと(empty)、該当ノードは0値を有する。
図6に示した占有コードは00100001であるので、8つの子ノードのうち、3番目の子ノード及び8番目の子ノードに対応する空間はそれぞれ少なくとも一つのポイントを含むことを示している。図示したように、3番目の子ノード及び8番目の子ノードはそれぞれ8つの子ノードを有し、それぞれの子ノードは8ビットの占有コードで表現される。図面では、3番目の子ノードの占有コードが10000111であり、8番目の子ノードの占有コードが01001111であることを示している。実施例によるポイントクラウドエンコーダ(例えば、演算エンコーダ40004)は占有コードをエントロピー符号化することができる。また圧縮効率を高めるために、ポイントクラウドエンコーダは占有コードをイントラ/インターコーディングすることができる。実施例による受信装置(例えば、受信装置10004又はポイントクラウドビデオデコーダ10006)は占有コードに基づいて八分木を再構成する。
【0080】
実施例によるポイントクラウドエンコーダ(例えば、
図4のポイントクラウドエンコーダ、又は八分木分析部40002)は、ポイントの位置を格納するためにボクセル化及び八分木コーディングを行う。しかし、3次元空間内のポイントがいつも均一に分布していることではないので、ポイントが多く存在しない特定の領域が存在し得る。従って、3次元空間の全体に対してボクセル化を行うことは非効率的である。例えば、特定の領域にポイントがほぼ存在しないと、該当領域までボクセル化を行う必要はない。
【0081】
従って、実施例によるポイントクラウドエンコーダは、上述した特定の領域(又は八分木の葉節点を除いたノード)についてはボクセル化を行わず、特定の領域に含まれたポイントの位置を直接コーディングするダイレクトコーディング(Direct coding)を行う。実施例によるダイレクトコーディングポイントの座標は、ダイレクトコーディングモード(Direct Coding Mode、DCM)と呼ばれる。また実施例によるポイントクラウドエンコーダは、表面モデル(surface model)に基づいて特定の領域(又はノード)内のポイントの位置をボクセルに基づいて再構成するtrisoupジオメトリ符号化(Trisoup geometry encoding)を行うことができる。trisoupジオメトリ符号化はオブジェクトの表現を三角形メッシュ(triangle mesh)のシリーズで表現するジオメトリ符号化である。従って、ポイントクラウドデコーダはメッシュ表面からポイントクラウドを生成することができる。実施例によるダイレクトコーディング及びtrisoupジオメトリ符号化は選択的に行われる。また実施例によるダイレクトコーディング及びtrisoupジオメトリ符号化は八分木ジオメトリコーディング(又は八分木コーディング)と結合して行うことができる。
【0082】
ダイレクトコーディング(Direct coding)を行うためには、ダイレクトコーディングを適用するための直接モード(direct mode)の使用オプションが活性化されている必要があり、ダイレクトコーディングを適用するノードは葉節点ではなく、特定のノード内に閾値(threshold)以下のポイントが存在する必要がある。またダイレクトコーディングの対象となる全体ポイントの個数は所定の閾値を超えてはいけない。上記条件を満たすと、実施例によるポイントクラウドエンコーダ(又は演算エンコーダ40004)はポイントの位置(又は位置値)をエントロピーコーディングすることができる。
【0083】
実施例によるポイントクラウドエンコーダ(例えば、表面近似分析部40003)は、八分木の特定のレベルを定め(レベルは八分木の深さdよりは小さい場合)、そのレベルからは表面モデルを使用してノード領域内のポイントの位置をボクセルに基づいて再構成するtrisoupジオメトリ符号化を行うことができる(trisoupモード)。実施例によるポイントクラウドエンコーダは、trisoupジオメトリ符号化を適用するレベルを指定できる。例えば、指定されたレベルが八分木の深さと同一であると、ポイントクラウドエンコーダはtrisoupモードで動作しない。即ち、実施例によるポイントクラウドエンコーダは指定されたレベルが八分木の深さ値よりも小さい場合にのみtrisoupモードで動作することができる。実施例による指定されたレベルのノードの3次元立方体領域をブロック(block)と呼ぶ。一つのブロックは一つ又はそれ以上のボクセルを含む。ブロック又はボクセルはブリック(brick)に対応することもできる。それぞれのブロック内においてジオメトリは表面(surface)と表現される。実施例による表面は最大1回、ブロックの各エッジ(edge)と交差することができる。
【0084】
一つのブロックは12つのエッジを有するので、一つのブロック内に少なくとも12つの交差点が存在する。それぞれの交差点はバーテックス(vertex、頂点又は頂上)と呼ばれる。エッジに沿って存在するバーテックスは該当エッジを共有する全てのブロックのうち、そのエッジに隣接する少なくとも一つの占有ボクセル(occupied voxel)がある場合に検知される。実施例による占有ボクセルはポイントを含むボクセルを意味する。エッジに沿って検出されたバーテックスの位置は、該当エッジを共有する全てのブロックのうち、該当エッジに隣接する全てのボクセルのエッジによる平均位置である(the average position along the edge of all voxels)。
【0085】
バーテックスが検出されると、実施例によるポイントクラウドエンコーダは、エッジの開始点(x、y、z)、エッジの方向ベクトル(Δx、Δy、Δz)、バーテックス位置値(エッジ内の相対的位置値)をエントロピーコーディングすることができる。trisoupジオメトリ符号化が適用された場合、実施例によるポイントクラウドエンコーダ(例えば、ジオメトリ再構成部40005)は三角形再構成(triangle reconstruction)、アップ-サンプリング(up-sampling)、ボクセル化過程を行って復元されたジオメトリ(再構成されたジオメトリ)を生成することができる。
【0086】
【0087】
【0088】
加えられた値の最小値を求め、最小値がある軸に沿って投影(Projection)過程を行う。例えば、x要素(element)が最小である場合、各バーテックスをブロックの中心を基準としてx軸に投影し、(y,z)平面に投影させる。(y,z)平面に投影させて得た値が(ai,bi)であれば、atan2(bi、ai)によりθ値を求め、θ値を基準としてバーテックスを整列する。以下の表はバーテックスの個数によって三角形を生成するためのバーテックスの組み合わせを示している。バーテックスは1からnまで順に整列される。以下の表は4つのバーテックスに対して、バーテックスの組み合わせによって2つの三角形が構成されることを示している。1番目の三角形は整列されたバーテックスのうち、1、2、3番目のバーテックスで構成され、2番目の三角形は整列されたバーテックスのうち、3,4,1番目のバーテックスで構成される。
【0089】
表.Triangles formed from vertices ordered 1
【0090】
【0091】
アップサンプリング過程は三角形のエッジに沿って中間に点を追加してボクセル化するために行われる。アップサンプリング係数(upsampling factor)とブロックの幅を基準として追加点を生成する。追加点はリファインドバーテックス(refined vertice)と呼ばれる。実施例によるポイントクラウドエンコーダはリファインドバーテックスをボクセル化することができる。またポイントクラウドエンコーダはボクセル化された位置(又は位置値)に基づいて特質符号化を行うことができる。
【0092】
図7は実施例による隣接ノードパターンの一例を示す図である。
【0093】
ポイントクラウドビデオの圧縮効率を増加させるために、実施例によるポイントクラウドエンコーダはコンテキスト適応演算(context adaptive arithmetic)コーディングに基づいてエントロピーコーディングを行う。
【0094】
図1ないし
図6で説明したように、ポイントクラウドコンテンツ提供システム又はポイントクラウドエンコーダ(例えば、ポイントクラウドビデオエンコーダ10002、
図4のポイントクラウドエンコーダ又は演算エンコーダ40004)は、占有コードをすぐエントロピーコーディングすることができる。またポイントクラウドコンテンツ提供システム又はポイントクラウドエンコーダは、現在ノードの占有コードと隣接ノードの占有率に基づいてエントロピー符号化(イントラ符号化)を行うか、又は以前フレームの占有コードに基づいてエントロピー符号化(インター符号化)を行うことができる。実施例によるフレームは、同時間に生成されたポイントクラウドビデオの集合を意味する。実施例によるイントラ符号化/インター符号化の圧縮効率は、参照する隣接ノードの個数によって異なる。ビットが大きくなると複雑になるが、一側に傾くようにして圧縮効率を高めることができる。例えば、3-bit contextを有すると、2の3乗である8つの方法でコーディングする。分けてコーディングする部分は具現の複雑度に影響を及ぼす。従って、圧縮効率と複雑度の適正水準を合わせる必要がある。
【0095】
図7は隣接ノードの占有率に基づいて占有パターンを求める過程を示す。実施例によるポイントクラウドエンコーダは、八分木の各ノードの隣接ノードの占有率(occupancy)を判断して隣接ノードパターン(neighbor pattern)値を得る。隣接ノードパターンは該当ノードの占有パターンを推論するために使用される。
図7の左側はノードに対応するキューブ(真ん中に位置するキューブ)及び該当キューブと少なくとも一面を共有する6つのキューブ(隣接ノード)を示している。図示したノードは同じ深さのノードである。図示した数字は6つのノードとそれぞれ連関する加重値(1、2、4、8、16、32、など)を示す。各加重値は隣接ノードの位置によって順に付与される。
【0096】
図7の右側は隣接ノードパターン値を示す。隣接ノードパターン値は占有された隣接ノード(ポイントを有する隣接ノード)の加重値が掛けられた値の合計である。従って、隣接ノードパターン値は0から63までの値を有する。隣接ノードパターン値が0であることは、該当ノードの隣接ノードのうち、ポイントを有するノード(占有ノード)がないことを意味する。隣接ノードパターン値が63であることは、隣接ノードが全て占有ノードであることを意味する。図示したように、加重値1、2、4、8が付与された隣接ノードは占有ノードであるので、隣接ノードパターン値は1、2、4、8を併せた値である15である。ポイントクラウドエンコーダは隣接ノードパターン値によってコーディングを行うことができる(例えば、隣接ノードパターン値が63である場合、64つのコーディングを行う)。実施例においてポイントクラウドエンコーダは隣接ノードパターン値を変更して(例えば、64を10又は6に変更するテーブルに基づく)、コーディングの複雑度を減らすことができる。
【0097】
図8は実施例によるLODごとのポイント構成の一例を示す図である。
【0098】
図1ないし
図7で説明したように、特質符号化が行われる前、符号化されたジオメトリは再構成(復元)される。ダイレクトコーディングが適用された場合、ジオメトリ再構成の動作はダイレクトコーディングされたポイントの配置を変更することを含む(例えば、ダイレクトコーディングされたポイントをポイントクラウドデータの前方に配置)。trisoupジオメトリ符号化が適用された場合、ジオメトリ再構成の過程は三角形再構成、アップサンプリング、ボクセル化の過程を特質はジオメトリに従属するので、特質符号化は再構成されたジオメトリに基づいて行われる。
【0099】
ポイントクラウドエンコーダ(例えば、LOD生成部40009)はポイントをLODごとに分類する(reorganization)。図面はLODに対応するポイントクラウドコンテンツを示す。図において左側はオリジナルポイントクラウドコンテンツを示す。図において左側から2番目は最低LODのポイントの分布を示し、最右側は最高LODのポイントの分布を示す。即ち、最低LODのポイントは粗い(sparse)分布であり、最高LODのポイントは細かい分布である。即ち、図面の下側に示された矢印方向に沿ってLODが増加するほどポイント間の間隔(又は距離)は短くなる。
【0100】
図9は実施例によるLODごとのポイント構成の一例を示す図である。
【0101】
図1ないし
図8で説明したように、ポイントクラウドコンテンツ提供システム又はポイントクラウドエンコーダ(例えば、ポイントクラウドビデオエンコーダ10002、
図4のポイントクラウドエンコーダ又はLOD生成部40009)はLODを生成する。LODはポイントを設定されたLOD距離値(又はユークリッド距離(Euclidean Distance)のセット)によって改良レベル(refinement levels)のセットで再整列して生成される。LOD生成過程はポイントクラウドエンコーダだけではなく、ポイントクラウドデコーダでも行われる。
【0102】
図9の上側は3次元空間に分布されたポイントクラウドコンテンツのポイントの一例(P0~P9)を示す。
図9のオリジナルオーダー(Original order)はLOD生成前のポイントP0~P9の順を示す。
図9のLoD基盤のオーダー(LOD based order)はLOD生成によるポイントの順を示す。ポイントはLODごとに再整列される。また高いLODは低いLODに属するポイントを含む。
図9に示すように、LOD0はP0、P5、P4及びP2を含む。LOD1はLOD0のポイントとP1、P6及びP3を含む。LOD2はLOD0のポイント、LOD1のポイント及びP9、P8及びP7を含む。
【0103】
図4で説明したように、実施例によるポイントクラウドエンコーダは予測変換コーディング、リフト変換コーディング及びRAHT変換コーディングを選択的に又は組み合わせて行うことができる。
【0104】
実施例によるポイントクラウドエンコーダは、ポイントに対する予測機(predictor)を生成して各ポイントの予測特質(又は予測特質値)を設定するための予測変換コーディングを行う。即ち、N個のポイントに対してN個の予測機が生成される。実施例による予測機は各ポイントのLOD値とLODごとに設定された距離内に存在する隣接ポイントに対するインデックス情報及び隣接ポイントまでの距離値に基づいて加重値(=1/距離)を計算することができる。
【0105】
実施例による予測特質(又は特質値)は、各ポイントの予測機に設定された隣接ポイントの特質(又は特質値、例えば、色相、反射率など)に各隣接ポイントまでの距離に基づいて計算された加重(又は加重値)を掛けた値の平均値で設定される。実施例によるポイントクラウドエンコーダ(例えば、係数量子化部40011)は、各ポイントの特質(特質値)から予測特質(特質値)を引いた残余値(residuals、残余特質、残余特質値、特質予測残余値などとも呼ばれる)を量子化(quatization)及び逆量子化(inverse quantization)することができる。量子化過程は以下の表の通りである。
【0106】
Attribute prediction residuals quantization pseudo code
【0107】
【0108】
Attribute prediction residuals inverse quantization pseudo Code
【0109】
【0110】
実施例によるポイントクラウドエンコーダ(例えば、演算エンコーダ40012)は、各ポイントの予測機に隣接するポイントがあれば、上述したように、量子化及び逆量子化された残余値をエントロピーコーディングする。実施例によるポイントクラウドエンコーダ(例えば、演算エンコーダ40012)は、各ポイントの予測機に隣接するポイントがないと、上述した過程を行わず、該当ポイントの特質をエントロピーコーディングする。
【0111】
実施例によるポイントクラウドエンコーダ(例えば、リフト変換部40010)は、各ポイントの予測機を生成し、予測機に計算されたLODを設定及び隣接ポイントを登録し、隣接ポイントまでの距離による加重値を設定してリフト変換コーディングを行う。実施例によるリフト変換コーディングは、上述した測変換コーディングと類似するが、特質値に加重値を累積適用するという点で差がある。実施例による特質値に加重値を累積適用する過程は以下の通りである。
【0112】
1)各ポイントの加重値を貯蔵する配列QW(QuantizationWieght)を生成する。QWの全ての要素の初期値は1.0である。予測機に登録された隣接ノードの予測機インデックスのQW値に現在ポイントの予測機の加重値を掛けた値を加える。
【0113】
2)リフト予測過程:予測された特質値を計算するために、ポイントの特質値に加重値を掛けた値を既存の特質値から引く。
【0114】
3)アップデートウェイト(updateweight)及びアップデートという臨時配列を生成し、臨時配列を0に初期化する。
【0115】
4)全ての予測機に対して計算された加重値に予測機インデックスに該当するQWに貯蔵された加重値をさらに掛けて算出された加重値をアップデートウェイト配列に隣接ノードのインデックスとして累積して合算する。アップデート配列には隣接ノードのインデックスの特質値に算出された加重値を掛けた値を累積して合算する。
【0116】
5)リフトアップデート過程:全ての予測機に対して、アップデート配列の特質値を予測機インデックスのアップデートウェイト配列の加重値で割り、割った値に再び既存の特質値を加える。
【0117】
6)全ての予測機に対して、リフトアップデート過程でアップデートされた特質値にリフト予測過程でアップデートされた(QWに貯蔵された)加重値をさらに掛けて予測特質値を算出する。実施例によるポイントクラウドエンコーダ(例えば、係数量子化部40011)は予測特質値を量子化する。またポイントクラウドエンコーダ(例えば、演算エンコーダ40012)は量子化された特質値をエントロピーコーディングする。
【0118】
実施例によるポイントクラウドエンコーダ(例えば、RAHT変換部40008)は、八分木の下位レベルのノードに連関する特質を使用して上位レベルのノードの特質を予測するRAHT変換コーディングを行う。RAHT変換コーディングは八分木バックワードスキャンによる特質イントラコーディングの一例である。実施例によるポイントクラウドエンコーダは、ボクセルから全体領域にスキャンし、各ステップもぽてボクセルをもっと大きいブロックに合わせながらルートノード(root node)までの併合過程を繰り返して行う。実施例による併合過程は、占有ノードのみについて行われる。空ノード(empty node)については併合過程が行われず、空ノードの直上位ノードについて併合過程が行われる。
【0119】
以下の式はRAHT変換行列を示す。
はレベルlでのボクセル(voxel)の平均特質値を示す。
は
と
から計算される。
と
の加重値は
と
である。
【0120】
【0121】
はローパス(low-pass)値であって、次の上位レベルでの併合過程で使用される。
はハイパス係数(high-pass coefficients)であって、各ステップでのハイパス係数は量子化されてエントロピーコーディングされる(例えば、計算エンコーダ400012の符号化)。加重値は
により計算される。ルートノードは最後の
と
により以下のように生成される。
【0122】
【0123】
gDC値もハイパス係数のように量子化されてエントロピーコーディングされる。
【0124】
図10は実施例によるポイントクラウドデコーダ(Point Cloud Decoder)の一例を示す図である。
【0125】
図10に示したポイントクラウドデコーダは、
図1に示したポイントクラウドビデオデコーダ10006の一例であり、
図1で説明したポイントクラウドビデオデコーダ10006の動作などと同一又は類似する動作を行う。図示したように、ポイントクラウドデコーダは一つ又はそれ以上のビットストリーム(bitstream)に含まれたジオメトリビットストリーム(geometry bitstream)及び特質ビットストリーム(Attribute bitstream)を受信する。ポイントクラウドデコーダはジオメトリデコーダ(geometry decoder)及び特質デコーダ(Attribute decoder)を含む。ジオメトリデコーダはジオメトリビットストリームに対してジオメトリ復号を行って復号されたジオメトリ(decoded geometry)を出力する。特質デコーダは復号されたジオメトリ及び特質ビットストリームに基づいて特質復号を行って復号された特質(decoded Attributes)を出力する。復号されたジオメトリ及び復号された特質はポイントクラウドコンテンツを復元(decoded point cloud)するために使用される。
【0126】
図11は実施例によるポイントクラウドデコーダ(Point Cloud Decoder)の一例を示す図である。
【0127】
図11に示したポイントクラウドデコーダは
図10で説明したポイントクラウドデコーダの一例であり、
図1ないし
図9で説明したポイントクラウドエンコーダの符号化動作の逆過程である復号動作を行う。
【0128】
図1及び
図10で説明したように、ポイントクラウドデコーダはジオメトリ復号及び特質復号を行う。ジオメトリ復号は特質復号よりも先に行われる。
【0129】
実施例によるポイントクラウドデコーダは、演算デコーダ(arithmetic decode)11000、八分木合成部(synthesize octree)11001、表面近似合成部(synthesize surface approximation)11002、ジオメトリ再構成部(reconstruct geometry)11003、座標系逆変換部(inverse transform coordinates)11004、演算デコーダ(arithmetic decode)11005、逆量子化部(inverse quantize)11006、RAHT変換部11007、LOD生成部(generate LOD)11008、逆リフト部(Inverse lifting)11009及び/又は色逆変換部(inverse transform colors)11010を含む。
【0130】
演算デコーダ11000、八分木合成部11001、表面近似合成部11002、ジオメトリ再構成部11003及び座標系逆変換部11004はジオメトリ復号を行う。実施例によるジオメトリ復号はダイレクトコーディング(direct coding)及びtrisoupジオメトリ復号(trisoup geometry decoding)を含む。ダイレクトコーディング及びtrisoupジオメトリ復号は選択的に適用される。またジオメトリ復号は上記の例示に限られず、
図1ないし
図9で説明したジオメトリ符号化の逆過程で行われる。
【0131】
実施例による演算デコーダ11000は、受信したジオメトリビットストリームを演算コーディングに基づいて復号する。演算デコーダ11000の動作は演算エンコーダ40004の逆過程に対応する。
【0132】
実施例による八分木合成部11001は、復号されたジオメトリビットストリームから(又は復号結果、確保されたジオメトリに関する情報)から占有コードを獲得して八分木を生成する。占有コードに関する具体的な説明は
図1ないし
図9に説明した通りである。
【0133】
実施例による表面近似合成部11002は、trisoupジオメトリ符号化が適用された場合、復号されたジオメトリ及び/又は生成された八分木に基づいて表面を合成する。
【0134】
実施例によるジオメトリ再構成部11003は、表面及び/又は復号されたジオメトリに基づいてジオメトリを再生成する。
図1ないし
図9で説明したように、ダイレクトコーディング及びtrisoupジオメトリ符号化は選択的に適用される。従って、ジオメトリ再構成部11003はダイレクトコーディングが適用されたポイントの位置情報を直接持ってきて追加する。また、trisoupジオメトリ符号化が適用される場合、ジオメトリ再構成部11003はジオメトリ再構成部40005の再構成動作、例えば、三角形再構成、アップサンプリング、ボクセル化動作を行ってジオメトリを復元する。具体的な内容は
図6で説明した通りであるので省略する。復元されたジオメトリは特質を含まないポイントクラウドピクチャ又はフレームを含む。
【0135】
実施例による座標系逆変換部11004は復元されたジオメトリに基づいて座標系を変換してポイントの位置を得る。
【0136】
演算デコーダ11005、逆量子化部11006、RAHT変換部11007、LOD生成部11008、逆リフト部11009及び/又は色逆変換部11010は、
図10で説明した特質復号を行う。実施例による特質復号は、RAHT(Region Adaptive Hierarchial Transform)復号、予測変換(Interpolaration-based hierarchical nearest-neighbour prediction-Prediction Transform)復号、及びリフト変換(interpolation-based hierarchical nearest-neighbour prediction with an update/lifting step (Lifting Transform))復号を含む。上記3つの復号は選択的に使用されるか、又は一つ又はそれ以上の復号の組み合わせが使用される。また実施例による特質復号は上述した例示に限られない。
【0137】
実施例による演算デコーダ11005は、特質ビットストリームを演算コーディングに復号する。
【0138】
実施例による逆量子化部11006は、復号された特質ビットストリーム又は復号結果確保した特質に関する情報を逆量子化(inverse quantization)して、逆量子化された特質(又は特質値)を出力する。逆量子化はポイントクラウドエンコーダの特質符号化に基づいて選択的に適用される。
【0139】
実施例においてRAHT変換部11007、LOD生成部11008及び/又は逆リフト部11009は、再構成されたジオメトリ及び逆量子化された特質を処理する。上述したように、RAHT変換部11007、LOD生成部11008及び/又は逆リフト部11009は、ポイントクラウドエンコーダの符号化によってそれに対応する復号動作を選択的に行う。
【0140】
実施例による色逆変換部11010は、復号された特質に含まれた色値(又はテクスチャ)を逆変換するための逆変換コーディングを行う。色逆変換部11010の動作はポイントクラウドエンコーダの色変換部40006の動作に基づいて選択的に行われる。
【0141】
図11のポイントクラウドデコーダのエレメントは、図示していないが、ポイントクラウド提供装置に含まれた一つ又はそれ以上のメモリと通信可能に設定された一つ又はそれ以上のプロセッサ又は集積回路(integrated circuits)を含むハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせで具現される。一つ又はそれ以上のプロセッサは、上述した
図11のポイントクラウドデコーダのエレメント動作及び/又は機能のうちのいずれかを行う。また、一つ又はそれ以上のプロセッサは、
図11のポイントクラウドデコーダのエレメントの動作及び/又は機能を行うためのソフトウェアプログラム及び/又は指示(instruction)のセットを動作又は実行する。
【0142】
【0143】
図12に示した送信装置は、
図1の送信装置10000(又は
図4のポイントクラウドエンコーダ)の一例である。
図12に示した送信装置は、
図1ないし
図9で説明したポイントクラウドエンコーダの動作及び符号化方法と同一又は類似する動作及び方法のうちのいずれかを行う。実施例による送信装置は、データ入力部12000、量子化処理部12001、ボクセル化処理部12002、八分木占有コード生成部12003、表面モデル処理部12004、イントラ/インターコーディング処理部12005、演算コーダー12006、メタデータ処理部12007、色相変換処理部12008、特質変換処理部(又は属性変換処理部)12009、予測/リフト/RAHT変換処理部12010、演算コーダー12011及び/又は送信処理部12012を含む。
【0144】
実施例によるデータ入力部12000はポイントクラウドデータを受信又は獲得する。データ入力部12000はポイントクラウドビデオ獲得部10001の動作及び/又は獲得方法(又は
図2に示した獲得過程20000)と同一又は類似する動作及び/又は獲得方法を行う。
【0145】
データ入力部12000、量子化処理部12001、ボクセル化処理部12002、八分木占有コード生成部12003、表面モデル処理部12004、イントラ/インターコーディング処理部12005及び演算コーダー12006はジオメトリ符号化を行う。実施例によるジオメトリ符号化は、
図1ないし
図9で説明したジオメトリ符号化と同一又は類似するので、具体的な説明は省略する。
【0146】
実施例による量子化処理部12001は、ジオメトリ(例えば、ポイントの位置値、又はポジション値)を量子化する。量子化処理部12001の動作及び/又は量子化は、
図4に示した量子化部40001の動作及び/又は量子化と同一又は類似する。具体的な説明は
図1ないし
図9に説明した通りである。
【0147】
実施例によるボクセル化処理部12002は、量子化されたポイントの位置値をボクセル化する。ボクセル化処理部120002は
図4に示した量子化部40001の動作及び/又はボクセル化過程と同一又は類似する動作及び/又は過程を行う。具体的な説明は
図1ないし
図9に説明した通りである。
【0148】
実施例による八分木占有コード生成部12003は、ボクセル化されたポイントの位置を八分木構造に基づいて八分木コーディングを行う。八分木占有コード生成部12003は占有コードを生成する。八分木占有コード生成部12003は
図4及び
図6で説明したポイントクラウドエンコーダ(又は八分木分析部40002)の動作及び/又は方法と同一又は類似する動作及び/又は方法を行う。具体的な説明は
図1ないし
図9に説明した通りである。
【0149】
実施例による表面モデル処理部12004は、表面モデル(surface model)に基づいて特定の領域(又はノード)内のポイントの位置をボクセル基盤に再構成するtrisoupジオメトリ符号化を行う。表面モデル処理部12004は
図4に示したポイントクラウドエンコーダ(例えば、表面近似分析部40003)の動作及び/又は方法と同一又は類似する動作及び/又は方法を行う。具体的な説明は
図1ないし
図9に説明した通りである。
【0150】
実施例によるイントラ/インターコーディング処理部12005は、ポイントクラウドデータをイントラ/インターコーディングする。イントラ/インターコーディング処理部12005は、
図7で説明したイントラ/インターコーディングと同一又は類似するコーディングを行う。具体的な説明は
図7に説明した通りである。実施例においてイントラ/インターコーディング処理部12005は演算コーダー12006に含まれる。
【0151】
実施例による演算コーダー12006は、ポイントクラウドデータの八分木及び/又は近似化された八分木をエントロピー符号化する。例えば、符号化方式は演算(Arithmetic)符号化方法を含む。演算コーダー12006は演算エンコーダ40004の動作及び/又は方法と同一又は類似する動作及び/又は方法を行う。
【0152】
実施例によるメタデータ処理部12007は、ポイントクラウドデータに関するメタデータ、例えば、設定値などを処理してジオメトリ符号化及び/又は特質符号化などの必要な処理過程に提供する。また実施例によるメタデータ処理部12007は、ジオメトリ符号化及び/又は特質符号化に関連するシグナリング情報を生成及び/又は処理する。実施例によるシグナリング情報はジオメトリ符号化及び/又は特質符号化とは別途に符号化処理される。また実施例によるシグナリング情報はインターリービングされることもある。
【0153】
色相変換処理部12008、特質変換処理部12009、予測/リフト/RAHT変換処理部12010及び演算コーダー12011は特質符号化を行う。実施例による特質符号化は、
図1ないし
図9で説明した特質符号化と同一又は類似するので具体的な説明は省略する。
【0154】
実施例による色相変換処理部12008は、特質に含まれた色相値を変換する色相変換コーディングを行う。色相変換処理部12008は再構成されたジオメトリに基づいて色相変換コーディングを行う。再構成されたジオメトリに関する説明は、
図1ないし
図9に説明した通りである。また
図4で説明した色変換部40006の動作及び/又は方法と同一又は類似する動作及び/又は方法を行う。具体的な説明は省略する。
【0155】
実施例による特質変換処理部12009は、ジオメトリ符号化が行われていない位置及び/又は再構成されたジオメトリに基づいて特質を変換する特質変換を行う。特質変換処理部12009は
図4に説明した特質変換部40007の動作及び/又は方法と同一又は類似する動作及び/又は方法を行う。具体的な説明は省略する。実施例による予測/リフト/RAHT変換処理部12010は変換された特質をRAHTコーディング、予測変換コーディング及びリフト変換コーディングのうちのいずれか一つ又は組み合わせてコーディングする。予測/リフト/RAHT変換処理部12010は
図4に説明したRAHT変換部40008、LOD生成部40009及びリフト変換部40010の動作と同一又は類似する動作のうちのいずれかを行う。また、予測変換コーディング、リフト変換コーディング及びRAHT変換コーディングに関する説明は
図1ないし
図9に説明した通りであるので、具体的な説明は省略する。
【0156】
実施例による演算コーダー12011は、コーディングされた特質を演算コーディングに基づいて符号化する。演算コーダー12011は演算エンコーダ400012の動作及び/又は方法と同一又は類似する動作及び/又は方法を行う。
【0157】
実施例による送信処理部12012は、符号化されたジオメトリ及び/又は符号化された特質、メタデータ情報を含む各ビットストリームを送信するか、又は符号化されたジオメトリ及び/又は符号化された特質、メタデータ情報を一つのビットストリームで構成して送信する。実施例による符号化されたジオメトリ及び/又は符号化された特質、メタデータ情報が一つのビットストリームで構成された場合、ビットストリームは一つ又はそれ以上のサブビットストリームを含む。実施例によるビットストリームはシーケンスレベルのシグナリングのためのSPS(Sequence Parameter Set)、ジオメトリ情報コーディングのシグナリングのためのGPS(Geometry Parameter Set)、特質情報コーディングのシグナリングのためのAPS(Attribute Parameter Set)、タイルレベルのシグナリングのためのTPS(Tile Parameter Set)を含むシグナリング情報及びスライスデータを含む。スライスデータは一つ又はそれ以上のスライスに関する情報を含む。実施例による一つのスライスは一つのジオメトリビットストリーム(Geom0
0)及び一つ又はそれ以上の特質ビットストリーム(Attr0
0、Attr1
0)を含む。実施例によるTPSは一つ又はそれ以上のタイルに対してそれぞれのタイルに関する情報(例えば、bounding boxの座標値情報及び高さ/サイズ情報など)を含む。ジオメトリビットストリームはヘッダとペイロードを含む。実施例によるジオメトリビットストリームのヘッダはGPSに含まれたパラメータセットの識別情報(geom_parameter_set_id)、タイル識別子(geom_tile_id)、スライス識別子(geom_slice_id)及びペイロードに含まれたデータに関する情報などを含む。上述したように、実施例によるメタデータ処理部12007はシグナリング情報を生成及び/又は処理して送信処理部12012に送信することができる。実施例において、ジオメトリ符号化を行うエレメント及び特質符号化を行うエレメントは、点線処理したように、相互データ/情報を共有することができる。実施例による送信処理部12012は送信機10003の動作及び/又は送信方法と同一又は類似する動作及び/又は送信方法を行う。具体的な説明は
図1及び
図2に説明した通りであるので、省略する。
【0158】
【0159】
図13に示した受信装置は、
図1の受信装置10004(又は
図10及び
図11のポイントクラウドデコーダ)の一例である。
図13に示した受信装置は、
図1ないし
図11で説明したポイントクラウドデコーダの動作及び復号方法と同一又は類似する動作及び方法のうちのいずれかを行う。
【0160】
実施例による受信装置は、受信部13000、受信処理部13001、演算(arithmetic)デコーダ13002、占有コード(Occupancy code)基盤の八分木再構成処理部13003、表面モデル処理部(三角形再構成、アップサンプリング、ボクセル化)13004、逆(inverse)量子化処理部13005、メタデータ分析13006、演算(arithmetic)デコーダ13007、逆量子化処理部13008、予測/リフト/RAHT逆変換処理部13009、色相逆変換処理部13010及び/又はレンダラー13011を含む。実施例による復号の各構成要素は実施例による符号化の構成要素の逆過程を行う。
【0161】
実施例による受信部13000は、ポイントクラウドデータを受信する。受信部13000は
図1の受信機10005の動作及び/又は受信方法と同一又は類似する動作及び/又は受信方法を行う。具体的な説明は省略する。
【0162】
実施例による受信処理部13001は受信したデータからジオメトリビットストリーム及び/又は特質ビットストリームを得る。受信処理部13001は受信部13000に含まれる。
【0163】
演算デコーダ13002、占有コード基盤の八分木再構成処理部13003、表面モデル処理部13004及び逆量子化処理部13005はジオメトリ復号を行う。実施例によるジオメトリ復号は
図1ないし
図10で説明したジオメトリ復号と同一又は類似するので、具体的な説明は省略する。
【0164】
実施例による演算デコーダ13002はジオメトリビットストリームを演算コーディングに基づいて復号する。演算デコーダ13002は演算デコーダ11000の動作及び/又はコーディングと同一又は類似する動作及び/又はコーディングを行う。
【0165】
実施例による占有コード基盤の八分木再構成処理部13003は、復号されたジオメトリビットストリームから(又は復号結果、確保されたジオメトリに関する情報)から占有コードを獲得して八分木を再構成する。占有コード基盤の八分木再構成処理部13003は、八分木合成部11001の動作及び/又は八分木生成方法と同一又は類似する動作及び/又は方法を行う。実施例による表面モデル処理部13004はtrisoupジオメトリ符号化が適用された場合、表面モデル方式に基づいてtrisoupジオメトリ復号及びそれに関連するジオメトリ再構成(例えば、三角形再構成、アップサンプリング、ボクセル化)を行う。表面モデル処理部13004は表面近似合成部11002及び/又はジオメトリ再構成部11003の動作と同一又は類似する動作を行う。
【0166】
実施例による逆量子化処理部13005は復号されたジオメトリを逆量子化する。
【0167】
実施例によるメタデータ分析13006は受信したポイントクラウドデータに含まれたメタデータ、例えば、設定値などを分析する。メタデータ分析13006はメタデータをジオメトリ復号及び/又は特質復号に伝達する。メタデータに関する具体的な説明は
図12で説明した通りであるので省略する。
【0168】
演算デコーダ13007、逆量子化処理部13008、予測/リフト/RAHT逆変換処理部13009及び色相逆変換処理部13010は特質復号を行う。特質復号は
図1なしい
図10で説明した特質復号と同一又は類似するので、具体的な説明は省略する。
【0169】
実施例による演算デコーダ13007は、特質ビットストリームを演算コーディングに復号する。演算デコーダ13007は再構成されたジオメトリに基づいて特質ビットストリームの復号を行う。演算デコーダ13007は演算デコーダ11005の動作及び/又はコーディングと同一又は類似する動作及び/又はコーディングを行う。
【0170】
実施例による逆量子化処理部13008は、復号された特質ビットストリームを逆量子化する。逆量子化処理部13008は逆量子化部11006の動作及び/又は逆量子化方法と同一又は類似する動作及び/又は方法を行う。
【0171】
実施例による予測/リフト/RAHT逆変換処理部13009は、再構成されたジオメトリ及び逆量子化された特質を処理する。予測/リフト/RAHT逆変換処理部13009は、RAHT変換部11007、LOD生成部11008及び/又は逆リフト部11009の動作及び/又は復号と同一又は類似する動作及び/又は復号のうちのいずれかを行う。実施例による色相逆変換処理部13010は、復号された特質に含まれた色値(又はテクスチャ)を逆変換するための逆変換コーディングを行う。色相逆変換処理部13010は色逆変換部11010の動作及び/又は逆変換コーディングと同一又は類似する動作及び/又は逆変換コーディングを行う。実施例によるレンダラー13011はポイントクラウドデータをレンダリングする。
【0172】
図14は実施例によるG-PCC基盤のポイントクラウドコンテンツストリーミングためのアーキテクチャを示す図である。
【0173】
図14の上側は
図1ないし
図13で説明した送信装置(例えば、送信装置10000、
図12の送信装置など)がポイントクラウドコンテンツを処理及び送信する過程を示す。
【0174】
図1ないし
図13で説明したように、送信装置はポイントクラウドコンテンツのオディオ(Ba)を得(Audio Acquisition)、得られたオディオを符号化(Audio encoding)してオディオビットストリーム(Ea)を出力する。また送信装置はポイントクラウドコンテンツのポイントクラウド(Bv)(又はポイントクラウドビデオ)を確保し(Point Acqusition)、確保したポイントクラウドについてポイントクラウド符号化(Point cloud encoding)を行ってポイントクラウドビデオビットストリーム(Ebを出力する。送信装置のポイントクラウド符号化は、
図1ないし
図13で説明したポイントクラウド符号化(例えば、
図4のポイントクラウドエンコーダの符号化など)と同一又は類似するので具体的な説明は省略する。
【0175】
送信装置は生成されたオディオビットストリーム及びビデオビットストリームをファイル及び/又はセグメントにカプセル化(File/segment encapsulation)する。カプセル化されたファイル及び/又はセグメント(Fs、File)は、ISOBMFFなどのファイルフォーマットのファイル又はDASHセグメントを含む。実施例によるポイントクラウド関連メタ データ(metadata)は、カプセル化されたファイルフォーマット及び/又はセグメントに含まれる。メタデータはISOBMFFファイルフォーマット上の様々なレベルのボックスに含まれるか、又はファイル内で別のトラックに含まれる。実施例において、送信装置はメタデータ自体を別のファイルにカプセル化することができる。実施例による送信装置は、カプセル化されたファイルフォーマット及び/又はセグメントをネットワークにより送信する。送信装置のカプセル化及び送信処理方法は
図1ないし
図13で説明した通りであるので(例えば、送信機10003、
図2の送信段階20002など)、具体的な説明は省略する。
【0176】
図14の下側は
図1ないし
図13で説明した受信装置(例えば、受信装置10004、
図13の受信装置など)がポイントクラウドコンテンツを処理及び出力する過程を示している。
【0177】
実施例において、受信装置は最終オディオデータ及び最終ビデオデータを出力するデバイス(例えば、スピーカー(Loudspeakers)、ヘッドホン(headphones)、ディスプレイ(Display)及びポイントクラウドコンテンツを処理するポイントクラウドプレーヤー(Point Cloud Player)を含む。最終データ出力デバイス及びポイントクラウドプレーヤーは別の物理的なデバイスで構成される。実施例によるポイントクラウドプレーヤーは、G-PCC(Geometry-based Point Cloud Compression)コーディング及び/又はV-PCC(Video based Point Cloud Compression)コーディング及び/又は次世代コーディングを行う。
【0178】
実施例による受信装置は受信したデータ(例えば、放送信号、ネットワークにより送信される信号など)に含まれたファイル及び/又はセグメント(F',Fs')を確保し、デカプセル化(File/segment decapsulation)する。受信装置の受信及びデカプセル化方法は
図1ないし
図13で説明した通りであるので(例えば、受信機10005、受信部13000、受信処理部13001など)、具体的な説明は省略する。
【0179】
実施例による受信装置は、ファイル及び/又はセグメントに含まれたオディオビットストリーム(E'a)及びビデオビットストリーム(E'v)を確保する。図示したように、受信装置はオディオビットストリームに対してオディオ復号(audio decoding)を行って復号されたオディオデータ(B'a)を出力し、復号されたオディオデータをレンダリングして(audio rendering)最終オディオデータ(A'a)をスピーカー又はヘッドホンなどで出力する。
【0180】
また受信装置は、ビデオビットストリーム(E'v)に対してポイントクラウド復号(point cloud decoding)を行って復号されたビデオデータ(B'v)を出力する。実施例によるポイントクラウド復号は、
図1ないし
図13で説明したポイントクラウド復号と同一又は類似するので(例えば、
図11のポイントクラウドデコーダの復号など)、具体的な説明は省略する。受信装置は復号されたビデオデータをレンダリングして(rendering)最終ビデオデータをディスプレイに出力する。
【0181】
実施例による受信装置は、共に送信されたメタデータに基づいてデカプセル化、オディオ復号、オディオレンダリング、ポイントクラウド復号及びレンダリング動作のうちのいずれかを行う。メタデータに関する説明は
図12及び
図13で説明した通りであるので省略する。
【0182】
図示した点線のように、実施例による受信装置(例えば、ポイントクラウドプレーヤー又はポイントクラウドプレーヤー内のセンシング/トラッキング部(sensing/tracking)は、フィードバック情報(orientation、viewport)を生成する。実施例によるフィードバック情報は受信装置のデカプセル化、ポイントクラウド復号過程及び/又はレンダリング過程で使用され、送信装置に伝達されることもできる。フィードバック情報に関する説明は
図1ないし
図13で説明した通りであるので省略する。
【0183】
図15は実施例による送信装置の一例を示す図である。
【0184】
図15の送信装置はポイントクラウドコンテンツを送信する装置であり、
図1ないし
図14で説明した送信装置(例えば、
図1の送信装置10000、
図4のポイントクラウドエンコーダ、
図12の送信装置、
図14の送信装置など)の例示に該当する。従って、
図15の送信装置は
図1ないし
図14で説明した送信装置の動作と同一又は類似する動作を行う。
【0185】
実施例による送信装置は、ポイントクラウド獲得(point cloud acquisition)、ポイントクラウド符号化(point cloud encoding)、ファイル/セグメントカプセル化(file/segement encapsulation)及び送信(delivery)のうちのいずれか又はそれ以上を行うことができる。
【0186】
図示したポイントクラウド獲得及び送信動作は
図1ないし
図14で説明した通りであるので具体的な説明は省略する。
【0187】
図1ないし
図14で説明したように、実施例による送信装置はジオメトリ符号化及び特質符号化を行う。実施例によるジオメトリ符号化はジオメトリ圧縮(geometry compression)とも呼ばれ、特質符号化は特質圧縮(Attribute compression)とも呼ばれる。上述したように、一つのポイントは一つのジオメトリと一つ又はそれ以上の特質を有する。従って、送信装置はそれぞれの特質に対して特質符号化を行う。図面では送信装置が一つ又はそれ以上の特質圧縮(Attribute #1 compression、… Attribute #N compression)を行った例示を示している。また実施例による送信装置は追加圧縮(auxiliary compression)を行うことができる。追加圧縮はメタデータ(metadata)に対して行われる。メタデータに関する説明は
図1ないし
図14に説明した通りであるので省略する。また送信装置はメッシュデータ圧縮(Mesh data compression)を行うことができる。実施例によるメッシュデータ圧縮は
図1ないし
図14で説明したtrisoupジオメトリ符号化を含む。
【0188】
実施例による送信装置はポイントクラウド符号化により出力されたビットストリーム(例えば、ポイントクラウドストリーム)をファイル及び/又はセグメントにカプセル化する。実施例において、送信装置はメタデータ以外のデータ(例えば、メディアデータ)を運ぶメディアトラックカプセル化(media track encapsulation)を行い、メタデータを運ぶメタデータトラックカプセル化(metadata tracak encapsulation)を行う。実施例においてメタデータはメディアトラックにカプセル化される。
【0189】
図1ないし
図14に説明したように、送信装置は受信装置からフィードバック情報(オリエンテーション/ビューポートメタデータ)を受信し、受信したフィードバック情報に基づいてポイントクラウド符号化、ファイル/セグメントカプセル化及び送信動作のうちのいずれかを行う。具体的な説明は
図1ないし
図14に説明した通りであるので省略する。
【0190】
図16は実施例による受信装置の一例を示す図である。
【0191】
図16の受信装置はポイントクラウドコンテンツを受信する装置であり、
図1ないし
図14で説明した受信装置(例えば、
図1の受信装置10004、
図11のポイントクラウドデコーダ、
図13の受信装置、
図14の受信装置など)の例示に該当する。従って、
図16の受信装置は
図1ないし
図14で説明した受信装置の動作と同一又は類似する動作を行う。また
図16の受信装置は
図15の送信装置で送信した信号などを受け、
図15の送信装置の動作の逆過程を行うことができる。
【0192】
実施例による受信装置は受信(delivery)、ファイル/セグメントデカプセル化(file/segement decapsulation)、ポイントクラウド復号(point cloud decoding)及びポイントクラウドレンダリング(point cloud rendering)のうちのいずれか又はそれ以上を行う。
【0193】
図示されたポイントクラウド受信及びポイントクラウドレンダリング動作は
図1ないし
図14に説明した通りであるので具体的な説明は省略する。
【0194】
図1ないし
図14に説明したように、実施例による受信装置はネットワーク又は格納装置から得たファイル及び/又はセグメントに対してデカプセル化を行う。実施例において、受信装置はメタデータ以外のデータ(例えば、メディアデータ)を運ぶメディアトラックデカプセル化(media track decapsulation)を行い、メタデータを運ぶメタデータトラックデカプセル化(metadata tracak decapsulation)を行うことができる。実施例において、メタデータがメディアトラックにカプセル化された場合、メタデータトラックデカプセル化は省略される。
【0195】
図1ないし
図14に説明したように、受信装置はデカプセル化により確保したビットストリーム(例えば、ポイントクラウドストリーム)に対してジオメトリ復号及び特質復号を行う。実施例によるジオメトリ復号はジオメトリ復元(geometry decompression)とも呼ばれ、特質復号は特質復元(Attribute decompression)とも呼ばれる。上述したように、一つのポイントは一つのジオメトリと一つ又はそれ以上の特質を有し、それぞれ符号化される。従って、受信装置は各特質に対して特質復号を行う。図面では受信装置が一つ又はそれ以上の特質復元(Attribute #1 decompression、…ute #N decompression)を行った例示を示している。また実施例による受信装置は追加復元(auxiliary decompression)を行うことができる。追加復元はメタデータに対して行われる。メタデータに関する説明は
図1ないし
図14に説明した通りであるので省略する。また受信装置はメッシュデータ復元(Mesh data decompression)を行う。実施例によるメッシュデータ復元は
図1ないし
図14で説明したtrisoupジオメトリ復号を含む。実施例による受信装置はポイントクラウド復号によって出力されたポイントクラウドデータをレンダリングする。
【0196】
図1ないし
図14に説明したように、受信装置は別のセンシング/トラッキングエレメントなどを用いてオリエンテーション/ビューポートメタデータを確保し、それを含むフィードバック情報を送信装置(例えば、
図15の送信装置)に送信することができる。また受信装置はフィードバック情報に基づいて受信動作、ファイル/セグメントデカプセル化及びポイントクラウド復号のうちのいずれかを行うことができる。具体的な説明は
図1ないし
図14に説明した通りであるので省略する。
【0197】
図17は実施例によるポイントクラウドデータの送受信方法/装置に連動可能な構造の一例を示す図である。
【0198】
図17の構造はサーバー1760、ロボット1710、自律走行車両1720、XR装置1730、スマートフォン1740、家電1750及び/又はHMD1770のうちのいずれかがクラウドネットワーク1710に連結された構成を示している。ロボット1710、自律走行車両1720、XR装置1730、スマートフォン1740又は家電1750などは装置とも呼ばれる。またXR装置1730は実施例によるポイントクラウドデータ(PCC)装置に対応するか又はPCC装置に連動する。
【0199】
クラウドネットワーク1700はクラウドコンピューティングインフラの一部を構成するか、又はクラウドコンピューティングインフラ内に存在するネットワークを意味する。ここで、クラウドネットワーク1700は3Gネットワーク、4G又はLTEネットワーク又は5Gネットワークなどを用いて構成される。
【0200】
サーバー1760はロボット1710、自律走行車両1720、XR装置1730、スマートフォン1740、家電1750及び/又はHMD1770のいずれかにクラウドネットワーク1700により連結され、連結された装置1710~1770のプロセシングの少なくとも一部を助けることができる。
【0201】
HMD(Head-Mount Display)1770は実施例によるXRデバイス及び/又はPCCデバイスが具現されるタイプのうちのいずれかを示す。実施例によるHMDタイプのデバイスは、コミュニケーションズユニット、コントロールユニット、メモリユニット、I/Oユニット、センサユニット及びパーワ供給ユニットなどを含む。
【0202】
以下、上記技術が適用される装置1710~1750の様々な実施例について説明する。ここで、
図17に示した装置1710~1750は上述した実施例によるポイントクラウドデータ送受信装置に連動/結合することができる。
【0203】
<PCC+XR>
【0204】
XR/PCC装置1730はPCC及び/又はXR(AR+VR)技術が適用されて、HMD(Head-Mount Display)、車両に備えられたHUD(Head-Up Display)、TV、携帯電話、スマートフォン、コンピューター、ウェアラブルデバイス、家電機器、デジタル看板、車両、固定型ロボットや移動型ロボットなどに具現されることもできる。
【0205】
XR/PCC装置1730は、様々なセンサにより又は外部装置から獲得した3次元ポイントクラウドデータ又はイメージデータを分析して3次元ポイントに対する位置データ及び特質データを生成することにより周辺空間又は現実オブジェクトに関する情報を得て、出力するXR客体をレンダリングして出力することができる。例えば、XR/PCC装置1730は認識された物体に関する追加情報を含むXR客体を該当認識された物体に対応して出力することができる。
【0206】
<PCC+自立走行+XR>
【0207】
自律走行車両1720はPCC技術及びXR技術が適用されて、移動型ロボット、車両、無人飛行体などで具現される。
【0208】
XR/PCC技術が適用された自律走行車両1720は、XR映像を提供する手段を備えた自律走行車両やXR映像内での制御/相互作用の対象となる自律走行車両などを意味する。特に、XR映像内での制御/相互作用の対象となる自律走行車両1720はXR装置1730とは区分されて互いに連動されることができる。
【0209】
XR/PCC映像を提供する手段を備えた自律走行車両1720は、カメラを含むセンサからセンサ情報を得、得たセンサ情報に基づいて生成されたXR/PCC映像を出力する。例えば、自律走行車両1720はHUDを備えてXR/PCC映像を出力することにより、搭乗者に現実オブジェクト又は画面内のオブジェクトに対応するXR/PCC客体を提供することができる。
【0210】
この時、XR/PCC客体がHUDに出力される場合には、XR/PCC客体の少なくとも一部が搭乗者の視線が向く実際の客体にオーバーラップされるように出力される。反面、XR/PCC客体が自律走行車両内に備えられるディスプレイに出力される場合には、XR/PCC客体の少なくとも一部が画面内の客体にオーバーラップされるように出力される。例えば、自律走行車両1220は車路、他の車両、信号灯、交通表示板、二輪車、歩行者、建物などのような客体に対応するXR/PCC客体を出力することができる。
【0211】
実施例によるVR(Virtual Reality)技術、AR(Augmented Reality)技術、MR(Mixed Reality)技術及び/又はPCC(Point Cloud Compression)技術は、様々なデバイスに適用可能である。
【0212】
即ち、VR技術は現実の客体や背景などをCG映像のみで提供するディスプレイ技術である。反面、AR技術は実際物事の映像上に仮想のCG映像を共に見せる技術である。また、MR技術は現実世界に仮想客体を混ぜて見せるという点では上記AR技術と類似する。しかし、AR技術では現実の客体とCG映像からなる仮想の客体の区別が明らかであり、現実客体を補完する形態で仮想の客体を使用する反面、MR技術では仮想の客体と現実の客体が同様の性格と見なされるという点でAR技術とは区別される。より具体的には、例えば、上記MR技術が適用されたことがホログラムサービスである。
【0213】
但し、最近にはVR、AR、MR技術を明確に区別するよりは、XR(extended Reality)技術とも呼ぶ。よって、本発明の実施例はVR、AR、MR、XR技術のいずれにも適用可能である。かかる技術はPCC、V-PCC、G-PCC技術基盤の符号化/復号が適用される。
【0214】
実施例によるPCC方法/装置は自律走行サービスを提供する車両に適用できる。
【0215】
自律走行サービスを提供する車両はPCCデバイスと有無線通信可能に連結される。
【0216】
実施例によるポイントクラウドデータ(PCC)送受信装置は、車両と有無線通信可能に連結された場合、自律走行サービスと共に提供できるAR/VR/PCCサービス関連コンテンツデータを受信/処理して車両に送信することができる。またポイントクラウドデータ送受信装置車両に搭載された場合は、ポイントクラウド送受信装置はユーザインターフェース装置で入力されたユーザ入力信号によってAR/VR/PCCサービス関連コンテンツデータを受信/処理してユーザに提供することができる。実施例による車両又はユーザインターフェース装置はユーザ入力信号を受信する。実施例によるユーザ入力信号は自律走行サービスを指示する信号を含む。
【0217】
図18はポイントクラウドエンコーダの一例を示すブロック図である。
【0218】
実施例によるポイントクラウドエンコーダ1800(例えば、
図1のポイントクラウドビデオエンコーダ10002、
図4のポイントクラウドエンコーダ、
図12、
図14及び
図15で説明したポイントクラウドエンコーダなど)は、
図1ないし
図17で説明した符号化動作を行う。実施例によるポイントクラウドエンコーダ1800は空間分割部1810、ジオメトリ情報符号化部1820及び属性情報符号化部(又は特質情報符号化部)1830を含む。実施例によるポイントクラウドエンコーダ1800は、
図18に示していないが、
図1ないし
図17で説明した符号化動作を行うための一つ又はそれ以上のエレメントさらに含む。
【0219】
ポイントクラウド圧縮(Point Cloud Compression、PCC)データ(又はPCCデータ、ポイントクラウドデータ)はポイントクラウドエンコーダ1800の入力データであって、ジオメトリ及び/又は特質を含む。実施例によるジオメトリはポイントの位置(例えば、ポジション)を示す情報であって、直交座標系、円筒座標系、球面座標系などの座標系のパラメータで表現される。実施例によれば、ジオメトリはジオメトリ情報と呼ばれ、特質は特質情報と呼ばれる。
【0220】
実施例による空間分割部1810はポイントクラウドデータのジオメトリ及び特質を生成する。実施例による空間分割部1810はポイントクラウドデータのポイント情報を格納するために、ポイントクラウドデータを3次元空間上の一つ又はそれ以上の3次元ブロック(block)に分割する。実施例によるブロックは、タイルグループ(Tile Group)、タイル(Tile)、スライス(Slice)、符号化単位(Coding Unit、CU)、予測単位(Prediction Unit、PU)及び変換単位(Transformation Unit、TU)のうちのいずれかを示す。実施例による空間分割部1810は、八分木(Octree)、四分木(Quadtree)、二分木(Biniary tree)、三分木(Triple tree)、k-dツリーのうちのいずれかに基づく分割動作を行う。一つのブロックは一つ又はそれ以上のポイントを含む。実施例によるブロックは所定の横長さ、縦長さ及び高さの値を有する六面体形状のブロックである。実施例によるブロックのサイズは変更可能であり、上述した例示に限られない。実施例による空間分割部1810はブロックに含まれた一つ又はそれ以上のポイントに関するジオメトリ情報を生成する。
【0221】
実施例によるジオメトリ情報符号化部1820(又はジオメトリ情報エンコーダ)は、ジオメトリ符号化を行い、ジオメトリビットストリーム及び復元されたジオメトリ情報を生成する。実施例によるジオメトリ符号化では、復元されたジオメトリ情報が特質情報符号化部(又は特質エンコーダ)1830に入力される。実施例によるジオメトリ情報符号化部1820は、
図4で説明した座標系変換部40000、量子化40001、八分木分析部40002、表面近似分析部40003、演算エンコーダ40004及びジオメトリ再構成部(Reconstruct Geometry)40005の動作のうちのいずれかを行う。また実施例によるジオメトリ情報符号化部1820は、
図12で説明したデータ入力部12000、量子化処理部12001、ボクセル化処理部12002、八分木占有コード生成部12003、表面モデル処理部12004、イントラ/インターコーディング処理部12005、演算コーダー12006及びメタデータ処理部12007の動作のうちのいずれかを行う。
【0222】
実施例による特質情報符号化部1830は復元されたジオメトリ情報及び特質に基づいて特質情報ビットストリーム(又は特質ビットストリーム)を生成する。
【0223】
実施例によるポイントクラウドエンコーダは、ジオメトリ情報ビットストリーム及び特質情報ビットストリーム又はジオメトリ情報ビットストリーム及び特質情報ビットストリームが多重化されたビットストリームを送信する。上述したように、ビットストリームはジオメトリ情報及び特質情報に連関するシグナリング情報、座標系変換に関連するシグナリング情報などをさらに含む。また実施例によるポイントクラウドエンコーダは、ビットストリームをカプセル化(encapsulation)してセグメント及び/又はファイルなどの形態で送信する。
【0224】
図19はジオメトリ情報エンコーダの一例を示すブロック図である。
【0225】
実施例によるジオメトリ情報エンコーダ1900(又はジオメトリエンコーダ)は
図18のジオメトリ情報符号化部1820の一例であって、ジオメトリ符号化を行う。実施例によるジオメトリ符号化は、
図1ないし
図18で説明したジオメトリ符号化と同一又は類似するので、具体的な説明は省略する。図示したように、ジオメトリ情報エンコーダ1900は座標系変換部1910、ジオメトリ情報変換量子化部1920、残差ジオメトリ情報量子化部1930、ジオメトリ情報エントロピー符号化部1940、残差ジオメトリ情報逆量子化部1950、フィルタリング部1960、メモリ1970及びジオメトリ情報予測部1980を含む。実施例によるジオメトリ情報エンコーダ1900は、
図19に示していないが、
図1ないし
図18で説明したジオメトリ符号化を行うための一つ又はそれ以上のエレメントをさらに含む。
【0226】
実施例による座標系変換部1910は、入力されたジオメトリ情報が示すそれぞれのポイントの位置を3次元空間上の位置で表現するために、受信したジオメトリ情報を座標系上の情報に変換する。座標系変換部1910は
図4で説明した座標系変換部40000の動作と同一又は類似する動作を行う。実施例による座標系は上述した3次元直交座標系、円筒座標系、球面座標系などを含むが、これらに限られない。実施例による座標系変換部1910は設定された座標系を他の座標系に変換可能である。
【0227】
実施例による座標系変換部1910はシーケンス、フレーム、タイル、スライス、ブロックなどの単位に対して座標系変換を行うことができる。実施例による座標系変換の有無及び座標系及び/又は変換に関連する情報は、シーケンス、フレーム、タイル、スライス、ブロックなどの単位でシグナリングされる。従って、実施例によるポイントクラウドデータ受信装置は、周辺ブロックの座標系変換有無、ブロックのサイズ、ポイントの個数、量子化値、ブロック分割深さ、単位の位置、単位と原点との距離などに基づいて座標系及び/又は変換に関連する情報を確保することができる。
【0228】
実施例によるジオメトリ情報変換量子化部1920は、座標系に表現されたジオメトリ情報を量子化して変換量子化されたジオメトリ情報を生成する。実施例によるジオメトリ情報変換量子化部1920は、座標系変換部1910で出力されたジオメトリ情報が示すポイントの位置に対して位置変換及び/又は回転変換などの一つ又はそれ以上の変換を適用し、変換されたジオメトリ情報を量子化値に割って量子化を行う。ジオメトリ情報変換量子化部1920は
図4の量子化部40001及び/又は
図12の量子化処理部12001の動作と同一又は類似する動作を行う。実施例による量子化値は符号化単位(例えば、タイル、スライスなど)と座標系の原点との距離又は基準方向からの角度などに基づいて可変する。実施例による量子化値は予め設定された値である。
【0229】
実施例によるジオメトリ情報予測部1930は周辺符号化単位の量子化値に基づいて予測値(又は予測ジオメトリ情報)を算出する。
【0230】
残差ジオメトリ情報量子化部1940は変換量子化されたジオメトリ情報及び予測値を差分した残差ジオメトリ情報を受信し、残差ジオメトリ情報を量子化値に量子化して量子化された残差ジオメトリ情報を生成する。
【0231】
ジオメトリ情報エントロピー符号化部1950は量子化された残差ジオメトリ情報をエントロピー符号化する。実施例によるエントロピー符号化は指数ゴロム(Exponential Golomb)、CAVLC(Context-Adaptive Variable Length Coding)及びCABAC(Context-Adaptive Binary Arithmetic Coding)などを含む。
【0232】
残差ジオメトリ情報逆量子化部1960は量子化されたジオメトリ情報を量子化値にスケーリングして残差ジオメトリ情報を復元する。復元された残差ジオメトリ情報と予測ジオメトリ情報が合算されて、復元されたジオメトリ情報として生成される。
【0233】
フィルタリング部1970は復元されたジオメトリ情報をフィルタリングする。実施例によるフィルタリング部1970は、デブロッキングフィルタ部、オフセット補正部などを含む。互いに異なる二つの符号化単位が異なる座標系変換されたジオメトリ情報に対して、実施例によるフィルタリング部1970は二つの符号化単位の境界に更なるフィルタリングを行うことができる。
【0234】
メモリ1980は復元されたジオメトリ情報(又は復元ジオメトリ情報)を格納する。格納されたジオメトリ情報はジオメトリ情報予測部1930に提供される。また、メモリに格納された復元ジオメトリ情報は
図18で説明した特質情報符号化部1830に提供される。
【0235】
図20は実施例による特質情報エンコーダの一例を示す。
【0236】
図20に示した特質情報エンコーダ2000は
図18で説明した特質情報符号化部1830の一例であって、特質符号化を行う。実施例による特質符号化は、
図1ないし
図17で説明した特質符号化と同一又は類似するので、具体的な説明は省略する。図示したように、実施例による特質情報エンコーダ2000は特質特性変換部2010、ジオメトリ情報マッピング部2020、特質情報変換部2030、特質情報量子化部2040及び特質情報エントロピー符号化部2050を含む。
【0237】
実施例による特質特性変換部2010は特質情報を受信し、受信した特質情報の特性(例えば、色など)を変換する。例えば、特質情報が色相情報を含む場合、特質特性変換部2010は特質情報の色空間を変換することができる(例えば、RGBからYCbCr)。また特質特性変換部2010は選択的に特質情報の特性を変換しなくてもよい。特質特性変換部2010は特質変換部40007、及び/又は色相変換処理部12008の動作と同一又は類似する動作を行う。
【0238】
実施例によるジオメトリ情報マッピング部2020は、特質特性変換部2010で出力された特質情報と受信した復元ジオメトリ情報をマッピングして再構成された特質情報を生成する。ジオメトリ情報マッピング部2020は、復元ジオメトリ情報に基づいて一つ又はそれ以上のポイントの特質情報を再構成した特質情報を生成する。上述したように、一つのボクセルに含まれた一つ又はそれ以上のポイントのジオメトリ情報はボクセルの中央値を中心として再構成される。特質情報はジオメトリ情報に従属しているので、ジオメトリ情報マッピング部2020は復元ジオメトリ情報に基づいて特質情報を再構成する。ジオメトリ情報マッピング部2020は属性変換処理部12009の動作と同一又は類似する動作を行う。
【0239】
実施例による特質情報変換部2030は再構成された特質情報を受信して変換することができる。実施例による特質情報変換部2030は特質情報を予測して受信した再構成された特質情報と予測特質情報の間の残差に対応して残差特質情報を一つ又はそれ以上の変換タイプ(例えば、DCT、DST、SADCT、RAHT)を使用して変換する。
【0240】
実施例による特質情報量子化部2040は変換された残差特質情報を受信して量子化値に基づいて変換量子化された残差特質情報を生成する。
【0241】
実施例による特質情報エントロピー符号化部2050には変換量子化された残差特質情報が入力されてエントロピー符号化が行われ、特質情報ビットストリームが出力される。実施例によるエントロピー符号化は指数ゴロム(Exponential Golomb)、CAVLC(Context-Adaptive Variable Length Coding)及びCABAC(Context-Adaptive Binary Arithmetic Coding)のうちのいずれかを含み、上述した実施例に限られない。特質情報エントロピー符号化部2050は演算コーダー12011の動作と同一又は類似する動作を行う。
【0242】
図21は実施例による特質情報エンコーダの一例を示す。
【0243】
図21に示す特質情報エンコーダ2100は
図18で説明した特質情報符号化部1830及び
図20で説明した特質情報エンコーダ2000の一例に該当する。実施例による特質情報エンコーダ2100は、特質特性変換部2110、ジオメトリ情報マッピング部2120、特質情報予測部2130、残差特質情報変換部2140、残差特質情報逆変換部2145、残差特質情報量子化部2150、残差特質情報逆量子化部2155、フィルタリング部2160、メモリ2170及び特質情報エントロピー符号化部2180を含む。
図21に示す特質情報エンコーダ2100は、残差特質情報変換部2140、残差特質情報逆変換部2145、残差特質情報量子化部2150、残差特質情報逆量子化部2155、フィルタリング部2160及びメモリ2170をさらに含むという点で、
図20に示した特質情報エンコーダ2000とは差がある。
【0244】
実施例による特質特性変換部2110及びジオメトリ情報マッピング部2120は、
図20で説明した特質特性変換部2010及びジオメトリ情報マッピング部2020の動作と同一又は類似する動作を行う。実施例による特質情報予測部2130は予測特質情報を生成する。残差特質情報変換部2140はジオメトリ情報マッピング部2120で出力された再構成特質情報と予測特質情報を差分して生成された残差特質情報を受信する。残差特質情報変換部2140は受信した残差特質情報を含む残差3次元ブロックを一つ又はそれ以上の変換タイプ(例えば、Predictive Transform、Lifting Transform、DCT、DST、SADCT、RAHTなど)に変換する。
【0245】
実施例による残差特質情報量子化部2150は、入力された変換残差特質情報を量子化値に基づいて変換する。変換された残差特質情報は残差特質情報逆量子化部2155に入力される。実施例による残差特質情報逆量子化部2155は変換量子化された残差特質情報を量子化値に基づいて変換して変換残差特質情報を生成する。残差特質情報逆量子化部2155で生成された変換残差特質情報は残差特質逆変換部2145に入力される。実施例による残差特質逆変換部2145は変換残差特質情報を含む残差3次元ブロックを一つ又はそれ以上の変換タイプ(例えば、Predictive Transform、Lifting Transform、DCT、DST、SADCT、RAHTなど)を使用して逆変換する。実施例による復元特質情報は逆変換された残差特質情報及び特質情報予測部2130で出力された予測特質情報の結合により生成される。実施例による復元特質情報は逆変換されていない残差特質情報及び予測特質情報の結合により生成される。復元特質情報はフィルタリング部2160に入力される。実施例による特質情報予測部2130、残差特質情報変換部2140及び/又は残差特質情報量子化部2150は予測/リフト/RAHT変換処理部12010の動作と同一又は類似する動作を行う。
【0246】
実施例によるフィルタリング部2160は復元特質情報をフィルタリングする。実施例によるフィルタリング部2160はデブロッキングフィルタ、オフセット補正部、ALF(Adaptive Loop Filter)などを含む。フィルタリング部2160は
図19のフィルタリング部1970の動作と同一又は類似する動作を行う。
【0247】
実施例によるメモリ2170はフィルタリング部2160から出力された復元特質情報を格納する。格納された復元特質情報は特質情報予測部2130の予測動作の入力データとして提供される。特質情報予測部2130はポイントの復元特質情報に基づいて予測特質情報を生成する。図面において、メモリ2170は一つのブロックで示されているが、一つ又はそれ以上の物理的なメモリで構成されることができる。実施例による特質情報エントロピー符号化部2180は
図20で説明した特質情報エントロピー符号化部2050の動作と同一又は類似する動作を行う。
【0248】
【0249】
図22に示した特質情報予測部2200は
図21で説明した特質情報予測部2130の一例に該当する。特質情報予測部2200は特質情報予測部2130の動作と同一又は類似する動作を行う。実施例による特質情報予測部2200はLOD構成部2210及び隣接ポイント集合構成部2220を含む。LOD構成部2210はLOD生成部40009と同一又は類似する動作を行う。即ち、図示したように、LOD構成部2210は特質及び復元されたジオメトリを受信し、受信した特質及び復元されたジオメトリに基づいて一つ又はそれ以上のLODを構成する。
図4及び
図8で説明したように、LODは3次元空間に分布したポイントを改良レベル(refinement levels)のセットで再整列して生成される。実施例によるLODは一定間隔で分布する一つ又はそれ以上のポイントを含む。上述したように、実施例によるLODはポイントクラウドコンテンツの詳細(detail)を示す程度である。従って、LOD(又はLOD値)が示すレベルが低いほど、ポイントクラウドコンテンツの詳細が落ち、LODが示すレベルが高いほどポイントクラウドコンテンツの詳細が高いことを示す。即ち、高いレベルを示すLODはより短い間隔で分布するポイントを含む。実施例によるポイントクラウドエンコーダ(例えば、
図4のポイントクラウドエンコーダ)及びポイントクラウドデコーダ(例えば、
図11のポイントクラウドデコーダ)は特質圧縮率を高めるためにLODを生成することができる。類似する特質を有するポイントは対象ポイントの隣接にある確率が高いので、類似する属性を有する隣接ポイントによる予測特質と対象ポイントの特質間の残差値は0に近い確率が高いためである。従って、実施例によるポイントクラウドエンコーダ及びポイントクラウドデコーダは、特質の予測時に使用可能な適切な隣接ポイントを選択するためにLODを生成することができる。
【0250】
実施例によるLOD構成部2210は一つ又はそれ以上の方式を用いてLODを構成する。上述したように、ポイントクラウドデコーダ(例えば、
図10及び
図11で説明したポイントクラウドデコーダなど)もLODを生成しなければならない。よって、実施例によるLOD構成方式(又はLOD生成方式)に関連する情報又はLOD構成方式情報は、符号化されたポイントクラウドビデオデータを含むビットストリームにより受信装置(例えば、
図1の受信装置10004又は
図10及び
図11のポイントクラウドデコーダなど)に送信される。従って、受信装置はLOD構成方式情報に基づいてLODを生成することができる。
【0251】
実施例による隣接ポイント集合構成部2220は、それぞれのLOD(又はLOD集合)が生成されると、LODl集合のポイントの一つ又はそれ以上の隣接ポイントをサーチ(search)又は検索する。一つ又はそれ以上の隣接ポイントの個数はXと表現され、Xは0より大きい整数である。実施例による隣接ポイントは、3次元空間においてLODl集合のポイントから最も近いところに位置する隣接(Nearest Neighbor、NN)ポイントであって、対象LOD(例えば、LODl)と同じLODに含まれるか、又は対象LODよりもLODレベルが低いLOD集合(例えば、LODl-1、LODl-2、...、LOD0)に含まれる。実施例による隣接ポイント集合構成部2220は、サーチされた一つ又はそれ以上の隣接ポイントを予測器に隣接ポイント集合として登録することができる。実施例による隣接ポイントの個数は隣接ポイントの最大の個数であって、ユーザの入力信号により設定されるか、又は隣接ポイントサーチ方式によって特定の値に予め設定される。
【0252】
実施例による隣接ポイント集合構成部2220は、
図9に示したLOD1に属するポイントP3の隣接ポイントをLOD
0及びLOD
1でサーチすることができる。
図9に示したように、LOD0はP0、P5、P4及びP2を含む。LOD
2はLOD
0のポイント、LOD
1のポイント及びP9、P8及びP7を含む。隣接ポイントの個数Xが3である場合、隣接ポイント集合構成部2220は、
図9の上側に示した3次元空間においてP3に最も近い3つの隣接ポイントをLOD
0又はLOD
1に属するポイントからサーチする。即ち、隣接ポイント集合構成部2220は、同じLODレベルであるLOD
1に属するP6及びLODレベルが低いLOD
0に属するP2及びP4をP3の隣接ポイントとしてサーチすることができる。3次元空間において、P7はP3に近いポイントであるが、LODレベルがより高いので、隣接ポイントとしてサーチされない。隣接ポイント集合構成部2220はサーチした隣接ポイント(P2、P4、P6)をP3の予測器に隣接ポイント集合として登録する。実施例による隣接ポイント集合生成方法はこの例示に限られない。また実施例による隣接ポイント集合生成方法に関する情報(以下、隣接ポイント集合生成情報)は、上述した符号化されたポイントクラウドビデオデータを含むビットストリームに含まれて受信装置(例えば、
図1の受信装置10004又は
図10及び
図11のポイントクラウドデコーダなど)に送信される。
【0253】
上述したように、全てのポイントは一つの予測器(predictor)を有する。実施例によるポイントクラウドエンコーダは予測器を適用して該当ポイントの特質値を符号化して、予測特質(又は予測特質値)を生成する。実施例による予測器はLOD生成後にサーチされた隣接ポイントに基づいて生成される。予測器は対象ポイントの特質を予測するために使用される。従って、予測器は隣接ポイントの特質に加重値を適用して予測特質を生成することができる。
【0254】
例えば、予測器は隣接ポイント集合に対して対象ポイント(例えば、P3)とそれぞれの隣接ポイントとの距離値に基づいて(例えば、1/2距離)、加重値(weight)を計算及び登録する。上述したように、P3の隣接ポイント集合はP2、P4及びP6であるので、実施例によるポイントクラウドエンコーダ(又は予測器)はP3とそれぞれの隣接ポイントの間の距離値に基づいて加重値を計算する。よって、それぞれの隣接ポイントの加重値
のように表現される。実施例によるポイントクラウドエンコーダは予測器の隣接ポイント集合が設定されると、隣接ポイントの加重値全体の合計で隣接ポイントの加重値を正規化する(normalize)。例えば、P3ノードの隣接ポイント集合内の全ての隣接ポイントの加重値を加えた値は以下のように表現される。
。さらに加重値の合計(total_weight)をそれぞれの隣接ポイントの加重値で割って生成された正規化された加重値は以下のように表現される。
。
【0255】
実施例によるポイントクラウドエンコーダ(又は特質情報予測部)は、予測器により特質を予測する。実施例による予測特質(又は予測特質情報)は、
図9で説明したように、登録された隣接ポイントの特質に計算した加重値を乗じた値の平均値であるか、又は特定のポイントの特質に加重値を乗じた値である。実施例において、ポイントクラウドエンコーダは圧縮された結果値を予め計算した後、上述した特質値のうち、最も小さいストリームを生成できる予測特質値(最も圧縮の効率が高い予測特質値)を選択的に使用する。なお、特質を予測する方法は上記の例示に限られない。
【0256】
実施例によるポイントクラウドエンコーダ(例えば、係数量子化部40011など)は、ポイントの特質値、予測特質値の残差及び選択された予測特質に関する情報(又は予測特質を選択した方法に関する情報)を符号化して、受信装置(例えば、
図1の受信装置10004又は
図10及び
図11のポイントクラウドデコーダなど)に伝達する。実施例による受信装置は、送信装置で行ったLOD生成、隣接ポイント集合の生成、隣接ポイントの加重値正規化、特質予測と同じプロセスを行う。受信装置は選択された予測特質に関する情報に基づいて送信装置で行われた方法と同じ方法で特質を予測する。受信装置は受信した残差値を復号し、予測特質値に復号した残差値を加えて特質値を復元する。
【0257】
上述したように、実施例によるLOD構成部2210は一つ又はそれ以上の様々なLOD生成方法に基づいてLODを生成する。
【0258】
実施例によるLOD構成部2210は距離に基づいてLODを生成する(距離基盤のLOD生成方式)。LOD構成部2210はそれぞれのLODごとに少なくとも2つのポイント間の距離(例えば、ユークリッド距離)を設定し、3次元空間に分布した全てのポイントの間の距離を計算して、計算結果に基づいてLODを生成する。上述したように、それぞれのLODはLODが示すレベルによって一定間隔で分布するポイントを含む。従って、LOD構成部2210は全てのポイントの間の距離を計算しなければならない。即ち、ポイントクラウドエンコーダ及びポイントクラウドデコーダは、LODを生成するたびに全てのポイントの間の距離を計算しなければならないので、ポイントクラウドデータを距離する過程で不要な負担(burden)をかける。しかし、ポイントクラウドコンテンツの密集度(density)が高い場合は、密集したポイントはジオメトリ基盤の隣接性(geometry-based nearby relationship)が高いので、類似する特質を有する確率が高い。従って、実施例によるLOD構成部2210は、密集度の高いポイントクラウドコンテンツに対してポイントの間の距離を計算してLODを生成することができる。
【0259】
また、実施例によるLOD構成部2210は、ポイントのモールトンコードに基づいてLODを構成することができる(モールトンオーダーに基づくサンプリングLOD生成方式)。上述したように、モールトンコードは全てのポイントの3次元位置を示す座標値(例えば、(x、y、z))をビット値で示し、ビットを混合して生成される。
【0260】
実施例によるLOD構成部2210は復元されたジオメトリに基づいて各ポイントのモールトンコードを生成し、モールトンコードに基づいてポイントの昇順に整列する。モールトンコードの昇順に整列されたポイントの順をモールトンオーダー(Morton order)という。LOD構成部2210はモールトンオーダーに整列されたポイントに対してサンプリングを行ってLODを構成する。実施例によるLOD構成部2210は様々な方式でサンプリングを行うことができる。例えば、実施例によるLOD構成部2210はノードに対応する各領域に含まれたポイントのモールトンオーダーによって順にサンプリングレートのギャップに基づいてポイントを選択する。実施例によるサンプリングレート(例えば、klと表現)はポイントクラウドの分布度、ポイントクラウドコンテンツによって自動に変更されるか、又はユーザの入力によって変更される。また実施例によるサンプリングレートは固定値を有する。LOD構成部2210はモールトンオーダーによって最初に整列されたポイント(0番目のポイント)からサンプリングレート(例えば、5)だけ離れた位置に整列されたポイント(例えば、サンプリングレートが5である場合、1番目のポイントから5番目のポイント)を選択し、残りのポイントについても5個ごとのポイントのうち、一つを選択して(例えば、5番目のポイントから5番目に位置するポイント)選択されたポイントを現在のLOD(例えば、LODl)より小さいLOD(LODl-1)に分類する。従って、LOD構成部2210は全てのポイント間の距離を計算しなくても、LODを構成することができる。即ち、ポイントクラウドエンコーダ及びポイントクラウドデコーダは、LODを生成する度に全てのポイント間の距離を計算しなくてもよいので、より迅速にポイントクラウドデータを処理することができる。また実施例によるLOD構成部2210はLODごとに異なるサンプリングを行うことができる。
【0261】
しかし、ポイントクラウドコンテンツの密集度(density)が低い場合は、ポイント間のジオメトリ基盤の隣接性(geometry-based nearby relationship)が低いので、分布したポイントが類似する特質を有する確率が低い。よって、特質情報符号化及び復号の正確度を上げるために、実施例によるLOD構成部2210は固定サンプリング範囲(sampling range)、八分木基盤の固定サンプリング範囲及び八分木基盤の動的サンプリング範囲のうちのいずれかに基づいてサンプリングを行ってLODを生成する。実施例によるサンプリング範囲及びサンプリングに関する情報は、上述したLOD構成方式(又はLOD生成方式)情報に含まれて符号化されたポイントクラウドビデオデータを含むビットストリームにより受信装置(例えば、
図1の受信装置10004又は
図10及び
図11のポイントクラウドデコーダなど)に送信される。従って、受信装置はLOD構成方式情報に基づいてLODを生成することができる。
【0262】
実施例によるLOD構成部2210は固定サンプリング範囲に基づいてサンプリングを行う。実施例によるサンプリングレートはポイントクラウドの密集度によって3次元空間の領域ごとに異なる。また実施例によるサンプリングレートはLODごとに異なる。実施例によるサンプリング範囲は固定される。
【0263】
【0264】
図23はLOD生成過程の例示を示す(2300)。
図23は実施例によるサンプリングレート(例えば、k
lと表現)が4である場合の固定サンプリング範囲基盤のLOD生成過程を示す。実施例による固定サンプリング範囲に関する説明は
図22で説明した通りであるので省略する。実施例によるサンプリングレートはポイントクラウドの分布度、ユーザ入力などによって変更される。また実施例によるサンプリングレートは固定値を有する。
【0265】
図23の上側は3次元空間を分割して生成された2つの空間のそれぞれに含まれたポイントを示す。図示したように、1番目の空間23010は5つのポイントP0、P1、P5、P6及びP9を含み、2番目の空間2302は5つのポイントP2、P3、P4、P7及びP8を含む。
【0266】
図23の1番目のインデックス2310は3次元空間に分布する10つのポイントのオリジナルオーダー(original order)を示す。上述したように、LOD構成部(例えば、
図22のLOD構成部2210)は各ポイントのモールトンコードを計算し、計算されたモールトンコードに基づいて各ポイントを昇順(I
l)に整列する。
図23に示した2番目のインデックス2320は10つのポイントのモールトンオーダーを示す。実施例によるサンプリングレートは4であるので、サンプリングによってそれぞれ4つのポイントごとに選択されたポイントの例示2330、即ち、ポイントP5、P1及びP7を示す。選択されないポイントはLOD
lにのみ含まれる。
図23に示した3番目のインデックス2340はLOD
lにポイントのインデックスを示す。実施例によるLOD構成部はLOD
l-1を生成するために選択されたポイントP5、P1及びP7に対して再びサンプリング(又はサブサンプリング)を行う。
図23はサンプリングにより選択されたポイントの例示2350、即ち、P5を示す。選択されないポイント(例えば、P1、P7)はLOD
l-1にのみ含まれる。図示した4番目のインデックス2350はポイントが属するLOD順を示す。サンプリングの結果、LOD
0はP5を含み、LOD
1はポイントP5、P1及びP7を含み、LOD
2は全体ポイントを含む2360。
【0267】
図24は実施例によるモールトンコード基盤のサンプリング過程の一例を示す。
【0268】
図24の左側は3次元空間が分割された一つの空間内のポイントのモールトンオーダーを示す(2400)。上述したように、実施例によるLOD構成部(例えば、LOD構成部2210)は、各ポイントのモールトンコードを計算し、計算されたモールトンコードに基づいて各ポイントを昇順に整列する。図示した番号はモールトンコードに基づいて昇順に整列したポイントのモールトンオーダーを示す。
図24の右側は3次元空間を分割して生成された複数の空間内のポイントのモールトンオーダーに対してサンプリングを行って生成されたLODの一例を示す(2410)。
図24の一例2410はサンプリングレートが4である一例である。座標系内に表現された点2415はサンプリング過程で選択されたポイントを示す。座標系内に表示された線2418はポイントを選択する過程を示す。上述したように、LOD構成部(例えば、LOD構成部2210)はモールトンオーダーに整列されたポイントに対してサンプリングを行ってLODを構成する。
図24に示すように、モールトンオーダーはジグザグ形態の線で表現される。即ち、モールトンオーダーによって整列されたポイント間の距離は一定ではない。またポイントは3次元領域(例えば、X軸、Y軸、Z軸で表現される3次元領域)において均一に分布していない。従って、モールトンオーダーに整列されたポイントに対してサンプリングを行っても、サンプリング結果がポイント間の距離の最小値及び最大値を保障できないので、隣接ポイント集合生成に影響を及ぼす。
【0269】
実施例によるLOD構成部は八分木基盤の固定サンプリング範囲に基づいてサンプリングを行う。実施例によるサンプリングレートは八分木の深さ(depth)ごとに異なる。実施例によるサンプリング範囲は固定している。
図5及び
図6で説明したように、実施例による八分木はポイントクラウドコンテンツの3次元空間を8等分に再帰的に分割して生成される。実施例による再帰的に分割された領域は、同一の体積を有する立方体又は直方体の形態を有する。実施例による八分木は一つの空間が分割されて発生する8つの分割された空間がそれぞれ少なくとも一つのポイントを含むか否かを示す占有コードを有する。占有コードは複数のノードを含み、各ノードは各分割された空間にポイントが存在するか否かを示す。例えば、分割された空間に少なくとも一つのポイントが含まれると、該当空間に対応するノードはポイントが存在することを示す(例えば、1値割り当て)。各ノードの深さは少なくとも一つのLODが示すレベルに対応する。
【0270】
各レベルに対応するノード領域はLOD内のポイント間の最大距離を保障する。実施例によるノード内のポイントから選択されたポイント間の最大距離はノードサイズであり、ノードとノードの間から選択されたポイント間の最大距離はノードサイズに制限される。よって、実施例によるサンプリングはポイント間の最大距離を一定に維持することができるので、LOD構成部はLOD生成の複雑度を下げ、圧縮効率が高いLODを生成することができる。
【0271】
また、実施例によるLOD構成部は、八分木基盤の動的サンプリング範囲(dynamic sampling ragne)に基づいてサンプリングを行う。実施例によるサンプリングレートはLODのレベル及び八分木の深さに基づいて設定される。また実施例によるサンプリング範囲は固定されず、LODのレベル及びモールトンコード値に基づいて計算される。実施例によるLOD構成部はサンプリングのために毎サンプリングレート値に対応する個数のポイントをグルーピング(選択)せず、八分木に基づいてサンプリングのためのポイントをグルーピングする。八分木構造において、同じ親ノードに属するポイントは互いに隣接することが明らかである。よって、実施例によるLOD構成部は、選択されたポイントが実際隣接しているか否かを確認するために、ポイント間の距離をさらに計算する必要がない。また実施例によるLOD構成部は、八分木の占有コードのノードの割り当て(occupy)有無に基づいて、ポイントクラウドコンテンツの密集度を確認し、密集度に基づいてサンプリングのためのポイントを選択する。例えば、ノードが全て割り当てられていると、各ノードが示す領域内のポイントの密集度が高いことを示し、ノードが使用されないと、ポイントの密集度が低いことを示す。密集度が高いポイントは特質の類似度が高いので、LOD構成部はサンプリングのために密集度の低いポイントよりも少ない数のポイントを選択する。
【0272】
実施例による固定サンプリング範囲に基づいて、サンプリングはポイントの密集度に関係なく、サンプリングレート値によって繰り返して同数のポイントを選択する過程を含む。反復的なポイント選択過程はLOD生成過程において不要な負担になる。
【0273】
【0274】
図25は八分木基盤の動的サンプリング範囲に基づいてLODを生成する過程の例示である(2500)。実施例による八分木基盤の動的サンプリング範囲は、
図24で説明した通りであるので、具体的な説明は省略する。実施例による八分木基盤の動的サンプリング範囲は八分木内の同じ親ノードを有する子ポイントに基づいて設定される。
【0275】
実施例によるLODの最大レベルはlmaxと表現される。上述したように、ポイントクラウドコンテンツの密度は異なるので、LODの最大レベルの設定はポイントクラウドコンテンツごとに異なる。よって、実施例による各ポイントクラウドコンテンツは最大レベルのLODのために等しいか又は異なる八分木深さを有する。実施例による八分木の深さはdと表現される。実施例によるLOD最大レベルは八分木の深さよりも小さい
【0276】
実施例によるLOD(例えば、LODl)の最大サンプリングレートは以下のように表現される。
【0277】
【0278】
kは最大サンプリングレートを示す。実施例によるLOD構成部はポイントクラウドコンテンツのポイント密集度によってサンプリング比率を変更することができる。よって、上記数式1は八分木の深さレベル(例えば、d-1レベル)で行われるサンプリングを示す。ポイントが密集した場合、d-1レベルのノードが全て割り当てられる可能性が高いためである。しかし、ポイントクラウドコンテンツによって密集度が異なるので、実施例によるLOD構成部は八分木の占有コードの特定の深さでLODを構成するための値を設定することができる。実施例によるLOD(例えば、LODl)の最大サンプリングレートは次のように表現される。
【0279】
【0280】
Xは八分木の特定の深さでLODを構成するための値であり、0より大きい値を有する。実施例によるXはポイントクラウドコンテンツごとに異なるように設定される。
【0281】
図25に示す例示2500では、Xが3である場合とXが1である場合のサンプリングが行われるノードが示されている。実施例によるLOD構成部は、X値が3である場合、深さ3に対応するノード2510からサンプリングを行う(例えば、LOD値は0)。実施例によるLOD構成部は、X値が1である場合は、深さ1に対応するノード2520からサンプリングを行う。実施例による子ノードの個数はpow(8,x)2530のように表現される。
【0282】
実施例による(各)LODごとのサンプリング範囲は以下のように表現される。
【0283】
【0284】
P
i.mcはi番目のポイントのモールトンコード値を示す。実施例によるサンプリング範囲は、八分木の占有コードで同じ上位親ノードを有するモールトンコード範囲に限定される。例えば、LODのレベルが最大レベルであり、モールトンオーダーに並べたポイントのうち、モールトンコードが2であるポイントに対するサンプリング範囲は、モールトンコード0から7までのポイントを含む範囲に設定される(各深さで占有コードは8つのノードを有するので)。実施例によるLOD構成部は、ポイントのモールトンコード値がサンプリング範囲の最大値(例えば、
)より大きい場合は、次のサンプリング範囲を再度計算する。
【0285】
よって、ポイントを八分木構造で構成した場合、LOD0の最大サンプリング比率は8(80+1=8)になる。LOD0のサンプリング範囲はモールトンコード0~7、8~15、16~23…になる。実施例によるLOD1の最大サンプリング比率は64(81+1=64)であり、LOD1のサンプリング範囲は0~63、64~127、128~192…になる。
【0286】
実施例によるLOD構成部(例えば、
図22のLOD構成部2210)はサンプリング範囲内のポイントから一つを選択し、選択したポイントを現在のLOD(例えば、LOD
l)のレベルより低いレベルのLOD(例えば、LOD
(0~-l-1))に分類し、残りの選択されないポイントは現在のLODに登録する。
【0287】
実施例によるLOD構成部は特質予測コーディングのために良好な隣接ノード集合を生成し、圧縮効率を高めるために、一つ又はそれ以上の方法に基づいてポイントを選択する。
【0288】
例えば、実施例によるLOD構成部はサンプリング範囲内でN番目のポイントを選択する。実施例によるN値はユーザ入力信号によって設定される。また実施例によるN値はRDO(Rate Distortion Optimization)方式に基づいて設定される。
【0289】
実施例によるLOD構成部はサンプリング範囲に属するポイントの中間値(mean)又は中間モールトンコード値に最も近いモールトンコードを有するポイントを選択する。モールトンコード値が類似するほどポイント間の距離が近い確率が高い。同じサンプリング範囲内に属するポイントの中間モールトンコード値に最も近いモールトンコードを有するポイントは、該当サンプリング範囲に属するポイントを代表する特質(例えば、色、反射値など)を有するか又は該当サンプリング範囲に属するポイントに相対的に大きい影響を及ぼす特質を有する可能性が高いためである。特に、周辺値を代表するポイントが隣接ノード集合として選択されると、圧縮効率を高めることができる。また実施例によるLOD構成部は中間モールトンコード値を基準として整列されたポイント順のうち、N番目のポイントを選択する。実施例によるNは予め設定された値である。もし設定されたN値がない場合、実施例によるLOD構成部は整列されたポイント順のうち、0番目のポイントを選択する。
【0290】
実施例によるLOD構成部はサンプリング範囲に属するポイントのうち、中間インデックス(index)値に対応するポイントを選択する。実施例による中間インデックス値は該当領域の中間値である確率が高い。従って、LOD構成部は追加計算過程を行わず、高い圧縮効率を有する早いデータ処理を行うことができる。実施例による中間インデックス値及び中間値は同じ意味を有する他の用語に代替可能である。サンプリング範囲に属するポイントが均一に分布していない場合(例えば、一方に片寄って分布する場合)、ポイントの中間モールトンコード値が該当サンプリング範囲を正しく代表することができない。よって、実施例によるLOD構成部はサンプリング範囲の理想的な中間モールトンコード値に最も近いモールトンコードを有するポイントを選択する。実施例によるLOD構成部は八分木構造において親ノードの全ての子ノードが割り当てられたと仮定して、理想的な中間モールトンコード値を計算し、理想的な中間モールトンコード値と最も近いモールトンコードを有するポイントを選択する。実施例によるLOD構成部は理想的な中間モールトンコード値を基準として整列されたポイント順のうち、N番目のポイントを選択する。実施例によるNは予め設定された値である。もし設定されたN値がない場合、実施例によるLOD構成部は整列されたポイント順のうち、0番目のポイントを選択する。
【0291】
実施例によるLOD構成部は一つのサンプリング範囲内で一つ又はそれ以上のポイントを選択する。選択するポイントの個数は予め設定されている。サンプリング範囲内でN番目のポイントを選択する方法による場合、LOD構成部はサンプリング範囲内のポイントに対してN番目のポイントを繰り返して選択する。例えば、Nが2である場合、LOD構成部はサンプリング範囲内の2番目のポイント、4番目のポイント..を所定の数X個だけ繰り返して選択する。サンプリング範囲に属するポイントの中間モールトンコード値に最も近いモールトンコードを有するポイントを選択する方法による場合では、LOD構成部は中間モールトンコード値により整列された順においてN番目に該当するポイントを所定の個数Xだけ繰り返して選択する。サンプリング範囲に属するポイントの理想的な中間モールトンコード値に最も近いモールトンコードを有するポイントを選択する方法による場合では、LOD構成部は理想的な中間モールトンコード値により整列された順においてN番目に該当するポイントを所定の個数Xだけ繰り返して選択する。
【0292】
実施例によるサンプリング範囲は一つのポイントのみを含む。一つのサンプリング範囲に含まれた一つのポイントを孤立ポイント(isolated point)と呼ぶ。圧縮効率を高めるために、LOD構成部は一つ又はそれ以上の方法で孤立ポイントを処理する。
【0293】
例えば、LOD構成部は孤立ポイントに対してサンプリングを行う。LODは上述した固定サンプリングレートk個だけの連続する孤立ポイントのうち、一つのポイントを選択する。
【0294】
実施例によるLOD構成部は孤立ポイントを現在のLODより低いレベルのLODの候補グループに分離する。実施例によるLOD構成部はLODlの生成中、孤立ポイントを有するサンプリング範囲に対して該当孤立ポイントを選択せず、LOD(0~-l-1)に分離する。実施例によるLOD構成部はLODl-1-αの生成時、より大きいサンプリング範囲及びサンプリングレート比率を適用して孤立ポイントを選択する。
【0295】
実施例によるLOD構成部は孤立ポイントを現在のLODに登録する。例えば、LOD構成部はLODlの生成中、孤立ポイントが生成されると、該当孤立ポイントをLODlに登録する。孤立ポイントは周辺ポイントを代表する特質を有する確率が低いので、隣接ポイント集合として選択される必要がないためである。
【0296】
実施例によるLOD構成部は孤立ポイントを隣接ポイントに併合することができる。実施例によるポイントはモールトンコード値に基づいて昇順に整列され、サンプリングレートによって一つ又はそれ以上のサンプリング範囲に分けられる。上述したように、各サンプリング範囲に該当するポイントは、八分木の占有コードで同じ親ノードに属するポイントである。よって、一つのサンプリング範囲に含まれたポイントの個数は変更可能である。実施例によるLOD構成部はサンプリング範囲、即ち、サンプリング範囲に含まれたポイントの個数に基づいて孤立ポイントであるか否かを判断することができる。例えば、LOD構成部はサンプリング範囲に含まれたポイントの個数が所定の値より小さいか又は等しいと、該当サンプリング範囲又は該当サンプリング範囲に含まれたポイントを孤立ポイントとして設定する。実施例によるLOD構成部は孤立ポイントを含むサンプリング範囲を次のサンプリング範囲(例えば、孤立ポイントを含むサンプリング範囲に隣接するサンプリング範囲)と統合(又は併合)する。LOD構成部は統合されたサンプリング範囲内のポイントの個数が所定の値より小さいか又は等しいと、統合されたサンプリング範囲を次のサンプリング範囲(例えば、統合されたサンプリング範囲に隣接するサンプリング範囲)と統合する。又はLOD構成部は統合されたサンプリング範囲内のポイントの個数が所定の値より大きいと、統合されたサンプリング範囲を一つのサンプリング範囲として設定する。
【0297】
実施例による孤立ポイント処理方法に関する情報は上述したLOD構成方式(又はLOD生成方式)情報に含まれて、符号化されたポイントクラウドビデオデータを含むビットストリームにより受信装置(例えば、
図1の受信装置10004又は
図10及び
図11のポイントクラウドデコーダなど)に送信される。従って、受信装置はLOD構成方式情報に基づいてLODを生成する。
【0298】
実施例によるポイント選択方法は上述した孤立ポイントを選択するときにも適用される。また実施例によるポイント選択方法に関する情報は上述したLOD構成方式(又はLOD生成方式)情報に含まれて、符号化されたポイントクラウドビデオデータを含むビットストリームにより受信装置(例えば、
図1の受信装置10004又は
図10及び
図11のポイントクラウドデコーダなど)に送信される。従って、受信装置はLOD構成方式情報に基づいてLODを生成する。
【0299】
図26は実施例による孤立ポイント処理方法の一例である。
【0300】
図25で説明したように、LOD構成部(例えば、LOD構成部2210)は孤立ポイントを含むサンプリング範囲を次のサンプリング範囲と併合することができる。実施例によるLOD構成部は孤立ポイントを含むサンプリング範囲を判断するために所定の値aを定義する。実施例によるaは0より大きい整数である。実施例によるLOD構成部はサンプリング範囲に含まれたポイントの個数がaより小さいか又は等しいと、該当サンプリング範囲又は該当サンプリング範囲に含まれたポイントを孤立ポイントとして設定する。実施例によるLOD構成部は孤立ポイントを含むサンプリング範囲を次のサンプリング範囲(例えば、孤立ポイントを含むサンプリング範囲に隣接するサンプリング範囲)と統合(又は併合)する。実施例によるLOD構成部はサンプリング統合のためのサンプリング範囲の最大値rを設定する。実施例によるrは0より大きい整数であり、aより小さいか又は等しい値を有する。LOD構成部は統合されたサンプリング範囲内のポイントの個数がaより小さいか又は等しいと、統合されたサンプリング範囲を次のサンプリング範囲(例えば、統合されたサンプリング範囲に隣接するサンプリング範囲)と統合する。LOD構成部は統合されたサンプリング範囲がaより小さい場合は、サンプリング範囲統合を繰り返す。LOD構成部は統合されたサンプリング範囲内のポイントの個数がaより大きいと、統合されたサンプリング範囲を一つのサンプリング範囲として設定する。
【0301】
図26はaが4であり、rが4である時の孤立ポイント処理方法の一例である(2600)。上述したように、ポイントはモールトンコード値に基づいて昇順に整列される。図示したインデックス2610はポイントのモールトンコード値を示す。実施例によるLOD構成部は複数のポイントを一つ又はそれ以上のサンプリング範囲に分ける。実施例による一つ又はそれ以上のサンプリング範囲は第1サンプリング範囲2620、第2サンプリング範囲2630及び第3サンプリング範囲2640を含む。図示したように、第1サンプリング範囲2620は同じ親ノードに属する6つのポイント(P0、P1、P2、P3、P4、P5)を含む。第1サンプリング範囲2620に含まれたポイントの個数は6であるので、a値である4より大きい。従って、LOD構成部は第1サンプリング範囲2620に含まれたポイントを孤立ポイントとして設定せず、サンプリングレートによって第1サンプリング範囲2620にあるポイントのうち、一つのポイントを選択する。選択されたポイントを除いた残りのポイントは現在のLODに登録され、選択されたポイントは現在のLODよりも低いレベルのLODのための候補ポイントとして設定される。図示したように、第2サンプリング範囲2630は一つのポイント(P6)を含む。第2サンプリング範囲2630に含まれたポイントの個数1であり、a値である4よりも小さい。よって、LOD構成部は第2サンプリング範囲2630に含まれたポイントを孤立ポイントとして設定する。LOD構成部は第2サンプリング範囲2630を第3サンプリング範囲2640と統合する。図示したように、第3サンプリング範囲2640は同じ親ノードに属する4つのポイント(P7、P8、P9、P10)を含む。第2サンプリング範囲2630と第3サンプリング範囲2640が統合された統合サンプリング範囲のポイントの個数は5である。即ち、統合されたサンプリング範囲のポイント個数である5は併合のためのサンプリング範囲の最大値rである4よりも大きい。従って、LOD構成部はサンプリングレートに基づいて統合されたサンプリング範囲にあるポイントのうち、一つのポイントを選択する。選択されたポイントを除いた残りのポイントは現在のLODに登録され、選択されたポイントは現在のLODよりも低いレベルのLODのための候補ポイントとして設定される。図示していないが、第3サンプリング範囲2640は6つのポイント(P11、P12、P13、…)を含む。第3サンプリング範囲2640に含まれたポイントの個数6であり、aより大きい。従って、LOD構成部は第3サンプリング範囲2640に含まれたポイントを孤立ポイントとして設定せず、サンプリングレートによって第3サンプリング範囲2640にあるポイントのうち、一つのポイントを選択する。
【0302】
図27は実施例による孤立ポイント処理方法の一例である。
【0303】
図27に示した孤立ポイント処理方法の例示2700は
図26で説明した孤立ポイント処理方法の例示2600の実施例である。
【0304】
図27は
図26の例示2600と同様に、aが4であり、rが4である時の孤立ポイント処理方法の一例である(2700)。図示したインデックス2710はポイントのモールトンコード値を示す。実施例によるLOD構成部は複数のポイントを一つ又はそれ以上のサンプリング範囲に分ける。実施例による一つ又はそれ以上のサンプリング範囲は第1サンプリング範囲2720、第2サンプリング範囲2730、第3サンプリング範囲2740、第4サンプリング範囲2750及び第5サンプリング範囲2760を含む。図示したように、第1サンプリング範囲2720は5つのポイント(P0、P1、P2、P3、P4)を含む。第1サンプリング範囲2720に含まれたポイントの個数は5であるので、a値である4より大きい。従って、LOD構成部は第1サンプリング範囲2720に含まれたポイントを孤立ポイントとして設定せず、サンプリングレートによって第1サンプリング範囲2720にあるポイントのうち、一つのポイントを選択する。選択されたポイントを除いた残りのポイントは現在のLODに登録され、選択されたポイントは現在のLODよりも低いレベルのLODのための候補ポイントとして設定される。図示したように、第2サンプリング範囲2730は一つのポイント(P5)を含む。よって、LOD構成部は第2サンプリング範囲2730に含まれたポイントの個数が1であり、a値である4よりも小さいので、第2サンプリング範囲2730に含まれたポイントを孤立ポイントとして設定する。LOD構成部は第2サンプリング範囲2730を第3サンプリング範囲2740と統合する。図示したように、第3サンプリング範囲2740は一つのポイント(P6)を含む。よって、第2サンプリング範囲2730と第3サンプリング範囲2740が統合された統合サンプリング範囲のポイントの個数は2である。即ち、統合されたサンプリング範囲のポイント個数である2は統合のためのサンプリング範囲の最大値rである4より小さい。従って、LOD構成部は統合されたサンプリング範囲を統合されたサンプリング範囲の次のサンプリング範囲である第4サンプリング範囲2750と統合する。図示したように、第4サンプリング範囲2750は一つのポイント(P7)を含む。即ち、統合サンプリング範囲のポイントの個数は3であり、統合のためのサンプリング範囲の最大値rである4より小さい。従って、LOD構成部は統合されたサンプリング範囲を併合されたサンプリング範囲の次のサンプリング範囲である第5サンプリング範囲2760と統合する。図示したように、第5サンプリング範囲2760は2つのポイント(P8、P9)を含む。即ち、統合サンプリング範囲のポイントの個数は5であり、統合のためのサンプリング範囲の最大値rである4より大きい。従って、LOD構成部は統合されたサンプリング範囲に含まれたポイントを孤立ポイントとして設定せず、統合動作を中断する。LOD構成部はサンプリングレートに基づいて統合されたサンプリング範囲にあるポイントのうち、一つのポイントを選択する。選択されたポイントを除いた残りのポイントは現在のLODに登録され、選択されたポイントは現在のLODより低いレベルのLODのための候補ポイントとして設定される。
【0305】
図28はポイントクラウド圧縮(PCC)ビットストリームの構造図の一例を示す。
【0306】
上述したように、ポイントクラウドデータ送信装置(例えば、
図1、
図11、
図14及び
図1で説明したポイントクラウドデータ送信装置)は、符号化されたポイントクラウドデータをビットストリーム2800の形態で送信される。実施例によるビットストリーム2800は一つ又はそれ以上のサブビットストリームを含む。
【0307】
ポイントクラウドデータ送信装置(例えば、
図1、
図11、
図14及び
図1で説明したポイントクラウドデータ送信装置)は、送信チャネルのエラーを考慮して、ポイントクラウドデータの映像を一つ又はそれ以上のパケットに分けてネットワークにより送信する。実施例によるビットストリーム2800は、一つ又はそれ以上のパケット(例えば、NAL(Network Abstraction Layer)ユニット)を含む。従って、悪いネットワーク環境で一部パケットが損失されても、ポイントクラウドデータ受信装置は残りのパケットを用いて該当映像を復元することができる。ポイントクラウドデータを一つ又はそれ以上のスライス又は一つ又はそれ以上のタイルに分割して処理することができる。実施例によるタイル及びスライスは、ポイントクラウドデータのピクチャを分割(partitioning)してポイントクラウド圧縮コーディング処理するための領域である。ポイントクラウドデータ送信装置は、ポイントクラウドデータの分けられた各領域の重要度によって各領域に対応するデータを処理して、高品質のポイントクラウドコンテンツを提供する。即ち、実施例によるポイントクラウドデータ送信装置は、ユーザに重要な領域に対応するデータに対してより良好な圧縮効率と適切な遅延を有するポイントクラウド圧縮コーディング処理を行うことができる。
【0308】
実施例によるタイルはポイントクラウドデータが分布する3次元空間(例えば、境界ボックス)内の直方体を意味する。実施例によるスライスは符号化されたポイントクラウドデータの一部又は全部を示すシンタックスエレメントのシリーズであって、独立的に符号化又は復号されるポイントの集合を意味する。実施例によるスライスはパケットにより送信されるデータを含み、一つのジオメトリデータユニット及び0よりサイズが同じ個数の特質データユニットを含む。実施例による一つのタイルは一つ又はそれ以上のスライスを含む。
【0309】
実施例によるビットストリーム2800はシーケンスレベルのシグナリングのためのSPS(Sequence Parameter Set)、ジオメトリ情報コーディングのシグナリングのためのGPS(Geometry Parameter Set)、特質情報コーディングのシグナリングのためのAPS(Attribute Parameter Set)、及びタイルレベルのシグナリングのためのTPS(Tile Parameter Set)を含むシグナリング情報及び一つ又はそれ以上のスライスを含む。
【0310】
実施例によるSPSはプロファイル、レベルなどのシーケンス全体に関する符号化情報であって、ピクチャ解像度、ビデオフォーマットなどのファイル全体に関する包括的な情報を含む。
【0311】
実施例による一つのスライス(例えば、
図28のslice0)はスライスヘッダー及びスライスデータを含む。スライスデータは一つのジオメトリビットストリーム(Geom0
0)及び一つ又はそれ以上の特質ビットストリーム(Attr0
0、Attr1
0)を含む。ジオメトリビットストリームはヘッダー(例えば、ジオメトリスライスヘッダー)及びペイロード(例えば、ジオメトリスライスデータ)を含む。実施例によるジオメトリビットストリームのヘッダーは、GPSに含まれたパラメータセットの識別情報(geom_geom_parameter_set_id)、タイル識別子(geom_tile id)、スライス識別子(geom_slice_id)及びペイロードに含まれたデータに関する情報などを含む。特質ビットストリームはヘッダー(例えば、特質スライスヘッダー又は特質ブリックヘッダー)及びペイロード(例えば、特質スライスデータ又は特質ブリックデータ)を含む。
【0312】
図22ないし
図27で説明したように、実施例によるポイントクラウドエンコーダ及びポイントクラウドデコーダは特質予測のためにLODを生成する。従って、
図28に示したビットストリームは
図18ないし
図27で説明したLOD構成方式情報を含む。実施例によるポイントクラウドデコーダはLOD構成方式情報に基づいてLODを生成する。
【0313】
実施例によるビットストリームに含まれるシグナリング情報はポイントクラウドエンコーダに含まれたメタデータ処理部又は送信処理部(例えば、
図12の送信処理部12012)又はメタデータ処理部又は送信処理部内のエレメントにより生成される。実施例によるシグナリング情報はジオメトリ符号化及び特質符号化の実行結果に基づいて生成される。
【0314】
図29は実施例によるAPSのためのシンタックスの一例を示す。
【0315】
図29は実施例によるAPSのためのシンタックスの一例であって、次の情報(又はフィールド、パラメータなど)を含む。
【0316】
aps_attr_parameter_set_idは他のシンタックスエレメントによる参照のためのAPSの識別子を示す。aps_attr_parameter_set_idは0ないし15範囲内の値を有する。
図30に示すように、ビットストリーム内には一つ又はそれ以上の特質ビットストリームが含まれるので、各特質ビットストリームのヘッダーにはaps_attr_parameter_set_idと同じ値を有するフィールド(例えば、ash_attr_parameter_set_id
【0317】
)が含まれる。実施例によるポイントクラウドデコーダは、aps_attr_parameter_set_idに基づいて各特質ビットストリームに対応するAPSを確保し、該当特質ビットストリームを処理する。
【0318】
aps_seq_parameter_set_idはアクティブSPS(active SPS)のためのsps_seq_parameter_set_idの値を示す。aps_seq_parameter_set_idは0ないし15の範囲内の値を有する。
【0319】
attr_coding_typeはattr_coding_typeの与えられた値に対する特質コーディングタイプ(coding type)を示す。attr_coding_typeの値は実施例によるビットストリーム内で0、1及び2のうちのいずれかと同一である。他のattr_coding_typeの値はISO/IECにより追って使用可能である。従って、実施例によるポイントクラウドデコーダはattr_coding_typeの0、1及び2ではない他の値を無視することができる。該当値が0であると、特質コーディングタイプは予測重量リフト(predicting weight lifting)変換コーディングであり、該当値が1であると、特質コーディングタイプがRAHT変換コーディング、該当値が2であると、特質コーディングタイプは固定重量リフト(fixed weight lifting)変換コーディングである。
【0320】
以下は特質コーディングタイプが0又は2である場合のパラメータである。
【0321】
num_pred_nearest_neighboursは予測のために使用される隣接ポイント(nearest neighbors)の最大個数を示す。num_pred_nearest_neighboursは0から特定値までの範囲内の値を有する。
【0322】
max_num_direct_predictorsはダイレクト予測(direct prediction)変換のために使用される予測器(predictors)の個数を示す。max_num_direct_predictorsは0からnum_pred_nearest_neighboursの値の範囲内の値を有する。復号動作で使用される変数MaxNumPredictorsの値は以下の通りである。
【0323】
MaxNumPredictors=max_num_direct_predicots+1
【0324】
lifting_search_rangeはリフト(lifting)のための探索範囲(search range)を示す。
【0325】
lifting_quant_step_sizeは特質の1番目のコンポーネントのための量子化ステップサイズ(quantization step size)を示す。lifting_quant_step_sizeの値は1からxx(任意の値)までの範囲である。
【0326】
lifting_quant_step_size_chromaは特質が色(colour)である場合、特質のクロマ(chroma)コンポーネントのための量子化ステップサイズを示す。lifting_quant_step_size_chromaは1からxx(任意の値)の範囲を有する。
【0327】
lod_binary_tree_enabled_flagはLOD生成過程で二分木が適用されるか否かを示す。
【0328】
num_detail_levels_minus1は特質符号化(特質コーディング)のためのLODの個数を示す。num_detail_levels_minus1は0からxx(任意の値)の範囲内の値を有する。以下のforループは各LODに関する情報である。
【0329】
sampling_distance_squared[idx]はidxにより表現される各LODに対するサンプリング距離(sampling distance)の二乗を示す。実施例によるidxは0からnum_detail_levels_minus1が示す特質コーディングのためのLODの数までの値を有する。sampling_distance_squaredは0からxx(任意の値)の範囲内の値を有する。
【0330】
一つのビットストリームにより送信されるポイントクラウドデータに対して同一のサンプリング情報が適用される場合、実施例によるAPSのためのシンタックスはLOD構成情報を含む。
【0331】
以下は実施例によるLOD構成情報2900である。
【0332】
lod_generation_typeはLOD集合を構成(生成)する方法のタイプを示す情報である。lod_generation_typeは1及び2のうちのいずれかの値を有し、lod_generation_typeの値はこの例示に限られない。lod_generation_typeの値が1である場合、lod_generation_typeはLOD集合生成方式が距離基盤のLOD生成方式(例えば、
図22で説明した距離基盤のLOD生成方式)であることを示す。lod_generation_typeの値が2である場合は、lod_generation_typeはLOD集合生成方式がモールトンオーダー基盤のサンプリングLOD生成方式(例えば、
図22で説明したモールトンオーダー基盤のサンプリングLOD生成方式)であることを示す。LOD集合生成方式については
図22で説明した通りであるので、具体的な説明は省略する。
【0333】
以下はlod_generation_typeの値が2である場合、サンプリングに関連する情報である。
【0334】
sampling_range_typeはサンプリング範囲及びサンプリングレート、又はサンプリング範囲のタイプを示す。sampling_range_typeは1、2及び3のうちのいずれかの値を有し、sampling_range_typeの値はこの例示に限られない。sampling_range_typeの値が1である場合、sampling_range_typeはサンプリング範囲が固定サンプリング範囲(例えば、
図22及び
図23で説明した固定サンプリング範囲)であることを示す。sampling_range_typeの値が2である場合は、sampling_range_typeはサンプリング範囲が八分木基盤の固定サンプリング範囲(例えば、
図22及び
図24で説明した八分木基盤の固定サンプリング範囲)であることを示す。sampling_range_typeの値が3である場合は、sampling_range_typeはサンプリング範囲が八分木基盤の動的サンプリング範囲(例えば、
図22及び
図25で説明した八分木基盤の動的サンプリング範囲)であることを示す。実施例によるサンプリング範囲及びサンプリングレートは
図22ないし
図25で説明した通りであるので、具体的な説明は省略する。
【0335】
sampling_rateはサンプリングレートを示す。sampling_rateの値は0より大きい整数である。
【0336】
sampling_select_typeはサンプリング範囲内でポイントを選択するポイント選択方法を示す。sampling_select_typeは1、2、3及び4のうちのいずれかの値を有し、sampling_select_typeの値はこの例示に限られない。sampling_select_typeの値が1である場合、sampling_select_typeはポイント選択方法がサンプリング範囲内でN番目のポイントを選択する方法(例えば、
図25で説明したサンプリング範囲内でN番目のポイントを選択する方法)であることを示す。sampling_select_typeの値が2である場合、sampling_select_typeはポイント選択方法がサンプリング範囲に属するポイントの中間モールトンコード値に最も近いモールトンコードを有するポイントを選択する方法(例えば、
図25で説明したサンプリング範囲に属するポイントの中間モールトンコード値に最も近いモールトンコードを有するポイントを選択する方法)であることを示す。sampling_select_typeの値が3である場合は、sampling_select_typeはポイント選択方法がサンプリング範囲に属するポイントのうち、中間インデックス値に対応するポイントを選択する方法(例えば、
図25で説明したサンプリング範囲に属するポイントのうち、中間インデックス値に対応するポイントを選択する方法)であることを示す。sampling_select_typeの値が4である場合は、sampling_select_typeはポイント選択方法がサンプリング範囲の理想的な中間モールトンコード値に最も近いモールトンコードを有するポイントを選択する方法(例えば、
図25で説明したサンプリング範囲の理想的な中間モールトンコード値に最も近いモールトンコードを有するポイントを選択する方法)であることを示す。実施例によるポイント選択方法は
図25で説明したポイント選択方法と同一であるので、具体的な説明は省略する。
【0337】
sampling_select_idxは選択するポイントの固定インデックスを示す。例えば、sampling_select_typeの値が1である場合、sampling_select_idxはサンプリング範囲内で整列されたポイントから選択されるN番目のポイントのインデックスを示す。また、sampling_select_typeの値が2及び3である場合は、sampling_select_idxは中間モールトンコード値又は理想的な中間モールトンコード値を基準として整列されたポイントから選択されるN番目のポイントのインデックスを示す。
【0338】
sampling_select_max_num_of_pointsは一つのサンプリング範囲内で選択可能な最大のポイントの個数を示す。
【0339】
以下はsampling_select_typeの値が2より大きいか又は等しい場合のサンプリング情報を示す。sampling_begin_depthはLOD0集合生成を開始する八分木の深さを示す。sampling_begin_depthは正の整数値を有する。
【0340】
sampling_isolated_point_mininum_num_of_elementsは孤立ポイントとして定義できるポイントの個数(例えば、
図26及び
図27で説明した孤立ポイントを含むサンプリング範囲を判断するために予め設定された値a)を示す。即ち、sampling_isolated_point_mininum_num_of_elementsはサンプリング範囲に属する最小のポイントの個数を示す。
【0341】
sampling_isolated_point_sampling_typeは孤立ポイント処理方法を示す。sampling_isolated_point_sampling_typeは孤立ポイントに対してサンプリングを行う方法、孤立ポイントを隣接ポイントに併合する方法、孤立ポイントを現在のLODよりも低いレベルのLODの候補グループに分離して処理する方法、及び孤立ポイントを現在のLODに登録する方法のうちのいずれかを示す。孤立ポイントに対してサンプリングを行う方法は、固定サンプリングレートk個の連続する孤立ポイントに対して一つのポイントを選択する方法である。孤立ポイントを隣接ポイントに併合する方法は、サンプリング範囲に含まれたポイントの個数とsampling_isolated_ point_ mininum_num_of_elementsで示される孤立ポイントとして定義できるポイントの個数を比較して、孤立ポイントである場合、孤立ポイントを含むサンプリング範囲を次のサンプリング範囲と統合する方法である。孤立ポイントを現在のLODよりも低いレベルのLODの候補グループに分離して処理する方法は、LOD
lの生成中、孤立ポイントを有するサンプリング範囲に対して該当孤立ポイントを選択せず、LOD
(0~-l-1)に分離し、LOD
l-1-αの生成時、孤立ポイントを選択する方法である。孤立ポイントを現在のLODに登録する方法は、LOD
lの生成中、孤立ポイントが生成されると、該当孤立ポイントをLOD
lに登録する方法である。孤立ポイント処理方法は
図25ないし
図27で説明した孤立ポイント処理方法と同一であるので、具体的な説明は省略する。
【0342】
sampling_isolated_point_maximum_merge_rangeは、サンプリング統合のためのサンプリング範囲の最大サンプリング範囲(例えば、
図26及び
図27で説明したサンプリング統合のためのサンプリング範囲の最大値r)を示す。
【0343】
以下は特質コーディングタイプの値が0である場合の関連パラメータである。
【0344】
adaptive_prediction_thresholdは予測(prediction)の閾値を示す。
【0345】
以下は特質コーディングタイプの値が1である場合の関連パラメータである。
【0346】
raht_depthはRAHT変換のためのLODの個数を示す。depthRAHTは1からxx(任意の値)までの範囲内の値を有する。
【0347】
raht_quant_step_sizeは、特質の1番目のコンポーネントに対する量子化ステップサイズ(quantization step size)を示す。rath_quant_step_sizeは1からxx(任意の値)の範囲内の値を有する。
【0348】
raht_quant_step_size_chromaは、RAHTの適用時、特質のクロマ(chroma)コンポーネントのための量子化ステップサイズ(quantization step size)を示す。
【0349】
aps_extension_present_flagは0又は1値を有するフラグである。
【0350】
1値を有するaps_extension_present_flagは、APS RBSPシンタックス構造内にaps_extension_dataシンタックス構造が存在することを示す。0値を有するaps_extension_present_flagは、このシンタックス構造が存在しないことを示す。もしシンタックス構造が存在しなければ、aps_extension_present_flagの値は0であると推論される。
【0351】
aps_extension_data_flagはどのような値でも有することができる。このフィールドの存在及び値は実施例によるデコーダ性能に影響を及ぼさない。
【0352】
図30は実施例によるAPSのためのシンタックスの一例を示す。
【0353】
図30は
図29で説明したAPSのためのシンタックスの一例を示す。
【0354】
図30は一つのビットストリームにより送信されるポイントクラウドデータの(各)LODごとに等しいか又は異なるサンプリング情報が適用される場合のAPSのためのシンタックスの一例を示す。従って、
図29で説明した情報及び/又はパラメータと同一の情報及び/又はパラメータに関する説明は省略する。
【0355】
実施例によるLOD構成部(例えば、LOD構成部2210)は、LODごとに等しいか又は異なるサンプリングを行う。従って、この場合、実施例によるAPSのためのシンタックスはlod_generation_typeの値が2である場合、サンプリングに関連する以下の情報3000をさらに含む。
【0356】
sampling_attrs_per_lod_flagはLODごとのサンプリング実行方式が異なるか否かを示すフラグである。
図22で説明したように、LOD構成部(例えば、LOD構成部2210)はLODごとに異なるサンプリングを行うので、実施例によるLOD生成情報は各LODのためのサンプリング情報を含む。従って、sampling_attrs_per_lod_flagの値が1である場合、以下のforループは各LODに対するサンプリングに関連する情報3010である。図示したidxは各LODを示す。実施例によるサンプリングに関連する情報3010は
図29で説明したサンプリングに関連する情報と同一であるので、具体的な説明は省略する。
【0357】
実施例によるLOD構成部(例えば、LOD構成部2210)は、タイル又はスライスごとに異なるLOD生成方式を適用することができる。上述したように、ポイントクラウドデータ受信装置もLODを生成するので、実施例によるビットストリームは領域ごとのLOD生成方式に関連するシグナリング情報をさらに含む。
【0358】
図31は実施例によるTPSのためのシンタックスの一例を示す。
【0359】
実施例によるLOD構成部がタイルごとにLOD生成方式を異なるように適用した場合、実施例によるTPSはLOD構成情報(例えば、
図29及び
図30で説明したLOD構成情報2900、3000、3010)をさらに含む。
図31は実施例によるTPSのためのシンタックスの一例であり、以下の情報(又はフィールド、パラメータなど)を含む。
【0360】
num_tilesは、ビットストリームのためにシグナリングされるタイルの個数を示す。もしビットストリームのためにシグナリングされるタイルが存在しないと、この情報の値は0と推論される。以下はそれぞれのタイルに対するシグナリングパラメータである。
【0361】
tile_bounding_box_offset_x[i]は、直交座標系内のi番目のタイルのxオフセットを示す。このパラメータが存在しないと、tile_bounding_box_offset_x[0]の値はSPSに含まれたsps_bounding_box_offset_xの値と見なされる。
【0362】
tile_bounding_box_offset_y[i]は、直交座標系内のi番目のタイルのyオフセットを示す。このパラメータが存在しないと、tile_bounding_box_offset_y[0]の値はSPSに含まれたsps_bounding_box_offset_yの値と見なされる。
【0363】
tile_bounding_box_offset_z[i]は、直交座標系内のi番目のタイルのzオフセットを示す。このパラメータが存在しないと、tile_bounding_box_offset_z[0]の値はsps_bounding_box_offset_zの値と見なされる。
【0364】
tile_bounding_box_scale_fwactor[i]は、直交座標系内のi-番目のタイルに関連する倍率(scale factor)を示す。このパラメータが存在しないと、tile_bounding_box_scale_fwactor[0]の値はsps_bounding_box_scale_fwactorの値と見なされる。
【0365】
tile_bounding_box_size_width[i]は、直交座標系内のi番目のタイルの幅(width)を示す。このパラメータが存在しない場合、tile_bounding_box_size_width[0]の値はsps_bounding_box_size_widthの値と見なされる。
【0366】
tile_bounding_box_size_height[i]は、直交座標系内のi番目のタイルの高さ(height)を示す。このパラメータが存在しない場合、tile_bounding_box_size_height[0]の値はsps_bounding_box_size_heightの値と見なされる。
【0367】
tile_bounding_box_size_depth[i]は、直交座標系内のi番目のタイルの深さ(depth)を示す。このパラメータが存在しない場合、tile_bounding_box_size_depth[0]の値はsps_bounding_box_size_depthの値と見なされる。
【0368】
図示したように、実施例によるTPSはLOD構成情報2900を含む。実施例によるLOD構成情報3100は(各)タイルごとに適用される。LOD構成情報3100は
図29で説明したLOD構成情報2900と同一であるので、具体的な説明は省略する。
【0369】
図32は実施例によるTPSのためのシンタックスの一例を示す。
【0370】
図32は
図30で説明したTPSのためのシンタックスの一例を示す。
図32は一つのビットストリームにより送信されるポイントクラウドデータの各タイルのLODごとに等しいか又は異なるサンプリング情報が適用される場合のTPSのためのシンタックスの一例を示す。
図30で説明した情報及び/又はパラメータと同一の情報及び/又はパラメータに関する説明は省略する。
【0371】
実施例によるLOD構成部(例えば、LOD構成部2210)は、LODごとに等しいか又は異なるサンプリングを行う。従って、この場合、実施例によるTPSのためのシンタックスは、lod_generation_typeの値が2である場合、サンプリングに関連するsampling_attrs_per_lod_flag3200をさらに含む。実施例によるsampling_attrs_per_lod_flagは
図30で説明したsampling_attrs_per_lod_flag3000と同一であるので、具体的な説明は省略する。また、sampling_attrs_per_lod_flag値が1である場合は、実施例によるTPSのためのシンタックスは各LODに対するサンプリングに関連する情報3210を示すforループを含む。実施例による各LODに対するサンプリングに関連する情報3210は、
図30で説明した各LODに対するサンプリングに関連する情報3010と同一であるので、具体的な説明は省略する。
【0372】
図33は実施例による特質ヘッダーのためのシンタックスの一例を示す。
【0373】
図33の特質ヘッダーのためのシンタックスは
図28で説明した特質ビットストリームに含まれたヘッダーにより送信される情報のシンタックスの一例である。
【0374】
実施例によるLOD構成部(例えば、LOD構成部2110)がスライスごとに隣接ポイント集合生成方法を異なるように適用した場合、実施例による特質ヘッダーはLOD構成情報3300(例えば、
図29で説明したLOD構成情報2900、
図31で説明したLOD構成情報3100)をさらに含む。
図33に示す実施例による特質ヘッダーのためのシンタックスの一例は以下の情報(又はフィールド、パラメータなど)を含む。
【0375】
ash_attr_parameter_set_idはアクティブAPSのaps_attr_parameter_set_idと同じ値を有する。
【0376】
ash_attr_sps_attr_idxはアクティブSPS(active SPS)に対するsps_seq_parameter_set_idの値を示す。ash_attr_sps_attr_idxの値は0からアクティブSPS内に含まれたsps_num_attribute_setsの値までの範囲内に属する。
【0377】
ash_attr_geom_slice_idはジオメトリスライスID(例えば、geom_slice_id)の値を示す。
【0378】
図示したように、実施例による特質ヘッダーはLOD構成情報3300を含む。実施例によるLOD構成情報3300は各スライスに属する特質ビットストリーム(又は特質スライスデータ)ごとに適用される。LOD構成情報3300は
図29及び
図31で説明したLOD構成情報2900、3100と同一であるので、具体的な説明は省略する。
【0379】
図34は実施例による特質ヘッダーのためのシンタックスの一例を示す。
【0380】
図34は
図33で説明した特質ヘッダーのためのシンタックスの一例を示す。
図34は各スライスに対応するLODごとに等しいか又は異なるサンプリング情報が適用される場合の特質ヘッダーのためのシンタックスの一例を示す。
【0381】
実施例によるLOD構成部(例えば、LOD構成部2210)は、LODごとに等しいか又は異なるサンプリングを行う。従って、この場合、実施例による特質ヘッダーのためのシンタックスは、lod_generation_typeの値が2である場合、サンプリングに関連するsampling_attrs_per_lod_flag3400をさらに含む。実施例によるsampling_attrs_per_lod_flagは
図30及び
図32で説明したsampling_attrs_per_lod_flag3000、3200と同一であるので、具体的な説明は省略する。また、sampling_attrs_per_lod_flag値が1である場合は、実施例による特質ヘッダーのためのシンタックスは各LODに対するサンプリングに関連する情報3410を示すforループを含む。実施例による各LODに対するサンプリングに関連する情報3410は、
図30及び
図32で説明した各LODに対するサンプリングに関連する情報3010、3210と同一であるので、具体的な説明は省略する。
【0382】
図35はポイントクラウドデコーダの一例を示すブロック図である。
【0383】
実施例によるポイントクラウドデコーダ3500は、
図1ないし
図17で説明したデコーダ(例えば、
図1、
図10、
図11、
図13、
図14及び
図16で説明したポイントクラウドデコーダ)の復号動作と同一又は類似する復号動作を行う。またポイントクラウドデコーダ3500は
図18で説明したポイントクラウドエンコーダ1800の符号化動作の逆過程に該当する復号動作を行う。実施例によるポイントクラウドデコーダ3500は空間分割部3510、ジオメトリ情報復号化部3520(又はジオメトリ情報デコーダ)及び特質情報復号化部(又は特質デコーダ)3530を含む。実施例によるポイントクラウドデコーダ3300は、
図35に示していないが、
図1ないし
図17で説明した復号動作を行うための一つ又はそれ以上のエレメントをさらに含む。
【0384】
実施例による空間分割部3510は、実施例によるポイントクラウドデータ送信装置(例えば、
図1、
図11、
図14及び
図1で説明したポイントクラウドデータ送信装置)から受信したシグナリング情報(例えば、
図18で説明した空間分割部1810で行われた分割動作に関する情報)又はポイントクラウドデコーダ3500で誘導した(生成した)分割情報に基づいて空間を分割する。上述したように、ポイントクラウドエンコーダ1800の空間分割部1810の分割動作は、八分木(Octree)、四分木(Quadtree)、二分木(Biniary tree)、三分木(Triple tree)及びk-dツリーのうちのいずれかに基づく。
【0385】
実施例によるジオメトリ情報復号化部3520は、入力したジオメトリビットストリームを復号化してジオメトリ情報を復元する。復元されたジオメトリ情報は特質情報復号化部3530に入力される。実施例によるジオメトリ情報復号化部3520は、
図12で説明した演算デコーダ(arithmetic decode)12000、八分木合成部(synthesize octree)12001、表面近似合成部(synthesize surface approximation)12002、ジオメトリ再構成部(reconstruct geometry)12003及び座標系逆変換部(inverse transform coordinates)12004の動作を行う。また実施例によるジオメトリ情報復号化部3520は、
図13で説明した演算デコーダ13002、占有コード基盤の八分木再構成処理部13003、表面モデル処理部(三角形再構成、アップサンプリング、ボクセル化)13004及び逆量子化処理部13005の動作を行う。又は実施例によるジオメトリ情報復号化部3520は、
図16で説明したポイントクラウド復号部の動作を行う。
【0386】
実施例による特質情報復号化部3530は、特質情報ビットストリーム及び復元されたジオメトリ情報に基づいて特質情報を復号化する。実施例による特質情報復号化部3530は、
図11のポイントクラウドデコーダに含まれた演算デコーダ11005、逆量子化部11006、RAHT変換部11007、LOD生成部11008、逆リフト部11009及び/又はカラー逆変換部11010の動作と同一又は類似する動作を行う。実施例による特質情報復号化部3530は、
図13の受信装置に含まれた演算デコーダ13007、逆量子化処理部13008、予測/リフト/RAHT逆変換処理部13009及び色相逆変換処理部13010の動作と同一又は類似する動作を行う。
【0387】
ポイントクラウドデコーダ3500は、復元されたジオメトリ情報と復元された特質情報に基づいて最終PCCデータを出力する。
【0388】
図36はジオメトリ情報デコーダの一例を示すブロック図である。
【0389】
実施例によるジオメトリ情報デコーダ3600は
図35のジオメトリ情報復号化部3520の一例であって、ジオメトリ情報復号化部3520の動作と同一又は類似する動作を行う。実施例によるジオメトリ情報デコーダ3600は、
図19で説明したジオメトリ情報エンコーダ1900の符号化動作の逆過程に該当する復号化動作を行う。実施例によるジオメトリ情報デコーダ3600は、ジオメトリ情報エントロピー復号化部3610、ジオメトリ情報逆量子化部3620、ジオメトリ情報予測部3630、フィルタリング部3640、メモリ3650、ジオメトリ情報逆変換逆量子化部3660及び座標系逆変換部3670を含む。実施例によるジオメトリ情報デコーダ3600は、
図36に示していないが、
図1ないし
図35で説明したジオメトリ復号動作を行うための一つ又はそれ以上のエレメントをさらに含む。
【0390】
実施例によるジオメトリ情報エントロピー復号化部3610は、ジオメトリ情報ビットストリームをエントロピー復号化して量子化された残差ジオメトリ情報を生成する。ジオメトリ情報エントロピー復号化部3610は、
図19で説明したジオメトリ情報エントロピー符号化部1905で行ったエントロピー符号化動作の逆過程であるエントロピー復号化動作を行う。上述したように、実施例によるエントロピー符号化動作は、指数ゴロム(Exponential Golomb)、CAVLC(Context-Adaptive Variable Length Coding)及びCABAC(Context-Adaptive Binary Arithmetic Coding)などを含み、エントロピー復号化動作は、エントロピー符号化動作に対応して指数ゴロム(Exponential Golomb)、CAVLC(Context-Adaptive Variable Length Coding)及びCABAC(Context-Adaptive Binary Arithmetic Coding)などを含む。実施例によるジオメトリ情報エントロピー復号化部3610は、ジオメトリ情報ビットストリームに含まれたジオメトリコーディングに関連する情報、例えば、予測ジオメトリ情報生成に関連する情報、量子化に関連する情報(例えば、量子化値など)、座標系変換に関連するシグナリング情報などを復号化する。
【0391】
実施例による残差ジオメトリ情報逆量子化部3620は、量子化された残差ジオメトリ情報に対して量子化に関連する情報に基づいて逆量子化の動作を行って残差ジオメトリ情報又はジオメトリ情報を生成する。
【0392】
実施例によるジオメトリ情報予測部3630は、ジオメトリエントロピー復号化部3610で出力された予測ジオメトリ情報生成に関連する情報及びメモリ3650に格納されていた以前に復号化されたジオメトリ情報に基づいて予測ジオメトリ情報を生成する。実施例によるジオメトリ情報予測部3630はインター予測部及びイントラ予測部を含む。実施例によるインター予測部は、ジオメトリ情報エンコーダ(例えば、ジオメトリ情報エンコーダ1900)で提供する現在の予測単位(例えば、ノードなど)のインター予測(inter-prediction)に必要な情報に基づいて、現在の予測単位が含まれた現在の空間(例えば、フレーム、ピクチャなど)の以前の空間及び以後の空間のうちのいずれかに含まれた情報に基づいて現在の予測単位に対するインター予測を行う。実施例によるイントラ予測部は、ジオメトリ情報エンコーダ1900で提供する予測単位のイントラ予測に関連する情報に基づいて現在の空間内のポイントのジオメトリ情報に基づいて予測ジオメトリ情報を生成する。
【0393】
実施例によるフィルタリング部3640は、フィルタリング関連情報に基づいて生成された予測ジオメトリ情報と復元された残差ジオメトリ情報が併せて生成された復元ジオメトリ情報をフィルタリングする。実施例によるフィルタリング関連情報はジオメトリ情報エンコーダ1900からシグナリングされることもできる。又は実施例によるジオメトリ情報デコーダ3600はフィルタリング関連情報を復号過程から誘導して算出することができる。
【0394】
実施例によるメモリ3650は復元ジオメトリ情報を格納する。実施例によるジオメトリ逆変換量子化部3660は量子化関連情報に基づいてメモリ3650に格納された復元ジオメトリ情報を逆変換量子化する。
【0395】
実施例による座標系逆変換部3670は、ジオメトリ情報エントロピー復号化部3610から提供された座標系変換関連情報及びメモリ3750に格納された復元ジオメトリ情報に基づいて逆変換量子化されたジオメトリ情報の座標系を逆変換してジオメトリ情報を出力する。
【0396】
図37は特質情報デコーダの一例を示すブロック図である。
【0397】
実施例による特質情報デコーダ3700は
図35の特質情報復号化部3530の一例であって、特質情報復号化部3530の動作と同一又は類似する動作を行う。実施例による特質情報デコーダ3700は、
図20及び
図21で説明した特質情報エンコーダ2000及び特質情報エンコーダ2100の符号化動作の逆過程に該当する復号化動作を行う。実施例による特質情報デコーダ3700は、特質情報エントロピー復号化部3710、ジオメトリ情報マッピング部3720、残差特質情報逆量子化部3730、残差特質情報逆変換部3740、メモリ3750、特質情報予測部3760及び特質情報逆変換部3770を含む。実施例による特質情報デコーダ3700は、
図37に示していないが、
図1ないし
図36で説明した特質復号動作を行うための一つ又はそれ以上のエレメントをさらに含む。
【0398】
特質情報エントロピー復号化部3710は特質情報ビットストリームを受信し、エントロピー復号化を行って変換量子化された特質情報を生成する。
【0399】
ジオメトリ情報マッピング部3720は変換量子化された特質情報及び復元ジオメトリ情報をマッピングして残差特質情報を生成する。
【0400】
残差特質情報逆量子化部3730は残差特質情報を量子化値に基づいて逆量子化する。
【0401】
残差特質情報逆変換部3740は逆量子化が行われた特質情報を含む残差3次元ブロックをDCT、DST、SADCT、RAHTなどの変換コーディングを行って逆変換する。
【0402】
メモリ3750は逆変換された特質情報と特質情報予測部3760で出力された予測特質情報を併せて格納する。又はメモリ3750は特質情報を逆変換せず、予測特質情報と併せて格納する。
【0403】
特質情報予測部3760はメモリ3750に格納された特質情報に基づいて予測特質情報を生成する。特質情報予測部3760はエントロピー復号化を行って予測特質情報を生成する。また特質情報予測部3760は
図22で説明した特質情報予測部2200の動作と同一又は類似する動作を行う。また特質予測部3760は
図29ないし
図34で説明したLOD構成情報に基づいて
図22ないし
図27で説明したLOD又はLOD集合を生成して予測特質情報を生成する。
【0404】
特質情報逆変換部3770は特質情報の類型及び変換情報を特質情報エントロピー復号化部3710から受信して様々なカラー逆変換コーディングを行う。
【0405】
図38は実施例によるポイントクラウドデータ処理方法のフローチャートの一例である。
【0406】
図38のフローチャート3800はポイントクラウドデータ処理装置(例えば、
図1、
図11、
図14ないし
図15及び
図18ないし
図22で説明したポイントクラウドデータ送信装置又はポイントクラウドデータエンコーダ)のポイントクラウドデータ処理方法を示す。実施例によるポイントクラウドデータ処理装置は
図1ないし
図37で説明した符号化動作と同一又は類似する動作を行う。
【0407】
実施例によるポイントクラウドデータ処理装置は、ジオメトリ情報及び特質情報を含むポイントクラウドデータを符号化する(3810)。実施例によるジオメトリ情報はポイントクラウドデータのポイントの位置を示す情報である。実施例による特質情報はポイントクラウドデータのポイントの特質を示す情報である。
【0408】
実施例によるポイントクラウドデータ処理装置は、ジオメトリ情報を符号化し、特質情報を符号化する。実施例によるポイントクラウドデータ処理装置は
図1ないし
図37で説明したジオメトリ情報の符号化動作と同一又は類似する動作を行う。またポイントクラウドデータ処理装置は、
図1ないし
図37で説明した特質情報の符号化動作と同一又は類似する動作を行う。実施例によるポイントクラウドデータ処理装置は、ポイントを分割して少なくとも一つ以上のLODを生成する。実施例によるLOD生成方式又は方法は、
図22ないし
図27で説明したLOD生成方式又は方法と同一又は類似するので、具体的な説明は省略する。
【0409】
実施例によるポイントクラウドデータ処理装置は、符号化されたポイントクラウドデータを含むビットストリームを送信する(3820)。
【0410】
実施例によるビットストリームの構造は
図28で説明した通りであるので具体的な説明は省略する。実施例によるビットストリームはLOD構成情報(例えば、
図29ないし
図34で説明したLOD構成情報)を含む。また実施例によるLOD構成情報は
図29ないし
図34で説明したように、APS、TPS、特質ヘッダーなどにより受信装置に送信される。
【0411】
実施例によるLOD構成情報はLOD生成方法のタイプを示すタイプ情報(例えば、
図27ないし
図32で説明したLOD_generation_type)を含む。実施例によるタイプ情報はポイント間の距離に基づいてLODを生成する第1タイプ(例えば、
図22で説明した距離基盤のLOD生成方式)及びポイントのモールトンコード基盤のサンプリングでLODを生成する第2タイプ(例えば、
図22で説明したモールトンオーダー基盤のサンプリングLOD生成方式)のうちのいずれかを示す。LOD集合生成方式については
図22で説明した通りであるので具体的な説明は省略する。
【0412】
実施例によるタイプ情報が第2タイプを示す場合、LOD構成情報はサンプリング範囲タイプ情報(例えば、
図29ないし
図34で説明したsampling_range_type)、サンプリングレート情報(例えば、
図29ないし
図34で説明したsampling_rate)、サンプリングによって選択されるポイントの固定インデックス情報(例えば、
図29ないし
図34で説明したsampling_select_idx)、サンプリング範囲内でポイントを選択するポイント選択方法情報(例えば、
図29ないし
図34で説明したsampling_select_type)及びサンプリングによって選択されるポイントの最大個数情報(例えば、
図27ないし
図32で説明したsampling_select_max_num_of_points)を含む。実施例によるサンプリング範囲タイプ情報は1から4までの値のうちのいずれかを有する。実施例によるサンプリング範囲タイプ情報の値が2より大きいか又は等しい場合、LOD構成情報は孤立ポイントとして定義される一つ又はそれ以上のポイントに関連するサンプリング情報(例えば、
図29で説明したsampling_begin_depth、samping_isolated_point_minimum_num_of_elements及びsampling_isolated_point_sampling_type)をさらに含む。実施例によるLOD構成情報は
図29ないし
図34で説明した通りであるので、具体的な説明は省略する。
【0413】
図39は実施例によるポイントクラウドデータ処理方法のフローチャートの一例である。
【0414】
図39のフローチャート3900はポイントクラウドデータ処理装置(例えば、
図1、
図13、
図14、
図16及び
図35ないし
図37で説明したポイントクラウドデータ受信装置又はポイントクラウドデータデコーダ)のポイントクラウドデータ処理方法を示す。実施例によるポイントクラウドデータ処理装置は
図1ないし
図35で説明した復号動作と同一又は類似する動作を行う。
【0415】
実施例によるポイントクラウドデータ処理装置はポイントクラウドデータを含むビットストリームを受信する(3910)。
【0416】
実施例によるポイントクラウドデータ処理装置はポイントクラウドデータを復号する(3920)。実施例による復号されたポイントクラウドデータはジオメトリ情報及び特質情報を含む。ジオメトリ情報はポイントクラウドデータのポイントの位置を示す情報である。実施例による特質情報はポイントクラウドデータのポイントの特質を示す情報である。実施例によるビットストリームの構造は
図28で説明した通りであるので、具体的な説明は省略する。
【0417】
実施例によるポイントクラウドデータ処理装置はジオメトリ情報を復号し、特質情報を復号する。実施例によるポイントクラウドデータ処理装置は
図1ないし
図37で説明したジオメトリ情報の復号動作と同一又は類似する動作を行う。またポイントクラウドデータ処理装置は
図1ないし
図37で説明した特質情報の復号動作と同一又は類似する動作を行う。実施例によるポイントクラウドデータ処理装置はポイントを分割して少なくとも一つのLODを生成する。実施例によるLOD生成方式又は方法は
図22ないし
図27で説明したLOD生成方式又は方法と同一又は類似するので具体的な説明は省略する。
【0418】
実施例によるビットストリームの構造は
図28で説明した通りであるので具体的な説明は省略する。実施例によるビットストリームはLOD構成情報(例えば、
図29ないし
図34で説明したLOD構成情報)を含む。また実施例による隣接ポイント集合生成情報は
図29ないし
図34で説明したように、APS、TPS、特質ヘッダーなどにより受信装置に送信される。
【0419】
実施例によるLOD構成情報はLOD生成方法のタイプを示すタイプ情報(例えば、
図29ないし
図34で説明したLOD_generation_type)を含む。実施例によるタイプ情報はポイント間の距離に基づいてLODを生成する第1タイプ(例えば、
図22で説明した距離基盤のLOD生成方式)及びポイントのモールトンコード基盤のサンプリングでLODを生成する第2タイプ(例えば、
図22で説明したモールトンオーダー基盤のサンプリングLOD生成方式)のうちのいずれかを示す。LOD集合生成方式については
図22で説明した通りであるので、具体的な説明は省略する。
【0420】
実施例によるタイプ情報が第2タイプを示す場合、LOD構成情報はサンプリング範囲タイプ情報(例えば、
図29ないし
図34で説明したsampling_range_type)、サンプリングレート情報(例えば、
図29ないし
図34で説明したsampling_rate)、サンプリングによって選択されるポイントの固定インデックス情報(例えば、
図29ないし
図34で説明したsampling_select_idx)、サンプリング範囲内でポイントを選択するポイント選択方法情報(例えば、
図29ないし
図34で説明したsampling_select_type)及びサンプリングによって選択されるポイントの最大個数情報(例えば、
図29ないし
図34で説明したsampling_select_max_num_of_points)を含む。実施例によるサンプリング範囲タイプ情報は1から4までの値のうちのいずれかを有する。実施例によるサンプリング範囲タイプ情報の値が2より大きいか又は等しい場合、LOD構成情報は孤立ポイントとして定義される一つ又はそれ以上のポイントに関連するサンプリング情報(例えば、
図29で説明したsampling_begin_depth、samping_isolated_point_minimum_num_of_elements及びsampling_isolated_point_sampling_type)をさらに含む。実施例によるLOD構成情報は
図29ないし
図34で説明した通りであるので、具体的な説明は省略する。
【0421】
図1ないし
図39で説明した実施例によるポイントクラウドデータ処理装置の構成要素は、メモリと結合した一つ又はそれ以上のプロセッサを含むハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせで具現される。実施例によるデバイスの構成要素は、一つのチップ、例えば、一つのハードウェア回路で具現される。また実施例によるポイントクラウドデータ処理装置の構成要素は、それぞれのチップで具現される。また実施例によるポイントクラウドデータ処理装置の構成要素のいずれかは、一つ又はそれ以上のプログラムを実行可能な一つ又はそれ以上のプロセッサで構成され、一つ又はそれ以上のプログラムは
図1ないし
図39で説明したポイントクラウドデータ処理装置の動作/方法のうちのいずれか一つ又はそれ以上の動作を実行させたり、実行するための指示(Instruction)を含む。
【0422】
説明の便宜のために、各図を区分して説明したが、各図に述べられている実施例を併合して新しい実施例を具現するように設計することも可能である。また通常の技術者の必要によって、以前に説明した実施例を実行するためのプログラムが記録されているコンピューターで読み取り可能な記録媒体を設計することも実施例の権利範囲に属する。実施例による装置及び方法は、上述したように、説明された実施例の構成と方法が限定して適用されることではなく、実施例は様々に変形可能に各実施例の全部又は一部が選択的に組み合わせられて構成されることもできる。実施例の好ましい実施例について示して説明したが、実施例は上述した特定の実施例に限定されず、請求の範囲で請求する実施例の要旨から離脱せず、当該発明が属する技術分野において通常の知識を有する者により様々な変形実施が可能であり、かかる変形実施は実施例の技術的思想や見込みから個々に理解されてはいけない。
【0423】
実施例による装置及び方法に関する説明は互いに補完して適用できる。例えば、実施例によるポイントクラウドデータ送信方法は実施例によるポイントクラウドデータ送信装置又はポイントクラウドデータ送信装置に含まれた構成要素により行われる。また、実施例によるポイントクラウドデータ受信方法は実施例によるポイントクラウドデータ受信装置又はポイントクラウドデータ受信装置に含まれた構成要素により行われる。
【0424】
実施例による装置の様々な構成要素は、ハードウェア、ソフトウェア、ファームウェア又はそれらの組み合わせにより構成される。実施例の様々な構成要素は一つのチップ、例えば、一つのハードウェア回路で具現される。実施例において、実施例による構成要素はそれぞれ個々のチップで具現される。実施例において、実施例による装置の構成要素のいずれかは一つ又はそれ以上のプログラムを実行できる一つ又はそれ以上のプロセッサで構成され、一つ又はそれ以上のプログラムは実施例による動作/方法のうちのいずれか一つ又はそれ以上の動作/方法を行わせるか、実行させるための指示を含む。実施例による装置の方法/動作を行うための実行可能な指示は、一つ又はそれ以上のプロセッサにより実行されるために構成された一時的ではないCRM又は他のコンピュータープログラム製品に格納されるか、又は一つ又はそれ以上のプロセッサにより実行されるために構成された一時的なCRM又は他のコンピュータープログラム製品に格納されることができる。また実施例によるメモリは、揮発性メモリ(例えば、RAMなど)だけではなく、非揮発性メモリ、フラッシュメモリ、PROMなどを全部含む概念として使用される。また、インターネットによる送信などのような搬送波の形態で具現されることも含む。またプロセッサが読み取られる記録媒体は、ネットワークで連結されたコンピューターシステムに分散されて、分散方式によりプロセッサが読み取られるコードが格納されて実行されることができる。
【0425】
この明細書において、“/”と“,”は“及び/又は”に解釈される。例えば、“A/B”は“A及び/又はB”に解釈され、“A、B”は“A及び/又はB”に解釈される。さらに、“A/B/C”は“A、B及び/又はCのうちのいずれか”を意味する。また、“A、B、C”も“A、B及び/又はCのうちのいずれか”を意味する。さらに、この文書において、“又は”は“及び/又は”に解釈される。例えば、“A又はB”は、1)“A”のみを意味するか、2)“B”のみを意味するか、又は3)“A及びB”を意味する。言い換えれば、この明細書において“又は”は“さらに(additionally)又は代わりに(alternatively)”を意味する。
【0426】
第1、第2などの用語は実施例の様々な構成要素を説明するために使用される。しかし、実施例による様々な構成要素は上記用語により解釈が制限されてはいけない。かかる用語は一つの構成要素を他の構成要素と区別するために使用されることに過ぎない。例えば、第1ユーザ入力信号は第2ユーザ入力信号と称することができる。同様に、第2ユーザ入力信号は第1ユーザ入力信号と称することができる。かかる用語の使用は様々な実施例の範囲から離脱していない。第1ユーザ入力信号及び第2ユーザ入力信号はいずれもユーザ入力信号であるが、文脈上、明確に示していない限り、同一のユーザ入力信号を意味してはいない。
【0427】
実施例を説明のために使用された用語は、特定の実施例を説明するために使用されており、実施例を制限されるものではない。実施例の説明及び請求範囲で使用したように、文脈上明確に称していない限り、単数は複数を含む。「及び/又は」表現は用語間の全ての可能な結合を含む意味で使用される。「含む」は特徴、数、段階、要素及び/又はコンポーネントが存在することを説明し、さらなる特徴、数、段階、要素及び/又はコンポーネントを含まないことを意味しない。実施例を説明するために使用される、「~である場合」、「~の時」などの条件表現は選択的な場合にのみ制限して解釈されない。特定の条件を満たすとき、特定の条件に対応して関連動作を行うか、又は関連定義が解釈されるように意図されている。
【0428】
発明の実施のための最善の形態で具体的に説明する。
【産業上の利用可能性】
【0429】
本発明の思想や範囲内で本発明を様々な変更及び変形が可能であることは当業者にとって明らかである。よって、本発明は添付する請求範囲及びその同等な範囲内で提供される本発明の変更及び変形を含む。