(81)【指定国】
AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JO,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT
映像を効率的に符号化又は復号化するための少なくとも1つの方法及び装置が提示される。例えば、ポイントクラウドの2Dパッチであって複数の画素を有するパッチが、ポイントクラウドの3Dポイントを投影面上へ投影することにより取得される。パッチは複数の小ブロックへ分割される。複数の小ブロックの各小ブロック内のピクセルの数が判断される。更新された占有マップは、複数の小ブロックの各小ブロック内の判断されたピクセルの数に基づき取得される。再構築されたポイントクラウドは、更新された占有マップに基づき取得され、再構築されたポイントクラウドはポイントクラウドの低密度表現である。
前記更新された占有マップに基づき、更新されたブロック・ツー・パッチ指標を取得することをさらに含む請求項1に記載の方法であって、前記更新された占有マップの解像度は、前記更新されたブロック・ツー・パッチ指標の解像度より高い、方法。
前記それぞれの小ブロック内の前記ピクセルの数が閾値未満であればそれぞれの小ブロックを未占有に設定することをさらに含む請求項1乃至3のいずれか一項に記載の方法。
更新されたブロック・ツー・パッチ指標を前記更新された占有マップに基づき取得する手段をさらに含む請求項5に記載の装置であって、前記更新された占有マップの解像度は前記更新されたブロック・ツー・パッチ指標の解像度より高い、装置。
前記それぞれの小ブロック内の前記ピクセルの数が閾値未満であればそれぞれの小ブロックを未占有に設定する手段をさらに含む請求項5乃至7のいずれか一項に記載の装置。
前記更新されたブロック・ツー・パッチ指標の解像度は16×16である請求項2乃至4及び請求項9乃至11のいずれか一項に記載の方法又は請求項6乃至11のいずれか一項に記載の装置。
請求項1乃至4及び請求項10乃至12のいずれか一項に記載の方法又は請求項5乃至12のいずれか一項に記載の装置に従って生成されるデータコンテンツを含む非一時的コンピュータ可読媒体。
1つ又は複数のプロセッサにより実行されると請求項1乃至4及び請求項10乃至12のいずれか一項に記載の方法を行うための命令を含むコンピュータプログラム製品。
【発明を実施するための形態】
【0018】
詳細な説明
本実施形態の少なくとも1つは、本実施形態の少なくとも1つの実施形態の例が示される添付図面を参照して以下により完全に説明される。しかし、実施形態は、多くの代替形式で具現化され得、したがって本明細書に記載の例に限定されるものと解釈されるべきでない。したがって、開示された特定形式に実施形態を限定する意図はないということを理解すべきである。逆に、本開示は本出願の精神及び範囲に入るすべての修正、等価及び代替実施形態をカバーするように意図されている。
【0019】
図がフロー図として提示される場合、図はまた対応装置のブロック図を提供するということを理解すべきである。同様に、図がブロック図として提示される場合、図はまた対応方法/処理のフロー図を提供するということを理解すべきである。
【0020】
図面の同様な又は同じ要素は同じ参照番号により参照される。
【0021】
以下に説明及び企図される態様は多くの異なる形式で実施され得る。以下の
図1〜9はいくつかの実施形態を提供するが、他の実施形態が企図され、したがって
図1〜9の論述は実施形態の範囲を制限しない。
【0022】
態様の少なくとも1つは一般的にはポイントクラウド符号化及び復号化に関し、少なくとも1つの他の態様は一般的には生成又は符号化されるビットストリームを送信することに関する。
【0023】
より正確には、本明細書において説明される様々な方法及び他の態様はモジュール(例えば
図3、4にそれぞれ示すような画像ベース符号器3000及び復号器4000)を修正するために使用され得る。
【0024】
さらに、本態様は、ポイントクラウド圧縮に関するMPEG−Iパート5などのMPEG規格に限定されなく、例えば、既存である又は将来開発されるにかかわらず他の標準規格及び勧告と、任意のこのような標準規格及び勧告の拡張版(MPEG−Iパート5を含む)とへ適用され得る。別途指示されない限り又は技術的に排除されない限り、本出願において説明される態様は個々に使用されてもよいし組み合わせで使用されてもよい。
【0025】
以下では、画像データはデータ(例えば特定画像/映像フォーマットの2Dサンプルの1又はいくつかのアレイ)を指す。特定画像/映像フォーマットは画像(又は映像)の画素値に関連する情報を規定し得る。特定画像/映像フォーマットはまた、例えば画像(又は映像)を視覚化及び/又は復号化するためにディスプレイ及び/又は任意の他の装置により使用され得る情報を規定し得る。画像は通常、画像の輝度(又はルマ)を通常は表す第1の成分(サンプルの第1の2Dアレイの形をした)を含む。画像はまた、サンプルの他の2Dアレイの形状の第2の成分及び第3の成分(画像のクロミナンス(又はクロマ)を通常は表す)を含み得る。いくつかの実施形態は伝統的三色RGB表現などの色サンプルの1組の2Dアレイを使用して同じ情報を表す。
【0026】
画素値は1つ又は複数の実施形態ではC値のベクトルにより表され、ここでCは成分の数である。ベクトルの各値は通常、画素値のダイナミックレンジを定義し得る多くのビットにより表される。
【0027】
画像ブロックは画像に属する一組の画素を意味する。画像ブロックの画素値(又は画像ブロックデータ)はこの画像ブロックに属する画素の値を指す。画像ブロックは、長方形が一般的であるが任意形状を有し得る。
【0028】
ポイントクラウドは、一意的座標を有し、また、1つ又は複数の属性を有し得る3D容積空間内の3Dサンプルのデータセットにより表され得る。
【0029】
このデータセットの3Dサンプルは、その空間位置(3D空間内のX、Y及びZ座標)と、例えばRGB又はYUV色空間内で表される色、透明度、反射率、二成分法線ベクトル、又はこのサンプルの特徴を表す任意の特徴などの恐らく1つ又は複数の関連属性とにより定義され得る。例えば、3Dサンプルは6つの成分(X,Y,Z,R,G,B)又は等価的に(X,Y,Z,y,U,V)により定義され得、ここで(X,Y,Z)は3D空間内の点の座標を定義し、(R,G,B)又は(y,U,V)はこの3Dサンプルの色を定義する。同じタイプの属性は複数回存在し得る。例えば、複数の色属性は異なる観点からの色情報を提供し得る。
【0030】
ポイントクラウド(点群)は、時間と共に変化するかどうかに依存して静的又は動的であり得る。静的ポイントクラウド、又は動的ポイントクラウドのインスタンスは、ポイントクラウドフレームと通常称せられる。動的ポイントクラウドの場合ポイントの数は一般的には一定でなく、むしろ一般的に時間と共に変化するということに留意すべきである。より一般的には、ポイントクラウドは、何か(例えばポイントの数、1つ又は複数のポイントの位置、又は任意の点の任意の属性など)が時間と共に変化すれば動的であると考えられ得る。
【0031】
一例として、2Dサンプルは6つの成分(u,v,Z,R,G,B)又は等価的に(u,v,Z,y,U,V)により定義され得る。(u,v)は投影面の2D空間内の2Dサンプルの座標を定義する。Zはこの投影面上への投影3Dサンプルの深度値である。(R,G,B)又は(y,U,V)はこの3Dサンプルの色を定義する。
【0032】
図1は本実施形態の少なくとも1つの実施形態による2層ベースポイントクラウド符号化構造1000の例の概略ブロック図を示す。
【0033】
2層ベースポイントクラウド符号化構造1000は入力ポイントクラウドフレームIPCF(input point cloud frame)を表すビットストリームBを提供し得る。恐らく、入力ポイントクラウドフレームIPCFは動的ポイントクラウドのフレームを表す。次に、動的ポイントクラウドのフレームは別のフレームとは独立に2層ベースポイントクラウド符号化構造1000により符号化され得る。
【0034】
基本的に、2層ベースポイントクラウド符号化構造1000は、ビットストリームBを基層BL(Base Layer)及び強化層EL(Enhancement Layer)として構造化する能力を提供し得る。基層BLは入力ポイントクラウドフレームIPCFの損失(lossy)表現を提供し得、強化層ELは基層BLにより表されない孤立ポイントを符号化することにより高品質(恐らく無損失)表現を提供し得る。
【0035】
基層BLは
図3に示すように画像ベース符号器3000により提供され得る。画像ベース符号器3000は、入力ポイントクラウドフレームIPCFの3Dサンプルのジオメトリ/属性を表すジオメトリ/テクスチャ画像を提供し得る。画像ベース符号器3000は、孤立3Dサンプルが廃棄されることを可能にし得る。基層BLは
図4に示すような画像ベース復号器4000(中間再構築ポイントクラウド(intermediate reconstructed point cloud)フレームIRPCFを提供し得る)により復号化され得る。
【0036】
次に、
図1の2層ベースポイントクラウド復号器1000に戻ると、比較器COMPは、欠落/孤立(missed/isolated)3Dサンプルを検出する/見出すために入力ポイントクラウドフレームIPCFの3Dサンプルと中間再構築ポイントクラウドフレームIRPCFの3Dサンプルとを比較し得る。次に、符号器ENCは欠落3Dサンプルを符号化し得、強化層ELを提供し得る。最後に、基層BLと強化層ELは、ビットストリームBを生成するように多重化器MUXにより多重化され得る。
【0037】
一実施形態によると、符号器ENCは、中間再構築ポイントクラウドフレームIRPCFの3D基準サンプルRを検出してこれを欠落3DサンプルMへ関連付け得る検出器を含み得る。
【0038】
例えば、欠落3DサンプルMに関連付けられた3D基準サンプルRは、所与のメトリックに基づく3DサンプルMのその最近傍サンプルであり得る。
【0039】
一実施形態によると、次に、符号器ENCは、欠落3DサンプルMの空間位置とそれらの属性とを、3D基準サンプルRの空間位置及び属性に従って判断される差として符号化し得る。
【0040】
変形では、それらの差は別々に符号化され得る。
【0041】
例えば、欠落3DサンプルMに関し、空間座標x(M)、y(M)、z(M)により、x座標位置差Dx(M)、y座標位置差Dy(M)、z座標位置差Dz(M)、R属性成分差Dr(M)、G属性成分差Dg(M)、及びB属性成分差Db(M)は次のように計算され得る:
Dx(M)=x(M)−x(R)、
ここでx(M)は
図3により提供されるジオメトリ画像内の3DサンプルM、Rそれぞれのx座標であり、
Dy(M)=y(M)−y(R)
ここでy(M)は
図3により提供されるジオメトリ画像内の3DサンプルM、Rそれぞれのy座標であり、
Dz(M)=z(M)−z(R)
ここで、z(M)は
図3により提供されるジオメトリ画像内の3DサンプルM、Rそれぞれのz座標である、
Dr(M)=R(M)−R(R)。
ここでR(M)、R(R)それぞれは3DサンプルM、Rそれぞれの色属性のr色成分であり、
Dg(M)=G(M)−G(R)
ここでG(M)、G(R)それぞれは3DサンプルM、Rそれぞれの色属性のg色成分であり、
Db(M)=B(M)−B(R)
ここでB(M)、B(R)それぞれは3DサンプルM、Rそれぞれの色属性のb色成分である。
【0042】
図2は本実施形態の少なくとも1つの実施形態による2層ベースポイントクラウド復号化構造2000の例の概略ブロック図を示す。
【0043】
2層ベースポイントクラウド復号化構造2000の振る舞いはその能力に依存する。
【0044】
制限された能力を有する2層ベースポイントクラウド復号化構造2000は、逆多重化器DMUX(de-multiplexer)を使用することによりビットストリームBから基層BLだけにアクセスし得、次に、
図4に示すようなポイントクラウド復号器4000により基層BLを復号化することにより入力ポイントクラウドフレームIPCFの忠実(しかし損失)バージョンIRPCFを提供し得る。
【0045】
十分な能力を有する2層ベースポイントクラウド復号化構造2000は、逆多重化器DMUXを使用することによりビットストリームBから基層BL及び強化層ELの両方にアクセスし得る。
図4に示すようなポイントクラウド復号器4000は基層BLから中間再構築ポイントクラウドフレームIRPCFを判断し得る。復号器DECは強化層ELから補間ポイントクラウドフレームCPCF(complementary point cloud frame)を判断し得る。次に、合成器COMは、入力ポイントクラウドフレームIPCFの高品質(恐らく無損失)表現(再構築)CRPCFを提供するために中間再構築ポイントクラウドフレームIRPCFと補間ポイントクラウドフレームCPCFとを合成し得る。
【0046】
図3は本実施形態の少なくとも1つの実施形態による画像ベースポイントクラウド符号器3000の例の概略ブロック図を示す。
【0047】
画像ベースポイントクラウド符号器3000は、動的ポイントクラウドのジオメトリ及びテクスチャ(属性)情報を圧縮するために既存映像コーデックを活用する。これは、ポイントクラウドデータを1組の異なる映像系列へ本質的に変換することにより成し遂げられる。
【0048】
特定の実施形態では、2つの映像(ポイントクラウドデータのジオメトリ情報を捕捉するためのものとテクスチャ情報を捕捉するためのもの)は既存映像コーデックを使用して生成され圧縮され得る。既存映像コーデックの例はHEVC Main profile encoder/decoder (ITU-T H.265 Telecommunication standardization sector of ITU (02/2018), series H: audiovisual and multimedia systems, infrastructure of audiovisual services - coding of moving video, High efficiency video coding, Recommendation ITU-T H.265)である。
【0049】
2つの映像を解釈するために使用される追加メタデータもまた通常は別々に生成され圧縮される。このような追加メタデータは例えば占有マップOM(occupancy map)及び/又は補助パッチ情報PI(patch information)を含む。
【0050】
次に、生成された映像ビットストリームとメタデータは合成ビットストリームを生成するように多重化され得る。
【0051】
メタデータは通常は情報全体のうちの小量の情報を表すということに注意すべきである。この情報の大部分は映像ビットストリーム内に存在する。
【0052】
このようなポイントクラウド符号化/復号化処理の例は、ISO/IEC JTC1/SC29/WG11 MPEG2019/w18180 January 2019,Marrakeshに定義されるMPEG規格案を実施するTest model Category 2アルゴリズム(映像ベースポイントクラウド圧縮(Video-based Point Cloud Compression)とも称せられる(V−PCCと略称される))により与えられる。
【0053】
工程3100では、モジュールPGMは、最良圧縮を提供する戦略を使用することにより投影面上の2Dサンプルに対する入力ポイントクラウドフレームIPCFを表すデータセットの3Dサンプルを分解することにより少なくとも1つのパッチを生成し得る。
【0054】
パッチは1組の2Dサンプルとして定義され得る。
【0055】
例えば、V−PCCでは、例えばHoppe et al. (Hugues Hoppe, Tony DeRose, Tom Duchamp, John McDonald, Werner Stuetzle. Surface reconstruction from unorganized points. ACM SIGGRAPH 1992 Proceedings, 71-78)において説明されるように、あらゆる3Dサンプルにおける法線が最初に推定される。次に、入力ポイントクラウドフレームIPCFの初期クラスタ化が、各3Dサンプルと、入力ポイントクラウドフレームIPCFの3Dサンプルを包含する3D境界ボックスの6つの有向平面のうちの1つとを関連付けることにより得られる。より正確には、各3Dサンプルは、クラスタ化され、そして最近接法線を有する(すなわち、ポイント法線と面法線とのドット積を最大化する)有向平面に関連付けられる。次に、3Dサンプルはそれらの関連面へ投影される。それらの面内の接続領域を形成する一組の3Dサンプルは連結成分と呼ばれる。連結成分は、同様な法線及び同じ関連有向平面を有する一組の少なくとも1つの3Dサンプルである。次に、初期クラスタ化は、その法線とその最近隣サンプルのクラスタとに基づき、各3Dサンプルに関連付けられたクラスタを反復的に更新することにより精緻化される。最終工程は、各連結成分の3Dサンプルを連結成分に関連付けられた有向平面上へ投影することにより行われる各連結成分から1つのパッチを生成することからなる。パッチは、ジオメトリ及び/又は属性情報に対応する投影された2Dサンプルを解釈するために、パッチ毎に定義された補助パッチ情報を表す補助パッチ情報PIに関連付けられる。
【0056】
V−PCCでは、例えば、補助パッチ情報PIは、1)連結成分の3Dサンプルを包含する3D境界ボックスの6つの有向平面のうちの1つを指示する情報;2)平面法線に関する情報;3)深度、接線方向シフト及び二接線方向シフトの観点で表されるパッチに関する連結成分の3D位置を判断する情報;及び4)パッチを包含する2D境界ボックスを定義する投影面内の座標(u0,v0,u1,v1)などの情報を含む。
【0057】
工程3200では、パッチパッキングモジュール(patch packing module)PPMが、少なくとも1つの生成されたパッチを、未使用空間を通常は最小化するやり方で重なり無しに2Dグリッド(キャンバスとも呼ばれる)上へマッピングし(置き)得、そして2DグリッドのあらゆるT×T(例えば16×16)ブロックが一意的パッチに関連付けられるということを保証し得る。2Dグリッドの所与の最小ブロックサイズT×Tはこの2Dグリッド上に置かれる個別パッチ間の最小距離を規定し得る。2Dグリッド解像度は入力ポイントクラウドサイズ並びにその幅W及び高さHに依存し得、ブロックサイズTはメタデータとして復号器へ送信され得る。
【0058】
補助パッチ情報PIはさらに、2Dグリッドのブロックとパッチとの関連性に関する情報を含み得る。
【0059】
V−PCCでは、補助情報PIは、2Dグリッドのブロックとパッチ指標との間の関連性を判断するブロック・ツー・パッチ指標情報(BlockToPatch)を含み得る。
【0060】
図5は2つのパッチP1、P2及びそれらの関連2D境界ボックスB1、B2を含むキャンバスCの例を示す。2つの境界ボックスは
図5に示すようにキャンバスC内で重なり得るということに留意されたい。2Dグリッド(キャンバスの分割)は境界ボックスの内部だけに表されるが、キャンバスの分割はまたそれらの境界ボックスの外部に発生する。パッチに関連付けられた境界ボックスはT×Tブロックへ分割され得る(通常T=16)。
【0061】
パッチに属する2Dサンプルを含むT×Tブロックは占有占有されたブロックと考えられ得る。キャンバスのそれぞれの占有されたブロックは占有マップOM内の特定画素値(例えば1)により表され、キャンバスの未占有ブロックは別の特定値(例えば0)により表される。次に、占有マップOMの画素値は、キャンバスのT×Tブロックが占有されているかどうか(すなわち、パッチに属する2Dサンプルを含むかどうか)を指示し得る。
【0062】
図5では、占有されたブロックは白色ブロックにより表され、薄灰色ブロックは未占有ブロックを表す。画像生成処理(
図3の工程3300、3400)は、画像として入力ポイントクラウドフレームIPCFのジオメトリ及びテクスチャを格納するために、工程3200中に計算された2Dグリッド上への少なくとも1つの生成されたパッチのマッピングを活用する。
【0063】
工程3300では、ジオメトリ画像生成器(geometry image generator)GIGが、入力ポイントクラウドフレームIPCF、占有マップOM、及び補助パッチ情報PIから少なくとも1つのジオメトリ画像GIを生成し得る。ジオメトリ画像生成器GIGは、ジオメトリ画像GI内の占有されたブロックしたがって非空画素を検出する(見出す)ために占有マップ情報を活用し得る。
【0064】
ジオメトリ画像GIは、入力ポイントクラウドフレームIPCFのジオメトリを表し得、例えばYUV420−8ビットフォーマットで表されるW×H画素の単色画像であり得る。
【0065】
複数の3Dサンプルが投影面(同じ投影方向(線)に沿った)の同じ2Dサンプルへ投影(マッピング)されるのケースをうまく扱うために、層と呼ばれる複数画像が生成され得る。したがって、様々な深度値D1,...,Dnがパッチの2Dサンプルに関連付けられ得、次に、複数のジオメトリ画像が生成され得る。
【0066】
V−PCCでは、パッチの2Dサンプルが2つの層上へ投影される。近方層とも呼ばれる第1の層は例えば浅い深度を有する2Dサンプルに関連付けられた深度値D0を格納し得る。遠方層とも呼ばれる第2の層は例えば深い深度を有する2Dサンプルに関連付けられた深度値D1を格納し得る。代替的に、第2の層は深度値D1とD0との差値を格納し得る。例えば、第2の深度画像により格納される情報は範囲[D0,D0+Δ]内の深度値に対応する間隔[0,Δ]内に在り得、ここでΔは表面厚さを記述するユーザ定義パラメータである。
【0067】
このやり方により、第2の層は著しい等高線状高周波特徴を含み得る。したがって、第2の深度画像はレガシー映像符号器を使用することにより符号化するのが困難であり得るということは明白であるように思え、したがって、深度値は復号化された第2の深度画像から劣悪に再構築され得、その結果、再構築されたポイントクラウドフレームのジオメトリの貧弱な品質に到る。
【0068】
一実施形態によると、ジオメトリ画像生成モジュールGIGは、補助パッチ情報PIを使用することにより、第1及び第2の層の2Dサンプルに関連付けられた深度値を符号化(導出)し得る。
【0069】
V−PCCでは、対応連結成分を有するパッチ内の3Dサンプルの位置は、深度δ(u,v)、接線方向シフトs(u,v)、二接線方向シフトr(u,v)の観点で次のように表現され得る:
δ(u,v)=δ0+g(u,v)
s(u,v)=s0−u0+u
r(u,v)=r0−v0+v
ここで、g(u,v)はジオメトリ画像のルマ成分であり、(u,v)は投影面上の3Dサンプルに関連付けられた画素であり、(δ0,s0,r0)は3Dサンプルが属する連結成分の対応パッチの3D位置であり、(u0,v0,u1,v1)は、連結成分に関連付けられたパッチの投影を包含する2D境界ボックスを定義する投影面内の座標である。
【0070】
したがって、ジオメトリ画像生成モジュールGIGは、次式により与えられるルマ成分g(u,v)として、層(第1又は第2の層、又は両方の層)の2Dサンプルに関連付けられた深度値を符号化(導出)し得る:g(u,v)=δ(u,v)−δ0。この関係式は付随する補助パッチ情報PIを有する再構築されたジオメトリ画像g(u,v)から3Dサンプル位置(δ0,s0,r0)を再構築するために採用され得るということに注意すべきである。
【0071】
一実施形態によると、投影モードは、第1のジオメトリ画像GI0が第1又は第2のいずれかの層の2Dサンプルの深度値を格納し得るかどうかと第2のジオメトリ画像GI1が第1層又は第2層のいずれかの層の2Dサンプルに関連付けられた深度値を格納し得るかどうかとを指示するために使用され得る。
【0072】
例えば、投影モードが0に等しいと、第1のジオメトリ画像GI0は第1の層の2Dサンプルの深度値を格納し得、第2のジオメトリ画像GI1は第2の層の2Dサンプルに関連付けられた深度値を格納し得る。同様に、投影モードが1に等しいと、第1のジオメトリ画像GI0は第2の層の2Dサンプルの深度値を格納し得、第2のジオメトリ画像GI1は第1の層の2Dサンプルに関連付けられた深度値を格納し得る。
【0073】
一実施形態によると、フレーム投影モードは、固定投影モードがすべてのパッチに使用されるかどうか又は可変投影モードがすべてのパッチに使用されるかどうかを指示するために使用され得る。ここで各パッチは異なる投影モードを使用し得る。
【0074】
投影モード及び/又はフレーム投影モードはメタデータとして送信され得る。
【0075】
フレーム投影モード決定アルゴリズム(例えばV−PCCの章2.2.1.3.1)が提供され得る。
【0076】
一実施形態によると、可変投影モードが使用され得るということをフレーム投影モード決定アルゴリズムが指示すると、パッチ投影モードは、パッチを(逆)投影するために使用すべき適切なモードを指示するために使用され得る。
【0077】
パッチ投影モードは、メタデータとして送信され得、恐らく補助パッチ情報PI内に含まれる情報であり得る。
【0078】
パッチ投影モード決定アルゴリズム(例えばV−PCCの章2.2.1.3.2)が提供される。
【0079】
工程3300の一実施形態によると、パッチの2Dサンプル(u,v)に対応する第1のジオメトリ画像(例えばGI0)内の画素値は、2Dサンプル(u,v)に対応する投影線に沿って定義された少なくとも1つの中間3Dサンプルの深度値を表し得る。より正確には、中間3Dサンプルは、投影線に沿ってあり、その深度値D1が第2のジオメトリ画像(例えばGI1)内で符号化される2Dサンプル(u,v)の同じ座標を共有する。さらに、中間3Dサンプルは深度値D0と深度値D1との間の深度値を有し得る。指定ビットが各中間3Dサンプルに関連付けられ得、中間3Dサンプルが存在すれば、1へ設定されそうでなければ0へ設定される。
【0080】
図6は、投影線PLに沿った2つの3DサンプルP0とP1との間に位置する2つの中間3DサンプルP
i1、P
i2の例を示す。3DサンプルP0、P1はD0、D1に等しい深度値をそれぞれ有する。2つの中間3DサンプルP
i1、P
i2それぞれの深度値D
i1、D
i2はD0より大きく且つD1より低い。
【0081】
次に、投影線に沿ったすべての指定ビットは符号語(以下では強化占有マップ(EOM:Enhanced-Occupancy map)符号語と称せられる)を形成するために連結され得る。
図6に示すように、8ビットの長さのEOM符号語を仮定すると、2ビットは2つの3DサンプルP
i1、P
i2の位置を指示するために1に等しい。最後に、すべてのEOM符号語が画像(例えば占有マップOM)内に詰め込まれ得る。この場合、キャンバスの少なくとも1つのパッチは少なくとも1つのEOM符号語を含み得る。このようなパッチは基準パッチと称され、基準パッチのブロックはEOM基準ブロックと称せられる。したがって、占有マップOMの画素値は、キャンバスの未占有ブロックを指示するために第1の値(例えば0)に等しくてもよいし、例えばD1−D0<=1の場合のキャンバスの占有されたブロックを指示するために又は例えばD1−D0>1の場合のキャンバスのEOM基準ブロックを指示するためのいずれかのために例えば0より大きい別の値に等しくてもよい。
【0082】
EOM基準ブロックを指示する占有マップOM内の画素の位置及びそれらの画素の値から取得されるEOM符号語のビットの値は、中間3Dサンプルの3D座標を指示する。
【0083】
工程3400では、テクスチャ画像生成器(texture image generator)TIGは、入力ポイントクラウドフレームIPCF、占有マップOM、補助パッチ情報PI、及び少なくとも1つの復号化されたジオメトリ画像DGI(ビデオ復号器VDEC(
図4の工程4200)の出力)から導出される再構築されたポイントクラウドフレームのジオメトリから少なくとも1つのテクスチャ画像TIを生成し得る。
【0084】
テクスチャ画像TIは、入力ポイントクラウドフレームIPCFのテクスチャを表し得、例えばYUV420−8ビットフォーマットで表されたW×H画素の画像であり得る。
【0085】
テクスチャ画像生成器TGは、テクスチャ画像内の占有されたブロックしたがって非空画素を検出する(見出す)ために占有マップ情報を活用し得る。
【0086】
テクスチャ画像生成器TIGはテクスチャ画像TIを生成しそして各ジオメトリ画像/層DGIと関連付けるようにされ得る。
【0087】
一実施形態によると、テクスチャ画像生成器TIGは、第1の層の2Dサンプルに関連付けられたテクスチャ(属性)値T0を第1のテクスチャ画像TI0の画素値として、そして第2の層の2Dサンプルに関連付けられたテクスチャ値T1を第2のテクスチャ画像TI1の画素値として符号化(格納)し得る。
【0088】
代替的に、テクスチャ画像生成モジュールTIGは、第2の層の2Dサンプルに関連付けられたテクスチャ値T1を第1のテクスチャ画像TI0の画素値としてそして第1の層の2Dサンプルに関連付けられたテクスチャ値D0を第2のジオメトリ画像GI1の画素値として符号化(格納)し得る。
【0089】
例えば、3Dサンプルの色はV−PCCの章2.2.3、2.2.4、2.2.5、2.2.8又は2.5に説明されるように取得され得る。
【0090】
2つの3Dサンプルのテクスチャ値は第1又は第2のいずれかのテクスチャ画像内に格納される。しかし、中間3Dサンプルのテクスチャ値は、投影された中間3Dサンプルの位置が
図6に示すように別の3Dサンプル(P0又はP1)のテクスチャ値を格納するために既に使用されている占有されたブロックに対応するのでこの第1のテクスチャ画像TI0内又は第2のテクスチャ画像TI1内のいずれの中にも格納され得ない。したがって、中間3Dサンプルのテクスチャ値は、手順に従って定義された位置における第1又は第2のいずれかのテクスチャ画像内の他のどこかに位置するEOMテクスチャブロック内に格納される(V−PCCの章9.4.5)。要約すると、この処理は、テクスチャ画像内の未占有ブロックの位置を判断し、中間3Dサンプルに関連付けられたテクスチャ値をテクスチャ画像の未占有ブロック(EOMテクスチャブロックと称せられる)の画素値として格納する。
【0091】
一実施形態によると、詰め込み(padding)処理がジオメトリ及び/又はテクスチャ画像に適用され得る。詰め込み処理は映像圧縮に適した区分的に滑らかな画像を生成するためにパッチ間の空きスペースを埋めるために使用され得る。
【0092】
画像詰め込み例はV−PCCの章2.2.6、2.2.7において提供される。
【0093】
工程3500では、映像符号器(video encoder)VENCが、生成された画像/層TI及びGIを符号化し得る。
【0094】
工程3600では、符号器OMENCが、例えばV−PCCの章2.2.2において詳述されるように占有マップを画像として符号化し得る。損失又は無損失符号化が使用され得る。
【0095】
一実施形態によると、映像符号器ENC及び/又はOMENCはHEVCベース符号器であり得る。
【0096】
工程3700では、符号器PIENCが、ジオメトリ/テクスチャ画像のブロックサイズT、幅W及び高さHなどの補助パッチ情報PI及び恐らく追加メタデータを符号化し得る。
【0097】
一実施形態によると、補助パッチ情報は差分符号化され得る(例えばV−PCCの章2.4.1において定義されるように)。
【0098】
工程3800では、多重化器が工程3500、3600、3700の生成された出力へ適用され得、その結果、これらの出力は基層BLを表すビットストリームを生成するように多重化され得る。メタデータ情報はビットストリーム全体のごく一部分を表すということに注意すべきである。情報の大部分は映像コーデックを使用して圧縮される。
【0099】
図4は本実施形態の少なくとも1つの実施形態による画像ベースポイントクラウド復号器4000の例の概略ブロック図を示す。
【0100】
工程4100では、逆多重化器DMUXが、基層BLを表すビットストリームの符号化された情報を逆多重化するために適用され得る。
【0101】
工程4200では、映像復号器VDECが、少なくとも1つの復号化されたジオメトリ画像DGI及び少なくとも1つの復号化テクスチャ画像DTIを導出するために、符号化された情報を復号化し得る。
【0102】
工程4300では、復号器OMDECは復号化された占有マップDOMを導出するために、符号化された情報を復号化し得る。
【0103】
一実施形態によると、映像復号器VDEC及び/又はOMDECはHEVCベース復号器であり得る。
【0104】
工程4400では、復号器PIDECが、補助パッチ情報DPIを導出するために、符号化された情報を復号化し得る。
【0105】
恐らく、メタデータもまたビットストリームBLから導出され得る。
【0106】
工程4500では、ジオメトリ生成モジュールGGMは、少なくとも1つの復号化されたジオメトリ画像DGI、復号化された占有マップDOM、復号化された補助パッチ情報DPI及び恐らく追加メタデータから、再構築されたポイントクラウドフレームIRPCFのジオメトリRGを導出し得る。
【0107】
ジオメトリ生成モジュールGGMは、少なくとも1つの復号化されたジオメトリ画像DGI内の非空画素を見出すために、復号化された占有マップ情報DOMを活用し得る。
【0108】
非空画素は、上に説明したように、復号化された占有情報DOMの画素値及びD1〜D0の値に依存して、占有されたブロック又はEOM基準ブロックのいずれかに属する。
【0109】
工程4500の一実施形態によると、ジオメトリ生成モジュールGGMは非空画素の座標から中間3Dサンプルの3D座標のうちの2つを導出し得る。
【0110】
工程4500の一実施形態によると、非空画素がEOM基準ブロックに属する場合、ジオメトリ生成モジュールGGMは、EOM符号語のビット値から中間3Dサンプルの3D座標の第3番目の座標を導出し得る。
【0111】
例えば、
図6の例によると、EOM符号語EOMCは、中間3DサンプルP
i1、P
i2の3D座標を判断するために使用される。中間3DサンプルP
i1の第3番目の座標は例えばD
i1=D0+3によりD0から導出され得、再構築された3DサンプルP
i2の第3番目の座標は例えばD
i2=D0+5によりD0から導出され得る。オフセット値(3又は5)は投影線に沿ったD0とD1との間の間隔の数である。
【0112】
一実施形態によると、非空画素が、占有されたブロックに属する場合、ジオメトリ生成モジュールGGMは、再構築された3Dサンプルの3D座標を、非空画素の座標、少なくとも1つの復号化されたジオメトリ画像DGIの1つの非空画素の値、復号化された補助パッチ情報、及び恐らく追加メタデータから導出し得る。
【0113】
非空画素の使用は2D画素と3Dサンプルとの関係式に基づく。例えば、V−PCCにおける投影により、再構築された3Dサンプルの3D座標は、深度δ(u,v)、接線方向シフトs(u,v)、二接線方向シフトr(u,v)の観点で次のように表現され得る:
δ(u,v)=δ0+g(u,v)
s(u,v)=s0−u0+u
r(u,v)=r0−v0+v
ここで、g(u,v)は復号化されたジオメトリ画像DGIのルマ成分であり、(u,v)は再構築された3Dサンプルに関連付けられた画素であり、(δ0,s0,r0)は再構築された3Dサンプルが属する連結成分の3D位置であり、(u0,v0,u1,v1)は、連結成分に関連付けられたパッチの投影を包含する2D境界ボックスを定義する投影面内の座標である。
【0114】
工程4600では、テクスチャ生成モジュールTGMは、再構築されたポイントクラウドフレームIRPCFのテクスチャをジオメトリRG及び少なくとも1つの復号化テクスチャ画像DTIから導出し得る。
【0115】
工程4600の一実施形態によると、テクスチャ生成モジュールTGMは、EOM基準ブロックに属する非空画素のテクスチャを対応EOMテクスチャブロックから導出し得る。テクスチャ画像内のEOMテクスチャ画像の位置は手順に従って定義される(V−PCCの章9.4.5)。
【0116】
工程4600の一実施形態によると、テクスチャ生成モジュールTGMは、占有されたブロックに直接属する非空画素のテクスチャを第1又は第2のいずれかのテクスチャ画像の画素値として導出し得る。
【0117】
図7は本実施形態の少なくとも1つの実施形態による基層BLを表すビットストリーム7000の例示的構文を模式的に示す。
【0118】
ビットストリームはビットストリームヘッダSH7100及び少なくともフレームストリーム群(Group Of Frame Stream)GOFS7110、...7120、...7130などを含む。
【0119】
フレームストリーム群GOFSは、ヘッダHS7121、占有マップOMを表す少なくとも1つの構文要素OMS7122、少なくとも1つのジオメトリ画像(又は映像)を表す少なくとも1つの構文要素GVS7123、少なくとも1つのテクスチャ画像(又は映像)を表す少なくとも1つの構文要素TVS7125、補助パッチ情報を表す少なくとも1つの構文要素PIS7124、及び他の追加メタデータを含む。
【0120】
変形では、フレームストリーム群GOFSは少なくとも1つのフレームストリームを含む。
【0121】
V−PCCでは、メタデータは以下の2つのカテゴリへ分けられ得る:
●パッチ毎メタデータは2D深度及びテクスチャ(色)画像(U0とV0)内及び3D空間(U1,V1,D1)内の各パッチの座標並びに各パッチの幅及び高さ(deltaSizeU0及びdeltaSizeV0)を記述する。
●ブロック毎メタデータは、深度及びテクスチャ画像のN×Nブロック毎に、次のことを指示する情報を提供する:
○現在のブロック(ブロック・ツー・パッチ指標情報)がどのパッチに属するか;
○現在のブロック内のどの画素が投影点(占有マップ)に対応するか。
【0122】
各2Dパッチを3D空間へ逆投影するために必要とされるパッチ毎メタデータは比較的小さい。パッチ毎に送信すべきいくつか(V−PCCの現バージョンでは7)のパラメータだけが存在し、パッチの数は通常小さい(数百)。
【0123】
しかし、占有マップ及びブロック・ツー・パッチ指標メタデータはパッチ画像のすべての画素に必要とされる。空間座標当たり10ビットを使用するポイントクラウドに関して、パッチ画像のサイズは通常1280×1280画素であり、符号化すべき大量のデータを生み出す。
【0124】
V−PCCでは、方法は、(1)占有マップとブロック・ツー・パッチ指標メタデータとの符号化を混合することにより、そして(2)両方の精度を低減することにより、符号化された占有マップ及びブロック・ツー・パッチメタデータのサイズを低減しようとする。ここでは、各画素の情報を符号化する代わりに、N×N画素のブロックに関して一回だけ符号化される。これは深度及びカラーパッチ画像の符号化効率をわずかに低減する(これらの画像はそうでない場合より大きいので)が、これはメタデータのサイドを大いに低減する。ブロック・ツー・パッチ指標に関し、Nは通常、データ量を256の係数だけ低減する16である。占有マップに関し、Nは1、2、4、8、又は16であり得る。データ量を16の係数だけ低減する4が一般的である。
【0125】
次のように定義する:
1.十分な精度の占有マップ:占有マップは各画素の情報を含む。
2.占有マップは符号器レベルにおいてだけ利用可能である。ブロック精度(通常4)における占有マップ:これは、占有マップ精度におけるブロックの情報を含む。精度は「小ブロック」と呼ばれる。これは符号器側で利用可能であり、復号器へ送信される。
3.ブロック解像度(通常16)におけるブロック・ツー・パッチ指標:これは、占有マップ解像度におけるブロックの情報を含む。これは符号器側で利用可能であり、復号器へ送信される。
【0126】
本実施形態は、占有マップ内の及び/又はポイントクラウドのポイントを投影面上に投影することにより得られる深度及びテクスチャ画像のブロックのために提供されるブロック毎メタデータのブロック・ツー・インデックスマップ内のいくつかの画素値を変更することにより、ポイントクラウドの重要でない又はあまり重要でないポイントを除去するための方法及び/又は装置を提供する。
【0127】
第1の実施形態
図8は、どのようにオリジナルポイントクラウド(
図8の8100:32×32全解像度)が占有マップ(
図8の8200:4×4ブロックを使用することにより低減された)及びブロック・ツー・パッチ指標(
図8の8300:16×16ブロックを使用することによりさらに低減された)を使用することにより再構築ポイントクラウド(
図8の8400−低減解像度)へ処理及び再構築され得るかの第1の実施形態を示す。
【0128】
本実施形態は、多くの役に立たないポイント(3Dサンプル)の再構築ポイントクラウド内への生成を回避するために符号器側のブロック内にポイントがほとんど存在しない場合に占有マップ・ツー・パッチ指標データを低減する方法を提案する。この方法は、以下のようにして、符号化されるべきデータを低減する:
【0130】
小ブロック(通常4×4)毎に、以下のことを行う:
a.全占有マップ精度を使用してソースポイントクラウド内のポイントNP
small_blockの数を計数する。
b.NP
small_block≦Th
small_blockであれば(ここでTh
small_blockは所与値である)、占有マップを未占有に設定し、そうでなければブロック占有を1にする。Th
small_blockの標準数は1である。
【0131】
OM
reduceを全解像度におけるソースポイントクラウドの更新された占有マップであるとする。
【0132】
一変形によると、本方法の第1の実施形態はさらに以下のものを含む:
OM
reduceから、ブロック解像度においてブロック・ツー・パッチ指標を更新する。ブロック毎に、以下のことを行う:
c.占有されたブロックの数NB
blockを計数する:
d.NB
block=0であれば、未占有ブロックをブロック・ツー・パッチ指標へマーキングする。そうでなければ、ブロックは占有されたとマーキングされる。
【0133】
しかし、
図8に示すように、ブロックが占有されていると、結果は、多数のポイントが復号化処理中に再構築されることになるということである(占有精度が4へ設定されれば、ブロック当たりの再構築ポイントの数は16である)。特に、1つのポイントが符号器側の小ブロック4×4を占有すれば、ブロック・ツー・パッチ指標はブロックが占有されたということを指示する。復号化処理中、1ポイントではなく16ポイントが生成されることになる。
【0134】
したがって、
図8aは第1の実施形態の別の代替案を示す、ソースポイントクラウド(
図8aの8100a:全占有マップ精度)から、以下のことを行う:
a.ブロック解像度においてブロック内のポイントの数NP
blockを計数する:
b.NP
block≦Th
blockであれば(ここでTh
blockは所与値である)、ブロックをブロック・ツー・パッチ指標から除去する。Th
blockの標準値は4である。
【0135】
最後に、小ブロック(
図8aの8200)の更新された占有マップとブロック解像度の更新されたパッチ・ツー・指標(
図8aの8300)とを得る。これらは復号器側へ送信されるデータを指示する。
【0136】
したがって、
図8の実施形態と比較した効率のさらなる改善が
図8aに示される。見て分かるように、
図8aにおけるさらなる改善は、重要でない又はそれほど重要でないソースポイントクラウドの小領域のさらなる抑制をもたらす。いくつかの情報が欠落しても、再構築されたポイントクラウドは、
図8に示すものより低密度であり、オリジナルポイントクラウドに対しより忠実である。
【0137】
第2の実施形態
第2の実施形態は、再構築されたポイントクラウドがソースポイントクラウドに近いか遠いかを評価するためにブロック毎の距離を計算することに基づく。この距離は2つのポイントクラウド間(ポイント・ツー・ポイント)の距離である。
【0138】
AとBが3D空間内の2組の点であるとする。AからBへの距離は次式のように定義される。
【数1】
ここで、ノルムはユークリッド距離であり、Aの点pからBの最も近い点までの距離は次式のように定義される。
【数2】
【0139】
本実施形態は、閾値距離より大きい計算された距離を有する再構築されたポイントクラウドの送信を回避し、したがってあまりにも密なポイントクラウド再構築を回避する。したがって、本実施形態はまた、圧縮すべきデータの量を低減する。
【0140】
利得に関し:我々はメトリックの1%の利得を観測する(しかし、これは、他のアルゴリズムに関し上記のように行われたが、V−PCCだけに対し行われる必要がある)。
【0141】
図9は様々な態様及び実施形態が実現されるシステムの例を示す概略ブロック図を示す。
【0142】
システム9000は、以下に説明される様々な部品を含む1つ又は複数のデバイスとして具現化され得、本明細書に記載された態様のうちの1つ又は複数を行うように構成される。システム9000のすべて又は一部を形成し得る機器の例は、パーソナルコンピュータ、ラップトップ、スマートフォン、タブレットコンピュータ、デジタルマルチメディアセットトップボックス、デジタルTV受信機、パーソナル録画システム、コネクテッド家庭用機器、コネクテッド車両及びそれらの関連処理システム、頭部装着型ディスプレイデバイス(HMD、シースルー眼鏡)、プロジェクタ、「ケーブ」(複数のディスプレイを含むシステム)、サーバ、映像符号器、映像復号器、映像復号器からの出力を処理するポストプロセッサ、入力を映像符号器へ提供するプリプロセッサ、ウェブサーバ、セットトップボックス、ポイントクラウド、映像又は画像を処理するための任意の他のデバイス、又は他の通信デバイスを含む。単独の又は組み合わせのシステム9000の要素は単一集積回路、複数のIC、及び/又は個別部品で具現化され得る。例えば、少なくとも1つの実施形態では、システム9000の処理及び符号器/復号器要素は複数のIC及び/又は個別部品にわたって分散され得る。様々な実施形態では、システム9000は、例えば通信バスを介し又は専用入力及び/又は出力ポートを介し他の同様なシステム又は他の電子デバイスへ通信可能に結合され得る。様々な実施形態では、システム9000は本明細書に記載された態様のうちの1つ又は複数を実現するように構成され得る。
【0143】
システム9000は、例えば本明細書に記載された様々な態様を実現するためにその中にロードされた命令を実行するように構成された少なくとも1つのプロセッサ9010を含み得る。プロセッサ9010は、埋め込みメモリ、入出力インターフェース、及び当該技術において知られた様々な他の回路系を含み得る。システム9000は少なくとも1つのメモリ9020(例えば、揮発性メモリデバイス及び/又は不揮発性メモリデバイス)を含み得る。
【0144】
システム9000は、不揮発性メモリ及び/又は揮発性メモリを含み得るストレージデバイス9040を含み得る。不揮発性メモリ及び/又は揮発性メモリは、限定しないが、電気的消去可能PROM(EEPROM)、読み出し専用メモリ(ROM)、プログラマブル読み出し専用メモリ(PROM)、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、フラッシュ、磁気ディスクデバイス、及び/又は光ディスクドライブを含む。ストレージデバイス9040は、非限定的例として内部ストレージデバイス、取り付け型ストレージデバイス、及び/又はネットワークアクセス可能ストレージデバイスを含み得る。
【0145】
システム9000は、例えば符号化されたデータ又は復号化されたデータを提供するためにデータを処理するように構成された符号器/復号器モジュール9030を含み得、符号器/復号器モジュール9030はそれ自身のプロセッサ及びメモリを含み得る。符号器/復号器モジュール9030は、符号化及び/又は復号化機能を行うデバイスに含まれ得るモジュールを表し得る。知られているように、このデバイスは、符号化モジュール及び復号化モジュールの一方又は両方を含み得る。加えて、符号器/復号器モジュール9030は、システム9000の別の要素として実装されてもよいし、当業者に知られているようにハードウェアとソフトウェアの組み合わせとしてプロセッサ9010内に取り込まれてもよい。
【0146】
本明細書に記載された様々な態様を行うためにプロセッサ9010又は符号器/復号器9030へロードされるプログラムコードは、ストレージデバイス9040内に格納され、その後、プロセッサ9010による実行のためにメモリ9020へロードされ得る。様々な実施形態によると、プロセッサ9010、メモリ9020、ストレージデバイス9040及び符号器/復号器モジュール9030のうちの1つ又は複数は、本明細書に記載された処理の履行中に1つ又は複数の様々なアイテムを格納し得る。このような格納されるアイテムは、限定しないが、ポイントクラウドフレーム、符号化/復号化されたジオメトリ/テクスチャ映像/画像又は符号化/復号化されたジオメトリ/テクスチャ映像/画像の一部、ビットストリーム、マトリクス、変数、数式の処理からの中間又は最終結果、公式、演算、及び演算論理を含み得る。
【0147】
いくつかの実施形態では、プロセッサ9010及び/又は符号器/復号器モジュール9030の内部のメモリは、命令を格納するために、そして符号化又は復号化中に行われ得る処理のための作業メモリを提供するために使用され得る。
【0148】
しかし、他の実施形態では、処理デバイス(例えば、処理デバイスはプロセッサ9010又は符号器/復号器モジュール9030のいずれかであり得る)の外のメモリがこれらの機能のうちの1つ又は複数の機能のために使用され得る。外部メモリはメモリ9020及び/又はストレージデバイス9040例えばダイナミック揮発性メモリ及び/又は不揮発性フラッシュメモリであり得る。いくつかの実施形態では、外部不揮発性フラッシュメモリがテレビのオペレーティングシステムを格納するために使用され得る。少なくとも1つの実施形態では、RAMなどの高速外部ダイナミック揮発性メモリが、MPEG2パート2(ITU−T勧告H.262及びISO/IEC 13818−2としても知られ、MPEG2映像としても知られる)、HEVC(高効率映像符号化)、又はVVC(汎用映像符号化:Versatile Video Coding)などの映像符号化及び復号化動作のための作業メモリとして使用され得る。
【0149】
システム9000の要素への入力はブロック9130内に示される様々な入力デバイスを介し提供され得る。このような入力デバイスは、限定しないが(i)例えば放送者により無線で送信されるRF信号を受信し得るRF部、(ii)コンポジット入力端子、(iii)USB入力端子、及び/又は(iv)HDMI入力端子を含む。
【0150】
様々な実施形態では、ブロック9130の入力デバイスは当該技術において知られるような関連付けられたそれぞれの入力処理要素を有し得る。例えば、RF部は、(i)所望周波数を選択する(信号を選択する又は信号を周波数帯へ帯域制限するとも呼ばれる)ために、(ii)選択された信号をダウンコンバートするために、(iii)いくつかの実施形態ではチャネルと呼ばれ得る信号周波数帯を(例えば)選択するために狭帯域の周波数へ再び帯域制限するために、(iv)ダウンコンバートされ帯域制限された信号を復調するために、(v)誤り訂正を行うために、そして(vi)データパケットの所望ストリームを選択するために逆多重化するために、必要な要素に関連付けられ得る。様々な実施形態のRF部は、これらの機能を行うために1つ又は複数の要素(例えば周波数選択器、信号選別器、帯域制限器、チャンネル選択器、フィルタ、ダウンコンバータ、復調器、誤り訂正器及び逆多重化器)を含み得る。RF部は、例えば受信信号をより低い周波数(例えば中間周波数又は近ベースバンド周波数)又はベースバンドへダウンコンバートすることを含む様々なこれらの機能を行う同調器を含み得る。
【0151】
1つのセットトップボックス実施形態では、RF部及びその関連入力処理要素は有線(例えばケーブル)媒体上で送信されるRF信号を受信し得る。次に、RF部は、所望周波数帯域へフィルタリング、ダウンコンバート、そして再びフィルタリングすることにより周波数選択を行い得る。
【0152】
様々な実施形態は、上述の(及び他の)要素の順番を再配置する、これらの要素のうちのいくつかを除去する、及び/又は同様又は異なる機能を行う他の要素を追加する。
【0153】
要素を追加することは、既存要素の間に要素を挿入すること(例えば増幅器及びアナログ/デジタル変換器を挿入することなど)を含み得る。様々な実施形態では、RF部はアンテナを含み得る。
【0154】
加えて、USB及び/又はHDMI端子は、システム9000をUSB及び/又はHDMI接続部にわたって他の電子デバイスへ接続するためのそれぞれのインターフェースプロセッサを含み得る。入力処理の様々な態様(例えばリードソロモン誤り訂正)は例えば必要に応じ別個の入力処理IC内又はプロセッサ9010内で実施され得るということを理解すべきである。同様に、USB又はHDMIインターフェース処理の態様は必要に応じ別個のインターフェースIC内又はプロセッサ9010内で実施され得る。復調、エラー訂正、及び逆多重化ストリームは、出力デバイス上の提示のために必要に応じデータストリームを処理するために、様々な処理要素(例えばプロセッサ9010、及びメモリ及びストレージ要素と組み合わせて動作する符号器/復号器9030を含む)へ提供され得る。
【0155】
システム9000の様々な要素は一体化筐体内に設けられ得る。一体化筐体内では、様々な要素は、相互接続され得、好適な接続配置9140(例えばI2Cバス、配線及びプリント回路基板を含む当該技術において知られた内部バス)を使用してデータをその間で送信し得る。
【0156】
システム9000は、通信チャネル9060を介した他のデバイスとの通信を可能にする通信インターフェース9050を含み得る。通信インターフェース9050は、限定しないが、通信チャネル9060上でデータを送信及び受信するように構成された送受信器を含み得る。通信インターフェース9050は限定しないがモデム又はネットワークカードを含み得、通信チャネル9060は例えば有線及び/又は無線媒体内に実現され得る。
【0157】
データは、様々な実施形態ではIEEE802.11などのWi−Fiネットワークを使用することによりシステム9000へストリームされ得る。これらの実施形態のWi−Fi信号は、Wi−Fi通信に適応化された通信チャネル9060及び通信インターフェース9050上で受信され得る。これらの実施形態の通信チャネル9060は通常、ストリーミングアプリケーション及び他のオーバ・ザ・トップ(over-the-top)通信を可能にするインターネットを含む外部ネットワークへのアクセスを提供するアクセスポイント又はルータへ接続され得る。
【0158】
他の実施形態は、データを入力ブロック9130のHDMI接続部上で配送するセットトップボックスを使用することによりストリームデータをシステム9000へ提供し得る。
【0159】
さらに他の実施形態は入力ブロック9130のRF接続部を使用することによりストリームデータをシステム9000へ提供し得る。
【0160】
信号伝達は様々なやり方で成し遂げられ得るということを認識すべきである。例えば、1つ又は複数の構文要素、フラグ等々が、様々な実施形態では情報を対応復号器へ信号伝達するために使用され得る。
【0161】
システム9000は、ディスプレイ9100、スピーカ9110及び他の周辺デバイス9120を含む様々な出力デバイスへ出力信号を提供し得る。他の周辺デバイス9120は、実施形態の様々な例では、スタンドアロンDVR、ディスクプレーヤ、ステレオシステム、照明システム、及びシステム9000の出力に基づく機能を提供する他のデバイスのうちの1つ又は複数を含み得る。
【0162】
様々な実施形態では、制御信号は、AV.Link(オーディオ/ビデオリンク)、CEC(Consumer Electronics Control)、又はユーザ介入の有無にかかわらずデバイス・ツー・デバイス制御を可能にする他の通信プロトコルなどの信号伝達を使用することにより、システム9000と、ディスプレイ9100、スピーカ9110、又は他の周辺デバイス9120との間で伝達され得る。
【0163】
出力デバイスはそれぞれのインターフェース9070、9080、9090を通る専用接続部を介しシステム9000へ通信可能に結合され得る。
【0164】
代替的に、出力デバイスは通信インターフェース9050を介した通信チャネル9060を使用することによりシステム9000へ接続され得る。ディスプレイ9100及びスピーカ9110は、例えばテレビなどの電子デバイス内のシステム9000の他の部品と共に単一ユニットへ組み込まれ得る。
【0165】
様々な実施形態では、ディスプレイインターフェース9070は例えばタイミングコントローラ(T Con)チップなどのディスプレイドライバを含み得る。
【0166】
代替的に、ディスプレイ9100及びスピーカ9110は、例えば入力ブロック9130のRF部が別個のセットトップボックスの一部であれば、他の部品のうちの1つ又は複数から分離され得る。ディスプレイ9100及びスピーカ9110が外部部品であり得る様々な実施形態では、出力信号は、例えばHDMIポート、USBポート、又はCOMP出力を含む専用出力接続を介し提供され得る。
【0167】
別の実施形態によると、画像を表すポイントクラウドを低減する方法であって、ポイントクラウドの3D点を投影面上へ投影することによりポイントクラウドの2Dパッチを取得することであって、2Dパッチは複数の画素を有する、取得すること;パッチを複数の小ブロックへ分割すること;複数の小ブロックの各ブロック内のピクセルの数を判断すること;複数の小ブロックの各ブロック内の判断されたピクセルの数に基づき、更新された占有マップを取得すること;及び更新された占有マップに基づき、再構築されたポイントクラウドを取得することであって、再構築されたポイントクラウドはポイントクラウドの低密度表現である、取得することを含む方法が提供される。
【0168】
別の実施形態によると、画像を表すポイントクラウドを低減するための装置であって、ポイントクラウドの3D点を投影面上へ投影することによりポイントクラウドの2Dパッチを取得する手段であって、2Dパッチは複数の画素を有する、手段;パッチを複数の小ブロックへ分割する手段;複数の小ブロックの各ブロック内のピクセルの数を判断する手段;複数の小ブロックの各ブロック内の判断されたピクセルの数に基づき、更新された占有マップを取得する手段;及び更新された占有マップに基づき、再構築されたポイントクラウドを取得する手段であって、再構築されたポイントクラウドはポイントクラウドの低密度表現である、手段を含む装置が提供される。
【0169】
別の実施形態によると、画像を表すポイントクラウドを低減するための装置であって1つ又は複数のプロセッサを含む装置が提供され、1つ又は複数のプロセッサは、ポイントクラウドの3D点を投影面上へ投影することによりポイントクラウドの2Dパッチを取得することであって、2Dパッチは複数の画素を有する、取得すること;パッチを複数の小ブロックへ分割すること;複数の小ブロックの各ブロック内のピクセルの数を判断すること;複数の小ブロックの各ブロック内の判断されたピクセルの数に基づき、更新された占有マップを取得すること;及び更新された占有マップに基づき、再構築されたポイントクラウドを取得することであって、再構築されたポイントクラウドはポイントクラウドの低密度表現である、取得することを行うように構成される。
【0170】
別の実施形態によると、再構築されたポイントクラウドを含むビットストリームが提供され、ビットストリームは、ポイントクラウドの3D点を投影面上へ投影することによりポイントクラウドの2Dパッチを取得することであって、2Dパッチは複数の画素を有する、取得すること;パッチを複数の小ブロックへ分割すること;複数の小ブロックの各ブロック内のピクセルの数を判断すること;複数の小ブロックの各ブロック内の判断されたピクセルの数に基づき、更新された占有マップを取得すること;及び更新された占有マップに基づき、再構築されたポイントクラウドを取得することであって、再構築されたポイントクラウドはポイントクラウドの低密度表現である、取得することを行うように形成される。
【0171】
別の実施形態によると、実施形態はさらに、更新された占有マップに基づき、更新されたブロック・ツー・パッチ指標を取得することを含み、更新された占有マップの解像度は、更新されたブロック・ツー・パッチ指標の解像度より高い。
【0172】
別の実施形態によると、実施形態はさらに、複数の小ブロックの各小ブロック内のピクセルの数とある値とを比較することを含む。
【0173】
別の実施形態によると、実施形態はさらに、それぞれの小ブロック内のピクセルの数が閾値未満であればそれぞれの小ブロックを未占有に設定することを含む。
【0174】
別の実施形態によると、値は1又は4である。
【0175】
別の実施形態によると、複数の小ブロックは4×4ブロックである。
【0176】
別の実施形態によると、更新されたブロック・ツー・パッチ指標の解像度は16×16である。
【0177】
加えて、一実施形態は、1つ又は複数のプロセッサにより実行されると、上述の実施形態の任意の実施形態による符号化方法又は復号化方法を1つ又は複数のプロセッサに行わせる命令を含むコンピュータプログラムを提供する。本実施形態の1つ又は複数の実施形態はまた、映像データを上記方法に従って復号化又は符号化するための命令をその上に格納したコンピュータ可読ストレージ媒体を提供する。1つ又は複数の実施形態はまた、上記方法に従って生成されたビットストリームをその上に格納したコンピュータ可読ストレージ媒体を提供する。1つ又は複数の実施形態はまた、上記方法に従って生成されたビットストリームを送信又は受信するための方法及び装置を提供する。
【0178】
様々な方法が本明細書において説明され、本方法のそれぞれは、上記方法を実現するための1つ又は複数の工程又は行為を含む。特定順番の工程又は行為が本方法の適切な動作に必要でない限り、特定工程及び/又は行為の順番及び/又は使用は修正され得る又は組み合わせられ得る。
【0179】
いくつかの例がブロック図及び動作フロー図に関し説明された。各ブロックは、規定された論理機能(群)を実施するための1つ又は複数の実行可能命令を含む回路要素、モジュール、又はコードの一部分を表す。他の実施形態ではブロック内に示された機能(群)が示された順番から外れて発生し得るということにも注意すべきである。例えば、連続して示された2つのブロックは実際にはほぼ同時に実行され得る、又はこれらのブロックは時に、関与する機能に依存して逆順で実行され得る。
【0180】
本明細書で説明される実施形態及び態様は、例えば方法又は処理、装置、コンピュータプログラム、データストリーム、ビットストリーム、又は信号で実施され得る。単一形式の実施形態の文脈においてだけ論述された(例えば、方法としてだけ論述された)としても、論述された特徴の実施形態はまた他の形式で(例えば装置又はプログラムにおいて)実施され得る。
【0181】
本方法は例えば、処理デバイス全般(例えばコンピュータ、マイクロプロセッサ、集積回路、又はプログラマブルロジックデバイスを含む)を指す例えばプロセッサ内で実施され得る。プロセッサはまた通信デバイスを含む。
【0182】
加えて、本方法は、命令がプロセッサにより行われることにより実施され得、このような命令(及び/又は実施形態により生成されたデータ値)はコンピュータ可読ストレージ媒体上に格納され得る。コンピュータ可読ストレージ媒体は、1つ又は複数のコンピュータ可読媒体内に具現化されるコンピュータ可読プログラム製品であって、コンピュータにより実行可能であるその上に具現化されたコンピュータ可読プログラムコードを有するコンピュータ可読プログラム製品の形式を採り得る。本明細書で使用されるコンピュータ可読ストレージ媒体は、情報をその中に格納する固有能力とそれからの情報の検索を提供する固有能力とを与えられた非一時的記憶媒体と考えられ得る。コンピュータ可読ストレージ媒体は例えば、限定しないが、電子、磁気、光、電磁気、赤外線、又は半導体システム、装置、デバイス又は上述したものの任意の好適な組み合わせであり得る。以下のものは、本実施形態が適用され得るコンピュータ可読ストレージ媒体のより具体的な例を提供する一方で、当業者により容易に理解されるように、単に例示的であり、網羅的リストでないということを認識すべきである:携帯型コンピュータディスケット;ハードディスク;読み取り専用メモリ(ROM);消去可能プログラマブルROM(EPROM又はフラッシュメモリ);ポータブルコンパクトディスク読み取り専用メモリ(CD−ROM);光学的ストレージデバイス;磁気的ストレージデバイス;又は上述したものの任意の好適な組み合わせ。
【0183】
命令はプロセッサ可読媒体上に有形に具現化されたアプリケーションプログラムを形成し得る。
【0184】
命令は例えばハードウェア、ファームウェア、ソフトウェア又はその組み合わせであり得る。命令は、例えばオペレーティングシステム、別個のアプリケーション、又はこれら2つ組み合わせにおいて見出され得る。したがって、プロセッサは、例えば処理を行うように構成されたデバイスと処理を行うための命令を有するプロセッサ可読媒体を含むデバイス(ストレージデバイスなどの)との両方として特徴付けられ得る。さらに、プロセッサ可読媒体は、命令に加えて又はその代りに、実施形態により生成されたデータ値を格納し得る。
【0185】
装置は例えば適切なハードウェア、ソフトウェア及びファームウェアで実現され得る。このような装置の例は、パーソナルコンピュータ、ラップトップ、スマートフォン、タブレットコンピュータ、デジタルマルチメディアセットトップボックス、デジタルTV受信機、パーソナル録画システム、コネクテッド家庭用機器、頭部装着型ディスプレイデバイス(HMD:head mounted display device、シースルー眼鏡)、プロジェクタ、「ケーブ」(複数のディスプレイを含むシステム)、サーバ、映像符号器、映像復号器、映像復号器からの出力を処理するポストプロセッサ、入力を映像符号器へ提供するプリプロセッサ、ウェブサーバ、セットトップボックス、ポイントクラウド、映像又は画像を処理するための任意の他のデバイス、又は他の通信デバイスを含む。明らかなように、これらの機器は可動であり、移動車両内にすら設置され得る。
【0186】
コンピュータソフトウェアは、プロセッサ9010により、又はハードウェアにより、又はハードウェア及びソフトウェアの組み合わせにより実現され得る。非限定的例として、実施形態はまた1つ又は複数の集積回路により実現され得る。メモリ9020は、技術的環境に適切な任意のタイプのものであり得、非限定的例として光メモリデバイス、磁気メモリデバイス、半導体ベースメモリデバイス、固定メモリ及び着脱可能メモリなどの任意の適切なデータストレージ技術を使用して実現され得る。プロセッサ9010は、技術的環境に適切な任意のタイプのものであり得、非限定的例として、マイクロプロセッサ、汎用コンピュータ、特殊用途コンピュータ、及びマルチコアアーキテクチャに基づくプロセッサのうちの1つ又は複数を包含し得る。
【0187】
当業者に明らかになるように、実施形態は、例えば格納又は送信され得る情報を運ぶようにフォーマット化される多様な信号を生成し得る。情報は、例えば方法を実行するための命令又は説明された実施形態の1つにより生成されるデータを含み得る。例えば、信号は説明された実施形態のビットストリームを運ぶためにフォーマット化され得る。このような信号は、例えば電磁波として(例えば、スペクトルの高周波部分を使用して)又はベースバンド信号としてフォーマット化され得る。フォーマット化は例えば、データストリームを符号化することと、符号化データストリームにより搬送波を変調することとを含み得る。信号が運ぶ情報は例えばアナログ又はデジタル情報であり得る。信号は、知られているように多種多様な有線又は無線リンク上で送信され得る。信号はプロセッサ可読媒体上に格納され得る。
【0188】
本明細書で使用される専門用語は、特定実施形態を説明する目的のためだけのものであり、本発明を制限するようには意図されていない。本明細書で使用されるように、文脈が明示しない限り単数形の冠詞「a」、「an」と定冠詞「the」は複数形も同様に含むように意図され得る。用語「含む(includes/comprises及び/又はincluding/comprising)」は本明細書で使用される場合、述べられた例えば機能、数、工程、動作、要素、及び/又は部品の存在を規定し得るが、1つ又は複数の他の機能、数、工程、動作、要素、部品、及び/又はこれらのグループの存在又は追加を排除するものではないということもさらに理解されることになる。さらに、要素が別の要素に「応答する(responsive)」又は「接続される(connected)」として参照される場合、要素は他の要素に直接応答し得る又は接続され得る、又は介在要素が存在し得る。対照的に、要素が他の要素に「直接応答する(directly responsive)」又は「直接接続される(directly connected)」として参照される場合、いかなる介在要素も存在しない。
【0189】
例えば「A/B」、「A及び/又はB」並びに「A及びBの少なくとも1つ」のケースにおける符号/項「/」、「及び/又は」、並びに「少なくとも1つ」のうちの任意ものの使用は、第1の列記された選択肢(A)だけの選択、又は第2の列記された選択肢(B)だけの選択、又は両方の選択肢(A及びB)の選択を包含するように意図され得る。別の例として、「A、B及び/又はC」並びに「A、B及びCの少なくとも1つ」の場合、このような言い回しは第1の列記された選択肢(A)だけの選択、又は第2の列記された選択肢(B)だけの選択、又は第3の列記された選択肢(C)だけの選択、又は第1及び第2の列記された選択肢(A及びB)だけの選択、又は第1及び第3の列記された選択肢(A及びC)だけの選択、又は第2及び第3の列記された選択肢(B及びC)だけの選択、又はすべての3つの選択肢(A及びB及びC)の選択を包含するように意図されている。これは、当業者及び関連業者に明らかなように、列挙される限り多くのアイテムに拡張され得る。
【0190】
様々な数値(例えばパッチのそれぞれの小ブロック内のピクセルの数との比較のための閾値1又は4)が本出願において使用され得る。特定値は例示的目的のためのものであり得、したがって説明される態様はこれらの特定値に限定されない。
【0191】
第1、第2などの用語は様々な要素を記述するために本明細書において使用され得るがこれらの要素はこれらの用語により制限されないということが理解される。これらの用語は1つの要素を別の要素から区別するためにだけ使用される。例えば、本出願の教示から逸脱することなく第1の要素は第2の要素と称せられる可能性があり、同様に第2の要素は第1の要素と称せられる可能性がある。いかなる順序付けも第1の要素と第2の要素との間に暗示されない。
【0192】
「一実施形態」又は「実施形態」又は「一実施」又は「実施」、及びその他の変形への参照は、特定の機能、構造、特徴等々(実施形態/実施に関連して説明される)が少なくとも1つの実施形態/実施に含まれるということを伝えるために頻繁に使用される。したがって、本出願の全体にわたって様々な場所に出現する語句「一実施形態において」又は「実施形態において」又は「一実施において」又は「実施において」、及び「他の変形において」の出現は必ずしも同じ実施形態を参照するとは限らない。
【0193】
同様に、「実施形態/例/実施に従って」又は「実施形態/例/実施において」、及びその他の変形への本明細書での参照は、特定の機能、構造、又は特徴(実施形態/例/実施に関連して説明される)が少なくとも1つの実施形態/例/実施に含まれ得るということを伝えるために頻繁に使用される。したがって、本明細書の様々な場所における表現「実施形態/例/実施に従って」又は「実施形態/例/実施における」の出現は、同じ実施形態/例/実施を必ずしも参照するとは限らないし、他の実施形態/例/実施の必然的に互いに排他的な別個の又は代替の実施形態/例/実施を参照するとは限らない。
【0194】
特許請求の範囲において出現する参照符号は、例示としてだけのものであり、したがって特許請求の範囲にいかなる限定的影響も与えない。明示的に述べないが、本実施形態/例及び変形は任意の組み合わせ又は副組み合わせで採用され得る。
【0195】
図がフロー図として提示される場合、図はまた対応装置のブロック図を提供するということを理解すべきである。同様に、図がブロック図として提示される場合、図は対応方法/処理のフロー図も提供するということを理解すべきである。
【0196】
線図のうちのいくつかは通信の主方向を示すために通信経路上の矢印を含むが、通信は描写された矢印の反対方向に発生し得るということを理解すべきである。
【0197】
様々な実施形態が復号化に関与する。本出願において使用される「復号化」は、再構築されたポイントクラウド領域における表示又はさらなる処理に好適な最終出力を生成するために、例えば受信されたポイントクラウドフレーム(1つ又は複数のポイントクラウドフレームを符号化する受信されたビットストリームを恐らく含む)に対し行われる処理のすべて又は一部を包含し得る。様々な実施形態では、このような処理は、通常は画像ベース復号器により行われる処理のうちの1つ又は複数を含む。様々な実施形態では、このような処理はまた、又は代替的に、本出願において説明される様々な実施形態の復号器により(例えば
図2の復号器2000又は
図4の復号器4000により)行われる処理を含む。
【0198】
別の例として、一実施形態では「復号化」はエントロピー復号化することだけを指し得、別の実施形態では「復号化」は差分復号化だけを指し得、別の実施形態では「復号化」はエントロピー復号化と差分復号化との組み合わせを指し得る。語句「復号化処理」が、特に動作の部分集合又は一般的により広い復号化処理を参照するように意図されているかは特定説明の文脈に基づき明らかとなり、したがって当業者により十分に理解されると考えられる。
【0199】
様々な実施形態が符号化に関与する。「復号化」に関する上記論述と同様なやり方で、本出願において使用される「符号化」は、符号化されたビットストリームを生成するために例えば入力ポイントクラウドフレームに対し行われる処理のすべて又は一部を包含し得る。様々な実施形態では、このような処理は画像ベース復号器により通常行われる処理のうちの1つ又は複数を含む。様々な実施形態では、このような処理はまた、又は代替的に、本出願において説明される様々な実施形態の復号器により(例えば
図1の復号器1000又は
図3の復号器3000により)行われる処理を含む。
【0200】
加えて、本出願は様々な情報を「判断する」ことに言及し得る。情報を判断することは、例えば情報を推定すること、情報を計算すること、情報を予測すること、又はメモリから情報を取り出すことのうちの1つ又は複数を含み得る。
【0201】
さらに、本出願は様々な情報に「アクセスする」ことに言及し得る。情報へアクセスすることは、例えば情報を受信すること、情報を(例えばメモリから)取り出すこと、情報を格納すること、情報を移動すること、情報を複製すること、情報を計算すること、情報を判断すること、情報を予測すること、又は情報を推定することのうちの1つ又は複数を含み得る。
【0202】
加えて、本出願は様々な情報を「受信すること」に言及し得る。受信することは「アクセスすること」と同様に広義語であるように意図されている。情報を受信することは例えば情報にアクセスすること又は情報を(例えばメモリから)取り出すことを含み得る。さらに、「受信すること」は通常、例えば情報を格納すること、情報を処理すること、情報を送信すること、情報を移動すること、情報を複製すること、情報を消去すること、情報を計算すること、情報を判断すること、情報を予測すること、又は情報を推定することなどの動作中に何らかのやり方で関与する。
【0203】
多くの実施形態が説明された。それにもかかわらず、様々な修正がなされ得るということが理解される。例えば、様々な実施形態の要素は、他の実施形態を生成するために組み合わせられ、修正され、補完され、又は除去され得る。加えて、当業者は「他の構造及び処理が、開示されたものを置換し得る」ということと、「その結果の実施形態は、開示された実施形態と少なくともほぼ同じ結果を実現するために少なくともほぼ同じやり方で少なくともほぼ同じ機能を実行することになる」ということとを理解することになる。したがって、これら及び他の実施形態は本出願により企図される。