[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

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

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

Info

Publication number
JP2021182650A
JP2021182650A JP2018136928A JP2018136928A JP2021182650A JP 2021182650 A JP2021182650 A JP 2021182650A JP 2018136928 A JP2018136928 A JP 2018136928A JP 2018136928 A JP2018136928 A JP 2018136928A JP 2021182650 A JP2021182650 A JP 2021182650A
Authority
JP
Japan
Prior art keywords
camera
unit
point cloud
rendering
metadata
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
JP2018136928A
Other languages
English (en)
Inventor
毅 加藤
Takeshi Kato
智 隈
Satoshi Kuma
央二 中神
Hisaji Nakagami
幸司 矢野
Koji Yano
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 JP2018136928A priority Critical patent/JP2021182650A/ja
Priority to PCT/JP2019/026791 priority patent/WO2020017359A1/ja
Priority to CN201980047072.2A priority patent/CN112425175A/zh
Priority to US17/250,370 priority patent/US11356690B2/en
Publication of JP2021182650A publication Critical patent/JP2021182650A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • 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

Landscapes

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

Abstract

【課題】より容易により適切なレンダリングを行うことができるようにする。【解決手段】3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化して、その符号化データを生成し、その生成された符号化データとそのポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを生成する。本開示は、例えば、画像処理装置、電子機器、画像処理方法、またはプログラム等に適用することができる。【選択図】図2

Description

本開示は、画像処理装置および方法に関し、特に、より容易により適切なレンダリングを行うことができるようにした画像処理装置および方法に関する。
従来、例えばポイントクラウド(Point cloud)のような3次元構造を表す3Dデータの符号化方法として、例えばOctree等のような、ボクセル(Voxel)を用いた符号化があった(例えば非特許文献1参照)。
近年、その他の符号化方法として、例えば、ポイントクラウドの位置と色情報それぞれを、小領域毎に2次元平面に投影し、2次元画像用の符号化方法で符号化するアプローチ(以下、ビデオベースドアプローチ(Video-based approach)とも称する)が提案されている(例えば、非特許文献2乃至非特許文献4参照)。
このように符号化される3Dデータは、ビットストリームとして伝送され、復号後、その3次元構造を任意の位置および向きのカメラで撮影したようにレンダリングされて2次元画像に変換されて表示されたり記憶されたりした。
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
しかしながら、この方法の場合、復号した3Dデータをレンダリングする際、カメラのパラメータをどのような値に設定するのが適切であるかを把握することができず、適切なレンダリングを行うことが困難であった。
本開示は、このような状況に鑑みてなされたものであり、より容易により適切なレンダリングを行うことができるようにするものである。
本技術の一側面の画像処理装置は、3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化して、符号化データを生成する符号化部と、前記符号化部により生成された前記符号化データと前記ポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを生成する生成部とを備える画像処理装置である。
本技術の一側面の画像処理方法は、3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化して、符号化データを生成し、生成された前記符号化データと前記ポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを生成する画像処理方法である。
本技術の他の側面の画像処理装置は、3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化した符号化データと前記ポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを復号して、前記ポイントクラウドを再構築し、前記メタデータを抽出する復号部と、前記復号部により抽出された前記メタデータを用いて、前記復号部により再構築された前記ポイントクラウドをレンダリングするレンダリング部とを備える画像処理装置である。
本技術の他の側面の画像処理方法は、3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化した符号化データと前記ポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを復号して、前記ポイントクラウドを再構築し、前記メタデータを抽出し、抽出された前記メタデータを用いて、再構築された前記ポイントクラウドをレンダリングする画像処理方法である。
本技術の一側面の画像処理装置および方法においては、3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像が符号化されて、符号化データが生成され、その生成された符号化データとそのポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームが生成される。
本技術の他の側面の画像処理装置および方法においては、3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像が符号化された符号化データとそのポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームが復号されて、そのポイントクラウドが再構築され、そのメタデータが抽出され、その抽出されたメタデータが用いられて、その再構築されたポイントクラウドがレンダリングされる。
本開示によれば、画像を処理することができる。特に、より容易により適切なレンダリングを行うことができる。
3Dデータのレンダリングの例を示す図である。 本技術を適用したメタデータの例を示す図である。 カメラパラメータの例を説明する図である。 カメラパラメータインデックスの例を説明する図である。 Social Zoneの例を説明する図である。 Friendship Zoneの例を説明する図である。 Intimate Zoneの例を説明する図である。 レンダリングの例を説明する図である。 カメラパラメータカテゴリインデックスの例を説明する図である。 バウンディングボックスの例を説明する図である。 バウンディングボックスの例を説明する図である。 メタデータの更新タイミングの例を説明する図である。 符号化装置の主な構成例を示すブロック図である。 符号化処理の流れの例を説明するフローチャートである。 ポイントクラウド符号化処理の流れの例を説明するフローチャートである。 再生装置の主な構成例を示すブロック図である。 復号部の主な構成例を示すブロック図である。 再生処理の流れの例を説明するフローチャートである。 ポイントクラウド復号処理の流れの例を説明するフローチャートである。 再生装置の主な構成例を示すブロック図である。 再生処理の流れの例を説明するフローチャートである。 コンピュータの主な構成例を示すブロック図である。
以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.レンダリング用カメラパラメータのシグナル
2.第1の実施の形態(符号化装置)
3.第2の実施の形態(再生装置)
4.第3の実施の形態(再生装置)
5.付記
<1.レンダリング用カメラパラメータのシグナル>
<技術内容・技術用語をサポートする文献等>
本技術で開示される範囲は、実施の形態に記載されている内容だけではなく、出願当時において公知となっている以下の非特許文献に記載されている内容も含まれる。
非特許文献1:(上述)
非特許文献2:(上述)
非特許文献3:(上述)
非特許文献4:(上述)
非特許文献5:TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "Advanced video coding for generic audiovisual services", H.264, 04/2017
非特許文献6:TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "High efficiency video coding", H.265, 12/2016
非特許文献7: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
つまり、上述の非特許文献に記載されている内容もサポート要件を判断する際の根拠となる。例えば、非特許文献6に記載されているQuad-Tree Block Structure、非特許文献7に記載されているQTBT(Quad Tree Plus Binary Tree) Block Structureが実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、特許請求の範囲のサポート要件を満たすものとする。また、例えば、パース(Parsing)、シンタックス(Syntax)、セマンティクス(Semantics)等の技術用語についても同様に、実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、特許請求の範囲のサポート要件を満たすものとする。
<ポイントクラウド>
従来、点群の位置情報や属性情報等により3次元構造を表すポイントクラウドや、頂点、エッジ、面で構成され、多角形表現を使用して3次元形状を定義するメッシュ等の3Dデータが存在した。
例えばポイントクラウドの場合、立体構造物(3次元形状のオブジェクト)を多数の点の集合(点群)として表現する。つまり、ポイントクラウドのデータは、この点群の各点の位置情報や属性情報(例えば色等)により構成される。したがってデータ構造が比較的単純であるとともに、十分に多くの点を用いることにより任意の立体構造物を十分な精度で表現することができる。
<ビデオベースドアプローチの概要>
このようなポイントクラウドの位置と色情報それぞれを、小領域毎に2次元平面に投影して2次元画像化し、その2次元画像を2次元画像用の符号化方法で符号化するビデオベースドアプローチ(Video-based approach)が提案されている。
このビデオベースドアプローチでは、入力されたポイントクラウド(Point cloud)が複数のセグメンテーション(領域とも称する)に分割され、領域毎に2次元平面に投影される。なお、ポイントクラウドの位置毎のデータ(すなわち、各ポイントのデータ)は、上述のように位置情報(Geometry(Depthとも称する))と属性情報(Texture)とにより構成され、それぞれ、領域毎に2次元平面に投影される。
そして、この2次元平面に投影された各セグメンテーション(パッチとも称する)は、2次元画像に配置され、例えば、AVC(Advanced Video Coding)やHEVC(High Efficiency Video Coding)等といった、2次元平面画像用の符号化方式により符号化される。
<レンダリングにおける画質>
このように符号化される3Dデータは、ビットストリームとして伝送され、復号後、その3次元構造を任意の位置および向きのカメラで撮影したようにレンダリングされて2次元画像に変換されて表示されたり記憶されたりした。なお、この3Dデータがレンダリングされた2次元画像は、符号化の際の2次元画像(パッチを配置した2次元画像)とは異なる画像である。
3Dデータがレンダリングされた2次元画像の主観的画質は、3Dデータのレンダリング対象のオブジェクトと、レンダリング用のカメラの距離や投影方法等の影響を受ける。またエンコーダによって生じた圧縮歪の見え方も同様である。
しかしながら、ストリーム作成者がエンコード時に品質を確認した条件(3Dオブジェクトとカメラの距離や投影方法等)がわからないと、ストリーム利用者が適切なレンダリングをすることが困難であった。
例えば、ポイントクラウドは3次元形状のオブジェクトを点群として表現するため、その点群の密度はオブジェクトの見え方に大きな影響を及ぼす。例えば各点を識別することができない程点群が十分に密な状態であれば、その点群はオブジェクト(3次元形状)として見えるが、各点を識別することができる程点群が疎であると、その点群がオブジェクト(3次元形状)として見えにくくなるおそれがある。
そして点群の主観的な密度(見え方)は、点群(立体形状)と視点との距離に応じて変化する。例えば、視点が点群から離れるほど点群は密に見え、視点が点群に近づくほど点群は疎に見える。
また、一般的に、3Dデータのレンダリング手法として、カメラで撮像するように(すなわち、撮像画像のような画像を生成するように)レンダリングを行う方法がある。このような手法の場合、そのカメラ(レンダリング用のカメラとも称する)は、図1に示される例のように、任意の位置や向きとすることができる。図1に示される画像11乃至画像15は、それぞれ、カメラがポイントクラウドのオブジェクト10を撮像するようにレンダリングした2次元画像の例である。このように、レンダリング用のカメラの位置や向きは自由に設定することができる。
つまり、ポイントクラウドがレンダリングされた2次元画像の主観的画質は、レンダリング用のカメラの位置(特に、カメラとオブジェクト(点群)との距離)に影響される可能性がある。換言するに、レンダリング用カメラの適切な位置(または範囲)は、ポイントクラウドの点群の密度に応じて定まる。その他の3Dデータの場合も同様であり、レンダリング用カメラの適切な位置(または範囲)は、その3Dデータの構造に応じて定まる。
しかしながら、従来の方法の場合、そのような情報は提供されないので、レンダリングを行うストリーム利用者が、そのような適切なカメラの位置を把握することは困難であった。
例えば、図1において、画像12の方が、画像11よりもカメラからオブジェクト10までの距離が短く、オブジェクト10の主観的画質が低減する可能性がある。しかしながら、従来の方法では、ストリーム利用者は、画像11のカメラ位置が適切であるのか、画像12のカメラ位置が適切であるのかを、レンダリング結果を確認せずに把握することが困難であった。
例えば、一般的にストリーム作成者は、ストリームを作成する際に3Dデータをレンダリングした2次元画像の品質確認を行うが、その場合、上述のような3Dデータの構造に応じた(例えばポイントクラウドの点群の密度に応じた)適切なカメラ位置が想定され、その位置でのレンダリング結果について品質確認が行われる。しかしながら、従来の方法の場合、そのような情報はストリーム利用者には提供されないため、ストリーム作成者がどのようなカメラ位置を想定しているかを把握することが困難であった。
また、例えば、ストリーム作成者が推奨するカメラ位置やカメラ移動軌跡等をストリーム利用者に提供することも困難であった。
したがって、ストリーム利用者が、復号した3Dデータをレンダリングする際、カメラのパラメータをどのような値に設定するのが適切であるかを把握することができず、適切なレンダリングを行うことが困難であった。
<カメラに関する情報のシグナル>
そこで、3Dデータ(例えば、3次元形状のオブジェクトを点群として表現するポイントクラウド)のレンダリング用のカメラに関する情報を、その3Dデータに関連付けて復号側に提供するようにする。例えば、そのカメラに関する情報を、3Dデータ(例えばポイントクラウド)をレンダリングする際に用いるメタデータとして3Dデータのビットストリームに含めて、復号側に伝送するようにしてもよい。
このようにすることにより、復号側においてそのカメラに関する情報を取得することができる。そして、このカメラに関する情報を利用することにより、より容易により適切なレンダリングを行うことができる。
<カメラに関する情報>
<カメラパラメータインデックス>
カメラに関する情報は、3Dデータのレンダリング用のカメラに関するものであれば、どのような情報であってもよい。例えば、図2の表21に示されるような各種情報を含んでいてもよい。
例えば、表21の上から1番目の行(項目名の行を除く)のように、カメラに関する情報が、定義済みのカメラパラメータ(レンダリング用のカメラに対する条件が予め設定されたカメラパラメータ)を示すインデックスであるカメラパラメータインデックス(Camera Parameter Index)を含むようにしてもよい。
カメラパラメータは、3Dデータのレンダリング用のカメラに関するパラメータである。具体的には、どのようなパラメータであってもよい。例えば、図3のAに示されるシンタックス31のように、このカメラパラメータに、カメラの位置を示すx,y,z座標(camera_pos_x, camera_pos_y, camera_pos_z)、つまり、図3のBのカメラの位置座標(camera_pos)32が含まれるようにしてもよい。
また、このカメラパラメータに、カメラの注視点の位置を示すx,y,z座標(center_pos_x, center_pos_y, center_pos_z)、つまり、図3のBのカメラの注視点座標(center_pos)33が含まれるようにしてもよい。なお、カメラの注視点の代わりに、図3のBに示される、カメラの位置座標(camera_pos)32からカメラの注視点座標(center_pos)33に向かうベクトル34がカメラパラメータに含まれるようにしてもよい。これらのパラメータはカメラの方向(向き)を示すパラメータである。
また、このカメラパラメータに、カメラの上方向を示すベクトル(camera_up_x, camera_up_y, camera_up_z)、つまり、図3のBのカメラの上方向を示すベクトル(camera_up)35が含まれるようにしてもよい。
なお、これらの、カメラの注視点座標33(ベクトル34)やカメラの上方向を示すベクトル35は、カメラの姿勢を示すパラメータでもある。
また、このカメラパラメータに、カメラの投影方法、つまり、レンダリング方法を示すパラメータが含まれるようにしてもよい。例えば、このカメラの投影方法を示すパラメータとして、透視投影であるか否かを示すパラメータ(PerspectiveProjection)が含まれるようにしてもよい。また、例えば、このカメラの投影方法を示すパラメータとして、平行投影であるか否かを示すパラメータが含まれるようにしてもよい。さらに、このカメラの投影方法を示すパラメータとして、透視投影であるかまたは平行投影であるかを示すパラメータが含まれるようにしてもよい。
また、このカメラパラメータに、カメラの画角を示すパラメータ(fov(Field Of View))が含まれるようにしてもよい。
カメラパラメータインデックス(Camera Parameter Index)は、定義済みのカメラパラメータを示すものであれば、どのようなカメラパラメータを示すものであってもよいし、どのような値のインデックスであってもよい。
例えば、図4の表41に示されるように、カメラパラメータインデックスが、定義済みの撮影のシチュエーション(カメラの位置、向き、姿勢等)を示すようにしてもよい。つまり、カメラパラメータインデックスを指定することにより、その値に応じたシチュエーションを実現するカメラパラメータが指定されるようにしてもよい。
図4の表41の例の場合、インデックス「0」は、「Social Zone」と称するシチュエーションを示し、インデックス「1」は、「Friendship Zone」と称するシチュエーションを示し、インデックス「2」は、「Intimate Zone」と称するシチュエーションを示す。
「Social Zone」は、同表に示されるように、カメラが、3Dオブジェクトからの距離2m、地上から1.4mの場所に位置し、水平方向から10度下を向く状態を示す。つまり、このシチュエーションが指定されると、図5に示されるように、カメラの位置座標(camera_pos)32は、オブジェクト10から2000mm離れた、地上から1400mmの位置に設定される。また、ベクトル34は、水平方向から10度下の方向に設定される(10°face down)。
「Friendship Zone」は、同表に示されるように、カメラが、3Dオブジェクトからの距離1m、地上から1.4mの場所に位置し、水平方向から10度下を向く状態を示す。つまり、このシチュエーションが指定されると、図6に示されるように、カメラの位置座標(camera_pos)32は、オブジェクト10から1000mm離れた、地上から1400mmの位置に設定される。また、ベクトル34は、水平方向から10度下の方向に設定される(10°face down)。
「Intimate Zone」は、同表に示されるように、カメラが、3Dオブジェクトからの距離0.5m、地上から1.4mの場所に位置し、水平方向を向く状態を示す。つまり、このシチュエーションが指定されると、図7に示されるように、カメラの位置座標(camera_pos)32は、オブジェクト10から500mm離れた、地上から1400mmの位置に設定される。また、ベクトル34は、水平方向に設定される(0°)。
このようなシチュエーション(の各カメラパラメータ)とカメラパラメータインデックスとの対応関係が例えば規格等により予め規定されており、符号化側および復号側においてその関係が予め把握されている。したがって、符号化側においても復号側においても、カメラパラメータインデックス(Camera Parameter Index)を指定するだけで、容易に、上述のようなシチュエーションを実現するカメラパラメータを指定することができる。
なお、カメラパラメータインデックスにより指定されるカメラパラメータは任意であり、上述の例に限定されない。また、カメラパラメータインデックスにより指定されるシチュエーションは任意であり、上述の例に限定されない。さらに、予め規定されるカメラパラメータインデックスの数は任意であり、上述の例に限定されず、2以下であってもよいし、4以上であってもよい。また、カメラパラメータインデックスの値は任意であり、上述の例(0乃至2)に限定されない。
レンダリングの際に、このようなカメラパラメータインデックスにより指定されるカメラパラメータをセットすることにより、カメラパラメータインデックスが指定するシチュエーションのレンダリングを行うことができる。
例えば、カメラパラメータインデックス「0」に基づいてカメラパラメータをセットすると、「Social Zone」でのレンダリングを行うことができ、図8のAに示されるような画像51が得られる。この場合、カメラ位置がオブジェクト10から比較的遠いので、画像51には、オブジェクト10の全体(全身)が収まっている。
例えば、カメラパラメータインデックス「2」に基づいてカメラパラメータをセットすると、「Intimate Zone」でのレンダリングを行うことができ、図8のBに示されるような画像52が得られる。この場合、カメラ位置がオブジェクト10から比較的近いので、画像52には、オブジェクト10の一部(上半身)のみが収まっている。
このようにインデックスで指定されるシチュエーションの画像が得られる。
例えば、符号化側において、シーケンス作成者(ストリーム作成者)が、符号化の際の品質確認により、十分な品質(主観的画質)の画像が得られるシチュエーションを選択し、そのシチュエーションを示すカメラパラメータインデックスを設定し、カメラに関する情報としてビットストリームに含めて復号側に伝送する。このようにすることにより、復号側において、シーケンス利用者(ストリーム利用者)が、そのカメラパラメータインデックスを用いて、容易に、十分な品質(主観的画質)の画像が得られるシチュエーションによるレンダリングを行うことができる。
例えば、シーケンス作成者は、このカメラパラメータインデックスを用いることにより、推奨するシチュエーションや、品質が許容されるシチュエーションを、より容易に復号側に通知することができる。換言するに、シーケンス利用者は、シーケンス作成者が指定するそれらのシチュエーションを、より容易に把握することができる。
つまり、このカメラパラメータインデックスを符号化側から復号側に伝送することにより、シーケンス作成者が、適切なシチュエーション(カメラの位置や向き等)を指定することができ、シーケンス利用者は、その適切なシチュエーション(品質が保証されているシチュエーション)をより容易に把握することができる。したがって、より容易により適切なレンダリングを行うことができる。
なお、カメラパラメータインデックスを用いることにより、複数のカメラパラメータを指定することができるので、各カメラパラメータを個別に指定する情報を伝送する場合よりも、符号化効率の低減を抑制することができる。また、シーケンス作成者は、このカメラパラメータインデックスにより指定されるシチュエーションで品質確認を行えば良いので、各カメラパラメータの値をどのようにするかの検討が不要になる等、より容易に品質確認を行うことができる。また、品質確認において、このカメラパラメータインデックスにより指定されるシチュエーションを適用することにより、シーケンスによらず、シチュエーションを共通化することができる。つまり、複数のシーケンスに対して同一条件での品質評価を行うことができる。
なお、符号化側から復号側に伝送するカメラパラメータインデックスの数は任意であり、単数であってもよいし、複数であってもよい。
<カメラパラメータカテゴリインデックス>
また、カメラに関する情報は、例えば、図2の表21の上から2番目の行(項目名の行を除く)のように、レンダリング用のカメラの目的を識別するインデックスであるカメラパラメータカテゴリインデックス(Camera Parameter Category Index)を含むようにしてもよい。つまり、カメラパラメータカテゴリインデックスは、その値によって、設定されたカメラパラメータが実現するカメラのシチュエーションの目的を指定する。
このカメラパラメータカテゴリインデックスが指定するカメラの目的は任意である。つまり、カメラパラメータカテゴリインデックスがカメラのどのような目的を指定するようにしてもよい。図9にカメラパラメータカテゴリインデックスの例を示す。
図9の表61の例の場合、インデックス「0」は、カメラの目的が、エンコード時の品質確認であることを示す。つまり、そのカメラのシチュエーションは、符号化の際の品質確認において利用されたシチュエーションであることが示される。換言するに、そのカメラのシチュエーションは、品質が確認されたシチュエーション(品質が保証されたシチュエーション)である。
また、インデックス「1」は、カメラの目的が、推奨アングルであることを示す。つまり、そのカメラのシチュエーションは、シーケンス作成者(符号化側)により推奨されるシチュエーション(すなわちアングル)であることが示される。例えば、最初のフレーム(1st Frame)に対してこのような値がセットされる。
さらに、インデックス「2」は、カメラの目的が、推奨カメラパス(推奨するカメラの移動軌跡)であることを示す。つまり、設定されたカメラの動きが、シーケンス作成者(符号化側)により推奨されるカメラの移動軌跡であることが示される。
このようなカメラの目的とカメラパラメータカテゴリインデックスとの対応関係が例えば規格等により予め規定されており、符号化側および復号側においてその関係が予め把握されている。したがって、符号化側においては、カメラパラメータカテゴリインデックス(Camera Parameter Category Index)を指定するだけで、容易に、上述のようなカメラの目的を指定することができる。また、復号側においては、そのカメラパラメータカテゴリインデックスに基づいて、容易に、上述のようなカメラの目的を把握することができる。
なお、カメラパラメータカテゴリインデックスにより指定されるカメラの目的は任意であり、上述の例に限定されない。また、予め規定されるカメラパラメータカテゴリインデックスの数は任意であり、上述の例に限定されず、2以下であってもよいし、4以上であってもよい。さらに、カメラパラメータカテゴリインデックスの値は任意であり、上述の例(0乃至2)に限定されない。
例えば、レンダリングの際に、このようなカメラパラメータカテゴリインデックスに基づいて、設定されたカメラの目的を容易に把握することができる。したがって、そのカメラパラメータをレンダリングに適用するか否かを、より容易かつ適切に判断することができる。
例えば、品質が保証されたカメラでレンダリングを行う場合、カメラパラメータカテゴリインデックスが「0」のカメラパラメータを適用すればよい。また、例えば、シーケンス作成者が推奨するアングルでレンダリングを行う場合、カメラパラメータカテゴリインデックスが「1」のカメラパラメータを適用すればよい。さらに、例えば、シーケンス作成者が推奨するカメラの移動軌跡でレンダリングを行う場合、カメラパラメータカテゴリインデックスが「2」のカメラパラメータを適用すればよい。
このようにすることにより、復号側において、シーケンス利用者(ストリーム利用者)は、容易に、カメラの目的を確認したうえでそのカメラパラメータを利用することができる。したがって、より容易により適切なレンダリングを行うことができる。
なお、符号化側において、シーケンス作成者(ストリーム作成者)は、このカメラパラメータカテゴリインデックスを用いることにより、カメラの目的を復号側により容易に通知することができる。
なお、符号化側から復号側に伝送するカメラパラメータカテゴリインデックスの数は任意であり、単数であってもよいし、複数であってもよい。
<変換レート>
また、カメラに関する情報は、例えば、図2の表21の上から3番目の行(項目名の行を除く)のように、3Dデータ(例えばポイントクラウド)がレンダリングされた2次元画像におけるスケールと現実世界のスケールとの変換レート(frame to world scale)を含むようにしてもよい。
一般的に、3Dデータやレンダリング後の画像におけるスケール(縮尺)は、現実世界におけるスケール(縮尺)と異なるようにすることが可能である。したがって、それらのスケール間の変換レートを設定し、利用することにより、例えば、現実世界のスケール(Real scale)を用いたカメラパラメータの設定が可能になる。
例えば、符号化側において、カメラパラメータを現実世界のスケールで設定し、上述の変換レートを設定し、それらをカメラに関する情報として伝送する。このようにすることにより、復号側において、現実世界のスケールで設定されたカメラパラメータを、その変換レートを用いて、より容易に、レンダリング後の画像におけるスケールに変換することができる。したがって、復号側においては、現実世界のスケールで設定されたカメラパラメータをより容易に適用することができる。また、符号化側においては、レンダリング後の画像におけるスケールを考慮する必要が無く、カメラパラメータの設定をより容易に行うことができる。
なお、符号化側から復号側に伝送する変換レートの数は任意であり、単数であってもよいし、複数であってもよい。例えば、互いに異なる複数のレートを伝送することができるようにしてもよい。
<バウンディングボックス>
また、カメラに関する情報は、例えば、図2の表21の上から4番目の行(項目名の行を除く)のように、バウンディングボックス(Bounding box)を基準として設定されるカメラパラメータを含むようにしてもよい。
バウンディングボックス(Bounding box)は、符号化対象の位置情報を正規化するための情報であり、符号化対象の3Dデータのオブジェクトを取り囲むように形成される領域である。このバウンディングボックスの形状は任意である。例えば、直方体形状であってもよい。
カメラの位置や方向等を示すカメラパラメータを設定する場合、そのカメラパラメータの基準となる位置を設定する必要がある。例えば、カメラの被写体となるオブジェクトを基準とすることが考えられる。しかしながら、オブジェクトは移動する場合もあり、そのようなオブジェクトを基準とすることが困難であることもあり得る。そこで、バウンディングボックスをカメラパラメータの基準とするようにする。
ところで、バウンディングボックスの設定方法はフレキシブルであり、例えば、動くオブジェクトに対して、各フレーム(所定の時間毎)におけるオブジェクトを取り囲むように設定することもできるし、全ての時刻におけるオブジェクトを取り囲むように設定することもできる。
そこで、例えば、図10に示されるように、動くオブジェクト10の先頭フレームにおける位置を取り囲むように設定したバウンディングボックス71を基準としてカメラパラメータ(カメラの位置座標32やベクトル34等)を設定するようにしてもよい。
また、例えば、図11に示されるように、シーケンス全体または所定の期間内におけるオブジェクト10の全位置(オブジェクト10の移動範囲)を取り囲むように設定したバウンディングボックス72を基準としてカメラパラメータ(カメラの位置座標32やベクトル34等)を設定するようにしてもよい。図11の例の場合、オブジェクト10は、点線矢印81のように、オブジェクト10−1の位置からオブジェクト10−2の位置に移動し、さらに、点線矢印82のように、オブジェクト10−2の位置からオブジェクト10−3の位置に移動している。バウンディングボックス72は、これらの全ての位置のオブジェクトを取り囲むように設定されている。
以上のようにバウンディングボックスを基準としてカメラパラメータを設定することにより、動くオブジェクト10に対して、その動きによらず、より容易にカメラパラメータを設定することができる。
なお、カメラパラメータの基準位置は、バウンディングボックスに対して任意の位置であるようにしてもよい。例えば、バウンディングボックス内の所定位置(例えば中心等)をカメラパラメータの基準位置としてもよいし、バウンディングボックスの内外の境界上の所定位置をカメラパラメータの基準位置としてもよいし、バウンディングボックス外の所定位置をカメラパラメータの基準位置としてもよい。
例えば、バウンディングボックス内における所定の時刻のオブジェクト10の位置をカメラパラメータの基準位置としてもよい。また、例えば、バウンディングボックス内における動くオブジェクト10の全時刻の位置の重心をカメラパラメータの基準位置としてもよい。
なお、バウンディングボックスに関する情報は、具体的には任意であり、バウンディングボックスに関するものであればどのような情報を含むようにしてもよい。例えば、バウンディングボックスの位置、大きさ、形状、対象時刻範囲等の情報を含むようにしてもよい。
このようなバウンディングボックスに関する情報を、符号化側から復号側に伝送することにより、復号側においても、より容易に、そのバウンディングボックスを基準として設定されるカメラパラメータについて、符号化側と同様の解釈をすることができる。
<カメラパラメータ>
また、カメラに関する情報は、例えば、図2の表21の上から5番目の行(項目名の行を除く)のように、カメラパラメータ(Camera Parameter)を含むようにしてもよい。<カメラパラメータインデックス>において上述したようにカメラパラメータは、3Dデータのレンダリング用のカメラに関するパラメータであり、具体的には、どのようなパラメータであってもよい。例えば、カメラの位置座標(camera_pos)32、カメラの注視点座標(center_pos)33、ベクトル34、カメラの上方向を示すベクトル35、カメラの投影方法、カメラの画角を示すパラメータ等であってもよいし、これら以外のパラメータであってもよい。
つまり、インデックスを用いずに、直接的に、カメラパラメータを設定するようにしてもよい。また、上述したカメラパラメータインデックスと併用し、カメラパラメータインデックスに応じて設定されるカメラパラメータの一部の値の更新に用いるようにしてもよい。さらに、カメラパラメータインデックスでは設定されないその他のカメラパラメータを追加的に設定するようにしてもよい。なお、設定可能なカメラパラメータの数は任意であり、単数であってもよいし、複数であってもよい。
以上のようにカメラパラメータを直接的に設定可能とすることにより、インデックスを用いる場合に比べて、カメラパラメータの設定の自由度を向上させることができる。また、このカメラパラメータを符号化側から復号側に伝送することにより、復号側において、より自由に設定されたカメラパラメータをレンダリングに適用することができる。したがって、より容易により適切なレンダリングを行うことができる。
<カメラパス>
また、カメラに関する情報は、例えば、図2の表21の上から6番目の行(項目名の行を除く)のように、レンダリング用のカメラの移動軌跡に関する情報を含むようにしてもよい。例えば、レンダリング用のカメラの移動軌跡に関する情報として、そのレンダリング用のカメラの移動軌跡を示すカメラ起動軌跡パラメータ(Camera Path)を含むようにしてもよい。
カメラ移動軌跡パラメータ(Camera Path)は、レンダリング用のカメラを動かしてその位置や向き等を変える場合に、その移動の軌跡を示すパラメータである。このような情報を符号化側から復号側に伝送することにより、例えば、シーケンス作成者がお勧めのカメラワークを復号側に提供することができる。また、復号側においては、このように伝送された情報を用いて、そのお勧めのカメラワークを再現するようにレンダリングした画像をより容易に生成することができる。なお、この軌跡が示すカメラの移動は、連続的な移動であってもよいし、離散的な移動であってもよい。
<オブジェクトパス>
また、カメラに関する情報は、例えば、図2の表21の上から7番目の行(項目名の行を除く)のように、そのカメラの被写体となるオブジェクトの移動軌跡に関する情報を含むようにしてもよい。例えば、オブジェクトの移動軌跡に関する情報として、そのオブジェクトの移動軌跡を示すオブジェクト起動軌跡パラメータ(Object Path)を含むようにしてもよい。
<バウンディングボックス>において上述したように、3Dデータのオブジェクトは、移動したり向きを変えたり変形したり拡大したり縮小したり、様々な運動や変形を行うことができる。オブジェクト移動軌跡パラメータ(Object Path)は、そのようなオブジェクトの運動や変形の軌跡を示すパラメータである。このような情報を符号化側から復号側に伝送することにより、例えば、復号側においては、オブジェクトの運動や変形をより容易に把握することができる。したがって、例えば、より容易に、レンダリング用のカメラのより適切なカメラワーク(オブジェクトの運動や変形により適したカメラワーク)を設定することができる。なお、この軌跡が示すオブジェクトの移動は、連続的な移動であってもよいし、離散的な移動であってもよい。
<メタデータ>
上述の3Dデータのレンダリング用のカメラに関する情報は、例えば、メタデータとして、3Dデータを投影した2次元平面画像の符号化データを含むビットストリームに付加するようにしてもよい。
その場合、例えば、図12のAに示されるように、3Dデータを投影した2次元平面画像をフレーム画像とする動画像の先頭フレームのメタデータとして(例えば、ピクチャパラメータセットとして)、ビットストリームに付加するようにしてもよい。例えば、図12のAにおいて、3Dデータのレンダリング用のカメラに関する情報は、動画像の先頭フレーム(frame#0)のメタデータ91(ピクチャパラメータセット)として、ビットストリームに付加される。
また、例えば、図12のBに示されるように、3Dデータを投影した2次元平面画像をフレーム画像とする動画像の任意のフレームにおいて、メタデータ91が更新されるようにしてもよい。例えば、図12のBにおいて、3Dデータのレンダリング用のカメラに関する情報は、動画像の先頭フレーム(frame#0)のメタデータ91−1と、5番目のフレーム(frame#4)のメタデータ91−2として、ビットストリームに付加される。
<2.第1の実施の形態>
<符号化装置>
次に、以上のようなカメラに関する情報の伝送を実現する構成について説明する。図13は、本技術を適用した画像処理装置の一態様である符号化装置の構成の一例を示すブロック図である。図13に示される符号化装置100は、ポイントクラウドのような3Dデータを2次元平面に投影して2次元画像用の符号化方法により符号化を行う装置(ビデオベースドアプローチを適用した符号化装置)である。
なお、図13においては、処理部やデータの流れ等の主なものを示しており、図13に示されるものが全てとは限らない。つまり、符号化装置100において、図13においてブロックとして示されていない処理部が存在したり、図13において矢印等として示されていない処理やデータの流れが存在したりしてもよい。これは、符号化装置100内の処理部等を説明する他の図においても同様である。
図13に示されるように符号化装置100は、パッチ分解部111、パッキング部112、補助パッチ情報圧縮部113、ビデオ符号化部114、ビデオ符号化部115、OMap符号化部116、入力部121、パラメータ記憶部122、メタデータ生成部123、およびマルチプレクサ131を有する。
パッチ分解部111は、3Dデータの分解に関する処理を行う。例えば、パッチ分解部111は、符号化装置100に入力される、3次元構造を表す3Dデータ(例えばポイントクラウド(Point Cloud))を取得する。また、パッチ分解部111は、取得したそのポイントクラウドを複数のセグメンテーションに分解し、そのセグメンテーション毎にポイントクラウドを2次元平面に投影し、位置情報のパッチや属性情報のパッチを生成する。パッチ分解部111は、生成した各パッチに関する情報をパッキング部112に供給する。また、パッチ分解部111は、その分解に関する情報である補助パッチ情報を、補助パッチ情報圧縮部113に供給する。
パッキング部112は、データのパッキングに関する処理を行う。例えば、パッキング部112は、パッチ分解部111からポイントの位置を示す位置情報(Geometry)のパッチに関する情報や、その位置情報に付加される色情報等の属性情報(Texture)のパッチに関する情報を取得する。
また、パッキング部112は、取得した各パッチを2次元画像に配置してビデオフレームとしてパッキングする。例えば、パッキング部112は、位置情報のパッチを2次元画像に配置して、位置情報のビデオフレーム(ジオメトリビデオフレームとも称する)としてパッキングする。また、例えば、パッキング部112は、属性情報のパッチを2次元画像に配置して、属性情報のビデオフレーム(カラービデオフレームとも称する)としてパッキングする。
また、パッキング部112は、これらのビデオフレームに対応するオキュパンシーマップを生成する。さらに、パッキング部112は、カラービデオフレームに対してDilation処理を行う。
パッキング部112は、このように生成したジオメトリビデオフレームをビデオ符号化部114に供給する。また、パッキング部112は、このように生成したカラービデオフレオームをビデオ符号化部115に供給する。さらに、パッキング部112は、このように生成したオキュパンシーマップをOMap符号化部116に供給する。また、パッキング部112は、このようなパッキングに関する制御情報をマルチプレクサ131に供給する。
補助パッチ情報圧縮部113は、補助パッチ情報の圧縮に関する処理を行う。例えば、補助パッチ情報圧縮部113は、パッチ分解部111から供給されるデータを取得する。補助パッチ情報圧縮部113は、取得したデータに含まれる補助パッチ情報を符号化(圧縮)する。補助パッチ情報圧縮部113は、得られた補助パッチ情報の符号化データをマルチプレクサ131に供給する。
ビデオ符号化部114は、位置情報(Geometry)のビデオフレームの符号化に関する処理を行う。例えば、ビデオ符号化部114は、パッキング部112から供給されるジオメトリビデオフレームを取得する。また、ビデオ符号化部114は、その取得したジオメトリビデオフレームを、例えばAVCやHEVC等の任意の2次元画像用の符号化方法により符号化する。ビデオ符号化部114は、その符号化により得られた符号化データ(ジオメトリビデオフレームの符号化データ)をマルチプレクサ131に供給する。
ビデオ符号化部115は、属性情報(Texture)のビデオフレームの符号化に関する処理を行う。例えば、ビデオ符号化部115は、パッキング部112から供給されるカラービデオフレームを取得する。また、ビデオ符号化部115は、その取得したカラービデオフレームを、例えばAVCやHEVC等の任意の2次元画像用の符号化方法により符号化する。ビデオ符号化部115は、その符号化により得られた符号化データ(カラービデオフレームの符号化データ)をマルチプレクサ131に供給する。
OMap符号化部116は、オキュパンシーマップの符号化に関する処理を行う。例えば、OMap符号化部116は、パッキング部112から供給されるオキュパンシーマップを取得する。また、OMap符号化部116は、その取得したオキュパンシーマップを、例えば算術符号化等の任意の符号化方法により符号化する。OMap符号化部116は、その符号化により得られた符号化データ(オキュパンシーマップの符号化データ)をマルチプレクサ131に供給する。
入力部121は、任意の入力デバイスを有し、符号化装置100の外部からの入力の受け付けに関する処理を行う。例えば、入力部121は、ユーザ(ストリーム作成者等)による、3Dデータのレンダリング用のカメラに関するカメラパラメータの入力操作を受け付ける。例えば、入力部121は、<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報を受け付ける。入力部121は、その受け付けたカメラパラメータを、3Dデータのレンダリング用のカメラに関する情報として、パラメータ記憶部122に供給し、記憶させる。
パラメータ記憶部122は、例えばハードディスクや半導体メモリ等の任意の記憶媒体を有し、パラメータ(3Dデータのレンダリング用のカメラに関する情報)の記憶に関する処理を行う。例えば、パラメータ記憶部122は、入力部121から供給されるパラメータを取得し、それを記憶媒体に記憶する。
また、例えば、パラメータ記憶部122は、所定のタイミングにおいて、記憶しているパラメータを、メタデータ生成部123に供給する。さらに、例えば、パラメータ記憶部122は、メタデータ生成部123から要求されたパラメータを、その記憶媒体より読み出し、メタデータ生成部123に供給する。
メタデータ生成部123は、3Dデータをレンダリングする際に用いるメタデータの生成に関する処理を行う。例えば、メタデータ生成部123は、パラメータ記憶部122に対してパラメータを要求し、それを取得する。また、例えば、メタデータ生成部123は、パラメータ記憶部122から供給されるパラメータを取得する。さらに、例えば、メタデータ生成部123は、3Dデータをレンダリングする際に用いるメタデータとして、その取得したパラメータを含むメタデータを生成し、それをマルチプレクサ131に供給する。つまり、メタデータ生成部123は、<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報(3Dデータのレンダリング用のカメラに関する情報)を含むメタデータを生成する。
マルチプレクサ131は、ビットストリームの生成(情報の多重化)に関する処理を行う。例えば、マルチプレクサ131は、補助パッチ情報圧縮部113から供給される補助パッチ情報の符号化データを取得する。また、マルチプレクサ131は、パッキング部112から供給されるパッキングに関する制御情報を取得する。さらに、マルチプレクサ131は、ビデオ符号化部114から供給されるジオメトリビデオフレームの符号化データを取得する。また、マルチプレクサ131は、ビデオ符号化部115から供給されるカラービデオフレームの符号化データを取得する。さらに、マルチプレクサ131は、OMap符号化部116から供給されるオキュパンシーマップの符号化データを取得する。また、マルチプレクサ131は、メタデータ生成部123から供給されるメタデータを取得する。
マルチプレクサ131は、取得したそれらの情報を多重化して、ビットストリーム(Bitstream)を生成する。つまり、マルチプレクサ131は、3Dデータを投影した2次元平面画像の符号化データと、その符号化データに対応するメタデータとを含むビットストリームを生成する。
上述したように、このメタデータは、3Dデータをレンダリングする際に用いるメタデータであり、<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報(3Dデータのレンダリング用のカメラに関する情報)を含む。したがって、符号化装置100は、<1.レンダリング用カメラパラメータのシグナル>において上述したような効果を得ることができる。したがって、符号化装置100は、復号側においてより容易により適切なレンダリングを行うことができるようにすることができる。
<符号化処理の流れ>
次に、符号化装置100により実行される符号化処理の流れの例を、図14のフローチャートを参照して説明する。
符号化処理が開始されると、符号化装置100の入力部121は、ステップS101において、パラメータ(3Dデータのレンダリング用のカメラに関する情報)の入力を受け付ける。
ステップS102において、パラメータ記憶部122は、ステップS121において受け付けたパラメータを記憶する。
ステップS103において、メタデータ生成部123は、処理対象フレーム(カレントフレームとも称する)のメタデータを生成するか否かを判定する。メタデータを生成すると判定された場合、処理はステップS104に進む。
ステップS104において、メタデータ生成部123は、3Dデータをレンダリングする際に用いるメタデータを生成する。具体的には、メタデータ生成部123は、ステップS102において記憶されたパラメータ(すなわち、3Dデータのレンダリング用のカメラに関する情報)を含むメタデータを生成する。つまり、メタデータ生成部123は、<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報を含むメタデータを生成する。
ステップS104の処理が終了すると処理はステップS105に進む。また、ステップS103において、処理対象フレームに対応するメタデータを生成しないと判定された場合、ステップS104の処理がスキップ(省略)され、処理はステップS105に進む。
ステップS105において、パッチ分解部111乃至OMap符号化部116、並びに、マルチプレクサ131は、ポイントクラウド符号化処理を実行し、ポイントクラウドを符号化して、その符号化データとステップS104の処理において生成されたメタデータとを含む、ビットストリームを生成する。
ステップS106において、符号化装置100は、全てのフレームを処理したか否かを判定する。未処理のフレームが存在すると判定された場合、処理はステップS103に戻り、新たな処理対象フレームについて、それ以降の処理を繰り返す。このようにステップS103乃至ステップS106の処理を繰り返し、ステップS106において全てのフレームを処理したと判定された場合、符号化処理が終了する。
<ポイントクラウド符号化処理の流れ>
次に、図14のステップS105において実行されるポイントクラウド符号化処理の流れの例を、図15のフローチャートを参照して説明する。
ポイントクラウド符号化処理が開始されると、符号化装置100のパッチ分解部111は、ステップS121において、入力されたポイントクラウドを2次元平面に投影し、パッチに分解する。また、パッチ分解部111は、その分解についての補助パッチ情報を生成する。
ステップS122において、補助パッチ情報圧縮部113は、ステップS121において生成された補助パッチ情報を圧縮(符号化)する。
ステップS123において、パッキング部112は、ステップS121において生成された位置情報や属性情報の各パッチを2次元画像に配置してビデオフレームとしてパッキングする。また、パッキング部112は、オキュパンシーマップを生成する。さらに、パッキング部112は、カラービデオフレームに対してDilation処理を行う。また、パッキング部112は、このようなパッキングに関する制御情報を生成する。
ステップS124において、ビデオ符号化部114は、ステップS123において生成されたジオメトリビデオフレームを、2次元画像用の符号化方法により符号化する。
ステップS125において、ビデオ符号化部115は、ステップS123において生成されたカラービデオフレームを、2次元画像用の符号化方法により符号化する。
ステップS126において、OMap符号化部116は、ステップS123において生成されたオキュパンシーマップを、所定の符号化方法により符号化する。
ステップS127において、マルチプレクサ131は、メタデータが存在するか否かを判定する。図14のステップS104においてメタデータが生成されており、存在すると判定された場合、処理はステップS128に進む。
ステップS128において、マルチプレクサ131は、ステップS124乃至ステップS126のそれぞれにおいて生成された符号化データと、図14のステップS104において生成されたメタデータとを多重化し、それらを含むビットストリームを生成する。つまり、メタデータ生成部123は、<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報をメタデータとして含むビットストリームを生成する。ステップS128の処理が終了すると、処理はステップS130に進む。
また、ステップS127において、図14のステップS104の処理がスキップ(省略)され、メタデータが存在しないと判定された場合、処理はステップS129に進む。
ステップS129において、マルチプレクサ131は、ステップS124乃至ステップS126のそれぞれにおいて生成された符号化データを多重化し、それらを含むビットストリームを生成する。ステップS129の処理が終了すると、処理はステップS130に進む。
ステップS130において、マルチプレクサ131は、ステップS128またはステップS129において生成したビットストリームを符号化装置100の外部に出力する。
ステップS130の処理が終了すると、ポイントクラウド符号化処理が終了し、処理は図14に戻る。
以上のように各処理を実行することにより、符号化装置100は、3Dデータのレンダリング用のカメラに関する情報をメタデータとして含む、3Dデータのビットストリームを生成することができる。したがって、符号化装置100は、<1.レンダリング用カメラパラメータのシグナル>において上述したような効果を得ることができる。したがって、符号化装置100は、復号側において、より容易により適切なレンダリングを行うことができるようにすることができる。
<3.第2の実施の形態>
<再生装置>
図16は、本技術を適用した画像処理装置の一態様である再生装置の構成の一例を示すブロック図である。図16に示される再生装置200は、ポイントクラウドのような3Dデータが2次元平面に投影されて符号化された符号化データを2次元画像用の復号方法により復号し、3Dデータを再構築し、その3Dデータを再生する装置(ビデオベースドアプローチを適用した再生装置)である。例えば、再生装置200は、符号化装置100(図13)が3Dデータを符号化して生成したビットストリームを復号し、復号データを用いてその3Dデータを再構築し、再構築した3Dデータをレンダリングして画像を生成し、その画像を表示したり、記憶したりする。
なお、図16においては、処理部やデータの流れ等の主なものを示しており、図16に示されるものが全てとは限らない。つまり、再生装置200において、図16においてブロックとして示されていない処理部が存在したり、図16において矢印等として示されていない処理やデータの流れが存在したりしてもよい。これは、再生装置200内の処理部等を説明する他の図においても同様である。
図16に示されるように再生装置200は、復号部211、カメラ制御部212、レンダリング部213、表示部214、および記憶部215を有する。
復号部211は、ビットストリームの復号に関する処理を行う。例えば、復号部211は、再生装置200の外部から入力されるビットストリームを取得する。このビットストリームは、例えば、符号化装置100(図13)により生成されたビットストリームであり、3Dデータの符号化データを含み、さらに、その3Dデータのレンダリング用のカメラに関する情報をメタデータとして含む。復号部211は、ビデオベースドアプローチを適用した復号部であり、このようなビットストリームを2次元画像用の復号方法により復号し、3Dデータを再構築し、3Dデータをレンダリングする際に用いるメタデータを抽出する。復号部211は、抽出したメタデータをカメラ制御部212に供給する。また、復号部211は、再構築した3Dデータ(例えばポイントクラウド)をレンダリング部213に供給する。
カメラ制御部212は、レンダリング用のカメラの制御に関する処理を行う。例えば、カメラ制御部212は、復号部211から供給されるメタデータに含まれるカメラに関する情報に基づいて、レンダリング用のカメラを制御する。例えば、カメラ制御部212は、そのカメラに関する情報に基づいてレンダリング用カメラのカメラパラメータを制御することにより、そのカメラの位置や向き等を制御する。カメラ制御部212は、その制御情報をレンダリング部213に供給する。
レンダリング部213は、カメラ制御部212により制御されるカメラを用いて、復号部211から供給される3Dデータ(ポイントクラウド)のレンダリングを行う。つまり、レンダリング部213は、カメラ制御部212によりメタデータ(<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報)に基づいて設定されたカメラパラメータを用いてレンダリングを行い、2D画像を生成する。レンダリング部213は、その生成された2D画像を表示部214および記憶部215に供給する。
表示部214は、例えば液晶ディスプレイ等のような任意の表示デバイスを有し、表示に関する処理を行う。例えば、表示部214は、レンダリング部213から供給される2D画像を取得する。そして、表示部214は、その2D画像を表示デバイスに表示させる。つまり、表示部214は、2D画像を出力する。
記憶部215は、例えばハードディスクや半導体メモリ等のような任意の記憶媒体を有し、記憶に関する処理を行う。例えば、記憶部215は、レンダリング部213から供給される2D画像を取得する。そして、記憶部215は、その2D画像を記憶媒体に記憶させる。つまり、記憶部215は、2D画像を出力する。
したがって、再生装置200は、<1.レンダリング用カメラパラメータのシグナル>において上述したような効果を得ることができる。つまり、再生装置200は、より容易により適切なレンダリングを行うことができる。
<復号部>
図17は、図16の復号部211の主な構成例を示すブロック図である。図17に示されるように、復号部211は、デマルチプレクサ231、補助パッチ情報復号部232、ビデオ復号部233、ビデオ復号部234、OMap復号部235、アンパッキング部236、および3D再構築部237を有する。
デマルチプレクサ231は、データの逆多重化に関する処理を行う。例えば、デマルチプレクサ231は、復号部211に入力されるビットストリームを取得する。このビットストリームは、例えば、符号化装置100より供給される。デマルチプレクサ231は、このビットストリームを逆多重化し、補助パッチ情報の符号化データを抽出し、それを補助パッチ情報復号部232に供給する。また、デマルチプレクサ231は、逆多重化により、ビットストリームから、ジオメトリビデオフレームの符号化データを抽出し、それをビデオ復号部233に供給する。さらに、デマルチプレクサ231は、逆多重化により、ビットストリームから、カラービデオフレームの符号化データを抽出し、それをビデオ復号部234に供給する。また、デマルチプレクサ231は、逆多重化により、ビットストリームから、オキュパンシーマップの符号化データを抽出し、それをOMap復号部235に供給する。さらに、デマルチプレクサ231は、逆多重化により、ビットストリームから、パッキングに関する制御情報を抽出し、それをアンパッキング部236に供給する(図示せず)。
また、デマルチプレクサ231は、ビットストリームから、そのビットストリームに含まれるメタデータを抽出する。このメタデータは、<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報(3Dデータのレンダリング用のカメラに関する情報)を含む。デマルチプレクサ231は、そのメタデータをカメラ制御部212(図16)に供給する。
補助パッチ情報復号部232は、補助パッチ情報の符号化データの復号に関する処理を行う。例えば、補助パッチ情報復号部232は、デマルチプレクサ231から供給される3補助パッチ情報の符号化データを取得する。また、補助パッチ情報復号部232は、その取得したデータに含まれる補助パッチ情報の符号化データを復号(伸長)する。補助パッチ情報復号部232は、復号して得られた補助パッチ情報を3D再構築部237に供給する。
ビデオ復号部233は、ジオメトリビデオフレームの符号化データの復号に関する処理を行う。例えば、ビデオ復号部233は、デマルチプレクサ231から供給されるジオメトリビデオフレームの符号化データを取得する。ビデオ復号部233は、そのジオメトリビデオフレームの符号化データを、例えばAVCやHEVC等の任意の2次元画像用の復号方法により復号する。ビデオ復号部233は、その復号して得られたジオメトリビデオフレームを、アンパッキング部236に供給する。
ビデオ復号部234は、カラービデオフレームの符号化データの復号に関する処理を行う。例えば、ビデオ復号部234は、デマルチプレクサ231から供給されるカラービデオフレームの符号化データを取得する。ビデオ復号部234は、そのカラービデオフレームの符号化データを、例えばAVCやHEVC等の任意の2次元画像用の復号方法により復号する。ビデオ復号部234は、その復号して得られたカラービデオフレームを、アンパッキング部236に供給する。
OMap復号部235は、オキュパンシーマップの符号化データの復号に関する処理を行う。例えば、OMap復号部235は、デマルチプレクサ231から供給されるオキュパンシーマップの符号化データを取得する。OMap復号部235は、そのオキュパンシーマップの符号化データを、その符号化方式に対応する任意の復号方法により復号する。OMap復号部235は、その復号して得られたオキュパンシーマップを、アンパッキング部236に供給する。
アンパッキング部236は、アンパッキングに関する処理を行う。例えば、アンパッキング部236は、ビデオ復号部233からジオメトリビデオフレームを取得し、ビデオ復号部234からカラービデオフレームを取得し、OMap復号部235からオキュパンシーマップを取得する。また、アンパッキング部236は、パッキングに関する制御情報に基づいて、ジオメトリビデオフレームやカラービデオフレームをアンパッキングする。アンパッキング部236は、アンパッキングして得られた位置情報(Geometry)のデータ(ジオメトリパッチ等)や属性情報(Texture)のデータ(テクスチャパッチ等)、並びにオキュパンシーマップ等を、3D再構築部237に供給する。
3D再構築部237は、ポイントクラウドの再構築に関する処理を行う。例えば、3D再構築部237は、補助パッチ情報復号部232から供給される補助パッチ情報、並びに、アンパッキング部236から供給される位置情報(Geometry)のデータ(ジオメトリパッチ等)、属性情報(Texture)のデータ(テクスチャパッチ等)、およびオキュパンシーマップ等に基づいて、ポイントクラウドを再構築する。
3D再構築部237は、再構築したポイントクラウドを復号部211の外部のレンダリング部213(図16)に供給する。
このような構成とすることにより、復号部211は、<1.レンダリング用カメラパラメータのシグナル>において上述したような効果を得ることができる。つまり、復号部211は、ビットストリームを復号し、符号化側から伝送されたメタデータを抽出することができる。さらに、復号部211は、3Dデータの符号化データを復号し、3Dデータを再構築することができる。
<再生処理の流れ>
次に、この再生装置200により実行される再生処理の流れの例を、図19のフローチャートを参照して説明する。
再生処理が開始されると、カメラ制御部212は、ステップS201において、カメラパラメータを初期化する。
ステップS202において、復号部211は、ポイントクラウド復号処理を実行し、ビットストリームを1フレーム分復号する。
ステップS203において、カメラ制御部212は、処理対象フレームに対応するメタデータが存在するか否かを判定する。つまり、カメラ制御部212は、ステップS202の処理によりメタデータが抽出されたか否かを判定する。メタデータが存在すると判定された場合、処理はステップS204に進む。
ステップS204において、カメラ制御部212は、そのメタデータを解析してカメラパラメータを更新する。ステップS204の処理が終了すると、処理はステップS205に進む。また、ステップS203において、メタデータが存在しないと判定された場合、ステップS204の処理がスキップ(省略)されて、処理はステップS205に進む。
ステップS205において、レンダリング部213は、ステップS202の処理により得られるポイントクラウドを、ステップS204において更新されたカメラパラメータ、または、ステップS204において更新されなかったカメラパラメータを用いてレンダリングし、2D画像を生成する。
ステップS206において、表示部214は、ステップS205において生成された2D画像を表示する。また、ステップS207において、記憶部215は、ステップS205において生成された2D画像を記憶する。
ステップS208において、復号部211は、全てのフレームを処理したか否かを判定する。未処理のフレームが存在すると判定された場合、処理はステップS202に戻り、新たな処理対象フレームについて、それ以降の処理が繰り返される。また、ステップS208において、全てのフレームを処理したと判定された場合、再生処理が終了する。
<ポイントクラウド復号処理の流れ>
次に、図18のステップS202において実行されるポイントクラウド復号処理の流れの例を、図19のフローチャートを参照して説明する。
ポイントクラウド復号処理が開始されると、デマルチプレクサ231は、ステップS221において、ビットストリームを逆多重化する。その際、デマルチプレクサ231は、そのビットストリームに含まれるメタデータ(カメラに関する情報)を抽出する。
ステップS222において、補助パッチ情報復号部232は、ステップS221においてビットストリームから抽出された補助パッチ情報を復号する。
ステップS223において、ビデオ復号部233は、ステップS221においてビットストリームから抽出されたジオメトリビデオフレーム(位置情報のビデオフレーム)の符号化データを復号する。
ステップS224において、ビデオ復号部234は、ステップS221においてビットストリームから抽出されたカラービデオフレーム(属性情報のビデオフレーム)の符号化データを復号する。
ステップS225において、OMap復号部235は、ステップS221においてビットストリームから抽出されたオキュパンシーマップの符号化データを復号する。
ステップS226において、アンパッキング部236は、アンパッキングする。例えば、アンパッキング部236は、ステップS223において符号化データが復号されて得られたジオメトリビデオフレームをアンパッキングし、ジオメトリパッチを生成する。また、アンパッキング部236は、ステップS224において符号化データが復号されて得られたカラービデオフレームをアンパッキングし、テクスチャパッチを生成する。さらに、アンパッキング部236は、ステップS225において符号化データが復号されて得られたオキュパンシーマップをアンパッキングし、ジオメトリパッチやテクスチャパッチに対応するオキュパンシーマップを抽出する。
ステップS227において、3D再構築部237は、ステップS222において得られた補助パッチ情報、並びに、ステップS223乃至ステップS225において得られたジオメトリパッチ、テクスチャパッチ、およびオキュパンシーマップ等に基づいて、ポイントクラウド(各点群モデル)を再構築する。
ステップS227の処理が終了すると復号処理が終了する。
以上のように各処理を実行することにより、再生装置200は、<1.レンダリング用カメラパラメータのシグナル>において上述したような効果を得ることができる。つまり、再生装置200は、より容易により適切なレンダリングを行うことができる。
<4.第3の実施の形態>
<再生装置>
図20は、本技術を適用した画像処理装置の一態様である再生装置の構成の一例を示すブロック図である。図20に示される再生装置300は、再生装置200と同様、ポイントクラウドのような3Dデータが2次元平面に投影されて符号化された符号化データを2次元画像用の復号方法により復号し、3Dデータを再構築し、その3Dデータを再生する装置(ビデオベースドアプローチを適用した再生装置)である。例えば、再生装置300は、符号化装置100(図13)が3Dデータを符号化して生成したビットストリームを復号し、復号データを用いてその3Dデータを再構築し、再構築した3Dデータをレンダリングして画像を生成し、その画像を表示したり、記憶したりする。
ただし、再生装置300は、カメラパラメータの設定を受け付け、符号化側から伝送されるメタデータ(カメラに関する情報)は、設定されたカメラの位置や方向等が適切であるか否かの判定に用いられる。
なお、図20においては、処理部やデータの流れ等の主なものを示しており、図20に示されるものが全てとは限らない。つまり、再生装置300において、図20においてブロックとして示されていない処理部が存在したり、図20において矢印等として示されていない処理やデータの流れが存在したりしてもよい。これは、再生装置300内の処理部等を説明する他の図においても同様である。
図20に示されるように再生装置300は、入力部311、復号部312、カメラ監視部313、カメラ制御部314、レンダリング部315、表示部316、および記憶部317を有する。
入力部311は、任意の入力デバイスを有し、再生装置300の外部からの入力の受け付けに関する処理を行う。例えば、入力部311は、ユーザ(ストリーム利用者等)による、3Dデータのレンダリング用のカメラに関するカメラパラメータの入力操作を受け付ける。例えば、入力部311は、<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報を受け付ける。入力部311は、その受け付けたカメラパラメータを、カメラ制御部314に供給する。
復号部312は、復号部211と同様の処理部であり、ビットストリームの復号に関する処理を行う。例えば、復号部312は、再生装置200の外部から入力されるビットストリームを取得する。このビットストリームは、例えば、符号化装置100(図13)により生成されたビットストリームであり、3Dデータの符号化データを含み、さらに、その3Dデータのレンダリング用のカメラに関する情報をメタデータとして含む。復号部312は、復号部211と同様、ビデオベースドアプローチを適用した復号部であり、このようなビットストリームを2次元画像用の復号方法により復号し、3Dデータを再構築し、メタデータを抽出する。復号部312は、抽出したメタデータをカメラ監視部313に供給する。また、復号部312は、再構築した3Dデータ(例えばポイントクラウド)をレンダリング部315に供給する。なお、復号部312の構成は、復号部211の場合(図17)と同様であるので、その説明を省略する。
カメラ監視部313は、カメラの位置や向きを監視(モニタリング)する。例えば、カメラ監視部313は、復号部312から供給されるメタデータに基づいて、入力部311を介してユーザ等により設定されたカメラパラメータの値が適切であるか否かをモニタリングする。例えば、カメラ監視部313は、ユーザ等により設定されたカメラパラメータの値が、品質確認済みの範囲内であるか否かをモニタリングする。そして、カメラ監視部313は、そのカメラパラメータの値が不適切であると判定された場合、表示部316を制御して、エラー通知を行う。
カメラ制御部314は、レンダリング用のカメラの制御に関する処理を行う。例えば、カメラ制御部314は、入力部311から供給されるカメラパラメータ(カメラに関する情報)に基づいて、レンダリング用のカメラを制御する。例えば、カメラ制御部314は、そのカメラに関する情報に基づいてレンダリング用カメラのカメラパラメータを制御することにより、そのカメラの位置や向き等を制御する。なお、カメラ制御部314は、カメラ監視部313により、値が適切であると判定された場合、その制御情報をレンダリング部315に供給する。
レンダリング部315は、レンダリング部213と同様、カメラ制御部314により制御されるカメラを用いて、復号部312から供給される3Dデータ(ポイントクラウド)のレンダリングを行う。つまり、レンダリング部315は、カメラ制御部314から供給されるカメラパラメータ(<1.レンダリング用カメラパラメータのシグナル>において図2の表21等を参照して説明したような各種情報)を用いてレンダリングを行い、2D画像を生成する。レンダリング部315は、その生成された2D画像を表示部316および記憶部317に供給する。
表示部316は、表示部214と同様、例えば液晶ディスプレイ等のような任意の表示デバイスを有し、表示に関する処理を行う。例えば、表示部316は、レンダリング部315から供給される2D画像を取得する。そして、表示部316は、その2D画像を表示デバイスに表示させる。つまり、表示部316は、2D画像を出力する。また、表示部316は、カメラ監視部313に制御されてエラー通知の画像を表示する。
記憶部317は、例えばハードディスクや半導体メモリ等のような任意の記憶媒体を有し、記憶に関する処理を行う。例えば、記憶部317は、レンダリング部315から供給される2D画像を取得する。そして、記憶部317は、その2D画像を記憶媒体に記憶させる。つまり、記憶部317は、2D画像を出力する。
したがって、再生装置300は、<1.レンダリング用カメラパラメータのシグナル>において上述したような効果を得ることができる。つまり、再生装置300は、より容易により適切なレンダリングを行うことができる。
<再生処理の流れ>
次に、この再生装置300により実行される再生処理の流れの例を、図21のフローチャートを参照して説明する。
再生処理が開始されると、カメラ制御部314は、ステップS301において、カメラパラメータを初期化する。
ステップS302において、入力部311は、カメラ設定が入力されたか否かを判定する。入力されたと判定された場合、処理はステップS303に進む。ステップS303において、カメラ制御部314は、入力されたカメラ設定に基づいてカメラパラメータを仮設定する。そしてステップS303の処理が終了すると処理はステップS304に進む。なお、ステップS302においてカメラ設定が入力されてないと判定された場合、ステップS303の処理はスキップ(省略)され、処理はステップS304に進む。
ステップS304において、復号部312は、ポイントクラウド復号処理を実行し、ビットストリームを1フレーム分復号する。なお、この場合のポイントクラウド復号処理の流れは、図19のフローチャートを参照して説明した場合と同様であるのでその説明は省略する。
ステップS305において、カメラ監視部313は、処理対象フレームに対応するメタデータが存在するか否かを判定する。つまり、カメラ監視部313は、ステップS304の処理によりメタデータが抽出されたか否かを判定する。メタデータが存在すると判定された場合、処理はステップS306に進む。
ステップS306において、カメラ監視部313は、存在が確認されたメタデータに基づいて、カメラ位置を確認する。ステップS306の処理が終了すると、処理はステップS307に進む。また、ステップS305において、メタデータが存在しないと判定された場合、ステップS306の処理がスキップ(省略)されて、処理はステップS307に進む。
ステップS307において、カメラ監視部313は、現在のカメラとオブジェクトとの距離が品質確認済みの範囲内であるか否かを判定する。品質確認済みの範囲内であると判定された場合、処理はステップS308に進む。
ステップS308において、カメラ制御部314は、入力部311において受け付けられた入力に応じてカメラパラメータを更新する。ステップS309において、レンダリング部315は、ステップS308において更新したカメラパラメータに基づいてポイントクラウドをレンダリングし、2D画像を生成する。
ステップS310において、表示部316は、ステップS309において生成された2D画像を表示する。また、ステップS311において、記憶部317は、ステップS309において生成された2D画像を記憶する。
ステップS311の処理が終了すると、処理はステップS313に進む。また、ステップS307において、カメラとオブジェクトとの距離が品質確認済み範囲外であると判定された場合、処理はステップS312に進む。この場合、レンダリング後の2D画像の主観的画質が低減するおそれがあるので、レンダリングが省略される。そしてステップS312において、カメラ監視部313は、その旨をユーザに通知するエラー通知の画像を表示部316に表示させる。ステップS312の処理が終了すると、処理はステップS313に進む。
ステップS313において、カメラ監視部313は、再生処理を終了するか否かを判定する。終了しないと判定された場合、処理はステップS302に戻り、新たな処理対象フレームに対してそれ以降の処理が繰り返される。また、ステップS313において、全てのフレームを処理し、未処理のフレームが存在せず、終了すると判定された場合、再生処理が終了する。
以上のように各処理を実行することにより、再生装置300は、<1.レンダリング用カメラパラメータのシグナル>において上述したような効果を得ることができる。つまり、再生装置300は、より容易により適切なレンダリングを行うことができる。
<5.付記>
<コンピュータ>
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
図22は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
図22に示されるコンピュータ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が各種の処理を実行する上において必要なデータなども適宜記憶される。
コンピュータ(CPU901)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア921に記録して適用することができる。その場合、プログラムは、リムーバブルメディア921をドライブ915に装着することにより、入出力インタフェース910を介して、記憶部913にインストールすることができる。
また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部914で受信し、記憶部913にインストールすることができる。
その他、このプログラムは、ROM902や記憶部913に、あらかじめインストールしておくこともできる。
<本技術の適用対象>
以上においては、ポイントクラウドデータの符号化・復号に本技術を適用する場合について説明したが、本技術は、これらの例に限らず、任意の規格の3Dデータの符号化・復号に対して適用することができる。つまり、上述した本技術と矛盾しない限り、符号化・復号方式等の各種処理、並びに、3Dデータやメタデータ等の各種データの仕様は任意である。また、本技術と矛盾しない限り、上述した一部の処理や仕様を省略してもよい。
本技術は、任意の構成に適用することができる。例えば、本技術は、衛星放送、ケーブル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つのステップとしてまとめて実行することもできる。
また、例えば、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
また、例えば、本技術に関する複数の技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術の一部または全部を、他の実施の形態において説明した本技術の一部または全部と組み合わせて実施することもできる。また、上述した任意の本技術の一部または全部を、上述していない他の技術と併用して実施することもできる。
100 符号化装置, 111 パッチ分解部, 112 パッキング部, 113 補助パッチ情報圧縮部, 114 ビデオ符号化部, 115 ビデオ符号化部, 116 OMap符号化部, 121 入力部, 122 パラメータ記憶部, 123 メタデータ生成部, 131 マルチプレクサ, 200 再生装置, 211 復号部, 212 カメラ制御部, 213 レンダリング部, 214 表示部, 215 記憶部, 231 デマルチプレクサ, 232 補助パッチ情報復号部, 233 ビデオ復号部, 234 ビデオ復号部, 235 OMap復号部, 236 アンパッキング部, 237 3D再構築部, 300 再生装置, 311 入力部, 312 復号部, 313 カメラ監視部, 314 カメラ制御部, 315 レンダリング部, 316 表示部, 317 記憶部

Claims (20)

  1. 3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化して、符号化データを生成する符号化部と、
    前記符号化部により生成された前記符号化データと前記ポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを生成する生成部と
    を備える画像処理装置。
  2. 前記メタデータは、レンダリング用のカメラに対する条件が予め設定されたカメラパラメータを識別するインデックスを含む
    請求項1に記載の画像処理装置。
  3. 前記カメラパラメータは、前記カメラの位置を示すパラメータを含む
    請求項2に記載の画像処理装置。
  4. 前記カメラパラメータは、前記カメラの方向を示すパラメータを含む
    請求項2に記載の画像処理装置。
  5. 前記カメラパラメータは、前記カメラの上方向を示すパラメータを含む
    請求項2に記載の画像処理装置。
  6. 前記カメラパラメータは、前記カメラの投影方法を示すパラメータを含む
    請求項2に記載の画像処理装置。
  7. 前記カメラパラメータは、前記カメラの画角を示すパラメータを含む
    請求項2に記載の画像処理装置。
  8. 前記メタデータは、レンダリング用のカメラの目的を識別するインデックスを含む
    請求項1に記載の画像処理装置。
  9. 前記目的は、符号化時の品質確認を含む
    請求項8に記載の画像処理装置。
  10. 前記目的は、推奨する前記カメラの向きを含む
    請求項8に記載の画像処理装置。
  11. 前記目的は、推奨する前記カメラの移動軌跡を含む
    請求項8に記載の画像処理装置。
  12. 前記メタデータは、前記ポイントクラウドがレンダリングされた画像におけるスケールと現実世界のスケールとの変換レートを含む
    請求項1に記載の画像処理装置。
  13. 前記メタデータは、バウンディングボックスを基準として設定されるカメラパラメータを含む
    請求項1に記載の画像処理装置。
  14. 前記メタデータは、レンダリング用のカメラの移動軌跡を示すカメラ移動軌跡パラメータを含む
    請求項1に記載の画像処理装置。
  15. 前記メタデータは、前記オブジェクトの移動軌跡を示すオブジェクト移動軌跡パラメータを含む
    請求項1に記載の画像処理装置。
  16. 3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化して、符号化データを生成し、
    生成された前記符号化データと前記ポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを生成する
    画像処理方法。
  17. 3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化した符号化データと前記ポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを復号して、前記ポイントクラウドを再構築し、前記メタデータを抽出する復号部と、
    前記復号部により抽出された前記メタデータを用いて、前記復号部により再構築された前記ポイントクラウドをレンダリングするレンダリング部と
    を備える画像処理装置。
  18. 前記メタデータに基づいて、前記ポイントクラウドをレンダリングする際に用いるカメラパラメータを制御する制御部をさらに備え、
    前記レンダリング部は、前記制御部により制御された前記カメラパラメータを用いて前記ポイントクラウドをレンダリングする
    請求項17に記載の画像処理装置。
  19. 外部からの入力に基づいて前記ポイントクラウドをレンダリングする際に用いるカメラパラメータを制御する制御部と、
    前記メタデータに基づいて、前記カメラパラメータが品質確認済みの範囲内であるかをモニタリングするモニタリング部と
    をさらに備え、
    前記レンダリング部は、前記モニタリング部により前記カメラパラメータが品質確認済みの範囲内であると判定された場合、前記制御部により制御された前記カメラパラメータを用いて前記ポイントクラウドをレンダリングする
    請求項17に記載の画像処理装置。
  20. 3次元形状のオブジェクトを点群として表現するポイントクラウドに対する位置と属性情報とが2次元平面上に投影された2次元平面画像を符号化した符号化データと前記ポイントクラウドをレンダリングする際に用いるメタデータとを含むビットストリームを復号して、前記ポイントクラウドを再構築し、前記メタデータを抽出し、
    抽出された前記メタデータを用いて、再構築された前記ポイントクラウドをレンダリングする
    画像処理方法。
JP2018136928A 2018-07-20 2018-07-20 画像処理装置および方法 Pending JP2021182650A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018136928A JP2021182650A (ja) 2018-07-20 2018-07-20 画像処理装置および方法
PCT/JP2019/026791 WO2020017359A1 (ja) 2018-07-20 2019-07-05 画像処理装置および方法
CN201980047072.2A CN112425175A (zh) 2018-07-20 2019-07-05 图像处理装置和方法
US17/250,370 US11356690B2 (en) 2018-07-20 2019-07-05 Image processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018136928A JP2021182650A (ja) 2018-07-20 2018-07-20 画像処理装置および方法

Publications (1)

Publication Number Publication Date
JP2021182650A true JP2021182650A (ja) 2021-11-25

Family

ID=69164401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018136928A Pending JP2021182650A (ja) 2018-07-20 2018-07-20 画像処理装置および方法

Country Status (4)

Country Link
US (1) US11356690B2 (ja)
JP (1) JP2021182650A (ja)
CN (1) CN112425175A (ja)
WO (1) WO2020017359A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019079093A1 (en) * 2017-10-19 2019-04-25 Interdigital Vc Holdings, Inc. METHOD AND DEVICE FOR PREDICTIVE CODING / DECODING OF A POINT CLOUD
JPWO2022210661A1 (ja) * 2021-03-30 2022-10-06
CN117980946A (zh) * 2021-09-28 2024-05-03 富士通株式会社 图像处理程序、图像处理装置以及图像处理方法
CN116188660B (zh) * 2023-04-24 2023-07-11 深圳优立全息科技有限公司 一种基于流式渲染的点云数据处理方法及相关装置
CN118138824A (zh) * 2024-02-22 2024-06-04 中央广播电视总台 一种交互方法、移动终端、播放终端及交互系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1797697B1 (en) * 2004-10-05 2021-01-27 Vectormax Corporation Method and system for broadcasting multimedia data
KR101490689B1 (ko) * 2008-05-27 2015-02-06 삼성전자주식회사 카메라 파라미터를 이용한 스테레오스코픽 영상데이터스트림 생성 방법 및 그 장치와 스테레오스코픽 영상복원 방법 및 그 장치
US20100309987A1 (en) * 2009-06-05 2010-12-09 Apple Inc. Image acquisition and encoding system
US9948902B1 (en) * 2014-03-07 2018-04-17 Alarm.Com Incorporated Video camera and sensor integration
JP6611588B2 (ja) * 2015-12-17 2019-11-27 キヤノン株式会社 データ記録装置、撮像装置、データ記録方法およびプログラム
US9996750B2 (en) * 2016-06-01 2018-06-12 Gopro, Inc. On-camera video capture, classification, and processing
US20180053324A1 (en) 2016-08-19 2018-02-22 Mitsubishi Electric Research Laboratories, Inc. Method for Predictive Coding of Point Cloud Geometries
EP3349182A1 (en) * 2017-01-13 2018-07-18 Thomson Licensing Method, apparatus and stream for immersive video format
JP7200678B2 (ja) * 2017-02-20 2023-01-10 ソニーグループ株式会社 画像処理装置および画像処理方法
US10367877B2 (en) * 2017-03-23 2019-07-30 Purdue Research Foundation System and method for identifying publicly available cameras
US11258999B2 (en) * 2017-05-18 2022-02-22 Samsung Electronics Co., Ltd. Method and device for reducing motion sickness when providing 360-degree video
US10580149B1 (en) * 2017-06-26 2020-03-03 Amazon Technologies, Inc. Camera-level image processing
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10909725B2 (en) 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US10699444B2 (en) 2017-11-22 2020-06-30 Apple Inc Point cloud occupancy map compression
US10789733B2 (en) 2017-11-22 2020-09-29 Apple Inc. Point cloud compression with multi-layer projection
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
TWI815842B (zh) 2018-01-16 2023-09-21 日商索尼股份有限公司 影像處理裝置及方法
FR3080968A1 (fr) * 2018-05-03 2019-11-08 Orange Procede et dispositif de decodage d'une video multi-vue, et procede et dispositif de traitement d'images.

Also Published As

Publication number Publication date
US20210168394A1 (en) 2021-06-03
WO2020017359A1 (ja) 2020-01-23
CN112425175A (zh) 2021-02-26
US11356690B2 (en) 2022-06-07

Similar Documents

Publication Publication Date Title
WO2019198523A1 (ja) 画像処理装置および方法
JP7327166B2 (ja) 画像処理装置および方法
US11699248B2 (en) Image processing apparatus and method
WO2020017359A1 (ja) 画像処理装置および方法
JPWO2020012967A1 (ja) 画像処理装置および方法
JP7331852B2 (ja) 画像処理装置および方法
KR20170132098A (ko) 레거시 및 몰입형 렌더링 디바이스를 위한 몰입형 비디오를 포맷팅하는 방법, 장치 및 스트림
JPWO2019198521A1 (ja) 画像処理装置および方法
JP2023509190A (ja) ポイントクラウドデータ送信装置、ポイントクラウドデータ送信方法、ポイントクラウドデータ受信装置及びポイントクラウドデータ受信方法
JP7342858B2 (ja) 画像処理装置および方法
WO2019142665A1 (ja) 情報処理装置および方法
WO2018135321A1 (ja) 画像処理装置および方法
US20230224482A1 (en) Information processing device and method
CN115022715B (zh) 一种沉浸媒体的数据处理方法及设备
US11915390B2 (en) Image processing device and method
WO2020188932A1 (ja) 情報処理装置および情報生成方法
WO2021193088A1 (ja) 画像処理装置および方法
JP2022063882A (ja) 情報処理装置および方法、並びに、再生装置および方法
WO2022075074A1 (ja) 画像処理装置および方法
WO2022075078A1 (ja) 画像処理装置および方法
WO2022050088A1 (ja) 画像処理装置および方法
KR102601705B1 (ko) 지오메트리 아틀라스의 부분 선형 스케일링 방법 및 이를 이용한 장치
WO2022201787A1 (ja) 画像処理装置および方法
WO2021095565A1 (ja) 画像処理装置および方法
WO2020262020A1 (ja) 情報処理装置および方法