(57)【特許請求の範囲】
【請求項１】
複数の画像の中から基準画像を決定する決定手段と、
前記複数の画像の信号レベルを、前記基準画像の信号レベルに応じて決まる信号レベルに合わせるための補正ゲインを画像毎に算出する補正ゲイン算出手段と、
前記補正ゲインを用いて各画像を補正して複数の補正画像を生成する補正手段と、
を有し、
前記決定手段は、前記複数の画像の中から設定された仮の基準画像の信号レベルに、前記複数の画像の信号レベルを合わせるために算出された夫々の仮の補正ゲインを比較し、前記仮の補正ゲインが最小となる画像を前記基準画像として決定することを特徴とする画像処理装置。
【請求項２】
前記複数の画像のそれぞれを複数のブロックに分割し、ブロック内の画素を積分してブロック毎のブロック積分値を算出するブロック積分値算出手段と、
前記仮の基準画像と前記仮の基準画像以外の画像の、同位置における前記ブロック積分値の比率からブロック毎に補正ゲインを算出するブロック毎補正ゲイン算出手段と、
前記ブロック毎補正ゲインに基づいて前記仮の補正ゲインを算出する仮補正ゲイン算出手段と、を有することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記仮補正ゲイン算出手段は、
２画像間の前記ブロック積分値の比率の中から最頻値の値を、仮の補正ゲインとして決定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記ブロック積分値算出手段は、前記各ブロックの画素値において、第１の閾値以下かつ第２の閾値以上の値を持つ画素値のみを積分し、第１の閾値以下かつ第２の閾値以上の値を持つ画素値のみを積分した値を加算した画素数で正規化して前記ブロック積分値を算出することを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
前記複数の補正画像を合成して合成画像を出力する合成手段を備えることを特徴とする請求項１乃至４のいずれか１つに記載の画像処理装置。
【請求項６】
前記補正ゲイン算出手段は、前記複数の画像間の露出段差に応じて前記補正ゲインを算出することを特徴とする請求項１乃至５のいずれか１つに記載の画像処理装置。
【請求項７】
前記合成手段は、異なる露出条件で撮像された複数の画像を、基準となる画像の輝度に応じた合成比率で合成することを特徴とする請求項５に記載の画像処理装置。
【請求項８】
複数の画像を撮像する撮像手段と、
前記撮像手段への入射光量を制御する光量制御手段と、
請求項１乃至７のいずれか１つに記載の画像処理装置とを有する撮像装置。
【請求項９】
前記光量制御手段は、絞りまたはメカニカルシャッターであることを特徴とする請求項８に記載の撮像装置。
【請求項１０】
前記撮像装置の振れ量を検出する振れ量検出手段を有し、
前記補正ゲイン算出手段は、前記振れ量に基づいて位置を合わせた２画像間の比較によって前記補正ゲインを算出することを特徴とする請求項８または９に記載の撮像装置。
【請求項１１】
複数の画像の中から基準画像を決定する決定ステップと、
前記複数の画像の信号レベルを、前記基準画像の信号レベルに応じて決まる信号レベルに合わせるための補正ゲインを画像毎に算出する補正ゲイン算出ステップと、
前記補正ゲインを用いて各画像を補正して複数の補正画像を生成する補正ステップと、を有し、
前記決定ステップでは、前記複数の画像の中から設定された仮の基準画像の信号レベルに、前記複数の画像の信号レベルを合わせるために算出された夫々の仮の補正ゲインを比較し、前記仮の補正ゲインが最小となる画像を前記基準画像として決定することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、撮影時における露出誤差を検出し補正する方法に関する。
【背景技術】
【０００２】
撮像装置は、処理の目的に応じて所望の露出条件で撮影を行う。しかし、撮影時のメカシャッター、および絞り駆動の精度がばらつくことに起因して、撮像画像間の信号レベルは、所望の各露出条件に対応した信号レベルに対し、ばらつきが生じる。例えば同じ露出条件（シャッタースピード、絞り、ＩＳＯ感度）の設定で撮影したとしても、絞りの駆動精度がばらついていると、ばらつきの分だけ露光量（露出）が異なり、画像全体の信号レベルが異なる画像が撮影されてしまう。以下、このばらつきのことを露出誤差と呼ぶ。露出誤差の対策として、複数の撮像画像の画素値から露出誤差を補正するゲインを検出し、露出誤差を補正する方法がある。画像から補正ゲインを算出する方法に関する従来技術としては、例えば特許文献１、および特許文献２が挙げられる。
【０００３】
特許文献１では、補正ゲインを算出する際に、共通輝度域の画素値のみを使用し、白とび、および黒潰れ画素によるゲインの誤検出を抑制している。また、特許文献２では、画像を複数の領域に分割し、各領域の信号の平均値から、補正ゲインの算出を行っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２６３５２２号公報
【特許文献２】特開２００３−０１８４７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
前述の特許文献１および特許文献２では、複数枚の画像に対して露出誤差補正を行う場合に、補正ゲインの値が１未満となる可能性がある。補正ゲインの値が１未満となると、特に飽和部において、各カラーチャンネルの画素値が一律にゲインダウンされ、各カラーごとの分光感度特性の関係が崩れることによって、現像後の画像に意図しない色つきが生じるという問題がある。
【０００６】
本件では、上記の問題に鑑み、撮像画像間の露出誤差補正処理において、ゲインダウンの発生を抑制することを目的とする。
【課題を解決するための手段】
【０００７】
前記目的を達成するための画像処理装置の一例は、複数の画像の中から基準画像を決定する決定手段と、前記複数の画像の信号レベルを、前記基準画像の信号レベルに応じて決まる信号レベルに合わせるための補正ゲインを画像毎に算出する補正ゲイン算出手段と、前記補正ゲインを用いて各画像を補正して複数の補正画像を生成する補正手段と、を有し、前記決定手段は、前記複数の画像の中から設定された仮の基準画像の信号レベルに、前記複数の画像の信号レベルを合わせるために算出された夫々の仮の補正ゲインを比較し、前記仮の補正ゲインが最小となる画像を前記基準画像として決定することを特徴とする。
【０００９】
また、画像処理方法の一例は、複数の画像の中から基準画像を決定する決定ステップと、前記複数の画像の信号レベルを、前記基準画像の信号レベルに応じて決まる信号レベルに合わせるための補正ゲインを画像毎に算出する補正ゲイン算出ステップと、前記補正ゲインを用いて各画像を補正して複数の補正画像を生成する補正ステップと、を有し、前記決定ステップでは、前記複数の画像の中から設定された仮の基準画像の信号レベルに、前記複数の画像の信号レベルを合わせるために算出された夫々の仮の補正ゲインを比較し、前記仮の補正ゲインが最小となる画像を前記基準画像として決定することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、撮像画像間の露出誤差補正処理において、色付きの発生を抑制することができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態における画像処理装置の一例としてのデジタルカメラの構成を表すブロック図
【図２】仮補正ゲイン算出部１０５のフローチャート
【図３】仮補正ゲイン算出ステップＳ２０２のフローチャート
【図４】ブロック積分値算出ステップＳ３０１，Ｓ３０２のフローチャート
【図５】加速度情報から、手振れ量データを算出するフローチャート
【図６】カメラの変位量から、画素ズレ量を算出する模式図
【図７】第１の実施形態における画像のブロック分割を示す図
【図８】画角内に移動体が存在する場合を示す図
【図９】ヒストグラムによる仮補正ゲインの検出を示す図
【図１０】基準画像決定部１０５２、および、補正ゲイン算出部１０５３の処理を示す図
【発明を実施するための形態】
【００１３】
（第１の実施形態）
以下、図面を参照して、本発明の第１の実施形態について詳細に説明する。なお、本実施形態では、４枚の画像を加算平均しながら合成することで、電子的に手振れを抑制する機能を想定して以降の説明を行う。
【００１４】
図１は、本実施形態における画像処理装置の一例としてのデジタルカメラの構成を示したブロック図である。
【００１５】
撮像部１０２は、制御部１０１により決定される露出条件に従い、所定の回数分の撮像動作を行う。本実施形態では、４回の撮像処理において露出条件は変化しない例を考える。また、本実施形態では、撮像部１０２は、被写体からの光束を取り込むための撮像光学系としてのレンズ、絞り、メカニカルシャッター、それらの駆動系および撮像素子から構成されている。撮像部１０２は、露出条件及び焦点位置などその他の撮影条件に従って、レンズ、絞りおよびメカニカルシャッターを駆動させ、撮像素子への入射光量の光量制御を行う。また、撮像素子は、例えば、一般的な原色カラーフィルタを備える単板カラー撮像素子とする。原色カラーフィルタは、各々６５０ｎｍ、５５０ｎｍ、４５０ｎｍ近傍に透過主波長帯を持つ３種類の色フィルタからなり、各々Ｒ（赤）、Ｇ（緑）、Ｂ（青）の各バンドに対応する色プレーンを撮影する。単板カラー撮像素子では、この色フィルタを画素毎に空間的に配列し、各画素が単一の色プレーンにおける強度を得るので、撮像部１０２からは色モザイク画像が出力されることになる。
【００１６】
Ａ／Ｄ（Ａｎａｌｏｇ／Ｄｉｇｉｔａｌ）変換部１０３では、前記撮像部１０２で撮像された画像信号がデジタルの画像データへ量子化され、補間部１０４に出力される。
【００１７】
補間部１０４ではＲ、Ｇ、Ｂ各画素について補間が行われ、画素毎にＲ、Ｇ、Ｂ全ての色の情報を有する画像データが露出誤差補正部１０５へ出力される。
【００１８】
露出誤差補正部１０５は、Ａ／Ｄ変換部１０３から出力されメモリ１００に記憶されている複数枚の撮像画像を、複数枚のうちの基準画像の信号レベルに合わせて露出誤差を補正し出力する。露出誤差補正部１０５による露出誤差の補正処理の詳細は後述するが、本実施形態では、ホワイトバランス処理のためのホワイトバランスゲインも露出誤差補正部１０５で同時に掛けられる。
【００１９】
信号処理部１０６では、前記露出誤差補正部１０５から出力された複数枚の画像に対し、階調変換処理やノイズリダクション処理など、所定の信号処理を施す。
【００２０】
画像位置合わせ部１０７では、信号処理部１０６から出力された複数枚の画像に対し、位置合わせ処理を行う。本実施形態では位置合わせの手法に関しては特に限定しないが、例えば、画像を小領域に区切って動きベクトルを検出し、前記動きベクトルから射影変換係数を算出して画像を変形することで、位置合わせを行う。
【００２１】
画像合成部１０８では、画像位置合わせ部１０７から出力された、位置合わせ済みの複数枚画像の合成を行う。合成方法は処理の目的によって異なるが、本実施形態では、ノイズの低減を目的としているので画像の加算平均を行う。
【００２２】
さらに、画像合成部１０８では、移動体領域の検出を行い、移動体が多重に合成されることを低減する処理を行う。本実施形態では、前記処理の具体的な方法に関しては特に限定しないが、例えば、画像間の差分値から移動体が存在すると思われる移動体領域を判定し、移動体領域を複数枚の画像のいずれかで置き換える。
【００２３】
画像合成部１０８で生成された合成画像は、画像表示部１０９に出力され、液晶等の表示媒体に表示される。または、合成画像は画像記録部１１０に出力され、例えばＪＰＥＧなど所定の形式で圧縮、符号化され、ＳＤカード等の記録媒体に記録される。あるいは不図示の外部出力に出力されても良い。
【００２４】
次に、露出誤差補正部１０５について、詳細な説明を行う。図１に示すように、露出誤差補正部１０５は、仮補正ゲイン算出部１０５１、基準画像決定部１０５２、補正ゲイン算出部１０５３、補正ゲイン乗算部１０５４によって構成される。露出誤差補正部１０５では、関連する複数の画像の信号レベルを、基準画像の信号レベルに応じて決まる信号レベルに合わせるための補正ゲインを複数の画像毎に算出する。このような補正ゲインを算出することで、露出誤差による誤差のレベルが正確にわからなくても、画像間の露出誤差をキャンセルすることができる。また、本実施形態では、補正ゲインの値がいずれも１以上となるように基準画像を設定するので、ゲインダウンによる色付きが各画像に生じない。また、各画像の補正ゲインを１以上とするために複数の画像の内信号レベルの最も大きい画像を基準画像とする。またこの際、元々撮影条件として複数の画像間に設定されている露出段差を補正しないように補正ゲインを設定する。
【００２５】
ここで、前述したように露出誤差補正部１０５に入力されるデータはＲ、Ｇ、Ｂのデータであり、露出誤差補正はホワイトバランスゲインと同時に各色に掛けられ、Ｒ、Ｇ、Ｂデータが出力される。しかし、露出誤差補正に必要な補正ゲインの演算はＲ、Ｇ、Ｂそれぞれで行われても良いし、Ｒ、Ｇ、Ｂを所定の割合で加重加算して生成される少なくとも１つのデータを用いて行われても良い。いずれの場合も、後述する補正ゲイン算出に必要な演算は同様である。
【００２６】
本発明では、ゲインダウン（１より小さいゲインをかける）にならないように、露出誤差を補正することをポイントとしているため、露出誤差を補正するゲインは、常に１以上であることが望ましい。従って、露出誤差により、信号レベルが最も大きくなる画像を基準として、その他の画像の補正ゲインを算出する必要がある。しかし、仮補正ゲイン算出部１０５１に画像が入力された段階では、どの画像の信号レベルが最も大きくなっているかは不明である。よって、まずは所定の画像を仮の基準画像として設定し、仮の補正ゲインを算出する。仮補正ゲイン算出部１０５１の処理内容の処理結果として、撮影枚数の分だけ、露出誤差を表す仮の補正ゲインが算出される。
【００２７】
図２は、露出誤差補正処理の動作を示すフローチャートである。各動作は露出誤差補正部１０５内の各部あるいは制御部１０１により行われる。
【００２８】
ステップＳ２０１において、仮の基準画像を設定し、その他の画像を比較画像とする。本実施形態では、前記仮の基準画像は、複数枚の入力画像の１枚目を設定し、２枚目以降の画像を比較画像とする。
【００２９】
次に、ステップＳ２０２〜２０６において、ステップＳ２０１で設定した仮の基準画像に対し、各比較画像の仮補正ゲインを算出する。まず、ステップＳ２０２、Ｓ２０３において、仮の基準画像および比較画像の画素値のブロック積分を行う。
【００３０】
図４に、ステップＳ２０２、Ｓ２０３におけるブロック積分値算出処理のフローチャートを示す。まず、ステップＳ４０１において、入力画像が仮の基準画像か否かを判定する。本実施形態では、判定の結果、入力画像が仮の基準画像ではない場合、すなわち比較画像である場合には、ステップＳ４０２において、手振れ量データからブロック内のブロック積分開始位置を計算する。具体的には、手振れ量データをベクトルとして受け取り、ブロック積分開始位置を、ベクトルの分だけずらして設定する。ここで、ステップＳ４０１およびＳ４０２の処理を行う理由は、仮の基準画像と比較画像間の手振れによる位置ズレの影響を低減するためである。本実施形態では、手持ち撮影を前提としており、仮の基準画像と比較画像は手振れの影響で位置ズレが生じていることが想定される。従って、同じ位置のブロック領域においてもテクスチャが位置ズレするため、ブロック積分を行った場合に、積分値の比が正確に露出誤差を示さないと考えられる。
【００３１】
この位置ズレの対策として、比較画像のブロック積分領域は、仮の基準画像のブロック積分領域から、手振れによる位置ズレを補償する分だけずらして設定する。手振れ量のデータの例としては、例えば加速度センサの出力を動きベクトルに換算したものや、画像から検出した動きベクトルなどが挙げられる。
【００３２】
図５に、手振れ量データの一例である、加速度センサの出力を動きベクトルに換算する動作のフローチャートを示す。まず、ステップＳ５０１において、カメラの初期速度ｖ０を推定する。具体的な推定の方法としては、過去の加速度センサの出力を積分する方法や、過去のフレーム間動きベクトルを記憶しておき、動きベクトルをカメラの移動量に換算し、速度を求める方法などが挙げられる。次に、ステップＳ５０２において、加速度センサから、加速度情報ａ（ｔ）を取得する。ここで、取得する加速度情報とは、光軸に垂直な平面内に方向ベクトルを持つ２軸の加速度情報であり、特定の期間でサンプリングされた、時系列の加速度である。次に、ステップＳ５０３において、初期速度ｖ０、および加速度情報ａ（ｔ）から、カメラの変位量ｄｘを計算する。変位量ｄｘは、カメラの速度情報ｖ（ｔ）を時間で積分することで得られ、速度情報ｖ（ｔ）は、加速度情報ａ（ｔ）を時間積分し、初期速度ｖ０を加算することで算出できる。ここで、積分処理の数値計算方法は問わない。具体的には、台形近似やシンプソンの公式等が挙げられる。以下に、ｖ（ｔ）の算出式（１）、ｄｘの算出式（２）を示す。
【００３３】
【数１】
0005972057.tif 000002
【００３４】
【数２】
0005972057.tif 000003
【００３５】
次に、ステップＳ５０４において、画像信号の解析あるいは図１では不図示の測距センサによって得られる、ＡＦ（オートフォーカス）用の合焦位置の距離Ｄを取得する。さらに、ステップＳ５０５において、変位量ｄｘおよび合焦位置の距離Ｄから、画素ズレ量ｖを算出する。以下に、焦点距離をｆ、センサー（撮像素子）の画素ピッチをＬとしたときの、画素ズレ量ｖの算出式（３）〜（５）を示す。また、（３）式の導出過程を説明するための図を図６に示す。すなわち、撮像面上での変位前の被写体の位置をｘ１、変位後の被写体の位置をｘ２とすると、図６より
【００３６】
【数３】
0005972057.tif 000004
【００３７】
また、
【００３８】
【数４】
0005972057.tif 000005
【００３９】
式（３）、（４）より
【００４０】
【数５】
0005972057.tif 000006
【００４１】
上記の式（５）により、画素ズレ量を加速度センサーの２軸方向で算出し、算出した画素ズレ量が、手振れ量データとなる（ステップＳ５０６）。
【００４２】
次に、ステップＳ４０３において、仮の基準画像、および比較画像を所定のブロックに分割する。図７に、本実施形態における画像のブロック分割を示す。本実施形態では、図７（ａ）に示す通り、分割ブロック数はＮ×Ｍ個とし、各ブロックをｂｌｋ［ｉ］［ｊ］（ｉ＝０〜Ｎ−１、ｊ＝０〜Ｍ−１）。ブロック積分領域、およびブロック分割数は任意だが、撮像素子上で入射光が当たらない領域（オプティカルブラック領域）は、露出誤差の検出が不可能なため、ブロック積分領域から除外することが好ましい。また、ステップＳ４０２の処理により、比較画像のブロック積分領域の開始位置は、仮の基準画像と比較して、手振れ量データの分だけずらして設定されている。ここで、図７（ｂ）に示すように、ブロック積分領域を手振れ量データの分ずらして積分ブロックが画像内に収まる場合は、全ブロックを露出誤差検出対象にする。しかし、図７（ｃ）に示すように、積分ブロックが一部画像外にはみ出てしまう場合には、該当ブロックにおけるブロック積分値は算出せず、露出誤差検出に使用しないものとする。
【００４３】
次に、ステップＳ４０４において、黒潰れ閾値ＴＨ１，白飛び閾値ＴＨ２を設定する。ここで、閾値を設定する理由は、黒潰れ、および白飛びレベル付近の画素値が、ノイズや画素値の飽和の影響で、露出誤差の検出には不適当であり、そのような画素値はブロック積分の対象から除外する必要があるからである。
【００４４】
次に、ステップＳ４０５、Ｓ４０６において、ｉ＝０、ｊ＝０を設定し、ブロックｂｌｋ［ｉ］［ｊ］に着目して、ブロック積分を行う。ステップＳ４０７において、ｂｌｋ［ｉ］［ｊ］が画像からはみ出ていないかを判定する。画像からはみ出ている場合は、前述のように、露出誤差検出には使用しないため、ブロック積分値の算出を行わずに、次のブロックへインクリメントする。ステップＳ４０７において、画像からはみ出ていないと判断されたブロックに対しては、ステップＳ４０８〜Ｓ４１１において、設定した黒潰れ閾値ＴＨ１以上（第２の閾値以上）、白とび閾値ＴＨ２以下（第１の閾値以下）の画素値のみを積分値として加算する。この閾値処理のために、加算される画素数はブロック毎に異なるため、ブロック積分値を加算した画素数で正規化する必要がある。従って、ステップＳ４０９において、加算した画素数をカウントしておき、ステップＳ４１２において、ブロック積分値を、加算画素数で除算し、正規化を行う。最後に、ステップＳ４１３において、全てのブロックでブロック積分値を算出したかどうかを判定する。
【００４５】
以上の処理によって、分割ブロック毎にブロック積分値が算出される。本実施形態では、上記処理を、仮の基準画像、および比較画像に対して行う。以上が、ステップＳ２０２、およびＳ２０３の処理である。
【００４６】
次に、ステップＳ２０４において、ブロック毎の補正ゲインを算出する。補正ゲインは、各画像のブロック積分値の比率と考えることができるため、仮の基準画像と比較画像それぞれのブロック積分値において、同位置にあるブロック積分値の比率を算出する。ここで、仮の基準画像と比較画像間に露出段差がある場合には、ブロック積分値の比率は、露出段差と露出誤差が乗算された値を表すため、補正ゲインとしては、露出段差分はキャンセルする必要がある。すなわち、次の式（６）によって、分割ブロック毎のブロック毎補正ゲインを算出する。
【００４７】
【数６】
0005972057.tif 000007
【００４８】
ここで、Ｇａｉｎ［ｉ］［ｊ］、Ｉｎｔｅｇ＿ｓｔｄ［ｉ］［ｊ］、Ｉｎｔｅｇ＿ｃｍｐ［ｉ］［ｊ］はそれぞれ、ブロック（ｉ，ｊ）における補正ゲイン、仮の基準画像のブロック積分値、比較画像のブロック積分値を表わす。Ｅｘは、仮の基準画像に対して比較画像がＥｘ段暗いことを示す露出段差である。２＾Ｅｘは２のべき乗を表わし、指数が露出段差のＥｘであることを意味している。本実施形態では、撮影画像間で露出段差を撮らずに撮影しているのでＥｘ＝０となる。
【００４９】
次に、ステップＳ２０５において、仮補正ゲインを決定する。図８に示すように、特に画角内に移動体が存在する場合、ステップＳ２０４から出力されるブロック毎の補正ゲインは、移動体が存在する領域において、露出誤差とは異なる値をとる。従って、移動体が存在する領域の影響を受けずに、最も確からしい（最頻値となる）補正ゲインの値を、仮補正ゲインとして選択する必要がある。ただし、これに限らず、例えば閾値より高い度数をとる補正ゲインの値の平均値あるいは中間値などで仮補正ゲインの値を決定しても良い。
【００５０】
そこで、本実施形態では、仮補正ゲインの選択にヒストグラムを利用する。図９に、ヒストグラムによる露出誤差の検出に関する図を示す。ヒストグラムの横軸はゲインで、縦軸は度数である。データ数（度数）の総和はブロック積分の領域数（＝Ｎ×Ｍ個）に等しい。図９に示すように、ヒストグラムの最頻値が、露出誤差として確からしい値と考えることができる。一方、移動体の影響による局所的な誤検出に関しては、ヒストグラムをとることで影響を排除することができる。従って、ヒストグラムの最頻値を、仮補正ゲインの値として選択する。
【００５１】
ステップＳ２０６では、全ての比較画像に対して仮補正ゲインが算出されたかを判定し、まだ仮補正ゲインを算出していない比較画像が存在する場合には、ステップＳ２０３に戻り、残りに比較画像の仮補正ゲインを算出する。また、仮の基準画像に対しては、仮補正ゲインを等倍（１倍）と定める。以上の処理により、撮影枚数の分だけ、仮補正ゲインが算出される。
【００５２】
図３に、仮補正ゲインの算出までの処理のデータフロー図を示す。上述したように、複数の撮影画像に対して仮の基準画像および各比較画像についてブロック積分処理を行い、設定されている画像間の露出段差に基づいてブロック毎の補正ゲイン算出処理を行う。得られた各画像に対するブロック毎の補正ゲインから仮の補正ゲインが決定し、出力される。
【００５３】
ステップＳ２０７では、基準画像決定部１０５２が、ステップＳ２０６までで仮補正ゲイン算出部１０５１において算出された仮補正ゲインに基づいて正式な基準画像を決定する。図１０は、基準画像決定部１０５２、および、補正ゲイン算出部１０５３の処理を示す図である。
【００５４】
本実施形態では、基準画像を露出誤差による信号レベルが最も大きくなる画像とする。仮の補正ゲインを算出する際には、複数枚の入力画像の１枚目を仮の基準画像としており、必ずしも１枚目が上述した条件を満たす基準画像に該当するとは限らない。従って、仮の補正ゲインの値から、基準画像を決定し、補正ゲインを再計算する必要がある。
【００５５】
具体的には、仮補正ゲインが最小となる画像を、基準画像とする。図１０の例では、４枚目の画像の仮補正ゲイン（Ｇａｉｎ４）が最も小さくなるため、４枚目の画像を基準画像とする。
【００５６】
ステップＳ２０８では、補正ゲイン算出部１０５３が、基準画像決定部１０５２で決定された基準画像に信号レベルを合わせるための正式な補正ゲインの算出を行う。具体的には、基準画像の仮補正ゲインで、各入力画像の仮補正ゲインを正規化する。図１０の例では、基準画像は４枚目なので、１〜４枚目の仮補正ゲインを、Ｇａｉｎ４で除算し、補正ゲインとする。
【００５７】
ステップＳ２０９では、補正ゲイン乗算部１０５４が、補正ゲイン算出部１０５３でそれぞれ算出された補正ゲインを各画像に乗算して補正画像を生成する。本実施形態では、乗算の方法は特に限定しないものとする。
【００５８】
以上説明したように、第１の実施形態に示す処理によれば、露出誤差の補正を行う際に、補正ゲインの値がゲインダウンを伴わないよう、露出誤差により信号レベルが最も大きくなる画像に基づいて、補正ゲインを算出し、露出誤差補正処理を行う。これにより、ゲインダウンに伴い画像に発生する色つきを抑制することができる。
【００５９】
上記では、複数枚の画像の撮像処理において露出条件は変化しない例で説明した。しかし、各画像の撮影条件としてはこれに限らず、例えば異なる露出条件で撮影された複数枚の画像を合成して見かけのダイナミックレンジを拡張する広ダイナミックレンジ処理を行う画像間の露出誤差補正にも適用できる。広ダイナミックレンジ処理では、領域ごとに基準画像の輝度に応じた合成比率で、露出の異なる複数枚画像を合成することで、白飛びや黒潰れの抑制された階調性の高い画像を生成する。この場合、上述した補正ゲイン算出（特に式（６）の仮補正ゲインの算出）の際に、露出段差Ｅｘを、それぞれ仮の基準画像に対して異ならせた段数分設定すればよい。すなわち、仮の基準画像（１枚目）に対して＋２段、−２段の露出段差で２枚目、３枚目の画像が撮像されたとすると、仮の基準画像のＥｘ＝０、２枚目の比較画像のＥｘ＝＋２、３枚目の比較画像のＥｘ＝−２として仮の補正ゲインを算出すればよい。
【００６０】
また、合成に当たっては、１枚目の適正露出画像を基準画像として、２枚目（＋２段）の露出オーバー画像と適正露出画像とが切り替わる第１の輝度閾値と、適正露出画像と３枚目（―２段）の露出アンダー画像が切り替わる第２の輝度閾値を設ける。第１の閾値＜第２の閾値である。そして、
基準画像の輝度値が第１の閾値より低い画素：露出オーバー画像の画素値
基準画像の輝度値が第１の閾値以上で第２の閾値以下の輝度値の画素：適正露出画像の画素値
基準画像の輝度値が第２の閾値より高い画素：露出アンダー画像の画素値
をそれぞれ採用して合成する。
【００６１】
また、単に画素値を選択して合成する（すなわち、合成比率が０％か１００％）と、異なる画像から採用された画素の境界（擬似輪郭）が合成画像で視認されてしまう場合がある。そのため、例えば、合成比率を境界値近辺で線形に増減することにより、境界の発生を軽減させることが可能である。
【００６２】
また、本実施形態では、正式な補正ゲインを算出するために各画像に対して仮の基準画像、比較画像を設定し、２画像間のブロック毎のゲインに基づいて仮の補正ゲインを算出してから正式な補正ゲインを算出した。この方法で補正ゲインを算出すると、合成対象、あるいは補正対象の複数枚の画像の撮像中に順次補正ゲインの算出が行えるので、全ての画像が撮像された後に基準画像を決めて補正ゲインを求めるよりも処理速度の点で有利である。しかし、全ての画像が撮像されたのちに、例えば各画像の画素値のブロック積分値を本実施形態と同様の方法で算出し、その積算値（各画像の信号レベル）が最大となる画像を基準画像に設定してもよい。その後、基準画像との積算値の比から１度で正式な補正ゲインをそれぞれ算出しても良い。
【００６３】
また、本実施形態では、補正ゲインの算出において基準画像を１として全画像に対してゲインダウンが起こらないように設定した。しかし、ゲインダウンによる色付きの抑制という意味では、必ずしも基準画像を１とする必要はなく、例えば基準画像近傍の信号レベルを基準として各補正ゲインを算出しても良い。基準画像の信号レベルより所定量高く補正ゲイン算出の基準が設定されていても、いずれの補正ゲインもゲインアップになっていることには変わらず、飽和部の色付きは防止されるが、本来飽和していなかった領域の画像データが飽和する可能性はある。また、基準画像の信号レベルより所定量低く補正ゲイン算出の基準が設定されていると、基準画像はゲインダウンにより色付きが生じる可能性があるが、例えば他の画像が全てゲインアップになっていれば、飽和部の色付きの抑制には貢献していると考える。
【００６４】
また、本実施形態では、ホワイトバランスゲインを掛けるのと同時に補正ゲインを掛けるが、これに限らず、ホワイトバランスゲインが掛けられたホワイトバランス処理後のＲ、Ｇ、Ｂに対して本発明を適用することもできる。さらに、本実施形態では、露出誤差補正部１０５による露出誤差補正処理の後、Ｒ、Ｇ、Ｂデータから信号処理部１０６で輝度（Ｙ）、色差（Ｕ、Ｖ）データに変換しているが、これに限らず、信号処理部１０６による変換処理後のＹＵＶデータに対して本発明を適用しても良い。ただし、その場合、信号処理部１０６で行われるガンマ変換処理のような非線形処理の前に露出誤差補正処理が行われる方が好ましい。
【００６５】
また、本実施形態では、露出誤差を補正すべき複数枚の画像として露出段差のない複数枚の画像を例示した。しかしこれに限らず、撮影条件を意図的な露出段差などを除いて揃えたい複数枚の画像に対して、本発明は適用可能であり、有効である。たとえば、連写撮影における各画像や、フォーカスあるいは露出のブラケット撮影など、合成を前提としない撮影における各画像間の補正にも有効である。
【００６６】
（他の実施形態）
本発明の目的は以下のようにしても達成できる。すなわち、前述した各実施形態の機能を実現するための手順が記述されたソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給する。そしてそのシステムまたは装置のコンピュータ（またはＣＰＵ、ＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出して実行するのである。
【００６７】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体およびプログラムは本発明を構成することになる。
【００６８】
また、プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスクなどが挙げられる。また、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等も用いることができる。
【００６９】
また、コンピュータが読み出したプログラムコードを実行可能とすることにより、前述した各実施形態の機能が実現される。さらに、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した各実施形態の機能が実現される場合も含まれる。
【００７０】
更に、以下の場合も含まれる。まず記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う。
【符号の説明】
【００７１】
１００  メモリ
１０１  制御部
１０２  撮像部
１０３  Ａ／Ｄ変換部
１０４  補間部
１０５  露出誤差補正部
１０６  信号処理部
１０７  画像位置合わせ部
１０８  画像合成部
１０９  画像表示部
１１０  画像記録部
【図１】
0005972057.tif 000008
【図２】
0005972057.tif 000009
【図３】
0005972057.tif 000010
【図４】
0005972057.tif 000011
【図５】
0005972057.tif 000012
【図６】
0005972057.tif 000013
【図７】
0005972057.tif 000014
【図８】
0005972057.tif 000015
【図９】
0005972057.tif 000016
【図１０】
0005972057.tif 000017