(57)【特許請求の範囲】
【請求項１】
撮像素子と、
蓄積時間が互いに異なる第１の画像信号および第２の画像信号を並行して蓄積するように前記撮像素子を駆動する駆動手段と、
前記撮像素子から出力される前記第１の画像信号および前記第２の画像信号の除算処理を行い、前記撮像素子の全ラインの画像信号を読み出す期間に対応する前記除算処理の結果から１を引いた値の絶対値の積分処理を行うことにより１フレームの画像内の光量変動の有無を検出する検出手段と、
を備えることを特徴とする撮像装置。
【請求項２】
撮像素子と、
蓄積時間が互いに異なる第１の画像信号および第２の画像信号を全画素において並行して蓄積するように前記撮像素子を駆動する駆動手段と、
前記撮像素子から出力される前記第１の画像信号および前記第２の画像信号の減算処理を行い、前記撮像素子の全ラインの画像信号を読み出す期間に対応する前記減算処理の結果の絶対値の積分処理を行うことにより１フレームの画像内の光量変動の有無を検出する検出手段と、
を備えることを特徴とする撮像装置。
【請求項３】
前記検出手段は前記１フレームの画像内の光量変動をさらに検出し、前記撮像素子による撮像条件を、前記検出手段により検出される前記光量変動に応じて変更する調整手段をさらに備えることを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記撮像条件とは、前記撮像素子における蓄積時間を含むことを特徴とする請求項３に記載の撮像装置。
【請求項５】
前記光量変動は、１フレームの画像内に現れる光量変動の周波数、光量変動の振幅、光量変動の位相の少なくとも１つを含むことを特徴とする請求項３に記載の撮像装置。
【請求項６】
前記第１の画像信号および前記第２の画像信号は、前記撮像素子において、画像信号の一方向に正規化されて出力されることを特徴とする請求項１乃至５のいずれか１項に記載の撮像装置。
【請求項７】
前記正規化とは、前記画像信号のライン方向における積分を含むことを特徴とする請求項６に記載の撮像装置。
【請求項８】
前記検出手段は前記１フレームの画像内の光量変動をさらに検出し、前記検出手段で検出された前記光量変動に基づいて、前記第１の画像信号と前記第２の画像信号のうちの少なくとも１つの画像信号を補正するための補正値を生成する生成手段と、前記補正値を、前記少なくとも１つの画像信号に対して適用することで、該少なくとも１つの画像信号を補正する補正手段と、をさらに備えることを特徴とする請求項１または２に記載の撮像装置。
【請求項９】
撮像素子を備える撮像装置を制御する方法であって、
蓄積時間が互いに異なる第１の画像信号および第２の画像信号を並行して蓄積するように前記撮像素子を駆動する駆動工程と、
前記撮像素子から出力される前記第１の画像信号および前記第２の画像信号の除算処理を行い、前記撮像素子の全ラインの画像信号を読み出す期間に対応する前記除算処理の結果から１を引いた値の絶対値の積分処理を行うことにより１フレームの画像内の光量変動の有無を検出する検出工程と、
を有することを特徴とする撮像装置の制御方法。
【請求項１０】
撮像素子を備える撮像装置を制御する方法であって、
蓄積時間が互いに異なる第１の画像信号および第２の画像信号を全画素において並行して蓄積するように前記撮像素子を駆動する駆動工程と、
前記撮像素子から出力される前記第１の画像信号および前記第２の画像信号の減算処理を行い、前記撮像素子の全ラインの画像信号を読み出す期間に対応する前記減算処理の結果の絶対値の積分処理を行うことにより１フレームの画像内の光量変動の有無を検出する検出工程と、
を有することを特徴とする撮像装置の制御方法。
【請求項１１】
請求項９または１０に記載の制御方法の各工程をコンピュータに実行させるためのプログラム。
【請求項１２】
請求項９または１０に記載の制御方法の各工程をコンピュータに実行させるためのプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置及びその制御方法に関するものである。
【背景技術】
【０００２】
撮像素子を用いた撮像装置において、蛍光灯照明下の被写体を撮影する場合、撮像された画像に周期的な明暗が現れることがある。この現象は蛍光灯フリッカと呼ばれ、商用電源周波数と撮像装置の垂直同期周波数との関係により発生するものである。このような撮像素子を用いて撮像された画像上に含まれる点滅光源による周期的な輝度変動を検出及び補正する技術として、特許文献１が挙げられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２２２２２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の特許文献１に記載の構成では、被写体の成分を精度よく除去してフリッカを検出することが困難であるといった問題がある。動画撮影の様に連続したフレームで撮影している場合、被写体が動いていなければフレーム間の比較演算により被写体の信号成分をキャンセルし、画像信号上に重畳しているフリッカのみを抽出することが可能である。しかし、被写体が動いている場合、あるいは、撮像装置が動いている場合は、フレーム間の比較演算の結果として、フリッカのみの成分だけでは無く、被写体の成分が残留してしまう。
【０００５】
また、撮像装置における撮像周期（いわゆるフレームレート）とフリッカの周波数の比が、１：Ｎ （Ｎは、自然数）の関係にある場合では、フレーム間の比較演算をすることで、画像信号上に重畳されているフリッカそのものがキャンセルされてしまい、フリッカを検出することができなくなってしまう課題があった。
【０００６】
本発明は上述した課題に鑑みてなされたものであり、その目的は、より精度良く画像中のフリッカを検出できる撮像装置を提供することである。
【課題を解決するための手段】
【０００７】
本発明に係わる撮像装置は、撮像素子と、蓄積時間が互いに異なる第１の画像信号および第２の画像信号を並行して蓄積するように前記撮像素子を駆動する駆動手段と、前記撮像素子から出力される前記第１の画像信号および前記第２の画像信号の除算処理を行い、前記撮像素子の全ラインの画像信号を読み出す期間に対応する前記除算処理の結果から１を引いた値の絶対値の積分処理を行うことにより１フレームの画像内の光量変動の有無を検出する検出手段と、を備えることを特徴とする。
また、本発明に係わる撮像装置は、撮像素子と、蓄積時間が互いに異なる第１の画像信号および第２の画像信号を全画素において並行して蓄積するように前記撮像素子を駆動する駆動手段と、前記撮像素子から出力される前記第１の画像信号および前記第２の画像信号の減算処理を行い、前記撮像素子の全ラインの画像信号を読み出す期間に対応する前記減算処理の結果の絶対値の積分処理を行うことにより１フレームの画像内の光量変動の有無を検出する検出手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、より精度良く画像中のフリッカを検出できる撮像装置を提供することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態の撮像装置の構成を示すブロック図。
【図２】第１の実施形態の撮像素子の構成を示すブロック図。
【図３】撮像素子の画素部の構成を示す模式図。
【図４】第１の実施形態の撮像装置の動作を示すフローチャート。
【図５】撮像素子の蓄積の様子を示すタイミングチャート。
【図６】比較演算式の分母分子を極座標形式で示した図。
【図７】比較演算式の分母分子が同じ値になるときの条件を示した図。
【図８】本発明の第２の実施形態の撮像装置の構成を示すブロック図。
【図９】第２の実施形態の動作を示すフローチャート。
【図１０】撮像素子が積層型である例を示す図。
【図１１】本発明の第４の実施形態の携帯電話機の構成を示すブロック図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。
【００１１】
（第１の実施形態）
図１は、本発明の第１の実施形態に係わる撮像装置１００の構成を示すブロック図である。図１において、撮像素子１０１は、不図示の被写体で反射された光を結像させる光学系を通った光を電気信号に変換し、複数の画像信号として独立に出力する。フリッカ検出部１０２は、撮像素子１０１から得られる複数の画像信号に基づいて画像内に重畳している照明強度の変化であるフリッカを検出する。駆動調整部１０３は、フリッカ検出部１０２から得られるフリッカ情報に基づき、後述する撮像素子駆動部１０４に対して撮像素子１０１の駆動情報（変更情報）を送信する。撮像素子駆動部１０４は、撮像素子１０１の駆動情報を送信する。制御部１０５は、撮像装置１００全体の制御を司る。
【００１２】
次に図２、図３を用いて、本実施形態における撮像素子１０１の構成について説明する。本実施形態における撮像素子１０１は、ＸＹアドレス型の走査方法をとる、例えばＣＭＯＳイメージセンサである。図２においては、説明を分かり易くするために６行×７列分の画素部２０１を示しているが、実際には通常、数十万〜数千万の画素部２０１が並べられている。実際の撮像素子は画素部２０１が所定のアスペクト比で２次元に配置される。また、画素部２０１毎にＲ、Ｇ、Ｂいずれかの色相のカラーフィルタにより覆われていてもよく、例えば、Ｒ、Ｇ、Ｂのカラーフィルタがベイヤー配列に並べられるようにしてもよい。
【００１３】
図３は、画素部２０１の詳細を示した図である。例えばフォトダイオード等の光電変換素子３０１は、被写体からの光を電荷に変換する。フローティングディフュージョン部（以下、ＦＤ)３０３は、光電変換部３０１で発生した電荷を一時的に蓄積しておく蓄積領域となる部分である。転送スイッチ３０２は、転送パルスｔｘによってオンオフ制御され、光電変換部３０１で発生した電荷をＦＤ３０３に転送する。リセットスイッチ３０４は、リセットパルスｒｅｓによってオンオフ制御され、ＦＤ３０３に蓄積された電荷を除去する。増幅ＭＯＳアンプ３０５は、ソースフォロアとして機能する。転送スイッチ３０２、リセットスイッチ３０４のゲート電極は、行および列方向にそれぞれ転送パルスｔｘ、リセットパルスｒｅｓを供給する信号線にそれぞれ接続され、不図示の走査回路によって選択走査される。選択スイッチ３０６，３０７は、選択パルスｓｅｌ１、ｓｅｌ２によってオンオフ制御され、増幅ＭＯＳアンプ３０５の出力をそれぞれ列出力線３０８，３０９に接続する。そして、選択スイッチ３０６，３０７のゲート電極は、行および列方向にそれぞれ選択パルスｓｅｌ１、ｓｅｌ２を供給する信号線にそれぞれに接続され、不図示の走査回路によって選択走査される。不図示の走査回路は、撮像素子駆動部１０４からの撮像素子駆動情報により、複数配置された画素部２０１からの画像信号の読み出しに応じて、転送スイッチ３０２、リセットスイッチ３０４、および選択スイッチ３０６，３０７を選択制御する。
【００１４】
再び図２に戻って、撮像素子１０１の説明を続ける。列ＡＤ変換部２０２は、画素部２０１から列方向に読み出された信号をデジタル信号に変換する。列ＡＤ変換部２０２は、各列に電圧比較器（コンパレータ）とカウンタを備えている。そして、コンパレータの一端には画素からの信号がアナログ信号として入力され、もう一端にはランプ波形を印加し、各列の比較器が反転した時のカウンタの値により、デジタルデータへの変換を実現する、いわゆるシングルスロープ方式で構成されている。なお、ＡＤ変換方式としてはこの方式に限られるものではなく、他のＡＤ変換方式の列ＡＤ変換部を用いてもかまわない。
【００１５】
行メモリ部２０３は、列ＡＤ変換部２０２から出力されたデジタルデータを一時的に記憶する。行方向転送部２０４は、行メモリ部２０３に記憶されたデジタルデータを順番に読み出す部分で、行メモリ部２０３のアドレスを制御し、デジタルデータを選択して出力する。シリアライザ２０５は、行方向転送部２０４から出力されたデジタル信号を、所定のフォーマットに変換する。所定のフォーマットとは、たとえば、標準規格として良く知られているＬＶＤＳなどの差動伝送フォーマットであり、その目的はデジタル信号を小振幅電圧で伝送することで、撮像装置の消費電力を抑えることである。
【００１６】
なお、本実施形態においては、シリアライザ２０５によるフォーマット変換を特定のものに限定するものではない。特には、将来的に開発される同種の様々なシリアライザ（目的、効果を同じとするもの）が選択され、搭載されることが望ましい。シリアライザ２０５によってフォーマット変換が成されたデジタル信号は、図中２つの行方向転送部２０４から入ってくる画像信号を、それぞれ第１の画像信号、第２の画像信号として出力する。以下、本実施形態では、第１の画像信号を記録表示のための画像信号、第１の画像信号以外の第２の画像信号をフリッカ検出補正用の画像信号として取り扱うものとして説明を進める。
【００１７】
図５は、撮像素子１０１における、撮像素子１０１を構成する画素部２０１から読み出される第１の画像信号５０７と第２の画像信号５０８の電荷蓄積の様子を示したタイミングチャートである。説明を分かりやすくするため、撮像素子１０１に配置された画素部２０１から全ての画像信号が読み出されるものとして図示しており、行方向（水平方向）にＭ画素、垂直方向（列方向）にＮ画素あるとしている。第１の画像信号を取得するための垂直同期信号５０１と第２の画像信号を取得するための垂直同期信号５０２は撮像装置の撮影方式で決定されるものであり、周期Ｔで繰り返されている。垂直同期信号５０１、垂直同期信号５０２は制御部１０５によって制御され、撮像素子１０１を駆動するタイミングを決定している。なお、本タイミングチャートは、横軸は時間軸となっている。
【００１８】
垂直同期信号５０１の周期に従って撮像素子１０１から第１の画像信号を読み出すタイミング５０３、第２の画像信号を読み出すタイミング５０５で示されるように、本実施形態では、いわゆるＣＭＯＳセンサの特徴である線順次走査方式で第１の画像信号と第２の画像信号が読み出される。また、図５の様に、垂直同期信号の周期Ｔのタイミングで、繰り返し読み出される仕組みを持つ。
【００１９】
各ラインにおいて、第１の画像信号の電荷リセットのタイミング５０４及び第１の画像信号の読み出しタイミング５０３で挟まれた区間が光を受光する蓄積時間Ｔｍになるように制御される。また、各ラインにおいて、第２の画像信号の電荷リセットのタイミング５０６及び第２の画像信号の読み出しタイミング５０５で挟まれた区間が光を受光する蓄積時間Ｔｓになるように制御される。
【００２０】
第１の画像信号は、記録表示用の蓄積時間Ｔｍで撮影されているため、撮影条件下にフリッカが発生するような点滅光源が存在した場合に、必ずしも画像信号上にフリッカが重畳しているとは限らない。たとえば、点滅光源の周波数が１００Ｈｚだった場合、蓄積時間ＴｍがＮ／１００秒（Ｎは、自然数）に設定されていると、第１の画像信号の各ラインにおいて受光量がそろうため、画像信号上に点滅光源による影響が現れなくなる。この現象は、簡易的に点滅光源による影響をなくす方法として従来より知られている。
【００２１】
次に、図４を参照して、本実施形態における処理フロー、特にフリッカの検出方法について説明する。ステップＳ４０１からステップＳ４０４は、画像信号中にフリッカが重畳されているか否かを判定するループである。ステップＳ４０１では、画像信号からフリッカの原因となる点滅光源の有無を判定するために、第２の画像信号の蓄積時間Ｔｓをフリッカが発生する蓄積時間に設定する。一般的にインバータの付いていない蛍光灯の点滅周期は、商用交流電源の周波数の倍となるため、第２の画像信号の蓄積時間Ｔｓを１／１２０秒より小さい値に設定する。また、第１の画像信号の蓄積時間Ｔｍと同じ蓄積時間にならないように第２の画像信号の蓄積時間Ｔｓを設定する。また、ＬＥＤ照明などに見られるＰＷＭ（Pulse Width Modulation）を用いた点滅光源の場合、予めその点滅周期が分からないことがある。しかし、第１の画像信号の蓄積時間Ｔｍと第２の画像信号の蓄積時間Ｔｓの差を小さくするように設定することで、差分の逆数の周波数まで検出することが可能となる。
【００２２】
ステップＳ４０２では、第１の画像信号と第２の画像信号の露出レベルを調整する。露出レベルは、撮像装置を構成する光学系のＦ値、蓄積時間、ゲインで決定され、かつ画像信号を取得した後の露出調整にはゲインを用いる。そこで、第１の画像信号のＦ値をＦｍ、ゲインをＧｍとし、第２の画像信号のＦ値をＦｓ、ゲインをＧｓとすると、以下の式１により算出されるＧｓで第２の画像信号のレベル調整を行う。
【００２３】
Ｇｓ＝Ｇｍ・（Ｆｓ／Ｆｍ）2・（Ｔｍ／Ｔｓ）    …（式１）
Ｆ値は、撮像装置を構成する光学系の焦点距離と有効口径で決定され、Ｆ値の２乗が受光量に反比例する。
【００２４】
ステップＳ４０３では、第１の画像信号と第２の画像信号をそれぞれライン方向（一方向）に積分（積算）して正規化する。撮像素子１０１は線順次走査をとるＣＭＯＳセンサであるため、一般的には点滅光源による明暗は水平方向に一様に発生している。そのため、画像信号を水平方向に信号圧縮してからフリッカ検出を行うために正規化する。正規化した後の第１の画像信号及び第２の画像信号は、被写体の成分を、
ｆ（ｔ）        …（式２）
とし、点滅光源による輝度変調を、
（１＋Ａsin（ωｔ））          …（式３）
（１＋Ｂsin（ωｔ＋φ））      …（式４）
とモデル化すると、以下の式５、式６で表すことができる。
【００２５】
ｆ（ｔ）・（１＋Ａsin（ωｔ））        …（式５）
ｆ（ｔ）・（１＋Ｂsin（ωｔ＋φ））    …（式６）
なお、ωは点滅光源の周波数ｆに２πをかけたものである。
【００２６】
第１の画像信号及び第２の画像信号はそれぞれサンプリングされた離散信号であるが、説明の都合上、時間ｔを変数とした連続時間信号で表現している。ここで、第１の画像信号上に発生している蓄積時間Ｔｍで蓄積したときのフリッカの振幅値をＡとし、第２の画像信号上に発生している蓄積時間Ｔｓで蓄積したときのフリッカ振幅値をＢとする。また、蓄積時間Ｔｍと蓄積時間Ｔｓの差分によって生じる、画像信号上のフリッカの位相差をφとする。
【００２７】
ステップＳ４０４では、正規化後の各々の信号の比較演算により、フリッカが発生しているか否かを判定する。フリッカが発生していると判定された場合、ステップ４０５へ、フリッカが発生していると判定されなかった場合、再びステップ４０１へ進む。比較演算として除算演算（除算処理）を行う場合、フリッカが発生しているか否かを、除算演算結果から１を引いた結果の絶対値の積分処理で判定する。この積分処理結果をＪとしたとき、以下の式７で計算する。
【００２８】
【数１】
0006525525.tif 000002
【００２９】
積分の区間は、図５にあるように、垂直同期期間Ｔで全ラインを読み出すため０からＴまでとしている。しかし、撮像素子１０１の駆動の方法として、垂直同期期間Ｔよりも早く必要なラインを読み終えるような駆動もあるので、その場合は積分区間Ｔの代わりに全ラインを読み終える期間を適用すればよい。いま、第１の画像信号にも、第２の画像信号にもフリッカが発生していない場合、Ａ＝０、Ｂ＝０であるから、式７の絶対値記号で括られた項は全積分範囲において０となる。ところが、ＡかＢかどちらか一方が０では無い場合、式７の絶対値記号で括られた項は０では無い値を持つようになる。
【００３０】
図６は、点滅光源による輝度変調を表す式３および式４を極座標形式で表したグラフである。６０１が、第１の画像信号に重畳するフリッカの輝度変調の値を、６０２が第２の画像信号に重畳するフリッカの輝度変調の値を示している。矢印は一定の角速度で座標（０，１）を中心に回転するため、ＡかＢかどちらか一方が０では無い場合、φによらず、区間０からＴで積分すると値を持つようになる。フリッカ検出部１０２は、積分結果Ｊを閾値判定してフリッカが発生しているか否かを判定する。なお、積分結果Ｊは、式７より位相差φと振幅値Ａ、Ｂに応じて変わるため、積分結果が小さくなる条件である、位相差φが小さく、振幅値Ａ、Ｂの差分が小さいとき、すなわち、第１の画像信号の蓄積時間Ｔｍと第２の画像信号の蓄積時間Ｔｓの差およびＴｍとＴｓの対応するラインにおける蓄積時刻の差が小さいときには閾値を調整することが望ましい。また、複数フレームにわたって、積分結果Ｊを観測し、Ｊの値が安定的に０では無い値をとると判断したときにフリッカがあると判定するようにすると、よりフリッカが発生しているか否かの判定精度が向上する。
【００３１】
次に、比較演算として減算演算（減算処理）を行う場合、フリッカが発生しているか否かを、減算演算結果の絶対値の積分処理で判定する。この積分処理結果をＪとしたとき、以下の式８で計算する。
【００３２】
【数２】
0006525525.tif 000003
【００３３】
上式を変形すると、
【００３４】
【数３】
0006525525.tif 000004
【００３５】
となる。但し、
Ｃ＝√｛Ａ2＋Ｂ2−２ＡＢcos（φ）｝    …（式１０）
【００３６】
【数４】
0006525525.tif 000005
【００３７】
【数５】
0006525525.tif 000006
【００３８】
である。
【００３９】
積分の区間は、図５にあるように、垂直同期期間Ｔで全ラインを読み出すため０からＴまでとしている。しかし、撮像素子１０１の駆動の方法として、垂直同期期間Ｔよりも早く必要なラインを読み終えるような駆動もあるので、その場合は積分区間Ｔの代わりに全ラインを読み終える期間を適用すればよい。いま、第１の画像信号にも、第２の画像信号にもフリッカが発生していない場合、Ａ＝０、Ｂ＝０であるから、式１０のＣは０となるため、式９の演算結果（Ｊの値）は、０となる。ところが、ＡかＢかどちらか一方が０では無い場合、式９の演算結果（Ｊの値）は０では無い値を持つようになる。フリッカ検出部１０２は、積分結果Ｊを閾値判定してフリッカが発生しているか否かを判定する。なお、積分結果Ｊは、式９より位相差φと振幅値Ａ、Ｂに応じて変わるため、積分結果が小さくなる条件である、位相差φが小さく、振幅値Ａ、Ｂの差分が小さいとき、すなわち、第１の画像信号の蓄積時間Ｔｍと第２の画像信号の蓄積時間Ｔｓの差およびＴｍとＴｓの対応するラインにおける蓄積時刻の差が小さいときには閾値を調整することが望ましい。また、複数フレームにわたって、積分結果Ｊを観測し、Ｊの値が安定的に０では無い値をとると判断したときにフリッカがあると判定するようにすると、よりフリッカが発生しているか否かの判定精度が向上する。
【００４０】
ステップＳ４０５では、ステップＳ４０４でフリッカが発生していると判定された場合、発生しているフリッカの周波数を特定する。フリッカ周波数の特定は、ステップＳ４０４で示した比較演算を用いる。比較演算として除算演算を行う場合、除算結果が１になった時間から次に１になるまでの時間間隔でフリッカ周波数を算出する。
【００４１】
図７は、式７の分数の項の分母および分子の値の変化の様子を示している。矢印７０１が、座標（０，１）を中心に振幅Ａ、角速度ωで回転しているベクトルで、ある時刻ｔにおけるｙ座標値が式７の分子の値を示す。同様に、矢印７０２が、座標（０，１）を中心に振幅Ｂ、角速度ωで回転しているベクトルで、ある時刻ｔにおけるｙ座標値が式７の分母の値を示している。矢印７０１，７０２はともに同じ角速度ωで回転しているベクトルを示し、互いの位相差φを保ちつつ座標（０，１）を中心に回り続けている。そのため、式７の分数の項が１になる条件は、振幅値Ａ及びＢがともに０では無い場合、位相差φによらず、かつωによらず、２π（ｒａｄ）中に２回発生する。また、図７からもわかるように、矢印７０１，７０２の位置でｙ座標値が一致している時、π（ｒａｄ）進んだ位置（図７における、矢印７０３，７０４が示す位置）でもう一度ｙ座標が一致する。そのため、周波数ｆは１度一致してから、次に一致するまでの時間ｔを算出すれば、
ｆ＝１／２ｔ      …（式１３）
により、発生しているフリッカの周波数を算出することができる。なお、ここでは、除算演算結果（式７の分数の項）が１になる条件で発生しているフリッカの周波数を算出する例を示した。しかし、式７の絶対値記号の中の演算、すなわち除算演算結果から１を引いたものが０になるときの時間間隔ｔあるいは、その結果の符号が反転するときの時刻ｔを算出しても、式１３による周波数算出が可能となる。
【００４２】
また、比較演算として減算演算を行う場合、式９の絶対値記号の中の項は、ｓｉｎ（ωｔ＋φ）が０になる時刻ｔの間隔を算出すれば、同様に式１３を用いて発生しているフリッカの周波数を算出することができる。但し、式２で表される被写体の成分ｆ（ｔ）が０の場合、角周波数によらず、減算結果が０となるため、被写体の成分ｆ（ｔ）が０のときは、除外するような処理を入れることが望ましい。また、デジタル信号処理においては、サンプリングされたデータを処理するため、サンプリング間隔によっては、比較演算として除算演算を行う場合でも、減算演算を行う場合でも、上述の条件とならない場合がある。その場合は適宜、線形予測などの従来より知られている演算で時刻ｔを算出すればよい。なお、ステップＳ４０４において説明したフリッカ判定の方法の代わりに、フリッカの発生している周波数をステップＳ４０５で説明した方法で判定することで、フリッカの有無とその周波数が同時に判定可能となる。あるいは、離散時間フーリエ変換演算によって振幅スペクトルを算出し、得られた振幅スペクトルのうちＤＣ成分を除いた中で最大値を示す振幅スペクトルの周波数をフリッカの周波数ｆとして判定しても、フリッカの有無とその周波数を同時に判定可能となる。
【００４３】
ステップＳ４０６では、駆動調整部１０３に対してフリッカ情報を出力する。フリッカ検出部１０２は、ステップＳ４０５で検出したフリッカ周波数を、駆動調整部１０３にフリッカ情報として送信する。ステップＳ４０７では、駆動調整部１０３は、フリッカ検出部１０２から得られたフリッカ情報を元に、撮像素子１０１に対して第２の画像信号にフリッカが発生しない蓄積時間Ｔｓで撮像するように、調整後の駆動情報を送信する。フリッカが発生しない蓄積時間は、フリッカ周波数の逆数のＮ倍（Ｎは、自然数）で算出する。ステップＳ４０８では、第１の画像信号と、調整後の駆動情報で撮影された第２の画像信号の露出レベルを調整する。フリッカ検出部１０２は、蓄積時間の違いによる露出差も含めた露出差を式１に従い算出し露出調整する。
【００４４】
ステップＳ４０９では、第１の画像信号と第２の画像信号をそれぞれライン方向に積分して正規化する。正規化の方法は、ステップＳ４０３で述べた方法と同じである。ステップＳ４１０では、正規化された第１の画像信号と第２の画像信号から、第１の画像信号上で発生しているフリッカを検出する。第１の画像信号で発生しているフリッカは、第１の画像信号の正規化結果を第２の画像信号の正規化結果で除算演算することで算出できる。これは、フリッカが発生するモデルをそのまま適用した演算であり、第１の画像信号の正規化結果は、既に説明した式５で表され、一方、フリッカが発生しない蓄積時間で撮像した第２の画像信号は式６中の振幅値Ｂが０とみなすことができる。そして、除算結果は以下の式１４で表される式で表現される。
【００４５】
Ｄ＝１＋Ａsin（ωｔ）          …（式１４）
よって、除算結果Ｄから１を引いた結果の最大値が振幅値Ａとなる。また、フーリエ変換等の周波数解析演算により振幅値を算出するようにしても、同様に振幅値Ａが算出できる。なお、離散時間信号を取り扱う場合は、サンプリング間隔により最大値が真の値に対してずれることがある。そのため、既に知られている補間演算などにより最大値を推測したり、既知の周波数に対する離散時間フーリエ変換演算によって振幅値Ａを算出するのが望ましい。
【００４６】
なお、式１４は、第１の画像信号と第２の画像信号の相対的な位相差のみを定義した式から算出しているため、実際には、撮像装置の撮影タイミングと点滅光源の点滅周期の位相差が初期位相として含まれている。その場合、式１４は、
Ｄ＝１＋Ａsin（ωｔ＋θ）      …（式１５）
で書き替えられるが、この場合でも前述と同じ方法で振幅値Ａを算出することができる。また、初期位相θについても、既知の角周波数ωと除算結果Ｄから１を引いた結果が０になるまでの時間ｔから算出することができる。さらには、離散時間信号の場合、振幅値も初期位相も前述と同じ離散時間フーリエ変換演算によって算出可能である。
【００４７】
以上の処理により、以下の効果が得られる。複数の画像信号を並列出力可能で、かつ複数の画像信号の各々の電荷蓄積時間を制御可能な撮像素子を用い、得られた複数の画像信号の比較演算により、撮影している被写体の動きまたは撮像装置自身の動きによる相対的な被写体の動きの影響を低減した、フリッカの検出が可能になる。これにより、従来より問題になっていたフレーム間の差分による被写体の成分を除去する方法よりも複数画像間の時間差が短縮し、より精度よく被写体の成分をキャンセルすることが可能となる。
【００４８】
また、フリッカの周波数を判定し、その結果を撮像素子にフィードバックすることで、フリッカが発生している第１の画像信号とは別にフリッカが発生していない第２の画像信号を、前述の様に、被写体の成分にほとんど差分が無い状態で取得可能となる。そして、両画像の比較演算によるフリッカの検出の精度がより向上する。
【００４９】
さらには、従来より既知のフレーム間の差分を算出する方式の場合、撮像装置におけるフレームレートとフリッカの周波数の比が、１：Ｎの関係にある場合では、フレーム間の比較演算をすることで、画像信号上に重畳されているフリッカそのものがキャンセルされてしまい、フリッカを検出することができなくなってしまう課題があった。しかし、本実施形態により、被写体の成分の差分を抑えた複数の画像信号を取得することが可能となるため、フレームレートとフリッカの周波数の比が、１：Ｎの関係にある場合においてもフリッカの検出が可能となる。
【００５０】
また、本実施形態では、ステップ４０３及びステップ４０９で第１の画像信号と第２の画像信号の積分演算と正規化演算をフリッカ検出部１０２で行うように示した。しかし、撮像素子１０１上に積分及び正規化をする手段を備え、フリッカ検出部１０２に対しては積分及び正規化されたあとの信号をフリッカ評価用信号として出力することで、撮像素子１０１から送信する信号のデータ量を低減させることができる。これにより、限られたデータ伝送帯域を有効活用することが可能となる。
【００５１】
（第２の実施形態）
第２の実施形態は、第１の実施形態に対し、検出したフリッカ情報から第１の画像信号に重畳されているフリッカを補正するための構成が加わっている。図８に第２の実施形態の撮像装置のブロック図を示す。図１と同じ符号を付しているものについては説明を省略する。補正値生成部８０１は、フリッカ検出部１０２から得られたフリッカ評価値を元に、第１の画像信号に対するフリッカ補正値を生成し、後述するフリッカ補正部８０２に送信する。フリッカ補正部８０２は、補正値生成部８０１で得られたフリッカ補正値を第１の画像信号に対して適用する。
【００５２】
次に、図９を参照して、本実施形態における処理フロー、特に第１の画像信号に重畳されているフリッカを補正する方法について説明する。
【００５３】
ステップＳ９０１では、フリッカ評価値をフリッカ検出部１０２から取得する。フリッカ検出部１０２は、第１の画像信号と第２の画像信号から比較演算によりフリッカ評価値を算出する。フリッカ評価値とは、第１の実施形態で説明したように、式１５で示される第１の画像信号上に重畳しているフリッカのうち、少なくとも、振幅値Ａ、初期位相θ、周波数ｆ（あるいはω、ωはｆに２πをかけたもの）である。
【００５４】
ステップＳ９０２では、補正値生成部８０１は、フリッカ評価値を元に発生しているフリッカを補正する補正値を生成する。第１の画像信号上に重畳されているフリッカのモデルから、フリッカを補正するための補正値をＣｏｍｐとした時、得られたフリッカ評価値である振幅値Ａ、初期位相θ、周波数ｆ（あるいはω、ωはｆに２πをかけたもの）より、以下の式１６で算出される。
【００５５】
Ｃｏｍｐ＝１／｛１＋Ａsin（ωｔ＋θ）｝        …（式１６）
離散時間信号処理の場合、式１６の分母にある正弦波は、予め不図示の記憶手段にテーブル化して保持し、ω、ｔ、θに応じて、参照することで補正値Ｃｏｍｐを生成する。なお、変数ｔは、一般的にサンプリングの周波数の逆数、すなわち、第１の画像信号あるいは第２の画像信号の隣接するライン間のサンプリング時間差を変数にした等差数列となる。また、式１５と比較しても分かる通り、第１の実施形態におけるフローのステップＳ４１０で説明した比較演算の結果をそのまま逆数にすることでも、補正値を生成することができる。
【００５６】
さらには、フリッカ検出部１０２において、第１の実施形態におけるフローのステップＳ４０９で説明した正規化を行わずに、ステップＳ４１０の比較演算を行い、その結果の逆数を補正値とすることで、照明光の違いによる第１の画像信号上の２次元画像空間上の部分的なフリッカも補正することが可能となる。ステップ９０３では、補正値生成部８０１で生成された補正値で、第１の画像信号上に重畳されているフリッカを補正する。フリッカ補正部８０２は、補正値生成部８０１で生成された補正値を、入力されてくる第１の画像信号に対して乗算することでフリッカを補正する。
【００５７】
以上の処理により、フリッカ検出部１０２において、第１の画像信号上の被写体の成分を精度よくキャンセルして得られたフリッカ評価値を元に、第１の画像信号上に重畳されたフリッカを補正するための補正値を生成することが可能となる。そして、フリッカ補正部８０２による補正によって、より精度よくフリッカを補正することができる。
【００５８】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。本実施形態では、上述した第１の実施形態および第２の実施形態の構成を備えた撮像素子１０１が積層型である例を示す。図１０に示す様に、本実施形態の撮像素子１０１は、イメージセンサ用チップ１３００と高速ロジックプロセス用チップ１３０１がチップレベルで積層されている。図１０（ａ）は斜投影図、図１０（ｂ）は各チップの上面図である。イメージセンサ用チップ１３００には多数の画素部２０１を有する画素領域２１０を含む領域が含まれ、高速ロジックプロセス用チップ１３０１には列ＡＤ回路や水平走査回路などデジタルデータを含む高速処理が可能な部分１３０２，１３０３が含まれる。
【００５９】
（第４の実施形態）
図１１は、本発明の第４の実施形態としての携帯電話機２０００の構成を示すブロック図である。本実施形態の携帯電話機２０００は、音声通話機能の他、電子メール機能や、インターネット接続機能、画像の撮影、再生機能等を有する。
【００６０】
図１１において、通信部１０１０は、ユーザが契約した通信キャリアに従う通信方式により他の電話機との間で音声データや画像データを通信する。音声処理部１０２０は、音声通話時において、マイクロフォン１０３０からの音声データを発信に適した形式に変換して通信部１０１０に送る。また、音声処理部１０２０は、通信部１０１０から送られた通話相手からの音声データを復号し、スピーカ１０４０に送る。撮像部１０５０は、上述した第１の実施形態から第３の実施形態のいずれかの構成の撮像素子を備え、被写体の画像を撮影し、画像データを出力する。画像処理部１０６０は、画像の撮影時においては、撮像部１０５０により撮影された画像データを処理し、記録に適した形式に変換して出力する。また、画像処理部１０６０は、記録された画像の再生時には、再生された画像を処理して表示部１０７０に送る。表示部１０７０は、数インチ程度の液晶表示パネルを備え、制御部１０９０からの指示に応じて各種の画面を表示する。不揮発メモリ１０８０は、アドレス帳の情報や、電子メールのデータ、撮像部１０５０により撮影された画像データ等のデータを記憶する。
【００６１】
制御部１０９０はＣＰＵやメモリ等を有し、不図示のメモリに記憶された制御プログラムに従って電話機２０００の各部を制御する。操作部１１００は、電源ボタンや番号キー、その他ユーザがデータを入力するための各種の操作キーを備える。カードＩＦ１１１０は、メモリカード１１２０に対して各種のデータを記録再生する。外部ＩＦ１１３０は、不揮発メモリ１０８０やメモリカード１１２０に記憶されたデータを外部機器に送信し、また、外部機器から送信されたデータを受信する。外部ＩＦ１１３０は、ＵＳＢ等の有線の通信方式や、無線通信など、公知の通信方式により通信を行う。
【００６２】
次に、電話機２０００における音声通話機能を説明する。通話相手に対して電話をかける場合、ユーザが操作部１１００の番号キーを操作して通話相手の番号を入力するか、不揮発メモリ１０８０に記憶されたアドレス帳を表示部１０７０に表示し、通話相手を選択し、発信を指示する。発信が指示されると、制御部１０９０は通信部１０１０に対し、通話相手に発信する。通話相手に着信すると、通信部１０１０は音声処理部１０２０に対して相手の音声データを出力すると共に、ユーザの音声データを相手に送信する。
【００６３】
また、電子メールを送信する場合、ユーザは、操作部１１００を用いて、メール作成を指示する。メール作成が指示されると、制御部１０９０はメール作成用の画面を表示部１０７に表示する。ユーザは操作部１１００を用いて送信先アドレスや本文を入力し、送信を指示する。制御部１０９０はメール送信が指示されると、通信部１０１０に対しアドレスの情報とメール本文のデータを送る。通信部１０１０は、メールのデータを通信に適した形式に変換し、送信先に送る。また、通信部１０１０は、電子メールを受信すると、受信したメールのデータを表示に適した形式に変換し、表示部１０７０に表示する。
【００６４】
次に、電話機２０００における撮影機能について説明する。ユーザが操作部１１００を操作して撮影モードを設定した後、静止画或いは動画の撮影を指示すると、撮像部１０５０は静止画データ或いは動画データを撮影して画像処理部１０６０に送る。画像処理部１０６０は撮影された静止画データや動画データを処理し、不揮発メモリ１０８０に記憶する。また、画像処理部１０６０は、撮影された静止画データや動画データをカードＩＦ１１１０に送る。カードＩＦ１１１０は静止画や動画データをメモリカード１１２０に記憶する。
【００６５】
また、電話機２０００は、この様に撮影された静止画や動画データを含むファイルを、電子メールの添付ファイルとして送信することができる。具体的には、電子メールを送信する際に、不揮発メモリ１０８０やメモリカード１１２０に記憶された画像ファイルを選択し、添付ファイルとして送信を指示する。
【００６６】
また、電話機２０００は、撮影された静止画や動画データを含むファイルを、外部ＩＦ１１３０によりＰＣや他の電話機等の外部機器に送信することもできる。ユーザは、操作部１１００を操作して、不揮発メモリ１０８０やメモリカード１１２０に記憶された画像ファイルを選択し、送信を指示する。制御部１０９０は、選択された画像ファイルを不揮発メモリ１０８０或いはメモリカード１１２０から読み出し、外部機器に送信するよう、外部ＩＦ１１３０を制御する。
【００６７】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００６８】
１０１：撮像素子、１０２：フリッカ検出部、１０３：駆動調整部、１０４：撮像素子駆動部、１０５：制御部、８０１：補正値生成部、８０２：フリッカ補正
【図１】
0006525525.tif 000007
【図２】
0006525525.tif 000008
【図３】
0006525525.tif 000009
【図４】
0006525525.tif 000010
【図５】
0006525525.tif 000011
【図６】
0006525525.tif 000012
【図７】
0006525525.tif 000013
【図８】
0006525525.tif 000014
【図９】
0006525525.tif 000015
【図１０】
0006525525.tif 000016
【図１１】
0006525525.tif 000017