(57)【特許請求の範囲】
【請求項１】
ブレを検出し、ブレ検出信号を出力するブレ検出部と、
前記ブレ検出信号に含まれるドリフト成分を演算し、前記ドリフト成分を前記ブレ検出信号の第１の基準値として出力する第１の基準値演算部と、
前記ブレ検出信号と前記ドリフト成分との差分を演算することにより、前記ブレ検出信号の第２の基準値を演算して出力する第２の基準値演算部と、
前記ブレ検出部がブレ検出信号の出力を開始してからの経過時間を計測する経過時間計測部と、
前記経過時間が所定時間に満たないときには、前記第１の基準値を選択し、前記経過時間が所定時間以上であるときには、前記第２の基進値を選択する基準値選択部と、
を含むことを特徴とするブレ検出装置。
【請求項２】
請求項１に記載のブレ補正装置において、
前記第１の基準値演算部は、前記ブレ検出信号に基づいて移動平均を演算し、
前記第２の基準値演算部は、前記差分と前記ブレ検出信号とに基づいて、移動平均を演算すること、
を特徴とするブレ検出装置。
【請求項３】
請求項２に記載のブレ検出装置において、
前記第１の基準値演算部が移動平均を演算する際に必要とするデータ数をＭとし、前記第２の基準値演算部が移動平均を演算する際に必要とするデータ数をＮとしたときに、Ｍ＜Ｎであること、
を特徴とするブレ検出装置。
【請求項４】
請求項１から請求項３までのいずれか１項に記載のブレ検出装置において、
前記ブレ検出部は、電源が供給されているときに、ブレを検出可能であること、
を特徴とするブレ検出装置。
【請求項５】
請求項１から請求項４までのいずれか１項に記載のブレ検出装置において、
前記所定時間は、前記ドリフト成分が継続して出力する時間以上であること、
を特徴とするブレ検出装置。
【請求項６】
請求項１から請求項５までのいずれか１項に記載のブレ検出装置において、
前記ブレ検出部は、角速度を検出する角速度検出器若しくは角加速度を検出する角加速度検出器又は加速度を検出する加速度検出器であること、
を特徴とするブレ検出装置。
【請求項７】
請求項１から請求項６までのいずれか１項に記載のブレ検出装置において、
前記ブレ検出信号から前記基準値選択部で選択された第１の基準値または第２の基準値を減算した値より、ブレ補正光学系を駆動するための駆動信号を演算する駆動信号演算部を備えたこと、
を特徴とするブレ検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、撮影装置などにおける手ブレなどによる振動を検出するブレ検出装置及びブレ補正カメラに関するものである。
【０００２】
【従来の技術】
従来より、この種のブレ検出装置の利用例として、スチルカメラなどの撮影装置や双眼鏡などの光学装置に内蔵する例が提案されている。このような撮影装置などは、カメラに生ずるブレをブレ検出装置が検出し、撮影レンズの一部のレンズ（以下、ブレ補正レンズという）を光軸と直交する方向に、その検出信号に基づいて移動している。そして、カメラが撮影時に振動することにより生ずるブレを、ブレ補正レンズが補正している。
【０００３】
従来のブレ補正を行う光学系の構造については、特開平４−７６５２５号公報の第３図に開示されている。特開平４−７６５２５号公報の防振手段を有するカメラは、光軸と直角方向の平面内で平行移動可能なブレ補正レンズと、このブレ補正レンズを保持する枠部材と、この枠部材を保持する板部材と、この板部材に取り付けられた４本のワイヤと、このワイヤを支持する本体と、巻線コイル，ヨーク及び永久磁石からなり、ブレ補正レンズを上下及び左右方向に駆動するアクチュエータと、発光素子と受光素子からなり、ブレ補正レンズの位置を検出する位置検出装置などを備えている。
【０００４】
以下に、図７を参照して、従来のブレ補正装置の動作について説明する。
図７は、従来のブレ補正装置のブロック線図である。
角速度センサ１０は、例えば、コリオリ力を検出するための圧電振動式角速度センサであり、カメラの振動をモニタするためのセンサである。角速度センサ１０の出力信号は、積分部４０に入力し、積分部４０は、この出力信号を時間積分する。積分部４０は、角速度センサ１０の出力信号をカメラのブレ角度に変換した後に、ブレ補正レンズの目標駆動位置情報に変換し出力する。サーボ回路１００は、この目標駆動位置情報に応じてブレ補正レンズを駆動するために、目標駆動位置情報と現在のブレ補正レンズの位置情報との差を演算し、アクチュエータ１１０に信号を出力する。アクチュエータ１１０は、光軸と直交する面内において、この信号に基づいてブレ補正レンズを駆動する。位置検出装置１２０は、ブレ補正レンズの動きをモニタして、サーボ回路１００にフィードバックする。
【０００５】
従来のブレ補正装置は、角速度センサ１０の出力信号を積分部４０が一度積分し、角変位情報に変換してから処理している。このために、角速度センサ１０の出力信号を積分部が時間積分するときに、ブレ補正制御の基準値（オメガゼロ値）となる積分定数（以下、基準値という）を決定する必要がある。例えば、特開平４−２１１２３０号公報の第１７図及び第１８図は、この基準値の演算方法を開示している。
【０００６】
特開平４−２１１２３０号公報が開示する手振れ補正装置のブレセンサは、コリオリ力を検出する角速度センサと、中央演算処理装置（ＣＰＵ）とメモリとからなり、現時点から所定の時間前までの間にサンプリングした角速度センサの出力信号の平均値を移動平均法により算出するドリフト成分検出部と、角速度センサの出力信号から平均値を減算することによりドリフト成分を除去し、その減算値を出力する減算器とを備えている。
【０００７】
角速度センサの出力信号は、ドリフト成分検出部に１０ｍｓ毎に入力し、０．５秒（１０ｍｓ×５０）毎に５０個分の出力信号が入力する。そして、ドリフト成分検出部のメモリは、算出された５０個分の平均値（以下、平均１とする）を格納し、１０秒（０．５秒×２０）経過後には、さらに２０個分の平均１が入力する。その結果、スタートから１０秒経過後には、１０００個分（５０×２０）の角速度センサの出力信号の平均値を算出することができる。
【０００８】
【発明が解決しようとする課題】
前述した従来のブレ補正装置は、一般に、カメラが静止した状態の角速度センサ１０の出力信号（以下、オメガゼロという）を、この出力信号を積分するときの積分定数として用いている。
しかし、カメラなどの撮影装置を手持ちで撮影するときには、カメラは、撮影者の手ブレにより通常振動している。このような状況下では、角速度センサの静止時の出力を直接測ることができないために、手ブレによる振動がのった角速度センサの出力信号から、オメガゼロを演算により求める必要がある。
従来のブレ検出装置は、例えば、特開平４−２１１２３０号公報の第１８図に示すように、オメガゼロの演算に移動平均法などの平均演算を用いていた。
しかし、従来のブレ検出装置による移動平均法には、以下のような問題点があった。
【０００９】
従来のブレ検出装置は、圧電振動式の角速度センサを使用しており、この角速度センサは、電源を投入してから出力が安定するまでに、ある程度の時間を必要としていた。
【００１０】
図８は、角速度センサが静止した状態で電源を投入したときの出力変動及び角速度センサの出力信号の一例を示す図である。図８（Ａ）は、時間＝０のときに、角速度センサに電源を投入（通電を開始）したときの出力変動を示し、図８（Ｂ）は、手ブレ波形にドリフトがのったときの角速度センサの出力信号を示す図である。
図８（Ａ）では、静止した状態で角速度センサが出力する出力値（オメガゼロ）をゼロとしている。また、図８（Ｂ）では、説明を簡単なものとするために、手ブレ波形は、正弦波としている。
図８（Ａ）に示すように、電源投入後しばらくの間は、角速度センサが静止しているにもかかわらず、出力値が変動しており、角速度センサの電源投入直後に発生する出力変動は、起動時ドリフトと呼ばれている。図８（Ａ）では、起動時ドリフトの収まる時間は、時刻ｍd である。
図８（Ａ）では、角速度センサは、静止状態にあるものと仮定しているが、実際には、図８（Ｂ）に示すように、角速度センサをカメラなどに搭載したときには、撮影者の手ブレによる振動の出力値が起動時ドリフトに加算する。
【００１１】
図９は、従来のブレ検出装置における移動平均法による演算結果及び演算誤差を示す図である。図９（Ａ）は、角速度センサの出力信号及び移動平均法による演算結果を示し、図９（Ｂ）は、移動平均法による演算誤差と真のオメガゼロ値との演算誤差を示す図である。
図９（Ａ）では、図８（Ａ）と同様に、角速度センサの起動時ドリフトがなくなってからの出力値（オメガゼロ）をゼロとしている。
図９（Ｂ）に示すように、従来の移動平均法は、角速度センサの起動時ドリフトも平均化演算に使用するために、起動時ドリフトが収まった以降も、なお演算誤差が大きくなったままになっている。その結果、演算誤差が許容値内になかなか収まっていない。このために、角速度センサの起動時ドリフトの影響が、オメガゼロの演算にかなり悪い影響を与えている。
【００１２】
このように、起動時ドリフトがのったままの角速度センサの出力信号をオメガゼロの演算に使用すると、オメガゼロの演算結果に誤差を生じ、ブレ補正の効果が低下したり、ブレが悪化してしまうという問題があった。
また、ブレ補正の精度を上げるために、演算誤差が許容値内に入るのを待っていると、シャッタチャンスを逃してしまうという問題があった。
【００１３】
本発明の課題は、演算誤差が少なく、正確にブレを補正することができるブレ検出装置及びブレ補正カメラを提供することである。
【００１４】
【課題を解決するための手段】
本発明は、以下のような解決手段により、前記課題を解決する。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定するものではない。すなわち、請求項１の発明は、ブレを検出し、ブレ検出信号（ω（ｔ））を出力（Ｓ４００）するブレ検出部（１０）と、前記ブレ検出信号に含まれるドリフト成分（ωｄ（ｔ））を演算（Ｓ６０３０，Ｓ６０８０）し、前記ドリフト成分を前記ブレ検出信号の第１の基準値（ωｄ（ｔ））として出力する第１の基準値演算部（３３０）と、前記ブレ検出信号と前記ドリフト成分との差分を演算することにより、前記ブレ検出信号の第２の基準値（ω０（ｔ））を演算（Ｓ６１２０）して出力する第２の基準値演算部（３５０）と、前記ブレ検出部がブレ検出信号の出力を開始（Ｓ４００）してからの経過時間（ｍ）を計測する経過時間計測部（９０）と、前記経過時間が所定時間に満たないときには、前記第１の基準値を選択し、前記経過時間が所定時間以上であるときには、前記第２の基準値を選択する基準値選択部と、を含むことを特徴とするブレ検出装置である。
【００１８】
請求項２の発明は、請求項１に記載のブレ検出装置において、前記第１の基準値演算部は、前記ブレ検出信号に基づいて移動平均を演算（Ｓ６０８０）し、前記第２の基準値演算部は、前記差分及び前記ブレ検出信号とに基づいて、移動平均を演算（Ｓ６１２０）することを特徴とするブレ検出装置である
【００１９】
請求項３の発明は、請求項２に記載のブレ検出装置において、前記第１の基準値演算部が移動平均を演算する際に必要とするデータ数をＭとし、前記第２の基準値演算部が移動平均を演算する際に必要とするデータ数をＮとしたときに、Ｍ＜Ｎであることを特徴とするブレ検出装置である。
【００２２】
請求項４の発明は、請求項１から請求項３までのいずれか１項に記載のブレ検出装置において、前記ブレ検出部は、電源が供給されているときに、ブレを検出可能であることを特徴とするブレ検出装置である。
【００２５】
請求項５の発明は、請求項１から請求項４までのいずれか１項に記載のブレ検出装置において、前記所定時間は、前記ドリフト成分が継続して出力する時間（ｍｄ）以上であることを特徴とするブレ検出装置である。
【００２６】
請求項６の発明は、請求項１から請求項５までのいずれか１項に記載のブレ検出装置において、前記ブレ検出部は、角速度を検出する角速度検出器若しくは角加速度を検出する角加速度検出器又は加速度を検出する加速度検出器であることを特徴とするブレ検出装置である。
請求項７の発明は、請求項１から請求項６までのいずれか１項に記載のブレ検出装置において、前記ブレ検出信号から前記基準値選択部で選択された第１の基準値または第２の基準値を減算した値より、ブレ補正光学系を駆動するための駆動信号を演算する駆動信号円残部を備えたことを特徴とするブレ検出装置である。
【００２９】
【発明の実施の形態】
（第１実施形態）
以下、図面を参照して、本発明の第１実施形態について、さらに詳しく説明する。
まず、本発明の第１実施形態に係るブレ検出装置が使用される一眼レフカメラについて説明し、このブレ検出装置の概要を説明する。
図１は、本発明の第１実施形態に係るブレ検出装置が搭載された一眼レフカメラを示すブロック図である。
【００３０】
角速度センサ１０は、カメラに印加する振動を検出し、このカメラに作用するコリオリ力に比例する電圧値を出力するセンサである。角速度センサ１０は、２軸方向の角速度を検出するために、Ｘ軸まわりの角速度を検出するピッチ角速度センサと、Ｙ軸まわりの角速度を検出するヨー角速度センサとからなる２つのセンサを通常搭載している。図１では、１軸分の角速度センサについて図示することを省略している。角速度センサ１０は、半押しタイマ９０がＯＮ動作を維持し、電源供給部１３０が電源を供給している間は、角速度の検出が可能である。
【００３１】
角速度センサ１０の出力信号が一定間隔でサンプリングされると、不連続な時系列データω（ｔ1 ），ω（ｔ2 ），ω（ｔ3 ），・・・，ω（ｔN ），・・・が計測される。
ここで、ω（ｔ）は、角速度センサ１０がある時刻で検出した角速度データである。また、ｔのサフィックス１，２，３，・・・，ｍ，・・・は、時間が進むごとにインクリメントされるカウント値であり、ある時刻ｔN とカウント値ｍとは単位は違うが、これらは等価なものとして考えることができる。
【００３２】
増幅部２０は、角速度センサ１０の出力信号を増幅するものである。増幅部２０は、角速度センサ１０からの出力電圧を増幅し、増幅した出力信号を、オメガゼロ演算部３０と、駆動信号演算部４５とに出力する。
【００３３】
オメガゼロ値演算部３０は、増幅部２０が増幅したブレ検出信号に基づいて、角速度センサ１０の出力値であるブレ補正制御の基準値（オメガゼロ値）を演算するものである。オメガゼロ値演算部３０は、半押しタイマ９０が出力するカウンタ値に応じて、演算手法を切り替えるとともに、演算した２種類のオメガゼロ値のいずれか一方を選択する。オメガゼロ値演算部３０は、選択したオメガゼロ値を駆動信号演算部４５に出力する。オメガゼロ値演算部３０は、角速度センサ１０が角速度の検出が可能なときに、演算を実行する。
【００３４】
図２は、本発明の第１実施形態に係るブレ検出装置におけるオメガゼロ値演算部を示すブロック図である。
オメガゼロ値演算部３０は、時間判定部３１０と、演算切替部３２０と、ドリフト成分演算部３３０と、差分演算部３４０と、平均演算部３５０と、出力切替部３６０とからなる。
【００３５】
時間判定部３１０は、半押しタイマ９０が出力するカウント値（時間情報）に基づいて、オメガゼロ値の演算手法を選択したり、演算したオメガゼロ値を選択したりするための判定信号を出力するものである。時間判定部３１０は、演算切替部３２０及び出力切替部３６０に、この判定信号を出力する。
【００３６】
演算切替部３２０は、時間判定部３１０が出力する判定信号に基づいて、ドリフト成分演算部３３０及び平均演算部３５０に、オメガゼロ値の演算手法の切り替えを指示するものである。演算切替部３２０には、時間判定部３１０が出力する判定信号と、増幅部２０が出力するブレ検出信号とが入力する。演算切替部３２０には、ドリフト成分演算部３３０と、平均演算部３５０とが接続されている。演算切替部３２０は、時間判定部３１０が出力する判定信号に基づいて、ドリフト成分演算部３３０及び平均演算部３５０の双方又は一方に、ブレ検出信号を出力する。
【００３７】
ドリフト成分演算部３３０は、電源供給部１３０が角速度センサ１０に電源を供給したときに生ずるドリフト成分（起動時ドリフト）を演算するものである。ドリフト成分演算部３３０は、演算したドリフト成分を差分演算部３４０及び出力切替部３６０に出力する。
【００３８】
差分演算部３４０は、ドリフト成分演算部３３０が演算したドリフト成分とブレ検出信号との差分を演算するものである。差分演算部３４０は、演算した差分を平均演算部３５０に出力する。
【００３９】
平均演算部３５０は、差分演算部３４０が出力する差分の平均値、演算切替部３２０が出力するブレ検出信号の平均値、又は、この差分とブレ検出信号の平均値を演算するものである。平均演算部３５０は、演算した平均値を出力切替部３６０に出力する。
【００４０】
出力切替部３６０は、時間判定部３１０が出力する判定信号に基づいて、ドリフト成分演算部３３０が演算したドリフト成分又は平均演算部が演算した平均値に切り替えて出力するものである。出力切替部３６０は、選択したドリフト成分又は平均値をオメガゼロ値として、駆動信号演算部４５に出力する。
【００４１】
図１に示す駆動信号演算部４５は、増幅部２０が増幅したブレ検出信号から、出力切替部３６０が出力するオメガゼロ値を減算し、積分演算するものである。駆動信号演算部４５は、積分演算により、角速度信号を角変位信号に変換し、さらに、この角変位信号に応じた信号に変換する。駆動信号演算部４５は、この信号を駆動部５０に出力する。
【００４２】
駆動部５０は、駆動信号演算部４５からの出力信号に基づいて、ブレ補正レンズ６０を駆動するための駆動信号を出力し、この駆動信号に基づいてブレ補正レンズ６０を駆動制御するものである。駆動部５０は、制御用のサーボ回路と、ブレ補正レンズ６０を駆動するアクチュエータと、ブレ補正レンズ６０の駆動位置を検出するための位置検出装置などを備えている。
【００４３】
ブレ補正レンズ６０は、撮影光路を変更してブレを補正するレンズである。ブレ補正レンズ６０は、例えば、光軸Ｉ方向に対して略直交する方向（図中矢印方向）に駆動するレンズである。ブレ補正レンズ６０は、撮影装置の結像光学系に内蔵されている。ブレ補正レンズ６０は、駆動部５０からの駆動信号に基づいて、光軸Ｉと交差する方向に駆動し、撮影装置の結像光学系の光軸を偏心してブレを補正する。
【００４４】
レンズ鏡筒８０は、ブレ補正レンズ６０を含む撮影光学系を収納する。レンズ鏡筒８０は、カメラボディ７０に着脱自在に取り付けられており、交換可能である。
【００４５】
電源供給部１３０は、角速度センサ１０に電源を供給するためのものである。電源供給部１３０は、半押しスイッチＳＷ１のＯＮ動作と同時に角速度センサ１０に電源を供給する。電源供給部１３０は、半押しタイマ９０がＯＮ状態にある間は、角速度センサ１０に電源を供給し続け、半押しタイマ９０のＯＦＦ動作により、角速度センサ１０への電源の供給を停止する。
【００４６】
半押しタイマ９０は、半押しスイッチＳＷ１のＯＮ動作と同時にＯＮ動作するタイマである。半押しタイマ９０は、半押しスイッチＳＷ１が押されている間はＯＮ状態を維持し、半押しスイッチＳＷ１がＯＦＦ動作となってからも一定時間はＯＮ状態を維持する。半押しタイマ９０は、半押しスイッチＳＷ１及び角速度センサ１０がＯＮ動作してからの経過時間を計測し、その経過時間に応じて増加するカウント値を、オメガゼロ値演算部３０の時間判定部３１０に出力する。
【００４７】
半押しスイッチＳＷ１は、一連の撮影準備動作を開始するためのスイッチである。半押しスイッチＳＷ１は、図示しないレリーズボタンの半押し動作に連動してＯＮ動作する。
【００４８】
全押しスイッチＳＷ２は、カメラの露光動作などの撮影動作を開始させるためのスイッチである。全押しスイッチＳＷ２は、レリーズボタンの全押し動作に連動してＯＮ動作する。
【００４９】
つぎに、本発明の第１実施形態に係るブレ検出装置の動作を説明する。
図３は、本発明の第１実施形態に係るブレ検出装置が使用される一眼レフカメラの動作を説明するフローチャートである。
図示しないカメラボディの電源スイッチがＯＮ動作されることにより、本フローがスタートする。
【００５０】
ステップ（以下、Ｓとする）１００において、半押しスイッチＳＷ１がＯＮ動作しているか否かが判断される。半押しスイッチＳＷ１がＯＮ動作しているときには、Ｓ２００に進み、半押しスイッチＳＷ１がＯＮ動作していないときには、半押しスイッチＳＷ１がＯＮ動作されるまで繰り返し判断が続けられる。
【００５１】
Ｓ２００において、半押しタイマ９０がタイマリセットする。半押しスイッチＳＷ１のＯＮ動作と同時に、半押しタイマ９０は、タイマの時間ｔをゼロにリセットする。Ｓ２００に進む時点において、半押しタイマ９０が既に計測を開始しているときには、Ｓ２００を飛ばしＳ３００に進む。
【００５２】
Ｓ３００において、半押しタイマ９０がＯＮ動作する。半押しスイッチＳＷ１がＯＮ動作し、半押しタイマ９０がタイマリセットするのと同時に、半押しタイマ９０がＯＮ動作する。Ｓ３００に進む時点において、半押しタイマ９０が既にＯＮ動作しているときには、半押しタイマ９０は、ＯＮ動作を維持する。
【００５３】
Ｓ４００において、角速度センサ１０がＯＮ動作する。電源供給部１３０は、半押しタイマ９０のＯＮ動作に同期して、角速度センサ１０に電源を供給し、角速度センサ１０がＯＮ動作する。角速度センサ１０は、カメラボディ７０及びレンズ鏡筒８０に生ずる振動を検出し、ブレ検出信号を出力する。Ｓ４００に進む時点において、角速度センサ１０が既にＯＮ動作しているときには、角速度センサ１０は、ＯＮ動作を維持する。
【００５４】
Ｓ５００において、半押しタイマ９０がカウントを開始する。半押しタイマ９０は、半押しスイッチＳＷ１のＯＮ動作と同時に、カウントを開始する。Ｓ５００に進む時点において、半押しタイマ９０が既にカウントを開始しているときには、半押しタイマ９０は、カウントを継続する。
【００５５】
Ｓ６００において、オメガゼロ値演算部３０は、オメガゼロ値（ドリフト成分又は平均値）の演算を開始する。オメガゼロ値演算部３０は、半押しタイマ９０のカウント値に応じて、増幅部２０が増幅したブレ検出信号に基づいて、オメガゼロ値の演算を開始する。Ｓ６００に進む時点において、オメガゼロ値演算部３０がオメガゼロ値の演算を既に開始しているときには、オメガゼロ値演算部３０は、オメガゼロ値の演算を継続する。
【００５６】
Ｓ７００において、ブレ補正レンズ６０が駆動を開始する。駆動部５０は、駆動信号演算部４５が出力した駆動信号に基づいて、ブレ補正レンズ６０を駆動制御する。Ｓ７００に進む時点において、ブレ補正レンズ６０が既に駆動しているときには、駆動部５０は、ブレ補正レンズ６０の駆動を継続する。
【００５７】
Ｓ８００において、半押しタイマ９０がＯＮ動作しているか否かが判断される。半押しタイマ９０がＯＮ動作しているときには、Ｓ９００に進み、半押しタイマ９０がＯＮ動作していないときには、Ｓ１１００に進む。
【００５８】
Ｓ９００において、全押しスイッチＳＷ２がＯＮ動作しているか否かが判断される。全押しスイッチＳＷ２がＯＮ動作しているときには、Ｓ１０００に進み、全押しスイッチＳＷ２がＯＮ動作していないときには、Ｓ１００に戻り、半押しスイッチＳＷ１がＯＮ動作しているか否かが判断される。
【００５９】
Ｓ１０００において、撮影動作が行われる。図示しないシャッタ機構によりシャッタの開閉、フィルム巻き上げ機構によるフィルムの巻き上げなどの一連の撮影動作が行われ、一連の動作が終了される。
【００６０】
Ｓ１１００において、オメガゼロ値演算部３０がオメガゼロ値（ドリフト成分又は平均値）の演算を停止する。Ｓ１１００に進む時点において、オメガゼロ値演算部３０がオメガゼロ値を演算しているときには、オメガゼロ値演算部３０は、オメガゼロ値の演算を全て停止する。
【００６１】
Ｓ１２００において、角速度センサ１０がＯＦＦ動作する。Ｓ１１００に進む時点において、電源供給部１３０が角速度センサ１０に電源を供給しているときには、電源供給部１３０は、電源の供給を停止して、角速度センサ１０がＯＦＦ動作する。
【００６２】
Ｓ１３００において、半押しタイマ９０が計時をストップする。半押しタイマ９０は、半押しスイッチＳＷ１のＯＦＦ動作と同時に計時を停止し、一連の動作を終了する。
【００６３】
つぎに、本発明の第１実施形態に係るブレ検出装置におけるオメガゼロ値演算部の動作を説明する。
図４は、本発明の第１実施形態に係るブレ検出装置におけるオメガゼロ値演算部の動作を説明するフローチャートである。
なお、以下の説明において、図３に示したフローチャートにおけるステップと同一のステップは、同一の番号を付して説明し、特に必要のないかぎり説明を省略する。
【００６４】
Ｓ２００において、半押しタイマ９０がカウントリセット（ｍ＝１）する。半押しタイマ９０は、カウント値をｍ＝１にリセットする。ここで、ｍは、半押しタイマ９０がＯＮ動作してからの経過時間に応じて、その値が増加するカウンタ値（整数）である。
【００６５】
Ｓ６０１０において、カウントフラグがｆｌａｇ＝０になる。半押しタイマ９０のカウント値の大きさを判定するカウントフラグが、ｆｌａｇ＝０になる。
【００６６】
Ｓ６０２０において、時間判定部３１０は、カウント値ｍが判定レベルｍNd以下であるか否かを判断する。カウント値ｍが判定レベルｍNd以下であるときには、Ｓ６０３０に進み、カウント値ｍが判定レベルｍNdよりも大きいときには、Ｓ６０６０に進む。
【００６７】
Ｓ６０３０において、ドリフト成分演算部３３０が数１の演算を開始する。時間判定部３１０は、カウント値ｍが判定レベルｍNd以下であると判定したときには、演算切替部３２０及び出力切替部３６０に判定信号を出力する。演算切替部３２０は、この判定信号に基づいて、ドリフト成分演算部３３０及び平均演算部３５０にブレ検出信号を出力する。ドリフト成分演算部３３０は、以下に示す数１によって、ドリフト値ωd （ｔm ）を演算する。
【００６８】
【数１】
0004051738.tif 000002
【００６９】
ここで、ωd （ｔm ）は、演算により求めた角速度センサ１０のドリフト値である。数１は、角速度センサ１０の検出開始後（半押しタイマ９０のカウント開始後）、カウント値ｍが判定レベルｍNd以下であるときには、角速度センサ１０がカウント値ｍまでに検出した角速度データの全平均を演算する意味である。
なお、Ｓ６０３０に進む時点において、ドリフト成分演算部３３０がドリフト値の演算を既に開始しているときには、ドリフト成分演算部３３０は、ドリフト値の演算を継続する。
【００７０】
Ｓ６０４０において、差分演算部３４０が数２の演算を開始する。差分演算部３４０は、以下に示す数２によって、ブレ検出信号（角速度信号）とドリフト成分との差分ω’（ｔm ）を演算する。
【００７１】
【数２】
0004051738.tif 000003
【００７２】
数２は、増幅部２０が出力する角速度データω（ｔm ）から、ドリフト成分演算部３３０が演算したドリフト値ωd （ｔm ）を減算する意味である。その結果、角速度センサ１０の出力信号に含まれるドリフト成分が、この出力信号から除去される。このために、カウント値がさらに進んだときに、オメガゼロ値の演算誤差を小さくすることができる。
なお、Ｓ６０４０に進む時点において、差分演算部３４０が差分の演算を既に開始しているときには、差分演算部３４０は、差分の演算を継続する。
【００７３】
Ｓ６０５０において、平均演算部３５０が数３の演算を開始する。平均演算部３５０は、以下に示す数３によって、オメガゼロ値ω0 （ｔm ）を演算する。
【００７４】
【数３】
0004051738.tif 000004
【００７５】
数３は、カウント値ｍが判定レベルｍNd以下であるときには、差分演算部３４０がカウント値ｍまでに演算した差分ω’（ｔ）の全データの平均値を演算する意味である。
なお、Ｓ６０５０に進む時点において、平均演算部３５０がオメガゼロ値の演算を既に開始しているときには、平均演算部３５０は、オメガゼロ値の演算を継続する。
【００７６】
Ｓ６０６０において、時間判定部３１０は、カウント値ｍが判定レベルｍd 以下であるか否かを判断する。カウント値ｍが判定レベルｍd 以下（ｍNd＜ｍ≦ｍd ）であるときには、Ｓ６０７０に進み、カウント値ｍが判定レベルｍd よりも大きい（ｍ＞ｍd ）ときには、Ｓ６０９０に進む。
ここで、角速度センサ１のドリフトが収まっているのに、数２に示す演算を実行して、オメガゼロの演算誤差が大きくなるのを防止するために、判定レベルｍd は、角速度センサ１０のＯＮ動作直後に発生する起動時ドリフトが継続する時間と略同等又はそれ以上とすることが好ましい。このために、差分演算部３４０は、角速度センサ１０の起動時ドリフトが収まらない間は、数２に示す演算を継続する。判定レベルｍd の値は、例えば、角速度センサ１０の起動時ドリフトが継続する時間を実測し、このデータに基づいて決定する。
【００７７】
Ｓ６０７０において、ドリフト成分演算部３３０が数１の演算を停止する。時間判定部３１０は、カウント値ｍが判定レベルｍNdよりも大きく判定レベルｍd 以下であると判定したときには、演算切替部３２０及び出力切替部３６０に判定信号を出力する。演算切替部３２０は、この判定信号に基づいて、ドリフト成分演算部３３０に演算手法の切り替えを指示し、ドリフト成分演算部３３０は、数１の演算を停止する。Ｓ６０７０に進む時点において、ドリフト成分演算部３３０が数１の演算を既に停止しているときには、Ｓ６０７０を飛ばしてＳ６０８０に進む。
【００７８】
Ｓ６０８０において、ドリフト成分演算部３３０が数４の演算を開始する。ドリフト成分演算部３３０は、演算手法を切り替えて、以下に示す数４によって、ドリフト成分ωd （ｔm ）を演算する。
【００７９】
【数４】
0004051738.tif 000005
【００８０】
数４は、カウント値ｍが判定レベルｍNdよりも大きく、判定レベルｍd よりも小さいとき（ｍNd＜ｍ＜ｍd ）には、演算区間長をｍNdとする移動平均を演算する意味である。
ここで、角速度センサ１０の起動時ドリフトは、約１秒程度継続することが知られている。また、人間の手ブレによる周波数は、個人差はあるものの、約４Ｈｚ〜１０Ｈｚ程度であることが知られている。本発明の実施形態では、演算区間長は、ドリフト成分の継続時間よりも短く、人間の手ブレ信号の１周期分（手ブレの典型的な周波数を５Ｈｚとしたときには、２００ｍｓｅｃ）よりも長い時間になるように設定することが好ましい。その結果、ドリフト成分演算部３３０は、数４に示す演算式によって、角速度センサ１０の出力信号からドリフト成分を効率的に抽出することができる。
なお、Ｓ６０８０に進む時点において、ドリフト成分演算部３３０がドリフト成分の演算を既に開始しているときには、ドリフト成分演算部３３０は、ドリフト成分の演算を継続する。
【００８１】
Ｓ６０９０において、カウントフラグがｆｌａｇ＝１になる。
【００８２】
Ｓ６１００において、時間判定部３１０は、カウント値ｍが判定レベル２ｍd 以下であるか否かが判断される。カウント値ｍが判定レベル２ｍd 以下（ｍd ＜ｍ≦２ｍd ）であるときには、Ｓ６１１０に進み、カウント値ｍが判定レベル２ｍd よりも大きい（ｍ＞２ｍd ）ときには、Ｓ６１３０に進む。
【００８３】
Ｓ６１１０において、差分演算部３４０が数２の演算を停止し、平均演算部３５０が数３の演算を停止し、ドリフト成分演算部３３０が数４の演算を停止する。時間判定部３１０は、カウント値ｍが判定レベルｍd よりも大きく判定レベル２ｍd 以下であると判定したときには、演算切替部３２０及び出力切替部３６０に判定信号を出力する。演算切替部３２０は、この判定信号に基づいて、ドリフト成分演算部３３０へのブレ検出信号の出力を停止する。
Ｓ６１１０に進む時点において、カウント値ｍは、角速度センサ１の起動時ドリフトの継続時間に相当するカウント値ｍd よりも大きく（ｍ＞ｍd ）なっており、角速度センサ１の起動時ドリフトは、既に収まっている。このために、ドリフト成分演算部３３０は、角速度センサ１０の出力信号からドリフト成分を抽出する演算を継続する必要がなく、差分演算部３４０、平均演算部３５０及びドリフト成分演算部３３０は、それぞれ数２、数３及び数４の演算を停止する。
【００８４】
Ｓ６１２０において、平均演算部３５０が数５の演算を開始する。演算切替部３２０は、時間判定部３１０が出力する判定信号に基づいて、平均演算部３５０にブレ検出信号を出力する。平均演算部３５０は、以下に示す数５によって、オメガゼロ値ω0 （ｔm ）を演算する。
【００８５】
【数５】
0004051738.tif 000006
【００８６】
数５は、演算区間長ｍd 内の角速度データについて平均を演算する意味である。数５によって移動平均を演算する際に必要とするデータ数ｍd は、数４によって移動平均を演算する際に必要とするデータ数ｍNdに比べて、多くなっている。数５は、従来の移動平均法とは異なり、カウント値ｍd 以前に検出した角速度データについては、ドリフト成分を除去した角速度データω’（ｔ）を使用し、カウント値ｍd 以降に検出した角速度データについては、角速度センサ１０の出力信号ω（ｔ）そのものを使用している。
【００８７】
従来の移動平均法は、角速度センサの起動時ドリフトがのった信号を、オメガゼロの演算に使用していた。このために、角速度センサのドリフトが収まっても、オメガゼロの演算誤差が大きくなっており、この演算誤差が許容値内になかなか収まらないという問題があった。
しかし、本発明の実施形態は、数５に示すように、角速度センサ１０の起動時ドリフトが収まっていない間のデータについては、ドリフト成分を予め数１又は数４により演算し、このドリフト成分をブレ検出信号から数２により減算したデータを使用している。その結果、従来の移動平均法に比べて、オメガゼロの演算精度を格段に上げることができる。
なお、Ｓ６１２０に進む時点において、平均演算部３５０がオメガゼロ値の演算を既に開始しているときには、平均演算部３５０は、オメガゼロ値の演算を継続する。
【００８８】
Ｓ６１３０において、平均演算部３５０が数５の演算を停止する。時間判定部３１０は、カウント値ｍが判定レベル２ｍd よりも大きいと判定したときには、演算切替部３２０及び出力切替部３６０に判定信号を出力する。演算切替部３２０は、平均演算部３５０に演算手法の切り替えを指示し、平均演算部３５０は、数５の演算を停止する。
【００８９】
Ｓ６１４０において、平均演算部３５０が数６の演算を開始する。平均演算部３５０は、演算手法を切り替えて、以下に示す数６によって、オメガゼロ値ω0 （ｔm ）を演算する。
【００９０】
【数６】
0004051738.tif 000007
【００９１】
数６は、カウント値ｍが判定レベル２ｍd よりも大きい（ｍ＞２ｍd ）ときには、角速度センサ１０が出力するブレ検出信号ω（ｔ）について、演算区間長ｍd の移動平均を演算する意味である。数６によって移動平均を演算する際に必要とするデータ数ｍd は、数４によって移動平均を演算する際に必要とするデータ数ｍNdに比べて、多くなっている。カウント値ｍが判定レベル２ｍd よりも大きいときには、演算区間長ｍd 内の角速度データは、全て角速度センサ１０の起動時ドリフトが収まってからのデータである。このために、平均演算部３５０が平均を演算する前に、差分演算部３４０は、数２に示すような角速度データの加工をする必要がない。
【００９２】
数６に示す移動平均において、演算区間長ｍd と角速度センサ１のドリフトの継続時間とを同一にしているのは、移動平均の演算を容易にするためである。
また、角速度センサ１０のドリフトの継続時間は、人間の手ブレ波形の１周期分の時間に比べて長いために、オメガゼロの演算精度を上げることができるためである。
なお、Ｓ６１４０に進む時点において、平均演算部３５０がオメガゼロ値の演算を既に開始しているときには、平均演算部３５０は、オメガゼロ値の演算を継続する。
【００９３】
Ｓ６１５０において、カウントフラグがｆｌａｇ＝１であるか否かが判断される。カウントフラグがｆｌａｇ＝１であるときには、Ｓ６１６０に進み、カウントフラグがｆｌａｇ＝１ではないときには、Ｓ６１７０に進む。
【００９４】
Ｓ６１６０において、出力切替部３６０がオメガゼロ値ω0 （ｔm ）を出力する。Ｓ６１６０に進むときには、カウントフラグは、ｆｌａｇ＝１であり、カウント値ｍは、判定レベルｍd よりも大きい（ｍ＞ｍd ）。このために、角速度センサ１０の起動時ドリフトは、収まっている。出力切替部３６０は、時間判定部３１０が出力する判定信号に基づいて、平均演算部３５０が数５又は数６により演算した平均値ω0 （ｔm ）を演算結果として出力する。
【００９５】
Ｓ６１７０において、出力切替部３６０がドリフト値ωd （ｔm ）を出力する。Ｓ６１７０に進むときには、カウントフラグは、ｆｌａｇ＝０であり、カウント値ｍは、判定レベルｍd 以下（ｍ≦ｍd ）である。このために、角速度センサ１０の起動時ドリフトが収まっていない。出力切替部３６０は、時間判定部３１０が出力する判定信号に基づいて、ドリフト成分演算部３３０が数１又は数４により演算したドリフト値ωd （ｔm ）を演算結果として出力する。
【００９６】
Ｓ６１８０において、カウンタ値ｍが１つ進められる。
【００９７】
Ｓ６１９０において、半押しタイマ９０がＯＮ動作しているか否かが判断される。半押しタイマ９０がＯＮ動作しているときには、Ｓ４００に戻り、半押しタイマ９０がＯＮ動作していないときには、演算を停止して本フローチャートを終了する。
【００９８】
図５は、本発明の第１実施形態に係るブレ検出装置における角速度センサの出力信号及びドリフト成分を減算した後の角速度センサの出力信号を示す図である。図５（Ａ）は、数１又は数４により演算したドリフトωd （ｔ）及びドリフトωd （ｔ）がのっている手ブレ波形ω（ｔ）を示す図である。図５（Ｂ）は、手ブレ波形ω（ｔ）からドリフトωd （ｔ）を差し引いた波形ω’（ｔ）を示す図である。
ここで、手ブレ波形は、図８（Ｂ）及び図９（Ａ）と同様に、正弦波としている。
【００９９】
図５（Ｂ）に示すように、角速度センサ１０の出力信号ω（ｔ）からドリフトωd （ｔ）を差し引いた後の出力信号ω’（ｔ）には、若干のうねりが残っているが、差分演算部３４０がドリフト成分を効率的に除去している。
【０１００】
図６は、本発明の第１実施形態に係るブレ検出装置におけるオメガゼロ値の演算結果を示す図である。図６（Ａ）は、角速度センサの出力信号ω（ｔ）及び演算結果ωd （ｔ），ω0 （ｔ）を示す図である。図６（Ｂ）は、演算結果ωd （ｔ），ω0 （ｔ）とオメガゼロ真値との間の誤差を示す図である。
図６（Ａ）に示すように、起動時ドリフトが収まる時刻ｔm に、時間ｔが満たないときには、出力切替部３６０は、ドリフト成分演算部３３０が数１又は数４により演算したドリフト値ωd （ｔ）をオメガゼロ値として出力する。一方、時間ｔが、起動時ドリフトが収まる時刻ｔm 以降であるときには、出力切替部３６０は、平均演算部３５０が数５又は数６により演算した平均値をオメガゼロ値ω0 （ｔ）として出力する。
【０１０１】
図６（Ｂ）に示すように、本発明の実施形態では、演算したオメガゼロ値は、図９（Ｂ）に示す従来の移動平均法により演算したオメガゼロ値に比べて、誤差が非常に小さくなっている。
また、従来の移動平均法よりも早い時間に、演算誤差が許容値内に収まっている。
【０１０２】
従来の移動平均法は、角速度センサの起動時ドリフトを平均化演算に使用していた。このために、図９（Ｂ）に示すように、起動時ドリフトの影響がオメガゼロの演算結果にしばらく残っており、起動時ドリフトが収まっても、オメガゼロ値の演算誤差が大きいままになってしまうという問題があった。その結果、ブレ補正の効果が低下したり、ブレ補正が悪化してしまうという問題があった。
また、ブレ補正の効果を上げようとするときには、角速度センサに電源を投入してから演算誤差が許容値内に入るまでしばらく待つ必要があり、シャッタチャンスを逃してしまうという問題があった。
【０１０３】
本発明の第１実施形態に係るブレ検出装置は、電源投入直後からカウント値ｍが判定レベルｍd 以下である間（ｍ≦ｍd ）は、数１及び数４に示すように、ドリフト成分演算部３３０が演算区間を短くしてドリフト値ωd （ｔm ）を演算している。このために、ブレ検出信号ω（ｔ）が含むドリフト成分に近い信号を得ることができる。
【０１０４】
本発明の第１実施形態に係るブレ検出装置は、角速度センサ１０に起動時ドリフトが生じている間（ｍ≦ｍd ）は、そのドリフト値ωd （ｔm ）を演算している。差分演算部３４０は、角速度センサ１０の出力信号ω（ｔ）からドリフト成分ωd （ｔ）を取り除き、平均演算部３５０は、減算後の信号ω’（ｔ）に基づいて、起動時ドリフトが収まった後（ｍ＞ｍd ）のオメガゼロ値を演算している。このために、ドリフトの影響の少ない減算後の信号ω’（ｔm ）に基づいて、オメガゼロ値を高精度に演算することができる。
その結果、角速度センサ１０の起動時ドリフトの影響によって、オメガゼロの演算誤差が増大するのを防止することができる。このために、このブレ検出装置をブレ補正カメラに搭載したときには、ブレを正確に補正することができる。
また、角速度センサ１０に電源を投入した後の早い時間内に、オメガゼロの演算誤差が小さくなるために、シャッタチャンスを逃してしまうことがない。
【０１０５】
（第２実施形態）
本発明の第２実施形態に係るブレ検出装置は、第１実施形態の数１及び数３〜数６までに示す演算式に代えて、これらをそれぞれ以下の数７〜数１１に示す漸化式に変形して、ドリフト値ωd （ｔm ）及びオメガゼロ値ω0 （ｔm ）を演算する。
【０１０６】
【数７】
0004051738.tif 000008
【０１０７】
【数８】
0004051738.tif 000009
【０１０８】
【数９】
0004051738.tif 000010
【０１０９】
【数１０】
0004051738.tif 000011
【０１１０】
【数１１】
0004051738.tif 000012
【０１１１】
本発明の第２実施形態に係るブレ検出装置は、第１実施形態の効果に加えて、以下に記載する効果を有する。
平均演算部３５０は、電源投入直後からカウント値ｍが判定レベルｍd 以下である間（ｍ≦ｍd ）は、ドリフト成分演算部３３０及び差分演算部３４０の演算動作と平行して（略同時に）、オメガゼロ値ω0 （ｔm ）を数８によって演算している。平均演算部３５０は、カウント値ｍが判定レベルｍd よりも大きくなり判定レベル２ｍd 以下となったとき（ｍd ＜ｍ≦ｍd ）に、数８による演算結果を利用して、数１０によってオメガゼロ値ω0 （ｔm ）を演算することができる。その結果、過去の演算結果を利用して、演算速度を上げることができる。
【０１１２】
（他の実施形態）
本発明は、以上説明した実施形態に限定するものではなく、種々の変形や変更が可能であって、それらも本発明の均等の範囲内である。
（１）  オメガゼロ値演算部３０及び駆動信号演算部４５は、図１に示すように、別個の演算部としてもよいが、例えば、ワンチップマイコンなどにこれらの演算部を全て組み込んで一体化してもよい。
また、オメガゼロ値演算部３０を構成する時間判定部３１０、演算切替部３２０及びドリフト成分演算部３３０などの各演算部などは、ワンチップマイコンなどの中に全て組み込んでもよいし、それぞれ別々にしてもよい。
【０１１３】
（２）  平均演算部３５０は、数１及び数４によって、ドリフト値ωd （ｔm ）を演算しているが、演算手法はこれに限定するものではない。例えば、移動平均や積算平均などの平均演算の他に、マイコンにより演算するディジタルフィルタや最小自乗法などの演算手法であってもよい。
【０１１４】
（３）  平均演算部３５０は、数３、数５及び数６によって、オメガゼロ値ω0 （ｔm ）を演算しているが、積算平均や移動平均に限らず、他の演算手法であってもよい。
【０１１５】
（４）  平均演算部３５０は、数１及び数４〜数６に示す演算式によって、ドリフト値ωd （ｔm ）及びオメガゼロ値ω0 （ｔm ）を演算するときには、図４に示すＳ６０５０の数３による演算を省略してもよい。
【０１１６】
（５）  本発明の実施形態は、角速度センサ１０などの角速度検出器に限らず、角加速度センサ若しくは加速度センサ又はその他のセンサについても本発明を適用することができる。特に、加速度センサは、角速度の生じない縦ブレ及び横ブレなどの平行ブレを検出する際に利用できる。
【０１１７】
（６）  本発明の実施形態は、一眼レフスチルカメラにブレ検出装置を搭載した例を挙げて説明したが、レンズ鏡筒の交換が不可能なコンパクトカメラについても本発明を適用することができる。
また、ディジタルスチルカメラ、ビデオカメラなどの撮影装置や、双眼鏡、望遠鏡などの光学装置などにも本発明を適用することができる。
【０１１８】
【発明の効果】
以上詳しく説明したように、本発明によれば、ブレ検出信号の基準値を複数演算して、いずれか一方の基準値を選択するので、状況に適した基準値を複数演算して、演算誤差の少ないほうの基準値を選択することができる。
また、選択した基準値に誤差が少ないために、この基準値に基づいてブレを正確に補正することができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態に係るブレ検出装置が搭載された一眼レフカメラを示すブロック図である。
【図２】本発明の第１実施形態に係るブレ検出装置におけるオメガゼロ値演算部を示すブロック図である。
【図３】本発明の第１実施形態に係るブレ検出装置が使用される一眼レフカメラの動作を説明するフローチャートである。
【図４】本発明の第１実施形態に係るブレ検出装置におけるオメガゼロ値演算部の動作を説明するフローチャートである。
【図５】本発明の第１実施形態に係るブレ検出装置における角速度センサの出力信号及びドリフト成分を減算した後の角速度センサの出力信号を示す図である。
【図６】本発明の第１実施形態に係るブレ検出装置におけるオメガゼロ値の演算結果を示す図である。
【図７】従来のブレ補正装置のブロック線図である。
【図８】角速度センサが静止した状態で電源を投入したときの出力変動及び角速度センサの出力信号の一例を示す図である。
【図９】従来のブレ検出装置における移動平均法による演算結果及び演算誤差を示す図である。
【符号の説明】
１０  角速度センサ
２０  増幅部
３０  オメガゼロ値演算部
４５  駆動信号演算部
５０  駆動部
６０  ブレ補正レンズ
７０  カメラボディ
８０  レンズ鏡筒
９０  半押しタイマ
１３０  電源供給部
３１０  時間判定部
３２０  演算切替部
３３０  ドリフト成分演算部
３４０  差分演算部
３５０  平均演算部
３６０  出力切替部
【図１】
0004051738.tif 000013
【図２】
0004051738.tif 000014
【図３】
0004051738.tif 000015
【図４】
0004051738.tif 000016
【図５】
0004051738.tif 000017
【図６】
0004051738.tif 000018
【図７】
0004051738.tif 000019
【図８】
0004051738.tif 000020
【図９】
0004051738.tif 000021