(57)【要約】【課題】ユーザが簡単にフリッカキャンセルを行うことができるようにした撮像装置およびフリッカ検出方法を提供する。【解決手段】撮像素子の撮像範囲の中の測光範囲６２を複数の測光エリア６１に分割し、撮像素子が出力する画素信号に基づいて分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出し、フリッカ縞が検出できたか否かを判別し、フリッカ縞が検出できないと判別された場合に、測光範囲６４中の分割領域の面積を縮小した測光エリア６３を測光してフリッカ縞が存在すると予想される分割領域の検出を行う。【選択図】  図５
2018107770.tif 000002
【特許請求の範囲】
【請求項１】
光学系を介して被写体像を撮像する撮像素子を有する撮像装置において、
上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出するフリッカ縞検出手段と、
上記フリッカ縞検出手段によりフリッカ縞が検出できたか否かを判別する判別手段と、
上記フリッカ縞検出手段は、上記判別手段によりフリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う、
ことを特徴とする撮像装置。
【請求項２】
上記フリッカ縞が存在すると予想される第１の分割領域と第２の分割領域の上記撮像素子上の間隔と、上記第１の分割領域と第２の分割領域に対応する蓄積時刻の差に基づいて上記フリッカ縞に対応するフリッカの周波数を算出するフリッカ周波数算出手段を、具備することを特徴とする請求項１に記載の撮像装置。
【請求項３】
上記判別手段は、フリッカ縞検出手段によりフリッカ縞を検出させ、フリッカ縞が存在する分割領域の上記撮像素子上での間隔に基づいてフリッカ縞が検出できたか否かを判別することを特徴とする請求項１に記載の撮像装置。
【請求項４】
上記判別手段は、上記フリッカ縞が存在する分割領域の上記撮像素子上での間隔の差と上記フリッカの周波数に基づいてフリッカ縞が検出できたか否かを判別することを特徴とする請求項３に記載の撮像装置。
【請求項５】
上記フリッカ縞検出手段は、上記撮像素子による第１のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、
上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第２のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する、
ことを特徴とする請求項１乃至４のいずれか一項に記載の撮像装置。
【請求項６】
上記フリッカ縞検出手段は、上記撮像素子による第１のフレームレート、及び第１の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、
上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第２の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する、
ことを特徴とする請求項１乃至４のいずれか一項に記載の撮像装置。
【請求項７】
上記撮像装置は、上記撮像素子の撮像出力に基づく表示を行う表示手段と、
上記フリッカ縞検出手段と上記表示手段の動作を制御する制御手段を有し、
上記制御手段は、上記撮像素子により時分割に撮像動作を行って上記フリッカ縞検出手段で使用される撮像信号と上記表示手段の表示に使用される撮像信号を取得することを特徴とする請求項１乃至６のいずれか一項に記載の撮像装置。
【請求項８】
光学系を介して被写体像を撮像する撮像素子を有する撮像装置におけるフリッカ検出方法において、
上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出し、
上記フリッカ縞が検出できたか否かを判別し、
上記フリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う、
ことを特徴とするフリッカ検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光源にフリッカが含まれる場合に、このフリッカの存在を判定可能な撮像装置およびフリッカ検出方法に関する。
【背景技術】
【０００２】
明滅を繰り返す照明光に照らされた被写体を撮像素子で撮影した場合、撮像素子によって得られる画像は、露光タイミングによって輝度差が生じることがある。この明滅を繰り返す照明光の光源はフリッカ光源と呼ばれ、被写体を照明する光源がフリッカ光源によるものであるか否かを検出方法について種々提案されている。
【０００３】
例えば、特許文献１には、フリッカによって発生する縞と縞の間隔、縞のフレーム間移動量を予め記憶しておき、多分割された測光エリアの測光情報を取得し、この測光情報に基づいて算出した縞と縞の間隔、縞のフレーム間移動量が周波数での条件と合致するかを判定する。この判定結果が合致すれば、その縞がフリッカであると決定している。
【０００４】
また、近年はインバータ電源を用いたＬＥＤ光源が普及しており、シンクロスキャン機能など、高周波フリッカの画像の写り込みを抑制するようにしたカメラが市販されている。このシンクロスキャン機能は、ユーザが背面液晶やＥＶＦ（Electronic View Finder：電子ビューファインダ）等において画像を観察しながら、シャッタ速を調整し、フリッカ縞の写り込みを抑制する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−８９９９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述のシンクロスキャン機能は、高周波フリッカから生じる微細な縞模様をユーザが見つけ、フリッカ周波数と同期するシャッタ速を探し出さなければならず、困難な作業である。
【０００７】
本発明は、このような事情を鑑みてなされたものであり、ユーザが簡単にフリッカキャンセルを行うことができるようにした撮像装置およびフリッカ検出方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため第１の発明に係る撮像装置は、光学系を介して被写体像を撮像する撮像素子を有する撮像装置において、上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出するフリッカ縞検出手段と、上記フリッカ縞検出手段によりフリッカ縞が検出できたか否かを判別する判別手段と、上記フリッカ縞検出手段は、上記判別手段によりフリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う。
【０００９】
第２の発明に係る撮像装置は、上記第１の発明において、上記フリッカ縞が存在すると予想される第１の分割領域と第２の分割領域の上記撮像素子上の間隔と、上記第１の分割領域と第２の分割領域に対応する蓄積時刻の差に基づいて上記フリッカ縞に対応するフリッカの周波数を算出するフリッカ周波数算出手段を、具備する。
第３の発明に係る撮像装置は、上記第１の発明において、上記判別手段は、フリッカ縞検出手段によりフリッカ縞を検出させ、フリッカ縞が存在する分割領域の上記撮像素子上での間隔に基づいてフリッカ縞が検出できたか否かを判別する。
第４の発明に係る撮像装置は、上記第３の発明において、上記判別手段は、上記フリッカ縞が存在する分割領域の上記撮像素子上での間隔の差と上記フリッカの周波数に基づいてフリッカ縞が検出できたか否かを判別する。
【００１０】
第５の発明に係る撮像装置は、上記第１ないし第４の発明において、上記フリッカ縞検出手段は、上記撮像素子による第１のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第２のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する。
【００１１】
第６の発明に係る撮像装置は、上記第１ないし第４の発明において、上記フリッカ縞検出手段は、上記撮像素子による第１のフレームレート、及び第１の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第２の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する。
【００１２】
第７の発明に係る撮像装置は、上記第１ないし第６発明において、上記撮像装置は、上記撮像素子の撮像出力に基づく表示を行う表示手段と、上記フリッカ縞検出手段と上記表示手段の動作を制御する制御手段を有し、上記制御手段は、上記撮像素子により時分割に撮像動作を行って上記フリッカ縞検出手段で使用される撮像信号と上記表示手段の表示に使用される撮像信号を取得する。
【００１３】
第８の発明に係るフリッカ検出方法は、光学系を介して被写体像を撮像する撮像素子を有する撮像装置におけるフリッカ検出方法において、上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出し、上記フリッカ縞が検出できたか否かを判別し、上記フリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う。
【発明の効果】
【００１４】
本発明によれば、ユーザが簡単にフリッカキャンセルを行うことができるようにした撮像装置およびフリッカ検出方法を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係るカメラの主として電気的構成を示すブロック図である。
【図２】本発明の一実施形態に係るカメラにおいて、フリッカ検出用に検出する測光範囲について説明する図である。
【図３Ａ】本発明の一実施形態に係るカメラのフリッカ検出のための動作を示すフローチャートである。
【図３Ｂ】本発明の一実施形態に係るカメラのフリッカ検出のための動作を示すフローチャートである。
【図４】本発明の一実施形態に係るカメラのフリッカの縞間隔と縞移動を検出するための動作を示すフローチャートである。
【図５】本発明の一実施形態におけるカメラにおいて、フリッカを検出の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明を一実施形態としてデジタルカメラに適用した例について説明する。このカメラは、撮像部を有し、この撮像部によって被写体像を画像データに変換し、この変換された画像データに基づいて、被写体像を本体の背面に配置した表示部にライブビュー表示する。撮影者はライブビュー表示を観察することにより、構図や撮影タイミングを決定する。レリーズ釦を操作することにより静止画の撮影が可能である。記録媒体に記録された画像データは、再生モードを選択すると、表示部に再生表示することができる。
【００１７】
また、本実施形態におけるカメラは、フリッカを検出するにあたって、測光範囲内の画素データに基づいてフリッカ縞とフリッカ縞移動を検出してフリッカ周波数を求める（例えば、図３ＡのＳ５、Ｓ１１〜Ｓ１５、Ｓ１９）。フリッカ周波数を求めることができない場合には、測光範囲を狭くして、同様の処理によってフリッカ周波数を求める（例えば、図３ＢのＳ１７、Ｓ２５参照）。
【００１８】
図１は、本実施形態に係るカメラの主として電気的構成を示すブロック図である。このカメラは、カメラ本体１０と、カメラ本体１０に装着可能なレンズ鏡筒２０を有する。なお、本実施形態は、カメラ本体１０とレンズ鏡筒２０を別体で構成した所謂レンズ交換式カメラである。しかし、これに限らず、レンズ鏡筒がカメラ本体と一体化したカメラの形態であってもよい。
【００１９】
カメラ本体１０内には、制御部１１、撮像制御部１７、撮像素子１８、メカシャッタ１９が配置されている。
【００２０】
メカシャッタ１９は、撮像素子１８の前面側に配置された、所謂、フォーカルプレーンシャッタやレンズシャッタである。このメカシャッタ１９は、静止画撮影の際には、レンズ鏡筒２０からの被写体光束を、所定の露光時間（シャッタ速度で決まる）の間、通過させる。また、動画撮影時やライブビュー表示時には、メカシャッタ１９は開放状態となり、撮像制御部１７が電子シャッタによって露光時間を制御する。なお、メカシャッタ１９は、フォーカルプレーンシャッタに限らず、レンズシャッタ等の他の形式のシャッタでもよい。またメカシャッタ１９を省略し、撮像素子１８による電子シャッタのみでもよい。
【００２１】
撮像素子１８は、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等であり、レンズ鏡筒２０の光学系の光軸Ｏの延長線上に配置される。撮像素子１８は、複数の光電変換画素を有し、レンズ鏡筒２０によって結像された被写体像（光像）を撮像面で受光し、この被写体像を各光電変換画素によって光電変換して、画素信号を生成し、撮像制御部１７に出力する。この撮像素子１８は、光学系を介して被写体像を撮像する撮像素子として機能する。
【００２２】
撮像制御部１７は、撮像制御回路を有し、制御部１１からの制御信号に基づいて、撮像素子１８から画素信号の読み出し制御を行う。撮像制御部１７は、撮像素子１８の電子シャッタを制御して、複数の光電変換画素での露光時間（電子シャッタ速度）を制御することができる。また、複数の光電変換画素から読み出した画素信号を所定の増幅率で増幅することにより、ＩＳＯ感度を制御することができる。
【００２３】
制御部１１は、ＣＰＵ（Central Processing Unit）やＡＳＩＣ（Application Specific Integrated Circuit）等の周辺回路を含み、カメラ本体１０やレンズ鏡筒２０の制御を行う。ＣＰＵは、フラッシュメモリ等の不揮発性メモリに記憶されたプログラムに従って、カメラ全体の制御を行う。制御部１１内には、露出設定値演算部１２、絞り値送受信部１３、シャッタ速・感度動作制御部１４、カメラ情報表示部１５、測光制御部１６を有する。絞り値送受信部１３は通信回路を含み、カメラ情報表示部１５は背面表示パネル等の表示部を含み、また露出設定値演算部１２等の各部は、ＣＰＵ等によってソフトウエア的に実行される。
【００２４】
制御部１１は、撮像素子の撮像範囲を複数の領域に分割し（例えば、図２、図５参照）、撮像素子が出力する画素信号に基づいて分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出するフリッカ縞検出手段として機能する（例えば、図３ＡのＳ５等参照）。また、制御部１１は、フリッカ縞検出手段によりフリッカ縞が検出できたか否かを判別する判別手段として機能する（例えば、図３ＡのＳ７等参照）。また、上述のフリッカ縞検出手段は、判別手段によりフリッカ縞が検出できないと判別された場合に、分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う（例えば、図３ＢのＳ１７、Ｓ２５参照）
【００２５】
また、制御部１１は、フリッカ縞が存在すると予想される第１の分割領域と第２の分割領域の撮像素子上の間隔と、第１の分割領域と第２の分割領域に対応する読み出し時刻の差に基づいてフリッカ縞に対応するフリッカの周波数を算出するフリッカ周波数算出手段として機能する（例えば、式（２）（３）、図３ＡのＳ３参照）。
【００２６】
上述の判別手段は、フリッカ縞検出手段によりフリッカ縞を検出させ、フリッカ縞が存在する分割領域の撮像素子上での間隔に基づいてフリッカ縞が検出できたか否かを判別する（例えば、図３ＢのＳ１５等参照）。また、判別手段は、フリッカ縞が存在する分割領域の撮像素子上での間隔の差とフリッカの周波数に基づいてフリッカ縞が検出できたか否かを判別する（例えば、図３ＢのＳ１５等参照）。
【００２７】
また、上述のフリッカ縞検出手段は、撮像素子による第１のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する（例えば、図３ＡのＳ５等参照）。上述の判別手段は、フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、フリッカ縞検出手段は、撮像素子により第２のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する（例えば、図３ＡのＳ９、図３ＢのＳ２３等参照）。
【００２８】
また、上述のフリッカ縞検出手段は、撮像素子による第１のフレームレート、及び第１の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する（例えば、図３ＡのＳ５等参照）。上述の判別手段は、フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、フリッカ縞検出手段は、撮像素子により第２の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する（例えば、図４のＳ５９〜Ｓ７５において、移動しないフリッカ縞に対してシャッタ速度（第２の電子シャッタ速度）を変更することによって、フリッカ縞の濃さが変化するかによって検出する）。
【００２９】
制御部１１は、フリッカ縞検出手段と表示手段の動作を制御する制御手段として機能する。この制御手段は、撮像素子により時分割に撮像動作を行ってフリッカ縞検出手段で使用される撮像信号と表示手段の表示に使用される撮像信号を取得する。
【００３０】
カメラ情報表示部１５は、液晶表示パネルや有機ＥＬ等の背面表示パネルと表示制御回路を含み、測光制御部１６から出力されるフリッカ除去用の画像が表示される。また、表示パネルは、カメラ本体の背面に配置され、ライブビュー画像、再生画像、カメラの各種情報設定用のメニュー画像等、種々の画像が表示される。なお、背面表示パネルはカメラ本体の背面に配置されるが、これ以外の位置でもよく、またＥＶＦ（electrical view finder：電子ビューファインダ）等を用いても勿論かまわない。カメラ情報表示部１５は、撮像素子の撮像出力に基づく表示を行う表示手段として機能する。
【００３１】
測光制御部１６は、撮像素子１８からの画素信号と、露出設定値演算部１２によって演算された露出設定値を入力し、フリッカが発生する状態か否かを判定する。
【００３２】
制御部１１内の露出設定値演算部１２は、撮像制御部１９から画素信号を入力し、この画素信号に基づく被写体輝度から適正露光にするための絞り値、メカシャッタ速度、電子シャッタ速、ＩＳＯ感度等を算出する。また、測光制御部１６から、フリッカ判定の結果を入力し、フリッカが発生する場合には、フリッカをキャンセルするような電子シャッタ速および／またはメカシャッタ速を算出する。
【００３３】
露出設定値演算部１２によって算出された絞り値は、絞り値送受信部１３を介して、レンズ鏡筒２０内の絞り動作制御部２３に送信する。また、露出設定値演算部１２によって算出されたシャッタ速と感度は、シャッタ速・感度動作制御部１４に出力する。
【００３４】
絞り値送受信部１３は、カメラ本体１０とレンズ鏡筒２０の間で送受信するための通信回路を有し、カメラ本体１０側の露出設定値演算部１２で算出された絞り値を、レンズ鏡筒２０側の絞り動作制御部２３に送信する。また、絞り値送受信部１３は、レンズ鏡筒２０側の絞り動作制御部２３が、ズーム位置検出部２４によって検出された焦点距離（ズームエンコーダ値）に基づく絞り値に変更された場合には、この変更された絞り値を受信する。
【００３５】
シャッタ速・感度動作制御部１４は、露出設定値演算部１２によって算出された電子シャッタ速やＩＳＯ感度を入力し、この電子シャッタ速やＩＳＯ感度となるように、動作制御を行う。また、静止画撮影の際には、露出設定値演算部１２で算出されたシャッタ速となるように、メカシャッタ１９の制御を行う。動画撮影時やライブビュー表示時には、メカシャッタ１９を開放状態とする。
【００３６】
レンズ鏡筒２０内には、前群レンズ２１ａ、後群レンズ２１ｂ、絞り２２、絞り動作制御部２３、ズーム位置検出部２４、絞り動作部２５が備えられている。
【００３７】
前群レンズ２１ａおよび後群レンズ２１ｂ（総称する場合には、撮影レンズ２１または撮影光学系）は、撮影レンズ２１の内のフォーカスレンズを調節することにより、撮像素子１８の撮像面上に被写体像を結像させることができ、撮影レンズ２１の内のズームレンズを調節することにより、焦点距離を変化させることができる。
【００３８】
絞り２２は、撮影レンズ２１の光路中に配置されている。絞り２２は、絞り動作部２５によって開口径が機械的に可変駆動される。開口径が変化することにより、撮像素子１８に入射する被写体光量を変化させることができる。
【００３９】
ズーム位置検出部２４は、所謂ズームエンコーダを有し、撮影レンズ２１の中のズームレンズの位置を検出し、絞り動作制御部２３に出力する。
【００４０】
次に、本実施形態におけるフリッカ判定の概要について説明する。本実施形態におけるフリッカ判定は、下記の（Ａ）〜（Ｃ）によって行う。
【００４１】
（Ａ）  現在の測光範囲に対して、多分割した測光エリアの読出し時間から、フリッカ縞の測光エリア間隔に対応する周波数を算出する。
【００４２】
（Ｂ）  測光エリア毎の測光情報に基づいて移動縞の検索し、フリッカ縞の間隔と移動を検出する。そして、検出した縞の間隔を（Ａ）において算出した周波数範囲と照合し、照合した周波数と検出したフレーム間の縞の移動量の条件が合うかを判定し、条件が合えば、その周波数をフリッカ周波数とする。フリッカ縞が移動縞でなければ、フレームレートを変更して、再度同じ処理を実施する。フレームレートを変更する理由については、後述する。
【００４３】
（Ｃ）  上記（Ｂ）でフリッカ周波数の判定ができない場合には、現在の測光エリアで検出できる周波数よりも高速のフリッカであることから、測光範囲を狭くし、その範囲で同様のエリア数に分割し、上述の（Ａ）（Ｂ）の処理を行う。（Ａ）から（Ｃ）の処理を繰り返すことにより、高周波のフリッカまで検出を行う。
【００４４】
上述の（Ｂ）において、フレームレートを変更するのは、下記の理由による。フリッカ周波数が、フレームレートの倍数となる数値の場合、フリッカ縞は移動しない。移動しないフリッカ縞は、そのままでは物体の模様と区別が難しいため、誤検出の原因となる。そこで、本実施形態においては、縞の間隔とフレーム間の縞の移動量からフリッカ周波数の条件に合うかを確認するため、移動しないフリッカ縞になる条件では、フレームレートを変更する。なお、フレーム間でシャッタ速度（Ｔｖ）の値を切り替え、移動しないフリッカ縞の濃さが変わるかチェックし、フリッカによる縞か判断することによって、フレームレートを変えずに、フリッカ判断をすることも可能である。
【００４５】
フリッカ判定は、フリッカによって発生するフリッカ縞の間隔と縞の移動を検出することによって行う。本実施形態においては、上述の（Ａ）で述べたように、現在の測光範囲でフリッカによる輝度変化を判定できる周波数の範囲を算出する。ここで、分割測光エリア毎にフリッカ縞の有無を判定するので、検出可能なフリッカ周期は分割測光エリア単位で表される。したがって、所定の分割測光エリアにより検出可能なフリッカ周波数は、測光エリアの分割数に依存する周波数範囲として検出することができる。
【００４６】
フリッカ周波数は、例えば、光源が商用電源の周波数と同じで明暗が変化する場合には、５０Ｈｚまたは６０Ｈｚとなる。しかし、ＬＥＤ光源等の場合には、商用電源周波数とは同じにならず、更に高周波の場合がある。フリッカ周波数が高周波の場合には、フリッカ縞の間隔が狭くなり、検出が困難となる。そこで、本実施形態においては、まず、検出可能な周波数範囲にてフリッカを検出し、この検出範囲を変えながらフリッカ検出を行う。また、検出可能なフリッカ周波数の上限は、分割測光エリアに対応する撮像素子１８の画素数により制限される。これは、測光の信頼性を確保するためには、１個の分割測光エリアの画素数を所定数以上とする必要があるためである。
【００４７】
図２を用いて、測光範囲を変えることにより、検出できるフリッカ周波数の範囲が変わることについて説明する。多分割された測光エリアの分割数がフリッカ縞間隔に対して少ない場合、フリッカ縞がフレームごとに移動していたとしても測光結果から縞を判別することができない。その場合、測光範囲を狭く（縮小）して同様にエリア分割を行うことでフリッカ縞間隔に対するエリアの細かさを確保する。また、フレームレートとフリッカ周波数が同期する場合は、フリッカ縞を移動させるように、例えば、フレームレート変更を行う。
【００４８】
図２において、左側の外枠は測光範囲３１を示し、点線で囲まれたエリアは多分割測光エリア３２を示す。測光範囲３１内には、１１×１１＝１２１エリアの測光エリアが設けられている。また、横方向に延びた灰色のラインは、フリッカ縞３３を示し、測光範囲３１内には、フリッカ縞間隔３５で１１本のフリッカ縞が現われている。つまり、１個の測光エリアに対して１個のフリッカ縞が対応して現れている状態を示している。この場合にはフリッカ縞が存在することを判定できない。
【００４９】
図２において、右側の外枠は測光範囲４１を示し、この測光範囲は、図２の左側の測光範囲３１内の測光範囲４１を拡大したものである。すなわち、測光範囲４１は、測光範囲３１の一部に新たな測光範囲として設定される。そして、設定された測光範囲４１を、測光範囲３１の場合と同様に分割される。点線で囲まれたエリアは多分割測光エリア４２であり、測光範囲４１内にも、１１×１１＝１２１エリアの測光エリアが設けられている。また、横方向に延びた灰色のラインは、フリッカ縞を示し、測光範囲４１内には、フリッカ縞間隔４５を有する２本のフリッカ縞が現われている。
【００５０】
図２の測光範囲３１のフリッカ縞間隔３５（フリッカ縞とフリッカ縞の間隔）は、測光エリアの縦幅に相当する個数に換算して１であるが、測光範囲を（２／縦エリア分割数）倍（図２では、２／１１＝１／５．５倍）に縮小することによって、フリッカ縞間隔４５を測光エリア縦幅に換算して５としている。フリッカ縞の間隔が２以上あれば、フリッカ縞の移動によるフレーム毎の測光結果の違いを検出できる。ただし、フレーム周期とフリッカ周期が同期する場合には、縞が移動せず、移動縞（異なるフレームで移動する縞）を検出することができなくなる。この場合には、フレームレートを変更して、再度確認すればよい。
【００５１】
測光範囲の一部を新たな測光範囲として設定し、つまり、測光範囲を縮小（測光範囲を狭く）し、かつフレームレートを変更しても移動縞フリッカを検出できない場合には、フリッカ周波数が更に高周波数であると判定する。そして、再度、測光範囲を縮小して同様の検出・判定を、フリッカ周波数の検出の限界となる測光範囲に縮小されるまで繰り返し行う。なお、測光範囲の縮小処理は、測光範囲を狭くし、狭くした測光範囲内を縮小処理前の測光エリアの数と同等の数で、再度測光エリアを設定することをいう。なお、再設定する測光エリアの数は、前の測光エリアの数と必ずしも同じでなくてもよい。
【００５２】
このように、本実施形態においては、設定した測光範囲で移動縞フリッカの検出処理を実施し、その測光範囲で検出できる周波数範囲がフリッカ周波数に該当しなければ、測光範囲の縮小処理を行い（測光範囲を狭くする）、検出できる周波数範囲を高くする処理を繰り返す。検出できなかった時のフリッカ縞の間隔が１［エリア］だった場合に、フリッカ縞の間隔を（２／縦エリア分割数）［エリア］にすることができるように、検出できなかった時の測光範囲を縮小する倍率は、（２／縦エリア分割数）［倍］とする。例えば、縦エリアの分割数が１１であれば、縮小倍率は２／１１＝１／５．５倍とすればよい。なお、様々な光源装置、照明装置のフリッカ周波数は、一般的に知られており、このようなフリッカ周波数を予め不揮発性メモリに記憶しておく。そして、検出した周波数範囲が、記憶しているフリッカ周波数に該当するか否か判定することが可能である。
【００５３】
次に、図３Ａ、図３Ｂ、図４に示すフローチャートを用いて、本実施形態におけるフリッカ検出について説明する。これらのフローは、制御部１１内のＣＰＵがメモリ（不図示）に記憶されたプログラムに従って、各部を制御することにより実行する。
【００５４】
図３Ａに示すフローがスタートすると、まず、１エリアの取得時間を算出する（Ｓ１）。１エリアは、図２の測光範囲３１、４１等に相当し、フリッカ検出のための測光範囲は次第に狭くなる。このステップでは、撮像素子１８に対して、現在設定されている測光範囲内の１エリアの画素データを読み出すための時間を算出する。
【００５５】
なお、１エリア取得時間Ｔａは、下記（１）式より算出できる。
Ｔａ＝Ｔｈｄ［sec］＊（Ｎｅ−１）＋Ｔｉ  ・・・（１）
Ｔｈｄは、撮像素子１８の水平方向のエリア内の１ライン分の蓄積を開始する時刻を１ライン毎にずらす時間［sec］である。１ライン毎に蓄積開始時刻をずらすためのずらし時間は、例えばＣＯＭＳイメージセンサのローリングシャッタ制御の制御パラメータとして設定される。また、Ｎｅは、分割された測光エリアの縦方向画素数（縦方向ライン数）である。Ｔｉは蓄積時間（積分時間）である。
【００５６】
１エリアの取得時間を算出すると、次に、フリッカ縞の間隔に応じたフリッカ周波数の取り得る範囲の最大値と最小値を算出する（Ｓ３）。測光範囲内のフリッカ縞の間隔数ｘに対応する周波数の範囲は下記（２）（３）式によって算出できる。
ｆｍｉｎ＝（１／Ｔａ）＊（ｘ）  ・・・（２）
ｆｍａｘ＝（１／Ｔａ）＊（ｘ＋１）｝  ・・・（３）
【００５７】
また、下記（４）（５）式により算出してもよい。
ｆｍｉｎ＝（１／Ｔａ）＊ＩＮＴ（１１／Ｌｓ）  ・・・（４）
ｆｍａｘ＝（１／Ｔａ）＊（ＩＮＴ（１１／Ｌｓ）＋１）  ・・・（５）
ここで、ｘはフリッカ縞の間隔の数（フリッカ縞の数−１）、Ｌｓは縞間隔（フリッカ縞とフリッカ縞の距離を測光エリアの縦幅数に換算）、ｆｍｉｎは最小周波数、ｆｍａｘは最大周波数、Ｔａは１エリア取得時間［sec］、＊は乗算を意味する。なお、式（４）（５）については、縦エリアの分割数を１１としている。
【００５８】
フリッカ縞間隔に応じたフリッカ周波数の最大値と最小値を算出すると、次に、測光結果から縞間隔と縞移動量を検出する（Ｓ５）。ここでは、設定された測光範囲内で取得した画素データに基づいて、フリッカ縞と縞移動量を算出する。このステップで検出した縞間隔（［エリア数］、図２の縦方向のエリア数で表す）と、縞のフレーム間移動量（［エリア数］）を検出する。このステップで検出した縞間隔と、ステップＳ３で算出した周波数範囲（上述の式（２）（３）参照）から、フリッカ周波数の候補Ａを決定する。
【００５９】
ステップＳ５において、縞間隔と縞移動量を検出すると、次に、（ａ）縞自体を検出できない、または（ｂ）前回処理でフレームレート（ｆｐｓ）を変更しても縞が移動しない、または（ｃ）前回処理で「非検出」と判定されたか否かについて判定する（Ｓ７）。ここでは、ステップＳ５における検出の結果、フリッカ縞として検出できたか否かに基づいて判定する。なお、フリッカ縞として検出できるか否かの判定については、後述する図４を用いて詳述する。また、後述するＳ２３において、フレームレートを変更したにも関わらず、フレーム間でフリッカ縞の位置が移動していないか否かについて判定する。また、後述するステップＳ２１において「非検出」と判定されたか否かを判定する。これらの（ａ）〜（ｃ）のいずれか１つでも条件を満たすか否かを判定する。
【００６０】
ステップＳ７における判定の結果、全ての条件を満たしていない場合、すなわち、縞自体を検出でき、かつ前回処理でフレームレート（ｆｐｓ）を変更して縞が移動し、かつ前回処理で「非検出」と判定されていない場合には、検出した縞が移動しているか否かについて判定する（Ｓ９）。ここでは、フレーム間で、フリッカ縞の位置が移動したか否かについて判定する。
【００６１】
ステップＳ９における判定の結果、検出した縞が移動している場合、つまり複数フレーム間で縞の位置が異なると判定する場合には、縞間隔の検出結果から周波数候補Ａを算出する（Ｓ１１）。ここで、周波数候補Ａの周波数ＨＡ［Hz］は、下記（６）式によって算出する。
ＨＡ＝（ｆｍｉｎ＋ｆｍａｘ）／２  ・・・（６）
なお、ｆｍｉｎは最小周波数、ｆｍａｘは最大周波数を意味する。
【００６２】
周波数候補Ａを算出すると、次に、周波数候補Ａから演算による縞移動量を算出する（Ｓ１３）。ここでは、検出した縞のフレーム間移動量と、ステップＳ１１で算出した周波数候補Ａを用いて、下記（７）によって、演算による縞のフレーム間移動量ＭＣ（［エリア数］）を算出する。
ＭＣ＝｛Ｆｒ／（１／ＨＡ）｝の余り＊（１／Ｔａ）  ・・・（７）
ここで、Ｆｒはフレームレート周期［sec］、ＨＡは周波数候補Ａの周波数ＨＡ［Hz］、Ｔａは１エリア取得時間［sec］を意味する。
【００６３】
演算による縞移動量を算出すると、次に、検出した縞移動量が演算した縞移動量と一致するか否かについて判定する（Ｓ１５）。ここでは、ステップＳ５にて検出した縞のフレーム間移動量と、上記（７）式に基づく演算で算出した縞のフレーム間移動量ＭＣが同等か否かを判定する。両者の差が所定値以内であれば、同等と判定する。
【００６４】
ステップＳ１５における判定の結果、縞移動量が検出と演算で合っていれば、周波数候補Ａ（周波数ＨＡ）をフリッカ周波数として判定し、この処理を終了する（Ｓ１９）。検出した縞のフレーム間移動量と、演算で出した縞のフレーム間移動量ＭＣが同等になったことから、周波数候補Ａを正式にフリッカ周波数として決定する。
【００６５】
一方、ステップＳ１５における判定の結果、検出したフレーム間の縞移動量と演算したフレーム間の縞移動量が一致していない場合には、「非検出」と判定し、スタートから処理をやり直す（Ｓ２１）。実際のフリッカ縞が、周波数候補Ａとした場合のフリッカ縞の周波数と異なることから、周波数候補Ａが誤っていたことになる。そこで、ステップＳ１に戻って、再度、フリッカ周波数の検出を行う。
【００６６】
ステップＳ９に戻り、この判定の結果、検出した縞が移動していない場合には、フレームレートを変更し、スタートから処理をやり直す（Ｓ２３）。縞のフレーム間移動量が所定値未満となる場合は、フレームレート周期とフリッカ周期が同期して縞が移動していないと判定する。フリッカ縞を移動させるため、フレームレートを変更して、ステップＳ１に戻り、再度演算による縞のフレーム間移動量の判定を行う。
【００６７】
ステップＳ７に戻り、ステップＳ７の（ａ）〜（ｃ）のいずれかの条件を満たした場合には、測光範囲を狭く（縮小）した場合の測光範囲の大きさが所定の限界に達しているか否かを判定する（Ｓ１７）。ステップＳ７における判定の結果がＹｅｓの場合は、現状の測光範囲ではフリッカ縞を検出できない場合であり、この場合には、図２を用いて説明したように、測光範囲を狭く（縮小）する。縮小倍率は、（２／総エリア分割数）倍である。この狭くなった測光範囲で、変更前と同じ分割数の測光エリアに分割し、フリッカ縞による輝度変化を判定できる周波数の範囲を算出するところ（ステップＳ１）から処理をやり直す。
【００６８】
なお、ステップＳ１７における判定にあたって、狭く（縮小）した場合の測光範囲の大きさの所定の限界は、撮像素子１８の画素数に依存する。画素数が多ければ測光範囲を縮小しても十分な解像度が確保されるため、フリッカ縞の判定を行うことができる。従って、検出できるフリッカ周波数の上限は撮像素子の画素数で決まる。
【００６９】
ステップＳ１７における判定の結果、限界に達していない場合には、測光範囲を狭く（縮小）してからスタートから処理をやり直す（Ｓ２５）。一方、限界に達している場合には、フリッカは無いと判定し、処理を終了する（Ｓ２７）。
【００７０】
このように、本実施形態におけるフローにおいては、測光範囲内の各エリアの画素データを用いて、フリッカ縞を検出し、さらにフレーム間でフリッカ縞が移動しているか否かを検出している（Ｓ５、Ｓ７、Ｓ９参照）。この結果、フリッカ縞を検出し更にフリッカ縞が移動している場合には、周波数候補Ａを算出し（Ｓ１１）、この周波数候補Ａからフレーム間のフリッカ縞移動を演算し（Ｓ１３）、この演算結果と実際のフレーム間の縞移動が一致しているかを照合し（Ｓ１５）、一致していた場合には周波数候補Ａをフリッカ周波数と決定している（Ｓ１９）。
【００７１】
また、フリッカ縞自体を検出できない等の場合には（Ｓ７Ｙｅｓ）、測光範囲を狭くして、再度、フリッカ検出を行うようにしている（Ｓ１７、Ｓ２５）。なお、ステップＳ２３においては、フリッカ縞を移動させるため、フレームレートを変更して、再度演算による縞のフレーム間移動量の判定を行っているが、以下の変形例としてもよい。ステップＳ２３において、フレームレートを変更せずに、電子シャッタ速度を変更する。そして、ステップＳ５にて、縞の移動量を検出する代わりに、電子シャッタ速度が異なるフレーム間で、移動しないフリッカ縞の濃さ（輝度）の変化量を検出する。フリッカ縞の濃さ（輝度）の変化量が所定値よりも大きい場合に、フリッカによる縞であると判断する。
【００７２】
次に、図４に示すフローチャートを用いて、ステップＳ７において、フリッカ縞自体を検出できるか、すなわちフリッカ判定について説明する。なお、このフリッカ判定は、所定時間間隔で処理される。この処理の概要として、撮像素子１８で取得された画素データに基づく輝度値を元に、所定の周期で繰り返される撮像出力のうち、３駒連続した駒の輝度値を取得する制御で、１駒目と２駒目は同じシャッタ速で行う。３駒目は１，２駒目で制御されたシャッタ速を１段分速くし、感度を１段上げて露出レベルを維持してシャッタ速を変更する制御を行う。この３駒の輝度値を用いてフリッカ判定を行う。
【００７３】
フリッカ判定のフローに入ると、まずライブビュー露出制御を行う（Ｓ５１）。ここでは、輝度値に基づいて、露出レベルが適正になるような絞り値、シャッタ速、感度を算出し、算出した各値をレンズの絞り、撮像素子の電子シャッタ、感度に設定して撮像動作を行い、撮像出力を取得する。続いて、１駒目の輝度値を取得する（Ｓ５３）。ここでは、撮像出力に基づいて各エリアの輝度を算出する。なお、輝度値は測光値と同じ意味としている。また各エリアは、前述の測光エリア、分割測光エリアに相当する。
【００７４】
１駒目の輝度値を取得すると、次に、ステップＳ５１と同様に、ライブビュー露出制御を行い（Ｓ５５）、つまり、１駒目とそれぞれ同じ絞り値、シャッタ速（電子シャッタ速）、感度に設定して露出を実行し撮像出力より、２駒目の輝度値を取得する（Ｓ５７）。ここでは、２駒目の撮像出力に基づいて各エリアの輝度を算出する。
【００７５】
２駒目の輝度値を取得すると、次に、制御値変更、すなわちシャッタ速を＋１段、感度値（ＩＳＯ感度）を＋１段する（Ｓ５９）。ここでは、ステップＳ５３で制御した絞り値、シャッタ速、感度のうち、シャッタ速を１段分速くする。シャッタ速を高速にした分により露出がアンダーにならないように感度を１段増加させる。そして３駒目の撮像動作を行い、撮像出力を取得する。続いて、３駒目の撮像出力に基づいて、各エリアの輝度値を取得する（Ｓ６１）。
【００７６】
３駒目の輝度値を取得すると、続いて、１、２駒目の変動量を算出する（Ｓ６３）。ここでは、１駒目と２駒目で得られた各エリアの輝度値について対応するエリア毎に輝度値の差分を算出する。
【００７７】
次に、２、３駒目の変動量を算出する（Ｓ６５）。ここでは、２駒目と３駒目で得られた各エリアの輝度値について、対応するエリア毎に輝度値の差分を変動量として算出する。ステップＳ６３、Ｓ６５において、エリア毎に撮像素子の積分時間（シャッタ速）が同じ２つの駒の輝度変化と積分時間（シャッタ速）が異なる２つの駒の輝度変化をそれぞれ変動量として取得できる。
【００７８】
変動量を算出すると、次に、２、３駒目の変動量の変化が大か否かを判定する（Ｓ６７）。ステップＳ６５で得られた２、３駒目の各エリアの変動量のうちの最大値と最小値の差「３駒目−２駒目の変動量の振幅」が、ステップＳ６３で得られた１、２駒目の各エリアの変動量のうちの最大値と最小値の差「２駒目−１駒目の振幅」よりも十分大きいかどうかを比較し、十分大きいと判断された場合に、２、３駒目の変動量の変化が大と判定し、フリッカ判定のうちの一つの条件に該当したと判定するものである。
【００７９】
ステップＳ６７における判定の結果、２、３駒目の変動量の変化が大の場合には、次に、周期性評価に該当するか否かを判定する（Ｓ６９）。ここでは、縞の現れ方がフリッカの周期性に該当するか否か、すなわち、縞の本数、縞の間隔、縞の移動量がフリッカの特性に該当するか否に基づいて判定する。
【００８０】
ステップＳ６９における判定の結果、周期性評価に該当する場合は、フリッカと判定する（Ｓ７５）。一方、ステップＳ６７またはステップＳ６９における判定結果がＮｏの場合には、フリッカがないと判定する。フリッカ判定を行うと元のフローに戻る。
【００８１】
なお、ステップＳ６７Ｎｏ、またはステップＳ６９Ｎｏの場合は、次のような処理を行ってもよい。１、２駒目の変動量の変化が大か否かを判定する。そして、１、２駒目の変動量の変化が所定値より大きい場合は、前述と同様に周期性評価に該当するか否かを判定する。そして、周期性評価に該当する場合は、フリッカありと判定する。これは、フリッカ周期がフレーム周波数に同期しない条件の場合には、１、２駒目の変動量の変化が大きいので、このフリッカ状況を判定してフリッカありとするものである。また、１、２駒目の変動量の変化が所定値以下の場合、または周期性評価に該当しない場合は、フリッカなしと判定する。
【００８２】
また、各駒の積分時間を異なるものにする場合は、移動しないフリッカ縞の濃さをチェックする手法をとる場合のみに適用する。基本的には、共通の積分時間で比較する。また、フリッカ縞の検出に関して、縞の本数、縞の間隔がフリッカの条件として成立か否かの判定にあたって、複数フレームに亘り監視することにより、手ぶれによる模様の移動に基づいて誤検出を防止することができる。
【００８３】
次に、測光範囲と表示範囲の関係について説明する。本実施形態においては、フリッカ検出を行うために測光範囲が変化することがある。この測光範囲の変化に合わせて表示範囲を変えようにすることが考えられるが、ユーザの観点からみると、表示画面の拡大率が勝手に変わっていき見栄えが悪い。そこで、メニュー操作で高周波フリッカ検出モードが設定された場合には、表示用の露出を固定（ＡＥＬ）し、カメラは全画面表示を継続する。自動露出制御（ＡＥ）用の測光範囲は表示のサイズに依存することはないので、フリッカ検出用に測光範囲を内部的に変更（縮小）しながら一定の分割数でエリア分割して、上述の（Ｂ）の検出処理を行う。
【００８４】
フリッカ検出処理が完了したら、結果をユーザに表示し、また露出設定値演算部１２に提供し、露出制御に反映させる。なお、本実施形態においては、フリッカ検出の結果は、フリッカ周期にシャッタ速度Ｔｖを同期させ、フリッカを消去するような露出設定に利用される事を想定している。このように、ユーザにフリッカ検出処理の際に、測光範囲の縮小に対応するような拡大表示を見せることなく表示範囲を一定する。
【００８５】
次に、図５を用いて、測光範囲と表示範囲の関係の詳細について説明する。表示画像５１は、フリッカ検出した際のカメラ情報表示部１５に表示されるライブビュー画像である。表示画像５１中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光エリア６１である。また、複数の測光エリア６１の外枠が測光範囲６２である。なお、Ｏｂは主被写体である。測光エリアを示す破線は、ユーザに認識させる必要がない場合は、カメラ情報表示部１５に表示しなくてもよい。主要被写体の画像に重畳して表示され見にくくなることを防止する効果がある。また、測光エリアの外枠（実線）だけを表示するようにしてもよい。
【００８６】
表示画像５１は、前述した通り高周波フリッカの検出開始時であり、この状態では、カメラ情報表示部１５は、高周波フリッカの検出開始直前の露出で固定（ＡＥＬ）し、全画面表示を行っている。また、露出設定値演算部１２は、移動縞フリッカ検出処理を実施する。
【００８７】
表示画像５２は、表示画像５１の表示時にフリッカを検出できなかった場合に、再度、フリッカ検出を行う際（図３Ａ：Ｓ７（Ｙｅｓ）→Ｓ１７（Ｎｏ）→Ｓ２５）の表示画像である。表示画像５２中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア６３である。また、複数の測光エリア６３の外枠が測光範囲６４である。測光範囲６４は、前述のようにフリッカ、算出され、測光範囲６４のサイズは測光範囲６２よりも狭いが、各測光範囲内の測光エリアの分割数は同じであるので、測光エリア６３のサイズは測光エリア６１よりも狭くなっている。測光範囲として縮小する中心位置は、主要被写体Ｏｂの位置（たとえば、主要被写体Ｏｂの中心）としている。主要被写体としては、ＡＦ位置、顔検出位置、手動で設定された露出エリア等、いずれかの手段によって決定する。
【００８８】
表示画像５２が表示されている状態では、カメラ情報表示部１５は、高周波フリッカの検出開始直前の露出で固定（ＡＥＬ）し、全画面表示を行っている。また、露出設定値演算部１２は、前述したように測光範囲を縮小して、縮小した測光エリアの分割を行い、分割した測光エリアでの検出結果に基づいて移動縞フリッカ検出処理を実施する。
【００８９】
表示画像５３は、表示画像５２の表示時にフリッカを検出できなかった場合に、再度、フリッカ検出を行う際の表示画像である。表示画像５３中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア６５である。また、複数の測光エリア６５の外枠が測光範囲６６である。測光範囲６６のサイズは測光範囲６４よりも狭いが、各測光範囲内の測光エリアの分割数は同じであるので、測光エリア６５のサイズは測光エリア６３よりも狭くなっている。
【００９０】
表示画像５３が表示されている状態では、カメラ情報表示部１５は、高周波フリッカの検出開始直前の露出で固定（ＡＥＬ）し、全画面表示を行っている。また、露出設定値演算部１２は、さらに測光範囲を縮小して測光エリアの分割を行い、移動縞フリッカ検出処理を実施する。
【００９１】
表示画像５４は、表示画像５３の表示時にフリッカを検出できなかった場合で、かつ更に測光範囲の縮小の限界に達した場合（図３ＢのＳ１７Ｙｅｓ）、すなわち、高周波フリッカの検出終了時の表示画像である。表示画像５４中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア６７である。また、複数の測光エリア６７の外枠が測光範囲６８である。測光範囲６８は、測光範囲の減縮の限界に達したことから、表示画像５１の際の通常状態に戻る。
【００９２】
表示画像５４が表示されている状態では、カメラ情報表示部１５は、高周波フリッカの検出開始直前の露出固定（ＡＥＬ）を解除し、通常表示状態に戻る。また露出設定値演算部１２は、「非検出」の判定結果を露出設定値演算部１２内の露出制御ブロックに伝え、測光範囲を通常状態に戻す。また、フリッカを「非検出」であったことをユーザに表示してもよい。
【００９３】
表示画像５５は、表示画像５１、５２、または５３の状態でフリッカを検出することができた場合の表示画像である。表示画像５５中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア６９である。また、複数の測光エリア６９の外枠が測光範囲７０である。測光範囲７０は、フリッカを検出できたことから、表示画像５１の際の通常状態に戻る。
【００９４】
表示画像５５が表示されている状態では、高周波フリッカの検出開始直前の露出固定（ＡＥＬ）を解除し、通常表示状態に戻る。露出設定値演算部１２は、測光エリアを通常状態に戻し（測光エリア６９参照）、検出した周波数の判定結果を露出設定値演算部１２内の露出制御ブロックに伝え、フリッカ周期にシャッタ速度Ｔｖを同期させ、フリッカを消去するような露出設定を行う。また、フリッカが検出されたことをユーザに表示してもよい。
【００９５】
次に、ユーザがフリッカ周期に、手動でシャッタ速度Ｔｖを同期させ、フリッカを消す処理を行う場合について説明する。この場合には、ユーザが背面パネル等に表示されるフリッカ縞を確認しながら、シャッタ速度Ｔｖを手動操作して縞を消すことになる。そして、背面パネル等に画像を表示する際の露出制御用のシャッタ速度Ｔｖと、静止画撮影時の露出制御用のシャッタ速度Ｔｖを同じ値とすることにより、静止画撮影による画像にフリッカが生じないように設定することができる。
【００９６】
静止画を電子シャッタで撮影する（この時の撮影を「電子シャッタスチル」と称す）際に生じてしまうフリッカ縞を、ユーザが確認しながら縞を消す場合、フリッカ縞の見え方を静止画撮影時と同等にするため、ライブビュー表示時の撮像の駆動モード（画素数、幕速等）を、ライブビュー画像と電子シャッタスチルで同じにする必要がある。しかし、一般的に静止画用に使用する撮像の駆動モードは画素数が多いため、撮像素子および周辺回路の消費電力が高くなってしまう。そこで、ライブビュー表示を行う際には電子シャッタスチル用とは別に消費電力の低い駆動モードを常用する事が多い。
【００９７】
本実施形態においては、消費電力の面からも、通常のライブビュー表示とは別にフリッカ検出・除去に特化したモードとして、別の表示モード「ＬＥＤフリッカ対応モード」をユーザが選択・設定できるものとする。ＬＥＤフリッカ対応モードが設定された場合には、ライブビュー表示用の撮像駆動モード（撮像素子１８および撮像制御部１７の制御モード）を電子シャッタスチルの撮像と同じ駆動モードに設定し、表示することが望ましい。これによって、ライブビュー表示された際に発生するフリッカ状態が電子シャッタスチルにて撮像する画像と同等になる。ユーザは細かくシャッタ速度Ｔｖを調節することによって、ライブビュー表示を目視しながら電子シャッタスチルにて撮像する画像におけるフリッカ除去の確認をすることができる。
【００９８】
ＬＥＤフリッカ対応モードの補助機能として、上述したフリッカ判定の概要の処理（Ａ）（Ｂ）を実行する「ＬＥＤフリッカ検出機能」を、ユーザ操作により実行するようする。ユーザが「ＬＥＤフリッカ検出機能」の実行を開始させると、処理（Ａ）（Ｂ）が実行され、フリッカ検出処理が行われる。この処理中は露出固定となり、ユーザは処理完了待ちの状態になる。
【００９９】
フリッカ検出処理が完了すると、以下に示す（ｉ）〜（ｉｖ）が行われることによって、ユーザが手動でフリッカを除去することができる。
【０１００】
（ｉ）  フリッカ検出結果に従って、フリッカの有り・無しの情報を画面上に表示する（ガイド表示）。
（ｉｉ）  フリッカ有りが表示される場合には、フリッカを除去できるシャッタ速度Ｔｖ候補の範囲の情報を画面上に表示する（ガイド表示）。
【０１０１】
（ｉｉｉ）  上記（ｉｉ）で示したシャッタ速度Ｔｖ候補の範囲に、ワンタッチでシャッタ速度Ｔｖを設定できる操作手段を設けておく。操作手段としては、例えば、ボタン割り当てやタッチ操作等がある。これは、ユーザが手動でシャッタ速度Ｔｖを細かく調節してフリッカを除去する場合、シャッタ速度の分解能が高いため、シャッタ速度Ｔｖの選択肢が多岐にわたり、目的のシャッタ速度Ｔｖにユーザが合わせるまで時間がかかってしまう。そこで、ワンタッチ操作によってシャッタ速度Ｔｖを設定するようにしておくことが望ましい。
（ｉｖ）  上記（ｉｉｉ）でシャッタ速度Ｔｖをワンタッチ操作した後、完全にフリッカ周波数と同期するシャッタ速度Ｔｖでない場合には、ユーザが微小なズレを手動で補正する。
【０１０２】
このように、本発明の一実施形態においては、多分割した測光エリアの測光結果から縞を検出する手段と、測光範囲を変えながら測光エリアを分割する手段とを設け、高周波フリッカまで、広範囲の周波数でフリッカを検出することができる。本発明の一実施形態においては、下記（１）〜（３）の処理を行う。
【０１０３】
（１）  現在測光範囲に対して、多分割した測光エリアの読み出し時間から、フリッカ縞の測光エリア間隔に対応する周波数の範囲を算出することができる（例えば、式（２）（３）、図３ＡのＳ３参照）
【０１０４】
（２）  測光エリアごとの測光情報から移動縞の検出を実施しフリッカ縞の間隔と移動量を検出する。そして、検出した縞の間隔を上述の（１）で算出した周波数範囲に照らし合わせ、照らし合わせた周波数と検出したフレーム間の縞の移動量の条件が合うか確認する（例えば、図３ＡのＳ７参照）。条件が合えば、その周波数をフリッカ周波数として判定する。また、フリッカ縞が、移動縞でなければフレームレートを変更して再度同じ処理を実施する（図３ＢのＳ２３参照）。なお、フレームレートを切り替えずにフリッカ周波数を検出する場合には、フレーム間でシャッタ速度Ｔｖの値を切り替え、移動しないフリッカ縞の濃さが変わるかチェックし、フリッカによる縞か判断する。
【０１０５】
（３）  上述の（２）でフリッカ周波数を判定できない場合は現在の条件より高速のフリッカ周波数であると判定し、測光範囲を狭くし、その範囲で同様のエリア数に分割して、上述の（１）の処理へ戻る（例えば、図３ＢのＳ１７Ｎｏ、Ｓ２５参照）。上述の（１）〜（３）の処理を繰り返し、高周波のフリッカまで検出を行う。
【０１０６】
また、本発明の一実施形態においては、上述の（１）（２）をカメラの撮影待機中に処理実施する。メニュー操作で、高周波フリッカ検出モードに入ったら、表示用の露出を固定（ＡＥＬ）し、カメラは全画面表示を継続する。ＡＥ用の測光範囲は表示することなく、カメラの電気的処理として変更（縮小）しながら一定のエリア分割を行い、フリッカ検出を行う。ユーザには、測光範囲の拡大表示を見せることなく実施させている。
【０１０７】
このように、本発明の一実施形態においては、撮像素子の撮像範囲を複数の領域に分割し、撮像素子が出力する画素信号に基づいて分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出している（例えば、図２、図３ＡのＳ５、図５等参照）。そして、フリッカ縞が検出できたか否かを判別し（例えば、図３ＡのＳ７参照）、フリッカ縞が検出できないと判別された場合に、分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う（例えば、図３ＢのＳ１７、Ｓ２５参照）。このため、ユーザが簡単にフリッカキャンセルを行うことができる。すなわち、フリッカ縞を検出できない場合には、フリッカ縞を検出する範囲を縮小して行うことより、フリッカ縞を検出しやすくなる。
【０１０８】
なお、本発明の一実施形態においては、フリッカ判定処理は主としてプログラムに従ってＣＰＵがソフトウエアで処理している（図３Ａ、図３Ｂ、図４参照）。しかし、ソフトウエアに限らず、一部または全部をハードウエアで実行するようにしてもよい。
【０１０９】
また、本発明の一実施形態においては、露出設定値演算部１２、絞り値送受信部１３、シャッタ速・感度動作制御部１４、カメラ情報表示部１５、測光制御部１６を制御部１１の内部構成とし、ＣＰＵによってソフトウエア的に実行する部分と、ハードウエアによって構成される部分を有している。しかし、これに限らず、制御部１１とは別体の構成としても勿論かまわない。また、ヴェリログ（Verilog）によって記述されたプログラム言語に基づいて生成されたゲート回路等のハードウエア構成でもよく、またＤＳＰ（Digital Signal Processor）等のソフトを利用したハードウエア構成を利用してもよい。これらは適宜組み合わせてもよいことは勿論である。また、ＣＰＵの機能の一部をＤＳＰ等のプログラムコードで実行される回路で実現するようにしてもよく、ヴェリログによって記述されたプログラム言語に基づいて生成されたゲート回路等のハードウエア構成でもよく、またハードウエア回路によって実現するようにしてもよい。
【０１１０】
また、本発明の一実施形態においては、撮影のための機器として、デジタルカメラを用いて説明したが、カメラとしては、デジタル一眼レフカメラでもミラーレスカメラでもコンパクトデジタルカメラでもよく、ビデオカメラ、ムービーカメラのような動画用のカメラでもよく、さらに、携帯電話、スマートフォン、携帯情報端末、パーソナルコンピュータ（ＰＣ）、タブレット型コンピュータ、ゲーム機器等に内蔵されるカメラ、医療用カメラ、顕微鏡等の科学機器用のカメラ、自動車搭載用カメラ、監視用カメラでも構わない。いずれにしても、フリッカが発生する可能性のある撮影のための機器であれば、本発明を適用することができる。
【０１１１】
また、本明細書において説明した技術のうち、主にフローチャートで説明した制御に関しては、プログラムで設定可能であることが多く、記録媒体や記録部に収められる場合もある。この記録媒体、記録部への記録の仕方は、製品出荷時に記録してもよく、配布された記録媒体を利用してもよく、インターネットを介してダウンロードしたものでもよい。
【０１１２】
また、特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず」、「次に」等の順番を表現する言葉を用いて説明したとしても、特に説明していない箇所では、この順で実施することが必須であることを意味するものではない。
【０１１３】
本発明は、上記実施形態にそのまま限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素の幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１１４】
１０・・・カメラ本体、１１・・・制御部、１２・・・露出設定値演算部、１３・・・絞り値送受信部、１４・・・シャッタ速・感度動作制御部、１５・・・カメラ情報表示部、１６・・・測光制御部、１７・・・撮像制御部、１８・・・撮像素子、１９・・・メカシャッタ、２０・・・レンズ鏡筒、２１ａ・・・前群レンズ、２１ｂ・・・後群レンズ、２２・・・絞り、２３・・・絞り動作制御部、２４・・・ズーム位置検出部、２５・・・絞り動作部、３１・・・測光範囲、３２・・・測光エリア、３３・・・フリッカ縞、３５・・・フリッカ縞間隔、４１・・・測光範囲、４２・・・測光エリア、４３・・・フリッカ縞、４５・・・フリッカ縞間隔、５１〜５５・・・表示画像、６１・・・測光エリア、６２・・・測光範囲、６３・・・測光エリア、６４・・・測光範囲、６５・・・測光エリア、６６・・・測光範囲、６７・・・測光エリア、６８・・・測光範囲、６９・・・測光エリア、７０・・・測光範囲
【図１】
2018107770.tif 000003
【図２】
2018107770.tif 000004
【図３Ａ】
2018107770.tif 000005
【図３Ｂ】
2018107770.tif 000006
【図４】
2018107770.tif 000007
【図５】
2018107770.tif 000008
【手続補正書】
【提出日】平成30年2月26日(2018.2.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
光学系を介して被写体像を撮像する撮像素子を有する撮像装置において、
上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出するフリッカ縞検出手段と、
上記フリッカ縞検出手段によりフリッカ縞が検出できたか否かを判別する判別手段と、
上記フリッカ縞検出手段は、上記判別手段によりフリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う、
ことを特徴とする撮像装置。
【請求項２】
上記フリッカ縞が存在すると予想される第１の分割領域と第２の分割領域の上記撮像素子上の間隔と、上記第１の分割領域と第２の分割領域に対応する蓄積時刻の差に基づいて上記フリッカ縞に対応するフリッカの周波数を算出するフリッカ周波数算出手段を、具備することを特徴とする請求項１に記載の撮像装置。
【請求項３】
上記判別手段は、フリッカ縞検出手段によりフリッカ縞を検出させ、フリッカ縞が存在する分割領域の上記撮像素子上での間隔に基づいてフリッカ縞が検出できたか否かを判別することを特徴とする請求項１に記載の撮像装置。
【請求項４】
上記判別手段は、上記フリッカ縞が存在する分割領域の上記撮像素子上での間隔の差と上記フリッカの周波数に基づいてフリッカ縞が検出できたか否かを判別することを特徴とする請求項３に記載の撮像装置。
【請求項５】
上記フリッカ縞検出手段は、上記撮像素子による第１のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、
上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第２のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する、
ことを特徴とする請求項１乃至４のいずれか一項に記載の撮像装置。
【請求項６】
上記フリッカ縞検出手段は、上記撮像素子による第１のフレームレート、及び第１の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、
上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第２の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する、
ことを特徴とする請求項１乃至４のいずれか一項に記載の撮像装置。
【請求項７】
上記撮像装置は、上記撮像素子の撮像出力に基づく表示を行う表示手段と、
上記フリッカ縞検出手段と上記表示手段の動作を制御する制御手段を有し、
上記制御手段は、上記撮像素子により時分割に撮像動作を行って上記フリッカ縞検出手段で使用される撮像信号と上記表示手段の表示に使用される撮像信号を取得することを特徴とする請求項１乃至６のいずれか一項に記載の撮像装置。
【請求項８】
光学系を介して被写体像を撮像する撮像素子を有する撮像装置におけるフリッカ検出方法において、
上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出し、
上記フリッカ縞が検出できたか否かを判別し、
上記フリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う、
ことを特徴とするフリッカ検出方法。
【請求項９】
光学系を介して被写体像を撮像する撮像素子を有する撮像装置におけるコンピュータに実行させるプログラムにおいて、
上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出するステップと、
上記フリッカ縞が検出できたか否かを判別するステップと、
上記フリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行うステップと、
を上記コンピュータに実行させることを特徴とするプログラム。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、光源にフリッカが含まれる場合に、このフリッカの存在を判定可能な撮像装置、フリッカ検出方法、およびプログラムに関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明は、このような事情を鑑みてなされたものであり、ユーザが簡単にフリッカキャンセルを行うことができるようにした撮像装置、フリッカ検出方法、およびプログラムを提供することを目的とする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
第８の発明に係るフリッカ検出方法は、光学系を介して被写体像を撮像する撮像素子を有する撮像装置におけるフリッカ検出方法において、上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出し、上記フリッカ縞が検出できたか否かを判別し、上記フリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う。
第９の発明に係るプログラムは、光学系を介して被写体像を撮像する撮像素子を有する撮像装置におけるコンピュータに実行させるプログラムにおいて、上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出するステップと、上記フリッカ縞が検出できたか否かを判別するステップと、上記フリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行うステップと、を上記コンピュータに実行させる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
本発明によれば、ユーザが簡単にフリッカキャンセルを行うことができるようにした撮像装置、フリッカ検出方法、およびプログラムを提供することができる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
（Ｂ）  測光エリア毎の測光情報に基づいて移動縞を検索し、フリッカ縞の間隔と移動を検出する。そして、検出した縞の間隔を（Ａ）において算出した周波数範囲と照合し、照合した周波数と検出したフレーム間の縞の移動量の条件が合うかを判定し、条件が合えば、その周波数をフリッカ周波数とする。フリッカ縞が移動縞でなければ、フレームレートを変更して、再度同じ処理を実施する。フレームレートを変更する理由については、後述する。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００６４
【補正方法】変更
【補正の内容】
【００６４】
ステップＳ１５における判定の結果、縞移動量が検出と演算が一致すれば、周波数候補Ａ（周波数ＨＡ）をフリッカ周波数として判定し、この処理を終了する（Ｓ１９）。検出した縞のフレーム間移動量と、演算で出した縞のフレーム間移動量ＭＣが同等になったことから、周波数候補Ａを正式にフリッカ周波数として決定する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００８７
【補正方法】変更
【補正の内容】
【００８７】
表示画像５２は、表示画像５１の表示時にフリッカを検出できなかった場合に、再度、フリッカ検出を行う際（図３Ａ：Ｓ７（Ｙｅｓ）→Ｓ１７（Ｎｏ）→Ｓ２５）の表示画像である。表示画像５２中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア６３である。また、複数の測光エリア６３の外枠が測光範囲６４である。測光範囲６４は、前述のようにフリッカ、算出され、測光範囲６４のサイズは測光範囲６２よりも狭いが、各測光範囲内の測光エリアの分割数は同じであるので、測光エリア６３のサイズは測光エリア６１よりも狭くなっている。測光範囲として縮小する中心位置は、主要被写体Ｏｂの位置（たとえば、主要被写体Ｏｂの中心）としている。主要被写体としては、ＡＦ位置、顔検出位置、手動で設定された露出エリアの位置等、いずれかの位置を決定する。