説明

デジタルカメラおよびその制御方法

【課題】フラッシュの発光量を顔の検出結果を利用して制御するデジタルカメラで、顔の検出から調光までの間に、被写体やデジタルカメラが動いてしまっても、常に適正な発光量でフラッシュ発光を行えるようにする。
【解決手段】デジタルカメラ1のフラッシュ制御手段19は、発光量の決定における顔の考慮度合いを演算パラメータとして設定し得る演算処理によりフラッシュの発光量を求める発光量決定手段44と、デジタルカメラや被写体の動きが発光量の決定に影響する度合いを示す指標データを取得し、演算パラメータの値を指標データの値に基づいて決まる値に設定するパラメータ設定手段(全体制御部30、顔領域抽出部24など)を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体に含まれる顔の情報を利用してフラッシュの発光量を制御する機能を備えたデジタルカメラと、その発光量の制御方法に関する。
【背景技術】
【0002】
デジタルカメラは、通常、シャッタレリーズボタンが押される以前から画像の撮影を行っており、露出調整や焦点調節は、その段階で撮影された画像を利用して行われる。また、その段階で撮影された画像は、フラッシュの適正発光量を求めるのにも利用されている。フラッシュの発光量の求め方としては、撮影された画像全体の明るさに基づいて適正発光量を求める方法が一般的であったが、近年、撮影された画像から人物の顔を検出し、顔の有無や顔が占める割合によってフラッシュの発光量を異ならせる方法が提案されている。
【0003】
例えば特許文献1には、人物の顔が検出され、画像中の顔が占める割合が所定値以上のときに、発光量を弱めにする方法が示されている。また、特許文献2には、顔に相当する領域のデータのみを利用して発光量を求める形態(第1の実施形態)や、顔に相当する領域の重み付けを他の領域よりも高く設定した画像データを利用して発光量を求める方法(第2の実施形態)が示されている。
【特許文献1】特開2003−107567号公報
【特許文献2】特開2006−074164号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
特許文献1、2が示す方法では、顔検出用に取得された画像データの内容と、調光用に取得された画像データの内容が同じであれば、顔部分が白とびすることなく、また顔部分が暗くなることもなく、適切な明るさの画像を得ることができる。しかし、顔検出用の画像データの取得時点と調光用の画像データの取得時点との間には、通常数十ミリ秒以上の時間差があるため、この間に、被写体あるいはデジタルカメラが動いてしまう可能性がある。すなわち、顔検出用に取得された画像データの内容と、調光用に取得された画像データの内容とは、常に同じであるとは限らない。
【0005】
調光を行うときに顔検出のときと顔の位置がずれていると、顔に相当する領域として抽出された領域のデータを利用して発光量を求めても、求められた発光量は最適な値にはならない。また、顔がずれた結果、顔が検出された領域に配置されることとなった対象によっては、顔を考慮せずに発光量を求めた場合よりも、さらに不適切な値に発光量が設定されてしまうこともある。
【0006】
本発明は、この問題に鑑みて、顔検出が行われてから調光が行われるまでの間に、被写体やデジタルカメラが動いてしまったとしても、常に適正な発光量でフラッシュ発光を行えるデジタルカメラを提供することを課題とする。
【課題を解決するための手段】
【0007】
本発明のデジタルカメラは、被写体を表す画像データを生成する撮像手段と、フラッシュを発光する発光手段と、撮像手段により生成された画像データを対象として顔検出処理を実行する顔検出手段とを備え、顔検出手段が出力する検出結果を利用して前記フラッシュの発光量を制御する。そして、そのための手段として、発光量の決定における顔の考慮度合いを演算パラメータとして設定し得る演算処理によりフラッシュの発光量を求める発光量決定手段と、デジタルカメラまたは被写体の動きが発光量の決定に影響する度合いを示す指標データを取得し、演算パラメータの値を指標データの値に基づいて決まる値に設定するパラメータ設定手段とを備える。
【0008】
発光手段は、内蔵フラッシュでも、脱着可能な外付フラッシュでもよい。また、顔検出手段、発光量決定手段およびパラメータ設定手段は、それぞれ独立した回路として実装してもよいし、顔検出プログラム、発光量決定プログラム、パラメータ設定プログラムとしてメモリに記憶せしめ、プログラムに従った処理をCPUに実行させることにより実現してもよい。顔検出手段は、顔の有無のみを検出結果として出力するものでもよいし、顔の有無のみならず顔に相当する領域を抽出し、その領域を示す領域情報を出力するような手段であってもよい。
【0009】
また、本発明の方法は、上記構成を有するデジタルカメラによるフラッシュ発光量の制御方法であって、発光量の決定における顔の考慮度合いを演算パラメータとして設定し得る演算処理によりフラッシュの発光量を求める発光量決定ステップと、発光量決定ステップに先立ち、デジタルカメラまたは被写体の動きが発光量の決定に影響する度合いを示す指標データを取得し、前記演算パラメータの値を前記指標データの値に基づいて決まる値に設定するパラメータ設定ステップとを有することを特徴とする。
【0010】
ここで、前記演算処理は、多くの場合、撮像手段により生成された一の画像データを対象として実行された顔検出処理の検出結果と、撮像手段により生成された他の画像データに基づいて推定された被写体の必要光量、すなわち被写体の画像を取得する上で十分な露光量を得るために必要な光量とに基づいて発光量を求める処理である。よって、本発明の一実施形態として、パラメータ設定手段が、前記指標データとして、一の画像データが生成された時点と他の画像データが生成された時点との時間差の指標となるデータを取得し、その時間差が少なくとも所定範囲の時間であるときに、時間差が大きいほど顔の考慮度合いが低くなるように演算パラメータの値を設定する形態が考えられる。
【0011】
例えば、デジタルカメラに時間差を計測する時間計測手段を設け、時間計測手段により計測された時間差に基づいて演算パラメータの値を設定する。時間差の計測は、顔検出処理用の画像データが生成された時点から、必要光量の推定に用いられた画像データが生成された時点までの経過時間を正確に計測してもよいが、各時点に準ずる時点を検出して計測を行なってもよい。例えば、顔検出処理により顔が検出された時点から必要光量が推定された時点までの経過時間を計測してもよい。
【0012】
あるいは、前記指標データとして、デジタルカメラに対し設定された撮影モードを示すデータや、デジタルカメラの状態を示すデータを取得する。そして、例えば、ブレが生じる可能性が高い撮影モードおよび/または状態ほど、顔の考慮度合いが低くなるように、演算パラメータの値を設定する。あるいは、前記時間差の推定時間が長い撮影モード、状態ほど、顔の考慮度合いが低くなるように、演算パラメータの値を設定してもよい。精度が優先されるときは、計測された時間に基づいてパラメータを設定するのがよい。一方、デジタルカメラに負荷をかけず簡易な機構で上記機能を実現したい場合には、撮影モードやカメラの状態に応じた値を設定するのがよい。
【0013】
また、本発明の他の実施形態では、パラメータ設定手段は、前記指標データとして、顔検出手段により検出された顔の画像全体に占める割合を示すデータを取得する。顔の画像全体に占める割合が少なくとも所定範囲の割合であるときに、その割合が小さいほど顔の考慮度合いが低くなるように演算パラメータの値を設定する。例えば、顔が占める割合が所定の閾値以上のときは顔の考慮度合いを最大値に設定し、その閾値から0%までの範囲では、割合が小さいほど顔の考慮度合いが低くなるように設定する。
【0014】
さらに他の実施形態では、パラメータ設定手段は、前記指標データとして、焦点距離を示すデータを取得する。そして、焦点距離が少なくとも所定範囲の距離であるときに、焦点距離が長いほど顔の考慮度合いが低くなるように演算パラメータの値を設定する。本発明のさらに他の実施形態では、デジタルカメラは手ブレ検出手段を備えており、パラメータ設定手段は、前記指標データとして、手ブレ検出手段により検出されたブレ量を示すデータを取得する。そして、ブレ量が少なくとも所定範囲のブレ量であるときに、ブレ量が大きいほど顔の考慮度合いが低くなるように演算パラメータの値を設定する。また、本発明のさらに他の実施形態では、パラメータ設定手段は、前記指標データとして、測距手段により計測された被写体までの距離を示すデータを取得する。そして、その距離が、少なくとも所定範囲の長さであるときに、距離が長いほど顔の考慮度合いが低くなるように演算パラメータの値を設定する。
【0015】
上記本発明の構成および手順では、調光を行うときに、顔検出時と顔の位置がずれていたとしても、そのずれが発光量の決定に及ぼすマイナスの影響が大きいときには、顔に相当する領域として抽出された領域のデータが発光量の決定に与える影響が低く抑えられる。よって、顔がずれてしまった場合でも、少なくとも顔を考慮せずに調光を行ったときと同レベルの調光が行われ、最適でないまでも適切な発光量でフラッシュ撮影が行われる。
【0016】
具体的な処理としては、例えば、撮像手段により生成された画像データを対象として顔検出手段が出力する検出結果を利用しない演算を行うことにより、発光量の仮適正値Cnを求めておき、一方で、撮像手段により生成された画像データを対象として顔検出手段が出力する検出結果を利用する演算を行うことにより、発光量の仮適正値Cfを求めておき、仮適正値Cnと仮適正値Cfとの平均を求める演算処理であって、前記パラメータ設定手段により設定されるパラメータの値により演算結果に対する仮適正値Cfの影響力が変化する演算処理を行うといったことが考えられる。ここで「平均」は、2つの値を何らかの形でバランスを取りつつ均す処理を意味し、単純平均のほか、二乗平均、対数平均、加重平均なども含むものとする。この演算処理によれば、パラメータαの設定一つで簡単に顔の考慮度合いを変更することができる。
【0017】
この他、発光量の決定における顔の考慮度合いを演算パラメータとして設定し得る演算処理としては、撮像手段により生成された画像データに対し領域ごとに異なる重み付けを設定して演算を行うことにより発光量を求める処理で、その重み付けを任意に設定可能な演算パラメータとする処理なども考えられる。
【0018】
上記デジタルカメラは、指標データが示す影響の度合いが所定の基準を超えるときに、所定の警告動作を行なう警告手段を備えていてもよい。指標データが示す影響の度合いが所定の基準を超えるときとは、値が大きいときほど影響度合いが大きい指標データであれば指標データが所定値を超えたとき、値が小さいときほど影響度合いが大きい指標データであれば指標データが所定値を下回るときを意味する。警告要否の判定の基準となる閾値は、ユーザがデジタルカメラに求める仕様や性能に応じて、適宜定めればよい。撮影前に警告を行なうことにより、ユーザは、よりよい条件で撮影を行うことができる。また、撮影後に警告を行なうことにより、ユーザは問題点を確認した上で撮影をやり直すことができる。
【0019】
また、前記指標データを、フラッシュ発光を伴う撮影で取得された画像データと関連づけて記録媒体に記録する記録制御手段を備えていてもよい。これにより、発光量の決定に関与した情報を、後に、画像とともに確認することができる。
【発明を実施するための最良の形態】
【0020】
以下、本発明の実施形態として、フラッシュ撮影機能を備えた一眼レフのデジタルカメラと、そのデジタルカメラのフラッシュの発光量の制御方法を例示して、説明する。
【0021】
[ 実施形態1 ]
図1A、図1Bおよび図1Cは、本発明の一実施形態におけるデジタルカメラ1の外観を示す図である。図1Aに示すように、このデジタルカメラ1の上部には、シャッタレリーズボタン2、撮影モードの設定に利用されるモードダイヤル3、内蔵フラッシュ4および付属品の取付口であるホットシュー5が備えられている。
【0022】
シャッタレリーズボタン2は、2段階の押下により2種類の動作を指示できる構造となっている。例えば、自動露出調整機能(AE:Auto Exposure)、自動焦点調節機能(AF:Auto Focus)を利用した撮影では、デジタルカメラ1は、シャッタレリーズボタン2が軽く押下(半押しともいう)されたときに、露出調整、焦点合わせなどの撮影準備を行う。その状態で、シャッタレリーズボタン2が強く押下(全押しともいう)されると、デジタルカメラ1は露光を開始し、露光により得られた1画面分の画像データをメモリカードに記録する。
【0023】
内蔵フラッシュ4は、脇にあるフラッシュポップアップボタン6を押すことにより、図1Bに示すようにカメラ上部方向に開く(以下、ポップアップと称する)。また、一部の撮影モードでは、自動的にポップアップすることもある。ポップアップ状態の内蔵フラッシュ4は、シャッタレリーズボタン2の2段階目の押下操作と連動して2回発光する。1回目の発光は被写体からの反射光量を測定するための予備発光であり、通常の発光に比べれば発光量は微小である。2回目の発光は被写体に対して撮影に十分な光を供給するための(適切な露光量を得るための)本発光であり、本発光の発光量が適正であれば、適当な明るさの画像を得ることができる。
【0024】
内蔵フラッシュ4の動作は、シャッタレリーズボタン2の操作のみならず、モードダイヤル3により設定された撮影モードや、設定画面において設定されたフラッシュ発光モードにも依存する。
【0025】
撮影モードとしては、撮影に係る全設定をカメラが自動で行う「AUTO」、撮影に係る全設定をユーザが手動で行う「マニュアル」のほか、「プログラムオート」、「シャッタ優先オート」、「絞り優先オート」、「ブレ軽減」、「高感度2枚撮り」、「ナチュラルフォト」、「人物」、「風景」、「夜景」など、撮影シーンごとのモードが用意されている。また、フラッシュ発光モードとしては、「AUTO発光」、「強制発光」、「スローシンクロ」、「赤目軽減発光」、「赤目軽減発光+スローシンクロ」などのモードが用意されている。
【0026】
撮影モード「AUTO」、フラッシュ発光モード「AUTO発光」に設定されたデジタルカメラ1は、フラッシュ撮影が必要と判断すれば、自動的に内蔵フラッシュ4をポップアップし、シャッタレリーズボタン2の操作と連動してフラッシュを発光させる。一方、撮影モード「ナチュラルフォト」はフラッシュレス撮影を行うモードであるため、このモードに設定されたデジタルカメラ1では、シャッタレリーズボタン2を操作しても内蔵フラッシュ4は動作しない。また、フラッシュ発光モード「赤目軽減発光」、「赤目軽減発光+スローシンクロ」に設定されたデジタルカメラ1は、被写体の瞳孔を収縮させて赤目現象の発生を予防することを目的とした赤目軽減発光を行う。撮影モード「人物」に設定されたデジタルカメラ1も、所定の条件が満たされた場合に自動的に赤目軽減発光を行う。他のモードについても、それぞれ、そのモードの目的に適う内蔵フラッシュ4の動作が定められている。
【0027】
なお、このデジタルカメラ1は、図1Cに示すようにホットシュー5に外付フラッシュ6を取り付けて使用することもできる。外付フラッシュ7は、ホットシュー5に取付けられることで機械的・電気的にデジタルカメラ1に接続され、これにより、内蔵フラッシュ4と同様、モードダイヤル3によるモード設定に応じて、シャッタレリーズボタン2の2段階目の押下操作と連動した発光動作を行うようになる。以下、図1Aおよび図1Bに例示した形態を中心に説明するが、本発明はフラッシュが内蔵か外付けかによらず適用可能な発明である。
【0028】
続いて、図2を参照して、デジタルカメラ1の内部構成について、概要を説明する。図2に示すように、デジタルカメラ1は、レンズ12、レンズ駆動部16、絞り13、絞り駆動部17、CCD14およびタイミングジェネレータ(TG)18からなる撮像系を備える。レンズ12は、被写体にピントを合わせるためのフォーカスレンズ、ズーム機能を実現するためのズームレンズなど複数の機能別レンズにより構成される。レンズ駆動部16はステッピングモータなど小型のモータで、CCD14から各機能別レンズのまでの距離が目的に適った距離となるように各機能別レンズの位置を調整する。絞り13は複数の絞り羽根からなる。絞り駆動部17は、ステッピングモータなど小型のモータで、絞りの開口サイズが目的に適ったサイズになるように絞り羽根の位置を調整する。CCD14は原色カラーフィルタを伴う500〜1200万画素のCCDで、タイミングジェネレータ18からの指示信号に応じて蓄積された電荷を放出する。タイミングジェネレータ18は、CCD14に所望の時間のみ電荷が蓄積されるようにCCD14に対して信号を送り、これによりシャッタ速度を調整する。
【0029】
また、デジタルカメラ1は、CCD14の出力信号をデジタル信号に変換するA/D変換部15と、A/D変換部15が出力した画像データをシステムバス34を介して他の処理部に転送する画像入力制御部23と、画像入力制御部23から転送された画像データを一時記憶するSDRAM22を備える。SDRAM22に記憶される画像データはRAWデータである。
【0030】
また、デジタルカメラ1は、フラッシュ11と、フラッシュ11の発光タイミングや発光量を制御するフラッシュ制御部19と、レンズ駆動部16にレンズの移動を指示して焦点合わせを行う焦点調節部20と、絞り値とシャッタ速度を決定し、絞り駆動部17とタイミングジェネレータ18に指示信号を送出する露出調整部21と、SDRAM22に記憶されている画像データを対象として顔の検出処理を実行し、顔の有無を示す値、さらに顔が有る場合には検出された顔に相当する領域を示す情報(以下、領域情報)を出力する顔領域抽出部(顔検出部)24を備える。フラッシュ制御部19、焦点調節部20および露出調整部21は、SDRAM22に記憶されている画像データのほか、顔領域抽出部24が実行した検出処理の結果を参照して処理を行うこともある。顔の検出結果を参照して露出調整を行う方法としては、例えば特開2001−215404号公報、特開2003−107555号公報などに開示されている方法を用いることができる。また、顔の検出結果を参照して焦点調節を行う方法としては、例えば特開2006−145629号公報に開示されている方法を用いることができる。フラッシュ制御部19、焦点調節部20および露出調整部21が、顔領域抽出部24から出力される検出結果を参照するか否かは、撮影モードその他の設定値によって決まる。
【0031】
デジタルカメラ1は、この他、SDRAM22に記憶されている画像データに対して画像処理を施す画像処理部25を備える。画像処理部25は、画像を自然な色合い、明るさにするための色階調補正や明るさ補正、また画像データが赤目を含むものであるときに赤目を黒目に修正する処理など、画像の見栄えを良くするための各種仕上げ処理を行った後、処理済画像データを再度SDRAM22に格納する。
【0032】
また、デジタルカメラ1は、SDRAM22に記憶されている画像データの液晶モニタ(LCD:Liquid Crystal Display)27への出力を制御する表示制御部26を備える。表示制御部26は、SDRAM22に記憶されている画像データの画素数を、表示に適した大きさとなるように間引きしてから液晶モニタ27に出力する。
【0033】
また、デジタルカメラ1は、SDRAM22に記憶されている画像データのメモリカード29への書込み、およびメモリカード29に記録されている画像データのSDRAM22へのロードを制御する記録読出制御部28を備える。記録読出制御部28は、ユーザの設定に応じてRAWデータをそのまま、もしくは圧縮符号化によりJPEGデータに変換してからメモリカード29に記録する。詳細には、記録読出制御部28は、画像データと画像データの付帯情報を格納したExif(Exchangeable Image File Format)ファイルを、メモリカード29に記録する。画像データをロードするときは、ファイルから取り出した画像データを復号化して、SDRAM22にロードする。
【0034】
また、デジタルカメラ1は、ジャイロセンサなどにより構成される手ブレ検出部35を備える。手ぶれ検出部35は撮影時の手ブレを検出すると、フラッシュ制御部19、露出調整部21、画像処理部25に検出されたブレ量の情報を供給する。露出調整部21は、手ブレが検出されたときには手ブレが検出されないときよりもシャッタ速度を短く設定し、取得画像に対する手ブレの影響を軽減する。また、画像処理部25は、手ブレが検出されたとき、取得後の画像データに対しブレを補正する画像処理を施す。
【0035】
また、デジタルカメラ1は、デジタルカメラ1から被写体までの距離を計測する測距機能を備える。測距機能はデジタルカメラ1の前面に距離センサーを設けることによっても実現できるが、本実施形態では、フォーカスレンズの位置情報とフォーカスレンズの駆動パルス数に基づいて被写体までの距離を判定する。
【0036】
デジタルカメラ1は、この他、CPU(Central Processor Unit)31、操作/制御プログラムが格納されたRAM(Random Access Memory)32、各種設定値が記憶されているEEPROM(Electronically Erasable and Programmable Read Only Memory)33からなる全体制御部30を備える。全体制御部30は、モードダイヤルによる撮影モードの設定をはじめユーザが行う各種設定操作を検出し、設定された内容をEEPROM33に記憶せしめる。そして、その設定操作が行われたとき、もしくは撮影操作が行われたときに、EEPROMに記憶された設定値にしたがって、前述したフラッシュ制御部19、焦点調節部20、露出調整部21、画像入力制御部23、顔領域抽出部24、画像処理部25、表示制御部26、記録読出制御部29に対し、システムバス34を介して、実行すべき処理や、その処理の実行タイミングを指示する信号を送出する。
【0037】
図3に、フラッシュ制御部19の構成とフラッシュ制御部19の入出力データを示す。フラッシュ制御部19は、図に示すように、第1演算手段41、第2演算手段42、パラメータ記憶手段43および発光量決定手段44を備える。第1演算手段41、第2演算手段42および発光量決定手段44は、後述する演算を実行する演算回路であり、パラメータ記憶手段43はEEPROMである。但し、パラメータ記憶手段43は、必ずしもフラッシュ制御部19の構成要素でなくてもよい。例えば、全体制御部30が備えるEEPROM33をパラメータ記憶手段43として利用してもよい。
【0038】
第1演算手段41は、全体制御部30の制御の下、画像入力制御部23から、非発光時画像データと予備発光時画像データの供給を受ける。予備発光時画像データは、撮像部が全体制御部30の制御の下でフラッシュ11による予備発光と同期して撮影した画像データである。非発光時画像データは、その予備発光の直前または直後に、撮像部により撮影された画像データである。第1演算手段は、これら2種類の画像を用いて、後述する演算処理を実行することにより、顔を考慮しない場合のフラッシュ発光量の仮適正値Cnを求め、出力する。第1演算手段が実行する演算処理では、顔領域抽出部24が出力する領域情報は利用されない。
【0039】
第2演算手段42は、第1演算手段と同様、全体制御部30の制御の下、画像入力制御部23から、非発光時画像データと予備発光時画像データの供給を受ける。第2演算手段42は、この他、顔領域抽出部24から、顔に相当する領域を示す領域情報の供給を受ける。そして、2種類の画像と領域情報とを用いて、後述する演算処理を実行することにより、顔を考慮した場合のフラッシュ発光量の仮適正値Cfを求め、出力する。
【0040】
パラメータ記憶手段43が記憶するパラメータαは設定により可変なパラメータであり、顔領域抽出部24、手ブレ検出部35をはじめとする各処理部によって設定される。あるいは全体制御部30が、各処理部の出力を受けて、パラメータαを設定する。
【0041】
発光量決定手段44は、第1演算手段41から出力された仮適正値Cnと、第2演算手段から出力された仮適正値Cfと、パラメータ記憶手段43から読み出したパラメータαとを利用して本発光の発光量を決定し、その決定に基づいてフラッシュ11の発光量を制御する。
【0042】
以下、第1演算手段41、第2演算手段42および発光量決定手段44が行う処理について、さらに説明する。第1演算手段41と第2演算手段42は、入力された非発光時画像データおよび予備発光時画像データを、複数の領域ブロックに分割する。図4は、領域ブロックへの分割の一例を示す図であり、画像データ45(非発光時画像データまたは予備発光時画像データ)を、n×m個の領域ブロックに分割したところを示している。以下の説明では、図に例示している(1,1)、(n,m)といった符号により、位置が異なる領域ブロックを区別するものとする。
【0043】
図5は、第1演算手段の処理を示すフローチャートである。第1演算手段41は、非発光時画像データの領域ブロックごとの輝度情報Ya(1,1)〜Ya(n,m)を取得する(S101)。例えば、非発光時画像データをRGB−YCC変換し、各画素の輝度値を求め、その画素輝度値の領域ごとの平均値を求め、輝度情報Yaとする。予備発光時画像データについても、同様の手順により、各領域ブロックの輝度情報Yb(1,1)〜Yb(n,m)を取得する(S102)。
【0044】
続いて第1演算手段41は、領域ブロックごとに、ステップS102で取得した輝度情報Yb(x,y)とステップS101で取得した輝度情報Ya(x,y)との差分Yd(x,y)を計算する(S103)。そして、全領域ブロックの差分Yd(1,1)〜Yd(n,m)に基づいて、顔を考慮しない場合のフラッシュ発光量の適正値(仮適正値Cn)を決定し、出力する(S104)。例えば、差分Yd(1,1)〜Yd(n,m)の単純平均あるいは加重平均などから被写体からの単位発光量あたりの反射光量を推定する。そして、推定した反射光量から、最適な露出が得られる反射光量となる発光量、すなわち被写体の必要光量に相当する光を被写体に供給できる発光量を求め、これを仮適正値Cnとする。差分Yd(1,1)〜Yd(n,m)の加重平均を求める場合には、例えば画像の中央に近い領域ブロックの重み付けを大きくするなど、顔に依存しない重み付けを行う。
【0045】
図6は、第2演算手段の処理を示すフローチャートである。第2演算手段42は、図4に例示するように、顔領域抽出部24から供給された領域情報が示す領域46aに対応する領域ブロック群47aを選択する(S201)。例えば、各領域ブロックについて領域46aと重なる範囲の面積を計算し、面積の半分以上が領域46と重なっているブロック群47aを選択する。続いて、非発光時画像データの選択された領域ブロックの輝度情報Ya(p、q)を取得する(S202)。また、予備発光時画像データの選択された領域ブロックの輝度情報Yb(p、q)を取得する(S203)。
【0046】
続いて第2演算手段42は、選択された領域ブロックごとに、ステップS203で取得した輝度情報Yb(p,q)とステップS202で取得した輝度情報Ya(p,q)との差分Yd(p,q)を計算する(S204)。そして、選択された領域ブロックについて求められた差分Yd(p,q)に基づいて、顔を考慮する場合のフラッシュ発光量の適正値(仮適正値Cf)を決定し、出力する(S205)。例えば、図4の例であれば、選択されたブロックは6個あるので、Yd(p1,q1)〜Yd(p6、q6)に基づいて仮適正値Cfを決定する。例えば、差分Yd(p1,q1)〜Yd(p6、q6)の単純平均から被写体からの単位発光量あたりの反射光量を推定する。そして、最適な露出が得られる反射光量となる発光量、すなわち被写体の必要光量に相当する光を被写体に供給できる発光量を求め、これを仮適正値Cfとする。
【0047】
発光量決定手段44は、第1演算手段41が出力した仮適正値Cnと、第2演算手段42が出力した仮適正値Cfを基準値とする調整を行うことにより、フラッシュ11の適正発光量Chを決定する。本実施形態ではパラメータ記憶手段43に記憶されているパラメータαに基づいて発光量の調整を行う。具体的には、発光量決定手段44は、次式(1)に基づく演算を行うことにより、適正発光量Chを決定する。
適正発光量Ch=Cn×(1−α)+Cf×α …(1)
(1)式に基づく演算では、パラメータαが大きいほど適正値Chの決定に、仮適正値Cfの値が大きく影響する。
【0048】
顔を考慮した調光は、顔の検出に用いられる画像データと調光に用いられる画像データが同じであることを前提としている。しかし実際の撮影では、図7のタイムチャートに示すように、顔検出用画像データを取得する時点Aと非発光時画像データを取得する時点Bとの間には時間差t1があり、さらには非発光時画像データを取得する時点Bと予備発光時画像データを取得する時点Cまでの間には時間差t2がある。この時間差の合計Tは、通常、数十ミリ秒以上ある。この間に被写体が動いたり、手ブレが生じたりして、顔の検出に用いられる画像データと調光に用いられる画像データとが互いに異なるものとなる場合がある。
【0049】
顔の検出に用いられる画像データと調光に用いられる画像データとが異なるときは、第2演算手段が出力する仮適正値Cfは必ずしも適正な値とはならない。2種類の画像データの異なり具合(顔の位置のずれ)が大きければ大きいほど、仮適正値Cfの信頼度は低くなる。そこで、2種類の画像データの顔の位置のずれ(予測されるずれ)が大きいときに、パラメータαの値を小さめに設定することによって、顔の検出結果が発光量制御に与える影響を抑える。具体的には、以下に例示する方針、構成および手順により、パラメータαを設定する。
【0050】
本実施形態のデジタルカメラは、以下に例示する方針ごとに、複数のパラメータ設定手段を備えている。詳細には、全体制御部30、顔領域抽出部24、手ブレ検出部35、焦点距離調節部(図示せず)が、各々の機能を果たすとともに、パラメータ設定手段としても機能する。そして、ユーザの操作もしくは設定に基づいて選択された一のパラメータ設定手段により、もしくは選択された複数のパラメータ設定手段により段階的に、パラメータ記憶手段43のパラメータαが設定、更新される。
【0051】
はじめに、全体制御部30のパラメータ設定機能について説明する。一般に、調光に用いられる画像データが、顔の検出に用いられた画像データと異なるものとなる可能性は、図7に示した時間差Tあるいは時間差t1が大きいほど高くなる。言い換えれば、時間差が大きいほど、第2演算手段が出力する仮適正値Cfの信頼度は低くなる。そこで、パラメータ設定手段としての全体制御部30は、デジタルカメラや被写体の動きが発光量の決定に与える影響の度合いを示す指標データとして、この時間差の情報を取得する。そして、時間差が大きいときには、仮適正値Cfの値が適正値Chの決定に大きく影響しないように、パラメータαの値を小さく設定する。
【0052】
全体制御部30は、CPU31のクロック機能を利用したソフトウェアタイマーにより実時間を計測することで、時間差の情報を取得する。あるいは、ソフトウェアタイマーに代えて、専用のタイマー回路を設けてもよい。全体制御部30は、画像入力制御部23から顔領域抽出部24に顔検出用の画像データが供給されたときにタイマーをリセットし、画像入力制御部23からフラッシュ制御部19に調光用の画像データが供給されたときのタイマー値を時間差として記録する。調光用の画像データとしては、非発光時画像データと予備発光時画像データがあるが、いずれか一方の画像データが供給されたときの値を記録すればよい。
【0053】
また、全体制御部30のRAM32には、時間差と、パラメータαとの対応付けを定義したルックアップテーブル(LUT)が記憶されている。図8に、LUTの一例を示す。LUTは、時間差が大きいほどパラメータαの値が小さくなるように定義することが好ましい。但し、図8の例示のように、時間差が所定値を超えたときにパラメータαの値が単調減少するようなテーブルとしてもよい。すなわち、ある範囲において、パラメータαの値が時間差に対し単調減少していれば、他の範囲においてパラメータ値が一定であってもよい。全体制御部30は、LUTを参照することにより、タイマーにより計測した時間差に対応するパラメータ値を取得する。取得された値は、フラッシュ制御部19に転送され、パラメータ記憶手段に記憶される。
【0054】
上記タイマーとLUTは、フラッシュ制御部19が備えていてもよい。この場合、フラッシュ制御部19は、顔領域抽出部24から顔の検出結果がフラッシュ制御部19に供給された時点でタイマーをリセットし、非発光時画像データあるいは予備発光時画像データがフラッシュ制御部19に供給された時点のタイマー値を時間差として記録する。顔検出用の画像データが生成された時点と顔の検出結果が得られた時点との間には多少の時間のずれはあるものの、顔の検出結果が得られた時点を基点とする計測で得られる時間差も、指標データとして十分有効である。また、顔の検出結果を参照し、領域情報が含まれている場合、すなわち顔が検出された場合のみタイマーを作動させれば、不必要な時間計測は行われない。よって、顔検出用の画像データの供給時を基点として時間計測を行う場合より、デジタルカメラの負荷を低減することができる。
【0055】
以上に説明したように、時間差を計測し、時間差に応じたパラメータαの値を設定すれば、顔の検出結果の信頼度によって発光量制御における顔の重要度を調整することができ、発光量を適切な値に制御することが可能となる。
【0056】
上記時間差を考慮したパラメータの設定方法としては、この他、カメラの状態や、設定されている撮影モードに基づいて値を設定する方法がある。時間差の大きさは、カメラの状態や撮影モードに依存する。よって、カメラの状態や撮影モードも、発光量の決定におけるデジタルカメラや被写体の動きの影響度を示す指標データとして有効である。時間差が大きくなりがちな状態あるいは撮影モードのときにパラメータαを小さめに設定することで、計測された時間差に応じてパラメータを調整するのと同等の効果を得ることができる。ここで、カメラの「状態」とは、デジタルカメラ内部で区別される状態のことである。例えば、所定の操作が行われる前の状態と行われた後の状態とは、異なる状態といえる。またデジタルカメラが所定の動作や処理を完了する前の状態と完了した後の状態とは、異なる状態といえる。
【0057】
図9に、カメラの状態および撮影モードに基づいて、パラメータαを設定する処理の一例を示す。全体制御部30は、パラメータαの値を値α0に初期化し、変数kの値を1に初期化する(S301)。パラメータ設定手段として機能する処理部が全体制御部30のみであるときは、値α0は1である。全体制御部30以外の処理部がパラメータの設定に関与するときは、値α0は、他の処理部が先にパラメータ記憶手段43に対し設定した値を読み出して設定する。
【0058】
初期化が完了すると、次に全体制御部は、カメラの状態に基づくパラメータαの調整を行う。図の例は、カメラの状態として、シャッタレリーズボタン2の半押し状態、すなわち、軽く押下されたところで操作が止められた状態の有無を判定する(S302)。半押し状態が検出されなかったときは、変数kに係数0.7を乗じる(S303)。一方、半押し状態が検出されなかったときは、変数kの値はそのままで、次のステップに移行する。
【0059】
以下、半押し状態を判定する理由について、説明する。図10A〜10Cは、デジタルカメラの処理を、時間の流れとともに図の左から右に並べることで、シャッタレリーズボタンの操作とデジタルカメラの動作との関係を示した図である。図10Aおよび図10Cは、シャッタレリーズボタン2が第1段階まで押され(半押しされ)、しばらく時間をおいてから第2段階まで押された(全押しされた)ときの、デジタルカメラ1の動作を示している。一方、図10Bは、シャッタレリーズボタン2が一気に第2段階まで押されたときの、デジタルカメラ1の動作を示している。
【0060】
図10Aに示すように、本実施形態のデジタルカメラ1は、シャッタレリーズボタン2が操作される以前から顔の検出処理を実行する。また、シャッタレリーズボタン2の半押し操作を検出したときは、全押し操作が検出されるまでの間、引き続き顔の検出処理を実行する。フラッシュ発光量は、全押し操作が検出された後、調光の過程で求められる。発光量の演算には、調光の直前に行われた顔検出処理の結果が利用される。
【0061】
一方、図10Bに示すように、シャッタレリーズボタン2が一気に第2段階まで押されたときには、顔の検出処理はシャッタレリーズボタン2が押下される以前しか実行されない。また、シャッタレリーズボタン2が押下された後にAE/AF処理が実行されるため、半押し状態を経て全押し操作が行なわれた場合と比べると、時間差T(あるいはt1)は大きくなる。すなわち、ステップS302において半押し状態を経たか否かを判定することは、時間差が大きいか否かを判定することと実質的に等しい。
【0062】
なお、デジタルカメラ1と異なるタイプのカメラとして、図10Cに例示するように、シャッタレリーズボタンが押下された後は、顔検出処理を実行しないタイプのカメラもある。図10Cに示す動作を行うカメラの場合には、図10Cと図10Bの対比から明らかであるように、半押し状態を経たときのほうが時間差Tは大きくなる。よって、図10Cに例示するタイプのカメラでは、図9に例示した処理とは逆に、半押し状態が検出されたときに、変数kに1未満の係数を乗じるのがよい。
【0063】
図10Aと図10Cの例示から明らかであるように、カメラの状態に基づいてパラメータαの調整を行う場合、好ましい調整のしかたは、カメラの仕様や性能によって異なる。パラメータの増減の度合い、すなわち変数kに乗じる係数の値も、カメラの仕様や性能に応じて決定するのがよい。また、半押し状態に限らず、時間差が大きくなりがちな他の状態を判別して、変数kを調整してもよいことは言うまでもない。
【0064】
カメラの状態に基づく変数kの調整が完了すると、続いて全体制御部30は、EEPROM33を参照して、所定の撮影モードが設定されているか否か判断する。図の例では、0.5秒以上の時間差が生じることが確実な赤目軽減発光モードと高感度2枚撮りモードについて判定を行う(S304,S306)。赤目軽減発光モードが設定されている場合には、全体制御部30は、変数kに係数0.5を乗じる(S305)。赤目軽減発光モードでは、シャッタレリーズボタン2の操作が検出された後に、被写体の瞳孔を収縮させることを目的とした発光が行われるが、瞳孔の収縮を待つ時間が確保されるため、時間差は大きくなる。よって、ステップS304およびS305の処理を行うことで、パラメータαの値を小さくする。
【0065】
また、全体制御部30は、高感度2枚撮りモードが設定されている場合も、変数kに係数0.5を乗じる(S107)。高感度2枚撮りモードは、シャッタレリーズボタンの1回の操作で、非フラッシュ撮影とフラッシュ撮影の2回の撮影を、自動で行うモードである。このため、非フラッシュ撮影を行う分、他の撮影モードよりも時間差Tは大きくなる。よって、ステップS306およびS307の処理を行うことで、パラメータαの値を小さくする。
【0066】
この他にも、撮影モードの目的を達成するために必然的に時間差Tが大きくなる、あるいは大きくなる可能性が高い撮影モードがあれば、同様に、パラメータαの値を小さくすることが好ましい。
【0067】
図9の処理では、ステップS303、S305およびS307において、変数kに対し段階的に係数が乗じられる。例えば、赤目軽減発光モードが設定された状態で、シャッタレリーズボタンが一気に押下されたときには、ステップS308における変数kの値は0.35となる。
【0068】
ステップS308では、ステップS301〜S307において決定された変数kが、パラメータαの初期値α0に乗じられる。これにより決定されたパラメータαの値は、フラッシュ制御部19に転送され、パラメータ記憶手段に記憶される。
【0069】
以上に説明したとおり、カメラの状態や撮影モードに基づいてパラメータを調整することとすれば、比較的簡単な処理で、顔の検出結果の信頼度を考慮した発光量制御を実現することができる。
【0070】
なお、デジタルカメラが、顔検出処理や調光処理に使用する画像データに対し手ブレを補正する処理を施す場合には、上記時間差が大きくても、顔の検出結果の信頼度は必ずしも低くはならない。よって、全体制御部30により手ブレ補正モードのオン/オフを判定し、手ブレ補正モードがオフのときにのみ、図9に示す処理を実行することとしてもよい。
【0071】
ここで、撮影モードの判別は、シャッタレリーズボタン2が押下される以前に行うことができる。よって、全体制御部30は、シャッタレリーズボタン2の操作とは無関係に撮影モードを判別し、時間差が所定時間を超えることが予測される場合に、所定の警告動作を行ってもよい。図11に、警告動作を行う場合の全体制御部30の処理の一例を示す。図の例で、全体制御部30は、EEPROM33を参照することにより赤目軽減発光モードが設定されているか否かを判定する(S401)。さらに、高感度2枚撮りモードが設定されているか否かも判定する(S402)。いずれか一方のモードもしくは2つのモードが設定されている場合には、表示制御部26を介して、液晶モニタ27に、フラッシュの発光量制御において顔が重視されないことを示す警告マークやメッセージを出力する(S403)。あるいは、液晶モニタ27への出力に代えて、デジタルカメラに装備されているLEDランプを点滅させたり、スピーカから警告音を鳴らしたりしてもよい。
【0072】
全体制御部30が上記警告動作を行うことで、ユーザは撮影モードの設定を変更する機会を得ることができる。ユーザは、モード設定による利便性よりも、顔を重視した発光量制御を優先したければ、警告の原因となったモードをオフに設定しなおしてから撮影を行えばよい。
【0073】
なお、撮影モードの判別は、EEPROM33から得られる情報のみならず、他の処理部からのモード切り替え通知に基づいて行ってもよい。例えば、顔領域抽出部24が、検出精度が異なる複数種類の顔検出処理を選択的に実行する場合、検出精度が高い顔検出処理は時間がかかるので、時間差Tは長くなりがちである。そこで、顔領域抽出部24が、顔検出処理を切り替えたことを、一種のモード変更として、全体制御部30に通知するようにする。これにより、全体制御部30は、処理時間が長い検出処理が選択されたときに、デジタルカメラ1に所定の警告動作を行わせることができる。
【0074】
また、警告動作は、シャッタレリーズボタン2の押下操作の後に行ってもよい。タイマーにより時間差を計測する場合には、時間差を事前に推測することはできない。よって、撮影の完了後に、計測された時間差が所定時間を超えたか否かで警告の要否を判断し、警告動作を行う。また、撮影モードに基づいて警告の要否を判断する場合も、撮影の完了後に図11に例示した処理を実行してもよい。例えば、取得直後の画像をユーザに確認させる目的でモニタに表示するときに、画像とともに警告マークなどを表示する。これにより、ユーザは取得された画像の画質が悪い原因を知ることができ、撮影条件を変えて撮影をやり直すことができる。
【0075】
続いて、顔領域抽出部24のパラメータ設定機能について説明する。図7A、図7B、図8Aおよび図8Bは、画像データと領域情報が示す領域と図6のステップS201において選択された領域ブロックの関係を示す図である。画像データ48は顔領域抽出部24が顔の検出処理に用いた画像データで、画像データ45はフラッシュ制御部19が調光に用いた画像データ(非発光時画像データあるいは予備発光時画像データ)である。図7Bおよび図8Bの楕円49は、調光時の顔の位置を示している。
【0076】
図7Aおよび図7Bに示すように、画像に占める顔の割合が比較的大きい場合には、調光時の顔の位置が抽出された領域46bと多少ずれていても、選択されたブロック群47bの大半は、ずれた後の顔(楕円49)に対応している。よって、ずれが生じてしまったとしても、選択されたブロック群47bの輝度情報は、調光を行う上で参照に値する。しかし、図8Aおよび図8Bに示すように、画像に占める顔の割合が小さく、顔に対応するブロックが1つしか無いような場合には、顔の位置が抽出された領域46cとずれてしまったことにより、ブロック47cは顔と対応しなくなる。この場合、ブロック47cの輝度情報は、顔を考慮した調光処理では、もはや参照に値しない。これは、第2演算手段が出力する仮適正値Cfの信頼度が、画像に占める顔の割合が大きいほど高く、顔の割合が小さいほど低いことを意味する。
【0077】
そこで、本実施形態では、顔領域抽出部24は、顔の抽出処理が完了した後、抽出した領域の、画像の横幅に対する割合を計算する。すなわち、発光量の決定におけるデジタルカメラや被写体の動きの影響度を示す指標データとして、画像全体に示す顔の割合を示すデータを取得する。そして、その割合と、パラメータαとの対応付けを定義したルックアップテーブル(LUT)を参照することによりパラメータαの値を決定し、フラッシュ制御部19のパラメータ記憶手段43に、そのα値を設定する。但し、LUTの参照に代えて、LUTと同等の変換を行う回路あるいはプログラムを採用してもよいことは言うまでもない。
【0078】
図9に、LUTの一例を示す。このLUTによれば、顔の割合が所定の閾値Th1を下回るときには、パラメータαは、ゼロではない所定の下限値αLに設定される。また、顔の割合が所定の閾値Th2を上回るときには、パラメータαは、1ではない所定の上限値αUに設定される。そして、顔の割合が閾値Th1以上閾値Th2以下であるときは、パラメータαは、下限値αLから上限値αUまでの範囲で、顔の割合が小さいほど小さく、大きいほど大きな値に設定される。これにより、画像に占める顔の割合が小さいときには、発光量調整における仮適正値Cfの影響力が弱まり、被写体が動いたり手ブレが生じたりしても、演算により求まる発光量が適正範囲を大きく外れることはなくなる。
【0079】
なお、上記処理では、画像の横幅に対する顔の横幅の割合を計算しているが、画像に占める顔の割合の指標となる値であれば、計算する値はどのような値であってもよい。例えば、抽出された領域の面積や画素数、画像全体の面積に対する顔の面積比などを計算してもよい。あるいは、顔の横幅と2つの目の間隔とは相関関係があるので、目を検出して目と目の間隔を求め、これを画像に占める顔の割合を示す指標値として演算に利用してもよい。すなわち、LUTの横軸として設定されるパラメータは、上記処理の目的に適うものであれば特に限定されない。また、上記LUTでは、閾値Th1以上閾値Th2以下の範囲においてパラメータの値が線形的に増加するが、非線形に増加する(LUTが非線形カーブを描く)ようにしてもよい。また、閾値Th1、Th2も、設計方針に応じて任意に定めることができるので、上記例のように閾値で区切られた一部の範囲においてのみαの値が単調増加するLUTのほか、閾値を設けずαの値が全範囲にわたって単調増加するようなLUTも採用し得る。
【0080】
また、顔領域抽出部24は、画像に占める顔の割合が所定の基準を下回るときに、全体制御部30に対し、警告信号を送出する。警告信号を受けた全体制御部30は、前述した警告動作を行う。
【0081】
続いて、手ブレ検出部35のパラメータ設定機能について説明する。手ブレが検出されたということは、図7Bや図8Bに示した状態が発生しているということであり、仮適正値Cfの信頼度は、ブレ量が大きいほど低いものとなる。すなわち、手ブレ検出部35が検出したブレ量は、それ自体が発光量の決定におけるデジタルカメラや被写体の動きの影響度を示す指標データとなり得る。
【0082】
手ブレ検出部35もまた、LUTを使って、パラメータαを決定する。図10に、手ブレ検出部35が使用するLUTの一例を示す。手ブレ検出部35は手ブレが発生したことを検出するのみならず、そのブレ量も測定するため、LUTの横軸はブレ量とする。このLUTによれば、ブレ量が0のときはパラメータαの値は上限値αUに設定され、以降ブレ量が大きくなるほどパラメータαの値は小さく設定され、ブレ量が所定の閾値Th9を越えると、パラメータαの値は下限値αLに設定される。これにより、ブレ量が大きいときには、発光量調整における仮適正値Cfの影響力が弱まり、演算により求まる発光量が適正範囲を大きく外れることはなくなる。
【0083】
また、手ブレ検出部35は、検出されたブレ量が所定の基準を上回るときに、全体制御部30に対し、警告信号を送出する。警告信号を受けた全体制御部30は、前述した警告動作を行う。
【0084】
さらに、他の処理部をパラメータ設定手段として機能させてもよい。例えば、望遠レンズなど焦点距離が長いレンズを使用した撮影では、画角が狭いため、通常の撮影よりも手ブレの影響が強く出やすい。これは、焦点距離が長いときは、仮適正値Cfの信頼度は高くないということである。よって、レンズの交換操作を検出し得る全体制御部30、もしくはズームレンズの調整を行う焦点距離調節部(図示せず)が、前記指標データとして焦点距離の情報を取得し、焦点距離に応じたパラメータ値を設定するようにしてもよい。LUTとしては、例えば、焦点距離が所定の閾値よりも長いときには、パラメータαの値を下限値αLに設定するようなテーブルとする。これにより、焦点距離が長く手ブレの影響を受けやすいときには、発光量調整における仮適正値Cfの影響力が弱まるので、被写体が動いたり手ブレが生じたりしても、それが原因で、決定される発光量が適正範囲を大きく外れるということはない。
【0085】
また、被写体までの距離も、発光量の決定におけるデジタルカメラや被写体の動きの影響度を示す指標データとして有効である。被写体までの距離は、前述した測距機能により測定する。デジタルカメラから被写体(顔)までの距離と、顔の大きさ(画像中の顔が占める割合)の間には、相関関係があるので、被写体までの距離に応じてパラメータαを設定した場合も、画像中の顔が占める割合に応じてパラメータαを設定した場合と、同様の効果を得ることができる。
【0086】
ここで、図9および図10に例示したLUTでは、横軸に設定されたパラメータの値が所定の範囲内の値であるときに、横軸のパラメータに対し、縦軸のパラメータαが線形的に増加しているが、非線形に増加するようなLUT、すなわち直線ではなく非線形カーブを描くテーブルを採用してもよい。また、各閾値は、設計方針に応じて任意に定めることができる。
【0087】
なお、パラメータαの設定をどの処理部が行うか、あるいはどのようなLUTを利用するかは、撮影モードなどの設定に応じて切り替える。あるいは、単にパラメータを記憶するだけのパラメータ記憶手段43に代えて、複数の処理部からパラメータ値もしくは指標データの入力を受け付けて、入力された複数の値を使って、新たに最適なパラメータ値を求める手段を設けてもよい。例えば、顔領域抽出部24、手ブレ検出部35その他の処理部が出力したパラメータ値を図9の処理における初期値α0として、図9に例示した処理によりパラメータ値を求める。あるいは、各処理部が出力した指標データを収集し、複数の指標データの組み合わせに基づいて、パラメータ値を決定してもよい。
【0088】
また、本実施形態において、パラメータの設定に関与する処理部は、それぞれ、パラメータの設定に関連する情報を記録読出制御部28に転送する。転送する情報には、指標データも含まれる。例えば、計測された時間差T(msec)、顔の重視度合い(%)、警告の有無、算出された適正発光量(Av)などのデータが、各値を決定した処理部から記録読出制御部28に転送される。記録読出制御部28は、Exifファイルをメモリカード29に記録する際に、これらの情報をファイルヘッダの所定領域に格納する。あるいは、Exifファイルに付随するデバッグデータにパラメータの設定に関連する情報を記録してもよい。
【0089】
全体制御部30および表示制御部26は、ユーザから撮影された画像の確認表示を要求されたときに、画像とともに、上記パラメータの設定に関連する情報を表示する。これにより、ユーザは撮影状況と発光量制御における顔の考慮度合いの関係を知ることができる。
【0090】
上記構成によれば、顔の検出結果を利用して調光を行うことに問題があるときに、パラメータαの値が小さめに設定され、発光量の決定における仮適正値Cfの影響力を抑えることができる。しかし、タイマーの故障、顔の誤検出などが原因で、誤った指標データが取得されたときには、パラメータαの値が不適切な値に設定されてしまう。そこで、本実施形態では、不測の事態が発生しても、発光量決定手段44により決定された発光量が、適正範囲を大きく外れないよう、調整を行う。
【0091】
具体的には、発光量決定手段44により、顔を考慮せずに調光を行った場合に求められる適正値、すなわち第1演算手段41が出力する仮適正値Cnを基準とし、その仮適正値Cnの値から判断して妥当と思われる範囲に、適正発光量Chを制限する。つまり、適正発光量Chを、固定された範囲に制限するのではなく、仮適正値Cnに基づいて定められた範囲に制限する。
【0092】
具体的には、発光量決定手段44に、次式(2)および(3)に基づく処理により、適正発光量Chを決定させる。
Ck=Cn×(1−α)+Cf×α … (2)
【数1】

