JP2010233208A - 高速サブピクセル動き推定 - Google Patents

高速サブピクセル動き推定 Download PDF

Info

Publication number
JP2010233208A
JP2010233208A JP2010025283A JP2010025283A JP2010233208A JP 2010233208 A JP2010233208 A JP 2010233208A JP 2010025283 A JP2010025283 A JP 2010025283A JP 2010025283 A JP2010025283 A JP 2010025283A JP 2010233208 A JP2010233208 A JP 2010233208A
Authority
JP
Japan
Prior art keywords
matching reference
construction
reference plane
image
generating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010025283A
Other languages
English (en)
Other versions
JP2010233208A5 (ja
Inventor
Adi Panzer
パンツァー アディ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ceva DSP Ltd
Original Assignee
Ceva DSP Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ceva DSP Ltd filed Critical Ceva DSP Ltd
Publication of JP2010233208A publication Critical patent/JP2010233208A/ja
Publication of JP2010233208A5 publication Critical patent/JP2010233208A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)

Abstract

【課題】動画エンコーディングにおける高速なサブピクセル動き推定用のシステムおよび方法を提供する。
【解決手段】複数の非線形構築面を生成することと、複数の構築面と実際のマッチング規準面の複数のサンプルポイントとに基づき、ソースフレームと参照フレームとの間のマッチング規準を表す推定マッチング規準面をリアルタイムで生成することと、推定マッチング規準面上で位置をリアルタイムで選択することとによって、ソースフレームと参照フレームとの間の最良マッチを提供することを含む。
【選択図】なし

Description

