(57)【要約】  映像安定化システムの動きフィルタを、一連の映像フレームに適用するために、一連の映像フレームの第一映像フレームと比較した現在の映像フレーム内の動き推定が、受信される。受信した動き推定と上記動きフィルタの少なくとも一つの状態変数とに基づいて、現在の映像フレーム内の動きに対する補正値が計算される。上記計算において、上記少なくとも一つの状態変数が更新される。計算された補正値が、映像安定化システムのシステム制約条件を超えるとき、上記少なくとも一つの状態変数は、システム制約条件を超える程度に応じて調整される。そして、上記補正値は、上記動き推定及び調整された状態変数に基づいて再計算される。
2008544674.tif 000002
【特許請求の範囲】
【請求項１】
映像安定化システムの動きフィルタを一連の映像フレームに適用する方法であって、現在の映像フレームに対し、
映像フレームの前記一連の第一映像フレームと比較した、前記現在の映像フレーム内の動き推定を受信するステップと、
前記動き推定と前記動きフィルタの少なくとも一つの状態変数とに基づいて、前記現在の映像フレーム内の前記動きに対する補正値を計算するステップであって、ここで、前記少なくとも一つの状態変数が更新される、計算するステップと、
前記計算された補正値が前記映像安定化システムのシステム制約条件を超えるとき、前記システム制約条件を超える程度に応じて前記少なくとも一つの状態変数を調整し、前記動き推定と前記調整した状態変数とに基づいて、前記補正値を再計算するステップと、を含む動きフィルタ適用方法。
【請求項２】
前記システム制約条件は、前記映像安定化システムへ入力された映像フレームのサイズと、前記映像安定化システムにより出力された映像フレームのサイズとの間の差に関連している、請求項１に記載の方法。
【請求項３】
前記現在の映像フレーム内の前記動きに対する補正値の前記計算ステップは、カルマン・フィルタの使用を含み、前記少なくとも一つの状態変数は、前記カルマン・フィルタの状態変数である、請求項１に記載の方法。
【請求項４】
前記少なくとも一つの状態変数は、前記現在の映像フレーム内の対象とする動きを表す変数と、前記対象とする動きの推定速度を表す変数と、を含む請求項１に記載の方法。
【請求項５】
前記動きは、水平並進移動、垂直並進移動、及び回転のうちの少なくとも一つである請求項１に記載の方法。
【請求項６】
前記補正値は、計算されて、さらに必要に応じて、回転、並びに水平方向及び垂直方向の並進移動の順序で再計算され、ここで、前記動きの種類の少なくとも一つに対するシステム制約条件は、前記動きの種類の少なくとも他の一つに対して得られた補正値の関数として決定される請求項５に記載の方法。
【請求項７】
動きフィルタを含む映像安定化システムであって、前記動きフィルタは、
一連の映像フレームの第一映像フレームと比較した、現在の映像フレーム内の動きの推定を受信し、前記動き推定と前記動きフィルタの少なくとも一つの状態変数とに基づいて、前記現在の映像フレーム内の前記動きに対する補正値を計算するのに適応される処理部分であって、前記計算において前記少なくとも一つの状態変数が更新される処理部分と、
前記計算された補正値が前記映像安定化システムのシステム制約条件を超えるとき、前記システム制約条件を超える程度に応じて前記少なくとも一つの状態変数を調整し、前記動き推定と前記調整された状態変数とに基づいて、計算された補正値を再計算するのに適応される処理部分と、を含むシステム。
【請求項８】
前記少なくとも一つの状態変数を調整するのに適応される処理部分は、前記現在の映像フレーム内の対象とする動きを表す変数と、前記対象とする動きの推定速度を表す変数と、を調整するのに適応される請求項７に記載の映像安定化システム。
【請求項９】
前記動きは、水平並進移動、垂直並進移動、及び回転のうちの少なくとも一つであり、前記処理部分は、計算を行い、さらに必要に応じて、回転、並びに水平方向及び垂直方向の並進移動の順序で補正値を再計算するのに適応され、前記少なくとも一つの状態変数を調整するのに適応される前記処理部分は、前記動きの種類の少なくとも一つに対するシステム制約条件を、前記動き種類の他の少なくとも一つに対して得られた補正値の関数として決定するのに適応される請求項７に記載の映像安定化システム。
【請求項１０】
前記動き推定を決定するように適応される動き推定器と、前記動きフィルタによって計算又は再計算された補正値に基づきそれぞれの映像フレーム内の動きを補正するのに適応される動き補正器と、をさらに含む請求項７に記載の映像安定化システム。
【請求項１１】
動きフィルタを備えた映像安定化システムを含む映像処理チップセットであって、前記動きフィルタは、
一連の映像フレームの第一映像フレームと比較した、現在の映像フレーム内の動きの推定を受信し、前記動き推定と前記動きフィルタの少なくとも一つの状態変数とに基づいて、前記現在の映像フレーム内の前記動きに対する補正値を計算するのに適用される処理部分であって、前記計算において前記少なくとも一つの状態変数が更新される処理部分と、
前記計算された補正値が前記映像安定化システムのシステム制約条件を超えるとき、前記システム制約条件を超える程度に応じて前記少なくとも一つの状態変数を調整し、前記動き推定と前記調整された状態変数とに基づいて、計算された補正値を再計算するのに適応される処理部分と、を含む映像処理チップセット。
【請求項１２】
映像レコーディング・コンポーネントと、動きフィルタを備えた映像安定化システムと、を含むカメラ・モジュールであって、前記動きフィルタは、
一連の映像フレームの第一映像フレームと比較した、現在の映像フレーム内の動きの推定を受信し、前記動き推定と前記動きフィルタの少なくとも一つの状態変数とに基づいて、前記現在の映像フレーム内の動きに対する補正値を計算するのに適応される処理部分であって、前記計算において前記少なくとも一つの状態変数が更新される、処理部分と、
前記計算された補正値が前記映像安定化システムのシステム制約条件を超えるとき、前記システム制約条件を超える程度に応じて前記少なくとも一つの状態変数を調整し、前記動き推定と前記調整された状態変数とに基づいて、計算された補正値を再計算するのに適応される処理部分と、を含むカメラ・モジュール。
【請求項１３】
動きフィルタを備えた映像安定化システムを含む電子機器であって、前記動きフィルタは、
一連の映像フレームの第一映像フレームと比較した、現在の映像フレーム内の動きの推定を受信し、前記動き推定と前記動きフィルタの少なくとも一つの状態変数とに基づいて、前記現在の映像フレーム内の前記動きに対する補正値を計算するのに適応される処理部分であって、前記計算において前記少なくとも一つの状態変数が更新される処理部分と、
前記計算された補正値が前記映像安定化システムのシステム制約条件を超えるとき、前記システム制約条件を超える程度に応じて前記少なくとも一つの状態変数を調整し、前記動き推定と前記調整された状態変数とに基づいて、計算された補正値を再計算するのに適応される処理部分と、を含む電子機器。
【請求項１４】
前記電子機器は、少なくとも一つのチップを包含する映像処理チップセットを含み、前記映像安定化システムは、前記チップセットに組み込まれている請求項１３に記載の電子機器。
【請求項１５】
前記電子機器は、移動電子機器である請求項１３に記載の電子機器。
【請求項１６】
一連の映像フレームを取り込むための映像レコーディング・コンポーネントをさらに含む、請求項１５に記載の電子機器。
【請求項１７】
映像安定化システムの動きフィルタを一連の映像フレームに適用するためのソフトウエア・コードが格納されたソフトウエア・プログラム製品であって、前記ソフトウエア・コードは、電子機器のプロセッサにより実行されるとき、
前記一連の映像フレームの第一映像フレームと比較した、現在の映像フレーム内の動きの推定を受信するステップと、
前記動き推定と前記動きフィルタ処理の少なくとも一つの状態変数とに基づいて、前記現在の映像フレーム内の前記動きに対する補正値を計算するステップであって、ここで、前記少なくとも一つの状態変数が更新される、計算するステップと、
前記計算された補正値が前記映像安定化システムのシステム制約条件を超えるとき、前記システム制約条件を超える程度に応じて前記少なくとも一つの状態変数を調整し、前記動き推定と前記調整された状態変数とに基づいて、前記補正値を再計算するステップと、
を実現する、ソフトウエア・プログラム製品。
【請求項１８】
前記少なくとも一つの状態変数は、前記現在の映像フレーム内の対象とする動きを表す変数と、前記対象とする動きの推定速度を表す変数と、を含む請求項１７に記載のソフトウエア・プログラム製品。
【請求項１９】
ソフトウエア・プログラム製品であって、前記動きは、水平並進移動、垂直並進移動、及び回転のうちの少なくとも一つであり、前記補正値は、計算されて、さらに必要に応じて、回転、並びに水平方向及び垂直方向の並進移動の順序で再計算され、前記動きの種類の少なくとも一つに対するシステム制約条件は、前記動きの種類の他の少なくとも一つに対して得られた補正値の関数として決定される請求項１７に記載のソフトウエア・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像安定化に関し、さらに具体的には一連の映像フレームの動きフィルタ処理に関するもので、この一連の映像フレームには、各映像フレームに適用可能な補正動きの量について実用的制約条件が考慮される。
【背景技術】
【０００２】
ビデオカメラで撮影された一連の映像フレームには、パン（pan）する場合のように、望ましい動きと同時に望ましくない動きも含まれることがある。カメラ付き携帯電話のような手持ち型のビデオカメラに関しては、こういった不要な動きの振れは、通常、ビデオ撮影中の望ましくない手の震えにより生ずる。特に高いズーム比では、例えば小さなカメラ付き携帯電話を取り扱う際には、避けることのできない比較的小さな動きの振れが、撮影された映像フレームの非常に大きな変位を生ずることがある。
【０００３】
映像安定化システムを使って、映像データ内の不要な動きの振れの影響を軽減することができる。不本意な動きの影響は、高いズーム比で増大するので、映像安定化は、３倍ズームを超える能力を持つどのような機器に対しても特に重要である。映像捕捉機能の付いた消費者向け機器の開発及び小型化の現在の状況から、堅牢で効率的な映像安定化処理法の必要性が高まっている。
【０００４】
通常、映像安定化は、各映像フレームに対して動き変位を補正する特定量を適用して、隣接するフレームに対し整合させ、不本意なカメラモーションから生じた高頻度の振れ又はジッタによる影響をキャンセルすることによって達成される。
【０００５】
映像安定化システムによって適用される映像安定化操作には、上記目的のため、動き推定、動きフィルタ処理、及び動き補正が含まれる。
【０００６】
動き推定は、一連の映像の連続するフレーム間での広範囲にわたる変位を判断するために用いられる。この広範囲の変位は、元の動きと関連し、望ましい動きと望ましくない動きの両方を含む。
【０００７】
動きフィルタ処理は、元の動きの中で、対象とすべきコンポーネントと、不要なコンポーネントとを区分けする機能を担っている。通常、対象とすべきコンポーネントの動きは滑らかである。従って、元の動きにローパス・フィルタをかけることによって所望の動きの軌跡を決定することができる。図１は、連続した映像フレーム０から２５０までのフレームの垂直位置の例を示した図である。この連続した映像フレームに関して、第一カーブ１１は、元の動きを典型的な推定から得られた映像フレームの垂直位置を表しており、第二カーブ１２は、元の動きをローパス・フィルタにかけて得られた映像フレームの垂直位置を表している。
【０００８】
対象とする動きが、一旦推定されたならば、補正すべき変位を計算することができる。計算した補正量を、それぞれの映像フレームに適用して、元の動き及び対象とする動きの間の差異をキャンセルすることを確実にする必要がある。フィルタ処理手順は、リアルタイムの実施のために因果関係が必要であることに注意すべきである。すなわち、現在のフレームのためにフィルタにかけられる動きサンプルは、過去の動きデータに基づいてしか計算できない。何故なら、将来の情報は、未だ活用できないからである。図２は、映像フレーム１８４の近隣にある映像フレームの垂直位置の例を示す図である。同様に、第一のカーブ１１は、元の動きを典型的な推定から得られた映像フレームの垂直位置を表しており、第二カーブ１２は、元の動きをローパス・フィルタにかけて得られた映像フレームの垂直位置を表している。さらに、映像フレーム１８４において、補正すべき垂直変位２１が表されており、これをフレーム１８４に適用して垂直位置を補正する必要がある。
【０００９】
最終的に動き補正が行われ、動きフィルタ処理において当該映像フレームに対し決定された補正すべき変位に従って、それぞれの映像フレームの位置が変更される。この補正を処理する一つの方法は、図３に例示するように、安定化システムへの入力よりも小さなフレームサイズをシステムの出力として供給することである。図３には、カメラのセンサが取り込んだ全フレームのデータを含むより大きな入力フレーム３１と、より大きな入力フレーム３１の中央部に配置された、より小さな出力フレーム３２と、が表されている。出力フレーム３２は、補正すべき変位３４によって出力フレーム３３にシフトされている。かくして、補正は、より大きな入力フレーム３１をトリミングして、より大きな入力フレーム入力３１内の補正すべき変位３４によって決まる適切な位置に、出力フレーム３３の矩形を得るステップで構成される。
【００１０】
適切な動き推定法が、例えば、S.Ertuerk（エルチュルク）の「Digital image stabilization with sub-image phase correlation based global motion estimation（サブ画像位相相関ベースの広範囲の動き推定を用いたデジタル画像安定化）」、Consumer Electronics（消費者向けエレクトロニクス）、IEEE 49巻議事録、2003年11月4日発行、1320〜1325頁に記載されている。
【００１１】
例示的な動きフィルタ処理の手順を、数学的形式を使って以下にさらに詳細に説明する。表現を簡単にするために、隣接フレーム間での並進移動（translation）だけを考える。さらに、この動きのフィルタ処理操作は、水平方向及び垂直方向の動きに相互に独立して適用され、以下の式はそのどちらにも適用される。
【００１２】
一連の映像フレームの第一フレームに対する第ｎフレームの水平又は垂直方向の元の動きを、ｚnで表し、次の式で規定する。
ｚn＝ｓn＋ｕn、                                              （１）
上式のｓn及びｕnは、それぞれ、広範囲のフレーム位置での対象とするコンポーネント及び不要なコンポーネントを表す。一連の映像フレームの安定化のためには、各々のフレームｎに対し、−ｕnピクセルの補正すべき変位が必要となる。
【００１３】
前述のように、リアルタイムで実施するためには、現在の観測と過去の観測だけに基づいて、オンラインで元の動きをフィルタすることが重要な一面となる。これは、フィルタをかけられた現在の動きｓnが、サンプルｚn、ｚn-1、…、ｚ1だけに基づいて、正式に決定されることを意味する。
【００１４】
フィルタ処理された動きｓnの漸進的変化に対して特定のモデルを仮定することによって、前記作業を簡素化することができる。例えば、単純なモデルとして、対象とする動きｓnが一定の速度ｖnを持つと仮定する。これを次の等式で表すことができる。
ｓn＝ｓn-1＋ｖn-1、
ｖn＝ｖn-1、                                                （２）
これをマトリックス形式で表すと次のようになる。
ｘn＝Ａｘn-1                                                （３）
【００１５】
上式において、
【数１】
2008544674.tif 000003
は、時間ｎにおけるプロセスの状態であり、
【数２】
2008544674.tif 000004
は、状態遷移マトリックスである。さらに、上記に示す観測方程式（１）も、次のようにマトリックス記号で表すことができる。
ｚn＝ｃtｘn＋ｕn、                                          （４）
上式の
【数３】
2008544674.tif 000005
は、サイズ２×１の観測マトリックス（ベクトル）である。
【００１６】
より一般化した表現として、フレームの変位による状態空間表現を次のように表すことができる。
ｘn＝Ａｘn-1  ＋ｂｅn
ｚn＝ｃtｘn＋ｕn                                            （５）
上式のｅn及びｕnは、それぞれ、平均がゼロで、各々の分散が、σe2及びσu2となるガウス分布として仮定された、プロセス及び測定のノイズ項である。プロセス・マトリックスＡは、Ｋ×Ｋのサイズであり、ベクトルｃ及びｂのサイズは、Ｋ×１である。状態ｘnは、Ｋ×１のベクトルであり、これから、演算ｓn＝ｃtｘnを介して、対象とする動きｓnを導き出すことができる。
【００１７】
カルマン・フィルタ処理は、この問題に対する最適の解法であり、ここでは、上式のモデル（５）に従った状態遷移及び観測方程式が仮定される。映像フレームｎを安定化するために適用可能なカルマン・フィルタ処理手順を、次のアルゴリズムによって表すことができる。
開始（Begin）
１．  ｘn＝Ａｘn-1
２．  Ｐ＝ＡＰＡt＋σe2ｂｂt
３．  ｇ＝Ｐｃ（ｃtＰｃ＋σu2）-1                        （Ｉ）
４．  Ｐ＝Ｐ−ｇｃtＰ
５．  ｘn＝ｘn＋ｇ（ｚn−ｃtｘn）
６．  ｕn＝ｚn−ｃtｘn
終了（End）
【００１８】
上記アルゴリズムは、入力として、フレームｎに対して推定された元の動きｚnを受信し、出力として、フレームｎに適用される補正量−ｕnを提供する。さらに、前に規定されたパラメータに加えて、このアルゴリズムは、内部変数Ｐ及びｇを用いる。Ｐは、現在及び過去の観測から得られた実存状態のＫ×Ｋの共分散マトリックスであり、ｇは、カルマンゲインと呼ばれるＫ×１のベクトルである。
【００１９】
類似のカルマン・フィルタ処理は、例えば、S.Ertuerk（エルチュルク）の「Image sequence stabilization based on Kalman filtering of frame positions（フレーム位置のカルマン・フィルタ処理に基づく一連の画像の安定化）」、Electronics Letters、37巻、第20版、2001年9月27日発行、1217〜1219頁に記載されている。
【００２０】
実際上の、各映像フレームに適用できる動き変位（−ｕn）の補正量は、安定化システムの入力フレームと出力フレームとの間のサイズの差による制約を受ける。補正量が大きくなると、図４に例示するように出力フレームの一部が、入力フレーム領域の外側に配置されることになる。図４にも、同様に、入力フレーム３１、元となる出力フレーム３２、及び決定した変位ベクトル４４に従ってシフトされた出力フレーム４３が示されている。変位ベクトル４４が大きすぎて、安定化した出力フレーム４３は、未規定の領域４５を含むことになる。高いズーム比を使う場合はこのようなケースが特に多くなる。
【００２１】
こういったケースを防ぐためには、元の動きｚnに対するオフセットが、規定された補正すべき変位の最大ｄを決して超えないようにして、フィルタ処理された動き軌跡ｓnを生成することのできる動きフィルタ処理手順を実施する必要がある。補正すべき変位の最大ｄの典型的な値を、８又は１６ピクセルとすることができよう。
【００２２】
言い換えれば、上記フィルタ処理問題は、どのフレームｎに対しても次式の制約の下で、対象とする動きの成分ｓnに対するスムースな軌跡を決定するものとして公式化することができる。
｜ｕn｜≦ｄ                                                  （６）
【００２３】
また、上記で引用した文書「Digital image stabilization with sub-image phase correlation based global motion estimation」の中で、故意的な動きが含まれている一連の映像では、システムが、かなり速くフレーム・シフトの許容限界に達することが多く、このとき、画像コンテントを可視フレーム内に保つために安定化パフォーマンスが劣化することが、指摘されている。
【００２４】
各映像フレームに適用される補正の動きを、単純に制限することによって、動きの補正量に対するこのシステム制約条件を取り扱うことができる。すなわち、補正変位量が、システムの許容最大値を超えるときはいつでも、当該フレームが、規定された最大値より大きく変位しないようにする。前記に示したアルゴリズム（Ｉ）に用いられた項目及び表現法において、アルゴリズム（Ｉ）に以下のような２つの新規ラインを加えることによって、上記制約条件を達成することができる。
開始（Begin）
アルゴリズム（Ｉ）のライン１から６までの処理
７．  ｉｆ｜ｕn｜＞ｄ  ｔｈｅｎ                                （ＩＩ）
８．  ｕn＝ｓｉｇｎ（ｕn）・ｄ
終了（End）
このアルゴリズム（ＩＩ）の中の記号ｓｉｇｎ（・）は符号関数を表す。
【００２５】
確かに、この処理法は、映像安定化システムが、安定化したフレームを入力フレーム領域の外側にシフトするような補正を、一切適用しないことになる。但し、前述したように、フィルタ処理で得られた動き軌跡のスムース性が、この単純な制限によって犠牲にされ、急変する出力をもたらすことになる。
【００２６】
現在の映像安定化システムの殆どは、不要な並進移動の動きに対してだけ補正を行う。しかしながら、上記のようなシステムから提供される安定化した映像データは、多くの場合、まだ阻害要因となる回転性のジッタを含んでいる。従って、図５に例示する映像安定化システムは、好都合なことに映像フレーム内の回転性ジッタも同様に除去する。図５は、カメラ・センサが取り込んだフレーム全体のデータを含むより大きな入力フレーム３１と、より大きな入力フレーム３１の中央部に配置されたより小さな出力フレーム３２とを示している。出力フレーム３２は、補正すべき変位５４によってシフトされ、さらに回転補正によって回転され、出力フレーム５３が生成される。かくして、上記補正は、同様に、より大きな入力フレーム３１をトリミングすることを含み、この結果、補正動作によって決まる、より大きな入力フレーム３１内の適切な位置に、矩形の出力フレーム５３を得ることになる。
【００２７】
対応する補正パラメータによって映像フレームをシフトし回転して、安定化された一連の映像を得る、カルマン・フィルタ処理を使用した安定化の例が、S.Ertuerk（エルチュルク）の「Translation, rotation and scale stabilization of image sequences（画像一連の並進移動、回転及びスケールの安定化）」、Electronics Letters、39巻、第17版、2003年8月21日発行、1245〜1246頁に示されている。
【００２８】
補正動きの量に関するシステム制約は、この場合も、単に各映像フレームに適用される補正動きを一定の値を使って制限することによって取り扱うことができる。しかしながら、この場合、図６に示すように、フィルタ処理で結果として得られた、動き軌跡のスムース性が、特に第１の犠牲となる。図６は、入力フレーム３１、元となる出力フレーム３２、及び回転されシフトされた出力フレーム６３を再び示し、また変位ベクトル６４に対応する変位も示す。回転のおかげで、未規定の領域６５は、並進移動の補正だけのときよりも早く得られる。
【００２９】
なお、システムでの他の制約事項も、同様に考慮する必要があることは言うまでもない。
【発明の開示】
【課題を解決するための手段】
【００３０】
本発明の目的は、システム制約条件が関連する状況に対して、改善された映像安定化方法を提供することである。
【００３１】
映像安定化システムの動きフィルタを一連の映像フレームに適用する方法を提案する。この提案する方法は、現在の映像フレームに対し、一連の映像フレームの第一映像フレームと対比した現在の映像フレーム内の動きの推定を受信するステップを含む。この提案方法は、上記動き推定と上記動きフィルタの少なくとも一つの状態変数とに基づいて、現在の映像フレーム内の動きに対する補正値を計算し、上記少なくとも一つの状態変数が計算の中で更新されるステップをさらに含む。この提案方法は、計算された上記補正値が映像安定化システムのシステム制約条件を超えるとき、システム制約条件を超える程度に応じて少なくとも上記一つの状態変数を調整するステップと、上記動き推定と上記調整された状態変数とに基づいて補正値を再計算するステップと、をさらに含む。
【００３２】
さらに、動きフィルタを含む映像安定化システムを提案する。この動きフィルタは、処理部分を含み、当該処理部分は、一連の映像フレームの第一映像フレームと比較した、現在の映像フレーム内の動きの推定を受信し、この動き推定と動きフィルタの少なくとも一つの状態変数とに基づいて、現在の映像フレーム内の動きに対する補正値を計算するのに適用される。上記少なくとも一つの状態変数は、上記計算の中で更新される。動きフィルタは、さらなる処理部分を含み、当該処理部分は、計算された補正値が映像安定化システムのシステム制約条件を超えるとき、このシステム制約条件を超える程度に応じて、上記少なくとも一つの状態変数を調整し、上記動き推定と上記調整された状態変数とに基づいて、上記補正値を再計算するのに適用される。
【００３３】
上記処理部は、ハードウエア又はソフトウエアの中に、あるいはその両方を組み合わせて実現することができる。組み合わせる場合、例えば、ソフトウエア・コードとそのソフトウエア・コードを実行するプロセッサによって実現することができる。
【００３４】
この映像安定化システムは、少なくとも一つのチップを含む映像処理チップセット内に一体化することができる。さらに、このシステムは、映像レコーディング・コンポーネントを併せて含むカメラ・モジュールの一部にすることもできる。
【００３５】
さらに、動きフィルタを備えた映像安定化システムを含む電子機器を提案する。この動きフィルタは、すでに提案した映像安定化システムの動きフィルタと同様な処理部を含む。
【００３６】
この電子機器については、例えば携帯電話のような移動電子機器とすることができ、このような機器は、機器自体が一連の映像フレームを捕捉するための映像レコーディング・コンポーネントを含む。但し、電子機器自体が必ずしも映像レコーディング部品を含んでいなければならない訳ではない。同様に、別の機器が取り込んだ一連の映像フレームを受信し処理することができる移動電子機器又は固定電子機器とすることもできよう。
【００３７】
最後に、映像安定化システムの動きフィルタを一連の映像フレームに適用するためのソフトウエア・コードを格納したソフトウエア・プログラム製品を提案する。電子機器のプロセッサによって実行されるとき、上記ソフトウエア・コードは、上記で提示した方法を実現させる。このソフトウエア・プログラム製品を、例えば、ＣＤ−ＲＯＭのような別個の記憶機器とすることができよう。これに換えて、例えばこれを、このソフトウエア・コードを実行するようにされたプロセッサを備えた、より多機能な電子機器の中に組み込むこともできよう。
【００３８】
本発明は、現在の映像フレームの安定化補正値に対する、システム制約条件に起因する制限を、後続の映像フレームに対する安定化補正値の計算の際に考慮に入れることができれば、システム制約条件がある場合でも、一連の映像フレーム内でスムースな動き軌跡が実現できる、との考察から進展している。従って、現在のフレームに対する補正値の制限を、動きフィルタの状態変数に反映することが提案されている。これにより、後続の映像フレームに対する補正計算への上記制限の考慮が可能になる。かくして、一つの映像フレームに対し決定された動き補正量が、システムが許容する最大値を超えるとき、これに応じていつでもフィルタ状態を変更し、この後の補正値を調整してスムースな動き軌跡を維持することができる。
【００３９】
本発明の利点は、どの出力映像フレームに対しても、未規定の領域を生ずることなくスムースな安定化された動き軌跡を得られることである。
【００４０】
本発明は、不要な動きの振れの振幅を、映像安定化システムが許容する動き補正量の最大値に匹敵するような場合に特に利点がある。上記のようなケースは、例えば、一連の映像フレームが、高いズーム比及び／又は高い画像解像度を使って取り込まれた場合などに発生する。従来型のアプローチでは、動きの安定性を犠牲にしてシステム制約条件を順守するが、本発明は、この場合でも動きの安定化を可能にする。
【００４１】
なお、提案した映像安定化システムには、動きフィルタに加えて、動き推定を決定するための従来方式の動き推定プログラムと、動きフィルタが計算又は再計算した補正値に基づいて、それぞれの映像フレーム内の動きを補正する従来方式の動き補正プログラムと、を含めることができよう。
【００４２】
システム制約条件により、各映像フレームに適用できる動き補正の最大量が制限される。本発明の一つの実施形態では、システム制約条件は、映像安定化システムに入力される映像フレームのサイズと、映像安定化システムによって出力される映像フレームのサイズとの間の差に関連する。
【００４３】
本発明のさらなる実施形態において、現在の映像フレーム内の動きに対する補正値の計算ステップには、カルマン・フィルタの使用が含まれる。このとき、少なくとも一つの状態変数をカルマン・フィルタの状態変数とすることができる。かくして、システム制約条件を最適な方法で組み込むことにより、標準カルマン・フィルタ処理手順を、「制約的カルマン・フィルタ処理」に拡張させて、本発明を実施することができる。
【００４４】
本発明に従って調整される少なくとも一つの状態変数には、例えば、現在の映像フレーム内の対象とする動きを表す変数と、対象とする動きの推定速度を表す変数と、を含めることができる。制約的カルマン・フィルタ処理の場合は、上記少なくとも一つの状態変数には、例えば、カルマン・フィルタの状態ベクトルの全エレメントを含めることができる。
【００４５】
本発明は、対象としない動きのさまざまな種類を補正するのに、適用することができる。通常、少なくとも水平方向及び垂直方向の並進移動が必要であろう。しかし、前述のように、回転ジッタの補償が、重要なこともある。
【００４６】
対象としない並進移動の動きだけを考慮に入れるとき、補正すべき動きに対するシステム制約条件は、すべての映像フレームに対して同一となる。従って、制約条件を固定の最大補正値として表すことができる。水平方向及び垂直方向の並進移動は、これらが相互に独立しているので、別々に取り扱うことができる。回転ジッタも考慮に入れたとき、回転及び並進移動された出力フレームを、入力フレームの区域内に保持するのに必要なシステム制約条件の決定は、複雑になる。
【００４７】
本発明の一つの実施形態では、従って、本発明による３つのフィルタ処理手順がそれぞれの映像フレームに実施され、これらフィルタ処理手順は、並進移動の動き補正と回転の動き補正との間の幾何学的な相互依存性に従って、相互に関連付けられる。すなわち、補正値が計算され、さらに必要なとき、回転、並びに水平方向及び垂直方向の並進移動の順番に、補正値が再計算され、並進移動に対するシステム制約条件は、回転に対して得られた補正値の関数として決定される。回転の補正値は、最初に適用され、この後に適用可能な水平方向及び垂直方向の並進移動の最大補正量を変化させる。一般に、回転補正が大きくなるほど、水平及び垂直方向の補正に適用できる残量は小さくなる。
【００４８】
結果として、この場合、並進移動の動きだけを対象とする場合よりも、システム制約条件はさらに厳しくなる。この実施形態は、各フレームに対して、回転及び並進移動の動きで許容される補正量に関連するシステム制約条件が存在しても、スムースな安定化された動き軌跡を提供する利点を有する。なお、上記に換えて、並進移動に対する補正値を最初に決定することもできよう。次いで、並進移動に対する補正値の関数として、回転に対するシステム制約条件を決定することができよう。
【００４９】
以降の詳細説明を添付の図と併せて考察することにより、本発明の他の目的及び特質は明確になろう。但し、これらの図は、例示目的のためだけに描かれたものであって本発明の範囲を規定するものではなく、本発明範囲については併記の特許請求内容を参照すべきである。これらの図は、一定の縮尺比で描かれたものでなく、単に、本明細書に記載された構造及び手順の概念的な例示を意図されたものであることをさらに理解すべきである。
【発明を実施するための最良の形態】
【００５０】
図７は、本発明による映像安定化を可能にする移動機器の概略ブロック図である。一例として、この移動機器は携帯電話７０である。
【００５１】
携帯電話７０は、従来型の映像レコーダ７２を備えたカメラ・モジュール７１を含む。カメラ・モジュール７１は、実装されたさまざまなソフトウエア・プログラム・コンポーネントを実行するためのデータ・プロセッサ７３をさらに含む。実装されたソフトウエア・プログラム・コンポーネントには、映像安定化システムを実現するコンポーネント、すなわち、動き推定器コンポーネント７４、動きフィルタ・コンポーネント７５、及び動き補正器コンポーネント７６が含まれる。なお、データ・プロセッサ７３が、カメラ・モジュール７１の一部を形成している必要はない。これは、例えば、さまざまなアプリケーションのためのソフトウエア・プログラム・コンポーネントを実行することができる、携帯電話７０の汎用データ・プロセッサであってもかまわない。さらに、動き推定器コンポーネント７４、動きフィルタ・コンポーネント７５、及び動き補正器コンポーネント７６によって実現される機能を、映像処理チップセット内に実装することもできよう。携帯電話７０は、メモリ、トランスミッタ、及びディスプレイをさらに含み、これらは、図７ではブロック７７としてまとめられている。
【００５２】
携帯電話７０は、上記に加えて、図示されていない他のさまざまなエレメントを含み、これらは、従来の方法で、携帯電話７０中にデザインされ、配置することができる。また、映像レコーダ７２、動き推定器コンポーネント７４、及び動き補正器コンポーネント７６、ならびに、メモリ、トランスミッタ、及びディスプレイ７７についても、従来の方法でデザインし、配置することができる。
【００５３】
但し、動きフィルタ・コンポーネント７５は、本発明に従ってデザインされる。
【００５４】
動きフィルタ・コンポーネント７５の第一の実行可能な実施形態が、図８にさらに詳しく示されている。この実施形態において、動きフィルタ・コンポーネント７５は、制約的カルマン・フィルタ８１０を含む。制約的カルマン・フィルタ８１０は、標準カルマン・フィルタ部分８１１、状態ベクトル調整部分８１２、及び補正の再計算部分８１３を含む。
【００５５】
図８の動きフィルタ・コンポーネントの動作を、図９のフローチャートを参照しながら、以下に説明する。動きフィルタ・コンポーネント７５以外のコンポーネントによって実施される全ステップは、点線によって描かれたブロックによって示される。
【００５６】
携帯電話７０のユーザは、カメラ・モジュール７１の内蔵映像レコーダ７２を使い、従来方式で映像を取り込むことができる。携帯電話７０すなわち映像レコーダ７２での画像取り込みにおいて、対象とする動きに加えて、いくつかの対象としない動きが生ずることがある。このため、データ・プロセッサ７３は、動き推定器コンポーネント７４、動きフィルタ・コンポーネント７５、及び動き補正器コンポーネント７６を実行して、対象としない動きを除去する。
【００５７】
動き推定器コンポーネント７４は、従来の方法で、記録された映像フレーム内の元の動き、すなわち、対象とする動きに対象としない動きを加味した形で決定する（ステップ１０１）。次に、それぞれの映像フレームｎに対して推定された元の動きｚnは、動きフィルタ・コンポーネント７５に提供される。
【００５８】
制約的カルマン・フィルタ８１０の標準カルマン・フィルタ部分８１１は、受信した元の動きｚnに標準カルマン・フィルタ処理を適用し、補正値ｕnを得る（ステップ１０２）。カルマン・フィルタ処理において、Ｋ×１サイズの状態ベクトルｘnが用いられ、この状態ベクトルは、過去の映像フレームｎ−１内の推定された元の動きｚn-1をカルマン・フィルタ処理して得られた状態ベクトルｘn-1から進展させたものである。
【００５９】
次いで、制約的カルマン・フィルタ８１０の状態ベクトル調整部分８１２が、決定された補正値ｕnを補正許容値ｄと比較する（ステップ１０３）。
【００６０】
決定された補正値ｕnの絶対値が補正許容値ｄを超えないとき、決定された補正値ｕnは、ただちに動き補正器コンポーネント７６に提供され、コンポーネント７６は、決定された補正値ｕnを使って現在の映像フレーム内の元の動きを補正する（ステップ１０４）。ここまでの処理方法は、従来の動きフィルタ処理と同じようにすることができる。
【００６１】
但し、決定された補正値ｕnの絶対値が補正許容値ｄを超えるとき、処理方法が従来の動きフィルタ処理と異なる。この場合、状態ベクトルｘnの全要素は、決定された補正値ｕnの絶対値と補正許容値ｄとの間の差に関連する量によって調整される（ステップ１０５）。次に、新規の状態ベクトルｘnに基づいて補正値ｕnが再計算される（ステップ１０６）。
【００６２】
上記処理の後、補正値ｕnは動き補正器コンポーネント７６に提供され、コンポーネント７６は、再計算された補正値ｕnを使って、現在の映像フレームｎ内の元の動きｚnを補正する（ステップ１０４）。
【００６３】
後続の映像フレームｎ＋１のために推定及び提供処理を行う、元の動きｚn+1用の標準カルマン・フィルタ処理において、調整された状態ベクトルｘnは、新規の状態ベクトルｘn+1のためのベースとして使用される（ステップ１０２）。本発明の制約的カルマン・フィルタ８１０は、例えば水平方向の動きに用い、同時に並行して、垂直方向の動きにも用いることができる。
【００６４】
フレームｎを安定化するために適用される制約的カルマン・フィルタ処理は、例えば、各方向に対し以下のアルゴリズムを使って実行することができる。
開始（Begin）
１．ｘn＝Ａｘn-1
２．Ｐ＝ＡＰＡt＋σe2ｂｂt
３．ｇ＝Ｐｃ（ｃtＰｃ＋σu2）-1
４．Ｐ＝Ｐ−ｇｃtＰ
５．ｘn＝ｘn＋ｇ（ｚn−ｃtｘn）                                （ＩＩＩ）
６．ｕn＝ｚn−ｃtｘn
７．ｉｆ｜ｕn｜＞ｄ  ｔｈｅｎ
８．ｘn＝ｘn＋ｓｉｇｎ（ｕn）（｜ｕn｜−ｄ）Ｐｃ（ｃtＰｃ）-1
９．ｕn＝ｚn−ｃtｘn
終了（End）
【００６５】
上記アルゴリズム（ＩＩＩ）は、入力として、第ｎ番目のフレームと第１番目のフレームとの間で推定された広範囲の変位ｚn、及びこれに加え補正の動き振幅に対する制約ｄを受信する。このアルゴリズムは、現在のフレームｎの安定化のため適用される変位の補正量ｕnを出力する。使われているすべての変数は、アルゴリズム（Ｉ）についての説明の項で記載したのと同じ名称のものとそれぞれ対応している。
【００６６】
アルゴリズム（ＩＩＩ）は、ライン８及びライン９を除き、前に提示したアルゴリズム（Ｉ）と合致している。ライン８の新規の状態方程式は、システム制約条件を超えるような動きがある場合には、常に状態ベクトルｘnの全要素を補正する効果を有する。次いで、ライン９に従い、補正された状態ベクトルｘnを使って最終的な補正すべき変位ｕnが決定される。状態更新方程式は、課されたシステム制約条件を順守しながら、現在及び過去の観測を考慮して、新しい状態が最もありそうな状態であることを確実にする。
【００６７】
例えば、状態ベクトルｘnが、Ｋ×１＝２×１のサイズを有し、要素として、スムース化された動きｓn及び速度ｖnを含むケースでは、システム制約条件は、第一要素の状態ｓnだけに作用し、ｓnは区間［ｚn−ｄ，ｚn＋ｄ］を外れる値を取ることはできない。ライン８の状態更新方程式は、状態ベクトルｘnの第一要素ｓnだけでなく速度ｖnも変化させ、これをシステム制約条件に従いながら調整する。速度ｖnの変化は、後続のフレームの動きフィルタ処理に対してだけ影響を与える。
【００６８】
このアプローチの効果は、図１０及び１１に示されている。
【００６９】
図１０は、アルゴリズム（ＩＩＩ）のライン８で提案した、状態更新方程式の効果を、２次元状態空間で示した図であり、ｘ軸は、状態ベクトルｘnの状態ｓnを、ｙ軸は速度ｖnを表す。ｘ軸上には、元の動きｚn及び動き補正の制約範囲「ｚn−ｄ」と「ｚn＋ｄ」、が示されている。
【００７０】
標準カルマン・フィルタ処理で得られ、アルゴリズム（ＩＩＩ）のライン５に示されるフィルタ処理された動きｓnは、システム制約条件を超えていると仮定されている。関連する状態ベクトルｘnは、ポイント８１に位置している。従来のアプローチでは、補正値ｕnだけが調整され、状態ベクトルｘnはポイント８１に位置したままである。これに対し、アルゴリズム（ＩＩＩ）のライン８で得られた状態ベクトルｘnはポイント８２に位置している。全観測に与えられる実存状態の確率は、ガウス・ベル（Gaussian bell）分布となり、図１０に実線で輪郭された楕円８３によって示される。提案する方法によって得られたポイント８２の解は、線分ＡＢの中点に位置しており、ＡとＢとは、実線輪郭の楕円とｚn＋ｄにおける垂線との交点である。これが、まさに課されたシステム制約条件の下で、最大確率が得られる状態空間内でのポイントである。
【００７１】
図１１の図は、システム制約条件をｄ＝１６ピクセルと仮定し、提案したアプローチをある一連のテスト映像の垂直変位の安定化に適用したときの効果を例示したものである。この図も、同様に、一連の映像フレームに対する垂直位置を表している。第一カーブ９１は元となる動き軌跡、すなわち元の動きの軌跡を表す。第二カーブ９２は、システム制約条件に従来の調整方法を使って得られた、フィルタ処理後の軌跡を表す。最後に、第三カーブ９３は、提案する動きフィルタ処理を使って得られた、フィルタ処理後の軌跡を表す。軌跡９２と９３とは、システム制約条件が問題になる場合はいつも相互に異なっている。このような場合、従来処理の軌跡９２は、システム制約条件を満たすために、安定化パフォーマンスを低下させ、一方、本発明のフィルタ処理の軌跡９３は、同様にシステム制約条件の基準を守りながらスムースな軌跡を維持している。
【００７２】
なお、前記に示した、制約的カルマン・フィルタ処理に対するアルゴリズム（ＩＩＩ）は、アルゴリズム中の一つ以上のパラメータを調整することによって、それぞれの状況に適応させることができる。これらのパラメータのそれぞれの値については、このアルゴリズムへの追加の入力データとして供給することができる。例えば；M.K.GueLLue（グールー）、Y.Yaman（ヤマン）及びS.Ertuerk（エルチュルク）の「Image sequence  stabilization using fuzzy adaptive Kalman filtering（ファジー適応カルマン・フィルタ処理を使った画像一連の安定化）」、Electronics Letters、39巻、第5版、2003年3月6日発行、429〜431頁に、プロセス・ノイズ変動をカメラの動き特性に適合させて、高周波のジッタはもとより低周波に対する良好な安定化パフォーマンスを実現する方法が提案されている。
【００７３】
プロセス及び観測ノイズ変動のような、カルマン・フィルタのパラメータを変更して、平均して推定された元の動きにより近い又はより離れたフィルタ処理された動き軌跡を生成し、これにより、それぞれ、より小さな又はより大きな補正すべき変位を求めることが可能である。通常、補正すべき変位の平均値を大きくするほど、安定化された動き軌跡がスムースになるが、システム制約条件を越えるリスクもまた高くなる。従来のアプローチでは、フィルタ処理過程でシステム制約条件をオーバーしないという保証はない。オーバーが発生し、システムが動きフィルタ処理によって決定された補正値を単に切り詰めている限り、結果は粗末なものとなる。これに対し、提示する実施形態においてはまさにこういった状況が克服される。かくして、システム制約条件をオーバーした場合は、常にフィルタ状態を変更し、許容される制約内でよりスムースな軌道となるように動き軌跡を再位置付けする。
【００７４】
図１２に、図７の携帯電話７０の動きフィルタ・コンポーネント７５の可能な第二の実施形態がさらに詳しく示されている。
【００７５】
本発明の第二実施形態において、動きフィルタ・コンポーネント７５は、回転補償のための第一制約的カルマン・フィルタ９１０、並進移動制約決定部分９２０、水平並進異動補償のための第二制約的カルマン・フィルタ９３０、及び垂直並進異動補償のための第三制約的カルマン・フィルタ９４０を含む。制約的カルマン・フィルタ９１０、９３０、９４０の各々は、基本的には、図８の制約的カルマン・フィルタ８１０と同じように実現し作動させることができる。
【００７６】
図１２の動きフィルタ・コンポーネント７５の動作を、図１３のフローチャート、図１４、及び図１５を参照しながら、以下に説明する。動きフィルタ・コンポーネント７５以外のコンポーネントによって実施されるすべてのステップは、点線によって描かれたブロックによって示される。
【００７７】
携帯電話７０のユーザは、カメラ・モジュール７１の内蔵映像レコーダ７２を使い、従来の方式で映像を取り込むことができる。携帯電話７０すなわち映像レコーダ７２の取り込みにおいて、対象とする動きに加えて、何らかの対象としない動きが発生ずることがある。このため、データ・プロセッサ７３は、動き推定器コンポーネント７４、動きフィルタ・コンポーネント７５、及び動き補正器コンポーネント７６を使用して、対象としない動きの除去処理をする。但し、このとき、並進移動の補正だけでなく、回転補正も同様に適用される。
【００７８】
動き推定器コンポーネント７４は、記録された映像フレーム内の元の動き、すなわち対象としない動きを加味して、対象とする動きを決定するが、これは従来の方法である（ステップ２０１）。次いで、回転、水平並進移動及び垂直並進移動を含む、それぞれの映像フレームｎに対して推定された元の動きが、動きフィルタ・コンポーネント７５に提供される。
【００７９】
制約的カルマン・フィルタ部分９１０は、図９を参照して説明したような制約的カルマン・フィルタ処理を適用する（ステップ２０２）。ここでは、推定されたの元の回転が、入力ｚnとして使われる。出力ｕnは回転補正値
【数４】
2008544674.tif 000006
である。図９の制約的カルマン・フィルタ処理におけるシステム制約条件ｄは、あらかじめ定められた最大回転θ∈［−Θ、Θ］で与えられ、これを回転補正に適用することができる。例として、図１４に、入力フレーム３０１及び出力フレーム３０２を示す。さらに、この図は、回転された入力フレーム３０３で区画される可視領域内部に出力フレーム３０２を維持しながら、入力フレーム３０１に適用可能とされる最大回転Θを示している。最大回転角Θは、全フレームに対して同一である。この最大回転角は、入力フレーム３０１と出力フレーム３０２との間のサイズの差だけに依存し、従って、各安定化システム毎に前もって定められる。
【００８０】
回転の制約は一定であり、並進移動の補正と無関係であるが、図１５に示すように、並進移動は決定された回転補正に依存する。図１５は、同様に入力フレーム３０１と出力フレーム３０２とを示している。さらに同図は、決定された回転補正θによって回転された入力フレーム３０４を示している。図から分かるように、出力フレームを回転された入力フレームから外れて移動させることなく、まだ適用可能な範囲の最大水平並進移動は、Ｘ（θ）＝ｍｉｎ｛Ｘ1（θ），Ｘ2（θ）｝であり、出力フレームを回転された入力フレームから外れて移動させることなく、さらに適用可能な最大垂直並進移動は、Ｙ（θ）＝ｍｉｎ｛Ｙ1（θ），Ｙ2（θ）｝である。
【００８１】
こうして、並進移動制約決定部分９２０は、決定された回転補正θの関数として最大許容並進移動制約を計算し（ステップ２０３）、この結果を、第二及び第三制約的カルマン・フィルタ９３０、９４０に提供する。
【００８２】
第二制約的カルマン・フィルタ部分９３０は、図９を参照して説明したのと同様な制約的カルマン・フィルタ処理を実施する（ステップ２０４）。ここでは、推定された水平方向の元の動きが、入力ｚnとして用いられる。図９の制約的カルマン・フィルタ処理におけるシステム制約条件ｄは、まだ適用可能な、決定された最大水平並進移動Ｘ（θ）によって与えられる。出力ｕnは水平並進移動の補正値である。
【００８３】
また、第三制約的カルマン・フィルタ部分９４０も、図９を参照して説明したのと同様な制約的カルマン・フィルタ処理を実施する（ステップ２０５）。ここでは、推定された垂直元の動きが入力ｚnとして用いられる。図９の制約的カルマン・フィルタ処理におけるシステム制約条件ｄは、まだ適用可能な、決定された最大垂直並進移動Ｙ（θ）によって与えられる。出力ｕnは垂直並進移動の補正値である。
【００８４】
決定された回転補正値θ、決定された水平並進移動の補正値、及び決定された垂直並進移動の補正値は、動き補正器コンポーネント７６に提供され、コンポーネント７６は、決定された補正値の各々を使って、現在の映像フレーム内の元の動きを補正する（ステップ２０６）。
【００８５】
図１３に従い、推定された元の動きに適用される一連の制約的カルマン・フィルタ処理手順は、例えば、次のアルゴリズムを使って実行することができる。
【００８６】
【数５】
2008544674.tif 000007
【００８７】
このアルゴリズム［ＩＶ］中のＣＫＦ１、ＣＫＦ２及びＣＫＦ３は、前述の制約的カルマン・フィルタ処理・アルゴリズム（ＩＩＩ）で示したのと同様な、それぞれの制約的カルマン・フィルタ処理・アルゴリズムを表す。アルゴリズム［ＩＶ］は、入力として、一連の映像の第ｎ映像フレームと第一映像フレームとの間の広範囲の変位を推定する３つの動きパラメータを受信する。すなわち、この３つの動きパラメータとは、推定された水平軸沿いの元の並進移動
【数６】
2008544674.tif 000008
と、推定された垂直軸沿いの元の並進移動
【数７】
2008544674.tif 000009
と、推定されたカメラの光軸周りの元の回転
【数８】
2008544674.tif 000010
とである。さらに、このアルゴリズムは、入力として、安定化システムの入力フレームサイズと出力フレームサイズとを考慮して許容可能な最大回転補正Θを受信する。
【００８８】
アルゴリズム［ＩＶ］は、回転及び並進移動の補正値を出力する。すなわち、水平軸
【数９】
2008544674.tif 000011
沿いの並進移動の補正値、垂直軸
【数１０】
2008544674.tif 000012
沿いの並進移動の補正値、及び画像中心
【数１１】
2008544674.tif 000013
周りの回転補正値である。
【００８９】
好適な実施形態に適用して、本発明の新規な基本的機能を図示し、説明し、指摘してきたが、当業者が、本発明の精神から逸脱することなく、説明してきた機器及び方法の形態及び細部にさまざまな省略、代替及び変更を加えることができると理解される。例えば、同一の結果を実現するために、実質的に同様な方法で実質的に同様な機能を実行する、エレメント及び／又は方法ステップのすべての組み合わせは、本発明の範囲内であることを明確に意味している。さらに、本発明に開示された一切の態様又は実施形態に関連して図示及び／又は説明された構造及び／又はエレメント及び／又は方法ステップは、デザイン選択の一般的事項として、他の任意の開示又は説明又は提案された態様又は実施形態への組み込が可能なことを認識すべきである。従って、本発明は、併記の特許請求の範囲に示された内容によってのみ限定されるよう意図されている。
【図面の簡単な説明】
【００９０】
【図１】一連の映像フレーム内の、フィルタ未処理の元の動き及びフィルタ処理後の動きを表す図である。
【図２】選択した映像フレームに対して、垂直方向に補正する変位を表す図である。
【図３】補正する変位による映像フレームの安定化を示す図である。
【図４】過大な変位補正を適用した映像フレームの安定化を示す図である。
【図５】並進移動の補正及び回転補正による映像フレームの安定化を示す図である。
【図６】並進移動及び回転の過大な補正による映像フレームの安定化を示す図である。
【図７】本発明の実施形態による移動機器の概略ブロック図である。
【図８】図７の機器内の動きフィルタの第一実施形態の概略ブロック図である。
【図９】図８の動きフィルタの動作を示すフローチャートである。
【図１０】図８の動きフィルタによって決定された並進移動の補正を示す図である。
【図１１】フィルタ未処理の元の動き、従来方式のフィルタ処理された動き、及び図８の動きフィルタで得られたフィルタ処理後の動きを表す図である。
【図１２】図７の機器内の動きフィルタの第二実施形態の概略ブロック図である。
【図１３】図１２の動きフィルタの動作を示すフローチャートである。
【図１４】図１２の動きフィルタによる回転補正に対するシステム制約条件を示す図である。
【図１５】回転補正を適用した後の、並進移動の補正のためのシステム制約条件を示す図である。
【図１】
2008544674.tif 000014
【図２】
2008544674.tif 000015
【図３】
2008544674.tif 000016
【図４】
2008544674.tif 000017
【図５】
2008544674.tif 000018
【図６】
2008544674.tif 000019
【図７】
2008544674.tif 000020
【図８】
2008544674.tif 000021
【図９】
2008544674.tif 000022
【図１０】
2008544674.tif 000023
【図１１】
2008544674.tif 000024
【図１２】
2008544674.tif 000025
【図１３】
2008544674.tif 000026
【図１４】
2008544674.tif 000027
【図１５】
2008544674.tif 000028
【国際調査報告】
2008544674.tif 000029
2008544674.tif 000030