(57)【特許請求の範囲】
【請求項１】
測光手段と、
前記測光手段による測光値に基づいて測光対象からの光の光量変化特性を算出する算出手段と、
前記算出手段が算出した光量変化特性に所定の周期での変化があるか否かを判定する判定手段と、を備える撮像装置であって、
前記測光手段は、一定の周期で測光を複数回行い、
前記算出手段は、前記測光手段により測光を複数回行って得られた複数の測光値のうち、所定の測光値と該所定の測光値から第１の間隔にある測光値とから第１の評価値を算出すると共に、前記所定の測光値から第２の間隔にある測光値と前記所定の測光値とから第２の評価値を算出し、
前記判定手段は、前記第１の評価値および前記第２の評価値に基づいて前記光量変化特性における第１の周波数の周期での変化の有無を判定し、
前記第１の間隔は、前記第１の周波数の同位相に近い間隔に設定され、
前記第２の間隔は、前記第１の周波数の逆位相に近い間隔に設定されることを特徴とする撮像装置。
【請求項２】
前記第１の間隔は、前記第１の周波数の周期の整数倍であることを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記算出手段は、前記測光手段により測光を複数回行って得られた複数の測光値のうち、所定の測光値と該所定の測光値から第３の間隔にある測光値とから第３の評価値を算出すると共に、前記所定の測光値と前記所定の測光値から第４の間隔にある測光値とから第４の評価値を算出し、
前記第３の間隔は、前記第１の周波数とは異なる第２の周波数の同位相に近い間隔に設定され、
前記第４の間隔は、前記第２の周波数の逆位相に近い間隔に設定され、
前記判定手段は、さらに前記第３の評価値および前記第４の評価値に基づいて、前記光量変化特性における前記第２の周波数の周期での変化の有無を判定することを特徴とする請求項１又は２に記載の撮像装置。
【請求項４】
前記第３の間隔は、前記第２の周波数の周期の整数倍であることを特徴とする請求項３に記載の撮像装置。
【請求項５】
前記第１の間隔は、前記第１の周波数の同位相に近く、且つ、前記第１の周波数とは異なる第２の周波数の逆位相に近い間隔に設定され、
前記第２の間隔は、前記第２の周波数の同位相に近く、前記第１の周波数の逆位相に近い間隔に設定され、
前記判定手段は、前記第１の評価値および前記第２の評価値に基づいて、前記光量変化特性における前記第１の周波数での変化の有無と前記第２の周波数の変化の有無を判定することを特徴とする請求項１又は２に記載の撮像装置。
【請求項６】
前記第１の評価値および前記第２の評価値はＳＡＤ値であり、
前記算出手段は、前記第１の周波数の周期の所定の整数倍の間隔で複数の前記第１の評価値を算出し、
前記判定手段は、前記複数の第１の評価値のうち最小値となる評価値と前記第２の評価値とに基づいて前記光量変化特性における前記第１の周波数での変化の有無を判定することを特徴とする請求項１又は２に記載の撮像装置。
【請求項７】
前記算出手段は、前記撮像装置の電源が入れられた後に前記判定手段によって初めての判定が行われた後には、前記複数の第１の評価値のうち最小値となる評価値および前記第２の評価値のみを算出することを特徴とする請求項６に記載の撮像装置。
【請求項８】
前記算出手段は、
前記測光手段により測光を複数回行って得られた複数の測光値のうち、所定の測光値と該所定の測光値から前記第１の周波数とは異なる第２の周波数の周期の所定の整数倍の間隔にある測光値とから複数の第３の評価値を算出すると共に、前記所定の測光値から前記第２の周波数の逆位相に近い間隔にある測光値と前記所定の測光値とから第４の評価値を算出し、
前記判定手段は、さらに前記複数の第３の評価値のうち最小値となる評価値および前記第４の評価値に基づいて、前記光量変化特性における前記第２の周波数の周期での変化の有無を判定し、
前記第３の評価値および前記第４の評価値はＳＡＤ値であることを特徴とする請求項６又は７に記載の撮像装置。
【請求項９】
前記算出手段は、前記撮像装置の電源が入れられた後に前記判定手段によって初めての判定が行われた後には、前記複数の第３の評価値のうち最小値となる評価値および前記第４の評価値のみを算出することを特徴とする請求項８に記載の撮像装置。
【請求項１０】
撮像装置による撮像時における光量変化特性の算出方法であって、
測光手段により一定の周期で測光を複数回行う測光ステップと、
前記測光ステップで得られた測光値に基づいて測光対象からの光の光量変化特性を算出する算出ステップと、
前記算出ステップで算出した光量変化特性に所定の周期での変化があるか否かを判定する判定ステップとを有し、
前記算出ステップでは、前記測光手段により測光を複数回行って得られた複数の測光値のうち、所定の測光値と該所定の測光値から第１の周波数の同位相に近い間隔にある測光値から第１の評価値を算出すると共に、前記所定の測光値から前記第１の周波数の逆位相に近い間隔にある測光値と前記所定の測光値とから第２の評価値を算出し、
前記判定ステップでは、前記第１の評価値および前記第２の評価値に基づいて前記光量変化特性における前記第１の周波数の周期での変化の有無を判定することを特徴とする光量変化特性の算出方法。
【請求項１１】
撮像装置による撮像時における光量変化特性の算出方法をコンピュータに実行させるプログラムであって、
前記光量変化特性の算出方法は、
一定の周期で取得された測光値に基づいて測光対象からの光の光量変化特性を算出する算出ステップと、
前記算出ステップで算出した光量変化特性に所定の周期での変化があるか否かを判定する判定ステップとを有し、
前記算出ステップでは、測光手段により測光を複数回行って得られた複数の測光値のうち、所定の測光値と該所定の測光値から第１の周波数の同位相に近い間隔にある測光値とから第１の評価値を算出すると共に、前記所定の測光値から前記第１の周波数の逆位相に近い第２の間隔にある測光値と前記所定の測光値とから第２の評価値を算出し、
前記判定ステップでは、前記第１の評価値および前記第２の評価値に基づいて前記光量変化特性における前記第１の周波数の周期での変化の有無を判定することを特徴とするプログラム。
【請求項１２】
請求項１１に記載のプログラムがコンピュータより読み出し可能に記憶されていることを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像素子を備える撮像装置、撮像時の光量変化特性の算出方法、光量変化特性の算出方法をコンピュータに実行させるプログラム及び記憶媒体に関する。
【背景技術】
【０００２】
近年、デジタルカメラ等の撮像装置では、撮像素子の高感度化に伴い、室内のような比較的暗い環境下においても高速のシャッタ速度でブレのない写真を撮像することができるようになってきている。ここで、室内光源として普及している一般的な蛍光灯では、電源（一般的に、商用電源）の周波数の影響により、周期的に照明光がゆらぐフリッカと呼ばれる現象が生じる。そして、フリッカが生じる光源（以下「フリッカ光源」と記す）下での高速シャッタ撮像では、フリッカの影響によって、フレーム毎に画像の露出や色温度にばらつきが生じてしまい、また、１フレーム内で露出むらや色むらが発生してしまうことがある。
【０００３】
このような問題に対して、照明光のフリッカを検知し、露光時間の中心が照明光の光量が極大値を示すタイミングと略一致するように撮像タイミングを調節する技術が提案されている。例えば、特許文献１に記載された技術では、フリッカとその周波数を検知するために、先ず、６００ｆｐｓ以上の高速なフレームレートで複数の画像を取得（撮像）し、各フレーム画像から輝度評価値を求める。続いて、輝度評価値の時間的変化を２値化処理し、２値化処理後の輝度評価値が０（ゼロ）から１へ立ち上がるタイミングの間隔が１０ｍｓ（ミリ秒）であれば１００Ｈｚのフリッカがあり、８．４ｍｓであれば１２０Ｈｚのフリッカがあると判定している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１２０１３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１に開示された技術は、フリッカ光量がｓｉｎカーブを描くように理想的に変化する場合には有用である。しかし、フリッカ光量が、電源や点灯（照明）装置の特性等に起因して不規則に変化した場合には、正しくフリッカとその周波数を判定することができない可能性がある。
【０００６】
本発明は、撮像時の光量変化特性を高精度に検知することができる撮像装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る撮像装置は、測光手段と、前記測光手段による測光値に基づいて測光対象からの光の光量変化特性を算出する算出手段と、前記算出手段が算出した光量変化特性に所定の周期での変化があるか否かを判定する判定手段と、を備える撮像装置であって、前記測光手段は、一定の周期で測光を複数回行い、前記算出手段は、前記測光手段により測光を複数回行って得られた複数の測光値のうち、所定の測光値と該所定の測光値から第１の間隔にある測光値とから第１の評価値を算出すると共に、前記所定の測光値から第２の間隔にある測光値と前記所定の測光値とから第２の評価値を算出し、前記判定手段は、前記第１の評価値および前記第２の評価値に基づいて前記光量変化特性における第１の周波数の周期での変化の有無を判定し、前記第１の間隔は、前記第１の周波数の同位相に近い間隔に設定され、前記第２の間隔は、前記第１の周波数の逆位相に近い間隔に設定されることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、撮像時の光量変化特性を高精度に検知することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係るデジタルカメラの概略構成を示す図である。
【図２】図１に示すデジタルカメラで実行される第１実施形態に係るフリッカ検知方法のフローチャートである。
【図３】周波数が５０Ｈｚ，６０Ｈｚの各電源で点灯させたフリッカ光源に対するフリッカ検知のための蓄積、読み出し及び測光値の推移を示す図である。
【図４】図２のステップＳ１０３において、ＳＡＤ（６），ＳＡＤ（５），ＳＡＤ（３）の値に基づき周波数判定を実行するために用いられる領域マップである。
【図５】撮像対象からの光の種類を判定するためのテーブルである。
【図６】図２のステップＳ１０３において、ＳＡＤ（１０），ＳＡＤ（１２）の値に基づき周波数判定を実行するために用いられる領域マップである。
【図７】図１に示すデジタルカメラで実行される第２実施形態に係るフリッカ検知方法のフローチャートである。
【図８】実際に観測される、撮像対象からの光の光量変化を示す波形例である。
【図９】図７のステップＳ２０５において周波数判定を実行するために用いられる領域マップである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。ここでは、本発明に係る撮像装置として、所謂、デジタルカメラを取り上げることとする。但し、本発明はこれに限定されるものではなく、カメラ機能を備える各種の電子機器であってもよい。例えば、本発明に係る撮像装置は、携帯電話やスマートフォン等のカメラ機能付き携帯通信端末、カメラ機能付き携帯型コンピュータ、カメラ機能付き携帯ゲーム機等であってもよい。
【００１１】
図１は、本発明の実施形態に係るデジタルカメラ１００の概略構成を示す図である。デジタルカメラ１００は、大略的に、カメラ本体１００Ａ及びレンズ鏡筒１００Ｂから構成される。撮像光学系であるレンズ鏡筒１００Ｂは、カメラ本体１００Ａと一体となっていてもよいし、カメラ本体１００Ａに対して着脱自在であってもよい。以下、撮像対象からの光（撮像時の環境光）の光量変化特性を算出することを「フリッカ検知」と称呼して説明を行うものとする。
【００１２】
カメラ本体１００Ａは、ＣＰＵ１０１、メモリ１０２、撮像素子１０３、シャッタ１０４、ハーフミラー１０５、ピント板１０６、表示素子１０７及び測光センサ１０８を備える。また、カメラ本体１００Ａは、ペンタプリズム１０９、不図示の光学ファインダ、ＡＦセンサ１１０、ＡＦミラー１１１、ＩＣＰＵ１１２及びメモリ１１３を備える。レンズ鏡筒１００Ｂは、複数のレンズ１２１と、不図示の絞りと、ＬＰＵ１２２とを備える。
【００１３】
ＣＰＵ１０１は、デジタルカメラ１００の各部を制御する演算処理装置である。メモリ１０２は、ＣＰＵ１０１が実行するプログラムや変数等を格納するＲＯＭと、ＣＰＵ１０１がプログラムを展開する作業領域や一時的な画像データ等の記憶領域を有するＲＡＭを含む。ＬＰＵ１２２は、鏡筒内ＣＰＵであり、被写体に対する距離情報等をＣＰＵ１０１へ送信し、また、ＣＰＵ１０１からの指令に基づいてレンズ１２１の駆動制御等を行う。撮像素子１０３は、赤外カットフィルタやローパスフィルタ等を含むＣＭＯＳ等の光電変換素子からなるイメージセンサである。シャッタ１０４は、非撮影時には閉じて撮像素子１０３を遮光し、撮影時には開いてレンズ鏡筒１００Ｂを通過した入射光（光束）を撮像素子１０３へ導く。
【００１４】
撮像素子１０３の前面側（被写体側）に設けられたハーフミラー１０５は、非撮影時にレンズ１２１を通して入射する光の一部を反射して、ピント板１０６に光学像を結像させる。表示素子１０７は、ＰＮ液晶等のＡＦ測距枠を表示し、被写体のどの位置に対してＡＦ動作の制御が行われているかを、光学ファインダを通じて撮影者（使用者）に示す。測光センサ１０８は、ＣＣＤ或いはＣＭＯＳ等の光電変換素子からなり、露出制御のために測光対象（被写界）に対する測光を行い、測光対象の明るさ（輝度）を測定する。なお、測光対象は、一般的には、撮像対象である被写体であるが、光源を測光対象とすることもできる。以下、測光対象は、撮像対象であるとして説明する。
【００１５】
ペンタプリズム１０９は、ピント板１０６の被写体像を測光センサ１０８と光学ファインダへ導く。なお、測光センサ１０８は、ペンタプリズム１０９を介してピント板１０６に結像された被写体像を斜め方向の位置から見ている。ＡＦミラー１１１は、レンズ鏡筒１００Ｂから入射してハーフミラー１０５を通過した光束の一部をＡＦセンサ１１０へ導く。ＡＦセンサ１１０は、受光した光束に基づいて、被写体に対する自動合焦のための測距を行う。
【００１６】
ＩＣＰＵ１１２は、測光センサ１０８の駆動制御や測光演算、顔検知演算や追跡演算等の被写体認識処理、フリッカ検知演算等の各種の演算処理を行うＣＰＵである。メモリ１１３は、ＩＣＰＵ１１２が実行するプログラムや変数等を格納するＲＯＭと、ＩＣＰＵ１１２がプログラムを展開する作業領域や一時的に演算結果を記憶するＲＡＭを含む。
【００１７】
なお、図１には不図示であるが、デジタルカメラ１００は、電源スイッチ及びシャッタスイッチを備える。シャッタスイッチは、半押し（第１ストローク）でオンするスイッチＳＷ１と、全押し（第２ストローク）でオンするスイッチＳＷ２とを備える。スイッチＳＷ１がオンすることで、測光センサ１０８からの出力に基づく露出制御とＡＦセンサ１１０からの出力に基づく自動合焦制御が実行される。また、スイッチＳＷ２がオンすることで、本撮影が行われる。本撮影では、撮像素子１０３に結像した光学像が撮像素子１０３によってアナログ電気信号に変換され、そのアナログ電気信号が不図示の画像処理手段によりデジタル画像データに変換され、不図示のメモリカード等の記憶手段に記憶される。
【００１８】
＜フリッカ検知方法の第１実施形態＞
図２は、デジタルカメラ１００で実行される第１実施形態に係るフリッカ検知方法のフローチャートである。図２に示す各処理は、ＣＰＵ１０１がメモリ１０２のＲＯＭに格納されたプログラムをＲＡＭに展開することにより、デジタルカメラ１００の各構成要素の動作を制御することにより実現される。ステップＳ１０１においてＣＰＵ１０１は、測光センサ１０８によるフリッカ検知のための電荷蓄積（以下、単に「蓄積」という）と、蓄積した電荷の読み出し（以下、単に「読み出し」という）を行う。
【００１９】
図３（ａ），（ｂ）はそれぞれ、周波数が５０Ｈｚ，６０Ｈｚの各電源で点灯させたフリッカ光源に対するフリッカ検知のための蓄積、読み出し及び測光値の推移を示す図である。フリッカ検知では、測光センサ１０８による測光を、所定の周期で複数回行って、複数の測光値を取得する。具体的には、予想されるフリッカの周波数は、商用電源の周波数である５０Ｈｚと６０Ｈｚに基づき１００Ｈｚ（第１の周波数）又は１２０Ｈｚ（第２の周波数）である。そこで、図３の各図に示すように、約６００ｆｐｓ（＝約１．６６７ｍｓミリ秒）の周期で、蓄積・読み出しを連続して１２回行う。この６００ｆｐｓという周期は、予想されるフリッカの周波数（１００Ｈｚ又は１２０Ｈｚ）の公倍数周波数となっている。そのため、フリッカ検知で連続的な画像データを得るための撮像の蓄積時間は、予想されるフリッカ光源の光量変化周期の短い方の時間である１／１２０秒よりも短い蓄積時間となる。
【００２０】
周波数が５０Ｈｚの電源で点灯させたフリッカ光源（フリッカの周波数は１００Ｈｚ）が存在する場合（以下「１００Ｈｚフリッカ環境」という）、フリッカ光源の光量変化の２周期分としてＡＥ（１）〜ＡＥ（１２）の測光値が得られる。また、周波数が６０Ｈｚの電源で点灯させたフリッカ光源（フリッカの周波数は１２０Ｈｚ）が存在する場合（以下「１２０Ｈｚフリッカ環境」という）、フリッカ光源の光量変化の２周期分としてＡＥ（１）〜ＡＥ（１０）の測光値が得られる。なお、図３には、ｎ回目の蓄積が「蓄積ｎ」、蓄積ｎの読み出しが「読出ｎ」、読出ｎの結果から得られる測光値が「ＡＥ（ｎ）」で示されている。また、測光値ＡＥ（ｎ）は、蓄積期間中の中央値で代表させている。
【００２１】
続いて、ステップＳ１０２においてＣＰＵ１０１は、フリッカの周波数を判定するために使用する評価値であるＳＡＤ（ｍ）を、下記式１により算出する。なお、ＳＡＤは、Sum of Absolute Difference の略であり、類似度を表す指標の１つで、例えば、パターンマッチングの分野等で用いられる。「ｍ」は、本実施形態では、１２回の測光を行ったうちのｎ回目の測光値ＡＥ（ｎ）に対して何回先の測光値との類似度を算出するか、を意味する数値である。したがって、ＳＡＤ（ｍ）は、（１．６６７×ｍ）ｍｓ経過後の測光値ＡＥ（ｎ＋ｍ）との類似度を算出する。
【００２２】
【数１】
0006525757.tif 000002
【００２３】
式１から分かるように、類似度が高くなるにしたがってＳＡＤ（ｍ）の値は小さくなる。例えば、１００Ｈｚフリッカ環境下でのフリッカ周期（１０ｍｓ）と測光周期（１．６６７ｍｓ）との関係は、１０／１．６６７≒６、であり、フリッカ周期はフレーム周期の整数倍とみなせる。つまり、１００Ｈｚフリッカ環境において、１０ｍｓずれたタイミング（第１の間隔）での測光値は、完全な同位相の関係となる。この場合、図３（ａ）に示すように、蓄積タイミングによらずに６回周期で略同じ測光値が得られ、ＡＥ（ｎ）≒ＡＥ（ｎ＋６）、の関係となる。この性質より、１００Ｈｚフリッカ環境下でＳＡＤ（６）（第１の評価値）を算出すると、ＳＡＤ（６）≒０となる。したがって、簡易的には、所定の閾値ＳＡＤ＿５０を設定し、ＳＡＤ（６）≦ＳＡＤ＿５０、の関係が満たされれば、１００Ｈｚフリッカ環境下にあることを検知することができる。
【００２４】
ここで、本実施形態では、デジタルカメラ１００の撮像環境が１００Ｈｚフリッカ環境下にあることをより高精度に検知するために、ＳＡＤ（３）（第２の評価値）を算出する。ＳＡＤ（３）は、１．６６７×３＝５ｍｓ経過後の測光値との類似度を示す値となる。１００Ｈｚフリッカ環境において、５ｍｓずれたタイミング（第２の間隔）での測光値は完全な逆位相の関係となるため、ＳＡＤ（３）はＳＡＤ（６）に対して非常に大きな値となる。
【００２５】
同様の考え方に基づき、１２０Ｈｚフリッカ環境下では、ＳＡＤ（５）（第３の評価値）とＳＡＤ（３）（第４の評価値）とを算出する。１２０Ｈｚフリッカ環境下では、点灯周期は８．３３３ｍｓであるため、ＡＥ（ｎ）≒ＡＥ（ｎ＋５）となり、ＳＡＤ（５）≒０となる。つまり、１２０Ｈｚフリッカ環境において、８．３３３ｍｓずれたタイミング（第３の間隔）での測光値は、同位相の関係となる。なお、簡易的には、所定の閾値ＳＡＤ＿６０を設定し、ＳＡＤ（５）≦ＳＡＤ＿６０、の関係が満たされれば、１２０Ｈｚフリッカ環境下にあることを検知することができる。
【００２６】
ここで、１２０Ｈｚフリッカ環境下では、完全に逆位相の関係になるのは４．１６ｍｓ経過後であるため、４．１６ｍｓ経過後の波形との類似度を判定するのが理想的である。しかし、４．１６ｍｓはフレーム周期１．６６７ｍｓの整数倍ではないため、これに比較的近い値として、５ｍｓ（第４の間隔）の経過後の波形との類似度を示すＳＡＤ（３）の値を用いる。１２０Ｈｚフリッカ環境下でも、ＳＡＤ（３）は逆位相に近い関係で測光値変化の類似度を示すため、ＳＡＤ（３）はＳＡＤ（５）に対して非常に大きな値となる。
【００２７】
こうして、ステップＳ１０２においてＳＡＤ（６），ＳＡＤ（５），ＳＡＤ（３）の値を算出した後、ステップＳ１０３においてＣＰＵ１０１は、周波数判定を行う。この周波数判定について、図４を参照して説明する。図４は、ＳＡＤ（６），ＳＡＤ（５），ＳＡＤ（３）の値に基づき、ステップＳ１０３で周波数判定を実行するために用いられる領域マップである。図４（ａ）は１００Ｈｚフリッカ環境か否かの判定に用いられる領域マップ４００であり、図４（ｂ）は１２０Ｈｚフリッカ環境か否かの判定に用いられる領域マップ４１０である。
【００２８】
上述の通り、１００Ｈｚフリッカ環境下では、ＳＡＤ（３）はＳＡＤ（６）に対して非常に大きな値となる。よって、横軸にＳＡＤ（３）を、縦軸にＳＡＤ（６）を取った平面では、１００Ｈｚフリッカ環境は、相対的に右下の領域にプロットされる。そこで、１００Ｈｚフリッカ環境であると判定する領域と１００Ｈｚフリッカ環境ではないと判定する領域とを、領域マップ４００のように設定する。これにより、ＳＡＤ（３）とＳＡＤ（６）の値のプロット位置から、高い精度で１００Ｈｚフリッカ環境である否かを判定することができる。
【００２９】
同様に、横軸にＳＡＤ（３）を、縦軸にＳＡＤ（５）を取った平面において、１２０Ｈｚフリッカ環境は、相対的に右下の領域にプロットされる。よって、１２０Ｈｚフリッカ環境であると判定する領域と１２０Ｈｚフリッカ環境ではないと判定する領域とを、領域マップ４１０のように設定する。これにより、ＳＡＤ（３）とＳＡＤ（５）の値のプロット位置から、高い精度で１２０Ｈｚフリッカ環境である否かを判定することができる。なお、領域マップ４００，４１０は一例であって、領域を分割する境界線の位置、傾き、屈曲点等は、図示の限りではない。
【００３０】
領域マップ４００，４１０を用いて、フリッカ環境の有無、また、フリッカ環境下である場合に１００Ｈｚフリッカ環境かであるか１２０Ｈｚフリッカ環境下であるかを総合的に判定する。図５は、撮像対象からの光の種類を判定するためのテーブルである。図５中の「ＤＣ」は、フリッカ環境になく、太陽光等の定常光による撮像環境であることを示している。
【００３１】
定常光の場合、測光値は時間的に変化しないため、ＡＥ（１）≒ＡＥ（２）≒ＡＥ（３）≒・・・・・≒ＡＥ（１２）、となる。つまり、ＳＡＤ（６）≒ＳＡＤ（５）≒ＳＡＤ（３）≒０、となるため、定常光環境では、領域マップ４００，４１０の原点付近にプロットが得られることとなる。したがって、図４（ａ）による判定結果は「１００Ｈｚでない」となり、図４（ｂ）の判定結果は「１２０Ｈｚでない」となるため、図５のテーブルでは、右下欄の「ＤＣ」と判定される。
【００３２】
図５のテーブルの左上欄は、１００Ｈｚフリッカ環境であり、且つ、１２０Ｈｚフリッカ環境であると判定される場合である。この判定結果は、通常は得られることはないが、被写体の移動やデジタルカメラ１００のパンニング動作等によってＡＥ（１）〜ＡＥ（１２）を取得中の撮像対象（被写体）が同じではない場合に得られることがある。この場合には、フリッカ検知をエラー終了させるために「ＤＣ」判定としている。この場合、エラー終了したことを、光学ファインダを通してユーザ（撮影者）に知らせる構成としてもよい。図５のテーブルの右上欄は、１２０Ｈｚフリッカ環境であると判定され、左下欄は１００Ｈｚフリッカ環境であると判定される。このようにしてフリッカの周期を判断することで、高い精度でフリッカを検知することができる。
【００３３】
次に、上述したフリッカ検知方法の変形例について説明する。この変形例は、図２に示したフローチャートの各ステップでの処理内容を変更するもので、処理の流れは図２のフローチャートと同じである。よって、以下、図２のフローチャートを引用し、各ステップでの処理内容について説明する。
【００３４】
ステップＳ１０１においてＣＰＵ１０１は、測光センサ１０８によるフリッカ検知のための蓄積と読み出しを一定の周期で行う。ここでは、１．６６７ｍｓ（６００ｆｐｓ）の周期で１８回の蓄積と読み出しを行い、ＡＥ（１）〜ＡＥ（１８）を取得する。
【００３５】
続いて、ステップＳ１０２においてＣＰＵ１０１は、ＳＡＤ（１２），（１０）の２つの値のみを算出する。次いで、ステップＳ１０３においてＣＰＵ１０１は、ＳＡＤ（１２），（１０）の値に基づき、撮像対象からの光の種類を判定する。ここで、ＳＡＤ（１２）は、２０ｍｓ（＝１．６６７×１２）経過後の測光値との類似度を示す値となる。よって、周期が１０ｍｓの１００Ｈｚフリッカ環境では、丁度同位相のタイミングであるから、ＳＡＤ（１２）≒０となる。一方、周期が８．３３ｍｓの１２０Ｈｚフリッカ環境では、２０ｍｓ経過後のタイミングは、位相で表すと１４４度のずれに相当し、逆位相に近いタイミングとなるため、ＳＡＤ（１２）の値は相対的に大きな値となる。このように、ＳＡＤ（１２）の値は、１００Ｈｚフリッカ環境では小さく、１２０Ｈｚ環境では大きな値を取る。
【００３６】
同様に、ＳＡＤ（１０）は、１６．６７ｍｓ（＝１．６６７×１０）経過後の測光値との類似度を示す値となる。よって、周期が８．３３ｍｓの１２０Ｈｚフリッカ環境下では、丁度、同位相のタイミングであるから、ＳＡＤ（１０）≒０となる。一方、周期が１０ｍｓの１００Ｈｚフリッカ環境下では、１６．６７ｍｓ経過後のタイミングは、位相で表すと１２０度のずれに相当し、ＳＡＤ（１０）の値は相対的に大きな値となる。このように、ＳＡＤ（１０）の値は、１００Ｈｚフリッカ環境下では大きな値を取り、１２０Ｈｚ環境下では小さな値を取る。
【００３７】
図６は、ＳＡＤ（１０），（１２）の値に基づき、ステップＳ１０３で周波数判定を実行するために用いられる領域マップ４２０であり、横軸にＳＡＤ（１２）の値が取られ、縦軸にＳＡＤ（１０）の値が取られている。１００Ｈｚフリッカ環境下では、図６の領域マップの左上領域にプロットが得られ、１２０Ｈｚフリッカ環境下では領域マップ４２０の右下領域にプロットが得られる。よって、図６に示すように１００Ｈｚフリッカ環境（図中の「１００Ｈｚ」）、１２０Ｈｚフリッカ環境（図中の「１２０Ｈｚ」）及びＤＣの各領域を設定しておき、算出したＳＡＤ（１０），（１２）の値を領域マップ４２０と照合する。これにより、撮像対象からの光の種類（光量変化周期）を高精度に判定することができる。
【００３８】
＜フリッカ検知方法の第２実施形態＞
図７は、デジタルカメラ１００で実行される第２実施形態に係るフリッカ検知方法のフローチャートである。図７に示す各処理は、ＣＰＵ１０１がメモリ１０２のＲＯＭに格納されたプログラムをＲＡＭに展開することにより、デジタルカメラ１００の各構成要素の動作を制御することにより実現される。
【００３９】
ステップＳ２０１においてＣＰＵ１０１は、測光センサ１０８によるフリッカ検知のための蓄積と読み出しを行う。ここでは、約１．６６７ｍｓ（６００ｆｐｓ）の周期で２４回の蓄積と読み出しを連続して行い、ＡＥ（１）〜ＡＥ（２４）を取得する。続くステップＳ２０２においてＣＰＵ１０１は、デジタルカメラ１００の電源投入後、初めてのフリッカ検知動作であるかを判定する。ＣＰＵ１０１は、初回のフリッカ検知である場合（Ｓ２０２でＹＥＳ）、処理をステップＳ２０３へ進め、初回のフリッカ検知ではない場合（Ｓ２０２でＮＯ）、処理をステップＳ２０６へ進める。
【００４０】
ステップＳ２０３においてＣＰＵ１０１は、複数の評価値（ＳＡＤ（ｍ））を算出する。具体的には、ＳＡＤ（５），ＳＡＤ（１０），ＳＡＤ（１５），ＳＡＤ（６），ＳＡＤ（１２），ＳＡＤ（１８），ＳＡＤ（３）の７つ値を算出する。その理由について、図８を参照して説明する。図８は、実際に観測される、撮像対象からの光の光量変化を示す波形例であり、１２０Ｈｚフリッカ環境で観測されたものである。
【００４１】
この場合、周波数１２０Ｈｚの周期ＳＡＤ（５），ＳＡＤ（１０），ＳＡＤ（１５）の値はいずれも、ゼロ（０）に近い小さな値を取ることが期待される。しかし、光量変化の振幅に着目すると、振幅の大きな山と小さな山が交互に現れていることが分かる。この場合、２周期（１６．６７ｍｓ）経過後の波形との類似度を求めるＳＡＤ（１０）が、ＳＡＤ（５）やＳＡＤ（１５）よりも相対的によりゼロ（０）に近い値となる。よって、１２０Ｈｚフリッカ環境であるか否かを判定するパラメータとしては、ＳＡＤ（１０）が最も適切であると考えられる。
【００４２】
これに対して、仮に光量が３つの山毎に同じ振幅の山が現れるように変化する波形であった場合、ＳＡＤ（５），ＳＡＤ（１０），ＳＡＤ（１５）の中でＳＡＤ（１５）が最もゼロ（０）に近い値となる。したがって、この場合には、１２０Ｈｚフリッカ環境であるか否かを判定するパラメータとしてはＳＡＤ（１５）が最も適切なものとなる。このように、３種の評価値（ＳＡＤ（５），ＳＡＤ（１０），ＳＡＤ（１５））を算出して、最適な評価値（最小値となる評価値）を選択することにより、図８に示す特徴を有する光量変化に対するフリッカ環境の判定をより高精度に行うことができる。
【００４３】
同様に、１００Ｈｚフリッカ環境であるか否かを判定するために、ＳＡＤ（６），ＳＡＤ（１２），ＳＡＤ（１８）を算出する。図８のような、振幅の大きな山と小さな山が交互に現れるような１００Ｈｚの波形であれば、ＳＡＤ（６），ＳＡＤ（１２），ＳＡＤ（１８）のうち、ＳＡＤ（１２）が最もゼロ（０）に近い値となる。
【００４４】
更に、第１実施形態と同様に、１００Ｈｚフリッカ環境と１２０Ｈｚフリッカ環境のいずれでも逆位相に近い関係で測光値変化の類似度を示すＳＡＤ（３）を算出する。なお、ここでは、ステップＳ２０１においてＡＥ（２４）までの値しか取得していないため、ＳＡＤ（１８）までしか算出することができない。これに対して、ステップＳ２０１でのフリッカ検知のための蓄積・読み出し回数を増やして、ＳＡＤ（２４）やＳＡＤ（３０）等を算出して、最も小さい値を取るものを１２０Ｈｚフリッカ環境であるか否かを判定するパラメータとして採用するようにしてもよい。
【００４５】
ステップＳ２０３の後のステップＳ２０４においてＣＰＵ１０１は、ステップＳ２０３で算出した評価値の中から、フリッカ検知に最も適切な評価値（最小値となる評価値と、これと逆位相の関係となる評価値）を決定する。本実施形態では、上述したように、ＳＡＤ（１０），ＳＡＤ（１２），ＳＡＤ（３）が選択される。
【００４６】
続いてステップＳ２０５においてＣＰＵ１０１は、周波数判定を行う。図９は、ステップＳ２０５において周波数判定を実行するために用いられる領域マップである。図９（ａ）の領域マップ４３０は、１００Ｈｚフリッカ環境か否かの判定に用いられ、図９（ｂ）の領域マップ４４０は、１２０Ｈｚフリッカ環境か否かの判定に用いられる。
【００４７】
領域マップ４３０では、横軸にＳＡＤ（３）が、縦軸にＳＡＤ（６），ＳＡＤ（１２），ＳＡＤ（１８）の中の最小値が取られており、ここでは、ＳＡＤ（１２）が領域マップ４３０中のどの領域にプロットされるかで１００Ｈｚフリッカ環境か否かが判定される。領域マップ４４０では、横軸にＳＡＤ（３）が、縦軸にＳＡＤ（５），ＳＡＤ（１０），ＳＡＤ（１５）の中の最小値が取られており、ここでは、ＳＡＤ（１０）が領域マップ４４０中のどの領域にプロットされるかで１２０Ｈｚフリッカ環境か否かが判定される。領域マップ４３０，４４０による判定結果は、第１実施形態と同様に図５のテーブルに統合されて、撮像対象からの光の種類（光量変化周期）が最終的に判定される。ステップＳ２０５により本処理は終了となる。
【００４８】
ＣＰＵ１０１は、デジタルカメラ１００の電源投入後の２回目以降のフリッカ検知動作である場合に、処理をステップＳ２０２からステップＳ２０６へ進める。ステップＳ２０６においてＣＰＵ１０１は、ステップＳ２０４で決定した評価値の時間間隔で評価値を算出する。したがって、上記説明に従って、ＳＡＤ（１０），ＳＡＤ（１２）と、これらと逆位相の関係となるＳＡＤ（３）が算出される。このような処理を行う理由は、以下の通りである。
【００４９】
即ち、図８の光量変化を示す１２０Ｈｚフリッカ環境下において最初のフリッカ検知が行われたとき、ステップＳ２０４では、ＳＡＤ（５），ＳＡＤ（１０），ＳＡＤ（１５）のうち最も値がゼロ（０）に近いＳＡＤ（１０）が最適な評価値として決定されている。ここで、２回目以降のフリッカ検知時における光量変化の波形は、初回のフリッカ検知時から変わっていないことが期待されるので、２回目以降のフリッカ検知ではＳＡＤ（１０）のみを算出する。そして、ＳＡＤ（１０）は、１２０Ｈｚフリッカ環境下での２周期先の測光値との類似度を示すものであるから、１００Ｈｚフリッカ環境下であるか否かを検知するための評価値としても、同様に、２周期先との類似度を算出するＳＡＤ（１２）を用いる。よって、ステップＳ２０６では、ＳＡＤ（１０）及びＳＡＤ（１２）と、これらと逆位相の関係にあるＳＡＤ（３）のみを算出することとし、これにより算出処理時間を短縮することができる。ステップＳ２０６の終了後には、処理はステップＳ２０５へ進められて、周波数判定が行われる。
【００５０】
＜その他の実施形態＞
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【００５１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し、実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５２】
１００    デジタルカメラ
１００Ａ    カメラ本体
１００Ｂ    レンズ鏡筒
１０１    ＣＰＵ
１０２，１１３    メモリ
１０３    撮像素子
１０８    測光センサ
１１２    ＩＣＰＵ
１２２    ＬＰＵ
【図１】
0006525757.tif 000003
【図２】
0006525757.tif 000004
【図３】
0006525757.tif 000005
【図４】
0006525757.tif 000006
【図５】
0006525757.tif 000007
【図６】
0006525757.tif 000008
【図７】
0006525757.tif 000009
【図８】
0006525757.tif 000010
【図９】
0006525757.tif 000011