(57)【特許請求の範囲】
【請求項１】
撮像装置に搭載された撮像手段から出力された画像のフレーム間の差分から、前記画像に設定された予め決められた複数の領域それぞれについて動きベクトルを求めて出力する第１の振れ検出手段にて検出された前記複数の動きベクトルのうち、前記撮像装置の振れの角速度を検出する第２の振れ検出手段にて検出された角速度に基づいて決められた範囲の外に存在する動きベクトルを、被写体の動きを示す被写体ベクトルとして抽出する抽出手段と、
流し撮り撮影において、前記抽出手段により抽出された前記被写体ベクトルと、前記第２の振れ検出手段にて検出された角速度との差に基づいて、振れを光学的に補正する補正手段の補正量を求める取得手段と、を有し、
前記抽出手段は、前記角速度が予め決められた第１の閾値未満の場合に、前記第１の閾値以上の場合よりも、前記範囲を狭くすることを特徴とする像振れ検出装置。
【請求項２】
前記抽出手段は、前記範囲を、前記角速度を前記画像における移動量に換算した値を中心として設定することを特徴とする請求項１に記載の像振れ検出装置。
【請求項３】
前記抽出手段は、前記動きベクトルのヒストグラムを作成し、形成されたベクトル群それぞれにおいて、ピークとなるベクトルの度数が予め決められた第２の閾値以上の場合に、前記被写体ベクトルを抽出することを特徴とする請求項１または２に記載の像振れ検出装置。
【請求項４】
前記取得手段は、前記流し撮り撮影でない場合、及び、前記抽出手段により前記被写体ベクトルが抽出できなかった場合に、前記角速度に基づいて前記補正手段の補正量を求めることを特徴とする請求項１乃至３のいずれか１項に記載の像振れ検出装置。
【請求項５】
前記第１の閾値として、複数の互いに異なる第１の閾値が設定され、各第１の閾値について、該第１の閾値未満の場合に、前記第１の閾値以上の場合よりも、前記範囲を狭くすることを特徴とする請求項１乃至４のいずれか１項に記載の像振れ検出装置。
【請求項６】
前記取得手段は、前記流し撮り撮影において、前記被写体ベクトルが抽出できた場合に、該被写体ベクトルの平均値および前記角速度に基づいて前記補正量を求めることを特徴とする請求項１乃至５のいずれか１項に記載の像振れ検出装置。
【請求項７】
前記抽出手段は、前記第１の振れ検出手段にて検出された前記複数の動きベクトルのうち、前記第２の振れ検出手段にて検出された前記角速度に基づいて決められた前記範囲内に存在する動きベクトルを、背景ベクトルとして抽出することを特徴とする請求項１乃至６のいずれか１項に記載の像振れ検出装置。
【請求項８】
前記撮像手段と、
請求項１乃至７のいずれか１項に記載の像振れ検出装置とを有し、
前記補正手段を含む撮像光学系に着脱可能であることを特徴とする撮像装置。
【請求項９】
前記撮像手段と、
請求項１乃至７のいずれか１項に記載の像振れ検出装置と、
前記補正量に基づいて、振れを光学的に補正する前記補正手段と
を有することを特徴とする撮像装置。
【請求項１０】
抽出手段が、撮像装置に搭載された撮像手段から出力された画像のフレーム間の差分から、前記画像に設定された予め決められた複数の領域それぞれについて動きベクトルを求めて出力する第１の振れ検出手段にて検出された前記複数の動きベクトルのうち、前記撮像装置の振れの角速度を検出する第２の振れ検出手段にて検出された角速度に基づいて決められた範囲の外に存在する動きベクトルを、被写体の動きを示す被写体ベクトルとして抽出する抽出工程と、
取得手段が、流し撮り撮影において、前記抽出工程で抽出された前記被写体ベクトルと、前記第２の振れ検出手段にて検出された角速度との差に基づいて、振れを光学的に補正する補正手段の補正量を求める取得工程と、を有し、
前記抽出工程では、前記角速度が予め決められた閾値未満の場合に、前記閾値以上の場合よりも、前記範囲を狭くすることを特徴とする像振れ検出方法。
【請求項１１】
コンピュータに、請求項１０に記載の像振れ検出方法の各工程を実行させるためのプログラム。
【請求項１２】
請求項１１に記載のプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、像振れ検出装置及び方法、及び撮像装置に関する。
【背景技術】
【０００２】
カメラの撮影方法の一つに流し撮りがある。これは、移動している被写体の動きにカメラを追従させながら撮影する手法で、被写体の躍動感を出すために遅いシャッター速度で撮影することが一般的である。
【０００３】
しかしながら、長秒のシャッター速度（例えば１／３０秒）でカメラを振りながら被写体（例えば時速６０ｋｍ／ｈで移動する電車）を上手く追従して撮影するためには熟練が必要である。特に初心者にとって、長秒のシャッター速度で露光期間中に被写体の速度とカメラを振る速度を合わせることは難しいので、流し撮りは難しい撮影手法である。
【０００４】
流し撮りを簡単に実現するために、特許文献１には被写体の速度とカメラを振る速度との差分を検出し、当該差分に相当するズレ量を、手振れ補正機能を用いて補正する方法が開示されている。この方法では、撮影直前には、カメラ内の角速度センサにより被写体を追っているカメラのパンニング（若しくはチルティング）に対する角速度が検出される。同時に撮像面上の主被写体像の移動量が検出される。検出したパンニング速度と撮像面上の被写体像の移動量から被写体の角速度が算出される。そして露光中には、算出した主被写体の角速度とカメラ内の角速度センサ出力との差分量に従って像振れ補正動作が行われる。これにより、主被写体とカメラのパンニング速度との差（被写体振れ量）、及び手振れ量が補正されるので、流し撮り対象である主被写体の像振れを抑えることができる。
【０００５】
また、画面内の動きを検出する公知の技術として、動きベクトルを使った画像の動きを検出する方法があり、動きベクトルの検出方法としては、相関演算に基づく相関法やブロックマッチング法等が知られている。ブロックマッチング法では、入力された画像信号を複数の適当な大きさのブロック領域に分割し、このブロック単位で前のフレームの一定範囲の画素との差を計算する。そして、この差の絶対値の和が最小となる、前のフレームのブロックを探索する。各ブロックと、探索したブロックの画面間の相対的なずれが、そのブロックの動きベクトルを示すことになる。
【０００６】
また、特許文献２には、動きベクトルから検出した画面内のベクトルと、カメラに加わる振れを検出する角速度センサ等を併用して、被写体ベクトルの検出精度を向上させる方法が開示されている。この方法では、画面内のベクトルと角速度から換算した撮像面上での像面移動量とを比較して、像面移動量付近のベクトルを背景ベクトル、像面移動量から一定以上離れたベクトルを被写体ベクトルとして判定している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−３１７８４８号公報
【特許文献２】特開２０１５―１６１７３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、ゆっくり移動する被写体を流し撮りするような撮影シーンにおいては、被写体追従時のパンニング速度が遅いので角速度の出力は小さくなり、被写体ベクトルと背景ベクトルとの差が小さくなる。その結果、殆どのベクトルが被写体ベクトルと誤検出され、正確な被写体ベクトルの検出ができないことがあった。
【０００９】
本発明は上記問題点を鑑みてなされたものであり、画面内の主被写体の動きベクトルをより正確に検出し、被写体振れ補正の精度を上げることを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明の像振れ検出装置は、撮像装置に搭載された撮像手段から出力された画像のフレーム間の差分から、前記画像に設定された予め決められた複数の領域それぞれについて動きベクトルを求めて出力する第１の振れ検出手段にて検出された前記複数の動きベクトルのうち、前記撮像装置の振れの角速度を検出する第２の振れ検出手段にて検出された角速度に基づいて決められた範囲の外に存在する動きベクトルを、被写体の動きを示す被写体ベクトルとして抽出する抽出手段と、流し撮り撮影において、前記抽出手段により抽出された前記被写体ベクトルと、前記第２の振れ検出手段にて検出された角速度との差に基づいて、振れを光学的に補正する補正手段の補正量を求める取得手段と、を有し、前記抽出手段は、前記角速度が予め決められた第１の閾値未満の場合に、前記第１の閾値以上の場合よりも、前記範囲を狭くする。
【発明の効果】
【００１１】
本発明によれば、画面内の主被写体の動きベクトルをより正確に検出し、被写体振れ補正の精度を上げることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明における像振れ補正装置の機能構成を示すブロック図。
【図２】本発明における動きベクトルの検出ブロックの配置例を示す図。
【図３】本発明における動きベクトルのヒストグラムを説明する図。
【図４】本発明におけるユースケースを説明するための図。
【図５】本発明における像振れ補正処理を示すフローチャート。
【図６】本発明における角速度と背景範囲の閾値の関係を示す図。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して本発明を実施するための形態を詳細に説明する。なお、以下の説明では画像のヨー方向またはピッチ方向のいずれか一方の振れ補正制御に関して説明を行い、他方向の振れ補正制御は同様であるため、説明を省略する。
【００１４】
図１は本発明の像振れ補正装置の一例として、デジタルカメラに搭載された像振れ補正装置１００の構成を示すブロック図である。以下、図１の像振れ補正装置１００の各構成部とその動作の一例について具体的に説明する。
【００１５】
角速度検出部１０２は、ジャイロセンサ等のセンサを用いて、カメラに加わる手振れ量を角速度として検出し、電圧に変換した振れ信号（角速度データ）を出力する。角速度検出部１０２から出力された角速度データは、μＣＯＭ１０１内部のハイパスフィルタ（ＨＰＦ）１０３に供給される。ＨＰＦ１０３は、任意の周波数帯域でその特性を変更し得る機能を有しており、角速度データに含まれる低周波数成分を遮断してから高周波数帯域の信号を出力する。なお、ＨＰＦ１０３の代わりに、角速度検出部１０２の出力から、角速度検出部１０２の出力に対して高周波数帯域の信号を遮断するローパスフィルタ（ＬＰＦ）を通過させた信号を減算する構成にしても良い。
【００１６】
利得・位相特性演算部１０４は、入力データであるＨＰＦ１０３の出力を所定のゲインで増幅する増幅器、及び位相補償フィルタで構成されている。
【００１７】
焦点距離演算部１０５は、デジタルカメラの不図示の撮像光学系に含まれるズームレンズの状態を示すズーム情報１２０より、撮像光学系の焦点距離を算出し、振れ補正部１１２を駆動するのに最適な値となるように利得・位相特性演算部１０４の出力を補正する。なお、撮像光学系は、デジタルカメラに備え付けのものであっても、デジタルカメラに着脱可能なものであってもよい。
【００１８】
一方、動きベクトル検出部１１６は、カメラに備えられた不図示の信号処理部で生成された現在の映像信号に含まれる輝度信号と、１フレーム前の映像信号に含まれる輝度信号とに基づいて、画像の動きベクトルを検出する。動きベクトル検出部１１６によって検出された動きベクトルは、被写体ベクトル検出部１１７に供給される。
【００１９】
また、被写体ベクトル検出部１１７は、オフセット除去部１１５によって角速度検出部１０２の出力からオフセット成分を除去した角速度を換算した撮像面上の像面移動量を入力する。そして、入力した像面移動量を用いて、画面内の動きベクトルを、被写体ベクトルと背景ベクトルに分離する。なお、オフセット除去部１１５は、オフセット成分として、カメラが静定状態である場合の、角速度検出部１０２の平均値を用いてもよいし、被写体ベクトル検出部１１７により検出された１フレーム前の背景ベクトルを角速度に換算した値を用いてもよい。
【００２０】
被写体角速度演算部１１８は、被写体ベクトル検出部１１７の出力である被写体ベクトルを、ズーム情報１２０に含まれる焦点距離やフレームレートの情報を使って、被写体角速度へ換算する。減算器１１９は、被写体角速度演算部１１８で算出した被写体角速度からオフセット除去部１１５の出力である像振れ補正装置の角速度を減算、つまりは被写体とカメラの差分角速度を算出する。
【００２１】
振れ補正部１１２の目標信号を選択するスイッチ１０６は、モード情報１２１から、被写体振れ補正か手振れ補正かに応じて、焦点距離演算部１０５の出力と、減算器１１９の出力を切り替える。モード情報１２１が流し撮りモードを示していれば、スイッチ１０６は後述する減算器１１９の出力信号を積分器１０７に供給して被写体の振れを補正する被写体振れ補正を行う。モード情報１２１が流し撮りモードを示していなければ、スイッチ１０６は焦点距離演算部１０５の出力を積分器１０７に供給して画像全体の振れを補正する手振れ補正を行う。
【００２２】
ここで、次のような場合に、モード情報１２１が流し撮りモードであることを示す。まず、カメラに備えられた不図示の操作部に含まれるダイヤルのモード設定に用意されている流し撮りモードが、撮影者により選択された場合に、モード情報１２１が流し撮りモードであることを示す。また、角速度検出部１０２からのヨー方向とピッチ方向の出力を比較して判定しても良い。その場合、例えば、片軸の角速度検出部１０２の出力がもう片軸の角速度検出部１０２よりも大きければ（例えば１０ｄｐｓ以上）、パンニング（若しくはチルティング）状態と判定し、モード情報１２１として流し撮りモードであることを示す。なお、流し撮りモードであっても、後述する被写体ベクトルを検出できない場合には、スイッチ１０６は焦点距離演算部１０５の出力を選択するように制御される。
【００２３】
積分器１０７は、任意の周波数帯域でその特性を変更し得る機能を有しており、スイッチ１０６の出力を積分し、振れ補正部１１２の駆動量を算出する。
【００２４】
減算器１０８は、積分器１０７の出力から、振れ補正系位置検出部１１３から出力された振れ補正部１１２の位置を示す信号をＡ／Ｄ変換器１１４にてＡ／Ｄ変換してデジタル化したデータを減算し、制御器１０９へ供給する。
【００２５】
制御器１０９は、入力データを所定のゲインで増幅する増幅器、及び位相補償フィルタで構成されている。減算器１０８から供給された偏差データは、制御器１０９において増幅器及び位相補償フィルタによる信号処理が行われた後、パルス幅変調部１１０に出力される。
【００２６】
パルス幅変調部１１０は、制御器１０９を通過して供給されたデータを、パルス波のデューティー比を変化させる波形（即ち、ＰＷＭ波形）に変調して、振れ補正系駆動部１１１に供給する。
【００２７】
振れ補正系駆動部１１１は、振れ補正部１１２の駆動用のボイスコイル型モータであり、振れ補正系駆動部１１１によって駆動されることにより、振れ補正部１１２が光軸と垂直な方向に移動される。振れ補正系位置検出部１１３は、磁石とそれに対向する位置に供えられたホールセンサとからなり、振れ補正部１１２の光軸と垂直な方向への移動量を検出し、その検出結果をＡ／Ｄ変換器１１４を介して、上述した減算器１０８に供給する。振れ補正部１１２は、例えばシフトレンズであり、光軸と垂直な方向に移動されることにより光軸をシフトする、光学的に振れ補正可能な補正系である。または、デジタルカメラに備えられた不図示の撮像素子を光軸と垂直な方向に移動させても良い。その結果、装置の振れ等により生じる撮像面上の被写体の移動が補正された像が、撮像素子に結像される。
【００２８】
ここで、被写体ベクトル検出部１１７で行われる処理について説明する。図２は流し撮りの撮影シーンの一例を示しており、画面内に縦６個、横１０個（複数）の動きベクトルの検出ブロック２０１を配置している。この場合、動きベクトル検出部１１６は１フレーム毎に６０個のベクトルデータを出力している。
【００２９】
この時のベクトルデータをヒストグラムにした一例を図３（ａ）に示す。図３（ａ）の横軸はベクトルの移動量を表しており、図３（ａ）の縦軸は度数を表している。図２に示すように画面内に被写体が１つしか存在しない場合は、ヒストグラムは第１ベクトル群３０１と第２ベクトル群３０２の、大きく２つのベクトル群に分かれる。ヒストグラムから被写体ベクトルを判定するためには、移動量が０ｐｉｘ付近の第１ベクトル群３０１が被写体で、移動量が０ｐｉｘから一定以上離れた第２ベクトル群３０２を背景と判定できる。しかし、移動量０ｐｉｘ付近にベクトル群が存在するのは、撮影者が被写体をうまく追従できている場合であり、流し撮りに不慣れな撮影者は被写体の動きの角速度と追従するカメラの角速度との差が大きくなる。これにより、第１ベクトル群３０１が０ｐｉｘから離れていくため、第１ベクトル群３０１と第２ベクトル群３０２のいずれが被写体ベクトル群でいずれが背景ベクトル群であるかを判定するのが難しい。
【００３０】
そこで図３（ｂ）に示すように、角速度検出部１０２の出力である角速度を換算した像面移動量３０３を中心に、背景範囲の閾値３０４内に存在するベクトルは背景ベクトル候補、背景範囲の閾値３０４外に存在するベクトルは被写体ベクトル候補とする。ここで、像面移動量３０３を中心に背景範囲の閾値３０４を用いる理由は、動きベクトル検出部１１６の出力であるベクトルデータは１フレームで６０個（例えば縦６個、横１０個）に対し、角速度検出部１０２の出力である角速度は１フレームで１個のデータ数である。つまり、殆どのベクトルが被写体ベクトルとして判定されるからである。この背景範囲の閾値３０４は角速度検出部１０２の出力に応じて可変させた方がいい。その理由を、図４を用いて説明する。
【００３１】
図４（ａ）は、電車（移動速度が速い被写体）の流し撮りの撮影シーンを示している。このときの焦点距離を、例えば５０ｍｍ、パンニング角速度を、例えば４０ｄｐｓとする。この撮影シーンで得られるベクトルデータのヒストグラムは図３（ｂ）のようになる。被写体部分の第１ベクトル群３０１（被写体ベクトル群）は、撮影者がうまく追従できていれば０ｐｉｘ付近に存在する。背景部分の第２ベクトル群３０２（背景ベクトル群）は、角速度検出部１０２の出力から求めた像面移動量３０３を中心に背景範囲の閾値３０４（例えば±１０ｐｉｘ）の範囲内に存在する。
【００３２】
一方、図４（ｂ）は、小さい子供（移動速度が遅い被写体）の流し撮りの撮影シーンを示している。このときの焦点距離を、例えば５０ｍｍ、パンニング角速度を、例えば５ｄｐｓとする。この撮影シーンで得られるベクトルデータのヒストグラムは図３（ｃ）のようになる。背景範囲の閾値３０４が一定値である場合において、撮影者が被写体をうまく追従できていてパンニング角速度が遅い場合は、被写体ベクトル群３０１と背景ベクトル群３０２とが背景範囲の閾値３０４内に存在する。この場合、被写体ベクトルが存在するにもかかわらず被写体ベクトルは存在しないと誤検出してしまう。
【００３３】
そこで、本実施形態では角速度検出部１０２の出力に応じて像面移動量３０３を中心とした背景範囲の閾値３０４の取り得る値を変更することで、図４（ｂ）のような撮影シーンでもより正確に被写体ベクトルを検出できるようにする。
【００３４】
次に、本実施形態における像振れ補正処理について、図５のフローチャートを参照して説明する。
【００３５】
まず、Ｓ５０１において、手振れ補正機能が有効になっているか否かを判定し、有効であればＳ５０２へ進む。手振れ補正機能が無効であれば、振れ補正部１１２は光学中心位置に位置し続け、防振制御を行わない。Ｓ５０２では、上述したようにモード情報の判定値に基づいて、流し撮りモードであるか否かを判定し、流し撮りモードであればＳ５０３へ進み、流し撮りモードでなければＳ５１５に進む。
【００３６】
Ｓ５０３では、画面全体の動きベクトルを動きベクトル検出部１１６で検出する。次にＳ５０４において、角速度検出部１０２の出力である角速度から、２フレームそれぞれにおける露光時間の重心の間である露光重心間の角速度の平均値を取得する。ここで、露光重心間の角速度の平均値を求めるのは、動きベクトル検出部１１６では、撮像時の露光重心間でフレーム間の差分ベクトルを検出しているからである。これにより、後述するＳ５０７において、動きベクトル検出部１１６の出力と、角速度検出部１０２の出力から算出する撮像面上での像面移動量のヒストグラムを作成する際に同期をとることができる。
【００３７】
Ｓ５０５において、Ｓ５０４で得た露光重心間の角速度の平均値からオフセット成分を除去する。オフセット成分を除去する理由は、後述する被写体ベクトル算出において、オフセット畳重した分、角速度から換算した像面移動量がオフセットし、被写体ベクトルを誤検出してしまうことを防ぐためである。Ｓ５０６において、Ｓ５０５でオフセット成分を除去した露光重心間の角速度の平均値を、フレームレートや焦点距離情報を使って撮像面上での像面移動量に変換する。ここで角速度情報を像面移動量に変換する理由は、後述する被写体ベクトルの判定に、角速度から求めた像面移動量を使用するためである。
【００３８】
次にＳ５０７において、Ｓ５０３で検出した動きベクトルからヒストグラムを作成する。例えば動きベクトル検出部１１６が用いる検出ブロック数の設定が縦６個、横１０個であれば、総数６０個の動きベクトルからなるヒストグラムが作成される。また、ヒストグラムの作成に、Ｓ５０６で算出した撮像面の像面移動量を用いる。ここで、１フレームで取得する角速度のデータ数は１つなので、角速度から換算した撮像面上の像面移動量を中心に±αを背景範囲の閾値とする。
【００３９】
Ｓ５０８では、角速度の出力に応じて上述した背景範囲αの範囲を変更するために、角速度が予め設定した閾値β（例えば１５ｄｐｓ）以上か否かを判定する。角速度が閾値β以上であればＳ５０９に進み、閾値β未満であればＳ５１０に進む。
【００４０】
Ｓ５０８において閾値β以上の角速度でパンニング（若しくはチルティング）をしていると判定された場合、第１ベクトル群３０１と第２ベクトル群３０２が一定以上離れて形成された、図３（ｂ）に示すようなヒストグラムになっていると考えられる。そのため、Ｓ５０９では、背景範囲の閾値３０４の値を、図６に示すようにα１（例えば±１０ｐｉｘ）の値に設定する。
【００４１】
一方、Ｓ５０８において閾値β未満の角速度でパンニング（若しくはチルティング）をしていると判定された場合、第１ベクトル群３０１と第２ベクトル群３０２は殆ど近接した、図３（ｃ）に示すようなヒストグラムになっていると考えられる。そのため、Ｓ５１０において、背景範囲の閾値３０４の値を、図６に示すようにα２（例えば±３ｐｉｘ）の値に設定する。
【００４２】
なお、本実施形態では角速度βの閾値を１つに設定しているが２つ以上にしても良い。また、背景範囲の閾値αも本実施形態では２つに設定しているが、角速度βの閾値に応じて３つ以上にしても良い。
【００４３】
次にＳ５１１において、被写体ベクトルが抽出可能か否かを判定する。被写体ベクトルが抽出可能であればＳ５１２へ進み、被写体ベクトルが抽出不可能であればＳ５１６へ進む。なお、被写体ベクトルの抽出可否の判定については、次のように行う。まず、Ｓ５０７で作成されたヒストグラムにおいて、Ｓ５０９若しくはＳ５１０で設定した背景範囲の閾値３０４内のベクトルを背景ベクトル群、背景範囲の閾値３０４外のベクトルを被写体ベクトル群の候補として判定する。そして、各々のベクトル群でピークベクトルの度数が閾値以上（例えば５）あれば、ベクトルが正しく検出できていると判断する。その場合、最終的に被写体ベクトル、背景ベクトルをそれぞれ抽出することが可能である。
【００４４】
Ｓ５１１で被写体ベクトルが抽出可能と判断されると、Ｓ５１２からは被写体振れ補正のための補正信号を算出する。まず、被写体ベクトル群を抽出し、そのベクトル平均値を算出する。以下、このベクトル平均値を「被写体ベクトル」と呼ぶ。次にＳ５１３において、被写体角速度演算部１１８は、算出した被写体ベクトルを焦点距離やフレームレートを使って角速度に換算し、減算器１１９でオフセット除去部１１５の出力である像振れ補正装置の角速度を減算する。そして、Ｓ５１４において、Ｓ５１３で算出した被写体角速度を積分して被写体振れ補正の補正信号（補正量）を算出する。
【００４５】
一方、Ｓ５１５では、流し撮りモードではないか、または流し撮りモードであっても被写体ベクトルを検出できないので、通常の手振れ補正を行うために、角速度検出部１０２から角速度を取得する。なお、Ｓ５０４では露光重心間の角速度の平均値を取得するのに対し、Ｓ５１５では露光重心間の角速度の平均ではなく、一定の割込み周期（例えば４ｋＨｚサンプリング）で角速度を取得する。
【００４６】
Ｓ５１６では、角速度検出部１０２の出力には直流成分が畳重しているので、HＰＦ１０３を通して直流成分を除去する。次に、Ｓ５１７において、直流成分が除去された角速度検出部１０２の出力が所望の周波数特性になるように、所定のゲインで増幅する増幅器、及び位相補償フィルタで構成された利得・位相特性演算部１０４により処理する。
【００４７】
Ｓ５１８において、焦点距離演算部１０５により、撮像光学系の焦点距離を算出し、振れ補正部１１２を駆動するのに最適な値となるように利得・位相特性演算部１０４の出力を補正する。そして、Ｓ５１９において、ステップＳ５１８で算出した値を積分して、手振れ補正の補正信号を算出する。
【００４８】
そして、Ｓ５２０において、Ｓ５１４で算出された被写体振れ補正の補正信号若しくはＳ５１９で算出された手振れ補正の補正信号を減算器１０８に供給し、偏差データを制御器１０９、パルス幅変調部１１０を介して、振れ補正系駆動部１１１に供給する。振れ補正系駆動部１１１は、こうして得られた補正信号に基づいて、振れ補正部１１２を駆動する。
【００４９】
以上のように、パンニング角速度が遅い場合でも、角速度から求めた像面移動量の範囲を角速度に応じて変更することで、被写体ベクトルの検出精度を向上することができる。
【００５０】
なお、上述した実施形態では、デジタル一眼レフやデジタルコンパクトカメラなどのデジタルカメラに搭載された像振れ補正装置１００について説明したが、本発明はこれに限られるものではない。例えば、監視カメラ、Ｗｅｂカメラ、携帯電話などの撮影装置にも搭載することができる。
【００５１】
また、本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５２】
１０１：μＣＯＭ、１０２：角速度検出部、１１１：振れ補正系駆動部、１１２：振れ補正部、１１３：振れ補正系位置検出部、１１６：動きベクトル検出部、１１７：被写体ベクトル検出部、１１８：被写体角速度演算部
【図１】
0006674264.tif 000002
【図２】
0006674264.tif 000003
【図３】
0006674264.tif 000004
【図４】
0006674264.tif 000005
【図５】
0006674264.tif 000006
【図６】
0006674264.tif 000007