(57)【要約】  動きベクトルの選択方法は、動きベクトルの集合及び目標レートを受信する段階、及びレート−歪み基準を用いて動きベクトルの集合を修正する段階を含む。【選択図】図６
2009509406.tif 000002
【特許請求の範囲】
【請求項１】
電子データ処理装置によって実行される方法であって、
動きベクトルの集合を受信する段階と、
レート−歪み基準を用いて前記動きベクトルの集合を修正する段階と、
を含むことを特徴とする方法。
【請求項２】
前記レート−歪み基準を用いる段階は、
前記集合に１つ又はそれよりも多くの動きベクトルを追加又は除去して略目標レートに達する段階、
を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記レート−歪み基準を用いる段階は、
前記動きベクトルの集合に対する歪みを計算する段階と、
動きベクトルを前記集合に追加して前記歪みを低減する段階と、
を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記レート−歪み基準を用いる段階は、
前記集合の各動きベクトルに対して、該集合から該動きベクトルを除去することによって生じる歪みの変化を求める段階と、
動きベクトルの除去が、歪みを低減する歪みの変化を生じさせる場合には、歪みを低減する該動きベクトルを除去する段階と、
前記集合の各動きベクトルの除去が、歪みを増加する歪みの変化を生じさせる場合には、動きベクトルの除去が歪みの最小増加を生じさせる該動きベクトルを該集合から除去する段階と、
を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記レート−歪み基準を用いる段階は、
前記集合の各動きベクトルに対して、該集合から該動きベクトルを除去することによって生じる歪みの変化を求め、該集合から該動きベクトルを除去することによって生じるレートの変化を求め、かつ該歪みの変化と該レートの変化との比を求める段階と、
動きベクトルの除去が前記比の最小変化を生じさせる動きベクトルを前記集合から除去する段階と、
を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記レート−歪み基準を用いる段階は、
前記集合の各動きベクトルに対して、該集合に該動きベクトルを追加することによって生じる歪みの変化を求め、該集合に該動きベクトルを追加することによって生じるレートの変化を求め、かつ該歪みの変化と該レートの変化との比を求める段階と、
動きベクトルの追加が前記比の最小変化を生じさせる動きベクトルを前記集合に追加する段階と、
を含むことを特徴とする請求項１に記載の方法。
【請求項７】
動きベクトルの集合を受信する動きベクトル選択デバイスと、
レート−歪み基準を用いて前記動きベクトルの集合を修正する動きベクトル候補判断デバイスと、
を含むことを特徴とする装置。
【請求項８】
前記動きベクトル候補判断デバイスは、前記レート−歪み基準を用いて、略目標レートに達するために前記集合に１つ又はそれよりも多くの動きベクトルを追加又は除去することを特徴とする請求項７に記載の装置。
【請求項９】
前記動きベクトル候補判断デバイスは、前記動きベクトルの集合に対する歪みを計算し、かつ動きベクトルを該集合に追加して該歪みを低減することを特徴とする請求項７に記載の装置。
【請求項１０】
前記動きベクトル候補判断デバイスは、
前記集合の各動きベクトルに対して、該集合から該動きベクトルを除去することによって生じる歪みの変化を求め、
動きベクトルの除去が、歪みを低減する歪みの変化を生じさせる場合には、歪みを低減する該動きベクトルを除去し、
前記集合の各動きベクトルの除去が、歪みを増加する歪みの変化を生じさせる場合には、動きベクトルの除去が歪みの最小増加を生じさせる該動きベクトルを該集合から除去する、
ことによって前記レート−歪み基準を用いるように構成されていることを特徴とする請求項７に記載の装置。
【請求項１１】
前記動きベクトル候補判断デバイスは、
前記集合の各動きベクトルに対して、該集合から該動きベクトルを除去することによって生じる歪みの変化を求め、該集合から該動きベクトルを除去することによって生じるレートの変化を求め、かつ該歪みの変化と該レートの変化との比を求め、かつ
動きベクトルの除去が前記比の最小変化を生じさせる動きベクトルを前記集合から除去する、
ことによって前記レート−歪み基準を用いるように構成されていることを特徴とする請求項７に記載の装置。
【請求項１２】
前記動きベクトル候補判断デバイスは、
前記集合の各動きベクトルに対して、該集合に該動きベクトルを追加することによって生じる歪みの変化を求め、該集合に該動きベクトルを追加することによって生じるレートの変化を求め、かつ該歪みの変化と該レートの変化との比を求め、かつ
動きベクトルの追加が前記比の最小変化を生じさせる動きベクトルを前記集合に追加する、
ことによって前記レート−歪み基準を用いるように構成されていることを特徴とする請求項７に記載の装置。
【請求項１３】
動きベクトルの集合を受信する段階と、
レート−歪み基準を用いて前記動きベクトルの集合を修正する段階と、
を含む方法を、処理システムによって実行された時に、該システムに実行させる命令のコンピュータプログラムを記憶するコンピュータ可読媒体。
【請求項１４】
前記レート−歪み基準を用いる段階は、前記集合に１つ又はそれよりも多くの動きベクトルを追加又は除去して略目標レートに達する段階を含むことを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１５】
前記レート−歪み基準を用いる段階は、
前記動きベクトルの集合に対する歪みを計算する段階と、
動きベクトルを前記集合に追加して前記歪みを低減する段階と、
を含むことを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１６】
前記レート−歪み基準を用いる段階は、
前記集合の各動きベクトルに対して、該集合から該動きベクトルを除去することによって生じる歪みの変化を求める段階と、
動きベクトルの除去が、歪みを低減する歪みの変化を生じさせる場合には、歪みを低減する該動きベクトルを除去する段階と、
前記集合の各動きベクトルの除去が、歪みを増加する歪みの変化を生じさせる場合には、動きベクトルの除去が歪みの最小増加を生じさせる該動きベクトルを該集合から除去する段階と、
を含むことを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１７】
前記レート−歪み基準を用いる段階は、
前記集合の各動きベクトルに対して、該集合から該動きベクトルを除去することによって生じる歪みの変化を求め、該集合から該動きベクトルを除去することによって生じるレートの変化を求め、かつ該歪みの変化と該レートの変化との比を求める段階と、
動きベクトルの除去が前記比の最小変化を生じさせる動きベクトルを前記集合から除去する段階と、
を含むことを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１８】
前記レート−歪み基準を用いる段階は、
前記集合の各動きベクトルに対して、該集合に該動きベクトルを追加することによって生じる歪みの変化を求め、該集合に該動きベクトルを追加することによって生じるレートの変化を求め、かつ該歪みの変化と該レートの変化との比を求める段階と、
動きベクトルの追加が前記比の最小変化を生じさせる動きベクトルを前記集合に追加する段階と、
を含むことを特徴とする請求項１３に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ圧縮の分野に関する。
【背景技術】
【０００２】
動きベクトルは、１つ又はそれよりも多くの参照画像に対するターゲット画像（フレーム、フィールド、又はこれらの一部分とすることができる）の近似を容易にするために画像符号化において一般的に用いられる。この近似されたターゲット画像は、補償画像と呼ばれる。近似手順は、ターゲット画像を固定サイズのブロックへとタイル分割し、動きベクトルを各ブロックに割り当て、ターゲット画像内の各ブロックを参照画像上のぴったりとマッチングするブロックにマップする。次に、ターゲット画像の特定のブロック内の画素に対する値が、参照画像上のマップされたブロックから複写される。この近似処理に対する一般的な変形は、予測モードを追加すること、２つの同じサイズかつ位置のブロックの平均を取ること、及びタイルをより小さい領域に分割することを含む。
【０００３】
次に、所望のターゲット画像と補償画像の間の誤差を符号化する。符号器及びデコーダは、両方とも同じ参照画像へのアクセスを有すると仮定する。従って、動きベクトル及び残差誤差補償のみを用いて、変換のためのビデオ符号化を達成する。
【０００４】
性能の良いビデオコーダは、多くの要素の均衡を取り、限られたコンピュータリソースを用いて高品質のターゲット画像を生成する。これらの要素の全ての中でも、参照ブロックにマップする動きベクトルの集合の選択は、ビデオ品質に対して重要であり、多くのコンピュータリソースに関してコストがかかる。従来のビデオコーダは、利用可能なコンピュータリソースが限られているので、全体的に最適な動きベクトルの集合を選択することができない。
【０００５】
従って、限られた割込可能なコンピュータリソースを用いてターゲット画像を予測するための全体的に最適又はほぼ全体的に最適な動きベクトルの集合を選択する方法に対する必要性が存在する。
【発明の開示】
【０００６】
ベクトルを選択する方法は、動きベクトルの集合及び目標レートを受信する段階、及びレート−歪み基準を用いて動きベクトルの集合を修正する段階を含む。
【０００７】
本発明は、例示的に示しており、添付図面と共に以下の説明を参照することによってより良く理解することができる。
【発明を実施するための最良の形態】
【０００８】
以下の説明では、説明の一部を形成し、本発明を実施することができる特定的な実施形態を例示的に示す添付図面を参照する。本発明の範囲から逸脱することなく、他の実施形態を利用することもでき、構造的変更を加えることができることは理解されるものとする。例えば、様々な実施形態を説明するために用いるフィールド、フレーム、又は画像という用語は、一般的にビデオデータに関して用いられるものと互換的であることを当業者は理解するであろう。
【０００９】
動きベクトル選択方法は、動きベクトルの既存の初期選択を修正し、指定ビットレートでのターゲット画像の改善された表現を導出する。いくつかの実施形態では、本方法は、解の近くで初期化することができ、レート制御は、いつでも修正することができ、かつ本方法は、いつでも割り込まれることができ、本方法を実時間ビデオ符号化のための構成要素として非常に適するものにする。
【００１０】
本方法は、限られた割込可能なリソースを用いることによってほぼ最適な選択を見出すものである。このタスクは、時空間参照画像の初期選択を用いて開始し、次に、この選択を迅速に修正して実行可能な選択を形成することによって達成される。次に、本方法は、演算が収束するか又は１つ又はそれよりも多くの他の停止基準に達するまでこの選択を改善し続ける。各修正された選択は、レート−歪みの改善をもたらし、所定レートに対して動きベクトルの選択をほぼ最適化する。
【００１１】
動きベクトル選択方法を実行するためのデバイスの例を図１に示す。動きベクトル選択デバイス１１０は、ターゲット画像１１５、参照プール１２０からの１つ又はそれよりも多くの参照画像の集合、動きベクトルの初期集合（空集合とすることができる）１２５、及び許容ビットレートＲT又は許容効率ΔＤ／ΔＲを示す制御信号１３０を受信し、ここでΔＤは歪み変化である。
【００１２】
いくつかの実施形態で用いられる歪みの例は、補償画像上の画素とターゲット画像上の対応する画素の間の差の自乗和である。歪みの別の例は、ターゲット画像及び補償画像上の対応する画素間の差の絶対和である。
【００１３】
ΔＲは、ビットレート変化である。いくつかの実施形態では、ビットレートは、各秒のビデオを符号化するのに要するビットの平均数である。目標レートは、アルゴリズムが達成しようとするレートである。現在のレートは、動きベクトルの現在の選択を符号化するのに要するビデオの１秒当たりのビット数である。レート差(rate variance)は、目標レートに加えられるレートであり、現在のレートに対する繰返しの許容限度を定める。
【００１４】
動きベクトル候補判断デバイス１３５は、形状定義ライブラリ１４０を用いて動きベクトルの出力集合を選択する。制御信号１３０によって設定される許容パラメータの範囲内でターゲット画像１１５を近似する補償画像１４５が形成されるように、この動きベクトルの出力集合を参照画像に適用する。次に、動きベクトルの出力集合１５０は、ビデオ圧縮及び伝送処理の一部として符号化することができる。
【００１５】
形状定義ライブラリ１４０内の各形状定義は、動きベクトルによって補償される画素の集合を指す。例えば、図２は、参照ブロックを構成するための２つの形状定義を示す。形状定義２１０は、Ｍ×Ｎ画素のターゲット画像を１６画素×１６画素の重なりのないブロックの集合へとタイル分割する。例えば、ブロック２１１は、１６×１６画素のブロックである。各ブロックは、動きベクトル（示していない）によって表される。固有の動きベクトルＩＤを用いて、形状定義内の特定のブロックを識別する。この例では、動きベクトルＩＤは、１から（Ｍ×Ｎ）／（１６×１６）までの範囲に及ぶ。別の例として、形状定義２２０は、ターゲット画像を４×４画素のブロックにタイル分割する。例えば、ブロック２２１は、４×４画素のブロックである。形状定義２２０における動きベクトルＩＤは、１から（Ｍ×Ｎ）／（４×４）までの範囲に及ぶ。同様に、固有の形状ＩＤを用いて、各形状定義を識別する。固有の形状ＩＤ及び固有の動きベクトルＩＤを用いて、複数の形状定義内の特定のブロックを一意的に判断する。形状２１０及び２２０は、ビデオ符号化において一般的に用いられる形状を例示する。
【００１６】
図３は、形状定義ライブラリ１４０のいくつかの実施形態で一緒に用いられる形状定義の例を示す。これらの例では、形状定義は、１６画素×１６画素のブロックに基づいている。一部の形状定義は、重なりブロックのようなより複雑な相互作用を可能にするオフセットを有する。例示的形状定義３１０は、Ｍ×Ｎ画素のターゲット画像を１６×１６画素のブロックへとタイル分割し、１という形状ＩＤを有し、１から（Ｍ×Ｎ）／（１６×１６）までの範囲に及ぶ動きベクトルＩＤを有する。形状定義３２０は、Ｍ×Ｎ画素のターゲット画像を１６×１６ブロックへとタイル分割し、画像の上及び下の境界に沿って縦に８画素のオフセット３２１及び３２２を有する。例示的形状定義３２０の形状ＩＤは２であり、動きベクトルＩＤは、１から（Ｍ−１）×Ｎ）／（１６×１６）までの範囲に及ぶ。例示的形状定義３３０は、Ｍ×Ｎ画素のターゲット画像を１６×１６ブロックへとタイル分割し、画像の右及び左の境界に沿って横に８画素のオフセット３３１及び３３２を有する。形状定義３３０に対する形状ＩＤは３であり、動きベクトルＩＤは、１から（Ｍ×（Ｎ−１）／（１６×１６）までの範囲に及ぶ。例示的形状定義３４０は、Ｍ×Ｎ画素のターゲット画像を１６×１６ブロックへとタイル分割し、縦に８画素のオフセット３４１、３４２、及び横に８画素のオフセット３４３、３４４を有する。形状定義３４０に対する形状ＩＤは４であり、動きベクトルＩＤは、１から（（Ｍ−１）×（Ｎ−１））／（１６×１６））までの範囲に及ぶ。形状ＩＤと動きベクトルＩＤとの組合せを用いることによって、形状定義３１０、３２０、３３０、及び３４０から特定のブロックが一意的に識別される。
【００１７】
ライブラリ１４０（図１に示す）内の形状定義によるターゲット画像４１５内のターゲットブロック４１０は、例えば図４に示すように、動きベクトルの出力選択からの動きベクトル４３０を用いて参照画像４２５内の対応する参照ブロック４２０の位置にマップされる。動きベクトル４３０は、ターゲットブロック４１０に対する参照ブロック４２０の縦横のオフセットΔｙ及びΔｘによって表される動きの量を示す。一実施形態では、完全に特定された動きベクトルは、形状ＩＤ、動きベクトルＩＤ、参照画像ＩＤ、及び縦横のオフセットを含む。動きベクトルを符号化システムの一部として求める時には、参照画像は、元の入力画像又はそれらの復号された対応画像のいずれでもよい。
【００１８】
参照ブロックを動きベクトルによって特定した後に、参照ブロックからの画素値を対応するターゲットブロックに複写する。次に、ターゲットブロックを参照ブロックにマップする動きベクトルの出力選択を用い、更に、画素値をターゲットブロックに複写することによって、補償ターゲット画像を生成する。補償画像は、ターゲット画像を近似するために一般的に用いられる。補償画像をビデオ復号システムの一部として構成する時には、参照画像は、一般的に前に復号された画像である。
【００１９】
いくつかの場合では、ターゲット画像内の一部の画素は、複数のターゲットブロックの一部であり、１つよりも多くの参照ブロックにマップされて、図５に示すようにターゲットブロックの重なり領域を形成する。これらの場合には、補償画像５１５の重なり領域５１０内の各補償画素の値は、それぞれ、参照画像５２５及び５３５内の参照ブロック５２０及び５３０からの画素値の平均を取ることによって求められる。代替的に、重み付き平均又はフィルタリングによる推定を用いることができる。また、いくつかの場合では、ターゲット画像内のいくつかの画素は、ターゲットブロックの一部ではなく、どの参照ブロックにもマップされない。これらの画素は、デフォルト値（０のような）、補間値、前に保持していた値、又は別の特殊な規則を用いることができる。
【００２０】
再度図１を参照すると、動きベクトル選択デバイス１１０は、次に、形状定義ライブラリ１４０から動きベクトルの一部を選択し、動きベクトルの一部を廃棄する。次に、動きベクトルの出力集合１５０内の動きベクトル、これらの動きベクトルが参照プール１２０から参照する画像、及び形状定義ライブラリ１４０からのブロック形状定義を用いて、補償ターゲット画像１４５を構成する。動きベクトル候補判断デバイス１３５は、１つ又はそれよりも多くの動きベクトルを動きベクトルの出力集合１５０に追加すべきか否か、又はそこから除去すべきか否かを判断する。この判断は、ほぼ最適なレート−歪み基準に従って実行される。
【００２１】
動きベクトル選択方法の例を図６に示す。６１０では、初期値（動きベクトルの初期集合のような）、目標レート、レート差、ターゲット画像、及び参照画像を受信する。レート差の例は、目標レートに加えられる、レートのオーバーシュート及びアンダーシュートの量である。レート差が大きい程、より大きな変更を集合に加えるが、目標レートに戻るのにより長い時間を消費する。６２０では、レート推定値Ｒ及び歪み推定値Ｄを計算する。６３０では、レート推定値Ｒが目標ＲTよりも小さい場合には、６４０においてレートＲが目標レートＲTを量ＲSだけ超えるまで１つ又はそれよりも多くの動きベクトルを追加する。いくつかの実施形態では、６４０において時間制限が満了するまで動きベクトルを追加する。Ｒが、６３０において目標レートＲTよりも小さくない場合、又は６４０において目標レートＲTを量ＲSだけ超える場合には、６５０においてＲTとＲSの間の差がレート推定値Ｒよりも大きいか又はそれに等しくなるまで１つ又はそれよりも多くの動きベクトルを除去する。いくつかの実施形態では、６５０において、時間制限が満了するまで動きベクトルを除去する。いくつかの実施形態では、６６０において、方法は、時間制限が満了したか否かを判断する。満了している場合には、方法は６７０で終了する。そうでない場合には、方法は６４０に戻る。
【００２２】
図６に示す動きベクトル選択方法は、図７のグラフ７１０で示すように、目標レート（又は、いくつかの実施形態では目標効率）に達するまで動きベクトルを追加又は除去する。このベクトル選択を達成した後に、現在の推定レートは、グラフ７２０に示されるようにより低い歪み度を得る動作点を探しながら、目標レートの付近で上下する。７１０及び７２０における円は、目標レートに合致した時のレート及び歪み度を示す。歪み低減率は、最終的に飽和し、本方法がパフォーマンスの著しい損失なしに終了することを可能にする。
【００２３】
動きベクトル候補の集合に動きベクトルを追加するか又はそこから除去する影響の例を示すグラフを図８に示す。レート推定値Ｒ及び歪み推定値Ｄの動作点で始まると、方法は、動きベクトルを追加又は除去するオプションを有する。レートは、動きベクトルを追加することによってレートが１単位だけ上昇し、かつ動きベクトルを除去することによってレートが１単位だけ減少するように動きベクトル数に直接比例するものとしてモデル化することができる。本方法は、最も大きな歪み低減に対応する追加又は削除アクションを選択する。図８の各矢印は、動きベクトルに対応し、レート及び歪みに対する動きベクトルの影響を示す。
【００２４】
例えば、矢印８０２、８０４、８０６、及び８０８は、集合１５０からの１つの動きベクトルを除去する影響を示している。矢印８０８に対応する動きベクトルを除去することによって、最大の画像歪み増加が生じる。矢印８０２に対応する動きベクトルを除去することによって、最小の歪み増加が生じる。４つの全ての場合に、動きベクトルを除去することによって１単位だけレートが低下し、補償画像の歪みが増加する。動きベクトルを除去することによって歪みを低減することができるが、この結果は比較的まれである。
【００２５】
矢印８１０、８１２、８１４、８１６、８１８、及び８２０は、集合１５０に動きベクトルを追加する影響を示している。各場合に、動きベクトルを追加することによってレートは１単位だけ上昇する。いくつかの場合では、動きベクトルを追加することによって歪みも増加する。例えば、矢印８２０は、対応する動きベクトルを集合８５０に追加することによって、レートが上昇するだけでなく、歪みも増加することになることを示している。他の場合には、例えば、矢印８１４によって示されるように、動きベクトルの追加は、歪みに対して何の影響も与えない。追加の動きベクトルが補償画像の歪み量を低減する場合には、動きベクトルを集合に追加することは効率的である。矢印８１０及び８１２は、集合に追加された場合に歪みを低減する動きベクトルに対応している。
【００２６】
動きベクトルの集合１５０に動きベクトルを追加するか又はそこから除去する影響を示す表を図９に示す。この例では、現在集合内に存在する動きベクトルを除去することができ、現在集合内に存在しない動きベクトルを追加することができる。符号化レートを低減しようとする場合には、動きベクトル選択方法は、集合から除去された時に最小の歪み増加を生じさせる動きベクトルを特定する。例えば、本方法は、図９の「除去された場合」列からの最小値を有する動きベクトルを除去する。同様に、符号化レートを上昇させようとする場合には、本方法は、最大の歪み減少を生じさせる動きベクトルを追加する。例えば、本方法は、「追加した場合」列からの最も小さな負の値を有する動きベクトルを追加する。
【００２７】
一般的に、本方法では、レート変更が±１に制限されない場合を考慮することができる。この状況は、より精巧なレート推定法を用いる場合又は動きベクトル選択へのいくつかの同時変更を可能にする場合に起こり得る。この一般的な場合には、様々な判断候補を適用する影響は、動作点を（Ｒ、Ｄ）から図１０に示す矢印によって示されるものに移動する。複数の動きベクトルがこの基準を満たす場合には、これらの動きベクトルのうちの１つを選択する。そうでない場合には、考慮されており、かつ最小を有する動きベクトルを選択する。
【００２８】
例えば、矢印１０１０は、動きベクトルを除去することによる歪み増加を示している。矢印１０２０は、異なる動きベクトルを除去することによる大きな歪み増加を示している。従って、レートを低減するために動きベクトルを除去すべき場合には、歪み増加が最小限に止まるので、矢印１０１０に対応する動きベクトルは、より良好な選択である。同様に、矢印１０３０、１０４０、１０５０、及び１０６０は、動きベクトルを追加する影響を示している。矢印１０３０及び１０４０に対応する動きベクトルは、レートを上昇させ、かつ歪みを増加するので、これらの動きベクトルは追加しない。矢印１０５０及び１０６０に対応する動きベクトルは、歪みを低減する。これらの中では、より大きな歪み低減を生じるので、１０６０は、より良好な選択である。
【００２９】
一般的な場合における表を図１１に示す。この表は、図９の表からの２つの独立した変更を示す。第１に、動きベクトルを１回よりも多く適用することができ、それによってマップ値の平均である補償値が変更される。第２に、動きベクトルを複数回適用する場合に、レートのモデル化は、単純に動きベクトルを計数するよりも複雑である。従って、「適用回数」を表に追加している。更に、歪みへの影響よりはむしろ、動きベクトルの追加又は除去のΔＤ／ＡＲによって評価される効率に対する影響が考えられている。
【００３０】
図１２は、図６の６４０に例示する動きベクトルを追加する方法の例を示す。１２１０では、最良の動きベクトル候補を動きベクトルの集合への潜在的追加物として選択する。動きベクトル候補の集合に│ΔＲ、ΔＤ│が０よりも小さい動きベクトルが存在する場合、最良の候補はそのようなベクトルである。そうでない場合には、最良の候補は、ΔＤ／ΔＲの最小値を有する動きベクトルである。次に、１２２０では、方法は、最良の動きベクトル候補を追加することによって補償画像の歪みが減少するか否かを判断する。減少しなければ、方法は終了する。減少すれば、最良の動きベクトル候補を集合１５０に仮に追加する。１２４０では、レート及び歪みの値を更新する。１２６０では、候補テーブルを更新する。次に、１２７０では、方法は、現在の推定レートＲが、目標レートＲTの許容範囲にあるか否かを判断する。許容範囲にある場合には、１２８０において最良の動きベクトル候補を集合に永続的に追加する。１２９０では、レートＲが目標レートＲTを量ＲSだけ上回った場合に、動きベクトルを追加する方法は、図６の動きベクトル選択方法におけるブロック６５０に戻ることによって終了する。そうでない場合には、動きベクトルを追加する方法は１２１０に戻る。
【００３１】
図１３は、図６の６５０に例示する動きベクトルを除去する方法の例である。１３１０では、方法は、動きベクトルの集合１５０内に動きベクトルが存在しないかを判断する。動きベクトルが存在しない場合には、方法は終了する。そうでない場合には、１３２０において最良の動きベクトル候補を選択する。集合１５０から除去された場合に歪みを低減する動きベクトルが存在する場合には、そのようなベクトルを最良の候補として選択する。そうでない場合には、最小のΔＤ／ΔＲを有する動きベクトルを除去のための最良の候補として選択する。１３３０では、最良の候補を動きベクトルの集合から仮に除去する。１３４０では、レートＲ及び歪みＤの値を更新する。１３６０では、候補テーブルを更新する。次に、１３７０では、方法は、レートＲが目標レートＲTの許容範囲にあるかを判断する。許容範囲にある場合には、１３８０において動きベクトル候補を集合１５０から永続的に除去する。１３９０では、レートＲが目標レートＲTよりも量ＲSだけ小さい場合に、動きベクトルを除去する方法は、図６の動きベクトル選択方法におけるブロック６６０に戻ることによって終了する。そうでない場合には、動きベクトルを除去する方法は１３１０に戻る。
【００３２】
一実施形態では、動きベクトル選択方法は、図１４に示すようにビデオデータの画像（又はフレーム、又はフィールド）を符号化するためのビデオ符号化で用いられる。１４１０では、符号器は、入力ターゲット画像を受信する。ターゲット画像に関連する復号された画像データを含む参照画像の集合は、符号化処理中に符号器に対して利用可能であり、また、復号処理中にはデコーダに対しても利用可能である。１４２０では、符号器は、ターゲット画像に関連する動きベクトルの不規則なサンプリング又は割当て(distribution)を生成する。１４３０では、サンプリングパターン情報（例えば、パターンを表すビット）をデコーダに伝送する。図６に示す方法は、適応サンプリングパターンを生成するために用いることができる。
【００３３】
１４４０では、時間予測フィルタリング処理を不規則な動きサンプリングパターンに適用する。この適応フィルタリング処理は、動きベクトル、不規則なサンプリングパターン、及び参照画像を用いてターゲット画像の予測を生成する。１４５０では、動きベクトル値を符号化し、デコーダに送信する。１４６０では、ターゲット画像の実際のターゲットデータから、適応フィルタリング処理による予測誤差を差し引いた残差を生成する。１４７０では、この残差を符号化し、１４８０においてデコーダに送信する。
【００３４】
別の実施形態では、動きベクトルの適応サンプリングパターンは、図１５に示すようにビデオデータの画像（又はフレーム、又は画像）を復号するのに用いられる。１５１０では、符号化済み残差を受信する。１５２０では、デコーダは、受信した符号化済み残差を復号する。１５３０では、デコーダは、サンプリングパターン情報、参照画像、及び動きベクトル値を受信する。次に、１５４０において、デコーダは、適応時間フィルタリング手順を適用して時間予測を生成する。１５５０では、復号済み残差を時間予測に加えることによって、復号されたターゲット画像を生成する。
【００３５】
図１６は、適応影響領域フィルタを用いるシステムの例を示す。デジタルビデオカメラ１６１０は、電子形式で画像を取り込み、圧縮及び符号化処理中に動きベクトル選択方法を用いる圧縮デバイス１６２０を用いて画像を処理する。符号化された画像は、電子伝送媒体１６３０を通じてデジタル再生デバイス１６４０に送信される。画像は、復号処理中にこのフィルタを用いる復号デバイス１６５０によって復号される。カメラ１６１０は、本発明の実施形態を含む様々な画像処理装置（例えば、他の画像取り込みデバイス、画像エディタ、画像処理プロセッサ、パーソナル及び市販のコンピュータプラットフォーム等）を示している。同様に、復号デバイス１６５０は、画像データを復号する様々なデバイスを示している。
【００３６】
本発明を特定のシステム環境における実施形態に関して説明したが、本発明は、添付の特許請求の範囲の精神及び範囲内の他の異なるハードウエア及びソフトウエア環境において修正を伴って実施することができることを当業者は認識するであろう。
【図面の簡単な説明】
【００３７】
【図１】動きベクトル選択方法を実行するためのデバイスの例を示す図である。
【図２】図１に示す形状定義ライブラリ１４０のいくつかの実施形態で用いられる形状定義の例の集合を示す図である。
【図３】図１に示す形状定義ライブラリ１４０のいくつかの実施形態で用いられる形状定義例の別の集合を示す図である。
【図４】動きベクトルの出力選択からの動きベクトルを用いて参照画像内の参照ブロックにマップされるターゲットブロックの例を示す図である。
【図５】複数の参照ブロックにマップされるターゲット画像内の画素の例を示す図である。
【図６】動きベクトル選択方法の例を示す図である。
【図７】図６の方法の複数の反復によりもたらされるターゲット画像の歪み低減のグラフである。
【図８】図６の方法を用いて特定の動きベクトルを追加又は除去する結果生じるレート及び歪みの相対変化を示す図である。
【図９】動きベクトルを動きベクトルの選択に追加又はそこから除去する影響を示す表である。
【図１０】１つ又はそれよりも多くの動きベクトルを追加又は除去する結果生じるレート及び歪みの相対変化を示す図である。
【図１１】１つ又はそれよりも多くの動きベクトルを追加又は除去する影響を示す表である。
【図１２】図６の方法によって用いられる動きベクトルを追加する方法の例を示す図である。
【図１３】図６の方法によって用いられる動きベクトルを除去する方法の例を示す図である。
【図１４】図６の方法を用いてビデオデータの画像を符号化する方法の例を示す図である。
【図１５】画像を復号する方法の例を示す図である。
【図１６】動きベクトル選択方法を用いるビデオシステムの例を示す図である。
【図１】
2009509406.tif 000003
【図２】
2009509406.tif 000004
【図３】
2009509406.tif 000005
【図４】
2009509406.tif 000006
【図５】
2009509406.tif 000007
【図６】
2009509406.tif 000008
【図７】
2009509406.tif 000009
【図８】
2009509406.tif 000010
【図９】
2009509406.tif 000011
【図１０】
2009509406.tif 000012
【図１１】
2009509406.tif 000013
【図１２】
2009509406.tif 000014
【図１３】
2009509406.tif 000015
【図１４】
2009509406.tif 000016
【図１５】
2009509406.tif 000017
【図１６】
2009509406.tif 000018