本発明の実施形態は、画像予測精度を向上させるために、画像予測方法および関連装置を提供する。
当業者が本発明の技術的解決策をよりよく理解するために、以下に、本発明の実施形態の添付図面を参照して、本発明の実施形態の技術的解決策を明確かつ十分に説明する。当然ながら、説明する実施形態は、本発明の実施形態のすべてではなく、単なる一部である。創造的努力無しに本発明の実施形態に基づいて当業者によって得られる他のすべての実施形態は、本発明の保護範囲内にある。
詳細は、以下に別々に記載する。
本発明の明細書、特許明細の範囲、および添付図面において、「第1」、「第2」、「第3」、および「第4」などの用語は、異なるオブジェクトを区別することを意図しているが、特定の順序を示すことを意図していない。さらに、「含む」、「有する」、およびそれらの他の任意の変形は、非排他的な包含をカバーすることを意図する。例えば、一連のステップまたはユニットを含む処理、方法、システム、製品、またはデバイスは、リストされたステップまたはユニットに限定されないが、任意選択的に、リストされていないステップまたはユニットをさらに含み、または、任意選択的に、処理、方法、製品、またはデバイスの別の固有のステップもしくはユニットをさらに含む。
以下では、まず、本発明の実施形態に含まれる可能性のあるいくつかの概念を説明する。
ほとんどの符号化フレームワークでは、ビデオシーケンスは、一連の画像(英語:picture)を含み、画像は、スライス(英語:slice)にさらに分割され、スライスは、ブロック(英語:block)にさらに分割される。ビデオ符号化は、ブロックを単位として使用することによって、左上から右下、上から下の1行ずつ、画像の左上隅の位置から符号化処理を行うものである。いくつかの新しいビデオ符号化規格では、ブロックの概念がさらに拡張されている。H.264規格にはマクロブロック(英語:macro block、略して、MB)があり、MBは、予測符号化に使用される可能性のある複数の予測ブロックにさらに分割することができる。HEVC規格では、符号化ユニット(英語:coding unit、略して、CU)、予測ユニット(英語:prediction unit、略して、PU)、変換ユニット(英語:transform unit、略して、TU)が使用され、複数のユニットが機能別に分類され、完全に新しいツリーベース構造が記述に使用される。例えば、CUを4分木に応じてより小さいCUに分割することができ、より小さいCUをさらに分割して4分木構造を形成することができる。PUおよびTUも、同様のツリー構造を有する。ユニットが、CU、PU、またはTUのいずれであるかにかかわらず、ユニットは、本質的に、ブロックブロックの概念に属する。CUは、マクロブロックMBまたは符号化ブロックに類似しており、画像を区分および符号化するための基本ユニットである。PUは予測ブロックに対応することができ、予測符号化の基本ユニットである。CUは、分割モードに従って複数のPUにさらに分割される。TUは、変換ブロックに対応することができ、予測残差を変換するための基本ユニットである。
HEVC規格では、符号化ユニットのサイズは、64×64、32×32、16×16、および8×8の4つのレベルを含むことができる。各レベルの符号化ユニットは、フレーム内予測およびフレーム間予測に従って異なるサイズの予測ユニットに分割することができる。例えば、図1−aおよび図1−bに示すように、図1−aは、フレーム内予測に対応する予測ユニット分割方式を示す。図1−bは、フレーム間予測に対応するいくつかの予測ユニット分割方式を示す。
ビデオ符号化技術の開発および発展処理において、ビデオ符号化の専門家は、符号化効率を改善しようとするために、隣接する符号化/復号化ブロック間の時間的および空間的相関を使用するためのさまざまな方法を見出している。H264/高度動画像圧縮符号化(英語:Advanced Video Coding、略して、AVC)規格では、スキップモード(skip mode)とダイレクトモード(direct mode)が符号化効率を向上させる効果的なツールとなる。ビットレートが低い場合に使用される2つの符号化モードのブロックは、符号化シーケンス全体の半分以上を占めることができる。スキップモードを使用する場合には、現在の画像ブロックの動きベクトルを、ビットストリームにスキップモードフラグを付加するだけで近傍の動きベクトルを用いて導き出すことができ、動きベクトルに従って基準ブロックの値を、現在の画像ブロックの再構成値として直接コピーする。さらに、ダイレクトモードを使用する場合、エンコーダは、隣接する動きベクトルを用いて現在の画像ブロックの動きベクトルを導出し、動きベクトルに従って基準ブロックの値を現在の画像ブロックの予測値として直接コピーし、エンコーダにおいて予測値を使用して現在の画像ブロックで予測符号化を実行する。発展型HEVC規格では、ビデオ符号化効率をさらに向上させるためのいくつかの新しい符号化ツールが導入されている。マージ符号化(merge)モードと進化型動きベクトル予測(英語:advanced motion vector prediction、略して、AMVP)モードは、2つの重要なフレーム間予測ツールである。マージ符号化(merge)の間、候補動き情報セットは、現在の符号化ブロックの隣接符号化ブロックの動き情報(予測方向、動きベクトル、および基準画像インデックスを含む)を使用して構成され、符号化効率を最も高くすることができる候補動き情報が、比較により現在の符号化ブロックの動き情報として選択され得、現在の符号化ブロックの予測値が基準画像で発見され、予測符号化が現在の符号化ブロックで実行され、動き情報が選択される隣接符号化ブロックを示すインデックス値がビットストリームに書き込まれる。進化型動きベクトル予測モードを使用する場合、現在の符号化ブロックの動きベクトル予測値として、隣接する符号化ブロックの動きベクトルを使用し、符号化効率を最も高くできる動きベクトルを選択して現在の符号化ブロックの動きベクトルを予測することができ、動きベクトルが選択された隣接符号化ブロックを示すインデックス値を、ビデオビットストリームに書き込むことができる。
本発明の実施形態における技術的解決策について、以下でさらに説明する。
本発明の実施形態で提供する画像予測方法について、以下で最初に説明する。本発明の実施形態で提供される画像予測方法は、ビデオ符号化装置またはビデオ復号化装置で実行される。ビデオ符号化装置またはビデオ復号化装置は、ビデオを出力または格納するのに必要な任意の装置、例えば、ラップトップコンピュータ、タブレットコンピュータ、パーソナルコンピュータ、携帯電話、またはビデオサーバなどのデバイスとすることができる。
本発明の画像予測方法の一実施形態において、画像予測方法は、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断するステップであって、現在のテンプレートが、現在の画像ブロックに対応するテンプレートであり、Nが正の整数であり、N個のテンプレートが、現在の画像ブロックの基準画像を検索することによって得られる、ステップと、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するステップであって、N個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みが異なる、ステップと、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測画素値を計算するステップであって、画素領域が少なくとも1つの画素を含む、ステップと、を含む。
図1−cを参照すると、図1−cは、本発明の一実施形態による画像予測方法の模式的なフローチャートである。図1−cに示すように、本発明のこの実施形態で提供される画像予測方法は、以下のステップを含むことができる。
101.現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを決定する。
現在のテンプレートは、現在の画像ブロックに対応するテンプレートである。N個のテンプレートは、現在の画像ブロックの基準画像を検索することによって得られる。Nは、正の整数である。
例えば、Nは、1、2、3、4、5、7、9、12、または別の値とすることができる。
102.N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断する。
N個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。
本発明の各実施形態で言及される画素領域は、少なくとも1つの画素を含む。すなわち、画素領域は、1つの画素または1つの画素ブロックである可能性があり、画素領域が画素ブロックである場合、画素領域は、例えば、2×2、1×2、1×3、4×2、4×3、もしくは4×4、または別のサイズを有することができる。
N個のテンプレートにおけるテンプレートは、異なる画像ブロックに対応し、したがって、N個のテンプレートは、N個の画像ブロックに対応する。テンプレートはL型、または別の形状とすることができる。例えば、図1−dに示すように、画像ブロックに対応するテンプレートは、画像ブロックに隣接するL型画素領域とすることができる。例えば、図1−dにおいて、画像ブロックxに隣接するL型画素領域Txは、画像ブロックxに対応するテンプレートTxであり、画像ブロックm1に隣接するL型画素領域Tm1 は、画像ブロックm1に対応するテンプレートTm1 であり、画像ブロックm2に隣接するL型画素領域Tm2は、画像ブロックm2に対応するテンプレートTm2である。画像ブロックと、その画像ブロックに対応するテンプレートとの間には、何らの重なりも存在しないであろう。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに関連する可能性がある。2つの物体の間の類似性についてのパラメータは、2つの物体の間の類似性を表すために使用することができる。例えば、N個のテンプレートにおけるテンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性を表すために使用することができる。画像ブロックmは、テンプレートTmに対応する画像ブロックである。テンプレートTmは、N個のテンプレートにおける任意のテンプレートとすることができる。画素領域wは、画像ブロックm内の任意の画素領域である。
具体例では、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、例えば、画素領域wと、テンプレートTm内の判断された画素領域との間の距離とすることができ、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域の画素値との比、もしくはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と、画素領域wの画素値との間の絶対差とすることができる。すなわち、テンプレートTmに対応する画像ブロックm内の画素領域wの重みと、画素領域wとテンプレートTm内の判断された画素領域との間の距離との間に対応関係が存在するであろう。あるいは、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内の画素領域wの重みと、テンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との比か、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との間の絶対差との間には、対応関係が存在するであろう。
画像ブロックに対応するテンプレートは、画像ブロックの隣接する再構成画素のいくつかであり、画像ブロックとの対応関係を有する。画像ブロックに対応するテンプレートは、検索および一致のために画像ブロックを表すのに使用することができる。一致テンプレートに対応する画像ブロックは、テンプレートと画像ブロックとの間の対応関係を使用することによる予測などの動作で発見することができる。
任意選択的に、本発明のいくつかの可能な実装態様において、上記のテンプレートTm内の判断された画素領域は、例えば、左上画素、左上画素領域、左下画素、左下画素領域、右上画素、右上画素領域、右下画素、右下画素領域、中央画素領域、中央画素、またはテンプレートTm内の別の画素領域とすることができる。
テンプレートTm内の左上画素領域は、テンプレートTm内の左上画素、またはテンプレートTm内にあり、テンプレートTm内の左上画素を含む、画素ブロックであり、テンプレートTm内の左下画素領域は、テンプレートTm内の左下画素、またはテンプレートTm内にあり、テンプレートTm内の左下画素を含む、画素ブロックであり、テンプレートTm内の右上画素領域は、テンプレートTm内の右上画素、またはテンプレートTm内にあり、テンプレートTm内の右上画素を含む、画素ブロックであり、テンプレートTm内の中央画素領域は、テンプレートTm内の中央画素、またはテンプレートTm内にあり、テンプレートTm内の中央画素を含む、画素ブロックである。
画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、例えば、画素領域w内の画素と、テンプレートTm内の判断された画素領域内の画素との間の距離とすることができ、2つの画素は、互いに最も近く、または画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、画素領域w内の任意の画素と、テンプレートTm内の判断された画素領域内の任意の画素との間の距離とすることができ、または画素領域wと、テンプレートTm内の判断された画素領域との距離は、画素領域w内の判断された画素(画素領域w内の判断された画素は、画素領域w内の左上画素、左下画素、右上画素、右下画素、または中央画素とすることができる)と、テンプレートTm内の判断された画素領域内の判断された画素(テンプレートTm内の判断された画素は、例えば、テンプレートTm内の左上画素、左下画素、右上画素、右下画素、または中央画素である)との間の距離とすることができる。当然、画素領域wとテンプレートTm内の判断された画素領域との間の距離は、別の方法で計算してもよい。
103.N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みと画素値とに基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算する。
この実施形態における画像予測解決策では、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断した後、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みが判断され、現在の画像ブロック内の画素領域の予測される画素値が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて計算されることを理解することができる。画素領域は、少なくとも1つの画素を含む。判断されたN個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なり、すなわち、同じテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。したがって、すべてのテンプレートに対応する画像ブロック内のすべての画素領域の重みが同じである(重みがすべて1である)従来技術の解決策は、破棄される。画素領域の重みの間に特定の差異が存在するので、これは実際の相関差に適合する可能性がより高い。このようにして、現在の画像ブロック内の画素領域の画素値が正確に予測され、ビデオ符号化および復号効率が改善される。
任意選択的に、本発明のいくつかの可能な実装態様において、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断するステップが、現在のテンプレートとの一致度が最も高いN個のテンプレートを判断するステップか、または現在のテンプレートとの一致度が最も高いM個のテンプレートを判断し、M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断するステップを含み、ここで、NはM未満である。
例えば、M個のテンプレートから所定の条件を満たすN個のテンプレートを判断するステップが、M個のテンプレートからN個のテンプレートを判断するステップであって、N個のテンプレートの画素値と現在のテンプレートの画素値との間の歪みが閾値以下である、ステップを含む。例えば、閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みに等しく、または閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みの調整値に等しい。当然、閾値は、別の所定の値とすることができる。スクリーニング閾値を導入して、スクリーニングにより、一致度が比較的低く、動作に関係しない、テンプレートを取得する助けとなり、その結果、予測精度が向上し、動作の複雑さが軽減されることが理解できる。
N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断する多様な方法が存在するであろう。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するステップが、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従ってN個のテンプレートにおける各テンプレートの重みを判断するステップと、N個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータとに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するステップとを含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータは、N個のテンプレートにおける各テンプレート内の判断された画素領域と、対応する画像ブロック内の画素領域との間の距離、および/またはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との比、もしくはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との間の絶対差を含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従ってN個のテンプレートにおける各テンプレートの重みを判断するステップは、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って、N個のテンプレートにおける各テンプレートの重みを判断するステップを含むことができ、ここで、
は、現在のテンプレートTxとN個のテンプレートにおけるテンプレートTmとの間の歪みを示し、Sは、現在のテンプレートTxにおける画素領域の量を示し、σは、テンプレートスケーリング要因を示し、aおよびσは、0より大きい実数であり、wmは、テンプレートTmの重みを示し、テンプレートTmは、N個のテンプレートにおける任意のテンプレートである。aの値が、例えば、2、3、または4などの整数である場合、動作の複雑度は単純化される。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するステップが、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するステップを含むことができ、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、R(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmとの間の類似性についてのパラメータを示し、∂(R(i,j))は、R(i,j)に対応する画素領域スケーリング要因を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間には、線形関係または非線形関係が存在する。
例えば、∂(R(i,j))とR(i,j)との間の線形関係は、∂(R(i,j))=β*R(i,j)であり、ここで、βは、スケーリング係数であり、βは、0より大きい実数である。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、R(i,j)が範囲内にある距離間隔、および異なる値を有する画素領域スケーリング要因に対応する異なる距離間隔に基づいて、∂(R(i,j))の値が判断される。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a1はa2未満であり、a2はa3未満でありb1は、b2未満であり、a1、a2、a3、b1、およびb2は、0より大きい実数である。
例えば、a1=0.3、a2=0.5、およびa3=1である。例えば、b1=4およびb2=8である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a4はa5未満であり、a5はa6未満であり、a6はa7未満であり、b3はb4未満であり、b4はb5未満であり、a4、a5、a6、a7、b3、b4、およびb5は、0より大きい実数である。
例えば、a4=0.3、a5=0.5、a6=0.8、およびa7=1である。例えば、b3=4、b4=5、およびb5=6である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、ここで、a8はa9未満であり、a8、a9、およびb6は、0より大きい実数である。
例えば、a8=0.5およびa9=1である。例えば、b6=5である。
上記の例は、∂(R(i,j))とR(i,j)との間の非線形関係が、区分関数関係とすることができることを示す。区分関数の区分量は、上記の例で示した2、3、または4に限定されるものではなく、当然、より大きくてもよい。
任意選択的に、本発明のいくつかの可能な実装態様において、R(i,j)は、例えば、d(i,j)またはe(i,j)に等しいとすることができ、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の判断された画素領域との間の距離を示し、e(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との比を示し、または座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との間の絶対差を示す。
例えば、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmにおける左上画素との間の距離を示すことができ、またはd(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離を示すことができ、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、画素yを除くテンプレートTm内の任意の画素との間の距離以下である。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて現在の画像ブロック内の画素領域の予測される画素値を計算するステップが、以下の数式、すなわち、
を使用することによって、かつN個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算するステップを含み、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、pm(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値を示し、pre(i,j)は、座標が(i,j)であって、現在の画像ブロック内にある、画素領域の予測される画素値を示す。
この実施形態で提供される画像予測方法は、ビデオ符号化処理で適用することができ、またはビデオ復号化処理で適用することができる。
本発明のこの実施形態における上記の解決策をより良好に理解し、実現するために、さらなる説明が、より具体的な適用シナリオを参照して、以下で提供される。
図2を参照すると、図2は、本発明の別の実施形態による別の画像予測方法の模式的なフローチャートである。図2に示すように、本発明の別の実施形態で提供される別の画像予測方法は、以下のステップを含むことができる。
201.現在のテンプレートとの一致度が最も高いM個のテンプレートを判断する。
Mは、指定値とすることができ、すなわち、現在のテンプレートと一致度が最も高いM個のテンプレートは、いくつかの候補テンプレートから選択することができる。例えば、現在のテンプレートと一致度が最も高い5個のテンプレートを、10個の候補テンプレートから判断することができる。当然、5個のテンプレートと現在のテンプレートとの間の一致度は、必ずしも等しくはないが、5個のテンプレートにおける任意のテンプレートと現在のテンプレートとの間の一致度は、5個のテンプレートを除く任意の候補テンプレートと現在のテンプレートとの間の一致度以上である。
現在のテンプレートは、現在の画像ブロックに対応するテンプレートである。M個のテンプレートは、現在の画像ブロックの基準画像を検索することによって得られる。Mは、正の整数である。
例えば、Mは、2、3、4、5、7、9、12、または別の値とすることができる。
202.M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断する。
例えば、M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断するステップが、M個のテンプレートからN個のテンプレートを判断するステップであって、N個のテンプレートの画素値と現在のテンプレートの画素値との間の歪みが閾値以下である、ステップを含む。例えば、閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みに等しく、または閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みの調整値に等しい。当然、閾値は、別の所定の値とすることができる。スクリーニング閾値を導入して、スクリーニングにより、一致度が比較的低く、動作に関係しない、テンプレートを取得する助けとなり、その結果、予測精度が向上し、動作の複雑さが軽減されることが理解できる。
203.N個のテンプレートにおける各テンプレートの重みを判断する。
例えば、N個のテンプレートにおける各テンプレートの重みは、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って判断することができる。
204.N個のテンプレートにおける各テンプレートの重みに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断する。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートの重みと、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータとに基づいて判断することができる。
N個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。
本発明の各実施形態で言及される画素領域は、少なくとも1つの画素を含む。すなわち、画素領域は、1つの画素または1つの画素ブロックである可能性があり、画素領域が画素ブロックである場合、画素領域は、例えば、2×2、1×2、1×3、4×2、4×3、もしくは4×4、または別のサイズを有することができる。
N個のテンプレートにおけるテンプレートは、異なる画像ブロックに対応し、したがって、N個のテンプレートは、N個の画像ブロックに対応する。テンプレートはL型、または別の形状とすることができる。例えば、図1−dに示すように、画像ブロックに対応するテンプレートは、画像ブロックに隣接するL型画素領域とすることができる。例えば、図1−dにおいて、画像ブロックxに隣接するL型画素領域Txは、画像ブロックxに対応するテンプレートTxであり、画像ブロックm1に隣接するL型画素領域Tm1 は、画像ブロックm1に対応するテンプレートTm1 であり、画像ブロックm2に隣接するL型画素領域Tm2は、画像ブロックm2に対応するテンプレートTm2である。画像ブロックと、その画像ブロックに対応するテンプレートとの間には、何らの重なりも存在しないであろう。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに関連する可能性がある。2つの物体の間の類似性についてのパラメータは、2つの物体の間の類似性を表すために使用することができる。例えば、N個のテンプレートにおけるテンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性を表すために使用することができる。画像ブロックmは、テンプレートTmに対応する画像ブロックである。テンプレートTmは、N個のテンプレートにおける任意のテンプレートとすることができる。画素領域wは、画像ブロックm内の任意の画素領域である。
具体例では、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、例えば、画素領域wと、テンプレートTm内の判断された画素領域との間の距離とすることができ、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域の画素値との比、もしくはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と、画素領域wの画素値との間の絶対差とすることができる。すなわち、テンプレートTmに対応する画像ブロックm内の画素領域wの重みと、画素領域wとテンプレートTm内の判断された画素領域との間の距離との間に対応関係が存在するであろう。あるいは、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内の画素領域wの重みと、テンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との比か、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との間の絶対差との間には、対応関係が存在するであろう。
任意選択的に、本発明のいくつかの可能な実装態様において、上記のテンプレートTm内の判断された画素領域は、例えば、左上画素、左上画素領域、左下画素、左下画素領域、右上画素、右上画素領域、右下画素、右下画素領域、中央画素領域、中央画素、またはテンプレートTm内の別の画素領域とすることができる。
テンプレートTm内の左上画素領域は、テンプレートTm内の左上画素、またはテンプレートTm内にあり、テンプレートTm内の左上画素を含む、画素ブロックであり、テンプレートTm内の左下画素領域は、テンプレートTm内の左下画素、またはテンプレートTm内にあり、テンプレートTm内の左下画素を含む、画素ブロックであり、テンプレートTm内の右上画素領域は、テンプレートTm内の右上画素、またはテンプレートTm内にあり、テンプレートTm内の右上画素を含む、画素ブロックであり、テンプレートTm内の中央画素領域は、テンプレートTm内の中央画素、またはテンプレートTm内にあり、テンプレートTm内の中央画素を含む、画素ブロックである。
画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、例えば、画素領域w内の画素と、テンプレートTm内の判断された画素領域内の画素との間の距離とすることができ、2つの画素は、互いに最も近く、または画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、画素領域w内の任意の画素と、テンプレートTm内の判断された画素領域内の任意の画素との間の距離とすることができ、または画素領域wと、テンプレートTm内の判断された画素領域との距離は、画素領域w内の判断された画素(画素領域w内の判断された画素は、画素領域w内の左上画素、左下画素、右上画素、右下画素、または中央画素とすることができる)と、テンプレートTm内の判断された画素領域内の判断された画素(テンプレートTm内の判断された画素は、例えば、テンプレートTm内の左上画素、左下画素、右上画素、右下画素、または中央画素である)との間の距離とすることができる。当然、画素領域wとテンプレートTm内の判断された画素領域との間の距離は、別の方法で計算してもよい。
205.N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算する。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータは、N個のテンプレートにおける各テンプレート内の判断された画素領域と、対応する画像ブロック内の画素領域との間の距離、および/またはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との比、もしくはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との間の絶対差を含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートの重みは、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って判断され、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って、N個のテンプレートにおける各テンプレートの重みを判断するステップを含むことができ、ここで、
は、現在のテンプレートTxとN個のテンプレートにおけるテンプレートTmとの間の歪みを示し、Sは、現在のテンプレートTxにおける画素領域の量を示し、σは、テンプレートスケーリング要因を示し、aおよびσは、0より大きい実数であり、wmは、テンプレートTmの重みを示し、テンプレートTmは、N個のテンプレートにおける任意のテンプレートである。aの値が、例えば、2、3、または4などの整数である場合、動作の複雑度は単純化される。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みが、N個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて判断されることは、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断することを含み、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、R(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmとの間の類似性についてのパラメータを示し、∂(R(i,j))は、R(i,j)に対応する画素領域スケーリング要因を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間には、線形関係または非線形関係が存在する。
例えば、∂(R(i,j))とR(i,j)との間の線形関係は、∂(R(i,j))=β*R(i,j)であり、ここで、βは、スケーリング係数であり、βは、0より大きい実数である。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、R(i,j)が範囲内にある距離間隔、および異なる値を有する画素領域スケーリング要因に対応する異なる距離間隔に基づいて、∂(R(i,j))の値が判断される。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a1はa2未満であり、a2はa3未満でありb1は、b2未満であり、a1、a2、a3、b1、およびb2は、0より大きい実数である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a4はa5未満であり、a5はa6未満であり、a6はa7未満であり、b3はb4未満であり、b4はb5未満であり、a4、a5、a6、a7、b3、b4、およびb5は、0より大きい実数である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、ここで、a8はa9未満であり、a8、a9、およびb6は、0より大きい実数である。
上記の例は、∂(R(i,j))とR(i,j)との間の非線形関係が、区分関数関係とすることができることを示す。区分関数の区分量は、上記の例で示した2、3、または4に限定されるものではなく、当然、より大きくてもよい。
任意選択的に、本発明のいくつかの可能な実装態様において、R(i,j)は、例えば、d(i,j)またはe(i,j)に等しいとすることができ、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の判断された画素領域との間の距離を示し、e(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との比を示し、または座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との間の絶対差を示す。
例えば、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmにおける左上画素との間の距離を示すことができ、またはd(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離を示すことができ、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、画素yを除くテンプレートTm内の任意の画素との間の距離以下である。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて現在の画像ブロック内の画素領域の予測される画素値を計算するステップが、以下の数式、すなわち、
を使用することによって、かつN個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算するステップを含み、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、pm(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値を示し、pre(i,j)は、座標が(i,j)であって、現在の画像ブロック内にある、画素領域の予測される画素値を示す。
座標が(i,j)である画素領域に対して、画素領域が複数の画素を含む場合、(i,j)におけるiとjとは、固定値ではなく特定の値の範囲内に収まることを理解することができる。
この実施形態で提供される画像予測方法は、ビデオ符号化処理で適用することができ、またはビデオ復号化処理で適用することができる。
この実施形態における画像予測解決策では、現在のテンプレートとの一致度が最も高いM個のテンプレートを判断した後、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートがM個のテンプレートからさらに判断され、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みが判断され、現在の画像ブロック内の画素領域の予測される画素値が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて計算されることを理解することができる。画素領域は、少なくとも1つの画素を含む。判断されたN個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なり、すなわち、同じテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。したがって、すべてのテンプレートに対応する画像ブロック内のすべての画素領域の重みが同じである(重みがすべて1である)従来技術の解決策は、破棄される。画素領域の重みの間に特定の差異が存在するので、これは実際の相関差に適合する可能性がより高い。このようにして、現在の画像ブロック内の画素領域の画素値が正確に予測され、ビデオ符号化および復号効率が改善される。
図3を参照すると、図3は、本発明の別の実施形態による別の画像予測方法の模式的なフローチャートである。図3に示すように、本発明の別の実施形態で提供されるビデオ符号化方法は、以下のステップを含むことができる。
301.ビデオ符号化装置が、現在のテンプレートとの一致度が最も高いM個のテンプレートを判断する。
Mは、指定値とすることができ、すなわち、現在のテンプレートと一致度が最も高いM個のテンプレートは、いくつかの候補テンプレートから選択することができる。例えば、現在のテンプレートと一致度が最も高い5個のテンプレートを、10個の候補テンプレートから判断することができる。当然、5個のテンプレートと現在のテンプレートとの間の一致度は、必ずしも等しくはないが、5個のテンプレートにおける任意のテンプレートと現在のテンプレートとの間の一致度は、5個のテンプレートを除く任意の候補テンプレートと現在のテンプレートとの間の一致度以上である。
現在のテンプレートは、現在の画像ブロックに対応するテンプレートである。M個のテンプレートは、現在の画像ブロックの基準画像を検索することによって得られる。Mは、正の整数である。
例えば、Mは、2、3、4、5、7、9、12、または別の値とすることができる。
302.ビデオ符号化装置が、M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断する。
例えば、所定の条件を満たすN個のテンプレートがM個のテンプレートから判断されることは、M個のテンプレートからN個のテンプレートを判断することを含み、N個のテンプレートの画素値と現在のテンプレートの画素値との間の歪みが閾値以下である。例えば、閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みに等しく、または閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みの調整値に等しい。当然、閾値は、別の所定の値とすることができる。スクリーニング閾値を導入して、スクリーニングにより、一致度が比較的低く、動作に関係しない、テンプレートを取得する助けとなり、その結果、予測精度が向上し、動作の複雑さが軽減されることが理解できる。
303.ビデオ符号化装置が、N個のテンプレートにおける各テンプレートの重みを判断する。
例えば、N個のテンプレートにおける各テンプレートの重みは、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って判断することができる。
304.ビデオ符号化装置が、N個のテンプレートにおける各テンプレートの重みに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断する。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートの重みと、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータとに基づいて判断することができる。
N個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。
本発明の各実施形態で言及される画素領域は、少なくとも1つの画素を含む。すなわち、画素領域は、1つの画素または1つの画素ブロックである可能性があり、画素領域が画素ブロックである場合、画素領域は、例えば、2×2、1×2、1×3、4×2、4×3、もしくは4×4、または別のサイズを有することができる。
N個のテンプレートにおけるテンプレートは、異なる画像ブロックに対応し、したがって、N個のテンプレートは、N個の画像ブロックに対応する。テンプレートはL型、または別の形状とすることができる。例えば、図1−dに示すように、画像ブロックに対応するテンプレートは、画像ブロックに隣接するL型画素領域とすることができる。例えば、図1−dにおいて、画像ブロックxに隣接するL型画素領域Txは、画像ブロックxに対応するテンプレートTxであり、画像ブロックm1に隣接するL型画素領域Tm1 は、画像ブロックm1に対応するテンプレートTm1 であり、画像ブロックm2に隣接するL型画素領域Tm2は、画像ブロックm2に対応するテンプレートTm2である。画像ブロックと、その画像ブロックに対応するテンプレートとの間には、何らの重なりも存在しないであろう。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに関連する可能性がある。2つの物体の間の類似性についてのパラメータは、2つの物体の間の類似性を表すために使用することができる。例えば、N個のテンプレートにおけるテンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性を表すために使用することができる。画像ブロックmは、テンプレートTmに対応する画像ブロックである。テンプレートTmは、N個のテンプレートにおける任意のテンプレートとすることができる。画素領域wは、画像ブロックm内の任意の画素領域である。
具体例では、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、例えば、画素領域wと、テンプレートTm内の判断された画素領域との間の距離とすることができ、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域の画素値との比、もしくはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と、画素領域wの画素値との間の絶対差とすることができる。すなわち、テンプレートTmに対応する画像ブロックm内の画素領域wの重みと、画素領域wとテンプレートTm内の判断された画素領域との間の距離との間に対応関係が存在するであろう。あるいは、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内の画素領域wの重みと、テンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との比か、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との間の絶対差との間には、対応関係が存在するであろう。
任意選択的に、本発明のいくつかの可能な実装態様において、上記のテンプレートTm内の判断された画素領域は、例えば、左上画素、左上画素領域、左下画素、左下画素領域、右上画素、右上画素領域、右下画素、右下画素領域、中央画素領域、中央画素、またはテンプレートTm内の別の画素領域とすることができる。
テンプレートTm内の左上画素領域は、テンプレートTm内の左上画素、またはテンプレートTm内にあり、テンプレートTm内の左上画素を含む、画素ブロックであり、テンプレートTm内の左下画素領域は、テンプレートTm内の左下画素、またはテンプレートTm内にあり、テンプレートTm内の左下画素を含む、画素ブロックであり、テンプレートTm内の右上画素領域は、テンプレートTm内の右上画素、またはテンプレートTm内にあり、テンプレートTm内の右上画素を含む、画素ブロックであり、テンプレートTm内の中央画素領域は、テンプレートTm内の中央画素、またはテンプレートTm内にあり、テンプレートTm内の中央画素を含む、画素ブロックである。
画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、例えば、画素領域w内の画素と、テンプレートTm内の判断された画素領域内の画素との間の距離とすることができ、2つの画素は、互いに最も近く、または画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、画素領域w内の任意の画素と、テンプレートTm内の判断された画素領域内の任意の画素との間の距離とすることができ、または画素領域wと、テンプレートTm内の判断された画素領域との距離は、画素領域w内の判断された画素(画素領域w内の判断された画素は、画素領域w内の左上画素、左下画素、右上画素、右下画素、または中央画素とすることができる)と、テンプレートTm内の判断された画素領域内の判断された画素(テンプレートTm内の判断された画素は、例えば、テンプレートTm内の左上画素、左下画素、右上画素、右下画素、または中央画素である)との間の距離とすることができる。当然、画素領域wとテンプレートTm内の判断された画素領域との間の距離は、別の方法で計算してもよい。
305.ビデオ符号化装置が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みと画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算する。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータは、N個のテンプレートにおける各テンプレート内の判断された画素領域と、対応する画像ブロック内の画素領域との間の距離、および/またはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との比、もしくはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との間の絶対差を含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートの重みは、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って判断され、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って、N個のテンプレートにおける各テンプレートの重みを判断するステップを含むことができ、ここで、
は、現在のテンプレートTxとN個のテンプレートにおけるテンプレートTmとの間の歪みを示し、Sは、現在のテンプレートTxにおける画素領域の量を示し、σは、テンプレートスケーリング要因を示し、aおよびσは、0より大きい実数であり、wmは、テンプレートTmの重みを示し、テンプレートTmは、N個のテンプレートにおける任意のテンプレートである。aの値が、例えば、2、3、または4などの整数である場合、動作の複雑度は単純化される。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みが、N個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて判断されることは、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断することを含み、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、R(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmとの間の類似性についてのパラメータを示し、∂(R(i,j))は、R(i,j)に対応する画素領域スケーリング要因を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間には、線形関係または非線形関係が存在する。
例えば、∂(R(i,j))とR(i,j)との間の線形関係は、∂(R(i,j))=β*R(i,j)であり、ここで、βは、スケーリング係数であり、βは、0より大きい実数である。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、R(i,j)が範囲内にある距離間隔、および異なる値を有する画素領域スケーリング要因に対応する異なる距離間隔に基づいて、∂(R(i,j))の値が判断される。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a1はa2未満であり、a2はa3未満であり、b1は、b2未満であり、a1、a2、a3、b1、およびb2は、0より大きい実数である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a4はa5未満であり、a5はa6未満であり、a6はa7未満であり、b3はb4未満であり、b4はb5未満であり、a4、a5、a6、a7、b3、b4、およびb5は、0より大きい実数である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、ここで、a8はa9未満であり、a8、a9、およびb6は、0より大きい実数である。
上記の例は、∂(R(i,j))とR(i,j)との間の非線形関係が、区分関数関係とすることができることを示す。区分関数の区分量は、上記の例で示した2、3、または4に限定されるものではなく、当然、より大きくてもよい。
任意選択的に、本発明のいくつかの可能な実装態様において、R(i,j)は、例えば、d(i,j)またはe(i,j)に等しいとすることができ、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の判断された画素領域との間の距離を示し、e(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との比を示し、または座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との間の絶対差を示す。
例えば、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmにおける左上画素との間の距離を示すことができ、またはd(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離を示すことができ、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、画素yを除くテンプレートTm内の任意の画素との間の距離以下である。
任意選択的に、本発明のいくつかの可能な実装態様において、現在の画像ブロック内の画素領域の予測される画素値が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて計算されることが、以下の数式、すなわち、
を使用することによって、かつN個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算するステップを含み、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、pm(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値を示し、pre(i,j)は、座標が(i,j)であって、現在の画像ブロック内にある、画素領域の予測される画素値を示す。
座標が(i,j)である画素領域に対して、画素領域が複数の画素を含む場合、(i,j)におけるiとjとは、固定値ではなく特定の値の範囲内に収まることを理解することができる。
306.ビデオ符号化装置が、現在の画像ブロック内の画素領域の元の画素値と、現在の画像ブロック内の画素領域の予測される画素値とを使用することによって、現在の画像ブロックの予測残渣を取得する。
307.ビデオ符号化装置が、現在の画像ブロックの予測残渣を、ビデオビットストリームに書き込む。
この実施形態で提供される画像予測方法は、ビデオ符号化処理で適用することができ、またはビデオ復号化処理で適用することができる。
この実施形態における画像符号化解決策では、現在のテンプレートとの一致度が最も高いM個のテンプレートを判断した後、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートがM個のテンプレートからさらに判断され、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みが判断され、現在の画像ブロック内の画素領域の予測される画素値が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて計算されることを理解することができる。画素領域は、少なくとも1つの画素を含む。判断されたN個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なり、すなわち、同じテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。したがって、すべてのテンプレートに対応する画像ブロック内のすべての画素領域の重みが同じである(重みがすべて1である)従来技術の解決策は、破棄される。画素領域の重みの間に特定の差異が存在するので、これは実際の相関差に適合する可能性がより高い。このようにして、現在の画像ブロック内の画素領域の画素値が正確に予測され、ビデオ符号化および復号効率が改善される。
図4を参照すると、図4は、本発明の別の実施形態による別の画像予測方法の模式的なフローチャートである。図4に示すように、本発明の別の実施形態で提供されるビデオ復号化方法は、以下のステップを含むことができる。
401.ビデオ復号化装置が、現在のテンプレートとの一致度が最も高いM個のテンプレートを判断する。
Mは、指定値とすることができ、すなわち、現在のテンプレートと一致度が最も高いM個のテンプレートは、いくつかの候補テンプレートから選択することができる。例えば、現在のテンプレートと一致度が最も高い5個のテンプレートを、10個の候補テンプレートから判断することができる。当然、5個のテンプレートと現在のテンプレートとの間の一致度は、必ずしも等しくはないが、5個のテンプレートにおける任意のテンプレートと現在のテンプレートとの間の一致度は、5個のテンプレートを除く任意の候補テンプレートと現在のテンプレートとの間の一致度以上である。
現在のテンプレートは、現在の画像ブロックに対応するテンプレートである。M個のテンプレートは、現在の画像ブロックの基準画像を検索することによって得られる。Mは、正の整数である。
例えば、Mは、2、3、4、5、7、9、12、または別の値とすることができる。
402.ビデオ復号化装置が、M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断する。
例えば、所定の条件を満たすN個のテンプレートがM個のテンプレートから判断されることは、M個のテンプレートからN個のテンプレートを判断することを含み、N個のテンプレートの画素値と現在のテンプレートの画素値との間の歪みが閾値以下である。例えば、閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みに等しく、または閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みの調整値に等しい。当然、閾値は、別の所定の値とすることができる。スクリーニング閾値を導入して、スクリーニングにより、一致度が比較的低く、動作に関係しない、テンプレートを取得する助けとなり、その結果、予測精度が向上し、動作の複雑さが軽減されることが理解できる。
403.ビデオ復号化装置が、N個のテンプレートにおける各テンプレートの重みを判断する。
例えば、N個のテンプレートにおける各テンプレートの重みは、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って判断することができる。
404.ビデオ復号化装置が、N個のテンプレートにおける各テンプレートの重みに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断する。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートの重みと、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータとに基づいて判断することができる。
N個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。
本発明の各実施形態で言及される画素領域は、少なくとも1つの画素を含む。すなわち、画素領域は、1つの画素または1つの画素ブロックである可能性があり、画素領域が画素ブロックである場合、画素領域は、例えば、2×2、1×2、1×3、4×2、4×3、もしくは4×4、または別のサイズを有することができる。
N個のテンプレートにおけるテンプレートは、異なる画像ブロックに対応し、したがって、N個のテンプレートは、N個の画像ブロックに対応する。テンプレートはL型、または別の形状とすることができる。例えば、図1−dに示すように、画像ブロックに対応するテンプレートは、画像ブロックに隣接するL型画素領域とすることができる。例えば、図1−dにおいて、画像ブロックxに隣接するL型画素領域Txは、画像ブロックxに対応するテンプレートTxであり、画像ブロックm1に隣接するL型画素領域Tm1 は、画像ブロックm1に対応するテンプレートTm1 であり、画像ブロックm2に隣接するL型画素領域Tm2は、画像ブロックm2に対応するテンプレートTm2である。画像ブロックと、その画像ブロックに対応するテンプレートとの間には、何らの重なりも存在しないであろう。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに関連する可能性がある。2つの物体の間の類似性についてのパラメータは、2つの物体の間の類似性を表すために使用することができる。例えば、N個のテンプレートにおけるテンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性を表すために使用することができる。画像ブロックmは、テンプレートTmに対応する画像ブロックである。テンプレートTmは、N個のテンプレートにおける任意のテンプレートとすることができる。画素領域wは、画像ブロックm内の任意の画素領域である。
具体例では、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、例えば、画素領域wと、テンプレートTm内の判断された画素領域との間の距離とすることができ、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域の画素値との比、もしくはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と、画素領域wの画素値との間の絶対差とすることができる。すなわち、テンプレートTmに対応する画像ブロックm内の画素領域wの重みと、画素領域wとテンプレートTm内の判断された画素領域との間の距離との間に対応関係が存在するであろう。あるいは、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内の画素領域wの重みと、テンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との比か、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との間の絶対差との間には、対応関係が存在するであろう。
任意選択的に、本発明のいくつかの可能な実装態様において、上記のテンプレートTm内の判断された画素領域は、例えば、左上画素、左上画素領域、左下画素、左下画素領域、右上画素、右上画素領域、右下画素、右下画素領域、中央画素領域、中央画素、またはテンプレートTm内の別の画素領域とすることができる。
テンプレートTm内の左上画素領域は、テンプレートTm内の左上画素、またはテンプレートTm内にあり、テンプレートTm内の左上画素を含む、画素ブロックであり、テンプレートTm内の左下画素領域は、テンプレートTm内の左下画素、またはテンプレートTm内にあり、テンプレートTm内の左下画素を含む、画素ブロックであり、テンプレートTm内の右上画素領域は、テンプレートTm内の右上画素、またはテンプレートTm内にあり、テンプレートTm内の右上画素を含む、画素ブロックであり、テンプレートTm内の中央画素領域は、テンプレートTm内の中央画素、またはテンプレートTm内にあり、テンプレートTm内の中央画素を含む、画素ブロックである。
画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、例えば、画素領域w内の画素と、テンプレートTm内の判断された画素領域内の画素との間の距離とすることができ、2つの画素は、互いに最も近く、または画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、画素領域w内の任意の画素と、テンプレートTm内の判断された画素領域内の任意の画素との間の距離とすることができ、または画素領域wと、テンプレートTm内の判断された画素領域との距離は、画素領域w内の判断された画素(画素領域w内の判断された画素は、画素領域w内の左上画素、左下画素、右上画素、右下画素、または中央画素とすることができる)と、テンプレートTm内の判断された画素領域内の判断された画素(テンプレートTm内の判断された画素は、例えば、テンプレートTm内の左上画素、左下画素、右上画素、右下画素、または中央画素である)との間の距離とすることができる。当然、画素領域wとテンプレートTm内の判断された画素領域との間の距離は、別の方法で計算してもよい。
405.ビデオ復号化装置が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みと画素値とに基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算する。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータは、N個のテンプレートにおける各テンプレート内の判断された画素領域と、対応する画像ブロック内の画素領域との間の距離、および/またはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との比、もしくはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との間の絶対差を含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートの重みは、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って判断され、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って、N個のテンプレートにおける各テンプレートの重みを判断するステップを含むことができ、ここで、
は、現在のテンプレートTxとN個のテンプレートにおけるテンプレートTmとの間の歪みを示し、Sは、現在のテンプレートTxにおける画素領域の量を示し、σは、テンプレートスケーリング要因を示し、aおよびσは、0より大きい実数であり、wmは、テンプレートTmの重みを示し、テンプレートTmは、N個のテンプレートにおける任意のテンプレートである。aの値が、例えば、2、3、または4などの整数である場合、動作の複雑度は単純化される。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みが、N個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて判断されることは、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断することを含み、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、R(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmとの間の類似性についてのパラメータを示し、∂(R(i,j))は、R(i,j)に対応する画素領域スケーリング要因を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間には、線形関係または非線形関係が存在する。
例えば、∂(R(i,j))とR(i,j)との間の線形関係は、∂(R(i,j))=β*R(i,j)であり、ここで、βは、スケーリング係数であり、βは、0より大きい実数である。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、R(i,j)が範囲内にある距離間隔、および異なる値を有する画素領域スケーリング要因に対応する異なる距離間隔に基づいて、∂(R(i,j))の値が判断される。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a1はa2未満であり、a2はa3未満であり、b1は、b2未満であり、a1、a2、a3、b1、およびb2は、0より大きい実数である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a4はa5未満であり、a5はa6未満であり、a6はa7未満であり、b3はb4未満であり、b4はb5未満であり、a4、a5、a6、a7、b3、b4、およびb5は、0より大きい実数である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、ここで、a8はa9未満であり、a8、a9、およびb6は、0より大きい実数である。
上記の例は、∂(R(i,j))とR(i,j)との間の非線形関係が、区分関数関係とすることができることを示す。区分関数の区分量は、上記の例で示した2、3、または4に限定されるものではなく、当然、より大きくてもよい。
任意選択的に、本発明のいくつかの可能な実装態様において、R(i,j)は、例えば、d(i,j)またはe(i,j)に等しいとすることができ、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の判断された画素領域との間の距離を示し、e(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との比を示し、または座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との間の絶対差を示す。
例えば、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmにおける左上画素との間の距離を示すことができ、またはd(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離を示すことができ、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、画素yを除くテンプレートTm内の任意の画素との間の距離以下である。
任意選択的に、本発明のいくつかの可能な実装態様において、現在の画像ブロック内の画素領域の予測される画素値が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて計算されることが、以下の数式、すなわち、
を使用することによって、かつN個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算するステップを含み、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、pm(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値を示し、pre(i,j)は、座標が(i,j)であって、現在の画像ブロック内にある、画素領域の予測される画素値を示す。
座標が(i,j)である画素領域に対して、画素領域が複数の画素を含む場合、(i,j)におけるiとjとは、固定値ではなく特定の値の範囲内に収まることを理解することができる。
406.ビデオ復号化装置が、現在の画像ブロックの予測残渣を得るために、ビデオビットストリームを復号化する。
407.ビデオ復号化装置が、現在の画像ブロックの予測される画素値と現在の画像ブロックの予測残渣とを使用することによって、現在の画像ブロックを再構成する。
この実施形態における画像復号化解決策では、現在のテンプレートとの一致度が最も高いM個のテンプレートを判断した後、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートがM個のテンプレートからさらに判断され、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みが判断され、現在の画像ブロック内の画素領域の予測される画素値が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて計算されることを理解することができる。画素領域は、少なくとも1つの画素を含む。判断されたN個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なり、すなわち、同じテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。したがって、すべてのテンプレートに対応する画像ブロック内のすべての画素領域の重みが同じである(重みがすべて1である)従来技術の解決策は、破棄される。画素領域の重みの間に特定の差異が存在するので、これは実際の相関差に適合する可能性がより高い。このようにして、現在の画像ブロック内の画素領域の画素値が正確に予測され、ビデオ符号化および復号効率が改善される。
いくつかのテスト条件下で上記の解決策を実施することによって、性能が向上する。
条件1、すなわち、条件を満たすN個のテンプレートが候補テンプレートから直接判断されて、∂(R(i,j))とR(i,j)との間に線形関係(例えば、∂(R(i,j))=β*R(i,j)))が存在する適用状況において、各色成分に対する符号化効率は、Y−8.3%、U−7.8%、およびV−7.5%向上する。
条件2、すなわち、条件を満たすN個のテンプレートが候補テンプレートから直接判断されて、∂(R(i,j))とR(i,j)との間に区分関数関係が存在する適用状況において、各色成分に対する符号化効率は、Y−8.1%、U−7.4%、およびV−7.5%向上する。
条件3、すなわち、M個のテンプレートが候補テンプレートからまず判断されて、次いで、条件を満たすN個のテンプレートがM個のテンプレートから判断され、∂(R(i,j))とR(i,j)との間に線形関係(例えば、∂(R(i,j))=β*R(i,j)))が存在する適用状況において、各色成分に対する符号化効率は、Y−8.5%、U−8.0%、およびV−7.7%向上する。
ClassFシーケンスに基づくテストにより得られるレート−歪み性能向上効果を以下の表に示す。
テスト条件下で、符号化効率およびレート−歪み性能は、本発明の実施形態における解決策で、大きく向上することができることが理解されよう。
上記解決策を実現するために使用される関連装置を以下でさらに提供する。
図5を参照すると、本発明の一実施形態は画像予測装置500をさらに提供し、装置500は、
現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断するように構成された第1の判断ユニット510であって、現在のテンプレートが、現在の画像ブロックに対応するテンプレートであり、N個のテンプレートが、現在の画像ブロックの基準画像を検索することによって得られ、Nが正の整数である、第1の判断ユニット510と、
N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断する第2の判断ユニット520であって、N個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みが異なる、第2の判断ユニット520と、
N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測画素値を計算するように構成される、予測ユニット530であって、画素領域が少なくとも1つの画素を含む、予測ユニット530と、
を含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、第2の判断ユニット520が、
N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従ってN個のテンプレートにおける各テンプレートの重みを判断するように構成される、第1の判断サブユニットと、
N個のテンプレートにおける各テンプレートの重みおよびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータとに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するように構成される、第2の判断サブユニットとを含む。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータは、N個のテンプレートにおける各テンプレート内の判断された画素領域と、対応する画像ブロック内の画素領域との間の距離、および/またはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との比、もしくはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との間の絶対差を含む。
任意選択的に、本発明のいくつかの可能な実装態様において、第1の判断サブユニットは、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って、N個のテンプレートにおける各テンプレートの重みを判断するよう特に構成され、ここで、
は、現在のテンプレートTxとN個のテンプレートにおけるテンプレートTmとの間の歪みを示し、Sは、現在のテンプレートTxにおける画素領域の量を示し、σは、テンプレートスケーリング要因を示し、aおよびσは、0より大きい実数であり、wmは、テンプレートTmの重みを示し、テンプレートTmは、N個のテンプレートにおける任意のテンプレートである。
任意選択的に、本発明のいくつかの可能な実装態様において、第2の判断サブユニットが、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するよう特に構成され、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、R(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmとの間の類似性についてのパラメータを示し、∂(R(i,j))は、R(i,j)に対応する画素領域スケーリング要因を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間には、線形関係または非線形関係が存在する。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間の線形関係は、∂(R(i,j))=β*R(i,j)であり、ここで、βは、スケーリング係数であり、βは、0より大きい実数である。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間の非線形関係は、R(i,j)が範囲内にある距離間隔、および異なる値を有する画素領域スケーリング要因に対応する異なる距離間隔に基づいて、∂(R(i,j))の値が判断される。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間の非線形関係は、
であり、ここで、a1はa2未満であり、a2はa3未満であり、b1はb2未満であり、a1、a2、a3、b1、およびb2は0より大きい実数であり、または、
∂(R(i,j))とR(i,j)との間の非線形関係は、
であり、ここで、a4はa5未満であり、a5はa6未満であり、a6はa7未満であり、b3はb4未満であり、b4はb5未満であり、a4、a5、a6、a7、b3、b4、およびb5は0より大きい実数であり、または
∂(R(i,j))とR(i,j)との間の非線形関係は、
であり、ここで、a8はa9未満であり、a8、a9、およびb6は0より大きい実数である。
任意選択的に、本発明のいくつかの可能な実装態様において、R(i,j)は、d(i,j)またはe(i,j)に等しく、d(i,j)は、座標が、(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の判断された画素領域との間の距離を示し、e(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との比を示し、または座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との間の絶対差を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmにおける左上画素との間の距離を示し、またはd(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離を示し、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、画素yを除くテンプレートTm内の任意の画素との間の距離以下である。
任意選択的に、本発明のいくつかの可能な実装態様において、予測ユニット530は、以下の数式、すなわち、
を使用することによって、かつN個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算するよう特に構成され、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、pm(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値を示し、pre(i,j)は、座標が(i,j)であって、現在の画像ブロック内にある、画素領域の予測される画素値を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、第1の判断ユニット510が、現在のテンプレートとの一致度が最も高いM個のテンプレートを判断し、M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断するよう特に構成され、ここで、NはM未満である。
任意選択的に、本発明のいくつかの可能な実装態様において、第1の判断ユニット510は、現在のテンプレートとの一致度が最も高いM個のテンプレートを判断して、M個のテンプレートからN個のテンプレートを判断するよう特に構成され、ここで、N個のテンプレートの画素値と、現在のテンプレートの画素値との間の歪みは、閾値以下である。
任意選択的に、本発明のいくつかの可能な実装態様において、閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みに等しく、または閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みの調整値に等しい。
任意選択的に、本発明のいくつかの可能な実装態様において、画像予測装置は、ビデオ符号化装置に適用され、または画像予測装置は、ビデオ復号化装置に適用される。
この実施形態における画像予測装置500の機能モジュールの機能は、上記の方法実施形態における方法により具体的に実施することができることが理解されよう。特定の実施処理については、上記の方法実施形態での関連説明を参照されたい。詳細は、本明細書では再び説明しない。画像予測装置500は、ビデオを出力または再生するのに必要な任意の装置、例えば、ラップトップコンピュータ、タブレットコンピュータ、パーソナルコンピュータ、または携帯電話などのデバイスとすることができる。
現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断した後、この実施形態における画像予測装置500は、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断し、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算することを理解することができる。画素領域は、少なくとも1つの画素を含む。判断されたN個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なり、すなわち、同じテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。したがって、すべてのテンプレートに対応する画像ブロック内のすべての画素領域の重みが同じである(重みがすべて1である)従来技術の解決策は、破棄される。画素領域の重みの間に特定の差異が存在するので、これは実際の相関差に適合する可能性がより高い。このようにして、現在の画像ブロック内の画素領域の画素値が正確に予測され、ビデオ符号化および復号効率が改善される。
図6を参照すると、図6は、本発明の一実施形態による画像予測装置600の概略図である。画像予測装置600は、少なくとも1つのバス601、バス601に接続される少なくとも1つのプロセッサ602、およびバス601に接続される少なくとも1つのメモリ603を含むことができる。
プロセッサ602は、バス601を使用することによって、メモリ603に格納されたコードを呼び出して、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断し、ここで、現在のテンプレートが、現在の画像ブロックに対応するテンプレートであり、Nが正の整数であり、N個のテンプレートが、現在の画像ブロックの基準画像を検索することによって得られ、プロセッサ602はさらに、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断し、ここで、N個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みが異なり、プロセッサ602はさらに、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測画素値を計算し、ここで、画素領域が少なくとも1つの画素を含む。
例えば、Nは、1、2、3、4、5、7、9、12、または別の値とすることができる。
本発明の各実施形態で言及される画素領域は、少なくとも1つの画素を含む。すなわち、画素領域は、1つの画素または1つの画素ブロックである可能性があり、画素領域が画素ブロックである場合、画素領域は、例えば、2×2、1×2、1×3、4×2、4×3、もしくは4×4、または別のサイズを有することができる。
N個のテンプレートにおけるテンプレートは、異なる画像ブロックに対応し、したがって、N個のテンプレートは、N個の画像ブロックに対応する。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに関連する可能性がある。2つの物体の間の類似性についてのパラメータは、2つの物体の間の類似性を表すために使用することができる。例えば、N個のテンプレートにおけるテンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性を表すために使用することができる。画像ブロックmは、テンプレートTmに対応する画像ブロックである。テンプレートTmは、N個のテンプレートにおける任意のテンプレートとすることができる。画素領域wは、画像ブロックm内の任意の画素領域である。
具体例では、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、例えば、画素領域wと、テンプレートTm内の判断された画素領域との間の距離とすることができ、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域の画素値との比、もしくはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と、画素領域wの画素値との間の絶対差とすることができる。すなわち、テンプレートTmに対応する画像ブロックm内の画素領域wの重みと、画素領域wとテンプレートTm内の判断された画素領域との間の距離との間に対応関係が存在するであろう。あるいは、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内の画素領域wの重みと、テンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との比か、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との間の絶対差との間には、対応関係が存在するであろう。
任意選択的に、本発明のいくつかの可能な実装態様において、上記のテンプレートTm内の判断された画素領域は、例えば、左上画素、左上画素領域、左下画素、左下画素領域、右上画素、右上画素領域、右下画素、右下画素領域、中央画素領域、中央画素、またはテンプレートTm内の別の画素領域とすることができる。
テンプレートTm内の左上画素領域は、テンプレートTm内の左上画素、またはテンプレートTm内にあり、テンプレートTm内の左上画素を含む、画素ブロックであり、テンプレートTm内の左下画素領域は、テンプレートTm内の左下画素、またはテンプレートTm内にあり、テンプレートTm内の左下画素を含む、画素ブロックであり、テンプレートTm内の右上画素領域は、テンプレートTm内の右上画素、またはテンプレートTm内にあり、テンプレートTm内の右上画素を含む、画素ブロックであり、テンプレートTm内の中央画素領域は、テンプレートTm内の中央画素、またはテンプレートTm内にあり、テンプレートTm内の中央画素を含む、画素ブロックである。
画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、例えば、画素領域w内の画素と、テンプレートTm内の判断された画素領域内の画素との間の距離とすることができ、2つの画素は、互いに最も近く、または画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、画素領域w内の任意の画素と、テンプレートTm内の判断された画素領域内の任意の画素との間の距離とすることができ、または画素領域wと、テンプレートTm内の判断された画素領域との距離は、画素領域w内の判断された画素(画素領域w内の判断された画素は、画素領域w内の左上画素、左下画素、右上画素、右下画素、または中央画素とすることができる)と、テンプレートTm内の判断された画素領域内の判断された画素(テンプレートTm内の判断された画素は、例えば、テンプレートTm内の左上画素、左下画素、右上画素、右下画素、または中央画素である)との間の距離とすることができる。当然、画素領域wとテンプレートTm内の判断された画素領域との間の距離は、別の方法で計算してもよい。
任意選択的に、本発明のいくつかの可能な実装態様において、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートが、現在のテンプレートとの一致度が最も高いN個のテンプレートを判断することか、または現在のテンプレートとの一致度が最も高いM個のテンプレートを判断し、M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断することを含み、ここで、NはM未満である。
例えば、プロセッサ602は、M個のテンプレートからN個のテンプレートを判断するように構成され、ここで、N個のテンプレートの画素値と現在のテンプレートの画素値との間の歪みが閾値以下である。例えば、閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みに等しく、または閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みの調整値に等しい。当然、閾値は、別の所定の値とすることができる。スクリーニング閾値を導入して、スクリーニングにより、一致度が比較的低く、動作に関係しない、テンプレートを取得する助けとなり、その結果、予測精度が向上し、動作の複雑さが軽減されることが理解できる。
プロセッサ602によって、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断する多様な方法が存在するであろう。
例えば、プロセッサ602は、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するように構成され、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従ってN個のテンプレートにおける各テンプレートの重みを判断することと、N個のテンプレートにおける各テンプレートの重みおよびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータとに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断することとを含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータは、N個のテンプレートにおける各テンプレート内の判断された画素領域と、対応する画像ブロック内の画素領域との間の距離、および/またはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の判断された画素領域の画素値との比、もしくはN個のテンプレートにおける各テンプレート内の画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との間の絶対差を含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、プロセッサ602は、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って、N個のテンプレートにおける各テンプレートの重みを判断するように構成されることができ、ここで、
は、現在のテンプレートTxとN個のテンプレートにおけるテンプレートTmとの間の歪みを示し、Sは、現在のテンプレートTxにおける画素領域の量を示し、σは、テンプレートスケーリング要因を示し、aおよびσは、0より大きい実数であり、wmは、テンプレートTmの重みを示し、テンプレートTmは、N個のテンプレートにおける任意のテンプレートである。aの値が、例えば、2、3、または4などの整数である場合、動作の複雑度は単純化される。
任意選択的に、本発明のいくつかの可能な実装態様において、プロセッサ602は、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するように構成されることができ、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、R(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmとの間の類似性についてのパラメータを示し、∂(R(i,j))は、R(i,j)に対応する画素領域スケーリング要因を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間には、線形関係または非線形関係が存在する。
例えば、∂(R(i,j))とR(i,j)との間の線形関係は、∂(R(i,j))=β*R(i,j)であり、ここで、βは、スケーリング係数であり、βは、0より大きい実数である。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、R(i,j)が範囲内にある距離間隔、および異なる値を有する画素領域スケーリング要因に対応する異なる距離間隔に基づいて、∂(R(i,j))の値が判断される。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a1はa2未満であり、a2はa3未満であり、b1は、b2未満であり、a1、a2、a3、b1、およびb2は、0より大きい実数である。
例えば、a1=0.3、a2=0.5、およびa3=1である。例えば、b1=4およびb2=8である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a4はa5未満であり、a5はa6未満であり、a6はa7未満であり、b3はb4未満であり、b4はb5未満であり、a4、a5、a6、a7、b3、b4、およびb5は、0より大きい実数である。
例えば、a4=0.3、a5=0.5、a6=0.8、およびa7=1である。例えば、b3=4、b4=5、およびb5=6である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、ここで、a8はa9未満であり、a8、a9、およびb6は、0より大きい実数である。
例えば、a8=0.5およびa9=1である。例えば、b6=5である。
上記の例は、∂(R(i,j))とR(i,j)との間の非線形関係が、区分関数関係とすることができることを示す。区分関数の区分量は、上記の例で示した2、3、または4に限定されるものではなく、当然、より大きくてもよい。
任意選択的に、本発明のいくつかの可能な実装態様において、R(i,j)は、例えば、d(i,j)またはe(i,j)に等しいとすることができ、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の判断された画素領域との間の距離を示し、e(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との比を示し、または座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との間の絶対差を示す。
例えば、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmにおける左上画素との間の距離を示すことができ、またはd(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離を示すことができ、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、画素yを除くテンプレートTm内の任意の画素との間の距離以下である。
任意選択的に、本発明のいくつかの可能な実装態様において、プロセッサ602は、以下の数式、すなわち、
を使用することによって、かつN個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算するように構成されることができ、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、pm(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値を示し、pre(i,j)は、座標が(i,j)であって、現在の画像ブロック内にある、画素領域の予測される画素値を示す。
この実施形態における画像予測装置600の機能モジュールの機能は、上記の方法実施形態における方法により具体的に実施することができることが理解されよう。特定の実施処理については、上記の方法実施形態での関連説明を参照されたい。詳細は、本明細書では再び説明しない。画像予測装置600は、ビデオを出力または再生するのに必要な任意の装置、例えば、ラップトップコンピュータ、タブレットコンピュータ、パーソナルコンピュータ、または携帯電話などのデバイスとすることができる。
現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断した後、この実施形態における画像予測装置600は、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断し、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算することを理解することができる。画素領域は、少なくとも1つの画素を含む。判断されたN個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なり、すなわち、同じテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。したがって、すべてのテンプレートに対応する画像ブロック内のすべての画素領域の重みが同じである(重みがすべて1である)従来技術の解決策は、破棄される。画素領域の重みの間に特定の差異が存在するので、これは実際の相関差に適合する可能性がより高い。このようにして、現在の画像ブロック内の画素領域の画素値が正確に予測され、ビデオ符号化および復号効率が改善される。
図7を参照すると、図7は、本発明の別の実施形態による画像予測装置700の構造ブロック図である。画像予測装置700は、少なくとも1つのプロセッサ701、少なくとも1つのメモリ705、および少なくとも1つの通信バス702を含むことができる。通信バス702は、これらの構成要素の間の接続および通信を実現するように構成される。任意選択的に、画像予測装置700は、少なくとも1つのネットワークインターフェース704および/または少なくとも1つのユーザーインターフェース703を含むことができ、ユーザーインターフェース703は、ディスプレイ(例えば、タッチスクリーン、LCD、ホログラフィック(Holographic)イメージングデバイス、CRT、プロジェクタ((Projector))、クリックデバイス(例えば、マウス、トラックボール(trackball)、タッチパッド、タッチスクリーン)、カメラ、および/またはピックアップ装置を含むことができる。
メモリ705は、リード・オンリ・メモリおよびランダム・アクセス・メモリを含み、プロセッサ701に対して命令およびデータをもたらすことができる。メモリ705の一部は、不揮発性ランダム・アクセス・メモリをさらに含むことができる。
いくつかの実装態様において、メモリ705は、以下の要素、すなわち、実行可能モジュールもしくはデータ構造、または実行可能モジュールとデータ構造のサブセット、もしくは実行可能モジュールとデータ構造の拡張セットと、さまざまなシステムプログラムを含み、さまざまな基本サービスを実現して、ハードウェアベースのタスクを処理するように構成されるオペレーティングシステム7051と、さまざまなアプリケーションプログラムを含み、さまざまなアプリケーションサービスを実現するように構成されるアプリケーションモジュール7052とを格納する。
本発明のこの実施形態において、メモリ705に格納されたプログラムまたは命令を呼び出すことによって、プロセッサ701は、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断するように構成され、ここで、現在のテンプレートが、現在の画像ブロックに対応するテンプレートであり、Nが正の整数であり、N個のテンプレートが、現在の画像ブロックの基準画像を検索することによって得られ、プロセッサ701はさらに、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断するように構成され、ここで、N個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みが異なり、プロセッサ701はさらに、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測画素値を計算するように構成され、ここで、画素領域が少なくとも1つの画素を含む。
例えば、Nは、1、2、3、4、5、7、9、12、または別の値とすることができる。
本発明の各実施形態で言及される画素領域は、少なくとも1つの画素を含む。すなわち、画素領域は、1つの画素または1つの画素ブロックである可能性があり、画素領域が画素ブロックである場合、画素領域は、例えば、2×2、1×2、1×3、4×2、4×3、もしくは4×4、または別のサイズを有することができる。
N個のテンプレートにおけるテンプレートは、異なる画像ブロックに対応し、したがって、N個のテンプレートは、N個の画像ブロックに対応する。
例えば、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みは、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに関連する可能性がある。2つの物体の間の類似性についてのパラメータは、2つの物体の間の類似性を表すために使用することができる。例えば、N個のテンプレートにおけるテンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性を表すために使用することができる。画像ブロックmは、テンプレートTmに対応する画像ブロックである。テンプレートTmは、N個のテンプレートにおける任意のテンプレートとすることができる。画素領域wは、画像ブロックm内の任意の画素領域である。
具体例では、テンプレートTmと、画像ブロックm内の画素領域wとの間の類似性についてのパラメータは、例えば、画素領域wと、テンプレートTm内の判断された画素領域との間の距離とすることができ、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域の画素値との比、もしくはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と、画素領域wの画素値との間の絶対差とすることができる。すなわち、テンプレートTmに対応する画像ブロックm内の画素領域wの重みと、画素領域wとテンプレートTm内の判断された画素領域との間の距離との間に対応関係が存在するであろう。あるいは、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内の画素領域wの重みと、テンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との比か、またはテンプレートTm内の判断された画素領域の画素値の平均または加重平均と画素領域wの画素値との間の絶対差との間には、対応関係が存在するであろう。
任意選択的に、本発明のいくつかの可能な実装態様において、上記のテンプレートTm内の判断された画素領域は、例えば、左上画素、左上画素領域、左下画素、左下画素領域、右上画素、右上画素領域、右下画素、右下画素領域、中央画素領域、中央画素、またはテンプレートTm内の別の画素領域とすることができる。
テンプレートTm内の左上画素領域は、テンプレートTm内の左上画素、またはテンプレートTm内にあり、テンプレートTm内の左上画素を含む、画素ブロックであり、テンプレートTm内の左下画素領域は、テンプレートTm内の左下画素、またはテンプレートTm内にあり、テンプレートTm内の左下画素を含む、画素ブロックであり、テンプレートTm内の右上画素領域は、テンプレートTm内の右上画素、またはテンプレートTm内にあり、テンプレートTm内の右上画素を含む、画素ブロックであり、テンプレートTm内の中央画素領域は、テンプレートTm内の中央画素、またはテンプレートTm内にあり、テンプレートTm内の中央画素を含む、画素ブロックである。
画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、例えば、画素領域w内の画素と、テンプレートTm内の判断された画素領域内の画素との間の距離とすることができ、2つの画素は、互いに最も近く、または画素領域wと、テンプレートTm内の判断された画素領域との間の距離は、画素領域w内の任意の画素と、テンプレートTm内の判断された画素領域内の任意の画素との間の距離とすることができ、または画素領域wと、テンプレートTm内の判断された画素領域との距離は、画素領域w内の判断された画素(画素領域w内の判断された画素は、画素領域w内の左上画素、左下画素、右上画素、右下画素、または中央画素とすることができる)と、テンプレートTm内の判断された画素領域内の判断された画素(テンプレートTm内の判断された画素は、例えば、テンプレートTm内の左上画素、左下画素、右上画素、右下画素、または中央画素である)との間の距離とすることができる。当然、画素領域wとテンプレートTm内の判断された画素領域との間の距離は、別の方法で計算してもよい。
任意選択的に、本発明のいくつかの可能な実装態様において、現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートが、現在のテンプレートとの一致度が最も高いN個のテンプレートを判断することか、または現在のテンプレートとの一致度が最も高いM個のテンプレートを判断し、M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断することを含み、ここで、NはM未満である。
例えば、プロセッサ701が、M個のテンプレートから、所定の条件を満たすN個のテンプレートを判断することは、M個のテンプレートからN個のテンプレートを判断することを含み、N個のテンプレートの画素値と現在のテンプレートの画素値との間の歪みが閾値以下である。例えば、閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みに等しく、または閾値は、現在のテンプレートの画素値とM個のテンプレートの画素値との間の平均歪みの調整値に等しい。当然、閾値は、別の所定の値とすることができる。スクリーニング閾値を導入して、スクリーニングにより、一致度が比較的低く、動作に関係しない、テンプレートを取得する助けとなり、その結果、予測精度が向上し、動作の複雑さが軽減されることが理解できる。
プロセッサ701によって、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断する多様な方法が存在するであろう。
例えば、プロセッサ701が、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断することは、N個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従ってN個のテンプレートにおける各テンプレートの重みを判断することと、N個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断することとを含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、N個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータは、N個のテンプレートにおける各テンプレート内の判断された画素領域と、対応する画像ブロック内の画素領域との間の距離、および/またはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との比、もしくはN個のテンプレートにおける各テンプレート内の判断された画素領域の画素値の平均または加重平均と、対応する画像ブロック内の画素領域の画素値との間の絶対差を含むことができる。
任意選択的に、本発明のいくつかの可能な実装態様において、プロセッサ701は、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートと現在のテンプレートとの間の一致度に従って、N個のテンプレートにおける各テンプレートの重みを判断することができ、ここで、
は、現在のテンプレートTxとN個のテンプレートにおけるテンプレートTmとの間の歪みを示し、Sは、現在のテンプレートTxにおける画素領域の量を示し、σは、テンプレートスケーリング要因を示し、aおよびσは、0より大きい実数であり、wmは、テンプレートTmの重みを示し、テンプレートTmは、N個のテンプレートにおける任意のテンプレートである。aの値が、例えば、2、3、または4などの整数である場合、動作の複雑度は単純化される。
任意選択的に、本発明のいくつかの可能な実装態様において、プロセッサ701は、以下の数式、すなわち、
に基づいて、かつN個のテンプレートにおける各テンプレートの重み、およびN個のテンプレートにおける各テンプレートと、対応する画像ブロック内の画素領域との間の類似性についてのパラメータに基づいて、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断することができ、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、R(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmとの間の類似性についてのパラメータを示し、∂(R(i,j))は、R(i,j)に対応する画素領域スケーリング要因を示す。
任意選択的に、本発明のいくつかの可能な実装態様において、∂(R(i,j))とR(i,j)との間には、線形関係または非線形関係が存在する。
例えば、∂(R(i,j))とR(i,j)との間の線形関係は、∂(R(i,j))=β*R(i,j)であり、ここで、βは、スケーリング係数であり、βは、0より大きい実数である。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、R(i,j)が範囲内にある距離間隔、および異なる値を有する画素領域スケーリング要因に対応する異なる距離間隔に基づいて、∂(R(i,j))の値が判断される。
例えば、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a1はa2未満であり、a2はa3未満であり、b1は、b2未満であり、a1、a2、a3、b1、およびb2は、0より大きい実数である。
例えば、a1=0.3、a2=0.5、およびa3=1である。例えば、b1=4およびb2=8である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、a4はa5未満であり、a5はa6未満であり、a6はa7未満であり、b3はb4未満であり、b4はb5未満であり、a4、a5、a6、a7、b3、b4、およびb5は、0より大きい実数である。
例えば、a4=0.3、a5=0.5、a6=0.8、およびa7=1である。例えば、b3=4、b4=5、およびb5=6である。
別の例の場合、∂(R(i,j))とR(i,j)との間の非線形関係は、
とすることができ、ここで、a8はa9未満であり、a8、a9、およびb6は、0より大きい実数である。
例えば、a8=0.5およびa9=1である。例えば、b6=5である。
上記の例は、∂(R(i,j))とR(i,j)との間の非線形関係が、区分関数関係とすることができることを示す。区分関数の区分量は、上記の例で示した2、3、または4に限定されるものではなく、当然、より大きくてもよい。
任意選択的に、本発明のいくつかの可能な実装態様において、R(i,j)は、例えば、d(i,j)またはe(i,j)に等しいとすることができ、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の判断された画素領域との間の距離を示し、e(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との比を示し、または座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値と、テンプレートTmの平均画素値または加重平均画素値との間の絶対差を示す。
例えば、d(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTmにおける左上画素との間の距離を示すことができ、またはd(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離を示すことができ、座標が(i,j)であって、画像ブロックm内にある、画素領域と、テンプレートTm内の画素yとの間の距離は、座標が(i,j)であって、画像ブロックm内にある、画素領域と、画素yを除くテンプレートTm内の任意の画素との間の距離以下である。
任意選択的に、本発明のいくつかの可能な実装態様において、プロセッサ701は、以下の数式、すなわち、
を使用することによって、かつN個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算することができ、
ここで、wm(i,j)は、座標が(i,j)であって、N個のテンプレートにおけるテンプレートTmに対応する画像ブロックm内にある、画素領域の重みを示し、pm(i,j)は、座標が(i,j)であって、画像ブロックm内にある、画素領域の画素値を示し、pre(i,j)は、座標が(i,j)であって、現在の画像ブロック内にある、画素領域の予測される画素値を示す。
この実施形態における画像予測装置700の機能モジュールの機能は、上記の方法実施形態における方法により具体的に実施することができることが理解されよう。特定の実施処理については、上記の方法実施形態での関連説明を参照されたい。詳細は、本明細書では再び説明しない。画像予測装置700は、ビデオを出力または再生するのに必要な任意の装置、例えば、ラップトップコンピュータ、タブレットコンピュータ、パーソナルコンピュータ、または携帯電話などのデバイスとすることができる。
現在のテンプレートとの一致度が所定の条件を満たすN個のテンプレートを判断した後、この実施形態における画像予測装置700は、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みを判断し、N個のテンプレートにおける各テンプレートに対応する画像ブロック内の画素領域の重みおよび画素値に基づいて、現在の画像ブロック内の画素領域の予測される画素値を計算することを理解することができる。画素領域は、少なくとも1つの画素を含む。判断されたN個のテンプレートにおける少なくとも1つのテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なり、すなわち、同じテンプレートに対応する画像ブロック内の少なくとも2つの画素領域の重みは異なる。したがって、すべてのテンプレートに対応する画像ブロック内のすべての画素領域の重みが同じである(重みがすべて1である)従来技術の解決策は、破棄される。画素領域の重みの間に特定の差異が存在するので、これは実際の相関差に適合する可能性がより高い。このようにして、現在の画像ブロック内の画素領域の画素値が正確に予測され、ビデオ符号化および復号効率が改善される。
説明を簡単にするために、上記の方法の実施形態は、一連の動作として表されることに留意されたい。しかしながら、本発明によれば、いくつかのステップを他のシーケンスで実行してもよいし、同時に実行してもよいので、本発明は記載された動作シーケンスに限定されないことを当業者は理解すべきである。さらに、当業者であれば、本明細書に記載されたすべての実施形態が実現可能な実施形態であり、関連する動作およびモジュールは、必ずしも本発明に必須ではないことを理解すべきである。
上記の実施形態において、すべての実施形態は、それぞれが説明の重点を有する。ある実施形態で詳細に説明されない部分に対して、他の実施形態での関連説明を参照する。
本発明において提供された実施形態において、開示した装置は、他の方法で実現してもよいことを理解すべきである。例えば、説明した装置実施形態は、単なる例である。例えば、ユニット区分は、単なる論理機能区分であり、実際の実装において、他の区分としてもよい。例えば、複数のユニットまたは構成要素を、別のシステムに組み合わせるか、または統合してもよく、またはいくつかの機能を無視するか、または実行しなくてもよい。さらに、表示または説明した相互結合または直接結合または通信接続は、何らかのインターフェースを介して実現してもよい。装置またはユニット間の間接結合または通信接続は、電気的または他の形式で実現することができる。
別々の部品として説明したユニットは、物理的に別々のものとしてもよいし、しなくてもよく、ユニットとして説明した部品は、物理的ユニットとしてもよいし、しなくてもよく、一箇所に配置してもよいし、複数のネットワークユニット上に分散させてもよい。いくつかの、またはすべてのユニットは、本実施形態の解決策の目的を達成するために、実際の必要性に従って選択することができる。
さらに、本発明の実施形態における機能ユニットは、1つの処理ユニットに統合してもよく、またはユニットのそれぞれは、物理的に独立して存在してもよく、または2つ以上のユニットが1つのユニットに統合される。統合されたユニットは、ハードウェアの形態で実装してもよく、またはソフトウェア機能ユニットの形態で実装してもよい。
上記の統合されたユニットが、ソフトウェア機能ユニットの形式で実装され、および独立の製品として販売もしくは使用される場合、統合されたユニットは、コンピュータ読込み可能ストレージ媒体に格納してもよい。そのような理解に基づいて、本発明の本質的な技術的解決策、または先行技術に起因する部分、または技術的解決策のすべてもしくは一部は、ソフトウェア製品の形態で実現してもよい。ソフトウェア製品は、ストレージ媒体に格納され、コンピュータデバイス(パーソナルコンピュータ、サーバ、またはネットワークデバイスとしてもよい)に指示して、本発明の実施形態で説明した方法のステップのすべてまたは一部を実行する命令を含む。上記のストレージ媒体は、プログラムコードを格納することができる何らかの媒体を含み、そのような媒体には、USBフラッシュドライブ、リード・オンリ・メモリ(ROM、Read-Only Memory)、ランダム・アクセス・メモリ(RAM、Random Access Memory)、リムーバブルハードディスク磁気ディスク、または光学ディスクなどがある。
上記の実施形態は、本発明の技術的解決策を説明するために記述したものに過ぎず、本発明を限定するためのものではない。本発明が上記の実施形態により詳細に説明されたが、本発明の実施形態の技術的解決策の精神および範囲から逸脱することなく、上記の実施形態で説明した技術的解決策にさらに修正することができること、またはそのいくつかの技術的特徴と同等の代替物を生成できることを、当業者は理解すべきである。