高速サブピクセル動き推定に関する。
デジタル動画圧縮は、放送、ストリーミング、記憶など、様々な実施用途で使用され得る。種々の動画圧縮の規格および方法には、ある画像から別の画像への変換(通常は動画シーケンスにおける隣接フレーム間)を表す動きベクトルを決定する動き推定というプロセスが含まれる。
動き推定アルゴリズムは、現在のフレーム内の現在のブロックに関し、目標フレームの検索範囲から、現在のブロックと最も類似している最良マッチングブロックを検索する。比較的良好なマッチが見つかったら、動き推定アルゴリズムは、動きベクトルをそのブロックに割り当て、ブロックがマッチするのに必要な水平方向および垂直方向の移動距離を示す。
最良マッチを見つける方法として、サブピクセル解像度を用いることができる。理論的には、動き推定アルゴリズムは、検索領域内で検索可能なすべてのサブピクセル位置を計算した後に検索を実行するのがよいが、この方法では、大きなメモリ領域と処理リソースが必要となる。従って、計算の複雑性を低減し得るサブピクセル動き推定アルゴリズムが望まれている。
本発明の実施形態による例示的な動画エンコーダを表すブロック図である。 本発明の実施形態によるサブピクセル動き推定のための前処理アルゴリズムを実行する方法を表すフローチャートである。 本発明の実施形態によるリアルタイムサブピクセル動き推定アルゴリズムを実行する方法を表すフローチャートである。 本発明の実施形態によるサブピクセル動き推定アルゴリズムの例示的なリアルタイム実装を表すフローチャートである。 本発明の実施形態による例示的なピクセルマップを表すフローチャートである。
以下の詳細な説明では、本発明を完全に理解するために、種々の具体的な詳細について説明する。しかしながら、これらの具体的な詳細がなくとも本発明を実施できることは、当業者であれば理解し得る。他の実施例では、本発明が不明瞭になることを避けるために、周知の方法、手順、および構成要素は、詳細に説明されていない。また、説明の簡潔化および明瞭化のため、図示されている要素は必ずしも正しい尺度で描かれてはいない。例えば、一部の要素の寸法は、明確化のために他の要素に比して誇張されている。対応する要素または類似する要素を示す場合、参照番号を適宜、図中で繰り返す。
本発明の実施形態は、これに限定されないが、例えば、「処理」、「演算」、「計算」、「決定」、「確立」、「解析」、「確認」等の用語を使用した説明は、コンピュータ、演算プラットフォーム、演算システム、あるいは他の電子演算装置の動作および/またはプロセスに関係する。これらの装置は、コンピュータのレジスタおよび/またはメモリ内に物理量(電子量など)として表されているデータを、コンピュータのレジスタおよび/またはメモリ内、あるいは動作および/またはプロセスを実行する命令を格納可能な他の情報記憶媒体内に同様に物理量として表されている他のデータに処理したり変換したりする。
本発明の実施形態は、これに限定されないが、本明細書で使用する「複数」という用語は、例えば「多数」または「二つ以上」を含み、二つ以上の構成部品、装置、要素、ユニット、パラメータ等に言及する目的で本明細書全体で使用される。
次に図1を参照すると、同図は、本発明の実施形態による例示的な動画エンコーダのブロック図である。動画エンコーダ100は、動画ストリームを入力として受信し、エンコードされた動画ストリームを出力する。動画エンコーダ100は、動きベクトルを計算するための高速サブピクセル動き推定を実行可能な動き推定/補償ブロック110を含む。動きベクトルは、フレームメモリ101に記憶された最初のソース画像すなわちフレームから、参照フレームメモリ105に記憶された参照フレームなどの別の画像すなわちフレームへの変換を表す。画像すなわちフレームは、複数のブロック、例えば、複数のマクロブロック(MB)に分割されていてもよく、各ブロックは、例えば、16×16ピクセルのような一群のピクセルを含み得る。
推定/補償ブロック110は、メモリ105に記憶された参照フレーム内の検索範囲において、メモリ101に記憶されたソースフレームすなわち現在フレーム内のブロックに最も類似し、最良マッチングブロックとなるブロックを検索する。マッチするものが見つかると、推定/補償ブロック110によって実行される動き推定アルゴリズムは、そのブロックに動きベクトルを割り当てる。動き推定アルゴリズムは、ソースフレームと参照フレームとをマッチさせるためには、そのブロックを水平方向および垂直方向にどのくらいの距離で移動させればよいかを示す。
第1のフレームの選択されたブロックに対する最良マッチを見つけるために、動き推定アルゴリズムは、第2のフレームで最も類似したブロックを検索してもよい。本明細書に記載されている、ソースフレームと参照フレームとの間の「マッチング規準」という用語は、二つのフレーム間の差、またはそれらのフレーム内での二つの領域間の差を表す値を意味する。例えば、参照フレームにおいて区画される検索領域内でソースフレームの選択されたMBを検索する場合には、該ソースフレームの選択されたMBと検索領域内のMBとの差が、絶対差の総和(SAD)、二乗差の総和(SSD)、ハダマード変換などの、任意の適用可能な方法で測定される。なお、その他の適切な方法、公式、あるいは計算式を使用してもよい。
動き推定/補償ブロック110は、サブピクセル解像を行う動き推定アルゴリズムを実行または実施可能なサブピクセル動き推定ブロック120を含む。サブピクセル推定ブロック120は、取りうるすべてのフルピクセル位置および取りうるすべてのサブピクセル位置に関するマッチング規準を計算することなく、参照フレームの検索領域内で選択された解像度に従って、第1の画像(例えばソースフレーム)と第2の画像(例えば参照フレーム)との間の最良マッチを提供し得る。本発明の実施形態によれば、サブピクセル動き推定ブロック120は、複数の構築面と実際のマッチング規準面の複数のサンプルポイントとに基づいて、第1の画像と第2の画像との間のマッチング規準を表す推定マッチング規準面をリアルタイムで生成することができる。
サブピクセル推定ブロック120は、前処理ユニット130などの処理ユニットで実行された、あるいはそこから受信した演算処理の結果を記憶または保存するメモリ125を含み得る。メモリ125は、前処理ユニット130から受信した演算結果をテーブル形式やリストや他の方法などの任意の形式または方法で保存する。メモリ125は、リアルタイムエンコーディングの際に前処理アルゴリズムの結果を使用する命令を記憶するコンピュータ記憶媒体であってよい。
前処理ユニット130は、ソースフレームと参照フレームとのマッチング規準の推定に使用する複数の非線形構築面を生成する。前処理ユニット130によって生成される構築面や位置ずれポイント等の他のパラメータは、図2に記載されているように、サブピクセル推定ブロック120に入力データとして提供される。
前処理ユニット130は、エンコーダ100とは別の演算装置などの、エンコーダ100に対する外部装置として実装し得る。いくつかの実施形態では、前処理ユニット130は、動き推定ブロック110に統合したり、エンコーダ100内でスタンドアロンのユニットとして実装したりしてもよい。前処理ユニット130は、本明細書においては「設計フェーズ」とも称される前処理アルゴリズムを実行または実装し得る。このアルゴリズムは、動き推定/補償ブロック110のプロセスおよび/またはエンコーダ100のプロセスよりも前に実施あるいは実行される。
前処理ユニット130によって実行される設計フェーズは、動き推定ブロック110を初めて有効化する前など、実際の動き推定が始まる前に一回実行される。前処理ブロック130によって実装される前処理アルゴリズムをエンコーダ100の実行時に実行することはできず、前処理アルゴリズムは、エンコーダ100の演算プラットフォームとは異なる演算装置で前処理ブロック130によって実装されることを当業者は理解し得る。
処理ユニット130によって実行される設計フェーズは、特定のアプリケーション、特定のエンコーダ100、および/または特定の動画圧縮規準(MPEG―2、MPEG―4、H.264など)に対して固有であってもよい。また、前処理ユニット130による設計フェーズアルゴリズムの実行時に他の任意のパラメータを考慮してもよい。
エンコーダ100は、エンコーディング機能や動作の実行、またはその実行に関する他のブロック、モジュール、動作ユニットとして、減算器111、加算器112、画像処理ブロック113をさらに含み得る。図1の例示において、画像処理ブロック113は、離散コサイン変換(DCT)、量子化、エントロピーコーディング、あるいはその他の関数、計算、処理など、エンコーディングプロセスの一部であってよい任意の動作、関数、または方法を含み得るが、本発明はこの点に関して限定されない。本発明の実施形態により、他のブロック、ユニットおよび/またはモジュールの数や種類も、エンコーダ100に含めることができ、エンコーディングプロセスの一部であってよいことを当業者は理解し得る。
次に図2を参照すると、同図は本発明の実施形態によるサブピクセル動き推定のための前処理アルゴリズムを実行するための方法を表すフローチャートである。この方法の動作は、図1のエンコーダ100に対して内部的におよび/または外部的に実装可能な前処理ユニット130などによって、および/または他の任意の適切なユニット、装置、および/またはシステムによって実行可能である。前処理アルゴリズムの動作は、図1のエンコーダ100のサブピクセル推定ブロック120により実行される動作の前に実行される。前処理アルゴリズムの動作は、「セットアップ」または「設計」フェーズとみなすことができる。つまり、これらの動作は、実行時にエンコーダ100によってリアルタイムで実行される動作とは、時間的にも場所的にも別々に実行される。これらの設計フェーズ動作は、パラメータを生成し、後で実行時(run-time)に使用され得る計算を実行するために、エンコーダ100が初期化される前に少なくとも一回実行される。
設計または前処理フェーズにおいて、本方法は、マッチング規準の推定に使用され、本明細書において「構築面(building surface)」とも称される複数の面を構築する。これらの面を使用することにより、複数のサンプルを基に実際のマッチング規準の挙動を予測することができる。
ボックス201に示すように、本方法は、一つ以上のマッチング規準を選択することを含む。ソースフレームと参照フレームとのマッチング規準は、その二つのフレーム間、またはそれらフレーム内の二つの領域間の差を表す値である。例えば、参照フレームにおいて区画される検索領域内でソースフレームの選択されたマクロブロック(MB)を検索する場合には、該ソースフレームの選択されたMBと検索領域内のMBの差が、例えば、SAD、SSD、あるいはその他任意の方法で算出される。
ボックス202に示すように、本方法は、前処理時にサンプルポイントとして使用する複数の位置ずれポイント、例えば、n箇所の位置ずれポイントを選択することを含む。
ボックス203に示すように、本方法は、最適な非線形構築面の集合体となるまで修正され得るn個の非線形構築面を生成、作成、または定義することを含む。これらの非線形構築面は、動き推定を実行するべく、前処理時に第1の画像と第2の画像とのマッチング規準を推定するために使用される。面の数「n」は、ボックス202で選択された「n」箇所の位置ずれポイントの数によって、および/またはその数に応じて決定することができる。「n」箇所の位置ずれポイントの位置は、「n」個の構築面の構成に影響し得る。例えば、「n」箇所の位置ずれポイントは、特定の検索領域に均一に分散していることがある。
理論的には、構築面を生成するには、m*(2p+1)という式を解く必要がある。式中、mは使用する面の数であり、pはサブピクセル位置で表した検索領域のサイズ、つまり、それらの面がカバーする最大許容位置ずれポイントである。すべての面と補間位置とは同じなので、この式だと、解の数は無限数になり得る。本発明の実施形態は、各面がその対称性を維持できる基本直交面を使用する。例えば、n個の構築面の構成は、各軸に多項式構造を使用して計算してもよい。構築面を形成し得る例示的な一次多項式は、以下の式1〜3で定義される。
(1)Z=ax1+ax0
(2)Z=ay1+ay0
式1および式2より式3が得られる。
(3)Z=ax1y1xy+ax1y0x+ax0y1y+ax0y0=axy+ax+ay+a
式3によって表される例示の面は、四つの自由係数(すなわち、a3、a2、a1、およびa0)を有する。高次多項式は、(n+1)の係数を有し、式中nは多項式次元を表す。後述の実画像データに基づいて自由係数を見つけ出してもよい。
ボックス204に示すように、本方法は、本明細書において「テスト領域」と称されるソースフレームまたはブロックと、本明細書において「検索領域」と称される参照フレームまたはブロックとを受信することを含む。これらの両フレームまたはブロックは、最適な構築面を見つけるために前処理アルゴリズムによって統計データとして使用されるアプリケーションの典型的なデータを含み得る。本方法は、多数の典型的なソースフレームと参照フレームとの集合を使用して、後述する反復的な方法で最適な非線形構築面の集合を計算してもよい。
ボックス205に示すように、本方法は、ソースフレームと参照フレームとの間の実際のマッチング面を計算することを含む。この実際のマッチング面を計算することは、完全検索、つまり、すべてのフルピクセル位置と複数のサブピクセル位置で一つ以上のマッチング規準を計算することを含む。計算された実際のマッチング面は、ソースフレームと参照フレームとのマッチングを表し得る。
ボックス206に示すように、本方法は、ボックス205で計算された実際のマッチング面上の値をボックス202で選択されたn箇所の位置ずれポイントで読み込むこと、つまり、n箇所の位置ずれポイントで実際のマッチング面をサンプリングすることを含む。
ボックス207に示すように、本方法は、ボックス206でサンプリングされ、実際のマッチング面から取得されたサンプルと、ボックス203で生成された構築面に基づいて推定マッチング面を生成することを含む。例えば、推定マッチング面は、(ボックス202の)n箇所のサンプルポイントの各々を、(ボックス203の)n個の構築面の各々で掛け合わせ、その結果を合計することによって生成してもよい。
ボックス208に示すように、本方法は、推定マッチング面と実際のマッチング面との間の誤差が最小となるように、基本直交面を有するボックス203で生成されたn個の構築面を更新することを含み得る。更新された構築面を使用して、実際のマッチング面の挙動を予測してもよい。
例えば、式3の各々の自由係数は、ボックス204で受信されるソースフレームおよび参照フレームなどの統計データなどから派生される標準面を有する。例えば、一次多項式の面は、下記の式4に示すように定義される。
式4:
Figure 2010233208
推定マッチング面と実際のマッチング面との間の誤差を統計データに基づいて最小化すると、式4で表される理論上の基本面が変化し、下記の式5に示すように、実際のマッチング面をより正確に表すことができる。
式5:
Figure 2010233208
ボックス209に示すように、本方法は、更新された基本面を、即ち、多数のデータ集合(例えば、多数の典型的ソース画像および参照用画像や、フレームや、またはフレームのブロックなど)に基づく(ボックス208の)構築面をテスト、確認、または調査することを含む。テストすることは、(ボックス208の)推定面を使用して、ソース画像および参照画像に関する全動き(full motion )推定を実行することを含み得る。(ボックス208の)推定面と、(ブロック205の)計算された実際のマッチング面との間の総誤差を、所望の所定しきい値と比較し、その総誤差が、先に計算された総誤差または或る所定しきい値より小さい場合には、ボックス211に示すように、現在の更新された基本(構築)面が、エンコーダによってリアルタイム処理で使用される。
総誤差がしきい値よりも大きいか、先に計算された総誤差以上の場合、本方法はボックス204に戻ることを含み得る。それぞれの反復処理において、ボックス203で作成された最初の基本面に代わりに、更新された基本面(構築面)を使用することができる。更新された基本面を使用しない場合には、元の基本面が使用される。さらに、誤差がしきい値よりも大きい場合でも、図2に記載されている反復プロセスを中断し、現在の更新面を使用して推定マッチング面[ボックス211]を作成してもよい。ただし、面パラメータの変化により、総誤差は大きくなる。
構築面は、図3に記載されているソースフレームと参照フレームとの間の動きベクトルを見つけるために、図1のサブピクセル動き推定120によってリアルタイム処理で使用される。
次に図3を参照すると、同図は、本発明の実施形態によるリアルタイムで動的なサブピクセル動き推定アルゴリズムを実行するための方法を表すフローチャートである。本方法の動作は、例えば、図1のサブピクセル動き推定ブロック120、および/または他の適切なユニット、装置、および/またはシステムによって実装してよい。実施形態によっては、前処理ユニット130によってオフラインで実行される演算結果を用いて、サブピクセル動き推定アルゴリズムの動作をエンコーディングプロセスの実行時にリアルタイムで動的に実行してもよい。他の実施形態においては、基本面を更新するなどの目的で、前処理ユニット130の動作をエンコーディングプロセスの実行時にリアルタイムで実行してもよい。
ボックス301に示すように、本方法は、ソースフレームおよび参照フレームをリアルタイムで受信することを含む。ソースフレームおよび参照フレームは、図1のエンコーダ100によってエンコードされる動画ストリームのフレームであってもよい。
ボックス302に示すように、本方法は、ソースフレームと参照フレームとの間の差、つまり、一つ以上のマッチング規準を、以前に選択されたマッチング規準(図2のボックス201)に従って以前に選択されたn箇所のサンプルポイント(図2のボックス202)の位置で、リアルタイムで計算することを含む。
ボックス303に示すように、本方法は、(ボックス302で計算された)サンプルと、前処理フェーズから取得された構築面(図2のボックス211)を基に、推定マッチング面を生成することを含む。例えば、推定マッチング面は、n箇所のサンプルポイントの各々に、前処理フェーズで計算された各々の構築面を掛け合わせ、その結果を合計することによって生成することができる。面推定プロセスにより、実際のマッチング面をリアルタイムで計算することなく、前処理フェーズで見つかった構築面を基に、実際のマッチング面を表す式の自由係数を取得してもよい。これらの係数は、計算されたn箇所のサンプルポイントなど、既知のサンプル値を用いて取得してもよい。サンプルポイントの数は、実際のマッチング面を表す式の自由係数の数と、少なくとも同じであればよい。例えば、式の集合を解析するために、自由係数ごとに所与の値を使用してもよい。式の解析は、逆行列乗算を用いるなど、線形式の集合の解を求めることによって実行することができる。いくつかの実施形態においては、自由係数の数よりも多くのサンプルポイントを使用してもよい。
ボックス304に示すように、本方法は、ボックス303で作成された推定マッチング面上の最良マッチ位置、つまり、マッチング規準に対する最良マッチを示す推定面上のポイントを見つけることを含む。最良マッチ位置は、動き推定/補償プロセスを実行するのに必要な動きベクトルを提供し得る。最良マッチ位置は、例えば、動きベクトル自体であってもよい。
次に図4Aを参照すると、同図は、本発明の実施形態によるサブピクセル動き推定アルゴリズムの例示的なリアルタイム実装を表すフローチャートである。次に図4Bを参照すると、同図は、本発明の実施形態を理解する上で役立つ検索領域の例示的なピクセルマップを表す。
例示的なリアルタイム実装では、入力値として、9つの構築面が生成された前処理設計フェーズ(図2に記載)の結果が使用される。例示的な検索領域は、水平線の入った菱形の領域400と定義される。
図4Aおよび図4Bによって表される例示的な実装は、マッチング規準としてSADを選ぶこと(ボックス401)を含む。面推定に計算および使用される実際のサンプルは、5つのフルピクセル結果および4つのハーフピクセル結果である。このため、フルピクセルの5つのSAD値(図4Bに「F」で表示)が計算される(ボックス402)。加えて、二次元のハーフピクセル(図4Bに「J」で表示)の4つのSAD値も計算される(ボックス403)。
ボックス404に示すように、本方法は、行列乗算を用いて9つの式の解を求めるなどして面を推定することを含む。行列乗算は、設計フェーズで先に計算しておいてもよい。
計算の複雑性をさらに低減するために、本方法は、図4Bの検索領域400をさらに減らし、菱形領域400(ボックス405)内に水平線と垂直線との両方が描かれている部分410など、最良マッチが得られる見込みが最も高い一部の検索領域400だけを選択してもよい。このような選択は、図4BにFおよびJで表されるサンプルなど、検索領域内のサンプルまたはポイントの結果に基づいてもよい。一方、本方法は、検索領域400全体で実行してもよく、検索領域の他の任意のセクション、領域、部分、またはピクセル数を選択してよいことを当業者は理解し得る。
面が推定されたら、選択領域内で評価可能なすべての位置が評価され得る。たとえば、クォータピクセルがQで表され、二次元ハーフピクセルがJで表される領域400のすべての位置が評価され得る。ボックス406に示すように、本明細書において「最良整数値」と称される、全フルピクセル中で最小のSADを選択してもよい。ボックス407に示すように、本明細書において「最良サブピクセル」と称される、全サブピクセル中で最小のSADを選択してもよい。
最良整数値と最良サブピクセル値とが比較される。最良位置が最良整数値である場合には、フルピクセルが使用される(ボックス412)。最良位置が最良サブピクセル値である場合には、サブピクセル補間後に使用される実際の規準を作成するために、最良位置で動き補償(MC)動作が実行される(ボックス209)。その後、SADなど実際のマッチング規準が計算され、整数ピクセル結果と比較され得る(ボックス410)。計算されたSADが整数結果よりも良好である場合には、サブピクセル結果が使用される(ボックス413)。計算された整数値のSADの方が良好である場合には、整数結果が使用される(ボックス412)。
本発明の実施形態は、取りうる位置を計算するのに使用される構築面を例えば面推定行列を変更することなく変更することによって、あるいは計算された位置を比較する前に重み付けを使用したりすることによって、推定マッチング規準面の異なる位置または場所が出現する頻度を制御し得る。推定および再構成に異なる構築面を使用する場合には、基本直交面の一つなど、すべてのサンプルで同じ値を有する面上の特定位置で一つ以上のサンプル値を減じるなどしてマッチングスコアを人為的に下げることにより、特定の位置を好適化してもよい。例えば、マッチング規準の点でメリットがある場合に特定の場所を使用するために、推定マッチング規準を下げることでこの場所の可能性を下げ得る面を選択してもよい。
本発明の実施形態は、コンピュータまたはプロセッサによる読み取りが可能な媒体などの製品、メモリ、ディスクドライブ、USBフラッシュメモリなど、コンピュータ記憶媒体またはプロセッサ記憶媒体、プロセッサまたはコントローラによって実行された場合に、本明細書に開示されている方法を実行するコンピュータ実行可能命令などのエンコード命令、組み込み命令、または記憶命令を含み得る。
本発明の実施形態は、複数の中央処理装置(CPU)または他のいかなる適切な汎用または特定プロセッサあるいはコントローラ、複数の入力ユニット、複数の出力ユニット、複数のメモリユニット、および複数の記憶ユニットなどの構成要素などを含み得るが、これらに限定されない。このようなシステムは、他の適切なハードウェア構成要素および/またはソフトウェア構成要素をさらに含み得る。いくつかの実施形態において、このようなシステムは、パーソナルコンピュータ、デスクトップコンピュータ、モバイルコンピュータ、ラップトップコンピュータ、ノート型コンピュータ、端末、ワークステーション、サーバコンピュータ、パーソナル携帯情報(PDA)装置、タブレットコンピュータ、ネットワーク装置、またはその他任意の適切な演算装置を備えていてもよく、あるいはこれらの装置であってもよい。
本発明の特定の特徴を本明細書に明示および記載したが、当業者であれば、多くの変形、代用、変更、および等価物を考え得る。特許請求の範囲は、本発明の思想から逸脱しないすべての変形および変更を網羅することを意図する。

