(57)【要約】【課題】動き推定用の最適誤差距離関数が、画像のビデオコーディング及び／又はビデオ処理のために決定され、使用される。そうするために、初期誤差距離関数を使用する初動推定が行なわれる。これは動き予測誤差を生成する。初期誤差距離関数が最適誤差距離関数でない場合に、選択された最適誤差距離関数を使用して、最終動き推定を行なう。ある実施例では、誤差分布の形は最適誤差距離関数を決定するために使用できる。この動き推定のための若干の具体例システムや装置は、圧縮、時間的補間及び／又はスーパー分解能処理用のシステムやデバイスに含まれる。【解決手段】【選択図】図１
2011508536.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータの動き推定（motion estimation）用の最適誤差距離関数（optimal error metric function）を決定するための画像の動き推定用の方法であって、
初期誤差距離関数を指定し；
前記初期誤差距離関数を使用して初動推定（initial motion estimation）を行ない、ここで、前記初動推定が動き予測誤差（motion prediction errors）を生成し；
前記初期誤差距離関数が前記最適誤差距離関数でない場合、選択された最適誤差距離関数を使用して、最終動き推定を行なうこと；
を特徴とする方法。
【請求項２】
請求項１の方法において、さらに、前記初動推定の前記動き予測誤差の分布と、複数の誤差距離関数の１つに関連づけた分布との比較に基づいて、前記初期誤差距離関数が最適誤差関数であるかを判断することから成ることを特徴とする方法。
【請求項３】
請求項２の方法において、前記初期誤差距離関数が前記最適誤差関数でない場合、前記方法がさらに、前記動き予測誤差の分布に基づいた前記最適誤差距離関数を選択することから成ることを特徴とする方法。
【請求項４】
請求項３の方法において、前記初動推定を行なう方法は、前記動き予測誤差を決定するために前記初期誤差距離関数を処理することから成ることを特徴とする方法。
【請求項５】
請求項３の方法において、さらに前記初期誤差距離関数に関連した初期確率分布を指定することから成ることを特徴とする方法。
【請求項６】
請求項３の方法において、前記初期誤差距離関数が前記最適誤差関数であるか判断することは、前記初期誤差距離関数用の前記動き予測誤差のヒストグラムを計算することから成ることを特徴とする方法。
【請求項７】
請求項６の方法において、前記初期誤差距離関数が前記最適誤差関数であるか判断することは、前記ヒストグラムの統計的最良適合のための分布を決定することから成ることを特徴とする方法。
【請求項８】
請求項７の方法において、前記統計的最良適合のための分布を決定することは、前記最適誤差距離関数の確率分布用のスケール係数を決定することから成ることを特徴とする方法。
【請求項９】
請求項８の方法において、前記確率分布の候補は、ガウス分布、ラプラス分布、及びコーシー分布から成ることを特徴とする方法。
【請求項１０】
請求項８の方法において、前記スケール係数を決定した後に、最良適合分布のための統計試験を行なうことを、さらに含むことを特徴とする方法。
【請求項１１】
請求項１０の方法において、前記統計試験は分布適合のためのカイ二乗検定を行なうことから成ることを特徴とする方法。
【請求項１２】
請求項１１の方法において、前記初期誤差距離関数はフーバーの距離関数であることを特徴とする方法。
【請求項１３】
請求項３の方法において、前記初期誤差距離関数は複数の確率分布における中間の確率分布に関連することを特徴とする方法。
【請求項１４】
請求項１３の方法において、前記複数の確率分布は、ガウス分布、ラプラス分布、又はコーシー分布から成ることを特徴とする方法。
【請求項１５】
請求項１の方法において、前記初期誤差距離関数は、絶対差の総和（ＳＡＤ)、2乗された差の総和（ＳＳＤ)、平均絶対誤差（ＭＡＤ)、平均二乗誤差（ＭＳＥ)、又はロバスト推定値の１つ以上の関数から成ることを特徴とする方法。
【請求項１６】
請求項１の方法において、ビデオエンコーダの動き推定ユニットで動き推定を行なうように、さらに構成されることを特徴とする方法。
【請求項１７】
請求項１の方法において、前記最適誤差距離関数を使用してビデオコーディングの区間予測（inter-prediction）を行なうことを、さらに有することを特徴とする方法。
【請求項１８】
請求項１７の方法において、前記ビデオコーディング用の前記区間予測を行う方法は：
動き推定ユニットで、ピクセルのブロックとフレームを受け取り、１つ以上の動きベクトルを生成し；
動き補償ユニットで、前記フレームおよび前記１つ以上の動きベクトルを受け取り、前記ピクセルのブロックに近似する予測値を生成し；
減算器ユニットで、前記ピクセルのブロックから前記予測値を差し引き、差異画像ブロックを生成すること；
が含まれることを特徴とする方法。
【請求項１９】
請求項１の方法において、前記最適誤差距離関数を使用してビデオ処理のための時間的補間を行なうことを、さらに有することを特徴とする方法。
【請求項２０】
請求項１９の方法において、前記時間的補間を行なう方法は：
動き推定ユニットで、第1のフレームと第2のフレームを受け取り、１つ以上の動きベクトルを生成し；
双方向補間ユニットで、前記第１のフレーム、前記第2のフレームおよび前記１つ以上の動きベクトルを受け取り、前記第１と第2のフレームに関連した時間の間にある画像の近似値を生成すること；
が含まれることを特徴とする方法。
【請求項２１】
請求項１の方法において、前記最適誤差距離関数を使用してスーパー分解能処理を行なうことを、さらに有することを特徴とする方法。
【請求項２２】
請求項２１の方法において、前記スーパー分解能処理を行なう方法は：
動き推定ユニットで、時間Ｔのまわりに集められた一群のフレームを受け取り、前記時間Ｔでの当該群のフレームと、当該群の別のフレームとの間の１つ以上の動きベクトルを生成し；
動き補償ユニットで、前記一群のフレームと前記１つ以上の動きベクトルを受け取り、そして前記一群のフレーム中の各フレームの予測されたバージョンを構成する画像を生成し；
スーパー分解能演算処理装置で、前記画像を受け取って、前記画像を処理し、前記一群のフレームより高い空間分解能がある前記時間Ｔでの画像を生成すること；
が含まれることを特徴とする方法。
【請求項２３】
請求項１の方法において、前記動き推定は、ブロックに基づいたか、区域に基づいた動き推定から成ることを特徴とする方法。
【請求項２４】
請求項１の方法において、前記動き推定は、位相相関か、ピクセル再帰的な（pel-recursive）技術から成ることを特徴とする方法。
【請求項２５】
請求項１の方法において、前記動き推定は、平行移動モデル、アフィン変換モデル、またはパラメトリックモデルから成る、動きモデルから構成されることを特徴とする方法。
【請求項２６】
コンピュータ読取り可能なメディア上で有形的にコード化されたコンピュータ・プログラム・プロダクトであって、データ処理装置に対して画像の動き推定用の動作を行なわせる命令を含み、前記動作は：
初期誤差距離関数を指定し；
前記初期誤差距離関数を使用して初動推定を行ない、ここで、前記初動推定は動き予測誤差を生成し；
前記初期誤差距離関数が前記最適誤差関数でない場合に、選択された最適誤差距離関数を使用して、最終動き推定を行なうこと；
が含まれることを特徴とする方法。
【請求項２７】
請求項２６のコンピュータ・プログラム・プロダクトにおいて、前記動作がさらに、前記初動推定の前記動き予測誤差の分布を、複数の誤差距離関数の一つに関連づけた分布と比較することに基づいて、前記初期誤差距離関数が前記最適誤差関数であるか判断することから成ることを特徴とするコンピュータ・プログラム・プロダクト。
【請求項２８】
請求項２７のコンピュータ・プログラム・プロダクトにおいて、前記初期誤差距離関数が前記最適誤差関数でない場合、前記動作がさらに、前記動き予測誤差の分布に基づいた前記最適誤差距離関数を選択することから成ることを特徴とするコンピュータ・プログラム・プロダクト。
【請求項２９】
請求項２８のコンピュータ・プログラム・プロダクトにおいて、前記分布が前記動き予測誤差の前記分布の最良適合かどうかを判断することには：
複数の分布状態の候補に関連したスケール係数を決定し；
前記複数の分布状態の候補について統計試験を行ない；
前記統計試験で前記複数の誤差距離関数の一つに関連づけた前記分布と最良適合を見せるかどうかを判断する；
ことから成ることを特徴とするコンピュータ・プログラム・プロダクト。
【請求項３０】
請求項２９のコンピュータ・プログラム・プロダクトにおいて、前記統計試験はカイ二乗検定から成ることを特徴とするコンピュータ・プログラム・プロダクト。
【請求項３１】
請求項２９のコンピュータ・プログラム・プロダクトにおいて、前記初期誤差距離関数はフーバー距離関数から成ることを特徴とするコンピュータ・プログラム・プロダクト。
【請求項３２】
請求項２６のコンピュータ・プログラム・プロダクトにおいて、ビデオエンコーダの動き推定ユニットで動き推定を行なうための命令をさらに含むことを特徴とするコンピュータ・プログラム・プロダクト。
【請求項３３】
請求項２６のコンピュータ・プログラム・プロダクトにおいて、前記最適誤差距離関数を使用してビデオコーディングの区間予測を行なうための命令をさらに含むことを特徴とするコンピュータ・プログラム・プロダクト。
【請求項３４】
請求項２６のコンピュータ・プログラム・プロダクトにおいて、前記最適誤差距離関数を使用してビデオ処理用の時間的補間を行なうための命令をさらに含むことを特徴とするコンピュータ・プログラム・プロダクト。
【請求項３５】
請求項２６のコンピュータ・プログラム・プロダクトにおいて、前記最適誤差距離関数を使用してスーパー分解能処理を行なうための命令をさらに含むことを特徴とするコンピュータ・プログラム・プロダクト。
【請求項３６】
画像の動き推定を行なうためのシステムであって：
画像データを表示する表示装置；
画像データ処理のために前記画像データと命令を記憶するコンピュータ読取り可能なメディア；
前記命令と前記画像データを処理するのに使用可能なデータ処理装置とを備えると共に、前記命令は前記データ処理装置に以下の事項を実行させる：
初期誤差距離関数を使用して、初動推定を行なうものであって、ここで、前記初動推定は動き予測誤差を生成し；
前記動き予測誤差の分布に基づいた複数の誤差距離関数の１つから、前記最適誤差距離関数を選択し；
もし前記初期誤差距離関数が前記最適誤差関数として選択されない場合は、前記選択された最適誤差距離関数を使用して最終動き推定を行なう；
ことを特徴とするシステム。
【請求項３７】
請求項３６のシステムにおいて、前記表示装置は、前記データ処理装置から前記最適誤差距離関数を備えた画像データがある表示画像への画像データを受け取るように構成されることを特徴とするシステム。
【請求項３８】
請求項３６のシステムにおいて、前記命令は、さらに前記データ処理装置に前記初動推定に基づいて前記動き予測誤差のヒストグラムを計算させることを特徴とするシステム。
【請求項３９】
請求項３６のシステムにおいて、前記システムはデジタル映画又は３Ｄ映画用であることを特徴とするシステム。
【請求項４０】
請求項３６のシステムにおいて、前記データ処理装置は、ビデオエンコーダ内の動き推定ユニットから成ることを特徴とするシステム。
【請求項４１】
動き推定のための最適誤差距離関数を決定するコンピュータに実装される方法であって：
画像の初動推定のための第１の誤差距離関数を選択し；
前記第１の誤差距離関数と共に初動推定を行なうと共に、前記初動推定は動き予測誤差を生成し；
前記第１の誤差距離関数が、前記生成された動き予測誤差の分布を備えた最良適合である分布と合致する場合か決定することによって、前記第１の誤差距離関数が最適誤差距離関数であるか定め；
前記第１の誤差距離関数が前記最適誤差距離関数でない場合、画像の後続する動き推定のための前記最適誤差距離関数の為に、第2の誤差距離関数を選択し、ここで、前記第2の誤差距離関数の前記選択では、前記初動推定から前記生成された動き予測誤差の前記分布を備えた最良適合である分布に対応する；
コンピュータに実装された方法。
【請求項４２】
請求項４１のコンピュータに実装された方法において、前記第１の誤差距離関数又は第2の誤差距離関数は、複数の誤差距離関数から選択されることを特徴とする方法。
【請求項４３】
請求項４２のコンピュータに実装された方法において、前記複数の誤差距離関数は、ガウス分布、ラプラス分布、コーシー分布、及び／又はフーバー分布の一以上からの分布を有する関数から成ることを特徴とする方法。
【請求項４４】
請求項４１のコンピュータに実装された方法において、前記第１の動き推定又は前記第2の動き推定が連続的な導関数で誤差距離関数で最小化する方法を使用する場合、前記初期誤差距離関数は、フーバー距離関数と関係を有することを特徴とする方法。  
【請求項４５】
請求項４１のコンピュータに実装された方法において、さらに、前記初動推定から前記生成された動き予測誤差に基づいて前記生成された動き誤差のヒストグラムを計算することを特徴とする方法。
【請求項４６】
請求項４５のコンピュータに実装された方法において、前記第１の誤差距離関数が前記生成された動き予測誤差の前記分布と前記最良適合である分布に対応する場合か決定する場合に：
前記生成された動き予測誤差の前記分布のためのスケール係数を決定し；
前記分布が前記生成された動き予測誤差の前記分布と前記最良適合かどうかを判断するために統計的試験をすること；
から成ることを特徴とする方法。
【請求項４７】
請求項４１のコンピュータに実装された方法において、さらに、ビデオエンコーダの動き推定ユニットで動き推定を行なうことを特徴とする方法。
【請求項４８】
請求項４１のコンピュータに実装された方法において、さらに、前記最適誤差距離関数を使用して、ビデオコーディングの区間予測を行なうことを特徴とする方法。
【請求項４９】
請求項４１のコンピュータに実装された方法において、さらに、前記最適誤差距離関数を使用して、ビデオ処理用の時間的補間を行なうことを特徴とする方法。
【請求項５０】
請求項４１のコンピュータに実装された方法において、さらに、前記最適誤差距離関数を使用して、スーパー分解能処理を行なうことを特徴とする方法。
【請求項５１】
ビデオコーディングの区間予測を行なうためのシステムであって、前記システムは：
ピクセルのブロックとフレームを受け取り、かつ１つ以上の動きベクトルを生成する動き推定ユニット；
前記フレームと前記１つ以上の動きベクトルを受け取り、かつ前記ピクセルのブロックに近似する予測値を生成する動き補償ユニット；
前記ピクセルのブロックから前記予測値を引き、差異画像ブロックを生成する減数器ユニット；
を有し、ここで前記動き推定ユニットは、次の命令から成る処理によって動き推定の最適誤差距離関数を決定するように構成される：
初期誤差距離関数を指定し；
前記初期誤差距離関数を使用して初動推定を行ない、ここで前記初動推定は動き予測誤差を生成し；
もし前記初期誤差距離関数が前記最適誤差距離関数でない場合に、選択された最適誤差距離関数を使用して最終の動き推定を行う；
ことを特徴とするシステム。
【請求項５２】
請求項５１のシステムにおいて、前記動き推定ユニットは、前記動き推定のための前記最適誤差距離関数を定めるために、次の命令から成る処理：
前記初動推定の前記動き予測誤差の分布と複数の誤差距離関数の１つに関係する分布との比較に基づいて、前記初期誤差距離関数が前記最適誤差距離関数であるか定めること； 
前記初期誤差距離関数が前記最適誤差距離関数でない場合には、さらに、前記命令がさらに、前記動き予測誤差の分布に基づいて前記最適誤差距離関数を選択すること；
が含まれることを特徴とするシステム。
【請求項５３】
請求項５２のシステムにおいて、前記初期誤差距離関数はフーバーの距離関数から成ることを特徴とするシステム。
【請求項５４】
請求項５１のシステムにおいて、前記システムはビデオエンコーダから成り、ここで前記動き推定ユニットと前記動き補償ユニットは前記ビデオエンコーダの構成部分であることを特徴とするシステム。
【請求項５５】
請求項５１のシステムにおいて、前記動き推定ユニットは誤差距離関数の形状を決定し、前記最適誤差距離関数を決定するために前記形状を使用することを特徴とするシステム。
【請求項５６】
請求項５１のシステムにおいて、前記差異画像ブロックは残差から成ることを特徴とするシステム。
【請求項５７】
ビデオ処理用の時間的補間用のシステムであって、前記システムは：
第１のフレームおよび第2のフレームを受け取り、かつ１つ以上の動きベクトルを生成する動き推定ユニット；
前記第１のフレーム、前記第2のフレームおよび前記１つ以上の動きベクトルを受け取り、かつ前記第１と第2のフレームに関連する時間の間にある画像の近似値を生成する双方向補間ユニット；
を備え、ここで前記動き推定ユニットは、次の命令から成る処理によって、動き推定用の最適誤差距離関数を決定するように構成される：
初期誤差距離関数を指定し；
前記初期誤差距離関数を使用して初動推定を行ない、ここで前記初動推定は動き予測誤差を生成し；
前記初期誤差距離関数が前記最適誤差距離関数でない場合に、選択された最適誤差距離関数を使用して最終動き推定を行なうこと；
を特徴とするシステム。
【請求項５８】
請求項５７のシステムにおいて、前記動き推定ユニットは、さらに前記動き推定用の前記最適誤差距離関数を決定するために、次の命令から成る処理：
前記初動推定の動き予測誤差の分布と複数の誤差距離関数の１つと関係する分布との比較に基づいて、前記初期誤差距離関数が前記最適誤差距離関数であるか定めること； 
前記初期誤差距離関数が前記最適誤差距離関数でない場合には、前記命令には、さらに前記動き予測誤差の分布に基づいて前記最適誤差距離関数を選択することが含まれること；
を特徴とするシステム。
【請求項５９】
請求項５８のシステムにおいて、前記初期誤差距離関数はフーバーの距離関数から成ることを特徴とするシステム。
【請求項６０】
請求項５７のシステムにおいて、前記動き推定ユニットは、誤差距離関数の形状を決定し、前記最適誤差距離関数を決定するために前記形状が使用されるように構成されることを特徴とするシステム。
【請求項６１】
請求項５７のシステムにおいて、等しい部分区間で複数の中間画像が前記システムで計算される場合、システムはスロービデオ効果を生むことを特徴とするシステム。
【請求項６２】
請求項５７のシステムにおいて、前記システムはフレーム速度変換用に構成され、前記システムは、第１の周波数での第１のビデオストリームを、第2の周波数での第2のビデオストリームに変換する、双方向補間ユニットに関連した時間を使用するように構成されることを特徴とするシステム。
【請求項６３】
ビデオ処理用のスーパー分解能処理を行なうためのシステムであって、前記システムは：
時間Ｔのまわりに集められた一群のフレームを受け取り、かつ時間Ｔの前記群のフレームと前記群の別のフレームとの間で、１つ以上の動きベクトルを生成するように構成された動き推定ユニット；
前記一群のフレームと前記１つ以上の動きベクトルを受け取り、かつ前記一群のフレームでの各フレームの予測されたバージョンから成る画像を生成するための動き補償ユニット；
前記画像を受け取り、前記画像を処理し、前記一群のフレームより高い空間分解能がある前記時間Ｔでの画像を生成するためのスーパー分解能演算処理装置；
を備え、前記動き推定ユニットは、動き推定のための最適誤差距離関数を決定するように、次の命令から成る処理によって、構成される：
初期誤差距離関数を指定し；
前記初期誤差距離関数を使用して初動推定を行ない、ここで前記初動推定は動き予測誤差を生成し；
前記初期誤差距離関数が前記最適誤差距離関数でない場合に、選択された最適誤差距離関数を使用して、最終動き推定を行なうこと；
を特徴とするシステム。
【請求項６４】
請求項６３のシステムにおいて、前記動き推定ユニットは、さらに、前記動き推定のための最適誤差距離関数を決定するために、次の命令から成る処理：
前記初動推定の前記動き予測誤差の分布と複数の誤差距離関数の１つと関係する分布との比較に基づいて、前記初期誤差距離関数が前記最適誤差距離関数であるか定めること；
前記初期誤差距離関数が前記最適誤差距離関数でない場合には、前記命令には、さらに前記動き予測誤差の分布に基づいて前記最適誤差距離関数を選択することが含まれること；
を特徴とするシステム。
【請求項６５】
請求項６３のシステムにおいて、前記初期誤差距離関数又は前記最適誤差距離関数はフーバーの距離関数から成ることを特徴とするシステム。
【請求項６６】
請求項６３のシステムにおいて、前記動き推定ユニットは、誤差距離関数の形状を決定し、前記最適誤差距離関数を決定するために前記形状を使用できるように構成されたことを特徴とするシステム。
【請求項６７】
請求項６３のシステムにおいて、前記スーパー分解能演算処理装置は、ナイキスト周波数を調整し、前記画像に関連した分解能を増加させることにより、前記画像からより高分解能画像を抽出するように構成されたことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連する出願への相互参照］
本出願は、2007年12月19日に申請された出願番号61/015148号で、発明の名称が「適応性動き推定」である米国の仮出願についての優先権の利益を請求する。当該明細書の情報は参照によって組み込まれる。
【０００２】
本明細書の情報は、画像やビデオデータの動き推定（motion estimation）に関し、特に画像圧縮、記憶、処理、表示、及び／又は伝送システムについての動き推定用等のために関する。
【０００３】
［背景］
動き推定は、基準画像の１つ以上の部分が平行移動されたコピーの面から、画像をモデル化するための技術として説明される。動き推定はそれ自身、見る価値のある画質のビデオや画像データを生成する画像シーケンスのモデルに基づく。例えば、オブジェクトの画像が１つのフレームから次のフレームに変化し又は移動した場合、動き推定は平滑な画像遷移を生むために使用される。
【具体的な実施例の概要】
【０００４】
以下の段落は、現在開示される技術の実施例のある基本的理解が得られるようにするために、簡潔で単純化された概要を提示する。この概要は実施例の広範囲な全体像を示す概要でないことに注意されるべきである。さらに、この概要はいかなる特に顕著な態様や要素を特定するものとして了解されるものではなく、また技術一般や、特定の実施例の適用範囲を詳しく説明しているものではないことに注意するべきである。以下の概要は、要約して単純化された様式で実施例に関係のある若干の概念を単に提示する。この概要は、単に下に続く一実施例の詳細な説明の概念的な序幕として、了解されるべきものである。
【０００５】
一般に、この明細書の開示に記述された主題の実施例は、動き推定用の最適誤差距離関数（optimal error metric function）を決定する画像の動き推定用の方法について述べる。本方法は初期誤差距離関数を指定し、初期誤差距離関数を使用して、初動推定（initial motion estimation）を行なうことを含んでいる。ここで、初動推定では、動き補償誤差として知られている動き推定誤差（motion prediction errors）を生成する。もし初期誤差距離関数が最適誤差距離関数でない場合、本方法は選択された最適誤差距離関数を使用して、最終動き推定を行なうことを含んでいる。
【０００６】
これらの実施例や別の実施例には、任意に以下の特徴の１つ以上を含み得る。本方法は、初動推定の動き予測誤差の分布と複数の誤差距離関数の１つに関連づけた分布との比較に基づいて、初期誤差距離関数が最適誤差関数であるかを定めることを含む。初期誤差距離関数が最適誤差関数でない場合、本方法が動き予測誤差の分布に基づいた最適誤差距離関数を選択することを含む。初動推定を行なう方法には、動き予測誤差を決定するために初期誤差距離関数を処理することを含む。本方法は初期誤差距離関数に関連した初期確率分布を指定することを含む。
【０００７】
本方法は初期誤差距離関数が最適誤差関数であるか判断することを含む場合、本方法が初期誤差距離関数用の動き予測誤差のヒストグラムを計算することを含む。本方法は初期誤差距離関数が最適誤差関数であるか判断することを含む場合、本方法がまたヒストグラムの統計的最良適合用の分布を決定することを含む。本方法が統計的最良適合用の分布を決定することを含んでいる場合、本方法はまた最適誤差距離関数の確率分布用のスケール係数を決定することを含む。
【０００８】
確率分布の候補には、ガウス分布、ラプラス分布、及び／又はコーシー分布を含む。本方法はまた、スケール係数を決定した後に、最良適合分布用の統計試験を行なうことを含む。統計試験は、分布適合用のカイ二乗検定を行なうこと含む。初期誤差距離関数はフーバーの距離関数であり、及び／又は複数の確率分布における中間の確率分布に関連する。確率分布には、ガウス分布、ラプラスの分布、及び／又はコーシー分布を含む。初期誤差距離関数は、また絶対差の総和（ＳＡＤ）、2乗された差の総和（ＳＳＤ）、平均絶対誤差（ＭＡＤ）、平均二乗誤差（ＭＳＥ）、及び／又はロバスト推定値の１つ以上の関数を含む。
【０００９】
本方法は、ビデオエンコーダの動き推定ユニットで動き推定を行なうこと、最適誤差距離関数を使用してビデオコーディングの区間予測を行なうこと、最適誤差距離関数を使用してビデオ処理用の時間的補間を行なうこと、及び／又は最適誤差距離関数を使用してスーパー分解能処理を行なうこと、が含まれる。ビデオコーディングの区間予測用の本方法は：動き推定ユニットで、ピクセルのブロックとフレームを受け取り、１つ以上の動きベクトルを生成し；動き補償ユニットで、フレームおよび１つ以上の動きベクトルを受け取り、ピクセルのブロックに近似する予測値を生成し；そして、減算器ユニットで、ピクセルのブロックから予測値を差し引き、差異画像ブロックを生成すること；が含まれる。時間的補間を行なう本方法は：動き推定ユニットで、第１のフレームと第２のフレームを受け取り、１つ以上の動きベクトルを生成し；双方向補間ユニットで、第１のフレーム、第２のフレームおよび１つ以上の動きベクトルを受け取り、第１と第２のフレームに関連した時間の間にある画像の近似を生成すること；が含まれる。スーパー分解能処理を行なう本方法は：動き推定ユニットで、時間Ｔのまわりに集められた一群のフレームを受け取り、時間Ｔでの当該群のフレームと、別の当該群のフレームとの間の１つ以上の動きベクトルを生成し；動き補償ユニットで、一群のフレームと１つ以上の動きベクトルを受け取り、そして一群のフレーム中の各フレームの予測されたバージョンを構成する画像を生成し；そして、スーパー分解能演算処理装置で、画像を受け取って、画像を処理し、一群のフレームより高い空間分解能がある時間Ｔでの画像を生成すること；が含まれる。動き推定には、ブロックに基づくか、区域に基づく動き推定を含む。動き推定には、位相相関か、ピクセル再帰的な技術を含んでいる。また、動き推定には、平行移動モデル、アフィン変換モデル、またはパラメトリックモデルのような、動きモデルを含む。
【００１０】
一般に、この明細書に記述された主題の別の態様は、コンピュータ読取り可能なメディア上で有形的に（tangibly）コード化されたコンピュータ・プログラム・プロダクト用の実施例を含み、このプログラムはデータ処理装置に対して画像の動き推定用の動作を行なわせる命令を含む。動作には、初期誤差距離関数を指定し、初期誤差距離関数を使用して、初動推定を行なうことを含む。ここで、初動推定は動き予測誤差を生成する。動作には、また、初期誤差距離関数が最適誤差関数でない場合に、選択された最適誤差距離関数を使用して、最終動き推定を行なうことが含まれる。
【００１１】
これらの実施例や別の実施例には、任意に以下の特徴の１つ以上を含み得る。初動推定の動き予測誤差の分布を複数の誤差距離関数の一つに関連づけた分布と比較することに基づいて、初期誤差距離関数が最適誤差関数であるか判断することを含む動作がある。初期誤差距離関数が最適誤差関数でない場合、動き予測誤差の分布に基づいた最適誤差距離関数を選択するための動作がある。この分布が動き予測誤差の分布の最良適合かどうかを判断するための動作には、複数の分布状態の候補に関連したスケール係数を決定し；複数の分布状態の候補の統計試験を行ない；統計試験で複数の誤差距離関数の一つに関連づけた分布と最良適合を見せるかどうかを判断する命令を含む。統計試験はカイ二乗検定を含む。初期誤差距離関数はフーバー距離関数である。コンピュータ・プログラム・プロダクトは、データ処理装置に、ビデオエンコーダの動き推定ユニットで動き推定を行なうための命令；最適誤差距離関数を使用してビデオコーディングの区間予測を行なうための命令；最適誤差距離関数を使用してビデオ処理用の時間的補間を行なうための命令；及び／又は最適誤差距離関数を使用してスーパー分解能処理を行なうための命令を含む。
【００１２】
一般に、この明細書に記述された主題の別の態様は、画像の動き推定を行なうためのシステムの実施例を含んでいる。本システムは、画像データを表示する表示装置、画像データ処理のために画像データと命令を記憶するコンピュータ読取り可能なメディア、および命令と画像データを処理するのに使用可能なデータ処理装置を含んでいる。その命令によって、データ処理装置は、初期誤差距離関数を使用して、初動推定を行なう。ここで、初動推定は動き予測誤差を生成する。当該命令によって、さらにデータ処理装置は、動き予測誤差の分布に基づいた複数の誤差距離関数の１つから、最適誤差距離関数を選択し、もし初期誤差距離関数が最適誤差関数として選択されない場合は、選択された最適誤差距離関数を使用して最終動き推定を行なう。
【００１３】
これらの実施例や別の実施例には、任意に以下の特徴の１つ以上を含み得る。表示装置は、データ処理装置から最適誤差距離関数を備えた画像データがある表示画像への画像データを受け取るように構成できる。その命令は、さらにデータ処理装置に初動推定に基づいて動き予測誤差のヒストグラムを計算させることができる。本システムは高分解能ビデオ、高品質ビデオ、デジタル映画及び／又は３Ｄ映画のために構成できる。データ処理装置は、ビデオエンコーダ内の動き推定ユニットであるか、又はこれを含む。
【００１４】
一般に、この明細書に記述された主題の別の態様は、動き推定用の最適誤差距離関数を決定するコンピュータに実装された方法用の実施例を含んでいる。コンピュータに実装された本方法は、画像の初動推定用の第１の誤差距離関数を選択することと、第１の誤差距離関数と共に初動推定を行なうことを含んでいる。初動推定は動き予測誤差を生成する。本方法には、第１の誤差距離関数が、生成された動き予測誤差の分布と最良適合である分布と対応する場合か決定することによって、第１の誤差距離関数が最適誤差距離関数であるか定めることを含んでいる。第１の誤差距離関数が最適誤差距離関数でない場合、画像の後続する動き推定用の最適誤差距離関数の為に、本方法は第２の誤差距離関数を選択することを含む。ここで、第２の誤差距離関数の選択では、初動推定から生成された動き予測誤差の分布と最良適合である分布と対応する。
【００１５】
これらの実施例や別の実施例には、任意に以下の特徴の１つ以上を含み得る。第１の誤差距離関数又は第２の誤差距離関数は、複数の誤差距離関数から選択される。誤差距離関数は、ガウス分布、ラプラス分布、コーシー分布、及び／又はフーバー分布の一以上からの分布を有する関数を含む。第１の動き推定又は第２の動き推定が連続的な導関数で誤差距離関数で最小化する方法を使用する場合、初期誤差距離関数はフーバー距離関数と関係を有する。  
【００１６】
本方法は、初動推定から生成された動き予測誤差に基づいて生成された動き誤差のヒストグラムを計算することを含む。本方法が、第１の誤差距離関数が、生成された動き予測誤差の分布と最良適合である分布と対応する場合か決定することを含んでいる場合に、さらに本方法は、さらに生成された動き予測誤差の分布用のスケール係数を決定すること、並びに分布が生成された動き予測誤差の分布と最良適合かどうかを判断するために統計的試験をすることを含む。本方法には、ビデオエンコーダの動き推定ユニットで動き推定を行なうこと、最適誤差距離関数を使用して、ビデオコーディングの区間予測を行なうこと、最適誤差距離関数を使用して、ビデオ処理用の時間的補間を行なうこと、最適誤差距離関数を使用して、スーパー分解能処理を行なうこと、を含み得る。
【００１７】
一般に、別の態様はビデオコーディングの区間予測を行なうためのシステムを含む。本システムは、ピクセルのブロックとフレームを受け取り、かつ１つ以上の動きベクトルを生成するための動き推定ユニットを含む。本システムは、フレームおよび１つ以上の動きベクトルを受け取り、かつピクセルのブロックに近似する予測値を生成するための動き補償ユニットを有する。本システムは、ピクセルのブロックから予測値を引き、差異画像ブロックを生成するために減数器ユニットを有する。動き推定ユニットは、初期誤差距離関数を指定する命令；初期誤差距離関数を使用して初動推定を行なう命令；もし初期誤差距離関数が最適誤差距離関数でない場合に、選択された最適誤差距離関数を使用して最終の動き予測を行う命令を含む処理によって動き推定の最適誤差距離関数を決定するように構成される。初動推定は動き予測誤差を生成する。
【００１８】
これらの実施例や別の実施例には、任意に以下の特徴の１つ以上を含み得る。即ち、動き推定ユニットは、初動推定の動き予測誤差の分布と複数の誤差距離関数の１つに関する分布との比較に基づいて、初期誤差距離関数が最適誤差距離関数であるか定めるための命令を含む処理によって動き推定用の最適誤差距離関数を決定する。そして、初期誤差距離関数が最適誤差距離関数でない場合には、さらに、命令には、動き予測誤差の分布に基づいて最適誤差距離関数を選択する命令が含まれる。命令及び／又は処理結果は、記憶ユニットや記憶装置に記憶される。初期誤差距離関数は、フーバーの距離関数であるか、これを含む。本システムはビデオエンコーダを含むが、ここで動き推定ユニットおよび動き補償ユニットはビデオエンコーダの構成部分である。動き推定ユニットは、誤差距離関数の形状を決定し、最適誤差距離関数を決定するために当該形状を使用できる。差異画像ブロックは残差でもよい。
【００１９】
一般に、別の態様は、ビデオ処理用の時間的補間用のシステムを含む。本システムは、第１のフレームおよび第２のフレームを受け取り、かつ１つ以上の動きベクトルを生成するための動き推定ユニットを有する。本システムは、また第１のフレーム、第２のフレームおよび１つ以上の動きベクトルを受け取り、かつ第１と第２のフレームに関連する時間の間にある画像の近似値を生成するための双方向補間ユニットを有する。動き推定ユニットは、初期誤差距離関数を指定する命令；初期誤差距離関数を使用して、初動推定を行なう命令；及び初期誤差距離関数が最適誤差距離関数でない場合に、選択された最適誤差距離関数を使用して、最終動き推定を行なう命令を含む処理によって、動き推定用の最適誤差距離関数を決定するように構成される。初動推定は動き予測誤差を生成する。
【００２０】
これらの実施例や別の実施例には、任意に以下の特徴の１つ以上を含み得る。即ち、動き推定ユニットは、初動推定の動き予測誤差の分布と複数の誤差距離関数の１つと関係する分布との比較に基づいて、初期誤差距離関数が最適誤差距離関数であるか定める命令を含む処理によって、動き推定用の最適誤差距離関数を決定する。そして、初期誤差距離関数が最適誤差距離関数でない場合には、命令には、動き予測誤差の分布に基づいて最適誤差距離関数を選択する命令が含まれる。初期誤差距離関数又は最適誤差距離関数は、フーバーの距離関数であるか、これを含む。動き推定ユニットは、誤差距離関数の形状を決定し、最適誤差距離関数を決定するために当該形状を使用できる。等しい部分区間で複数の中間画像がシステムで計算される場合、システムはスロービデオ効果を生む。システムはフレーム速度変換のために構成される。システムは、第１の周波数での第１のビデオストリームを、第２の周波数での第２のビデオストリームに変換する、双方向補間ユニットに関連した時間を使用するように構成される。
【００２１】
一般に、ある態様はビデオ処理用のスーパー分解能処理を行なうためにシステムを含んでいる。システムは、時間Ｔのまわりに集められた一群のフレームを受け取り、かつ時間Ｔの群のフレームと当該群の別のフレームとの間で、１つ以上の動きベクトルを生成するように構成された動き推定ユニットを有する。システムは、一群のフレームと１つ以上の動きベクトルを受け取り、かつ一群のフレームでの各フレームの予測されたバージョンを含む画像を生成するための動き補償ユニットを含んでいる。システムは、また画像を受け取り、画像を処理し、一群のフレームより高い空間分解能がある時間Ｔでの画像を生成するためのスーパー分解能演算処理装置を含んでいる。動き推定ユニットは、初期誤差距離関数を指定する命令；初期誤差距離関数を使用して、初動推定を行なう命令；初期誤差距離関数が最適誤差距離関数でない場合に、選択された最適誤差距離関数を使用して、最終動き推定を行なう命令を含む処理によって、動き推定用の最適誤差距離関数を決定するように構成される。初動推定は動き予測誤差を生成する。
【００２２】
これらの実施例や別の実施例には、任意に以下の特徴の１つ以上を含み得る。動き推定ユニットは、初動推定の動き予測誤差の分布と複数の誤差距離関数の１つと関係する分布との比較に基づいて、初期誤差距離関数が最適誤差距離関数であるか定める命令を含む処理によって、動き推定用の最適な誤差メトリック関数を決定できる。そして、初期誤差距離関数が最適誤差距離関数でない場合には、命令には、動き予測誤差の分布に基づいて最適誤差距離関数を選択する命令が含まれる。初期誤差距離関数又は最適誤差距離関数は、フーバーの距離関数であるか、これを含む。動き推定ユニットは、誤差距離関数の形状を決定し、最適誤差距離関数を決定するために当該形状を使用できる。スーパー分解能演算処理装置は、ナイキスト周波数を調整し、画像に関連した分解能を増加させることにより、画像からより高分解能画像を抽出するように構成され得る。
【００２３】
開示された技術は、画像とビデオの正確な動き推定を生成する、正確な誤差分布と誤差距離関数を決定できる。ある実例では、開示された技術は、動き推定に対する最適誤差関数（つまりF（））を選ぶ統計的に最適アルゴリズムを生成するために、動き予測誤差の実際の分布を考慮する。生成された動き推定は最適でロバストになりえる。開示された技術は、１００の係数を超える程度にまで、動き推定自体における誤差を低減できる。その結果、正確に画像シーケンスをモデル化できるので、画像シーケンスの動き予測誤差が本質的にゼロまで縮小される。ある実施例では、開示された技術は、３Ｄ表現された画像やビデオを含む、高品質ビデオおよびデジタル映画の中で使用できる。動き推定用の開示された技術は、導関数をとることにより誤差関数を最小限にして、複雑な動きモデルおよび複雑な技術に最適なアルゴリズムを適格に供給する。
【００２４】
ここに記述された方法と技術の任意のものが、１つ以上の構成部分を備えたシステム、装置又はデバイス、マシン、コンピュータ・プログラム・プロダクト、ソフトウェアで、ハードウェアで、あるいはそれの任意の組合せの中で実施することができる。例えば、コンピュータ・プログラム・プロダクトは、有形的にコンピュータ読取り可能なメディア上でコード化することができ、データ処理装置マシン（例えばデータ処理装置）にここに記述された方法の任意の１つ以上の動作を行なわせる命令を含み得る。
【００２５】
添付の図面と本明細書中において、１つ以上の実施例の詳細が説明される。他の特徴、態様および結果は、発明の詳細な説明、図面および請求項から明らかである。
【図面の簡単な説明】
【００２６】
【図１Ａ】図１Ａはブロック整合技術の基準画像の具体例を示す図である。
【図１Ｂ】図１Ｂはブロック整合技術の目標画像の具体例を示す図である。
【図２Ａ】図２Ａは濃度（dense）又はパーピクセル（per-pixel）の動き推定技術の基準画像の具体例を示す図である。
【図２Ｂ】図２Ｂは濃度又はパーピクセルの動き推定技術の目標画像の具体例を示す図である。
【図３】図３は確率密度の具体例を示す図である。
【図４】図４は誤差距離関数の具体例を示す図である。
【図５】図５Ａと図５Ｂは動き推定を行なう具体例を示す流れ図である。
【図６】図６はフーバー距離関数の具体例を示す図である。
【図７Ａ】図７Ａはビデオコーディングの区間予測の実施例を示す模式図である。
【図７Ｂ】図７Ｂはビデオ処理用の時間的補間の実施例を示す模式図である。
【図７Ｃ】図７Ｃはビデオ処理用のスーパー分解能処理の実施例を示す模式図である。
【図８】図８はシステム・モデルの具体例を示す図である。  様々な図面において、同一の参考番号と表示は同一の要素であることを表す。
【発明を実施するための形態】
【００２７】
一般的な目標を遂行するための様々な方法を行うために用いる一般的な構造や技術ならびにその実施態様を以下に記述する。
【００２８】
動き推定技術は、動き領域のコヒーレンスを最大化することと、動き補償誤差または動き予測誤差を最小化することとの間のバランスによって特徴づけられる。動き領域のコヒーレンスは、動き領域の平滑さの面から表現できる。コヒーレントなオブジェクトの動きは各オブジェクトで平滑であり、動き領域はオブジェクト境界だけで不連続である。これらのオブジェクト境界は輪郭縁あるいはシルエットエッジと呼ばれる。
【００２９】
動き推定問題に対処するいくつかの技術がある。しかし、ある動き推定技術は、動き予測誤差（つまり予測画像における誤差）の実際の統計を考慮せずに、単一の誤差距離関数に基づいて全誤差を最小化する。別の動き推定技術は、最小化が行なわれる前に最適誤差距離関数は何であるべきか決めずに、全誤差を最小化することを試みる。これらの動き推定技術のいくつかは、画像の特別のシーケンス用の動き推定のモデル化を考慮することなく、任意に選択された誤差距離関数を使用する強引な方法を使用する。最適誤差距離関数が定められていない場合には、動き或いは画像間のオプティカルフローは、動き補償誤差または動き予測誤差だけを最小化することで完全に決定されるのが難しい。
【００３０】
動き予測誤差の実際の統計に基づいて、統計的に最適誤差距離関数を選択するための技術を以下に述べる。これらの技術についての理解を助けるために、下記の議論では、最初にブロックに基づいた動き推定および濃度（dense）又はパーピクセル（per-pixel）動き推定のための動き推定技術について記述する。次に、その議論では、ブロックに基づいた動き推定アプローチあるいは濃度／パーピクセル動き推定アプローチからさらによく動き推定を決定するように、ある動き推定技術上の制約を加える試みについて記述する。その後、議論は、誤差距離関数の具体例とその特質について記述する。最後に、誤差の実際の統計に基づく統計的に最適誤差距離関数を選択するための技術が記述されると共に、若干の実施例が提示される。
【００３１】
ブロックに基づいた動き推定（Block-Based Motion Estimation）
ある動き推定技術はブロック整合技術（block matching technique）のような「整合」方法を含んでいる。これらの整合法に関しては、動き領域の平滑さの制約は、ある区域上で動き用のパラメトリックモデルを実行することで加えられる。この区域は、ブロック整合技術のブロック又は長方形区域、或いはより一般的には、画像の任意形状領域又はセグメントである。このパラメトリックモデルはより一般的に用いられるが、このモデルは最も普通には単純な変位である。このようなブロック整合技術は、しばしば一様な変位の技術と呼ばれるもので、目標画像中の固定位置ブロックと基準画像中の可変位置ブロックとの間の予測誤差関数の和は、目標画像の各ブロックに対して最小化される。
【００３２】
図１Ａは、ブロック整合技術の基準画像１００の具体例を示す図である。また、図１Ｂは、ブロック整合技術の目標画像１５０の具体例を示す図である。図１Ａと図１Ｂで示されるように、目標画像１５０中のブロック位置１０５は基準画像１００中の別のブロック位置１１０に移される。この例において、基準画像１００は任意のブロック位置を有している。また、目標画像１５０は固定のブロック位置を有している。このブロック整合の例において、目標画像１５０は
2011508536.tif 000003
と呼ばれ、基準画像１００は
2011508536.tif 000004
と呼ばれる。ここでは、
2011508536.tif 000005
と
2011508536.tif 000006
の水平および鉛直成分は、整数値を有する。目標画像１５０の各ブロックbは、目標画像のブロックに関する全誤差Eを最小化するように、目標画像１５０に関係している変位ベクトル
2011508536.tif 000007
を有する。一般に、全誤差Ｅは、各ピクセルで予測誤差又は動き補償誤差に適用されるある誤差距離関数F（）の総和を指す。全誤差Ｅは以下のように表現される：
【数１】
2011508536.tif 000008
予測誤差
2011508536.tif 000009
は以下のように表現される：
【数２】
2011508536.tif 000010
【００３３】
方程式が表現される通常の方法により、慣例によれば、
2011508536.tif 000011
が前向き動き推定に対して実際には反対方向である。基準画像は目標画像よりも時間的に早い。
【００３４】
濃度又はパーピクセル動き推定（Dense or Per-pixel Motion Estimation）
図２Ａは、濃度又はパーピクセル動き推定技術の基準画像の具体例を示す図である。また、図２Ｂは、濃度又はパーピクセル動き推定技術の目標画像の具体例を示す図である。濃度動きモデルは、ブロックに基づいたモデルの空間制約を緩めることができる。これらの濃度動き推定（またはパーピクセル動き推定）は画像勾配に由来するもので、ブロックに基づいた／一様変位の技術と類似している。例えば、図２Ｂで示されるように、目標画像２５０に各ピクセルの動き推定が存在する。
【００３５】
関数
2011508536.tif 000012
は、変位領域とか、動きベクトル場と呼ぶことができる（つまり、それはベクトル場である）。そのようなピクセルごとの変位は、しばしば濃度動き推定と呼ばれる。この例において、動き予測誤差
2011508536.tif 000013
は下記のように表現できる：
【数３】
2011508536.tif 000014
【００３６】
すなわち、目標画像２５０のオブジェクト２１０での点
2011508536.tif 000015
は、基準画像２００のオブジェクト２１０’のポイント
【数４】
2011508536.tif 000016
に相当する。このモデルは、制限された大きさと位置の矩形ブロックに関して、変位が一定であるという制約を除去できると共に、変位が
2011508536.tif 000017
の一般的な関数となることを可能にする。濃度動きモデルがブロックに基づいたモデルの空間の制約を緩めることができるので、濃度動きモデルによって、動き推定問題の焦点が変位場
2011508536.tif 000018
を決定する方法に変更される。
【００３７】
濃度動き推定技術のある具体例はオプティカルフロー方法である。ピクセルごとの変位は、動きのより一般的なモデルを提供するが、ピクセルごとの変位は決定するのがより難しい。ピクセルごとの変位では、一般的な動き推定問題の本質が適切に対処できないおそれがある。濃度動き推定では、一つの目標は、各ピクセルの変位ベクトルの水平および鉛直成分を決定することである。動きが強度画像に由来する場合、その問題は、画像強度中の単一の制約（つまり
2011508536.tif 000019
であり、これは小さく、理想的にはゼロである）から動き
2011508536.tif 000020
のこれら２つの構成要素を決定することである。動きの２つの構成要素の決定におけるこのアプローチは、動き微分を未決定とすると共に、信頼性を低くする。言い換えれば、単なる次の動き予測誤差関数
【数５】
2011508536.tif 000021
の最小化では、動きを推定する希望の結果に結びつかない。
2011508536.tif 000022
に拘束がない場合、変位場
2011508536.tif 000023
に多くの可能性がある。これは、全体的な予測的な誤差、Ｅに対して、低い値を与える。
【００３８】
動き推定用の情報を加えるために制約を加えること（Adding Constraints to Add Information for Motion Estimation）
ある動き推定技術は、濃度動き推定の制限を克服するために、色彩情報を使用することを試みる。色彩情報には３つのチャネルが含まれ、例えば、輝度Ｙとクロミナンス・チャンネルのUとＶ、３原色である赤Ｒ、緑Ｇ、並びに青Ｂ、あるいは別の適切な表示がある。これらのカラーチャネルを各色彩成分の１個と共に使用することによって、３個の制約から動き（２個のパラメータ）を決定する試みがなされる。しかし、実際には、色彩は強度と共に空間に非常に高度に関連しているので、加えられる情報はほとんどない。更に、隣接ピクセル間の相関もまた高度である。平坦で質感がない領域のように極端な場合では、境界を除いては動きを決定する情報がない。統計的見地からは、変位
2011508536.tif 000024
を決定するのに、
2011508536.tif 000025
中の領域情報が単純に十分にはない。
2011508536.tif 000026
と
2011508536.tif 000027
がほとんど等しいので、基準画像中の
【数６】
2011508536.tif 000028
に十分な情報が存在しないと、等価的にこれは表現できる。この結果は、単に動き推定問題の未確定で不良設定の本質を言い換えたに過ぎない。
【００３９】
予測誤差自体を最小化することだけでは、
2011508536.tif 000029
を決定するために、画像に十分な情報がないので、
2011508536.tif 000030
に１つ以上の追加の制約を負わせることは有用である。例えば、第１の付加的な要請は、
2011508536.tif 000031
にある空間コヒーレンス又は空間的平滑さを課す事である。ある技術では、その勾配
2011508536.tif 000032
の項で表現されるような、変位場の平滑さ上の追加的拘束を具体化する全誤差が、その事項（term）に加えられる。それゆえ、最小化される全誤差は次のように表現できる：
【数７】
2011508536.tif 000033
そして、より合理的な解に達する。関数G（）は、F（）と類似しているロバストな推定値である。F（）とG（）のためのロバストな形式によって、オプティカルフロー技術からの改善された推定が得られる。
【００４０】
図１Ａから図２Ｂに関して記述された動き推定技術は、ある場合での追加の制約と共に、
2011508536.tif 000034
と同様に総和を最小化する傾向がある。以下の明細書に記述された技術では、動き推定を行なう場合に、より正確でロバストな動き推定結果を生むためにどの誤差距離関数F（）を選択すべきか、という基本で見落とされた疑問に対処する。以下に、誤差距離関数のある例とそれらの特性が最初に記述され、そして次に、適切な誤差距離関数を選択するための技術が記述される。
【００４１】
誤差距離関数の例（Example Error Metric Functions）
一般に誤差距離関数F（）には、３個の主要な分類がある：
（１） Ｆ（ｕ）＝｜ｕ｜、平均絶対差（ＭＡＤ）、又は等価的に、絶対差の総和（ＳＡＤ）として一般に知られており、圧縮の中で使用される；
（２） Ｆ（ｕ）＝ｕ２、平均二乗誤差（ＭＳＥ）、又は等価的に、２乗誤差の総和（ＳＳＥ）として一般に知られている；
（３） Ｆ（）はロバスト推定値である。
【００４２】
絶対値距離（１）は、しばしば絶対差の総和（ＳＡＤ）として行われるものであるが、一般に圧縮のために好まれる。圧縮効率のために、あるいは単にこれが計算するのに最も容易な距離であるという理由で、この距離が選ばれる。２乗誤差の総和（ＳＳＥ）（２）は、最小二乗の問題や解決の根拠になる。ロバスト推定値（３）は、内在するモデルの妨害や（２）の2乗の法則を単純に回避するための、いくぶん洗練されてない試みである。ロバスト推定値を使用する基礎的な論理的根拠は、誤差が２つのクラス、即ち想定するモデルに適合する誤差と、想定するモデルに適合しない誤差（又は「異常値」と呼ばれる）、に分類される点である。しばしば、これらの異常値はＳＳＥ計算で優勢をふるい、その有効性を下げる。
【００４３】
誤差距離関数の３つの主要な分類は、最尤推定法理論に照らして次に記述される。その後、動き予測誤差自体の解析に基づいて最適誤差距離関数を選択する技術が記述される。最適誤差距離関数は、動き予測誤差自体の最良モデルである誤差距離関数を参照すると共に、別の種類の誤差距離関数を使用する場合に得られる動き推定と比較した時に、相応して、動き予測自体の最小誤差を有する。
【００４４】
実際上、異なるサイズの誤差と重要度の誤差がある。ここで、あるピクセルは小さな誤差を有し、別のピクセルは大きな誤差を有する。誤差距離関数F（）の目的は、総合誤差が最小化される処理の間に、比例して適切に大小の誤差を比較考量する。
【００４５】
統計的感覚では、大小の誤差間の最適な重みづけは、動き予測誤差
2011508536.tif 000035
に内在する確率分布に由来する場合がある。実際上、この誤差の分布は一般的に未知である。この分布に由来する最適な重みづけの使用によって、生成される動き推定での不確実性を最小限にされる。そのような最適な重みづけのための式は、最尤推定法理論の統計概念から来る。最尤推定法理論は、どのように誤差距離関数を与えられた分布に関連づけるかの方法を示す。最大尤推定法理論は、与えられたデータ（例えば画像）に基づいた分布のパラメータ中（この状況では
2011508536.tif 000036
又は
2011508536.tif 000037
である）で、最も確率が高いか最も有望である評価を決定する正確な方法と説明できる。最大尤推定法理論は、与えられた画像
2011508536.tif 000038
および
2011508536.tif 000039
の
2011508536.tif 000040
又は
2011508536.tif 000041
に対する条件付確率を正式に最大化する。
【００４６】
単純な実施では、最大尤推定法理論は、初めに予測誤差の統計のために既知の形式を仮定できる。最も単純な仮定は、各ピクセルの誤差
2011508536.tif 000042
が確率密度
2011508536.tif 000043
と独立していると仮定することである。このとき、未知パラメータ（この場合は動き）用の最尤推定量は、総和
【数８】
2011508536.tif 000044
を最小化することで見つかる。
【００４７】
ある態様では、動きベクトル用の最尤推定量は、生成された動き推定が実際得ることができる最良値である確率を最大化する予測値に属する。共同の事象（これらの誤差）に対する確率が、すべての個々の事象（各ピクセルの動き予測誤差）の確率の積であるので、この確率又は可能性は個々のピクセルに対する可能性の積を指す。この可能性の乗算は、素早く非常に小さな数値を生成する。また、実際に、非常に小さくなるので、それらは浮動小数点数の演算で表わすのが難しい。関数の最大値が、関数の対数の最大値と同じ値で生じるので、可能性の対数値が最大化される。これは積を和に変える。数学上、ある数の対数の最大化は、そのある数の負数を最小化することである。最適な動き推定の推定値が最尤推定法的センスで得られる場合、そのとき、例えば
【数９】
2011508536.tif 000045
は最小化される。
【００４８】
したがって、誤差距離関数F（）に対するすべての選択は、特別の分布に対してだけ最適である。全誤差が最小化されるような任意の特別の誤差距離関数に関しては、結果が最尤推定法的センスにおいて最適であるか不明瞭になる。
【００４９】
例として、F（z）= |z|が誤差距離関数として選ばれると仮定する。ブロック整合の場合には、例えば、全誤差Eが次の式であるとする。
【数１０】
2011508536.tif 000046
【００５０】
この全誤差は、絶対差の総和（またはＳＡＤ）を表わす。
2011508536.tif 000047
の関数としてこの全誤差を最小限にすることは、予測誤差の分布
2011508536.tif 000048
が
2011508536.tif 000049
の真の値でラプラス分布だった場合（両側の指数関数）、
2011508536.tif 000050
に対する最尤推定量でもある動き推定値
2011508536.tif 000051
を生成する。ラプラシアン確率分布は、次式で表現される：
【数１１】
2011508536.tif 000052
ここで、bは尺度母数である。対応する確率分布は、次式で表現される：
【数１２】
2011508536.tif 000053
数学上、それが１の累乗の絶対値を含むので、「Ｌ１」距離関数として、この誤差距離関数が表現される。
【００５１】
その代わりに、
2011508536.tif 000054
が誤差距離関数に選ばれると仮定する。そのとき、全誤差は2乗された差の総和（ＳＳＤ）である。予測誤差がガウス分布の場合、全誤差の最低値は最尤推定量を与える。予測誤差がガウス分布の場合、確率密度は、次式で表現される：
【数１３】
2011508536.tif 000055
ここで、σはしばしば標準偏差と呼ばれる尺度母数である。対応する確率分布は誤差関数の項、erf （） から書かれる。確率分布関数は、次式で表現される：
【数１４】
2011508536.tif 000056
【００５２】
数学上、この種類の誤差距離関数は、「Ｌ２」距離関数として表現される。Ｌ２距離関数の総和がブロック中の点の数によって正規化される場合、ＳＡＤは平均絶対値誤差（ＭＡＤ）になり、また、ＳＳＤは平均二乗誤差（ＭＳＥ）になる。
【００５３】
ブロック整合は圧縮の中で使用される傾向があるので、誤差距離関数F（）の選択は重要ではない。ここで、圧縮は動き推定と動き補償における誤差に期せずしてロバストである。典型的には、絶対値、すなわちＬ１距離関数は、二乗、すなわちＬ２距離関数と同じ程度或いはよりよく作動でき、加えて、また圧縮のために （例えば、乗算がないため） 計算がより簡単になる。それゆえ、ＳＡＤは、圧縮において大抵普遍的である。しかし、圧縮は真実の動きを求めないし、また、真実の動きが目標である場合、最適誤差距離関数を実際に見つけることは、無視されるべきでない。
【００５４】
Ｌ１とＬ２距離関数以外に、使用できる別の種類の誤差距離関数がある。例えば、そのようなアプローチのひとつは、一般化されたガウス分布を使用することである。その場合には、誤差の絶対値は、1または2のような整数のべき乗値、あるいは０．９または１．３のような任意の非整数のべき乗値でべき乗できる。これは、Ｌ１とＬ２の距離を統一し一般化するための、アプローチを表わす。
【００５５】
また、「異常値」と呼べるような、大きな誤差に対して感受性が低いＦ（ｚ）に対する選択が存在する。1例は2乗誤差距離関数に基づくもので、値Tに対するあるしきい値Tより大きな二乗誤差を切り捨てることである。この例の誤差距離関数は、「先を切られたガウス分布の誤差距離関数」と呼ばれる。その上の様々な同様の関数は、ロバスト統計学の分野で開発されている。この種類の距離関数の一例はコーシー分布と関係があり、「Ｌｃ」距離と呼ばれる。コーシー分布は、また「コーシー=ローレンツ」分布、又は「ローレンツ」の分布として知られるもので、ガウス分布やラプラス分布よりも長い尾部を有しており、したがって、よりロバストになる。コーシー分布に関しては、確率密度は、次式で表現される：
【数１５】
2011508536.tif 000057
ここで、αは尺度母数である。ある場合には、αが振幅の半分で半値幅を表わす。対応する確率分布は、次式で表現される：
【数１６】
2011508536.tif 000058
【００５６】
図３は、確率密度の具体例を備えた線図３００を示す図である。図３に示されるように、下記に述べられた３つの分布状態（ガウス分布３３０、ラプラス分布３２０およびコーシー分布３１０）に対する確率密度は、質的に類似している。
【００５７】
ガウス分布３３０が最もよく振る舞う分布と考えられる場合、コーシー分布３１０は最悪に振る舞うと考えられる。例えば、コーシー分布３１０の尾部は、一次と二次モーメントの積分値が不確定になるほどに、十分に長い。それゆえ、平均と分散はコーシー分布３１０では不確定である。
【００５８】
これらの３つの分布状態に対する確率密度は質的に類似するように見えるが、対応する誤差メトリック関数は大いに異なる。各分布の誤差距離関数は、次式で表現される：
【数１７】
2011508536.tif 000059
【００５９】
図４は、誤差距離関数４１０、４２０、４３０の具体例を備えた線図４００を示す図である。図４では、３つの誤差距離関数が（単一の縮尺係数で）図示される。ここで、Ｌ１  ４２０、Ｌ２  ４３０およびＬｃ４１０の誤差距離関数が、線図４００に示される。特に、Ｌ１  ４２０はラプラス分布の誤差距離関数である。Ｌ２  ４３０はガウス分布の誤差距離関数である。また、Ｌ３  ４１０はコーシー分布の誤差距離関数である。図３の線図３００内での個々の分布状態中の差の評価と比較された時、個々の誤差距離関数中の差は、図４の線図４００でより明白に示される。誤差距離関数と対応する分布状態との間における線図３００、４００の差のこの比較は、任意に誤差距離関数を選択することに関する問題の難解な箇所を見せる。即ち、誤差分布は類似するように見えるが、誤差距離関数は相当異なる。それは動き推定の精度に無視できない効果がある。
【００６０】
最適誤差距離関数を決定する技術
動き推定を行なう場合、誤差距離関数の任意選択は実際の誤差分布に合致しない。誤差自体の実際の分布がガウス分布ならば、ガウス分布では異常値がめったに生じないため非常に行儀がよいので、例えば、精度に関する問題の多くはない。例えばＳＳＥ（Ｌ２）距離が最適であり、さらにＳＡＤ（Ｌ１）距離も圧縮のために十分に旨くゆく。しかし、１つの問題は、これらの動き予測誤差は明らかに非ガウス誤差である傾向がある点である。例えば、いくつかの異なる応用例に関する研究によると、ガウスの仮定が常に予測誤差の実際の分布への最も芳しくない適合であり、両側指数関数分布（あるいはラプラス分布）はガウス分布よりよくて、時々は最良であり、また、コーシー分布は多くの場合３つの分布状態の最良の適合だったとの結論を下した。
【００６１】
予測誤差の実際の分布は、動き推定のための最適アルゴリズムを統計的に生成するために使用できる。例えばある実施例中で、予想誤差の分布は、動き推定に対する最適の誤差距離関数、つまりF（）、を選ぶために使用される。ここで、最適の誤差距離関数は、動き推定からの実際の動き予測誤差を正確にモデル化し、別の種類の誤差距離関数で生成された同じ動き推定と比較される時、最小の誤差を備えた動き推定を生成する。
【００６２】
図５Ａから図５Ｂは、動き推定を決定する具体例を備えた、流れ図５００および５０５を示す図である。ある誤差距離関数を盲目的に適用するから尚更、予測誤差の分布は分析され、誤差距離関数を選択するために使用される。例えば、最適誤差距離関数が選択され、次に動き推定はこの最適誤差距離関数を使用して行なえる。最適誤差距離関数の選択には、この解析のある点で、最適誤差距離関数が動き予測誤差自体の分布の解析に基づくべきものが何であるかを、実際に決定することを取り込む。
【００６３】
図５Ａは、動き推定のための例を備えた流れ図５００を示す図である。初動推定は、予測誤差の分布を明らかにするために、統計的最適アルゴリズムに後続させて行なわれる（５０５）。初動推定からの動き予測誤差の実際の分布に基づいて（５０５）、最終動き推定用の最適誤差距離関数F（）が選択される（５８０）。（例えば図３と図４の間で図示されたように） 特定の誤差距離関数に対応する分布状態が知られているので、一旦予想誤差の実際の分布が初動推定から決定されたならば、最適誤差距離関数が選択できる。そのとき、最終動き推定は最適誤差距離関数を備えて行なわれる（５９０）。
【００６４】
図５Ｂは、図５Ａ中で示される作用（５０５）に対してより詳細を提供する例を示す流れ図である。図５Ｂでは、初動推定が行なわれる（５１０）。また、誤差ヒストグラムが最適誤差関数の決定を支援するために計算される。初動推定には、例えば第１のフレーム、第１の場面あるいはフレームのシーケンスに関連した動き推定を含む。
【００６５】
図５Ａから図５Ｂの動き推定技術の１つの具体例では、以前に記述された３つの分布状態（ガウス分布、ラプラス分布およびコーシー分布）が分布の可能性である。また、観測された誤差データに対して最良適合するのは、どの候補の分布であるかの決定がある。ある実施例では、この例からの分布状態の種類や数を加えるか、交代するか、変更できるが、これらの３つの分布状態の具体例は、ここに提示された概念に対するある態様を実証する役目をする。
【００６６】
記述されるように、処理は初動推定（５１０）から始まる場合がある。初動推定は初めに最適誤差距離関数を使用しなくてもよい。追加情報がない状態では、３つの分布状態の「中間の」分布がスタートする分布として使用できる。この例において、ラプラス分布は、ガウス分布とコーシー分布との間の中間分布である（例えば、ラプラス分布に関連する誤差距離関数４２０は、図４中の中間あるいは間の誤差距離関数である）。したがって、初動推定は、Ｌ１距離関数用の関数で行なえる。
【００６７】
この初動推定が行なわれた後、予想誤差のヒストグラムが計算できる（５３０）。また、処理は次に、どの分布が観測された動き予測誤差データへの最良適合か決めるように、誤差分布をモデル化し始める（５６０）。たいていの画像が約１００万の桁のピクセルであるので、ヒストグラムは正確に図で描かれる傾向がある。
【００６８】
ヒストグラムを計算した後に（５３０）、何れの分布が観測された誤差データへの最良適合であるかの決定が、2段階で生じる。第１段階では、スケール係数の決定があり（５５０）、それは各誤差距離関数に関連した候補分布状態に適切である。すなわち、その処理では、計算された誤差ヒストグラム（５３０）への最良適合であるガウス分布用のσ、計算された誤差ヒストグラム（５３０）への最良適合であるラプラスの分布用のb、そして、計算された誤差ヒストグラム（５３０）への最良適合であるコーシー分布用のαを決定できる。これらのスケール係数を与えられて、観測されたヒストグラムを備えた各分布のために、分布適合用のカイ二乗検定のような、統計的検定が行なわれる（５７０）。そのとき、計算された誤差ヒストグラム（５３０）への最良適合を備えた分布は、対応する誤差距離関数が何であるべきかを示している。したがって、最適誤差距離関数はヒストグラムへの最良適合を備えた分布に基づいて、選択される（５８０）。そして、この最適な距離関数は、最終の動き推定を行なうために使用される（５９０）。
【００６９】
ある場合には、初動推定のために初めに選ばれた誤差距離関数が、実際にも最適誤差距離関数になりえる（例えば図５Ｂ中の初動推定（５１０））。この場合、図５Ｂ中で示される処理は、この最適誤差距離関数が事実、最適誤差距離関数であるかどうかを単純に判断することである（例えばステップ５３０、５５０、５７０）。初めに選択された誤差距離関数が最適誤差距離関数である場合、最適の誤差関数の選択を行なうか（５８０）あるいは最終の動き推定を行なう（５９０）必要はない。
【００７０】
他の実施例中で、初動推定が連続的微分可能な誤差距離関数を必要とする最小化方法を使用する場合、フーバーの距離関数用の誤差距離関数が、Ｌ１距離関数用の誤差距離関数の代わりに初めに使用することができる。Ｌ１距離関数に関連した誤差距離関数が零点で不連続であるので、Ｌ１距離関数用の誤差距離関数には零点で不確定の導関数がある。他方では、フーバーの距離関数は大きな誤差用のＬ１と小さな誤差用のＬ２を有すると解釈できる。フーバーの距離関数は零で連続的で、導関数を使用する最適化技法で使用できる。その結果、フーバーの距離関数は、アファイン変換のモデルや遠近法のモデルと同様に、より複雑な動きモデルに使用されるのによく適している。これらの最適化モデルの一部は、導関数をとることにより誤差距離関数を最小化する関数を有する。しかし、これはＬ１距離関数と関係する誤差距離関数に適合しない。
【００７１】
図6は、フーバーの距離関数の具体例を備えた線図６００を示す図である。フーバーの距離関数は、次式で定義され：
【数１８】
2011508536.tif 000060
そして、図6でプロットされた６１０である。ここでεは１と等しい。図6に図示されるように、フーバーの距離関数は零で連続的である。
【００７２】
従って、ある実施例では、フーバーの距離関数と関係する誤差距離関数は、初動評価で使用される。フーバーの距離関数と関係する誤差距離関数は、初動推定（５１０）用の第１の場面や第１のシーケンスでの第１のフレームのために特に処理される。最良適合のための統計試験が行なわれて（５７０）、最適誤差距離関数が選択された（５８０）後で、その第１の場面又は第１のシーケンスの次のフレームは、フーバーの距離関数と関係する誤差距離関数の代わりに生成された最適誤差距離関数を使用できる。後続の場面の第1のフレーム又は後続のフレームのシーケンスが始まる場合（つまり、第1の場面の第1のフレームの後に現われるある場面の第1のフレーム、又は第1のフレームのシーケンスの後に現われる後続のフレームのシーケンス）、フーバーの距離関数と関係する誤差距離関数は、後続の場面の第1のフレームか後続のシーケンスの初動推定中の誤差距離関数として再び選択でき、そして一旦その最適な距離関数が最終動き推定のために決定されれば、後者は次に選択された最適誤差距離関数と取り替えられる。 
【００７３】
実施形態
別の実施例では、開示された技術は、アファイン変換や遠近法のモデルより複雑化されるか、より複雑な動きモデルと共に使用できる。ある実施例では、開示された技術は、高品質ビデオやデジタル映画中で使用でき、また３Ｄ映画と共に使用する。
【００７４】
少数の実施例だけが上記に詳細に開示されたが、別の実施例も可能である。また、発明者は別の実施例がこの明細書内に包含されることを意図する。本明細書は、別の方法で遂行されてもよいより一般的な目標を達成するために特定の例について記述する。この明細書の記載は、具体例として意図される。また、請求項は、いかなる修正や代替策もカバーするように意図される。
【００７５】
例えば図５Ａ、図５Ｂ、図６において、ここに記述された動き推定技術は、任意の装置及び／又は動き推定を使用するシステムに適用される。動き補償及び／又は動き推定に使用する装置及び／又はシステムのある具体例には、圧縮、時間的補間（例えばスローモーションとフレーム速度変換）およびスーパー分解能処理に関する装置又はシステムを含む。例えば、一般的な感覚では、そのような装置及び／又はシステムは、異なる時点で画像に近似するために動き推定を使用する。近似（例えば予測）は動き推定に使用でき、動き補償を含む。
【００７６】
図７Ａは、ビデオコーディングの区間予測の実施例７１０を備えた構成図を示す。図７Ａは動き推定ユニット７１６、動き補償ユニット７２０および減算器７２４を示す。これらの構成部分（例えばユニット７１６、７２０、７２４）はビデオコーディング用のビデオエンコーダである。
【００７７】
ビデオコーディングでの２つの種の符号化方法は、区間（intra）（フレーム内）と中間（inter）（フレーム間）符号化タイプである。具体的な実施例７１０は、ビデオコーディングの区間予測の具体例を示す。この例で、ピクセル７１２のブロック（典型的には8x8）と、フレーム７１４は両方とも動き推定ユニット７１６に送られる。ここで、ピクセル７１２のブロックはコード化されている。また、フレーム７１４は先にエンコードされてデコードされた。動き推定ユニット７１６は、このブロック用の動きベクトル７１８を生成する。この動ベクトル７１８および先にデコードされたフレーム７１４は動き補償ユニット７２０の入力に送られる。動き補償ユニット７２０は、コード化されているピクセル７１２のブロックに近似する予測値７２２を生成する。単一の動きベクトル７１８がピクセル７１２のブロック中ですべてのピクセルの真実の動きを常に表わすとは限らないので、予測７２２はピクセル７１２の入力ブロックと正確には同じではない。予測値７２２およびピクセル７１２の入力ブロックは、差異画像ブロック７２６（例えば残差）を生成するために、減数器７２４で控除される。そして、この差異画像ブロック７２６は変形され、量子化され、そしてエントロピー符号化される。図５Ａから図６で詳述されるような先進の動き推定技術の使用によって、動きベクトル７１８は改善される。予測値７２２はより正確になり、差異画像ブロック７２６（例えば残差）はより小さくなり、残差をより容易にエンコードできる。
【００７８】
図７Ｂは、ビデオ処理用の時間的補間の実施例７３０を備えた構成図を示す。動き推定と動き補償は、動き補償された時間的補間の高品質システム中で使用でき、それは７３０に示される。ここで、フレーム７３２とフレーム７３４の２つのフレームは、時間的に隣接するものであるが、動き推定ユニット７３６に供給される。また、複数の動きベクトル７３８が計算される。そのとき、２つのフレーム７３２、７３４および動きベクトル７３８は、双方向補間ユニット７４０に供給される。双方向補間ユニット７４０は、入力フレームの時間の間にある中間時刻での画像７４２の近似値を生成する。等しい部分区間の期間で複数の中間画像が計算される場合、結果として高品質のスローモーションの効果を生む。フレーム速度変換アプリケーションでは、例えば、双方向補間ユニット７４０に選ばれた時間は、第1のビデオストリーム（例えばアメリカ合衆国で使用されるような６０Ｈｚ（５９．９７Ｈｚ）のビデオストリーム）を第２のビデオストリーム（例えばヨーロッパの中で使用されるような５０Ｈｚのビデオストリーム）に変換するために使用できる。
【００７９】
図７Ｃは、ビデオ処理のためのスーパー分解能処理の実施例を備えた構成図を示す。図７Ａと図７Ｂの各々の実施例７１０と７３０で図示されるように、動き推定のあるアプリケーションでは、1組のみではなくそれ以上の画像を含んでいる。時間的補間およびスーパー分解能のある実施例では、不正確な動き推定によって引き起こされた誤差用の補正がなされないので、（例えば図５Ａから図６で）開示された先端の動き推定技術を使用する場合、時間的補間とスーパー分解能は増強された結果を提供できる。
【００８０】
「スーパー分解能処理」は、一般には、より下位の分解能画像のシーケンスから解像度の高い像を抽出するための技術を指す。スーパー分解能処理のある応用例は、監視（例えば、映像監視カメラ中のより下位の分解能画像から解像度の高い像を生成すること）、および天文学（例えば、離れた天体のより下位の分解能画像から解像度の高い像を生成すること）の領域にある。スーパー分解能処理の具体例で、２つの画像の動きベクトルが全体のピクセルでない場合、そのとき動き補償後の２つの画像は、ナイキスト周波数より下位では基本的に同じであるが、しかしナイキスト周波数の上位では異なる。複数の画像が、オリジナル画像のナイキスト周波数を越えた情報を明確にするために使用される。この処理によって、ナイキスト周波数を増加することが可能になり、したがって分解能が増加する。
【００８１】
図７Ｃ中で、実施例７７０は、スーパー分解能処理用の全体的な構成図を示す。この例において、時間Ｔ付近の一群のフレーム７７２は動き推定ユニット７７４への入力である。一群のフレーム７７２は、時間Ｔのフレームとそのフレーム付近の別のフレームを含んでいる。動き推定ユニット７７４で、動きベクトル７７６は、時間Ｔのフレームとそのフレーム付近の別の各々のフレームとの間で算出される。これらの動きベクトル７７６およびフレーム７７２の入力群は、動き補償ユニット７７８への入力である。動き補償ユニット７７８は、すべてのフレーム入力７７２に対して時間Ｔのフレーム（例えば画像７８０）の予測されたバージョンを生成する。この例のある実施例では、画像７８０はすべて単一の時間Ｔに関連する。画像７８０はスーパー分解能演算処理装置７８２への入力である。スーパー分解能演算処理装置７８２は、入力画像（例えば一群のフレーム７７２）より高度の空間分解能を有する時間Ｔでの単一画像を生成するために画像７８０を処理する。
【００８２】
図8は、システム・モデルの具体例を示す図である。開示された技術は、１つ以上のコンピュータ８０５Ａ、８０５Ｂ上で使用する。ここでの１つ以上の方法、及び／又はアルゴリズム、及び／又は処理は、コンピュータ、及び／又は映像ディスプレイ８２０、伝達装置、処理装置および再生装置中に実装されて、或いは採用されて使用される。ここに記述されたコンピュータは、任意の種類のコンピュータであり、例えば汎用コンピュータや、ワークステーションのような特定の目的コンピュータのいずれでもよい。コンピュータ８０５Ｂは、例えばインテルかＡＭＤベースのコンピュータで、ウィンドウズＸＰ（登録商標）、Vista（登録商標）、リナックスが走る機器、またはマッキントッシュ・コンピュータである。ある実施例では、コンピュータが、例えばＰＤＡ８１５、携帯電話８１５あるいはラップトップ８０５Ａのようなハンドヘルド・コンピューターである。コンピュータは、画像記録または画像認識マシン８２５、８３０、８３５、処理マシン、記憶装置８４０および特にビデオデータのデータ配布機器や機器の部品を指す。
【００８３】
コンピュータ及び／又はグラフィックのプログラムはＣ、パイソン（Python）、又はジャバ（Java）、ブリュー（Brew）または別のプログラミング言語で書かれてもよい。プログラムは記憶メディア上で駐在する。記憶メディアは、例えば、磁気的や光学的であり、例えばコンピュータ・ハードドライブ、リムーバブル・ディスク、メモリステック（登録商標）又はＳＤメディアのようなリムーバブルメディア、有線又は無線ネットワークあるいはブルートゥース（登録商標）ベースのネットワーク装着記憶装置（ＮＡＳ）、あるいは別の取外し可能なメディアである。プログラムも、例えば、ローカルマシンに通信を送るサーバーあるいは別のマシンと共に、ネットワーク８５０上で実行される。ネットワーク８５０は、ローカルマシンがここに記述された動作を実行することを可能にする。
【００８４】
この明細書に記述された主題および機能的な動作の実施例は、デジタル電子回路部品、コンピュータ・ソフトウェア、ファームウェアあるいはハードウェア中で実施することができ、これらには、この明細書で開示された構造体、およびそれらの構造体の等価物、あるいはそれらの１つ以上の組合せを含んでいる。この明細書に記述された主題の実施例は、１つ以上のコンピュータ・プログラム生成物、つまり、データ処理装置によって実行され、あるいは動作を制御するためのコンピュータ読取り可能な媒体上で有体的にエンコードされたコンピュータ・プログラム命令の1以上のモジュールとして、実施される。コンピュータ読取り可能なメディアは、マシン可読の記憶装置８４０、マシン可読の記憶基板、メモリ素子、マシン可読の命令を達成する組成物あるいはそれらの１つ以上の組合せになりえる。用語「データ処理装置」は、処理データ用の機器、装置およびマシンをすべて包含するもので、例としてプログラム可能なプロセッサ、コンピュータあるいはマルチプロセッサ、コンピュータを含む。装置は、ハードウェアに加えて、問題になっているコンピュータ・プログラム用の実行環境を生成するコードを含む。このコードは、例えばプロセッサ・ファームウェア、プロトコールスタック、グラフィカルなシステム、データベース管理システム、オペレーティング・システムあるいはこれらの組合せを構成する。
【００８５】
コンピュータ・プログラムは、またプログラム、ソフトウェア、ソフトウェア・アプリケーション、スクリプトあるいはコードとして知られているもので、コンパイル型言語やインタープリタ型言語を含む、任意の種類のプログラミング言語の形式で書くことができる。コンピュータ・プログラムは、スタンドアロンやモジュール、コンポーネント、サブルーチンあるいは計算機環境で使用するにふさわしい別のユニット等の任意の形式で配置される。コンピュータ・プログラムは、必ずしもファイル・システムでのファイルに相当しない。プログラムは、別のプログラムあるいはデータ（例えば、マークアップ言語のドキュメントに蓄積された１つ以上のスクリプト）を保持するファイルの一部、問題のプログラムに専念している単一のファイル、あるいは多数の統合化ファイル（例えば1以上のモジュール、サブ・プログラム、又はコードの一部を蓄積するファイル）に蓄積できる。コンピュータ・プログラムは、1台のコンピュータ、あるいは１つのサイトに位置するか、多数のサイトにわたって分布する多数のコンピュータ上で実行され、かつ通信網によって相互に連結するために配置されることができる。
【００８６】
この明細書に記述され示された処理と論理の流れおよび図面は、入力データ上で作動し出力を生成することにより機能するように、１つ以上のコンピュータ・プログラムを実行する、１つ以上のプログラム可能なプロセッサによって行なう。例えばＦＰＧＡ（フィールドプログラマブルゲートアレイ）やＡＳＩＣ（特定用途向け集積回路）のような特別目的の論理回路類によって、処理と論理の流れが実施され、また装置も実装できる。
【００８７】
コンピュータ・プログラムの実行にふさわしいプロセッサは、例として、汎用のマイクロプロセッサーと特別目的マイクロプロセッサーの両方と、任意の種類のデジタル計算機の１つ以上のいかなるプロセッサが含まれる。通常、プロセッサは、読み取り専用メモリまたはランダムアクセス記憶装置あるいは両方から、命令及びデータを受ける。コンピュータに不可欠の要素は、命令を行なうためのプロセッサおよび命令とデータを蓄積するための１つ以上のメモリ素子である。通常、コンピュータは、データを受信し又はデータを伝送し、あるいは両方をするように効果的につながれた、データを蓄積するための1台以上の大量貯蔵装置、例えば、磁気、光磁気ディスク、または光ディスクを含む。しかしながら、あるコンピュータにはそのような装置がある必要がない。さらに、コンピュータは別の装置に埋め込むことができ、２〜３例を挙げると、例えば移動電話、携帯情報端末（ＰＤＡ）、モバイルのオーディオ・プレイヤー、全地球測位システム（ＧＰＳ）受信機がある。コンピュータ・プログラム命令およびデータを蓄積するのにふさわしいコンピュータ読取り可能な媒体は、不揮発性メモリ、媒体およびメモリ素子の形式をすべて含んでおり、例えば、半導体記憶装置（例えばＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ装置）、磁気ディスク（例えば内部ハードディスク、リムーバブル・ディスク）、光磁気ディスク、ＣＤＲＯＭ、ＤＶＤ−ＲＯＭディスクである。プロセッサとメモリは、特別目的論理回路類によって追加されるか、あるいは組み込まれる。
【００８８】
使用者との相互作用を提供するために、この明細書に記述された主題のある実施例は、使用者への情報の表示用の表示装置（例えばＣＲＴ（陰極線管）、ＬＣＤ（液晶ディスプレイ）、プラズマディスプレイモニタ８２０）、並びに使用者がコンピュータに入力を送れるように、キーボードとセレクター（例えばポインティングデバイス装置、マウス、トラックボール） を有するコンピュータに実装される。別の種類の装置が、同様に使用者との相互作用を提供するために使用できる。例えば、使用者に提供されるフィードバックは、感覚フィードバックの任意の種類になりえるもので、例えば視覚フィードバック、聴覚フィードバック、触覚フィードバックがある。また、使用者からの入力は、例えば音響、スピーチ、あるいは触覚の入力を含む任意の種類で受け取ることができる。
【００８９】
この明細書に記述された主題のある実施例は、バックエンド構成部分（例えばデータサーバ）、ミドルウェア構成部分（例えばアプリケーション・サーバー）、フロントエンド構成部分（例えば図式ユーザーインターフェースがあるクライアントコンピュータや、使用者がこの明細書で記述された主題の実施例と互いに影響し合うことができるウエブブラウザー）、またはバックエンド、ミドルウェア、あるいはフロントエンド構成部分の１つ以上の任意の組合せを含んでいるコンピューティング・システム中で実施できる。システムの構成部分は、ディジタル・データ通信（例えば通信網）の媒体や任意の種類によって相互に連結することができる。通信網の具体例はローカル・エリア・ネットワーク（「ＬＡＮ」）や例えばインターネットのような広域ネットワーク（「ＷＡＮ」）を含む。
【００９０】
コンピューティング・システムはクライアントとサーバーを含む。クライアントとサーバーは、一般に互いから遠くにあり、典型的には通信網を通して相互に作用する。クライアントとサーバーの関係は、それぞれのコンピュータ上で作動し、互いにクライアントサーバー関係を持っているコンピュータ・プログラムによって発生する。
【００９１】
この明細書には多くの詳細が含まれているが、これらは、発明の範囲や特許請求される範囲に対する制限としてではなく、発明の特別の実施例に特有の機能の記述として解釈されるべきである。別々の実施例のコンテキスト中でこの明細書に記述される一定の機能も、単一の実施例中で組合せて実施できる。反対に、単一の実施例のコンテキストに記述される様々な機能も、多数の実施例中で別々に、あるいは任意の適切なサブ組合せ中で実施できる。さらに、ある機能は一定の組合せの中で作用すると上に記述され、また初めからそのように請求されている場合でも、ある場合には１つ以上の機能が請求された組合せから削除することができ、また、請求された組合せは、サブ組合せあるいはサブ組合せの変型に向けられてもよい。
【００９２】
同様に、動作が特別の順序で図面中に描写されているが、これは、望ましい結果を達成するためには示された特別の順序、あるいは連続する順序で動作が行なわれるか、図示された動作がすべて行なわれることを要求するとは了解すべきでない。一定の状況では、マルチタスキングと並行処理は有利である。さらに、上に記述された実施例中の様々なシステム構成部品の分離は、すべての実施例中でそのような分離を必要とするものとは了解されない。また、記述されたプログラム構成部品とシステムは、通常はともに単一のソフトウェアかハードウェア生成物に統合されるか、或いは多数のソフトウェアかハードウェア生成物へパッケージ化されることが理解される。
【００９３】
用語「アルゴリズム」はステップ、方法、処理、スキーム、処理手順、動作、プログラム、ガイドライン、技術、シーケンス、1組の原則あるいは命令を指す。例えば、アルゴリズムは、ハードウェア及び／又はソフトウェア・ビデオプロセッサのための1組のビデオ処理命令でありえる。アルゴリズムは、1台以上の計算装置及び／又はマシン（例えば、ある場合に、人間の対話なしで行なわれる）によって蓄積され、生成され、処理される。開示されたアルゴリズムは、ビデオ関連のシステムと関係があり、ビデオ関連のシステム及び／又は任意の装置、マシン、ハードウェア、及び／又は処理、圧縮、記憶、伝達、受信、試験、較正、表示及び／又はビデオデータ用の任意の組合せにおける任意の改良に対する製品で実施され、生成され、関連され、及び／又は使用される。これらのアルゴリズムと技術は特定のコーディング標準に制限されておらず、コーディング標準に加えて、又はコーディング標準の外側で使用される。また、コード化する性能を改善するために、ビデオコーディング装置中のコード体系の間でコード化の依存性が調査される。
【００９４】
動き推定は、上述された手法で動き推定を改善する最適の誤差関数を選択するために任意のアルゴリズムを利用できる。これには、ブロックベースと領域ベースの動き推定を改善すること、位相相関、ピクセル再帰的な技術および同種のものを含む。そして、平行移動、アファイン変換、パラメータ、並びに他のものを含む様々な動きモデルが使用される。明細書の特定の実施例では、動き推定自体における誤差を最小限にするために動き予測誤差の分布を使用する実施例が記述された。ある実施例は、予測誤差の分布の解析及び／又は異なる分布状態用の異なる誤差距離の解析に関する技術を含む。ある実施例は、演繹的な情報（例えば、距離Ｘは最適である） 及び／又は予想誤差の実際の分布の解析を使用して、最適誤差距離を選択するための技術を含む。ある実施例では、誤差分布の形は最適誤差距離を決定するために使用される。ある実施例中で、最適誤差距離が使用される場合、誤差分布はゼロ付近で強化される（即ち、誤差は最適誤差距離でより小さい）。また、ある実施例では、誤差分布の全体的な形は同じである。別の実施例は以下の請求項の範囲内である。
【図１】
2011508536.tif 000061
【図２】
2011508536.tif 000062
【図３】
2011508536.tif 000063
【図４】
2011508536.tif 000064
【図５Ａ】
2011508536.tif 000065
【図５Ｂ】
2011508536.tif 000066
【図６】
2011508536.tif 000067
【図７Ａ】
2011508536.tif 000068
【図７Ｂ】
2011508536.tif 000069
【図７Ｃ】
2011508536.tif 000070
【図８】
2011508536.tif 000071
【手続補正書】
【提出日】平成21年11月30日(2009.11.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータの動き推定（motion estimation）用の最適誤差距離関数（optimal error metric function）を決定するための画像の動き推定用の方法であって、
初期誤差距離関数を指定し；
初期誤差距離関数を使用して初動検出（initial motion estimation）を行ない、ここで、初動検出が動き予測誤差（motion prediction errors）を生成し；
前記初期誤差距離関数用の前記動き予測誤差のヒストグラムを計算し；
前記初動推定の前記動き予測誤差の前記ヒストグラムと、複数の誤差距離関数の各々に関連づけた分布との比較に基づいて、前記初期誤差距離関数が最適誤差距離関数であるかを定め；
前記初期誤差距離関数が前記最適誤差距離関数でない場合、選択された最適誤差距離関数を使用して、最終動き推定を行なうこと；
を特徴とする方法。
【請求項２】
請求項１に記載された方法において、前記初期誤差距離関数が前記最適誤差関数でない場合、前記方法がさらに、前記動き予測誤差の分布に基づいた前記最適誤差距離関数を選択することから成ることを特徴とする方法。
【請求項３】
請求項２に記載された方法において、前記初動推定を行なう方法は、前記動き予測誤差を決定するために前記初期誤差距離関数を処理することから成ることを特徴とする方法。
【請求項４】
請求項２に記載されたにおいて、さらに前記初期誤差距離関数に関連した初期確率分布を指定することから成ることを特徴とする方法。
【請求項５】
請求項１に記載された方法において、前記初期誤差距離関数が前記最適誤差関数であるか判断することは、前記ヒストグラムの統計的最良適合のための分布を決定することから成ることを特徴とする方法。
【請求項６】
請求項５に記載された方法において、前記統計的最良適合のための分布を決定することは、前記最適誤差距離関数の確率分布用のスケール係数を決定することから成ることを特徴とする方法。
【請求項７】
請求項６に記載された方法において、前記確率分布の候補は、ガウス分布、ラプラス分布、及びコーシー分布から成ることを特徴とする方法。
【請求項８】
請求項６に記載された方法において、前記スケール係数を決定した後に、最良適合分布のための統計試験を行なうことを、さらに含むことを特徴とする方法。
【請求項９】
請求項８に記載された方法において、前記統計試験は分布適合のためのカイ二乗検定を行なうことから成ることを特徴とする方法。
【請求項１０】
請求項９に記載された方法において、前記初期誤差距離関数はフーバーの距離関数であることを特徴とする方法。
【請求項１１】
請求項２に記載された方法において、前記初期誤差距離関数は複数の確率分布における中間の確率分布に関連することを特徴とする方法。
【請求項１２】
請求項１１に記載された方法において、前記複数の確率分布には、ガウス分布、ラプラス分布、又はコーシー分布の一以上から成ることを特徴とする方法。
【請求項１３】
請求項１に記載された方法において、前記初期誤差距離関数は、絶対差の和（ＳＡＤ)、2乗された差の和（ＳＳＤ)、平均絶対誤差（ＭＡＤ)、平均二乗誤差（ＭＳＥ)、又はロバスト推定値の1つ以上の関数から成ることを特徴とする方法。
【請求項１４】
請求項１に記載された方法において、映像エンコーダの動き推定ユニットで動き推定を行なうように、さらに構成されることを特徴とする方法。
【請求項１５】
請求項１に記載された方法において、前記最適誤差距離関数を使用してビデオコーディングの区間予測（inter-prediction）を行なうことを、さらに有することを特徴とする方法。
【請求項１６】
請求項１５に記載された方法において、前記ビデオコーディング用の前記区間予測を行う方法は：
動き推定ユニットで、ピクセルのブロックとフレームを受け取り、１つ以上の動きベクトルを生成し；
動き補償ユニットで、前記フレームおよび前記１つ以上の動きベクトルを受け取り、前記ピクセルのブロックに近似する予測値を生成し；
減算器ユニットで、前記ピクセルのブロックから前記予測値を差し引き、差異画像ブロックを生成すること；
が含まれることを特徴とする方法。
【請求項１７】
請求項１に記載された方法において、前記最適誤差距離関数を使用してビデオ処理のための時間的補間を行なうことを、さらに有することを特徴とする方法。
【請求項１８】
請求項１７に記載された方法において、前記時間的補間を行なう方法は：
動き推定ユニットで、第１のフレームと第２のフレームを受け取り、１つ以上の動きベクトルを生成し；
双方向補間ユニットで、前記第１のフレーム、前記第２のフレームおよび前記１つ以上の動きベクトルを受け取り、前記第１と第２のフレームに関連した時間の間にある画像の近似値を生成すること；
が含まれることを特徴とする方法。
【請求項１９】
請求項１の方法において、最適誤差距離関数を使用してスーパー分解能処理を行なうことを、さらに有することを特徴とする方法。
【請求項２０】
請求項１９に記載された方法において、前記スーパー分解能処理を行なう方法は：
動き推定ユニットで、時間Ｔのまわりに集められた一群のフレームを受け取り、前記時間Ｔでの当該群のフレームと、当該群の別のフレームとの間の１つ以上の動きベクトルを生成し；
動き補償ユニットで、前記一群のフレームと前記１つ以上の動きベクトルを受け取り、および前記一群のフレーム中の各フレームの予測されたバージョンを構成する画像を生成し；
スーパー分解能演算処理装置で、前記画像を受け取って、前記画像を処理し、前記一群のフレームより高い空間分解能がある前記時間Ｔでの画像を生成すること；
が含まれることを特徴とする方法。
【請求項２１】
請求項１に記載された方法において、前記動き推定は、ブロックに基づいたか、区域に基づいた動き推定を含むことを特徴とする方法。
【請求項２２】
請求項１に記載された方法において、前記動き推定は、位相相関か、ピクセル再帰的な（pel-recursive）技術から成ることを特徴とする方法。
【請求項２３】
請求項１に記載された方法において、前記動き推定は、平行移動モデル、アフィン変換モデル、またはパラメトリックモデルから成る、動きモデルから構成されることを特徴とする方法。
【請求項２４】
コンピュータ読取り可能なメディア上で有形的にコード化されたコンピュータ・プログラム・プロダクトであって、データ処理装置に対して画像の動き推定用の動作を行なわせる命令を含み、前記動作は請求項１乃至請求項２３の何れか一項に記載のものであることを特徴とするコンピュータ・プログラム・プロダクト。
【請求項２５】
画像の動き推定を行なうためのシステムであって：
画像データを表示する表示装置；
画像データ処理のために前記画像データと命令を記憶するコンピュータ読取り可能なメディア；
前記命令と前記画像データを処理するのに使用可能なデータ処理装置であって、前記命令は前記データ処理装置に請求項１乃至請求項２３の何れか一項に記載の動作を行わせるように構成されたことを特徴とするシステム。
【請求項２６】
ビデオコーディングの区間予測を行なうために、請求項１乃至請求項２３の何れか一項に記載の動作に使用される方法であって、前記方法は：
ピクセルのブロックとフレームを受け取り、かつ1つ以上の動きベクトルを生成するように動き推定ユニットを使用し；
前記フレームと前記1つ以上の動きベクトルを受け取り、かつ前記ピクセルのブロックに近似する予測値を生成するように動き補償ユニットを使用し；
前記ピクセルのブロックから前記予測値を引き、差異イメージブロックを生成するように減数器ユニットを使用し；
ここで前記動き推定ユニットは、動き推定の最適誤差距離関数を決定するために、請求項１乃至請求項２３の何れか一項に記載の動作を行うように構成されたことを特徴とする方法。
【請求項２７】
請求項２６に記載された方法において、差異イメージブロックは残差から成ることを特徴とする方法。
【請求項２８】
ビデオ処理用の時間的補間を行なうために、請求項１乃至請求項２３の何れか一項に記載の動作に使用される方法であって、前記方法は：
第１のフレームおよび第２のフレームを受け取り、かつ1つ以上の動きベクトルを生成するために動き推定ユニットを使用し；
前記第１のフレーム、前記第２のフレームおよび前記1つ以上の動きベクトルを受け取り、かつ前記第１と第２のフレームに関連する時間の間にあるイメージの近似値を生成するために双方向補間ユニットを使用し；
ここで前記動き推定ユニットは、動き推定の最適誤差距離関数を決定するために、請求項１乃至請求項２３の何れか一項に記載の動作を行うように構成されたことを特徴とする方法。
【請求項２９】
請求項２８に記載された方法において、スロービデオ効果は等しい部分区分で複数の中間画像が計算されることによって生じることを特徴とする方法。
【請求項３０】
請求項２８に記載された方法において、フレーム速度変換が影響されて、双方向補間ユニットに関連した時間が、第１の周波数での第１のビデオストリームを第２の周波数での第２のビデオストリームに変換するのに使用されることを特徴とする方法。
【請求項３１】
ビデオ処理用のスーパー分解能処理を行なうために、請求項１乃至請求項２３の何れか一項に記載の動作に使用される方法であって、前記方法は：
時間Tのまわりに集められた一群のフレームを受け取り、かつ時間Tの前記群のフレームと前記群の別のフレームとの間で、1つ以上の動きベクトルを生成するように動き推定ユニットを使用し；
前記一群のフレームと前記１つ以上の動きベクトルを受け取り、かつ前記一群のフレームでの各フレームの予測されたバージョンから成る画像を生成するために動き補償ユニットを使用し；
前記画像を受け取り、前記画像を処理し、前記一群のフレームより高い空間分解能がある前記時間Ｔでの画像を生成するためにスーパー分解能演算処理装置を使用し；
を備え、前記動き推定ユニットは、動き推定のための最適誤差距離関数を決定するために、請求項１乃至請求項２３の何れか一項に記載の動作を行うことを特徴とする方法。
【請求項３２】
請求項３１に記載された方法において、前記スーパー分解能演算処理装置は、ナイキスト周波数を調整し、前記画像に関連した分解能を増加させることにより、前記画像からより高分解能イメージを抽出するように構成されたことを特徴とする方法。
【請求項３３】
請求項２６乃至請求項３２の何れか一項に記載された方法を使用して、前記動き推定ユニットは、誤差距離関数の形状を決定し、前記最適誤差距離関数を決定するために前記形状を使用するように構成されたことを特徴とする方法。
【国際調査報告】
2011508536.tif 000072
2011508536.tif 000073
2011508536.tif 000074