JP2022003716A - 画像処理装置および方法 - Google Patents

画像処理装置および方法 Download PDF

Info

Publication number
JP2022003716A
JP2022003716A JP2018186368A JP2018186368A JP2022003716A JP 2022003716 A JP2022003716 A JP 2022003716A JP 2018186368 A JP2018186368 A JP 2018186368A JP 2018186368 A JP2018186368 A JP 2018186368A JP 2022003716 A JP2022003716 A JP 2022003716A
Authority
JP
Japan
Prior art keywords
unit
data
value
geometry data
occupancy map
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018186368A
Other languages
English (en)
Inventor
智 隈
Satoshi Kuma
央二 中神
Hisaji Nakagami
弘幸 安田
Hiroyuki Yasuda
幸司 矢野
Koji Yano
毅 加藤
Takeshi Kato
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Group Corp
Original Assignee
Sony Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Group Corp filed Critical Sony Group Corp
Priority to JP2018186368A priority Critical patent/JP2022003716A/ja
Priority to PCT/JP2019/036296 priority patent/WO2020071101A1/ja
Priority to US17/278,004 priority patent/US11948337B2/en
Publication of JP2022003716A publication Critical patent/JP2022003716A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/06Topological mapping of higher dimensional structures onto lower dimensional surfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】3Dデータの表示用2次元画像の画質の低減を抑制する画像処理装置および方法を提供する。【解決手段】画像処理装置(符号化装置300)は、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成するジオメトリデータ生成部(パッキング部312)と、ジオメトリデータ生成部により生成されたジオメトリデータを符号化する符号化部と、を備える。【選択図】図13

Description

