特開2016-7039(P2016-7039A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ケィティ、コーポレーションの特許一覧

特開2016-7039時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置
<>
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000003
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000004
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000005
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000006
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000007
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000008
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000009
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000010
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000011
  • 特開2016007039-時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2016-7039(P2016-7039A)
(43)【公開日】2016年1月14日
(54)【発明の名称】時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置
(51)【国際特許分類】
   H04N 19/52 20140101AFI20151211BHJP
【FI】
   H04N19/52
【審査請求】有
【請求項の数】6
【出願形態】OL
【全頁数】24
(21)【出願番号】特願2015-160173(P2015-160173)
(22)【出願日】2015年8月14日
(62)【分割の表示】特願2015-84318(P2015-84318)の分割
【原出願日】2012年9月6日
(31)【優先権主張番号】10-2011-0091782
(32)【優先日】2011年9月9日
(33)【優先権主張国】KR
(31)【優先権主張番号】10-2012-0039501
(32)【優先日】2012年4月17日
(33)【優先権主張国】KR
(71)【出願人】
【識別番号】507050713
【氏名又は名称】ケィティ、コーポレーション
【氏名又は名称原語表記】KT CORPORATION
(74)【代理人】
【識別番号】100117787
【弁理士】
【氏名又は名称】勝沼 宏仁
(74)【代理人】
【識別番号】100082991
【弁理士】
【氏名又は名称】佐藤 泰和
(74)【代理人】
【識別番号】100103263
【弁理士】
【氏名又は名称】川崎 康
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100096921
【弁理士】
【氏名又は名称】吉元 弘
(72)【発明者】
【氏名】リー、ベ、グン
(72)【発明者】
【氏名】クォン、ジェ、チョル
(72)【発明者】
【氏名】キム、ジュ、ヤン
(57)【要約】      (修正有)
【課題】不要なメモリ帯域を減少させ、具現複雑度も減少させる時間的な予測動きベクトル誘導方法及び装置を提供する。
【解決手段】映像復号化方法は、予測対象ブロックとLCU(Largest Coding Unit)の境界とが接しているのか否かを判断するステップと、予測対象ブロックと上記LCUの境界とが接しているか否かによって第1コロケーテッドブロックが使用可能であるか否かを決定するステップとを含む。
【選択図】図6
【特許請求の範囲】
【請求項1】
映像信号を復号化する方法であって、
現在ブロックと隣接する空間的隣接ブロックの動きベクトルを用いて、前記現在ブロックの空間的な予測動きベクトルを得るステップと、
前記現在ブロックの境界が最大の符号化単位の境界に接するか否かに基づいて、コロケーテッドピクチャ内のコロケーテッドブロックを決定するステップと、
前記コロケーテッドブロックの動きベクトルをスケーリングすることにより、前記現在ブロックの時間的な予測動きベクトルを得るステップであって、前記コロケーテッドブロックの前記動きベクトルは、前記現在ブロックを含む現在のピクチャと前記現在ブロックの参照ピクチャとの間の時間的な距離に基づいてスケーリングされる、ステップと、
前記現在ブロックの動きベクトル候補リストを発生するステップであって、前記動きベクトル候補リストは、前記空間的な予測動きベクトル及び前記時間的な予測動きベクトルを含む、ステップと、
発生された前記動きベクトル候補リストに基づいて、前記現在ブロックの画面間予測を実行するステップと、
を備えることを特徴とする映像信号を復号化する方法。
【請求項2】
前記現在ブロックと前記最大の符号化単位の前記接する境界は、下側境界であることを特徴とする請求項1に記載の方法。
【請求項3】
前記空間的隣接ブロックは、左側で隣接するブロック、左下側で隣接するブロック、上側で隣接するブロック、上右側で隣接するブロック、及び上左側で隣接ブロックのいずれか一つであることを特徴とする請求項1記載の方法。
【請求項4】
映像信号を復号化する装置であって、
現在ブロックと隣接する空間的隣接ブロックの動きベクトルを用いて、前記現在ブロックの空間的な予測動きベクトルを得るように構成され、前記現在ブロックの境界が最大の符号化単位の境界に接するか否かに基づいて、コロケーテッドピクチャ内のコロケーテッドブロックを決定するように構成され、前記コロケーテッドブロックの動きベクトルをスケーリングすることにより、前記現在ブロックの時間的な予測動きベクトルを得るように構成され、前記コロケーテッドブロックの前記動きベクトルは、前記現在ブロックを含む現在のピクチャと前記現在ブロックの参照ピクチャとの間の時間的な距離に基づいてスケーリングされ、前記現在ブロックの動きベクトル候補リストを発生するように構成され、前記動きベクトル候補リストは、前記空間的な予測動きベクトル及び前記時間的な予測動きベクトルを含み、発生された前記動きベクトル候補リストに基づいて、前記現在ブロックの画面間予測を実行するように構成された画面間予測ユニットを備えることを特徴とする映像信号を復号化する装置。
【請求項5】
前記現在ブロックと前記最大の符号化単位の前記接する境界は、下側境界であることを特徴とする請求項4に記載の装置。
【請求項6】
前記空間的隣接ブロックは、左側で隣接するブロック、左下側で隣接するブロック、上側で隣接するブロック、上右側で隣接するブロック、及び上左側で隣接ブロックのいずれか一つであることを特徴とする請求項4記載の装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像符号化及び復号化方法に関し、より詳細には、時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置に関するものである。
【背景技術】
【0002】
近年、HD(High Definition)映像及びUHD(Ultra High
Definition)映像のような高解像度、高品質な映像への需要が、多様な応用分野において増加しつつある。映像データが高解像度、高品質になるほど既存の映像データに比べて相対的にデータ量が増加するため、既存の有無線の広帯域ネットワークのような媒体を用いて映像データを伝送するか、既存の記憶媒体を用いて記憶する場合、伝送コストと記憶コストが増加する。映像データが高解像度、高品質化になることで発生するこのような問題を解決するためには、高効率の映像圧縮技術が活用されることができる。
【0003】
映像圧縮技術として、現在ピクチャの以前または以後ピクチャから現在ピクチャに含まれた画素値を予測する画面間予測技術、現在ピクチャ内の画素情報を用いて現在ピクチャに含まれた画素値を予測する画面内予測技術、出現頻度の高い値に短い符号を割り当て、出現頻度の低い値に長い符号を割り当てるエントロピー符号化技術など、多様な技術が存在しており、このような映像圧縮技術を用いて映像データを効果的に圧縮して伝送または記憶することができる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の目的は、LCUの境界に接しているブロックの時間的な動き予測ベクトルを誘導する方法を提供することにある。
【0005】
本発明のまた別の目的は、LCUの境界に接しているブロックの時間的な動き予測ベクトルを誘導する方法を行う装置を提供することにある。
【課題を解決するための手段】
【0006】
上述した本発明の目的を達成するための本発明の一側面に係る映像復号化方法は、予測対象ブロックのコロケーテッドブロックの参照ピクチャインデックスを決定するステップと、上記コロケーテッドブロックの動き予測ベクトルを決定するステップとを含み、上記コロケーテッドブロックは、上記予測対象ブロックのLCU(Largest Coding Unit)内の位置によって適応的に決定されるコロケーテッドブロックであってもよい。上記コロケーテッドブロックは、上記予測対象ブロックの下側境界がLCUの境界に接するか否かによって異なるように決定されることができる。上記コロケーテッドブロックは、上記予測対象ブロックの下側境界がLCUの境界に接するか否かと上記予測対象ブロックの右側境界のみがLCUの境界に接するか否かによって、異なるように決定されることができる。上記コロケーテッドブロックは、上記LCU内における位置によって決定される画素の位置を基準に決定されることができる。上記コロケーテッドブロックは、上記予測対象ブロックの左側または下側境界が上記LCUの境界と接しない場合には、該当位置のコロケーテッドブロックが使用可能であるか否かによって順次に第1コロケーテッドブロック及び第5コロケーテッドブロックがコロケーテッドブロックと決定されることができる。
【0007】
上述した本発明の第2の目的を達成するための本発明の一側面に係る映像復号化方法は、予測対象ブロックの境界とLCU(Largset Coding Unit)の境界とが接しているか否かを判断するステップと、上記予測対象ブロックの境界と上記LCUの境界とが接しているか否かによって第1コロケーテッドブロックが使用可能であるか否かを決定するステップとを含むことができる。上記映像復号化方法は、上記第1コロケーテッドブロックが使用可能でない場合、上記第1コロケーテッドブロックを除く他のコロケーテッドブロックを時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定するステップをさらに含むことができる。上記第1コロケーテッドブロックが使用可能でない場合、上記第1コロケーテッドブロックを除く他のコロケーテッドブロックを時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定するステップは、上記予測対象ブロックの下側境界と上記LCUの境界とが接している場合と、上記予測対象ブロックの右側境界のみが上記LCUの境界と接している場合とで、互いに異なるコロケーテッドブロックが時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定されるステップであってもよい。上記予測対象ブロックの境界と上記LCUの境界とが接しているか否かによって第1コロケーテッドブロックが使用可能であるか否かを決定するステップは、上記予測対象ブロックの下側境界と上記LCUの境界とが接している場合、上記第1コロケーテッドブロックが使用可能でないと判断するステップであってもよい。上記映像復号化方法は、上記第1コロケーテッドブロックが使用可能である場合、第1コロケーテッドブロックを時間的な動き予測ブロックを算出するためのコロケーテッドブロックと決定し、第1コロケーテッドブロックが使用可能でない場合、第5コロケーテッドブロックの使用可能性を判断するステップをさらに含むことができる。
【0008】
上述した本発明の第3の目的を達成するための本発明の一側面に係る映像復号化装置は、LCUの大きさ情報を復号化するエントロピー復号化部と、予測対象ブロックのコロケーテッドブロックの参照ピクチャインデックスを決定し、上記コロケーテッドブロックの動き予測ベクトルを決定する予測部とを含み、上記コロケーテッドブロックは、上記予測対象ブロックのLCU(Largest Coding Unit)内の位置によって適応的に決定されるコロケーテッドブロックであってもよい。上記コロケーテッドブロックは、上記予測対象ブロックの下側境界がLCUの境界に接するか否かによって異なるように決定されることができる。上記コロケーテッドブロックは、上記予測対象ブロックの下側境界がLCUの境界に接するか否かまたは上記予測対象ブロックの右側境界のみがLCUの境界に接するか否かによって、異なるように決定されることができる。上記コロケーテッドブロックは、上記LCU内における位置によって決定される画素の位置を基準に決定されることができる。上記コロケーテッドブロックは、上記予測対象ブロックの左側または下側境界が上記LCUの境界と接しない場合には、該当位置のコロケーテッドブロックが使用可能であるか否かによって順次に第1コロケーテッドブロック及び第5コロケーテッドブロックがコロケーテッドブロックと決定されることができる。
【0009】
上述した本発明の第4の目的を達成するための本発明の一側面に係る映像復号化装置は、LCUの大きさ情報を復号化するエントロピー復号化部と、予測対象ブロックの境界とLCU(Largest Coding Unit)の境界とが接しているか否かを判断し、上記予測対象ブロックの境界と上記LCUの境界とが接しているか否かによって第1コロケーテッドブロックが使用可能であるか否かを決定する予測部を含むことができる。上記予測部は、上記第1コロケーテッドブロックが使用可能でない場合、上記第1コロケーテッドブロックを除く他のコロケーテッドブロックを時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定する予測部であってもよい。上記予測部は、上記予測対象ブロックの下側境界と上記LCUの境界とが接している場合と、上記予測対象ブロックの右側境界のみが上記LCUの境界と接している場合とで、互いに異なるコロケーテッドブロックが時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定される予測部であってもよい。上記予測部は、上記予測対象ブロックの下側境界と上記LCUの境界とが接している場合、上記第1コロケーテッドブロックが使用可能でないと判断する予測部であってもよい。上記予測部は、上記第1コロケーテッドブロックが使用可能である場合、第1コロケーテッドブロックを時間的な動き予測ブロックを算出するためのコロケーテッドブロックと決定し、第1コロケーテッドブロックが使用可能でない場合、第5コロケーテッドブロックの使用可能性を判断する予測部であってもよい。
【発明の効果】
【0010】
上述したように、本発明の実施例に係る時間的な予測動きベクトル誘導方法及びこのような方法を用いる装置によれば、予測対象ブロックがLCUに接しているか否かによって時間的な動きベクトルを誘導するコロケーテッドピクチャを異ならせて使用することができる。このような方法を使用することにより、時間的な動きベクトルを誘導するのに不要に使用されるメモリ帯域幅を減少させ、具現複雑度を減少させることができる。
【図面の簡単な説明】
【0011】
図1】本発明の実施例に係る映像符号化装置を示すブロック図である。
図2】本発明の別の実施例に係る映像復号器を示すブロック図である。
図3】本発明の実施例に係る時間的な予測動きベクトル誘導方法を示す概念図である。
図4】本発明の実施例に係る時間的な予測動きベクトル誘導方法を示すフローチャートである。
図5】本発明の実施例に係る時間的な動きベクトルを誘導するためのコロケーテッドブロックの位置を示す概念図である。
図6】本発明の実施例に係る動き予測ベクトルを算出するためのコロケーテッドブロックを決定する方法を示す概念図である。
図7】本発明の実施例に係る予測対象ブロックがLCUの下側境界に接している場合を示す概念図である。
図8】本発明の実施例に係るマージモードを用いた画面間予測方法を示すフローチャートである。
図9】本発明の実施例に係る空間的なマージ候補の位置を示す概念図である。
図10】本発明の実施例に係るAMVPを用いた画面間予測方法を示すフローチャートである。
【発明の実施のための形態】
【0012】
本発明は、多様な変更を加えることができ、様々な実施例を有することができるので、特定の実施例を図面に例示し、詳細な説明において詳しく説明する。ところが、これは本発明を特定の実施形態に限定するものではなく、本発明の思想及び技術範囲に含まれる全ての変更、均等物ないし代替物を含むものと理解しなければならない。各図面を説明するにあたって、類似する参照符号を類似する構成要素に対して使用する。
【0013】
第1、第2などの用語は、多様な構成要素を説明するのに使用されることができるが、上記構成要素は上記用語によって限定されるものではない。上記用語は、一つの構成要素を他の構成要素から区別する目的だけで使用される。例えば、本発明の権利範囲から外れない範囲で、第1の構成要素は第2の構成要素と命名されることができ、同様に第2の構成要素も第1の構成要素と命名されることができる。「及び/または」という用語は、複数の関連した記載の項目の組合わせまたは複数の関連した記載の項目のうちいずれかの項目を含む。
【0014】
ある構成要素が他の構成要素に「連結されて」いるとか「接続されて」いると言及されたときには、その他の構成要素に直接的に連結されているかまたは接続されている場合もあるが、その間に他の構成要素が存在することもできると理解しなければならない。一方、ある構成要素が他の構成要素に「直接連結されて」いるとか「直接接続されて」いると言及されたときには、その間に他の構成要素が存在しないことと理解しなければならない。
【0015】
本出願において使用する用語は、単に特定の実施例を説明するために使用されたものであって、本発明を限定しようとする意図ではない。単数の表現は、文脈上、明らかに異なる意味でない限り、複数の表現を含む。本出願において、「含む」または「有する」などの用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品またはこれらの組み合わせが存在することを指定するものであって、一つまたはそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品またはこれらの組み合わせたなどの存在または付加可能性を予め排除しないものと理解しなければならない。
【0016】
以下、添付の図面を参照して、本発明の好ましい実施例をより詳細に説明する。以下、図面において、同一の構成要素に対しては同一の参照符号を使用し、同一の構成要素に対して重複する説明は省略する。
【0017】
図1は、本発明の実施例に係る映像符号化装置を示すブロック図である。
【0018】
図1を参照すれば、映像符号化装置100は、ピクチャ分割部110、インター予測部120、イントラ予測部125、変換部130、量子化部135、再整列部160、エントロピー符号化部165、逆量子化部140、逆変換部145、フィルタ部150及びメモリ155を含むことができる。
【0019】
図1に示される各構成部は、映像符号化装置において互いに異なる特徴的な機能を示すために独立して図示したものであって、各構成部が分離したハードウェアや一つのソフトウェア構成単位からなることを意味しない。すなわち、各構成部は、説明の便宜上、それぞれの構成部として並べられて含まれるものであって、各構成部のうち少なくとも二つの構成部が結合して一つの構成部となるか、一つの構成部が複数個の構成部に分けられて機能を実行することができ、このような各構成部の統合した実施例及び分離した実施例も、本発明の本質から外れない限り、本発明の権利範囲に含まれる。
【0020】
また、一部の構成要素は、本発明において本質的な機能を実行する必須の構成要素ではなく、単に性能向上のための選択的な構成要素であってもよい。本発明は、単に性能向上のために使用される構成要素を除く本発明の本質を実現するのに必須の構成部のみを含んで具現されることができ、単に性能向上のために使用される選択的な構成要素を除く必須の構成要素のみを含む構造も、本発明の権利範囲に含まれる。
【0021】
ピクチャ分割部110は、入力されたピクチャを少なくとも一つの処理単位に分割することができる。このとき、処理単位は、予測単位(Prediction Unit:PU)であってもよく、変換単位(Transform Unit:TU)であってもよく、符号化単位(Coding Unit:CU)であってもよい。ピクチャ分割部105では、一つのピクチャに対して複数の符号化単位、予測単位及び変換単位の組合わせに分割し、所定の基準(例えば、費用関数)に沿って一つの符号化単位、予測単位及び変換単位の組合わせを選択してピクチャを符号化することができる。
【0022】
例えば、一つのピクチャは複数個の符号化単位に分割されることができる。ピクチャにおいて符号化単位を分割するためには、4分木構造(Quad Tree Structure)のような再帰的なツリー構造を使用することができるが、一つの映像または最大の符号化単位を根として他の符号化単位に分割される符号化単位は、分割された符号化単位の個数だけの子ノードを持って分割されることができる。一定の制限によってそれ以上分割されない符号化単位は葉ノードとなる。すなわち、一つの符号化単位に対して正方形の分割だけが可能であると仮定する場合、一つの符号化単位は最大4つの他の符号化単位に分割されることができる。
【0023】
以下、本発明の実施例においては、符号化単位の意味を、符号化をする単位という意味だけでなく、復号化をする単位の意味としても使用することができる。
【0024】
予測単位は、一つの符号化単位内で同一の大きさの少なくとも一つの正方形または長方形などの形態を持って分割されることができる。
【0025】
符号化単位に基づいて画面内予測を行う予測単位を生成する際、最小符号化単位ではない場合、N×N単位の複数の予測単位に分割せずに画面内予測を行うことができる。
【0026】
予測部は、画面間予測を行うインター予測部120と、画面内予測を行うイントラ予測部125とを含むことができる。予測単位に対して画面間予測を行うかまたは画面内予測を行うかを決定し、各予測方法による具体的な情報(例えば、画面内予測モード、動きベクトル、参照ピクチャなど)を決定することができる。このとき、予測が行われる処理単位と予測方法及び具体的な内容が決定される処理単位は異なっていてもよい。例えば、予測方法と予測モードなどは予測単位で決定され、予測の実行は変換単位で実行されることもできる。生成された予測ブロックと原本ブロック間の残差値(残差ブロック)は、変換部130に入力されることができる。また、予測のために使用した予測モード情報、動きベクトル情報等は、残差値とともにエントロピー符号化部135で符号化されて復号器に伝達されることができる。特定の符号化モードを使用する場合、予測部120,125によって予測ブロックを生成せず、原本ブロックをそのまま符号化して復号化部に伝送することもできる。
【0027】
画面間予測部は、現在ピクチャの以前ピクチャまたは以後ピクチャのうち少なくとも一つのピクチャの情報に基づいて予測単位を予測することができる。画面間予測部は、参照ピクチャ補間部、動き予測部、動き補償部を含むことができる。
【0028】
参照ピクチャ補間部では、メモリ155から参照ピクチャ情報を提供され、参照ピクチャから整数画素以下の画素情報を生成することができる。輝度画素の場合、1/4画素単位で整数画素以下の画素情報を生成するために、フィルタ係数の異なるDCTベースの8タップ補間フィルタ(DCT−based Interpolation Filter)が使用されることができる。色差信号の場合、1/8画素単位で整数画素以下の画素情報を生成するために、フィルタ係数の異なるDCTベースの4タップ補間フィルタ(DCT−based Interpolation Filter)が使用されることができる。
【0029】
動き予測部は、参照ピクチャ補間部によって補間された参照ピクチャに基づいて動き予測を行うことができる。動きベクトルを算出するための方法として、FBMA(Full
search−based Block Matching Algorithm)、TSS(Three Step Search)、NTS(New Three−Step
Search Algorithm)など多様な方法が使用されることができる。動きベクトルは、補間された画素に基づいて1/2または1/4画素単位の動きベクトル値を持つことができる。動き予測部では、動き予測方法を異ならせて現在予測単位を予測することができる。動き予測方法として、スキップ(Skip)法、マージ(Merge)法、AMVP(Advanced Motion Vector Prediction)法など多様な方法が使用されることができる。
【0030】
本発明の実施例によれば、画面間予測部では、予測対象ブロックとLCU(Largest Coding Unit)の境界とが接しているか否かを判断し、予測対象ブックと上記LCUの境界とが接しているか否かによって第1コロケーテッドブロックが使用可能であるか否かを決定することができる。例えば、第1コロケーテッドブロックが使用可能でない場合、第2コロケーテッドブロックを時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定するか、第1コロケーテッドブロックが使用可能でない場合、上記第1コロケーテッドブロックの位置を変更させ、変更された第1コロケーテッドブロックを時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定することができる.
【0031】
また、画面間予測部では、予測対象ブロックのコロケーテッドブロックの参照ピクチャインデックスを決定し、上記コロケーテッドブロックの動き予測ベクトルを決定する予測部を含み、コロケーテッドブロックは、上記予測対象ブロックのLCU(Largest
Coding Unit)内の位置によって適応的に決定されることができる。以下、本発明における予測部の動作に関して詳述する。
【0032】
画面内予測部は、現在ピクチャ内の画素情報である現在ブロック周辺の参照ピクセル情報に基づいて、予測単位を生成することができる。現在予測単位の周辺ブロックが画面間予測を行ったブロックであって、参照ピクセルが画面間予測を行ったピクセルである場合、画面間予測を行ったブロックに含まれる参照ピクセルを、周辺の画面内予測を行ったブロックの参照ピクセル情報に置き換えて使用することができる。すなわち、参照ピクセルが使用不可である場合、使用不可な参照ピクセル情報を使用可能な参照ピクセルのうち少なくとも一つの参照ピクセルに置き換えて使用することができる。
【0033】
画面内予測において、予測モードは、参照ピクセル情報を予測方向によって使用する方向性予測モードと、予測を行う際に方向性情報を使用しない非方向性モードとを有することができる。輝度情報を予測するためのモードと色差情報を予測するためのモードとが異なっていてもよく、色差情報を予測するために輝度情報を予測した画面内予測モード情報または予測された輝度信号情報を活用することができる。
【0034】
画面内予測を行う際に、予測単位の大きさと変換単位の大きさとが同一である場合、予測単位の左に存在するピクセル、左上に存在するピクセル、上に存在するピクセルに基づいて予測単位に対する画面内予測を行うが、画面内予測を行う際に、予測単位の大きさと変換単位の大きさとが異なっている場合、変換単位に基づく参照ピクセルを用いて画面内予測を行うことができる。また、最小符号化単位に対してのみN×N分割を使用する画面内予測を使用することができる。
【0035】
画面内予測方法は、予測モードによって参照画素にMDIS(Mode Dependent Intra Smoothing)フィルタを適用した後、予測ブロックを生成することができる。参照画素に適用されるAISフィルタの種類は異なっていてもよい。画面内予測方法を行うために、現在予測単位の画面内予測モードは、現在予測単位の周辺に存在する予測単位の画面内予測モードから予測することができる。周辺予測単位から予測されたモード情報を用いて現在予測単位の予測モードを予測する場合、現在予測単位と周辺予測単位との画面内予測モードが同一である場合、所定のフラグ情報を用いて現在予測単位と周辺予測単位との予測モードが同一である旨の情報を伝送することができ、仮に、現在予測単位と周辺予測単位との予測モードが異なっている場合、エントロピー符号化を行って現在ブロックの予測モード情報を符号化することができる。
【0036】
また、予測部120,125で生成された予測単位に基づいて予測を行った予測単位と予測単位の原本ブロックとの差である残差値(Residual)情報を含む残差ブロックが生成されることができる。生成された残差ブロックは、変換部130に入力されることができる。変換部130では、原本ブロックと予測部120,125によって生成された予測単位との残差値(residual)情報を含む残差ブロックをDCT(Discrete Cosine Transform)またはDST(Discrete Sine Transform)のような変換方法を使用して変換させることができる。残差ブロックを変換するためにDCTを適用するかDSTを適用するかは、残差ブロックを生成するために使用された予測単位の画面内予測モード情報に基づいて決定することができる。
【0037】
量子化部135は、変換部130で周波数領域に変換された値を量子化することができる。ブロックによってまたは映像の重要度によって量子化係数は変わり得る。量子化部135で算出された値は、逆量子化部140と再整列部160に提供されることができる。
【0038】
再整列部160は、量子化された残差値に対して係数値の再整列を行うことができる。
【0039】
再整列部160は、係数スキャニング(Coefficient Scanning)法によって2次元のブロック形態の係数を1次元のベクトル形態に変更することができる。例えば、再整列部160では、ダイアゴナルスキャン(Diagonal Scan)法を用いて、DC係数から高周波数領域の係数までスキャンして1次元のベクトル形態に変更させることができる。変換単位の大きさ及び画面内予測モードによってダイアゴナルスキャン(Diagonal Scan)法でない2次元のブロック形態の係数を列方向にスキャンする垂直スキャン法、2次元のブロック形態の係数を行方向にスキャンする水平スキャン法が使用されることができる。すなわち、変換単位の大きさ及び画面内予測モードによってダイアゴナルスキャン、垂直方向スキャン及び水平方向スキャンのうちいずれのスキャン法が使用されるかを決定することができる。
【0040】
エントロピー符号化部165は、再整列部160によって算出された値に基づいてエントロピー符号化を行うことができる。エントロピー符号化は、例えば、指数ゴロム(Exponential Golomb)、CABAC(Context−Adaptive Binary Arithmetic Coding)のような多様な符号化方法を使用することができる。
【0041】
エントロピー符号化部165は、再整列部160及び予測部120, 125から符号化単位の残差値係数情報及びブロックタイプ情報、予測モード情報、分割単位情報、予測単位情報及び伝送単位情報、動きベクトル情報、参照フレーム情報、ブロックの補間情報、フィルタリング情報、LCUの大きさ情報など多様な情報を符号化することができる。
【0042】
エントロピー符号化部165では、再整列部160から入力された符号化単位の係数値をCABACのようなエントロピー符号化方法を使用してエントロピー符号化を行うことができる。
【0043】
逆量子化部140及び逆変換部145では、量子化部135で量子化された値を逆量子化し、変換部130で変換された値を逆変換する。逆量子化部140及び逆変換部145で生成された残差値(Residual)は、予測部120, 125に含まれた動き推定部、動き補償部及びイントラ予測部によって予測された予測単位と合せられて復元ブロック(Reconstructed Block)を生成することができる。
【0044】
フィルタ部150は、デブロッキングフィルタ、オフセット補正部、ALF(Adaptive Loop Filter)のうち少なくとも一つを含むことができる。
【0045】
デブロッキングフィルタは、復元されたピクチャにおいてブロック間の境界によって生じたブロック歪みを除去することができる。デブロッキングを行うか否かを判断するために、ブロックに含まれた数個の列または行に含まれたピクセルに基づいて、現在ブロックにデブロッキングフィルタを適用するか否かを判断することができる。ブロックにデブロッキングフィルタを適用する場合、必要なデブロッキングフィルタリングの強度によって強いフィルタ(Strong Filter)または弱いフィルタ(Weak Filter)を適用することができる。また、デブロッキングフィルタを適用するにあたって、垂直フィルタリング及び水平フィルタリングを行うとき、水平方向フィルタリング及び垂直方向フィルタリングが併行処理されるようにすることができる。
【0046】
オフセット補正部は、デブロッキングを行った映像に対してピクセル単位で原本映像とのオフセットを補正することができる。特定ピクチャに対するオフセット補正を行うために映像に含まれたピクセルを一定の数の領域に区分した後、オフセットを行う領域を決定して該当領域にオフセットを適用する方法、または各ピクセルのエッジ情報を考慮してオフセットを適用する方法を使用することができる。
【0047】
ALF(Adaptive Loop Filter)は、フィルタリングした復元映像と本来の映像とを比べた値に基づいてフィルタリングを行うことができる。映像に含まれたピクセルを所定のグループに分けた後、該当グループに適用される一つのフィルタを決定し、グループ毎に差別的にフィルタリングを行うことができる。ALFを適用するか否かに係る情報は、輝度信号は符号化単位(Coding Unit, CU)別に伝送されることができ、それぞれのブロックによって適用されるALFの大きさ及び係数は変わり得る。ALFは多様な形態を有することができ、それによってフィルタに含まれる係数の個数も変わることができる。このようなALFのフィルタリング関連情報(フィルタ係数情報、ALF On/Off情報、フィルタ形態情報)は、ビットストリームで所定のパラメータセットに含まれて伝送されることができる。
【0048】
メモリ155は、フィルタ部150によって算出された復元ブロックまたはピクチャを格納することができ、格納された復元ブロックまたはピクチャは、画面間予測を行う際に予測部120, 125に提供されることができる。
【0049】
図2は、本発明の別の実施例に係る映像復号器を示すブロック図である。
【0050】
図2を参照すれば、映像復号器は、エントロピー復号化部210、再整列部215、逆量子化部220、逆変換部225、予測部230, 235、フィルタ部240、メモリ245が含まれることができる。
【0051】
映像符号器から映像ビットストリームが入力された場合、入力されたビットストリームは映像符号器と逆の手順で復号化されることができる。
【0052】
エントロピー復号化部210は、映像符号器のエントロピー符号化部でエントロピー符号化を行ったことと逆の手順でエントロピー復号化を行うことができる。エントロピー復号化部210で復号化された情報のうちLCUの大きさ情報、ブロックの大きさ情報などのような予測ブロックを生成するための情報は、予測部230, 235に提供され、エントロピー復号化部でエントロピー復号化を行った残差値は、再整列部215に入力されることができる。
【0053】
エントロピー復号化部210では、符号器で行われた画面内予測及び画面間予測に係る情報を復号化することができる。上述したように、映像符号器で画面内予測及び画面間予測を行う際に所定の制約がある場合、このような制約に基づくエントロピー復号化を行って、現在ブロックに対する画面内予測及び画面間予測に係る情報を提供されることができる。
【0054】
再整列部215は、エントロピー復号化部210でエントロピー復号化されたビットストリームを符号化部で再整列した方法に基づいて再整列を行うことができる。1次元ベクトルの形態で表現された係数をさらに2次元のブロック形態の係数に復元して再整列することができる。
【0055】
逆量子化部220は、符号器から提供された量子化パラメータと再整列されたブロックの係数値に基づいて逆量子化を行うことができる。
【0056】
逆変換部225は、映像符号器で行った量子化結果について変換部で行ったDCT及びDSTに対して、逆DCT及び逆DSTを行うことができる。逆変換は、映像符号器で決定された伝送単位に基づいて行われることができる。映像符号器の変換部では、DCTとDSTは予測方法、現在ブロックの大きさ及び予測方向など複数の情報によって選択的に行われることができ、映像復号器の逆変換部225では、映像符号器の変換部で行われた変換情報に基づいて逆変換を行うことができる。
【0057】
予測部230, 235は、エントロピー復号化部210から提供された予測ブロック生成関連情報と、メモリ245から提供された以前に復号化されたブロックまたはピクチャ情報に基づいて、予測ブロックを生成することができる。
【0058】
予測部230, 235は、予測単位判別部、画面間予測部及び画面内予測部を含むことができる。予測単位判別部は、エントロピー復号化部から入力される予測単位情報、画面内予測方法の予測モード情報、画面間予測方法の動き予測関連情報など多様な情報を入力され、現在符号化単位から予測単位を区分し、予測単位が画面間予測を行うのか、それとも画面内予測を行うのかを判別することができる。画面間予測部は、映像符号器から提供された現在予測単位の画面間予測に必要な情報を用いて、現在予測単位が含まれた現在ピクチャの以前ピクチャまたは以後ピクチャのうち少なくとも一つのピクチャに含まれた情報に基づいて現在予測単位に対する画面間予測を行うことができる。
【0059】
画面間予測を行うために符号化単位を基準に該当符号化単位に含まれた予測単位の動き予測方法が、スキップモード(Skip Mode)、マージモード(Merge Mode)、AMVPモード(AMVP Mode)のうちいずれの方法であるのかを判断することができる。
【0060】
本発明の実施例によれば、画面間予測部では、予測対象ブロックとLCU(Largest Coding Unit)の境界とが接しているか否かを判断し、予測対象ブロックと上記LCUの境界とが接しているか否かによって第1コロケーテッドブロックが使用可能であるか否かを決定することができる。例えば、第1コロケーテッドブロックが使用可能でない場合、第2コロケーテッドブロックを時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定するか、第1コロケーテッドブロックが使用可能でない場合、上記第1コロケーテッドブロックの位置を変更させ、変更された第1コロケーテッドブロックを時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定することができる。また、画面間予測部では、予測対象ブロックのコロケーテッドブロックの参照ピクチャインデックスを決定し、上記コロケーテッドブロックの動き予測ベクトルを決定する予測部を含み、コロケーテッドブロックは、上記予測対象ブロックのLCU(Largest Coding Unit)内の位置によって適応的に決定されることができる。以下、本発明における予測部の動作について詳述する。
【0061】
画面内予測部は、現在ピクチャ内の画素情報に基づいて予測ブロックを生成することができる。予測単位が画面内予測を行った予測単位である場合、映像符号器から提供された予測単位の画面内予測モード情報に基づいて画面内予測を行うことができる。画面内予測部には、MDISフィルタ、参照画素補間部、DCフィルタを含むことができる。MDISフィルタは、現在ブロックの参照画素にフィルタリングを行う部分であって、現在予測単位の予測モードによってフィルタの適用有無を決定して適用することができる。映像符号器から提供された予測単位の予測モード及びMDISフィルタ情報を用いて、現在ブロックの参照画素にフィルタリングを行うことができる。現在ブロックの予測モードがフィルタリングを行わないモードである場合、MDISフィルタは適用されなくてもよい。
【0062】
参照画素補間部は、予測単位の予測モードが参照画素を補間した画素値に基づいて画面内予測を行う予測単位である場合、参照画素を補間して整数値以下の画素単位の参照画素を生成することができる。現在予測単位の予測モードが参照画素を補間せずに予測ブロックを生成する予測モードである場合、参照画素は補間されなくてもよい。DCフィルタは、現在ブロックの予測モードがDCモードである場合、フィルタリングによって予測ブロックを生成することができる。
【0063】
復元されたブロックまたはピクチャはフィルタ部240に提供されることができる。フィルタ部240は、デブロッキングフィルタ、オフセット補正部、ALFを含むことができる。
【0064】
映像符号器から該当ブロックまたはピクチャにデブロッキングフィルタを適用したか否かに関する情報、及びデブロッキングフィルタを適用した場合、強いフィルタを適用したのかまたは弱いフィルタを適用したのかに関する情報を提供されることができる。映像復号器のデブロッキングフィルタでは、映像符号器から提供されたデブロッキングフィルタ関連情報を提供され、映像復号器で該当ブロックに対するデブロッキングフィルタリングを行うことができる。映像符号器と同様に、まず垂直デブロッキングフィルタリング及び水平デブロッキングフィルタリングを行うが、重なる部分においては垂直デブロッキング及び水平デブロッキングのうち少なくとも一つを行うことができる。垂直デブロッキングフィルタリング及び水平デブロッキングフィルタリングが重なる部分で、以前に行われることができなかった垂直デブロッキングフィルタリングまたは水平デブロッキングフィルタリングが行われることができる。このようなデブロッキングフィルタリング過程を通じて、デブロッキングフィルタリングの並列処理(Parallel Processing)が可能である。
【0065】
オフセット補正部は、符号化の際に映像に適用されたオフセット補正の種類及びオフセット値情報などに基づいて復元された映像にオフセット補正を行うことができる。
【0066】
ALFは、フィルタリングを行った後、復元された映像と本来の映像とを比べた値に基づいてフィルタリングを行うことができる。符号器から提供されたALF適用有無情報、ALF係数情報などに基づいて符号化単位にALFを適用することができる。このようなALF情報は、特定のパラメータセットに含まれて提供されることができる。
【0067】
メモリ245は、復元されたピクチャまたはブロックを格納して参照ピクチャまたは参照ブロックとして使用できるようにし、また、復元されたピクチャを出力部に提供することができる。
【0068】
上述したように、以下、本発明の実施例においては、説明の便宜上、コーディングユニット(Coding Unit)を符号化単位という用語で使用するが、符号化だけでなく復号化を行う単位になってもよい。以下、本発明の実施例に係る図3ないし図11で説明する映像予測方法は、図1及び図2に含まれた予測部のような構成部で行われることができる。
【0069】
図3は、本発明の実施例に係る時間的な予測動きベクトル誘導方法を示す概念図である。
【0070】
図3を参照すれば、時間的な予測動きベクトルは、コロケーテッドピクチャ(colocated picture,colPic)に存在するコロケーテッドブロック(colocated block,colPu)の動きベクトル値に基づいて算出されることができる。
【0071】
コロケーテッドピクチャは、マージ(Merge)またはAMVPのような画面間予測方法を行う際に、時間的な予測動き関連情報を算出するためのコロケーテッドブロックを含むピクチャであり、コロケーテッドブロックは、予測対象ブロックと時間的に異なる位相を有する予測対象ブロックの位置情報に基づいて算出されたコロケーテッドピクチャに含まれたブロックと定義されることができる。
【0072】
一つの予測対象ブロックに対してコロケーテッドブロックは複数個存在することができる。コロケーテッドピクチャに含まれるコロケーテッドブロックの動き関連情報は、一定の単位を基準に一つの代表値として格納されることができる。例えば、16×16大きさのブロック単位を基準に16×16ブロック単位で動き予測関連情報(動きベクトル、参照ピクチャなど)が一つの代表値と決定されて格納されることができる。
【0073】
図4は、本発明の実施例に係る時間的な予測動きベクトル誘導方法を示すフローチャートである。
【0074】
以下、本発明の実施例で説明する時間的な予測動きベクトルを算出する方法は、MergeまたはAMVPのような画面間予測方法でマージを行うための時間的な候補ブロック(コロケーテッドブロック)算出方法、AMVPを行うための時間的な候補ブロック(コロケーテッドブロック)算出方法及び時間的な予測動きベクトル算出方法として使用されることができる。
【0075】
以下、本発明の実施例においては、コロケーテッドブロックを、マージ及びAMVPで使用される時間的な候補ブロックを指し示す用語と定義して使用することができる。
【0076】
図4を参照すれば、コロケーテッドピクチャ情報を算出する(ステップS400)。
【0077】
コロケーテッドピクチャ情報、コロケーテッドブロック情報及び時間的な予測動きベクトルを誘導するために、予測対象ブロックの位置情報、予測対象ブロックの大きさ情報、予測対象ブロックの参照ピクチャインデックス情報を使用することができる。
【0078】
本発明の実施例によれば、スライスタイプ情報(slice type)、参照ピクチャリスト情報(collocated_from_l0_flag)、参照ピクチャインデックス情報(collocated_ref_idx)のような情報に基づいて、コロケーテッドピクチャ情報を算出することができる。参照ピクチャリスト情報(collocated_from_l0_flag)を使用して参照ピクチャリスト情報(collocated_from_l0_flag)が1であれば、コロケーテッドピクチャが第1参照ピクチャリスト(List0)に含まれていることを示し、参照ピクチャリスト情報(collocated_from_l0_flag)が0である場合、コロケーテッドピクチャが第2参照ピクチャリスト(List1)に含まれていることを示すことができる。
【0079】
例えば、スライスタイプがBスライスであり参照ピクチャリスト情報(collocated_from_l0_flag)の値が0である場合、コロケーテッドピクチャは第1参照ピクチャリストに含まれたピクチャと判断することができ、スライスタイプがBスライスであり参照ピクチャリスト情報(collocated_from_l0_flag)の値が1であるかスライスタイプがPスライスである場合、コロケーテッドピクチャは第2参照ピクチャリストに含まれたピクチャと判断することができる。
【0080】
マージを使用した画面間予測方法の場合、所定の条件を満足する場合、特定の位置に存在する周辺ブロックの参照ピクチャインデックス情報をコロケーテッドピクチャ情報と決定し、所定の条件を満足できない場合、現在ピクチャの以前ピクチャをコロケーテッドピクチャ情報と決定することもできる。
【0081】
コロケーテッドブロック情報を算出する(ステップS410)。
【0082】
コロケーテッドブロック情報は、予測対象ブロックの一部がLCU(Largest Coding unit)の境界に接しているか否かによって異なるように算出されることができる。以下、図5ないし図9では、予測対象ブロックの位置とLCUの境界によってコロケーテッドブロックを決定する方法を開示する。
【0083】
図5は、本発明の実施例に係る時間的な動きベクトルを誘導するためのコロケーテッドブロックの位置を示す概念図である。
【0084】
図5を参照すれば, 予測対象ブロックを基準に多様な位置に存在するブロックが、時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用されることができる。時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用できるコロケーテッドブロックを位置によって区分すれば、下記の通りである。
【0085】
予測対象ブロックの左上に位置する点が(xP,yP)、予測対象ブロックの幅をnPSW、予測対象ブロックの高さをnPSHとする場合、第1コロケーテッドブロック500はコロケーテッドピクチャに位置する点(xP+nPSW,yP+nPSH)を含むブロック、第2コロケーテッドブロック510はコロケーテッドピクチャに位置する点(xP+nPSW−MinPuSize,yP+nPSH)を含むブロック、第3コロケーテッドブロック520はコロケーテッドピクチャに位置する点(xP+nPSW,yP+nPSH−MinPuSize)を含むブロック、第4コロケーテッドブロック530はコロケーテッドピクチャに位置する点(xP+nPSW−1,yP+nPSH−1)を含むブロック、第5コロケーテッドブロック540はコロケーテッドピクチャに位置する点(xP+(nPSW>>1),yP+(nPSH>>1))を含むブロック、第6コロケーテッドブロック550はコロケーテッドピクチャに位置する点(xP+(nPSW>>1)−1,yP+(nPSH>>1)−1)を含むブロックになることができる。
【0086】
コロケーテッドブロックは、現在予測単位の位置がLCU内におけるどの位置に存在するかによって適応的に決定されることができる。予測対象ブロックとLCUの境界との位置関係は、1) 予測対象ブロックの下側及び右側がLCUの境界と接しない場合、2) 予測対象ブロックの下側のみがLCUの境界と接する場合、3) 予測対象ブロックの右側と下側がいずれもLCUの境界と接する場合、4) 予測対象ブロックの右側のみがLCUの境界と接する場合、に区分されることができる。
【0087】
本発明の実施例によれば、コロケーテッドブロックは、予測対象ブロックと同一のLCUに含まれた位置に存在するように予測対象ブロックのLCU内における位置によって適応的に異なるように決定されることができる。
【0088】
1) 予測対象ブロックの下側及び右側がLCUの境界と接しない場合は、使用可能であるか否かを判断して、第1コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0089】
2) 予測対象ブロックの下側のみがLCUの境界と接する場合は、使用可能であるか否かを判断して、第3コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0090】
3) 予測対象ブロックの右側と下側がいずれもLCUの境界と接する場合は、使用可能であるか否かを判断して、第4コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0091】
4) 予測対象ブロックの右側のみがLCUの境界と接する場合は、使用可能であるか否かを判断して、第2コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0092】
すなわち、本発明の実施例によれば、現在ブロックのLCU内における位置によって適応的に時間的な補者ブロックが決定されることができるが、現在ブロックの下側境界がLCUの境界と接する場合と、現在ブロックの下側境界がLCUの境界と接しない場合とで、時間的な候補ブロックを求めるための画素の位置が変わることができ、現在ブロックの下側境界がLCUの境界と接する場合と、現在ブロックの右側境界のみがLCUの境界と接する場合とで、時間的な候補ブロックを求めるための画素の位置が変わることができる。
【0093】
本発明のまた別の実施例によれば、コロケーテッドブロックは、予測対象ブロックと同一のLCUに含まれた位置に存在するように予測対象ブロックのLCU内における位置によって適応的に異なるように決定される方法を使用できるだけでなく、予測対象ブロックと同一のLCUに含まれないコロケーテッドブロックの場合は、使用しなくてもよい。
【0094】
図6は、本発明の実施例に係る動き予測ベクトルを算出するためのコロケーテッドブロックを決定する方法を示すための概念図である。
【0095】
図6を参照すれば、一つのLCU内に含まれた複数個の予測単位のコロケーテッドブロックの位置が分かる。
【0096】
PU0、PU1、PU2、PU5の場合は、予測単位がLCUの内部に存在する予測単位であって、第1コロケーテッドブロックを優先的に時間的な動きベクトルを算出するためのコロケーテッドブロックとして使用することができる。
【0097】
PU4、PU7の場合は、予測単位の境界がLCUの下側境界にのみ接する場合の予測単位であって、第3コロケーテッドブロックを優先的に時間的な動きベクトルを算出するためのコロケーテッドブロックとして使用することができる。
【0098】
PU8の場合は、予測単位の境界がLCUの下側境界と右側境界にいずれも接する場合の予測単位であって、第4コロケーテッドブロックを優先的に時間的な動きベクトルを算出するためのコロケーテッドブロックとして使用することができる。
【0099】
PU3及びPU6の場合は、予測単位の境界がLCUの右側境界にのみ接する場合の予測単位であって、第2コロケーテッドブロックを優先的に時間的な動きベクトルを算出するためのコロケーテッドブロックとして使用することができる。
【0100】
すなわち、上述したように、現在ブロックのLCU内における位置によって適応的に時間的な候補ブロックが決定され、現在ブロックの下側境界がLCUの境界に接する場合(PU4,PU7,PU8)と、現在ブロックの下側境界がLCUの境界に接しない場合(PU0,PU1,PU2,PU3,PU5,PU6)とで、時間的な候補ブロックを求めるための画素の位置が変わる。また、現在ブロックの下側境界がLCUの境界と接する場合(PU4,PU7,PU8)と、現在ブロックの右側境界のみがLCUの境界に接する場合(PU3,PU6)とで、時間的な候補ブロックを求めるための画素の位置が変わることができる。
【0101】
本発明のまた別の実施例によれば、コロケーテッドブロックは、予測対象ブロックと同一のLCUに含まれた位置に存在するように予測対象ブロックのLCU内における位置によって適応的に異なるように決定される方法を使用できるだけでなく、予測対象ブロックと同一のLCUに含まれないコロケーテッドブロックの場合は、使用しなくてもよい。例えば、PU4、PU7、PU8のように予測ブロックの下側境界がLCUの下側境界に接する場合、第1コロケーテッドブロックを使用不可なものと表示し、第5コロケーテッドブロックを時間的な予測ベクトルを算出するためのコロケーテッドブロックとして使用することもできる。
【0102】
上記のようにコロケーテッドブロックを算出する方法として、予測対象ブロックとLCUの境界の位置によって予測対象ブロックの性格を上記のように区分し、区分された予測対象ブロックの位置によって直ぐコロケーテッドブロックとして使用されるブロックを決定する方法を使用することができるが、優先的に第1コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することと仮定し、第1コロケーテッドブロックが使用可能であるか否か(例えば、予測対象ブロックの下側境界がLCUと接するか否かなど)を判断した後、第1コロケーテッドブロックではない他のコロケーテッドブロックを時間的な動きベクトルを誘導するためのコロケーテッドブロックと決定することができる。例えば、予測対象ブロックとLCU(Largest Coding Unit)の境界とが接しているか否かを判断し、予測対象ブロックと上記LCUの境界とが接しているか否かによって第1コロケーテッドブロックが使用可能であるか否かを決定するステップを通じて、第1コロケーテッドブロックが使用可能でない場合、他のコロケーテッドブロック(例えば、第3コロケーテッドブロック)にコロケーテッドブロックを変更するか、第1コロケーテッドブロックを使用せずに直ぐに第5コロケーテッドブロックを使用する方法を使用することもできる。
【0103】
上記の方法は、具体的に次のようなステップによってなされることができる。
【0104】
1) 予測対象ブロックの境界とLCU(Largest Coding Unit)の境界とが接しているか否かを判断するステップ
【0105】
2) 予測対象ブロックの境界と上記LCUの境界とが接しているか否かによって第1コロケーテッドブロックが使用可能であるか否かを決定するステップ
【0106】
ステップ2)は、具体的に、予測対象ブロックの下側境界と上記LCUの境界とが接している場合、第1コロケーテッドブロックが使用可能でないと判断するステップになることができる。
【0107】
3) 第1コロケーテッドブロックが使用可能でない場合、上記第1コロケーテッドブロックを除く他のコロケーテッドブロックを時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定するステップ
【0108】
ステップ3)は、具体的に、予測対象ブロックの下側境界とLCUの境界とが接している場合と、予測対象ブロックの右側境界のみがLCUの境界と接している場合とで、互いに異なるコロケーテッドブロックが時間的な動き予測ベクトルを算出するためのコロケーテッドブロックと決定されるステップになることができる。
【0109】
4) 第1コロケーテッドブロックが使用可能である場合、第1コロケーテッドブロックを時間的な動き予測ブロックを算出するためのコロケーテッドブロックと決定し、第1コロケーテッドブロックが使用可能でない場合、第5コロケーテッドブロックの使用可能性を判断するステップ
【0110】
上記のようなステップは任意のものであって、ステップの順次的な関係や判断方法は、本発明の本質から外れない限り、変わることができる。
【0111】
図7は、本発明の実施例に係る予測対象ブロックがLCUの下側境界に接している場合を示す概念図である。
【0112】
図7を参照すれば、LCUの下側境界の部分に予測対象ブロック(PU4,PU7,PU8)が位置する場合のみ、コロケーテッドブロックの位置を変更する場合を示す。LCUの下側境界の部分に予測対象ブロック(PU4,PU7,PU8)が位置する場合、コロケーテッドブロックの位置をLCUのうち現在LCUの下に位置するLCUを探索しなくとも動き予測関連情報を算出できるように設定することができる。例えば、予測対象ブロックの第1コロケーテッドブロックではない第3コロケーテッドブロックをコロケーテッドブロックとして時間的な動き予測ベクトルを算出することができる。1) LCUの右側境界にのみ接している場合は、使用可能であるか否かによって、第1コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動き予測ベクトルを算出するコロケーテッドブロックと決定し、2) LCUの下側境界に接する場合は、使用可能であるか否かによって、第3コロケーテッドブロックと第5ブロックを順次に時間的な動き予測ベクトルを算出するコロケーテッドブロックと決定することができる。すなわち、本発明の実施例によれば、現在ブロックの下側境界がLCUの境界と接する場合と、現在ブロックの下側境界がLCUの境界と接しない場合とで、時間的な候補ブロックを求めるための画素の位置が変わることができる。
【0113】
さらに図4を参照すれば、図5ないし図7において上述した方法によって決定されたコロケーテッドブロックに基づいて、コロケーテッドブロック動き予測ベクトル(mvLXCol)及びコロケーテッドブロック使用可能性情報(availableFlagLXCol)を算出する(ステップS420)。
【0114】
図5ないし図7の過程を通じて決定されたコロケーテッドブロック情報に基づいて、予測対象ブロックの画面間予測に使用されるコロケーテッドブロックの動きベクトル(mvLXCol)及びコロケーテッドブロック使用可能性情報(availableFlagLXCol)を、次のような方法で算出することができる。
【0115】
1) コロケーテッドブロック(colPu)が画面内予測方法に基づいて符号化されるか、コロケーテッドブロック(colPu)が使用可能でないか、コロケーテッドピクチャ(colPic)が時間的な動き予測ベクトルの予測に使用できないピクチャであるか、時間的な動き予測ベクトルを使用せずに画面間予測を行う場合は、コロケーテッドブロック動きベクトル(mvLXCol)及びコロケーテッドブロック使用可能性情報(availableFlagLXCol)を0と設定することができる。
【0116】
2) 1)のような場合でなければ、L0リスト使用有無判断フラグ(PredFlagL0)、及びL1リスト使用有無判断フラグ(PredFlagL1)を通じて、コロケーテッドブロック動きベクトル情報(mvLXCol)とコロケーテッドブロック使用可能性情報(availableFlagLXCol)を算出することができる。
【0117】
まず、L0リスト使用有無判断フラグ(PredFlagL0)が0であってコロケーテッドブロックがL0リストを使用せずに画面間予測を行ったものと判断されれば、コロケーテッドブロックの動き予測関連情報であるmvCol、refIdxCol及びlistColなどのような情報は、L1リストを使用して算出されたコロケーテッドブロックの動き予測関連情報であるMvL1[xPCol][yPCol]、RefIdxL1[xPCol][yPCol]及びL1と設定し、コロケーテッドブロック使用可能性情報(availableFlagLXCol)を1と設定することができる。
【0118】
他の場合として、L0リスト使用有無判断フラグ(PredFlagL0)が1であってコロケーテッドブロックがL0リストを使用して画面間予測を行ったものと判断されれば、PredFlagL1が0である場合と1である場合とに分けて、コロケーテッドブロックの動き予測関連情報であるmvCol、refIdxCol及びlistColのような情報を設定し、コロケーテッドブロック使用可能性情報(availableFlagLXCol)を1と設定することができる。
【0119】
算出された mvLXColをスケーリングする(ステップS430)。
【0120】
ステップS420を通じて算出されたmvLXColを予測対象ブロックの時間的な動き予測ベクトルとして使用するために、予測対象ブロックが含まれたピクチャと予測対象ブロックが参照する参照ピクチャ間の距離、コロケーテッドブロックが含まれたコロケーテッドピクチャとコロケーテッドブロックが参照するコロケーテッドブロック参照ピクチャ間の距離情報に基づいて算出されたmvLXCol値をスケーリングして、時間的な予測動きベクトルを算出することができる。
【0121】
以下、本発明の実施例においては、Merge及びAMVPのような画面間予測を行う方法について開示する。
【0122】
図8は、本発明の実施例に係るマージモードを用いた画面間予測方法を示すフローチャートである。
【0123】
図8を参照すれば、空間的なマージ候補から動き予測関連情報を誘導する(ステップ S1000)。
【0124】
予測対象ブロックの周辺の予測単位から空間的なマージ候補(spatial merge candidate)を誘導することができる。空間的なマージ候補を誘導するために、予測単位の幅と高さ情報、MER(Motion Estimation Region)情報、singleMCLFlag情報、パーティション位置情報などを提供されることができる。上記のような入力情報に基づいて、空間的なマージ候補の位置による使用可能性情報(availableFlagN)、参照ピクチャ情報(refIdxL0, refIdxL1)、リスト利用情報(predFlagL0N, predFlagL1N)、動きベクトル情報(mvL0N, mvL1N)を誘導することができる。空間的なマージ候補は、予測対象ブロックの周辺に存在する複数のブロックになってもよい。
【0125】
図9は、本発明の実施例に係る空間的なマージ候補の位置を示す概念図である。
【0126】
図9を参照すれば、空間的なマージ候補は、予測対象ブロックの位置を基準に予測対象ブロックの左上に位置する点が(xP,yP)、予測対象ブロックの幅をnPSW、予測対象ブロックの幅をnPSHとする場合、(xP−1,yP+nPSH)である点を含むA0ブロック、(xP−1,yP+nPSH−MinPuSize)である点を含むA1ブロック、(xP+nPSW,yP−1)である点を含むB0ブロック、(xP+nPSW−MinPuSize,yP−1)である点を含むB1ブロック、(xP−MinPuSize,yP−1)である点を含むB2ブロックになることができる。
【0127】
さらに図8を参照すれば、時間的なマージ候補の参照ピクチャインデックス値を誘導する(ステップS1010)。
【0128】
時間的なマージ候補の参照ピクチャインデックス値は、時間的なマージ候補(コロケーテッドブロック)が含まれたコロケーテッドピクチャのインデックス値であって、下記のような特定の条件を通じて誘導されることができる。下記の条件は任意のものであって、変わることができる。例えば、予測対象ブロックの左上に位置する点が(Xp,yP)、予測対象ブロックの幅をnPSW、予測対象ブロックの幅をnPSHとする場合、1) (xP−1,yP+nPSH−1)の位置に該当する予測対象ブロックの周辺予測単位が存在し(以下、「参照ピクチャインデックス算出周辺予測単位」という。)、2) 参照ピクチャインデックス算出周辺予測単位のパーティションインデックス値が0であり、3) 参照ピクチャインデックス算出周辺予測単位が画面内予測モードを使用して予測を行ったブロックではなく、4) 予測対象ブロックと参照ピクチャインデックス算出周辺予測ブロックとが同一のMER(Motion Estimation Region)に属しない場合、時間的なマージ候補の参照ピクチャインデックス値を参照ピクチャインデックス算出周辺予測単位の参照ピクチャインデックス値と同一の値と決定することができる。上記のような条件を満足しない場合、時間的なマージ候補の参照ピクチャインデックス値は0と設定することができる。
【0129】
時間的なマージ候補ブロック(コロケーテッドブロック)を決定し、コロケーテッドブロックから動き予測関連情報を誘導する(ステップS1020)。
【0130】
本発明の実施例によれば、時間的なマージ候補ブロック(コロケーテッドブロック)は、予測対象ブロックと同一のLCUに含まれた位置に存在するように予測対象ブロックのLCU内における位置によって適応的に異なるように決定されることができる。
【0131】
1) 予測対象ブロックの下側及び右側がLCUの境界と接しない場合は、使用可能であるか否かを判断して、第1コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0132】
2) 予測対象ブロックの下側のみがLCUの境界と接する場合は、使用可能であるか否かを判断して、第3コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0133】
3) 予測対象ブロックの右側と下側がいずれもLCUの境界と接する場合は、使用可能であるか否かを判断して、第4コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0134】
4) 予測対象ブロックの右側のみがLCUの境界と接する場合は、使用可能であるか否かを判断して、第2コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0135】
本発明の実施例によれば、コロケーテッドブロックは、予測対象ブロックと同一のLCUに含まれた位置に存在するように予測対象ブロックのLCU内における位置によって適応的に異なるように決定される方法を使用できるだけでなく、予測対象ブロックと同一のLCUに含まれないコロケーテッドブロックの場合は、使用しなくてもよい。
【0136】
上述したように、コロケーテッドブロックを算出する方法として予測対象ブロックとLCUの境界の位置によって予測対象ブロックの性格を上記のように区分し、区分された予測対象ブロックの位置によって直ぐコロケーテッドブロックとして使用されるブロックを決定する方法を使用することができるが、優先的に第1コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することと仮定し、第1コロケーテッドブロックが使用可能であるか否か(例えば、予測対象ブロックの下側境界がLCUと接するか否かなど)を判断した後、第1コロケーテッドブロックではない他のコロケーテッドブロックを時間的な動きベクトルを誘導するためのコロケーテッドブロックと決定することができる。
【0137】
マージ候補リストを構成する(ステップS1030)。
【0138】
マージ候補リストは、空間的なマージ候補及び時間的なマージ候補のうち少なくとも一つを含んで構成されることができる。マージ候補リストに含まれる空間的なマージ候補及び時間的なマージ候補は、一定の優先順位を持って配列されることができる。
【0139】
マージ候補リストは、固定された数のマージ候補を含んで構成されることができ、 固定された数のマージ候補を生成するためにマージ候補が不足する場合、マージ候補が有する動き予測関連情報を組み合わせてマージ候補を生成するか、零ベクトル値をマージ候補として生成してマージ候補リストを生成することができる。
【0140】
図10は、本発明の実施例に係るAMVPを用いた画面間予測方法を示すフローチャートである。
【0141】
図10を参照すれば、空間的なAMVP候補ブロックから動き予測関連情報を誘導する(ステップS1200)。
【0142】
予測対象ブロックの予測動きベクトル及び参照ピクチャインデックス情報を誘導するために、予測対象ブロックの周辺にある周辺予測ブロックから空間的なAMVP候補ブロックを誘導することができる。
【0143】
図9をさらに参照すれば、空間的なAMVP候補ブロックは、A0ブロック、A1ブロックのうち一つのブロックを第1空間的なAMVP候補ブロックとして使用し、B0ブロック、B1ブロック、B2ブロックのうち一つのブロックを第2空間的なAMVP候補ブロックとして使用して、空間的なAMVP候補ブロックを誘導することができる。
【0144】
時間的なAMVP候補ブロックから動き予測関連情報を誘導する(ステップS1210)。
【0145】
本発明の実施例によれば、コロケーテッドブロックは、予測対象ブロックと同一の LCUに含まれた位置に存在するように予測対象ブロックのLCU内における位置によって適応的に異なるように決定されることができる。
【0146】
1) 予測対象ブロックの下側及び右側がLCUの境界と接しない場合は、使用可能であるか否かを判断して、第1コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0147】
2) 予測対象ブロックの下側のみがLCUの境界と接する場合は、使用可能であるか否かを判断して、第3コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0148】
3) 予測対象ブロックの右側と下側がいずれもLCUの境界と接する場合は、使用可能であるか否かを判断して、第4コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0149】
4) 予測対象ブロックの右側のみがLCUの境界と接する場合は、使用可能であるか否かを判断して、第2コロケーテッドブロックと第5コロケーテッドブロックを順次に時間的な動きベクトルを誘導するためのコロケーテッドブロックとして使用することができる。
【0150】
本発明の実施例によれば、コロケーテッドブロックは、予測対象ブロックと同一のLCUに含まれた位置に存在するように予測対象ブロックのLCU内における位置によって適応的に異なるように決定される方法を使用できるだけでなく、予測対象ブロックと同一のLCUに含まれないコロケーテッドブロックの場合は、使用しなくてもよい。
【0151】
空間的なAMVP候補ブロックを誘導するステップS1200で、第1空間的なAMVP候補ブロック及び第2空間的なAMVP候補ブロックが使用可能であると判断され、誘導された動き予測ベクトル値が同一でない場合、時間的な動き予測ベクトルを誘導するステップであるステップS1210は行われなくてもよい。
【0152】
AMVP候補リストを構成する(ステップS1220)。
【0153】
ステップS1200及びステップS1210のうち少なくとも一つのステップを通じて算出された動き予測関連情報を用いてAMVP候補リストを構成する。構成されたAMVP候補リストにおいて同一の動き予測関連情報が存在する場合、一つの値のみをAMVP候補値として使用することができる。AMVP候補リストに含まれる動き予測関連情報は、固定された個数の候補値のみを含むことができる。
【0154】
以上、実施例を参照して説明したが、当該技術分野の熟練した当業者は、下記の特許請求の範囲に記載された本発明の思想及び領域から逸脱しない範囲内で、本発明を多様に修正及び変更させ得ることを理解しなければならない。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10