(57)【要約】【課題】簡易かつ高速に撮影画像の画質を向上させる撮像装置を提供する。【解決手段】撮像装置（１０）は、撮像光学系を介して形成された光学像を光電変換して画像データを出力する撮像素子（１０２）と、画像データに対応する単一の画像に基づいて、撮像素子の飽和画素の輝度値を推定する推定手段（１０４ａ）と、輝度値に基づいて露出パラメータを設定する設定手段（１０４ｂ）と、露出パラメータに基づいて撮影を行う制御手段（１０７）とを有する。【選択図】図４
2017118296.tif 000002
【特許請求の範囲】
【請求項１】
撮像光学系を介して形成された光学像を光電変換して画像データを出力する撮像素子と、
前記画像データに対応する単一の画像に基づいて、前記撮像素子の飽和画素の輝度値を推定する推定手段と、
前記輝度値に基づいて露出パラメータを設定する設定手段と、
前記露出パラメータに基づいて撮影を行う制御手段と、を有することを特徴とする撮像装置。
【請求項２】
前記飽和画素は、前記撮像素子の複数の画素のうち、蓄積可能な最大電荷量が蓄積された画素であることを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記単一の画像は、前記最大電荷量に対応する飽和画素値を含む画像であることを特徴とする請求項２に記載の撮像装置。
【請求項４】
前記推定手段は、前記飽和画素を含む飽和画素領域の境界における複数の画素の画素値の差分に基づいて、該飽和画素の前記輝度値を推定することを特徴とする請求項１乃至３のいずれか１項に記載の撮像装置。
【請求項５】
前記設定手段は、第１の露出値および第２の露出値に基づいて前記露出パラメータを設定することを特徴とする請求項１乃至４のいずれか１項に記載の撮像装置。
【請求項６】
前記制御手段は、
前記第１の露出値で撮影することにより、飽和画素値を含む第１の画像を取得し、
前記第２の露出値で撮影することにより、前記飽和画素値を含まない第２の画像を取得することを特徴とする請求項５に記載の撮像装置。
【請求項７】
前記設定手段は、前記露出パラメータとして複数の露出値を設定し、
前記制御手段は、前記複数の露出値で複数の画像を撮影することを特徴とする請求項１乃至６のいずれか１項に記載の撮像装置。
【請求項８】
前記設定手段は、前記露出パラメータとして、前記撮像素子の画素領域ごとの露出値を設定し、
前記制御手段は、前記画素領域ごとの前記露出値で単一の画像を撮影することを特徴とする請求項１乃至４のいずれか１項に記載の撮像装置。
【請求項９】
前記推定手段は、前記露出パラメータに基づく撮影により得られた第２の単一の画像に基づいて、第２の輝度値を推定し、
前記設定手段は、前記第２の輝度値に基づいて第２の露出パラメータを設定し、
前記制御手段は、前記第２の露出パラメータに基づいて第２の撮像を行うことを特徴とする請求項１乃至８のいずれか１項に記載の撮像装置。
【請求項１０】
前記推定手段は、前記飽和画素領域の境界における画素の画素値を初期値として、
2017118296.tif 000009
を満たすように、前記飽和画素の前記輝度値に関する画素値分布ｆを推定することを特徴とする請求項４に記載の撮像装置。
【請求項１１】
単一の画像から撮像素子の飽和画素の輝度値を推定する推定手段と、
前記輝度値に基づいて露出パラメータを設定する設定手段と、を有することを特徴とする画像処理装置。
【請求項１２】
単一の画像から撮像素子の飽和画素の輝度値を推定するステップと、
前記輝度値に基づいて露出パラメータを設定するステップと、を有することを特徴とする画像処理方法。
【請求項１３】
単一の画像から撮像素子の飽和画素の輝度値を推定するステップと、
前記輝度値に基づいて露出パラメータを設定するステップと、をコンピュータに実行させることを特徴とする画像処理プログラム。
【請求項１４】
請求項１３に記載の画像処理プログラムを記憶していることを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影画像の画質を向上させる撮像装置に関する。
【背景技術】
【０００２】
固体撮像素子を備えた撮像装置を用いて明るい被写体を撮像すると、撮影画像に白とび（輝度飽和）が発生することがある。輝度飽和が発生した領域（輝度飽和領域または飽和画素領域）では、撮像素子の輝度レンジ外の輝度情報（飽和画素値よりも大きい画素値に関する情報）が失われている。
【０００３】
従来から、異なる露出値で撮影した複数の画像を合成することにより、撮像素子の輝度レンジを拡大して撮影したようなＨＩＧＨ  ＤＹＮＡＭＩＣ  ＲＡＮＧＥ（ＨＤＲ）画像を生成する方法が知られている。ここで露出値は、撮像系の絞り値および露光時間に応じて決定される、露出の度合いを示す指標値である。ＨＤＲ画像の生成に用いられる複数の画像は、例えば複数の露出値で連写を行うＨＤＲブラケット撮影などにより得ることができる。
【０００４】
この際、輝度飽和が十分に低減された品位の高い画像を得るには、画角内の明るい被写体に適した、十分大きい露出値で撮影した画像が必要である。このためＨＤＲ撮影（ＨＤＲブラケット撮影）を行う場合、予め露出値を変化させながら画素値を読み出すことを繰り返すか、または測光手段を用いて、十分大きい露出値を取得する必要があった。すなわち、ＨＤＲ撮影を行う場合、複数の画像または測光手段の出力値に基づいて適切な露出値を取得するという準備が必要である。
【０００５】
特許文献１には、予め撮影した単一の画像の累積画素値ヒストグラムを用いて、予め用意したテーブルに基づいて露出値を取得することにより、単一の画像に基づいて前述の準備を行う方法が開示されている。非特許文献１には、単一の画像に基づいて輝度値を推定する方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−１０４００９号公報
【非特許文献１】ＣＶＰＲＷ  ２０１２，  ＪＵＮＥ  ２０１２，  ＧＲＡＤＩＥＮＴ  ＤＯＭＡＩＮ  ＣＯＬＯＲ  ＲＥＳＴＯＲＡＴＩＯＮ  ＯＦ  ＣＬＩＰＰＥＤ  ＨＩＧＨＬＩＧＨＴ
【発明の概要】
【発明が解決しようとする課題】
【０００７】
このように、ＨＤＲブラケット撮影を行う場合、複数の画像または測光手段の出力値に基づいて適切な露出値を取得する準備が必要であり、時間を要する。この点、特許文献１の方法では、単一の画像に基づいて前記準備を行うことができる。しかしながら、特許文献１の方法では、単一の画像の累積画素値ヒストグラムに基づいて露出値を取得するため、画面内の明るい被写体に適した十分大きい露出値を取得することは困難である。
【０００８】
そこで本発明は、簡易かつ高速に撮影画像の画質を向上させる撮像装置、画像処理装置、画像処理方法、画像処理プログラム、および、記憶媒体を提供する。
【課題を解決するための手段】
【０００９】
本発明の一側面としての撮像装置は、撮像光学系を介して形成された光学像を光電変換して画像データを出力する撮像素子と、前記画像データに対応する単一の画像に基づいて、前記撮像素子の飽和画素の輝度値を推定する推定手段と、前記輝度値に基づいて露出パラメータを設定する設定手段と、前記露出パラメータに基づいて撮影を行う制御手段とを有する。
【００１０】
本発明の他の側面としての画像処理装置は、単一の画像から撮像素子の飽和画素の輝度値を推定する推定手段と、前記輝度値に基づいて露出パラメータを設定する設定手段とを有する。
【００１１】
本発明の他の側面としての画像処理方法は、単一の画像から撮像素子の飽和画素の輝度値を推定するステップと、前記輝度値に基づいて露出パラメータを設定するステップとを有する。
【００１２】
本発明の他の側面としての画像処理プログラムは、単一の画像から撮像素子の飽和画素の輝度値を推定するステップと、前記輝度値に基づいて露出パラメータを設定するステップと、をコンピュータに実行させる。
【００１３】
本発明の他の側面としての記憶媒体は、前記画像処理プログラムを記憶している。
【００１４】
本発明の他の目的及び特徴は、以下の実施形態において説明される。
【発明の効果】
【００１５】
本発明によれば、簡易かつ高速に撮影画像の画質を向上させる撮像装置、画像処理装置、画像処理方法、画像処理プログラム、および、記憶媒体を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】輝度飽和領域が発生している画像の例である。
【図２】画像における１次元画素値分布である。
【図３】単一の画像に基づいて輝度飽和領域の輝度値を推定する方法の説明図である。
【図４】各実施例における撮像装置のブロック図である。
【図５】実施例１における画像処理方法のフローチャートである。
【図６】実施例１における階調圧縮のための変換特性図である。
【図７】実施例２における撮像素子の模式図である。
【図８】実施例２における画像処理方法のフローチャートである。
【図９】実施例３における輝度飽和領域を含む画像の例である。
【図１０】実施例３における画像処理方法のフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施例について、図面を参照しながら詳細に説明する。
【００１８】
まず、固体撮像素子において輝度飽和が発生する仕組みについて説明する。デジタルカメラなどの撮像装置には、ＣＣＤ（ＣＨＡＲＧＥ  ＣＯＵＰＬＥＤ  ＤＥＶＩＣＥ）センサやＣＭＯＳ（ＣＯＭＰＬＥＭＥＮＴＡＲＹ  ＭＥＴＡＬ  ＯＸＩＤＥ  ＳＥＭＩＣＯＮＤＵＣＴＯＲ）センサなどの固体撮像素子が搭載されている。このような固体撮像素子は、画素ごとに入射する光を電荷に光電変換して読み出すことにより、２次元の面上に照射される光の強度分布を画像として得ることができる。
【００１９】
固体撮像素子の各画素が一度に蓄積可能な電荷量には限りがあり、高い輝度値の光が入射した画素においては飽和電荷量以上の電荷は失われる。このように撮像素子の複数の画素のうち、蓄積可能な最大電荷量が蓄積された画像を飽和画素といい、飽和画素が存在する領域を飽和画素領域（輝度飽和領域）という。輝度飽和領域は、蓄積可能な最大電荷量（飽和電荷量）に対応する飽和画素値を画素値とした、平坦な白とび領域として画像上に現れる。図１は、輝度飽和領域が発生している画像の例であり、夜間にヘッドライトを点灯させた車を撮影した画像の模式図を示している。図１において、領域ＳＡＴが輝度飽和領域である。
【００２０】
デジタルカメラなどの撮像装置で撮像した画像には、一般的にフォトンショットノイズや暗電流ノイズなど、様々なノイズが画素値として記録される。固体撮像素子に入射する光が不足して画素に蓄積される電荷が非常に少ない場合、読み出された出力信号とノイズとを区別することは困難である。このような現象を黒つぶれと呼ぶ。黒つぶれが起こる光量から、輝度飽和が起こる光量までを撮像素子の輝度レンジと呼ぶ。
【００２１】
図２（ｂ）は、ある露出値で撮像した画像の１次元画素値分布であり、横軸は画像のＸ座標、縦軸は画素値をそれぞれ示している。図２（ｂ）において、Ｉｎはノイズと区別することが可能な最低画素値であり、Ｉｓは飽和画素値である。最低画素値Ｉｎと飽和画素値Ｉｓとの間の画素値領域が、撮像素子の輝度レンジに対応する。一般的なデジタルカメラは、レンズの絞り径またはシャッタースピードを変化させることにより、固体撮像素子に入射する光量を調整することが可能である。この調整量は、露出値と呼ばれる指標値で表すことができる。撮像を行う際に露出値を調節して入射する光量を低下させることにより、輝度飽和の発生を防ぐことが可能である。絞り値（Ｆ値）がＦ１、シャッタースピードが１秒のときの露出値を０とし、入射する光量が半分になるごとに露出値は１ずつ大きくなる。
【００２２】
露出値を大きくすることにより、輝度飽和の発生を防ぐことができる。しかし、露出値を大きくし過ぎると、画角内の暗い領域において入射光量が不足し、黒つぶれが発生する。このため、図１に示されるように、撮影画角内に周囲に比べて特に明るい領域（領域ＳＡＴ）が存在する場合、撮影画角の全域で輝度飽和および黒つぶれのいずれも発生しない適切な露出値が存在しないことがある。
【００２３】
複数の露出値で撮影した画像を合成することにより、画角内において輝度飽和や黒つぶれの発生を低減することができる。このようにして生成された画像をＨＤＲ画像と呼ぶ。以下、図２を参照して、ＨＤＲ画像の概要について説明する。図２（ａ）および図２（ｃ）は、あるシーンを、互いに異なる露出値で撮像した２枚の画像の１次元画素値分布である。図２において、横軸は画像のＸ座標、縦軸は画素値をそれぞれ示している。図２（ａ）および図２（ｃ）は、全ての輝度情報を記録することができているものとして示しているが、実際には撮像素子の輝度レンジが限られているため、図２（ｂ）および図２（ｄ）に示されるように黒つぶれおよび白とびがそれぞれ発生する。
【００２４】
図２（ｂ）および図２（ｄ）に示される２枚の画像において、それぞれ黒つぶれおよび白とびが発生しているものの、これらの２枚の画像を組み合わせれば、被写体の輝度情報が全て記録されていることになる。このため、図２（ｂ）および図２（ｄ）に示される２枚の画像を組み合わせる（合成する）ことにより、撮像素子の輝度レンジを拡張して撮像したようなＨＤＲ画像を生成することができる。
【００２５】
露出値の異なる２枚の画像を用いてＨＤＲ画像を生成する方法は、一般的に広く知られている。最も単純には、図２（ｄ）に示される画像において、輝度飽和が発生している領域内の画素の画素値に、図２（ｂ）に示される画像中の対応する画素の画素値に定数を乗算した値を積算すればよい。この定数は、図２（ｂ）および図２（ｄ）の画像を撮像した際のそれぞれの露出値に基づいて算出される。例えば、それぞれの露出値の差の絶対値をΔＥＶとすると、この定数として、２をΔＥＶだけ乗じて得られた値が用いられる。図２（ｅ）は、このようにして生成されたＨＤＲ画像の１次元画素値分布であり、積算された画素値が一点鎖線で示されている。
【００２６】
露出値の異なる２枚の画像を合成することによりＨＤＲ画像を生成する方法を説明したが、他にも画素ごとに露出値を変化させることが可能な撮像素子を用いる方法がある。例えば、撮像光学系の絞りとは別に、画素ごとに駆動する開口を有する撮像素子を用いる。明るい被写体からの光が入射する画素においては開口を絞り、暗い被写体からの光が入射する画素においては開口を開きながら撮像する。これにより、１回の撮影で画像上の領域ごとに露出値の異なるＨＤＲ画像を撮像することが可能である。または、画素ごとに露光時間を変化させることが可能な撮像素子を用いてもよい。すなわち、画素ごとに蓄積電荷を任意のタイミングで読み出すことにより、画素ごとに露出値を変化させることが可能な撮像素子を用いてもよい。または、画素の出力信号に対し、画素ごとに異なる読み出しゲインを設定することにより、画素ごとに露出値を変化させることが可能な撮像素子を用いてもよい。または、画素ごとに液晶素子などの透過率を独立に制御可能な素子を備えた撮像素子を用いてもよい。
【００２７】
以上のＨＤＲ画像の合成に用いられる複数の画像の撮影においては、撮影を行う前に画角内の明るさの異なる複数の被写体それぞれについての、複数の適した露出値を知っておくことが必要である。従来、ＨＤＲ画像を取得する際には、複数の画像に基づいて複数の適した露出値を取得するか、または、所定のパラメータに基づいて露出値を取得していた。
【００２８】
次に、図３を参照して、飽和画素値を含む単一の画像に基づいて輝度値を推定する方法について説明する。この方法の基本原理は、非特許文献１に開示されている。図３は、単一の画像に基づいて輝度値を推定する方法の説明図である。図３において、横軸は画像のＸ座標、縦軸は画素値をそれぞれ示している。
【００２９】
図３（ａ）は、輝度レンジが十分広い理想的な撮像素子を備えた撮像装置を用いて明るい光源を撮影した画像の、１次元画素値分布を示している。一方、図３（ｂ）は、限られた輝度レンジを有する撮像素子を備えた撮像装置を用いて、図３（ａ）の場合と同じの光源を同じ露出値で撮像した画像の、１次元画素値分布を示している。図３（ｂ）の画像では、撮像素子の輝度レンジが限られているため、輝度飽和が発生しており、輝度飽和領域ＲＥＧｓ上の画素の画素値は飽和画素値Ｉｓとなっている。
【００３０】
本実施形態では、以下のようにして、欠落した輝度情報を推定する。まず、画素値分布ｆの対数について微分値を計算する。ここで、微分値とは、画像上の隣接する（または近傍の）画素の差分である。図３（ｃ）は画素値分布ｆの対数ｌｏｇ（ｆ）を示し、図３（ｄ）はその微分値∇ｌｏｇ（ｆ）を示す。一般の画像は例えば８ｂｉｔであるため、画素値は０から２５５の整数値である。ただし説明を簡略化するため、輝度飽和値Ｉｓを１とし、画素値は０から１までの少数値を有するものとする。このため、輝度飽和領域ＲＥＧｓにおいて、ｌｏｇ（ｆ）およびその微分値∇ｌｏｇ（ｆ）はそれぞれ０である。
【００３１】
続いて、輝度飽和領域ＲＥＧｓと周囲の領域の境界点ｐ１、ｐ２の間における微分値∇ｌｏｇ（ｆ）が０である領域を、境界点ｐ１、ｐ２に基づいて再構成する。具体的には、輝度飽和領域ＲＥＧｓ内において、以下の式（１）で表されるようなラプラス方程式を解くことにより再構成を行う。
【００３２】
【数１】
2017118296.tif 000003
【００３３】
ラプラス方程式の数値解を求める解法は広く知られており、いずれの解法を用いてもよい。ここでは、例えば差分法を用いると、式（１）は以下の式（２）のように表される連立方程式に帰着する。
【００３４】
【数２】
2017118296.tif 000004
【００３５】
ここで、図３では簡略化のため画像の１次元の画素値分布を示しているが、式（２）では２次元画像について記述されている。２次元画像上では、境界点ｐ１、ｐ２は、輝度飽和領域ＲＥＧｓと周囲の領域の境界領域の一部である。Ｉ＝∇ｌｏｇ（ｆ）であり、ｉおよびｊはそれぞれ画像のＹおよびＸ座標上のインデックスを示す。すなわち、輝度飽和領域ＲＥＧｓ内の画素数分の連立方程式が存在する。連立方程式の解法は様々なものを知られており、いずれの解法を用いてもよい。ここでは、例えばガウス＝ザイデル方を用いる。具体的には、輝度飽和領域の全ての画素に関して式（２）の演算を行い、画素ごとに演算前後の値の変動Ｅｒｒ（ｉ、ｊ）を算出する。この演算を繰り返し行い、Ｅｒｒ（ｉ、ｊ）の最大値が予め設定された閾値以下になった場合、演算を終了する。閾値としては、任意の値を設定することができる。以上の演算により、図３（ｅ）に示される画素値分布∇ｌｏｇ（ｆ）が得られる。
【００３６】
続いて、以下の式（３）のように表されるポアソン方程式を解くことにより、輝度飽和領域ＲＥＧｓにおいてｌｏｇ（ｆ）を再構成する。
【００３７】
【数３】
2017118296.tif 000005
【００３８】
ポアソン方程式の数値解を求める解法は広く知られており、いずれの解法を用いてもよい。ここでは、例えば差分法を用いると、式（３）は以下の式（４）のように表される連立方程式に帰着する。
【００３９】
【数４】
2017118296.tif 000006
【００４０】
式（４）において、Ｊ＝ｌｏｇ（ｆ）であり、Ｉ＝∇ｌｏｇ（ｆ）である。前述のガウス＝ザイデル法により式（４）の連立方程式を解くと、図３（ｆ）に示されるｌｏｇ（ｆ）が得られる。さらに、ｌｏｇ（ｆ）の指数を演算することにより、図３（ｇ）に示される画素値分布ｆが得られる。前述のとおり、本実施形態では、飽和画素の輝度値（実際の輝度値に対応する画素値）は、飽和画素を含む飽和画素領域の境界における複数の画素（隣接画素または近傍画素）の画素値の差分に基づいて推定される。好ましくは、飽和画素領域の境界における画素の画素値を初期値として、式（１）、（３）を満たすように、飽和画素の輝度値に関する画素値分布ｆを推定する。このように輝度飽和領域ＲＥＧｓにおいて画素値を再構成することにより、輝度飽和の発生により得ることができない輝度値を推定することが可能となる。
【００４１】
以上、本実施形態における輝度値の推定手法について説明したが、本実施形態はこの推定手法に限定されるものではない。単一の画像から、輝度飽和によって得られなかった輝度値を推定する方法であれば、他の方法を用いてもよい。
【実施例１】
【００４２】
まず、図４を参照して、本発明の実施例１における撮像装置について説明する。図４は、本実施例における撮像装置１０のブロック図である。撮像装置１０は、単一の画像に基づいて最大輝度値を推定し、推定した最大輝度値に基づいて露出値を設定してＨＤＲブラケット撮影を行う。
【００４３】
撮像光学系１００は、絞り１０１ａおよびフォーカスレンズ１０１ｂを含み、不図示の被写体からの光を撮像素子１０２上に結像させる。撮像素子１０２は、ＣＭＯＳセンサやＣＣＤセンサなどの固体撮像素子であり、撮像光学系１００を介して形成された被写体像（光学像）を光電変換して画像データ（アナログ電気信号）を出力する。Ａ／Ｄコンバータ１０３は、撮像素子１０２から出力されたアナログ電気信号をデジタル信号に変換し、デジタル信号を画像処理部１０４に出力する。
【００４４】
画像処理部１０４は、撮像装置１０に搭載された画像処理装置に相当し、推定手段１０４ａおよび設定手段１０４ｂを有する。画像処理部１０４の推定手段１０４ａは、入力画像（単一の画像）の輝度飽和領域（飽和画素領域）を検出し、輝度飽和領域における最大輝度値を推定する。そして画像処理部１０４の設定手段１０４ｂは、推定した最大輝度値に基づいて、露出パラメータを算出する。また画像処理部１０４は、複数の入力画像を合成して合成画像（ＨＤＲ画像）を出力する。画像処理部１０４により生成されたＨＤＲ画像は、半導体メモリや光ディスクなどの画像記憶媒体１０９に記憶される。また、ＨＤＲ画像を画像表示部１０５に表示してもよい。記憶部１０８は、撮像素子１０２の飽和画素値Ｉｓなど、画像処理部１０４による処理に必要な各種データを記憶している。
【００４５】
システムコントローラ１０７（制御手段）は、撮像素子１０２の駆動、画像処理部１０４による処理、および、撮像光学系１００の動作をそれぞれ制御する。撮像光学系１００における絞り１０１ａおよびフォーカスレンズ１０１ｂの機械的な駆動は、システムコントローラ１０７の指令（制御信号）に従って、撮像光学系制御部１０６により行われる。絞り１０１ａは、設定された絞り値（Ｆナンバー）に応じてその開口径が制御される。フォーカスレンズ１０１ｂは、被写体距離に応じてピント調整（フォーカス制御）を行うため、不図示のＡＦシステムやマニュアルフォーカス機構によりその位置が制御される。なお撮像光学系１００は、図４では撮像装置１０（撮像装置本体）に一体化して構成されているが、これに限定されるものではない。撮像光学系１００は、撮像装置本体（一眼レフカメラ）に対して着脱可能な交換レンズであってもよい。
【００４６】
次に、図５を参照して、本実施例における画像処理方法（画像処理プログラム）について説明する。図５の各ステップは、主に、システムコントローラ１０７の指令に基づいて画像処理部１０４（推定手段１０４ａ、設定手段１０４ｂ）により実行される。
【００４７】
まずステップＳ１０１において、システムコントローラ１０７は、撮像光学系１００および撮像素子１０２により構成される撮像系を制御して、被写体の撮像を行う。撮像の際の露出値ＥＶｐとして、例えば不図示の測光装置を用いた、一般的に知られているスポット測光により取得された、注目している被写体（注目被写体）に対して適切な値が用いる。画像処理部１０４は、撮像素子１０２から出力されてＡ／Ｄコンバータ１０３にてＡ／Ｄ変換されたデジタル信号を用いて、画像ＩＭＧｐ（準備画像）を生成する。
【００４８】
続いてステップＳ１０２において、画像処理部１０４は、記憶部１０８から飽和画素値Ｉｓを読み出し、画像ＩＭＧｐにおいて画素値が飽和画素値Ｉｓである画素を、輝度飽和領域ＲＥＧｓに含まれる画素として検出する。ここで画素値が飽和画素値Ｉｓである画素がない場合、後述のステップＳ１０３〜Ｓ１０５をスキップし、画像ＩＭＧｐを出力画像とすることができる。
【００４９】
続いてステップＳ１０３において、画像処理部１０４（推定手段１０４ａ）は、画像ＩＭＧｐの輝度飽和領域ＲＥＧｓに対して、輝度値推定処理を行う。具体的には、輝度飽和領域ＲＥＧｓに対して、図３を参照して説明した前述の輝度値推定方法により画素値分布を再構成し、輝度飽和領域ごとに最大画素値を取得し、それらから最大画素値Ｉｍａｘを取得する。そして画像処理部１０４（設定手段１０４ｂ）は、画像ＩＭＧｐの撮像時の露出値ＥＶｐ（第１の露出値）および最大画素値Ｉｍａｘ（第２の露出値）を用いて、以下の式（５）で表されるように、適切な最大露出値ＥＶｓを算出する。
【００５０】
【数５】
2017118296.tif 000007
【００５１】
式（５）において、ｃｅｉｌは小数点切り上げを示す。
【００５２】
続いてステップＳ１０４において、システムコントローラ１０７は、最大露出値ＥＶｓに基づいて、撮像系を制御して複数回の撮像を行う。このように本実施例において、設定手段１０４ｂは、第１の露出値（暗い被写体に適した露出値）および第２の露出値（明るい被写体に適した露出値）に基づいて露出パラメータを設定する。好ましくは、システムコントローラ１０７は、第１の露出値で撮影することにより、飽和画素値を含む第１の画像を取得し、第２の露出値で撮影することにより、飽和画素値を含まない第２の画像を取得する。また好ましくは、設定手段１０４ｂは、露出パラメータとして複数の露出値を設定し、システムコントローラ１０７は、複数の露出値で複数の画像を撮影する。
【００５３】
具体的には、本実施例では、露出値ＥＶｐから最大露出値ＥＶｓまで露出パラメータとしての露出値を１ずつ上げながら、ΔＥＶ（＝ＥＶｓ−ＥＶｐ＋１）回の撮影（連写撮影）を行う。このように露出値を変化させながら行う連写撮影を、ＨＤＲブラケット撮影と呼ぶ。撮影する複数枚の画像のうち最大露出値ＥＶｓで撮像する画像は、同一の露出値で予め撮影された画像ＩＭＧｐで置き換え、画像１枚分の撮影時間を削減することができる。
【００５４】
この際、シャッタースピードおよび絞り値のいずれを変化させてもよいが、ＨＤＲブラケット撮影中の被写体の変動を最小にするため、短いシャッタースピードで開口を適宜絞りながらＨＤＲブラケット撮影することが好ましい。または、被写体が不動である場合、開口を固定し、シャッタースピードを適宜変化させながらＨＤＲブラケット撮影することで、ボケ味の変動のない複数の画像を得ることができる。
【００５５】
本実施例では、必ずしも最大露出値ＥＶｓまでＨＤＲブラケット撮影をしなくてもよい。すなわち、最大撮影回数は例えば８回など、任意の値を設定してもよい。これにより、画像内に太陽など極めて明るい被写体が写っている場合、撮影枚数が膨大になるのを防ぐことができる。また、例えば露出値を２ずつ上げながら連写撮影を行うように構成してもよい。これにより、階調の分解能は下がるが、撮影枚数を低減することが可能となる。また、ＥＶｐ−ΔＥＶから、ＥＶｐ＋ΔＥＶの範囲で露出値を変化させて連写撮影を行ってもよい。これにより、注目被写体に対してバランスの良い範囲の輝度情報を得ることができる。このように画像処理部１０４は、撮像素子１０２から出力されてＡ／Ｄコンバータ１０３にてＡ／Ｄ変換されたデジタル信号を用いて、複数の中間画像ＩＭＧｍを生成する。
【００５６】
続いてステップＳ１０５において、画像処理部１０４は、複数の中間画像ＩＭＧｍを合成し、ＨＤＲ画像（合成画像）を生成する。露出値の異なる複数の画像からＨＤＲ画像を生成する方法は一般的に広く知られており、いずれの方法を用いてもよい。一例として、ΔＥＶ＝３のとき、以下のようにＨＤＲ画像を生成する。
【００５７】
最も露出値が小さい画像をＩＭＧ１、最も露出値が大きい画像をＩＭＧ３、中間露出値の画像をＩＭＧ２とする。まず、画像ＩＭＧ２において検出された輝度飽和領域に含まれる画素に対し、画像ＩＭＧ１における同じインデックスの画素を積算し、中間合成画像ＩＭＧ１２を生成する。次に、画像ＩＭＧ３において検出された輝度飽和領域に含まれる画素に対し、中間合成画像ＩＭＧ１２の同じインデックスの画素を積算し、中間合成画像ＩＭＧ１２３を生成する。中間合成画像ＩＭＧ１２３は、画像ＩＭＧ１、ＩＭＧ２、ＩＭＧ３に比べて、最大３倍の階調数を有する。このため、公知のトーンマッピングと呼ばれる技術を用いて、階調を１／３に圧縮する。例えば、最も単純には、図６に示されるような変換特性が用いられる。図６は、階調圧縮のための変換特性図である。図６において、横軸は入力画像（中間合成画像ＩＭＧ１２３）の画素値（入力画素値）、縦軸は出力画像の画素値（出力画素値）をそれぞれ示す。この変換特性に基づいて諧調を圧縮することにより、画像ＩＭＧ１、ＩＭＧ２、ＩＭＧ３と同様の階調でありながら、輝度レンジを拡大したようなＨＤＲ画像が生成される。
【００５８】
続いてステップＳ１０６において、システムコントローラ１０７は、画像処理部１０４により生成されたＨＤＲ画像を画像記憶媒体１０９に記憶させる。またシステムコントローラ１０７は、ＨＤＲ画像を画像表示部１０５に表示させてもよい。またシステムコントローラ１０７は、画像ＩＭＧ１、ＩＭＧ２、ＩＭＧ３を画像記憶媒体１０９に記憶してもよい。
【００５９】
本実施例の撮像装置によれば、単一の画像から輝度飽和領域（飽和画素領域）の輝度値（最大輝度値）を推定することにより、ＨＤＲブラケット撮影に必要な、適切な最大露出値を得ることができる。このため、ＨＤＲブラケット撮影の準備を簡易かつ高速に行うことが可能となる。
【実施例２】
【００６０】
次に、本発明の実施例２について説明する。本実施例では、単一の画像から最大輝度値を推定し、それに基づいて露出値を設定してＨＤＲ撮影を行う撮像装置について説明する。実施例１の撮像装置が露出値を変更して撮影した複数の画像を用いてＨＤＲ画像を生成するのに対し、本実施例の撮像装置は画素ごとに露出を変更可能な撮像素子を用いてＨＤＲ画像を生成する。なお、本実施例の撮像装置の基本構成は、図４を参照して説明した実施例１の撮像装置１０と同様であるため、その説明については省略する。
【００６１】
まず、図７を参照して、本実施例における撮像素子１０２について説明する。図７は、撮像素子１０２の模式図であり、光軸と直交する方向から見た場合の撮像素子１０２の断面を示している。撮像素子１０２は、光電変換素子ＳＥＮの上に可変開口ＡＰ（開口絞り）およびマイクロレンズアレイＭＬを有する。また撮像素子１０２は、不図示のカラーフィルタおよびローパスフィルタを有する。光電変換素子ＳＥＮの各画素に各可変開口ＡＰが対応しており、各可変開口ＡＰは、システムコントローラ１０７の指令に従い、開口の面積が画素ごとに独立して変化する。可変開口ＡＰは、例えば面積を変更可能な円形であるが、一方向にのみ開閉するシャッターでもよく、光電変換素子ＳＥＮに入射する光量を調整可能な機構であれば他の構成でもよい。
【００６２】
また本実施例において、撮像素子１０２として、可変開口ＡＰを有する撮像素子を用いる代わりに、画素ごとに露光時間を変更可能な撮像素子を用いてもよい。すなわち、画素ごとに蓄積電荷を任意のタイミングで読み出せる撮像素子を用いてもよい。また、前述のように出力信号に対して画素ごとに異なるゲインを設定可能な撮像素子や、画素ごとに独立して透過率を制御可能な液晶素子などを備えた撮像素子でもよい。本実施例の撮像装置は、前述のいずれかの機構により、撮像光学系１００により調整される露出値とは別に、画素ごとに露出値を調整することができる。以下、この露出値を画素露出値と呼ぶ。
【００６３】
次に、図８を参照して、本実施例における画像処理方法（画像処理プログラム）について説明する。図８の各ステップは、主に、システムコントローラ１０７の指令に基づいて画像処理部１０４（推定手段１０４ａ、設定手段１０４ｂ）により実行される。
【００６４】
まずステップＳ２０１において、システムコントローラ１０７は、撮像光学系１００および撮像素子１０２により構成される撮像系を制御して、被写体の撮像を行う。撮像の際の露出値ＥＶｐとして、例えば不図示の測光装置を用いて一般的に知られている評価測光を行い、画角全体に適した値が用いられる。画素露出値は、撮像素子１０２の全面において、基準露出値ｌｏｃａｌＥＶ０に固定する。基準露出値ｌｏｃａｌＥＶ０は、例えば、可変開口ＡＰを全て最大サイズに開いた状態での露出値である。画像処理部１０４は、撮像素子１０２から出力されてＡ／Ｄコンバータ１０３にてＡ／Ｄ変換されたデジタル信号を用いて、画像ＩＭＧｐ（準備画像）を生成する。
【００６５】
続いてステップＳ２０２において、実施例１のステップＳ１０２と同様に、画像処理部１０４は輝度飽和領域ＲＥＧｓ（飽和画素領域）を検出する。輝度飽和領域ＲＥＧｓが検出されない場合、続くステップＳ２０３およびステップＳ２０４をスキップし、画像ＩＭＧｐを出力画像とすることができる。
【００６６】
続いてステップＳ２０３において、画像処理部１０４（推定手段１０４ａ）は、画像ＩＭＧｐの輝度飽和領域ＲＥＧｓに対して、輝度値推定処理を行う。具体的には、画像処理部１０４は、輝度飽和領域ＲＥＧｓにおいて前述の輝度値推定方法により画素値分布を再構成し、輝度飽和領域ごとに最大画素値Ｉｌｏｃａｌｍａｘを取得する。そして画像処理部１０４は、最大画素値Ｉｌｏｃａｌｍａｘを用いて、以下の式（６）で表されるように、輝度飽和領域ごとに適した露出値ｌｏｃａｌＥＶｓを算出する。
【００６７】
【数６】
2017118296.tif 000008
【００６８】
式（６）において、ｃｅｉｌは小数点切り上げを示す。
【００６９】
続いてステップＳ２０４において、システムコントローラ１０７は、輝度飽和領域ＲＥＧｓにおいて、輝度飽和領域ごとに適した画素露出値ｌｏｃａｌＥＶｓになるように、各画素の可変開口ＡＰを調節し、撮像を行う。このとき、露出値はＥＶｐに設定される。このように設定手段１０４ｂは、露出パラメータとして、撮像素子１０２の画素（画素領域）ごとの露出値を設定する。そしてシステムコントローラ１０７は、画素領域ごとの露出値で単一の画像を撮影する。画像処理部１０４は、撮像素子１０２から出力されてＡ／Ｄコンバータ１０３にてＡ／Ｄ変換されたデジタル信号を用いて、ＨＤＲ画像を生成する。
【００７０】
続いてステップＳ２０５において、システムコントローラ１０７は、画像処理部１０４により生成されたＨＤＲ画像を画像記憶媒体１０９に記憶させる。またシステムコントローラ１０７は、ＨＤＲ画像を画像表示部１０５に表示させてもよい。
【００７１】
本実施例の撮像装置によれば、単一画像から輝度飽和領域の最大輝度を推定することにより、ＨＤＲ撮影に必要な、適切な最大露出値を得ることができる。このため、ＨＤＲ撮影を行う準備を簡易かつ高速に行うことが可能となる。
【実施例３】
【００７２】
次に、本発明の実施例３について説明する。本実施例では、測光を行わずに撮像した単一の画像に基づく輝度値推定と、ＨＤＲブラケット撮影とを繰り返し行う撮像装置について説明する。なお、本実施例の撮像装置の基本構成は、図４を参照して説明した実施例１の撮像装置１０と同様であるため、その説明については省略する。
【００７３】
図９は、輝度飽和領域を含む画像の例である。図９において、輝度飽和領域は黒塗りで示されている。前述の輝度飽和推定方法は、図９（ａ）に示される画像のように輝度飽和領域の形状が歪な場合や、図９（ｂ）に示される画像のように輝度飽和領域が非常に大きい場合、輝度値の推定精度が低下する可能性がある。そこで本実施例では、輝度飽和推定とＨＤＲブラケット撮影とを繰り返すことにより、このような場合でも輝度飽和を高精度に低減したＨＤＲ画像を生成することができる。
【００７４】
次に、図１０を参照して、本実施例における画像処理方法（画像処理プログラム）について説明する。図１０の各ステップは、主に、システムコントローラ１０７の指令に基づいて画像処理部１０４（推定手段１０４ａ、設定手段１０４ｂ）により実行される。
【００７５】
まずステップＳ３０１において、システムコントローラ１０７は、撮像光学系１００および撮像素子１０２により構成される撮像系を制御して、被写体の撮像を行う。撮像の際の露出値ＥＶｐとしては、予め設定された基準値やユーザにより設定される値などの任意の値が用いられる。画像処理部１０４は、撮像素子１０２から出力されてＡ／Ｄコンバータ１０３にてＡ／Ｄ変換されたデジタル信号を用いて、画像ＩＭＧｐ（準備画像）を生成する。
【００７６】
続いてステップＳ３０２において、画像処理部１０４は、記憶部１０８から飽和画素値Ｉｓを読み出する。そして画像処理部１０４は、画像ＩＭＧｐまたは後述の複数の中間画像ＩＭＧｍのうち最も露出値が大きい単一の画像において、画素値が飽和画素値Ｉｓである複数の画素を輝度飽和領域ＲＥＧｓ（画素飽和領域）として検出する。輝度飽和領域ＲＥＧｓ（飽和画素値Ｉｓを有する画素）が検出されない場合、ステップＳ３０５に進む。一方、輝度飽和領域ＲＥＧｓ（飽和画素値Ｉｓを有する画素）が検出された場合、ステップＳ３０３に進む。なおステップＳ３０２にて飽和画素値Ｉｓを有する画素が検出された場合でも、その数が予め設定された数またはユーザにより設定された任意の数以下である場合、ステップＳ３０５に進んでもよい。
【００７７】
ステップＳ３０３、Ｓ３０４、Ｓ３０５は、図５を参照して実施例１にて説明したステップＳ１０３、Ｓ１０４、Ｓ１０５とそれぞれ同様である。本実施例において、推定手段１０４ａは、露出パラメータに基づく撮影により得られた第２の単一の画像に基づいて、第２の輝度値を推定する。設定手段１０４ｂは、第２の輝度値に基づいて第２の露出パラメータを設定する。そしてシステムコントローラ１０７は、第２の露出パラメータに基づいて第２の撮像を行う。
【００７８】
本実施例の撮像装置によれば、輝度値推定とＨＤＲブラケット撮影とを繰り返すことにより、測光を行うことなくＨＤＲ撮影を行う準備を簡易かつ高速に行うことが可能になる。
【００７９】
以上のとおり、各実施例の撮像装置によれば、単一の画像から輝度レンジ外の輝度値を推定することにより、単一の画像からＨＤＲ撮影に適した露出値を取得することが可能であり、簡易かつ高速にＨＤＲブラケット撮影を行うことが可能である。このため各実施例によれば、簡易かつ高速に撮影画像の画質を向上させる撮像装置、画像処理装置、画像処理方法、画像処理プログラム、および、記憶媒体を提供することができる。
【００８０】
（その他の実施例）
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００８１】
以上、本発明の好ましい実施例について説明したが、本発明はこれらの実施例に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００８２】
１０      撮像装置
１０２    撮像素子
１０４ａ  推定手段
１０４ｂ  設定手段
１０７    システムコントローラ（制御手段）
【図１】
2017118296.tif 000010
【図２】
2017118296.tif 000011
【図３】
2017118296.tif 000012
【図４】
2017118296.tif 000013
【図５】
2017118296.tif 000014
【図６】
2017118296.tif 000015
【図７】
2017118296.tif 000016
【図８】
2017118296.tif 000017
【図９】
2017118296.tif 000018
【図１０】
2017118296.tif 000019