【解決手段】撮像素子の撮像範囲の中の測光範囲62を複数の測光エリア61に分割し、撮像素子が出力する画素信号に基づいて分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出し、フリッカ縞が検出できたか否かを判別し、フリッカ縞が検出できないと判別された場合に、測光範囲64中の分割領域の面積を縮小した測光エリア63を測光してフリッカ縞が存在すると予想される分割領域の検出を行う。
上記フリッカ縞が存在すると予想される第1の分割領域と第2の分割領域の上記撮像素子上の間隔と、上記第1の分割領域と第2の分割領域に対応する蓄積時刻の差に基づいて上記フリッカ縞に対応するフリッカの周波数を算出するフリッカ周波数算出手段を、具備することを特徴とする請求項1に記載の撮像装置。
上記判別手段は、フリッカ縞検出手段によりフリッカ縞を検出させ、フリッカ縞が存在する分割領域の上記撮像素子上での間隔に基づいてフリッカ縞が検出できたか否かを判別することを特徴とする請求項1に記載の撮像装置。
上記判別手段は、上記フリッカ縞が存在する分割領域の上記撮像素子上での間隔の差と上記フリッカの周波数に基づいてフリッカ縞が検出できたか否かを判別することを特徴とする請求項3に記載の撮像装置。
上記フリッカ縞検出手段は、上記撮像素子による第1のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、
上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第2のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する、
ことを特徴とする請求項1乃至4のいずれか一項に記載の撮像装置。
上記フリッカ縞検出手段は、上記撮像素子による第1のフレームレート、及び第1の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、
上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第2の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する、
ことを特徴とする請求項1乃至4のいずれか一項に記載の撮像装置。
【発明を実施するための形態】
【0016】
以下、本発明を一実施形態としてデジタルカメラに適用した例について説明する。このカメラは、撮像部を有し、この撮像部によって被写体像を画像データに変換し、この変換された画像データに基づいて、被写体像を本体の背面に配置した表示部にライブビュー表示する。撮影者はライブビュー表示を観察することにより、構図や撮影タイミングを決定する。レリーズ釦を操作することにより静止画の撮影が可能である。記録媒体に記録された画像データは、再生モードを選択すると、表示部に再生表示することができる。
【0017】
また、本実施形態におけるカメラは、フリッカを検出するにあたって、測光範囲内の画素データに基づいてフリッカ縞とフリッカ縞移動を検出してフリッカ周波数を求める(例えば、
図3AのS5、S11〜S15、S19)。フリッカ周波数を求めることができない場合には、測光範囲を狭くして、同様の処理によってフリッカ周波数を求める(例えば、
図3BのS17、S25参照)。
【0018】
図1は、本実施形態に係るカメラの主として電気的構成を示すブロック図である。このカメラは、カメラ本体10と、カメラ本体10に装着可能なレンズ鏡筒20を有する。なお、本実施形態は、カメラ本体10とレンズ鏡筒20を別体で構成した所謂レンズ交換式カメラである。しかし、これに限らず、レンズ鏡筒がカメラ本体と一体化したカメラの形態であってもよい。
【0019】
カメラ本体10内には、制御部11、撮像制御部17、撮像素子18、メカシャッタ19が配置されている。
【0020】
メカシャッタ19は、撮像素子18の前面側に配置された、所謂、フォーカルプレーンシャッタやレンズシャッタである。このメカシャッタ19は、静止画撮影の際には、レンズ鏡筒20からの被写体光束を、所定の露光時間(シャッタ速度で決まる)の間、通過させる。また、動画撮影時やライブビュー表示時には、メカシャッタ19は開放状態となり、撮像制御部17が電子シャッタによって露光時間を制御する。なお、メカシャッタ19は、フォーカルプレーンシャッタに限らず、レンズシャッタ等の他の形式のシャッタでもよい。またメカシャッタ19を省略し、撮像素子18による電子シャッタのみでもよい。
【0021】
撮像素子18は、CCDイメージセンサやCMOSイメージセンサ等であり、レンズ鏡筒20の光学系の光軸Oの延長線上に配置される。撮像素子18は、複数の光電変換画素を有し、レンズ鏡筒20によって結像された被写体像(光像)を撮像面で受光し、この被写体像を各光電変換画素によって光電変換して、画素信号を生成し、撮像制御部17に出力する。この撮像素子18は、光学系を介して被写体像を撮像する撮像素子として機能する。
【0022】
撮像制御部17は、撮像制御回路を有し、制御部11からの制御信号に基づいて、撮像素子18から画素信号の読み出し制御を行う。撮像制御部17は、撮像素子18の電子シャッタを制御して、複数の光電変換画素での露光時間(電子シャッタ速度)を制御することができる。また、複数の光電変換画素から読み出した画素信号を所定の増幅率で増幅することにより、ISO感度を制御することができる。
【0023】
制御部11は、CPU(Central Processing Unit)やASIC(Application Specific Integrated Circuit)等の周辺回路を含み、カメラ本体10やレンズ鏡筒20の制御を行う。CPUは、フラッシュメモリ等の不揮発性メモリに記憶されたプログラムに従って、カメラ全体の制御を行う。制御部11内には、露出設定値演算部12、絞り値送受信部13、シャッタ速・感度動作制御部14、カメラ情報表示部15、測光制御部16を有する。絞り値送受信部13は通信回路を含み、カメラ情報表示部15は背面表示パネル等の表示部を含み、また露出設定値演算部12等の各部は、CPU等によってソフトウエア的に実行される。
【0024】
制御部11は、撮像素子の撮像範囲を複数の領域に分割し(例えば、
図2、
図5参照)、撮像素子が出力する画素信号に基づいて分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出するフリッカ縞検出手段として機能する(例えば、
図3AのS5等参照)。また、制御部11は、フリッカ縞検出手段によりフリッカ縞が検出できたか否かを判別する判別手段として機能する(例えば、
図3AのS7等参照)。また、上述のフリッカ縞検出手段は、判別手段によりフリッカ縞が検出できないと判別された場合に、分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う(例えば、
図3BのS17、S25参照)
【0025】
また、制御部11は、フリッカ縞が存在すると予想される第1の分割領域と第2の分割領域の撮像素子上の間隔と、第1の分割領域と第2の分割領域に対応する読み出し時刻の差に基づいてフリッカ縞に対応するフリッカの周波数を算出するフリッカ周波数算出手段として機能する(例えば、式(2)(3)、
図3AのS3参照)。
【0026】
上述の判別手段は、フリッカ縞検出手段によりフリッカ縞を検出させ、フリッカ縞が存在する分割領域の撮像素子上での間隔に基づいてフリッカ縞が検出できたか否かを判別する(例えば、
図3BのS15等参照)。また、判別手段は、フリッカ縞が存在する分割領域の撮像素子上での間隔の差とフリッカの周波数に基づいてフリッカ縞が検出できたか否かを判別する(例えば、
図3BのS15等参照)。
【0027】
また、上述のフリッカ縞検出手段は、撮像素子による第1のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する(例えば、
図3AのS5等参照)。上述の判別手段は、フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、フリッカ縞検出手段は、撮像素子により第2のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する(例えば、
図3AのS9、
図3BのS23等参照)。
【0028】
また、上述のフリッカ縞検出手段は、撮像素子による第1のフレームレート、及び第1の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する(例えば、
図3AのS5等参照)。上述の判別手段は、フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、フリッカ縞検出手段は、撮像素子により第2の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する(例えば、
図4のS59〜S75において、移動しないフリッカ縞に対してシャッタ速度(第2の電子シャッタ速度)を変更することによって、フリッカ縞の濃さが変化するかによって検出する)。
【0029】
制御部11は、フリッカ縞検出手段と表示手段の動作を制御する制御手段として機能する。この制御手段は、撮像素子により時分割に撮像動作を行ってフリッカ縞検出手段で使用される撮像信号と表示手段の表示に使用される撮像信号を取得する。
【0030】
カメラ情報表示部15は、液晶表示パネルや有機EL等の背面表示パネルと表示制御回路を含み、測光制御部16から出力されるフリッカ除去用の画像が表示される。また、表示パネルは、カメラ本体の背面に配置され、ライブビュー画像、再生画像、カメラの各種情報設定用のメニュー画像等、種々の画像が表示される。なお、背面表示パネルはカメラ本体の背面に配置されるが、これ以外の位置でもよく、またEVF(electrical view finder:電子ビューファインダ)等を用いても勿論かまわない。カメラ情報表示部15は、撮像素子の撮像出力に基づく表示を行う表示手段として機能する。
【0031】
測光制御部16は、撮像素子18からの画素信号と、露出設定値演算部12によって演算された露出設定値を入力し、フリッカが発生する状態か否かを判定する。
【0032】
制御部11内の露出設定値演算部12は、撮像制御部19から画素信号を入力し、この画素信号に基づく被写体輝度から適正露光にするための絞り値、メカシャッタ速度、電子シャッタ速、ISO感度等を算出する。また、測光制御部16から、フリッカ判定の結果を入力し、フリッカが発生する場合には、フリッカをキャンセルするような電子シャッタ速および/またはメカシャッタ速を算出する。
【0033】
露出設定値演算部12によって算出された絞り値は、絞り値送受信部13を介して、レンズ鏡筒20内の絞り動作制御部23に送信する。また、露出設定値演算部12によって算出されたシャッタ速と感度は、シャッタ速・感度動作制御部14に出力する。
【0034】
絞り値送受信部13は、カメラ本体10とレンズ鏡筒20の間で送受信するための通信回路を有し、カメラ本体10側の露出設定値演算部12で算出された絞り値を、レンズ鏡筒20側の絞り動作制御部23に送信する。また、絞り値送受信部13は、レンズ鏡筒20側の絞り動作制御部23が、ズーム位置検出部24によって検出された焦点距離(ズームエンコーダ値)に基づく絞り値に変更された場合には、この変更された絞り値を受信する。
【0035】
シャッタ速・感度動作制御部14は、露出設定値演算部12によって算出された電子シャッタ速やISO感度を入力し、この電子シャッタ速やISO感度となるように、動作制御を行う。また、静止画撮影の際には、露出設定値演算部12で算出されたシャッタ速となるように、メカシャッタ19の制御を行う。動画撮影時やライブビュー表示時には、メカシャッタ19を開放状態とする。
【0036】
レンズ鏡筒20内には、前群レンズ21a、後群レンズ21b、絞り22、絞り動作制御部23、ズーム位置検出部24、絞り動作部25が備えられている。
【0037】
前群レンズ21aおよび後群レンズ21b(総称する場合には、撮影レンズ21または撮影光学系)は、撮影レンズ21の内のフォーカスレンズを調節することにより、撮像素子18の撮像面上に被写体像を結像させることができ、撮影レンズ21の内のズームレンズを調節することにより、焦点距離を変化させることができる。
【0038】
絞り22は、撮影レンズ21の光路中に配置されている。絞り22は、絞り動作部25によって開口径が機械的に可変駆動される。開口径が変化することにより、撮像素子18に入射する被写体光量を変化させることができる。
【0039】
ズーム位置検出部24は、所謂ズームエンコーダを有し、撮影レンズ21の中のズームレンズの位置を検出し、絞り動作制御部23に出力する。
【0040】
次に、本実施形態におけるフリッカ判定の概要について説明する。本実施形態におけるフリッカ判定は、下記の(A)〜(C)によって行う。
【0041】
(A) 現在の測光範囲に対して、多分割した測光エリアの読出し時間から、フリッカ縞の測光エリア間隔に対応する周波数を算出する。
【0042】
(B) 測光エリア毎の測光情報に基づいて移動縞の検索し、フリッカ縞の間隔と移動を検出する。そして、検出した縞の間隔を(A)において算出した周波数範囲と照合し、照合した周波数と検出したフレーム間の縞の移動量の条件が合うかを判定し、条件が合えば、その周波数をフリッカ周波数とする。フリッカ縞が移動縞でなければ、フレームレートを変更して、再度同じ処理を実施する。フレームレートを変更する理由については、後述する。
【0043】
(C) 上記(B)でフリッカ周波数の判定ができない場合には、現在の測光エリアで検出できる周波数よりも高速のフリッカであることから、測光範囲を狭くし、その範囲で同様のエリア数に分割し、上述の(A)(B)の処理を行う。(A)から(C)の処理を繰り返すことにより、高周波のフリッカまで検出を行う。
【0044】
上述の(B)において、フレームレートを変更するのは、下記の理由による。フリッカ周波数が、フレームレートの倍数となる数値の場合、フリッカ縞は移動しない。移動しないフリッカ縞は、そのままでは物体の模様と区別が難しいため、誤検出の原因となる。そこで、本実施形態においては、縞の間隔とフレーム間の縞の移動量からフリッカ周波数の条件に合うかを確認するため、移動しないフリッカ縞になる条件では、フレームレートを変更する。なお、フレーム間でシャッタ速度(Tv)の値を切り替え、移動しないフリッカ縞の濃さが変わるかチェックし、フリッカによる縞か判断することによって、フレームレートを変えずに、フリッカ判断をすることも可能である。
【0045】
フリッカ判定は、フリッカによって発生するフリッカ縞の間隔と縞の移動を検出することによって行う。本実施形態においては、上述の(A)で述べたように、現在の測光範囲でフリッカによる輝度変化を判定できる周波数の範囲を算出する。ここで、分割測光エリア毎にフリッカ縞の有無を判定するので、検出可能なフリッカ周期は分割測光エリア単位で表される。したがって、所定の分割測光エリアにより検出可能なフリッカ周波数は、測光エリアの分割数に依存する周波数範囲として検出することができる。
【0046】
フリッカ周波数は、例えば、光源が商用電源の周波数と同じで明暗が変化する場合には、50Hzまたは60Hzとなる。しかし、LED光源等の場合には、商用電源周波数とは同じにならず、更に高周波の場合がある。フリッカ周波数が高周波の場合には、フリッカ縞の間隔が狭くなり、検出が困難となる。そこで、本実施形態においては、まず、検出可能な周波数範囲にてフリッカを検出し、この検出範囲を変えながらフリッカ検出を行う。また、検出可能なフリッカ周波数の上限は、分割測光エリアに対応する撮像素子18の画素数により制限される。これは、測光の信頼性を確保するためには、1個の分割測光エリアの画素数を所定数以上とする必要があるためである。
【0047】
図2を用いて、測光範囲を変えることにより、検出できるフリッカ周波数の範囲が変わることについて説明する。多分割された測光エリアの分割数がフリッカ縞間隔に対して少ない場合、フリッカ縞がフレームごとに移動していたとしても測光結果から縞を判別することができない。その場合、測光範囲を狭く(縮小)して同様にエリア分割を行うことでフリッカ縞間隔に対するエリアの細かさを確保する。また、フレームレートとフリッカ周波数が同期する場合は、フリッカ縞を移動させるように、例えば、フレームレート変更を行う。
【0048】
図2において、左側の外枠は測光範囲31を示し、点線で囲まれたエリアは多分割測光エリア32を示す。測光範囲31内には、11×11=121エリアの測光エリアが設けられている。また、横方向に延びた灰色のラインは、フリッカ縞33を示し、測光範囲31内には、フリッカ縞間隔35で11本のフリッカ縞が現われている。つまり、1個の測光エリアに対して1個のフリッカ縞が対応して現れている状態を示している。この場合にはフリッカ縞が存在することを判定できない。
【0049】
図2において、右側の外枠は測光範囲41を示し、この測光範囲は、
図2の左側の測光範囲31内の測光範囲41を拡大したものである。すなわち、測光範囲41は、測光範囲31の一部に新たな測光範囲として設定される。そして、設定された測光範囲41を、測光範囲31の場合と同様に分割される。点線で囲まれたエリアは多分割測光エリア42であり、測光範囲41内にも、11×11=121エリアの測光エリアが設けられている。また、横方向に延びた灰色のラインは、フリッカ縞を示し、測光範囲41内には、フリッカ縞間隔45を有する2本のフリッカ縞が現われている。
【0050】
図2の測光範囲31のフリッカ縞間隔35(フリッカ縞とフリッカ縞の間隔)は、測光エリアの縦幅に相当する個数に換算して1であるが、測光範囲を(2/縦エリア分割数)倍(
図2では、2/11=1/5.5倍)に縮小することによって、フリッカ縞間隔45を測光エリア縦幅に換算して5としている。フリッカ縞の間隔が2以上あれば、フリッカ縞の移動によるフレーム毎の測光結果の違いを検出できる。ただし、フレーム周期とフリッカ周期が同期する場合には、縞が移動せず、移動縞(異なるフレームで移動する縞)を検出することができなくなる。この場合には、フレームレートを変更して、再度確認すればよい。
【0051】
測光範囲の一部を新たな測光範囲として設定し、つまり、測光範囲を縮小(測光範囲を狭く)し、かつフレームレートを変更しても移動縞フリッカを検出できない場合には、フリッカ周波数が更に高周波数であると判定する。そして、再度、測光範囲を縮小して同様の検出・判定を、フリッカ周波数の検出の限界となる測光範囲に縮小されるまで繰り返し行う。なお、測光範囲の縮小処理は、測光範囲を狭くし、狭くした測光範囲内を縮小処理前の測光エリアの数と同等の数で、再度測光エリアを設定することをいう。なお、再設定する測光エリアの数は、前の測光エリアの数と必ずしも同じでなくてもよい。
【0052】
このように、本実施形態においては、設定した測光範囲で移動縞フリッカの検出処理を実施し、その測光範囲で検出できる周波数範囲がフリッカ周波数に該当しなければ、測光範囲の縮小処理を行い(測光範囲を狭くする)、検出できる周波数範囲を高くする処理を繰り返す。検出できなかった時のフリッカ縞の間隔が1[エリア]だった場合に、フリッカ縞の間隔を(2/縦エリア分割数)[エリア]にすることができるように、検出できなかった時の測光範囲を縮小する倍率は、(2/縦エリア分割数)[倍]とする。例えば、縦エリアの分割数が11であれば、縮小倍率は2/11=1/5.5倍とすればよい。なお、様々な光源装置、照明装置のフリッカ周波数は、一般的に知られており、このようなフリッカ周波数を予め不揮発性メモリに記憶しておく。そして、検出した周波数範囲が、記憶しているフリッカ周波数に該当するか否か判定することが可能である。
【0053】
次に、
図3A、
図3B、
図4に示すフローチャートを用いて、本実施形態におけるフリッカ検出について説明する。これらのフローは、制御部11内のCPUがメモリ(不図示)に記憶されたプログラムに従って、各部を制御することにより実行する。
【0054】
図3Aに示すフローがスタートすると、まず、1エリアの取得時間を算出する(S1)。1エリアは、
図2の測光範囲31、41等に相当し、フリッカ検出のための測光範囲は次第に狭くなる。このステップでは、撮像素子18に対して、現在設定されている測光範囲内の1エリアの画素データを読み出すための時間を算出する。
【0055】
なお、1エリア取得時間Taは、下記(1)式より算出できる。
Ta=Thd[sec]*(Ne−1)+Ti ・・・(1)
Thdは、撮像素子18の水平方向のエリア内の1ライン分の蓄積を開始する時刻を1ライン毎にずらす時間[sec]である。1ライン毎に蓄積開始時刻をずらすためのずらし時間は、例えばCOMSイメージセンサのローリングシャッタ制御の制御パラメータとして設定される。また、Neは、分割された測光エリアの縦方向画素数(縦方向ライン数)である。Tiは蓄積時間(積分時間)である。
【0056】
1エリアの取得時間を算出すると、次に、フリッカ縞の間隔に応じたフリッカ周波数の取り得る範囲の最大値と最小値を算出する(S3)。測光範囲内のフリッカ縞の間隔数xに対応する周波数の範囲は下記(2)(3)式によって算出できる。
fmin=(1/Ta)*(x) ・・・(2)
fmax=(1/Ta)*(x+1)} ・・・(3)
【0057】
また、下記(4)(5)式により算出してもよい。
fmin=(1/Ta)*INT(11/Ls) ・・・(4)
fmax=(1/Ta)*(INT(11/Ls)+1) ・・・(5)
ここで、xはフリッカ縞の間隔の数(フリッカ縞の数−1)、Lsは縞間隔(フリッカ縞とフリッカ縞の距離を測光エリアの縦幅数に換算)、fminは最小周波数、fmaxは最大周波数、Taは1エリア取得時間[sec]、*は乗算を意味する。なお、式(4)(5)については、縦エリアの分割数を11としている。
【0058】
フリッカ縞間隔に応じたフリッカ周波数の最大値と最小値を算出すると、次に、測光結果から縞間隔と縞移動量を検出する(S5)。ここでは、設定された測光範囲内で取得した画素データに基づいて、フリッカ縞と縞移動量を算出する。このステップで検出した縞間隔([エリア数]、
図2の縦方向のエリア数で表す)と、縞のフレーム間移動量([エリア数])を検出する。このステップで検出した縞間隔と、ステップS3で算出した周波数範囲(上述の式(2)(3)参照)から、フリッカ周波数の候補Aを決定する。
【0059】
ステップS5において、縞間隔と縞移動量を検出すると、次に、(a)縞自体を検出できない、または(b)前回処理でフレームレート(fps)を変更しても縞が移動しない、または(c)前回処理で「非検出」と判定されたか否かについて判定する(S7)。ここでは、ステップS5における検出の結果、フリッカ縞として検出できたか否かに基づいて判定する。なお、フリッカ縞として検出できるか否かの判定については、後述する
図4を用いて詳述する。また、後述するS23において、フレームレートを変更したにも関わらず、フレーム間でフリッカ縞の位置が移動していないか否かについて判定する。また、後述するステップS21において「非検出」と判定されたか否かを判定する。これらの(a)〜(c)のいずれか1つでも条件を満たすか否かを判定する。
【0060】
ステップS7における判定の結果、全ての条件を満たしていない場合、すなわち、縞自体を検出でき、かつ前回処理でフレームレート(fps)を変更して縞が移動し、かつ前回処理で「非検出」と判定されていない場合には、検出した縞が移動しているか否かについて判定する(S9)。ここでは、フレーム間で、フリッカ縞の位置が移動したか否かについて判定する。
【0061】
ステップS9における判定の結果、検出した縞が移動している場合、つまり複数フレーム間で縞の位置が異なると判定する場合には、縞間隔の検出結果から周波数候補Aを算出する(S11)。ここで、周波数候補Aの周波数HA[Hz]は、下記(6)式によって算出する。
HA=(fmin+fmax)/2 ・・・(6)
なお、fminは最小周波数、fmaxは最大周波数を意味する。
【0062】
周波数候補Aを算出すると、次に、周波数候補Aから演算による縞移動量を算出する(S13)。ここでは、検出した縞のフレーム間移動量と、ステップS11で算出した周波数候補Aを用いて、下記(7)によって、演算による縞のフレーム間移動量MC([エリア数])を算出する。
MC={Fr/(1/HA)}の余り*(1/Ta) ・・・(7)
ここで、Frはフレームレート周期[sec]、HAは周波数候補Aの周波数HA[Hz]、Taは1エリア取得時間[sec]を意味する。
【0063】
演算による縞移動量を算出すると、次に、検出した縞移動量が演算した縞移動量と一致するか否かについて判定する(S15)。ここでは、ステップS5にて検出した縞のフレーム間移動量と、上記(7)式に基づく演算で算出した縞のフレーム間移動量MCが同等か否かを判定する。両者の差が所定値以内であれば、同等と判定する。
【0064】
ステップS15における判定の結果、縞移動量が検出と演算で合っていれば、周波数候補A(周波数HA)をフリッカ周波数として判定し、この処理を終了する(S19)。検出した縞のフレーム間移動量と、演算で出した縞のフレーム間移動量MCが同等になったことから、周波数候補Aを正式にフリッカ周波数として決定する。
【0065】
一方、ステップS15における判定の結果、検出したフレーム間の縞移動量と演算したフレーム間の縞移動量が一致していない場合には、「非検出」と判定し、スタートから処理をやり直す(S21)。実際のフリッカ縞が、周波数候補Aとした場合のフリッカ縞の周波数と異なることから、周波数候補Aが誤っていたことになる。そこで、ステップS1に戻って、再度、フリッカ周波数の検出を行う。
【0066】
ステップS9に戻り、この判定の結果、検出した縞が移動していない場合には、フレームレートを変更し、スタートから処理をやり直す(S23)。縞のフレーム間移動量が所定値未満となる場合は、フレームレート周期とフリッカ周期が同期して縞が移動していないと判定する。フリッカ縞を移動させるため、フレームレートを変更して、ステップS1に戻り、再度演算による縞のフレーム間移動量の判定を行う。
【0067】
ステップS7に戻り、ステップS7の(a)〜(c)のいずれかの条件を満たした場合には、測光範囲を狭く(縮小)した場合の測光範囲の大きさが所定の限界に達しているか否かを判定する(S17)。ステップS7における判定の結果がYesの場合は、現状の測光範囲ではフリッカ縞を検出できない場合であり、この場合には、
図2を用いて説明したように、測光範囲を狭く(縮小)する。縮小倍率は、(2/総エリア分割数)倍である。この狭くなった測光範囲で、変更前と同じ分割数の測光エリアに分割し、フリッカ縞による輝度変化を判定できる周波数の範囲を算出するところ(ステップS1)から処理をやり直す。
【0068】
なお、ステップS17における判定にあたって、狭く(縮小)した場合の測光範囲の大きさの所定の限界は、撮像素子18の画素数に依存する。画素数が多ければ測光範囲を縮小しても十分な解像度が確保されるため、フリッカ縞の判定を行うことができる。従って、検出できるフリッカ周波数の上限は撮像素子の画素数で決まる。
【0069】
ステップS17における判定の結果、限界に達していない場合には、測光範囲を狭く(縮小)してからスタートから処理をやり直す(S25)。一方、限界に達している場合には、フリッカは無いと判定し、処理を終了する(S27)。
【0070】
このように、本実施形態におけるフローにおいては、測光範囲内の各エリアの画素データを用いて、フリッカ縞を検出し、さらにフレーム間でフリッカ縞が移動しているか否かを検出している(S5、S7、S9参照)。この結果、フリッカ縞を検出し更にフリッカ縞が移動している場合には、周波数候補Aを算出し(S11)、この周波数候補Aからフレーム間のフリッカ縞移動を演算し(S13)、この演算結果と実際のフレーム間の縞移動が一致しているかを照合し(S15)、一致していた場合には周波数候補Aをフリッカ周波数と決定している(S19)。
【0071】
また、フリッカ縞自体を検出できない等の場合には(S7Yes)、測光範囲を狭くして、再度、フリッカ検出を行うようにしている(S17、S25)。なお、ステップS23においては、フリッカ縞を移動させるため、フレームレートを変更して、再度演算による縞のフレーム間移動量の判定を行っているが、以下の変形例としてもよい。ステップS23において、フレームレートを変更せずに、電子シャッタ速度を変更する。そして、ステップS5にて、縞の移動量を検出する代わりに、電子シャッタ速度が異なるフレーム間で、移動しないフリッカ縞の濃さ(輝度)の変化量を検出する。フリッカ縞の濃さ(輝度)の変化量が所定値よりも大きい場合に、フリッカによる縞であると判断する。
【0072】
次に、
図4に示すフローチャートを用いて、ステップS7において、フリッカ縞自体を検出できるか、すなわちフリッカ判定について説明する。なお、このフリッカ判定は、所定時間間隔で処理される。この処理の概要として、撮像素子18で取得された画素データに基づく輝度値を元に、所定の周期で繰り返される撮像出力のうち、3駒連続した駒の輝度値を取得する制御で、1駒目と2駒目は同じシャッタ速で行う。3駒目は1,2駒目で制御されたシャッタ速を1段分速くし、感度を1段上げて露出レベルを維持してシャッタ速を変更する制御を行う。この3駒の輝度値を用いてフリッカ判定を行う。
【0073】
フリッカ判定のフローに入ると、まずライブビュー露出制御を行う(S51)。ここでは、輝度値に基づいて、露出レベルが適正になるような絞り値、シャッタ速、感度を算出し、算出した各値をレンズの絞り、撮像素子の電子シャッタ、感度に設定して撮像動作を行い、撮像出力を取得する。続いて、1駒目の輝度値を取得する(S53)。ここでは、撮像出力に基づいて各エリアの輝度を算出する。なお、輝度値は測光値と同じ意味としている。また各エリアは、前述の測光エリア、分割測光エリアに相当する。
【0074】
1駒目の輝度値を取得すると、次に、ステップS51と同様に、ライブビュー露出制御を行い(S55)、つまり、1駒目とそれぞれ同じ絞り値、シャッタ速(電子シャッタ速)、感度に設定して露出を実行し撮像出力より、2駒目の輝度値を取得する(S57)。ここでは、2駒目の撮像出力に基づいて各エリアの輝度を算出する。
【0075】
2駒目の輝度値を取得すると、次に、制御値変更、すなわちシャッタ速を+1段、感度値(ISO感度)を+1段する(S59)。ここでは、ステップS53で制御した絞り値、シャッタ速、感度のうち、シャッタ速を1段分速くする。シャッタ速を高速にした分により露出がアンダーにならないように感度を1段増加させる。そして3駒目の撮像動作を行い、撮像出力を取得する。続いて、3駒目の撮像出力に基づいて、各エリアの輝度値を取得する(S61)。
【0076】
3駒目の輝度値を取得すると、続いて、1、2駒目の変動量を算出する(S63)。ここでは、1駒目と2駒目で得られた各エリアの輝度値について対応するエリア毎に輝度値の差分を算出する。
【0077】
次に、2、3駒目の変動量を算出する(S65)。ここでは、2駒目と3駒目で得られた各エリアの輝度値について、対応するエリア毎に輝度値の差分を変動量として算出する。ステップS63、S65において、エリア毎に撮像素子の積分時間(シャッタ速)が同じ2つの駒の輝度変化と積分時間(シャッタ速)が異なる2つの駒の輝度変化をそれぞれ変動量として取得できる。
【0078】
変動量を算出すると、次に、2、3駒目の変動量の変化が大か否かを判定する(S67)。ステップS65で得られた2、3駒目の各エリアの変動量のうちの最大値と最小値の差「3駒目−2駒目の変動量の振幅」が、ステップS63で得られた1、2駒目の各エリアの変動量のうちの最大値と最小値の差「2駒目−1駒目の振幅」よりも十分大きいかどうかを比較し、十分大きいと判断された場合に、2、3駒目の変動量の変化が大と判定し、フリッカ判定のうちの一つの条件に該当したと判定するものである。
【0079】
ステップS67における判定の結果、2、3駒目の変動量の変化が大の場合には、次に、周期性評価に該当するか否かを判定する(S69)。ここでは、縞の現れ方がフリッカの周期性に該当するか否か、すなわち、縞の本数、縞の間隔、縞の移動量がフリッカの特性に該当するか否に基づいて判定する。
【0080】
ステップS69における判定の結果、周期性評価に該当する場合は、フリッカと判定する(S75)。一方、ステップS67またはステップS69における判定結果がNoの場合には、フリッカがないと判定する。フリッカ判定を行うと元のフローに戻る。
【0081】
なお、ステップS67No、またはステップS69Noの場合は、次のような処理を行ってもよい。1、2駒目の変動量の変化が大か否かを判定する。そして、1、2駒目の変動量の変化が所定値より大きい場合は、前述と同様に周期性評価に該当するか否かを判定する。そして、周期性評価に該当する場合は、フリッカありと判定する。これは、フリッカ周期がフレーム周波数に同期しない条件の場合には、1、2駒目の変動量の変化が大きいので、このフリッカ状況を判定してフリッカありとするものである。また、1、2駒目の変動量の変化が所定値以下の場合、または周期性評価に該当しない場合は、フリッカなしと判定する。
【0082】
また、各駒の積分時間を異なるものにする場合は、移動しないフリッカ縞の濃さをチェックする手法をとる場合のみに適用する。基本的には、共通の積分時間で比較する。また、フリッカ縞の検出に関して、縞の本数、縞の間隔がフリッカの条件として成立か否かの判定にあたって、複数フレームに亘り監視することにより、手ぶれによる模様の移動に基づいて誤検出を防止することができる。
【0083】
次に、測光範囲と表示範囲の関係について説明する。本実施形態においては、フリッカ検出を行うために測光範囲が変化することがある。この測光範囲の変化に合わせて表示範囲を変えようにすることが考えられるが、ユーザの観点からみると、表示画面の拡大率が勝手に変わっていき見栄えが悪い。そこで、メニュー操作で高周波フリッカ検出モードが設定された場合には、表示用の露出を固定(AEL)し、カメラは全画面表示を継続する。自動露出制御(AE)用の測光範囲は表示のサイズに依存することはないので、フリッカ検出用に測光範囲を内部的に変更(縮小)しながら一定の分割数でエリア分割して、上述の(B)の検出処理を行う。
【0084】
フリッカ検出処理が完了したら、結果をユーザに表示し、また露出設定値演算部12に提供し、露出制御に反映させる。なお、本実施形態においては、フリッカ検出の結果は、フリッカ周期にシャッタ速度Tvを同期させ、フリッカを消去するような露出設定に利用される事を想定している。このように、ユーザにフリッカ検出処理の際に、測光範囲の縮小に対応するような拡大表示を見せることなく表示範囲を一定する。
【0085】
次に、
図5を用いて、測光範囲と表示範囲の関係の詳細について説明する。表示画像51は、フリッカ検出した際のカメラ情報表示部15に表示されるライブビュー画像である。表示画像51中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光エリア61である。また、複数の測光エリア61の外枠が測光範囲62である。なお、Obは主被写体である。測光エリアを示す破線は、ユーザに認識させる必要がない場合は、カメラ情報表示部15に表示しなくてもよい。主要被写体の画像に重畳して表示され見にくくなることを防止する効果がある。また、測光エリアの外枠(実線)だけを表示するようにしてもよい。
【0086】
表示画像51は、前述した通り高周波フリッカの検出開始時であり、この状態では、カメラ情報表示部15は、高周波フリッカの検出開始直前の露出で固定(AEL)し、全画面表示を行っている。また、露出設定値演算部12は、移動縞フリッカ検出処理を実施する。
【0087】
表示画像52は、表示画像51の表示時にフリッカを検出できなかった場合に、再度、フリッカ検出を行う際(
図3A:S7(Yes)→S17(No)→S25)の表示画像である。表示画像52中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア63である。また、複数の測光エリア63の外枠が測光範囲64である。測光範囲64は、前述のようにフリッカ、算出され、測光範囲64のサイズは測光範囲62よりも狭いが、各測光範囲内の測光エリアの分割数は同じであるので、測光エリア63のサイズは測光エリア61よりも狭くなっている。測光範囲として縮小する中心位置は、主要被写体Obの位置(たとえば、主要被写体Obの中心)としている。主要被写体としては、AF位置、顔検出位置、手動で設定された露出エリア等、いずれかの手段によって決定する。
【0088】
表示画像52が表示されている状態では、カメラ情報表示部15は、高周波フリッカの検出開始直前の露出で固定(AEL)し、全画面表示を行っている。また、露出設定値演算部12は、前述したように測光範囲を縮小して、縮小した測光エリアの分割を行い、分割した測光エリアでの検出結果に基づいて移動縞フリッカ検出処理を実施する。
【0089】
表示画像53は、表示画像52の表示時にフリッカを検出できなかった場合に、再度、フリッカ検出を行う際の表示画像である。表示画像53中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア65である。また、複数の測光エリア65の外枠が測光範囲66である。測光範囲66のサイズは測光範囲64よりも狭いが、各測光範囲内の測光エリアの分割数は同じであるので、測光エリア65のサイズは測光エリア63よりも狭くなっている。
【0090】
表示画像53が表示されている状態では、カメラ情報表示部15は、高周波フリッカの検出開始直前の露出で固定(AEL)し、全画面表示を行っている。また、露出設定値演算部12は、さらに測光範囲を縮小して測光エリアの分割を行い、移動縞フリッカ検出処理を実施する。
【0091】
表示画像54は、表示画像53の表示時にフリッカを検出できなかった場合で、かつ更に測光範囲の縮小の限界に達した場合(
図3BのS17Yes)、すなわち、高周波フリッカの検出終了時の表示画像である。表示画像54中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア67である。また、複数の測光エリア67の外枠が測光範囲68である。測光範囲68は、測光範囲の減縮の限界に達したことから、表示画像51の際の通常状態に戻る。
【0092】
表示画像54が表示されている状態では、カメラ情報表示部15は、高周波フリッカの検出開始直前の露出固定(AEL)を解除し、通常表示状態に戻る。また露出設定値演算部12は、「非検出」の判定結果を露出設定値演算部12内の露出制御ブロックに伝え、測光範囲を通常状態に戻す。また、フリッカを「非検出」であったことをユーザに表示してもよい。
【0093】
表示画像55は、表示画像51、52、または53の状態でフリッカを検出することができた場合の表示画像である。表示画像55中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア69である。また、複数の測光エリア69の外枠が測光範囲70である。測光範囲70は、フリッカを検出できたことから、表示画像51の際の通常状態に戻る。
【0094】
表示画像55が表示されている状態では、高周波フリッカの検出開始直前の露出固定(AEL)を解除し、通常表示状態に戻る。露出設定値演算部12は、測光エリアを通常状態に戻し(測光エリア69参照)、検出した周波数の判定結果を露出設定値演算部12内の露出制御ブロックに伝え、フリッカ周期にシャッタ速度Tvを同期させ、フリッカを消去するような露出設定を行う。また、フリッカが検出されたことをユーザに表示してもよい。
【0095】
次に、ユーザがフリッカ周期に、手動でシャッタ速度Tvを同期させ、フリッカを消す処理を行う場合について説明する。この場合には、ユーザが背面パネル等に表示されるフリッカ縞を確認しながら、シャッタ速度Tvを手動操作して縞を消すことになる。そして、背面パネル等に画像を表示する際の露出制御用のシャッタ速度Tvと、静止画撮影時の露出制御用のシャッタ速度Tvを同じ値とすることにより、静止画撮影による画像にフリッカが生じないように設定することができる。
【0096】
静止画を電子シャッタで撮影する(この時の撮影を「電子シャッタスチル」と称す)際に生じてしまうフリッカ縞を、ユーザが確認しながら縞を消す場合、フリッカ縞の見え方を静止画撮影時と同等にするため、ライブビュー表示時の撮像の駆動モード(画素数、幕速等)を、ライブビュー画像と電子シャッタスチルで同じにする必要がある。しかし、一般的に静止画用に使用する撮像の駆動モードは画素数が多いため、撮像素子および周辺回路の消費電力が高くなってしまう。そこで、ライブビュー表示を行う際には電子シャッタスチル用とは別に消費電力の低い駆動モードを常用する事が多い。
【0097】
本実施形態においては、消費電力の面からも、通常のライブビュー表示とは別にフリッカ検出・除去に特化したモードとして、別の表示モード「LEDフリッカ対応モード」をユーザが選択・設定できるものとする。LEDフリッカ対応モードが設定された場合には、ライブビュー表示用の撮像駆動モード(撮像素子18および撮像制御部17の制御モード)を電子シャッタスチルの撮像と同じ駆動モードに設定し、表示することが望ましい。これによって、ライブビュー表示された際に発生するフリッカ状態が電子シャッタスチルにて撮像する画像と同等になる。ユーザは細かくシャッタ速度Tvを調節することによって、ライブビュー表示を目視しながら電子シャッタスチルにて撮像する画像におけるフリッカ除去の確認をすることができる。
【0098】
LEDフリッカ対応モードの補助機能として、上述したフリッカ判定の概要の処理(A)(B)を実行する「LEDフリッカ検出機能」を、ユーザ操作により実行するようする。ユーザが「LEDフリッカ検出機能」の実行を開始させると、処理(A)(B)が実行され、フリッカ検出処理が行われる。この処理中は露出固定となり、ユーザは処理完了待ちの状態になる。
【0099】
フリッカ検出処理が完了すると、以下に示す(i)〜(iv)が行われることによって、ユーザが手動でフリッカを除去することができる。
【0100】
(i) フリッカ検出結果に従って、フリッカの有り・無しの情報を画面上に表示する(ガイド表示)。
(ii) フリッカ有りが表示される場合には、フリッカを除去できるシャッタ速度Tv候補の範囲の情報を画面上に表示する(ガイド表示)。
【0101】
(iii) 上記(ii)で示したシャッタ速度Tv候補の範囲に、ワンタッチでシャッタ速度Tvを設定できる操作手段を設けておく。操作手段としては、例えば、ボタン割り当てやタッチ操作等がある。これは、ユーザが手動でシャッタ速度Tvを細かく調節してフリッカを除去する場合、シャッタ速度の分解能が高いため、シャッタ速度Tvの選択肢が多岐にわたり、目的のシャッタ速度Tvにユーザが合わせるまで時間がかかってしまう。そこで、ワンタッチ操作によってシャッタ速度Tvを設定するようにしておくことが望ましい。
(iv) 上記(iii)でシャッタ速度Tvをワンタッチ操作した後、完全にフリッカ周波数と同期するシャッタ速度Tvでない場合には、ユーザが微小なズレを手動で補正する。
【0102】
このように、本発明の一実施形態においては、多分割した測光エリアの測光結果から縞を検出する手段と、測光範囲を変えながら測光エリアを分割する手段とを設け、高周波フリッカまで、広範囲の周波数でフリッカを検出することができる。本発明の一実施形態においては、下記(1)〜(3)の処理を行う。
【0103】
(1) 現在測光範囲に対して、多分割した測光エリアの読み出し時間から、フリッカ縞の測光エリア間隔に対応する周波数の範囲を算出することができる(例えば、式(2)(3)、
図3AのS3参照)
【0104】
(2) 測光エリアごとの測光情報から移動縞の検出を実施しフリッカ縞の間隔と移動量を検出する。そして、検出した縞の間隔を上述の(1)で算出した周波数範囲に照らし合わせ、照らし合わせた周波数と検出したフレーム間の縞の移動量の条件が合うか確認する(例えば、
図3AのS7参照)。条件が合えば、その周波数をフリッカ周波数として判定する。また、フリッカ縞が、移動縞でなければフレームレートを変更して再度同じ処理を実施する(
図3BのS23参照)。なお、フレームレートを切り替えずにフリッカ周波数を検出する場合には、フレーム間でシャッタ速度Tvの値を切り替え、移動しないフリッカ縞の濃さが変わるかチェックし、フリッカによる縞か判断する。
【0105】
(3) 上述の(2)でフリッカ周波数を判定できない場合は現在の条件より高速のフリッカ周波数であると判定し、測光範囲を狭くし、その範囲で同様のエリア数に分割して、上述の(1)の処理へ戻る(例えば、
図3BのS17No、S25参照)。上述の(1)〜(3)の処理を繰り返し、高周波のフリッカまで検出を行う。
【0106】
また、本発明の一実施形態においては、上述の(1)(2)をカメラの撮影待機中に処理実施する。メニュー操作で、高周波フリッカ検出モードに入ったら、表示用の露出を固定(AEL)し、カメラは全画面表示を継続する。AE用の測光範囲は表示することなく、カメラの電気的処理として変更(縮小)しながら一定のエリア分割を行い、フリッカ検出を行う。ユーザには、測光範囲の拡大表示を見せることなく実施させている。
【0107】
このように、本発明の一実施形態においては、撮像素子の撮像範囲を複数の領域に分割し、撮像素子が出力する画素信号に基づいて分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出している(例えば、
図2、
図3AのS5、
図5等参照)。そして、フリッカ縞が検出できたか否かを判別し(例えば、
図3AのS7参照)、フリッカ縞が検出できないと判別された場合に、分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う(例えば、
図3BのS17、S25参照)。このため、ユーザが簡単にフリッカキャンセルを行うことができる。すなわち、フリッカ縞を検出できない場合には、フリッカ縞を検出する範囲を縮小して行うことより、フリッカ縞を検出しやすくなる。
【0108】
なお、本発明の一実施形態においては、フリッカ判定処理は主としてプログラムに従ってCPUがソフトウエアで処理している(
図3A、
図3B、
図4参照)。しかし、ソフトウエアに限らず、一部または全部をハードウエアで実行するようにしてもよい。
【0109】
また、本発明の一実施形態においては、露出設定値演算部12、絞り値送受信部13、シャッタ速・感度動作制御部14、カメラ情報表示部15、測光制御部16を制御部11の内部構成とし、CPUによってソフトウエア的に実行する部分と、ハードウエアによって構成される部分を有している。しかし、これに限らず、制御部11とは別体の構成としても勿論かまわない。また、ヴェリログ(Verilog)によって記述されたプログラム言語に基づいて生成されたゲート回路等のハードウエア構成でもよく、またDSP(Digital Signal Processor)等のソフトを利用したハードウエア構成を利用してもよい。これらは適宜組み合わせてもよいことは勿論である。また、CPUの機能の一部をDSP等のプログラムコードで実行される回路で実現するようにしてもよく、ヴェリログによって記述されたプログラム言語に基づいて生成されたゲート回路等のハードウエア構成でもよく、またハードウエア回路によって実現するようにしてもよい。
【0110】
また、本発明の一実施形態においては、撮影のための機器として、デジタルカメラを用いて説明したが、カメラとしては、デジタル一眼レフカメラでもミラーレスカメラでもコンパクトデジタルカメラでもよく、ビデオカメラ、ムービーカメラのような動画用のカメラでもよく、さらに、携帯電話、スマートフォン、携帯情報端末、パーソナルコンピュータ(PC)、タブレット型コンピュータ、ゲーム機器等に内蔵されるカメラ、医療用カメラ、顕微鏡等の科学機器用のカメラ、自動車搭載用カメラ、監視用カメラでも構わない。いずれにしても、フリッカが発生する可能性のある撮影のための機器であれば、本発明を適用することができる。
【0111】
また、本明細書において説明した技術のうち、主にフローチャートで説明した制御に関しては、プログラムで設定可能であることが多く、記録媒体や記録部に収められる場合もある。この記録媒体、記録部への記録の仕方は、製品出荷時に記録してもよく、配布された記録媒体を利用してもよく、インターネットを介してダウンロードしたものでもよい。
【0112】
また、特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず」、「次に」等の順番を表現する言葉を用いて説明したとしても、特に説明していない箇所では、この順で実施することが必須であることを意味するものではない。
【0113】
本発明は、上記実施形態にそのまま限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素の幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
上記フリッカ縞が存在すると予想される第1の分割領域と第2の分割領域の上記撮像素子上の間隔と、上記第1の分割領域と第2の分割領域に対応する蓄積時刻の差に基づいて上記フリッカ縞に対応するフリッカの周波数を算出するフリッカ周波数算出手段を、具備することを特徴とする請求項1に記載の撮像装置。
上記判別手段は、フリッカ縞検出手段によりフリッカ縞を検出させ、フリッカ縞が存在する分割領域の上記撮像素子上での間隔に基づいてフリッカ縞が検出できたか否かを判別することを特徴とする請求項1に記載の撮像装置。
上記判別手段は、上記フリッカ縞が存在する分割領域の上記撮像素子上での間隔の差と上記フリッカの周波数に基づいてフリッカ縞が検出できたか否かを判別することを特徴とする請求項3に記載の撮像装置。
上記フリッカ縞検出手段は、上記撮像素子による第1のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、
上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第2のフレームレートで撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する、
ことを特徴とする請求項1乃至4のいずれか一項に記載の撮像装置。
上記フリッカ縞検出手段は、上記撮像素子による第1のフレームレート、及び第1の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出し、
上記判別手段は、上記フリッカ縞が存在すると予想される分割領域の位置が変化するか否かを判別し、変化しないと判別する場合に、上記フリッカ縞検出手段は、上記撮像素子により第2の電子シャッタ速度で撮像動作を実行させ、異なる撮像動作による画素信号に基づいてフリッカ縞が存在すると予想される分割領域を検出する、
ことを特徴とする請求項1乃至4のいずれか一項に記載の撮像装置。
第8の発明に係るフリッカ検出方法は、光学系を介して被写体像を撮像する撮像素子を有する撮像装置におけるフリッカ検出方法において、上記撮像素子の撮像範囲を複数の領域に分割し、上記撮像素子が出力する画素信号に基づいて上記分割された領域を測光してフリッカ縞が存在すると予想される分割領域を検出し、上記フリッカ縞が検出できたか否かを判別し、上記フリッカ縞が検出できないと判別された場合に、上記分割領域の面積を縮小してフリッカ縞が存在すると予想される分割領域の検出を行う。
検索し、フリッカ縞の間隔と移動を検出する。そして、検出した縞の間隔を(A)において算出した周波数範囲と照合し、照合した周波数と検出したフレーム間の縞の移動量の条件が合うかを判定し、条件が合えば、その周波数をフリッカ周波数とする。フリッカ縞が移動縞でなければ、フレームレートを変更して、再度同じ処理を実施する。フレームレートを変更する理由については、後述する。
れば、周波数候補A(周波数HA)をフリッカ周波数として判定し、この処理を終了する(S19)。検出した縞のフレーム間移動量と、演算で出した縞のフレーム間移動量MCが同等になったことから、周波数候補Aを正式にフリッカ周波数として決定する。
:S7(Yes)→S17(No)→S25)の表示画像である。表示画像52中の破線で囲まれ、格子状の位置に配置された枠は、分割された複数の測光範囲エリア63である。また、複数の測光エリア63の外枠が測光範囲64である。測光範囲64は、前述のようにフリッカ、算出され、測光範囲64のサイズは測光範囲62よりも狭いが、各測光範囲内の測光エリアの分割数は同じであるので、測光エリア63のサイズは測光エリア61よりも狭くなっている。測光範囲として縮小する中心位置は、主要被写体Obの位置(たとえば、主要被写体Obの中心)としている。主要被写体としては、AF位置、顔検出位置、手動で設定された露出エリア