(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022133464
(43)【公開日】2022-09-13
(54)【発明の名称】候補リスト共有方法及びこのような方法を使用する装置
(51)【国際特許分類】
H04N 19/52 20140101AFI20220906BHJP
【FI】
H04N19/52
【審査請求】有
【請求項の数】3
【出願形態】OL
(21)【出願番号】P 2022110639
(22)【出願日】2022-07-08
(62)【分割の表示】P 2022080949の分割
【原出願日】2012-11-08
(31)【優先権主張番号】10-2011-0115607
(32)【優先日】2011-11-08
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2011-0116527
(32)【優先日】2011-11-09
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2011-0121428
(32)【優先日】2011-11-21
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2011-0124813
(32)【優先日】2011-11-28
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2011-0140861
(32)【優先日】2011-12-23
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2012-0011412
(32)【優先日】2012-02-03
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2012-0126369
(32)【優先日】2012-11-08
(33)【優先権主張国・地域又は機関】KR
(71)【出願人】
【識別番号】596099882
【氏名又は名称】エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュート
【氏名又は名称原語表記】ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE
(71)【出願人】
【識別番号】512139102
【氏名又は名称】ユニバーシティ-インダストリー コーオペレイション グループ オブ キョンヒ ユニバーシティ
【氏名又は名称原語表記】UNIVERSITY-INDUSTRY COOPERATION GROUP OF KYUNG HEE UNIVERSITY
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100096921
【弁理士】
【氏名又は名称】吉元 弘
(72)【発明者】
【氏名】キム、フイ、ヨン
(72)【発明者】
【氏名】パク、グワン、フン
(72)【発明者】
【氏名】キム、キョン、ヨン
(72)【発明者】
【氏名】キム、サン、ミン
(72)【発明者】
【氏名】リム、ソン、チャン
(72)【発明者】
【氏名】リー、ジン、ホ
(72)【発明者】
【氏名】チェ、ジン、ス
(72)【発明者】
【氏名】キム、ジン、ウン
(57)【要約】 (修正有)
【課題】候補リスト共有方法及びこのような方法を使用する装置を提供する。
【解決手段】予測ブロックに対するマージング候補リスト生成方法は、並列的マージプロセスが行われる予測ブロックの空間的マージング候補及び時間的マージング候補のうち、少なくとも1つのマージング候補を予測ブロックが含まれた符号化ブロックを基準に算出するステップと、算出したマージング候補に基づいて符号化ブロックに対して単一マージング候補リストを生成するステップと、を含む。複数の予測ブロックに対して並列的に画面間予測を遂行することで、符号化及び復号化の処理速度を上げることができる。
【選択図】
図6
【特許請求の範囲】
【請求項1】
映像信号を復号化するための方法であって、
符号化ブロックの位置に基づいて、第1の予測ブロックに対する空間候補ブロックを決定するステップと、前記符号化ブロックは複数の予測ブロックを備え、前記第1の予測ブロックは前記複数の予測ブロックの一つであり、
前記空間候補ブロックの使用可能性に基づいて、前記空間候補ブロックから少なくとも一つの動き情報候補を導出するステップと、
前記動き情報候補に基づいて、前記第1の予測ブロックに対する動き情報候補リストを生成するステップと、
前記第1の予測ブロックに対する前記動き情報候補リストは、前記複数の予測ブロックのうち、前記第1の予測ブロック以外の予測ブロックに対する動き情報候補リストと同等であることを特徴とする映像信号を復号化するための方法。
【請求項2】
映像信号を符号化するための方法であって、
符号化ブロックの位置に基づいて、第1の予測ブロックに対する空間候補ブロックを決定するステップと、前記符号化ブロックは複数の予測ブロックを備え、前記第1の予測ブロックは前記複数の予測ブロックの一つであり、
前記空間候補ブロックの使用可能性に基づいて、前記空間候補ブロックから少なくとも一つの動き情報候補を導出するステップと、
前記動き情報候補に基づいて、前記第1の予測ブロックに対する動き情報候補リストを生成するステップと、
前記第1の予測ブロックに対する前記動き情報候補リストは、前記複数の予測ブロックのうち、前記第1の予測ブロック以外の予測ブロックに対する動き情報候補リストと同等であることを特徴とする映像信号を符号化するための方法。
【請求項3】
映像信号を符号化するための方法によって形成されたビットストリームを格納する、非一時的コンピュータ可読媒体であって、前記方法は、
符号化ブロックの位置に基づいて、第1の予測ブロックに対する空間候補ブロックを決定するステップと、前記符号化ブロックは複数の予測ブロックを備え、前記第1の予測ブロックは前記複数の予測ブロックの一つであり、
前記空間候補ブロックの使用可能性に基づいて、前記空間候補ブロックから少なくとも一つの動き情報候補を導出するステップと、
前記動き情報候補に基づいて、前記第1の予測ブロックに対する動き情報候補リストを生成するステップと、
前記第1の予測ブロックに対する前記動き情報候補リストは、前記複数の予測ブロックのうち、前記第1の予測ブロック以外の予測ブロックに対する動き情報候補リストと同等であることを特徴とする非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は映像処理方法及び装置に関し、より詳しくは、画面間の予測方法及びこのような方法を使用する装置に関する。
【背景技術】
【0002】
最近、HD(High Definition)映像及びUHD(Ultra High Definition)映像のような高解像度、高品質の映像に対する需要が多様な応用分野で増加している。映像データが高解像度、高品質になるほど既存の映像データに比べて相対的にデータ量が増加するため、既存の有無線広帯域回線のような媒体を用いて映像データを転送するか、または既存の格納媒体を用いて格納する場合、転送費用と格納費用が増加する。映像データが高解像度、高品質化するにつれて発生するこのような問題を解決するためには高効率の映像圧縮技術が活用できる。
【0003】
映像圧縮技術に、現在ピクチャの以前または以後ピクチャから現在ピクチャに含まれた画素値を予測する画面間予測技術、現在ピクチャ内の画素情報を用いて現在ピクチャに含まれた画素値を予測する画面内予測技術、出現頻度の高い値に短い符号を割り当てて、出現頻度の低い値に長い符号を割り当てるエントロピー符号化技術など、多様な技術が存在し、このような映像圧縮技術を用いて映像データを効果的に圧縮して転送または格納することができる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の目的は、単一候補リストを生成して予測ブロックに対する画面間予測を並列的に遂行する方法を提供することにある。
【0005】
本発明の更に他の目的は、単一候補リストを生成して予測ブロックに対する画面間予測を並列的に遂行する装置を提供することにある。
【課題を解決するための手段】
【0006】
前述した本発明の目的を達成するための本発明の一側面に従う予測ブロックに対するマージング候補リスト生成方法は、並列的マージプロセスが行われる上記予測ブロックの空間的マージング候補及び時間的マージング候補のうち、少なくとも1つのマージング候補を上記予測ブロックが含まれた符号化ブロックを基準に算出するステップと、上記算出されたマージング候補に基づいて上記符号化ブロックに対して単一マージング候補リストを生成するステップを含むことができる。上記並列的マージプロセスが遂行される上記予測ブロックの空間的マージング候補及び時間的マージング候補のうち、少なくとも1つのマージング候補を上記予測ブロックが含まれた符号化ブロックを基準に算出するステップは、上記符号化ブロックのピクセル位置及び上記符号化ブロックのサイズに基づいて空間的マージング候補ブロック及び時間的マージング候補ブロックを誘導するステップと、上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報を上記マージング候補として算出するステップを含むことができる。上記予測ブロックに対するマージング候補リスト生成方法は、上記予測ブロックが並列的マージプロセスが実施可能なブロックか否かを判断するステップをさらに含み、上記予測ブロックが並列的マージプロセスが実施可能なブロックか否かを判断するステップは、並列的マージプロセスが実施可能なブロックのサイズ情報を復号化するステップと、上記並列的マージプロセスが実施可能なブロックのサイズ情報と上記符号化ブロックのサイズ情報に基づいて上記予測ブロックが並列的マージプロセスが実施可能なブロックか否かを判断するステップとを含むことができる。上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報を上記マージング候補として算出するステップは、上記符号化ブロックと上記符号化ブロックに基づいて誘導された空間的マージング候補ブロックが上記並列的マージプロセスが実施可能なブロックの内部に位置するか否かを判断するステップと、上記符号化ブロックと上記符号化ブロックに基づいて誘導された空間的マージング候補ブロックが上記並列的マージプロセスが実施可能なブロックの内部に位置する場合、上記空間的マージング候補ブロックを使用可能でない空間的マージング候補ブロックと判断するステップを含むことができる。上記並列的マージプロセスが実施可能なブロックのサイズ情報と上記符号化ブロックのサイズ情報に基づいて上記予測ブロックが並列的マージプロセスが実施可能なブロックか否かを判断するステップは、並列的にマージプロセスが実施可能なブロックのサイズが予め定まった特定のサイズ以上か否かを判断するステップ、上記符号化ブロックが特定のサイズか否かを判断するステップと、並列的にマージプロセスが実施可能なブロックのサイズが上記予め定まった特定のサイズ以上であり、上記符号化ブロックが上記特定のサイズの場合、上記予測ブロックを上記単一マージング候補リストを使用してマージを遂行することと判断するステップを含むことができる。上記予測ブロックに対するマージング候補リスト生成方法は、上記予測ブロックが並列的マージプロセスが実施可能なブロックでない場合、上記予測ブロックのピクセル位置及び上記予測ブロックのサイズに基づいて上記空間的マージング候補ブロック及び上記時間的マージング候補ブロックを誘導するステップと、上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報をマージング候補として算出するステップをさらに含むことができる。上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報をマージング候補として算出するステップは、上記予測ブロックがNx2N、nLx2N、及びnRx2N形態のうち、1つの形態に分割されたブロックであり、上記予測ブロックが第2予測ブロックか否かを判断するステップと、上記予測ブロックがNx2N、nLx2N、及びnRx2N形態のうち、1つの形態に分割されたブロックであり、上記予測ブロックが第2予測ブロックの場合、第1予測ブロックに含まれた空間的マージング候補ブロックを使用可能でないことと判断するステップを含むことができる。上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報をマージング候補として算出するステップは、上記予測ブロックが2NxN、2NxnU、及び2NxnD形態のうち、1つの形態に分割されたブロックであり、上記予測ブロックが第2予測ブロックか否かを判断するステップと、上記予測ブロックが2NxN、2NxnU、及び2NxnD形態のうち、1つの形態に分割されたブロックであり、上記予測ブロックが第2予測ブロックの場合、上記第1予測ブロックに含まれた空間的マージング候補ブロックを使用可能でないことと判断するステップを含むことができる。
【0007】
前述した本発明の目的を達成するための本発明の一側面に従う映像復号化装置は、上記映像復号化装置は予測部を含み、上記予測部は並列的マージプロセスが行われる上記予測ブロックの空間的マージング候補及び時間的マージング候補のうち、少なくとも1つのマージング候補を上記予測ブロックが含まれた符号化ブロックを基準に算出し、上記算出されたマージング候補に基づいて上記符号化ブロックに対して単一マージング候補リストを生成するように具現できる。上記予測部は、上記並列的マージプロセスが遂行される上記予測ブロックの空間的マージング候補及び時間的マージング候補のうち、少なくとも1つのマージング候補を上記予測ブロックが含まれた符号化ブロックを基準に算出するために上記符号化ブロックのピクセル位置及び上記符号化ブロックのサイズに基づいて空間的マージング候補ブロック及び時間的マージング候補ブロックを誘導し、上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報を上記マージング候補として算出するように具現できる。上記予測部は、上記予測ブロックが並列的マージプロセスが実施可能なブロックか否かを判断するように具現され、上記予測ブロックが並列的マージプロセスが実施可能なブロックか否かを判断するために復号化した並列的マージプロセスが実施可能なブロックのサイズ情報と上記符号化ブロックのサイズ情報に基づいて、上記予測ブロックが並列的マージプロセスが実施可能なブロックか否かを判断するように具現できる。上記予測部は、上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報を上記マージング候補として算出するために、上記符号化ブロックと上記符号化ブロックに基づいて誘導された空間的マージング候補ブロックが上記並列的マージプロセスが実施可能なブロックの内部に位置するか否かを判断し、上記符号化ブロックと上記符号化ブロックに基づいて誘導された空間的マージング候補ブロックが上記並列的マージプロセスが実施可能なブロックの内部に位置する場合、上記空間的マージング候補ブロックを使用可能でない空間的マージング候補ブロックと判断するように具現できる。上記予測部は、上記並列的マージプロセスが実施可能なブロックのサイズ情報と上記符号化ブロックのサイズ情報に基づいて、上記予測ブロックが並列的マージプロセスが実施可能なブロックか否かを判断するために並列的にマージプロセスが実施可能なブロックのサイズが予め定まった特定のサイズ以上か否かを判断し、上記符号化ブロックが特定のサイズか否かを判断し、並列的にマージプロセスが実施可能なブロックのサイズが上記予め定まった特定のサイズ以上であり、上記符号化ブロックが上記特定のサイズの場合、上記予測ブロックを上記単一マージング候補リストを使用してマージを遂行することと判断するように具現できる。上記予測部は、上記予測ブロックが並列的マージプロセスが実施可能なブロックでない場合、上記予測ブロックのピクセル位置及び上記予測ブロックのサイズに基づいて上記空間的マージング候補ブロック及び上記時間的マージング候補ブロックを誘導し、上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報をマージング候補として算出するように具現できる。上記予測部は、上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報をマージング候補として算出するために、上記予測ブロックがNx2N、nLx2N、及びnRx2N形態のうち、1つの形態に分割されたブロックであり、上記予測ブロックが第2予測ブロックか否かを判断し、上記予測ブロックがNx2N、nLx2N、及びnRx2N形態のうち、1つの形態に分割されたブロックであり、上記予測ブロックが第2予測ブロックの場合、第1予測ブロックに含まれた空間的マージング候補ブロックを使用可能でないことと判断するように具現できる。上記予測部は、上記誘導された空間的マージング候補ブロック及び上記時間的マージング候補ブロックのうち、使用可能なマージング候補ブロックの動き予測関連情報をマージング候補として算出するために、上記予測ブロックが2NxN、2NxnU、及び2NxnD形態のうち、1つの形態に分割されたブロックであり、上記予測ブロックが第2予測ブロックか否かを判断し、上記予測ブロックが2NxN、2NxnU、及び2NxnD形態のうち、1つの形態に分割されたブロックであり、上記予測ブロックが第2予測ブロックの場合、上記第1予測ブロックに含まれた空間的マージング候補ブロックを使用可能でないことと判断するように具現できる。
【発明の効果】
【0008】
前述したように、本発明の実施形態に従う候補リスト共有方法及びこのような方法を使用する装置によれば、1つの符号化ブロックから分割された複数の予測ブロックが単一候補リストを共有して画面間予測を遂行することによって、画面間予測で発生する複雑度を低める。また。複数の予測ブロックに対して並列的に画面間予測を遂行することによって、符号化及び復号化の処理速度を高めることができる。
【図面の簡単な説明】
【0009】
【
図1】本発明の一実施形態に従う映像符号化装置の構成を示すブロック図である。
【
図2】本発明の更に他の実施形態に従う映像復号化装置の構成を示すブロック図である。
【
図3】本発明の実施形態に従うマージを用いた画面間予測方法を説明するための概念図である。
【
図4】1つの符号化ブロックが2つの予測ブロックに分割された場合を示す概念図である。
【
図5】本発明の実施形態に従う時間的マージング候補を用いた画面間予測と時間的マージング候補の参照ピクチャインデックスを説明するための概念図である。
【
図6】本発明の実施形態に従う複数の予測ブロックで空間的マージング候補及び時間的マージング候補を全て共有して単一マージング候補リストを生成する方法を示す概念図である。
【
図7】本発明の実施形態に従う複数の予測ブロックで空間的マージング候補のみを共有して単一マージング候補リストを生成する方法を示す概念図である。
【
図8】本発明の実施形態に従う複数の予測ブロックで時間的マージング候補のみを共有して単一マージング候補リストを生成する方法を示す概念図である。
【
図9】AMVPを用いた画面間予測モードを説明するための概念図である。
【
図10】本発明の実施形態に従う複数の予測ブロックで空間的候補予測ブロックと時間的候補予測ブロックとを全て共有して単一動きベクトル予測候補リストを生成する方法を示す概念図である。
【
図11】本発明の実施形態に従う複数の予測ブロックで空間的候補予測ブロックのみを共有して単一動きベクトル予測候補リストを生成する方法を示す概念図である。
【
図12】本発明の実施形態に従う複数の予測ブロックで時間的候補予測ブロックのみを共有して単一動きベクトル予測候補リストを生成する方法を示す概念図である。
【
図13】本発明の実施形態に従う単一マージング候補リストを生成する方法を示す概念図である。
【
図14】本発明の実施形態に従う単一マージング候補リストを生成する方法を示す概念図である。
【
図15】本発明の実施形態に従う単一マージング候補リストを生成する方法を示す概念図である。
【
図16】本発明の実施形態に従うマージング候補リスト生成方法を示す概念図である。
【
図17】本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補の位置を示す概念図である。
【
図18】本発明の実施形態に従うマージング候補リスト生成方法を示す概念図である。
【
図19】本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補の位置を示す概念図である。
【
図20】本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補の位置を示す概念図である。
【
図21】本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補の位置を示す概念図である。
【
図22】本発明の実施形態に従う本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補の位置を示す概念図である。
【
図23】本発明の実施形態に従う単一候補リスト生成方法を使用する場合、複数の予測ブロックが並列的に復号化及び符号化する過程を示す概念図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して本発明の実施形態に対して具体的に説明する。本明細書の実施形態を説明するに当たって、関連した公知構成または機能に対する具体的な説明が本明細書の要旨を曖昧にすることがあると判断される場合にはその詳細な説明は省略する。
【0011】
ある構成要素が他の構成要素に“連結する”または“接続する”と言及された時には、該他の構成要素に直接的に連結されるか、または接続されることもあるが、中間に他の構成要素が存在することもできると理解されるべきである。併せて、本発明において、特定の構成を“含む”と記述する内容は、該当構成の以外の構成を排除するものでなく、追加的な構成が本発明の実施または本発明の技術的思想の範囲に含まれることを意味する。
【0012】
第1、第2などの用語は、多様な構成要素を説明することに使用できるが、上記構成要素は上記用語により限定されてはならない。上記用語は、1つの構成要素を他の構成要素から区別する目的のみに使われる。例えば、本発明の権利範囲を外れないで、かつ第1構成要素は第2構成要素と命名されることができ、類似するように、第2構成要素も第1構成要素と命名できる。
【0013】
また、本発明の実施形態に示す構成部は、互いに異なる特徴的な機能を示すために独立的に図示されるものであって、各構成部が分離されたハードウェアや1つのソフトウェア構成単位でなされることを意味しない。即ち、各構成部は説明の便宜上、各々の構成部に羅列して含んだものであって、各構成部のうち、少なくとも2つの構成部が合わせられて1つの構成部からなるか、または1つの構成部が複数個の構成部に分けられて機能を遂行することができ、このような各構成部の統合された実施形態及び分離された実施形態も本発明の本質から外れない限り、本発明の権利範囲に含まれる。
【0014】
また、一部の構成要素は本発明で本質的な機能を遂行する必須な構成要素ではなく、単に性能を向上させるための選択的な構成要素でありうる。本発明は、単に性能の向上のために使われる構成要素を除外した本発明の本質を具現することに必須な構成部のみを含んで具現されることができ、単に性能の向上のために使われる選択的な構成要素を除外した必須構成要素のみを含んだ構造も本発明の権利範囲に含まれる。
【0015】
図1は、本発明の一実施形態に従う映像符号化装置の構成を示すブロック図である。
【0016】
図1を参照すると、上記映像符号化装置100は、動き予測部111、動き補償部112、イントラ予測部120、スイッチ115、減算器125、変換部130、量子化部140、エントロピー符号化部150、逆量子化部160、逆変換部170、加算器175、フィルタ部180、及び参照映像バッファ190を含む。
【0017】
映像符号化装置100は、入力映像に対してイントラ(intra)モードまたはインター(inter)モードで符号化を遂行し、ビットストリームを出力することができる。イントラモードの場合、スイッチ115がイントラに切り換えられ、インターモードの場合、スイッチ115がインターに切り換えられる。映像符号化装置100は、入力映像の入力ブロックに対する予測ブロックを算出した後、入力ブロックと予測ブロックとの差分(residual)を符号化することができる。
【0018】
イントラモードは画面内予測モード、インターモードは画面間予測モード、イントラ予測部120は画面内予測部、動き予測部111及び動き補償部112は画面間予測部という用語として定義されて使用できる。
【0019】
イントラモードの場合、イントラ予測部120は現在ブロックの周辺の既に符号化したブロックのピクセル値を用いて空間的予測を遂行して予測ブロックを算出することができる。
【0020】
インターモードの場合、動き予測部111は、動き予測過程で参照映像バッファ190に格納されている参照映像で入力ブロックと最もよくマッチされる領域を探して動きベクトルを求めることができる。動き補償部112は、動きベクトルを用いて動き補償を遂行することによって、予測ブロックを算出することができる。
【0021】
減算器125は、入力ブロックと算出された予測ブロックとの差分により残差ブロック(residual block)を算出することができる。変換部130は、残差ブロックに対して変換(transform)を遂行して変換係数(transform coefficient)を出力することができる。ここで、変換係数は残差ブロック及び/又は残差信号に対する変換を遂行することによって、算出された係数値を意味することができる。以下、本明細書では変換係数に量子化が適用されて算出された、量子化した変換係数レベル(transform coefficient level)も変換係数と呼ばれることができる。
【0022】
量子化部140は、入力された変換係数を量子化パラメータによって量子化して、量子化した変換係数レベル(quantized transform coefficient level)を出力することができる。
【0023】
エントロピー符号化部150は、量子化部140で算出された値、または符号化過程で算出された符号化パラメータ値などに基づいてエントロピー符号化を遂行してビットストリーム(bit stream)を出力することができる。
【0024】
エントロピー符号化が適用される場合、高い発生確率を有するシンボル(symbol)に少ない数のビットが割り当てられ、低い発生確率を有するシンボルに多い数のビットが割り当てられてシンボルが表現されることによって、符号化対象シンボルに対するビット列のサイズが減少できる。したがって、エントロピー符号化を通じて映像符号化の圧縮性能が高まることができる。エントロピー符号化部150は、エントロピー符号化のために指数ゴロム(exponential golomb)、CAVLC(Context-Adaptive Variable Length Coding)、CABAC(Context-Adaptive Binary Arithmetic Coding)のような符号化方法を使用することができる。
【0025】
図1の実施形態に従う映像符号化装置はインター予測符号化、即ち画面間予測符号化を遂行するので、現在符号化した映像は参照映像に使われるために復号化して格納される必要がある。したがって、量子化した係数は逆量子化部160で逆量子化され、逆変換部170で逆変換される。逆量子化及び逆変換された係数は、加算器175を通じて予測ブロックと加えられ、復元ブロック(Reconstructed Block)が算出される。
【0026】
復元ブロックはフィルタ部180を経て、フィルタ部180はデブロッキングフィルタ(deblocking filter)、SAO(Sample Adaptive Offset)、ALF(Adaptive Loop Filter)のうち、少なくとも1つ以上を復元ブロックまたは復元ピクチャに適用することができる。フィルタ部180を経た復元ブロックは参照映像バッファ190に格納できる。
【0027】
図2は、本発明の更に他の実施形態に従う映像復号化装置の構成を示すブロック図である。
【0028】
図2を参照すると、上記映像復号化装置200は、エントロピー復号化部210、逆量子化部220、逆変換部230、イントラ予測部240、動き補償部250、加算器255、フィルタ部260、及び参照映像バッファ270を含む。
【0029】
映像復号化装置200は、符号化器から出力されたビットストリームの入力を受けてイントラモードまたはインターモードで復号化を遂行し、再構成された映像、即ち復元映像を出力することができる。イントラモードの場合、スイッチがイントラに切り換えられ、インターモードの場合、スイッチがインターに切り換えられる。映像復号化装置200は、入力を受けたビットストリームから復元された残差ブロック(reconstructed residual block)を得て、予測ブロックを算出した後、復元された残差ブロックと予測ブロックとを加えて再構成されたブロック、即ち復元ブロックを算出することができる。
【0030】
エントロピー復号化部210は、入力されたビットストリームを確率分布によってエントロピー復号化して、量子化した係数(quantized coefficient)形態のシンボルを含んだシンボルを算出することができる。エントロピー復号化方法は、前述したエントロピー符号化方法と類似している。
【0031】
エントロピー復号化方法が適用される場合、高い発生確率を有するシンボルに少ない数のビットが割り当てられ、低い発生確率を有するシンボルに多い数のビットが割り当てられてシンボルが表現されることによって、各シンボルに対するビット列のサイズが減少できる。したがって、エントロピー復号化方法を通じて映像復号化の圧縮性能が高まることができる。
【0032】
量子化した係数は逆量子化部220で逆量子化され、逆変換部230で逆変換され、量子化した係数が逆量子化/逆変換された結果、復元された残差ブロックが算出できる。
【0033】
イントラモードの場合、イントラ予測部240は現在ブロック周辺の既に復号化したブロックのピクセル値を用いて空間的予測を遂行して予測ブロックを算出することができる。インターモードの場合、動き補償部250は動きベクトル及び参照映像バッファ270に格納されている参照映像を用いて動き補償を遂行することによって、予測ブロックを算出することができる。
【0034】
復元された残差ブロックと予測ブロックは加算器255を通じて加えられ、加えられたブロックはフィルタ部260を経ることができる。フィルタ部260は、デブロッキングフィルタ、SAO、ALFのうち、少なくとも1つ以上を復元ブロックまたは復元ピクチャに適用することができる。フィルタ部260は再構成された映像、即ち復元映像を出力することができる。復元映像は、参照映像バッファ270に格納されてインター予測に使用できる。
【0035】
符号化/復号化装置の予測性能を向上させるための方法には、補間(interpolation)映像の正確度を高める方法と、差信号を予測する方法がある。ここで、差信号とは、原本映像と予測映像との差を示す信号である。本発明において、“差信号”は文脈に従って“差分信号”、“残余ブロック”、または“差分ブロック”に取り替えて使われることができ、該当技術分野で通常の知識を有する者は発明の思想、本質に影響を与えない範囲内でこれを区分することができる。
【0036】
本発明の実施形態では、映像を処理する単位に、符号化単位(coding unit:CU)、予測単位(prediction unit:PU)、変換単位(transform unit:TU)という用語を使用することができる。
【0037】
符号化単位は符号化/復号化を遂行する映像処理単位であって、符号化/復号化が遂行される輝度サンプルまたは色差サンプルのブロック単位集合である符号化ブロックと符号化ブロックのサンプルを符号化または復号化することに使われる情報を含むことができる。
【0038】
予測単位は予測を遂行する映像処理単位であって、予測が遂行される輝度サンプルまたは色差サンプルのブロック単位集合である予測ブロックと、予測ブロックのサンプルを予測することに使われる情報を含むことができる。符号化ブロックは、複数の予測ブロックに分けられる。
【0039】
変換単位は変換を遂行する映像処理単位であって、変換が遂行される輝度サンプルまたは色差サンプルのブロック単位集合である変換ブロックと、変換ブロックのサンプルを変換することに使われる情報を含むことができる。符号化ブロックは、複数の変換ブロックに分けられる。
【0040】
以下、本発明の実施形態では特別に区分して表示しない限り、ブロックとユニットとは同一な意味として解釈できる。
【0041】
また、現在ブロック(current block)は現在予測が遂行される予測ブロック、現在符号化が遂行される符号化ブロックのように特定の映像処理が遂行されるブロックを称することができる。例えば、1つの符号化ブロックが2つの予測ブロックに分割された場合、分割された予測ブロックのうち、予測が遂行されるブロックを現在ブロックという用語として称して使用することができる。
【0042】
本発明の実施形態において、後述する映像符号化方法及び映像復号化方法は、
図1及び
図2で前述した映像符号化器、及び映像復号化器に含まれた各構成部で遂行できる。構成部の意味はハードウェア的な意味だけでなく、アルゴリズムを通じて遂行できるソフトウェア的な処理単位も含むことができる。
【0043】
以下、本発明の実施形態で開示されるマージング候補リスト生成方法は、映像処理方法のうち、SKIPモード及び画面間予測方法のうちの1つのマージで全て使用することができる。SKIPモードは残差ブロックを生成せず、周辺ブロックから誘導された動き予測情報に基づいて予測されたブロックを復元ブロックに出力する映像処理方法である。画面間予測方法のうちの1つであるマージはSKIPモードと周辺ブロックから誘導された動き予測情報に基づいて予測されたブロックを生成するという点で同一であるが、残差ブロック情報を追加的に符号化及び復号化して残差ブロックと予測ブロックとを合わせた復元ブロックを出力する映像処理方法である。出力された復元ブロックには、デブロッキングフィルタリング及びサンプル適応的オフセットなどのようなループ内フィルタリング方法がさらに適用できる。
【0044】
図3は、本発明の実施形態に従うマージを用いた画面間予測方法を説明するための概念図である。
【0045】
図3を参照すると、マージを用いた画面間予測は、以下のような方法により遂行できる。
【0046】
マージを用いた画面間予測は、現在ブロックの周辺ブロックからマージング候補を誘導し、誘導されたマージング候補を使用して画面間予測を遂行する方法をいう。マージング候補を誘導するために使われる周辺ブロックは、現在ブロックと同一なピクチャに存在しながら現在ブロックに隣接したブロックと、現在ブロックと他のピクチャに存在しながら現在ブロックにコロケート(collocate)された位置に存在するブロックとに区分できる。
【0047】
以下、本発明の実施形態ではマージング候補を誘導するために使われる周辺ブロックのうち、現在ブロックと同一なピクチャに存在しながら現在ブロックに隣接したブロックを空間的マージング候補ブロックと定義し、空間的マージング候補ブロックから誘導された動き予測関連情報を空間的マージング候補という用語として定義して使用する。また、マージング候補を誘導するために使われる周辺ブロックのうち、現在ブロックと異なるピクチャに存在しながら現在ブロックにコロケート(collocate)された位置に存在するブロックを時間的マージング候補ブロックと定義し、時間的マージング候補ブロックから誘導された動き予測関連情報を時間的マージング候補という用語として定義して使用する。
【0048】
即ち、マージを用いた画面間予測方法は、空間的マージング候補ブロックの動き予測関連情報(空間的マージング候補(spatial merging candidate))または追って説明する時間的マージング候補ブロックの動き予測関連情報(時間的マージング候補(temporal merging candidate))を使用して現在ブロックを予測する画面間予測方法である。
【0049】
動き予測関連情報には、例えば、動きベクトル(motion vector、mvL0/L1)、参照ピクチャインデックス(refIdxL0/L1)、参照ピクチャリスト活用情報(pred FlagL0/L1)が使用できる。
図3の(A)は、動きベクトル(motion vector、mvL0/L1)、参照ピクチャインデックス(refIdxL0/L1)、参照ピクチャリスト活用情報(pred FlagL0/L1)に対して示す。
【0050】
動きベクトル304は方向性情報であって、画面間予測を遂行するに当たって予測ブロックが参照ピクチャで特定位置に存在するピクセル情報を誘導するために使用できる。予測ブロックで複数個の方向性情報を用いて画面間予測が遂行される場合、mvL0とmvL1を使用して各々の方向に対する動きベクトルを示すことができる。
【0051】
参照ピクチャインデックス306は、予測ブロックが画面間予測を遂行するに当たって参照するピクチャに対するインデックス情報である。複数個の参照ピクチャを使用して画面間予測を遂行する場合、参照ピクチャインデックスもrefIdxL0及びrefIdxL1を使用して各々の使われる参照ピクチャをインデクシングすることができる。
【0052】
参照ピクチャリスト活用情報は、参照ピクチャがどの参照ピクチャリスト308から誘導されたピクチャであるかを示すことができる。例えば、i、j、kピクチャは参照ピクチャリスト0 308に格納されて使用できる。参照ピクチャが格納されたリストが2つ存在する場合、predFlagL0とpredFlagL1を使用して参照ピクチャがどの参照ピクチャリストから誘導されたかに対する情報を示すことができる。
【0053】
マージを用いた画面間予測方法を遂行するために、まず、以下の(1)ステップを通じて空間的マージング候補を獲得することができる。
図3(B)では空間的マージング候補及び時間的マージング候補に対して開示する。
【0054】
(1)現在ブロック(予測対象ブロック)に対する周辺ブロックから空間的マージング候補を誘導する。
【0055】
前述したように、空間的マージング候補は空間的マージング候補ブロックから誘導される動き予測関連情報である。空間的マージング候補ブロックは現在ブロックの位置を基準に算出できる。
【0056】
図3の(B)を参照すると、既存の空間的マージング候補ブロック300、310、320、330、340は、予測ブロックを基準に算出された。予測ブロックの左上端に存在するピクセルの位置を(xP、yP)、予測ブロックの幅をnPbW、予測対象ブロックの高さをnPbH、MinPbSizeは最も小さい予測ブロックのサイズを示すとする場合、以下、本発明の実施形態では予測ブロックの空間的マージング候補ブロックは(xP-1、yP+nPbH)に存在するピクセルを含むブロックを左側第1ブロック(または、A0ブロック)300、(xP-1、yP+nPbH-1)に存在するピクセルを含むブロックを左側第2ブロック(または、A1ブロック)310、(xP+nPbW、yP-1)に位置するピクセルを含むブロックを上端第1ブロック(または、B0ブロック)320、(xP+nPbW-1、yP-1)に位置するピクセルを含むブロックを上端第2ブロック(B1ブロック)330、(xP-1、yP-1)に位置するピクセルを含むブロックを上端第3ブロック(B2ブロック)340となることができる。1の代りに他の値、例えば、“MinPbSize”を使用することもでき、このような場合にも同一な位置のブロックを指示することができる。上記の特定位置のブロックを指示するために使われた座標は任意的なものであって、多様な他の表現方法により同一な位置のブロックを指示することもできる。
【0057】
図3で開示した空間的マージング候補ブロック300、310、320、330、340の位置及び個数と、時間的マージング候補ブロック360、370の位置及び個数は任意的なものであって、本発明の本質から外れない限り、空間的マージング候補ブロックの位置及び個数と、時間的マージング候補ブロックの位置及び個数は変わることがある。また、マージング候補リストを構成時、優先的にスキャンされるマージング候補ブロックの順序も変わることがある。即ち、以下、本発明の実施形態で説明する候補予測動きベクトルリストの構成時に使われる候補予測ブロックの位置、個数、スキャン順序、候補予測グループなどは1つの実施形態であって、本発明の本質から外れない限り、変わることがある。
【0058】
空間的マージング候補ブロック300、310、320、330、340が使用可能か否かを判断して、使用可能な空間的マージング候補ブロックで空間的マージング候補を誘導することができる。空間的マージング候補で空間的マージング候補が誘導できるかを示す情報が使用可能性情報である。例えば、空間的マージング候補ブロックが現在ブロックが属したスライス、タイル(tile)、またはピクチャの外部に位置する場合、または画面内予測が遂行されたブロックの場合、動き予測関連情報である空間的マージング候補が誘導できず、このような場合、空間的マージング候補ブロックが使用可能でないことと判断できる。空間的マージング候補の使用可能性情報を判断するためには、さまざまな判断方法を使用することができる。このような実施形態に対しては追加的に詳述する。
【0059】
使用可能な空間的マージング候補ブロックに対し、動き予測関連情報を誘導して現在ブロックを予測するために使用することができる。
【0060】
1つの符号化ブロックは少なくとも1つの予測ブロックに分割できる。即ち、符号化ブロックは1つ以上の予測ブロックを含むことができる。符号化ブロックに含まれる予測ブロックが複数の場合、特定のインデックス情報を用いて予測ブロックを指示することができる。例えば、1つの符号化ブロックが2つの予測ブロックに分割された場合、1つの予測ブロックのパーティションインデックス(partition index)を0、残りの1つの予測ブロックのパーティションインデックス(partition index)を1に設定して2つの予測ブロックを指示することができる。パーティションインデックス(partition index)が0の場合は第1予測ブロック、パーティションインデックス(partition index)が1の場合は第2予測ブロックのように、異なる用語を使用して定義することもできる。1つの符号化ブロックが追加の予測ブロックにさらに分割される場合、予測ブロックを指示するインデックス値は増加できる。予測ブロックを称するために定義された用語は任意的なものであって、異なるように使われることもでき、異なるように解釈されることもできる。
【0061】
予測ブロックのパーティションインデックス(partition index)は、予測ブロックが符号化及び復号化のような映像処理の遂行時に処理される順序を示すための情報にも使用できる。また、以下、本発明の実施形態に従う単一候補リスト共有方法では、並列的なマージプロセッシングが実施可能なブロックを新しく定義して並列的なマージプロセッシングについて説明する。並列的なマージプロセッシングが実施可能なブロックは、少なくとも1つの符号化ブロックまたは複数個の予測ブロックを含む単位として定義できる。これについては追加的に後述する。
【0062】
仮に、予測ブロック別に空間的マージング候補を算出する場合、1つの符号化ブロックが2つの予測ブロックに分割されたとすれば、各々のブロックに対する空間的マージング候補を各々算出しなければならない。このような場合、1つの符号化ブロック内に含まれる1つの予測ブロックに対する符号化または復号化が終わるまで待たなければ他の予測ブロックの空間的マージング候補を算出できない。なぜならば、一部の空間的マージング候補ブロック310の場合、他の予測ブロックに含まれて該当予測ブロックが符号化または復号化を終えなければ空間的マージング候補ブロックを誘導できず、また一部の位置の空間的マージング候補ブロック300は未だ符号化または復号化が遂行されていない場合も存在するためである。即ち、複数個の予測単位を含む符号化ブロックの場合、各々の予測ブロックに対する並列的な符号化または復号化が遂行できないという問題点がある。
図4では、このような問題点に対して開示する。
【0063】
図4は、1つの符号化ブロックが2つの予測ブロックに分割された場合を示す概念図である。
【0064】
図4を参照すると、1つの符号化ブロックがNx2N形態の第1予測ブロック400と第2予測ブロック420とに分割される。第1予測ブロック400に対する空間的マージング候補ブロックは、
図4の(A)のように第1予測ブロック400の位置を基準に算出され、第2予測ブロック420に対する空間的マージング候補ブロックは、
図4の(B)のように、第2予測ブロック420の位置を基準に算出される。時間的マージング候補ブロックは図示してはいないが、時間的マージング候補も各々の予測ブロックの位置を基準に算出される。
【0065】
第1予測ブロック400の空間的マージング候補ブロックの場合、第1予測ブロック400の外部に存在するブロックであって、既に符号化または復号化が終了した位置に存在する。
【0066】
しかしながら、第2予測ブロック420の空間的マージング候補ブロックのうち、A1ブロック430は第1予測ブロック400の内部に存在するブロックである。したがって、第1予測ブロック400の予測が遂行された後にA1ブロック430の動き予測関連情報が分かる。即ち、第2予測ブロック420のマージング候補リスト生成過程が第1予測ブロック400のマージング候補リスト生成後に遂行されるようになる。
【0067】
図4の(C)は、1つの符号化ブロックが2つの予測ブロックに分割された場合、マージ候補リストが生成される順序を示す。
【0068】
図4の(C)を参照すると、符号化過程及び復号化過程で1つの符号化ブロックが複数の予測ブロックに分割される場合、複数の予測ブロックに対するマージ候補リストを生成する過程が並列的に遂行できず、複数の予測ブロックに対するマージ候補リストを生成する過程が各々の予測ブロックに対して順次的に進行されることが分かる。
【0069】
本発明の実施形態に従う候補リスト共有方法及びこのような方法を使用する装置では、空間的マージング候補及び時間的マージング候補を誘導するに当たって、1つの符号化ブロックに分割された複数の予測単位がマージング候補リストを共有する方法に対して開示する。複数の予測単位が共有するマージング候補リストを単一マージング候補リスト(single merging candidate list)という用語として定義して使用することができる。
【0070】
即ち、本発明では符号化ブロックが分割されて符号化ブロック内に含まれる多数個の予測ブロックに対して単一マージング候補リストを使用して複数個の予測ブロックがマージを用いた画面間予測を遂行する方法に対して開示する。単一マージング候補リストを使用することで、予測ブロック別にマージング候補リストを多数回生成することによって発生する複雑度も減少させることができる。また、マージを使用して画面間予測を遂行する1つの符号化ブロック内で分割された複数の予測ブロックが並列的に符号化または復号化できる。
【0071】
単一マージング候補リストを生成する方法に対しては、以下、本発明の実施形態でさらに開示する。
【0072】
(2)時間的マージング候補の参照ピクチャインデックスを設定する。
【0073】
時間的マージング候補は、現在ブロックが含まれたピクチャと異なるピクチャに存在する時間的マージング候補ブロックから誘導される動き予測関連情報である。時間的マージング候補ブロックは、現在ブロックの位置を基準にコロケート(collocated)された位置に存在するブロックを基準に算出されたブロックである。コールブロックという用語も時間的マージング候補ブロックと同一な意味として使用できる。
【0074】
また、
図3を参照すると、時間的マージング候補ブロック360、370は、予測ブロックを含むピクチャ内のピクセル位置(xP、yP)を基準に現在予測ブロックのコールピクチャ(Colocated Picture)で(xP+nPSW、yP+nPSH)位置のピクセルを含むブロック、または(xP+nPSW、yP+nPSH)位置のピクセルを含むブロックが使用可能でない場合、(xP+(nPSW>>1)、yP+(nPSH>>1))位置のピクセルを含むブロックになることができる。コールピクチャで(xP+nPSW、yP+nPSH)位置のピクセルを含む予測ブロックを第1時間的マージング候補ブロック(または、第1コロケートブロック(Colocated Block))360といい、コールピクチャで(xP+(nPSW>>1)、yP+(nPSH>>1))位置のピクセルを含む予測ブロックを第2時間的マージング候補ブロック370ということができる。最終的に、時間的マージング候補(動き予測関連情報)を算出することに使われる最終時間的マージング候補ブロックの位置は、第1時間的マージング候補ブロック360、及び第2時間的マージング候補ブロック370の位置を基準に一部移動した位置に存在するブロックでありうる。例えば、メモリにコールピクチャに存在する一部の予測ブロックの動き予測関連情報のみ格納する場合、第1時間的マージング候補ブロック360及び第2時間的マージング候補ブロック370の位置を基準に一部移動した位置に存在するブロックを最終的な動き予測関連情報を誘導する最終時間的マージング候補ブロックに使用することができる。空間的マージング候補ブロックと同様に、時間的マージング候補ブロックの位置は
図3と異に、変更または追加可能であり、このような実施形態に対しては以下に後述する。
【0075】
時間的マージング候補の参照ピクチャインデックスは、現在ブロックが時間的マージング候補から算出された動きベクトル(mvLXCol)に基づいて画面間予測を遂行するために参照されるピクチャを指示する情報である。
【0076】
図5は、本発明の実施形態に従う時間的マージング候補を用いた画面間予測と時間的マージング候補の参照ピクチャインデックスを説明するための概念図である。
【0077】
図5を参照すると、現在ブロック500、現在ブロックが含まれたピクチャ510、時間的マージング候補ブロック520、コールブロックが含まれたコールピクチャ530が定義できる。
【0078】
時間的マージング候補ブロック520の観点から見ると、時間的マージング候補ブロック520に対する画面間予測を遂行するために、時間的マージング候補ブロックが画面間予測に使用したピクチャ540が存在する。このようなピクチャは、コールピクチャ530の参照ピクチャ540と定義される。また、時間的マージング候補ブロック520がコールピクチャの参照ピクチャ540から画面間予測を遂行するために使われる動きベクトルは、mvCol 570と定義することができる。
【0079】
現在ブロック500の観点から見ると、算出されたmvCol 570に基づいて現在ブロック500の画面間予測に使われる参照ピクチャ560が定義されなければならない。現在ブロック500の画面間予測に使われるために定義された参照ピクチャを時間的マージング候補の参照ピクチャ560ということができる。即ち、時間的マージング候補の参照ピクチャ560のインデックス(reference index of the temporal merging candidate)は、現在ブロック500の時間的動き予測に使われる参照ピクチャを指示するための値である。ステップ(2)では、このような時間的マージング候補の参照ピクチャインデックスを誘導することができる。
【0080】
時間的マージング候補ブロック520から誘導される動きベクトルであるmvCol 570は、コールピクチャ530とコールピクチャの参照ピクチャ540との間の距離と、現在ブロックが含まれたピクチャ510とステップ(2)を通じて算出された時間的マージング候補の参照ピクチャ560との間の距離間の関係によってスケーリングされて他の値に変形できる。
【0081】
即ち、現在ブロック500の時間的マージング候補を通じての画面間予測は、(2)を通じて算出された時間的マージング候補の参照ピクチャインデックス560と時間的マージング候補の参照ピクチャインデックス560を基準に以下に後述するステップ(3)を通じて誘導されたmvLXCol580を通じて遂行できる。mvLXColを時間的動きベクトルと定義することができる。
【0082】
(3)時間的マージング候補の動き予測関連情報を誘導する。
【0083】
ステップ(3)では、時間的マージング候補に基づいた動き予測を遂行するために、時間的マージング候補ブロックが使用可能か否かに対する情報(availableFlagCol)、参照ピクチャリスト活用情報(PredFlagLXCol)、時間的マージング候補の動きベクトル情報(mvLXCol)のような時間的マージング候補を誘導することができる。時間的マージング候補ブロックの使用可能性情報は、時間的マージング候補ブロックで時間的マージング候補を誘導できるか否かに対する情報である。時間的マージング候補ブロックの使用可能性情報に基づいて時間的マージング候補をマージング候補リストに含めることができる。
【0084】
(4)マージング候補リスト(merging candidate list)を算出する。
【0085】
マージング候補リストは、マージング候補ブロック(空間的マージング候補ブロック、時間的マージング候補ブロック)の使用可能性情報に基づいてマージを用いた画面間予測に使用できるマージング候補に対する情報を含むことができる。マージング候補リストに含まれた1つのマージング候補を現在ブロックを予測することに使用することができる。どのマージング候補を現在ブロックを予測することに使用するかに対する情報(マージインデックス)が符号化ステップで符号化されて復号化器に転送できる。
【0086】
マージング候補リストは、以下のような優先順位で生成できる。
1)仮に、A1ブロックが使用可能な場合、A1ブロックから誘導されたマージング候補
2)仮に、B1ブロックが使用可能な場合、B1ブロックから誘導されたマージング候補
3)仮に、B0ブロックが使用可能な場合、B0ブロックから誘導されたマージング候補
4)仮に、A0ブロックが使用可能な場合、A0ブロックから誘導されたマージング候補
5)仮に、B2ブロックが使用可能な場合、B2ブロックから誘導されたマージング候補
6)仮に、Colブロックが使用可能な場合、Colブロックから誘導されたマージング候補
【0087】
マージング候補リストには使用可能ブロックの個数によって、例えば、0~5個のマージング候補が含まれることができる。マージング候補を誘導することに使われるブロックがより多い場合、より多いマージング候補がマージング候補リストに含まれることも可能である。
【0088】
(5)マージング候補リストに含まれたマージング候補の個数がマージング候補リストに含まれることができる最大マージング候補の個数より小さい場合、追加的なマージング候補を誘導する。
【0089】
追加的なマージング候補は、既存のマージング候補の動き予測関連情報を組み合わせて生成された候補(combined merging candidate)、または0ベクトルマージング候補(zero merging candidate)になることができる。ここで、0ベクトルマージング候補とは、動きベクトルが(0、0)のマージング候補を称する。
【0090】
(6)マージング候補リストに含まれたマージング候補のうち、現在ブロックの画面間予測に適用されるマージング候補を決定し、マージング候補の動き予測関連情報を現在ブロックの動き予測関連情報に設定する。
【0091】
復号化過程では、現在ブロックの画面間予測にマージング候補リストに含まれた候補のうち、どの候補が使われるかに対する情報であるマージインデックス(merge_idx[xP][yP])に基づいて現在ブロックに対してマージを用いた画面間予測を遂行することができる。
【0092】
上記のようなステップ(1)からステップ(6)の手続を通じて現在ブロックに対する動き予測関連情報を誘導し、これを用いて現在ブロックに対する画面間予測を遂行することができる。
【0093】
以下、本発明の実施形態ではステップ(1)の現在ブロック(予測対象ブロック)の空間的マージング候補ブロックから空間的マージング候補を誘導する方法を使用するに当たって、1つの符号化ブロックに含まれる少なくとも1つの予測ブロックに対して単一マージング候補リストを誘導して、少なくとも1つの予測ブロックに対して並列的マージングプロセッシングが行われる方法について追加的に開示する。以下、本発明の実施形態では説明の便宜上、1つの符号化ブロックが複数の予測ブロックに分割された場合を仮定して説明するが、1つの符号化ブロックが分割されず、符号化ブロックのサイズが1つの予測ブロックのサイズと同一な場合にも適用できる。
【0094】
以下、実施形態では空間的マージング候補及び時間的マージング候補を中心として単一マージング候補リストを構成する方法について説明するが、空間的マージング候補及び/又は時間的マージング候補の動き予測関連情報を組み合わせて生成された候補(combined merging candidate)をマージング候補リストに追加するか、または0ベクトルマージング候補(zero merging candidate)をマージング候補リストに追加する場合にも、空間的マージング候補及び時間的マージング候補の場合と同様に、1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された単一マージング候補リストを使用するように適用することができる。
【0095】
単一マージング候補リストを構成するために、複数の予測ブロックは、1)空間的マージング候補と時間的マージング候補を全て共有するか、2)空間的マージング候補のみを共有するか、3)時間的マージング候補のみを共有することができる。2)、3)の場合、予測ブロックに対するマージング候補リストが互いに異なることがあるが、一部の候補を共有するので、便宜上、単一マージング候補リストという用語として包括的に定義して使用する。
【0096】
より詳しくは、
(1)1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された空間的マージング候補、時間的マージング候補を全て共有して単一マージング候補リストを生成する方法。
【0097】
(2)1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された空間的マージング候補のみを共有し、時間的マージング候補は各々の予測ブロックに基づいて算出されたブロックを使用して単一マージング候補リストを生成する方法。
【0098】
(3)1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された時間的マージング候補のみを共有し、空間的マージング候補は各々の予測ブロックに基づいて算出されたブロックを使用して単一マージング候補リストを生成する方法を通じて互いに異なる予測ブロック間でマージング候補リストを共有することができる。
【0099】
図6は、本発明の実施形態に従う複数の予測ブロックで空間的マージング候補と時間的マージング候補とを全て共有して単一マージング候補リストを生成する方法を示す概念図である。
【0100】
図6では、1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された空間的マージング候補、時間的マージング候補を全て共有して単一マージング候補リストを生成する方法に対して開示する。
【0101】
図6を参照すると、第1予測ブロック600と第2予測ブロック650は、同一な空間的マージング候補ブロックから空間的マージング候補を算出して空間的マージング候補を共有することができる。第1予測ブロック600と第2予測ブロック650に対する空間的マージング候補ブロックは、符号化ブロックを基準に決定されたブロックであって、A0ブロック605、A1ブロック610、B0ブロック615、B1ブロック620、B2ブロック625が空間的マージング候補ブロックに使用できる。
【0102】
各々の空間的マージング候補ブロックの位置は、符号化ブロックの左上端位置(xC、yC)とnCS(符号化ブロックのサイズ)を基準に図面に表示されたピクセルを含んだ位置となることができる。
【0103】
A0ブロック605は(xC-1、yC+nCS)に存在するピクセルを含むブロック、A1ブロック610は(xC-1、yC+nCS-1)に存在するピクセルを含むブロック、B0ブロック615は(xC+nCS、yC-1)に位置するピクセルを含むブロック、B1ブロック620は(xC+nCS-1、yC-1)に位置するピクセルを含むブロック、B2ブロック625は(xC-1、yC-1)に位置するピクセルを含むブロックになることができる。
【0104】
また、第1予測ブロック600と第2予測ブロック650とは時間的マージング候補を共有することができる。第1予測ブロック600及び第2予測ブロック650で共有される時間的マージング候補を誘導する時間的マージング候補ブロック660、670やはり符号化ブロックの左上端位置(xC、yC)と符号化ブロックのサイズ(nCS)を基準に算出された位置に存在するブロックに誘導できる。
【0105】
例えば、時間的マージング候補ブロック660、670は予測ブロックを含むピクチャ内のピクセル位置(xC、yC)を基準に現在予測ブロックのコールピクチャ(Colocated Picture)で(xC+nCS、yC+nCS)位置のピクセルを含む予測ブロック660、または(xC+nCS、yC+nCS)位置のピクセルを含む予測ブロックが使用可能でない場合、(xC+(nCS>>1)、yC+(nCS>>1))位置のピクセルを含む予測ブロック670になることができる。
【0106】
単一マージング候補リストを誘導する方法を使用することで、各々の予測ブロックに対して並列的マージプロセッシングを行って画面間予測を遂行することができ、また予測ブロックの各々に対してマージング候補リストを別途に誘導しなくてもよい。したがって、本発明の実施形態に従う単一マージング候補リストを使用することによって、高いデータ処理量を要求するUHDTV(ultra-high definition television)のような装置で映像の処理速度を向上させることができる。
【0107】
図6では、Nx2N形態に分割された第1のNx2N予測ブロック600と第2のNx2N予測ブロック650に対してのみ開示したが、このような方法は他の分割形態を有するブロック(例えば、2NxN、2NxnU、2NxnD、nLx2N、nRx2N、またはNxNのような多様な形態に分割された予測ブロックに対しても適用できる。
【0108】
また、このような方法はブロックのサイズ(size)または分割深さ(depth)によって単一マージング候補リストを適用するか否かを異なるように決定することができる。例えば、マージプロセスを並列的に実施できるブロックのサイズ及び符号化ブロックのサイズ情報などに基づいて、特定ブロックが単一マージング候補リストが使われるブロックか否かに対する情報を誘導することができる。例えば、特定ブロックが単一マージング候補リストが使われるブロックか否かに対する情報は、フラグ情報として表現することができる。特定ブロックが単一マージング候補リストが使われるブロックか否かに対するフラグは、singleMCLflag(single merge candidate list flag)と定義できる。例えば、singleMCLflagが0の場合はブロックが単一マージ候補リストを使用しないということを表し、singleMCLflagが1の場合はブロックが単一マージ候補リストを使用することを示す。singleMCLflagの値に基づいて予測ブロックに対する空間的マージング候補は、符号化ブロックを基準に誘導できる。
【0109】
例えば、マージプロセスを並列的に実施できるブロックのサイズは4×4サイズより大きい値という情報と、現在ブロックサイズが8×8という情報に基づいて8×8符号化ブロックから分割される予測ブロックが単一マージング候補リストを使用することを示すフラグ情報を誘導することができる。誘導されたフラグは、追って予測ブロックの空間的マージング候補及び時間的マージング候補を符号化ブロックを基準に誘導するために使用できる。
【0110】
このような本発明の実施形態に対しては以下の実施形態で追加的に後述する。
【0111】
図7は、本発明の実施形態に従う複数の予測ブロックで空間的マージング候補のみを共有して単一マージング候補リストを生成する方法を示す概念図である。
【0112】
図7では、1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された空間的マージング候補のみを共有し、時間的マージング候補は各々の予測ブロックに基づいて算出された候補を使用して単一マージング候補リストを生成する方法に対して開示する。
【0113】
図7を参照すると、第1予測ブロック700と第2予測ブロック750とは同一な空間的マージング候補を共有することができる。第1予測ブロック700及び第2予測ブロック750に対する空間的マージング候補ブロックは符号化ブロックを基準に決定されたブロックであって、A0 705、A1 710、B0 715、B1 720、B2 725ブロックが空間的マージング候補ブロックに使用することができる。各々のブロックは、
図6のように、符号化ブロックを基準に算出された位置に存在することができる。
【0114】
第1予測ブロック700及び第2予測ブロック750の時間的マージング候補ブロック(または、コールブロック)は、各々の予測ブロック位置を基準に算出できる。
【0115】
第1予測ブロック700は、自身のブロック位置を基準に決定された時間的マージング候補ブロックであるHpu0ブロック755、Mpu0ブロック760のうち、少なくとも1つのブロックを時間的マージング候補に使用することができる。第2予測ブロック750は、自身のブロック位置を基準に決定されたコールブロックであるHpu1ブロック765、Mpu1ブロック770のうち、少なくとも1つのブロックを時間的マージング候補に使用することができる。前述したように、最終的に動き予測関連情報を算出するための時間的マージング候補ブロックの位置は、Hpu0ブロック755、Mpu0ブロック760、Hpu1ブロック765、Mpu1ブロック770の位置を基準に一部移動した位置に該当するブロックでありうる。
【0116】
時間的マージング候補ブロック755、760、765、770は予め符号化または復号化したピクチャに存在するブロックであって、時間的コールブロックを共有しない場合にも第1予測ブロック700及び第2予測ブロック750は並列的にマージ候補リストを生成して画面間予測を遂行することができる。
【0117】
図8は、本発明の実施形態に従う複数の予測ブロックで時間的マージング候補のみを共有して単一マージング候補リストを生成する方法を示す概念図である。
【0118】
図8では、1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された時間的マージング候補のみを共有し、空間的マージング候補は各々の予測ブロックに基づいて算出された候補を使用して単一マージング候補リストを生成する方法に対して開示する。
【0119】
図8を参照すると、第1予測ブロック800及び第2予測ブロック850は、各々のブロック位置及びサイズに従う空間的マージング候補ブロックから互いに異なる空間的マージング候補を誘導することができる。
【0120】
第1予測ブロック800に対する空間的マージング候補ブロックは、A0ブロック805、A1ブロック810、B0ブロック813、B1ブロック815、B2ブロック820であり、各々のブロックの位置は第1予測ブロック800の上端左側ピクセル位置と第1予測ブロック800のサイズ(幅及び高さ)に基づいて誘導できる。
【0121】
例えば、第1予測ブロックの左上端ピクセルが(xP、yP)であれば、予測ブロックの空間的マージング候補ブロックは(xP-1、yP+nPbH)に存在するピクセルを含むブロックを左側第1ブロック(または、A0ブロック)805、(xP-1、yP+nPbH-1)に存在するピクセルを含むブロックを左側第2ブロック(または、A1ブロック)810、(xP+nPbW、yP-1)に位置するピクセルを含むブロックを上端第1ブロック(または、B0ブロック)813、(xP+nPbW-1、yP-1)に位置するピクセルを含むブロックを上端第2ブロック(B1ブロック)815、(xP-1、yP-1)に位置するピクセルを含むブロックを上端第3ブロック(B2ブロック)820となることができる。
【0122】
第2予測ブロック850に対する空間的マージング候補ブロックは、A0’ブロック825、A1’ブロック830、B0’ブロック835、B1’ブロック840、B2’ブロック815であり、各々のブロックの位置は第2予測ブロック850の上端左側ピクセル位置と第2予測ブロック850のサイズ(幅及び高さ)に基づいて誘導できる。
【0123】
例えば、第2予測ブロックの左上端ピクセルが(xP’、yP’)であれば、予測ブロックの空間的マージング候補ブロックは(xP’-1、yP’+nPbH)に存在するピクセルを含むブロックを左側第1ブロック(または、A0’ブロック)825、(xP’-1、yP’+nPbH-1)に存在するピクセルを含むブロックを左側第2ブロック(または、A1’ブロック)830、(xP’+nPbW、yP’-1)に位置するピクセルを含むブロックを上端第1ブロック(または、B0’ブロック)835、(xP’+nPbW-1、yP’-1)に位置するピクセルを含むブロックを上端第2ブロック(B1’ブロック)840、(xP’-1、yP’-1)に位置するピクセルを含むブロックを上端第3ブロック(B2’ブロック)815となることができる。
【0124】
即ち、各々の予測ブロック800、850の位置とサイズを基準に空間的マージング候補が算出できる。
【0125】
第1予測ブロック800及び第2予測ブロック850の時間的マージング候補ブロック(または、コールブロック)860、870は、符号化ブロックを基準に算出されて2つの予測ブロックが同一な時間的マージング候補を共有することができる。
【0126】
前述した単一マージ候補リスト算出方法は、AMVP(advanced motion vector prediction)を用いた画面間予測モードでAMVPリスト(または、動きベクトル予測候補リスト(motion vector predictor candidate list))を生成するためにも使用できる。
【0127】
図9は、AMVPを用いた画面間予測モードを説明するための概念図である。
【0128】
図9を参照してAMVPを用いた画面間予測モードについて簡略に説明すれば、AMVPを用いた画面間予測モードで使われる空間的候補予測ブロックは、左側第1ブロック(A0)900、左側第2ブロック(A1)910、上端第1ブロック(B0)920、上端第2ブロック(B1)930、上端第3ブロック(B2)940を含むことができる。このような空間的候補予測ブロックは、2つの空間的候補予測グループに分けられるが、左側第1ブロック900及び左側第2ブロック910を含むグループを第1空間的候補予測グループ、上端第1ブロック920、上端第2ブロック930、上端第3ブロック940を含むグループを第2空間的候補予測グループという用語として定義することができる。
【0129】
また、時間的候補予測ブロックに現在予測ブロックを含むピクチャ内のピクセル位置(xP、yP)に基づいて現在予測ブロックのコールピクチャ(Colocated Picture)で(xP+nPbW、yP+nPbH)位置のピクセルを含む予測ブロック950、または(xP+nPbW、yP+nPbH)位置のピクセルを含む予測ブロックが使用可能でない場合、(xP+(nPbW>>1)、yP+(nPbH>>1))位置のピクセルを含む予測ブロック960を含むことができる。マージと同一にAMVPでも最終的に動き予測関連情報を算出することに使われる最終時間的マージング候補は、第1時間的マージング候補950及び第2時間的マージング候補960の位置を基準に一部移動した位置に存在するブロックでありうる。
【0130】
AMVPを用いた画面間予測方法は、各々の空間的候補予測グループで算出された動きベクトル及び時間的候補予測ブロックで算出された動きベクトル(motion vector)に基づいて動きベクトル予測候補リストを生成することができる。算出された動きベクトル予測候補リストの動きベクトルは、現在ブロックに対する画面間予測を遂行するために使用できる。
【0131】
候補予測ブロック(空間的候補予測ブロック、または時間的候補予測ブロック)で動きベクトルを算出する方法は、並列的に遂行できる。例えば、候補予測動きベクトルを誘導するに当たって、2つの空間的候補予測グループ(第1空間的候補予測グループ、第2空間的候補予測グループ)から各々1つの候補予測動きベクトルが誘導され、時間的候補予測ブロックから1つの候補予測動きベクトルが誘導される場合、第1空間的候補予測グループ、第2空間的候補予測グループ、時間的候補予測ブロックで候補予測動きベクトルを算出する動作が並列的に遂行できる。候補予測動きベクトル誘導過程が並列的に遂行されるということは、候補予測動きベクトル誘導過程の複雑度を減少させることができるということを意味する。即ち、第1空間的候補予測グループで第1空間的候補予測動きベクトルを算出するステップ、第2空間的候補予測グループで空間的候補予測動きベクトルを算出するステップ、時間的候補予測ブロックで時間的候補予測動きベクトルを算出するステップが並列的に遂行できる。
【0132】
本発明の実施形態によれば、符号化ブロックから分割された各々の予測ブロックに対するAMVPを用いた画面間予測も並列的に遂行できる。
【0133】
AMVPでもマージと同一に1つの符号化ブロックが複数の予測単位に分割された場合、予測ブロック別に動きベクトル予測候補リストを生成する。このような場合、特定予測ブロックの空間的候補予測ブロックが他の予測ブロックに含まれて予測が終わるまで待たなければならない。したがって、動きベクトル予測候補リストを生成するか、または特定予測ブロックの空間的候補予測ブロックが未だ符号化または復号化していない位置に存在する場合、該当ブロックから動きベクトルを誘導できない場合が存在する。
【0134】
このような問題点を解決するために、動きベクトル予測候補リストを構成するために、複数の予測ブロックは、1)空間的候補予測ブロック及び時間的候補予測ブロックを全て共有するか、2)空間的候補予測ブロックのみを共有するか、3)時間的候補予測ブロックのみを共有して空間的候補予測動きベクトルまたは時間的候補予測動きベクトルを算出することができる。2)、3)の場合、予測ブロックに対する動きベクトル予測候補リストが互いに異なることがあるが、一部の候補を共有するので、便宜上、単一動きベクトル予測候補リストという用語として包括的に定義して使用する。
【0135】
より詳しくは、
(1)1つの符号化ブロックから分割された複数の予測ブロックが符号化ブロックに基づいて誘導された空間的候補予測ブロック及び時間的候補予測ブロックを全て共有して単一動きベクトル予測候補リストを生成する方法。
【0136】
(2)1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて誘導された空間的候補予測ブロックのみを共有し、時間的候補予測ブロックは各々の予測ブロックに基づいて算出されたブロックを使用して単一動きベクトル予測候補リストを生成する方法。
【0137】
(3)1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて誘導された時間的候補予測ブロックのみを共有し、空間的候補予測ブロックは各々の予測ブロックに基づいて算出されたブロックを使用して単一動きベクトル予測候補リストを生成する方法を通じて互いに異なる予測ブロック間で動きベクトル予測候補リストを共有することができる。
【0138】
図10は、本発明の実施形態に従う複数の予測ブロックで空間的候補予測ブロック及び時間的候補予測ブロックを全て共有して単一動きベクトル予測候補リストを生成する方法を示す概念図である。
【0139】
図10では、1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された空間的候補予測ブロック及び時間的候補予測ブロックを全て共有して単一動きベクトル予測候補リストを生成する方法に対して開示する。以下の実施形態では、候補予測ブロックから誘導される動きベクトル予測候補が全て使用可能な場合を仮定して説明する。
【0140】
図10を参照すると、第1予測ブロック1000及び第2予測ブロック1050は同一な空間的候補予測ブロックを共有することができる。第1予測ブロック1000及び第2予測ブロック1050に対する空間的候補予測ブロックは符号化ブロックを基準に決定されたブロックであって、A0ブロック1005、A1ブロック1010、B0ブロック1015、B1ブロック1020、B2ブロック1025となることができる。
【0141】
第1予測ブロック1000及び第2予測ブロック1050は共有されるA0ブロック1005、A1ブロック1010に基づいて1つの動きベクトル予測候補を算出し、B0ブロック1015、B1ブロック1020、B2ブロック1025に基づいて1つの動きベクトル予測候補を算出することができる。
【0142】
また、第1予測ブロック1000及び第2予測ブロック1050は時間的候補予測ブロック(または、コールブロック)1050、1060を共有することができる。第1予測ブロック1000及び第2予測ブロック1050は共有された時間的候補予測ブロック(または、コールブロック)1050、1060で動きベクトル予測候補を算出することができる。
【0143】
即ち、第1予測ブロック1000及び第2予測ブロック1050は、空間的候補予測ブロック1005、1010、1015、1020、1025及び時間的候補予測ブロック1050、1060に基づいて算出された動きベクトル予測候補を使用して単一動きベクトル予測候補リストを生成することができる。
【0144】
図11は、本発明の実施形態に従う複数の予測ブロックで空間的候補予測ブロックのみを共有して単一動きベクトル予測候補リストを生成する方法を示す概念図である。
【0145】
図11では、1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された空間的候補予測ブロックのみを共有して動きベクトル予測候補を算出する方法に対して開示する。即ち、時間的候補予測ブロックは各々の予測ブロックに基づいて算出されたブロックで動きベクトル予測候補を算出して単一動きベクトル予測候補リストを生成する方法に対して開示する。
【0146】
図11を参照すると、第1予測ブロック1100及び第2予測ブロック1150は同一な空間的候補予測ブロックを共有することができる。第1予測ブロック1100及び第2予測ブロック1050に対する空間的候補予測ブロックは符号化ブロックを基準に決定されたブロックであって、A0ブロック1105、A1ブロック1110、B0ブロック1115、B1ブロック1120、B2ブロック1125を共有して、各ブロックを空間的候補予測ブロックに使用することができる。
【0147】
第1予測ブロック1100及び第2予測ブロック1150の時間的候補予測ブロック(または、コールブロック)1155、1160、1165、1170は、各々の予測ブロック位置を基準に算出できる。
【0148】
第1予測ブロック1100は、自身の位置を基準に決定されたコールブロックであるHpu0ブロック1155、Mpu0ブロック1160のうち、少なくとも1つのブロックを時間的候補予測ブロックに使用することができる。
【0149】
第2予測ブロック1150は、自身の位置を基準に決定されたコールブロックであるHpu1ブロック1165、Mpu1ブロック1170のうち、少なくとも1つのブロックを時間的候補予測ブロックに使用することができる。
【0150】
時間的候補予測ブロック1155、1160、1165、1170の場合は、予め符号化または復号化したピクチャに存在するブロックに時間的候補予測ブロックを共有しない場合にも第1予測ブロック1100及び第2予測ブロック1150は並列的に動きベクトル予測候補リストを生成して画面間予測を遂行することができる。
【0151】
図12は、本発明の実施形態に従う複数の予測ブロックで時間的候補予測ブロックのみを共有して単一動きベクトル予測候補リストを生成する方法を示す概念図である。
【0152】
図12では、1つの符号化ブロックから分割される複数の予測ブロックが符号化ブロックに基づいて決定された時間的候補予測ブロックのみを共有し、空間的候補予測ブロックは各々の予測ブロックに基づいて算出されたブロックを使用して単一動きベクトル予測候補リストを生成する方法に対して開示する。
【0153】
図12を参照すると、第1予測ブロック1200及び第2予測ブロック1250は、各々の予測ブロックの位置を基準に互いに異なる空間的候補予測ブロックを使用することができる。即ち、第1予測ブロック1200に対する空間的候補予測ブロックは、A0ブロック1205、A1ブロック1210、B0ブロック1213、B1ブロック1215、B2ブロック1220であり、第2予測ブロック1250に対する空間的候補予測ブロックは、A0’ブロック1225、A1’ブロック1230、B0’ブロック1235、B1’ブロック1240、B2’ブロック1215となることができる。
【0154】
第1予測ブロック1200及び第2予測ブロック1250の時間的候補予測ブロック(または、コールブロック)1260、1270は符号化ブロック基準に算出されて、2つの予測ブロックが同一な時間的候補予測ブロックを共有することができる。
【0155】
AMVPを使用した画面間予測モードで単一動きベクトル予測候補リストは、ブロックが参照する参照ピクチャインデックス毎に異なるように生成できる。例えば、現在ピクチャ(あるいは、スライス)の参照ピクチャが‘4’個であれば、参照ピクチャインデックスは‘4’個まで存在することができる。このような場合、各々の参照ピクチャインデックス毎に単一動きベクトル予測候補リストを有することができるので、予測対象ブロックに対して総‘4’個の単一動きベクトル予測候補リストを生成して使用することができる。
【0156】
また、現在符号化ブロック内の全ての予測ブロックに対して全て同一な参照ピクチャインデックスを使用するようにして、符号化または復号化を遂行するようにすることができる。この場合、現在符号化ブロック内の全ての予測ブロックが同一な参照ピクチャインデックスを有するので、1つの単一動きベクトル予測候補リストのみ存在すればよい。このような方法を適用するか否かは符号化ブロックのサイズ(size)または符号化ブロックの深さ(depth)によって異なるように決定できる。
【0157】
前述した方法だけでなく、多様な方法が単一マージング候補リスト、単一動きベクトル予測候補リストを生成するために使用できる。以下、多様な候補リスト(単一マージング候補リスト、単一動きベクトル予測候補リスト)生成方法に対して開示する。
【0158】
図13は、本発明の実施形態に従う単一マージング候補リストを生成する方法を示す概念図である。
【0159】
図13では、説明の便宜上、単一マージング候補リストを生成する方法に対して開示するが、単一動きベクトル予測候補リスト(AMVP List)を生成する方法にも適用できる。
【0160】
前述したように、時間的マージング候補、空間的マージング候補の位置は任意的な位置として変わることができ、時間的マージング候補、空間的マージング候補の個数も変わることができる。
【0161】
図13の(A)及び
図13の(B)を参照すると、単一マージング候補リストを生成するための空間的マージング候補ブロックの位置及び時間的マージング候補ブロックの位置を新しく定義することができる。
【0162】
図13の(A)は、空間的マージング候補ブロックのうち、A1ブロック1300とB1ブロック1305の位置が各々A1ブロック1300は(xC-1、yC+nCS/2)のピクセル、B1ブロック1305は(xC+nCS/2、yC-1)のピクセルを含んだ位置として新しく定義できる。
【0163】
また、時間的マージング候補ブロックが誘導できる位置が既存の位置に追加してH1ブロック1310、H2ブロック1320、H3ブロック1330、H4ブロック1340が追加できる。コールピクチャにおいて、H1ブロック1310は(xC+nCS/2、yC+nCS)ピクセル、H2ブロック1320は(xC+nCS、yC+nCS/2)ピクセル、H3ブロック1330は(xC、yC+nCS)ピクセル、H4ブロック1340は(xC+nCS、yC)ピクセルを含んだブロックでありうる。
【0164】
図13の(B)は、空間的マージング候補ブロックのうち、A1ブロック1350とB1ブロック1355の位置が各々A1ブロック1350は(xC-1、yC+nCS/2-1)のピクセル、B1ブロック1355は(xC+nCS/2-1、yC-1)のピクセルを含んだ位置として新しく定義できる。
【0165】
また、時間的マージング候補ブロックの位置は既存の位置に追加してH1ブロック1360、H2ブロック1370、H3ブロック1380、H4ブロック1390が定義できる。コールピクチャにおいて、H1ブロック1360は(xC+nCS/2、yC+nCS)ピクセル、H2ブロック1370は(xC+nCS、yC+nCS/2)ピクセル、H3ブロック1380は(xC、yC+nCS)ピクセル、H4ブロック1390は(xC+nCS、yC)ピクセルを含んだブロックでありうる。
【0166】
前述した単一マージング候補リスト、単一動きベクトル予測候補リストを生成する方法では、符号化ブロックを基盤に、単一マージング候補リスト、単一動きベクトル予測候補リストを生成する方法に対して開示し、単一マージング候補リスト、単一動きベクトル予測候補リストが生成される符号化ブロックのサイズに制限がありうることに対して開示した。単一マージング候補リスト、単一動きベクトル予測候補リストを統合する概念として単一候補リストという概念を使用することができる。
【0167】
また、本発明の実施形態によれば、符号化ブロック基盤でない一般的なブロックを基盤(例えば、特定のサイズのブロックとして少なくとも1つの符号化ブロックまたは少なくとも1つの予測ブロックを含むブロック)にして単一候補リストを生成することもできる。また、マージとAMVPのうちの1つの画面間予測モードのみにこのような単一候補リスト生成方法も適用できる。
【0168】
このような事項は以下の<表1>の通り整理できる。
【表1】
【0169】
表1は前述したように、単一候補リストをどのブロックを基盤とするか否か及びどのブロックのサイズを基準とするか否かと単一マージング候補リストが生成される画面間予測方法がマージとAMVPのうち、どの方法に適用されるかによって分類した表である。
【0170】
図14は、本発明の実施形態に従う単一候補リストを生成する方法を示す概念図である。
【0171】
図14では、マージを用いた画面間予測でブロックを基盤に単一マージング候補リストを共有する方法に対して開示する。
【0172】
図14を参照すると、実線で表示する部分は符号化ブロックを表し、点線で表示する部分は該当符号化ブロックから分割された予測ブロックを表す。
図14では、複数の符号化ブロックが含まれる1つのより大きいブロック単位が空間的マージング候補ブロック1400、1405、1410、1415、1420及び時間的マージング候補ブロック1450乃至1480を算出できる単位であることを示す。即ち、符号化単位より大きい単位で単一マージング候補リストが生成できる。このような情報は、並列的マージプロセスが実施可能なブロックに対する情報として符号化及び復号化できる。本発明の実施形態によれば、並列的マージプロセスが実施可能なブロックに対する情報と予測ブロックを含む符号化ブロックに対する情報に基づいて特定符号化ブロックに含まれた予測ブロックが単一マージング候補リストを使用してマージを遂行するか否かを判断することができる。
【0173】
並列的マージプロセッシングが実施可能なブロックの内部に存在する符号化ブロックから誘導された空間的マージング候補ブロックのうち、並列的マージプロセッシングが実行可能なブロックの内部に存在する空間的マージング候補ブロックは使用可能でないブロックであって、空間的マージング候補を誘導するために使用されないことがある。反対に、並列的マージプロセッシングが実施可能なブロックの外部に存在する空間的マージング候補ブロックは、マージを用いた画面間予測で空間的マージング候補を誘導するために使用できる。即ち、並列的マージプロセッシングが実施可能なブロックの内部に位置する空間的マージング候補ブロックを使用可能でない空間的マージング候補ブロックと判断して、空間的マージング候補を誘導することに使用しないことがある。
【0174】
このような判断を遂行するために、現在ブロック(予測対象ブロック)と、現在ブロックの空間的マージング候補ブロックが同一な並列的マージプロセッシングが実施可能なブロックに含まれるか否かを判断することができる。判断結果、現在ブロック(予測対象ブロック)と、現在ブロックの空間的マージング候補ブロックが同一な並列的マージプロセッシングが実施可能なブロックに含まれる場合、該当ブロックを使用可能でないことに設定して、マージング候補リストを構成することに使用しないことがある。
【0175】
上記の条件を満たすブロックに対する時間的マージング候補ブロックも並列的マージプロセッシングが実施可能なブロックを基準に算出できる。即ち、特定符号化ブロックに含まれた予測ブロックが単一マージング候補リストを使用してマージを遂行する場合、予測ブロックに対して同一な時間的マージング候補を共有して使用することができる。
【0176】
図15は、本発明の実施形態に従う単一候補リストを生成する方法を示す概念図である。
【0177】
図15は、マージを用いた画面間予測で符号化ブロックのサイズが特定サイズ以下の場合、または特定サイズの場合のみに同一符号化ブロック内の予測ブロックが空間的マージング候補及び時間的マージング候補を共有する方法を示す。
【0178】
特定条件を満たすブロックのみで単一マージング候補リストを共有する方法を使用するためには、さまざまな情報が使用できる。例えば、並列的マージプロセッシングが実施可能なブロックのサイズに対する情報と現在符号化ブロックのサイズ情報に基づいて現在ブロックが単一マージ候補リストを使用するかに対する情報を誘導することができる。誘導された情報に基づいて予測ブロックに対する空間的マージング候補及び時間的マージング候補が特定条件を満たす符号化ブロックを基準に算出できる。
【0179】
図15を参照すると、例えば、並列的マージプロセッシングが実施可能なブロックのサイズが8×8以上であり、符号化ブロックのサイズが8×8という条件を満たす場合のみに符号化ブロックから分割された予測ブロックが単一マージング候補リストを共有することができる。
【0180】
第1符号化ブロック(CU0)1500は、32×32、第2符号化ブロック(CU1)1510は16×16、第3符号化ブロック(CU2)1520は32×32、第4符号化ブロック(CU3)1530は16×16、第5符号化ブロック(CU4)1540は8×8のサイズを有するブロックと仮定する。
【0181】
図15の(B)は、一部の符号化ブロックに対する空間的マージング候補ブロックのみを示す概念図である。
【0182】
図15の(B)を参照すると、第2符号化ブロック1510は、nLx2N形態の2つの予測ブロック1515、1518に分割され、第5符号化ブロック1540はNx2N形態の2つの予測ブロック1545、1550に分割できる。
図15の(B)は、8×8サイズの符号化ブロック1540に対してのみ単一マージング候補リストが生成される場合を仮定したものである。
【0183】
第2符号化ブロック1510の第1予測ブロック1515及び第2予測ブロック1518は、各々の予測ブロックに対して空間的マージング候補を個別的に誘導して予測ブロック別にマージング候補リストを生成することができる。
【0184】
第5符号化ブロック1540のサイズは8×8であって、並列的マージプロセッシングが実施可能なブロックのサイズに対する条件と現在符号化ブロックのサイズに対する条件を満たすことができる。このような場合、第5符号化ブロック1540に含まれた第3予測ブロック1545及び第4予測ブロック1550が符号化ブロックの位置及びサイズを基準に算出された空間的マージング候補及び時間的マージング候補に基づいて単一マージング候補リストを生成することができる。
【0185】
即ち、並列的にマージプロセスが実施可能に定義されたブロックのサイズが予め定まった特定のサイズ以上か否かを判断し、符号化ブロックが特定のサイズか否かを判断して並列的にマージプロセスが実施可能に定義されたブロックのサイズが予め定まった特定のサイズ以上、上記符号化ブロックが特定のサイズの場合、上記予測単位が上記単一マージング候補リストを使用してマージを遂行することと判断することができる。
【0186】
並列的マージプロセッシングが実施可能なブロックの内部の符号化ブロックから誘導された空間的マージング候補ブロックのうち、並列的マージプロセッシングが実施可能なブロックの内部に存在する空間的マージング候補ブロックは、画面間予測に使用されないことがある。反対に、並列的マージプロセッシングが実施可能なブロックの外部に存在する空間的マージング候補ブロックは、マージを用いた画面間予測で使用できる。即ち、並列的マージプロセッシングが実施可能なブロックの内部に位置する空間的マージング候補ブロックを使用可能でない空間的マージング候補ブロックと判断して、空間的マージング候補を誘導することに使用しないことがある。
【0187】
例えば、このような判断を遂行するために、現在ブロック(予測対象ブロック)と、現在ブロックの空間的マージング候補ブロックが同一な並列的マージプロセッシングが実施可能なブロックに含まれるか否かを判断することができる。判断結果、現在ブロック(予測対象ブロック)と、現在ブロックの空間的マージング候補ブロックが同一な並列的マージプロセッシングが実施可能なブロックに含まれる場合、該当空間的マージング候補ブロックを使用可能でないことに設定して、空間的マージング候補ブロックから空間的マージング符号を誘導しないことがある。
【0188】
前述したように、特定サイズの符号化ブロックに対して単一マージング候補リストを生成するためには、1)マージを用いた画面間予測で並列的マージプロセッシングが実施可能なブロックのサイズに関連した情報と、2)現在ブロックのサイズ情報に基づいて該当ブロックが単一マージング候補リストを生成することを示す単一マージング候補リストフラグ(singleMCLflag)を誘導することができる。また、1)マージを用いた画面間予測で並列的マージプロセッシングが実施可能なブロックのサイズに関連した情報に基づいてどの空間的マージング候補ブロックが空間的マージング候補を誘導するために使用可能でないブロックであるかに対して分かるので、該当ブロックから空間的マージング候補を誘導しないことがある。
【0189】
例えば、上記並列的マージプロセスが実施可能なブロックが8×8サイズのブロックであり、現在符号化ブロックのサイズが8×8の場合を仮定すれば、符号化ブロックと上記符号化ブロックを基準に算出された空間的マージング候補ブロックが同一な並列的マージプロセスが実施可能なブロックの内部に位置する場合、空間的マージング候補ブロックを使用可能でない空間的マージング候補ブロックと判断することができる。即ち、符号化ブロックと、上記符号化ブロックを基準に算出された空間的マージング候補ブロックが互いに異なる並列的マージプロセスが実施可能なブロックに位置する場合、該当空間的マージング候補ブロックを空間的マージング候補を誘導することに使用することができる。
【0190】
誘導された単一マージング候補リストフラグ(singleMCLflag)は、以後、空間的マージング候補及び時間的マージング候補を誘導するステップで使われて特定サイズの符号化ブロックから分割された予測ブロックが同一なマージング候補を共有する単一マージング候補リストを生成するようにすることができる。
【0191】
以下、本発明の実施形態では以下の<表2>乃至<表5>を使用してマージを用いた画面間予測で並列的マージプロセッシングが実施可能なブロックに関連した情報と、このような情報をビットストリームに符号化、またはビットストリームから復号化することに使われるシンタックス構造に対して開示する。
【表2】
【表3】
【表4】
【表5】
【0192】
表2乃至表5に開示されたシンタックスに含まれたシマンティックス(semantics)である“parallel_merge_enabled_flag”は、符号化ブロックを基盤に単一マージング候補リストを使用するか否かを知らせる情報に使用できる。また、“parallel_merge_enabled_flag”は、並列的なマージプロセッシングが行われるか否かに対する情報も含むことができる。
【0193】
例えば、“parallel_merge_enabled_flag”が‘1’の場合、符号化ブロックを基盤に単一マージング候補リストを生成する方法が適用されたことを表し、並列的なマージプロセッシングが行われることを指示することができる。“parallel_merge_enabled_flag”が‘0’の場合、単一マージング候補リストが適用されていないことを表すことができ、並列的マージプロセッシングが実施可能でないことを表すことができる。その反対も可能である。また、“parallel_merge_enabled_flag”は並列的に符号化ブロック内の全ての予測ブロックを並列的に符号化または復号化するか否かを指示する情報として使われることができ、符号化ブロック内の全ての予測ブロックのマージング候補リストを並列的に構成するか否かを指示する情報として使用することができる。
【0194】
また、“parallel_merge_disabled_depth_info”は符号化ブロックを基盤に、単一マージング候補リストを生成する方法が適用された場合(例えば、“parallel_merge_enabled_flag”が真の値を有する場合)に活性化されるシマンティックス(semantics)であって、これは符号化ブロックの深さ(depth)または符号化ブロックのサイズ(size)に従う単一マージング候補リストを適用するか否かを知らせる。
【0195】
例えば、“parallel_merge_disabled_depth_info”が‘0’の場合には、符号化ブロックの深さ(depth)が‘0’の場合(最も大きいサイズの符号化ブロックであって、例えば64×64サイズでありうる)、該当方法が適用されないことがある。また、“parallel_merge_disabled_depth_info”が‘1’の場合には、符号化ブロックの深さ(depth)が‘1’である場合(最も大きいサイズの符号化ブロックより一段階小さいサイズであって、例えば32×32サイズ)、該当方法が適用されないことがある。
【0196】
更に他の例に、“parallel_merge_disabled_depth_info”が‘0’の場合には、符号化ブロックの深さ(depth)が‘0’以上の場合(最も大きいサイズの符号化ブロック)、該当方法が適用されないことがある。また、“parallel_merge_disabled_depth_info”が‘1’の場合には、符号化ブロックの深さ(depth)が‘1’以上の場合(最も大きいサイズの符号化ブロックを除外した符号化ブロックのサイズであって、例えば最も大きいサイズの符号化ブロックのサイズが64×64の場合、32×32、16×16、8×8サイズの符号化ブロックサイズがこれに該当する)、該当方法が適用されないことがある。
【0197】
更に他の一例に、“parallel_merge_disabled_depth_info”が‘1’の場合には、符号化ブロックの深さ(depth)が‘1’以上の場合(最も大きいサイズの符号化ブロックを除外した符号化ブロックサイズ)には該当方法が適用できる。
【0198】
このような“parallel_merge_disabled_depth_info”はマージを用いた画面間予測で並列的マージプロセッシングが実施可能なブロックに関連した情報の一例であって、マージを用いた画面間予測で並列的マージプロセッシングを示すために他の構文要素を使用することもでき、このような実施形態も本発明の権利範囲に含まれる。
【0199】
また、“parallel_merge_enabled_flag”のような情報を使用しなくても“parallel_merge_disabled_depth_info”のみを使用して並列的マージプロセッシングの可否に対する情報を表すこともできる。例えば、“parallel_merge_disabled_depth_info”が特定の値に該当する場合、並列的マージプロセッシングが可能でないことを表すこともできる。このような実施形態も本発明の権利範囲に含まれる。
【0200】
更に他の例に、log2_parallel_merge_level_minus2を定義することができる。Log2_parallel_merge_level_minus2は、並列的マージプロセッシングが実施可能なレベルを意味する。例えば、log2_parallel_merge_level_minus2の値が‘0’であれば、並列的マージプロセッシングが実施可能なブロック(または、符号化ブロック)のサイズが4×4ということを表す。4×4ブロックが最小サイズの符号化ブロックと仮定する場合、結局、log2_parallel_merge_level_minus2の値が‘0’であれば、並列的マージプロセッシングが実施されないことを表す。更に他の例として、log2_parallel_merge_level_minus2の値が‘1’であれば、8×8サイズのブロックの内部にある全ての予測ブロックに対して並列的なマージプロセッシングが実施可能であることを表すことができる。そして、log2_parallel_merge_level_minus2の値が‘2’であれば、16×16サイズのブロックの内部にある全ての予測ブロックに対して並列的マージプロセッシングが実施可能である。そして、log2_parallel_merge_level_minus2の値が‘3’であれば、32×32サイズのブロックの内部にある全ての予測ブロックに対して並列的マージプロセッシングが実施可能である。そして、log2_parallel_merge_level_minus2の値が‘4’であれば、64×64サイズのブロックの内部にある全ての予測ブロックに対して並列的なマージプロセッシングが実施可能である。即ち、このような構文要素を使用して特定の並列的マージプロセッシングが実施可能なブロックのサイズを表すことができる。前述したように、log2_parallel_merge_level_minus2を通じて算出された並列的マージプロセッシングが実施可能なブロックに対する情報及び現在ブロックの情報(例えば、サイズ情報)を共に使用して現在ブロックに含まれた少なくとも1つの予測ブロックに対して単一マージ候補リストを用いた画面間予測が遂行されるかに対して分かる。単一マージ候補リストに含まれる空間的マージング候補を算出するために、符号化ブ
ロックを基準に算出された空間的マージング候補ブロックが上記並列的マージプロセスが実施可能なブロックの内部に位置するか否かを判断することができる。例えば、上記並列的マージプロセスが実施可能なブロックが8×8サイズのブロックであり、現在符号化ブロックのサイズが8×8の場合を仮定すれば、符号化ブロックと、上記符号化ブロックを基準に算出された空間的マージング候補ブロックが同一な並列的マージプロセスが実施可能なブロックの内部に位置する場合、空間的マージング候補ブロックを使用可能でない空間的マージング候補と判断することができる。即ち、符号化ブロックと、上記符号化ブロックを基準に算出された空間的マージング候補ブロックが互いに異なる並列的マージプロセスが実施可能なブロックに位置する場合、該当空間的マージング候補ブロックを空間的マージング候補を誘導することに使用することができる。
【0201】
以下、本発明の実施形態では本発明の更に他の実施形態に従う単一候補リストを用いて1つの符号化ブロックから分割された予測ブロックに対して並列的に符号化または復号化を遂行する方式について説明する。この方式では、符号化ブロック内の多数個の予測ブロックに対して一部の空間的候補を共有して単一マージング候補リストを生成することができる。
【0202】
一部の空間的候補を共有することにおいても、符号化ブロック内の全ての予測ブロックの空間的マージング候補ブロックの探索位置を常に符号化ブロックの外部位置になるようにすることで、符号化ブロック内の予測ブロックで並列的に画面間予測を遂行するようにすることができる。または、ブロックの分割形態によって固定された位置に存在する空間的マージング候補ブロックを使用してマージング候補リストを生成することもできる。
【0203】
例えば、マージを使用した画面間予測において、一部の空間的マージング候補を各々の予測ブロックが共有することで、マージング候補を算出する過程の複雑度を減少させることができる。
【0204】
例えば、予測ブロックの空間的マージング候補ブロックの探索位置を符号化ブロックの外部位置に選択するに当たって、縦方向(例えば、Nx2N形態)に分割された予測ブロック間には符号化ブロックの外部位置のうち、左側位置の空間的マージング候補ブロックを共有するようにすることができる。横方向(例えば、2NxN形態)に分割された予測ブロック間には符号化ブロックの外部位置のうち、上側位置の空間的マージング候補ブロックを共有するようにすることができる。即ち、マージング候補を共有しない方式より空間的マージング候補誘導回数を相当に減らすことができる。
【0205】
次に、図面を用いてこのような方式の実施形態をより具体的に説明する。
【0206】
以下の実施形態では、マージを使用した画面間予測を使用する場合を仮定して説明するが、後述する方法はAMVPを用いた画面間予測にも使用できる。以下のマージ方法で使用する空間的マージング候補ブロック及び時間的マージング候補ブロックは、AMVPでは予測ブロックに対する動きベクトル予測候補リストを構成するための複数の予測ブロックであって、空間的候補予測ブロック及び時間的候補予測ブロックと解釈することができる。
【0207】
以下、本発明の実施形態で分割されたブロックの分割インデックスを使用して区分することができる。分割インデックスが0の場合は第1予測ブロック、分割インデックスが1の場合は第2予測ブロックになることができる。
【0208】
図16は、本発明の実施形態に従うマージング候補リスト生成方法を示す概念図である。
【0209】
図16の(A)はNx2N形態の予測ブロックに符号化ブロックを分割した場合を示すものであって、第1予測ブロック1600の場合、第1予測ブロック1600の位置を基準に空間的マージング候補ブロックにA0ブロック1605、A1ブロック1610、B0ブロック1615、B1ブロック1620、B2ブロック1625を使用してマージング候補リストを生成することができる。
【0210】
しかしながら、第2予測ブロック1650の場合、第2予測ブロックの位置を基準に空間的マージング候補ブロックを誘導する場合、空間的マージング候補ブロックのうちの一部のブロックであるA0ブロック1630及びA1ブロック1635が第1予測ブロックに含まれる位置に存在するか、または未だ符号化していない符号化ブロックの位置に含まれることができる。空間的マージング候補ブロックがこのような位置に存在する場合、第1予測ブロック1600及び第2予測ブロック1650に対するマージングを用いた画面間予測が並列的に遂行できない。したがって、空間的マージング候補ブロックに使われるA0ブロック1630及びA1ブロック1635の位置を符号化ブロックの外部に位置したブロック位置であるA0’ブロック1605及びA1’ブロック1610に変更して第2予測ブロック1650に対するマージング候補リストを算出してマージングを用いた画面間予測を遂行することができる。A0’ブロック1605及びA1’ブロック1610は、第1予測ブロック1600の空間的マージング候補ブロック位置と同一な位置になることができる。
【0211】
図16(B)は2NxN形態の予測ブロックに符号化ブロックを分割した場合を示すものであって、第1予測ブロック1660の場合、第1予測ブロック1660の位置を基準に空間的マージング候補ブロックにA0ブロック1665、A1ブロック1667、B0ブロック1673、B1ブロック1675、B2ブロック1679を使用してマージング候補リストを生成することができる。
【0212】
しかしながら、第2予測ブロック1690の場合、第2予測ブロック1690の位置を基準に空間的マージング候補ブロックを算出する場合、空間的マージング候補ブロックのうちの一部のブロックであるB0ブロック1685及びB1ブロック1687が第1予測ブロック1660に含まれる位置に存在するか、または未だ符号化していない符号化ブロックの位置に含まれることができる。ブロックがこのような位置に存在する場合、第1予測ブロック1660及び第2予測ブロック1690に対するマージングを用いた画面間予測が並列的に遂行できない。したがって、B0ブロック1685及びB1ブロック1687の位置を符号化ブロックの外部に位置したブロック位置であるB0’ブロック1673及びB1’ブロック1675に変更して第2予測ブロック1690に対するマージング候補リストを算出してマージングを用いた画面間予測を遂行することができる。B0’ブロック1673及びB1’ブロック1675は、第1予測ブロック1660が使用する空間的マージング候補ブロックの位置でありうる。
【0213】
空間的マージング候補ブロックの位置を変更するために、現在ブロック(予測対象ブロック)と、現在ブロックの空間的マージング候補ブロックが同一な並列的マージプロセッシングが実施可能なブロックに含まれるか否かを判断することができる。判断結果、現在ブロック(予測対象ブロック)と、現在ブロックの空間的マージング候補が同一な並列的マージプロセッシングが実施可能なブロックに含まれる場合、該当ブロックを使用可能でないことに設定して、マージング候補リストを構成することに使用しないことがある。使用可能でないブロックは他のブロックに取り替えられて空間的マージング候補を算出することができる。
【0214】
図17は、本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補の位置を示す概念図である。
【0215】
図17を参照すると、ブロックの分割形態によって互いに異なる位置の空間的マージング候補ブロックを誘導して空間的マージ候補を算出することができる。即ち、全ての予測ブロックの空間的マージング候補ブロックの位置を既に符号化が完了した符号化ブロックの外部に位置するようにすることで、1つの符号化ブロックから分割された複数の予測ブロックに対して並列的にマージを用いた画面間予測が遂行されるようにすることができる。また、空間的マージング候補を誘導するための一部の空間的マージング候補ブロックを共有することで、マージング候補リストを誘導するための過程の複雑度を減らすことができる。
【0216】
図18は、本発明の実施形態に従うマージング候補リスト生成方法を示す概念図である。
【0217】
図18の(A)はNx2N形態の予測ブロックに符号化ブロックを分割した場合を示すものであって、第1予測ブロック1800の場合、第1予測ブロック1800の位置を基準に空間的マージング候補ブロックにA0ブロック1805、A1ブロック1810、B0ブロック1815、B1ブロック1820、B2ブロック1825を使用してマージング候補リストを生成することができる。
【0218】
しかしながら、第2予測ブロック1850の場合、第2予測ブロック1850が含まれた符号化ブロックの位置を基準に空間的マージング候補ブロックを算出することができる。第2予測ブロック1850を基準に空間的マージング候補ブロックを算出する場合、第1予測ブロック1800及び第2予測ブロック1850に対するマージングを用いた画面間予測が並列的に遂行できない。したがって、第2予測ブロック1850が含まれた符号化ブロックの外部に位置した既に符号化または復号化が遂行されたブロック位置に存在するブロック1805、1810、1830、1835、1825を空間的マージング候補ブロックに使用してマージング候補リストを算出することができる。
【0219】
図18の(B)は2NxN形態の予測ブロックに符号化ブロックを分割した場合を示すものであって、第1予測ブロック1860の場合、第1予測ブロック1860の位置を基準に空間的マージング候補ブロックにA0ブロック1865、A1ブロック1870、B0ブロック1875、B1ブロック1880、B2ブロック1885を使用してマージング候補リストを生成することができる。
【0220】
しかしながら、第2予測ブロック1895の場合、符号化ブロックの外部に位置した既に符号化または復号化が遂行されたブロック位置に存在するブロックを空間的マージング候補ブロック1887、1889、1875、1880、1885に変更して第2予測ブロックに対するマージング候補リストを算出してマージングを用いた画面間予測を遂行することができる。
【0221】
図19は、本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補ブロックの位置を示す概念図である。
【0222】
図19を参照すると、ブロックの分割形態によって互いに異なる位置の空間的マージング候補ブロックを算出して使用することができる。即ち、全ての予測ブロックの空間的マージング候補ブロックを既に符号化が完了した符号化ブロックの外部に位置するようにすることで、1つの符号化ブロックから分割された複数の予測ブロックに対して並列的にマージを用いた画面間予測が遂行されるようにすることができる。
【0223】
図20は、本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補ブロックの位置を示す概念図である。
【0224】
図20の(A)を参照すると、横方向に分割された形態(2NxnU、2NxnD、2NxN)に対し、第2予測ブロックに対して同一な位置の空間的マージング候補ブロックであるA0ブロック、A1ブロック、B0ブロック、B1ブロック、及びB2ブロックを使用することによって、分割形態に関係無しで同一な位置の空間的マージング候補ブロックを使用することができる。
【0225】
図20の(B)を参照すると、縦方向に分割された形態(nLx2N、nRx2N、Nx2N)の場合、第2予測ブロックに対して同一な位置の空間的マージング候補ブロックであるA0ブロック、A1ブロック、B0ブロック、B1ブロック、B2ブロックを使用することで、分割形態に関係無しで同一な位置の空間的マージング候補ブロックを使用することができる。
【0226】
図20での固定された位置は、1つの符号化ブロックで固定された位置の空間的マージング候補ブロックを使用することを示す1つの例示である。即ち、固定された空間的マージング候補ブロックの位置は変わることがあり、このような実施形態も本発明の権利範囲に含まれる。
【0227】
図21は、本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補ブロックの位置を示す概念図である。
【0228】
図21を参照すると、特定サイズの符号化ブロックが複数個の符号化ブロックに分割される場合を示す概念図である。特定サイズのブロックを基準に同一なマージング候補リストを共有する場合、空間的マージング候補ブロックは特定サイズのブロックの位置を基準に誘導されることができ、算出された空間的マージング候補から算出された空間的マージング候補を使用して単一マージング候補リストを構成することができる。特定サイズのブロックに含まれた符号化ブロックのうち、左上端に位置した符号化ブロックの場合、該当符号化ブロックを基準に空間的マージング候補ブロックを算出しても全て既に符号化が遂行された位置に存在するため、左上端に位置した符号化ブロックのみは異なるマージング候補リストを生成して使用することができる。
【0229】
図21を参照すると、特定サイズのブロックに含まれた予測ブロックのうち、左上端に位置した符号化ブロック2100に含まれる予測ブロックを除外した残りの予測ブロックは、特定のサイズのブロック位置を基準に算出された同一な空間的マージング候補ブロック(A0、A1、B0、B1、B2)を共有することができる。
【0230】
しかしながら、特定サイズのブロックのうち、左上端に位置した符号化ブロック2100の場合、該当符号化ブロックを基準に算出された空間的マージング候補ブロックを使用してマージを用いた画面間予測を遂行することができる。なぜならば、左上端に位置した符号化ブロック2100の場合、該当ブロックを基準に算出した空間的マージング候補ブロックが全て使用可能な位置に存在するため、左上端に位置した符号化ブロックは自身の位置を基準に誘導された空間的マージング候補ブロックから算出された空間的マージング候補を使用して画面間予測を遂行することができる。
【0231】
時間的マージング候補は、空間的マージング候補と同様に、特定のサイズのブロック位置を基準に算出できる。時間的マージング候補は、H0ブロック、H1ブロック、H2ブロック、H3ブロック、H4ブロックの順序で使用可能なブロックを判断して、使用可能なブロックをマージング候補リストに含めて使用することができる。時間的なマージング候補は、参照ピクチャのピクチャ番号に従ってスケールされて使用できる。時間的なマージング候補は、
図21に対応するブロック(X’)の境界に位置したブロックだけでなく、内部に位置したブロック(M、N、O、P、Q)も用いることができる。
【0232】
図22は、本発明の実施形態に従う符号化ブロックの分割形態に従う空間的マージング候補ブロックの位置を示す概念図である。
【0233】
図22では、特定ブロックのサイズを基準に空間的マージング候補を算出する時、空間的マージング候補ブロックと距離が遠い符号化ブロックの場合、特定ブロックのサイズを基準に誘導された空間的マージング候補ブロックから算出された空間的マージング候補を使用せず、時間的マージング候補のみを使用してマージング候補リストを生成する方法を示す概念図である。
【0234】
図22を参照すると、例えば、1(2200)と指示されたサイズに含まれるブロックに対して時間的マージング候補のみを使用してマージング候補リストを生成することができる。即ち、特定の指示子により時間的候補のみを使用してマージング候補リストを生成するブロック単位を指示することができる。
【0235】
時間的マージング候補は、H0ブロック、H1ブロック、H2ブロック、H3ブロック、H4ブロックの順序で使用可能なブロックを判断して、使用可能なブロックから算出された時間的マージング候補をマージング候補リストに含めて使用することができる。時間的なマージング候補で算出された動きベクトルは、参照ピクチャのピクチャ番号によってスケールされて使用できる。時間的なマージング候補は、
図22に対応するブロック(X’)の境界に位置したブロックだけでなく、内部に位置したブロック(M、N、O、P、Q)も用いることができる。
【0236】
前述した方法は全て符号化ブロックサイズあるいは符号化ブロックの深さなどによって適用範囲を異にすることができる。このように適用範囲を決定する変数(即ち、ブロックのサイズまたはブロックの深さ情報)は、符号化器及び復号化器が予め定まった値を使用するように設定することもでき、映像符号化方法のプロファイルまたはレベルによって定まった値を使用するようにすることもできる。また、符号化器が変数値をビットストリームに記載すれば、復号化器はビットストリームからこの値を求めて使用することもできる。
【0237】
符号化ブロックの深さによって適用範囲を異にする時は、以下の<表6>に例示したように、方式A)与えられた深さ以上の深さのみに適用する方式、方式B)与えられた深さ以下のみに適用する方式、方式C)与えられた深さのみに適用する方式がありえる。
【0238】
<表6>は与えられた符号化ブロックの深さが2の場合、本発明の方式A)、方式B)、または方式C)を適用する範囲決定方法の例を表すものである。(O:該当深さに適用、X:該当深さに適用しない)
【表6】
【0239】
全ての深さに対して本発明の方法を適用しない場合は、前述した<表2>~<表5>に例示したparallel_merge_enabled_flagのような指示子を使用して表すこともでき、適用される深さ情報を示す構文要素に該当情報を含んで転送することもできる。符号化ブロックの深さの最大値より1つ大きい値を適用範囲を示す符号化ブロックの深さ値にシグナリングすることによって表現することもできる。
【0240】
図23は、本発明の実施形態に従う単一候補リスト生成方法を使用する場合、複数の予測ブロックが並列的に符号化及び復号化される過程を示す概念図である。
【0241】
図23の(A)では、1つの符号化ブロックが2つの予測ブロックに分割された場合を仮定する。例えば、符号化ブロックが特定の条件を満たす場合、符号化ブロックに含まれた2つの予測ブロックは、単一マージ候補リストを使用して並列的にマージプロセッシングが実施可能である。例えば、符号化ブロックのサイズが特定の値であり、並列的マージプロセッシングが実施可能なブロックサイズに含まれる場合、符号化ブロックを基準に空間的マージング候補及び時間的マージング候補を算出してマージを用いた画面間予測を遂行することができる。このような方法は、多様な形態のブロックで適用できる。
【0242】
図23の(B)は、多様な形態に分割された符号化ブロックに対して単一マージ候補リストを使用して符号化を遂行することを示す。1つの符号化ブロックは図示したように、さまざまな形態のブロックに分割できる。分割された予測ブロックはマージ候補リストを共有することができ、共有されるマージ候補リストを使用して並列的にマージを用いた画面間予測を遂行することができる。即ち、1つの符号化ブロックに含まれた複数の予測ブロックに対して並列的な符号化が可能である。このような方法は復号化ステップでも適用できる。
【0243】
このような方法を使用することで、各々の予測ブロックに対してマージ候補リストを生成することにより発生する複雑度を減少させることができ、映像処理速度も増加させることができる。今後、UHDTVのような解像度(resolution)の高い映像の場合、映像処理を遂行するに当たって並列的処理が重要であるが、本発明で開示された方法を使用することにより、並列的な映像処理が可能である。
【0244】
以上で説明した映像符号化及び映像復号化方法は、
図1及び
図2で前述した各映像符号化器及び映像復号化器装置の各構成部で具現できる。
【0245】
以上、実施形態を参照して説明したが、該当技術分野の熟練した当業者は特許請求範囲に記載された本発明の思想及び領域から外れない範囲内で本発明を多様に修正及び変更させることができることを理解することができる。