Claims (15)

  1. 動画エンコーディングにおけるサブピクセル動き推定のための方法であって、
    複数の非線形構築面を生成すること、
    前記複数の構築面と、実際のマッチング規準面の複数のサンプルポイントとに基づき、第1の画像と第2の画像との間のマッチング規準を表す推定マッチング規準面をリアルタイムで生成すること、
    前記推定マッチング規準面上で前記第1の画像と前記第2の画像との間の最良マッチを表す位置をリアルタイムで選択すること、
    を備える方法。
  2. 前記複数の非線形構築面の各々が係数の集合によって定義される、請求項1に記載の方法。
  3. 前記複数の構築面が所定のパラメータに関連付けられている、請求項1に記載の方法。
  4. 前記複数の構築面を生成することが、
    前記複数のサンプルポイントとして使用される複数の位置ずれポイントを選択すること、
    複数の構築面を生成すること、
    を含む、請求項1に記載の方法。
  5. 前記複数の構築面を生成することが、前記推定マッチング規準面と前記実際のマッチング規準面との間の誤差を最小化するために、複数の構築面を反復的に更新することを含む、請求項1に記載の方法。
  6. 前記複数の構築面を反復的に更新することが、
    受信されたソースフレームと参照フレームとに従って前記実際のマッチング規準面を計算すること、
    前記複数の位置ずれポイントにおける前記実際のマッチング規準面の複数のサンプルと、前記複数の構築面とに基づいて推定面を生成すること、
    前記推定面と前記実際のマッチング規準面との間の誤差を所定のしきい値と比較すること、
    を含む、請求項5に記載の方法。
  7. 前記位置が動きベクトルを表す、請求項1に記載の方法。
  8. サブピクセル動き推定のための動画エンコードシステムであって、
    複数の非線形構築面を生成するための前処理ユニットと、
    前記複数の構築面と、実際のマッチング規準面の複数のサンプルポイントとに基づき、第1の画像と第2の画像との間のマッチング規準を表す推定マッチング規準面をリアルタイムで生成するとともに、前記推定マッチング規準面上で前記第1の画像と前記第2の画像との間の最良マッチを表す位置をリアルタイムで選択するサブピクセル動き推定ブロックと、
    を備えるシステム。
  9. 前記前処理ユニットは、前記複数の非線形構築面の各々を係数の集合によって定義する、請求項8に記載のシステム。
  10. 前記前処理ユニットは、所定のパラメータに関連付けて前記複数の構築面を生成する、請求項8に記載のシステム。
  11. 前記前処理ユニットは、複数の構築面を生成するとともに、前記複数のサンプルポイントとして使用される複数の位置ずれポイントを選択する、請求項8に記載のシステム。
  12. 前記前処理ユニットは、前記推定マッチング規準面と前記実際のマッチング規準面との間の誤差を最小化するために、複数の構築面を反復的に更新する、請求項8に記載のシステム。
  13. 前記前処理ユニットは、
    ソースフレームと参照フレームとを受信すること、
    前記ソースフレームと前記参照フレームとに従って前記実際のマッチング規準面を計算すること、
    前記複数の位置ずれポイントにおける前記実際のマッチング規準面の複数のサンプルと、前記複数の構築面とに基づいて推定面を生成すること、および
    前記推定面と前記実際のマッチング規準面との間の誤差を所定のしきい値と比較すること、
    を反復的に行う、請求項12に記載のシステム。
  14. 前記位置が動きベクトルを表す、請求項8に記載のシステム。
  15. 処理プラットフォームによって実行される命令を格納したコンピュータ記憶媒体を備える製品であって、前記命令は、
    複数の非線形構築面を生成すること、
    前記複数の構築面と、実際のマッチング規準面の複数のサンプルポイントとに基づき、第1の画像と第2の画像との間のマッチング規準を表す推定マッチング規準面をリアルタイムで生成すること、
    前記推定マッチング規準面上で前記第1の画像と前記第2の画像との間の最良マッチを表す位置をリアルタイムで選択すること、
    を前記処理プラットフォームに実行させる、製品。
