(57)【特許請求の範囲】
【請求項１】
被写体を示す画像信号を取得する取得手段と、
前記取得手段により取得された画像信号に示される画像における主被写体を示す領域を検出する検出手段と、
前記検出手段により検出された領域を用いて、前記画像を主被写体領域及び１つ以上の背景領域に分割する分割手段と、
前記分割手段により分割された背景領域における彩度または輝度を用いて、白飛びを許容しないシーンであるか否かを判定する判定手段と、
前記判定手段により、白飛びを許容しないシーンであると判定されたときであって前記分割手段が前記画像を２つ以上の背景領域に分割した場合に、隣接する背景領域同士の輝度が、飽和輝度を下回るように露出補正量を決定する決定手段と
を備えたことを特徴とする撮像装置。
【請求項２】
前記決定手段は、前記判定手段により、白飛びを許容しないシーンであると判定されたときであって前記分割手段が前記画像を２つ以上の背景領域に分割した場合に、隣接する背景領域同士の輝度差が、所定の輝度差以上となるように露出補正量を決定することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記判定手段は、前記分割領域が前記画像を２つ以上の背景領域に分割した場合に、隣接する背景領域同士の輝度が所定の閾値以下である背景領域が存在し、当該隣接するそれぞれの背景領域の面積が所定の面積以上である場合を、前記白飛びを許容しないシーンと判定することを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記決定手段は、前記検出手段により検出された主被写体を示す領域が前記画像で占める大きさに応じて前記露出補正量を決定することを特徴とする請求項１乃至３のいずれか１項に記載の撮像装置。
【請求項５】
前記分割手段は、前記画像を複数のブロックに分割し、分割された各々のブロックごとにおける輝度を用いて、前記複数のブロックをグループ化し、当該グループ単位で前記画像を主被写体領域及び１つ以上の背景領域に分割することを特徴とする請求項１乃至４のいずれか１項に記載の撮像装置。
【請求項６】
前記複数のブロックをグループ化する際に用いる輝度は、前記複数のブロックにおける各々のブロックの平均輝度であることを特徴とする請求項５に記載の撮像装置。
【請求項７】
前記被写体に対して光を照射するストロボが備えられており、
前記検出手段により検出された主被写体が予め定められた被写体である場合には、前記ストロボによる照射を行わずに、前記決定手段は、前記予め定められた被写体ではない場合よりも、露出補正量を大きくすることを特徴とする請求項１乃至６のいずれか１項に記載の撮像装置。
【請求項８】
前記検出手段により検出された主被写体が前記予め定められた被写体以外の他の被写体である場合には、前記ストロボによる照射を行い、前記決定手段は、前記予め定められた被写体の場合よりも、露出補正量を小さくすることを特徴とする請求項７に記載の撮像装置。
【請求項９】
前記予め定められた被写体は、乳児または幼児であることを特徴とする請求項７または８に記載の撮像装置。
【請求項１０】
撮像装置の制御方法であって、
被写体を示す画像信号を取得する取得ステップと、
前記取得ステップにより取得された画像信号に示される画像における主被写体を示す領域を検出する検出ステップと、
前記検出ステップにより検出された領域を用いて、前記画像を主被写体領域及び１つ以上の背景領域に分割する分割ステップと、
前記分割ステップにより分割された背景領域における彩度または輝度を用いて、白飛びを許容しないシーンであるか否かを判定する判定ステップと、
前記判定ステップにより、白飛びを許容しないシーンであると判定されたときであって前記画像が２つ以上の背景領域に分割された場合に、隣接する背景領域同士の輝度が、飽和輝度を下回るように露出補正量を決定する決定ステップと
を備えたことを特徴とする制御方法。
【請求項１１】
撮像装置の制御方法をコンピュータに実行させるためのプログラムであって、
前記制御方法は、
被写体を示す画像信号を取得する取得ステップと、
前記取得ステップにより取得された画像信号に示される画像における主被写体を示す領域を検出する検出ステップと、
前記検出ステップにより検出された領域を用いて、前記画像を主被写体領域及び１つ以上の背景領域に分割する分割ステップと、
前記分割ステップにより分割された背景領域における彩度または輝度を用いて、白飛びを許容しないシーンであるか否かを判定する判定ステップと、
前記判定ステップにより、白飛びを許容しないシーンであると判定されたときであって前記画像が２つ以上の背景領域に分割された場合に、隣接する背景領域同士の輝度が、飽和輝度を下回るように露出補正量を決定する決定ステップと
を備えたことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置及びその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来より、逆光シーンなど被写体が暗くなるシーンでは、ストロボ発光や露出をオーバー方向に補正するようにして、被写体の明るさを適正にする露出補正機能が知られている。
【０００３】
一方、乳幼児などの光の刺激に対して敏感な被写体に対してストロボ発光を行うことは好ましくない。そこで、ストロボを非発光にし、ストロボ発光時よりも露出補正量を大きくして補正を実施することで、被写体の明るさを適正に近づけることが可能となる。
【０００４】
この場合、単に露出をオーバーにするだけでは、逆光シーンにおける背景部分など、被写体が明るい領域が、より明るくなり白飛びしやすくなる弊害がある。
【０００５】
そこで、人物被写体と背景の輝度から撮影シーンが逆光であるか否かを検出する撮像装置において、背景の輝度を見て、背景が白飛びせず、かつ、人物被写体が可能な限り明るくなるよう露出補正を行う方法が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−２８３５９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、白い壁を背景として被写体を撮影する場合など、撮影シーンによっては必ずしも背景の白飛びを抑制する必要がないことがある。
【０００８】
特許文献１に開示された従来技術では、白飛びを抑制する必要のないシーンにおいても、白飛びしないように露出補正量を小さくし、人物被写体が所望の明るさよりも暗くなる可能性がある。
【０００９】
本発明の目的は、適正な露出制御が可能な撮像装置及びその制御方法、並びにプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、請求項１の撮像装置は、被写体を示す画像信号を取得する取得手段と、前記取得手段により取得された画像信号に示される画像における主被写体を示す領域を検出する検出手段と、前記検出手段により検出された領域を用いて、前記画像を主被写体領域及び１つ以上の背景領域に分割する分割手段と、前記分割手段により分割された背景領域における彩度または輝度を用いて、白飛びを許容しないシーンであるか否かを判定する判定手段と、前記判定手段により、白飛びを許容しないシーンであると判定されたときであって前記分割手段が前記画像を２つ以上の背景領域に分割した場合に、隣接する背景領域同士の輝度が、飽和輝度を下回るように露出補正量を決定する決定手段とを備えたことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、適正な露出制御が可能な撮像装置及びその制御方法、並びにプログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態に係る撮像装置の概略構成を示す図である。
【図２】図１における露出補正量算出処理部により実行される露出補正量算出処理の流れを示すフローチャートである。
【図３】図１における白飛び許容判定部により実行される白飛び許容判定処理の手順を示すフローチャートである。
【図４】図１における露出補正量変更部により、白飛び許容しない場合に実行される露出補正量変更処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について図面を参照しながら詳述する。
【００１４】
図１は、本発明の実施の形態に係る撮像装置１００の概略構成を示す図である。
【００１５】
図１において、画像信号取得部１０１（取得手段）は、被写体を示す画像信号であるデジタル画像信号を取得する。このデジタル画像信号は以下のようにして取得される。
【００１６】
まず、レンズ等で構成される光学部（不図示）を介して入射される光を受け、撮像素子部（不図示）で光量に応じた電荷によるアナログ画像信号が出力される。そして、Ａ／Ｄ変換部（不図示）で撮像素子部から出力されたアナログ画像信号に対して、サンプリング、ゲイン調整、Ａ／Ｄ変換等を実施することで、デジタル画像信号が得られる。このデジタル画像信号が、画像信号取得部１０１に入力されることで、画像信号取得部１０１は画像信号を取得する。
【００１７】
画像信号取得部１０１により取得されたデジタル画像信号は、画像処理部（不図示）により、各種の画像処理が実施されたのち、ＹＵＶ画像信号に変換されて被写体検出部１０２に出力される。以下の説明では、画像信号取得部１０１から出力される信号を、単に画像信号と表現する。
【００１８】
被写体検出部１０２（検出手段）は、画像における主被写体を示す領域を検出する。例えば、画像信号が示す画像内の色情報やコントラスト等によって、顔領域を主被写体を示す領域として検出する。
【００１９】
露出補正量算出部１０３（算出手段）は、画像信号取得部１０１により取得された画像信号に示される画像における輝度を用いて露出補正量を算出する。この露出補正量の算出には、画像内の輝度分布や被写体検出部１０２で検出された被写体領域の輝度値が使用される。
【００２０】
例えば、露出補正量算出部１０３は、顔検出機能によって検出された顔領域を適正輝度に近づけるように露出補正量の算出を行う。その際に、画像全体に占める主被写体の大きさに応じて露出補正量を算出しても良い。
【００２１】
この場合、露出補正量算出部１０３は、主被写体が画像に占める割合が大きいほど、主被写体を優先した撮影であるとみなし、主被写体をより適正に近づけるよう露出補正量を大きくする。
【００２２】
また、顔領域の画像をもとに特定された人物によっても補正量を変えてもよい。例えば、露出補正量算出部１０３は、逆光シーンにおいて乳幼児などの光の刺激に対して敏感な被写体を撮影することを撮影前に把握できれば、ストロボを非発光とし、代わりに露出補正量を大きくする。
【００２３】
一方、ストロボ発光による影響が小さい被写体であると特定されれば、ストロボを発光し、代わりに露出補正量を小さくする。
【００２４】
白飛び許容判定部１０４（分割手段、判定手段）は、被写体検出部１０２により検出された領域を用いて、画像を主被写体領域及び１つ以上の背景領域に分割する。そして、分割された背景領域における彩度または輝度を用いて、画像が白飛びが許容不可能な画像であるか否かを判定する。
【００２５】
例えば、白飛び許容判定部１０４は、被写体が暗い一方で背景に白い壁など無彩色の領域が多く存在するシーンならば白飛びを許容しやすくし、背景に有彩色領域が多く存在すれば白飛びを許容しづらくする。
【００２６】
また、白飛び許容判定部１０４は、画像内の隣接する背景領域間の境界線が露出補正によって目立たなくなるようなシーンならば、白飛びを許容しづらくする。画像内の隣接する背景領域とは、例えば屋外の建物領域とそれに接する空領域を指す。境界線が目立たなくなるかどうかの判定には、例えば隣接する背景領域の輝度値を使用する。
【００２７】
逆光シーンにおいて露出をオーバー方向に補正することで空領域の輝度が飽和した場合、さらに露出をオーバー方向に補正すると、建物領域のみ輝度値が高くなることから、輝度差が小さくなる。そうすると、建物領域と空領域の境界線が目立ちにくくなってしまう為、このようなシーンでは白飛びを許容しづらくする。
【００２８】
露出補正量変更部１０５（変更手段）は、白飛び許容判定部１０４により、画像が白飛びが許容不可能な画像と判定されたとき、隣接する背景領域における輝度が、飽和輝度を下回るように露出補正量算出部１０３により算出された露出補正量を変更する。
【００２９】
例えば、露出補正によって隣接する背景領域の境界線が目立たなくなるようなシーンならば、隣接する背景領域のうち輝度値の高い領域の輝度値が飽和しない範囲までしか露出補正を行わないようにする。
【００３０】
露出補正量出力部１０６は、露出補正量算出部１０３により算出され、露出補正量変更部１０５により必要に応じて変更された露出補正量を出力する。出力された露出補正量に応じて、露出機構を制御する処理を行う。以上説明した構成により、シーンに応じた適正な露出補正量を決定することが可能となる。
【００３１】
図２は、図１における露出補正量算出部１０３により実行される露出補正量算出処理の流れを示すフローチャートである。
【００３２】
図２において、まず輝度ターゲットを設定する（ステップＳ２０１）。この輝度ターゲットは、例えば顔領域が適正輝度になるとみなす輝度や、画面全体が適正輝度になるとみなす輝度を示している。
【００３３】
次いで、被写体検出部１０２により画像内に顔が検出されたか否か判別する（ステップＳ２０２）。
【００３４】
ステップＳ２０２の判別の結果、顔が検出されていないときは（ステップＳ２０２でＮＯ）、ステップＳ２０４に進む。一方、顔が検出されたときは（ステップＳ２０２でＹＥＳ）、顔を含む領域である顔領域の輝度を算出する（ステップＳ２０３）。この算出方法については後述する。
【００３５】
次いで、画像全体の輝度を算出する（ステップＳ２０４）。この算出方法については後述する。そして、算出された顔領域と画像全体との輝度を用いて、露出補正量を算出し（ステップＳ２０５）、本処理を終了する。
【００３６】
まず、ステップＳ２０１での輝度ターゲットについて、顔領域が適正輝度になるとみなす輝度ターゲットをＹｒｅｆＦａｃｅとし、画面全体が適正輝度になるとみなす輝度ターゲットをＹｒｅｆとする。
【００３７】
次に、ステップＳ２０３の顔領域と画像全体との輝度の算出方法について説明する。この輝度の算出方法では、画像をＭ×Ｎの複数ブロックに分割し、各ブロックについて算出された平均輝度Ｙ（ｍ，ｎ）（ｍ＝０〜Ｍ−１，ｎ＝０〜Ｎ−１）を使用する。
【００３８】
例えば、Ｍ＝３２，Ｎ＝２４とし、各ブロックのうち、顔領域に対応するブロックの平均輝度値ＹＬＦａｃｅを顔領域の輝度として算出する。
【００３９】
また、画像全体の輝度の算出方法には、測光重みＷ（ｍ，ｎ）（ｍ＝０〜Ｍ−１，ｎ＝０〜Ｎ−１）を使用する。
【００４０】
この測光重みを用いて、画像全体の輝度値ＹＬＡｌｌを以下の式で算出する。
ＹＬＡｌｌ＝（ΣＹ（ｍ，ｎ）×Ｗ（ｍ，ｎ））／ΣＷ（ｍ，ｎ）
上記Σは、ｍ＝０〜Ｍ−１，ｎ＝０〜Ｎ−１の和である。また、測光重みＷ（ｍ，ｎ）は、例えば画面中心に近づくほど大きい値にする。
【００４１】
こうして得られた顔領域の輝度ＹＬＦａｃｅ、及び画像全体の輝度ＹＬＡｌｌから、露出補正量を算出する。
【００４２】
露出補正量の算出には、まず顔領域および画像全体の輝度ターゲットからの輝度の段数差を算出する。
【００４３】
顔領域の適正輝度からの段数差ＤｅｌｔａＢｖＦａｃｅ、及び画像全体の適正輝度からの段数差ＤｅｌｔａＢｖＡｌｌを以下のように算出する。
ＤｅｌｔａＢｖＦａｃｅ＝ｌｏｇ（ＹＬＦａｃｅ／ＹｒｅｆＦａｃｅ）
ＤｅｌｔａＢｖＡｌｌ＝ｌｏｇ（ＹｒｅｆＦａｃｅ／Ｙｒｅｆ）
上記式の対数の底は２である。
【００４４】
次に、ＤｅｌｔａＢｖＦａｃｅとＤｅｌｔａＢｖＡｌｌとの差分に応じて補正量を算出する。
【００４５】
例えば、顔領域よりも背景領域の方が明るくなる逆光シーンのように、ＤｅｌｔａＢｖＦａｃｅ＜ＤｅｌｔａＢｖＡｌｌとなる場合、まずＤｅｌｔａ＝｜ＤｅｌｔａＢｖＡｌｌ−ＤｅｌｔａＢｖＦａｃｅ｜を算出する。
【００４６】
Ｄｅｌｔａが小さい場合、つまり、顔と背景との明るさの差が小さい場合には顔領域が適正になる露出補正量とする。
【００４７】
一方、Ｄｅｌｔａが大きい場合には、顔領域が適正になるまで露出補正を行うようにすると、補正量が大きくなり背景領域が白飛びしやすくなる可能性がある。
【００４８】
そこで、Ｄｅｌｔａが大きくなるほど大きくなるような比例関係をもつＴｈ＿ＦａｃｅＵｎｄｅｒを用いる。
【００４９】
そして、顔領域が適正よりもＴｈ＿ＦａｃｅＵｎｄｅｒだけ小さくなるように露出補正量を算出することで、顔領域を適正に近づけつつ、背景を白飛びしづらくすることが可能となる。
【００５０】
また、Ｔｈ＿ＦａｃｅＵｎｄｅｒは、Ｄｅｌｔａと比例関係にあるので、顔輝度が適正から大きく暗くなるほど、露出補正後の顔輝度も明るくなりすぎないようになり、背景の白飛びを抑えることが可能となる。
【００５１】
ＤｅｌｔａＢｖＦａｃｅ＞ＤｅｌｔａＢｖＡｌｌとなるシーンでも、上述した方法と同様に顔や背景が白飛び、黒つぶれしないように露出補正量を算出する。
【００５２】
なお、顔領域の画像をもとに個人を特定し、特定した結果に応じてＴｈ＿ＦａｃｅＵｎｄｅｒの値を切り替えても良い。
【００５３】
例えば、被写体に対して光を照射するストロボが備えられているとき、逆光シーンにおいて乳幼児などのストロボ発光が好ましくない人物が被写体であることがわかれば、ストロボ非発光で撮影する代わりに、Ｔｈ＿ＦａｃｅＵｎｄｅｒの値を小さくする。
【００５４】
そうすることで、ストロボ非発光が好ましい被写体に対しては露出補正量を大きくして、被写体輝度をより適正に近づけることが可能となる。
【００５５】
このように、被写体検出部１０２により検出された主被写体を示す領域の画像が予め定められた被写体（乳児または幼児）を示す画像の場合には、ストロボによる照射を行わないようにする。そして、露出補正量算出部１０３は、予め定められた被写体ではない場合に算出する露出補正量よりも、露出補正量を大きく算出する。
【００５６】
また、被写体検出部１０２により検出された主被写体を示す領域の画像が予め定められた他の被写体を示す画像の場合には、ストロボによる照射を行うようにする。そして、露出補正量算出部１０３は、予め定められた被写体（乳児または幼児）の場合に算出する露出補正量よりも、露出補正量を小さく算出するようにしてもよい。なお、予め定められた他の被写体とは、ストロボを発光しても影響の小さい被写体である。
【００５７】
さらに、顔領域が画像に占める割合が大きいほど、主被写体を優先した撮影であるとみなし、主被写体をより適正に近づけるようＴｈ＿ＦａｃｅＵｎｄｅｒの値を小さくして露出補正量を大きく算出するようにしてもよい。このように、露出補正量算出部１０３は、被写体検出部１０２により検出された主被写体を示す領域が画像で占める大きさに応じて前記露出補正量を算出する。
【００５８】
以上の方法により、画像内の輝度情報をもとに、露出補正量を決定することが可能となる。
【００５９】
図３は、図１における白飛び許容判定部１０４により実行される白飛び許容判定処理の手順を示すフローチャートである。
【００６０】
なお、この白飛び許容判定処理では、逆光シーンにおける白飛び許容判定について説明する。
【００６１】
図３において、まず画像をＭ×Ｎのブロックに分割する（ステップＳ３０１）。次いで、ループ変数ｎ，ｍを０で初期化し（ステップＳ３０２）、各ブロックの特徴量を算出する（ステップＳ３０３）。この特徴量の算出については後述する。
【００６２】
次いで、（ｎ×Ｍ＋ｍ）番目のブロックと、そのブロックの上のブロック、及び左のブロックとの特徴量を比較する（ステップＳ３０４）。
【００６３】
（ｎ×Ｍ＋ｍ）番目のブロックの特徴量と、上のブロックとの特徴量との差の絶対値が予め定められた閾値Ｔｈ＿ｓａｍｅ以内か否か判別する（ステップＳ３０５）。この閾値Ｔｈ＿ｓａｍｅは実験等により定めておく。
【００６４】
ステップＳ３０５の判別の結果、差の絶対値が予め定められた閾値Ｔｈ＿ｓａｍｅ以内ではないとき（ステップＳ３０５でＮＯ）、ステップＳ３０７に進む。
【００６５】
一方、ステップＳ３０５の判別の結果、差の絶対値が予め定められた閾値Ｔｈ＿ｓａｍｅ以内のとき（ステップＳ３０５でＹＥＳ）、（ｎ×Ｍ＋ｍ）番目のブロックは、上のブロックと同一グループとする（ステップＳ３０６）。
【００６６】
次いで、（ｎ×Ｍ＋ｍ）番目のブロックの特徴量と、左のブロックとの特徴量との差の絶対値が予め定められた閾値Ｔｈ＿ｓａｍｅ以内か否か判別する（ステップＳ３０７）。
【００６７】
ステップＳ３０７の判別の結果、差の絶対値が予め定められた閾値Ｔｈ＿ｓａｍｅ以内ではないとき（ステップＳ３０７でＮＯ）、ステップＳ３０９に進む。
【００６８】
一方、ステップＳ３０７の判別の結果、差の絶対値が予め定められた閾値Ｔｈ＿ｓａｍｅ以内のとき（ステップＳ３０７でＹＥＳ）、（ｎ×Ｍ＋ｍ）番目のブロックは、左のブロックと同一グループとする（ステップＳ３０８）。
【００６９】
次いで、ｍを１だけ増分し（ステップＳ３０９）、ｍがＭ−１より大きいか否か判別する（ステップＳ３１０）。
【００７０】
ステップＳ３１０の判別の結果、ｍがＭ−１以下のとき（ステップＳ３１０でＮＯ）、上記ステップＳ３０４に進む。一方、ｍがＭ−１より大きいとき（ステップＳ３１０でＹＥＳ）、ｍを０で初期化し、ｎを１だけ増分し（ステップＳ３１１）、ｎがＮ−１より大きいか否か判別する（ステップＳ３１２）。
【００７１】
ステップＳ３１２の判別の結果、ｎがＮ−１以下のとき（ステップＳ３１２でＮＯ）、上記ステップＳ３０４に進む。一方、ｎがＮ−１より大きいとき（ステップＳ３１２でＹＥＳ）、グループごとに主被写体領域か背景領域かを判定する（ステップＳ３１３）。この判定方法については後述する。
【００７２】
次いで、背景領域と判定されたグループのうち、面積がＴｈ＿Ａｒｅａ＿１以上、かつ平均彩度がＴｈ＿Ｃｈｒｏｍａ以上のグループが存在するか否か判別する（ステップＳ３１４）。ステップＳ３１４の判別の結果、肯定判別されたとき（ステップＳ３１４でＹＥＳ）、白とびを許容しないことを判定し（ステップＳ３１６）、本処理を終了する。
【００７３】
一方、ステップＳ３１４の判別の結果、否定判別されたとき（ステップＳ３１４でＮＯ）、以下の処理行う。すなわち、背景領域と判定されたグループのうち、面積がＴｈ＿Ａｒｅａ＿２以上、かつ平均輝度がＴｈ＿Ｙ＿１以上、かつ隣接する背景グループの平均輝度がＴｈ＿Ｙ＿２以下のグループが存在するか否か判別する（ステップＳ３１５）。
【００７４】
ステップＳ３１５の判別の結果、肯定判別されたとき（ステップＳ３１５でＹＥＳ）、上記ステップＳ３１６に進む。一方、否定判別されたとき（ステップＳ３１５でＮＯ）、白とびを許容することを判定し（ステップＳ３１７）、本処理を終了する。
【００７５】
まず、上記ステップＳ３０３の特徴量の算出方法について説明する。特徴量は、例えば、各ブロックをさらに複数の小領域に分割して小領域ごとに輝度値を算出し、複数の小領域で最も小さい輝度値をブロックの特徴量にする。
【００７６】
また、各小領域の中で閾値Ｔｈ＿ＨｉｇｈＬｅｖｅｌ以上の輝度値を持つものがあれば、複数の小領域で最も大きい輝度値を特徴量とする。この閾値Ｔｈ＿ＨｉｇｈＬｅｖｅｌは実験等により定めておく。
【００７７】
例えばブロック内に極端な低輝度領域と高輝度領域のみ存在する場合に、平均値を特徴量とする方法では低輝度でも高輝度でもどちらでもない値が特徴量となる可能性がある。しかし、上述した方法によりブロック内に存在する低輝度か高輝度どちらかの輝度値を特徴量とすることが可能となる。
【００７８】
次に、ステップＳ３０４〜３１２の処理についてであるが、算出した特徴量をもとに、各ブロックをグループ化する処理がされている。
【００７９】
上記ステップは、隣り合ったブロックの特徴量をもとに同一グループか否かを判別する処理を、画像内の左上のブロックから右側へと順番に実施し、右端まで走査すれば１行下の左端から右側へ走査する、というように繰り返していく処理となっている。
【００８０】
そして、同一グループか否かを判別するブロックは、対象とするブロックの上に位置するブロック、及び左に位置するブロックとしている。
【００８１】
また、同一グループか否かの判別には、例えば隣り合った２つのブロックの特徴量の差分の絶対値の大小を使用する。特徴量の差分の絶対値が小さい場合には同一グループとみなし、そうでない場合には同一グループとはみなさない。
【００８２】
これらの処理を画像内の全ブロックで実施することで、類似した特徴量のブロックをグルーピングする。このように、白飛び許容判定部１０４は、画像を複数のブロックに分割し、分割された各々のブロックごとにおける輝度を用いて、複数のブロックをグループ化することで画像をグループに分割する。そして、当該グループ単位で画像を主被写体領域及び１つ以上の背景領域に分割する。また、複数のブロックをグループ化する際に用いる輝度は、複数のブロックにおける各々のブロックの平均輝度である。
【００８３】
次に、ステップＳ３１３のグループごとに被写体領域か背景領域かを判定する処理について説明する。まず各グループの平均輝度、彩度を算出する。そして、顔検出機能により検出された顔領域、及び顔領域周辺の低輝度領域を主被写体領域とし、画像内で主被写体領域以外の全領域を背景領域としている。
【００８４】
次に、ステップＳ３１４で肯定判別された場合、画面内の大部分を占めている有彩色の背景領域が存在することとなる。このとき、露出補正によりその領域が白飛びすると画像の見栄えが異なる可能性がある。その為、このようなグループが見つかれば白飛びは許容しないと判定する。
【００８５】
また、ステップＳ３１５で肯定判別された場合、画像内にある大きさ以上の高輝度領域が存在し、隣接する背景グループの輝度値との差が大きいということである。この場合、実際のシーンでは隣接するグループ間の境界を撮影時に目視で判別することが可能である。
【００８６】
しかし、露出補正により高輝度の背景領域が飽和輝度以上となるまで補正すると、グループ間の輝度差が小さくなり、撮影画像では境界を目視で判別することが困難となるため、実際のシーンと画像の見栄えが異なる可能性がある。その為、ステップＳ３１５で肯定判別された場合は、白飛びは許容しないと判定する。
【００８７】
ステップＳ３１４、Ｓ３１５のいずれも満たさない場合は、白飛びを許容すると判定する。
【００８８】
以上の方法により、画像が白飛び許容であるかどうかを判定することが可能となる。なお、上述した各閾値であるＴｈ＿Ａｒｅａ＿１、Ｔｈ＿Ａｒｅａ＿２、Ｔｈ＿Ｃｈｒｏｍａ、Ｔｈ＿Ｙ＿１、Ｔｈ＿Ｙ＿２は実験等により定めておく。
【００８９】
図４は、図１における露出補正量変更部１０５により、白飛び許容しない場合に実行される露出補正量変更処理の手順を示すフローチャートである。
【００９０】
図４において、背景領域と判定された各グループで、面積がＴｈ＿Ａｒｅａ＿１以上、かつ、平均彩度がＴｈ＿Ｃｈｒｏｍａ以上のグループのうち、全ての最高輝度がＴｈ＿Ｙｌｉｍｉｔ＿１以下となる露出補正量Ｖａｌｕｅ＿１を算出する（ステップＳ４０１）。
【００９１】
露出補正前に有彩色である背景領域が、露出補正により無彩色に近づかないよう、露出補正により増加する輝度値の上限を設ける。そうすることで、背景領域が高彩度を保ったままの範囲で露出補正量を変更することが可能となる。
【００９２】
次のステップＳ４０２は、背景領域と判定された各グループのうち、面積がＴｈ＿Ａｒｅａ＿２以上、かつ平均輝度がＴｈ＿Ｙ＿１以上、かつ隣接する背景グループの平均輝度がＴｈ＿Ｙ＿２以下のグループを対象とする処理である。対象となったグループにおけるすべての最高輝度がＴｈ＿Ｙｌｉｍｉｔ＿２以下となる露出補正量Ｖａｌｕｅ＿２を算出する（ステップＳ４０２）。
【００９３】
隣接する背景グループ間でどちらの領域も飽和輝度を下回るよう、露出補正により増加する輝度値の上限を設ける。そうすることで、背景グループ間の輝度差を保ったままの範囲で露出補正量を変更することができる。
【００９４】
次いで、Ｖａｌｕｅ＿１とＶａｌｕｅ＿２のうち、値の小さい方をＶａｌｕｅにクリップする（ステップＳ４０３）。図２のフローチャートで算出された露出補正量がＶａｌｕｅを超えているときには、露出補正量をＶａｌｕｅに変更する。
【００９５】
なお、上述した各閾値であるＴｈ＿Ｙｌｉｍｉｔ＿１、Ｔｈ＿Ｙｌｉｍｉｔ＿２は実験等により定めておく。
【００９６】
以上の方法により、画像をもとに算出された露出補正量、および、画像が白飛び許容であるかどうかの判定結果をもとに、露出補正量を変更することが可能となる。
【００９７】
上述した実施の形態によれば、撮像装置１００は、被写体を示す画像信号を取得し、画像で主被写体を示す領域を検出し、取得された画像信号に示される画像における輝度を用いて露出補正量を算出する。
【００９８】
そして、検出された領域を用いて、画像を主被写体領域及び１つ以上の背景領域に分割し、分割された背景領域における彩度または輝度を用いて、画像が白飛びが許容不可能な画像であるか否かを判定する。
【００９９】
次いで、画像が白飛びが許容不可能な画像と判定されたとき、隣接する背景領域における輝度が、飽和輝度を下回るように算出された露出補正量を変更するので、適正な露出制御が可能となる。
【０１００】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【０１０１】
（他の実施の形態）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【０１０２】
１００  撮像装置
１０１  画像信号取得部
１０２  被写体検出部
１０３  露出補正量算出部
１０４  白飛び許容判定部
１０５  露出補正量変更部
１０６  露出補正量出力部
【図１】
0005917142.tif 000002
【図２】
0005917142.tif 000003
【図３】
0005917142.tif 000004
【図４】
0005917142.tif 000005