(57)【要約】  ビデオ信号をエンコーディングまたはデコーディングするビデオ信号処理方法及び装置が開示される。より具体的に、第１方法及び第２方法のうち、いずれか１つを使用して現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成するステップ、前記構成されたＭＶＰ候補リストに基づいて現在ブロックの動きベクトル予測子を獲得するステップ、前記現在ブロックの動きベクトルと前記動きベクトル予測子との間の差を示す動きベクトル差分値を獲得するステップ、前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、前記動きベクトル差分値を修正するステップ、前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わり、前記動きベクトル予測子及び前記修正された動きベクトル差分値に基づいて前記現在ブロックの動きベクトルを獲得するステップ、及び前記獲得された動きベクトルに基づいて前記現在ブロックを復元するステップを含む、ビデオ信号処理方法及びこれを遂行するビデオ信号処理装置が開示される。
2021526340.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ信号処理方法において、
第１方法及び第２方法のうち、いずれか１つを使用して現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成するステップ；
前記構成されたＭＶＰ候補リストに基づいて現在ブロックの動きベクトル予測子を獲得するステップ；
前記現在ブロックの動きベクトルと前記動きベクトル予測子との間の差を示す動きベクトル差分値を獲得するステップ；
前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、前記動きベクトル差分値を修正するステップ、前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わる；
前記動きベクトル予測子及び前記修正された動きベクトル差分値に基づいて前記現在ブロックの動きベクトルを獲得するステップ；及び
前記獲得された動きベクトルに基づいて前記現在ブロックを復元するステップを含む、ビデオ信号処理方法。
【請求項２】
前記動きベクトル差分値の解像度は、前記現在ブロックのＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって、各々第１解像度セット及び第２解像度セットのうち、いずれか１つから獲得され、
前記第２解像度セットは、前記第１解像度セットが含む複数の可用解像度でない他の可用解像度を少なくとも１つ含む、請求項１に記載のビデオ信号処理方法。
【請求項３】
前記ＭＶＰ候補リストがアフィン（affine）モデルに基づいた前記第１方法を使用して構成される場合、前記動きベクトル差分値の解像度は前記第１解像度セットから獲得され、
前記ＭＶＰ候補リストが前記アフィンモデルに基づかない前記第２方法を使用して構成される場合、前記動きベクトル差分値の解像度は前記第２解像度セットから獲得される、請求項２に記載のビデオ信号処理方法。
【請求項４】
前記第１解像度セットが含む複数の可用解像度のうち、最も大きい第１可用解像度は、前記第２解像度セットが含む複数の可用解像度のうち、最も大きい第２可用解像度より小さい、請求項３に記載のビデオ信号処理方法。
【請求項５】
前記第１可用解像度は１サンプル単位の解像度であり、
前記第２可用解像度は４サンプル単位の解像度である、請求項４に記載のビデオ信号処理方法。
【請求項６】
前記動きベクトル差分値を修正するステップは、
前記第１解像度セット及び前記第２解像度セットのうち、いずれか１つが含む複数の可用解像度のうち、前記現在ブロックの動きベクトル差分値の解像度を指示する指示子を獲得するステップ；及び
前記指示子が指示する解像度に基づいて前記動きベクトル差分値を修正するステップを含み、
前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わる、請求項２に記載のビデオ信号処理方法。
【請求項７】
前記ＭＶＰ候補リストが前記第１方法を使用して構成される場合、前記第１値は第１解像度セットが含む可用解像度のうちの１つである第１可用解像度を指示し、
前記ＭＶＰ候補リストが前記第２方法を使用して構成される場合、前記第１値は第２解像度セットが含む可用解像度のうちの１つである第２可用解像度を示し、
前記第１可用解像度と前記第２可用解像度は互いに異なる、請求項６に記載のビデオ信号処理方法。
【請求項８】
前記第１解像度セット及び前記第２解像度セットは全て第１可用解像度を含み、
前記ＭＶＰ候補リストが前記第２方法を使用して構成される場合、前記第１可用解像度は前記指示子の前記第１値と異なる値である第２値により指示される、請求項７に記載のビデオ信号処理方法。
【請求項９】
前記指示子は可変長さのビットで表現され、
前記第１値は前記可変長さのビットで表現される複数の値のうち、いずれか１つである、請求項６に記載のビデオ信号処理方法。
【請求項１０】
前記指示子の前記第１値と異なる第３値は、前記複数の値のうち、最も短い長さのビットで表現される値であり、
前記ＭＶＰ候補リストが前記第２方法により構成される場合、前記第３値は前記第２解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度を指示し、
前記ＭＶＰ候補リストが前記第１方法により構成される場合、前記第３値は前記第１解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度の以外の他の可用解像度を指示する、請求項９に記載のビデオ信号処理方法。
【請求項１１】
前記第１解像度セットが含む可用解像度の個数と前記第２解像度セットが含む可用解像度の個数は互いに異なる、請求項２に記載のビデオ信号処理方法。
【請求項１２】
前記解像度セットを構成する可用解像度の個数は、前記現在ブロックの動き補償のための参照ピクチャのピクチャ順序カウント（picture order count、ＰＯＣ）によって変わる、請求項１１に記載のビデオ信号処理方法。
【請求項１３】
前記現在ブロックの動き補償のための参照ピクチャのピクチャ順序カウント（picture order count、ＰＯＣ）が前記現在ブロックを含む現在ピクチャのＰＯＣと同一の場合、前記第１解像度セットから前記現在ブロックの動きベクトル差分値の解像度が獲得され、
前記現在ブロックの動き補償のための参照ピクチャのピクチャ順序カウントが前記現在ブロックを含む現在ピクチャのＰＯＣと同一でない場合、前記第２解像度セットから前記現在ブロックの動きベクトル差分値の解像度が獲得され、
前記第１解像度セットは、前記第２解像度セットが含む可用解像度のうち、最も小さい可用解像度を除外した残りの可用解像度で構成された、請求項１２に記載のビデオ信号処理方法。
【請求項１４】
ビデオ信号デコーディング装置において、
プロセッサを含み、
前記プロセッサは、
第１方法及び第２方法のうち、いずれか１つを使用して現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成し、
前記構成されたＭＶＰ候補リストに基づいて現在ブロックの動きベクトル予測子を獲得し、
前記現在ブロックの動きベクトルと前記動きベクトル予測子との間の差を示す動きベクトル差分値を獲得し、
前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、前記動きベクトル差分値を修正し、かつ前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わり、
前記動きベクトル予測子及び前記修正された動きベクトル差分値に基づいて前記現在ブロックの動きベクトルを獲得し、
前記獲得された動きベクトルに基づいて前記現在ブロックを復元する、ビデオ信号デコーディング装置。
【請求項１５】
前記動きベクトル差分値の解像度は、前記現在ブロックのＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって、各々第１解像度セット及び第２解像度セットのうち、いずれか１つから獲得され、
前記第２解像度セットは前記第１解像度セットが含む複数の可用解像度でない他の可用解像度を少なくとも１つ含む、請求項１４に記載のビデオ信号デコーディング装置。
【請求項１６】
前記ＭＶＰ候補リストがアフィン（affine）モデルに基づいた前記第１方法を使用して構成される場合、前記動きベクトル差分値の解像度は前記第１解像度セットから獲得され、
前記ＭＶＰ候補リストが前記アフィンモデルに基づかない前記第２方法を使用して構成される場合、前記動きベクトル差分値の解像度は前記第２解像度セットから獲得される、請求項１５に記載のビデオ信号デコーディング装置。
【請求項１７】
前記第１解像度セットが含む複数の可用解像度のうち、最も大きい第１可用解像度は、前記第２解像度セットが含む複数の可用解像度のうち、最も大きい第２可用解像度より小さい、請求項１６に記載のビデオ信号デコーディング装置。
【請求項１８】
前記プロセッサは、
前記第１解像度セット及び前記第２解像度セットのうちのいずれか１つが含む複数の可用解像度のうち、前記現在ブロックの動きベクトル差分値の解像度を指示する指示子を獲得し、
前記指示子が指示する解像度に基づいて前記動きベクトル差分値を修正し、
前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わる、請求項１５に記載のビデオ信号デコーディング装置。
【請求項１９】
前記指示子は可変長さのビットで表現され、
前記第１値は前記可変長さのビットで表現される複数の値のうちのいずれか１つである、請求項１８に記載のビデオ信号デコーディング装置。
【請求項２０】
前記指示子の前記第１値と異なる第２値は、前記複数の値のうち、最も短い長さのビットで表現される値であり、
前記ＭＶＰ候補リストが前記第２方法により構成される場合、前記第２値は前記第２解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度を指示し、
前記ＭＶＰ候補リストが前記第１方法により構成される場合、前記第２値は前記第１解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度の以外の他の可用解像度を指示する、請求項１９に記載のビデオ信号デコーディング装置。
【請求項２１】
ビデオ信号エンコーディング装置において、
プロセッサを含み、
前記プロセッサは、
現在ブロックの動き補償のために参照される参照ブロックの位置に基づいて前記現在ブロックの動きベクトルを獲得し、
第１方法及び第２方法のうち、いずれか１つを使用して前記現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成し、
前記ＭＶＰ候補リストが含む複数の候補のうちのいずれか１つと前記現在ブロックの動きベクトルとの間の差に基づいて動きベクトル差分値を獲得し、
前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、シグナリングされる動きベクトル差分値を決定し、かつ前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わり、
前記シグナリングされる動きベクトル差分値を含むビットストリームを生成する、ビデオ信号エンコーディング装置。
【請求項２２】
前記動きベクトル差分値の解像度は、前記現在ブロックのＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって、各々第１解像度セット及び第２解像度セットのうち、いずれか１つから獲得され、
前記第２解像度セットは、前記第１解像度セットが含む複数の可用解像度でない他の可用解像度を少なくとも１つ含む、請求項２１に記載のビデオ信号エンコーディング装置。
【請求項２３】
前記第１解像度セットが含む複数の可用解像度のうち、最も大きい第１可用解像度は、前記第２解像度セットが含む複数の可用解像度のうち、最も大きい第２可用解像度より小さい、請求項２２に記載のビデオ信号エンコーディング装置。
【請求項２４】
前記プロセッサは、
第１解像度セット及び第２解像度セットのうちのいずれか１つが含む複数の可用解像度のうち、いずれか１つを指示する指示子を決定し、
前記指示子及び前記シグナリングされる動きベクトル差分値を含むビットストリームを生成し、かつ
前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は、前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わる、請求項２１に記載のビデオ信号エンコーディング装置。
【請求項２５】
前記指示子は可変長さのビットで表現され、
前記第１値は前記可変長さのビットで表現される複数の値のうち、いずれか１つである、請求項２４に記載のビデオ信号エンコーディング装置。
【請求項２６】
前記指示子の前記第１値と異なる第２値は、前記複数の値のうち、最も短い長さのビットで表現される値であり、
前記ＭＶＰ候補リストが前記第２方法により構成される場合、前記第２値は前記第２解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度を指示し、
前記ＭＶＰ候補リストが前記第１方法により構成される場合、前記第２値は前記第１解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度の以外の他の可用解像度を指示する、請求項２５に記載のビデオ信号エンコーディング装置。
【請求項２７】
ビットストリームを格納するコンピュータにより読取可能な記録媒体において、
前記ビットストリームは、
現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて修正された前記現在ブロックの修正された動きベクトル差分値を含み、かつ
前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、第１方法及び第２方法のうち、どの方法を使用して前記現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストが構成されるかによって変わる、コンピュータにより読取可能な記録媒体。
【請求項２８】
前記動きベクトル差分値の解像度は、前記現在ブロックのＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって、各々第１解像度セット及び第２解像度セットのうち、いずれか１つから獲得され、
前記第２解像度セットは、前記第１解像度セットが含む複数の可用解像度でない他の可用解像度を少なくとも１つ含む、請求項２７に記載のコンピュータにより読取可能な記録媒体。
【請求項２９】
前記第１解像度セットが含む複数の可用解像度のうち、最も大きい第１可用解像度は、前記第２解像度セットが含む複数の可用解像度のうち、最も大きい第２可用解像度より小さい、請求項２８に記載のコンピュータにより読取可能な記録媒体。
【請求項３０】
前記ビットストリームは、
前記第１解像度セット及び前記第２解像度セットのうちのいずれか１つが含む複数の可用解像度のうち、前記現在ブロックの動きベクトル差分値の解像度を指示する指示子をさらに含み、
前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は、前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わる、請求項２８に記載のコンピュータにより読取可能な記録媒体。
【請求項３１】
前記指示子は可変長さのビットで表現され、
前記第１値は前記可変長さのビットで表現される複数の値のうち、いずれか１つである、請求項３０に記載のコンピュータにより読取可能な記録媒体。
【請求項３２】
前記指示子の前記第１値と異なる第２値は、前記複数の値のうち、最も短い長さのビットで表現される値であり、
前記ＭＶＰ候補リストが前記第２方法により構成される場合、前記第２値は前記第２解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度を指示し、
前記ＭＶＰ候補リストが前記第１方法により構成される場合、前記第２値は前記第１解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度の以外の他の可用解像度を指示する、請求項３１に記載のコンピュータにより読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はビデオ信号処理方法及び装置に関し、より詳しくは、ビデオ信号をエンコーディングするかデコーディングするビデオ信号処理方法及び装置に関する。
【背景技術】
【０００２】
圧縮符号化とは、デジタル化した情報を通信回線を介して伝送するか、貯蔵媒体に適合した形態に貯蔵するための一連の信号処理技術を意味する。圧縮符号化の対象としては音声、映像、文字などの対象が存在するが、特に映像を対象とする圧縮符号化を行う技術をビデオ映像圧縮と称する。ビデオ信号に対する圧縮符号化は、空間的な相関関係、時間的な相関関係、確率的な相関関係などを考慮して剰余情報を除去することで行われる。しかし、最近の多様なメディア及びデータ伝送媒体の発展によって、より高効率のビデオ信号処理方法及び装置が求められている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明の目的は、ビデオ信号のコーディング効率を高めようとすることにある。また、本発明は現在ブロックの動き情報セットと関連したシグナリング効率を高めるための目的を有している。
【課題を解決するための手段】
【０００４】
前記のような課題を解決するために、本発明は次のようなビデオ信号処理装置及びビデオ信号処理方法を提供する。
【０００５】
まず、本発明の一実施形態によれば、ビデオ信号の処理方法において、第１方法及び第２方法のうち、いずれか１つを使用して現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成するステップ；前記構成されたＭＶＰ候補リストに基づいて現在ブロックの動きベクトル予測子を獲得するステップ；前記現在ブロックの動きベクトルと前記動きベクトル予測子との間の差を示す動きベクトル差分値を獲得するステップ；前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、前記動きベクトル差分値を修正するステップ、前記動きベクトル差分値の解像度は解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わる；前記動きベクトル予測子及び前記修正された動きベクトル差分値に基づいて前記現在ブロックの動きベクトルを獲得するステップ；及び前記獲得された動きベクトルに基づいて前記現在ブロックを復元するステップを含む、ビデオ信号処理方法が提供される。
【０００６】
また、本発明の実施形態によれば、ビデオ信号デコーディング装置において、プロセッサを含み、前記プロセッサは、第１方法及び第２方法のうち、いずれか１つを使用して現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成し、前記構成されたＭＶＰ候補リストに基づいて現在ブロックの動きベクトル予測子を獲得し、前記現在ブロックの動きベクトルと前記動きベクトル予測子との間の差を示す動きベクトル差分値を獲得し、前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、前記動きベクトル差分値を修正し、かつ前記動きベクトル差分値の解像度は解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わり、前記動きベクトル予測子及び前記修正された動きベクトル差分値に基づいて前記現在ブロックの動きベクトルを獲得し、前記獲得された動きベクトルに基づいて前記現在ブロックを復元する、ビデオ信号デコーディング装置が提供される。
【０００７】
前記動きベクトル差分値の解像度は、前記現在ブロックのＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって、各々第１解像度セット及び第２解像度セットのうちのいずれか１つから獲得され、前記第２解像度セットは前記第１解像度セットが含む複数の可用解像度でない、他の可用解像度を少なくとも１つ含むことができる。
【０００８】
前記ＭＶＰ候補リストがアフィン（affine）モデルに基づいた前記第１方法を使用して構成される場合、前記動きベクトル差分値の解像度は前記第１解像度セットから獲得され、前記ＭＶＰ候補リストが前記アフィンモデルに基づかない前記第２方法を使用して構成される場合、前記動きベクトル差分値の解像度は前記第２解像度セットから獲得できる。
【０００９】
前記第１解像度セットが含む複数の可用解像度のうち、最も大きい第１可用解像度は、前記第２解像度セットが含む複数の可用解像度のうち、最も大きい第２可用解像度より小さいことがある。
【００１０】
前記プロセッサは、前記第１解像度セット及び前記第２解像度セットのうちのいずれか１つが含む複数の可用解像度のうち、前記現在ブロックの動きベクトル差分値の解像度を指示する指示子を獲得し、前記指示子が指示する解像度に基づいて前記動きベクトル差分値を修正することができる。この際、前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わることができる。
【００１１】
前記ＭＶＰ候補リストが前記第１方法を使用して構成される場合、前記第１値は第１解像度セットが含む可用解像度のうちの１つである第１可用解像度を指示し、前記ＭＶＰ候補リストが前記第２方法を使用して構成される場合、前記第１値は第２解像度セットが含む可用解像度のうちの１つである第２可用解像度を示し、前記第１可用解像度と前記第２可用解像度は互いに異なることがある。
【００１２】
前記第１解像度セット及び前記第２解像度セットは両方とも第１可用解像度を含み、前記ＭＶＰ候補リストが前記第２方法を使用して構成される場合、前記第１可用解像度は前記指示子の前記第１値と異なる値である第２値により指示できる。
【００１３】
前記指示子は可変長さのビットで表現され、前記第１値は前記可変長さのビットで表現される複数の値のうち、いずれか１つでありうる。
【００１４】
前記指示子の前記第１値と異なる第３値は、前記複数の値のうち、最も短い長さのビットで表現される値であり、前記ＭＶＰ候補リストが前記第２方法により構成される場合、前記第３値は前記第２解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度を指示し、前記ＭＶＰ候補リストが前記第１方法により構成される場合、前記第３値は前記第１解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度の以外の他の可用解像度を指示することができる。
【００１５】
また、本発明の実施形態によれば、ビデオ信号エンコーディング装置において、プロセッサを含み、前記プロセッサは、現在ブロックの動き補償のために参照される参照ブロックの位置に基づいて前記現在ブロックの動きベクトルを獲得し、第１方法及び第２方法のうち、いずれか１つを使用して前記現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成し、前記ＭＶＰ候補リストが含む複数の候補のうちのいずれか１つと前記現在ブロックの動きベクトルとの間の差に基づいて動きベクトル差分値を獲得し、前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、シグナリングされる動きベクトル差分値を決定し、かつ前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わり、前記シグナリングされる動きベクトル差分値を含むビットストリームを生成する、エンコーディング装置が提供される。
【００１６】
前記プロセッサは、前記第１解像度セット及び前記第２解像度セットのうちのいずれか１つが含む複数の可用解像度のうち、いずれか１つを指示する指示子を決定し、前記指示子及び前記シグナリングされる動きベクトル差分値を含むビットストリームを生成することができる。この際、前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わることができる。
【００１７】
また、本発明の実施形態によれば、ビットストリームを格納するコンピュータにより読取可能な記録媒体において、前記ビットストリームは、現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて修正された前記現在ブロックの修正された動きベクトル差分値を含み、かつ前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、第１方法及び第２方法のうち、どの方法を使用して前記現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストが構成されるかによって変わり、ビットストリームを格納するコンピュータにより読取可能な記録媒体が提供される。
【００１８】
前記ビットストリームは、前記第１解像度セット及び前記第２解像度セットのうちのいずれか１つが含む複数の可用解像度のうち、前記現在ブロックの動きベクトル差分値の解像度を指示する指示子をさらに含むことができる。この際、前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わることができる。
【発明の効果】
【００１９】
本発明の実施形態によれば、ビデオ信号のコーディング効率が高まることができる。また、本発明の一実施形態によれば、現在ブロックのインター予測に関するシグナリング効率が高まることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施例によるビデオ信号エンコーディング装置の概略的なブロック図である。
【図２】本発明の一実施例によるビデオ信号デコーディング装置の概略的なブロック図である。
【図３】ピクチャ内でコーディングツリーユニットがコーディングユニットに分割される実施例を示す図である。
【図４】クォードツリー及びマルチ−タイプツリーの分割をシグナリングする方法の一実施例を示す図である。
【図５】本発明の実施例によるイントラ予測方法をより詳しく示す図である。
【図６】本発明の実施例によるイントラ予測方法をより詳しく示す図である。
【図７】本発明の一実施形態に従うインター予測方法を図示する。
【図８】本発明の一実施形態に従って現在ブロックの動きベクトルがシグナリングされる方法を示す図である。
【図９】本発明の一実施形態に従って現在ブロックの動きベクトル差分値がシグナリングされる方法を示す図である。
【図１０】本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法を示す図である。
【図１１】本発明の他の一実施形態に従って現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法を示す図である。
【図１２】本発明の他の一実施形態に従って現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法を示す図である。
【図１３】解像度セットが含む可用解像度の構成が変わる一実施形態を示す図である。
【図１４】現在ブロックの動きベクトル予測子によって現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法の一実施形態を示す図である。
【図１５】現在ブロックの動きベクトル予測子によって動きベクトル差分値の解像度がシグナリングされる方法の他の一実施形態を示す図である。
【図１６】本発明の一実施形態に従ってテンプレートマッチング方法に基づいて動きベクトル差分値の解像度が獲得される方法を示す図である。
【図１７】本発明の一実施形態に従って両側マッチング方法に基づいて動きベクトル差分値の解像度が獲得される方法を示す図である。
【図１８】本発明の一実施形態に従って現在ブロックの参照ピクチャリスト別に動きベクトル差分値の解像度がシグナリングされる方法を示す図である。
【図１９】現在ブロックの動きベクトル差分値の解像度がピクチャの解像度によってシグナリングされる方法の一実施形態を示す図である。
【図２０】本発明の一実施形態に従って現在ブロックの参照ピクチャのサイズに基づいて動きベクトル差分値の解像度がシグナリングされる方法を示す図である。
【図２１】本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度が獲得される方法を示すフローチャートである。
【図２２】本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度が獲得される方法を示すフローチャートである。
【図２３】本発明の一実施形態に従って現在ブロックの動きベクトルが獲得される方法を示すフローチャートである。
【図２４】本発明の一実施形態に従って現在ブロックの動きベクトルが獲得される方法を示すフローチャートである。
【図２５】本発明の一実施形態に従って現在ブロックの動きベクトル差分値の符号ビットが暗黙的にシグナリングされる方法を示す図である。
【図２６】本発明の一実施形態に従って現在ブロックの動きベクトル差分値の符号ビットが暗黙的にシグナリングされる方法を示す図である。
【図２７】本発明の一実施形態に従って現在ブロックの動きベクトル差分値の符号ビットが暗黙的にシグナリングされる方法を示す図である。
【図２８】図２５乃至図２７の実施形態に対するシンタックスの例示を示す図である。
【図２９】本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度及び動きベクトル予測子がシグナリングされる方法を示す図である。
【図３０】本発明の一実施形態に従って複数の動きベクトル差分値に基づいて現在ブロックの動きベクトルが誘導される方法を示す図である。
【図３１】本発明の一実施形態に従ってアフィンモデルに基づく動き補償を示す図である。
【図３２】４−パラメータアフィン動き補償方法の一実施形態を図示する。
【図３３】６−パラメータアフィン動き補償方法の一実施形態を図示する。
【図３４】サブブロック基盤のアフィン動き補償方法の一実施形態を図示する。
【図３５】現在ブロックの予測のためのコントロールポイント動きベクトルセットを獲得する方法の実施形態を図示する。
【図３６】現在ブロックの予測のためのコントロールポイント動きベクトルセットを獲得する方法の実施形態を図示する。
【図３７】現在ブロックの予測のためのコントロールポイント動きベクトルセットを獲得する方法の実施形態を図示する。
【図３８】現在ブロックの予測のためのコントロールポイント動きベクトルセットを獲得する方法の実施形態を図示する。
【図３９】本発明の他の一実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す図である。
【図４０】本発明の一実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す。
【図４１】本発明の一実施形態に従って現在ブロックのコントロールポイント動きベクトル差分値がシグナリングされる方法を示す。
【図４２】本発明の他の一実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す。
【図４３】図４２を通じて説明された実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される場合、コントロールポイント動きベクトル差分値がシグナリングされる方法を示す。
【図４４】本発明の一実施形態に従う現在ブロックのコントロールポイント動きベクトル差分値がシグナリングされる方法を示す図である。
【図４５】本発明の一実施形態に従って現在ブロックのコントロールポイント動きベクトル差分値に対する差分予測子を用いて動きベクトルが獲得される方法を示す図である。
【図４６】本発明の一実施形態に従って差分予測子を用いて現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す図である。
【図４７】本発明の他の一実施形態に従って差分予測子を用いて現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す図である。
【図４８】本発明の一実施形態に従って差分予測子が獲得される方法を示す図である。
【図４９】本発明の一実施形態に従って現在ブロックの差分ベクトル予測子が決定される方法を示す図である。
【図５０】現在ブロックのコントロールポイント動きベクトル差分値がシグナリングされる方法を示す図である。
【図５１】本発明の他の一実施形態に従って現在ブロックのコントロールポイント動きベクトルが誘導される方法を示す図である。
【図５２】本発明の一実施形態に従って現在ブロックのアフィン動き補償のための複数のコントロールポイント動きベクトルが誘導される方法を示す図である。
【図５３】現在ブロックが複数のサブブロックに分割される形態の多様な実施形態を図示したものである。
【図５４】現在ブロックのイントラ予測モードによって現在ブロックが分割される方法を図示したものである。
【図５５】本発明の一実施形態に従って現在ブロックの参照サンプルのサンプル値に基づいて現在ブロックが複数のサブブロックに分割される方法を図示したものである。
【図５６】本発明の一実施形態に従って一次的サブブロックグループと２次的サブブロックグループが決定される方法を図示したものである。
【図５７】本発明の一実施形態に従って一次的サブブロックグループと２次的サブブロックグループが予測される方法を図示したものである。
【図５８】本発明の一実施形態に従ってコーディングツリーユニットが処理される順序を図示したものである。
【図５９】本発明の一実施形態に従う両方向イントラ予測方法を図示したものである。
【図６０】本発明の一実施形態に従って現在ブロックから分割された複数のサブブロックの各々が予測される方法を図示したものである。
【発明を実施するための形態】
【００２１】
本明細書で使用される用語は本発明における機能を考慮しながらできるだけ現在広く使用されている一般的な用語を選択したが、これは当分野に携わる技術者の意図、慣例または新たな技術の出現などによって異なり得る。また、特定の場合は出願人が任意に選定した用語もあるが、この場合、該当の発明を実施する形態の部分においてその意味を記載する。よって、本明細書で使用される用語は、単なる用語の名称ではなく、その用語の有する実質的な意味と本明細書全般にわたる内容に基づいて解釈すべきであることを明らかにする。
【００２２】
本明細書において、一部用語は以下のように解釈される。コーディングは、場合によってはエンコーディングまたはでコーディングに解釈される。本明細書において、ビデオ信号のエンコーディング（符号化）を行ってビデオ信号のビットストリームを生成する装置はエンコーディング装置またはエンコーダと称され、ビデオ信号ビットストリームのデコーディング（復号化）を行ってビデオ信号を復元する装置はデコーディング装置またはデコーダと称される。また、本明細書において、ビデオ信号処理装置はエンコーダ及びデコーダをいずれも含む概念の用語として使用される。情報（ｉｎｆｏｒｍａｔｉｏｎ）は値（ｖａｌｕｅｓ）、パラメータ（ｐａｒａｍｅｔｅｒ）、係数（ｃｏｅｆｆｉｃｉｅｎｔｓ）、成分（ｅｌｅｍｅｎｔｓ）などをいずれも含む用語であって、場合によっては意味が異なるように解釈されることがあるため、本発明はこれに限らない。「ユニット」は映像処理の基本単位またはピクチャの特定位置を指す意味で使用され、輝度（ｌｕｍａ）成分と色差（ｃｈｒｏｍａ）成分のうち少なくとも一つを含むイメージ領域を指す。また、「ブロック」は輝度成分及び色差成分（つまり、Ｃｂ及びＣｒ）のうち特定成分を含むイメージ領域を指す。但し、実施例によって「ユニット」、「ブロック」、「パーティション」、及び「領域」などの用語は互いに混合して使用されてもよい。また、本明細書において、ユニットはコーディングユニット、予測ユニット、変換ユニットをいずれも含む概念として使用される。ピクチャはフィールドまたはフレームを指し、実施例によって前記用語は互いに混用して使用される。
【００２３】
図１は、本発明の一実施例によるビデオ信号エンコーディング装置１００の概略的なブロック図である。図１を参照すると、本明細書のエンコーディング装置１００は、変換部１１０、量子化部１１５、逆量子化部１２０、逆変換部１２５、フィルタリング部１３０、予測部１５０、及びエントロピーコーディング部１６０を含む。
【００２４】
変換部１１０は、入力されたビデオ信号と予測部１５０で生成された予測信号の差であるレジデュアル信号を変換して変換係数値を獲得する。例えば、離散コサイン変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ、ＤＣＴ）、離散サイン変換（Ｄｉｓｃｒｅｔｅ  Ｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ、ＤＳＴ）、またはウェーブレット変換（Ｗａｖｅｌｅｔ  Ｔｒａｎｓｆｏｒｍ）などが使用される。離散コサイン変換及び離散サイン変換は、入力されたピクチャ信号をブロックの形態に分けて変換を行うようになる。変換において、変換領域内の値の分布と特性によってコーディング効率が異なり得る。量子化部１１５は、変換部１１０内で出力された変換係数の値を量子化する。
【００２５】
コーディング効率を上げるために、ピクチャ信号をそのままコーディングするのではなく、予測部１５０を介して予めコーディングされた領域を利用してピクチャを予測し、予測されたピクチャに原本ピクチャと予測ピクチャの間のレジデュアル値を足して復元ピクチャを獲得する方法が使用される。エンコーダとデコーダでミスマッチが発生しないように、エンコーダで予測を行う際にはデコーダでも使用可能な情報を使用すべきである。そのために、エンコーダでは符号化した現在ブロックを更に復元する過程を行う。逆量子化部１２０では変換係数値を逆量子化し、逆変換部１２５では逆量子化された変換係数値を利用してレジデュアル値を復元する。一方、フィルタリング部１３０は、復元されたピクチャの品質改善及び符号化効率の向上のためのフィルタリング演算を行う。例えば、デブロッキングフィルタ、サンプル適応的オフセット（Ｓａｍｐｌｅ  Ａｄｐａｔｉｖｅ  Ｏｆｆｓｅｔ、ＳＡＯ）、及び適応的ループフィルタなどが含まれてもよい。フィルタリングを経たピクチャは、出力されるか参照ピクチャとして利用するために復号ピクチャバッファ（Ｄｅｃｏｄｅｄ  Ｐｉｃｔｕｒｅ  Ｂｕｆｆｅｒ、ＤＰＢ）１５６に貯蔵される。
【００２６】
予測部１５０は、イントラ予測部１５２とインター予測部１５４を含む。イントラ予測部１５２は現在ピクチャ内でイントラ（ｉｎｔｒａ）予測を行い、インター予測部１５４は復号ピクチャバッファ１５６に貯蔵された参照バッファを利用して現在ピクチャを予測するインター（ｉｎｔｅｒ）予測を行う。イントラ予測部１５２は、現在ピクチャ内の復元されたサンプルからイントラ予測を行い、イントラ符号化情報をエントロピーコーディング部１６０に伝達する。イントラ符号化情報は、イントラ予測モード、ＭＰＭ（Ｍｏｓｔ  Ｐｒｏｂａｂｌｅ  Ｍｏｄｅ）フラッグ、ＭＰＭインデックスのうち少なくとも一つを含む。イントラ符号化情報は参照サンプルに関する情報を含む。インター予測部１５４は、モーション推定部１５４ａ及びモーション補償部１５４ｂを含んで構成される。モーション推定部１５４ａは、復元された参照信号ピクチャの特定領域を参照して現在領域のモーションベクトル値を獲得する。モーション推定部１５４ａは、参照領域に対するモーション情報セット（参照ピクチャインデックス、モーションベクトル情報）をエントロピーコーディング部１６０に伝達する。モーション補償部１５４ｂは、モーション補償部１５４ａから伝達されたモーションベクトル値を利用してモーション補償を行う。インター予測部１５４は参照領域に対する動き情報セットを含むインター符号化情報をエントロピーコーディング部１６０に伝達する。
【００２７】
更なる実施例によって、予測部１５０はイントラブロックコピー（ｂｌｏｃｋ  ｃｏｐｙ、ＢＣ）予測部（図示せず）を含む。イントラＢＣ予測部は、現在ピクチャ内の復元されたサンプルからイントラＢＣ予測を行い、イントラＢＣ符号化情報をエントロピーコーディング部１６０に伝達する。イントラＢＣ予測部は、現在ピクチャ内の特定領域を参照して現在領域の予測に利用される参照領域を示すブロックベクトル値を獲得する。イントラＢＣ予測部は、獲得されたブロックベクトル値を利用してイントラＢＣ予測を行う。イントラＢＣ予測部は、イントラＢＣ符号化情報をエントロピーコーディング部１６０に伝達する。イントラＢＣ予測部はブロックベクトル情報を含む。
【００２８】
上述したピクチャ予測が行われれば、変換部１１０は原本ピクチャと予測ピクチャの間のレジデュアル値を変換して変換係数値を獲得する。この際、変換はピクチャ内で特定ブロック単位で行われるが、特定ブロックのサイズは予め設定された範囲内で可変する。量子化部１１５は、変換部１１０で生成された変換係数の値を量子化してエントロピーコーディング部１６０に伝達する。
【００２９】
エントロピーコーディング部１６０は量子化された変換係数、イントラ符号化情報、及びインター符号化情報などをエントロピーコーディングしてビデオ信号ビットストリームを生成する。エントロピーコーディング部１６０では、可変長コーディング（Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｅｉｎｇ、ＶＬＣ）方式と算術コーディング（ａｒｉｔｈｍｅｔｉｃ  ｃｏｄｉｎｇ）方式などが使用される。可変長コーディング（ＶＬＣ）方式は入力されるシンボルを連続したコードワードに変換するが、コードワードの長さは可変的である。例えば、よく発生するシンボルは短いコードワードで、よく発生しないシンボルは長いコードワードで表現する。可変長コーディング方式として、コンテキスト基盤適応型可変長コーディング（Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ、ＣＡＶＬＣ）方式が使用される。算術コーディングは連続したデータシンボルを一つの素数に変換するが、算術コーディングは各シンボルを表現するために必要な最適の素数ビットを得る。算術コーディングとして、コンテキスト基盤適合型算術符号化（Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ、ＣＡＢＡＣ）方式が使用される。
【００３０】
前記生成されたビットストリームは、ＮＡＬ（Ｎｅｔｗｏｒｋ  Ａｂｓｔｒａｃｔｉｏｎ  Ｌａｙｅｒ）ユニットを基本単位にカプセル化される。ＮＡＬユニットは、符号化された整数個のコーディングツリーユニット（ｃｏｄｉｎｇ  ｔｒｅｅ  ｕｎｉｔ）を含む。ビデオデコーダでビットストリームを復号化するためには、まずビットストリームをＮＡＬユニット単位に分離した後、分離されたそれぞれのＮＡＬユニットを復号化すべきである。一方、ビデオ信号ビットストリームの復号化のために必要な情報は、ピクチャパラメータセット（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ、ＰＰＳ）、シーケンスパラメータセット（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ、ＳＰＳ）、ビデオパラメータセット（Ｖｉｄｅｏ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ、ＶＰＳ）などのような上位レベルセットのＲＢＳＰ（Ｒａｗ  Ｂｙｔｅ  Ｓｅｑｕｅｎｃｅ  Ｐａｙｌｏａｄ）を介して伝送される。
【００３１】
一方、図１のブロック図は本発明の一実施例によるエンコーディング装置１００を示し、分離して示したブロックはエンコーディング装置１００のエレメントを論理的に区別して示している。よって、上述したエンコーディング装置１００のエレメントは、ディバイスの設計に応じて一つのチップまたは複数のチップに取り付けられる。一実施例によると、上述したエンコーディング装置１００の各エレメントの動作はプロセッサ（図示せず）によって行われる。
【００３２】
図２は、本発明の実施例によるビデオ信号デコーディング装置の２００概略的なブロック図である。図２を参照すると、本明細書のデコーディング装置２００は、エントロピーデコーディング部２１０、逆量子化部２２０、逆変換部２２５、フィルタリング部２３０、及び予測部２５０を含む。
【００３３】
エントロピーデコーディング部２１０はビデオ信号ビットストリームをエントロピーデコーディングして、各領域に対する変換係数、イントラ符号化情報、インター符号化情報などを抽出する。逆量子化部２２０はエントロピーデコーディングされた変換係数を逆量子化し、逆変換部２２５は逆量子化された変換係数を用いてレジデュアル値を復元する。ビデオ信号処理装置２００は逆変換部２２５から獲得されたレジデュアル値を予測部２５０から獲得された予測子（predictor）と合算して元の画素値を復元する。
【００３４】
一方、フィルタリング部２３０は、ピクチャに対するフィルタリングを行って画質を向上させる。ここには、ブロック歪曲現象を減少させるためのデブロッキングフィルタ及び／またはピクチャ全体の歪曲を除去するための適応的ループフィルタなどが含まれる。フィルタリングを経たピクチャは出力されるか、次のピクチャに対する参照ピクチャとして利用するために復号ピクチャバッファ（ＤＰＢ）２５６に貯蔵される。
【００３５】
予測部２５０は、イントラ予測部２５２及びインター予測部２５４を含む。予測部２５０は、前述したエントロピーデコーディング部２１０を通じて復号化された符号化タイプ、各領域に対する変換係数、イントラ／インター符号化情報などを活用して予測ピクチャを生成する。復号化が遂行される現在ブロックを復元するために、現在ブロックが含まれた現在ピクチャまたは他のピクチャの復号化された領域が利用できる。復元に現在ピクチャのみを用いる、即ちイントラ予測またはイントラＢＣ予測のみを遂行するピクチャ（または、タイル／スライス）をイントラピクチャまたはＩピクチャ（または、タイル／スライス）、イントラ予測、インター予測及びイントラＢＣ予測を全て遂行することができるピクチャ（または、タイル／スライス）をインターピクチャ（または、タイル／スライス）という。インターピクチャ（または、タイル／スライス）のうち、各ブロックのサンプル値を予測するために最大１つの動きベクトル及び参照ピクチャインデックスを用いるピクチャ（または、タイル／スライス）を予測ピクチャ（predictive picture）またはＰピクチャ（または、タイル／スライス）といい、最大２つの動きベクトル及び参照ピクチャインデックスを用いるピクチャ（または、タイル／スライス）を双予測ピクチャ（Bi-predictive picture）またはＢピクチャ（または、タイル／スライス）という。言い換えると、Ｐピクチャ（または、タイル／スライス）は各ブロックを予測するために最大１つの動き情報セットを用いて、Ｂピクチャ（または、タイル／スライス）は各ブロックを予測するために最大２つの動き情報セットを用いる。ここで、動き情報セットは１つ以上の動きベクトルと１つの参照ピクチャインデックスを含む。
【００３６】
イントラ予測部２５２は、イントラ符号化情報及び現在ピクチャ内の復元されたサンプルを利用して予測ブロックを生成する。上述したように、イントラ符号化情報は、イントラ予測モード、ＭＰＭ（ＭＯＳＴ  Ｐｒｏｂａｂｌｅ  Ｍｏｄｅ）フラッグ、ＭＰＭインデックスのうち少なくとも一つを含む。イントラ予測部２５２は、現在ブロックの左側及び／または上側に位置する復元されたサンプルを参照サンプルとして利用して、現在ブロックのサンプル値を予測する。本開示において、復元されたサンプル、参照サンプル、及び現在ブロックのサンプルはピクセルを示す。また、サンプル値（ｓａｍｐｌｅ  ｖａｌｕｅ）はピクセル値を示す。
【００３７】
一実施例において、参照サンプルは現在ブロックの周辺ブロックに含まれたサンプルである。例えば、参照サンプルは現在ブロックの左側境界に隣接したサンプル及び／または上側境界に隣接したサンプルである。また、参照サンプルは現在ブロックの周辺ブロックのサンプルのうち、現在ブロックの左側境界から予め設定された距離以内のライン上に位置するサンプル及び／または現在ブロックの上側境界から予め設定された距離以内のライン上に位置するサンプルである。この際、現在ブロックの周辺ブロックは、現在ブロックに隣接した左側（Ｌ）ブロック、上側（Ａ）ブロック、下左側（Ｂｅｌｏｗ  Ｌｅｆｔ、ＢＬ）ブロック、右上側（Ａｂｏｖｅ  Ｒｉｇｈｔ、ＡＲ）ブロック、または左上側（Ａｂｏｖｅ  Ｌｅｆｔ、ＡＬ）ブロックのうち少なくとも一つを含む。
【００３８】
インター予測部２５４は、復号ピクチャバッファ２５６に貯蔵された参照ピクチャ及びインター符号化情報を利用して予測ブロックを生成する。インター符号化情報は、参照ブロックに対する現在ブロックのモーション情報セット（参照ピクチャインデックス、モーションベクトルなど）を含む。インター予測には、Ｌ０予測、Ｌ１予測、及び双予測（Ｂｉ−ｐｒｅｄｉｃｔｉｏｎ）がある。Ｌ０予測はＬ０ピクチャリストに含まれた一つの参照ピクチャを利用した予測であり、Ｌ１予測はＬ１ピクチャリストに含まれた一つの参照ピクチャを利用した予測を意味する。そのためには、１セットのモーション情報（例えば、モーションベクトル及び参照ピクチャインデックス）が必要である。双予測方式では最大２つの参照領域を利用するが、この２つの参照領域は同じ参照ピクチャに存在してもよく、互いに異なるピクチャにそれぞれ存在してもよい。つまり、双予測方式では最大２セットのモーション情報（例えば、モーションベクトル及び参照ピクチャインデックス）が利用されるが、２つのモーションベクトルが同じ参照ピクチャインデックスに対応してもよく、互いに異なる参照ピクチャインデックスに対応してもよい。この際、参照ピクチャは時間的に現在ピクチャの以前や以降のいずれにも表示（または出力）される。
【００３９】
インター予測部２５４は、モーションベクトル及び参照ピクチャインデックスを利用して現在の参照ブロックを獲得する。前記参照ブロックは、参照ピクチャインデックスに対応する参照ピクチャ内に存在する。また、モーションベクトルによって特定されたブロックのサンプル値またはこれの補間（ｉｎｔｅｒｐｏｌａｔｉｏｎ）された値が現在ブロックの予測子（ｐｒｅｄｉｃｔｏｒ）として利用される。サブペル（ｓｕｂ−ｐｅｌ）単位のピクセル正確度を有するモーション予測のために、例えば、輝度信号に対して８−タブ補間フィルタが、色差信号に対して４−タブ補間フィルタが使用される。但し、サブペル単位のモーション予測のための補間フィルタはこれに限らない。このように、インター予測部２５４は、以前復元されたピクチャから現在ユニットのテクスチャを予測するモーション補償（ｍｏｔｉｏｎ  ｃｏｍｐｅｎｓａｔｉｏｎ）を行う。この際、インター予測部はモーション情報セットを利用する。
【００４０】
追加的な実施形態に従って、予測部２５０はイントラＢＣ予測部（図示せず）を含むことができる。イントラＢＣ予測部は現在ピクチャ内の復元されたサンプルからイントラＢＣ予測を遂行して、イントラＢＣ符号化情報をエントロピーコーディング部１６０に伝達する。イントラＢＣ予測部は、現在ピクチャ内の特定領域を指示する現在領域のブロックベクトル値を獲得する。イントラＢＣ予測部は獲得されたブロックベクトル値を用いてイントラＢＣ予測を遂行することができる。イントラＢＣ予測部は、イントラＢＣ符号化情報をエントロピーコーディング部１６０に伝達する。イントラＢＣ符号化情報は、ブロックベクトル情報を含むことができる。
【００４１】
前記イントラ予測部２５２またはインター予測部２５４から出力された予測子、及び逆変換部２２５から出力されたレジデュアル値が加えられて復元されたビデオピクチャが生成される。即ち、ビデオ信号デコーディング装置２００は、予測部２５０で生成された予測ブロックと逆変換部２２５から獲得されたレジデュアルを用いて現在ブロックを復元する。
【００４２】
一方、図２のブロック図は本発明の一実施例によるデコーディング装置２００を示し、分離して示したブロックはデコーディング装置２００のエレメントを論理的に区別して示している。よって、上述したデコーディング装置２００のエレメントは、ディバイスの設計に応じて一つのチップまたは複数のチップに取り付けられる。一実施例によると、上述したデコーディング装置２００の各エレメントの動作はプロセッサ（図示せず）によって行われる。
【００４３】
図３は、ピクチャ内でコーディングツリーユニット（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔ、ＣＴＵ）がコーディングユニット（Ｃｏｄｉｎｇ  Ｕｎｉｔｓ、ＣＵｓ）に分割される実施例を示している。ビデオ信号のコーディング過程において、ピクチャはコーディングツリーユニット（ＣＴＵ）のシーケンスに分割される。コーディングツリーユニットは、輝度サンプルのＮＸＮブロックと、それに対応する色差サンプルの２つのブロックからなる。コーディングツリーユニットは、複数のコーディングユニットに分割される。コーディングツリーユニットは分割されずにリーフノードになってもよい。この場合、コーディングツリーユニット自体がコーディングユニットになり得る。コーディングユニットは上述したビデオ信号の処理過程、つまり、イントラ／インター予測、変換、量子化及び／またはエントロピーコーディングなどの過程でピクチャを処理するための基本単位を指す。一つのピクチャ内において、コーディングユニットのサイズ及び模様は一定ではない。コーディングユニットは正方形または長方形の模様を有する。長方形コーディングユニット（または、長方形ブロック）は垂直コーディングユニット（または、垂直ブロック）と水平コーディングユニット（または、水平ブロック）を含む。本明細書において、垂直ブロックは高さが幅より大きいブロックであり、水平ブロックは幅が高さより大きいブロックである。また、本明細書において、正方形ではない（ｎｏｎ−ｓｑｕａｒｅ）ブロックは長方形ブロックを指すが、本発明はこれに限らない。
【００４４】
図３を参照すると、コーディングツリーユニットは、まずクォードツリー（Ｑｕａｄ  Ｔｒｅｅ、ＱＴ）構造に分割される。つまり、クォードツリー構造において、２Ｎ×２Ｎのサイズを有する一つのノードはＮ×Ｎのサイズを有する４つのノードに分割される。本明細書において、クォードツリーは４進（ｑｕａｔｅｒｎａｒｙ）ツリーとも称される。クォードツリー分割は再帰的に行われ、全てのノードが同じ深さに分割される必要はない。
【００４５】
一方、上述したクォードツリーのリーフノード（ｌｅａｆ  ｎｏｄｅ）は、マルチ−タイプツリー（Ｍｕｌｔｉ−Ｔｙｐｅ  Ｔｒｅｅ、ＭＴＴ）構造に更に分割される。本発明の実施例によると、マルチタイプツリー構造では一つのノードが水平または垂直分割の２進（ｂｉｎａｒｙ、バイナリー）または３進（ｔｅｒｎａｒｙ、ターナリー）ツリー構造に分割される。つまり、マルチ−タイプツリー構造には、垂直バイナリー分割、水平バイナリー分割、垂直ターナリー分割、及び水平ターナリー分割の４つの分割構造が存在する。本発明の実施例によると、前記各ツリー構造において、ノードの幅及び高さはいずれも２の累乗値を有する。例えば、バイナリーツリー（ｂｉｎａｒｙ  Ｔｒｅｅ、ＢＴ）構造において、２Ｎ×２Ｎのサイズのノードは垂直バイナリー分割によって２つのＮ×２Ｎノードに分割され、水平バイナリー分割によって２つの２Ｎ×Ｎノードに分割される。また、ターナリーツリー（Ｔｅｒｎａｒｙ  Ｔｒｅｅ、ＴＴ）構造において、２Ｎ×２Ｎのサイズのノードは垂直ターナリー分割によって（Ｎ／２）×２Ｎ、Ｎ×２Ｎ及び（Ｎ／２）×２Ｎのノードに分割され、水平ターナリー分割によって２Ｎ×（Ｎ／２）、２Ｎ×Ｎ及び２Ｎ×（Ｎ／２）のノードに分割される。このようなマルチ−タイプツリー分割は再帰的に行われる。
【００４６】
マルチ−タイプツリーのリーフノードはコーディングユニットできる。コーディングユニットに対する分割が指示されないか、またはコーディングユニットが最大変換長さに比べて大きくない場合、該当コーディングユニットはこれ以上の分割無しで予測及び変換の単位に使われる。一方、上述したクォードツリー及びマルチ−タイプツリーにおいて、次のパラメータのうち少なくとも一つが事前に定義されるか、ＰＰＳ、ＳＰＳ、ＶＰＳなどのような上位レベルセットのＲＢＳＰを介して伝送される。１）ＣＴＵサイズ：クォードツリーのルートノード（ｒｏｏｔ  ｎｏｄｅ）のサイズ、２）最小ＱＴサイズ（ＭｉｎＱｔＳｉｚｅ）：許容された最小ＱＴリーフノードのサイズ、３）最大ＢＴサイズ（ＭａｘＢｔＳｉｚｅ）：許容された最大ＢＴルートノードのサイズ、４）最大ＴＴサイズ（ＭａｘＴｔＳｉｚｅ）：許容された最大ＴＴルートノードのサイズ、５）最大ＭＴＴ深さ（ＭａｘＭｔｔＤｅｐｔｈ）：ＱＴのリーフノードからのＭＴＴ分割の最大許容深さ、６）最小ＢＴサイズ（ＭｉｎＢｔＳｉｚｅ）：許容された最小ＢＴリーフノードのサイズ、７）最小ＴＴサイズ：許容された最小ＴＴリーフノードのサイズ。
【００４７】
図４は、クワッドツリー及びマルチ−タイプツリーの分割をシグナリングする方法の一実施形態を図示する。前述したクワッドツリー及びマルチ−タイプツリーの分割をシグナリングするために既設定されたフラグが使われることができる。図４を参照すると、クワッドツリーノードの分割するか否かを指示するフラグ‘qt_split_flag’、マルチ−タイプツリーノードの分割するか否かを指示するフラグ‘mtt_split_flag’、マルチ−タイプツリーノードの分割方向を指示するフラグ‘mtt_split_vertical_flag’またはマルチ−タイプツリーノードの分割形態を指示するフラグ‘mtt_split_binary_flag’のうち、少なくとも１つが使われることができる。
【００４８】
本発明の実施形態によれば、コーディングツリーユニットはクワッドツリーのルートノードであり、クワッドツリー構造に先に分割できる。クワッドツリー構造では各々のノード‘QT_node’別に‘qt_split_flag’がシグナリングされる。‘qt_split_flag’の値が１の場合、該当ノードは４個の正四角形ノードに分割され、‘qt_split_flag’の値が０の場合、該当ノードはクワッドツリーのリーフノード‘QT_leaf_node’となる。
【００４９】
各々のクワッドツリーリーフノード‘QT_leaf_node’はマルチ−タイプツリー構造にさらに分割できる。マルチ−タイプツリー構造では、各々のノード‘MTT_node’別に‘mtt_split_flag’がシグナリングされる。‘mtt_split_flag’の値が１の場合、該当ノードは複数の矩形ノードに分割され、‘mtt_split_flag’の値が０の場合、該当ノードはマルチ−タイプツリーのリーフノード‘MTT_leaf_node’となる。マルチ−タイプツリーノード‘MTT_node’が複数の矩形ノードに分割される場合（即ち、‘mtt_split_flag’の値が１の場合）、ノード‘MTT_node’のための‘mtt_split_vertical_flag’及び‘mtt_split_binary_flag’が追加でシグナリングできる。‘mtt_split_vertical_flag’の値が１の場合、ノード‘MTT_node’の垂直分割が指示され、‘mtt_split_vertical_flag’の値が０の場合、ノード‘MTT_node’の水平分割が指示される。また、‘mtt_split_binary_flag’の値が１の場合、ノード‘MTT_node’は２つの矩形ノードに分割され、‘mtt_split_binary_flag’の値が０の場合、ノード‘MTT_node’は３個の矩形ノードに分割される。
【００５０】
コーティングのためのピクチャ予測（モーション補償）はそれ以上分けられないコーディングユニット（つまり、コーディングユニットツリーのリーフノード）を対象に行われる。このような予測を行う基本単位を、以下では予測ユニット（ｐｒｅｄｉｃｔｉｏｎ  ｕｎｉｔ）または予測ブロック（ｐｒｅｄｉｃｔｉｏｎ  ｂｌｏｃｋ）という。
【００５１】
以下、本明細書で使用されるユニットという用語は、予測を行う基本単位である前記予測ユニットを代替する用語として使用される。但し、本発明はこれに限らず、より広い意味では、前記コーディングユニットを含む概念として理解される。
【００５２】
図５及び図６は、本発明の実施例によるイントラ予測方法をより詳しく示す図である。上述したように、イントラ予測部は、現在ブロックの左側及び／または上側に位置する復元されたサンプルを参照サンプルとして利用して、現在ブロックのサンプル値を予測する。
【００５３】
まず、図５はイントラ予測モードで現在ブロックを予測するために使用される参照サンプルの一実施例を示す。一実施例によると、参照サンプルは現在ブロックの左側境界に隣接したサンプル及び／または上側境界に隣接したサンプルである。図５に示したように、現在ブロックのサイズがＷ×Ｈで現在ブロックに隣接した単一参照ライン（ｌｉｎｅ）のサンプルがイントラ予測に使用されれば、現在ブロックの左側及び／または上側に位置した最大２Ｗ＋２Ｈ＋１個の周辺サンプルを使用して参照サンプルが設定される。
【００５４】
本発明の追加的な実施形態によれば、現在ブロックのイントラ予測のために複数の参照ライン上のサンプルが使われることができる。複数の参照ラインは、現在ブロックの境界から既設定された距離以内に位置したｎ個のラインから構成できる。この場合、現在ブロックのイントラ予測のために使われる少なくとも１つの参照ラインを指示する別途の参照ライン情報がシグナリングできる。具体的に、参照ライン情報は複数の参照ラインのうち、いずれか１つを指示するインデックスを含むことができる。
【００５５】
また、参照サンプルとして使用される少なくとも一部のサンプルがまだ復元されていなければ、イントラ予測部は参照サンプルパッディング過程を行って参照サンプルを獲得する。また、イントラ予測部は、イントラ予測の誤差を減らすために参照サンプルフィルタリング過程を行う。つまり、周辺サンプル及び／または参照サンプルパッディング過程によって獲得された参照サンプルにフィルタリングを行って、フィルタリングされた参照サンプルを獲得する。イントラ予測部は、フィルタリングされていない参照サンプル、またはフィルタリングされた参照サンプルを利用して現在ブロックのサンプルを予測する。本開示において、周辺サンプルは少なくとも一つの参照ライン上のサンプルを含む。例えば、周辺サンプルは現在ブロックの境界に隣接したライン上の隣接サンプルを含んでもよい。
【００５６】
次に、図６はイントラ予測に使われる予測モードの一実施形態を図示する。イントラ予測のために、イントラ予測方向を指示するイントラ予測モード情報がシグナリングできる。イントラ予測モード情報は、イントラ予測モードセットを構成する複数のイントラ予測モードのうち、いずれか１つを指示する。現在ブロックがイントラ予測されたブロックである場合、デコーダはビットストリームから現在ブロックのイントラ予測モード情報を受信する。デコーダのイントラ予測部は、抽出されたイントラ予測モード情報に基づいて現在ブロックに対するイントラ予測を遂行する。
【００５７】
本発明の実施例によると、イントラ予測モードセットは、イントラ予測に使用される全てのイントラ予測モード（例えば、総６７個のイントラ予測モード）を含む。より詳しくは、イントラ予測モードセットは、平面モード、ＤＣモード、及び複数の（例えば、６５個の）角度モード（つまり、方向モード）を含む。一部の実施形態で、イントラ予測モードセットは全てのイントラ予測モードのうちの一部で構成されることもできる。それぞれのイントラ予測モードは、予め設定されたインデックス（つまり、イントラ予測モードインデックス）を介して指示される。例えば、図６に示したように、イントラ予測モードインデックス０は平面（ｐｌａｎａｒ）モードを指示し、イントラ予測モードインデックス１はＤＣモードを指示する。また、イントラ予測モードインデックス２乃至６６は、互いに異なる角度モードをそれぞれ指示する。この際、イントラ予測モードインデックス２は水平対角（Ｈｏｒｉｚｏｎｔａｌ  Ｄｉａｇｏｎａｌ、ＨＤＩＡ）モードを指示し、イントラ予測モードインデックス１８は水平（Ｈｏｒｉｚｏｎｔａｌ、ＨＯＲ）モードを指示し、イントラ予測モードインデックス３４は対角（Ｄｉａｇｏｎａｌ、ＤＩＡ）モードを指示し、イントラ予測モードインデックス５０は水直（Ｖｅｒｔｉｃａｌ、ＶＥＲ）モードを指示し、イントラ予測モードインデックス６６は垂直対角（Ｖｅｒｔｉｃａｌ  Ｄｉａｇｏｎａｌ、ＶＤＩＡ）モードを指示する。
【００５８】
以下、図７を参照して本発明の一実施形態に従うインター予測方法について説明する。本開示で、インター予測方法は並進運動（translation motion）に最適化された一般インター予測方法及び図３１乃至図５２を通じて後述するアフィン（affine）モデル基盤のインター予測方法を含むことができる。また、動きベクトルは一般インター予測方法に従う動き補償のための一般動きベクトル及びアフィン動き補償のためのコントロールポイント動きベクトル（control point motion vector）のうち、少なくとも１つを含むことができる。
【００５９】
図７は、本発明の一実施形態に従うインター予測方法を図示する。前述したように、デコーダは復号化された他のピクチャの復元されたサンプルを参照して現在ブロックを予測することができる。図７を参照すると、デコーダは現在ブロック７０１の動き情報セットに基づいて参照ピクチャ７２０内の参照ブロック７０２を獲得する。この際、動き情報セットは参照ピクチャインデックス及び動きベクトル７０３を含むことができる。参照ピクチャインデックスは、参照ピクチャリストで現在ブロックのインター予測のための参照ブロックが含まれた参照ピクチャ７２０を指示する。一実施形態に従って、参照ピクチャリストは前述したＬ０ピクチャリストまたはＬ１ピクチャリストのうち、少なくとも１つを含むことができる。動きベクトル７０３は現在ピクチャ７１０内で現在ブロック７０１の座標値と参照ピクチャ７２０内で参照ブロック７０２の座標値との間のオフセットを示す。デコーダは、参照ブロック７０２のサンプル値に基づいて現在ブロック７０１の予測子を獲得し、前記予測子を用いて現在ブロック７０１を復元する。
【００６０】
具体的に、インコーダーは復元順序が早いピクチャで現在ブロックと類似のブロックを探索して前述した参照ブロックを獲得することができる。例えば、エンコーダは既設定された探索領域内で現在ブロックとサンプル値との差の和が最小となる参照ブロックを探索することができる。この際、現在ブロックと参照ブロックのサンプルとの間の類似度を測定するために、ＳＡＤ（Sum Of Absolute Difference）またはＳＡＴＤ（Sum of Hadamard Transformed Difference）のうち、少なくとも１つが使われることができる。ここで、ＳＡＤは２つのブロックに含まれたサンプル値の差の各々の絶対値を全て足した値でありうる。また、ＳＡＴＤは２つのブロックに含まれたサンプル値の差をアダマール変換（Hadamard Transform）して獲得されたアダマール変換係数の絶対値を全て足した値でありうる。
【００６１】
一方、現在ブロックは１つ以上の参照領域を用いて予測されることもできる。前述したように、現在ブロックは２つ以上の参照領域を用いる双予測方式によりインター予測できる。一実施形態に従って、デコーダは現在ブロックの２つの動き情報セットに基づいて２つの参照ブロックを獲得することができる。また、デコーダは獲得された２つの参照ブロックの各々のサンプル値に基づいて現在ブロックの第１予測子及び第２予測子を獲得することができる。また、デコーダは第１予測子及び第２予測子を用いて現在ブロックを復元することができる。例えば、デコーダは第１予測子及び第２予測子のサンプル別平均に基づいて現在ブロックを復元することができる。
【００６２】
前述したように、現在ブロックの動き補償のために、１つ以上の動き情報セットがシグナリングできる。この際、複数のブロックの各々の動き補償のための動き情報セットの間の類似性が利用できる。例えば、現在ブロックの予測に使われる動き情報セットは既復元された他のサンプルのうち、いずれか１つの予測に使われた動き情報セットから誘導できる。これを通じて、エンコーダ及びデコーダはシグナリングオーバーヘッドを減少させることができる。以下では、現在ブロックの動き情報セットがシグナリングされる多様な実施形態に対して説明する。
【００６３】
図８は、本発明の一実施形態に従って、現在ブロックの動きベクトルがシグナリングされる方法を示す図である。本発明の一実施形態に従って、現在ブロックの動きベクトルは現在ブロックの動きベクトル予測子（motion vector predictor、ＭＶＰ）から誘導できる。一実施形態に従って、現在ブロックの動きベクトルを誘導するために参照される動きベクトル予測子は、動きベクトル予測子（motion vector predictor、ＭＶＰ）候補リストを用いて獲得できる。ＭＶＰ候補リストは既設定された個数のＭＶＰ候補（Candidate 1，Candidate 2，．．．，Candidate N）を含むことができる。
【００６４】
一実施形態に従って、ＭＶＰ候補リストは空間的候補または時間的候補のうち、少なくとも１つを含むことができる。空間的候補は、現在ピクチャ内で現在ブロックから一定の範囲の以内の周辺ブロックの予測に使われた動き情報セットでありうる。空間的候補は、現在ブロックの周辺ブロックのうち、利用可能な周辺ブロックに基づいて構成できる。また、時間的候補は現在ピクチャと他のピクチャ内のブロックの予測に使われた動き情報セットでありうる。例えば、時間的候補は特定参照ピクチャ内で現在ブロックの位置に対応する特定ブロックに基づいて構成できる。この際、特定ブロックの位置は前記参照ピクチャ内で特定ブロックの左上段（top-left）サンプルの位置を示す。追加的な実施形態に従って、ＭＶＰ候補リストはゼロ動きベクトルを含むことができる。追加的な実施形態に従って、現在ブロックのＭＶＰ候補リストが含むＭＶＰ候補に対するラウンディング（rounding）プロセスが遂行できる。この際、後述する現在ブロックの動きベクトル差分値の解像度が利用できる。例えば、現在ブロックのＭＶＰ候補は各々現在ブロックの動きベクトル差分値の解像度に基づいてラウンディングできる。
【００６５】
本開示で、ＭＶＰ候補リストは改善された時間的動きベクトル候補（advanced temporal motion vector prediction、ＡＴＭＶＰ）リスト、マージインター予測のためのマージ候補リスト、アフィン動き補償のためのコントロールポイント動きベクトル候補リスト、サブブロック基盤の動き補償のための時間的動きベクトル候補（subblock-based temporal motion vector prediction、ＳＴＭＶＰ）リスト、及びこれらの組合せを含むことができる。
【００６６】
一実施形態に従って、エンコーダ８１０及びデコーダ８２０は、現在ブロックの動き補償のためのＭＶＰ候補リストを構成することができる。例えば、現在ブロックより先に復元されたサンプルのうち、現在ブロックの動き情報セットと同一または類似の動き情報セットに基づいて予測されている可能性のあるサンプルに対応する候補が存在することができる。エンコーダ８１０及びデコーダ８２０は、該当複数の候補ブロックに基づいて現在ブロックのＭＶＰ候補リストを構成することができる。この際、エンコーダ８１０及びデコーダ８２０はエンコーダ８１０とデコーダ８２０との間に予め定義された規則によってＭＶＰ候補リストを構成することができる。即ち、エンコーダ８１０とデコーダ８２０の各々で構成されたＭＶＰ候補リストは互いに同一でありうる。
【００６７】
また、予め定義された規則は現在ブロックの予測モードによって変わることができる。例えば、現在ブロックの予測モードがアフィンモデル基盤のアフィン予測モードである場合、エンコーダ及びデコーダはアフィンモデルに基づいた第１方法を用いて現在ブロックのＭＶＰ候補リストを構成することができる。第１方法は、コントロールポイント動きベクトル候補リストを獲得する方法でありうる。これに対しては図３１乃至図５２を通じて具体的に説明する。一方、現在ブロックの予測モードがアフィンモデルに基づかない一般インター予測モードである場合、エンコーダ及びデコーダはアフィンモデルに基づかない第２方法を用いて現在ブロックのＭＶＰ候補リストを構成することができる。この際、第１方法と第２方法は互いに異なる方法でありうる。
【００６８】
デコーダ８２０は、現在ブロックのＭＶＰ候補リストが含む少なくとも１つのＭＶＰ候補のうち、いずれか１つに基づいて現在ブロックの動きベクトルを誘導することができる。例えば、エンコーダ８１０は現在ブロックの動きベクトルを誘導するために参照される動きベクトル予測子を指示するＭＶＰインデックス（index）をシグナリングすることができる。デコーダ８２０は、シグナリングされたＭＶＰインデックスに基づいて現在ブロックの動きベクトル予測子を獲得することができる。デコーダ８２０は、動きベクトル予測子を用いて現在ブロックの動きベクトルを誘導することができる。一実施形態に従って、デコーダ８２０はＭＶＰ候補リストから獲得された動きベクトル予測子を別途の動きベクトル差分値無しで、現在ブロックの動きベクトルに使用することができる。デコーダ８２０は、現在ブロックの動きベクトルに基づいて現在ブロックを復元することができる。ＭＶＰ候補リストから獲得された動きベクトル予測子が別途の動きベクトル差分値無しで現在ブロックの動きベクトルに使われるインター予測モードは、マージモードと称されることができる。
【００６９】
他の一実施形態に従って、デコーダ８２０は現在ブロックの動きベクトルのための別途の動きベクトル差分値（motion vector difference）を獲得することができる。デコーダ８２０は、ＭＶＰ候補リストから獲得された動きベクトル予測子と現在ブロックの動きベクトル差分値を合算して現在ブロックの動きベクトルを獲得することができる。この場合、エンコーダ８１０は現在ブロックの動きベクトルと動きベクトル予測子との間の差を示す動きベクトル差分値（MV difference）をシグナリングすることができる。動きベクトル差分値がシグナリングされる方法については図９を通じて具体的に説明する。デコーダ８２０は動きベクトル差分値（MV difference）に基づいて現在ブロックの動きベクトルを獲得することができる。デコーダ８２０は、現在ブロックの動きベクトルに基づいて現在ブロックを復元することができる。
【００７０】
追加的に、現在ブロックの動き補償のための参照ピクチャインデックスがシグナリングできる。現在ブロックの予測モードがエンコーダ８１０は参照ブロックを含む参照ピクチャを指示する参照ピクチャインデックスをシグナリングすることができる。デコーダ８２０は、シグナリングされた参照ピクチャインデックスに基づいて現在ブロックの復元に参照される参照ピクチャのＰＯＣを獲得することができる。この際、参照ピクチャのＰＯＣが現在ブロックの動きベクトルを誘導するために参照されるＭＶＰに対応する参照ピクチャのＰＯＣと互いに異なることがある。この場合、デコーダ８２０は動きベクトルスケーリングを遂行することができる。即ち、デコーダ８２０はＭＶＰをスケーリングしてＭＶＰ′を獲得することができる。この際、動きベクトルスケーリングは、現在ピクチャのＰＯＣ、現在ブロックのシグナリングされた参照ピクチャのＰＯＣ、及びＭＶＰに対応する参照ピクチャのＰＯＣに基づいて遂行できる。また、デコーダ８２０はＭＶＰ′を現在ブロックの動きベクトル予測子に使用することができる。
【００７１】
前述したように、現在ブロックの動きベクトルは現在ブロックの動きベクトル予測子と動きベクトル差分値を合算して獲得できる。この際、動きベクトル差分値はエンコーダからシグナリングできる。エンコーダは動きベクトル差分値をエンコーディングして動きベクトル差分値を示す情報を生成し、シグナリングすることができる。以下では、本発明の一実施形態に従って動きベクトル差分値がシグナリングされる方法について説明する。
【００７２】
図９は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値がシグナリングされる方法を示す図である。一実施形態に従って、動きベクトル差分値を示す情報は動きベクトル差分値の絶対値情報または動きベクトル差分値の符号情報のうち、少なくとも１つを含むことができる。動きベクトル差分値の絶対値と符号は別途にエンコーディングできる。
【００７３】
一実施形態に従って、動きベクトル差分値の絶対値は値自体でシグナリングされないこともある。エンコーダは、動きベクトル差分値の絶対値の特性を示す少なくとも１つのフラグを用いてシグナリングされる値のサイズを縮めることができる。デコーダは、シグナリングされた値から少なくとも１つのフラグを用いて動きベクトル差分値の絶対値を誘導することができる。
【００７４】
例えば、少なくとも１つのフラグは動きベクトル差分値の絶対値がＮより大きいかを示す第１フラグを含むことができる。この際、Ｎは整数でありうる。動きベクトル差分値の絶対値のサイズがＮより大きい場合、活性化された第１フラグと共に（動きベクトル差分値の絶対値−Ｎ）値がシグナリングできる。この際、活性化されたフラグは動きベクトル差分値の絶対値のサイズがＮより大きい場合を示すことができる。デコーダは、活性化された第１フラグ及びシグナリングされた値に基づいて動きベクトル差分値の絶対値を獲得することができる。
【００７５】
図９を参照すると、動きベクトル差分値の絶対値が‘０’より大きいかを示す第２フラグ（abs_mvd_greater０_flag）がシグナリングできる。第２フラグ（abs_mvd_greater０_flag[]）が動きベクトル差分値の絶対値が‘０’より大きくないことを示す場合、動きベクトル差分値の絶対値は‘０’でありうる。また、第２フラグ（abs_mvd_greater０_flag）が動きベクトル差分値の絶対値が‘０’より大きいことを示す場合、デコーダは動きベクトル差分値に対する他の情報を用いて動きベクトル差分値の絶対値を獲得することができる。
【００７６】
一実施形態に従って、動きベクトル差分値の絶対値が‘１’より大きいかを示す第３フラグ（abs_mvd_greater１_flag）がシグナリングできる。第３フラグ（abs_mvd_greater１_flag）が動きベクトル差分値の絶対値が‘１’より大きくないことを示す場合、デコーダは動きベクトル差分値の絶対値が‘1’であると判断することができる。
【００７７】
反対に、第３フラグ（abs_mvd_greater１_flag）が動きベクトル差分値の絶対値が‘１’より大きいことを示す場合、デコーダは動きベクトル差分値に対する更に他の情報を用いて動きベクトル差分値の絶対値を獲得することができる。例えば、（動きベクトル差分値の絶対値−２）値（abs_mvd_minus2）がシグナリングできる。動きベクトル差分値の絶対値が‘１’より大きい場合、動きベクトル差分値の絶対値は２以上の値でありうるためである。
【００７８】
前述したように、現在ブロックの動きベクトル差分値の絶対値は少なくとも１つのフラグに変形できる。例えば、動きベクトル差分値の変形された絶対値は動きベクトル差分値のサイズによって（動きベクトル差分値の絶対値−Ｎ）を示すことができる。一実施形態に従って、動きベクトル差分値の変形された絶対値は少なくとも１つのビットを通じてシグナリングできる。この際、動きベクトル差分値の変形された絶対値を指示するためにシグナリングされるビットの個数は可変的でありうる。エンコーダは、動きベクトル差分値の変形された絶対値を可変長さ２進化方法を使用してエンコーディングすることができる。例えば、エンコーダは可変長さ２進化方法は、切削単項（truncated unary）２進化、単項（unary）２進化、切削ライス（truncated rice）、または指数ゴロム（exp-Golomb）２進化のうち、少なくとも１つを使用することができる。
【００７９】
また、動きベクトル差分値の符号は符号フラグ（mvd_sign_flag）を通じてシグナリングできる。一方、動きベクトル差分値の符号は符号ビットハイディング（sign-bit-hiding）により暗黙的にシグナリングされることもできる。これに対しては図２３乃至図２８を通じて説明する。
【００８０】
一方、前述した現在ブロックの動きベクトル差分値は特定解像度単位でシグナリングできる。本開示で、動きベクトル差分値の解像度は動きベクトル差分値がシグナリングされる単位を示すことができる。即ち、本開示で、ピクチャの解像度を除外した解像度は動きベクトル差分値がシグナリングされる精度（precision）乃至粒度（granularity）を示すことができる。動きベクトル差分値の解像度は、サンプルまたはピクセルの単位で表現できる。例えば、動きベクトル差分値の解像度は１／４（quarter）、１／２（half）、１（integer）、２、４サンプル単位のように、サンプルの単位を使用して表現できる。また、現在ブロックの動きベクトル差分値の解像度が小さいほど、現在ブロックの動きベクトル差分値の精度は増加することができる。
【００８１】
本発明の一実施形態によれば、動きベクトル差分値は多様な解像度に基づいてシグナリングできる。一実施形態に従って、動きベクトル差分値の絶対値または変形された絶対値は整数サンプル単位の値でシグナリングできる。または、動きベクトル差分値の絶対値は１／２−サブペル単位の値でシグナリングされることもできる。即ち、動きベクトル差分値の解像度は状況によって異なるように設定できる。本発明の一実施形態に従うエンコーダ及びデコーダは、動きベクトル差分値のための多様な解像度を適切に活用して現在ブロックの動きベクトル差分値を効率よくシグナリングすることができる。
【００８２】
一実施形態に従って、動きベクトル差分値の解像度は、ブロック、コーディングユニット、スライス、またはタイルのうち、少なくとも１つの単位毎に異なる値に設定できる。例えば、第１ブロックの動きベクトル差分値の第１解像度は１／４サンプル単位でありうる。この場合、動きベクトル差分値の絶対値‘１６’を第１解像度で割った値である‘６４’がシグナリングできる。また、第２ブロックの動きベクトル差分値の第２解像度は整数サンプル単位でありうる。この場合、第２動きベクトル差分値の絶対値‘１６’を第２解像度で割った値である‘１６’がシグナリングできる。このように、動きベクトル差分値の絶対値が同一の場合にも、解像度によって異なる値がシグナリングできる。この際、動きベクトル差分値の絶対値を解像度で割った値が少数点以下を含む場合、該当値にラウンディング関数が適用できる。
【００８３】
エンコーダは、動きベクトル差分値の解像度に基づいて動きベクトル差分値を示す情報をシグナリングすることができる。デコーダは、シグナリングされた動きベクトル差分値から修正された動きベクトル差分値を獲得することができる。デコーダは、解像度差分値の解像度に基づいて動きベクトル差分値を修正することができる。現在ブロックのシグナリングされた動きベクトル差分値（valuePerResoultion）と修正された動きベクトル差分値（valueDetermined）との間の関係は以下の［数式１］の通りである。以下、本開示で、特別な言及のない限り、動きベクトル差分値は修正された動きベクトル差分値（valueDetermined）を示す。また、シグナリングされた動きベクトル差分値は解像度により修正される以前の値を示す。
【００８４】
【数１】
2021526340.tif 000003
【００８５】
［数式１］で、resoultionは現在ブロックの動きベクトル差分値の解像度を示す。即ち、デコーダは現在ブロックのシグナリングされた動きベクトル差分値と解像度を掛けて修正された動きベクトル差分値を獲得することができる。次に、デコーダは修正された動きベクトル差分値に基づいて現在ブロックの動きベクトルを獲得することができる。また、デコーダは現在ブロックの動きベクトルに基づいて現在ブロックを復元することができる。
【００８６】
現在ブロックの動きベクトル差分値の解像度に相対的に小さい値が使われる場合（即ち、精度の高い場合）、現在ブロックの動きベクトル差分値をより細密に示すことが有利でありうる。しかしながら、この場合、シグナリングされる値自体が大きくなって現在ブロックの動きベクトル差分値のためのシグナリングオーバーヘッドが増加することができる。反対に、現在ブロックの動きベクトル差分値の解像度に相対的に大きい値が使われる場合（即ち、精度の低い場合）、シグナリングされる値のサイズを縮めて動きベクトル差分値のためのシグナリングオーバーヘッドを減少させることができる。即ち、動きベクトル差分値の解像度が大きい場合、現在ブロックの動きベクトル差分値は現在ブロックの動きベクトル差分値の解像度が小さい場合に比べて少ない個数のビットを通じてシグナリングできる。しかしながら、この場合、現在ブロックの動きベクトル差分値を細密に表し難いことがある。
【００８７】
これによって、エンコーダ及びデコーダは複数の解像度のうち、状況によって動きベクトル差分値をシグナリングするために有利な解像度を選択することができる。例えば、エンコーダは状況に基づいて選択された解像度をシグナリングすることができる。また、デコーダはシグナリングされた解像度に基づいて現在ブロックの動きベクトル差分値を獲得することができる。以下では、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法について叙述する。本発明の一実施形態に従って、現在ブロックの動きベクトル差分値の解像度は解像度セットが含む複数の可用解像度のうち、いずれか１つでありうる。ここで、複数の可用解像度は特定状況で使用可能な解像度を示すことができる。また、解像度セットが含む可用解像度の種類及び個数は状況によって変わることができる。
【００８８】
図１０は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法を示す図である。一実施形態に従って、複数の可用解像度のうち、現在ブロックの動きベクトル差分値の解像度を指示する解像度指示子がシグナリングできる。エンコーダは、動きベクトル差分値を示す情報と共に解像度指示子をシグナリングすることができる。デコーダは、現在ブロックの解像度セットが含む複数の可用解像度のうち、いずれか１つを指示する解像度指示子に基づいて現在ブロックの動きベクトル差分値の解像度を獲得することができる。デコーダは、獲得された動きベクトル差分値の解像度に基づいて現在ブロックの動きベクトル差分値を獲得することができる。
【００８９】
一実施形態に従って、解像度指示子は可変長さのビットで表現できる。例えば、解像度指示子は現在ブロックの解像度セットで複数の可用解像度の各々を指示する解像度インデックスのうち、いずれか１つを示すことができる。この際、解像度インデックスは既設定された最大長さを有する可変長さのビットで表現できる。例えば、解像度指示子は各々１つのビットで表現される２つ以上のフラグを含むことができる。既設定された最大長さは、複数の可用解像度の個数によって決定された長さでありうる。例えば、可用解像度セットが３個の可用解像度を含む場合、既設定された最大長さは‘２’でありうる。本開示で、解像度インデックスは解像度指示子の値と称されることもできる。図１０を参照すると、解像度指示子の値は０、１０、または１１のうち、いずれか１つでありうる。
【００９０】
図１０の実施形態で、現在ブロックの動き補償のための解像度セットは１／４、１、４サンプル単位の可用解像度を含むことができる。この際、現在ブロックの動きベクトル差分値の解像度は図１０に図示された可用解像度（１／４、１、４）のうち、いずれか１つでありうる。一実施形態に従って、複数の可用解像度のうち、最も小さい可用解像度（即ち、精度の最も大きい解像度）が最も短い長さのビットを使用する指示子値によりシグナリングできる。例えば、１／４、１、４サンプル単位の可用解像度のうち、最も小さい値である１／４サンプル単位の可用解像度が最も短い長さのビットを使用する指示子値である‘０’により指示できる。また、残りの可用解像度は各々‘１０’、‘１１’と表現される指示子値により指示できる。
【００９１】
一方、解像度指示子が可変長さのビットで表現される場合、最も短い長さのビットを使用して指示される可用解像度が現在ブロックの動きベクトル差分値の解像度に使われる時、シグナリングオーバーヘッドが減少できる。これによって、複数の可用解像度のうち、現在ブロックの動きベクトル差分値の解像度に選択される確率の高い可用解像度を最も短い長さのビットを使用してシグナリングされるように設定することができる。即ち、同一の指示子値の解像度指示子が指示する可用解像度は状況によって変わることができる。これに対しては図１１乃至図１２を通じて具体的に説明する。また、現在ブロックの解像度セットは状況によって有利な可用解像度で構成できる。即ち、現在ブロックの解像度セットが含む複数の可用解像度の構成は状況によって変わることができる。これに対しては図１３を通じて具体的に説明する。
【００９２】
図１１及び図１２は、本発明の他の一実施形態に従って現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法を示す図である。図１１では解像度セットが３個の可用解像度を含むものとして図示しているが、本開示がこれに制限されるのではない。図１１の実施形態で、解像度セットは第１可用解像度（Resolution 1）、第２可用解像度（Resolution 2）、及び第３可用解像度（Resolution 3）を含むことができる。また、解像度セットが含む複数の可用解像度の各々を指示する解像度指示子の値は０、１０、１１のうち、いずれか１つでありうる。
【００９３】
この際、同一の指示子値の解像度指示子が指示する可用解像度は状況によって変わることができる。例えば、解像度指示子の値のうち、最も短い長さのビットを使用する指示子値は第１状況（case１）で第１可用解像度を指示し、第２状況（case２）では第２可用解像度を指示することができる。第１可用解像度と第２可用解像度は互いに異なることがある。
【００９４】
図１１の‘case 1’を参照すると、第１可用解像度（Resolution 1）、第２可用解像度（Resolution 2）、及び第３可用解像度（Resolution 3）は各々解像度指示子の値が０、１０、１１の場合に指示される可用解像度でありうる。これとは異なり、図１１の‘case 2’を参照すると、第１可用解像度（Resolution 1）、第２可用解像度（Resolution 2）、及び第３可用解像度（Resolution 3）は各々解像度指示子の値が１０、０、１１の場合に指示される可用解像度でありうる。
【００９５】
図１２は、図１１の実施形態をより具体的に図示する。状況によって現在ブロックの動きベクトル差分値の解像度は、図１２（ａ）の方法または図１２（ｂ）の方法によりシグナリングできる。図１２の実施形態で、解像度セットは１／４、１、及び４サンプル単位の可用解像度を含むことができる。また、各々の可用解像度は状況によって異なる指示子値により指示できる。例えば、図１２（ａ）を参照すると、１／４、１、及び４サンプル単位の可用解像度は各々１０、０、１１によりシグナリングできる。即ち、複数の可用解像度のうち、最も小さい可用解像度が最も短い長さのビットを使用する指示子値により指示できる。このようなシグナリング方法は、複数の可用解像度のうち、最も小さい可用解像度に基づいて現在ブロックの動きベクトル差分値をシグナリングすることが有利な状況で使われることができる。
【００９６】
また、図１２（ｂ）を参照すると、１／４、１、及び４サンプル単位の可用解像度は、各々１０、１１、０によりシグナリングできる。即ち、本発明の一実施形態によれば、状況によって複数の可用解像度のうち、最も小さい可用解像度でない可用解像度に基づいて現在ブロックの動きベクトル差分値をシグナリングすることが有利でありうる。この場合、複数の可用解像度のうち、最も小さい可用解像度でない可用解像度が、最も短い長さのビットを使用する指示子値により指示できる。例えば、複数の可用解像度のうち、最も大きい可用解像度が最も短い長さのビットを使用する指示子値により指示できる。
【００９７】
また、解像度セットが含む複数の可用解像度の構成は状況によって変わることができる。図１３は、解像度セットが含む可用解像度の構成が変わる一実施形態を示す図である。本発明の一実施形態に従って、第１状況（case 1）で動きベクトル差分値の解像度は第１状況解像度セットから獲得され、第２状況（case 2）で動きベクトル差分値の解像度は第２状況解像度セットから獲得できる。
【００９８】
一実施形態に従って、第１状況解像度セットは第１可用解像度（Resolution 1）、第２可用解像度（Resolution 2）、及び第３可用解像度（Resolution 3）を含むことができる。また、第２状況解像度セットは第４可用解像度（Resolution A）、第５可用解像度（Resolution B）、及び第６可用解像度（Resolution C）を含むことができる。この際、第１状況解像度セットが含む可用解像度のうちの一部と、第２状況解像度セットが含む可用解像度のうちの一部は互いに同一でありうる。即ち、特定可用解像度は第１状況解像度セット及び第２状況解像度セット全てに含まれることもできる。
【００９９】
具体的な実施形態に従って、第１状況解像度セットは１／４、１、４サンプル単位の可用解像度で構成できる。また、第２状況解像度セットは１／４、１／２、１サンプル単位の可用解像度で構成できる。即ち、第２状況解像度セットは第１状況解像度セットが含む複数の可用解像度のうち、最も大きい可用解像度の代わりに他の可用解像度を含むことができる。この際、他の可用解像度は前記最も大きい可用解像度より小さい可用解像度でありうる。また、第２状況解像度セットが含む可用解像度のうち、最も大きい可用解像度は第１状況解像度セットが含む可用解像度のうち、最も大きい可用解像度より小さいことがある。一実施形態に従って、第１状況解像度セットは動きベクトル差分値の精度を増加させなければならない状況に比べてシグナリングオーバーヘッドの減少が必要な状況で有利でありうる。反対に、第２状況解像度セットはシグナリングオーバーヘッドの減少が必要な状況に比べて動きベクトル差分値の精度を増加させなければならない状況で有利でありうる。
【０１００】
一方、現在ブロックの予測モードによって要求される動きベクトル差分値の精度が変わることができる。例えば、アフィンモデルに基づいた動き補償は並進運動（translation motion）外の不規則的な運動に対する動き予測でありうる。これによって、現在ブロックの予測モードがアフィンモデルに基づいた動き補償モードである場合、既存の一般インター予測モードに比べて動きベクトル差分値を細密にシグナリングすることが必要でありうる。現在ブロックのＭＶＰ候補リストは現在ブロックの予測モードによって異なる方法により構成できる。これによって、現在ブロックの解像度セットが含む複数の可用解像度の構成は現在ブロックの動き補償のためのＭＶＰ候補リストが構成される方法によって変わることができる。
【０１０１】
また、現在ブロックの動きベクトル差分値の解像度が大きいほど、シグナリングされる動きベクトル差分値のサイズが小さくなることができる。これによって、現在ブロックの動きベクトル差分値の絶対値が相対的に大きい場合、現在ブロックの動きベクトル差分値が小さい場合に比べて、動きベクトル差分値を大きい解像度単位でシグナリングすることが好ましいことがある。この際、動きベクトル差分値は動きベクトルと動きベクトル予測子との間の差を示す値である。したがって、現在ブロックの動きベクトル予測子が現在ブロックの動きベクトルと類似するほど、現在ブロックの動きベクトル差分値の絶対値が小さくなることができる。一方、現在ブロックの動きベクトルと動きベクトル予測子との間の類似度が高い確率は、現在ブロックの動き補償のためのＭＶＰ候補リストが構成される方法によって変わることができる。これによって、現在ブロックの解像度セットが含む複数の可用解像度の構成は現在ブロックの動き補償のためのＭＶＰ候補リストが構成される方法によって変わることができる。
【０１０２】
一実施形態に従って、図１０乃至図１３を通じて前述した実施形態で言及された状況は現在ブロックのＭＶＰ候補リストが構成された方法を意味することができる。図８を通じて前述したように、現在ブロックの動き補償のためのＭＶＰ候補リストは、複数の方法のうち、いずれか１つに基づいて構成できる。現在ブロックのＭＶＰ候補リストは、現在ブロックの予測モードによって異なる方法により構成できる。即ち、前述した実施形態で言及された状況は、現在ブロックの動き補償のためのＭＶＰ候補リストが複数の方法のうち、どの方法を使用して構成されたかによることと定義できる。
【０１０３】
本発明の一実施形態に従って、現在ブロックの解像度セットが含む複数の可用解像度の構成は、現在ブロックのＭＶＰ候補リストを構成する方法によって変わることができる。例えば、エンコーダ及びデコーダは前述した第１方法及び第２方法のうち、いずれか１つを使用して、現在ブロックの動き補償のためのＭＶＰ候補リストを構成することができる。この場合、現在ブロックの解像度セットが含む複数の可用解像度の構成は、前述した第１方法及び第２方法のうち、どの方法を使用して現在ブロックのＭＶＰ候補リストが構成されるかによって変わることができる。
【０１０４】
一実施形態に従って、現在ブロックの動き補償のためのＭＶＰ候補リストが第１方法を使用して構成された場合、現在ブロックの動きベクトル差分値の解像度は第１解像度セットから獲得できる。現在ブロックの動き補償のためのＭＶＰ候補リストが第２方法を使用して構成された場合、現在ブロックの動きベクトル差分値の解像度は第２解像度セットから獲得できる。この際、第１解像度セットを構成する複数の可用解像度と第２解像度セットを構成する複数の可用解像度のうちの一部は互いに異なることがある。例えば、第２解像度セットは第１解像度セットが含む複数の可用解像度でない他の可用解像度を少なくとも１つ含むことができる。
【０１０５】
前述したように、第１方法はアフィンモデルに基づいてＭＶＰ候補リストを構成する方法であり、第２方法はアフィンモデルに基づかないでＭＶＰ候補リストを構成する方法でありうる。アフィンモデルに基づいた動き補償は並進運動（translation motion）外の不規則的な運動に対する動き予測でありうる。これによって、既存の一般インター予測方法に比べて動きベクトル差分値を細密にシグナリングすることが必要でありうる。
【０１０６】
これによって、第１解像度セットは第２解像度セットが含む複数の可用解像度のうち、最も大きい可用解像度の代わりに他の可用解像度を含むことができる。この際、他の可用解像度は前記最も大きい可用解像度より小さい可用解像度でありうる。また、第１解像度セットが含む可用解像度のうち、最も大きい可用解像度は第２解像度セットが含む可用解像度のうち、最も大きい可用解像度より小さいことがある。例えば、第１解像度セットが含む可用解像度のうち、最も大きい可用解像度は、１サンプル単位の解像度でありうる。この際、第２解像度セットが含む可用解像度のうち、最も大きい可用解像度は、４サンプル単位の解像度でありうる。
【０１０７】
具体的な実施形態に従って、第１解像度セットは１／４、１／２、１サンプル単位の可用解像度で構成できる。この際、第２解像度セットは１／４、１、４サンプル単位の可用解像度で構成できる。他の具体的な実施形態に従って、第１解像度セットは１／１６、１／４、１サンプル単位の可用解像度で構成できる。この際、第２解像度セットは１／４、１、４サンプル単位の可用解像度で構成できる。
【０１０８】
前述したように、デコーダはシグナリングされた解像度指示子を用いて現在ブロックの動きベクトル差分値の解像度を決定することができる。例えば、デコーダは第１解像度セット及び第２解像度セットのうちのいずれか１つが含む複数の可用解像度のうち、現在ブロックの動きベクトル差分値の解像度を指示する解像度指示子を獲得することができる。また、デコーダは解像度指示子に基づいて現在ブロックの修正された動きベクトル差分値を獲得することができる。デコーダは、修正された動きベクトル差分値に基づいて現在ブロックを復元することができる。
【０１０９】
本発明の一実施形態に従って、解像度指示子値のうちの特定値により指示される可用解像度は、ＭＶＰ候補リストが第１方法及び第２方法のうち、どの方法を使用して構成されるかによって変わることができる。一実施形態に従って、デコーダは第１値を有する解像度指示子を獲得することができる。現在ブロックの動き補償のためのＭＶＰ候補リストが第１方法を使用して構成された場合、第１値により指示される可用解像度は第７可用解像度でありうる。現在ブロックの動き補償のためのＭＶＰ候補リストが第２方法を使用して構成された場合、第１値により指示される可用解像度は第８可用解像度でありうる。この際、第７可用解像度と第８可用解像度は互いに異なる解像度でありうる。
【０１１０】
一実施形態に従って、第７可用解像度は第１解像度セット及び第２解像度セット全てが含む可用解像度でありうる。現在ブロックの動き補償のためのＭＶＰ候補リストが第２方法を使用して構成された場合、第７可用解像度は第１値と異なる第２値により指示できる。例えば、第１値は‘１０、１１’のうちのいずれか１つであるか、または‘００、０１’のうちのいずれか１つでありうる。この際、第２値は‘１０、１１’のうちの第１値と異なるいずれか１つであるか、または‘００、０１’のうちの第１値と異なるいずれか１つでありうる。
【０１１１】
一方、前述したように、複数の可用解像度のうち、現在ブロックの動きベクトル差分値の解像度に選択される確率が最も高い可用解像度を最も短い長さのビットを使用してシグナリングすることが有利でありうる。一実施形態に従って、第１解像度セットが含む可用解像度のうちの最も小さい可用解像度は、第２解像度セットが含む可用解像度のうち、最も小さい可用解像度より小さいことがある。
【０１１２】
即ち、第２解像度セットが含む可用解像度は相対的に大きい解像度でありうる。これによって、現在ブロックの動き補償のためのＭＶＰ候補リストが第２方法を使用して構成された場合、動きベクトル差分値の精度を増加させる必要がありえる。前述したように、動きベクトル差分値の精度を増加させる必要がある場合、複数の可用解像度のうち、最も小さい可用解像度を最も短い長さのビットを使用してシグナリングすることが有利でありうる。一実施形態に従って、第３値は解像度指示子の値のうち、最も短い長さのビットを使用して表現される値でありうる。
【０１１３】
一実施形態に従って、現在ブロックの動き補償のためのＭＶＰ候補リストが第２方法を使用して構成された場合、第３値は第２解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度を指示することができる。一実施形態に従って、第２解像度セットが含む可用解像度のうち、最も小さい可用解像度は１／４でありうる。
【０１１４】
また、第１解像度セットが含む可用解像度は相対的に小さい解像度でありうる。これによって、現在ブロックの動き補償のためのＭＶＰ候補リストが第１方法を使用して構成された場合、動きベクトル差分値のためのシグナリングオーバーヘッドを減少させる必要がありえる。したがって、現在ブロックの動き補償のためのＭＶＰ候補リストが第１方法を使用して構成された場合、第３値は第１解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度の以外の他の可用解像度を指示することができる。一実施形態に従って、第３値は第１解像度セットが含む可用解像度のうち、最も大きい可用解像度、２番目に小さい可用解像度、または２番目に大きい可用解像度を指示することができる。例えば、第１解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度の以外の他の可用解像度は１／４、１／２、１、４のうち、いずれか１つでありうる。
【０１１５】
一方、本発明の他の一実施形態に従って、現在ブロックの解像度セットが含む可用解像度の構成は現在ブロックの動きベクトル予測子を指示するＭＶＰインデックスによって変わることができる。ＭＶＰインデックスは、現在ブロックの動きベクトルを誘導するために参照される動きベクトル予測子が現在ブロックのＭＶＰ候補リストで何番目の候補であるかを示すことができる。
【０１１６】
図１４は、現在ブロックの動きベクトル予測子によって現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法の一実施形態を示す図である。例えば、デコーダは現在ブロックの動き補償のためのＭＶＰ候補リストのうち、現在ブロックの動き補償のために参照される動きベクトル予測子を指示するＭＶＰインデックスを獲得することができる。この際、現在ブロックの解像度指示子の特定値により指示される可用解像度はＭＶＰインデックスが既設定されたインデックスより大きいか小さいかによって変わることができる。
【０１１７】
現在ブロックのＭＶＰ候補リスト内で、小さいＭＶＰインデックスに対応する動きベクトル予測子候補であるほど、現在ブロックの動きベクトルと類似する確率が高いことがある。また、現在ブロックの動きベクトル予測子が現在ブロックの動きベクトルと類似するほど現在ブロックの動きベクトル差分値の絶対値が小さくなることがある。これによって、現在ブロックの動きベクトル予測子に対応するＭＶＰインデックスが既設定されたＭＶＰインデックスより小さい場合、現在ブロックの解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度は、解像度指示子の値のうち、最も短い長さのビットを使用して表現される値により指示できる。
【０１１８】
反対に、現在ブロックの動きベクトル予測子に対応するＭＶＰインデックスが既設定されたＭＶＰインデックスより大きい場合、現在ブロックの解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度でない特定可用解像度が解像度指示子の値のうち、最も短い長さのビットを使用して表現される値により指示できる。この際、特定可用解像度は複数の可用解像度のうち、最も大きい解像度でありうる。または、特定可用解像度は複数の可用解像度のうち、２番目に大きいか、または２番目に小さい解像度でありうる。
【０１１９】
図１４を参照すると、現在ブロックの解像度セットは１／４、１、４サンプル単位の可用解像度を含むことができる。また、現在ブロックの動き補償のためのＭＶＰインデックスが既設定されたＭＶＰインデックスより小さい（Candidate 1、Candidate 2）場合、１／４、１、４のうち、最も小さい可用解像度である１／４単位の解像度が最も短いビットを使用してシグナリングできる。一方、現在ブロックの動き補償のためのＭＶＰインデックスが既設定されたＭＶＰインデックスより大きい（Candidate N）場合、１／４、１、４のうち、１または４単位の解像度が最も少ない個数のビットを使用してシグナリングできる。
【０１２０】
図１５は、現在ブロックの動きベクトル予測子によって動きベクトル差分値の解像度がシグナリングされる方法の他の一実施形態を示す図である。図１４を通じて前述したように、現在ブロックの動き補償のためのＭＶＰインデックスによって、現在ブロックの動きベクトル差分値の解像度がシグナリングされる方法が変わることができる。
【０１２１】
前述したように、現在ブロックの動き補償のためのＭＶＰ候補リストは多様な方法により獲得された候補を含むことができる。一実施形態に従って、現在ブロックの動き補償のためのＭＶＰ候補リストは、空間的候補、時間的候補、またはゼロ動きベクトルのうち、少なくとも１つを含むことができる。この際、現在ブロックの動きベクトル予測子がどんな方式により獲得された候補でありかによって現在ブロックの解像度セットが含む複数の可用解像度の構成が変わることができる。動きベクトル予測子候補によって推定される現在ブロックとの類似度が異なることができるためである。例えば、空間的候補の場合、現在ブロックと類似する確率が大きいことと推定できる。また、時間的候補、ゼロ動きベクトルのような動きベクトル予測子候補は空間的候補に比べて現在ブロックと類似する確率が小さいものと推定できる。
【０１２２】
例えば、現在ブロックの動きベクトル予測子が空間的候補のうちのいずれか１つである場合、現在ブロックの解像度セットが含む複数の可用解像度のうちの最も小さい可用解像度は、解像度指示子の値のうちの最も短い長さのビットを使用して表現される値により指示できる。
【０１２３】
また、現在ブロックの動きベクトル予測子が空間的候補のうちのいずれか１つでない場合、現在ブロックの解像度セットが含む複数の可用解像度のうちの最も小さい可用解像度でない特定可用解像度が解像度指示子の値のうちの最も短い長さのビットを使用して表現される値により指示できる。この際、特定可用解像度は複数の可用解像度のうちの最も大きい解像度でありうる。または、特定可用解像度は複数の可用解像度のうちの２番目に大きいか、または２番目に小さい解像度でありうる。
【０１２４】
一方、図１３乃至図１５では互いに異なる解像度セットの各々が同一の個数の可用解像度を含むものとして図示されているが、本開示がこれに制限されるのではない。本発明の一実施形態に従って、解像度セット別に互いに異なる個数の可用解像度を含むこともできる。例えば、第１解像度セットは３個の可用解像度を含むことができる。一方、第３状況で使われる第３解像度セットは２つの可用解像度を含むことができる。エンコーダ及びデコーダは状況によって互いに異なる個数の可用解像度を含む解像度セットを構成することができる。
【０１２５】
前述したように、動き情報セットは現在ブロックの参照ピクチャを示す参照ピクチャインデックスを含むことができる。デコーダは、シグナリングされた参照ピクチャインデックスから現在ブロックの参照ピクチャのＰＯＣを獲得することができる。本発明の一実施形態に従って、現在ブロックの解像度セットが含む複数の可用解像度の構成は、現在ピクチャのＰＯＣ及び参照ピクチャのＰＯＣによって変わることができる。一実施形態に従って、現在ピクチャのＰＯＣ及び参照ピクチャのＰＯＣに基づいて、現在ブロックの解像度セットを構成する可用解像度のうちの一部が除外できる。
【０１２６】
例えば、参照ピクチャのＰＯＣが現在ピクチャのＰＯＣと同一な場合、現在ブロックの動きベクトル差分値の解像度は第４解像度セットから獲得できる。また、参照ピクチャのＰＯＣが現在ピクチャのＰＯＣと同一でない場合、現在ブロックの動きベクトル差分値の解像度は第５解像度セットから獲得できる。この際、第４解像度セットは第５解像度セットが含む可用解像度のうち、最も小さい可用解像度を除外した残りの可用解像度で構成できる。即ち、現在ピクチャのＰＯＣ及び参照ピクチャのＰＯＣによって、現在ブロックの解像度セットを構成する可用解像度の個数が変わることができる。
【０１２７】
本発明の他の一実施形態をよれば、現在ブロックの動きベクトル差分値の解像度は量子化パラメータ（quantization parameter、ＱＰ）によって異なる方法によりシグナリングできる。例えば、現在ブロックのＱＰによって図１１乃至図１５を通じて前述したシグナリング方法のうち、いずれか１つが決定できる。また、現在ブロックの動きベクトル差分値の解像度は決定されたシグナリング方法を使用してシグナリングできる。一実施形態に従って、現在ブロックのＱＰが小さいほど、現在ブロックの動きベクトル差分値の解像度が小さくなることができる。
【０１２８】
本発明の更に他の一実施形態をよれば、現在ブロックの動きベクトル差分値の解像度はフレームレート（framerate）によって異なる方法によりシグナリングできる。例えば、現在ブロックを含むビデオ信号のフレームレートによって図１１乃至図１５を通じて前述したシグナリング方法のうち、いずれか１つが決定できる。また、現在ブロックの動きベクトル差分値の解像度は決定されたシグナリング方法を使用してシグナリングできる。一実施形態に従って、ビデオ信号のフレームレートが高いほど、フレーム間の時間間隔が短くて動きベクトルが小さい確率が高まることができる。これによって、現在ブロックのフレームレートが高いほど、現在ブロックの動きベクトル差分値の解像度が小さくなることができる。
【０１２９】
本発明の更に他の一実施形態をよれば、現在ブロックの動きベクトル差分値の解像度は、現在ブロックと現在ブロックの周辺ブロックとの間のサイズ比率またはサイズ差によって異なる方法によりシグナリングできる。例えば、現在ブロックと現在ブロックの周辺ブロックとの間のサイズ比率またはサイズ差によって、図１１乃至図１５を通じて前述したシグナリング方法のうち、いずれか１つが決定できる。前述した実施形態は動きベクトル差分値でない動きベクトルが直接的にシグナリングされる場合にも同一または相応する方法により適用できる。
【０１３０】
一方、本発明の追加的な実施形態に従って、エンコーダ及びデコーダは動きベクトル差分値を足す前に動きベクトル予測子を修正することができる。これを通じて、現在ブロックの動きベクトルを獲得するために使われる動きベクトル差分値のサイズを減少させることができる。この際、現在ブロックのＭＶＰ候補リストが含む動きベクトル予測子候補のうちの一部が現在ブロックの動きベクトル予測子に選択された場合のみに動きベクトル予測子に対する修正が遂行できる。例えば、現在ブロックのＭＶＰ候補リストが含む動きベクトル予測子候補のうち、既設定されたＭＶＰインデックスより小さいＭＶＰインデックスに対応する動きベクトル予測子候補が現在ブロックの動きベクトル予測子に使われる場合、該当動きベクトル予測子に対する修正が遂行できる。
【０１３１】
一実施形態に従って、動きベクトル予測子に対する修正が遂行されるかによって解像度セットが含む複数の可用解像度をシグナリングする方法が変わることができる。例えば、現在ブロックの動きベクトル予測子が修正された場合、解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度が最も少ない個数のビットを使用してシグナリングできる。また、現在ブロックの動きベクトル予測子が修正されていない場合、解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度でない他の解像度のうち、いずれか１つが最も少ない個数のビットを使用してシグナリングできる。
【０１３２】
他の一実施形態に従って、動きベクトル予測子は動きベクトル差分値を足した後に修正されることもできる。この場合、現在ブロックの動きベクトル差分値の解像度が動きベクトル予測子が動きベクトル差分値を足す前に修正される場合と異なる方法によりシグナリングできる。動きベクトル予測子が動きベクトル差分値が加えられた後に修正される場合、動きベクトル差分値の精度が低くても動きベクトル修正過程を通じて予測誤差を減らすことができる。これによって、現在ブロックの動きベクトル予測子が動きベクトル差分値を足す前に修正される場合、解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度でない他の解像度のうち、いずれか１つが最も少ない個数のビットを使用してシグナリングできる。反対に、現在ブロックの動きベクトル予測子が動きベクトル差分値を足す前に修正されない場合、解像度セットが含む複数の可用解像度のうち、最も小さい可用解像度が最も少ない個数のビットを使用してシグナリングできる。
【０１３３】
追加的な実施形態に従って、現在ブロックの動きベクトルまたは動きベクトル予測子がどんな候補であるかによって、後に遂行される動きベクトル修正過程が変わることができる。動きベクトルを修正する過程はより正確な動きベクトルを探索するための過程を含むことができる。例えば、デコーダは基準点から既定義された方法によって現在ブロックとマッチングされるブロックを探索することができる。基準点は決定された動きベクトルまたは動きベクトル予測子に該当する位置でありうる。動きベクトル探索は、多様な方法により遂行できる。例えば、探索にはテンプレートマッチング（templete matching）または両側マッチング（bilateral matching）が使われることができる。この際、既定義された方法によって基準点から動く程度が変わることができる。動きベクトル修正過程を異なるようにするということは、基準点から動く程度を異なるようにすることでありうる。
【０１３４】
例えば、正確な動きベクトル予測子候補に対しては詳細な修正過程から始めることができ、不正確な動きベクトル予測子候補に対してはあまり詳細でない修正過程から始めることができる。本開示で、正確な動きベクトル予測子候補及び不正確な動きベクトル予測子候補はＭＶＰ候補リスト内での位置によって決定できる。また、正確な動きベクトル予測子候補及び不正確な動きベクトル予測子候補は動きベクトル予測子候補の各々がいかなる方法により生成されたかによって決定できる。いかなる方法により動きベクトル予測子候補が生成されたかは、現在ブロックの空間的候補のうち、どの位置に対応する候補であるかを示すことができる。また、詳しい、あまり詳しくない修正は、ブロックを基準点から少しずつ動きながら探索するのか、たくさん動きながら探索するのかでありうる。また、たくさん動きながら探索する場合、たくさん動きながら探した最もよくマッチングされるブロックから追加的に少しずつ動きながら探索する過程を追加することができる。
【０１３５】
前述したテンプレートマッチング方法は、現在ブロックのテンプレートと比較しようとする比較対象ブロックのテンプレートの間の値の差に基づいて現在ブロックのテンプレートと最も差の少ない比較対象ブロックを獲得する方法でありうる。特定ブロックのテンプレートは、特定ブロックの周辺サンプルに基づいて獲得できる。図１６は、本発明の一実施形態に従ってテンプレートマッチング方法に基づいて動きベクトル差分値の解像度が獲得される方法を示す図である。本発明の一実施形態に従って、現在ブロックの動きベクトル差分値の解像度はシグナリングされないこともある。一実施形態に従って、デコーダはテンプレートマッチング方法と同一のコスト（cost）計算に基づいて現在ブロックの解像度を獲得することができる。前述したように、参照ブロックは動きベクトル予測子及び動きベクトル差分値に基づいて獲得できる。この際、動きベクトル差分値は現在ブロックの動きベクトル差分値の解像度により修正された動きベクトル差分値でありうる。これによって、現在ブロックの動きベクトル差分値の解像度によって参照ピクチャ内で参照ブロックの位置が変わることができる。
【０１３６】
一実施形態に従って、現在ブロックの動き補償のための解像度セットは既設定された可用解像度で構成できる。図１６を参照すると、現在ブロックの解像度セットは、第１可用解像度（Resolution 1）、第２可用解像度（Resolution 2）、及び第３可用解像度（Resolution 3）を含むことができる。現在ブロックの動きベクトル予測子により指示される基準点１６０１に基づいて現在ブロックの解像度セットが含む可用解像度の各々に対応する複数の参照ブロック候補が獲得できる。解像度セットが含む可用解像度個数の参照ブロック候補が獲得できる。具体的な実施形態に従って、複数の参照ブロック候補は第１可用解像度に対応する第１参照ブロック候補１６０２、第２可用解像度に対応する第２参照ブロック候補１６０３、及び第３可用解像度に対応する第３参照ブロック候補１６０４を含むことができる。デコーダは、複数の参照ブロック候補のうち、いずれか１つを現在ブロックの参照ブロックに使用することができる。例えば、デコーダは複数の参照ブロック候補の各々と現在ブロックをテンプレートマッチング結果に基づいてコストの最も低い参照ブロック候補を現在ブロックの参照ブロックに選択することができる。また、デコーダは該当参照ブロックに基づいて現在ブロックを復元することができる。
【０１３７】
他の一実施形態に従って、前述した参照ブロック候補の各々と現在ブロックとの間のテンプレートマッチング結果に基づいて現在ブロックの動きベクトル差分値の解像度がシグナリングされることもできる。例えば、前述したテンプレートマッチング動作はデコーダと同様にエンコーダで同一に遂行できる。また、エンコーダはテンプレートマッチング結果に基づいてコストの最も低い参照ブロック候補に対応する可用解像度を最も少ない個数のビットを使用してシグナリングできる。
【０１３８】
この場合、エンコーダ及びデコーダは複数の参照ブロック候補のうち、一部に対してのみテンプレートマッチングを遂行することもできる。例えば、図１６の第１参照ブロック候補１６０２、第２参照ブロック候補１６０３、及び第３参照ブロック候補１６０４のうち、第１参照ブロック候補１６０２、第２参照ブロック候補１６０３に対してのみ現在ブロックとのテンプレートマッチングが遂行できる。また、第１参照ブロック候補１６０２及び第２参照ブロック候補１６０３の各々と現在ブロックとの間のテンプレートマッチング結果に基づいて、現在ブロックの解像度セットが含む可用解像度のうち、最も短い長さのビットを使用してシグナリングされる可用解像度が決定できる。第１可用解像度及び第２可用解像度のうち、いずれか１つが最も短い長さのビットを使用してシグナリングできる。また、第１可用解像度及び第２可用解像度のうち、残りの１つとテンプレートマッチングを遂行しない参照ブロック候補に対応する第３可用解像度は追加的なビットを使用してシグナリングできる。これを通じて、エンコーダ及びデコーダはテンプレートマッチング方法に必要な演算量を減少させることができる。
【０１３９】
一実施形態に従って図１６を通じて説明された実施形態は、シグナリングされた動きベクトル差分値のサイズによって適用するか否かが決定されることもできる。例えば、シグナリングされた動きベクトル差分値が既設定された値より大きい場合のみにテンプレートマッチング方法が使われることもできる。シグナリングされた動きベクトル差分値が既設定された値より小さい場合、解像度に従う参照ブロック候補間のテンプレートマッチングコスト差が明らかでない場合もあるためである。
【０１４０】
図１７は、本発明の一実施形態に従って両側マッチング方法に基づいて動きベクトル差分値の解像度が獲得される方法を示す図である。本発明の一実施形態に従って、図１６を通じて説明したテンプレートマッチング方法に代わって両側マッチング方法が使われることができる。両側マッチング方法は動き軌跡に沿って２つ以上の参照ピクチャの各々の参照ブロックに基づいて現在ブロックを復元する方法を示す。両側マッチング方法は２つ以上の参照ピクチャの各々の参照ブロックの間の差に基づいて差の最も小さいセットを獲得するものでありうる。
【０１４１】
前述したように、現在ブロックが双予測ブロックである場合、現在ブロックは互いに異なる２つ以上の参照ピクチャの２つ以上の参照ブロックに基づいて復元できる。図１７を参照すると、第１参照ピクチャ（Reference picture 1）及び第２参照ピクチャ（Reference picture 2）別に特定可用解像度に対応する参照ブロック候補が構成できる。エンコーダ及びデコーダは第１参照ピクチャ（Reference picture 1）内の参照ブロック候補と第２参照ピクチャ（Reference picture 2）内の参照ブロック候補の間の両側マッチング結果に基づいて、第１参照ピクチャ（Reference picture 1）内の参照ブロック及び第２参照ピクチャ（Reference picture 2）内の参照ブロックを獲得することができる。図１７の実施形態には、図１６を通じて前述した実施形態が同一または相応する方法により適用できる。
【０１４２】
一実施形態に従って、現在ブロックが互いに異なる参照リストに対応する２つの動き情報セットに基づいてインター予測される場合、２つの動きベクトル差分値が別途にシグナリングできる。この場合、２つの動きベクトル差分値の各々に適用される解像度は互いに同一または異なることがある。以下では、現在ブロックの参照ピクチャリスト別解像度がシグナリングされる多様な方法について説明する。
【０１４３】
本発明の一実施形態に従って、参照ピクチャリスト別動きベクトル差分値の解像度は前述した両側マッチング方法に基づいて決定できる。一実施形態に従って、２つの参照ピクチャリストの各々に対応する解像度セットは互いに独立的に構成できる。例えば、第１参照ピクチャリストＬ０に対応する解像度セットは、ｍ個の可用解像度を含むことができる。また、第２参照ピクチャリストＬ１に対応する解像度セットはｎ個の可用解像度を含むことができる。この場合、エンコーダ及びデコーダは第１参照ピクチャリストに対応するｎ個の参照ブロック候補及び第２参照ピクチャリストに対応するｍ個の参照ブロック候補の間の両側マッチング結果に基づいて参照ピクチャリストの各々の動きベクトル差分値の解像度を獲得することができる。この場合、エンコーダ及びデコーダは（ｎｘｍ）回の両側マッチングを遂行しなければならない。
【０１４４】
または、動きベクトル差分値の解像度は複数の参照ピクチャリストに対して共通的な解像度セットが使われることもできる。例えば、第１参照ピクチャリストＬ０及び第２参照ピクチャリストＬ１に対して共通的に使われる解像度セットはｎ個の可用解像度を含むことができる。一実施形態に従って、第１参照ピクチャリストＬ０及び第２参照ピクチャリストＬ１の各々に対応する動きベクトル差分値に対して互いに同一の解像度が適用されるように設定できる。この場合、エンコーダ及びデコーダはｎ回の両側マッチング結果に基づいて第１参照ピクチャリストＬ０及び第２参照ピクチャリストＬ１の各々の動きベクトル差分値の解像度を獲得することができる。
【０１４５】
一方、特定参照ピクチャリストに対応する動きベクトル予測子と動きベクトルとの間の差と他の参照ピクチャリストに対応する動きベクトル予測子と動きベクトルとの間の差が類似することができる。この場合、特定参照ピクチャリストに対応する動きベクトル差分値の解像度は他の参照ピクチャリストに対応する動きベクトル差分値の解像度と同一の可能性が高いことができる。したがって、本発明の一実施形態によれば、現在ブロックの特定参照ピクチャリストに対応する動きベクトル差分値の解像度は、現在ブロックの他の参照ピクチャリストに対応する動きベクトル差分値の解像度と同一でありうる。
【０１４６】
図１８は、本発明の一実施形態に従って現在ブロックの参照ピクチャリスト別に動きベクトル差分値の解像度がシグナリングされる方法を示す図である。図１８を参照すると、第１参照ピクチャリストＬ０に対応する第１リスト解像度セット（L0 MVD resolution signaling）と第２参照ピクチャリストＬ１に対応する第２リスト解像度セット（L1 MVD resolution signaling）が各々構成できる。また、第１参照ピクチャリストＬ０に対応する動きベクトル差分値の解像度を指示する第１リスト解像度指示子と第２参照ピクチャリストＬ１に対応する動きベクトル差分値の解像度を指示する第２リスト解像度指示子が各々シグナリングできる。
【０１４７】
例えば、デコーダは第１リスト解像度セット及び第１リスト解像度指示子に基づいて第１参照ピクチャリストに対応する動きベクトル差分値の解像度を獲得することができる。次に、デコーダは第２リスト解像度セット及び第２リスト解像度指示子に基づいて第２参照ピクチャリストに対応する動きベクトル差分値の解像度を獲得することができる。この際、第２リスト解像度セットが含む可用解像度のうち、いずれか１つは第１参照ピクチャリストに対応する動きベクトル差分値の解像度に依存する解像度（L0 resolution）でありうる。
【０１４８】
具体的な実施形態に従って、第２リスト解像度指示子が既設定された値（０）である場合、デコーダは第１参照ピクチャリストに対応する動きベクトル差分値の解像度に基づいて第２参照ピクチャリストに対応する動きベクトル差分値の解像度を決定することができる。この場合、デコーダは第１参照ピクチャリストに対応する動きベクトル差分値の解像度と同一の解像度を第２参照ピクチャリストに対応する動きベクトル差分値の解像度に使用することができる。この際、既設定された値は第２リスト解像度指示子の値のうち、最も少ない個数のビットを使用して表現される値でありうる。また、第２リスト解像度指示子の他の値は各々残りの可用解像度（Remaining resolution 1、Remaining resolution 2）を指示する指示子値に使われることができる。
【０１４９】
図１８の実施形態で、第１参照ピクチャリストＬ０に対応する動きベクトル差分値の解像度が第２参照ピクチャリストＬ１に対応する動きベクトル差分値の解像度より先に決定されると説明しているが、本開示がこれに制限されるのではない。例えば、第１リスト解像度セットは第２参照ピクチャリストＬ１に対応する動きベクトル差分値の解像度に依存する解像度を含むことができる。
【０１５０】
図１９は、現在ブロックの動きベクトル差分値の解像度がピクチャの解像度によってシグナリングされる方法の一実施形態を示す図である。本発明の一実施形態に従って、現在ブロックの動きベクトル差分値の解像度はピクチャの解像度またはサイズのうち、少なくとも１つによって異なる方法によりシグナリングできる。ピクチャの解像度またはサイズに関する情報はエンコーダからシグナリングできる。デコーダは、シグナリングされたピクチャの解像度またはサイズに関する情報を獲得することができる。一実施形態に従って、低解像度ピクチャ（Low resolution picture）と高解像度ピクチャ（high resolution picture）の各々で特定ブロックの動きベクトル差分値の解像度がシグナリングされる方法は互いに異なることがある。図１９を参照すると、低解像度ピクチャ（Low resolution picture）と高解像度ピクチャ（high resolution picture）の各々で動きベクトル予測子が指示する基準点から参照ブロックの位置までの相対的な距離が同一の場合でも、高解像度ピクチャで該当距離を示すための値は低解像度ピクチャで該当距離は示す値に比べて大きいことがある。
【０１５１】
これによって、現在ブロックの動きベクトル差分値の解像度は、現在ブロックを含む現在ピクチャに比べてピクチャの解像度が落ちる他のピクチャの動きベクトル差分値の解像度より大きい値に設定される確率が高いことがある。したがって、現在ピクチャが高解像度ピクチャである場合、複数の可用解像度のうち、最も小さい可用解像度が最も短い長さのビットを使用して表現される値により指示されないことがある。例えば、現在ピクチャが高解像度ピクチャである場合、複数の可用解像度のうち、最も小さい可用解像度でない可用解像度が最も短い長さのビットを使用して表現される値により指示できる。前述した実施形態はスケーラブルビデオコーディング（scalable video coding）のようにビデオ信号が含むピクチャの解像度やサイズが変化する場合に適用されることもできる。
【０１５２】
図２０は、本発明の一実施形態に従って現在ブロックの参照ピクチャのサイズに基づいて動きベクトル差分値の解像度がシグナリングされる方法を示す図である。一実施形態に従って、動きベクトル差分値の解像度は現在ブロックの参照ピクチャのサイズに基づいてシグナリングできる。図２０は、現在ブロックの動きベクトル予測子により指示される基準点２００１に基づいて現在ブロックの解像度セットが含む可用解像度の各々に対応する参照ブロック候補を示す。図２０で、第３可用解像度（Resolution 3）に対応する第３参照ブロック候補は参照ピクチャ外に位置する。このように、特定可用解像度に基づいて構成された参照ブロック候補の少なくとも一部が参照ピクチャの境界外の場合、該当可用解像度はシグナリング対象から除外できる。即ち、基準点２００１を基準に特定可用解像度に基づいて修正された動きベクトル差分値により指示される地点が現在ピクチャの境界外の場合、該当可用解像度はシグナリングされないことがある。
【０１５３】
例えば、解像度セットがＮ個の可用解像度を含むことができる。この場合、Ｎ個の可用解像度のうち、Ｍ個の可用解像度を除外した（Ｎ−Ｍ）のうち、いずれか１つを指示する解像度指示子がシグナリングできる。この際、Ｍ個の可用解像度の各々に対応する参照ブロック候補は参照ピクチャの境界から外れる参照ブロック候補でありうる。これを通じて、エンコーダ及びデコーダは不必要な可用解像度を除外して現在ブロックの動きベクトル差分値の解像度のためのシグナリングオーバーヘッドを減少させることができる。具体的な例によって、第１可用解像度（Resolution 1）、第２可用解像度（Resolution 2）、第３可用解像度（Resolution 3）のうち、いずれか１つをシグナリングする場合、最大２ビットが使われることができる。一方、第１可用解像度（Resolution 1）及び第２可用解像度（Resolution 2）のうち、いずれか１つをシグナリングする場合、最大１ビットが使われることができる。
【０１５４】
図２０を参照すると、解像度セットは第１可用解像度、第２可用解像度、及び第３可用解像度を含むことができる。この際、現在ブロックのシグナリングされた動きベクトル差分値が第３可用解像度に基づいて修正される場合、現在ブロックの動きベクトルは参照ブロックの境界外の地点を指示するようになる。これによって、エンコーダは第３可用解像度を除外した第１可用解像度及び第２可用解像度のうち、いずれか１つを指示する解像度指示子をシグナリングすることができる。具体的な実施形態に従って、エンコーダは１つのビットを使用して第１可用解像度及び第２可用解像度のうち、いずれか１つを指示する解像度指示子をシグナリングすることができる。
【０１５５】
また、デコーダは現在ブロックの参照ピクチャのサイズ及びシグナリングされた動きベクトル差分値に基づいてシグナリング対象から除外される可用解像度を判断することができる。図２０の実施形態で、デコーダは第３可用解像度がシグナリングされないことを認知することができる。デコーダは、１つのビットを通じてシグナリングされる解像度指示子に基づいて現在ブロックの動きベクトル差分値の解像度を獲得することができる。
【０１５６】
本発明の追加的な実施形態に従って、動きベクトル予測子により指示される基準点の位置に基づいて図２０を通じて前述した方法の使用有無が決定できる。例えば、基準点の位置が参照ピクチャの境界から既設定された距離以内の場合、図２０を通じて説明された方法が使われることができる。
【０１５７】
一実施形態に従って図２０を通じて説明された実施形態は、シグナリングされた動きベクトル差分値のサイズによって適用するか否かが決定できる。例えば、シグナリングされた動きベクトル差分値が既設定された値より大きい場合のみに、エンコーダ及びデコーダは参照ピクチャから外れる参照ブロック候補を生成する可用解像度が存在するかを検討することができる。シグナリングされた動きベクトル差分値が既設定された値より小さい場合、エンコーダ及びデコーダは図２０を通じて説明した方法を使用しないことがある。
【０１５８】
追加的な実施形態に従って、シグナリング対象から除外された可用解像度に代わって新たな可用解像度が使われることができる。例えば、特定可用解像度に基づいて修正された動きベクトル差分値に対応する参照ブロック候補が参照ピクチャの境界を外に位置する場合、特定可用解像度を指示する指示子値は特定可用解像度と異なる可用解像度を指示することができる。例えば、異なる可用解像度は特定可用解像度より小さい値でありうる。具体的な実施形態に従って、現在ブロックの解像度セットは１／４、１、４サンプル単位の可用解像度で構成できる。４サンプル単位の可用解像度に対応する参照ブロック候補の少なくとも一部が現在ブロックの参照ピクチャの境界外に位置することができる。この場合、４サンプル単位の可用解像度を指示する解像度指示子値は、２サンプル単位の可用解像度を指示することができる。
【０１５９】
図２１は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度が獲得される方法を示すフローチャートである。図２１では、現在ブロックの解像度セットが１／４、１、４サンプル単位の可用解像度を含むものとして図示しているが、本開示がこれに制限されるのではない。例えば、１／４、１、４サンプル単位の可用解像度のうち、少なくとも一部は１／２、２、１／８、１／１６サンプル単位の可用解像度のうち、一部により代替できる。
【０１６０】
図２１を参照すると、デコーダはビットストリームをパーシング（parsing）して現在ブロックのシグナリングされた動きベクトル差分値を獲得することができる（Ｓ２１０１）。この際、シグナリングされた動きベクトル差分値は、動きベクトル差分値の解像度単位で表現された値でありうる。
【０１６１】
また、デコーダは現在ブロックの動きベクトル差分値の解像度を指示する解像度指示子を獲得することができる。一実施形態に従って、解像度指示子は可変長さのビットで表現される複数の値のうち、いずれか１つを示すことができる。デコーダは解像度指示子の最初のビットをパーシングすることができる（Ｓ２１０３）。次に、デコーダは解像度指示子の最初のビットが‘０’であるかを判断することができる（Ｓ２１０５）。最初のビットが‘０’の場合、１／４単位の可用解像度が現在ブロックの動きベクトル差分値の解像度に使われることができる。この場合、解像度指示子は後述する２番目のビットを含まないことがある。
【０１６２】
最初のビットが‘０’でない場合、デコーダは４−サンプル単位の可用解像度に対応する参照ブロック候補が参照ピクチャの境界内に位置するかを判断することができる（Ｓ２１０７）。ここで、４サンプル単位の可用解像度に対応する参照ブロック候補は４サンプル単位の可用解像度に基づいて獲得された動きベクトル候補が指示する参照ブロック候補でありうる。具体的に、前記動きベクトル候補はステップＳ２１０１のシグナリングされた動きベクトル差分値から４サンプル単位の可用解像度に基づいて修正された動きベクトル差分値を、現在ブロックの動きベクトル予測子に足した値でありうる。一実施形態に従って、４サンプル単位の可用解像度に対応する参照ブロック候補が参照ピクチャの境界内に位置しない場合、１サンプル単位の可用解像度を現在ブロックの動きベクトル差分値の解像度に使用することができる。この場合、解像度指示子は後述する２番目のビットを含まないことがある。
【０１６３】
４サンプル単位の可用解像度に対応する参照ブロック候補が参照ピクチャの境界内に位置する場合、デコーダは解像度指示子の２番目のビットをパーシングすることができる（Ｓ２１０９）。次に、デコーダは解像度指示子の２番目のビットに基づいて現在ブロックの動きベクトル差分値の解像度を決定することができる（Ｓ２１１１）。例えば、１サンプル単位の可用解像度を指示する指示子値は‘１０’であり、４サンプル単位の可用解像度を指示する指示子値は‘１１’でありうる。解像度指示子の２番目のビットが‘０’の場合、デコーダは１サンプル単位の可用解像度を現在ブロックの動きベクトル差分値の解像度に使用することができる。反対に、解像度指示子の２番目のビットが‘１’の場合、デコーダは４サンプル単位の可用解像度を現在ブロックの動きベクトル差分値の解像度に使用することができる。
【０１６４】
図２１で、シグナリングされた動きベクトル差分値を獲得するステップ（Ｓ２１０１）は、解像度指示子の最初のビットをパーシングするステップ（Ｓ２１０３）より先行するものとして図示されているが、本開示がこれに制限されるのではない。例えば、ステップＳ２１０１は、ステップＳ２１０３に後続することができる。一実施形態に従って、解像度指示子が複数のビットで表現される場合、各々のビットはビデオ信号処理のためのシンタックス（syntax）上で別途のインデックスまたはフラグ（flag）を通じて具現できる。
【０１６５】
追加的な実施形態に従って、解像度指示子の２番目のビットをパーシングするステップ（Ｓ２１０９）は少なくとも現在ブロックの動きベクトル予測子を獲得するステップの以後に遂行できる。解像度指示子の２番目のビットは現在ブロックの動きベクトル予測子が指示する位置によってパーシングするか否かが決定できる。前述したように、特定可用解像度に対応する参照ブロック候補が参照ピクチャの境界外に位置する場合、該当可用解像度のためのシグナリングが省略できるためである。即ち、ビデオ信号がエンコーディングまたはデコーディングされるシンタックス上で解像度指示子の２番目のビットは現在ブロックの動きベクトル予測子情報より以後にパーシングできる。
【０１６６】
また、解像度指示子の２番目のビットをパーシングするステップ（Ｓ２１０９）は、少なくとも現在ブロックのシグナリングされた動きベクトル差分値を獲得するステップの以後に遂行できる。解像度指示子の２番目のビットは現在ブロックのシグナリングされた動きベクトル差分値によってパーシングするか否かが決定できる。即ち、ビデオ信号がエンコーディングまたはデコーディングされるシンタックス（syntax）上で解像度指示子の２番目のビットは現在ブロックの動きベクトル差分値を示す情報より以後にパーシングできる。
【０１６７】
図２２は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度が獲得される方法を示すフローチャートである。図２２を参照すると、デコーダはビットストリームをパーシングして現在ブロックのシグナリングされた動きベクトル差分値を獲得することができる（２００１）。この際、シグナリングされた動きベクトル差分値は、動きベクトル差分値の解像度単位で表現された値でありうる。また、デコーダは現在ブロックの動きベクトル差分値の解像度を指示する解像度指示子を獲得することができる。デコーダは、解像度指示子のｎ番目のビットをパーシングすることができる（Ｓ２２０５）。ここで、ｎは１からＮまでの整数でありうる。ｎは１からＮまでループ演算によって順次に増加する値でありうる。解像度指示子のｎ番目のビットが‘０’の場合、デコーダはｎ番目の可用解像度を現在ブロックの動きベクトル差分値の解像度に使用することができる。この際、ｎ番目の可用解像度は現在ブロックの解像度セットが含む可用解像度のうち、ｎ番目の指示子値により指示される可用解像度でありうる。
【０１６８】
解像度指示子のｎ番目のビットが‘０’でない場合、デコーダは以前解像度セットからｎ番目の可用解像度を除外することができる（Ｓ２２０７）。デコーダは、以前解像度セットからｎ番目の可用解像度を除外して第１現在解像度セットを獲得することができる（Ｓ２２０７）。一実施形態に従って、ｎが１の場合、デコーダは初期解像度セット（initial resolution set）からｎ番目の可用解像度を除外して第１現在解像度セットを獲得することができる。次に、デコーダは第１現在解像度セットが含む可用解像度の個数が１つであるかを判断することができる（Ｓ２２０９）。第１現在解像度セットが含む可用解像度の個数が１つの場合、デコーダは第１現在解像度セットが含む可用解像度を現在ブロックの動きベクトル差分値の解像度に使用することができる。
【０１６９】
第１現在解像度セットが含む可用解像度の個数が１つでない場合、デコーダは第１現在解像度セットで参照ピクチャの境界外に位置する参照ブロック候補に対応する可用解像度を除外することができる（Ｓ２２１１）。デコーダは、第１現在解像度セットで参照ピクチャの境界外に位置する参照ブロック候補に対応する可用解像度を除外して第２現在解像度セットを獲得することができる。
【０１７０】
次に、デコーダは第２現在解像度セットが含む可用解像度の個数が１つであるかを判断することができる（Ｓ２２１３）。第２現在解像度セットが含む可用解像度の個数が１つの場合、デコーダは第２現在解像度セットが含む可用解像度を現在ブロックの動きベクトル差分値の解像度に使用することができる。第１現在解像度セットが含む可用解像度の個数が１つでない場合、デコーダはステップＳ２２０３乃至ステップ２０１３をまた遂行することができる。また、デコーダはｎを１増加させることができる。この際、デコーダは次のループ演算のステップＳ２２０７で第２現在解像度セットを以前解像度セットに使用することができる。
【０１７１】
図２３は、本発明の一実施形態に従って現在ブロックの動きベクトルが獲得される方法を示すフローチャートである。本発明の一実施形態に従って、現在ブロックの動きベクトル差分値を示す情報は動きベクトル差分値に対する第１情報及び動きベクトル差分値に対する第２情報を含むことができる。この際、第１情報及び第２情報は、各々動きベクトル差分値に対する互いに異なる情報でありうる。図２３を参照すると、デコーダは動きベクトル差分値に対する第１情報をパーシングすることができる。また、デコーダは動きベクトル差分値に対する第２情報をパーシングすることができる。次に、デコーダは動きベクトル差分値に対する第１情報及び動きベクトル差分値に対する第２情報に基づいて現在ブロックの動きベクトルを獲得することができる。本発明の一実施形態に従って、図２３で、動きベクトル差分値に対する第１情報または第２情報をパーシングするステップのうち、いずれか１つは省略できる。以下、現在ブロックの動きベクトル差分値に対する第１情報または第２情報がパーシングされる条件について説明する。
【０１７２】
図２４は、本発明の一実施形態に従って現在ブロックの動きベクトルが獲得される方法を示すフローチャートである。本発明の一実施形態に従って、現在ブロックの動きベクトル差分値を示す情報は動きベクトル差分値に対する第１情報及び動きベクトル差分値に対する第２情報を含むことができる。特定の状況で、動きベクトル差分値に対する第１情報及び動きベクトル差分値に対する第２情報のうち、いずれか１つを通じて現在ブロックの動きベクトルが決定できる。一方、他の状況では、動きベクトル差分値に対する第１情報及び動きベクトル差分値に対する第２情報のうち、いずれか１つだけでは１つの動きベクトルが決定され難いこともある。
【０１７３】
図２４を参照すると、デコーダは動きベクトル差分値に対する第１情報をパーシングすることができる。次に、デコーダは動きベクトル差分値に対する第１情報を使用して複数の参照ブロック候補を獲得することができる。デコーダは、複数の参照ブロック候補の全部が参照ピクチャの境界内に位置するかを判断することができる。複数の参照ブロック候補のうちの一部が参照ピクチャの境界外に位置する場合、デコーダは動きベクトル差分値に対する第１情報に基づいて現在ブロックの動きベクトルを獲得することができる。複数の参照ブロック候補の全部が参照ピクチャの境界内に位置する場合、デコーダは動きベクトル差分値に対する第２情報をパーシングすることができる。次に、デコーダは動きベクトル差分値に対する第１情報及び動きベクトル差分値に対する第２情報に基づいて現在ブロックの動きベクトルを獲得することができる。
【０１７４】
一実施形態に従って、現在ブロックの動きベクトル差分値に対する第１情報は動きベクトル差分値の符号情報を除外した情報でありうる。例えば、現在ブロックの動きベクトル差分値に対する第１情報は現在ブロックの動きベクトル差分値の絶対値を示すことができる。また、現在ブロックの動きベクトル差分値に対する第２情報は、現在ブロックの動きベクトル差分値の符号を示すことができる。前述した実施形態に従って、特定ブロックの動きベクトル差分値は第２情報に対するパーシング無しで獲得できる。これによって、エンコーダ及びデコーダは動きベクトル差分値のためのシグナリングオーバーヘッドを減少させることができる。以下では、現在ブロックの動きベクトル差分値の符号情報が暗黙的にシグナリングされる方法について具体的に説明する。
【０１７５】
図２５は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の符号ビットが暗黙的にシグナリングされる方法を示す図である。図９を通じて前述したように、動きベクトル差分値を示す情報は、動きベクトル差分値の絶対値情報と動きベクトル差分値の符号情報のうち、少なくとも１つを含むことができる。動きベクトル差分値の符号情報は負の符号（−）または正の符号（＋）のうち、いずれか１つでありうる。また、動きベクトル差分値を示す情報は、成分別絶対値情報及び符号情報を含むことができる。例えば、現在ブロックの動きベクトル差分値はｘ軸成分及びｙ軸成分で構成できる。動きベクトル差分値のｘ軸成分は、現在ブロックの動きベクトル予測子により指示される基準点と参照ブロックの位置との間のｘ軸上の距離（絶対値）及び方向（符号）を含むことができる。また、動きベクトル差分値のｙ軸成分は、現在ブロックの動きベクトル予測子により指示される基準点と参照ブロックの位置との間のｙ軸上の距離（絶対値）及び方向（符号）を含むことができる。この際、現在ブロックの動きベクトル差分値のｘ軸成分の符号情報またはｙ軸成分の符号情報のうち、少なくとも１つは暗黙的にシグナリングできる。即ち、動きベクトル差分値のｘ軸成分及びｙ軸成分の各々に対して前述した符号ビットハイディング動作が遂行できる。
【０１７６】
図２５を参照すると、負の符号（−）が適用された現在ブロックの動きベクトル差分値のｘ軸成分及び正の符号（＋）が適用された現在ブロックの動きベクトル差分値のｙ軸成分に基づいて、第４参照ブロック候補（Candidate reference block 1）が獲得できる。また、正の符号（＋）が適用された現在ブロックの動きベクトル差分値のｘ軸成分及び正の符号（−）が適用された現在ブロックの動きベクトル差分値のｙ軸成分に基づいて、第５参照ブロック候補（Candidate reference block 2）が獲得できる。
【０１７７】
一実施形態に従って、第４参照ブロック候補（Candidate reference block 1）及び第５参照ブロック候補（Candidate reference block 2）のうち、いずれか１つが参照ピクチャ（Reference picture）の境界外に位置する場合、現在ブロックの動きベクトル差分値のｘ軸成分の符号情報はハイディングできる。この場合、エンコーダはハイディングされた符号情報をエンコーディングしないことがある。また、デコーダはハイディングされた符号情報に対応する動きベクトル差分値の符号を該当符号情報に対するパーシング過程を遂行しないで決定することができる。
【０１７８】
図２５で、第４参照ブロック候補（Candidate reference block 1）は参照ピクチャの境界外に位置することができる。この場合、現在ブロックの動きベクトル差分値のｘ軸成分の符号情報はハイディングできる。デコーダは、動きベクトル差分値のｘ軸成分の符号情報をパーシングする動作無しで、動きベクトル差分値のｘ軸成分の符号情報を獲得することができる。デコーダは動きベクトル差分値のｘ軸成分の符号に正の符号を使用することができる。
【０１７９】
図２６は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の符号ビットが暗黙的にシグナリングされる方法を示す図である。一実施形態に従って、現在ブロックの動きベクトル差分値の符号が決定される前まで現在ブロックの動きベクトル予測子が決定されないことがある。例えば、ビデオ信号処理のためのシンタックス上で現在ブロックのＭＶＰを指示するＭＶＰインデックスがパーシングされる前に現在ブロックの動きベクトル差分値の符号が決定できる。この場合、デコーダは複数のＭＶＰ候補（MVP candidate A, MVP candidate B）の各々に対して負の符号または正の符号が適用された動きベクトル差分値を足して複数の参照ブロック候補（Candidate reference block A-1, Candidate reference block A-2, Candidate reference block B-1, Candidate reference block B-2）を獲得することができる。
【０１８０】
次に、デコーダは負の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補（Candidate reference block A-1, Candidate reference block B-1）の全部が参照ピクチャの境界外に位置するかを判断することができる。負の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補の全部が参照ピクチャの境界外に位置する場合、デコーダは特定成分の符号情報をパーシングする動作無しで現在ブロックの動きベクトル差分値の特定成分の符号を決定することができる。この場合、デコーダは正の符号を現在ブロックの動きベクトル差分値の特定成分の符号に使用することができる。
【０１８１】
また、デコーダは正の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補（Candidate reference block A-2, Candidate reference block B-2）の全部が参照ピクチャの境界外に位置するかを判断することもできる。正の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補の全部が参照ピクチャの境界外に位置する場合、デコーダは特定成分の符号情報をパーシングする動作無しで現在ブロックの動きベクトル差分値の特定成分の符号を決定することができる。この場合、デコーダは負の符号を現在ブロックの動きベクトル差分値の特定成分の符号に使用することができる。
【０１８２】
図２７は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の符号ビットが暗黙的にシグナリングされる方法を示す図である。一実施形態に従って、現在ブロックの動きベクトル差分値の符号が決定される前まで現在ブロックの動きベクトル差分値の解像度が決定されないことがある。例えば、ビデオ信号処理のためのシンタックス上で現在ブロックの動きベクトル差分値の解像度を指示する解像度指示子がパーシングされる前に現在ブロックの動きベクトル差分値の符号が決定できる。この場合、デコーダは複数の可用解像度（res 1、res 2）のうちのいずれか１つが掛けられて、負の符号及び正の符号のうちのいずれか１つが適用された動きベクトル差分値を現在ブロックの動きベクトル予測子に足して複数の参照ブロック候補（Candidate reference block 1-1, Candidate reference block 1-2, Candidate reference block 2-1, Candidate reference block 2-2）を獲得することができる。
【０１８３】
次に、デコーダは負の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補（Candidate reference block 2-1, Candidate reference block 1-1）の全部が参照ピクチャの境界外に位置するかを判断することができる。この際、負の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補の各々を構成するために動きベクトル差分値に適用された可用解像度は互いに異なることがある。負の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補の全部が参照ピクチャの境界外に位置する場合、デコーダは特定成分の符号情報をパーシングする動作無しで現在ブロックの動きベクトル差分値の特定成分の符号を決定することができる。この場合、デコーダは正の符号を現在ブロックの動きベクトル差分値の特定成分の符号に使用することができる。
【０１８４】
また、デコーダは正の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補（Candidate reference block 1-2, Candidate reference block 2-2）の全部が参照ピクチャの境界外に位置するかを判断することもできる。この際、正の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補の各々を構成するために動きベクトル差分値に適用された可用解像度は互いに異なることがある。正の符号が適用された動きベクトル差分値の特定成分に基づいた複数の参照ブロック候補の全部が参照ピクチャの境界外に位置する場合、デコーダは特定成分の符号情報をパーシングする動作無しで現在ブロックの動きベクトル差分値の特定成分の符号を決定することができる。この場合、デコーダは負の符号を現在ブロックの動きベクトル差分値の特定成分の符号に使用することができる。
【０１８５】
図２５乃至図２７では、説明の便宜のために動きベクトル差分値のｘ軸成分を例に挙げて説明しているが、本開示がこれに制限されるのではない。例えば、前述した実施形態は動きベクトル差分値のｙ軸成分に対して同一または相応する方法により適用できる。
【０１８６】
図２８は、図２５乃至図２７の実施形態に対するシンタックスの例示を示す図である。図２８の第１シンタックスオーダー（syntax order）２８０１を参照すると、デコーダは動きベクトル差分値の絶対値（|ＭＶＤ|）に基づいて動きベクトル差分値の符号情報に対するパーシングするか否かを決定することができる。図２８の第２シンタックスオーダー２８０２を参照すると、デコーダは動きベクトル差分値の絶対値（|ＭＶＤ|）及び動きベクトル差分値の解像度（MVD resolution）に基づいて動きベクトル差分値の符号情報に対するパーシングするか否かを決定することができる。図２８の第３シンタックスオーダー２８０３を参照すると、デコーダは動きベクトル差分値の絶対値（|ＭＶＤ|）、動きベクトル差分値の解像度（MVD resolution）及びＭＶＰフラグ（MVP flag）に基づいて動きベクトル差分値の符号情報に対するパーシングするか否かを決定することができる。
【０１８７】
図２９は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度及びＭＶＰがシグナリングされる方法を示す図である。本発明の一実施形態に従って、１つの統合指示子に基づいて動きベクトルと関連した２つ以上の情報がシグナリングできる。例えば、現在ブロックの動きベクトル差分値の解像度と現在ブロックのＭＶＰは１つの統合指示子（MVR Index）によりシグナリングできる。
【０１８８】
図２９のように、ＭＶＰインデックスの各々にマッピングされる可用解像度が事前に設定できる。エンコーダ及びデコーダはＭＶＰインデックスの各々と可用解像度が互いにマッピングされたテーブルを共有することができる。また、エンコーダ及びデコーダは共有されたテーブル及び統合指示子（MVR Index）に基づいて現在ブロックのＭＶＰ及び現在ブロックの動きベクトル差分値の解像度を獲得することができる。
【０１８９】
一方、動きベクトル差分値の修正に使われた解像度によって動きベクトルの正確度が変わることができる。例えば、動きベクトル差分値の修正に使われた解像度が大きいほど、動きベクトルの正確度が低くなることがある。これによって、特定可用解像度が現在ブロックの動きベクトル差分値の解像度に使われる場合、現在ブロックの追加的な動きベクトル差分値がシグナリングできる。以下、追加的な動きベクトル差分値は第２乃至第ｎ動きベクトル差分値と称されることができる。また、追加的な動きベクトル差分値を除外した既存の動きベクトル差分値は第１動きベクトル差分値と称されることもできる。
【０１９０】
図３０は、本発明の一実施形態に従って複数の動きベクトル差分値に基づいて現在ブロックの動きベクトルが誘導される方法を示す図である。本発明の一実施形態に従って、複数の動きベクトル差分値及び各々に対応する解像度を用いて現在ブロックの動きベクトルが獲得できる。例えば、現在ブロックの動きベクトル差分値の解像度が既設定された解像度より大きい場合、追加的な動きベクトル差分値がシグナリングできる。具体的な実施形態に従って、現在ブロックの解像度セットが１／４、１、４サンプル単位の可用解像度を含むことができる。この際、現在ブロックの動きベクトル差分値の解像度が‘４’の場合、追加的な動きベクトル差分値がシグナリングできる。また、追加的な動きベクトル差分値は既存の動きベクトル差分値がシグナリングされた解像度に一層小さい解像度に基づいてシグナリングできる。これを通じて、エンコーダ及びデコーダは動きベクトルの正確度を高めて、予測誤差を減少させることができる。
【０１９１】
図３０を参照すると、Ｒ１は第１動きベクトル差分値の解像度を示し、Ｒ２は第２動きベクトル差分値の解像度を示す。また、ＭＶＤｖａｌ１はＲ１単位でシグナリングされた第１動きベクトル差分値を示し、ＭＶＤｖａｌ２はＲ２単位でシグナリングされた第２動きベクトル差分値を示す。例えば、第１動きベクトル差分値の解像度（Ｒ１）が既設定された解像度より大きい場合、デコーダは追加的にシグナリングされた第２動きベクトル差分値（ＭＶＤｖａｌ２）を獲得することができる。この際、第２動きベクトル差分値の解像度（Ｒ２）は現在ブロックの第１動きベクトル差分値の解像度（Ｒ１）より小さいことがある。
【０１９２】
一方、本発明の一実施形態に従って現在ブロックのためのインター予測方法または動き補償方法は、アフィン（affine）モデル基盤の動き補償（以下、アフィン動き補償）を含むことができる。既存のインター予測方法によれば、現在ブロックに対するＬ０予測及びＬ１予測別にただ１つの動きベクトルを使用してインター予測が遂行される。これによって、既存の一般インター予測方法は、並進運動（translation motion）の予測に最適化されている。しかしながら、ズームイン／アウト、回転及びその他の不規則的な運動に対する動き補償を効率よく遂行するためには多様な形態とサイズの参照ブロックが使われる必要がある。以下では、本発明の一実施形態に従ってアフィン動き補償が遂行される方法について説明する。
【０１９３】
図３１は、本発明の一実施形態に従ってアフィンモデルに基づく動き補償を示す図である。図３１を参照すると、アフィン動き補償では現在ブロック３１０１と異なるサイズ、形態及び／または方向を有する参照ブロック３１０２を用いて現在ブロック３１０１の予測が遂行できる。即ち、参照ブロック３１０２は非−矩形形態を有することができ、現在ブロック３１０１よりサイズが大きいか小さいことがある。参照ブロック３１０２は、現在ブロック３１０１にアフィン変換を遂行して獲得できる。アフィン変換を通じて現在ブロックに対するスケーリング、ローテーション、シアリング（shearing）、反転（reflection）、または直角投影（orthogonal projection）が遂行できる。一実施形態に従って、アフィン変換は複数のコントロールポイント動きベクトル（Control Point  Ｍotion Vector、ＣＰＭＶ）を用いて遂行できる。例えば、アフィン変換は３個のコントロールポイント動きベクトルを用いる６−パラメータアフィン変換と、２つのコントロールポイント動きベクトルを用いる４−パラメータアフィン変換を含むことができる。これに対する具体的な実施形態は後述する。
【０１９４】
図３２は、４−パラメータアフィン動き補償方法の一実施形態を図示する。アフィン変換の演算量及びシグナリングオーバーヘッドを減らすために、既設定された個数のコントロールポイント動きベクトル（ＣＰＭＶ）を使用してアフィン動き補償が遂行できる。コントロールポイント動きベクトル（ＣＰＭＶ）は現在ブロックの特定コントロールポイント（または、サンプル位置）に対応する動きベクトルである。特定コントロールポイントは、現在ブロックの隅のうち、少なくとも１つを含むことができる。本発明の実施形態では、現在ブロックの上左側隅に対応するＣＰＭＶをｖ０（または、第１のＣＰＭＶ）と、現在ブロックの上右側隅に対応するＣＰＭＶをｖ１（または、第２のＣＰＭＶ）と、現在ブロックの下左側隅に対応するＣＰＭＶをｖ２（または、第３のＣＰＭＶ）と各々称する。アフィン動き補償のために少なくとも２つのＣＰＭＶを含むＣＰＭＶセットが使われることができる。
【０１９５】
図３２の実施形態によれば、ｖ０とｖ１を使用して４−パラメータアフィン動き補償が遂行できる。実線で表示された現在ブロック３２０１は点線で表示された位置の参照ブロック３２０２を用いて予測できる。現在ブロック３２０１の各サンプルはアフィン変換を通じて互いに異なる参照サンプルにマッピングできる。より具体的に、現在ブロック３２０１のサンプル位置（ｘ、ｙ）での動きベクトル（ｖｘ、ｖｙ）は以下の［数式２］により誘導できる。本開示で、サンプル位置は現在ブロック内で相対的な座標を示すことができる。例えば、サンプル位置（ｘ、ｙ）は現在ブロックの左上段サンプルの位置を原点（０、０）にする座標でありうる。
【０１９６】
【数２】
2021526340.tif 000004
【０１９７】
ここで、（ｖ０ｘ、ｖ０ｙ）は現在ブロック３２０１の上左側隅に対応する第１のＣＰＭＶであり、（ｖ１ｘ、ｖ１ｙ）は現在ブロックの上右側隅に対応する第２のＣＰＭＶである。また、ｗは現在ブロック３２０１の幅である。
【０１９８】
図３３は、６−パラメータアフィン動き補償方法の一実施形態を図示する。より複雑な動きに対する正確な予測のために、３個以上のＣＰＭＶを使用したアフィン動き補償が遂行できる。図３３を参照すると、６−パラメータアフィン動き補償は３個のＣＰＭＶ、即ち、ｖ０、ｖ１、及びｖ２を用いて遂行できる。ここで、ｖ０は現在ブロックの上左側隅に対応するＣＰＭＶであり、ｖ１は現在ブロックの上右側隅に対応するＣＰＭＶであり、ｖ２は現在ブロックの下左側隅に対応するＣＰＭＶである。現在ブロックの各サブブロックの動きベクトルは、前記ｖ０、ｖ１、及びｖ２に基づいて計算できる。図３３の実施形態によれば、実線で表示された現在ブロック３３０１は点線で表示された位置の参照ブロック３３０２を用いて予測できる。現在ブロック３３０１の各サンプルはアフィン変換を通じて互いに異なる参照サンプルにマッピングできる。より具体的に、現在ブロック３３０１のサンプル位置（ｘ、ｙ）での動きベクトル（ｍｖｘ、ｍｖｙ）は以下の［数式３］により誘導できる。
【０１９９】
【数３】
2021526340.tif 000005
【０２００】
ここで、（ｍｖ０ｘ、ｍｖ０ｙ）は現在ブロック３３０１の上左側隅に対応する第１のＣＰＭＶであり、（ｍｖ１ｘ、ｍｖ１ｙ）は上右側隅に対応する第２のＣＰＭＶであり、（ｍｖ２ｘ、ｍｖ２ｙ）は下左側隅に対応する第３のＣＰＭＶである。また、ｗは現在ブロック３３０１の幅であり、ｈは現在ブロック３３０１の高さである。
【０２０１】
図３４は、サブブロック基盤のアフィン動き補償方法の一実施形態を図示する。アフィン動き変換を利用すれば、現在ブロックの各サンプル位置での動きベクトル（即ち、動きベクトルフィールド）が誘導できる。しかしながら、演算量を減らすために、図３４のようにサブブロック基盤のアフィン動き補償が遂行できる。図３４を参照すると、現在ブロックは複数のサブブロックを含むことができる。また、各サブブロックの代表動きベクトルがＣＰＭＶセット（ｖ０、ｖ１、及びｖ２）に基づいて獲得できる。一実施形態に従って、各サブブロックの代表動きベクトルは該当サブブロックの中間のサンプル位置に対応する動きベクトルでありうる。追加的な実施形態によれば、サブブロックの動きベクトルには一般的な動きベクトルより正確度の高い動きベクトルが使われることができる。このために、動き補償補間フィルタが適用できる。
【０２０２】
アフィン動き補償が遂行されるサブブロックのサイズは、多様な方法により設定できる。本発明の一実施形態によれば、サブブロックは４×４または８×８のように既設定されたサイズを有することができる。本発明の他の実施形態によれば、サブブロックのサイズＭ×Ｎは以下の［数式４］により決定できる。
【０２０３】
【数４】
2021526340.tif 000006
【０２０４】
ここで、ｗは現在ブロックの幅であり、ＭｖＰｒｅは動きベクトルの分数単位正確度である。（ｖ２ｘ、ｖ２ｙ）は現在ブロックの下左側隅に対応する第３のＣＰＭＶである。一実施形態に従って、第３のＣＰＭＶは前述した［数式２］により計算できる。ｍａｘ（ａ、ｂ）はａとｂのうち、より大きい値を返還する関数であり、ａｂｓ（ｘ）はｘの絶対値を返還する関数である。また、ｃｌｉｐ３（ｘ、ｙ、ｚ）はｚ＜ｘの場合、ｘを返還し、ｚ＞ｙの場合、ｙを返還し、その他の場合、ｚを返還する関数である。
【０２０５】
デコーダは、ＣＰＭＶセットのＣＰＭＶを用いて現在ブロックの各サブブロックの動きベクトルを獲得する。また、デコーダは各サブブロックの代表動きベクトルを用いて現在ブロックの各サブブロックの予測子を獲得することができる。各サブブロックの予測子を組合せて現在ブロックの予測子が獲得されることができ、デコーダはこのように獲得された現在ブロックの予測子を用いて現在ブロックを復元することができる。
【０２０６】
図３５、図３６、図３７、及び図３８は、現在ブロックの予測のためのコントロールポイント動きベクトルセットを獲得する方法の実施形態を図示する。本発明の一実施形態に従って、現在ブロックのアフィン動き補償のためのＣＰＭＶセットは多様な方法により獲得できる。より具体的に、現在ブロックの予測のためのＣＰＭＶセットは１つ以上の周辺ブロックの動きベクトル情報セットを参照して獲得できる。また、動きベクトル情報セットは１つ以上のブロックの動きベクトル情報の集合を示す。周辺ブロックは、現在ブロックの既設定された周辺位置を含むブロックを示すことができる。この際、周辺ブロックは既設定された周辺位置を含むコーディングユニット、または前記周辺位置を含む既設定された単位（例、４×４、８×８）の領域でありうる。
【０２０７】
現在ブロックのＣＰＭＶを誘導するために参照できる複数の候補が存在することができる。したがって、現在ブロックのＣＰＭＶを誘導するために参照する周辺ブロックに対する情報が別途にシグナリングできる。本発明の一実施形態によれば、現在ブロックの各サブブロックの動きベクトルを誘導するために参照する動きベクトル情報セットを指示するＣＰＭＶ指示子がシグナリングできる。エンコーダはＣＰＭＶ指示子をシグナリングすることができる。ＣＰＭＶ指示子は現在ブロックの各サブブロックの動きベクトルを誘導するために参照する周辺ブロックの動きベクトル情報セットを指示することができる。デコーダは前記指示子を獲得し、指示子が指示する周辺ブロックの動きベクトル情報セットを参照して現在ブロックのためのＣＰＭＶセットの各ＣＰＭＶを獲得することができる。
【０２０８】
より具体的な実施形態によれば、エンコーダ及びデコーダは１つ以上の動きベクトル情報セット候補で構成されたＣＰＭＶ候補リストを生成することができる。ＣＰＭＶ候補リストを構成する各々の動きベクトル情報セット候補は、現在ブロックの動きベクトルを誘導するために使用可能な周辺ブロックの動きベクトルセットである。この際、ＣＰＭＶ指示子はＣＰＭＶ候補リストのうち、いずれか１つの動きベクトル情報セットを指示するインデックスでありうる。現在ブロックのＣＰＭＶはＣＰＭＶ候補リストのうち、ＣＰＭＶ指示子（即ち、インデックス）に基づいて選択された動きベクトル情報セットを参照して獲得できる。以下、現在ブロックの動きベクトル情報（または、ＣＰＭＶセット）の誘導のためのＣＰＭＶ候補リストに含まれることができる動きベクトル情報セット候補の多様な実施形態について叙述する。
【０２０９】
図３５は、現在ブロックのＣＰＭＶセットを獲得する一実施形態を図示する。図３５の実施形態では現在ブロックのＣＰＭＶセットが２つのＣＰＭＶ、即ち、ｖ０とｖ１を含むことと仮定する。本発明の一実施形態によれば、現在ブロックのＣＰＭＶは該当ポイントに隣接した周辺ブロックの動きベクトルから誘導できる。図３５を参照すると、ｖ０は該当ポイントに隣接した周辺ブロックＡ、Ｂ、及びＣのうち、いずれか１つの動きベクトルから誘導されることができ、ｖ１は該当ポイントに隣接した周辺ブロックＤ及びＥのうち、いずれか１つの動きベクトルから誘導できる。周辺ブロックＡ、Ｂ、Ｃ、Ｄ、及びＥの動きベクトルを各々ｖＡ、ｖＢ、ｖＣ、ｖＤ、及びｖＥとする時、ＣＰＭＶ候補リストに含まれることができる動きベクトル情報セットは、以下の［数式５］のように誘導できる。
【０２１０】
【数５】
2021526340.tif 000007
【０２１１】
即ち、ｖＡ、ｖＢ、ｖＣのうちから選択されたｖ０と、ｖＤ、ｖＥのうちから選択されたｖ１で構成された（ｖ０、ｖ１）対が獲得できる。この際、ｖ０は現在ブロックの上左側隅に隣接したブロックの動きベクトルから誘導され、ｖ１は現在ブロックの上右側隅に隣接したブロックの動きベクトルから誘導される。追加的な実施形態によれば、現在ブロックのＰＯＣ（Picture Order Count）、周辺ブロックの参照ピクチャのＰＯＣ、及び現在ブロックの参照ピクチャのＰＯＣに基づいて動きベクトルスケーリングが遂行できる。
【０２１２】
このように獲得された動きベクトル情報セット候補を含むＣＰＭＶ候補リストが生成されることができ、ＣＰＭＶ候補リストのうち、いずれか１つの動きベクトル情報セットを指示するＣＰＭＶ指示子がシグナリングできる。本発明の追加的な実施形態によれば、ＣＰＭＶ候補リストには他の方式のインター予測のための動きベクトル情報セット候補が含まれることもできる。例えば、ＣＰＭＶ候補リストは既存のインター予測のためのＭＶＰ候補に基づいて獲得された動きベクトル情報セット候補を含むことができる。
【０２１３】
デコーダは、候補リストから獲得された動きベクトル情報セットに基づいて現在ブロックのＣＰＭＶを誘導することができる。一実施形態によれば、デコーダは候補リストから獲得された動きベクトル情報セットの動きベクトルを別途の動きベクトル差分値無しで、現在ブロックのＣＰＭＶに使用するので、アフィンマージ（merge）予測を遂行することができる。このようなアフィン動き補償方法はアフィンマージ予測モードと称されることができる。
【０２１４】
他の実施形態によれば、デコーダは現在ブロックのＣＰＭＶのための別途の動きベクトル差分値を獲得することができる。デコーダは、ＣＰＭＶ候補リストから獲得された動きベクトル情報セットの動きベクトルを前記動きベクトル差分値と合算して現在ブロックのＣＰＭＶを獲得することができる。このようなアフィン動き補償方法はアフィンインター予測モードと称されることができる。デコーダが現在ブロックのアフィン動き補償のために別途の動きベクトル差分値を使用するか否かを指示するフラグまたはインデックスが別途にシグナリングできる。追加的な実施形態に従って、現在ブロックのアフィン動き補償のために別途の動きベクトル差分値が使われるかは現在ブロックのサイズ（例、ＣＵサイズ）に基づいて決定できる。例えば、現在ブロックのサイズが既設定されたサイズ以上である場合、エンコーダ及びデコーダが現在ブロックのアフィン動き補償のために別途の動きベクトル差分値を使用するように設定できる。
【０２１５】
図３６は、現在ブロックのＣＰＭＶセットを獲得する他の実施形態を図示する。本発明の他の実施形態によれば、現在ブロックのＣＰＭＶはアフィン動き補償が遂行された周辺ブロックの動きベクトル情報から誘導できる。即ち、現在ブロックのＣＰＭＶは周辺ブロックのＣＰＭＶまたは動きベクトルから誘導できる。この際、周辺ブロックは現在ブロックの左側周辺ブロックと現在ブロックの上側周辺ブロックを含むことができる。図３６（ａ）を参照すると、左側周辺ブロックは現在ブロックの下左側隅に隣接したブロック、即ち、左側ブロックＡ及び下左側ブロックＤを含む。また、上側周辺ブロックは現在ブロックの上左側隅に隣接したブロック、即ち、上左側ブロックＥと、現在ブロックの上右側隅に隣接したブロック、即ち、上側ブロックＢ及び上右側ブロックＣを含む。デコーダは、既設定された順に周辺ブロックがアフィン動き補償が遂行されたかを確認する。一実施形態に従って、既設定された順序はＡ、Ｂ、Ｃ、Ｄ、Ｅでありうる。アフィン動き補償が遂行された周辺ブロックが発見されれば、デコーダは該当周辺ブロックのＣＰＭＶセット（または、動きベクトル）を用いて現在ブロックのＣＰＭＶセットを獲得する。図３６（ｂ）の実施形態を参照すると、左側ブロックＡのＣＰＭＶセットが現在ブロックのＣＰＭＶセットを誘導することに使われることができる。即ち、左側ブロックＡのＣＰＭＶセット（ｖ２、ｖ３、ｖ４）に基づいて現在ブロックのＣＰＭＶセット（ｖ０、ｖ１）が獲得できる。
【０２１６】
本発明の実施形態によれば、現在ブロックのＣＰＭＶを誘導するために参照する周辺ブロックに対する情報が別途にシグナリングできる。この際、現在ブロックの周辺ブロックのＣＰＭＶセットの各々は既設定された順序に従って前述したＣＰＭＶ候補リストを構成する動きベクトル情報セット候補になることができる。より具体的に、動きベクトル情報セット候補は現在ブロックの左側周辺ブロックのＣＰＭＶ（または、動きベクトル）から誘導された第１候補と、現在ブロックの上側周辺ブロックのＣＰＭＶ（または、動きベクトル）から誘導された第２候補を含むことができる。この際、左側周辺ブロックは現在ブロックの下左側隅に隣接したブロックであり、上側周辺ブロックは現在ブロックの上左側隅に隣接したブロックまたは現在ブロックの上右側隅に隣接したブロックである。このように獲得された動きベクトル情報セット候補を含むＣＰＭＶ候補リストが生成されることができ、ＣＰＭＶ候補リストのうち、いずれか１つの動きベクトル情報セットを指示するＣＰＭＶ指示子がシグナリングできる。一実施形態によれば、ＣＰＭＶ指示子は現在ブロックの各サブブロックの動きベクトルを誘導するために参照される周辺ブロックの位置情報を示すことができる。デコーダは、ＣＰＭＶ指示子が指示する周辺ブロックのＣＰＭＶセット（または、動きベクトル）を参照して現在ブロックのＣＰＭＶセットを獲得することができる。
【０２１７】
本発明の追加的な実施形態によれば、現在ブロックのＣＰＭＶは該当ポイントから近い周辺ブロックのＣＰＭＶに基づいて誘導できる。例えば、ｖ０は左側周辺ブロックのＣＰＭＶを参照して獲得され、ｖ１は上側周辺ブロックのＣＰＭＶを参照して獲得できる。または、ｖ０は周辺ブロックＡ、Ｄ、またはＥのＣＰＭＶを参照して獲得され、ｖ１は周辺ブロックＢまたはＣのＣＰＭＶを参照して獲得できる。
【０２１８】
現在ブロックのＣＰＭＶセットを獲得する他の実施形態を図示する。一実施形態に従って、現在ブロックのＣＰＭＶはアフィン動き補償が遂行されたブロックのＣＰＭＶまたは動きベクトルから誘導できる。例えば、現在ブロックを基準に既設定された位置に対応するブロックがアフィン動き補償された場合、該当ブロックのＣＰＭＶセットまたは少なくとも１つの動きベクトルから現在ブロックのＣＰＭＶが誘導できる。図３７を参照すると、既設定された位置は現在ブロックの下左側隅に隣接したＡ０及びＡ１、上右側隅に隣接したＢ０及びＢ１、上左側Ｂ２位置でありうる。本実施形態で、既設定された位置は現在ブロックに隣接しない位置を含むことができる。例えば、既設定された位置は現在ピクチャでない他のピクチャ内で現在ブロックの位置に対応する位置を含むことができる。即ち、現在ブロックのＣＰＭＶセットは既設定された位置に対応する空間的候補または時間的候補から誘導できる。図３７を通じて説明した方法により獲得された動き情報セット候補は、内在的候補（inherited candidate）またはアフィンマージ候補と称されることができる。
【０２１９】
図３６及び図３７を通じて説明したように、アフィン動き補償が遂行された周辺ブロックの動きベクトル情報から現在ブロックのＣＰＭＶが誘導できる。具体的な実施形態に従って、現在ブロックに対する４−パラメータアフィン動き補償のためのＣＰＭＶセット（（ｖ_０ｘ、ｖ_０ｙ）、（ｖ_１ｘ、ｖ_１ｙ））は［数式６］のように誘導できる。
【０２２０】
【数６】
2021526340.tif 000008
【０２２１】
ここで、（ｖ＿Ｅ０ｘ、ｖ＿Ｅ０ｙ）は現在ブロックの上左側ブロックのアフィン動き補償に使われた動きベクトルを示し、（ｖ＿Ｅ１ｘ、ｖ＿Ｅ１ｙ）は現在ブロックの上右側ブロックのアフィン動き補償に使われた動きベクトルを示し、（ｖ＿Ｅ２ｘ、ｖ＿Ｅ２ｙ）は現在ブロックの下左側ブロックのアフィン動き補償に使われた動きベクトルを示すことができる。
【０２２２】
図３８は、本発明の他の一実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す図である。一実施形態に従って、現在ブロックのＣＰＭＶは現在ブロック周辺の１つ以上の動きベクトルを参照して獲得できる。この際、現在ブロック周辺の１つ以上の動きベクトルはアフィン動き補償に使われた動きベクトルでない動きベクトルを含むことができる。例えば、現在ブロックのＣＰＭＶは該当ポイントを基準に既設定された位置の動きベクトルから誘導できる。例えば、既設定された位置は誘導しようとするＣＰＭＶに対応するポイントから一定の距離以内のブロックに含まれる位置でありうる。
【０２２３】
図３８を参照すると、現在ブロックのアフィン動き補償のための第１のＣＰＭＶ（ｍｖ０）、第２のＣＰＭＶ（ｍｖ１）、及び第３のＣＰＭＶ（ｍｖ２）は、前述した既設定された位置の動きベクトルから誘導できる。例えば、第１のＣＰＭＶ（ｍｖ０）は上左側隅の周辺の位置Ａ、Ｂ、Ｃの各々の動きベクトル情報から誘導できる。第２のＣＰＭＶ（ｍｖ１）は上右側隅周辺の位置Ｄ、Ｅの各々の動きベクトル情報から誘導できる。第３のＣＰＭＶ（ｍｖ２）は下左側隅の周辺の位置Ｆ、Ｇの各々の動きベクトル情報から誘導できる。
【０２２４】
一実施形態に従って、デコーダは既設定された順にＣＰＭＶ周辺位置の動きベクトルに対する使用可能性を確認することができる。使用可能な動きベクトルが発見されれば、デコーダは該当動きベクトルを用いて前記ＣＰＭＶを獲得することができる。また、現在ブロックのポイント別にＣＰＭＶを誘導するために参照される周辺位置に対する既設定された組合せが使われることもできる。図３８を通じて説明した方法により獲得された動き情報セット候補はコンストラクテッド候補（constructed candidate）またはアフィンインター候補（inter candidate）と称されることができる。図３５乃至図３８で説明された動きベクトル情報セットは既設定された順序に従ってＣＰＭＶ候補リストを構成する動きベクトル情報セット候補になることができる。
【０２２５】
図３９は、本発明の他の一実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す図である。前述したように、現在ブロックのアフィン動き補償のために複数のＣＰＭＶが使われることができる。本発明の一実施形態に従って、現在ブロックの動き補償のためのＣＰＭＶセットが含む複数のＣＰＭＶのうちの一部は、他の一部に基づいて誘導できる。例えば、エンコーダ及びデコーダは前述した方法により現在ブロックの２つのポイントの各々に対応するＣＰＭＶを獲得することができる。次に、エンコーダ及びデコーダは既獲得したＣＰＭＶから現在ブロックの異なるポイントに対応するＣＰＭＶを誘導することができる。
【０２２６】
図３９を参照すると、第１のＣＰＭＶ（ｍｖ０ｘ、ｍｖ０ｙ）、第２のＣＰＭＶ（ｍｖ１ｘ、ｍｖ１ｙ）から第３のＣＰＭＶ（ｍｖ２ｘ、ｍｖ２ｙ）が誘導されるか、または第１のＣＰＭＶ（ｍｖ０ｘ、ｍｖ０ｙ）、第３のＣＰＭＶ（ｍｖ２ｘ、ｍｖ２ｙ）から第２のＣＰＭＶ（ｍｖ１ｘ、ｍｖ１ｙ）が誘導できる。図３９の数式で、ｗ及びｈは各々現在ブロックの幅及び高さでありうる。
【０２２７】
図４０は、本発明の一実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す。前述したように、現在ブロックのＣＰＭＶセットは複数のＣＰＭＶで構成できる。また、複数のＣＰＭＶ別にＣＰＭＶ予測子と動きベクトル差分値に基づいて獲得できる。ＣＰＭＶの動きベクトル差分値はエンコーダからデコーダにシグナリングできる。即ち、現在ブロックのアフィン動き補償のためのＣＰＭＶ別にＣＰＭＶを誘導するために用いられる動きベクトル差分値がシグナリングできる。以下、ＣＰＭＶの動きベクトル差分値はＣＰＭＶ差分値と称されることができる。図４０で、上段バー（bar）表示されたｍｖ０、ｍｖ１、及びｍｖ２は、各々第１のＣＰＭＶ（ｍｖ０）、第２のＣＰＭＶ（ｍｖ１）、及び第３のＣＰＭＶ（ｍｖ２）の各々のＣＰＭＶ予測子を示すことができる。
【０２２８】
図４０（ａ）は、４−パラメータアフィン動き補償が遂行される場合、現在ブロックの第１のＣＰＭＶ（ｍｖ０）及び第２のＣＰＭＶ（ｍｖ１）が獲得される方法を示す。第１のＣＰＭＶ（ｍｖ０）及び第２のＣＰＭＶ（ｍｖ１）の各々に対する第１のＣＰＭＶ差分値（ｍｖｄ０）及び第２のＣＰＭＶ差分値（ｍｖｄ１）が各々シグナリングできる。
【０２２９】
図４０（ｂ）は、６−パラメータアフィン動き補償が遂行される場合、現在ブロックの第１のＣＰＭＶ（ｍｖ０）、第２のＣＰＭＶ（ｍｖ１）、及び第３のＣＰＭＶ（ｍｖ２）が獲得される方法を示す。第１のＣＰＭＶ（ｍｖ０）、第２のＣＰＭＶ（ｍｖ１）、及び第３のＣＰＭＶ（ｍｖ２）の各々に対する第１のＣＰＭＶ差分値（ｍｖｄ０）、第２のＣＰＭＶ差分値（ｍｖｄ１）、及び第３のＣＰＭＶ差分値（ｍｖｄ２）が各々シグナリングできる。
【０２３０】
図４１は、本発明の一実施形態に従って現在ブロックのコントロールポイント動きベクトル差分値がシグナリングされる方法を示す。現在ブロックのＣＰＭＶ差分値は図９を通じて前述したシンタックスによってシグナリングできる。また、デコーダはシグナリングされた動きベクトル差分値に対する少なくとも１つの情報に基づいて現在ブロックのＣＰＭＶ差分値（ＩＭＶＤ）を獲得することができる。図４１で、compldxは動きベクトル差分値の成分を示すインデックスで、０または１でありうる。例えば、compldxは動きベクトル差分値のｘ軸成分またはｙ軸成分のうち、いずれか１つを指示することができる。また、現在ブロックのＣＰＭＶ差分値は参照ピクチャリスト別に異なることがある。図４１で、Ｌ０は第１参照ピクチャリストを示し、Ｌ１は第２参照ピクチャリストを示す。
【０２３１】
一方、現在ブロックの特定ポイントに対応するＣＰＭＶ差分値は現在ブロックの異なるポイントに対応するＣＰＭＶ差分値と類似することができる。これによって、現在ブロックの特定ポイントに対応するＣＰＭＶ差分値は現在ブロックの異なるポイントに対応するＣＰＭＶ差分値に基づいて獲得できる。これを通じて、エンコーダ及びデコーダはＣＰＭＶ差分値に対するシグナリングオーバーヘッドを減少させることができる。
【０２３２】
図４２は、本発明の他の一実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す。図４２を参照すると、現在ブロックのアフィン動き補償のためのＣＰＭＶセットは、少なくとも１つの共通したＣＰＭＶ差分値に基づいて誘導できる。例えば、現在ブロックの特定ポイントに対応するＣＰＭＶは現在ブロックの異なるポイントに対応するＣＰＭＶ差分値に基づいて獲得できる。
【０２３３】
エンコーダは、現在ブロックのアフィン動き補償のための１つの共通ＣＰＭＶ差分値及び少なくとも１つの追加差分値をシグナリングすることができる。また、デコーダは、１つの共通ＣＰＭＶ差分値及び少なくとも１つの追加差分値を用いてブロックのアフィン動き補償のためのＣＰＭＶセットを獲得することができる。図４２で、上段バー（bar）表示されたｍｖ０、ｍｖ１、及びｍｖ２は、各々第１のＣＰＭＶ（ｍｖ０）、第２のＣＰＭＶ（ｍｖ１）、及び第３のＣＰＭＶ（ｍｖ２）の各々のＣＰＭＶ予測子を示すことができる。
【０２３４】
図４２（ａ）は、４−パラメータアフィン動き補償が遂行される場合、現在ブロックの第１のＣＰＭＶ（ｍｖ０）及び第２のＣＰＭＶ（ｍｖ１）が獲得される方法を示す。第１のＣＰＭＶ（ｍｖ０）に対する第１のＣＰＭＶ差分値（ｍｖｄ０）がシグナリングできる。また、第２のＣＰＭＶ差分値を獲得するために使われる第１追加差分値（ｍｖｄ１′）がシグナリングできる。具体的に、第２のＣＰＭＶ差分値は第１のＣＰＭＶ差分値（ｍｖｄ０）に第１追加差分値（ｍｖｄ１′）を足した値で表現できる。即ち、第２のＣＰＭＶ（ｍｖ１）は第２のＣＰＭＶ予測子、第１のＣＰＭＶ差分値（ｍｖｄ０）、及び第１追加差分値（ｍｖｄ１′）に基づいて獲得できる。第１のＣＰＭＶ差分値と第２のＣＰＭＶ差分値が類似する場合、第２のＣＰＭＶ差分値に比べて第１追加差分値（ｍｖｄ１′）が少ないことがある。これによって、エンコーダ及びデコーダは図４０を通じて説明された方法に比べて、ＣＰＭＶ差分値に対するシグナリングオーバーヘッドを減少させることができる。
【０２３５】
図４２（ｂ）は、６−パラメータアフィン動き補償が遂行される場合、現在ブロックの第１のＣＰＭＶ（ｍｖ０）、第２のＣＰＭＶ（ｍｖ１）、及び第３のＣＰＭＶ（ｍｖ２）が獲得される方法を示す。第１のＣＰＭＶ（ｍｖ０）に対する第１のＣＰＭＶ差分値（ｍｖｄ０）がシグナリングできる。また、第２のＣＰＭＶ差分値及び第３のＣＰＭＶ差分値の各々を獲得するために使われる第１追加差分値（ｍｖｄ１′）及び第２追加差分値（ｍｖｄ２′）がシグナリングできる。具体的に、第２のＣＰＭＶ差分値は第１のＣＰＭＶ差分値（ｍｖｄ０）に第１追加差分値（ｍｖｄ１′）を足した値で表現できる。また、第３のＣＰＭＶ差分値は第１のＣＰＭＶ差分値（ｍｖｄ０）に第２追加差分値（ｍｖｄ２′）を足した値で表現できる。
【０２３６】
図４３は、図４２を通じて説明された実施形態に従って現在ブロックのコントロールポイント動きベクトルが獲得される場合、コントロールポイント動きベクトル差分値がシグナリングされる方法を示す。前述したように、現在ブロックのアフィン動き補償のためのＣＰＭＶセットは、複数のＣＰＭＶを含むことができる。この際、複数のＣＰＭＶのうち、一部のＣＰＭＶ差分値（ｍｖｄＬＫ）は他のＣＰＭＶの差分値及び追加差分値に基づいて獲得できる。図４３で、ｌｍｖｄは既設定されたＣＰＭＶの差分値または少なくとも１つの追加差分値のうち、いずれか１つでありうる。
【０２３７】
図４３で、ｃｐＩｄｘは現在ブロックのコントロールポイントインデックスを示すことができる。例えば、現在ブロックに対して４−パラメータアフィン動き補償が遂行される場合、ｃｐＩｄｘは０または１でありうる。現在ブロックに対して６−パラメータアフィン動き補償が遂行される場合、ｃｐＩｄｘは０、１、または２でありうる。一実施形態に従って、ＣＰＭＶ差分値（ＭｖｄＬｘ）はｃｐＩｄｘによって異なる方式により決定できる。例えば、ｃｐＩｄｘが既設定された値（例、‘０’）である場合、ＭｖｄＬｘは既設定されたＣＰＭＶの差分値（lMvd[0][compIdx]）でありうる。ｃｐＩｄｘが既設定された値（例、‘０’）でない場合、ＭｖｄＬｘは既設定されたＣＰＭＶの差分値（lMvd[0][compIdx]）に該当インデックスに対応する追加差分値を足した値でありうる。ここで、ＭｖｄＬｘはＣＰＭＶとＣＰＭＶ予測子との間の差を示すことができる。即ち、ＭｖｄＬｘは（ＣＰＭＶ−ＣＰＭＶ予測子）でありうる。
【０２３８】
また、compIdxは動きベクトル差分値の成分を示すインデックスで、０または１でありうる。例えば、compIdxは動きベクトル差分値のｘ軸成分またはｙ軸成分のうち、いずれか１つを指示することができる。また、現在ブロックのＣＰＭＶ差分値は参照ピクチャリスト別に異なることがある。図４１で、Ｌ０は第１参照ピクチャリストを示し、Ｌ１は第２参照ピクチャリストを示す。
【０２３９】
図４４は、本発明の一実施形態に従う現在ブロックのコントロールポイント動きベクトル差分値がシグナリングされる方法を示す図である。図４４を参照すると、図９を通じて前述した動きベクトル差分値のシグナリング方法と類似の方法によりＣＰＭＶ差分値がエンコーディングできる。例えば、エンコーダは前述したコントロールポイントインデックス（ｃｐＩｄｘ）によって別途にＣＰＭＶ差分値をエンコーディングしてＣＰＭＶ差分値に対する少なくとも１つの情報を生成することができる。また、エンコーダはエンコーディングされたＣＰＭＶ差分値に対する少なくとも１つの情報をシグナリングすることができる。デコーダはＣＰＭＶ差分値に対する少なくとも１つの情報に基づいて、コントロールポイントインデックス（ｃｐＩｄｘ）別にＣＰＭＶ差分値を獲得することができる。
【０２４０】
前述した動きベクトル差分値の解像度と関連した実施形態は、図９、図４３、及び図４４の実施形態を通じて説明されたＣＰＭＶ差分値に対しても同一または相応する方法により適用できる。例えば、現在ブロックのＣＰＭＶ差分値の解像度がＲの場合、シグナリングされたＣＰＭＶ差分値はＲに基づいて修正できる。この際、デコーダはシグナリングされたＣＰＭＶ差分値に解像度（Ｒ）を掛けて修正されたＣＰＭＶ差分値を獲得することができる。
【０２４１】
図４５は、本発明の一実施形態に従って現在ブロックのコントロールポイント動きベクトル差分値に対する差分予測子を用いて動きベクトルが獲得される方法を示す図である。図４５を参照すると、現在ブロックのＣＰＭＶとＣＰＭＶ予測子との間の差を示すＣＰＭＶ差分値は差分予測子（ｍｖｄｐ）に基づいて決定できる。ここで、差分予測子（ｍｖｄｐ）はＣＰＭＶとＣＰＭＶ予測子との間の差に対する予測値を示すことができる。具体的に、ＣＰＭＶ差分値は差分予測子（ｍｖｄｐ）及び追加差分値（ｍｖｄ０″、ｍｖｄ１″、ｍｖｄ２″）に基づいて獲得できる。
【０２４２】
例えば、差分予測子（ｍｖｄｐ）及び追加差分値（ｍｖｄ０″、ｍｖｄ１″、ｍｖｄ２″）はエンコーダからデコーダにシグナリングできる。ｍｖｄｐ、ｍｖｄ０″、ｍｖｄ１″、及びｍｖｄ２″（６−パラメータアフィン動き補償が遂行される場合）の各々は図９または図４４を通じて前述した方法によりエンコーディングまたはデコーディングできる。図４５で、上段バー（bar）表示されたｍｖ０、ｍｖ１、及びｍｖ２は、各々第１のＣＰＭＶ（ｍｖ０）、第２のＣＰＭＶ（ｍｖ１）、及び第３のＣＰＭＶ（ｍｖ２）の各々のＣＰＭＶ予測子を示すことができる。エンコーダ及びデコーダは差分予測子（ｍｖｄｐ）を用いてＣＰＭＶ差分値のためのシグナリングオーバーヘッドを減少させることができる。
【０２４３】
一方、本発明の一実施形態に従って、差分予測子は現在ブロックのＣＰＭＶセットが含む複数のＣＰＭＶのうち、少なくとも１つに基づいて獲得できる。例えば、差分予測子は現在ブロックのＣＰＭＶセットが含む複数のＣＰＭＶのうち、いずれか１つのＣＰＭＶ差分値でありうる。以下では、現在ブロックのＣＰＭＶセットを誘導するために使われる差分予測子が獲得される方法について叙述する。
【０２４４】
図４６は、本発明の一実施形態に従って差分予測子を用いて現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す図である。本発明の一実施形態に従って、エンコーダ及びデコーダは現在ブロックのｍｖｄ０、ｍｖｄ１、及びｍｖｄ２（以下、ｍｖｄｘ）のうち、少なくとも１つを用いて現在ブロックの差分予測子（ｍｖｄｐ）を獲得することができる。一実施形態に従って、差分予測子（ｍｖｄｐ）はｍｖｄｘのうち、絶対値の最も小さいｍｖｄｘの絶対値より小さい値に設定できる。または、差分予測子（ｍｖｄｐ）はｍｖｄｘのうち、絶対値が最も大きいｍｖｄｘの絶対値より大きい値に設定できる。この場合、現在ブロックのＣＰＭＶセットが含む複数のＣＰＭＶの各々を誘導するために使われる追加差分値（図４５のｍｖｄ０″、ｍｖｄ１″、ｍｖｄ２″）の符号が一致できる。本実施形態で、追加差分値はｍｖｄｘと差分予測子（ｍｖｄｐ）との間の差を示すことができる。
【０２４５】
例えば、差分予測子（ｍｖｄｐ）はｍｖｄｘのうち、絶対値の最も小さいｍｖｄｘの絶対値より小さい値に設定された場合、追加差分値（図４５のｍｖｄ０″、ｍｖｄ１″、ｍｖｄ２″）の符号は正の符号（＋）に一致できる。また、差分予測子（ｍｖｄｐ）は、ｍｖｄｘのうち、絶対値の最も大きいｍｖｄｘの絶対値より大きい値に設定された場合、追加差分値（図４５のｍｖｄ０″、ｍｖｄ１″、ｍｖｄ２″）の符号は負の符号（−）に一致できる。
【０２４６】
図４６を参照すると、差分予測子（ｍｖｄｐ）は、ｍｖｄｘのうち、絶対値の最も小さいｍｖｄｘの絶対値より小さい値に設定できる。図４６で、水平破砕線はｍｖｄｘの各々のｘ軸成分の絶対値のうちの最も小さい値を示し、垂直破砕線はｍｖｄｘの各々のｙ軸成分の絶対値のうちの最も小さい値を示す。ｘ軸座標は右側であるほど値が大きくなり、ｙ軸座標は上側であるほど値が大きくなることができる。この際、差分予測子（ｍｖｄｐ）は破砕線により区画された四分面のうち、第３四分面（mvdp area）内の値でありうる。
【０２４７】
この場合、現在ブロックの追加差分値の符号は全て正の符号（＋）になることができる。これによって、追加差分値に対する符号を示す情報が別途にシグナリングされないことがある。具体的に、現在ブロックの差分予測子（ｍｖｄｐ）及び追加差分値（ｍｖｄｘ″）の各々は［数式７］のように誘導できる。
【０２４８】
【数７】
2021526340.tif 000009
【０２４９】
［数式７］を参照すると、差分予測子（ｍｖｄｐ）の符号を示す情報（mvd_sign_flag）がシグナリングできる。エンコーダは差分予測子の符号情報をシグナリングすることができる。また、デコーダは差分予測子の符号情報（mvd_sign_flag）に基づいて現在ブロックのＣＰＭＶセットを獲得することができる。一方、追加差分値（ｍｖｄｘ″）の各々の符号を示す情報はシグナリングされないことがある。追加的な実施形態に従って、差分予測子（ｍｖｄｐ）を決定する方法を示すｍｖｄｐ指示子がシグナリングされることもできる。例えば、ｍｖｄｐ指示子は差分予測子（ｍｖｄｐ）をｍｖｄｘのうち、最小値より小さい値に決定するのか、または最大値より大きい値に決定するのかを示すフラグでありうる。
【０２５０】
図４７は、本発明の他の一実施形態に従って差分予測子を用いて現在ブロックのコントロールポイント動きベクトルが獲得される方法を示す図である。本発明の一実施形態に従って、現在ブロックの差分予測子は現在ブロックのＣＰＭＶセットが含む複数のＣＰＭＶのうち、いずれか１つのＣＰＭＶ差分値でありうる。図４６を参照すると、Method 0、Method 1、Method 2によって差分予測子が変わることができる。例えば、Method 0で差分予測子はｍｖｄ０でありうる。また、Method 1で差分予測子はｍｖｄ１でありうる。Method 2で差分予測子はｍｖｄ２でありうる。
【０２５１】
一実施形態に従って、複数の方法のうち、どの方法により差分予測子が決定されるかを示すｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）がシグナリングできる。ここで、複数の方法は図４７のMethod 0、Method 1、Method 2、及び図４６を通じて説明した方法のうち、少なくとも１つを含むことができる。図４７の実施形態で、エンコーダはMethod 0、Method 1、Method 2のうち、いずれか１つを指示するｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）をシグナリングすることができる。また、デコーダはｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）に基づいてMethod 0、Method 1、Method 2のうち、いずれか１つを決定することができる。また、デコーダは決定された方法によって現在ブロックの差分予測子を獲得することができる。また、デコーダは獲得された差分予測子に基づいて現在ブロックのＣＰＭＶセットを獲得することができる。
【０２５２】
他の実施例に従って、ｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）は暗黙的にシグナリングされることもできる。即ち、エンコーダ及びデコーダはｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）に対するシグナリング無しで現在ブロックの差分予測子を決定することもできる。これに対しては、図４９乃至図５０を通じて具体的に説明する。
【０２５３】
図４８は、本発明の一実施形態に従って差分予測子が獲得される方法を示す図である。本発明の一実施形態に従って、コントロールポイントインデックス（ｃｐＩｄｘ）がｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）と同一の場合、差分予測子が該当ＣＰＭＶの差分値に使われることができる。コントロールポイントインデックス（ｃｐＩｄｘ）がｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）と同一でない場合、ｃｐＩｄｘに対応する追加差分値及び差分予測子に基づいて該当ＣＰＭＶの差分値が獲得できる。動きベクトル差分値に対するコーディング効率の高い方法を指示するｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）がシグナリングできる。図４８で、ｌｍｖｄは差分予測子または追加差分値のうち、いずれか１つを示すことができる。また、ＭｖｄＬＫはＣＰＭＶ差分値を示すことができる。
【０２５４】
図４８で、ＬＸは参照ピクチャリストＬ０またはＬ１を示すことができる。また、ｍｖｄｐ指示子は可変長さのビットで表現できる。例えば、ｍｖｄｐ指示子は切削単項（truncated unary）方法によりシグナリングできる。また、図４６乃至図４８で前述した実施形態は動きベクトル差分値の成分別に遂行できる。前述した動きベクトル差分値の解像度と関連した実施形態は図４６乃至４８の実施形態を通じて説明されたＣＰＭＶ差分値に対しても同一または相応する方法により適用できる。例えば、現在ブロックのＣＰＭＶ差分値の解像度がＲの場合、シグナリングされたＣＰＭＶ差分値はＲに基づいて修正できる。この際、デコーダはシグナリングされたＣＰＭＶ差分値に解像度（Ｒ）を掛けて修正されたＣＰＭＶ差分値を獲得することができる。
【０２５５】
本発明の一実施形態をよれば、ｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）でないコントロールポイントインデックスに対するＩＭｖｄのシグナリングを減らす方式によりｍｖｄｐ指示子をシグナリングまたは決定することが可能である。例えば、ｍｖｄｐ指示子でないコントロールポイントインデックスに対するＩＭｖｄの符号が一致するようにｍｖｄｐ指示子をシグナリングすることができる。または、明示的なシグナリング無しで差分予測子が決定されることもできる。これに対しては図４９乃至図５１を通じて後述する。
【０２５６】
前述したように、現在ブロックの差分予測子が現在ブロックのＣＰＭＶ差分値の絶対値のうち、最小値または最大値に決定される場合、コントロールポイントインデックスに対するｌｍｖｄの間の符号が一致できる。この際、コントロールポイントインデックスがｍｖｄｐ指示子と異なる場合、符号情報をシグナリングしないことがある。ここで、ＣＰＭＶ差分値の絶対値が最小または最大ということは、特定成分の絶対値が最小または最大であることを意味することができる。例えば、ｍｖｄｐ指示子が３個の値のうち、いずれか１つを示す場合、切削単項方法によりｍｖｄｐ指示子のうち、１つは１ビット、２つは２ビットを使用してシグナリングできる。
【０２５７】
本発明の他の一実施形態に従って、ｍｖｄｐ指示子はＣＰＭＶ差分値の絶対値のうち、中央または中間値に該当するＣＰＭＶ差分値でありうる。この場合、ｌｍｖｄの符号は、１つは（＋）であり、１つは（−）でありうる。これによって、１ビットを使用して２つのＣＰＭＶ差分値の各々の符号情報をシグナリングすることができる。これを通じて、エンコーダ及びデコーダはＣＰＭＶ差分値の符号情報のためのシグナリングオーバーヘッドを減少させることができる。
【０２５８】
本発明の更に他の一実施形態に従って、現在ブロックの差分予測子を決定する方法を指示するｍｖｄｐ指示子（ｃｐＩｄｘＰｒｅｄ）は暗黙的にシグナリングできる。例えば、現在ブロックの差分予測子を決定する方法は他の情報に基づいて決定できる。より具体的に、エンコーダ及びデコーダは現在ブロックのＣＰＭＶ差分値のうち、絶対値の最も大きいＣＰＭＶの差分値を差分予測子に決定することができる。動きベクトル差分値がシグナリングされる場合、複数のＣＰＭＶを誘導する使われる差分予測子の絶対値が大きいほど有利でありうるためである。
【０２５９】
図４９は、本発明の一実施形態に従って現在ブロックの差分ベクトル予測子が決定される方法を示す図である。図４９を参照すると、３個のＣＰＭＶが現在ブロックのアフィン動き補償のために使われることができる。以下では、説明の便宜のためにｘ軸成分を例に挙げて説明するが、本開示がこれに制限されるのではない。後述する実施形態はｙ軸成分に対しても同一または相応する方法により適用できる。一実施形態に従って、現在ブロックのＣＰＭＶの各々のＣＰＭＶ差分値であるｍｖｄ０、ｍｖｄ１、及びｍｖｄ２のうち、ｘ軸成分の絶対値が最小であるＣＰＭＶを指示するコントロールポイントインデックスは‘１’でありうる。
【０２６０】
図４９で、破砕線は参照予測子のｘ軸成分の値を示す。図４９のように、ＣＰＭＶ差分値の絶対値が最小であるＣＰＭＶ差分値が差分予測子に使われる場合、差分予測子に選択されない残りのＣＰＭＶ差分値の各々の符号は正の符号（＋）に一致できる。これによって、エンコーダはｍｖｄｐ指示子に対するシグナリングを省略することができる。また、デコーダはｍｖｄｐ指示子無しで現在ブロックのＣＰＭＶセットを誘導することができる。
【０２６１】
図５０は、現在ブロックのコントロールポイント動きベクトル差分値がシグナリングされる方法を示す図である。図４８乃至図４９を通じて前述したように、符号ビットハイディング方法を使用する場合、コントロールポイントインデックスとｍｖｄｐ指示子が相異する場合の符号情報に対するシグナリングが省略できる。図５０を参照すると、動きベクトル差分値の符号情報（mvd_sign_flag）はコントロールポイントインデックスとｍｖｄｐ指示子が同一の場合、パーシングできる。反対に、コントロールポイントインデックスとｍｖｄｐ指示子が相異する場合、遂行されないことがある。図５０で、［０］と［１］で、０、１は成分インデックスを示し、各々ｘ軸成分及びｙ軸成分を示すことができる。
【０２６２】
本発明の一実施形態に従って、動きベクトル差分値に対する情報は既設定された順序に従って順次にパーシングできる。この際、既設定された順序はコントロールポイントインデックスに基づいて設定された順序でありうる。一実施形態に従って、既設定された順序はｍｖｄｐ指示子に基づいて決定された順序でありうる。
【０２６３】
本発明の一実施形態によれば、動きベクトル差分値をコーディングする関数が存在できる。また、動きベクトル差分値をコーディングする関数の例は、図５０のmvd_codingシンタックスでありうる。一実施形態に従って、デコーダはコントロールポイントインデックスによって、動きベクトル差分値に対する情報をパーシングすることができる。例えば、図５０のmvd_codingシンタックスはコントロールポイントインデックス別に遂行されることもできる。この際、既設定された順序は以下の［数式８］のように遂行できる。［数式８］によれば、常に同一の順にパーシングが遂行できる。
【０２６４】
【数８】
2021526340.tif 000010
【０２６５】
他の一実施形態に従って、ｍｖｄｐ指示子に対応するＣＰＭＶ差分値に対する情報は、ｍｖｄｐ指示子に対応しない他のＣＰＭＶの差分値に対する情報より先にパーシングできる。この場合、特定コントロールポイントインデックスに対応する追加差分値をデコーディングした後、直ちに該当コントロールポイントインデックスに対応するＣＰＭＶ差分値を算出することができる。本実施形態とは異なり、ｍｖｄｐ指示子に対応するＣＰＭＶ差分値に対する情報がｍｖｄｐ指示子に対応しない他のＣＰＭＶの差分値に対する情報より先にパーシングされないことがある。この場合、特定コントロールポイントインデックスに対応する追加差分値をデコーディングした後にも該当コントロールポイントインデックスに対応するＣＰＭＶ差分値を算出するまで待機時間がかかることがある。具体的な例に、ｍｖｄｐ指示子が‘１’の場合、mvd_codingシンタックスは以下の［数式９］の通りである。
【０２６６】
【数９】
2021526340.tif 000011
【０２６７】
他の具体的な例として、ｍｖｄｐ指示子が‘２’の場合、mvd_codingシンタックスは以下の［数式１０］の通りである。
【０２６８】
【数１０】
2021526340.tif 000012
【０２６９】
図５１は、本発明の他の一実施形態に従って、現在ブロックのコントロールポイント動きベクトルが誘導される方法を示す図である。図５１で、ｌｍｖｄは差分予測子または追加差分値を示すことができる。図５１を参照すると、特定コントロールポイントインデックスがｍｖｄｐ指示子と同一の場合、符号情報に基づいて差分予測子が算出できる。これとは異なり、特定コントロールポイントインデックスがｍｖｄｐ指示子と相異する場合、追加差分値を算出するに当たって符号情報を使用しないことがある。
【０２７０】
一方、本発明の一実施形態に従って、前述した動きベクトル差分値の解像度は現在ブロックの動き補償のための複数のＣＰＭＶ別に各々異なる値が使われることができる。例えば、コントロールポイントインデックス別にＣＰＭＶ差分値がシグナリングされる解像度が異なることがある。一実施形態に従って、図４２、図４５、及び図４７のように差分予測子が用いられる場合、動きベクトル差分値の解像度は現在ブロックの複数のＣＰＭＶ別に各々異なる値が使われることができる。
【０２７１】
一実施形態に従って、特定コントロールポイントインデックスのＣＰＭＶ差分値が現在ブロックの差分予測子に使われることができる。この場合、該当コントロールポイントインデックスに対応するＣＰＭＶ差分値のための解像度がシグナリングできる。また、該当コントロールポイントインデックスに対応するＣＰＭＶ差分値は、該当解像度に基づいてシグナリングできる。一方、該当コントロールポイントインデックスを除外した残りのコントロールポイントインデックスに対応するＣＰＭＶ差分値は既設定された解像度に基づいてシグナリングできる。この際、該当コントロールポイントインデックスを除外した残りのコントロールポイントインデックスに対応するＣＰＭＶ差分値がシグナリングされる単位を示す解像度はシグナリングされないことがある。また、既設定された解像度はデフォルト値でありうる。
【０２７２】
他の一実施形態に従って、現在ブロックの差分予測子に使われるＣＰＭＶ差分値は相対的に小さい単位の解像度に基づいてシグナリングできる。また、現在ブロックの差分予測子に使われるＣＰＭＶ差分値の以外の他のコントロールポイントのＣＰＭＶ差分値は相対的に大きい単位の解像度に基づいてシグナリングされることもできる。
【０２７３】
一方、本発明の一実施形態に従って、現在ブロックのアフィン動き補償のための複数のＣＰＭＶは単一のＣＰＭＶ予測子から獲得されることもできる。この場合、複数のＣＰＭＶは単一のＣＰＭＶ及び複数のＣＰＭＶ差分値を用いて誘導できる。これを通じて、エンコーダ及びデコーダはＣＰＭＶ差分値のコーディング効率を増加させることができる。また、エンコーダ及びデコーダはＣＰＭＶ差分値のシグナリングオーバーヘッドを減少させることができる。
【０２７４】
図５２は、本発明の一実施形態に従って現在ブロックのアフィン動き補償のための複数のコントロールポイント動きベクトルが誘導される方法を示す図である。図５２を参照すると、第１のＣＰＭＶ差分値（ｍｖｄ０）及び第２のＣＰＭＶ差分値（ｍｖｄ１）を共通差分予測子（ｍｖｄｐ）及び単一の差分絶対値（ｍｖｄｄ）に基づいて獲得することができる。例えば、第１のＣＰＭＶ差分値（Ｍｖｄ０）はｍｖｄｐとｍｖｄｄの合算に基づいて獲得できる。また、第１のＣＰＭＶ差分値（ｍｖｄ１）はｍｖｄｐと−ｍｖｄｄの合算に基づいて獲得できる。
【０２７５】
例えば、エンコーダは共通差分予測子（ｍｖｄｐ）及び差分絶対値（ｍｖｄｄ）をシグナリングすることができる。デコーダは共通差分予測子（ｍｖｄｐ）及び差分絶対値（ｍｖｄｄ）に基づいて現在ブロックの複数のコントロールポイントの各々に対応するＣＰＭＶ差分値を獲得することができる。図５２は、４−パラメータアフィン動き補償に対して示したが、本開示がこれに制限されるのではない。例えば、６−パラメータアフィン動き補償が遂行される場合、現在ブロックのＣＰＭＶセットが含むＣＰＭＶのうちの一部は、他のＣＰＭＶのＣＰＭＶ予測子とＣＰＭＶ差分値を用いて誘導できる。
【０２７６】
本発明の一実施形態に従って、現在ブロックは現在ブロックの予測モードによって追加的に分割できる。例えば、現在ブロックの予測モードがイントラ予測モードである場合、エンコーダ及びデコーダは現在ブロックを複数のサブブロックに分割して各々のサブブロックに対してイントラ予測を遂行することができる。デコーダは、ビットストリームから前述したイントラ予測モード情報を受信することができる。デコーダは、イントラ予測モード情報に基づいて現在ブロックを複数のサブブロックに分割するかを決定することができる。この際、現在ブロックが複数のサブブロックに分割される方法に対する情報が追加的にシグナリングできる。または、エンコーダ及びデコーダはイントラ予測モード情報によってエンコーダ及びデコーダの間に既設定された方法を用いて現在ブロックを分割することもできる。次に、デコーダは現在ブロックのイントラ予測モード情報に基づいて現在ブロックまたは複数のサブブロックの各々に対するイントラ予測を遂行することができる。以下、図５３乃至図６０の実施形態で現在ブロックはコーディングユニットを示す用語に使われることができる。また、図５３乃至図６０のＳＣＵ（Sub-CU）は、現在ブロックから分割された複数のサブブロックを示す。以下では、現在ブロックが複数のサブブロックに分割される方法について具体的に説明する。
【０２７７】
図５３は、現在ブロックが複数のサブブロックに分割される形態の多様な実施形態を図示したものである。図５３（ａ）と図５３（ｂ）は、現在ブロックから正方形に分割されたサブブロックを図示したものである。例えば、現在ブロックは既設定されたサイズのサブブロックに分割できる。この際、既設定されたサイズはエンコーダとデコーダとの間に事前協議されたサイズでありうる。一実施形態に従って、既設定されたサイズは高さと幅が互いに同一のＮ×Ｎサイズでありうる。例えば、既設定されたサイズは４×４でありうる。一実施形態に従って、既設定されたサイズは変換カーネル（transform kernel）のサイズに基づいて設定された値でありうる。既設定されたサイズは変換ユニットに基づいて設定された値でありうる。既設定されたサイズは変換ユニットのサイズでありうる。
【０２７８】
一実施形態に従って、現在ブロックは現在ブロックのサイズによって決定されたサイズのサブブロックに分割されることもできる。例えば、現在ブロックのサイズが第１しきい値より大きい場合、現在ブロックは第１しきい値よりサイズの小さいブロックに比べて大きいサイズのサブブロックに分割できる。また、現在ブロックのサイズによってサブブロックに分割される動作が制限されることもできる。例えば、現在ブロックのサイズが第２しきい値より小さい場合、エンコーダ及びデコーダは現在ブロックを複数のブロックに分割しないことがある。現在ブロックのサイズが相対的に小さい場合、現在ブロックのサイズが相対的に大きい場合に比べて現在ブロックを分割してイントラ予測を遂行する方法に従う性能利得が大きくないことがあるためである。
【０２７９】
一実施形態に従って、サブブロックが分割される形態は現在ブロックの形態と独立的に決定できる。例えば、現在ブロックが正方形である場合にも、現在ブロックから分割された複数のサブブロックの形態は非正方形でありうる。図５３（ｃ）及び５３（ｄ）は、現在ブロックから非正方形に分割されたサブブロックを図示したものである。一実施形態に従って、現在ブロックは既設定されたサイズの非正方形のサブブロックに分割できる。この際、前述した既設定されたサイズの高さと幅が互いに異なることがある。例えば、既設定されたサイズは４×８または８×４でありうる。前述したように、既設定されたサイズは現在ブロックのサイズによって設定された値でありうる。一実施形態に従って、エンコーダ及びデコーダが４×８または８×４サイズの非正方形変換カーネルを支援することができる。また、現在ブロックが非正方形のサブブロックに分割される必要がある場合、既設定されたサイズは非正方形変換ユニットに基づいて設定された値でありうる。
【０２８０】
他の一実施形態に従って、現在ブロックは現在ブロックの形態と類似の形態の複数のサブブロックに分割できる。図５３（ｅ）及び５３（ｆ）は現在ブロックが非正方形ブロックである場合、現在ブロックから分割されたサブブロックを図示したものである。例えば、現在ブロックが非正方形である場合、現在ブロックは現在ブロックの形態と類似の非正方形のサブブロックに分割できる。図５３（ｅ）のように、現在ブロックの高さが幅より長い場合、現在ブロックは高さが幅より長い形態の複数のサブブロックに分割できる。図５３（ｆ）のように、現在ブロックの幅が高さより長い場合、現在ブロックは幅が高さより長い形態の複数のサブブロックに分割できる。
【０２８１】
本発明の一実施形態に従って、現在ブロックが分割される形態は現在ブロックの予測モードに基づいて決定できる。例えば、現在ブロックが分割されるサイズまたは方向のうち、少なくとも１つは現在ブロックのイントラ予測モード（角度モード、ＤＣモード、または平面モード）によって変わることができる。図５４は、現在ブロックのイントラ予測モードによって現在ブロックが分割される方法を図示したものである。図５４（ａ）を参照すると、複数のイントラ予測モードは平面モードまたはＤＣモードのような無方向性モードとイントラ予測モードインデックス２乃至６６の各々に対応する角度モードに分類できる。
【０２８２】
一実施形態に従って、現在ブロックがイントラ予測される場合、現在ブロックから分割されたサブブロックのうち、現在ブロックの参照サンプルと遠い位置のサブブロックのレジデュアル信号が相対的に大きいことがある。これによって、現在ブロックの参照サンプルから距離が類似のサンプル同士が同一のサブブロックに属するように分割できる。
【０２８３】
一実施形態に従って、現在ブロックのイントラ予測モードが無方向性モードである場合、現在ブロックは図５４（ｂ）のように正方形の複数のサブブロックに分割できる。また、現在ブロックのイントラ予測モードが前述した水平対角モード、対角モード、及び垂直対角モードのうち、いずれか１つである場合、現在ブロックは正方形の複数のサブブロックに分割できる。また、現在ブロックのイントラ予測モードが水平対角モード、対角モード、及び垂直対角モードのうち、いずれか１つの周辺の角度モードである場合、現在ブロックは正方形の複数のサブブロックに分割できる。
【０２８４】
一方、現在ブロックのイントラ予測モードが水平モードまたは垂直モードである場合、現在ブロックは現在ブロックのイントラ予測モードによって図５４（ｃ）または５４（ｄ）のように非正方形の複数のサブブロックに分割できる。また、現在ブロックのイントラ予測モードが水平モード及び垂直モードのうち、いずれか１つの周辺の角度モードである場合、現在ブロックは非正方形の複数のサブブロックに分割できる。これを通じて、現在ブロックは現在ブロックの参照サンプルから距離が類似のサンプル同士が同一のサブブロックに属するように分割できる。
【０２８５】
例えば、現在ブロックの予測モードが水平モードまたは水平モード周辺の角度モードのうちのいずれか１つである場合、現在ブロックは図５４（ｃ）のように分割できる。現在ブロックの予測モードが垂直モードまたは垂直モード周辺の角度モードのうちのいずれか１つである場合、現在ブロックは図５４（ｄ）のように分割できる。現在ブロックの参照サンプルから遠い位置のサブブロックに対して異なる予測方法を適用することもできる。
【０２８６】
図５５は、本発明の一実施形態に従って現在ブロックの参照サンプルのサンプル値に基づいて現在ブロックが複数のサブブロックに分割される方法を図示したものである。本発明の一実施形態に従って、現在ブロックは現在ブロックの参照サンプルのサンプル値に基づいて分割できる。一実施形態に従って、エンコーダ及びデコーダは現在ブロックの参照サンプルのサンプル値に基づいて参照サンプルエッジ（edge）を決定することができる。例えば、参照サンプルエッジは参照サンプルのサンプル値がしきい値以上変わる領域を分割する基準地点でありうる。また、参照サンプルエッジは互いに隣接した参照サンプル間のサンプル値差がしきい値以上である地点を示すこともできる。
【０２８７】
図５５（ａ）を参照すると、エンコーダ及びデコーダは現在ブロックの参照サンプルのサンプル値を比較して現在ブロックの参照サンプルエッジを決定することができる。例えば、特定参照サンプルの周辺の既設定された個数の参照サンプルの平均値との差がしきい値以上である参照サンプルの位置を参照サンプルエッジに決定することができる。また、エンコーダ及びデコーダは上側参照サンプルセット及び左側参照サンプルセット別に１つ以上の参照サンプルエッジを決定することができる。ここで、現在ブロックの上側参照サンプルセットは現在ブロックの上側ラインに位置した参照サンプルを含むセットでありうる。また、現在ブロックの左側参照サンプルセットは現在ブロックの左側ラインに位置した参照サンプルを含むセットでありうる。
【０２８８】
次に、エンコーダ及びデコーダは上側参照サンプルセットの参照サンプルエッジと左側参照サンプルセットの参照サンプルエッジを連結する線分を基準に現在ブロックを分割することができる。例えば、上側参照サンプルセット及び左側参照サンプルセット別に各々１つの参照サンプルエッジが検出される場合、現在ブロックは総２つのサブブロック（ＳＣＵ１、ＳＣＵ２）に分割できる。また、上側参照サンプルセット及び左側参照サンプルセット別に各々２つ以上の参照サンプルエッジが検出される場合、現在ブロックは複数のサブブロックに分割できる。
【０２８９】
一方、前述したように、現在ブロックのイントラ予測のための参照サンプルは複数の参照ライン上のサンプルを含むことができる。図５５（ｂ）及び図５５（ｃ）を参照すると、複数の参照ライン上の参照サンプルをサンプル値に基づいて現在ブロックが分割できる。例えば、複数の参照ライン上の参照サンプルをサンプル値に基づいて現在ブロックの参照サンプルエッジが決定できる。複数の参照ライン上の参照サンプルが使われる場合、周辺ブロックで構成されたイメージ客体の形態が把握できる。
【０２９０】
本発明の一実施形態に従って、エンコーダ及びデコーダは参照ライン別に１つ以上の参照サンプルエッジを決定することができる。図５５（ｂ）を参照すると、エンコーダ及びデコーダは上側参照ライン別参照サンプルエッジを連結する線分を延長して現在ブロックを第１分割することができる。第１分割により２つのサブブロック（ＳＣＵ１、ＳＣＵ２）が獲得できる。また、エンコーダ及びデコーダは左側参照ライン別参照サンプルエッジを連結する線分を延長して現在ブロックを第２分割することができる。第２分割により２つのサブブロック（ＳＣＵ２、ＳＣＵ３）が獲得できる。これによって、上側参照ライン別参照サンプルエッジまたは左側参照ライン別参照サンプルエッジのうち、いずれか１つが検出されない場合にも現在ブロックは分割できる。
【０２９１】
図５５（ｃ）は、上側参照ライン別参照サンプルエッジまたは左側参照ライン別参照サンプルエッジのうち、いずれか１つが検出されないか、または参照サンプルエッジが１つの直線に配列されない場合の現在ブロックが分割される方法を示す。図５５（ｃ）の左側参照ラインのように、左側参照ラインのうち、一部参照ラインで参照サンプルエッジが検出されないことがある。少なくとも２つの参照ラインで参照サンプルエッジが検出された場合、エンコーダ及びデコーダは該当参照サンプルエッジに基づいて現在ブロックを分割することができる。また、前述した実施形態は上側参照ラインのうち、一部の参照ラインで参照サンプルエッジが検出されない場合にも適用できる。
【０２９２】
また、図５５（ｃ）の上側参照ラインのように、上側参照ライン別参照サンプルエッジが１つの直線で配列されないことがある。この場合、現在ブロックに隣接しないライン上の参照サンプルエッジの中間値及び現在ブロックと隣接したライン上の参照サンプルエッジを過ぎる線分に基づいて現在ブロックが分割できる。図５５（ｂ）及び図５５（ｃ）では、３個の参照ラインが使われる実施形態を図示しているが、本開示がこれに制限されるのではない。
【０２９３】
本発明の一実施形態に従って、現在ブロックから分割された複数のサブブロックは現在ブロックのイントラ予測モードによって優先的に予測される１次的サブブロック（primary sub-block、ＰＳＢ）と以後に予測される２次的サブブロック（Secondary sub-block、ＳＳＢ）に分類できる。また、ＰＳＢで構成されたサブブロックグループは１次的サブブロックグループ（以下、ＰＳＢグループ）と、ＳＳＢで構成されたサブブロックグループは２次的サブブロックグループ（以下、ＳＳＢグループ）と称されることができる。
【０２９４】
図５６は、本発明の一実施形態に従って１次的サブブロックグループと２次的サブブロックグループが決定される方法を図示したものである。一実施形態に従って、ＰＳＢグループは現在ブロックから分割された複数のサブブロックのうち、現在ブロックのイントラ予測に参照される参照サンプルから既設定された距離以内のサブブロックで構成できる。また、ＳＳＢグループは複数のサブブロックのうち、現在ブロックのイントラ予測に参照される参照サンプルから既設定された距離の外のサブブロックで構成できる。
【０２９５】
図５６を参照すると、現在ブロックは総１６個のサブブロックに分割できる。現在ブロックのイントラ予測モードが水平対角モード、垂直対角モード、及び水平対角モードと垂直対角モードの周辺の角度モードのうち、いずれか１つである場合、現在ブロックのＰＳＢグループとＳＳＢグループは図５６（ａ）のように決定できる。即ち、現在ブロックから分割された１６個のサブブロックのうち、右上側４個のサブブロックがＳＳＢであり、これを除外した残りのサブブロックはＰＳＢでありうる。
【０２９６】
図５６（ａ）乃至図５６（ｅ）の各々は、現在ブロックのイントラ予測モードがＨＤＩＡ、ＨＯＲ、ＤＩＡ、ＶＥＲ、ＶＤＩＡ、及び各々の周辺の角度モードのうち、いずれか１つである場合、ＰＳＢグループとＳＳＢグループが決定される方法を図示する。各々の予測モードで使われる参照サンプルとの相対的な距離を考慮してＰＳＢとＳＳＢが区分できる。しかしながら、本開示がこれに制限されるのではなく、図５６で記述した例示と類似の形態の他の分割も可能である。
【０２９７】
一実施形態に従って、エンコーダ及びデコーダは現在ブロックのイントラ予測モードに基づいてＰＳＢに対して先にイントラ予測を遂行することができる。次に、エンコーダ及びデコーダはＳＳＢに対するイントラ予測を遂行することができる。以下では、現在ブロックのＳＳＢに対する多様なイントラ予測方法について具体的に説明する。
【０２９８】
一実施形態に従って、エンコーダ及びデコーダは現在ブロックのＰＳＢの復元されたサンプル値に基づいて現在ブロックのＳＳＢに対する予測を遂行することができる。例えば、エンコーダ及びデコーダは現在ブロックのイントラ予測モード及び参照サンプルに基づいて現在ブロックのＰＳＢを先に復元することができる。次に、エンコーダ及びデコーダは現在ブロックのＳＳＢの各々に隣接し、既復元されたサンプルを参照して現在ブロックのＳＳＢに対するイントラ予測を遂行することができる。エンコーダ及びデコーダは、現在ブロックのイントラ予測モードに基づいて現在ブロックのＳＳＢに対するイントラ予測を遂行することができる。この際、既復元されたサンプルはＰＳＢの各々が含むサンプルでありうる。前記ＰＳＢの各々が含むサンプルは現在ブロックの参照サンプルに比べて現在ブロックのＳＳＢとの距離が近いサンプルでありうる。これによって、現在ブロックのＳＳＢに対して同一の予測モードが使われる場合にも、既存の方法に比べてＳＳＢに対する予測正確度が高まることができる。
【０２９９】
一実施形態に従って、エンコーダ及びデコーダは現在ブロックのＰＳＢグループとＳＳＢグループの各々に対して互いに異なるイントラ予測モードを用いて予測することができる。例えば、現在ブロックのＰＳＢは現在ブロックのイントラ予測モードである１次的モード（primary mode、ＰＭ）に基づいて予測できる。現在ブロックのＳＳＢは可変的な２次的モード（secondary mode、ＳＭ）に基づいて予測できる。例えば、ＳＭは現在ブロックの複数のサブブロックのうち、ＳＳＢに対してのみ適用されるイントラ予測モードでありうる。この際、ＳＭは別途にシグナリングできる。一実施形態に従って、ＳＭはＰＭを基準にするオフセット形態にシグナリングできる。例えば、ＳＭはＰＭを基準にオフセットだけ加えられたイントラ予測モードインデックスに対応するイントラ予測モードでありうる。この際、オフセットは既設定された最大値以内の値でありうる。これを通じて、エンコーダが特定オフセットを選択するための演算量を減少させることができる。
【０３００】
また、現在ブロックのＰＭが角度モードであり、ＰＭの反対角度モードが存在する場合、現在ブロックのＳＳＢはＰＭの反対角度モードに基づいて予測できる。例えば、ＰＭがイントラ予測モードインデックス２の水平対角モードである場合、ＳＭはイントラ予測モードインデックス６６に該当する垂直対角モードでありうる。反対に、ＰＭがイントラ予測モードインデックス６６の垂直対角モードである場合、ＳＭはイントラ予測モードインデックス２に該当する水平対角モードでありうる。
【０３０１】
他の一実施形態に従って、ＳＭは既設定された予測モードでありうる。例えば、現在ブロックのＳＳＢは既設定された予測モードに基づいて予測されることもできる。前述したように、現在ブロックのＳＳＢは現在ブロックの参照サンプルから既設定された距離の外のサブブロックでありうる。これによって、現在ブロックのＳＳＢを無方向性モードに基づいて予測することがレジデュアル信号面で有利でありうる。即ち、既設定されたＳＭは平面モードまたはＤＣモードのうち、いずれか１つでありうる。
【０３０２】
追加的な実施形態に従って、現在ブロックのＳＳＢの最終予測ブロックは現在ブロックのＰＭに基づいて予測された第１予測ＳＳＢ、及び前述した無方向性モードに基づいて予測された第２予測ＳＳＢに基づいて獲得できる。例えば、エンコーダ及びデコーダは現在ブロックの第１予測ＳＳＢ及び第２予測ＳＳＢの間の平均に基づいてＳＳＢに対応する最終予測ブロックを獲得することができる。また、エンコーダ及びデコーダはＳＳＢに対応する最終予測ブロックとレジデュアル信号を合算してＳＳＢを復元することができる。
【０３０３】
図５７は、本発明の一実施形態に従って、１次的サブブロックグループと２次的サブブロックグループが予測される方法を図示したものである。図５７を参照すると、現在ブロックは総４個のサブブロックに分割できる。一実施形態に従って、現在ブロックの予測モードが対角モード及び対角モード周辺の角度モードのうち、いずれか１つである場合、現在ブロックのＰＳＢグループとＳＳＢグループは図５７（ａ）のように決定できる。即ち、現在ブロックから分割された４個のサブブロックのうち、右下側サブブロック（ＳＣＵ４）が現在ブロックのＳＳＢであり、これを除外した残りのサブブロック（ＳＣＵ１、ＳＣＵ２、ＳＣＵ３）は現在ブロックのＰＳＢでありうる。
【０３０４】
この場合、現在ブロックのＳＳＢは現在ブロックのＰＳＢの各々が含むサンプルを参照して復元できる。例えば、エンコーダ及びデコーダは現在ブロックのイントラ予測モード及び参照サンプルに基づいて現在ブロックのＰＳＢを先に復元することができる。次に、エンコーダ及びデコーダは現在ブロックのＰＳＢの既復元されたサンプルのうち、ＳＳＢに隣接したサンプルのサンプル値を用いてＳＳＢに対するイントラ予測を遂行することができる。例えば、現在ブロックのＳＳＢ（ＳＣＵ４）はＰＳＢ（ＳＣＵ１、ＳＣＵ２、ＳＣＵ３）の既復元されたサンプルのサンプル値及びレジデュアル信号に基づいて復元できる。
【０３０５】
一実施形態に従って、現在ブロックの予測モードが水平対角モード及び水平対角モード周辺の角度モードのうち、いずれか１つである場合、現在ブロックのＰＳＢグループとＳＳＢグループは、図５７（ｂ）のように決定できる。即ち、現在ブロックから分割された４個のサブブロックのうち、右上側サブブロック（ＳＣＵ２）が現在ブロックのＳＳＢであり、これを除外した残りのサブブロック（ＳＣＵ１、ＳＣＵ３、ＳＣＵ４）は現在ブロックのＰＳＢでありうる。この場合、前述したように、現在ブロックのＳＳＢ（ＳＣＵ２）は現在ブロックのＰＳＢ（ＳＣＵ１、ＳＣＵ３、ＳＣＵ４）の既復元されたサンプルのうち、ＳＳＢ（ＳＣＵ２）に隣接したサンプルのサンプル値に基づいて復元できる。
【０３０６】
追加的な実施形態に従って、現在ブロックの参照サンプルのうちの一部が現在ブロックのＳＳＢに隣接することができる。この際、現在ブロックの参照サンプルのうち、一部の現在ブロックのイントラ予測に使われない参照サンプルでありうる。この場合、現在ブロックのＳＳＢは現在ブロックのＰＭと異なる予測モードであるＳＭに基づいて予測できる。例えば、現在ブロックのＰＭが角度モードである場合、現在ブロックのＳＭはＰＭの反対角度モードでありうる。図５７（ｂ）のように、現在ブロックのＰＭが水平対角モードである場合、ＳＭは垂直対角モードでありうる。
【０３０７】
また、現在ブロックのＰＭが角度モードである場合、現在ブロックのＳＳＢの最終予測ブロックは現在ブロックのＰＭに基づいて予測された第１予測ＳＳＢ、及びＰＭの反対角度モードに基づいて予測された第２予測ＳＳＢに基づいて獲得できる。図５６（ａ）及び（ｅ）のようにＰＭモードと反対方向の角度モードを使用することが可能であり、ＳＳＢの境界に隣接した参照サンプルが存在する場合、前述した実施形態が適用できる。
【０３０８】
前述したように、ビデオ信号のコーディング過程で、ピクチャはコーディングツリーユニット（ＣＴＵ）のシーケンスに分割できる。以下では、ピクチャ、スライス、またはタイル内でＣＴＵが処理される順序について説明する。図５８は、本発明の一実施形態に従ってコーディングツリーユニットが処理される順序を図示したものである。
【０３０９】
エンコーダ及びデコーダは、現在ブロックを含む現在ピクチャまたは現在ピクチャから分割されたスライス／タイル内でＣＴＵ別にエンコーディングまたはデコーディングすることができる。この際、エンコーダ及びデコーダは既定義された処理順序に従って複数のＣＴＵをエンコーディングまたはデコーディングすることができる。既定義された処理順序と異なる順にＣＴＵが処理される場合、エンコーダはデコーダに該当順序をシグナリングすることができる。
【０３１０】
図５８（ａ）は、ピクチャ、スライス、またはタイルの最上段左側のＣＴＵから横方向処理を遂行した後、次の行のＣＴＵを処理するラスタースキャン（raster scan）順序を示す。図５８（ｂ）は、ピクチャ、スライス、またはタイルで最初に処理される第１のＣＴＵ（Block A）の位置が明示的にシグナリングされる実施形態を示す。例えば、エンコーダは第１のＣＴＵの位置をシグナリングすることができる。デコーダは、シグナリングされた第１のＣＴＵの位置に基づいて該当ＣＴＵを最優先的に処理することができる。デコーダは、第１のＣＴＵの位置を基準にラスタースキャン順序上に以前位置に該当するＣＴＵを逆−ラスター（inverse-raster）スキャン順序に従ってデコーディングすることができる。また、第１のＣＴＵの位置を基準にラスタースキャン順序上に以後の位置に該当するＣＴＵは前述したラスタースキャン順序に従ってデコーディングすることができる。この際、逆−ラスタースキャン順序に従って処理されるＣＴＵとラスタースキャン順序に従って処理されるＣＴＵは、各々１つのＣＴＵずつ交差する順序に従って処理されるか、または２つのうちのどの一方向のＣＴＵが優先的に処理できる。
【０３１１】
図５８（ｃ）及び図５８（ｄ）は、ピクチャ、スライス、またはタイルで優先的に処理される複数のＣＴＵの位置が明示的にシグナリングされる実施形態を示す。例えば、複数のＣＴＵは第２のＣＴＵ（Block B）及び第３のＣＴＵ（Block C）を含むことができる。エンコーダは第２のＣＴＵ（Block B）及び第３のＣＴＵ（Block C）の各々の位置をシグナリングすることができる。また、優先的に処理される複数のＣＴＵのうち、最初に処理される第２のＣＴＵの位置が追加的にシグナリングできる。
【０３１２】
図５８（ｄ）を参照すると、デコーダはシグナリングされた第２のＣＴＵの位置に基づいて第２のＣＴＵ（Block B）を最優先的にデコーディングすることができる。次に、デコーダは第３のＣＴＵ（Block C）をデコーディングすることができる。次に、第２のＣＴＵの位置と第３のＣＴＵの位置の間のＣＴＵがデコーディングできる。例えば、デコーダはラスタースキャン順序上に、第２のＣＴＵの次のＣＴＵから第３のＣＴＵの以前ＣＴＵまでのＣＴＵをラスタースキャン順序または逆ラスタースキャン順序に従ってデコーディングすることができる。また、デコーダは第２のＣＴＵ（Block B）の位置を基準にラスタースキャン順序上に以前の位置に該当するＣＴＵを逆−ラスター（inverse-raster）スキャン順序に従ってデコーディングすることができる。また、第３のＣＴＵ（Block C）の位置を基準にラスタースキャン順序上に以後の位置に該当するＣＴＵは前述したラスタースキャン順序に従ってデコーディングすることができる。
【０３１３】
図５８（ｃ）は、図５８（ｄ）と類似の形態にピクチャ、スライス、またはタイルで優先的に処理される複数のＣＴＵの位置が明示的にシグナリングされる更に他の実施形態を示す。
【０３１４】
図５９は、本発明の一実施形態に従う両方向イントラ予測方法を図示したものである。本発明の一実施形態に従って、現在ブロックは現在ブロックの使用可能な参照サンプルの分布によって両方向イントラ予測方法を使用して予測できる。図５６及び図５８のように、現在ブロックまたは現在ブロックから分割された複数のサブブロックがエンコーディングまたはデコーディングされる場合、該当ブロックの左側及び上側の既復元されたサンプルだけでなく、該当ブロックの下側及び右側の既復元されたサンプルが該当ブロックの参照サンプルに利用できる。これによって、特定ブロックは該当ブロックの周辺の右側及び下側の既復元されたサンプルを用いる両方向イントラ予測方法によって予測できる。以下、特定ブロックは現在ブロックまたは現在ブロックから分割された複数のサブブロックを示す。
【０３１５】
図５９（ａ）及び図５９（ｂ）は、特定ブロックの４面全てに既復元されたサンプルが存在する場合、現在ブロックが予測される方法の一実施形態を図示したものである。図５９（ａ）を参照すると、特定ブロックは現在ブロックの予測モードに基づいて２等分できる。例えば、現在ブロックの予測モードが角度モードである場合、特定ブロックは現在ブロックの予測モードと直角である線分を基準に２等分できる。また、２等分された特定ブロックの第１部分は現在ブロックの予測モード及び第１参照サンプルに基づいて復元できる。この際、第１部分は特定ブロックの上側及び左側辺を含む部分でありうる。また、第１参照サンプルは特定ブロックの左側及び上側ラインの参照サンプルでありうる。２等分された特定ブロックの第２部分は２次的予測モード及び第２参照サンプルに基づいて復元できる。この際、第２部分は特定ブロックの右側及び下側辺を含む部分でありうる。また、第２参照サンプルは特定ブロックの右側及び下側ラインの参照サンプルでありうる。一実施形態に従って、２次的予測モードは図５６及び図５７を通じて説明したＳＭでありうる。
【０３１６】
図５９（ｂ）を参照すると、特定ブロックは追加的に分割されないことがある。例えば、特定ブロックは第１予測ブロック及び第２予測ブロックに基づいて復元できる。この際、第１予測ブロックは現在ブロックの予測モード及び第１参照サンプルに基づいて予測された予測ブロックでありうる。また、第２予測ブロックは２次的予測モード及び第１参照サンプルに基づいて予測された予測ブロックでありうる。デコーダは、第１予測ブロックと第２予測ブロックを加重合して特定ブロックを復元することができる。
【０３１７】
図５９（ｃ）及び図５９（ｄ）は、特定ブロックの４面のうち、３面のみに既復元されたサンプルが存在する場合、現在ブロックが予測される方法の一実施形態を図示したものである。この場合、特定ブロックは現在ブロックの予測モードに基づいて２等分できる。例えば、特定ブロックの領域のうち、既復元されたサンプルが存在しない辺に対応する領域は他の辺から予測モードを拡張して予測できる。また、図５９（ｃ）と図５９（ｄ）の実施形態でも、図５９（ｂ）のように、特定ブロックを追加的に分割せず、特定ブロックに対する複数の予測ブロックに基づいて特定ブロックを復元する実施形態が適用できる。
【０３１８】
図６０は、本発明の一実施形態に従って現在ブロックから分割された複数のサブブロックの各々が予測される方法を図示したものである。本発明の一実施形態に従って、現在ブロックから分割された複数のサブブロックは現在ブロックの周辺ブロックの予測に使われたイントラ予測モードに基づいて各々予測できる。
【０３１９】
図６０（ａ）は、現在ブロックの複数の周辺ブロックの各々の位置（ＡＬ、Ａ、ＡＲ、Ｒ、L、ＢＬ）を図示する。この際、周辺ブロックの各々の位置に対応するイントラ予測モードが存在しないことがある。例えば、該当位置のブロックがインター予測されるか、またはラスタースキャン順序またはＣＵ処理順序に従って該当位置のブロックに対するデコーディングが遂行されない状態でありうる。
【０３２０】
図６０（ｂ）は、現在ブロックが総４個のサブブロックに分割された場合、各々のサブブロックが予測される方法を示す。例えば、第１サブブロックＳＣＵ１は第１サブブロックＳＣＵ１に最も隣接した左上側位置（ＡＬ）に対応するイントラ予測モードを使用して予測できる。また、第２サブブロックＳＣＵ２は第２サブブロックＳＣＵ２に隣接した上側位置（Ａ）に対応するイントラ予測モードを使用して予測できる。また、上側位置（Ａ）に対応するイントラ予測モードが存在しない場合、第２サブブロックＳＣＵ２は他の周辺位置（例えば、右上側位置）に対応するイントラ予測モードを使用して予測できる。また、第４サブブロックＳＣＵ４のように、上側辺及び左側辺が全て現在ブロック内の場合、該当ブロックは遠隔直線上に位置した周辺ブロックのイントラ予測モードを使用して予測できる。
【０３２１】
図６０（ｃ）は、現在ブロックが総４個のサブブロックに分割された場合、各々のサブブロックが予測される更に他の方法を示す。図６０（ｃ）で、第１サブブロックＳＣＵ１、第２サブブロックＳＣＵ２、及び第３サブブロックＳＣＵ３は、現在ブロックのイントラ予測モードに基づいて予測できる。この際、第１サブブロックＳＣＵ１、第２サブブロックＳＣＵ２、及び第３サブブロックＳＣＵ３は、図５６及び図５７を通じて前述した１次的サブブロックでありうる。一実施形態に従って、第４サブブロックＳＣＵ４は現在ブロックのイントラ予測モードと異なるイントラ予測モードに基づいて予測できる。例えば、第４サブブロックＳＣＵ４は、右側位置（Ｒ）に対応するイントラ予測モードを使用して予測できる。または、第４サブブロックＳＣＵ４は遠隔に直線上に位置した周辺ブロックのイントラ予測モードを使用して予測できる。
【０３２２】
上述した本発明の実施例は多様な手段を介して具現される。例えば、本発明の実施例は、ハードウェア、ファームウェア（ｆｉｒｍｗａｒｅ）、ソフトフェアまたはそれらの組み合わせによって具現される。
【０３２３】
ハードウェアによる具現の場合、本発明の実施例による方法は、一つまたはそれ以上のＡＳＩＣｓ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ）、ＤＳＰｓ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒｓ）、ＤＳＤＰｓ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｄｅｖｉｃｅｓ）、ＰＤＬｓ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅｓ）、ＦＰＧＡｓ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙｓ）、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサなどによって具現される。
【０３２４】
ファームフェアやソフトウェアによる具現の場合、本発明の実施例による方法は、上述した機能または動作を行うモジュール、手順または関数などの形態で具現される。ソフトウェアコードは、メモリに貯蔵されてプロセッサによって具現される。前記メモリはプロセッサの内部または外部に位置し、既に公知の多様な手段によってプロセッサとデータを交換する。
【０３２５】
一部の実施例はコンピュータによって実行されるプログラムモジュールのようなコンピュータで実行可能な命令語を含む記録媒体の形態にも具現される。コンピュータで判読可能な媒体は、コンピュータでアクセスされ得る任意の利用可能な媒体であり、揮発性及び非揮発性媒体、分離型及び非分離型媒体をいずれも含む。また、コンピュータ読取可能媒体は貯蔵媒体及び通信媒体をいずれも含む。コンピュータ貯蔵媒体は、コンピュータ判読可能な命令語、データ構造、プログラムモジュール、またはその他のデータのような情報の貯蔵のための任意の方法または技術で具現された揮発性及び非揮発性媒体、分離型及び非分離型媒体をいずれも含む。通信媒体は、典型的にコンピュータ読取可能な命令語、データ構造、またはプログラムモジュールのような変調されたデータ信号のその他のデータ、またはその他の伝送メカニズムを含み、任意の情報伝達媒体を含む。
【０３２６】
上述した本発明の説明は例示のためのものであって、本発明が属する技術分野における通常の知識を有する者は、本発明の技術的思想や必須的特徴を変更せずも他の具体的な形態に容易に変更可能であることを理解できるはずである。よって、上述した実施例は全ての面で例示的なものであり、限定的なものではないと理解すべきである。例えば、単一型として説明されている各構成要素は分散されて実施されてもよく、同じく分散されていると説明されている構成要素も結合された形態で実施されてもよい。
【０３２７】
本発明の範囲は、上述した詳細な説明よりは後述する特許請求の範囲によって示され、特許請求の範囲の意味及び範囲、そしてその均等概念から導き出される全ての変更または変形された形態が本発明の範囲に含まれると解釈すべきである。
【符号の説明】
【０３２８】
110  変換部
115  量子化部
120  逆量子化部
125  逆変換部
130  フィルタリング部
150  予測部
152  イントラ予測部
154  インター予測部
154a  モーション推定部
154b  モーション補償部
160  エントロピーコーディング部
210  エントロピーデコーディング部
220  逆量子化部
225  逆変換部
230  フィルタリング部
250  予測部
252  イントラ予測部
254  インター予測部
710  現在ピクチャ
720  参照ピクチャ
810  エンコーダ
820  デコーダ
【図１】
2021526340.tif 000013
【図２】
2021526340.tif 000014
【図３】
2021526340.tif 000015
【図４】
2021526340.tif 000016
【図５】
2021526340.tif 000017
【図６】
2021526340.tif 000018
【図７】
2021526340.tif 000019
【図８】
2021526340.tif 000020
【図９】
2021526340.tif 000021
【図１０】
2021526340.tif 000022
【図１１】
2021526340.tif 000023
【図１２（ａ）】
2021526340.tif 000024
【図１２（ｂ）】
2021526340.tif 000025
【図１３】
2021526340.tif 000026
【図１４】
2021526340.tif 000027
【図１５】
2021526340.tif 000028
【図１６】
2021526340.tif 000029
【図１７】
2021526340.tif 000030
【図１８】
2021526340.tif 000031
【図１９】
2021526340.tif 000032
【図２０】
2021526340.tif 000033
【図２１】
2021526340.tif 000034
【図２２】
2021526340.tif 000035
【図２３】
2021526340.tif 000036
【図２４】
2021526340.tif 000037
【図２５】
2021526340.tif 000038
【図２６】
2021526340.tif 000039
【図２７】
2021526340.tif 000040
【図２８】
2021526340.tif 000041
【図２９】
2021526340.tif 000042
【図３０】
2021526340.tif 000043
【図３１】
2021526340.tif 000044
【図３２】
2021526340.tif 000045
【図３３】
2021526340.tif 000046
【図３４】
2021526340.tif 000047
【図３５】
2021526340.tif 000048
【図３６（ａ）】
2021526340.tif 000049
【図３６（ｂ）】
2021526340.tif 000050
【図３７】
2021526340.tif 000051
【図３８】
2021526340.tif 000052
【図３９】
2021526340.tif 000053
【図４０（ａ）】
2021526340.tif 000054
【図４０（ｂ）】
2021526340.tif 000055
【図４１】
2021526340.tif 000056
【図４２（ａ）】
2021526340.tif 000057
【図４２（ｂ）】
2021526340.tif 000058
【図４３】
2021526340.tif 000059
【図４４】
2021526340.tif 000060
【図４５】
2021526340.tif 000061
【図４６】
2021526340.tif 000062
【図４７】
2021526340.tif 000063
【図４８】
2021526340.tif 000064
【図４９】
2021526340.tif 000065
【図５０】
2021526340.tif 000066
【図５１】
2021526340.tif 000067
【図５２】
2021526340.tif 000068
【図５３】
2021526340.tif 000069
【図５４（ａ）】
2021526340.tif 000070
【図５４（ｂ）】
2021526340.tif 000071
【図５４（ｃ）】
2021526340.tif 000072
【図５４（ｄ）】
2021526340.tif 000073
【図５５（ａ）】
2021526340.tif 000074
【図５５（ｂ）】
2021526340.tif 000075
【図５５（ｃ）】
2021526340.tif 000076
【図５６】
2021526340.tif 000077
【図５７（ａ）】
2021526340.tif 000078
【図５７（ｂ）】
2021526340.tif 000079
【図５８（ａ）】
2021526340.tif 000080
【図５８（ｂ）】
2021526340.tif 000081
【図５８（ｃ）】
2021526340.tif 000082
【図５８（ｄ）】
2021526340.tif 000083
【図５９（ａ）】
2021526340.tif 000084
【図５９（ｂ）】
2021526340.tif 000085
【図５９（ｃ）】
2021526340.tif 000086
【図５９（ｄ）】
2021526340.tif 000087
【図６０】
2021526340.tif 000088
【手続補正書】
【提出日】令和2年12月7日(2020.12.7)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０１６６
【補正方法】変更
【補正の内容】
【０１６６】
図２２は、本発明の一実施形態に従って現在ブロックの動きベクトル差分値の解像度が獲得される方法を示すフローチャートである。図２２を参照すると、デコーダはビットストリームをパーシングして現在ブロックのシグナリングされた動きベクトル差分値を獲得することができる（Ｓ２２０１）。この際、シグナリングされた動きベクトル差分値は、動きベクトル差分値の解像度単位で表現された値でありうる。また、デコーダは現在ブロックの動きベクトル差分値の解像度を指示する解像度指示子を獲得することができる。デコーダは、解像度指示子のｎ番目のビットをパーシングすることができる（Ｓ２２０５）。ここで、ｎは１からＮまでの整数でありうる。ｎは１からＮまでループ演算によって順次に増加する値でありうる。解像度指示子のｎ番目のビットが‘０’の場合、デコーダはｎ番目の可用解像度を現在ブロックの動きベクトル差分値の解像度に使用することができる。この際、ｎ番目の可用解像度は現在ブロックの解像度セットが含む可用解像度のうち、ｎ番目の指示子値により指示される可用解像度でありうる。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１６９
【補正方法】変更
【補正の内容】
【０１６９】
次に、デコーダは第２現在解像度セットが含む可用解像度の個数が１つであるかを判断することができる（Ｓ２２１３）。第２現在解像度セットが含む可用解像度の個数が１つの場合、デコーダは第２現在解像度セットが含む可用解像度を現在ブロックの動きベクトル差分値の解像度に使用することができる。第１現在解像度セットが含む可用解像度の個数が１つでない場合、デコーダはステップＳ２２０３乃至ステップＳ２２１３をまた遂行することができる。また、デコーダはｎを１増加させることができる。この際、デコーダは次のループ演算のステップＳ２２０７で第２現在解像度セットを以前解像度セットに使用することができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１７５
【補正方法】変更
【補正の内容】
【０１７５】
図２５を参照すると、負の符号（−）が適用された現在ブロックの動きベクトル差分値のｘ軸成分及び正の符号（＋）が適用された現在ブロックの動きベクトル差分値のｙ軸成分に基づいて、第４参照ブロック候補（Candidate reference block 1）が獲得できる。また、正の符号（＋）が適用された現在ブロックの動きベクトル差分値のｘ軸成分及び正の符号（＋）が適用された現在ブロックの動きベクトル差分値のｙ軸成分に基づいて、第５参照ブロック候補（Candidate reference block 2）が獲得できる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０２７３
【補正方法】変更
【補正の内容】
【０２７３】
図５２は、本発明の一実施形態に従って現在ブロックのアフィン動き補償のための複数のコントロールポイント動きベクトルが誘導される方法を示す図である。図５２を参照すると、第１のＣＰＭＶ差分値（ｍｖｄ０）及び第２のＣＰＭＶ差分値（ｍｖｄ１）を共通差分予測子（ｍｖｄｐ）及び単一の差分絶対値（ｍｖｄｄ）に基づいて獲得することができる。例えば、第１のＣＰＭＶ差分値（Ｍｖｄ０）はｍｖｄｐとｍｖｄｄの合算に基づいて獲得できる。また、第２のＣＰＭＶ差分値（ｍｖｄ１）はｍｖｄｐと−ｍｖｄｄの合算に基づいて獲得できる。
【手続補正５】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオ信号デコーディング装置において、
プロセッサを含み、
前記プロセッサは、
第１方法及び第２方法のうち、いずれか１つを使用して現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成し、
前記構成されたＭＶＰ候補リストに基づいて現在ブロックの動きベクトル予測子を獲得し、
前記現在ブロックの動きベクトルと前記動きベクトル予測子との間の差を示す動きベクトル差分値を獲得し、
前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、前記動きベクトル差分値を修正し、前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わり、
前記動きベクトル予測子及び前記修正された動きベクトル差分値に基づいて前記現在ブロックの動きベクトルを獲得し、
前記獲得された動きベクトルに基づいて前記現在ブロックを復元する、ビデオ信号デコーディング装置。
【請求項２】
前記動きベクトル差分値の解像度は、前記現在ブロックのＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって、各々第１解像度セット及び第２解像度セットのうち、いずれか１つから獲得され、
前記第２解像度セットは、前記第１解像度セットが含む複数の可用解像度でない他の可用解像度を少なくとも１つ含む、請求項１に記載のビデオ信号デコーディング装置。
【請求項３】
前記ＭＶＰ候補リストがアフィン（affine）モデルに基づいた前記第１方法を使用して構成される場合、前記動きベクトル差分値の解像度は前記第１解像度セットから獲得され、
前記ＭＶＰ候補リストが前記アフィンモデルに基づかない前記第２方法を使用して構成される場合、前記動きベクトル差分値の解像度は前記第２解像度セットから獲得される、請求項２に記載のビデオ信号デコーディング装置。
【請求項４】
前記第１解像度セットが含む複数の可用解像度のうち、最も大きい第１可用解像度は、前記第２解像度セットが含む複数の可用解像度のうち、最も大きい第２可用解像度より小さい、請求項３に記載のビデオ信号デコーディング装置。
【請求項５】
前記第１可用解像度は１サンプル単位の解像度であり、
前記第２可用解像度は４サンプル単位の解像度である、請求項４に記載のビデオ信号デコーディング装置。
【請求項６】
前記プロセッサは、
前記第１解像度セット及び前記第２解像度セットのうち、いずれか１つが含む複数の可用解像度のうち、前記現在ブロックの動きベクトル差分値の解像度を指示する指示子を獲得し、
前記指示子が指示する解像度に基づいて前記動きベクトル差分値を修正し、
前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わる、請求項２に記載のビデオ信号デコーディング装置。
【請求項７】
前記ＭＶＰ候補リストが前記第１方法を使用して構成される場合、前記第１値は第１解像度セットが含む可用解像度のうちの１つである第１可用解像度を指示し、
前記ＭＶＰ候補リストが前記第２方法を使用して構成される場合、前記第１値は第２解像度セットが含む可用解像度のうちの１つである第２可用解像度を示し、
前記第１可用解像度と前記第２可用解像度は互いに異なる、請求項６に記載のビデオ信号デコーディング装置。
【請求項８】
前記第１解像度セット及び前記第２解像度セットは全て第１可用解像度を含み、
前記ＭＶＰ候補リストが前記第２方法を使用して構成される場合、前記第１可用解像度は前記指示子の前記第１値と異なる値である第２値により指示される、請求項７に記載のビデオ信号デコーディング装置。
【請求項９】
前記指示子は可変長さのビットで表現され、
前記第１値は前記可変長さのビットで表現される複数の値のうち、いずれか１つである、請求項６に記載のビデオ信号デコーディング装置。
【請求項１０】
前記指示子の前記第１値と異なる第３値は、前記複数の値のうち、最も短い長さのビットで表現される値であり、
前記ＭＶＰ候補リストが前記第２方法により構成される場合、前記第３値は前記第２解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度を指示し、
前記ＭＶＰ候補リストが前記第１方法により構成される場合、前記第３値は前記第１解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度の以外の他の可用解像度を指示する、請求項９に記載のビデオ信号デコーディング装置。
【請求項１１】
前記第１解像度セットが含む可用解像度の個数と前記第２解像度セットが含む可用解像度の個数は互いに異なる、請求項２に記載のビデオ信号デコーディング装置。
【請求項１２】
前記解像度セットを構成する可用解像度の個数は、前記現在ブロックの動き補償のための参照ピクチャのピクチャ順序カウント（picture order count、ＰＯＣ）によって変わる、請求項１１に記載のビデオ信号デコーディング装置。
【請求項１３】
前記現在ブロックの動き補償のための参照ピクチャのピクチャ順序カウント（picture order count、ＰＯＣ）が前記現在ブロックを含む現在ピクチャのＰＯＣと同一の場合、前記第１解像度セットから前記現在ブロックの動きベクトル差分値の解像度が獲得され、
前記現在ブロックの動き補償のための参照ピクチャのピクチャ順序カウントが前記現在ブロックを含む現在ピクチャのＰＯＣと同一でない場合、前記第２解像度セットから前記現在ブロックの動きベクトル差分値の解像度が獲得され、
前記第１解像度セットは、前記第２解像度セットが含む可用解像度のうち、最も小さい可用解像度を除外した残りの可用解像度で構成された、請求項１２に記載のビデオ信号デコーディング装置。
【請求項１４】
ビデオ信号エンコーディング装置において、
プロセッサを含み、
前記プロセッサは、
現在ブロックの動き補償のために参照される参照ブロックの位置に基づいて前記現在ブロックの動きベクトルを獲得し、
第１方法及び第２方法のうち、いずれか１つを使用して前記現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストを構成し、
前記ＭＶＰ候補リストが含む複数の候補のうちのいずれか１つと前記現在ブロックの動きベクトルとの間の差に基づいて動きベクトル差分値を獲得し、
前記現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて、シグナリングされる動きベクトル差分値を決定し、前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、前記第１方法及び前記第２方法のうち、どの方法を使用して前記現在ブロックのＭＶＰ候補リストが構成されるかによって変わり、
前記シグナリングされる動きベクトル差分値を含むビットストリームを生成する、ビデオ信号エンコーディング装置。
【請求項１５】
前記動きベクトル差分値の解像度は、前記現在ブロックのＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって、各々第１解像度セット及び第２解像度セットのうち、いずれか１つから獲得され、
前記第２解像度セットは、前記第１解像度セットが含む複数の可用解像度でない他の可用解像度を少なくとも１つ含む、請求項１４に記載のビデオ信号エンコーディング装置。
【請求項１６】
前記第１解像度セットが含む複数の可用解像度のうち、最も大きい第１可用解像度は、前記第２解像度セットが含む複数の可用解像度のうち、最も大きい第２可用解像度より小さい、請求項１５に記載のビデオ信号エンコーディング装置。
【請求項１７】
前記プロセッサは、
第１解像度セット及び第２解像度セットのうちのいずれか１つが含む複数の可用解像度のうち、いずれか１つを指示する指示子を決定し、
前記指示子及び前記シグナリングされる動きベクトル差分値を含むビットストリームを生成し、かつ
前記指示子の値が第１値である場合、前記第１値により指示される前記解像度は、前記ＭＶＰ候補リストが前記第１方法及び前記第２方法のうち、どの方法を使用して構成されるかによって変わる、請求項１４に記載のビデオ信号エンコーディング装置。
【請求項１８】
前記指示子は可変長さのビットで表現され、
前記第１値は前記可変長さのビットで表現される複数の値のうち、いずれか１つである、請求項１７に記載のビデオ信号エンコーディング装置。
【請求項１９】
前記指示子の前記第１値と異なる第２値は、前記複数の値のうち、最も短い長さのビットで表現される値であり、
前記ＭＶＰ候補リストが前記第２方法により構成される場合、前記第２値は前記第２解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度を指示し、
前記ＭＶＰ候補リストが前記第１方法により構成される場合、前記第２値は前記第１解像度セットが含む複数の可用解像度セットのうち、最も小さい可用解像度の以外の他の可用解像度を指示する、請求項１８に記載のビデオ信号エンコーディング装置。
【請求項２０】
ビットストリームを格納するコンピュータにより読取可能な記録媒体において、
前記ビットストリームは、
現在ブロックの動きベクトル差分値の解像度（resolution）に基づいて修正された前記現在ブロックの修正された動きベクトル差分値を含み、かつ
前記動きベクトル差分値の解像度は、解像度セットが含む複数の可用解像度のうちのいずれか１つであり、前記解像度セットが含む複数の可用解像度の構成は、第１方法及び第２方法のうち、どの方法を使用して前記現在ブロックの動き補償のための動きベクトル予測子（motion vector prediction、ＭＶＰ）候補リストが構成されるかによって変わる、コンピュータにより読取可能な記録媒体。
【国際調査報告】
2021526340.tif 000089
2021526340.tif 000090
2021526340.tif 000091
2021526340.tif 000092