(57)【要約】【課題】電子式手振れ補正による画像の動きが不自然になるのを回避する。【解決手段】撮像素子１００からフレーム順に出力された画像データによりフレーム間の手振れベクトルを算出し、前記画像データから出力範囲を手振れベクトルに応じて決定する電子式手振れ補正において、フレーム間の手振れベクトルをフィルタ手段５７に通し得られた手振れベクトルに応じて前記出力範囲を決定する。好適には、フィルタ手段５７のフィルタ定数を、算出された手振れベクトルの信頼性に応じて適応的に更新する。このとき、例えばフィルタ手段５７がハイパスフィルタの場合にはフィルタ定数としてカットオフ周波数を用いる。【選択図】図２
2008172309.tif 000002
【特許請求の範囲】
【請求項１】
撮像素子からフレーム順に出力された画像データによりフレーム間の手振れベクトルを算出し、前記画像データから出力範囲を前記手振れベクトルに応じて決定する電子式手振れ補正方法において、前記フレーム間の手振れベクトルをフィルタ手段に通し得られた手振れベクトルに応じて前記出力範囲を決定することを特徴とする電子式手振れ補正方法。
【請求項２】
前記フィルタ手段のフィルタ定数を、前記算出された手振れベクトルの信頼性に応じて適応的に更新することを特徴とする請求項１に記載の電子式手振れ補正方法。
【請求項３】
前記フィルタ手段がハイパスフィルタであり、前記フィルタ定数がカットオフ周波数であることを特徴とする請求項２に記載の電子式手振れ補正方法。
【請求項４】
前記算出に用いた画像データの輝度差が大きいほど前記信頼性が高いと判断して前記カットオフ周波数を低く更新し、前記輝度差が小さいほど前記信頼性が低いと判断して前記カットオフ周波数を高く更新することを特徴とする請求項３に記載の電子式手振れ補正方法。
【請求項５】
前記算出をパターンマッチング処理で行うときに得られた基準画像と比較画像との不一致値の絶対値の最小値が大きいほど前記信頼性が低いと判断して前記カットオフ周波数を高く更新し、前記最小値が小さいほど前記信頼性が高いと判断して前記カットオフ周波数を低く更新することを特徴とする請求項３または請求項４に記載の電子式手振れ補正方法。
【請求項６】
前記算出されたフレーム間の手振れベクトルのうち今回フレームより所定フレーム数前からの手振れベクトルの信頼性の平均値を求め該平均値に応じて前記フィルタ定数を更新することを特徴とする請求項２乃至請求項５のいずれかに記載の電子式手振れ補正方法。
【請求項７】
撮像素子からフレーム順に出力された画像データによりフレーム間の手振れベクトルを算出し前記画像データから出力範囲を前記手振れベクトルに応じて決定する電子式手振れ補正装置において、前記出力範囲を決定する前記フレーム間の手振れベクトルをフィルタリングするフィルタ手段を設けたことを特徴とする電子式手振れ補正装置。
【請求項８】
前記フィルタ手段のフィルタ定数を前記算出された手振れベクトルの信頼性に応じて適応的に更新するフィルタ特性演算手段を設けたことを特徴とする請求項７に記載の電子式手振れ補正装置。
【請求項９】
前記フィルタ手段がハイパスフィルタであり、前記フィルタ定数がカットオフ周波数であることを特徴とする請求項８に記載の電子式手振れ補正装置。
【請求項１０】
前記フィルタ特性演算手段は、前記算出に用いた画像データの輝度差が大きいほど前記信頼性が高いと判断して前記カットオフ周波数を低く更新し、前記輝度差が小さいほど前記信頼性が低いと判断して前記カットオフ周波数を高く更新することを特徴とする請求項９に記載の電子式手振れ補正装置。
【請求項１１】
前記フィルタ特性演算手段は、前記算出をパターンマッチング処理で行うときに得られた基準画像と比較画像との不一致値の絶対値の最小値が大きいほど前記信頼性が低いと判断して前記カットオフ周波数を高く更新し、前記最小値が小さいほど前記信頼性が高いと判断して前記カットオフ周波数を低く更新することを特徴とする請求項９または請求項１０に記載の電子式手振れ補正装置。
【請求項１２】
前記フィルタ特性演算手段は、前記算出されたフレーム間の手振れベクトルのうち今回フレームより所定フレーム数前からの手振れベクトルの信頼性の平均値を求め該平均値に応じて前記フィルタ定数を更新することを特徴とする請求項８乃至請求項１１のいずれかに記載の電子式手振れ補正装置。
【請求項１３】
撮像素子からフレーム順に出力された画像データによりフレーム間の手振れベクトルを算出し、前記画像データから出力範囲を前記手振れベクトルに応じて決定する電子式手振れ補正プログラムにおいて、前記フレーム間の手振れベクトルをフィルタ手段に通し得られた手振れベクトルに応じて前記出力範囲を決定するステップを備えることを特徴とする電子式手振れ補正プログラム。
【請求項１４】
前記フィルタ手段のフィルタ定数を、前記算出された手振れベクトルの信頼性に応じて適応的に更新することを特徴とする請求項１３に記載の電子式手振れ補正プログラム。
【請求項１５】
前記フィルタ手段がハイパスフィルタであり、前記フィルタ定数がカットオフ周波数であることを特徴とする請求項１４に記載の電子式手振れ補正プログラム。
【請求項１６】
前記算出に用いた画像データの輝度差が大きいほど前記信頼性が高いと判断して前記カットオフ周波数を低く更新し、前記輝度差が小さいほど前記信頼性が低いと判断して前記カットオフ周波数を高く更新することを特徴とする請求項１５に記載の電子式手振れ補正プログラム。
【請求項１７】
前記算出をパターンマッチング処理で行うときに得られた基準画像と比較画像との不一致値の絶対値の最小値が大きいほど前記信頼性が低いと判断して前記カットオフ周波数を高く更新し、前記最小値が小さいほど前記信頼性が高いと判断して前記カットオフ周波数を低く更新することを特徴とする請求項１５または請求項１６に記載の電子式手振れ補正プログラム。
【請求項１８】
前記算出されたフレーム間の手振れベクトルのうち今回フレームより所定フレーム数前からの手振れベクトルの信頼性の平均値を求め該平均値に応じて前記フィルタ定数を更新することを特徴とする請求項１４乃至請求項１７のいずれかに記載の電子式手振れ補正プログラム。
【請求項１９】
撮像素子と、請求項７乃至請求項１２のいずれかに記載電子式手振れ補正装置とを備えることを特徴とする撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデジタルカメラ等で用いる電子式手振れ補正方法等に係り、特に、違和感や不自然さが抑制された手振れ補正を実現する電子式手振れ補正方法及びその装置並びに電子式手振れ補正プログラムと撮像装置に関する。
【背景技術】
【０００２】
例えば、動画撮影機能を有するデジタルスチルカメラやビデオカメラ等を手に持ち動画を撮影する場合、カメラを持つ手が振れると、あるフレームの画像中に映っている静止物画像の位置が次フレームの画面では移動してしまい、見づらい動画になってしまう。そこで、あるフレームの画像に対して次フレームの画像の手振れベクトルを検出し、画像が揺れない様に手振れ補正を行うことが行われている。
【０００３】
図１０は、手振れ補正を行うときに必要となる移動ベクトルを検出する原理を示す説明図である。図１０（ａ）に示すＮフレーム目の画像１と図１０（ｂ）に示すＮ＋１フレーム目の画像３を、この例では夫々４分割し、各分割画面♯１〜♯４毎に次の処理を行う。
【０００４】
先ず、図１０（ａ）に示すＮフレーム目の画像１中の所定アドレスで示されるブロック２内の画像を基準画像とすると、（Ｎ＋１）フレーム目の画像３中の同一所定アドレスで示されるブロック４によって切り出された画像が基準画像と同一であれば、画像１に対して画像３は振れていないことになる。
【０００５】
しかし、手振れが発生していれば、ブロック２内の基準画像とブロック４で切り出された画像は一致しない。そこで、画像３中のブロック４を、４ａ，４ｂ，４ｃ，…と、Ｘ方向（水平方向），Ｙ方向（垂直方向）に１画素づつずらしながら、各ブロック４ａ，４ｂ，４ｃ，…内の夫々の画像を基準画像と比較し、基準画像と最も相関性が高い比較画像を切り出したブロック位置を求める。
【０００６】
図１０（ｂ）に示す例で、ブロック２の基準画像に対し最も相関性の高い比較画像がブロック４ｃで切り出されたとすると、画像１に対する画像３の差はベクトル「ｋ１」となる。このベクトルｋ１が分割画面♯１における移動ベクトルである。
【０００７】
他の分割画面♯２〜♯４でも同様に移動ベクトルｋ２〜ｋ４を算出すると、例えばこれらの加算平均ベクトルｋ＝〔（ｋ１＋ｋ２＋ｋ３＋ｋ４）／４〕が、２画面間の手振れベクトルとなる。
【０００８】
撮像画像１を表示した次に、撮像画像３を手振れベクトルｋと逆方向に移動させて表示（実際には、表示する画像の範囲より広い範囲の画像を撮像素子が撮像できるように有効画素領域を広くしておき、表示する画像範囲すなわち出力範囲（切出範囲）を移動させる。）すれば、画像３中の静止物画像は画像１中の同一静止物画像と重なり、振れの無い画像表示が可能となる。
【０００９】
この原理で電子式手振れ補正を行う場合、図１１に示す様に、撮像素子５からフレーム順に出力される撮像画像データをメモリ６に順次格納し、メモリ６の格納画像データをフレーム順に出力して表示するとき、撮像素子５の出力画像データをフレーム順に手振れ補正装置７が取り込み、上述した手振れベクトルを順次演算する。そして、この手振れベクトルを、順次、メモリ６に出力することで、メモリ６の格納画像データが読み出されるとき各フレームの画像データの切出範囲（出力範囲）が手振れベクトルに応じて制御され、手振れ補正された動画が表示される。
【００１０】
尚、手振れベクトルの検出技術に関連する従来技術として、下記特許文献１等がある。
【００１１】
【特許文献１】特開昭６１―２０１５８１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
基準画像と比較画像とのパターンマッチングにより手振れベクトルを検出する方式は、処理対象とする画像の品質（精度やノイズ等）や絵柄（単純か複雑か等）に手振れベクトル検出精度が依存してしまう。このため、手振れ補正を最適な特性にチューニングしても、画像が変わると最適でなくなってしまい、手振れ補正が正確に実施されなくなってしまい、補正後の画像が不自然な動きをしてしまうという問題がある。
【００１３】
本発明の目的は、手振れ補正後の画像が不自然な動き違和感のある動きとなるのを防止することができる電子式手振れ補正方法及びその装置並びに電子式手振れ補正プログラムと撮像装置を提供することにある。
【課題を解決するための手段】
【００１４】
本発明の電子式手振れ補正方法及びその装置並びにプログラムは、撮像素子からフレーム順に出力された画像データによりフレーム間の手振れベクトルを算出し、前記画像データから出力範囲を前記手振れベクトルに応じて決定する電子式手振れ補正方法において、前記フレーム間の手振れベクトルをフィルタ手段に通し得られた手振れベクトルに応じて前記出力範囲を決定することを特徴とする。
【００１５】
本発明の電子式手振れ補正方法及びその装置並びにプログラムは、前記フィルタ手段のフィルタ定数を、前記算出された手振れベクトルの信頼性に応じて適応的に更新することを特徴とする。
【００１６】
本発明の電子式手振れ補正方法及びその装置並びにプログラムは、前記フィルタ手段がハイパスフィルタであり、前記フィルタ定数がカットオフ周波数であることを特徴とする。
【００１７】
本発明の電子式手振れ補正方法及びその装置並びにプログラムは、前記算出に用いた画像データの輝度差が大きいほど前記信頼性が高いと判断して前記カットオフ周波数を低く更新し、前記輝度差が小さいほど前記信頼性が低いと判断して前記カットオフ周波数を高く更新することを特徴とする。
【００１８】
本発明の電子式手振れ補正方法及びその装置並びにプログラムは、前記算出をパターンマッチング処理で行うときに得られた基準画像と比較画像との不一致値の絶対値の最小値が大きいほど前記信頼性が低いと判断して前記カットオフ周波数を高く更新し、前記最小値が小さいほど前記信頼性が高いと判断して前記カットオフ周波数を低く更新することを特徴とする。
【００１９】
本発明の電子式手振れ補正方法及びその装置並びにプログラムは、前記算出されたフレーム間の手振れベクトルのうち今回フレームより所定フレーム数前からの手振れベクトルの信頼性の平均値を求め該平均値に応じて前記フィルタ定数を更新することを特徴とする。
【００２０】
本発明の撮像装置は、撮像素子と、上記のいずれかに記載電子式手振れ補正装置とを備えることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、算出された手振れベクトルをフィルタ手段に通し、そのままの手振れベクトルを手振れ補正に使用しないため、信頼性の低い手振れベクトルによって手振れ補正が行われることがなくなり、画像の動きが不自然になることが回避される。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の一実施形態について、図面を参照して説明する。
【００２３】
図１は、本発明の一実施形態に係るデジタルカメラの構成図である。このデジタルカメラは、撮像部２１と、撮像部２１から出力されるアナログの画像データを自動利得調整（ＡＧＣ）や相関二重サンプリング処理等のアナログ処理するアナログ信号処理部２２と、アナログ信号処理部２２から出力されるアナログ画像データをデジタル画像データに変換するアナログデジタル変換部（Ａ／Ｄ）２３と、後述のシステム制御部（ＣＰＵ）２９からの指示によってＡ／Ｄ２３，アナログ信号処理部２２，撮像部２１の駆動制御を行う駆動制御部（タイミングジェネレータを含む）２４と、ＣＰＵ２９からの指示によって発光するフラッシュ２５とを備える。
【００２４】
撮像部２１は、被写界からの光を集光する光学レンズ系２１ａと、絞り２１ｂと、光学レンズ系２１ａによって集光され絞り２１ｂによって絞られた光を受光し撮像画像データ（アナログ画像データ）を出力する固体撮像素子１００とを備える。
【００２５】
固体撮像素子１００は、ＣＣＤ型でもＣＭＯＳ型でも、また、他の型の固体撮像素子でも良く、電子式手振れ補正処理を行うために、有効画素領域が画像表示範囲より広くなっている。
【００２６】
本実施形態のデジタルカメラは更に、Ａ／Ｄ２３から出力されるデジタル画像データを取り込み補間処理やホワイトバランス補正，ＲＧＢ／ＹＣ変換処理等を行うデジタル信号処理部２６と、画像データをＪＰＥＧ形式やＭＰＥＧ形式などの画像データに圧縮したり逆に伸長したりする圧縮／伸長処理部２７と、メニューなどを表示したりスルー画像や撮像画像を表示する表示部２８と、デジタルカメラ全体を統括制御するシステム制御部（ＣＰＵ）２９と、フレームメモリ等の内部メモリ３０と、ＪＰＥＧ画像データやＭＰＥＧ画像データ等を格納する記録メディア３２との間のインタフェース処理を行うメディアインタフェース（Ｉ／Ｆ）部３１と、これらを相互に接続するバス４０とを備え、また、システム制御部２９には、ユーザからの指示入力を行う操作部３３が接続されている。
【００２７】
図２は、図１に示したデジタルカメラで電子式手振れ補正処理を行う場合に構成される電子式手振れ補正処理装置５０の機能構成図である。この電子式手振れ補正処理装置５０は、ユーザが図１に示す操作部３３から電子式手振れ補正処理を行う旨の指示入力があったとき、システム制御部２９が電子式手振れ補正プログラムを起動することで、システム制御部２９が配下のデジタル信号処理部２６，内部メモリ３０等を用いて構成する。
【００２８】
この電子式手振れ補正処理装置５０は、固体撮像素子１００から出力される画像データを間引き処理して縮小画像を生成する間引き処理部５１と、ｎフレーム目（偶数フレーム目）の間引き縮小画像データを格納する第１メモリ５２と、ｎ＋１フレーム目（奇数フレーム目）の間引き縮小画像データを格納する第２メモリ５３と、各メモリ５２，５３から縮小画像データを読み出し、図１０で説明した各分割画面毎の移動ベクトルを算出する演算処理部５４と、演算処理部５４が算出した各分割画面毎の移動ベクトルから画面間の手振れベクトルを算出する手振れベクトル演算処理部５５とを備える。
【００２９】
本実施形態では、移動ベクトル算出処理の高速化を図るために間引き処理部５１で基準画像，比較画像の夫々の縮小画像を生成している。演算処理装置として高性能なものが使用できメモリ容量に余裕があれば、間引き処理せずに、元画像データを用いて移動ベクトルを算出することも可能である。
【００３０】
本実施形態の電子式手振れ補正処理装置５０は更に、フィルタ特性演算処理部５６と、手振れベクトル演算処理部５５と内部メモリ３０との間に設けられたハイパスフィルタ５７とを備える。
【００３１】
フィルタ特性演算処理部５６は、システム制御部２９から撮影情報（被写体が明るいか暗いか等）や撮影条件情報（シャッタ速度や露出等）を取り込むと共に、演算処理部５４からパターンマッチング処理で用いた縮小画像データの輝度情報等を取り込み、後述する様にしてフィルタ特性を決定し、ハイパスフィルタ５７に更新指示する。
【００３２】
ハイパスフィルタ５７は、指示されたフィルタ特性、この実施形態ではハイパスフィルタのカットオフ周波数が指示されたカットオフ特性となる様にハイパスフィルタを形成する。
【００３３】
斯かる電子式手振れ補正処理装置５０で、動画の手振れ補正を行うときの動作について説明する。固体撮像素子１００からは、偶数フレームの撮像画像データと奇数フレームの撮像画像データとが交互に出力され、各撮像画像データは、内部メモリ３０に格納される。
【００３４】
固体撮像素子１００から出力される撮像画像データは、内部メモリ３０への格納と並行して、間引き処理部５１を通って縮小画像データとなり、メモリ５２，５３に格納される。
【００３５】
今、ｎフレーム目の画像データに対してｎ＋１フレーム目の画像データの手振れベクトルを検出するとする。つまり、ｎフレーム目の画像データ（縮小画像データ）から基準画像を切り出し、ｎフレーム目の画像データ（縮小画像データ）から比較画像を切り出し、両者の相関性を求める。
【００３６】
この場合、本実施形態では、図１０で説明したと同様に１画面を４つの分割画面♯１〜♯４に分割し、各分割画面毎に演算処理部５５が移動ベクトルを算出し、演算処理部５６が４つの移動ベクトルの平均値から手振れベクトルを算出する。以下、♯１分割画面における移動ベクトルの算出方法を説明する。
【００３７】
図３（ａ）は、図１０（ａ）で説明したブロック２によって切り出された前回フレーム基準画像６１の３×３の画素番号を示す図であり、図３（ｂ）は、今回フレームの比較画像を切り出す♯１分割画面の５×５の画素番号を示す図である。前回フレーム基準画像６１は、図３（ｂ）と同様に５×５の画素の中央部分から切り出されている。
【００３８】
比較画像は、ブロック４ａ，４ｂ，…，４ｃ，…と縮小画像上を１画素づつずらしながら切り出される。各ブロックから切り出された比較画像と基準画像６１とが比較演算処理され、比較画像と基準画像の１画素１画素の画素値（この例では輝度値）の差の総和として、算出される。
【００３９】
基準画像と図３（ｂ）のブロック４ａによって切り出された比較画像との不一致値１１は、
不一致値１１＝(b11-a22)+(b12-a23)+(b13-a24)+(b21-a32)+…+(b33-a44)
となる。以下同様にして、
不一致値１２＝(b12-a22)+(b13-a23)+(b14-a24)+(b22-a32)+…+(b34-a44)
………
不一致値３３＝(b33-a22)+(b34-a23)+(b35-a24)+(b43-a32)+…+(b55-a44)
となる。
【００４０】
具体例で示す。図４（ａ）に基準画像の画素輝度値を示し、図４（ｂ）に比較画像を切り出す♯１分割画面における画素輝度値を示す。比較画像を切り出すブロックを１画素単位にＸ方向，Ｙ方向に移動させて上記の不一致値１１〜３３を求めると、図５（ａ）に示す様になり、不一致値の絶対値は図５（ｂ）となる。
【００４１】
９個の不一致値の絶対値のうち最小値は“２”である。不一致値の絶対値が最小となる比較画像が、基準画像との相関性が最も高く、基準画像が移動の結果としてその比較画像位置に移動したと判断できる。図示の例では、不一致値３１を算出した比較画像の切り出し位置は、図３（ｂ）のブロック４ｄであり、基準画像切り出し位置は♯１分割画面の中央であるため、その差が、図５（ｂ）に示す移動ベクトルｋ１となる。
【００４２】
以下同様にして、演算処理部５４は、♯２分割画面の移動ベクトルｋ２，♯３分割画面の移動ベクトルｋ３，♯４分割画面の移動ベクトルｋ４を算出して、これらの算出結果を演算処理部５５に渡す。演算処理部５５は、４つの移動ベクトルｋ１〜ｋ４の平均ベクトルｋ＝（ｋ１＋ｋ２＋ｋ３＋ｋ４）／４を算出し、これを手振れベクトルとして出力する。
【００４３】
従来は、内部メモリ３０のフレーム毎の撮像画像データを出力するときに、演算処理部５５が出力する手振れベクトルをそのまま使用してフレーム毎の画像データ切出範囲（出力範囲）を決めていた。
【００４４】
この手振れベクトルは、画像フレームが変わる毎に変化するベクトルとなるのが普通であり、撮影者がカメラを手に持って撮影する場合には、撮影者の体がゆったり揺れるブレベクトルに、カメラを持つ手が小刻みに揺れるブレベクトルが重畳したベクトルとなり、その変化の大きさや変化の周期（周波数）は様々な成分を含むことになる。
【００４５】
このため、検出した手振れベクトルをそのまま使用してフレーム毎の画像切り出し範囲を変化させると、例えば撮影中の被写体画像が劣悪な場合に信頼度の低い手振れベクトルを用いて手振れ補正を行うと、誤補正により画像がカクカクした動きになり、不自然な動きになってしまうことがある。
【００４６】
そこで、本実施形態では、この様な不自然な動きを抑制するため、フィルタ特性演算処理部５６は、演算処理部５４から、次の４つのパラメータの値（ａ）（ｂ）（ｃ）（ｄ）を取得する。
【００４７】
（ａ）分割画面毎の最小輝度値（図４（ｂ）の♯１の例では「１５」）
（ｂ）分割画面毎の最大輝度値（図４（ｂ）の♯１の例では「２３１」）
（ｃ）分割画面毎の不一致値の絶対値の最小値（図５（ｂ）の♯１の例では「２」）
（ｄ）分割画面毎の不一致値の絶対値の最大値（図５（ｂ）の♯１の例では「２２５」）
そして、演算処理部５６は、分割画面毎の上記（ａ）値から画面全体における最小輝度値（Ａ）を所定演算式により算出する。例えば、４つの（ａ）値の平均値を（Ａ）とする。
【００４８】
同様に、演算処理部５６は、分割画面毎の上記（ｂ）値から画面全体における最大輝度値（Ｂ）を算出し、分割画面毎の上記（ｃ）値から画面全体における絶対値の最小値（Ｃ）を算出し、分割画面毎の上記（ｄ）値から画面全体における絶対値の最大値（Ｄ）を算出する。
【００４９】
更に、演算処理部５６は、不一致値の論理最大値（Ｅ）を算出する。この論理最大値（Ｅ）は、分解能“２５６”で探索窓（切出ブロック）の総画素数が３×３＝９画素の場合には「２３０４」の固定値となる。
【００５０】
演算処理部５６は、上記の（Ａ）（Ｂ）（Ｃ）（Ｄ）（Ｅ）値に基づき、ハイパスフィルタ５７のフィルタ特性を決定し、このフィルタ特性をハイパスフィルタ５７に更新指示する。
【００５１】
ハイパスフィルタ５７は、図６に示す様に、カットオフ周波数ｆ(c)以上の周波数信号を通し、カットオフ周波数ｆ(c)以下の周波数信号をカットするフィルタである。今の場合、フィルタリングする対象は演算処理部５５から出力される手振れベクトルであり、小刻みな手振れは周波数が高いため内部メモリ３０に通過させ、ゆっくりした手振れは周波数が低いため内部メモリ３０への通過が遮断される。
【００５２】
本実施形態のフィルタ特性演算処理部５６は、上記（Ａ）（Ｂ）（Ｃ）（Ｄ）（Ｅ）値に基づき、カットオフ周波数ｆ(c)の値を後述するテーブルに基づき決定し、このカットオフ周波数ｆ(c)をハイパスフィルタ５７に指示する。これにより、図６に矢印Ｘで示すように、ハイパスフィルタ５７のカットオフ周波数ｆ(c)は低周波側に移動し、あるいは、図６に矢印Ｙで示すように、ハイパスフィルタ（ＨＰＦ）５７のカットオフ周波数ｆ(c)は高周波側に移動する。
【００５３】
図７は、カットオフ周波数の選択テーブルの第１例を示す図表である。本実施例及び下記の実施例では、信頼度“１”のときのカットオフ周波数ｆ(c)を“２”、信頼度“２”のときｆ(c)＝１、信頼度“３”のときｆ(c)＝０．５、信頼度“４”のときｆ(c)＝０．２５、信頼度“５”のときｆ(c)＝０．１２５としている。
【００５４】
ここで「信頼度」の数値“１”に対して数値“５”が信頼度が高いことを意味する。「信頼度」とは、算出された手振れベクトルの信頼度である。（Ｂ）−（Ａ）が“２５６”階調のとき信頼度が“５”である。これは、輝度の最大値と最小値の差（輝度レンジ）が大きい画像ほど、この画像からパターンマッチング処理で得られた手振れベクトルの信頼性が高く、輝度レンジの小さな画像ほど、パターンマッチング処理で得られた手振れベクトルの信頼性が低いことを意味している。
【００５５】
低輝度レンジの場合、得られる不一致値は小さくなる。この場合、最小となる不一致値を求める精度が低下するため、各分割画面毎の移動ベクトルの信頼性が低下し、この結果、手振れベクトルの信頼度も低くなる。
【００５６】
図示する例では、信頼度“１”の場合にはカットオフ周波数ｆ(c)を“２”として高い周波数成分の手振れを示す手振れベクトルだけを内部メモリ３０に送り、低い周波数成分の手振れを示す手振れベクトルはカットしている。これにより、残留手振れ量は多くなるが、不自然さが生じる確率は低減する。
【００５７】
信頼度“５”の場合にはカットオフ周波数ｆ(c)を“０．１２５”として低い周波数成分の手振れを示す手振れベクトルでも内部メモリ３０に送っている。これにより、残留手振れ量は小さくなる。信頼度が低い場合にカットオフ周波数を小さな値にして低い低周波成分の手振れベクトルでも手振れ補正を行うと、画像品質によって画像がカクカクした不自然な動きになる確率が高くなる。しかし、本実施形態の様に信頼度が低いときだけカットオフ周波数を低くすると、この不自然な動きの発生確率が低減する。
【００５８】
図８は、カットオフ周波数の選択テーブルの第２例を示す図表である。この例では、図７で説明した「明暗差」に加え、明暗差とは独立したパラメータである（Ｃ）／（Ｅ）を用いてカットオフ周波数を決定し、手振れベクトル信頼度の信頼性を高めている。図８には、図７で決定した信頼度も比較のために併記してある。
【００５９】
本実施例の場合には、不一致値の最小値（絶対値）が大きいほど信頼度が低く、これが小さいほど信頼度が高いという蓋然性も考慮し、例えば図７における信頼度“３”の場合でも、不一致値の最小値の大きさによって信頼度に差を設けている。
【００６０】
不一致最小値（絶対値）が小さなベクトルは１フレーム前の画像と現フレーム（今回フレーム）の画像との間の相関性が高いため、信頼性も高いと考えられるが、上記したように、低輝度レンジの場合には信頼性は低下する。そこで、両者を用い、相互補完することでフィルタ定数を決定する。即ち、輝度レンジが狭くても不一致値最小値が小さい場合には信頼度を高くし、輝度レンジが広くても不一致値最小値が大きい場合には信頼度を低くする。
【００６１】
図９は、カットオフ周波数の選択テーブルの第３例を示す図表である。図示する「信頼度」の数値は、図７または図８で算出された信頼度とする。そして、本実施例では、今回フレーム及び過去４フレームの計５フレームにおける「信頼度」の平均値を求め、この平均値の四捨五入値を今回フレームで実際に使用する信頼度とし、この信頼度に応じて、カットオフ周波数ｆ(c)を決定する。
【００６２】
本実施例の様に、平均処理を適用することで、信頼度の追従性は劣化するが、画像品質の信頼度が“５”→“１”という具合に大きく変化する場合における表示画像の違和感が軽減され、また、信頼度のハンチングによる表示画像の不自然さも緩和される。
【００６３】
この様に、上述した実施形態によれば、算出された手振れベクトルをそのまま使用して手振れ補正を行うのではなく、算出された手振れベクトルをフィルタ手段に通過させ、このフィルタ手段のフィルタ定数を手振れベクトルの信頼度に応じて適応的に更新させるため、手振れ補正した画像が不自然な動きをするのを抑制でき、違和感の無い動画表示が可能となる。
【００６４】
尚、上述した実施形態では、（Ｄ）値を用いて信頼度を決定する例を示していないが、（Ｄ）値を用いて信頼度を決定することも可能である。また、撮像された被写体の撮影情報や、シャッタ速度，露出などの撮影条件情報等も考慮して信頼度の算出を行うことも可能である。
【００６５】
また、上述した実施形態では、デジタルカメラ内部における動作として説明したが、デジタルカメラで撮像した画像データをメモリに全て保存しておき、これを外部のパーソナルコンピュータ等で処理することで手振れ補正を行う構成とすることも可能であることはいうまでもない。
【００６６】
更に、上述した実施形態では、１画面を４分割した例で説明したが、本発明は分割数を４つに限るものではなく、３×３＝９分割したり、４×４＝１６分割して手振れベクトルを算出しても、更にそれ以上に分割して手振れベクトルを算出することも可能である。
【００６７】
画面の分割数を多くすると１分割画面が小さくなり、その中に小動物等の移動物体が存在するとその移動物体の動きに移動ベクトルが依存してしまう蓋然性が高くなる。このため、他の分割画面で得られた移動ベクトルと比較して「異常値」を示す移動ベクトルが存在した場合にはこの異常な移動ベクトルを除外し、残りの移動ベクトルを加算平均することで、手振れベクトルを算出するのが好ましい。尚、手振れベクトルの算出は、移動ベクトルの加算平均に限るものではない。
【産業上の利用可能性】
【００６８】
本発明に係る電子式手振れ補正方法等は、不自然な動きとなる手振れ補正を回避できるため、デジタルカメラ等に適用すると有用である。
【図面の簡単な説明】
【００６９】
【図１】本発明の一実施形態に係るデジタルカメラのブロック構成図である。
【図２】図１に示すデジタルカメラに構成される手振れ補正装置の機能ブロック図である。
【図３】移動ベクトルをパターンマッチング処理で求める説明図である。
【図４】移動ベクトルをパターンマッチング処理で求める具体例を示す図である。
【図５】図４のパターンマッチング処理結果を示す図である。
【図６】図２に示すハイパスフィルタのフィルタ特性図である。
【図７】フィルタ定数の選択テーブルの第１実施例を示す図表である。
【図８】フィルタ定数の選択テーブルの第２実施例を示す図表である。
【図９】フィルタ定数の選択テーブルの第３実施例を示す図表である。
【図１０】手振れベクトルの検出原理説明図である。
【図１１】デジタルカメラで用いる手振れ補正の説明図である。
【符号の説明】
【００７０】
２１  撮像部
２６  デジタル信号処理部
２９  システム制御部
３０  内部メモリ
５０  電子式手振れ補正処理部
５４  分割画面毎の移動ベクトル演算処理部
５５  画面間の手振れベクトル演算処理部
５６  フィルタ特性演算処理部
５７  ハイパスフィルタ（フィルタ手段）
【図１】
2008172309.tif 000003
【図２】
2008172309.tif 000004
【図３】
2008172309.tif 000005
【図４】
2008172309.tif 000006
【図５】
2008172309.tif 000007
【図６】
2008172309.tif 000008
【図７】
2008172309.tif 000009
【図８】
2008172309.tif 000010
【図９】
2008172309.tif 000011
【図１０】
2008172309.tif 000012
【図１１】
2008172309.tif 000013