(57)【特許請求の範囲】
【請求項１】
撮像素子と、被写体からの光の光量変化特性を算出する算出手段と、前記撮像素子を露光するタイミングを制御する制御手段と、を有し、
前記制御手段は、連続撮影が実行される場合、当該連続撮影における各撮影時に、前記算出手段が算出した前記光量変化特性に基づいて、前記被写体からの光が略同一の光量である第１の光量となるタイミングにおいて前記撮像素子を露光するように制御し、
前記被写体からの光が前記第１の光量となる間隔は、前記算出手段が算出した前記光量変化特性における光量変化の１周期よりも短く、
前記被写体からの光が前記第１の光量となるタイミングは、前記算出手段が算出した前記光量変化特性において光量が最大および最小となるタイミングとは異なるタイミングであることを特徴とする撮像装置。
【請求項２】
前記被写体からの光が前記第１の光量となる間隔は、前記算出手段が算出した前記光量変化特性における光量変化の１／２周期であることを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記撮像素子は、グローバルシャッター方式で駆動可能であることを特徴とする請求項２に記載の撮像装置。
【請求項４】
前記制御手段は、前記算出手段が算出した前記光量変化特性における光量変化の１／２周期ごとに光量が略同一となる場合に、前記撮像素子の露光期間の略中央に前記被写体からの光が前記第１の光量となるタイミングが重なるように、前記撮像素子の露光タイミングを制御することを特徴とする請求項２又は３に記載の撮像装置。
【請求項５】
前記制御手段は、前記算出手段が算出した前記光量変化特性における光量変化の１／２周期ごとに光量が略同一とならない場合に、前記算出手段により算出された前記光量変化特性における被写体からの光が第２の光量となるタイミングに合わせて露光を行うように制御し、
前記被写体からの光が前記第２の光量となる間隔は、前記算出手段が算出した前記光量変化特性における光量変化の１周期と等しく、
前記被写体からの光が前記第２の光量となるタイミングは、前記光量変化特性における光量が最大または最小となるタイミングであることを特徴とする請求項２ないし４のいずれか１項に記載の撮像装置。
【請求項６】
前記制御手段は、前記撮像素子の露光時間が所定の閾値未満の長さである場合に、前記算出手段により算出された前記光量変化特性における光量変化周期に合わせて露光を行い、前記撮像素子の露光時間が前記所定の閾値以上の長さである場合に、前記算出手段により算出された前記光量変化特性における光量変化周期によらず露光を行うように制御することを特徴とする請求項１ないし５のいずれか１項に記載の撮像装置。
【請求項７】
前記制御手段は、前記撮像素子の撮像領域の露光タイミングを小領域ごとに異ならせる第１の露光モードと、前記撮像素子のすべての撮像領域の露光タイミングを同一のタイミングに合わせる第２の露光モードとを切替え可能であって、被写体の連続撮影において前記第２の露光モードを用いる場合に、前記被写体からの光が前記第１の光量となるタイミングに合わせて露光を行うように制御することを特徴とする請求項１ないし６のいずれか１項に記載の撮像装置。
【請求項８】
撮像素子を有する撮像装置の制御方法であって、被写体からの光の光量変化特性を算出する算出ステップと、前記撮像素子を露光するタイミングを制御する制御ステップと、を有し、
前記制御ステップは、連続撮影が実行される場合、当該連続撮影における各撮影時に、前記光量変化特性に基づいて、前記被写体からの光が略同一の光量である第１の光量となるタイミングにおいて前記撮像素子を露光するように制御し、
前記被写体からの光が前記第１の光量となる間隔は、前記光量変化特性における光量変化の１周期よりも短く、
前記被写体からの光が前記第１の光量となるタイミングは、前記光量変化特性において光量が最大および最小となるタイミングとは異なるタイミングであることを特徴とする撮像装置の制御方法。
【請求項９】
請求項８に記載の制御方法をコンピュータに実行させるためのプログラム。
【請求項１０】
コンピュータに、請求項８に記載された制御方法を実行させるためのプログラムを記憶したコンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置に関し、特にフリッカーが生じる光源下で露光をする際の制御方法に関するものである。
【背景技術】
【０００２】
近年、デジタルカメラや携帯電話、タブレット端末などの撮像装置の高感度化が進んでいる。そのため、室内のような比較的暗い環境下においても、シャッタースピードを高速にした（露光時間を短くした）撮影により、ブレを抑えた明るい画像を取得することが可能になってきている。
【０００３】
また、室内光源として普及している蛍光灯やＬＥＤは商用電源周波数の影響により、周期的に照明光がゆらぐ現象であるフリッカーが生じる。このようなフリッカーが生じる光源（以下、フリッカー光源とする）下でシャッタースピードを高速にした撮影を行うと、１つの画像内で露出ムラや色ムラが発生したり、連続して撮影した複数の画像間で露出や色温度のばらつきが発生したりする場合がある。
【０００４】
このような問題に対して、特許文献１では、照明光のフリッカーの状態を検出し、露光時間の中心が照明光の光量が極大値を示すタイミングと略一致するように撮像タイミングを調節する技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２２２９３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載された技術のように、照明光の光量が極大値を示すタイミングと略一致するように撮像タイミングを調節する場合、撮影指示のタイミング次第でレリーズタイムラグが生じてしまう。そのため、連写撮影時の駒速が低下してしまう。
【０００７】
そこで、本発明は、連写撮影時の駒速の低下を抑えながらフリッカーが生じる光源下で撮影しても良好な画像を取得することができるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明に係る撮像装置は、撮像素子と、被写体からの光の光量変化特性を算出する算出手段と、前記撮像素子を露光するタイミングを制御する制御手段と、を有し、前記制御手段は、連続撮影が実行される場合、当該連続撮影における各撮影時に、前記算出手段が算出した前記光量変化特性に基づいて、前記被写体からの光が略同一の光量である第１の光量となるタイミングにおいて前記撮像素子を露光するように制御し、前記被写体からの光が前記第１の光量となる間隔は、前記算出手段が算出した前記光量変化特性における光量変化の１周期よりも短く、前記被写体からの光が前記第１の光量となるタイミングは、前記算出手段が算出した前記光量変化特性において光量が最大および最小となるタイミングとは異なるタイミングであることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、連写撮影時の駒速の低下を抑えながらフリッカーが生じる光源下で撮影しても良好な画像を取得することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る撮像装置の概略構成図である。
【図２】本発明の実施形態に係る撮像装置のフリッカーの影響を低減させた撮影を行う際の露光タイミング決定処理を示すフローチャート図である。
【図３】フリッカー光源下の蓄積制御と測光値の関係を示す図である。
【図４】フリッカー光源の光量変化のピークタイミングの算出方法を示す図である。
【図５】正弦波で光量が変動するフリッカー光源下で得られる測光値を示す図である。
【図６】同期信号Ｖ１と同期信号Ｖ２の生成タイミングを示す図である。
【図７】三角波で光量が変動するフリッカー光源下で測光値で得られる測光値を示す図である。
【発明を実施するための形態】
【００１１】
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。
【００１２】
（第１の実施形態）
図１は、本実施形態に係る撮像装置の概略構成図である。本実施形態に係る撮像装置は、カメラ本体１００と、カメラ本体１００に着脱可能なレンズユニット２００を含む。
【００１３】
まず、カメラ本体１００の構成について説明する。マイクロコンピュータＣＰＵ（以下、カメラマイコン）１０１は、カメラ本体１００の各部を制御する。メモリ１０２は、カメラマイコン１０１に接続されているＲＡＭやＲＯＭ等のメモリである。
【００１４】
撮像素子１０３は、赤外カットフィルタやローパスフィルタ等を含むＣＣＤ、ＣＭＯＳ等の撮像素子であり、レンズユニット２００を介して入射した光束を光電変換して画像信号を出力する。
【００１５】
シャッター１０４は、レンズユニット２００を介して入射した光束から撮像素子１０３を遮光する遮光状態、及び、レンズユニット２００を介して入射した光束を撮像素子１０３に導く退避状態となるように走行する。すなわち、シャッター１０４は、撮像素子１０３を遮光する第１の状態と撮像素子１０３を遮光しない第２の状態とに変更可能であって、撮像素子１０３の露光時間を調節する機能を果たす。なお、撮像素子１０３の露光時間は、カメラマイコン１０１によって撮像素子１０３の電荷蓄積期間を制御する、いわゆる電子シャッター機能によって調節する構成でもよい。
【００１６】
ハーフミラー１０５は、レンズユニット２００を介して入射した光束を撮像素子１０３へ導く位置（ミラーアップ状態）と測光センサ１０８へ導く位置（ミラーダウン状態）とに移動可能である。すなわち、ハーフミラー１０５は、撮像素子１０３へ導く状態と測光センサ１０８へ導く状態とに、レンズユニット２００を介して入射した光束の光路変更を行う。また、測光センサ１０８へ導く位置にある場合には、レンズユニット２００を介して入射した光束をピント板１０６に結像させる。
【００１７】
表示素子１０７は、ＰＮ液晶等を用いた表示素子であり、自動焦点調節制御（ＡＦ制御）に用いられる焦点検出領域を示す枠（ＡＦ枠）などを表示する。測光センサ（ＡＥセンサ）１０８は、ＣＣＤ、ＣＭＯＳ等の入射光量に応じた電荷を蓄積する電荷蓄積型撮像素子を使用することにより、出力される画像信号に基づいて測光だけでなく被写体の顔検出や被写体追尾、フリッカーの検出などを行うことができる。なお、測光センサ１０８から出力される画像信号ではなく、撮像素子１０３から出力される画像信号に基づいてフリッカーの検出を行ってもよい。
【００１８】
ペンタプリズム１０９は、ハーフミラー１０５で反射されたレンズユニット２００を介して入射した光束を測光センサ１０８及び不図示の光学ファインダに導く。焦点検出回路１１０は、ＡＦ制御のために焦点検出を行うものであって、ＡＦミラー１１１により、レンズユニット２００を介して入射しハーフミラー１０５を通過した光束の一部が導かれる。
【００１９】
ＣＰＵ１１２は、測光センサ１０８の駆動制御や画像処理・演算用のＣＰＵ（以下ＩＣＰＵとする）であって、測光センサ１０８からの出力信号（画像信号）に基づいて測光、被写体の顔検出、被写体追尾などに関わる各種演算を行う。また、ＩＣＰＵ１１２は、測光センサ１０８からの出力信号（画像信号）に基づいて、被写体からの光の光量変化周期や光量が所定の条件を満たすタイミング（例えば、光量が最大となるタイミングや光量が最少となるタイミング）などの光量変化特性を算出する。メモリ１１３は、ＩＣＰＵ１１２に接続されているＲＡＭやＲＯＭ等のメモリである。なお、本実施形態では、カメラマイコン１０１とは別にＩＣＰＵ１１２を有する構成を説明するが、ＩＣＰＵ１１２で実行する処理をカメラマイコン１０１で実行する構成でも構わない。
【００２０】
操作部１１４は、ユーザがカメラ本体１００に撮影準備動作の開始指示や撮影動作の開始指示を行うためのレリーズボタンや、ユーザがカメラ本体１００の各種設定を行うための設定ボタンなどを含む。また、操作部１１４は、ユーザがカメラ本体１００の電源のオンオフを切り替えるための電源スイッチや、ユーザがカメラ本体１００の撮影モードを複数のモードの中から選択するためのモードダイヤル、タッチパネルなどを含む。
【００２１】
次に、レンズユニット２００の構成について説明する。レンズＣＰＵ２０１（以下、ＬＰＵとする）は、レンズユニット２００の各部、例えば、フォーカスレンズ、ズームレンズ、絞りの駆動部などを制御するものであって、レンズに関する情報をカメラマイコン１０１に送信する。
【００２２】
次に、図２を用いてフリッカーの影響を低減させた撮影を行う際の露光タイミング決定処理について説明する。図２は、本実施形態に係る撮像装置のフリッカーの影響を低減させた撮影を行う際の露光タイミング決定処理を示すフローチャート図である。なお、以下では、ＣＭＯＳを撮像素子１０３に用いて、ＣＭＯＳの撮像領域露光タイミングを小領域ごとに異ならせる、いわゆるローリングシャッター方式を用いるものとする。
【００２３】
カメラ本体１００の電源をＯＮした時やレリーズボタンの半押し状態であるＳＷ１がＯＮされることで測光許可状態になると、ステップＳ２０１で測光センサ１０８を駆動させて測光を行う。この測光は、フリッカー光源下においても、フリッカー光源の光量変化に影響して測光値がばらつかないように、測光センサ１０８の蓄積時間をフリッカーの周期のほぼ整数倍に設定するとよい。ここで、フリッカー光源の光量が変化する周波数（以下、フリッカー周波数とする）は、商用電源周波数の２倍になることから、商用電源周波数が５０Ｈｚの地域ではフリッカー周波数は１００Ｈｚとなる。そして、その光量変化周期はフリッカー周波数の逆数で１０ｍｓとなる。同様に商用電源周波数が６０Ｈｚの地域ではフリッカー周波数は１２０Ｈｚ、光量変化周期はフリッカー周波数の逆数で８，３３ｍｓとなる。この２種類のフリッカー周波数に対応するために、測光センサ１０８の蓄積時間を、１０ｍｓと８，３３ｍｓの平均値と略等しい時間、例えば９ｍｓに設定する。そうすると、商用電源周波数が５０Ｈｚ、６０Ｈｚのどちらであっても測光センサ１０８の蓄積時間はフリッカー光源の光量変化の１周期と略等しくなり、フリッカー光源下でも安定した測光値を得ることができる。なお、フリッカー光源下でも安定した測光値を得るためには、フリッカー光源の光量変化の１周期の整数倍（商用電源周波数の２倍の逆数の整数倍）と略等しい蓄積時間（所定の測光期間）で測光を行えばよい。
【００２４】
ここで得られた測光値に基づいて、カメラマイコン１０１は、露出条件である絞り値ＡＶ、シャッタースピード（露光時間）ＴＶ、ＩＳＯ感度（撮影感度）ＳＶを設定する。ＡＶ、ＴＶ、ＩＳＯの設定に際しては、メモリ１０２に予め記憶された不図示のプログラム線図を利用して設定する。なお、ユーザによる操作部１１４への操作に応じて少なくとも１つの露出条件を設定してもよい。
【００２５】
次にステップＳ２０２で、ＩＣＰＵ１１２は、フリッカー検出動作及びフリッカー検出演算を行う。このフリッカー検出演算は、測光センサ１０８からの出力信号（画像信号）に基づいて、被写体からの光の光量変化周期や光量が所定の条件を満たすタイミングなどの光量変化特性を算出する処理である。
【００２６】
ステップＳ２０２では、被写体からの光の光量変化特性が現れるように、例えば、測光センサ１０８で蓄積時間が１，６６ｍｓの蓄積を連続して１２回行う。仮に商用電源５０Ｈｚ時のフリッカー光源下の蓄積制御と測光値の関係を図３（ａ）に示す。以下では、ｎ回目の蓄積を蓄積ｎ、蓄積ｎの結果の読み出しを読み出しｎ、読み出しｎの結果から得られる測光値をＡＥ（ｎ）と記述することとする。また、各測光値の取得時刻（取得タイミング）に関しては、蓄積は有限の時間を持って行われるため、蓄積期間中の中央値で代表させることとし、ＡＥ（ｎ）を取得した時間ｔ（ｎ）とする。なお、図３（ａ）では、ｎ＝１とｎ＝２のプロットのみ記載したが、ｎ＝３〜１２のプロットに関しても同様である。
【００２７】
図３（ａ）では、光源の光量変化周期は１０ｍｓであり、１０÷１，６６≒６であるから、図３（ａ）に示すように、蓄積のタイミングによらず、６回周期でほぼ同じ測光値が得られる。すなわち、ＡＥ（ｎ）＝ＡＥ（ｎ＋６）とみなせる。
【００２８】
同様に、商用電源６０Ｈｚ時のフリッカー光源下では、光源の光量変化周期は８，３３ｍｓであり、８，３３÷１，６６≒５であるため、図３（ｂ）に示すように、５回周期でほぼ同じ測光値が得られ、ＡＥ（ｎ）＝ＡＥ（ｎ＋５）とみなせる。一方で、フリッカー光源がない環境下では、ｎによらずＡＥ（ｎ）は一定である。なお、これらの判断は、フリッカー光源以外の環境光の光量変化がないことを想定している。以上より、フリッカー検出用の蓄積を行い得られた複数の測光値に基づいて、下の式（１）、（２）を用いて評価値を算出する。
【００２９】
【数１】
0006391352.tif 000002
【００３０】
【数２】
0006391352.tif 000003
【００３１】
式（１）を用いて算出される評価値をＦ５０、式（２）を用いて算出される評価値をＦ６０として、評価値Ｆ５０及び評価値Ｆ６０を所定の閾値Ｆ＿ｔｈと比較することで、フリッカー検出を行う。
【００３２】
具体的には、Ｆ５０＜Ｆ＿ｔｈかつ、Ｆ６０＜Ｆ＿ｔｈの場合、フリッカー検出用の蓄積を行い得られた複数の測光値のすべてが略等しいといえるため、フリッカーが生じていないと判断する。Ｆ５０＜Ｆ＿ｔｈかつ、Ｆ６０≧Ｆ＿ｔｈの場合、フリッカー検出用の蓄積を行い得られた複数の測光値が、６回周期で略等しい値となっていて、５回周期では略等しい値となっていないといえる。そのため、光量変化周期が１０ｍｓのフリッカーが生じている（商用電源周波数が５０Ｈｚのフリッカー光源下）と判断する。Ｆ５０≧Ｆ＿ｔｈかつ、Ｆ６０＜Ｆ＿ｔｈの場合、フリッカー検出用の蓄積を行い得られた複数の測光値が、５回周期で略等しい値となっていて、６回周期では略等しい値となっていないといえる。そのため、光量変化周期が８，３３ｍｓのフリッカーが生じている（商用電源周波数が６０Ｈｚのフリッカー光源下）と判断する。
【００３３】
なお、フリッカー検出用の蓄積を行っている間にパンニングなどの撮像装置の移動や被写体の移動が生じた場合などに、測光値が大きく変化してＦ５０≧Ｆ＿ｔｈかつ、Ｆ６０≧Ｆ＿ｔｈとなる場合も考えられる。その場合はＦ５０とＦ６０とを比較してフリッカー検出を行う。具体的には、Ｆ５０≧Ｆ＿ｔｈかつ、Ｆ６０≧Ｆ＿ｔｈかつ、Ｆ５０≦Ｆ６０の場合、光量変化周期が１０ｍｓのフリッカーが生じている（商用電源周波数が５０Ｈｚのフリッカー光源下）と判断する。反対に、Ｆ５０≧Ｆ＿ｔｈかつ、Ｆ６０≧Ｆ＿ｔｈかつ、Ｆ５０＞Ｆ６０の場合、光量変化周期が８，３３ｍｓのフリッカーが生じている（商用電源周波数が６０Ｈｚのフリッカー光源下）と判断する。なお、Ｆ５０≧Ｆ＿ｔｈかつ、Ｆ６０≧Ｆ＿ｔｈかつ、Ｆ５０＝Ｆ６０の場合は、フリッカー光源の光量変化周期を判断できないため、フリッカーが生じていないあるいはフリッカーの検出不可と判断してもよい。
【００３４】
その他、Ｆ５０≧Ｆ＿ｔｈかつ、Ｆ６０≧Ｆ＿ｔｈの場合にフリッカー光源の光量変化周期を判断したが、Ｆ５０≧Ｆ＿ｔｈかつ、Ｆ６０≧Ｆ＿ｔｈの場合はフリッカー検出の精度が低いため、フリッカー検出用の蓄積をやり直してもよい。
【００３５】
さらに、ステップＳ２０２でＩＣＰＵ１１２は、フリッカーが存在する場合はフリッカー光源の光量変化のピークのタイミング（ピークタイミング）に合わせて同期信号Ｖ１を生成する。フリッカー光源の光量変化のピークのタイミングは、例えば、前述したように１２回の蓄積を行い得られた複数の測光値を補間して算出する。
【００３６】
図４（ａ）はピークタイミングを算出する方法の一例を説明する図である。ＡＥ（２）〜ＡＥ（１１）の中で最大値を得た点をＰ２（ｔ（ｍ），ＡＥ（ｍ））とし、その１つ前の測光結果の点をＰ１（ｔ（ｍ−１），ＡＥ（ｍ−１））、１つ後の測光結果の点をＰ３（ｔ（ｍ＋１），ＡＥ（ｍ＋１））とする。そして、ＡＥ（ｍ−１）とＡＥ（ｍ＋１）の小さい方を取る点（図４の例ではＰ３）と点Ｐ２の２点を通る直線をＬ１＝ａｔ＋ｂとして求め、ＡＥ（ｍ−１）とＡＥ（ｍ＋１）の大きい方を取る点（図４の例ではＰ１）を通り、傾き−ａの直線をＬ２とする。Ｌ１とＬ２の交点を求めると、ＡＥ（１）の取得タイミングをｔ＝１，６６７ｍｓとしたときのピークタイミングｔ＿ｐｅａｋと、ピーク時の光量に対応するピーク測光値ＡＥ＿ｐｅａｋを算出することができる。
【００３７】
また、フリッカー光源の光量変化周期Ｔも判明しているため、ｔ＝ｔ＿ｐｅａｋ＋ｎ×Ｔ（ｎは自然数）のタイミング毎に図４（ｂ）に示す同期信号Ｖ１を生成する。
【００３８】
ここで、同期信号Ｖ１のタイミングに合わせて露光を行うことによりフリッカーの影響を抑制することができる。しかしながら、この場合、最大で同期信号Ｖ１の１周期分、すなわち時間Ｔのレリーズタイムラグが発生することになる。例えば、Ｔ＝１０ｍｓのフリッカー光源下にて同期信号Ｖ１のタイミングに合わせて露光を行う場合、レリーズタイムラグが最大１０ｍｓ発生してしまう。したがって、駒速が１０駒／秒のカメラとすると、駒間隔が最大で１０ｍｓ伸びてしまうため、駒速が１０駒／秒よりも遅くなる場合がある。
【００３９】
一方、フリッカー光源によっては、ピークタイミングやボトムタイミング以外に、光量変化周期Ｔの１／２周期で測光値が略同一となる場合がある。この場合、Ｔ／２周期にて測光値が略同一となるタイミングに合わせて露光できれば、フリッカーの影響を抑制するためのレリーズタイムラグの最大値をＴからＴ／２に軽減することが可能となる。
【００４０】
Ｔ／２周期にて測光値が略同一となるフリッカー光源としては、正弦波にて変動する光源が代表的である。そこで、本実施形態ではフリッカー光源の光量変化が正弦波であるか否かを判別し、正弦波である場合には、Ｔ／２周期にて測光値が略同一となるタイミングに合わせて露光を行う。
【００４１】
フリッカー光源の光量変化が正弦波である場合の測光値を図５に示す。ここで、フリッカー光源の光量変化が正弦波であるというのは、測光値Ｙ（ｔ）が以下の式（３）で表される場合である。光量変化周期Ｔ、ピークタイミングｔ＿ｐｅａｋ、ピーク測光値ＡＥ＿ｐｅａｋとすると、測光値Ｙ（ｔ）は
Ｙ（ｔ）＝｜ＡＥ＿ｐｅａｋ×ｃｏｓ｛２π÷２Ｔ×（ｔ−ｔ＿ｐｅａｋ）｝｜・・・（３）
となる。フリッカー光源の光量変化が正弦波である場合には、図５および式（３）から分かるように、測光値がＴ／２周期にて略同一となるタイミングがある。本発明では、このＴ／２周期にて測光値が略同一となるポイントに合わせて露光することにより、レリーズタイムラグを軽減することが可能となる。
【００４２】
例えば、光量変化周期Ｔ＝１０ｍｓのフリッカー光源下の場合は、レリーズタイムラグの最大値を１０ｍｓから５ｍｓまで短くすることができる。
【００４３】
次に、フリッカー光源の光量変化が正弦波であるか否かを判定する方法について説明する。
【００４４】
実際の測光値ＡＥ（ｎ）と、光量変化が正弦波であると仮定した場合の測光値Ｙ（ｔ（ｎ））を比較することにより、光量変化が正弦波であるか否かの判定を行うことが可能である。
【００４５】
例えば、ｎ＝１〜６に関して、Ｙ（ｔ（ｎ））−ＡＥ（ｎ）の二乗和を評価値Ｋと定義すると、評価値Ｋは以下の式（４）を用いて求められる。
【００４６】
【数３】
0006391352.tif 000004
【００４７】
ここで、所定の閾値Ｋ＿ｔｈを用いて、Ｋ＜Ｋ＿ｔｈの場合はＹ（ｔ（ｎ））とＡＥ（ｎ）の一致度が高くフリッカー光源の光量変化が正弦波であると判定することができる。一方、Ｋ≧Ｋ＿ｔｈの場合はＹ（ｔ（ｎ））とＡＥ（ｎ）の一致度が低くフリッカー光源の光量変化が正弦波でないと判定することができる。
【００４８】
なお、フリッカー光源の光量変化が正弦波であるか否かを判定する手段としては、上述の説明に限られたものではなく、公知の波形を同定する方法を用いることができる。
【００４９】
ステップＳ２０２でＩＣＰＵ１１２は、フリッカー光源の光量変化が正弦波である場合は、図６に示すように、フリッカー光源の光量がＴ／２周期で略同一となるタイミングに合わせて同期信号Ｖ２を生成する。
【００５０】
図６で示すように、同期信号Ｖ２は、同期信号Ｖ１が生成されるピークタイミングＴ＿ｐｅａｋに対してＴ／４ずれたタイミングを基準として、Ｔ／２周期で生成される信号である。すなわち、ｔ＝ｔ＿ｐｅａｋ＋Ｔ／４＋ｎ×Ｔ／２（ｎは自然数）のタイミング毎に生成される。
【００５１】
次に、ステップＳ２０３でＩＣＰＵ１１２は、ステップＳ２０２でのフリッカーの検出結果（フリッカー光源下か否か）を判定する。フリッカーが検出されなかった（フリッカー光源下ではないと判定された）場合は、通常の撮影シーケンスを行うステップＳ２１１に進み、フリッカーが検出された（フリッカー光源下と判定された）場合はステップＳ２０４へ進む。
【００５２】
ステップＳ２０４でＩＣＰＵ１１２は、露出条件のシャッタースピードＴＶが所定の条件を満たすか否かを判定する。シャッタースピードＴＶがフリッカー光源の光量変化周期に対して十分長い場合は、明暗の変動が平均化され、画像に対してフリッカーの影響がほとんど出ない。そのため、所定の比率αをメモリ１０２に予め記憶しておき、シャッタースピードＴＶと光量変化周期Ｔの比を評価する。ＴＶ／Ｔがαより大きい場合は、シャッタースピードＴＶが光量変化周期Ｔに対して十分長く、画像に対してフリッカーの影響が十分小さいとして通常の撮影シーケンスを行うステップＳ２１１へ進む。一方、ＴＶ／Ｔがα以下の場合は、フリッカーの対策を行う必要があるためステップＳ２０５へ進む。すなわち、光量変化周期に対する設定された露光時間の比率が所定の比率より大きい場合に、ステップＳ２１１へ進み、光量変化周期に対する設定された露光時間の比率が所定の比率以下である場合にステップＳ２０５へ進む。なお、シャッタースピードＴＶが画像に対してフリッカーの影響が十分小さくなるシャッタースピードか否かを判定する方法は他の方法でもよい。ステップＳ２０２において光量変化周期Ｔが求められるので、想定される光量変化周期Ｔに対応する所定の閾値をメモリ１０２に予め記憶しておき、シャッタースピードＴＶが検出された光量変化周期Ｔに対応する閾値以上となるか否かを判定してもよい。具体的には、設定された露光時間が所定の閾値未満の長さである場合にステップＳ２０５へ進み、設定された露光時間が所定の閾値以上の長さである場合にステップＳ２１１へ進むようにすればよい。
【００５３】
ステップＳ２０５でＩＣＰＵ１１２は、ステップＳ２０２のフリッカー検出結果に基づいて、Ｔ／２周期のタイミングで露光が可能であるか否かで判定する。本実施形態では、フリッカー光源の光量変化が正弦波であるか否かに基づいて、Ｔ／２周期で光量が略同一となるか否かで判定する。光量変化が正弦波でない場合、光量変化のピークタイミングに合わせて露光を行うため、ステップＳ２０９ヘ進む。一方、光量変化が正弦波である場合、光量がＴ／２周期で略同一となるタイミングに合わせて露光を行うため、ステップＳ２０６へ進む。
【００５４】
そして、ステップＳ２０６でカメラマイコン１０１は、レリーズボタンの全押し状態であるＳＷ２がＯＮされたと判断するとステップＳ２０７へ進む。ステップＳ２０７でカメラマイコン１０１は、ステップＳ２０２で生成した同期信号Ｖ２に合わせて撮像素子１０３により露光を行う。このとき、同期信号Ｖ２が生成されるタイミングと同時に撮像素子１０３の露光を開始させるよりも、同期信号Ｖ２が生成されるタイミングが露光期間の中央となるように露光タイミングを制御するほうが好ましい。同期信号Ｖ２が生成されるタイミングと同時に撮像素子１０３の露光を開始させると、露光開始以降の光量変化の方向によって露光期間中の光量に差が生じるからである。
【００５５】
ステップＳ２０７では、フリッカー光源の光量がＴ／２周期ごとに等しくなるタイミングに合わせて露光を行うことによって、レリーズタイムラグを軽減しつつ、フリッカーの影響の少ない撮影画像を得ることができる。
【００５６】
ステップＳ２０７で露光を行った後はステップＳ２０８へ進み、露光タイミング決定処理を終了する。連写撮影時には、ステップＳ２０８へ進んだあとにすぐに次の撮影のための露光タイミング決定処理が開始される。なお、連写撮影の２駒目以降の露光タイミング決定処理においては、ステップＳ２０１、２０２の処理を省略してもよい。
【００５７】
ステップＳ２０６でフリッカー光源の光量変化が正弦波でないと判定された場合、ステップＳ２０９でカメラマイコン１０１は、レリーズボタンの全押し状態であるＳＷ２がＯＮされたと判断するとステップＳ２１０へ進む。ステップＳ２１０でカメラマイコン１０１は、ステップＳ２０２で生成した同期信号Ｖ１に合わせて撮像素子１０３により露光を行う。このとき、同期信号Ｖ１が生成されるタイミングと同時に撮像素子１０３の露光を開始させるよりも、同期信号Ｖ１が生成されるタイミングが露光期間の中央となるように露光タイミングを制御するほうが、露光ムラを少なくすることができる。
【００５８】
ステップＳ２１０では、フリッカー光源の光量がピークとなるタイミングに合わせて露光を行うことによって、ステップＳ２０７で露光を行う場合よりもレリーズタイムラグは長くなる。しかしながら、ステップＳ２０７で露光を行う場合よりもフリッカーの影響を軽減した撮影画像を得ることができる。
【００５９】
ステップＳ２０５で画像に対してフリッカーの影響が十分小さくなるシャッタースピードであると判定された場合、ステップＳ２１１でカメラマイコン１０１は、レリーズボタンの全押し状態であるＳＷ２がＯＮされたと判断するとステップＳ２１２へ進む。ステップＳ２１２でカメラマイコン１０１は、フリッカー光源の光量変化を考慮せずに（同期信号Ｖ１，Ｖ２に合わせずに）露光を行う。ステップＳ２１２でフリッカー光源の光量変化を考慮せずに露光を行うので、フリッカー光源の光量変化に合わせて露光のタイミングを待たず、ステップＳ２０７、Ｓ２１０で露光を行う場合よりもレリーズタイムラグは軽減できる。
【００６０】
以上のように、本実施形態では、フリッカー光源が正弦波で変動しフリッカーの影響が発生するシャッタースピードの場合には、Ｔ／２周期にてフリッカー光源の光量が等しくなるタイミングに合わせて露光を行う構成とした。しかしながら、Ｔ／２周期にてフリッカー光源の光量が等しくなるタイミングに合わせて露光を行う場合には、フリッカー光源のピークタイミングに合わせて露光を行う場合よりも同一画像内の露光ムラは大きくなる。そこで、フリッカーの影響が発生するシャッタースピードに対して、同一画像内の露光ムラが十分小さくなるシャッタースピードか否かを判定し、同一画像内の露光ムラが十分小さくなる場合にステップＳ２１０のように露光を行うようにしてもよい。この場合、フリッカー光源下における、複数回撮像して得た複数の画像間の露光ムラを軽減することができる。
【００６１】
また、ローリングシャッター方式ではなく、撮像素子１０３のすべての撮像領域の露光タイミングを電子的に同一のタイミングに合わせる、いわゆるグローバルシャッター方式を用いる場合には同一画像内の露光ムラは発生しない。そのため、ＣＰＵ１０１によりローリングシャッター方式（第１の露光モード）とグローバルシャッター方式（第２の露光モード）とを切替え可能な構成において、グローバルシャッター方式を用いる場合にステップＳ２０７のように露光を行うようにしてもよい。
【００６２】
（第２の実施形態）
第１の実施形態においては、正弦波で変動する代表的なフリッカー光源に対して対応する例を説明した。近年、ＬＥＤ照明など光源は多様化してきているため、第２の実施形態においては正弦波で変動するフリッカー光源以外にも適用可能な実施例について説明する。なお、第２の実施形態は、主要な構成要素は、第１の実施形態で説明した図１の構成と同様である。また、露光タイミング決定処理に関しても、第１の実施形態で説明した図２のフローと同様であるため説明は省略する。
【００６３】
本実施形態における第１の実施形態との差異は、ステップＳ２０２で行われる処理にある。特に、フリッカー光源にてＴ／２周期にて測光値が略同一となるポイントがあるか否かを判定する動作が異なる。以下では、第１の実施形態との差異を詳細に説明する。
【００６４】
ステップＳ２０２ではフリッカー光源にてＴ／２周期にて測光値が略同一となるポイントがあるか否かを判定する。なお、ステップＳ２０２ではその他のフリッカー検出動作及びフリッカー検出演算を行うが、フリッカー光源の光量変化周期Ｔやピークタイミングの検出方法は第１の実施形態と同様なので説明は省略する。
【００６５】
本実施形態における判定動作について図７を用いて説明する。図７はＴ＝１０ｍｓで光量が変動する三角波の光源における測光値を示した図である。
【００６６】
まず、ＩＣＰＵ１１２は、光量変化周期ＴよりＴ／２を求める。Ｔ＝１０ｍｓなので、Ｔ／２＝５ｍｓと求まる。ここで、フリッカー検出のために実施した測光の蓄積時間は１，６６ｍｓであるため、Ｔ／２の長さは測光３回分の期間と一致する。
【００６７】
したがって、Ｔ／２周期にて測光値が略同一となるポイントがあるか否かは測光値ＡＥ（ｎ）〜ＡＥ（６）において、ＡＥ（ｎ）とＡＥ（ｎ＋３）が略同一となるｎの値があるか否かで判定を行う。
【００６８】
具体的には、ｎ＝１〜３について、｜ＡＥ（ｎ）−ＡＥ（ｎ＋３）｜が所定の閾値Ｔｈ以下となるｎがあるかを判定すればよい。ここで、閾値Ｔｈ以下となるｎの値が複数ある場合には、｜ＡＥ（ｎ）−ＡＥ（ｎ＋３）｜の値が最も小さくなるｎの値を採用すればよい。閾値Ｔｈ以下となるｎの値がない場合には、Ｔ／２周期にて測光値が略同一となるポイントはないと判定する。
【００６９】
図７で示した例においては、ｎ＝２が所定の閾値Ｔｈ以下となる値として採用される。次に、ＩＣＰＵ１１２は、Ｔ／２周期にて測光値が略同一となるタイミングに同期した同期信号Ｖ２を生成する。ｎ＝２で測光値が略同一となるので、同期信号Ｖ２は、ｔ＝ｔ２＋ｍ×Ｔ／２（ｍは自然数）のタイミング毎に変生成される。
【００７０】
以上の動作により、光源の波形が正弦波でない場合においてもＴ／２周期にて測光値が略同一となるポイントがあるか否かを判別することが可能となる。また、Ｔ／２周期にて測光値が略同一となるポイントがある場合には、同期信号Ｖ２のタイミング毎に露光することで、フリッカーの影響を軽減し、且つ、レリーズタイムラグを軽減することが可能となる。
【００７１】
なお、本実施形態でも第１の実施形態と同様の変形例を適用することが可能である。
【００７２】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【００７３】
例えば、上記の実施形態では、ＩＣＰＵ１１２が測光センサ１０８からの出力信号（画像信号）に基づいて測光や被写体からの光の光量変化特性算出を行っているが、測光用のセンサと光量変化特性算出用のセンサとを別々に備えていてもよい。
【００７４】
また、本発明は、以下の処理を実行することによっても実現される。即ち、本実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵなど）がプログラムを読み出して実行する処理である。
【符号の説明】
【００７５】
１００  カメラ本体
１０１  ＣＰＵ
１０３  撮像素子
１０８  ＡＥセンサ
１１２  ＩＣＰＵ
【図１】
0006391352.tif 000005
【図２】
0006391352.tif 000006
【図３】
0006391352.tif 000007
【図４】
0006391352.tif 000008
【図５】
0006391352.tif 000009
【図６】
0006391352.tif 000010
【図７】
0006391352.tif 000011