【文献】
Jian-Liang Lin No. 1, Dusing Rd. 1, Hsinchu Science Park, Hsinchu, Taiwan 30078,3D-CE5.h related: Simplification on disparity vector derivation for HEVC-based 3D video coding[online], JCT3V-A JCT2-A0047,インターネット<URL:http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/1_Stockholm/wg11/JCT3V-A0047-v4.zip>
【文献】
Wenyi Su University of Science and Technology of China,3DV-CE1.a: Block-based View Synthesis Prediction for 3DV-ATM[online], JCT3V-A JCT2-A0107,インターネット<URL:http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/1_Stockholm/wg11/JCT3V-A0107-v1.zip>
【文献】
Yu-Lin Chang No. 1, Dusing Rd. 1, Hsinchu Science Park, Hsinchu, Taiwan 30078,CE1.h related: Depth-oriented Disparity Vector Predictor (DoDVP)[online], JCT3V-C JCT3V-C0132,インターネット<URL:http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/3_Geneva/wg11/JCT3V-C0132-v3.zip>
(58)【調査した分野】(Int.Cl.,DB名)
前記少なくとも1つのデプス値は、前記参照デプスブロックの左側上段ピクセルのデプス値、左側下段ピクセルのデプス値、右側上段ピクセルのデプス値及び右側下段ピクセルのデプス値ののうち最も大きいデプス値である、請求項1に記載のビデオ信号処理方法。
前記少なくとも1つのデプス値は、前記参照デプスブロックの左側上段ピクセルのデプス値、左側下段ピクセルのデプス値、右側上段ピクセルのデプス値及び右側下段ピクセルのデプス値のうち最も大きいデプス値である、請求項6に記載のビデオ信号処理装置。
前記インター予測部は、前記視点間動きベクトルが含まれた動きベクトル候補リストを生成し、前記動きベクトル候補リストを用いて前記現在ブロックの予測値を獲得する、請求項6に記載のビデオ信号処理装置。
前記インター予測部は、動きベクトルインデックスを獲得し、前記現在ブロックの予測値は、前記動きベクトルインデックスをさらに用いて獲得される、請求項9に記載のビデオ信号処理装置。
【発明を実施するための形態】
【0011】
本発明は、予め設定された動きベクトルを用いて参照視点ブロックを獲得し、参照視点ブロックに対応する参照ブロックのデプス値を獲得し、参照デプスブロックの少なくとも1つのデプス値を用いて現在ブロックの視点間動きベクトルを獲得し、視点間動きベクトルを用いて現在ブロックをデコーディングするビデオ信号処理方法及び装置である。
【0012】
また、本発明は、予め設定された動きベクトルはゼロベクトルであることを特徴とするビデオ信号処理方法及び装置である。
【0013】
また、本発明は、少なくとも1つのデプス値は、参照デプスブロックの左側上段ピクセルのデプス値、左側下段ピクセルのデプス値、右側上段ピクセルのデプス値及び右側下段ピクセルのデプス値のうち最も大きいデプス値であることを特徴とするビデオ信号処理方法及び装置である。
【0014】
また、本発明は、視点間動きベクトルが含まれた動きベクトル候補リストを生成し、動きベクトル候補リストを用いて現在ブロックの予測値を獲得するビデオ信号処理方法及び装置である。
【0015】
また、本発明は、動きベクトルインデックスを獲得し、現在ブロックの予測値は、動きベクトルインデックスをさらに用いて獲得されることを特徴とするビデオ信号処理方法及び装置である。
【0016】
多視点ビデオ信号データを圧縮符号化または復号化する技術は、空間的冗長性、時間的冗長性及び視点間に存在する冗長性を考慮している。また、多視点映像の場合、3次元映像を具現するために2つ以上の視点で撮影された多視点テクスチャ映像をコーディングすることができる。また、必要に応じて、多視点テクスチャ映像に対応するデプスデータをさらにコーディングすることもできる。デプスデータをコーディングする際に、空間的冗長性、時間的冗長性または視点間冗長性を考慮して圧縮コーディングできることは勿論である。デプスデータは、カメラと当該画素との間の距離情報を表現したものであり、本明細書内におけるデプスデータは、デプス情報、デプス映像、デプスピクチャ、デプスシーケンス、デプスビットストリームなどのように、デプスに関連する情報として柔軟に解釈することができる。また、本明細書におけるコーディングというのは、エンコーディングとデコーディングの概念を全て含むことができ、本発明の技術的思想及び技術的範囲によって柔軟に解釈することができる。
【0017】
図1は、本発明が適用される実施例であって、デプスコーディングが適用される放送受信機の内部ブロック図を示す。
【0018】
本実施例に係る放送受信機は、地上波放送信号を受信して映像を再生するためのものである。放送受信機は、受信されたデプス関連情報を用いて3次元コンテンツを生成することができる。放送受信機は、チューナー100、復調/チャネルデコーダ102、トランスポート逆多重化部104、パケット解除部106、オーディオデコーダ108、ビデオデコーダ110,PSI/PSIP処理部114、3Dレンダリング部116、フォーマッタ120及びディスプレイ部122を含む。
【0019】
チューナー100は、アンテナ(図示せず)を介して入力される多数の放送信号のうち、ユーザが選局したいずれか1つのチャネルの放送信号を選択して出力する。復調/チャネルデコーダ102は、チューナー100からの放送信号を復調し、復調された信号に対してエラー訂正デコーディングを行ってトランスポートストリーム(TS)を出力する。トランスポート逆多重化部104は、トランスポートストリームを逆多重化して、ビデオPESとオーディオPESを分離し、PSI/PSIP情報を抽出する。パケット解除部106は、ビデオPESとオーディオPESに対してパケットを解除し、ビデオESとオーディオESを復元する。オーディオデコーダ108は、オーディオESをデコーディングしてオーディオビットストリームを出力する。オーディオビットストリームは、デジタル−アナログ変換器(図示せず)によってアナログ音声信号に変換され、増幅器(図示せず)によって増幅された後、スピーカー(図示せず)を介して出力される。ビデオデコーダ110は、ビデオESをデコーディングして元の映像を復元する。オーディオデコーダ108及びビデオデコーダ110のデコーディング過程は、PSI/PSIP処理部114によって確認されるパケットID(PID)をベースとして行われてもよい。デコーディング過程において、ビデオデコーダ110はデプス情報を抽出することができる。また、仮想カメラ視点の映像を生成するために必要な付加情報、例えば、カメラ情報、または相対的に前にある客体によって遮られる領域(Occlusion)を推定するための情報(例えば、客体の輪郭などの幾何学的情報、客体の透明度情報及びカラー情報)などを抽出して3Dレンダリング部116に提供することができる。しかし、本発明の他の実施例においては、デプス情報及び/又は付加情報がトランスポート逆多重化部104によって分離されてもよい。
【0020】
PSI/PSIP処理部114は、トランスポート逆多重化部104からのPSI/PSIP情報を受信し、これをパーシングしてメモリ(図示せず)またはレジスターに格納することによって、格納された情報をベースとして放送が再生されるようにする。3Dレンダリング部116は、復元された映像、デプス情報、付加情報及びカメラパラメータを用いて、仮想カメラ位置でのカラー情報、デプス情報などを生成することができる。
【0021】
また、3Dレンダリング部116は、復元された映像、及び復元された映像に対するデプス情報を用いて3Dワーピング(Warping)を行うことによって、仮想カメラ位置での仮想映像を生成する。本実施例では、3Dレンダリング部116がビデオデコーダ110と別個のブロックとして構成されて説明されているが、これは一実施例に過ぎず、3Dレンダリング部116は、ビデオデコーダ110に含まれて行われてもよい。
【0022】
フォーマッタ120は、デコーディング過程で復元した映像、すなわち、実際のカメラによって撮影された映像、及び3Dレンダリング部116によって生成された仮想映像を当該受信機でのディスプレイ方式に合わせてフォーマッティングし、ディスプレイ部122を介して3D映像が表示されるようにする。ここで、3Dレンダリング部116による仮想カメラ位置でのデプス情報及び仮想映像の合成、そして、フォーマッタ120による映像フォーマッティングが、ユーザの命令に応答して選択的に行われてもよい。すなわち、視聴者は、リモコン(図示せず)を操作して合成映像が表示されないようにしてもよく、映像合成が行われる時点を指定することもできる。
【0023】
上記で説明したように、3D映像を生成するために、デプス情報は3Dレンダリング部116で利用されているが、他の実施例として、ビデオデコーダ110で利用されてもよい。以下では、ビデオデコーダ110でデプス情報を利用する様々な実施例を説明する。
【0024】
図2は、本発明が適用される実施例であって、ビデオデコーダの概略的なブロック図を示す。
【0025】
図2を参照すると、ビデオデコーダ110は、大きくエントロピーデコーディング部210、逆量子化部220、逆変換部230、デブロッキングフィルター部240、復号ピクチャバッファ部250、インター予測部260及びイントラ予測部270を含むことができる。ここで、実線はカラーピクチャデータの流れを意味し、点線はデプスピクチャデータの流れを意味する。このように、
図2では、カラーピクチャデータとデプスピクチャデータを区分して表示したが、これは、別個のビットストリームを意味することができ、または1つのビットストリーム内でデータの流れのみを区分したものと見ることもできる。すなわち、カラーピクチャデータとデプスピクチャデータは、1つのビットストリーム、または別個のビットストリームで伝送されてもよく、
図2では、データの流れを示しているだけで、1つのデコーダ内で全て行われるものに限定されない。
【0026】
まず、受信されたデプスビットストリーム200を復号するために、NAL単位でパーシングを行う。このとき、NALヘッダー領域、NALヘッダーの拡張領域、シーケンスヘッダー領域(例えば、シーケンスパラメータセット)、シーケンスヘッダーの拡張領域、ピクチャヘッダー領域(例えば、ピクチャパラメータセット)、ピクチャヘッダーの拡張領域、スライスヘッダー領域、スライスヘッダーの拡張領域、スライスデータ領域、またはマクロブロック領域には、デプスに関連する種々の属性情報が含まれてもよい。デプスコーディングは、別個のコーデックが利用されてもよいが、既存のコーデックとの互換をなす場合であれば、デプスビットストリームである場合に限って、デプスに関連する種々の属性情報を追加することがより効率的であり得る。例えば、シーケンスヘッダー領域(例えば、シーケンスパラメータセット)またはシーケンスヘッダーの拡張領域でデプスビットストリームであるか否かを識別できるデプス識別情報を追加することができる。デプス識別情報に応じて、入力されたビットストリームがデプスコーディングされたビットストリームである場合に限って、デプスシーケンスに対する属性情報を追加することができる。
【0027】
パーシングされたデプスビットストリーム200は、エントロピーデコーディング部210を介してエントロピーデコーディングされ、各マクロブロックの係数、動きベクトルなどが抽出される。逆量子化部220では、受信された量子化された値に一定の定数を乗じて変換された係数値を獲得し、逆変換部230では、係数値を逆変換してデプスピクチャのデプス情報を復元するようになる。イントラ予測部270では、現在デプスピクチャの復元されたデプス情報を用いて画面内予測を行う。一方、デブロッキングフィルター部240では、ブロック歪み現象を減少させるために、それぞれのコーディングされたマクロブロックにデブロッキングフィルタリングを適用する。フィルターは、ブロックの縁部を滑らかにすることで、デコーディングされたフレームの画質を向上させる。フィルタリング過程の選択は、境界の強さ(boundary strenth)及び境界の周囲のイメージサンプルの変化(gradient)によって左右される。フィルタリングを経たデプスピクチャは、出力されたり、または参照ピクチャとして利用するために復号ピクチャバッファ部250に格納されたりする。
【0028】
復号ピクチャバッファ部(Decoded Picture Buffer unit)250では、画面間予測を行うために、以前にコーディングされたデプスピクチャを格納したり開放したりする役割などを行う。このとき、復号ピクチャバッファ部250に格納したり開放したりするために、各ピクチャのframe_numとPOC(Picture Order Count)を用いる。したがって、デプスコーディングにおいて、以前にコーディングされたピクチャの中には現在デプスピクチャと異なる視点にあるデプスピクチャもあるので、このようなピクチャを参照ピクチャとして活用するためには、frame_numとPOCだけでなく、デプスピクチャの視点を識別するデプス視点情報も共に用いることができる。
【0029】
また、復号ピクチャバッファ部250は、デプスピクチャの視点間予測のための参照ピクチャリストを生成するために、デプス視点に対する情報を用いることができる。例えば、デプス−ビュー参照情報(depth−view reference information)を用いることができる。デプス−ビュー参照情報とは、デプスピクチャの視点間依存関係を示すために用いられる情報のことをいう。例えば、全体デプス視点の数、デプス視点識別番号、デプス−ビュー参照ピクチャの数、デプス−ビュー参照ピクチャのデプス視点識別番号などがあり得る。
【0030】
復号ピクチャバッファ部250は、より柔軟に画面間予測を実現するために参照ピクチャを管理する。例えば、適応メモリ管理方法(Memory Management Control Operation Method)及び移動ウィンドウ方法(Sliding Window Method)を用いることができる。これは、参照ピクチャと非参照ピクチャのメモリを1つのメモリに統一して管理し、少ないメモリで効率的に管理するためである。デプスコーディングにおいて、デプスピクチャは、復号ピクチャバッファ部内でカラーピクチャなどと区別するために別途の表示でマーキングされてもよく、マーキング過程で各デプスピクチャを識別させるための情報が用いられてもよい。このような過程を通じて管理される参照ピクチャは、インター予測部260においてデプスコーディングのために用いられてもよい。
【0031】
図2を参照すると、インター予測部260は、動き補償部261、仮想視点合成部262及びデプスピクチャ生成部263を含むことができる。
【0032】
動き補償部261では、エントロピーデコーディング部210から伝送された情報を用いて現在ブロックの動きを補償する。ビデオ信号から現在ブロックに隣接するブロックの動きベクトルを抽出し、現在ブロックの動きベクトル予測値を獲得する。動きベクトル予測値及びビデオ信号から抽出される差分ベクトルを用いて、現在ブロックの動きを補償する。また、このような動き補償は、1つの参照ピクチャを用いて行われてもよく、または複数のピクチャを用いて行われてもよい。デプスコーディングにおいて、現在デプスピクチャが異なる視点にあるデプスピクチャを参照することになる場合、復号ピクチャバッファ部250に格納されているデプスピクチャの視点間予測のための参照ピクチャリストに対する情報を用いて、動き補償を行うことができる。また、そのデプスピクチャの視点を識別するデプス視点情報を用いて、動き補償を行ってもよい。
【0033】
また、仮想視点合成部(Virtual View Synthesizing Unit)262は、現在カラーピクチャの視点に隣接する視点のカラーピクチャを用いて仮想視点のカラーピクチャを合成する。互いに隣接する視点のカラーピクチャを用いるために又は所望の特定の視点のカラーピクチャを用いるために、カラーピクチャの視点を示す視点識別情報を用いることができる。仮想視点のカラーピクチャを生成する場合、仮想視点のカラーピクチャを生成するか否かを示すフラグ情報を定義することができる。フラグ情報が、仮想視点のカラーピクチャを生成することを示す場合、視点識別情報を用いて仮想視点のカラーピクチャを生成することができる。仮想視点合成部262を介して獲得された仮想視点のカラーピクチャはレファレンスピクチャとして用いられてもよく、この場合、仮想視点のカラーピクチャにも視点識別情報を割り当てることができることは勿論である。
【0034】
他の実施例として、仮想視点合成部262は、現在デプスピクチャの視点に隣接する視点にあるデプスピクチャを用いて、仮想視点のデプスピクチャを合成することができる。同様に、デプスピクチャの視点を示すためにデプス視点識別情報を用いることができる。ここで、デプス視点識別情報は、対応するカラーピクチャの視点識別情報から誘導され得る。例えば、対応するカラーピクチャは、現在デプスピクチャと同一のピクチャ出力順序情報及び同一の視点識別情報を有することができる。
【0035】
デプスピクチャ生成部263は、デプスコーディング情報を用いて現在デプスピクチャを生成することができる。ここで、デプスコーディング情報は、カメラと客体との間の距離を示す距離変数(例えば、カメラ座標系上のZ座標値など)、デプスコーディングのためのマクロブロックタイプ情報、デプスピクチャ内の境界線識別情報、RBSP内のデータがデプスコーディングされたデータを含んでいるか否かを示す情報、またはデータタイプがデプスピクチャデータであるか、カラーピクチャデータであるか、又はパララックスデータであるかを示す情報などを含むことができる。また、デプスコーディング情報を用いて現在デプスピクチャを予測することもできる。すなわち、現在デプスピクチャに隣接するデプスピクチャを用いたインター予測が可能であり、現在デプスピクチャ内のデコーディングされたデプス情報を用いたイントラ予測が可能である。
【0036】
本発明では、現在ブロックをデコーディングするための視点間動きベクトルを獲得する方法に対して提案する。以下では、
図3を参照して、視点間動きベクトルを用いて現在ブロックがデコーディングされる過程について説明する。
【0037】
図3は、本発明が適用される一実施例であって、現在ブロックがデコーディングされる方法の一例に対するフローチャートを示したものである。
【0038】
現在ブロックの視点間動きベクトルを獲得することができる(S310)。視点間動きベクトルは、現在の視点内の現在ブロックが参照する参照視点内の参照ブロックを指し示す動きベクトルを示すことができる。視点間動きベクトルは、隣接ブロックから誘導されたり、デプス値を用いて獲得されたりすることができる。視点間動きベクトルが獲得される方法については、
図4乃至
図11を用いて後述する。
【0039】
視点間動きベクトルを含む現在ブロックの動きベクトル候補リストを獲得することができる(S320)。動きベクトル候補リストは、少なくとも1つの動きベクトル候補が含まれてもよい。動きベクトル候補は、現在ブロックの動きベクトルを獲得するために利用できる動きベクトルであって、現在ブロックの時間的、空間的相関性を用いて獲得することができる。動きベクトル候補は、現在ブロックと同一の視点、異なる時間の参照ピクチャを用いて現在ブロックをコーディングするための時間動きベクトル、及び現在ブロックと異なる視点、同一の時間の参照ピクチャを用いて現在ブロックをコーディングするための視点間動きベクトルを含むことができる。動きベクトル候補は、ステップS310で獲得された視点間動きベクトルを含むことができる。
【0040】
動きベクトル候補リストは、動きベクトル候補を獲得し、重複する動きベクトル候補を除外して獲得することができる。もし、動きベクトル候補の数が、予め決定された動きベクトル候補リストの利用可能な最大候補の数よりも少ない場合、ゼロベクトルまたは予め決定された動きベクトル候補を追加して動きベクトル候補リストを獲得することができる。
【0041】
動きベクトル候補リストの中の1つの動きベクトルを用いて現在ブロックをデコーディングすることができる(S330)。例えば、動きベクトルインデックスを用いて、動きベクトル候補リストの中の1つの動きベクトルが現在ブロックの動きベクトルとして獲得され得る。
【0042】
現在ブロックの動きベクトルを用いて、現在ブロックの参照視点ブロックを獲得することができる。そして、参照視点ブロックのピクセル値を用いて、現在ブロックの予測値を獲得することができる。
【0043】
ステップS310で獲得される視点間動きベクトルは、
図3で説明した動きベクトル候補リストに含まれて、現在ブロックのデコーディングに用いられるだけでなく、レジデュアル予測(Residual prediction)及び視点合成予測(View Synthesis Prediction、VSP)に用いられてもよい。
【0044】
例えば、現在ブロックをデコーディングするためにレジデュアル予測を用い、視点間動きベクトルが用いられてもよい。レジデュアル予測は、現在ブロックのレジデュアルを、参照ブロックのレジデュアルを用いて獲得することを示すことができる。視点間動きベクトルが指し示す参照ブロックのレジデュアルを用いて現在ブロックのレジデュアルを獲得することができる。
【0045】
更に他の例として、現在ブロックをデコーディングするために視点合成予測を用い、視点間動きベクトルが用いられてもよい。視点合成予測は、現在ブロックの予測値を獲得するために、参照視点のテクスチャピクチャ及び現在の視点又は参照視点のデプスピクチャを用いて仮想参照ピクチャを生成する予測方法を示すことができる。仮想参照ピクチャを生成するために視点間動きベクトルが用いられてもよい。
【0046】
以下では、
図4乃至
図6を参照して、現在ブロックのデコーディングに用いられるための視点間動きベクトルを獲得する第1実施例及び第2実施例について説明する。
【0047】
図4は、本発明が適用される一実施例であって、視点間動きベクトルが獲得される第1実施例及び第2実施例に対するフローチャートを示したものである。
【0048】
現在デプスブロック内のデプス値を用いて視点間動きベクトルを獲得するか否かを判断することができる(S311−1)。ここで、現在デプスブロックは、現在ブロックに対応するデプスブロックである。例えば、現在デプスブロック内のデプス値を用いて視点間動きベクトルを獲得するか否かは、現在デプスブロック内のデプス値が利用可能であるか否かにより判断することができる。現在デプスブロックがコーディングされて利用可能な場合、第1実施例を通じて、現在デプスブロック内のデプス値を用いて視点間動きベクトルを獲得すると判断し得る。逆に、現在デプスブロックがコーディングされていないので利用可能でない場合、現在デプスブロック内のデプス値を用いて視点間動きベクトルを獲得しないと判断し得る。現在デプスブロックが利用可能でない場合、第2実施例を通じて、参照視点のデプスブロックを用いて視点間動きベクトルが獲得され得る。
【0049】
現在デプスブロック内のデプス値が利用可能な場合、現在ブロックに対応する現在デプスブロックを獲得することができる(S311−2)。現在デプスブロックの位置は、現在ブロックの左側上段ピクセルの位置を用いて獲得することができる。
【0050】
視点間動きベクトルを獲得するための現在デプスブロック内のデプス値を獲得することができる(S311−3)。視点間動きベクトルを獲得するための現在デプスブロック内のデプス値は、現在デプスブロック内の少なくとも1つのデプス値を用いて獲得することができる。現在デプスブロック内の全てのデプス値を比較し、最も大きいデプス値が獲得されてもよい。または、現在デプスブロック内の全てのデプス値を比較し、最も多く存在するデプス値が獲得されてもよい。または、現在デプスブロック内の全てのデプス値の平均値が獲得されてもよい。または、現在デプスブロック内の特定のデプス値を比較してデプス値が獲得されてもよい。または、現在デプスブロックの左側上段のデプス値、左側下段のデプス値、右側上段のデプス値及び右側下段のデプス値を比較し、最も大きいデプス値が獲得されてもよい。または、現在デプスブロックの左側上段のデプス値、左側下段のデプス値、右側上段のデプス値及び右側下段のデプス値を比較し、最も多く存在するデプス値が獲得されてもよい。
【0051】
現在デプスブロック内のデプス値を用いて視点間動きベクトルを獲得することができる(S311−4)。デプス値から視点間動きベクトルを誘導する方法は、下記の数式1及び数式2に基づいて説明する。
【0053】
数式1を参照すると、Zは、当該ピクセルのカメラからの距離を意味し、Dは、Zを量子化した値であって、本発明のデプスデータに対応する。Z
near及びZ
farは、デプスデータが属する視点に対して定義されたZの最小値及び最大値をそれぞれ意味する。また、Z
near及びZ
farは、シーケンスパラメータセット、スライスヘッダーなどを介してビットストリームから抽出されてもよく、デコーダ内に予め定義された情報であってもよい。したがって、当該ピクセルのカメラからの距離Zを256レベルに量子化した場合、数式1のように、デプスデータ、Z
near及びZ
farを用いてZを復元することができる。その後、復元されたZを用いて、数式2のように、現在テクスチャブロックに対する視点間動きベクトルを誘導することができる。
【0055】
数式2において、fは、カメラの焦点距離を意味し、Bは、カメラ間の距離を意味する。f及びBは、全てのカメラに対して同一であると仮定することができ、したがって、デコーダに予め定義された情報であり得る。
【0056】
本発明において、デプス値を用いて視点間動きベクトルを獲得する方法は、特に説明がない場合、数式1及び数式2を用いる方法を用いる。
【0057】
現在デプスブロック内のデプス値を利用できない場合、予め決定された固定視点間動きベクトルを獲得することができる(S311−5)。ここで、予め決定された固定視点間動きベクトルは、参照視点内の参照視点ブロックを指し示す動きベクトルであって、デプス値が存在する範囲の中間値(もし、デプス値が0から255まで存在する場合、中間値である128を固定値として獲得)を用いて獲得された視点間動きベクトルとして決定されてもよく、または予め決定された固定視点間動きベクトルをゼロベクトルとして決定してもよい。ゼロベクトルは、(0,0)動きベクトルを示すことができる。ゼロベクトルが、予め決定された固定視点間動きベクトルとして決定される場合、予め決定された固定視点間動きベクトルが指し示す参照視点ピクチャ内の参照視点ブロックの位置は、現在デプスピクチャ内の現在デプスブロックの位置と同一であり得る。
【0058】
予め決定された固定視点間動きベクトルを用いて参照視点ブロックを獲得することができる(S311−6)。ここで、参照視点ブロックは、現在ブロックをデコーディングするために用いられる参照視点内のブロックである。
【0059】
参照視点ブロックに対応する参照デプスブロックを獲得することができる(S311−7)。参照デプスブロックは、参照視点ブロックに対応するデプスブロックである。参照デプスブロックの位置は、参照視点ブロックの左側上段ピクセルの位置を用いて獲得することができる。
【0060】
視点間動きベクトルを獲得するための参照デプスブロック内のデプス値を獲得することができる(S311−8)。視点間動きベクトルを獲得するための参照デプスブロック内のデプス値は、参照デプスブロック内の少なくとも1つのデプス値を用いて獲得することができる。参照デプスブロック内の全てのデプス値を比較し、最も大きいデプス値が獲得されてもよい。または、参照デプスブロック内の全てのデプス値を比較し、最も多く存在するデプス値が獲得されてもよい。または、参照デプスブロック内の全てのデプス値の平均値が獲得されてもよい。または、参照デプスブロック内の特定のデプス値を比較してデプス値が獲得されてもよい。または、参照デプスブロックの左側上段のデプス値、左側下段のデプス値、右側上段のデプス値及び右側下段のデプス値を比較し、最も大きいデプス値が獲得されてもよい。または、参照デプスブロックの左側上段のデプス値、左側下段のデプス値、右側上段のデプス値及び右側下段のデプス値を比較し、最も多く存在するデプス値が獲得されてもよい。
【0061】
参照デプスブロック内のデプス値を用いて視点間動きベクトルを獲得することができる(S311−9)。上述した数式1及び数式2を用いて視点間動きベクトルを獲得することができる。
【0062】
図5は、本発明が適用される一実施例であって、視点間動きベクトルが獲得される第1実施例に対して示したものである。
【0063】
図5のように、現在ブロック500の視点間動きベクトルは、現在ブロック500に対応する現在デプスブロック510内のデプス値を用いて獲得することができる。
【0064】
具体的に、現在ピクチャの現在ブロック500と同じ位置の現在デプスピクチャ内の現在デプスブロック510のデプス値を獲得することができる。そして、現在デプスブロック510のデプス値のうちの少なくとも1つを用いて視点間動きベクトルを獲得することができる。一例として、現在デプスブロック510の左側上段ピクセル、左側下段ピクセル、右側上段ピクセル及び右側下段ピクセルのうち最も大きいデプス値を用いて、視点間動きベクトルを獲得することができる。
【0065】
図6は、本発明が適用される一実施例であって、視点間動きベクトルが獲得される第2実施例に対して示したものである。
【0066】
図6を参照すると、現在ブロック500の参照視点に位置した参照視点ブロック610に対応する参照視点デプスブロック630内のデプス値を用いて、視点間動きベクトルが獲得される。第2実施例による視点間動きベクトルの獲得方法は、第1実施例による視点間動きベクトルの獲得方法のうち、現在デプスブロック510のデプス値を利用できない場合に行うことができる。
【0067】
具体的に、現在ブロック500で参照視点ブロック610を指し示す予め決定された固定視点間動きベクトル620を用いることができる。そして、参照ピクチャ内の参照視点ブロック610に対応する参照デプスピクチャ内の参照視点デプスブロック630のデプス値のうちの少なくとも1つを用いて、視点間動きベクトルを獲得することができる。一例として、参照視点ブロック610の左側上段ピクセル、左側下段ピクセル、右側上段ピクセル及び右側下段ピクセルのうち最も大きいデプス値を用いて、視点間動きベクトルを獲得することができる。
【0068】
以下では、
図7を参照して、現在ブロックのデコーディングに用いられるための視点間動きベクトルを獲得する第3実施例について説明する。
【0069】
図7は、本発明が適用される一実施例であって、視点間動きベクトルが獲得される第3実施例に対して示したものである。
【0070】
図7を参照すると、最大コーディングブロック(Large Coding Unit、LCU)単位で視点間動きベクトルを獲得し、現在の最大コーディングブロック710に含まれた現在ブロック500は、最大コーディングブロック単位で獲得された視点間動きベクトルが獲得される。したがって、最大コーディングブロックに含まれた全てのブロックは、同一の視点間動きベクトルが獲得され得る。
【0071】
一例として、最大コーディングブロックの視点間動きベクトルは、隣接する最大コーディングブロック内のブロック720の視点間動きベクトル675を用いて獲得されてもよい。または、現在の最大コーディングブロック610をデコーディングする直前にコーディングされた最大コーディングブロック内のブロック720の視点間動きベクトル725を用いて獲得されてもよい。
【0072】
第3実施例による視点間動きベクトルの獲得方法は、現在ブロック500に隣接する空間的隣接ブロック501〜505が視点間動きベクトルを用いてデコーディングされない場合に行うことができる。
【0073】
以下では、
図8を参照して、現在ブロックのデコーディングに用いられるための視点間動きベクトルを獲得する第4実施例について説明する。
図8は、本発明が適用される一実施例であって、視点間動きベクトルが獲得される第4実施例に対するフローチャートを示したものである。
【0074】
現在ブロックの前にコーディングされた以前ブロックに用いられた視点間動きベクトルを格納することができる(S312−1)。ここで、以前ブロック(previous block)は、現在ブロック以前にコーディングされ、視点間動きベクトルを用いてコーディングされたブロックを示すことができる。視点間動きベクトルは、コーディングされた順に格納され得る。例えば、第1の以前ブロック、第2の以前ブロック及び現在ブロックが視点間動きベクトルを用いてデコーディングされたブロックであり、第1の以前ブロック、第2の以前ブロック及び現在ブロックの順にデコーディングされるとき、第1の以前ブロックのデコーディングに用いられた視点間動きベクトルと第2の以前ブロックのデコーディングに用いられた視点間動きベクトルが順に格納され得る。本実施例において、第1の以前ブロック及び第2の以前ブロックは、上述した以前ブロックに含まれ、第1の以前ブロック、第2の以前ブロック、現在ブロックの順にデコーディングされることを仮定する。
【0075】
格納された視点間動きベクトルを用いて現在ブロックの視点間動きベクトルを獲得するか否かを判断することができる(S312−2)。以前ブロックの視点間動きベクトルを用いて現在ブロックの視点間動きベクトルを獲得するか否かは、現在ブロックと以前ブロック間の距離と、予め決定された距離情報とを比較して獲得され得る。
【0076】
ここで、現在ブロックと以前ブロックとの間の距離は、現在ブロックの左側上段ピクセルと以前ブロックの左側上段ピクセルとの間の距離を用いて獲得されてもよい。または、現在ブロックと以前ブロックとの間の距離は、現在ブロックの中心ピクセルと以前ブロックの中心ピクセルとの間の距離を用いて獲得されてもよい。予め決定された距離情報は、現在ブロックと以前ブロックとの間の距離が近いか否かを判断するために予め決定された情報であり得る。
【0077】
現在ブロックと第1の以前ブロックとの間の距離が予め決定された距離情報以下である場合、第1の以前ブロックの視点間動きベクトルを用いて現在ブロックの視点間動きベクトルを獲得することができる(S312−3)。
【0078】
もし、現在ブロックと第1の以前ブロックとの間の距離が予め決定された距離情報以上である場合、第1の以前ブロックの視点間動きベクトルを用いて現在ブロックの視点間動きベクトルを獲得せずに、第2の以前ブロックの視点間動きベクトルを用いて現在ブロックの視点間動きベクトルを獲得することができる(S312−4)。
【0079】
図9は、本発明が適用される一実施例であって、視点間動きベクトルが獲得される第4実施例に対して示したものである。
【0080】
現在ブロック500の視点間動きベクトルは、現在ブロック500をデコーディングする前に誘導された視点間動きベクトルを格納し、格納された視点間動きベクトルを用いて獲得され得る。
【0081】
一例として、
図9を参照すると、視点間動きベクトルを用いてデコーディングされるブロックのデコーディング順序が、第1ブロック910、第2ブロック920、現在ブロック500である場合、現在ブロック500のコーディング直前にコーディングされた第2ブロック920の視点間動きベクトル925を用いて現在ブロック500の視点間動きベクトルが獲得され得る。
【0082】
他の例として、視点間動きベクトルを用いてデコーディングされるブロックのデコーディング順序が、第1ブロック910、第2ブロック920、現在ブロック500であり、現在ブロック500から一定の距離以上離れたブロックの視点間動きベクトルを利用しない場合、現在ブロック500のコーディング直前にコーディングされた第2ブロック920の視点間動きベクトル925を利用せずに、第1ブロック910の視点間動きベクトル915を用いて現在ブロック500の視点間動きベクトルが獲得され得る。
【0083】
以下では、現在ブロックのデコーディングに用いられるための視点間動きベクトルを獲得する第5実施例について説明する。
【0084】
現在ブロックの視点間動きベクトルは、現在ブロックのデコーディング過程の前に獲得されたデプス値のヒストグラム(histogram)を用いて獲得することができる。
【0085】
一例として、現在ブロックのデコーディング過程の前に獲得されたデプス値を用いて最も多く獲得されたデプス値を獲得し、最も多く獲得されたデプス値を用いて現在ブロックの視点間動きベクトルが獲得され得る。
【0086】
他の例として、現在ブロックのデコーディング過程の前に獲得されたデプス値の平均値を獲得し、デプス値の平均値を用いて現在ブロックの視点間動きベクトルが獲得され得る。
【0087】
以下では、
図10及び
図11を参照して、現在ブロックのデコーディングに用いられるための視点間動きベクトルを獲得する第6実施例について説明する。
【0088】
上述した第1実施例乃至第5実施例及び視点間動きベクトル修正情報を用いて現在ブロックの視点間動きベクトルを獲得することができる。視点間動きベクトル修正情報を用いて第1実施例乃至第5実施例によって獲得された視点間動きベクトルが修正される場合、第1実施例乃至第5実施例によって獲得された視点間動きベクトルが指し示す参照視点ブロックに対応する参照デプスブロックのデプス値を用いて、現在ブロックの視点間動きベクトルが獲得され得る。
【0089】
図10は、本発明が適用される一実施例であって、視点間動きベクトルが獲得される第6実施例に対するフローチャートを示したものである。
【0090】
現在ブロックの臨時視点間動きベクトルを獲得することができる(S313−1)。ここで、臨時視点間動きベクトルは、参照視点内の参照視点ブロックを指し示す動きベクトルであって、上述した第1実施例乃至第5実施例を用いて獲得された視点間動きベクトルが用いられてもよい。また、臨時視点間動きベクトルは、ゼロベクトル及び予め決定された視点間動きベクトルを含むこともできる。
【0091】
視点間動きベクトル修正情報及び臨時視点間動きベクトルを用いて参照視点ブロックを獲得することができる(S313−2)。視点間動きベクトル修正情報は、獲得された臨時視点間動きベクトルを用いて参照視点ブロックを獲得するか否かを示すことができる。視点間動きベクトル修正情報が、臨時視点間動きベクトルを用いて参照視点ブロックを獲得しないことを示す場合、臨時視点間動きベクトルが現在ブロックの視点間動きベクトルとして獲得され得る。
【0092】
視点間動きベクトル修正情報が、臨時視点間動きベクトルを用いて参照視点ブロックを獲得することを示す場合、臨時視点間動きベクトルが指し示すブロックを参照視点ブロックとして獲得することができる。
【0093】
参照視点ブロックに対応する参照デプスブロックを獲得することができる(S313−3)。参照デプスブロックは、参照視点ブロックに対応するデプスブロックである。参照デプスブロックの位置は、参照視点ブロックの左側上段ピクセルの位置を用いて獲得することができる。
【0094】
視点間動きベクトルを獲得するための参照デプスブロック内のデプス値を獲得することができる(S313−4)。視点間動きベクトルを獲得するための参照デプスブロック内のデプス値は、参照デプスブロック内の少なくとも1つのデプス値を用いて獲得することができる。参照デプスブロック内の全てのデプス値を比較し、最も大きいデプス値が獲得されてもよい。または、参照デプスブロック内の全てのデプス値を比較し、最も多く存在するデプス値が獲得されてもよい。または、参照デプスブロック内の全てのデプス値の平均値が獲得されてもよい。または、参照デプスブロック内の特定のデプス値を比較してデプス値が獲得されてもよい。または、参照デプスブロックの左側上段のデプス値、左側下段のデプス値、右側上段のデプス値及び右側下段のデプス値を比較し、最も大きいデプス値が獲得されてもよい。または、参照デプスブロックの左側上段のデプス値、左側下段のデプス値、右側上段のデプス値及び右側下段のデプス値を比較し、最も多く存在するデプス値が獲得されてもよい。
【0095】
参照デプスブロック内のデプス値を用いて視点間動きベクトルを獲得することができる(S313−5)。上述した数式1及び数式2を用いて視点間動きベクトルを獲得することができる。
【0096】
図11は、本発明が適用される一実施例であって、視点間動きベクトルが獲得される第6実施例であって、臨時視点間動きベクトルを用いて現在ブロックの視点間動きベクトルを獲得する一例について示したものである。
【0097】
図11を参照すると、第3実施例の方法を用いて隣接する最大コーディングブロック内のブロック1120の臨時視点間動きベクトル1125を獲得する。そして、視点間動きベクトル修正情報によって視点間動きベクトル1125が修正される場合、隣接する最大コーディングブロック内のブロック1120の視点間動きベクトル1125を用いて、参照視点に含まれる参照視点ブロック1110を獲得する。そして、参照視点ブロック1110に対応する参照デプスブロック1130のデプス値を用いて、現在ブロック500の視点間動きベクトルが獲得され得る。一例として、参照デプスブロック1130の左側上段ピクセル、左側下段ピクセル、右側上段ピクセル及び右側下段ピクセルのうち最も大きいデプス値を用いて視点間動きベクトルを獲得することができる。
【0098】
以上で説明したように、本発明が適用されるデコーディング/エンコーディング装置は、DMB(Digital Multimedia Broadcasting)のようなマルチメディア放送送信/受信装置に備えられ、ビデオ信号及びデータ信号などをデコーディングするのに利用することができる。また、マルチメディア放送送信/受信装置は移動通信端末機を含むことができる。
【0099】
また、本発明が適用されるデコーディング/エンコーディング方法は、コンピュータで実行されるためのプログラムとして製作され、コンピュータ可読記録媒体に格納することができ、本発明に係るデータ構造を有するマルチメディアデータも、コンピュータ可読記録媒体に格納することができる。コンピュータ可読記録媒体は、コンピュータシステムにより読み取られるデータが格納される全ての種類の格納装置を含む。コンピュータ可読記録媒体の例としては、ROM、RAM、CD−ROM、磁気テープ、フロッピーディスク、光データ格納装置などがあり、なお、搬送波(例えば、インターネットを介した伝送)の形態で具現されるものも含む。また、エンコーティング方法により生成されたビットストリームは、コンピュータ可読記録媒体に格納されるか、または有線/無線通信網を用いて伝送されてもよい。