JP2010025283A 2009-02-12 2010-02-08 高速サブピクセル動き推定 Pending JP2010233208A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/369,849 US8320454B2 (en) 2009-02-12 2009-02-12 Fast sub-pixel motion estimation

Publications (2)

Publication Number Publication Date
JP2010233208A true JP2010233208A (ja) 2010-10-14
JP2010233208A5 JP2010233208A5 (ja) 2013-04-04

Family

ID=42104004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010025283A Pending JP2010233208A (ja) 2009-02-12 2010-02-08 高速サブピクセル動き推定

Country Status (4)

Country Link
US (1) US8320454B2 (ja)
EP (1) EP2219381B1 (ja)
JP (1) JP2010233208A (ja)
CA (1) CA2692903C (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013093731A1 (en) * 2011-12-23 2013-06-27 Koninklijke Philips Electronics N.V. A motion detection method for a video processing system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09187013A (ja) * 1995-12-28 1997-07-15 Sony Corp 動きベクトル検出装置および方法
JP2007257380A (ja) * 2006-03-23 2007-10-04 Toyota Central Res & Dev Lab Inc 最適パラメータ探索方法およびそのプログラム
JP2007323458A (ja) * 2006-06-02 2007-12-13 Sony Corp 画像処理装置および画像処理方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4645459A (en) * 1982-07-30 1987-02-24 Honeywell Inc. Computer generated synthesized imagery
US6464643B1 (en) * 2000-10-06 2002-10-15 Koninklijke Philips Electronics N.V. Contrast imaging with motion correction
US7656950B2 (en) * 2002-05-29 2010-02-02 Diego Garrido Video interpolation coding
US7526028B2 (en) * 2003-07-25 2009-04-28 Taiwan Imaging-Tek Corp. Motion estimation method and apparatus for video data compression
US20050047504A1 (en) * 2003-09-03 2005-03-03 Sung Chih-Ta Star Data stream encoding method and apparatus for digital video compression
US7292283B2 (en) * 2003-12-23 2007-11-06 Genesis Microchip Inc. Apparatus and method for performing sub-pixel vector estimations using quadratic approximations
US7782951B2 (en) * 2004-05-13 2010-08-24 Ittiam Systems (P) Ltd. Fast motion-estimation scheme
US20050286777A1 (en) * 2004-06-27 2005-12-29 Roger Kumar Encoding and decoding images
KR100639995B1 (ko) * 2005-06-14 2006-10-31 한국전자통신연구원 블록 정합 기반의 고속 움직임 예측 장치 및 그 방법
US8259809B2 (en) 2009-01-12 2012-09-04 Mediatek Singapore Pte Ltd. One step sub-pixel motion estimation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09187013A (ja) * 1995-12-28 1997-07-15 Sony Corp 動きベクトル検出装置および方法
JP2007257380A (ja) * 2006-03-23 2007-10-04 Toyota Central Res & Dev Lab Inc 最適パラメータ探索方法およびそのプログラム
JP2007323458A (ja) * 2006-06-02 2007-12-13 Sony Corp 画像処理装置および画像処理方法

Also Published As

Publication number Publication date
US8320454B2 (en) 2012-11-27
CA2692903A1 (en) 2010-08-12
EP2219381B1 (en) 2018-08-08
EP2219381A1 (en) 2010-08-18
US20100202531A1 (en) 2010-08-12
CA2692903C (en) 2015-08-18

Similar Documents

Publication Publication Date Title
US9357228B2 (en) Motion estimation of images
US10681367B2 (en) Intra-prediction video coding method and device
JP2008227702A (ja) 動きベクトル探索装置、動きベクトル探索方法及び動きベクトル探索プログラム
JPWO2012086829A1 (ja) 動き推定装置、動き推定方法、動き推定プログラム、および動画像符号化装置
JPWO2012121234A1 (ja) 映像符号化装置、映像符号化方法および映像符号化プログラム
EP2362655B1 (en) Motion-vector estimation
Kerfa et al. An efficient algorithm for fast block matching motion estimation using an adaptive threshold scheme
Chen et al. Video compressed sensing reconstruction based on structural group sparsity and successive approximation estimation model
WO2020054060A1 (ja) 動画像符号化方法及び動画像符号化装置
JP2010233208A (ja) 高速サブピクセル動き推定
Biswal et al. Parallel architecture for accelerating affine transform in high-speed imaging systems
JP2011199868A (ja) 動き推定処理における適応検索領域
KR20100083554A (ko) 이산여현변환/역이산여현변환 방법 및 장치
JP2017050744A (ja) 画像符号化装置、画像符号化方法、及びプログラム
WO2007035236A2 (en) Variable shape motion estimation in video sequence
JP2018186456A (ja) 画像符号化装置、画像符号化方法及びプログラム
JP5561611B2 (ja) 画像符号化方法,画像符号化装置および画像符号化プログラム
JP5108828B2 (ja) 画像符号化装置
Hanoosh et al. A parallel architecture for motion estimation in HEVC encoder
KR101786921B1 (ko) 고속 움직임 추정을 위한 장치 및 방법
KR101199861B1 (ko) 부호화/복호화 장치 및 그 방법과 이를 구현하기 위한 프로그램이 기록된 기록매체
Shah Oveisi et al. A power-efficient approximate approach to improve the computational complexity of coding tools in versatile video coding
Wen et al. A hardware architecture of skip/direct mode for AVS3
JP5626728B2 (ja) 画像符号化方法,画像符号化装置および画像符号化プログラム
KR101786957B1 (ko) 고속 움직임 추정을 위한 장치 및 방법

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130208

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130208

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20130213

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20130417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130423

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130723

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130726

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20131217