(57)【特許請求の範囲】
【請求項１】
撮像装置の回転による角度振れ量と前記撮像装置の平行移動による平行振れ量の情報に基づいて、前記撮像装置が撮像する画像の振れを補正する像振れ補正装置であって、
前記撮像装置の角速度と加速度の情報に基づいて、第１平行振れ量の情報を取得する第１取得手段と、
前記画像における動きベクトルの情報に基づいて、被写体の動きベクトルを選択する被写体ベクトル選択手段と、
前記被写体の動きベクトルに基づいて、第２平行振れ量の情報を取得する第２取得手段と、
前記画像において前記被写体の合焦範囲を検出する合焦範囲検出手段と、
前記第２平行振れ量に補正係数を乗じる乗算手段と、
前記第１平行振れ量と、前記乗算手段によって前記補正係数が乗じられた前記第２平行振れ量と、を加算することによって前記画像の振れを補正する補正量を設定する設定手段と、を有し、
前記乗算手段は、前記合焦範囲検出手段が検出した前記合焦範囲の割合が閾値未満である場合の前記補正係数を、前記合焦範囲の割合が閾値以上である場合の前記補正係数よりも大きく設定することを特徴とする像振れ補正装置。
【請求項２】
前記乗算手段は、前記合焦範囲の割合が閾値以上である場合の前記補正係数をゼロに設定することを特徴とする請求項１に記載の像振れ補正装置。
【請求項３】
前記第２取得手段は、
前記被写体の動きベクトルを角速度に変換するベクトル演算手段と、
該ベクトル演算手段によって変換された前記角速度を角度情報に変換する積分手段と、
を有することを特徴とする請求項１または２に記載の像振れ補正装置。
【請求項４】
前記画像における動きベクトルを検出する動きベクトル検出手段を更に有し、
前記被写体ベクトル選択手段は、前記動きベクトル検出手段によって検出された前記動きベクトルの情報に基づいて、前記被写体の動きベクトルを選択することを特徴とする請求項１乃至３のうちいずれか１項に記載の像振れ補正装置。
【請求項５】
前記画像の輝度値の情報を取得する輝度値情報取得手段を更に有し、
前記乗算手段は、前記輝度値情報取得手段が取得した前記輝度値が閾値未満である場合の前記補正係数を、前記輝度値が閾値以上である場合の前記補正係数よりも小さく設定することを特徴とする請求項１乃至４のうちいずれか１項に記載の像振れ補正装置。
【請求項６】
前記合焦範囲検出手段は、前記動きベクトル検出手段によって検出されたベクトルの度数分布に基づいて、前記合焦範囲を検出することを特徴とする請求項４に記載の像振れ補正装置。
【請求項７】
前記合焦範囲検出手段は、前記撮像装置の焦点距離と被写体距離から算出される撮影倍率によって前記合焦範囲を検出することを特徴とする請求項１乃至５のうちいずれか１項に記載の像振れ補正装置。
【請求項８】
前記被写体ベクトル選択手段は、前記動きベクトル検出手段によって検出されたベクトルの度数分布に基づいて、前記被写体の動きベクトルを選択することを特徴とする請求項４に記載の像振れ補正装置。
【請求項９】
撮像装置の回転による角度振れ量と前記撮像装置の平行移動による平行振れ量の情報に基づいて、前記撮像装置が撮像する画像の振れを補正する像振れ補正装置であって、
前記画像における動きベクトルに基づいて被写体の動きベクトルを選択する被写体ベクトル選択手段と、
前記被写体ベクトル選択手段によって選択された前記被写体の動きベクトルに基づいて、前記平行振れ量の情報を取得する取得手段と、
前記画像において前記被写体の合焦範囲を検出する合焦範囲検出手段と、
前記取得手段が取得した前記平行振れ量に補正係数を乗じる乗算手段と、
を有し、
前記乗算手段は、前記合焦範囲検出手段が検出した前記合焦範囲の割合が閾値未満である場合の前記補正係数を、前記合焦範囲の割合が閾値以上である場合の前記補正係数よりも大きく設定することを特徴とする像振れ補正装置。
【請求項１０】
前記画像の輝度値の情報を取得する輝度値情報取得手段を更に有し、
前記乗算手段は、前記輝度値情報取得手段が取得した前記輝度値が閾値未満である場合の前記補正係数を、前記輝度値が閾値以上である場合の前記補正係数よりも小さく設定することを特徴とする請求項９に記載の像振れ補正装置。
【請求項１１】
請求項１乃至１０のうちいずれか１項に記載の像振れ補正装置を有することを特徴とする撮像装置。
【請求項１２】
撮像装置の回転による角度振れ量と前記撮像装置の平行移動による平行振れ量の情報に基づいて、前記撮像装置が撮像する画像の振れを補正する像振れ補正方法であって、
前記撮像装置の角速度と加速度の情報に基づいて、第１平行振れ量の情報を取得するステップと、
前記画像における動きベクトルの情報に基づいて、被写体の動きベクトルを選択するステップと、
前記被写体の動きベクトルに基づいて、第２平行振れ量の情報を取得するステップと、
前記画像において前記被写体の合焦範囲を検出するステップと、
前記第２平行振れ量に補正係数を乗じるステップと、
前記第１平行振れ量と、前記補正係数が乗じられた前記第２平行振れ量と、を加算することによって前記画像の振れを補正する補正量を設定するステップと、
を有し、
前記合焦範囲の割合が閾値未満である場合の前記補正係数を、前記合焦範囲の割合が閾値以上である場合の前記補正係数よりも大きく設定することを特徴とする像振れ補正方法。
【請求項１３】
撮像装置の回転による角度振れ量と前記撮像装置の平行移動による平行振れ量の情報に基づいて、前記撮像装置が撮像する画像の振れを補正する像振れ補正方法であって、
前記画像における動きベクトルの情報に基づいて被写体の動きベクトルを選択するステップと、
前記被写体の動きベクトルに基づいて、前記平行振れ量の情報を取得するステップと、
前記画像において前記被写体の合焦範囲を検出する合焦範囲検出ステップと、
前記取得するステップが取得した前記平行振れ量に補正係数を乗じる乗算ステップと、
を有し、
前記乗算ステップは、前記合焦範囲検出ステップで検出した前記合焦範囲の割合が閾値未満である場合の前記補正係数を、前記合焦範囲の割合が閾値以上である場合の前記補正係数よりも大きく設定することを特徴とする像振れ補正方法。
【請求項１４】
コンピュータに請求項１２または１３に記載の像振れ補正方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手振れ等による像振れを補正する像振れ補正装置、像振れ補正方法、撮像装置およびプログラムに関する。
【背景技術】
【０００２】
特許文献１は、被写体の画像全体に占める割合に基づいて、平行振れ量を補正するための補正ゲインを決定し、角度振れ量と、平行振れ量を補正ゲインにより補正した値との合成値に基づいて、振れ補正手段を駆動する防振制御装置を提案している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−６１５７２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１は、被写体の画像全体に占める割合が大きいほど、補正ゲインを大きく設定しているため、被写体の合焦範囲が狭いマクロ撮影時などでは補正ゲインが小さくなり、平行振れ量が残る懸念がある。また、従来の平行振れ量の情報は、角速度計と加速度計の情報に基づいて得られていたため、特に、低周波の振動に対しては平行振れ量の検出精度が低く、高精度な平行振れ補正を行うことができなかった。
【０００５】
本発明は、高精度な平行振れ補正を行うことが可能な像振れ補正装置、像振れ補正方法、撮像装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の像振れ補正装置は、撮像装置の回転による角度振れ量と前記撮像装置の平行移動による平行振れ量の情報に基づいて、前記撮像装置が撮像する画像の振れを補正する像振れ補正装置であって、前記撮像装置の角速度と加速度の情報に基づいて、第１平行振れ量の情報を取得する第１取得手段と、前記画像における動きベクトルの情報に基づいて、被写体の動きベクトルを選択する被写体ベクトル選択手段と、前記被写体の動きベクトルに基づいて、第２平行振れ量の情報を取得する第２取得手段と、前記画像において前記被写体の合焦範囲を検出する合焦範囲検出手段と、前記第２平行振れ量に補正係数を乗じる乗算手段と、前記第１平行振れ量と、前記乗算手段によって前記補正係数が乗じられた前記第２平行振れ量と、を加算することによって前記画像の振れを補正する補正量を設定する設定手段と、を有し、前記乗算手段は、前記合焦範囲検出手段が検出した前記合焦範囲の割合が閾値未満である場合の前記補正係数を、前記合焦範囲の割合が閾値以上である場合の前記補正係数よりも大きく設定することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、高精度な平行振れ補正を行うことが可能な像振れ補正装置、像振れ補正方法、撮像装置およびプログラムを提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態による撮像装置の上面図と側面図である。
【図２】図１に示す像振れ補正装置の制御ブロック図である。
【図３】本実施形態における平行振れ補正を説明するための図である。
【図４】画面内のベクトル検出を説明するための図である。
【図５】図２に示す乗算器とベクトル信頼度判定部との関係を示すグラフである。
【図６】図１に示す像振れ補正装置の動作を説明するためのフローチャートである。
【発明を実施するための形態】
【０００９】
従来から、角速度計によって検出された角速度に基づいて、像振れ補正レンズの一部や撮像素子を光軸垂直方向に移動させる像振れ補正装置は知られている。至近距離での撮影（マクロ撮影時などの撮影倍率の高い撮影条件）では、角速度計のみでは検出できない、カメラの光軸に対して平行あるいは垂直な方向に加わる、いわゆる平行振れによる像劣化も無視できない。例えば、マクロ撮影のように被写体に２０ｃｍ程度まで接近して撮影する条件や、被写体は１ｍ程度に位置していても、撮影光学系の焦点距離が非常に大きい（例えば、４００ｍｍ）場合は積極的に平行振れを検出して補正を行う必要が生じる。
【００１０】
撮像装置に加わる振れには回転中心周りに回転による角度振れと撮像装置の平行移動による平行振れの２種類がある。角度振れによる像の劣化は、被写体距離と撮像装置の焦点距離が長い程大きくなる。平行振れによる像劣化は、被写体距離と焦点距離に関連し、像倍率が大きい（被写体距離が近く、焦点距離も長い）程劣化量は大きくなる。
【００１１】
一般の撮影条件（例えば、被写体距離１ｍ）では、平行振れによる像劣化の影響はほぼ無視できるが、近接撮影（例えば、被写体距離１０ｃｍ）においては、撮影倍率が高いために平行振れによる像劣化が無視できない。このため、平行振れを検出（例えば、光学防振システムでは加速度計などを用いて検出、電子防振システムは画像のずれを検出）し、その結果に応じて像振れを補正する。画面内には様々な撮影距離の被写体が混在している。被写体の撮影距離に合わせて像振れ補正を行えば、被写体に対しては平行振れによる像劣化は防げるが、背景などそれ以外の撮影距離の被写体に対しては十分な振れ補正ができず、像劣化の原因となる。
【００１２】
図１（ａ）は、本実施形態に係る撮像装置１０１を示す平面図、図１（ｂ）は、その側面図である。撮像装置１０１は、矢印１０３ｐ、１０３ｙで示す振れ（以下、「角度振れ」）、及び矢印１０４ｐ、１０４ｙで示す振れ（以下、「平行振れ」）に対して振れ補正を行う像振れ補正装置を有する。像振れ補正装置は、角度振れ量と平行振れ量に基づいて、撮像装置が撮像する画像の振れを補正する。
【００１３】
１０５はレリーズボタン（Ｓ１）、１０６は測光部、１０７は撮像素子、１５０はカメラＣＰＵである。
【００１４】
レリーズボタン１０５は、ユーザによる半押しに応じてＳＷ１信号をＣＰＵ１５０に送信し、ユーザによる全押しに応じてＳＷ２信号をＣＰＵ１５０に送信する。レリーズボタン１０５は、撮影準備および撮影を指示する指示手段として機能する。本実施例では、レリーズボタン１０５の半押しは撮影準備の指示に相当し、レリーズボタン１０５の全押しは撮影の指示に相当する。
【００１５】
測光部（輝度値情報取得手段）１０６は、撮像素子１０７からの出力を用いて撮像光学系を通過した光量（輝度）を測定し、輝度値情報をＣＰＵ１５０に送信する。
【００１６】
撮像素子１０７は、ＣＣＤセンサやＣＭＯＳセンサ等の光電変換素子により構成され、撮像光学系が形成した光学像を光電変換することによって被写体を撮像する。撮像素子１０７から出力されるアナログ電気信号は、不図示のＡ／Ｄ変換部によってデジタル信号に変換され、デジタル信号は不図示の画像処理手段に入力される。画像処理手段は、ホワイトバランス、γ処理等の所定の処理をデジタル信号に施し、ＣＰＵ１５０に結果を送信する。画像処理手段は、後述する動きベクトル検出部１８０を含む。
【００１７】
ＣＰＵ１５０は、撮像装置１０１の各部の動作を制御する制御手段であり、マイクロコンピュータから構成される。ＣＰＵ１５０は、ＳＷ１信号に応じて、ＡＥ（オートフォーカス）、像振れ補正、ＡＷＢ（オートホワイトバランス）処理、ＥＦ（フラッシュプリ発光）処理、顔検出等の撮影準備動作を開始する。また、ＣＰＵ１５０は、ＳＷ２信号に応じて、不図示のシャッター駆動回路を駆動し、撮影光束を撮像素子１０７に導き、露光（撮影）を行う。また、ＣＰＵ１５０は、ＳＷ２信号に応じて、撮像素子１０７からの信号読み出しから画像記録手段に画像データを書き込むまでの一連の撮影処理の動作を制御する。
【００１８】
１０８ｐ、１０８ｙは各々矢印１０８ｐａ、１０８ｙａ回りの角度振れを検出する角速度計（角速度検出手段）である。１０９ｐ、１０９ｙは各々矢印１０９ｐａ、１０９ｙａで示す平行振れを検出する加速度計（加速度検出手段）である。ｐはピッチ、ｙはヨーを表している。
【００１９】
１１２は、像振れ補正レンズ１１１を矢印１１０ｐ、１１０ｙの方向に自在に駆動するレンズ駆動部であり、角度振れと平行振れの両方に基づく像振れ補正を行う。角速度計１０８ｐ、１０８ｙ、及び加速度計１０９ｐ、１０９ｙの出力は、ＣＰＵ１５０に入力される。レンズ駆動部１１２による駆動は、ＣＰＵ１５０によって制御される。
【００２０】
像振れ補正レンズ１１１は、像振れ補正手段の一例であり、撮像光学系を構成する。像振れ補正レンズ１１１は、光軸１０２に直交する方向にレンズ駆動部１１２によって移動されて光軸１０２を偏心させることによって像振れを補正する。なお、「直交する方向」は光軸１０２に直交する成分があれば足り、光軸１０２に斜めに移動されてもよい。像振れ補正レンズ１１１の位置は、後述する位置検出部１１３によって検出され、位置検出部１１３の検出信号は後述するＡ／Ｄ変換器１１４によって変換されてＣＰＵ１５０に入力される。
【００２１】
撮像光学系は、撮像素子１０７の撮像面に被写体の光学像（被写体像）を形成し、ズームレンズ（変倍レンズ）、絞り、フォーカスレンズ等を有する。ズームレンズ（変倍レンズ）は、光軸方向に移動されて焦点距離を変更する。絞りは、撮像光学系の射出瞳位置に配置され、不図示の駆動手段によって駆動され、撮像素子１０７に入射する光量を調節する。フォーカスレンズは、光軸方向に移動されて焦点調節を行う。
【００２２】
本実施形態は、像振れ補正手段として、算出された補正量に基づいて像振れ補正レンズ１１１を光軸に垂直な面内で移動させる光学防振を用いている。しかし、補正方法は、撮像素子を光軸に垂直な面内で移動させることで振れ防振を行う方法、撮像素子が出力する各撮影フレームの切出位置を変更することで振れの影響を軽減させる電子防振、それらの組み合わせなどでもよい。
【００２３】
図２は、本実施形態に係る像振れ補正装置の制御ブロック図である。同図に示す像振れ補正装置は、測光部１０６、角速度計１０８ｐ、加速度計１０９ｐ、ＣＰＵ１５０、動きベクトル検出部１８０、レンズ駆動部１１２、像振れ補正レンズ１１１、位置検出部１１３、Ａ/Ｄ変換部１１４を有する。図２では、撮像装置１０１の鉛直方向に生じる振れ（ピッチ方向：図１の矢印１０３ｐ、１０４ｐ方向）の構成のみを示している。しかし、同様な構成は撮像装置１０１の水平方向に生じる振れ（ヨー方向：図１の矢印１０３ｙ、１０４ｙ方向）にも設けられている。これらは基本的には同じ構成になっているので、以下、ピッチ方向の構成についてのみ説明を行う。
【００２４】
ＣＰＵ１５０は、ＨＰＦ積分フィルタ１５１、１５４、１５８、敏感度調整部１５２、ズーム・フォーカス情報取得部１５３、ゲイン調整部１５５、ＨＰＦ位相調整部１５６、角速度ＢＰＦ部１５７、加速度ＢＰＦ部１５９、比較部１６０を有する。また、ＣＰＵ１０６は、平行振れ加算部１６１、演算部１６２、被写体ベクトル選択部１６３、ベクトル演算部１６４、積分器１６５、乗算器１６６、被写体検出部１６７、合焦範囲検出部１６８、ベクトル信頼度判定部１６９を更に有する。
【００２５】
画像の角度振れ補正において、角速度計１０８ｐからの角速度信号は、ＣＰＵ１５０のＨＰＦ積分フィルタ１５１に入力され、ＨＰＦ（ハイパスフィルタ或いは高域透過フィルタ）でＤＣ成分をカットされた後に積分され、角度信号に変換される。手振れ周波数帯域は、１Ｈｚ〜１０Ｈｚの間であるため、ＨＰＦとしては、例えば、手振れ周波数帯域から十分離れた、例えば、０．１Ｈｚ以下の周波数成分をカットする１次のＨＰＦ特性になっている。
【００２６】
ＨＰＦ積分フィルタ１５１の出力と、ズーム・フォーカス情報取得部１５３が取得した情報は、敏感度調整部１５２に入力される。敏感度調整部１５２は、ズーム・フォーカス情報取得部１５３から得られる情報に基づいて、ＨＰＦ積分フィルタ１５１の出力を増幅し、角度振れ補正目標値（角度振れ補正量）を生成する。これにより、撮像光学系のフォーカスやズームなどの光学情報の変化による像振れ補正レンズ１１１の移動量に対する像面上での振れ量の比である振れ補正敏感度の変化を補正することができる。ＣＰＵ１５０は、補正された角度振れ補正目標値をレンズ駆動部１１２に出力し、像振れ補正レンズ１１１を駆動することで画像振れを補正する。
【００２７】
図３は、撮像装置１０１に加わる角度振れ１０３ｐと平行振れ１０４ｐを示す図である。カメラ１０１の撮像光学系の主点位置における平行振れＹ（１０４ｐ）と角度振れθ（１０３ｐ）と回転中心Ｏを定めた場合の回転半径Ｌの関係は、以下の（１）（２）（３）式にて表すことができる。なお、回転半径Ｌは、回転中心Ｏから加速度計１０９ｐまでの距離である。
【００２８】
Ｙ＝Ｌθ             ・・・・・・・・・（１）
Ｖ＝Ｌω             ・・・・・・・・・（２）
Ａ＝Ｌωａ           ・・・・・・・・・（３）
（１）式は、加速度計１０９ｐの出力を２階積分して変位Ｙを求め、角速度計１０８ｐを１階積分して角度θを求めた場合の回転半径Ｌである。（２）式は、加速度計１０９ｐの出力を１階積分して速度Ｖを求め、角速度計１０８ｐの出力より角速度ωを求めた場合の回転半径Ｌである。（３）式は、加速度計１０９ｐの出力より加速度Ａを求め、角速度計１０８ｐの出力を１階微分することより角加速度ωａを求めた場合の回転半径Ｌである。これらいずれの方法でも回転半径Ｌを求めることができる。
【００２９】
一方、撮像光学系の主点位置における平行振れＹと撮像光学系の振れ角度θ及び撮像光学系の焦点距離ｆと撮影倍率βより撮像面に生ずる振れδは、（４）式で求められる。
【００３０】
δ＝（１＋β）ｆθ＋βＹ           ・・・・・・・・・（４）
ここで、焦点距離ｆは、撮像光学系のズーム・フォーカスの情報を取得するズーム・フォーカス情報取得部１５３が取得した情報によって求めることができる。撮像倍率βは、画面における被写体の大きさに対応する、撮像素子１０７上に結像された被写体の像の大きさの倍率を表すものであり、これもズーム・フォーカス情報取得部１５３が取得した情報によって求めることができる。振れ角度θは、角速度計１０８ｐの積分結果より求めることができる。よって、これらの情報から、角度振れ補正を行うことができる。つまり、ＨＰＦ積分フィルタ１５１からはθが出力され、敏感度調整部１５２は、θに（１＋β）ｆを乗算して、右辺第１項の（１＋β）ｆθを合成演算手段１５４に出力する。
【００３１】
右辺第２項に関しては、加速度計１０９ｐの２階積分値Ｙと撮影倍率βにより求まるので、その情報に応じて平行振れ補正を行うことができる。
【００３２】
本実施形態は、第１平行振れ量と第２平行振れ量とを加算した値を画像の平行振れ量として設定している。特許文献１は、第１平行振れ量だけを使用しており、従来、第２平行振れ量は考慮されておらず、平行振れ補正を高精度に行うことができなかった。本実施形態は、第２平行振れ量を考慮することによって高精度な平行振れ補正を実現している。
【００３３】
第１平行振れ量は、角速度計１０８ｐによって検出される撮像装置の角速度と加速度計１０９ｐによって検出される撮像装置の加速度の情報に基づいて得られる平行振れ量であり、構成要素１５４〜１６０を含む第１取得手段によって取得される。第２平行振れ量は、被写体の動きベクトルに基づいて得られる平行振れ量であり、構成要素１６３〜１６８を含む第２取得手段によって取得される。
【００３４】
角速度計１０８ｐと加速度計１０９ｐは、撮像装置１０１に加わる振動のうち低周波領域を正確に測定しにくい。これに対して、動きベクトル検出部１８０は、低周波領域をより正確に測定することができる。但し、動きベクトル検出部１８０の計測結果は、被写体の画面内の割合や輝度による誤差の影響を受けやすいので、本実施形態では、Ｙ＝Ｙ・Ｋｖに設定し、後述するように補正係数（補正ゲイン）Ｋｖを調整している。
【００３５】
第１平行振れ量の取得において、角速度計１０８ｐからの角速度信号が、ＨＰＦ積分フィルタ１５４に入力され、ＨＰＦでＤＣ成分をカットされた後、積分されて角度信号に変換される。ＨＰＦ積分フィルタ１５４の出力は、ゲイン調整部（利得調整フィルタ）１５５に入力される。ゲイン調整部１５５とＨＰＦ積分フィルタ１５４により、平行振れ補正を行うべき周波数帯域におけるゲインと位相特性を調整する。
【００３６】
角速度計１０８ｐの出力はＨＰＦ位相調整部（位相調整フィルタ）１５６にも入力され、角速度計１０８ｐの出力に重畳するＤＣ成分がカットされると共にその信号の位相調整が行われる。ここでのカットオフ周波数は、後述するＨＰＦ積分フィルタ１５８のＨＰＦのカットオフ周波数と合わせており、周波数特性が一致するように設定されている。ＨＰＦ位相調整部１５６の出力からは、帯域透過手段である角速度ＢＰＦ部（バンドパスフィルタ或いは帯域透過フィルタ）１５７で所定帯域の周波数成分のみ抽出される。
【００３７】
加速度計１０９ｐの出力は、ＨＰＦ積分フィルタ１５８に入力され、ＨＰＦでＤＣ成分をカットされた後、積分されて速度信号に変換される。このときのＨＰＦのカットオフ周波数は、上述したように、ＨＰＦ位相調整部１５６のＨＰＦの周波数特性と合わせて設定されている。ＨＰＦ積分フィルタ１５８の出力からは、帯域透過手段である加速度ＢＰＦ部（バンドパスフィルタ或いは帯域透過フィルタ）１５９で所定帯域の周波数成分のみ抽出される。
【００３８】
角速度ＢＰＦ部１５７及び加速度ＢＰＦ部１５９の出力は、比較部１６０に入力され、ゲイン調整部１５５の出力を補正する補正量（補正係数）が算出される。比較部１６０は、（２）式からＬ＝Ｖ／ωを求める。また、（１）（４）式から、δ＝（１＋β）ｆθ＋βＬθとなる。このため、ゲイン調整部１５５は、ＨＰＦ積分フィルタ１５４から出力されるθにズーム・フォーカス情報取得部から取得するβと比較部１６０から取得するＬを乗算することによって第１平行振れ量を作成する。
【００３９】
動きベクトル検出部（動きベクトル検出手段）１８０は、撮像素子１０７から得られる画像信号に含まれる輝度信号と画像メモリに格納された１フィールド前の映像信号に含まれる輝度信号に基づいて画像における動きベクトルを検出する。動きベクトルは、例えば、ブロックマッチング法を使用して検出することができる。ブロックマッチング法では、画像信号を複数の適当な大きさのブロック領域に分割し、ブロック単位で前のフィールド（又はフレーム）の一定範囲の画素との差を計算し、この差の絶対値の和が最小となる前のフィールド（又はフレーム）のブロックを探索する。画面間の相対的なズレがそのブロックの動きベクトルを示す。動きベクトル検出部１８０により得られた動きベクトルは、被写体ベクトル選択部（被写体ベクトル選択手段）１６３に入力される。
【００４０】
被写体ベクトル選択部１６３は、被写体検出部１６７が検出した被写体に基づいて、動きベクトル検出部１８０によって検出された画面内の動きベクトルのうち、被写体の動きベクトルを選択して出力する。
【００４１】
図４（ａ）は、画面内における動きベクトルを検出する方法を説明するための図である。図４（ａ）に示すように、被写体Ｏの合焦範囲が狭い場合は、被写体Ｏと背景との第２平行振れ補正差が目立つようになる。画面内には、ベクトルを検出するためのブロック１０が、画面水平方向にｎ個、画面垂直方向にｍ個配置されている。１１は焦点検出範囲を示すＡＦ枠である。動きベクトル検出部１８０は、検出したベクトルから被写体か背景のベクトルかを区別することはできないため、角速度情報を用いて角速度とベクトルの度数分布を比較することで被写体と背景のベクトルを区別する。
【００４２】
図４（ｂ）は、角速度とベクトルの度数分布を示すヒストグラムであり、横軸が角速度、縦軸が度数である。１２は被写体ベクトル、１３は背景ベクトルを、１４は角速度を表している。理想的には、被写体Ｏの角速度と撮像装置１０１の角速度が一致していれば、撮像装置１０１から見ると被写体Ｏは止まって見えるので角速度は０ｄｐｓになる。背景は撮像装置１０１の角速度で動いているので、例えば、１０ｄｐｓでパンニングをしていれば背景の角速度は１０ｄｐｓになる。このように、角速度１４付近におけるベクトルは背景ベクトル１３であり、角速度１４から離れたベクトルは被写体ベクトル１２である。ユーザは、被写体ＯにＡＦ枠１１を合わせるので、ＡＦ枠１１の周辺のブロック１０が検出したベクトルに重み付けを行い、被写体と背景のベクトル抽出の精度を上げる。合焦範囲検出部（合成範囲検出手段）１６８は、図４（Ｂ）に示す被写体ベクトル１２付近の度数分布範囲を合焦範囲として検出することができる。
【００４３】
被写体検出部１６７は、角速度情報とＡＦ枠１１の情報を使って被写体と背景のベクトルを区別してもよいが、顔認識等の被写体判別情報を使って表示される被写体枠情報を使ってその枠を用いてもよい。被写体ベクトル選択部１６３により区別された被写体のベクトルをベクトル演算部１６４へ出力する。
【００４４】
合焦範囲検出部１６８は、画面内の被写体Ｏの合焦範囲を検出する。合焦範囲検出部１６８からは被写体の全画角に対する割合（画像における被写体の割合）の情報が得られる。例えば、ブロック１０と被写体検出部１６７を用いて画面内の被写体ベクトル１２を全ベクトルで除算することで画角全体に対して被写体の割合を算出してもよいし、ズーム位置と被写体距離情報から求まる撮影倍率を用いて算出してもよい。図４（ａ）において、合焦範囲検出部１６８は、ＡＦ枠１１の内側にある被写体Ｏの範囲を合焦範囲として認識することができる。
【００４５】
ベクトル演算部（ベクトル演算手段）１６４は、入力されたベクトルを焦点距離やフレームレート情報を用いて角速度へ変換し、積分器（積分手段）１６５に出力する。積分器１６５は、角速度を積分することで角度情報に変換する。乗算器（乗算手段）１６６が、これに、ズーム・フォーカス情報取得部から取得した撮像倍率βとベクトルフィードバックゲインとしての補正係数（補正ゲイン）Ｋｖを乗算して平行振れ加算部１６１に出力する。補正係数Ｋｖは、合焦範囲検出部１６８とベクトル信頼度判定部１６９の出力に基づいて０から１まで可変できる値を選択する。
【００４６】
乗算器１５８は、合焦範囲検出部１６８が検出した画像における被写体の合焦範囲の割合が閾値未満である場合の補正係数Ｋｖを、割合が閾値以上である場合の補正係数Ｋｖよりも大きく設定している。本実施形態では、被写体の合焦範囲の割合が閾値以上である場合の補正係数Ｋｖを０（ゼロ）に設定し、割合が閾値未満である場合の補正係数Ｋｖを１に設定しているが、これに限定されない。
【００４７】
特許文献１は、被写体の画像全体に占める割合が大きいほど、補正ゲインを大きく設定することによって、動画撮影中に、被写体の像振れ補正と背景の像振れ補正のバランスをとっている。しかしながら、被写体の画像全体に占める割合が小さいときは補正ゲインが小さくなり、平行振れ量の補正が効かなくなり、被写体の合焦範囲が狭いマクロ撮影時などでは平行振れの影響が残る懸念がある。本実施形態によれば、近接撮影条件において、被写体の合焦範囲が狭い場合にも適切な平行振れ補正を行うことができる。
【００４８】
ベクトル信頼度判定部１６９は、動きベクトル検出部１８０が出力するベクトルが正しく検出できたベクトルか否かを判定する。ベクトル信頼度判定部１６９は、測光部１０６が検出した輝度が閾値未満であるかどうかを判断する。低コントラストなど物体の特徴点が分かりづらい画像信号ではベクトル検出が難しい。そこで、ベクトル信頼度判定部１６９が動きベクトル検出部１８０がエラー値を出力した場合、乗算器１５８は、１よりも小さい補正ゲインＫｖを設定し、像振れ補正が過補正になることを防ぐ。乗算器１５８は、画像の輝度値が閾値未満である場合の補正係数Ｋｖを、輝度値が閾値以上である場合の補正係数Ｋｖよりも小さく設定する。
【００４９】
図５は、乗算器１５８とベクトル信頼度判定部１６９との関係を示すグラフである。横軸はベクトル信頼度判定部１６９の出力であるベクトル信頼度、縦軸は補正係数Ｋｖであるが、横軸を輝度値に置き換えてもよい。
【００５０】
乗算器１５８は、動きベクトル検出部１８０と測光部１０６の検出結果に基づいて、補正係数を決定し、積分器１６５の出力に乗じる。１フィールド毎に出力されるベクトル判定値が閾値Ｔ１未満である場合、乗算器１５８は、０．３倍程度の補正ゲインを設定する。例えば、夜の撮影シーン等で動きベクトル検出部１８０の検出精度が低下する撮影シーンの場合である。次に、ベクトル判定値が閾値Ｔ１以上Ｔ２未満である場合、乗算器１５８は、０．８倍程度の補正係数を設定する。例えば、撮像装置１０１のＩＳＯ感度を上げてノイズが顕著になり、ベクトル検出へ影響するような撮影シーン（例えば、ＩＳＯ感度１２００以上）の場合である。ベクトル判定値が閾値Ｔ２以上の場合、正しくベクトル検出が出来ていると判断し、積極的に平行振れ補正を行うので、乗算器１５８は、１倍の補正ゲインを設定する。
【００５１】
平行振れ加算部１６１は、ゲイン調整部１５５の出力（第１平行振れ量）と乗算値１６６の出力（第２平行振れ量）を加算することによって前記画像の振れを補正する補正量を設定する設定手段（加算手段）である。演算部１６２は、敏感度調整部１５２からの出力（角度振れ量）と平行振れ加算部１６１の出力（合成平行振れ量）を加算し、画像の振れを補正するための補正量を設定すると共に、Ａ／Ｄ変換器１１４の出力（現在の補正値）を減算する演算手段である。
【００５２】
図６は、像振れ補正装置（ＣＰＵ１５０）による像振れ補正方法（カメラの電源起動後一定の割込み周期で演算される、被写体ベクトル１２の検出から像振れ補正量算出までの処理）を説明するためのフローチャートである。「Ｓ」はステップ（工程）を表している。図６に示すフローチャートは、コンピュータに各ステップを実行させるためのプログラムとして具現化が可能である。かかるプログラムは、例えば、非一時的なコンピュータ可読記憶媒体などの記憶手段に記憶可能である。なお、本実施形態の像振れ補正方法は、動画撮影と静止画撮影のいずれにおいても適用可能である。
【００５３】
Ｓ６００では、ＣＰＵ１５０は、像振れ補正が有効になっているか（不図示の防振スイッチがオンにされ、ＳＷ１信号が生成されたかどうか）を判定し、有効である場合はＳ６０１へ進み、無効である場合は処理を終了する。Ｓ６０１では、ＣＰＵ１５０は、角速度計１０８ｐ、１０８ｙによって検出された情報と、加速度計１０９ｐ、１０９ｙによって検出された取得する。Ｓ６０２では、ＣＰＵ１５０は、角速度計１０８ｐ、１０８ｙの出力値や焦点距離情報等を用いて角度振れ量（角度振れ補正量）を算出する。
【００５４】
Ｓ６０３では、ＣＰＵ１５０は、テンプレートマッチング法により画面内にベクトル検出ブロックを配置し、１フレーム前との差分で画面内の動きベクトルを検出する。Ｓ６０４では、ＣＰＵ１５０は、ベクトルと角速度の度数分布を用いて、被写体と背景のベクトルに区別する。Ｓ６０５では、ＣＰＵ１５０は、検出されたベクトルに対して角速度換算した後、積分することで角度情報へ変換する。Ｓ６０６では、ＣＰＵ１５０は、検出されたベクトルのエラー判定を行う。全ベクトルに対して合焦範囲の割合と輝度値が閾値以上ある場合はＳ６０８へ、いずれかが閾値未満であればＳ６０７へ進む。
【００５５】
Ｓ６０７では、ＣＰＵ１５０は、ベクトルが正しく検出できているので、１倍程度の補正係数Ｋｖを設定する。Ｓ６０８では、ＣＰＵ１５０は、過補正を防止するために、１倍よりも小さい補正係数Ｋｖを設定する。
【００５６】
Ｓ６０９では、ＣＰＵ１５０は、画像における被写体の合焦範囲の割合が閾値未満であるかどうかを判定する。閾値以上であればＳ６１０へ進み、閾値未満であればＳ６１１へ進む。Ｓ６１０では、合焦範囲が狭いので、背景との平行振れ補正差が目立つ。そこで、ＣＰＵ１５０は、ゲイン調整部１５５の出力に角度換算したベクトルを加算して平行振れ補正量を演算する。Ｓ６１１では、ＣＰＵ１５０は、ベクトルを加味した平行振れ補正を角度振れ補正と加算して最終的な振れ補正量として像振れ補正レンズ１１１を駆動させる。一方、閾値以上であれば、被写体の合焦範囲が広いので、背景との平行振れ補正差が目立たない。そこで、ＣＰＵ１５０は、ベクトルフィードバックは行わず平行振れ補正量と角度振れ補正量と加算し最終的な振れ補正量として像振れ補正レンズ１１１を駆動させる。本実施形態によれば、被写体の合焦範囲が閾値未満の場合において、ベクトルを平行振れ補正量に加算することで平行振れ補正の精度が向上できる。
【００５７】
以上、本発明の実施形態について説明したが、本発明はその要旨の範囲内で種々の変形及び変更が可能である。本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【産業上の利用可能性】
【００５８】
本発明は、デジタル一眼レフやデジタルコンパクトカメラの像振れ補正装置に限らず、監視カメラ、Ｗｅｂカメラ、携帯電話などの撮影装置にも搭載できる。
【符号の説明】
【００５９】
１５１…ＨＰＦ積分フィルタ、１５２…敏感度調整部、１６１…平行振れ加算部（加算手段）、１６２…演算部（演算手段）、１６８…合成範囲検出部（合成範囲検出手段）、１８０…動きベクトル検出部（動きベクトル検出手段）
【図１】
0006659126.tif 000002
【図２】
0006659126.tif 000003
【図３】
0006659126.tif 000004
【図４】
0006659126.tif 000005
【図５】
0006659126.tif 000006
【図６】
0006659126.tif 000007