(57)【要約】  複数基準フレーム動き推定（ＭＲＦＭＥ）において複数の基準フレームを使用する場合の計算量を所望の性能レベルで評価することのできる、ビデオ符号化における動き推定のための効率のよい時間探索範囲予測が提供される。これについては、通常の動き推定またはＭＲＦＭＥを使用することの利得を求め、ＭＲＦＭＥが選択される場合には、フレームの数を決定することができる。よって、少なくとも性能において閾値利得を提供する場合には、ＭＲＦＭＥの計算量および／または大きい時間探索範囲を利用することができる。逆に、ＭＲＦＭＥの計算量がビデオブロック予測に十分な利益をもたらさない場合には、より小さい時間探索範囲（より少数の基準フレーム）を使用することができ、または、ＭＲＦＭＥより優先して通常の動き編集を選択することができる。
2011510598.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ符号化において動き推定を提供するシステムであって、
ビデオブロックに関連する複数の基準フレームを提供する基準フレームコンポーネントと、
少なくとも一部は、前記複数の基準フレームのうちの１つまたは複数を利用することの性能利得を、少なくとも一部は前記複数の基準フレームの残留エネルギーに基づいて計算することに基づいて、動き推定（ＭＥ）または複数基準フレームＭＥ（ＭＲＦＭＥ）のために現在の時間探索範囲を決定する利得計算コンポーネントと
を備えるシステム。
【請求項２】
少なくとも一部は、ＭＥまたはＭＲＦＭＥを前記現在の時間探索範囲で利用して予測される前記ビデオブロックに基づいて動き補償残渣を符号化するビデオ符号化コンポーネントをさらに備える、請求項１に記載のシステム。
【請求項３】
前記ビデオブロックの最善の動きベクトルであり、前記動きベクトルが整数画素動きベクトルである場合に前記現在の時間探索範囲を決定するのに使用される前記動きベクトルを計算する動きベクトルコンポーネントをさらに備える、請求項１に記載のシステム。
【請求項４】
前記複数の基準フレームの１つまたは複数についての前記残留エネルギーσｒ２（ｋ）が、ｋを前記時間探索範囲のサイズとし、Ｃｔを前記ビデオブロックと前記複数の基準フレームのうちの１つとの間の時間的変化の変量の増加率とし、Ｃｓをｋ−不変パラメータとし、少なくとも一部は線形残渣モデル
σｒ２（ｋ）＝ＣＳ＋Ｃｔ＊ｋ
に基づいて計算される、請求項１に記載のシステム。
【請求項５】
前記性能利得Ｇは、
【数１】
2011510598.tif 000052
を使用して計算され、式中、
【数２】
2011510598.tif 000053
は、第１の基準フレームに対応する平均二乗残渣であり、
【数３】
2011510598.tif 000054
は、前記ビデオブロック中の残渣の平均値であり、γは構成されたパラメータである、請求項４に記載のシステム。
【請求項６】
少なくとも一部はシミュレーション結果または前の利得計算に基づいてγの値を推論する推論コンポーネントをさらに備える、請求項５に記載のシステム。
【請求項７】
前記利得計算コンポーネントはさらに、ＭＲＦＭＥのために、追加の基準フレームを含むより大きい時間探索範囲を利用することの性能利得を計算する、請求項４に記載のシステム。
【請求項８】
より大きい時間探索範囲を利用することの前記性能利得は、
【数４】
2011510598.tif 000055
を基準フレームｋ−１に対応する平均二乗残渣とし、
【数５】
2011510598.tif 000056
を基準フレームｋに対応する平均二乗残渣とし、
【数６】
2011510598.tif 000057
を使用して計算される、請求項７に記載のシステム。
【請求項９】
予測ビデオブロック符号化において動きを推定する方法であって、
ビデオブロックを予測する際に１つまたは複数の前の基準フレームを使用することの性能の利得を計算するステップと、
前記計算された性能利得に基づいて、動き推定において利用すべきいくつかの基準フレームを含む時間探索範囲を決定するステップと、
前記ビデオブロックにおける動きを推定するために、前記基準フレームの時間探索範囲を利用して前記ビデオブロックを予測するステップと
を含む方法。
【請求項１０】
前記ビデオブロックの最善の動きベクトルを計算するステップであって、前記動きベクトルが整数画素動きベクトルである場合に前記時間探索範囲を決定するのに使用される前記最善の動きベクトルを計算するステップとをさらに備える、請求項９に記載の方法。
【請求項１１】
前記計算するステップは、少なくとも一部は、前記１つまたは複数の前の基準フレームの残留エネルギーを評価することに基づいて前記性能利得を計算するステップを含む、請求項９に記載の方法。
【請求項１２】
ｋを前記時間探索範囲のサイズとし、Ｃｔを前記ビデオブロックと前記少なくとも１つの前の基準フレームとの間の時間的変化の変量の増加率とし、Ｃｓをｋ−不変パラメータとし、少なくとも一部は線形残渣モデル
σｒ２（ｋ）＝ＣＳ＋Ｃｔ＊ｋ
に基づいて、前記前の基準フレームの少なくとも１つについての前記残留エネルギーσｒ２（ｋ）を計算することを含む、請求項１１に記載の方法。
【請求項１３】
前記計算するステップは、動き推定に複数の基準フレームを使用することの前記性能利得Ｇを、
【数７】
2011510598.tif 000058
を使用して計算するステップを含み、式中、
【数８】
2011510598.tif 000059
は、前記１つまたは複数の前の基準フレームの第１の基準フレームに対応する平均二乗残渣であり、
【数９】
2011510598.tif 000060
は、前記ビデオブロック中の残渣の平均値であり、γは構成されたパラメータである、請求項１２に記載の方法。
【請求項１４】
少なくとも一部はシミュレーション結果または前の利得計算から調整することに基づいてγの値を推論するステップをさらに備える、請求項１３に記載の方法。
【請求項１５】
前記計算するステップは、２フレームを超える時間探索範囲を利用することの性能利得を、
【数１０】
2011510598.tif 000061
を基準フレームｋ−１に対応する平均二乗残渣とし、
【数１１】
2011510598.tif 000062
を基準フレームｋに対応する平均二乗残渣とし、
【数１２】
2011510598.tif 000063
を使用して計算するステップを含む、請求項１２に記載の方法。
【請求項１６】
前記計算するステップは、前記利得が指定の閾値を満たすことができなくなるまでより大きい時間探索範囲の性能利得を計算するステップを含む、請求項１５に記載の方法。
【請求項１７】
所望の符号化サイズから前記閾値を推論するステップをさらに備える、請求項１６に記載の方法。
【請求項１８】
予測ビデオブロック符号化において動きを推定するシステムであって、
ビデオブロックを予測するのに、単一基準フレーム動き推定（ＭＥ）または複数基準フレーム動き推定（ＭＲＦＭＥ）を利用することの性能利得を計算する手段と、
前記計算された性能利得に従い、ＭＥまたはＭＲＦＭＥを利用して前記ビデオブロックを予測する手段と
を備えるシステム。
【請求項１９】
ＭＲＦＭＥにおいていくつかの基準フレームを利用すること、または前記いくつかの基準フレームに加えて１つもしくは複数の追加基準フレームを利用することの性能利得を計算する手段と、
前記いくつかのフレームを利用してＭＲＦＭＥにおいて閾値を超える利得を得る手段と
をさらに備える、請求項１８に記載のシステム。
【請求項２０】
前記性能利得計算は、少なくとも一部は、１つまたは複数の基準フレームの動き補償残渣の線形モデルに基づくものである、請求項１８に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
以下の説明は一般にディジタルビデオ符号化に関し、より詳細には、時間探索範囲の１つまたは複数の基準フレームを使用した動き推定の技法に関する。
【背景技術】
【０００２】
コンピュータおよびネットワーキング技術が、高コストで低性能なデータ処理システムから低コストで高性能な通信、問題解決、および娯楽システムへと発展したことにより、オーディオ信号およびビデオ信号を、コンピュータまたは他の電子機器においてディジタル方式で記憶させ、送信する必要および需要が高まっている。例えば、コンピュータユーザは、パーソナルコンピュータ上で毎日オーディオおよびビデオを再生／記録することができる。この技術を円滑に行わせるために、オーディオ／ビデオ信号を１つまたは複数のディジタル形式に符号化することができる。パーソナルコンピュータを使用して、ビデオカメラ、ディジタルカメラ、オーディオレコーダなどといったオーディオ／ビデオ取込み機器からの信号をディジタル方式で符号化することができる。加えて、または代わりに、これらの機器自体がディジタルメディアに記憶するために信号を符号化することもできる。ディジタル方式で記憶され、符号化された信号は、コンピュータまたは他の電子機器上で再生するために復号することができる。符号器／復号器は、ＭＰＥＧ（Moving Picture Experts Group）形式（ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４など）などを含む様々な形式を使用して、ディジタルアーカイブ、編集、および再生を行うことができる。
【０００３】
さらに、これらの形式を使用し、コンピュータネットワークを介して機器間でディジタル信号を送信することもできる。例えば、コンピュータと、ディジタル加入者線（ＤＳＬ）、ケーブル、Ｔ１／Ｔ３などといった高速ネットワークとを利用して、コンピュータユーザは、世界中のシステム上にあるディジタルビデオコンテンツにアクセスし、および／またはこれをストリーミングすることができる。こうしたストリーミングのための帯域幅は通常、ローカルアクセスの帯域幅ほどの大きさはなく、低コストの処理能力は増加し続けているため、符号器／復号器は、多くの場合、信号を送信するのに必要とされる帯域幅の量を減らすために、符号化／復号ステップにおいてより多くの処理を求めようとする。
【０００４】
したがって、動き推定（ＭＥ）といった、前の基準フレームに基づく画素または領域の予測を提供して、帯域幅で送信されるべき画素／領域情報の量を低減するための符号化／復号の方法が開発されている。通常この方法では、予測誤り（動き補償残渣など）だけを符号化すればよい。時間探索範囲を複数の前の基準フレームまで拡張する（複数基準フレーム動き推定（ＭＲＦＭＥ）など）ための、Ｈ．２６４といった規格が公開されている。しかし、ＭＲＦＭＥで利用されるフレーム数が増加するに従って、これの計算量も増加する。
【発明の概要】
【課題を解決するための手段】
【０００５】
以下に、本明細書で示すいくつかの態様の基本的な理解を提供するための簡略化した概要を示す。この概要は、包括的な概説ではなく、本明細書で示す様々な態様の主要な／不可欠の要素を識別するためのものでも、その範囲を正確に叙述するためのものでもない。この概要の唯一の目的は、後述するより詳細な説明への前段としていくつかの概念を簡略化した形で提示することである。
【０００６】
単一基準フレーム動き推定（ＭＥ）もしくは複数基準フレーム動き推定（ＭＲＦＭＥ）を使用することの利得を求め、および／またはＭＲＦＭＥにおけるフレームの数を決定することのできる、ビデオ符号化における可変フレーム動き推定が提供される。この利得が所望の閾値を満たし、またはこれを超える場合、適切なＭＥまたはＭＲＦＭＥを利用してビデオブロックを予測することができる。利得の決定または計算は、評価される各基準フレームにわたる動き補償残渣の線形モデルに基づくものとすることができる。これについては、ＭＲＦＭＥによって動きを推定する効率のよい方法を生み出すために、ＭＲＦＭＥを利用することの性能利得とその計算量とを均衡させることができる。
【０００７】
例えば、評価されるべきビデオブロックよりも時間的に前にある第１の基準フレームから開始して、基準フレームの動き補償残渣が、そのビデオブロックと比べて、所与の利得閾値を満たし、またはこれを超える場合、通常のＭＥではなく、ＭＲＦＭＥを行うことができる。後続の基準フレームの動き補償残渣が、前の基準フレームと比べて、同じ、または別の閾値を満たす場合、次の基準フレームを用いてＭＲＦＭＥを行うことができ、次のフレームを追加することの利得が、所与の閾値に従い、ＭＲＦＭＥの計算量によって正当化されなくなるまで、以下同様に行うことができる。
【０００８】
前述の目的および関連する目的を達成するために、本明細書では、いくつかの例示的態様を、以下の説明および添付の図面と関連付けて説明する。これらの態様は、実施し得る様々な方途を示すものであり、これらの方途すべてが本発明においてカバーされるべきものである。他の利点および新規の特徴は、以下の詳細な説明を、図面と併せて考察すれば明らかになるはずである。
【図面の簡単な説明】
【０００９】
【図１】ビデオを符号化するために動きを推定する例示的システムを示すブロック図である。
【図２】１つまたは複数の基準フレームを使用して動きを推定することの利得を評価する例示的システムを示すブロック図である。
【図３】ビデオブロックの動きベクトルを計算し、１つまたは複数の基準フレームを使用してビデオブロックの動きを推定することの利得を求める例示的システムを示すブロック図である。
【図４】推論を利用して動きを推定し、および／またはビデオを符号化する例示的システムを示すブロック図である。
【図５】１つまたは複数の基準フレームを利用することの利得に基づいて動きを推定することを示す例示的流れ図である。
【図６】１つまたは複数のビデオブロックの残留エネルギーを比較して時間探索範囲を決定することを示す例示的流れ図である。
【図７】動き推定に１つまたは複数の基準フレームを使用することによる計算された利得に基づいて時間探索範囲を決定することを示す例示的流れ図である。
【図８】適切な動作環境を示す概略的ブロック図である。
【図９】コンピューティング環境の例を示す概略的ブロック図である。
【発明を実施するための形態】
【００１０】
動き補償残渣の線形モデルに基づく複数基準フレーム動き推定（ＭＲＦＭＥ）のための効率のよい時間探索範囲予測が提供される。例えば、ＭＲＦＭＥにおいてより多数またはより少数の基準フレームを探索することの利得は、所与の領域、画素、またはフレームの他の部分について現在の残渣を利用することによって推定することができる。時間探索範囲は、推定に基づいて決定することができる。したがって、フレームの所与の部分について、ＭＲＦＭＥにいくつかの前の基準フレームを使用することの、ＭＲＦＭＥのコストおよび計算量に優る利点を、評価することができる。これについては、ＭＲＦＭＥが使用されるときに所与の閾値を上回る利得を有する部分について、ＭＲＦＭＥを利用することができる。ＭＲＦＭＥは（特に基準フレームの数が増加するにつれて）計算集約的となり得るため、ＭＲＦＭＥが利得閾値に従って有利であるときに、ＭＲＦＭＥを通常のＭＥより優先して使用することができる。
【００１１】
一例では、利得が閾値以上であるときに、ＭＲＦＭＥを通常のＭＥより優先して利用することができる。しかし、別の例では、所与の部分についてＭＲＦＭＥで使用される基準フレームの数を、その基準フレームの数についてのＭＲＦＭＥの利得計算に基づいて調整することができる。フレームの数は、例えば、所与の部分が符号化／復号に際して計算集約度と正確さまたは性能の最適な均衡に達するように調整することができる。さらに利得は、例えば、ＭＲＦＭＥの平均ピーク信号対雑音比（ＰＳＮＲ）（またはＭＲＦＭＥで利用される基準フレームの数）に対する、通常のＭＥまたはより短い時間探索範囲（ＭＲＦＭＥで利用されるより少数の基準フレームなど）の平均ＰＳＮＲにも関連し得る。
【００１２】
次に、本開示の様々な態様を、添付の図面を参照して説明する。図面全体を通じて、類似の番号は類似の要素または対応する要素を指す。しかし、図面および図面に関連する詳細な説明は、特許請求される主題を開示の特定の形だけに限定するためのものではないことを理解されたい。むしろ、その目的は、特許請求される主題の趣旨および範囲内に該当するすべての改変形態、均等物、および代替形態を網羅することである。
【００１３】
次に各図を見ると、図１には、ディジタル方式でビデオを符号化／復号するための動きの推定を円滑に行わせるシステム１００が示されている。１つまたは複数の基準フレームを利用してビデオブロックを予測することのできる動き推定コンポーネント１０２と、少なくとも一部は予測されたブロックに基づいてディジタル形式との間でビデオを符号化／復号するビデオ符号化コンポーネント１０４が設けられている。ブロックは、例えば、画素や、画素の集合体とすることもでき、実質的にはビデオフレームのどんな部分とすることもできることを理解されたい。例えば、符号化のためのフレームまたはブロックを受け取ると、動き推定コンポーネント１０２は、１つまたは複数の前のビデオブロックまたはフレームを評価して、予測誤りだけが符号化されればよいように、現在のビデオブロックまたはフレームを予測することができる。ビデオ符号化コンポーネント１０４は、後に続く復号のために、ブロック／フレームの動き補償残渣である予測誤りを符号化することができる。これは、一例では、少なくとも一部はＨ．２６４符号化規格を使用して達成することができる。
【００１４】
Ｈ．２６４符号化規格を利用することによって、この規格の諸機能を、本明細書で示す各態様によって効率性を高めながら活用することができる。例えば、ビデオ符号化コンポーネント１０４は、Ｈ．２６４規格を利用して、動き推定コンポーネント１０２による動き推定のための可変ブロックサイズを選択することができる。ブロックサイズの選択は、構成設定、あるブロックサイズの他のサイズに優る推定性能利得などに基づいて行うことができる。さらに、Ｈ．２６４規格は、動き推定コンポーネント１０２がＭＲＦＭＥを行うのにも使用することができる。加えて、動き推定コンポーネント１０２は、所与のブロックについて動き推定を求めるために、いくつかの基準フレームを使用してＭＲＦＭＥを行うことの利得、および／または（１つの基準フレームを用いて）通常のＭＥを行うことの利得を計算することもできる。前述のように、ＭＲＦＭＥは、利用される基準フレームの数（時間探索範囲など）が増加するに従って計算集約的となる可能性があり、そうした使用されるフレーム数の増加は、動き予測に際してわずかな利益しかもたらさない場合もある。よって、動き推定コンポーネント１０２は、所与のブロックについて効率のよい動き推定を提供するために、以下ＭＲＦＧａｉｎと呼ぶ利得に基づいて、ＭＲＦＭＥにおける時間探索範囲の計算集約度と、正確さおよび／または性能との均衡を保つことができる。
【００１５】
一例においてＭＲＦＧａｉｎは、動き推定コンポーネント１０２により、少なくとも一部は所与のブロックの動き補償残渣に基づいて計算することができる。前述のように、これは、選択されたＭＥまたはＭＲＦＭＥに基づく所与のブロックについての予測誤りとすることができる。例えば、ビデオブロックの複数の基準フレームを探索するためのＭＲＦＧａｉｎが小さい場合、さらに次の前の基準フレームを利用するプロセスは、高い計算量を生じるが、わずかな性能改善しかもたらすことができない。これについては、より小さい時間探索範囲を利用する方が望ましい可能性がある。逆に、ビデオブロックのＭＲＦＧａｉｎが大きい（または例えばある閾値を超える）場合、時間探索範囲を広げることは、計算量の増加を正当化するに足る、より大きな利益を生ずることができる。この場合には、より大きい時間探索範囲を利用することができる。動き推定コンポーネント１０２および／またはビデオ符号化コンポーネント１０４の機能は、様々なコンピュータおよび／または電子部品において実施することができることを理解されたい。
【００１６】
一例において、動き推定コンポーネント１０２、ビデオ符号化コンポーネント１０４、および／またはこれらの機能は、ビデオの編集および／または再生に際して利用される機器において実施することができる。そうした機器は、一例では、信号ブロードキャスト技術、記憶技術、（ネットワーキング技術などといった）会話サービス、メディアストリーミングおよび／またはメッセージングサービスなどにおいて、伝送に必要とされる帯域幅を最小化するためにビデオの効率的な符号化／復号を提供するのに利用することができる。よって一例では、より低い帯域幅容量に対応するローカル処理能力により重点を置くことができる。
【００１７】
図２を参照すると、いくつかの基準フレームを用いてＭＲＦＭＥを利用することの利得を計算するシステム２００が示されている。ビデオブロックおよび／またはブロックの動き補償残渣を予測するための動き推定コンポーネント１０２が設けられている。また、伝送および／または復号のために、ビデオのフレームまたはブロックを（ＭＥの予測誤りなどとして）符号化するためのビデオ符号化コンポーネント１０４も設けられている。動き推定コンポーネント１０２は、所与のビデオブロックの動きを推定する際に、基準フレームコンポーネント２０４からの１つまたは複数の基準フレームを使用することの評価可能な利点を判定することができるＭＲＦＧａｉｎ計算コンポーネント２０２を含むことができる。例えば、動き推定によって予測されるべきビデオブロックまたはフレームを受け取ると、ＭＲＦＧａｉｎ計算コンポーネント２０２は、そのビデオブロックの効率のよい動き推定を提供するために、ＭＥまたはＭＲＦＭＥを利用することの利得（および／またはＭＲＦＭＥで使用すべき基準フレームの数）を求めることができる。ＭＲＦＧａｉｎ計算コンポーネント２０２は、基準フレームコンポーネント２０４を活用して、いくつかの前の基準フレームを取り出し、および／またはこれらを使用することの効率性を評価することができる。
【００１８】
前述のように、ＭＲＦＧａｉｎ計算コンポーネント２０２は、より短い時間探索範囲とより長い時間探索範囲とのＭＲＦＧａｉｎを計算することができ、次いで動き推定コンポーネント１０２がそれを利用して、選択された推定の性能利得およびその計算量を考慮した均衡のとれた動き推定を決定することができる。さらに前述のように、時間探索範囲は、少なくとも一部は、所与のブロックまたはフレームについての動き補償残渣（または予測誤り）の線形モデルに基づいて選択することができる（したがってＭＲＦＧａｉｎを計算することができる）。
【００１９】
例えば、そのビデオ符号化が求められている現在のフレームまたはブロックをＦと仮定すると、前のフレームは、｛Ｒｅｆ（１），Ｒｅｆ（２），…Ｒｅｆ（ｋ），…｝で表すことができ、ｋはＦと基準フレームＲｅｆ（ｋ）の間の時間的距離である。よって、Ｆ中の画素ｓが与えられた場合、ｐ（ｋ）で、Ｒｅｆ（ｋ）からのｓの予測を表すことができる。したがって、Ｒｅｆ（ｋ）からのｓの動き補償残渣ｒ（ｋ）は、ｒ（ｋ）＝ｓ−ｐ（ｋ）とすることができる。さらにｒ（ｋ）は、ゼロ平均および分散σｒ２（ｋ）を有する確率変数とすることができる。加えてｒ（ｋ）は、
ｒ（ｋ）＝ｒｔ（ｋ）＋ｒｓ（ｋ）
として分解することもでき、式中、ｒｔ（ｋ）は、ＦとＲｅｆ（ｋ）の間の時間的変化（temporal innovation）とすることができ、ｒｓ（ｋ）は、基準フレームＲｅｆ（ｋ）におけるサブ整数（sub-integer）画素補間誤りとすることができる。よって、
【数１】
2011510598.tif 000003
と
【数２】
2011510598.tif 000004
とを、それぞれ、ｒｔ（ｋ）とｒｓ（ｋ）の分散として表し、ｒｔ（ｋ）とｒｓ（ｋ）が独立であるものと仮定すると、
【数３】
2011510598.tif 000005
である。
【００２０】
時間的距離ｋが増加するに従って、現在のフレーム（Ｆなど）と基準フレーム（Ｒｅｆ（ｋ）など）の間の時間的変化も増加する。したがって、
【数４】
2011510598.tif 000006
はｋが増加するに従って直線的に増加すると仮定することができ、
【数５】
2011510598.tif 000007
が与えられ、式中、Ｃｔは、ｋに関する
【数６】
2011510598.tif 000008
の増加率である。ビデオフレームおよび／またはブロック内のオブジェクトが、Ｒｅｆ（ｋ）とＦの間の非整数画素変位（非整数画素動きなど）を伴って移動するとき、ＦとＲｅｆ（ｋ）におけるそのオブジェクトのサンプリング位置は異なり得る。この場合、Ｒｅｆ（ｋ）からの予測画素はサブ整数位置にある可能性があり、これは、整数位置における画素を使用した補間を必要とし、サブ整数補間誤りｒｓ（ｋ）を招く結果になり得る。しかし、この補間誤りは時間的距離ｋに関連付けられないはずである。よって、
【数７】
2011510598.tif 000009
は、ｋ−不変パラメータＣｓを使用してモデル化することができ、よって
【数８】
2011510598.tif 000010
である。したがって、ＭＲＦＧａｉｎ計算コンポーネント２０２によって利用される動き補償残渣の線形モデルは、
σｒ２（ｋ）＝ＣＳ＋Ｃｔ＊ｋ
とすることができる。
【００２１】
この線形モデルを使用して、ＭＲＦＧａｉｎ計算コンポーネント２０２は、所与のフレームまたはビデオブロックについて、ＭＥ、またはＭＲＦＭＥのための基準フレームコンポーネント２０４からの１つまたは複数の基準フレームを利用することのＭＲＦＧａｉｎを、以下のようにして求めることができる。ブロック残留エネルギーを
【数９】
2011510598.tif 000011
として定義することができ、これは、ブロックについての平均のｒ２（ｋ）である。通常は、
【数１０】
2011510598.tif 000012
が小さいほどより良い予測、したがって、より高い符号化性能を表すことができる。ＭＲＦＭＥにおいて、
【数１１】
2011510598.tif 000013
である、すなわち、フレームＲｅｆ（ｋ）より時間的に前のフレームのブロック残留エネルギーが、
【数１２】
2011510598.tif 000014
より小さい場合、より多くの基準フレームを探索することによりＭＲＦＭＥの性能を改善することができる。
【００２２】
続いて、それぞれ、ブロックについての平均の
ｒｔ２（ｋ）
と
ｒＳ２（ｋ）
である、
【数１３】
2011510598.tif 000015
と
【数１４】
2011510598.tif 000016
を定義することができる。上記線形モデルで仮定したように、
ｒＳ（ｋ）
と
ｒｔ（ｋ）
とは独立であるため、
【数１５】
2011510598.tif 000017
である。ＭＲＦＧａｉｎを求める際に、ＭＲＦＧａｉｎ計算コンポーネント２０２は、ｋを増加させた場合の
【数１６】
2011510598.tif 000018
と
【数１７】
2011510598.tif 000019
の挙動を調べて、ＭＥまたはＭＲＦＭＥで利用すべき基準フレームの効率的な数を、以下のように獲得することができる。時間的距離が増加すると、フレーム間の時間的変化も増加する。よって、ｒｔ（ｋ＋１）はｒｔ（ｋ）より大きな振幅を持つことができ、これにより、
【数１８】
2011510598.tif 000020
と表すことができる。逆に、現在のフレームＦ中のオブジェクトは、場合によっては、Ｒｅｆ（ｋ）に関しては非整数画素動きを有し、Ｒｅｆ（ｋ＋１）に関しては整数画素動きを有し得る。この場合、ｒ（ｋ）にはサブ整数画素補間誤りが生じる（例えば
【数１９】
2011510598.tif 000021
など）が、ｒ（ｋ＋１）における補間誤りは０である（例えば、
【数２０】
2011510598.tif 000022
など）。Ｆ中のオブジェクトがＲｅｆ（ｋ＋１）に関して整数画素動きを有するものと仮定すると、
【数２１】
2011510598.tif 000023
である。よって、時間探索範囲をＲｅｆ（ｋ）からＲｅｆ（ｋ＋１）まで拡大するとき、
【数２２】
2011510598.tif 000024
であり、
【数２３】
2011510598.tif 000025
であるものと仮定すると、残留エネルギーΔ（ｋ）の増加は、
【数２４】
2011510598.tif 000026
とすることができる。
【００２３】
この場合、Δｔ（ｋ）＜Δｓ（ｋ）では、Δ（ｋ）は負になり、これは、基準フレームコンポーネント２０４からのもう１つの基準フレームＲｅｆ（ｋ＋１）を探索することにより残留エネルギーがより小さくなり、したがって、ビデオ符号化コンポーネント１０４による符号化性能が改善されることを意味することができる。さらに、Δｓ（ｋ）が大きく、Δｔ（ｋ）が小さい場合には、動き推定において次の基準フレームを利用することによって大きな残留エネルギー、よって、大きなＭＲＦＧａｉｎを達成することができる。
【００２４】
この例では、Δｓ（ｋ）とΔｔ（ｋ）の値は、前述の線形モデルのパラメータ（ＣｓやＣｔなど）に関連するものである。パラメータＣｓは補間誤り分散
【数２５】
2011510598.tif 000027
を表すことができる。したがって、大きいＣｓを有するビデオ信号（または信号のブロック）では、ｒｓ（ｋ）は大きい振幅を生じさせることもでき、よって、
【数２６】
2011510598.tif 000028
も大きくなり得る。
【数２７】
2011510598.tif 000029
の増加率としてのパラメータＣｔの場合、小さいＣｔを有するビデオ信号では、
【数２８】
2011510598.tif 000030
と
【数２９】
2011510598.tif 000031
が類似したものになり得、よって、
【数３０】
2011510598.tif 000032
が小さくなり得る。したがって、大きいＣｓと小さいＣｔを有するビデオ信号（またはブロック）では、対応するＭＲＦＧａｉｎは大きくなり得る。反対に、小さいＣｓと大きいＣｔの場合には、ＭＲＦＧａｉｎは小さくなり得る。ＭＲＦＧａｉｎ計算コンポーネント２０２は、ＭＲＦＭＥのために基準フレームコンポーネント２０４からの次の基準フレームを使用すべきかどうかを、少なくとも一部はＭＲＦＧａｉｎおよび／または所与のビデオブロックについての所定の閾値に対するＭＲＦＧａｉｎの関係に基づいて、判定することができる。
【００２５】
一例では、ＭＲＦＧａｉｎ計算コンポーネント２０２によってＭＲＦＧａｉｎが決定されると、ビデオの各ブロックまたはフレームに以下の時間探索範囲予測を使用することができる。ＭＲＦＧａｉｎには他の範囲予測を利用することもできることを理解されたい。これは、利得計算の使用についての説明を容易にするための一例にすぎない。ＭＲＦＭＥが時間反転的に行われ、Ｒｅｆ（１）が探索されるべき第１の基準フレームであると仮定すると、ＭＲＦＧａｉｎ、Ｇの推定は、Ｒｅｆ（ｋ）によって（ｋ＞１とｋ＝１の場合など）変動し得る。例えば、現在の基準フレームがＲｅｆ（ｋ）（ｋ＞１）であり、このフレームに関する時間探索が完了したと仮定すると、次の基準フレームＲｅｆ（ｋ＋１）が探索されるべきかどうか判定するには、ＣｓおよびＣｔを、利用可能な情報、
【数３１】
2011510598.tif 000033
および
【数３２】
2011510598.tif 000034
から推定することができる。統計的に、
【数３３】
2011510598.tif 000035
は、σｒ２（ｋ）に収束する。したがって、
【数３４】
2011510598.tif 000036
を、σｒ２（ｋ）の推定とすることができる。前述の動き補償残渣の線形モデルに、
【数３５】
2011510598.tif 000037
および
【数３６】
2011510598.tif 000038
を代入すると、パラメータＣｓおよびパラメータＣｔを容易に獲得することができ、対応するＧ＝Ｃｓ／Ｃｔは、
【数３７】
2011510598.tif 000039
である。
【００２６】
しかし、現在の基準フレームがＲｅｆ（１）（ｋ＝１）である場合、
【数３８】
2011510598.tif 000040
は利用できず、そのため、上記式を使用してＣｓとＣｔを計算することができない。この場合には、
【数３９】
2011510598.tif 000041
とブロック中の残渣の平均値
【数４０】
2011510598.tif 000042
を評価して、ＭＲＦＧａｉｎ、Ｇを推定することができる。サブ整数画素補間フィルタは低域フィルタ（ＬＦ）であるため、基準フレーム内の高周波数（ＨＦ）成分を回復することができず、そのため、現在のブロックのＨＦを補償することができない。その結果補間誤りは、小さいＬＦ成分と大きいＨＦ成分を有し得ることになる。したがって、
【数４１】
2011510598.tif 000043
が小さく、
【数４２】
2011510598.tif 000044
が大きい（例えば、残渣が小さいＬＦ成分と大きいＨＦ成分を有するなどの）場合、残渣中の主要な成分は、この場合には大きいＣｓと小さいＣｔ（例えば、大きいＧなど）をもたらすｒｓ（ｋ）とすることができる。したがって、Ｇは、
【数４３】
2011510598.tif 000045
を使用して推定することができ、式中、係数γは訓練データから調整される。場合によっては、固定値のγ（γ＝６など）を異なるシーケンスに使用することもできる。
【００２７】
ＭＲＦＧａｉｎが、ＭＲＦＭＥにおける所与の基準フレーム利用係数に十分であるかどうか判定するために、Ｇの値を所定の閾値ＴＧと比較することができる。ＧがＴＧより大きい場合（Ｇ＞ＴＧ）、より多くの基準フレームを探索することが性能を高めると想定することができ、そのため、ＭＥはＲｅｆ（ｋ＋１）に進むことができる。しかし、Ｇ≦ＴＧの場合には、現在のブロックのＭＲＦＭＥを打ち切ることができ、残りの基準フレームは探索されない。ＴＧが高いほど、より計算が節約され、ＴＧが低いほど、性能低下が少なくなることを理解されたい。ＭＲＦＧａｉｎ計算コンポーネント２０２、または別のコンポーネントは、所望の性能／計算量の均衡を達成するように閾値を適切に調整することができる。
【００２８】
次に図３を見ると、残渣を予測し、動き推定基準フレーム時間探索をしかるべく調整するシステム３００が表示されている。ＭＥ、または可変基準フレームの利用を伴うＭＲＦＭＥを活用して、１つもしくは複数のビデオブロックまたは１つもしくは複数のビデオフレームの部分の動きを推定する動き推定コンポーネント１０２と、動き推定に基づいてビデオブロック（または、予測誤りといったビデオブロックに関連する情報）を符号化することのできるビデオ符号化コンポーネント１０４が設けられている。加えて、動き推定コンポーネント１０２は、前述のように、ビデオブロックを推定するために時間探索範囲内で基準フレームコンポーネント２０４のために１つまたは複数の基準フレームを利用することに、その計算コストに優る利点があるかどうか判定することができるＭＲＦＧａｉｎ計算コンポーネント２０２と、さらに、またはその代わりに、時間探索範囲を決定するのに使用することもできる動きベクトルコンポーネント３０２を含むこともできる。
【００２９】
一例によれば、ＭＲＦＧａｉｎ計算コンポーネント２０２は、前述の計算に基づいて、基準フレームコンポーネント２０４からの基準フレームの１つまたは複数の時間探索範囲のＭＲＦＧａｉｎを求めることができる。加えて、動きベクトルコンポーネント３０２は、場合によっては、ビデオブロックに最適な時間探索範囲を決定することもできる。例えば、現在のフレームＦに関連する基準フレームＲｅｆ（ｋ）について、動きベクトルコンポーネント３０２は、動きベクトルＭＶ（ｋ）を位置決めしようとすることができる。見つかった最善の動きベクトルＭＶ（ｋ）が整数画素動きベクトルである場合、ビデオブロック内のオブジェクトは、Ｒｅｆ（ｋ）とＦの間の整数動きを有するものと想定することができる。
【数４４】
2011510598.tif 000046
にはサブ画素補間誤りが生じないため、残りの基準フレームにおいては、動きベクトルコンポーネント３０２によって決定された予測より優れた予測を見つけることが難しい可能性がある。よってこの例では、動きベクトルコンポーネント３０２を利用して時間探索範囲を決定することができる。動き推定コンポーネント１０２のどのコンポーネントが時間探索範囲を決定するかにかかわらず、ビデオ符号化コンポーネント１０４は、後に続く記憶、伝送、アクセスなどのための情報を符号化することができる。
【００３０】
この例によれば、動きは、以下のように推定することができる。ｋ＝１（第１の基準フレームＲｅｆ（１））について、Ｒｅｆ（ｋ）に関する動き推定を行うことができ、ＭＶ（ｋ）、
【数４５】
2011510598.tif 000047
および
【数４６】
2011510598.tif 000048
を獲得することができる。続いて、前述の式
【数４７】
2011510598.tif 000049
を使用して、ＭＲＦＧａｉｎ計算コンポーネント２０２によりＧを推定することができる。加えて、動きベクトルコンポーネント３０２は、ビデオブロックについての基準フレームにおける最善の動きベクトルＭＶ（ｋ）を見つけることができる。Ｇ≦ＴＧ（ＴＧは閾値利得）であり、またはＭＶ（ｋ）が整数画素動きベクトルである場合、動き推定を打ち切ることができる。ＭＶ（ｋ）が整数画素動きベクトルである場合、これを使用して時間探索範囲を決定することができ、そうでなければ、Ｇ≦ＴＧであり、時間探索範囲は単に第１の基準フレームだけである。ビデオ符号化コンポーネント１０４は、この情報を利用して前述のようにビデオブロックを符号化することができる。
【００３１】
しかしながら、Ｇ＞ＴＧであり、またはＭＶ（ｋ）が整数画素動きベクトルでない場合、ＭＲＦＧａｉｎ計算コンポーネント２０２は、ｋ＝ｋ＋１に設定して次のフレームに進むことができる。Ｒｅｆ（ｋ）に関して動き推定を行うことができ、この前のフレームについてもやはり、ＭＶ（ｋ）および
【数４８】
2011510598.tif 000050
を獲得することができる。続いて、前述の別の式
【数４９】
2011510598.tif 000051
を使用してＧを推定することができる。
【００３２】
この場合もやはり、動きベクトルコンポーネント３０２は、基準フレームにおける最善の動きベクトルＭＶ（ｋ）を見つけることができる。Ｇ＞ＴＧであり、またはＭＶ（ｋ）が整数画素動きベクトルでない場合、ＭＲＦＧａｉｎ計算コンポーネント２０２は、ｋ＝ｋ＋１に設定して次のフレームに進み、このステップを繰り返すことができる。Ｇ≦ＴＧであり、またはＭＶ（ｋ）が整数画素動きベクトルである場合、現在のブロックのＭＲＦＭＥを打ち切ることができる。ＭＶ（ｋ）が整数画素動きベクトルである場合には、これを使用して時間探索範囲を決定することができ、そうでない場合には、Ｇ≦ＴＧであり、時間探索範囲は評価されたフレームの数である。また、探索が所望の効率を達成するためのフレームの最大数を構成することもできることを理解されたい。
【００３３】
次に図４を参照すると、ビデオ符号化のための１つまたは複数の基準フレームを使用したＭＲＦＭＥの利得の決定を円滑に行わせるシステム４００が示されている。備わっているビデオ符号化コンポーネント１０４による符号化のために、誤りに基づいてビデオブロックを予測することのできる動き推定コンポーネント１０２が設けられている。動き推定コンポーネント１０２は、ＭＥまたはＭＲＦＭＥを利用することの利得を求め、ＭＲＦＭＥの場合に使用すべき基準フレームの数を決定することができるＭＲＦＧａｉｎ計算コンポーネント２０２と、ＭＲＦＧａｉｎ計算コンポーネント２０２がその計算のための基準フレームを取り出すことのできる基準フレームコンポーネント２０４とを含むことができる。さらに、動き推定コンポーネント１０２、動き推定コンポーネント１０２の構成部分、および／またはビデオ符号化コンポーネント１０４に推論技術を提供することのできる推論コンポーネント４０２も示されている。別個のコンポーネントとして図示されているが、推論コンポーネント４０２、および／またはその諸機能は、動き推定コンポーネント１０２、動き推定コンポーネント１０２の構成部分、および／またはビデオ符号化コンポーネント１０４のうちの１つまたは複数の内部において実施することもできることを理解されたい。
【００３４】
一例では、ＭＲＦＧａｉｎ計算コンポーネント２０２は、前述のように（例えば、基準フレームコンポーネント２０４を使用して基準フレームを獲得し、利得を求める計算を行うなど）、動き推定のために所与のビデオブロックの時間探索範囲を決定することができる。一例によれば、推論コンポーネント４０２は、（上記の例でのＴＧといった）所望の閾値を決定するのに利用することができる。閾値は、ビデオ／ブロックの型、ビデオ／ブロックのサイズ、ビデオソース、符号化形式、符号化アプリケーション、予定復号機器、記憶（格納）形式（フォーマット）または場所、類似のビデオ／ブロックまたは類似の特性を有するビデオ／ブロックについての前の閾値、所望の性能統計、利用可能な処理能力、利用可能な帯域幅などの１つまたは複数の少なくとも一部に基づいて推論することができる。さらに、推論コンポーネント４０２は、前のフレーム数の一部などに基づいて、ＭＲＦＭＥのための最大基準フレーム数を推論するのに利用することもできる。
【００３５】
さらに、推論コンポーネント４０２は、ビデオ符号化コンポーネント１０４が、動き推定コンポーネント１０２からの動き推定を利用して符号化形式を推論するのに活用することもできる。加えて、推論コンポーネント４０２は、推定のために動き推定コンポーネント１０２に送るべきブロックサイズを推論するのに使用することもでき、このブロックサイズは、符号化形式／アプリケーション、推測される復号機器またはその機能、記憶形式および場所、利用可能なリソースなどといった、閾値を決定するように使用されるのと類似の要因に基づくものとすることができる。また推論コンポーネント４０２は、動きベクトルなどに関する場所その他のメトリックを求める際に利用することもできる。
【００３６】
前述の各システム、アーキテクチャなどは、複数のコンポーネント間での対話に関連して説明されている。そのようなシステムおよびコンポーネントは、それらの説明で指定されているコンポーネントもしくはサブコンポーネント、指定のコンポーネントもしくはサブコンポーネントの一部、および／または別のコンポーネントを含むことができることを理解されたい。また、サブコンポーネントは、親コンポーネント内に含まれるのではなく、他のコンポーネントに通信可能な状態で結合されたコンポーネントとして実施することもできる。さらに、集約的機能を提供するために、１つまたは複数のコンポーネントおよび／またはサブコンポーネントが単一のコンポーネントに組み入れられてもよい。システム、コンポーネントおよび／またはサブコンポーネント間の通信は、プッシュおよび／またはプルモデルに従って行うことができる。また各コンポーネントは、当業者には知られているが、簡潔にするために本明細書には具体的に記載されていない１つまたは複数の他のコンポーネントと対話してもよい。
【００３７】
さらに、理解されるように、開示のシステムおよび方法の様々な部分は、人工知能、機械学習、あるいはナレッジもしくはルールベースのコンポーネント、サブコンポーネント、プロセス、手段、方法、または機構（サポートベクトルマシン、ニューラルネットワーク、エキスパートシステム、ベイジアン信頼ネットワーク、ファジィ論理、データ融合エンジン、分類器など）を含み、またはこれらで構成されてもよい。そのようなコンポーネントは、特に、例えばコンテキスト情報に基づいて動作を推論するなどにより、いくつかの機構または各コンポーネントによって行われるプロセスを自動化して、システムおよび方法の各部分をより適応的であると共に、効率がよく、インテリジェントなものにすることができる。例を挙げると、そのような機構は、マテリアライズドビュー（materialized view、実体化ビュー）などに関して用いることができるが、これに限定されない。
【００３８】
前述の例示的システムを考察すると、開示の主題に従って実施することができる方法は、図５〜７の流れ図を参照すればよりよく理解されるであろう。説明を簡単にするために、これらの方法は、一連のブロックとして図示され、記述されているが、特許請求される主題は各ブロックの順序によって限定されるものではなく、ブロックの中には、本明細書で図示され、記述されている順序とは異なる順序で行われ、および／または他のブロックと同時に行うことができるものもあることを理解されたい。さらに、以下に示す方法を実施するのに、必ずしも図示されるすべてのブロックが必要とされるとは限らない。
【００３９】
図５に、ＭＥ、またはＭＲＦＭＥをいくつかの基準フレームと共に使用することの利得を求めることに基づくビデオブロックの動き推定の方法５００を示す。５０２で、ビデオブロック推定のために１つまたは複数の基準フレームを受け取ることができる。これらの基準フレームは、推定されるべき現在のビデオブロックと関連する前のフレームとすることができる。５０４で、ＭＥまたはＭＲＦＭＥを使用することの利得を求めることができる。これは、例えば前述のように計算することができる。ＭＲＦＭＥの利得は、例えば、複数の基準フレームが使用されるべきであると決定されるなど、性能と計算量の間の所望の均衡を表す閾値を達成するように計算された基準フレームの数に従って求めることができる。５０６で、決定された形式、すなわちＭＥまたはＭＲＦＭＥを使用して、ビデオブロックを推定することができる。ＭＲＦＭＥが使用される場合には、推定において利得閾値を満足させるいくつかのフレームを利用することができる。推定に基づいて、例えば動き補償残渣を求めることができ、５０８で、予測誤りを符号化することができる。
【００４０】
図６に、１つまたは複数のビデオブロックにおける動きを推定するための時間探索範囲の決定を円滑に行わせる方法６００を示す。６０２で、符号化されるべきビデオブロックからの前のフレームとすることのできる現在の基準フレーム（またはそのブロック）の残留エネルギーレベルを計算することができる。この計算は、（例えば、ブロック内の各画素ごとの）ブロックについての平均の残留エネルギーを表すことができる。ブロック全体の残留エネルギーが低いことは、そのブロックについてよりよい予測を行うことができ、したがって、より高い符号化性能を示すことができることに理解されたい。６０４で、現在の基準フレームより時間的に前の基準フレームの残留エネルギーレベルを計算することができる。この場合もやはり、これは関連するブロック全体で平均された残留エネルギーとすることができる。
【００４１】
ブロックの現在の基準フレームと前の基準フレームとの残留エネルギーを比較することによって、ブロック予測のためにより多くの前の基準フレームを含めるよう時間探索範囲を拡大すべきか否かの性能判断を行うことができる。６０６で、現在のフレームと（１つまたは複数の）前のフレームの残留エネルギーレベルから評価された利得が、（構成され、推論され、またはその他の方法で事前に決定された）閾値利得より大きい（または、一例では、これと等しい）かどうかが判定される。閾値利得より大きいまたは等しいと判定された場合、６０８で、次の基準フレームを加えることによって、ＭＲＦＭＥのための時間探索範囲を拡大することができる。この方法では、６０２に戻って再度開始し、前のフレームの前のフレームの残渣レベルを比較することができ、以下同様に行うことができることを理解されたい。残留エネルギーレベルから評価された利得が閾値より高くない場合、６１０で、現在の基準フレームを使用してビデオブロックが予測される。この場合もやはり、この方法が引き続き複数の前の基準フレームを追加した場合には、続いて、６１０で、追加されたすべての前の基準フレームを使用してビデオブロックを予測することができる。
【００４２】
図７に、少なくとも一部は、所与のブロックの利得推定に基づく、効率のよいブロックレベルの時間探索範囲推定の方法７００を示す。７０２で、所与のビデオブロックの第１の基準フレームに関して動き推定を行うことができる。この基準フレームは、例えば、現在のビデオブロックを時間的に１つ前のフレームとすることができる。７０４で、例えば、前のシミュレーション結果などに基づいて、次の基準フレームを使用した動き推定の利得が求められ、ビデオブロック内の最善の動きベクトルを位置決めすることができる。シミュレーション結果に基づく動き推定の利得は、一例では、前述の各式を使用して求めることができる。７０６で、利得Ｇが閾値利得を満たすかどうか（性能／計算量の均衡を達成するために、ブロック予測において次の基準フレームが使用されるべきであることを指示することができる）、および動きベクトルが整数画素動きベクトルであるか否かを判定することができる。Ｇが閾値を満たさず、または動きベクトルが整数画素動きベクトルである場合、７０８で、ビデオブロック予測を完了することができる。
【００４３】
しかし、Ｇが閾値を満たし、動きベクトルが整数画素動きベクトルでない場合には、７１０で、次の基準フレーム（例えば、次の前の基準フレームなど）に関して動き推定を行うことができる。７１２で、次の前の基準フレームおよび第１の基準フレームを用いた動き推定の利得と、次の前の基準フレームの最善の動きベクトルとを求めることができる。この利得は、前述の各式を使用して求めることができ、この計算は、少なくとも一部は、動き推定において第１のフレームを使用して受け取られた利得に基づくものである。７１４で、利得Ｇが前述の閾値利得を満たし、動きベクトルが整数画素動きベクトルでない場合、７１０に進み、ＭＲＦＭＥにおいて次の基準フレームを利用することができる。しかし、Ｇが閾値を満たさず、または動きベクトルが整数画素動きベクトルである場合には、７０８で、基準フレームを使用してビデオブロック予測を行うことができる。これについては、ＭＲＦＭＥによって生じる計算量は、所望の性能利得を生じる場合に限って使用される。
【００４４】
本明細書で使用する場合、「コンポーネント」、「システム」などの用語は、コンピュータ関連のエンティティ、すなわち、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかを指すものである。例えば、コンポーネントは、プロセッサ上で実行中のプロセス、プロセッサ、オブジェクト、インスタンス、実行可能ファイル、実行スレッド、プログラム、および／またはコンピュータとすることができるが、これらに限定されない。例を挙げると、コンピュータ上で実行中のアプリケーションもコンピュータ自体もコンポーネントとすることができる。１つまたは複数のコンポーネントが、あるプロセスおよび／または実行スレッドの内部にあってもよく、コンポーネントが１台のコンピュータ上に局在化されてもよく、および／または２台以上のコンピュータ間で分散されてもよい。
【００４５】
「例示的な」という語は、本明細書では、例、具体例または例証として働くことを意味するのに使用される。本明細書で「例示的」として示す態様または設計はいずれも、必ずしも、他の態様または設計に対して好ましく、または有利であると解釈されるべきものとは限らない。さらに、各例はもっぱら、明確にするため、理解を得るために提供されるにすぎず、いかなる方法でも本発明または本発明の関連部分を限定するものではない。その他の、または代替の例を無数に提示することもできるが、簡潔にするために省略されていることを理解されたい。
【００４６】
さらに、本発明の全部または一部を、標準的なプログラミングおよび／または工学の技法を使用して、開示の発明を実施するようにコンピュータを制御するためのソフトウェア、ファームウェア、ハードウェア、またはこれらの任意の組み合わせを製造する方法、装置または製造品として実施することもできる。「製造品」という用語は、本明細書で使用する場合、任意のコンピュータ可読機器または媒体からアクセスすることのできるコンピュータプログラムを包含するものである。例えば、コンピュータ可読媒体には、磁気記憶装置（ハードディスク、フロッピー（登録商標）ディスク、磁気ストリップなど）、光ディスク（コンパクトディスク（ＣＤ）、ディジタル多用途ディスク（ＤＶＤ）など）、スマートカード、およびフラッシュメモリデバイス（カード、スティック、キードライブなど）を含むことができるが、これらに限定されない。加えて、搬送波を用いて、電子メールを送受信する際に、またはインターネットやローカルエリアネットワーク（ＬＡＮ）といったネットワークにアクセスする際に使用されるようなコンピュータ可読電子データを搬送することもできることも理解されたい。当然ながら、特許請求される主題の範囲または趣旨から逸脱することなく、本構成に多くの変更を加えることができることも、当業者は理解し得る。
【００４７】
図８および図９、ならびに以下の考察は、開示の主題の様々な態様のコンテキストを提供する目的で、開示の主題の様々な態様を実施することができる適切な環境の簡単な一般的説明を提供するためのものである。主題は、１台または複数のコンピュータ上で実行されるプログラムのコンピュータ実行可能命令の一般的状況で説明されているが、本発明は、他のプログラムモジュールと組み合わせても実施することができることを当業者は理解することができる。一般に、プログラムモジュールには、個々のタスクを実行し、および／または個々の抽象データ型を実施する、ルーチン、プログラム、コンポーネント、データ構造などが含まれる。さらに、これらのシステム／方法は、シングルプロセッサ、マルチプロセッサまたはマルチコアプロセッサのコンピュータシステム、ミニコンピューティング機器、メインフレームコンピュータ、ならびにパーソナルコンピュータ、ハンドヘルドコンピューティング機器（携帯情報端末（ＰＤＡ）、電話機、時計など）、マイクロプロセッサベースの、またはプログラマブルな家電または工業電子機器などを含めて、他のコンピュータシステム構成と共に実施されてもよいことを当業者は理解することができる。また、例示の各態様は、タスクが、通信ネットワークを介してリンクされているリモート処理機器によって実行される分散コンピューティング環境において実施されてもよい。しかし、特許請求される主題の、全部ではなくても一部を、独立型コンピュータ上で実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルとリモート両方の記憶装置に位置することができる。
【００４８】
図８を参照すると、本明細書で開示する様々な態様を実施するための例示的環境８００は、コンピュータ８１２（デスクトップ、ラップトップ、サーバ、ハンドヘルド、プログラマブル家電または工業電子機器など）を含む。コンピュータ８１２は、処理装置８１４、システムメモリ８１６およびシステムバス８１８を含む。システムバス８１８は、これに限定されるわけではないが、システムメモリ８１６を含むシステム構成部分を処理装置８１４に結合する。処理装置８１４は、様々な利用可能なマイクロプロセッサのいずれかとすることができる。処理装置８１４としては、デュアルマイクロプロセッサ、マルチコアその他のマルチプロセッサアーキテクチャを用いることができることを理解されたい。
【００４９】
システムメモリ８１６は、揮発性と不揮発性のメモリを含む。基本入出力システム（ＢＩＯＳ）は、始動時などに、コンピュータ８１２内の要素間で情報を転送するための基本ルーチンを含み、不揮発性メモリに記憶されている。例を挙げると、これに限定されないが、不揮発性メモリには、読取り専用メモリ（ＲＯＭ）が含まれ得る。揮発性メモリには、ランダムアクセスメモリ（ＲＡＭ）が含まれ、ＲＡＭは、処理を円滑化するための外部キャッシュメモリとして働くことができる。
【００５０】
またコンピュータ８１２は、取り外し可能／取り外し不能、揮発性／不揮発性のコンピュータ記憶媒体も含む。図８には、例えば、大容量記憶８２４が示されている。大容量記憶８２４には、磁気または光ディスクドライブ、フロッピー（登録商標）ディスクドライブ、フラッシュメモリ、メモリスティックなどの機器が含まれるが、これらに限定されない。加えて大容量記憶８２４には、別々の、または他の記憶媒体と組み合わされた記憶媒体も含まれ得る。
【００５１】
図８に、ユーザおよび／または他のコンピュータと、適切な動作環境８００に示す基本コンピュータリソースの間の媒介として働く（１つまたは複数の）ソフトウェアアプリケーション８２８を示す。そのようなソフトウェアアプリケーション８２８には、システムソフトウェアおよびアプリケーションソフトウェアの一方または両方が含まれる。システムソフトウェアは、コンピュータシステム８１２のリソースを制御し、割り振るように働く、大容量記憶８２４に記憶することのできるオペレーティングシステムを含むことができる。アプリケーションソフトウェアは、システムメモリ８１６と大容量記憶８２４のどちらかまたは両方に記憶されたプログラムモジュールおよびデータを介して、システムソフトウェアによるリソースの管理を利用する。
【００５２】
またコンピュータ８１２は、通信可能な状態でバス８１８に結合され、コンピュータ８１２との対話を円滑化する１つまたは複数のインターフェースコンポーネント８２６も含む。例を挙げると、インターフェースコンポーネント８２６は、ポート（シリアル、パラレル、ＰＣＭＣＩＡ、ＵＳＢ、ＦｉｒｅＷｉｒｅなど）や、インターフェースカード（サウンド、ビデオ、ネットワークなど）などとすることができる。インターフェースコンポーネント８２６は、（有線または無線で）入力を受け取り、出力を提供することができる。例えば入力は、マウス、トラックボール、スタイラス、タッチパッドといったポインティングデバイス、キーボード、マイクロフォン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナ、カメラ、その他のコンピュータなどを含む機器から受け取ることができるが、これらに限定されない。また出力は、コンピュータ８１２により、インターフェースコンポーネント８２６を介して、１つまたは複数の出力機器に供給することもできる。出力機器には、特に、ディスプレイ（ＣＲＴ、ＬＣＤ、プラズマなど）、スピーカ、プリンタ、その他のコンピュータを含むことができる。
【００５３】
図９は、本発明が対話することのできるコンピュータ環境例９００の概略的ブロック図である。システム９００は、１つまたは複数のクライアント９１０を含む。クライアント９１０はハードウェアおよび／またはソフトウェア（スレッド、プロセス、コンピューティングデバイスなど）とすることができる。またシステム９００は、１つまたは複数のサーバ９３０も含む。よって、システム９００は、モデルの中でも特に、二層クライアントサーバモデルまたは多層モデル（クライアント、中間層サーバ、データサーバなど）に対応することができる。またサーバ９３０も、ハードウェアおよび／またはソフトウェア（スレッド、プロセス、コンピューティングデバイスなど）とすることができる。サーバ９３０は、例えば、本発明の各態様を用いて変換を行うためのスレッドを収容することができる。クライアント９１０とサーバ９３０の間の１つの可能な通信は、２つ以上のコンピュータプロセス間で送信されるデータパケットの形のものとすることができる。
【００５４】
システム９００は、クライアント９１０とサーバ９３０の間の通信を円滑化するのに用いることができる通信フレームワーク９５０を含む。この場合、クライアント９１０はプログラムアプリケーションコンポーネントに対応させることができ、サーバ９３０は、前述のように、インターフェースの機能と、任意に、記憶システムの機能を提供することができる。クライアント９１０は、クライアント９１０にとってローカルで情報を記憶するのに用いることのできる１つまたは複数のクライアントデータストア９６０に動作可能な状態で接続されている。同様に、サーバ９３０も、サーバ９３０にとってローカルで情報を記憶するのに用いることのできる１つまたは複数のサーバデータストア９４０に動作可能な状態で接続されている。
【００５５】
例を挙げると、１つまたは複数のクライアント９１０は、通信フレームワーク９５０を介して１つまたは複数のサーバ９３０に、例えば、ビデオなどとすることのできるメディアコンテンツを要求することができる。サーバ９３０は、１つまたは複数の基準フレームを利用してビデオのブロックを予測することの利得を計算するＭＥやＭＲＦＭＥといった、本明細書で示す機能を使用してビデオを符号化し、（誤り予測を含む）符号化コンテンツをサーバデータストア９４０に記憶することができる。その後、サーバ９３０は、例えば、通信フレームワーク９５０などを利用してクライアント９１０にデータを送信することができる。クライアント９１０は、Ｈ．２６４といった１つまたは複数の形式に従ってデータを復号し、誤り予測情報を利用してメディアのフレームを復号する。代わりに、またはこれに加えて、クライアント９１０は、受け取ったコンテンツの一部を、クライアントデータストア９６０内に記憶することもできる。
【００５６】
以上の説明は、特許請求される主題の態様の例を含むものである。当然ながら、特許請求される主題を説明するために、コンポーネントまたは方法の考えられる限りのあらゆる組み合わせを記述することは不可能であるが、開示の主題の多くの別の組み合わせおよび置換が可能であることを当業者は理解するはずである。したがって、開示の主題は、添付の特許請求の範囲の趣旨および範囲内に該当する、かかるすべての変更、改変および変形を包含するものである。さらに、「含む」、「有する」もしくは「有していいる」という用語またはこれらの変形は、これらが詳細な説明または特許請求の範囲において使用される限りにおいて、「備える」という用語が請求項において移行語として用いられるときに解釈されるのと同様に、含むことが意図されるものである。
【図１】
2011510598.tif 000064
【図２】
2011510598.tif 000065
【図３】
2011510598.tif 000066
【図４】
2011510598.tif 000067
【図５】
2011510598.tif 000068
【図６】
2011510598.tif 000069
【図７】
2011510598.tif 000070
【図８】
2011510598.tif 000071
【図９】
2011510598.tif 000072
【手続補正書】
【提出日】平成22年3月24日(2010.3.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオ符号化において動き推定を提供するシステムであって、
ビデオブロックに関連する複数の基準フレームを提供する基準フレームコンポーネントと、
少なくとも一部は、前記複数の基準フレームのうちの１つまたは複数を利用することの性能利得を、少なくとも一部は前記複数の基準フレームの残留エネルギーに基づいて計算することに基づいて、動き推定（ＭＥ）または複数基準フレームＭＥ（ＭＲＦＭＥ）のために現在の時間探索範囲を決定する利得計算コンポーネントと
を備えるシステム。
【請求項２】
少なくとも一部は、ＭＥまたはＭＲＦＭＥを前記現在の時間探索範囲で利用して予測される前記ビデオブロックに基づいて動き補償残渣を符号化するビデオ符号化コンポーネントをさらに備える、請求項１に記載のシステム。
【請求項３】
前記ビデオブロックの最善の動きベクトルであり、前記動きベクトルが整数画素動きベクトルである場合に前記現在の時間探索範囲を決定するのに使用される前記動きベクトルを計算する動きベクトルコンポーネントをさらに備える、請求項１に記載のシステム。
【請求項４】
前記複数の基準フレームの１つまたは複数についての前記残留エネルギーσｒ２（ｋ）が、ｋを前記時間探索範囲のサイズとし、Ｃｔを前記ビデオブロックと前記複数の基準フレームのうちの１つとの間の時間的変化の変量の増加率とし、Ｃｓをｋ−不変パラメータとし、少なくとも一部は線形残渣モデル
σｒ２（ｋ）＝ＣＳ＋Ｃｔ＊ｋ
に基づいて計算される、請求項１に記載のシステム。
【請求項５】
前記性能利得Ｇは、
【数１】
2011510598.tif 000073
を使用して計算され、式中、
【数２】
2011510598.tif 000074
は、第１の基準フレームに対応する平均二乗残渣であり、
【数３】
2011510598.tif 000075
は、前記ビデオブロック中の残渣の平均値であり、γは構成されたパラメータである、請求項４に記載のシステム。
【請求項６】
少なくとも一部はシミュレーション結果または前の利得計算に基づいてγの値を推論する推論コンポーネントをさらに備える、請求項５に記載のシステム。
【請求項７】
前記利得計算コンポーネントはさらに、ＭＲＦＭＥのために、追加の基準フレームを含むより大きい時間探索範囲を利用することの性能利得を計算する、請求項４に記載のシステム。
【請求項８】
より大きい時間探索範囲を利用することの前記性能利得は、
【数４】
2011510598.tif 000076
を基準フレームｋ−１に対応する平均二乗残渣とし、
【数５】
2011510598.tif 000077
を基準フレームｋに対応する平均二乗残渣とし、
【数６】
2011510598.tif 000078
を使用して計算される、請求項７に記載のシステム。
【請求項９】
予測ビデオブロック符号化において動きを推定する方法であって、
ビデオブロックを予測する際に１つまたは複数の前の基準フレームを使用することの性能利得を計算するステップと、
前記計算された性能利得に基づいて、動き推定において利用すべきいくつかの基準フレームを含む時間探索範囲を決定するステップと、
前記ビデオブロックにおける動きを推定するために、前記基準フレームの時間探索範囲を利用して前記ビデオブロックを予測するステップと
を含む方法。
【請求項１０】
前記ビデオブロックの最善の動きベクトルを計算するステップであって、前記動きベクトルが整数画素動きベクトルである場合に前記時間探索範囲を決定するのに使用される前記最善の動きベクトルを計算するステップとをさらに備える、請求項９に記載の方法。
【請求項１１】
前記計算するステップは、少なくとも一部は、前記１つまたは複数の前の基準フレームの残留エネルギーを評価することに基づいて前記性能利得を計算するステップを含む、請求項９に記載の方法。
【請求項１２】
ｋを前記時間探索範囲のサイズとし、Ｃｔを前記ビデオブロックと前記少なくとも１つの前の基準フレームとの間の時間的変化の変量の増加率とし、Ｃｓをｋ−不変パラメータとし、少なくとも一部は線形残渣モデル
σｒ２（ｋ）＝ＣＳ＋Ｃｔ＊ｋ
に基づいて、前記前の基準フレームの少なくとも１つについての前記残留エネルギーσｒ２（ｋ）を計算することを含む、請求項１１に記載の方法。
【請求項１３】
前記計算するステップは、動き推定に複数の基準フレームを使用することの前記性能利得Ｇを、
【数７】
2011510598.tif 000079
を使用して計算するステップを含み、式中、
【数８】
2011510598.tif 000080
は、前記１つまたは複数の前の基準フレームの第１の基準フレームに対応する平均二乗残渣であり、
【数９】
2011510598.tif 000081
は、前記ビデオブロック中の残渣の平均値であり、γは構成されたパラメータである、請求項１２に記載の方法。
【請求項１４】
少なくとも一部はシミュレーション結果または前の利得計算から調整することに基づいてγの値を推論するステップをさらに備える、請求項１３に記載の方法。
【請求項１５】
前記計算するステップは、２フレームを超える時間探索範囲を利用することの性能利得を、
【数１０】
2011510598.tif 000082
を基準フレームｋ−１に対応する平均二乗残渣とし、
【数１１】
2011510598.tif 000083
を基準フレームｋに対応する平均二乗残渣とし、
【数１２】
2011510598.tif 000084
を使用して計算するステップを含む、請求項１２に記載の方法。
【請求項１６】
前記計算するステップは、前記利得が指定の閾値を満たすことができなくなるまでより大きい時間探索範囲の性能利得を計算するステップを含む、請求項１５に記載の方法。
【請求項１７】
所望の符号化サイズから前記閾値を推論するステップをさらに備える、請求項１６に記載の方法。
【請求項１８】
予測ビデオブロック符号化において動きを推定するシステムであって、
ビデオブロックを予測するのに、単一基準フレーム動き推定（ＭＥ）または複数基準フレーム動き推定（ＭＲＦＭＥ）を利用することの性能利得を計算する手段と、
前記計算された性能利得に従い、ＭＥまたはＭＲＦＭＥを利用して前記ビデオブロックを予測する手段と
を備えるシステム。
【請求項１９】
ＭＲＦＭＥにおいていくつかの基準フレームを利用すること、または前記いくつかの基準フレームに加えて１つもしくは複数の追加基準フレームを利用することの性能利得を計算する手段と、
前記いくつかのフレームを利用してＭＲＦＭＥにおいて閾値を超える利得を得る手段と
をさらに備える、請求項１８に記載のシステム。
【請求項２０】
前記性能利得計算は、少なくとも一部は、１つまたは複数の基準フレームの動き補償残渣の線形モデルに基づくものである、請求項１８に記載のシステム。
【国際調査報告】
2011510598.tif 000085