(57)【要約】【課題】  撮影時に大きな手ぶれが生じても、手ぶれ補正できる画像合成装置を実現する。【解決手段】  連続的に撮影された画像を合成して手ぶれ補正を行う際に、最初に撮影される画像をキーフレームとして無条件に採用して当該画像の高調波成分を表す評価量ＥＢＬを算出する。２フレーム以降も同様に評価量ＥＢＬｉ（ｉ≧２）を求め、キーフレームの評価量ＥＢＬ１との差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を順次算出する。そして、差分値Ｄが却下閾値Ｄ＿ＬＯＷより小さい画像は、手ぶれ量が大きく、合成する画像として不採用となり排除される為、撮影時に大きな手ぶれが生じても、手ぶれ補正することが可能になる。【選択図】  図５
2006270523.tif 000002
【特許請求の範囲】
【請求項１】
画像中の手ぶれの量に応じて変化する評価量を、撮影された画像から抽出する抽出手段と、
前記抽出手段により抽出された評価量を用い、撮影された画像毎に合成すべき画像として採用するか否を判定する判定手段と、
連続的に撮影された画像の内、前記判定手段により採用判定された各画像を合成して手ぶれ補正する画像合成手段と
を具備することを特徴とする画像合成装置。
【請求項２】
画像中の手ぶれの量に応じて変化する高調波成分を表す評価量ＥＢＬを、連続的に撮影される各画像からそれぞれ抽出する抽出手段と、
前記抽出手段が連続的に撮影される各画像の評価量を抽出する毎に、最初に撮影された画像の評価量ＥＢＬ１から２番目以降に撮影された各画像の評価量ＥＢＬｉ（ｉ≧２）を減算した差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を順次生成する差分値発生手段と、
前記差分値発生手段により生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を用い、撮影された画像毎に合成すべき画像として採用するか否を判定する判定手段と、
連続的に撮影された画像の内、前記判定手段により採用判定された各画像を合成して手ぶれ補正する画像合成手段と
を具備することを特徴とする画像合成装置。
【請求項３】
前記抽出手段は、
撮像された画像を縮小する画像縮小手段と、
前記画像縮小手段により縮小された縮小画像からノイズ除去した後に高調波成分を検出して高調波成分画像を発生する高調波成分画像発生手段と
を具備することを特徴とする請求項２に記載の画像合成装置。
【請求項４】
前記判定手段は、前記差分値発生手段により生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が所定の閾値より大きければ、今回撮像された評価量ＥＢＬｉの画像を合成すべき画像として採用し、一方、所定の閾値より小さければ、不採用とすることを特徴とする請求項２に記載の画像合成装置。
【請求項５】
前記判定手段は、
差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が第１の閾値より大きく、かつ採用判定した画像の数が所定値より少ない場合に、今回撮像された画像の評価量ＥＢＬｉを評価量ＥＢＬ１に更新する更新手段と、
差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が第２の閾値より小さく、かつ採用判定した画像の数ｎを撮像した画像の数ｉで除して得られる採用比率ｎ／ｉが所定値より小さい場合に、前記第２の閾値を変更した第３の閾値を設定する閾値変更手段と
を具備することを特徴とする請求項５に記載の画像合成装置。
【請求項６】
画像中の手ぶれの量に応じて変化する評価量を、撮影された画像から抽出する抽出処理と、
前記抽出処理により抽出された評価量を用い、撮影された画像毎に合成すべき画像として採用するか否を判定する判定処理と、
連続的に撮影された画像の内、前記判定処理により採用判定された各画像を合成して手ぶれ補正する画像合成処理と
をコンピュータで実行させることを特徴とする画像合成処理プログラム。
【請求項７】
画像中の手ぶれの量に応じて変化する高調波成分を表す評価量ＥＢＬを、連続的に撮影される各画像からそれぞれ抽出する抽出処理と、
前記抽出処理が連続的に撮影される各画像の評価量を抽出する毎に、最初に撮影された画像の評価量ＥＢＬ１から２番目以降に撮影された各画像の評価量ＥＢＬｉ（ｉ≧２）を減算した差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を順次生成する差分値発生処理と、
前記差分値発生処理により生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を用い、撮影された画像毎に合成すべき画像として採用するか否を判定する判定処理と、
連続的に撮影された画像の内、前記判定処理により採用判定された各画像を合成して手ぶれ補正する画像合成処理と
をコンピュータで実行させることを特徴とする画像合成処理プログラム。
【請求項８】
前記抽出処理は、
撮像された画像を縮小する画像縮小処理と、
前記画像縮小処理により縮小された縮小画像からノイズ除去した後に高調波成分を検出して高調波成分画像を発生する高調波成分画像発生処理と
を具備することを特徴とする請求項８に記載の画像合成処理プログラム。
【請求項９】
前記判定処理は、前記差分値発生処理により生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が所定の閾値より大きければ、今回撮像された評価量ＥＢＬｉの画像を合成すべき画像として採用し、一方、所定の閾値より小さければ、不採用とすることを特徴とする請求項８に記載の画像合成処理プログラム。
【請求項１０】
前記判定処理は、
差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が第１の閾値より大きく、かつ採用判定した画像の数が所定値より少ない場合に、今回撮像された画像の評価量ＥＢＬｉを評価量ＥＢＬ１に更新する更新処理と、
差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が第２の閾値より小さく、かつ採用判定した画像の数ｎを撮像した画像の数ｉで除して得られる採用比率ｎ／ｉが所定値より小さい場合に、前記第２の閾値を変更した第３の閾値を設定する閾値変更処理と
を具備することを特徴とする請求項１１に記載の画像合成処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルカメラやデジタルビデオカメラに用いて好適な画像合成装置および画像合成処理プログラムに関する。
【背景技術】
【０００２】
従来より画像処理にて手ぶれ補正する技術が知られている。 例えば特許文献１には、露光量の異なる複数の画像を撮像し、これら画像の内、一方の画像と他方の画像との間で画像全体としての１つの動きベクトルを検出し、検出した動きベクトルに基づき画像のぶれが「被写体ぶれ」あるいは「手ぶれ」のいずれであるかを判断し、「手ぶれ」の場合には、「手ぶれ」に起因する画角のずれに対応した被写体や背景等の位置ずれを相殺するように、連続する各画像の位置合わせをしてから１つの画像に重ね合わせて手ぶれ補正する装置が開示されている。
【０００３】
【特許文献１】特開２００３−１３４３８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、連続的に撮影された画像の手ぶれ量は一定でない為、連写撮影された画像を重ねて合成する際に、手ぶれ量の多い画像が存在すると、合成した画像の品質を損ねてしまい、結果的に手ぶれ補正することができなくなるという問題がある。
そこで本発明は、このような事情に鑑みてなされたもので、撮影時に大きな手ぶれが生じても、手ぶれ補正することができる画像合成処理装置および画像合成処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、請求項１に記載の発明では、画像中の手ぶれの量に応じて変化する評価量を、撮影された画像から抽出する抽出手段と、前記抽出手段により抽出された評価量を用い、撮影された画像毎に合成すべき画像として採用するか否を判定する判定手段と、連続的に撮影された画像の内、前記判定手段により採用判定された各画像を合成して手ぶれ補正する画像合成手段とを具備することを特徴とする。
【０００６】
請求項２に記載の発明では、画像中の手ぶれの量に応じて変化する高調波成分を表す評価量ＥＢＬを、連続的に撮影される各画像からそれぞれ抽出する抽出手段と、前記抽出手段が連続的に撮影される各画像の評価量を抽出する毎に、最初に撮影された画像の評価量ＥＢＬ１から２番目以降に撮影された各画像の評価量ＥＢＬｉ（ｉ≧２）を減算した差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を順次生成する差分値発生手段と、前記差分値発生手段により生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を用い、撮影された画像毎に合成すべき画像として採用するか否を判定する判定手段と、連続的に撮影された画像の内、前記判定手段により採用判定された各画像を合成して手ぶれ補正する画像合成手段とを具備することを特徴とする。
【０００７】
上記請求項２に従属する請求項３に記載の発明では、前記抽出手段は、撮像された画像を縮小する画像縮小手段と、前記画像縮小手段により縮小された縮小画像からノイズ除去した後に高調波成分を検出して高調波成分画像を発生する高調波成分画像発生手段とを具備することを特徴とする。
【０００８】
上記請求項２に従属する請求項４に記載の発明では、前記判定手段は、前記差分値発生手段により生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が所定の閾値より大きければ、今回撮像された評価量ＥＢＬｉの画像を合成すべき画像として採用し、一方、所定の閾値より小さければ、不採用とすることを特徴とする。
【０００９】
上記請求項４に従属する請求項５に記載の発明では、前記判定手段は、差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が第１の閾値より大きく、かつ採用判定した画像の数が所定値より少ない場合に、今回撮像された画像の評価量ＥＢＬｉを評価量ＥＢＬ１に更新する更新手段と、差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が第２の閾値より小さく、かつ採用判定した画像の数ｎを撮像した画像の数ｉで除して得られる採用比率ｎ／ｉが所定値より小さい場合に、前記第２の閾値を変更した第３の閾値を設定する閾値変更手段とを具備することを特徴とする。
【００１０】
請求項６に記載の発明では、画像中の手ぶれの量に応じて変化する評価量を、撮影された画像から抽出する抽出処理と、前記抽出処理により抽出された評価量を用い、撮影された画像毎に合成すべき画像として採用するか否を判定する判定処理と、連続的に撮影された画像の内、前記判定処理により採用判定された各画像を合成して手ぶれ補正する画像合成処理とをコンピュータで実行させることを特徴とする。
【００１１】
請求項７に記載の発明では、画像中の手ぶれの量に応じて変化する高調波成分を表す評価量ＥＢＬを、連続的に撮影される各画像からそれぞれ抽出する抽出処理と、前記抽出処理が連続的に撮影される各画像の評価量を抽出する毎に、最初に撮影された画像の評価量ＥＢＬ１から２番目以降に撮影された各画像の評価量ＥＢＬｉ（ｉ≧２）を減算した差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を順次生成する差分値発生処理と、前記差分値発生処理により生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を用い、撮影された画像毎に合成すべき画像として採用するか否を判定する判定処理と、連続的に撮影された画像の内、前記判定処理により採用判定された各画像を合成して手ぶれ補正する画像合成処理とをコンピュータで実行させることを特徴とする。
【００１２】
上記請求項７に従属する請求項８に記載の発明では、前記抽出処理は、撮像された画像を縮小する画像縮小処理と、前記画像縮小処理により縮小された縮小画像からノイズ除去した後に高調波成分を検出して高調波成分画像を発生する高調波成分画像発生処理とを具備することを特徴とする。
【００１３】
上記請求項７に従属する請求項９に記載の発明では、前記判定処理は、前記差分値発生処理により生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が所定の閾値より大きければ、今回撮像された評価量ＥＢＬｉの画像を合成すべき画像として採用し、一方、所定の閾値より小さければ、不採用とすることを特徴とする。
【００１４】
上記請求項９に従属する請求項１０に記載の発明では、前記判定処理は、差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が第１の閾値より大きく、かつ採用判定した画像の数が所定値より少ない場合に、今回撮像された画像の評価量ＥＢＬｉを評価量ＥＢＬ１に更新する更新処理と、差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）が第２の閾値より小さく、かつ採用判定した画像の数ｎを撮像した画像の数ｉで除して得られる採用比率ｎ／ｉが所定値より小さい場合に、前記第２の閾値を変更した第３の閾値を設定する閾値変更処理とを具備することを特徴とする。
【発明の効果】
【００１５】
請求項１、６に記載の発明によれば、画像中の手ぶれの量に応じて変化する評価量を、撮影された画像から抽出し、抽出された評価量を用いて撮影された画像毎に合成すべき画像として採用するか否を判定する。そして、連続的に撮影された画像の内、採用判定された各画像を合成して手ぶれ補正する。したがって、手ぶれの大きい画像は合成すべき画像として採用されずに排除される為、撮影時に大きな手ぶれが生じても、手ぶれ補正することができる。
【００１６】
請求項２、７に記載の発明によれば、画像中の手ぶれの量に応じて変化する高調波成分を表す評価量ＥＢＬを、連続的に撮影される各画像からそれぞれ抽出する毎に、最初に撮影された画像の評価量ＥＢＬ１から２番目以降に撮影された各画像の評価量ＥＢＬｉ（ｉ≧２）を減算した差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を順次生成する。そして、生成される差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を用い、撮影された画像毎に合成すべき画像として採用するか否を判定し、連続的に撮影された画像の内、採用判定された各画像を合成して手ぶれ補正する。したがって、手ぶれの大きい画像は合成すべき画像として採用されずに排除される為、撮影時に大きな手ぶれが生じても、手ぶれ補正することができる。
【発明を実施するための最良の形態】
【００１７】
以下では、最初に本発明の概要について説明した後、図面を参照して本発明の実施の一形態について説明する。
【００１８】
Ａ．発明の概要
本発明は、手ぶれの量に応じて、画像中の手ぶれ方向の高調波成分が変化する性質を利用する。すなわち、後述するように、撮影された画像から手ぶれ量を評価する評価量ＥＢＬを求める。画像中の高調波成分を表す評価量ＥＢＬは、その値が大きいほど手ぶれの少ない画像であることを表す。したがって、連続的に撮影された画像を合成して手ぶれ補正を行う場合に、合成する画像として採用するか否かを評価量ＥＢＬを用いて判定し、手ぶれ量が大きく評価量ＥＢＬが低い画像を合成の対象から排除することによって、撮影時に大きな手ぶれが生じても手ぶれ補正を可能にする。
【００１９】
具体的には、先ず撮像して得た入力画像Ｐを所定の画像サイズに縮小する。手ぶれは、画角に対して１％以上変動すると、画像中で明らかな「ぶれ」として認識される。横方向６４０ドットの画素数であれば、６ドット以上である。逆に言えば、これ以下の手ぶれはあまり気にならないことが多い。
【００２０】
したがって、縮小する画像サイズとしては、例えば６４０ドット×４８０ドット程度で十分となる。入力画像Ｐを縮小した後は、次式［１］で表すように、縮小画像ＰｓをガウシアンフィルタＨｇにてフィルタリングし、スパイクノイズ等を除去した画像Ｐｇを生成する。
Ｐｇ＝Ｈｇ＊Ｐｓ  …［１］
上記［１］式により、スパイクノイズ等を除去することで手ぶれ量の評価に影響を与えないようにする。なお、スパイクノイズ除去には、ガウシアンフィルタの他、メディアンフィルタを用いても構わない。
【００２１】
次に、次式［２］で表すように、スパイクノイズ等を除去した画像Ｐｇをラプラシアンフィルタ（２次微分フィルタ）Ｈｌにてフィルタリングし、画像Ｐｇの高調波成分Ｐｇｌを得る。
Ｐｇｌ＝Ｈｌ＊Ｐｇ  …［２］
そして、画像Ｐｇの高調波成分Ｐｇｌにおいて、次式［３ａ］、［３ｂ］で表すように、行方向（ｘ軸方向）および列方向（ｙ軸方向）における高調波成分Ｐｇｌの最大値（絶対値）ＦＨ（ｙ）、ＦＶ（ｘ）を求める。
ＦＨ（ｙ）＝ｍａｘ（ａｂｓ（Ｐｇｌ（ｘ，ｙ）））  …［３ａ］
ＦＶ（ｘ）＝ｍａｘ（ａｂｓ（Ｐｇｌ（ｘ，ｙ）））  …［３ｂ］
なお、ＦＨ（ｙ）は画像Ｐｇの高調波成分Ｐｇｌにおけるｘ軸方向の各ｙ列の最大値（絶対値）を、一方、ＦＶ（ｘ）はｙ軸方向の各ｘ行の最大値（絶対値）を表している。
【００２２】
次に、次式［４ａ］、［４ｂ］で表すように、ＦＨ（ｙ）およびＦＶ（ｘ）の総和ＦＨＳ、ＦＶＳを求める。
ＦＨＳ＝ΣＦＨ（ｙ）  …［４ａ］
ＦＶＳ＝ΣＦＶ（ｘ）  …［４ｂ］
したがって、ＦＨＳはｘ軸方向（横方向）の高調波成分累算値、ＦＶＳはｙ軸方向（縦方向）の高調波成分累算値となる。手ぶれ量の評価には、次式［５］で表すように、高調波成分累算値ＦＨＳと高調波成分累算値ＦＶＳとを加算して得られる評価量ＥＢＬを用いる。
ＥＢＬ＝ＦＨＳ＋ＦＶＳ  …［５］
手ぶれが発生すると、手ぶれ方向の高調波成分が少なくなるので、評価量ＥＢＬが大きい程、撮影した画像（入力画像Ｐ）は手ぶれの少ない画像と評価できる。
【００２３】
後述する実施の形態では、上述したように、評価量ＥＢＬを高調波成分累算値ＦＨＳと高調波成分累算値ＦＶＳとを加算して発生させるが、これに限らず、次式［６］で表すように、前述した画像Ｐｇの高調波成分Ｐｇｌの絶対値を累算して評価量ＥＢＬを算出する態様としても構わない。
ＥＢＬ＝ΣΣａｂｓ（Ｐｇｌ（ｘ，ｙ））  …［６］
【００２４】
次に、こうして得た評価量ＥＢＬに基づき、合成する画像として採用するか否かを判定する。連続的に撮影される画像の内、最初に撮影される画像はキーフレームとして無条件に採択し、上述した［１］〜［５］式の関係に基づき評価量ＥＢＬ１を算出する。２フレーム以降も同様に評価量ＥＢＬｉ（ｉ≧２）を求め、キーフレームの評価量ＥＢＬ１との差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を順次算出する。差分値Ｄが後述の閾値より小さい負の値であると、ｉ番目のフレームの画像は手ぶれ量が多く、合成する画像として不適と判断する。この場合、ｉ番目のフレームの画像は合成する画像として不採用になり排除される。
【００２５】
一方、差分値Ｄが後述の閾値より大きい正の値であれば、最初のキーフレームの画像に手ぶれが多く含まれることが考えられるため、キーフレームを次フレームに差し替えた方が好ましい。但し、既に多くの画像を合成した後であれば、この時点でキーフレームの差し替えは控えた方が好ましい。実際の動作では、撮影開始から４００乃至５００ミリ秒までの間に、数フレーム分は手ぶれの少ない安定した画像を撮影できることが多い。したがって、それ以後も手ぶれの少ない画像が撮影されることもあるが、手ぶれの少ない画像が撮影される都度、キーフレーム差し替えを行うと、画像合成に時間が掛かってしまう為、キーフレームを差し替えずにそのまま続行させた方が好ましい状況も起こり得る。
【００２６】
なお、採用判定する期間は、合成する画像枚数（フレーム数）の他、撮影開始からの経過時間で規定するようにしても構わない。また、不採用となるフレームの数あるいは比率が多い場合には、キーフレームの評価量ＥＢＬ１が極めて良い場合も考えられるので、採択判定に用いる閾値を徐々に小さくする等、可変設定することが好ましい。
【００２７】
Ｂ．構成
次に、図１および図２を参照して本発明の実施の一形態であるデジタルカメラの構成について説明する。図１は、デジタルカメラの全体構成を示すブロック図、図２はイメージセンサの構成を示すブロック図である。
図１に図示するように、本発明によるデジタルカメラは、操作部１１、ＣＰＵ１２、プログラムコード記憶部１３、光学レンズ部１４、イメージセンサ１５、画像メモリ１６、表示部１７、画像処理部１８、ＰＣインタフェース１９、外部メモリ入出力制御部２０およびメモリカード２１を備える。操作部１１は、電源スイッチやシャッタボタン等の各種操作子を有し、操作される操作子に応じた操作イベントを発生してＣＰＵ１２に供給する。
【００２８】
ＣＰＵ１２は、ＲＯＭやフラッシュメモリ等から構成されるプログラムコード記憶部１３に格納される制御プログラムを実行し、操作部１１から入力される操作イベントに応じて各部を制御する制御信号を発生する。光学レンズ部１４は、撮影レンズおよびレンズ駆動機構を備え、ＣＰＵ１２から供給される制御信号により撮影レンズをフォーカシングさせてイメージセンサ１５上に被写体像を結像する。
【００２９】
イメージセンサ１５は、図２に図示するように、ベイヤー配色と呼ばれる配列で原色フィルタ（Ｒ，Ｇ，Ｂ）が配置されて光電変換する撮像素子（フォトセンサ）１０１、これら撮像素子１０１の各電荷を転送する垂直レジスタ１０２、垂直レジスタ１０３に保持された光電信号を読み出してアンプ１０５に転送する水平レジスタ１０３、ＣＰＵ１２から供給される読み取り制御信号に応じて、上記垂直レジスタ１０２／水平レジスタ１０３のリードライトタイミングを制御するタイミング制御部１０４およびゲイン調整されたアンプ１０５の出力信号をＡ／Ｄ変換して画像データを出力するＡ／Ｄ変換器１０６から構成される。
【００３０】
上記構成によるイメージセンサ１５は、ＣＰＵ１２によって制御され、撮影モード下で操作部１１のシャッタボタンが押下されない状態ではプレビュー用の解像度の低い画像データを所定フレーム周期（例えば秒間３０フレーム程度）で生成して画像メモリ１６に供給する。一方、撮影モード下で操作部１１のシャッタボタンが押下された場合には、解像度の高い画像データを生成して画像メモリ１６に供給する。また、イメージセンサ１５では、被写体の明るさに応じてＣＰＵ１２が指示する撮像感度（ＩＳＯ感度）に設定する。
【００３１】
画像メモリ１６は、イメージセンサ１５が出力する低解像度のプレビュー画像データや高解像度の画像データを一時記憶したり、画像処理部１８にて画像処理された画像データを一時記憶する。画像メモリ１６に一時記憶される画像データは、ＣＰＵ１２の制御の下に読み出されて表示部１７に供給される。表示部１７は、例えばカラー液晶パネルおよび駆動ドライバ等から構成され、画像メモリ１６から供給される画像データを画面表示する。画像処理部１８は、ＣＰＵ１２の制御の下で、画像メモリ１６に一時記憶される画像データに対して画像圧縮や輝度補正、ホワイトバランス調整などを行う。ＰＣインタフェース部１９は、図示されていないコンピュータにＵＳＢ接続された場合に入出力ドライバとして動作する。これにより、後述のメモリカード２１を外部記憶装置として取り扱えるようになる。外部メモリ入出力制御部は、メモリカード２１との間で画像データを授受する。
【００３２】
Ｃ．動作
次に、図３〜図５を参照して、上記構成による実施形態において実行される撮影処理の動作を説明する。なお、図３は撮影処理の概略動作を示すフローチャート、図４は撮影処理において実行される連写撮影・画像合成処理の動作を示すフローチャート、図５は連写撮影・画像合成処理において実行される画像採用判定処理の動作を示すフローチャートである。
【００３３】
（１）撮影処理の動作
上記構成によるデジタルカメラにおいて、撮影モードに設定されると、ＣＰＵ１２は、図３に図示する撮影処理を実行してステップＳＡ１に進み、プレビュー設定を行う。プレビュー設定とは、イメージセンサ１５から画像メモリ１６に書き込まれる、例えば毎秒３０フレーム分の解像度の低い画像データ（プレビュー画像データ）をリアルタイムに読み出して表示部１７にプレビュー画像を表示させるための設定を指す。
【００３４】
次いで、ステップＳＡ２では、シャッタボタンの押下の有無を判断する。シャッタボタンが押下されなければ、判断結果は「ＮＯ」になり、ステップＳＡ３に進み、イメージセンサ１５のタイミング制御部１０４（図２参照）に、プレビュー画像データを発生させる読み取り制御信号を供給する。続いて、ステップＳＡ４では、イメージセンサ１５から出力され、画像メモリ１６の表示領域に書き込まれるプレビュー画像データをリアルタイムに読み出して表示部１７にプレビュー画像を表示する。以後、シャッタボタンが押下されるまで上記ステップＳＡ１〜ＳＡ４を繰り返してプレビュー画像表示を行う。
【００３５】
そして、シャッタボタンが押下されると、上記ステップＳＡ２の判断結果が「ＹＥＳ」になり、ステップＳＡ５に進み、連写撮影・画像合成処理を実行する。連写撮影・画像合成処理では、後述するように、連続的に撮影された画像を合成して手ぶれ補正された出力画像Ｐｏｕｔを生成する。次いで、ステップＳＡ６では、上記ステップＳＡ５において作成された出力画像Ｐｏｕｔを、表示部１７の表示画面で確認できる画像サイズの撮影確認画像に縮小し、縮小した撮影確認画像を表示部１７に画面表示する。その後、ステップＳＡ７に進み、撮影確認画像をＪＰＥＧ形式などによって画像圧縮を施し、続くステップＳＡ８では、圧縮された画像データを、外部メモリ入出力制御部２０を介してメモリカード２１に保存してから上記ステップＳＡ１に処理を戻す。
【００３６】
（２）連写撮影・画像合成処理の動作
次に、図４を参照して連写撮影・画像合成処理の動作を説明する。前述したステップＳＡ５（図３参照）を介して連写撮影・画像合成処理が実行されると、ＣＰＵ１２は図４に図示するステップＳＢ１に進み、画像メモリ１６中の出力画像を書き込むメモリ領域をクリアする初期化を行う。なお、画像メモリ１６に書き込まれる出力画像のサイズは、入力画像（撮影画像）より大きめの画像サイズにしておく。これは、手ぶれで位置ずれが生じた入力画像を合成する際に、連写された各入力画像の重複部分を切り出せるようにするためである。
【００３７】
画像メモリ１６が初期化されると、ステップＳＢ２に進み、撮像フレーム数ｉに初期値「１」をセットする。続いて、ステップＳＢ３では、イメージセンサ１５のタイミング制御部１０４（図２参照）に、高解像度の画像データを発生させる読み取り制御信号を供給して画像撮像する。そして、ステップＳＢ４では、撮像して得た画像データを画像メモリ１６中の作業メモリ領域に一旦保存する。次いで、ステップＳＢ５では、今回取り込んだ撮像フレーム数ｉの画像データに大きな手ぶれが存在するか否かを評価し、その評価結果に基づき今回取り込んだ撮像フレーム数ｉの画像データの採用・不採用を判定する。なお、画像データに大きな手ぶれが存在するか否かの評価は、後述する画像採用判定処理（図５参照）にて行われる。
【００３８】
上記ステップＳＢ５において不採用と判定された場合には、判断結果が「ＮＯ」になり、ステップＳＢ３に処理を戻して画像撮像をやり直す。これに対し、採用と判定された場合には、上記ステップＳＢ５の判断結果が「ＹＥＳ」になり、ステップＳＢ６に進む。ステップＳＢ６では、撮像フレーム数ｉが「１」より大きいか否か、すなわち最初に撮像した画像データであるかどうかを判断する。最初に撮像した画像データであれば、撮像フレーム数ｉは初期値「１」なので、判断結果は「ＮＯ」になり、ステップＳＢ８に進む。
【００３９】
一方、撮像フレーム数ｉが２番目以降であると、ここでの判断結果は「ＹＥＳ」になり、ステップＳＢ７に進み、変換パラメータを算出する。変換パラメータとは、最初に撮影した画像Ｐ１の被写体に、今回撮影した画像Ｐｉの被写体が重なり合うようにするための座標変換を表す。具体的には、例えば周知のエピポーラ幾何に基づき、今回撮影した画像Ｐｉの座標系を、最初に撮影した画像Ｐ１の座標系に変換する。
【００４０】
次に、ステップＳＢ８では、上記ステップＳＢ７にて算出される変換パラメータに従って今回撮影した画像Ｐｉの座標系を、最初に撮影した画像Ｐ１の座標系に変換して画像Ｐ１に画像Ｐｉを加算合成する。次いで、ステップＳＢ９では、撮像フレーム数ｉをインクリメントして歩進させ、続くステップＳＢ１０では、歩進された撮像フレーム数ｉが連写規定枚数に達したか否かを判断する。撮像フレーム数ｉが連写規定枚数に達していないと、上記ステップＳＢ１０の判断結果は「ＮＯ」となり、上述のステップＳＢ３に処理を戻して連写を継続させる。
【００４１】
一方、撮像フレーム数ｉが連写規定枚数に達すると、上記ステップＳＢ１０の判断結果が「ＹＥＳ」になり、ステップＳＢ１１に進み、上記ステップＳＢ８において加算合成された画像の明るさを最適にする輝度のゲイン補正やホワイトバランス調整の実行を画像処理部１８に指示して出力画像Ｐｏｕｔを生成させて本処理を終える。
【００４２】
（２）画像採用判定処理の動作
次に、図５を参照して画像採用判定処理の動作を説明する。前述したステップＳＢ５（図４参照）において本処理が実行されると、ＣＰＵ１２は図５に図示するステップＳＣ１に進み、画像採用判定に用いるパラメータを初期化すると共に、前述した連写撮影にて取り込んだ撮像フレーム数ｉの画像を所定の画像サイズに縮小した縮小画像Ｐｓを作成する。なお、ここで言うパラメータの初期化とは、後述する却下閾値Ｄ＿ＬＯＷおよび基準更新閾値Ｄ＿ＨＩＧＨを初期値にリセットすることを指す。
【００４３】
次いで、ステップＳＣ２では、ガウシアンフィルタあるいはメディアンフィルタを用いて縮小画像Ｐｓからスパイクノイズ等を除去した画像Ｐｇを作成する。続いて、ステップＳＣ３では、この画像Ｐｇをラプラシアンフィルタ（２次微分フィルタ）Ｈｌにてフィルタリングし、高調波成分画像Ｐｇｌを得る。
【００４４】
そして、ステップＳＣ４では、前述した発明の概要で述べたように、高調波成分画像Ｐｇｌにおいて行方向（ｘ軸方向）および列方向（ｙ軸方向）における高調波成分Ｐｇｌの最大値（絶対値）ＦＨ（ｙ）、ＦＶ（ｘ）を求めた後、ＦＨ（ｙ）およびＦＶ（ｘ）の各総和からｘ軸方向（横方向）の高調波成分累算値ＦＨＳと、ｙ軸方向（縦方向）の高調波成分累算値ＦＶＳとを得る。さらに、ステップＳＣ４では、高調波成分累算値ＦＨＳと高調波成分累算値ＦＶＳとを加算して手ぶれ評価量ＥＢＬを算出する。こうして得られる手ぶれ評価量ＥＢＬは、その値が大きい程、手ぶれの少ない画像を表す。
【００４５】
続いて、ステップＳＣ５では、撮像フレーム数ｉが「１」より大きいか否か、すなわち最初に撮像した画像データであるかどうかを判断する。最初に撮像した画像データであれば、判断結果は「ＮＯ」になり、ステップＳＣ６に進み、上記ステップＳＣ４において算出された手ぶれ評価量ＥＢＬを、手ぶれ基準値ＥＢＬ１に設定する。この後、ステップＳＣ７に進み、合成フレーム数ｎを初期値「１」にセットし、続くステップＳＣ８では「初期採用」と判定する。なお、「初期採用」と判定した場合には、前述した連写撮影・画像合成処理のステップＳＢ５（図４参照）の判断結果が「ＹＥＳ」になる。
【００４６】
一方、撮像フレーム数ｉが２番目以降の撮像画像データであると、上記ステップＳＣ５の判断結果は「ＹＥＳ」になり、ステップＳＣ９に進む。ステップＳＣ９では、今回撮像した画像データの手ぶれ評価量ＥＢＬから最初に撮像した画像データから得た手ぶれ基準値ＥＢＬ１を減算して差分値Ｄを算出する。次いで、ステップＳＣ１０では、差分値Ｄが却下閾値Ｄ＿ＬＯＷより小さいか否か、つまり今回撮像した画像データの手ぶれが基準より大きいかどうかを判断する。以下、今回撮像した画像データの手ぶれが基準より小さい場合と、大きい場合とに分けて動作説明を進める。
【００４７】
＜今回撮像した画像データの手ぶれが基準より小さい場合＞
この場合、上記ステップＳＣ１０の判断結果は「ＮＯ」になり、ステップＳＣ１１に進む。ステップＳＣ１１では、差分値Ｄが基準更新閾値Ｄ＿ＨＩＧＨより大きいか否か、つまり今回撮像した画像データの手ぶれが基準より著しく小さいかどうかを判断する。今回撮像した画像データの手ぶれが基準より著しく小さくなければ、判断結果は「ＮＯ」になり、ステップＳＣ１２に進む。ステップＳＣ１２では、合成フレーム数ｎをインクリメントして歩進させ、続くステップＳＣ１３では「合成採用」と判定する。なお、「合成採用」と判定した場合には、前述した連写撮影・画像合成処理のステップＳＢ５（図４参照）の判断結果が「ＹＥＳ」になる。
【００４８】
これに対し、今回撮像した画像データの手ぶれが基準より著しく小さいと、上記ステップＳＣ１１の判断結果は「ＹＥＳ」になり、ステップＳＣ１４に進む。ステップＳＣ１４では、現在の合成フレーム数ｎが所定値ＲＥＪ＿ＬＯＣＫより大きいか否か、すなわち手ぶれの基準となるキーフレームを差し替えるかどうかを判断する。現在の合成フレーム数ｎが所定値ＲＥＪ＿ＬＯＣＫより大きく、既に多くの画像を合成している状態であれば、判断結果は「ＹＥＳ」となり、この場合、キーフレームの差し替えを行わず、ステップＳＣ１２に進み、合成フレーム数ｎを歩進させた後、ステップＳＣ１３にて「合成採用」と判定する。
【００４９】
一方、現在の合成フレーム数ｎが所定値ＲＥＪ＿ＬＯＣＫより小さく、多くの画像を合成していない状態ならば、上記ステップＳＣ１４の判断結果が「ＮＯ」となり、この場合、キーフレームの差し替えを行う為、上述のステップＳＣ６に進み、上記ステップＳＣ４において算出された手ぶれ評価量ＥＢＬを、手ぶれ基準値ＥＢＬ１として設定し直す。そして、ステップＳＣ７に進み、合成フレーム数ｎを初期値「１」にリセットした後、続くステップＳＣ８にて「初期採用」と判定する。なお、「初期採用」と判定した場合には、前述した連写撮影・画像合成処理のステップＳＢ５（図４参照）の判断結果が「ＹＥＳ」になる。
【００５０】
＜今回撮像した画像データの手ぶれが基準より大きい場合＞
この場合、上記ステップＳＣ１０の判断結果は「ＹＥＳ」になり、ステップＳＣ１５に進む。ステップＳＣ１５では、合成フレーム数ｎを撮像フレーム数ｉで除して得られる採用比率ｎ／ｉが所定値ＴＹＰ＿ＲＡＴＥより大きいか否かを判断する。採用比率ｎ／ｉが所定値ＴＹＰ＿ＲＡＴＥより大きければ、判断結果は「ＹＥＳ」になり、ステップＳＣ１８に進み、今回撮像した画像データの採用を「却下」する。なお、「却下」と判定した場合には、前述した連写撮影・画像合成処理のステップＳＢ５（図４参照）の判断結果が「ＮＯ」になる。
【００５１】
一方、採用比率ｎ／ｉが所定値ＴＹＰ＿ＲＡＴＥより小さいと、上記ステップＳＣ１５の判断結果が「ＮＯ」になり、ステップＳＣ１６に進む。ステップＳＣ１６では、却下閾値Ｄ＿ＬＯＷを緩和する。つまり、採用比率ｎ／ｉが所定値ＴＹＰ＿ＲＡＴＥより小さいということは、却下閾値Ｄ＿ＬＯＷが高過ぎる可能性がある為、却下閾値Ｄ＿ＬＯＷを小さくして判定基準を緩和させる。
【００５２】
そして、ステップＳＣ１７では、基準緩和された新たな却下閾値Ｄ＿ＬＯＷに基づき、今回撮像した画像データの手ぶれが基準より大きいかどうかを判断する。手ぶれが基準より小さければ、判断結果は「ＮＯ」になり、ステップＳＣ１２に進み、合成フレーム数ｎをインクリメントして歩進させ、続くステップＳＣ１３では「合成採用」と判定する。これに対し、手ぶれが基準より大きいと、上記ステップＳＣ１７の判断結果が「ＹＥＳ」になり、ステップＳＣ１８に進み、今回撮像した画像データの採用を「却下」する。この緩和された却下閾値Ｄ＿ＬＯＷは保存され次回以降の撮影に用いられる。また、本実施例では緩和されたＤ＿ＬＯＷに対し即座にＳＣ１７で採用判定を行ったが、このＳＣ１７での判定は行わずに緩和されたＤ＿ＬＯＷを保存し次回撮影に用いると言うだけでも長期的に見れば実質的に同等の効果を上げることができる。さらに、この却下閾値Ｄ＿ＬＯＷを、絞り、シャッター速度、撮影者などの撮影情報と共に管理し使い分ければ、より的確な判断が可能になる。
【００５３】
以上のように、本実施形態では、連続的に撮影された画像を合成して手ぶれ補正を行う際に、最初に撮影される画像をキーフレームとして無条件に採用して当該画像の高調波成分を表す評価量ＥＢＬを算出する。２フレーム以降も同様に評価量ＥＢＬｉ（ｉ≧２）を求め、キーフレームの評価量ＥＢＬ１との差分値Ｄ（ＥＢＬｉ−ＥＢＬ１）を順次算出する。そして、差分値Ｄが却下閾値Ｄ＿ＬＯＷより小さい画像は、手ぶれ量が大きく、合成する画像として不採用となり排除される。この結果、撮影時に大きな手ぶれが生じても、手ぶれ補正することが可能になる。
【００５４】
なお、本実施の形態では、撮影された画像の高調波成分を算出して当該画像中の手ぶれ量を推定し、手ぶれの大きい画像を合成の対象から除外するようにしたが、これに替えて、前述した連写撮影・画像合成処理のステップＳＢ７（図４参照）において算出した変換パラメータを用いて手ぶれの大きい画像を合成の対象から除外する態様にすることも可能である。
すなわち、前回撮影した画像と今回撮影した画像との位置関係を表す変換パラメータから両画像間の位置ずれを求める。位置ずれが大きい場合には、手ぶれが含まれる可能性が高い為、今回撮影した画像から得た位置ずれが所定値を超えた場合にその画像を合成の対象から除外する。これにより、撮影時に大きな手ぶれが生じても、手ぶれ補正することが可能になる。
【図面の簡単な説明】
【００５５】
【図１】本発明の一実施形態の全体構成を示すブロック図である。
【図２】イメージセンサ１５の構成を示すブロック図である。
【図３】撮影処理の動作を示すフローチャートである。
【図４】連写撮影・画像合成処理の動作を示すフローチャートである。
【図５】画像採用判定処理の動作を示すフローチャートである。
【符号の説明】
【００５６】
１１  操作部
１２  ＣＰＵ
１３  プログラムコード記憶部
１４  光学レンズ部
１５  イメージセンサ
１６  画像メモリ
１７  表示部
１８  画像処理部
１９  ＰＣ  Ｉ／Ｆ
２０  外部メモリ入出力制御部
２１  メモリカード
【図１】
2006270523.tif 000003
【図２】
2006270523.tif 000004
【図３】
2006270523.tif 000005
【図４】
2006270523.tif 000006
【図５】
2006270523.tif 000007