(57)【特許請求の範囲】
【請求項１】
入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成する変換行列生成部と、
前記入力映像の切り出し領域を特定する切り出し領域特定部と、
前記変換行列生成部により生成されたフレームごとの変換行列と、前記切り出し領域特定部により特定された切り出し領域と、前記入力映像の解像度を利用して、前記入力映像における各フレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行うために配置された画像合成部と
を備え、
前記変換行列生成部は、
前記入力映像におけるフレームのそれぞれに対して、グローバル運動推定と意図運動推定とを行うことで、当該フレームごとの変換行列を生成し、
前記フレームに含まれる画像ブロックの運動ベクトルを示す局所運動ベクトルのうち、当該フレームから選択された一または複数の局所運動ベクトルを示す選定局所運動ベクトルのそれぞれに重みを割り当て、
当該フレームの全ての選定局所運動ベクトルの加重平均によって当該フレームのグローバル運動ベクトルを推定し、
前記フレームに含まれる画像ブロックの選定局所運動ベクトルのそれぞれと、当該フレームのグローバル運動ベクトルとを用いたガウス関数に基づいて、選定局所運動ベクトルの重みを算出することを特徴とする手ぶれ補正装置。
【請求項２】
入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成する変換行列生成部と、
前記入力映像の切り出し領域を特定する切り出し領域特定部と、
前記変換行列生成部により生成されたフレームごとの変換行列と、前記切り出し領域特定部により特定された切り出し領域と、前記入力映像の解像度を利用して、前記入力映像における各フレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行うために配置された画像合成部と
を備え、
前記変換行列生成部は、
前記入力映像におけるフレームのそれぞれに対して、グローバル運動推定と意図運動推定とを行うことで、当該フレームごとの変換行列を生成し、
前記フレームを中心とするウィンドウのサイズを、前記ウィンドウ内のフレーム間運動の方向の変更の数に応じて調節し、
当該ウィンドウ内の前記入力映像の各フレームのグローバル運動推定の結果を平滑化することにより当該フレームの意図運動を推定することを特徴とする手ぶれ補正装置。
【請求項３】
入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成する変換行列生成部と、
前記入力映像の切り出し領域を特定する切り出し領域特定部と、
前記変換行列生成部により生成されたフレームごとの変換行列と、前記切り出し領域特定部により特定された切り出し領域と、前記入力映像の解像度を利用して、前記入力映像における各フレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行うために配置された画像合成部と
を備え、
前記切り出し領域特定部は、
前記変換行列に前記入力映像のフレームの縦方向と横方向の二つの変換パラメータが含まれる場合に、縦方向の変換パラメータと横方向の変換パラメータのそれぞれに対して、前記入力映像の全てのフレームの変換行列における変換パラメータの絶対値を求め、求めた絶対値それぞれについて、その絶対値以下となる絶対値の数が全ての絶対値の数に対する割合をそれぞれ算出し、算出した割合が少なくとも所定割合となる任意の絶対値を切り出し領域の当該方向に対する変換パラメータとして選択すること、または、前記縦方向の変換パラメータと前記横方向の変換パラメータのそれぞれに対して、前記入力映像の全てのフレームの変換行列における変換パラメータの絶対値区間を統計することにより、前記入力映像のフレームの変換行列における変換パラメータの値のうち、前記入力映像のフレームが切り出された後に少なくとも所定の割合のフレームがブラックエリアを有しないような値を前記入力映像の切り出し領域として選択することを特徴とする手ぶれ補正装置。
【請求項４】
コンピュータが実行する手ぶれ補正方法であって、
入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成し、
前記入力映像の切り出し領域を特定し、
前記変換行列を生成する処理により生成されたフレームごとの変換行列と、前記切り出し領域を特定する処理により特定された切り出し領域と、前記入力映像の解像度とを利用して、前記入力映像におけるフレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行う
処理を含み、
前記変換行列を生成する処理は、
前記入力映像におけるフレームのそれぞれに対して、グローバル運動推定と意図運動推定とを行うことで、当該フレームごとの変換行列を生成し、
前記フレームに含まれる画像ブロックの運動ベクトルを示す局所運動ベクトルのうち、当該フレームから選択された一または複数の局所運動ベクトルを示す選定局所運動ベクトルのそれぞれに重みを割り当て、
当該フレームの全ての選定局所運動ベクトルの加重平均によって当該フレームのグローバル運動ベクトルを推定し、
前記フレームに含まれる画像ブロックの選定局所運動ベクトルのそれぞれと、当該フレームのグローバル運動ベクトルとを用いたガウス関数に基づいて、選定局所運動ベクトルの重みを算出することを特徴とする手ぶれ補正方法。 
【請求項５】
コンピュータが実行する手ぶれ補正方法であって、
入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成し、
前記入力映像の切り出し領域を特定し、
前記変換行列を生成する処理により生成されたフレームごとの変換行列と、前記切り出し領域を特定する処理により特定された切り出し領域と、前記入力映像の解像度とを利用して、前記入力映像におけるフレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行う
処理を含み、
前記変換行列を生成する処理は、
前記入力映像におけるフレームのそれぞれに対して、グローバル運動推定と意図運動推定とを行うことで、当該フレームごとの変換行列を生成し、
前記フレームを中心とするウィンドウのサイズを、前記ウィンドウ内のフレーム間運動の方向の変更の数に応じて調節し、
当該ウィンドウ内の前記入力映像の各フレームのグローバル運動推定の結果を平滑化することにより当該フレームの意図運動を推定することを特徴とする手ぶれ補正方法。
【請求項６】
コンピュータが実行する手ぶれ補正方法であって、
入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成し、
前記入力映像の切り出し領域を特定し、
前記変換行列を生成する処理により生成されたフレームごとの変換行列と、前記切り出し領域を特定する処理により特定された切り出し領域と、前記入力映像の解像度とを利用して、前記入力映像におけるフレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行う
処理を含み、
前記切り出し領域を特定する処理は、
前記変換行列に前記入力映像のフレームの縦方向と横方向の二つの変換パラメータが含まれる場合に、縦方向の変換パラメータと横方向の変換パラメータのそれぞれに対して、前記入力映像の全てのフレームの変換行列における変換パラメータの絶対値を求め、求めた絶対値それぞれについて、その絶対値以下となる絶対値の数が全ての絶対値の数に対する割合をそれぞれ算出し、算出した割合が少なくとも所定割合となる任意の絶対値を切り出し領域の当該方向に対する変換パラメータとして選択すること、または、前記縦方向の変換パラメータと前記横方向の変換パラメータのそれぞれに対して、前記入力映像の全てのフレームの変換行列における変換パラメータの絶対値区間を統計することにより、前記入力映像のフレームの変換行列における変換パラメータの値のうち、前記入力映像のフレームが切り出された後に少なくとも所定の割合のフレームがブラックエリアを有しないような値を前記入力映像の切り出し領域として選択することを特徴とする手ぶれ補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手ぶれ補正方法及び手ぶれ補正装置に関する。
【背景技術】
【０００２】
近年、消費者市場において、意図しないカメラ運動、すなわち無意図運動である手ぶれを補正するための手ぶれ補正システムが益々流行してきている。図９は、一次元方向における手ぶれの補正方法の模式図を示している。図９に示したように、丸印が結ばれた線はカメラの実際運動、三角印が結ばれた線は撮影者の意図したカメラの運動、すなわち意図運動を示す。意図運動とは、人間の意図による運動、例えば人為的なカメラの移動である。実際運動には撮影者の意図運動と無意図運動が含まれる。手ぶれ補正は、図９の矢印に示したように、カメラの運動から無意図運動を除去して意図運動のみを得るものである。このため、処理後のビデオは視覚的にスムーズになり、無意図運動による画面ゆれが低減される。
【０００３】
一般的に、手ぶれ補正システムは、（画像全体に含まれる動きを推定する）グローバル運動推定と、意図運動推定と、画像合成との三つの部分を含む。
【０００４】
グローバル運動推定と意図運動推定により、各フレームに用いられる変換行列を特定する。この変換行列は、入力されるビデオ映像（入力映像）におけるフレームのそれぞれを無意図運動の除去されたフレーム、すなわち手ぶれの補正されたフレームに変換するために用いられる。一般的に、変換行列には、一方向又は複数方向において手ぶれ補正を行うため、一個又は複数個のパラメータ(変換パラメータとも称す)が含まれる。
【０００５】
一般的に、画像合成は、変換行列を利用してフレームを変換する処理、一定の切り出し枠でフレームを切り出す処理、及び切り出されたフレームを拡大して元の縦横比のフレームを取得する処理等に関する。フレームを変換すると未定義の領域（画像の領域外、ブラックエリアとも称す)が残り、視覚的な劣化が発生してしまうため、ブラックエリアを除去することが求められる。一般的に、図１０に示したように、変換後のフレーム１０ａからブラックエリア１０ｂを含まない領域１０ｃを切り出し、拡大することで、ブラックエリアを除去したフレーム１０ｄを合成する。あるいは、変換後のフレームに隣接するフレームからブラックエリアに対応する情報を取得し、フレームを合成することによってブラックエリアを除去する。
【０００６】
従来の手ぶれ補正の技術では、図１１の点線枠に示したように、同じ巡のプロセスとして運動推定と画像合成とがフレームごとに行われる。つまり、従来の技術では、フレームが１つ選択され（ステップＳ１１１０）、選択されたフレームごとに、グローバル運動推定と（ステップＳ１１２０）、意図運動推定と（ステップＳ１１３０）、画像合成と（ステップＳ１１４０）が一巡のプロセスとして順に行われる。そして、次のフレームが選択され、再びこの一巡のプロセスがフレームごとに行われる。この一巡のプロセスは、全てのフレームに対して処理が終了するまで行われる（ステップＳ１１５０Ｎｏ）。そして、全てのフレームに対して処理が終了すると（ステップＳ１１５０Ｙｅｓ）、フレームが出力される（ステップＳ１１６０）。実際の適用の例示として、デコーダでビデオに対して一回のデコードを行い、デコードしながらデコードされたフレームに対して運動推定及び画像合成を行う。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−３１０７９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、上記従来技術には、入力映像に存在するブレやジッタなどの動きをスムーズにすることができない場合があるという問題があった。これは、ブラックエリアの大きさと運動のスムーズさとの間にトレードオフの関係があるため、運動をスムーズにすればするほどフレームに発生するブラックエリアが大きくなってしまうからである。このため、上記従来技術では、ブラックエリアの大きさを所定値に収めるために運動のスムーズさを犠牲することがあった。例えば、手ぶれを除去・補正したフレームが所定値以上のブラックエリアを有する場合には、ブラックエリアが所定値より小さくなるまで変換行列における変換パラメータを減少させていた。
【０００９】
開示の技術は、上記に鑑みてなされたものであって、入力映像の動きをスムーズにすることができる手ぶれ補正方法及び手ぶれ補正装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
以下に、開示技術のいくらかの方面についての基本的な理解のために、開示技術についての概要を記述する。この概要は開示技術についての全面的な概述ではないことを理解すべきである。これは、開示技術のキー又は重要な部分を確定することを意図せず、また、開示技術の範囲を限定することを意図しないことを理解すべきである。その目的は、ただ簡素した形態でいくらかの概念を与えることにある。これを、後述のより詳しい記述の前書きとする。
【００１１】
開示技術による一態様は、入力映像における各フレームのそれぞれに対して当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成すること、前記入力映像の切り出し領域を特定すること、及び前記入力映像における各フレームの変換行列、前記切り出し領域、及び前記入力映像の解像度を利用して、前記入力映像における各フレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行うことを含む手ぶれ補正方法を提供する。
【００１２】
開示技術による別の一態様は、入力映像における各フレームのそれぞれに対して当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成するために配置された変換行列生成部と、前記入力映像の切り出し領域を特定するために配置された切り出し領域特定部と、前記入力映像における各フレーム毎の変換行列、前記切り出し領域、及び前記入力映像の解像度を利用して、前記入力映像における各フレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行うために配置された画像合成部とを備える手ぶれ補正装置を提供する。
【００１３】
開示技術による別の一態様は、入力映像における各フレームのそれぞれに対して当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成し、当該変換行列を利用して当該フレームを変換すること、前記入力映像の切り出し領域を特定すること、及び前記切り出し領域及び前記入力映像の解像度を利用して前記入力映像における各フレームのそれぞれに対して切り出しと拡大を含む画像合成を行うことを含む手ぶれ補正方法を提供する。
【発明の効果】
【００１４】
本願の開示する技術の一つの態様によれば、入力映像の動きをスムーズにすることができるという効果を奏する。
【図面の簡単な説明】
【００１５】
以下に図面に基づく開示技術に係る実施例に対する説明を参照すれば、開示技術の上記及びその他の目的、特徴と利点をより容易に理解することができる。図面における部品は開示技術の原理を示すためのものに過ぎない。図面において、同一又は類似の技術的特徴又は部品は、同一又は類似の図面符号で示される。
【００１６】
【図１】図１は、開示技術による一実施例の手ぶれ補正方法の模式的なフローチャートである。
【図２】図２は、開示技術による一実施例における変換行列の生成の模式的なフローチャートである。
【図３】図３は、開示技術による一実施例におけるグローバル運動推定の模式的なフローチャートである。
【図４】図４は、開示技術による一実施例における切り出し領域の特定の模式的なフローチャートである。
【図５】図５は、開示技術による一実施例におけるヒストグラムによる切り出し領域の特定の例示図である。
【図６】図６は、開示技術による一実施例における画像合成の模式的なフローチャートである。
【図７】図７は、開示技術による一実施例における手ぶれ補正装置の模式的なブロック図である。
【図８】図８は、開示技術による実施例にかかる方法及び装置を実施するために用いられるコンピュータの模式的なブロック図である。
【図９】図９は、従来の技術における一次元方向上の手ぶれを除去する方法の模式図である。
【図１０】図１０は、従来の技術におけるフレームを切り出してブラックエリアを除去する処理を説明するための図である。
【図１１】図１１は、従来の技術における手ぶれ補正方法の模式的なフローチャートである。
【発明を実施するための形態】
【００１７】
以下に、図面を参照して開示技術の実施例を説明する。開示技術の一つの図面あるいは一種類の実施形態において記述された要素と特徴は、一つ又は複数の別の図面あるいは実施形態において示した要素と特徴とを組合せることができる。明瞭のため、図面と説明には、開示技術と関係なく、当業者にとって既知の部品及び処理に対する表示と記述を省略する。
【実施例１】
【００１８】
図１は、開示技術の一実施例における手ぶれ補正方法の模式的なフローチャートを示している。図１に示したように、本実施例において、手ぶれ補正装置は、運動推定と画像合成とを二巡に分けて行う。手ぶれ補正装置は、第一巡の処理として、入力映像におけるフレームのそれぞれに対して、フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成する（ステップＳ１１０）。手ぶれ補正装置は、入力映像の切り出し領域を特定する（ステップＳ１２０）。手ぶれ補正装置は、第二巡の処理として、入力映像におけるフレームのそれぞれに対して画像合成を行う（ステップＳ１３０）。具体的に、手ぶれ補正装置は、それぞれのフレームの変換行列を利用してそれぞれのフレームを手ぶれの除去されたフレームに変換する。手ぶれ補正装置は、ステップＳ１２０において特定した切り出し領域を利用してそれぞれのフレームを切り出す。手ぶれ補正装置は、入力映像の解像度を利用してそれぞれのフレームを拡大する。
【００１９】
図２を用いて、図１のステップＳ１１０に示した変換行列を生成する処理について説明する。図２は、開示技術による一実施例における変換行列の生成の模式的なフローチャートを示している。図２に示したように、手ぶれ補正装置は、入力映像のフレームを１つ選択し（ステップＳ２１０）、グローバル運動推定と（ステップＳ２２０）、意図運動推定とを行う（ステップＳ２３０）。そして、手ぶれ補正装置は、グローバル運動推定と意図運動推定による結果に基づいて、選択されたフレームの変換行列を生成する（ステップＳ２４０）。変換行列には、各フレームの変換パラメータが含まれる。手ぶれ補正装置は、ステップＳ２１０からステップＳ２４０までの処理を、全てのフレームについて処理が終了するまで繰り返し行う（ステップＳ２５０Ｎｏ）。全てのフレームについて処理が終了した場合には（ステップＳ２５０Ｙｅｓ）、変換行列を生成する処理を終了する。
【００２０】
説明を容易にするために、仮にＸｎを用いて入力映像におけるフレームｎの画素位置を示す。ここで、Ｘ＝（ｘ，ｙ，１）Ｔである。Ｈｎはフレームｎ−１からフレームｎまでの３×３変換行列、すなわちＸｎ＝Ｈｎ・Ｘｎ−１である。Ｈｉｎｎはフレームｎ−１からフレームｎまでの意図運動を示す。ＣＨｎとＣＨｉｎｎはそれぞれ累積されたグローバル運動と累積された意図運動を示す。つまり、下記の式（１）及び式（２）が成り立つ。
【００２１】
【数１】
0005772341.tif 000002
【００２２】
【数２】
0005772341.tif 000003
【００２３】
入力映像のフレームｎにおける画素位置Ｘｎが与えられると、手ぶれの除去は所望しないカメラの運動を有しないＹｎを取得することになる。したがって、下記の式（３）及び式（４）が成り立つ。なお、Ｙｎは、フレームｎにおける所望しないカメラの運動を有しない画素位置を示す。
【００２４】
【数３】
0005772341.tif 000004
【００２５】
【数４】
0005772341.tif 000005
【００２６】
また、式（３）と式（４）とを組み合わせることにより、下記の式（５）が得られる。
【００２７】
【数５】
0005772341.tif 000006
【００２８】
なお、Ｉｎは、入力映像のフレームｎにおける位置Ｘｎを必要な位置Ｙｎに変換するために用いられる変換行列である。変換行列Ｉｎを利用することにより、入力映像の各フレームを無意図運動の除去されたフレーム、すなわち手ぶれの除去されたフレームに変換することができる。
【００２９】
本明細書において、平行移動手ぶれは、ビデオ品質の損失に繋がる主要原因であると考えられる。ここで、例えば、平行移動手ぶれによる水平方向の移動値をδｘとし、垂直方向の移動値をδｙとすると、Ｈ＝［１，０，δｘ；０，１，δｙ；０，０，１］となる。この場合、Ｈ行列にはδｘ及びδｙの二つの変数、すなわち二つの変換パラメータが含まれる。なお、開示技術の方法は運動モデルに限定されるものではなく、Ｈ行列にはより多いあるいはより少ない変数が含まれていても良い。
【００３０】
開示技術による実施例における手ぶれ補正方法において、手ぶれ補正装置は、各種の従来技術におけるグローバル運動推定方法を採用してグローバル運動推定を行うことができる。手ぶれ補正装置は、A.  Litvin、J.  Konrad及びW.  Karlが「Probabilistic  video  stabilization  using  kalman  filtering  and  mosaicking」（  IS&T/SPIE  symposium  on  Electronic  Imaging,  Image  and  Video  Communication  and  Processing,  2003）において提案した照合による方法に加えて、ポイントマッチングによる方法を採用することができる。例えば、手ぶれ補正装置は、F.  Vella、A.  Castorina、M.  Mancuso及びG.  Messinaが「Digital  image  stabilization  by  adaptive  block  motion  vectors  filtering」（  IEEE  Transactions  on  Consumer  Electronics,  第48巻,  no.  3,  2002年）において提案したブロックマッチングによる方法、H.-C.  Chang、S.-H.  Lai及びK.-R.  Luが「A  robust  real-time  video  stabilization  algorithm」（  Journal  of  Visual  Communication  and  Image  Representation,  第17巻,  no.  3,  2006年）において提案したオプティカルフロー法、S.  Battiato、G.  Gallo、G.  Puglisi及びS.  Scellatoが「Sift  features  tracking  for  video  stabilization」（  International  Conference  on  Image  Analysis  and  Processing,  2007年）において提案したSIFTポイント追跡方法、及びC.  Wang、J.-H.  Kim、K.-Y.  Byun、J.  NiとS.-J.  Koが「Digital  image  stabilization  by  adaptive  block  motion  vectors  filtering」（  IEEE  Transactions  on  Consumer  Electronics,  第55巻,  no.  1,  2009年）において提案したKLTトラッカー方法を採用して一グループの画素のマッチングペアを取得することができる。マッチングペアが与えられると、手ぶれ補正装置は、S.  Battiato、G.  Gallo、G.  PuglisiとS.  Scellatoが「Sift  features  tracking  for  video  stabilization」（  International  Conference  on  Image  Analysis  and  Processing,  2007年）において提案した最小二乗推定法、RANSAC法、J.  Yang、D.  SchonfeldとM.  Mohamedが「Robust  video  stabilization  based  on  particle  filtering  tracking  of  projected  camera  motion」（  IEEE  Transactions  on  Circuits  and  Systems  for  Video  Technology,  第19巻,  no.  7,  2009年）において提案した粒子フィルタ、及びS.  Battiato、G.  PuglisiとA.  R.  Brunaが「A  robust  video  stabilization  system  by  adaptive  motion  vectors  filtering」（  IEEE  International  Conference  on  Multimedia  and  Expo,  2008年）において提案したフィルタリング方法を採用してビデオにおける連続フレーム間のグローバル運動を推定することができる。
【００３１】
グローバル運動推定において、悪い画像品質、混雑なシーン、あるいはカメラが運動している間の被写体の運動は、グローバル運動推定が困難になる主要原因である。グローバル運動推定の困難さ、例えば、カメラが運動している間の被写体の運動を克服するために、以下に開示技術による実施例のグローバル運動推定方法を説明する。
【００３２】
図３は、開示技術による一実施例におけるグローバル運動推定の模式的なフローチャートを示している。例えば、開示技術による実施例におけるグローバル運動推定方法において反復運動推定方法が使用される。図３に示したように、手ぶれ補正装置は、入力映像の特定のフレームに対し、フレームの各選定局所運動ベクトルに重みを割り当てる（ステップＳ３２０）。手ぶれ補正装置は、フレームの全ての選定局所運動ベクトルの加重平均によってフレームのグローバル運動ベクトルを推定する（ステップＳ３３０）。手ぶれ補正装置は、所定の回数ＮまでステップＳ３２０の処理とステップＳ３３０の処理とを繰返して実行する（ステップＳ３４０Ｎｏ）。また、手ぶれ補正装置は、ステップＳ３１０の処理において、フレームのグローバル運動ベクトルの推定値を初期化し、すなわち、フレームのグローバル運動ベクトルに初期値を付与することができる。
【００３３】
以下に、具体的な例示を結合して開示技術による実施例におけるグローバル運動推定方法を説明する。
【００３４】
先ず、手ぶれ補正装置は入力されたフレームの画像に対して、ノイズを除去するための予備処理を適宜行っても良い。手ぶれ補正装置は隣接するフレームにおいて共有の画像ブロックを選択画像ブロックとして選択するため、画像の境界領域については処理を省略しても良い。手ぶれ補正装置は、フレームの境界領域でない領域において均等に画像ブロックを選択し、これらの画像ブロックの運動ベクトル(局所運動ベクトルとも称す)を、入力されたフレームの選定局所運動ベクトルとして推定する。手ぶれ補正装置が局所領域の運動を精度良く推定し、かつ、ノイズを回避するためには、ブロックサイズがあまり大きくなくかつあまり小さくないことが好ましい。手ぶれ補正装置は、差値の平方の総和によるブロックマッチングアルゴリズムにより各画像ブロックの運動を推定することができる。
【００３５】
手ぶれ補正装置は、一グループのｎ個の画像ブロックの局所運動ベクトル、すなわちＭｉ＝（ｘｉ，ｙｉ）Ｔを取得し、隣接するフレーム間のグローバル運動を推定する。ここで、ｉは１からｎまでの整数（ｉ＝１，・・・，ｎ）を示し、ｘｉは水平方向における局所運動ベクトルを示し、ｙｉは垂直方向における局所運動ベクトルを示す。これらの運動ベクトルを融合して正確なグローバル運動を取得するために、手ぶれ補正装置は、各画像ブロックの局所運動ベクトルＭｉに重みｗｉを割り当て、全ての局所運動ベクトルの加重平均によりフレームのグローバル運動ベクトルＭｇを推定する。すなわち、Ｍｇは下記の式（６）によって表される。なお、ｚｉは正規化された重みである。
【００３６】
【数６】
0005772341.tif 000007
【００３７】
手ぶれ補正装置は、Ｍｇと真のグローバル運動ベクトルとの差に基づいて、下記の式（７）により表されるガウス関数を用いて、選定された画像ブロックiの局所運動ベクトルＭｉの重みｗｉを算出する。
【００３８】
【数７】
0005772341.tif 000008
【００３９】
ここで、ｘｉは水平方向における局所運動ベクトルを示し、ｙｉは垂直方向における局所運動ベクトルを示し、ｘｇは水平方向におけるグローバル運動ベクトルを示し、ｙｇは垂直方向におけるグローバル運動ベクトルを示し、σ２はガウス分布の分散を示す。
【００４０】
次に、手ぶれ補正装置は、反復方法を採用することで、真のグローバル運動ベクトルを推定する。手ぶれ補正装置は、初期時に、フレームにおける全ての選定画像ブロックの局所運動ベクトルの平均値をフレームのグローバル運動ベクトルの初期推定値として使用し、その後に反復的に推定を行う。詳細方法については、下記の表１により与えられる。
【００４１】
【表１】
0005772341.tif 000009
【００４２】
ここで、Ｉｔｅｒは所定の反復回数を示し、Ｍｉは選定された画像ブロックiの局所運動ベクトル（選定局所運動ベクトル)を示し、  ｗｉ（ｒ）はｒ回目のグローバル運動の推定時の選定局所運動ベクトルの重みを示す。なお、ｉは１からｎまでの整数（ｉ＝１，・・・，ｎ）を示し、ｎはフレームにおける選定画像ブロックの数、つまり、フレームにおける選定局所運動ベクトルの数を示す。また、Ｍｇ（ｒ−１）はｒ−１回目に推定されたフレームのグローバル運動ベクトルを示し、σ２はガウス分布の分散を示し、ｚｉは正規化された重みである。
【００４３】
表１に示したように、手ぶれ補正装置は、初期時に、グローバル運動ベクトルの初期推定値Ｍｇ（０）をフレームにおける全ての選定画像ブロックの局所運動ベクトルの平均値に設定する。次に、手ぶれ補正装置は、１〜Ｉｔｅｒ回の反復のうちのｒ回目の反復において、ｒ回目のグローバル運動推定時の各選定局所運動ベクトルＭｉの重みｗｉ（ｒ）を算出して正規化する。そして、手ぶれ補正装置は、正規化された重みｚｉに基づいてフレームの全ての選定局所運動ベクトルを加重平均してｒ回目に推定されたグローバル運動ベクトルＭｇ（ｒ）を取得する。
【００４４】
また、開示技術による実施例の手ぶれ補正方法において、手ぶれ補正装置は、各種の従来技術における意図運動推定方法を採用して意図運動推定を行うことができる。例えば、手ぶれ補正装置は、A.  Litvin、J.  KonradとW.  Karlが「Probabilistic  video  stabilization  using  kalman  filtering  and  mosaicking」（  IS&T/SPIE  symposium  on  Electronic  Imaging,  Image  and  Video  Communication  and  Processing,  2003年）において提案したKalmanフィルタ、C.  Wang、J.-H.  Kim、K.-Y.  Byun、J.  NiとS.-J.  Koが「Digital  image  stabilization  by  adaptive  block  motion  vectors  filtering」（  IEEE  Transactions  on  Consumer  Electronics,  第55巻,  no.  1,  2009年）において提案した適応Kalmanフィルタ、S.  Battiato、G.  Gallo、G.  PuglisiとS.  Scellatoが「Sift  features  tracking  for  video  stabilization」（  International  Conference  on  Image  Analysis  and  Processing,  2007年）において提案した運動ベクトル合成方法等を採用してグローバル運動から意図運動を推定することができる。
【００４５】
以下において、開示技術による一実施例の意図運動推定方法を説明する。
【００４６】
ここで、意図運動がグローバル運動のウィンドウの平滑出力に推定されることが考えられる。ウィンドウのサイズはスムーズさを反映する。大きいウィンドウのサイズはよりスムーズな運動軌跡を提供する。しかしながら、大きいウィンドウのサイズにより、スムージング結果が撮影者の本当の意図から離れ、更により大きいブラックエリアが発生してしまう可能性がある。また、ウィンドウのスムージングによって、運動軌跡におけるピークが平坦になる。
【００４７】
一定の時間内におけるフレーム間運動の方向の変更の数はカメラの揺れの程度を反映するため、本実施例に適応的ウィンドウ平滑化アルゴリズムを適用する。手ぶれ補正装置は、この平滑化アルゴリズムを用いることで、特定のフレームを中心とするウィンドウ内の入力映像の各フレームのグローバル運動推定の結果をスムーズ化することにより各フレームの意図運動を推定する。また、手ぶれ補正装置は、ウィンドウ内のフレーム間運動の方向の変更の数に応じてウィンドウのサイズを自動的に調節する。特に、手ぶれ補正装置は、ウィンドウ内のフレーム間運動の方向の変更の数が所定の数より小さい場合に、ウィンドウのサイズを縮小する。
【００４８】
したがって、手ぶれ補正装置は、下記の式（８）を用いてフレームｔの意図運動の推定を行う。
【００４９】
【数８】
0005772341.tif 000010
【００５０】
ここで、Ｃδｉｎｔはフレームｔの累積意図運動を示し、Ｃδｊはウィンドウ内のフレームｊの累積グローバル運動を示す。ウィンドウのサイズは２ｓ＋１であり、ｓの初期値はＰに設定される。Ｒは初期ウィンドウサイズ２Ｐ＋１内のフレーム間運動の方向の変更の数を示し、Ｔはウィンドウ内のフレーム間運動の方向の変更の数の所定の閾値を示し、Ｕｊはフレームｊの累積グローバル運動Ｃδｊの重み関数を示す。
【００５１】
手ぶれ補正装置は、Ｒが閾値Ｔより小さい場合、例えばＴ＝０．２Ｐの場合に、ｓの値をＰ１（Ｐ１＜Ｐ）まで減少させる。例えば、手ぶれ補正装置は、Ｕｊ＝１／（２ｓ＋１）のように設定することができる。すなわち、手ぶれ補正装置は、簡易平均法を用いることができる。２ｓ＋１個のフレームを有しない可能性のある１個のビデオの開始及び終了時に、全てのフレームが有効になるように、上記の式（８）に対して相応の修正を行っても良い。
【００５２】
前記実施例による意図運動推定方法は比較的に簡単で、更に適応的なスムージングを提供している。
【００５３】
第一巡においてグローバル運動の推定及び意図運動の推定を行って変換行列を取得した後に、第二巡を開始する前に、入力映像の切り出し領域を特定する。
【００５４】
図４を用いて、図１のステップＳ１２０に示した切り出し方法を特定する処理について説明する。図４は、開示技術による一実施例における切り出し領域の特定の模式的なフローチャートを示している。図４に示したように、手ぶれ補正装置は、入力映像における各フレームの変換行列の変換パラメータに基づいての切り出し領域を特定する（ステップＳ４１０）。具体的に、手ぶれ補正装置は、入力映像のフレームの変換行列における変換パラメータの値のうち、入力映像のフレームが切り出された後に少なくとも所定の割合のフレームがブラックエリアを有しないような値を前記入力映像に対する切り出し領域として選択する。
【００５５】
開示技術の一実施例において、以下の二つの基準を考慮して切り出し領域を特定する。一つ目は、切り出されたフレームに入力映像中にある情報が出来るだけ多く含まれることである。二つ目は、切り出されたフレームにおいてブラックエリアが出来るだけ少なく生じることである。したがって、当該実施例には、変換行列におけるパラメータの頻度についての統計に基づいて、最適の切り出し領域を取得することができる。
【００５６】
なお、変換行列Ｈ＝［１，０，δｘ；０，１，δｙ；０，０，１］を例として説明する。ここで、δｘは水平方向における移動値、すなわち入力映像のフレームの横方向の変換パラメータを示す。また、δｙは垂直方向における移動値、すなわち入力映像のフレームの縦方向の変換パラメータを示す。手ぶれ補正装置は、入力映像の全てのフレームの変換行列における変換パラメータδｘの絶対値を求める。手ぶれ補正装置は、求めた絶対値のうちの１つを切り出し領域のｘ方向に対する成分として選択して、入力映像のうち少なくとも所定割合のフレームの変換行列における変換パラメータδｘの絶対値は選択された絶対値以下にあるようにする。また、例えば、手ぶれ補正装置は、求めた絶対値それぞれについて、その絶対値以下となる絶対値の数が全ての絶対値の数に対する割合をそれぞれ算出し、算出した割合が少なくとも所定割合となる任意の絶対値を切り出し領域のｘ方向に対する成分として選択する。手ぶれ補正装置は、変換パラメータの絶対値の区間を統計しても良い。手ぶれ補正装置は、絶対値区間のうちの一つの絶対値区間における最大絶対値を切り出し領域のｘ方向に対する成分として選択して、入力映像のうち少なくとも所定割合のフレームの変換行列における変換パラメータδｘの絶対値は選択された絶対値区間における最大絶対値以下にあるようにする。手ぶれ補正装置は、変換行列におけるパラメータδｙに対してδｘと同様な操作を行って切り出し領域のｙ方向に対する成分を取得する。
【００５７】
統計を容易にするため、例えば、手ぶれ補正装置は、ヒストグラムを利用しても良い。例えば、手ぶれ補正装置は、パラメータδｘとδｙのそれぞれに対して一次元ヒストグラムを構築する。ここで、ｘ軸はパラメータの値により特定された棒グラフ（ｂｉｎ）の数、ｙ軸はｂｉｎの入力映像における出現回数である。なお、ｂｉｎの幅は１でも良く、１より大きくても良い。つまり、単一のパラメータ値の絶対値を単位として頻度の統計を行っても良く、複数のパラメータ値の絶対値区間を単位として頻度の統計を行っても良い。
【００５８】
ｍ個のｂｉｎを含むｍ−ｂｉｎヒストグラムｈ＝｛ｈ１，ｈ２，・・・、ｈｍ｝は［０，１］の範囲内に正規化される。ここで、下記の式（９）が成立する。また、最適な切り出し領域δｏｐｔは、下記の式（１０）を満たすように選択される。
【００５９】
【数９】
0005772341.tif 000011
【００６０】
【数１０】
0005772341.tif 000012
【００６１】
ここで、ｘ（δｏｐｔ）はｂｉｎの番号である。好ましくは、δｏｐｔはｂｉｎ  ｘ（δｏｐｔ）に対応する移動の絶対値区間における最大値である。γは非常に小さい値であり、予め設定可能である。例えば、γ＝０．０１の場合には、切り出されたビデオのうちの少なくとも９９％がブラックエリアを有しないようにパラメータが選択されることを示す。
【００６２】
図５は、開示技術による一実施例におけるヒストグラムによる切り出し領域の特定の例示図を示している。図５に示した実施例において、手ぶれ補正装置は、切り出されたビデオのうちの少なくとも９９％がブラックエリアを有しないと判定した場合に、最適な切り出し領域を２５に特定する。また、例えば、手ぶれ補正装置は、その絶対値以下となる絶対値の数が全ての絶対値の数に対する割合が少なくとも９９％となる絶対値が２５であった場合に、最適な切り出し領域として２５を選択する。
【００６３】
手ぶれ補正装置は、切り出し領域δｏｐｔの各成分δｘｏｐｔとδｙｏｐｔとをそれぞれ取得した後に、切り出された残り画像部分が入力映像のフレームと同様な縦横比を有するようにこれらの値を調整する。
【００６４】
次に、手ぶれ補正装置は、第二巡において、取得した入力映像に対する各フレーム毎の変換行列と、特定した切り出し領域と、入力映像の解像度とを利用して、入力映像のフレームのそれぞれに対して、変換、切り出し及び拡大を含む画像合成を行う。
【００６５】
図６を用いて、図１のステップＳ１３０に示した画像合成を行う処理について説明する。図６は、開示技術による一実施例における画像合成の模式的なフローチャートを示している。図６に示したように、手ぶれ補正装置は、入力映像の各フレームについて取得された変換行列を利用して、各フレームを変換する（ステップＳ６１０）。手ぶれ補正装置は、特定した切り出し領域を利用して各フレームを切り出し、切り出した各フレームを入力映像の解像度まで拡大する（ステップＳ６２０）。具体的な切り出し及び拡大の方法は、従来技術における既存の方法を参考することができ、ここでは詳しく説明しない。
【００６６】
上述した手ぶれ補正方法では、フレームの変換が切り出し及び拡大とともに第二巡において行われる場合を説明した。しかしながら、開示技術による他の実施例の手ぶれ補正方法では、第一巡においてフレームの変換を行い、第二巡では切り出し及び拡大のみを行っても良い。
【００６７】
以下に、図面を結合して開示技術による実施例の手ぶれ補正装置を説明する。
【００６８】
図７は、開示技術による一実施例の手ぶれ補正装置の模式的なブロック図を示している。手ぶれ補正装置７００は、変換行列生成部７１０と、切り出し領域特定部７２０と、画像合成部７３０とを備える。開示技術による実施例において、変換行列生成部７１０は、入力映像のフレームのそれぞれに対して、フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成する。また、切り出し領域特定部７２０は、入力映像の切り出し領域を特定する。また、画像合成部７３０は、入力映像に対するフレームごとの変換行列と、切り出し領域と、入力映像の解像度とを利用して、入力映像のフレームのそれぞれに対して、変換、切り出し及び拡大を含む画像合成を行う。
【００６９】
開示技術による別の一実施例において、変換行列生成部７１０は更に、入力映像の各フレームに対してグローバル運動推定と意図運動推定を行う。また、変換行列生成部７１０は、グローバル運動推定と前記意図運動推定による結果に基づいて、フレームの変換行列を生成する。
【００７０】
開示技術による別の一実施例において、変換行列生成部７１０は更に、入力映像の各フレームに対してグローバル運動推定を行う時に当該フレームの選定局所運動ベクトルのそれぞれに重みを割り当て、当該フレームの全ての選定局所運動ベクトルの加重平均により当該フレームのグローバル運動ベクトルを推定し、及び所定の回数まで前記の重みの割り当てとグローバル運動ベクトルの推定のステップを繰返して実行する。
【００７１】
開示技術による別の一実施例において、変換行列生成部７１０は更に、前記フレームを中心とするウィンドウ内の前記入力映像の各フレームについてのグローバル運動推定の結果を平滑化することにより、当該フレームの意図運動を推定する。ここで、前記ウィンドウのサイズは、前記ウィンドウ内のフレーム間運動の方向の変更の数により自動的に調節される。
【００７２】
開示技術による別の一実施例において、切り出し領域特定部７２０は更に、入力映像のフレームの変換行列における変換パラメータのうち、入力映像のフレームが切り出された後に少なくとも所定の割合のフレームがブラックエリアを有しないような値を前記入力映像の切り出し領域として選択する。
【００７３】
開示技術による別の一実施例において、切り出し領域特定部７２０は更に、変換行列に入力映像のフレームの長さ方向と幅方向の二つの変換パラメータが含まれる場合に、これらの二つの変換パラメータのそれぞれに対して、以下のステップ：前記入力映像の全てのフレームの変換行列における当該変換パラメータの絶対値又は絶対値の区間をカウントするステップ、及び前記絶対値のうちの一つの絶対値、あるいは前記絶対値区間のうちの一つの絶対値区間における最大絶対値を前記切り出し領域の当該方向に対する成分として選択するステップを行うために配置される。ここで、前記入力映像における少なくとも所定の割合のフレームの変換行列における当該変換パラメータの絶対値は、選択された絶対値又は絶対値区間における最大絶対値以下にある。
【００７４】
開示技術による前記態様の手ぶれ補正方法及び装置において、入力映像におけるフレームのそれぞれに対して、運動推定と画像合成を二巡に分けてそれぞれ行う。開示技術は、第一巡において、フレームのそれぞれに対して手ぶれを除去するために用いられる変換行列を生成する。開示技術は、第二巡を開始する前に、入力映像の切り出し領域を特定する。開示技術は、第二巡において、入力映像における各フレームが手ぶれの除去されたフレームに変換された後に、切り出し領域に基づいて各フレームを切り出し、切り出した残り部分を入力映像の解像度まで拡大する。
【００７５】
前記装置及び手段の詳細操作については、以上の相応する方法における各実施例を参考することができ、ここでは詳しく説明しない。
【００７６】
また、上記の装置における各構成モジュール、手段は、ソフトウェア、ファームウェア、ハードウェアあるいはそれらの組み合わせの方式によって配置されることができる。配置に使用可能な具体的な手法又は方式は当業者に熟知されているものであり、ここでは説明しない。ソフトウェア又はファームウェアにより実現される場合には、記憶媒体又はネットワークから専用のハードウェア構成を持つコンピュータに対して当該ソフトウェアを構成するプログラムをインストールし、各種プログラムがインストールされると当該コンピュータは各種機能等を実行することができる。
【００７７】
開示技術による前記態様の手ぶれ補正方法及び装置において、入力映像におけるフレームのそれぞれに対して、運動推定と画像合成を二巡に分けてそれぞれ行う。開示技術は、第一巡において、フレームのそれぞれに対して手ぶれを除去するために用いられる変換行列を生成する。開示技術は、第二巡を開始する前に、入力映像の切り出し領域を特定する。開示技術は、第二巡において、入力映像の各フレームが手ぶれの除去されたフレームに変換された後に、切り出し領域に基づいて各フレームを切り出し、切り出した残り部分を入力映像の解像度まで拡大する。
【００７８】
実際の応用の例示として、デコーダを用いてビデオに対して二回のデコードを行う。デコーダは、一回目のデコードプロセスにおいて、フレームのそれぞれに対してグローバル運動推定と意図運動推定を順に行って各フレームの変換行列を取得する。デコーダは、二回目のデコード前に、ビデオの切り出し領域を特定する。デコーダは、二回目のデコードプロセスにおいて、フレームのそれぞれに対して変換、切り出し及び拡大を順に行う。
【００７９】
別の実際の応用の例示として、デコーダを用いてビデオに対して一回のデコードを行う。デコーダは、一回目のプロセスにおいて、デコードされたフレームを記憶装置に記憶する。このため、デコーダは、後続の切り出し領域の特定及び二回目のプロセスにおいて再びデコードを行う必要がなく、記憶装置内のデコードされたフレームを直接に使用することができる。
【００８０】
開示技術は、変換行列の特定及びビデオの切り出しは二巡のプロセスで行われ、かつ、特定した変換行列に基づいて変換を行ってから、特定した切り出し領域に基づいて切り出しを行うため、スムーズさの犠牲を回避すると共に最適な切り出し領域を確保することができる。これにより、切り出しプロセスにおいてフレームの入力映像にある画像情報ができるだけ多く保留され、且つ切り出した後に、できるだけ少ないフレームにブラックエリアが発生することができる。
【００８１】
図８を用いて、開示技術による実施例の方法及び装置を実施するために用いられるコンピュータ８００について説明する。図８は、開示技術による実施例の方法及び装置を実施するために用いられるコンピュータの模式的なブロック図を示している。図８においては、中央処理装置（ＣＰＵ）８０１が、読取専用メモリ（ＲＯＭ）８０２に記憶されたプログラム又は記憶部８０８からランダムアクセスメモリ（ＲＡＭ）８０３にアップロードされたプログラムに従って、各種の処理を実行する。ＲＡＭ８０３は、ＣＰＵ８０１が各種の処理を実行するとき等に必要なデータを記憶する。ＣＰＵ８０１、ＲＯＭ８０２及びＲＡＭ８０３は、バス８０４を介して接続されている。また、入力／出力インタフェース８０５はバス８０４に接続されている。
【００８２】
入力部８０６と、出力部８０７と、記憶部８０８と、通信部８０９とは、入力／出力インタフェース８０５に接続されている。ここで、入力部８０６は、キーボードやマウスなどを含む。出力部８０７は、ディスプレイ、例えばブラウン管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）及びスピーカ等を含む。記憶部８０８は、ハードディスク等を含む。通信部８０９は、ネットワークインターフェースカード、例えばLANカード、モデム等を含む。通信部８０９は、例えばインターネットなどのネットワークを経由して通信処理を実行する。入力／出力インタフェース８０５は、ドライブ８１０と接続されていても良い。ドライブ８１０には、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリ等のような着脱可能な媒体８１１が取り付けられていても良い。そして、着脱可能な媒体８１１から読み出されるコンピュータプログラムが記憶部８０８にインストールされるようにしても良い。
【００８３】
ソフトウェアで一連の処理を実現する場合、例えばインターネットなどのネットワーク、又は、着脱可能な媒体８１１のような記憶媒体からソフトウェアを構成するプログラムをインストールする。
【００８４】
このような記憶媒体は、図８に示したような、媒体中にプログラムが記憶されているものであって、デバイスから分離してユーザにプログラムを提供する着脱可能な媒体８１１に限定されるものではない。例えば、記憶媒体は、ＲＯＭ８０２、ハードディスクなどの記憶部８０８であって良い。これらの記憶媒体にプログラムが記憶されており、プログラムは記憶媒体とともにユーザに提供される。なお、着脱可能な媒体８１１は、例えば、フロッピー（登録商標）などの磁気ディスク、、コンパクトディスクリードオンリーメモリ（ＣＤ−ＲＯＭ）やディジタルヴァーサタイルディスク（ＤＶＤ）などの光ディスク、ミニディスク（登録商標）などの光磁気ディスク及び半導体メモリである。
【００８５】
開示技術は更に、機器で読取可能な命令コードが記憶されたプログラム製品を提供する。命令コードが機器で読取られて実行されると、開示技術による実施例の方法を実行することができる。
【００８６】
それに対して、機器で読取り可能な命令コードが記憶されたプログラム製品を搭載する記憶媒体も開示技術に含まれる。この記憶媒体は、フロッピー（登録商標）、光ディスク、光磁気ディスク、メモリカード、メモリスティック等を含むが、これらに限定されるものではない。
【００８７】
以上の開示技術の具体的な実施例の記述においては、一種の実施形態について記述し及び／又は示した特徴は同一あるいは類似の形態で一つ又は複数の他の実施形態で使用されたり、他の実施形態における特徴と組み合わせたり、あるいは他の実施形態における特徴の代替とすることができる。
【００８８】
ここで、説明する必要があるのは、専門用語“含む／有する”が本文で使用される場合には、特徴、要素、ステップ又はコンポーネントの存在を意味するが、一つ又は複数の他の特徴、要素、ステップ又はコンポーネントの存在又は付加を排除するものではない。
【００８９】
また、開示技術の方法は明細書において記述した時間順に実行することには限られず、その他の時間順序に従って、並行にあるいは個別に実行されてもよい。従って、本明細書で記述した方法の実行順序は開示技術の技術的範囲への限定を構成しない。
【００９０】
上記に開示技術の具体的実施例を記述することにより開示技術を開示したが、前記の全ての実施例と例示はいずれも例示的なものであり、限定的なものではない。当業者は添付の特許請求の範囲の精神と範囲に、開示技術に対する各種の修正、改良あるいは均等物を設計することができる。これらの修正、改良あるいは均等物は開示技術の保護範囲内に含まれるものである。
【００９１】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００９２】
（付記１）コンピュータが実行する手ぶれ補正方法であって、
入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成し、
前記入力映像の切り出し領域を特定し、
前記変換行列を生成する処理により生成されたフレームごとの変換行列と、前記切り出し領域を特定する処理により特定された切り出し領域と、前記入力映像の解像度とを利用して、前記入力映像におけるフレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行う
ことを特徴とする手ぶれ補正方法。
【００９３】
（付記２）前記変換行列を生成する処理は、
前記入力映像におけるフレームのそれぞれに対して、グローバル運動推定と意図運動推定とを行うことで、当該フレームごとの変換行列を生成することを特徴とする付記１に記載の手ぶれ補正方法。
【００９４】
（付記３）前記変換行列を生成する処理は、
前記フレームに含まれる画像ブロックの運動ベクトルを示す局所運動ベクトルのうち、当該フレームから選択された一または複数の局所運動ベクトルを示す選定局所運動ベクトルのそれぞれに重みを割り当て、
当該フレームの全ての選定局所運動ベクトルの加重平均によって当該フレームのグローバル運動ベクトルを推定することを特徴とする付記２に記載の手ぶれ補正方法。
【００９５】
（付記４）前記変換行列を生成する処理は、
前記フレームに含まれる画像ブロックの選定局所運動ベクトルのそれぞれと、当該フレームのグローバル運動ベクトルとを用いたガウス関数に基づいて、選定局所運動ベクトルの重みを算出することを特徴とする付記３に記載の手ぶれ補正方法。
【００９６】
（付記５）前記変換行列を生成する処理は、
前記フレームの全ての選定局所運動ベクトルの平均値を当該フレームのグローバル運動ベクトルの初期推定値として算出することを特徴とする付記３に記載の手ぶれ補正方法。
【００９７】
（付記６）前記変換行列を生成する処理は、
前記フレームに含まれる局所運動ベクトルのうち、一または複数の局所運動ベクトルを当該フレームから選定局所運動ベクトルとして選択することを特徴とする付記３に記載の手ぶれ補正方法。
【００９８】
（付記７）前記変換行列を生成する処理は、
前記フレームを中心とするウィンドウのサイズを、前記ウィンドウ内のフレーム間運動の方向の変更の数に応じて調節し、
当該ウィンドウ内の前記入力映像の各フレームのグローバル運動推定の結果を平滑化することにより当該フレームの意図運動を推定することを特徴とする付記２に記載の手ぶれ補正方法。
【００９９】
（付記８）前記変換行列を生成する処理は、
前記ウィンドウ内のフレーム間運動の方向の変更の数が所定の数により小さい場合に、前記ウィンドウのサイズを小さくすることを特徴とする付記７に記載の手ぶれ補正方法。
【０１００】
（付記９）前記変換行列を生成する処理は、
前記フレームの累積グローバル運動と、当該累積グローバル運動の重み関数とに基づいて、当該フレームの累積意図運動を求めることでスムーズ化を行うことを特徴とする付記７に記載の手ぶれ補正方法。
【０１０１】
（付記１０）前記変換行列を生成する処理は、
前記累積グローバル運動の重み関数として前記ウィンドウのサイズの逆数を適用することを特徴とする付記９に記載の手ぶれ補正方法。
【０１０２】
（付記１１）前記入力映像の切り出し領域を特定する処理は、
前記入力映像のフレームの変換行列における変換パラメータの値のうち、前記入力映像のフレームが切り出された後に少なくとも所定の割合のフレームがブラックエリアを有しないような値を前記入力映像の切り出し領域として選択することを特徴とする付記１に記載の手ぶれ補正方法。
【０１０３】
（付記１２）前記入力映像の切り出し領域を特定する処理は、
前記変換行列に前記入力映像のフレームの縦方向と横方向の二つの変換パラメータが含まれる場合に、縦方向の変換パラメータと横方向の変換パラメータのそれぞれに対して、前記入力映像の全てのフレームの変換行列における変換パラメータの絶対値を求め、求めた絶対値それぞれについて、その絶対値以下となる絶対値の数が全ての絶対値の数に対する割合をそれぞれ算出し、算出した割合が少なくとも所定割合となる任意の絶対値を切り出し領域の当該方向に対する変換パラメータとして選択すること、または、前記縦方向の変換パラメータと前記横方向の変換パラメータのそれぞれに対して、前記入力映像の全てのフレームの変換行列における変換パラメータの絶対値区間を統計することを特徴とする付記１１に記載の手ぶれ補正方法。
【０１０４】
（付記１３）前記入力映像の切り出し領域を特定する処理は、
切り出し領域を取得した後に、切り出された残り画像部分が入力映像のフレームと同様な縦横比を有するように切り出し領域を調整することを特徴とする付記１に記載の手ぶれ補正方法。
【０１０５】
（付記１４）入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成する変換行列生成部と、
前記入力映像の切り出し領域を特定する切り出し領域特定部と、
前記変換行列生成部により生成されたフレームごとの変換行列と、前記切り出し領域特定部により特定された切り出し領域と、前記入力映像の解像度を利用して、前記入力映像における各フレームのそれぞれに対して変換、切り出し及び拡大を含む画像合成を行うために配置された画像合成部と
を備えたことを特徴とする手ぶれ補正装置。
【０１０６】
（付記１５）前記変換行列生成部は、
前記入力映像におけるフレームのそれぞれに対して、グローバル運動推定と意図運動推定とを行うことで、当該フレームごとの変換行列を生成することを特徴とする付記１４に記載の手ぶれ補正装置。
【０１０７】
（付記１６）前記変換行列生成部は、
前記フレームに含まれる画像ブロックの運動ベクトルを示す局所運動ベクトルのうち、当該フレームから選択された一または複数の局所運動ベクトルを示す選定局所運動ベクトルのそれぞれに重みを割り当て、
当該フレームの全ての選定局所運動ベクトルの加重平均によって当該フレームのグローバル運動ベクトルを推定することを特徴とする付記１５に記載の手ぶれ補正装置。
【０１０８】
（付記１７）前記変換行列生成部は、
前記フレームを中心とするウィンドウのサイズを、前記ウィンドウ内のフレーム間運動の方向の変更の数に応じて調節し、
当該ウィンドウ内の前記入力映像の各フレームのグローバル運動推定の結果を平滑化することにより当該フレームの意図運動を推定することを特徴とする付記１５に記載の手ぶれ補正装置。
【０１０９】
（付記１８）前記切り出し領域特定部は、
前記入力映像のフレームの変換行列における変換パラメータの値のうち、前記入力映像のフレームが切り出された後に少なくとも所定の割合のフレームがブラックエリアを有しないような値を前記入力映像の切り出し領域として選択することを特徴とする付記１４に記載の手ぶれ補正装置。
【０１１０】
（付記１９）前記切り出し領域特定部は、
前記変換行列に前記入力映像のフレームの縦方向と横方向の二つの変換パラメータが含まれる場合に、縦方向の変換パラメータと横方向の変換パラメータのそれぞれに対して、前記入力映像の全てのフレームの変換行列における変換パラメータの絶対値を求め、求めた絶対値それぞれについて、その絶対値以下となる絶対値の数が全ての絶対値の数に対する割合をそれぞれ算出し、算出した割合が少なくとも所定割合となる任意の絶対値を切り出し領域の当該方向に対する変換パラメータとして選択すること、または、前記縦方向の変換パラメータと前記横方向の変換パラメータのそれぞれに対して、前記入力映像の全てのフレームの変換行列における変換パラメータの絶対値区間を統計することを特徴とする付記１８に記載の手ぶれ補正装置。
【０１１１】
（付記２０）コンピュータが実行する手ぶれ補正方法であって、
入力映像におけるフレームのそれぞれに対して、当該フレームを手ぶれの除去されたフレームに変換するために用いられる変換行列を生成し、生成した変換行列を利用して当該フレームを変換し、
前記入力映像の切り出し領域を特定し、
前記切り出し領域を特定する処理により特定された切り出し領域と、前記入力映像の解像度とを利用して、前記入力映像におけるフレームのそれぞれに対して切り出し及び拡大を含む画像合成を行う
ことを特徴とする手ぶれ補正方法。
【符号の説明】
【０１１２】
７００      手ぶれ補正装置
７１０      変換行列生成部
７２０      切り出し領域特定部
７３０      画像合成部
【図１】
0005772341.tif 000013
【図２】
0005772341.tif 000014
【図３】
0005772341.tif 000015
【図４】
0005772341.tif 000016
【図５】
0005772341.tif 000017
【図６】
0005772341.tif 000018
【図７】
0005772341.tif 000019
【図８】
0005772341.tif 000020
【図９】
0005772341.tif 000021
【図１０】
0005772341.tif 000022
【図１１】
0005772341.tif 000023