【0093】
ここで、Ckは仮の適正発光量である。また、ULは、正常な顔検出が行われた場合であって適正値Cfが適正値Cnよりも大きくなる場合に、適正値Cfと適正値Cnの差分が取り得る値の最大値である。またLLは、正常な顔検出が行われた場合であって適正値Cfが適正値Cnよりも小さくなる場合に、適正値Cfと適正値Cnの差分が取り得る値の最大値である。ULおよびLLの値は、顔を含む被写体の調光を繰り返すことにより経験的に取得された値とする。
【0094】
上記(2)式により求められる仮の適正発光量Ckは、予期せぬ状況が発生した場合には、極端に大きな値あるいは極端に小さな値となる場合もある。しかし、そのような極端な値となったときでも、上記(3)式に基づく演算により、適正発光量Chは、Cn―LLからCn+ULまでの範囲に制限される。このCn―LLという下限値およびCn+ULという上限値は、適正値Cnを基準として決定される値であるため、発光量がこの範囲である限り、フラッシュ撮影により取得される画像が極端な失敗画像となることはない。すなわち、予期せぬ状況が発生した場合でも撮影が全く無駄になることはない。
【0095】
なお、以上に説明した例は、適正発光量Chについて上限値と下限値を定めた例であるが、上限値のみ、あるいは下限値のみを定め、極端に大きな値となってしまった場合のみ、あるいは極端に小さな値となってしまった場合のみ、値を制限するようにしてもよい。
【0096】
以上に説明したように、本実施形態のデジタルカメラによれば、調光を行うときに、顔を検出したときと顔の位置がずれていたとしても、そのずれが発光量の決定に及ぼすマイナスの影響が大きいときには、顔に相当する領域として抽出された領域のデータが発光量の決定に与える影響が低く抑えられる。よって、顔がずれてしまった場合でも、最適でないまでも適切な発光量でフラッシュ撮影が行われ、常に、鑑賞に値する画像を得ることができる。
【0097】
また、本実施形態では、(1)式や(2)式に示したように、顔を考慮しない調光により求められた仮適正値Cnと、顔を考慮した調光により求められた仮適正値Cfとの加重平均を計算することにより、適正発光量Ch(あるいは仮の適正発光量Ck)を求めているので、発光量調整における仮適正値Cfの影響力を、パラメータαの設定ひとつで簡単に、強めたり弱めたりすることができる。第1演算手段41と第2演算手段42は、常時同じ演算式に基づく演算を行っていればよいので、複数の演算式を調光方針に応じて使い分けるものに比べ、第1演算手段41と第2演算手段42の回路構造あるいはプログラムを、シンプルなものとすることができる。
【0098】
なお、発光量の調整方法、すなわち発光量決定手段44の処理は、上記(1)(2)(3)式を用いた処理に限らず、他の演算式に基づいて発光量を決定してもよい。例えば、加重平均ではなく、二乗平均、対数平均などを求めてもよい。また、例えば、2つの基準値の中間の値よりも何%Cf寄りにする、というように基準値からの調整分を固定的に決めておいてもよい。さらには、加重平均などを求めた後に決まった調整値を加算あるいは減算するなどしてもよい。
【0099】
[ 実施形態2 ]
次に説明するデジタルカメラは、外観、内部構成は実施形態1のデジタルカメラと同じであるが、フラッシュ制御部19が行う処理が実施形態1と異なる。図11に、本実施形態におけるフラッシュ制御部19の構成と入出力データを示す。フラッシュ制御部19は、図に示すように、発光量決定手段50と、重み付けパラメータ設定手段51を備える。
【0100】
発光量決定手段50は、全体制御部30の制御の下、画像入力制御部23から、非発光時画像データと予備発光時画像データの供給を受け、実施形態1の説明において仮適正値Cnを求めるための処理として説明した図5の処理と同様の処理を実行することにより、発光量を決定する。但し、発光量決定手段50は、実施形態1の第1演算手段41と異なり、ステップS104において顔に対応する領域ブロックに重み付けをおいた演算を行う。各領域ブロックの重み付けは、重み付けパラメータ設定手段51により設定される。
【0101】
重み付けパラメータ設定手段51は、全体制御部30の制御の下、顔領域抽出部24から領域情報の供給を受ける。そして、顔が抽出された領域に対応する領域ブロックに対し、顔がない領域に対応する領域ブロックよりも高い重み付けを設定する。この際、重み付けパラメータ設定手段51は、顔が抽出された領域に対応する領域ブロックの重み付けを一律に高く設定するのではなく、図12Aおよび図12Bに例示するように、顔が大きいときほど重み付けを高く設定する。例えば、顔がない領域の重み付けを1とした場合、顔に対応するブロック数が3個未満であれば重み付けを3に、3個〜6個であれば重み付けを4に、7個〜10個であれば重み付けを5に、11個以上であれば重み付けを6に設定する。これにより、画像に占める顔の割合が大きく、手ブレが生じても発光量の決定にはあまり影響がない場合には、発光量の値は、顔がある領域として抽出された領域からの反射光量を十分考慮した値となり、一方、画像に占める顔の割合が小さく、手ブレが生じた場合に発光量の決定に大きな影響が出る場合には、顔がある領域として抽出された領域からの反射光量が発光量の決定に与える影響は、低く抑えられる。
【0102】
以上、2つの実施形態を例示しながら説明したが、本発明はこれらの実施形態に限定されるものではない。例えば上記実施形態の演算パラメータは、いずれも顔を考慮する度合いが大きいときに大きく、小さいときに小さい値となるパラメータであったが、顔を考慮するほど小さく、顔を考慮しないほど大きな値となる演算パラメータであってもよい。
【0103】
また、上記実施形態では、非発光時画像データと予備発光時画像データから求められる反射光量に基づいて、被写体の必要光量に相当する光を被写体に供給できるか否かを判断しているが、被写体までの距離、明るさ、撮影感度などを測定または推定して上記判断を行なってもよい。すなわち、発光量決定手段が実行する演算処理は、発光量の決定における顔の考慮度合いを演算パラメータとして設定し得る処理であればよく、上記実施形態には限定されない。さらには、指標データも、上記実施形態中に例示したものには限られない。この他、顔の考慮度合いを演算パラメータとして設定し得る演算処理を実行し、その演算パラメータの値を、デジタルカメラまたは被写体の動きが発光量の決定に影響する度合いを示す指標データの値に基づいて決まる値に設定する方法およびデジタルカメラは、すべて本発明の技術的範囲に属する。
【図面の簡単な説明】
【0104】
【図1A】本発明の一実施形態におけるデジタルカメラの概観図(通常状態)
【図1B】本発明の一実施形態におけるデジタルカメラの概観図(内蔵フラッシュをポップアップした状態)
【図1C】本発明の一実施形態におけるデジタルカメラの概観図(外付フラッシュを取り付けた状態)
【図2】デジタルカメラの内部構成を示す図
【図3】フラッシュ制御部の構成と入出力データを示す図
【図4】画像データを領域ブロックに分割した例を示す図
【図5】第1演算手段の処理を示すフローチャート
【図6】第2演算手段の処理を示すフローチャート
【図7】時間差について説明するための図
【図8】パラメータαの決定に用いられるLUTの一例を示す図
【図9】デジタルカメラの状態と撮影モードに基づいてパラメータを設定する処理の一例を示す図
【図10A】デジタルカメラの状態と時間差との関係を示す図
【図10B】デジタルカメラの状態と時間差との関係を示す図
【図10C】デジタルカメラの状態と時間差との関係を示す図
【図11】警告処理の一例を示す図
【図12A】画像データと顔領域と領域ブロックの関係を示す図(顔が占める割合が大きい場合:顔検出処理時)
【図12B】画像データと顔領域と領域ブロックの関係を示す図(顔が占める割合が大きい場合:調光処理時)
【図13A】画像データと顔領域と領域ブロックの関係を示す図(顔が占める割合が小さい場合:顔検出処理時)
【図13B】画像データと顔領域と領域ブロックの関係を示す図(顔が占める割合が小さい場合:調光処理時)
【図14】パラメータαの決定に用いられるLUTの一例を示す図
【図15】パラメータαの決定に用いられるLUTの他の例を示す図
【図16】本発明の他の実施形態におけるフラッシュ制御部の構成と入出力データを示す図
【図17A】重み付けパラメータの設定例を示す図(顔が占める割合が大きい場合)
【図17B】重み付けパラメータの設定例を示す図(顔が占める割合が小さい場合)
【符号の説明】
【0105】
1 デジタルカメラ、2 シャッタレリーズボタン、 3 モードダイヤル、
4 内蔵フラッシュ、 5 ホットシュー、 6フラッシュポップアップボタン、
7 外付フラッシュ、 34 システムバス、
45 調光用の画像データ、 46 領域情報が示す領域、
47 領域情報が示す領域に対応する領域ブロック、48 顔検出用の画像データ、
49 調光時の実際の顔の位置

