(57)【要約】【課題】画面内の同一の被写体領域内でＤレンジが広いシーンにおいても、飽和（白飛び）や黒潰れの領域が少ない画像を生成できるようにする。【解決手段】画像を取得する取得部と、取得部により取得した画像から各被写体の領域を検出する被写体検出部と、被写体検出部によって検出された被写体領域ごとに輝度分布を算出する輝度分布算出部と、被写体検出部によって検出された被写体領域ごとに代表輝度値を算出する代表輝度値算出部と、代表輝度値算出部により算出された被写体領域ごとの代表輝度値の間の関係と、輝度分布算出部により算出された被写体領域ごとの輝度分布とに基づいて、被写体領域ごとの階調特性を決定する決定部とを備える。【選択図】  図２
2015082768.tif 000002
【特許請求の範囲】
【請求項１】
画像を取得する取得手段と、
前記取得手段により取得した画像から各被写体の領域を検出する検出手段と、
前記検出手段によって検出された被写体領域ごとに輝度分布を算出する輝度分布算出手段と、
前記検出手段によって検出された被写体領域ごとに代表輝度値を算出する代表輝度値算出手段と、
前記代表輝度値算出手段により算出された被写体領域ごとの代表輝度値の間の関係と、前記輝度分布算出手段により算出された被写体領域ごとの輝度分布とに基づいて、被写体領域ごとの階調特性を決定する決定手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記決定手段は、前記代表輝度値算出手段により算出された被写体領域ごとの代表輝度値と、前記輝度分布算出手段により算出された被写体領域ごとの輝度分布とに基づいて、被写体領域ごとに一律に掛けるゲイン量を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記代表輝度値算出手段により算出された被写体領域ごとの代表輝度値と、前記輝度分布算出手段により算出された被写体領域ごとの輝度分布とに基づいて、被写体領域ごとのトーンカーブを決定することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記決定手段は、それぞれの被写体の間の輝度段差に応じて前記トーンカーブの圧縮量を調整することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記代表輝度値算出手段により算出した被写体領域ごとの代表輝度値と、前記輝度分布算出手段により算出した被写体領域ごとの輝度分布とに基づいて、撮影時の被写体領域ごとの露光量を算出する露光量算出手段をさらに備えることを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記決定手段は、被写体領域ごとの輝度分布の特徴に応じて、被写体領域ごとの階調特性を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記代表輝度値算出手段は、被写体領域ごとの平均輝度値を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項８】
画像を取得する取得工程と、
前記取得工程により取得した画像から各被写体の領域を検出する検出工程と、
前記検出工程によって検出された被写体領域ごとに輝度分布を算出する輝度分布算出工程と、
前記検出工程によって検出された被写体領域ごとに代表輝度値を算出する代表輝度値算出工程と、
前記代表輝度値算出工程により算出された被写体領域ごとの代表輝度値の間の関係と、前記輝度分布算出工程により算出された被写体領域ごとの輝度分布とに基づいて、被写体領域ごとの階調特性を決定する決定工程と、
を有することを特徴とする画像処理方法。
【請求項９】
請求項８に記載の画像処理方法の各工程をコンピュータに実行させるためのプログラム。
【請求項１０】
請求項８に記載の画像処理方法の各工程をコンピュータに実行させるためのプログラムを記録したコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、階調補正を行う画像処理装置に関するものである。
【背景技術】
【０００２】
従来より、ハイダイナミックレンジ合成（ＨＤＲ）や覆い焼き等のように、入力信号のＤレンジを拡大した信号を出力段階で階調圧縮する階調補正処理が知られている。
【０００３】
特許文献１では、エッジ量に基づいて画像を複数の領域に分割し、領域内のヒストグラムを算出して、ヒストグラムに対応する領域の階調変換カーブを変換することによりコントラストの高い画像を生成する技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１３０１５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示された技術では、被写体領域間のバランスを考慮しないため、Ｄレンジの圧縮効果を上げるほど、絵として不自然になってしてしまう問題があった。
【０００６】
本発明は上述した課題に鑑みてなされたものであり、その目的は、画面内の同一の被写体領域内でＤレンジが広いシーンにおいても、飽和（白飛び）や黒潰れの領域が少ない画像を生成できるようにすることである。
【課題を解決するための手段】
【０００７】
本発明に係わる画像処理装置は、画像を取得する取得手段と、前記取得手段により取得した画像から各被写体の領域を検出する検出手段と、前記検出手段によって検出された被写体領域ごとに輝度分布を算出する輝度分布算出手段と、前記検出手段によって検出された被写体領域ごとに代表輝度値を算出する代表輝度値算出手段と、前記代表輝度値算出手段により算出された被写体領域ごとの代表輝度値の間の関係と、前記輝度分布算出手段により算出された被写体領域ごとの輝度分布とに基づいて、被写体領域ごとの階調特性を決定する決定手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、画面内の同一の被写体領域内でＤレンジが広いシーンにおいても、飽和（白飛び）や黒潰れの領域が少ない画像を生成することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態の画像処理装置の構成を示したブロック図。
【図２】画像処理部内の領域別階調補正処理に関わる部分の具体的な構成の一例を示すブロック図。
【図３】画像処理部内の領域別階調補正処理全体の動作フロー図。
【図４】被写体領域検出部の処理内容を説明する図。
【図５】領域別一律ゲイン処理と領域別階調圧縮処理の流れについて説明する図。
【図６】各被写体領域の階調圧縮特性を決定する動作フロー図。
【図７】ヒストグラムによるＤレンジの算出について説明する図。
【図８】Ｄレンジ圧縮量算出の際に用いるテーブルについて説明する図。
【図９】ヒストグラムの形状検出について説明する図。
【図１０】ヒストグラムの形状と階調圧縮特性の関係について説明する図。
【図１１】本発明の第２の実施形態の画像処理装置の構成を示したブロック図。
【図１２】露光量制御部内の領域別階調補正処理に関わる部分の具体的な構成の一例を示すブロック図。
【図１３】露光量制御部内の領域別階調補正処理全体の動作フロー図。
【図１４】画像処理部内の領域別階調補正処理に関わる部分の具体的な構成の一例を示すブロック図。
【図１５】画像処理部内の領域別階調補正処理全体の動作フロー図。
【図１６】領域別階調圧縮処理と画像合成処理の流れについて説明する図。
【図１７】複数枚の画像による領域別階調補正処理について説明する図。
【図１８】１枚の画像による領域別階調補正処理について説明する図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。
【００１１】
はじめに、本発明の実施形態では、ダイナミックレンジ（以下、Ｄレンジ）が拡大された入力信号を階調圧縮する画像処理装置について説明する。本発明の実施形態では、白飛びや黒つぶれの少ない画像を得るために、Ｄレンジだけでなく、 階調も人間の見た目に近づける技術として、被写体領域毎に最適な階調補正処理（以下、領域別階調補正処理とする）を行う。この技術は、図１８に示す様な処理を行い、従来の様に輝度の情報だけでなく、被写体領域の検出結果を用いて、被写体領域毎に階調補正を行う技術である。また、図１８に示す様な１枚の画像を用いて領域別階調補正処理を行うだけでなく、図１７に示す様に、複数枚の画像を合成して領域別階調補正処理を行う場合についても説明する。この場合は、輝度の情報と被写体領域の検出結果を用いて、露出の異なる複数枚の画像を合成する比率を調整し、被写体領域毎に異なる画像の信号を出力することにより１枚の画像を生成する処理を行う。
【００１２】
（第１の実施形態）
図１は、本発明の第１の実施形態の画像処理装置の構成を示したブロック図である。図１において、光学系１０１は、ズームレンズやフォーカスレンズから構成されるレンズ群、絞り調整装置、および、シャッター装置を備えている。この光学系１０１は、撮像素子１０２に到達する被写体像の倍率やピント位置、あるいは、光量を調整している。撮像素子１０２は、光学系１０１を通過した被写体の光束を光電変換し、電気信号に変換するＣＣＤやＣＭＯＳセンサー等の光電変換素子である。
【００１３】
Ａ／Ｄ変換部１０３は、入力された画像信号をデジタルの画像信号に変換する。画像処理部１０４は、通常の信号処理の他に、領域別階調補正処理を行う。画像処理部１０４はＡ／Ｄ変換部１０３から出力された画像のみでなく、記録部１０８から読み出した画像に対しても同様の処理を行うことができる。システム制御部１０５は、本実施形態の画像処理装置全体の動作を制御、統括する制御機能部である。画像処理部１０４で処理された画像から得られる輝度値や、操作部１０６から送信された指示に基づいて、光学系１０１や撮像素子１０２の駆動制御も行う。
【００１４】
表示部１０７は、液晶ディスプレイや有機ＥＬ（Electro Luminescence）ディスプレイで構成され、撮像素子１０２で生成された画像や、記録部１０８から読み出した画像を表示する。記録部１０８は、画像を記録する機能を有し、たとえば、半導体メモリが搭載されたメモリカードや光磁気ディスク等の回転記録体を収容したパッケージなどを用いた情報記録媒体を含んでもよく、この情報記録媒体を着脱可能にしてもよい。バス１０９は、画像処理部１０４、システム制御部１０５、表示部１０７、および、記録部１０８の間で画像をやり取りするために用いられる。
【００１５】
ここで、画像処理部１０４内の領域別階調補正処理に関わる部分の具体的な構成について説明する。図２は、画像処理部１０４内の領域別階調補正処理に関わる部分の具体的な構成の一例を示すブロック図である。
【００１６】
図２に示すように、本実施形態の画像処理部１０４内の領域別階調補正処理に関わる部分は、被写体領域検出部２０１、領域別輝度値算出部２０２、領域別ヒストグラム算出部２０３を備える。また、領域別階調圧縮特性算出部２０４、領域別一律ゲイン量決定部２０５、領域別一律ゲイン処理部２０６、領域別階調圧縮処理部２０７も備える。
【００１７】
図３は、図２のブロック構成を有する部分の動作を示すフローチャートである。以下、図３の動作フローを参照しながら説明する。
【００１８】
ステップＳ３０１では、入力された画像に対し、検出対象である被写体領域の検出を行う。
【００１９】
被写体領域の検出について、図４を用いて説明する。本実施形態では、図４に示す様に、空、背景、人物の３領域を検出する。なお、背景とは空と人物以外の領域のことを指す。また、空は、雲や太陽の領域も含む。図４に示す様に、本実施形態では、検出対象の被写体領域の信号を１とし、それ以外の領域の信号を０として２値化画像により各被写体の抽出結果を作成する。抽出結果はこのやり方に留まらず、画像を信頼度に変換したものを被写体の抽出結果としても良い。
【００２０】
本実施形態では、空用画像、背景用画像、人物用画像に対し、空、背景、人物の３領域の検出を行うが、撮影シーンに応じて、被写体検出を行う画像を選択し、検出する被写体領域を決定しても良い。被写体検出方法についてはニューラルネットワークによる学習データを用いた物体認識等、公知の方法で良い（例えば、特開２００６−３９６６６号公報参照）。ステップＳ３０１の処理は、図２の被写体領域検出部２０１で行う。
【００２１】
図３に戻り、ステップＳ３０２以降の処理について説明する。ステップＳ３０２では、ステップＳ３０１の処理による被写体領域の検出結果を用いて、各被写体領域の輝度値を算出する（代表輝度値算出）。本実施形態では空用画像を用いて、空、背景、人物各々の領域毎に輝度値の平均値（平均輝度値）を算出し、各被写体領域の輝度値とする。また、平均の輝度値でなく、座標に応じた重み付けを用いて輝度値を算出する方法を用いても良い。また、被写体領域の種類によって輝度値の算出方法を変えても良い。ステップＳ３０２の処理は、図２の領域別輝度値算出部２０２で行う。
【００２２】
ステップＳ３０３では、ステップＳ３０１の処理による被写体領域の検出結果を用いて、被写体領域毎の輝度信号のヒストグラムを算出する（輝度分布算出）。ステップＳ３０４では、ステップＳ３０２で算出した被写体領域毎の輝度値と、ステップＳ３０３で算出した被写体領域毎のヒストグラムを用いて、各々の被写体領域の階調圧縮特性を決定する。なお、階調圧縮処理とはｍ≧０，ｎ≧０の時、ｍ＋ｎビットの入力信号をｍビットの出力信号に圧縮する処理のことで、本実施形態では、公知の技術であるガンマカーブによる圧縮方法を用いる（例えば、特開２０１０−１９３０９９号公報参照）。ステップＳ３０４の処理は、図２の領域別階調圧縮特性算出部２０４で行う。ステップＳ３０４の処理については、後程図６の動作フロー図を用いて詳細に説明する。
【００２３】
図３に戻り、ステップＳ３０５以降の処理について説明する。ステップＳ３０５では、ステップＳ３０４で決定した各被写体領域の階調圧縮特性を元に、各被写体領域の一律ゲイン量を決定する。各被写体領域の一律ゲイン量の決定は、空、背景、人物のＤレンジ圧縮量SKY_comp、BACK_comp、HUMAN_compと、空、背景、人物の仮の一律ゲイン量SKY_GAIN0、BACK_GAIN0、HUMAN_GAIN0を用いて（式１）で算出される。空、背景、人物のＤレンジ圧縮量SKY_comp、BACK_comp、HUMAN_compについては、後程詳細に説明する。
【００２４】
【数１】
2015082768.tif 000003
【００２５】
空、背景、人物の一律ゲイン量SKY_GAIN、BACK_GAIN、HUMAN_GAINを（式１）によって算出した後、ステップＳ３０６の処理へ移る。
【００２６】
ステップＳ３０６では、ステップＳ３０５で算出した各被写体領域の一律ゲイン量を元に被写体領域毎に一律ゲインをかける処理を行う。ステップＳ３０７では、ステップＳ３０６で被写体領域毎に一律ゲインをかけた後、ステップＳ３０４で算出した被写体領域毎の階調圧縮特性を元に、被写体領域毎に階調圧縮処理を行い出力し、終了する。
【００２７】
ステップＳ３０６とステップＳ３０７の処理について図示すると、図５の様になる。入力画像から、被写体領域分の入力画像を用意した後、それぞれの入力画像に対し、別々の一律ゲイン処理と階調圧縮処理を行ったものを被写体領域別に出力し、１枚の出力画像を生成する流れになる。図５の空用一律ゲイン、背景用一律ゲイン、人物用一律ゲインは、ステップＳ３０５で算出したSKY_GAIN、BACK_GAIN、HUMAN_GAINを指す。また、空用階調圧縮処理、背景用階調圧縮処理、人物用階調圧縮処理の階調圧縮特性（トーンカーブ）は、ステップＳ３０４で算出した、SKY_γ、BACK_γ、HUMAN_γである。
【００２８】
次に、ステップＳ３０４の各々の被写体領域の階調圧縮特性を決定する処理について詳細に説明する。
【００２９】
図６はステップＳ３０４の動作フロー図である。図６を用いて、ステップＳ３０４の処理について説明する。
【００３０】
ステップＳ５０１は、被写体領域毎に仮の一律ゲイン量を算出する。仮の一律ゲイン量とは、次のステップＳ５０２、５０３の処理時に用いる。空、背景、人物の輝度値をそれぞれSKY_Y、BACK_Y、HUMAN_Yとする。また、空、背景、人物の目標輝度値をYref_SKY、Yref_BACK、Yref_HUMANとする。上記の輝度値、目標輝度値を用いて、下記の（式２）の様に被写体領域間の輝度段差（被写体領域間の輝度値の関係）を算出し、輝度段差を用いて一律ゲイン量を決定する。
【００３１】
【数２】
2015082768.tif 000004
【００３２】
ここで、ΔBHは背景と人物の輝度段差、ΔSHは空と人物の輝度段差、ΔBSは背景と人物の輝度段差である。
【００３３】
輝度段差ΔBH、ΔSH、ΔBSを用いた各被写体領域の一律ゲインの算出は領域別階調補正処理の方法を用いて算出する。この方法により算出した、空領域の仮の一律ゲイン量をSKY_GAIN0、背景領域の仮の一律ゲイン量をBACK_GAIN0、人物領域の仮の一律ゲイン量をHUMAN_GAIN0とする。単位は倍数で表され、例えば、人物領域の仮の一律ゲイン量が２倍である時はHUMAN_GAIN0の値は２である。
【００３４】
ステップＳ５０２では、各被写体領域のＤレンジの算出を行う。このＤレンジとは、ステップＳ５０１で算出した仮の一律ゲイン量によりゲイン処理した場合の明るさにおいて、各被写体領域で必要なＤレンジのことを指す。
【００３５】
図７を用いて、ステップＳ５０２の各被写体領域のＤレンジの算出方法について説明する。図７（ａ）は、入力画像に対して算出された人物領域のヒストグラムである。図７（ａ）の様に、人物領域に存在する信号値のうち、最も小さい信号値から最も大きい信号値までの幅を入力画像の人物領域におけるＤレンジとして算出する。
【００３６】
しかしながら、図７（ｂ）の様に、人物領域に一律のゲインをかけた場合、ゲイン量に比例してＤレンジは広くなる。これを考慮し、入力画像の人物領域におけるＤレンジに、ステップＳ５０１で算出した人物領域の仮の一律ゲイン量HUMAN_GAIN0を乗算することにより、目的の明るさにした時の人物領域のＤレンジの算出を行う。
【００３７】
入力画像における各被写体領域のＤレンジをHUMAN_IN_D_range、BACK_IN_D_range、SKY_IN_D_rangeとする。入力画像の信号のｂｉｔ数に対応したＤレンジをIN_D_rangeとすると、各被写体領域で必要なＤレンジ量HUMAN_D_range、BACK_D_range、SKY_D_rangeの算出は（式３）の様になる。なお、HUMAN_D_range、BACK_D_range、SKY_D_rangeの値については、IN_D_rangeを１とした比率で表現される。本実施形態では、この比率が１以下になった場合は、１にクリップされる様に制御する。
【００３８】
HUMAN_D_range ＝ ( HUMAN_IN_D_range × HUMANGAIN0 )/IN_D_range
BACK_D_range ＝ ( BACK_IN_D_range × BACKGAIN0 )/IN_D_range        …(式３)
SKY_D_range ＝ ( SKY_IN_D_range × SKYGAIN0 )/IN_D_range
図６に戻り、ステップＳ５０３以降について説明を行う。ステップＳ５０３は、ステップＳ５０２で算出した各被写体領域のＤレンジと、対象の被写体領域に対する他の被写体領域との輝度段差を元に、各被写体領域のＤレンジ圧縮量の算出を行う。例えば、背景領域のＤレンジ圧縮量を算出する場合、背景領域のＤレンジと、背景領域に対する人物領域との輝度段差ΔBH、背景領域に対する空領域との輝度段差ΔBSを元に算出する。単純に被写体領域のＤレンジのみでＤレンジ圧縮量を算出してしまうと、他の被写体領域とのバランスを考慮していないため、合成した画像が不自然になる。そのため、対象の被写体領域のＤレンジだけでなく、対象の被写体領域に対する他の被写体領域との輝度段差に応じて、対象の被写体領域のＤレンジ圧縮量を算出する。
【００３９】
図８を用いて、対象の被写体領域のＤレンジ圧縮量の算出方法について説明する。図８は、横軸を輝度段差、縦軸をＤレンジ圧縮量で表現したテーブルである。
【００４０】
comp_MAXは対象の被写体領域のＤレンジに対応するＤレンジ圧縮量、横軸のΔMAXは、ある一定以上の輝度段差だった場合に、通常処理として、Ｄレンジを拡げずに階調圧縮を行わない処理に切り替えるための閾値である。図８のテーブルにおける入力の輝度段差については、対象の被写体領域に対する他の被写体領域の輝度段差のうち、最も大きい輝度段差のものを入力とする。なお、Ｄレンジ圧縮量については、IN_D_rangeを１とした比率で表現される。例えば通常に比べ、１段分広いＤレンジを圧縮させる様なＤレンジ圧縮量の値は１／２となる。また、通常処理として、Ｄレンジを拡げずに階調圧縮を行わない場合は、１で表される。
【００４１】
以上の様に、輝度段差が大きければ大きい程、Ｄレンジ圧縮量を通常の圧縮量に近づく様なテーブルを用いることにより、対象の被写体領域のＤレンジ圧縮量を算出する。これにより、空、背景、人物のＤレンジ圧縮量をそれぞれSKY_comp、BACK_comp、HUMAN_compとして算出する。なお、上記の説明では、図８のテーブルにおける入力の輝度段差については、対象の被写体領域に対する他の被写体領域の輝度段差のうち、最も大きい輝度段差のものを入力とするとしたが、他の値であってもよい。例えば、対象の被写体領域に対する複数の輝度段差の平均値であってもよいし、対象の被写体領域に対する複数の輝度段差を重み付け演算して求めた値であってもよい。
【００４２】
図６に戻り、ステップＳ５０４以降について説明を行う。ステップＳ５０４では、各被写体領域のヒストグラムの形状を検出する。このヒストグラムの形状の検出とは、低輝度側に信号値が多く分布しているか、高輝度側に信号値が多く分布しているか、これら２つのどちらでも無いかを判定することである。
【００４３】
図９を用いて、ヒストグラムの形状の検出について説明する。まず、対象の被写体領域のヒストグラムから中間輝度値を算出する。本実施形態では、対象の被写体領域の輝度信号の内、最大値と最小値の信号値をMAX_Y、MIN_Yとして、中間輝度値MID_Yは(式４)で算出する。
【００４４】
MID_Y ＝ ( MAX_Y ＋ MIN_Y )/2                  …（式４）
次に、（式４）により算出したMID_Yに対し、ステップＳ３０２で算出した対象の被写体領域の輝度値との差分ΔYを算出する。（式５）は、対象被写体領域が背景だった場合を例に示した式である。
【００４５】
ΔY ＝ BACK_Y − MID_Y                        …（式５）
最後に、（式５）で算出したΔYの値が閾値以上か、もしくは閾値未満かでヒストグラムの形状HIST_TYPEを判定する。
【００４６】
ΔY＜TH1      ⇒ HIST_TYPE ＝ 0
TH1≦ΔY＜TH2 ⇒ HIST_TYPE ＝ 1                …（式６）
TH2≦ΔY      ⇒ HIST_TYPE ＝ 2
HIST_TYPEの値が０の時、ヒストグラムの形状は低輝度側に信号値が多く分布している形状になっていると判定している。またHIST_TYPEの値が２の時、ヒストグラムの形状は高輝度側に信号値が多く分布している形状になっていると判定している。またHIST_TYPEの値が１の時は上記の２つの形状以外であると判定している。（式６）のTH1とTH2の値については、被写体毎に値を変更しても良い。または、シーンに応じて値を変えてもよい。例えば、人物は着ている服等の影響などでヒストグラムの形状が大きく変わり、階調を変化させると、不自然になってしまう場合があるため、人物領域のヒストグラムの形状を検出する時は、TH1からTH2までの範囲を広めに設定する様にする。
【００４７】
以上の方法を用いて、空、背景、人物のヒストグラムの形状検出をそれぞれ行い、検出した結果をSKY_HIST_TYPE、BACK_HIST_TYPE、HUMAN_HIST_TYPEとする。
【００４８】
図６に戻り、ステップＳ５０５以降について、説明を行う。ステップＳ５０５では、ステップＳ５０４までの処理結果を元に各被写体領域の階調圧縮特性を決定する。階調圧縮特性とは、本実施形態ではガンマカーブの形状のことを指しており、ステップＳ５０５後の処理で、被写体領域毎に、ガンマカーブの形状に応じて階調圧縮処理を行う。ガンマカーブを用いた階調圧縮については公知の技術である（例えば、特開２０１０−１９３０９９号公報参照）。
【００４９】
図１０を用いて階調圧縮特性の決定方法について説明する。図１０（ａ）、図１０（ｂ）、図１０（ｃ）は、それぞれステップＳ５０４で算出したHIST_TYPE の値が０，１，２の場合に対応している。図１０（ａ）の様にヒストグラムの形状が低輝度側に多く分布している様な形状である場合、低輝度側の階調を保持し、高輝度側の階調を圧縮させるような階調圧縮特性を用いる。また、図１０（ｂ）の様にヒストグラムの形状が低輝度側高輝度側共にバランス良く分布している様な形状である場合、高輝度側低輝度側共に階調をバランス良く持たせる様な階調圧縮特性を用いる。最後に、図１０（ｃ）の様にヒストグラムの形状が高輝度側に多く分布している様な形状である場合、高輝度側の階調を保持し、低輝度側の階調を圧縮させるような階調圧縮特性を用いる。
【００５０】
なお、階調圧縮特性の横軸の値は、ステップＳ５０３で算出したＤレンジ圧縮量に応じて変化する。Ｄレンジの圧縮量に応じた階調圧縮特性の横軸の値の変化については公知の技術の考え方で良い（例えば、特開２０１０−１９３０９９号公報参照）。この方法によって決定した空、背景、人物の階調圧縮特性をSKY_γ、BACK_γ、HUMAN_γとして、ステップＳ５０５の処理を終了する。
【００５１】
以上が図３のステップＳ３０４の処理である。以上の処理によれば、同一の被写体領域内のＤレンジが広い場合においても、飽和（白飛び）と黒潰れの少ない画像を作成することができる。
【００５２】
（第２の実施形態）
以下、本発明の第２の実施形態について、図面を参照しながら説明する。なお、本実施形態は、露出の異なる複数枚の画像を用いて領域別階調補正処理を行うものである。また、第１の実施形態とは、階調圧縮特性を撮影前に算出し、撮影する複数枚の画像の露出を制御する点と、被写体領域別に入力の画像を決定し、一律ゲイン処理を行わず、被写体領域毎の階調圧縮処理のみ行う点で異なる。
【００５３】
図１１は、第２の実施形態の画像処理装置の構成を示したブロック図である。露光量制御部１１０２が加わった点と、画像処理部１１０１の領域別階調補正処理が異なる点以外は第１の実施形態と同じなので説明を省略する。
【００５４】
露光量制御部１１０２により、被写体領域毎の階調圧縮特性を算出し、被写体領域別に、撮影時に必要とする撮影画像の露光量を決定する（露光量算出）。露光量制御部１１０２の出力情報により、複数枚の異なる露光量で撮影した画像を画像処理部１１０１の入力画像とし、領域別階調補正処理を行う。
【００５５】
露光量制御部１１０２、画像処理部１１０１の順に処理内容について説明する。
【００５６】
図１２は、露光量制御部１１０２内の領域別階調補正処理に関わる部分の具体的な構成の一例を示したブロック図である。図１２に示す様に、領域別階調補正処理に関わる部分の具体的な構成として、被写体領域検出部１２０１、領域別輝度値算出部１２０２、領域別ヒストグラム算出部１２０３、領域別階調圧縮特性算出部１２０４、領域別露光量決定部１２０５を有する。
【００５７】
図１３は、図１２のブロック構成を有する部分の動作を示すフローチャートである。以下、図１３の動作フローを参照しながら説明する。
【００５８】
露光量制御部１１０２の入力画像として、本実施形態ではＥＶＦ画像を使用する。ＥＶＦ画像とは、記録部１０８によって記録されないが表示部１０７に表示される、いわゆるライブビュー画像である。ステップＳ１３０１からステップＳ１３０３までの処理は、第１の実施形態と同様なので説明を省略する。なお、ステップＳ１３０１の処理は被写体領域検出部１２０１、ステップＳ１３０２の処理は領域別輝度値算出部１２０２、ステップＳ１３０３の処理は領域別ヒストグラム算出部１２０３でそれぞれ行われる。
【００５９】
ステップＳ１３０４では、各被写体領域の仮の露光量を算出する。仮の露光量とは入力画像の露光量に対する変化量を指す。この変化量は第１の実施形態の仮の一律ゲインと同じ考え方でステップＳ１３０２で算出した各被写体の輝度値から算出できる。
【００６０】
上記の方法で算出した空、背景、人物の仮の露光量をΔBv_SKY0、ΔBv_BACK0、ΔBv_HUMAN0とする。露光量はAPEX値換算で表される。例として、現在の入力画像の露光量に対して、空の明るさを１段明るくするのが適切な場合、ΔBv_SKYの値は−１となる。なお、ステップＳ１３０４の処理は、領域別階調圧縮特性算出部１２０４で行われる。
【００６１】
ステップＳ１３０５からステップＳ１３０７までの処理は、第１の実施形態と同様なので説明を省略する。ただし、第１の実施形態の説明における仮の一律ゲイン量として算出していたSKY_GAIN0、BACK_GAIN0、HUMAN_GAIN0については、下記の（式７）で算出した値を使用する。
【００６２】
SKY_GAIN0 ＝ ２-ΔBv_SKY
BACK_GAIN0 ＝ ２-ΔBv_BACK            …（式７）
HUMAN_GAIN0 ＝ ２-ΔBv_HUMAN
なお、SKY_GAIN0、BACK_GAIN0、HUMAN_GAIN0についてはステップＳ１３０５からステップＳ１３０７までの処理でしか使用しない。なお、ステップＳ１３０５からステップＳ１３０７までの処理は、領域別階調圧縮特性算出部１２０４で行われる。
【００６３】
ステップＳ１３０８では、ステップＳ１３０６で算出した各被写体領域のＤレンジ圧縮量を元に、各被写体領域の露光量を決定する。この露光量とは、入力画像の露光量に対する変化量を指す。空、背景、人物のＤレンジ圧縮量を第１の実施形態と同じくSKY_comp、BACK_comp、HUMAN_compとして、空、背景、人物の露光量ΔBv_SKY、ΔBv_BACK、ΔBv_HUMANを(式８)で算出する
【００６４】
【数３】
2015082768.tif 000005
【００６５】
なお、ステップＳ１３０８の処理は、領域別露光量決定部１２０５で行われる。以上によって、露光量制御部１１０２の説明を終了する。
【００６６】
ステップＳ１３０８で算出した各被写体領域の露光量を元に、空用、背景用、人物用の露光量の画像をそれぞれ取得する。それらの画像を空用画像、背景用画像、人物用画像と呼称する。空用画像、背景用画像、人物用画像を取得した後、画像処理部１１０１で処理を行う。
【００６７】
図１４は、画像処理部１１０１内の領域別階調補正処理に関わる部分の具体的な構成の一例を示したブロック図である。図１４に示す様に、領域別トーンマッピング処理に関わる部分の具体的な構成として、基準画像選択部１４０１、座標変換係数算出部１４０２、画像変形処理部１４０３を有する。さらに、被写体領域検出部１４０４、領域別階調圧縮処理制御部１４０５、画像別階調圧縮処理部１４０６、画像合成部１４０７も有する。入力として空用画像、背景用画像、人物用画像と称した撮影画像と、各被写体領域の階調圧縮特性を含んだ露光量制御部１１０２の出力情報とを有する。
【００６８】
図１５は、図１４のブロック構成を有す部分の動作を示すフローチャートである。以下、図１５の動作フローを参照しながら説明する。
【００６９】
ステップＳ１５０１では、入力された露出の異なる画像の位置合わせを行うために、基準となる画像を選択する。位置合わせの基準となる画像として本実施形態では入力された３枚の画像のうち、露光量が中間に位置する画像を選択する。ステップＳ１５０１の処理は、図１４の基準画像選択部１４０１で行われる。
【００７０】
ステップＳ１５０２では、ステップＳ１５０１で選択した位置合わせの基準となる画像に対し、その他の入力画像の位置合わせを行うための座標変換係数を算出する。座標変換係数を算出するために、本実施形態では画像間の位置ずれ量を検出し、検出した位置ずれ量から座標変換係数を算出する。位置ずれ量検出の方法は、パターンマッチングを用いた方法など公知の方法で良い。
【００７１】
また、本実施形態では、座標変換係数として射影変換式（式９）の係数α0〜α7を算出する。算出方法は最小二乗法などを用いた公知の方法で良い。
【００７２】
【数４】
2015082768.tif 000006
【００７３】
ステップＳ１５０２の処理は、図１４の座標変換係数算出部１４０２で行われる。
【００７４】
ステップＳ１５０３では、ステップＳ１５０２で算出した座標変換係数を元に位置合わせの基準として選択された画像以外の入力画像の座標変換を行い、画像を変形する。ステップＳ１５０３の処理は、図１４の画像変形処理部１４０３で行われる。
【００７５】
ステップＳ１５０４では、ステップＳ１５０３の処理により位置合わせを行った画像各々に対し、被写体領域を検出する。被写体領域の検出方法については、第１の実施形態と同様なので説明は省略する。ステップＳ１５０４の処理は、図２の被写体領域検出部１４０４で行われる。
【００７６】
ステップＳ１５０５では、各被写体用の入力画像に対応する階調圧縮特性を露光制御部１１０２の出力情報から読み込む処理を行う。ステップＳ１５０５で読み込んだ空、背景、人物の階調圧縮特性をそれぞれ、SKY_γ、BACK_γ、HUMAN_γとする。SKY_γは空用画像、BACK_γは背景用画像、HUMAN_γは人物用画像に階調圧縮処理を行う際の階調圧縮特性として決定し、ステップＳ１５０６の処理へ移る。なお、ステップＳ１５０５の処理は、領域別階調圧縮処理制御部１４０５で行われる。
【００７７】
ステップＳ１５０６は、ステップＳ１５０５により決定した各被写体用の画像に対応する階調圧縮特性SKY_γ、BACK_γ、HUMAN_γを用いて、各被写体用の画像に対し、それぞれ階調圧縮処理を行う。なお、ステップＳ１５０６の処理は、画像別階調圧縮処理部１４０６で行われる。
【００７８】
ステップＳ１５０７では、ステップＳ１５０６によって階調圧縮処理を行った画像について、空用画像は空領域、背景用画像は背景領域、人物用画像は人物領域を出力することにより１枚の合成画像を作成し終了する。なお、ステップＳ１５０７の処理は、画像合成部１４０７で行われる。
【００７９】
図１６は、ステップＳ１５０６からステップＳ１５０７までの処理を図示したものである。図１６の様に、空用画像、背景用画像、人物用画像の露光量の異なる画像に対し、それぞれの被写体用の階調圧縮処理を行う。階調圧縮処理は、SKY_γは空用画像、BACK_γは背景用画像、HUMAN_γは人物用画像の階調特性として処理を行う。階調圧縮処理を終えた後、白領域で示した出力領域を元に、空用画像は空領域、背景用画像は背景領域、人物用画像は人物領域を各々出力し、１枚の合成画像を作成する。
【００８０】
以上の処理によれば、同一の被写体領域内のＤレンジが広い場合においても、飽和と黒潰れの少ない画像を作成することができる。
【００８１】
その他、前述した実施の形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システム或いはコンピュータといった装置に供給し、そのシステム或いはコンピュータといった装置の制御部（ＣＰＵ、ＭＰＵ、またはそれらを含むもの）が、記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することとなり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００８２】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク（ＣＤ、ＤＶＤ等）、光磁気ディスク（ＭＯ等）、磁気テープ、不揮発性のメモリカード、ＲＯＭ（Read Only Memory）などを用いることができる。
【００８３】
また、制御部が読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、システム或いはコンピュータといった装置上で稼動しているオペレーティングシステム（Operating System）などが、実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【００８４】
また、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【００８５】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【図１】
2015082768.tif 000007
【図２】
2015082768.tif 000008
【図３】
2015082768.tif 000009
【図６】
2015082768.tif 000010
【図７】
2015082768.tif 000011
【図８】
2015082768.tif 000012
【図９】
2015082768.tif 000013
【図１０】
2015082768.tif 000014
【図１１】
2015082768.tif 000015
【図１２】
2015082768.tif 000016
【図１３】
2015082768.tif 000017
【図１４】
2015082768.tif 000018
【図１５】
2015082768.tif 000019
【図４】
2015082768.tif 000020
【図５】
2015082768.tif 000021
【図１６】
2015082768.tif 000022
【図１７】
2015082768.tif 000023
【図１８】
2015082768.tif 000024