(57)【要約】【課題】手振れの影響が補正された画像が得られるようにする。【解決手段】情報処理装置は、連続的に捕捉された一連の画像と、前記一連の画像の各画像に対応するジャイロ・センサ部の検出値(θ,ω)とを記憶部に保存する保存部(3224)と、前記一連の画像の中から或る画像を第１の画像として選択し、前記検出値に基づいて前記一連の画像の中からブレ(ω)が最小の画像を第２の画像として選択する選択部(3226)と、前記検出値に基づいて前記第１の画像における移動量(Sx,Sy)を求め、前記第１の画像における前記移動量だけ離れた２つの位置の間の第１の領域の複数の画素値が、許容誤差の範囲で直線的な勾配を有する場合に、前記第１の領域の複数の画素値を、前記第１の領域に対応する前記第２の画像における第２の領域の複数の画素値を用いて補正する補正部(3228)と、を含んでいる。【選択図】図３
2015019327.tif 000002
【特許請求の範囲】
【請求項１】
連続的に捕捉された一連の画像と、前記一連の画像の各画像に対応するジャイロ・センサ部の検出値とを記憶部に保存する保存部と、
前記一連の画像の中から或る画像を第１の画像として選択し、前記検出値に基づいて前記一連の画像の中からブレが最小の画像を第２の画像として選択する選択部と
前記検出値に基づいて前記第１の画像における移動量を求め、前記第１の画像における前記移動量だけ離れた２つの位置の間の第１の領域の複数の画素値が、許容誤差の範囲で直線的な勾配を有する場合に、前記第１の領域の複数の画素値を、前記第１の領域に対応する前記第２の画像における第２の領域の複数の画素値を用いて補正する補正部と、
を含む情報処理装置。
【請求項２】
前記補正部は、さらに、前記検出値に基づいて前記第１の画像から前記第２の画像までの別の移動量を求め、前記第２の画像における前記第１の領域の位置から前記別の移動量だけ移動させた位置にある領域を前記第２の領域として決定するものであることを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記補正部は、前記第１の画像に対応する前記検出値と前記第１の画像の直前または直後の画像に対応する前記検出値とに基づいて、前記第１の画像における２次元の移動量かまたは移動方向および移動距離を、前記移動量として求めるものであることを特徴とする、付記１または２に記載の情報処理装置。
【請求項４】
連続的に捕捉された一連の画像と、前記一連の画像の各画像に対応するジャイロ・センサ部の検出値とを記憶部に保存し、
前記一連の画像の中から或る画像を第１の画像として選択し、前記検出値に基づいて前記一連の画像の中からブレが最小の画像を第２の画像として選択し、
前記検出値に基づいて前記第１の画像における移動量を求め、前記第１の画像における前記移動量だけ離れた２つの位置の間の第１の領域の複数の画素値が、許容誤差の範囲で直線的な勾配を有する場合に、前記第１の領域の複数の画素値を、前記第１の領域に対応する前記第２の画像における第２の領域の複数の画素値を用いて補正する
処理を情報処理装置に実行させるためのプログラム。
【請求項５】
情報処理装置が、
連続的に捕捉された一連の画像と、前記一連の画像の各画像に対応するジャイロ・センサ部の検出値とを記憶部に保存し、
前記一連の画像の中から或る画像を第１の画像として選択し、前記検出値に基づいて前記一連の画像の中からブレが最小の画像を第２の画像として選択し、
前記検出値に基づいて前記第１の画像における移動量を求め、前記第１の画像における前記移動量だけ離れた２つの位置の間の第１の領域の複数の画素値が、許容誤差の範囲で直線的な勾配を有する場合に、前記第１の領域の複数の画素値を、前記第１の領域に対応する前記第２の画像における第２の領域の複数の画素値を用いて補正する
処理を実行する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影された画像を補正するための処理に関する。
【背景技術】
【０００２】
例えばスマートフォンまたはタブレット型の情報処理端末のような情報処理装置には、例えばディジタル・カメラ・モジュールを備えているものがある。また、通常のディジタル・カメラには、通常の手振れ補正機能を含むものがある。
【０００３】
既知の撮影装置において、システム制御部は、適正シャッタ秒時が所定のシャッタ秒時よりも長いときに、動きベクトル算出部の算出結果を受けて、被写体が静止した被写体であるかまたは動きのある被写体であるかを判定する。システム制御部は、被写体が静止した被写体であると判定したときは、タイミング発生部に指示して、撮像部に、連続する複数枚の画像を生成させ、画像重ね合せ部に、動きベクトル算出部で算出された動きベクトルに基づいて重ね合わせ画像を生成させて、手ぶれを補正させる。また、システム制御部は、被写体が動きのある被写体であると判定したときは、タイミング発生部に指示して、被写体ぶれの発生しないシャッタ秒時で単独の撮影を行わせる。それによって、静止画撮影において手ぶれも被写体ぶれも好適に補正することができる撮影装置が提供される。
【０００４】
既知の撮像装置において、撮像素子は画素毎に露光され、１フレームの撮影画像の画像信号を生成する。撮像素子では、連続的に２フレーム以上の撮影画像の画像信号を生成する。角速度タイミング発生装置は、各撮影画像を生成するための各露光期間において、タイミング信号を１回発生する。タイミング信号は、各撮影画像において同一のタイミングで発生する。角速度−動きベクトル変換装置は、第１及び第２角速度センサで検出された角速度を各タイミング信号が発生した間において時間積分し、各撮影画像間に生じるぶれを検出する。画像シフト装置は、各撮影画像間に生じるぶれによって生じた最初の撮影画像との相対的な位置ズレを補正するために、各撮影画像をシフトする。画像多重化装置は、シフトした各撮影画像を多重化し、多重化画像を得る。それによって、撮像素子が画素毎又はライン毎に露光される場合においても、的確に手ぶれが検出される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２７８４４４号公報
【特許文献２】特開２００７−１１０３７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
例えばスマートフォンまたはタブレット型の情報処理装置のディジタル・カメラ・モジュールは、小型であり、通常のディジタル・カメラにおけるような手振れ補正を行うのに充分な画質が得られないことがある。
【０００７】
発明者たちは、情報処理装置において、所望のタイミングの画像が手振れの影響を受けていた場合に、手振れの影響のより少ない別の画像を用いて所望のタイミングの画像を部分的に補正または補償すれば、より高い画質の所望のタイミングの画像が得られる、と認識した。
【０００８】
１つの観点では、本発明の目的は、手振れの影響が補正された画像が得られるようにすることである。
【課題を解決するための手段】
【０００９】
本発明の特徴によれば、連続的に捕捉された一連の画像と、その一連の画像の各画像に対応するジャイロ・センサ部の検出値とを記憶部に保存する保存部と、その一連の画像の中から或る画像を第１の画像として選択し、その検出値に基づいてその一連の画像の中からブレが最小の画像を第２の画像として選択する選択部と、その検出値に基づいてその第１の画像における移動量を求め、その第１の画像における前記移動量だけ離れた２つの位置の間の第１の領域の複数の画素値が、許容誤差の範囲で直線的な勾配を有する場合に、その第１の領域の複数の画素値を、その第１の領域に対応するその第２の画像における第２の領域の複数の画素値を用いて補正する補正部と、を含む情報処理装置が提供される。
【発明の効果】
【００１０】
実施形態の一観点によれば、手振れの影響が補正された画像を得ることができる。
【図面の簡単な説明】
【００１１】
【図１】図１Ａは、実施形態による、撮像機能を含む情報処理装置の概略的な構成（configuration）の例を示している。図１Ｂは、情報処理装置におけるカメラ部の配置の例を示している。
【図２】図２は、情報処理装置のプロセッサの概略的な構成（configuration）の例を示している。
【図３】図３Ａ〜３Ｃは、ジャイロ・センサ部によって検出される、３次元軸に対する情報処理装置またはそのジャイロ・センサ部のヨー、ロールおよびピッチの回転角度の３次元的な位置関係の例を示している。
【図４】図４Ａは、手振れを伴う１つのフレーム画像における、露光開始時点での、Ｘ−Ｙ平面上の或る方向（横軸）の複数の画素の画素値のレベルの例を示している。  図４Ｂは、そのフレーム画像における、露光終了時点での図４Ａと同じ複数の画素の画素値のレベルの例を示している。  図４Ｃは、そのフレーム画像における、露光開始時点から露光終了時点までの間の時間期間における、図４Ａと同じ複数の画素の画素値のレベルの例を示している。  図４Ｄは、図４Ｃにおける概して直線的に上昇する正の勾配を有する画素値を含む画像領域を、別のフレーム画像における対応する画像領域の高いレベルの画素値で置換した場合の画素値のレベルの例を示している。  図４Ｅは、図４Ｃにおける概して直線的に上昇する正の勾配を有する画素値を含む画像領域を、別のフレーム画像における対応する画像領域の低いレベルの画素値で置換した場合の画素値のレベルの例を示している。
【図５】図５Ａは、手振れを伴う１つのフレーム画像における、露光開始時点での、Ｘ−Ｙ平面上の或る方向（横軸）の複数の画素の画素値のレベルの例を示している。  図５Ｂは、そのフレーム画像における、露光終了時点での図５Ａと同じ複数の画素の画素値のレベルの例を示している。  図５Ｃは、そのフレーム画像における、露光開始時点から露光終了時点までの間の時間期間における、図５Ａと同じ複数の画素の画素値のレベルの例を示している。  図５Ｄは、図５Ｃにおける概して直線的に下降する負の勾配を有する画素値を含む画像領域を、別のフレーム画像における対応する画像領域の低いレベルの画素値で置換した場合の画素値のレベルの例を示している。  図５Ｅは、図５Ｃにおける概して直線的に下降する負の勾配を有する画素値を含む画像領域を、別のフレーム画像における対応する画像領域の高いレベルの画素値で置換した場合の画素値のレベルの例を示している。
【図６】図６は、ユーザがシャッタ・ボタンを押す前後の時間期間における時系列の一連の複数のフレーム画像の時間的な関係の例を示している。
【図７】図７Ａは、フレーム画像における手振れによるぼやけを示す画像領域の画素の部分の例を示している。  図７Ｂは、フレーム画像の画像領域の画素にそれぞれ対応する別のフレーム画像の画像領域の画素の位置の例を示している。  図７Ｃは、フレーム画像の画像領域の画素を、別のフレーム画像の画像領域の画素の画素値で補正または補償して得られた補正後のフレーム画像の例を示している。
【図８Ａ】図８Ａ〜８Ｃは、情報処理装置によって実行される、所望のタイミングのフレーム画像を、最小の角速度に対応するフレーム画像を用いて補正または補償するための処理のフローチャートの例を示している。
【図８Ｂ】(図8Aで説明)
【図８Ｃ】(図8Aで説明)
【図９】図９Ａ〜９Ｄは、所望のタイミングのフレーム画像中の手振れによるぼやけた画像部分が、最も小さい角速度に対応するフレーム画像における対応する画像部分でどのように補正されるかを説明するためのフレーム画像の例を示している。
【発明を実施するための形態】
【００１２】
発明の目的および利点は、請求の範囲に具体的に記載された構成要素および組み合わせによって実現され達成される。
前述の一般的な説明および以下の詳細な説明は、典型例および説明のためのものであって、本発明を限定するためのものではない、と理解される。
【００１３】
通常のディジタル・カメラには、シャッタ・ボタンの１回の操作で比較的高い画質の一連のフレーム画像を連続的に生成するのに充分な大きさの光学系およびイメージ・センサを含むものがある。この場合、各フレーム画像は、それぞれの露光時間が短くても、光学系およびイメージ・センサが充分大きいので、比較的画質が高い。そのようなディジタル・カメラの手振れ補正では、そのような複数のフレーム画像について、相互間での画像の動きまたは位置移動の方向および距離が決定され、その方向および距離に応じて複数のフレーム画像が位置合わせされて合成されて、補正された１つのフレーム画像が生成される。その方向および距離は、例えば、各フレーム画像間の分割領域の画素値の相関性に基づいて動きベクトルとして検出されてもよい。
【００１４】
一方、携帯電話機、スマートフォンまたはタブレット型の情報端末のような情報処理装置は、小型のカメラ・モジュールを含んでいることがある。そのような情報処理装置では、充分な画質が得られるように各フレーム画像の露光時間が比較的長くされ、その結果として、例えばシャッタ・ボタンを押した瞬間の所望のタイミングで撮影されたフレーム画像に、手振れによる画像のぼやけが生じることがある。そのような小型のカメラ・モジュールでは、例えばレンズを含む光学系およびイメージ・センサの寸法が小さく、各フレーム画像の間隔および露光時間を短くすると、複数のフレーム画像を位置合わせして合成する形態の手振れ補正を行うには不充分な画質のフレーム画像しか得られないことがある。そのような情報処理装置では、例えばシャッタ・ボタンを押した瞬間の手振れの影響を回避するために、シャッタ・ボタンを押したタイミングから僅かに時間遅延したタイミングで撮影されたフレーム画像を捕捉して保存することもできるであろう。しかし、所望のタイミングから時間遅延して撮影されたフレーム画像は、所望のタイミングでのフレーム画像と幾分か異なり、望ましい画像でないことがある。
【００１５】
発明者たちは、所望のタイミングのフレーム画像に手振れの影響があった場合、そのフレーム画像を手振れの影響の少ない別のタイミングのフレーム画像を用いて補正または補償すれば、手振れの影響の少ない所望のタイミングのフレーム画像を生成することができる、と認識した。
【００１６】
従って、実施形態の目的は、手振れの影響がより少なくなる形態で補正された所望のタイミングのフレーム画像を得ることができるようにすることである。
【００１７】
図１Ａは、実施形態による、撮像機能を含む情報処理装置３０の概略的な構成（configuration）の例を示している。
【００１８】
情報処理装置３０は、例えば、携帯電話機、スマートフォン、タブレット型のパーソナル・コンピュータ、ノートブック型のパーソナル・コンピュータのようなモバイル型の情報処理装置または情報処理端末であってもよい。情報処理装置３０は、内部バス３５に結合された、プロセッサ３２２、記憶部３２４、外部記憶部３３４、カメラ部またはカメラ・モジュール３３８、およびジャイロ・センサ部または手振れ検出部３４０を含んでいる。カメラ部またはカメラ・モジュール３３８は、例えば、撮像用のＣＣＤ／ＣＭＯＳセンサと、レンズ等の光学系とを含んでいてもよい。情報処理装置３０は、さらに、入力部３４２、表示部３４４および音響部３４６を含んでいる。情報処理装置３０は、さらに、移動体通信部３２６、無線ＬＡＮ通信部３２８、ネットワーク・インタフェース（ＮＷ Ｉ／Ｆ）３３０、およびＵＳＢ通信部３３２を含んでいてもよい。
【００１９】
プロセッサ３２２は、コンピュータ用のＣＰＵ（Central Processing Unit）であってもよい。記憶部３２４には、例えば、主記憶装置および半導体メモリ等が含まれる。ＵＳＢ通信部３３２は、外付けドライブ３３６に接続可能である。ドライブ３３６は、プログラムが記録された例えば光ディスクまたは磁気ディスクのような記録媒体３６４を読み取るためのものであってもよい。入力部３４２は、例えばキーボード、マウスまたはタッチパッドのようなポインティング・デバイス、およびタッチパネルを含んでいてもよい。外部記憶部３３４には、例えば、ハードディスク・ドライブ（ＨＤＤ）および／またはフラッシュメモリ・ドライブ（ＳＳＤ：Solid State Drive）等が含まれる。
【００２０】
プロセッサ３２２は、画像処理機能を含む例えば集積回路として実装された専用のプロセッサであってもよい。また、プロセッサ３２２は、記憶部３２４に格納された画像処理機能を有するアプリケーション・プログラムに従って動作するものであってもよい。アプリケーション・プログラムは、記録媒体３６４に格納されていて、ドライブ３３６によって記録媒体３６４から読み出されて情報処理装置３０にインストールされてもよい。
【００２１】
ジャイロ・センサ部または手振れ検出部３４０は、例えば、角速度を検出し、さらに角速度の積分によって角度を検出する振動型のジャイロ・センサであってもよい。
【００２２】
図１Ｂは、情報処理装置３０におけるカメラ部３３８の配置の例を示している。
【００２３】
図１Ｂに示されているように、情報処理装置３０において、カメラ部３３８は、例えばその筐体の外側の主要面の上部における任意の横方向の位置または左もしくは右の側部における任意の高さの位置に配置されていてもよい。
【００２４】
図２は、情報処理装置３０のプロセッサ３２２の概略的な構成（configuration）の例を示している。
【００２５】
プロセッサ３２２は、例えば、制御部３２２０、アプリケーション部３２２２、データ保存部３２２４、画像選択部３２２６、画像補正部３２２８、およびその他の処理部３２３８を含んでいてもよい。画像補正部３２２８は、位置ずれ計算部３２２９、画素位置合せ部３２３０、および画素補正部３２３２を含んでいてもよい。制御部３２２０は、アプリケーション部３２２２、データ保存部３２２４、画像選択部３２２６、画像補正部３２２８および処理部３２３８に制御信号を供給して、これらの要素の動作を制御してもよい。
【００２６】
データ保存部３２２４は、カメラ部３３８で連続的に撮影または捕捉された時系列の一連のフレーム画像を捕捉して、その一連のフレーム画像を記憶部３２４中のバッファ・メモリ部に一時的に保存する。それと並行して、データ保存部３２２４は、一連のフレーム画像の撮影または捕捉のタイミングで、ジャイロ・センサ部３４０で検出された検出値を捕捉して、その検出値を各フレーム画像に対応づけて記憶部３２４中のバッファ・メモリ部に一時的に保存する。その検出値は、例えば、角度および／または角速度であってもよい。
【００２７】
画像選択部３２２６は、記憶部３２４中のバッファ・メモリ部に保存された一連のフレーム画像の中から、例えばユーザのシャッタ・ボタン操作のような撮影操作のタイミングに最も近い所望のタイミングのフレーム画像を選択する。但し、所望のタイミングのフレーム画像は、これに限定されることなく、撮影操作のタイミングより前または後の任意のタイミングのフレーム画像であってもよい。シャッタ・ボタンとして、入力部３４２の複数のキーまたはボタンの中の任意のキーまたはボタンが用いられてもよい。また、画像選択部３２２６は、記憶部３２４中のバッファ・メモリ部に保存された一連のフレーム画像の中から、最も小さい手振れを表すジャイロ・センサ部３４０の検出値に対応する補正用のフレーム画像を選択する。
【００２８】
画像補正部３２２８の位置ずれ計算部３２２９は、所望のタイミングのフレーム画像に対応するその検出値に基づいて、そのフレーム画像における、露光時間期間Ｔ中の手振れによる２次元移動量（Ｓｘ，Ｓｙ）または画像の移動方向（Ｓφ）および移動距離（ＳＬ）を求める。位置ずれ計算部３２２９は、さらに、所望のタイミングのフレーム画像において、或る画素からその２次元移動量だけ離れた位置にある別の画素までの画像領域を求める。そのような画像領域は、手振れの影響を受けている可能性がある画素または画素値を含んでいる。
【００２９】
位置ずれ計算部３２２９は、さらに、その画像領域の画素の画素値または諧調が、許容誤差の範囲で概して直線的な勾配Ｇを有するかどうかを判定する。そのような画像領域の画素の画素値または諧調が、許容誤差の範囲で直線的な概して勾配Ｇを有する場合、その画像領域は、手振れの影響を受けている傾向がある。
【００３０】
位置ずれ計算部３２２９は、さらに、所望のタイミングのフレーム画像とその補正用のフレーム画像との間の画像の移動量または位置ずれ量を求める。その移動量または位置ずれ量は、所望のタイミングのフレーム画像とその補正用のフレーム画像の間における、ジャイロ・センサ部３４０の検出値に基づいて求められた２次元の移動量（Ｓｘ，Ｓｙ）または移動方向（Ｓφ）および移動距離（ＳＬ）であってもよい。代替形態として、その移動量または位置ずれ量は、所望のタイミングのフレーム画像と補正用のフレーム画像の間での分割領域の画素値マッチングによる動きベクトルによって表されても、またはその動きベクトルとの組み合わせで決定されてもよい。但し、ジャイロ・センサ部３４０の検出値に基づいて２次元の移動量または移動方向および移動距離を求めるための処理負荷は、フレーム画像間の分割領域の画素値に基づいて動きベクトルを求める処理負荷よりも概して小さいであろう。
【００３１】
画像補正部３２２８の画素位置合せ部３２３０は、所望のタイミングのフレーム画像の上述の画像領域に対応する、補正用のフレーム画像における画像領域の画素位置を求める。補正用のフレーム画像におけるその画像領域は、補正用のフレーム画像において、所望のタイミングのフレーム画像における画像領域の画素位置を移動量（Ｓｘ，Ｓｙ）または移動方向（Ｓφ）および移動距離（ＳＬ）だけ移動させた画素位置にあるものとしてもよい。
【００３２】
画像補正部３２２８の画素補正部３２３２は、所望のタイミングのフレーム画像における画像領域の画素を、補正用のフレーム画像における対応する画像領域の画素の画素値で補正または補償する。そのために、画素補正部３２３２は、所望のタイミングのフレーム画像における画像領域の画素値Ｐａを、補正用のフレーム画像における対応する画像領域の画素値Ｐｂで置き換えてもよい。そのような置換を行うことによって、低い処理負荷でまたは短い時間で、補正されたフレーム画像を生成することができる。
【００３３】
代替形態として、画素補正部３２３２は、所望のタイミングのフレーム画像における画像領域の画素値Ｐａと、補正用のフレーム画像における対応する画像領域の画素値Ｐｂとを或る重み付けで加算して合成し、所望のタイミングのフレーム画像における画像領域の画素値Ｐａをその合成された画素値Ｐｃで置換してもよい。その重み付けは、所望のタイミングのフレーム画像の画素値（α）と補正用のフレーム画像の画素値（β）の重み付けが、例えばα：β＝１：４であってもよい（Ｐｃ＝（１Ｐａ＋４Ｐｂ）／５）。そのような重み付け加算を行うことによって、所望のタイミングのフレーム画像と補正用のフレーム画像の画像合成の不自然さを緩和することができる。
【００３４】
図３Ａ〜３Ｃは、ジャイロ・センサ部３４０によって検出される、３次元軸（Ｘ，Ｙ，Ｚ）に対する情報処理装置３０またはそのジャイロ・センサ部３４０のヨー、ロールおよびピッチの回転角度（θｙ，θｒ，θｐ）の３次元的な位置関係の例を示している。ここで、カメラ部３３８によって撮像される長方形状の画像の水平方向Ｘおよび垂直方向Ｙは、情報処理装置３０の水平方向Ｘおよび垂直方向Ｙに対応するものとする。
【００３５】
ジャイロ・センサ部３４０は、画像の撮影または捕捉のタイミングにおいて、回転角速度（ωｙ，ωｒ，ωｐ）と、ヨー、ロールおよびピッチの回転角度（θｙ，θｒ，θｐ）とを検出値として検出して、その検出値をデータ保存部３２２４に供給する。
【００３６】
図３Ａ〜３Ｃにおいて、情報処理装置３０は、例えば、それぞれ垂直軸Ｙおよび水平軸Ｘの方向に、情報処理装置３０の主要面の高さＨおよび幅Ｗを有し、水平軸Ｘおよび垂直軸Ｙと直交する水平軸Ｚの方向に、情報処理装置３０の厚さまたは奥行きＴを有する。ここで、情報処理装置３０は、図３Ａ〜３Ｃの配置で、３軸Ｙ、ＺおよびＸをそれぞれ回転軸とするヨー、ロールおよびピッチの回転の基準角度（θｙ，θｒ，θｐ）＝（０°，０°，０°）を有するものとしてもよい。但し、情報処理装置３０の３軸Ｙ、Ｚ、Ｘの方向および回転の基準角度は、これに限定されることなく、図３Ａ〜３Ｃとは異なる方向および角度であってもよい。情報処理装置３０のカメラ部３３８のイメージ・センサの受光面は、図３Ａ〜３Ｃの情報処理装置３０の主要面と同様のヨー、ロールおよびピッチの３次元的な位置関係を有するものとして近似することができる。
【００３７】
従って、ジャイロ・センサ部３４０で検出された回転角度（θｙ，θｒ，θｐ）およびその角速度ωｙ、ωｒ、ωｐに基づいて、カメラ部３３８によって撮影された各フレーム画像における手振れによる画像のズレ量またはズレを表すベクトル（Ｖｘ，Ｖｙ）を求めることができる。そのズレ量またはベクトルは、回転の角度（θｙ，θｒ，θｐ）および角速度（ωｙ，ωｒ，ωｐ）に基づいて、様々な方法で求めることができ、そのいずれを用いても、または複数の方法を組み合わせて用いてもよい。その組合せ方として、例えば、複数の方法で求められたズレ量の平均値または加重平均を用いてもよい。
【００３８】
カメラ部３３８の撮像用のイメージ・センサにおいて露光時間期間Ｔに捕捉された１つのフレーム画像Ｐ＿ＴＡの各画素の値は、露光開始時点ｔａｓからその後の露光終了時点ｔａｅまでの露光時間期間Ｔにおけるそれぞれの画素位置での受光量分の電荷の累積値に対応する。複数のフレーム画像が連続的に生成される場合、露光終了時点ｔａｅは、フレーム画像Ｐ＿ＴＡに続く次のフレーム画像Ｐ＿ＴＡ＋１の露光開始時点ｔｂｓと実質的に同じと仮定してもよい。また、フレーム画像Ｐ＿ＴＡの露光開始時点ｔａｓのタイミングにおいて、ジャイロ・センサ部３４０によって、回転角度（θｙａ，θｒａ，θｐａ）および角速度（ωｙａ，ωｒａ，ωｐａ）が検出されたとする。この場合、バッファ・メモリに保存されるジャイロ・センサ部３４０の検出値は、各フレーム画像について１組とすることができる。同様に、次のフレーム画像Ｐ＿ＴＡ＋１の露光開始時点ｔｂｓにおいて、ジャイロ・センサ部３４０によって、回転角度（θｙｂ，θｒｂ，θｐｂ）および角速度（ωｙｂ，ωｒｂ，ωｐｂ）が検出されたとする。代替形態として、角速度（ωｙａ，ωｒａ，ωｐａ）は、回転角度（θｙａ，θｒａ，θｐａ）と次の回転角度（θｙｂ，θｒｂ，θｐｂ）の間の単位時間当りの角度差として求められてもよい（（θｙｂ−θｙａ）／Ｔ，（θｒｂ−θｒａ）／Ｔ，（θｐｂ−θｐａ）／Ｔ）。ここで、フレーム画像は、水平方向に２Ｌ個の画素を有し、水平方向の画素数の２分の１がＬ個であるとする。
【００３９】
この場合、フレーム画像Ｐ＿ＴＡにおける露光開始時点ｔａｓから露光終了時点ｔａｅ＝ｔｂｓまでの期間における、手振れによるＸ軸およびＹ軸方向のズレ量または移動量（Ｓｘ，Ｓｙ）は、例えば、角度（θｙａ，θｒａ，θｐａ）と（θｙｂ，θｒｂ，θｐｂ）に基づいて次の式で表される。
ｘ方向のズレ量：Ｓｘ＝Ｌ×ｃｏｓ（Δθｙ）＋Ｌ×ｃｏｓ（Δθｒ）
ｙ方向のズレ量：Ｓｙ＝Ｌ×ｃｏｓ（Δθｐ）＋Ｌ×ｃｏｓ（Δθｒ）
ここで、Δθｙ＝θｙｂ−θｙａ、Δθｒ＝θｒｂ−θｒａ、Δθｐ＝θｐｂ−θｐａである。
【００４０】
一方、手振れによるズレの速度ｖは角速度（ωｙａ，ωｒａ，ωｐａ）と回転半径（Ｌ）の距離の積（ω×Ｌ）で表される。従って、変位またはズレ量は、速度ｖの積分値で表されてもよい。ここで、前のフレーム画像の露光開始時点から露光開始時点ｔａｓまでの区間で、速度ｖａ（ωｙａ・Ｌ，ωｒａ・Ｌ，ωｐａ・Ｌ）を積分して、露光開始時点ｔａｓでの積分値（Ｘａ、Ｙａ）が得られるもの仮定する。また、露光開始時点ｔａｓから露光終了時点ｔａｅ＝ｔｂｓまでの区間で、速度ｖｂ（ωｙｂ・Ｌ，ωｒｂ・Ｌ，ωｐｂ・Ｌ）を積分してこれを積分値（Ｘａ，Ｙａ）に加算して、露光終了時点ｔａｅ＝ｔｂｓでの積分値（Ｘｂ，Ｙｂ）とが得られるものと仮定する。この場合、フレーム画像Ｐ＿ＴＡの露光開始時点ｔａｓから露光終了時点ｔａｅ＝ｔｂｓまでの手振れによるズレ量または移動量（Ｓｘ，Ｓｙ）は、例えば、次の式で表されてもよい。
ｘ方向のズレ量：Ｓｘ＝Ｘｂ−Ｘａ
ｙ方向のズレ量：Ｓｙ＝Ｙｂ−Ｙａ
【００４１】
フレーム画像Ｐ＿ＴＡにおけるＸおよびＹ方向のズレ量（Ｓｘ，Ｓｙ）は、これらの方法に限定されることなく、その他の方法で求められてもよい。このようにして、いずれかの方法で、フレーム画像Ｐ＿ＴＡにおけるＸおよびＹ方向の手振れによるズレ量が求められる。そのズレ量は、例えばベクトルＶＡ（Ｖｘ，Ｖｙ）で表されてもよい。
【００４２】
上述したように、複数の画像が連続的に生成される場合、露光終了時点ｔａｅは、フレーム画像Ｐ＿ＴＡに続く次のフレーム画像Ｐ＿ＴＡ＋１の露光開始時点ｔｂｓと一致するものと仮定してもよい。従って、代替形態として、フレーム画像Ｐ＿ＴＡの露光終了時点ｔａｅのタイミングにおいて、ジャイロ・センサ部３４０によって、回転角度（θｙａ，θｒａ，θｐａ）および角速度（ωｙａ，ωｒａ，ωｐａ）が得られるものとしてもよい。
【００４３】
一方、露光時間期間Ｔの露光終了時点ｔａｅと次の露光開始時点ｔｂｓの間の時間差が無視できない場合もある。この場合、露光時間期間Ｔでの修正したズレ量（Ｓ’ｘ，Ｓ’ｙ）が、上述のズレ量（Ｓｘ，Ｓｙ）に、露光開始時点ｔａｓとｔｂｓの間の時間Ｔｓに対する露光時間期間Ｔの比を乗じることによって求められてもよい。この場合、修正したズレ量（Ｓ’ｘ，Ｓ’ｙ）は、例えば、上述のスレ量（Ｓｘ，Ｓｙ）を用いて、次の式で求められる。
（Ｓ’ｘ，Ｓ’ｙ）＝（Ｓｘ・Ｔ／Ｔｓ，Ｓｙ・Ｔ／Ｔｓ）
【００４４】
図４Ａは、手振れを伴う１つのフレーム画像Ｐ＿ＴＡにおける、露光開始時点ｔａｓでの、Ｘ−Ｙ平面上の或る方向（横軸）の複数の画素の画素値ＰＬ＿Ｈのレベルの例を示している。図４Ｂは、そのフレーム画像Ｐ＿ＴＡにおける、露光終了時点ｔａｅ＝ｔｂｓでの図４Ａと同じ複数の画素の画素値ＰＬ＿Ｈのレベルの例を示している。図４Ｃは、そのフレーム画像Ｐ＿ＴＡにおける、露光開始時点ｔａｓから露光終了時点ｔａｅ＝ｔｂｓまでの間の時間期間における、図４Ａと同じ複数の画素の画素値ＰＬ＿Ｈのレベルの例を示している。
【００４５】
図４Ａおよび４Ｂの画素値のレベルは、露光開始時点ｔａｓと終了時点ｔａｅ＝ｔｂｓにおけるそれぞれの瞬間的なレベルを表している。一方、図４Ｃの画素値のレベルは、例えば、露光時間期間Ｔにおける映像を表す受光量分の電荷の累積値または積分値のレベルを表している。但し、図４Ａ〜４Ｃの縦軸は、複数の画素の画素値のレベルの相対的な高低関係を説明するために示されているに過ぎず、具体的な値を示すものではない。ここで、画素値ＰＬ＿Ｈは、例えば、輝度階調または白黒（モノクローム）濃度階調に対応するものであっても、または例えば緑（Ｇ）のような任意の色の階調に対応するものであってもよい。その階調数は、例えば、５１２または２５６であってもよい。
【００４６】
図４Ａにおいて、露光開始時点ｔａｓでは、横軸の正方向に画像の画素値のレベルが位置ａにおいて急峻な立上りを示している。図４Ｂにおいて、その後の露光終了時点ｔａｅ＝ｔｂｓでは、画像の位置が横軸の正方向にずれて、画像の画素値のレベルが位置ｂにおいて急峻な立上りを示している。この立上り位置の移動は、手振れによってフレーム画像Ｐ＿ＴＡにおいて位置ａから位置ｂまでの移動方向と移動距離だけ画像が移動したことを表す。一方、図４Ｃにおいて、破線で示されたフレーム画像Ｐ＿ＴＡの位置ａから位置ｂまでの範囲の画素の画素値は、実線で示されているように、横軸の正方向の位置ａと位置ｂの間で概して直線的に上昇する正の勾配または傾斜を有する。フレーム画像Ｐ＿ＴＡにおいて、そのような画素値の勾配を有する部分は、特に手振れによって生じた画像のぼやけとして観察者に強く知覚される傾向がある。
【００４７】
フレーム画像Ｐ＿ＴＡにおける位置ａから位置ｂまでの画像領域における画像のぼやけは、その画像領域の画素の画素値を、別のフレーム画像Ｐ＿ＴＢにおけるそれに対応する画像領域の画素の画素値で補正しまたは置換することによって、補正または補償することができる。
【００４８】
フレーム画像Ｐ＿ＴＡにおける位置ａから位置ｂまでの画像領域と、それに対応するフレーム画像Ｐ＿ＴＢにおける画像領域との位置関係は、ジャイロ・センサ部３４０で検出されたフレーム画像Ｐ＿ＴＡからフレーム画像Ｐ＿ＴＢまでの検出値の累積的な変化量に基づいて求めることができる。そのために、その検出値に基づいて、フレーム画像Ｐ＿ＴＡからフレーム画像Ｐ＿ＴＢまでの間の画像の２次元移動量または移動方向および移動距離が求められ、その２次元移動量に基づいて、フレーム画像Ｐ＿ＴＡにおけるその画像領域と、フレーム画像Ｐ＿ＴＢにおける対応の画像領域との間の画素の位置関係が求められる。その検出値は、例えば、フレーム画像Ｐ＿ＴＡとＰ＿ＴＢの角度θＡとθＢ、およびフレーム画像Ｐ＿ＴＡからフレーム画像Ｐ＿ＴＢまでの複数の角速度ωＡ、...ωＢであってもよい。
【００４９】
代替形態として、フレーム画像Ｐ＿ＴＡの画像領域とＰ＿ＴＢの対応の画像領域との間の画素位置の対応関係は、分割領域のマッチングによる動きベクトルによって求められてもよい。あるいは、その対応関係は、さらに、角度θＡとθＢおよび角速度ωＡ、．．．ωＢを組み合わせて用いて求められてもよい。
【００５０】
図４Ｄは、図４Ｃにおける概して直線的に上昇する正の勾配を有する画素値を含む画像領域を、別のフレーム画像Ｐ＿ＴＢにおける対応する画像領域の高いレベルの画素値で置換した場合の画素値ＰＬ＿Ｈのレベルの例を示している。
【００５１】
図４Ｄのフレーム画像Ｐ＿ＴＣでは、横軸の正方向に画像の画素値のレベルが位置ａにおいて急峻な立上りを示すように補正されている。
【００５２】
図４Ｅは、図４Ｃにおける概して直線的に上昇する正の勾配を有する画素値を含む画像領域を、別のフレーム画像Ｐ＿ＴＢにおける対応する画像領域の低いレベルの画素値で置換した場合の画素値ＰＬ＿Ｈのレベルの例を示している。
【００５３】
図４Ｅのフレーム画像Ｐ＿ＴＣでは、横軸の正方向に画像の画素値のレベルが位置ｂにおいて急峻な立上りを示すように補正されている。
【００５４】
図５Ａは、手振れを伴う１つのフレーム画像Ｐ＿ＴＡにおける、露光開始時点ｔａｓでの、Ｘ−Ｙ平面上の或る方向（横軸）の複数の画素の画素値ＰＬ＿Ｈのレベルの例を示している。図５Ｂは、そのフレーム画像Ｐ＿ＴＡにおける、露光終了時点ｔａｅ＝ｔｂｓでの図５Ａと同じ複数の画素の画素値ＰＬ＿Ｈのレベルの例を示している。図５Ｃは、そのフレーム画像Ｐ＿ＴＡにおける、露光開始時点ｔａｓから露光終了時点ｔａｅ＝ｔｂｓまでの間の時間期間における、図５Ａと同じ複数の画素の画素値ＰＬ＿Ｈのレベルの例を示している。
【００５５】
図５Ａおよび５Ｂの画素値のレベルは、露光開始時点ｔａｓと終了時点ｔａｅ＝ｔｂｓにおけるそれぞれの瞬間的なレベルを表している。一方、図５Ｃの画素値のレベルは、例えば、露光時間期間Ｔにおける映像を表す受光量分の電荷の累積値または積分値のレベルを表している。但し、図５Ａ〜５Ｃの縦軸は、複数の画素の画素値のレベルの相対的な高低関係を説明するために示されているに過ぎず、具体的な値を示すものではない。
【００５６】
図５Ａにおいて、露光開始時点ｔａｓでは、横軸の正方向に画像の画素値のレベルが位置ａにおいて急峻な立下りを示している。図５Ｂにおいて、その後の露光終了時点ｔａｅ＝ｔｂｓでは、画像の位置が横軸の正方向にずれて、画像の画素値のレベルが位置ｂにおいて急峻な立下りを示している。この立下り位置の移動は、手振れによってフレーム画像Ｐ＿ＴＡにおいて位置ａから位置ｂまでの移動方向と移動距離だけ画像が移動したことを表す。一方、図５Ｃにおいて、破線で示されたフレーム画像Ｐ＿ＴＡの位置ａから位置ｂまでの範囲の画素の画素値は、実線で示されているように、横軸の正方向の位置ａと位置ｂの間で概して直線的に下降する負の勾配または傾斜を有する。フレーム画像Ｐ＿ＴＡにおいて、そのような画素値の勾配を有する部分は、特に手振れによって生じた画像のぼやけとして観察者に強く知覚される傾向がある。
【００５７】
フレーム画像Ｐ＿ＴＡにおける位置ａから位置ｂまでの画像領域における画像のぼやけは、その画像領域の画素の画素値を、別のフレーム画像Ｐ＿ＴＢにおけるそれに対応する画像領域の画素の画素値で補正しまたは置換することによって、補正または補償することができる。その補正は、図５Ｄおよび５Ｅについて説明したのと同様の形態で行われてもよい。
【００５８】
図５Ｄは、図５Ｃにおける概して直線的に下降する負の勾配を有する画素値を含む画像領域を、別のフレーム画像Ｐ＿ＴＢにおける対応する画像領域の低いレベルの画素値で置換した場合の画素値ＰＬ＿Ｈのレベルの例を示している。
【００５９】
図５Ｄのフレーム画像Ｐ＿ＴＣでは、横軸の正方向に画像の画素値のレベルが位置ａにおいて急峻な立下りを示すように補正されている。
【００６０】
図５Ｅは、図５Ｃにおける概して直線的に下降する負の勾配を有する画素値を含む画像領域を、別のフレーム画像Ｐ＿ＴＢにおける対応する画像領域の高いレベルの画素値で置換した場合の画素値ＰＬ＿Ｈのレベルの例を示している。
【００６１】
図５Ｅのフレーム画像Ｐ＿ＴＣでは、横軸の正方向に画像の画素値のレベルが位置ｂにおいて急峻な立下りを示すように補正されている。
【００６２】
図６は、ユーザがシャッタ・ボタンを押す前後の時間期間における時系列の一連の複数のフレーム画像Ｐ＿−４〜Ｐ＿＋５の時間的な関係の例を示している。
【００６３】
図６において、フレーム画像Ｐ＿０はシャッタ・ボタンを押した瞬間のタイミングのフレーム画像を表している。また、フレーム画像Ｐ＿−４〜Ｐ＿−１は、シャッタ・ボタンを押す前のそれぞれのタイミングのフレーム画像を表している。フレーム画像Ｐ＿＋１〜Ｐ＿＋５は、シャッタ・ボタンを押した後のそれぞれのタイミングのフレーム画像を表している。フレーム画像Ｐ＿０は、ユーザの所望のタイミングで撮影されたものであるが、手振れによる画像のぼやけを含むフレーム画像Ｐ＿ＴＡであるとする。所望のタイミングは、例えば、シャッタ・ボタンを押下した瞬間のフレーム画像またはその直前または直後のフレーム画像の生成タイミングであってもよい。また、所望のタイミングは、例えば、シャッタ・ボタンを押下した瞬間またはその直前または直後のフレーム画像とは異なるフレーム画像の生成タイミングであってもよい。
【００６４】
一方、フレーム画像Ｐ＿＋３は、別のタイミングで撮影されたもので、最小の角速度の検出値に対応づけられたフレーム画像Ｐ＿ＴＢであるとする。ここで、最小の角速度に対応づけられたフレーム画像は、手振れによる画像のぼやけが無いかまたは最小である。この場合、フレーム画像Ｐ＿ＴＡのぼやけた画像領域の画素値が、フレーム画像Ｐ＿ＴＢにおけるぼやけが無いまたは最小の対応する画素領域の画素値を用いて、補正または補償するものとする。フレーム画像Ｐ＿ＴＢはフレーム画像Ｐ＿ＴＡの後のタイミングのフレーム画像でなくてもよく、例えば、その前のタイミングのフレーム画像Ｐ＿−３の画像が最小の角速度の検出値に対応づけられている場合、フレーム画像Ｐ＿−３がフレーム画像Ｐ＿ＴＢとして用いられてもよい。
【００６５】
図７Ａは、フレーム画像Ｐ＿ＴＡにおける手振れによるぼやけを示す画像領域の画素の例を示している。この画像領域では、ジャイロ・センサ部３４０の検出値に基づいて求められた手振れによる移動方向および移動距離を示す矢印の始点の画素ＰＬ（Ｘａ，Ｙａ）からその矢印の終点の画素ＰＬ（Ｘａｓ，Ｙａｓ）までの範囲の一連の画素の階調が概して直連的に上昇しているものとする。
【００６６】
図７Ｂは、フレーム画像Ｐ＿ＴＡの画像領域の画素ＰＬ（Ｘａ，Ｙａ）〜ＰＬ（Ｘａｓ，Ｙａｓ）に対応する別のフレーム画像Ｐ＿ＴＢの画像領域の画素ＰＬ（Ｘｂ，Ｙｂ）〜ＰＬ（Ｘｂｓ，Ｙｂｓ）の位置の例を示している。この場合、フレーム画像Ｐ＿ＴＢは、一連のフレーム画像の中で、ジャイロ・センサ部３４０によって検出された角速度ωＢが最小のものであるとする。
【００６７】
図７Ｃは、フレーム画像Ｐ＿ＴＡの画像領域の画素ＰＬ（Ｘａ，Ｙａ）〜ＰＬ（Ｘａｓ，Ｙａｓ）を、別のフレーム画像Ｐ＿ＴＢの画像領域の画素ＰＬ（Ｘｂ，Ｙｂ）〜ＰＬ（Ｘｂｓ，Ｙｂｓ）の画素値で補正または補償して得られた補正後のフレーム画像Ｐ＿ＣＡの例を示している。図７Ｃの画像Ｐ＿ＣＡにおいて、図７Ａのフレーム画像Ｐ＿ＴＡにおける画素ＰＬ（Ｘａ，Ｙａ）〜ＰＬ（Ｘａｓ，Ｙａｓ）の画素値が、フレーム画像Ｐ＿ＴＢにおける画素ＰＬ（Ｘｂ，Ｙｂ）〜ＰＬ（Ｘｂｓ，Ｙｂｓ）の画素値で置き換えられている。代替形態として、フレーム画像Ｐ＿ＴＡにおける画素ＰＬ（Ｘａ，Ｙａ）〜ＰＬ（Ｘａｓ，Ｙａｓ）の画素値は、画素のＰＬ（Ｘａ，Ｙａ）〜ＰＬ（Ｘａｓ，Ｙａｓ）の各画素値と、画素ＰＬ（Ｘｂ，Ｙｂ）〜ＰＬ（Ｘｂｓ，Ｙｂｓ）の対応する各画素値とを或る重みで加算して得た画素値で、置き換えられてもよい。
【００６８】
このようにして、所望のタイミングのフレーム画像Ｐ＿ＴＡにおける手振れによるぼやけた画像領域の画素が、最小の角速度に対応するフレーム画像Ｐ＿ＴＢでのより鮮明な対応する画像領域の画素値で補正または補償することができる。
【００６９】
図８Ａ〜８Ｃは、情報処理装置３０によって実行される、所望のタイミングのフレーム画像Ｐ＿ＴＡを、最小の角速度に対応するフレーム画像Ｐ＿ＴＢを用いて補正または補償するための処理のフローチャートの例を示している。
【００７０】
図８Ａを参照すると、ステップ５０２において、ユーザによる情報処理装置３０の撮像用のアプリケーションの起動に応答して、プロセッサ３２２（またはそのアプリケーション部３２２２）は、そのカメラ部またはカメラ・モジュール３３８を起動する。
【００７１】
ステップ５０４において、プロセッサ３２２（またはそのデータ保存部３２２４）は、或る間隔または露光時間期間Ｔの間隔で連続的に撮像された複数のフレーム画像（例えば、Ｐ＿−４〜Ｐ＿＋５）を捕捉して記憶部３２４中のバッファ・メモリに順次保存する。それと並行して、プロセッサ３２２（データ保存部３２２４）は、各フレーム画像の撮影または捕捉タイミングで、ジャイロ・センサ部３４０によって検出された角度（θｙ，θｒ，θｐ）および角速度（ωｙ，ωｒ，ωｐ）を捕捉して、各フレーム画像に対応付けてそのバッファ・メモリに順次に保存する。
【００７２】
角度（θｙ，θｒ，θｐ）および角速度（ωｙ，ωｒ，ωｐ）は、各フレーム画像における露光時間期間Ｔの開始時点での検出値であっても、その開始時点と終了時点の間の概ね中央のタイミングでの検出値であっても、またはその露光時間期間Ｔにおける複数の時点での検出値の平均値であってもよい。そのバッファ・メモリには、撮影されたフレーム画像が順次追加的に格納され、バッファ・メモリに保存されたフレーム画像の数が閾値を超えると、閾値を超えた分の数のフレーム画像が古い順に削除または消去されてもよい。保存されるフレーム画像の数の閾値は、例えば８〜１６の範囲内の或る値であってもよい。
【００７３】
ステップ５０４は、シャッタ・ボタンが押される前の期間においても連続的に実行され、さらに、シャッタ・ボタンが押された後で撮影された或る数のフレーム画像が保存されるまで継続的に実行される。その或る数は、例えば４〜８の範囲内の或る値であってもよい。
【００７４】
ステップ５０６において、プロセッサ３２２（データ保存部３２２４）は、ユーザによって情報処理装置３０のシャッタ・ボタンが押されたかどうかを判定する。ステップ５０６におけるシャッタ・ボタンが押されたかどうか判定は、シャッタ・ボタンが押された後で、或る数のフレーム画像が撮影されて保存された後で行われてもよい。シャッタ・ボタンが押されたと判定された場合は、手順はステップ５０８に進む。シャッタ・ボタンが押されなかったと判定された場合は、手順はステップ５０４に戻って、シャッタ・ボタンが押されるまでステップ５０４が繰り返される。
【００７５】
シャッタ・ボタンが押された後のステップ５０８において、プロセッサ３２２（データ保存部３２２４）は、そのバッファ・メモリに格納された、シャッタ・ボタン押下の前後の一連のフレーム画像（例えば、Ｐ＿−４〜Ｐ＿＋５）および対応する角度および角速度の検出値を削除せずに保持する。その際、プロセッサ３２２（アプリケーション部３２２２またはデータ保存部３２２４）は、カメラ部３３８によるその後の撮影動作を停止させてもよい。
【００７６】
ステップ５１０において、プロセッサ３２２（その画像選択部３２２６）は、予め設定された所望のタイミングのフレーム画像Ｐ＿ＴＡ、およびその角度θＡおよび角速度ωＡの検出値を、そのバッファ・メモリから取得しまたは選択する。ここで、角度θＡは、例えば、３つの成分値（θｙａ，θｒａ，θｐａ）を含んでおり、角速度ωＡは、例えば、３つの成分値（ωｙａ，ωｒａ，ωｐａ）を含んでいる。
【００７７】
ステップ５１２において、プロセッサ３２２（画像選択部３２２６）は、バッファ・メモリに格納された複数のフレーム画像（例、Ｐ＿−４〜Ｐ＿＋５）に対応する各角速度（ωｙ，ωｒ，ωｐ）を互いに比較し、最小の角速度（ωｙｂ、ωｒｂ、ωｐｂ）のフレーム画像Ｐ＿ＴＢを決定しまたは選択する。その比較のために、各フレーム画像の角速度として、３つの角速度成分の２乗の和（ωｙ２＋ωｒ２＋ωｐ２）またはその平方根（ωｙ２＋ωｒ２＋ωｐ２）１／２が用いられてもよい。代替形態として、その比較のために、各フレーム画像の角速度として、３つの角速度の和（ωｙ＋ωｒ＋ωｐ）が用いられてもよい。代替形態として、その比較のために、各フレーム画像における、上述のｘ方向のズレ量Ｓｘ、ｙ方向のズレ量Ｓｙの２乗の和（Ｓｘ２＋Ｓｙ２）またはその平方根（Ｓｘ２＋Ｓｙ２）１／２が用いられて、その最小のズレ量のフレーム画像が決定されまたは選択されてもよい。最小の角速度またはズレ量を有するフレーム画像は、手振れの影響が最小であり手振れによるぼやけが最も少なく、画質がより高いと期待される。従って、最小の角速度またはズレ量を有するフレーム画像は、フレーム画像Ｐ＿ＴＡにおける手振れによるぼやけた画像領域を補正または補償するのに用いることができる。
【００７８】
ステップ５１４において、プロセッサ３２２（画像選択部３２２６）は、そのバッファ・メモリから、フレーム画像Ｐ＿ＴＢ、およびその角度θＢおよび角速度ωＢを取得する。
【００７９】
ステップ５１６において、プロセッサ３２２（画像選択部３２２６）は、所望のタイミングのフレーム画像Ｐ＿ＴＡの角速度ωＡと、最小の角速度に対応するフレーム画像Ｐ＿ＴＢの角速度ωＢとを比較して、角速度ωＡが角速度ωＢに等しいか（ωＡ＝ωＢ）どうかを判定する。角速度ωＡと角速度ωＢが等しいと判定された場合は、手順は図８Ｃのステップ５４０に進む。この場合、フレーム画像Ｐ＿ＴＡは、複数のフレーム画像の中で手振れの影響が最も小さく、手振れ補正しなくてよいことを表している。角速度ωＡと角速度ωＢが等しくない、即ち角速度ωＡが角速度ωＢより大きいと判定された場合は、手順は図８Ｂのステップ５１８に進む。
【００８０】
図８Ｂを参照すると、ステップ５１８において、プロセッサ３２２（またはその位置ずれ計算部３２２９）は、フレーム画像Ｐ＿ＴＡの角度θＡおよび／または角速度ωＡに基づいて、フレーム画像Ｐ＿ＴＡにおけるズレ分の移動量（Ｓｘ，Ｓｙ）を算出する。その計算のために、フレーム画像Ｐ＿ＴＡの角度θＡおよび／または角速度ωＡと、その直後または次のフレーム画像Ｐ＿ＴＡ＋１の角度θ（Ａ＋１）および／または角速度ω（Ａ＋１）とが用いられてもよい。代替形態として、フレーム画像Ｐ＿ＴＡの角度θＡおよび／または角速度ωＡと、その直前のフレーム画像Ｐ＿ＴＡ−１の角度θ（Ａ−１）および／または角速度ω（Ａ−１）とが用いられてもよい。この場合、バッファ・メモリに保存されるジャイロ・センサ部３４０の検出値は、各フレーム画像について１組の検出値だけでよい。少なくてよい。代替形態として、角度θＡは、例えば、フレーム画像Ｐ＿ＴＡの露光開始時点ｔａｓと露光終了時点ｔａｅにおける２組の角度および角速度（θＡｓ，ωＡｓ）、（θＡｅ，ωＡｅ）を含んでいて、その２組の角速度が移動量（Ｓｘ，Ｓｙ）の計算に用いられてもよい。移動量（Ｓｘ，Ｓｙ）は、フレーム画像Ｐ＿ＴＡにおける水平Ｘ方向および垂直Ｙ方向の画素数で表されてもよい。
【００８１】
ステップ５２０において、プロセッサ３２２（位置ずれ計算部３２２９）は、フレーム画像Ｐ＿ＴＡ中の１つの画素を画素ＰＬ１として取り出す。ステップ５２０が繰り返し実行されることによって、フレーム画像Ｐ＿ＴＡ中の複数の画素が順次取り出される。その際、後で説明するステップ５３６において先にフレーム画像Ｐ＿ＴＢの画素で置換されたフレーム画像Ｐ＿ＴＡの画素は、取り出されなくてもよい。
【００８２】
ステップ５２２において、プロセッサ３２２（位置ずれ計算部３２２９）は、フレーム画像Ｐ＿ＴＡにおいて、画素ＰＬ１の位置に移動量（Ｓｘ，Ｓｙ）を加算した位置にある画素ＰＬ２を取り出す。
【００８３】
ステップ５２４において、プロセッサ３２２（位置ずれ計算部３２２９）は、画素ＰＬ１から画素ＰＬ２までの直線上にある、フレーム画像Ｐ＿ＴＡの画素ＰＬ１から画素ＰＬ２までの画素の経路を、算出しまたは決定する。その経路は、例えば、図７Ａの場合、矢印の始点の画素ＰＬ（Ｘａ，Ｙａ）の位置から、矢印の方向に、Ｘ方向に２画素移動し、次いで、Ｙ方向に１画素移動し、Ｘ方向に２画素移動し、Ｙ方向に１画素移動し、Ｘ方向に１画素移動して、画素ＰＬ（Ｘａｓ，Ｙａｓ）に到達するものである。
【００８４】
ステップ５２６において、プロセッサ３２２（位置ずれ計算部３２２９）は、画素ＰＬ１から画素ＰＬ２までの経路上の画素値の階調変化の勾配Ｇを算出する。そのために、画素ＰＬ１の画素値から画素ＰＬ２の画素値が減算されて階調の差が生成され、その差を移動方向の移動距離（ＳＬ）で除算して、画素値の階調の勾配または傾斜Ｇが求められてもよい（Ｇ＝（画素ＰＬ１の画素値−画素ＰＬ２の画素値）／ＳＬ）。代替形態として、画素ＰＬ２の画素値から画素ＰＬ１の画素値が減算されて階調の差が生成され、その差を移動距離で除算して、画素値の階調の勾配Ｇが求められてもよい（Ｇ＝（画素値２−画素値１）／ＳＬ）。ここで、移動量として、例えば画素数を単位とする距離（Ｓｘ＋Ｓｙ）１／２が用いられてもよい。
【００８５】
ステップ５２８において、プロセッサ３２２（位置ずれ計算部３２２９）は、経路上の隣接の２つの画素ｊおよび（ｊ＋１）を取り出して、その２つの画素の間の画素値の階調の勾配ｇを求める。画素位置ｊの初期値は、例えば画素ＰＬ１の位置であってもよい。そのために、画素ｊの画素値から画素（ｊ＋１）の画素値が減算されて階調の差が生成され、その差を移動方向の移動距離（Ｓｌ）で除算して、画素値の階調の勾配または傾斜ｇが求められてもよい（ｇ＝（画素ｊの画素値−画素（ｊ＋１）の画素値）／Ｓｌ）。代替形態として、画素ｊ＋１の画素値から画素ｊの画素値が減算されて階調の差が生成され、その差を移動量で除算して、画素値の階調の勾配ｇが求められてもよい（ｇ＝（画素（ｊ＋１）の画素値−画素ｊの画素値）／Ｓｌ）。ここで、画素ｊと画素（ｊ＋１）間での移動方向の移動量（Ｓｌ）は、画素ＰＬ１と画素ＰＬ２を結ぶ直線上での画素ｊと画素（ｊ＋１）間の移動量の成分であり、画素ＰＬ１の中心から画素ＰＬ２の中心を結ぶ直線に投影された画素ｊと（ｊ＋１）の各中心位置の間の距離であってもよい。ステップ５２８が繰り返し実行されることによって、経路上の各１対の隣接の画素が順次取り出される。
【００８６】
ステップ５３０において、プロセッサ３２２（位置ずれ計算部３２２９）は、その隣接画素の画素値の階調の勾配ｇが、経路の画素ＰＬ１から画素ＰＬ２までの画像領域の画素値の階調の勾配Ｇに概ね相当するか（ｇ≒Ｇ）、またはその勾配Ｇの許容誤差範囲内にあるか（ｇ＝Ｇ±ΔＧ）どうかを判定する。ここで、許容誤差ΔＧは、例えば、勾配値Ｇの１０％であってもよい。画素ｊ、（ｊ＋１）の画素値の階調の勾配ｇが勾配Ｇに概ね相当すると判定された場合は、手順はステップ５３２に進む。隣接の画素値の階調の勾配ｇが勾配Ｇに相当しない（ｇ＞Ｇ＋ΔＧ、ｇ＜Ｇ−ΔＧ）と判定された場合は、この時点での画素ＰＬ１から画素ＰＬ２までの経路の画像領域の画素は補正の対象でないので、手順はステップ５２０に戻る。この場合、ステップ５２０において、次の画素が画素ＰＬ１として取り出される。
【００８７】
ステップ５３２において、プロセッサ３２２（位置ずれ計算部３２２９）は、比較する隣接画素ｊおよび（ｊ＋１）の位置をそれぞれ＋１だけ増分する（ｊ＝ｊ＋１、ｊ＋１＝ｊ＋１＋１）。
【００８８】
図８Ｃを参照すると、ステップ５３４において、プロセッサ３２２（位置ずれ計算部３２２９）は、１対の隣接の画素中の画素ｊの位置が、移動量（Ｓｘ，Ｓｙ）に達したかまたは終点の画素ＰＬ２に達したかどうかを判定する。画素ｊの位置が移動量に達したと判定された場合は、手順はステップ５３６に進む。これは、画素ＰＬ１から画素ＰＬ２まで経路上の全ての隣接の画素間の階調の勾配ｇが勾配Ｇに概ね相当すると判定されたことを表す。画素ｊの位置が移動量に達していないと判定された場合は、手順はステップ５２８に戻る。それによって、画素ＰＬ１から画素ＰＬ２まで経路上の全ての隣接の画素について、ステップ５２８〜５３０が繰り返し実行される。
【００８９】
ステップ５３６において、プロセッサ３２２（その画素位置合せ部３２３０）は、フレーム画像Ｐ＿ＴＡにおける経路上の画素ＰＬ１から画素ＰＬ２の画像領域の画素に対応する、フレーム画像Ｐ＿ＴＢ中の画像領域の画素を決定する。そのために、プロセッサ３２２（位置ずれ計算部３２２９）は、フレーム画像Ｐ＿ＴＡの画像領域とフレーム画像Ｐ＿ＴＢにおける対応する画像領域の間の２次元的な移動量（Ｓｘ，Ｓｙ）を求めてもよい。その移動量（Ｓｘ，Ｓｙ）は、例えば、それぞれの角度θＡとθＢおよび／またはフレーム画像Ｐ＿ＴＡとＰ＿ＴＢの間の角速度ωＡ、・・・ωＢに基づいて算出されてもよい。代替形態として、その移動量（Ｓｘ，Ｓｙ）は、例えば、角度θＡとθＢおよび／またはフレーム画像Ｐ＿ＴＡとＰ＿ＴＢの間の角速度ωＡ、・・・ωＢと、２つのフレーム画像Ｐ＿ＴＡ、Ｐ＿ＴＢの間での分割領域のマッチングにより求められる動きベクトルとの組合せで求められてもよい。プロセッサ３２２（画素位置合せ部３２３０）は、フレーム画像Ｐ＿ＴＢにおいて、フレーム画像Ｐ＿ＴＡでの画像領域の画素位置を、その移動量（Ｓｘ，Ｓｙ）または移動方向（Ｓφ）および移動距離（ＳＬ）だけ移動させた位置の画素を、対応する画像領域の画素として決定する。
【００９０】
ステップ５３８において、プロセッサ３２２（その画素補正部３２３２）は、フレーム画像Ｐ＿ＴＡにおける経路上の画素ＰＬ１から画素ＰＬ２までの画像領域の画素の画素値を、フレーム画像Ｐ＿ＴＢ中の対応する画像領域の画素の画素値で補正する。そのために、前述のように、フレーム画像Ｐ＿ＴＡにおける画像領域の画素の画素値が、フレーム画像Ｐ＿ＴＢ中の対応する画像領域の画素の画素値で置き換えられてもよい。代替形態として、フレーム画像Ｐ＿ＴＡにおける画像領域の画素の各画素値は、前述のように、フレーム画像Ｐ＿ＴＡにおける画像領域の各画素の画素値と、フレーム画像Ｐ＿ＴＢにおける対応する画像領域の各画素の画素値とを或る重みで加算して得られた画素値で、置き換えられてもよい。
【００９１】
ステップ５４０において、プロセッサ３２２（画素補正部３２３２）は、フレーム画像Ｐ＿ＴＡの全ての画素について、取り出しおよび／または置換の処理が完了したかどうかを判定する。フレーム画像Ｐ＿ＴＡについて全ての画素の処理が完了したと判定された場合は、手順はステップ５４２に進む。フレーム画像Ｐ＿ＴＡについて未だ全ての画素の処理は完了していないと判定された場合は、手順はステップ５２０に戻る。
【００９２】
ステップ５４２において、プロセッサ３２２（画素位置合せ部３２３０）は、補正済みのフレーム画像Ｐ＿ＣＡを、例えば外部記憶部３３４に保存する。このようにして、所望のタイミングのフレーム画像Ｐ＿ＴＡにおける手振れによるぼやけが補正されたフレーム画像Ｐ＿ＣＡが得られる。
【００９３】
図９Ａ〜９Ｄは、所望のタイミングのフレーム画像Ｐ＿ＴＡ中の手振れによるぼやけた画像部分が、最も小さい角速度ωＢに対応するフレーム画像Ｐ＿ＴＢにおける対応する画像部分でどのように補正されるかを説明するためのフレーム画像の例を示している。
【００９４】
図９Ａのフレーム画像Ｐ＿ＴＡにおいて、矢印の始点における画素位置から矢印の終点（頭部）までの線上の画像領域に手振れによるぼやけが生じているものとする。この場合、図９Ｂのフレーム画像Ｐ＿ＴＡにおいて、図９Ａの矢印の線上にある白抜きの複数の四角形で表される画素を含む画像領域が、置換される画像領域として決定される。これに対して、図９Ｃのフレーム画像Ｐ＿ＴＢにおいて、複数の四角形で示される画素を含む画像領域が、図９Ａの画素領域に対応するものとして決定される。
【００９５】
次いで、図９Ｂのフレーム画像Ｐ＿ＴＡの白抜きの四角形の画素の画像領域が、図９Ｃのフレーム画像Ｐ＿ＴＢの複数の四角形で表される画素の画像領域でそれぞれ置換されて、図９Ｄに示されているような補正済みのフレーム画像Ｐ＿ＣＡが得られる。
【００９６】
このようにして、例えば図９Ｄのフレーム画像Ｐ＿ＣＡのような補正済みのフレーム画像は、置換された画素の画像領域について手振れによるぼやけが補償されて、ぼやけがなくなりまたは少ないものとなり、その画像がより鮮明なものとなる。
【００９７】
また、上述の画像補正を用いることによって、情報処理装置３０において、カメラ部３３８に小型のカメラ・モジュールが用いられても、各フレーム画像の撮影の露光時間を比較的長くすることができ、それによって手振れの影響を補正するのに充分な画質のフレーム画像が得られる。また、上述のようにして補正された画像が生成されることによって、ユーザは、撮影の失敗が減り、何度も撮影しなおさなくてよくなり、また、望ましいタイミングで撮影された画像を無駄にせずに済む。
【００９８】
以上説明した実施形態は典型例として挙げたに過ぎず、その各実施形態の構成要素を組み合わせること、その変形およびバリエーションは当業者にとって明らかであり、当業者であれば本発明の原理および請求の範囲に記載した発明の範囲を逸脱することなく上述の実施形態の種々の変形を行えることは明らかである。
【００９９】
以上の実施例を含む実施形態に関して、さらに以下の付記を開示する。
（付記１）連続的に捕捉された一連の画像と、前記一連の画像の各画像に対応するジャイロ・センサ部の検出値とを記憶部に保存する保存部と、
前記一連の画像の中から或る画像を第１の画像として選択し、前記検出値に基づいて前記一連の画像の中からブレが最小の画像を第２の画像として選択する選択部と、
前記検出値に基づいて前記第１の画像における移動量を求め、前記第１の画像における前記移動量だけ離れた２つの位置の間の第１の領域の複数の画素値が、許容誤差の範囲で直線的な勾配を有する場合に、前記第１の領域の複数の画素値を、前記第１の領域に対応する前記第２の画像における第２の領域の複数の画素値を用いて補正する補正部と、
を含む情報処理装置。
（付記２）前記補正部は、さらに、前記検出値に基づいて前記第１の画像から前記第２の画像までの別の移動量を求め、前記第２の画像における前記第１の領域の位置から前記別の移動量だけ移動させた位置にある領域を前記第２の領域として決定するものであることを特徴とする、付記１に記載の情報処理装置。
（付記３）前記補正部は、前記第１の画像に対応する前記検出値と前記第１の画像の直前または直後の画像に対応する前記検出値とに基づいて、前記第１の画像における２次元の移動量かまたは移動方向および移動距離を、前記移動量として求めるものであることを特徴とする、付記１または２に記載の情報処理装置。
（付記４）前記第１の画像は、撮影操作に関連するタイミングの画像であることを特徴とする、付記１乃至３のいずれかに記載の情報処理装置。
（付記５）前記前第１の領域の複数の画素値の補正は、前記第１の領域の複数の画素値を前記第２の領域の複数の画素値で置換するか、または、前記第１の領域の複数の画素値を、前記第１の領域の複数の画素値と前記第２の領域の複数の画素値を合成して得られた複数の画素値で置換することによって、行われるものであることを特徴とする、付記１乃至４のいずれかに記載の情報処理装置。
（付記６）連続的に捕捉された一連の画像と、前記一連の画像の各画像に対応するジャイロ・センサ部の検出値とを記憶部に保存し、
前記一連の画像の中から或る画像を第１の画像として選択し、前記検出値に基づいて前記一連の画像の中からブレが最小の画像を第２の画像として選択し、
前記検出値に基づいて前記第１の画像における移動量を求め、前記第１の画像における前記移動量だけ離れた２つの位置の間の第１の領域の複数の画素値が、許容誤差の範囲で直線的な勾配を有する場合に、前記第１の領域の複数の画素値を、前記第１の領域に対応する前記第２の画像における第２の領域の複数の画素値を用いて補正する
処理を情報処理装置に実行させるためのプログラム。
（付記７）情報処理装置が、
連続的に捕捉された一連の画像と、前記一連の画像の各画像に対応するジャイロ・センサ部の検出値とを記憶部に保存し、
前記一連の画像の中から或る画像を第１の画像として選択し、前記検出値に基づいて前記一連の画像の中からブレが最小の画像を第２の画像として選択し、
前記検出値に基づいて前記第１の画像における移動量を求め、前記第１の画像における前記移動量だけ離れた２つの位置の間の第１の領域の複数の画素値が、許容誤差の範囲で直線的な勾配を有する場合に、前記第１の領域の複数の画素値を、前記第１の領域に対応する前記第２の画像における第２の領域の複数の画素値を用いて補正する
処理を実行する方法。
【符号の説明】
【０１００】
３０  情報処理装置
３２２  プロセッサ
３２４  記憶部
３３８  カメラ部
３３４  外部記憶部
３４０  ジャイロ・センサ部
３４２  入力部
２４４  表示部
３４６  音響部
３２２２  アプリケーション部
３２２４  データ保存部
３２２６  画像選択部
３２２８  画像補正部
３２２９  位置ずれ計算部
３２３０  画素位置合せ部
３２３２  画素補正部
【図１】
2015019327.tif 000003
【図２】
2015019327.tif 000004
【図３】
2015019327.tif 000005
【図４】
2015019327.tif 000006
【図５】
2015019327.tif 000007
【図６】
2015019327.tif 000008
【図７】
2015019327.tif 000009
【図８Ａ】
2015019327.tif 000010
【図８Ｂ】
2015019327.tif 000011
【図８Ｃ】
2015019327.tif 000012
【図９】
2015019327.tif 000013