(57)【特許請求の範囲】
【請求項１】
画像捕獲装置で捕獲された画像のローリングシャッター修正を遂行するためのコンピュータ実施方法において、
画像捕獲装置のカメラの校正データを利用して、カメラの画像センサの画像平面における画像座標を方向ベクトルへ変換する段階と、
前記校正データに基づいて予め計算されたピクセル速度成分を決定する段階と、
前記画像捕獲装置で画像シーケンスを捕獲する段階と、
画像ごとに前記予め計算されたピクセル速度成分の総計に基づいて総計ピクセル速度を推定する段階と、
を備えた方法。
【請求項２】
前記予め計算されたピクセル速度成分は、画像シーケンスを捕獲する前に予め計算されそして前記予め計算されたピクセル速度成分を決定する段階は、前記校正データからピクセル速度マップを構築することを含む、請求項１に記載の方法。
【請求項３】
画像ごとに前記予め計算されたピクセル速度成分の総計に基づいて総計ピクセル速度を推定する前記段階は、各次元の回転速度値に対応する重みで予め計算された各ピクセル速度の重み付けされた和を総計することを含み、そして動き推定装置は、ジャイロスコープ、加速度計又はその組合せを更に含む、請求項２に記載の方法。
【請求項４】
各画像を再サンプリングして新たな画像を発生しローリングシャッター修正を遂行する段階を更に備えた、請求項３に記載の方法。
【請求項５】
動き推定装置で３つの次元における動きデータを決定する段階と、
前記動きデータに基づいて回転速度値を決定する段階と、
を更に備えた請求項３に記載の方法。
【請求項６】
データ処理システムにより実行されたときにそのシステムが方法を遂行するようにさせる実行可能なコンピュータプログラムインストラクションを含むコンピュータ読み取り可能な媒体において、前記方法は、
画像センサを有するシステムの校正データを利用して、画像センサの画像平面における二次元ピクセル座標を方向ベクトルへ変換し、
前記校正データに基づいてピクセル速度成分を決定し、
前記システムで画像シーケンスを捕獲し、
前記システムの動き推定装置で捕獲画像の動きデータを決定し、
画像ごとに前記ピクセル速度成分及びそれに対応する動きデータに基づいて総計ピクセル速度を推定する、
ことを含むものである、コンピュータ読み取り可能な媒体。
【請求項７】
前記ピクセル速度成分は、画像シーケンスを捕獲する前に計算される、予め計算された速度成分を含む、請求項６に記載のコンピュータ読み取り可能な媒体。
【請求項８】
前記ピクセル速度成分の決定は、前記校正データからピクセル速度マップを構築することを含む、請求項６に記載のコンピュータ読み取り可能な媒体。
【請求項９】
画像ごとに予め計算されたピクセル速度成分の総計に基づいて総計ピクセル速度を推定することは、各次元の回転速度値に対応する重みで予め計算された各ピクセル速度の重み付けされた和を総計することを含む、請求項６に記載のコンピュータ読み取り可能な媒体。
【請求項１０】
各画像を再サンプリングして新たな画像を発生しローリングシャッター修正を遂行することを更に含む、請求項９に記載のコンピュータ読み取り可能な媒体。
【請求項１１】
新たな画像を発生するためにバイナリ補間を使用して各画像を再サンプリングすることは、現在画像及び総計ピクセル速度に基づく、請求項１０に記載のコンピュータ読み取り可能な媒体。
【請求項１２】
前記動き推定装置は、ジャイロスコープ、加速度計又はその組合せを更に含む、請求項６に記載のコンピュータ読み取り可能な媒体。
【請求項１３】
画像を感知するためのローリングシャッター画像センサと、
前記画像センサに結合されて、捕獲された画像を記憶するための記憶装置と、
動きデータを検出するための動き推定装置と、
前記記憶装置及び動き推定装置に結合された処理システムであって、画像センサの画像平面におけるピクセル位置と、座標スペースにおける対応光線との間の関係に基づく校正データを利用する自動ローリングシャッター修正メカニズムを遂行し、その校正データに基づいてピクセル速度成分を決定し、そしてそのピクセル速度成分の総計に基づく総計ピクセル速度を画像ごとに推定するように構成された処理システムと、
を備えた画像捕獲システム。
【請求項１４】
前記ピクセル速度成分は、画像を感知する前に計算される、予め計算された速度成分を含む、請求項１３に記載のシステム。
【請求項１５】
前記ピクセル速度成分の決定は、前記校正データからピクセル速度マップを構築することを含む、請求項１３に記載のシステム。
【請求項１６】
前記ピクセル速度成分の総計に基づく総計ピクセル速度を画像ごとに推定することは、各次元の回転速度値に対応する重みで予め計算された各ピクセル速度の重み付けされた和を総計することを含む、請求項１５に記載のシステム。
【請求項１７】
各画像を再サンプリングして新たな画像を発生することを含む、請求項１６に記載のシステム。
【請求項１８】
各画像を再サンプリングして新たな画像を発生することは、現在画像及び総計ピクセル速度に基づく、請求項１７に記載のシステム。
【請求項１９】
前記動き推定装置は、ジャイロスコープ、加速度計又はその組合せを更に含む、請求項１３に記載のシステム。
【請求項２０】
前記処理システムは、前記動きデータに基づき次元ごとに回転速度値を決定するように構成される、請求項１６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的に、画像安定化を使用したローリングシャッターの修正に係る。
【背景技術】
【０００２】
画像捕獲装置は、カメラ、ポータブルハンドヘルド電子装置及び他の電子装置を含む。画像捕獲装置により捕獲される画像は、画像捕獲装置の動きで危うくされる。例えば、振動、カメラを揺らすこと、又はカメラを回転することで、画像がぼける。
【０００３】
１つの従来の解決策は、異なるフレームの同様の部分を比較しそしてその比較に基づいて出力画像を調整するソフトウェアを使用している。この解決策は、典型的に、並進移動を補償するが、回転移動は補償しない。
【０００４】
ある画像捕獲装置は、ローリングシャッターと称されるものを、画像の取得方法として使用し、この場合は、各フレームが、１つの時点における全フレームのスナップショットから記録されるのではなく、一度に１本の線で、垂直又は水平のいずれかに、フレームを横切ってスキャンすることにより記録される。換言すれば、画像の全ての部分が厳密に同じ時間に記録されないが、全フレームが再生中に同時に表示される。少なくとも幾つかのＣＭＯＳ画像センサがローリングシャッターを有する。ローリングシャッターが高速移動物体の予想可能な歪を発生するか、又はセンサが急速なフラッシュ光を捕獲する。この方法は、画像エリア全体を同時に露出するのではなく、露出可能な画像エリアにわたりシャッターをローリング（移動）することにより実施される。ローリングシャッターは、そのような作用をスキュー及び揺動(wobble)として生じさせる。スキューは、異なる時間に画像の異なる部分を露出して、カメラ又は対象物が片側から他側へ移動するにつれて画像が対角線上を一方向又は別の方向に屈曲するときに生じる。揺動は、望遠設定のハンドヘルドショットでは最も一般的であり、そしてカメラが移動乗物に取り付けられたために振動する場合には最も極端である。ローリングシャッターは、画像を不自然に且つ異様に揺動させる。これは、しばしば、ジェロ(jello)作用と称される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ローリングシャッターで捕獲された画像を安定化させる従来の解決策は、後処理技術を含む。これらの技術は、典型的に、並進移動を補償するが、回転移動は補償しない。
【課題を解決するための手段】
【０００６】
画像を安定化させそしてローリングシャッター作用を修正するための多数の方法、装置及びシステムについて説明する。一実施形態では、画像捕獲装置は、カメラ及び動き推定装置を含む。画像捕獲装置は、一実施形態では、カメラ校正データを利用して、画像センサの画像平面の画像座標を、座標スペースの正規化された画像座標へとマップする。動き推定装置は、装置のための動きデータ（例えば、三次元回転データ）を決定することができる。装置は、動きデータを、装置により捕獲されたフレームのシーケンスに一致させ、各フレームに対する動きデータを決定する。装置は、動きデータに基づいて装置の推定動き経路を推定する。装置は、その推定動き経路に基づき画像捕獲装置のためのターゲット動き経路を構成する。装置は、推定動き経路及びターゲット動き経路に基づいて望ましい動き修正を計算する。次いで、装置は、カメラ校正データを利用して、各フレームを再サンプリングし、望ましい動き修正に従って安定化フレームの修正シーケンスを発生する。
【０００７】
例えば、ユーザは、装置で画像シーケンスを捕獲する。突然の動き又は微妙な動きを指示する動きデータ（例えば、ユーザからのカメラの揺れ、カメラの振動、回転、等）に基づいて動き経路が構成される。安定化されたフレームは、画像捕獲中の装置の意図しない動きを補償する。
【０００８】
別の実施形態では、画像捕獲システムは、ローリングシャッターアーティファクト（例えば、歪曲(warping)）を生じることのあるローリングシャッター画像センサを備えている。このシステムは、動きデータを検出するための動き推定装置と、自動ローリングシャッター修正メカニズムを遂行するように構成された処理システムとを備えている。修正メカニズムは、画像センサの画像平面におけるピクセル位置と、座標スペース（例えば、三次元スペース）における対応光線との間の関係に基づく校正データを使用し、その校正データに基づいてピクセル速度成分を決定し、そしてそのピクセル速度成分と、動きデータから決定された対応する回転速度値との総計に基づく総計ピクセル速度を画像ごとに推定する。修正メカニズムは、各画像を再サンプリングして、総計ピクセル速度に基づく新たに修正された画像を発生する。
【０００９】
他の実施形態についても説明する。本発明の他の特徴は、添付図面及び以下の詳細な説明から明らかとなろう。
【００１０】
特許又は出願ファイルは、少なくとも１枚のカラー図面を含む。カラー図面を伴うこの特許又は特許出願明細書のコピーは、必要な料金を支払って要求すれば、特許庁から入手できる。
【００１１】
本発明の実施形態は、同様の要素が同じ参照番号で示された添付図面に一例として示されるが、これに限定されない。この開示において本発明の「一実施形態」又は「１つの実施形態」は、必ずしも同じ実施形態ではなく、少なくとも１つを意味することに注意されたい。
【図面の簡単な説明】
【００１２】
【図１】画像捕獲装置で捕獲された画像（例えば、画像のシーケンス、ビデオ）を安定化させる本発明のコンピュータ実施方法１００の１つの実施形態を示すフローチャートである。
【図２】本発明の１つの実施形態における画像捕獲装置の動き経路の構成を示す。
【図３】本発明の１つの実施形態におけるフレームのサブセットの分解図に適用されるフレーム再サンプリングを示す。
【図４】本発明の１つの実施形態における画像４００を例示する。
【図５】画像捕獲装置で捕獲された画像（例えば、画像のシーケンス、ビデオ）をローリングシャッター修正する本発明のコンピュータ実施方法５００の１つの実施形態を示すフローチャートである。
【図６】本発明の１つの実施形態における予め計算された速度成分（例えば、Ｖx）を示す。
【図７】本発明の１つの実施形態における予め計算された速度成分（例えば、Ｖy）を示す。
【図８】本発明の１つの実施形態における予め計算された速度成分（例えば、Ｖz）を示す。
【図９】本発明の１つの実施形態におけるワイヤレス通信及び画像捕獲の能力を含むワイヤレス画像捕獲装置を示す。
【図１０】本発明のシステム１０００の１つの実施形態のブロック図である。
【図１１】本発明の１つの実施形態において各次元の回転速度値に対応する重みで予め計算された各ピクセル速度の重み付けされた和の総計を示す。
【図１２】本発明の１つの実施形態において総計ピクセル速度ベクトルＶ１２２０及び（ｔm−ｔ0）１２１０に基づく変位マップの発生を示す。
【図１３Ａ】本発明の１つの実施形態におけるローリングシャッター修正を示すための画像シーケンスを示す。
【図１３Ｂ】本発明の１つの実施形態におけるローリングシャッター修正を示すための画像シーケンスを示す。
【図１３Ｃ】本発明の１つの実施形態におけるローリングシャッター修正を示すための画像シーケンスを示す。
【図１３Ｄ】本発明の１つの実施形態におけるローリングシャッター修正を示すための画像シーケンスを示す。
【図１４】本発明の１つの実施形態における画像捕獲装置の瞬時回転を示す。
【図１５】本発明の１つの実施形態における画像捕獲装置の瞬時回転を示す。
【発明を実施するための形態】
【００１３】
画像を安定化させそしてローリングシャッターアーティファクトを修正するための多数の方法、装置及びシステムについて説明する。１つの実施形態において、画像捕獲装置は、画像センサ（例えば、カメラ）と、動き推定装置とを備えている。動き推定装置は、１つの実施形態では、装置のための動きデータを決定する。装置は、動きデータを、装置により捕獲されたフレームのシーケンスに一致させ、各フレームに対する動きデータを決定する。装置は、フレームごとに動きデータに基づき画像捕獲装置のためのターゲット動き経路を構成する。装置は、動きデータで観察される推定動き経路からターゲット動き経路への望ましい動き修正を計算する。次いで、装置は、各フレームを再サンプリングして、望ましい動き修正に基づき安定化されたフレームを発生する。
【００１４】
別の実施形態では、画像捕獲システムは、ローリングシャッターアーティファクト（例えば、歪曲）を生じることのあるローリングシャッター画像センサを備えている。このシステムは、動きデータを検出するための動き推定装置と、自動ローリングシャッター修正メカニズムを遂行するように構成された処理システムとを備えている。
【００１５】
図１は、画像捕獲装置で捕獲された画像（例えば、画像のシーケンス、ビデオ）を安定化させる本発明のコンピュータ実施方法１００の１つの実施形態を示すフローチャートである。このコンピュータ実施方法１００は、ハードウェア（回路、専用ロジック、等）、ソフトウェア（汎用コンピュータシステム又は専用マシン又はシステムで実行される）、又はその両方の組合せを含む処理ロジックにより遂行される。処理ロジックは、マイクロプロセッサ及び画像センサを有する画像感知ユニットへ情報を送信し及びそこから情報を受信する。画像感知ユニットは、メタデータ（例えば、Ｆ値、露出時間、ホワイトバランス）のフレームを処理ロジックへ送信する。画像データを発生するために画像センサからピクセル値が読み取られる。フレームは、ある時間インターバル（例えば、１／１５秒）で処理ロジックへ送信される。フレームは、以下に述べるように画像捕獲装置の回転経路を修正することにより安定化される。
【００１６】
ブロック１０２において、処理ロジック（例えば、１つ以上の処理ユニット）は、画像捕獲装置のカメラの校正データを発生する。校正データは、ブロック１０３において、カメラの画像センサの画像平面の画像座標（例えば、二次元ピクセル）を、三次元座標スペースの正規化された画像座標（例えば、光線）へマップするのに使用される。校正データの発生に対してカメラの視野及び半径方向歪が決定される。１つの実施形態において、視野は、６０．８ｘ４７．５°であり、そして半径方向歪は、ほぼκ1＝０．１及びκ4＝−０．００７である。校正は、オフラインで一回限りのプロセスである。ブロック１０４において、処理ロジック（例えば、１つ以上の処理ユニット）は、一連の画像（例えば、フレーム、ビデオ）を捕獲する。ブロック１０６において、処理ロジックは、動き推定装置を使用して装置の動きデータ（例えば、三次元回転データ）を決定する。１つの実施形態において、動き推定装置は、ジャイロスコープ又は加速度計或いはその両方の組合せである。ジャイロスコープは、三次元回転データを与え、そして加速度計は、三次元並進移動データ（６つの自由度）を与える。フレームごとに三次元動きデータを決定することは、フレームごとに３つの次元において回転速度ベクトルを決定することを含む。
【００１７】
ブロック１０８において、処理ロジックは、動きデータを、画像捕獲装置により捕獲されたフレームのシーケンスに一致させ、フレームごとに三次元動きデータを決定する。動きデータをフレームのシーケンスに一致させることは、動き推定装置のタイムスタンプをフレームのビデオ時間へ変換し、そして動き推定装置から受信した回転速度データ（例えば、回転速度ベクトル）を積分して、フレーム間回転（例えば、ΔΘ［κ］）を推定することを含む。動き推定装置のタイムスタンプとフレームのビデオ時間との間のライブバイアス(live bias)推定は、長期平均（例えば、５分）を使用して得ることができる。
【００１８】
ブロック１１０において、処理ロジックは、フレームごとの三次元動きデータに基づいて画像捕獲装置の推定動き経路（例えば、観察される動き経路）を推定する。推定動き経路は、突然の動き又は微妙な動きを指示する動きデータ（例えば、ユーザからのカメラの揺れ、振動）に対して構成される。推定動き経路は、カメラの動きに基づいて粗野であるか又はギザギザである。ブロック１１１において、処理ロジックは、画像捕獲装置のターゲット動き経路を推定動き経路に基づいて構成する。ターゲット動き経路は、推定動き経路の平滑化された（例えば、フィルタされた）バージョンである。ブロック１１２において、処理ロジックは、推定動き経路からターゲット動き経路への望ましい動き修正を計算する。ブロック１１３において、処理ロジックは、カメラの校正データを利用して、各フレームを再サンプルし、望ましい動き修正に従って安定化フレームの正しいシーケンスを発生する。ブロック１１４において、処理ロジックは、任意であるが、必要に応じて、安定化フレームの未知の領域（例えば、暗い領域）の適応切り落とし・充填(crop and fill)を遂行する。方法１００のオペレーションは、フレームの圧縮アルゴリズムの一部分であるか又は圧縮アルゴリズムからデカップルされた前処理を与える。圧縮されたビデオフレームは、あまりメモリスペースを必要としないか、又は方法１００のオペレーションに基づき低いビットレートで高い画質を与える。
【００１９】
ある実施形態では、動き推定装置は、単一又は複数の物理的パッケージにおいてジャイロスコープであるか、加速度計であるか又はその組合せである。
【００２０】
以下、画像安定化を更に詳細に説明する。
【００２１】
図２は、本発明の１つの実施形態における画像捕獲装置の動き経路の構成を示す。処理ロジックは、フレームごとに三次元動きデータに基づいて画像捕獲装置の粗野な動き経路２２０を構成する。処理ロジックは、ローパス又は予想フィルタのようなフィルタを各次元に適用することができる（粗野な動き経路２００から円滑な動き経路２２０を構成するのにおそらく短い遅延を招く）。円滑な動き経路２２０は、画像捕獲時間中の画像捕獲装置の望ましいターゲット経路を表わす。
【００２２】
図３は、本発明の１つの実施形態におけるフレームのサブセットの分解図に適用されるフレーム再サンプリングを示す。処理ロジックは、分解図３００にフレーム再サンプリングを適用することができる。フレーム再サンプリングは、円滑な動き経路２２０を使用して、フレーム３２０のサブセット３３０にピクセルを修正する。処理ロジックは、観察者の見る方向（例えば、ユーザの見る方向）を動き経路２２０と動き経路２００との間の差に基づいて人為的に回転させる。フレーム再サンプリングは、補間（例えば、バイリニア補間）を使用して、新たなフレームを構成する。
【００２３】
図４は、本発明の１つの実施形態における画像４００を例示する。中央領域４０２は、捕獲されるべき物体４１０を含む。周囲領域４０３及び４０４は、画像の暗い領域である。領域４０３及び４０４は、画像４００から切り落とされ又は除去される。これらの領域についてはピクセル値が欠落となる。これらの値は、隣接フレーム又は修復技術に基づいて充填することができる。或いは又、切り落とされる領域は、オリジナルフレーム内に制約される。
【００２４】
方法１００は、画像捕獲装置の回転運動及び振動を修正するための画像安定化を果たす。並進移動振動は、振動の約１０％を占め、修正には深い知識を必要とする。回転方向の振動は、一般的に、振動で誘起される歪の大半を占め、修正に深い知識を必要としない。短期の回転オフセットは、約１ミリラジアン以内の精度である。又、この方法１００は、中間フレーム発生及びローリングシャッター修正にも使用できる。画像センサ（例えば、ＣＭＯＳ画像センサ）からスキャン線が一度に１本読み取られそして画像捕獲期間中にカメラ自体が移動するので、ローリングシャッターアーティファクトが生じ得る。
【００２５】
図５は、画像捕獲装置で捕獲された画像（例えば、画像のシーケンス、ビデオ）をローリングシャッター修正する本発明のコンピュータ実施方法５００の１つの実施形態を示すフローチャートである。このコンピュータ実施方法５００は、ハードウェア（回路、専用ロジック、等）、ソフトウェア（汎用コンピュータシステム又は専用マシン又はシステムで実行されるような）、又はその両方の組合せを含む処理ロジックにより遂行される。この方法５００は、ある時間（例えば、１ミリ秒、２ミリ秒）だけ前の又は将来のピクセル値を決定し、ローリングシャッター作用を修正する。
【００２６】
ブロック５０１において、処理ロジック（例えば、１つ以上の処理ユニット）は、画像捕獲装置のカメラを校正し、校正データを発生する。ブロック５０２において、校正データを利用して、カメラの画像センサの画像平面の画像座標（例えば、二次元ピクセル）を三次元方向ベクトルへ変換する。校正モデルは、カメラの観察者の観点から画像平面内のピクセル位置と三次元スペース内の対応光線との間の関係を記述するパラメータ的方法である。その方向ベクトルに三次元回転を適用することができる。方向ベクトル及び三次元回転の適用により、三次元スペースにおける仮説的カメラ回転のもとでピクセルが移動する場所が決定される。校正は、オフラインの一回限りのプロセスである。
【００２７】
校正パラメータは、ここに述べる数字パラメータを含む。１つの実施形態において、可変パラメータは、等価視野のための焦点距離と、半径方向歪κを記述するための２つ以上のパラメータとを含む。ビデオフレームは、ビデオフレームの中間に中心点ｃを含む（例えば、１０２４ｘ７６８ビデオフレームの場合に、ｃ＝［５１２、３８４］）。スキューは、０である。焦点距離ｆxは、ほぼ１．１８２３＊（２ｃx）としてモデリングされ、そしてｆxは、ほぼ１．１９６６＊（２ｃx）としてモデリングされる。或いは又、ｆx＝ｆy＝１．１９＊（２ｃx）である。全ての半径方向歪項κは、κ1＝０．１及びκ4＝−０．００７を除いて、０にセットすることができる。従って、正規化されたピクセル座標（例えば、ｘベクトル）を、次の式で示すように、実際のピクセル座標（例えば、ｍベクトル）へ変換する関数Ｆが得られる。
ｍベクトル＝Ｆ（ｘベクトル）
【００２８】
Ｆの逆は、実際のピクセル座標を画像平面へと正規化する（例えば、ｘベクトル＝Ｆ-1（ｍベクトル））。
【００２９】
ブロック５０４において、処理ロジックは、動き推定装置を校正し、そしてそれを画像捕獲装置のカメラと同期させる。この同期は、動き推定装置のタイムスタンプを捕獲画像のビデオ時間へ変換することを含む。動き推定装置のタイムスタンプとフレームのビデオ時間との間のライブバイアス推定は、長期平均（例えば、５分）を使用して得ることができる。
【００３０】
ブロック５０６において、処理ロジックは、校正データから、予め計算された予想ピクセル速度成分（例えば、Ｖx、Ｖy及びＶz）を決定する。ピクセル速度成分は、校正データから２つの次元において決定される。ブロック５０８において、処理ロジック（例えば、１つ以上の処理ユニット）は、画像（例えば、ビデオ、フレーム）のシーケンスを捕獲する。ブロック５１０において、処理ロジックは、画像の捕獲中にカメラの動きデータを決定する。動きデータは、回転速度ベクトルω（例えば、ωx、ωy及びωz）を含む。ブロック５１２において、処理ロジックは、ピクセル速度成分の総計に基づいて、画像ごとに、対応する総計ピクセル速度ベクトルＶを推定する。この総計は、成分ωxＶx、ωyＶy及びωzＶzの重み付けされた和を含む。１つの実施形態では、回転速度重みωx、ωy及びωzは、スカラーであり、そしてピクセル速度成分（例えば、Ｖx、Ｖy及びＶz）は、
0005374619.tif 000002
【００３１】
0005374619.tif 000003
【００３２】
図６−８は、本発明の１つの実施形態における予め計算された速度成分（例えば、Ｖx、Ｖy及びＶz）を示す。図６のピクセルは、カメラの推定又は予想される回転移動のためにｙ軸に沿って上方に移動する（例えば、速度成分６０１）。図７のピクセルは、カメラの推定回転移動のためにｘ軸に沿って右側に移動する（例えば、速度成分７０１）。図８のピクセルは、カメラの回転移動のために時計方向に移動する（例えば、速度成分８０１）。各ピクセルの経路は、これらの速度成分に基づいて決定される。ピクセル速度フィールドＶは、回転速度ω及び成分速度マップＶx、Ｖy及びＶzから計算される。変換の構成は、次のように説明される。
ベクトルｍ  →  ベクトルｘ  →  ベクトルｘ’  →  ベクトルｍ’
【００３３】
画像センサの画像平面の、ベクトルｍで表された実際のピクセル座標は、三次元方向ベクトルｘへとマップされ又は変換される。推定三次元回転を方向ベクトルｘに適用して、ベクトルｘ’を発生する。例えば、カメラの推定又は予想される回転は、人間がカメラを保持している間の手の振動に対する人間モデルに対応する。このモデルは、ピクセルの行（１つ又は複数）を捕獲する期間中にユーザが自分の手を１つ以上の方向に若干回転するときのカメラの回転を推定又は予想することができる。１つの実施形態において、このモデルは、振動数が１００ヘルツ以下の予想される振動に対して設計されたものである。振動数が１００ヘルツより高い振動は、人間の回転移動ではおそらく生じず、これらの振動は、修正がより困難である。ベクトルｘ’は、関数Ｆでベクトルｍ’へ変換される。ベクトル成分（例えば、Ｖx、Ｖy及びＶz）は、各々、ｘ、ｙ及びｚ軸の周りでの増分的回転のもとでｍとｍ’との間の差にほぼ等しい。
【００３４】
図１１は、本発明の１つの実施形態において各次元の回転速度値に対応する重みで予め計算された各ピクセル速度の重み付けされた和の総計を示す。成分ωxＶx１１１０、ωyＶy１１２０及びωzＶz１１３０の重み付けされた和は、総計ピクセル速度ベクトルＶ１１４０を発生する。１つの実施形態において、ωx＝０．２ラジアン、ωy＝−０．２ラジアン、そしてωz＝０．８ラジアンである。
【００３５】
図１２は、本発明の１つの実施形態において総計ピクセル速度ベクトルＶ１２２０及び（ｔm−ｔ0）１２１０に基づく変位マップの発生を示す。上述したように、画像センサの行ｍが捕獲される時間は、ｔmで表され、画像捕獲の任意の時間は、ｔ0で表される。画像センサの各行は、異なる時間に読み出され、これは、図１２に水平バーで表される。画像センサの上部領域については、（ｔm−ｔ0）１２１０が負の値である。画像センサの下部領域については、（ｔm−ｔ0）１２１０が正の値である。画像センサの所与のピクセルに対する変位マップは、総計ピクセル速度ベクトルＶ１２２０及び（ｔm−ｔ0）１２１０を乗算することにより発生される。変位マップは、画像捕獲中のカメラの回転又は移動に基づく画像センサの所与のピクセルの変位を指示する。
【００３６】
図１３Ａ−１３Ｄは、本発明の１つの実施形態におけるローリングシャッター修正を示すための画像シーケンスを示す。図１３Ａは、ローリングシャッター修正を伴わない画像捕獲装置（例えば、ｉＰｈｏｎｅ４）で捕獲された停止標識１３０２を伴うオリジナルシーンを表わす基準画像１３００を示す。基準画像１３００は、半径方向歪を含む。図１３Ｂは、停止標識１３１２を伴うシミュレーション画像１３１０を示す。このシミュレーション画像１３１０は、画像捕獲装置の瞬時回転の作用のもとでローリングシャッター露出を使用して画像１３００のレンダリングをシミュレーションしたものである。
【００３７】
図１４及び１５は、本発明の１つの実施形態における画像捕獲装置の瞬時回転を示す。図１４は、垂直軸に回転（°）を示し、水平軸にｔm−ｔ0（ミリ秒）を示す。例えば、２ミリ秒の露出時間の場合に、画像捕獲装置は、約−２５°から約２５°まで回転する。図１５は、垂直軸に回転（°）を示し、水平軸に画像捕獲装置の画像センサの行数を示す。
【００３８】
図１３Ｃは、停止標識１３２２を伴う再サンプルされた画像１３２０を示す。この画像１３２０は、不完全かもしれない利用可能な情報に基づく画像１３１０の歪除去をシミュレーションするものである。この図において、修正は、信号対雑音比が１０：１（即ち、露出インターバルにわたり４０°の回転に対して約４°のエラー）の不完全な回転情報を使用して遂行される。実際に、エラーは、動き推定装置（例えば、ジャイロスコープ、加速度計）の測定からのノイズや、動きのソース（例えば、シーンの動き、並進移動、等）から生じるモデリングエラーによって引き起こされる。これらの動きソースは、正確にモデリングすることが困難である。
【００３９】
図１３Ｄは、停止標識１３３２を伴う再サンプルされた画像１３３０を示す。この画像１３３０は、利用可能な完全な情報に基づく画像１３１０の歪除去をシミュレーションするものである。この画像１３３０は、瞬時回転に関する完全な情報が与えられ且つ他の動きソース（例えば、観察者の移動又は環境における動き）がない場合に回復又は再サンプルされる画像が何に見えるかを示す。このシミュレーション画像１３３０から半径方向歪が除去されている。
【００４０】
本発明の実施形態における多くの方法は、デジタル処理システム（例えば、従来の汎用コンピュータシステム）のような画像捕獲装置で遂行することができる。１つの機能のみを遂行するように設計され又はプログラムされた特殊目的コンピュータを使用することもできる。
【００４１】
ある実施形態では、本開示の方法、システム及び装置は、電子装置、消費者向け装置、データ処理システム、デスクトップコンピュータ、ポータブルコンピュータ、ワイヤレス装置、セルラー装置、タブレット装置、ハンドヘルド装置、マルチタッチ装置、マルチタッチデータ処理システム、これら装置の組合せ、又は他の同様の装置を含む種々の装置において具現化することができる。図９及び１０は、スチール画像及びビデオを捕獲して、本開示の方法を実施することのできる幾つかのこれら装置の例を示す。方法（例えば、１００、５００）は、画像の安定化及びローリングシャッターの修正に基づき、画像を捕獲し、ビデオ、ビデオコール、等を捕獲するユーザの経験を向上させる。
【００４２】
図９は、本発明の１つの実施形態におけるワイヤレス通信及び画像捕獲の能力を含むワイヤレス画像捕獲装置を示す。ワイヤレス装置９００は、アンテナシステム９０１を備えている。又、ワイヤレス装置９００は、アンテナシステム９０１を通して音声、デジタルデータ及び／又はメディア信号を送信及び／又は受信するためにアンテナシステム９０１に結合されたデジタル及び／又はアナログ高周波（ＲＦ）トランシーバ９０２も備えている。
【００４３】
又、ワイヤレス装置９００は、デジタルＲＦトランシーバを制御すると共に、ボイス、デジタルデータ及び／又はメディア信号を管理するためのデジタル処理システム９０３も備えている。デジタル処理システム９０３は、例えば、マイクロプロセッサ又はコントローラのような汎用処理システムである。又、デジタル処理システム９０３は、ＡＳＩＣ（特定用途向け集積回路）、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）又はＤＳＰ（デジタル信号プロセッサ）のような特殊目的の処理システムでもよい。又、デジタル処理システム９０３は、ワイヤレス装置９００の他のコンポーネントとインターフェイスするための、この分野で知られた他の装置を含んでもよい。例えば、デジタル処理システム９０３は、ワイヤレス装置９００の他のコンポーネントとインターフェイスするためのアナログ／デジタル及びデジタル／アナログコンバータを含んでもよい。デジタル処理システム９０３は、メディア処理システム９０９を備え、これも、オーディオデータのファイルのようなメディアを管理するための汎用又は特殊目的の処理システムを含む。
【００４４】
又、ワイヤレス装置９００は、ワイヤレス装置９００のためのデータ及び／又はオペレーティングプログラムを記憶するためにデジタル処理システムに結合された記憶装置９０４も備えている。記憶装置９０４は、例えば、任意の形式のソリッドステート又は磁気メモリ装置である。記憶装置９０４は、マシン読み取り可能な媒体でもよいし、又はそれを含んでもよい。
【００４５】
マシン読み取り可能な媒体は、マシン（例えば、コンピュータ）で読み取り可能な形態の情報を記憶又は送信するメカニズムを含む。例えば、マシンは、マシン記憶媒体のようなマシン読み取り可能な媒体（例えば、磁気ディスク、光学ディスク、ランダムアクセスメモリ、リードオンリメモリ、フラッシュメモリ装置、位相変化メモリ）を使用してコード及びデータを記憶しそして通信する（内部で及びネットワークを経て他の装置と）。
【００４６】
又、ワイヤレス装置９００は、ユーザ入力（例えば、電話番号、名前、アドレス、メディア選択、等）を受け容れるためにデジタル処理システム９０３に結合された１つ以上の入力装置９０５も備えている。入力装置９０５は、例えば、キーパッド、タッチパッド、タッチスクリーン、ポインティング装置の１つ以上を、ディスプレイ装置又は同様の入力装置と組み合わせたものである。
【００４７】
又、ワイヤレス装置９００は、メッセージ、電話コール情報、連絡先情報、写真、映画及び／又はタイトル、或いは入力装置９０５を経て選択されたメディアの他の指示子のような情報を表示するためにデジタル処理システム９０３に結合された少なくとも１つのディスプレイ装置９０６も備えている。ディスプレイ装置９０６は、例えば、ＬＣＤディスプレイ装置である。１つの実施形態において、ディスプレイ装置９０６及び入力装置９０５は、同じ装置内に一緒に一体化されてもよい（例えば、マルチタッチ入力パネルのようなタッチスクリーンＬＣＤをＬＣＤディスプレイ装置のようなディスプレイ装置と一体化したもの）。ディスプレイ装置９０６は、ある環境のもとでディスプレイ装置９０６を照明するためのバックライト９０６Ａを含む。ワイヤレス装置９００は、複数のディスプレイを含んでもよいことが明らかであろう。
【００４８】
又、ワイヤレス装置９００は、デジタルＲＦトランシーバ９０２、デジタル処理システム９０３、記憶装置９０４、入力装置９０５、マイクロホン９０５Ａ、オーディオトランスジューサ９０８、メディア処理システム９０９、センサ９１０、ディスプレイ装置９０６、画像センサ９５９（例えば、ＣＣＤ（電荷結合デバイス）、ＣＭＯＳセンサ）を含むシステムのコンポーネントに動作電力を供給するためのバッテリ９０７も備えている。画像センサは、画像処理ユニット９６０と一体化される。ディスプレイ装置９０６は、ワイヤレス画像捕獲装置９００により捕獲又は記録された画像を表示するのに使用される液晶ディスプレイ（ＬＣＤ）を含む。ＬＣＤは、カメラのビューファインダ（例えば、レンズ９６３、画像センサ９５９及びユニット９６０の組み合わせ）として働き、そして装置９００にはビューファインダとして働くことのできる他の形式の画像ディスプレイ装置があるのも任意である。
【００４９】
又、装置９００は、画像センサ９５９に光学的に結合される画像形成レンズ９６３も備えている。処理システム９０３は、装置９００のオペレーションを制御し、これは、ＲＯＭ９５７又は処理システム９０３に、或いはＲＯＭ９５７及び処理システム９０３の両方に記憶されたソフトウェアプログラムを実行することにより行うことができる。
【００５０】
処理システム９０３は、画像処理オペレーションを制御し、そして記憶装置９０４における捕獲された画像の記憶を制御する。又、処理システム９０３は、画像データ（色補正されたものも、されないものも）を外部の汎用コンピュータ又は特殊目的コンピュータへエクスポートすることも制御する。
【００５１】
又、処理システム９０３は、ユーザのコマンドに応答する（例えば、画像センサで画像を捕獲してメモリに記憶することにより写真又はビデオを「撮影」するコマンド、或いはコントラスト向上及びカラーバランス調整のためのオプションを選択するコマンド）。
【００５２】
ＲＯＭ９５７は、本開示で述べる自動画像安定化及びローリングシャッター修正メカニズムを遂行するために処理システム９０３により実行されるソフトウェアインストラクションを記憶する。記憶装置９０４は、画像センサ９５９から受け取った捕獲／記録画像を記憶するのに使用される。カメラの別のアーキテクチャーを本発明の種々の実施形態に使用できることが明らかであろう。
【００５３】
バッテリ９０７は、例えば、再充電可能な又は再充電不能なリチウム又はニッケル金属ハイブリッドバッテリである。又、ワイヤレス装置９００は、１つ以上のスピーカを含むオーディオトランスジューサ９０８、少なくとも１つのマイクロホン９０５Ａ、及び加速度計９４６も備えている。又、装置９００は、装置９００の動きデータ又は方向を決定するための動き又は方向検出器９４０（例えば、加速度計、ジャイロスコープ、又はその組合せ）も備えている。
【００５４】
１つの実施形態において、画像捕獲装置９００は、画像及びビデオを安定化するように設計される。画像捕獲装置９００は、画像を感知するための関連校正データを伴う画像センサ９５９と、捕獲画像を記憶するための記憶装置９０４と、装置の動きデータを検出するための動き推定装置９４０と、記憶装置及び動き推定装置に結合された処理システム９０３とを備えている。処理システムは、動き推定装置を使用して画像捕獲装置のための動きデータを決定し、その動きデータを、画像捕獲装置により捕獲されたフレームのシーケンスと一致させて、フレームごとに三次元動きデータを決定し、そしてフレームごとの三次元動きデータに基づいて画像捕獲装置の推定動き経路（例えば、粗野な動き経路）を推定することにより、自動画像安定化メカニズムを遂行するように構成される。フレームごとの三次元動きデータを決定することは、フレームごとに３つの次元において回転速度ベクトルを決定することを含む。
【００５５】
処理システムは、更に、システムの推定動き経路に基づいてシステムのターゲット動き経路（例えば、円滑な動き経路）を構築するように構成するようにされる。ターゲット動き経路を構築することは、推定動き経路をフィルタリングすることを含む。処理システムは、更に、推定動き経路からターゲット動き経路への望ましい動き修正を計算するように構成される。処理システムは、更に、画像平面の画像座標を、校正データと、システムのターゲット及び推定動き経路間の差に基づいて決定された望ましい動き修正とに基づいて修正し、元の画像座標からのフレームごとの再サンプリングをその修正された画像座標に適用して、安定化されたフレームを発生し、そしてその安定化されたフレームの未知の領域を必要に応じて適応式に切り落とし・充填するように構成される。校正データと、推定及びターゲット動き経路間の差とに基づいて画像平面の画像座標を修正することは、校正データを利用して、二次元ピクセルを表わす画像座標を、光線を表わす座標スペースの正規化された画像座標へとマップし、推定及びターゲット動き経路間の差に従って全ての光線に望ましい回転を適用し、そして校正データを利用して、それらの回転された光線を画像平面へマップして戻すことを含む。
【００５６】
動きデータを画像捕獲装置により捕獲されたフレームのシーケンスに一致させてフレームごとに三次元動きデータを決定することは、動き推定装置のタイムスタンプをフレームのビデオ時間へ変換し、そして動き推定装置から受け取られた回転速度データを積分してフレーム間回転を推定することを含む。
【００５７】
別の実施形態では、画像捕獲システム（例えば、画像捕獲装置９００）は、ローリングシャッター作用（例えば、歪曲）を修正しそして画像捕獲システムの振動及び回転移動を補償するように設計される。画像捕獲システムは、画像を感知するための画像センサ９５９と、画像センサに結合された記憶装置９０４とを備えている。この記憶装置は、捕獲された画像を記憶する。動き推定装置９４０（例えば、ジャイロスコープ、加速度計）は、動きデータを検出する。処理システム９０３は、記憶装置及び動き推定装置に結合される。処理システムは、画像センサの画像平面におけるピクセル位置と三次元スペースにおける対応光線との間の関係に基づく校正データを利用して、校正データに基づくピクセル速度成分を決定し、そしてピクセル速度成分の総計に基づく総計ピクセル速度を画像ごとに推定するための自動画像センサ修正メカニズムを遂行するように構成される。
【００５８】
ピクセル速度成分（例えば、Ｖx、Ｖy及びＶz）は、画像を感知する前に計算される予め計算された予想速度成分を含む。ピクセル速度成分を決定することは、校正データからピクセル速度マップを構築することを含む。ピクセル速度成分の総計に基づき総計ピクセル速度を画像ごとに推定することは、次元ごとに回転速度値（例えば、ωx、ωy及びωz）に対応する予め計算された各ピクセル速度の重み付けされた和を総計することを含む。
【００５９】
処理システムは、更に、各画像を再サンプルして新たな画像を発生し、ローリングシャッター修正メカニズムを遂行するように構成される。各画像を再サンプルして新たな画像を発生することは、現在画像及び総計ピクセル速度に基づく。新たな画像は、画像捕獲システムのローリングシャッター作用、振動及び回転移動を補償している。
【００６０】
図１０は、本発明のシステム１０００の１つの実施形態のブロック図であり、このシステムは、一般的に、１つ以上のコンピュータ読み取り可能な媒体１００１、処理システム１００４、入力／出力（Ｉ／Ｏ）サブシステム１００６、高周波（ＲＦ）回路１００８、オーディオ回路１０１０、及び画像センサ１０５９（例えば、ＣＣＤ（電荷結合デバイス）、ＣＭＯＳセンサ）を備えている。画像センサは、画像処理ユニット１０６０と一体化される。画像センサ１０５９は、画像センサで画像を捕獲するために使用されるレンズ１０６３から光を受け取るように光学的に結合される。動き推定装置１０４０は、システム１０００のために３つの次元の動きデータを決定する。これらの成分は、１つ以上の通信バス又は信号線１００３により結合される。
【００６１】
図１０に示すアーキテクチャーは、システム１０００の例示的アーキテクチャーに過ぎず、システム１０００は、図示されたものより多数の又は少数のコンポーネントを有してもよく、或いはコンポーネントの異なる構成を有してもよいことが明らかであろう。図１０に示す種々のコンポーネントは、１つ以上の信号処理及び／又は特定用途向け集積回路を含めて、ハードウェア、ソフトウェア、ファームウェア又はその組合せで実施することができる。
【００６２】
ＲＦ回路１００８は、ワイヤレスリンク又はネットワークを経て１つ以上の他の装置へ情報を送信し及びそこから情報を受信するのに使用され、そしてこの機能を遂行するための良く知られた回路を備えている。ＲＦ回路１００８及びオーディオ回路１０１０は、周辺インターフェイス１０１６を経て処理システム１００４に結合される。インターフェイス１０１６は、周辺装置と処理システム１００４との間に通信を確立しそして維持するための種々の既知のコンポーネントを含む。オーディオ回路１０１０は、オーディオスピーカ１０５０及びマイクロホン１０５２に結合され、そしてユーザが他のユーザとリアルタイムで通信できるようにするためにインターフェイス１０１６から受信したボイス信号を処理するための既知の回路を含む。ある実施形態では、オーディオ回路１０１０は、ヘッドホンジャック（図示せず）を含む。
【００６３】
周辺インターフェイス１０１６は、システムの入力及び出力周辺装置を１つ以上の処理ユニット１０１８及びコンピュータ読み取り可能な媒体１００１へ結合する。１つ以上の処理ユニット１０１８は、コントローラ１５２０を経て１つ以上のコンピュータ読み取り可能な媒体１００１と通信する。コンピュータ読み取り可能な媒体１００１は、１つ以上の処理ユニット１０１８により使用されるコード及び／又はデータを記憶することのできる任意の装置又は媒体（例えば、記憶装置、記憶媒体）である。媒体１００１は、これに限定されないが、キャッシュ、メインメモリ及び二次メモリを含むメモリハイアラーキーを含む。メモリハイアラーキーは、ＲＡＭ（例えば、ＳＲＡＭ、ＤＲＡＭ、ＤＤＲＡＭ）、ＲＯＭ、ＦＬＡＳＨ、磁気及び／又は光学記憶装置、例えば、ディスクドライブ、磁気テープ、ＣＤ（コンパクトディスク）及びＤＶＤ（デジタルビデオディスク）の組合せを使用して実施することができる。又、媒体１００１は、コンピュータインストラクション又はデータを表わす情報保持信号を搬送するための伝送媒体も含む（信号が変調される搬送波を伴ったり伴わなかったりして）。例えば、伝送媒体は、これに限定されないが、インターネット（ワールドワイドウェブとも称される）、イントラネット、ローカルエリアネットワーク（ＬＡＮ）、ワイドローカルエリアネットワーク（ＷＬＡＮ）、記憶エリアネットワーク（ＳＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、等を含めて、通信ネットワークを含む。
【００６４】
１つ以上の処理ユニット１０１８は、システム１０００の種々の機能を遂行するために媒体１００１に記憶された種々のソフトウェアコンポーネントを実行する。ある実施形態では、ソフトウェアコンポーネントは、オペレーティングシステム１０２２、通信モジュール（又はインストラクションのセット）１０２４、タッチ処理モジュール（又はインストラクションのセット）１０２６、グラフィックモジュール（又はインストラクションのセット）１０２８、１つ以上のアプリケーション（又はインストラクションのセット）１０３０、及びモジュール（又はインストラクションのセット）１０３８及び１０３９を含む。画像安定化モジュール１０３８及びローリングシャッター修正モジュール１０３９は、各々、上述した１つ以上の機能及び本書に述べる方法（例えば、ここに述べるコンピュータ実施方法及び他の情報処理方法）を遂行するためのインストラクションのセットに対応する。これらの方法（即ち、インストラクションのセット）は、個別のソフトウェアプログラム、手順又はモジュールとして実施されなくてもよく、従って、種々の実施形態においてこれらモジュールの種々のサブセットを組み合わせてもよいし、アレンジし直してもよい。
【００６５】
ある実施形態では、媒体１００１は、上述したモジュール及びデータ構造体のサブセットを記憶する。更に、媒体１００１は、上述しなかった付加的なモジュール及びデータ構造体を記憶してもよい。
【００６６】
オペレーティングシステム１０２２は、種々の手順、インストラクションのセット、一般的なシステムタスク（例えば、メモリ管理、記憶装置制御、電力管理、等）を制御及び管理すると共に、種々のハードウェア及びソフトウェアコンポーネント間の通信を容易にするためのソフトウェアコンポーネント及び／又はドライバを備えている。
【００６７】
通信モジュール１０２４は、１つ以上の外部ポート１０３６を経て又はＲＦ回路１００８を経て他の装置と通信するのを容易にするものであり、ＲＦ回路１００８及び／又は外部ポート１０３６から受け取ったデータを取り扱うための種々のソフトウェアコンポーネントを含む。
【００６８】
グラフィックモジュール１０２８は、グラフィックオブジェクトをディスプレイ表面にレンダリングし、アニメ化しそして表示するための種々の既知のソフトウェアコンポーネントを含む。タッチＩ／Ｏ装置１０１２がタッチ感知ディスプレイ（例えば、タッチスクリーン）である実施形態では、グラフィックモジュール１０２８は、オブジェクトをタッチ感知ディスプレイにレンダリングし、表示しそしてアニメ化するためのコンポーネントを含む。
【００６９】
１つ以上のアプリケーション１０３０は、システム１０００にインストールされる任意のアプリケーションを含むことができ、これは、ブラウザ、アドレス帳、連絡先リスト、ｅ−メール、インスタントメッセージング、ワードプロセス、キーボードエミュレーション、ウィジェット、ＪＡＶＡ（登録商標）イネーブルアプリケーション、暗号化、デジタルライツ管理、音声認識、音声複写、位置決定能力（グローバルポジショニングシステム（ＧＰＳ）により与えられるような）、ミュージックプレーヤ、等、を含むが、これに限定されない。
【００７０】
タッチ処理モジュール１０２６は、タッチＩ／Ｏ装置１０１２に関連した種々のタスクを遂行するための種々のソフトウェアコンポーネントを含み、そのタスクは、Ｉ／Ｏ装置１０１２からタッチＩ／Ｏ装置コントローラ１０３２を経てタッチ入力を受け取って処理することを含むが、これに限定されない。
【００７１】
システム１０００は、図１−１０に関連してここに述べた方法／機能を遂行するための画像安定化モジュール１０３８、ローリングシャッター修正モジュール１０３９、及び画像捕獲ユニット１０６０を備えている。画像捕獲ユニット１０６０は、システム１０００と一体化され、図１０に示すように周辺インターフェイス１０１６に結合されるか、又はＩ／Ｏ装置の１つ１０１２又は１０１４と一体化される。
【００７２】
１つの実施形態において、コンピュータ読み取り可能な媒体１００１は、データ処理システム１０００により実行されたときにそのシステムが方法を遂行するようにさせる実行可能なコンピュータプログラムインストラクション（例えば、モジュール１０３８）を含む。この方法は、システムのカメラの校正データを利用して、カメラの画像センサの画像平面の画像座標を、三次元座標スペースの正規化された画像座標へマップする。この方法は、動き推定装置１０４０（例えば、ジャイロスコープ、加速度計）を使用してシステムのための動きデータを決定する。校正データを利用することは、二次元ピクセルを表わす画像座標を、光線を表わす三次元座標スペースの正規化された画像座標へマップすることを含む。フレームごとに三次元動きデータを決定することは、フレームごとに三次元における回転速度ベクトルを決定することを含む。
【００７３】
又、この方法は、動きデータを、システムによって捕獲されたフレームのシーケンスと一致させて、フレームごとに三次元動きデータを決定し、フレームごとに三次元動きデータに基づいてシステムの動き経路（例えば、粗野な動き経路）を推定し、フレームごとに動きデータに基づいてシステムのターゲット動き経路（例えば、円滑な動き経路）を構築し、そして動きデータにおいて観察される推定動き経路からターゲット動き経路への望ましい動き修正を計算する。この方法は、望ましい動き修正に基づいて画像平面の画像座標を修正し、そして修正された画像座標に基づいて安定化されたフレームを発生する。動きデータをフレームのシーケンスと一致させることは、動き推定装置のタイムスタンプをフレームのビデオ時間へ変換することを含む。ターゲット動き経路を構築することは、各次元のローパス又は予想フィルタを、推定動き経路を構築するのに使用される三次元動きデータに適用し（おそらく遅延を招く）、そして推定動き経路に基づいて必要な修正を推定することを含む。
【００７４】
又、この方法は、ユーザの見る方向を望ましい動き修正に基づいて人為的に回転し、バイリニア補間を適用して、修正された画像座標に基づき安定化されたフレームを発生し、そして未知の領域（例えば、黒いピクセル）が存在する場合には安定化されたフレームの未知の領域を充填する。
【００７５】
別の実施形態では、コンピュータ読み取り可能な媒体は、データ処理システム１０００により実行されたときにそのシステムが方法を遂行するようにさせる実行可能なコンピュータプログラムインストラクション（例えば、モジュール１０３９）を含む。この方法は、画像センサ１０６１及び動き推定装置１０４０（例えば、ジャイロスコープ、加速度計）を有するシステムのための校正データを利用し、画像センサの画像平面における二次元ピクセル位置を三次元方向ベクトルへ変換する。この方法は、校正データに基づいてピクセル速度成分を決定し、システムで画像シーケンスを捕獲し、画像捕獲中に動き推定装置で動きデータを決定し、そして３つの次元におけるピクセル速度成分及び対応動きデータの総計に基づいて総計ピクセル速度を画像ごとに推定する。この推定は、各次元の回転速度値に対応する重みで予め計算された各ピクセル速度の重み付けされた和を総計することを含む。
【００７６】
ピクセル速度成分は、画像シーケンスを捕獲する前に計算される、予め計算された速度成分を含む。ピクセル速度成分を決定することは、校正データからピクセル速度マップを構築することを含む。
【００７７】
又、この方法は、各画像を再サンプリングして新たな画像を発生することも含む。
【００７８】
各画像を再サンプリングすることは、現在画像及び総計ピクセル速度に基づく新たな画像を発生するようにバイナリ補間で行われる。
【００７９】
モジュール１０３８及び１０３９は、ハードウェア、ソフトウェア、ファームウェア又はその組合せとして実施される。モジュール１０３８及び１０３９は、媒体１００１内に常駐するように示されているが、モジュール１０３８及び１０３９の全部又は一部分がシステム１０００内の他のコンポーネント内で実施されてもよいし、システム１０００内の個別のコンポーネントとして完全に実施されてもよい。
【００８０】
Ｉ／Ｏサブシステム１００６は、種々の機能を制御し又は遂行するためにタッチＩ／Ｏ装置１０１２及び１つ以上の他のＩ／Ｏ装置１０１４に結合される。タッチＩ／Ｏ装置１０１２は、ユーザタッチ入力を処理するための種々のコンポーネント（例えば、スキャニングハードウェア）を含むタッチＩ／Ｏ装置コントローラ１０３２を経て処理システム１００４と通信する。１つ以上の他の入力コントローラ１０３４は、他のＩ／Ｏ装置１０１４との間で電気信号をやり取りする。他のＩ／Ｏ装置１０１４は、物理的なボタン、ダイヤル、スライダースイッチ、スティック、キーボード、タッチパッド、付加的なディスプレイスクリーン、又はその組合せを含む。
【００８１】
タッチスクリーンとして実施される場合には、タッチＩ／Ｏ装置１０１２は、ＧＵＩにおいてユーザにビジュアル出力を表示する。ビジュアル出力は、テキスト、グラフィック、ビデオ、及びその組合せを含む。ビジュアル出力の幾つか又は全部がユーザインターフェイスオブジェクトに対応する。タッチＩ／Ｏ装置１０１２は、ユーザからのタッチ入力を受け容れるタッチ感知面を形成する。タッチＩ／Ｏ装置１０１２及びタッチスクリーンコントローラ１９３２（並びに媒体１００１における関連モジュール及び／又はインストラクションセット）は、タッチＩ／Ｏ装置１０１２上のタッチ又は近タッチ（及びタッチの移動又は解除）を検出し及び追跡し、そしてその検出されたタッチ入力を、１つ以上のユーザインターフェイスオブジェクトのようなグラフィックオブジェクトとの相互作用へと変換する。装置１０１２がタッチスクリーンとして実施されるケースでは、ユーザは、タッチスクリーンに表示されたグラフィックオブジェクトと直接相互作用することができる。或いは又、装置１０１２がタッチスクリーン以外のタッチ装置（例えば、タッチパッド）として実施されるケースでは、ユーザは、Ｉ／Ｏ装置１０１４として実施される個別のディスプレイスクリーンに表示されるグラフィックオブジェクトと間接的に相互作用することができる。
【００８２】
タッチＩ／Ｏ装置１０１２がタッチスクリーンである実施形態では、タッチスクリーンは、ＬＣＤ（液晶ディスプレイ）技術、ＬＰＤ（発光ポリマーディスプレイ）、ＯＬＥＤ（有機ＬＥＤ）、又はＯＥＬ（有機電子ルミネセンス）を使用するが、他の実施形態では他の表示技術が使用されてもよい。
【００８３】
ユーザのタッチ入力、並びに表示されているものの状態及び／又はコンピューティングシステムの状態に基づいて、タッチＩ／Ｏ装置１０１２によりフィードバックが与えられる。このフィードバックは、光学的に（例えば、光信号又は表示画像）、機械的に（例えば、触覚フィードバック、タッチフィードバック、力フィードバック、等）、電気的に（例えば、電気的刺激）、嗅覚的に、音響的に（例えば、ビープ音、等）、等々、又はその組合せで、及び可変的又は非可変的に伝送することができる。
【００８４】
又、システム１０００は、種々のハードウェアコンポーネントに通電するための電源システム１０４４も備えると共に、電源管理システム、１つ以上の電源、充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ、並びにポータブル装置における電力の発生、管理及び分配に典型的に関連した他のコンポーネントも備えている。
【００８５】
ある実施形態では、周辺インターフェイス１０１６、１つ以上の処理ユニット１０１８及びメモリコントローラ１０２０は、処理システム１００４のような単一チップにおいて実施される。他の実施形態では、それらは、個別のチップにおいて実施される。本開示は、ここに述べるオペレーションの１つ以上を遂行するための装置に関連している。この装置は、要求される目的のために特別に構成されてもよいし、記憶されたコンピュータプログラムによって選択的にアクチベートされるか又は再構成される汎用コンピュータを備えてもよい。そのようなコンピュータプログラムは、マシン（例えば、コンピュータ）読み取り可能な記憶媒体、例えば、これに限定されないが、フロッピー（登録商標）ディスク、光学ディスク、ＣＤ−ＲＯＭ及び磁気−光学ディスクを含む任意の形式のディスク、リードオンリメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、消去可能なプログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的に消去可能なプログラマブルＲＯＭ（ＥＥＰＲＯＭ）、フラッシュメモリ、磁気又は光学カード、或いは電子的インストラクションを記憶するのに適した任意の形式の媒体に記憶され、それらは、各々、バス結合される。
【００８６】
マシン読み取り可能な媒体は、マシン（例えば、コンピュータ）で読み取り可能な形態の情報を記憶又は送信するメカニズムを含む。例えば、マシンは、マシン記憶媒体のようなマシン読み取り可能な媒体（例えば、磁気ディスク、光学ディスク、ランダムアクセスメモリ、リードオンリメモリ、フラッシュメモリ装置、位相変化メモリ）を使用してコード及びデータを記憶しそして通信する（内部で及びネットワークを経て他の装置と）。
【００８７】
以上、特定の規範的実施形態を参照して本発明を説明した。特許請求の範囲に規定された本発明の精神及び範囲から逸脱せずに種々の変更がなされ得ることが明らかであろう。従って、以上の説明及び添付図面は、単なる例示であって、これに限定されるものではない。
【符号の説明】
【００８８】
２００：粗野な動き経路
２２０：円滑な動き経路
３００：分解図
３２０：フレーム
３３０：サブセット
４００：画像
４０２：中央領域
４０３：周囲領域
９０１：アンテナシステム
９０２：デジタル及び／又はアナログＲＦトランシーバ
９０３：デジタル処理システム
９０４：記憶装置
９０５：入力装置
９０５Ａ：マイクロホン
９０６：ディスプレイ装置
９０６Ａ：バックライト
９０７：バッテリ
９０８：オーディオトランスジューサ
９０９：メディア処理システム
９１０：センサ
９４０：動き推定装置
９６３：レンズ
【図１】
0005374619.tif 000004
【図２】
0005374619.tif 000005
【図３】
0005374619.tif 000006
【図４】
0005374619.tif 000007
【図５】
0005374619.tif 000008
【図６】
0005374619.tif 000009
【図７】
0005374619.tif 000010
【図８】
0005374619.tif 000011
【図９】
0005374619.tif 000012
【図１０】
0005374619.tif 000013
【図１１】
0005374619.tif 000014
【図１２】
0005374619.tif 000015
【図１４】
0005374619.tif 000016
【図１５】
0005374619.tif 000017
【図１３Ａ】
0005374619.tif 000018
【図１３Ｂ】
0005374619.tif 000019
【図１３Ｃ】
0005374619.tif 000020
【図１３Ｄ】
0005374619.tif 000021