【特許請求の範囲】
【請求項1】
被写体を表す画像データを生成する撮像手段と、フラッシュを発光する発光手段と、前記撮像手段により生成された画像データを対象として顔検出処理を実行する顔検出手段とを備え、前記顔検出手段が出力する検出結果を利用して前記フラッシュの発光量を制御するデジタルカメラであって、
発光量の決定における顔の考慮度合いを演算パラメータとして設定し得る演算処理により、前記フラッシュの発光量を求める発光量決定手段と、
当該デジタルカメラまたは前記被写体の動きが発光量の決定に影響する度合いを示す指標データを取得し、前記演算パラメータの値を前記指標データの値に基づいて決まる値に設定するパラメータ設定手段とを備えたことを特徴とするデジタルカメラ。
【請求項2】
前記発光量決定手段が、前記演算処理として、前記撮像手段により生成された一の画像データを対象として実行された顔検出処理の検出結果と、前記撮像手段により生成された他の画像データに基づいて推定された被写体の必要光量とに基づいて発光量を求める処理を行い、
前記パラメータ設定手段が、前記指標データとして、前記一の画像データが生成された時点と前記他の画像データが生成された時点との時間差の指標となるデータを取得し、前記時間差が少なくとも所定範囲の時間であるときに、該時間差が大きいほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項1記載のデジタルカメラ。
【請求項3】
前記パラメータ設定手段が、前記指標データとして、当該デジタルカメラに対し設定された撮影モードおよび/または当該デジタルカメラの状態を示すデータを取得することを特徴とする請求項2記載のデジタルカメラ。
【請求項4】
前記パラメータ設定手段が、ブレが生じる可能性が高い撮影モードおよび/または状態ほど、顔の考慮度合いが低くなるように、前記演算パラメータの値を設定することを特徴とする請求項3記載のデジタルカメラ。
【請求項5】
前記パラメータ設定手段が、前記時間差の推定時間が長い撮影モードおよび/または状態ほど、顔の考慮度合いが低くなるように、前記演算パラメータの値を設定することを特徴とする請求項3記載のデジタルカメラ。
【請求項6】
前記時間差を計測する時間計測手段をさらに備え、
前記パラメータ設定手段が、前記時間計測手段により前記時間差を示すデータを取得することを特徴とする請求項2記載のデジタルカメラ。
【請求項7】
前記パラメータ設定手段が、前記指標データとして、前記顔検出手段により検出された顔の画像全体に占める割合を示すデータを取得し、前記割合が少なくとも所定範囲の割合であるときに、該割合が小さいほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項1記載のデジタルカメラ。
【請求項8】
前記パラメータ設定手段が、前記指標データとして、焦点距離を示すデータを取得し、該焦点距離が少なくとも所定範囲の長さであるときに、該焦点距離が長いほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項1記載のデジタルカメラ。
【請求項9】
手ブレ検出手段をさらに備え、
前記パラメータ設定手段が、前記指標データとして、前記手ブレ検出手段により検出されたブレ量のデータを取得し、該ブレ量が少なくとも所定範囲のブレ量であるときに、該ブレ量が大きいほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項1記載のデジタルカメラ。
【請求項10】
当該デジタルカメラから被写体までの距離を計測する測距手段をさらに備え、
前記パラメータ設定手段が、前記指標データとして、前記測距手段により計測された距離を示すデータを取得し、該距離が、少なくとも所定範囲の長さであるときに、該距離が長いほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項1記載のデジタルカメラ。
【請求項11】
前記撮像手段により生成された画像データを対象として前記顔検出手段が出力する検出結果を利用しない演算を行うことにより、前記発光量の仮適正値Cnを求める第1演算手段と、
前記撮像手段により生成された画像データを対象として前記顔検出手段が出力する検出結果を利用する演算を行うことにより、前記発光量の仮適正値Cfを求める第2演算手段とをさらに備え、
前記発光量決定手段が、前記第1演算手段から供給される前記仮適正値Cnと前記第2演算手段から供給される前記仮適正値Cfとの平均を求める演算処理であって、前記パラメータ設定手段により設定されるパラメータの値により演算結果に対する仮適正値Cfの影響力が変化する演算処理を行うことを特徴とする請求項1から10のいずれか1項記載のデジタルカメラ。
【請求項12】
前記発光量決定手段が行う演算処理が、撮像手段により生成された画像データに対し領域ごとに異なる重み付けを設定して演算を行う処理であり、前記演算パラメータが前記重み付けであることを特徴とする請求項1から10のいずれか1項記載のデジタルカメラ。
【請求項13】
前記指標データが示す影響の度合いが所定の基準を超えるときに、所定の警告動作を行う警告手段を備えることを特徴とする請求項1から12のいずれか1項記載のデジタルカメラ。
【請求項14】
前記指標データを、フラッシュ発光を伴う撮影で取得された画像データと関連づけて記録媒体に記録する記録制御手段を備えることを特徴とする請求項1から13のいずれか1項記載のデジタルカメラ。
【請求項15】
被写体を表す画像データを生成する撮像手段と、フラッシュを発光する発光手段と、前記撮像手段により生成された画像データを対象として顔検出処理を実行する顔検出手段とを備えたデジタルカメラにおいて、前記顔検出手段が出力する検出結果を利用して前記フラッシュの発光量を制御する方法であって、
発光量の決定における顔の考慮度合いを演算パラメータとして設定し得る演算処理により前記フラッシュの発光量を求める発光量決定ステップと、
前記発光量決定ステップに先立ち、前記デジタルカメラまたは前記被写体の動きが発光量の決定に影響する度合いを示す指標データを取得し、前記演算パラメータの値を前記指標データの値に基づいて決まる値に設定するパラメータ設定ステップとを有することを特徴とする制御方法。
【請求項16】
前記発光量決定ステップにおいて、前記演算処理として、前記撮像手段により生成された一の画像データを対象として実行された顔検出処理の検出結果と、前記撮像手段により生成された他の画像データに基づいて推定された被写体の必要光量とに基づいて発光量を求める処理を行い、
前記パラメータ設定ステップにおいて、前記指標データとして、前記一の画像データが生成された時点と前記他の画像データが生成された時点との時間差の指標となるデータを取得し、前記時間差が少なくとも所定範囲の時間であるときに、該時間差が大きいほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項15記載の制御方法。
【請求項17】
前記パラメータ設定ステップにおいて、前記指標データとして、前記デジタルカメラに対し設定された撮影モードおよび/または前記デジタルカメラの状態を示すデータを取得することを特徴とする請求項16記載の制御方法。
【請求項18】
前記パラメータ設定ステップにおいて、ブレが生じる可能性が高い撮影モードおよび/または状態ほど、顔の考慮度合いが低くなるように、前記演算パラメータの値を設定することを特徴とする請求項17記載の制御方法。
【請求項19】
前記パラメータ設定ステップにおいて、前記時間差の推定時間が長い撮影モードおよび/または状態ほど、顔の考慮度合いが低くなるように、前記演算パラメータの値を設定することを特徴とする請求項17記載の制御方法。
【請求項20】
前記デジタルカメラが時間差を計測する時間計測手段をさらに備えるものであるときに、
前記パラメータ設定ステップにおいて、前記時間計測手段により前記時間差を示すデータを取得することを特徴とする請求項16記載の制御方法。
【請求項21】
前記パラメータ設定ステップにおいて、前記指標データとして、前記顔検出手段により検出された顔の画像全体に占める割合を示すデータを取得し、前記割合が、少なくとも所定範囲の割合であるときに、該割合が小さいほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項15記載の制御方法。
【請求項22】
前記パラメータ設定ステップにおいて、前記指標データとして、焦点距離を示すデータを取得し、該焦点距離が少なくとも所定範囲の長さであるときに、該焦点距離が長いほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項15記載の制御方法。
【請求項23】
前記デジタルカメラが、手ブレ検出手段を備えるものであるときに、
前記パラメータ設定ステップにおいて、前記指標データとして、手ブレ検出手段により検出されたブレ量を示すデータを取得し、該ブレ量が少なくとも所定範囲のブレ量であるときに、該ブレ量が大きいほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項15記載の制御方法。
【請求項24】
前記デジタルカメラが、当該デジタルカメラから被写体までの距離を計測する測距手段を備えるものであるときに、
前記パラメータ設定ステップにおいて、前記指標データとして、前記測距手段により計測された距離を示すデータを取得し、該距離が、少なくとも所定範囲の長さであるときに、該距離が長いほど顔の考慮度合いが低くなるように前記演算パラメータの値を設定することを特徴とする請求項15記載の制御方法。
【請求項25】
前記指標データが示す影響の度合いが所定の基準を超えるときに、所定の警告動作を行う警告ステップを、さらに有することを特徴とする請求項15から24のいずれか1項記載の制御方法。
【請求項26】
前記指標データを、フラッシュ発光を伴う撮影で取得された画像データと関連づけて記録媒体に記録する記録ステップを、さらに有することを特徴とする請求項15から25のいずれか1項記載の制御方法。

【図1A】
image rotate

【図1B】
image rotate

【図1C】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10A】
image rotate

【図10B】
image rotate

【図10C】
image rotate

【図11】
image rotate

【図12A】
image rotate

【図12B】
image rotate

【図13A】
image rotate

【図13B】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17A】
image rotate

【図17B】
image rotate


【公開番号】特開2008−104156(P2008−104156A)
【公開日】平成20年5月1日(2008.5.1)
【国際特許分類】
【出願番号】特願2007−211251(P2007−211251)
【出願日】平成19年8月14日(2007.8.14)
【出願人】(306037311)富士フイルム株式会社 (25,513)
【復代理人】
【識別番号】100118614
【弁理士】
【氏名又は名称】重松 万里
【Fターム(参考)】