(57)【要約】【課題】  複数の画像を合成して１つの画像を生成する際の画質向上を実現すること。【解決手段】  撮像部から出力された複数の画像に対して、複数の画像間の動きを検出し、検出した動きを基に複数の画像を合成する画像処理装置および画像処理方法であって、前記複数の画像は、適正な露光量と異なる少なくとも一つの画像を含むことにより、最適な露光条件下と略同一の白バランス補正を行うことができる。【選択図】  図７
2006229868.tif 000002
【特許請求の範囲】
【請求項１】
適正露出条件とは異なる露出条件で撮影された、重複部分を有する複数の画像間の動きを検出する動き検出手段と、前記検出した動きに基づいて、前記複数の画像を位置合わせして合成する合成手段とを有する画像処理装置であって、
前記複数の画像の各々を対象画像として、所定の輝度値を有する画素を用いて推定した光源の色温度に基づいて白バランス調整用の係数を算出し、当該係数を用いて前記対象画像の白バランスを調整する白バランス調整手段を有し、
前記白バランス調整手段が、前記所定の輝度値として、前記異なる露出条件と前記適正露出条件との関係に応じて補正した値を用いて前記光源の色温度を推定し、
前記動き検出手段及び前記合成手段が、前記白バランス調整後の画像に対して前記動きの検出及び前記合成を行うことを特徴とする画像処理装置。
【請求項２】
適正露出条件とは異なる露出条件で撮影された、重複部分を有する複数の画像間の動きを検出する動き検出手段と、前記検出した動きに基づいて、前記複数の画像を位置合わせして合成する合成手段とを有する画像処理装置であって、
前記合成手段により合成された画像を対象画像として、所定の輝度値を有する画素を用いて推定した光源の色温度に基づいて白バランス調整用の係数を算出し、当該係数を用いて前記対象画像の白バランスを調整する白バランス調整手段を有し、
前記白バランス調整手段が、前記所定の輝度値として、前記適正露出条件で撮影された画像に対して用いる輝度値を用いて前記光源の色温度を推定することを特徴とする画像処理装置。
【請求項３】
前記複数の画像が、前記適正露出条件よりも短い露光時間で、かつ同一の露出条件で撮影された画像であることを特徴とする請求項１又は請求項２記載の画像処理装置。
【請求項４】
前記複数の画像が、前記適正露出条件よりも短い露光時間で撮影された画像と、前記適正露出条件よりも長い露光時間で撮影された画像とからなることを特徴とする請求項１又は請求項２記載の画像処理装置。
【請求項５】
重複部分を有する第１及び第２の画像を位置合わせするための移動パラメータを求める動き検出装置であって、
前記第１の画像と、前記第２の画像との対応点を検出する対応点検出手段と、
前記対応点の信頼性を判定する判定手段と、
前記判定手段により信頼性が高いと判定された対応点の組み合わせに基づいて移動パラメータを推定する第１の推定手段と、
前記第１の推定手段が推定した移動パラメータの各々について、前記推定した移動パラメータを用いて推定した対応点との誤差が所定値以下である合格対応点を前記検出された対応点から検出する合格対応点検出手段と、
前記合格対応点が最大数となる場合の前記合格対応点を用いて、前記移動パラメータを推定し、推定結果を最終的な移動パラメータとする第２の推定手段とを有することを特徴とする動き検出装置。
【請求項６】
前記対応点検出手段が、前記第１の画像の部分画像をテンプレートとした、前記第２の画像の探索領域内におけるテンプレートマッチングにより前記第２の画像における対応点を検出し、
前記判定手段が、前記対応点における、前記部分画像と対応する前記第２の画像の部分画像との相関を表す情報に基づいて前記信頼性を判定することを特徴とする請求項５記載の動き検出装置。
【請求項７】
請求項５又は請求項６に記載の動き検出装置を前記動き検出手段として有する請求項１乃至請求項４のいずれか１項に記載の画像処理装置と、
前記複数の画像を撮影する撮影手段とを有することを特徴とする撮像装置。
【請求項８】
適正露出条件とは異なる露出条件で撮影された、重複部分を有する複数の画像間の動きを検出する動き検出工程と、前記検出した動きに基づいて、前記複数の画像を位置合わせして合成する合成工程とを有する画像処理方法であって、
前記複数の画像の各々を対象画像として、所定の輝度値を有する画素を用いて推定した光源の色温度に基づいて白バランス調整用の係数を算出し、当該係数を用いて前記対象画像の白バランスを調整する白バランス調整工程を有し、
前記白バランス調整工程が、前記所定の輝度値として、前記異なる露出条件と前記適正露出条件との関係に応じて補正した値を用いて前記光源の色温度を推定し、
前記動き検出工程及び前記合成工程が、前記白バランス調整後の画像に対して前記動きの検出及び前記合成を行うことを特徴とする画像処理方法。
【請求項９】
適正露出条件とは異なる露出条件で撮影された、重複部分を有する複数の画像間の動きを検出する動き検出工程と、前記検出した動きに基づいて、前記複数の画像を位置合わせして合成する合成工程とを有する画像処理方法であって、
前記合成工程により合成された画像を対象画像として、所定の輝度値を有する画素を用いて推定した光源の色温度に基づいて白バランス調整用の係数を算出し、当該係数を用いて前記対象画像の白バランスを調整する白バランス調整工程を有し、
前記白バランス調整工程が、前記所定の輝度値として、前記適正露出条件で撮影された画像に対して用いる輝度値を用いて前記光源の色温度を推定することを特徴とする画像処理方法。
【請求項１０】
重複部分を有する第１及び第２の画像を位置合わせするための移動パラメータを求める動き検出方法であって、
前記第１の画像と、前記第２の画像との対応点を検出する対応点検出工程と、
前記対応点の信頼性を判定する判定工程と、
前記判定工程により信頼性が高いと判定された対応点の組み合わせに基づいて移動パラメータを推定する第１の推定工程と、
前記第１の推定工程が推定した移動パラメータの各々について、前記推定した移動パラメータを用いて推定した対応点との誤差が所定値以下である合格対応点を前記検出された対応点から検出する合格対応点検出工程と、
前記合格対応点が最大数となる場合の前記合格対応点を用いて、前記移動パラメータを推定し、推定結果を最終的な移動パラメータとする第２の推定工程とを有することを特徴とする動き検出方法。
【請求項１１】
請求項７又は請求項８に記載の画像処理方法、請求項１０記載の動き検出方法の少なくとも１つに記載の各工程をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置及び方法に関し、特に複数の画像を合成する画像処理装置及び方法に関する。
【０００２】
また、本発明は複数の画像を位置合わせするための移動パラメータを求める動き検出装置及び動き検出方法に関する。
【背景技術】
【０００３】
デジタルスチルカメラによる写真撮影を行う場合、撮影中にカメラや被写体が移動することで、撮影画像にブレが生じることがある。このようなブレを防止するためには、速いシャッター速度で撮影を行うことが望ましい。設定可能な最速のシャッター速度は、被写体の輝度と絞り値、撮像素子の感度との関係から決定される。従って、たとえば被写体の輝度が低い場合、絞り値を開放としても、必要な露光量を得るためにはシャッター速度を遅くしなければならない場合がある。このような場合には、ブレ防止のため、ストロボを用いて撮影する、三脚を用いてカメラを固定する、撮像素子の感度を上げる、というような方策が考えられる。
【０００４】
しかしながら、撮像素子の感度を上げた場合には、撮影画像中のノイズが目立ってくる。また、ストロボを用いることによる効果は、ストロボ光の届く範囲に限定され、遠距離にある被写体の撮影には対応できない。また、三脚を用いた撮影は機動性に劣り、対応できる状況が限られてしまう。
【０００５】
【特許文献１】特開平３−２２４３７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このような問題点に鑑み、短い撮影間隔で速いシャッター速度で複数の撮影を行い、撮影した複数の画像を合成して実質的に必要な露光量を確保するといった方式が提案されている（特許文献１参照）。
【０００７】
しかしながら、従来の複数画像合成による適正露出画像の取得方式においては、色再現については何ら言及されておらず、既存のデジタルスチルカメラが出力する画像データを単純に合成した場合には不自然な色再現の画像が生成されてしまうといった問題点がある。
【０００８】
また、このような画像合成においては、複数画像間の位置合わせを正確に行わないと合成した画像は手ぶれした画像のようになってしまい画質が著しく低下する。通常、複数の画像間の位置合わせは、画像間の対応付けから最小自乗法を用いて推定したカメラの移動パラメータを用いて行われる。しかし、画像間を対応付けしたデータの中に、対応が正しくないデータや、被写体の一部が移動したことに帰因する、カメラの移動とは関係のないデータが含まれると、カメラの移動パラメータの推定誤差が大きくなり、位置合わせの精度が低下する。
【０００９】
このような問題点に鑑み、自乗誤差の中央値を最小にする基準によりカメラの移動パラメータの推定を行うLMedS法、ランダムに選択した対応付けから推定した移動パラメータを基に、大きな誤差のあるデータを排除し信頼性の最も高いパラメータを選択するRANSAC法などが提案されている。
【００１０】
しかしながら、LMedS法は、誤差の含まれるデータの割合が小さい場合には収束性が高いものの、誤差の含まれるデータの割合が大きい場合には安定しない。また、RANSAC法においては、誤差の含まれるデータの割合が大きい場合にも安定性がよいものの、再現性を高めるためには膨大な組み合わせにて処理を行う必要があった。
【００１１】
本発明はこのような従来技術の問題を解決することを目的とする。
【課題を解決するための手段】
【００１２】
上述の目的は、適正露出条件とは異なる露出条件で撮影された、重複部分を有する複数の画像間の動きを検出する動き検出手段と、検出した動きに基づいて、複数の画像を位置合わせして合成する合成手段とを有する画像処理装置であって、複数の画像の各々を対象画像として、所定の輝度値を有する画素を用いて推定した光源の色温度に基づいて白バランス調整用の係数を算出し、当係数を用いて対象画像の白バランスを調整する白バランス調整手段を有し、白バランス調整手段が、所定の輝度値として、異なる露出条件と適正露出条件との関係に応じて補正した値を用いて光源の色温度を推定し、動き検出手段及び合成手段が、白バランス調整後の画像に対して動きの検出及び合成を行うことを特徴とする画像処理装置によって達成される。
【００１３】
また、上述の目的は、適正露出条件とは異なる露出条件で撮影された、重複部分を有する複数の画像間の動きを検出する動き検出手段と、検出した動きに基づいて、複数の画像を位置合わせして合成する合成手段とを有する画像処理装置であって、合成手段により合成された画像を対象画像として、所定の輝度値を有する画素を用いて推定した光源の色温度に基づいて白バランス調整用の係数を算出し、当係数を用いて対象画像の白バランスを調整する白バランス調整手段を有し、白バランス調整手段が、所定の輝度値として、適正露出条件で撮影された画像に対して用いる輝度値を用いて光源の色温度を推定することを特徴とする画像処理装置によっても達成される。
【００１４】
また、上述の目的は、重複部分を有する第１及び第２の画像を位置合わせするための移動パラメータを求める動き検出装置であって、第１の画像と、第２の画像との対応点を検出する対応点検出手段と、対応点の信頼性を判定する判定手段と、判定手段により信頼性が高いと判定された対応点の組み合わせに基づいて移動パラメータを推定する第１の推定手段と、第１の推定手段が推定した移動パラメータの各々について、推定した移動パラメータを用いて推定した対応点との誤差が所定値以下である合格対応点を検出された対応点から検出する合格対応点検出手段と、合格対応点が最大数となる場合の合格対応点を用いて、移動パラメータを推定し、推定結果を最終的な移動パラメータとする第２の推定手段とを有することを特徴とする動き検出装置によっても達成される。
【００１５】
また、上述の目的は、本発明の動き検出装置を動き検出手段として有する本発明の画像処理装置と、複数の画像を撮影する撮影手段とを有することを特徴とする撮像装置によっても達成される。
【発明の効果】
【００１６】
このような構成により、本発明によれば、複数の画像を合成して生成する画像における色再現性を改善することができる。
【００１７】
また、別の本発明によれば、複数の画像の位置合わせの安定性及び精度を向上することができる。
【発明を実施するための最良の形態】
【００１８】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
（第１の実施形態）
図１は本発明の第１の実施形態に係る画像処理装置としてのデジタルスチルカメラ１００の構成例を示す図である。
【００１９】
デジタルスチルカメラ１００は、脱着可能な記録媒体２００（例えば半導体メモリカード、光ディスク等）を利用可能である。撮像ブロック１０、画像処理ブロック２、画像メモリ３０、画像合成ブロック４０、符号化・記録ブロック５０を有し、これら各ブロックを制御部６０が制御することによりデジタルスチルカメラ１００の機能が実現される。
【００２０】
撮像ブロック１０において、撮像部１１は、図示しない撮像レンズ、ＣＣＤ等の撮像素子、撮像素子の出力信号のゲインを調整するゲイン調整回路、ゲイン調整後の信号をデジタル信号に変換するＡ／Ｄ変換回路より構成される。このように、撮像部１１は、撮像素子から読み出したアナログ信号をデジタルデータに変換し、デジタル画像データとして出力する。
【００２１】
露出調整部１２は、撮像部１１から出力されたデジタル画像データの所定領域の輝度に基づき、所定のプログラム線図に従いシャッター速度と絞り値を決定し、撮像部１１の撮像素子の露光時間と撮影レンズの絞りを制御する。
【００２２】
画像処理ブロック２０において、白バランス検出部２１は、撮像部１１から出力され、一旦画像メモリ３０に記憶された画像データから、白バランスの調整を行うためのパラメータ値を出力する。
【００２３】
画素補間部２２は、撮像素子の各画素から得られる輝度値と、その周囲の画素の輝度値と、撮像素子に用いられる色フィルタの色配列とから、各画素のＲＧＢ値を補間により求め、カラー画像データを出力する。
【００２４】
画像補正部２３は、画素補間部２２が出力するカラー画像データに対し、色再現特性が所望の特性になるように色補正を行う。また、被写体の輪郭部分を強調するエッジ強調処理を行ったり、画像データのＲＧＢ各チャンネルについて、所望の階調特性になるようにテーブル参照によってγ補正変換を行う。
【００２５】
画像合成ブロック４０において、動き検出部４１は、画像メモリ３０に記憶された複数の画像データ間の動きを検出する。
画像合成部４２は、動き検出部４１で検出された動きを補正するように複数の画像データの位置合わせを行い、合成する。
符号化・記録ブロック５０において、画像圧縮部５１は、ＪＰＥＧ方式等の所定の方式により画像メモリ３０に記憶された画像データを圧縮する。
【００２６】
記録再生部５２は、画像圧縮部５１が圧縮した画像データに対し、例えば撮影日時や絞り、シャッタースピード、カメラの機種情報といった所定の付帯情報を追加し、所定の形式に従った画像データファイルを形成する。このような、撮影画像データのファイル形式としては、Ｅｘｉｆ形式が一般に用いられている。そして、この画像データファイルを記録媒体２００に記録したり、すでに記録媒体２００に記録された画像データファイルを読み出して、不図示の液晶モニタ等に表示するための画像再生処理等を行う。
【００２７】
まず、本実施形態におけるデジタルスチルカメラ１００における通常撮影時の動作を図６に従って説明する。
ユーザが被写体を撮影するために不図示のシャッターボタンを半押しすると、制御部６０がそれを検出し、撮像部１１の出力を用いて露出調整部１２により露光時間と撮影レンズの絞り値を決定する。そして、シャッターボタンが全押しされると、決定した露出条件に基づいて撮影を行う。撮像部１１からデジタル画像データが出力され、画像メモリ３０に記憶される（Ｓ１０１）。
【００２８】
白バランス検出部２１は撮像部１１から出力され、画像メモリ３０に記憶された画像データに含まれる所定の基準輝度レベルの画素値に対して統計的な解析を行い、光源の色温度を推定する。そして、推定した光源の色温度に基づいて、画像データから算出された所定の統計量が所定の値（グレー）になるように白バランスの調整を行うための係数を求める（Ｓ１０２）。このとき、デジタルスチルカメラに設定可能な白バランスが複数種ある場合は、各白バランスに応じて統計量の目標値があり、それぞれのモードに最適な係数が求まる。これらの係数はＲＧＢ各チャンネルに対して求める。
【００２９】
画素補間部２２は白バランス検出部２１で求まった係数を用いて、画像メモリ３０に記憶された画像データからＲＧＢ３チャンネルのカラー画像データを補間する（Ｓ１０３）。
【００３０】
本実施形態において、撮像部１１に含まれる撮像素子が用いる色フィルタの配列例を図２に示す。図２に示すように各画素位置においては、ＲＧＢの内、１つのチャンネルの画素値しか得られないので、フィルタの色と異なるチャンネルの画素値は補間により求める必要がある。このとき、フィルタの色がＧの画素位置におけるＧチャンネルの値を求める場合には、その位置から得られる輝度値にＧチャンネルに対応した係数を積算した値とする。また、その位置におけるＲまたはＢチャンネルの値を求める場合には、隣接する２つのＲ又はＢフィルタに対応する位置の輝度値に各チャンネルに対応した係数を積算し、平均した値とする。
【００３１】
また、フィルタの色がＲまたはＢの画素位置においては、フィルタと同色のチャンネル値を求める場合には、当該位置の輝度値に各チャンネルに対応した係数を積算した値とする。また、フィルタと異なる色のチャンネルの画素値を求める場合には、隣接する４つの画素の輝度値にその画素のフィルタ色（チャンネル）に対応した係数を積算し、平均した値を出力値とする。
【００３２】
なお、以上の画素の補間方法は一例であって、例えば、フィルタの色がＧの画素位置において、ＲまたはＢチャンネルの値を求める場合に、所定の距離離れたＲ又はＢ画素の値に各チャンネルに対応した係数を積算し、距離に基づいた重み付きの平均値を出力値としてもよい。
【００３３】
画像補正部２３では、画素補間部２２の出力であるカラー画像データに対して、色補正、エッジ強調、γ補正を行う（Ｓ１０４）。
まず、マトリクス演算により色補正の処理を行う。色補正処理では主に画像データの色相、彩度の補正を行う。
【００３４】
次に、エッジ強調処理によって画像の輪郭部分を強調する。まず、画像データにフィルタ処理を施すことにより画像から所定の方向の輪郭部分をそれぞれ抽出する。そして、抽出した輪郭部分に対して、それぞれの方向ごとに最適なエッジ強調フィルタを作用させてエッジ強調を行う。また、このとき輪郭の方向性がなく孤立したノイズ成分に対しては、逆にローパス効果のあるフィルタ処理を行う。
【００３５】
さらに、ＲＧＢ各チャンネルに対して画像データの階調特性を所望の階調特性になるように調整し、ディスプレイの電圧−輝度特性（γ特性）に合わせるためのγ変換をテーブル参照により行う。
【００３６】
画像補正部２３から出力された画像データは一旦、画像メモリ３０に記憶される。画像圧縮部５１は、予め設定された画質又は圧縮率の設定に応じて、この画像データに圧縮符号化処理を行い、記録再生部５２に出力する。記録再生部５２は、圧縮された画像データとともに撮影時の情報などを所定の記録フォーマットに従って追加し、画像データファイルとして記録媒体２００に記録する（Ｓ１０５）。
【００３７】
このような通常撮影では、前述したように被写体輝度が暗い場合、露出調整部１２により設定されるシャッター速度が遅くなるためブレが生じて画質が劣化する恐れがある。したがって、例えば夜景の撮影のように被写体輝度が著しく暗い場合には、以下に説明する画像合成を用いた撮影処理を行うことが好ましい。
【００３８】
以下、本実施形態のデジタルスチルカメラにおける、画像合成を利用した撮影処理について図７のフローチャートを用いて説明する。なお、図６に基づいて説明した通常撮影と同じ動作を行う処理については簡略して説明する。また、本実施形態では簡単のため同一撮影条件で、重複部分を有する画像を２枚撮影し、これら２枚の画像を合成して１枚の画像を生成する場合について説明する。このような合成撮影は、例えば付図示の撮影モード設定ダイヤルなどにより設定することが可能であり、制御部６０は合成撮影モードが設定されている場合に以下の撮影制御を行う。
【００３９】
ユーザが被写体を撮影するために不図示のシャッターボタンを半押しすると、制御部６０がそれを検出し、撮像部１１の出力を用いて露出調整部１２により露光時間と撮影レンズの絞り値を決定する。そして、シャッターボタンが全押しされると、決定した露出条件に基づいて２枚連続して撮影を行う。撮像部１１から２枚分のデジタル画像データが出力され、画像メモリ３０に記憶される（Ｓ２０１）。このとき、後段の処理で画像が合成されるので、露光時間は通常撮影する場合の１／２の時間が設定される。
【００４０】
そして、白バランス検出部２１は撮像部１１から出力され、画像メモリ３０に記憶された各画像データに対し、通常撮影時と同様の方法を適用し、白バランスの調整を行うための係数を求める（Ｓ２０２）。
【００４１】
ただし、各画像データは後段で２枚合成することを想定して通常の１／２の露光時間で撮影されているので、通常撮影時と同一の基準輝度レベルの画素値に対して統計的な解析を行って光源の色温度を推定した結果から係数を算出すると、適正な白バランス調整が出来ない。これは、通常撮影時と同一の輝度レベルの画素値は、実際には通常撮影時の２倍の輝度レベルの画素値に相当するからである。
【００４２】
さらに、後段の画像補正処理（色補正と階調補正）では、最適に露出調整され、所定輝度レベルを基準に白バランスが補正された画像が入力されるものとして処理パラメータが最適化されている。そのため、白バランス調整用の係数を算出するための基準輝度レベルがずれた場合、結果として得られる画像の色再現が不自然になることが懸念される。
【００４３】
これが、画像データを単純に合成する従来の合成撮影処理で得られる画像の色再現性が不自然となる原因である。また、白バランスを検出する基準となる輝度レベルが通常撮影時と合成撮影時とで異なっていると、同じ被写体を撮影した場合でも、通常撮影時と合成撮影時とで色再現が異なってしまう。
【００４４】
このような問題に鑑み、本実施形態では、予め後段で２枚の画像が合成されることを考慮し、２枚の画像を合成する合成撮影時には、通常撮影で白バランスを行う際の基準となる輝度レベルの１／２の輝度レベルを基準として白バランスの調整を行うための係数を求める。
【００４５】
次に、画素補間部２２は白バランス検出部２１で求まった係数を用い、画像メモリ３０に記憶された２枚の画像データの白バランスを調整した後、補間によりＲＧＢ３チャンネルのカラー画像データを生成する（Ｓ２０３）。そして、生成された２枚のカラー画像データを一旦、画像メモリ３０に記憶する。
【００４６】
動き検出部４１は、まず、画像メモリ３０に記憶された２枚の画像データから部分領域ごとに位置ずれ量を対応点ベクトルとして検出する。そして検出された位置ずれ量をもとにカメラの移動パラメータを推定し、出力する（Ｓ２０４）。動き検出部４１の構成及び動作については、後で詳細に説明する。
【００４７】
次に、画像合成部４２は、画像メモリ３０に記憶されている２つの画像データを、動き検出部４１で推定したカメラの移動パラメータを用いて合成する（Ｓ２０５）。
【００４８】
本実施形態では、第１の画像データの各画素に対応する第２の画像データ中の画素位置を求め、対応する２つの画素を合成して合成画像の画素値とする。
【００４９】
まず、第１の画像データの各画素に対する第２の画像データ中の画素位置を動き検出部４１で推定したカメラの移動パラメータを用いて算出する。すなわち、（式１）において第１の画像データの各画素の座標を（ｘ，ｙ）としたとき、対応する第２の画像データ中の画素位置を（ｘ’，ｙ’）として求める。そして、第１の画像データの画素位置（ｘ，ｙ）の画素値および第２の画像データの画素位置（ｘ’，ｙ’）の画素値を画像メモリ３０から読み込み、２つの画素値を加算して合成画像における画素値とし、合成画像の画素値として画像メモリ３０に記憶する。以上の処理を第１の画像データの全画素位置について繰り返し、合成画像データを得る。
【００５０】
なお、以上の処理で画素値とはＲＧＢ値を表すものとする。また、（式１）で算出した画素位置（ｘ’、ｙ’）が画像領域範囲外である第１の画像データの画素については、画素値を２倍した値を合成画像の画素値とする。
【００５１】
次に、画像補正部２３では、画像合成部４２で合成され、画像メモリ３０に記憶された合成画像データに対して、通常撮影時と同様にして色補正、エッジ強調処理、γ変換を行う（Ｓ２０６）。
【００５２】
画像補正部２３から出力された画像データは一旦、画像メモリ３０に記憶される。そして、設定に基づいて画像圧縮部５１により圧縮され、記録再生部５２に出力される。記録再生部５２は、圧縮された画像データとともに撮影時の情報等を所定の画像フォーマットに従って追加し、記録媒体２００に記録する（Ｓ２０７）。
【００５３】
次に、図９及び図１０に従って動き検出手段４１の動作を詳細に説明する。なお、図９は動き検出手段４１の構成例を示すブロック図、図１０は動き検出処理を説明するフローチャートである。
まず、対応点検出部４１１は、画像メモリ３０に記憶された２枚の画像データから部分領域ごとに位置ずれ量を対応点ベクトルとして検出する（Ｓ４０１）。
【００５４】
図３の（ａ）、（ｂ）に画像メモリ３０に記憶された第１の画像データ、第２の画像データの例を示す。
以下、本実施形態ではテンプレートマッチングを用いて重複部分を有する２枚の画像の対応点検出を行う場合の動作について説明する。テンプレートマッチングは基本的に複数の画像において最も相関の高い部分同士を対応付ける方法である。本実施形態ではまず、第１の画像データおよび第２の画像データのＲＧＢ値を輝度値に変換する。ＲＧＢ値の輝度値への変換には、例えば、各画素を構成するＲＧＢ値の平均値を擬似的な輝度値として出力する方法を用いる。
【００５５】
次に、輝度値に変換された第１の画像から所定の領域をテンプレート切り出す。例えば、図４のように第１の画像データを分割した小領域ｔをテンプレートとして切り出す。次に、切り出した全テンプレートについて第２の画像中から対応点を抽出する。
【００５６】
まず、切り出したテンプレートに対応する点を探索するための領域を第２の画像に設定する。この探索領域は、カメラの撮影条件である焦点距離、露光時間にブレ量が依存することから、焦点距離、露光時間に応じて設定する。図５は、第１の画像の領域ｔをテンプレートとした場合の探索領域Ｓの例を示している。この探索領域Ｓ内でテンプレートを平行にずらしていき、第１の画像（テンプレート）と、対応する第２の画像の領域の各画素について、輝度値の差分が計算される。そして、差の絶対値の総和が最小となる位置を対応点位置とする。
【００５７】
対応点位置が求まったら、その信頼性の判定を行う。信頼性の判定は対応点における、テンプレートとテンプレートに対応する第２の画像の領域との相関を表す値に基づいて行うことができる。例えば輝度差分絶対値の総和の最小値が第１の所定の閾値以下であり、かつ輝度差分絶対値の総和の最小値と２番目に小さい値との差が第２の所定の閾値以上である場合に、対応点に信頼性があると判定する。そして、信頼性があると判定された対応点の第１および第２の画像中の座標を対応点記憶部４１２に格納しておく。また、同時に対応点の信頼性の指標として差の絶対値の総和の最小値を対応点記憶部４１２に記憶しておく。
【００５８】
なお、ここでは、輝度値の差の絶対値の総和が最小となる位置を対応点位置としたが、例えば相関演算を行って、相関値が最大となる位置を対応点位置としてもよい。また、輝度値に対する相関に基づいて対応点抽出を行ったが、輝度の微分値を用いてもよい。また、テンプレートマッチングを用いて対応点抽出を行ったが、それぞれの画像中から特徴点を抽出し、特徴量の相関に基づいて対応点抽出を行ってもよい。
【００５９】
次に、各部分領域の位置ずれ量である対応点ベクトルから、カメラの移動パラメータを推定する。カメラの移動パラメータは、合成時の座標変換に用いる。
【００６０】
第１の画像に対して第２の画像の幾何的位置関係を以下の（式１）のように定式化する。この関係は２つの画像が平行移動、面内回転、変形の関係にあるとの想定に基づく。（式１）は、第１の画像中の点（ｘ，ｙ）が座標変換行列により、第２の画像中の点（ｘ’，ｙ’）に移動することを表している。
【００６１】
【数１】
2006229868.tif 000003
【００６２】
そして、（式１）の座標変換行列要素であるカメラの移動パラメータａ１１，ａ１２，．．．，ａ３２を、抽出された対応点の組から求める。（式１）に基づくカメラの移動パラメータ算出には最低３組の対応点が必要である。
【００６３】
そのため、まず、対応点選択部４１３において、対応点記憶部４１２に記憶された複数の対応点の組の中から、差の絶対値の総和が所定の閾値よりも小さい、すなわち信頼性の高い対応点を３組選択する（Ｓ４０２）。
【００６４】
次に、パラメータ算出部４１４において、選択された３組の対応点の座標からカメラの移動パラメータを算出する。すなわち、カメラの移動パラメータａ１１，ａ１２，．．．，ａ３２を、３組の第１の画像中の点（ｘ，ｙ）および第２の画像中の点（ｘ’，ｙ’）から算出する（Ｓ４０３）。
【００６５】
次に、合格判定部４１５において、パラメータ算出部４１４で求めたカメラ移動パラメータを用いて推定した対応点と、対応点記憶部４１２に記憶された実際に検出された対応点との誤差を求め、その誤差量をもとに合格判定を行う。この処理を対応点記憶部４１２に記憶された全ての対応点の組について行い、合格となる対応点（合格対応点）の数をカウントする（Ｓ４０４）。
【００６６】
合格判定部４１５における、各対応点の誤差算出処理の詳細を以下に説明する。
【００６７】
まず、記憶された全ての対応点について、第１の画像中の点（ｘ，ｙ）とパラメータ算出部４１４で求めたパラメータとから、第２の画像中の点の推定値（ｘ”，ｙ”）を（式２）のように求める。
【００６８】
【数２】
2006229868.tif 000004
【００６９】
そして、求めた推定値（ｘ”，ｙ”）と、実際に検出されている第２の画像中の点（ｘ’，ｙ’）との距離の自乗を誤差量として評価する。
【００７０】
そして、求めた誤差量が所定の閾値以下である第２の画像中の点を含む対応点を合格対応点としてカウントする。なお、このときカウントした合格対応点と、対応点記憶部４１２中の合格対応点を示す全ポインタを合格対応点記憶部４１６に記憶しておく。
【００７１】
以上のＳ４０２からＳ４０４の処理を信頼性の高い３つの対応点の全ての組について繰り返す。すなわち、Ｓ４０２において対応点記憶部４１２に記憶された複数の対応点の組の中から所定の閾値よりも小さい対応点の別の３組を選択し、Ｓ４０３においてパラメータを算出し、Ｓ４０４において合格対応点の数をカウントする。そして、カウントした合格対応点数が合格対応点記憶部４１６に既に記憶されている合格対応点数よりも多い場合には、新たにカウントした合格対応点数と対応点記憶部４１２中の合格対応点を示す全ポインタを合格対応点記憶部４１６に記憶するように更新する。
【００７２】
なお、信頼性の高い３つの対応点の全組み合わせについて処理を行う場合、信頼性の高い対応点の数が多いと膨大な組み合わせ量になるので、あらかじめ望ましい組み合わせ数になるように対応点の信頼性を判定する閾値を制御することが好ましい。
【００７３】
このように、信頼性の高い３つの対応点の全組み合わせについてＳ４０２からＳ４０４の処理を行うと、合格対応点記憶部４１６に記憶されたポインタが示す合格対応点の数は、処理終了時に最も多くなる。
【００７４】
そして、最も多い合格対応点の組をもとにパラメータ算出部４１４で最終的なカメラ移動パラメータの推定を行う（Ｓ４０５）。すなわち、合格対応点記憶部４１６に記憶された、合格対応点を示すポインタを参照して、対応点記憶部４１２に記憶された対応点のうち合格対応点のデータを読み込む。そして、全合格対応点の、第１の画像中の点（ｘ，ｙ）と対応する第２の画像中の点（ｘ’，ｙ’）の組について（式１）の関係が成立するよう、最小自乗法を用いてカメラの移動パラメータａ１１，ａ１２，．．．，ａ３２を推定する。なお、全合格対応点からのカメラ移動パラメータ推定には、最小自乗法の代わりにLMedS法を用いることもできる。
【００７５】
以上説明したように、本実施形態では画像合成を行う前の画像データに対して、予め合成による輝度レベルの変化を予測して最適な露光条件下と略同一の白バランス補正を行うようにした。これにより、合成撮影時においても、不自然な色再現の画像が生成されてしまうことなく、通常撮影時と同等の色再現性を有する画像を取得することができる。
【００７６】
なお、本実施形態では、白バランス検出を行うに際し、通常撮影で白バランスを行う際の基準となる輝度レベルの１／２の輝度レベルを基準としたが、白バランスを行う際の基準となる輝度レベルはそのままで、入力画像データの輝度レベルを２倍に補正して白バランス検出を行うようにしても同等の効果が得られることはいうまでもない。
【００７７】
また、本実施形態では２枚の画像を合成して１枚の画像を生成する場合について説明したが、より多くの画像から１枚の画像を合成してもよい。例えば、ｎ（ｎ≧３）枚の画像を合成する場合には、通常撮影時の１／ｎの露光時間で撮影し、白バランス補正用の係数を求める際に基準とする輝度レベルを通常撮影時の１／ｎとすればよい。
【００７８】
また、本実施形態では複数画像間の対応点のうち、信頼性の高い対応点の複数の組み合わせに基づいて複数のカメラ移動パラメータ候補を推定したのち、複数のカメラ移動パラメータ候補の各々について、実際に検出された対応点の最大数と対応がとれているもの（誤差の少ない）を探索する。そして、探索されたカメラ移動パラメータ候補に適合した対応点（合格対応点）から再度最適なカメラ移動パラメータを推定する。これにより、安定性が高く、かつ精度のよいカメラ移動パラメータを推定することができ、結果として複数の画像の位置合わせ精度が向上する。
【００７９】
従って、合成撮影により得られる画像のブレが抑制されて品質が向上するほか、パノラマ画像の生成などの画像合成処理における位置合わせや、ノイズ除去、異なる露光条件で撮影した画像の合成によるダイナミックレンジ拡大処理に対しても適用できることはいうまでもない。
【００８０】
なお、本実施形態では（式１）で表現されるカメラ移動パラメータの推定を行う場合について説明したが、カメラの三次元的な移動を表すＦ行列（Fundamental Matrix）の推定を行う場合についても本発明は適用できる。
【００８１】
（第２の実施形態）
以下、本発明の第２の実施形態について説明する。なお、本実施形態の構成は第１の実施形態の構成と略同等であるため、撮影した画像を合成して記録する合成撮影時の動作についてのみ説明する。
【００８２】
図８は、本実施形態のデジタルスチルカメラにおける合成撮影時の動作を説明するフローチャートである。なお、本実施形態において、各部での詳細の動作は特に説明しない限り第１の実施形態で説明した動作に準ずる。また、本実施形態でも、２枚の画像を合成する場合について説明する。
【００８３】
まず、Ｓ３０１では、第１の実施形態のＳ２０１と同様にして、通常撮影時の１／２の露光時間で２枚の画像を撮影する。
【００８４】
次に、動き検出部４１は、まず、画像メモリ３０に記憶された２枚の画像データから部分領域ごとに位置ずれ量を対応点ベクトルとして検出する。そして検出された位置ずれ量をもとにカメラの移動パラメータを推定し、出力する（Ｓ３０２）。なお、本実施形態では画素補間処理前に動き検出を行っているため、動き検出部４１が用いる画像データは各画素がＲＧＢ値を持つカラー画像データではなく、各画素が色フィルタ配列に従った１つの色チャンネルの輝度値を有する画像データである。しかし、本実施形態では、このような各画素値をそのまま利用し、第１の実施形態に示した対応点抽出の方法に準じてテンプレートマッチングにより対応点ベクトルを得る。
【００８５】
次に、画像合成部４２は、画像メモリ３０に記憶されている２つの画像データを動き検出部４１で推定したカメラの移動パラメータを用いて合成する（Ｓ３０３）。画像合成処理についても、動き検出処理と同様、入力画像はカラー画像データではないが、第１の実施形態に示した画像合成の方法に準じて、対応する２つの画素を合成して合成画像の画素値とする。
【００８６】
そして白バランス検出部２１は、画像メモリ３０に記憶された合成画像データの所定の輝度レベルの画素値に対して統計的な解析を行って光源の色温度を推定する。そして、画像データから算出された所定の統計量が所定の値（グレー）になるように白バランスの調整を行うための係数を求める（Ｓ３０４）。このとき、合成画像データは既に画像合成部４２による合成処理により、通常撮影を行った場合と同等の明るさとなっているので、通常撮影時と同一の輝度レベルの画素値を基準とした統計的な解析により、光源の色温度を推定することができる。
【００８７】
次に、画素補間部２２は白バランス検出部２１で求まった係数を用いて、画像メモリ３０に記憶された合成画像データに補間処理を行い、各画素がＲＧＢ３チャンネルの値を有するカラー合成画像データを生成する（Ｓ３０５）。そして、生成されたカラー合成画像データは一旦、画像メモリ３０に記憶される。
【００８８】
次に、画像補正部２３では、画像メモリ３０に記憶されたカラー合成画像データに対して、色補正、エッジ強調処理、γ変換を行う（Ｓ３０６）。
【００８９】
画像補正部２３から出力されたカラー合成画像データは一旦、画像メモリ３０に記憶される。そして、設定に応じた画質又は圧縮率で画像圧縮部５１により圧縮され、記録再生部５２に出力される。記録再生部５２は、圧縮された画像データとともに撮影時の情報等を所定の画像フォーマットに従って追加し、記録媒体２００に記録する（Ｓ３０７）。
【００９０】
以上説明したように、本実施形態によれば、画像合成後の画像データから白バランス補正用の係数を算出するようにしたので、第１の実施形態の効果に加え、通常撮影時と同じ処理を適用して係数を算出することができる。
【００９１】
なお、本実施形態においても、第１の実施形態と同様、３枚以上の画像を合成するように構成することができる。
【００９２】
（第３の実施形態）
第１及び第２の実施形態での合成撮影は、同一露光条件で撮影した複数の画像を合成するものであった。しかし、異なる露光条件で撮影した複数の画像を合成する合成撮影処理に対しても本発明は適用可能である。
【００９３】
すなわち、ＣＭＯＳセンサやＣＣＤセンサなどの撮像素子は、銀塩フィルムと比べてダイナミックレンジが狭く、逆光時などには白とびや黒つぶれが発生する。このような問題を解決するため、異なる露光条件にて連続撮像した複数の画像を合成し、実質的にダイナミックレンジが広い画像を実現する方法が提案されている（特許第３１１０７９７号）。
【００９４】
以下、このような合成撮影方法に対して本発明を適用した例として、最適露光条件に対して１／２および２倍の露光量の、２枚の画像を合成する場合について説明する。
【００９５】
なお、本実施形態のデジタルスチルカメラの基本的な構成と、合成撮影時の動作の流れは第１の実施形態と略同等でよいため、以下本実施形態のデジタルスチルカメラにおける合成撮影時の処理を図７のフローチャートを再度用いて説明する。
【００９６】
まず、Ｓ２０１で、２枚の画像を連続撮影する。ただし、本実施形態では、夫々の画像の露光時間は通常撮影の場合に比べ、１／２（短時間露光画像）および２倍（長時間露光画像）の時間が設定される。
【００９７】
そして白バランス検出部２１は画像メモリ３０に記憶された各画像データから、第１の実施形態と同様にして白バランスの調整を行うための係数を求める（Ｓ２０２）。ただし、本実施形態では、光源の色温度推定に用いる画素の基準輝度レベルを、短時間露光画像では通常撮影の２倍の輝度レベルに、長時間露光画像では通常撮影の１／２倍の輝度レベルとして、白バランスの調整を行うための係数を求める。
【００９８】
次に、画素補間部２２により、白バランス検出部２１で求まった係数を用い、画像メモリ３０に記憶された画像データを補間し、ＲＧＢ３チャンネルのカラー画像データを生成する（Ｓ２０３）。そして、補間された２枚のカラー画像データは一旦、画像メモリ３０に記憶される。
【００９９】
そして、動き検出部４１により、第１の実施形態と同様にしてカメラの移動パラメータを推定し、出力する（Ｓ２０４）。なお、本実施形態での２つの入力画像は露光量が異なるので、被写体輝度が同じであっても輝度値が異なる。そのため、差分演算を行う前に輝度値を補正する。具体的には、短時間露光の画像に対しては輝度値を２倍、長時間露光の画像に対しては輝度値を１／２倍に補正する。また、長時間露光の画像において画素値が飽和している領域については誤抽出の恐れがあるので対応点抽出は行わないようにする。
【０１００】
次に、画像合成部４２は、第１の実施形態と同様にして、画像メモリ３０に記憶されている２つの画像データを、動き検出部４１で推定したカメラの移動パラメータを用いて合成する（Ｓ２０５）。
【０１０１】
以下、第１の実施形態と同様にして、画像補正部２３による色補正、エッジ強調処理、γ変換（Ｓ２０６）、画像圧縮部５１による圧縮並びに記録再生部５２による記録（Ｓ２０７）を行う。
【０１０２】
以上説明したように、本実施形態によれば、異なる露光条件で撮影した複数の画像を用いる合成撮影処理においても、通常撮影時と同様の色再現性を実現することができる。
【０１０３】
また、本実施形態においても、３枚以上の画像を合成するように構成することができる。この場合、個々の画像の露光時間と通常撮影時の露光時間との関係に応じて光源の色温度推定に用いる画素の基準輝度レベルと動き検出時の輝度補正量を設定すればよい。
【０１０４】
（他の実施形態）
上述の実施形態では、デジタルスチルカメラ内で複数の画像を合成する構成について説明したが、例えば、撮像部１１で取得した画像データをそのまま記録媒体２００に記録し、記録媒体２００から複数の画像データを汎用のコンピュータに読み込み、前述した実施形態の機能を実現するためのコンピュータプログラムを用いて上述の動き検出及び画像合成を行っても本発明の目的が達成されることは言うまでもない。その場合、前述した実施形態の機能を実現するためのコンピュータプログラムを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたコンピュータプログラムを読み出し実行することになる。この場合、記録媒体から読み出されたコンピュータプログラム自体が前述した実施形態の機能を実現することになり、そのコンピュータプログラムを記録した記録媒体は本発明を構成することになる。
【０１０５】
また、コンピュータが読み出したコンピュータプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのコンピュータプログラムの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０６】
さらに、記録媒体から読み出されたコンピュータプログラムが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのコンピュータプログラムの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０７】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するコンピュータプログラムが格納されることになる。
【図面の簡単な説明】
【０１０８】
【図１】本発明の実施形態に係るデジタルスチルカメラの構成を示すブロック図である。
【図２】本発明の実施形態に係るデジタルスチルカメラの撮像素子が用いる色フィルタの配列例を示す図である。
【図３】入力画像の一例を示す図である。
【図４】対応点検出でのテンプレートの切り出し例を示す図である。
【図５】対応点検出での探索領域の設定例を示す図である。
【図６】本発明の実施形態に係るデジタルスチルカメラにおける、通常撮影時の動作を説明するフローチャートである。
【図７】本発明の第１の実施形態に係るデジタルスチルカメラにおける合成撮影時の動作を説明するフローチャートである。
【図８】本発明の第２の実施形態に係るデジタルスチルカメラにおける合成撮影時の動作を説明するフローチャートである。
【図９】本発明の第１の実施形態に係るデジタルスチルカメラにおける動き検出部の構成例を示す図である。
【図１０】図９の動き検出部の動作を説明するフローチャートである。
【図１】
2006229868.tif 000005
【図２】
2006229868.tif 000006
【図３】
2006229868.tif 000007
【図４】
2006229868.tif 000008
【図５】
2006229868.tif 000009
【図６】
2006229868.tif 000010
【図７】
2006229868.tif 000011
【図８】
2006229868.tif 000012
【図９】
2006229868.tif 000013
【図１０】
2006229868.tif 000014