(57)【特許請求の範囲】
【請求項１】
現在の画像ブロックにおけるW個の制御点の動きベクトルを決定するステップと、
動きモデルと前記W個の制御点の前記動きベクトルとを用いて、計算により、前記現在の画像ブロックのP個の画素単位の動きベクトルを取得するステップであって、前記W個の制御点の前記決定された動きベクトルの精度は画素精度の1／nであり、計算によって取得される、前記P個の画素単位の各々の前記動きベクトルの精度は前記画素精度の1／Nであり、前記P個の画素単位は前記現在の画像ブロックの画素単位の一部または全部であり、前記P個の画素単位の各々の前記動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられ、W、n、およびNは1より大きい整数であり、Nはnより大きく、Pは正の整数である、ステップと、
前記P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いて前記P個の画素単位の各々の、前記基準画像における前記対応する基準画素単位の画素に対して補間フィルタリングを行うステップであって、Qはnより大きい整数である、ステップと
を含む、画像予測方法。
【請求項２】
Nの値は事前設定された固定値であり、QはN以下である、請求項1に記載の方法。
【請求項３】
前記W個の制御点の前記動きベクトルのうちの1つの水平成分もしくは垂直成分が前記Nを用いて前記動きモデルにおいてN回増幅され、または前記W個の制御点のうちの任意の2つの動きベクトル間の成分差がNを用いて前記動きモデルにおいてN回増幅される、請求項1または2に記載の方法。
【請求項４】
Qの位相を有する補間フィルタを用いて前記P個の画素単位の各々の、前記基準画像における前記対応する基準画素単位の画素に対して補間フィルタリングを行う前記ステップは、
前記P個の画素単位の各々の前記動きベクトルを用いて、計算により、前記P個の画素単位の各々の位相を取得するステップと、各画素単位の前記位相に基づき、前記画素単位に対応している前記Qの位相を有する前記補間フィルタを決定するステップであって、前記補間フィルタによって用いられるフィルタ係数は前記位相に対応している、ステップと、前記対応する画素単位に対応している前記Qの位相を有する前記決定された補間フィルタを用いて各画素単位の、前記基準画像における前記対応する基準画素単位の前記画素に対して補間フィルタリングを行うステップと
を含む、請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記P個の画素単位の各々の前記動きベクトルを用いて、計算により、前記P個の画素単位の各々の位相を取得する前記ステップは、前記P個の画素単位の各々の前記動きベクトルを用いて以下の式に従って、計算により、前記P個の画素単位の各々の前記位相を取得するステップ、を含み、
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）；
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の垂直位相を表し、νNxは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表す、請求項4に記載の方法。
【請求項６】
前記位相は水平位相と垂直位相とを含み、各画素単位の前記位相に基づき、前記画素単位に対応している前記Qの位相を有する前記補間フィルタを決定する前記ステップは、各画素単位の前記水平位相に基づき、前記対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定するステップと、各画素単位の前記垂直位相に基づき、前記対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定するステップと、を含み、前記水平補間フィルタによって用いられるフィルタ係数は前記水平位相に対応しており、前記垂直補間フィルタによって用いられるフィルタ係数は前記垂直位相に対応している、請求項4または5に記載の方法。
【請求項７】
前記画素単位に対応している前記Qの位相を有する前記決定された補間フィルタを用いて各画素単位の、前記基準画像における前記対応する基準画素単位の前記画素に対して補間フィルタリングを行う前記ステップは、
水平補間フィルタリングの結果を取得するために、画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて前記画素単位iの、前記基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、前記画素単位iの予測画素値を取得するために、前記画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて前記水平補間フィルタリングの結果に対して垂直補間フィルタリングを行うステップであって、前記画素単位iが前記P個の画素単位のうちの任意の1つである、ステップ、または
垂直補間フィルタリングの結果を取得するために、画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて前記画素単位jの、前記基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、前記画素単位jの予測画素値を取得するために、前記画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて前記垂直補間フィルタリングの結果に対して水平補間フィルタリングを行うステップであって、前記画素単位jが前記P個の画素単位のうちの任意の1つである、ステップ
を含む、請求項6に記載の方法。
【請求項８】
前記動きモデルは、並進運動モデル、アフィン運動モデル、回転運動モデル、放物運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、または双一次運動モデルである、請求項1から7のいずれか一項に記載の方法。
【請求項９】
Wが2に等しい場合、前記動きモデルは以下のように表され、
【数１】
0006776276.tif 000024
式中、Lは、前記現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が前記画素精度の1／nである動きベクトルを表し、νNxは、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表す、請求項1から8のいずれか一項に記載の方法。
【請求項１０】
Wが3に等しい場合、前記動きモデルは以下のように表され、
【数２】
0006776276.tif 000025
式中、νNxは、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が前記画素精度の1／nである動きベクトルを表し、wは、前記現在の画像ブロックの幅を表し、hは、前記現在の画像ブロックの高さを表す、請求項1から8のいずれか一項に記載の方法。
【請求項１１】
前記W個の制御点の前記動きベクトルは、前記現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が前記画素精度の1／nである動きベクトルに基づいて予測される、請求項1から10のいずれか一項に記載の方法。
【請求項１２】
前記画像予測方法は、映像符号化プロセスに適用され、または映像復号化プロセスに適用される、請求項1から11のいずれか一項に記載の方法。
【請求項１３】
現在の画像ブロックにおけるW個の制御点の動きベクトルを決定するように構成された、第1の決定部と、
動きモデルと前記W個の制御点の前記動きベクトルとを用いて、計算により、前記現在の画像ブロックのP個の画素単位の動きベクトルを取得するように構成された計算部であって、前記W個の制御点の前記決定された動きベクトルの精度は画素精度の1／nであり、計算によって取得される、前記P個の画素単位の各々の前記動きベクトルの精度は前記画素精度の1／Nであり、前記P個の画素単位は前記現在の画像ブロックの画素単位の一部または全部であり、前記P個の画素単位の各々の前記動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられ、W、n、およびNは1より大きい整数であり、Nはnより大きく、Pは正の整数である、計算部と、
前記P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いて前記P個の画素単位の各々の、前記基準画像における前記対応する基準画素単位の画素に対して補間フィルタリングを行うように構成された補間フィルタリング部であって、Qはnより大きい整数である、補間フィルタリング部と
を含む、画像予測装置。
【請求項１４】
Nの値は事前設定された固定値であり、QはN以下である、請求項13に記載の画像予測装置。
【請求項１５】
前記W個の制御点の前記動きベクトルのうちの1つの水平成分もしくは垂直成分がNを用いて前記動きモデルにおいてN回増幅され、または前記W個の制御点のうちの任意の2つの動きベクトル間の成分差がNを用いて前記動きモデルにおいてN回増幅される、請求項13または14に記載の画像予測装置。
【請求項１６】
前記補間フィルタリング部は、前記P個の画素単位の各々の前記動きベクトルを用いて、計算により、前記P個の画素単位の各々の位相を取得し、各画素単位の前記位相に基づき、前記対応する画素単位に対応している前記Qの位相を有する前記補間フィルタを決定し、前記補間フィルタによって用いられるフィルタ係数は前記位相に対応しており、前記対応する画素単位に対応している前記Qの位相を有する前記決定された補間フィルタを用いて各画素単位の、前記基準画像における前記対応する基準画素単位の前記画素に対して補間フィルタリングを行う、ように特に構成されている、
請求項13から15のいずれか一項に記載の画像予測装置。
【請求項１７】
前記P個の画素単位の各々の前記動きベクトルを用いて、計算により、前記P個の画素単位の各々の位相を取得する局面で、前記補間フィルタリング部は、前記P個の画素単位の各々の前記動きベクトルを用いて以下の式に従って、計算により、前記P個の画素単位の各々の前記位相を取得するように特に構成されており、
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）；
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の垂直位相を表し、νNxは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表す、
請求項16に記載の画像予測装置。
【請求項１８】
前記位相は水平位相と垂直位相とを含み、
各画素単位の前記位相に基づき、前記対応する画素単位に対応している前記Qの位相を有する前記補間フィルタを決定する局面で、前記補間フィルタリング部は、各画素単位の前記水平位相に基づき、前記対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定し、各画素単位の前記垂直位相に基づき、前記対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定する、ように特に構成されており、前記水平補間フィルタによって用いられるフィルタ係数は前記水平位相に対応しており、前記垂直補間フィルタによって用いられるフィルタ係数は前記垂直位相に対応している、請求項16または17に記載の画像予測装置。
【請求項１９】
前記対応する画素単位に対応している前記Qの位相を有する前記決定された補間フィルタを用いて各画素単位の、前記基準画像における前記対応する基準画素単位の前記画素に対して補間フィルタリングを行う局面で、前記補間フィルタリング部は、
水平補間フィルタリングの結果を取得するために、画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて前記画素単位iの、前記基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、前記画素単位iの予測画素値を取得するために、前記画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて前記水平補間フィルタリングの結果に対して垂直補間フィルタリングを行い、前記画素単位iが前記P個の画素単位のうちの任意の1つであり、または
垂直補間フィルタリングの結果を取得するために、画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて前記画素単位jの、前記基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、前記画素単位jの予測画素値を取得するために、前記画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて前記垂直補間フィルタリングの結果に対して水平補間フィルタリングを行い、前記画素単位jが前記P個の画素単位のうちの任意の1つである
ように特に構成されている、請求項18に記載の画像予測装置。
【請求項２０】
前記動きモデルは、並進運動モデル、アフィン運動モデル、回転運動モデル、ズーミング運動モデル、放物運動モデル、せん断運動モデル、射影運動モデル、または双一次運動モデルである、請求項13から19のいずれか一項に記載の画像予測装置。
【請求項２１】
Wが2に等しい場合、前記動きモデルは以下のように表され、
【数３】
0006776276.tif 000026
式中、Lは、前記現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が前記画素精度の1／nである動きベクトルを表し、νNxは、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表す、請求項13から20のいずれか一項に記載の画像予測装置。
【請求項２２】
Wが3に等しい場合、前記動きモデルは以下のように表され、
【数４】
0006776276.tif 000027
式中、νNxは、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が前記画素精度の1／nである動きベクトルを表し、wは、前記現在の画像ブロックの幅を表し、hは、前記現在の画像ブロックの高さを表す、請求項13から20のいずれか一項に記載の画像予測装置。
【請求項２３】
前記W個の制御点の前記動きベクトルは、前記現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が前記画素精度の1／nである動きベクトルに基づいて予測される、請求項13から22のいずれか一項に記載の画像予測装置。
【請求項２４】
前記画像予測装置は映像符号化装置に適用され、または前記画像予測装置は映像復号化装置に適用される、請求項13から23のいずれか一項に記載の画像予測装置。
【請求項２５】
メモリとプロセッサとを含む、画像予測装置であって、
前記プロセッサは、現在の画像ブロックにおけるW個の制御点の動きベクトルを決定し、動きモデルと前記W個の制御点の前記動きベクトルとを用いて、計算により、前記現在の画像ブロックのP個の画素単位の動きベクトルを取得する、ように構成され、前記W個の制御点の前記決定される動きベクトルの精度は画素精度の1／nであり、計算によって取得される、前記P個の画素単位の各々の前記動きベクトルの精度は前記画素精度の1／Nであり、前記P個の画素単位は前記現在の画像ブロックの画素単位の一部または全部であり、前記P個の画素単位の各々の前記動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられ、W、n、およびNは1より大きい整数であり、Nはnより大きく、Pは正の整数であり、また前記プロセッサは、前記P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いて前記P個の画素単位の各々の、前記基準画像における前記対応する基準画素単位の画素に対して補間フィルタリングを行うように構成され、Qはnより大きい整数である、画像予測装置。
【請求項２６】
Nの値は事前設定された固定値であり、QはN以下である、請求項25に記載の画像予測装置。
【請求項２７】
前記W個の制御点の前記動きベクトルのうちの1つの水平成分もしくは垂直成分がNを用いて前記動きモデルにおいてN回増幅され、または前記W個の制御点のうちの任意の2つの動きベクトル間の成分差がNを用いて前記動きモデルにおいてN回増幅される、請求項25または26に記載の画像予測装置。
【請求項２８】
前記プロセッサは、前記P個の画素単位の各々の前記動きベクトルを用いて、計算により、前記P個の画素単位の各々の位相を取得し、各画素単位の前記位相に基づき、前記対応する画素単位に対応している前記Qの位相を有する前記補間フィルタを決定し、前記補間フィルタによって用いられるフィルタ係数が前記位相に対応しており、前記対応する画素単位に対応している決定された前記Qの位相を有する前記補間フィルタを用いて各画素単位の、前記基準画像における前記対応する基準画素単位の前記画素に対して補間フィルタリングを行う、ように構成される、請求項25から27のいずれか一項に記載の画像予測装置。
【請求項２９】
前記P個の画素単位の各々の前記動きベクトルを用いて、計算により、前記P個の画素単位の各々の位相を取得する局面で、前記プロセッサは、前記P個の画素単位の各々の前記動きベクトルを用いて以下の式に従って、計算により、前記P個の画素単位の各々の前記位相を取得する、ように構成され、
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）；
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の垂直位相を表し、νNxは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表す、
請求項28に記載の画像予測装置。
【請求項３０】
前記位相は水平位相と垂直位相とを含み、
各画素単位の前記位相に基づき、前記対応する画素単位に対応している前記Qの位相を有する前記補間フィルタを決定する局面で、前記プロセッサは、各画素単位の前記水平位相に基づき、前記対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定し、各画素単位の前記垂直位相に基づき、前記対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定する、ように構成され、前記水平補間フィルタによって用いられるフィルタ係数は前記水平位相に対応しており、前記垂直補間フィルタによって用いられるフィルタ係数は前記垂直位相に対応している、請求項28または29に記載の画像予測装置。
【請求項３１】
前記対応する画素単位に対応している決定された前記Qの位相を有する前記補間フィルタを用いて各画素単位の、前記基準画像における前記対応する基準画素単位の前記画素に対して補間フィルタリングを行う局面で、前記プロセッサは、水平補間フィルタリングの結果を取得するために、画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて前記画素単位iの、前記基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、前記画素単位iの予測画素値を取得するために、前記画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて前記水平補間フィルタリングの結果に対して垂直補間フィルタリングを行い、前記画素単位iが前記P個の画素単位のうちの任意の1つである、ように特に構成され、または
前記プロセッサは、垂直補間フィルタリングの結果を取得するために、画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて前記画素単位jの、前記基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、前記画素単位jの予測画素値を取得するために、前記画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて前記垂直補間フィルタリングの結果に対して水平補間フィルタリングを行い、前記画素単位jが前記P個の画素単位のうちの任意の1つである、ように特に構成される、
請求項30に記載の画像予測装置。
【請求項３２】
前記動きモデルは、並進運動モデル、アフィン運動モデル、回転運動モデル、ズーミング運動モデル、放物運動モデル、せん断運動モデル、射影運動モデル、または双一次運動モデルである、請求項25から31のいずれか一項に記載の画像予測装置。
【請求項３３】
Wが2に等しい場合、前記動きモデルは以下のように表され、
【数５】
0006776276.tif 000028
式中、Lは、前記現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が前記画素精度の1／nである動きベクトルを表し、νNxは、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表す、請求項25から32のいずれか一項に記載の画像予測装置。
【請求項３４】
Wが3に等しい場合、前記動きモデルは以下のように表され、
【数６】
0006776276.tif 000029
式中、νNxは、前記現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が前記画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、前記現在の画像ブロックにおいて前記（x，y）の座標を有する前記画素単位の、その精度が前記画素精度の1／Nである前記動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が前記画素精度の1／nである動きベクトルを表し、wは、前記現在の画像ブロックの幅を表し、hは、前記現在の画像ブロックの高さを表す、請求項25から32のいずれか一項に記載の画像予測装置。
【請求項３５】
前記W個の制御点の前記動きベクトルは、前記現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が前記画素精度の1／nである動きベクトルに基づいて予測される、請求項25から34のいずれか一項に記載の画像予測装置。
【請求項３６】
前記画像予測装置は映像符号化装置に適用され、または前記画像予測装置は映像復号化装置に適用される、請求項25から35のいずれか一項に記載の画像予測装置。
【請求項３７】
コンピュータに請求項1から12のいずれか一項に記載の方法を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像符号化および映像復号化の分野に関し、詳細には、画像予測方法および関連装置に関する。
【背景技術】
【０００２】
光電子収集技術が発達し、高精細度デジタルビデオの要件が高まるにつれて、ビデオデータ量もますます大きくなっている。異種伝送帯域幅には限りがあり、映像アプリケーションが多様化しているために、映像符号化効率にはより高い要件が課される。この場合、必要に応じて高効率映像符号化（英語：high efficient video coding、略称：HEVC）規格の策定が開始される。
【０００３】
映像符号化圧縮の基本原理は、空間領域と時間領域と符号語との相関を用いて冗長性を可能な限り除去することである。目下、一般的な手法では、ブロックベースのハイブリッド映像符号化フレームワークを用いて、予測（フレーム内予測およびフレーム間予測を含む）、変換、量子化、エントロピー符号化などのステップによって映像符号化圧縮を実現している。この符号化フレームワークは強力であり、ブロックベースのハイブリッド映像符号化フレームワークはHEVCにも用いられる。
【０００４】
様々な映像符号化／復号化方式において、動き推定／動き補償は、符号化／復号化性能に影響を及ぼす重要な技術である。多くの既存の映像符号化／復号化方式では、オブジェクトの動きが並進運動モデルの要件を満たし、オブジェクト全体の様々な部分が同じ動きをするものと一般に仮定される。既存の動き推定／動き補償アルゴリズムは、基本的に、並進運動モデル（英語：translational motion model）に基づくブロックベースの動き補償アルゴリズムである。既存のフレーム間予測は、主として、並進運動モデルに基づくブロックベースの動き補償（英語：motion compensation）予測である。非並進運動用に設計されたいくつかの非並進運動モデル（例えば、アフィン運動モデル）が次第に浮上してきている。
【０００５】
アフィン運動モデルに基づく予測機構では、現在の画像ブロックの低精度の予測画素値を取得するように、現在の画像ブロックにおける2つの制御点の低精度の動きベクトルとアフィン運動モデルとを用いて先行技術における画素値予測が行われる。画素値予測のプロセスにおいては、補間フィルタを用いて補間フィルタリング操作を行う必要がある。現在の画像ブロックの取得される予測画素値の精度は2つの制御点の動きベクトルの精度と同じである。現在の画像ブロックの高精度の予測画素値を取得する必要がある場合には、現在の画像ブロックの取得された低精度の予測画素値に対して2次補間フィルタリングを行うために双一次補間フィルタがさらに必要である。
【０００６】
先行技術では、2つの制御点の低精度の動きベクトルとアフィン運動モデルとを用いて、現在の画像ブロックの高精度の予測画素値を取得する場合、少なくとも2回の補間フィルタリング操作を行う必要がある（比較的大容量の中間キャッシュとメモリ動作が補間フィルタリング操作ごとに必要である）。その結果、比較的大容量の中間キャッシュとメモリ動作が、画像予測プロセス全体において必要になり、計算の複雑さが相対的に高まる。
【発明の概要】
【課題を解決するための手段】
【０００７】
本発明の実施形態は、画像予測プロセスの間に補間フィルタリングに必要とされる中間キャッシュの量およびメモリ動作を低減させ、画像予測プロセスの間の計算の複雑さを低減させるために、画像予測方法および関連装置を提供する。
【０００８】
本発明の実施形態の第1の態様は画像予測方法を提供し、本画像予測方法は、
現在の画像ブロックにおけるW個の制御点の動きベクトルを決定するステップと、
動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得するステップであって、W個の制御点の決定された動きベクトルの精度は画素精度の1／nであり、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nであり、P個の画素単位は現在の画像ブロックの画素単位の一部または全部であり、P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられ、W、n、およびNは1より大きい整数であり、Nはnより大きく、Pは正の整数である、ステップと、
P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いて、P個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップであって、Qはnより大きい整数である、ステップと
を含む。
【０００９】
第1の態様に関連して、第1の態様の第1の可能な実施態様において、Nの値は事前設定された固定値であり、QはN以下である。
【００１０】
第1の態様または第1の態様の第1の可能な実施態様に関連して、第1の態様の第2の可能な実施態様において、W個の制御点の動きベクトルのうちの1つの水平成分もしくは垂直成分は、Nを用いて動きモデルにおいてN回増幅され、またはW個の制御点のうちの任意の2つの動きベクトル間の成分差は、Nを用いて動きモデルにおいてN回増幅される。
【００１１】
第1の態様、第1の態様の第1の可能な実施態様または第1の態様の第2の可能な実施態様に関連して、第1の態様の第3の可能な実施態様において、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップは、
P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得するステップと、各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタを決定するステップであって、補間フィルタによって用いられるフィルタ係数は位相に対応している、ステップと、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップと
を含む。
【００１２】
第1の態様の第3の可能な実施態様に関連して、第1の態様の第4の可能な実施態様において、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得するステップは、P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の位相を取得するステップ、を含む。
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）；
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の垂直位相を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【００１３】
第1の態様の第3の可能な実施態様または第1の態様の第4の可能な実施態様に関連して、第1の態様の第5の可能な実施態様において、位相は水平位相と垂直位相とを含み、各画素単位の位相に基づき、画素単位に対応しているQの位相を有する補間フィルタを決定するステップは、各画素単位の水平位相に基づき、対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定するステップと、各画素単位の垂直位相に基づき、対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定するステップと、を含み、水平補間フィルタによって用いられるフィルタ係数は水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は垂直位相に対応している。
【００１４】
第1の態様の第5の可能な実施態様に関連して、第1の態様の第6の可能な実施態様において、画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップは、
水平補間フィルタリングの結果を取得するために、画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、画素単位iの予測画素値を取得するために、画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて水平補間フィルタリングの結果に対して垂直補間フィルタリングを行うステップであって、画素単位iがP個の画素単位のうちの任意の1つである、ステップ、または
垂直補間フィルタリングの結果を取得するために、画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて画素単位jの、基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、画素単位jの予測画素値を取得するために、画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて垂直補間フィルタリングの結果に対して水平補間フィルタリングを行うステップであって、画素単位jがP個の画素単位のうちの任意の1つである、ステップ
を含む。
【００１５】
第1の態様、または第1の態様の第1から第6の可能な実施態様のいずれか1つに関連して、第1の態様の第7の可能な実施態様において、動きモデルは、並進運動モデル、アフィン運動モデル、回転運動モデル、放物運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、または双一次運動モデルである。
【００１６】
第1の態様、または第1の態様の第1から第7の可能な実施態様のいずれか1つに関連して、第1の態様の第8の可能な実施態様において、Wが2に等しい場合、動きモデルは以下のように表される。
【００１７】
【数１】
0006776276.tif 000002
【００１８】
式中、Lは、現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【００１９】
第1の態様、または第1の態様の第1から第7の可能な実施態様のいずれか1つに関連して、第1の態様の第9の可能な実施態様において、Wが3に等しい場合、動きモデルは以下のように表される。
【００２０】
【数２】
0006776276.tif 000003
【００２１】
式中、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、wは、現在の画像ブロックの幅を表し、hは、現在の画像ブロックの高さを表す。
【００２２】
第1の態様、または第1の態様の第1から第9の可能な実施態様のいずれか1つに関連して、第1の態様の第10の可能な実施態様において、W個の制御点の動きベクトルは、現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が画素精度の1／nである動きベクトルに基づいて予測される。
【００２３】
第1の態様、または第1の態様の第1から第10の可能な実施態様のいずれか1つに関連して、第1の態様の第11の可能な実施態様において、本画像予測方法は、映像符号化プロセスに適用され、または映像復号化プロセスに適用される。
【００２４】
本発明の実施形態の第2の態様は画像予測装置を提供し、本画像予測装置は、
現在の画像ブロックにおけるW個の制御点の動きベクトルを決定するように構成された、第1の決定部と、
動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得するように構成された計算部であって、W個の制御点の決定された動きベクトルの精度は画素精度の1／nであり、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nであり、P個の画素単位は現在の画像ブロックの画素単位の一部または全部であり、P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられ、W、n、およびNは1より大きい整数であり、Nはnより大きく、Pは正の整数である、計算部と、
P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うように構成された補間フィルタリング部であって、Qはnより大きい整数である、補間フィルタリング部と
を含む。
【００２５】
第2の態様に関連して、第2の態様の第1の可能な実施態様において、Nの値は事前設定された固定値であり、QはN以下である。
【００２６】
第2の態様または第2の態様の第1の可能な実施態様に関連して、第2の態様の第2の可能な実施態様において、W個の制御点の動きベクトルのうちの1つの水平成分もしくは垂直成分は、Nを用いて動きモデルにおいてN回増幅され、またはW個の制御点のうちの任意の2つの動きベクトル間の成分差は、Nを用いて動きモデルにおいてN回増幅される。
【００２７】
第2の態様、第2の態様の第1の可能な実施態様または第2の態様の第2の可能な実施態様に関連して、第2の態様の第3の可能な実施態様において、補間フィルタリング部は、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得し、各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタを決定し、補間フィルタによって用いられるフィルタ係数は位相に対応しており、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行う、ように特に構成されている。
【００２８】
第2の態様の第3の可能な実施態様に関連して、第2の態様の第4の可能な実施態様において、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得する局面で、補間フィルタリング部は、P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の位相を取得するように特に構成されており、
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）；
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の垂直位相を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【００２９】
第2の態様の第3の可能な実施態様または第2の態様の第4の可能な実施態様に関連して、第2の態様の第5の可能な実施態様において、位相は水平位相と垂直位相とを含み、各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタを決定する局面で、補間フィルタリング部は、各画素単位の水平位相に基づき、対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定し、各画素単位の垂直位相に基づき、対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定する、ように特に構成されており、水平補間フィルタによって用いられるフィルタ係数は水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は垂直位相に対応している。
【００３０】
第2の態様の第5の可能な実施態様に関連して、第2の態様の第6の可能な実施態様において、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行う局面で、補間フィルタリング部は、水平補間フィルタリングの結果を取得するために、画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、画素単位iの予測画素値を取得するために、画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて水平補間フィルタリングの結果に対して垂直補間フィルタリングを行い、画素単位iがP個の画素単位のうちの任意の1つである、ように特に構成されており、または補間フィルタリング部は、垂直補間フィルタリングの結果を取得するために、画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて画素単位jの、基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、画素単位jの予測画素値を取得するために、画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて垂直補間フィルタリングの結果に対して水平補間フィルタリングを行い、画素単位jがP個の画素単位のうちの任意の1つである、ように特に構成されている。
【００３１】
第2の態様、または第2の態様の第1から第6の可能な実施態様のいずれか1つに関連して、第2の態様の第7の可能な実施態様において、動きモデルは、並進運動モデル、アフィン運動モデル、回転運動モデル、ズーミング運動モデル、放物運動モデル、せん断運動モデル、射影運動モデル、または双一次運動モデルである。
【００３２】
第2の態様、または第2の態様の第1から第7の可能な実施態様のいずれか1つに関連して、第2の態様の第8の可能な実施態様において、Wが2に等しい場合、動きモデルは以下のように表される。
【００３３】
【数３】
0006776276.tif 000004
【００３４】
式中、Lは、現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【００３５】
第2の態様、または第2の態様の第1から第7の可能な実施態様のいずれか1つに関連して、第2の態様の第9の可能な実施態様において、Wが3に等しい場合、動きモデルは以下のように表される。
【００３６】
【数４】
0006776276.tif 000005
【００３７】
式中、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、wは、現在の画像ブロックの幅を表し、hは、現在の画像ブロックの高さを表す。
【００３８】
第2の態様、または第2の態様の第1から第9の可能な実施態様のいずれか1つに関連して、第2の態様の第10の可能な実施態様において、W個の制御点の動きベクトルは、現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が画素精度の1／nである動きベクトルに基づいて予測される。
【００３９】
第2の態様、または第2の態様の第1から第10の可能な実施態様のいずれか1つに関連して、第2の態様の第11の可能な実施態様において、本画像予測装置は映像符号化装置に適用され、または本画像予測装置は映像復号化装置に適用される。
【００４０】
本発明の一実施形態は、プロセッサとメモリとを含む画像予測装置をさらに提供する。本画像予測装置は、例えば、ネットワークインターフェースをさらに含んでいてよい。メモリは、命令を記憶するように構成され、プロセッサは、命令を実行するように構成され、ネットワークインターフェースは、プロセッサの制御下で、別の機器と通信するように構成される。
【００４１】
例えば、プロセッサは、現在の画像ブロックにおけるW個の制御点の動きベクトルを決定し、動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得する、ように構成され、W個の制御点の決定された動きベクトルの精度は画素精度の1／nであり、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nであり、P個の画素単位は現在の画像ブロックの画素単位の一部または全部であり、P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられ、W、n、およびNは1より大きい整数であり、Nはnより大きく、Pは正の整数であり、またプロセッサは、P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うように構成され、Qはnより大きい整数である。
【００４２】
加えて、本発明の一実施形態はコンピュータ可読記憶媒体をさらに提供する。本コンピュータ可読記憶媒体は画像予測のためのプログラムコードを記憶している。プログラムコードは、画像予測方法を実行するための命令を含む。
【００４３】
本発明の実施形態で提供される画像予測方法では、現在の画像ブロックの各画素単位の、その精度が画素精度の1／Nである動きベクトルが、動きモデルと、W個の制御点の、その精度が画素精度の1／nである動きベクトルとを用いて計算によって取得され、Nはnより大きいことがわかる。言い換えると、計算によって取得される、現在の画像ブロックの各画素単位の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。高精度の動きベクトルがまず取得される。したがって、現在の画像ブロックの各画素単位の高精度の動きベクトルを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位が決定され、Qの位相を有する（Qはnより大きい）補間フィルタを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われて、現在の画像ブロックの各画素単位の予測画素値が取得される。前述の方法は、予測によって、現在の画像ブロックの高精度の予測画素値を取得するのに必要な補間フィルタリングの回数を低減させるのに役立ち（例えば、低精度の補間フィルタリングを行うことによって低精度の予測画素値を取得するための中間プロセスが不要となる）、そのため、画像予測プロセスの間に補間フィルタリングに必要とされる中間キャッシュの量およびメモリ動作が低減し、画像予測プロセスの間の計算の複雑さが低減することがわかる。
【００４４】
本発明の実施形態における技術的解決策をより明確に説明するために、以下で、これらの実施形態を説明するのに必要な添付の図面について簡単に述べる。明らかに、以下で説明する添付の図面は本発明のいくつかの実施形態を示しているにすぎず、当業者はこれら添付の図面から難なく他の図面をさらに得ることができる。
【図面の簡単な説明】
【００４５】
【図１−ａ】本発明の一実施形態による画像ブロックのいくつかの種類の分割の概略図である。
【図１−ｂ】本発明の一実施形態による画像ブロックのいくつかの種類の分割の概略図である。
【図２−ａ】本発明の一実施形態による画像予測方法の概略流れ図である。
【図２−ｂ】本発明の一実施形態による制御点の動きベクトルの予測の概略図である。
【図３−ａ】本発明の一実施形態による別の画像予測方法の概略流れ図である。
【図３−ｂ】本発明の一実施形態による整数画素位置および副画素位置の概略図である。
【図４】本発明の一実施形態による別の画像予測方法の概略流れ図である。
【図５】本発明の一実施形態による画像予測装置の概略図である。
【図６】本発明の一実施形態による別の画像予測装置の概略図である。
【発明を実施するための形態】
【００４６】
本発明の実施形態は、画像予測プロセスの間に補間フィルタリングに必要とされる中間キャッシュの量およびメモリ動作を低減させ、画像予測プロセスの間の計算の複雑さを低減させるための、画像予測方法および関連装置を提供する。
【００４７】
本発明の明細書、特許請求の範囲および添付の図面において、「第1」、「第2」、「第3」、などの用語は、異なる対象を区別するためのものであり、特定の順序を示すものではない。加えて、「including」、「comprising」、およびそれらの任意の他の変形は、非排他的包含を対象として含むものであることが意図されている。例えば、一連のステップもしくはユニットを含むプロセス、方法、システム、製品、もしくは装置は、記載されたステップもしくはユニットだけに限定されず、任意選択で、記載されていないステップもしくはユニットをさらに含み、または任意選択で、プロセス、方法、製品、もしくは機器の別の固有のステップもしくはユニットをさらに含む。
【００４８】
以下ではまず、本発明の実施形態に関連しうるいくつかの概念について簡単に説明する。
【００４９】
ほとんどの符号化フレームワークにおいて、ビデオシーケンスは一連の画像を含み、画像はスライス（英語：slice）にさらに分割され、sliceはブロック（英語：block）にさらに分割される。映像符号化はブロックの単位に基づくものであり、符号化処理はpictureの左上隅の位置から開始され、次いで、左から右へ、上から下へとラインごとに行われる。いくつかの新しい映像符号化規格では、blockの概念がさらに拡張されている。H．264規格には、マクロブロック（英語：macroblock、略称：MB）が記載されており、MBは、予測符号化に用いられる複数の予測パーティション（英語：partition）にさらに分割される。HEVC規格では、符号化単位（英語：coding unit、略称：CU）、予測単位（英語：prediction unit、略称：PU）、変換単位（英語：transform unit、略称：TU）などの基本概念が用いられる。複数の種類の単位は機能分割によって得られ、新しい木構造を用いて記述される。例えば、CUは4分木に従ってより小さいCUに分割され、より小さいCUは4分木構造を形成するように引き続きさらに分割される。PUの木構造とTUの木構造とはCUの木構造に類似したものである。CU、PU、およびTUはすべて、本質的にblockの概念に属する。マクロブロックMBまたは符号化ブロックと同様に、CUは、符号化画像を分割し、符号化するための基本単位である。PUは、予測符号化のための基本単位であり、予測パーティションに対応させることができる。分割方式に従い、CUは複数のPUにさらに分割される。TUは、予測残差を変換するための基本単位であり、変換ブロックに対応させることができる。高効率映像符号化（英語：high efficiency video coding、略称：HEVC）規格では、CU、PU、およびTUは、符号化ツリーブロック（英語：coding tree block、略称：CTB）などと総称される。
【００５０】
HEVC規格では、符号化単位は、64×64、32×32、16×16、および8×8の4つのサイズレベルを含む。各レベルの符号化単位は、フレーム内予測およびフレーム間予測に従って異なるサイズの予測単位に分割される。例えば、図1−aと図1−bとに示すように、図1−aには、フレーム内予測に対応する予測単位分割方式が示されており、図1−bには、フレーム間予測に対応する予測単位分割方式が示されている。
【００５１】
映像符号化技術の開発および進化のプロセスにおいて、映像符号化の専門家らは、隣接する符号化／復号化ブロック間の時間的空間的相関を利用して符号化効率を向上させる様々な方法を考案している。H．264／高度映像符号化（英語：advanced video coding、略称：AVC）規格では、スキップモード（skip mode）およびダイレクトモード（direct mode）が符号化効率を向上させる有効な手段になる。低ビット速度の場合には、2つの符号化モードを用いるブロックの数が符号化シーケンス全体におけるブロックの半数を上回る。スキップモードを用いる場合には、スキップ・モード・タグがビットストリームにおいて転送されるという前提で周囲の動きベクトルを用いた導出によって現在の画像ブロックの動きベクトルを取得することができ、動きベクトルに従って参照ブロックの値が現在の画像ブロックの復元値として用いられる。代わりに、ダイレクトモードを用いる場合には、符号器が、周囲の動きベクトルを用いて、導出によって、現在の画像ブロックの動きベクトルを取得し、動きベクトルに従って参照ブロックの値を現在の画像ブロックの予測値として直接用い、予測値を用いて符号器側で現在の画像ブロックに対して予測符号化を行うことができる。目下、最新の高効率映像符号化（英語：high efficiency video coding、略称：HEVC）規格では、映像符号化性能をさらに向上させるためにいくつかの新しい符号化手段が用いられている。併合符号化モードおよび高度動きベクトル予測（英語：advanced motion vector prediction、略称：AMVP）モードが2つの重要なフレーム間予測手段である。併合符号化モードでは、現在の符号化ブロックを取り囲む符号化済みブロックの動き情報（動きベクトル（英語：motion vector、略称：MV）、予測方向、参照フレームインデックスなどを含む）が候補動き情報集合を形成するのに用いられる。最高の符号化効率を有する候補動き情報が、比較によって、現在の符号化ブロックの動き情報として選択される。現在の符号化ブロックの、参照フレームで見つかった予測値を用いて現在の符号化ブロックに対して予測符号化が行われる。加えて、その中から動き情報が選択される特定の周囲の符号化済みブロックに索引付けするインデックス値もビットストリームに書き込むことができる。高度動きベクトル予測を用いる場合には、周囲の符号化済みブロックの動きベクトルが現在の符号化ブロックの動きベクトルの予測値として用いられ、現在の符号化ブロックの符号化効率を予測するために最高の符号化効率を有する動きベクトルが選択され、特定の周囲の動きベクトルの選択を指示するインデックス値がビットストリームに書き込まれる。
【００５２】
以下で引き続き本発明の実施形態の技術的解決策について説明する。
【００５３】
以下ではまず、本発明の実施形態で提供される画像予測方法について説明する。本発明の実施形態で提供される画像予測方法は、映像符号化装置または映像復号化装置によって実行される。映像符号化装置または映像復号化装置は、映像を出力または記憶する必要のある任意の装置、例えば、ノートブックコンピュータ、タブレットコンピュータ、パーソナルコンピュータ、携帯電話、ビデオサーバ、または別の機器であってよい。
【００５４】
本発明で提供される画像予測方法の一実施形態において、画像予測方法は、現在の画像ブロックにおけるW個の制御点の動きベクトルを決定するステップと、動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得するステップであって、W個の制御点の決定された動きベクトルの精度は画素精度の1／nであり、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nであり、P個の画素単位は現在の画像ブロックの画素単位の一部または全部であり、P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられ、W、n、およびNは1より大きい整数であり、Nはnより大きく、Pは正の整数である、ステップと、P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップであって、Qはnより大きい整数である、ステップとを含む。
【００５５】
図2−aを参照すると、図2−aは、本発明の一実施形態による画像予測方法の概略流れ図である。図2−aに示す例において、本発明の本実施形態で提供される画像予測方法は以下のステップを含む。
【００５６】
201．現在の画像ブロックにおけるW個の制御点の動きベクトルを決定する。
【００５７】
202．動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得する。
【００５８】
P個の画素単位は現在の画像ブロックの画素単位の一部または全部である。
【００５９】
P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられる。したがって、P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いることができる。
【００６０】
W個の制御点の決定された動きベクトルの精度は画素精度の1／nである。
【００６１】
計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nである。
【００６２】
W、n、およびNは1より大きい整数である。
【００６３】
Nはnより大きい。Pは正の整数である。
【００６４】
Nはnより大きいため、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。すなわち、現在の画像ブロックのP個の画素単位のより高精度の動きベクトルが取得される。
【００６５】
本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルは、現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が画素精度の1／nである動きベクトルに基づいて予測される。
【００６６】
図2−bに示す例において、W個の制御点には、制御点LT、制御点RT、および制御点LBが含まれている。制御点LTの動きベクトルは、その精度が、画像ブロックA、画像ブロックB、および画像ブロックCの画素精度の1／nである動きベクトルに基づいて予測することができる。制御点RTの動きベクトルは、その精度が、画像ブロックDおよび画像ブロックEの画素精度の1／nである動きベクトルに基づいて予測することができる。制御点LBの動きベクトルは、その精度が、画像ブロックFおよび画像ブロックGの画素精度の1／nである動きベクトルに基づいて予測することができる。
【００６７】
本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルが予測値に基づくものである場合、予測値の精度も画素精度の1／nであり、制御点の、その精度が画素精度の1／nである動きベクトルと対応する予測値との差をビットストリームに書き込むことができる。
【００６８】
本発明のいくつかの可能な実施態様では、動きモデルは、例えば、並進運動モデル、アフィン運動モデル、回転運動モデル、放物運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、または双一次運動モデルとすることができる。
【００６９】
203．P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における基準画素単位の画素に対して補間フィルタリングを行う。
【００７０】
Qはnより大きい整数である。
【００７１】
本発明のいくつかの可能な実施態様では、Nの値は事前設定された固定値とすることができ、QはN以下とすることができる。Nの値を事前設定された固定値とすることができる場合、これは、動きモデルとW個の制御点の動きベクトルとを用いて計算により取得される、現在の画像ブロックのP個の画素単位の動きベクトルの精度が、現在の画像ブロックのサイズに不必要に関連していることを示している。言い換えると、例えば、本実施形態の解決策によれば、事前設定された固定精度を有する予測画素値を、低精度の補間フィルタリングを行うことによる低精度の予測画素値を取得するための中間プロセスなしで取得することができる。
【００７２】
例えば、Wは、2、3、4、5、6、8、または別の値とすることができる。
【００７３】
例えば、Pは、1、2、3、4、5、6、8、10、15、16、21、32、64または別の値とすることができる。
【００７４】
例えば、Qは、128、9、18、24、256、8、10、15、16、21、32、64、または別の値とすることができる。
【００７５】
例えば、Nは、128、9、18、24、256、8、10、15、16、21、32、64、または別の値とすることができる。
【００７６】
例えば、nは、8、2、4、または別の値とすることができる
【００７７】
本発明のいくつかの可能な実施態様では、Nは2の整数べきとすることもでき、あるいは当然ながら、Nは別の正の整数とすることもできる。
【００７８】
本発明の実施形態における画素単位は、1つまたは複数の画素を含んでいてよい。例えば、画素単位は、2×2画素ブロック、2×1画素ブロック、2×1画素ブロック、4×4画素ブロック、または4×2画素ブロックとすることができる。
【００７９】
本発明の実施形態における制御点は、1つまたは複数の画素を含んでいてよい。例えば、制御点は、2×2画素ブロック、2×1画素ブロック、2×1画素ブロック、4×4画素ブロック、または4×2画素ブロックとすることができる。
【００８０】
以上からわかるように、本実施形態で提供される画像予測方法では、現在の画像ブロックの各画素単位の、その精度が画素精度の1／Nである動きベクトルが、動きモデルと、W個の制御点の、その精度が画素精度の1／nである動きベクトルとを用いて計算によって取得され、Nはnより大きい。言い換えると、計算によって取得される、現在の画像ブロックの各画素単位の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。高精度の動きベクトルがまず取得される。したがって、現在の画像ブロックの各画素単位の高精度の動きベクトルを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位が決定され、Qの位相を有する（Qはnより大きい）補間フィルタを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われて、現在の画像ブロックの各画素単位の予測画素値が取得される。前述の方法は、予測によって、現在の画像ブロックの高精度の予測画素値を取得するのに必要な補間フィルタリングの数量を低減させるのに役立ち（例えば、低精度の補間フィルタリングを行うことによって低精度の予測画素値を取得するための中間プロセスが不要となる）、そのため、画像予測プロセスの間に補間フィルタリングに必要とされる中間キャッシュの量およびメモリ動作が低減し、画像予測プロセスの間の計算の複雑さが低減することがわかる。
【００８１】
本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルのうちの1つの水平成分もしくは垂直成分は、Nを用いて動きモデルにおいてN回増幅され、またはW個の制御点のうちの任意の2つの動きベクトル間の成分差は、Nを用いて動きモデルにおいてN回増幅される。
【００８２】
例えば、本発明のいくつかの可能な実施態様では、Wが2に等しい場合、動きモデルは以下のように表すことができる。
【００８３】
【数５】
0006776276.tif 000006
【００８４】
式中、Lは、現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【００８５】
別の例として、本発明のいくつかの可能な実施態様では、Wが3に等しい場合、動きモデルは以下のように表すことができる。
【００８６】
【数６】
0006776276.tif 000007
【００８７】
式中、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、wは、現在の画像ブロックの幅を表し、hは、現在の画像ブロックの高さを表す。
【００８８】
以上の例は、アフィン運動モデルを用いて説明される。並進運動モデル、回転運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、放物運動モデル、双一次運動モデルなどが用いられる場合、前述の例を参照することができる。ここでは詳細を繰り返さない。
【００８９】
例えば、動きモデルの一般的な表現形態は以下とすることができる。
（νNx，νNy）＝f（｛（νix，νiy）｜i＝0，1．．．，M｝，N，（x，y））
式中、制御点の動きベクトル（νix，νiy）の精度は画素精度の1／nであり、効果とビットオーバーヘッドとのバランスをとるために、nの値を4に設定することができ、Nは、フィルタの事前設定位相を表すことができ、（x，y）は、画像ブロックにおける任意の画素単位の座標値を表し、
νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【００９０】
任意選択で、本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位を決定するステップは、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得するステップと、P個の画素単位の各々の動きベクトルを用いて、P個の画素単位の各々の整数画素位置に対応する基準画素単位を求めて基準画像をサーチするステップと、を含み、P個の画素単位の各々の整数画素位置に対応している、基準画像で見つかる基準画素単位は、P個の画素単位の各々の、基準画像における基準画素単位である。
【００９１】
具体的には、例えば、画素単位iの整数画素位置が、P個の画素単位の画素単位iの動きベクトルを用いて計算によって取得され、基準画像が、画素単位iの動きベクトルを用いて、画素単位iの整数画素位置に対応する基準画素単位を求めてサーチされ、画素単位iの整数画素位置に対応している、基準画像で見つかる基準画素単位は、画素単位iの、基準画像における基準画素単位である。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、P個の画素単位の各々の、基準画像における対応する基準画素単位は、画素単位iの、基準画像における基準画素単位を決定する方法と同様の方法で決定することができる。
【００９２】
本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得するステップは、
P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の整数画素位置を取得するステップ、を含む。
xInt＝［νNx／N］、またはxInt＝νNx≧M；
yInt＝［νNy／N］、またはyInt＝νNy≧M；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、（xInt，yInt）は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の整数画素位置座標を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【００９３】
本発明のいくつかの可能な実施態様では、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップは、
P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得するステップと、各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタを決定するステップであって、補間フィルタによって用いられるフィルタ係数は位相に対応している、ステップと、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップと
を含む。
【００９４】
具体的には、例えば、画素単位iの位相が、P個の画素単位の画素単位iの動きベクトルを用いて計算によって取得され、画素単位iに対応しているQの位相を有する補間フィルタが、画素単位iの位相に基づいて決定され、補間フィルタによって用いられるフィルタ係数は位相に対応しており、画素単位iに対応しているQの位相を有する決定された補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われる。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、補間フィルタリングは、画素単位iに対して補間フィルタリングを行う方法と同様の方法に従ってP個の画素単位の各々に対して行うことができる。
【００９５】
本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得するステップは、P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の位相を取得するステップ、を含む。
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）.
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）.
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の垂直位相を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【００９６】
任意選択で、本発明のいくつかの可能な実施態様では、位相は水平位相と垂直位相とを含み、各画素単位の位相に基づき、画素単位に対応しているQの位相を有する補間フィルタを決定するステップは、各画素単位の水平位相に基づき、対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定するステップと、各画素単位の垂直位相に基づき、対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定するステップと、を含み、水平補間フィルタによって用いられるフィルタ係数は水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は垂直位相に対応している。
【００９７】
具体的には、例えば、画素単位iに対応しているQの位相を有する水平補間フィルタが、画素単位iの水平位相に基づいて決定され、画素単位iに対応しているQの位相を有する垂直補間フィルタが、画素単位iの垂直位相に基づいて決定され、水平補間フィルタによって用いられるフィルタ係数は画素単位iの水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は画素単位iの垂直位相に対応している。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、P個の画素単位の各々に対応しているQの位相を有する補間フィルタは、画素単位iに対応しているQの位相を有する補間フィルタを決定する方法と同様の方法に従って決定することができる。
【００９８】
任意選択で、本発明のいくつかの可能な実施態様では、画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップは、
水平補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、画素単位iの予測画素値を取得するために、画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて水平補間フィルタリングの結果に対して垂直補間フィルタリングを行うステップ、または
垂直補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて画素単位jの、基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、画素単位jの予測画素値を取得するために、画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて垂直補間フィルタリングの結果に対して水平補間フィルタリングを行うステップ
を含む。
【００９９】
加えて、画素単位がただ1つの位相のみを有する（すなわち、水平位相または垂直位相のみを有する）場合には、画素単位の予測画素値を取得するために、画素単位の基準画素単位に対して補間フィルタリングを1回だけ行いさえすればよい。
【０１００】
任意選択で、本発明のいくつかの可能な実施態様では、現在の画像ブロックにおけるW個の制御点の動きベクトルを決定するステップは、
現在の画像ブロックにおけるW個の制御点を決定し、W個の制御点の各々に対応する候補動き情報単位集合を決定するステップであって、各制御点に対応する候補動き情報単位集合は少なくとも1つの候補動き情報単位を含む、ステップと、
W個の動き情報単位を含む組み合わせ動き情報単位集合eを決定するステップであって、組み合わせ動き情報単位集合e内の各動き情報単位は、W個の制御点の各々に対応する候補動き情報単位集合内の少なくともいくつかの動き情報単位の中から選択され、組み合わせ動き情報単位集合e内の各組み合わせ動き情報単位は動きベクトルを含む、ステップと、
W個の制御点の動きベクトルを取得するために組み合わせ動き情報単位集合e内のW個の動きベクトルに対して予測もしくは動き推定を行い、または組み合わせ動き情報単位集合eに含まれるW個の動きベクトルをW個の制御点の動きベクトルとして使用するステップと
を含む。
【０１０１】
本発明のいくつかの可能な実施態様では、候補動き情報単位集合内の各動きベクトルの精度は画素精度の1／nとすることができる。
【０１０２】
本画像予測方法は映像符号化プロセスに適用することができ、または本画像予測方法は映像復号化プロセスに適用することができる。
【０１０３】
本発明の実施形態の技術的解決策をよりよく理解するために、以下では、例を用いて符号器側と復号器側の視点から説明を行う。
【０１０４】
以下ではまず、符号器側の視点からの解決策について説明する。
【０１０５】
図3−aを参照すると、図3−aは、本発明の別の実施形態による別の画像予測方法の概略流れ図である。図3−aに示す例において、本発明の別の実施形態で提供される別の画像予測方法は以下のステップを含む。
【０１０６】
301．映像符号化装置が、現在の画像ブロックにおけるW個の制御点を決定する。
【０１０７】
302．映像符号化装置はW個の制御点の動きベクトルを決定する。
【０１０８】
映像符号化装置が、W個の制御点の動きベクトルを決定するステップは、W個の制御点の各々に対応する候補動き情報単位集合を決定するステップであって、各制御点集合に対応する候補動き情報単位は少なくとも1つの候補動き情報単位を含む、ステップと、W個の動き情報単位を含む組み合わせ動き情報単位集合eを決定するステップであって、組み合わせ動き情報単位集合e内の各動き情報単位は、W個の制御点の各々に対応する候補動き情報単位集合内の少なくともいくつかの動き情報単位の中から選択され、組み合わせ動き情報単位集合e内の各組み合わせ動き情報単位は動きベクトルを含む、ステップと、W個の制御点の動きベクトルを取得するために組み合わせ動き情報単位集合e内のW個の動きベクトルに対して予測もしくは動き推定を行い、または組み合わせ動き情報単位集合eに含まれるW個の動きベクトルをW個の制御点の動きベクトルとして使用するステップと、を含むことができる。
【０１０９】
本発明のいくつかの可能な実施態様では、候補動き情報単位集合内の各動きベクトルの精度は画素精度の1／nとすることができる。
【０１１０】
303．映像符号化装置は、動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得する。
【０１１１】
Pは正の整数であり、WおよびNは1より大きい整数である。
【０１１２】
P個の画素単位は現在の画像ブロックの画素単位の一部または全部である。
【０１１３】
P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられる。したがって、P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いることができる。
【０１１４】
W個の制御点の決定された動きベクトルの精度は画素精度の1／nである。
【０１１５】
計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nである。
【０１１６】
W、n、およびNは1より大きい整数である。
【０１１７】
Nはnより大きい。Pは正の整数である。
【０１１８】
Nはnより大きいため、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。すなわち、現在の画像ブロックのP個の画素単位のより高精度の動きベクトルが取得される。
【０１１９】
本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルは、現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が画素精度の1／nである動きベクトルに基づいて予測される。
【０１２０】
本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルが予測値に基づくものである場合、予測値の精度も画素精度の1／nであり、制御点の、その精度が画素精度の1／nである動きベクトルと対応する予測値との差をビットストリームに書き込むことができる。これに対応して、W個の制御点の、その精度が画素精度の1／nである動きベクトルは、W個の動きベクトルと予測動きベクトルの間の予測差と、現在の画像ブロックを取り囲む復号化画像ブロックの、その精度が画素精度の1／nである動きベクトルとを用いて、復号器側で、予測によって取得することができ、予測差はビットストリームから取得される。
【０１２１】
本発明のいくつかの可能な実施態様では、動きモデルは、例えば、並進運動モデル、アフィン運動モデル、回転運動モデル、放物運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、または双一次運動モデルとすることができる。
【０１２２】
例えば、本発明のいくつかの可能な実施態様では、Wが2に等しい場合、動きモデルは以下のように表すことができる。
【０１２３】
【数７】
0006776276.tif 000008
【０１２４】
式中、Lは、現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０１２５】
別の例として、本発明のいくつかの可能な実施態様では、Wが3に等しい場合、動きモデルは以下のように表すことができる。
【０１２６】
【数８】
0006776276.tif 000009
【０１２７】
式中、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、wは、現在の画像ブロックの幅を表し、hは、現在の画像ブロックの高さを表す。
【０１２８】
以上の例は、アフィン運動モデルを用いて説明される。並進運動モデル、回転運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、放物運動モデル、双一次運動モデルなどが用いられる場合、前述の例を参照することができる。ここでは詳細を繰り返さない。
【０１２９】
304．映像符号化装置は、P個の画素単位の各々の動きベクトルを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位を決定する。
【０１３０】
任意選択で、本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位を決定するステップは、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得するステップと、P個の画素単位の各々の動きベクトルを用いて、P個の画素単位の各々の整数画素位置に対応する基準画素単位を求めて基準画像をサーチするステップと、を含み、P個の画素単位の各々の整数画素位置に対応している、基準画像で見つかる基準画素単位は、P個の画素単位の各々の、基準画像における基準画素単位である。
【０１３１】
具体的には、例えば、画素単位iの整数画素位置が、P個の画素単位の画素単位iの動きベクトルを用いて計算によって取得され、基準画像が、画素単位iの動きベクトルを用いて、画素単位iの整数画素位置に対応する基準画素単位を求めてサーチされ、画素単位iの整数画素位置に対応している、基準画像で見つかる基準画素単位は、画素単位iの、基準画像における基準画素単位である。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、P個の画素単位の各々の、基準画像における対応する基準画素単位は、画素単位iの、基準画像における基準画素単位を決定する方法と同様の方法で決定することができる。
【０１３２】
本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得するステップは、
P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の整数画素位置を取得するステップ、を含む。
xInt＝［νNx／N］、またはxInt＝νNx≧M.
yInt＝［νNy／N］、またはyInt＝νNy≧M.
式中、Mは、Nが2の整数べきである場合log2Nに等しく、（xInt，yInt）は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の整数画素位置座標を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０１３３】
例えば、図3−bを参照すると、図3−bの四角は、現在の位置に隣接した整数画素位置のところの画素を表しており、三角は副画素を表している。
【０１３４】
305．映像符号化装置は、P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行う。
【０１３５】
Qはnより大きい整数である。
【０１３６】
本発明のいくつかの可能な実施態様では、Nの値は事前設定された固定値とすることができ、QはN以上とすることができる。Nの値を事前設定された固定値とすることができる場合、これは、動きモデルとW個の制御点の動きベクトルとを用いて計算により取得される、現在の画像ブロックのP個の画素単位の動きベクトルの精度が、現在の画像ブロックのサイズに不必要に関連していることを示している。言い換えると、例えば、本実施形態の解決策によれば、事前設定された固定精度を有する予測画素値を、低精度の補間フィルタリングを行うことによる低精度の予測画素値を取得するための中間プロセスなしで取得することができる。
【０１３７】
例えば、Wは、2、3、4、5、6、8、または別の値とすることができる。
【０１３８】
例えば、Pは、1、2、3、4、5、6、8、10、15、16、21、32、64または別の値とすることができる。
【０１３９】
例えば、Qは、128、9、18、24、256、8、10、15、16、21、32、64、または別の値とすることができる。
【０１４０】
例えば、Nは、128、9、18、24、256、8、10、15、16、21、32、64、または別の値とすることができる。
【０１４１】
例えば、nは、8、2、4、または別の値とすることができる
【０１４２】
本発明のいくつかの可能な実施態様では、Nは2の整数べきとすることもでき、あるいは当然ながら、Nは別の正の整数とすることもできる。
【０１４３】
本発明のいくつかの可能な実施態様では、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップは、
P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得するステップと、各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタを決定するステップであって、補間フィルタによって用いられるフィルタ係数は位相に対応している、ステップと、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップと
を含む。
【０１４４】
具体的には、例えば、画素単位iの位相が、P個の画素単位の画素単位iの動きベクトルを用いて計算によって取得され、画素単位iに対応しているQの位相を有する補間フィルタが、画素単位iの位相に基づいて決定され、補間フィルタによって用いられるフィルタ係数は位相に対応しており、画素単位iに対応しているQの位相を有する決定された補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われる。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、補間フィルタリングは、画素単位iに対して補間フィルタリングを行う方法と同様の方法に従ってP個の画素単位の各々に対して行うことができる。
【０１４５】
本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得するステップは、P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の位相を取得するステップ、を含む。
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）；
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の垂直位相を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０１４６】
任意選択で、本発明のいくつかの可能な実施態様では、位相は水平位相と垂直位相とを含み、各画素単位の位相に基づき、画素単位に対応しているQの位相を有する補間フィルタを決定するステップは、各画素単位の水平位相に基づき、対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定するステップと、各画素単位の垂直位相に基づき、対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定するステップと、を含み、水平補間フィルタによって用いられるフィルタ係数は水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は垂直位相に対応している。
【０１４７】
具体的には、例えば、画素単位iに対応しているQの位相を有する水平補間フィルタが、画素単位iの水平位相に基づいて決定され、画素単位iに対応しているQの位相を有する垂直補間フィルタが、画素単位iの垂直位相に基づいて決定され、水平補間フィルタによって用いられるフィルタ係数は画素単位iの水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は画素単位iの垂直位相に対応している。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、P個の画素単位の各々に対応しているQの位相を有する補間フィルタは、画素単位iに対応しているQの位相を有する補間フィルタを決定する方法と同様の方法に従って決定することができる。
【０１４８】
任意選択で、本発明のいくつかの可能な実施態様では、画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップは、
水平補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、画素単位iの予測画素値を取得するために、画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて水平補間フィルタリングの結果に対して垂直補間フィルタリングを行うステップ、または
垂直補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて画素単位jの、基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、画素単位jの予測画素値を取得するために、画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて垂直補間フィルタリングの結果に対して水平補間フィルタリングを行うステップ
を含む。
【０１４９】
加えて、画素単位がただ1つの位相のみを有する（すなわち、水平位相または垂直位相のみを有する）場合には、画素単位の予測画素値を取得するために、画素単位の基準画素単位に対して補間フィルタリングを1回だけ行いさえすればよい。
【０１５０】
306．映像符号化装置は、P個の画素単位の元の画素値と現在の画像ブロックのP個の画素単位の予測画素値とを用いて現在の画像ブロックの予測残差を取得することができ、映像符号化装置は、現在の画像ブロックの予測残差をビデオビットストリームに書き込むことができる。
【０１５１】
以上からわかるように、本実施形態の解決策では、映像符号化装置は、動きモデルと、W個の制御点の、その精度が画素精度の1／nである動きベクトルとを用いて、計算により、現在の画像ブロックの各画素単位の、その精度が画素精度の1／Nである動きベクトルを取得し、Nはnより大きい。言い換えると、計算によって取得される、現在の画像ブロックの各画素単位の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。高精度の動きベクトルがまず取得される。したがって、現在の画像ブロックの各画素単位の高精度の動きベクトルを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位が決定され、Qの位相を有する（Qはnより大きい）補間フィルタを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われて、現在の画像ブロックの各画素単位の予測画素値が取得される。前述の方法は、予測によって、現在の画像ブロックの高精度の予測画素値を取得するのに必要な補間フィルタリングの回数を低減させるのに役立ち（例えば、低精度の補間フィルタリングを行うことによって低精度の予測画素値を取得するための中間プロセスが不要となる）、そのため、画像予測プロセスの間に補間フィルタリングに必要とされる中間キャッシュおよびメモリ動作の量が低減し、画像予測プロセスの間の計算の複雑さが低減することがわかる。
【０１５２】
以下で、復号器側の視点からの解決策について説明する。
【０１５３】
図4を参照すると、図4は、本発明の別の実施形態による別の画像予測方法の概略流れ図である。図4に示す例において、本発明の別の実施形態で提供される別の画像予測方法は以下のステップを含む。
【０１５４】
401．映像復号化装置が、現在の画像ブロックにおけるW個の制御点を決定する。
【０１５５】
402．映像復号化装置はW個の制御点の動きベクトルを決定する。
【０１５６】
映像復号化装置が、W個の制御点の動きベクトルを決定するステップは、W個の制御点の各々に対応する候補動き情報単位集合を決定するステップであって、各制御点に対応する候補動き情報単位集合は少なくとも1つの候補動き情報単位を含む、ステップと、W個の動き情報単位を含む組み合わせ動き情報単位集合eを決定するステップであって、組み合わせ動き情報単位集合e内の各動き情報単位は、W個の制御点の各々に対応する候補動き情報単位集合内の少なくともいくつかの動き情報単位の中から選択され、組み合わせ動き情報単位集合e内の各組み合わせ動き情報単位は動きベクトルを含む、ステップと、W個の制御点の動きベクトルを取得するために組み合わせ動き情報単位集合e内のW個の動きベクトルに対して予測もしくは動き推定を行い、または組み合わせ動き情報単位集合eに含まれるW個の動きベクトルをW個の制御点の動きベクトルとして使用するステップと、を含むことができる。
【０１５７】
本発明のいくつかの可能な実施態様では、候補動き情報単位集合内の各動きベクトルの精度は画素精度の1／nとすることができる。
【０１５８】
403．映像復号化装置は、動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得する。
【０１５９】
Pは正の整数であり、WおよびNは1より大きい整数である。
【０１６０】
P個の画素単位は現在の画像ブロックの画素単位の一部または全部である。
【０１６１】
P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられる。したがって、P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いることができる。
【０１６２】
W個の制御点の決定された動きベクトルの精度は画素精度の1／nである。
【０１６３】
計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nである。
【０１６４】
W、n、およびNは1より大きい整数である。
【０１６５】
Nはnより大きい。Pは正の整数である。
【０１６６】
Nはnより大きいため、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。すなわち、現在の画像ブロックのP個の画素単位のより高精度の動きベクトルが取得される。
【０１６７】
本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルは、現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が画素精度の1／nである動きベクトルに基づいて予測され、nは正の整数であり、nはNより小さい。
【０１６８】
本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルが予測値に基づくものである場合、予測値の精度も画素精度の1／nであり、制御点の、その精度が画素精度の1／nである動きベクトルと対応する予測値との差をビットストリームに書き込むことができる。
【０１６９】
本発明のいくつかの可能な実施態様では、動きモデルは、例えば、並進運動モデル、アフィン運動モデル、回転運動モデル、放物運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、または双一次運動モデルとすることができる。
【０１７０】
例えば、本発明のいくつかの可能な実施態様では、Wが2に等しい場合、動きモデルは以下のように表すことができる。
【０１７１】
【数９】
0006776276.tif 000010
【０１７２】
式中、Lは、現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０１７３】
別の例として、本発明のいくつかの可能な実施態様では、Wが3に等しい場合、動きモデルは以下のように表すことができる。
【０１７４】
【数１０】
0006776276.tif 000011
【０１７５】
式中、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、wは、現在の画像ブロックの幅を表し、hは、現在の画像ブロックの高さを表す。
【０１７６】
以上の例は、アフィン運動モデルを用いて説明される。並進運動モデル、回転運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、放物運動モデル、双一次運動モデルなどが用いられる場合、前述の例を参照することができる。ここでは詳細を繰り返さない。
【０１７７】
404．映像復号化装置は、P個の画素単位の各々の動きベクトルを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位を決定する。
【０１７８】
任意選択で、本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位を決定するステップは、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得するステップと、P個の画素単位の各々の動きベクトルを用いて、P個の画素単位の各々の整数画素位置に対応する基準画素単位を求めて基準画像をサーチするステップと、を含み、P個の画素単位の各々の整数画素位置に対応している、基準画像で見つかる基準画素単位は、P個の画素単位の各々の、基準画像における基準画素単位である。
【０１７９】
具体的には、例えば、画素単位iの整数画素位置が、P個の画素単位の画素単位iの動きベクトルを用いて計算によって取得され、基準画像が、画素単位iの動きベクトルを用いて、画素単位iの整数画素位置に対応する基準画素単位を求めてサーチされ、画素単位iの整数画素位置に対応している、基準画像で見つかる基準画素単位は、画素単位iの、基準画像における基準画素単位である。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、P個の画素単位の各々の、基準画像における対応する基準画素単位は、画素単位iの、基準画像における基準画素単位を決定する方法と同様の方法で決定することができる。
【０１８０】
本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得するステップは、
P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の整数画素位置を取得するステップ、を含む。
xInt＝［νNx／N］、またはxInt＝νNx≧M；
yInt＝［νNy／N］、またはyInt＝νNy≧M；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、（xInt，yInt）は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の整数画素位置座標を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０１８１】
405．映像復号化装置は、P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における基準画素単位の画素に対して補間フィルタリングを行う。
【０１８２】
Qはnより大きい整数である。
【０１８３】
本発明のいくつかの可能な実施態様では、Nの値は事前設定された固定値とすることができ、QはN以上とすることができる。Nの値を事前設定された固定値とすることができる場合、これは、動きモデルとW個の制御点の動きベクトルとを用いて計算により取得された、現在の画像ブロックのP個の画素単位の動きベクトルの精度が、現在の画像ブロックのサイズに不必要に関連していることを示している。言い換えると、例えば、本実施形態の解決策によれば、事前設定された固定精度を有する予測画素値を、低精度の補間フィルタリングを行うことによる低精度の予測画素値を取得するための中間プロセスなしで取得することができる。
【０１８４】
例えば、Wは、2、3、4、5、6、8、または別の値とすることができる。
【０１８５】
例えば、Pは、1、2、3、4、5、6、8、10、15、16、21、32、64または別の値とすることができる。
【０１８６】
例えば、Qは、128、9、18、24、256、8、10、15、16、21、32、64、または別の値とすることができる。
【０１８７】
例えば、Nは、128、9、18、24、256、8、10、15、16、21、32、64、または別の値とすることができる。
【０１８８】
例えば、nは、8、2、4、または別の値とすることができる
【０１８９】
本発明のいくつかの可能な実施態様では、Nは2の整数べきとすることもでき、あるいは当然ながら、Nは別の正の整数とすることもできる。
【０１９０】
本発明のいくつかの可能な実施態様では、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップは、
P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得するステップと、各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタを決定するステップであって、補間フィルタによって用いられるフィルタ係数は位相に対応している、ステップと、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップと
を含む。
【０１９１】
具体的には、例えば、画素単位iの位相が、P個の画素単位の画素単位iの動きベクトルを用いて計算によって取得され、画素単位iに対応しているQの位相を有する補間フィルタが、画素単位iの位相に基づいて決定され、補間フィルタによって用いられるフィルタ係数は位相に対応しており、画素単位iに対応しているQの位相を有する決定された補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われる。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、補間フィルタリングは、画素単位iに対して補間フィルタリングを行う方法と同様の方法に従ってP個の画素単位の各々に対して行うことができる。
【０１９２】
本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得するステップは、P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の位相を取得するステップ、を含む。
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）.
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）.
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の垂直位相を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０１９３】
任意選択で、本発明のいくつかの可能な実施態様では、位相は水平位相と垂直位相とを含み、各画素単位の位相に基づき、画素単位に対応しているQの位相を有する補間フィルタを決定するステップは、各画素単位の水平位相に基づき、対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定するステップと、各画素単位の垂直位相に基づき、対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定するステップと、を含み、水平補間フィルタによって用いられるフィルタ係数は水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は垂直位相に対応している。
【０１９４】
具体的には、例えば、画素単位iに対応しているQの位相を有する水平補間フィルタが、画素単位iの水平位相に基づいて決定され、画素単位iに対応しているQの位相を有する垂直補間フィルタが、画素単位iの垂直位相に基づいて決定され、水平補間フィルタによって用いられるフィルタ係数は画素単位iの水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は画素単位iの垂直位相に対応している。画素単位iは、P個の画素単位のうちの任意の1つとすることができる。例えば、P個の画素単位の各々に対応しているQの位相を有する補間フィルタは、画素単位iに対応しているQの位相を有する補間フィルタを決定する方法と同様の方法に従って決定することができる。
【０１９５】
任意選択で、本発明のいくつかの可能な実施態様では、画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うステップは、
水平補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、画素単位iの予測画素値を取得するために、画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて水平補間フィルタリングの結果に対して垂直補間フィルタリングを行うステップ、または
垂直補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて画素単位jの、基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、画素単位jの予測画素値を取得するために、画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて垂直補間フィルタリングの結果に対して水平補間フィルタリングを行うステップ
を含む。
【０１９６】
加えて、画素単位がただ1つの位相のみを有する（すなわち、水平位相または垂直位相のみを有する）場合には、画素単位の予測画素値を取得するために、画素単位の基準画素単位に対して補間フィルタリングを1回だけ行いさえすればよい。
【０１９７】
406．映像復号化装置は、現在の画像ブロックの予測画素値および現在の画像ブロックの、ビデオビットストリームにおける予測残差を用いて現在の画像ブロックを復元する。
【０１９８】
以上からわかるように、本実施形態の解決策では、映像復号化装置は、動きモデルと、W個の制御点の、その精度が画素精度の1／nである動きベクトルとを用いて、計算により、現在の画像ブロックの各画素単位の、その精度が画素精度の1／Nである動きベクトルを取得し、Nはnより大きい。言い換えると、計算によって取得される、現在の画像ブロックの各画素単位の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。高精度の動きベクトルがまず取得される。したがって、現在の画像ブロックの各画素単位の高精度の動きベクトルを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位が決定され、Qの位相を有する（Qはnより大きい）補間フィルタを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われて、現在の画像ブロックの各画素単位の予測画素値が取得される。前述の方法は、予測によって、現在の画像ブロックの高精度の予測画素値を取得するのに必要な補間フィルタリングの回数を低減させるのに役立ち（例えば、低精度の補間フィルタリングを行うことによって低精度の予測画素値を取得するための中間プロセスが不要となる）、そのため、画像予測プロセスの間に補間フィルタリングに必要とされる中間キャッシュおよびメモリ動作の量が低減し、画像予測プロセスの間の計算の複雑さが低減することがわかる。
【０１９９】
以下では、例を用いて、前述の実施形態におけるW個の動き情報単位を含む組み合わせ動き情報単位集合eを決定するいくつかの可能な具体的実施態様について説明する。
【０２００】
W個の動き情報単位を含む組み合わせ動き情報単位集合eを決定するステップは、A個の候補組み合わせ動き情報単位集合の中から、W個の動き情報単位を含む組み合わせ動き情報単位集合eを決定するステップであって、A個の候補組み合わせ動き情報単位集合の各々に含まれる各動き情報単位は、W個の制御点の各々に対応する候補動き情報単位集合内の、制約条件を満たす少なくともいくつかの動き情報単位の中から選択され、Aは正の整数であり、A個の候補組み合わせ動き情報単位集合は相互に異なり、A個の候補組み合わせ動き情報単位集合の各々はW個の動き情報単位を含む、ステップ、を含む。
【０２０１】
任意選択で、本発明のいくつかの可能な実施態様では、A個の候補組み合わせ動き情報単位集合は、第1の条件、第2の条件、第3の条件、第4の条件、または第5の条件のうちの少なくとも1つを満たす。
【０２０２】
第1の条件は、現在の画像ブロックの、A個の候補組み合わせ動き情報単位集合のいずれか1つにおける動き情報単位によって示される動き方が非並進運動であること、を含む。
【０２０３】
第2の条件は、A個の候補組み合わせ動き情報単位集合のいずれか1つにおける2つの動き情報単位に対応する予測方向が同じであること、を含む。
【０２０４】
第3の条件は、A個の候補組み合わせ動き情報単位集合のいずれか1つにおける2つの動き情報単位に対応する参照フレームインデックスが同じであること、を含む。
【０２０５】
第4の条件は、A個の候補組み合わせ動き情報単位集合のいずれか1つにおける2つの動き情報単位の動きベクトルの水平成分間の差の絶対値が水平成分閾値以下であること、または制御点Zの動きベクトルと、A個の候補組み合わせ動き情報単位集合のいずれか1つにおける1つの動き情報単位の動きベクトルとの水平成分間の差の絶対値が水平成分閾値以下であり、現在の画像ブロックの制御点ZはW個の制御点のどの1つとも異なること、を含む。
【０２０６】
第5の条件は、A個の候補組み合わせ動き情報単位集合のいずれか1つにおける2つの動き情報単位の動きベクトルの垂直成分間の差の絶対値が垂直成分閾値以下であること、または制御点Zの動きベクトルと、A個の候補組み合わせ動き情報単位集合の1つにおける任意の動き情報単位の動きベクトルとの垂直成分間の差の絶対値が垂直成分閾値以下であり、現在の画像ブロックの制御点ZはW個の制御点のどの1つとも異なること、を含む。
【０２０７】
任意選択で、本発明のいくつかの可能な実施態様では、映像符号化／復号化装置がA個の候補組み合わせ動き情報単位集合の中から、W個の動き情報単位を含む組み合わせ動き情報単位集合eを決定するステップは、A個の候補組み合わせ動き情報単位集合の中から、歪みまたはレート歪みコストに基づいて、W個の動きベクトルを含む組み合わせ動き情報単位集合eを決定するステップ、を含む。
【０２０８】
任意選択で、組み合わせ動き情報単位集合eに対応するレート歪みコストは、A個の候補組み合わせ動き情報単位集合内の、組み合わせ動き情報単位集合e以外の任意の組み合わせ動き情報単位集合に対応するレート歪みコスト以下である。
【０２０９】
任意選択で、組み合わせ動き情報単位集合eに対応する歪みは、A個の候補組み合わせ動き情報単位集合内の、組み合わせ動き情報単位集合e以外の任意の組み合わせ動き情報単位集合に対応する歪み以下である。
【０２１０】
A個の候補組み合わせ動き情報単位集合の候補組み合わせ動き情報単位集合（例えば、A個の候補組み合わせ動き情報単位集合の組み合わせ動き情報単位集合e）に対応するレート歪みコストは、例えば、画像ブロック（例えば、現在の画像ブロック）の、候補組み合わせ動き情報単位集合（例えば、組み合わせ動き情報単位集合e）を用いて画像ブロックに対して行われる画素値予測によって取得される予測画素値に対応するレート歪みコストとすることができる。
【０２１１】
A個の候補組み合わせ動き情報単位集合の候補組み合わせ動き情報単位集合（例えば、A個の候補組み合わせ動き情報単位集合の組み合わせ動き情報単位集合e）に対応するレート歪みコストは、例えば、画像ブロック（例えば、現在の画像ブロック）の元の画素値と、画像ブロックの、候補組み合わせ動き情報単位集合（例えば、組み合わせ動き情報単位集合e）を用いて画像ブロックに対して行われる画素値予測によって取得される予測画素値との間の歪み（すなわち、画像ブロックの元の画素値と予測画素値との間の歪み）とすることができる。
【０２１２】
本発明のいくつかの可能な実施態様では、画像ブロック（例えば、現在の画像ブロック）の元の画素値と、画像ブロックの、候補組み合わせ動き情報単位集合（例えば、組み合わせ動き情報単位集合e）を用いて画像ブロックに対して行われる画素値予測によって取得される予測画素値との間の歪みは、具体的には例えば、差分二乗和（SSD）、差分絶対値の和（SAD）、差分和、または画像ブロック（例えば、現在の画像ブロック）の元の画素値と、画像ブロックの、候補組み合わせ動き情報単位集合（例えば、組み合わせ動き情報単位集合e）を用いて画像ブロックに対して行われる画素値予測によって取得される予測画素値との間の歪みを測定できる別の歪みパラメータ値とすることができる。
【０２１３】
以下では、例を用いて、現在の画像ブロックにおけるW個の制御点を決定するいくつかの可能な方法について説明する。
【０２１４】
任意選択で、本発明のいくつかの可能な実施態様では、W個の制御点は、現在の画像ブロックにおける左上制御点、右上制御点、左下制御点、および中心制御点a1のW個の制御点を含む。
【０２１５】
現在の画像ブロックの左上制御点は、現在の画像ブロックの左上頂点、または現在の画像ブロックの左上頂点を含む、現在の画像ブロック内の画素ブロックである。現在の画像ブロックの左下制御点は、現在の画像ブロックの左下頂点、または現在の画像ブロックの左下頂点を含む、現在の画像ブロック内の画素ブロックである。現在の画像ブロックの右上制御点は、現在の画像ブロックの右上頂点、または現在の画像ブロックの右上頂点を含む、現在の画像ブロック内の画素ブロックである。現在の画像ブロックの中心制御点a1は、現在の画像ブロックの中心画素、または現在の画像ブロックの中心画素を含む、現在の画像ブロック内の画素ブロックである。
【０２１６】
任意選択で、本発明のいくつかの可能な実施態様では、現在の画像ブロックの左上制御点に対応する候補動き情報単位集合は、x1個の画素単位の動き情報単位を含む。x1個の画素単位は、現在の画像ブロックにおいて左上制御点に空間的に隣接する少なくとも1つの画素単位（例えば、図2−bの画像ブロックA、B、およびC）、および／または現在の画像ブロックにおいて左上制御点に時間的に隣接する少なくとも1つの画素単位を含み、x1は正の整数である。
【０２１７】
例えば、x1個の画素単位は、以下のうちの少なくとも1つを含む：その位置が現在の画像ブロックにおける左上制御点の位置と同じである、現在の画像ブロックが属するビデオフレームに時間的に隣接したビデオフレーム内の画素単位、現在の画像ブロックに空間的に隣接した、現在の画像ブロックの左側にある画素単位、現在の画像ブロックに空間的に隣接した、現在の画像ブロックの左上にある画素単位、または現在の画像ブロックに空間的に隣接した、現在の画像ブロックの上側にある画素単位。
【０２１８】
任意選択で、本発明のいくつかの可能な実施態様では、現在の画像ブロックの右上制御点に対応する候補動き情報単位集合は、x2個の画素単位を含む。x2個の画素単位は、現在の画像ブロックにおいて右上制御点に空間的に隣接する少なくとも1つの画素単位（例えば、図2−bの画像ブロックDおよびE）、および／または現在の画像ブロックにおいて右上制御点に時間的に隣接する少なくとも1つの画素単位を含み、x2は正の整数である。
【０２１９】
例えば、x2個の画素単位は、以下のうちの少なくとも1つを含む：その位置が現在の画像ブロックにおける右上制御点の位置と同じである、現在の画像ブロックが属するビデオフレームに時間的に隣接したビデオフレーム内の画素単位、現在の画像ブロックに空間的に隣接した、現在の画像ブロックの右側にある画素単位、現在の画像ブロックに空間的に隣接した、現在の画像ブロックの右上にある画素単位、または現在の画像ブロックに空間的に隣接した、現在の画像ブロックの上側にある画素単位。
【０２２０】
任意選択で、本発明のいくつかの可能な実施態様では、
現在の画像ブロックの左下制御点に対応する候補動き情報単位集合は、x3個の画素単位の動き情報単位を含む。x3個の画素単位は、現在の画像ブロックにおいて左下制御点に空間的に隣接する少なくとも1つの画素単位、および／または現在の画像ブロックにおいて左下制御点に時間的に隣接する少なくとも1つの画素単位を含み、x3は正の整数である。
【０２２１】
例えば、x3個の画素単位は、以下のうちの少なくとも1つを含む：その位置が現在の画像ブロックにおける左下制御点の位置と同じである、現在の画像ブロックが属するビデオフレームに時間的に隣接したビデオフレーム内の画素単位、現在の画像ブロックに空間的に隣接した、現在の画像ブロックの左側にある画素単位、現在の画像ブロックに空間的に隣接した、現在の画像ブロックの左下にある画素単位、または現在の画像ブロックに空間的に隣接した、現在の画像ブロックの下側にある画素単位。
【０２２２】
任意選択で、本発明のいくつかの可能な実施態様では、現在の画像ブロックの中心制御点a1に対応する候補動き情報単位集合は、x5個の画素単位の動き情報単位を含む。x5画素単位のうちの1つが画素単位a2である。
【０２２３】
現在の画像ブロックが属するビデオフレーム内の中心制御点a1の位置は、現在の画像ブロックが属するビデオフレームに隣接したビデオフレーム内の画素単位a2の位置と同じであり、x5は正の整数である。
【０２２４】
以下の表に、画素単位の位相とフィルタ係数との間の対応関係を示す。
【０２２５】
表1には、256のゲイン倍率を有する64位相補間フィルタのフィルタ係数と画素単位の位相との間の対応関係を示す。
【０２２６】
表2には、64のゲイン倍率を有する64位相補間フィルタのフィルタ係数と画素単位の位相との間の対応関係を示す。
【０２２７】
【表１Ａ】
0006776276.tif 000012
【表１Ｂ】
0006776276.tif 000013
【表１Ｃ】
0006776276.tif 000014
【０２２８】
【表２Ａ】
0006776276.tif 000015
【表２Ｂ】
0006776276.tif 000016
【表２Ｃ】
0006776276.tif 000017
【０２２９】
例えば、画素単位の水平位相がx＝12であるとき、256のゲイン倍率を有する64位相補間フィルタを使用した場合、水平補間フィルタリングの結果Sは以下のように表すことができる。
S＝（（−2）×x0＋10×x1＋（−31）×x2＋239×x2＋52×x4＋（−17）×x5＋5×x6＋0×x7）＋offset）／256
【０２３０】
画素単位の予測画素値は、水平補間フィルタリング結果Sを用いて取得することができ、式中、offsetは任意の整数とすることができる。
【０２３１】
以下では、いくつかの試験データを用いて、本発明の実施形態の解決策の技術的効果を提示する。
【０２３２】
表3および表4に、従来の解決策と本発明の実施形態の解決策との間のいくつかの試験性能の対比を示す。表3には、従来の解決策の試験性能を示し、表4には本発明のいくつかの実施形態の解決策の試験性能を示す。
【０２３３】
【表３】
0006776276.tif 000018
【０２３４】
【表４】
0006776276.tif 000019
【０２３５】
前述の2つの表間の対比からわかるように、本発明の実施形態の技術的解決策では、先行技術と比べて、符号化性能および復号化性能が大きく向上する。
【０２３６】
以下では、前述の解決策を実施するように構成された関連装置をさらに示す。
【０２３７】
図5を参照すると、本発明の一実施形態は画像予測装置500を提供し、画像予測装置500は、第1の決定部510と、計算部520と、補間フィルタリング部540とを含む。
【０２３８】
第1の決定部510は、現在の画像ブロックにおけるW個の制御点の動きベクトルを決定するように構成されている。
【０２３９】
計算部520は、動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得するように構成されており、W個の制御点の決定された動きベクトルの精度は画素精度の1／nであり、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nであり、P個の画素単位は現在の画像ブロックの画素単位の一部または全部である。
【０２４０】
P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられる。W、n、およびNは1より大きい整数である。Nはnより大きい。Pは正の整数である。
【０２４１】
補間フィルタリング部540は、P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における基準画素単位の画素に対して補間フィルタリングを行うように構成されている。
【０２４２】
画像予測装置500は、P個の画素単位の各々の動きベクトルを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位を決定するように構成された、第2の決定部530をさらに含んでいてよい。
【０２４３】
任意選択で、本発明のいくつかの可能な実施態様では、Nの値は事前設定された固定値であり、QはN以下である。
【０２４４】
任意選択で、本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルのうちの1つの水平成分もしくは垂直成分は、Nを用いて動きモデルにおいてN回増幅され、またはW個の制御点のうちの任意の2つの動きベクトル間の成分差は、Nを用いて動きモデルにおいてN回増幅される。
【０２４５】
任意選択で、本発明のいくつかの可能な実施態様では、
第2の決定部530は、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得し、P個の画素単位の各々の動きベクトルを用いて、P個の画素単位の各々の整数画素位置に対応する基準画素単位を求めて基準画像をサーチする、ように特に構成されており、P個の画素単位の各々の整数画素位置に対応している、基準画像で見つかる基準画素単位は、P個の画素単位の各々の、基準画像における基準画素単位である。
【０２４６】
任意選択で、本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得する局面で、第2の決定部530は、
P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の整数画素位置を取得する、ように特に構成されている。
xInt＝［νNx／N］、またはxInt＝νNx≧M；
yInt＝［νNy／N］、またはyInt＝νNy≧M；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、（xInt，yInt）は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の整数画素位置座標を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０２４７】
任意選択で、本発明のいくつかの可能な実施態様では、
補間フィルタリング部は、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得し、各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタであって、位相に対応しているフィルタ係数を用いる補間フィルタを決定し、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行う、ように特に構成されている。
【０２４８】
任意選択で、本発明のいくつかの可能な実施態様では、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得する局面で、補間フィルタリング部は、P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の位相を取得するように特に構成されている。
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）；
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の垂直位相を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０２４９】
任意選択で、本発明のいくつかの可能な実施態様では、位相は水平位相と垂直位相とを含み、
各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタを決定する局面で、補間フィルタリング部は、各画素単位の水平位相に基づき、対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定し、各画素単位の垂直位相に基づき、対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定する、ように特に構成されており、水平補間フィルタによって用いられるフィルタ係数は水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は垂直位相に対応している。
【０２５０】
任意選択で、本発明のいくつかの可能な実施態様では、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行う局面で、補間フィルタリング部は、
水平補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、画素単位iの予測画素値を取得するために、画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて水平補間フィルタリングの結果に対して垂直補間フィルタリングを行い、または
垂直補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて画素単位jの、基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、画素単位jの予測画素値を取得するために、画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて垂直補間フィルタリングの結果に対して水平補間フィルタリングを行う、
ように特に構成されている。
【０２５１】
任意選択で、本発明のいくつかの可能な実施態様では、動きモデルは、並進運動モデル、アフィン運動モデル、回転運動モデル、ズーミング運動モデル、放物運動モデル、せん断運動モデル、射影運動モデル、または双一次運動モデルである。
【０２５２】
任意選択で、本発明のいくつかの可能な実施態様では、
Wが2に等しい場合、動きモデルは以下のように表される。
【０２５３】
【数１１】
0006776276.tif 000020
【０２５４】
式中、Lは、現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０２５５】
任意選択で、本発明のいくつかの可能な実施態様では、
Wが3に等しい場合、動きモデルは以下のように表される。
【０２５６】
【数１２】
0006776276.tif 000021
【０２５７】
式中、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、wは、現在の画像ブロックの幅を表し、hは、現在の画像ブロックの高さを表す。
【０２５８】
任意選択で、本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルは、現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が画素精度の1／nである動きベクトルに基づいて予測される。
【０２５９】
任意選択で、本発明のいくつかの可能な実施態様では、画像予測装置500は映像符号化装置に適用され、または画像予測装置500は映像復号化装置に適用される。
【０２６０】
本実施形態の画像予測装置500の機能モジュールの機能は、前述の方法実施形態の方法に従って具体的に実施されうることが理解されよう。画像予測装置500の具体的な実現プロセスについては、前述の方法実施形態における関連説明を参照されたい。ここでは詳細を繰り返さない。画像予測装置500は、映像を出力し、または再生する必要がある任意の装置、例えば、ノートブックコンピュータ、タブレットコンピュータ、パーソナルコンピュータ、携帯電話、または別の機器であってよい。
【０２６１】
本実施形態では、画像予測装置500は、現在の画像ブロックの各画素単位の、動きモデルと、W個の制御点の、その精度が画素精度の1／nである動きベクトルとを用いて、計算により、その精度が画素精度の1／Nである動きベクトルを取得し、Nはnより大きいことがわかる。言い換えると、計算によって取得される、現在の画像ブロックの各画素単位の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。高精度の動きベクトルがまず取得される。したがって、現在の画像ブロックの各画素単位の高精度の動きベクトルを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位が決定され、Qの位相を有する（Qはnより大きい）補間フィルタを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われて、現在の画像ブロックの各画素単位の予測画素値が取得される。前述の方法は、予測によって、現在の画像ブロックの高精度の予測画素値を取得するのに必要な補間フィルタリングの回数を低減させるのに役立ち（例えば、低精度の補間フィルタリングを行うことによって低精度の予測画素値を取得するための中間プロセスが不要となる）、そのため、画像予測プロセスの間に補間フィルタリングに必要とされる中間キャッシュおよびメモリ動作の量が低減し、画像予測プロセスの間の計算の複雑さが低減することがわかる。
【０２６２】
図6を参照すると、図6は、本発明の別の実施形態による画像予測装置600の構造ブロック図である。画像予測装置600は、少なくとも1つのプロセッサ601と、メモリ605と、少なくとも1つの通信バス602とを含む。通信バス602は、構成要素間の接続および通信を実現するように構成されている。
【０２６３】
画像予測装置600は、任意選択で、少なくとも1つのネットワークインターフェース604および／またはユーザインターフェース603を含んでいてもよいユーザインターフェース603には、ディスプレイ（例えば、ホログラフィックイメージング装置、陰極線管、プロジェクタ）、ポインティングデバイス（例えば、マウス、トラックボール、タッチパネル、タッチスクリーン）、カメラ、および／または収音装置などを含むことができる。
【０２６４】
メモリ605は、読取り専用メモリおよびランダム・アクセス・メモリを含み、プロセッサ601のための命令およびデータを提供することができる。メモリ605の一部は、不揮発性ランダム・アクセス・メモリをさらに含んでいてよい。
【０２６５】
いくつかの実施態様では、メモリ605は、実行可能モジュールまたはデータ構造、それらのサブセット、またはそれらの拡張セットを含み、メモリ605は、
様々なシステムプログラムを含み、様々な基本サービスを実施し、ハードウェアベースのタスクを処理するように構成された、オペレーティングシステム6051と、
様々なアプリケーションプログラムを含み、様々なアプリケーションサービスを実施するように構成された、アプリケーション・プログラム・モジュール6052と
を含む。
【０２６６】
本発明の本実施形態では、メモリ605に記憶されているプログラムまたは命令を呼び出すことによって、プロセッサ601は、現在の画像ブロックにおけるW個の制御点の動きベクトルを決定し、動きモデルとW個の制御点の動きベクトルとを用いて、計算により、現在の画像ブロックのP個の画素単位の動きベクトルを取得する、ように構成され、W個の制御点の決定された動きベクトルの精度は画素精度の1／nであり、計算によって取得される、P個の画素単位の各々の動きベクトルの精度は画素精度の1／Nであり、P個の画素単位は現在の画像ブロックの画素単位の一部または全部であり、P個の画素単位の各々の動きベクトルは、対応する画素単位の、基準画像における対応する基準画素単位を決定するのに用いられ、W、n、およびNは1より大きい整数であり、Nはnより大きく、Pは正の整数であり、またプロセッサは、P個の画素単位の各々の予測画素値を取得するために、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うように構成され、Qはnより大きい整数である。
【０２６７】
任意選択で、本発明のいくつかの可能な実施態様では、Nの値は事前設定された固定値であり、QはN以下である。
【０２６８】
任意選択で、本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルのうちの1つの水平成分もしくは垂直成分は、Nを用いて動きモデルにおいてN回増幅され、またはW個の制御点のうちの任意の2つの動きベクトル間の成分差は、Nを用いて動きモデルにおいてN回増幅される。
【０２６９】
任意選択で、本発明のいくつかの可能な実施態様では、プロセッサが、P個の画素単位の各々の動きベクトルを用いてP個の画素単位の各々の、基準画像における対応する基準画素単位を決定することは、
P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得することと、P個の画素単位の各々の動きベクトルを用いて、P個の画素単位の各々の整数画素位置に対応する基準画素単位を求めて基準画像をサーチすることと、を含み、P個の画素単位の各々の整数画素位置に対応している、基準画像で見つかる基準画素単位は、P個の画素単位の各々の、基準画像における基準画素単位である。
【０２７０】
任意選択で、本発明のいくつかの可能な実施態様では、プロセッサが、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の整数画素位置を取得することは、
P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の整数画素位置を取得すること、を含む。
xInt＝［νNx／N］、またはxInt＝νNx≧M；
yInt＝［νNy／N］、またはyInt＝νNy≧M；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、（xInt，yInt）は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の整数画素位置座標を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０２７１】
任意選択で、本発明のいくつかの可能な実施態様では、プロセッサが、Qの位相を有する補間フィルタを用いてP個の画素単位の各々の、基準画像における基準画素単位の画素に対して補間フィルタリングを行うことは、
P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得することと、各画素単位の位相に基づき、対応する画素単位に対応しているQの位相を有する補間フィルタであって、位相に対応しているフィルタ係数を用いる補間フィルタを決定することと、対応する画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うことと
を含む。
【０２７２】
任意選択で、本発明のいくつかの可能な実施態様では、プロセッサが、P個の画素単位の各々の動きベクトルを用いて、計算により、P個の画素単位の各々の位相を取得することは、P個の画素単位の各々の動きベクトルを用いて以下の式に従って、計算により、P個の画素単位の各々の位相を取得すること、を含む。
X’＝abs（νNx）％N、またはX’＝νNx＆（（1≦M）−1）；
Y’＝abs（νNy）％N、またはY’＝νNy＆（（1≦M）−1）；
式中、Mは、Nが2の整数べきである場合log2Nに等しく、X’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の水平位相を表し、Y’は、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の垂直位相を表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０２７３】
任意選択で、本発明のいくつかの可能な実施態様では、位相は水平位相と垂直位相とを含み、プロセッサが、各画素単位の位相に基づき、画素単位に対応しているQの位相を有する補間フィルタを決定することは、各画素単位の水平位相に基づき、対応する画素単位に対応しているQの位相を有する水平補間フィルタを決定することと、各画素単位の垂直位相に基づき、対応する画素単位に対応しているQの位相を有する垂直補間フィルタを決定することとを含み、水平補間フィルタによって用いられるフィルタ係数は水平位相に対応しており、垂直補間フィルタによって用いられるフィルタ係数は垂直位相に対応している。
【０２７４】
任意選択で、本発明のいくつかの可能な実施態様では、プロセッサが、画素単位に対応しているQの位相を有する決定された補間フィルタを用いて各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングを行うことは、
水平補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位iに対応しているQの位相を有する決定された水平補間フィルタを用いて画素単位iの、基準画像における対応する基準画素単位の画素に対して水平補間フィルタリングを行い、画素単位iの予測画素値を取得するために、画素単位iに対応しているQの位相を有する決定された垂直補間フィルタを用いて水平補間フィルタリングの結果に対して垂直補間フィルタリングを行うこと、または
垂直補間フィルタリングの結果を取得するために、P個の画素単位のうちの任意の1つである画素単位jに対応しているQの位相を有する決定された垂直補間フィルタを用いて画素単位jの、基準画像における対応する基準画素単位の画素に対して垂直補間フィルタリングを行い、画素単位jの予測画素値を取得するために、画素単位jに対応しているQの位相を有する決定された水平補間フィルタを用いて垂直補間フィルタリングの結果に対して水平補間フィルタリングを行うこと
を含む。
【０２７５】
任意選択で、本発明のいくつかの可能な実施態様では、動きモデルは、並進運動モデル、アフィン運動モデル、回転運動モデル、放物運動モデル、せん断運動モデル、ズーミング運動モデル、射影運動モデル、または双一次運動モデルである。
【０２７６】
任意選択で、本発明のいくつかの可能な実施態様では、
Wが2に等しい場合、動きモデルは以下のように表される。
【０２７７】
【数１３】
0006776276.tif 000022
【０２７８】
式中、Lは、現在の画像ブロックの幅または高さを表し、（ν0x，ν0y）と（ν1x，ν1y）とは、2つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表す。
【０２７９】
任意選択で、本発明のいくつかの可能な実施態様では、
Wが3に等しい場合、動きモデルは以下のように表される。
【０２８０】
【数１４】
0006776276.tif 000023
【０２８１】
式中、νNxは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの水平成分を表し、νNyは、現在の画像ブロックにおいて（x，y）の座標を有する画素単位の、その精度が画素精度の1／Nである動きベクトルの垂直成分を表し、（ν0x，ν0y）と（ν1x，ν1y）と（ν2x，ν2y）とは、3つの制御点の、その精度が画素精度の1／nである動きベクトルを表し、wは、現在の画像ブロックの幅を表し、hは、現在の画像ブロックの高さを表す。
【０２８２】
任意選択で、本発明のいくつかの可能な実施態様では、W個の制御点の動きベクトルは、現在の画像ブロックを取り囲む符号化画像ブロックまたは復号化画像ブロックの、その精度が画素精度の1／nである動きベクトルに基づいて予測される。
【０２８３】
任意選択で、本発明のいくつかの可能な実施態様では、Nの値は事前設定された固定値である。
【０２８４】
任意選択で、本発明のいくつかの可能な実施態様では、画像予測装置600は映像符号化装置に適用され、または画像予測装置600は映像復号化装置に適用される。
【０２８５】
本実施形態の画像予測装置600の機能モジュールの機能は、前述の方法実施形態の方法に従って具体的に実施されうることが理解されよう。画像予測装置600の具体的な実現プロセスについては、前述の方法実施形態における関連説明を参照されたい。ここでは詳細を繰り返さない。画像予測装置600は、映像を出力し、または再生する必要がある任意の装置、例えば、ノートブックコンピュータ、タブレットコンピュータ、パーソナルコンピュータ、携帯電話、または別の機器であってよい。
【０２８６】
本実施形態で提供される画像予測方法では、画像予測装置600は、現在の画像ブロックの各画素単位の、動きモデルと、W個の制御点の、その精度が画素精度の1／nである動きベクトルとを用いて、計算により、その精度が画素精度の1／Nである動きベクトルを取得し、Nはnより大きいことがわかる。言い換えると、計算によって取得される、現在の画像ブロックの各画素単位の動きベクトルの精度は、W個の制御点の決定された動きベクトルの精度より高い。高精度の動きベクトルがまず取得される。したがって、現在の画像ブロックの各画素単位の高精度の動きベクトルを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位が決定され、Qの位相を有する（Qはnより大きい）補間フィルタを用いて現在の画像ブロックの各画素単位の、基準画像における対応する基準画素単位の画素に対して補間フィルタリングが行われて、現在の画像ブロックの各画素単位の予測画素値が取得される。前述の方法は、予測によって、現在の画像ブロックの高精度の予測画素値を取得するのに必要な補間フィルタリングの回数を低減させるのに役立ち（例えば、低精度の補間フィルタリングを行うことによって低精度の予測画素値を取得するための中間プロセスが不要となる）、そのため、画像予測プロセスの間に補間フィルタリングに必要とされる中間キャッシュおよびメモリ動作の量が低減し、画像予測プロセスの間の計算の複雑さが低減することがわかる。
【０２８７】
前述の各実施形態において、各実施形態の記述にはそれぞれの視点がある。ある実施形態で詳細に記載されていない部分については、他の実施形態の関連説明を参照されたい。
【０２８８】
本出願で提供されるいくつかの実施形態では、開示の装置を他のやり方で実現することもできることを理解されたい。例えば、説明した装置実施形態は単なる例にすぎない。例えば、ユニット分割は単なる論理的機能分割にすぎず、実際の実装に際しては他の分割とすることもできる。例えば、複数のユニットまたはコンポーネントを組み合わせ、または統合して別のシステムとする場合もあり、いくつかの特徴を無視し、または実行しない場合もある。加えて、図示の、または上述の相互結合または直接結合または通信接続を、いくつかのインターフェースを使用して実現することもできる。装置間またはユニット間の間接結合または通信接続は、電子的形態、または他の形態として実現することができる。
【０２８９】
別々の部品として記述されたユニットは物理的に分離している場合もそうではない場合もあり、ユニットとして図示された部品は物理的ユニットである場合もそうではない場合もあり、一箇所に位置する場合もあり、複数のネットワークユニット上に分散される場合もある。ユニットの一部または全部を、各実施形態の解決策の目的を達成するための実際の要件に従って選択することもできる。
【０２９０】
加えて、本発明の実施形態における機能ユニットを1つの処理ユニットに統合することもでき、ユニットの各々が物理的に独立して存在していてもよく、または少なくとも2つのユニットを1つのユニットに統合することもできる。統合ユニットはハードウェアの形態で実現することもでき、ソフトウェア機能ユニットの形態で実現することもできる。
【０２９１】
統合ユニットがソフトウェア機能ユニットの形態で実現され、独立した製品として販売または使用される場合、その統合ユニットはコンピュータ可読記憶媒体に記憶されていてよい。そうした理解に基づき、本発明の技術解決策を本質的に、または先行技術に寄与する部分を、または技術解決策の全部もしくは一部を、ソフトウェア製品の形態で実現することもできる。コンピュータソフトウェア製品は記憶媒体に記憶され、コンピュータデバイス（パーソナルコンピュータ、サーバ、ネットワークデバイスなどとすることができる）に、本発明の実施形態において記述されている方法のステップの全部または一部を実行するよう命令するためのいくつかの命令を含む。前述の記憶媒体は、USBフラッシュドライブ、読取り専用メモリ（ROM、Read−Only Memory）、ランダム・アクセス・メモリ（RAM、Random Access Memory）、リムーバブル・ハード・ディスク、磁気ディスク、光ディスクといった、プログラムコードを記憶することができる任意の媒体を含む。
【０２９２】
前述の実施形態は、単に本発明の技術的解決策を説明するためのものにすぎず、本発明を限定するためのものではない。本発明は前述の実施形態に関連して詳細に説明されているが、当業者は、本発明の実施形態の技術的解決策の範囲を逸脱することなく、前述の実施形態で記述されている技術的解決策にさらに改変を加え、または前述の実施形態のいくつかの技術的特徴に対する等価の置換を行うことができることを理解するはずである。
【符号の説明】
【０２９３】
500  画像予測装置
510  第1の決定部
520  計算部
530  第2の決定部
540  補間フィルタリング部
600  画像予測装置
601  プロセッサ
602  通信バス
603  ユーザインターフェース
604  ネットワークインターフェース
605  メモリ
6051  オペレーティングシステム
6052  アプリケーション・プログラム・モジュール
【図１−ａ】
0006776276.tif 000030
【図１−ｂ】
0006776276.tif 000031
【図２−ａ】
0006776276.tif 000032
【図２−ｂ】
0006776276.tif 000033
【図３−ａ】
0006776276.tif 000034
【図３−ｂ】
0006776276.tif 000035
【図４】
0006776276.tif 000036
【図５】
0006776276.tif 000037
【図６】
0006776276.tif 000038