(57)【要約】  本開示は、ポイントクラウドデータに対するフィルタ処理の処理時間の増大を抑制することができるようにする画像処理装置および方法に関する。ポイントクラウドデータに対して、３次元空間を分割した局所領域毎のそのポイントクラウドデータの代表値を用いて、フィルタ処理を行い、そのフィルタ処理が行われたポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する。本開示は、例えば、情報処理装置、画像処理装置、電子機器、情報処理方法、またはプログラム等に適用することができる。
2020012967.tif 000002
【特許請求の範囲】
【請求項１】
ポイントクラウドデータに対して、３次元空間を分割した局所領域毎の前記ポイントクラウドデータの代表値を用いて、フィルタ処理を行うフィルタ処理部と、
前記フィルタ処理部により前記フィルタ処理が行われた前記ポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する符号化部と
を備える画像処理装置。
【請求項２】
前記局所領域は、所定のサイズの立方体の領域である
請求項１に記載の画像処理装置。
【請求項３】
前記局所領域は、所定のサイズの直方体の領域である
請求項１に記載の画像処理装置。
【請求項４】
前記局所領域は、それぞれが前記ポイントクラウドデータの所定数のポイントを包含するように、前記３次元空間を分割した領域である
請求項１に記載の画像処理装置。
【請求項５】
前記符号化部は、前記局所領域に関する情報を含む前記ビットストリームを生成する
請求項１に記載の画像処理装置。
【請求項６】
前記局所領域に関する情報は、前記局所領域のサイズもしくは形状、または両方に関する情報を含む
請求項５に記載の画像処理装置。
【請求項７】
前記代表値は、前記局所領域が包含する前記ポイントクラウドデータの平均である
請求項１に記載の画像処理装置。
【請求項８】
前記代表値は、前記局所領域が包含する前記ポイントクラウドデータの中央値である
請求項１に記載の画像処理装置。
【請求項９】
前記フィルタ処理は、前記ポイントクラウドデータの処理対象ポイントのデータを、前記処理対象ポイントの周辺の前記局所領域の前記代表値を用いて平滑化する平滑化処理である
請求項１に記載の画像処理装置。
【請求項１０】
前記フィルタ処理部は、前記ポイントクラウドデータのポイントの位置情報に対して前記フィルタ処理を行う
請求項１に記載の画像処理装置。
【請求項１１】
前記フィルタ処理部は、前記ポイントクラウドデータのポイントの属性情報に対して前記フィルタ処理を行う
請求項１に記載の画像処理装置。
【請求項１２】
ポイントクラウドデータに対して、３次元空間を分割した局所領域毎の前記ポイントクラウドデータの代表値を用いて、フィルタ処理を行い、
前記フィルタ処理が行われた前記ポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する
画像処理方法。
【請求項１３】
ビットストリームを復号し、ポイントクラウドデータが投影された２次元平面画像の符号化データを生成する復号部と、
前記復号部により生成された前記２次元平面画像より復元された前記ポイントクラウドデータに対して、３次元空間を分割した局所領域毎の前記ポイントクラウドデータの代表値を用いて、フィルタ処理を行うフィルタ処理部と
を備える画像処理装置。
【請求項１４】
ビットストリームを復号し、ポイントクラウドデータが投影された２次元平面画像の符号化データを生成し、
生成された前記２次元平面画像より復元された前記ポイントクラウドデータに対して、３次元空間を分割した局所領域毎の前記ポイントクラウドデータの代表値を用いて、フィルタ処理を行う
画像処理方法。
【請求項１５】
ポイントクラウドデータの一部のポイントに対してフィルタ処理を行うフィルタ処理部と、
前記フィルタ処理部により前記フィルタ処理が行われた前記ポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する符号化部と
備える画像処理装置。
【請求項１６】
前記フィルタ処理部は、前記ポイントクラウドデータの、前記２次元平面画像に含まれるパッチの端部に対応するポイントに対して前記フィルタ処理を行う
請求項１５に記載の画像処理装置。
【請求項１７】
前記フィルタ処理は、前記ポイントクラウドデータの処理対象ポイントのデータを、前記処理対象ポイントの周辺のpointのデータを用いて平滑化する平滑化処理である
請求項１５に記載の画像処理装置。
【請求項１８】
ポイントクラウドデータの一部のポイントに対してフィルタ処理を行い、
前記フィルタ処理が行われた前記ポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する
画像処理方法。
【請求項１９】
ビットストリームを復号し、ポイントクラウドデータが投影された２次元平面画像の符号化データを生成する復号部と、
前記復号部により生成された前記２次元平面画像より復元された前記ポイントクラウドデータの一部のポイントに対してフィルタ処理を行うフィルタ処理部と
を備える画像処理装置。
【請求項２０】
ビットストリームを復号し、ポイントクラウドデータが投影された２次元平面画像の符号化データを生成し、
生成された前記２次元平面画像より復元された前記ポイントクラウドデータの一部のポイントに対してフィルタ処理を行う
画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像処理装置および方法に関し、特に、ポイントクラウドデータに対するフィルタ処理の処理時間の増大を抑制することができるようにした画像処理装置および方法に関する。
【背景技術】
【０００２】
従来、例えばポイントクラウド（Point cloud）のような３次元構造を表す３Ｄデータの符号化方法として、例えばOctree等のような、ボクセル（Voxel）を用いた符号化があった（例えば非特許文献１参照）。【０００３】
近年、その他の符号化方法として、例えば、ポイントクラウドの位置と色情報それぞれを、小領域毎に２次元平面に投影し、２次元画像用の符号化方法で符号化するアプローチ（以下、ビデオベースドアプローチ（Video-based approach）とも称する）が提案されている（例えば、非特許文献２乃至非特許文献４参照）。【０００４】
このような符号化において、復号された２次元画像から復元されたポイントクラウドを画像化した場合の主観的な画質の低減を抑制するために、最近傍探索（Nearest Neighbor）により周辺のポイントを取得して３次元の平滑化フィルタをかける方法が考えられた。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】R. Mekuria, Student Member IEEE, K. Blom, P. Cesar., Member, IEEE, "Design, Implementation and Evaluation of a Point Cloud Codec for Tele-Immersive Video",tcsvt_paper_submitted_february.pdf
【非特許文献２】Tim Golla and Reinhard Klein, "Real-time Point Cloud Compression ," IEEE, 2015
【非特許文献３】K. Mammou, “Video-based and Hierarchical Approaches Point Cloud Compression” , MPEG m41649, Oct. 2017
【非特許文献４】K. Mammou,“PCC Test Model Category 2 v0,” N17248 MPEG output document, October 2017
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、一般的にポイントクラウドのポイント数は多く、最近傍探索の処理の負荷が非常に大きくなってしまっていた。そのため、この方法では処理時間が増大するおそれがあった。【０００７】
本開示は、このような状況に鑑みてなされたものであり、ポイントクラウドデータに対するフィルタ処理を従来の方法よりも高速に行うことができるようにし、その処理時間の増大を抑制することができるようにするものである。
【課題を解決するための手段】
【０００８】
本技術の一側面の画像処理装置は、ポイントクラウドデータに対して、３次元空間を分割した局所領域毎の前記ポイントクラウドデータの代表値を用いて、フィルタ処理を行うフィルタ処理部と、前記フィルタ処理部により前記フィルタ処理が行われた前記ポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する符号化部とを備える画像処理装置である。【０００９】
本技術の一側面の画像処理方法は、ポイントクラウドデータに対して、３次元空間を分割した局所領域毎の前記ポイントクラウドデータの代表値を用いて、フィルタ処理を行い、前記フィルタ処理が行われた前記ポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する画像処理方法である。【００１０】
本技術の他の側面の画像処理装置は、ビットストリームを復号し、ポイントクラウドデータが投影された２次元平面画像の符号化データを生成する復号部と、前記復号部により生成された前記２次元平面画像より復元された前記ポイントクラウドデータに対して、３次元空間を分割した局所領域毎の前記ポイントクラウドデータの代表値を用いて、フィルタ処理を行うフィルタ処理部とを備える画像処理装置である。【００１１】
本技術の他の側面の画像処理方法は、ビットストリームを復号し、ポイントクラウドデータが投影された２次元平面画像の符号化データを生成し、生成された前記２次元平面画像より復元された前記ポイントクラウドデータに対して、３次元空間を分割した局所領域毎の前記ポイントクラウドデータの代表値を用いて、フィルタ処理を行う画像処理方法である。【００１２】
本技術のさらに他の側面の画像処理装置は、ポイントクラウドデータの一部のポイントに対してフィルタ処理を行うフィルタ処理部と、前記フィルタ処理部により前記フィルタ処理が行われた前記ポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する符号化部とを備える画像処理装置である。【００１３】
本技術のさらに他の側面の画像処理方法は、ポイントクラウドデータの一部のポイントに対してフィルタ処理を行い、前記フィルタ処理が行われた前記ポイントクラウドデータが投影された２次元平面画像を符号化し、ビットストリームを生成する画像処理方法である。【００１４】
本技術のさらに他の側面の画像処理装置は、ビットストリームを復号し、ポイントクラウドデータが投影された２次元平面画像の符号化データを生成する復号部と、前記復号部により生成された前記２次元平面画像より復元された前記ポイントクラウドデータの一部のポイントに対してフィルタ処理を行うフィルタ処理部とを備える画像処理装置である。【００１５】
本技術のさらに他の側面の画像処理方法は、ビットストリームを復号し、ポイントクラウドデータが投影された２次元平面画像の符号化データを生成し、生成された前記２次元平面画像より復元された前記ポイントクラウドデータの一部のポイントに対してフィルタ処理を行う画像処理方法である。【００１６】
本技術の一側面の画像処理装置および方法においては、ポイントクラウドデータに対して、３次元空間を分割した局所領域毎のそのポイントクラウドデータの代表値を用いて、フィルタ処理が行われ、そのフィルタ処理が行われたポイントクラウドデータが投影された２次元平面画像が符号化され、ビットストリームが生成される。【００１７】
本技術の他の側面の画像処理装置および方法においては、ビットストリームが復号され、ポイントクラウドデータが投影された２次元平面画像の符号化データが生成され、その生成された２次元平面画像より復元されたポイントクラウドデータに対して、３次元空間を分割した局所領域毎のそのポイントクラウドデータの代表値を用いて、フィルタ処理が行われる。【００１８】
本技術のさらに他の側面の画像処理装置および方法においては、ポイントクラウドデータの一部のポイントに対してフィルタ処理が行われ、そのフィルタ処理が行われたポイントクラウドデータが投影された２次元平面画像が符号化され、ビットストリームが生成される。【００１９】
本技術のさらに他の側面の画像処理装置および方法においては、ビットストリームが復号され、ポイントクラウドデータが投影された２次元平面画像の符号化データが生成され、その生成された２次元平面画像より復元されたポイントクラウドデータの一部のポイントに対してフィルタ処理が行われる。
【発明の効果】
【００２０】
本開示によれば、画像を処理することができる。特に、ポイントクラウドデータに対するフィルタ処理の処理時間の増大を抑制することができる。
【図面の簡単な説明】
【００２１】
【図１】平滑化処理の例を説明する図である。
【図２】本技術に関する主な特徴をまとめた図である。
【図３】最近傍探索について説明する図である。
【図４】本技術を用いたフィルタ処理の概要の一例を説明する図である。
【図５】処理時間の比較例を説明する図である。
【図６】局所領域分割方式の例を説明する図である。
【図７】局所領域に関するパラメータについて説明する図である。
【図８】情報の伝送について説明する図である。
【図９】フィルタ処理の対象について説明する図である。
【図１０】代表値の導出方法について説明する図である。
【図１１】フィルタ処理の演算について説明する図である。
【図１２】フィルタ処理の対象範囲について説明する図である。
【図１３】最近傍探索を用いたフィルタ処理に適用する場合について説明する図である。
【図１４】局所領域毎の代表値を用いたフィルタ処理に適用する場合について説明する図である。
【図１５】処理時間の比較例を説明する図である。
【図１６】符号化装置の主な構成例を示すブロック図である。
【図１７】パッチ分解部の主な構成例を説明する図である。
【図１８】３次元位置情報平滑化処理部の主な構成例を説明する図である。
【図１９】符号化処理の流れの例を説明するフローチャートである。
【図２０】パッチ分解処理の流れの例を説明するフローチャートである。
【図２１】平滑化処理の流れの例を説明するフローチャートである。
【図２２】平滑化範囲設定処理の流れの例を説明するフローチャートである。
【図２３】復号装置の主な構成例を示すブロック図である。
【図２４】３Ｄ再構築部の主な構成例を説明する図である。
【図２５】３次元位置情報平滑化処理部の主な構成例を説明する図である。
【図２６】復号処理の流れの例を説明するフローチャートである。
【図２７】ポイントクラウド再構築処理の流れの例を説明するフローチャートである。
【図２８】平滑化処理の流れの例を説明するフローチャートである。
【図２９】コンピュータの主な構成例を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、本開示を実施するための形態（以下実施の形態とする）について説明する。なお、説明は以下の順序で行う。
１．フィルタ処理の高速化
２．第１の実施の形態（符号化装置）
３．第２の実施の形態（復号装置）
４．変形例
５．付記
【００２３】
＜１．フィルタ処理の高速化＞
＜技術内容・技術用語をサポートする文献等＞
本技術で開示される範囲は、実施の形態に記載されている内容だけではなく、出願当時において公知となっている以下の非特許文献に記載されている内容も含まれる。
【００２４】
非特許文献１：（上述）
非特許文献２：（上述）
非特許文献３：（上述）
非特許文献４：（上述）
非特許文献５：TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU（International Telecommunication Union）, "Advanced video coding for generic audiovisual services", H.264, 04/2017
非特許文献６：TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU（International Telecommunication Union）, "High efficiency video coding", H.265, 12/2016
非特許文献７：Jianle Chen, Elena Alshina, Gary J. Sullivan, Jens-Rainer, Jill Boyce, "Algorithm Description of Joint Exploration Test Model 4", JVET-G1001_v1, Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 7th Meeting: Torino, IT, 13-21 July 2017
【００２５】
つまり、上述の非特許文献に記載されている内容もサポート要件を判断する際の根拠となる。例えば、非特許文献６に記載されているQuad-Tree Block Structure、非特許文献７に記載されているQTBT（Quad Tree Plus Binary Tree） Block Structureが実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、請求の範囲のサポート要件を満たすものとする。また、例えば、パース（Parsing）、シンタックス（Syntax）、セマンティクス（Semantics）等の技術用語についても同様に、実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、請求の範囲のサポート要件を満たすものとする。
【００２６】
＜ポイントクラウド＞
従来、点群の位置情報や属性情報等により３次元構造を表すポイントクラウドや、頂点、エッジ、面で構成され、多角形表現を使用して３次元形状を定義するメッシュ等のデータが存在した。
【００２７】
例えばポイントクラウドの場合、立体構造物を多数の点の集合（点群）として表現する。つまり、ポイントクラウドのデータは、この点群の各点の位置情報や属性情報（例えば色等）により構成される。したがってデータ構造が比較的単純であるとともに、十分に多くの点を用いることにより任意の立体構造を十分な精度で表現することができる。
【００２８】
＜ビデオベースドアプローチの概要＞
このようなポイントクラウドの位置と色情報それぞれを、小領域毎に２次元平面に投影し、２次元画像用の符号化方法で符号化するビデオベースドアプローチ（Video-based approach）が提案されている。
【００２９】
このビデオベースドアプローチでは、入力されたポイントクラウド（Point cloud）が複数のセグメンテーション（領域とも称する）に分割され、領域毎に２次元平面に投影される。なお、ポイントクラウドの位置毎のデータ（すなわち、各ポイントのデータ）は、上述のように位置情報（Geometry（Depthとも称する））と属性情報（Texture）とにより構成され、それぞれ、領域毎に２次元平面に投影される。
【００３０】
そして、この２次元平面に投影された各セグメンテーション（パッチとも称する）は、２次元画像に配置され、例えば、AVC（Advanced Video Coding）やHEVC（High Efficiency Video Coding）等といった、２次元平面画像用の符号化方式により符号化される。
【００３１】
＜オキュパンシーマップ＞
ビデオベースドアプローチにより、３Ｄデータを２次元平面に投影する場合、上述のように位置情報が投影された２次元平面画像（ジオメトリ（Geometry）画像とも称する）と、属性情報が投影された２次元平面画像（テクスチャ（Texture）画像とも称する）との他に、オキュパンシーマップが生成される。オキュパンシーマップは、２次元平面の各位置における、位置情報および属性情報の有無を示すマップ情報である。より具体的には、オキュパンシーマップでは、その位置情報および属性情報の有無が、プレシジョン（Precision）と称する領域毎に示される。
【００３２】
ポイントクラウド（の各ポイント）は、このオキュパンシーマップのプレシジョンで定義されるブロック単位で復元されるため、このブロックのサイズが大きい程、ポイントの解像度が粗くなる。そのため、このプレシジョンのサイズが大きいことにより、ビデオベースドアプローチにより符号化・復号したポイントクラウドを画像化する場合の主観的な画質が低減してしまうおそれがあった。
【００３３】
例えば、ビデオベースドアプローチにより符号化・復号したポイントクラウドを画像化した場合に、プレシジョンのサイズが大きいと、図１のＡのように、白の部分と黒の部分との境界において、鋸の歯のような細かい刻み目が形成され、主観的な画質が低減してしまうおそれがあった。
【００３４】
そこで、最近傍探索（NN（NearestNeighbor）とも称する）により処理対象のポイントの周辺のポイントを取得し、それらを用いて処理対象のポイントに３次元の平滑化フィルタをかける方法が考えられた。このような３次元の平滑化フィルタをかけることにより、図１のＢのように、白の部分と黒の部分との境界の刻み目が抑制されて滑らかな線状となり、主観的な画質の低減を抑制することができる。
【００３５】
しかしながら、一般的にポイントクラウドのポイント数は多く、最近傍探索の処理の負荷が非常に大きくなってしまっていた。そのため、この方法では処理時間が増大するおそれがあった。
【００３６】
この処理時間の増大により、例えば、上述のようなビデオベースドアプローチを即時的（リアルタイム）に行う（例えば毎秒６０フレームの動画像として符号化する）ことが困難であった。
【００３７】
一般的なNNの高速化手法として、近似で探す方法（Approximate NN）や、より高速な処理が可能なハードウエアを用いる方法等が考えられているが、それらを用いても即時的な処理は現実的に困難であった。
【００３８】
＜３次元のフィルタ処理の高速化＞
＜＃１．局所領域毎の代表値を用いた高速化＞
そこで３次元の平滑化フィルタ処理を高速化する。例えば図２の＃１の段に示されるように、３次元空間を局所領域に分割し、その局所領域毎にポイントクラウドの代表値を求め、フィルタ処理における参照値としてその局所領域毎の代表値を用いるようにする。
【００３９】
例えば、図３のＡに示されるようにポイントが分布しており、中央の黒色のポイント（curPoint）に対して３次元の平滑化フィルタをかける場合、その周辺のグレーのポイント（nearPoint）のデータを参照して（参照値として用いて）平滑化が行われる。
【００４０】
従来の方法の疑似コードを図３のＢに示す。従来の場合、処理対象ポイント（curPoint）の周辺ポイント（nearPoint）は、最近傍探索（NN）を用いて決定し（nearPoint = NN(curPoint)）、全ての周辺ポイントが互いに同一のパッチに属さない場合（if(! all same patch(nearPoints))）、すなわち、処理対象ポイントがパッチの端部に位置する場合、周辺ポイントのデータの平均を用いて処理対象ポイントの平滑化が行われた（curPoint = average(nearPoints)）。
【００４１】
これに対して、図４のＡの四角形のように、３次元空間を局所領域に分割し、その局所領域毎にポイントクラウドの代表値（×）を導出し、その代表値を用いて処理対象ポイント（黒点）の平滑化を行うようにする。その疑似コードを図４のＢに示す。この場合、まず、局所領域（グリッド）毎の代表値として、局所領域内のポイントの平均値（AveragePoint）を導出する。そして、処理対象ポイントが属するグリッド（処理対象グリッド）の周辺に位置する周辺グリッド（near grid）を特定する。
【００４２】
周辺グリッドには、処理対象グリッドに対して予め定められた所定の位置関係にあるグリッドが選択される。例えば、処理対象グリッドに隣接するグリッドを周辺グリッドとするようにしてもよい。例えば、図４のＡの例の場合、中央の四角を処理対象グリッドとすると、その周囲の８個のグリッドが周辺グリッドとされる。
【００４３】
そして、全ての周辺ポイントが互いに同一のパッチに属さない場合（if(! all same patch(nearPoints))）、すなわち、処理対象ポイントがパッチの端部に位置する場合、それらの周辺グリッドの代表値の集合（averagePoints = AveragePoint(near grid)）を用いたトリリニアフィルタリングにより処理対象ポイントに対して３次元の平滑化フィルタ処理を行う（curPoint = trilinear(averagePoints)）。
【００４４】
このようにすることにより、負荷の大きい最近傍探索（NN）を行わずにフィルタ処理（３次元の平滑化フィルタ処理）を実現することができる。したがって、従来の３次元の平滑化フィルタと同等の平滑化効果を実現することができるとともに、その処理時間を大幅に削減することができる。図５に最近傍探索を用いる場合の３次元の平滑化フィルタ（NN）の処理時間と、本技術を適用した３次元の平滑化フィルタ（trilinear）の処理時間との比較例を示す。つまり、本技術を適用することにより、図５の左側のグラフのようにかかっていた処理時間を、図５の右側のグラフのように短縮することができる。
【００４５】
以下、図６乃至図１５を参照して、図２の各段について説明する。
【００４６】
＜＃１−１．局所領域分割方式＞
３次元空間の分割の仕方（局所領域の分割方式）は、任意である。例えば図６の表のID欄が「１」の行のように、３次元空間を一様にN×N×Nの立方体領域に分割するようにしてもよい。このようにすることにより、３次元空間を容易に局所領域に分割することができるので、フィルタ処理の処理時間の増大を抑制する（フィルタ処理をより高速化する）ことができる。
【００４７】
また、例えば図６の表のID欄が「２」の行のように、３次元空間を一様にM×N×Lの直方体領域に分割するようにしてもよい。このようにすることにより、３次元空間を容易に局所領域に分割することができるので、フィルタ処理の処理時間の増大を抑制する（フィルタ処理をより高速化する）ことができる。また、３次元空間を立方体領域に分割する場合よりも、局所領域の形状の自由度が向上するので、各局所領域の処理の負荷をより平滑化することができる（負荷の偏りを抑制することができる）。
【００４８】
さらに、例えば図６の表のID欄が「３」の行のように、３次元空間を、各局所領域内のポイント数が一定となるように分割するようにしてもよい。このようにすることにより、３次元空間を立方体領域や直方体領域に分割する場合よりも、各局所領域の処理の重さやリソース使用量を平滑化することができる（負荷の偏りを抑制することができる）。
【００４９】
また、例えば図６の表のID欄が「４」の行のように、３次元空間の任意の位置に、任意の形状およびサイズの局所領域を設定するようにしてもよい。このようにすることにより、上述の各方法の場合よりも、複雑な３次元形状のものに対しても、よりその形状に適した平滑化処理（smooth処理）を行うことができ、より平滑化することができる。
【００５０】
さらに、例えば図６の表のID欄が「５」の行のように、上述のIDが「１」乃至「４」の各方法を選択することができるようにしてもよい。このようにすることにより、より多様な状況に対して、より適切な平滑化処理（smooth処理）を行うことができ、より平滑化することができる。なお、この選択をどのように行うか（何に基づいて選択するか）は、任意である。また、いずれの方法を選択したかを示す情報を、符号化側から復号側に伝送するようにしてもよい（方法選択情報のシグナル）。
【００５１】
＜＃１−２．局所領域パラメータ設定＞
また、このような局所領域のパラメータの設定方法および内容は、任意である。例えば図７の表のID欄が「１」の行のように、３次元空間を分割する局所領域の形状やサイズ（例えば、図６のL、M、N等）を固定値としてもよい。例えば、規格等によりこの値を予め設定するようにしてもよい。このようにすることにより、局所領域の形状やサイズの設定を省略することができるので、フィルタ処理をより高速化することができる。
【００５２】
また、例えば図７の表のID欄が「２」の行のように、ポイントクラウドや状況に応じて局所領域の形状やサイズを設定することができるようにしてもよい。すなわち、局所領域のパラメータを可変としてもよい。このようにすることにより、状況に応じてより適切な局所領域を形成することができるので、フィルタ処理をより適切に行うことができる。例えば、処理をより高速化したり、処理の偏りを抑制したり、より平滑化したりすることができる。
【００５３】
例えば、図７の表のID欄が「２−１」の行のように、局所領域のサイズ（例えば、図６のL、M、N等）を可変とするようにしてもよい。また、例えば、ID欄が「２−２」の行のように、局所領域が包含するポイント数を可変とするようにしてもよい。さらに、例えば、ID欄が「２−３」の行のように、局所領域の形状や位置を可変とするようにしてもよい。また、例えば、ID欄が「２−４」の行のように、局所領域の設定方法の選択をユーザ等が行うことができるようにしてもよい。例えば図６の表のIDが「１」乃至「４」のいずれの方法を選択するかをユーザ等が決定することができるようにしてもよい。
【００５４】
＜＃１−３．シグナル＞
また、フィルタ処理についての情報は、符号化側から復号側に伝送するようにしてもよいし、伝送しなくてもよい。例えば図８の表のID欄が「１」の行のように、フィルタ処理に関する全てのパラメータが規格等により予め設定されているようにし、フィルタ処理についての情報の伝送は行わないようにしてもよい。このようにすることにより、伝送する情報量が低減するので、符号化効率を向上させることができる。また、パラメータの導出がふようであるので、フィルタ処理の負荷を軽減させることができ、フィルタ処理をより高速化することができる。
【００５５】
また、例えば図８の表のID欄が「２」の行のように、フィルタ処理に関する全てのパラメータについて、内部の他のパラメータ（例えばオキュパンシーマップのプレシジョン等）から最適な値を導出可能とし、フィルタ処理についての情報の伝送は行わないようにしてもよい。このようにすることにより、伝送する情報量が低減するので、符号化効率を向上させることができる。また、状況により適した局所領域の設定が可能になる。
【００５６】
さらに、例えば図８の表のID欄が「３」の行のように、フィルタ処理に関する情報をビットストリームのヘッダで伝送するようにしてもよい。その場合、そのビットストリーム内でパラメータは固定値となる。このようにすることにより、伝送する情報量は比較的少なくて済むので、符号化効率の低減を抑制することができる。また、ビットストリーム内でパラメータが固定値となるので、フィルタ処理の負荷の増大を抑制することができる。
【００５７】
また、例えば図８の表のID欄が「４」の行のように、フィルタ処理に関する情報をフレームのヘッダで伝送するようにしてもよい。その場合、フレーム毎にパラメータを可変とすることができる。したがって、状況により適した局所領域の設定が可能になる。
【００５８】
＜＃１−４．フィルタ処理対象＞
フィルタ処理の対象は任意である。例えば図９の表のID欄が「１」の行のように、ポイントクラウドの位置情報を対象としてもよい。つまり、処理対象ポイントの位置情報に対して３次元の平滑化フィルタ処理を行うようにする。このようにすることにより、ポイントクラウドの各ポイントの位置の平滑化を実現することができる。
【００５９】
また、例えば、例えば図９の表のID欄が「２」の行のように、ポイントクラウドの属性情報（色等）を対象としてもよい。つまり、処理対象ポイントの属性情報に対して３次元の平滑化フィルタ処理を行うようにする。このようにすることにより、ポイントクラウドの各ポイントの色等の平滑化を実現することができる。
【００６０】
＜＃１−５．代表値導出方法＞
各局所領域の代表値の導出方法は任意である。例えば図１０の表のID欄が「１」の行のように、局所領域内部の（局所領域が包含する）ポイントのデータの平均値（average）を代表値とするようにしてもよい。平均（average）の算出は容易な演算により可能であるので、このようにすることにより、より高速に代表値を算出することができる。すなわち、フィルタ処理をより高速化することができる。
【００６１】
また、例えば図１０の表のID欄が「２」の行のように、局所領域内部の（局所領域が包含する）ポイントのデータの中央値（median）を代表値とするようにしてもよい。中央値（median）は、特異なデータの影響を受けにくいので、ノイズがある場合であってもより安定した結果を得ることができる。すなわち、より安定したフィルタ処理結果が得られる。
【００６２】
もちろん、代表値の導出方法は、これらの例以外であってもよい。また、例えば、複数の方法で代表値を導出し、より好適な値の方を選択するようにしてもよい。さらに、例えば、局所領域毎に導出方法を変えることができるようにしてもよい。例えば、ポイントクラウドが表す３次元構造体の特徴に応じて導出方法を選択するようにしてもよい。例えば、髪の毛のように形状が細かくノイズを多く含む部分に対しては中央値（median）により代表値を導出し、洋服のように境界が明確な部分に対しては平均値（average）により代表値を導出するようにしてもよい。
【００６３】
＜＃１−６．フィルタ処理演算＞
フィルタ処理（３次元の平滑化フィルタ）の演算は任意である。例えば図１１の表のID欄が「１」の行のように、トリリニア（Trilinear）補間を用いるようにしてもよい。トリリニア補間は、処理速度と処理結果の質のバランスが良い。また、例えば図１１の表のID欄が「２」の行のように、トリキュービック（Tricubic）補間を用いるようにしてもよい。トリキュービック補間は、トリリニア補間よりも質の高い処理結果を得ることができる。さらに、例えば図１１の表のID欄が「３」の行のように、最近傍探索（NN）を用いるようにしてもよい。この方法は、トリリニア補間よりも高速に処理結果を得ることができる。もちろん、これら以外の任意の演算により３次元の平滑化フィルタを実現するようにしてもよい。
【００６４】
＜＃２．３次元のフィルタ処理の簡略化＞
また、図２の＃２の段に示されるように、部分領域に限定してフィルタ処理を行うようにしてもよい。図１２はオキュパンシーマップの例を示す図である。図１２に示されるオキュパンシーマップ５１において、白色の部分が、ポイントクラウドの位置情報を２次元平面に投影したジオメトリ画像や、ポイントクラウドの属性情報を２次元平面に投影したテクスチャ画像におけるデータが存在する領域（プレシジョン）を示し、黒色の部分が、ジオメトリ画像やテクスチャ画像におけるデータが存在しない領域を示す。つまり、白色の部分が、ポイントクラウドのパッチが投影された領域を示し、黒色の部分が、ポイントクラウドのパッチが投影されていない領域を示す。
【００６５】
図１のＡに示されるような刻み目は、図１２の矢印５２が指し示すような、パッチの境界部分において発生する。そこで、図２の＃２−１の段に示されるように、そのようなパッチの境界部分（オキュパンシーマップにおけるパッチの端）に対応するポイントに対してのみ、３次元の平滑化フィルタ処理を行うようにしてもよい。つまり、オキュパンシーマップにおけるパッチの端部を、３次元の平滑化フィルタ処理を行う部分領域としてもよい。
【００６６】
このようにすることにより、一部の領域に対してのみ３次元の平滑化フィルタ処理を行うようにすることができる。つまり、３次元の平滑化フィルタ処理を行う領域を低減させることができるので、３次元の平滑化フィルタ処理をより高速化することができる。
【００６７】
この方法は、図１３のＡに示されるような従来の最近傍探索と組み合わせることができる。つまり、図１３のＢに示される疑似コードのように、処理対象ポイントの位置がパッチの端に対応する場合（if(is_Boundary(curPos))）のみ、最近傍探索（k-NearestNeighbor）を含む３次元の平滑化フィルタ処理を行うようにしてもよい。
【００６８】
また、図１４のＡに示されるように、＃１において上述した本技術を適用したフィルタ処理と組み合わせて用いるようにしてもよい。つまり、図１４のＢに示される疑似コードのように、処理対象ポイントの位置がパッチの端に対応する場合（if(is_Boundary(curPos))）のみ、局所領域の代表値を用いたトリリニア補間による３次元の平滑化フィルタ処理を行うようにしてもよい。
【００６９】
各方法の処理時間の比較例を図１５に示す。左から１番目のグラフは、従来の最近傍探索を用いた平滑化フィルタ処理の処理時間を示す。左から２番目のグラフは、局所領域の代表値を用いたトリリニア補間による３次元の平滑化フィルタ処理の処理時間を示す。左から３番目のグラフは、従来の最近傍探索を用いた平滑化フィルタ処理を、オキュパンシーマップにおけるパッチの端部に対応するポイントに対してのみ行う場合の処理時間を示す。左から４番目のグラフは、局所領域の代表値を用いたトリリニア補間による３次元の平滑化フィルタ処理を、オキュパンシーマップにおけるパッチの端部に対応するポイントに対してのみ行う場合の処理時間を示す。このように、３次元の平滑化フィルタを一部の領域に対してのみ行うようにすることにより、そのフィルタ処理の方法に関わらず、処理時間を低減させることができる。
【００７０】
＜２．第１の実施の形態＞
＜符号化装置＞
次に、以上のような各手法を実現する構成について説明する。図１６は、本技術を適用した画像処理装置の一態様である符号化装置の構成の一例を示すブロック図である。図１６に示される符号化装置１００は、ポイントクラウドのような３Ｄデータを２次元平面に投影して２次元画像用の符号化方法により符号化を行う装置（ビデオベースドアプローチを適用した符号化装置）である。
【００７１】
なお、図１６においては、処理部やデータの流れ等の主なものを示しており、図１６に示されるものが全てとは限らない。つまり、符号化装置１００において、図１６においてブロックとして示されていない処理部が存在したり、図１６において矢印等として示されていない処理やデータの流れが存在したりしてもよい。これは、符号化装置１００内の処理部等を説明する他の図においても同様である。
【００７２】
図１６に示されるように符号化装置１００は、パッチ分解部１１１、パッキング部１１２、OMap生成部１１３、補助パッチ情報圧縮部１１４、ビデオ符号化部１１５、ビデオ符号化部１１６、OMap符号化部１１７、およびマルチプレクサ１１８を有する。
【００７３】
パッチ分解部１１１は、３Ｄデータの分解に関する処理を行う。例えば、パッチ分解部１１１は、符号化装置１００に入力される、３次元構造を表す３Ｄデータ（例えばポイントクラウド（Point Cloud））を取得する。また、パッチ分解部１１１は、取得したその３Ｄデータを複数のセグメンテーションに分解し、そのセグメンテーション毎に３Ｄデータを２次元平面に投影し、位置情報のパッチや属性情報のパッチを生成する。
【００７４】
パッチ分解部１１１は、生成した各パッチに関する情報をパッキング部１１２に供給する。また、パッチ分解部１１１は、その分解に関する情報である補助パッチ情報を、補助パッチ情報圧縮部１１４に供給する。
【００７５】
パッキング部１１２は、データのパッキングに関する処理を行う。例えば、パッキング部１１２は、パッチ分解部１１１から供給される領域毎に３Ｄデータが投影された２次元平面のデータ（パッチ）を取得する。また、パッキング部１１２は、取得した各パッチを２次元画像に配置してビデオフレームとしてパッキングする。例えば、パッキング部１１２は、ポイントの位置を示す位置情報（Geometry）のパッチや、その位置情報に付加される色情報等の属性情報（Texture）のパッチを、それぞれ、ビデオフレームとしてパッキングする。
【００７６】
パッキング部１１２は、生成したビデオフレームをOMap生成部１１３に供給する。また、パッキング部１１２は、そのパッキングに関する制御情報をマルチプレクサ１１８に供給する。
【００７７】
OMap生成部１１３は、オキュパンシーマップの生成に関する処理を行う。例えば、OMap生成部１１３は、パッキング部１１２から供給されるデータを取得する。また、OMap生成部１１３は、位置情報や属性情報に対応するオキュパンシーマップを生成する。OMap生成部１１３は、生成したオキュパンシーマップや、パッキング部１１２から取得した各種情報を後段の処理部に供給する。例えば、OMap生成部１１３は、位置情報（Geometry）のビデオフレームをビデオ符号化部１１５に供給する。また、例えば、OMap生成部１１３は、属性情報（Texture）のビデオフレームをビデオ符号化部１１６に供給する。さらに、例えば、OMap生成部１１３は、オキュパンシーマップをOMap符号化部１１７に供給する。
【００７８】
補助パッチ情報圧縮部１１４は、補助パッチ情報の圧縮に関する処理を行う。例えば、補助パッチ情報圧縮部１１４は、パッチ分解部１１１から供給されるデータを取得する。補助パッチ情報圧縮部１１４は、取得したデータに含まれる補助パッチ情報を符号化（圧縮）する。補助パッチ情報圧縮部１１４は、得られた補助パッチ情報の符号化データをマルチプレクサ１１８に供給する。
【００７９】
ビデオ符号化部１１５は、位置情報（Geometry）のビデオフレームの符号化に関する処理を行う。例えば、ビデオ符号化部１１５は、OMap生成部１１３から供給される位置情報（Geometry）のビデオフレームを取得する。また、ビデオ符号化部１１５は、その取得した位置情報（Geometry）のビデオフレームを、例えばAVCやHEVC等の任意の２次元画像用の符号化方法により符号化する。ビデオ符号化部１１５は、その符号化により得られた符号化データ（位置情報（Geometry）のビデオフレームの符号化データ）をマルチプレクサ１１８に供給する。
【００８０】
ビデオ符号化部１１６は、属性情報（Texture）のビデオフレームの符号化に関する処理を行う。例えば、ビデオ符号化部１１６は、OMap生成部１１３から供給される属性情報（Texture）のビデオフレームを取得する。また、ビデオ符号化部１１６は、その取得した属性情報（Texture）のビデオフレームを、例えばAVCやHEVC等の任意の２次元画像用の符号化方法により符号化する。ビデオ符号化部１１６は、その符号化により得られた符号化データ（属性情報（Texture）のビデオフレームの符号化データ）をマルチプレクサ１１８に供給する。
【００８１】
OMap符号化部１１７は、オキュパンシーマップの符号化に関する処理を行う。例えば、OMap符号化部１１７は、OMap生成部１１３から供給されるオキュパンシーマップを取得する。また、OMap符号化部１１７は、その取得したオキュパンシーマップを、例えば算術符号化等の任意の符号化方法により符号化する。OMap符号化部１１７は、その符号化により得られた符号化データ（オキュパンシーマップの符号化データ）をマルチプレクサ１１８に供給する。
【００８２】
マルチプレクサ１１８は、多重化に関する処理を行う。例えば、マルチプレクサ１１８は、補助パッチ情報圧縮部１１４から供給される補助パッチ情報の符号化データを取得する。また、マルチプレクサ１１８は、パッキング部１１２から供給されるパッキングに関する制御情報を取得する。また、マルチプレクサ１１８は、ビデオ符号化部１１５から供給される位置情報（Geometry）のビデオフレームの符号化データを取得する。また、マルチプレクサ１１８は、ビデオ符号化部１１６から供給される属性情報（Texture）のビデオフレームの符号化データを取得する。また、マルチプレクサ１１８は、OMap符号化部１１７から供給されるオキュパンシーマップの符号化データを取得する。
【００８３】
マルチプレクサ１１８は、取得したそれらの情報を多重化して、ビットストリーム（Bitstream）を生成する。マルチプレクサ１１８は、その生成したビットストリームを符号化装置１００の外部に出力する。
【００８４】
このような符号化装置１００において、パッチ分解部１１１は、OMap生成部１１３から、OMap生成部１１３により生成されたオキュパンシーマップを取得する。また、パッチ分解部１１１は、ビデオ符号化部１１５から、ビデオ符号化部１１５により生成された位置情報（Geometry）のビデオフレーム（ジオメトリ画像とも称する）の符号化データを取得する。
【００８５】
そして、パッチ分解部１１１は、それらのデータを用いて、ポイントクラウドに対する３次元の平滑化フィルタ処理を行う。つまり、パッチ分解部１１１は、３次元の平滑化フィルタ処理を行った３Ｄデータを２次元平面に投影し、位置情報のパッチや属性情報のパッチを生成する。
【００８６】
＜パッチ分解部＞
図１７は、図１６のパッチ分解部１１１の主な構成例を示すブロック図である。図１７に示されるように、パッチ分解部１１１は、パッチ分解処理部１３１、ジオメトリ復号部１３２、３次元位置情報平滑化処理部１３３、およびテクスチャ補正部１３４を有する。
【００８７】
パッチ分解処理部１３１は、ポイントクラウド（Point Cloud）を取得し、それを複数のセグメンテーションに分解し、そのセグメンテーション毎にポイントクラウドを２次元平面に投影し、位置情報のパッチ（ジオメトリパッチ）や属性情報のパッチ（テクスチャパッチ）を生成する。パッチ分解処理部１３１は、生成したジオメトリパッチをパッキング部１１２に供給する。また、パッチ分解処理部１３１は、生成したテクスチャパッチをテクスチャ補正部１３４に供給する。
【００８８】
ジオメトリ復号部１３２は、ジオメトリ画像の符号化データ（ジオメトリ符号化データ）を取得する。このジオメトリ画像の符号化データは、パッチ分解処理部１３１が生成したジオメトリパッチが、パッキング部１１２においてビデオフレームにパッキングされ、ビデオ符号化部１１５において符号化されたものである。ジオメトリ復号部１３２は、ビデオ符号化部１１５の符号化方式に対応する復号方式により、そのジオメトリ符号化データを復号する。さらに、ジオメトリ復号部１３２は、ジオメトリ符号化データを復号して得られたジオメトリ画像からポイントクラウド（の位置情報）を再構築する。ジオメトリ復号部１３２は、得られたポイントクラウドの位置情報（ジオメトリポイントクラウド）を、３次元位置情報平滑化処理部１３３に供給する。
【００８９】
３次元位置情報平滑化処理部１３３は、ジオメトリ復号部１３２から供給されるポイントクラウドの位置情報を取得する。また、３次元位置情報平滑化処理部１３３は、オキュパンシーマップを取得する。このオキュパンシーマップは、OMap生成部１１３において生成されたものである。
【００９０】
３次元位置情報平滑化処理部１３３は、ポイントクラウドの位置情報（ジオメトリポイントクラウド）に対して３次元の平滑化フィルタ処理を行う。その際、３次元位置情報平滑化処理部１３３は、上述したように、３次元空間を分割した局所領域毎の代表値を用いて３次元の平滑化フィルタ処理を行う。また、３次元位置情報平滑化処理部１３３は、取得したオキュパンシーマップを用いて、そのオキュパンシーマップにおけるパッチの端に対応する部分領域のポイントに対してのみ、３次元の平滑化フィルタ処理を行う。このようにすることにより、３次元位置情報平滑化処理部１３３は、より高速にフィルタ処理を行うことができる。
【００９１】
３次元位置情報平滑化処理部１３３は、フィルタ処理を行ったジオメトリポイントクラウド（平滑化後ジオメトリポイントクラウドとも称する）をパッチ分解処理部１３１に供給する。パッチ分解処理部１３１は、その平滑化後ジオメトリポイントクラウドを複数のセグメンテーションに分解し、そのセグメンテーション毎にポイントクラウドを２次元平面に投影し、位置情報のパッチ（平滑化後ジオメトリパッチ）を生成し、それをパッキング部１１２に供給する。
【００９２】
また、３次元位置情報平滑化処理部１３３は、平滑化後ジオメトリポイントクラウドをテクスチャ補正部１３４にも供給する。
【００９３】
テクスチャ補正部１３４は、パッチ分解処理部１３１から供給されるテクスチャパッチを取得する。また、テクスチャ補正部１３４は、３次元位置情報平滑化処理部１３３から供給される平滑化後ジオメトリポイントクラウドを取得する。テクスチャ補正部１３４は、その平滑化後ジオメトリポイントクラウドを用いて、テクスチャパッチの補正を行う。３次元の平滑化によりポイントクラウドの位置情報が変化すると、２次元平面に投影されたパッチの形状も変化しうる。つまり、テクスチャ補正部１３４は、３次元の平滑化によるポイントクラウドの位置情報の変化を属性情報のパッチ（テクスチャパッチ）に反映させる。
【００９４】
テクスチャ補正部１３４は、その補正後のテクスチャパッチをパッキング部１１２に供給する。
【００９５】
パッキング部１１２は、パッチ分解部１１１から供給される平滑化後ジオメトリパッチおよび補正後テクスチャパッチをそれぞれビデオフレームにパッキングし、位置情報のビデオフレームや属性情報のビデオフレームを生成する。
【００９６】
＜３次元位置情報平滑化処理部＞
図１８は、図１７の３次元位置情報平滑化処理部１３３の主な構成例を示すブロック図である。図１８に示されるように、３次元位置情報平滑化処理部１３３は、領域分割部１４１、領域内代表値導出部１４２、処理対象領域設定部１４３、平滑化処理部１４４、および伝送情報生成部１４５を有する。
【００９７】
領域分割部１４１は、ジオメトリ復号部１３２から供給されるポイントクラウドの位置情報（ジオメトリポイントクラウド）を取得する。領域分割部１４１は、そのジオメトリポイントクラウドを含む３次元空間の領域を分割し、局所領域（グリッド）を設定する。その際、領域分割部１４１は、＜＃１．局所領域毎の代表値を用いた高速化＞において上述した方法により３次元空間を分割し、局所領域を設定する。
【００９８】
領域分割部１４１は、その設定した局所領域に関する情報（例えば、局所領域の形状やサイズに関する情報等）と、ジオメトリポイントクラウドを領域内代表値導出部１４２に供給する。また、領域分割部１４１は、局所領域に関する情報を復号側に伝送する場合、その局所領域に関する情報を伝送情報生成部１４５に供給する。
【００９９】
領域内代表値導出部１４２は、領域分割部１４１から供給される局所領域に関する情報やジオメトリポイントクラウドを取得する。領域内代表値導出部１４２は、それらの情報に基づいて、領域分割部１４１により設定された各局所領域内のジオメトリポイントクラウドの代表値を導出する。その際、領域内代表値導出部１４２は、＜＃１．局所領域毎の代表値を用いた高速化＞において上述した方法によりその代表値を導出する。
【０１００】
領域内代表値導出部１４２は、局所領域に関する情報、ジオメトリポイントクラウド、および、導出した局所領域毎の代表値を平滑化処理部１４４に供給する。また、導出した局所領域毎の代表値を復号側に伝送する場合、その局所領域毎の代表値を示す情報を伝送情報生成部１４５に供給する。
【０１０１】
処理対象領域設定部１４３は、オキュパンシーマップを取得する。処理対象領域設定部１４３は、そのオキュパンシーマップに基づいて、フィルタ処理をかける領域を設定する。その際、処理対象領域設定部１４３は、＜＃２．３次元のフィルタ処理の簡略化＞において上述したような方法により領域を設定する。つまり、処理対象領域設定部１４３は、オキュパンシーマップにおけるパッチの端に対応する部分領域を、フィルタ処理の処理対象領域として設定する。
【０１０２】
処理対象領域設定部１４３は、その設定した処理対象領域を示す情報を平滑化処理部１４４に供給する。また、処理対象領域設定部１４３は、その処理対象領域を示す情報を復号側に伝送する場合、その処理対象領域を示す情報を伝送情報生成部１４５に供給する。
【０１０３】
平滑化処理部１４４は、領域内代表値導出部１４２から供給される局所領域に関する情報、ジオメトリポイントクラウド、および局所領域毎の代表値を取得する。また、平滑化処理部１４４は、処理対象領域設定部１４３から供給される処理対象領域を示す情報を取得する。
【０１０４】
平滑化処理部１４４は、それらの情報に基づいて、３次元の平滑化フィルタ処理を行う。つまり、平滑化処理部１４４は、＜３次元のフィルタ処理の高速化＞において上述したように、ジオメトリポイントクラウドの処理対象領域内のポイントに対して、局所領域毎の代表値を参照値として用いて３次元の平滑化フィルタ処理を行う。したがって、平滑化処理部１４４は、より高速に３次元の平滑化フィルタ処理を行うことができる。
【０１０５】
平滑化処理部１４４は、３次元の平滑化フィルタ処理を行ったジオメトリポイントクラウド（平滑化後ジオメトリポイントクラウド）を、パッチ分解処理部１３１やテクスチャ補正部１３４に供給する。
【０１０６】
伝送情報生成部１４５は、領域分割部１４１から供給される局所領域に関する情報、領域内代表値導出部１４２から供給される局所領域毎の代表値を示す情報、および、処理対象領域設定部１４３から供給される処理対象領域を示す情報を取得する。伝送情報生成部１４５は、それらの情報を含む伝送情報を生成する。伝送情報生成部１４５は、生成した伝送情報を、例えば補助パッチ情報圧縮部１１４に供給し、補助パッチ情報として復号側に伝送させる。
【０１０７】
＜符号化処理の流れ＞
次に、符号化装置１００により実行される符号化処理の流れの例を、図１９のフローチャートを参照して説明する。
【０１０８】
符号化処理が開始されると、符号化装置１００のパッチ分解部１１１は、ステップＳ１０１において、ポイントクラウドを２次元平面に投影し、パッチに分解する。
【０１０９】
ステップＳ１０２において、補助パッチ情報圧縮部１１４は、ステップＳ１０１において生成された補助パッチ情報を圧縮する。
【０１１０】
ステップＳ１０３において、パッキング部１１２は、ステップＳ１０１において生成された位置情報や属性情報の各パッチをビデオフレームとしてパッキングする。また、OMap生成部１１３は、その位置情報や属性情報のビデオフレームに対応するオキュパンシーマップを生成する。
【０１１１】
ステップＳ１０４において、ビデオ符号化部１１５は、ステップＳ１０３において生成された位置情報のビデオフレームであるジオメトリビデオフレームを、２次元画像用の符号化方法により符号化する。
【０１１２】
ステップＳ１０５において、ビデオ符号化部１１６は、ステップＳ１０３において生成された属性情報のビデオフレームであるカラービデオフレームを、２次元画像用の符号化方法により符号化する。
【０１１３】
ステップＳ１０６において、OMap符号化部１１７は、ステップＳ１０３において生成されたオキュパンシーマップを、所定の符号化方法により符号化する。
【０１１４】
ステップＳ１０７において、マルチプレクサ１１８は、以上のように生成された各種情報を多重化し、これらの情報を含むビットストリームを生成する。
【０１１５】
ステップＳ１０８において、マルチプレクサ１１８は、ステップＳ１０７において生成したビットストリームを符号化装置１００の外部に出力する。
【０１１６】
ステップＳ１０８の処理が終了すると、符号化処理が終了する。
【０１１７】
＜パッチ分解処理の流れ＞
次に、図２０のフローチャートを参照して、図１９のステップＳ１０１において実行されるパッチ分解処理の流れの例を説明する。
【０１１８】
パッチ分解処理が開始されると、パッチ分解処理部１３１は、ステップＳ１２１において、ポイントクラウドをパッチに分解し、ジオメトリパッチとテクスチャパッチを生成する。
【０１１９】
ステップＳ１２２において、ジオメトリ復号部１３２は、ステップＳ１２１において生成されたジオメトリパッチがビデオフレームにパッキングされて符号化されたジオメトリ符号化データを復号し、ポイントクラウドを再構築して、ジオメトリのポイントクラウドを生成する。
【０１２０】
ステップＳ１２３において、３次元位置情報平滑化処理部１３３は、平滑化処理を実行し、ステップＳ１２２において生成されたジオメトリのポイントクラウドに対して、３次元の平滑化フィルタ処理を行う。
【０１２１】
ステップＳ１２４において、テクスチャ補正部１３４は、ステップＳ１２３の処理により得られた平滑化後ジオメトリポイントクラウドを用いて、ステップＳ１２１において生成されたテクスチャパッチを補正する。
【０１２２】
ステップＳ１２５において、パッチ分解処理部１３１は、ステップＳ１２３の処理により得られた平滑化後ジオメトリポイントクラウドをパッチに分解し、平滑化後ジオメトリパッチを生成する。
【０１２３】
ステップＳ１２５の処理が終了するとパッチ分解処理が終了し、処理は図１９に戻る。
【０１２４】
＜平滑化処理の流れ＞
次に、図２１のフローチャートを参照して、図２０のステップＳ１２３において実行される平滑化処理の流れの例を説明する。
【０１２５】
平滑化処理が開始されると、領域分割部１４１は、ステップＳ１４１において、ポイントクラウドを含む３次元空間を局所領域に分割する。領域分割部１４１は、＜＃１．局所領域毎の代表値を用いた高速化＞において上述した方法により３次元空間を分割し、局所領域を設定する。
【０１２６】
ステップＳ１４２において、領域内代表値導出部１４２は、ステップＳ１４１において設定された局所領域毎のポイントクラウドの代表値を導出する。領域内代表値導出部１４２は、＜＃１．局所領域毎の代表値を用いた高速化＞において上述した方法によりその代表値を導出する。
【０１２７】
ステップＳ１４３において、処理対象領域設定部１４３は、平滑化処理を行う範囲を設定する。処理対象領域設定部１４３は、＜＃２．３次元のフィルタ処理の簡略化＞において上述したような方法により領域を設定する。つまり、処理対象領域設定部１４３は、オキュパンシーマップにおけるパッチの端に対応する部分領域を、フィルタ処理の処理対象領域として設定する。
【０１２８】
ステップＳ１４４において、平滑化処理部１４４は、ステップＳ１４３において設定された処理対象範囲に対して、各領域の代表値を参照して平滑化処理を行う。平滑化処理部１４４は、＜３次元のフィルタ処理の高速化＞において上述したように、ジオメトリポイントクラウドの処理対象領域内のポイントに対して、局所領域毎の代表値を参照値として用いて３次元の平滑化フィルタ処理を行う。したがって、平滑化処理部１４４は、より高速に３次元の平滑化フィルタ処理を行うことができる。
【０１２９】
ステップＳ１４５において、伝送情報生成部１４５は、平滑化に関する伝送情報を生成し、それを例えば補助パッチ情報圧縮部１１４に供給し、補助パッチ情報として伝送させる。
【０１３０】
ステップＳ１４５の処理が終了すると平滑化処理が終了し、処理は図２０に戻る。
【０１３１】
＜平滑化範囲設定処理の流れ＞
次に図２２のフローチャートを参照して、図２１のステップＳ１４３において実行される平滑化範囲設定処理の流れの例を説明する。
【０１３２】
平滑化範囲設定処理が開始されると、処理対象領域設定部１４３は、ステップＳ１６１において、オキュパンシーマップの現在地（x,y）（処理対象ブロック）がオキュパンシーマップの端であるか否かを判定する。例えば、オキュパンシーマップの横幅をwidthとし、縦幅をheightとすると、以下のような判定が行われる。
x!=0 & y!=0 & x!=width-1 & y!=height-1
【０１３３】
この判定が真である、すなわち、現在地がオキュパンシーマップの端ではないと判定された場合、処理はステップＳ１６２に進む。
【０１３４】
ステップＳ１６２において、処理対象領域設定部１４３は、現在地の周辺部のオキュパンシーマップの値が全て１であるか否かを判定する。現在地の周辺部のオキュパンシーマップの値が全て１である、すなわち、全ての周辺部に位置情報や属性情報が存在し、位置情報や属性情報が存在する部分と存在しない部分との境界付近ではないと判定された場合、処理はステップＳ１６３に進む。
【０１３５】
ステップＳ１６３において、処理対象領域設定部１４３は、現在地の周辺部の属するパッチが全て、現在地が属するパッチと同一であるか否かを判定する。パッチ同士が隣り合うと、オキュパンシーマップの値が１である部分が連続する。したがって、ステップＳ１６２において現在地の全ての周辺部にデータが存在すると判定された場合であっても、複数のパッチが隣接する部分である可能性があり、現在地がパッチの端である可能性が残る。そして、異なるパッチ同士では基本的に画像が連続しないので、複数のパッチが隣接する部分においても、オキュパンシーマップのプレシジョンのサイズが大きいことによって、図１のＡのような刻み目が形成される可能性がある。そこで、上述のように、現在地の周辺部の属するパッチが全て、現在地が属するパッチと同一であるか否かを判定する。
【０１３６】
全ての周辺部と現在地とが互いに同一のパッチに属する、すなわち、現在地が、複数のパッチが隣接する部分ではなく、パッチの端部ではないと判定された場合、処理はステップＳ１６４に進む。
【０１３７】
ステップＳ１６４において、処理対象領域設定部１４３は、現在地(x,y)から復元される３次元の点（処理対象ブロックに対応するポイントクラウドのポイント）を、平滑化フィルタ処理しないポイントとして判定する。つまり、現在地を平滑化の処理対処範囲から除外する。ステップＳ１６４の処理が終了すると処理はステップＳ１６６に進む。
【０１３８】
また、ステップＳ１６１において、上述の判定が偽である、すなわち、現在地がオキュパンシーマップの端であると判定された場合、処理はステップＳ１６５に進む。
【０１３９】
また、ステップＳ１６２において、オキュパンシーマップの値が１ではない周辺部が存在する、すなわち、位置情報や属性情報が存在しない周辺部があり、現在地がパッチの端であると判定された場合、処理はステップＳ１６５に進む。
【０１４０】
また、ステップＳ１６３において、現在地が属するパッチと異なるパッチに属する周辺部が存在する、すなわち、現在地が複数のパッチが隣接する部分であると判定された場合、処理はステップＳ１６５に進む。
【０１４１】
ステップＳ１６５において、処理対象領域設定部１４３は、現在地(x,y)から復元される３次元の点（処理対象ブロックに対応するポイントクラウドのポイント）を、平滑化フィルタ処理するポイントとして判定する。つまり、現在地を平滑化の処理対処範囲として設定する。ステップＳ１６５の処理が終了すると処理はステップＳ１６６に進む。
【０１４２】
ステップＳ１６６において、処理対象領域設定部１４３は、オキュパンシーマップの全ての位置（ブロック）に対して処理を行ったか否かを判定する。未処理の位置（ブロック）が存在すると判定された場合、処理はステップＳ１６１に戻り、処理対象ブロックを未処理のブロックに変えて、それ以降の処理が繰り返される。つまり、各ブロックに対してステップＳ１６１乃至ステップＳ１６６の処理を繰り返す。
【０１４３】
そして、ステップＳ１６６において、オキュパンシーマップの全ての位置（ブロック）を処理したと判定された場合、平滑化範囲設定処理が終了し、処理は図２１に戻る。
【０１４４】
以上のように各処理を実行することにより、ポイントクラウドデータに対するフィルタ処理の処理時間の増大を抑制することができる（フィルタ処理をより高速に行うことができる）。
【０１４５】
＜３．第２の実施の形態＞
＜復号装置＞
次に、以上のような各手法を実現する構成について説明する。図２３は、本技術を適用した画像処理装置の一態様である復号装置の構成の一例を示すブロック図である。図２３に示される復号装置２００は、ポイントクラウドのような３Ｄデータが２次元平面に投影されて符号化された符号化データを、２次元画像用の復号方法により復号し、３次元空間に投影する装置（ビデオベースドアプローチを適用した復号装置）である。例えば、復号装置２００は、符号化装置１００（図１６）がポイントクラウドを符号化して生成したビットストリームを復号し、ポイントクラウドを再構築する。
【０１４６】
なお、図２３においては、処理部やデータの流れ等の主なものを示しており、図２３に示されるものが全てとは限らない。つまり、復号装置２００において、図２３においてブロックとして示されていない処理部が存在したり、図２３において矢印等として示されていない処理やデータの流れが存在したりしてもよい。これは、復号装置２００内の処理部等を説明する他の図においても同様である。
【０１４７】
図２３に示されるように復号装置２００は、デマルチプレクサ２１１、補助パッチ情報復号部２１２、ビデオ復号部２１３、ビデオ復号部２１４、OMap復号部２１５、アンパッキング部２１６、および３Ｄ再構築部２１７を有する。
【０１４８】
デマルチプレクサ２１１は、データの逆多重化に関する処理を行う。例えば、デマルチプレクサ２１１は、復号装置２００に入力されるビットストリームを取得する。このビットストリームは、例えば、符号化装置１００より供給される。デマルチプレクサ２１１は、このビットストリームを逆多重化し、補助パッチ情報の符号化データを抽出し、それを補助パッチ情報復号部２１２に供給する。また、デマルチプレクサ２１１は、逆多重化により、ビットストリームから、位置情報（Geometry）のビデオフレームの符号化データを抽出し、それをビデオ復号部２１３に供給する。さらに、デマルチプレクサ２１１は、逆多重化により、ビットストリームから、属性情報（Texture）のビデオフレームの符号化データを抽出し、それをビデオ復号部２１４に供給する。また、デマルチプレクサ２１１は、逆多重化により、ビットストリームから、オキュパンシーマップの符号化データを抽出し、それをOMap復号部２１５に供給する。さらに、デマルチプレクサ２１１は、逆多重化により、ビットストリームから、パッキングに関する制御情報を抽出し、それをアンパッキング部２１６に供給する。
【０１４９】
補助パッチ情報復号部２１２は、補助パッチ情報の符号化データの復号に関する処理を行う。例えば、補助パッチ情報復号部２１２は、デマルチプレクサ２１１から供給される補助パッチ情報の符号化データを取得する。また、補助パッチ情報復号部２１２は、その取得したデータに含まれる補助パッチ情報の符号化データを復号（伸長）する。補助パッチ情報復号部２１２は、復号して得られた補助パッチ情報を３Ｄ再構築部２１７に供給する。
【０１５０】
ビデオ復号部２１３は、位置情報（Geometry）のビデオフレームの符号化データの復号に関する処理を行う。例えば、ビデオ復号部２１３は、デマルチプレクサ２１１から供給される位置情報（Geometry）のビデオフレームの符号化データを取得する。また、ビデオ復号部２１３は、その符号化データを例えばAVCやHEVC等の任意の２次元画像用の復号方法により復号し、位置情報（Geometry）のビデオフレームを得る。ビデオ復号部２１３は、その位置情報（Geometry）のビデオフレームを、アンパッキング部２１６に供給する。
【０１５１】
ビデオ復号部２１４は、属性情報（Texture）のビデオフレームの符号化データの復号に関する処理を行う。例えば、ビデオ復号部２１４は、デマルチプレクサ２１１から供給される属性情報（Texture）のビデオフレームの符号化データを取得する。また、ビデオ復号部２１４は、その符号化データを例えばAVCやHEVC等の任意の２次元画像用の復号方法により復号し、属性情報（Texture）のビデオフレームを得る。ビデオ復号部２１４は、その属性情報（Texture）のビデオフレームを、アンパッキング部２１６に供給する。
【０１５２】
OMap復号部２１５は、オキュパンシーマップの符号化データの復号に関する処理を行う。例えば、OMap復号部２１５は、デマルチプレクサ２１１から供給されるオキュパンシーマップの符号化データを取得する。また、OMap復号部２１５は、その符号化データを例えば算術符号化に対応する算術復号等の任意の復号方法により復号し、オキュパンシーマップを得る。OMap復号部２１５は、そのオキュパンシーマップを、アンパッキング部２１６に供給する。
【０１５３】
アンパッキング部２１６は、アンパッキングに関する処理を行う。例えば、アンパッキング部２１６は、ビデオ復号部２１３から位置情報（Geometry）のビデオフレームを取得し、ビデオ復号部２１４から属性情報（Texture）のビデオフレームを取得し、OMap復号部２１５からオキュパンシーマップを取得する。また、アンパッキング部２１６は、パッキングに関する制御情報に基づいて、位置情報（Geometry）のビデオフレームや属性情報（Texture）のビデオフレームをアンパッキングする。アンパッキング部２１６は、アンパッキングして得られた位置情報（Geometry）のデータ（ジオメトリパッチ等）や属性情報（Texture）のデータ（テクスチャパッチ等）、並びにオキュパンシーマップ等を、３Ｄ再構築部２１７に供給する。
【０１５４】
３Ｄ再構築部２１７は、ポイントクラウドの再構築に関する処理を行う。例えば、３Ｄ再構築部２１７は、補助パッチ情報復号部２１２から供給される補助パッチ情報、並びに、アンパッキング部２１６から供給される位置情報（Geometry）のデータ（ジオメトリパッチ等）、属性情報（Texture）のデータ（テクスチャパッチ等）、およびオキュパンシーマップ等に基づいて、ポイントクラウドを再構築する。３Ｄ再構築部２１７は、再構築したポイントクラウドを復号装置２００の外部に出力する。
【０１５５】
このポイントクラウドは、例えば、表示部に供給されて画像化され、その画像が表示されたり、記録媒体に記録されたり、通信を介して他の装置に供給されたりする。
【０１５６】
このような復号装置２００において、３Ｄ再構築部２１７は、再構築したポイントクラウドに対する３次元の平滑化フィルタ処理を行う。
【０１５７】
＜３Ｄ再構築部＞
図２４は、図２３の３Ｄ再構築部２１７の主な構成例を示すブロック図である。図２４に示されるように、３Ｄ再構築部２１７は、ジオメトリポイントクラウド（PointCloud）生成部２３１、３次元位置情報平滑化処理部２３２、およびテクスチャ合成部２３３を有する。
【０１５８】
ジオメトリポイントクラウド生成部２３１は、ジオメトリポイントクラウドの生成に関する処理を行う。例えば、ジオメトリポイントクラウド生成部２３１は、アンパッキング部２１６から供給されるジオメトリパッチを取得する。また、ジオメトリポイントクラウド生成部２３１は、その取得したジオメトリパッチや、補助パッチ情報等のその他の情報を用いて、ジオメトリポイントクラウド（ポイントクラウドの位置情報）を再構築する。ジオメトリポイントクラウド生成部２３１は、生成したジオメトリポイントクラウドを３次元位置情報平滑化処理部２３２に供給する。
【０１５９】
３次元位置情報平滑化処理部２３２は、３次元の平滑化フィルタ処理に関する処理を行う。例えば、３次元位置情報平滑化処理部２３２は、ジオメトリポイントクラウド生成部２３１から供給されるジオメトリポイントクラウドを取得する。また、３次元位置情報平滑化処理部２３２は、アンパッキング部２１６から供給されるオキュパンシーマップを取得する。
【０１６０】
３次元位置情報平滑化処理部２３２は、取得したジオメトリポイントクラウドに対して３次元の平滑化フィルタ処理を行う。その際、３次元位置情報平滑化処理部２３２は、上述したように、３次元空間を分割した局所領域毎の代表値を用いて３次元の平滑化フィルタ処理を行う。また、３次元位置情報平滑化処理部２３２は、取得したオキュパンシーマップを用いて、そのオキュパンシーマップにおけるパッチの端に対応する部分領域のポイントに対してのみ、３次元の平滑化フィルタ処理を行う。このようにすることにより、３次元位置情報平滑化処理部２３２は、より高速にフィルタ処理を行うことができる。
【０１６１】
３次元位置情報平滑化処理部２３２は、フィルタ処理を行ったジオメトリポイントクラウド（平滑化後ジオメトリポイントクラウド）をテクスチャ合成部２３３に供給する。
【０１６２】
テクスチャ合成部２３３は、ジオメトリとテクスチャの合成に関する処理を行う。例えば、テクスチャ合成部２３３は、３次元位置情報平滑化処理部２３２から供給される平滑化後ジオメトリポイントクラウドを取得する。また、テクスチャ合成部２３３は、アンパッキング部２１６から供給されるテクスチャパッチを取得する。テクスチャ合成部２３３は、平滑化後ジオメトリポイントクラウドに、テクスチャパッチ（すなわち属性情報）を合成し、ポイントクラウドを再構築する。平滑化後ジオメトリポイントクラウドは、３次元の平滑化により位置情報が変化している。つまり、厳密には、位置情報と属性情報とが対応しない部分が存在する可能性がある。そこで、テクスチャ合成部２３３は、テクスチャパッチから得られる属性情報を、３次元の平滑化を行った部分の位置情報の変化を反映させながら、平滑化後ジオメトリポイントクラウドに合成する。
【０１６３】
テクスチャ合成部２３３は、再構築したポイントクラウドを復号装置２００の外部に出力する。
【０１６４】
＜３次元位置情報平滑化処理部＞
図２５は、図２４の３次元位置情報平滑化処理部２３２の主な構成例を示すブロック図である。図２５に示されるように、３次元位置情報平滑化処理部２３２は、伝送情報取得部２５１、領域分割部２５２、領域内代表値導出部２５３、処理対象領域設定部２５４、および平滑化処理部２５５を有する。
【０１６５】
伝送情報取得部２５１は、符号化側から伝送される伝送情報が存在する場合、補助パッチ情報等として供給される伝送情報を取得する。伝送情報取得部２５１は、必要に応じて、その伝送情報を、領域分割部２５２、領域内代表値導出部２５３、および処理対象領域設定部２５４に供給する。例えば、伝送情報として局所領域に関する情報が供給された場合、伝送情報取得部２５１は、その局所領域に関する情報を領域分割部２５２に供給する。また、伝送情報として局所領域毎の代表値を示す情報が供給された場合、伝送情報取得部２５１は、その局所領域毎の代表値を示す情報を領域内代表値導出部２５３に供給する。さらに、伝送情報として処理対象領域を示す情報が供給された場合、伝送情報取得部２５１は、その処理対象領域を示す情報を処理対象領域設定部２５４に供給する。
【０１６６】
領域分割部２５２は、ジオメトリポイントクラウド生成部２３１から供給されるポイントクラウドの位置情報（ジオメトリポイントクラウド）を取得する。領域分割部２５２は、そのジオメトリポイントクラウドを含む３次元空間の領域を分割し、局所領域（グリッド）を設定する。その際、領域分割部１４１は、＜＃１．局所領域毎の代表値を用いた高速化＞において上述した方法により３次元空間を分割し、局所領域を設定する。なお、伝送情報取得部２５１から、符号化側から伝送された局所領域に関する情報が供給される場合、領域分割部２５２は、その情報により示される局所領域の設定（例えば、局所領域の形状やサイズ等）を採用する。
【０１６７】
領域分割部２５２は、その設定した局所領域に関する情報（例えば、局所領域の形状やサイズに関する情報等）とジオメトリポイントクラウドとを領域内代表値導出部２５３に供給する。
【０１６８】
領域内代表値導出部２５３は、領域分割部２５２から供給される局所領域に関する情報やジオメトリポイントクラウドを取得する。領域内代表値導出部２５３は、それらの情報に基づいて、領域分割部２５２により設定された各局所領域内のジオメトリポイントクラウドの代表値を導出する。その際、領域内代表値導出部２５３は、＜＃１．局所領域毎の代表値を用いた高速化＞において上述した方法によりその代表値を導出する。なお、伝送情報取得部２５１から、符号化側から伝送された局所領域毎の代表値を示す情報が供給される場合、領域内代表値導出部２５３は、その情報により示される局所領域毎の代表値を採用する。
【０１６９】
領域内代表値導出部１４２は、局所領域に関する情報、ジオメトリポイントクラウド、および、導出した局所領域毎の代表値を平滑化処理部２５５に供給する。
【０１７０】
処理対象領域設定部２５４は、オキュパンシーマップを取得する。処理対象領域設定部２５４は、そのオキュパンシーマップに基づいて、フィルタ処理をかける領域を設定する。その際、処理対象領域設定部２５４は、＜＃２．３次元のフィルタ処理の簡略化＞において上述したような方法により領域を設定する。つまり、処理対象領域設定部２５４は、オキュパンシーマップにおけるパッチの端に対応する部分領域を、フィルタ処理の処理対象領域として設定する。なお、伝送情報取得部２５１から、符号化側から伝送された処理対象領域を示す情報が供給される場合、処理対象領域設定部２５４は、その情報により示される処理対象領域を採用する。
【０１７１】
処理対象領域設定部２５４は、その設定した処理対象領域を示す情報を平滑化処理部２５５に供給する。
【０１７２】
平滑化処理部２５５は、領域内代表値導出部２５３から供給される局所領域に関する情報、ジオメトリポイントクラウド、および局所領域毎の代表値を取得する。また、平滑化処理部２５５は、処理対象領域設定部２５４から供給される処理対象領域を示す情報を取得する。
【０１７３】
平滑化処理部２５５は、それらの情報に基づいて、３次元の平滑化フィルタ処理を行う。つまり、平滑化処理部２５５は、＜３次元のフィルタ処理の高速化＞において上述したように、ジオメトリポイントクラウドの処理対象領域内のポイントに対して、局所領域毎の代表値を参照値として用いて３次元の平滑化フィルタ処理を行う。したがって、平滑化処理部２５５は、より高速に３次元の平滑化フィルタ処理を行うことができる。
【０１７４】
平滑化処理部２５５は、３次元の平滑化フィルタ処理を行ったジオメトリポイントクラウド（平滑化後ジオメトリポイントクラウド）を、テクスチャ合成部２３３に供給する。
【０１７５】
＜復号処理の流れ＞
次に、復号装置２００により実行される復号処理の流れの例を、図２６のフローチャートを参照して説明する。
【０１７６】
復号処理が開始されると、復号装置２００のデマルチプレクサ２１１は、ステップＳ２０１において、ビットストリームを逆多重化する。
【０１７７】
ステップＳ２０２において、補助パッチ情報復号部２１２は、ステップＳ２０１においてビットストリームから抽出された補助パッチ情報を復号する。
【０１７８】
ステップＳ２０３において、ビデオ復号部２１３は、ステップＳ２０１においてビットストリームから抽出されたジオメトリビデオフレーム（位置情報のビデオフレーム）の符号化データを復号する。
【０１７９】
ステップＳ２０４において、ビデオ復号部２１４は、ステップＳ２０１においてビットストリームから抽出されたカラービデオフレーム（属性情報のビデオフレーム）の符号化データを復号する。
【０１８０】
ステップＳ２０５において、OMap復号部２１５は、ステップＳ２０１においてビットストリームから抽出されたオキュパンシーマップの符号化データを復号する。
【０１８１】
ステップＳ２０６において、アンパッキング部２１６は、ステップＳ２０３において符号化データが復号されて得られたジオメトリビデオフレームをアンパッキングし、ジオメトリパッチを生成する。また、アンパッキング部２１６は、ステップＳ２０４において符号化データが復号されて得られたカラービデオフレームをアンパッキングし、テクスチャパッチを生成する。さらに、アンパッキング部２１６は、およびステップＳ２０５において符号化データが復号されて得られたオキュパンシーマップをアンパッキングし、ジオメトリパッチやテクスチャパッチに対応するオキュパンシーマップを抽出する。
【０１８２】
ステップＳ２０７において、３Ｄ再構築部２１７は、ステップＳ２０２において得られた補助パッチ情報、並びに、ステップＳ２０６において得られたジオメトリパッチ、テクスチャパッチ、およびオキュパンシーマップ等に基づいて、ポイントクラウドを再構築する。
【０１８３】
ステップＳ２０７の処理が終了すると復号処理が終了する。
【０１８４】
＜ポイントクラウド再構築処理の流れ＞
次に、図２６のステップＳ２０７において実行されるポイントクラウド再構築処理の流れの例を、図２７のフローチャートを参照して説明する。
【０１８５】
ポイントクラウド再構築処理が開始されると、３Ｄ再構築部２１７のジオメトリポイントクラウド生成部２３１は、ステップＳ２２１において、ジオメトリポイントクラウドを再構築する。
【０１８６】
ステップＳ２２２において、３次元位置情報平滑化処理部２３２は、平滑化処理を実行し、ステップＳ２２１において生成されたジオメトリポイントクラウドに対して、３次元の平滑化フィルタ処理を行う。
【０１８７】
ステップＳ２２３において、テクスチャ合成部２３３は、平滑化後ジオメトリポイントクラウドにテクスチャパッチを合成する。
【０１８８】
ステップＳ２２３の処理が終了するとポイントクラウド再構築処理が終了し、処理は図２６に戻る。
【０１８９】
＜平滑化処理の流れ＞
次に、図２８のフローチャートを参照して、図２７のステップＳ２２２において実行される平滑化処理の流れの例を説明する。
【０１９０】
平滑化処理が開始されると、伝送情報取得部２５１は、ステップＳ２４１において、平滑化に関する伝送情報を取得する。なお、伝送情報が存在しない場合、この処理は省略される。
【０１９１】
ステップＳ２４２において、領域分割部２５２は、ポイントクラウドを含む３次元空間を局所領域に分割する。領域分割部２５２は、＜＃１．局所領域毎の代表値を用いた高速化＞において上述した方法により３次元空間を分割し、局所領域を設定する。なお、ステップＳ２４１において、伝送情報として局所領域に関する情報が取得された場合、領域分割部２５２は、その情報により示される局所領域の設定（局所領域の形状やサイズ等）を採用する。
【０１９２】
ステップＳ２４３において、領域内代表値導出部２５３は、ステップＳ２４２において設定された局所領域毎のポイントクラウドの代表値を導出する。領域内代表値導出部２５３は、＜＃１．局所領域毎の代表値を用いた高速化＞において上述した方法によりその代表値を導出する。なお、ステップＳ２４１において、伝送情報として局所領域毎の代表値を示す情報が取得された場合、領域内代表値導出部２５３は、その情報により示される局所領域毎の代表値を採用する。
【０１９３】
ステップＳ２４４において、処理対象領域設定部２５４は、平滑化処理を行う範囲を設定する。処理対象領域設定部２５４は、＜＃２．３次元のフィルタ処理の簡略化＞において上述したような方法により領域を設定する。つまり、処理対象領域設定部２５４は、図２２のフローチャートを参照して説明した平滑化範囲設定処理を実行して、フィルタ処理の処理対象範囲を設定する。なお、ステップＳ２４１において、伝送情報として処理対象領域を示す情報が取得された場合、処理対象領域設定部２５４は、その情報により示される処理対象領域の設定を採用する。
【０１９４】
ステップＳ２４５において、平滑化処理部２５５は、ステップＳ２４４において設定された処理対象範囲に対して、各領域の代表値を参照して平滑化処理を行う。平滑化処理部２５５は、＜３次元のフィルタ処理の高速化＞において上述したように、ジオメトリポイントクラウドの処理対象領域内のポイントに対して、局所領域毎の代表値を参照値として用いて３次元の平滑化フィルタ処理を行う。したがって、平滑化処理部２５５は、より高速に３次元の平滑化フィルタ処理を行うことができる。
【０１９５】
ステップＳ２４５の処理が終了すると平滑化処理が終了し、処理は図２７に戻る。
【０１９６】
以上のように各処理を実行することにより、ポイントクラウドデータに対するフィルタ処理の処理時間の増大を抑制することができる（フィルタ処理をより高速に行うことができる）。
【０１９７】
＜４．変形例＞
第１の実施の形態および第２の実施の形態においては、３次元の平滑化フィルタ処理をポイントクラウドの位置情報に対して行うように説明したが、３次元の平滑化フィルタ処理は、ポイントクラウドの属性情報に対しても行うことができる。この場合、属性情報が平滑化されるので、例えば、ポイントの色等が変化する。
【０１９８】
例えば、符号化装置１００の場合、パッチ分解部１１１（図１７）において、テクスチャ補正部１３４に供給されるテクスチャパッチに対して平滑化処理を行う平滑化処理部（例えば、３次元属性情報平滑化処理部）を設けるようにすればよい。
【０１９９】
また、例えば、復号装置２００の場合、３Ｄ再構築部２１７（図２４）において、テクスチャ合成部２３３に供給されるテクスチャパッチに対して平滑化処理を行う平滑化処理部（例えば、３次元属性情報平滑化処理部）を設けるようにすればよい。
【０２００】
＜５．付記＞
＜制御情報＞
以上の各実施の形態において説明した本技術に関する制御情報を符号化側から復号側に伝送するようにしてもよい。例えば、上述した本技術を適用することを許可（または禁止）するか否かを制御する制御情報（例えばenabled_flag）を伝送するようにしてもよい。また、例えば、上述した本技術を適用することを許可（または禁止）する範囲（例えばブロックサイズの上限若しくは下限、またはその両方、スライス、ピクチャ、シーケンス、コンポーネント、ビュー、レイヤ等）を指定する制御情報を伝送するようにしてもよい。
【０２０１】
＜コンピュータ＞
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
【０２０２】
図２９は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０２０３】
図２９に示されるコンピュータ９００において、CPU（Central Processing Unit）９０１、ROM（Read Only Memory）９０２、RAM（Random Access Memory）９０３は、バス９０４を介して相互に接続されている。
【０２０４】
バス９０４にはまた、入出力インタフェース９１０も接続されている。入出力インタフェース９１０には、入力部９１１、出力部９１２、記憶部９１３、通信部９１４、およびドライブ９１５が接続されている。
【０２０５】
入力部９１１は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部９１２は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部９１３は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部９１４は、例えば、ネットワークインタフェースよりなる。ドライブ９１５は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア９２１を駆動する。
【０２０６】
以上のように構成されるコンピュータでは、CPU９０１が、例えば、記憶部９１３に記憶されているプログラムを、入出力インタフェース９１０およびバス９０４を介して、RAM９０３にロードして実行することにより、上述した一連の処理が行われる。RAM９０３にはまた、CPU９０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０２０７】
コンピュータ（CPU９０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア９２１に記録して適用することができる。その場合、プログラムは、リムーバブルメディア９２１をドライブ９１５に装着することにより、入出力インタフェース９１０を介して、記憶部９１３にインストールすることができる。
【０２０８】
また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部９１４で受信し、記憶部９１３にインストールすることができる。
【０２０９】
その他、このプログラムは、ROM９０２や記憶部９１３に、あらかじめインストールしておくこともできる。
【０２１０】
＜本技術の適用対象＞
以上においては、ポイントクラウドデータの符号化・復号に本技術を適用する場合について説明したが、本技術は、これらの例に限らず、任意の規格の３Ｄデータの符号化・復号に対して適用することができる。つまり、上述した本技術と矛盾しない限り、符号化・復号方式等の各種処理、並びに、３Ｄデータやメタデータ等の各種データの仕様は任意である。また、本技術と矛盾しない限り、上述した一部の処理や仕様を省略してもよい。
【０２１１】
本技術は、任意の構成に適用することができる。例えば、本技術は、衛星放送、ケーブルＴＶなどの有線放送、インターネット上での配信、およびセルラー通信による端末への配信などにおける送信機や受信機（例えばテレビジョン受像機や携帯電話機）、または、光ディスク、磁気ディスクおよびフラッシュメモリなどの媒体に画像を記録したり、これら記憶媒体から画像を再生したりする装置（例えばハードディスクレコーダやカメラ）などの、様々な電子機器に適用され得る。
【０２１２】
また、例えば、本技術は、システムLSI（Large Scale Integration）等としてのプロセッサ（例えばビデオプロセッサ）、複数のプロセッサ等を用いるモジュール（例えばビデオモジュール）、複数のモジュール等を用いるユニット（例えばビデオユニット）、または、ユニットにさらにその他の機能を付加したセット（例えばビデオセット）等、装置の一部の構成として実施することもできる。
【０２１３】
また、例えば、本技術は、複数の装置により構成されるネットワークシステムにも適用することもできる。例えば、本技術を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングとして実施するようにしてもよい。例えば、コンピュータ、AV（Audio Visual）機器、携帯型情報処理端末、IoT（Internet of Things）デバイス等の任意の端末に対して、画像（動画像）に関するサービスを提供するクラウドサービスにおいて本技術を実施するようにしてもよい。
【０２１４】
なお、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、および、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。
【０２１５】
＜本技術を適用可能な分野・用途＞
本技術を適用したシステム、装置、処理部等は、例えば、交通、医療、防犯、農業、畜産業、鉱業、美容、工場、家電、気象、自然監視等、任意の分野に利用することができる。また、その用途も任意である。
【０２１６】
＜その他＞
なお、本明細書において「フラグ」とは、複数の状態を識別するための情報であり、真(1)または偽(0)の２状態を識別する際に用いる情報だけでなく、３以上の状態を識別することが可能な情報も含まれる。したがって、この「フラグ」が取り得る値は、例えば1/0の２値であってもよいし、３値以上であってもよい。すなわち、この「フラグ」を構成するbit数は任意であり、１bitでも複数bitでもよい。また、識別情報（フラグも含む）は、その識別情報をビットストリームに含める形だけでなく、ある基準となる情報に対する識別情報の差分情報をビットストリームに含める形も想定されるため、本明細書においては、「フラグ」や「識別情報」は、その情報だけではなく、基準となる情報に対する差分情報も包含する。
【０２１７】
また、符号化データ（ビットストリーム）に関する各種情報（メタデータ等）は、符号化データに関連づけられていれば、どのような形態で伝送または記録されるようにしてもよい。ここで、「関連付ける」という用語は、例えば、一方のデータを処理する際に他方のデータを利用し得る（リンクさせ得る）ようにすることを意味する。つまり、互いに関連付けられたデータは、１つのデータとしてまとめられてもよいし、それぞれ個別のデータとしてもよい。例えば、符号化データ（画像）に関連付けられた情報は、その符号化データ（画像）とは別の伝送路上で伝送されるようにしてもよい。また、例えば、符号化データ（画像）に関連付けられた情報は、その符号化データ（画像）とは別の記録媒体（または同一の記録媒体の別の記録エリア）に記録されるようにしてもよい。なお、この「関連付け」は、データ全体でなく、データの一部であってもよい。例えば、画像とその画像に対応する情報とが、複数フレーム、１フレーム、またはフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
【０２１８】
なお、本明細書において、「合成する」、「多重化する」、「付加する」、「一体化する」、「含める」、「格納する」、「入れ込む」、「差し込む」、「挿入する」等の用語は、例えば符号化データとメタデータとを１つのデータにまとめるといった、複数の物を１つにまとめることを意味し、上述の「関連付ける」の１つの方法を意味する。
【０２１９】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０２２０】
例えば、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。
【０２２１】
また、例えば、上述したプログラムは、任意の装置において実行されるようにしてもよい。その場合、その装置が、必要な機能（機能ブロック等）を有し、必要な情報を得ることができるようにすればよい。
【０２２２】
また、例えば、１つのフローチャートの各ステップを、１つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。さらに、１つのステップに複数の処理が含まれる場合、その複数の処理を、１つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。換言するに、１つのステップに含まれる複数の処理を、複数のステップの処理として実行することもできる。逆に、複数のステップとして説明した処理を１つのステップとしてまとめて実行することもできる。
【０２２３】
また、例えば、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
【０２２４】
また、例えば、本技術に関する複数の技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術の一部または全部を、他の実施の形態において説明した本技術の一部または全部と組み合わせて実施することもできる。また、上述した任意の本技術の一部または全部を、上述していない他の技術と併用して実施することもできる。
【符号の説明】
【０２２５】
１００  符号化装置，  １１１  パッチ分解部，  １１２  パッキング部，  １１３  OMap生成部，  １１４  補助パッチ情報圧縮部，  １１５  ビデオ符号化部，  １１６  ビデオ符号化部，  １１７  OMap符号化部，  １１８  マルチプレクサ，  １３１  パッチ分解処理部，  １３２  ジオメトリ復号部，  １３３  ３次元位置情報平滑化処理部，  １３４  テクスチャ補正部，  １４１  領域分割部，  １４２  領域内代表値導出部，  １４３  処理対象領域設定部，  １４４  平滑化処理部，  １４５  伝送情報生成部，  ２００  復号装置，  ２１１  デマルチプレクサ，  ２１２  補助パッチ情報復号部，  ２１３  ビデオ復号部，  ２１４  ビデオ復号部，  ２１５  OMap復号部，  ２１６  アンパッキング部，  ２１７  ３Ｄ再構築部，  ２３１  ジオメトリポイントクラウド生成部，  ２３２  ３次元位置情報平滑化処理部，  ２３３  テクスチャ合成部，  ２５１  伝送情報取得部，  ２５２  領域分割部，  ２５３  領域内代表値導出部，  ２５４  処理対象領域設定部，  ２５５  平滑化処理部
【図１】
2020012967.tif 000003
【図２】
2020012967.tif 000004
【図３】
2020012967.tif 000005
【図４】
2020012967.tif 000006
【図５】
2020012967.tif 000007
【図６】
2020012967.tif 000008
【図７】
2020012967.tif 000009
【図８】
2020012967.tif 000010
【図９】
2020012967.tif 000011
【図１０】
2020012967.tif 000012
【図１１】
2020012967.tif 000013
【図１２】
2020012967.tif 000014
【図１３】
2020012967.tif 000015
【図１４】
2020012967.tif 000016
【図１５】
2020012967.tif 000017
【図１６】
2020012967.tif 000018
【図１７】
2020012967.tif 000019
【図１８】
2020012967.tif 000020
【図１９】
2020012967.tif 000021
【図２０】
2020012967.tif 000022
【図２１】
2020012967.tif 000023
【図２２】
2020012967.tif 000024
【図２３】
2020012967.tif 000025
【図２４】
2020012967.tif 000026
【図２５】
2020012967.tif 000027
【図２６】
2020012967.tif 000028
【図２７】
2020012967.tif 000029
【図２８】
2020012967.tif 000030
【図２９】
2020012967.tif 000031
【国際調査報告】
2020012967.tif 000032
2020012967.tif 000033