(57)【特許請求の範囲】
【請求項１】
第１の軸周りの第１角速度を検出する第１角速度検出部と、
前記第１の軸と直交する第２の軸周りの第２角速度を検出する第２角速度検出部と、
前記第１の軸および前記第２の軸と直交する第３の軸方向の第３加速度を検出する加速度検出部と、
前記第２角速度と前記第３加速度とに基づき前記第２の軸周りのブレ量検出装置の回転運動の第２半径を算出するとともに、前記第１角速度と前記第３加速度とに基づき前記第１の軸周りの前記回転運動の第１半径を前記第１の軸および前記第３の軸が含まれる平面へ射影した第１−３射影半径を算出する回転半径算出部と、
前記第２角速度に前記第２半径を乗算することにより前記第３の軸方向への第３速度の第１成分を算出し、前記第１角速度に前記第１−３射影半径を乗算することにより前記第３の軸方向への第３速度の第２成分を算出する速度算出部と、
前記第３速度の第１成分と前記第３速度の第２成分とを加算して第３速度を取得する速度合成部と、
前記第３速度を時間に関して積分することにより前記第３の軸方向への移動量を算出する移動量算出部と、
を具備したことを特徴とするブレ量検出装置。
【請求項２】
前記第３の軸周りの第３角速度を検出する第３角速度検出部をさらに具備し、
前記加速度検出部は、さらに、前記第２の軸方向の第２加速度を検出するものであり、
前記回転半径算出部は、さらに、前記第３角速度と前記第２加速度とに基づき前記第３の軸周りの前記回転運動の第３半径を算出するとともに、前記第１角速度と前記第２加速度とに基づき前記第１の軸周りの前記回転運動の第１半径を前記第１の軸および前記第２の軸が含まれる平面へ射影した第１−２射影半径を算出するものであり、
前記速度算出部は、さらに、前記第３角速度に前記第３半径を乗算することにより前記第２の軸方向への第２速度の第１成分を算出し、前記第１角速度に前記第１−２射影半径を乗算することにより前記第２の軸方向への第２速度の第２成分を算出するものであり、
前記速度合成部は、さらに、前記第２速度の第１成分と前記第２速度の第２成分とを加算して第２速度を取得するものであり、
前記移動量算出部は、さらに、前記第２速度を時間に関して積分することにより前記第２の軸方向への移動量を算出するものであることを特徴とする請求項１に記載のブレ量検出装置。
【請求項３】
前記第１の軸は、光学系の光軸と同一のＺ軸であり、該Ｚ軸周りの前記回転運動はロール回転運動であり、前記第１角速度はロール角速度であり、前記第１角速度検出部はロール角速度検出部であり、前記第１半径はロール半径であることを特徴とする請求項１に記載のブレ量検出装置。
【請求項４】
前記第１の軸は、光学系の光軸と同一のＺ軸であり、該Ｚ軸周りの前記回転運動はロール回転運動であり、前記第１角速度はロール角速度であり、前記第１角速度検出部はロール角速度検出部であり、前記第１半径はロール半径であり、
前記第２の軸は、撮像装置の標準姿勢における垂直方向の軸となるＹ軸であり、該Ｙ軸周りの前記回転運動はヨー回転運動であり、前記第２角速度はヨー角速度であり、前記第２角速度検出部はヨー角速度検出部であり、前記第２加速度はＹ加速度であり、前記第２半径はヨー半径であり、前記第２速度はＹ方向速度であり、
前記第３の軸は、撮像装置の標準姿勢における水平方向の軸となるＸ軸であり、該Ｘ軸周りの前記回転運動はピッチ回転運動であり、前記第３角速度はピッチ角速度であり、前記第３角速度検出部はピッチ角速度検出部であり、前記第３加速度はＸ加速度であり、前記第３半径はピッチ半径であり、前記第３速度はＸ方向速度であり、
前記第１−３射影半径は、前記ロール半径をＸＺ平面に射影したＸＺロール半径であり、前記第１−２射影半径は、前記ロール半径のＹＺ平面に射影したＹＺロール半径であり、
前記ロール角速度検出部と前記ヨー角速度検出部と前記ピッチ角速度検出部とは角速度検出部に含まれることを特徴とする請求項２に記載のブレ量検出装置。
【請求項５】
前記回転半径算出部は、前記ロール回転運動の影響がないタイミングで検出された前記ヨー角速度および前記Ｘ加速度に基づき前記ヨー半径を算出し、前記ロール回転運動の影響がないタイミングで検出された前記ピッチ角速度および前記Ｙ加速度に基づき前記ピッチ半径とを算出し、前記ヨー回転運動の影響がないタイミングで検出された前記ロール角速度および前記Ｘ加速度に基づき前記ＸＺロール半径を算出し、前記ピッチ回転運動の影響がないタイミングで検出された前記ロール角速度および前記Ｙ加速度に基づき前記ＹＺロール半径を算出することを特徴とする請求項４に記載のブレ量検出装置。
【請求項６】
前記角速度検出部が検出した各角速度と、前記加速度検出部が検出した各加速度とのそれぞれの平均値を、所定の検出数毎に算出する平均化部をさらに具備し、
前記回転半径算出部は、前記平均化部により平均化された各角速度と前記各加速度とに基づいて、前記各半径を算出することを特徴とする請求項４に記載のブレ量検出装置。
【請求項７】
前記回転半径算出部は、前記各角速度から各角加速度を算出して、算出した該各角加速度と前記各加速度とに基づいて、前記各半径を算出することを特徴とする請求項４に記載のブレ量検出装置。
【請求項８】
前記回転半径算出部は、前記角加速度の絶対値が所定の角加速度閾値未満であることと、前記加速度の絶対値が所定の加速度閾値未満であることと、の少なくとも一方が成立するときには、半径を０として前記速度算出部へ出力することを特徴とする請求項７に記載のブレ量検出装置。
【請求項９】
前記回転半径算出部は、最新から過去へ遡った所定数の半径の平均値を、前記速度算出部へ出力することを特徴とする請求項４に記載のブレ量検出装置。
【請求項１０】
前記回転半径算出部は、前記半径の平均値を、該半径の符号別に算出して、正の半径の平均値と負の半径の平均値とを算出し、該回転半径算出部が算出した最新の半径の符号と同一の符号の半径の平均値を、前記速度算出部へ出力することを特徴とする請求項９に記載のブレ量検出装置。
【請求項１１】
前記回転半径算出部は、最新から過去へ遡った所定数の半径に対して、最新から過去へ遡るにつれて軽くなる重みを付与し、該重みを前記半径の符号別に加算して加算重みを算出し、正の半径に対する加算重みと負の半径に対する加算重みとの何れか一方のみが取り得る所定の閾値を設定して、該正の半径に対する加算重みと該負の半径に対する加算重みとの何れか一方が該所定の閾値以上である場合には閾値以上となった符号の半径を前記速度算出部へ出力し、何れも閾値未満である場合には半径を０として前記速度算出部へ出力することを特徴とする請求項１０に記載のブレ量検出装置。
【請求項１２】
静止状態にあるか否かを検出する静止状態検出部をさらに具備し、
前記回転半径算出部は、前記静止状態検出部により静止状態にあることが検出された場合には、半径を０として前記速度算出部へ出力することを特徴とする請求項４に記載のブレ量検出装置。
【請求項１３】
前記回転半径算出部は、前記ヨー角速度検出部の検出値が所定の時間を超えて一定である場合、または、該ヨー角速度検出部の検出値の符号が所定の時間を超えて同じである場合は、所定の時間、半径を０として前記速度算出部へ出力することを特徴とする請求項４に記載のブレ量検出装置。
【請求項１４】
所定の標準方向に対する前記角速度検出部の傾きと前記加速度検出部の傾きとに係る検出部傾き情報を記憶する記憶部と、
前記記憶部から前記検出部傾き情報を読み出して、前記角速度検出部の検出値と前記加速度検出部の検出値とを補正する軸補正部と、
をさらに具備し、
前記回転半径算出部および前記速度算出部は、前記軸補正部により補正された検出値を用いることを特徴とする請求項４に記載のブレ量検出装置。
【請求項１５】
前記角速度検出部による検出値に基づき相対姿勢を検出し、該相対姿勢と前記加速度検出部による検出値とに基づき絶対姿勢を算出し、算出した該絶対姿勢に基づき、前記加速度検出部による検出値から重力加速度成分を除去する加速度重力補正部をさらに具備し、
前記回転半径算出部は、前記重力加速度成分を除去された検出値を用いることを特徴とする請求項４に記載のブレ量検出装置。
【請求項１６】
静止状態にあるか否かを検出する静止状態検出部と、
前記静止状態検出部により静止状態にあると検出されたときに、前記加速度検出部の検出値である加速度情報を記憶する記憶部と、
記憶された前記加速度情報の量が前記加速度検出部の検出感度の経時変化を決定するに足りる場合に、前記加速度検出部の検出感度の補正に用いる感度補正情報を算出する加速度感度補正情報算出部と、
をさらに具備したことを特徴とする請求項４に記載のブレ量検出装置。
【請求項１７】
請求項１に記載のブレ量検出装置と、
被写体からの光を被写体像として結像する光学系と、
前記光学系により結像された被写体像を映像信号に変換する撮像素子と、
前記ブレ量検出装置により検出された移動量を打ち消す方向に、前記光学系と前記撮像素子との少なくとも一方を駆動する駆動部と、
を具備したことを特徴とする撮像装置。
【請求項１８】
前記回転半径算出部は、前記撮像素子による露光が開始されてから所定時間が経過した後は、前記各半径を０として前記速度算出部へ出力することを特徴とする請求項１７に記載の撮像装置。
【請求項１９】
ブレ量検出装置のブレ量検出方法であって、
第１の軸周りの第１角速度を検出し、
前記第１の軸と直交する第２の軸周りの第２角速度を検出し、
前記第１の軸および前記第２の軸と直交する第３の軸方向の第３加速度を検出し、
前記第２角速度と前記第３加速度とに基づき前記第２の軸周りの前記ブレ量検出装置の回転運動の第２半径を算出するとともに、前記第１角速度と前記第３加速度とに基づき前記第１の軸周りの前記回転運動の第１半径を前記第１の軸および前記第３の軸が含まれる平面へ射影した第１−３射影半径を算出し、
前記第２角速度に前記第２半径を乗算することにより前記第３の軸方向への第３速度の第１成分を算出するとともに、前記第１角速度に前記第１−３射影半径を乗算することにより前記第３の軸方向への第３速度の第２成分を算出し、
前記第３速度の第１成分と前記第３速度の第２成分とを加算して第３速度を取得し、
前記第３速度を時間に関して積分することにより前記第３の軸方向への移動量を算出することを特徴とするブレ量検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、角速度の検出結果と加速度の検出結果とに基づき移動量を検出するブレ量検出装置、ブレ量検出装置を備える撮像装置、およびブレ量検出方法に関する。
【背景技術】
【０００２】
近年、手ブレ補正機能を搭載したカメラが一般的になり、手持ち撮影において特段の注意を払わなくても、像ブレのない良好な画像を撮影することができるようになってきている。
【０００３】
しかしながら、露光時間が長くなる長秒撮影時については、未だに手ブレ補正の性能が十分であるとはいえず、補正しきれない場合もある。
【０００４】
特に、長秒撮影をマクロ領域で行う場合には、現在実用化されている手ブレ補正機能では、十分な性能が得られない場合が多い。
【０００５】
マクロ領域での手ブレが十分な性能を獲得していないのは、次の理由による。
【０００６】
カメラのブレは、カメラの光軸の角度が変化することで発生する角度ブレと、カメラが光軸とは垂直方向に移動（シフト）することで発生する並進ブレと、に分類することができる。
【０００７】
そして、現在実用化されている手ブレ補正技術の多くは、前者の角度ブレのみを補正する技術である。
【０００８】
これに対して、後者の並進ブレは、像倍率が低い場合には画質に大きな影響を及ぼすことはないが、像倍率が高くなるにつれて撮影画像の品質に及ぼす影響が大きくなる。現在用いられている手ブレ補正技術ではマクロ領域で十分な性能が得られない理由はこのため（すなわち、マクロ領域では像倍率が高くなるため）である。
【０００９】
このような課題を解決するための技術として、例えば特開２００４−２９５０２７号公報には、交換レンズに加わる振れの加速度を検出する加速度センサと、振れの角速度を検出する角速度センサと、加速度センサおよび角速度センサによる加速度および角速度の検出結果に基づいて角度振れの回転中心を演算し、ブレ補正レンズの目標位置を演算する目標位置変換部とを備え、この目標位置変換部により得られた演算結果に基づいてブレ補正レンズを駆動して像のブレを補正する技術が記載されている。
【００１０】
また、特開２０１０−２４３８２４号公報には、被写体を撮影する撮影光学系と、像振れ補正装置に加わる角速度を検出して出力する角速度検出手段と、像振れ補正装置に加わる加速度を検出して出力する加速度検出手段と、角速度検出手段の出力に基づいて、撮影光学系の主点中心の自転角速度成分を演算する自転角速度演算手段と、加速度検出手段の出力と自転角速度演算手段の演算結果に基づいて、被写体中心の公転角速度成分を演算する公転角速度演算手段と、自転角速度成分と公転角速度成分の差分に基づいて像振れ補正制御を行う制御手段とを有する像振れ補正装置が記載されている。そして、該技術によれば、角度振れと平行振れがどのような状態で混在していても、制御が破綻することのない正確な像振れ補正が可能となり、演算量が低減するとされている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００４−２９５０２７号公報
【特許文献２】特開２０１０−２４３８２４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
上記特開２００４−２９５０２７号公報に記載の技術では、ヨー方向およびピッチ方向の回転運動に起因する並進ブレに基づいて像面のブレ量を算出しているが、ロール方向の回転運動に起因する並進ブレについては考慮されていない。並進ブレはロール方向の回転運動によっても発生するために、この点を考慮しないと、ブレ量を正確に検出しているとはいえない。
【００１３】
この点について、本願に係る図１および図２Ａ〜図２Ｃを参照して説明する。
【００１４】
まず、図１に示すように、光学系２の光軸方向をＺ方向、標準姿勢におけるカメラ１の水平方向をＸ方向、標準姿勢におけるカメラ１の垂直方向をＹ方向とすると、第１の軸であるＺ軸周りの回転運動がロール、第２の軸であるＹ軸周りの回転運動がヨー、第３の軸であるＸ軸周りの回転運動がピッチである。
【００１５】
そして、図２Ａに示すように、カメラ１にヨー方向の回転運動が発生するとＸ方向の移動量が、図２Ｂに示すように、カメラ１にピッチ方向の回転運動が発生するとＹ方向の移動量が生じる。
【００１６】
ただし、カメラ１に生じる並進ブレはこれらのみに起因するものではなく、図２Ｃに示すように、カメラ１にロール方向の回転運動が発生すると、Ｘ方向への移動量成分、およびＹ方向への移動量成分を含む移動量が生じることが分かる。
【００１７】
また、上記特開２０１０−２４３８２４号公報に記載の技術は、例えば極座標系を用いてピント振れ、公転の求心力、公転の加速度、コリオリ力、自転の求心力、自転の加速度、重力加速度成分等を考慮した複雑な演算を行っており、演算負荷が大きくリアルタイム追従性を確保するのが困難である。
【００１８】
本発明は上記事情に鑑みてなされたものであり、比較的簡易な処理で、並進ブレ量をより正確に検出することができるブレ量検出装置、撮像装置、ブレ検出方法を提供することを目的としている。
【課題を解決するための手段】
【００１９】
上記の目的を達成するために、本発明のある態様によるブレ量検出装置は、第１の軸周りの第１角速度を検出する第１角速度検出部と、前記第１の軸と直交する第２の軸周りの第２角速度を検出する第２角速度検出部と、前記第１の軸および前記第２の軸と直交する第３の軸方向の第３加速度を検出する加速度検出部と、前記第２角速度と前記第３加速度とに基づき前記第２の軸周りのブレ量検出装置の回転運動の第２半径を算出するとともに、前記第１角速度と前記第３加速度とに基づき前記第１の軸周りの前記回転運動の第１半径を前記第１の軸および前記第３の軸が含まれる平面へ射影した第１−３射影半径を算出する回転半径算出部と、前記第２角速度に前記第２半径を乗算することにより前記第３の軸方向への第３速度の第１成分を算出し、前記第１角速度に前記第１−３射影半径を乗算することにより前記第３の軸方向への第３速度の第２成分を算出する速度算出部と、前記第３速度の第１成分と前記第３速度の第２成分とを加算して第３速度を取得する速度合成部と、前記第３速度を時間に関して積分することにより前記第３の軸方向への移動量を算出する移動量算出部と、を具備している。
【００２０】
また、本発明の他の態様による撮像装置は、上記態様によるブレ量検出装置と、被写体からの光を被写体像として結像する光学系と、前記光学系により結像された被写体像を映像信号に変換する撮像素子と、前記ブレ量検出装置により検出された移動量を打ち消す方向に、前記光学系と前記撮像素子との少なくとも一方を駆動する駆動部と、を具備している。
【００２１】
本発明のさらに他の態様によるブレ量検出方法は、ブレ量検出装置のブレ量検出方法であって、第１の軸周りの第１角速度を検出し、前記第１の軸と直交する第２の軸周りの第２角速度を検出し、前記第１の軸および前記第２の軸と直交する第３の軸方向の第３加速度を検出し、前記第２角速度と前記第３加速度とに基づき前記第２の軸周りの前記ブレ量検出装置の回転運動の第２半径を算出するとともに、前記第１角速度と前記第３加速度とに基づき前記第１の軸周りの前記回転運動の第１半径を前記第１の軸および前記第３の軸が含まれる平面へ射影した第１−３射影半径を算出し、前記第２角速度に前記第２半径を乗算することにより前記第３の軸方向への第３速度の第１成分を算出するとともに、前記第１角速度に前記第１−３射影半径を乗算することにより前記第３の軸方向への第３速度の第２成分を算出し、前記第３速度の第１成分と前記第３速度の第２成分とを加算して第３速度を取得し、前記第３速度を時間に関して積分することにより前記第３の軸方向への移動量を算出する。
【発明の効果】
【００２２】
本発明のブレ量検出装置、撮像装置、ブレ量検出方法によれば、比較的簡易な処理で、並進ブレ量をより正確に検出することが可能となる。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施形態１において、撮像装置に生じる回転運動の種類を説明するための斜視図。
【図２Ａ】上記実施形態１において、ヨー回転により撮像装置にＸ方向の移動量が生じる様子を示す図。
【図２Ｂ】上記実施形態１において、ピッチ回転により撮像装置にＹ方向の移動量が生じる様子を示す図。
【図２Ｃ】上記実施形態１において、ロール回転により撮像装置にＸ方向およびＹ方向の移動量が生じる様子を示す図。
【図３】上記実施形態１における撮像装置の構成を示すブロック図。
【図４】上記実施形態１におけるブレ補正マイクロコンピュータの構成を示すブロック図。
【図５】上記実施形態１において、並進ブレ補正部の構成を示すブロック図。
【図６】上記実施形態１において、タイミング検出部により検出される半径算出タイミングを説明するための線図。
【図７】上記実施形態１において、回転運動の中心がカメラの撮影者側にある場合と被写体側にある場合とで半径算出部で算出される半径の符号が異なることを説明するための図。
【図８Ａ】上記実施形態１において、回転運動の中心がカメラの左側にある場合と右側にある場合とで半径算出部で算出される半径の符号が異なることを説明するための図。
【図８Ｂ】上記実施形態１において、回転運動の中心がカメラの上側にある場合と下側にある場合とで半径算出部で算出される半径の符号が異なることを説明するための図。
【図９】上記実施形態１におけるブレ量検出のメイン制御を示すフローチャート。
【図１０】上記実施形態１において、図９のステップＳ６における回転半径算出の処理の詳細を示すフローチャート。
【図１１】上記実施形態１において、図１０のステップＳ６７における回転半径選択の処理の詳細を示すフローチャート。
【図１２】上記実施形態１において、半径算出部内のメモリに保持されている正および負の回転半径の例を示す図表。
【図１３】上記実施形態１において、半径に与える重みの例を示す線図。
【図１４】上記実施形態１において、半径に与える重み付けの一例を示す図表。
【図１５】本発明の実施形態２におけるブレ補正マイクロコンピュータの構成を示すブロック図。
【図１６】上記実施形態２における加速度重力補正部の構成を示すブロック図。
【図１７】上記実施形態２において、加速度と重力との成分関係を示す図。
【図１８】上記実施形態２のカメラにおける経時変化補正処理を示すフローチャート。
【発明を実施するための形態】
【００２４】
以下、図面を参照して本発明の実施の形態を説明する。
［実施形態１］
【００２５】
図１から図１４は本発明の実施形態１を示したものであり、図１は撮像装置に生じる回転運動の種類を説明するための斜視図である。
【００２６】
まず、図１を参照して、撮像装置１（撮像装置１は、撮像機能を備えた装置であれば、デジタルカメラ、ビデオカメラ、カメラ機能付き携帯電話など各種の装置を広く含むが、以下では、代表して適宜カメラ１などという）に設定する座標系や回転方向について説明する。
【００２７】
カメラ１は、被写体からの光を被写体像として結像する光学系２を備えており、この光学系２の光軸方向をＺ方向とする。ここに、正のＺ方向は、カメラ１から被写体に向く方向とする。
【００２８】
また、カメラ１の標準姿勢（いわゆる横位置）において、カメラ１の水平方向をＸ方向とする。ここに、正のＸ方向は、被写体側からカメラ１を見て右方向（つまり、撮影者からカメラ１を見て左方向）とする。
【００２９】
さらに、カメラ１の標準姿勢において、カメラ１の垂直方向をＹ方向とする。ここに、正のＹ方向は、標準姿勢における上方向とする。
【００３０】
また、図１（および後述する図２Ａ〜図２Ｃ）においては、座標系がカメラ１と重複して見難くなるのを防ぐために座標系の原点位置をずらして記載しているが、座標系の原点は撮像素子４（図３参照）の撮像面の中心であり、一般的には、撮像面と光学系２の光軸とが交差する点である。この座標系は、カメラ１に固定した座標系であり、カメラ１が移動または回転すれば、座標系も地球に対して移動または回転することになる。また、この座標系において、Ｘ−Ｙ平面は撮像面に一致する面である。
【００３１】
そして、このような座標系において、Ｚ軸周りの回転運動がロール、Ｘ軸周りの回転運動がピッチ、Ｙ軸周りの回転運動がヨーである。
【００３２】
さらに、以下では例えば、原点からＺ軸正方向を見たときのＺ軸周りの左回転がロールの正方向回転、原点からＸ軸正方向を見たときのＸ軸周りの左回転がピッチの正方向回転、原点からＹ軸正方向を見たときのＹ軸周りの右回転がヨーの正方向回転であるものとする。
【００３３】
なお、上述した座標軸の正負方向や回転方向の正負は、後述する角速度センサ８や加速度センサ９（図３等参照）の実装方向に依存する便宜上のものであり、理論的には上記に限定されるものではない。
【００３４】
次に、上述した座標系において、回転中心が原点（あるいは、原点も含めて、回転中心がカメラ１内）にある場合は主に角度ブレをもたらし、回転中心がカメラ１の外部にある場合には角度ブレに加えて並進ブレをもたらす。従って、ブレ補正を行う必要があるような並進ブレが発生するのは、実質的に、回転中心がカメラ１の外部にあるときであると考えても差し支えない。
【００３５】
まず、角度ブレに関しては、原点周りの回転運動として記述すればよい。すなわち、ヨー方向の回転運動により光軸が左右に振られて撮像素子４上に結像される被写体範囲が左右に移動し、ピッチ方向の回転運動により光軸が上下に振られて撮像素子４上に結像される被写体範囲が上下に移動することはよく知られている通りである。また、ロール方向の回転運動は、画面の横位置や縦位置、およびその中間の斜め位置をもたらすこともよく知られている通りである。
【００３６】
一方、並進ブレに関しては、上述したように、カメラ１の外部に回転中心がある回転運動として記述することができる。図２Ａはヨー回転により撮像装置にＸ方向の移動量が生じる様子を示す図、図２Ｂはピッチ回転により撮像装置にＹ方向の移動量が生じる様子を示す図、図２Ｃはロール回転により撮像装置にＸ方向およびＹ方向の移動量が生じる様子を示す図である。
【００３７】
図２Ａに示すように、カメラ１の外部の、原点から距離（回転半径）Ｒyawの位置に回転中心Ｃyawをもつヨー方向の回転運動がカメラ１に発生すると、Ｘ方向の移動量が生じる。
【００３８】
また、図２Ｂに示すように、カメラ１の外部の、原点から距離（回転半径）Ｒpitchの位置に回転中心Ｃpitchをもつピッチ方向の回転運動がカメラ１に発生すると、Ｙ方向の移動量が生じる。
【００３９】
さらに、図２Ｃに示すように、カメラ１の外部の、原点から距離（回転半径）Ｒrollの位置に回転中心Ｃrollをもつロール方向の回転運動がカメラ１に発生すると、一般に、Ｘ方向への移動量成分、およびＹ方向への移動量成分を含む移動量が生じる。
【００４０】
そして、角度ブレと並進ブレとのうち、前者の角度ブレに関しては公知の技術を適宜用いることが可能であるために、本実施形態においては、後者の並進ブレについて主に説明する。
【００４１】
まず、図３は、撮像装置１の構成を示すブロック図である。
【００４２】
撮像装置であるカメラ１は、光学系２と、フォーカルプレーンシャッタ３と、撮像素子４と、駆動部５と、システムコントローラ６と、ブレ補正マイクロコンピュータ７と、角速度センサ８と、加速度センサ９と、レリーズスイッチ１０と、ＥＶＦ（電子ビューファインダ）１１と、内部フラッシュメモリ１３と、を備えている。また、図３にはメモリカード１２も記載されているが、メモリカード１２は例えばカメラ１に対して着脱自在に構成されたものであるために、カメラ１に固有の構成でなくても構わない。
【００４３】
光学系２は、被写体からの光を、被写体像として撮像素子４の撮像面に結像するものである。
【００４４】
フォーカルプレーンシャッタ３は、撮像素子４の前面（光学系２側）に配設されていて、開閉動作を行うことにより露光時間を制御するものである。すなわち、フォーカルプレーンシャッタ３は、開くことで撮像素子４を露光状態にし、閉じることで遮光状態にする。
【００４５】
撮像素子４は、システムコントローラ６の指示に基づいて、撮像面に結像された被写体像を電気信号に変換する。この変換された電気信号は、システムコントローラ６によって映像信号として読み出される。
【００４６】
駆動部５は、撮像面内に平行な２次元方向に移動可能となるように撮像素子４を支持しており、ブレ補正マイクロコンピュータ７からの指示に基づいて、図１等に示したＸ方向およびＹ方向に撮像素子４を駆動する。
【００４７】
システムコントローラ６は、前述した映像信号の読み出しを含む、カメラ１全体の機能に関わる各種の制御を統合的に行う制御部である。システムコントローラ６は、以下に説明するように、ブレ補正マイクロコンピュータ７にブレ検出を行わせ、ブレ検出結果に基づいてブレ補正を行わせる制御も行う。
【００４８】
角速度センサ８は、回転運動を検出する角速度検出部として構成されたセンサであり、単位時間当たりの角度変化を角速度として検出しブレ補正マイクロコンピュータ７へ出力する。角速度センサ８は、図２Ａに示したようなＹ軸周りのヨー回転運動に係るヨー角速度を検出するヨー角速度検出部（第２角速度検出部）たるヨー角速度センサ８ａと、図２Ｂに示したようなＸ軸周りのピッチ回転運動に係るピッチ角速度を検出するピッチ角速度検出部（第３角速度検出部）たるピッチ角速度センサ８ｂと、図２Ｃに示したようなＺ軸周りのロール回転運動に係るロール角速度を検出するロール角速度検出部（第１角速度検出部）たるロール角速度センサ８ｃとを含み、回転方向の３自由度の角速度を検出するように構成されている。なお、ここではヨー角速度センサ８ａが第２角速度検出部、ピッチ角速度センサ８ｂが第３角速度検出部であるとしたが、ヨー角速度センサ８ａ（ヨー角速度検出部）が第３角速度検出部、ピッチ角速度センサ８ｂ（ピッチ角速度検出部）が第２角速度検出部であっても構わない。
【００４９】
なお、ヨー角速度センサ８ａと、ピッチ角速度センサ８ｂと、ロール角速度センサ８ｃは、例えば、同一機種のセンサを用いて、実装方向を異ならせることにより、各軸周りの回転運動を検出する。
【００５０】
加速度センサ９は、少なくともＸ軸方向の加速度（Ｘ加速度）とＹ軸方向の加速度（Ｙ加速度）とを検出する加速度検出部であり、本実施形態においてはさらに、Ｚ軸方向の加速度（Ｚ加速度）も検出し得るセンサを採用している。そして、加速度センサ９は、検出した各方向への加速度を、ブレ補正マイクロコンピュータ７へ出力する。
【００５１】
なお、上述した角速度センサ８と加速度センサ９とは、検出時間を異ならせて時系列的に検出を行い、検出結果を逐次ブレ補正マイクロコンピュータ７へ出力するようになっている。
【００５２】
ブレ補正マイクロコンピュータ７は、システムコントローラ６の指示に基づいて、角速度センサ８の出力と加速度センサ９の出力とからカメラ１のブレ量を算出する。そして、ブレ補正マイクロコンピュータ７は、検出したブレ方向と反対方向に検出したブレ量だけ撮像素子４を駆動する指示を駆動部５に対して出力する。これにより駆動部５が、撮像面におけるブレを打ち消すように撮像素子４を駆動するために、撮影画像に発生するブレを防止することができる。なお、ここでは撮像素子４を駆動してブレ補正を行っているが、これに代えて、あるいはこれに加えて、光学系２を駆動してブレ補正を行うようにしても構わない。
【００５３】
そして、ブレ補正マイクロコンピュータ７、角速度センサ８、加速度センサ９を含んでブレ量検出装置が構成され、このブレ量検出装置と駆動部５とを含んでブレ補正装置が構成されている。
【００５４】
レリーズスイッチ１０は、システムコントローラ６と接続された例えば２段式の押圧スイッチでなり、１段目の押圧（半押し、あるいは１ｓｔレリーズ）でＡＦやＡＥが行われ、２段目の押圧（全押し、あるいは２ｎｄレリーズ）で露光が開始されるようになっている。
【００５５】
ＥＶＦ１１は、液晶パネル等を含んで構成された表示部であり、撮像素子４から読み出され、システムコントローラ６等において表示可能な形式に変換された映像信号を、ユーザが視認可能となるように表示する。
【００５６】
メモリカード１２は、撮像素子４から読み出され、システムコントローラ６等において記録可能な形式に変換された映像信号を記録する不揮発性の記録媒体であり、上述したように、カメラ１に対して例えば着脱自在に構成されている。
【００５７】
内部フラッシュメモリ１３は、システムコントローラ６が実行するカメラ１の制御プログラムや、制御に用いられる各種パラメータ等を記録する不揮発性の記録媒体である。
【００５８】
次に図４は、ブレ補正マイクロコンピュータ７の構成を示すブロック図である。
【００５９】
ブレ補正マイクロコンピュータ７は、ＣＰＵ７０と、ＡＤＣ（アナログ・デジタル・コンバータ）７１ａ〜７１ｃと、ＳＩＯ（Serial Input/Output：シリアル入出力）７２ａ，７２ｂと、ドライバ７３と、を備えている。
【００６０】
ＡＤＣ７１ａ〜７１ｃは、角速度センサ８ａ〜８ｃから入力されるアナログ信号を、それぞれデジタル信号に変換する。
【００６１】
ＳＩＯ７２ａ，７２ｂは、ＣＰＵ７０が外部デバイスとシリアルインタフェースで通信を行う通信部であり、ＳＩＯ７２ａは加速度センサ９が検出した加速度の値をＣＰＵ７０が読み出すために用いられ、ＳＩＯ７２ｂはＣＰＵ７０がシステムコントローラ６とコマンドのやり取りを行う通信に用いられる。
【００６２】
ドライバ７３は、ＣＰＵ７０により算出された補正量に基づいて、駆動部５を駆動するための信号を出力する。
【００６３】
ＣＰＵ７０は、ＨＰＦ（ハイ・パス・フィルタ）７０１ａ〜７０１ｅと、加速度取得部７０２と、角度ブレ補正部７０３と、並進ブレ補正部７０４と、通信部７０５と、加算部７０６とを、例えば内部プログラムであるファームウェアにより構成される機能として備えており（ただし、ハードウェアとして構成しても勿論構わない）、角速度センサ８および加速度センサ９の検出結果に基づき、角度ブレおよび並進ブレの補正量を算出する。
【００６４】
ＨＰＦ７０１ａ〜７０１ｅは、デジタルデータとして入力される角速度および加速度の低周波成分を除去する。すなわち、ＨＰＦ７０１ａは入力されるヨー角速度から、ＨＰＦ７０１ｂは入力されるピッチ角速度から、ＨＰＦ７０１ｃは入力されるロール角速度から、ＨＰＦ７０１ｄは入力されるＸ加速度から、ＨＰＦ７０１ｅは入力されるＹ加速度から、低周波成分をそれぞれ除去する。ここで除去する低周波成分は、例えば１Ｈｚ以下の周波数成分が挙げられるが、この帯域に限定されるものではない。手ブレに基づく周波数は、１Ｈｚから１０Ｈｚ程度の間であることが実験で確認されており、これにより、手ブレ以外の要因によるセンサの動き（例えば、ドリフトなど）による経時変化の成分を除去することができる。
【００６５】
また、加速度取得部７０２は、ＳＩＯ７２ａを経由して、加速度センサから独立した３軸方向の加速度を読み出して、図２等に示したＸ軸、Ｙ軸、Ｚ軸の各方向への加速度情報に分割する。そして、加速度取得部７０２は、Ｘ加速度を上述したＨＰＦ７０１ｄへ、Ｙ加速度を上述したＨＰＦ７０１ｅへ、それぞれ出力する。
【００６６】
角度ブレ補正部７０３は、ヨー回転運動およびピッチ回転運動に基づいて、角度変化に伴うブレ量（角度ブレ）を算出するものであるが、この角度ブレについては公知の技術を適宜利用することができるために、詳細は記載しない。
【００６７】
並進ブレ補正部７０４は、加速度および角速度に基づいて、カメラ１の並進移動量を算出し、算出した移動量を撮像面における被写体像のブレ量に変換し、補正量として駆動部５へ伝達する。
【００６８】
通信部７０５は、ＳＩＯ７２ｂを経由して、システムコントローラ６と通信する。
【００６９】
加算部７０６は、角度ブレ補正部７０３により算出された角度ブレ量と、並進ブレ補正部７０４により算出された並進ブレ量とを加算して、トータルのブレ量をドライバ７３へ出力する。
【００７０】
図５はＸ方向並進ブレ補正部の構成を示すブロック図である。
【００７１】
並進ブレ補正部７０４は、Ｘ方向の並進ブレ量の算出に係るＸ方向並進ブレ補正部７０４ｘと、Ｙ方向の並進ブレ量の算出に係るＹ方向並進ブレ補正部とが設けられているが、Ｙ方向並進ブレ補正部はＸ方向並進ブレ補正部７０４ｘと構成が同一であって、入力がヨー角速度に代えてピッチ角速度、Ｘ加速度に代えてＹ加速度になるだけであるために、この図５ではＸ方向並進ブレ補正部７０４ｘのみを図示して説明する。
【００７２】
Ｘ方向並進ブレ補正部７０４ｘは、平均化部７６１ａ〜７６１ｃと、タイミング検出部７６２ａ，７６２ｂと、角加速度算出部７６３ａ，７６３ｂと、半径算出部７６４ａ，７６４ｂと、速度算出部７６５ａ，７６５ｂと、加算部７６６と、積分部７６７と、乗算部７６８と、を備えている。
【００７３】
平均化部７６１ａ〜７６１ｃは、時系列的に入力される角速度および加速度を平均化する。この平均化は、例えば、４サンプリング分のデータの平均値を算出し、１つのサンプリング値として出力することにより行う。この平均化は、後段の角加速度算出部７６３ａ，７６３ｂにおける微分演算により高周波成分か強調されるのを抑制する効果があるとともに、データ量が１／４に減るために、演算量を削減する効果もある。
【００７４】
角加速度算出部７６３ａ，７６３ｂは、平均化された角速度を微分して角加速度を算出する。ここで算出された角加速度は、半径算出部７６４ａ，７６４ｂにおける半径算出に用いられると共に、タイミング検出部７６２ａ，７６２ｂにおける半径算出タイミングの検出に用いられる。
【００７５】
タイミング検出部７６２ａ，７６２ｂは、半径算出部７６４ａ，７６４ｂが半径の算出を行うタイミングを検出する。すなわち、Ｘ方向並進ブレ補正部７０４ｘの場合、タイミング検出部７６２ｂは、ロール回転運動の影響がないタイミングをＹ軸周りのヨー回転運動のヨー半径（第２半径）を算出するタイミングとし、タイミング検出部７６２ａは、ヨー回転運動の影響がないタイミングをＺ軸周りのロール回転運動のロール半径（第１半径）を算出するタイミングとする。
【００７６】
ここでは下記数式１〜数式４に示すように、加速度と角加速度に基づき回転半径を算出しているために、ロール回転運動の影響がないタイミングはロール角加速度が０となるタイミング、ヨー回転運動の影響がないタイミングはヨー角加速度が０となるタイミングである。ただし、後述するように、回転半径Ｒを速度と角速度との関係から算出することも可能であり、この場合には、ロール回転運動の影響がないタイミングはロール角速度が０となるタイミング、ヨー回転運動の影響がないタイミングはヨー角速度が０となるタイミングとなる。
【００７７】
図６はタイミング検出部７６２ａ，７６２ｂにより検出される半径算出タイミングを説明するための線図である。
【００７８】
図６に示すように、ヨー半径を算出するタイミングは、ロール角速度から算出されたロール角加速度が０となるタイミング（図６のグラフにおいてロール角加速度がゼロクロス（０クロス）するタイミングであり、図６の例においては時刻ｔ１およびｔ３）である。また、ロール半径のＺ−Ｘ平面（Ｚ軸およびＸ軸が含まれる平面）への射影半径である第１−３射影半径たるＸＺロール半径を算出するタイミングは、ヨー角速度から算出されたヨー角加速度が０となるタイミング（図６のグラフにおいてヨー角速度がゼロクロスするタイミングであり、図６の例においては時刻ｔ２）である。
【００７９】
同様に、Ｙ方向並進ブレ補正部の場合、タイミング検出部７６２ｂは、ロール回転運動の影響がない（ロール角加速度（またはロール角速度）が０となる）タイミングをＸ軸周りのピッチ回転運動のピッチ半径を算出するタイミングとし、タイミング検出部７６２ａは、ピッチ回転運動の影響がない（ピッチ角加速度（またはピッチ角速度）が０となる）タイミングをロール半径のＺ−Ｙ平面（Ｚ軸およびＹ軸が含まれる平面）への射影半径である第１−２射影半径たるＹＺロール半径を算出するタイミングとすることになる。
【００８０】
半径算出部７６４ａ，７６４ｂは、タイミング検出部７６２ｂ，７６２ａで各検出されたタイミングで、例えば加速度の次元において半径を算出する回転半径算出部である。
【００８１】
すなわち、半径算出部７６４ａは、ヨー半径を算出するタイミングにおいて、角加速度算出部７６３ａから出力されるヨー角加速度αω_yawと、平均化部７６１ｃから出力される平均化されたＸ加速度αｖ_xとに基づいて、以下の数式１に示すようにヨー半径Ｒyawを算出する。
［数１］
Ｒyaw＝αｖ_x／αω_yaw
【００８２】
また、半径算出部７６４ｂは、ＸＺロール半径を算出するタイミングにおいて、角加速度算出部７６３ｂから出力されるロール角加速度αω_rollと、平均化部７６１ｃから出力される平均化されたＸ加速度αｖ_xとに基づいて、以下の数式２に示すようにＸＺロール半径Ｒrollxを算出する。
［数２］
Ｒrollx＝αｖ_x／αω_roll
【００８３】
同様に、Ｙ方向並進ブレ補正部の半径算出部７６４ａでは、ピッチ角加速度αω_pitchとＹ加速度αｖ_yとロール角加速度αω_rollとに基づいて、以下の数式３によりピッチ半径Ｒpitchが算出され、以下の数式４によりＹＺロール半径Ｒrollyが算出される。
［数３］
Ｒpitch＝αｖ_y／αω_pitch
［数４］
Ｒrolly＝αｖ_y／αω_roll
【００８４】
なお、数式１〜数式４を用いた算出を行うに当たっては、単位時間当たりの半径の変化量が小さいことを仮定している。また、本実施形態では、ヨー半径、ピッチ半径、ＸＺロール半径、ＹＺロール半径を算出する際に平均化されたＸ加速度αｖ_xおよび平均化されたＹ加速度αｖ_yを用いたが、平均化をされていないＸ加速度および平均化をされていないＹ加速度を用いても良い。
【００８５】
速度算出部７６５ａ，７６５ｂは、半径算出部７６４ａ，７６４ｂで算出された半径とＨＰＦ７０１ａ〜７０１ｃから入力される角速度とに基づいて、並進速度を算出する。
【００８６】
すなわち、Ｘ方向並進ブレ補正部７０４ｘの速度算出部７６５ａは、半径算出部７６４ａから入力されるヨー半径Ｒyawと、ＨＰＦ７０１ａから入力されるヨー角速度ωyawとを乗算することにより、ヨー回転運動に起因するＸ方向の並進速度（Ｘ軸方向へのＸ方向速度の第１成分）ωyaw×Ｒyawを算出する。
【００８７】
また、Ｘ方向並進ブレ補正部７０４ｘの速度算出部７６５ｂは、半径算出部７６４ｂから入力されるＸＺロール半径Ｒrollxと、ＨＰＦ７０１ｃから入力されるロール角速度ωrollとを乗算することにより、ロール回転運動に起因するＸ方向の並進速度（Ｘ軸方向へのＸ方向速度の第２成分）ωroll×Ｒrollxを算出する。
【００８８】
加算部７６６は、速度合成部であって、速度算出部７６５ａの出力と速度算出部７６５ｂの出力とを加算することにより、ヨー回転運動とロール回転運動との両方に起因するＸ方向の並進速度（Ｘ方向速度）Ｖxを、以下の数式５に示すように算出する。
［数５］
Ｖx＝ωyaw×Ｒyaw＋ωroll×Ｒrollx
【００８９】
同様に、Ｙ方向並進ブレ補正部の速度算出部７６５ａ，７６５ｂがＹ方向速度の第１成分ωpitch×ＲpitchとＹ方向速度の第２成分ωroll×Ｒrollyとを各算出し、速度合成部である加算部７６６がこれらを加算することにより、ピッチ回転運動とロール回転運動との両方に起因するＹ方向の並進速度（Ｙ方向速度）Ｖyを以下の数式６に示すように算出する。
［数６］
Ｖy＝ωpitch×Ｒpitch＋ωroll×Ｒrolly
【００９０】
Ｘ方向並進ブレ補正部７０４ｘの積分部７６７は、移動量算出部として機能し、算出されたＸ方向速度Ｖxを以下の数式７に示すように時間ｔに関して積分して、Ｘ軸方向への移動量ΔＸを算出する。
［数７］
0005846927.tif 000002
【００９１】
同様に、Ｙ方向並進ブレ補正部の積分部７６７は、移動量算出部として機能し、算出されたＹ方向速度Ｖyを以下の数式８に示すように時間ｔに関して積分して、Ｙ軸方向への移動量ΔＹを算出する。
［数８］
0005846927.tif 000003
【００９２】
こうして算出された移動量ΔＸ，ΔＹは、角速度センサ８および加速度センサ９の移動量、つまりカメラ１自体の移動量である。これに対してブレ補正を行うためには、撮像素子４の撮像面上に結像される光学像の移動量を求める必要がある。そこで、乗算部７６８が、ＳＩＯ７２ｂおよび通信部７０５を介してシステムコントローラ６から入力されるパラメータである像倍率ｆ（図９のステップＳ３参照）を、積分部７６７から入力される移動量ΔＸ，ΔＹに乗算することにより、撮像面におけるブレ量に変換して補正量Ｄ（図９のステップＳ３参照）として出力する。
【００９３】
こうして算出された補正量Ｄ（並進ブレ量）は、上述したように、加算部７０６において、角度ブレ量と加算される。従って、ドライバ７３は、加算後のトータルのブレ量に基づいて、駆動部５を駆動するための信号を出力することになる。
【００９４】
ここで、半径算出部７６４ａ，７６４ｂで算出される半径の符号に関して、図７、図８Ａ、図８Ｂを参照して説明する。図７は回転運動の中心がカメラ１の撮影者側にある場合と被写体側にある場合とで半径算出部７６４ａ，７６４ｂで算出される半径の符号が異なることを説明するための図、図８Ａは回転運動の中心がカメラ１の左側にある場合と右側にある場合とで半径算出部７６４ａ，７６４ｂで算出される半径の符号が異なることを説明するための図、図８Ｂは回転運動の中心がカメラ１の上側にある場合と下側にある場合とで半径算出部７６４ａ，７６４ｂで算出される半径の符号が異なることを説明するための図である。
【００９５】
半径算出部７６４ａ，７６４ｂは、数式１〜数式４に示したように、半径Ｒを加速度と角加速度とから算出する。これら加速度と角加速度は、正の値と負の値の何れも取り得る。従って、算出される半径Ｒの符号は、加速度の符号と角加速度の符号との関係に応じて、正になる場合もあれば負になる場合もある。
【００９６】
こうして算出される半径Ｒをそのまま用いて、速度算出部７６５ａ，７６５ｂが並進速度成分を算出した場合に、半径Ｒの符号が正である場合と負である場合とでは、算出される速度の向きが反対になる。
【００９７】
例えば図７に示すように、回転運動の中心が、カメラ１よりも手前（撮影者側）にある場合と、被写体ＯＢＪ側にある場合とでは、算出される半径Ｒの符号が異なることになる。
【００９８】
図７を左側面方向から（Ｘ軸正側のカメラ１外部からＸ軸負方向へ向けて）カメラ１を見た図であるとすると、角速度センサ８が正の角速度（図１にピッチとして示すように、正は原点を見て右回りとなる）を検出した場合に、カメラ１の手前（撮影者側）に回転中心Ｃrotがあるときに算出される速度は上方向の速度となるが、被写体ＯＢＪ側に回転中心Ｃrevがあるときに算出される速度は下方向の速度となる。
【００９９】
また、図７を上側から下向きにカメラ１を見た図であるとすると、ヨー方向の回転運動についてもほぼ同様の説明が当てはまる（ただし、図１にヨーとして示したように、正は原点を見て左回りとなるために、上記とは正負逆となる）。
【０１００】
ここに、回転中心Ｃrotがカメラ１よりも手前（撮影者側）にある場合というのは、主に、カメラ１を支持する軸の揺れによるもの、すなわち、カメラ１を把持する撮影者の手が揺れる、いわゆる手ブレであると考えられる。
【０１０１】
また、回転中心Ｃrevが被写体ＯＢＪ側にある場合というのは、主に、回転中心Ｃrevが被写体ＯＢＪとなる場合、すなわち、狙いの被写体ＯＢＪがフレームの中心から外れたときに、フレームの中心に戻そうとする動きにより発生するものと考えられる。この種の動きは、連続的でない場合が多い。
【０１０２】
次に、ロール回転運動について考えてみる。ロール回転運動は、Ｘ方向の移動量とＹ方向の移動量との両方に影響を与えるために、Ｘ方向の移動量に関わる係数としての半径と、Ｙ方向の移動量に関わる係数としての半径と、の２つに分けて考えることにする。
【０１０３】
Ｙ方向の移動量に関わる半径Ｒの符号は、図８Ａに示すように、回転中心がカメラ１の撮影者から見た右（Ｃright）にあるか左（Ｃleft）にあるかに応じて、正負が決まる。
【０１０４】
また、Ｘ方向の移動量に関わる半径Ｒの符号は、図８Ｂに示すように、回転中心がカメラ１の上（Ｃtop）にあるか下（Ｃunder）にあるかに応じて、正負が決まる。
【０１０５】
このロール回転運動に関する回転中心の位置は、主に、撮影姿勢に影響を受ける場合が多い。例えば、Ｙ方向の移動量に関わる、回転中心がカメラ１の右（Ｃright）にあるか左（Ｃleft）にあるかは、撮影者がカメラ１を把持するグリップ位置の関係から右（Ｃright）になる場合が多い。また、Ｘ方向の移動量に関わる、回転中心がカメラ１の上（Ｃtop）にあるか下（Ｃunder）にあるかは、カメラ１を通常に構える場合には撮影者のひじがカメラ１よりも下になるために下（Ｃunder）にあるが、ローアングル撮影の場合は撮影者のひじがカメラ１よりも上になるために上（Ｃtop）になる。
【０１０６】
以上述べたような半径の符号の取扱は、逆補正になる場合、つまりブレを補正するどころか拡大してしまうことになる場合もあるために、注意が必要である。そこで、この半径の符号をどのように決定するかについては、後でより詳細に説明する。
【０１０７】
次に、並進ブレ補正部７０４におけるブレ量検出の制御の流れを説明する。まず図９は、ブレ量検出のメイン制御を示すフローチャートである。この図９に示す処理は、例えば１ｍｓの時間間隔で定期的に実行される処理となっている。
【０１０８】
このメイン制御における動作は、角速度や加速度を検出して回転半径の算出は行うがブレ補正は行わない検出期間と、検出期間に算出された回転半径を用いてブレ補正を行う補正期間と、の２つの制御期間に分かれている。この制御期間が検出期間であるか補正期間であるかは、ステートフラグstateに記録されるようになっている。
【０１０９】
この処理を開始すると、まず、ステートフラグstateを参照することにより、制御期間が補正期間であるか否かを判定する（ステップＳ１）。
【０１１０】
ここで補正期間でないと判定された場合、つまり検出期間である場合には、後で図１０を参照して説明する回転半径算出の処理を行い（ステップＳ６）、並進速度Ｖを０とし、つまり補正量Ｄを０として出力する（ステップＳ７）。
【０１１１】
その後、露光が開始されたか否かを、ＳＩＯ７２ｂおよび通信部７０５を介してシステムコントローラ６から露光開始が通知されたか否かに基づき、判定する（ステップＳ８）。
【０１１２】
この検出期間中に露光が開始された場合には、ステートフラグstateを補正期間に切り替えてから（ステップＳ９）、また露光が開始されていない場合にはそのまま、このメイン処理を終了する。
【０１１３】
一方、ステップＳ１において補正期間中であると判定された場合には、検出期間において算出された半径Ｒと、角速度センサ８から出力される角速度ωとを乗算することにより並進速度Ｖを算出し（ステップＳ２）、さらに並進速度を時間で積分して像倍率ｆを乗算することにより、撮像面に発生する並進移動量を算出する（ステップＳ３）。
【０１１４】
そして、露光が終了したか否かを、ＳＩＯ７２ｂおよび通信部７０５を介してシステムコントローラ６から露光終了が通知されたか否かに基づき、判定する（ステップＳ４）。
【０１１５】
ここで露光が終了したと判定された場合には、ステートフラグstateを検出期間に切り替えてから（ステップＳ５）、また露光が終了しておらず継続している場合にはそのまま、このメイン処理を終了する。
【０１１６】
図１０は、図９のステップＳ６における回転半径算出の処理の詳細を示すフローチャートである。この回転半径算出処理について、図５を適宜参照しながら説明する。
【０１１７】
なお、この回転半径算出処理は、各回転軸に対して行われ、より詳しくは、ヨー半径Ｒyaw、ピッチ半径Ｒpitch、ＸＺロール半径Ｒrollx、ＹＺロール半径Ｒrollyのそれぞれに対して行われる。
【０１１８】
まず、平均化部７６１ａ〜７６１ｃにより、角速度平均値ωaveの算出（ステップＳ６１）と、加速度平均値αv_aveの算出（ステップＳ６２）と、を行う。
【０１１９】
次に、角加速度算出部７６３ａ，７６３ｂにより、ステップＳ６１において算出された角速度平均値ωaveを時間で微分して、角加速度αω_aveを算出する（ステップＳ６３）。
【０１２０】
次に、タイミング検出部７６２ａ，７６２ｂにより、同一方向速度の第１成分と第２成分とに関わる角加速度の他方がゼロクロスしたことが検出されたか否かを判定する（ステップＳ６４）。すなわち、Ｘ方向速度の第１成分ωyaw×Ｒyawに関わる処理している場合はロール角加速度αω_roll、Ｘ方向速度の第２成分ωroll×Ｒrollxに関わる処理している場合はヨー角加速度αω_yaw、Ｙ方向速度の第１成分ωpitch×Ｒpitchに関わる処理している場合はロール角加速度αω_roll、Ｙ方向速度の第２成分ωroll×Ｒrollyに関わる処理している場合はピッチ角加速度αω_pitchがゼロクロスしたか否かを判定する。
【０１２１】
このステップＳ６４において、ゼロクロスが検出された場合には、半径算出部７６４ａ，７６４ｂにより、ステップＳ６２で求めた加速度平均値αv_aveとステップＳ６３で求めた角加速度αω_aveとを用いて、数式１〜数式４に示したような演算を行うことにより、回転半径Ｒを算出する（ステップＳ６５）。
【０１２２】
なお、回転半径Ｒは、加速度と角加速度とに基づいて算出するに限るものではなく、速度と角速度との関係から算出することも可能である。ただし、速度と角速度との関係から算出する場合には、加速度センサ９により検出した加速度を積分して速度を算出する必要があるが、積分演算によって加速度センサ９のドリフトなどノイズの影響が強調され、算出される半径の精度を低下させる可能性がある。このために本実施形態においては、加速度と角加速度とに基づいて、加速度の次元で半径を算出することで、より精度の高い回転半径の算出を行うようにしている。
【０１２３】
次に、半径算出部７６４ａ，７６４ｂは、ステップＳ６５において算出した回転半径が速度算出に使用可能であるか否かの信頼性判定をさらに行う（ステップＳ６６）。
【０１２４】
並進速度成分は、回転半径と角速度との乗算により算出されるために、回転半径の絶対値が大きい場合には、算出される並進速度成分の絶対値も大きくなり、つまり補正量も大きくなる。すなわち、もし回転半径に誤差が含まれている場合には、誤差に起因する補正量も大きくなり、誤補正に至る可能性がある。
【０１２５】
このために、ステップＳ６５において算出された回転半径を所定の閾値と比較して、回転半径が所定の閾値よりも大きい場合は、信頼性がないと判定して速度算出には用いないことにする（具体的な処理としては、半径算出部７６４ａ，７６４ｂから出力する回転半径を０とする：すなわち、回転半径を０クリアする）。
【０１２６】
また、ステップＳ６５において半径を算出するときに、数式１〜数式４に示したように、加速度を角加速度で除算するが、角加速度が０近傍の値である場合には算出結果が極めて大きな値（場合によっては発散）となる。従って、絶対値が大きい回転半径を用いないようにすることで、このような０除算に起因する誤補正を防止することができる。
【０１２７】
このステップＳ６６における信頼性判定の方法は、上述に限るものではなく、その他の各種の方法を採用することが可能である。
【０１２８】
例えば、回転半径の絶対値の大きさに基づき判定するのに代えて、もしくは加えて、角加速度の絶対値が所定の角加速度閾値未満であることと、加速度の絶対値が所定の加速度閾値未満であることと、の少なくとも一方が成立する場合、つまり数式１〜数式４の何れかにおける右辺の分母と分子の少なくとも一方の絶対値が小さい場合には、半径算出部７６４ａ，７６４ｂは、その数式により算出された回転半径に信頼性がないと判定して、算出結果を用いることなく、回転半径０を出力するようにしても良い。
【０１２９】
なお、回転半径を０クリアする場合としては、さらに、以下のような場合が挙げられる。
【０１３０】
回転半径を０クリアする第１のケースは、静止状態が検出されている場合である。静止状態ではブレがないために、回転半径を０クリアすることにより、誤補正を防止することができる。この静止状態の検出方法としては、例えば、角速度センサ８の出力および加速度センサ９の出力が、ノイズ等と考えられる成分を除いて、所定時間以上、継続して実質的に０となることが挙げられる。また、静止状態であると検出される状態の他の一例は、三脚検出部等により三脚接続が検出されることである。この三脚接続の検出方法については、公知の種々の方法を利用可能であるために具体例は述べないこととする。
【０１３１】
回転半径を０クリアする第２のケースは、パン操作が検出された場合である。パン操作は一般に手ブレには含まれず、しかも比較的大きな角度範囲で移動されるために駆動部５による補正レンジを超える場合が多い。加えて、パン操作が行われるとＨＰＦ（特にＨＰＦ７０１ａやＸ軸方向の加速度に係るＨＰＦ）の影響が後に残るために、パン操作が行われた直後のしばらくの期間は正常な補正量の算出ができなくなる。従って、パン操作に係るヨー回転運動から算出される回転半径、つまり数式１により算出されるヨー半径Ｒyawを０クリアすることで、パン操作後のＨＰＦ７０１の影響による誤補正を防止することができる。なお、パン操作の検出は、角速度センサ８や加速度センサ９の検出値、つまり、ＨＰＦ（特にＨＰＦ７０１ａやＨＰＦ７０１ｄ）からの出力（検出値）が所定の時間を超えて変化しないこと、または、検出値の符号が所定の時間を超えて変化しないことを検出することにより、判定することができる。
【０１３２】
回転半径を０クリアする第３のケースは、露光開始からのブレ補正を実行している時間が所定の時間を超えた場合である。
【０１３３】
長秒撮影でない通常の撮影時間の場合には、撮影画像に与える影響が小さいために、誤補正が生じたとしても撮影画像に与える影響はほとんどない。これに対して長秒撮影の場合には、補正量が小さくても長時間累積（特に、時間により積分される量が長時間累積）されることになるために、（特に、累積された誤差に基づくブレ補正が）撮影画像に与える影響が大きくなる。このために、露光開始からの時間が所定時間を超えた場合は、回転半径を０クリアして補正を停止する。
【０１３４】
この露光時間の監視はＣＰＵ７０により行われ、システムコントローラ６からの露光開始コマンドを受信してからの時間をタイマによりカウントして、カウント値が所定時間を超えた場合には、半径算出部７６４ａ，７６４ｂから出力される回転半径を０クリアする。
【０１３５】
さらに、上述した以外にも、算出する補正量の信頼性が低いと判定された場合には、適宜、回転半径を０クリアすれば良い。
【０１３６】
その後、ステップＳ６５において算出され、ステップＳ６６において信頼性があると判定された回転半径に基づいて、補正期間に演算に使用される半径を選択する（ステップＳ６７）。このステップＳ６７の回転半径選択の処理については、図１１を参照して後で説明する。
【０１３７】
そして、このステップＳ６７の処理が終了するか、または、上述したステップＳ６４においてゼロクロスが検出されなかった場合には、この回転半径算出処理を終了する。
【０１３８】
次に、図１１は、図１０のステップＳ６７における回転半径選択の処理の詳細を示すフローチャートである。
【０１３９】
この処理を開始すると、まず、ステップＳ６５において算出され、ステップＳ６６において信頼性があると判定された回転半径を、最新の算出値から、半径の符号の正負に応じて所定数分保持する（ステップＳ６７１）。ここで保持する所定回数の回転半径は、続く平均化の処理に必要な回数分のものとなるが、ここでは例えば、最新のものから過去へ遡って、正の回転半径、および負の回転半径をそれぞれ５個分ずつ保持する。
【０１４０】
図１２は半径算出部７６４ａ，７６４ｂ内のメモリに保持されている正および負の回転半径の例を示す図表である。図示のように、正用メモリには、右肩に＋記号を付している正の回転半径Ｒが、右下に０〜４の数字を付している最新のものから過去のものへ遡って５個分保存される。同様に、負用メモリには、右肩に−記号を付している負の回転半径Ｒが、右下に０〜４の数字を付している最新のものから過去のものへ遡って５個分保存される。そして、上述したステップＳ６５およびステップＳ６６において、信頼性のある最新の半径が算出されると、それが正の半径である場合には正用メモリ内の記憶内容が１段繰り下がって、最新の半径を記憶する欄に算出された最新のものが記憶され、負の半径である場合には負用メモリについて同様の処理が行われる。従って、半径算出部７６４ａ，７６４ｂ内のメモリに保存されている最も過去の半径は、現世代から遡って、９世代前、もしくはそれ以上前の半径である。
【０１４１】
続いて、半径の誤算出の影響を軽減するために、半径の平均化を行う（ステップＳ６７２）。ただし、半径には正のものと負のものとがあるために、正負を混合して平均化すると打ち消し合って０に近付いてしまう。従ってここでは、半径が正の場合と、負の場合で分けて平均化を行う。
【０１４２】
具体的には、以下の数式９に示すように、正用メモリに保存された５個の正の回転半径Ｒを平均化して正の平均回転半径ＡｖＲ+を算出し、負用メモリに保存された５個の負の回転半径Ｒを平均化して負の平均回転半径ＡｖＲ-を算出する。
［数９］
0005846927.tif 000004
【０１４３】
半径を算出する場合に、加速度または角加速度の値が小さいとノイズ成分の影響が大きくなる。このようなときには算出される半径にばらつきが発生することになるが、平均化を行うことにより、その影響を軽減することができる。
【０１４４】
そして、ステップＳ６７２において算出された正の平均回転半径ＡｖＲ+と負の平均回転半径ＡｖＲ-との何れを用いるかを決定するために、重み付け演算を行う（ステップＳ６７３）。
【０１４５】
具体的には、ステップＳ６７１において保存する半径に、最新のものほど重く、最新から過去へ遡るにつれて軽くなる重みを付与する。図１３は、半径に与える重みの例を示す線図である。図１３には、最新のものが一定の重みをもち、過去へ遡ると単調減少して０に漸近して行く重みの例を示している。
【０１４６】
ステップＳ６７１において保存している半径は、図１２に示した例では、正のものと負のものとを合計すると１０個である。これらの内の例えば最新の５個、つまり現世代〜４世代前までの半径に重みを与える。
【０１４７】
図１４は半径に与える重み付けの一例を示す図表である。
【０１４８】
まず、時刻−ｔ１において取得された現世代の重み付けを５とし、同様に重み付けを、１世代前（時刻−ｔ２）が４、２世代前（時刻−ｔ３）が３、３世代前（時刻−ｔ４）が２、４世代前（時刻−ｔ５）が１であるものとする。そして、現世代から４世代前までに得られた半径の符号が、例えば＋，＋，−，＋，＋の順であったとする。このときに、正の半径に対する＋評価値、および負の半径に対する−評価値を、各符号に対して得られた重みの加算により算出する。図１４に示す例においては、
＋評価値＝５＋４＋２＋１＝１２
−評価値＝３
である。
【０１４９】
半径算出部７６４ａ，７６４ｂは、得られた評価値を比較するための所定の閾値を予め備えており、この閾値は全重み（５＋４＋３＋２＋１＝１５）の半値以上の値に設定されている。従って、この閾値以上の値は、正の半径に対する加算重みと負の半径に対する加算重みとの両方が取ることはできず、取り得るとしても何れか一方のみである（ただし、下記に説明するように両方とも取らない場合もある）。ここでは、この閾値が１０に設定されているものとする。図１４に示した例では、評価値と閾値との比較結果は、
＋評価値＝１２≧１０
−評価値＝３  ＜１０
となる。
【０１５０】
従って、半径更新を行い、半径算出部７６４ａ，７６４ｂは、評価値が閾値以上となった符号の平均回転半径、ここでは正の平均回転半径ＡｖＲ+を速度算出部７６５ａ，７６５ｂへ出力する（ステップＳ６７４）。
【０１５１】
また、−評価値が閾値以上となった場合には、半径算出部７６４ａ，７６４ｂは、負の平均回転半径ＡｖＲ-を速度算出部７６５ａ，７６５ｂへ出力することになる。
【０１５２】
さらに、現世代から４世代前までに得られた半径の符号が、例えば＋，−，−，＋，＋の順である場合には、
＋評価値＝５＋２＋１＝８＜１０
−評価値＝３＋４＝７＜１０
であり、何れの評価値も閾値以上とはならない。この場合には、半径算出部７６４ａ，７６４ｂは、半径更新の処理として、半径０を速度算出部７６５ａ，７６５ｂへ出力する（つまり、０クリアする）。これは、評価値が所定の閾値以上でないと、回転半径の符号が＋であるか−であるかが十分に明確ではないと考えられるために、誤った符号の回転半径を用いた誤補正を未然に防止するべく、補正量を算出しないようにしたためである。
【０１５３】
こうして、ステップＳ６７４の処理が終了したら、この図１１に示す回転半径選択処理から図１０に示す回転半径算出処理に復帰する。
【０１５４】
なお、図１１に示した処理では、半径の符号を選択する際に重み付けを利用して判定しているが、これに限定されるものではない。例えば、符号別に算出された正の半径の平均値と負の半径の平均値との内の、ステップＳ６６において信頼性があると判定された最新の半径の符号と同一の符号の平均値を速度算出部７６５ａ，７６５ｂへ出力するようにしても構わない。
【０１５５】
あるいは、図７、図８Ａ、図８Ｂを参照して説明したように、一般的な撮影においては回転中心は右手でカメラを保持する撮影者側にあることが多いと考えられるために、このような撮影状況を想定して、半径の符号を一方に固定することも考えられる。
【０１５６】
このような実施形態１によれば、ヨー方向の角速度から検出した横方向の移動速度とロール方向の角速度から検出した横方向の移動速度とを速度合成部で合成して横の移動速度を算出し、ピッチ方向の角速度から検出した縦方向の移動速度とロール方向の角速度から検出した縦方向の移動速度とを速度合成部で合成して縦の移動速度を算出するために、ヨー方向の角速度およびピッチ方向の角速度のみに基づいて算出した移動速度よりも正確に移動速度を検出することができる。
【０１５７】
また、ヨー方向の回転運動（角加速度）が０になるタイミングでロール方向の回転運動が横方向に影響を与える半径を算出し、ピッチ方向の回転運動（角加速度）が０になるタイミングでロール方向の回転運動が縦方向に影響を与える半径を算出し、ロール方向の回転運動（角加速度）が０になるタイミングでヨー方向とピッチ方向の回転運動がそれぞれ横方向と縦方向に影響を与える半径を算出しているために、各回転軸の複雑な関係演算を解く必要がなく、演算負荷を増加させることなく比較的簡単に半径を算出することができる。
【０１５８】
さらに、角速度センサおよび加速度センサによって検出された角速度および加速度を所定回数分のサンプリングデータで平均化しているために、後段の微分処理において強調される高周波成分の影響を抑制することができる。そして、平均化によって複数サンプル分のデータを１サンプルのデータとして扱うことができるために、処理対象のデータ量が圧縮されて、演算負荷を低減することができる。
【０１５９】
そして、角速度を微分して角加速度を算出し、算出した角加速度と検出した加速度とに基づいて半径を算出するようにしたために、加速度を積分して速度を算出し、速度と角速度とに基づいて半径を算出する場合よりも、誤差を小さくすることができる。これは、積分演算を行うと誤差が累積する可能性があるために、このような累積誤差による誤算出を回避することができるためである。
【０１６０】
加えて、半径算出に係る加速度と角加速度との少なくとも一方が所定の閾値よりも小さい場合は半径の算出を行わず０を出力するようにしたために、何れかが小さい場合に生じると考えられるノイズの影響を未然に防止することができ、半径の誤算出を回避することができる。
【０１６１】
また、算出され信頼性があると判定された半径を、最新のものから所定回数分だけ平均化することにより、算出された半径のばらつきを低減することができる。このとき、算出した半径を、正の半径と負の半径とで別々に平均化しているために、回転中心の位置に応じた半径の平均化を行うことができる。
【０１６２】
さらに、算出した平均半径の内の、正の平均半径を用いるか負の平均半径を用いるかを、最新の算出された半径の符号に基づき判定する場合には、回転中心位置の変化に素早く対応することができ、リアルタイム性が高い利点がある。
【０１６３】
一方、算出された半径の最新から過去へ所定世代の符号を解析して、最新のものから順に重みを半径の符号別に加算して行き、正の符号の重み合計（＋評価値）と、負の符号の重み合計（−評価値）との内の、何れか一方が所定の閾値以上となった場合は、閾値以上となった符号の平均半径を用いるようにしたために、過去の半径算出経過から符号の正しさを推定することができる。また、何れの評価値も所定の閾値未満の場合には半径として０を出力するようにしたために、半径の符号の正しさを推定することができない場合に補正量が算出されなくなり、誤補正を防止することができる。
【０１６４】
こうして、撮像装置であるカメラ１に発生する並進移動量を、ヨーおよびピッチの回転運動によるものに加えて、ロールの回転運動による影響も考慮するようにしたために、従来よりも、簡易な構成で補正量を精度良く算出することができる。そして、検出した移動量によるブレ量を打ち消すように撮像素子を駆動することにより、並進ブレ量を除去した画像をカメラ１で撮影することができる。
【０１６５】
すなわち、比較的簡易な処理で、並進ブレ量をより正確に検出することができるブレ量検出装置、撮像装置、ブレ量検出方法となる。
［実施形態２］
【０１６６】
図１５から図１８は本発明の実施形態２を示したものであり、図１５はブレ補正マイクロコンピュータの構成を示すブロック図である。この実施形態２において、上述の実施形態１と同様である部分については同一の符号を付して説明を省略し、主として異なる点についてのみ説明する。
【０１６７】
本実施形態におけるブレ補正マイクロコンピュータ７は、図５に示した実施形態１のブレ補正マイクロコンピュータ７の構成に、ＨＰＦ７０１ｆと、角速度軸傾き感度補正部７０７ａと、加速度軸傾き感度補正部７０７ｂと、加速度重力補正部７０７ｃと、静止状態検出部７０８ａと、姿勢状態判断部７０８ｂと、一時メモリ７４と、を追加したものとなっている。
【０１６８】
加速度取得部７０２は、加速度センサから読み出してＸ軸、Ｙ軸、Ｚ軸の各方向へ分割した加速度情報の内のＺ加速度を、さらにＨＰＦ７０１ｆへ出力する。
【０１６９】
ＨＰＦ７０１ｆは、ＣＰＵ７０に含まれており、加速度取得部７０２から入力されるＺ加速度から低周波成分を除去して、処理結果を加速度軸傾き感度補正部７０７ｂへ出力する。
【０１７０】
角速度軸傾き感度補正部７０７ａは、軸補正部であってＣＰＵ７０に含まれ、ＨＰＦ７０１ａ〜７０１ｃおよび通信部７０５から入力を受け、処理結果を角度ブレ補正部７０３、並進ブレ補正部７０４、加速度重力補正部７０７ｃ、および静止状態検出部７０８ａへ出力する。
【０１７１】
加速度軸傾き感度補正部７０７ｂは、軸補正部であってＣＰＵ７０に含まれ、ＨＰＦ７０１ｄ〜７０１ｆおよび通信部７０５から入力を受け、処理結果を加速度重力補正部７０７ｃへ出力する。
【０１７２】
加速度重力補正部７０７ｃは、ＣＰＵ７０に含まれ、角速度軸傾き感度補正部７０７ａと加速度軸傾き感度補正部７０７ｂとから入力を受け、処理結果を並進ブレ補正部７０４へ出力する。
【０１７３】
静止状態検出部７０８ａは、角速度軸傾き感度補正部７０７ａから入力を受け、処理結果を姿勢状態判断部７０８ｂへ出力する。
【０１７４】
姿勢状態判断部７０８ｂは、加速度感度補正情報算出部であって、加速度取得部７０２、静止状態検出部７０８ａ、一時メモリ７４、通信部７０５から入力を受け、処理結果を一時メモリ７４または通信部７０５へ出力する。
【０１７５】
一時メモリ７４は、姿勢状態判断部７０８ｂと接続されていて、情報を一時的に記憶する揮発性の記憶部である。
【０１７６】
次に、このようなブレ補正マイクロコンピュータ７における軸補正の処理について説明する。
【０１７７】
角速度センサ８や加速度センサ９は、部品レイアウト等の設計上の都合に起因して、あるいは取付時の誤差などの個体差に起因して、図１に示したようなＸＹＺ軸にそれぞれ完全に一致したものとなるとは限らない。また、センサ感度もＸＹＺ軸のそれぞれが完全に同一となるとは限らない。そこで、記憶部である内部フラッシュメモリ１３には、各センサの軸の傾きと感度とを補正するための補正情報Ｒが保存されている。この補正情報は、例えば、以下の数式１０に示すような３×３の行列係数である。
［数１０］
0005846927.tif 000005
【０１７８】
この補正情報Ｒには、各センサの軸の所定の標準方向に対する傾きに関する情報（検出部傾き情報）と、各センサの感度に関する情報（感度補正情報）とが含まれていて、角速度センサ８と加速度センサ９とのそれぞれに対する補正情報として内部フラッシュメモリ１３に保存されている。
【０１７９】
この内部フラッシュメモリ１３に記憶された補正情報Ｒは、システムコントローラ６からＳＩＯ７２ｂを介して、カメラ起動時にブレ補正マイクロコンピュータに送信される。
【０１８０】
角速度軸傾き感度補正部７０７ａは、通信部７０５を介して受信した角速度センサ８用の補正情報Ｒに基づいて、角速度センサ８から入力された角速度の情報Ｓに対して、軸の傾きと感度とを補正して、補正後の角速度の情報Ｏを得る。同様に、加速度軸傾き感度補正部７０７ｂは、通信部７０５を介して受信した加速度センサ９用の補正情報Ｒに基づいて、加速度センサ９から入力された加速度の情報Ｓに対して、軸の傾きと感度とを補正して、補正後の加速度の情報Ｏを得る。
【０１８１】
ここに、補正情報Ｒを用いて、補正前の情報Ｓから補正後の情報Ｏを得る演算は、例えば以下の数式１１に示すように行う。
［数１１］
0005846927.tif 000006
【０１８２】
続いて、図１６および図１７を参照して、ブレ補正マイクロコンピュータ７における重力補正の処理について説明する。図１６は加速度重力補正部７０７ｃの構成を示すブロック図、図１７は加速度と重力との成分関係を示す図である。
【０１８３】
図１６に示すように、加速度重力補正部７０７ｃは、積算部７７１と、絶対姿勢算出部７７２と、オフセット成分取得部７７３と、重力加速度算出部７７４と、第１の加算部７７５と、第２の加算部７７６と、第３の加算部７７７と、を備えている。
【０１８４】
加速度軸傾き感度補正部７０７ｂからの３軸加速度は、絶対姿勢算出部７７２と第３の加算部７７７へ入力される。
【０１８５】
上述した角速度軸傾き感度補正部７０７ａからの３軸角速度は、積算部７７１へ入力される。
【０１８６】
第１の加算部７７５は、絶対姿勢算出部７７２の出力を入力すると共に、積算部７７１の出力を反転入力して加算する。
【０１８７】
オフセット成分取得部７７３は、第１の加算部７７５の出力からオフセット成分を取得する。
【０１８８】
第２の加算部７７６は、オフセット成分取得部７７３の出力と積算部７７１の出力とを入力して加算する。
【０１８９】
重力加速度算出部７７４は、第２の加算部７７６の出力から重力加速度を算出する。
【０１９０】
第３の加算部７７７は、加速度軸傾き感度補正部７０７ｂからの３軸加速度を入力すると共に、重力加速度算出部７７４の出力を反転入力して加算し、重力補正後の加速度として出力する。
【０１９１】
このような加速度重力補正部７０７ｃの処理について、さらに詳細に説明する。
【０１９２】
この加速度重力補正部７０７ｃは、角速度情報を利用して、検出された加速度に含まれている重力成分を補正するようになっている。
【０１９３】
まず、角速度情報を積算部７７１は、検出された角速度Ｓｇを累積、つまり数式１２に示すように時間に対して積分することにより、積分開始時点からのカメラ１の相対姿勢情報Ａｒを算出する。
［数１２］
0005846927.tif 000007
【０１９４】
絶対姿勢算出部７７２は、加速度情報Ｓａに基づき、カメラ１の絶対姿勢情報Ａａ’を次の数式１３に示すように算出する。ただし、算出元の加速度情報Ｓａには並進ブレによる加速度の成分が含まれているために、算出される絶対姿勢情報Ａａ’にも並進ブレの影響が含まれることになる。
［数１３］
0005846927.tif 000008
【０１９５】
この数式１３は、図１７に示すような加速度情報Ｓａと重力ｇとの成分関係に基づき得られる。なお、数式１３においては、重力ｇが１となるような単位を用いている。
【０１９６】
第１の加算部７７５は、絶対姿勢算出部７７２により算出された絶対姿勢情報Ａａ’から、積算部７７１により算出された相対姿勢情報Ａｒを減算して、減算結果の（Ａａ’−Ａｒ）を出力する。
【０１９７】
オフセット成分取得部７７３は、第１の加算部７７５の出力の、例えば移動平均を次の数式１４に示すようにとることにより、絶対姿勢算出部７７２により算出された絶対姿勢情報Ａａ’の初期値、つまり姿勢オフセットＡｏを算出する。
［数１４］
Ａｏ＝＜Ａａ’−Ａｒ＞
ここに、記号＜＞は移動平均をとることを示している。
【０１９８】
第２の加算部７７６は、オフセット成分取得部７７３により算出された姿勢オフセットＡｏを、積算部７７１により算出された相対姿勢情報Ａｒに加算することにより、数式１５に示すように、並進ブレの影響が含まれていない絶対姿勢情報Ａａを取得する。
［数１５］
Ａａ＝Ａｒ＋Ａｏ
【０１９９】
重力加速度算出部７７４は、第２の加算部７７６により算出された絶対姿勢情報Ａａに基づいて、次の数式１６に示すように加速度補正情報ｇｃ（加速度情報Ｓａに含まれている重力成分の情報）を算出する。
［数１６］
ｇｃ＝ｓｉｎ（Ａａ）
【０２００】
第３の加算部７７７は、加速度情報Ｓａから加速度補正情報ｇｃを減算することにより、重力加速度成分を含まない正確な並進加速度を取得して、並進ブレ補正部７０４へ出力する。
【０２０１】
加速度重力補正部７０７ｃは、このような演算を、並進ブレ補正部７０４において用いられるＸ加速度とＹ加速度とについてそれぞれ行う。
【０２０２】
次に、図１８はカメラ１における経時変化補正処理を示すフローチャートである。
【０２０３】
加速度センサ９の感度は経時変化することが知られており、長い期間に渡ってカメラ１を利用していると、加速度センサ９の出力を利用する並進ブレ補正部７０４の補正値が正確でなくなってくると考えられる。このために、適当な期間毎に、加速度センサ９の感度を補正するための情報Ｒ（数式１０参照）を修正することが望ましい。
【０２０４】
そこで、本実施形態においては、カメラ１が静止しているときに加速度センサ９に加わる加速度が重力のみとなることを利用して、補正情報Ｒを修正するようにしている。同一の加速度が印加されている加速度センサ９から出力される３軸加速度（Ｓx，Ｓy，Ｓz）（数式１１参照）が、経時変化によって（ｋx×Ｓx，ｋy×Ｓy，ｋz×Ｓz）に変化したとすると、求める未知のパラメータは（ｋx，ｋy，ｋz）の３つであるために、カメラ１が独立した３つ以上の静止姿勢を取っているときの加速度センサ９の出力を利用すれば、加速度センサ９の感度を精度良く推定することが可能である。
【０２０５】
カメラ１の電源がオンされると、この経時変化補正処理が開始される。
【０２０６】
ブレ補正マイクロコンピュータ７は、手ブレ補正システムをオンして、角速度センサ８および加速度センサ９の出力を受信し、手ブレ量を算出して、駆動部５による手ブレ補正を実行する状態にする（ステップＳ２１）。
【０２０７】
この状態において、姿勢状態判断部７０８ｂは、加速度センサ９からの加速度情報を加速度取得部７０２を介して取得する（ステップＳ２２）。
【０２０８】
一方、静止状態検出部７０８ａは、角速度軸傾き感度補正部７０７ａから出力される３軸角速度の情報を利用して、カメラ１が静止状態であるか否かを判定して、姿勢状態判断部７０８ｂへ送信している。そこで、姿勢状態判断部７０８ｂは、この静止状態検出部７０８ａからの出力に基づき、カメラ１が静止状態であるか否かを判定する（ステップＳ２３）。
【０２０９】
姿勢状態判断部７０８ｂは、カメラ１が静止状態であると判定した場合には、さらにステップＳ２２において取得した加速度情報に基づきカメラ１の姿勢を判定して、判定した姿勢に応じた一時メモリ７４内の記録空間に該加速度情報を保存する（ステップＳ２４）。ここに、一時メモリ７４は、姿勢毎に異なった記録空間に、加速度情報（加速度センサ９の出力値）を記録するように構成されている。
【０２１０】
このステップＳ２４の処理が終了するか、またはステップＳ２３においてカメラ１が静止状態でないと判定された場合には、ブレ補正マイクロコンピュータ７は、電源スイッチからカメラ１の電源をオフするパワーオフ命令が入力されたか否かを判定する（ステップＳ２５）。
【０２１１】
ここで、パワーオフ命令が入力されていないと判定した場合には、ステップＳ２２へ戻って上述したような処理を繰り返して行う。
【０２１２】
また、ステップＳ２５においてパワーオフ命令が入力されたと判定した場合には、カメラ１が電源オフされると一時メモリ７４の内容が保持できなくなるために、姿勢状態判断部７０８ｂは、一時メモリ７４に保存している姿勢に応じた加速度情報を、通信部７０５とＳＩＯ７２ｂとを介してシステムコントローラ６側へ送信する（ステップＳ２６）。
【０２１３】
その後、ブレ補正マイクロコンピュータ７は、パワーオフして（ステップＳ２７）終了する。
【０２１４】
一方、システムコントローラ６は、電源がオンされると、電源スイッチからパワーオフ命令が入力されたか否かを定期的に判定している（ステップＳ１１）。
【０２１５】
そして、パワーオフ命令が入力されたと判定した場合には、ブレ補正マイクロコンピュータ７から転送される加速度情報を受信する（ステップＳ１２）。
【０２１６】
さらに、システムコントローラ６は、受信した姿勢に応じた加速度情報を、内部フラッシュメモリ１３内の姿勢に応じた記録空間に保存する（ステップＳ１３）。
【０２１７】
その後、システムコントローラ６は、内部フラッシュメモリ１３に保存された加速度情報が加速度センサ９の感度補正を行うのに十分な量に達したか否かを判定する（ステップＳ１４）。この判定は、加速度情報が、上述したような独立した３つ以上の静止姿勢において取得されたか否かに基づき行われるが、統計的な精度をより高めるためには、独立した３つ以上の静止姿勢において、３よりも大きい所定数以上の加速度情報が内部フラッシュメモリ１３に保存されているか否かに基づき、判定を行うと良い。
【０２１８】
ここで、内部フラッシュメモリ１３に保存された加速度情報が十分な量に達したと判定した場合には、システムコントローラ６は、例えば最小二乗法を用いて上述した修正用のパラメータ（ｋx，ｋy，ｋz）を算出する（ステップＳ１５）。
【０２１９】
そして、システムコントローラ６は、算出した修正用のパラメータ（ｋx，ｋy，ｋz）が妥当であるか否かを判定する（ステップＳ１６）。この判定は、例えば、各修正用パラメータの値が所定範囲内であるか否かに基づき行われる。具体的には、各修正用パラメータが下記数式１７〜数式１９を全て満たせば妥当であると判定し、全て満たさない場合には妥当でないと判定する。
［数１７］
Ｔｈmin≦ｋx≦Ｔｈmax
［数１８］
Ｔｈmin≦ｋy≦Ｔｈmax
［数１９］
Ｔｈmin≦ｋz≦Ｔｈmax
【０２２０】
ここに、Ｔｈminは妥当範囲の下限値を示し、Ｔｈmaxは妥当範囲の上限値を示している。修正がない場合にはｋx＝ｋy＝ｋz＝１となるために、Ｔｈminの値の一例は０．９（より望ましくは０．９５）、Ｔｈmaxの値の一例は１．１（より望ましくは１．０５）などである。ただし、この下限値Ｔｈminおよび上限値Ｔｈmaxは、カメラ１に実装する加速度センサ９の製品毎に適切な値となるように決定すると良い。
【０２２１】
このステップＳ１６において、修正用パラメータが妥当であると判定した場合には、システムコントローラ６は、算出したパラメータ（ｋx，ｋy，ｋz）を用いて、加速度軸傾き感度補正部７０７ｂが用いる補正情報Ｒを修正する（ステップＳ１７）。具体的には、数式１０に示した各係数に対して、Ｒxx，Ｒyx，Ｒzxをｋxで各除算し、Ｒxy，Ｒyy，Ｒzyをｋyで各除算し、Ｒxz，Ｒyz，Ｒzzをｋzで各除算する処理を行う。
【０２２２】
そして、システムコントローラ６は、修正後の補正情報Ｒを内部フラッシュメモリ１３の、修正前の補正情報Ｒに上書き保存する（ステップＳ１８）。
【０２２３】
このステップＳ１８の処理が終了するか、またはステップＳ１４において加速度情報が十分な量に達していないと判定された場合、あるいはステップＳ１６において修正用パラメータが妥当でないと判定された場合には、システムコントローラ６は、カメラ１全体をパワーオフして（ステップＳ１９）終了する。
【０２２４】
このような処理により、次回にカメラ１の電源がオンされたときには、加速度軸傾き感度補正部７０７ｂは、修正後の補正情報Ｒを用いて加速度の軸の傾きと感度とを補正することになる。
【０２２５】
なお、上述では加速度センサ９の感度補正を、カメラ１の電源がオフされるときに行うようにしているが、これに限るものではなく、例えばカメラ１の電源がオンされたときに行っても良いし、その他のタイミングで行っても構わない。
【０２２６】
また、上述では加速度情報を一時メモリ７４に保存して、カメラ１の電源がオフされるときにシステムコントローラ６側へ送信し、内部フラッシュメモリ１３に保存したが、最初から内部フラッシュメモリ１３に保存しても良い。
【０２２７】
このような実施形態２によれば、上述した実施形態１とほぼ同様の効果を奏するとともに、角速度センサ８および加速度センサ９の軸補正を行うようにしたために、より精度の高いブレ補正を行うことが可能となる。
【０２２８】
また、重力が加速度センサ９に及ぼす影響を除去するようにしたために、撮影姿勢の影響を受けることなく、精度の高いブレ補正を行うことが可能となる。このとき、角速度情報に基づき算出した相対姿勢情報を、オフセット情報に基づいて補正して絶対姿勢を求めているために、リアルタイム性の高い検出が可能になる。
【０２２９】
さらに、加速度センサ９の経時変化による感度補正を行うようにしているために、使用時間が長くなるに従って加速度センサ９の感度が変化したとしても、正確なブレ補正性能を維持することが可能となる。
【０２３０】
なお、上述では主としてブレ量検出装置やブレ量検出装置を備える撮像装置について説明したが、ブレ量検出を上述したように行うブレ量検出方法やブレ量検出装置等を上述したように制御する制御方法であっても良いし、ブレ量検出を上述したように行う処理プログラム、コンピュータにブレ量検出装置等を上述したように制御させるための制御プログラム、該処理プログラムや該制御プログラムを記録するコンピュータにより読み取り可能な記録媒体、などであっても構わない。
【０２３１】
また、本発明は上述した実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除しても良い。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。このように、発明の主旨を逸脱しない範囲内において種々の変形や応用が可能であることは勿論である。
【符号の説明】
【０２３２】
１…カメラ（撮像装置）
２…光学系
３…フォーカルプレーンシャッタ
４…撮像素子
５…駆動部（ブレ補正装置）
６…システムコントローラ
７…ブレ補正マイクロコンピュータ（ブレ量検出装置、ブレ補正装置）
８…角速度センサ（角速度検出部、ブレ量検出装置、ブレ補正装置）
８ａ…ヨー角速度センサ（第２または第３角速度検出部、ヨー角速度検出部）
８ｂ…ピッチ角速度センサ（第３または第２角速度検出部、ピッチ角速度検出部）
８ｃ…ロール角速度センサ（第１角速度検出部、ロール角速度検出部）
９…加速度センサ（加速度検出部、ブレ量検出装置、ブレ補正装置）
１０…レリーズスイッチ
１１…ＥＶＦ（電子ビューファインダ）
１２…メモリカード
１３…内部フラッシュメモリ（記憶部）
７１ａ〜７１ｃ…ＡＤＣ（アナログ・デジタル・コンバータ）
７２ａ，７２ｂ…ＳＩＯ（シリアル入出力）
７３…ドライバ
７４…一時メモリ（記憶部）
７０１ａ〜７０１ｆ…ＨＰＦ（ハイ・パス・フィルタ）
７０２…加速度取得部
７０３…角度ブレ補正部
７０４…並進ブレ補正部
７０４ｘ…Ｘ方向並進ブレ補正部
７０５…通信部
７０６…加算部
７０７ａ…角速度軸傾き感度補正部（軸補正部）
７０７ｂ…加速度軸傾き感度補正部（軸補正部）
７０７ｃ…加速度重力補正部
７０８ａ…静止状態検出部
７０８ｂ…姿勢状態判断部（加速度感度補正情報算出部）
７６１ａ〜７６１ｃ…平均化部
７６２ａ，７６２ｂ…タイミング検出部
７６３ａ，７６３ｂ…角加速度算出部
７６４ａ，７６４ｂ…半径算出部（回転半径算出部）
７６５ａ，７６５ｂ…速度算出部
７６６…加算部（速度合成部）
７６７…積分部（移動量算出部）
７６８…乗算部
７７１…積算部
７７２…絶対姿勢算出部
７７３…オフセット成分取得部
７７４…重力加速度算出部
７７５…第１の加算部
７７６…第２の加算部
７７７…第３の加算部
【図１】
0005846927.tif 000009
【図２Ａ】
0005846927.tif 000010
【図２Ｂ】
0005846927.tif 000011
【図２Ｃ】
0005846927.tif 000012
【図３】
0005846927.tif 000013
【図４】
0005846927.tif 000014
【図５】
0005846927.tif 000015
【図６】
0005846927.tif 000016
【図７】
0005846927.tif 000017
【図８Ａ】
0005846927.tif 000018
【図８Ｂ】
0005846927.tif 000019
【図９】
0005846927.tif 000020
【図１０】
0005846927.tif 000021
【図１１】
0005846927.tif 000022
【図１２】
0005846927.tif 000023
【図１３】
0005846927.tif 000024
【図１４】
0005846927.tif 000025
【図１５】
0005846927.tif 000026
【図１６】
0005846927.tif 000027
【図１７】
0005846927.tif 000028
【図１８】
0005846927.tif 000029