(57)【特許請求の範囲】
【請求項１】
複数のイメージ操作装置であって、各装置はソース・イメージのブロックとリファレンス・イメージのブロックとの間の類似性を判断するために動作する、複数のイメージ操作装置と、
前記複数のイメージ操作装置の動作モードを、第1モードおよび第２モードの効率性に基づいて、前記第1モードと前記第２モードとの間で切り換えるために動作するモード切り換え要素であって、前記第１モードにおいて前記複数のイメージ操作装置の各々は全歪み検出計算を行い、かつ前記第２モードにおいて前記複数のイメージ操作装置の各々は前記全歪み検出計算の一部を行い、前記全歪み検出計算は前記ソース・イメージの全体と前記リファレンス・イメージの全体との間の関係を含み、かつ前記全歪み検出計算の前記一部は前記ソース・イメージのブロックの一部と前記リファレンス・イメージのブロックの一部との間の関係を含む、モード切り換え要素と、
から構成されることを特徴とする装置。
【請求項２】
前記イメージ操作装置は、絶対差分の合計（「ＳＡＤ」）装置を含むことを特徴とする請求項１記載の装置。
【請求項３】
前記第１モードは、全ＳＡＤモードを含み、各ＳＡＤ装置は異なったリファレンスのブロックおよび異なったソースのブロックを受け取り、リファレンスの全ブロックとソースの全ブロックとの間における差分を計算することを特徴とする請求項２記載の装置。
【請求項４】
前記ＳＡＤ装置は、１６×１６のリファレンスと１６×１６のソースとの間の差分を画素毎に計算することを特徴とする請求項３記載の装置。
【請求項５】
前記第２モードは、各ＳＡＤ装置が単一ブロックのＳＡＤ計算の一部を実行するモードであることを特徴とする請求項２記載の装置。
【請求項６】
Ｎ個のＳＡＤ装置を含み、Ｎ個のＳＡＤ装置の各々は全出力の１／Ｎを提供することを特徴とする請求項５記載の装置。
【請求項７】
第１サイクルでの計算および第２サイクルでの計算を実行するために動作するテスト要素をさらに含む装置であって、前記第１サイクルは前記複数のイメージ操作装置を前記第１モードで動作することを含み、かつ前記第２サイクルは前記複数のイメージ操作装置を前記第２モードで動作することを含み、ここで前記テスト要素は、モード切り換え要素が、前記第１および第２サイクル間のより速い計算時間に基づいて、前記複数のイメージ操作装置の動作モードを前記第１モードまたは前記第２モードのいずれに設定すべきかを判断することを特徴とする請求項１記載の装置。
【請求項８】
前記第１モードでは、前記ＳＡＤ装置の各々は前記１６×１６のリファレンスのブロック全体と１６×１６のソースのブロック全体との間の関係を含む全計算を計算し、前記第２モードでは、前記ＳＡＤ装置の各々は前記全計算の一部を計算する、ことを特徴とする請求項４記載の装置。
【請求項９】
前記第１モードまたは前記第２モードのどれが所望の結果を生み出すかを検出し、前記動作モードをより早い計算時間を有するモードへ設定するよう前記モード切り換え要素に指示するために動作する論理ユニットをさらに含むことを特徴とする請求項１記載の装置。
【請求項１０】
第１の複数の画素を含む第１イメージ部と第２の複数の画素を含む第２イメージ部との間の全歪みを計算するために動作する複数のＳＡＤ装置と、
前記第１および第２イメージ部の特性に基づき、前記複数のＳＡＤ装置中で前記全歪み計算を分割するために動作する計算分割要素であって、前記全歪み計算は前記第１および第２イメージ部の間の複数の画素毎の差異を判断することを含む、計算分割要素と、
から構成され、第１モードにおいて前記複数のＳＡＤ装置の各々は前記全歪み計算の一部を行い、かつ第２モードにおいて前記複数のＳＡＤ装置の各々は前記全歪み計算を行うことを特徴とする歪み計算装置。
【請求項１１】
前記計算分割要素は前記複数のＳＡＤ装置間で前記全歪み計算を分割するために動作し、前記複数のＳＡＤ装置の各々は前記全歪み計算の異なる画素毎の差異を計算することを特徴とする請求項１０記載の装置。
【請求項１２】
前記複数のＳＡＤ装置はＮ個のＳＡＤ装置からなり、前記第１モードでは、前記Ｎ個のＳＡＤ装置の各々は、前記全歪み計算の１／Ｎを計算することを特徴とする請求項１０記載の装置。
【請求項１３】
前記第１モードと、前記Ｎ個のＳＡＤ装置のそれぞれが前記全歪み計算を行う前記第２モードとの間における適切な動作モードを判断する論理ユニットをさらに含むことを特徴とする請求項１２記載の装置。
【請求項１４】
前記特性を判断し、かつ前記特性に基づいて前記計算分割要素を制御する論理要素をさらに含むことを特徴とする請求項１０記載の装置。
【請求項１５】
前記第２モードにおいて前記全歪み計算は、前記複数のＳＡＤ装置から選択された単一のＳＡＤ装置によって実行されることを特徴とする請求項１４記載の装置。
【請求項１６】
複数のイメージ歪み計算装置においてイメージ歪みを同時に計算する段階と、
前記複数のイメージ歪み計算装置を構成する段階であって、第１モードで前記複数のイメージ歪み計算装置の各々は全歪み検出計算を計算し、かつ第２モードで前記複数のイメージ歪み計算装置の各々は前記全歪み検出計算の一部を計算し、ここで前記全歪み検出計算は第１イメージのブロックの全体と第２イメージのブロックの全体との間の関係を判断し、かつ前記全歪み検出計算の前記一部は前記第１イメージのブロックの一部と前記第２イメージのブロックの一部との間の関係を判断することを含む、段階と、
から構成されることを特徴とするイメージを処理する方法。
【請求項１７】
前記第１モードにおいて、ソース・ブロックとサーチ・ブロックとの間の全歪みを表す全歪み検出計算を計算する段階をさらに含むことを特徴とする請求項１６記載の方法。
【請求項１８】
第１および第２モードのいずれがより効率的に動作するかを判断するためにテストを行なう段階、および前記テストを行なう段階に基づいて、前記複数のイメージ歪み計算装置を前記第１または第２モードで動作するために構成する段階をさらに含むことを特徴とする請求項１７記載の方法。
【請求項１９】
複数の別個の装置において、第１イメージ部および第２イメージ部の間の差分を計算する段階と、
前記複数の装置を構成する段階であって、第１モードにおいて前記複数の装置の各装置は全歪み検出計算を計算し、第２モードにおいて各装置は全歪み検出計算の一部のみを計算し、ここで前記全歪み検出計算は前記第１イメージのブロックの全体と前記第２イメージのブロックの全体との間の差分を判断し、かつ前記全歪み検出計算の一部は前記第１イメージのブロックの一部と前記第２イメージのブロックの一部との間の差分を判断することを含む、段階と、
から構成されることを特徴とするイメージを処理する方法。
【請求項２０】
前記装置は、絶対差分の合計（「ＳＡＤ」）装置であることを特徴とする請求項１９記載の方法。
【請求項２１】
出力ビデオ信号を生成するビデオ装置と、
Ｎ個の絶対差分の合計（「ＳＡＤ」）装置を含む複数のＳＡＤ装置であって、Ｎ個のＳＡＤ装置の各々は、減算装置、絶対装置、および累積器を有し、前記出力ビデオ信号を受信するために結合される、複数のＳＡＤ装置と、
前記Ｎ個のＳＡＤ装置の各々が前記出力ビデオ信号の２つのイメージ部の間の差分を計算する第１モードと、前記Ｎ個のＳＡＤ装置の各々が前記出力ビデオ信号の全体の１／Ｎを計算する第２モードと、の間で動作モードを変更するために動作するモード変更装置と、
から構成されることを特徴とする計算装置。
【請求項２２】
前記ビデオ装置は、ビデオ・カメラから成ることを特徴とする請求項２１記載の計算装置。
【発明の詳細な説明】
【０００１】
【従来の技術】
イメージ圧縮技術は、ビデオ応用において送信されるべきデータの総量を減少させることができる。これは、しばしば同一に留まっているイメージを決定することによって成される。「動作推定(motion estimate)」技術は、さまざまなビデオ符号化法で用いられる。
【０００２】
動作推定は、あるフレームＮに属するソース・ブロックとサーチ領域との間の最適な一致を見つけようとする試みである。サーチ領域は、同じフレームＮにあっても、あるいは一時的に移動したフレームＮ−ｋ中のサーチ領域にあってもよい。
【０００３】
本技術は、演算集約的である。
【０００４】
【詳細な説明】
動作推定は、絶対差分の合計(sum of absolute difference)または「ＳＡＤ」を計算することによってしばしば実行される。動作推定は、多くの異なった応用に用いられ、ビデオ、ビデオ・カメラ、ビデオ・アクセラレータ、およびこのような他の装置を用いるセルラ電話を含むが、これらに限定されるものではない。これらの装置は、出力としてビデオ信号を生成する。ＳＡＤは、ソース・ブロックとサーチ領域のサーチ・ブロックとの間における最低の歪みを認識するためにしばしば用いられる計算である。したがって、これらのブロック間の最適な一致となる。これを表現する１つの方法は、次式である。
【０００５】
【数１】
0004271935.tif 000002
【０００６】
概念的にこれが意味するものは、第１フレームまたはソース・ブロック（Ｎ）がＭ×Ｎソース・ブロック１００の要素部分に分割されることである。これらは、第２フレーム（Ｎ−Ｋ）１０２と比較される。そのフレームは、ｋ≠０の場合に、一時的に移動され得る。各Ｎ−Ｋフレーム１０２は、Ｍ＋２ｍ1×Ｎ＋２ｎ1の領域である。ソース・ブロック１００は、図１における領域の中心に示されている。一致するイメージ部分は、歪測定器を用いて各イメージ・フレームの各部分を他のイメージ・フレームと相関をとることによって検出できる。圧縮法は、この検出を使用して、そのデータを圧縮し、それによりそのイメージについてのより少ない情報を送り出す。
【０００７】
この装置は、また汎用目的のＤＳＰの一部であってもよい。このような装置は、ビデオ・カムコーダ、会議電話、ＰＣビデオ・カードおよびＨＤＴＶにおける使用を意図している。加えて、汎用目的のＤＳＰは、またデジタル信号処理、例えば携帯電話で用いられる音声処理、音声認識および他の応用で使用する他の技術と関連して使用することを意図している。
【０００８】
全歪検出処理の速度を増加させることはできる。１つの方法は、各ＳＡＤ装置が１サイクルでより多くの動作を実行することのできるハードウェアを用いることである。しかしながら、これはより高価なハードウェアを必要とする。
【０００９】
他の方法は、別のＳＡＤ装置を追加することにより有効なピクセルのスループットを増加させることである。しかしながら、より多くのＳＡＤを必要とするので、これもまた費用を増加させる。
【００１０】
より早いサーチ・アルゴリズムは、既存のハードウェアの使用をより効果的にする。
【００１１】
ブロックＳＡＤはソース・グループを「サーチ・グループ」と比較する。ソース・グループおよびサーチ・グループはイメージ全体に亘って移動し、その結果ＳＡＤの動作はその２つのグループ間のオーバーラップを計算する。ソース・グループ中の各ブロックは、各サーチ領域における複数のブロックと比較される。
【００１２】
典型的なＳＡＤユニットは、２つの１６×１６エレメント上で動作し、これらの要素を交互にオーバレイする。このオーバレイ処理は、１６×１６＝２５６個の差分を計算する。その後、これらは全歪みを表すために累積される。
【００１３】
ＳＡＤは、ある基礎的な動作を要求する。ソースＸijとサーチＹijとの間の相違が形成されなければならない。絶対値｜Ｘij−Ｙij｜が形成される。最後に、次の値が累積される、
【００１４】
【数２】
0004271935.tif 000003
【００１５】
基本的な累積構造が図２に示される。演算論理ユニット２００は、それに結合したデータ・バス１９８，１９９からＸijおよびＹijを受け取り、Ｘij−Ｙijを計算する。出力２０１は、インバータ２０２によって反転される。反転された出力およびそのオリジナル値の双方はマルチプレクサ２０４へ送られ、サイン・ビット２０５に基づく値の１つを選択する。第２演算論理ユニット２０６はこれらを結合し、絶対値を形成する。最終的な値は、累積レジスタ２０８に格納される。図２に示されるように、これは減算、絶対値、累積を効果的に構成する。
【００１６】
図２は、単一のＳＡＤ計算ユニットを示す。上記したように、複数の計算ユニットがスループットを向上させるために用いられる。もし計算ユニットの数が増加するなら、理論的にはそれはサイクル毎の画素スループットを増加させる。
【００１７】
しかしながら、本発明者は、画素スループットの増加は本質的にユニット数に線形して関連するものではないことに着目した。実際、各フレームはその近傍のフレームとどこか相関があるものである。加えて、各イメージの異なった部分は、しばしばそのイメージの他の部分と相関を有するものである。圧縮の効率性は、そのイメージの特性に基礎付けられる場合がある。本応用は、圧縮の効率性に依存して、異なったモードにある複数のＳＡＤ装置を用いることができる。
【００１８】
本応用は、図３Ａ，３Ｂに示される構成を利用する。同じ接続が図３Ａ，３Ｂの双方に用いられるが、計算は異なった方法で区分けされる。
【００１９】
図３Ａは、全ＳＡＤとして形成される各ＳＡＤ装置３００，３０２を示す。各ＳＡＤは、異なったブロックを受け取り、ＮブロックのＳＡＤ計算を提供する。従って、ユニット３００は、事実上１６×１６リファレンスと１６×１６ソースとの間の関係を、画素毎に計算する。ユニット２  ３０２は、１６×１６ソースと１６×１６サーチとの差分である結果を画素毎に計算する。別の変形が図３Ｂに示される。この変形である構成では、各単一のＳＡＤ３００，３０２は、単一のブロックＳＡＤの計算の一部を実行する。Ｎ個の計算ユニットの各々は、出力の１／Ｎを提供する。この「部分ＳＡＤ」動作は、８ビットの減算絶対値累積器の各々がそのユニットへ割り当てられた全ＳＡＤ計算の１／Ｎを計算する。
【００２０】
部分ＳＡＤ動作かあるいは全体ＳＡＤ動作かを決定する全体のシステムは、ここに述べられるように前回の結果に基づいて行なわなければならない。これにより、実行される計算数を減少させることができる。
【００２１】
全体または一部のいずれが用いられるかを決定する１つの方法は、一時的に近接したイメージが相関のある属性を有していることを仮定することである。第１サイクルは全ＳＡＤモードを用いて計算することができ、第２サイクルは部分ＳＡＤモードを用いて計算することができる。より速く動作するサイクルは勝者として扱われ、そのＳＡＤモードをセットする。この計算はＸサイクル毎に繰り返され、ここにＸは局所的な一時的相関がもはや仮定されなくなった後のサイクル数である。こらは、論理ユニット内で行われ、ここに示された図７のフローチャートを実行する。
【００２２】
スループットは、また、ここに示された「アーリー・イグジット(early exit)」技術によって向上させることができる。
【００２３】
１６×１６エレメントに対する完全なＳＡＤ計算は、｜ｐ1ｒ−ｐ1ｓ｜＋｜ｐ2ｒ−ｐ2ｓ｜＋・・・｜ｐ256ｒ−ｐ256ｓ｜・・・（１）として記述され得る。もしこれらの計算の全てが実際に実行されるならば、計算は２５６／Ｎサイクル必要とし、ここにＮはＳＡＤユニット数である。できるだけ早くその計算を停止することが望ましい。その計算の中間結果が検証される。これらの中間結果は、最小の歪みを見つけるために十分な情報が決定されたかどうかを決めるために用いられる。しかしながら、試験する動作はサイクルを消費する。
【００２４】
本応用は、このサイクルの消費と最小歪みの決定との間のバランスを表す。図４は、４つのＳＡＤ装置を用いる１６×１６計算に対するトレードオフを描く。図４中のライン４００は、アーリー・イグジットがない場合のサイクル・カウントを示す。そのラインは、水平的に、アーリー・イグジットのないサイクル・カウントがいつも２５６／４＝６４であることを示している。アーリー・イグジット戦略に対するサイクル・カウントは、傾斜ライン４０２，４０４，４０６，４０８で示される。ライン４０４は１６画素毎に１つのテストを示し、ライン４０６は３２画素（１／８）毎に１つのテストを示し、そしてライン４０８は６４画素（１／１６）毎に１つのテストを示す。ライン４０２−４０８がライン４００より上にある場合、アーリー・イグジットでの試みは全体の歪み計算時間を実際には増加させることに注意されたい。ライン４０２はサイクル消費を示し、ゼロのオーバーヘッドがイグジット・テストのために得られる。すなわち、テストが行われると、そのイグジットはいつもうまくいく。ライン４０２は望ましい目標である。適応型アーリー・イグジット法はこのようにするために開示される。
【００２５】
ブロックＩは、従来から知られたあらゆる通常の戦略を用いてまず処理され、最小の歪みを見つける。これは実際のイメージの一部であるテスト・パターンを用いてなされ、その歪みを求めることができる。最小歪みは、基準線（ベースライン)として用いられ、ブロックＩ＋ｎは、ｎは小さいが、同じ最小歪みを有することが仮定される。
【００２６】
Ｋｅｘｉｔ（Ｎ）は、アーリー・イグジットが達成される前に、サーチ領域のために前もって処理された画素の数を表す。
【００２７】
Ａｅｘｉｔ（Ｎ）は、サーチ領域のための最新のアーリー・イグジット時刻での、部分累積サイン・ビットの状態を示す。
【００２８】
これらのブロックＩ＋ｎに対し、ＳＡＤ計算は、歪みがそのスレシホールドを超える時、終了する。これは、サーチ領域について知られている以前の情報を用いる一時的なシステムを形成する。
【００２９】
通常のシステムは、しばしば共通の特性を維持するある確率であるサーチ領域内のイメージ特性に基づく。フレーム間の時間は、１／１５秒と１／３０秒との間にあり、これらの時間間隔中にある測定可能なシステム特性に関連するあるノイズ・フロア以上で、最小の変更が発生するのにしばしば十分早い。また、時間を超えて、類似した一時的特性を維持するイメージ領域が存在する。
【００３０】
本願にしたがって、各ＳＡＤのための累積器に値（−least/n）がロードされ、ここに「least」は、その領域に対するブロック移動サーチで測定される最小歪みを表す。多くのＳＡＤは各サーチ領域のために計算される。その領域における最初のＳＡＤ計算には、「Least」の名称が割り付けられる。将来のＳＡＤはこれと比較され、新しい「Least」値が確立されたかどうかをみる。累積器が符号を変更する場合、最小歪みに到達する。さらに、これは、追加の計算なしに、その現在のＳＡＤ構造のみを用いて示され、その結果テストのためのサイクルを追加する。
【００３１】
イメージ特性のテストは、アーリー・イグジットを確立する前にいくつの累積器がスイッチする必要があるのかを決定するために用いられる。例えば、ソースおよびターゲット領域が全く同じ性質であるなら、そのとき全ての累積器は多かれ少なかれ同時に符号を変えなければならない。これが発生すると、実行中のＳＡＤ計算のうち前回の最小測定値を越えるいずれか１つの計算が、アーリー・イグジットが適切であることを示すために用いられる。
【００３２】
しかしながら、これは全イメージの均質性を仮定する。このような仮定は、いつも保っているものではない。多くの状況では、異なったＳＡＤユニットの複数の累積器は、同じ速度で増加するのではない。さらに、累積器間の異なった増加速度は、それら自身の相違性、すなわちソースおよびターゲット・ブロック間の空間周波数特性に直接関連付けられるかもしれないし、またデータをサンプルする方法に関連付けられるかもしれない。これは、ＳＡＤユニットに何が発生するのかに基づき、アーリー・イグジットをどのように決定するのかを判断するより複雑な方法を要求する。
【００３３】
１つの動作は分割ＳＡＤ状態と関連する可能性に基づき、ここに全てのＳＡＤユニットは必ずしも同じ状態にはない。累積器間の増加率の相違は、ソースおよびターゲット・ブロック間における空間周波数特性の相違に関連付けられる。これらの空間周波数特性は、また一時的に同種のフレーム間で相関が取られるので、あるフレームからの情報は、また次のフレームの解析に応用される。
【００３４】
これは、変数に関連してここに説明されるが、ここにＡ1，Ａ2，Ａ3，．．．Ａnは分割ＳＡＤ計算と関連する事象（イベント）として定義される。
【００３５】
イベントは次のように定義される。
【００３６】
イベントＡi＝ＳＡＤi≧０  ここにｉ≠ｊに対しＳＡＤ＜０。
【００３７】
これは、概念的にはイベントＡiは、ＳＡＤユニットがポジティブで残りの全てのＳＡＤユニットがネガティブである場合に起こるとして定義されることを意味する。これは、例えば、累積器が異なった速度で増加している場合に、起こるであろう。これは、また結合イベントとしても特に定義され得る。すなわち：
イベントＢi,j＝Ａi∪Ａj＝ＳＡＤi≧０  ＳＡＤｊ≧０に対し。
【００３８】
ここに、ｋ≠ｉ，ｊに対しＳＡＤｋ＜０。
【００３９】
これは、Ａiが存在しかつＡjが真であるが、他の全てのＡkは偽である場合に、イベントＢi,jは「真」であると定義されることを意味する。イベントに関する動作を定義する概念は、ｉ，ｊ，ｋの可能な全ての組み合わせを含むものとして拡張することができる。４個のＳＡＤ装置に対して、合計１６個の組み合わせを生み出す。より大きな数のＳＡＤ装置に対しては、別の組み合わせする数を導き、ｉ，ｊ，ｋ，ｍあるいは他のより多くの変数を用いることも可能である。
【００４０】
このシナリオを言葉で表すと、各イベント「Ｂ］は、０より大きい特定の累積器の合計として定義される。これらの組み合わせのそれぞれは、可能性として定義される。４個のＳＡＤユニットに対して、合計して１６個の可能な状態の累積器がある。これらは、それらがどのように処理されるのかに従って、グループ化されることができる。
【００４１】
第１のありふれた可能性は、
【００４２】
【数３】
0004271935.tif 000004
【００４３】
これは、累積器の合計が０より多く、いずれの累積器も０を越えていないとすると、その可能性が０であることを意味する。
【００４４】
その反対は、また真である。すなわち、
Ｐ（Ｂ｜Ａ1∩Ａ2∩Ａ3∩Ａ4）＝１。
【００４５】
これは、いずれの累積器も設定されていないとして、全ての累積器の合計の可能性が１であることを意味する。
【００４６】
これらのありふれた特性を除外すると、１４のありふれない組み合わせがある。第１のグループは４つの場合を含み、ここでは累積器の１つは設定され、かつ残りの３つは設定されていない場合をいう。すなわち、
【００４７】
【数４】
0004271935.tif 000005
【００４８】
別のグループは、２つの累積器が設定され、かつ他の２つの累積器が設定されていない状態を示す。これらの組み合わせは次のように書かれる。すなわち、
【００４９】
【数５】
0004271935.tif 000006
【００５０】
最後に、次のグループは、３つの累積器が設定され、１つの累積器が設定されていない場合である。
【００５１】
【数６】
0004271935.tif 000007
【００５２】
本実施例は、これらのグループの各々が、実際にはこれらの状態の各々が、イメージにおいて異なった状態を示すことを認める。各グループまたは各状態は、異なる処理が施され得る。
【００５３】
このシステムは、上述のように、また図５のフローチャートに関連して動作する。最終目標は、計算を終了し、その結果、より早く出口（イグジット）に出ることである。まず図５に示されるように、５５０で、２つのイメージ、すなわちソース・イメージとサーチ・イメージの特性の一致性を判断する。一致特性はいかなるアーリー・イグジットなしに計算される。最小歪みは５５５で求められ、その状態は、最小歪みが存在したときに、５６０で求められる。
【００５４】
５６０の状態は、最小歪みの時間に存在したグループ形式、または１４個の可能性中の特定状態を含めることができる。
【００５５】
５７０で、後続のイメージ部分がテストされる。この後続部分は、そのテスト部分と相関されるいかなる部分であってもよい。一時的に相関されたイメージは相関されるべきと仮定されるので、これはあらゆる一時的に相関された部分へ拡張することができる。
【００５６】
イメージのソースおよびサーチがテストされ、最小歪みの時間に起こった特定のグループの判断が５７５で行われる。その後、５８０で、アーリー・イグジットが達成される。
【００５７】
アーリー・イグジットは、一度判断されると、多くの異なった方法で実行される。
【００５８】
図６Ａは、アーリー・イグジットまたは「ＥＥ］フラグを用いるアーリー・イグジットを実行するシステムを示す。Ｎ個のＳＡＤユニットが示されるが、この実施例ではＮは４である。各ＳＡＤユニットは、上記議論した構造、および特定のＡＬＵ、インバータ、および累積器を含む。
【００５９】
各累積器の出力は、組み合わせ論理ユニット６００に結合され、それはその出力を配列する。これは、上記したグループ判断を実行するために用いられる。組み合わせ論理ユニットは個別論理ゲートを用いて実行され、例として、ハードウェアの定義語で定義される。そのゲートは選択されたグループに基づくオプションでプログラムされる。異なったイメージおよび部分は異なったオプションに従って処理されてもよい。
【００６０】
各オプションに対し、状態の組み合わせ、例として、既に議論したグループがコード化される。その組み合わせ論理は、全てのＳＡＤユニットの累積器をモニターする。各状態はマルチプレクサへ出力される。
【００６１】
これらの累積器が上記ゲート中のプログラムされたオプションの１つに入る状態に達すると、アーリー・イグジット・フラグが生成される。+アーリー・イグジット・フラグは、ハードウェアが適切な「適合」を判断したことを意味する。これにより、動作は終了する。
【００６２】
図６Ｂは、代替システムを示し、累積器の状態がハードウェア状態レジスタ６１０によって検出される。この状態レジスタは、累積器の状態によって特定の状態へ設定される。状態レジスタはアーリー・イグジットを示す特定の状態を格納する。その特定の状態が示されると、アーリー・イグジットが確立する。
【００６３】
適合アーリー・イグジットが用いられる方法は、図７に関連して全体が示される。７００で、ビデオ・フレームが開始する。７０５は、フレームＭおよびフレームＭ＋１の双方をバッファすることを示す。７１０は、ブロック・ヒストリ・モデルが更新を必要とするかどうかの判断を示す。これは、前回のフレーム更新まで、例えば時間をモニターすることにより判断され得る。例えば、新しい更新が必要となる前に、時間としてｘ秒が確立される。
【００６４】
このモデルが更新を必要とするなら、その時そのプロセスは累積器に０ｘＦＦ０１をロードし、７１５で局所変数Ｎ＝１を設定する。７２０で、システムはＳＡＤサーチ領域Ｎを獲得し、イグジット・テストが実行される７２５で周期的なイグジット・テストＴｅｘｉｔ＝１／１６...を用いる。もし首尾よくいくなら、イグジット前に処理された画素数である局所変数Ｋｅｘｉｔ（Ｎ）および最新のイグジット時におけるサーチ領域に対する累積器１ないし４のサマリーであるＡｅｘｉｔ（Ｎ）が戻される。局所変数Ｎは、またステップ７３０で増加される。これは、局所パラメータを確立し、かつ、そのプロセスを継続する。
【００６５】
次のサイクルで、ブロック・ヒストリの更新は、ステップ７１０で再実行される必要はなく、その結果、制御はステップ７３５へ移る。このステップで、前に格納されたＫｅｘｉｔおよびＡｅｘｉｔが読まれる。これは、ステップ７４０で新しいカウントとして用いられ、ターゲット・ブロック・フラグを設定する。
【００６６】
ステップ７４５で、ブロックＮに対するサーチが確立され、ＡｅｘｉｔおよびＫｅｘｉｔがステップ７５０で更新される。Ｎは増加される。ステップ７５５で、Ｎが３９７に等しいかどうかの判断がなされる。３５２ｘ２８８イメージ中には３９６個の１６ｘ１６ブロックがあるので、バッファ中のフレームの数として３９７が取られる。しかしながら、これは可能な限り異なったサイズに対し調整される。
【００６７】
再び、大きいイメージ部の一時変数は不変更のまま残されそうである。したがって、部分的な累積器が特定のサイン・ビットを有する場合、それらの状態は著しい利点をもたらす。さらに、フレーム間の時間は、通常１／１５ないし１／３０秒のオーダーである。最後に、イメージ内の領域はそれらの局所的な特性を維持し、それ故空間周波数が相関される。
【００６８】
新規な実施例のみが議論されたが、他への変更も可能である。
【図面の簡単な説明】
いろいろな側面が添付の図面とともに詳細に示される。
【図１】  互いに対し比較されるソース・ブロックおよびサーチ・ブロックを示す。
【図２】  歪みを計算するための基本累積ユニットを示す。
【図３Ａ】  複数のＳＡＤユニット中における計算の異なった分割を示す。
【図３Ｂ】  複数のＳＡＤユニット中における計算の異なった分割を示す。
【図４】  アーリー・イグジット戦略計算と実際の総計算との間のトレードオフを示す。
【図５】  アーリー・イグジット戦略のフローチャートを示す。
【図６Ａ】  アーリー・イグジット・フラグを用いるアーリー・イグジットを示す。
【図６Ｂ】  ハードウェアの状態レジスタを用いるアーリー・イグジットを示す。
【図７】  適応型アーリー・イグジット戦略の動作フローチャートを示す。
【図１】
0004271935.tif 000008
【図２】
0004271935.tif 000009
【図３Ａ】
0004271935.tif 000010
【図３Ｂ】
0004271935.tif 000011
【図４】
0004271935.tif 000012
【図５】
0004271935.tif 000013
【図６Ａ】
0004271935.tif 000014
【図６Ｂ】
0004271935.tif 000015
【図７】
0004271935.tif 000016