本開示は、画像処理装置および方法に関し、特に、画質の低減を抑制することができるようにした画像処理装置および方法に関する。
従来、例えばポイントクラウド(Point cloud)のような3次元構造を表す3Dデータの符号化方法として、例えばOctree等のような、ボクセル(Voxel)を用いた符号化があった(例えば非特許文献1参照)。
近年、その他の符号化方法として、例えば、ポイントクラウドの位置情報と属性情報とを小領域毎に2次元平面に投影し、その2次元平面に投影された画像(パッチ)をフレーム画像内に配置し、そのフレーム画像を2次元画像用の符号化方法で符号化する方法(以下、ビデオベースドアプローチ(Video-based approach)とも称する)が提案された。
このような3Dデータの符号化方法においては、従来、2次元平面に投影された位置情報に関して、上述のフレーム画像のNxN画素の単位で、その領域における3Dデータの位置情報に対応するデプス値(Depth)の有無を判定するためのオキュパンシーマップ(OccupancyMap)が定義され、ビットストリーム(Bitstream)に記述されていた。
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
しかしながら、このオキュパンシーマップは上述のようにNxN画素単位のデータとして生成されるため、フレーム画像の解像度、すなわち、デプス値の解像度に比べて低解像度である。そのため、このオキュパンシーマップを利用してフレーム画像から3Dデータを再構築する場合、低解像度のオキュパンシーマップの影響により、3Dデータの品質(すなわち、その3Dデータを2次元平面に投影した表示用画像の画質)が低減するおそれがあった。
本開示は、このような状況に鑑みてなされたものであり、3Dデータの表示用2次元画像の画質の低減を抑制することができるようにするものである。
本技術の一側面の画像処理装置は、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成するジオメトリデータ生成部と、前記ジオメトリデータ生成部により生成された前記ジオメトリデータを符号化する符号化部とを備える画像処理装置である。
本技術の一側面の画像処理方法は、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成し、生成された前記ジオメトリデータを符号化する画像処理方法である。
本技術の他の側面の画像処理装置は、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データを復号する復号部と、前記復号部により前記符号化データから生成された前記ジオメトリデータから、前記3Dデータの位置を示すデプス値と前記オキュパンシーマップ情報とを抽出する抽出部とを備える画像処理装置である。
本技術の他の側面の画像処理方法は、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データを復号し、前記符号化データから生成された前記ジオメトリデータから、前記3Dデータの位置を示すデプス値と前記オキュパンシーマップ情報とを抽出する画像処理方法である。
本技術の一側面の画像処理装置および方法においては、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータが生成され、その生成されたジオメトリデータが符号化される。
本技術の他の側面の画像処理装置および方法においては、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データが復号され、その符号化データから生成されたジオメトリデータから、その3Dデータの位置を示すデプス値とオキュパンシーマップ情報とが抽出される。
ポイントクラウドの符号化方法の例を説明する図である。 ジオメトリデータの値域への特殊値の埋め込みの様子の例を説明する図である。 シンタックスの例を示す図である。 関連するパラメータの設定例について説明する図である。 シンタックスの例を説明する図である。 シグナルするパラメータの例を説明する図である。 オキュパンシーマップ情報の抽出の様子の例を示す図である。 シンタックスの例を説明する図である。 関連するパラメータの他の設定例について説明する図である。 シンタックスの例を説明する図である。 関連するパラメータの他の設定例について説明する図である。 シンタックスの例を説明する図である。 符号化装置の主な構成例を示すブロック図である。 パッキング部の主な構成例を説明する図である。 符号化処理の流れの例を説明するフローチャートである。 パッキング処理の流れの例を説明するフローチャートである。 パラメータ設定処理の流れの例を説明するフローチャートである。 パラメータ設定処理の流れの例を説明する、図17に続くフローチャートである。 復号装置の主な構成例を示すブロック図である。 復号処理の流れの例を説明するフローチャートである。 ポイントクラウドの符号化方法の例を説明する図である。 符号化装置の主な構成例を示すブロック図である。 パッキング部の主な構成例を説明する図である。 符号化処理の流れの例を説明するフローチャートである。 復号装置の主な構成例を示すブロック図である。 復号処理の流れの例を説明するフローチャートである。 復号処理の流れの例を説明する、図26に続くフローチャートである。 コンピュータの主な構成例を示すブロック図である。
以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.高解像度のオキュパンシーマップ
2.第1の実施の形態(符号化装置)
3.第2の実施の形態(復号装置)
4.局所的な高解像度のオキュパンシーマップ
5.第3の実施の形態(符号化装置)
6.第4の実施の形態(復号装置)
7.付記
<1.高解像度のオキュパンシーマップ>
<技術内容・技術用語をサポートする文献等>
本技術で開示される範囲は、実施の形態に記載されている内容だけではなく、出願当時において公知となっている以下の非特許文献に記載されている内容も含まれる。
非特許文献1:(上述)
非特許文献2:TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "Advanced video coding for generic audiovisual services", H.264, 04/2017
非特許文献3:TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "High efficiency video coding", H.265, 12/2016
非特許文献4: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
つまり、上述の非特許文献に記載されている内容もサポート要件を判断する際の根拠となる。例えば、非特許文献3に記載されているQuad-Tree Block Structure、非特許文献4に記載されているQTBT(Quad Tree Plus Binary Tree) Block Structureが実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、特許請求の範囲のサポート要件を満たすものとする。また、例えば、パース(Parsing)、シンタックス(Syntax)、セマンティクス(Semantics)等の技術用語についても同様に、実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、特許請求の範囲のサポート要件を満たすものとする。
<ポイントクラウド>
従来、点群の位置情報や属性情報等により3次元構造を表すポイントクラウド(Point cloud)等のデータが存在した。ポイントクラウドはデータ構造が比較的単純であるとともに、十分に多くの点を用いることにより任意の立体構造を十分な精度で表現することができる。
<ビデオベースドアプローチの概要>
このようなポイントクラウドの位置情報や属性情報を、小領域毎に2次元平面に投影し、その2次元平面に投影された画像(パッチ)をフレーム画像内に配置し、そのフレーム画像を2次元画像用の符号化方法で符号化するビデオベースドアプローチ(Video-based approach)が提案された。
このビデオベースドアプローチでは、入力されたポイントクラウド(Point cloud)が複数のセグメンテーション(領域とも称する)に分割され、そのセグメンテーション毎に各ポイントが2次元平面に投影される。ポイントクラウドは各ポイントの位置情報(Geometry)と属性情報(Texture)とにより構成されるので、この2次元平面への投影は、その位置情報と属性情報のそれぞれについて行われる。
そして、この2次元平面に投影された各セグメンテーション(パッチとも称する)は、フレーム画像(2次元画像)に配置される。つまり、位置情報のパッチが配置されたフレーム画像(ジオメトリビデオフレーム(Geometry video frame)とも称する)と、属性情報のパッチが配置されたフレーム画像(カラービデオフレーム(Color video frame)とも称する)とが生成される。
なお、ジオメトリビデオフレームでは、ポイントの位置情報は、奥行方向の位置情報(デプス値(Depth))として表現される。つまり、そのフレーム画像の各画素値は、このデプス値を示す。
これらのフレーム画像は、それぞれ、例えばAVC(Advanced Video Coding)やHEVC(High Efficiency Video Coding)等といった、2次元平面画像用の符号化方式により符号化される。
<オキュパンシーマップ>
このようなビデオベースドアプローチの場合、さらに、オキュパンシーマップを用いることもできる。オキュパンシーマップは、ジオメトリビデオフレームのNxN画素毎に、投影画像(パッチ)の有無を示すマップ情報である。例えば、オキュパンシーマップは、ジオメトリビデオフレームの、パッチが存在する領域(NxN画素)を値「1」で示し、パッチが存在しない領域(NxN画素)を値「0」で示す。
このようなオキュパンシーマップが、ジオメトリビデオフレームやカラービデオフレームとは別のデータとして符号化され、復号側に伝送される。デコーダは、このオキュパンシーマップを参照することにより、パッチが存在する領域であるか否かを把握することができるので、符号化・復号により生じるノイズ等の影響を抑制することができ、より正確に3Dデータを復元することができる。例えば、符号化・復号によりデプス値が変化しても、デコーダは、オキュパンシーマップを参照することにより、パッチが存在しない領域のデプス値を無視する(3Dデータの位置情報として処理しないようにする)ことができる。
ただし、一般的に、画像として直接表示されることのない(補助情報である)オキュパンシーマップは、符号量の増大を抑制するために、上述のようにジオメトリビデオフレームの解像度(1x1画素単位)よりも低解像度(NxN画素単位)の情報として生成されていた。そのため、この低解像度のオキュパンシーマップの影響により、復元した3Dデータの品質が低減し、その3Dデータを2次元平面に投影した表示用画像の画質が低減するおそれがあった。
<オキュパンシーマップとジオメトリデータの合成>
そこで、オキュパンシーマップをジオメトリビデオフレームに埋め込むようにする。換言するに、オキュパンシーマップとジオメトリビデオフレームとを合成するようにする。
さらに換言するに、図1の表10の一番上の段に示されるように、ジオメトリビデオフレームの画素値(ジオメトリデータとも称する)の値域(Range)に、オキュパンシーマップ情報を表す特殊値(Special value)を含むジオメトリデータを生成するようにする。つまり、ジオメトリデータが特殊値の場合、オキュパンシーマップ情報を表し、ジオメトリデータがそれ以外の値の場合、デプス値を表すようにする。
このようにすることにより、ジオメトリデータが、デプス値とオキュパンシーマップ情報の両方を表すことができるようになる。したがって、ジオメトリビデオフレームやカラービデオフレームとは別にオキュパンシーマップを伝送する必要が無くなり、符号化効率の低減を抑制する(典型的には符号化効率を向上させる)ことができる。
<オキュパンシーマップ情報>
オキュパンシーマップ情報は、オキュパンシーマップが示す情報、すなわち、パッチの有無を示す情報である。例えば、特殊値が、ジオメトリビデオフレームのその位置にパッチが存在しないことを示すようにしてもよい。換言するに、ジオメトリデータが特殊値の場合、その画素にはパッチが存在しないことを示し(occupancy map = 0)、ジオメトリデータが特殊値以外の値の場合、パッチのデプス値を示す(occupancy map = 1)ようにしてもよい。
このようにすることにより、パッチの存在の有無を画素単位で表すことができる。すなわち、より高解像度のオキュパンシーマップ(例えば、1x1画素単位)を復号側に伝送することができる。つまり、デコーダは、より高解像度のオキュパンシーマップを利用して復号を行うことができる。換言するに、デコーダは、より高解像度に(より細かい領域毎に)パッチの有無を把握することができる。したがって、例えば、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制する(典型的には画質を向上させる)ことができる。
すなわち、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<特殊値の設定>
なお、この特殊値(special value)は、予め定められていてもよいが、図1の表10の上から2段目乃至6段目の左側に示されるように、例えばエンコーダ等において設定することができるようにしてもよい。
例えば、図2の上側の矢印は、ジオメトリデータがデプス値のみを表す場合の、ジオメトリデータの値域の例を示す。この場合、両矢印21で示されるように、0乃至255の範囲がデプス値(Depth)を表す値域として設定されている。また、図2の下側の矢印は、特殊値を含む場合の、ジオメトリデータの値域の例を示す。この場合、両矢印24で示される範囲がデプス値(Depth)を表す値域として設定されている。また、この両矢印24の範囲の外である値0に、特殊値22が設定されている。
このように特殊値を設定可能とすることにより、エンコーダは、ジオメトリデータ(のデプス値(Depth)を表す値域(両矢印24で示される範囲))に応じて、特殊値を設定することができる。デプス値を表す値域は、3Dデータに依存し、一定ではない。しかしながら、上述のように特殊値を設定可能とすることにより、エンコーダは、例えば図2のように、両矢印24の範囲の外に特殊値22を設定することができる。したがって、エンコーダは、デプス値と識別可能な特殊値を設定することができる。
例えば図3のシンタックス31に示されるように、パッチが存在しない場合(!occupied)、ジオメトリデータが特殊値に設定される(Depth = special value)。なお、このシンタックス31では、ジオメトリデータを「Depth」と表している。これは、従来のジオメトリデータがデプス値のみを表すものであったことによるものである。
特殊値を設定する位置(値域における位置)は、任意である。例えば、ジオメトリデータの最小値(min)としてもよいし(図1の表10の上から2段目)、ジオメトリデータの最大値(max)としてもよいし(図1の表10の上から3段目)、最小値および最大値以外の値(中間値(middle))としてもよい(図1の表10の上から4段目)。また、設定する特殊値は、単数であってもよいし、複数であってもよい(図1の表10の上から6段目)。つまり、ジオメトリデータの値域の最小値、最大値、または中間値の内の少なくとも1つを、特殊値に設定するようにしてもよい。
<ガードマージン>
また、図2の例のように、特殊値22と両矢印24の範囲(デプス値(Depth)を表す値域)との間に、両矢印23で示されるようなマージン(ガードマージンとも称する)を設けるようにしてもよい。
ジオメトリデータは、符号化・復号により値が変化し得る。したがって、例えば特殊値22と両矢印24の範囲とが隣接していると、符号化前はデプス値であったジオメトリデータが復号結果において特殊値22となるケースも考えられる。そこで、ジオメトリデータの値域にガードマージンを設けることにより、符号化・復号によるノイズの影響を抑制し、特殊値とデプス値とをより明確に分離することができる。
このガードマージン(guard margin)は、予め定められていてもよいが、図1の表10の上から7段目の左側に示されるように、例えばエンコーダ等において設定することができるようにしてもよい。つまり、ジオメトリデータの値域の、3Dデータの位置を示すデプス値を表す値域と特殊値との間に、所定の幅のマージンを設定するようにしてもよい。
このようにガードマージン(両矢印23で示される範囲)を設定可能とすることにより、エンコーダは、ジオメトリデータ(のデプス値(Depth)を表す値域(両矢印24で示される範囲))に応じて、特殊値22やガードマージンを設定することができる。デプス値を表す値域は、3Dデータに依存し、一定ではない。しかしながら、上述のようにガードマージンを設定可能とすることにより、エンコーダは、例えば図2のように、両矢印24の範囲の外にガードマージンと特殊値22とを設定することができる。したがって、エンコーダは、より明確にデプス値と識別可能な特殊値を設定することができる。
なお、この、ガードマージンの大きさ(幅)は、任意である。ガードマージンの幅が広い程、特殊値22とデプス値を表す値域との間の距離が広がるので、より明確に特殊値22とデプス値とを識別することができるようになる(符号化・復号によるノイズに対する耐性を向上させることができる)。ただし、ガードマージンの幅広い程、ジオメトリデータの値域としてより広い値域が必要になる。
例えば、図1の表10の上から7段目の右側に示されるように、符号化のターゲットレート(QP)等に基づいてガードマージンの幅を設定するようにしてもよい。このようにすることにより、ジオメトリデータに応じた幅のガードマージンを設定することができる。
<閾値>
上述したように、ジオメトリデータは、符号化・復号により値が変化し得る。したがって、復号結果においてジオメトリデータがガードマージン内、すなわち、デプス値を表す値域でも特殊値でもない値域に位置するケースも考えられる。そのような場合、そのジオメトリデータがデプス値であるか特殊値であるかを識別する必要がある。
例えば図4の場合、特殊値が0(special value = 0)に設定され、その特殊値(点線41)とデプス値を表す値域の最小値(点線42)との間の値域(両矢印43で示される範囲)がガードマージン(Guard margin)として設定されている。また、図中実線グレーの円で示されるジオメトリデータ40aは、符号化前のジオメトリデータを示し、点線白の円で示されるジオメトリデータ40bは、復号後のジオメトリデータを示している。なお、ジオメトリデータ40aおよびジオメトリデータ40bを互いに区別して説明する必要が無い場合、ジオメトリデータ40と称する。
図4においては、1つのジオメトリデータ40a、1つのジオメトリデータ40b、およびジオメトリデータ40は、1つずつ符号を付しているが、図4に示される全ての実線グレーの円は、それぞれの位置の符号化前のジオメトリデータ40aを示す。同様に、図4に示される全ての点線白の円は、それぞれの位置の復号後のジオメトリデータ40bを示す。また、図4に示される全ての実線グレーの円および点線白の円は、それぞれの位置のジオメトリデータ40を示す。
例えば復号後のジオメトリデータ40bが両矢印43で示されるガードマージンに位置する場合、そのジオメトリデータ40bを、特殊値(点線41)、または、デプス値を表す値域の最小値(点線42)にクリップするようにしてもよい。例えば、ジオメトリデータ40bが図4において実線で示される境界44より小さい場合、そのジオメトリデータ40bが、特殊値(点線41)にクリップされるようにしてもよい(矢印45)。
また、例えば、ジオメトリデータ40bが境界44以上であると判定された場合、そのジオメトリデータ40bが、デプス値を表す値域の最小値(点線42)にクリップされるようにしてもよい(矢印46)。
例えば、図5のシンタックス51のように、ジオメトリデータ40bの値dが境界44よりも小さい場合、エンコーダは、そのジオメトリデータ40bを特殊値にクリップする(occupancy map = 0)。また、ガードマージン内のジオメトリデータ40bが境界44以上である場合、エンコーダは、ジオメトリデータ40bを特殊値にクリップせずに(occupancy map = 1)、シンタックス52のように、ガードマージンの上限にクリップする(d = max(d, guard margin))。
このように、ジオメトリデータをクリップさせることにより、より明確に特殊値22とデプス値とを識別することができるようになる(符号化・復号によるノイズに対する耐性を向上させることができる)。
なお、この境界44の位置(値)は、ガードマージン内であれば任意である。例えば、エンコーダがこの境界44の位置を設定することができるようにしてもよい。例えば、エンコーダがこの境界44に関するパラメータである閾値Xを設定することができるようにしてもよい。
例えば、図4に示されるように、特殊値(Special value)と、ガードマージン幅(Guard margin)と、閾値Xとを用いて境界44を、(Special value + Guard margin / X)のように導出するようにしてもよい。つまり、3Dデータの位置を示すデプス値と特殊値とを識別するための閾値Xを設定するようにしてもよい。このようにすることにより、境界44を設定することができる。つまり、境界44を可変とすることができる。
なお、閾値Xの設定方法は任意である。例えば、ジオメトリデータの符号化データが復号されて生成されたジオメトリデータに基づいて、閾値Xを設定するようにしてもよい。つまり、図1の表10の上から8段目の右側に示されるように、ジオメトリデータのローカルデコード時のオキュパンシーマップを評価し、その評価結果に基づいて閾値Xを設定するようにしてもよい。このようにすることにより、ジオメトリデータに応じた閾値Xを設定することができる。すなわち、ジオメトリデータに応じた境界44を設定することができる。
<デプス値の補正>
なお、ジオメトリデータの値域に特殊値を設定するにあたって、図1の表10の上から9段目および10段目の左側に示されるように、デプス値(を表す値域)を補正するようにしてもよい。
例えば、図2の上側に示されるように、デプス値を表す値域がジオメトリデータの値域と一致または近似する等して、特殊値やガードマージンを設定する隙間(値域)がない場合がある。そこで、そのような場合、デプス値を補正してデプス値を表す値域を変更するようにしてもよい。このようにすることにより、特殊値やガードマージンを設定可能な値域をジオメトリデータの値域に設けることができる。つまり、3Dデータの位置を示すデプス値の値域を補正して、値域に特殊値を含むジオメトリデータを生成するようにしてもよい。
なお、このデプス値の補正の仕方は任意である。例えば、図1の表10の上から9段目の右側に示されるように、デプス値を量子化するようにしてもよいし、図1の表10の上から10段目の右側に示されるように、デプス値を正方向または負方向にシフトするようにしてもよい。このデプス値の補正量も任意である。例えば、所定の補正量が予め定められているようにしてもよいし、ジオメトリデータに応じて補正量を設定するようにしてもよい。
<パラメータのシグナル>
また、図1の表10の上から11段目乃至16段目の左側に示されるように、特殊値に関するパラメータを復号側に伝送する(シグナルする)ようにしてもよい。例えば、ジオメトリデータの符号化データを含むビットストリームに、特殊値に関するパラメータ含めるようにしてもよい。このようにすることにより、デコーダが、符号化の際に用いられた設定(特殊値に関するパラメータ)をより容易に把握することができる。したがって、デコーダは、値域に特殊値等が設定されたジオメトリデータの符号化データをより適切に復号することができる。
なお、特殊値に関するパラメータは、どのようなパラメータであってもよい。例えば、図1の表10の上から11段目乃至13段目の右側に示されるように、このパラメータが、上述した特殊値を示す情報、ガードマージンを示す情報、および閾値を示す情報の内の少なくとも1つを含むようにしてもよい。
また、特殊値を示す情報は、特殊値を直接的に示す情報であってもよいし、間接的に示す情報であってもよい。また、ガードマージンを示す情報は、ガードマージンを直接的に示す情報であってもよいし、間接的に示す情報であってもよい。また、閾値を示す情報は、閾値を直接的に示す情報であってもよいし、間接的に示す情報であってもよい。シグナルする特殊値に関するパラメータの例を、図6のシンタックス61に示す。シンタックス61の場合、特殊値をインデックスにより示す情報(Special value index)、ガードマージン幅を示す情報(Guard margin value)、および閾値X(Threshold X)が、特殊値に関するパラメータとしてシグナルされる。
また、この特殊値に関するパラメータをシグナルする頻度は任意である。例えば、特殊値に関するパラメータをパッチ毎、フレーム毎、またはシーケンス毎にシグナルする(特殊値に関するパラメータをパッチ、フレーム、またはシーケンス毎にビットストリームに含める)ようにしてもよい。また、例えば、パッチとフレーム、フレームとシーケンス等のように、複数階層のデータ単位毎に特殊値に関するパラメータをシグナルするようにしてもよい。なお、エンコーダ等が、この頻度を設定することができるようにしてもよい。また、ジオメトリデータや処理状況等に応じてこの頻度を変更することができるようにしてもよい。
<オキュパンシーマップとジオメトリデータの抽出>
また、復号側において、上述したような、値域(Range)にオキュパンシーマップ情報を表す特殊値(Special value)を含むジオメトリデータから、オキュパンシーマップとジオメトリデータを抽出するようにする。換言するに、オキュパンシーマップとジオメトリデータ(ジオメトリビデオフレーム)とを分離するようにする。
さらに換言するに、図1の表10の上から17段目に示されるように、ジオメトリビデオフレームの画素値(ジオメトリデータとも称する)の値域(Range)に、オキュパンシーマップ情報を表す特殊値を含むジオメトリデータから、オキュパンシーマップとデプス値のみのジオメトリデータとを抽出するようにする。例えば、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データを復号し、その符号化データから生成されたジオメトリデータから、その3Dデータの位置を示すデプス値とオキュパンシーマップ情報とを抽出するようにする。
このようにすることにより、デコーダは、復号されたジオメトリデータから、デプス値とオキュパンシーマップ情報の両方を得ることができる。したがって、デコーダは、符号化効率の低減を抑制する(典型的には符号化効率を向上させる)ことができる。また、デコーダは、より高解像度のオキュパンシーマップを用いて3Dデータを復元することができるので、より高解像度に(より細かい領域毎に)パッチの有無を把握することができる。したがって、例えば、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制する(典型的には画質を向上させる)ことができる。
すなわち、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<パラメータ>
その際、デコーダは、例えば図1の表10の上から18段目乃至20段目の左側に示されるように、復号されたジオメトリデータから、特殊値に関するパラメータに基づいて、デプス値と特殊値とを抽出するようにしてもよい。また、この特殊値に関するパラメータは、エンコーダからシグナルされるようにしてもよい。例えば、ジオメトリデータの符号化データを含むビットストリームに、特殊値に関するパラメータ含めるようにしてもよい。このようにすることにより、デコーダが、符号化の際に用いられた設定(特殊値に関するパラメータ)をより容易に把握することができる。したがって、デコーダは、値域に特殊値等が設定されたジオメトリデータの符号化データをより適切に復号することができる。
なお、上述したように、特殊値に関するパラメータは、どのようなパラメータであってもよい。例えば、図1の表10の上から18段目乃至20段目の右側に示されるように、このパラメータが、上述した特殊値を示す情報、ガードマージンを示す情報、および閾値を示す情報の内の少なくとも1つを含むようにしてもよい。
例えば、図7のように、特殊値(Special value)、ガードマージン(Guard margin)、および閾値Xから境界を求め(Special value + Guard margin / X)、さらに、図5のシンタックス51およびシンタックス52のように、その境界によって、各画素のオキュパンシーマップを生成してから、復号後のジオメトリデータ40bをクリップするようにしてもよい。
また、図8のシンタックス81のように、ジオメトリデータ40bのガードマージン両端へのクリップを行ってから、シンタックス82のように、オキュパンシーマップを生成するようにしてもよい。
<デプス値の逆補正>
また、ジオメトリデータの値域に特殊値を設定する際にデプス値(を表す値域)が補正された場合、ジオメトリデータからオキュパンシーマップとジオメトリデータとを抽出する際に、図1の表10の上から21段目および22段目の左側に示されるように、デプス値を逆補正するようにしてもよい。つまり、デコーダは、符号化の際に行われた補正を元に戻すように、抽出したデプス値(の値域)に対して、その補正処理の逆処理(逆補正)を行うようにしてもよい。このようにすることにより、より正しい値のジオメトリデータを抽出することができる。
なお、このデプス値の補正の仕方は任意である。例えば、図1の表10の上から21段目の右側に示されるように、デプス値を逆量子化するようにしてもよいし、図1の表10の上から22段目の右側に示されるように、デプス値を符号化時のシフトの際と逆方向にシフトするようにしてもよい。このデプス値の補正量も任意である。例えば、所定の補正量が予め定められているようにしてもよいし、ジオメトリデータに応じて補正量を設定するようにしてもよい。
<特殊値が最大値の例>
なお、以上においては、主に特殊値が0、すなわち、ジオメトリデータの値域の最小値である場合を例に説明したが、上述したように、特殊値は任意の値に設定することができる。例えば、図9に示されるように、ジオメトリデータの値域の最大値を特殊値としてもよい(Special value = max)。
この場合、特殊値(点線91)の下側にデプス値を表す値域が存在する。したがって、ガードマージン(Guard margin)は、特殊値の下側、より具体的には、特殊値(点線91)とデプス値を表す値域の最大値(点線92)との間の値域(両矢印93で示される範囲)に設定される。
なお、図中実線グレーの円で示されるジオメトリデータ90aは、符号化前のジオメトリデータを示し、点線白の円で示されるジオメトリデータ90bは、復号後のジオメトリデータを示している。ジオメトリデータ90aおよびジオメトリデータ90bを互いに区別して説明する必要が無い場合、ジオメトリデータ90と称する。
以上のようにガードマージンが特殊値の下側に存在するので、この場合、境界94は、(Special value - Guard margin / X)のように導出される。この境界94以上の値を持つジオメトリデータ90bは、特殊値(点線91)にクリップされる(矢印95)。また、この境界94より小さく、かつ、デプス値を表す値域の最大値(点線92)以上の値を持つジオメトリデータ90bは、デプス値を表す値域の最大値(点線92)にクリップされる(矢印96)。つまり、図10のシンタックス101およびシンタックス102のようにオキュパンシーマップの生成と、ジオメトリデータのクリップが行われる。
<特殊値が中央値の例>
また、例えば、図11に示されるように、ジオメトリデータの値域の中央値(最小値および最大値以外の値)を特殊値としてもよい(Special value = middle)。
この場合、特殊値(太線111)の上側と下側の両方にデプス値を表す値域が存在する。したがって、ガードマージン(Guard margin)は、特殊値の上側と下側の両方に設定される。より具体的には、ガードマージンは、特殊値(太線111)とその上側のデプス値を表す値域の最小値(点線112)との間の値域(両矢印113で示される範囲)に設定される。また、ガードマージンは、特殊値(太線111)とその下側のデプス値を表す値域の最大値(点線114)との間の値域(両矢印115で示される範囲)にも設定される。
つまり、この場合、ガードマージンが複数設定される。したがって、境界も複数設定される。例えば、両矢印113で示されるガードマージンの境界は、(Special value + Guard margin / X)のように導出される。特殊値(太線111)からこの境界までの範囲に含まれるジオメトリデータは、特殊値(太線111)にクリップされる(矢印116)。また、この境界から特殊値(太線111)の上側のデプス値を表す値域の最小値(点線112)までの範囲に含まれるジオメトリデータは、そのデプス値を表す値域の最小値(点線112)にクリップされる(矢印117)。
また、例えば、両矢印115で示されるガードマージンの境界は、(Special value - Guard margin / X)のように導出される。この境界から特殊値(太線111)までの範囲に含まれるジオメトリデータは、特殊値(太線111)にクリップされる(矢印118)。また、特殊値(太線111)の下側のデプス値を表す値域の最大値(点線114)からこの境界までの範囲に含まれるジオメトリデータは、そのデプス値を表す値域の最大値(点線114)にクリップされる(矢印119)。つまり、図12のシンタックス121およびシンタックス122のようにオキュパンシーマップの生成と、ジオメトリデータのクリップが行われる。
<選択>
なお、エンコーダが、特殊値を上述した3種類(ジオメトリデータの値域の最小値、最大値、中間値)の中から選択するようにしてもよい。例えば、エンコーダが、ジオメトリデータ(デプス値の分布)に応じて、特殊値の位置を候補の中から選択するようにしてもよい。このようにすることにより、デプス値の補正をより行わないようにすることができ、符号化効率の低減を抑制することができる。また、エンコーダが、このような特殊値の位置の選択を、任意のデータ単位毎に行うようにしてもよい。例えば、エンコーダが、デプス値の分布に基づいて、空いている値域(デプス値に用いない値域)を探索し、探索したその空いている値域に特殊値を設定するようにしてもよい。このようにすることにより、デプス値の補正をさらに行わないようにすることができ、符号化効率の低減を抑制することができる。
<組み合わせ>
なお、特殊値は単数であってもよいし、複数であってもよい。例えば、上述した3種類(ジオメトリデータの値域の最小値、最大値、中間値)の特殊値の内の複数を組み合わせて用いるようにしてもよい。例えば、ジオメトリデータの値域の最小値と最大値の両方に、特殊値を設定するようにしてもよい。
<2.第1の実施の形態>
<符号化装置>
図13は、本技術を適用した画像処理装置の一態様である符号化装置の構成の一例を示すブロック図である。図13に示される符号化装置300は、ポイントクラウドのような3Dデータを2次元平面に投影して2次元画像用の符号化方法により符号化を行う装置(ビデオベースドアプローチを適用した符号化装置)である。また、符号化装置300は、<1.高解像度のオキュパンシーマップ>において上述したように、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成し、そのジオメトリデータを符号化して復号側に伝送する。
なお、図13においては、処理部やデータの流れ等の主なものを示しており、図13に示されるものが全てとは限らない。つまり、符号化装置300において、図13においてブロックとして示されていない処理部が存在したり、図13において矢印等として示されていない処理やデータの流れが存在したりしてもよい。これは、符号化装置300内の処理部等を説明する他の図においても同様である。
図13に示されるように符号化装置300は、パッチ分解部311、パッキング部312、補助パッチ情報圧縮部313、パラメータ生成部314、埋め込み部315、ビデオ符号化部316、OMap復元部317、ビデオ符号化部318、およびマルチプレクサ319を有する。
パッチ分解部311は、3Dデータの分解に関する処理を行う。例えば、パッチ分解部311は、符号化装置300に入力される、3次元構造を表す3Dデータ(例えばポイントクラウド(Point Cloud))を取得する。また、パッチ分解部311は、取得したその3Dデータを複数のセグメンテーションに分解し、そのセグメンテーション毎に3Dデータを2次元平面に投影し、位置情報のパッチや属性情報のパッチを生成する。
パッチ分解部311は、生成した各パッチに関する情報をパッキング部312に供給する。また、パッチ分解部311は、その分解に関する情報である補助パッチ情報を、補助パッチ情報圧縮部313に供給する。
パッキング部312は、データのパッキングに関する処理を行う。例えば、パッキング部312は、パッチ分解部311から供給される領域毎に3Dデータが投影された2次元平面のデータ(パッチ)を取得する。また、パッキング部312は、取得した各パッチを2次元画像に配置してビデオフレームとしてパッキングする。例えば、パッキング部312は、ポイントの位置を示す位置情報(Geometry)のパッチや、その位置情報に付加される色情報等の属性情報(Texture)のパッチを、それぞれ、ビデオフレームとしてパッキングする。また、パッキング部312は、1x1画素毎に位置情報(パッチ)の有無を示す高解像度のオキュパンシーマップを生成する。
つまり、パッキング部312は、ジオメトリビデオフレーム(Geometry video frame(s))と、カラービデオフレーム(Color video frame(s))と、高解像度オキュパンシーマップ(Occupancy map(1x1))を生成する。
パッキング部312は、生成したジオメトリビデオフレームと、高解像度オキュパンシーマップを、パラメータ生成部314および埋め込み部315に供給する。また、パッキング部312は、カラービデオフレームをビデオ符号化部318に供給する。さらに、パッキング部312は、そのパッキングに関する制御情報をマルチプレクサ319に供給する。
補助パッチ情報圧縮部313は、補助パッチ情報の圧縮に関する処理を行う。例えば、補助パッチ情報圧縮部313は、パッチ分解部311から供給されるデータを取得する。また、補助パッチ情報圧縮部313は、パラメータ生成部314から供給される特殊値に関するパラメータ(Parameter(s))を取得する。補助パッチ情報圧縮部313は、取得したこれらのデータを補助パッチ情報として符号化(圧縮)する。補助パッチ情報圧縮部313は、このように生成した補助パッチ情報の符号化データをマルチプレクサ319に供給する。
パラメータ生成部314は、特殊値に関するパラメータの生成に関する処理を行う。例えば、パラメータ生成部314は、パッキング部312から供給されるジオメトリビデオフレーム(Geometry video frame(s))や高解像度オキュパンシーマップ(Occupancy map(1x1))を取得する。また、パラメータ生成部314は、OMap復元部317から供給される復元した高解像度オキュパンシーマップ(Occupancy map(1x1))を取得する。さらに、パラメータ生成部314は、符号化のターゲットレート(QP)等の任意の情報を取得する。
パラメータ生成部314は、それらの情報に基づいて、特殊値に関するパラメータを生成する。例えば、パラメータ生成部314は、特殊値、ガードマージン、および閾値等のパラメータを生成する。パラメータ生成部314は、生成(設定)したパラメータを必要に応じて埋め込み部315やOMap復元部317に供給する。また、パラメータ生成部314は、パラメータの値が最終的に決定すると、その値のパラメータを補助パッチ情報圧縮部313に供給する。
埋め込み部315は、ジオメトリデータへのオキュパンシーマップの埋め込みに関する処理を行う。換言するに、埋め込み部315は、ジオメトリデータとオキュパンシーマップとを合成する合成部である。さらに換言するに、埋め込み部315は、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成する生成部である。
例えば、埋め込み部315は、パッキング部312から供給されるジオメトリビデオフレーム(Geometry video frame(s))や高解像度オキュパンシーマップ(Occupancy map(1x1))を取得する。また、埋め込み部315は、パラメータ生成部314から供給されるパラメータを取得する。埋め込み部315は、それらの情報に基づいて、値域に特殊値やガードマージン等を含むジオメトリデータにより構成されるジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を生成する。埋め込み部315は、その生成したジオメトリビデオフレーム(Geometry video frame(s) w/Guard)をビデオ符号化部316に供給する。
ビデオ符号化部316は、ジオメトリビデオフレーム(Geometry video frame(s) w/Guard)の符号化に関する処理を行う。例えば、ビデオ符号化部316は、埋め込み部315から供給されるジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を取得する。また、ビデオ符号化部316は、その取得したジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を、例えばAVCやHEVC等の任意の2次元画像用の符号化方法により符号化する。ビデオ符号化部316は、その符号化により得られた符号化データをOMap復元部317またはマルチプレクサ319に供給する。
OMap復元部317は、オキュパンシーマップの復元に関する処理を行う。例えば、OMap復元部317は、ビデオ符号化部316から、値域に特殊値やガードマージン等を含むジオメトリデータにより構成されるジオメトリビデオフレーム(Geometry video frame(s) w/Guard)の符号化データを取得する。OMap復元部317は、その符号化データをビデオ符号化部316が行った符号化に対応する復号方法(例えばAVCやHEVC等の任意の2次元画像用の復号方法)により復号し、ジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を生成する。
また、OMap復元部317は、パラメータ生成部314から供給される特殊値に関するパラメータを取得する。OMap復元部317は、そのパラメータを用いて、生成したジオメトリビデオフレーム(Geometry video frame(s) w/Guard)からオキュパンシーマップ情報を抽出し、高解像度オキュパンシーマップ(Occupancy map(1x1))を復元する。OMap復元部317は、その復元した高解像度オキュパンシーマップをパラメータ生成部314に供給する。
ビデオ符号化部318は、カラービデオフレーム(Color video frame(s))の符号化に関する処理を行う。例えば、ビデオ符号化部318は、パッキング部312から供給されるカラービデオフレームを取得する。また、ビデオ符号化部318は、その取得したカラービデオフレームを例えばAVCやHEVC等の任意の2次元画像用の符号化方法により符号化する。ビデオ符号化部318は、その符号化により得られた符号化データをマルチプレクサ319に供給する。
マルチプレクサ319は、多重化に関する処理を行う。例えば、マルチプレクサ319は、補助パッチ情報圧縮部313から供給される補助パッチ情報の符号化データを取得する。また、マルチプレクサ319は、パッキング部312から供給されるパッキングに関する制御情報を取得する。さらに、マルチプレクサ319は、ビデオ符号化部316から供給されるジオメトリビデオフレームの符号化データを取得する。また、マルチプレクサ319は、ビデオ符号化部318から供給されるカラービデオフレームの符号化データを取得する。
マルチプレクサ319は、取得したそれらの情報を多重化して、ビットストリーム(Bitstream)を生成する。つまり、マルチプレクサ319は、ジオメトリデータの符号化データと、特殊値に関するパラメータとを含むビットストリームを生成する。マルチプレクサ319は、その生成したビットストリームを符号化装置300の外部に出力する。
なお、これらの処理部(パッチ分解部311乃至マルチプレクサ319)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
<パラメータの生成>
次に、この符号化装置300によるパラメータの生成についてより具体的に説明する。パラメータ生成部314は、特殊値に関するパラメータとして、ジオメトリデータの値域に投影画像(パッチ)が存在しないことを示す特殊値(Special value)を設定する。例えば、パラメータ生成部314は、パッキング部312から供給されるジオメトリビデオフレームを参照し、そのデプス値の分布等に基づいて、特殊値を設定する。パラメータ生成部314は、ジオメトリデータの値域の最小値、最大値、または中間値の内の少なくとも1つを、特殊値に設定する。パラメータ生成部314は、生成した特殊値を埋め込み部315に供給する。
埋め込み部315は、その供給された特殊値を、パッキング部312から供給されるジオメトリビデオフレームに埋め込む。例えば、埋め込み部315は、そのジオメトリビデオフレームにおいて、高解像度オキュパンシーマップにおいてパッチが存在しないことが示される位置(例えば、高解像度オキュパンシーマップにおいて値が0の画素)のジオメトリデータの値を、パラメータ生成部314により設定された特殊値とする。つまり、埋め込み部315は、値域にパラメータ生成部314により設定された特殊値を含むジオメトリデータを生成する。
その際、埋め込み部315は、必要に応じて、デプス値(の値域)を補正することができる。例えば、ジオメトリデータの値域に特殊値やガードマージンを設定可能な範囲が存在しない場合、埋め込み部315は、デプス値(の値域)を補正する。例えば、埋め込み部315は、デプス値を量子化することにより、そのデプス値の値域を補正する。また、例えば、埋め込み部315は、デプス値を量子化することにより、そのデプス値の値域を補正する。
また、パラメータ生成部314は、特殊値に関するパラメータとして、ガードマージン(Guard margin)を設定する。例えば、パラメータ生成部314は、パッキング部312から供給されるジオメトリビデオフレームを参照し、そのデプス値の分布等に基づいて、デプス値を表す値域と特殊値との間に、所定の幅のガードマージンを設定する。例えば、パラメータ生成部314は、符号化のターゲットレート(QP)等に基づいてこのガードマージンの幅を設定することができる。パラメータ生成部314は、生成したガードマージンを埋め込み部315に供給する。
埋め込み部315は、その供給されたガードマージンを、パッキング部312から供給されるジオメトリビデオフレームに埋め込む。例えば、埋め込み部315は、そのジオメトリビデオフレームにおいて、各画素のジオメトリデータに、パラメータ生成部314により設定されたガードマージン(すなわち、デプス値も特殊値も存在しない値域)を設定する。上述したように埋め込み部315は、必要に応じて、デプス値の補正を行うことができる。つまり、埋め込み部315は、値域にパラメータ生成部314により設定されたガードマージンを含むジオメトリデータを生成する。
また、パラメータ生成部314は、特殊値に関するパラメータとして、デプス値と特殊値とを識別するための閾値(X)を設定する。例えば、パラメータ生成部314は、埋め込み部315、ビデオ符号化部316、およびOMap復元部317のループを用いてローカルデコードされたジオメトリデータ(より具体的には、そのジオメトリデータから抽出された高解像度オキュパンシーマップ)に基づいて、この閾値を設定する。
上述したように、埋め込み部315は、ジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を生成し、ビデオ符号化部316は、その符号化データを生成する。OMap復元部317は、その符号化データを復号し、符号化と復号が行われたジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を生成する。
パラメータ生成部314は、閾値Xを仮設定(仮生成)し、その他のパラメータとともにOMap復元部317に供給する。OMap復元部317は、パラメータ生成部314により供給されたパラメータを用いて、符号化と復号が行われたジオメトリビデオフレーム(Geometry video frame(s) w/Guard)からオキュパンシーマップ情報を抽出し、高解像度オキュパンシーマップ(Occupancy map(1x1))を復元する。つまり、例えば、図7等を参照して説明したように、OMap復元部317は、特殊値、ガードマージン、閾値等のパラメータを用いて境界を求め、その境界に基づいてガードマージン内に位置するジオメトリデータをクリップする等してオキュパンシーマップ情報を抽出する。OMap復元部317は、復元した高解像度オキュパンシーマップをパラメータ生成部314に供給する。
パラメータ生成部314は、その復元された高解像度オキュパンシーマップを、パッキング部312から供給された高解像度オキュパンシーマップ(符号化・復号を行う前の)と比較し、その比較結果(マップの一致度合い)に基づいて仮設定した閾値を評価する。比較結果が所定の基準を満たしていない(マップの一致度が十分でない)場合、パラメータ生成部314は、仮設定した閾値を変更し、それをOMap復元部317に供給し、新たな閾値を用いて再度高解像度オキュパンシーマップを復元させ、高解像度オキュパンシーマップの比較をやり直す。
また、比較結果が所定の基準を満たしている(マップの一致度が十分高い)場合、パラメータ生成部314は、仮設定した閾値を正式な値として認める(最終的な設定値とする)。その場合、パラメータ生成部314は、その正式に設定した閾値や、設定済みの特殊値およびガードマージン等の各種パラメータを補助パッチ情報圧縮部313に供給し、復号側に伝送させる(シグナルさせる)。
<パラメータのシグナル>
以上のように生成されたパラメータは、補助パッチ情報圧縮部313を介してマルチプレクサ319に供給され、ビットストリームに含められて復号側に伝送される(シグナルされる)。つまり、例えば、特殊値を示す情報、3Dデータの位置を示すデプス値を表す値域と特殊値との間のマージンを示す情報、および、デプス値と特殊値とを識別するための閾値を示す情報、の内の少なくとも1つを含むパラメータがシグナルされる。
このシグナルは、<1.高解像度のオキュパンシーマップ>において上述したように、任意の頻度で行うことができる。例えば、マルチプレクサ319は、このようなパラメータを、パッチ、フレーム、またはシーケンス毎に含むビットストリームを生成することができる。
<パッキング部>
図14は、図13のパッキング部312の主な構成例を示すブロック図である。図14に示されるように、パッキング部312は、パッチ配置部331、高解像度オキュパンシーマップ生成部332、およびDilation処理部333を有する。
パッチ配置部331は、パッチの配置に関する処理を行う。例えば、パッチ配置部331は、パッチ分解部311から供給されたデータを取得する。パッチ配置部331は、パッチ分解部311によって生成された位置情報の各パッチを2次元画像上に配置する。パッチ配置部331は、パッチを配置した2次元画像(ジオメトリビデオフレーム)を高解像度オキュパンシーマップ生成部332およびDilation処理部333に供給する。
高解像度オキュパンシーマップ生成部332は、パッチ配置部331から供給されたジオメトリビデオフレームに基づいて、1x1画素単位でパッチの有無を識別する高解像度オキュパンシーマップを生成する。高解像度オキュパンシーマップ生成部332は、生成した高解像度オキュパンシーマップ(Occupancy map(1x1))をパラメータ生成部314および埋め込み部315に供給する。
Dilation処理部333は、パッチ配置部331から供給されるジオメトリビデオフレームについてDilation処理を行い、各パッチの輪郭の画素値を所定の方向に延長し、2次元画像のパッチが配置されていない部分を埋める。Dilation処理部333は、Dilation処理後のジオメトリビデオフレーム(Geometry video frame(s))をパラメータ生成部314および埋め込み部315に供給する。
なお、図示は省略するが、パッチ配置部331およびDilation処理部333は、属性情報のパッチ(カラービデオフレーム)に対しても同様の処理を行い、生成したカラービデオフレーム(Color video frame(s))をビデオ符号化部318に供給する。
なお、これらの処理部(パッチ配置部331乃至Dilation処理部333)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
以上のような構成を備えることにより、符号化装置300は、<1.高解像度のオキュパンシーマップ>において上述したような符号化を行うことができる。したがって、符号化装置300は、<1.高解像度のオキュパンシーマップ>において上述したような各種効果を得ることができる。したがって、符号化装置300は、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<符号化処理の流れ>
次に、符号化装置300により実行される符号化処理の流れの例を、図15のフローチャートを参照して説明する。
符号化処理が開始されると、符号化装置300のパッチ分解部311は、ステップS301において、3Dデータを2次元平面に投影し、パッチに分解する。
ステップS302において、パッキング部312は、パッキング処理を実行し、ステップS301において生成された位置情報や属性情報の各パッチをビデオフレームとしてパッキングする。また、パッキング部312は、そのパッキングに関する制御情報を生成する。
ステップS303において、パラメータ生成部314乃至OMap復元部317は、パラメータ設定処理を実行し、特殊値に関するパラメータを生成する。
ステップS304において、埋め込み部315は、ステップS303の処理により生成されたパラメータを用いて、ステップS302の処理により生成された高解像度オキュパンシーマップを、ステップS302の処理により生成されたジオメトリビデオフレームに埋め込む。つまり、埋め込み部315は、この処理により、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成する。
ステップS305において、ビデオ符号化部316は、ステップS304の処理により生成されたオキュパンシーマップ情報を含むジオメトリビデオフレームを符号化する。
ステップS306において、ビデオ符号化部318は、ステップS302の処理により生成されたカラービデオフレームを符号化する。
ステップS307において、補助パッチ情報圧縮部313は、ステップS301の処理により生成された補助パッチ情報や、ステップS303の処理により生成されたパラメータを圧縮する。
ステップS308において、マルチプレクサ319は、以上のように生成された各種情報(例えば、ステップS305乃至ステップS307において生成された符号化データや、ステップS302において生成されるパッキングに関する制御情報等)を多重化し、これらの情報を含むビットストリームを生成する。
ステップS309において、マルチプレクサ319は、ステップS308において生成したビットストリームを符号化装置300の外部に出力する。
ステップS309の処理が終了すると、符号化処理が終了する。
<パッキング処理の流れ>
次に、図16のフローチャートを参照して、図15のステップS302において実行されるパッキング処理の流れの例を説明する。
パッキング処理が開始されると、パッチ配置部331は、ステップS321において、パッチをビデオフレームに配置し、ジオメトリビデオフレームやカラービデオフレームを生成する。
ステップS322において、高解像度オキュパンシーマップ生成部332は、ステップS321の処理により生成されたジオメトリビデオフレームを用いて高解像度オキュパンシーマップを生成する。
ステップS323において、Dilation処理部333は、ステップS321の処理により生成されたジオメトリビデオフレームやカラービデオフレームに対してDilation処理を行う。
ステップS333の処理が終了するとパッキング処理が終了し、処理は図15に戻る。
<パラメータ設定処理の流れ>
次に、図17および図18のフローチャートを参照して、図15のステップS302において実行されるパラメータ設定処理の流れの例を説明する。
パラメータ設定処理が開始されると、パラメータ生成部314は、図17のステップS341において、ジオメトリデータの値域に特殊値を設定する。
ステップS342において、パラメータ生成部314は、例えば符号化のターゲットレート(QP)等に基づいて、ジオメトリデータの値域にガードマージンを設定する。
ステップS343において、パラメータ生成部314は、ステップS341およびステップS342において設定した特殊値およびガードマージンを、ジオメトリビデオフレームに設定可能であるか否かを判定する。デプス値の分布等に基づいて、特殊値とガードマージンが設定不可能であると判定された場合、処理はステップS344に進む。
ステップS344において、パラメータ生成部314は、例えば量子化やシフト等により、デプス値を補正して、不使用の値域を確保し、特殊値とガードマージンを設定することができるようにする。
ステップS344の処理が終了すると、処理は図18のステップS351に進む。また、図17のステップS343において、特殊値とガードマージンが設定可能であると判定された場合、ステップS344の処理がスキップされ、処理は図18のステップS351に進む。
図18のステップS351において、パラメータ生成部314は、閾値(X)を初期化する(初期値に仮設定する)。
ステップS352において、埋め込み部315は、図17のステップS341やステップS342の処理により生成したパラメータ(特殊値やガードマージン)を用いてオキュパンシーマップ情報をジオメトリビデオフレームに埋め込む。
ステップS353において、ビデオ符号化部316は、ステップS352において生成されたオキュパンシーマップ情報を含むジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を符号化する。
ステップS354において、OMap復元部317は、ステップS353において生成されたオキュパンシーマップ情報を含むジオメトリビデオフレームの符号化データを復号する。さらに、OMap復元部317は、その復号により生成したオキュパンシーマップ情報を含むジオメトリビデオフレームから、図17のステップS341の処理により生成された特殊値、ステップS342の処理により生成されたガードマージン、および閾値(X)(現在の仮設定値)等を用いて、高解像度オキュパンシーマップを復元する。
ステップS355において、パラメータ生成部314は、符号化・復号を行う前の元の高解像度オキュパンシーマップ(ステップS302の処理により生成された高解像度オキュパンシーマップ)と、復元した高解像度オキュパンシーマップ(ステップS354の処理により生成された高解像度オキュパンシーマップ)とを比較し、値がともに1(OP=1)であるピクセルの数をカウントする(カウント値K1を導出する)。
ステップS356において、パラメータ生成部314は、符号化・復号を行う前の元の高解像度オキュパンシーマップ(ステップS302の処理により生成された高解像度オキュパンシーマップ)と、復元した高解像度オキュパンシーマップ(ステップS354の処理により生成された高解像度オキュパンシーマップ)とを比較し、値がともに0(OP=0)であるピクセルの数をカウントする(カウント値K2を導出する)。
ステップS357において、パラメータ生成部314は、ステップS355において導出したカウント値K1、および、ステップS356において導出したカウント値K2が、所定の基準以上であるか否かを判定する。カウント値K1若しくはK2、またはその両方が所定の基準以上でないと判定された場合、処理はステップS358に進む。
ステップS358において、パラメータ生成部314は、閾値(X)の仮設定値を更新する。閾値の仮設定値が更新されると、処理はステップS354に戻り、その新たな仮設定値の閾値を用いてそれ以降の処理が実行される。つまり、ステップS357において、カウント値K1およびK2が所定の基準以上であると判定されるまで、閾値の仮設定値を更新しながら、ステップS354乃至ステップS358の各処理が繰り返し実行される。
そして、ステップS357においてカウント値K1およびK2が所定の基準以上であると判定された場合、処理はステップS359に進む。
ステップS359において、パラメータ生成部314は、現在の仮設定値を閾値(X)の正式な設定値とする。ステップS359の処理が終了すると、パラメータ設定処理が終了し、処理は図15に戻る。
以上のように各処理を実行することにより、符号化装置300は、<1.高解像度のオキュパンシーマップ>において上述したような符号化を行うことができる。したがって、符号化装置300は、<1.高解像度のオキュパンシーマップ>において上述したような各種効果を得ることができる。したがって、符号化装置300は、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<3.第2の実施の形態>
<復号装置>
図19は、本技術を適用した画像処理装置の一態様である復号装置の構成の一例を示すブロック図である。図19に示される復号装置400は、ポイントクラウドのような3Dデータが2次元平面に投影されて符号化された符号化データを、2次元画像用の復号方法により復号し、3Dデータを再構築する装置(ビデオベースドアプローチを適用した復号装置)である。この復号装置400は、図13の符号化装置300に対応する復号装置であり、符号化装置300により生成されたビットストリームを復号して3Dデータを再構築することができる。
なお、図19においては、処理部やデータの流れ等の主なものを示しており、図19に示されるものが全てとは限らない。つまり、復号装置400において、図19においてブロックとして示されていない処理部が存在したり、図19において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図19に示されるように復号装置400は、デマルチプレクサ411、補助パッチ情報復号部412、ビデオ復号部413、抽出部414、ビデオ復号部415、アンパッキング部416、および3D再構築部417を有する。
デマルチプレクサ411は、データの逆多重化に関する処理を行う。例えば、デマルチプレクサ411は、復号装置400に入力されるビットストリームを取得する。このビットストリームは、例えば、符号化装置300より供給される。デマルチプレクサ411は、このビットストリームを逆多重化し、補助パッチ情報の符号化データを抽出し、それを補助パッチ情報復号部412に供給する。また、デマルチプレクサ411は、逆多重化により、ビットストリームからジオメトリビデオフレームの符号化データを抽出し、それをビデオ復号部413に供給する。さらに、デマルチプレクサ411は、逆多重化により、ビットストリームからカラービデオフレームの符号化データを抽出し、それをビデオ復号部415に供給する。また、デマルチプレクサ411は、逆多重化により、ビットストリームからパッキングに関する制御情報を抽出し、それをアンパッキング部416に供給する。
補助パッチ情報復号部412は、補助パッチ情報等の符号化データの復号に関する処理を行う。例えば、補助パッチ情報復号部412は、デマルチプレクサ411から供給される符号化データを取得する。また、補助パッチ情報復号部412は、その取得した符号化データを復号し、補助パッチ情報を生成する。この補助パッチ情報には、特殊値に関するパラメータ等が含まれる。補助パッチ情報復号部412は、生成した補助パッチ情報を3D再構築部417に供給する。また、補助パッチ情報復号部412は、特殊値に関するパラメータを抽出部414に供給する。この特殊値に関するパラメータには、例えば、特殊値(Special value)、ガードマージン(Guard margin)、閾値X(Threshold X)等が含まれる。
ビデオ復号部413は、ジオメトリビデオフレームの符号化データの復号に関する処理を行う。例えば、ビデオ復号部413は、デマルチプレクサ411から供給されるジオメトリビデオフレームの符号化データを取得する。また、ビデオ復号部413は、その符号化データを復号し、オキュパンシーマップ情報を含むジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を生成する。つまり、ビデオ復号部413は、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データを復号する。さらに、ビデオ復号部413は、そのジオメトリビデオフレームを、抽出部414に供給する。
抽出部414は、オキュパンシーマップ情報の抽出に関する処理を行う。例えば、抽出部414は、ビデオ復号部413から供給されるジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を取得する。また、抽出部414は、補助パッチ情報復号部412から供給される特殊値に関するパラメータを取得する。
さらに、抽出部414は、その特殊値に関するパラメータを用いて、ジオメトリビデオフレームからオキュパンシーマップ情報を抽出し、高解像度オキュパンシーマップ(Occupancy map(1x1))と、オキュパンシーマップ情報を含まないジオメトリビデオフレーム(Geometry video frame(s))とを生成する。換言するに、抽出部414は、オキュパンシーマップ情報を含むジオメトリビデオフレームから、高解像度オキュパンシーマップと、オキュパンシーマップ情報を含まないジオメトリビデオフレームとを抽出する。さらに、換言するに、抽出部414は、高解像度オキュパンシーマップとジオメトリビデオフレームとを分離する。
つまり、抽出部414は、3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータから、その3Dデータの位置を示すデプス値とオキュパンシーマップ情報とを抽出する。例えば、抽出部414は、特殊値に関するパラメータに基づいて、デプス値と特殊値とを抽出する。なお、ジオメトリデータの値域に特殊値を設定する際にデプス値(を表す値域)が補正された場合、抽出部414は、抽出したデプス値を逆補正することもできる。
また、抽出部414は、生成した高解像度オキュパンシーマップ(Occupancy map(1x1))と、ジオメトリビデオフレーム(Geometry video frame(s))とをアンパッキング部416に供給する。
ビデオ復号部415は、カラービデオフレームの符号化データの復号に関する処理を行う。例えば、ビデオ復号部415は、デマルチプレクサ411から供給されるカラービデオフレームの符号化データを取得する。また、ビデオ復号部415は、その符号化データを復号し、カラービデオフレームを生成する。さらに、ビデオ復号部415は、生成したカラービデオフレーム(Color video frame(s))を、アンパッキング部416に供給する。
アンパッキング部416は、アンパッキングに関する処理を行う。例えば、デマルチプレクサ411から供給されるパッキングに関する制御情報を取得する。また、アンパッキング部416は、抽出部414から供給される高解像度オキュパンシーマップ(Occupancy map(1x1))と、ジオメトリビデオフレーム(Geometry video frame(s))とを取得する。さらに、アンパッキング部416は、ビデオ復号部415から供給されるカラービデオフレーム(Color video frame(s))を取得する。
また、アンパッキング部416は、パッキングに関する制御情報や高解像度オキュパンシーマップに基づいて、ジオメトリビデオフレームやカラービデオフレームをアンパッキングする。さらに、アンパッキング部416は、アンパッキングして得られた位置情報や属性情報のパッチ等を、3D再構築部417に供給する。
3D再構築部417は、3Dデータの再構築に関する処理を行う。例えば、3D再構築部417は、補助パッチ情報復号部412から供給される補助パッチ情報や、アンパッキング部416から供給されるパッチ等に基づいて、3Dデータ(例えばポイントクラウド(Point Cloud))を再構築する。また、3D再構築部417は、このような処理により得られた3Dデータを復号装置400の外部に出力する。
この3Dデータは、例えば、表示部に供給されてその画像が表示されたり、記録媒体に記録されたり、通信を介して他の装置に供給されたりする。
なお、これらの処理部(デマルチプレクサ411乃至3D再構築部417)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
このような構成を備えることにより、復号装置400は、<1.高解像度のオキュパンシーマップ>において上述したような復号を行うことができる。したがって、復号装置400は、<1.高解像度のオキュパンシーマップ>において上述したような各種効果を得ることができる。したがって、復号装置400は、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<復号処理の流れ>
次に、復号装置400により実行される復号処理の流れの例を、図20のフローチャートを参照して説明する。
復号処理が開始されると、復号装置400のデマルチプレクサ411は、ステップS401において、ビットストリームを逆多重化する。
ステップS402において、補助パッチ情報復号部412は、ステップS401の処理によりビットストリームから抽出された補助パッチ情報の符号化データを復号し、補助パッチ情報を生成する。
ステップS403において、ビデオ復号部413は、ステップS401の処理によりビットストリームから抽出されたオキュパンシーマップ情報を含むジオメトリビデオフレームの符号化データを復号し、オキュパンシーマップ情報を含むジオメトリビデオフレームを生成する。
ステップS404において、抽出部414は、ステップS402において生成された補助パッチ情報に含まれる特殊値に関するパラメータを用いて、ステップS403の処理により生成されたオキュパンシーマップ情報を含むジオメトリビデオフレームから、オキュパンシーマップ情報を抽出し、高解像度オキュパンシーマップと、オキュパンシーマップ情報を含まないジオメトリビデオフレーム(Geometry video frame(s))とを生成する。つまり、抽出部414は、デプス値とオキュパンシーマップ情報とを抽出する。
ステップS405において、抽出部414は、特殊値に関するパラメータ等に基づいて、符号化の際にデプス値が補正されているか否かを判定する。例えば、デプス値が補正されていると判定された場合、処理はステップS406に進む。
ステップS406において、抽出部414は、デプス値を逆補正する。ステップS406の処理が終了すると処理はステップS407に進む。また、ステップS405において、デプス値が補正されていないと判定された場合、ステップS406の処理がスキップされ、処理はステップS407に進む。
ステップS407において、ビデオ復号部415は、ステップS401においてビットストリームから抽出されたカラービデオフレームの符号化データを復号する。
ステップS408において、アンパッキング部416は、ジオメトリビデオフレームやカラービデオフレームをアンパッキングし、パッチを抽出する。
ステップS409において、3D再構築部417は、ステップS408の処理により抽出されたパッチ等を用いて、例えばポイントクラウド等の3Dデータを再構築する。
ステップS409の処理が終了すると復号処理が終了する。
以上のように各処理を実行することにより、復号装置400は、<1.高解像度のオキュパンシーマップ>において上述したような復号を行うことができる。したがって、復号装置400は、<1.高解像度のオキュパンシーマップ>において上述したような各種効果を得ることができる。したがって、復号装置400は、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<4.局所的な高解像度のオキュパンシーマップ>
<一部の領域への高解像度のオキュパンシーマップの適用>
以上に説明した高解像度オキュパンシーマップは、ビデオフレームの一部の領域に適用するようにしてもよい。つまり、図21の表500の一番上の段に示されるように、一部の領域のジオメトリデータの値域(Range)に、オキュパンシーマップ情報を表す特殊値(Special value)を含むジオメトリデータを生成するようにしてもよい。
このようにすることにより、その一部の領域について、より高解像度のオキュパンシーマップ(例えば、1x1画素単位)を復号側に伝送することができる。つまり、デコーダは、その一部の領域について、より高解像度のオキュパンシーマップを利用して復号を行うことができる。換言するに、デコーダは、その一部の領域について、より高解像度に(より細かい領域毎に)パッチの有無を把握することができる。したがって、例えば、その一部の領域について、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制する(典型的には画質を向上させる)ことができる。
なお、一般的に、特殊値を適用する領域を狭くする程、デプス値の数が低減するので、特殊値やガードマージンを設定することができる値域が広くなる可能性が高くなる。つまり、特殊値を適用する領域を狭くする程、デプス値を補正せずに特殊値やガードマージンを設定することができる可能性が高くなる。したがって、特殊値を適用する領域を狭くする程、符号化効率の低減を抑制することができる可能性が高くなる。
この一部の領域は、どのような領域であってもよく、例えば予め定められていてもよいし、エンコーダ等が設定することができるようにしてもよい。また、その設定方法も任意である。例えば、図21の表500の上から2段目乃至4段目の左側に示されるように、所定の条件を満たす領域に特殊値を含めるようにしてもよい。つまり、フレーム画像の所定の条件を満たす一部の領域のデータの値域に特殊値を含むジオメトリデータを生成するようにしてもよい。
この条件は任意である。例えば、ジオメトリデータよりも低解像度のオキュパンシーマップ情報に基づく領域のデータの値域に特殊値を含むジオメトリデータを生成するようにしてもよい。
例えば、図21の表500の上から2段目に示されるように、パッチの、低解像度のオキュパンシーマップの境界から所定の閾値以内の領域に対して特殊値を適用するようにしてもよい。一般的に、オキュパンシーマップがジオメトリデータよりも低解像度であると、パッチの外形の再現性が低減する。つまり、そのオキュパンシーマップが示すパッチの境界(値が1の領域と値が0の領域との境界)付近において、実際のジオメトリデータの有無との誤差が生じやすく、結果として、復元した3Dデータを2次元平面に投影した表示用画像の画質が低減する可能性がある。そこで、上述のような条件を用いてこのようなパッチの境界近傍のオキュパンシーマップを高解像度化するようにしてもよい。このようにすることにより、パッチの外形の再現性を向上させることができる。つまり、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制する(典型的には画質を向上させる)ことができる。
また例えば、図21の表500の上から3段目に示されるように、パッチの、低解像度のオキュパンシーマップの境界から所定の閾値以上離れた領域に対して特殊値を適用するようにしてもよい。例えばパッチの内側にジオメトリデータが存在しない小さな領域が存在する場合、オキュパンシーマップがジオメトリデータよりも低解像度であると、そのような領域を再現することが困難になり、結果として、復元した3Dデータを2次元平面に投影した表示用画像の画質が低減する可能性がある。そこで、上述のような条件を用いてパッチの内側のオキュパンシーマップを高解像度化するようにしてもよい。このようにすることにより、パッチの内側の再現性を向上させることができる。つまり、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制する(典型的には画質を向上させる)ことができる。
さらに例えば、図21の表500の上から4段目に示されるように、所定の閾値以下のピクセルにより構成される孤立点には特殊値を適用しないようにしてもよい。例えば、ジオメトリビデオフレームにおいて、ノイズ等の影響により、パッチの外側に小さなジオメトリデータが存在する領域(孤立点)が生じる場合がある。オキュパンシーマップを高解像度化すると、このような孤立点まで再現してしまい、結果として、復元した3Dデータを2次元平面に投影した表示用画像の画質が低減してしまう可能性がある。そこで、上述したような条件を用いて、このような孤立点の部分のオキュパンシーマップを低解像度化する(高解像度化しない)ようにしてもよい。このようにすることにより、不要な孤立点の再現を抑制することができる。つまり、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制する(典型的には画質を向上させる)ことができる。
なお、図21の表500の上から5段目に示されるように、ジオメトリデータよりも低解像度のオキュパンシーマップを復号側に伝送するようにしてもよい。例えば、低解像度のオキュパンシーマップを、従来の場合と同様に、ジオメトリビデオフレームやカラービデオフレームとは異なる情報として(ビットストリームに含めて)復号側に伝送するようにしてもよい。
<一部の領域に適用されたオキュパンシーマップとジオメトリデータの抽出>
また、復号側において、図21の表500の上から6段目に示されるように、上述したような、一部の領域の値域(Range)にオキュパンシーマップ情報を表す特殊値(Special value)を含むジオメトリデータから、オキュパンシーマップとジオメトリデータを抽出するようにしてもよい。換言するに、オキュパンシーマップとジオメトリデータ(ジオメトリビデオフレーム)とを分離するようにするようしてもよい。
また、図21の表500の上から7段目に示されるように、ジオメトリデータよりも低解像度のオキュパンシーマップも取得するようにしてもよい。さらに、図21の表500の上から8段目に示されるように、高解像度のオキュパンシーマップと低解像度のオキュパンシーマップとを合成するようにしてもよい。つまり、ジオメトリビデオフレームから抽出された高解像度オキュパンシーマップと、ジオメトリビデオフレームやカラービデオフレームとは異なる情報として伝送される低解像度オキュパンシーマップとを合成するようにしてもよい。このように合成されたオキュパンシーマップを用いてアンパッキングを行うことにより、低解像度のオキュパンシーマップを用いる場合よりも、より正確にパッチを抽出することができ、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制する(典型的には画質を向上させる)ことができる。
<5.第3の実施の形態>
<符号化装置>
図22は、この場合の符号化装置300の主な構成の一例を示すブロック図である。この場合の符号化装置300は、図13の例と比べて、パッキング部312の代わりにパッキング部512を有し、埋め込み部315の代わりに埋め込み部515を有する。さらに、この場合の符号化装置300は、OMap符号化部521を有する。
パッキング部512は、パッキング部312と同様の処理を行うとともに、さらに、NxN画素の領域毎にパッチの有無を示す低解像度オキュパンシーマップ(Occupancy map(NxN))を生成する。パッキング部312は、その低解像度オキュパンシーマップを埋め込み部515およびOMap符号化部521に供給する。
埋め込み部515は、埋め込み部315と同様に、ジオメトリデータへのオキュパンシーマップの埋め込みに関する処理を行う。ただし、埋め込み部515は、一部の領域のジオメトリデータの値域(Range)に、オキュパンシーマップ情報を表す特殊値(Special value)を埋め込む。例えば、埋め込み部515は、パッキング部512から供給されるジオメトリビデオフレーム(Geometry video frame(s))、高解像度オキュパンシーマップ(Occupancy map(1x1))、および低解像度オキュパンシーマップ(Occupancy map(NxN))を取得する。また、埋め込み部515は、パラメータ生成部314から供給されるパラメータを取得する。
埋め込み部515は、それらの情報に基づいて、一部の領域において、値域に特殊値やガードマージン等を含むジオメトリデータにより構成されるジオメトリビデオフレーム(Geometry video frame(s) w/Guard)を生成する。例えば、埋め込み部515は、所定の条件を満たす領域において、値域に特殊値を含むジオメトリデータを生成する。例えば、埋め込み部515は、低解像度オキュパンシーマップに基づく領域において、値域に特殊値を含むジオメトリデータを生成する。埋め込み部515は、その生成したジオメトリビデオフレーム(Geometry video frame(s) w/Guard)をビデオ符号化部316に供給する。
OMap符号化部521は、オキュパンシーマップの符号化に関する処理を行う。例えば、OMap符号化部521は、パッキング部512から供給される低解像度オキュパンシーマップを取得する。OMap符号化部521は、その低解像度オキュパンシーマップを、例えば算術符号化等の任意の符号化方法により符号化し、符号化データを生成する。OMap符号化部521は、生成した符号化データをマルチプレクサ319に供給する。
なお、図22に示される符号化装置300の各処理部は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
<パッキング部>
図23は、図22のパッキング部512の主な構成例を示すブロック図である。図23に示されるように、パッキング部512は、パッキング部312の各処理部(図14)に加え、低解像度オキュパンシーマップ生成部531を有する。
低解像度オキュパンシーマップ生成部531は、パッチ配置部331から供給されたジオメトリビデオフレームに基づいて、NxN画素単位でパッチの有無を識別する低解像度オキュパンシーマップを生成する。低解像度オキュパンシーマップ生成部531は、生成した低解像度オキュパンシーマップ(Occupancy map(NxN))を埋め込み部515およびOMap符号化部521に供給する。
なお、これらの処理部(パッチ配置部331乃至Dilation処理部333、並びに、低解像度オキュパンシーマップ生成部531)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
以上のような構成を備えることにより、この場合の符号化装置300は、<4.局所的な高解像度のオキュパンシーマップ>において上述したような符号化を行うことができる。したがって、符号化装置300は、<4.局所的な高解像度のオキュパンシーマップ>において上述したような各種効果を得ることができる。したがって、符号化装置300は、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<符号化処理の流れ>
次に、この場合の符号化装置300により実行される符号化処理の流れの例を、図24のフローチャートを参照して説明する。
符号化処理が開始されると、符号化装置300のパッチ分解部311は、ステップS501において、3Dデータを2次元平面に投影し、パッチに分解する。
ステップS502において、パッキング部512は、パッキング処理を実行し、ステップS501において生成された位置情報や属性情報の各パッチをビデオフレームとしてパッキングする。また、パッキング部512は、そのパッキングに関する制御情報を生成する。なお、この場合、パッキング部512は、図16のフローチャートを参照して説明した各処理に加え、低解像度オキュパンシーマップを生成する。
ステップS503において、パラメータ生成部314、埋め込み部515、ビデオ符号化部316、およびOMap復元部317は、パラメータ設定処理を実行し、特殊値に関するパラメータを生成する。
ステップS504において、埋め込み部515は、ステップS503の処理により生成されたパラメータを用いて、ステップS502の処理により生成された高解像度オキュパンシーマップを、ステップS502の処理により生成されたジオメトリビデオフレームの、所定の条件を満たす領域に埋め込む。
ステップS505において、ビデオ符号化部316は、ステップS504の処理により生成された、所定の条件を満たす慮息にオキュパンシーマップ情報を含むジオメトリビデオフレームを符号化する。
ステップS506において、OMap符号化部521は、ステップS502の処理により生成された低解像度オキュパンシーマップを符号化する。
ステップS507において、ビデオ符号化部318は、ステップS502の処理により生成されたカラービデオフレームを符号化する。
ステップS508において、補助パッチ情報圧縮部313は、ステップS501の処理により生成された補助パッチ情報や、ステップS503の処理により生成されたパラメータを圧縮する。
ステップS509において、マルチプレクサ319は、以上のように生成された各種情報(例えば、ステップS505乃至ステップS508において生成された符号化データや、ステップS502において生成されるパッキングに関する制御情報等)を多重化し、これらの情報を含むビットストリームを生成する。
ステップS510において、マルチプレクサ319は、ステップS509において生成したビットストリームを符号化装置300の外部に出力する。
ステップS510の処理が終了すると、符号化処理が終了する。
以上のように各処理を実行することにより、この場合の符号化装置300は、<4.局所的な高解像度のオキュパンシーマップ>において上述したような符号化を行うことができる。したがって、符号化装置300は、<4.局所的な高解像度のオキュパンシーマップ>において上述したような各種効果を得ることができる。したがって、符号化装置300は、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<6.第4の実施の形態>
<復号装置>
図25は、この場合の復号装置400の構成の一例を示すブロック図である。図25に示される復号装置400は、図22の符号化装置300に対応する復号装置であり、この符号化装置300により生成されたビットストリームを復号して3Dデータを再構築することができる。
この場合の復号装置400は、図19の例の構成に加え、さらに、OMap復号部611およびOMap合成部612を有する。
この場合のデマルチプレクサ411は、逆多重化により、さらに、ビットストリームから低解像度オキュパンシーマップの符号化データを抽出し、それをOMap復号部611に供給する。
OMap復号部611は、オキュパンシーマップの復号に関する処理を行う。例えば、OMap復号部611は、デマルチプレクサ411から供給される符号化データを取得する。また、OMap復号部611は、その符号化データを復号し、低解像度オキュパンシーマップを生成する。さらにOMap復号部611は、生成した低解像度オキュパンシーマップ(Occupancy map(NxN))をOMap合成部612に供給する。
また、この場合の抽出部414は、さらに、高解像度オキュパンシーマップ(Occupancy map(1x1))をOMap合成部612に供給する。
OMap合成部612は、オキュパンシーマップの合成に関する処理を行う。例えば、OMap合成部612は、OMap復号部611から供給される低解像度オキュパンシーマップを取得する。また、OMap合成部612は、抽出部414から供給される高解像度オキュパンシーマップを取得する。さらに、OMap合成部612は、その高解像度オキュパンシーマップと、低解像度オキュパンシーマップとを合成する。つまり、OMap合成部612は、一部の領域において高解像度であり、その他の領域において低解像度である合成オキュパンシーマップ(Occupancy map(1x1)(NxN))を生成する。OMap合成部612は、生成した合成オキュパンシーマップ(Occupancy map(1x1)(NxN))をアンパッキング部416に供給する。
この場合のアンパッキング部416は、OMap合成部612から供給される合成オキュパンシーマップ(Occupancy map(1x1)(NxN))に基づいて、ジオメトリビデオフレームやカラービデオフレームをアンパッキングする。さらに、アンパッキング部416は、アンパッキングして得られた位置情報や属性情報のパッチ等を、3D再構築部417に供給する。
なお、これらの処理部(デマルチプレクサ411乃至3D再構築部417、並びに、OMap復号部611およびOMap合成部612)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
このような構成を備えることにより、この場合の復号装置400は、<4.局所的な高解像度のオキュパンシーマップ>において上述したような復号を行うことができる。したがって、復号装置400は、<4.局所的な高解像度のオキュパンシーマップ>において上述したような各種効果を得ることができる。したがって、復号装置400は、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<復号処理の流れ>
次に、この場合の復号装置400により実行される復号処理の流れの例を、図26および図27のフローチャートを参照して説明する。
復号処理が開始されると、復号装置400のデマルチプレクサ411は、図26のステップS601において、ビットストリームを逆多重化する。
ステップS602において、補助パッチ情報復号部412は、ステップS601の処理によりビットストリームから抽出された符号化データを復号し、補助パッチ情報を生成する。
ステップS603において、ビデオ復号部413は、ステップS601の処理によりビットストリームから抽出された符号化データを復号し、条件を満たす領域にオキュパンシーマップ情報を含むジオメトリビデオフレームを生成する。
ステップS604において、抽出部414は、ステップS602において生成された補助パッチ情報に含まれる特殊値に関するパラメータを用いて、ステップS603の処理により生成された、条件を満たす領域にオキュパンシーマップ情報を含むジオメトリビデオフレームから、オキュパンシーマップ情報を抽出し、高解像度オキュパンシーマップと、オキュパンシーマップ情報を含まないジオメトリビデオフレーム(Geometry video frame(s))とを生成する。
ステップS605において、抽出部414は、特殊値に関するパラメータ等に基づいて、符号化の際にデプス値が補正されているか否かを判定する。例えば、デプス値が補正されていると判定された場合、処理はステップS606に進む。
ステップS606において、抽出部414は、デプス値を逆補正する。ステップS606の処理が終了すると処理は図27のステップS611に進む。また、図26のステップS605において、デプス値が補正されていないと判定された場合、ステップS606の処理がスキップされ、処理は図27のステップS611に進む。
ステップS611において、OMap復号部611は、ステップS601においてビットストリームから抽出された符号化データを復号し、低解像度オキュパンシーマップを生成する。
ステップS612において、OMap合成部612は、図26のステップS604の処理により生成された高解像度オキュパンシーマップと、図27のステップS611の処理により生成された低解像度オキュパンシーマップとを合成し、合成オキュパンシーマップを生成する。
ステップS613において、ビデオ復号部415は、ステップS601においてビットストリームから抽出された符号化データを復号し、カラービデオフレームを生成する。
ステップS614において、アンパッキング部416は、ジオメトリビデオフレームやカラービデオフレームをアンパッキングし、パッチを抽出する。
ステップS615において、3D再構築部417は、ステップS614の処理により抽出されたパッチ等を用いて、例えばポイントクラウド等の3Dデータを再構築する。
ステップS615の処理が終了すると復号処理が終了する。
以上のように各処理を実行することにより、この場合の復号装置400は、<4.局所的な高解像度のオキュパンシーマップ>において上述したような復号を行うことができる。したがって、復号装置400は、<4.局所的な高解像度のオキュパンシーマップ>において上述したような各種効果を得ることができる。したがって、復号装置400は、符号化効率の低減を抑制しながら、復元した3Dデータを2次元平面に投影した表示用画像の画質の低減を抑制することができる。
<7.付記>
<制御情報>
以上の各実施の形態において説明した本技術に関する制御情報を符号化側から復号側に伝送するようにしてもよい。例えば、上述した本技術を適用することを許可(または禁止)するか否かを制御する制御情報(例えばenabled_flag)を伝送するようにしてもよい。また、例えば、上述した本技術を適用することを許可(または禁止)する範囲(例えばブロックサイズの上限若しくは下限、またはその両方、スライス、ピクチャ、シーケンス、コンポーネント、ビュー、レイヤ等)を指定する制御情報を伝送するようにしてもよい。
<コンピュータ>
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
図28は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
図28に示されるコンピュータ900において、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903は、バス904を介して相互に接続されている。
バス904にはまた、入出力インタフェース910も接続されている。入出力インタフェース910には、入力部911、出力部912、記憶部913、通信部914、およびドライブ915が接続されている。
入力部911は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部912は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部913は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部914は、例えば、ネットワークインタフェースよりなる。ドライブ915は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア921を駆動する。
以上のように構成されるコンピュータでは、CPU901が、例えば、記憶部913に記憶されているプログラムを、入出力インタフェース910およびバス904を介して、RAM903にロードして実行することにより、上述した一連の処理が行われる。RAM903にはまた、CPU901が各種の処理を実行する上において必要なデータなども適宜記憶される。
コンピュータが実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア921に記録して適用することができる。その場合、プログラムは、リムーバブルメディア921をドライブ915に装着することにより、入出力インタフェース910を介して、記憶部913にインストールすることができる。
また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部914で受信し、記憶部913にインストールすることができる。
その他、このプログラムは、ROM902や記憶部913に、あらかじめインストールしておくこともできる。
<本技術の適用対象>
以上においては、ポイントクラウドデータの符号化・復号に本技術を適用する場合について説明したが、本技術は、これらの例に限らず、任意の規格の3Dデータの符号化・復号に対して適用することができる。つまり、上述した本技術と矛盾しない限り、符号化・復号方式等の各種処理、並びに、3Dデータやメタデータ等の各種データの仕様は任意である。また、本技術と矛盾しない限り、上述した一部の処理や仕様を省略してもよい。
また、以上においては、本技術の適用例として符号化装置300および復号装置400について説明したが、本技術は、任意の構成に適用することができる。
例えば、本技術は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、およびセルラー通信による端末への配信などにおける送信機や受信機(例えばテレビジョン受像機や携帯電話機)、または、光ディスク、磁気ディスクおよびフラッシュメモリなどの媒体に画像を記録したり、これら記憶媒体から画像を再生したりする装置(例えばハードディスクレコーダやカメラ)などの、様々な電子機器に適用され得る。
また、例えば、本技術は、システムLSI(Large Scale Integration)等としてのプロセッサ(例えばビデオプロセッサ)、複数のプロセッサ等を用いるモジュール(例えばビデオモジュール)、複数のモジュール等を用いるユニット(例えばビデオユニット)、または、ユニットにさらにその他の機能を付加したセット(例えばビデオセット)等、装置の一部の構成として実施することもできる。
また、例えば、本技術は、複数の装置により構成されるネットワークシステムにも適用することもできる。例えば、本技術を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングとして実施するようにしてもよい。例えば、コンピュータ、AV(Audio Visual)機器、携帯型情報処理端末、IoT(Internet of Things)デバイス等の任意の端末に対して、画像(動画像)に関するサービスを提供するクラウドサービスにおいて本技術を実施するようにしてもよい。
なお、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、および、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
<本技術を適用可能な分野・用途>
本技術を適用したシステム、装置、処理部等は、例えば、交通、医療、防犯、農業、畜産業、鉱業、美容、工場、家電、気象、自然監視等、任意の分野に利用することができる。また、その用途も任意である。
<その他>
なお、本明細書において「フラグ」とは、複数の状態を識別するための情報であり、真(1)または偽(0)の2状態を識別する際に用いる情報だけでなく、3以上の状態を識別することが可能な情報も含まれる。したがって、この「フラグ」が取り得る値は、例えば1/0の2値であってもよいし、3値以上であってもよい。すなわち、この「フラグ」を構成するbit数は任意であり、1bitでも複数bitでもよい。また、識別情報(フラグも含む)は、その識別情報をビットストリームに含める形だけでなく、ある基準となる情報に対する識別情報の差分情報をビットストリームに含める形も想定されるため、本明細書においては、「フラグ」や「識別情報」は、その情報だけではなく、基準となる情報に対する差分情報も包含する。
また、符号化データ(ビットストリーム)に関する各種情報(メタデータ等)は、符号化データに関連づけられていれば、どのような形態で伝送または記録されるようにしてもよい。ここで、「関連付ける」という用語は、例えば、一方のデータを処理する際に他方のデータを利用し得る(リンクさせ得る)ようにすることを意味する。つまり、互いに関連付けられたデータは、1つのデータとしてまとめられてもよいし、それぞれ個別のデータとしてもよい。例えば、符号化データ(画像)に関連付けられた情報は、その符号化データ(画像)とは別の伝送路上で伝送されるようにしてもよい。また、例えば、符号化データ(画像)に関連付けられた情報は、その符号化データ(画像)とは別の記録媒体(または同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。なお、この「関連付け」は、データ全体でなく、データの一部であってもよい。例えば、画像とその画像に対応する情報とが、複数フレーム、1フレーム、またはフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
なお、本明細書において、「合成する」、「多重化する」、「付加する」、「一体化する」、「含める」、「格納する」、「入れ込む」、「差し込む」、「挿入する」等の用語は、例えば符号化データとメタデータとを1つのデータにまとめるといった、複数の物を1つにまとめることを意味し、上述の「関連付ける」の1つの方法を意味する。
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
また、例えば、上述したプログラムは、任意の装置において実行されるようにしてもよい。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。
また、例えば、1つのフローチャートの各ステップを、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。さらに、1つのステップに複数の処理が含まれる場合、その複数の処理を、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。換言するに、1つのステップに含まれる複数の処理を、複数のステップの処理として実行することもできる。逆に、複数のステップとして説明した処理を1つのステップとしてまとめて実行することもできる。
また、例えば、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
また、例えば、本技術に関する複数の技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術の一部または全部を、他の実施の形態において説明した本技術の一部または全部と組み合わせて実施することもできる。また、上述した任意の本技術の一部または全部を、上述していない他の技術と併用して実施することもできる。
なお、本技術は以下のような構成も取ることができる。
(1) 3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成するジオメトリデータ生成部と、
前記ジオメトリデータ生成部により生成された前記ジオメトリデータを符号化する符号化部と
を備える画像処理装置。
(2) 前記特殊値は、前記投影画像が存在しないことを示す
(1)に記載の画像処理装置。
(3) 前記ジオメトリデータの値域に前記特殊値を設定する特殊値設定部をさらに備え、
前記ジオメトリデータ生成部は、値域に前記特殊値設定部により設定された前記特殊値を含む前記ジオメトリデータを生成する
(1)または(2)に記載の画像処理装置。
(4) 前記特殊値設定部は、前記ジオメトリデータの値域の最小値、最大値、または中間値の内の少なくとも1つを、前記特殊値に設定する
(3)に記載の画像処理装置。
(5) 前記ジオメトリデータの値域の、前記3Dデータの位置を示すデプス値を表す値域と前記特殊値との間に、所定の幅のマージンを設定するマージン設定部をさらに備え、
前記ジオメトリデータ生成部は、値域に前記特殊値と前記マージン設定部により設定された前記マージンとを含む前記ジオメトリデータを生成する
(1)乃至(4)のいずれかに記載の画像処理装置。
(6) 前記3Dデータの位置を示すデプス値と前記特殊値とを識別するための閾値を設定する閾値設定部をさらに備える
(1)乃至(5)のいずれかに記載の画像処理装置。
(7) 前記符号化部により前記ジオメトリデータから生成された符号化データを復号する復号部をさらに備え、
前記閾値設定部は、前記復号部により前記符号化データから生成された前記ジオメトリデータに基づいて、前記閾値を設定する
(6)に記載の画像処理装置。
(8) 前記ジオメトリデータ生成部は、前記3Dデータの位置を示すデプス値の値域を補正して、値域に前記特殊値を含む前記ジオメトリデータを生成する
(1)乃至(7)のいずれかに記載の画像処理装置。
(9) 前記ジオメトリデータ生成部は、前記デプス値を量子化またはシフトすることにより、前記デプス値の値域を補正する
(8)に記載の画像処理装置。
(10) 前記符号化部により前記ジオメトリデータから生成された符号化データと、前記特殊値に関するパラメータとを含むビットストリームを生成するビットストリーム生成部をさらに備える
(1)乃至(9)のいずれかに記載の画像処理装置。
(11) 前記パラメータは、前記特殊値を示す情報、前記3Dデータの位置を示すデプス値を表す値域と前記特殊値との間のマージンを示す情報、および、前記デプス値と前記特殊値とを識別するための閾値を示す情報、の内の少なくとも1つを含む
(10)に記載の画像処理装置。
(12) 前記ビットストリーム生成部は、前記パラメータを、パッチ、フレーム、またはシーケンス毎に含む前記ビットストリームを生成する
(10)または(11)に記載の画像処理装置。
(13) 前記ジオメトリデータ生成部は、前記フレーム画像の所定の条件を満たす一部の領域のデータの値域に前記特殊値を含むジオメトリデータを生成する
(1)乃至(12)のいずれかに記載の画像処理装置。
(14) 前記ジオメトリデータ生成部は、前記ジオメトリデータよりも低解像度のオキュパンシーマップ情報に基づく領域のデータの値域に前記特殊値を含む前記ジオメトリデータを生成する
(13)に記載の画像処理装置。
(15) 3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成し、
生成された前記ジオメトリデータを符号化する
画像処理方法。
(16) 3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データを復号する復号部と、
前記復号部により前記符号化データから生成された前記ジオメトリデータから、前記3Dデータの位置を示すデプス値と前記オキュパンシーマップ情報とを抽出する抽出部と
を備える画像処理装置。
(17) 前記抽出部は、前記特殊値に関するパラメータに基づいて、前記デプス値と前記特殊値とを抽出する
(16)に記載の画像処理装置。
(18) 前記抽出部は、抽出した前記デプス値の値域を補正する
(16)または(17)に記載の画像処理装置。
(19) 前記抽出部により抽出された前記オキュパンシーマップ情報と、前記オキュパンシーマップ情報よりも低解像度のオキュパンシーマップ情報とを合成する合成部をさらに備える
(16)乃至(18)のいずれかに記載の画像処理装置。
(20) 3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データを復号し、
前記符号化データから生成された前記ジオメトリデータから、前記3Dデータの位置を示すデプス値と前記オキュパンシーマップ情報とを抽出する
画像処理方法。
300 符号化装置, 311 パッチ分解部, 312 パッキング部, 313 補助パッチ情報圧縮部, 314 パラメータ生成部, 315 埋め込み部, 316 ビデオ符号化部, 317 OMap復元部, 318 ビデオ符号化部, 319 マルチプレクサ, 331 パッチ配置部, 332 高解像度オキュパンシーマップ生成部, 333 Dilation処理部 400 復号装置, 411 デマルチプレクサ, 412 補助パッチ情報復号部, 413 ビデオ復号部, 414 抽出部, 415 ビデオ復号部, 416 アンパッキング部, 417 3D再構築部, 512 パッキング部, 515 埋め込み部, 521 OMap符号化部, 531 低解像度オキュパンシーマップ生成部, 611 OMap復号部, 612 OMap合成部

Claims (20)

  1. 3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成するジオメトリデータ生成部と、
    前記ジオメトリデータ生成部により生成された前記ジオメトリデータを符号化する符号化部と
    を備える画像処理装置。
  2. 前記特殊値は、前記投影画像が存在しないことを示す
    請求項1に記載の画像処理装置。
  3. 前記ジオメトリデータの値域に前記特殊値を設定する特殊値設定部をさらに備え、
    前記ジオメトリデータ生成部は、値域に前記特殊値設定部により設定された前記特殊値を含む前記ジオメトリデータを生成する
    請求項1に記載の画像処理装置。
  4. 前記特殊値設定部は、前記ジオメトリデータの値域の最小値、最大値、または中間値の内の少なくとも1つを、前記特殊値に設定する
    請求項3に記載の画像処理装置。
  5. 前記ジオメトリデータの値域の、前記3Dデータの位置を示すデプス値を表す値域と前記特殊値との間に、所定の幅のマージンを設定するマージン設定部をさらに備え、
    前記ジオメトリデータ生成部は、値域に前記特殊値と前記マージン設定部により設定された前記マージンとを含む前記ジオメトリデータを生成する
    請求項1に記載の画像処理装置。
  6. 前記3Dデータの位置を示すデプス値と前記特殊値とを識別するための閾値を設定する閾値設定部をさらに備える
    請求項1に記載の画像処理装置。
  7. 前記符号化部により前記ジオメトリデータから生成された符号化データを復号する復号部をさらに備え、
    前記閾値設定部は、前記復号部により前記符号化データから生成された前記ジオメトリデータに基づいて、前記閾値を設定する
    請求項6に記載の画像処理装置。
  8. 前記ジオメトリデータ生成部は、前記3Dデータの位置を示すデプス値の値域を補正して、値域に前記特殊値を含む前記ジオメトリデータを生成する
    請求項1に記載の画像処理装置。
  9. 前記ジオメトリデータ生成部は、前記デプス値を量子化またはシフトすることにより、前記デプス値の値域を補正する
    請求項8に記載の画像処理装置。
  10. 前記符号化部により前記ジオメトリデータから生成された符号化データと、前記特殊値に関するパラメータとを含むビットストリームを生成するビットストリーム生成部をさらに備える
    請求項1に記載の画像処理装置。
  11. 前記パラメータは、前記特殊値を示す情報、前記3Dデータの位置を示すデプス値を表す値域と前記特殊値との間のマージンを示す情報、および、前記デプス値と前記特殊値とを識別するための閾値を示す情報、の内の少なくとも1つを含む
    請求項10に記載の画像処理装置。
  12. 前記ビットストリーム生成部は、前記パラメータを、パッチ、フレーム、またはシーケンス毎に含む前記ビットストリームを生成する
    請求項10に記載の画像処理装置。
  13. 前記ジオメトリデータ生成部は、前記フレーム画像の所定の条件を満たす一部の領域のデータの値域に前記特殊値を含むジオメトリデータを生成する
    請求項1に記載の画像処理装置。
  14. 前記ジオメトリデータ生成部は、前記ジオメトリデータよりも低解像度のオキュパンシーマップ情報に基づく領域のデータの値域に前記特殊値を含む前記ジオメトリデータを生成する
    請求項13に記載の画像処理装置。
  15. 3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータを生成し、
    生成された前記ジオメトリデータを符号化する
    画像処理方法。
  16. 3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データを復号する復号部と、
    前記復号部により前記符号化データから生成された前記ジオメトリデータから、前記3Dデータの位置を示すデプス値と前記オキュパンシーマップ情報とを抽出する抽出部と
    を備える画像処理装置。
  17. 前記抽出部は、前記特殊値に関するパラメータに基づいて、前記デプス値と前記特殊値とを抽出する
    請求項16に記載の画像処理装置。
  18. 前記抽出部は、抽出した前記デプス値の値域を補正する
    請求項16に記載の画像処理装置。
  19. 前記抽出部により抽出された前記オキュパンシーマップ情報と、前記オキュパンシーマップ情報よりも低解像度のオキュパンシーマップ情報とを合成する合成部をさらに備える
    請求項16に記載の画像処理装置。
  20. 3次元構造を表す3Dデータの2次元平面への投影画像が配置されたフレーム画像であって、値域にオキュパンシーマップ情報を表す特殊値を含むジオメトリデータの符号化データを復号し、
    前記符号化データから生成された前記ジオメトリデータから、前記3Dデータの位置を示すデプス値と前記オキュパンシーマップ情報とを抽出する
    画像処理方法。
JP2018186368A 2018-10-01 2018-10-01 画像処理装置および方法 Pending JP2022003716A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018186368A JP2022003716A (ja) 2018-10-01 2018-10-01 画像処理装置および方法
PCT/JP2019/036296 WO2020071101A1 (ja) 2018-10-01 2019-09-17 画像処理装置および方法
US17/278,004 US11948337B2 (en) 2018-10-01 2019-09-17 Image processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018186368A JP2022003716A (ja) 2018-10-01 2018-10-01 画像処理装置および方法

Publications (1)

Publication Number Publication Date
JP2022003716A true JP2022003716A (ja) 2022-01-11

Family

ID=70055869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018186368A Pending JP2022003716A (ja) 2018-10-01 2018-10-01 画像処理装置および方法

Country Status (3)

Country Link
US (1) US11948337B2 (ja)
JP (1) JP2022003716A (ja)
WO (1) WO2020071101A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102640235B1 (ko) * 2019-01-11 2024-02-23 삼성전자주식회사 3차원 데이터 부호화 방법 및 장치 및 3차원 데이터 복호화 방법 및 장치
KR20210138097A (ko) * 2019-03-20 2021-11-18 인터디지털 브이씨 홀딩스 인코포레이티드 포인트 클라우드의 누락 포인트 프로세싱
EP3734977A1 (en) * 2019-04-30 2020-11-04 Nokia Technologies Oy An apparatus, a method and a computer program for volumetric video

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180053324A1 (en) 2016-08-19 2018-02-22 Mitsubishi Electric Research Laboratories, Inc. Method for Predictive Coding of Point Cloud Geometries
US10909725B2 (en) * 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
US10789733B2 (en) 2017-11-22 2020-09-29 Apple Inc. Point cloud compression with multi-layer projection
US10699444B2 (en) 2017-11-22 2020-06-30 Apple Inc Point cloud occupancy map compression
AU2019302075A1 (en) * 2018-07-11 2021-01-28 Sony Corporation Image processing device and method

Also Published As

Publication number Publication date
US20210358176A1 (en) 2021-11-18
WO2020071101A1 (ja) 2020-04-09
US11948337B2 (en) 2024-04-02

Similar Documents

Publication Publication Date Title
US20210027505A1 (en) Image processing apparatus and method
US11741575B2 (en) Image processing apparatus and image processing method
US11721048B2 (en) Image processing apparatus and method
US11699248B2 (en) Image processing apparatus and method
US11310518B2 (en) Image processing apparatus and method
JP7331852B2 (ja) 画像処理装置および方法
US11399189B2 (en) Image processing apparatus and method
WO2020071101A1 (ja) 画像処理装置および方法
US11915390B2 (en) Image processing device and method
US11917201B2 (en) Information processing apparatus and information generation method
US20230179797A1 (en) Image processing apparatus and method
JP2022036353A (ja) 画像処理装置および方法
WO2020262020A1 (ja) 情報処理装置および方法
CN115398916A (zh) 信息处理装置和信息处理方法
JP2022051968A (ja) 情報処理装置および方法