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