(57)【要約】  安定化及び標的再設定のためにビデオを処理する方法及びシステムを説明する。記録した映像は、ビデオに入り込んだ揺れを除くことにより安定化させることができ、ビデオは、異なるアスペクトレシオに適合するようにビデオを適応させるために修正することにより、標的再設定することができる。修正したビデオが元のビデオからのピクセルを含むようにするために、及び／又は、突出した領域を保持するようにするために制約条件を適用することができる。１つの実施例によれば、ビデオを記録したカメラの元の経路を推定するために、新しいカメラ経路を推定するために、そして、元の経路から新しいカメラ経路にビデオを作り直すために、ビデオを処理することができる。新しいカメラ経路を推定するために、仮想的な切り取りウィンドウを指定する。元のカメラ経路と新しいカメラ経路との間での差分変換を、切り取りウィンドウを用いてビデオに適用し、滑らかなカメラ経路から記録した映像に作り直す。【選択図】図２
2013544050.tif 000002
【特許請求の範囲】
【請求項１】
ビデオを記録したカメラの元のモーション経路を推定するステップと、
各時間ｔにおける、前記カメラの前記元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を決定するステップと、
各時間ｔにおける、前記カメラの前記元のモーション経路の前記実質的に一定の経路、又は、前記実質的に一定の速度、又は、前記実質的に一定の加速度を含む、前記カメラの前記元のモーション経路の修正したモーションカメラ経路を決定するステップと、
前記修正したモーションカメラ経路と、前記カメラの前記元のモーション経路とに基づいて、前記カメラの前記元のモーション経路をどのように前記修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定するステップであって、該切り取りウィンドウ変換は、前記カメラの前記元のモーション経路に与える変化を制限する少なくとも１つの制約条件により決定されることを特徴とするステップと、
前記カメラの前記元のモーション経路の視点から前記修正したモーションカメラ経路の視点へ作り直すために、前記ビデオに前記切り取りウィンドウ変換を適用するステップと、
を具備するビデオを処理する方法。
【請求項２】
前記切り取りウィンドウ変換を決定するステップは、前記ビデオのビデオフレームに対して１以下の所定の縮尺の切り取りウィンドウを決定するステップであって、該切り取りウィンドウは、前記元のフレーム内に収まるよう定義されることを特徴とするステップを具備することを特徴とする請求項１に記載の方法。
【請求項３】
前記修正したモーションカメラ経路を決定するステップは、式
2013544050.tif 000042
ここで、ｐは前記修正したモーションカメラ経路、ａ，ｂ，及びｃ は前記切り取りウィンドウがすべての時間ｔに対する前記ビデオのビデオフレーム内の収まるように定めた線形の重み付けである、
を最小化するステップを具備することを特徴とする請求項２に記載の方法。
【請求項４】
前記式
2013544050.tif 000043
を最小化するステップは、Ｌ１最小化を行うことを特徴とする請求項３に記載の方法。
【請求項５】
線形の重み付けｃは、重み付けａ及びｂの最大値より桁の大きなマグニチュードになるよう選ばれることを特徴とする請求項３に記載の方法。
【請求項６】
前記カメラの前記元のモーション経路を決定するステップは、
前記ビデオのフレームの特徴点を抽出するステップと、
前記ビデオの前記フレーム同士で所定の特徴を一致させるステップと、
前記ビデオの前記フレーム同士で一致した前記特徴のモーションを推定するための線形モーションモデルを決定するステップと、
前記カメラの前記元のモーション経路の推定を行うために前記線形モーションモデルを結合するステップと、
を具備することを特徴とする請求項１に記載の方法。
【請求項７】
前記カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用するステップは、前記ビデオフレームに対して、内容を切り取るステップを具備することを特徴とする請求項１に記載の方法。
【請求項８】
前記少なくとも１つの制約条件には、前記元のモーション経路の前記ビデオのビデオフレーム中に前記変換したビデオのビデオフレームの一部を含めることを要求する包含による制約条件が含まれることを特徴とする請求項７に記載の方法。
【請求項９】
前記少なくとも１つの制約条件には、前記ビデオ中に実質的にズーミングを保持することを前記修正したモーションカメラ経路に要求する近似による制約条件が含まれることを特徴とする請求項７に記載の方法。
【請求項１０】
前記少なくとも１つの制約条件には、前記ビデオのビデオフレーム中の選択したポイントが前記修正したモーションカメラ経路に残ることを要求する突出による制約条件が含まれることを特徴とする請求項７に記載の方法。
【請求項１１】
前記少なくとも１つの制約条件には、前記ビデオのビデオフレーム中のポイントが前記修正したモーションカメラ経路のビデオフレーム中のあらかじめ定めた領域の外に出さないよう制限することが含まれることを特徴とする請求項７に記載の方法。
【請求項１２】
前記少なくとも１つの制約条件には、前記ビデオのビデオフレーム中のポイントが切り取りウィンドウ内に入ることを要求することが含まれることを特徴とする請求項７に記載の方法。
【請求項１３】
前記少なくとも１つの制約条件には、前記切り取りウィンドウが前記ビデオの前記ビデオフレームの内側に残留することを要求することが含まれることを特徴とする請求項１２に記載の方法。
【請求項１４】
前記少なくとも１つの制約条件には、関心のある領域を囲むポリゴンの各頂点が切り取ったウィンドウ内にあることを要求することが含まれることを特徴とする請求項１２に記載の方法。
【請求項１５】
前記少なくとも１つの制約条件は、フレーム毎に指示することを特徴とする請求項７に記載の方法。
【請求項１６】
前記切り取りウィンドウは、Ｂ（ｔ）であり、ここで、
2013544050.tif 000044
そして、Ｃ（ｔ）は前記元のモーション経路であり、Ｐ（ｔ）は前記修正したモーションカメラ経路であることを特徴とする請求項１に記載の方法。
【請求項１７】
カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用するステップは、前記ビデオを安定化するステップを具備することを特徴とする請求項１に記載の方法。
【請求項１８】
カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用するステップは、前記ビデオとは異なる解像度のアスペクトレシオの装置に合うよう標的再設定するステップを具備することを特徴とする請求項１に記載の方法。
【請求項１９】
コンピュータ装置に、
ビデオを記録したカメラの元のモーション経路を推定する機能と、
各時間ｔにおける、前記カメラの前記元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を決定する機能と、
各時間ｔにおける、前記カメラの前記元のモーション経路の前記実質的に一定の経路、又は、前記実質的に一定の速度、又は、前記実質的に一定の加速度を含む、前記カメラの前記元のモーション経路の修正したモーションカメラ経路を決定する機能と、
前記修正したモーションカメラ経路と、前記カメラの前記元のモーション経路とに基づいて、前記カメラの前記元のモーション経路をどのように前記修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定する機能であって、該切り取りウィンドウ変換は、前記カメラの前記元のモーション経路に与える変化を制限する少なくとも１つの制約条件により決定されることを特徴とする機能と、
前記カメラの前記元のモーション経路の視点から前記修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能と、
を実行させることを特徴とする前記コンピュータ装置で実行可能な命令、を記録した持続性の（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ） コンピュータ読み取り可能媒体。
【請求項２０】
前記カメラの前記元のモーション経路を決定する機能は、
前記ビデオのフレームの特徴点を抽出する機能と、
前記ビデオの前記フレーム同士で所定の特徴を一致させる機能と、
前記ビデオの前記フレーム同士で一致した前記特徴のモーションを推定するための線形モーションモデルを決定する機能と、
前記カメラの前記元のモーション経路の推定を行うために前記線形モーションモデルを結合する機能と、
を具備することを特徴とする請求項１９に記載の持続性のコンピュータ読み取り可能媒体。
【請求項２０】
前記カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能は、前記ビデオフレームに対して、内容を切り取る機能を具備し、前記少なくとも１つの制約条件には、前記元のモーション経路の前記ビデオのビデオフレーム中に前記変換したビデオのビデオフレームの一部を含めることを要求する包含による制約条件が含まれることを特徴とする請求項１９に記載の持続性のコンピュータ読み取り可能媒体。
【請求項２１】
カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能は、前記ビデオを安定化する機能を具備することを特徴とする請求項１９に記載の持続性のコンピュータ読み取り可能媒体。
【請求項２２】
カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能は、前記ビデオとは異なる解像度のアスペクトレシオの装置に合うよう標的再設定する機能を具備することを特徴とする請求項１９に記載の持続性のコンピュータ読み取り可能媒体。
【請求項２３】
ビデオを受け取り、該ビデオ内の物体のモーションに基づき、該ビデオを記録したカメラの元のモーション経路を推定するよう構成されたカメラ経路推定エンジンと、
前記カメラの前記元のモーション経路をどのように前記修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定し、該切り取りウィンドウ変換は、前記カメラの前記元のモーション経路に与える変化を制限する少なくとも１つの制約条件により決定されるよう構成されたビデオ安定化及び標的再設定エンジンと、
前記カメラの前記モーション経路の視点から前記修正したモーションカメラ経路の視点へ作り直すために前記ビデオに前記切り取りウィンドウ変換を適用するよう構成されたビデオ変換エンジンと、
を具備することを特徴とするカメラ経路変換システム。
【請求項２４】
前記ビデオ安定化及び標的再設定エンジンは、
各時間ｔにおける、前記カメラの前記元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を決定し、各時間ｔにおける、前記カメラの前記元のモーション経路の前記実質的に一定の経路、又は、前記実質的に一定の速度、又は、前記実質的に一定の加速度を含む、前記カメラの前記元のモーション経路の修正したモーションカメラ経路を決定するよう構成されていることを特徴とする請求項２３に記載のカメラ経路変換システム。
【請求項２５】
前記カメラ経路推定エンジンと、前記ビデオ安定化及び標的再設定エンジンと、前記ビデオ変換エンジンを具備するビデオホスティングサーバーをさらに具備することを特徴とする請求項２３に記載のカメラ経路変換システム。
【請求項２６】
前記ビデオホスティングサーバーは、前記ビデオを受け取り、該ビデオを安定化させるために、前記カメラの前記元のモーション経路の視点から前記修正したモーションカメラ経路の視点へ作り直し、そして、該安定化させたビデオをビデオホスティングウェブサイトにアップロードさせるよう構成されていることを特徴とする請求項２５に記載のカメラ経路変換システム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
【０００２】
この出願は、２０１０年１０月２８日に出願された米国仮特許出願番号６１/４０７，６３０と、２０１１年２月８日に出願された米国特許出願番号１３/０２３，２９９に基づく優先権を主張する。これらの各内容は、本出願にすべて記載されているものとみなして、本出願にすべてを組み込むものとする。
【背景技術】
【０００３】
画像安定化には、露出時におけるカメラの動きと結び付いたぼけを減少させるための多くの技術が含まれる。画像安定化技術により、カメラ又は他の撮像装置のパンとチルト（角度の変更動作）を補正することができる。静止カメラにおいて、シャッタースピードが遅い場合、又は焦点距離が長い（ｔｅｌｅｐｈｏｔｏ）レンズの場合、カメラの揺れが問題になり、静止像を改善するために画像安定化技術静止像を用いることができる。
【０００４】
同様に、ビデオ安定化技術を記録した映像の改善に用いることもできる。ビデオカメラを使ったとき、カメラの揺れが、記録した映像中のフレーム間での可視ジッターを引き起こすことがある。例えば、ハンドヘルドカメラ又はハンドヘルドビデオレコーディングカメラは、カメラを操作する人がカメラを手で持つ撮影技術やビデオ技術であり、ハンドヘルドでの記録した映像は、記録時にカメラを手で持つ人の動きにより、三脚（又は、カメラ台車又はステディカムのような他の固定器具）を用いたカメラで記録された映像より、はっきり分かるぶれが多い。しかしながら、ハンドヘルドビデオレコーディングを用いてビデオレコーディングするほうが、撮影の機会を増やすことができる。
【０００５】
ビデオ安定化技術を、気軽に撮ったビデオ（例えば、小さな固定器具を付けた装置又は固定器具を付けていない装置で記録された映像）の安定化したものを作るために用いることもできる。ビデオ安定化技術は、一般的に、ビデオをスムーズで、又は安定したカメラ経路で記録したかのように、記録した映像を作り出すように試みるものである。
【発明の概要】
【０００６】
本出願は、安定化と標的再設定のためのビデオを処理する方法及びシステムの実施の形態を開示する。１つの形態において、ビデオを処理する方法を記載する。この方法は、ビデオを記録したカメラの元のモーション経路を推定するステップを具備することができる。この方法はまた、各時間ｔにおける、カメラの元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を決定するステップを具備することができる。この方法はまた、各時間ｔにおける、カメラの元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を含む、カメラの元のモーション経路の修正したモーションカメラ経路を決定するステップを具備することができる。この方法はさらに、修正したモーションカメラ経路と、カメラの元のモーション経路とに基づいて、カメラの元のモーション経路をどのように修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定するステップを具備することができ、この切り取りウィンドウ変換は、カメラの元のモーション経路に与える変化を制限する少なくとも１つの制約条件により決定することができる。この方法はさらに、カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用するステップを具備することができる。
【０００７】
別の形態において、コンピュータ装置に機能を発揮させるためのコンピュータ装置により実行可能な命令を記録した持続性の（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）コンピュータ読み取り可能媒体について記載されている。この機能は、ビデオを記録したカメラの元のモーション経路を推定する機能を具備することができる。この機能はさらに、各時間ｔにおける、カメラの元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を決定する機能を具備することができる。この機能はまた、各時間ｔにおける、カメラの元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を含む、カメラの元のモーション経路の修正したモーションカメラ経路を決定する機能を具備することができる。この機能はさらに、修正したモーションカメラ経路と、カメラの元のモーション経路とに基づいて、カメラの元のモーション経路をどのように修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定する機能を具備することができ、この切り取りウィンドウ変換は、カメラの元のモーション経路に与える変化を制限する少なくとも１つの制約条件によりを決定される。この機能はさらに、カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能を具備することができる。
【０００８】
さらに別の形態において、カメラ経路推定エンジン、ビデオ安定化及び標的再設定エンジン、及びビデオ平行移動エンジンを具備するカメラ経路平行移動システムを提供する。カメラ経路推定エンジンは、ビデオを受け取り、ビデオ内の対象物のモーションに基づき、ビデオに記録されたカメラの元のモーション経路推定するように構成することができる。ビデオ安定化及び標的再設定エンジンは、カメラの元のモーション経路をどのように修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定し、切り取りウィンドウ変換がカメラの元のモーション経路に与える変化を制限する少なくとも１つの制約条件により決定されるよう構成することができる。ビデオ平行移動エンジンは、カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用するよう構成することができる。
【０００９】
上記の概要は、概説の目的のみで記載したものでありいかなる意味でも限定を目的とするものではない。上記の概説的形態、実施の形態、及び、特徴点に加えて、さらなる、形態、実施の形態、及び、特徴点を以下の図面及び詳細な説明により明らかにする。
【図面の簡単な説明】
【００１０】
【図１】カメラ経路平行移動システムの１つの実施例のブロック図を示す。
【００１１】
【図２】カメラ経路平行移動システムを含むビデオホスティングサービスのシステム像の実施例を図示したブロック図である。
【００１２】
【図３】本明細書に記載した少なくともいくつかの実施の形態による、カメラ又はカメラ経路の元のモーションを推定するためにビデオを処理するための方法の実施例のブロック図である。
【００１３】
【図４】本明細書に記載した少なくともいくつかの実施の形態による、カメラ又はカメラ経路の更新したモーション又は修正したモーションを推定するためにビデオを処理するための方法の実施例のブロック図である。
【００１４】
【図５Ａ】合成したカメラ経路に基づき決定した最適なカメラ経路の実施例のグラフを示す。
【図５Ｂ】合成したカメラ経路に基づき決定した最適なカメラ経路の実施例のグラフを示す。
【図５Ｃ】合成したカメラ経路に基づき決定した最適なカメラ経路の実施例のグラフを示す。
【図５Ｄ】合成したカメラ経路に基づき決定した最適なカメラ経路の実施例のグラフを示す。
【００１５】
【図６】ビデオフレームの長方形と切り取りウィンドウの長方形の実施例を示す。
【００１６】
【図７】各ビデオフレームにたいするビデオフレームの実施例と切り取りウィンドウの実施例を示す。
【００１７】
【図８Ａ】元のカメラ経路モーション対更新したカメラ経路モーション又は滑らかなカメラ経路モーションを示す。
【図８Ｂ】元のカメラ経路モーション対更新したカメラ経路モーション又は滑らかなカメラ経路モーションを示す。
【００１８】
【図９Ａ】元のビデオフレームの実施例と特徴ポイントａ、ｂ、ｃ、及びｄを示す。
【図９Ｂ】元のビデオフレームの実施例と特徴ポイントａ、ｂ、ｃ、及びｄを示す。
【００１９】
【図１０】突出点が固定した切り取りウィンドウに存在するようなビデオフレームを変換するための固定した切り取りウィンドウを含むビデオフレームの実施例を示す。
【００２０】
【図１１】ビデオフレームを変換するためのビデオフレームと切り取りウィンドウの実施例を示す。
【００２１】
【図１２】ビデオのビデオフレームの実施例と、そのビデオフレームに対するウォブルサプレッション（ｗｏｂｂｌｅ  ｓｕｐｐｒｅｓｓｉｏｎ）の実行を示す。
【００２２】
【図１３】本明細書に記載した少なくともいくつかの実施の形態により構成した計算機システムで用いられるコンピュータ装置の実施例を示す機能ブロック図である。
【００２３】
【図１４】本明細書に記載した少なくともいくつかの実施の形態により構成したコンピュータ装置においてコンピュータ処理するためのコンピュータプログラムを含むコンピュータプログラム製品の実施例の概念的な部分図を概略的に示す。
【発明を実施するための形態】
【００２４】
以下の詳細な説明では、参照図面を参照して、開示するシステム及び方法の種々の形態及び機能について説明する。図面において、特に記載がない限り、類似の記号は類似の構成要素を示す。図解したシステム及び方法についてここに記載した実施の形態は、限定することを意図するものではない。開示したシステム及び方法が種々の異なった構成で配置し及び組み合わせることができることは明らかであり、このような構成はすべてここで予期されるものである。
【００２５】
本明細書は、特に、記録した映像の安定化及び標的再設定のためのシステム及び方法を開示する。例えば、ビデオに生じた、少なくとも揺れの部分を除去することにより、記録した映像を安定化することができ、ビデオを異なるアスペクトレシオに適するように修正することにより、ビデオの標的再設定が可能となる。本明細書は、例えば、修正したビデオが元の記録した映像の有効なピクセルを含み、及び／又は、突出した領域及び対象物を保持するのに必要な制約を加えることにより、記録した映像の安定化及び標的再設定を行うための実施例を記載する。
【００２６】
１つの実施例によれば、ビデオは、後処理技術を行うことにより安定化させることができる。ビデオを記録したカメラの元の経路（例えば、モーション）を推定し、新しい安定した／滑らかなカメラ経路を推定し、このビデオを元の経路から滑らかなカメラ経路に作り直すためにこのビデオを処理することができる。１つの実施例によれば、新しいカメラ経路を推定するために、元のフレームサイズに対する縮尺より小さい所定の縮尺の仮想的な切り取りウィンドウを指定することができる。元のカメラ経路と滑らかなカメラ経路との間の差異に対する変換を、記録した映像から、揺れを除去するために、例えば、あたかも滑らかなカメラ経路からビデオを撮ったかのような記録した映像に作り直すために切り取りウィンドウを用いて、記録した映像に適用することができる。切り取りウィンドウが元のフレームに適合しない場合は、１つの実施例によれば、描き出したモーションを用いて未定義領域を埋めることができる。他の実施例によれば、未定義領域が生じないような制約を加えることができる。
【００２７】
１．カメラ経路平行移動システムの実施例
【００２８】
ここで、図１を参照すると、カメラ経路平行移動システム１００のブロック図が示されている。このカメラ経路平行移動システム１００には、カメラ経路推定エンジン１０２、ビデオ安定化及び標的再設定エンジン１０４、及び、ビデオ平行移動エンジン１０６が含まれる。このカメラ経路平行移動システム１００は、ビデオを受け取り、そのビデオにビデオ安定化処理を行うように構成することができる。例えば、カメラ経路推定エンジン１０２は、受け取ったビデオ内の物体のモーションに基づいてビデオを記録したカメラの経路を推定することができる。そして、ビデオ安定化及び標的再設定エンジン１０４は、新しい安定した／滑らかなカメラ経路を推定することができ、このビデオ安定化及び標的再設定エンジン１０４により決定した滑らかなカメラ経路の視点から受け取ったビデオを作り直すことができる。
【００２９】
システム１００の記載した１以上の機能又は構成要素は、付加的な機能的要素又は物理的構成要素に分割することも、もっと少ない機能的要素又は物理的構成要素に統合することもできる。さらに、実施例によっては、図１に示した実施例に、付加的な機能的要素、及び／又は、物理的構成要素を付加することができる。さらに、カメラ経路推定エンジン１０２、ビデオ安定化及び標的再設定エンジン１０４、及び／又は、ビデオ平行移動エンジン１０６のいずれもは、ここに記載した論理機能を実施するための１つ以上の命令を含むプログラムコードを実行するよう構成されたプロセッサー（例えば、マイクロプロセッサー、ディジタル信号プロセッサー（ＤＳＰ）、等）の形で、含むこと又は提供することができる。システム１００は、プログラムコードを記憶させるために、例えば、ディスクドライブ、ハードディスクドライブを含む記憶装置のような任意のコンピュータ読み取り可能媒体（持続性の（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）媒体）を含むことができる。他の実施例において、カメラ経路平行移動システム１００は、他のシステム中に含まれることがある。
【００３０】
図２は、カメラ経路平行移動システム２０２を含むビデオホストサービス２００のシステム像を示すブロック図である。複数のユーザー／視聴者は、クライアント２０４Ａ〜Ｎを用いて、ビデオをアップロードするために、ビデオホストサービス２００にビデオホスティング要求をビデオホスティングウェブサイトに送り、ビデオホストサービス２００から、要求したサービスを受け取ることができる。このビデオホストサービス２００は、ネットワーク２０６を介して、１以上のクライアント２０４Ａ〜Ｎと通信するように構成することができる。ビデオホストサービス２００は、有線又は無線により、クライアント２０４Ａ〜Ｎからビデオホスティングサービス要求を受け取ることができる。
【００３１】
図２に記載された個々の内容に戻って、ユーザーが各クライアント２０４Ａ〜Ｎをユーザーを使って、ビデオホスティングサービスを要求することができる。例えば、ユーザーは、ビデオを共有又は上演するため、クライアント２０４Ａを用いて、ビデオのアップロード要求を送ることができる。クライアント２０４Ａ〜Ｎは、パーソナルコンピュータ（例えば、デスクトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、ラップトップコンピュータ）のような任意のタイプのコンピュータ装置とすることができるとともに、携帯電話、携帯端末、又は情報処理が可能なビデオプレーヤーのような、装置とすることができる。クライアント２０４Ａ〜Ｎには、表示装置（又は表示装置への出力）、及び、タスクを実行するときにユーザーにより用いられるデータをクライアント２０４Ａ〜Ｎが記録するハードディスクドライブ又はフラッシュメモリー装置のような、ローカル記憶装置と、ネットワーク２０６を介して、ビデオホストサービス２００と接続させるためのネットワークインターフェースとを含めることができる。
【００３２】
クライアント２０４Ａ〜Ｎには、ビデオストリームを上演するためのビデオプレーヤー２０８Ａ〜Ｎ（例えば、Ａｄｏｂｅシステムのフラッシュプレーヤー、又はメーカー独自のもの）を含めることができる。ビデオプレーヤー２０８Ａ〜Ｎは、スタンドアロンアプリケーション又は、ネットワーク又はインターネットブラウザのような他のアプリケーションへのプラグインとすることができる。クライアント２０４Ａ〜Ｎが汎用装置（例えば、デスクトップコンピュータ、携帯電話）である場合、プレーヤー２０８Ａ〜Ｎは、このコンピュータにより実行可能なソフトウェアとして実施される。クライアント２０４Ａ〜Ｎが専用装置（例えば、専用ビデオプレーヤー）である場合、プレーヤー２０８Ａ〜Ｎは、ハードウェア又はハードウェアとソフトウェアの組み合わせにより実施される。プレーヤー２０８Ａ〜Ｎには、ビデオ送り、開始、停止、及びビデオ送りの巻き戻しを選択するために、ユーザーインターフェース制御（及び、インターフェースをプログラムするための対応するアプリケーション）を含めることができる。また、プレーヤー２０８Ａ〜Ｎには、ユーザーインターフェース中に、ビデオディスプレーフォーマット（例えば、標準解像度のＴＶ、又は、高解像度のＴＶ）を表示するよう構成された、ビデオディスプレーフォーマット選択を含めることができる。他の形式のユーザーインターフェース制御（例えば、ボタン、キーボード制御）も、再生の制御のため、及び、プレーヤー２０８Ａ〜Ｎのビデオフォーマット選択機能を制御するために用いることができる。
【００３３】
ネットワーク２０６により、クライアント２０４Ａ〜Ｎとビデオホストサービス２００との間の通信が可能となる。１つの実施の形態において、ネットワーク２０６はインターネットであり、クライアント２０４Ａ〜Ｎがビデオホストサービス２００と通信できるようにする、既知の又は実質的に開発済の標準化されたインターネットでの通信技術及びプロトコルを用いる。別の実施の形態において、ネットワーク２０６は、クライアント２０４Ａ〜Ｎとビデオホストサービス２００との間での無線通信を可能とする無線携帯ネットワークとすることができる。
【００３４】
ビデオホストサービス２００は、カメラ経路平行移動システム２０２、ビデオサーバー２１０、インジェストサーバー２１２、及びビデオデータベース２１６を具備する。ビデオサーバー２１０は、ユーザービデオホスティングサービス要求にこたえて、ビデオデータベース２１６からビデオ提供するよう構成することができる。インジェストサーバー２１２は、ユーザーがアップロードしたビデオを受け取り、ビデオデータベース２１６中にこのビデオを保存するよう構成されている。ビデオデータベース２１６は、ユーザーがアップロードしたビデオと、カメラ経路平行移動システム２０２により処理されたビデオとを保存するよう構成することができる。１つの実施の形態では、ビデオデータベース２１６は、大きなビデオの集成を保存する。
【００３５】
カメラ経路平行移動システム２０２には、カメラ経路推定エンジン２１８、ビデオ安定化及び標的再設定エンジン２２０、及びビデオ平行移動エンジン２２２を含めることができる。カメラ経路平行移動システム２０２は、インジェストサーバー２１２からユーザーがアップロードしたビデオを受け取りを行うよう、及び、ビデオのビデオ安定化を行うよう構成することができる。
【００３６】
２．ビデオ安定化
【００３７】
１つの実施例によれば、カメラ経路推定エンジン２１８は、受け取ったビデオ内の物体又は画像のモーションに基づき、ビデオを記録したカメラの経路を推定することができる。カメラ経路は、ビデオのフレームの追跡可能な特徴点を抽出し、特徴点の一致、及び、モーション推定をゆがめる恐れのある偽りの適合性を除くために異常値除去を行うことで、推定することができる。線形モーションモデル（例えば、平行移動、相似、アフィン）は、２つのフレーム間でカメラのモーションを推定するために追跡した特徴点に適し、このモーションモデルは、共通座標系に変換することができ、ビデオのすべてのフレームについて推定された元のカメラ経路を生み出すために結合することができる。
【００３８】
ビデオ安定化及び標的再設定エンジン２２０は、次いで、制約条件に基づいて安定した／滑らかな新しいカメラ経路を推定することができる。例えば、底部垂直線を、望ましい垂直カメラ経路モーションとなるよう規定することができ、制約条件を制約量で修正することができるように設定することができる（カメラモーションが下方に動く場合、画像中のピクセルは先のフレームと協調して情報に動き、ピクセルの底の列は、制約条件で許される範囲で除去され又は切り取られる）。
【００３９】
滑らかなカメラ経路は、カメラ経路推定エンジン２１８により推定するので、元のカメラ経路の微分を最小限にすることで推定することができる。
2013544050.tif 000003
推定した滑らかなカメラ経路は、一定モーション、線形モーション、又は放物線モーションの部分に分けることができる。各部分は、未処理のモーションを避けるために、部分部分を重ね合わせるというよりむしろ、静止部分とすることができる。
【００４０】
１つの実施例によれば、一定部分、線形部分、及び放物線部分からなるカメラ経路Ｐ（ｔ）を推定するために、制約条件Ｌ１を最小化する解とするための最適化を行うことができる。
2013544050.tif 000004
Ｌ１／Ｌ２のノルムの計算は、この基準を用いて行うことができる。Ｌ１の最小化により、結果として、多くの部分で（上記の）微分がゼロになる経路となることがある。Ｌ１のカメラ経路は、一定カメラ、線形モーション、及び一定加速度に似た部分から構成することができる。他の、実施の形態によれば、Ｌ２の最小化は、上記微分を平均して結果的に小さく、しかしおそらく傾きゼロにならないように最小化するために用いることができる（例えば、小さいいがゼロではないモーションを有するＬ２カメラ経路となることがある）。
【００４１】
加えて、制約条件を満たしながら上記微分を最小化するようなカメラ経路Ｐ（ｔ）を決定することができる。種々の制約条件は、包含条件、近似条件、突出条件のようなものとして用いることができる。包含条件では、カメラ経路Ｃ（ｔ）で長方形に変換された元のフレームに常時又は実質的に常時含まれるように、経路Ｐ（ｔ）で変換された切り取りウィンドウを必要とする。近似条件には、意図する元の動きを保持する（又は実質的に保持する）新しいカメラ経路Ｐ（ｔ）が含まれ、例えば、元の経路にズーミング部分が含まれている場合、新しいカメラ経路はこのモーションに従うことができる。突出条件には、Ｐ（ｔ）により変換されたすべて又は一部の切り取りウィンドウ中の突出した点（例えば、顔検出により得られたもの、又は、突出マップ中で得られる一般的条件で得られたもの）が含まれる。
【００４２】
ビデオ平行移動エンジン２２２は、例えば、刈り込みを行った揺れの少ないビデオを生成するためにビデオに変換を施すことにより、ビデオ安定化及び標的再設定エンジン２２０により決定した滑らかなカメラ経路の視点から、受け取ったビデオを作り直すことができる。従って、１つの実施の形態において、ビデオ安定化は、（１）フレーム毎のモーション変換Ｆｔの推定、（２）最適カメラ経路Ｐｔ＝ＣｔＢｔの決定（ここで、Ｃｔはモーション変換Ｆｔに基づき、Ｂｔは以下に説明するような推定された切り取りウィンドウ変換である）、（３）Ｂｔにより歪ませることにようビデオの安定化、により行うことができる。
【００４３】
図３は、ここに記載した少なくともいくつかの実施の形態による、カメラ又はカメラ経路の元のモーションを推定するためにビデオを処理するための方法の実施例のブロック図である。図３に示す方法３００は、例えば、システム１００及び２００で用いることができ、例えば、装置、サーバー、又は装置とサーバーを組み合わせたもので実行できる、方法の実施の形態を表している。方法３００には、ブロック３０２、３０４、３０６、３０８、及び３１０の１以上で表したような１以上の操作、機能、又は動作を含めることができる。ブロックは順番に記載されているが、これらのブロックは、一部、並行して実行することができ、追加のブロックに分割することができ、及び／又は、記載とは異なる順序で実行することができる。また、種々のブロックは少ないブロックに結合することができ、及び／又は、実施例での必要性に応じて省略することができる。
【００４４】
加えて、方法３００及びここに記載した他の処理及び他の方法のために、フローチャートにより、本実施の形態の１つの可能な実施例での機能と操作とを示す。これに関連して、各ブロックは、モジュール、セグメント、又はプログラムコードの一部を表すことができ、具体的な論理関数又は処理ステップを実行するためのプロセッサーにより実行可能な１つ以上の命令が含まれる。プログラムコードは、例えば、ディスクやハードディスクドライブを含む保存媒体のような任意の形式のコンピュータ読み取り可能媒体に保存することができる。コンピュータ読み取り可能媒体には、例えば、レジスタメモリー、プロセッサーキャッシュ及びランダムアクセスメモリ（ＲＡＭ）のような短期間データを保存するコンピュータ読み取り可能媒体のような、持続性の（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）コンピュータ読み取り可能媒体を含めることができる。コンピュータ読み取り可能媒体には、また、例えば、リードオンリーメモリー（ＲＯＭ）、光学ディスク又は磁気ディスク、コンパクトディスクリードオンリーメモリー（ＣＤ−ＲＯＭ）のような、二次的な又は永久的な長期記憶装置のような、持続性の（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）媒体を含めることができる。コンピュータ読み取り可能媒体には、他の揮発性の又は不揮発性の記憶システムを含めることができる。コンピュータ読み取り可能媒体は、例えば、コンピュータ読み取り可能記憶媒体、実体的な記憶装置、又は他の製造物と考えることができる。
【００４５】
加えて、方法３００及びここに開示した他の処理及び方法について、図３の各ブロックは、その処理における具体的な論理関数を実行するために配線した回路を表すことができる。
【００４６】
ブロック３０２にて、記録した映像を受け取る。ブロック３０４にて、ビデオのフレーム中で追跡可能な特徴点の一致部分が抽出される。例えば、ビデオの各フレーム中で追跡可能な特徴点が抽出され、又は、ビデオの実質的にすべてのフレーム中で追跡可能な特徴点が抽出される。ビデオのフレーム中で追跡可能な特徴点は、ＯｐｅｎＣＶ中に組み込まれた、ピラミッド型のＬｕｃａｓ−Ｋａｎａｄｅ特徴点追跡のような、特徴点追跡ソフトウェアを用いて追跡することができる。特徴点は、多くの方法を用いてフレームからフレームへと追跡することができる。追跡する特徴点の実施例には、画像のｘ及びｙ寸法に沿って強さが変化する画像の角が含まれる。別の実施例では、２つのフレームの間で追跡可能な特徴点は、最初のビデオフレーム中で（例えば、ｘ及びｙ位置に基づき）多くの特徴点を抽出し、次のビデオフレーム中でこの抽出特徴点を追跡することで、抽出することができる。例えば、ビデオが、連続した画像Ｉ１，Ｉ２，・・・Ｉｎである場合、ビデオフレームのペアは、（Ｉｔ−１、Ｉｔ）となり、ビデオフレーム同士で特徴点のペアを抽出することができる（例えば、フレームＩｔ−１での特徴点ｘについて、特徴点ｘと同じ空間位置にある点で対応する特徴点ｙをフレームＩｔで見つけられる）。小さなイントラフレームモーション及び照度変化の少ない状態で、Ｉｔ−１での特徴点ｘの周りに集中した小さな画像パッチ（例えば７×７ピクセル）の輝度値とＩｔにおける適合する点ｙはほぼ同一である。Ｉｔ−１での各特徴点ｘについて、Ｉｔ−１（ｘ）＝Ｉｔ（ｘ＋ｄ）のような、変位ベクトルを定めることができ、従って、先の記号（例えば、特徴点の一致（ｘ＜−＞ｙ））を用いて、ｘ＋ｄ＝ｙとなる。この表現は、ｘの周りでテイラー級数展開を行うことで線形化することができ、未知の変位ベクトルｄにおいて線形となる、ＤＩｔ（ｘ）＊ｄ＝Ｉｔ−１（ｘ）−Ｉｔ（ｘ）を得ることができる。さらに決定すべき式の線形システムは、正規方程式を用いることにより（すなわちガウス消去法による、シンメトリック線形システムＡＴＡｄ＝ＡＴｂ、ここでＡＴはＡの転置、を解くことにより）解くことができる。この処理は、ピラミッド型のＬｕｃａｓ−Ｋａｎａｄｅ追跡と称することがある。
【００４７】
１つのフレームから次のフレームへと特徴点の追跡を行っている間に、誤差が蓄積するかもしれない。潜在的な不完全な特徴点の一致を検出するために、現在のフレーム中の特徴点の周りのウィンドウ中の画像を、その画像が第１のフレーム中の特徴点の周りの画像に類似するかどうかを決定するために、監視することができる。特徴点は多くのフレームにわたって遺跡され、画像の内容は変化することがある。整合性を確認するために、類似性マッピング又はアフィンマッピングに加えて、フレームからフレームへの特徴点追跡のために用いられる平行移動マッピングを行うことができる。
【００４８】
特徴点の一致する複数のペア、すなわち、各ペアがそれぞれ第１のフレームと第２のフレームとに位置する特徴点に対応する複数のペア、を決定するために、ビデオのすべてのビデオフレームについて、この処理を実行することができる。
【００４９】
ブロック３０６にて、モーション推定を歪曲する可能性のある偽りの抽出された特徴点の一致又は特徴点ペアを除くために、（複数の独立したモーションレイヤーを考慮に入れて、全体的な異常値の削除ではなく、又は全体的な異常値による削除に加えて）現場での異常値の削除を行うことができる。ビデオフレーム間での一致特徴点ペアのいくつかは、正しくないことがあり、取り除くことができる。対応するペアとして間違って特定されていた一致特徴点ペアを取り除くために、ランダムサンプルコンセンサス（ＲＡＮＳＡＣ）のようなアルゴリズムを用いることができる。このアルゴリズムは、監視データ内の異常値を特定することができる。例えば、すべての特徴点ペアは内座層、すなわち分配をモデルパラメーターとして表現できるようなデータとして初期化することができる。平均数学移動（例えば、特定の方向に等間隔ですべての点を動かす）を内座層ペアに基づき計算することができる。移動が平均移動と閾値の量以上に異なるペアを内座層から取り除き、モデルに適しないデータ「異常値」として分類することができる。閾値の量は、観測した結果に基づいて決定することができる。小さい閾値は、多数の特徴点ペアを取り除くために使い、大きな閾値は、少数の特徴点ペアを取り除くために使うことができる。内座層から取り除かれなかった特徴点ペアの平均数学移動を決定することにより、このアルゴリズムを複数回（例えば、回数を固定して複数回）行うことができる。
【００５０】
別の実施例において、偽の特徴点の一致を取り除くための現場での異常値除去を行うために、モデルを特徴点ペアに適合させることができる。モデルは、数学的移動又は他の線形変換により形成することができる。特徴点ペアがそのモデルに適合する場合は、特徴点ペアは、内座層と考えられる。多数の点が内座層と分類される場合は、このモデルは、合理的に十分であるとすることができる。このモデルは、ここで内座層と考えられるすべての特徴点ペアから再推定することができる。この処理は、固定回数だけ繰り返すことができ、各回で、内座層と分類した点が少なすぎるため排除されたモデル又は対応する誤差対策を持つ洗練されたモデルのいずれかを生成することができる。
【００５１】
独立の移動物体を考慮に入れて、現場での異常値除去は、フレーム毎の細分化にテコ入れし、特徴点ペア毎の各領域でモーションモデルの現場での２Ｄ移動を適用することにより、行うことができる。フレーム毎の細分化を用いることにより引き起こされるオーバーヘッドを減少させるために、例えば、各フレームに同様のブロックサイズの方形領域で細分化した領域に置き換える推定モードを用いることもできる。
【００５２】
加えて、最も目立つ領域中の移動物体から特徴点ペア取り除くことができる。例えば、現場で異常値として除去された特徴点ペアは、特徴点ペアからＲＡＮＳＡＣを用いて基本マトリックス（Ｆ）を推定することにより、独立した移動する前景と固定した背景領域として分類することができ、ここで、基本マトリックス（Ｆ）は、立体画像の対応する点についての３×３マトリックスである（例えば、立体画像ペアの対応する点の均質な画像座標ｘ及びｘ’により、Ｆｘは、他の画像の上にある対応する点ｘ’の上の線（エピポーラ線）を表現する）。基本マトリックスの制約条件に忠実である領域は、背景領域とラベル付けすることができ、この制約条件に反する領域は、前景領域とラベル付けすることができる。
【００５３】
さらに他の実施例において、偽りの特徴点の一致を取り除くための現場での異常値除去を行うために、特徴点を５０×５０ピクセルのグリッドに分離することができ、ＲＡＮＳＡＣを各グリッドのセルに対して行うことで、具体的な閾値の距離以内（例えば２ピクセル未満）に適合する平行移動モデルを推定することができ、推定したモデルを保持することができる。
【００５４】
さらに他の実施例において、現場での異常値除去のため、隣接する特徴点は、類似の変位ベクトルを有する必要がある。これは、（例えば、グリッドによる領域又は画像の分割から得られた知覚的に均質な領域を用いて）画像を領域に分割することにより行うことができる。各領域Ｒに対して、この領域に位置するランダム変位ベクトルｄを選択し、選択したベクトルｄに対して所定の距離（２ピクセル）以内にある、領域Ｒ内の多数の変位ベクトルを決定することができる（「内座層」と称される）。この処理は、何度も最大の内座層に繰り返すことができる。この処理は、例えば、各領域に適用することができる。
【００５５】
ブロック３０８にて、２次元（２Ｄ）線形モーションモデル（例えば、平行移動、相似、アフィン）を、ビデオフレーム間での、又は連続するビデオフレーム間でのカメラのモーションを記述するために追跡可能な特徴点の一致に適合させることができる。例えば、ビデオは連続する画像Ｉ１，Ｉ２，・・・Ｉｎとなり、各フレームペア（Ｉｔ−１、Ｉｔ）は、ＩｔからＩｔ−１への特徴点ｘのモーションをモデル化する線形モーションモデルＦｔ（ｘ）と結び付けることができる。１つのフレームから次のフレームへ特徴点の一致をマッピングする、線形変換のために（例えば、右方向へ１０ピクセル動く特徴点は、カメラが左へ１０ピクセル動くことと等価であるような、フレーム間のモーションを記述するために）最小二乗適合を計算することができる。数学的に言い換えると、最小二乗適合は、各特徴点ペアを一致させるための平行移動の平均ということができる。
【００５６】
一例として、結果として各特徴点ペアとなる線形変換（例えば、１つのビデオフレームから次のビデオフレームで一致させた特徴点ペアの特徴点のモーションを記述する線形変換）となる線形モーションモデルを追跡した特徴点ペアの一致に適合させることにより、元のカメラ経路（Ｃ（ｔ））の推定を行うことができる。最初のフレームの特徴点を｛ｘ１，・・・，ｘｎ｝で表現することができ、第２のフレームで対応する特徴点を｛ｘ’１，・・・，ｘ’ｎ｝で表現することができる。
2013544050.tif 000005
【００５７】
2013544050.tif 000006
１つの実施例によれば、Ｓは結果の質（又は条件）を改善することができる。一般に、特徴ポイントの位置は、マトリックスＪで用いられ、Ｊのマトリックス要素が（例えば、−１と１との間で）類似するようにさせることが望ましい。
【００５８】
式（４）は、ビデオのビデオフレームの各々に対して（又は、ビデオの任意の数のビデオフレームに対して）多数の線形モーションモデルについて解くものである。多くの線形モーションモデルは、平行移動モデル｛Ｆ（ｘ；ｔ）＝ｘ＋ｔ｝、相似性モデル｛Ｆ（ｘ；ｔ、ａ、ｂ）＝［ａ−ｂ；ｂａ］＊ｘ＋ｔ｝、及びアフィンモデル｛Ｆ（ｘ；ｔ、ａ、ｂ、ｃ、ｄ）＝［ａｂ；ｃｄ］＊ｘ＋ｔ｝として用いることができる。
2013544050.tif 000007
この式を解くための１つの例示的アプローチでは、正規方程式の形式を用いる、すなわち、Ａ＾ＴＡｐ＝Ａ＾Ｔｂであり、（＾Ｔ）はマトリックスの転置を意味する。これにより、ｋ×ｋ線形システムとなり（ここで、ｋはｐにおける自由度の数である）、例えば、ガウスの消去法を用いて解くことができる。
【００５９】
追跡可能な特徴点の一致のための２次元（２Ｄ）線形モーションモデル（例えば、平行移動、相似、アフィン）を定めるための、別の方法も可能である。例えば、パラメトリックモーションモデル、すなわち、平行移動（自由度（ＤＯＦ）２）、相似（ＤＯＦ２の平行移動、ＤＯＦ１の拡大縮小、ＤＯＦ１の回転）、アフィン（ＤＯＦ６）、又はホモグラフィー（ＤＯＦ８）のような、パラメータ又は自由度（ＤＯＦ）により表現することのできるモーションに対して、特徴点の一致に対して現場で削除された異常値に適合することができる。線形モデルは、位置ｘでマトリックスを乗算することにより、すなわちｙ＝Ａ［ｐ］＊ｘにより、ここでＡはマトリックス、ｐはパラメータ。
2013544050.tif 000008
残差ｒ＝ｙ−Ａ［ｐ］＊ｘはモーションパラメータｐ又はＡを構成するそれぞれのＤＯＦについて最小化することができる。これは、ｐの周りにテイラー級数展開により、ｒ＝ｙ−ＤＡ［０；ｘ］＊ｐ−ｘを生じさせることにより残差を線形化することにより行うことができ、ここで、ＤＡ［０；ｘ］：＝Ｊ（ｘ）はｐについてマトリックスＡの微分又はヤコビアンであり、ｐ＝０及びｘで評価される。従って、ｒ＝ｙ−ｘ−Ｊ（ｘ）＊ｐとなる。パラメータ表現ｐは、残差が最小になるように定めることができ、正規方程式ＡＴ＊Ａｐ＝ＡＴｂ（又はＡ’ｐ＝ｂ’）により解くことのできる形式Ａｐ＝ｂのオーバーデターミンシステムを、お互いにすべての残差を積み重ねることにより生じさせることにより、実行することができる。最前面のモーションによる異常値を減少させるために、各行Ａ’及びｂ’を乗算し、対応する残差ｒの絶対値の逆数をとることで、反復再重み付け最小二乗法（ＩＲＬＳ）を使うことができ、例えば、約２０回で残差の解を求めることができる。ｒは、２次元ベクトルであり、正規方程式による最小化は、ｒの二乗根のノルムＬ２、すなわち、｜ｒ｜｛Ｌ２｝＝ｒｘ＊ｒｘ＋ｒｙ＊ｒｙで求めることができるに注意すべきである。このような最小化により、背景モーションのモーションモデルとは対照的な、背景及び前景モーションの混合であるモーションモデルを推定することができる。他の実施例では、Ｌ１ノルムの最小化を行うことができる（すなわち、成分の絶対値の和である、｜ｒ｜｛Ｌ１｝＝｜ｒｘ｜＋｜ｒｙ｜）。ｐについて解く代わりに、｜Ａｐ−ｂ｜｛Ｌ２｝＝最小、とし、続いて｜Ａｐ−ｂ｜｛Ｌ１｝＝最小、を解くようにすることができる。Ａ及びｂを上記のように計算する一方、ｐを求めるために正規方程式及びガウスの消去法を用いることができる。最小化は、−ｅ＜Ａ＊ｐ−ｂ＜ｅのように書くことができ、ｅは、ｅの各成分＞０の要件を満たすベクトルである。従って、ｅのＬ１ノルムは最小化することができ、例えば、−ｅ＜Ａ＊ｐ−ｂ＜ｅを条件として１Ｔｅ（ここで１はすべて１を有するｅと同じ次元を持つベクトルである）である。
【００６０】
１つの実施例によれば、フレームペア毎の少なくとも所定の数の特徴点の一致（例えば、Ｎ＝３０）を要件とし、さもなければ、そのフレームに信頼できないとのフラグを立てることで、信頼できないモーションモデルを検出することができる。他の実施例によれば、低次元モーションモデルから高次元モーションモデルへの推定（例えば、相似からホモグラフィへの推定）は、信頼できないモーションモデルを検出するために、低い次元が閾値（例えば、４ピクセル）を満たす高次元のモデルとの一致を用いることにより、実行することができる。さらに別の実施例によれば、最高次元のモーションモデルが信頼できないとみなされた場合（例えば、回転、縮小拡大、又は奥行きが大きすぎる場合）、計算した他のモデルにも信頼できないとのフラグを立てることができる。各フレームのモーションモデルに信頼できる又はできない、のラベル付けを行う発見的解法を用いることもできる。信頼できないモーションモデルは、廃棄することができ同一化へと向かう。付加的な厳格な制約条件を、最適なＬ１カメラ経路の推定に付加することができ、例えば、この経路を信頼できないフレームのモーションモデルの近傍に静止させることができる。このような例において、最適化したカメラ経路は、この部分にある元の揺れのある経路と同一になる。これらの例において、ビデオデータの一部が崩れていて、信頼性のあるモーション推定が不可能である（又は決定できない）場合、例えば、元の揺れのあるビデオデータをこの部分に用いることができる。
【００６１】
ブロック３１０にて、各特徴点ペアに対する線形モーションモデル（Ｆ）は、共通座標系に変換され、結合して元のカメラ経路の推定を生成する。例えば、各特徴点ペアに対してすべての線形モーションモデルを結合することで、元のカメラ経路の推定となる、ビデオの各フレーム間のモーションを記述することができる。カメラ経路は累積した経路であり、従って、カメラ経路が２つの連続するフレーム間その他で、１０ピクセルだけ左に動く場合、５番目のフレームに届くまでに、カメラは、例えば全体として５０ピクセルの距離だけ動くことがある。
【００６２】
ビデオフレームＩｔ及びＩｔ＋１の特徴点ペア間での変換（Ｆ）の逆の変換Ｇｔ＝Ｆｔ−１を、座標変換として用いることができる。変換Ｇｔは、フレームＩｔで定義される座標系に関して計算できることに注意すべきである。従って、すべての線形モーションモデルを結合することができるようにＧｔを共通座標系に変換するために、座標系は、例えば、Ｇｔの座標系のように、任意に選択することができる。
【００６３】
元のカメラ経路の推定は、フレームペア変換Ｇ１，Ｇ２，・・・，Ｇｍ−１を結合することにより得ることができ、ここでｍはフレームの数を表す。
2013544050.tif 000009
フレーム毎の線形モーションモデルの推定は、時間について誤差の蓄積をもたらし、従って、各フレームは、先のＮフレームに関して追跡可能となり、ここでＮは固定である（例えば、速度と精度とのトレードオフで、Ｎは３から約５とすることができる）。他の実施例において、すべてのパラメータはすべてのフレームについて合同で推定することができる。
【００６４】
従って、Ｃ（ｔ）は、元のカメラ経路の推定であり、時間ごとのパラメトリック線形モーションモデルで記述される。例えば、ビデオは、連続した画像Ｉ１，Ｉ２，・・・，Ｉｎであり、各フレームペア（Ｉｔ−１、Ｉｔ）は、ＩｔからＩｔ−１までの特徴ポイントｘのモーションをモデル化する線形モーションモデルＦｔ（ｘ）と結び付けることができる。
【００６５】
図３の方法３００を用いて、カメラの元のモーション又はビデオレコーディングの元のカメラ経路の推定を行うことができる。続いて、新しい安定した又は滑らかなカメラ経路の推定を決定することができる。この安定した又は滑らかなカメラ経路により、歩行者が記録したハンドヘルドによるパンニングショット又はビデオで生じる高周波数のジッターを軽減し、低周波の歪みを取り除くことができる。
【００６６】
図４は、ここに記載した少なくともいくつかの実施の形態による、カメラ又はカメラ経路の更新した又は修正したモーションを推定するための、ビデオを処理する方法の実施例ブロック図である。図４に示した方法４００は、例えば、システム１００及び２００で用いることができ、例えば、装置で、サーバーで、又は装置とサーバーを組み合わせて実行することができる方法の実施の形態を示す。方法４００には、１以上のブロック４０２〜４１０で示したような１以上の操作、機能、又は動作を含めることができる。ブロックは、順番に記載されているが、これらのブロックは、一部、並行して実行することができ、及び／又は、記載とは異なる順序で実行することができる。また、種々のブロックは少ないブロックに結合することができ、追加のブロックに分割することができ、及び／又は、実施例での必要性に応じて省略することができる。
【００６７】
ブロック４０２にて、元のカメラ経路モーションの推定を受け取る。ブロック４０４にて、元のカメラ経路モーションの変化を制限する制約条件を受け取る。実施例の制約条件には、元のカメラ経路モーションのフレームに常に滑らかなモーションのフレームを含むことを要求する包含による制約条件、記録した映像の元の意図を保存する（例えば、元のカメラ経路モーションがズーミング部分を含む場合は、滑らかなカメラ経路モーションもまたズーミングを含む）滑らかなモーションを要求する近似による制約条件、及び、突出したポイント（例えば、顔検出器又は突出マップでの一般的な検出により得られたポイント）を滑らかなカメラ経路モーション中のすべての新しいフレーム又は新しいフレームの一部に含めることができる、突出による制約条件が含まれる。他の実施例として、制約条件は、更新したカメラ経路モーションにより、すべての時間で、元のカメラ経路モーションのビデオフレームウィンドウ内に収まるビデオフレームウィンドウとなることを示すことができる。
【００６８】
ブロック４０６にて、コスト関数を受け取り、最小化を行う。
2013544050.tif 000010
２つの異なる部分の接続は、知覚的に無限大の加速度を持つ場合があり、これは、ビデオ中の突然のジャーク（ｊｅｒｋ）として知覚することができ、従って、一定加速度の経路を使うことができる。連続する元のカメラ経路モーションをＣ（ｔ）とすると、例えば、上記の式（５）を用いて得られたように、求める滑らかな経路Ｐ（ｔ）は以下のように表すことができる。
Ｐ（ｔ）＝Ｃ（ｔ）＊Ｂ（ｔ）          式（６）
ここで、Ｂ（ｔ）＝Ｃ（ｔ）−１Ｐ（ｔ）は、最終的に安定化したビデオを取得するために記録した映像の各ビデオフレームに適用することのできるカメラ安定化変換又は切り取り変換として記述することができる（例えば、切り取りウィンドウの外側の内容をすべて取り除くために各ビデオフレームに切り取りウィンドウを適用する）。安定化した又は滑らかなカメラ経路モーションは、式（５）から既知のＣ（ｔ）を用いてビデオ内容の有効性を確保するための強制的な制約条件と共にＬ１最適化を行うことにより、推定することができる。最適化は、コスト関数を最小化することにより行うことができる。
2013544050.tif 000011
線形重み付けａ、ｂ、及びｃにより、Ｂ（ｔ）により変換されたビデオフレームがすべての時間ｔで制約条件に収まる。式（７）は、例えば、各導関数をゼロに設定することにより最小化することができる。したがって、導関数はカメラ経路（例えばフレーム毎）に沿って異なる点で定めることができ、導関数は（すべてのフレームの）各点で決定することができる。
【００６９】
１つの実施の形態によれば、式（７）におけるコスト関数の重み付けはあらかじめ決めておくことができる。代替的に、重み付けの値は専門的撮影画面から決めることができる。例えば、専門的ビデオでは、別の種類のカメラモーションを有し、ジッターがモーションに加えられた場合、元の滑らかなカメラ経路を取り戻すためにビデオ安定化アルゴリズムを実行することができる。元の経路に非常に近い結果をもたらす重み付けを定めることができる。
【００７０】
別の実施例として、式（７）におけるコスト関数の重み付けを決めるために、３つの導関数の制約条件の内の１つが最小化できさえすれば、連続的でない、ジャークのある直線的経路又はゼロモーションのない滑らかな放物線のいずれかにより、元の経路を近似することができる。図５Ａ〜図５Ｄは、合成した元のカメラ経路５０２に基づき決定した最適なカメラ経路５００の実施例のグラフを示す。図５Ａは、重み付けを、ａ＝１、及びｂ＝ｃ＝０のように選んだ連続的でない一定経路を含む最適なカメラ経路５００を示す。図５Ｂは、重み付けを、ａ＝ｃ＝０、及びｂ＝１のように選んだ突然の変化を有する直線経路を含む最適なカメラ経路５００を示す。図５Ｃは、重み付けを、ａ＝ｂ＝０、及びｃ＝１のように選んだ滑らかな放物線を含み及びゼロモーションのない最適なカメラ経路５００を示す。
【００７１】
１つの実施の形態において、式（７）における３つの物体のすべては同時に最小化することができる。ぴくぴく動くモーションが安定化したビデオ内に目立つことがあり、重み付けａ及びｂの最大値より桁の大きなマグニチュードを重み付けｃに選んだとき、ぴくぴく動くモーションを最小化することができる。例えば、図５Ｄは、重み付けを、ａ＝１０、ｂ＝１、及びｃ＝１００ように選んだ最適なカメラ経路５００を示す。さらに、内在する線形モーションモデルを選択することで、安定化させたビデオに影響を与える。相似性の代わりにアフィン変換を用いることは、例えば、２の自由度を加える利点があるが、安定性を失うという影響を与えるゆがみに誤差をもたらす。しかしながら、相似性は（アフィン変換のように）、非線形のフレーム間のモーション又は巻き上げシャッター効果のモデル化ができず、目立つ残差のゆれとなることがある。
【００７２】
2013544050.tif 000012
【００７３】
2013544050.tif 000013
【００７４】
2013544050.tif 000014
【００７５】
2013544050.tif 000015
同様に、４度のＤＯＦを持つ線形の相似性は、ａｔ＝ｄｔ、及びｂｔ＝−ｃｔに設定することにより得られる。式（９）〜（１１）における重み付けしたＬ１のノルムは、対応するベクトルｐｔによりパラメータ化することにより更新したすべての変換Ｂｔについて、最小にすることができる。
2013544050.tif 000016
式(９)〜(１１)における残差は、線形プログラミングを用いて解くことができる。例えば、パラメータ形式の式(９)〜(１１)における残差のＬ１のノルムを最小化することはスラック変数を用いて行うことができる。各残差は、Ｎのスラック変数を用いることができ、ここでＮは、内在するパラメータであり、アフィン変換の場合はＮ＝６である。ｎのフレームに対して、例えば、これは約３ｎＮのスラック変数の導入に対応する。
2013544050.tif 000017
目的は、ｃ＝１の場合のＬ１のノルムを最小化することに対応するｃＴｅを最小化することである。ｃの重み付けを調整することにより、この最小化は特定のパラメータに向けることができ、例えば、厳密なアフィン部分を他の平行移動部分より大きく重み付けすることができる。これは、変換とアフィンとは異なる縮尺を有するので有効であり、平行移動部分に対するアフィン部分の重み付けを、例えば、１００:１にすることができる。
【００７６】
線形プログラミングを用いて、制約を受けて式(７)を最小化するように、制約条件を最適なカメラ経路に適用することができる。ここで、ｐｔは、フレームの長方形内の中心に切り取りウィンドウを変換する、切り取りウィンドウ変換Ｂ(ｔ)のパラメータを表すことを想起するべきである。切り取りウィンドウ変換Ｂ(ｔ)は、元のビデオの意向を保存するために、Ｂ(ｔ)が元のカメラ経路モーションからずれる量を制限するために、切り取りウィンドウ変換Ｂ(ｔ)を制約することができる。したがって、厳密な境界条件をパラメータｐｔのアフィン部分に適用することができ、式(１４)の１つの実施例に含まれる。
2013544050.tif 000018
式(１５)における最初の２つの制約条件は、ズーム及び回転における変化の範囲を制限し、式(１５)における後の２つは、スキューの量と画一でない縮尺を限定することで、厳密にアフィン変換を与える。
2013544050.tif 000019
【００７７】
2013544050.tif 000020
【００７８】
2013544050.tif 000021
図６は、ビデオフレームの長方形と切り取りウィンドウの長方形の実施例を示す。図６に示すように、Ｂ（ｔ）で変換され切り取った長方形のすべての４つのコーナーが座標［０,ｗ］×［０,ｈ］の元のフレームの長方形内にある。
【００７９】
追加の制約条件を、相似変換及びアフィン線形モーションモデル変換に滑らかさの条件として適用することができる。例えば、相似変換において、縮尺、回転、平行移動の組み合わせを用いることができる。重み付けａ及びｂを相似変換［Ｆ（ｘ；ｔ、ａ、ｂ）＝［ａ−ｂ；ｂａ］＊ｘ＋ｔ］に用いて、滑らかさの制約条件をＰ（ｔ）に適用することができる。ｔが平行移動に対応する一方、縮尺（Ｓｃａｌｅ）と回転（Ｒｏｔａｔｉｏｎ）は以下のようにａ、ｂに対応する。
2013544050.tif 000022
ａ、ｂに対して滑らかさは保っているが、回転と縮尺は、滑らかさを保っていない可能性がある。ｓ及びθに対して滑らかさの条件を適用することが非線形になることがあるので、推定したカメラ経路を、ｓ及びθが大きくずれないようにするために用いることができる。例えば、縮尺と回転に対する制約条件を以下のようにすることができる。
2013544050.tif 000023
【００８０】
１つの実施の形態において、堅固な制約条件を「出っ張った形の変換ポイント」の形でモデル化することができる。例えば、ｐｔのアフィンパラメータ化のために、制約条件は以下の式（２５）で示すことができる。
2013544050.tif 000024
ｗ及びｈは、元のフレームの長方形の寸法である（例えば、図６に示す）。
【００８１】
図４の方法４００に戻って、ブロック４０８にて、元のフレームサイズに関するあらかじめ定めた１以下の縮尺の切り取りウィンドウ変換Ｂ（ｔ）を、制約条件及び残差の最小化の条件の下で決定する。１つの実施例によれば、前述の式（６）に示したように、Ｐ（ｔ）＝Ｃ（ｔ）＊Ｂ（ｔ）であり、ここで、Ｂ（ｔ）は切り取りウィンドウ変換である。切り取りウィンドウ変換は、パラメータ化ベクトルｐｔに関して、最小化（ｃＴｅ）を行うことにより決定することができる。ここで、
2013544050.tif 000025
ここｓｗ、ｅは式（１４）で示した上限及び加減であり、ｗは重み付けである。残差のＬ１ノルムを最小化するために、スラック変数ｅのＬ１ノルムを最小化することができる。ベクトル形式において、例えば、最小化は、ｃ・ｅ（又はｃｔｅ）の内積で記述することができ、ここでｃはすべて１のベクトルである。別の実施例では、ｃは、対応する成分として、式（７）からａ、ｂ、ｃの重み付けを含むことができる。
【００８２】
関数（ｃＴｅ）は、以下のような種々の制約を受けて最小化することができる。
2013544050.tif 000026
１つの実施例によれば、ｃＴｅは最小化されるが、線形プログラムにおいて、制約条件におけるすべての変数を決定することができる（滑らかさ、近似性、及び包含による値の線形結合を、スラック変数を介してモデル化することができる）。従って、各フレームｔに対して、対応するパラメータｐｔを決定することができ、式（１２）に示すようにＢ（ｔ）＝Ａ（ｘ；ｐｔ）となる。
【００８３】
ブロック４１０にて、切り取りウィンドウ変換Ｂ（ｔ）を決定した後、切り取りウィンドウ変換を元のビデオに適用し、ビデオを再フォーマット又はビデオを安定化させる。例えば、切り取りウィンドウ変換を、元のビデオの領域（又はフレームサイズ）内の固定サイズの切り取りウィンドウに適用することができる。切り取りに使った、切り取りウィンドウ内のピクセルをコピーすることで、元のビデオを、滑らかなカメラ経路の視点から作り直す。別の実施例において、サブピクセルの精度を達成するために、バイリニア又はバイキュービック混合により、補間することができる。
【００８４】
ビデオを作り直すと、ある前提のもとで元のカメラモーションが特徴点の滑らかなモーションと等価になる。例えば、カメラの平行移動のために、カメラから対象物までの距離が、任意の方向への速度より十分大きい場合は、固定カメラは、結果的に固定特徴点となり、カメラの側方への定速度は、結果的に特徴点の一定速度となり、深さ方向の定速度は、結果的に特徴点が概略一定速度となり、同じ近似が加速度に対してなされる。別の実施例として、カメラズームについて、一定速度ズームは、結果的に特徴点の一定速度となる。さらに、別の実施例として、カメラの回転について、特徴点のモーションの微分は、角速度の二乗としてすることができる。
【００８５】
図７は、３つのビデオフレームと各ビデオフレームに対する切り取りウィンドウの実施例を示す。この実施例として、カメラ経路Ｃｔ＝Ｃ１、Ｃ２、Ｃ３は既知であり、図７の３つのビデオフレームの間での特徴点のモーションを描写している。特徴点は、各々の個々のビデオフレームにおけるドットで示されている。切り取りウィンドウはＢ（ｔ）で記述され、３つのビデオフレームの各々の中の長方形ボックスとして示されている。図４の方法に記載した最小化処理を用いて、ビデオフレーム間の残差モーション（Ｒ１及びＲ２）を最小化又は取り除くことができる。第２のビデオフレームが、Ｂ２により変換され、残差Ｒ１がゼロの場合、既知の特徴経路Ｆ２に沿うビデオフレームはＢ１に等しい。このようにして、次のビデオフレームには、前のビデオフレームのビデオ内容が含まれるが、結果としてビデオはより安定する。
【００８６】
図８Ａ及び図８Ｂは、カメラ経路モーション８０２に対する更新した又は滑らかなカメラ経路モーション８０４の実施例のグラフを示す。例えば、図８Ａは、ｘ軸に沿うモーション（又は水平モーション）を示す。元のカメラ経路モーション８０２は最適なＬ１経路と比べて周波数が変化している。
2013544050.tif 000027
図８Ｂは、ｙ軸に沿うモーション（又は垂直モーション）を示す。ビデオを記録している間に人が歩くことによる低周波の跳躍を、固定カメラモデルで置き換えることができ、その結果、グラフ上で時間の関数として、カメラのモーションが直線、実質的に直線、又は直線部分の集まりとして表すことができる。
【００８７】
上述の通り、図３及び図４で示した方法の実施例を用いて、２Ｄの元のカメラ経路モーションＣ（ｔ）は、最初に推定することができ、そして、新しい経路Ｐ（ｔ）を決定することができる。カメラ安定化切り取り変換Ｂ（ｔ）を決定することができ、Ｃ（ｔ）を安定化し、その結果Ｐ（ｔ）となる。１つの実施の形態において、最初の推定ステップＣ（ｔ）とそれに続く経路Ｐ（ｔ）を最適化するステップの２つのステップでＰ（ｔ）を解く代わりに、両方のステップを、特徴の一致点から安定化変換を直接最適化することにより同時に行うことができる。他の実施例において、残差の最小化のためにＣ（ｔ）を必要としないで、フレーム毎の変換Ｆ（ｔ）で十分な場合がある。同様に、Ｐ（ｔ）を罫線しないで、Ｂ（ｔ）を得ることができる。しかし、実施例によっては、Ｃ（ｔ）及びＰ（ｔ）を、連結して計算することができる。
【００８８】
上記図３及び図４で示した方法の実施例において、元のカメラ経路モーションＣ（ｔ）の推定を、フレームペア用い、そして、一次微分を基にして行うことができる。この方法は、カメラ経路の微分の連結を必要とし誤差の蓄積をもたらすＮのフレームに基づくものである。
【００８９】
図３及び図４で示した方法の実施例を用いて上述したように、元のカメラ経路モーションは、平均特徴経路変換の逆変換に近似する（例えば、カメラが左に動いたとき、画像ピクセル内容又は画像ピクセルの特徴は右に動く）。平均値は堅固な特徴点に対して計算することができる。他の実施例として、元のカメラ経路モーションの推定及び新しい最適なカメラ経路の決定を、すべての（又はいくつかの）特徴点を同時に安定化するために、行うことができる。例えば、すべての特徴に対して（例えば平行移動モデルに対して）Ｌ１最小化を用いて、より堅固な、平均に対抗するものとして特徴の軌道の「中央値」を結果として得られる。フレーム安定化変換Ａ（ｔ）は、各フレームで推定することができる。Ａ（ｔ）は、上述の図３及び図４の方法のカメラ経路又は切り取りウィンドウを変換することの逆変換として、各ビデオフレーム（及びそのフレーム中の等価な特徴）を変換する。例えば
2013544050.tif 000028
すなわち、フレーム安定化変換は切り取りウィンドウ変換の逆変換である。Ａ（ｔ）は、また、特徴点をカメラの方向とは逆の方向に動かすカメラ経路の揺れと解釈することができる。特徴点に揺れをその代わりに適用した場合、揺れは、特徴点を安定化させる。実施例において、Ａ（０）＝Ｉ（同一である、すなわち揺れがない）、Ａ（１）＝カメラが１０ピクセル右に平行移動する［Ａ（i）＊（ｘ,ｙ）＝（ｘ＋１０,ｙ）］である。Ａ（１）は、特徴点を左へ１０ピクセルだけ動かすことができる、すなわちフレーム０で（０，０）は、フレーム１で（−１０,０）に動く。（−１０,０）にＡ（１）を適用することで、フレームは（０，０）に戻り、これによりフレームが安定化する。安定化させた特徴点Ｇ（ｔ）は、以下に示す元の特徴Ｆ（ｔ）の関数として表現することができる。
Ｇｋ（ｔ）＝Ａ（ｔ）＊Ｆｋ（ｔ）  ［ｋ：特徴点指標］
Ｇｋｉ＝Ａｉ＊Ｆｋｉ  ［ｉ：時間指標］
滑らかさの基準は、最小化することにより以下のようにＧｋに適用される。
2013544050.tif 000029
【００９０】
式（３３）は、カメラ経路の逆変換としてのすべての点にわたる総和となる可能性に注意すべきである。切り取りウィンドウが元のフレーム内に残すための制約条件を、代替的方法で扱うことができる。例えば、前述のように制約条件を適用して、制約条件式を式（３４）のように示すことができる。
2013544050.tif 000030
ここで、ｗは、切り取りウィンドウの角である。しかし、これは、Ａの逆数の項で表現することができ、Ａのパラメータにおいて非線形（例えば、二次式）である。線形フレームワークを維持するために、Ａの回転及び相似成分は、フレームウィンドウの角の変換により、フレームウィンドウの角が直近の切り取りウィンドウの角までの距離より大きく動くことのないように、十分小さいと想定することができる。この想定により、変換されたフレームウィンドウの角を、元のフレームウィンドウの角により形成され他長方形の中であって、その反対のエンドポイントとして直近の切り取りウィンドウの角に置くことにより、Ａに対してより強固な制約条件を与える。この制約条件は、次のように表現することができる。すなわち、Ｌｅｔ（ｒ＿ｘ,ｒ＿ｙ）＝Ａ（ｔ）＊ｖ、ここで、ｖは、元のフレームウィンドウの角のうちの１つ（例えば、｛（０，０）,（０，１）,（１，０）,（１，１）｝のうちの１つ）である。また、（好ましい縮尺の切り取りマスクに基づき固定された）切り取りウィンドウに、左、頂部、底部、それぞれ、ｃｌ、ｃｔ、ｃｂ、ｃｒだけ右に境界を設ける。したがって、制約条件は。
2013544050.tif 000031
ここで、ｎは、不等式がＡ＊ｖを切り取った長方形に置くことに対応するように符号をつけた、切り取り長方形の境界線に対応する線分である。
【００９１】
図９Ａ及び図９Ｂは、ビデオフレーム９００及び特徴点ａ、ｂ、ｃ、及びｄの実施例を示す。この実施例において、点ａは式（３５）の制約条件により、Ａのラベルが付いたボックスの外に出ることができない（右側又は底部の境界を示す点線を横切ることができない）。一方、図４の方法で上述した制約条件では、変換したフレームウィンドウが小さい切り取りマスク９０２（例えば、図９Ａ及び図９Ｂに示した長方形の内部）を含んでいる限り、点線を越えたモーションが可能である。しかし、回転と縮小拡大は小さいことが望まれるので、これらの限定的な制約条件が妥当である。
【００９２】
さらに他の実施例では、安定化のために元のカメラ経路モーションの推定及び新しい最適なカメラ経路の決定を、フレームペア間での単一の変換を多く用い、すべての特徴点に対する変換をあまり用いないで、行うことができる。例えば、フレームペア間で少しの変換を用いることができ、変換の各々は異なる動きをする画像の異なる領域に対応することができる。各領域は異なる変換、従って式（１３）の異なるＭマトリックスに対応することができる。式（１３）は下記のようになる。
2013544050.tif 000032
ここで、ｋは領域変換の数を意味する。この変換の数は特徴の数（例えば、数百のオーダー）より少なく（例えば、３から４）、従って取り扱いやすく安定である。
【００９３】
変換の各々は、例えば、前景／背景の分離（背景より前景を安定化させる）、領域のサイズ（ちいさな領域より大きな領域を安定化させる）、及びテクスチャー加工の程度（テクスチャー加工されていない領域よりテクスチャー加工された領域を安定化させる）のような、種々の要素に応じて異なった重み付けを持つことができる。カメ、ラ経路の最適化により、すべての変換にわたる経路の滑らかさのＬ１ノルムを最小化する安定化を決定することができる。この最適化により、領域の不安定性を取り除く一方、滑らかにするために一群の変換を選択することが導かれる。変換が滑らかになるような選択は、ここの重要性（重み付け）の組み合わせにより決定することができる。
【００９４】
３．内容認識ビデオの安定化及びビデオの標的再設定
【００９５】
実施の形態の範囲内で、何らかの方法で記録した映像の変更を行うため又は変更を制限するために、任意の数の線形制約条件を加えることができる。例えば、切り取りウィンドウが元のビデオフレーム内に残るように制約条件を加えることができる。他の形式の制約条件を、元のビデオフレーム内の（例えば、顔検出器からの）顔や他の突出した（又は、ユーザーが印をつけた）物体／領域のような、内容認識制約条件として用いることができる。内容認識制約条件は、全体的に（例えば、ハードな制約条件）、又は、ある程度（例えば、ソフトな制約条件）、切り取りフレームに残る領域として特定することができる。推定した滑らかなカメラ経路がキーフレームから他のフレームへと制約条件を広めることができるので、この制約条件は、フレーム毎に特定することもできる。
【００９６】
１つの実施例によれば、境界ボックスのような境界ポリゴンを用いて関心のある領域を表している場合、閉じ込めるための１つの制約条件としては、ポリゴンの各頂点が切り取ったウィンドウ内にあることとすることができ、例えば、具体的な突出点が切り取りウィンドウ内に存在することを必要とすることができる。ｖがポリゴンの１つの頂点である場合、カメラ経路の最適化したフレームワークにおいて、制約条件は、式（３６）の逆となり以下で表すことができる。
2013544050.tif 000033
これは、ハードな制約条件と考えることができ、切り取ったウィンドウ内に関心のある領域を残すように制限することができる。
【００９７】
別の実施例として、もっと緩やかな制約条件として、切り取ったウィンドウの外に出る頂点にペナルティーを科す、ソフトな「片務的な」制約条件がある。
2013544050.tif 000034
【００９８】
１つの実施例によれば、特定の突出点が切り取りウィンドウ内にあることを要求するために、安定化変換Ｆｔの逆変換、すなわち、特徴点変換Ｗｔ（例えば、ワープ変換）を各フレームＩｔの特徴点に適用することができる最適化を行う。Ｆｔの逆変換はＧｔ＝Ｆｔ−１で表すことができる。切り取りウィンドウをＢｔで変換する代わりに、静的な切り取りウィンドウ内のモーションが、静的なモーション、線形モーション、又は放物線モーションからなるような現在の特徴の変換Ｗｔを決定する。変換はＢｔ＝Ｗｔ−１として得られる。
【００９９】
図１０は、突出点が固定した切り取りウィンドウ内に常駐するようなビデオフレームを変換するための固定した切り取りウィンドウを含むビデオフレームの実施例を示す。上部の３つのビデオフレームは、元のビデオフレームを表し、固定した切り取りウィンドウをこのビデオフレームを変換するために用いる。図示の通り、特徴の変換は、既知であり、特徴ポイントは下部の３つのビデオフレーム上に点で表されている。ワープ変換を用いることにより、上部の３つのビデオフレームは、固定した切り取りウィンドウ内にすべての内容が留まるように下部の３つのビデオフレームに変換され、ここでフレーム内のモーションが安定する。
【０１００】
最小化のためのワープ変換の対応する対象物は（上記式（７）と同様に）以下のように表すことができる。
2013544050.tif 000035
【０１０１】
１つの実施例によれば、突出内容に対する制約条件は、ワープ変換を用いて特定することができる。例えば、（例えば突出点マップ内に作られた）特定の点又は、（例えば、顔検出器からの）特徴的領域は、切り取りウィンドウ内に残るよう制約することができる。
2013544050.tif 000036
制約（ｂｘ、ｂｙ）は、上部左端からどれだけ離れてそれらの突出点があるかを示し、同様の制約条件が下部右端に導入される。
【０１０２】
図１１は、ビデオフレーム１１００とビデオフレーム１１００の変換のための切り取りウィンドウ１１０２の実施例を示す。図１１には、ビデオフレーム１１００を変換するための標準的な座標系が含まれている。ｂｘ＝ｃｘ及びｃｙ＝ｂｙにすることにより、突出点ｓｉを切り取りウィンドウ内に置くこととなる。ｂｘ＞ｃｘにするために、突出点を切り取りウィンドウ１１０２の領域、例えば、中心に動かすことができる。εｘ，εｙ＝０にすることにより、これはハードな制約条件であるが、この制約条件はフレーム長方形に含めるという制約条件と矛盾する可能性があり、経路の滑らかさを犠牲にするかもしれない。従って、εｘ及びεｙは、線形プログラミングの初期化のための対象（例えば、ｃＴｅ）に加えることのできる新しいスラック変数として扱うことができる。関連する重み付けにより、滑らかな経路と標的再設定の制約条件とのトレードオフを調整することができ、重み付けを１０とする実施例を用いることができる。
【０１０３】
包含のための制約条件を用いることができ、切り取りウィンドウポイントが最適化特徴変換の逆変換により変換することができるので、包含のための制約条件を上述のように調整することができる。１つの実施例によれば、変換されたフレームの角は、例えば上述の図９Ａ及び図９Ｂに示したように、切り取った長方形の周りの長方形の領域内にあることを必要とすることがある。
2013544050.tif 000037
【０１０４】
４．残差モーション（シャッターのブレ及び横揺れ）の除去
【０１０５】
揺れ除去のためのフレーム間でのモーションのモデル化のために、相似より高い数のＤＯＦを有するモーションモデルが必要となる。１つの実施の形態において、最適なカメラ経路を構築するために相似性Ｓｔと共にハイブリッドアプローチを用いることができる。最適なカメラ経路は、記録した映像のすべてのｋ＝３０のキーフレームに対して、ミスアラインメントを考慮に入れた高次元のホモグラフィを用いて決定することができる。
【０１０６】
図１２は、ビデオのビデオフレームの実施例と、そのビデオフレームに対するウォブルサプレッションの実行を示す。
2013544050.tif 000038
低次元の相似性Ｓ２は、高次元のホモグラフィＨ２により置き換えることができる。各中間的フレームについて、この置き換えに、先のキーフレームを適用することができる。これは、結果として、図１２に示すような、ピクセル毎に、ｑ１及びｑ２のサンプル位置となる（例えば、約２〜５ピクセルの平均誤差があると、２つの位置で線形混合を用いることを可能とする）。１つの実施例によれば、整合性のために、ゆがみは先のキーフレームから前方に及び次のキーフレームから後方に、位置ｑ１及びｑ２を線形に混合して、計算することができる。
【０１０７】
図１２のカメラ経路の実施例おいて、Ｃ２＝Ｃ１＊Ｆ２である。図１２において、Ｆ２は、変換は相似である（例えば、Ｃ２＝Ｃ１＊Ｓ２）ことを表すためにＳ２として表される。最適経路変換Ｐ２とＰ１との間の関係を決定するために、１つの実施例において、ビデオを完全に安定化することができるならば、Ｐ２＝Ｐ１＊Ｓ２、これは、Ｌ１最小化における残差がゼロであることを示すことがある。しかしながら、一般に、このようなことは起こらないことがあり、従って、Ｐ１からＰ２への変換は、相似、及び、Ｐ２＝Ｐ１＊Ｓ２＊Ｔ２のような残差モーションＴ２として言及することができる。従って、モーションＴ２＝Ｓ２−１Ｐ１−１Ｐ２である。
【０１０８】
１つの実施例によれば、Ｔ２は、導入された種々の制約条件の原因となる安定化変換Ｓ２の一番上に重ねる滑らかな付加的なモーションと考えることができる。経路変換Ｐ２は、Ｓ２を、Ｐ２の式において高いパラメータのモーションモデルＨ２（例えば、ホモグラフィ）で置換することにより、再計算することができ、Ｐ’２＝Ｐ１＊Ｈ２＊Ｔ２となる。これは結果として、より安定した結果となることがあり（例えば、より多くの自由度をぶれのあるシャッター、等に適用することができる）、ドリフト（例えば、スキュー、透視、等の連なりに起因する不安定性）を導くこともある。ドリフトを取り除くため又は埋め合わせるため、計算したＰｔ（例えば、相似に基づくドリフトのない）をキーフレーム（例えば、３０番目毎のフレーム）で用いることができ、その間に置換Ｈ２を用いることができる。１つの実施例によれば、この置換は、先のキーフレーム及び次のキーフレームから採用し、Ｐ’ｎ及びＰ”ｎを決定する。揺れを減らした新しいカメラ経路は、ａ’Ｐ’ｎ＋ａ”Ｐ”ｎの平均で重みづけたものとして得られる。線形の重みづけをキーフレームまでの距離、例えば、先のキーフレームではａ’は１でありａ”＝０であり、次のフレームでは、ａ’＝０でありａ”＝１である、線形区間の距離、に基づいて用いることができる
【０１０９】
５．ビデオ標的再設定
【０１１０】
安定化に加えてあるいは安定化よりむしろ内容認識制約条件も標的再設定に用いることができる。標的再設定とは、記録した映像とは異なる解像度のアスペクトレシオを持つ装置に合うよう記録した映像を修正することを指す。ここに記載した方法を用いて、切り取りウィンドウを、例えば、対象とする装置のアスペクトレシオに合致させることができる。さらに、内容認識制約条件を切り取りウィンドウ内にある突出した内容を確実にするために用いることができる。代替的に、特徴点の安定を行うこともできる。
【０１１１】
１つの実施の形態において、標的再設定のために、フレームのペア毎に前方特徴変換を推定し結果として得られたＭマトリックスを（例えば、安定化について）用いる代わりに、式（１３）（高次の項も含む）を最小化の代わりに、例えば安定化について、下式の最小化に対応して多くのマトリックスＭ＝Ｉ（単位行列）とする。
2013544050.tif 000039
【０１１２】
ビデオ標的再設定により、突出点、すなわち、視覚的に目立つ領域を保持しながらビデオのアスペクトレシオを変更することができる。
【０１１３】
切り取りウィンドウはあらかじめ定めた固定のサイズとすることができる。例えば、縮尺は、ビデオ安定化を最初に行うことによりあらかじめ定めることができ、次いで、すべてのフレームに対して変換したフレームウィンドウ内に適合する可能な最大サイズに切り取りウィンドウを広げる。すなわち、Ａ（ｔ）＊ｖ、ここでｖはすべてのフレームｔのウィンドウの角である、を決定する。（線分ｍで表された）最大の長方形を、以下のように決定することができる。
2013544050.tif 000040
ｍは位置合わせした軸となることができるので、全時間にわたって、フレームウィンドウの最小値と最大値を決定することにより、この長方形の計算を完了することができる。
【０１１４】
１つの実施の形態において、フレーム変換Ａ（ｔ）が可能な限り大きなフレームウィンドウとなるよう、片側制約条件に制約条件を加えることができる。対応する対象と制約条件は以下の形となる。
2013544050.tif 000041
【０１１５】
６．実施例のシステム及びコンピュータプログラム製品
【０１１６】
図１３は、ここに記載した少なくともいくつかの実施の形態に従い構成した計算機システムで用いられたコンピュータ装置１３００の実施例を示す。このコンピュータ装置は、パーソナルコンピュータ、モバイル機器、携帯電話、ビデオゲームシステム、又はグローバルポジショニングシステムとすることができ、クライアント装置、サーバー、システム、これらの組み合わせ、又は、図１及び図２に記載した構成部品の一部として実施することができる。基本構成１３０２、コンピュータ装置１３００には、１つ以上のプロセッサー１３１０及びシステムメモリー１３２０が含まれる。メモリーバス１３３０は、プロセッサー１３１０とシステムメモリー１３２０との間の通信に用いられる。好みの構成に応じて、プロセッサー１３１０は、マイクロプロセッサー（μＰ）、マイクロコントローラー（μＣ）、又は、これらの組み合わせとすることができる。メモリーコントローラー１３１５は、プロセッサー１３１０と共に、又は、実施形態中で用いることができ、メモリーコントローラー１３１５は、プロセッサー１３１０の内部に設けることが可能請求項ある。
【０１１７】
好みの構成に応じて、システムメモリー１３２０は、これに限定されるものではないが、（ＲＡＭのような）揮発性メモリー、（ＲＯＭ、フラッシュメモリー、等のような）不揮発性メモリー、又はこれらの組み合わせを含むどのようなタイプのものでもよい。システムメモリー１３２０には、１以上のアプリケーション１３２２及びプログラムデータ１３２４を含めることができ。アプリケーション１３２２には、本明細書の開示に従う、電子回路への入力を出力するよう構成したビデオ安定化アルゴリズム１３２３を含めることができる。プログラムデータ１３２４には、どのようなタイプのデータにも適したビデオ内容情報１３２５を含めることができる。いくつかの例示的な実施の形態において、アプリケーション１３２２は、オペレーティングシステム上でプログラムデータ１３２４と共に動作するよう構成することができる。
【０１１８】
コンピュータ装置１３００は、付加的な特徴又は機能、及び、基本構成１３０２と任意の装置及びインターフェースとの間の通信を容易にする付加的なインターフェースを持つことができる。例えば、データ記憶装置１３４０は、取り外し可能な記憶装置１３４２、取り外しのできない記憶装置１３４４、又はこれらの組み合わせを含んで提供することができる。取り外し可能な記憶装置及び取り外しのできない記憶装置の実施例には、いくつかの例をあげると、フレキシブルディスクドライブ及びハードディスクドライブ（ＨＤＤ）のような磁気ディスク装置、コンパクトディスク（ＣＤ）ドライブ又はディジタル多目的ディスク（ＤＶＤ）ドライブ、ソリッドステートドライブ（ＳＳＤ）、及びテープドライブが含まれる。コンピュータ記憶媒体には、コンピュータ読み取り可能命令、データ構造、プログラムモジュール、又は他のデータのような情報を記憶させる方法又は技術に組み込まれた、揮発性及び不揮発性媒体、持続性媒体、取り外し可能媒体、及び、取り外し不可能媒体を含めることができる。
【０１１９】
システムメモリー１３２０及び記憶装置１３４０は、コンピュータ記憶媒体の実施例である。コンピュータ記憶媒体には、これに限定されるものではないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリー又は他のメモリー技術、ＣＤ−ＲＯＭ、ディジタル多目的ディスク（ＤＶＤ）又は他の光学的記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶又は他の磁気記憶装置、又は、必要な情報を記憶するために用いることができ、コンピュータ装置１３００がアクセスすることができる他の媒体を含めることができる。このようなコンピュータ記憶媒体は、装置１３００の一部をなすことができる。
【０１２０】
コンピュータ装置１３００には、表示装置１３６０又はスピーカーのような種々の外部装置と１つ以上のＡ/Ｖポート１３５４又は通信インターフェース１３７０を介して通信するように構成することができる、グラフィック処理ユニット１３５２を含む出力インターフェース１３５０を含めることもできる。通信インターフェース１３７０には、１以上の通信ポート１３７４を介してネットワーク通信により１以上の他のコンピュータ装置１３８０と通信を容易にするよう構成することができるようにする、ネットワークコントローラー１３７２を含めることができる。この通信接続は通信媒体の１つの実施例である。通信媒体は、コンピュータ読み取り可能命令、データ構造、プログラムモジュール、又は、搬送波又は他の搬送機構のような、変調されたデータ信号中の他のデータを統合することができ、任意の情報送信媒体を含むことができる。変調されたデータは、１以上の特性を有する信号とすることができ、信号中に情報をエンコードするためのような方法で変化させることができる。実施例の方法により、これに限定されるものではないが、通信媒体には、有線ネットワークすなわち直接的な電線による接続、及び、音波、ラジオ周波数（ＲＦ）、赤外線（ＩＲ)、及び他の無線媒体のような配線媒体を含めることができる。
【０１２１】
コンピュータ装置１３００を、携帯電話のような小型フォームファクタ携帯（又はモバイル）電子装置、携帯情報端末（ＰＤＡ）、パーソナル媒体プレーヤー装置、ワイヤレスウェブ監視装置、パーソナルヘッドセット装置、特定アプリケーション装置、又はこれらの機能を含むハイブリッド装置の一部として組み込むことができる。コンピュータ装置８００は、ラップトップコンピュータ構成及び、ラップトップではないコンピュータ構成の両方を含むパーソナルコンピュータとしても実施することができる。
【０１２２】
いくつかの実施の形態において、開示した方法は、機械で読み取り可能なフォーマットでコンピュータ読み取り可能媒体又は他の持続性の媒体又は商品上にエンコードしたコンピュータプログラム命令として実施することができる。図１４は、本明細書に記載した少なくともいくつかの実施の形態により構成したコンピュータ装置においてコンピュータ処理するためのコンピュータプログラムを含むコンピュータプログラム製品１４００の実施例の概念的な部分図を概略的に示す。１つの実施の形態において、コンピュータプログラム製品１４００の実施例は、信号搬送媒体１４０１を用いて提供される。信号搬送媒体１４０１には、１以上のプロセッサーで実行したとき図１〜図１３について上述した機能の全部または一部を提供する、１以上のプログラム命令１４０２を含めることができる。従って、例えば、図３及び図４に示した実施の形態を参照して、ブロック３０２〜３１０、及び／又は、ブロック４０２〜４１０の１つ以上の形態を、信号搬送媒体１４０１に結び付けられた１以上の命令により実行することができる。加えて、図１４のプログラム命令１４０２は、例示的な命令を記述することもできる。
【０１２３】
いくつかの実施例において、信号搬送媒体１４０１は、これらに限定されるものではないが、ハードディスクドライブ、コンパクトディスク（ＣＤ）、ディジタルビデオディスク（ＤＶＤ）、ディジタルテープ、メモリー、等のようなコンピュータ読み取り可能媒体１４０３を包含することができる。いくつかの実施において、信号搬送媒体１４０１は、これらに限定されるものではないが、メモリー、読み／書き（Ｒ/Ｗ）ＣＤ、Ｒ/Ｗ・ＤＶＤ、等のようなコンピュータ読み取り可能媒体１４０４を包含することができる。いくつかの実施において、これらに限定されるものではないが、ディジタルの、及び／又は、アナログの通信媒体（例えば、光ファイバーケーブル、導波管、有線通信リンク、無線通信リンク、等）のような通信媒体１４０５を包含することができる。従って、例えば、信号搬送媒体１４０１は、無線形式の通信媒体１４０５（例えば、ＩＥＥＥ８０２．１１標準又は他の通信プロトコルに準拠した無線通信媒体）で搬送することができる。
【０１２４】
１つ以上のプログラミング命令１４０２は、例えば、コンピュータで実行可能な命令、及び／又は、論理命令とすることができる。いくつかの実施例において、コンピュータ読み取り可能媒体１４０３、コンピュータ記憶媒体１４０４、及び／又は、通信媒体１４０５のうちの１つ以上で、コンピュータ装置１３００に送られたプログラミング命令１４０２に応答して、図１３のコンピュータ装置１３００のようなコンピュータ装置が、種々の操作、機能、又は動作を行うよう構成することができる。
【０１２５】
当然のことながら、ここに記載の構成は、単なる実施例である。従って、当業者であれば他の構成又は他の構成要素（例えば、機械、インターフェース、機能、順序、及び機能のグループ分け、等）を用いることができること、及び、いくつかの構成要素は省略しても所望の結果が得られることを理解するであろう。さらに、ここに記載の構成要素の多くは、別々の又は分散した構成部品として、又は任意の組み合わせ及び場所で他の構成部品と組み合わせて、実行することのできる、機能的存在として記述している。
【０１２６】
多くの特徴及び実施の形態をここに開示したが、他の特徴及び実施の形態が可能なことは当業者には明らかである。ここに開示した種々の特徴及び実施の形態図解のためのものであり、限定を意図するものではなく、実際の権利範囲は以下の特許請求の範囲によって示されるものであり、特許請求の範囲で示したような範囲と均等なものも含まれる。当然のことながら、ここに記載の用語の言い回しも特定の実施の形態を説明するためだけのものであり、限定のためのものではない。
【図１】
2013544050.tif 000045
【図２】
2013544050.tif 000046
【図３】
2013544050.tif 000047
【図４】
2013544050.tif 000048
【図５Ａ】
2013544050.tif 000049
【図５Ｂ】
2013544050.tif 000050
【図５Ｃ】
2013544050.tif 000051
【図５Ｄ】
2013544050.tif 000052
【図６】
2013544050.tif 000053
【図７】
2013544050.tif 000054
【図８Ａ】
2013544050.tif 000055
【図８Ｂ】
2013544050.tif 000056
【図９Ａ】
2013544050.tif 000057
【図９Ｂ】
2013544050.tif 000058
【図１０】
2013544050.tif 000059
【図１１】
2013544050.tif 000060
【図１２】
2013544050.tif 000061
【図１３】
2013544050.tif 000062
【図１４】
2013544050.tif 000063
【手続補正書】
【提出日】平成25年6月28日(2013.6.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオを記録したカメラの元のモーション経路を推定するステップと、
各時間ｔにおける、前記カメラの前記元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を決定するステップと、
各時間ｔにおける、前記カメラの前記元のモーション経路の前記実質的に一定の経路、又は、前記実質的に一定の速度、又は、前記実質的に一定の加速度を含む、前記カメラの前記元のモーション経路の修正したモーションカメラ経路を決定するステップと、
前記修正したモーションカメラ経路と、前記カメラの前記元のモーション経路とに基づいて、前記カメラの前記元のモーション経路をどのように前記修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定するステップであって、該切り取りウィンドウ変換は、前記カメラの前記元のモーション経路に与える変化を制限する少なくとも１つの制約条件により決定されることを特徴とするステップと、
前記カメラの前記元のモーション経路の視点から前記修正したモーションカメラ経路の視点へ作り直すために、前記ビデオに前記切り取りウィンドウ変換を適用するステップと、
を具備するビデオを処理する方法。
【請求項２】
前記切り取りウィンドウ変換を決定するステップは、前記ビデオのビデオフレームに対して１以下の所定の縮尺の切り取りウィンドウを決定するステップであって、該切り取りウィンドウは、前記元のフレーム内に収まるよう定義されることを特徴とするステップを具備することを特徴とする請求項１に記載の方法。
【請求項３】
前記修正したモーションカメラ経路を決定するステップは、式
2013544050.tif 000064
ここで、ｐは前記修正したモーションカメラ経路、ａ，ｂ，及びｃ は前記切り取りウィンドウがすべての時間ｔに対する前記ビデオのビデオフレーム内の収まるように定めた線形の重み付けである、
を最小化するステップを具備することを特徴とする請求項２に記載の方法。
【請求項４】
前記式
2013544050.tif 000065
を最小化するステップは、Ｌ１最小化を行うことを特徴とする請求項３に記載の方法。
【請求項５】
線形の重み付けｃは、重み付けａ及びｂの最大値より桁の大きなマグニチュードになるよう選ばれることを特徴とする請求項３に記載の方法。
【請求項６】
前記カメラの前記元のモーション経路を決定するステップは、
前記ビデオのフレームの特徴点を抽出するステップと、
前記ビデオの前記フレーム同士で所定の特徴を一致させるステップと、
前記ビデオの前記フレーム同士で一致した前記特徴のモーションを推定するための線形モーションモデルを決定するステップと、
前記カメラの前記元のモーション経路の推定を行うために前記線形モーションモデルを結合するステップと、
を具備することを特徴とする請求項１に記載の方法。
【請求項７】
前記カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用するステップは、前記ビデオフレームに対して、内容を切り取るステップを具備することを特徴とする請求項１に記載の方法。
【請求項８】
前記少なくとも１つの制約条件には、前記元のモーション経路の前記ビデオのビデオフレーム中に前記変換したビデオのビデオフレームの一部を含めることを要求する包含による制約条件が含まれることを特徴とする請求項７に記載の方法。
【請求項９】
前記少なくとも１つの制約条件には、前記ビデオ中に実質的にズーミングを保持することを前記修正したモーションカメラ経路に要求する近似による制約条件が含まれることを特徴とする請求項７に記載の方法。
【請求項１０】
前記少なくとも１つの制約条件には、前記ビデオのビデオフレーム中の選択したポイントが前記修正したモーションカメラ経路に残ることを要求する突出による制約条件が含まれることを特徴とする請求項７に記載の方法。
【請求項１１】
前記少なくとも１つの制約条件には、前記ビデオのビデオフレーム中のポイントが前記修正したモーションカメラ経路のビデオフレーム中のあらかじめ定めた領域の外に出さないよう制限することが含まれることを特徴とする請求項７に記載の方法。
【請求項１２】
前記少なくとも１つの制約条件には、前記ビデオのビデオフレーム中のポイントが切り取りウィンドウ内に入ることを要求することが含まれることを特徴とする請求項７に記載の方法。
【請求項１３】
前記少なくとも１つの制約条件には、前記切り取りウィンドウが前記ビデオの前記ビデオフレームの内側に残留することを要求することが含まれることを特徴とする請求項１２に記載の方法。
【請求項１４】
前記少なくとも１つの制約条件には、関心のある領域を囲むポリゴンの各頂点が切り取ったウィンドウ内にあることを要求することが含まれることを特徴とする請求項１２に記載の方法。
【請求項１５】
前記少なくとも１つの制約条件は、フレーム毎に指示することを特徴とする請求項７に記載の方法。
【請求項１６】
前記切り取りウィンドウは、Ｂ（ｔ）であり、ここで、
2013544050.tif 000066
そして、Ｃ（ｔ）は前記元のモーション経路であり、Ｐ（ｔ）は前記修正したモーションカメラ経路であることを特徴とする請求項１に記載の方法。
【請求項１７】
カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用するステップは、前記ビデオを安定化するステップを具備することを特徴とする請求項１に記載の方法。
【請求項１８】
カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用するステップは、前記ビデオとは異なる解像度のアスペクトレシオの装置に合うよう標的再設定するステップを具備することを特徴とする請求項１に記載の方法。
【請求項１９】
コンピュータ装置に、
ビデオを記録したカメラの元のモーション経路を推定する機能と、
各時間ｔにおける、前記カメラの前記元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を決定する機能と、
各時間ｔにおける、前記カメラの前記元のモーション経路の前記実質的に一定の経路、又は、前記実質的に一定の速度、又は、前記実質的に一定の加速度を含む、前記カメラの前記元のモーション経路の修正したモーションカメラ経路を決定する機能と、
前記修正したモーションカメラ経路と、前記カメラの前記元のモーション経路とに基づいて、前記カメラの前記元のモーション経路をどのように前記修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定する機能であって、該切り取りウィンドウ変換は、前記カメラの前記元のモーション経路に与える変化を制限する少なくとも１つの制約条件により決定されることを特徴とする機能と、
前記カメラの前記元のモーション経路の視点から前記修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能と、
を実行させることを特徴とする前記コンピュータ装置で実行可能な命令、を記録した持続性の（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ） コンピュータ読み取り可能媒体。
【請求項２０】
前記カメラの前記元のモーション経路を決定する機能は、
前記ビデオのフレームの特徴点を抽出する機能と、
前記ビデオの前記フレーム同士で所定の特徴を一致させる機能と、
前記ビデオの前記フレーム同士で一致した前記特徴のモーションを推定するための線形モーションモデルを決定する機能と、
前記カメラの前記元のモーション経路の推定を行うために前記線形モーションモデルを結合する機能と、
を具備することを特徴とする請求項１９に記載の持続性のコンピュータ読み取り可能媒体。
【請求項２１】
前記カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能は、前記ビデオフレームに対して、内容を切り取る機能を具備し、前記少なくとも１つの制約条件には、前記元のモーション経路の前記ビデオのビデオフレーム中に前記変換したビデオのビデオフレームの一部を含めることを要求する包含による制約条件が含まれることを特徴とする請求項１９に記載の持続性のコンピュータ読み取り可能媒体。
【請求項２２】
カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能は、前記ビデオを安定化する機能を具備することを特徴とする請求項１９に記載の持続性のコンピュータ読み取り可能媒体。
【請求項２３】
カメラの元のモーション経路の視点から修正したモーションカメラ経路の視点へ作り直すためにビデオに切り取りウィンドウ変換を適用する機能は、前記ビデオとは異なる解像度のアスペクトレシオの装置に合うよう標的再設定する機能を具備することを特徴とする請求項１９に記載の持続性のコンピュータ読み取り可能媒体。
【請求項２４】
ビデオを受け取り、該ビデオ内の物体のモーションに基づき、該ビデオを記録したカメラの元のモーション経路を推定するよう構成されたカメラ経路推定エンジンと、
前記カメラの前記元のモーション経路をどのように前記修正したモーションカメラ経路に修正するかを記載する切り取りウィンドウ変換を決定し、該切り取りウィンドウ変換は、前記カメラの前記元のモーション経路に与える変化を制限する少なくとも１つの制約条件により決定されるよう構成されたビデオ安定化及び標的再設定エンジンと、
前記カメラの前記モーション経路の視点から前記修正したモーションカメラ経路の視点へ作り直すために前記ビデオに前記切り取りウィンドウ変換を適用するよう構成されたビデオ変換エンジンと、
を具備することを特徴とするカメラ経路変換システム。
【請求項２５】
前記ビデオ安定化及び標的再設定エンジンは、
各時間ｔにおける、前記カメラの前記元のモーション経路の実質的に一定の経路、又は、実質的に一定の速度、又は、実質的に一定の加速度を決定し、各時間ｔにおける、前記カメラの前記元のモーション経路の前記実質的に一定の経路、又は、前記実質的に一定の速度、又は、前記実質的に一定の加速度を含む、前記カメラの前記元のモーション経路の修正したモーションカメラ経路を決定するよう構成されていることを特徴とする請求項２４に記載のカメラ経路変換システム。
【請求項２６】
前記カメラ経路推定エンジンと、前記ビデオ安定化及び標的再設定エンジンと、前記ビデオ変換エンジンを具備するビデオホスティングサーバーをさらに具備することを特徴とする請求項２４に記載のカメラ経路変換システム。
【請求項２７】
前記ビデオホスティングサーバーは、前記ビデオを受け取り、該ビデオを安定化させるために、前記カメラの前記元のモーション経路の視点から前記修正したモーションカメラ経路の視点へ作り直し、そして、該安定化させたビデオをビデオホスティングウェブサイトにアップロードさせるよう構成されていることを特徴とする請求項２６に記載のカメラ経路変換システム。
【国際調査報告】
2013544050.tif 000067