(57)【要約】  画像符号化方法が開示される。本発明の画像符号化方法は、空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうち少なくとも一つから動き補正候補を誘導するステップと、前記誘導された動き補正候補に動き情報補正を行うステップと、前記動き情報補正の行われた動き補正候補を用いて現在ブロックの予測ブロックを生成するステップとを含むことができる。【選択図】図１６
2020522960.tif 000002
【特許請求の範囲】
【請求項１】
画像復号化方法であって、
空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうち少なくとも一つから動き補正候補を誘導するステップと、
前記誘導された動き補正候補に動き情報補正を行うステップと、
前記動き情報補正の行われた動き補正候補を用いて現在ブロックの予測ブロックを生成するステップとを含む、画像復号化方法。
【請求項２】
前記動き補正候補を誘導するステップは、
予め設定された順序に従って空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き補正候補を誘導することを特徴とする、請求項１に記載の画像復号化方法。
【請求項３】
前記予め設定された順序は、空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、及び予め定義された動き情報の順であることを特徴とする、請求項２に記載の画像復号化方法。
【請求項４】
前記動き情報補正を行うステップは、
前記誘導された動き補正候補に含まれている動きベクトルに双方テンプレートマッチングを適用して動き情報補正を行うことを特徴とする、請求項１に記載の画像復号化方法。
【請求項５】
前記双方テンプレートマッチングは、
前記誘導された動き補正候補に含まれている動きベクトルを初期動きベクトルとして用いて双方テンプレートを生成するステップと、
前記双方テンプレート内のサンプルと、前記初期動きベクトルが指示する参照画像内の復元されたサンプルとを比較して前記初期動きベクトルを補正するステップとを含むことを特徴とする、請求項４に記載の画像復号化方法。
【請求項６】
前記初期動きベクトルは、
前記誘導された動き補正候補のうちでゼロベクトルではない双方向予測動きベクトルであることを特徴とする、請求項５に記載の画像復号化方法。
【請求項７】
前記誘導された動き補正候補のうちでゼロベクトルではない双方向予測動きベクトルがない場合、
前記初期動きベクトルはゼロベクトルに設定されることを特徴とする、請求項６に記載男画像復号化方法。
【請求項８】
前記時間的周辺ブロックは、
前記空間的周辺ブロックの参照画像インデックスに基づいて選択された参照画像に含まれていることを特徴とする、請求項１に記載の画像復号化方法。
【請求項９】
前記双方テンプレートマッチングは、
整数画素単位及び副画素単位で行われることを特徴とする、請求項４に記載の画像復号化方法。
【請求項１０】
前記初期動きベクトルを補正するステップは、
前記双方テンプレートと最小の歪みを示す前記参照画像内の領域を指示する動きベクトルを探索するステップと、
前記探索された動きベクトルを前記初期動きベクトルの補正値として設定するステップとを含むことを特徴とする、請求項５に記載の画像復号化方法。
【請求項１１】
前記動きベクトルを探索するステップは、
前記参照画像内の制限された探索領域で探索することを特徴とする、請求項１０に記載の画像復号化方法。
【請求項１２】
前記制限された探索領域は、
整数画素単位の予め定められた範囲に設定されることを特徴とする、請求項１１に記載の画像復号化方法。
【請求項１３】
前記動きベクトルを探索するステップは、
前記整数画素単位の予め定められた範囲で副画素単位にて動きベクトルを探索することを特徴とする、請求項１２に記載の画像復号化方法。
【請求項１４】
前記初期動きベクトルを補正するステップは、
再帰的に行われることを特徴とする、請求項１０に記載の画像復号化方法。
【請求項１５】
前記誘導された動き補正候補に動き情報補正を行うステップは、
前記現在ブロックが一方向予測マージ候補、地域照明補償モード及びアフィン動き補償モードに該当しない場合に行われることを特徴とする、請求項１に記載の画像復号化方法。
【請求項１６】
動き補正モード使用情報を復号化するステップと、
前記復号化された動き補正モード使用情報に基づいて動き補正モードを決定するステップとをさらに含み、
前記動き補正候補を誘導するステップは、動き補正モードである場合に行われることを特徴とする、請求項１に記載の画像復号化方法。
【請求項１７】
前記動き補正モード使用情報を復号化するステップは、
スキップフラグ又はマージフラグに基づいて、前記動き補正モード使用情報を復号化するか否かを決定することを特徴とする、請求項１７に記載の画像復号化方法。
【請求項１８】
前記空間的周辺ブロックが複数である場合、
前記動き補正候補を誘導するステップは、
双方向予測動きベクトルを持っている空間的周辺ブロックから動き情報を先に誘導し、その後、一方向予測動きベクトルを持つ空間的周辺ブロックから動き情報を誘導することを特徴とする、請求項１に記載の画像復号化方法。
【請求項１９】
画像符号化方法であって、
空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き補正候補を誘導するステップと、
前記誘導された動き補正候補に動き情報補正を行うステップと、
前記動き情報補正の行われた動き補正候補を用いて現在ブロックの予測ブロックを生成するステップとを含む、画像符号化方法。
【請求項２０】
ビットストリームを含む非一時的記憶媒体であって、
空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き補正候補を誘導するステップと、
前記誘導された動き補正候補に動き情報補正を行うステップと、
前記動き情報補正の行われた動き補正候補を用いて現在ブロックの予測ブロックを生成するステップとを含む画像符号化方法で生成されたビットストリームを含む非一時的記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化／復号化方法、装置、及びビットストリームを保存した記録媒体に関する。具体的には、本発明は、動き情報を補正して動き補償を行う画像符号化／復号化方法及び装置に関する。
【背景技術】
【０００２】
最近、高解像度、高品質の画像、例えばＨＤ（Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ）画像及びＵＨＤ（Ｕｌｔｒａ  Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ）画像への需要が多様な応用分野で増加している。画像データが高解像度、高品質になるほど、従来の画像データに比べて相対的にデータ量が増加するので、従来の有線・無線ブロードバンド回線などの媒体を用いて画像データを伝送したり従来の記憶媒体を用いて保存したりする場合には、伝送費用と保存費用が増加することになる。このような画像データの高解像度、高品質化に伴って発生する問題を解決するためには、より高い解像度及び画質を有する画像に対する高効率画像符号化（ｅｎｃｏｄｉｎｇ）／復号化（ｄｅｃｏｄｉｎｇ）技術が求められる。
【０００３】
画像圧縮技術として、現在ピクチャの以前又は以後のピクチャから、現在ピクチャに含まれている画素値を予測する画面間（ｉｎｔｅｒ）予測技術、現在ピクチャ内の画素情報を用いて、現在ピクチャに含まれている画素値を予測する画面内（ｉｎｔｒａ）予測技術、残余信号のエネルギーを圧縮するための変換及び量子化技術、出現頻度の高い値に短い符号を割り当て、出現頻度の低い値に長い符号を割り当てるエントロピー符号化技術などの様々な技術が存在し、これらの画像圧縮技術を利用して画像データを効果的に圧縮して伝送又は保存することができる。
【０００４】
従来の画像符号化／復号化方法及び装置は、符号化／復号化対象ブロックにおいて空間的／時間的に隣接するブロックの動き情報に基づいて動き補償を行うので、符号化効率の向上に限界がある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、動き情報を補正して動き補償を行う方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る画像復号化方法は、空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうち少なくとも一つから動き補正候補を誘導するステップと、前記誘導された動き補正候補に動き情報補正を行うステップと、前記動き情報補正の行われた動き補正候補を用いて現在ブロックの予測ブロックを生成するステップとを含むことができる。
【０００７】
前記画像復号化方法において、前記動き補正候補を誘導するステップは、予め設定された順序に従って空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き補正候補を誘導することができる。
【０００８】
前記画像復号化方法において、前記予め設定された順序は、空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、及び予め定義された動き情報の順であり得る。
【０００９】
前記画像復号化方法において、前記動き情報補正を行うステップは、前記誘導された動き補正候補に含まれている動きベクトルに双方テンプレートマッチングを適用して動き情報補正を行うことができる。
【００１０】
前記画像復号化方法において、前記双方テンプレートマッチングは、前記誘導された動き補正候補に含まれている動きベクトルを初期動きベクトルとして用いて双方テンプレートを生成するステップと、前記双方テンプレート内のサンプルと、前記初期動きベクトルが指示する参照画像内の復元されたサンプルとを比較して前記初期動きベクトルを補正するステップとを含むことができる。
【００１１】
前記画像復号化方法において、前記初期動きベクトルは、前記誘導された動き補正候補のうちでゼロベクトルではない双方向予測動きベクトルであり得る。
【００１２】
前記画像復号化方法において、前記誘導された動き補正候補のうちでゼロベクトルではない双方向予測動きベクトルがない場合、前記初期動きベクトルはゼロベクトルに設定できる。
【００１３】
前記画像復号化方法において、前記時間的周辺ブロックは、前記空間的周辺ブロックの参照画像インデックスに基づいて選択された参照画像に含まれ得る。
【００１４】
前記画像復号化方法において、前記双方テンプレートマッチングは、整数画素単位及び副画素単位で行われ得る。
【００１５】
前記画像復号化方法において、前記初期動きベクトルを補正するステップは、前記双方テンプレートと最小の歪みを示す前記参照画像内の領域を指示する動きベクトルを探索するステップと、前記探索された動きベクトルを前記初期動きベクトルの補正値として設定するステップとを含むことができる。
【００１６】
前記画像復号化方法において、前記動きベクトルを探索するステップは、前記参照画像内の制限された探索領域で探索することができる。
【００１７】
前記画像復号化方法において、前記制限された探索領域は、整数画素単位の予め定められた範囲に設定できる。
【００１８】
前記画像復号化方法において、前記動きベクトルを探索するステップは、前記整数画素単位の予め定められた範囲で副画素単位にて動きベクトルを探索することができる。
【００１９】
前記画像復号化方法において、前記初期動きベクトルを補正するステップは、再帰的に行われ得る。
【００２０】
前記画像復号化方法において、前記誘導された動き補正候補に動き情報補正を行うステップは、前記現在ブロックが一方向予測マージ候補、地域照明補償モード及びアフィン動き補償モードに該当しない場合に行われ得る。
【００２１】
前記画像復号化方法において、動き補正モード使用情報を復号化するステップと、前記復号化された動き補正モード使用情報に基づいて動き補正モードを決定するステップとをさらに含み、前記動き補正候補を誘導するステップは、動き補正モードである場合に行われ得る。
【００２２】
前記画像復号化方法において、前記動き補正モード使用情報を復号化するステップは、スキップフラグ又はマージフラグに基づいて前記動き補正モード使用情報を復号化するか否かを決定することができる。
【００２３】
前記画像復号化方法において、前記空間的周辺ブロックが複数である場合、前記動き補正候補を誘導するステップは、双方向予測動きベクトルを持っている空間的周辺ブロックから動き情報を先に誘導し、その後、一方向予測動きベクトルを持つ空間的周辺ブロックから動き情報を誘導することができる。
【００２４】
本発明に係る画像符号化方法は、空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き補正候補を誘導するステップと、前記誘導された動き補正候補に動き情報補正を行うステップと、前記動き情報補正の行われた動き補正候補を用いて現在ブロックの予測ブロックを生成するステップとを含むことができる。
【００２５】
本発明に係るビットストリームを含む非一時的記憶媒体は、空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き補正候補を誘導するステップと、前記誘導された動き補正候補に動き情報補正を行うステップと、前記動き情報補正の行われた動き補正候補を用いて現在ブロックの予測ブロックを生成するステップとを含む画像符号化方法で生成されたビットストリームを含むことができる。
【発明の効果】
【００２６】
本発明によれば、圧縮効率が向上した画像符号化／復号化方法及び装置が提供できる。
【００２７】
本発明によれば、画像の符号化及び復号化効率を向上させることができる。
【００２８】
本発明によれば、画像の符号化器及び復号化器の計算複雑さを減少させることができる。
【図面の簡単な説明】
【００２９】
【図１】本発明が適用される符号化装置の一実施形態による構成を示すブロック図である。
【図２】本発明が適用される復号化装置の一実施形態による構成を示すブロック図である。
【図３】画像を符号化及び復号化するときの画像の分割構造を示す概略図である。
【図４】画面間予測過程の実施形態を説明するための図である。
【図５】本発明の一実施形態による画像符号化方法を示すフローチャートである。
【図６】本発明の一実施形態による画像復号化方法を示すフローチャートである。
【図７】本発明の他の実施形態による画像符号化方法を示すフローチャートである。
【図８】本発明の他の実施形態による画像復号化方法を示すフローチャートである。
【図９】現在ブロックの空間動きベクトル候補を誘導する例を説明するための図である。
【図１０】現在ブロックの時間動きベクトル候補を誘導する例を説明するための図である。
【図１１】空間マージ候補がマージ候補リストに追加される例を説明するための図である。
【図１２】時間マージ候補がマージ候補リストに追加される例を説明するための図である。
【図１３】双方テンプレートマッチングを説明するための図である。
【図１４】双方テンプレートマッチングで補正された動きベクトルを探索する領域を示すための図である。
【図１５】双方テンプレートマッチングで補正された動きベクトルを探索する領域を示すための図である。
【図１６】本発明の一実施形態による画像復号化方法を示すフローチャートである。
【発明を実施するための形態】
【００３０】
本発明は、様々な変更を加えることができ、様々な実施形態を有することができるので、特定の実施形態を図面に例示し、詳細な説明に詳細に説明する。ところが、これは本発明を特定の実施形態について限定するものではなく、本発明の思想及び技術範囲に含まれるすべての変更、均等物ないし代替物を含むものと理解されるべきである。図面において類似する参照符号は、様々な側面にわたって同一又は類似の機能を指し示す。図面における要素の形状及び大きさなどは、より明確な説明のために誇張することがある。後述する例示的実施形態についての詳細な説明は、特定の実施形態を例示として示す添付図面を参照する。これらの実施形態は、当業者が実施形態を実施し得る程度に十分に詳細に説明される。様々な実施形態は、互いに異なるが、相互に排他的である必要はないことが理解されるべきである。例えば、ここに記載されている特定の形状、構造及び特性は、一実施形態に関連して本発明の精神及び範囲を逸脱することなく、様々な実施形態に実現できる。また、それぞれの開示された実施形態内の個別構成要素の位置又は配置は、実施形態の精神及び範囲を逸脱することなく変更可能であることが理解されるべきである。したがって、後述する詳細な説明は、限定的な意味として取るものではなく、例示的な実施形態の範囲は、適切に説明されるならば、それらの請求項が主張するのと均等なすべての範囲及び添付の請求項によってのみ限定される。
【００３１】
本発明において、用語「第１」、「第２」などは多様な構成要素の説明に使用できるが、これらの構成要素は上記の用語により限定されてはならない。これらの用語は、一つの構成要素を他の構成要素から区別する目的にのみ使われる。例えば、本発明の権利範囲を外れない限り、第１構成要素は第２構成要素と命名することができ、同様に、第２構成要素も第１構成要素と命名することができる。用語「及び／又は」は、複数の関連した記載項目の組み合わせ又は複数の関連した記載項目のいずれかを含む。
【００３２】
本発明のある構成要素が他の構成要素に「連結されて」いる或いは「接続されて」いるとした場合には、その他の構成要素に直接連結されている或いは接続されていることもあるが、それらの間に別の構成要素が介在することもあると理解されるべきである。これに対し、ある構成要素が他の構成要素に「直接連結されて」いる或いは「直接接続されて」いるとした場合には、それらの間に別の構成要素が介在しないと理解されるべきである。
【００３３】
本発明の実施形態に示す構成部は、互いに異なる特徴的な機能を示すために独立に図示されるもので、各構成部が分離されたハードウェア又は一つのソフトウェア構成単位からなることを意味しない。すなわち、各構成部は、説明の便宜上、それぞれの構成部に羅列して含むもので、各構成部のうちの少なくとも２つの構成部が合わせられて一つの構成部をなすか、或いは一つの各構成部が複数の構成部に分けられて機能を行うことができ、このような各構成部の統合された実施形態及び分離された実施形態も、本発明の本質から外れない限り、本発明の権利範囲に含まれる。
【００３４】
本発明で使用した用語は、単に特定の実施形態を説明するために使われたものであり、本発明を限定するものではない。単数の表現は、文脈上明白に異なる意味ではない限り、複数の表現を含む。本発明において、「含む」又は「有する」などの用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品又はこれらの組み合わせが存在することを指定するものであり、一つ又はそれ以上の他の特徴、数字、ステップ、動作、構成要素、部品又はこれらの組み合わせの存在又は付加可能性を予め排除しないと理解されるべきである。つまり、本発明において、特定の構成を「含む」と記述する内容は、該当構成以外の構成を排除するものではなく、追加の構成が本発明の実施又は本発明の技術的思想の範囲に含まれ得ることを意味する。
【００３５】
本発明の一部の構成要素は、本発明において本質的な機能を行う不可欠の構成要素ではなく、単に性能を向上させるための選択的構成要素であり得る。本発明は、単に性能向上のために使用される構成要素を除く、本発明の本質の実現に必要不可欠な構成部のみを含んで実現でき、単に性能向上のために使用される選択的構成要素を除く必須構成要素のみを含む構造も本発明の権利範囲に含まれる。
【００３６】
以下、図面を参照して、本発明の実施形態について具体的に説明する。本明細書の実施形態を説明するにあたり、関連した公知の構成又は機能についての具体的な説明が本明細書の要旨を曖昧にするおそれがあると判断された場合、その詳細な説明は省略し、図面上の同一の構成要素については同一の参照符号を使用し、同一の構成要素についての重複説明は省略する。
【００３７】
以下において、画像は、動画像（ｖｉｄｅｏ）を構成する１つのピクチャ（ｐｉｃｔｕｒｅ）を意味することもあり、動画像自体を意味することもある。例えば、「画像の符号化及び／又は復号化」は、「動画像の符号化及び／又は復号化」を意味することもあり、「動画像を構成する画像のうちのいずれかの画像の符号化及び／又は復号化」を意味することもある。
【００３８】
以下において、用語「動画像」及び「ビデオ」は、同じ意味で使用されることもあり、入れ替わって使用されることもある。
【００３９】
以下において、対象画像は、符号化の対象である符号化対象画像、及び／又は復号化の対象である復号化対象画像であり得る。また、対象画像は、符号化装置に入力された入力画像であってもよく、復号化装置に入力された入力画像であってもよい。ここで、対象画像は、現在の画像と同じ意味を持つことができる。
【００４０】
以下において、用語「画像」、「ピクチャ」、「フレーム（ｆｒａｍｅ）」及び「スクリーン（ｓｃｒｅｅｎ）」は、同じ意味で使用されることもあり、入れ替わって使用されることもある。
【００４１】
以下において、対象ブロックは、符号化の対象である符号化対象ブロック、及び／又は復号化の対象である復号化対象ブロックであり得る。また、対象ブロックは、現在符号化及び／又は復号化の対象である現在ブロックであってもよい。例えば、用語「対象ブロック」及び「現在ブロック」は、同じ意味で使用されることもあり、入れ替わって使用されることもある。
【００４２】
以下において、用語「ブロック」及び「ユニット」は、同じ意味で使用されることもあり、入れ替わって使用されることもある。又は、「ブロック」は特定のユニットを示すことができる。
【００４３】
以下において、用語「領域（ｒｅｇｉｏｎ）」及び「セグメント（ｓｅｇｍｅｎｔ）」は、入れ替わって使用されることもある。
【００４４】
以下において、特定の信号は、特定のブロックを示す信号であり得る。例えば、原（ｏｒｉｇｉｎａｌ）信号は、対象ブロックを示す信号であり得る。予測（ｐｒｅｄｉｃｔｉｏｎ）信号は、予測ブロックを示す信号であり得る。残余（ｒｅｓｉｄｕａｌ）信号は、残余ブロック（ｒｅｓｉｄｕａｌ  ｂｌｏｃｋ）を示す信号であり得る。
【００４５】
実施形態において、特定の情報、データ、フラグ（ｆｌａｇ）、インデックス（ｉｎｄｅｘ）及び要素（ｅｌｅｍｅｎｔ）、属性（ａｔｔｒｉｂｕｔｅ）などのそれぞれは、値を持つことができる。情報、データ、フラグ、インデックス及び要素、属性などの値「０」は、論理偽（ｌｏｇｉｃａｌ  ｆａｌｓｅ）又は第１の予め定義された（ｐｒｅｄｅｆｉｎｅｄ）値を示すことができる。いわば、値「０」、偽、論理偽及び第１の予め定義された値は、入れ替わって使用されることもある。情報、データ、フラグ、インデックス及び要素、属性などの値「１」は、論理真（ｌｏｇｉｃａｌ  ｔｒｕｅ）又は第２の予め定義された値を示すことができる。いわば、値「１」、真、論理真及び第２の予め定義された値は、入れ替わって使用されることもある。
【００４６】
行、列、又はインデックス（ｉｎｄｅｘ）を示すためにｉ又はｊなどの変数が使用されるとき、ｉの値は０以上の整数であってもよく、１以上の整数であってもよい。いわば、実施形態において、行、列、及びインデックスは０からカウントされることもあり、１からカウントされることもある。
【００４７】
用語説明
符号化器（Ｅｎｃｏｄｅｒ）：符号化（Ｅｎｃｏｄｉｎｇ）を行う装置を意味する。すなわち、符号化装置を意味することができる。
【００４８】
復号化器（Ｄｅｃｏｄｅｒ）：復号化（Ｄｅｃｏｄｎｇ）を行う装置を意味する。すなわち、復号化装置を意味することができる。
【００４９】
ブロック（Ｂｌｏｃｋ）：サンプル（Ｓａｍｐｌｅ）のＭ×Ｎ配列である。ここで、ＭとＮは正の整数値を意味することができ、ブロックは一般に２次元形状のサンプル配列を意味することができる。ブロックはユニットを意味することができる。現在ブロックは、符号化時に符号化の対象となる符号化対象ブロック、復号化時に復号化の対象となる復号化対象ブロックを意味することができる。また、現在ブロックは符号化ブロック、予測ブロック、残予ブロック及び変換ブロックのうちの少なくとも一つであり得る。
【００５０】
サンプル（Ｓａｍｐｌｅ）：ブロックを構成する基本単位である。ビット深度（ｂｉｔ  ｄｅｐｔｈ、Ｂｄ）に応じて０から２Ｂｄ−１までの値で表現できる。本発明において、サンプルは画素又はピクセルと同じ意味で使用できる。すなわち、サンプル、画素、ピクセルは互いに同じ意味を持つことができる。
【００５１】
ユニット（Ｕｎｉｔ）：画像符号化及び復号化の単位を意味することができる。画像の符号化及び復号化において、ユニットは、一つの画像を分割した領域であり得る。また、ユニットは、一つの画像を細分化されたユニットに分割して符号化或いは復号化するとき、その分割された単位を意味することができる。すなわち、一つの画像は複数のユニットに分割できる。画像の符号化及び復号化において、ユニット別に、予め定義された処理が行われ得る。一つのユニットは、ユニットに比べてより小さい大きさを持つサブユニットにさらに分割できる。機能に応じて、ユニットは、ブロック（Ｂｌｏｃｋ）、マクロブロック（Ｍａｃｒｏｂｌｏｃｋ）、符号化ツリーユニット（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔ）、符号化ツリーブロック（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｂｌｏｃｋ）、符号化ユニット（Ｃｏｄｉｎｇ  Ｕｎｉｔ）、符号化ブロック（Ｃｏｄｉｎｇ  Ｂｌｏｃｋ）、予測ユニット（Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ）、予測ブロック（Ｐｒｅｄｉｃｔｉｏｎ  Ｂｌｏｃｋ）、残予ユニット（Ｒｅｓｉｄｕａｌ  Ｕｎｉｔ）、残予ブロック（Ｒｅｓｉｄｕａｌ  Ｂｌｏｃｋ）、変換ユニット（Ｔｒａｎｓｆｏｒｍ  Ｕｎｉｔ）、変換ブロック（Ｔｒａｎｓｆｏｒｍ  Ｂｌｏｃｋ）などを意味することができる。また、ユニットは、ブロックと区分して指し示すために、輝度（Ｌｕｍａ）成分ブロック、それに対応する色差（Ｃｈｒｏｍａ）成分ブロック、及び各ブロックに対する構文要素を含むことを意味することができる。ユニットは、様々なサイズと形状を持つことができ、特に、ユニットの形状は、正方形だけでなく、長方形、台形、三角形、五角形など、２次元的に表現できる幾何学的図形を含むことができる。また、ユニット情報は、符号化ユニット、予測ユニット、残予ユニット、変換ユニットなどを指し示すユニットのタイプ、ユニットの大きさ、ユニットの深さ、ユニットの符号化及び復号化順序などのうちの少なくとも一つを含むことができる。
【００５２】
符号化ツリーユニット（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔ）：一つの輝度成分（Ｙ）符号化ツリーブロックに関連した２つの色差成分（Ｃｂ，Ｃｒ）符号化ツリーブロックから構成される。また、前記ブロックと各ブロックに対する構文要素を含むことを意味することもできる。各符号化ツリーユニットは、符号化ユニット、予測ユニット、変換ユニットなどのサブユニットを構成するために、四分木（ｑｕａｄ  ｔｒｅｅ）、二分木（ｂｉｎａｒｙ  ｔｒｅｅ）、三分木（ｔｅｒｎａｒｙ  ｔｒｅｅ）などの一つ以上の分割方式を用いて分割できる。入力画像の分割の如く画像の復号化／符号化過程で処理単位となるサンプルブロックを指し示すための用語として使用できる。ここで、四分木は、４分割ツリー（ｑｕａｒｔｅｒｎａｒｙ  ｔｒｅｅ）を意味することができる。
【００５３】
符号化ツリーブロック（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｂｌｏｃｋ）：Ｙ符号化ツリーブロック、Ｃｂ符号化ツリーブロック及びＣｒ符号化ツリーブロックのうちのいずれかを示すための用語として使用できる。
【００５４】
周辺ブロック（Ｎｅｉｇｈｂｏｒ  ｂｌｏｃｋ）：現在ブロックに隣接するブロックを意味することができる。現在ブロックに隣接するブロックは、現在ブロックと境界が接しているブロック、又は現在ブロックから所定の距離内に位置するブロックを意味することができる。周辺ブロックは、現在ブロックの頂点に隣接するブロックを意味することができる。ここで、現在ブロックの頂点に隣接するブロックとは、現在ブロックの横に隣接する隣接ブロックと縦に隣接するブロック、又は現在ブロックの縦に隣接する隣接ブロックと横に隣接するブロックであり得る。周辺ブロックは、復元された周辺ブロックを意味することもある。
【００５５】
復元された周辺ブロック（Ｒｅｃｏｎｓｔｒｕｃｔｅｄ  Ｎｅｉｇｈｂｏｒ  Ｂｌｏｃｋ）：現在ブロックの周辺に空間的（Ｓｐａｔｉａｌ）／時間的（Ｔｅｍｐｏｒａｌ）に既に符号化或いは復号化された周辺ブロックを意味することができる。このとき、復元された周辺ブロックは、復元された周辺ユニットを意味することができる。復元された空間的周辺ブロックは、現在ピクチャ内のブロックでありながら符号化及び／又は復号化を介して既に復元されたブロックであり得る。復元された時間的周辺ブロックは、参照画像内で現在ピクチャの現在ブロックと対応する位置の復元されたブロック又はその周辺ブロックであり得る。
【００５６】
ユニット深さ（Ｄｅｐｔｈ）：ユニットが分割された程度を意味することができる。ツリー構造（Ｔｒｅｅ  Ｓｔｒｕｃｔｕｒｅ）における最上位ノード（Ｒｏｏｔ  Ｎｏｄｅ）は、分割されていない最初のユニットに対応することができる。最上位ノードは、ルートノードと呼ばれることもある。また、最上位ノードは、最小の深さ値を持つことができる。このとき、最上位ノードは、レベル（Ｌｅｖｅｌ）０の深さを持つことができる。レベル１の深さを持つノードは、最初のユニットが一度分割されることにより生成されたユニットを示すことができる。レベル２の深さを持つノードは、最初のユニットが二回分割されることにより生成されたユニットを示すことができる。レベルｎの深さを持つノードは、最初のユニットがｎ回分割されることにより生成されたユニットを示すことができる。リーフノード（Ｌｅａｆ  Ｎｏｄｅ）は、最下位ノードであり、それ以上分割できないノードであり得る。リーフノードの深さは最大レベルであり得る。例えば、最大レベルの予め定義された値は３であり得る。ルートノードは深さが最も浅く、リーフノードは深さが最も深いといえる。また、ユニットをツリー構造で表現したとき、ユニットが存在するレベルがユニット深さを意味することができる。
【００５７】
ビットストリーム（Ｂｉｔｓｔｒｅａｍ）：符号化された画像情報を含むビットの列を意味することができる。
【００５８】
パラメータセット（Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）：ビットストリーム内の構造のうちのヘッダー（ｈｅａｄｅｒ）情報に該当する。ビデオパラメータセット（ｖｉｄｅｏ  ｐａｒａｍｅｔｅｒ  ｓｅｔ）、シーケンスパラメータセット（ｓｅｑｕｅｎｃｅ  ｐａｒａｍｅｔｅｒ  ｓｅｔ）、ピクチャパラメータセット（ｐｉｃｔｕｒｅ  ｐａｒａｍｅｔｅｒ  ｓｅｔ）、適応パラメータセット（ａｄａｐｔａｔｉｏｎ  ｐａｒａｍｅｔｅｒ  ｓｅｔ）のうちの少なくとも一つがパラメータセットに含まれ得る。また、パラメータセットはスライス（ｓｌｉｃｅ）ヘッダー及びタイル（ｔｉｌｅ）ヘッダー情報を含むこともできる。
【００５９】
パーシング（Ｐａｒｓｉｎｇ）：ビットストリームをエントロピー復号化して構文要素（Ｓｙｎｔａｘ  Ｅｌｅｍｅｎｔ）の値を決定することを意味するか、或いはエントロピー復号化自体を意味することができる。
【００６０】
シンボル（Ｓｙｍｂｏｌ）：符号化／復号化対象ユニットの構文要素、符号化パラメータ（ｃｏｄｉｎｇ  ｐａｒａｍｅｔｅｒ）、変換係数（Ｔｒａｎｓｆｏｒｍ  Ｃｏｅｆｆｉｃｉｅｎｔ）の値などのうちの少なくとも一つを意味することができる。また、シンボルは、エントロピー符号化の対象或いはエントロピー復号化の結果を意味することができる。
【００６１】
予測モード（Ｐｒｅｄｉｃｔｉｏｎ  Ｍｏｄｅ）：画面内予測で符号化／復号化されるモード、又は画面間予測で符号化／復号化されるモードを指し示す情報であり得る。
【００６２】
予測ユニット（Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ）：画面間予測、画面内予測、画面間補償、画面内補償、動き補償など、予測を行うときの基本単位を意味することができる。一つの予測ユニットは、より小さいサイズを有する複数のパーティション（Ｐａｒｔｉｔｉｏｎ）又は複数のサブ予測ユニットに分割されてもよい。複数のパーティションも予測又は補償の実行における基本単位であり得る。予測ユニットの分割によって生成されたパーティションも予測ユニットであり得る。
【００６３】
予測ユニットパーティション（Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ  Ｐａｒｔｉｔｉｏｎ）：予測ユニットが分割された形態を意味することができる。
【００６４】
参照画像リスト（Ｒｅｆｅｒｅｎｃｅ  Ｐｉｃｔｕｒｅ  Ｌｉｓｔ）：画面間予測或いは動き補償に使用される一つ以上の参照画像を含むリストを意味することができる。参照画像リストの種類は、ＬＣ（Ｌｉｓｔ  Ｃｏｍｂｉｎｅｄ）、Ｌ０（Ｌｉｓｔ  ０）、Ｌ１（Ｌｉｓｔ  １）、Ｌ２（Ｌｉｓｔ  ２）、Ｌ３（Ｌｉｓｔ  ３）などが挙げられる。画面間予測には、一つ以上の参照画像リストが使用できる。
【００６５】
画面間予測インジケータ（Ｉｎｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  Ｉｎｄｉｃａｔｏｒ）： 現在ブロックの画面間予測方向（一方向予測、双方向／双予測／両方向予測など）を意味することができる。又は、現在ブロックの予測ブロックを生成するときに使用される参照画像の個数を意味することができる。又は、現在ブロックに対して画面間予測或いは動き補償を行うときに使用される予測ブロックの個数を意味することができる。
【００６６】
予測リスト活用フラグ（ｐｒｅｄｉｃｔｉｏｎ  ｌｉｓｔ  ｕｔｉｌｉｚａｔｉｏｎ  ｆｌａｇ）：特定の参照画像リスト内の少なくとも一つの参照画像を用いて予測ブロックを生成するか否かを示す。予測リスト活用フラグを用いて画面間予測インジケータを導出することができ、逆に画面間予測インジケータを用いて予測リスト活用フラグを導出することができる。たとえば、予測リスト活用フラグが第１の値「０」を指示する場合には、当該参照画像リスト内の参照画像を用いて予測ブロックを生成しないことを示すことができ、第２の値「１」を指示する場合には、当該参照画像リストを用いて予測ブロックを生成することができることを示すことができる。
【００６７】
参照画像インデックス（Ｒｅｆｅｒｅｎｃｅ  Ｐｉｃｔｕｒｅ  Ｉｎｄｅｘ）：参照画像リストにおいて特定の参照画像を指し示すインデックスを意味することができる。
【００６８】
参照画像（Ｒｅｆｅｒｅｎｃｅ  Ｐｉｃｔｕｒｅ）：画面間予測或いは動き補償のために特定のブロックが参照する画像を意味することができる。又は、参照画像は、画面間予測又は動き補償のために現在ブロックが参照する参照ブロックを含む画像であり得る。以下、用語「参照ピクチャ」及び「参照画像」は、同一の意味で使用されることもあり、入れ替わって使用されることもある。
【００６９】
動きベクトル（Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ）：画面間予測或いは動き補償に使用される２次元ベクトルであり得る。動きベクトルは、符号化／復号化対象ブロックと参照ブロックとの間のオフセットを意味することができる。例えば、（ｍｖＸ，ｍｖＹ）は動きベクトルを示すことができる。ｍｖＸは水平（ｈｏｒｉｚｏｎｔａｌ）成分、ｍｖＹは垂直（ｖｅｒｔｉｃａｌ）成分を示すことができる。
【００７０】
探索領域（Ｓｅａｒｃｈ  Ｒａｎｇｅ）：探索領域は、画面間予測のうち、動きベクトルに対する探索が行われる２次元の領域であり得る。例えば、探索領域のサイズはＭｘＮであり得る。Ｍ及びＮはそれぞれ正の整数であり得る。
【００７１】
動きベクトル候補（Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｃａｎｄｉｄａｔｅ）：動きベクトルを予測するときに予測候補となるブロック、或いはそのブロックの動きベクトルを意味することができる。また、動きベクトル候補は、動きベクトル候補リストに含まれてもよい。
【００７２】
動きベクトル候補リスト（Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｃａｎｄｉｄａｔｅ  Ｌｉｓｔ）：一つ以上の動きベクトル候補を用いて構成されたリストを意味することができる。
動きベクトル候補インデックス（Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｃａｎｄｉｄａｔｅ  Ｉｎｄｅｘ）：動きベクトル候補リスト内の動きベクトル候補を示すインジケータを意味することができる。動きベクトル予測器（Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｐｒｅｄｉｃｔｏｒ）のインデックス（ｉｎｄｅｘ）であってもよい。
【００７３】
動き情報（Ｍｏｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ）：動きベクトル、参照画像インデックス、画面間予測インジケータだけでなく、予測リスト活用フラグ、参照画像リスト情報、参照画像、動きベクトル候補、動きベクトル候補インデックス、マージ候補、マージンインデックスなどのうちの少なくとも一つを含む情報を意味することができる。
【００７４】
マージ候補リスト（Ｍｅｒｇｅ  Ｃａｎｄｉｄａｔｅ  Ｌｉｓｔ）：一つ以上のマージ候補を用いて構成されたリストを意味することができる。
【００７５】
マージ候補（Ｍｅｒｇｅ  Ｃａｎｄｉｄａｔｅ）：空間マージ候補、時間マージ候補、組み合わせマージ候補、組み合わせ双予測マージ候補、ゼロマージ候補などを意味することができる。マージ候補は、画面間予測インジケータ、各リストに対する参照画像インデックス、動きベクトル、予測リスト活用フラグ、画面間予測インジケータなどの動き情報を含むことができる。
【００７６】
マージインデックス（Ｍｅｒｇｅ  Ｉｎｄｅｘ）：マージ候補リスト内のマージ候補を指し示すインジケータを意味することができる。また、マージインデックスは、空間的／時間的に現在ブロックと隣接するように復元されたブロックのうち、マージ候補を誘導したブロックを示すことができる。また、マージインデックスは、マージ候補が持つ動き情報のうちの少なくとも一つを示すことができる。
【００７７】
変換ユニット（Ｔｒａｎｓｆｏｒｍ  Ｕｎｉｔ）：変換、逆変換、量子化、逆量子化、変換係数符号化／復号化のように残余信号（ｒｅｓｉｄｕａｌ  ｓｉｇｎａｌ）符号化／復号化を行うときの基本単位を意味することができる。一つの変換ユニットは、分割されてサイズがさらに小さい複数のサブ変換ユニットに分割できる。ここで、変換／逆変換は、１次変換／逆変換及び２次変換／逆変換のうちの少なくとも一つを含むことができる。
【００７８】
スケーリング（Ｓｃａｌｉｎｇ）：量子化されたレベルに因数を掛ける過程を意味することができる。量子化されたレベルに対するスケーリングの結果として変換係数を生成することができる。スケーリングを逆量子化（ｄｅｑｕａｎｔｉｚａｔｉｏｎ）とも呼ぶことができる。
【００７９】
量子化パラメータ（Ｑｕａｎｔｉｚａｔｉｏｎ  Ｐａｒａｍｅｔｅｒ）：量子化において変換係数を用いて量子化されたレベル（ｑｕａｎｔｉｚｅｄ  ｌｅｖｅｌ）を生成するときに使用する値を意味することができる。又は、逆量子化において量子化されたレベルをスケーリング（ｓｃａｌｉｎｇ）して変換係数を生成するときに使用する値を意味することもできる。量子化パラメータは、量子化ステップサイズ（ｓｔｅｐ  ｓｉｚｅ）にマッピングされた値であり得る。
【００８０】
デルタ量子化パラメータ（Ｄｅｌｔａ  Ｑｕａｎｔｉｚａｔｉｏｎ  Ｐａｒａｍｅｔｅｒ）：予測された量子化パラメータと符号化／復号化対象ユニットの量子化パラメータとの差分（ｄｉｆｆｅｒｅｎｃｅ）値を意味することができる。
【００８１】
スキャン（Ｓｃａｎ）：ユニット、ブロック或いは行列内係数の順序をソートする方法を意味することができる。例えば、２次元配列を１次元配列にソートすることをスキャンという。又は、１次元配列を２次元配列にソートすることもスキャン或いは逆スキャン（Ｉｎｖｅｒｓｅ  Ｓｃａｎ）と呼ぶことができる。
【００８２】
変換係数（Ｔｒａｎｓｆｏｒｍ  Ｃｏｅｆｆｉｃｉｅｎｔ）：符号化器で変換を行ってから生成された係数値を意味することができる。復号化器でエントロピー復号化及び逆量子化のうちの少なくとも一つを行ってから生成された係数値を意味することもできる。変換係数又は残予信号に量子化を適用した量子化レベル又は量子化変換係数レベルも変換係数の意味に含まれ得る。
【００８３】
量子化レベル（Ｑｕａｎｔｉｚｅｄ  Ｌｅｖｅｌ）：符号化器で変換係数又は残余信号に量子化を行って生成された値を意味することができる。又は、復号化器で逆量子化を行う前に逆量子化の対象となる値を意味することもできる。同様に、変換及び量子化の結果である量子化変換係数レベルも量子化レベルの意味に含まれ得る。
【００８４】
ノンゼロ変換係数（Ｎｏｎ−ｚｅｒｏ  Ｔｒａｎｓｆｏｒｍ  Ｃｏｅｆｆｉｃｉｅｎｔ）：値の大きさが０ではない変換係数、或いは値の大きさが０ではない変換係数レベル、或いは量子化されたレベルを意味することができる。
【００８５】
量子化行列（Ｑｕａｎｔｉｚａｔｉｏｎ  Ｍａｔｒｉｘ）：画像の主観的画質或いは客観的画質を向上させるために量子化或いは逆量子化過程で利用する行列を意味することができる。量子化行列をスケーリングリスト（ｓｃａｌｉｎｇ  ｌｉｓｔ）とも呼ぶことができる。
【００８６】
量子化行列係数（Ｑｕａｎｔｉｚａｔｉｏｎ  Ｍａｔｒｉｘ  Ｃｏｅｆｆｉｃｉｅｎｔ）：量子化行列内の各元素（ｅｌｅｍｅｎｔ）を意味することができる。量子化行列係数を行列係数（ｍａｔｒｉｘ  ｃｏｅｆｆｉｃｉｅｎｔ）とも呼ぶことができる。
【００８７】
基本行列（Ｄｅｆａｕｌｔ  Ｍａｔｒｉｘ）：符号化器と復号化器で予め定義されている所定の量子化行列を意味することができる。
【００８８】
非基本行列（Ｎｏｎ−ｄｅｆａｕｌｔ  Ｍａｔｒｉｘ）：符号化器と復号化器で予め定義されず、ユーザによってシグナリングされる量子化行列を意味することができる。
【００８９】
統計値（ｓｔａｔｉｓｔｉｃ  ｖａｌｕｅ）：演算可能な特定の値を有する変数、符号化パラメータ、定数などの少なくとも一つに対する統計値は、当該特定値の平均値、重み付け平均値、重み付け和値、最小値、最大値、最頻値、中央値及び補間値のうちの少なくとも一つであり得る。
【００９０】
図１は本発明が適用される符号化装置の一実施形態による構成を示すブロック図である。
【００９１】
符号化装置１００は、エンコーダ、ビデオ符号化装置又は画像符号化装置であり得る。ビデオは、一つ以上の画像を含むことができる。符号化装置１００は、一つ以上の画像を順次符号化することができる。
【００９２】
図１を参照すると、符号化装置１００は、動き予測部１１１、動き補償部１１２、イントラ予測部１２０、スイッチ１１５、減算器１２５、変換部１３０、量子化部１４０、エントロピー符号化部１５０、逆量子化部１６０、逆変換部１７０、加算器１７５、フィルタ部１８０、及び参照ピクチャバッファ１９０を含むことができる。
【００９３】
符号化装置１００は、入力画像に対してイントラモード及び／又はインターモードで符号化を行うことができる。また、符号化装置１００は、入力画像に対する符号化を介して符号化された情報を含むビットストリームを生成することができ、生成されたビットストリームを出力することができる。生成されたビットストリームは、コンピュータ可読記録媒体に保存できるか、或いは有線／無線伝送媒体を介してストリミングできる。予測モードとしてイントラモードが使用される場合、スイッチ１１５はイントラに転換でき、予測モードとしてインターモードが使用される場合、スイッチ１１５はインターに転換できる。ここで、イントラモードは画面内予測モードを意味することができ、インターモードは画面間予測モードを意味することができる。符号化装置１００は、入力画像の入力ブロックに対する予測ブロックを生成することができる。また、符号化装置１００は、予測ブロックが生成された後、入力ブロック及び予測ブロックの差分（ｒｅｓｉｄｕａｌ）を用いて残余ブロックを符号化することができる。入力画像は、現在符号化の対象である現在画像と称されることもある。入力ブロックは、現在符号化の対象である現在ブロック或いは符号化対象ブロックと称されることもある。
【００９４】
予測モードがイントラモードである場合、イントラ予測部１２０は、現在ブロックの周辺に既に符号化／復号化されたブロックのサンプルを参照サンプルとしても用いることができる。イントラ予測部１２０は、参照サンプルを用いて現在ブロックに対する空間的予測を行うことができ、空間的予測を介して入力ブロックに対する予測サンプルを生成することができる。ここで、イントラ予測は画面内予測を意味することができる。
【００９５】
予測モードがインターモードである場合には、動き予測部１１１は、動き予測過程で参照画像から入力ブロックと最もよくマッチする領域を検索することができ、検索された領域を用いて動きベクトルを導出することができる。この際、前記領域として探索領域を使用することができる。参照画像は、参照ピクチャバッファ１９０に保存できる。ここで、参照画像に対する符号化／復号化が処理されたとき、参照ピクチャバッファ１９０に保存できる。
【００９６】
動き補償部１１２は、動きベクトルを用いる動き補償を行うことにより、現在ブロックに対する予測ブロックを生成することができる。ここで、インター予測は画面間予測或いは動き補償を意味することができる。
【００９７】
前記動き予測部１１１と動き補償部１１２は、動きベクトルの値が整数値を持たない場合に参照画像内の一部の領域に対して補間フィルタ（Ｉｎｔｅｒｐｏｌａｔｉｏｎ  Ｆｉｌｔｅｒ）を適用して予測ブロックを生成することができる。画面間予測或いは動き補償を行うために、符号化ユニットを基準に、該当符号化ユニットに含まれている予測ユニットの動き予測及び動き補償方法がスキップモード（Ｓｋｉｐ  Ｍｏｄｅ）、マージモード（Ｍｅｒｇｅ  ｍｏｄｅ）、向上した動きベクトル予測（Ａｄｖａｎｃｅｄ  Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｐｒｅｄｉｃｔｉｏｎ、ＡＭＶＰ）モード、及び現在ピクチャ参照モードのうちのいずれの方法であるかを判断することができ、各モードに応じて、画面間予測或いは動き補償を行うことができる。
【００９８】
減算器１２５は、入力ブロック及び予測ブロックの差分を用いて残余ブロックを生成することができる。残余ブロックは残余信号とも称される。残余信号は、原信号と予測信号との差（ｄｉｆｆｅｒｅｎｃｅ）を意味することができる。又は、残余信号は、原信号と予測信号との差を変換（ｔｒａｎｓｆｏｒｍ）するか、量子化するか、又は変換及び量子化することにより生成された信号であり得る。残余ブロックはブロック単位の残余信号であり得る。
【００９９】
変換部１３０は、残余ブロックに対して変換（ｔｒａｎｓｆｏｒｍ）を行って変換係数（ｔｒａｎｓｆｏｒｍ  ｃｏｅｆｆｉｃｉｅｎｔ）を生成することができ、生成された変換係数を出力することができる。ここで、変換係数は、残余ブロックに対する変換を行うことにより生成された係数値であり得る。変換省略（ｔｒａｎｓｆｏｒｍ  ｓｋｉｐ）モードが適用される場合、変換部１３０は残余ブロックに対する変換を省略することもできる。
【０１００】
変換係数又は残余信号に量子化を適用することにより、量子化レベル（ｑｕａｎｔｉｚｅｄ  ｌｅｖｅｌ）が生成できる。以下、実施形態では、量子化レベルも変換係数と称されることがある。
【０１０１】
量子化部１４０は、変換係数又は残余信号を量子化パラメータに基づいて量子化することにより量子化レベルを生成することができ、生成された量子化レベルを出力することができる。このとき、量子化部１４０では、量子化行列を用いて変換係数を量子化することができる。
【０１０２】
エントロピー符号化部１５０は、量子化部１４０で算出された値、又は符号化過程で算出された符号化パラメータ（Ｃｏｄｉｎｇ  Ｐａｒａｍｅｔｅｒ）値などに対して確率分布によるエントロピー符号化を行うことにより、ビットストリーム（ｂｉｔｓｔｒｅａｍ）を生成することができ、ビットストリームを出力することができる。エントロピー符号化部１５０は、画像のサンプルに関する情報及び画像の復号化のための情報に対するエントロピー符号化を行うことができる。例えば、画像の復号化のための情報は構文要素（ｓｙｎｔａｘ  ｅｌｅｍｅｎｔ）などを含むことができる。
【０１０３】
エントロピー符号化が適用される場合、高い発生確率を有するシンボル（ｓｙｍｂｏｌ）に少ない数のビットが割り当てられ、低い発生確率を有するシンボルに多い数のビットが割り当てられてシンボルが表現されることにより、符号化対象シンボルに対するビット列のサイズが減少できる。エントロピー符号化部１５０は、エントロピー符号化のために指数ゴロム（ｅｘｐｏｎｅｎｔｉａｌ  Ｇｏｌｏｍｂ）、ＣＡＶＬＣ（Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）、ＣＡＢＡＣ（Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）などの符号化方法を使用することができる。例えば、エントロピー符号化部１５０は、可変長符号化（Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ／Ｃｏｄｅ；ＶＬＣ）テーブルを用いてエントロピー符号化を行うことができる。また、エントロピー符号化部１５０は、対象シンボルの２値化（ｂｉｎａｒｉｚａｔｉｏｎ）方法及び対象シンボル／ビン（ｂｉｎ）の確率モデル（ｐｒｏｂａｂｉｌｉｔｙ  ｍｏｄｅｌ）を導出した後、導出された２値化方法、確率モデル、コンテキストモデル（Ｃｏｎｔｅｘｔ  Ｍｏｄｅｌ）を用いて算術符号化を行うこともできる。
【０１０４】
エントロピー符号化部１５０は、変換係数レベル（量子化レベル）を符号化するために、変換係数スキャニング（Ｔｒａｎｓｆｏｒｍ  Ｃｏｅｆｆｉｃｉｅｎｔ  Ｓｃａｎｎｉｎｇ）方法を介して２次元のブロック形態（ｆｏｒｍ）係数を１次元のベクトルに変更することができる。
【０１０５】
符号化パラメータ（Ｃｏｄｉｎｇ  Ｐａｒａｍｅｔｅｒ）は、構文要素のように符号化器で符号化されて復号化器へシグナリングされる情報（フラグ、インデックスなど）だけでなく、符号化過程或いは復号化過程で誘導される情報を含むことができ、画像を符号化又は復号化するときに必要な情報を意味することができる。例えば、ユニット／ブロックサイズ、ユニット／ブロック深さ、ユニット／ブロック分割情報、ユニット／ブロック形態、ユニット／ブロック分割構造、四分木分割か否か、二分木分割か否か、二分木分割の方向（横方向或いは縦方向）、二分木分割の形態（対称分割或いは非対称分割）、三分木分割か否か、三分木分割の方向（横方向或いは縦方向）、三分木分割の形態（対称分割或いは非対称分割）、複合型ツリー分割か否か、複合型ツリー分割の方向（横方向或いは縦方向）、複合型ツリー分割の形態（対称分割或いは非対称分割）、複合型ツリーの分割ツリー（二分木或いは三分木）、予測モード（画面内予測又は画面間予測）、画面内輝度予測モード／方向、画面内色差予測モード／方向、画面内分割情報、画面間分割情報、符号化ブロック分割フラグ、予測ブロック分割フラグ、変換ブロック分割フラグ、参照サンプルフィルタリング方法、参照サンプルフィルタタップ、参照サンプルフィルタ係数、予測ブロックフィルタリング方法、予測ブロックフィルタタップ、予測ブロックフィルタ係数、予測ブロック境界フィルタリング方法、予測ブロック境界フィルタタップ、予測ブロック境界フィルタ係数、画面内予測モード、画面間予測モード、動き情報、動きベクトル、動きベクトル差分、参照画像インデックス、画面間予測方向、画面間予測インジケータ、予測リスト活用フラグ、参照画像リスト、参照画像、動きベクトル予測インデックス、動きベクトル予測候補、動きベクトル候補リスト、マージモードの使用有無、マージインデックス、マージ候補、マージ候補リスト、スキップ（ｓｋｉｐ）モードの使用有無、補間フィルタの種類、補間フィルタタップ、補間フィルタ係数、動きベクトルのサイズ、動きベクトルの表現精度、変換種類、変換サイズ、１次変換の使用有無情報、２次変換の使用有無情報、１次変換インデックス、２次変換インデックス、残予信号有無情報、符号化ブロックパターン（Ｃｏｄｅｄ  Ｂｌｏｃｋ  Ｐａｔｔｅｒｎ）、符号化ブロックフラグ（Ｃｏｄｅｄ  Ｂｌｏｃｋ  Ｆｌａｇ）、量子化パラメータ、残余量子化パラメータ、量子化行列、画面内ループフィルタの適用か否か、画面内ループフィルタ係数、画面内ループフィルタタップ、画面内ループフィルタの形状／形態、デブロッキングフィルタの適用か否か、デブロッキングフィルタ係数、デブロッキングフィルタタップ、デブロッキングフィルタの強度、デブロッキングフィルタの形状／形態、適応的サンプルオフセットの適用か否か、適応的サンプルオフセット値、適応的サンプルオフセットのカテゴリー、適応的サンプルオフセットの種類、適応的ループフィルタの適用か否か、適応的ループフィルタ係数、適応的ループフィルタタップ、適応的ループフィルタの形状／形態、二値化／逆二値化方法、コンテキストモデル決定方法、コンテキストモデルアップデート方法、レギュラーモードの実��有無、バイパスモードの実行有無、コンテキストビン、バイパスビン、重要係数、フラグ、最後の重要係数フラグ、係数グループ単位符号化フラグ、最後の重要係数位置、係数値が１よりも大きいかに対するフラグ、係数値が２よりも大きいかに対するフラグ、係数値が３よりも大きいかに対するフラグ、残りの係数値情報、符号（ｓｉｇｎ）情報、復元された輝度サンプル、復元された色差サンプル、残余輝度サンプル、残余色差サンプル、輝度変換係数、色差変換係数、輝度量子化レベル、色差量子化レベル、変換係数レベルスキャニング方法、復号化器側面動きベクトル探索領域の大きさ、復号化器側面動きベクトル探索領域の形態、復号化器側面動きベクトル探索回数、ＣＴＵのサイズ情報、最小ブロックのサイズ情報、最大ブロックのサイズ情報、最大ブロックの深さ情報、最小ブロックの深さ情報、画像ディスプレイ／出力順序、スライス識別情報、スライスタイプ、スライス分割情報、タイル識別情報、タイルタイプ、タイル分割情報、ピクチャタイプ、入力サンプルビット深度、復元サンプルビット深度、残余サンプルビット深度、変換係数ビット深度、量子化レベルビット深度、輝度信号に対する情報、色差信号に対する情報のうちの少なくとも一つの値又は組み合わせ形態が符号化パラメータに含まれ得る。
【０１０６】
ここで、フラグ或いはインデックスをシグナリング（ｓｉｇｎａｌｉｎｇ）するというのは、エンコーダでは該当フラグ或いはインデックスをエントロピー符号化（Ｅｎｔｒｏｐｙ  Ｅｎｃｏｄｉｎｇ）してビットストリーム（Ｂｉｔｓｔｒｅａｍ）に含むことを意味することができ、デコーダではビットストリームから当該フラグ或いはインデックスをエントロピー復号化（Ｅｎｔｒｏｐｙ  Ｄｅｃｏｄｉｎｇ）することを意味することができる。
【０１０７】
符号化装置１００がインター予測を用いた符号化を行う場合、符号化された現在画像は、後で処理される他の画像に対する参照画像として使用できる。よって、符号化装置１００は、符号化された現在画像をさらに復元又は復号化することができ、復元又は復号化された画像を参照画像として参照ピクチャバッファ１９０に保存することができる。
【０１０８】
量子化レベルは、逆量子化部１６０で逆量子化（ｄｅｑｕａｎｔｉｚａｔｉｏｎ）でき、逆変換部１７０で逆変換（ｉｎｖｅｒｓｅ  ｔｒａｎｓｆｏｒｍ）できる。逆量子化及び／又は逆変換された係数は、加算器１７５を介して予測ブロックと合わせられ得る。逆量子化及び／又は逆変換された係数と予測ブロックとを合わせることにより、復元ブロック（ｒｅｃｏｎｓｔｒｕｃｔｅｄ  ｂｌｏｃｋ）が生成できる。ここで、逆量子化及び／又は逆変換された係数は、逆量子化及び逆変換のうちの少なくとも一つが行われた係数を意味し、復元された残余ブロックを意味することができる。
【０１０９】
復元ブロックはフィルタ部１８０を経ることができる。フィルタ部１８０は、デブロッキングフィルタ（ｄｅｂｌｏｃｋｉｎｇ  ｆｉｌｔｅｒ）、サンプル適応的オフセット（Ｓａｍｐｌｅ  Ａｄａｐｔｉｖｅ  Ｏｆｆｓｅｔ；ＳＡＯ）、適応的ループフィルタ（Ａｄａｐｔｉｖｅ  Ｌｏｏｐ  Ｆｉｌｔｅｒ；ＡＬＦ）などの少なくとも一つを復元サンプル、復元ブロック又は復元画像に適用することができる。フィルタ部１８０はループ内フィルタ（ｉｎ−ｌｏｏｐ  ｆｉｌｔｅｒ）とも称される。
【０１１０】
デブロッキングフィルタは、ブロック間の境界から生じたブロック歪みを除去することができる。デブロッキングフィルタを行うか否かを判断するために、ブロックに含まれている幾つかの列又は行に含まれているサンプルに基づいて、現在ブロックにデブロッキングフィルタを適用するか否かを判断することができる。ブロックにデブロッキングフィルタを適用する場合、必要なデブロッキングフィルタリング強度に応じて、互いに異なるフィルタを適用することができる。
【０１１１】
サンプル適応的オフセットを用いて符号化エラーを補償するために、サンプル値に適正オフセット（ｏｆｆｓｅｔ）値を加えることができる。サンプル適応的オフセットは、デブロッキングを行った画像に対してサンプル単位で原本画像とのオフセットを補正することができる。画像に含まれているサンプルを一定数の領域に区分した後、オフセットを行うべき領域を決定し、該当領域にオフセットを適用する方法、又は各サンプルのエッジ情報を考慮してオフセットを適用する方法を使用することができる。
【０１１２】
適応的ループフィルタは、復元画像と原画像とを比較した値に基づいてフィルタリングを行うことができる。画像に含まれているサンプルを所定のグループに分けた後、当該グループに適用されるべきフィルタを決定してグループごとに差別的にフィルタリングを行うことができる。適応的ループフィルタを適用するか否かに関連した情報は、符号化ユニット（Ｃｏｄｉｎｇ  Ｕｎｉｔ、ＣＵ）別にシグナリングでき、それぞれのブロックに応じて、適用される適応的ループフィルタの形状及びフィルタ係数は異なり得る。
【０１１３】
フィルタ部１８０を経た復元ブロック又は復元画像は、参照ピクチャバッファ１９０に保存できる。フィルタ部１８０を経た復元ブロックは、参照画像の一部であり得る。いわば、参照画像は、フィルタ１８０を経た復元ブロックからなる復元画像であり得る。保存された参照画像は、以後、画面間予測或いは動き補償に使用できる。
【０１１４】
図２は本発明が適用される復号化装置の一実施形態による構成を示すブロック図である。
【０１１５】
復号化装置２００はデコーダ、ビデオ復号化装置又は画像復号化装置であり得る。
【０１１６】
図２を参照すると、復号化装置２００は、エントロピー復号化部２１０、逆量子化部２２０、逆変換部２３０、イントラ予測部２４０、動き補償部２５０、加算器２５５、フィルタ部２６０、及び参照ピクチャバッファ２７０を含むことができる。
【０１１７】
復号化装置２００は、符号化装置１００から出力されたビットストリームを受信することができる。復号化装置２００は、コンピュータ可読記録媒体に保存されたビットストリームを受信するか、或いは有線／無線伝送媒体を介してストリミングされるビットストリームを受信することができる。復号化装置２００は、ビットストリームに対してイントラモード又はインターモードで復号化を行うことができる。また、復号化装置２００は、復号化を介して復元された画像又は復号化された画像を生成することができ、復元された画像又は復号化された画像を出力することができる。
【０１１８】
復号化に使用される予測モードがイントラモードである場合、スイッチがイントラに転換できる。復号化に使用される予測モードがインターモードである場合、スイッチがインターに転換できる。
【０１１９】
復号化装置２００は、入力されたビットストリームを復号化し、復元された残余ブロック（ｒｅｃｏｎｓｔｒｕｃｔｅｄ  ｒｅｓｉｄｕａｌ  ｂｌｏｃｋ）を取得することができ、予測ブロックを生成することができる。復元された残余ブロック及び予測ブロックが取得されると、復号化装置２００は、復元された残余ブロックと予測ブロックとを加算することにより、復号化の対象となる復元ブロックを生成することができる。復号化対象ブロックは現在ブロックと称されることもある。
【０１２０】
エントロピー復号化部２１０は、ビットストリームに対する確率分布に基づくエントロピー復号化を行うことにより、シンボルを生成することができる。生成されたシンボルは、量子化レベル形態のシンボルを含むことができる。ここで、エントロピー復号化方法は、上述したエントロピー符号化方法の逆過程であり得る。
【０１２１】
エントロピー復号化部２１０は、変換係数レベル（量子化レベル）を復号化するために、変換係数のスキャニング方法によって１次元のベクトル形態係数を２次元のブロック形態に変更することができる。
【０１２２】
量子化レベルは、逆量子化部２２０で逆量子化でき、逆変換部２３０で逆変換できる。量子化レベルは、逆量子化及び／又は逆変換が行われた結果であって、復元された残余ブロックとして生成できる。このとき、逆量子化部２２０は、量子化レベルに量子化行列を適用することができる。
【０１２３】
イントラモードが使用される場合、イントラ予測部２４０は、復号化対象ブロック周辺の、既に復号化されたブロックのサンプル値を用いる空間的予測を現在ブロックに対して行うことにより、予測ブロックを生成することができる。
【０１２４】
インターモードが使用される場合、動き補償部２５０は、動きベクトル及び参照ピクチャバッファ２７０に保存されている参照画像を用いる動き補償を現在ブロックに対して行うことにより、予測ブロックを生成することができる。前記動き補償部２５０は、動きベクトルの値が整数値を持たない場合に参照画像内の一部の領域に対して補間フィルタを適用して予測ブロックを生成することができる。動き補償を行うために、符号化ユニットを基準に、該当符号化ユニットに含まれている予測ユニットの動き補償方法がスキップモード、マージモード、ＡＭＶＰモード、及び現在ピクチャ参照モードのうちのいずれの方法であるかを判断することができ、各モードに応じて動き補償を行うことができる。
【０１２５】
加算器２２５は、復元された残余ブロック及び予測ブロックを加算して復元ブロックを生成することができる。フィルタ部２６０は、デブロッキングフィルタ、サンプル適応的オフセット及び適応的ループフィルタのうちの少なくとも一つを復元ブロック又は復元画像に適用することができる。フィルタ部２６０は復元画像を出力することができる。復元ブロック又は復元画像は、参照ピクチャバッファ２７０に保存されてインター予測に使用できる。フィルタ部２６０を経た復元ブロックは、参照画像の一部であり得る。いわば、参照画像は、フィルタ部２６０を経た復元ブロックからなる復元画像であり得る。保存された参照画像は、以後、画面間予測或いは動き補償に使用できる。
【０１２６】
図３は画像を符号化及び復号化するときの画像の分割構造を示す概略図である。図３は一つのユニットが複数のサブユニットに分割される実施形態を概略的に示す。
【０１２７】
画像を効率よく分割するために、符号化及び復号化において、符号化ユニット（Ｃｏｄｉｎｇ  Ｕｎｉｔ；ＣＵ）が使用できる。画像符号化／復号化の基本単位として符号化ユニットが使用できる。また、画像符号化／復号化の際に、画面内予測モード及び画面間予測モードが区分される単位で符号化ユニットを使用することができる。符号化ユニットは、予測、変換、量子化、逆変換、逆量子化、又は変換係数の符号化／復号化の過程のために使用される基本単位であり得る。
【０１２８】
図３を参照すると、画像３００は、最大符号化ユニット（Ｌａｒｇｅｓｔ  Ｃｏｄｉｎｇ  Ｕｎｉｔ；ＬＣＵ）単位で順次分割され、ＬＣＵ単位で分割構造が決定される。ここで、ＬＣＵは、符号化ツリーユニット（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔ；ＣＴＵ）と同一の意味で使用できる。ユニットの分割は、ユニットに該当するブロックの分割を意味することができる。ブロック分割情報には、ユニットの深さ（ｄｅｐｔｈ）に関する情報が含まれ得る。深さ情報は、ユニットが分割される回数及び／又は程度を示すことができる。一つのユニットは、ツリー構造（ｔｒｅｅ  ｓｔｒｕｃｔｕｒｅ）に基づいて深さ情報をもって階層的に複数のサブユニットに分割できる。いわば、ユニット及び該ユニットの分割によって生成されたサブユニットは、ノード及び該ノードの子ノードにそれぞれ対応することができる。それぞれの分割されたサブユニットは、深さ情報を持つことができる。深さ情報は、ＣＵの大きさを示す情報であり、各ＣＵごとに保存できる。ユニット深さは、ユニットが分割された回数及び／又は程度を示すので、サブユニットの分割情報は、サブユニットの大きさに関する情報を含むこともできる。
【０１２９】
分割構造は、ＣＴＵ３１０内での符号化ユニット（Ｃｏｄｉｎｇ  Ｕｎｉｔ；ＣＵ）の分布を意味することができる。このような分布は、一つのＣＵを複数（２、４、８、１６などを含む２以上の正の整数）のＣＵに分割するか否かによって決定することができる。分割により生成されたＣＵの横幅と縦幅は、それぞれ分割前のＣＵの横幅の半分及び縦幅の半分であるか、分割された個数に応じて分割前のＣＵの横幅よりも小さいサイズ及び縦幅よりも小さいサイズを持つことができる。ＣＵは複数のＣＵに再帰的に分割できる。再帰的分割によって、分割されたＣＵの横幅及び縦幅のうちの少なくとも一つのサイズが分割前のＣＵの横幅及び縦幅のうちの少なくとも一つに比べて減少できる。ＣＵの分割は、予め定義された深さ又は予め定義されたサイズまで再帰的に行われ得る。例えば、ＣＴＵの深さは０であり、最小符号化ユニット（Ｓｍａｌｌｅｓｔ  Ｃｏｄｉｎｇ  Ｕｎｉｔ；ＳＣＵ）の深さは予め定義された最大深さであり得る。ここで、ＣＴＵは、上述したように、最大の符号化ユニットサイズを持つ符号化ユニットであり、ＳＣＵは、最小の符号化ユニットのサイズを持つ符号化ユニットであり得る。ＣＴＵ３１０から分割が始まり、分割によってＣＵの横幅及び／又は縦幅が減少するたびに、ＣＵの深さは１ずつ増加する。例えば、それぞれの深さ別に、分割されないＣＵは２Ｎ×２Ｎサイズを有することができる。また、分割されるＣＵの場合、２Ｎ×２ＮサイズのＣＵが、Ｎ×Ｎサイズを有する４つのＣＵに分割できる。Ｎのサイズは深さが１ずつ増加するたびに半分に減少することができる。
【０１３０】
また、ＣＵが分割されるか否かに対する情報は、ＣＵの分割情報を介して表現できる。分割情報は１ビットの情報であり得る。ＳＣＵを除いた全てのＣＵは、分割情報を含むことができる。例えば、分割情報の値が第１の値であれば、ＣＵが分割されなくてもよく、分割情報の値が第２の値であれば、ＣＵが分割されてもよい。
【０１３１】
図３を参照すると、深さ０のＣＴＵは６４×６４ブロックであり得る。０は最小深さであり得る。深さ３のＳＣＵは８×８ブロックであり得る。３は最大深さであり得る。３２×３２ブロック及び１６×１６ブロックのＣＵはそれぞれ深さ１及び深さ２で表現できる。
【０１３２】
例えば、一つの符号化ユニットが４つの符号化ユニットに分割される場合、分割された４つの符号化ユニットの横幅及び縦幅は、分割される前の符号化ユニットの横幅及び縦幅と比較してそれぞれの半分のサイズを持つことができる。一例として、３２×３２サイズの符号化ユニットが４つの符号化ユニットに分割される場合、分割された４つの符号化ユニットはそれぞれ１６×１６のサイズを持つことができる。一つの符号化ユニットが４つの符号化ユニットに分割される場合、符号化ユニットは四分木（ｑｕａｄ−ｔｒｅｅ）状に分割（四分木分割、ｑｕａｄ−ｔｒｅｅ  ｐａｒｔｉｔｉｏｎ）されたといえる。
【０１３３】
例えば、一つの符号化ユニットが２つの符号化ユニットに分割される場合、分割された２つの符号化ユニットの横幅或いは縦幅は、分割される前の符号化ユニットの横幅或いは縦幅と比較して半分のサイズを持つことができる。一例として、３２×３２サイズの符号化ユニットが２つの符号化ユニットに縦分割される場合、分割された２つの符号化ユニットは、それぞれ１６×３２のサイズを有することができる。一例として、８×３２サイズの符号化ユニットが２つの符号化ユニットに横分割される場合、分割された２つの符号化ユニットは、それぞれ８×１６のサイズを有することができる。一つの符号化ユニットが２つの符号化ユニットに分割される場合、符号化ユニットは二分木（ｂｉｎａｒｙ−ｔｒｅｅ）状に分割（二分木分割、ｂｉｎａｒｙ−ｔｒｅｅ  ｐａｒｔｉｔｉｏｎ）されたといえる。
【０１３４】
例えば、一つの符号化ユニットが３つの符号化ユニットに分割される場合、分割される前に符号化ユニットの横幅或いは縦幅を１：２：１の比率で分割することにより、３つの符号化ユニットに分割することができる。一例として、１６ｘ３２サイズの符号化ユニットが３つの符号化ユニットに横分割される場合、分割された３つの符号化ユニットは、上側からそれぞれ１６ｘ８、１６ｘ１６及び１６ｘ８のサイズを有することができる。一例として、３２ｘ３２サイズの符号化ユニットが３つの符号化ユニットに縦分割される場合、分割された３つの符号化ユニットは、左側からそれぞれ８ｘ３２、１６ｘ３２及び８ｘ３２のサイズを有することができる。一つの符号化ユニットが３つの符号化ユニットに分割される場合、符号化ユニットは、三分木（ｔｅｒｎａｒｙ−ｔｒｅｅ）状に分割（三分木分割、ｔｅｒｎａｒｙ−ｔｒｅｅ  ｐａｒｔｉｔｉｏｎ）されたといえる。
【０１３５】
図３のＣＴＵ３２０は、四分木分割、二分木分割及び三分木分割がすべて適用されたＣＴＵの一例である。
【０１３６】
前述したように、ＣＴＵを分割するために、四分木分割、二分木分割及び三分木分割のうちの少なくとも一つが適用できる。それぞれの分割は、所定の優先順位に基づいて適用できる。例えば、ＣＴＵに対して四分木分割が優先的に適用できる。それ以上四分木分割できない符号化ユニットは、四分木のリーフノードに該当することができる。四分木のリーフノードに該当する符号化ユニットは、二分木及び／又は三分木のルートノードになることができる。つまり、四分木のリーフノードに該当する符号化ユニットは、二分木分割されるか、三分木分割されるか、或いはそれ以上分割できない。このとき、四分木のリーフノードに該当する符号化ユニットを二分木分割又は三分木分割して生成された符号化ユニットに対しては、再び四分木分割が行われないようにすることにより、ブロックの分割及び／又は分割情報のシグナリングを効果的に行うことができる。
【０１３７】
四分木の各ノードに該当する符号化ユニットの分割は、クワッド分割情報を用いてシグナリングできる。第１の値（例えば、「１」）を有するクワッド分割情報は、該当符号化ユニットが四分木分割されることを指示することができる。第２の値（例えば、「０」）を有するクワッド分割情報は、当該符号化ユニットが四分木分割されないことを指示することができる。クワッド分割情報は、所定の長さ（例えば、１ビット）を有するフラグであり得る。
【０１３８】
二分木分割と三分木分割との間には、優先順位が存在しないこともある。つまり、四分木のリーフノードに該当する符号化ユニットは、二分木分割又は三分木分割できる。また、二分木分割又は三分木分割により生成された符号化ユニットは、再び二分木分割又は三分木分割されるか、或いはそれ以上分割できない。
【０１３９】
二分木分割と三分木分割との間に優先順位が存在しない場合の分割は、複合型ツリー分割（ｍｕｌｔｉ−ｔｙｐｅ  ｔｒｅｅ  ｐａｒｔｉｔｉｏｎ）と呼ぶことがある。すなわち、四分木のリーフノードに該当する符号化ユニットは、複合型ツリー（ｍｕｌｔｉ−ｔｙｐｅ  ｔｒｅｅ）のルートノードになることができる。複合型ツリーの各ノードに該当する符号化ユニットの分割は、複合型ツリーの分割か否かの情報、分割方向情報及び分割ツリー情報のうちの少なくとも一つを用いてシグナリングできる。前記複合型ツリーの各ノードに該当する符号化ユニットの分割のために、分割か否かの情報、分割方向情報及び分割ツリー情報が順次シグナリングされてもよい。
【０１４０】
第１の値（例えば、「１」）を有する複合型ツリーの分割か否かの情報は、当該符号化ユニットが複合型ツリー分割されることを指示することができる。第２の値（例えば、「０」）を有する複合型ツリーの分割か否かの情報は、該当符号化ユニットが複合型ツリー分割されないことを指示することができる。
【０１４１】
複合型ツリーの各ノードに該当する符号化ユニットが複合型ツリー分割される場合、当該符号化ユニットは、分割方向情報をさらに含むことができる。分割方向情報は、複合型ツリー分割の分割方向を指示することができる。第１の値（例えば、「１」）を有する分割方向情報は、当該符号化ユニットが縦方向に分割されることを指示することができる。第２の値（例えば、「０」）を有する分割方向情報は、当該符号化ユニットが横方向に分割されることを指示することができる。
【０１４２】
複合型ツリーの各ノードに該当する符号化ユニットが複合型ツリー分割される場合、当該符号化ユニットは、分割ツリー情報をさらに含むことができる。分割ツリー情報は、複合型ツリー分割のために使用されたツリーを指示することができる。第１の値（例えば、「１」）を有する分割ツリー情報は、当該符号化ユニットが二分木分割されることを指示することができる。第２の値（例えば、「０」）を有する分割ツリー情報は、当該符号化ユニットが三分木分割されることを指示することができる。
【０１４３】
分割か否かの情報、分割ツリー情報及び分割方向情報は、それぞれ所定の長さ（例えば、１ビット）を有するフラグであり得る。
【０１４４】
クワッド分割情報、複合型ツリーの分割か否かの情報、分割方向情報及び分割ツリー情報のうちの少なくとも一つは、エントロピー符号化／復号化できる。前記情報のエントロピー符号化／復号化のために、現在符号化ユニットに隣接する周辺符号化ユニットの情報が利用できる。例えば、左側符号化ユニット及び／又は上側符号化ユニットの分割形態（分割か否か、分割ツリー及び／又は分割方向）は、現在符号化ユニットの分割形態に類似する確率が高い。よって、周辺符号化ユニットの情報に基づいて、現在符号化ユニットの情報のエントロピー符号化／復号化のためのコンテキスト情報を誘導することができる。このとき、周辺符号化ユニットの情報には、当該符号化ユニットのクワッド分割情報、複合型ツリーの分割か否かの情報、分割方向情報及び分割ツリー情報のうちの少なくとも一つが含まれ得る。
【０１４５】
他の実施形態として、二分木分割と三分木分割のうち、二分木分割が優先的に実行できる。すなち、二分木分割が先に適用され、二分木のリーフノードに該当する符号化ユニットを三分木のルートノードとして設定することもできる。この場合、三分割木のノードに該当する符号化ユニットに対しては、四分木分割及び二分木分割が行われないことがある。
【０１４６】
四分木分割、二分木分割及び／又は三分木分割によってそれ以上分割されない符号化ユニットは、符号化、予測及び／又は変換の単位になることができる。すなわち、予測及び／又は変換のために符号化ユニットがそれ以上分割されないことがある。したがって、符号化ユニットを予測ユニット及び／又は変換ユニットに分割するための分割構造、分割情報などがビットストリームに存在しないことがある。
【０１４７】
ただし、分割の単位となる符号化ユニットのサイズが最大変換ブロックのサイズよりも大きい場合、該当符号化ユニットは、最大変換ブロックのサイズと同じか或いは小さいサイズになるまで再帰的に分割できる。例えば、符号化ユニットのサイズが６４ｘ６４であり、最大変換ブロックのサイズが３２ｘ３２である場合、前記符号化ユニットは、変換のために、４つの３２ｘ３２ブロックに分割できる。例えば、符号化ユニットのサイズが３２ｘ６４であり、最大変換ブロックのサイズが３２ｘ３２である場合、前記符号化ユニットは、変換のために、２つの３２ｘ３２ブロックに分割できる。この場合には、変換のための符号化ユニットの分割か否かは、別にシグナリングされず、前記符号化ユニットの横又は縦と最大変換ブロックの横又は縦との比較によって決定できる。例えば、符号化ユニットの横が最大変換ブロックの横よりも大きい場合、符号化ユニットは、縦に２等分できる。また、符号化ユニットの縦が最大変換ブロックの縦よりも大きい場合、符号化ユニットは横方向に２等分できる。
【０１４８】
符号化ユニットの最大及び／又は最小サイズに関する情報、変換ブロックの最大及び／又は最小サイズに関する情報は、符号化ユニットの上位レベルでシグナリング又は決定できる。前記上位レベルは、例えば、シーケンスレベル、ピクチャレベル、スライスレベルなどであってもよい。例えば、符号化ユニットの最小サイズは４ｘ４と決定されてもよい。例えば、変換ブロックの最大サイズは６４ｘ６４と決定されてもよい。例えば、変換ブロックの最小サイズは４ｘ４と決定されてもよい。
【０１４９】
四分木のリーフノードに該当する符号化ユニットの最小サイズ（四分木の最小サイズ）に関する情報、及び／又は複合型ツリーのルートノードからリーフノードに至る最大深さ（複合型ツリーの最大深さ）に関する情報は、符号化ユニットの上位レベルでシグナリング又は決定できる。前記上位レベルは、例えば、シーケンスレベル、ピクチャレベル、スライスレベルなどであってもよい。前記四分木の最小サイズに関する情報、及び／又は前記複合型ツリーの最大深さに関する情報は、画面内スライスと画面間スライスのそれぞれに対してシグナリング又は決定できる。
【０１５０】
ＣＴＵのサイズと変換ブロックの最大サイズに関する差分情報は、符号化ユニットの上位レベルでシグナリング又は決定できる。前記上位レベルは、例えば、シーケンスレベル、ピクチャレベル、スライスレベルなどであってもよい。二分木の各ノードに該当する符号化ユニットの最大サイズ（二分木の最大サイズ）に関する情報は、符号化ツリーユニットの大きさと前記差分情報に基づいて決定できる。三分木の各ノードに該当する符号化ユニットの最大サイズ（三分木の最大サイズ）は、スライスのタイプによって異なる値を持つことができる。例えば、画面内スライスである場合には、三分木の最大サイズは３２ｘ３２であってもよい。また、例えば、画面間スライスである場合には、三分木の最大サイズは１２８ｘ１２８であってもよい。例えば、二分木の各ノードに該当する符号化ユニットの最小サイズ（二分木の最小サイズ）及び／又は三分木の各ノードに該当する符号化ユニットの最小サイズ（三分木の最小サイズ）は、符号化ブロックの最小サイズとして設定できる。
【０１５１】
別の例として、二分木の最大サイズ及び／又は三分木の最大サイズは、スライスレベルでシグナリング又は決定できる。また、二分木の最小サイズ及び／又は三分木の最小サイズは、スライスレベルでシグナリング又は決定できる。
【０１５２】
前述した様々なブロックのサイズ及び深さ情報に基づいて、クワッド分割情報、複合型ツリーの分割か否かの情報、分割ツリー情報及び／又は分割方向情報などがビットストリームに存在しても存在しなくてもよい。
【０１５３】
例えば、符号化ユニットのサイズが四分木の最小サイズよりも大きくなければ、前記符号化ユニットはクワッド分割情報を含まず、当該クワッド分割情報は第２の値に推論できる。
【０１５４】
例えば、複合型ツリーのノードに該当する符号化ユニットのサイズ（横及び縦）が二分木の最大サイズ（横及び縦）、及び／又は三分木の最大サイズ（横及び縦）よりも大きい場合、前記符号化ユニットは、二分木分割及び／又は三分木分割されないことがある。それにより、前記複合型ツリーの分割か否かの情報は、シグナリングされず、第２の値に推論できる。
【０１５５】
又は、複合型ツリーのノードに該当する符号化ユニットのサイズ（横及び縦）が二分木の最小サイズ（横及び縦）と同じであるか、或いは符号化ユニットのサイズ（横及び縦）が三分木の最小サイズ（横及び縦）の二倍と同じである場合、前記符号化ユニットは、二分木分割及び／又は三分木分割されないことがある。それにより、前記複合型ツリーの分割か否かの情報は、シグナリングされず、第２の値に推論できる。なぜなら、前記符号化ユニットを二分木分割及び／又は三分木分割する場合は、二分木の最小サイズ及び／又は三分木の最小サイズよりも小さい符号化ユニットが生成されるためである。
【０１５６】
又は、複合型ツリーのノードに該当する符号化ユニットの複合型ツリー内の深さが複合型ツリーの最大深さと同じである場合、前記符号化ユニットは、二分木分割及び／又は三分木分割されないことがある。それにより、前記複合型ツリーの分割か否かの情報は、シグナリングされず、第２の値に推論できる。
【０１５７】
又は、複合型ツリーのノードに該当する符号化ユニットに対して垂直方向の二分木分割、水平方向の二分木分割、垂直方向の三分木分割及び水平方向の三分木分割のうちの少なくとも一つが可能である場合にのみ、前記複合型ツリーの分割か否かの情報をシグナリングすることができる。そうでない場合、前記符号化ユニットは、二分木分割及び／又は三分木分割されないことがある。それにより、前記複合型ツリーの分割か否かの情報は、シグナリングされず、第２の値に推論できる。
【０１５８】
又は、複合型ツリーのノードに該当する符号化ユニットに対して垂直方向の二分木分割と水平方向の二分木分割がすべて可能であるか、或いは垂直方向の三分木分割と水平方向の三分木分割がすべて可能である場合にのみ、前記分割方向の情報をシグナリングすることができる。そうでない場合、前記分割方向情報は、シグナリングされず、分割が可能な方向を指示する値に推論できる。
【０１５９】
又は、複合型ツリーのノードに該当する符号化ユニットに対して垂直方向の二分木分割と垂直方向の三分木分割がすべて可能であるか、或いは水平方向の二分木分割と水平方向の三分木分割がすべて可能である場合にのみ、前記分割ツリー情報をシグナリングすることができる。そうでない場合、前記分割ツリー情報は、シグナリングされず、分割が可能なツリーを指示する値に推論できる。
【０１６０】
図４は画面間予測過程の実施形態を説明するための図である。
【０１６１】
図４に示された四角形は画像を示すことができる。また、図４における矢印は、予測方向を示すことができる。各画像は、符号化タイプによってＩピクチャ（Ｉｎｔｒａ  Ｐｉｃｔｕｒｅ）、Ｐピクチャ（Ｐｒｅｄｉｃｔｉｖｅ  Ｐｉｃｔｕｒｅ）、Ｂピクチャ（Ｂｉ−ｐｒｅｄｉｃｔｉｖｅ  Ｐｉｃｔｕｒｅ）などに分類できる。
【０１６２】
Ｉピクチャは、画面間予測なしに、画面内予測を介して符号化／復号化できる。Ｐピクチャは、一方向（例えば、順方向又は逆方向）に存在する参照画像のみを利用する画面間予測を介して符号化／復号化できる。Ｂピクチャは、双方向（例えば、順方向及び逆方向）に存在する参照画像を利用する画面間予測を介して符号化／復号化できる。また、Ｂピクチャの場合、双方向に存在する参照画像を利用する画面間予測、又は順方向及び逆方向のうちの一方向に存在する参照画像を利用する画面間予測を介して符号化／復号化できる。ここで、双方向は順方向及び逆方向であり得る。ここで、画面間予測が使用される場合、符号化器では画面間予測或いは動き補償を行うことができ、復号化器ではそれに対応する動き補償を行うことができる。
【０１６３】
以下、実施形態による画面間予測について具体的に説明される。
【０１６４】
画面間予測或いは動き補償は、参照画像及び動き情報を用いて行われ得る。
【０１６５】
現在ブロックに対する動き情報は、符号化装置１００及び復号化装置２００のそれぞれによって画面間予測中に導出できる。動き情報は、復元された周辺ブロックの動き情報、コロケーテッドブロック（ｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋ；ｃｏｌ  ｂｌｏｃｋ）の動き情報及び／又はコロケーテッドブロックに隣接するブロックを用いて導出できる。コロケーテッドブロックは、既に復元されたコロケーテッドピクチャ（ｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ；ｃｏｌ  ｐｉｃｔｕｒｅ）内で現在ブロックの空間的位置に対応するブロックであり得る。ここで、コロケーテッドピクチャは参照画像リストに含まれている少なくとも一つの参照画像のうちの一つのピクチャであり得る。
【０１６６】
動き情報の導出方式は、現在ブロックの予測モードによって異なり得る。例えば、画面間予測のために適用される予測モードとして、ＡＭＶＰモード、マージモード、スキップモード、現在ピクチャ参照モードなどがあり得る。ここで、マージモードを動き併合モード（ｍｏｔｉｏｎ  ｍｅｒｇｅ  ｍｏｄｅ）と呼ぶこともある。
【０１６７】
例えば、予測モードとしてＡＭＶＰが適用される場合、復元された周辺ブロックの動きベクトル、コロケーテッドブロックの動きベクトル、コロケーテッドブロックに隣接するブロックの動きベクトル、及び（０，０）動きベクトルのうちの少なくとも一つを動きベクトル候補として決定して、動きベクトル候補リスト（ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｃａｎｄｉｄａｔｅ  ｌｉｓｔ）を生成することができる。生成された動きベクトル候補リストを用いて動きベクトル候補を誘導することができる。誘導された動きベクトル候補に基づいて、現在ブロックの動き情報を決定することができる。ここで、コロケーテッドブロックの動きベクトル又はコロケーテッドブロックに隣接するブロックの動きベクトルを時間動きベクトル候補（ｔｅｍｐｏｒａｌ  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｃａｎｄｉｄａｔｅ）と呼ぶことがあり、復元された周辺ブロックの動きベクトルを空間動きベクトル候補（ｓｐａｔｉａｌ  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｃａｎｄｉｄａｔｅ  ）と呼ぶことがある。
【０１６８】
符号化装置１００は、現在ブロックの動きベクトルと動きベクトル候補との動きベクトル差分（ＭＶＤ：Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｄｉｆｆｅｒｅｎｃｅ）を計算することができ、ＭＶＤをエントロピー符号化することができる。また、符号化装置１００は、動きベクトル候補インデックスをエントロピー符号化してビットストリームを生成することができる。動きベクトル候補インデックスは、動きベクトル候補リストに含まれている動きベクトル候補の中から選択された最適な動きベクトル候補を指示することができる。復号化装置２００は、動きベクトル候補インデックスをビットストリームからエントロピー復号化し、エントロピー復号化された動きベクトル候補インデックスを用いて、動きベクトル候補リストに含まれている動きベクトル候補の中から復号化対象ブロックの動きベクトル候補を選択することができる。また、復号化装置２００は、エントロピー復号化されたＭＶＤと動きベクトル候補との和を用いて復号化対象ブロックの動きベクトルを導出することができる。
【０１６９】
ビットストリームは、参照画像を指示する参照画像インデックスなどを含むことができる。参照画像インデックスは、エントロピー符号化されてビットストリームを介して符号化装置１００から復号化装置２００へシグナリングできる。復号化装置２００は、誘導された動きベクトルと参照画像インデックス情報に基づいて復号化対象ブロックに対する予測ブロックを生成することができる。
【０１７０】
動き情報の導出方式の他の例として、マージモードがある。マージモードとは、複数のブロックに対する動きの併合を意味することができる。マージモードは、現在ブロックの動き情報を周辺ブロックの動き情報から誘導するモードを意味することができる。マージモードが適用される場合、復元された周辺ブロックの動き情報及び／又はコロケーテッドブロックの動き情報を用いて、マージ候補リスト（ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ  ｌｉｓｔ）を生成することができる。動き情報は、１）動きベクトル、２）参照画像インデックス、及び３）画面間予測インジケータのうちの少なくとも一つを含むことができる。予測インジケータは、一方向（Ｌ０予測、Ｌ１予測）又は双方向であり得る。
【０１７１】
マージ候補リストは、動き情報が保存されたリストを示すことができる。マージ候補リストに保存される動き情報は、現在ブロックに隣接する周辺ブロックの動き情報（空間マージ候補（ｓｐａｔｉａｌ  ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ））、参照画像における、現在ブロックに対応する（ｃｏｌｌｏｃａｔｅｄ）ブロックの動き情報（時間マージ候補（ｔｅｍｐｏｒａｌ  ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ））、既にマージ候補リストに存在する動き情報の組み合わせによって生成された新しい動き情報及びゼロマージ候補のうちの少なくとも一つであり得る。
【０１７２】
符号化装置１００は、マージフラグ（ｍｅｒｇｅ  ｆｌａｇ）及びマージインデックス（ｍｅｒｇｅ  ｉｎｄｅｘ）のうちの少なくとも一つをエントロピー符号化してビットストリームを生成した後、復号化装置２００へシグナリングすることができる。マージフラグは、ブロック別にマージモードを行うか否かを示す情報であり、マージインデックスは、現在ブロックに隣接する周辺ブロックのうちのどのブロックとマージを行うかについての情報であり得る。例えば、現在ブロックの周辺ブロックは、現在ブロックの左側隣接ブロック、上側隣接ブロック及び時間的隣接ブロックのうちの少なくとも一つを含むことができる。
【０１７３】
スキップモードは、周辺ブロックの動き情報をそのまま現在ブロックに適用するモードであり得る。スキップモードが使用される場合、符号化装置１００は、どのブロックの動き情報を現在ブロックの動き情報として用いるかについての情報をエントロピー符号化してビットストリームを介して復号化装置２００へシグナリングすることができる。このとき、符号化装置１００は、動きベクトル差分情報、符号化ブロックフラグ及び変換係数レベル（量子化レベル）のうちの少なくとも一つに関する構文要素を復号化装置２００へシグナリングしなくてもよい。
【０１７４】
現在ピクチャ参照モードは、現在ブロックが属する現在ピクチャ内の既に復元された領域を用いた予測モードを意味することができる。この際、前記既に復元された領域を特定するために、ベクトルが定義できる。現在ブロックが現在ピクチャ参照モードで符号化されるか否かは、現在ブロックの参照画像インデックスを用いて符号化できる。現在ブロックが現在ピクチャ参照モードで符号化されたブロックであるか否かを示すフラグ或いはインデックスがシグナリングされてもよく、現在ブロックの参照画像インデックスを用いて類推されてもよい。現在ブロックが現在ピクチャ参照モードで符号化された場合、現在ピクチャは、現在ブロックのための参照画像リスト内で固定位置又は任意の位置に追加できる。前記固定位置は、例えば、参照画像インデックスが０である位置又は最後の位置であり得る。現在ピクチャが参照画像リスト内で任意の位置に追加される場合、前記任意の位置を示す別途の参照画像インデックスがシグナリングされてもよい。
【０１７５】
上述した内容に基づいて、本発明に係る画像符号化／復号化方法について詳細に説明する。
【０１７６】
図５は本発明の一実施形態による画像符号化方法を示すフローチャートであり、図６は本発明の一実施形態による画像復号化方法を示すフローチャートである。
【０１７７】
図５を参照すると、符号化装置は、動きベクトル候補を誘導し（Ｓ５０１）、誘導された動きベクトル候補に基づいて、動きベクトル候補リストを生成することができる（Ｓ５０２）。動きベクトル候補リストが生成されると、生成された動きベクトル候補リストを用いて動きベクトルを決定し（Ｓ５０３）、動きベクトルを用いて動き補償を行うことができる（Ｓ５０４）。その後、符号化装置は、動き補償に関する情報をエントロピー符号化することができる（Ｓ５０５）。
【０１７８】
図６を参照すると、復号化装置は、符号化装置から受信した動き補償に関する情報をエントロピー復号化し（Ｓ６０１）、動きベクトル候補を誘導することができる（Ｓ６０２）。そして、復号化装置は、誘導された動きベクトル候補に基づいて動きベクトル候補リストを生成し（Ｓ６０３）、生成された動きベクトル候補リストを用いて動きベクトルを決定することができる（Ｓ６０４）。その後、復号化装置は、動きベクトルを用いて動き補償を行うことができる（Ｓ６０５）。
【０１７９】
図７は本発明の他の実施形態による画像符号化方法を示すフローチャートであり、図８は本発明の他の実施形態による画像復号化方法を示すフローチャートである。
【０１８０】
図７を参照すると、符号化装置は、マージ候補を誘導し（Ｓ７０１）、誘導されたマージ候補に基づいてマージ候補リストを生成することができる。マージ候補リストが生成されると、生成されたマージ候補リストを用いて動き情報を決定し（Ｓ７０２）、決定された動き情報を用いて現在ロックの動き補償を行うことができる（Ｓ７０３）。その後、符号化装置は、動き補償に関する情報をエントロピー符号化することができる（Ｓ７０４）。
【０１８１】
図８を参照すると、復号化装置は、符号化装置から受信した動き補償に関する情報をエントロピー復号化し（Ｓ８０１）、マージ候補を誘導し（Ｓ８０２）、誘導されたマージ候補に基づいてマージ候補リストを生成することができる。マージ候補リストが生成されると、生成されたマージ候補リストを用いて現在ブロックの動き情報を決定することができる（Ｓ８０３）。その後、復号化装置は、動き情報を用いて動き補償を行うことができる（Ｓ８０４）。
【０１８２】
ここで、図５及び図６は図４で説明したＡＭＶＰモードが適用された一例であり、図７及び図８は図４で説明したマージモードが適用された一例であり得る。
【０１８３】
以下、図５及び図６で示された各ステップを説明した後、図７及び図８で示された各ステップについて説明する。但し、動き補償実行ステップ（Ｓ５０４、Ｓ６０５、Ｓ７０３、Ｓ８０４）及びエントロピー符号化／復号化ステップ（Ｓ５０５、Ｓ６０１、Ｓ７０４、Ｓ８０１）についての説明は統合して述べることにする。
【０１８４】
以下、図５及び図６に示された各ステップについて詳細に説明する。
【０１８５】
まず、動きベクトルを誘導するステップについて具体的に説明する（Ｓ５０１、Ｓ６０２）。
【０１８６】
現在ブロックに対する動きベクトル候補は、空間動きベクトル候補又は時間動きベクトル候補のうちの少なくとも一つを含むことができる。
【０１８７】
現在ブロックの空間動きベクトルは、現在ブロック周辺の復元ブロックから誘導できる。一例として、現在ブロック周辺の復元ブロックの動きベクトルが現在ブロックに対する空間動きベクトル候補として決定できる。
【０１８８】
図９は現在ブロックの空間動きベクトル候補を誘導する例を説明するための図である。
【０１８９】
図９を参照すると、現在ブロックの空間動きベクトル候補は、現在ブロックＸに隣接する周辺ブロックから誘導できる。ここで、現在ブロックに隣接する周辺ブロックは、現在ブロックの上側に隣接するブロックＢ１、現在ブロックの左側に隣接するブロックＡ１、現在ブロックの右上隅に隣接するブロックＢ０、現在ブロックの左上隅に隣接するブロックＢ２、及び現在ブロックの左下隅に隣接するブロックＡ０のうちの少なくとも一つを含むことができる。一方、現在ブロックに隣接する周辺ブロックは、正方形（ｓｑｕａｒｅ）又は非正方形（ｎｏｎ−ｓｑｕａｒｅ）の形状であり得る。現在ブロックに隣接する周辺ブロックに動きベクトルが存在する場合、周辺ブロックの動きベクトルが現在ブロックの空間動きベクトル候補として決定することができる。周辺ブロックの動きベクトルが存在するか否か、又は周辺ブロックの動きベクトルが現在ブロックの空間動きベクトル候補として利用可能であるか否かは、周辺ブロックが存在するか否か又は周辺ブロックが画面間予測を介して符号化されたか否かなどに基づいて判断できる。この際、周辺ブロックの動きベクトルが存在するか否か、又は周辺ブロックの動きベクトルが現在ブロックの空間動きベクトル候補として利用可能であるか否かは、所定の優先順位に基づいて決定できる。一例として、図９に示された例において、Ａ０、Ａ１、Ｂ０、Ｂ１及びＢ２位置のブロックの順に動きベクトルの可用性が判断できる。
【０１９０】
現在ブロックの参照画像と動きベクトルを有する周辺ブロックの参照画像とが異なる場合、周辺ブロックの動きベクトルをスケーリング（ｓｃａｌｉｎｇ）したものを、現在ブロックの空間動きベクトル候補として決定することができる。ここで、スケーリングは、現在画像と現在ブロックが参照する参照画像との距離、及び現在画像と周辺ブロックが参照する参照画像との距離のうちの少なくとも一つに基づいて行われ得る。一例として、現在画像と現在ブロックが参照する参照画像との距離と、現在の画像と周辺ブロックが参照する参照画像との距離との比率に応じて周辺ブロックの動きベクトルをスケーリングすることにより、現在ブロックの空間動きベクトル候補が誘導できる。
【０１９１】
一方、現在ブロックの参照画像インデックスと動きベクトルを有する周辺ブロックの参照画像インデックスとが異なる場合、周辺ブロックの動きベクトルをスケーリングしたものを、現在ブロックの空間動きベクトル候補として決定することができる。この場合にも、スケーリングは、現在画像と現在ブロックが参照する参照画像との距離、及び現在画像と周辺ブロックが参照する参照画像との距離のうちの少なくとも一つに基づいて行われ得る。
【０１９２】
スケーリングに関連して、周辺ブロックの動きベクトルを、予め定義された値を有する参照画像インデックスによって指示される参照画像に基づいてスケーリングして空間動きベクトル候補として決定することができる。このとき、予め定義された値は、０を含む正の整数であり得る。一例として、現在画像と予め定義された値を有する参照画像インデックスによって指示される現在ブロックの参照画像との距離と、現在画像と予め定義された値を有する周辺ブロックの参照画像との距離との比率に応じて周辺ブロックの動きベクトルをスケーリングすることにより、現在ブロックの空間動きベクトル候補が誘導できる。
【０１９３】
また、現在ブロックの符号化パラメータのうちの少なくとも一つに基づいて、現在ブロックの空間動きベクトル候補を誘導することができる。
【０１９４】
現在ブロックの時間動きベクトル候補は、現在画像の対応位置画像（Ｃｏ−ｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ）に含まれている復元ブロックから誘導できる。ここで、対応位置画像は、現在画像の以前に符号化／復号化が完了した画像であって、現在画像とは異なる時間的順序を持つ画像であり得る。
【０１９５】
図１０は現在ブロックの時間動きベクトル候補を誘導する例を説明するための図である。
【０１９６】
図１０を参照すると、現在画像の対応位置画像（ｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ）において、現在ブロックＸと空間的に同じ位置に対応するブロックの外部位置を含むブロック、又は現在ブロックＸと空間的に同じ位置に対応するブロックの内部位置を含むブロックから現在ブロックの時間動きベクトル候補を誘導することができる。ここで、時間動きベクトル候補は、対応位置ブロックの動きベクトルを意味することができる。一例として、現在ブロックＸの時間動きベクトル候補は、現在ブロックと空間的に同じ位置に対応するブロックＣの左下隅に隣接するブロックＨ、又はブロックＣの中心点を含むブロックＣ３から誘導できる。現在ブロックの時間動きベクトル候補を誘導するために使用されるブロックＨ又はブロックＣ３などを「対応位置ブロック（ｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋ）」と呼ぶことができる。
【０１９７】
また、符号化パラメータのうちの少なくとも一つに基づいて、時間動きベクトル候補、対応位置画像、対応位置ブロック、予測リスト活用フラグ及び参照画像インデックスのうちの少なくとも一つを誘導することもできる。
【０１９８】
現在ブロックが含まれている現在画像と現在ブロックの参照画像との距離が、対応位置ブロックの含まれている対応位置画像と対応位置ブロックの参照画像との距離とは異なる場合には、現在ブロックの時間動きベクトル候補は、対応位置ブロックの動きベクトルをスケーリングすることにより取得できる。ここで、スケーリングは、現在画像と現在ブロックが参照する参照画像との距離、及び対応位置画像と対応位置ブロックが参照する参照画像との距離のうちの少なくとも一つに基づいて行われ得る。一例として、現在画像と現在ブロックが参照する参照画像との距離と、対応位置画像と対応位置ブロックが参照する参照画像との距離との比率に応じて対応位置ブロックの動きベクトルをスケーリングすることにより、現在ブロックの時間動きベクトル候補が誘導できる。
【０１９９】
次に、誘導された動きベクトル候補に基づいて、動きベクトル候補リストを生成するステップについて説明する（Ｓ５０２、Ｓ５０３）。
【０２００】
動きベクトル候補リストを生成するステップは、動きベクトル候補を動きベクトル候補リストに対して追加或いは除去するステップ、及び組み合わせられた動きベクトル候補を動きベクトル候補リストに追加するステップを含むことができる。
【０２０１】
誘導された動きベクトル候補を動きベクトル候補リストに対して追加或いは除去するステップから考察すると、符号化装置及び復号化装置は、動きベクトル候補の誘導順に、誘導された動きベクトル候補を動きベクトル候補リストに追加することができる。
【０２０２】
動きベクトル候補リストｍｖｐＬｉｓｔＬＸは、参照画像リストＬ０、Ｌ１、Ｌ２及びＬ３に対応する動きベクトル候補リストを意味するものと仮定する。例えば、参照画像リストＬ０に対応する動きベクトル候補リストは、ｍｖｐＬｉｓｔＬ０と呼ぶことができる。
【０２０３】
空間動きベクトル候補及び時間動きベクトル候補以外の所定の値を有する動きベクトルが動きベクトル候補リストに追加されることも可能である。一例として、動きベクトルリストに含まれている動きベクトル候補の数が最大動きベクトル候補の数よりも小さい場合、値が０である動きベクトルを動きベクトル候補リストに追加することができる。
【０２０４】
次に、組み合わせられた動きベクトル候補を動きベクトル候補リストに追加するステップについて説明する。
【０２０５】
動きベクトル候補リストに含まれている動きベクトル候補の数が最大動きベクトル候補の数よりも小さい場合、動きベクトル候補リストに含まれている動きベクトル候補のうちの少なくとも一つを用いて、組み合わせられた動きベクトル候補を動きベクトル候補リストに追加することができる。一例として、動きベクトル候補リストに含まれている空間動きベクトル候補、時間動きベクトル候補及びゼロ動きベクトル候補のうちの少なくとも１つを用いて、組み合わせられた動きベクトル候補を生成し、この組み合わせられた動きベクトル候補を動きベクトル候補リストに含むことができる。
【０２０６】
又は、符号化パラメータのうちの少なくとも一つに基づいて、組み合わせられた動きベクトル候補を生成するか、或いは符号化パラメータのうちの少なくとも一つに基づいて、組み合わせられた動きベクトル候補を動きベクトル候補リストに追加することもできる。
【０２０７】
次に、動きベクトル候補リストから予測された動きベクトルを決定するステップについて説明する（Ｓ５０３、Ｓ６０４）。
【０２０８】
動きベクトル候補リストに含まれている動きベクトル候補のうち、動きベクトル候補インデックスが指し示す動きベクトル候補を、現在ブロックに対する予測された動きベクトルとして決定することができる。
【０２０９】
符号化装置は、動きベクトルと予測された動きベクトルとの差分を計算して、動きベクトル差分値を算出することができる。復号化装置は、予測された動きベクトルと動きベクトル差分値を合わせて動きベクトルを算出することができる。
【０２１０】
ここで、動きベクトル候補リストに含まれている動きベクトル候補、予測された動きベクトル、又は予測された動きベクトルと動きベクトル差分値を合わせて算出された動きベクトルのうちのいずれかに、動き情報補正（ｍｏｔｉｏｎ  ｉｎｆｏｒｍａｔｉｏｎ  ｒｅｆｉｎｅｍｅｎｔ）を適用することができる。動き情報補正についての具体的な説明は後述する。
【０２１１】
一方、図５及び図６の動き補償を行うステップ（Ｓ５０４、Ｓ６０５）、動き補償に関する情報をエントロピー符号化／復号化するステップ（Ｓ５０５、Ｓ６０１）は、図７及び図８の動き補償実行ステップ（Ｓ７０３、Ｓ８０４）及びエントロピー符号化／復号化ステップ（Ｓ７０４、Ｓ８０１）と統合して後述することにする。
【０２１２】
以下、図７及び図８に示された各ステップについて詳細に説明する。
【０２１３】
まず、マージ候補を誘導するステップについて具体的に説明する（Ｓ７０１、８０２）。
【０２１４】
現在ブロックに対するマージ候補は、空間マージ候補、時間マージ候補又は追加マージ候補のうちの少なくとも一つを含むことができる。ここで、空間マージ候補を誘導するというのは、空間マージ候補を誘導してマージ候補リストに追加することを意味することができる。
【０２１５】
図９を参照すると、現在ブロックの空間マージ候補は、現在ブロックＸに隣接する周辺ブロックから誘導できる。現在ブロックに隣接する周辺ブロックは、現在ブロックの上側に隣接するブロックＢ１、現在ブロックの左側に隣接するブロックＡ１、現在ブロックの右上隅に隣接するブロックＢ０、現在ブロックの左上隅に隣接するブロック（Ｂ２）、及び現在ブロックの左下隅に隣接ブロック（Ａ０）のうちの少なくとも一つを含むことができる。
【０２１６】
現在ブロックの空間マージ候補を誘導するために、現在ブロックに隣接する周辺ブロックが現在ブロックの空間マージ候補の誘導に使用できるかどうかを判断することができる。この際、現在ブロックに隣接する周辺ブロックが現在ブロックの空間マージ候補の誘導に使用できるかどうかは、所定の優先順位に基づいて決定できる。一例として、図９に示された例において、Ａ１、Ｂ１、Ｂ０、Ａ０及びＢ２位置のブロックの順に空間マージ候補誘導可用性が判断できる。前記可用性判断順序に基づいて決定された空間マージ候補を、現在ブロックのマージ候補リストに順次追加することができる。
【０２１７】
図１１は空間マージ候補がマージ候補リストに追加される例を説明するための図である。
【０２１８】
図１１を参照すると、Ａ１、Ｂ０、Ａ０、Ｂ２位置の周辺ブロックから４つの空間マージ候補が誘導された場合には、マージ候補リストに誘導された空間マージ候補が順次追加できる。
【０２１９】
また、符号化パラメータのうちの少なくとも一つに基づいて、前記空間マージ候補を誘導することができる。
【０２２０】
ここで、空間マージ候補の動き情報は、Ｌ０及びＬ１の動き情報だけでなく、Ｌ２、Ｌ３などの３つ以上の動き情報を持つことができる。ここで、参照画像リストは、Ｌ０、Ｌ１、Ｌ２、Ｌ３などの少なくとも一つを含むことができる。
【０２２１】
次に、現在ブロックの時間マージ候補を誘導する方法について説明する。
【０２２２】
現在ブロックの時間マージ候補は、現在画像の対応位置画像（Ｃｏ−ｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ）に含まれている復元ブロックから誘導できる。ここで、対応位置画像は、現在画像の前に符号化／復号化が完了した画像であって、現在画像とは異なる時間的順序を持つ画像であり得る。
【０２２３】
時間マージ候補を誘導するというのは、時間マージ候補を誘導してマージ候補リストに追加することを意味することができる。
【０２２４】
図１０を参照すると、現在画像の対応位置画像（ｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ）において、現在ブロックＸと空間的に同じ位置に対応するブロックの外部位置を含むブロック、又は現在ブロックＸと空間的に同じ位置に対応するブロックの内部位置を含むブロックから、現在ブロックの時間マージ候補を誘導することができる。ここで、時間マージ候補は、対応位置ブロックの動き情報を意味することができる。一例として、現在ブロックＸの時間マージ候補は、現在ブロックと空間的に同じ位置に対応するブロックＣの左下隅に隣接するブロックＨ、又はブロックＣの中心点を含むブロックＣ３から誘導できる。現在ブロックの時間マージ候補を誘導するために使用されるブロックＨ又はブロックＣ３などを、「対応位置ブロック（ｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋ）」と呼ぶことができる。
【０２２５】
ブロックＣの外部位置を含むブロックＨから現在ブロックの時間マージ候補を誘導することができる場合、ブロックＨが現在ブロックの対応位置ブロックとして設定できる。この場合、現在ブロックの時間マージ候補は、ブロックＨの動き情報に基づいて誘導できる。これに対し、ブロックＨから現在ブロックの時間マージ候補を誘導することができない場合には、ブロックＣの内部位置を含むブロックＣ３が、現在ブロックの対応位置ブロックとして設定できる。この場合、現在ブロックの時間マージ候補は、ブロックＣ３の動き情報に基づいて誘導できる。もし、ブロックＨ及びブロックＣ３から現在ブロックの時間マージを誘導することができない場合には（例えば、ブロックＨ及びブロックＣ３の両方が画面内符号化された場合）、現在ブロックに対する時間マージ候補は誘導されないか、或いはブロックＨ及びブロックＣ３とは異なる位置のブロックから誘導され得るだろう。
【０２２６】
他の例として、現在ブロックの時間マージ候補は、対応位置画像内の複数のブロックから誘導されてもよい。一例として、ブロックＨ及びブロックＣ３から現在ブロックに対する複数の時間マージ候補を誘導することもできる。
【０２２７】
図１２は時間マージ候補がマージ候補リストに追加される例を説明するための図である。
【０２２８】
図１２を参照すると、Ｈ１位置の対応位置ブロックから１つの時間マージ候補が誘導された場合、マージ候補リストに誘導された時間マージ候補を追加することができる。
【０２２９】
現在ブロックが含まれている現在画像と現在ブロックの参照画像との距離が、対応位置ブロックの含まれている対応位置画像と対応位置ブロックの参照画像との距離とは異なる場合には、現在ブロックの時間マージ候補の動きベクトルは、対応位置ブロックの動きベクトルをスケーリングすることにより取得できる。ここで、スケーリングは、現在画像と現在ブロックが参照する参照画像との距離、及び対応位置画像と対応位置ブロックが参照する参照画像との距離のうちの少なくとも一つに基づいて行われ得る。一例として、現在画像と現在ブロックが参照する参照画像との距離と、対応位置画像と対応位置ブロックが参照する参照画像との距離との比率に応じて対応位置ブロックの動きベクトルをスケーリングすることにより、現在ブロックの時間マージ候補の動きベクトルが誘導できる。
【０２３０】
また、現在ブロック、周辺ブロック又は対応位置ブロックの符号化パラメータのうちの少なくとも一つに基づいて、時間マージ候補、対応位置画像、対応位置ブロック、予測リスト活用フラグ、及び参照画像インデックスのうちの少なくとも一つを誘導することもできる。
【０２３１】
空間マージ候補及び時間マージ候補のうちの少なくとも一つを誘導した後、誘導されたマージ候補順にマージ候補リストに追加してマージ候補リストを生成することができる。
【０２３２】
次に、現在ブロックの追加マージ候補を誘導する方法について説明する。
【０２３３】
追加マージ候補は、変更された空間マージ候補（ｍｏｄｉｆｉｅｄ  ｓｐａｔｉａｌ  ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ）、変更された時間マージ候補（ｍｏｄｉｆｉｅｄ  ｔｅｍｐｏｒａｌ  ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ）、組み合わせられたマージ候補（ｃｏｍｂｉｎｅｄ  ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ）、及び所定の動き情報値を持つマージ候補のうちの少なくとも一つを意味することができる。ここで、追加マージ候補を誘導することは、追加マージ候補を誘導してマージ候補リストに追加することを意味することができる。
【０２３４】
変更された空間マージ候補は、誘導された空間マージ候補の動き情報のうちの少なくとも一つを変更したマージ候補を意味することができる。
【０２３５】
変更された時間マージ候補は、誘導された時間マージ候補の動き情報のうちの少なくとも一つを変更したマージ候補を意味することができる。
【０２３６】
組み合わせられたマージ候補は、マージ候補リストに存在する空間マージ候補、時間マージ候補、変更された空間マージ候補、変更された時間マージ候補、組み合わせられたマージ候補、及び所定の動き情報値を持つマージ候補の動き情報のうちの少なくとも一つの動き情報を組み合わせて誘導されるマージ候補を意味することができる。
【０２３７】
又は、組み合わせられたマージ候補は、マージ候補リストに存在しないが、空間マージ候補及び時間マージ候補のうちの少なくとも一つを誘導することができるブロックから誘導された空間マージ候補及び誘導された時間マージ候補と、これらに基づいて生成された、変更された空間マージ候補、変更された時間マージ候補、組み合わせられたマージ候補、及び所定の動き情報値を持つマージ候補のうちの少なくとも一つの動き情報を組み合わせて誘導されるマージ候補を意味することができる。
【０２３８】
又は、復号化器でビットストリームからエントロピー復号化した動き情報を用いて組み合わせられたマージ候補を誘導することができる。このとき、符号化器で組み合わせられたマージ候補の誘導に使用された動き情報は、ビットストリームにエントロピー符号化できる。
【０２３９】
組み合わせられたマージ候補は、組み合わせ双予測マージ候補を意味することができる。組み合わせ双予測マージ候補は、双予測（ｂｉ−ｐｒｅｄｉｃｔｉｏｎ）を用いるマージ候補であって、Ｌ０動き情報とＬ１動き情報を持つマージ候補を意味することができる。
【０２４０】
所定の動き情報値を持つマージ候補は、動きベクトルが（０，０）であるゼロマージ候補を意味することができる。一方、所定の動き情報値を持つマージ候補は、符号化装置及び復号化装置で同じ値を使用するように既に設定されてもよい。
【０２４１】
現在ブロック、周辺ブロック、又は対応位置ブロックの符号化パラメータのうちの少なくとも一つに基づいて、変更された空間マージ候補、変更された時間マージ候補、組み合わせられたマージ候補、所定の動き情報値を持つマージ候補のうちの少なくとも一つを誘導又は生成することができる。また、変更された空間マージ候補、変更された時間マージ候補、組み合わせられたマージ候補、及び所定の動き情報値を持つマージ候補のうちの少なくとも一つを、現在ブロック、周辺ブロック、又は対応位置ブロックの符号化パラメータのうちの少なくとも一つに基づいてマージ候補リストに追加することができる。
【０２４２】
一方、マージ候補リストのサイズは、現在ブロック、周辺ブロック、又は対応位置ブロックの符号化パラメータに基づいて決定でき、符号化パラメータに基づいてサイズが変更できる。
【０２４３】
次に、生成されたマージ候補リストを用いて、現在ブロックの動き情報を決定するステップについて具体的に説明する（Ｓ７０２、Ｓ８０３）。
【０２４４】
符号化器は、動き推定（ｍｏｔｉｏｎ  ｅｓｔｉｍａｔｉｏｎ）を介してマージ候補リスト内のマージ候補のうち、動き補償に用いられるマージ候補を決定し、決定されたマージ候補を指示するマージ候補インデックス（ｍｅｒｇｅ＿ｉｄｘ）をビットストリームに符号化することができる。
【０２４５】
一方、符号化器は、予測ブロックを生成するために、上述したマージ候補インデックスに基づいてマージ候補リストからマージ候補を選択して、現在ブロックの動き情報を決定することができる。ここで、決定された動き情報に基づいて動き補償（ｍｏｔｉｏｎ  ｃｏｍｐｅｎｓａｔｉｏｎ）を行い、現在ブロックの予測ブロックを生成することができる。
【０２４６】
復号化器は、ビットストリーム内のマージ候補インデックスを復号化して、マージ候補インデックスが指示するマージ候補リスト内のマージ候補を決定することができる。決定されたマージ候補は、現在ブロックの動き情報として決定することができる。決定された動き情報は、現在ブロックの動き補償に使用される。この際、動き補償はインター予測（ｉｎｔｅｒ  ｐｒｅｄｉｃｔｉｏｎ）の意味と同一であり得る。
【０２４７】
一方、マージ候補リストに含まれているマージ候補又はマージ候補インデックスに基づいてマージ候補リストから決定された動き情報のうちのいずれか一つに動き情報補正を適用することができる。動き情報補正についての具体的な説明は後述することにする。
【０２４８】
次に、動きベクトル又は動き情報を用いて、動き補償を行うステップについて説明する（Ｓ５０４、Ｓ６０５、Ｓ７０３、Ｓ８０４）。
【０２４９】
符号化装置及び復号化装置は、予測された動きベクトルと動きベクトル差分値を用いて動きベクトルを算出することができる。動きベクトルが算出されると、算出された動きベクトルを用いて、画面間予測又は動き補償を行うことができる（Ｓ５０４、Ｓ６０５）。
【０２５０】
一方、符号化装置及び復号化装置は、決定された動き情報を用いて画面間予測又は動き補償を行うことができる（Ｓ７０３、Ｓ８０４）。ここで、現在ブロックは、決定されたマージ候補の動き情報を持つことができる。
【０２５１】
現在ブロックは、予測方向に基づいて、最小１個から最大Ｎ個の動きベクトルを持つことができる。動きベクトルを用いて、最小１個から最大Ｎ個の予測ブロックを生成して、現在ブロックの最終予測ブロックを誘導することができる。
【０２５２】
一例として、現在ブロックが１つの動きベクトルを持つ場合、前記動きベクトル（又は動き情報）を用いて生成された予測ブロックを、現在ブロックの最終予測ブロックとして決定することができる。
【０２５３】
これに対し、現在ブロックが複数の動きベクトル（又は動き情報）を持つ場合、複数の動きベクトル（又は動き情報）を用いて複数の予測ブロックを生成し、複数の予測ブロックの重み付け和に基づいて、現在ブロックの最終予測ブロックを決定することができる。複数の動きベクトル（又は動き情報）によって指示される複数の予測ブロックそれぞれを含む参照画像は、互いに異なる参照画像リストに含まれてもよく、同じ参照画像リストに含まれてもよい。
【０２５４】
一例として、空間動きベクトル候補、時間動きベクトル候補、所定の値を持つ動きベクトル、又は組み合わせられた動きベクトル候補のうちの少なくとも一つに基づいて、複数の予測ブロックを生成し、複数の予測ブロックの重み付け和に基づいて、現在ブロックの最終予測ブロックを決定することができる。
【０２５５】
他の例として、既に設定された動きベクトル候補インデックスによって指示される動きベクトル候補に基づいて、複数の予測ブロックを生成し、複数の予測ブロックの重み付け和に基づいて、現在ブロックの最終予測ブロックを決定することができる。また、既に設定された動きベクトル候補インデックスの範囲に存在する動きベクトル候補に基づいて、複数の予測ブロックを生成し、複数の予測ブロックの重み付け和に基づいて、現在ブロックの最終予測ブロックを決定することができる。
【０２５６】
各予測ブロックに適用される重みは、１／Ｎ（ここで、Ｎは生成された予測ブロックの数）であって、均等な値を持つことができる。一例として、２つの予測ブロックが生成された場合には、各予測ブロックに適用される重みは１／２であり、３つの予測ブロックが生成された場合には、各予測ブロックに適用される重みは１／３であり、４つの予測ブロックが生成された場合には、各予測ブロックに適用される重みは１／４であり得る。又は、各予測ブロックごとに異なる重みを与え、現在ブロックの最終予測ブロックを決定することもできる。
【０２５７】
重みは、予測ブロック別の固定値を持たなければならないのではなく、予測ブロック別の可変値を持つこともできる。このとき、各予測ブロックに適用される重みは、互いに同一であってもよく、互いに異なってもよい。一例として、２つの予測ブロックが生成された場合、２つの予測ブロックに適用される重みは、（１／２、１／２）であるだけでなく、（１／３、２／３）、（１／４、３／４）、（２／５、３／５）、（３／８、５／８）などのようにブロック別に可変的な値であり得る。一方、重みは正の実数の値又は負の実数の値であり得る。一例として、（−１／２、３／２）、（−１／３、４／３）、（−１／４、５／４）などのように負の実数の値を含むことができる。
【０２５８】
一方、可変重みを適用するために、現在ブロックのための一つ又はそれ以上の重み情報がビットストリームを介してシグナリングされてもよい。重み情報は、予測ブロック別にそれぞれシグナリングされてもよく、参照画像別にシグナリングされてもよい。複数の予測ブロックが一つの重み情報を共有することも可能である。
【０２５９】
符号化装置及び復号化装置は、予測ブロックリスト活用フラグに基づいて、予測された動きベクトル（又は動き情報）を用いるか否かを判断することができる。一例として、各参照画像リスト別に予測ブロックリスト活用フラグが第１の値「１」を指示する場合には、符号化装置及び復号化装置は、画面間予測又は動き補償を行うために、現在ブロックの予測された動きベクトルを用いることができるということを示し、第２の値「０」を指示する場合には、符号化装置及び復号化装置は、現在ブロックの予測された動きベクトルを用いて画面間予測又は動き補償を行わないことを示すことができる。一方、予測ブロックリスト活用フラグの第１の値は０、第２の値は１にそれぞれ設定されてもよい。下記数式３乃至数式５は、それぞれ、現在ブロックの画面間予測インジケータがＰＲＥＤ＿ＢＩ、ＰＲＥＤ＿ＴＲＩ及びＰＲＥＤ＿ＱＵＡＤであり、各参照画像リストに対する予測方向が一方向である場合には、現在ブロックの最終予測ブロックを生成する例を示す
【０２６０】
【数１】
2020522960.tif 000003
【０２６１】
【数２】
2020522960.tif 000004
【０２６２】
【数３】
2020522960.tif 000005
【０２６３】
前記数式１乃至３中、Ｐ＿ＢＩ、Ｐ＿ＴＲＩ、Ｐ＿ＱＵＡＤは、現在ブロックの最終予測ブロックを示し、ＬＸ（Ｘ＝０、１、２、３）は、参照画像リストを意味することができる。ＷＦ＿ＬＸは、ＬＸを用いて生成された予測ブロックの重み値を示し、ＯＦＦＳＥＴ＿ＬＸは、ＬＸを用いて生成された予測ブロックに対するオフセット値を示すことができる。Ｐ＿ＬＸは、現在ブロックのＬＸに対する動きベクトル（又は動き情報）を用いて生成した予測ブロックを意味する。ＲＦは、丸め係数（Ｒｏｕｎｄｉｎｇ  ｆａｃｔｏｒ）を意味し、０、正数又は負数に設定できる。ＬＸ参照画像リストは、ロング・ターム（ｌｏｎｇ−ｔｅｒｍ）参照画像、デブロッキングフィルタ（ｄｅｂｌｏｃｋｉｎｇ  ｆｉｌｔｅｒ）を行っていない参照画像、サンプル適応的オフセット（ｓａｍｐｌｅ  ａｄａｐｔｉｖｅ  ｏｆｆｓｅｔ）を行っていない参照画像、適応的ループフィルタ（ａｄａｐｔｉｖｅ  ｌｏｏｐ  ｆｉｌｔｅｒ）を行っていない参照画像、デブロッキングフィルタ及び適応的オフセットのみを行った参照画像、デブロッキングフィルタ及び適応的ループフィルタのみを行った参照画像、サンプル適応的オフセット及び適応的ループフィルタのみを行っている参照画像、デブロッキングフィルタ、サンプル適応的オフセット及び適応的ループフィルタを行った参照画像のうちの少なくとも一つを含むことができる。この場合、ＬＸ参照画像リストは、Ｌ２参照画像リスト及びＬ３参照画像リストのうちの少なくとも一つであり得る。
【０２６４】
所定の参照画像リストに対する予測方向が複数方向である場合にも、予測ブロックの重み付け和に基づいて、現在ブロックに対する最終予測ブロックを取得することができる。このとき、同じ参照画像リストから誘導された予測ブロックに適用される重みは、同じ値を持ってもよく、異なる値を持ってもよい。
【０２６５】
複数の予測ブロックに対する重みＷＦ＿ＬＸ及びオフセットＯＦＦＳＥＴ＿ＬＸのうちの少なくとも一つは、エントロピー符号化／復号化される符号化パラメータであり得る。他の例として、重み及びオフセットは、現在ブロックの周辺の符号化／復号化された周辺ブロックから誘導されてもよい。ここで、現在ブロック周辺の周辺ブロックは、現在ブロックの空間動きベクトル候補を誘導するために用いられるブロック、又は現在ブロックの時間動きベクトル候補を誘導するために用いられるブロックのうちの少なくとも一つを含むことができる。
【０２６６】
他の例として、重み及びオフセットは、現在画像と各参照画像のディスプレイ順序（ＰＯＣ）に基づいて決定されてもよい。この場合、現在画像と参照画像との距離が遠いほど、重み又はオフセットを小さい値に設定し、現在画像と参照画像との距離が近いほど重み又はオフセットを大きい値に設定することができる。一例として、現在画像とＬ０参照画像とのＰＯＣの差が２である場合、Ｌ０参照画像を参照して生成された予測ブロックに適用される重み値を１／３に設定するのに対し、現在画像とＬ０参照画像のＰＯＣの差が１である場合、Ｌ０参照画像を参照して生成された予測ブロックに適用される重み値を２／３に設定することができる。上記に例示したように、重み又はオフセット値は、現在画像と参照画像間のディスプレイ順序の差と反比例の関係を持つことができる。他の例として、重み又はオフセット値は、現在画像と参照画像間のディスプレイ順序の差と比例の関係を持つようにすることも可能である。
【０２６７】
他の例として、符号化パラメータのうちの少なくとも一つに基づいて、重み又はオフセットのうちの少なくとも一つをエントロピー符号化／復号化することもできる。また、符号化パラメータのうちの少なくとも一つに基づいて、予測ブロックの重み付け和を計算することもできる。
【０２６８】
複数の予測ブロックの重み付け和は、予測ブロック内の一部の領域でのみ適用できる。ここで、一部の領域は、予測ブロック内の境界に該当する領域であり得る。上述の如く、一部の領域にのみ重み付け和を適用するために、予測ブロックのサブブロック（ｓｕｂ−ｂｌｏｃｋ）単位で重み付け和を行うことができる。
【０２６９】
領域情報が指示するブロックサイズのブロック内部でより小さなブロックサイズのサブブロックでは、同じ予測ブロック又は同じ最終予測ブロックを用いて画面間予測又は動き補償を行うことができる。
【０２７０】
また、領域情報が指示するブロック深さのブロック内部でより深いブロック深さのサブブロックでは、同じ予測ブロック又は同じ最終予測ブロックを用いて画面間予測又は動き補償を行うことができる。
【０２７１】
また、動きベクトル予測を用いて予測ブロックの重み付け和を計算する際、動きベクトル候補リスト内に存在する少なくとも一つの動きベクトル候補を用いて重み付け和を計算し、現在ブロックの最終予測ブロックとして使用することができる。
【０２７２】
例えば、空間動きベクトル候補のみで予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２７３】
例えば、空間動きベクトル候補と時間動きベクトル候補で予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２７４】
例えば、組み合わせられた動きベクトル候補のみで予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２７５】
例えば、特定の動きベクトル候補インデックスを持つ動きベクトル候補のみで予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２７６】
例えば、特定の動きベクトル候補インデックスの範囲内に存在する動きベクトル候補のみで予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２７７】
また、マージモードを用いて予測ブロックの重み付け和を計算する際、マージ候補リスト内に存在する少なくとも一つのマージ候補を用いて重み付け和を計算し、現在ブロックの最終予測ブロックとして使用することができる。
【０２７８】
例えば、空間マージ候補のみで予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２７９】
例えば、空間マージ候補と時間マージ候補で予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２８０】
例えば、組み合わせられたマージ候補のみで予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２８１】
例えば、特定のマージ候補インデックスを持つマージ候補のみで予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２８２】
例えば、特定のマージ候補インデックスの範囲内に存在するマージ候補のみで予測ブロックを生成し、予測ブロックの重み付け和を計算し、計算された重み付け和を現在ブロックの最終予測ブロックとして使用することができる。
【０２８３】
符号化器及び復号化器では、現在ブロックで持つ動きベクトル／情報を用いて動き補償を行うことができる。このとき、動き補償の結果である最終予測ブロックは、少なくとも一つの予測ブロックを用いて生成できる。ここで、現在ブロックは、現在符号化ブロック（ｃｏｄｉｎｇ  ｂｌｏｃｋ）、現在予測ブロック（ｐｒｅｄｉｃｔｉｏｎ  ｂｌｏｃｋ）のうちの少なくとも一つを意味することができる。
【０２８４】
現在ブロック内の境界に該当する領域にオーバーラップブロック動き補償（Ｏｖｅｒｌａｐｐｅｄ  Ｂｌｏｃｋ  Ｍｏｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ）を行って最終予測ブロックを生成することができる。
【０２８５】
現在ブロック内の境界に該当する領域は、現在ブロックの周辺ブロックの境界に隣接する現在ブロック内の領域であり得る。ここで、現在ブロック内の境界に該当する領域は、現在ブロックで上側境界領域、左側境界領域、下側境界領域、右側境界領域、右上隅領域、右下隅領域、左上隅領域及び左下隅領域のうちの少なくとも一つを含むことができる。また、現在ブロック内の境界に該当する領域は、現在ブロックの予測ブロック内で一部分に該当する領域であり得る。
【０２８６】
前記オーバーラップブロック動き補償は、現在ブロック内の境界に該当する予測ブロック領域と現在ブロックに隣接するように符号化／復号化されたブロックの動き情報を用いて生成された予測ブロックの重み付け和を計算して動き補償を行うことを意味することができる。
【０２８７】
重み付け和は、現在ブロックを多数のサブブロック（ｓｕｂ−ｂｌｏｃｋ）に分割した後、サブブロック単位で行われ得る。すなわち、サブブロック単位で現在ブロックに隣接するように符号化／復号化されたブロックの動き情報を用いて動き補償を行うことができる。この際、サブブロックは下位ブロックを意味することもできる。
【０２８８】
また、重み付け和の計算には、現在ブロックの動き情報を用いてサブブロック単位で生成された第１予測ブロック、及び現在ブロックに空間的に隣接する周辺サブブロックの動き情報を用いて生成された第２予測ブロックが使用できる。このとき、動き情報を用いるというのは、動き情報を誘導するという意味であり得る。そして、第１予測ブロックは、現在ブロック内の符号化／復号化対象サブブロックの動き情報を用いて生成された予測ブロックを意味することができる。また、ここで、第２予測ブロックは、現在ブロック内で符号化／復号化対象サブブロックに空間的に隣接する周辺サブブロックの動き情報を用いて生成された予測ブロックを意味することもできる。
【０２８９】
第１予測ブロックと第２予測ブロックとの重み付け和を用いて最終予測ブロックが生成できる。すなわち、オーバーラップブロック動き補償は、現在ブロックの動き情報の以外に、他のブロックの動き情報を一緒に用いて最終予測ブロックを生成することができる。
【０２９０】
また、向上した動きベクトル予測（Ａｄｖａｎｃｅｄ  Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｐｒｅｄｉｃｔｉｏｎ；ＡＭＶＰ）、マージモード（ｍｅｒｇｅ  ｍｏｄｅ）、アフィン動き補償モード、復号化器動きベクトル誘導モード、適応的動きベクトル解像度モード、地域照明補償モード、及び双方向光学流れモードのうちの少なくとも一つに該当する場合に、現在予測ブロックをサブブロックに分割した後、各サブブロック別にオーバーラップブロック動き補償を行うことができる。
【０２９１】
ここで、マージモードの場合、向上した時間動きベクトル予測（ＡＴＭＶＰ；Ａｄｖａｎｃｅｄ  Ｔｅｍｐｏｒａｌ  Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｐｒｅｄｉｃｔｏｒ）候補及び空間−時間動きベクトル予測（ＳＴＭＶＰ；Ｓｐａｔｉａｌ−Ｔｅｍｐｏｒａｌ  Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｐｒｅｄｉｃｔｏｒ）候補のうちの少なくとも一つにオーバーラップブロック動き補償を行うことができる。
【０２９２】
次に、動き補償に関する情報をエントロピー符号化／復号化する過程について詳細に説明する（Ｓ５０５、Ｓ６０１、Ｓ７０４、Ｓ８０１）。
【０２９３】
符号化装置は、動き補償に関する情報を、ビットストリームを介してエントロピー符号化し、復号化装置は、ビットストリームに含まれている動き補償に関する情報をエントロピー復号化することができる。ここで、エントロピー符号化／復号化される動き補償に関する情報は、画面間予測インジケータ（Ｉｎｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  Ｉｎｄｉｃａｔｏｒ）（ｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃ）、参照画像インデックス（ｒｅｆ＿ｉｄｘ＿ｌ０、ｒｅｆ＿ｉｄｘ＿ｌ１、ｒｅｆ＿ｉｄｘ＿ｌ２、ｒｅｆ＿ｉｄｘ＿ｌ３）、動きベクトル候補インデックス（ｍｖｐ＿ｌ０＿ｉｄｘ、ｍｖｐ＿ｌ１＿ｉｄｘ、ｍｖｐ＿ｌ２＿ｉｄｘ  、ｍｖｐ＿ｌ３＿ｉｄｘ）、動きベクトル差分（ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｄｉｆｆｅｒｅｎｃｅ）、スキップモードの使用有無情報（ｃｕ＿ｓｋｉｐ＿ｆｌａｇ）、マージモードの使用有無情報（ｍｅｒｇｅ＿ｆｌａｇ）、マージインデックス情報（ｍｅｒｇｅ＿ｉｎｄｅｘ）、重み値（ｗｆ＿ｌ０、ｗｆ＿ｌ１、ｗｆ＿ｌ２、ｗｆ＿ｌ３）及びオフセット値（ｏｆｆｓｅｔ＿ｌ０、ｏｆｆｓｅｔ＿ｌ１、ｏｆｆｓｅｔ＿ｌ２、ｏｆｆｓｅｔ＿ｌ３）のうちの少なくとも一つを含むことができる。
【０２９４】
画面間予測インジケータは、現在ブロックの画面間予測で符号化／復号化される場合、現在ブロックの画面間予測方向又は予測方向の個数のうちの少なくとも一つを意味することができる。一例として、画面間予測インジケータは、一方向予測を指示するか、或いは双方向予測、３方向予測又は４方向予測などの複数の方向予測を指示することができる。画面間予測インジケータは、現在ブロックが予測ブロックを生成するときに使用する参照画像の数を意味することができる。又は、一つの参照画像が複数の方向予測のために用いられてもよい。この場合、Ｍ個の参照画像を用いてＮ（Ｎ＞Ｍ）個の方向予測を行うことができる。画面間予測インジケータは、現在ブロックに対する画面間予測又は動き補償を行うときに使用される予測ブロックの数を意味することもできる。
【０２９５】
参照画像インジケータは、現在ブロックの予測方向の数に応じて、一方向（ＰＲＥＤ＿ＬＸ）、双予測或いは双方向（ＰＲＥＤ＿ＢＩ）、３方向（ＰＲＥＤ＿ＴＲＩ）、４方向（ＰＲＥＤ＿ＱＵＡＤ）又はそれ以上の方向性を指示することができる。
【０２９６】
予測リスト活用フラグ（ｐｒｅｄｉｃｔｉｏｎ  ｌｉｓｔ  ｕｔｉｌｉｚａｔｉｏｎ  ｆｌａｇ）は、当該参照画像リストを用いて予測ブロックを生成するかどうかを示す。
【０２９７】
一例として、予測リスト活用フラグが第１の値「１」を指示する場合には、該当参照画像リストを用いて予測ブロックを生成することができることを示し、第２の値「０」を指示する場合には、該当参照画像リストを用いて予測ブロックを生成しないことを示すことができる。ここで、予測リスト活用フラグの第１の値は０、第２の値は１に設定されてもよい。
【０２９８】
すなわち、予測リスト活用フラグが第１の値を指示するとき、該当参照画像リストに相応する動き情報を用いて現在ブロックの予測ブロックを生成することができる。
【０２９９】
参照画像インデックスは、各参照画像リストから、現在ブロックが参照する参照画像を特定することができる。各参照画像リストに対して１つ以上の参照画像インデックスがエントロピー符号化／復号化できる。現在ブロックは、１つ以上の参照画像インデックスを用いて動き補償を行うことができる。
【０３００】
動きベクトル候補インデックスは、参照画像リスト別又は参照画像インデックス別に生成された動きベクトル候補リストから、現在ブロックに対する動きベクトル候補を示す。動きベクトル候補リスト別に少なくとも一つの動きベクトル候補インデックスがエントロピー符号化／復号化できる。現在ブロックは、少なくとも一つの動きベクトル候補インデックスを用いて動き補償を行うことができる。
【０３０１】
動きベクトル差分は、動きベクトルと予測された動きベクトルとの差分値を示す。現在ブロックに対して参照画像リスト又は参照画像インデックス別に生成された動きベクトル候補リストに対して１つ以上の動きベクトル差分がエントロピー符号化／復号化できる。現在ブロックは、１つ以上の動きベクトル差分を用いて動き補償を行うことができる。
【０３０２】
スキップモードの使用有無情報（ｃｕ＿ｓｋｉｐ＿ｆｌａｇ）は、第１の値である１を持つ場合にはスキップモードの使用を指示し、第２の値である０を持つ場合にはスキップモードの使用を指示しない。スキップモードの使用有無情報に基づいて、スキップモードを用いて現在ブロックの動き補償を行うことができる。
【０３０３】
マージモードの使用有無情報（ｍｅｒｇｅ＿ｆｌａｇ）は、第１の値である１を持つ場合にはマージモードの使用を指示し、第２の値である０を持つ場合にはマージモードの使用を指示しないことができる。マージモードを使用するか否かの情報に基づいて、マージモードを用いて現在ブロックの動き補償を行うことができる。
【０３０４】
マージインデックス情報（ｍｅｒｇｅ＿ｉｎｄｅｘ）は、マージ候補リスト（ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ  ｌｉｓｔ）内のマージ候補（ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ）を指示する情報を意味することができる。
【０３０５】
また、マージインデックス情報は、マージインデックス（ｍｅｒｇｅ  ｉｎｄｅｘ）に対する情報を意味することができる。
【０３０６】
また、マージインデックス情報は、空間的／時間的に現在ブロックと隣接するように復元されたブロックのうち、マージ候補を誘導したブロックを指示することができる。
【０３０７】
また、マージインデックス情報は、マージ候補が持つ動き情報のうちの少なくとも一つを指示することができる。例えば、マージインデックス情報は、第１の値である０を持つ場合にはマージ候補リスト内の一番目のマージ候補を指示することができ、第２の値である１を持つ場合にはマージ候補リスト内の二番目のマージ候補を指示することができ、第３の値である２を持つ場合にはマージ候補リスト内の三番目のマージ候補を指示することができる。同様に、第４乃至第Ｎの値を持つ場合、マージ候補リスト内の順序に基づいて、値に該当するマージ候補を指示することができる。ここで、Ｎは、０を含む正の整数を意味することができる。
【０３０８】
マージモードインデックス情報に基づいて、マージモードを用いて現在ブロックの動き補償を行うことができる。
【０３０９】
現在ブロックに対する動き補償の際に２つ以上の予測ブロックが生成された場合には、各予測ブロックに対する重み付け和（ｗｅｉｇｈｔｅｄ  ｓｕｍ）を介して、現在ブロックに対する最終予測ブロックが生成できる。重み付け和演算の際に、各予測ブロックに対して重み及びオフセットのうちの少なくとも一つが適用できる。重み（重み付け係数（ｗｅｉｇｈｔｉｎｇ  ｆａｃｔｏｒ））又はオフセット（ｏｆｆｓｅｔ）などのように重み付け和演算に用いられる重み付け和因子は、参照画像リスト、参照画像、動きベクトル候補インデックス、動きベクトル差分、動きベクトル、スキップモードの使用有無情報、マージモードの使用有無情報、マージインデックス情報のうちの少なくとも一つの個数だけ、又は少なくとも一つの個数以上だけエントロピー符号化／復号化できる。また、各予測ブロックの重み付け和因子は、画面間予測インジケータに基づいてエントロピー符号化／復号化できる。ここで、重み付け和因子は、重み及びオフセットのうちの少なくとも一つを含むことができる。
【０３１０】
動き補償に関する情報は、ブロック単位でエントロピー符号化／復号化されてもよく、上位レベルでエントロピー符号化／復号化されてもよい。一例として、動き補償に関する情報は、ＣＴＵ、ＣＵ又はＰＵなどのブロック単位でエントロピー符号化／復号化されるか、或いは、ビデオパラメータセット（Ｖｉｄｅｏ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、シーケンスパラメータセット（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、ピクチャパラメータセット（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、適応パラメータセット（Ａｄａｐｔａｔｉｏｎ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）又はスライスヘッダ（Ｓｌｉｃｅ  Ｈｅａｄｅｒ）などの上位レベルでエントロピー符号化／復号化できる。
【０３１１】
動き補償に関する情報は、動き補償に関する情報と動き補償に関する情報予測値との差分値を示す動き補償に関する情報差分値に基づいて、エントロピー符号化／復号化されてもよい。
【０３１２】
現在ブロックの動き補償に関する情報をエントロピー符号化／復号化する代わりに、現在ブロックの周辺に符号化／復号化されたブロックの動き補償に関する情報を、現在ブロックの動き補償に関する情報として用いることも可能である。
【０３１３】
また、符号化パラメータのうちの少なくとも一つに基づいて、前記動き補償に関する情報のうちの少なくとも一つを誘導することができる。
【０３１４】
また、前記動き補償に関する情報のうちの少なくとも一つを、符号化パラメータのうちの少なくとも一つに基づいて、ビットストリームからエントロピー復号化することができる。前記動き補償に関する情報のうちの少なくとも一つを、符号化パラメータのうちの少なくとも一つに基づいてビットストリームにエントロピー符号化することができる。
【０３１５】
動き補償に関する情報は、動きベクトル、動きベクトル候補、動きベクトル候補インデックス、動きベクトル差分値、動きベクトル予測値、スキップモードの使用有無情報（ｓｋｉｐ＿ｆｌａｇ）、マージモードの使用有無情報（ｍｅｒｇｅ＿ｆｌａｇ）、マージインデックス情報（ｍｅｒｇｅ＿ｉｎｄｅｘ）、動きベクトル解像度（ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｒｅｓｏｌｕｔｉｏｎ）情報、オーバーラップブロック動き補償（ｏｖｅｒｌａｐｐｅｄ  ｂｌｏｃｋ  ｍｏｔｉｏｎ  ｃｏｍｐｅｎｓａｔｉｏｎ）情報、地域照明補償（ｌｏｃａｌ  ｉｌｌｕｍｉｎａｔｉｏｎ  ｃｏｍｐｅｎｓａｔｉｏｎ）情報、アフィン動き補償（ａｆｆｉｎｅ  ｍｏｔｉｏｎ  ｃｏｍｐｅｎｓａｔｉｏｎ）情報、復号化器動きベクトル誘導（ｄｅｃｏｄｅｒ−ｓｉｄｅ  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｄｅｒｉｖａｔｉｏｎ）情報、及び双方向光学流れ（ｂｉ−ｄｉｒｅｃｔｉｏｎａｌ  ｏｐｔｉｃａｌ  ｆｌｏｗ）情報のうちの少なくとも一つをさらに含むことができる。ここで、復号化器動きベクトル誘導は、パターン整合動きベクトル誘導（ｐａｔｔｅｒｎ  ｍａｔｃｈｅｄ  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｄｅｒｉｖａｔｉｏｎ）を意味することができる。
【０３１６】
動きベクトル解像度情報は、動きベクトル及び動きベクトル差分値のうちの少なくとも一つに対して特定の解像度を使用するかどうかを示す情報であり得る。ここで、解像度は、精度（ｐｒｅｃｉｓｉｏｎ）を意味することができる。また、特定の解像度は、１６画素（１６−ｐｅｌ）単位、８画素（８−ｐｅｌ）単位、４画素（４−ｐｅｌ）単位、整数画素（ｉｎｔｅｇｅｒ−ｐｅｌ）単位、１／２画素（１／２−ｐｅｌ）単位、１／４画素（１／４−ｐｅｌ）単位、１／８画素（１／８−ｐｅｌ）単位、１／１６画素（１／１６−ｐｅｌ）単位、１／３２画素（１／３２−ｐｅｌ）単位、及び１／６４画素（１／６４−ｐｅｌ）単位のうちの少なくとも一つに設定できる。
【０３１７】
オーバーラップブロック動き補償情報は、現在ブロックの動き補償の際に現在ブロックに空間的に隣接する周辺ブロックの動きベクトルをさらに用いて現在ブロックの予測ブロックの重み付け和を計算するかどうかを示す情報であり得る。
【０３１８】
地域照明補償情報は、現在ブロックの予測ブロック生成の際に重み値及びオフセット値のうちの少なくとも一つを適用するか否かを示す情報であり得る。ここで、重み値及びオフセット値のうちの少なくとも一つは、参照ブロックに基づいて算出された値であり得る。
【０３１９】
アフィン動き補償情報は、現在ブロックに対する動き補償の際にアフィン動きモデル（ａｆｆｉｎｅ  ｍｏｔｉｏｎ  ｍｏｄｅｌ）を使用するかどうかを示す情報であり得る。ここで、アフィン動きモデルは、複数のパラメータを用いて１つのブロックを多数のサブブロックに分割し、代表動きベクトルを用いて分割されたサブブロックの動きベクトルを算出するモデルであり得る。
【０３２０】
復号化器動きベクトル誘導情報は、動き補償に必要な動きベクトルを復号化器で誘導して使用するかどうかを示す情報であり得る。復号化器動きベクトル誘導情報に基づいて、動きベクトルに関する情報はエントロピー符号化／復号化されなくてもよい。そして、復号化器動きベクトル誘導情報が復号化器で動きベクトルを誘導して使用することを示す場合、マージモードに関する情報がエントロピー符号化／復号化できる。つまり、復号化器動きベクトル誘導情報は、復号化器でマージモードを使用するかどうかを示すことができる。
【０３２１】
双方向光学流れ情報は、ピクセル単位或いはサブブロック単位で動きベクトルを校正して動き補償を行うかどうかを示す情報であり得る。双方向光学流れ情報に基づいて、ピクセル単位或いはサブブロック単位の動きベクトルは、エントロピー符号化／復号化されなくてもよい。ここで、動きベクトル校正は、ブロック単位の動きベクトルをピクセル単位或いはサブブロック単位の動きベクトル値に変更することであり得る。
【０３２２】
現在ブロックは、動き補償に関する情報のうちの少なくとも一つを用いて動き補償を行い、動き補償に関する情報のうちの少なくとも一つをエントロピー符号化／復号化することができる。
【０３２３】
動き補償に関連する情報をエントロピー符号化／復号化する場合、切り捨てられたライス（Ｔｒｕｎｃａｔｅｄ  Ｒｉｃｅ）２値化方法、Ｋ次数指数−ゴロム（Ｋ−ｔｈ  ｏｒｄｅｒ  Ｅｘｐ＿Ｇｏｌｏｍｂ）２値化方法、制限されたＫ次数指数−ゴロム（Ｋ−ｔｈ  ｏｒｄｅｒ  Ｅｘｐ＿Ｇｏｌｏｍｂ）２値化方法、固定長（Ｆｉｘｅｄ−ｌｅｎｇｔｈ）２値化方法、単項（Ｕｎａｒｙ）２値化方法、又は切り捨てられた単項（Ｔｒｕｎｃａｔｅｄ  Ｕｎａｒｙ）２値化方法などの２値化（Ｂｉｎａｒｉｚａｔｉｏｎ）方法が利用できる。
【０３２４】
動き補償に関する情報をエントロピー符号化／復号化するとき、現在ブロック周辺の周辺ブロックの動き補償に関する情報又は周辺ブロックの領域情報、以前に符号化／復号化された動き補償に関する情報又は以前に符号化／復号化された領域情報、現在ブロックの深さに関する情報、及び現在ブロックのサイズに関する情報のうちの少なくとも一つを用いて、コンテキストモデル（ｃｏｎｔｅｘｔ  ｍｏｄｅｌ）を決定することができる。
【０３２５】
また、動き補償に関する情報をエントロピー符号化／復号化するとき、周辺ブロックの動き補償に関する情報、以前に符号化／復号化された動き補償に関する情報、現在ブロックの深さに関する情報、及び現在ブロックのサイズに関する情報のうちの少なくとも一つを、現在ブロックの動き補償に関する情報に対する予測値として用いて、エントロピー符号化／復号化を行うこともできる。
【０３２６】
以下、動き情報補正（ｍｏｔｉｏｎ  ｉｎｆｏｒｍａｔｉｏｎ  ｒｅｆｉｎｅｍｅｎｔ）について図１３乃至図１５を参照して具体的に説明する。ここで、動き情報補正は、動き情報のうちの少なくとも一つに対して補正することを意味することができる。すなわち、動き情報補正の対象となる情報は、動きベクトル、参照画像インデックス、参照画像、画面間予測インジケータ、予測リスト活用フラグ、重み（重み付け係数（ｗｅｉｇｈｔｉｎｇ  ｆａｃｔｏｒ））、オフセットなど、動き情報に含まれる情報のうちの少なくとも一つであり得る。このような場合、動き情報補正は、動きベクトル、参照画像インデックス、参照画像、画面間予測インジケータ、予測リスト活用フラグ、重み、オフセットなど、動き情報に含まれる情報のうちの１つ以上の値が補正されることを意味することができる。
【０３２７】
また、動き情報補正の対象となる情報は、符号化パラメータに含まれる情報のうちの少なくとも一つであり得る。このような場合には、動き情報補正は、符号化パラメータに含まれる情報のうちの１つ以上の値が補正されることを意味することができる。
【０３２８】
動き情報補正が行われると、補正された動き情報が算出できる。動き情報補正方法によって補正された動き情報は、符号化／復号化対象ブロックの動き補償（図５のＳ５０４、図６のＳ６０５、図７のＳ７０３、図８のＳ８０４）に使用できる。
【０３２９】
動き情報補正が行われるステップに関連して、動き情報補正は、動き補償ステップを行う前に行われ得る。すなわち、符号化／復号化対象ブロックの動き補償過程の実行前に動き情報補正方法を行って補正された動き情報を算出し、補正された動き情報で動き補償過程を行うことができる。
【０３３０】
一例として、ＡＭＶＰモードの場合、動きベクトルを決定するステップ（図５のＳ５０３、図６のＳ６０４）で動き情報補正が行われ得る。この場合、動きベクトル候補リストに含まれている動きベクトル候補、予測された動きベクトル、又は予測された動きベクトルと動きベクトル差分を合わせて算出された動きベクトルのうちのいずれかに動き情報補正（ｍｏｔｉｏｎ  ｉｎｆｏｒｍａｔｉｏｎ  ｒｅｆｉｎｅｍｅｎｔ）を適用することができる。
【０３３１】
別の例として、マージモードの場合、動き情報を決定するステップ（図７のＳ７０２、図８のＳ８０３）で動き情報補正が行われ得る。この場合、マージ候補リストに含まれているマージ候補又はマージ候補インデックスに基づいてマージ候補リストで決定された動き情報のうちのいずれかに動き情報補正を適用することができる。
【０３３２】
一方、スキップモードの場合にも、動き情報補正が行われ得る。この場合、スキップモード候補リストに含まれているスキップ候補又はスキップインデックスに基づいてスキップ候補リストで決定された動き情報のうちのいずれかに動き情報補正を適用することができる。
【０３３３】
また、動き情報補正が行われるステップに関連して、動き情報補正は、動き情報補償ステップ（図５のＳ５０４、図６のＳ６０５、図７のＳ７０３、図８のＳ８０４）内で行われ得る。すなわち、符号化／復号化対象ブロックの動き補償過程内で動き情報補正方法を行って補正された動き情報を算出し、補正された動き情報で動き補償過程を行うことができる。
【０３３４】
一例として、符号化器／復号化器は、動きベクトル決定ステップ又は動き情報決定ステップ（図５のＳ５０３、図６のＳ６０４、図７のＳ７０２、図８のＳ８０３）で決定された動き情報に基づいて予測ブロックを生成し、生成された予測ブロックを用いた動き情報補正を行って補正された動き情報を算出することができる。ここで、符号化器／復号化器は、補正された動き情報を用いて最終予測ブロックを生成することができる。
【０３３５】
一方、動き情報に対して符号化器と復号化器で同じ規則に基づいて補正することができる。符号化器と復号化器で同じ規則に基づいて動き情報を補正するので、動き情報補正の使用有無についての情報をエントロピー符号化／復号化しなくてもよい。
【０３３６】
以下、図１３乃至図１５を参照して、動き情報補正の一実施形態である双方テンプレートマッチング（ｂｉｌａｔｅｒａｌ  ｔｅｍｐｌａｔｅ  ｍａｔｃｈｉｎｇ）について説明する。
【０３３７】
双方テンプレートマッチングは、動き情報のうちの動きベクトルに対する補正方法の一実施形態である。双方テンプレートマッチングを用いて、双方向予測のための２つの動きベクトルのうちの少なくとも一つの動きベクトルを補正することができる。ここで、双方テンプレートは、双方向予測で２つの動きベクトルを用いて生成された予測ブロックを重み付け和して計算された予測ブロックを意味することができる。前記双方向は、双予測を意味することができる。
【０３３８】
具体的には、双方向予測ブロッに対して双方テンプレートマッチングが行われると、参照画像リスト０に該当する第１動きベクトルと参照画像リスト１に該当する第２動きベクトルのうちの少なくとも一つが補正できる。このとき、補正された動きベクトルは、補正前の動きベクトルとは互いに異なる動きベクトル値を持つことができる。
【０３３９】
図１３は双方テンプレートマッチングを説明するための図である。
【０３４０】
図１３を参照すると、双方テンプレートマッチングは、１）初期動きベクトルを用いて双方テンプレートを生成するステップと、２）双方テンプレート内のサンプルと参照画像内の復元されたサンプルとを比較して動きベクトルを補正するステップとを含むことができる。
【０３４１】
１）双方テンプレートの生成
符号化器／復号化器は、参照画像リスト０に該当する第１動きベクトルと参照画像リスト１に該当する第２動きベクトルを介して生成された予測ブロックを用いて、双方テンプレートを生成することができる。また、符号化器／復号化器は、参照画像リスト０に該当する第１動きベクトルと参照画像リスト０に該当する第２動きベクトルを介して生成された予測ブロックを用いて、双方テンプレートを生成することができる。また、符号化器／復号化器は、参照画像リスト１に該当する第１動きベクトルと参照画像リスト１に該当する第２動きベクトルを介して生成された予測ブロックを用いて、双方テンプレートを生成することができる。ここで、双方テンプレートは予測ブロックを重み付け和して生成でき、重み付け和に使用される重みは０５：０．５であり得る。
【０３４２】
一方、双方テンプレートの生成に使用される動きベクトルを初期動きベクトルと呼ぶことができる。初期動きベクトルは、マージモード、ＡＭＶＰモード及びスキップモードなどのうちの少なくとも一つの動き情報導出方法によって算出された動きベクトルを意味することができる。
【０３４３】
２）動きベクトルの補正
符号化器／復号化器は、双方テンプレート内のサンプルと参照画像内の復元されたサンプルとの値を比較して、各参照画像リストに該当する各動きベクトルを補正することができる。
【０３４４】
参照画像リスト０の参照画像内で双方テンプレートと最小の歪みを示す位置を指示する動きベクトルを、補正された第１動きベクトルとして決定することができる。そして、参照画像リスト１の参照画像内で双方テンプレートと最小の歪みを示す位置を指示する動きベクトルを、補正された第２動きベクトルとして決定することができる。
【０３４５】
具体的には、初期第１動きベクトルが指示する参照画像内領域と双方テンプレートとの間の歪み値が、補正された第１動きベクトルが指示する参照画像内領域と双方テンプレートとの間の歪み値よりも大きければ、第１動きベクターは補正できる。同様に、初期第２動きベクトルが指示する参照画像内領域と双方テンプレートとの間の歪み値が、補正された第２動きベクトルが指示する参照画像内領域と双方テンプレートとの間の歪み値よりも大きければ、第２動きベクトルは補正できる。
【０３４６】
このとき、符号化器／復号化器は、双方テンプレート内のサンプルと参照画像内の復元されたサンプルとの値を比較したときに、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）、ＳＡＴＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｔｒａｎｓｆｏｒｍｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）、ＳＳＥ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｅｒｒｏｒ）、ＭＳＥ（Ｍｅａｎ  ｏｆ  Ｓｑｕａｒｅｄ  Ｅｒｒｏｒ）、ＭＲ−ＳＡＤ（Ｍｅａｎ  Ｒｅｍｏｖｅｄ  ＳＡＤ）などのサンプル間の歪み計算方法によって最小の歪み（Ｄｉｓｔｏｒｔｉｏｎ）を示す参照画像内の復元されたサンプル位置を指示する動きベクトルを、補正された動きベクトルとして決定することができる。この場合、前記歪みは、輝度成分及び色差成分のうちの少なくとも一つの成分に対して計算できる。
【０３４７】
一方、初期第１動きベクト及び初期第２動きベクトルが指示する参照画像内領域同士の間のＳＡＤ値が所定の値よりも大きい場合、双方テンプレートマッチングを行って初期第１動きベクトル及び初期第２動きベクトルを補正することができる。逆に、初期第１動きベクトル及び初期第２動きベクトルが指示する参照画像内領域同士間のＳＡＤ値が、予め定義された値よりも小さい場合、双方テンプレートマッチングを行わなくてもよい。
【０３４８】
また、双方向予測の場合、第１予測方向（例えば、Ｌ０予測方向）に対応する初期第１動きベクトル値と、動き情報補正が適用された補正された第１動きベクトル値とが同じである場合には、第２予測方向（例えば、Ｌ１予測方向）に対応する初期第２動きベクトルに対しては動き情報補正を行わなくてもよい。
【０３４９】
一方、双方テンプレートマッチングは、再帰的（ｒｅｃｕｒｓｉｖｅ）で行われ得る。
【０３５０】
具体的に、補正された第１動きベクトルと補正された第２動きベクトルを用いて第２双方テンプレートを生成した後、生成された第２双方テンプレートで双方テンプレートマッチングを行い、補正された第１動きベクトルと補正された第２動きベクトルを再補正することができる。この場合、双方テンプレートマッチングによる再補正動きベクトルを決定する方法は、最大Ｍ回だけ繰り返し行うことができる。ここで、Ｍは正の整数であり（例えば、２である）、前記Ｍは符号化器／復号化器で予め定められた固定値であり、符号化器で符号化されてシグナリングされる可変値であってもよい。又は、前記Ｍは符号化／復号化対象ブロックのサイズに基づいて決定できる。
【０３５１】
一例として、もし符号化／復号化対象ブロックの高さ又は幅が８よりも小さい場合、Ｍは２に設定できる。
【０３５２】
また、符号化／復号化対象ブロックの高さ及び幅が８である場合、Ｍは２に設定できる。
【０３５３】
また、符号化／復号化対象ブロックの幅が８であり、高さが１６である場合、又はその逆である場合には、Ｍは４に設定できる。
【０３５４】
上述した場合ではない場合、Ｍは８に設定できる。この場合、第１参照画像（例えば、Ｌ０参照画像）に対して４回双方テンプレートマッチングを行い、第２参照画像（例えば、Ｌ１参照画像）に対して４回双方テンプレートマッチングを行うことができる。
【０３５５】
一方、副画素単位で双方テンプレートマッチングが再帰的に行われると、整数画素単位で双方テンプレートマッチングが再帰的に行われ得る。
【０３５６】
双方テンプレートマッチングの結果として生成された、補正された動きベクトルは、初期動きベクトルを代替することにより、符号化／復号化対象ブロックの動き補償に使用できる。そして、双方テンプレートマッチングは、符号化器と復号化器で同じ規則によって行われ得る。
【０３５７】
双方テンプレートマッチングにおいて、補正された動きベクトルは、参照画像の限られた領域内で探索できる。
【０３５８】
図１４及び図１５は双方テンプレートマッチングで補正された動きベクトルを探索する領域（以下、「探索領域」という。）を示すための図である。
【０３５９】
図１４を参照すると、探索領域は、整数画素（ｉｎｔｅｒｇｅｒ  ｐｅｌ）単位で横／縦方向に−Ｍ〜＋Ｎ画素の範囲に定められ得る。ここで、ＭとＮは正の整数であり得る。
【０３６０】
また、探索領域は、副画素（ｓｕｂ−ｐｅｌ）単位で横／縦方向に−Ｏ〜＋Ｐ副画素の範囲に定められ得る。ここで、ＯとＰは分数値であり得る。一例として、副画素単位は１／２画素、１／４画素、１／８画素、１／１６画素、１／３２画素などを意味することができる。また、前記ＯとＰは、副画素を表現するために正の整数の値を持つこともできる。
【０３６１】
副画素単位で補正された動きベクトルを探索する場合、整数画素単位の動きベクトルが指示する整数画素に空間的に隣接する周辺副画素が動きベクトルの探索対象となれる。図１４において、副画素単位は１／２画素単位の一例を示す。
【０３６２】
また、メモリアクセス帯域幅の減少のために副画素単位の探索領域を制限することができる。たとえば、副画素単位の探索領域が整数画素単位の探索領域に含まれるように制限することができる。
【０３６３】
図１５は副画素単位の探索領域が整数画素単位の探索領域に含まれるように制限する一実施形態を示す図である。
【０３６４】
図１５を参照すると、斜線で表示された副画素は、整数画素単位の探索領域に含まれない副画素を示し、当該副画素単位では補正された動きベクトルを探索しないように制限することができる。すなわち、斜線で表示されていない副画素単位でのみ補正された動きベクトルを探索するように制限して、斜線で表示された副画素生成のための整数画素をメモリからさらに持ってこないようにすることにより、メモリアクセス帯域幅を減少させることができる。
【０３６５】
一方、整数単位の探索領域は、中央地点、上側地点、下側地点、左側地点及び右側地点のうちの少なくとも一つを含むことができる。
【０３６６】
ここで、上側地点、下側地点、左側地点、右側地点の歪み値に基づいて、少なくとも一つの地点をさらに探索することができる。ここで、少なくとも一つの地点は、左上側地点、左下側地点、右上側地点及び右下側地点のうちの少なくとも一つの地点であり得る。この場合、中央地点、上側地点、下側地点、左側地点、右側地点、左上側地点、左下側地点、右上側地点及び右下側地点のうちの少なくとも一つで副画素単位の探索領域が設定できる。一例として、中央地点、上側地点、下側支点、左側支点及び右側地点で副画素単位の探索領域が設定できる。
【０３６７】
一方、探索領域の形態（Ｓｈａｐｅ）は、初期動きベクトルが指示する画素を基準として正方形（Ｓｑｕａｒｅ）、長方形（Ｒｅｃｔａｎｇｕｌａｒ）、菱形（Ｄｉａｍｏｎｄ／Ｒｈｏｍｂｕｓ）、十字形（Ｃｒｏｓｓ）形状などの２次元で表現可能な図形であり得る。前記探索領域の形態は、符号化器／復号化器で予め定められた固定形態であってもよく、符号化器で符号化されてシグナリングされる情報によって探索領域の形態が特定されてもよい。
【０３６８】
また、探索領域が画像の境界を一定の範囲以上に超えないように初期動きベクトル及び補正された動きベクトルのうちの少なくとも一つに対して動きベクトル値の範囲を制限することができる。動きベクトル値の範囲の制約はクリッピング（ｃｌｉｐｐｉｎｇ）で実現できる。
【０３６９】
この場合、動きベクトル値の範囲は、符号化器と復号化器で予め定められた範囲に決定できる。ここで、予め定められた範囲は、動きベクトル値を制限するためのしきい値を意味することができ、前記しきい値は、最小値又は最大値のうちの少なくとも一つで実現できる。一方、動きベクトル値の範囲は、符号化器で符号化されてシグナリングされる可変的な範囲であってもよい。
【０３７０】
一方、整数画素単位の探索領域と副画素単位の探索領域のうちの少なくとも一つに画像の境界を一定の範囲以上に超えないように制限することができる。
【０３７１】
一方、整数画素単位の動き情報補正が行われた後に、副画素単位の動き情報補正が許可できる。
【０３７２】
上述したような双方テンプレートマッチングを利用する場合、追加構文要素の伝送なしに復号化器上で動きベクトルを改善することができる。一方、双方テンプレートマッチングは、双方向予測マージモード又は復号化器動きベクトル誘導モードの場合に適用できる。
【０３７３】
一実施形態によれば、双方テンプレートマッチングは、現在ブロックが一方向予測マージ候補、地域照明補償モード、アフィン動き補償モード、及びｓｕｂ−ＣＵマージモードのうちの少なくとも一つに該当しない場合には行われ得る。
【０３７４】
以下、動き情報補正に関わる動き補正モード（Ｍｏｔｉｏｎ−ｒｅｆｉｎｅｄ  ｍｏｄｅ）について説明する。ここで、動き補正モードは、画面間予測で用いられる動き情報を導出するための予測モードを意味することができる。一例として、動き補正モードは、上述した双方テンプレートマッチングを利用する動き情報補正に基づいた一種のマージモードであり得る。
【０３７５】
動き補正モードは、画像内動きがないか、或いは動きが小さい領域を効率よく符号化することができる。
【０３７６】
動き補正モードは、上述した動き情報補正に基づく動き情報導出方式であって、上述した動き情報補正の各実施形態は、動き補正モードに適用できる。
【０３７７】
一方、動き補正モードの利用可否又は適用有無は、ビットストリームを介してシグナリングされる情報に基づいて決定できる。前記情報は、ビデオ、シーケンス、ピクチャ、スライス、タイル、符号化ツリーユニット、符号化ユニット、予測ユニット、変換ユニット及びブロックのうちの少なくとも一つの単位に対してシグナリングできる。動き補正モードの利用可否又は適用有無は、該当単位に対して動き補正モードが利用可能であるか否か、或いは適用されるか否かを意味することができる。
【０３７８】
動き補正モードでは、１）動き情報を誘導するステップ、及び２）誘導された動き情報に動き情報補正を適用して補正された動き情報を生成するステップが行われ得る。ここで、動き情報補正は、上述した双方テンプレートマッチングを含むことができる。そして、動き補正モードで補正された動き情報は、符号化／復号化対象ブロックの動き補償に使用できる。
【０３７９】
一方、動き補正モードの対象となる動き情報は、動きベクトル、参照画像、画面間インジケータ、参照画像インデックス、予測リスト活用フラグ、重み及びオフセットのうちの少なくとも一つを含むことができる。
【０３８０】
１）動き情報の誘導
動き補正モードでは、空間的に隣接する周辺ブロックの動き情報、時間的に隣接する周辺ブロックの動き情報、予め定義された動き情報、又は参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き情報を誘導することができる。ここで、誘導された動き情報は、動き補正候補として動き補正モードリストに保存できる。空間的に隣接する周辺ブロックの動き情報から誘導された動き情報は空間動き補正候補であり、時間的に隣接する周辺ブロックの動き情報から誘導された動き情報は時間動き補正候補であり得る。
【０３８１】
以下、動き情報のうちの動きベクトルを誘導する方法について詳細に説明する。
【０３８２】
動き補正モードでは、空間的に隣接する周辺ブロックの動きベクトル、時間的に隣接する周辺ブロックの動きベクトル、予め定義された動きベクトル、又は参照画像で最も多く存在する動きベクトルのうちの少なくとも一つから動きベクトルを誘導することができる。
【０３８３】
Ａ．空間的に隣接する周辺ブロック
動き補正モードでは、空間的に隣接する周辺ブロックのうちの少なくとも一つのブロックの動きベクトルから動きベクトルを誘導することができる。ここで、空間的に隣接する周辺ブロックは、上述した図９の周辺ブロックを含むことができる。
【０３８４】
一方、動き補正モードでは、空間的に隣接する周辺ブロックのうち、次の条件を少なくとも一つ満足するブロックの動きベクトルから動きベクトルを誘導することができる。
【０３８５】
−符号化ブロックフラグが０であるブロック（例えば、残予信号が存在しないブロック）
【０３８６】
−マージスキップモードに該当するブロック
【０３８７】
−現在ブロックに空間的に隣接する周辺ブロックのうち、動きベクトル差分値が０であるブロック（例えば、ＭＶＤ＝（０，０））
【０３８８】
−マージモードに該当するブロック
【０３８９】
−画面間予測インジケータがＰＲＥＤ＿ＬＸであるブロック（Ｘは、０を含む正の整数）
【０３９０】
−画面間予測インジケータがＰＲＥＤ＿ＢＩ、ＰＲＥＤ＿ＴＲＩ又はＰＲＥＤ＿ＱＵＡＤのうちのいずれかに該当するブロック
【０３９１】
一方、動き補正モードでは、空間スキップ／マージ候補のうちの少なくとも一つの動きベクトルから動きベクトルを誘導することができる。
【０３９２】
一例として、空間スキップ／マージ候補の参照画像が符号化／復号化対象ブロックの参照画像と同一でない場合（画像順序カウント値が互いに異なる場合）、画像の画像順序カウント値に基づいて、前記空間的に隣接する周辺ブロックの動きベクトルから誘導された動きベクトルをスケーリングして誘導することができる。
【０３９３】
Ｂ．時間的に隣接する周辺ブロック
動き補正モードでは、時間的に隣接する周辺ブロックのうちの少なくとも一つのブロックの動きベクトルから動きベクトルを誘導することができる。ここで、時間的に隣接する周辺ブロックは、参照画像内の対応位置ブロック及び対応位置画像内の対応位置ブロックを含むことができる。
【０３９４】
ここで、参照画像内の対応位置ブロックは、次のブロックのうちの少なくとも一つであり得る。
【０３９５】
−符号化／復号化対象ブロックの左上側位置である（０，０）に対応する参照画像内の対応位置ブロック
【０３９６】
−参照画像内の対応位置ブロック（図１０のＣ３）
【０３９７】
−参照画像内の対応位置ブロック（図１０のＣ１）
【０３９８】
−参照画像内の対応位置ブロック（図１０のＨ）
【０３９９】
一方、対応位置画像内の対応位置ブロックは、次のブロックのうちの少なくとも一つであり得る。
【０４００】
−符号化／復号化対象ブロックの左上側位置である（０，０）に対応する対応位置画像内の対応位置ブロック
【０４０１】
−対応位置画像内の対応位置ブロック（図１０のＣ３）
【０４０２】
−対応位置画像内の対応位置ブロック（図１０のＣ１）
【０４０３】
−対応位置画像内の対応位置ブロック（図１０のＨ）
【０４０４】
一方、動き補正モードでは、時間的に隣接する周辺ブロックのうち、次の条件を少なくとも一つ満足するブロックの動きベクトルから動きベクトルを誘導することができる。
【０４０５】
−対応位置ブロック内／外のブロックのうち、符号化ブロックフラグが０であるブロック（例えば、残予信号が存在しないブロック）
【０４０６】
−対応位置ブロック内／外のブロックのうち、マージスキップモードに該当するブロック
【０４０７】
−対応位置ブロック内／外のブロックのうち、動きベクトル差分値が０であるブロック（例えば、ＭＶＤ＝（０，０））
【０４０８】
−対応位置ブロック内／外のブロックのうち、マージモードに該当するブロック
【０４０９】
−対応位置ブロック内／外のブロックのうち、画面間予測インジケータがＰＲＥＤ＿ＬＸであるブロック（Ｘは、０を含む正の整数）
【０４１０】
−対応位置ブロック内／外のブロックのうち、画面間予測インジケータがＰＲＥＤ＿ＢＩ、ＰＲＥＤ＿ＴＲＩ又はＰＲＥＤ＿ＱＵＡＤのうちのいずれかに該当するブロック
【０４１１】
一方、動き補正モードでは、時間スキップ／マージ候補のうちの少なくとも一つの動きベクトルから動きベクトルを誘導することができる。
【０４１２】
一例として、時間スキップ／マージ候補の参照画像或いは対応位置画像が符号化／復号化対象ブロックの参照画像と同一でない場合（画像順序カウント値が互いに異なる場合）、画像の画像順序カウント値に基づいて、前記時間的に隣接する周辺ブロックの動きベクトルから誘導された動きベクトルをスケーリングして誘導することができる。
【０４１３】
一方、時間的に隣接する周辺ブロックを含む対応位置画像及び参照画像を指示する参照画像インデックスは、空間的に隣接する周辺ブロックの参照画像インデックスから誘導できる。
【０４１４】
Ｃ．予め定義された動きベクトル
動き補正モードでは、（０，０）動きベクトル（ゼロベクトル）を動きベクトルとして誘導することができる。
【０４１５】
Ｄ．参照画像で最も多く存在する動きベクトル
動き補正モードでは、参照画像で最も多く存在する動きベクトルを誘導することができる。
【０４１６】
このとき、参照画像で最も多く存在する順に動きベクトルをソートし、ソートされた順に、最大Ｌ個の動きベクトルが誘導できる。このとき、Ｌは正の整数であり得る。この場合、Ｌは、符号化器／復号化器で予め定められた固定値であってもよく、符号化器で符号化されてシグナリングされる可変値であってもよい。
【０４１７】
一方、動き補正モードで、動きベクトルは、上述した順序（Ａ→Ｂ→Ｃ→Ｄ）通りに動きベクトルを誘導することができる。この場合、最大Ｍ個の動きベクトルが誘導されるまで誘導することができる。また、上述した順序通りに動きベクトルを誘導し、誘導された動きベクトルが存在する場合、動きベクトルの誘導を中断して最大Ｍ個の動きベクトルを動き補正モードの動きベクトルとして使用することができる。ここで、Ｍは正の整数であり、Ｍは符号化器／復号化器で予め定められた固定値であってもよく、符号化器で符号化されてシグナリングされる可変値であってもよい。ここで、空間的に隣接する周辺ブロックが複数である場合には、まず双方向予測動きベクトルを誘導して動き補正モードリストに挿入し、その後、一方向予測の動きベクトルを誘導して動き補正モードリストに挿入することができる。
【０４１８】
上述した動き補正モードでの動きベクトル誘導手順は、次のとおりに設定できる。
【０４１９】
一例として、空間的に隣接する周辺ブロックの動きベクトル、時間的に隣接する周辺ブロックの動きベクトル、（０，０）動きベクトルの順に動きベクトルを誘導することができる。
【０４２０】
他の例として、時間的に隣接する周辺ブロックの動きベクトル、空間的に隣接する周辺ブロックの動きベクトル、（０，０）動きベクトルの順に動きベクトルを誘導することができる。
【０４２１】
ここで、空間的に隣接する周辺ブロックの動きベクトルは、空間スキップ／マージ候補の誘導順に動きベクトルを誘導することができ、時間的に隣接する周辺ブロックの動きベクトルは、時間スキップ／マージ候補の誘導順に動きベクトルを誘導することができる。
【０４２２】
一方、動き補正モードでは、上述した方法によって誘導された動きベクトルが（０，０）の値を持たない場合にのみ使用することができる。
【０４２３】
一例として、動き補正モードで双方向予測が使用される場合、誘導された第１動きベクトルと第２動きベクトルがすべて（０，０）の値を持たない場合に動き補正モードの動きベクトルとして使用することができる。
【０４２４】
そして、動き補正モードでＮ方向予測（Ｎは２以上の整数）が使用される場合、誘導されたＮ個の動きベクトルがすべて（０，０）の値を持たない場合に動き補正モードの動きベクトルとして使用することができる。
【０４２５】
又は、Ｎ方向予測（Ｎは２以上の整数）において、前記誘導された複数の動きベクトルのうち、一部の動きベクトルが（０，０）の値を持たない場合に動き補正モードの動きベクトルとして使用することができる。
【０４２６】
一方、動き補正モードで双方向予測が使用される場合、前記誘導された第１動きベクトルと第２動きベクトルが互いに同じでない場合には、前記誘導された第１動きベクトルと第２動きベクトルのうちのいずれか一方又は両方を動き補正モードの動きベクトルとして使用することもできる。
【０４２７】
一方、空間的に隣接する周辺ブロック或いは時間的に隣接する周辺ブロックの画面間予測インジケータが双方向予測、３方向予測、４方向予測のうちの少なくとも一つである場合にのみ、誘導された動きベクトルを動き補正モードの動きベクトルとして使用することができる。すなわち、空間的に隣接する周辺ブロック或いは時間的に隣接する周辺ブロックの画面間予測インジケータが一方向予測ではない場合、誘導された動きベクトルを動き補正モードの動きベクトルとして使用することができる。
【０４２８】
また、空間的に隣接する周辺ブロック或いは時間的に隣接する周辺ブロックの画面間予測インジケータが一方向予測である場合には、当該画面間予測インジケータを双方向予測に変更し、前記一方向予測に対する動きベクトルの符号を逆に変更して、前記一方向予測に該当する予測方向と反対の一方向予測に対する動きベクトルを誘導して動き補正モードの動きベクトルとして使用することができる。
【０４２９】
例えば、空間的に隣接する周辺ブロック或いは時間的に隣接する周辺ブロックの画面間予測インジケータがＬ０一方向予測を指示し、動きベクトルが（−４，６）である場合には、画面間予測インジケータを双方向予測に変更し、Ｌ１方向予測に対する動きベクトルを（４，−６）に誘導して、２つの動きベクトルを動き補正モードの動きベクトルとして使用することができる。このとき、Ｌ０一方向予測に対する参照画像と現在画像との距離と同一であるか比例するように、Ｌ１一方向予測に対する参照画像を決定することができる。
【０４３０】
一方、Ｎ方向予測（Ｎは２以上の整数）が使用される動き補正モードで、誘導された動きベクトルがＮ個でない場合、Ｎ個の動きベクトルを誘導するために、既に誘導された動きベクトルに基づいた動きベクトルを生成することができる。具体的には、現在画像及び／又は参照画像のＰＯＣに基づいて、既に誘導された動きベクトルをスケーリングすることにより、動きベクトルを生成することができる。
【０４３１】
一例として、動き補正モードで双方向予測が使用され且つ誘導された第１動きベクトルのみ存在する場合、当該第１動きベクトルを参照画像リスト１内の参照画像を基準にスケーリングして第２動きベクトルを生成し、既に誘導された第１動きベクトルと生成された第２動きベクトルを動き補正モードの動きベクトルとして使用することができる。
【０４３２】
他の例として、動き補正モードで双方向予測が使用され且つ前記誘導された第２動きベクトルのみ存在する場合、当該第２動きベクトルを参照画像リスト０内の参照画像を基準にスケーリングして第１動きベクトルを生成し、既に誘導された第２動きベクトルと生成された第１動きベクトルを動き補正モードの動きベクトルとして使用することができる。
【０４３３】
以下、動き情報のうちの参照画像を誘導する方法について詳細に説明する。
【０４３４】
動き補正モードで、参照画像は、次の方法のうちの少なくとも一つを用いて誘導できる。
【０４３５】
一例として、参照画像リスト０及び参照画像リスト１に含まれている参照画像のうち、参照画像インデックスが０である参照画像を、動き補正モードの参照画像として誘導することができる。もし、参照画像リスト０及び参照画像リスト１に含まれている参照画像のうち、参照画像インデックスが０である参照画像同士が互いに同じであれば、参照画像リスト１に含まれている参照画像のうち、参照画像リスト０内の参照画像インデックスが０である参照画像と同一でない参照画像を、動き補正モードの参照画像として誘導することができる。また、参照画像リスト０及び参照画像リスト１に含まれている参照画像のうち、参照画像インデックスが０である参照画像同士が互いに同じであれば、参照画像リスト０に含まれている参照画像のうち、参照画像リスト１内の参照画像インデックスが０である参照画像と同一でない参照画像を、動き補正モードの参照画像として誘導することができる。
【０４３６】
一方、前述したように動き補正モードの参照画像を誘導するために、参照画像インデックス０を使用することができる。しかし、これに限定されず、０ではない参照画像インデックスを用いて動き補正モードの参照画像を誘導することができる。
【０４３７】
０ではない参照画像インデックスを用いて動き補正モードの参照画像を誘導する方法は、次のとおりである。
【０４３８】
一例として、符号化／復号化対象ブロックの空間的に隣接するＡ１位置、Ｂ１位置、Ｂ０位置、Ａ０位置及びＢ２位置のうちの少なくとも一つの位置で持つ参照画像インデックスの中央値（ｍｅｄｉａｎ  ｖａｌｕｅ）で参照画像インデックスを決定することができる。ここで、中央値の代わりに、最小値、最大値、平均値、重み付け平均値、最頻値などの様々な統計値を用いることもできる。決定された参照画像インデックスが指示する参照画像を動き補正モードの参照画像として誘導することができる。このとき、各参照画像リスト別に、前記方法を用いて参照画像インデックスを決定することができる。
【０４３９】
一方、Ａ１位置にのみブロックが存在し、当該ブロックが画面間予測モードである場合には、Ａ１位置で持つ参照画像インデックスで参照画像インデックスを決定することができる。
【０４４０】
また、Ｂ１位置にのみブロックが存在し、当該ブロックが画面間予測モードである場合には、Ｂ１位置で持つ参照画像インデックスで参照画像を決定することができる。
【０４４１】
また、Ｂ０位置にのみブロックが存在し、当該ブロックが画面間予測モードである場合には、Ｂ０位置で持つ参照画像インデックスで参照画像を決定することができる。
【０４４２】
また、Ａ０位置にのみブロックが存在し、当該ブロックが画面間予測モードである場合には、Ａ０位置で持つ参照画像インデックスで参照画像を決定することができる。
【０４４３】
また、Ｂ２位置にのみブロックが存在し、当該ブロックが画面間予測モードである場合は、Ｂ２位置で持つ参照画像インデックスで参照画像を決定することができる。
【０４４４】
上述した方法によって誘導された参照画像に動き情報補正を適用して補正された参照画像を算出し、補正された参照画像を動き補正モードの参照画像として使用することができる。
【０４４５】
一方、前述した実施形態では、二つの参照画像リストを仮定して説明した。しかし、参照画像リストの個数は、これに限定されず、Ｎ個の参照画像リストが存在し得る。このとき、Ｎは２以上の整数であり、Ｎ個の参照画像リストが存在する場合にも、前述したのと同様に、参照画像の同一性判断に基づいた参照画像の誘導が行われ得る。例えば、Ｎ個の互いに異なる参照画像が誘導されるようにすることができる。
【０４４６】
他の実施形態として、参照画像リストｉ（ｉ＝０…Ｎ、Ｎは１以上の整数）に含まれている参照画像のうち、符号化／復号化対象画像と画像順序カウントの差異値が最も小さい参照画像を動き補正モードの参照画像として誘導することができる。
【０４４７】
又は、参照画像リストｉ（ｉ＝０…Ｎ、Ｎは１以上の整数）に含まれている参照画像のうち、符号化／復号化対象画像と画像順序カウントの差異値が最も小さく、及び／又は最も小さい時間的階層識別子値を持つ参照画像を動き補正モードの参照画像として誘導することができる。
【０４４８】
別の実施形態として、空間的に隣接する周辺ブロックの参照画像を動き補正モードの参照画像として誘導することができる。
【０４４９】
別の実施形態として、時間的に隣接する周辺ブロックの参照画像を動き補正モードの参照画像として誘導することができる。
【０４５０】
別の実施形態として、スキップ／マージ候補のうちの少なくとも一つの参照画像を動き補正モードの参照画像として誘導することができる。
【０４５１】
別の実施形態として、動き情報補正方法を参照画像リスト内の全部あるいは一部の参照像に対して行った後、最小歪みを示す参照画像を動き補正モードの参照画像として誘導することができる。
【０４５２】
以下、動き情報のうちの画面間予測インジケータを誘導する方法について詳細に説明する。
【０４５３】
動き補正モードで、画面間予測インジケータは、次の方法のうちの少なくとも一つを用いて誘導できる。
【０４５４】
一例として、動き補正モードで、画面間予測インジケータは、一方向予測、双方向予測、３方向予測、４方向予測及びＮ方向予測のうちのいずれかの予測に固定して使用することができる。
【０４５５】
他の例として、空間的に隣接する周辺ブロックの画面間予測インジケータを動き補正モードの画面間予測インジケータとして誘導することができる。
【０４５６】
別の例として、時間的に隣接する周辺ブロックの画面間予測インジケータを動き補正モードの画面間予測インジケータとして誘導することができる。
【０４５７】
別の例として、スキップ／マージ候補のうちの少なくとも一つの画面間予測インジケータを動き補正モードの画面間予測インジケータとして誘導することができる。
【０４５８】
別の例として、上述した方法によって誘導された参照画像のうちの利用可能な参照画像に基づいて、画面間予測インジケータを動き補正モードの画面間予測インジケータとして誘導することができる。具体的には、利用可能な参照画像が１つである場合、一方向予測で画面間予測インジケータを誘導することができる。また、利用可能な参照画像が２つである場合、双方向予測で画面間予測インジケータを誘導することができる。
【０４５９】
前記誘導された画面間予測インジケータに前記動き情報補正方法を用いて補正された画面間予測インジケータを算出し、前記補正された画面間予測インジケータを動き補正モードの画面間予測インジケータとして使用することができる。
【０４６０】
２）動き情報の補正
符号化器／復号化器は、上述した方法によって誘導された動き情報に動き情報補正を適用して補正された動き情報を算出し、補正された動き情報を動き補正モードの動き情報として使用することができる。具体的には、補正された動きベクトル、補正された参照画像、補正された画面間予測インジケータのうちの少なくとも一つを用いて予測ブロックを生成して動き補償を行うことができる。同様に、誘導された参照画像インデックス、予測リスト活用フラグ、重み（重み付け係数（ｗｅｉｇｈｔｉｎｇ  ｆａｃｔｏｒ））、オフセットなどの動き情報に含まれる情報のうちの少なくとも一つに対して動き情報補正方法を行い、補正された参照画像インデックス、補正された予測リスト活用フラグ、補正された重み、及び補正されたオフセットのうちの少なくとも一つを用いて予測ブロックを生成して動き補償を行うことができる。ここで、動き情報補正方法は、前記双方テンプレートマッチングを含むことができる。このとき、符号化／復号化対象画像と各参照画像間の画像順序カウントに基づいて重み付け和を計算して最終予測ブロックを生成することにより、動き補償を行うことができる。
【０４６１】
一方、誘導された動きベクトルに動き情報補正を適用する場合、誘導された動きベクトルは、初期動き探索位置の決定に使用できる。前記初期動き探索位置に基づいて補正された動きベクトルが決定できる。
【０４６２】
一方、符号化器／復号化器は、最大Ｍ個の誘導された動き情報に動き情報補正を行うことができる。ここで、Ｍは、符号化器／復号化器で予め定められた固定値であってもよく、符号化器で符号化されてシグナリングされる可変値であってもよい。一例として、第１動き情報、第２動き情報、…、第Ｎ動き情報のうちの少なくとも一つの動き情報が補正できる。このとき、Ｎは４以上の整数であり得る。
【０４６３】
また、前記誘導された動き情報の全部又は一部に、上述した動き情報補正を適用せず、動き補正モードの動き情報として使用することができる。具体的に、誘導された動きベクトル、誘導された参照画像、誘導された画面間予測インジケータのうちの少なくとも一つを用いて予測ブロックを生成して動き補償を行うことができる。
【０４６４】
一方、動き補正モードで、動き情報補正（一例として、双方テンプレートマッチング）は選択的に適用できる。
【０４６５】
一実施形態によれば、動き情報補正は、現在ブロックが一方向予測マージ候補、地域照明補償モード、アフィン動き補償モード、及びｓｕｂ−ＣＵマージモードのうちのいずれかに該当しない場合に行われ得る。
【０４６６】
また、動き情報補正は、第１予測方向（例えば、Ｌ０予測方向）に対応する第１参照画像と符号化／復号化対象画像順序カウンタの差異値（ＰＯＣｒｅｆ０−ＰＯＣｃｕｒｒ）、及び第２予測方向（例えば、Ｌ１予測方向）に対応する第２参照画像と符号化／復号化対象画像順序カウンタの差異値（ＰＯＣｒｅｆ１−ＰＯＣｃｕｒｒ）のうちのいずれか一つのみ負の整数の値（ｎｅｇａｔｉｖｅ  ｖａｌｕｅ）を持つ場合に行われ得る。
【０４６７】
また、動き情報補正は、第１予測方向と第２予測方向とが互いに異なる場合に行われ得る。
【０４６８】
符号化器／復号化器は、上述した方法によって誘導された動き情報のうちの少なくとも一つに対して双方テンプレートマッチングを行い、最小の歪みを持つ一つの動き情報を用いて予測ブロックを生成して動き補償を行うことができる。このとき、一つの動き情報には、Ｌ０動き情報及びＬ１動き情報のうちの少なくとも一つが含まれ得る。
【０４６９】
また、符号化器／復号化器は、スキップ候補リスト又はマージ候補リストに存在する少なくとも一つの候補に対して双方テンプレートマッチングを行い、最小の歪みを持つ一つの候補を用いて予測ブロックを生成して動き補償を行うことができる。
【０４７０】
また、符号化器／復号化器は、上述した方法によって誘導された動き情報のうちの少なくとも一つに対して双方テンプレートマッチングを行い、最小の歪みを持つＭ個の動き情報を用いて生成されたＭ個の予測ブロックに重み付け和を計算して符号化／復号化対象ブロックの予測ブロックとして使用することができる。ここで、Ｍは、正の整数であってもよく、２以上であってもよい。
【０４７１】
また、符号化器／復号化器は、スキップ候補リスト又はマージ候補リストに存在する少なくとも一つの候補に対して双方テンプレートマッチングを行い、最小の歪みを持つＭ個の候補を用いて生成されたＭ個の予測ブロックに重み付け和を計算して符号化／復号化対象ブロックの予測ブロックとして使用することができる。ここで、Ｍは、正の整数であってもよく、２以上であってもよい。
【０４７２】
また、符号化器／復号化器は、スキップ候補リスト又はマージ候補リストにおける一方向予測候補に対してはスキップインデックス或いはマージインデックスをエントロピー符号化／復号化するが、Ｍ個以上の双方向予測候補に対しては、双方テンプレートマッチングを用いて、最小の歪みを持つ少なくとも一つの候補を用いて予測ブロックを生成して動き補償を行うことができる。このとき、１つのフラグ或いは１つのインデックスをエントロピー符号化／復号化してＭ個以上の双方向予測候補を指示することができる。すなわち、一方向予測候補それぞれに対しては、スキップインデックス或いはマージインデックスを割り当てるが、Ｍ個以上の双方向予測候補に対して一つのスキップインデックス或いはマージインデックスを割り当てることができる。Ｍ個以上の双方向予測候補に対しては、双方テンプレートマッチングを用いて、最小の歪みを示す少なくとも一つの候補が決定できるので、各双方向予測候補に対するスキップインデックス或いはマージインデックスを割り当てなくてもよい。
【０４７３】
動き補正モードは、動き補正モード使用情報に基づいて使用有無が決定できる。ここで、動き補正モード使用情報は、フラグ情報、インデックス（索引）情報のうちの少なくとも一つの情報でエントロピー符号化／復号化できる。
【０４７４】
動き補正モード使用情報の符号化／復号化は、スキップフラグの値に基づいて行われ得る。そして、動き補正モード使用情報の符号化／復号化時点は、スキップフラグの符号化／復号化時点に基づいて決定できる。例えば、動き補正モード使用情報は、スキップフラグが１である場合（スキップモードを使用する場合）にエントロピー符号化／復号化できる。この場合、動き補正モード使用情報は、スキップフラグ（ｓｋｉｐ  ｆｌａｇ）後にエントロピー符号化／復号化できる。
【０４７５】
逆に、スキップフラグの符号化／復号化は、動き補正モード使用情報の値に基づいて行われ得る。例えば、動き補正モード使用情報が１である場合（動き補正モードを使用する場合）、スキップフラグがエントロピー符号化／復号化できる。この場合、動き補正モード使用情報は、スキップフラグの前にエントロピー符号化／復号化できる。
【０４７６】
また、動き補正モード使用情報の符号化／復号化は、マージフラグの値に基づいて行われ得る。動き補正モード使用情報の符号化／復号化時点は、マージフラグの符号化／復号化時点に基づいて決定できる。例えば、動き補正モード使用情報は、マージフラグが１である場合（マージモードを使用する場合）にエントロピー符号化／復号化できる。この場合、動き補正モード使用情報は、マージフラグの後にエントロピー符号化／復号化できる。
【０４７７】
逆に、マージフラグの符号化／復号化は、動き補正モード使用情報の値に基づいて行われ得る。例えば、動き補正モード使用情報が１である場合（動き補正モードを使用する場合）、マージフラグがエントロピー符号化／復号化できる。この場合、動き補正モード使用情報は、マージフラグ（ｍｅｒｇｅ  ｆｌａｇ）の前にエントロピー符号化／復号化できる。
【０４７８】
動き補正モード使用情報の符号化／復号化は、特定の動き補償モードに基づいて行われ得る。例えば、動き補正モード使用情報は、アフィン動き補償モードを使用しない場合にエントロピー符号化／復号化できる。
【０４７９】
復号化器動きベクトル誘導モードフラグの符号化／復号化は、動き補正モード使用情報の値に基づいて行われ得る。例えば、動き補正モード使用有無情報が０である場合（動き補正モードを使用しない場合）、復号化器動きベクトル誘導モードフラグがエントロピー符号化／復号化できる。
【０４８０】
また、動き補正モード使用情報は、符号化／復号化対象ブロックの一つ以上の周辺ブロックの動き補正モード使用情報に基づいて符号化／復号化できる。例えば、一つ以上の周辺ブロックは、空間的に隣接する一つ以上のブロック及び／又は時間的に隣接する一つ以上のブロックを含むことができる。前記空間的に隣接する一つ以上のブロックは、左側に隣接するブロック及び／又は上側に隣接するブロックを含むことができる。
【０４８１】
また、動き補正モード使用情報をシグナリングしない場合、動き補正モード使用情報は、符号化／復号化対象ブロックの一つ以上の周辺ブロックの動き補正モード使用情報に基づいて誘導できる。ここで、１つ以上の周辺ブロックは、空間的に隣接する一つ以上のブロック及び／又は時間的に隣接する一つ以上のブロックを含むことができる。前記空間的に隣接する一つ以上のブロックは、左側に隣接するブロック及び／又は上側に隣接するブロックを含むことができる。
【０４８２】
動き補正モード使用情報は、符号化／復号化対象ブロックに空間的に隣接するブロックのうちの少なくとも一つがスキップモードを使用した場合にエントロピー符号化／復号化できる。
【０４８３】
また、動き補正モード使用情報は、符号化／復号化対象ブロックに空間的に隣接するブロックのうちの少なくとも一つがマージモードを使用した場合にエントロピー符号化／復号化できる。
【０４８４】
また、動き補正モード使用情報は、符号化／復号化対象ブロックに空間的に隣接するブロックのうちの少なくとも一つが画面間モードである場合にエントロピー符号化／復号化できる。
【０４８５】
動き補正モード使用情報は、バイパスモード（ｂｙｐａｓｓ  ｍｏｄｅ）でエントロピー符号化／復号化できる。
【０４８６】
また、動き補正モードがスキップモードの形で使用される場合、残余信号をエントロピー符号化／復号化しないことができる。
【０４８７】
また、動き補正モードがマージモードの形で使用される場合、残余信号をエントロピー符号化／復号化することができる。
【０４８８】
また、動き補正モードでは、残余信号の一部のみをエントロピー符号化／復号化して使用することができる。このとき、前記残余信号の一部は、ＤＣ量子化レベル（ＤＣ変換係数）であり得る。
【０４８９】
また、動き補正モードが使用される場合、動き補正モード使用情報以外の他の情報は、エントロピー符号化／復号化されなくてもよい。ここで、他の情報は、動き補償に関する情報のうちの少なくとも一つであり得る。
【０４９０】
以上では、動き情報補正に関する動き補正モード（Ｍｏｔｉｏｎ−Ｒｅｆｉｎｅｄ  ｍｏｄｅ）について説明した。以下、動き補正モードで誘導された動き補正候補について説明する。
【０４９１】
動き補正候補は、動き補正モードを介して誘導された動きベクトル、誘導された参照画像、及び誘導された画面間予測インジケータのうちの少なくとも一つを含む動き情報を意味することができる。符号化器／復号化器は、動き補正候補をスキップモード或いはマージモードでのスキップ候補或いはマージ候補としてそれぞれスキップ候補リスト或いはマージ候補リストに追加することができる。
【０４９２】
スキップ／マージ候補リストに動き補正候補が追加される実施形態は、次のとおりである。
【０４９３】
動き補正候補と同じスキップ／マージ候補がスキップ／マージ候補リストに存在すると、動き補正候補をスキップ／マージ候補リストに追加しなくてもよい。また、スキップ／マージ候補と同じ動き補正候補がスキップ／マージ候補リストに存在すると、スキップ／マージ候補をスキップ／マージ候補リストに追加しなくてもよい。
【０４９４】
動き補正候補は、空間スキップ／マージ候補よりも先に誘導されてスキップ／マージ候補リストに追加できる。
【０４９５】
一方、動き補正候補は、特定の位置で誘導された空間スキップ／マージ候補よりも先に誘導されてスキップ／マージ候補リストに追加できる。ここで、特定の位置は、図１０のＡ１、Ｂ１、Ｂ０、Ａ０及びＢ２位置のうちの少なくとも一つであり得る。
【０４９６】
また、動き補正候補は、時間スキップ／マージ候補、組み合わせマージ候補、及び所定の動き情報値を持つマージ候補のうちの少なくとも一つよりも先に誘導されてスキップ／マージ候補リストに追加できる。
【０４９７】
符号化器／復号化器は、動き補正モードの動き情報補正によって補正された動きベクトル、補正された参照画像、及び補正された画面間予測インジケータのうちの少なくとも一つを含む動き情報を動き補正候補として決定することができる。上述したように、動き補正候補をスキップモード或いはマージモードでのスキップ候補或いはマージ候補としてそれぞれスキップ候補リスト或いはマージ候補リストに追加することができる。
【０４９８】
一方、スキップモードの代わりに動き補正モードを使用することができる。すなわち、動き補正モードでスキップモードを代替して画像を符号化／復号化することができる。また、マージモードの代わりに動き補正モードを使用することができる。すなわち、動き補正モードでマージモードを代替して画像を符号化／復号化することができる。
【０４９９】
動き補正モードを用いて生成された最終予測ブロックに、オーバーラップブロック動き補償モード、地域照明補償モード及び双方向光学流れモードのうちの少なくとも一つを適用することができる。
【０５００】
また、動き補正モードでは、動き情報候補に対するリストを生成せずに、一つ又は一部の動き情報に対してのみ動き情報補正方法を適用することができる。
【０５０１】
以下、動き補正モード（Ｍｏｔｉｏｎ−Ｒｅｆｉｎｅｄ  Ｍｏｄｅ、ＭＲＭ）での動き情報補正（Ｍｏｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｒｅｆｉｎｅｍｅｎｔ）が行われる条件について説明する。
【０５０２】
動き情報補正は、動きベクトルの参照画像の画像順序カウント（ＰＯＣ）を基準に、行うか否かを決定することができる。
【０５０３】
一例として、移動情報補正方法は、画像順序カウントを基準に符号化／復号化対象画像よりも小さい画像順序カウントを持つ参照画像を指示する動きベクトル、及び画像順序カウントを基準に符号化／復号化対象画像よりも大きい画像順序カウントを持つ参照画像を指示する動きベクトルがすべて存在するときに行われ得る。
【０５０４】
また、動き情報補正方法は、画像順序カウントを基準に符号化／復号化対象画像よりも小さい画像順序カウントを持つ参照画像を指示する動きベクトルが２つ存在するときに行われ得る。
【０５０５】
また、動き情報補正方法は、画像順序カウントを基準に符号化／復号化対象画像よりも大きい画像順序カウントを持つ参照画像を指示する動きベクトルが２つ存在するときに行われ得る。
【０５０６】
動き情報補正は、アフィン動き補償モード、復号化器動きベクトル誘導モード及び地域照明補償モードのうちの少なくとも一つが使用されないときに符号化／復号化対象ブロックに行われ得る。
【０５０７】
動き情報補正は、符号化／復号化対象画像の画像順序カウントと第１参照画像の画像順序カウントとの差異値、又は符号化／復号化対象画像の画像順序カウントと第２参照画像の画像順序カウントとの差異値がＮ（Ｎは０以上の整数）よりも小さい場合に行われ得る。このとき、第１参照画像は、第１動きベクトルが指示する参照画像を意味することができ、第２参照画像は、第２動きベクトルが指示する参照画像を意味することができる。
【０５０８】
動き情報補正は、動き情報補正の対象である第１動きベクトルと第２動きベクトルに基づいて、行うかどうかを決定することができる。
【０５０９】
一例として、第１動きベクトルが第２動きベクトルと同一であり、第１動きベクトルが指示する参照画像と第２動きベクトルが指示する参照画像とが同一である場合、動き情報補正は行われなくてもよい。すなわち、第１動き情報と第２動き情報とが互いに異なる、及び／又はそれぞれが指示する参照画像が異なる場合にのみ動き情報補正が行われ得る。また、第１動きベクトルが第２動きベクトルと同一である場合、動き情報補正は行われなくてもよい。すなわち、第１動きベクトルと第２動きベクトルとが互いに異なる場合にのみ、動き情報補正が行われ得る。
【０５１０】
他の例として、第１動きベクトルが指示する参照画像と第２動きベクトルが指示する参照画像とが同一である場合にのみ、動き情報補正方法を行ってもよい。逆に、第１動きベクトルが指示する参照画像と第２動きベクトルが指示する参照画像とが互いに異なる場合にのみ、動き情報補正を行ってもよい。
【０５１１】
別の例として、動きベクトル値が（０，０）ではない動きベクトルに対して、動き情報補正を行ってもよい。ここで、画面間予測インジケータが双方向であり、第１動きベクトルと第2動きベクトルがすべて（０，０）の値を持たない場合、動き情報補正を行ってもよい。また、画面間予測インジケータがＮ方向（Ｎは２以上の整数）である場合、Ｎ個の動きベクトルのうちのすべて又は所定の個数以上が（０，０）の値を持たない場合には、動き情報補正を行ってもよい。
【０５１２】
動き情報補正は、画面間予測インジケータが特定の個数の方向である場合にのみ行われてもよい。一例として、スキップ／マージ候補の画面間予測インジケータが双方向である場合にのみ、動き情報補正を行うことができる。
【０５１３】
動き情報補正は、第１動きベクトルが指示する参照画像の参照画像インデックスが０であり、第２動きベクトルが指示する参照画像の参照画像インデックスが０である場合にのみ行われてもよい。又は、動き情報補正は、それぞれの動きベクトルが指示する参照画像の参照画像インデックスが特定の値である場合にのみ行われてもよい。
【０５１４】
動き情報補正は、空間スキップ／マージ候補、時間スキップ／マージ候補、組み合わせスキップ／マージ候補、及び所定の動き情報値を持つスキップ／マージ候補のうちの少なくとも一つにのみ行われてもよい。
【０５１５】
動き情報補正は、符号化／復号化対象ブロックを副ブロック（サブブロック）単位に分割した後、分割された副ブロック単位で行われてもよい。
【０５１６】
一方、符号化／復号化対象ブロックが副ブロック単位で動き情報或いは動きベクトルを持つ場合、符号化効率の向上のために分割された副ブロック単位で動き情報補正が行われてもよい。このとき、符号化／復号化対象ブロックの副ブロックは、互いに異なる動き情報或いは動きベクトルを持つことができ、すべて同一の動き情報或いは動きベクトルを持つことができる。ここで、符号化／復号化対象ブロックの副ブロックが、互いに異なる動き情報或いは動きベクトルを持つ場合にのみ、動き情報補正が行われてもよい。
【０５１７】
また、符号化／復号化対象ブロックが副ブロック単位で動き情報或いは動きベクトルを持つ場合、計算複雑さの減少のために、副ブロック単位の動き情報或いは動きベクトル単位に対しては動き情報補正を行わなくてもよい。又は、計算複雑さの減少のために、符号化／復号化対象ブロックの副ブロックがすべて同一の動き情報又は動きベクトルを持つ場合にのみ、動き情報補正を行ってもよい。
【０５１８】
一方、動き情報補正方法は、サンプル単位及びブロック単位のうちの少なくとも一つの単位で行われ得る。
【０５１９】
符号化／復号化対象ブロックが３方向予測や４方向予測などのＮ方向予測である場合、それぞれ３つの動きベクトル、４つの動きベクトルなどのＮ個の動きベクトルを用いてテンプレートを計算して動き情報補正を行うことができる。このとき、Ｎは３以上の正の整数であり得る。
【０５２０】
動き情報補正として双方テンプレートマッチングを利用する場合、既に誘導された動き情報をスケーリングして新たな動き情報を生成することができる。
【０５２１】
一例として、空間的に隣接する周辺ブロック或いは時間的に隣接する周辺ブロックで第１動き情報又は第１動きベクトルが１つだけ存在する場合、当該第１動き情報或いは第１動きベクトルに基づいてスケーリングを行って第２動き情報或いは第２動きベクトルを生成することにより、動き情報補正を行うことができる。
【０５２２】
同様に、空間的に隣接する周辺ブロック或いは時間的に隣接する周辺ブロックで第２動き情報或いは第２動きベクトルが１つだけ存在する場合、当該第２動き情報或いは第２動きベクトルに基づいてスケーリングを行って第１動き情報或いは第１動きベクトルを生成することにより、動き情報補正を行うことができる。
【０５２３】
他の例として、初期動きベクトルが指示する参照画像と、補正された動きベクトル候補が指示する参照画像とが互いに異なる場合、各参照画像の画像順序カウント値に基づいて初期動きベクトルをスケーリングして、補正された動きベクトル候補を算出することができる。ここで、補正された動きベクトル候補は、補正された動きベクトルを探索する領域を指示する動きベクトルを意味し、他の補正された動きベクトル候補と初期動きベクトルが指示する位置で歪み値を相互比較して双方テンプレートマッチングを行うことができる。
【０５２４】
一方、１つの輝度成分動きベクトル及び２つの色差成分動きベクトルのうちの少なくとも一つに対して動き情報補正を利用して、補正された動きベクトルを算出することができる。
【０５２５】
一方、動き情報補正を参照画像リスト内の全部或いは一部の参照画像に対して行った後、最小歪みを示す参照画像を補正された参照画像として誘導することができる。
【０５２６】
上述した動き情報補正が行われる条件は、復号化器動きベクトル誘導モード（Ｄｅｃｏｄｅｒ−ｓｉｄｅ  Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｄｅｒｉｖａｔｉｏｎ  Ｍｏｄｅ）での動き情報補正にも適用できる。
【０５２７】
図１６は本発明の一実施形態による画像復号化方法を説明するためのフローチャートである。
【０５２８】
図１６を参照すると、復号化器は、空間的周辺ブロック動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き補正候補を誘導することができる（Ｓ１６０１）。
【０５２９】
この場合、予め設定された順序に従って空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、予め定義された動き情報、及び参照画像で最も多く存在する動き情報のうちの少なくとも一つから動き補正候補を誘導することができる。ここで、予め設定された順序は、空間的周辺ブロックの動き情報、時間的周辺ブロックの動き情報、及び予め定義された動き情報の順序であり得る。ここで、予め定義された動き情報はゼロベクトルを含むことができる。
【０５３０】
一方、時間的周辺ブロックは、空間的周辺ブロックの参照画像インデックスに基づいて選択された参照画像に含まれ得る。
【０５３１】
次いで、誘導された動き補正候補に動き情報補正を行うことができる（Ｓ１６０２）。
【０５３２】
この場合、誘導された動き補正候補に含まれている動きベクトルに双方テンプレートマッチングを適用して動き情報補正を修正することができる。
【０５３３】
ここで、双方テンプレートマッチングは、前記誘導された動き補正候補に含まれている動きベクトルを初期動きベクトルとして用いて双方テンプレートを生成するステップと、前記双方テンプレート内のサンプルと、前記初期動きベクトルが指示する参照画像内の復元されたサンプルとを比較して前記初期動きベクトルを補正するステップとを含むことができる。
【０５３４】
ここで、初期動きベクトルを補正するステップは、再帰的に行われ得る。
【０５３５】
また、初期動きベクトルは、誘導された動き補正候補のうちでゼロベクトルではない双方向予測動きベクトルであり得る。ここで、誘導された動き補正候補のうちでゼロベクトルではない双方向予測動きベクトルがない場合、初期動きベクトルはゼロベクトルに設定できる。
【０５３６】
一方、初期動きベクトルを補正するステップは、双方テンプレートと最小の歪みを示す参照画像内の領域を指示する動きベクトルを探索するステップと、探索された動きベクトルを初期動きベクトルの補正値に設定するステップとを含むことができる。
【０５３７】
ここで、動きベクトルを探索するステップは、参照画像内の限られた探索領域で探索できる。
【０５３８】
この場合、限られた探索領域は、整数画素単位の予め定められた範囲に設定でき、動きベクトルを探索するステップは、整数画素単位の予め定められた範囲で副画素単位にて動きベクトルを探索することができる。
【０５３９】
一方、双方テンプレートマッチングは、整数画素単位及び副画素単位で行われ得る。この場合、動きベクトルを探索するステップは、整数画素単位の予め定められた範囲で副画素単位にて動きベクトルを探索することができる。
【０５４０】
一方、誘導された動き補正候補に動き情報補正を行うステップは、ブロックが一方向予測マージ候補、地域照明補償モード及びアフィン動き補償モードに該当しない場合に行われ得る。
【０５４１】
次いで、動き情報補正が行われた動き補正候補を用いて、現在ブロックの予測ブロックを生成することができる（Ｓ１６０３）。
【０５４２】
画像復号化方法は、Ｓ１６０１ステップの前に、動き補正モード使用情報を復号化するステップ、及び復号化された動き補正モード使用情報に基づいて動き補正モードを決定するステップをさらに含むことができる。決定結果に基づいて、現在ブロックが動き補正モードである場合にＳ１６０１ステップが初めて行われ得る。
【０５４３】
ここで、動き補正モード使用情報を復号化するステップを行うか否かは、スキップフラグ又はマージフラグに基づいて決定できる。
【０５４４】
一方、空間的周辺ブロックが複数である場合、動き補正候補を誘導するステップは、双方向予測動きベクトルを持っている空間的周辺ブロックから動き情報をまず誘導し、その後、一方向予測動きベクトルを持つ空間的周辺ブロックから動き情報を誘導することができる。
【０５４５】
以上、本発明に係る画像復号化方法について説明した。上述した画像復号化方法の各ステップは、画像符号化方法にも同様に行われ得る。
【０５４６】
これらの実施形態は、符号化器及び復号化器で同様の方法で行われ得る。
【０５４７】
前記実施形態を適用する順序は、符号化器と復号化器で互いに異なってもよく、符号化器と復号化器で互いに同じであってもよい。
【０５４８】
輝度及び色差信号それぞれに対して前記実施形態を行うことができ、輝度及び色差信号に対する前記実施形態を同様に行うことができる。
【０５４９】
本発明の実施形態が適用されるブロックの形状は、正方形（ｓｑｕａｒｅ）或いは非正方形（ｎｏｎ−ｓｑｕａｒｅ）の形状を有することができる。
【０５５０】
本発明の前記実施形態は、符号化ブロック、予測ブロック、変換ブロック、ブロック、現在ブロック、符号化ユニット、予測ユニット、変換ユニット、ユニット及び現在ユニットのうちの少なくとも一つのサイズに応じて適用できる。ここでのサイズは、前記実施形態が適用されるために、最小サイズ及び／又は最大サイズに定義されてもよく、前記実施形態が適用される固定サイズに定義されてもよい。また、前記実施形態は、第１サイズでは第１実施形態が適用されてもよく、第２サイズでは第２実施形態が適用されてもよい。すなわち、前記実施形態は、サイズに応じて複合的に適用できる。また、本発明の前記実施形態は、最小サイズ以上及び最大サイズ以下の場合にのみ適用されてもよい。すなわち、前記実施形態は、ブロックサイズが一定の範囲内に含まれる場合にのみ適用されてもよい。
【０５５１】
例えば、現在ブロックのサイズが８×８以上である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが４×４である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが１６×１６以下である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが１６×１６以上６４×６４以下である場合にのみ、前記実施形態が適用できる。
【０５５２】
本発明の実施形態は、時間的階層（ｔｅｍｐｏｒａｌ  ｌａｙｅｒ）に応じて適用できる。前記実施形態が適用可能な時間的階層を識別するために、別途の識別子（ｉｄｅｎｔｉｆｉｅｒ）がシグナリングされ、当該識別子によって特定された時間的階層に対して前記実施形態が適用できる。ここでの識別子は、前記実施形態が適用可能な最下位階層及び／又は最上位階層と定義されてもよく、前記実施形態が適用される特定の階層を指示するものと定義されてもよい。また、前記実施形態が適用される固定された時間的階層が定義されてもよい。
【０５５３】
例えば、現在画像の時間的階層が最下位階層である場合にのみ、前記実施形態が適用できる。例えば、現在画像の時間的階層識別子が１以上である場合にのみ、前記実施形態が適用できる。例えば、現在画像の時間的階層が最上位階層である場合にのみ、前記実施形態が適用できる。
【０５５４】
本発明の実施形態が適用されるスライスタイプ（ｓｌｉｃｅ  ｔｙｐｅ）が定義され、当該スライスタイプに応じて本発明の前記実施形態が適用できる。
【０５５５】
動きベクトルが１６画素（１６−ｐｅｌ）単位、８画素（８−ｐｅｌ）単位、４画素（４−ｐｅｌ）単位、整数画素（ｉｎｔｅｇｅｒ−ｐｅｌ）単位、１／２画素（１／２−ｐｅｌ）単位、１／４画素（１／４−ｐｅｌ）単位、１／８画素（１／８−ｐｅｌ）単位、１／１６画素（１／１６−ｐｅｌ）単位、１／３２画素（１／３２−ｐｅｌ）単位、及び１／６４画素（１／６４−ｐｅｌ）単位のうちの少なくとも一つを持つときも、本発明の前記実施形態が適用できる。また、動きベクトルは画素単位別に選択的に使用できる。
【０５５６】
上述した実施形態において、これらの方法は、一連のステップ又はユニットであって、フローチャートに基づいて説明されているが、本発明は、これらのステップの順序に限定されるものではなく、あるステップは、上述したのとは異なるステップと異なる順序で又は同時に発生することができる。また、当該技術分野における通常の知識を有する者であれば、フローチャートに示されたステップが排他的ではなく、他のステップが含まれるか、フローチャートの一つ又はそれ以上のステップが本発明の範囲に影響することなく削除できることを理解することができるだろう。
【０５５７】
上述した実施形態は、様々な態様の例示を含む。様々な態様を示すためのすべての可能な組み合わせを記述することはできないが、当該技術分野における通常の知識を有する者は、他の組み合わせが可能であることを認識することができるだろう。よって、本発明は、以下の特許請求の範囲内に属するすべての様々な交替、修正及び変更を含むといえる。
【０５５８】
以上説明した本発明に係る実施形態は、様々なコンピュータ構成要素を介して実行できるプログラム命令の形で実現され、コンピュータ可読記録媒体に記録できる。前記コンピュータ可読記録媒体は、プログラム命令、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記コンピュータ可読記録媒体に記録されるプログラム命令は、本発明のために特別に設計及び構成されたもの、又はコンピュータソフトウェア分野の当業者に公知されて使用可能なものである。コンピュータ可読記録媒体の例には、ハードディスク、フロッピーディスク及び磁気テープなどの磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤなどの光記録媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌ  ｄｉｓｋ）などの磁気−光媒体（ｍａｇｎｅｔｏ−ｏｐｔｉｃａｌ  ｍｅｄｉａ）、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのプログラム命令を保存し実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例には、コンパイラによって作られる機械語コードだけでなく、インタプリターなどを用いてコンピュータによって実行できる高級言語コードも含まれる。前記ハードウェア装置は、本発明に係る処理を行うために一つ以上のソフトウェアモジュールとして作動するように構成でき、その逆も同様である。
【０５５９】
以上で、本発明が、具体的な構成要素などの特定の事項、限定された実施形態及び図面によって説明されたが、これは本発明のより全般的な理解を助けるために提供されたものに過ぎず、本発明は前記実施形態に限定されるものではない。本発明の属する技術分野における通常の知識を有する者であれば、このような記載から多様な修正及び変形を図ることができる。
【０５６０】
よって、本発明の思想は、上述した実施形態に限定されて定められてはならず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等に又は等価的に変形したすべてのものは本発明の思想の範疇に属するというべきである。
【産業上の利用可能性】
【０５６１】
本発明は、画像を符号化／復号化する装置に利用可能である。
【図１】
2020522960.tif 000006
【図２】
2020522960.tif 000007
【図３】
2020522960.tif 000008
【図４】
2020522960.tif 000009
【図５】
2020522960.tif 000010
【図６】
2020522960.tif 000011
【図７】
2020522960.tif 000012
【図８】
2020522960.tif 000013
【図９】
2020522960.tif 000014
【図１０】
2020522960.tif 000015
【図１１】
2020522960.tif 000016
【図１２】
2020522960.tif 000017
【図１３】
2020522960.tif 000018
【図１４】
2020522960.tif 000019
【図１５】
2020522960.tif 000020
【図１６】
2020522960.tif 000021
【国際調査報告】
2020522960.tif 000022
2020522960.tif 000023
2020522960.tif 000024
2020522960.tif 000025