以下、図面を参照して本発明の実施形態について具体的に説明する。本明細書の実施例を説明するにおいて、関連した公知の構成または機能に対する具体的な説明が本明細書の要旨を曖昧にする恐れがあると判断される場合にはその詳細な説明は省略する。
ある構成要素が他の構成要素に「連結されて」いるとか「接続されて」いると言及された時は、その他の構成要素に直接的に連結されているかまたは接続されていることもあり得るが、中間に他の構成要素が存在することもあり得ると理解されるべきである。合わせて、本発明で特定構成を「含む」と記述する内容は該当構成以外の構成を排除するものではなく、追加的な構成が本発明の実施または本発明の技術的思想の範囲に含まれ得ることを意味する。
第1、第2などの用語は多様な構成要素を説明することに使用することができるが、前記構成要素は前記用語によって限定されてはならない。前記用語は一つの構成要素を他の構成要素から区別する目的でのみ使用される。例えば、本発明の権利範囲を逸脱せず、第1構成要素は第2構成要素と命名され得、同様に第2構成要素も第1構成要素と命名され得る。
また、本発明の実施例に表わされる構成部は互いに異なる特徴的な機能を表わすために独立的に図示されるもので、各溝成部が分離されたハードウェアや一つのソフトウェアの構成単位からなることを意味するものではない。すなわち、各構成部は説明の便宜上それぞれの構成部で羅列して含んだもので、各構成部のうち少なくとも二つの構成部が一つとなって一つの構成部となるか、一つの構成部が複数個の構成部に分けられて機能を遂行することができ、このような各溝成部の統合された実施例および分離された実施例も本発明の本質から逸脱しない限り本発明の権利範囲に含まれる。
また、一部の構成要素は本発明で本質的な機能を遂行する必須の構成要素ではなく単に性能を向上させるための選択的構成要素であり得る。本発明は単に性能向上のために使用される構成要素を除いた本発明の本質の具現に必須の構成部だけを含んで具現され得、単に性能向上のために使用される選択的構成要素を除いた必須構成要素だけを含んだ構造も本発明の権利範囲に含まれる。
3次元ビデオは3次元立体ディスプレイ装置を通じて使用者に実世界で見て感じるのと同じような立体感を提供する。これと関連し、ISO/IECのMPEG(Moving Picture Experts Group)とITU−TのVCEG(Video Coding Experts Group)の共同標準化グループであるJCT−3V(The Joint Collaborative Team on 3D Video Coding Extension Development)では3次元ビデオの標準化が進行中である。
図1は3次元ビデオシステムの基本構造を概略的に図示したものである。
図1を参照すれば、3次元ビデオ(3D video;3DV)システムは送信側(sender)および受信側(receiver)を含むことができる。このとき、図1の3次元ビデオシステムは3次元ビデオ標準で考慮している基本的な3次元ビデオシステムであり得、3次元ビデオ標準は実映像と実映像に対応される奥行き情報マップを利用して、ステレオスコピック映像だけでなくオートステレオスコピック(autostereoscopic)映像の再生を支援できる進歩したデータ形式とそれと関連した技術に対する標準を含むことができる。
送信側は多視点(multi−view)の映像コンテンツを生成することができる。具体的に、送信側ではステレオカメラおよび多視点カメラを利用してビデオ情報を生成し、奥行き情報カメラを利用して奥行き情報マップ(depth map、またはdepth view)を生成することができる。また、送信側では変換器を利用して2次元映像を3次元映像に変換することもできる。送信側では生成されたビデオ情報と奥行き情報マップなどを利用してN(N≧2)視点(view)(すなわち、多視点)の映像コンテンツを生成することができる。このとき、N視点の映像コンテンツにはN視点のビデオ情報とそれの奥行き情報マップ(Depth−map)情報そしてカメラ関連付加情報などが含まれ得る。N視点の映像コンテンツは3次元ビデオエンコーダで多視点ビデオ符号化方法を使用して圧縮され得、圧縮された映像コンテンツ(ビットストリーム)はネットワークを通じて受信側の端末に伝送され得る。
受信側(receiver)は送信側から受信された映像コンテンツを復号化して多視点(multi−view)の映像を提供することができる。具体的に、受信側からはビデオデコーダ(例えば、3次元ビデオデコーダ、ステレオビデオデコーダ、2次元ビデオデコーダなど)で多視点ビデオ復号化方法を使用して伝送を受けたビットストリームを復号化することによってN視点の映像を復元することができる。このとき、復元されたN視点の映像と奥行き情報マップ基盤のレンダリング(DIBR;Depth−Image−Based Rendering)過程を利用してN視点以上の仮想視点映像を生成することもできる。生成されたN視点以上の仮想視点映像は多様な立体ディスプレイ装置(例えば、N−視点ディスプレイ、ステレオディスプレイ、2次元ディスプレイなど)に合うように再生されて使用者に立体感のある映像を提供することになる。
図2は「balloons」映像の実映像と奥行き情報マップ映像の一例を示す図面である。
図2の(a)は国際標準化機構であるMPEGの3次元ビデオ符号化標準で使用している「balloons」映像を示した図面である。図2の(b)は図2の(a)に図示された「balloons」映像に対する奥行き情報マップ映像を示した図面である。図2の(b)に図示された奥行き情報マップ映像は画面に見える奥行き情報を画素当たり8ビットで表現したものである。
奥行き情報マップ(depth map)は仮想視点映像の生成に使用され、奥行き情報マップは実世界でカメラと実際の事物(object)間の距離(実写映像と同じ解像度で各画素に該当する奥行き情報)を一定のビット数で表現したものである。このとき、奥行き情報マップは奥行き情報マップカメラを利用したり、実際の一般映像(Texture)を利用して獲得することができる。
奥行き情報マップカメラを利用して獲得した奥行き情報マップは主に停止した客体や場面で信頼性の高い奥行き情報を提供するが、一定の距離以内でのみ奥行き情報マップカメラが作動するという問題点がある。このとき、奥行き情報マップカメラはレーザー(laser)や構造化された光線(structured light)技法またはTFL(Time−of−Flight of Light)に基づいた奥行き測定技法を使うことができる。
奥行き情報マップは実際の一般映像(Texture)と変移ベクトル(Disparity Vector)を利用して生成することもできる。変移ベクトルは二つの一般映像間の視点差を表わす情報を意味する。変移ベクトルは現在視点での任意の一つの画素を他の視点での画素と比較して最も類似の画素を見つけた時、現在視点での任意の一つの画素と他の視点での画素(現在視点での任意の一つの画素と最も類似の画素)間の距離を通じて獲得することができる。
実映像とそれの奥行き情報マップは一つのカメラだけでなく複数のカメラで獲得された映像であり得る。複数のカメラで獲得された映像は独立的に符号化することもでき、一般的な2次元ビデオ符号化/復号化コーデックを使用して符号化/復号化することもできる。また、複数のカメラで獲得された映像は視点間の相関性が存在するため、複数のカメラで獲得された映像は符号化効率を高めるために互いに異なる視点間の予測を使用して符号化することができる。
前述した「奥行き情報マップ」は「奥行きマップ」または「奥行きピクチャー(depth picture)」などを意味し得、以下では「奥行き情報マップ」が説明の便宜のために、「奥行きマップ」または「奥行きピクチャー(depth picture)」は混用されることもある。
図3は映像を符号化および復号化するときの映像の分割構造を概略的に示す図面である。
映像を効率的に分割するために符号化ユニット(Coding Unit:CU)別に符号化および復号化を遂行できる。ユニットは構文要素(syntax element)と映像サンプルが含まれたブロックを合わせて称する言葉である。ユニットが分割されるとはユニットに該当するブロックを分割することを意味し得る。
図3を参照すれば、映像300を最大符号化ユニット(Largest Coding Unit;LCU)(以下、LCUという)単位で順次分割した後、LCUごとに分割構造を決定する。本明細書で、LCUはコーディングツリーユニット(Coding Tree Unit、CTU)と同じ意味で使用され得る。分割構造はLCU310内で映像を効率的に符号化するための符号化ユニット(以下、CUという)の分布を意味し、このような分布は一つのCUをその横の大きさおよび縦の大きさの半分に減少された4個のCUに分割するかの可否によって決定され得る。分割されたCUは同じ方式で分割されたCUに対してその横の大きさおよび縦の大きさが半分ずつ減少された4個のCUに再帰的に分割され得る。
このとき、CUの分割はあらかじめ定義された奥行きまで再帰的に分割され得る。奥行き情報はCUの大きさを表わす情報であって、各CUごとに保存され得る。例えば、LCUの奥行きは0で、SCU(Smallest Coding Unit)の奥行きはあらかじめ定義された最大奥行きであり得る。ここで、LCUは前述した通り、最大大きさを有する符号化ユニットであり、SCU(Smallest Coding Unit)は最小大きさを有する符号化ユニットである。
LCU310から横および縦の大きさの半分に分割を遂行するたびにCUの奥行きは1ずつ増加する。例えば、特定奥行きLでCUの大きさが2Nx2Nであれば、分割が遂行されない場合にCUの大きさは依然として2Nx2Nであり、分割が遂行される場合にCUの大きさはNxNとなる。このとき、NxN大きさCUの奥行きは奥行きL+1となる。すなわち、CUの大きさに対応されるNの大きさは奥行きが1ずつ増加するたびに半分に減少する。
図3を参照すれば、最小奥行きが0であるLCUの大きさは64x64画素であり、最大奥行きが3であるSCUの大きさは8x8画素であり得る。このとき、64x64画素のCU(LCU)の奥行きは0、32x32画素のCUの奥行きは1、16x16画素のCUの奥行きは2、8x8画素のCU(SCU)の奥行きは3と表現され得る。
また、特定CUを分割するかの可否に対する情報はCUごとに1ビットの分割情報を通じて表現され得る。この分割情報はSCUを除いたすべてのCUに含まれ得、例えばCUを分割しない場合には分割情報に0を保存することができ、CUを分割する場合には分割情報に1を保存することができる。
前述した「符号化ユニット(Coding Unit、CU)」は「符号化ブロック(Coding Block)」、「コーディングユニット」または「コーディングブロック(Coding Block)」などを意味し得、以下、「符号化ユニット」は説明の便宜のために「符号化ブロック」、「コーディングユニット」または「コーディングブロック」は混用されることもある。
図4は符号化ユニット(CU)を含むことができる予測ユニット(PU)の形態を図示したものである。
LCUから分割されたCUのうちそれ以上分割(split)されないCUは一つ以上の予測ユニットに分割またはパーティショニング(partitioning)できる。
予測ユニット(以下、PUという)は予測を遂行する基本単位であって、スキップ(skip)モード、インター(inter)モード、イントラ(intra)モードのうちいずれか一つに符号化および復号化され、予測ユニットは各モードによって多様な形態にパーティションできる。
図4を参照すれば、スキップモードの場合、CUのパーティションがなくても、CUと同じ大きさを有する2Nx2Nモード410を支援することができる。
インターモードの場合、CUに対して8通りのパーティションされた形態、例えば2Nx2Nモード410、2NxNモード415、Nx2Nモード420、NxNモード425、2NxnUモード430、2NxnDモード435、nLx2Nモード440、nRx2Nモード445を支援することができる。
イントラモードの場合、CUに対して2Nx2Nモード410、NxNモード425を支援することができる。
前述した「予測ユニット(Prediction Unit、PU)」は「予測ブロック(Prediction Block)」を意味し得、以下、「予測ユニット」は説明の便宜のために「予測ブロック」は混用されて使用されることもある。
図5は変換ユニット(TU)のクアッドツリー分割構造の一例を概略的に図示したものである。
変換ユニット(Transform Unit、TU)はCU内で空間変換と量子化過程で使用される基本単位である。TUは正方形の形態あるいは長方形の形態を有することができ、TUはCU内に含まれ得る。TUの大きさはCUの大きさと同一であるか小さいこともあり得、一つのCUは複数の互いに異なる大きさを有するTUを含むことができる。
また、TUはCUと同じ大きさを有することができ、TUはクアッドツリー分割を利用してCUから分割されることもある。TUがクアッドツリーを利用してCUから分割される時、原則的にはTUがCUから再帰的に二回まで分割され得るが、本明細書では図5に図示した通り、TUがCUから再帰的に(recursively)三回以上分割される場合を権利範囲から除外するものではない。
例えば、CUが2Nx2Nの大きさを有する場合、TUはCUと同じ大きさである2Nx2Nの大きさを有することができ、CUから一度クアッドツリー分割された場合にはTUがNxNの大きさを有することができる。また、CUから二回クアッドツリー分割された場合にはTUがN/2xN/2の大きさを有することができ、CUから3回クアッドツリー分割された場合にはTUがN/4xN/4の大きさを有することができる。
前述した「変換ユニット(Transform Unit、TU)」は「変換ブロック(Transform Block)」を意味し得、以下、「変換ユニット」は説明の便宜のために「変換ブロック」は混用されることもある。
図6は3次元ビデオコーデック(codec)で視点間予測(inter view prediction)の構造を示した一例である。
視点1(View 1)と視点2(View 2)は視点0(View 0)を参照映像として使用して視点間予測を遂行することができ、符号化順序は視点1(View 1)と視点2(View 2)より視点0(View 0)が先に符号化されなければならない。
このとき、視点0(View 0)は他の視点にかかわらず独立的に符号化され得るため独立的な視点(Independent View)という。反面、視点1(View 1)と視点2(View 2)は視点0(View 0)を参照映像として使用して符号化されるため依存的な視点(Dependent View)という。独立的な視点映像は一般的な2次元ビデオコーデックを使用して符号化され得る。反面、依存的な視点映像は視点間予測を遂行しなければならないため、視点間予測過程が含まれた3次元ビデオコーデックを使用して符号化され得る。
また、視点1(View 1)と視点2(View 2)の符号化効率を増加させるために視点1(View 1)と視点2(View 2)は奥行き情報マップを利用して符号化され得る。例えば、実映像とそれの奥行き情報マップを符号化する時、実映像と奥行き情報マップは互いに独立的に符号化および/または復号化され得る。または実映像と奥行き情報マップを符号化する時、実映像と奥行き情報マップは図7のように互いに依存的に符号化および/または復号化され得る。
図7は3次元ビデオエンコーダおよび/またはデコーダで実映像(texture view)と奥行き情報マップ(depth view)を符号化および/または復号化する過程を示した一例である。
図7を参照すれば、3次元ビデオエンコーダは実映像(texture view)を符号化する実映像エンコーダ(texture encoder)と奥行き情報マップ(depth view)を符号化する奥行き情報マップエンコーダ(depth encoder)を含むことができる。
このとき、実映像エンコーダは奥行き情報マップエンコーダによって符号化された奥行き情報マップを利用して実映像を符号化することができる。反対に、奥行き情報マップエンコーダは実映像エンコーダによって符号化された実映像を利用して奥行き情報マップを符号化することができる。
3次元ビデオデコーダは実映像を復号化する実映像デコーダ(texture decoder)と奥行き情報マップを復号化する奥行き情報マップデコーダ(depth decoder)を含むことができる。
このとき、実映像デコーダは奥行き情報マップデコーダによって復号化された奥行き情報マップを利用して実映像を復号化することができる。反対に、奥行き情報マップデコーダは実映像デコーダによって復号化された実映像を利用して奥行き情報マップを復号化することができる。
図8はビデオエンコーダの一実施例に係る構成を示すブロック図である。
図8はマルチビュー構造に対して適用可能なビデオエンコーダの一実施例を示したもので、マルチビュー構造に対するビデオエンコーダは単一ビュー構造に対するビデオエンコーダを拡張(extension)して具現することができる。このとき、図8のビデオエンコーダは図7の実映像エンコーダおよび/または奥行き情報マップエンコーダで使用することができ、エンコーダは符号化装置を意味し得る
図8を参照すれば、ビデオエンコーダ800はインター予測部810、イントラ予測部820、スイッチ815、減算器825、変換部830、量子化部840、エントロピー符号化部850、逆量子化部860、逆変換部870、加算器875、フィルタ部880および参照ピクチャーバッファー890を含む。
ビデオエンコーダ800は入力映像に対してイントラ(intra)モードまたはインター(inter)モードで符号化を遂行し、ビットストリーム(bitstream)を出力することができる。
イントラ予測(intra prediction)は画面内予測(intra picture prediction)を意味し、インター予測(inter prediction)は画面間(inter picture)予測またはビュー間(inter−view)予測を意味する。イントラモードである場合スイッチ815がイントラモードに転換され、インターモードである場合スイッチ815がインターモードに転換される。
ビデオエンコーダ800は入力ピクチャーのブロック(現在ブロック)に対する予測ブロックを生成した後、現在ブロックと予測ブロックの差分を符号化することができる。
イントラモードである場合、イントラ予測部820は現在ブロック周辺のすでに符号化されたブロックの画素値を参照画素として利用することができる。イントラ予測部820は参照画素を利用して現在ブロックに対する予測サンプルを生成することができる。
インターモードである場合、インター予測部810は、参照ピクチャーバッファー890に保存されている参照ピクチャーで入力ブロック(現在ブロック)に対応される参照ブロックを特定する動きベクトルを求めることができる。インター予測部810は動きベクトルと参照ピクチャーバッファー890に保存されている参照ピクチャーを利用して動き補償を遂行することによって現在ブロックに対する予測ブロックを生成することができる。
マルチビュー構造において、インターモードで適用されるインター予測はインタービュー予測を含むことができる。インター予測部810は参照ビューのピクチャーをサンプリングしてインタービュー参照ピクチャ−ーを構成することもできる。インター予測部810はインタービュー参照ピクチャーを含む参照ピクチャーリストを利用してインタービュー予測を遂行できる。ビュー間の参照関係はビュー間の依存性を特定する情報を通じてシグナリングされ得る。
一方、現在ビューのピクチャーと参照ビューのピクチャーが同じ大きさである場合に前記参照ビューピクチャーに適用されるサンプリングは参照ビューピクチャーからのサンプルコピーまたは補間による参照サンプルの生成を意味し得る。現在ビューピクチャーと参照ビューピクチャーの解像度が相異する場合に前記参照ビューピクチャーに適用されるサンプリングはアップサンプリングまたはダウンサンプリングを意味し得る。例えば、ビュー間解像度が異なる場合には参照ビューの復元されたピクチャーをアップサンプリングしてインタービュー参照ピクチャーが構成されることもある。
いずれのビューのピクチャーを利用してインタービュー参照ピクチャーを構成するかは符号化費用(coding cost)などを考慮して決定され得る。エンコーダはインタービュー参照ピクチャーで使用されるピクチャーが属するビュー(view)を特定する情報を復号化装置に伝送することができる。
また、インタービュー予測において参照されるビュー、すなわち参照ビューの中で現在ブロックの予測に利用されるピクチャーは現在ピクチャー(現在ビュー内の予測対象ピクチャー)と同一AU(Access Unit)のピクチャーであり得る。
減算器825は現在ブロックと予測ブロックの差分によってレジデュアルブロック(residual block、レジデュアル信号)を生成することができる。
変換部830はレジデュアルブロックに対して変換(transform)を遂行して変換係数(transform coefficient)を出力することができ、変換部830は変換ブロックを利用して変換を遂行できる。変換省略(transform skip)モードが適用される場合に、変換部830はレジデュアルブロックに対する変換を省略することもできる。
量子化部840は変換係数を量子化パラメーターにより量子化して量子化された係数(quantized coefficient)を出力することができる。
エントロピー符号化部850は、量子化部840で算出された値または符号化過程で算出された符号化パラメーター値などを確率分布によりエントロピー符号化してビットストリームを出力することができる。エントロピー符号化部850はビデオの画素情報の他にビデオデコーディングのための情報(例えば、シンタックスエレメント(syntax element)など)をエントロピー符号化することもできる。
符号化パラメーターは符号化および復号化に必要な情報であって、シンタックスエレメントとともにエンコーダで符号化されて復号化装置に伝達される情報だけでなく、符号化あるいは復号化過程で類推され得る情報を含むこともできる。
レジデュアル信号は元の信号と予測信号の差を意味し得、また、元の信号と予測信号の差が変換(transform)された形態の信号または元の信号と予測信号の差が変換されて量子化された形態の信号を意味することもある。ブロック単位で、レジデュアル信号はレジデュアルブロックといえる。
エントロピー符号化が適用される場合、高い発生確率を有するシンボルに少ない数のビットが割り当てられ、低い発生確率を有するシンボルに複数のビットが割り当てられてシンボルが表現されることによって、符号化対象シンボルに対するビット列の大きさを減少させることができる。したがって、エントロピー符号化を通じて映像符号化の圧縮性能を高めることができる。
エントロピー符号化のために指数ゴロム(exponential Golomb)、CAVLC(Context−Adaptive Variable Length Coding)またはCABAC(Context−Adaptive Binary Arithmetic Coding)のような符号化方法が使用され得る。例えば、エントロピー符号化部850は可変長符号化(VLC:Variable Lenghth Coding/Code)テーブルを利用してエントロピー符号化を遂行できる。また、エントロピー符号化部850は対象シンボルの2進化(binarization)方法および対象シンボル/ビン(bin)の確率モデル(probability model)を導き出した後、導き出された2進化方法または確率モデルを使用してエントロピー符号化を遂行することもできる。
量子化された係数は逆量子化部860で逆量子化され、逆変換部870で逆変換され得る。逆量子化、逆変換された係数は加算器875を通じて予測ブロックと合算されて復元ブロックが生成され得る。
復元ブロックはフィルタ部880を経由し、フィルタ部880はデブロッキングフィルタ(deblocking filter)、SAO(Sample Adaptive Offset)、ALF(Adaptive Loop Filter)のうち少なくとも一つ以上を復元ブロックまたは復元ピクチャーに適用することができる。フィルタ部880を経た復元ブロックは参照映像バッファー890に保存され得る。
図9はビデオデコーダの一実施例に係る構成を示すブロック図である。
図9はマルチビュー構造に対して適用可能なビデオデコーダの一実施例を示したもので、マルチビュー構造に対するビデオデコーダは単一ビュー構造に対するビデオデコーダを拡張(extension)して具現することができる。
このとき、図9のビデオデコーダは図7の実映像デコーダおよび/または奥行き情報マップデコーダで使用され得る。説明の便宜のために、本明細書では「復号化」と「デコーディング」が混用され、「復号化装置」と「デコーダ」が混用され得る。
図9を参照すれば、前記ビデオデコーダ900はエントロピー復号化部910、逆量子化部920、逆変換部930、イントラ予測部940、インター予測部950、フィルタ部960および参照ピクチャーバッファー970を含む。
ビデオデコーダ900はエンコーダで出力されたビットストリームの入力を受けてイントラモードまたはインターモードで復号化を遂行し、再構成された映像、すなわち復元映像を出力することができる。
イントラモードである場合、スイッチがイントラ予測のために転換され、インターモードである場合、スイッチがインター予測のために転換され得る。
ビデオデコーダ900は入力を受けたビットストリームから復元されたレジデュアルブロック(residual block)を得て予測ブロックを生成した後、復元されたレジデュアルブロックと予測ブロックを出して再構成されたブロック、すなわち復元ブロックを生成することができる。
エントロピー復号化部910は、入力されたビットストリームを確率分布によりエントロピー復号化して、量子化された係数(quantized coefficient)とシンタックスエレメントなどの情報を出力することができる。
量子化された係数は逆量子化部920で逆量子化され、逆変換部930で逆変換される。量子化された係数を逆量子化/逆変換して、復元されたレジデュアルブロック(residual block)が生成され得る。
イントラモードである場合、イントラ予測部940は現在ブロック周辺のすでに符号化されたブロックの画素値を利用して現在ブロックに対する予測ブロックを生成することができる。
インターモードである場合、インター予測部950は動きベクトルおよび参照ピクチャーバッファー970に保存されている参照ピクチャーを利用して動き補償を遂行することによって、現在ブロックに対する予測ブロックを生成することができる。
マルチビュー構造の場合、インターモードで適用されるインター予測はインタービュー予測を含むことができる。インター予測部950は参照ビューのピクチャーをサンプリングしてインタービュー参照ピクチャーを構成することができる。インター予測部950はインタービュー参照ピクチャーを含む参照ピクチャーリストを利用してインタービュー予測を遂行できる。ビュー間の参照関係はビュー間の依存性を特定する情報を通じてシグナリングされ得る。
一方、現在ビューピクチャー(現在ピクチャー)と参照ビューピクチャーが同じ大きさである場合に前記参照ビューピクチャーに適用されるサンプリングは参照ビューピクチャーからのサンプルコピーまたは補間による参照サンプルの生成を意味し得る。現在ビューピクチャーと参照ビューピクチャーの解像度が相異する場合に前記参照ビューピクチャーに適用されるサンプリングはアップサンプリングまたはダウンサンプリングを意味し得る。
例えば、ビュー間解像度が異なる場合にビュー間にインタービュー予測が適用されると、参照ビューの復元されたピクチャーをアップサンプリングしてインタービュー参照ピクチャーが構成され得る。
このとき、インタービュー参照ピクチャーで使用されるピクチャーが属するビューを特定する情報はエンコーダからデコーダに伝送され得る。
また、インタービュー予測において参照されるビュー、すなわち参照ビューの中で現在ブロックの予測に利用されるピクチャーは現在ピクチャー(現在ビュー内の予測対象ピクチャー)と同一AU(Access Unit)のピクチャーであり得る。
復元されたレジデュアルブロックと予測ブロックは加算器955で加算されて、復元ブロックが生成される。換言すれば、レジデュアルサンプルと予測サンプル加算されて復元されたサンプルまたは復元されたピクチャーが生成される。
復元されたピクチャーはフィルタ部960でフィルタリングされる。フィルタ部960はデブロッキングフィルタ、SAO、ALFのうち少なくとも一つ以上を復元ブロックまたは復元ピクチャーに適用することができる。フィルタ部960は再構成された(modified)あるいはフィルタリングされた(filtered)復元ピクチャー(reconstructed picture)を出力する。復元映像は参照ピクチャーバッファー970に保存されてインター予測に使用され得る。
図8と図9ではそれぞれのモジュールが互いに異なる機能を遂行するものとして説明したが、本発明はこれに限定されず、一つのモジュールで二以上の機能を遂行することができる。例えば、図8と図9でイントラ予測部とインター予測部の動作は一つのモジュール(予測部)で遂行されることもある。
一方、図8および図9では一つのエンコーダ/デコーダがマルチビューに対する符号化/復号化をすべて処理するものとして説明したが、これは説明の便宜のためのものであって、エンコーダ/デコーダはビュー別に構成されることもある。
この場合、現在ビューのエンコーダ/デコーダは他のビューの情報を利用して現在ビューの符号化/復号化を遂行できる。例えば、現在ビューの予測部(インター予測部)は他のビューのピクセル情報または復元されたピクチャー情報を利用して現在ブロックに対するイントラ予測またはインター予測を遂行することもできる。
ここでは、ビュー間の予測だけを例にして説明したが、エンコーダ/デコーダはビュー別に構成されるか一つの装置がマルチビューを処理するかにかかわらず、他のビューの情報を利用して現在レイヤーに対する符号化/復号化を遂行できる。
本発明でビューに関する説明はスケーラビリティーを支援するレイヤー(layer)に対しても同様に適用できる。例えば、本発明でビュー(view)はレイヤー(layer)であり得る。
図10は3次元ビデオコーデックに対する予測構造の一例を示す図面である。説明の便宜上図10では3台のカメラで獲得した実映像と実映像に対応される奥行き情報マップを符号化するための予測構造を示している。
図10では3台のカメラで獲得された3つの実映像は視点(view)によりT0、T1、T2で表現し、実映像に対応される3つの奥行き情報マップは視点(view)によりそれぞれD0、D1、D2で表現した。ここで、T0とD0は視点0(View 0)で獲得した映像で、T1とD1は視点1(View 1)で獲得した映像であり、T2とD2は視点2(View 2)で獲得した映像である。このとき、図10に図示された四角形は映像(ピクチャー)を表わす。
各映像(ピクチャー)は符号化/復号化タイプによりIピクチャー(Intra Picture)、Pピクチャー(Uni−prediction Picture)、Bピクチャー(Bi−prediction Picture)に分けられ、各ピクチャーは各ピクチャーの符号化/復号化タイプにより符号化/復号化され得る。Iピクチャーではインター予測なしに映像自体を符号化し、Pピクチャーでは単方向に存在する参照映像だけを利用してインター予測をし、Bピクチャーでは両方向に存在する参照映像を利用してインター予測を遂行できる。このとき、図10の矢印は予測方向を表わす。すなわち、予測方向により実映像とそれの奥行き情報マップは互いに依存的に符号化/復号化され得る。
インター予測を通じて映像の符号化/復号化を遂行するためには現在ブロックの動き情報が必要である。現在ブロックの動き情報を類推する方法としては、現在ブロックと隣接したブロックの動き情報を利用する方法、同じ視点内で時間的相関性を利用する方法、または隣接した視点で視点間相関性を利用する方法があり、前述したインター予測方法は一つのピクチャーで混用されて使用され得る。ここで、現在ブロックは予測が遂行されるブロックをいう。動き情報は動きベクトル、参照映像番号および/または予測方向(例えば、単方向予測であるか両方向予測であるか、時間的相関性を利用するかまたは視点間相関性を利用するかの可否など)を意味することもある。
このとき、予測方向は参照ピクチャー目録(Reference Picture List:RefPicList)の使用により、単方向予測と両方向予測に大別され得る。単方向予測は純方向参照ピクチャー目録(LIST 0、L0)を使う順方向予測(Pred_L0:Prediction L0)と逆方向参照ピクチャー目録(LIST 1、L1)を使う逆方向予測(Pred_L1:Prediction L1)に区分される。また、両方向予測(Pred_BI:Prediction BI)は順方向参照ピクチャー目録(LIST 0)と逆方向参照ピクチャー目録(LIST 1)をすべて使用して、順方向予測と逆方向予測がすべて存在することをいい、順方向参照ピクチャー目録(LIST 0)を逆方向参照ピクチャー目録(LIST 1)にコピーして順方向予測が二つ存在する場合も両方向予測に含むことができる。
予測方向の有無はpredFlagL0、predFlagL1を使用して定義することができる。このとき、predFlagL0は順方向参照ピクチャー目録(List 0)の使用可否を指示する指示子であり、predFlagL1は逆方向参照ピクチャー目録(List 1)の使用可否を指示する指示子に該当する。例えば、単方向予測で順方向予測の場合にはpredFlagL0が「1」となりpredFlagL1は「0」となり得、単方向予測で逆方向予測の場合にはpredFlagL0が「0」となりpredFlagL1が「1」となり得、両方向予測の場合にはpredFlagL0が「1」となりpredFlagL1が「1」となり得る。
動き予測方法は1)動きベクトル予測器(Motion Vector Predictor)と差分動きベクトル(Motion Vector Difference)を利用する方法と、2)動き併合を使用するかの可否を表わすフラグ(merge_flag)といずれの位置にある動きを相続するかに対する情報であるインデックス(merge_idx)を利用する併合動き誘導すなわち、マージ方法がある。以下、マージに関する具体的な内容を後述する。
図11は現在ブロックに対するマージ候補リスト(merge candidate list)の構成に使用される周辺ブロックを示した一例である。
マージモード(merge mode)はインター予測を遂行する方法の中の一つであり、マージモードでは現在ブロックの動き情報(例えば、動きベクトル、参照ピクチャーリスト、参照ピクチャーインデックスのうち少なくとも一つ)として現在ブロックの周辺ブロックの動き情報を利用することができる。このとき、周辺ブロックの動き情報を現在ブロックの動き情報として使用するのをマージング(merging)、動き併合(motion merging)または併合動き(merging motion)という。
マージモードでは符号化ユニット(Coding Unit:CU、以下「CU」という)単位の併合動き(merging)と予測ユニット(Prediction Unit:PU、以下「PU」という)単位の併合動きが可能である。
ブロック単位(例えば、CUまたはPU)(以下、説明の便宜のために「ブロック」という)で併合動きを遂行する場合には、ブロック パーティション(partition)別に併合動きを遂行するかの可否に関する情報と現在ブロックに隣接した周辺ブロックのうちいずれのブロックと併合動きをするかに対する情報が必要である。
併合動きを遂行するためにマージ候補リスト(merging candidate list)すなわち、併合動き候補リストを構成することができる。
マージ候補リストは動き情報のリストをいい、マージモードが遂行される前に生成され得る。ここで、マージ候補リストの動き情報は現在ブロックに隣接した周辺ブロックの動き情報であるか、すでにマージ候補リストに存在する動き情報を組み合わせて作った新しい動き情報であり得る。周辺ブロックの動き情報(例えば、動きベクトルおよび/または参照ピクチャーインデックス)は周辺ブロックによって特定されるあるいは周辺ブロックに保存された(周辺ブロックのデコーディングに使用された)動き情報であり得る。
このとき、周辺ブロックは図11に図示された通り、現在ブロックと空間的(spatial)に隣接して位置した周辺ブロック(neighboring block)(A、B、C、D、E)と、現在ブロックと時間的(temporal)に対応される同一位置の候補ブロック(co−located block)(HあるいはM)を含むことができる。同一位置の候補ブロックは現在ブロックを含む現在ピクチャーと時間的に対応される同一位置のピクチャー(co−located picture)内の対応位置のブロックをいう。同一位置のピクチャー内のHブロックが使用可能であればHブロックを同一位置の候補ブロックに決定し、Hブロックが使用不可能であれば同一位置のピクチャー内のMブロックを同一位置の候補ブロックに決めることができる。
マージ候補リストの構成時に、周辺ブロック(A、B、C、D、E)および同一位置の候補ブロック(HあるいはM)の動き情報が現在ブロックのマージ候補リストを構成するマージ候補(merge candidate)として利用できるかが判断される。すなわち、現在ブロックのインター予測に利用可能なブロックの動き情報がマージ候補としてマージ候補リストに追加され得る。
例えば、Xブロックに対するマージ候補リストを構成する方法で、1)まず、周辺ブロックAが使用できる場合、周辺ブロックAをマージ候補リストに含ませる。2)その後、周辺ブロックBの動き情報が周辺ブロックAの動き情報と同一でない場合にのみ周辺ブロックBをマージ候補リストに含ませる。3)同じ方法で周辺ブロックCの動き情報が周辺ブロックBの動き情報とは異なる場合にのみ周辺ブロックCをマージ候補リストに含ませ、4)周辺ブロックDの動き情報が周辺ブロックCの動き情報とは異なる場合にのみ周辺ブロックDをマージ候補リストに含ませる。また、5)周辺ブロックEの動き情報が周辺ブロックDの動き情報と異なる場合にのみ周辺ブロックEをマージ候補リストに含ませ、6)最後に、マージ候補リストには周辺ブロックH(あるいはM)を含ませる。すなわち、それぞれの周辺ブロックはA→B→C→D→E→H(あるいはM)ブロックの順序でマージ候補リストに追加され得る。ここで、同じ動き情報は同じ動きベクトル、同じ参照ピクチャー、および同じ予測方向(単方向、両方向)を使用するものを意味し得る。
ここでは、周辺ブロックをマージ候補としてマージ候補リストに追加するという表現と周辺ブロックの動き情報をマージ候補としてマージ候補リストに追加するという表現を混用したが、これは説明の便宜のためのものであって、二つの表現は実質的に同じである。例えば、マージ候補としての周辺ブロックは該当ブロックの動き情報を意味するといえる。
図12は隣接した視点の動き情報を利用して、現在ブロックの動き情報を誘導する過程の一例を示す図面である。
図12では説明の便宜のために一つの隣接した視点だけを利用して現在ブロックの動き情報を誘導する過程を例示したが、隣接した視点は二以上の場合もあり得る。
図12を参照すれば、3次元ビデオシステムでは動き情報を効率的に符号化/復号化するために、隣接した視点の動き情報を利用することができる。具体的に、図12の現在ブロック(現在位置Xに対するブロック)は現在ブロックに対する動き情報を誘導するために、隣接した視点に位置した対象ブロック(参照位置XR)を探す。このとき、隣接した視点に位置した対象ブロックは現在ブロックに対応されるブロックを意味し、現在視点での現在ピクチャーと参照視点での現在ピクチャーはカメラ位置の差があるだけで、前述した通り、変移ベクトル(Disparity Vector、DV)を利用して隣接した視点に位置した対象ブロックを誘導することができる。
図13は一つの予測ユニット(Prediction Unit、PU)が複数のサブ予測ユニット(Sub−Prediction Unit)に分けられる一例を示す図面である。
図13では64x64の大きさを有する予測ユニット(Prediction Unit、PU)が8x8大きさのサブ予測ユニットに分けられる一例を示している。図13では説明の便宜のために、予測ユニットが64x64の大きさを有するものとして説明するが、予測ユニットは64x64の大きさだけでなく、32x32、16x16、8x8、4x4などの大きさを有することもできる。3次元ビデオシステムでは一つの予測ユニットが複数のサブ予測ユニット(Sub−Prediction Unit)に分割され得る。このとき、変移ベクトルを利用した動き情報の誘導はサブ予測ユニット単位で遂行される。サブ予測ユニットの大きさは既設定された大きさ(例えば、4x4、8x8、16x16など)を有することができ、サブ予測ユニットの大きさは符号化時に指定され得る。サブ予測ユニットの大きさに対する情報はビデオパラメーターセット拡張シンタックス(Video Parameter Set Extension syntax、VPS Extension syntax)内に含まれてシグナリングされ得る。
図14は参照ブロックを利用して現在ブロックの動き情報を誘導する過程の一例を示す図面である。
現在ブロックに対する動き情報の誘導過程は参照ブロックに存在する動き情報を現在ブロックの動き情報に設定することを意味し、一般的に動き情報の誘導は予測ブロック単位でなされる。しかし、3次元ビデオシステムでは動き情報を効率的に符号化/復号化するために、現在視点(view)で現在ピクチャーに位置した現在ブロック(X)に対して予測ブロック単位だけでなく、それぞれのサブ予測ユニット単位でも動き情報を誘導することができる。
すなわち、3次元ビデオシステムでは参照ブロック(XR)のサブ予測ユニットに存在する動き情報を現在ブロック(X)のサブ予測ユニットに対する動き情報に設定することができる。このとき、参照ブロック(XR)は参照視点での現在ピクチャーに位置した参照ブロック(XR)を意味し得、具体的な動き情報誘導過程は後述する。
インター予測部は前述した通り、参照視点の誘導された参照ブロック内で予測ユニット単位だけでなく、サブ予測ユニット単位でも動き情報を誘導することができる。インター予測部が参照視点の誘導された参照ブロック内でサブ予測ユニット単位で動き情報を持ち込む時すべてのサブ予測ユニットが動き情報を有しているのではない。すなわち、参照ブロック内では動き情報を持ち込むことができない部分がある。参照ブロック内で動き情報を持ち込むことができない場合を補完するために、インター予測部は参照ブロックの中央に位置したサブ予測ユニットに使用できる動き情報が存在するか検査する。
参照ブロックの中央に位置したサブ予測ユニットに使用できる動き情報が存在する場合、インター予測部は参照ブロックの中央に位置したサブ予測ユニットに存在する動き情報を保存空間に保存し、保存空間はビデオ符号化/復号化装置の他に存在する別途の保存装置を意味し得、ビデオ符号化/復号化装置内部に位置することもある。また、保存空間はメモリー、プロセッサなどを意味し得、保存空間は物理的空間ではない仮想のすなわち、論理的保存空間を意味することもある。このとき、保存空間に保存された動き情報は初期動き情報を意味し得る。
インター予測部が現在ブロックのサブ予測ユニットに対して動き情報を誘導する時、現在ブロックのサブ予測ユニットに対応される参照ブロックのサブ予測ユニットに動き情報が存在しない場合には、前述した初期動き情報を現在ブロックのサブ予測ユニットに対する動き情報として使用することができる。万一、参照ブロックの中央に位置したサブ予測ユニットに使用できる動き情報が存在しない場合、インター予測部は時間的視点間動き情報予測は使用しないことがある。このとき、動き情報は動き併合候補すなわち、マージ候補として使用され得る。
3次元映像で、併合動き候補リストすなわち、マージ候補リスト(Merge candidate list)を構成する時、1)既存の2次元映像符号化/復号化(例えば、HEVCなど)でのマージ候補を誘導した後、2) 3次元映像符号化/復号化(例えば、3D−HEVCなど)でのマージ候補を誘導してリストを構成することができる。説明の便宜のために2次元映像符号化/復号化でのマージ候補が誘導された後、3次元映像符号化/復号化でのマージ候補が誘導されると叙述したが、本明細書ではマージ候補の誘導は前述した順序によって限定されるものではない。また、マージ候補リストを構成する時、原則的には定められた順序によりマージ候補がリストに配列されるが、本明細書では映像符号化/復号化の状況によってマージ候補が適応的に再配列されることを権利範囲から除外するものではない。
既存の2次元映像符号化/復号化マージ候補は現在ブロックに対して空間的(spatial)時間的(temporal)に隣接したブロックの動き情報を意味し得、3次元映像符号化/復号化マージ候補は3次元映像の映像の特性に合うように追加されたマージ候補を意味し得る。
ここで、現在ブロックに対して空間的、時間的に隣接したブロックの動き情報はA0、A1、B0、B1、B2、Col(HあるいはM)候補を含むことができ、A1は前述した通り、予測対象ブロックの左側に位置したブロックの動き情報を意味し、B1は前述した通り、予測対象ブロックの上側に位置したブロックの動き情報を意味し得る。B0は前述した通り、予測対象ブロックの右上側に位置したブロックの動き情報を意味し、A0は前述した通り、予測対象ブロックの左下側に位置したブロックの動き情報を意味し、B2は前述した通り、予測対象ブロックの左上側に位置したブロックの動き情報を意味し得る。また、Col(HあるいはM)は前述した通り、現在ブロックを含む現在ピクチャーと時間的に対応される同一位置のピクチャー(co−located picture)内の対応位置のブロックを通じて誘導された動き情報を意味し得る。
また、3次元映像の特性に合うように追加されたマージ候補は、モーションパラメーター相続(Motion Parameter Inheritance、MPI)、インタービューマージ候補(inter−view merging candidate、IvMC)、インタービュー変移ベクトル候補(inter−view disparity vector candidate、IvDC)、視点合成予測(View synthesis prediction、VSP)、シフトインタービュー(ShiftIV)、BiおよびZero候補を含むことができる。このとき、MPIは前述した実映像の動き情報を相続する動き情報を意味し、IvMCは視点間マージを利用する動き情報を意味し、IvDCは前述した変移ベクトルを利用(すなわち、視差を利用)して誘導された動き情報を意味し得る。また、VSPは視点を合成して誘導した動き情報を意味し、ShiftIVは補正された視差を利用して誘導された動き情報を意味し得る。Biは両方向を利用して誘導された動き候補を意味し、Zeroはゼロベクトルを意味し得る。
図15は視点合成予測(View−Synthesis Prediction、VSP)の概念を概略的に図示したものである。
図15に示した通り、視点合成予測はテクスチャピクチャー(Texture picture)、参照テクスチャピクチャー(Reference texture picture)および参照奥行きピクチャー(Reference depth picture)を利用することができ、テクスチャピクチャーには現在ブロック(Current block)および隣接ブロック(neighboring block)が含まれ得る。また、参照奥行きピクチャーにはVSPに使用される奥行きブロックと、VSPに使用される奥行きブロックに隣接したブロックが含まれ得る。
テクスチャピクチャーはマージ候補の誘導がなされるピクチャーであり、テクスチャピクチャーは実映像を意味し得る。現在ブロックはテクスチャピクチャー内に存在し、予測がなされるブロックを意味する。現在ブロックは符号化ユニットを意味し得、現在ブロックで予測がなされるという点で、現在ブロックは予測ユニットまたは前述したサブ予測ユニットを意味することもある。「テクスチャピクチャー」は「テクスチャスライス(texture slice)」、「テクスチャビュー(texture view)」、「テクスチャ映像(texture image)」および/または「実ピクチャー」などを意味し得、説明の便宜のために「テクスチャピクチャー」は「テクスチャスライス(texture slice)」、「テクスチャビュー(texture view)」、「テクスチャ映像(texture image)」および/または「実ピクチャー」などと表現され得る。
参照テクスチャピクチャーはテクスチャピクチャーとは異なる視点のテクスチャピクチャーを意味し、テクスチャピクチャーに対する参照テクスチャピクチャーは複数の個数であり得る。原則的に、参照テクスチャピクチャーはテクスチャピクチャーとは異なる視点のテクスチャピクチャーを意味するが、本明細書では参照テクスチャピクチャーはテクスチャピクチャーと同じ視点である場合を排除するものではない。また、「参照テクスチャピクチャー」は「参照テクスチャスライス(Reference texture slice)」、「参照テクスチャビュー(Reference texture view)」、「参照テクスチャ映像(Reference texture image)」および/または「参照実ピクチャー」などを意味し得、説明の便宜のために「参照テクスチャピクチャー」は「参照テクスチャスライス(Reference texture slice)」、「参照テクスチャビュー(Reference texture view)」、「参照テクスチャ映像(Reference texture image)」および/または「参照実ピクチャー」などと表現され得る。
参照奥行きピクチャーは前述したテクスチャピクチャーとは異なる視点に存在する奥行き情報マップを意味し、奥行き情報マップは前述した過程を通じて求めることができる。原則的に、参照奥行きピクチャーはテクスチャピクチャーとは異なる視点の奥行きピクチャーを意味するが、本明細書では参照奥行きピクチャーがテクスチャピクチャーと同じ視点である場合を排除するものではない。また、「参照奥行きピクチャー」は「参照奥行きスライス(Reference depth slice)」、「参照奥行きビュー(Reference depth view)」、「参照奥行き映像(Reference depth image)」および/または「参照奥行きピクチャー」などを意味し得、説明の便宜のために「参照奥行きピクチャー」は「参照奥行きスライス(Reference depth slice)」、「参照奥行きビュー(Reference depth view)」、「参照奥行き映像(Reference depth image)」および/または「参照奥行きピクチャー」などと表現され得る。
VSPは変移ベクトル(Disparity Vector:DV)、参照された奥行き情報マップと該当視点の一般映像情報を利用して生成される。
VSPを生成する方法に対して図15を通じてより具体的に説明すれば、1. 3次元映像符号化/復号化装置は現在ブロックと隣り合うブロックに存在するDVを誘導する。以後、3次元映像符号化/復号化装置は2. 隣り合うブロックからDVをコピーし、3. 参照テクスチャピクチャーを利用したバックワードワーピングを通じて仮想の新しく生成されたブロックを生成する。以後、現在ブロックは仮想の新しく生成されたブロックをVSP予測情報、すなわちVSPマージ候補として使用する。
図16は3次元映像符号化/復号化で、VSP候補として相続される周辺ブロックの一例を図示したものである。
3次元映像符号化/復号化でインター予測をする場合、現在ブロックの空間的に隣り合うブロックとしてA0、A1、B0、B1、B2があり得、現在ブロックは予測ブロックおよび/またはサブ予測ユニットを意味し得、現在ブロックは正方形または非正方形であり得る。隣り合うブロックはそれぞれ予測ブロック/サブ予測ブロック単位であり得、隣り合うブロックは復元されたブロックを意味することもある。また、隣り合うブロックのそれぞれの大きさは現在ブロックと同じ大きさまたは現在ブロックと相異する大きさを有することができ、現在ブロックと相異する大きさを有するとは現在ブロックより小さい大きさまたは大きい大きさを有することを意味し得、隣り合うブロックは正方形または非正方形であり得る。
このとき、現在ブロックの隣り合うブロックのうち、VSPを利用する空間的に隣り合うブロックが存在することができ、例えば、図16と同様に、現在ブロックの隣り合うブロックすなわち、周辺ブロックのうちA1、B0がVSPを使用することもできる。
空間的周辺ブロック(例えば、A0、A1、B0、B1、B2)がVSPを使用する場合、VSPを使用する空間的周辺ブロックはVSPで相続(Inheritance)するとし、相続されたVSP候補(Inherited VSP candidate)といえ、このとき、相続されたVSP候補は現在ブロックのVSP候補と同じ変移ベクトルを使用する。
図17は3次元映像符号化/復号化で、マージ候補リストの一例を図示したものである。
図17は図16と同様に、現在ブロックの隣り合うブロックのうちA1、B0がVSP候補を使用する場合、すなわち、A1、B0が相続されたVSP候補である場合のマージ候補リスト生成方法に対する一例を概略的に図示したものである。図17ではA1、B0が相続されたVSP候補である場合に対して叙述したが、空間的周辺ブロック(A0、A1、B0、B1、B2)それぞれは相続されたVSP候補を有することもできる。すなわち、左下側(A0)、左側(A1)、上側(B1)、右上側(B0)および/または左上側(B2)に位置したそれぞれのブロックはそれぞれVSP候補として相続が可能であり、このとき、他の周辺ブロックが相続されたVSP候補であるかとはかかわらずそれぞれの周辺ブロックはVSP候補として相続が可能である。
図16、図17での一例のように、A1、B0が相続されたVSP候補である場合にはマージ候補リストにA1、IvDC、VSP、B0が挿入される。このとき、A1、B0が相続されたVSP候補である場合にはマージ候補リストに同じ変移ベクトルが重複的に挿入されることとなる。マージ候補リストに同じ変移ベクトルが重複的に挿入すなわち、複数の同じ候補がリストに挿入されることは符号化効率的側面から見た時、利得のない構成であって、かえってより効率が良好であり得る他のマージ候補のマージ候補リスト挿入可能性を制限する構成である。
したがって、複数の同じマージ候補が重複的にマージ候補リストに挿入されることを防止して符号化効率を向上させることが要され、複数の同じマージ候補が重複的にマージ候補リストに挿入される代わりに、すでに挿入されたマージ候補とは異なるマージ候補がマージ候補リストに挿入される装置および方法が要求される。
以下、3次元映像符号化/復号化で、VSP候補の挿入が制限される装置および方法を提案し、本装置および方法を通じて、マージ候補リストでのVSP候補活用の効率性と他の候補の活用可能性が確保され得る。また、本装置および方法を通じて、マージリストを構成するにあたっては、一つのVSP候補だけを使用することができる。また、3次元映像符号化/復号化でVSP候補間に発生し得る重複性が除去され、マージリストに他の候補を挿入することができるため、符号化/復号化効率を向上することができる。
図18は本発明の一実施例に係る、相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する方法のフローチャートである。
図18によれば、3次元映像符号化/復号化装置は併合動き候補すなわち、マージ候補を誘導する(S1810)。誘導されたマージ候補は前述した通り、A0、A1、B0、B1、B2、Col(HあるいはM)、モーションパラメーター相続(Motion Parameter Inheritance、MPI)、インタービューマージ候補(inter−view merging candidate、IvMC)、インタービュー変移ベクトル候補(inter−view disparity vector candidate、IvDC)、視点合成予測(View synthesis prediction、VSP)、シフトインタービュー(ShiftIV)、Biおよび/またはZero候補を含むことができ、また、それぞれのマージ候補に対する具体的な内容は前述した内容と同じである。
段階S1810で3次元映像符号化/復号化装置は誘導されたマージ候補をマージ候補リストに挿入することができる。例えば、段階S1810での誘導されたマージ候補はA1および/またはB1を意味し得、3次元映像符号化/復号化装置はA1および/またはB1をマージ候補リストに挿入することもできる。
3次元映像符号化/復号化装置は空間的候補のうちVSPを使用するブロックがあるかに対して判断する(S1820)。空間的候補は空間的周辺ブロックを意味し得、空間的周辺ブロックは前述した通り、A0、A1、B0、B1、B2および/またはCol(HまたはM)候補を含むことができ、例えば、段階S1820で判断される空間的候補ブロックはA1、および/またはB1であり得る。また、空間的候補のうちVSPを使用するブロックは相続されたVSP候補を意味し得、相続されたVSP候補に対する具体的な説明は前述した内容と同じである。
空間的候補のうちVSPを使用するブロックがない場合、3次元映像符号化/復号化装置はVSP候補をマージ候補リストに挿入する(S1830)。このとき、マージ候補リストに挿入されるVSP候補は現在ブロックのVSP候補を意味し、VSP候補に対する具体的な内容は前述した内容と同じである。
VSP候補をマージ候補リストに挿入した後、3次元映像符号化/復号化装置は残りの併合動き候補を誘導(S1840)する。このとき、残りの併合動き候補すなわち、残りのマージ候補はA0、A1、B0、B1、B2、Col(HあるいはM)、モーションパラメーター相続(Motion Parameter Inheritance、MPI)、インタービューマージ候補(inter−view merging candidate、IvMC)、インタービュー変移ベクトル候補(inter−view disparity vector candidate、IvDC)、視点合成予測(View synthesis prediction、VSP)、シフトインタービュー(ShiftIV)、Biおよび/またはZero候補を含むことができ、万一、段階S1810〜S1830でマージリストに挿入された候補がある場合、A0、A1、B0、B1、B2、Col(HあるいはM)、モーションパラメーター相続(Motion Parameter Inheritance、MPI)、インタービューマージ候補(inter−view merging candidate、IvMC)、インタービュー変移ベクトル候補(inter−view disparity vector candidate、IvDC)、視点合成予測(View synthesis prediction、VSP)、シフトインタービュー(ShiftIV)、Biおよび/またはZero候補のうちマージリストに挿入された候補を除いた候補を意味し得る。
例えば、段階S1810〜段階S1830でマージ候補リストにA1、B1、VSP候補が挿入された場合、段階S1840では3次元映像符号化/復号化装置がA1、B1、VSP候補を除いた残りのマージ候補をマージ候補リストに挿入するかの可否に対して誘導することができる。
もし、段階S1820で空間的候補のうちVSPを使用するブロックすなわち、相続されたVSP候補がある場合、3次元映像符号化/復号化装置はVSP候補をマージ候補リストに挿入せず、残りの併合動き候補を誘導する(S1840)。3次元映像符号化/復号化装置が残りの併合動き候補を誘導することに対する具体的な内容は前述した内容と同じである。
図19は本発明の他の実施例に係る、相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する方法を3D−HEVCに具現したフローチャートである。
図19によれば、3次元映像符号化/復号化装置は併合動き候補すなわち、マージ候補を誘導する(S1910)。このとき、3次元映像符号化/復号化装置がマージ候補を誘導する具体的な内容は前述した内容と同じである。
3次元映像符号化/復号化装置は空間的候補のうちVSPを使用するブロックがあるかに対して判断する(S1920)。このとき、3次元映像符号化/復号化装置が空間的候補のうちVSPを使用するブロックがあるかに対して判断する具体的な内容は前述した内容と同じである。
もし、空間的候補のうちVSPを使用する周辺ブロックがある場合、3次元映像符号化/復号化装置はskipVSPをtrueに設定する(S1930)。このとき、skipVSPはVSP候補をマージ候補リストに挿入するかしないかを判断する情報を意味し、skipVSPがtrueの場合にはVSP候補をマージ候補リストに挿入しない。また、skipVSPがfalseの場合にはVSP候補をマージ候補リストに挿入する。
もし、空間的候補のうちVSPを使用する周辺ブロックがない場合、3次元映像符号化/復号化装置はskipVSPをfalseに設定する(S1940)。
以後、3次元映像符号化/復号化装置はskipVSPがtrueであるか判断する(S1950)。
万一、skipVSPがtrueではない場合、すなわち、skipVSPがfalseの場合、3次元映像符号化/復号化装置はVSP候補をマージ候補リストに挿入する(S1960)。このとき、3次元映像符号化/復号化装置がVSP候補をマージ候補リストに挿入する具体的な内容は前述した内容と同じである。
以後、3次元映像符号化/復号化装置は残りの併合動き候補を誘導する(S1970)。このとき、3次元映像符号化/復号化装置が残りの併合動き候補を誘導する具体的な内容は前述した内容と同じである。
万一、段階S1950でskipVSPがtrueである場合、3次元映像符号化装置はVSP候補をマージ候補リストに挿入せず、残りの併合動き候補を誘導する(S1970)。skipVSPがtrueである場合、3次元映像符号化装置がVSP候補をマージ候補リストに挿入せず、残りの併合動き候補を誘導する具体的な内容は前述した内容と同じである。
前述した方法では相続されたVSPがある場合、3次元映像符号化/復号化装置はVSP候補をマージ候補リストに追加しないことがある。すなわち、前述した方法を通じて3次元映像符号化/復号化装置は隣り合うブロックすなわち、周辺ブロックのうち相続されたVSPがある場合、現在ブロックに対するVSP候補をマージ候補リストに追加しないことによって、マージ候補リストに存在するマージ候補の重複性を減少させることができ、マージ候補リストにVSP候補以外の追加的なマージ候補を挿入することもできるため、符号化効率を向上することができる。
相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する装置は、既存インター予測部にVSPの重複性除去のためのモジュールが追加された構成であり得る。以下、本発明の一実施例に係る、相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する装置を図20を参照してより具体的に説明する。
図20は本発明の一実施例に係る、相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する装置のブロック図である。
図20によれば、インター予測部2000は既存の動き候補生成モジュール、VSP重複性除去モジュール、3D動き候補生成モジュールを含むことができる。
既存の動き候補生成モジュールは併合動き候補すなわち、マージ候補を誘導する。誘導されたマージ候補は前述の通りであり、それぞれのマージ候補に対する具体的な内容は前述した内容と同じである。また、既存の動き候補生成モジュールは誘導されたマージ候補をマージ候補リストに挿入することができる。例えば、誘導されたマージ候補はA1および/またはB1を意味し得、3次元映像符号化/復号化装置はA1および/またはB1をマージ候補リストに挿入することもできる。
このとき、「既存の動き候補生成モジュール」は「空間的マージ候補挿入モジュール」を意味し得、以下、説明の便宜のために、「既存の動き候補生成モジュール」は「空間的マージ候補挿入モジュール」は混用され得る。
VSP重複性(redundancy)除去モジュールは空間的候補のうちVSPを使用するブロックがあるかに対して判断することができる。空間的候補は空間的周辺ブロックを意味し得、空間的周辺ブロックは前述した通り、A0、A1、B0、B1、B2および/またはCol(HまたはM)候補を含むことができ、例えば、VSP重複性除去モジュールで判断される空間的候補ブロックはA1、および/またはB1であり得る。空間的候補のうちVSPを使用するブロックは相続されたVSP候補を意味し得、相続されたVSP候補に対する具体的な説明は前述した内容と同じである。
また、3次元符号化/復号化において、VSP重複性除去モジュールは前述した判断結果に基づいてskipVSP値をtrueまたはfalseに設定することができる。このとき、VSP重複性除去モジュールは前述した判断結果に基づいてskipVSP値をtrueまたはfalseに設定する具体的な内容は前述した内容と同じである。
このとき、「VSP重複性除去モジュール」は「VSP重複性判断モジュール」を意味し得、以下、説明の便宜のために「VSP重複性除去モジュール」と「VSP重複性判断モジュール」は混用され得る。
3D動き候補生成モジュールはVSP候補をマージ候補リストに挿入した後、残りの併合動き候補を誘導する。3D動き候補生成モジュールが残りの併合動き候補を誘導する具体的な内容は前述した通りであり、残りの併合動き候補に関する具体的な内容も前述した内容と同じである。
例えば、既存の動き候補生成モジュールおよびVSP重複性除去モジュールでマージ候補リストにA1、B1、VSP候補が挿入された場合、3D動き候補生成モジュールは3次元映像符号化/復号化装置がA1、B1、VSP候補を除いた残りのマージ候補をマージ候補リストに挿入するかの可否に対して誘導することができる。
もし、空間的候補のうちVSPを使用するブロックすなわち、相続されたVSP候補があるためVSP重複性除去モジュールが相続されたVSP候補があると判断した場合、3次元動き候補生成モジュールはVSP候補をマージ候補リストに挿入せず、残りの併合動き候補を誘導する。3次元映像符号化/復号化装置が残りの併合動き候補を誘導することに対する具体的な内容は前述した内容と同じである。
このとき、「3次元動き候補生成モジュール」は「3次元マージ候補挿入モジュール」、「VSP候補挿入モジュール」を意味し得、以下、説明の便宜のために「3次元動き候補生成モジュール」、「3次元マージ候補挿入モジュール」、「VSP候補挿入モジュール」は混用され得る。
相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する装置は、VSP重複性除去モジュールが3D動き候補生成モジュールに拡張/追加される構成であり得る。このとき、既存の動き候補生成モジュールで判別された空間的に隣り合う候補のVSP使用可否により、VSP候補が使用されるかが決定され得、VSP候補が使用されるかに対する決定はVSP候補誘導に対する決定前に行われ得る。以下、本発明の他の実施例に係る、相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する装置を図21を通じてより具体的に説明する。
図21は本発明の他の実施例に係る、相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する装置のブロック図である。
図21によれば、インター予測部2100は既存の動き候補生成モジュール、3D動き候補生成モジュールを含むことができ、3D動き候補生成モジュールはVSP重複性除去モジュールを含むことができる。
既存の動き候補生成モジュールは前述した通りであり、既存の動き候補生成モジュールの具体的な内容は前述した内容と同じである。
3D動き候補生成モジュールはVSP重複性除去モジュールを含むことができ、既存の動き候補生成モジュールで判別された空間的に隣り合う候補のVSP使用可否により、VSP候補の使用か決定され得、VSP候補の使用に対する決定はVSP候補誘導に対する決定前に行われ得る。3D動き候補生成モジュールおよびVSP重複性除去モジュールに対する具体的な内容は前述した内容と同じである。
相続されたVSP候補が存在するかの可否によりマージ候補リストにVSP候補を追加することを制限する時、3次元符号化/復号化装置は空間的マージ候補の中で二つまたは一つの方向だけを参照することができ、3次元符号化/復号化装置が空間的マージ候補の中で二つまたは一つの方向だけを参照することを通じてVSP使用可否を判断するフラグを参照する回数を減少させることができる。このとき、VSP使用可否を判断するフラグを参照する回数が減少されることは3次元符号化/復号化装置のメモリー接近回数を減少させることができる。以下、前述した方法についてより具体的に説明する。
図22は既存のマージ候補誘導方法と、本発明のさらに他の実施例に係るマージ候補誘導方法を比較したものである。
図22の(a)は既存のマージ候補に対する誘導の一例を示している。図22の(a)によれば、既存のマージ候補に対する誘導では空間的周辺ブロック(A0、A1、B0、B1および/またはB2)それぞれはVSPモードで符号化/復号化すなわち、相続されたVSPであり得る。3次元符号化/復号化装置は現在ブロックに対するマージ候補リストを構成する時、3次元符号化/復号化装置は空間的周辺ブロックがVSPモードで符号化/復号化されたかとはかかわらず、現在ブロックのマージ候補リストにVSP候補を挿入する場合があり、これは前述した通り、重複した動き情報をマージ候補リストに挿入することに過ぎず、映像符号化/復号化効率の低下をもたらした。
図22の(b)は本発明のさらに他の実施例に係るマージ候補の誘導に対する一例である。図22の(b)によれば、3次元符号化/復号化装置は現在ブロックに対するマージ候補リストを構成する時、周辺ブロックのうちA1および/またはB1でVSPが使用されたかすなわち、相続されたVSPであるかの可否に対して判断する。以後、3次元映像符号化/復号化装置は周辺ブロックのうちA1および/またはB1でVSPが使用された場合、マージリストにVSP候補を挿入することを制限する。
以下、3次元映像符号化/復号化で、空間的マージ候補のうち二つの方向を参照してマージリストにVSP候補を挿入することを制限する方法についてより具体的に説明する。
図23は本発明のさらに他の実施例に係る空間的マージ候補のうち二つの方向を参照してマージリストにVSP候補を挿入することを制限する方法に関するフローチャートである。
図23を参照すれば、3次元映像符号化/復号化装置は現在ブロックの左側に位置した候補すなわち、左側に位置した候補をリストに挿入する(S2300)。3次元映像符号化/復号化装置が現在ブロックの左側に位置した候補をリストに挿入するとはいったものの、ここで現在ブロックの左側に位置した候補は本発明の一例に過ぎず、段階S2300で3次元映像符号化/復号化装置がリストに挿入する候補は空間的候補(例えば、現在ブロックの左側、左下側、左上側、上側、右上側に位置した候補)中のいずれか一つであり得る。このとき、現在ブロックの左側に位置した候補はA1であり得、左下側に位置した候補はA0であり得、左上側に位置した候補はB2候補であり得る。また、現在ブロックの上側に位置した候補はB1であり得、右上側に位置した候補はB0であり得る。
3次元映像符号化/復号化装置は左側候補がVSPを使用したかすなわち、左側候補が相続されたVSPであるかに対して判断し(S2310)、左側候補がVSPを使用したかに対して判断する具体的な方法は前述した内容と同じである。
左側候補がVSPを使用した場合、3次元映像符号化/復号化装置はVSPが使用されたことを示す情報を生成し(S2320)、VSPが使用されたことを示す情報に対する具体的な内容は前述した内容と同じである。
以後、3次元映像符号化/復号化装置は現在ブロックの上側に位置した候補をマージリストに挿入する(S2330)。3次元映像符号化/復号化装置が現在ブロックの上側に位置した候補をリストに挿入するといったものの、ここで現在ブロックの上側に位置した候補は本発明の一例に過ぎず、段階S2330で3次元映像符号化/復号化装置がリストに挿入する候補は空間的候補(例えば、現在ブロックの左側、左下側、左上側、上側、右上側に位置した候補)中のいずれか一つであり得る。
万一、段階2310で左側候補がVSPを使用していない場合、3次元映像符号化/復号化装置はVSPが使用されたことを示す情報を生成せず、上側候補をリストに挿入する(S2330)。
段階S2330で上側候補をマージリストに挿入した後、3次元映像符号化/復号化装置は上側候補がVSPを使用し、VSPが使用されたことを示す情報が存在しないかの可否に対して判断する(S2340)。
上側候補がVSPを使用し、VSPが使用されたことを示す情報が存在しない場合、3次元映像符号化/復号化装置はVSPが使用されたことを示す情報を生成する(S2350)。このとき、段階S2350でVSPが使用されたことを示す情報は上側候補がVSPを使用するとともに、VSPが使用されたことを示す情報が存在しない場合にのみ生成される。
以後、3次元映像符号化復号化装置はVSPが使用されたことを示す情報が存在するかの可否に対して判断し(S2360)、VSPが使用されたことを示す情報が存在するかの可否に対して判断する具体的な内容は前述した内容と同じである。
ここで、VSPが使用されたことを示す情報が存在する場合、3次元映像符号化/復号化装置はマージ候補リストにVSP候補を挿入しない。
万一、段階S2360でVSPが使用されたことを示す情報が存在しない場合、3次元映像符号化/復号化装置はVSP候補をマージ候補リストに生成すなわち、VSP候補をマージ候補リストに挿入する(S2370)。
前述した方法は各空間的に隣り合う候補ごとに適用され得、もし、以前の空間的候補でVSP相続がなされたとすれば、現在空間的候補はDVだけを使用して予測する候補として使用され得る。
また、前述した方法は前述した3次元映像符号化/復号化装置で具現することもできる。
図24a〜図24bは本発明のさらに他の実施例に係る空間的マージ候補のうち二つの方向を参照してマージリストにVSP候補を挿入することを制限する方法を3D HEVCに適用したフローチャートである。
図24a〜図24bを参照すれば、3次元映像符号化/復号化装置は既存のHEVC併合候補誘導をし、usedVSPをfalseに設定する(S2400)。既存のHEVC併合候補誘導をし、usedVSPをfalseに設定する具体的な内容は前述した内容と同じである。
3次元映像符号化/復号化装置は左側候補がVSPを使用するかの可否に対して判断する(S2410)。このとき、3次元映像符号化/復号化装置が左側候補に対してVSPを使用するかの可否に対して判断する具体的な内容は前述した内容と同じである。
左側候補がVSPを使用する場合、3次元映像符号化/復号化装置は相続されたVSP候補として左側候補をリストに挿入し、usedVSPをtrueに設定する(S2430)。このとき、相続されたVSP候補として左側候補をリストに挿入し、usedVSPをtrueに設定する具体的な内容は前述した内容と同じである。
万一、左側候補がVSPを使用しない場合、3次元映像符号化/復号化装置は左側候補をマージ候補リストに挿入する(S2420)。このとき、3次元映像符号化/復号化装置が左側候補をマージ候補リストに挿入する具体的な内容は前述した内容と同じである。
段階S2420またはS2430以後、3次元映像符号化/復号化装置は上側候補がVSPを使用し、usedVSPがfalseであるかに対して判断する(S2440)。このとき、映像符号化/復号化装置が上側候補に対してVSPを使用し、usedVSPがfalseであるかに対して判断する具体的な内容は前述した内容と同じである。
上側候補がVSPを使用し、usedVSPがfalseである場合、3次元映像符号化/復号化装置は相続されたVSP候補として上側候補をリストに挿入し、usedVSPをtrueに設定する。
万一、上側候補がVSPを使用し、usedVSPがfalseでない場合、3次元映像符号化/復号化装置は上側候補をマージリストに挿入する(S2460)。このとき、3次元映像符号化/復号化装置が上側候補をマージリストに挿入する具体的な内容は前述した内容と同じである。
段階S2450またはS2460後に、3次元映像符号化/復号化装置は残っている空間的併合候補を誘導する(S2470)。このとき、3次元映像符号化/復号化装置が残っている空間的併合候補を誘導する具体的な内容は前述した内容と同じである。
3次元映像符号化/復号化装置はVSP候補前までの併合候補を誘導する(S2475)。このとき、段階S2470の後VSP候補前までの併合候補はA0、A1、B0、B1、B2、Col(HあるいはM)、モーションパラメーター相続(Motion Parameter Inheritance、MPI)、インタービューマージ候補(inter−view merging candidate、IvMC)、インタービュー変移ベクトル候補(inter−view disparity vector candidate、IvDC)、視点合成予測(View synthesis prediction、VSP)、シフトインタービュー(ShiftIV)、Biおよび/またはZero候補を含むことができ、段階S2470の後VSP候補前までの併合候補は存在しない場合もある。
3次元映像符号化/復号化装置はusedVSPがtrueであるかに対して判断する(S2480)。このとき、3次元映像符号化/復号化装置がusedVSPに対してtrue可否を判断する具体的な内容は前述した内容と同じである。
usedVSPがtrueではない場合、すなわち、usedVSPがfalseである場合、3次元映像符号化/復号化装置はVSP候補をマージリストに挿入する(S2485)。このとき、3次元映像符号化/復号化装置はVSP候補をマージリストに挿入する具体的な内容と、VSP候補の具体的な内容は前述した内容と同じである。
以後、3次元映像符号化/復号化装置は残っている併合候補をリストに挿入する(S2490)。このとき、残っている併合候補をリストに挿入する具体的な内容は前述した内容と同じである。
万一、usedVSPがtrueである場合、3次元映像符号化/復号化装置はVSP候補をリストに挿入せず、残っている併合候補をリストに挿入する(S2490)。このとき、VSP候補をリストに挿入せず、残っている併合候補をリストに挿入する具体的な内容は前述した内容と同じである。
図25は既存のマージ候補誘導方法と、本発明のさらに他の実施例に係るマージ候補誘導方法を比較したものである。
図25の(a)は既存のマージ候補に対する誘導の一例を示している。このとき、既存のマージ候補に対する誘導に関する具体的な内容は前述した内容と同じである。
図22の(b)は本発明のさらに他の実施例に係るマージ候補の誘導に対する一例である。図22の(b)によれば、3次元符号化/復号化装置は現在ブロックに対するマージ候補リストを構成する時、周辺ブロックのうちA1でVSPが使用されたかすなわち、相続されたVSPであるかの可否に対して判断する。以後、3次元映像符号化/復号化装置は周辺ブロックのうちA1でVSPが使用された場合、マージリストにVSP候補を挿入することを制限する。
以下、3次元映像符号化/復号化で、空間的マージ候補のうち一つの方向を参照してマージリストにVSP候補を挿入することを制限する方法に対してより具体的に説明する。
図26は本発明のさらに他の実施例に係る空間的マージ候補のうち一つの方向を参照してマージリストにVSP候補を挿入することを制限する方法に関するフローチャートである。
図26参照すれば、3次元映像符号化/復号化装置は現在ブロックの左側に位置した候補すなわち、左側に位置した候補をリストに挿入する(S2600)。3次元映像符号化/復号化装置が現在ブロックの左側に位置した候補をリストに挿入するといったものの、ここで現在ブロックの左側に位置した候補は本発明の一例に過ぎず、段階S2600で3次元映像符号化/復号化装置がリストに挿入する候補は空間的候補(例えば、現在ブロックの左側、左下側、左上側、上側、右上側に位置した候補)中のいずれか一つであり得る。
3次元映像符号化/復号化装置は左側候補がVSPを使用したかすなわち、左側候補が相続されたVSPであるかに対して判断し(S2610)、左側候補がVSPを使用したかに対して判断する具体的な方法は前述した内容と同じである。
左側候補がVSPを使用した場合、3次元映像符号化/復号化装置はVSPが使用されたことを示す情報を生成し(S2620)、VSPが使用されたことを示す情報に対する具体的な内容は前述した内容と同じである。
万一、左側候補がVSPを使用していない場合、3次元映像符号化/復号化装置はVSPが使用されたことを示す情報を生成しない。
以後、3次元映像符号化復号化装置はVSPが使用されたことを示す情報が存在するかの可否に対して判断し(S2630)、VSPが使用されたことを示す情報が存在するかの可否に対して判断する具体的な内容は前述した内容と同じである。
ここで、VSPが使用されたことを示す情報が存在する場合、3次元映像符号化/復号化装置はマージ候補リストにVSP候補を挿入しない。
万一、段階S2630でVSPが使用されたことを示す情報が存在しない場合、3次元映像符号化/復号化装置はVSP候補をマージ候補リストに生成すなわち、VSP候補をマージ候補リストに挿入する(S2640)。
前述した方法は各空間的に隣り合う候補ごとに適用され得、もし、以前の空間的候補でVSP相続がなされたとすれば、現在空間的候補はDVだけを使用して予測する候補として使用され得る。また、前述した方法は前述した3次元映像符号化/復号化装置で具現することもできる。
図27a〜図27bは本発明のさらに他の実施例に係る空間的マージ候補のうち一つの方向を参照してマージリストにVSP候補を挿入することを制限する方法を3D HEVCに適用したフローチャートである。
図27a〜図27bを参照すれば、3次元映像符号化/復号化装置は既存のHEVC併合候補誘導をし、usedVSPをfalseに設定する(S2700)。既存のHEVC併合候補誘導をし、usedVSPをfalseに設定する具体的な内容は前述した内容と同じである。
3次元映像符号化/復号化装置は左側候補がVSPを使用するかの可否に対して判断する(S2710)。このとき、3次元映像符号化/復号化装置が左側候補に対してVSPを使用するかの可否に対して判断する具体的な内容は前述した内容と同じである。
左側候補がVSPを使用する場合、3次元映像符号化/復号化装置は相続されたVSP候補として左側候補をリストに挿入し、usedVSPをtrueに設定する(S2720)。このとき、相続されたVSP候補として左側候補をリストに挿入し、usedVSPをtrueに設定する具体的な内容は前述した内容と同じである。
万一、左側候補がVSPを使用しない場合、3次元映像符号化/復号化装置は左側候補をマージ候補リストに挿入する(S2730)。このとき、3次元映像符号化/復号化装置が左側候補をマージ候補リストに挿入する具体的な内容は前述した内容と同じである。
段階S2720またはS2730以後、3次元映像符号化/復号化装置は残っている空間的併合候補を誘導する(S2740)。このとき、3次元映像符号化/復号化装置が残っている空間的併合候補を誘導する具体的な内容は前述した内容と同じである。
3次元映像符号化/復号化装置はVSP候補前までの併合候補を誘導する(S2750)。このとき、段階S2740以後VSP候補前までの併合候補はA0、A1、B0、B1、B2、Col(HあるいはM)、モーションパラメーター相続(Motion Parameter Inheritance、MPI)、インタービューマージ候補(inter−view merging candidate、IvMC)、インタービュー変移ベクトル候補(inter−view disparity vector candidate、IvDC)、視点合成予測(View synthesis prediction、VSP)、シフトインタービュー(ShiftIV)、Biおよび/またはZero候補を含むことができ、段階S2740以後VSP候補前までの併合候補は存在しない場合もある。
3次元映像符号化/復号化装置はusedVSPがtrueであるかに対して判断する(S2760)。このとき、3次元映像符号化/復号化装置がusedVSPに対してtrue可否を判断する具体的な内容は前述した内容と同じである。
usedVSPがtrueではない場合、すなわち、usedVSPがfalseである場合、3次元映像符号化/復号化装置はVSP候補をマージリストに挿入する(S2770)。このとき、3次元映像符号化/復号化装置はVSP候補をマージリストに挿入する具体的な内容と、VSP候補の具体的な内容は前述した内容と同じである。
以後、3次元映像符号化/復号化装置は残っている併合候補をリストに挿入する(S2780)。このとき、残っている併合候補をリストに挿入する具体的な内容は前述した内容と同じである。
万一、usedVSPがtrueである場合、3次元映像符号化/復号化装置はVSP候補をリストに挿入せず、残っている併合候補をリストに挿入する(S2780)。このとき、VSP候補をリストに挿入せず、残っている併合候補をリストに挿入する具体的な内容は前述した内容と同じである。
図28は本発明のさらに他の実施例に係るマージリストにVSP候補を挿入することを制限する装置に対するブロック図である。
図28を参照すれば、マージリストにVSP候補を挿入することを制限する装置は既存のHEVC候補生成モジュール、左側ブロックに対するVSP使用可否決定モジュールなど、3D HEVC候補生成モジュールを含むことができる。
既存のHEVC候補生成モジュールは前述した既存の動き候補生成モジュールを意味し得、既存のHEVC候補生成モジュールに対する具体的な内容は前述した内容と同じである。
左側ブロックに対するVSP使用可否決定モジュールなど(例えば、上側ブロック、左下側、左上側または右上側に対するVSP使用可否決定モジュール)はそれぞれ既存の候補のVSP非活性化モジュールを含むことができ、左側ブロックに対するVSP使用可否決定モジュールなどは各空間的に隣り合う候補のVSP使用可否により、他の空間的に隣り合う候補のVSP使用を非活性化することができる。これを通じて空間的に隣り合う候補は一定方向の定められた候補だけをVSP候補として使用することによって、各ブロック別に保存されるVSPフラグに対する接近回数が減少される。これによって、3次元映像符号化/復号化において、結果的にメモリー接近を減少させることができる。
3D HEVC候補生成モジュールは前述した3D動き候補生成モジュールを意味し得、3D HEVC候補生成モジュールはVSP重複性除去モジュールを含むことができる。
前述した3次元映像符号化/復号化装置および方法は現在MPEG(Moving Picture Experts Group)とVCEG(Video Coding Experts Group)で共同で標準化を進行中である3D−HEVC(High Efficiency Video Coding)で使用され得る。したがって、前述した装置および方法は表1のようにブロックの大きさあるいはCU(Coding Uint)の奥行きあるいはTU(Transform Unit)の奥行きなどにより適用範囲が変更され得る。適用範囲を決定する変数(すなわち、大きさあるいは奥行き情報)は符号化/復号化装置および方法であらかじめ定められた値を使用するように設定することもでき、プロファイルまたはレベルにより定められた値を使用するようにすることもでき、符号化装置および方法で変数値がビットストリームに記載されれば、復号化装置および方法でビットストリームから変数値を求めることもできる。CU奥行きにより適用範囲を異にする時は表1に例示した通り、A)与えられた奥行き以上の奥行きにのみ適用する場合、B)与えられた奥行き以下にのみ適用する場合、C)与えられた奥行きにのみ適用する場合がありえる。
すべての奥行きに対して本発明の方法が適用されない場合、任意の指示子(flag)が前述した方法が適用されないということを示すこともでき、適用範囲を表わすCU奥行き値がCU奥行きの最大値より一つ大きな値でシグナリングされることによって表現されることもある。
図29は前述した3次元映像符号化/復号化装置および方法を通じてVSP候補間の重複性が除去された一例を示している¥。
図29を参照すれば、既存の方法を通じてはマージ候補リストにVSP候補が重複的に存在したが、本明細書で提案する3次元符号化/復号化装置を通じてはVSP候補が重複的に存在することが改善されたことを確認することができる。
前述した実施例で、方法は一連の段階またはユニットとしてフローチャートに基づいて説明されているが、本発明は段階の順序に限定されるものではなく、ある段階は前述した段階とは異なる段階と異なる順序でまたは同時に発生することができる。また、当該技術分野で通常の知識を有した者であればフローチャートに示された段階が排他的ではなく、他の段階が含まれるか、フローチャートの一つまたはそれ以上の段階が本発明の範囲に影響を及ぼすことなく削除され得ることが理解できるであろう。
前述した実施例は多様な様態の例示を含む。多様な様態を表わすためのすべての可能な組合わせを記述することはできないが、該当技術分野の通常の知識を有した者は異なる組合わせが可能であることを認識できるであろう。したがって、本発明は、以下の特許請求の範囲内に属するすべての他の取り替え、修正および変更を含むものと言える。
前述した本発明に係る方法はコンピュータで遂行されるためのプログラムに製作されてコンピュータ可読記録媒体に保存され得、コンピュータ可読記録媒体の例としてはROM、RAM、CD−ROM、磁気テープ、フロッピーディスク、光データ保存装置などがあり、また、キャリアウェーブ(例えばインターネットを通した伝送)の形態で具現されるものも含まれる。
コンピュータ可読記録媒体はネットワークに連結されたコンピュータシステムに分散され、分散方式でコンピュータ可読コードが保存され実行され得る。そして、前記方法を具現するための機能的な(function)プログラム、コードおよびコードセグメントは本発明が属する技術分野のプログラマーによって容易に推論され得る。
また、本発明の好ましい実施例について図示して説明したが、本発明は前述した特定の実施例に限定されず、特許請求の範囲で請求する本発明の要旨を逸脱することなく当該発明が属する技術分野で通常の知識を有した者によって多様な変形実施が可能であることはもちろん、このような変形実施は本発明の技術的思想や展望から個別的に理解されてはならない。