| 【発明の名称】 |
画像合成装置及び方法並びに撮像装置 |
| 【発明者】 |
【氏名】畑中 晴雄
【氏名】飯田 崇
|
| 【要約】 |
【課題】加算式手ぶれ補正において、合成画像(静止画像)の品質を向上させる。
【構成】通常の露光時間を分割して複数の分割露光画像(第1〜第4画像)を得る。動き検出回路は、画像マッチング法により異なる分割露光画像間で複数の累積相関値を算出し、複数の累積相関値の最小値を検索して前記異なる分割露光画像間の動きベクトルを算出する。また、最小値のレベルに基づいて、動きベクトルの正確さの指標となる信頼度B[i]を算出する。画像合成回路は、信頼度B[i]を画素混合比として利用する。画像合成回路は、前記動きベクトルを基づいて各分割露光画像の位置合わせを行い、各分割露光画像を画素混合比(B[i])に従って加算合成することにより、手ぶれの少ない1枚の静止画像を生成する。 |
【特許請求の範囲】
【請求項1】 順次撮影して得られた複数の分割露光画像から互いに異なる分割露光画像間の動きベクトルを算出する動きベクトル算出手段を備え、 前記動きベクトルに基づいて各分割露光画像を位置合わせして加算合成することにより1枚の合成画像を生成する画像合成装置において、 前記異なる分割露光画像間の画像の動きに応じた情報に基づいて、前記分割露光画像ごとに、その分割露光画像を前記合成画像に反映させる度合いを表す混合比を算出する混合比算出手段を備え、 各混合比に従って各分割露光画像を加算合成することにより前記合成画像を生成する ことを特徴とする画像合成装置。 【請求項2】 前記動きベクトル算出手段は、画像マッチング法に従って求めた、前記異なる分割露光画像間の複数の累積相関値に基づいて、前記動きベクトルを算出し、 前記混合比算出手段は、前記情報としての前記複数の累積相関値に基づいて前記混合比を算出する ことを特徴とする請求項1に記載の画像合成装置。 【請求項3】 前記動きベクトル算出手段は、前記異なる分割露光画像間において、前記画像マッチング法により各分割露光画像に設けられた検出領域についてのm個の累積相関値を算出し(mは2以上の整数)、 前記混合比算出手段は、 前記m個の累積相関値の内の、最小値又は該最小値を所定の規則に従って増加させた値以下の累積相関値、に基づく第1評価値、 前記m個の累積相関値の平均に応じた値、に基づく第2評価値、及び、 前記m個の累積相関値の内の、最小値の個数又は該最小値を所定の規則に従って増加させた値以下の累積相関値の個数、に基づく第3評価値、 の内の、何れか1つの評価値又は2以上の評価値に基づいて、各混合比を算出する ことを特徴とする請求項2に記載の画像合成装置。 【請求項4】 各分割露光画像に複数の検出領域を設け、 前記動きベクトル算出手段は、前記異なる分割露光画像間において、前記検出領域ごとに前記画像マッチング法によりm個の累積相関値を算出し(mは2以上の整数)、 当該画像合成装置は、更に、前記検出領域ごとに前記検出領域の有効又は無効を判断する判定手段を備え、 前記動きベクトル算出手段は、前記検出領域ごとに、前記m個の累積相関値に基づいて前記検出領域内の画像の動きを表すベクトルを領域動きベクトルとして求め、 有効と判断された前記検出領域に対応する各領域動きベクトルから前記動きベクトルを画像全体の動きベクトルとして算出し、 前記混合比算出手段は、 前記検出領域ごとに算出された前記m個の累積相関値の内の、最小値又は該最小値を所定の規則に従って増加させた値以下の累積相関値、に基づく第1評価値、 前記検出領域ごとに算出された前記m個の累積相関値の平均に応じた値、に基づく第2評価値、 前記検出領域ごとに算出された前記m個の累積相関値の内の、最小値の個数又は該最小値を所定の規則に従って増加させた値以下の累積相関値の個数、に基づく第3評価値、及び、 前記複数の検出領域の内、前記判定手段によって有効と判断された前記検出領域の個数、に基づく第4評価値、 の内の、何れか1つの評価値又は2以上の評価値に基づいて、各混合比を算出する ことを特徴とする請求項2に記載の画像合成装置。 【請求項5】 順次撮影して得られた複数の分割露光画像から互いに異なる分割露光画像間の動きベクトルを算出する動きベクトル算出手段を備え、 前記複数の分割露光画像の内の何れか1つを基準画像として定め、前記動きベクトルに基づき、前記基準画像を基準にして各分割露光画像を位置合わせして加算合成することにより1枚の合成画像を生成する画像合成装置において、 前記基準画像を可変設定可能な基準画像設定手段を備え、 前記基準画像設定手段は、前記異なる分割露光画像間の画像の動きに応じた情報に基づいて前記基準画像を設定する ことを特徴とする画像合成装置。 【請求項6】 前記動きベクトル算出手段は、画像マッチング法に従って求めた、前記異なる分割露光画像間の複数の累積相関値に基づいて、前記動きベクトルを算出し、 前記混合比算出手段は、前記情報としての前記複数の累積相関値に基づいて前記基準画像を設定する ことを特徴とする請求項5に記載の画像合成装置。 【請求項7】 前記動きベクトル算出手段は、前記異なる分割露光画像間において、前記画像マッチング法により各分割露光画像に設けられた検出領域についてのm個の累積相関値を算出し(mは2以上の整数)、 前記混合比算出手段は、 前記m個の累積相関値の内の、最小値又は該最小値を所定の規則に従って増加させた値以下の累積相関値、に基づく第1評価値、 前記m個の累積相関値の平均に応じた値、に基づく第2評価値、及び、 前記m個の累積相関値の内の、最小値の個数又は該最小値を所定の規則に従って増加させた値以下の累積相関値の個数、に基づく第3評価値、 の内の、何れか1つの評価値又は2以上の評価値に基づいて、前記基準画像を設定する ことを特徴とする請求項6に記載の画像合成装置。 【請求項8】 各分割露光画像に複数の検出領域を設け、 前記動きベクトル算出手段は、前記異なる分割露光画像間において、前記検出領域ごとに前記画像マッチング法によりm個の累積相関値を算出し(mは2以上の整数)、 当該画像合成装置は、更に、前記検出領域ごとに前記検出領域の有効又は無効を判断する判定手段を備え、 前記動きベクトル算出手段は、前記検出領域ごとに、前記m個の累積相関値に基づいて前記検出領域内の画像の動きを表すベクトルを領域動きベクトルとして求め、 有効と判断された前記検出領域に対応する各領域動きベクトルから前記動きベクトルを画像全体の動きベクトルとして算出し、 前記混合比算出手段は、 前記検出領域ごとに算出された前記m個の累積相関値の内の、最小値又は該最小値を所定の規則に従って増加させた値以下の累積相関値、に基づく第1評価値、 前記検出領域ごとに算出された前記m個の累積相関値の平均に応じた値、に基づく第2評価値、 前記検出領域ごとに算出された前記m個の累積相関値の内の、最小値の個数又は該最小値を所定の規則に従って増加させた値以下の累積相関値の個数、に基づく第3評価値、及び、 前記複数の検出領域の内、前記判定手段によって有効と判断された前記検出領域の個数、に基づく第4評価値、 の内の、何れか1つの評価値又は2以上の評価値に基づいて、前記基準画像を設定する ことを特徴とする請求項6に記載の画像合成装置。 【請求項9】 順次撮影を行って複数の分割露光画像を表す複数の画像データを出力する撮像手段と、 請求項1〜請求項8の何れかに記載の画像合成装置と、を備え、 前記画像合成装置は、前記複数の画像データに基づいて前記合成画像を生成する ことを特徴とする撮像装置。 【請求項10】 順次撮影して得られた複数の分割露光画像から互いに異なる分割露光画像間の動きベクトルを算出し、 前記動きベクトルに基づいて各分割露光画像を位置合わせして加算合成することにより1枚の合成画像を生成する画像合成方法において、 前記異なる分割露光画像間の画像の動きに応じた情報に基づいて、前記分割露光画像ごとに、その分割露光画像を前記合成画像に反映させる度合いを表す混合比を算出し、 各混合比に従って各分割露光画像を加算合成することにより前記合成画像を生成する ことを特徴とする画像合成方法。 【請求項11】 順次撮影して得られた複数の分割露光画像から互いに異なる分割露光画像間の動きベクトルを算出し、 前記複数の分割露光画像の内の何れか1つを基準画像として定め、前記動きベクトルに基づき、前記基準画像を基準にして各分割露光画像を位置合わせして加算合成することにより1枚の合成画像を生成する画像合成方法において、 前記異なる分割露光画像間の画像の動きに応じた情報に基づいて前記基準画像を可変設定する ことを特徴とする画像合成方法。
|
【発明の詳細な説明】【技術分野】 【0001】 本発明は、複数の画像を合成する画像合成装置及び画像合成方法に関し、特に、順次撮影して得られた複数の分割露光画像を位置合わせして加算合成することにより、手ぶれが低減された1枚の合成画像を生成する画像合成装置及び画像合成方法に関する。また、本発明は、そのような画像合成装置又は画像合成方法を採用した撮像装置に関する。 【背景技術】 【0002】 手ぶれ補正技術は、カメラ撮影における手ぶれを軽減する技術であり、近年において盛んに研究されている。手ぶれ補正技術は、補正対象が静止画像であるか動画像であるかに関わらず、手ぶれを検出する要素技術と、その検出結果に基づいて画像を補正する要素技術と、に分けて考えることができる。 【0003】 手ぶれを検出する方法には、センサ(角速度センサ)を用いる方法と、画像を解析して検出する電子式の方法とがある。画像の補正には、光学系の駆動により補正を行う光学式手ぶれ補正と、画像処理により補正を行う電子式手ぶれ補正とがある。 【0004】 静止画像(又は動画像)に対して手ぶれ補正を行う方法として、センサで手ぶれを検出しその検出結果に基づいて光学式手ぶれ補正を行う方法と、センサで手ぶれを検出しその検出結果に基づいて電子式手ぶれ補正を行う方法と、画像を解析して手ぶれを検出しその検出結果に基づいて電子式手ぶれ補正を行う方法と、がある。 【0005】 画像を解析して手ぶれを検出しその検出結果に基づいて電子式手ぶれ補正を行う方法として、加算式手ぶれ補正が実用化されている。加算式手ぶれ補正では、通常の露光時間T1を分割して得られる露光時間がT2の複数の分割露光画像(短時間露光画像)G1〜G4を、各分割露光画像間の動きがキャンセルされるように位置合わせした上で加算合成することにより、手ぶれの少ない1枚の静止画像を生成する(図24参照)。 【0006】 画像処理による画像間の動きを検出するための手法として、画像マッチング法、特徴点マッチング法、勾配法などがある。画像マッチング法は、2つの画像間で重ね合わせ位置をずらしながら、2つの画像の相違を調べてゆき、相違が最小となる位置(2つの画像間の相対的な位置ずれ)を探索する方法である。両画像間の相違を表す値として、両画像間の画素値の差の絶対値の総和(SAD(Sum of Absolute Difference))、又は、両画像間の画素値の差の2乗和(SSD(Sum of Squared Difference))を用いることが多い。 【0007】 画像マッチング法は、全画素マッチング法(ブロックマッチング法)と代表点マッチング法に分類される。全画素マッチング法は、対比する2つの画像間の重なり部の全画素の画素値を用いて、両画像間の相違を算出する手法である。一方、代表点マッチング法は、数〜数10画素おきに設定された代表点の画素値を用いて、両画像間の相違を算出する。代表点マッチング法は、ハードウェアによる実装が容易であり且つ実用的な検出精度を得ることができることから、デジタルビデオカメラ等の撮像装置において広く用いられている。 【0008】 従来の加算式手ぶれ補正では、複数の分割露光画像を、各分割露光画像の画像特徴に基づき、複数の分割露光画像の1つ(典型的には、1番目の分割露光画像)を基準画像として位置合わせした後、それらの画像を単純加算することにより1枚の静止画像を生成していた。図25に、複数の分割露光画像G1〜G4から合成画像としての静止画像が生成される様子の典型例を示す。尚、図25は、全ての分割露光画像内において殆ど画像のぶれが表れていない状況に対応している。 【0009】 通常、各分割露光画像の露光時間は手ぶれが無視できる程度に短く設定されるのであるが、複数の分割露光画像の中に、手ぶれに基づく大きな画像のぶれを有する分割露光画像が含まれる場合がある。また、複数の分割露光画像の中に、被写体の動きに基づく大きな画像のぶれを有する分割露光画像が含まれる場合もある。大きな画像のぶれを有する分割露光画像が存在する場合、各分割露光画像の位置合わせの精度が低くなって、合成画像としての静止画像に、図26に示すようなぶれが生じてしまう(図26では、分割露光画像G4のぶれが大きい)。 【0010】 また、複数の分割露光画像の内の、例えば1番目の分割露光画像を基準画像と定めて位置合わせが行われるが、固定的に定められた1番目の分割露光画像が基準画像として最適であるとは限らない。位置合わせは、基準画像の画像座標系に他の分割露光画像の画像座標を座標変換することによって行われるが、この座標変換は、通常、画素値の補間処理を伴うため、座標変換によって基準画像以外の分割露光画像に多少なりとも画質劣化が加わる。従って、そのような画質劣化がなるだけ抑制されるように基準画像を選ぶことが望ましい。 【0011】 尚、下記特許文献1〜4には、加算式手ぶれ補正に関する技術が開示されているが、何れも、単純な加算合成によって合成画像を生成している。 【0012】 【特許文献1】特開平9−261526号公報 【特許文献2】特開2006−74693号公報 【特許文献3】特開2004−221992号公報 【特許文献4】特開2000−217032号公報 【発明の開示】 【発明が解決しようとする課題】 【0013】 合成画像の画質向上にとっての問題点を例示したが、これらの問題は何れも、加算式手ぶれ補正に必要な画像合成処理が、各分割露光画像の画像特徴を考慮することなく画一的に行われていることに由来して生じる。 【0014】 そこで本発明は、複数の分割露光画像を合成して得られる合成画像の品質向上に寄与する画像合成装置及び画像合成方法を提供することを目的する。また本発明は、そのような画像合成装置を備えた撮像装置を提供することを目的とする。 【課題を解決するための手段】 【0015】 上記目的を達成するために本発明に係る第1の画像合成装置は、順次撮影して得られた複数の分割露光画像から互いに異なる分割露光画像間の動きベクトルを算出する動きベクトル算出手段を備え、前記動きベクトルに基づいて各分割露光画像を位置合わせして加算合成することにより1枚の合成画像を生成する画像合成装置において、前記異なる分割露光画像間の画像の動きに応じた情報に基づいて、前記分割露光画像ごとに、その分割露光画像を前記合成画像に反映させる度合いを表す混合比を算出する混合比算出手段を備え、各混合比に従って各分割露光画像を加算合成することにより前記合成画像を生成することを特徴とする。 【0016】 分割露光画像を単純に加算合成するのではなく、前記情報に基づいて各分割露光画像の混合比を算出し、各混合比に従って合成画像を生成する。これにより、例えば、前記情報から合成画像の画質向上にとって望ましくないと考えられる分割露光画像を特定し、その分割露光画像の混合比を低下させるといったことが可能となる。この結果、合成画像の品質向上が期待される。 【0017】 具体的には例えば、前記第1の画像合成装置において、前記動きベクトル算出手段は、画像マッチング法に従って求めた、前記異なる分割露光画像間の複数の累積相関値に基づいて、前記動きベクトルを算出し、前記混合比算出手段は、前記情報としての前記複数の累積相関値に基づいて前記混合比を算出する。 【0018】 前記複数の累積相関値には、例えば、分割露光画像内の画像のぶれ量などが反映される。従って、上述の如く構成することにより、例えば、画像のぶれ量が多いと推測されるような分割露光画像に対する混合比を低下させる、といったことも可能となる。 【0019】 更に具体的には例えば、前記第1の画像合成装置において、前記動きベクトル算出手段は、前記異なる分割露光画像間において、前記画像マッチング法により各分割露光画像に設けられた検出領域についてのm個の累積相関値を算出し(mは2以上の整数)、前記混合比算出手段は、前記m個の累積相関値の内の、最小値又は該最小値を所定の規則に従って増加させた値以下の累積相関値、に基づく第1評価値、前記m個の累積相関値の平均に応じた値、に基づく第2評価値、及び、前記m個の累積相関値の内の、最小値の個数又は該最小値を所定の規則に従って増加させた値以下の累積相関値の個数、に基づく第3評価値、の内の、何れか1つの評価値又は2以上の評価値に基づいて、各混合比を算出する。 【0020】 また具体的には例えば、前記第1の画像合成装置において、各分割露光画像に複数の検出領域を設け、前記動きベクトル算出手段は、前記異なる分割露光画像間において、前記検出領域ごとに前記画像マッチング法によりm個の累積相関値を算出し(mは2以上の整数)、当該画像合成装置は、更に、前記検出領域ごとに前記検出領域の有効又は無効を判断する判定手段を備え、前記動きベクトル算出手段は、前記検出領域ごとに、前記m個の累積相関値に基づいて前記検出領域内の画像の動きを表すベクトルを領域動きベクトルとして求め、有効と判断された前記検出領域に対応する各領域動きベクトルから前記動きベクトルを画像全体の動きベクトルとして算出し、前記混合比算出手段は、前記検出領域ごとに算出された前記m個の累積相関値の内の、最小値又は該最小値を所定の規則に従って増加させた値以下の累積相関値、に基づく第1評価値、前記検出領域ごとに算出された前記m個の累積相関値の平均に応じた値、に基づく第2評価値、前記検出領域ごとに算出された前記m個の累積相関値の内の、最小値の個数又は該最小値を所定の規則に従って増加させた値以下の累積相関値の個数、に基づく第3評価値、及び、前記複数の検出領域の内、前記判定手段によって有効と判断された前記検出領域の個数、に基づく第4評価値、の内の、何れか1つの評価値又は2以上の評価値に基づいて、各混合比を算出する。 【0021】 また、上記目的を達成するために本発明に係る第2の画像合成装置は、順次撮影して得られた複数の分割露光画像から互いに異なる分割露光画像間の動きベクトルを算出する動きベクトル算出手段を備え、前記複数の分割露光画像の内の何れか1つを基準画像として定め、前記動きベクトルに基づき、前記基準画像を基準にして各分割露光画像を位置合わせして加算合成することにより1枚の合成画像を生成する画像合成装置において、 前記基準画像を可変設定可能な基準画像設定手段を備え、前記基準画像設定手段は、前記異なる分割露光画像間の画像の動きに応じた情報に基づいて前記基準画像を設定することを特徴とする。 【0022】 位置合わせの基準画像を固定的に定めるのではなく、前記情報に基づいて基準画像を可変設定する。これにより、前記情報から合成画像の画質向上にとってより望ましいと考えられる分割露光画像を基準画像として設定する、といったことが可能となる。この結果、合成画像の品質向上が期待される。 【0023】 具体的には例えば、前記第2の画像合成装置において、前記動きベクトル算出手段は、画像マッチング法に従って求めた、前記異なる分割露光画像間の複数の累積相関値に基づいて、前記動きベクトルを算出し、前記混合比算出手段は、前記情報としての前記複数の累積相関値に基づいて前記基準画像を設定する。 【0024】 前記複数の累積相関値には、例えば、分割露光画像間の類似度などが反映される。従って、上述の如く構成することにより、例えば、他の分割露光画像との間の類似度がより高い分割露光画像を基準画像として設定する、といったことが可能となる。そのような分割露光画像を基準画像として位置合わせするようにすれば、位置合わせに伴う画質劣化が低減する方向に向かう。 【0025】 更に具体的には例えば、前記第2の画像合成装置において、前記動きベクトル算出手段は、前記異なる分割露光画像間において、前記画像マッチング法により各分割露光画像に設けられた検出領域についてのm個の累積相関値を算出し(mは2以上の整数)、前記混合比算出手段は、前記m個の累積相関値の内の、最小値又は該最小値を所定の規則に従って増加させた値以下の累積相関値、に基づく第1評価値、前記m個の累積相関値の平均に応じた値、に基づく第2評価値、及び、前記m個の累積相関値の内の、最小値の個数又は該最小値を所定の規則に従って増加させた値以下の累積相関値の個数、に基づく第3評価値、の内の、何れか1つの評価値又は2以上の評価値に基づいて、前記基準画像を設定する。 【0026】 また具体的には例えば、前記第2の画像合成装置において、各分割露光画像に複数の検出領域を設け、前記動きベクトル算出手段は、前記異なる分割露光画像間において、前記検出領域ごとに前記画像マッチング法によりm個の累積相関値を算出し(mは2以上の整数)、当該画像合成装置は、更に、前記検出領域ごとに前記検出領域の有効又は無効を判断する判定手段を備え、前記動きベクトル算出手段は、前記検出領域ごとに、前記m個の累積相関値に基づいて前記検出領域内の画像の動きを表すベクトルを領域動きベクトルとして求め、有効と判断された前記検出領域に対応する各領域動きベクトルから前記動きベクトルを画像全体の動きベクトルとして算出し、前記混合比算出手段は、前記検出領域ごとに算出された前記m個の累積相関値の内の、最小値又は該最小値を所定の規則に従って増加させた値以下の累積相関値、に基づく第1評価値、前記検出領域ごとに算出された前記m個の累積相関値の平均に応じた値、に基づく第2評価値、前記検出領域ごとに算出された前記m個の累積相関値の内の、最小値の個数又は該最小値を所定の規則に従って増加させた値以下の累積相関値の個数、に基づく第3評価値、及び、前記複数の検出領域の内、前記判定手段によって有効と判断された前記検出領域の個数、に基づく第4評価値、の内の、何れか1つの評価値又は2以上の評価値に基づいて、前記基準画像を設定する。 【0027】 また例えば、前記第1又は第2の画像合成装置において、前記異なる分割露光画像を第1分割露光画像及び第2分割露光画像とした場合、各累積相関値は、前記第1分割露光画像と前記第2分割露光画像との間の偏移に対する、両分割露光画像内に設けられた検出領域の画像の相関を表し、各累積相関値は、その相関が高くなるに従って小さくなる。 【0028】 そして、本発明に係る撮像装置は、順次撮影を行って複数の分割露光画像を表す複数の画像データを出力する撮像手段と、前記第1又は第2の画像合成装置と、を備え、前記画像合成装置は、前記複数の画像データに基づいて前記合成画像を生成することを特徴とする。 【0029】 また、本発明に係る第1の画像合成方法は、順次撮影して得られた複数の分割露光画像から互いに異なる分割露光画像間の動きベクトルを算出し、前記動きベクトルに基づいて各分割露光画像を位置合わせして加算合成することにより1枚の合成画像を生成する画像合成方法において、前記異なる分割露光画像間の画像の動きに応じた情報に基づいて、前記分割露光画像ごとに、その分割露光画像を前記合成画像に反映させる度合いを表す混合比を算出し、各混合比に従って各分割露光画像を加算合成することにより前記合成画像を生成することを特徴とする。 【0030】 また、本発明に係る第2の画像合成方法は、順次撮影して得られた複数の分割露光画像から互いに異なる分割露光画像間の動きベクトルを算出し、前記複数の分割露光画像の内の何れか1つを基準画像として定め、前記動きベクトルに基づき、前記基準画像を基準にして各分割露光画像を位置合わせして加算合成することにより1枚の合成画像を生成する画像合成方法において、前記異なる分割露光画像間の画像の動きに応じた情報に基づいて前記基準画像を可変設定することを特徴とする。 【発明の効果】 【0031】 本発明は、複数の分割露光画像を合成して得られる合成画像の品質向上に寄与する。 【発明を実施するための最良の形態】 【0032】 以下、図面を参照して、本発明の実施形態について説明する。参照される各図において、同一の部分には同一の符号を付し、同一の部分に関する重複する説明を原則として省略する。 【0033】 <<第1実施例>> 本発明を撮像装置に適用した実施例を第1実施例として説明する。図1は、本発明の第1実施例に係る撮像装置の全体的構成図である。図1の撮像装置は、デジタルスチルカメラ又はデジタルビデオカメラなどであり、少なくとも静止画像を撮影可能となっている。図1の撮像装置は、符号1〜12、21及び22、30が付された各部位を備えて構成される。符号30が付された手ぶれ補正回路は、輝度調節回路31、動き検出回路32、座標変換回路33、画像加算回路34及び画像メモリ35を備えている。座標変換回路33と画像加算回路34と画像メモリ35は画像合成回路36を形成している。以下、単に「撮像装置」といった場合、それは、図1に示す撮像装置を指すものとする。 【0034】 CCD(Charge Coupled Devices)或いはC−MOSイメージセンサ(Complementary Metal Oxide Semiconductor)等から成る撮像素子2は、レンズ1を通して入射した光学像を光電変換し、該光学像を電気信号として出力する。撮像素子2の出力信号は、例えばRGB信号によって表され、該出力信号はCDS(Correlated Double Sampling)回路とAGC(Auto Gain Control)回路とを備えたカメラ回路3に送られる。カメラ回路3において、撮像素子2の出力信号は、CDS回路で相関二重サンプリング処理された後、AGC回路で最適な振幅にゲイン調整される。カメラ回路3の出力信号は、A/D変換器4によってデジタル映像信号としての画像データに変換される。A/D変換器4からの画像データは、画像メモリ5に書き込まれる。撮影制御回路11は、被写体の明るさを測定する測光回路(不図示)から得られた明るさの情報に基づいて、撮像素子2の最適な露光時間を設定する。 【0035】 尚、画像メモリ5は、メモリ制御回路12を介してマイコン(マイクロコンピュータ)10によって制御される。また、撮影制御回路11は、マイコン10によって制御される。マイコン10には、シャッタボタン21及び手ぶれ補正ON/OFFスイッチ22に対する操作を特定する操作情報が送られる。撮像装置の撮影時の動作モードには、「通常撮影モード」と「手ぶれ補正撮影モード」とが含まれる。手ぶれ補正ON/OFFスイッチ22に対する操作に応じて、「通常撮影モード」と「手ぶれ補正撮影モード」の切替え設定が行われる。 【0036】 まず、通常撮影モードが設定されている場合における、撮像装置の動作について説明する。シャッタボタン21が押下げられていない場合には、一定間隔(例えば1/60秒)の撮影によって得られた画像データが、画像メモリ5に書き込まれた後、NTSC(National Television Standards Committee)エンコーダ6によりNTSC信号に変換されて、液晶ディスプレイ等から成るモニタ7に送られる。これにより、各画像データによって表される画像がモニタ7に表示される。このような、画像メモリ5に書き込まれた画像データをそのままNTSCエンコーダ6に送ることによる表示を、「スルー表示」という。 【0037】 シャッタボタン21が押下げられると、静止画像の撮影を開始し、そのタイミングの撮影によって得られた画像データが画像メモリ5に書き込まれる。その後、該画像データにて表される画像がモニタ7に表示されると共に、該画像データは画像圧縮回路8によってJPEG(Joint Photographic Experts Group)などの所定の圧縮データ形式にエンコードされ、画像ファイルとしてメモリカード9に保存される。 【0038】 次に、手ぶれ補正撮影モードが設定されている場合における、撮像装置の動作について説明する。以下の説明は、特に記述しない限り、手ぶれ補正撮影モードにおける動作の説明である。 【0039】 手ぶれ補正撮影モードが設定されている場合においては、画像メモリ5に書き込まれた画像データは、手ぶれ補正回路30に転送される。 【0040】 シャッタボタン21が押下げられていない場合には、一定間隔(例えば1/60秒)の撮影によって得られた画像データが、画像メモリ5に書き込まれた後、手ぶれ補正回路30に転送される。シャッタボタン21が押下げられていない場合において手ぶれ補正回路30に転送された画像データは、NTSCエンコーダ6を介してモニタ7に送られてスルー表示がなされると共に、輝度調節回路31に送られる。輝度調節回路31は、後述する分割露光画像を模擬するべく、入力された画像(画像データ)の輝度が分割露光画像の輝度と同程度となるように入力された画像データの輝度レベルを低下させ、輝度レベル低下後の画像データを動き検出回路32に出力する。 【0041】 動き検出回路32は、入力された、異なる画像間の動きベクトルの算出等を行う。シャッタボタン21が押下げられていない場合には、動き検出回路32は、前回に入力された画像データにて表される画像と今回に入力された画像データにて表される画像との間に関する、動きベクトルの算出等を行う。尚、シャッタボタン21が押下されていない時において順次算出される動きベクトルは、後に示す図10のステップS48の処理(パン・チルト状態判定処理)などに利用される。 【0042】 シャッタボタン21が押下げられた場合、マイコン10は、撮影制御装置11に対して、上記の最適な露光時間を複数個(例えば、4個や8個。特に例えば3以上)に分割して露光するように指示する。これにより、最適な露光時間をT1且つ露光分割数をNとした場合、T1/Nの露光時間で次々と連続的にN回撮影が行われる。以下、このT1/Nの露光時間の撮影によって得られた画像を「分割露光画像」といい、分割露光画像を表す画像データを「分割露光画像データ」という。 【0043】 分割露光によって得られた複数の分割露光画像データは、それぞれ画像メモリ5に記憶され、順次、手ぶれ補正回路30に転送される。具体的には、各分割露光画像データは、順次、手ぶれ補正回路30内の動き検出回路32および座標変換回路33に送られる。 【0044】 動き検出回路32では、分割露光によって得られた複数の分割露光画像の内の、最初に入力された1番目の分割露光画像と、それ以降に入力される各分割露光画像との間の動きベクトルが順次算出されるとともに、算出された動きベクトルが有効か無効かも順次判定される。詳細は後述するが、画像間の動きを表すベクトルとしてある程度信頼できると判断された動きベクトルは有効とされ、信頼できないと判断された動きベクトルは無効とされる。更に、本実施例の特徴的部分として、動き検出回路32では動きベクトルの信頼性も算出される(詳細は後述)。 【0045】 尚、ここで議論する動きベクトルは、画像の全体の動きベクトル(後述する「全体動きベクトル」)に対応している。また、動き検出回路32は、マイコン10によって制御され、動き検出回路32にて算出された各値は必要に応じてマイコン10に送られる。 【0046】 動きベクトル(全体動きベクトル)が有効と判定された場合、2番目以降に手ぶれ補正回路30に入力された各分割露光画像は、1番目の分割露光画像との間の動きベクトルに基づいて、1番目の分割露光画像とのずれがなくなるように、座標変換回路33で1番目の分割露光画像の座標に座標変換される(即ち、1番目の分割露光画像を基準として位置合わせされる)。そして、画像加算回路34において、座標変換された各分割露光画像の各画素値は、1番目の分割露光画像又はそれまでに合成された画像の各画素値に対して加算され、その加算結果が画像メモリ35に記憶される。つまり、分割露光画像間の位置ずれを補正した上で加算合成することにより得られる合成画像が画像メモリ35に格納される。この際、本実施例の特徴的部分として、上記動きベクトルの信頼度に基づく比率(画素混合比)にて各画素値の加算処理が行われる(詳細は後述)。 【0047】 各分割露光画像は、露光時間が通常露光の1/Nと短いため、手ぶれ量も通常露光の1/Nとなる。そして、分割露光画像間の位置ずれが補正された後に分割露光画像が加算合成されるので、合成画像の手ぶれ量は、通常露光の1/Nに低減される。この合成画像は、シャッタボタン21の押下に応じて撮影された静止画像を表しており、合成画像としての該静止画像は、NTSCエンコーダ6を介してモニタ7に表示されると共に画像圧縮回路8を介してメモリカード9に保存される。 【0048】 一方、動きベクトル(全体動きベクトル)が無効と判定された場合、2番目以降に手ぶれ補正回路30に入力された各分割露光画像に対して、座標変換回路33での位置ずれ補正は行われない。そして、位置ずれ補正が施されていない各分割露光画像は、画像加算回路34で1番目の分割露光画像またはそれまでに合成された画像に加算合成される。このように加算合成することで、信頼性のない動きベクトルで位置合わせしたことに由来する画像のぶれの増加を抑制することが可能となる。 【0049】 尚、或る画像に関し、画素値とは、その画像を形成する画素に対する映像信号の値(例えば、輝度信号の値、色差信号の値)を表す。 【0050】 [動き検出回路の説明] 次に、図1の動き検出回路32について詳細に説明する。図2は、動き検出回路32の内部ブロック図である。動き検出回路32は、代表点マッチング回路41と、領域動きベクトル算出回路42と、検出領域有効性判定回路43と、全体動きベクトル算出回路44と、を有して構成される。符号42〜44で表される部位の機能については後に示す図9及び図10のフローチャートの説明の中で行うとして、まず、代表点マッチング回路41について詳細に説明する。図3は、代表点マッチング回路41の内部ブロック図である。代表点マッチング回路41は、フィルタ51と、代表点メモリ52と、減算回路53と、累積加算回路54と、演算回路55と、を有して構成される。 【0051】 動き検出回路32は、周知の代表点マッチング法に基づいて、動きベクトル等を検出する。動き検出回路32には次々と画像(画像データ)が入力されるが、基準画像と現画像(今回入力された画像)との間の動きベクトル等を検出する場合を例にとって、代表点マッチング法について説明する。典型的には例えば、基準画像は、前回に(直前に)入力された画像である。 【0052】 図4に、動き検出回路32に与えられる画像データによって表される画像100を示す。画像100は、例えば上述の分割露光画像であり、上記の基準画像又は現画像を表す。画像100内に、複数の動きベクトル検出領域が設けられる。以下、動きベクトル検出領域を、単に、「検出領域」と略記する。説明の具体化のため、9つの検出領域E1〜E9が設けられている場合を考える。各検出領域E1〜E9の大きさは同じである。 【0053】 検出領域E1〜E9の夫々は、更に、複数の小領域(検出ブロック)eに分割されている。図4に示す例では、各検出領域が、48個の小領域eに分割されている(垂直方向に6分割され且つ水平方向に8分割されている)。各小領域eは、例えば、32×32の画素(垂直方向に32画素且つ水平方向に32画素の二次元配列された画素)で構成される。そして、図5に示すように、各小領域eに、複数のサンプリング点Sと1つの代表点Rが設定される。或る1つの小領域eに関し、複数のサンプリング点Sは、例えば当該小領域eを構成する画素の全てに対応する(但し、代表点Rを除く)。 【0054】 現画像における小領域e内の各サンプリング点Sの輝度値と、基準画像における対応する小領域e内の代表点Rの輝度値との差の絶対値(各サンプリング点Sにおける相関値)が、各検出領域E1〜E9ごとに、全ての小領域eに対して求められる。そして、各検出領域E1 〜E9 ごとに、検出領域内の全ての小領域e間において、代表点Rに対する偏移が同じサンプリング点S同士の相関値が累積加算される(本実施例では、48個の相関値が累積加算される)。換言すれば、各検出領域E1 〜E9 において、各小領域e内の同じ位置(小領域内座標における同じ位置)の画素について求めた輝度差の絶対値が48個の小領域e分、累積加算される。この累積加算によって得られる値を、「累積相関値」とよぶ。累積相関値は、一般に、マッチング誤差とも呼ばれる。各検出領域E1 〜E9 ごとに、1つの小領域e内のサンプリング点Sの個数と同じ個数の累積相関値が求められることになる。 【0055】 そして、各検出領域E1 〜E9 内において、代表点Rと累積相関値が最小となるサンプリング点Sとの偏移、すなわち相関性が最も高い偏移が検出される(一般的には、その偏移が当該検出領域の動きベクトルとして抽出される)。このように、或る検出領域に関し、代表点マッチング法に基づいて算出される累積相関値は、基準画像に対して現画像に所定の偏移(基準画像と現画像との相対的な位置のずれ)を加えた時の、基準画像内の検出領域の画像と現画像内の検出領域の画像との相関(類似性)を表し、その値は該相関が高くなるに従って小さくなる。 【0056】 図3を参照して、代表点マッチング回路41の動作をより具体的に説明する。フィルタ51には、図1の画像メモリ5から転送されてきた画像データが順次入力され、各画像データはフィルタ51を介して代表点メモリ52と減算回路53に与えられる。フィルタ51は、ローパスフィルタであり、S/N比を改善して少ない代表点で十分な動きベクトル検出精度を確保するために用いられる。代表点メモリ52は、各検出領域E1 〜E9 の小領域eごとに、代表点Rの画像上の位置を特定する位置データと代表点Rの輝度値を特定する輝度データとを記憶する。 【0057】 尚、代表点メモリ52の記憶内容の更新タイミングは任意である。代表点メモリ52に画像が入力される度に該記憶内容を更新することもできるし、基準画像を定めて該基準画像が入力されたときにのみ該記憶内容を更新するようにしてもよい。また、或る画素(代表点R又はサンプリング点S)に関し、輝度値は、その画素の輝度を表し、輝度値が増加するに従って該輝度は増加するものとする。また、輝度値は、8ビット(0〜255)のデジタル値として表現されるとする。勿論、輝度値を8ビットと異なるビット数で表現しても良い。 【0058】 減算回路53は、代表点メモリ52から与えられる基準画像の代表点Rの輝度値と現画像の各サンプリング点Sの輝度値との減算を行い、その減算結果の絶対値を出力する。減算回路53の出力値は、各サンプリング点Sにおける相関値を表し、該出力値は、順次、累積加算回路54に与えられる。累積加算回路54は、減算回路53から出力される相関値を累積加算することにより上述の累積相関値を算出及び出力する。 【0059】 演算回路55は、累積加算回路54から与えられる累積相関値を受け、図8に示すようなデータを算出及び出力する。基準画像と現画像との対比に関し、各検出領域E1 〜E9 ごとに、1つの小領域e内のサンプリング点Sの個数に応じた複数の累積相関値(以下、この複数の累積相関値を「演算対象累積相関値群」という)が演算回路55に与えられるが、演算回路55は、各検出領域E1 〜E9 ごとに、 「演算対象累積相関値群を形成する全ての累積相関値の平均値Vaveと、 演算対象累積相関値群を形成する全ての累積相関値の内の最小値(最小の累積相関値)と、 その最小値を示す画素の位置PAと、 位置PAの画素の近傍画素に対応する累積相関値(以下、近傍累積相関値と呼ぶことがある)」を算出する。 【0060】 各小領域eに着目し、以下のように画素位置等を定義する。各小領域eにおいて、代表点Rの画素位置を(0,0)にて表す。位置PAは、代表点Rの画素位置(0,0)を基準とした、上記最小値を与えるサンプリング点Sの画素位置であり、これを、(iA,jA)にて表す(図6参照)。位置PAの画素の近傍画素とは、位置PAの画素に隣接する画素を含む位置PAの画素の周辺画素であり、本実施例では、位置PAの画素を中心とする24個の近傍画素を想定する。図7に示す如く、位置PAの画素と該24個の近傍画素は5×5の行列配列された画素群を形成する。その画素群の各画素の画素位置を、(iA+p,jA+q)にて表す。該画素群の中心に、位置PAの画素が存在する。p及びqは整数であり、−2≦p≦2且つ−2≦q≦2、が成立する。pが−2から2に増加するにつれて画素位置は位置PAを中心として上から下へと向かい、qが−2から2に増加するにつれて画素位置は位置PAを中心として左から右へと向かう。そして、画素位置(iA+p,jA+q)に対応する累積相関値を、V(iA+p,jA+q)にて表すものとする。 【0061】 一般的には、最小の累積相関値の位置PAが真のマッチング位置に対応するものとして動きベクトルが算出されるが、本実施例では、最小の累積相関値は、真のマッチング位置に対応する累積相関値の候補として捉えられる。位置PAにて得られる最小の累積相関値をVAにて表し、それを「候補最小相関値VA」とよぶ。従って、V(iA,jA)=VAである。 【0062】 他の候補を特定すべく、演算回路55は、各検出領域E1 〜E9 ごとに、最小の累積相関値VAに近い累積相関値が演算対象累積相関値群に含まれているかを検索し、検索されたVAに近い累積相関値も候補最小相関値として特定する。「最小の累積相関値VAに近い累積相関値」とは、VAを所定の規則に従って増加させた値以下の累積相関値であり、例えば、VAに所定の候補閾値(例えば2)を加えた値以下の累積相関値、或いは、VAに1より大きい係数を乗じて得られる値以下の累積相関値である。候補最小相関値は、上記の候補最小相関値VAを含めて、例えば最大4つ特定される。 【0063】 以下、説明の便宜上、検出領域E1 〜E9 の夫々について、候補最小相関値VAの他に候補最小相関値VB、VC及びVDが特定された場合を考えるものとする。尚、最小の累積相関値VAに近い累積相関値を検索することによって他の候補最小相関値を特定すると述べたが、VB、VC及びVDの内の何れか又は全部は、VAと等しい場合もある。この場合、或る検出領域に関し、演算対象累積相関値群に最小の累積相関値が2以上含まれることになる。 【0064】 演算回路55は、候補最小相関値VAと同様、各検出領域E1 〜E9 ごとに、 「候補最小相関値VBを示す画素の位置PBと位置PBの画素の24個の近傍画素に対応する合計24個の累積相関値(以下、近傍累積相関値と呼ぶことがある)、 候補最小相関値VCを示す画素の位置PCと位置PCの画素の24個の近傍画素に対応する合計24個の累積相関値(以下、近傍累積相関値と呼ぶことがある)、及び 候補最小相関値VDを示す画素の位置PDと位置PDの画素の24個の近傍画素に対応する合計24個の累積相関値(以下、近傍累積相関値と呼ぶことがある)」を検出する(図8参照)。 【0065】 各小領域eに着目し、以下のように画素位置等を定義する。位置PB、PC及びPDは、それぞれ、位置PAと同様、代表点Rの画素位置(0,0)を基準とした、候補最小相関値VB、VC及びVDを与えるサンプリング点Sの画素位置であり、これを、(iB,jB)、(iC,jC)及び(iD,jD)にて表す。 位置PAと同様、位置PBの画素とそれの近傍画素は5×5の行列配列された画素群を形成し、その画素群の各画素の画素位置を(iB+p,jB+q)にて表す。 位置PAと同様、位置PCの画素とそれの近傍画素は5×5の行列配列された画素群を形成し、その画素群の各画素の画素位置を(iC+p,jC+q)にて表す。 位置PAと同様、位置PDの画素とそれの近傍画素は5×5の行列配列された画素群を形成し、その画素群の各画素の画素位置を(iD+p,jD+q)にて表す。 ここで、位置PAと同様、p及びqは整数であり、−2≦p≦2且つ−2≦q≦2、が成立する。pが−2から2に増加するにつれて画素位置は位置PB(又はPC又はPD)を中心として上から下へと向かい、qが−2から2に増加するにつれて画素位置は位置PB(又はPC又はPD)を中心として左から右へと向かう。そして、画素位置(iB+p,jB+q)、(iC+p,jC+q)及び(iD+p,jD+q)に対応する累積相関値を、夫々、V(iB+p,jB+q)、V(iC+p,jC+q)及びV(iD+p,jD+q)にて表す。 【0066】 演算回路55は、更に、各検出領域E1 〜E9 ごとに、候補最小相関値の個数Nfを算出及び出力する。今の例の場合、検出領域E1 〜E9 の夫々について、Nfは4である。以下、各検出領域E1 〜E9 ごとに、演算回路55にて算出され且つ出力される、 「候補最小相関値VA、位置PA及び近傍累積相関値V(iA+p,jA+q)」を特定するデータを総称して「第1の候補データ」と呼び、 「候補最小相関値VB、位置PB及び近傍累積相関値V(iB+p,jB+q)」を特定するデータを総称して「第2の候補データ」と呼び、 「候補最小相関値VC、位置PC及び近傍累積相関値V(iC+p,jC+q)」を特定するデータを総称して「第3の候補データ」と呼び、 「候補最小相関値VD、位置PD及び近傍累積相関値V(iD+p,jD+q)」を特定するデータを総称して「第4の候補データ」と呼ぶ。 【0067】 [動き検出回路の動作フロー] 次に、図9及び図10のフローチャートを参照して、動き検出回路32の処理手順を説明する。また、図13に、動き検出回路32内部の各データの流れをも表した、動き検出回路32の詳細内部ブロック図を示す。図13に示す如く、検出領域有効性判定回路43は、コントラスト判定部61と、複数動き有無判定部62と、類似模様有無判定部63を含み、全体動きベクトル算出回路44は、全体動きベクトル有効性判定部70と信頼度算出部74を含む。全体動きベクトル有効性判定部70は、更に、パン・チルト判定部71、領域動きベクトル類似性判定部72及び検出領域有効数算出部73を含む。 【0068】 概略的に動作を説明すると、動き検出回路32は、検出領域ごとに、候補最小相関値の中から真のマッチング位置に対応する相関値を採用最小相関値Pminとして特定し、代表点Rの位置から採用最小相関値Vminを示す位置(PA、PB、PC又はPD)に向かう偏移を当該検出領域の動きベクトル(検出領域の動きベクトルを、以下、「領域動きベクトル」という)とする。そして、各領域動きベクトルの平均を画像全体の動きベクトル(以下、「全体動きベクトル」という)として出力する。 【0069】 但し、平均化によって全体動きベクトルを算出する際、各検出領域の有効又は無効を評価し、無効な検出領域に対応する領域動きベクトルを無効として除外する。そして、有効な領域動きベクトルの平均ベクトルを(原則として)全体動きベクトルとして算出すると共に、算出した全体動きベクトルが有効であるか或いは無効であるかを評価する。図13に示す信頼度算出部74において全体動きベクトルの信頼度も算出されるが、信頼度の算出手法については図9及び図10に関する説明の後に詳説する。 【0070】 尚、図9に示されるステップS12〜S18の処理は、図2の代表点マッチング回路41にて実施される。ステップS24の処理は、図2の領域動きベクトル算出回路42によって実施される。ステップS21〜S23並びにS25及びS26の処理は、図2の検出領域有効性判定回路43によって実施される。図10に示されるステップS41〜S49の処理は、図2の全体動きベクトル算出回路44によって実施される。 【0071】 図9及び図10は、或る1つの基準画像と或る1つの非基準画像(例えば現画像)との間における処理手順を示している。動き検出回路32は、手ぶれ補正撮影モードにおいてシャッタボタン21が押下げられた際、1番目の分割露光画像を基準画像、2番目以降の各分割露光画像を非基準画像として、図9及び図10に示す各ステップの処理を実施する(但し、2番目以降の何れかの分割露光画像を基準画像とすることも可能である)。また、手ぶれ補正撮影モードでは、シャッタボタン21が押下されたか否かに関わらず、動き検出回路32に対して前回に入力された画像(画像データ)を基準画像とし且つ今回に入力された画像を非基準画像として、図9及び図10に示す各ステップの処理が実施される。 【0072】 まず、ステップS11において、9つある検出領域E1〜E9の何れか1つを特定するための変数kを1とする。k=1、2、・・・9の場合、それぞれ、検出領域E1、E2、・・・E9についての処理が行われる。 【0073】 ステップS11に続くステップS12において、検出領域Ekについての累積相関値が算出され、更に、ステップS13において、検出領域Ekについての累積相関値の平均値Vaveが算出される。そして、真のマッチング位置に対応する累積相関値の候補として候補最小相関値が特定される(ステップS14)。今、上述したように、候補最小相関値として4つの候補最小相関値VA、VB、VC又はVDが特定されたとする。続くステップS15では、ステップS14にて特定された各候補最小相関値に対応する「位置と近傍累積相関値」が検出される。更にステップS16で、ステップS14にて特定された候補最小相関値の個数Nfが算出される。ステップS11〜S16の処理により、図8に示す、検出領域Ekについての「平均値Vave、第1〜第4候補データ及び個数Nf」が算出される。 【0074】 ステップS16に続くステップS17では、検出領域Ekについての候補最小相関値の中から、真のマッチング位置に対応する相関値が採用最小相関値Vminとして選択される。 【0075】 このステップS17の処理を、図11及び図12を参照して詳細に説明する。図11(a)〜(e)では、ステップS17の処理にて参照される累積相関値の対応画素を斜線を用いて表している。図12は、ステップS17の処理を細分化したフローチャートである。ステップS17は、ステップS101〜S112から形成される。 【0076】 ステップS17に移行すると、まず、図12のステップS101において、第1〜第4の候補データの夫々について(即ち、候補最小相関値ごとに)、図11(a)のパターンに対応するような「候補最小相関値と4個の近傍累積相関値」の平均値(選択用評価値)を計算する。即ち、(p,q)=(0,−1)、(−1,0)、(0,1)、(1,0)、(0,0)である場合における、 「累積相関値V(iA+p,jA+q)の平均値VA_aveと、累積相関値V(iB+p,jB+q)の平均値VB_aveと、累積相関値V(iC+p,jC+q)の平均値VC_aveと、累積相関値V(iD+p,jD+q)の平均値VD_ave」を算出する。 【0077】 そして、ステップS102において、ステップS101で算出された平均値に基づいて採用最小相関値Vminを選択可能であるかを判定する。具体的には、ステップS101で算出された4つの平均値の内、最小の平均値と他の平均値との差が全て所定の差分閾値(例えば2)以下の場合は、選択不可(選択の信頼性がない)と判定してステップS103に移行し、そうでない場合はステップS112に移行して、ステップS101で算出された4つの平均値の内、最小の平均値に対応する候補最小相関値を採用最小相関値Vminとして選択する。例えば、VA_ave<VB_ave<VC_ave<VD_ave、が成立する場合、候補最小相関値VAが採用最小相関値Vminとして選択される。 【0078】 以後、採用最小相関値Vminを選択するに当たって参照される累積相関値の位置及び個数を変化させつつ、ステップS101及びS102と同様の処理が実施される。 【0079】 即ち、ステップS103では、第1〜第4の候補データの夫々について(即ち、候補最小相関値ごとに)、図11(b)のパターンに対応するような「候補最小相関値と8個の近傍累積相関値」の平均値を計算する。即ち、(p,q)=(−1,−1)、(−1,0)、(−1,1)、(0,−1)、(0,0)、(0,1)、(1,−1)、(1,0)、(1,1)である場合における、 「累積相関値V(iA+p,jA+q)の平均値VA_aveと、累積相関値V(iB+p,jB+q)の平均値VB_aveと、累積相関値V(iC+p,jC+q)の平均値VC_aveと、累積相関値V(iD+p,jD+q)の平均値VD_ave」を算出する。 【0080】 そして、ステップS104において、ステップS103で算出された平均値に基づいて採用最小相関値Vminを選択可能であるかを判定する。具体的には、ステップS103で算出された4つの平均値の内、最小の平均値と他の平均値との差が全て所定の差分閾値(例えば2)以下の場合は、選択不可(選択の信頼性がない)と判定してステップS105に移行し、そうでない場合はステップS112に移行して、ステップS103で算出された4つの平均値の内、最小の平均値に対応する候補最小相関値を採用最小相関値Vminとして選択する。 【0081】 ステップS105では、第1〜第4の候補データの夫々について(即ち、候補最小相関値ごとに)、図11(c)のパターンに対応するような「候補最小相関値と12個の近傍累積相関値」の平均値を計算する。即ち、(p,q)=(−1,−1)、(−1,0)、(−1,1)、(0,−1)、(0,0)、(0,1)、(1,−1)、(1,0)、(1,1)、(−2,0)、(2,0)、(0,2)、(0,−2)である場合における、 「累積相関値V(iA+p,jA+q)の平均値VA_aveと、累積相関値V(iB+p,jB+q)の平均値VB_aveと、累積相関値V(iC+p,jC+q)の平均値VC_aveと、累積相関値V(iD+p,jD+q)の平均値VD_ave」を算出する。 【0082】 そして、ステップS106において、ステップS105で算出された平均値に基づいて採用最小相関値Vminを選択可能であるかを判定する。具体的には、ステップS105で算出された4つの平均値の内、最小の平均値と他の平均値との差が全て所定の差分閾値(例えば2)以下の場合は、選択不可(選択の信頼性がない)と判定してステップS107に移行し、そうでない場合はステップS112に移行して、ステップS105で算出された4つの平均値の内、最小の平均値に対応する候補最小相関値を採用最小相関値Vminとして選択する。 【0083】 ステップS107では、第1〜第4の候補データの夫々について(即ち、候補最小相関値ごとに)、図11(d)のパターンに対応するような「候補最小相関値と20個の近傍累積相関値」の平均値を計算する。即ち、(p,q)=(−2,−1)、(−2,0)、(−2,1)、(−1,−2)、(−1,−1)、(−1,0)、(−1,1)、(−1,2)、(0,−2)、(0,−1)、(0,0)、(0,1)、(0,2)、(1,−2)、(1,−1)、(1,0)、(1,1)、(1,2)、(2,−1)、(2,0)、(2,1)である場合における、 「累積相関値V(iA+p,jA+q)の平均値VA_aveと、累積相関値V(iB+p,jB+q)の平均値VB_aveと、累積相関値V(iC+p,jC+q)の平均値VC_aveと、累積相関値V(iD+p,jD+q)の平均値VD_ave」を算出する。 【0084】 そして、ステップS108において、ステップS107で算出された平均値に基づいて採用最小相関値Vminを選択可能であるかを判定する。具体的には、ステップS107で算出された4つの平均値の内、最小の平均値と他の平均値との差が全て所定の差分閾値(例えば2)以下の場合は、選択不可(選択の信頼性がない)と判定してステップS109に移行し、そうでない場合はステップS112に移行して、ステップS107で算出された4つの平均値の内、最小の平均値に対応する候補最小相関値を採用最小相関値Vminとして選択する。 【0085】 ステップS109では、第1〜第4の候補データの夫々について(即ち、候補最小相関値ごとに)、図11(e)のパターンに対応するような「候補最小相関値と24個の近傍累積相関値」の平均値を計算する。即ち、(p,q)=(−2,−2)、(−2,−1)、(−2,0)、(−2,1)、(−2,2)、(−1,−2)、(−1,−1)、(−1,0)、(−1,1)、(−1,2)、(0,−2)、(0,−1)、(0,0)、(0,1)、(0,2)、(1,−2)、(1,−1)、(1,0)、(1,1)、(1,2)、(2,−2)、(2,−1)、(2,0)、(2,1)、(2,2)である場合における、 「累積相関値V(iA+p,jA+q)の平均値VA_aveと、累積相関値V(iB+p,jB+q)の平均値VB_aveと、累積相関値V(iC+p,jC+q)の平均値VC_aveと、累積相関値V(iD+p,jD+q)の平均値VD_ave」を算出する。 【0086】 そして、ステップS110において、ステップS109で算出された平均値に基づいて採用最小相関値Vminを選択可能であるかを判定する。具体的には、ステップS109で算出された4つの平均値の内、最小の平均値と他の平均値との差が全て所定の差分閾値(例えば2)以下の場合は、選択不可(選択の信頼性がない)と判定してステップS111に移行し、そうでない場合はステップS112に移行して、ステップS109で算出された4つの平均値の内、最小の平均値に対応する候補最小相関値を採用最小相関値Vminとして選択する。 【0087】 ステップS111に移行した場合は、最終的に、採用最小相関値Vminを選択不可と判断する。即ち、マッチング位置を検出不可と判断する。尚、候補最小相関値が複数ある場合の処理について説明したが、候補最小相関値が1つしかない場合は、その1つの候補最小相関値がそのまま採用最小相関値Vminとされる。 【0088】 ステップS17にて採用最小相関値Vminが選択されると、ステップS18にて採用最小相関値Vminを示す画素の位置Pminが特定される。例えば、採用最小相関値Vminとして候補最小相関値VAが選択された場合は、位置PAが位置Pminとなる。 【0089】 ステップS17及びS18で採用最小相関値Vmin及び位置Pminが特定されると、ステップS21に移行する。ステップS21〜S26では、検出領域Ekの有効又は無効が判定されると共に検出領域Ekの領域動きベクトルMkが算出される。各ステップの処理内容を詳細に説明する。 【0090】 ステップS21では、類似模様有無判定部63(図13参照)が、検出領域Ek内に類似した模様が存在していないかを判定する。類似模様が存在している場合は、当該検出領域Ekについて算出される領域動きベクトルの信頼性は低い(即ち、領域動きベクトルMkは検出領域Ek内の画像の動きを精度良く表していない)。従って、この場合は、検出領域Ekを無効とする(ステップS26)。ステップS21の判定は、ステップS17の処理結果に基づいて実施される。即ち、図12のステップS112に至って採用最小相関値Vminが選択された場合は、類似模様は存在していないと判断してステップS21からステップS22に移行する。一方、図12のステップS111に至って採用最小相関値Vminが選択されなかった場合は、類似模様が存在していると判断してステップS21からステップS26に移行し、検出領域Ekを無効とする。 【0091】 ステップS22では、コントラスト判定部61(図13参照)が、検出領域Ek内の画像のコントラストが低いか否かを判定する。コントラストが低い場合は、正確な領域動きベクトルの検出は困難であるため、検出領域Ekを無効とする。具体的には、累積相関値の平均値Vaveが所定の閾値TH1以下であるかを判断する。そして、不等式「Vave≦TH1」が成立する場合はコントラストが低いと判断してステップS26に移行し検出領域Ekを無効とする。この判断は、画像のコントラストが低い場合(例えば、画像全体が白い場合)には、輝度差が小さいので累積相関値が全体的に小さくなるという原理に基づいている。一方、不等式「Vave≦TH1」が成立しない場合は、コントラストは低くないと判断してステップS23に移行する。尚、閾値TH1は、実験を介して適切な値に設定される。 【0092】 ステップS23では、複数動き有無判定部62(図13参照)が、検出領域Ek内に複数の動きがあるか否かを判定する。検出領域Ek内に手ぶれとは関係のない動く物体等が存在する場合は、検出領域Ek内に複数の動きがあると判断されることになる。複数の動きがある場合は、正確な領域動きベクトルの検出は困難であるため、検出領域Ekを無効とする。具体的には、不等式「Vave/Vmin≦TH2」が成立するか否かを判断し、該不等式が成立する場合は複数の動きがあると判断してステップS26に移行し検出領域Ekを無効とする。この判断は、複数の動きがある場合には完全なマッチング位置がないため、累積相関値の最小値が大きくなるという原理に基づいている。また、平均値Vaveを除算することによって、この判断が被写体のコントラストに依存しないようにしている。一方、不等式「Vave/Vmin≦TH2」が成立しない場合は、複数の動きがないと判断してステップS24に移行する。尚、閾値TH2は、実験を介して適切な値に設定される。 【0093】 ステップS24では、図2(図13)に示す領域動きベクトル算出回路42が、真のマッチング位置を表す位置Pminに基づいて、領域動きベクトルMkを算出する。例えば、位置PAが位置Pminである場合は、画像上の位置PAを特定する位置情報(画素位置(iA,jA)を特定する情報)に基づいて領域動きベクトルMkを算出する。より具体的には、検出領域Ekの任意の小領域eにおいて、代表点Rの位置から採用最小相関値Vminを示す位置Pmin(PA、PB、PC又はPD)に向かう偏移の向き及び大きさを、領域動きベクトルMkの向き及び大きさとする。 【0094】 そして、ステップS24に続くステップS25では、検出領域Ekを有効とし、ステップS31に移行する。他方、ステップS21等から移行しうるステップS26では、上述の如く検出領域Ekを無効とし、ステップS31に移行する。ステップS31では、変数kに1が加算され、続いてステップS32で変数kが9より大きくなっているかが判断される。「k>9」が成立しない場合はステップS12に移行し、他の検出領域に関してステップS12等の処理が繰り返される。「k>9」が成立する場合は、検出領域E1〜E9の全てに関してステップS12等の処理が実施されたことになるため、図10のステップS41に移行する。 【0095】 図10のステップS41〜S49では、領域動きベクトルMk(1≦k≦9)に基づく全体動きベクトルMを算出処理及び全体動きベクトルMの有効性判定処理が行われる。 【0096】 ステップS41では、図9のステップS25及びS26の処理結果に基づき、有効とされた検出領域(以下、「有効領域」という)の数が0であるか否かを判定する。有領領域が1以上存在する場合にはステップS42に移行して、有効領域の領域動きベクトルMkを抽出し、更にステップS43にて、有効領域の領域動きベクトルMkを平均化することにより、それらの平均ベクトルMaveを算出する。 【0097】 ステップS43に続くステップS44では、領域動きベクトル類似性判定部72(図13参照)が、有効領域の領域動きベクトルMkの類似性を判定する。換言すれば、有効領域間での領域動きベクトルMkのばらつきAを評価することにより、有効領域間で動きの異なる物体が存在していないかを判定する。具体的には、下式(1)に基づいて、ばらつきAを算出する。 【0098】 【数1】
【0099】 そして、ばらつきAが閾値TH3以上であるか否かを判定する。ばらつきAが閾値TH3未満であればステップS45に移行し、画像全体の動きベクトル(全体動きベクトル)MをステップS43で算出された平均ベクトルMaveとしてステップS47に移行する。 【0100】 尚、式(1)において、[{|Mk−Mave|/(Maveのノルム)}の総和]は、有効領域ごとに算出された{|Mk−Mave|/(Maveのノルム)}を、全ての有効領域について合算した値に相当する。また、図13に示す検出領域有効数算出部73は、有効領域の数を算出する。 【0101】 ばらつきAが閾値TH3以上の場合は、有効領域の領域動きベクトルMkの類似性が低く、それに基づいて算出される全体動きベクトルの信頼性は低いと考えられる。このため、ばらつきAが閾値TH3以上の場合は(ステップS44のN)、ステップS46に移行し、全体動きベクトルMを0としてステップS47に移行する。また、ステップS41において有効領域の数が0であると判定された場合もステップS46にて全体動きベクトルMが0とされ、ステップS47に移行する。 【0102】 ステップS47では、全体動きベクトルの履歴データMnに今回得られた全体動きベクトルMを追加する。上述したように、図9及び図10に示す各処理は、シャッタボタン21が押下されたか否かに関わらず、手ぶれ補正撮影モードにおいて逐次行われており、ステップS45又はS46にて得られた全体動きベクトルMは、順次、全体動きベクトルの履歴データMnに格納されていく。尚、シャッタボタン21の1回の押下に対して、複数の分割露光画像と複数の全体動きベクトルMが得られるが、後述のパン・チルト判定処理の便宜上、履歴データMnに追加されるのは、その複数の全体動きベクトルMの内の1つだけとする(但し、その複数の動きベクトルMの全てを履歴データMnに追加することも可能である)。 【0103】 ステップS47に続くステップS48では、パン・チルト判定部73(図13参照)が、履歴データMnに基づいて撮像装置がパン・チルト状態にあるかを判定する。「パン・チルト状態」とは、撮像装置がパン又はチルトしている状態、を意味する。パン(パンニング)とは、撮像装置の筐体(不図示)を左右方向に振ることを意味し、チルト(チルティング)とは、撮像装置の筐体を上下方向に振ることを意味する。撮像装置がパン又はチルトしている状態にあるかを判定する手法としては、例えば、上記特許文献2に記載の手法又は本出願人が提案する特願2006−91285号に記載の手法を用いればよい。 【0104】 例えば、次の第1条件又は第2条件を満たした場合に、「手ぶれ状態」から「パン・チルト状態」へ遷移したと判断する(「手ぶれ状態」は、「パン・チルト状態」に含まれない)。 第1条件は、「全体動きベクトルMが垂直方向(上下方向)又は水平方向(左右方向)の同一方向に連続している回数が所定回数以上である」という条件である。 第2条件は、「上記同一方向に連続している全体動きベクトルMの大きさの積分値が撮像装置の画角の一定割合以上である」という条件である。 【0105】 そして例えば、次の第3条件又は第4条件を満たした場合に、「パン・チルト状態」から「手ぶれ状態」へ遷移したと判断する。 第3条件は、「全体動きベクトルの大きさが0.5画素以下である状態が連続して所定回数(例えば10回)以上継続した」という条件である 第4条件は、「「手ぶれ状態」から「パン・チルト状態」へ遷移したときの全体動きベクトルMに対して方向が反対の全体動きベクトルMが所定回数(例えば10回)以上連続して得られた」という条件である。 【0106】 第1〜第4条件の成立/不成立は、履歴データMnに含まれる今回得られた全体動きベクトルMと過去の全体動きベクトルMと、に基づいて判断される。「パン・チルト状態」にあるか否かの判定結果は、図1のマイコン10に伝達される。 【0107】 ステップS48の判定処理を終えると、ステップS49に移行する。ステップS49では、全体動きベクトル有効性判定部70(図13参照)が、ステップS41〜S48の処理結果に基づいて、今回得られた全体動きベクトルMが有効であるか否かを判定する。 【0108】 具体的には、「ステップS41で有効領域の数が0であると判定されてステップS46に至った場合」、或いは、「ステップS44で有効領域の領域動きベクトルMkの類似性が低いと判定されてステップS46に至った場合」、或いは、「ステップS48でパン・チルト状態にあると判定された場合」は、今回得られた全体動きベクトルMは無効とされ、そうでない場合は、今回得られた全体動きベクトルMは有効とされる。 【0109】 パン又はチルト操作時には、手ぶれ量が大きく対比する画像間の偏移が小領域eのサイズに応じた動き検出範囲を超えてしまうため、正確な動きベクトルを検出することができない。このため、パン・チルト状態にあると判定された場合には全体動きベクトルMを無効とする。 【0110】 上述のようにして求められた全体動きベクトルM及び該全体動きベクトルMが有効であるか或いは無効であるかを特定する情報は、図1の座標変換回路33に与えられる。 【0111】 手ぶれ補正撮影モードにおいてシャッタボタン21が押下げられた際においては、図9及び図10の処理を繰り返すことにより、各分割露光画像について全体動きベクトルMが検出されると共に各全体動きベクトルMの有効/無効が評価され、その有効/無効の評価に従って、上述の如く各分割露光画像が加算合成される。 【0112】 この際、上述したように、全体動きベクトルMの信頼度に基づく比率(画素混合比)にて各分割露光画像の加算合成が行われる。全体動きベクトルMの信頼度は、図13の信頼度算出部74によって算出される。 【0113】 [信頼度(画素混合比)の算出手法] 以下、この信頼度の算出手法にて詳細に説明する。今、説明の具体化のため、分割露光数Nが4であるものとする。従って、シャッタボタン21の押下に応じて、1番目、2番目、3番目、4番目の分割露光画像(以下、夫々を、「第1、第2、第3及び第4画像」と略記することがある)が得られるものとする。図14に、信頼度の算出に関与する各値を表として表す。 【0114】 上述したように、本実施例では、第1画像が基準画像として取り扱われることになる。iを2、3又は4とした場合、基準画像(第1画像)と第i画像との間における、 有効領域(最大9つ)についての各採用最小相関値Vminの平均値をVmin[i]とし、 有効領域(最大9つ)についての各平均値Vaveの平均値をVave[i]とし、 有効領域(最大9つ)についての各「候補最小相関値の個数Nf」の平均値をNf[i]とし、 有効領域数(有効領域の個数)をNval[i]とする。 【0115】 例えば、第1画像と第2画像との間に関し、図9のステップS25及びS26にて検出領域E2とE7のみが有効と判断された場合、 第2画像に関するVmin[2]は、検出領域E2についての採用最小相関値Vminと検出領域E7についての採用最小相関値Vminとの平均値であり、 第2画像に関するVave[2]は、検出領域E2についての累積相関値の平均値Vaveと検出領域E7についての累積相関値の平均値Vaveとの平均値であり、 第2画像に関するNf[2]は、検出領域E2についての候補最小相関値の個数Nfと検出領域E7についての候補最小相関値の個数Nfとの平均値であり、 第2画像に関するNval[2]は、有効と判断された検出領域E2とE7の個数、即ち、2である。 【0116】 第1画像は基準画像であるため、第2画像等のように、Vmin[i]等を定義することができない。そのため、第1画像に関する各値Vmin[1]、Vave[1]、Nf[1]及びNval[1]を、図14に示すように定義する。即ち、Vmin[2]とVmin[3]とVmin[4]の最小値をVmin[1]とし、Vave[2]とVave[3]とVave[4]の最大値をVave[1]とし、Nf[2]とNf[3]とNf[4]の最小値をNf[1]とし、Nval[2]とNval[3]とNval[4]の最大値をNval[1]とする。 【0117】 信頼度算出部74は、上述のように定義される各値を算出することによって、各画像の全体動きベクトルMの信頼度を算出する。第i画像の全体動きベクトルMの信頼度をB[i]にて表す。0≦B[i]≦1、が成立するように各信頼度は算出される。第1画像は基準画像であるため、第1画像に対する第1画像の全体動きベクトルMは存在しないが(無意味であるが)、上述の如く定義されたVmin[1]等を参照して、第1画像に関する信頼度B[1]も算出される(算出式は後述)。 【0118】 後述の説明から明らかとなるが、信頼度B[i]は、第1〜第4画像を合成して合成画像(1枚の静止画像)を生成する際における第i画像の画素混合比として利用され、信頼度B[i]が大きくなるほど、合成画像に対する第i画像の画素値の寄与率は大きくなる。従って、信頼度B[i]は、「第1〜第4画像を合成して合成画像を生成する際における第i画像の画素混合比(画像加算比率)」、或いは、「合成画像に対する第i画像の画素値の寄与率」と言い換えることもできる。 【0119】 信頼度B[i]は、 累積相関値の最小値又は該最小値に近い累積相関値に依存するVmin[i]、に基づく評価値BVmin[i]と、 累積相関値の平均値に依存するVave[i]、に基づく評価値BVave[i]と、 累積相関値の最小値の個数又は該最小値に近い累積相関値の個数に依存するNf[i]、に基づく評価値BNf[i]と、 有効領域数に依存するNval[i]、に基づく評価値BNval[i]と、に基づいて算出される。 【0120】 具体的には、各評価値に重み付け係数をかけて加算することにより、信頼度B[i]を算出する。つまり、下記式(2)に従って信頼度B[i]を算出する。式(2)及び後述する各式において、iは1〜4の間の各整数をとる。信頼度B[i]は、第1〜第4画像を合成して合成画像を生成する際における第i画像の画素混合比として利用されるため、各評価値が大きくなるにつれて、合成画像に対する第i画像の画素値の寄与率は増大する。 【0121】 【数2】
【0122】 ここで、WVmin、WVave、WNf、WNvalは、重み付け係数である。各重み付け係数は、実験を介して適切な値(0以上1以下の値)に設定される。各重み付け係数の合計は、下記式(3)に示す如く、1とされる。本実施例では、例えば、WVmin、WVave、WNf、WNvalを、夫々、0.4、0.2、0.1、0.3、とした。 【0123】 【数3】
【0124】 各評価値の算出法について説明する。第1に、評価値BVmin[i]の算出法について説明する。第i画像と基準画像の類似度が高いほど、第i画像について算出された全体動きベクトルMの信頼性は高い(動きベクトルを正確に検出できている可能性が高い)。一方において、基準画像に対して、第i画像の類似度が高いとVmin[i]は小さくなる。そこで、基準画像との類似度の指標となるVmin[i]から評価値BVmin[i]を算出する。具体的には、下記式(4)に従って評価値BVmin[i]を算出する。これにより、基準画像との類似度が高いことに起因してVmin[i]が小さい画像ほど大きな評価値BVmin[i]が算出され、その結果、合成画像に対する、その画像の画素混合比は大きくなる。 【0125】 【数4】
【0126】 第2に、評価値BVave[i]の算出法について説明する。画像のエッジ(又はコントラスト)が鮮明なほど、手ぶれ、被写体ぶれ、ピントのずれ等に由来する画像中のぼけが少なく、全体動きベクトルMを正確に検出できる可能性が高い。一方において、第i画像のエッジ強度が大きいとVave[i]は大きくなる。そこで、画像のエッジ強度の指標となるVave[i]から評価値BVave[i]を算出する。具体的には、下記式(5)に従って評価値BVave[i]を算出する。これにより、画像のエッジ強度が強いことに起因してVave[i]が大きい画像ほど大きな評価値BVave[i]が算出され、その結果、合成画像に対する、その画像の画素混合比は大きくなる。 【0127】 【数5】
【0128】 第3に、評価値BNf[i]の算出法について説明する。対比する画像間に存在する類似模様が少ないほど、全体動きベクトルMの信頼性は高い(動きベクトルを正確に検出できている可能性が高い)。一方において、類似模様が増加するとNf[i]は増加する傾向にある。そこで、類似模様の存在の指標となるNf[i]から評価値BNf[i]を算出する。具体的には、下記式(6)に従って評価値BNf[i]を算出する。これにより、類似模様が少ないことに起因してNf[i]が小さい画像ほど大きな評価値BNf[i]が算出され、その結果、合成画像に対する、その画像の画素混合比は大きくなる。 【0129】 【数6】
【0130】 第4に、評価値BNval[i]の算出法について説明する。有効領域(有効な検出領域)の数が多いほど、全体動きベクトルMを正確に検出できる可能性が高い。そこで、有効領域数を表すNval[i]から評価値BNval[i]を算出する。具体的には、下記式(7)に従って評価値BNval[i]を算出する。これにより、有効領域数が多いことに起因してNval[i]が大きい画像ほど大きな評価値BNval[i]が算出され、その結果、合成画像に対する、その画像の画素混合比は大きくなる。 【0131】 【数7】
【0132】 上記式(2)に従い、各評価値に基づいて算出された信頼度B[i]は、図1の画像加算回路34に与えられ、合成画像を合成する際における第i画像の画素混合比(画像加算比率)として利用される。 【0133】 [画像合成処理について] 次に、手ぶれ補正撮影モードにてシャッタボタン21を押下した場合における、図1の画像合成回路36の動作について説明する。 【0134】 座標変換回路33は、動き検回路32にて算出された各全体動きベクトルWに基づいて、各分割露光画像の位置合わせを行う。この際、図10のステップS49にて無効と判断された全体動きベクトルMはゼロとされる(大きさがゼロのベクトルとされる)。 【0135】 具体的には、座標変換回路33は、各全体動きベクトルWに基づいて、基準画像である第1画像における画像座標(x1,y1)から第i画像における画像座標(xi,yi)への座標変換式(8a)の、変換行列Hiを求める。変換行列Hiは、下記式(8b)にて表される。 【0136】 【数8】
【0137】 図15に、変換行列Hiを用いた座標変換の様子を示す。第1画像における画像座標(x1,y1)と第i画像における画像座標(xi,yi)との偏移は、第1画像に対する第i画像の全体動きベクトルMによって表される(i=2、3、4)。第1画像についての変換行列H1に関しては、当然、a1=e1=1且つb1=c1=d1=f1=0、である。 【0138】 図1の画像加算回路34は、第1〜第4画像を合成した合成画像を画像メモリ35上に作成するべく、画像メモリ35に、基準画像である第1画像と同じ画像座標系を設定する。画像メモリ35に設定された画像座標系における画像座標を(x、y)にて表す。図16を参照する。図16は、合成画像と第i画像の画素値の対応関係を示している。合成画像における画像座標(x、y)の画素値をP(x,y)にて表す。第i画像における画像座標(xi,yi)の画素値をPi(xi,yi)にて表す。 【0139】 画像加算回路34は、上記式(8a)及び(8b)を用いて、合成画像の画素ごとに、各分割露光画像(第1〜第4画像の夫々)における対応画素の画像座標を算出する。合成画像の或る画素に関し、その画素の画像座標を(x,y)(=(x1,y1))で表した場合、第i画像の対応画素の画像座標(xi,yi)は、上記式(8a)及び(8b)にて表される。続いて、画像加算回路34は、合成画像の画素(該画素の画像座標は(x,y))ごとに、第i画像の対応画素の画素値Pi(xi,yi)を取得する。この際、必要に応じて第i画像の画素値の補間処理を行う(勿論、第1画像に関して補間処理は不要である)。 【0140】 そして、画像加算回路34は、画素混合比として利用される信頼度B[i]に従って、第1〜第4画像の各画素の画素値Pi(xi,yi)を重み付け加算することにより、合成画像の各画素の画素値P(x,y)を算出する。画素値P(x,y)の算出式は、下記式(9)にて表される。 【0141】 【数9】
【0142】 上述のように、本実施例では、全体動きベクトルMの信頼度B[i]に従った画素混合比にて第1〜第4画像を合成する。本実施例のように加算式手ぶれ補正を実施する場合、通常、各分割露光画像の露光時間は手ぶれが無視できる程度に短く設定されるため、各分割露光画像の類似度は非常に高くなる。従って、図26に示したようなぶれの大きい分割露光画像(図26のおけるG4)は例外的に取得されるものと言え、その分割露光画像と他の分割露光画像との類似度は比較的低くなる傾向がある。 【0143】 この特性を鑑みて、他の分割露光画像との類似度或いは画像のぶれ量などを反映した上記各評価値に基づいて、各分割露光画像の画素混合比(信頼度B[i])を算出し、類似度が低い或いは画像のぶれ量が多い分割露光画像を合成画像に反映させる度合いを低下させる。これにより、N個の分割露光画像の中に、例外的に、手ぶれを主要因とするぶれの大きい画像や被写体の動きが大きい画像があっても、それに起因する合成画像の画質劣化(主として、画像のぶれ)が抑制され、ぶれの少ない(即ち、手ぶれ補正効果の高い)静止画像を取得することが可能となる。 【0144】 また、上述の如く、4つの評価値(BVmin[i]、BVave[i]、BNf[i]、BNval[i])は、全て、動き検出の正確性の指標となる。そして、画像合成回路36は、動き検出の正確性が高いと考えられるものほど画素混合比を増加させ、動き検出の正確性が低いと考えられるものほど画素混合比を低下させる。このため、動き検出の正確性が低いことに由来する合成画像の画質劣化が抑制され、ぶれの少ない(即ち、手ぶれ補正効果の高い)静止画像を取得することが可能となる。 【0145】 また、本実施例では、領域動きベクトルMKを算出するに当たり、最小の累積相関値と最小の累積相関値に近い累積相関値を、候補最小相関値として特定する。そして、2以上の候補最小相関値が特定された場合、近傍累積相関値を参照して、その2以上の候補最小相関値の中から採用最小相関値Vminを選択するようにしている。このような処理(以下、「近傍累積相関値参照処理」という)を用いることの意義について説明する。説明の簡略化上、最小の累積相関値に近い累積相関値を無視し、最小の累積相関値が複数ある場合を例にとる。 【0146】 代表点マッチング法を用いて画像間の動き検出を行う場合、累積相関値の最小値が複数のサンプリング点Sにて検出される場合があり、それの要因の1つとして、ノイズの影響が考えられる。ノイズの影響は、特に、輝度が比較的低い分割露光画像に対して大きくなる。累積相関値の最小値が複数検出された場合、従来は、通常、真のマッチング位置を検出不能と判断して動き検出を無効にしていた。 【0147】 第1画像と第2画像との間の或る検出領域に関して累積相関値の最小値が複数検出された場合の、累積相関値の分布を図17に示す。図17において、横軸は第1画像と第2画像との間の偏移(相対的な位置のずれ)を表し、縦軸は累積相関値を表す。説明及び図示の簡略化上、図17は、1次元に並んだ(例えば、水平方向に1次元配列された)画素にのみ着目している。今、候補最小相関値VAが真のマッチング位置に対応し、候補最小相関値VBはノイズに由来して候補最小相関値となったものとする。 【0148】 ノイズは、通常、極めて狭い画像領域にスパイク状に発生し、その輝度勾配は急峻である。従って、ノイズの影響による偽のマッチング位置に対応する累積相関値(VB)の近傍累積相関値は、その累積相関値(VB)を中心として急激に大きくなる。このため、候補最小相関値ごとに、候補最小相関値と近傍累積相関値の平均値を算出した場合、ノイズに対応する平均値は真のマッチング位置に対応する平均値よりも大きくなるという傾向がある。 【0149】 図9のステップS17等は、この特性を考慮して実施されるものであり、これにより、従来のように動き検出を無効とすることなく、真のマッチング位置を検出することが可能となる。従って、S/N比が低い画像でも高精度に画像間の動き検出が可能となり、暗い場面でも手ぶれ補正を有効に機能させることが可能となる。また、本実施例の如く加算式手ぶれ補正(加算式静止画手ぶれ補正)を行う場合にあっては、動き検出の精度が確保される露光分割数を増加させることができるようになるため、加算合成された静止画像における手ぶれ量を低減することが可能である。 【0150】 また、画像の平均輝度が十分に大きく且つノイズの影響も軽微である場合、通常、最小の累積相関値は1つのサンプリング点S(1つの画素)にて得られ、その場合は、近傍累積相関値を参照する必要はない。逆に、そのような場合に近傍累積相関値を過度に考慮すると、真のマッチング位置の検出の正確性が損なわれる(動き検出の精度が劣化する)惧れがある。このような事情を考慮し、本実施例では、図11及び図12を参照して説明したように、真のマッチング位置を定めきれない場合に参照する近傍累積相関値の個数を段階的に増加させるようにしている。これにより、近傍累積相関値を参照したことに由来する動き検出の精度の劣化が抑制される。 【0151】 上述の考察から理解されるように、図9のステップS17等による「近傍累積相関値参照処理」を行ったほうが望ましいのではあるが、本実施例及び後述する他の実施例において、この処理を省略することも可能である。この場合、候補最小相関値VA及びそれに対応する位置PAが、そのまま、採用最小相関値Vmin及びそれに対応する位置Pminとされる。 【0152】 「演算回路55は、各検出領域E1 〜E9 ごとに、最小の累積相関値VAに近い累積相関値(例えば、VAに所定の候補閾値(例えば2)を加えた値以下の累積相関値)が演算対象累積相関値群に含まれているかを検索し、検索されたVAに近い累積相関値も候補最小相関値として特定する」と述べたが、最小の累積相関値VAと同じ値を有する累積相関値のみを候補最小相関値とするようにしてもよい。 【0153】 <<第2実施例>> 上述の第1実施例では、4つの評価値(BVmin[i]、BVave[i]、BNf[i]、BNval[i])の全てを考慮して信頼度B[i]を算出するようにしているが、1、2又は3つの評価値のみを考慮して信頼度B[i]を算出するようにしてもよい。つまり、重み付け係数WVmin、WVave、WNf及びWNvalの内、何れか1つ、2つ又は3つをゼロとしても構わない(上記式(2)参照)。何れの重み付け係数をゼロとするか任意である。この場合、上記式(2)においてゼロの重み付け係数が掛け合わされる評価値の算出は省略可能である。 【0154】 累積相関値の最小値に対応する評価値BVmin[i]のみを用いて信頼度B[i]を算出する実施例を、第2実施例として説明する。評価値BVmin[i]のみを用いて信頼度B[i]を算出するという点を除いて、第2実施例は、第1実施例と同様である。 【0155】 図18に、第2実施例において算出される各値の具体例を表として示す。第2実施例でも、第1実施例と同様、分割露光によって4つの分割露光画像(第1〜第4画像)が生成される場合を取り扱う。 【0156】 信頼度B[i]を算出するために、信頼度算出部74(図13参照)は、まず、第1画像を基準画像としてVmin[i]を算出し(図14参照)、続いて、Vmin[i]の逆数を算出する。次に、iを1、2、3及び4の夫々とした場合におけるVmin[i]の逆数の総和を算出し、その総和を参照しつつ上記式(4)に従って評価値BVmin[i]を算出する。第2実施例では、WVmin=1、WVave=WNf=WNval=0、とされるため、B[i]=BVmin[i]、となる。尚、B[1]=B[2]=B[3]=B[4]、の場合、第1〜第4画像の合成処理は単純加算合成処理となる。 【0157】 <<第3実施例>> 第1及び第2実施例では、シャッタボタン21の押下に応じて得られる複数の分割露光画像の内、1番目に得られる分割露光画像(第1画像)を基準画像と取り扱って全体動きベクトルMの算出及び各分割露光画像の位置合わせを行った。しかしながら、その複数の分割露光画像の内、何れの分割露光画像を基準画像とするかは任意である。 【0158】 そして、何れの分割露光画像を基準画像とするかを、上述のVmin等に基づいて可変設定するようにしても構わない。基準画像の可変設定処理の手法を、第3実施例として説明する。第3実施例は、第1実施例の一部を変形した実施例であり、第1実施例にて記載した全ての事項は、矛盾なき限り、第3実施例にも適用される。説明の具体化のため、第3実施例でも、第1実施例と同様、分割露光によって4つの分割露光画像(第1〜第4画像)が生成される場合を取り扱う。 【0159】 まず、第1〜第4画像に関し、図19に示す如く全ての組み合わせの2つの画像間で、代表点マッチング法による累積相関値の算出を行う。即ち、第1と第2画像との間、第1と第3画像との間、第1と第4画像との間、第2と第3画像との間、第2と第4画像との間、第3と第4画像との間で、夫々、代表点マッチング法による累積相関値の算出を行う。そして、各組み合わせごとに、図9に示す各ステップの処理の一部又は全部を行うことにより、検出領域E1〜E9の夫々について採用最小相関値Vminを算出する。そして、各組み合わせごとに、有効領域(最大9つ)についての各採用最小相関値Vminの平均値(この平均値を、他の平均値と区別するべく、便宜上、平均値α1と表記する)を算出する。 【0160】 第1と第2画像との間において算出される平均値α1、第1と第3画像との間において算出される平均値α1、第1と第4画像との間において算出される平均値α1は、夫々、第1実施例で述べたVmin[2]、Vmin[3]、Vmin[4]と等しいが(図14)、本実施例では、それらを、図20に示す如く、夫々、Vmin12、Vmin13、Vmin14にて表す。図20は、画像と算出される値Vmin12等との対応関係を表す図である。同様に、第2と第3画像との間において算出される平均値α1、第2と第4画像との間において算出される平均値α1、第3と第4画像との間において算出される平均値α1を、夫々、Vmin23、Vmin24、Vmin34にて表す。 【0161】 そして、第i画像と他の画像との間で算出された値(V12等)の総和をSUMVmin[i]で表記する。即ち、下記式(10a)、(10b)、(10c)及び(10d)に従って、SUMVmin[1]〜SUMVmin[4]を算出する。この総和の算出手法から自明なように、この総和が小さい画像ほど、他の画像との類似度が高い。即ち、この総和が小さい画像を基準画像とすることにより、より正確な動き検出及びより画質劣化の少ない合成画像の生成が可能となる。 【0162】 【数10】
【0163】 図21に、上述の如く算出される各値の具体的数値例を表として示す。今、Vmin12=50、Vmin13=70、Vmin14=200、Vmin23=60、Vmin24=180且つVmin34=170、であるとする。そうすると、SUMmin[1]=320、SUMVmin[2]=290、SUMVmin[3]=300、SUMVmin[4]=550、となる。そして、SUMVmin[i]の逆数を算出し、iを1、2、3及び4の夫々とした場合におけるSUMVmin[i]の逆数の総和を算出し、その総和を参照しつつ下記式(11)に従って評価値BVmin[i]を算出する。下記式(11)は、上記式(4)におけるVmin[i]をSUMVmin[i]に置換した式となっている。 【0164】 【数11】
【0165】 今の数値例の場合、図21に示す如く、BVmin[1]≒0.267、BVmin[2]≒0.294、BVmin[3]≒0.284、BVmin[4]≒0.155、となる。当然ではあるが、SUMVmin[i]が最も小さい画像についての評価値BVmin[i]が最も大きくなる。 【0166】 第3実施例では、同様にして、他の評価値BVave[i]、BNf[i]及びBNval[i]も算出する。他の評価値BVave[i]、BNf[i]及びBNval[i]を算出する際も、第1〜第4画像に関し、図19に示す如く全ての組み合わせの2つの画像間で、代表点マッチング法による累積相関値の算出を行う。 【0167】 評価値BVave[i]を算出する際は、第1〜第4画像中の2つの画像の各組み合わせごとに、図9に示す各ステップの処理の一部又は全部を行うことにより検出領域E1〜E9の夫々について累積相関値の平均値Vaveを算出し、有効領域(最大9つ)についての各平均値Vaveの平均値(この平均値を、他の平均値と区別するべく、便宜上、平均値α2と表記する)を算出する。そして、 第1と第2画像との間において算出される平均値α2をVave12とし、 第1と第3画像との間において算出される平均値α2をVave13とし、 第1と第4画像との間において算出される平均値α2をVave14とし、 第2と第3画像との間において算出される平均値α2をVave23とし、 第2と第4画像との間において算出される平均値α2をVave24とし、 第3と第4画像との間において算出される平均値α2をVave34とし、且つ、SUMVave[1]〜SUMVave[4]を下記式に従って算出する。 SUMVave[1]=Vave12+Vave13+Vave14 SUMVave[2]=Vave12+Vave23+Vave24 SUMVave[3]=Vave13+Vave23+Vave34 SUMVave[4]=Vave14+Vave24+Vave34 最後に、下記式(12)に従って評価値BVave[i]を算出する。尚、Vave12、Vave13及びVave14は、夫々、第1実施例で述べたVave[2]、Vave[3]及びVave[4]と同じものである(図14参照)。 【0168】 【数12】
【0169】 評価値BNf[i]を算出する際は、第1〜第4画像中の2つの画像の各組み合わせごとに、図9に示す各ステップの処理の一部又は全部を行うことにより検出領域E1〜E9の夫々について候補最小相関値の個数Nfを算出し、有効領域(最大9つ)についての各個数Nfの平均値(この平均値を、他の平均値と区別するべく、便宜上、平均値α3と表記する)を算出する。そして、 第1と第2画像との間において算出される平均値α3をNf12とし、 第1と第3画像との間において算出される平均値α3をNf13とし、 第1と第4画像との間において算出される平均値α3をNf14とし、 第2と第3画像との間において算出される平均値α3をNf23とし、 第2と第4画像との間において算出される平均値α3をNf24とし、 第3と第4画像との間において算出される平均値α3をNf34とし、且つ、SUMNf[1]〜SUMNf[4]を下記式に従って算出する。 SUMNf[1]=Nf12+Nf13+Nf14 SUMNf[2]=Nf12+Nf23+Nf24 SUMNf[3]=Nf13+Nf23+Nf34 SUMNf[4]=Nf14+Nf24+Nf34 最後に、下記式(13)に従って評価値BNf[i]を算出する。尚、Nf12、Nf13及びNf14は、夫々、第1実施例で述べたNf[2]、Nf[3]及びNf[4]と同じものである(図14参照)。 【0170】 【数13】
【0171】 評価値BNval[i]を算出する際は、第1〜第4画像中の2つの画像の各組み合わせごとに、図9に示す各ステップの処理の一部又は全部を行うことにより有効領域数を算出する。そして、 第1と第2画像との間において算出される有効領域数をNval12とし、 第1と第3画像との間において算出される有効領域数をNval13とし、 第1と第4画像との間において算出される有効領域数をNval14とし、 第2と第3画像との間において算出される有効領域数をNval23とし、 第2と第4画像との間において算出される有効領域数をNval24とし、 第3と第4画像との間において算出される有効領域数をNval34とし、且つ、SUMNval[1]〜SUMNval[4]を下記式に従って算出する。 SUMNval[1]=Nval12+Nval13+Nval14 SUMNval[2]=Nval12+Nval23+Nval24 SUMNval[3]=Nval13+Nval23+Nval34 SUMNval[4]=Nval14+Nval24+Nval34 最後に、下記式(14)に従って評価値BNval[i]を算出する。尚、Nval12、Nval13及びNval14は、夫々、第1実施例で述べたNval[2]、Nval[3]及びNval[4]と同じものである(図14参照)。 【0172】 【数14】
【0173】 信頼度算出部74は、式(11)〜式(14)に基づく4つの評価値(BVmin[i]、BVave[i]、BNf[i]、BNval[i])を用いて、信頼度B[i]を、第1実施例と同様、上記式(2)に従って算出する。更に、信頼度B[1]〜B[4]の内、最大の信頼度に対応する分割露光画像を基準画像として設定する。画像合成回路36は、設定した基準画像に対して他の分割露光画像の位置合わせを行って各分割露光画像を加算合成することにより、静止画像としての合成画像を生成する。この位置合わせは、最大の信頼度に対応する分割露光画像を基準画像とし且つ他の分割露光画像を非基準画像として算出した全体動きベクトルMに従って、行われる。 【0174】 第3実施例でも、第2実施例で述べたように、重み付け係数WVmin、WVave、WNf及びWNvalの内、何れか1つ、2つ又は3つをゼロとしても構わない(上記式(2)参照)。何れの重み付け係数をゼロとするか任意である。この場合、上記式(2)においてゼロの重み付け係数が掛け合わされる評価値の算出は省略可能である。 【0175】 WVmin=1、且つ、WVave=WNf=WNval=0、とする場合、B[i]=BVmin[i]、となる。この場合、図21に示す数値例では、評価値BVmin[1]〜BVmin[4]の内、BVmin[2]が最大であるので、第2画像を基準画像として取り扱った上で位置合わせ及び加算合成が行われる。 【0176】 上記式(11)に従って算出される評価値BVmin[i]が大きいほど、対応する分割露光画像(第i画像)と他の分割露光画像との類似度は高いと考えられる。従って、大きな評価値BVmin[i]に対応する分割露光画像を基準にすると、他の分割露光画像との間の全体動きベクトルMが正確に検出される可能性が高くなり、合成画像に含まれる画像のぶれは少なくなる。 【0177】 また、上記式(12)に従って算出される評価値BVave[i]が大きいほど、対応する分割露光画像(第i画像)に含まれる、手ぶれ、被写体ぶれ、ピントのずれ等に由来する画像のぼけは少ないと考えられる。従って、大きな評価値BVave[i]に対応する分割露光画像を基準にすると、他の分割露光画像との間の全体動きベクトルMが正確に検出される可能性が高くなり、合成画像に含まれる画像のぶれは少なくなる。 【0178】 また、上記式(13)に従って算出される評価値BNf[i]が大きいほど、対応する分割露光画像(第i画像)に含まれる類似模様は少ないと考えられる。従って、大きな評価値BNf[i]に対応する分割露光画像を基準にすると、他の分割露光画像との間の全体動きベクトルMが正確に検出される可能性が高くなり、合成画像に含まれる画像のぶれは少なくなる。 【0179】 また、上記式(14)に従って算出される評価値BNval[i]が大きいほど、対応する分割露光画像(第i画像)について、より数多くの検出領域が有効とされる。従って、大きな評価値BNval[i]に対応する分割露光画像を基準にすると、他の分割露光画像との間の全体動きベクトルMが正確に検出される可能性が高くなり、合成画像に含まれる画像のぶれは少なくなる。 【0180】 また、位置合わせ(座標変換)によって、基準画像以外の分割露光画像に画素値の補間処理などに由来する画質劣化が加わるが、信頼度(他の分割露光画像との類似度)が高い分割露光画像を基準画像として選んで位置合わせ(座標変換)及び加算合成をすることにより、座標変換に伴う画質劣化が極力抑えられる。 【0181】 例えば、図22に示す如く、第2〜第4画像が略同じ画像であり、第2画像に対して線形移動と回転処理を行ったような画像が第1画像であった場合、第1画像を基準画像として位置合わせ及び加算合成を行うと、第2〜第4画像に対して比較的大きな画質劣化が加わる。他方、このような場合において、第2画像を基準画像として位置合わせ及び加算合成を行うと、第3及び第4画像に対して殆ど画質劣化が加わらず、結果として、より高い画質の合成画像が生成される。 【0182】 このため、このような場合、第2画像(又は第3又は第4画像)を基準画像と設定することが望ましいが、本実施例の如く信頼度B[i]を求めれば、他の画像との類似度が高い第2画像(又は第3又は第4画像)に対する信頼度B[i]が大きくなって、第2画像(又は第3又は第4画像)が基準画像として設定されるようになる。 【0183】 位置合わせ(座標変換)に伴う画質劣化の抑制効果は、位置合わせの基準画像を信頼度に基づいて選択するという処理のみによっても得られるので、第3実施例においては、第1画像〜第4画像から合成画像を生成する際の画素混合比は、各分割露光画像に対して同じであってもよい。つまり、位置合わせした第1画像〜第4画像を単純に同一の比率で加算合成することによって合成画像(静止画像)を生成するようにしてもよい。勿論、第1実施例と同様、信頼度B[i]を画素混合比としても利用し、上記式(9)に従って合成画像の各画素の画素値P(x,y)を算出するようにしてもよく、その方が望ましいことは第1実施例の説明からも理解される。 【0184】 尚、上記式(11)〜(14)を用いて算出した評価値に基づいて位置合わせの基準画像(及び全体動きベクトルMを検出する際の基準画像)を決定する手法を上述したが、上記式(11)〜(14)を用いることなく、SUMVmin[i]が最も小さくなる変数i、SUMVave[i]が最も大きくなる変数i、SUMNf[i]が最も小さくなる変数i、又は、SUMNval[i]が最も大きくなる変数iを特定し、その特定された変数i(例えばi=2)に対応する分割露光画像(例えば第2画像)を基準画像として設定するようにしてもよい。そして、その基準画像(例えば第2画像)を基準として、図9及び図10の各ステップの処理を含む第1実施例の同様の処理を行って、全体動きベクトルMの算出、位置合わせ及び合成画像の生成を行うようにしてもよい。 【0185】 <<変形等>> 上述した説明文中に示した具体的な数値は、単なる例示であって、当然の如く、それらを様々な数値に変更することができる。 【0186】 上述の撮像装置は本発明の実施例に過ぎず、本発明は、様々な変形例(又は他の実施例)を含む。以下に、本発明に含まれる変形例(又は他の実施例)として、変形例1〜変形例9を例示する。各変形例に記載した内容は、矛盾なき限り、任意に組み合わせることが可能である。 【0187】 [変形例1] 評価値BVave[i]の算出の基となる記号「Vave」で参照される値は、検出領域E1〜E9ごとに算出された複数の累積相関値(演算対象累積相関値群)の平均値であると上述したが、Vaveを、その複数の累積相関値の合算値(即ち、累積相関値の個数と平均値の積)であると考えても構わない。つまり、評価値BVave[i]は、検出領域E1〜E9ごとに算出された複数の累積相関値の平均値に応じた値に基づいて算出される。 【0188】 [変形例2] 画像マッチング法の1つである代表点マッチング法を用いる実施例を上述したが、本発明を、画像マッチング法に分類される他の手法を用いて実現することも可能である。例えば、代表点マッチング法の代わりに全画素マッチング法(ブロックマッチング法)を用いることも可能である。 【0189】 全画素マッチング法を用いる場合、対比する2つの分割露光画像間において、検出領域(E1〜E9)ごとに、検出領域内の画像の重なり部の位置をずらしていくことで、位置ずれ(偏移)に応じた累積相関値(マッチング誤差とも呼ばれる)が複数算出される。この場合における累積相関値も、各実施例で述べたものと同様の特性を有している。そして、その複数の累積相関値に基づいて、動きベクトルの算出処理を含む上述の各実施例と同様の処理を行うことが可能である。 【0190】 [変形例3] 真のマッチング位置を定めきれない場合、参照する近傍累積相関値のパターンを、図11(a)から同図(b)、(c)、(d)、(e)に示すパターンへと順次変更していく実施例を上述したが、何れかのパターンを用いた処理を省略するようにしても構わない。 【0191】 例えば、図11(a)→(c)→(e)でもよい。即ち、図12のステップS102にて選択不可と判定した場合は(ステップS102のN)、ステップS103及びS104の処理を省略して直接ステップS105に移行し、且つ、図12のステップS106にて選択不可と判定した場合は(ステップS106のN)、ステップS107及びS108の処理を省略して直接ステップS109に移行するようにしてもよい。同様に例えば、図11(b)→(e)でもよい。 【0192】 [変形例4] 真のマッチング位置を定めきれない場合に参照する近傍累積相関値の個数を段階的に増加させるようにする実施例を上述したが(図11及び図12参照)、そのような場合における個数の増加は必須ではない。 【0193】 例えば、ステップS101で算出された4つの平均値の内、最小の平均値と他の平均値との差が全て所定の差分閾値(例えば2)以下の場合、ステップS102からステップS103に移行する前に以下の第1ステップ及び第2ステップの処理を行うようにしてもよい。 【0194】 第1ステップでは、第1〜第4の候補データの夫々について(即ち、候補最小相関値ごとに)、図23のパターンに対応するような「候補最小相関値と4個の近傍累積相関値」の平均値(選択用評価値)を計算する。即ち、(p,q)=(−1,−1)、(−1,1)、(1,−1)、(1,1)、(0,0)である場合における、 「累積相関値V(iA+p,jA+q)の平均値VA_aveと、累積相関値V(iB+p,jB+q)の平均値VB_aveと、累積相関値V(iC+p,jC+q)の平均値VC_aveと、累積相関値V(iD+p,jD+q)の平均値VD_ave」を算出する。 【0195】 そして、第2ステップにおいて、第1ステップで算出された4つの平均値を比較し、その4つの平均値の内、最小の平均値と他の平均値との差が全て所定の差分閾値(例えば2)以下の場合はステップS103に移行し、そうでない場合はステップS112に移行して、第1ステップで算出された4つの平均値の内、最小の平均値に対応する候補最小相関値を採用最小相関値Vminとして選択するようにする。 【0196】 図11(a)に対応する4つの近傍累積相関値を参照して真のマッチング位置を定めきれなかったとしても、図23に対応する4つの近傍累積相関値を参照すれば、真のマッチング位置を検出することができる場合がある。これを考慮して、上述の如く処理する。 【0197】 [変形例5] 候補最小相関値(VA等)を示す位置(PA等)を中心とした、最大(5×5)画素の領域内の近傍累積相関値を参照する例を示したが(図11及び図12参照)、これは単なる一例であり、これを様々に変形することが可能である。例えば、採用最小相関値Vminを選択するために、候補最小相関値(VA等)を示す位置(PA等)を中心とした、最大(7×7)画素の領域内の近傍累積相関値を参照するようにしてもよい。 【0198】 [変形例6] また、第1〜第4の候補データの夫々について(即ち、候補最小相関値ごとに)、「候補最小相関値と近傍累積相関値」の平均値を選択用評価値として算出し、算出された各選択用評価値の比較を介して採用最小相関値Vminを選択する例を図12を示して上述したが、選択用評価値として算出される平均値を、総和(合算値)又は加重平均値に変更しても良い。 【0199】 即ち、例えば、図12のステップS101において、(p,q)=(0,−1)、(−1,0)、(0,1)、(1,0)、(0,0)である場合における、合計5個の累積相関値V(iA+p,jA+q)の総和を選択用評価値として算出しても構わない。 【0200】 また、選択用評価値を加重平均値とする場合、例えば、図12のステップS101において、 VA_ave=k1・V(iA,jA−1)+k2・V(iA−1,jA)+ k3・V(iA,jA+1)+k4・V(iA+1,jA)+ k0・V(iA,jA) 、を算出すればよい。ここで、k0〜k4は、加重平均値を算出するための係数であり、例えば、k1=k2=k3=k4<k0、が成立する。 【0201】 [変形例7] また、第1〜第4の候補データの夫々について、「候補最小相関値と近傍累積相関値」の平均値(又は総和又は加重平均値)を選択用評価値として算出し、算出された各選択用評価値の比較を介して採用最小相関値Vminを選択する例を示したが、各選択用評価値を、候補最小相関値を除外して算出するようにしても構わない。 【0202】 即ち、例えば、図12のステップS103において、(p,q)=(−1,−1)、(−1,0)、(−1,1)、(0,−1)、(0,1)、(1,−1)、(1,0)、(1,1)である場合における、合計8個の累積相関値V(iA+p,jA+q)の平均値(又は総和又は加重平均値)をVA_aveとするようにしても構わない。 【0203】 [変形例8] 各画像(各分割露光画像など)に検出領域(E1〜E9)が9つある場合を例示したが、各画像に設けられる検出領域の個数は任意である。各画像に設ける検出領域の個数は、1つであってもよい。 【0204】 [変形例9] また、図1の撮像装置は、ハードウェア、或いは、ハードウェアとソフトウェアの組み合わせによって実現可能である。特に、図1の手ぶれ補正回路30の機能、それに含まれる動き検出回路32、座標変換回路33、画像加算回路34の各機能は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組み合わせによって実現可能である。 【0205】 ソフトウェアを用いて手ぶれ補正回路30の機能を実現する場合、図1、図2、図3及び図13の全部又は一部は、手ぶれ補正回路30(手ぶれ補正回路30の全部又は一部)の機能ブロック図を表すことになる。また、手ぶれ補正回路30にて実現される機能の全部または一部を、プログラムとして記述し、該プログラムをコンピュータ上で実行することによって、その機能の全部または一部を実現するようにしてもよい。 【0206】 <<注記>> 尚、図1において、動き検出回路32は動きベクトル算出手段として機能する。また、動き検出回路32(特に、図13の信頼度算出部74)は混合比算出手段として機能する。また、第3実施例において、信頼度に基づき基準画像を可変設定する基準画像設定手段としての機能は、動き検出回路32(特に、図13の信頼度算出部74)又は画像加算回路34によって実現される。動きベクトル算出手段と混合比算出手段又は基準画像設定手段とを含む画像合成装置は、図1の手ぶれ補正回路30によって実現される。 【図面の簡単な説明】 【0207】 【図1】本発明の実施例に係る撮像装置の全体的構成図である。 【図2】図1の動き検出回路の内部ブロック図である。 【図3】図2の代表点マッチング回路の内部ブロック図である。 【図4】図3の代表点マッチング回路にて定義される、各動きベクトル検出領域と各小領域を示す図である。 【図5】図4に示す各領域における、代表点とサンプリング点を示す図である。 【図6】図4に示す各領域における、代表点と最小の累積相関値に対応するサンプリング点の画素位置を表す図である。 【図7】最小の累積相関値に対応する画素とその近傍画素の各画素位置を表す図である。 【図8】図3の演算回路の出力データを表としてまとめた図である。 【図9】図1の動き検出回路の動作手順を表すフローチャートである。 【図10】図1の動き検出回路の動作手順を表すフローチャートである。 【図11】図9のステップS17における採用最小相関値の選択処理に参照される累積相関値のパターンを表す図である。 【図12】図9のステップS17における採用最小相関値の選択処理を詳細に表したフローチャートである。 【図13】図1の動き検出回路の詳細内部ブロック図である。 【図14】図13の信頼度算出部における信頼度の算出に関与する各値を、表として表した図である。 【図15】図1の座標変換回路における座標変換処理の様子を表す図である。 【図16】図1の画像加算回路における加算合成処理の様子を表す図である。 【図17】図9のステップS17等の処理の意義を説明するための図である。 【図18】本発明の第2実施例に係る具体的数値例を示す図である。 【図19】本発明の第3実施例に係り、各画像間でマッチング処理が行われる様子を示す図である。 【図20】本発明の第3実施例にて算出される各値を表として表した図である。 【図21】本発明の第3実施例にて算出される各値の具体的数値例を表として表した図である。 【図22】加算合成される複数の分割露光画像を例示する図である。 【図23】図11(a)等に示すパターンの変形例を示す図である。 【図24】加算式手ぶれ補正の原理を表す図である。 【図25】加算式手ぶれ補正における、複数の分割露光画像と合成画像との関係を表す図である。 【図26】加算式手ぶれ補正における、複数の分割露光画像と合成画像との関係を表す図である。 【符号の説明】 【0208】 30 手ぶれ補正回路 32 動き検出回路 33 座標変換回路 34 画像加算回路 35 画像メモリ 36 画像合成回路 41 代表点マッチング回路 42 領域動きベクトル算出回路 43 検出領域有効性判定回路 44 全体動きベクトル算出回路 74 信頼度算出部
|
| 【出願人】 |
【識別番号】000001889 【氏名又は名称】三洋電機株式会社
|
| 【出願日】 |
平成18年8月31日(2006.8.31) |
| 【代理人】 |
【識別番号】100085501 【弁理士】 【氏名又は名称】佐野 静夫
【識別番号】100128842 【弁理士】 【氏名又は名称】井上 温
【識別番号】100129562 【弁理士】 【氏名又は名称】山本 昌則
|
| 【公開番号】 |
特開2008−60927(P2008−60927A) |
| 【公開日】 |
平成20年3月13日(2008.3.13) |
| 【出願番号】 |
特願2006−235671(P2006−235671) |
|