(57)【要約】【課題】被写体に濃淡がある場合においても、固体撮像装置の信号量を低下させることなくフリッカを抑圧する。【解決手段】撮像部のラインごとの信号量の大小関係に基づいてフリッカの有無をフリッカ検出部１０にて検出し、フリッカ検出部１０にて検出されたフリッカの有無に基づいて、次のフレームのラインごとのフリッカレベルをフリッカレベル推定部１１にて推定し、フリッカレベル推定部１１にて推定されたフリッカレベルに基づいて、撮像部にて撮像された画像に発生するフリッカをラインごとに補正する。【選択図】      図１
2011091775.tif 000002
【特許請求の範囲】
【請求項１】
マトリックス状に画素が配置された画素部と、
前記画素部にて撮影した１フレームの画像信号に対して、前記画素部にて構成されるラインごとの信号量の大小関係に基づいてフリッカの有無を検出するフリッカ検出部と、
前記フリッカ検出部にて検出されたフリッカの有無に基づいて、次のフレームのラインごとのフリッカレベルを推定するフリッカレベル推定部と、
前記フリッカレベル推定部にて推定されたフリッカレベルに基づいて、前記画素部にて撮像された信号に発生するフリッカをラインごとに補正するフリッカ補正部とを備えることを特徴とする固体撮像装置。
【請求項２】
前記フリッカ検出部は、
前記ラインごとの信号量の極小値および極大値に基づいてフリッカレベルを検出するフリッカレベル検出部と、
前記ラインごとの信号量が極小となる位置と極大となる位置でのライン間の間隔に基づいてフリッカ周期を検出するフリッカ周期検出部と、
前記フリッカ周期検出で検出したフリッカ信号の所定位置から、次のフレームまでの間隔に基づいてフリッカ位相を算出するフリッカ位相算出部とを備えることを特徴とする請求項１に記載の固体撮像装置。
【請求項３】
前記フリッカ検出部は、前記ラインごとの信号量が極小となる位置と極大となる位置でのライン間の間隔が想定されるフリッカ周期に対応しているかどうかの判定結果に基づいて、フリッカの有無を判定することを特徴とする請求項２に記載の固体撮像装置。
【請求項４】
前記画素部は、有効画素にて構成されるラインに並列に設けられた３ライン以上のテストラインをさらに備え、
前記フリッカ検出部は、前記テストラインごとの信号量の大小関係に基づいてフリッカの有無を検出するテストラインレベル判定部を備えることを特徴とする請求項１から３のいずれか１項に記載の固体撮像装置。
【請求項５】
前記画素部は、有効画素にて構成されるラインに並列に設けられた３ライン以上のテストラインをさらに備え、
前記テストラインごとの信号量をフレーム間で比較することにより、フリッカの発生周波数を判定するフレーム間レベル比較部をさらに前記フリッカ検出部に備えることを特徴とする請求項１に記載の固体撮像装置。
【請求項６】
前記フリッカ検出部は、
フリッカが発生するように蓄積時間が設定された１フレーム内のフリッカ信号を取得するフリッカ信号取得部と、
フリッカが発生しないように蓄積時間が設定された１フレーム内の未フリッカ信号を取得する未フリッカ信号取得部と、
前記蓄積時間の差異によるレベル差を補正した後、前記フリッカ信号と前記未フリッカ信号との差分信号を生成する差分信号生成部とを備えることを特徴とする請求項１から５のいずれか１項に記載の固体撮像装置。
【請求項７】
前記フリッカ信号取得部は、１フレーム内の奇数ラインまたは偶数ラインのいずれか一方のみのフリッカ信号を取得し、
前記未フリッカ信号取得部は、前記フリッカ信号が取得される同一フレーム内の奇数ラインまたは偶数ラインのいずれか他方のみの未フリッカ信号を取得することを特徴とする請求項６に記載の固体撮像装置。
【請求項８】
前記フリッカ補正部は、前記フリッカレベル推定部にて推定されたフリッカレベルに基づいて、前記画素から読み出された信号のゲインを前記ラインごとに制御するゲイン制御部を備えることを特徴とする請求項１から７のいずれか１項に記載の固体撮像装置。
【請求項９】
前記フリッカ補正部は、前記フリッカレベル推定部にて推定されたフリッカレベルに基づいて、前記画素の蓄積時間を前記ラインごとに算出する蓄積時間算出部を備えることを特徴とする請求項１から８のいずれか１項に記載の固体撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は固体撮像装置に関し、特に、固体撮像装置にて撮像される画像に発生するフリッカを抑圧する方法に適用して好適なものである。
【背景技術】
【０００２】
ＣＭＯＳ型の固体撮像装置は、蛍光灯下では横縞状のフリッカが発生する。このフリッカ対策として、ラインごとの信号レベルのゲインを信号処理で調整する方法がある（特許文献１、２）。また、他の方フリッカ対策として、蛍光灯の電源周波数の１／２単位で蓄積時間を切り替えることでフリッカの発生を防止し、その中間の光量のときにはデジタルゲインを調整することで信号量を補う方法がある（特許文献３）。さらに、信号量を低下させることなくフリッカを抑圧する方法として、蓄積時間をライン単位で制御する方法がある（特許文献４）。
【０００３】
しかしながら、特許文献１、２に開示された方法では、フリッカの周波数が検出できなかったり、フリッカの検出に複数フィールド分の走査時間を要したり、６０Ｈｚ時の固定となる横縞のフリッカを抑圧したりすることができないという問題があった。また、特許文献３に開示された方法では、信号量が最小で１／２と少なくなり、ショットノイズでＳＮＲが約３ｄＢ劣化するという問題があった。また、特許文献４に開示された方法では、蛍光灯照明下の撮像時の光量変化からフリッカを検出するため、被写体に濃淡があると、フリッカを精度よく検出することができなくなるという問題があった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−３１９２０４号公報
【特許文献２】特開２００４−２２２２２８号公報
【特許文献３】特開２００３−１８４５８号公報
【特許文献４】特開２００７−２１５０６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、被写体に濃淡がある場合においても、信号量を低下させることなくフリッカを抑圧することが可能な固体撮像装置を提供することである。
【課題を解決するための手段】
【０００６】
本発明の一態様によれば、マトリックス状に画素が配置された画素部と、前記画素部にて撮影した１フレームの画像信号に対して、前記画素部にて構成されるラインごとの信号量の大小関係に基づいてフリッカの有無を検出するフリッカ検出部と、前記フリッカ検出部にて検出されたフリッカの有無に基づいて、次のフレームのラインごとのフリッカレベルを推定するフリッカレベル推定部と、前記フリッカレベル推定部にて推定されたフリッカレベルに基づいて、前記画素部にて撮像された信号に発生するフリッカをラインごとに補正するフリッカ補正部とを備えることを特徴とする固体撮像装置を提供する。
【発明の効果】
【０００７】
本発明によれば、被写体に濃淡がある場合においても、信号量を低下させることなくフリッカを抑圧することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】図１は、本発明の第１実施形態に係る固体撮像装置の概略構成を示すブロック図。
【図２】図２は、図１のパルスセレクタ７の概略構成を示す回路図。
【図３】図３は、図１のパルスセレクタ７の動作波形を示すタイミングチャート。
【図４】図４は、図１の電子シャッタ走査回路５の概略構成を示す回路図。
【図５】図５は、図１の電子シャッタ走査回路５の動作波形を示すタイミングチャート。
【図６】図６は、図１の固体撮像装置におけるフリッカがない時のラインごとの蓄積時間を示す図。
【図７】図７は、図１の固体撮像装置のラインごとにゲインを制御することでフリッカを抑圧する方法を示す図。
【図８】図８は、図１の固体撮像装置のラインごとにゲインを制御することでフリッカを抑圧する方法を示すフローチャート。
【図９】図９は、図１の固体撮像装置のフリッカ検出方法を示すフローチャート。
【図１０】図１０は、図１の固体撮像装置におけるフリッカがある時のラインごとの蓄積時間を示す図。
【図１１】図１１は、図１の固体撮像装置のラインごとに蓄積時間を制御することでフリッカを抑圧する方法を示す図。
【図１２】図１２は、図１の固体撮像装置のラインごとに蓄積時間を制御することでフリッカを抑圧する方法を示すフローチャート。
【図１３】図１３は、ラインごとに蓄積時間が制御された時の図１の電子シャッタ走査回路５の動作波形を示すタイミングチャート。
【図１４】図１４は、図１の固体撮像装置におけるフリッカの補正前後の各垂直ラインの出力レベルを示す図。
【図１５】図１５は、図１の固体撮像装置におけるフリッカおよびシェーディングの補正前後の各垂直ラインの出力レベルを示す図。
【図１６】図１６は、本発明の第２実施形態に係る固体撮像装置の概略構成を示すブロック図。
【図１７】図１７は、図１６の固体撮像装置に適用される撮像面の概略構成を示す平面図。
【図１８】図１８は、図１６の固体撮像装置のフリッカ検出方法を示す図。
【図１９】図１９は、図１６の固体撮像装置のフリッカ検出方法を示すフローチャート。
【図２０】図２０は、本発明の第３実施形態に係る固体撮像装置の概略構成を示すブロック図。
【図２１】図２１は、図２０の固体撮像装置のフリッカ検出方法を示す図。
【図２２】図２２は、本発明の第４実施形態に係る固体撮像装置の概略構成を示すブロック図。
【図２３】図２３は、図２２の固体撮像装置のフリッカ検出方法を示す図。
【図２４】図２４は、図２２の固体撮像装置にて検出されたフリッカレベルを示す図。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態に係る固体撮像装置について図面を参照しながら説明する。
【００１０】
（第１実施形態）
図１は、本発明の第１実施形態に係る固体撮像装置の概略構成を示すブロック図である。
図１において、固体撮像装置の撮像部には、光電変換した電荷を蓄積する画素がマトリックス状に配置され、各画素にはセルＰＣｎ、ＰＣｍが設けられている。ここで、セルＰＣｎ、ＰＣｍには、フォトダイオードＰＤ、行選択トランジスタＴａ、増幅トランジスタＴｂ、リセットトランジスタＴｃおよび読出しトランジスタＴｄがそれぞれ設けられている。
【００１１】
そして、セルＰＣｎにおいて、読出しトランジスタＴｄのソースは、フォトダイオードＰＤに接続され、読出しトランジスタＴｄのゲートには、読出し信号ΦＲＥＡＤｎが入力される。また、リセットトランジスタＴｃのソースは、読出しトランジスタＴｄのドレインに接続され、リセットトランジスタＴｃのゲートには、リセット信号ΦＲＥＳＥＴｎが入力され、リセットトランジスタＴｃのドレインは、電源電位ＶＤＤに接続されている。また、行選択トランジスタＴａのゲートには、行選択信号ΦＡＤＲＥＳｎが入力され、行選択トランジスタＴａのドレインは、電源電位ＶＤＤに接続されている。また、増幅トランジスタＴｂのソースは、垂直信号線ＶＬＩＮに接続され、増幅トランジスタＴｂのゲートは、読出しトランジスタＴｄのドレインに接続され、増幅トランジスタＴｂのドレインは、行選択トランジスタＴａのソースに接続されている。
【００１２】
ここで、増幅トランジスタＴｂのゲートと読出しトランジスタＴｄのドレインとの接続点には検出ノードＤＮが形成されている。また、負荷トランジスタＴＬのドレインは、垂直信号線ＶＬＩＮに接続され、負荷トランジスタＴＬのゲートには、バイアス信号ＶＶＬが入力される。なお、負荷トランジスタＴＬはソースフォロワを構成し、定電流動作をすることができる。
【００１３】
なお、セルＰＣｍでは、読出しトランジスタＴｄのゲートには、読出し信号ΦＲＥＡＤｍが入力され、リセットトランジスタＴｃのゲートには、リセット信号ΦＲＥＳＥＴｍが入力され、行選択トランジスタＴａのゲートには、行選択信号ΦＡＤＲＥＳｍが入力される。
【００１４】
また、固体撮像装置の撮像部には、入力データの中継を行うシリアルインターフェース１、各画素の読み出しや蓄積のタイミングを制御するタイミング発生回路２、読み出し画素を水平方向に走査する水平走査回路３、読み出し信号のＣＤＳ（相関二重サンプリング）処理やＡＤ変換処理などを行うカラムＡＤＣ回路４、電子シャッタ走査をラインごとに行う電子シャッタ走査回路５、読み出し画素を垂直方向に走査する読出し走査回路６、読出し信号ΦＲＥＡＤｎ、リセット信号ΦＲＥＳＥＴｎおよび行選択信号ΦＡＤＲＥＳｎを生成するパルスセレクタ７、バイアス信号ＶＶＬを発生するバイアス発生回路８が設けられている。ここで、タイミング発生回路２には、電子シャッタ走査にタイミングを制御する電子シャッタ走査制御回路２ａが設けられている。なお、電子シャッタ走査回路５および読出し走査回路６はシフトレジスタにて構成することができ、所定のラインが選択されるように蓄積開始信号ＥＳｎ、ＥＳｍおよび読出し開始信号ＲＯｎ、ＲＯｍの生成タイミングがタイミング発生回路２にて制御される。
【００１５】
また、固体撮像装置には、レンズシェーディングを補正するレンズシェーディング補正部９、撮像部のラインごとの信号量の大小関係に基づいてフリッカの有無を検出するフリッカ検出部１０、フリッカ検出部１０にて検出されたフリッカの有無に基づいて、次のフレームのラインごとのフリッカレベルを推定するフリッカレベル推定部１１、各画素の出力を平均化することでフレームごとの信号レベルを算出する出力平均化回路１２、フリッカレベル推定部１１にて推定されたフリッカレベルに基づいて、各画素の蓄積時間をラインごとに算出する蓄積時間算出部１３、フリッカレベル推定部１１にて算出されたフリッカ補正ゲインＧａｉｎＦと、レンズシェーディング補正部９から出力されたシェーディング補正係数ＧａｉｎＬとを加算する加算器１４、カラムＡＤＣ回路４から出力された出力信号ＯＵＴ１に加算器１４の出力を乗算する乗算器１５、乗算器１５から出力された出力信号ＯＵＴ２のデジタル信号処理を行う信号処理回路１６が設けられている。
【００１６】
ここで、フリッカ検出部１０には、ラインごとの信号量の極小値および極大値に基づいてフリッカレベルを検出するフリッカ周期検出部１０ａ、ラインごとの信号量が極小となる位置と極大となる位置でのライン間の間隔に基づいてフリッカ周期を検出するフリッカレベル検出部１０ｂ、信号量が極小または極大となる現在のフレームのラインの位置と、次のフレームまでの間隔に基づいてフリッカ位相を検出するフリッカ位相検出部１０ｃが設けられている。
【００１７】
そして、電子シャッタ走査回路５において、電子シャッタ走査制御回路２ａから出力されたタイミング制御信号ＥＳＣＫに従って蓄積開始信号ＥＳｎ、ＥＳｍが生成され、パルスセレクタ７に出力される。また、読出し走査回路６において、タイミング発生回路２から出力されたタイミング制御信号ＰＲＯＩ、ＲＯＣＫに従って読出し開始信号ＲＯｎ、ＲＯｍが生成され、パルスセレクタ７に出力される。また、タイミング発生回路２において、読出し、リセットおよび行選択のタイミングをそれぞれ制御するタイミング制御信号ＲＥＡＤ、ＲＥＳＥＴ、ＡＤＲＥＳが生成され、パルスセレクタ７に出力される。
【００１８】
そして、パルスセレクタ７において、タイミング制御信号ＲＥＡＤ、ＲＥＳＥＴ、ＡＤＲＥＳ、蓄積開始信号ＥＳｎ、ＥＳｍおよび読出し開始信号ＲＯｎ、ＲＯｍに基づいて、読出し信号ΦＲＥＡＤｎ、ΦＲＥＡＤｍ、リセット信号ΦＲＥＳＥＴｎ、ΦＲＥＳＥＴｍおよび行選択信号ΦＡＤＲＥＳｎ、ΦＡＤＲＥＳｍが生成され、セルＰＣｎ、ＰＣｍに順次出力される。
【００１９】
そして、行選択信号ΦＡＤＲＥＳｎがオフの状態の時、行選択トランジスタＴａがオフ状態となりソースフォロワ動作しないため、信号は出力されない。この時、読出し信号ΦＲＥＡＤｎがセルＰＣｎに出力されると、セルＰＣｎの読出しトランジスタＴｄがオンし、フォトダイオードＰＤに蓄積されていた信号電荷が検出ノードＤＮに転送される。この直後、フォトダイオードＰＤでは、有効な信号電荷の蓄積（Ｔｉｎｔ）を開始する。検出ノードＤＮに読み出された信号電荷は、その後、リセット信号ΦＲＥＳＥＴｎがセルＰＣｎに出力されると、リセットトランジスタＴｃがオンし、検出ノードＤＮに読み出された信号電荷が排出される。
【００２０】
次に、行選択信号ΦＡＤＲＥＳｎのオンがセルＰＣｎに出力されると、セルＰＣｎの行選択トランジスタＴａがオンすることで、セルＰＣｎの増幅トランジスタＴｂと負荷トランジスタＴＬとでソースフォロアが構成されているので、信号を出力することができる。そして、リセット信号ΦＲＥＳＥＴｎがセルＰＣｎに出力されると、リセットトランジスタＴｃがオンし、検出ノードＤＮに蓄積していた電荷がリセットされる。この時、検出ノードＤＮのリセット電圧をソースフォロワ回路で出力し、このリセット電圧をカラムＡＤＣ回路４にて保持する。次に、セルＰＣｎの行選択トランジスタＴａがオンの状態で読出し信号ΦＲＥＡＤｎのオンがセルＰＣｎに出力されると、読出しトランジスタＴｄがオンし、フォトダイオードＰＤに蓄積された信号電荷量が検出ノードＤＮに読み出される。そして、検出ノードＤＮで変化した信号電圧（リセット電圧＋信号電圧）をソースフォロワ回路を経てカラムＡＤＣ回路４へ出力する。そして、カラムＡＤＣ回路４でリセット電圧を除去する。
【００２１】
次に、カラムＡＤＣ回路４において、読み出した信号電圧を１水平期間にＡＤ変換し、デジタルデータをラインメモリに保持する。そして、次の1水平期間にラインメモリから１ライン分のデータが順次読出される。
【００２２】
また、行選択トランジスタＴａがオフの状態で読出し信号ΦＲＥＡＤｍがセルＰＣｍに出力されると、セルＰＣｍの読出しトランジスタＴｄがオンし、フォトダイオードＰＤに蓄積されていた電荷が検出ノードＤＮに蓄積される。そして、セルＰＣｍのフォトダイオードＰＤに蓄積されていた電荷が検出ノードＤＮに蓄積された後、リセット信号ΦＲＥＳＥＴｍがセルＰＣｎに出力されると、リセットトランジスタＴｃがオンし、検出ノードＤＮに蓄積された電荷が排出される。
【００２３】
次に、行選択信号ΦＡＤＲＥＳｍがセルＰＣｍに出力されると、セルＰＣｍの行選択トランジスタＴａがオンする。そして、セルＰＣｍの行選択トランジスタＴａがオンの状態で読出し信号ΦＲＥＡＤｍがセルＰＣｍに出力されると、読出しトランジスタＴｄがオンし、フォトダイオードＰＤに蓄積された電荷量に応じた電圧が増幅トランジスタＴｂのゲートにかかる。ここで、セルＰＣｍの増幅トランジスタＴｂと負荷トランジスタＴＬとでソースフォロアが構成されているので、増幅トランジスタＴｂのゲートに印加された電圧に垂直信号線ＶＬＩＮの電圧が追従する。
【００２４】
そして、カラムＡＤＣ回路４において、垂直信号線ＶＬＩＮの電圧変化を同時にADC回路によりデジタル信号に変換し、ラインメモリに保持する。そして、次の水平走査期間にラインメモリから水平方向に１ライン分のデータが順次読出される。そして、読出し対象となるラインが１つずつインクリメントされながら、１ライン分のデータの読み出しが繰り返されることで、１フレーム分のデータが読出される。
【００２５】
そして、読出しデータがカラムＡＤＣ回路４にて検出されると、その検出結果に対応した出力信号ＯＵＴ１がフリッカ検出部１０、出力平均化回路１２および乗算器１５に出力される。
【００２６】
そして、出力信号ＯＵＴ１がフリッカ検出部１０に出力されると、フリッカ周期検出部１０ａにてフリッカ周期ＬｉｎＦが検出され、フリッカレベル検出部１０ｂにてフリッカレベルＧａｉｎＦｍａｘが検出され、フリッカ位相検出部１０ｃにて信号量が極小または極大となるラインから次のフレームの読み出しラインまでの時間ＴＦｓが検出され、フリッカレベル推定部１１に出力される。
【００２７】
そして、フリッカレベル推定部１１において、フリッカ周期ＬｉｎＦ、フリッカレベルＧａｉｎＦｍａｘおよび次のフレームの読み出しラインまでの時間ＴＦｓに基づいて、次のフレームの各ラインのフリッカ補正ゲインＧａｉｎＦが推定され、蓄積時間算出部１３および加算器１４に出力される。
【００２８】
また、レンズシェーディング補正部９からは、レンズの垂直方向のシェーディングをラインごとに補正するシェーディング補正係数ＧａｉｎＬが蓄積時間算出部１３および加算器１４に出力される。
【００２９】
そして、加算器１４において、フリッカ補正ゲインＧａｉｎＦとシェーディング補正係数ＧａｉｎＬとが加算され、乗算器１５に出力される。そして、乗算器１５において、加算器１４からの出力が出力信号ＯＵＴ１に乗算されることで、出力信号ＯＵＴ１に含まれるフリッカ成分とレンズシェーディング成分が補正され、信号処理回路１６に出力される。これにより、画素から読み出された信号のゲインをラインごとに制御することで、出力信号ＯＵＴ１に含まれるフリッカ成分が補正される。
【００３０】
一方、画素の蓄積時間をラインごとに制御することで、出力信号ＯＵＴ１に含まれるフリッカ成分を補正することもできる。この場合、出力平均化回路１２において、出力信号ＯＵＴ１の各画素の出力を平均化することで、画素エリアの平均蓄積時間Ｔｉｎｔａが算出され、蓄積時間算出部１３に出力される。
【００３１】
そして、蓄積時間算出部１３において、フリッカ補正ゲインＧａｉｎＦ、シェーディング補正係数ＧａｉｎＬおよび蓄積時間Ｔｉｎｔａに基づいて、各画素の蓄積時間を制御する蓄積時間制御信号Ｐｅｓｃｋがラインごとに算出され、電子シャッタ走査制御回路２ａに出力される。
【００３２】
そして、電子シャッタ走査制御回路２ａにおいて、蓄積時間制御信号Ｐｅｓｃｋに基づいてタイミング制御信号ＥＳＣＫが制御されることで、蓄積開始信号ＥＳｎ、ＥＳｍが制御され、出力信号ＯＵＴ１に含まれるフリッカ成分が補正される。
【００３３】
図２は、図１のパルスセレクタ７の概略構成を示す回路図である。
図２において、パルスセレクタ７には論理和回路Ｎ１、Ｎ２および論理積回路Ｎ３〜Ｎ８が設けられている。ここで、論理和回路Ｎ１の一方の入力端子には読出し開始信号ＲＯｎが入力され、論理和回路Ｎ１の他方の入力端子には蓄積開始信号ＥＳｎが入力される。論理和回路Ｎ２の一方の入力端子には読出し開始信号ＲＯｍが入力され、論理和回路Ｎ２の他方の入力端子には蓄積開始信号ＥＳｍが入力される。
【００３４】
論理積回路Ｎ３の一方の入力端子にはタイミング制御信号ＲＥＳＥＴが入力され、論理積回路Ｎ３の他方の入力端子には論理和回路Ｎ１の出力が入力される。論理積回路Ｎ４の一方の入力端子にはタイミング制御信号ＲＥＡＤが入力され、論理積回路Ｎ４の他方の入力端子には論理和回路Ｎ１の出力が入力される。論理積回路Ｎ５の一方の入力端子にはタイミング制御信号ＲＥＳＥＴが入力され、論理積回路Ｎ５の他方の入力端子には論理和回路Ｎ２の出力が入力される。論理積回路Ｎ６の一方の入力端子にはタイミング制御信号ＲＥＡＤが入力され、論理積回路Ｎ６の他方の入力端子には論理和回路Ｎ２の出力が入力される。
【００３５】
論理積回路Ｎ７の一方の入力端子にはタイミング制御信号ＡＤＲＥＳが入力され、論理積回路Ｎ７の他方の入力端子には読出し開始信号ＲＯｎが入力される。論理積回路Ｎ８の一方の入力端子にはタイミング制御信号ＡＤＲＥＳが入力され、論理積回路Ｎ８の他方の入力端子には読出し開始信号ＲＯｍが入力される。
【００３６】
論理積回路Ｎ３、Ｎ５からはリセット信号ΦＲＥＳＥＴｎ、ΦＲＥＳＥＴｍがそれぞれ出力され、論理積回路Ｎ４、Ｎ６からは読出し信号ΦＲＥＡＤｎ、ΦＲＥＡＤｍがそれぞれ出力され、論理積回路Ｎ７、Ｎ８からは行選択信号ΦＡＤＲＥＳｎ、ΦＡＤＲＥＳｍがそれぞれ出力される。
【００３７】
図３は、図１のパルスセレクタ７の動作波形を示すタイミングチャートである。
図３において、蓄積開始信号ＥＳｎおよび読出し開始信号ＲＯｎは水平同期信号ＨＤに同期して出力される。そして、蓄積開始信号ＥＳｎがハイレベルの時にタイミング制御信号ＲＥＳＥＴがハイレベルになると、リセット信号ΦＲＥＳＥＴｎが出力される。また、蓄積開始信号ＥＳｎがハイレベルの時にタイミング制御信号ＲＥＡＤがハイレベルになると、読出し信号ΦＲＥＡＤｎが出力される。
【００３８】
また、読出し開始信号ＲＯｎがハイレベルの時にタイミング制御信号ＲＥＳＥＴがハイレベルになると、リセット信号ΦＲＥＳＥＴｎが出力される。また、読出し開始信号ＲＯｎがハイレベルの時にタイミング制御信号ＲＥＡＤがハイレベルになると、読出し信号ΦＲＥＡＤｎが出力される。さらに、読出し開始信号ＲＯｎがハイレベルの時にタイミング制御信号ＡＤＲＥＳがハイレベルになると、行選択信号ΦＡＤＲＥＳｎが出力される。
【００３９】
図４は、図１の電子シャッタ走査回路５の概略構成を示す回路図である。
図４において、電子シャッタ走査回路５には複数のフリップフロップＦ１〜Ｆ９が設けられている。なお、フリップフロップＦ１〜Ｆ９の個数は、ライン数に対応させることができる。そして、フリップフロップＦ１〜Ｆ９は順次直列に接続され、各フリップフロップＦ１〜Ｆ９の出力端子からは蓄積開始信号ＥＳ１〜ＥＳ９が出力される。また、各フリップフロップＦ１〜Ｆ９のクロック端子にはタイミング制御信号ＥＳＣＫが入力され、フリップフロップＦ１にはタイミング制御信号ＰＥＳＩが入力される。
【００４０】
図５は、図１の電子シャッタ走査回路５の動作波形を示すタイミングチャートである。
図５において、タイミング制御信号ＥＳＣＫが１Ｈ（水平期間）ごとに出力される場合、タイミング制御信号ＰＥＳＩが１Ｈごとにシフトされ、蓄積開始信号ＥＳ１〜ＥＳ９が順次出力される。なお、タイミング制御信号ＰＥＳＩのパルス幅は、１Ｈに限定されずに、２Ｈ、３Ｈ・・・と任意に設定できる。
【００４１】
図６は、図１の固体撮像装置におけるフリッカがない時のラインごとの蓄積時間を示す図である。
図６において、例えば、垂直同期信号ＶＢＬＫが３３．３ｍＳ間隔で出力され、垂直同期パルスＶＢＬＫにて１フレーム分の時間が規定されている。なお、垂直同期信号ＶＢＬＫのハイレベル期間が有効期間で、ロウレベル期間が無効期間である。例えば、ＶＧＡの場合、Ｈ０〜Ｈ４７９の４８０Ｈが有効となる。
【００４２】
ここで、蓄積開始信号ＥＳの出力タイミングから読出し開始信号ＲＯの出力タイミングまでが蓄積時間Ｔｉｎｔとなり、１Ｈずつ順次シフトされながら動作される。この蓄積時間Ｔｉｎｔ（ここでは、Ｔｉｎｔ＝Ｔｉｎｔａ）は、出力平均化回路１２にて平均化し、蓄積時間Ｔｉｎｔを長くしたり、短くしたりすることができる。また、タイミング発生回路２は、この蓄積時間Ｔｉｎｔに基づいて、タイミング制御信号ＰＥＳＩの発生タイミングを制御することができる。
【００４３】
図７は、図１の固体撮像装置のラインごとにゲインを制御することでフリッカを抑圧する方法を示す図である。
図７において、蛍光灯下では、商用周波数が５０Ｈｚの時には、蓄積時間Ｔｉｎｔを１／（５０＊２）＝１０ｍＳの整数倍にすれば、フリッカは発生しない。同様に、商用周波数が６０Ｈｚの時には、蓄積時間Ｔｉｎｔを１／（６０＊２）＝８．３ｍＳの整数倍にすれば、フリッカは発生しない。蓄積時間Ｔｉｎｔがその他の場合には、蛍光灯の発光量が変化しているため、各ラインの蓄積量が異なり、出力信号ＯＵＴ１から得られた再生画面には横縞状のフリッカが発生する。
【００４４】
ここで、フリッカ検出部１０においてフリッカを検出し、フリッカ周期ＬｉｎＦ、フリッカレベルＧａｉｎＦｍａｘおよび次のフレームの読み出しラインまでの時間ＴＦｓに基づいて、次のフレームの各ラインのフリッカ補正ゲインＧａｉｎＦを推定し、フリッカ補正ゲインＧａｉｎＦを各ラインごとに出力信号ＯＵＴ１に乗算することで、出力信号ＯＵＴ１に含まれるフリッカ成分を補正することができる。
【００４５】
図８は、図１の固体撮像装置のラインごとにゲインを制御することでフリッカを抑圧する方法を示すフローチャートである。
図８において、図１のフリッカ検出部１０では、フリッカ周期ＬｉｎＦと、フリッカレベルＧａｉｎＦｍａｘと、フリッカの位相検出として次のフレームの信号ラインまでの時間ＴＦｓが算出される。
【００４６】
ここで、これらの値を算出するために、水平方向に加算平均した信号量から最大信号量Ｓｍａｘおよび最小信号量Ｓｍｉｎと、それらのライン番号ＬＩＮＳｍａｘ、ＬＩＮＳｍｉｎを算出する。なお、最大信号量Ｓｍａｘおよび最小信号量Ｓｍｉｎを算出する場合、信号レベルが大きいためＳＮＲが良好な画面の所定の中心エリアに着目するようにしてもよい。また、算出精度を高めるため、画面のエリアを分割して、誤発生しているデータを除去するようにしてもよい。
【００４７】
フリッカ周期ＬｉｎＦは、ライン番号ＬＩＮＳｍａｘ、ＬＩＮＳｍｉｎの差分の絶対値の２倍から算出することができる（ステップＳ１）。もしくは、ライン番号ＬＩＮＳｍｉｎの異なる２箇所から算出することもできる。また、フリッカ周期ＬｉｎＦは、動作周波数から算出することもできる。商用周波数が５０Ｈｚの時は、ＬｉｎＦ＝１５８Ｈ、商用周波数が６０Ｈｚの時は、ＬｉｎＦ＝１３１Ｈとなる。なお、フリッカ周期ＬｉｎＦの算出結果がこの値から大幅に異なる場合は、蛍光灯フリッカが無いと判定することができる。また、１フレーム分の算出結果ではなく、複数フレーム分の算出結果を積算することで、さらに検出精度を改善することができる。
【００４８】
一方、フリッカレベルＧａｉｎＦｍａｘは、ＧａｉｎＦｍａｘ＝Ｓｍａｘ／Ｓｍｉｎという計算から求めることができる（ステップＳ１）。
【００４９】
また、信号が最大値となっているライン（もしくは最小値のライン）からの次のフレームの読出し信号ラインまでのライン数の時間ＴＦｓは、ＶＧＡ動作では、１フレームが５２５Ｈラインからなるため、ライン番号ＬｉｎＳｍａｘを減算することで求めることができる（ステップＳ２）。この時、時間ＴＦｓがフリッカ周期ＬｉｎＦより大きい場合は、フリッカ周期ＬｉｎＦ分のライン数を減算して時間ＴＦｓを求める（ステップＳ３、Ｓ４２）。なお、ライン番号ＬＩＮＳｍｉｎを基準にして時間ＴＦｓを算出するようにしてもよい。
【００５０】
次に、フリッカレベル推定部１１において、フリッカ周期ＬｉｎＦ、フリッカレベルＧａｉｎＦｍａｘおよび次のフレームの読み出しラインまでの時間ＴＦｓに基づいて、次のフレームの各ラインのフリッカ補正ゲインＧａｉｎＦが推定される。
ここで、例えば、蛍光灯フリッカレベルを商用周波数の正弦波形を全波整流した光量の変化として処理することができる。すなわち、Ｈ０〜Ｈ４７９の４８０Ｈ分について、全波整流波形のパラメータＫｓｉｎ（ｎ）として、ｎを１ずつインクリメントしながら最大値が１、最小値が０となるように算出することができる（ステップＳ５〜Ｓ１１）。例えば、フリッカの信号を正弦波形と想定した場合は、全波整流波形のパラメータＫｓｉｎ（ｎ）は以下の式で表すことができる。
Ｋｓｉｎ（ｎ）＝１−（ＳＩＮ（（２＊３．１４＊ＴＦｓ（ｎ）＋ｎ／ＬｉｎＦ）
−３．１４／２）＋１）／２
【００５１】
例えば、ＴＦｓ＝０の時、Ｋｓｉｎ（ｎ）＝０となり、フリッカ補正ゲインＧａｉｎＦは１となる。ＴＦｓ＝ＬｉｎＦ／２の時、Ｋｓｉｎ（ｎ）＝１となり、フリッカ補正ゲインＧａｉｎＦはＧａｉｎＦｍａｘとなる。このフリッカ補正ゲインＧａｉｎＦ（ｎ）を各ラインｎごとに出力信号ＯＵＴ１に掛け算することで、フリッカを抑圧することができる。
【００５２】
また、シェーディング補正係数ＧａｉｎＬ（ｎ）を算出し（ステップＳ１２）、信号出力ＯＵＴ１に掛け算することで、垂直方向のレンズのシェーディングによる信号量低下を改善することができる。
【００５３】
以上の処理を０から４７９までライン番号ｎを順次増加させながら行うことで１フレーム分のフリッカが補正される（ステップＳ１１）。この時、時間ＴＦｓがフリッカ周期ＬｉｎＦ以上になった場合は（ステップＳ９）、ＴＦｓ＝０として処理を繰り返す（ステップＳ１０）。
このように、フリッカ周期ＬｉｎＦとフリッカレベルＧａｉｎＦｍａｘ＝Ｓｍａｘ／Ｓｍｉｎと次のフレームの開始時間ＴＦｓを算出し、フリッカ補正ゲインＧａｉｎＦで各ラインごとに出力信号ＯＵＴ１を増幅することで、横縞状の蛍光灯フリッカを補正することができる。
【００５４】
なお、フリッカ周期ＬｉｎＦは、判定結果に応じて１５８Ｈもしくは１３１Ｈの固定値を用いても良い。また、フリッカ波形は、正弦波形に限定することなく、実測結果に基づいてテーブル化されデータを用いるようにしてもよい。
【００５５】
また、例えば、２４０ｆｐｓなどの高速動作で動作させた場合、最大信号量Ｓｍａｘおよび最小信号量Ｓｍｉｎは１フレーム内では得られない。その時には、複数フレームの情報から最大信号量Ｓｍａｘおよび最小信号量Ｓｍｉｎを測定することで対応できる。フリッカ周期ＬｉｎＦや開始時間ＴＦｓも同様に求めることができる。もしくは、３０ｆｐｓ動作時に抽出したデータを保持し、２４０ｆｐｓ動作に移行した時に反映させるようにしてもよい。
【００５６】
また、最大信号量Ｓｍａｘおよび最小信号量Ｓｍｉｎは、フリッカ量が最大となるライン数を１５８Ｈもしくは１３１Ｈと設定し、この間隔で測定した信号差分が最大となるラインをライン番号ＬｉｎＳｍａｘ、ＬｉｎＳｍｉｎとすることで精度を更に向上させることができる。
【００５７】
図９は、図１の固体撮像装置のフリッカ検出方法を示すフローチャートである。
図９において、ＧａｉｎＦｍａｘ＝Ｓｍａｘ／Ｓｍｉｎという計算からフリッカレベルＧａｉｎＦｍａｘを求める（ステップＳ２１）。そして、ＧａｉｎＦｍａｘ＞１．０２以上の時は、フリッカ有りと判断する（ステップＳ２２）。係数１．０２は、適宜設定変更できる。また、差分Ｓｍａｘ−Ｓｍｉｎの量で判断することもできる。
【００５８】
次に、フリッカ有りと判定したら、ＬｉｎＦ＝ＡＢＳ（ＬｉｎＳｍａｘ−ＬｉｎＳｍｉｎ）＊２という計算を行うことでフリッカ周期ＬｉｎＦのライン数を算出する（ステップＳ２３）。この時、例えば、フリッカ周期ＬｉｎＦのライン数が１５４より大きく、１６２より小さい場合は（ステップＳ２４）、フリッカ周期ＬｉｎＦが５０Ｈｚと判断して、ＬｉｎＦ＝１５８と設定する（ステップＳ２５）。
【００５９】
一方、フリッカ周期ＬｉｎＦのライン数が１２７より大きく、１３５より小さい場合は（ステップＳ２７）、フリッカ周期ＬｉｎＦが６０Ｈｚと判断して、ＬｉｎＦ＝１３１と設定する（ステップＳ２８）。ステップＳ２４、Ｓ２７のいずれの条件も満たさない場合は、フリッカ無しと判断する（ステップＳ２９）。
【００６０】
以下、前回のフレームの出力信号ＯＵＴ１−０に基づいて、蛍光灯フリッカを検出し、各ラインの蓄積時間を制御することで、次回のフレームの出力信号ＯＵＴ１−２のフリッカを抑圧する方法について説明する。
図１０は、図１の固体撮像装置におけるフリッカがある時のラインごとの蓄積時間を示す図である。
図１０において、前回のフレームの出力信号ＯＵＴ１−０以前までについては、フリッカ補正ゲインＧａｉｎＦを各ラインごとに出力信号ＯＵＴ１に乗算することで、出力信号ＯＵＴ１に含まれるフリッカ成分を補正する。そして、この補正した信号を携帯電話のモニタ信号として出力する。そして、撮像信号が撮像部に入力され、静止画を撮像する時には、各ラインの蓄積時間を制御することで、次回のフレームの出力信号ＯＵＴ１−２のフリッカを抑圧する。ここで、フリッカを抑圧するために、各ラインの蓄積時間を制御することで、各ラインのゲインを制御する方法に比べてＳＮＲを改善することができる。
【００６１】
図１１は、図１の固体撮像装置のラインごとに蓄積時間を制御することでフリッカを抑圧する方法を示す図である。
図１１において、蓄積時間Ｔｉｎｔが固定の場合、蛍光灯の発光量が変化しているため、各ラインの蓄積量が異なり、現在のフレームの出力信号ＯＵＴ１−１から得られた再生画面には横縞状のフリッカが発生する。
【００６２】
ここで、フリッカ検出部１０においてフリッカを検出し、フリッカ周期ＬｉｎＦ、フリッカレベルＧａｉｎＦｍａｘおよび次のフレームの読み出しラインまでの時間ＴＦｓに基づいて、次のフレームの各ラインの蓄積時間Ｔｉｎｔ（ｎ）を推定し、各ラインの蓄積時間Ｔｉｎｔ（ｎ）を制御することで、出力信号ＯＵＴ１−１に含まれるフリッカ成分を補正することができる。
【００６３】
図１２は、図１の固体撮像装置のラインごとに蓄積時間を制御することでフリッカを抑圧する方法を示すフローチャートである。
図１２において、モニタモードから静止画撮影モードに切り換ると、各ラインの蓄積時間を制御する動作に移行する。
【００６４】
そして、各ラインの蓄積時間Ｔｉｎｔ（ｎ）を制御するために、蓄積時間算出部１３において、フリッカ補正ゲインＧａｉｎＦ（ｎ）とシェーディング補正係数ＧａｉｎＬ（ｎ）との加算結果と、出力平均化回路１２にて算出された画素エリアの平均蓄積時間Ｔｉｎｔａとが掛け算された値が、電子シャッタ走査回路のスタート時間Ｔｌｉｎｓ（ｎ）として設定される（ステップＳ１３）。蓄積時間Ｔｉｎｔ（ｎ）は、読出し走査回路６の次の動作までの期間となる。そして、ｎが０から４７９まで１ずつ順次増加しながらスタート時間Ｔｌｉｎｓ（ｎ）の算出が繰り返されることで、全てのフレームについて蓄積時間Ｔｉｎｔ（ｎ）がラインごとに制御される。
【００６５】
ここで、蓄積時間Ｔｉｎｔ（ｎ）をラインごとに制御するために、電子シャッタ走査回路５に入力されるタイミング制御信号ＥＳＣＫを制御する処理が電子シャッタ走査制御回路２ａにて実施される。
【００６６】
この場合、蓄積時間算出部１３において、蓄積時間制御信号Ｐｅｓｃｋ（ｎ）がＴｌｉｎ（ｎ−１）−Ｔｌｉｎ（ｎ）という計算を施すことで算出され、電子シャッタ走査制御回路２ａに入力される。そして、電子シャッタ走査制御回路２ａにおいて、蓄積時間制御信号Ｐｅｓｃｋ（ｎ）に基づいてタイミング制御信号ＥＳＣＫが生成される。
【００６７】
図１３は、ラインごとに蓄積時間が制御された時の図１の電子シャッタ走査回路５の動作波形を示すタイミングチャートである。なお、蓄積開始信号ＥＳ１５１〜ＥＳ１７１は、図１０の円ＲＭの部分を拡大して示した。
【００６８】
図１３において、蓄積時間算出部１３にて算出された蓄積時間制御信号Ｐｅｓｃｋとして、０、１、２が得られる。蓄積時間制御信号Ｐｅｓｃｋが０の時は、タイミング制御信号ＥＳＣＫにパルスを追加発生させる。そして、次のｎ＝ｎ＋１を直ぐに実施する。次の結果が０の時は、タイミング制御信号ＥＳＣＫにパルスを再度発生させる。そして、さらに次のｎ＝ｎ＋１を直ぐに実施する。
【００６９】
次の結果が１の時は、タイミング制御信号ＥＳＣＫにパルスを発生させずに、次の水平走査期間ＨＤに移行した時にパルスを発生させる。次の結果が２の時には、次の水平走査期間ＨＤに移行しても、パルスを発生させずに、さらにその次の水平走査期間ＨＤに移行した時に、タイミング制御信号ＥＳＣＫにパルスを発生させる。この処理をｎ＝４７９まで繰り返す。
【００７０】
この時の蓄積開始信号ＥＳ１５１〜１５３は、同じ水平走査期間ＨＤにパルスを発生させることができる。次の蓄積開始信号ＥＳ１５４、ＥＳ１５５は、同じ水平走査期間ＨＤにパルスを発生させることができる。また、蓄積開始信号ＥＳ１６１とＥＳ１６２は、水平走査期間ＨＤの２Ｈ分のずれを発生させている。この時のタイミング制御信号ＰＥＳＩは水平走査期間ＨＤの３Ｈ分の幅のパルスを入力することができる。蓄積時間制御信号Ｐｅｓｃｋが３の時は、３Ｈ後の水平走査期間ＨＤに同期させてタイミング制御信号ＥＳＣＫのパルスを発生させることができる。この時のタイミング制御信号ＰＥＳＩは４Ｈの幅のパルスを入力することで対応できる。このように、蓄積時間制御信号Ｐｅｓｃｋの算出結果を蓄積開始信号ＥＳに反映させることで、ラインごとの蓄積時間を可変制御することができる。
【００７１】
図１４は、図１の固体撮像装置におけるフリッカの補正前後の各垂直ラインの出力レベルを示す図である。なお、図１４の例では、濃度が均一な被写体を実際に撮影した時の水平方向に平均化した垂直方向の信号波形を示す。
図１４（ａ）において、固体撮像装置を７．５Ｈｚで動作させると、出力信号ＯＵＴ１は、５０Ｈｚの蛍光灯フリッカが発生する。また、この出力信号ＯＵＴ１には、レンズシェーディングも発生している。また、図１４（ｂ）に示すように、フリッカレベル推定部１１にてフリッカ補正ゲインＧａｉｎＦの信号波形が得られる。なお、ここでは、フリッカ波形が正弦波と想定してフリッカ補正ゲインＧａｉｎＦを発生させた。そして、図１４（ｃ）に示すように、出力信号ＯＵＴ１にフリッカ補正ゲインＧａｉｎＦを乗算することで、蛍光灯フリッカが抑圧された出力信号ＯＵＴ２が得られた。
【００７２】
図１５は、図１の固体撮像装置におけるフリッカおよびシェーディングの補正前後の各垂直ラインの出力レベルを示す図である。
図１５（ａ）において、固体撮像装置を７．５Ｈｚで動作させると、出力信号ＯＵＴ１は、５０Ｈｚの蛍光灯フリッカが発生する。また、この出力信号ＯＵＴ１には、レンズシェーディングも発生している。また、図１５（ｂ）に示すように、加算器１４からは、フリッカ補正ゲインＧａｉｎＦとシェーディング補正係数ＧａｉｎＬとを加算した信号波形と得られる。そして、図１５（ｃ）に示すように、フリッカ補正ゲインＧａｉｎＦとシェーディング補正係数ＧａｉｎＬとの加算結果を出力信号ＯＵＴ１に乗算することで、蛍光灯フリッカおよびレンズシェーディングが抑圧された出力信号ＯＵＴ２が得られた。
【００７３】
なお、フリッカ補正ゲインＧａｉｎＦを制御する代わりに蓄積時間を制御した場合も、図１４および図１５の出力信号ＯＵＴ２と同様の信号波形を得ることができる。
【００７４】
（第２実施形態）
図１６は、本発明の第２実施形態に係る固体撮像装置の概略構成を示すブロック図、図１７は、図１６の固体撮像装置に適用される撮像面の概略構成を示す平面図である。
図１６において、この固体撮像装置には、図１のフリッカ検出部１０の代わりにフリッカ検出部２０が設けられている。このフリッカ検出部２０には、フリッカ検出部１０の構成に加え、テストラインレベル判定部２０ａおよびフレーム間レベル比較部２０ｂが設けられている。また、図１７に示すように、この固体撮像装置には、有効エリア外に最低で３ライン分のテストラインＨＴ１〜ＨＴ３が設けられている。なお、テストラインＨＴ１〜ＨＴ３は、互いに隣接するようにして有効エリアの上部もしくは下部に配置することが好ましい。
【００７５】
ここで、テストラインレベル判定部２０ａは、テストラインＨＴ１〜ＨＴ３ごとの信号量の大小関係に基づいてフリッカの有無を検出することができる。フレーム間レベル比較部２０ｂは、テストラインＨＴ１〜ＨＴ３ごとの信号量をフレーム間で比較することにより、フリッカ周期を判定することができる。
【００７６】
そして、出力信号ＯＵＴ１がフリッカ検出部２０に出力されると、テストラインレベル判定部２０ａにおいて、テストラインＨＴ１〜ＨＴ３の各ラインの信号の平均値が互いに比較される。そして、これらの平均値がほぼ同じ値のときは、フリッカは発生していないと判断される。一方、これらの平均値に所定値以上の差が発生した場合は、フリッカが発生していると判断される。また、レーム間レベル比較部２０ｂにおいて、テストラインＨＴ１〜ＨＴ３の各ラインの信号の平均値がフレーム間で比較される。そして、これらの平均値がフレーム間で変動する時はフリッカ周波数は５０Ｈｚと判断され、これらの平均値がフレーム間で変動しない時はフリッカ周波数は６０Ｈｚと判断される。
【００７７】
図１８は、図１６の固体撮像装置のフリッカ検出方法を示す図である。
図１８において、テストラインＨＴ１〜ＨＴ３の読み出しが０．５ｍＳ以上異ならせて読み出される。また、テストラインＨＴ１〜ＨＴ３は単独に蓄積時間が制御される。また、垂直ブランキング期間ＶＢＬＫにテストラインＨＴ１〜ＨＴ３からの信号が読み出せるように２．８ｍＳ以下の蓄積時間差ができるように設定される。
【００７８】
そして、テストラインＨＴ１〜ＨＴ３の各ラインの信号の平均値を比較することで、蛍光灯フリッカの有無および５０Ｈｚ／６０Ｈｚの周波数を検出することができる。これにより、フリッカの検出精度を向上させることができる。ここで、テストラインＨＴ１〜ＨＴ３を互いに隣接して配置することで、フリッカが発生していない場合は、ほとんど同じ信号レベルが得られる。また、テストラインＨＴ１〜ＨＴ３の蓄積時間を短く設定することで、テストラインＨＴ１〜ＨＴ３で検出されるフリッカレベルを大きくすることができ、検出精度を高くすることができる。
【００７９】
図１９は、図１６の固体撮像装置のフリッカ検出方法を示すフローチャートである。
図１９において、図１７のテストラインンＨＴ１〜ＨＴ３の各ラインの信号の平均値をＳｈｔ１、Ｓｈｔ２、Ｓｈｔ３とする。そして、Ｓｈｔ１−Ｓｈｔ２の絶対値がフリッカ想定レベルＳｆｔ以上の時はフリッカ有りと判断する（ステップＳ３１）。一方、Ｓｈｔ１−Ｓｈｔ２の絶対値がフリッカ想定レベルＳｆｔより小さい時は、Ｓｈｔ１−Ｓｈｔ３の絶対値がフリッカ想定レベルＳｆｔ以上がどうか判断する（ステップＳ３２）。そして、Ｓｈｔ１−Ｓｈｔ３の絶対値がフリッカ想定レベルＳｆｔ以上の時はフリッカ有りと判断する。一方、Ｓｈｔ１−Ｓｈｔ３の絶対値がフリッカ想定レベルＳｆｔより小さい時は、フリッカ無しと判断する（ステップＳ３３）。
【００８０】
フリッカ有りと判断した場合、テストラインＨＴ１〜ＨＴ３の各ラインの信号の平均値について２フレーム間の信号差分を算出する。例えば、１フレーム目の信号を１Ｓｈｔ１、２フレーム目の信号を２Ｓｈｔ１とすると、１Ｓｈｔ１−２Ｓｈｔ１の絶対値がフリッカ想定レベルＳｆｔより大きい場合（ステップＳ３４）、フリッカ周波数は５０Ｈｚと判断し、ＬｉｎＦ＝１５８に設定する（ステップＳ３５）。一方、１Ｓｈｔ１−２Ｓｈｔ１の絶対値がフリッカ想定レベルＳｆｔ以下の場合、フリッカ周波数は６０Ｈｚと判断し、ＬｉｎＦ＝１３１に設定する（ステップＳ３６）。
【００８１】
これにより、フリッカ周期ＬｉｎＦが多少変動しても、５０Ｈｚ／６０Ｈｚの判定ができ、フリッカ周期ＬｉｎＦを正確に設定することができる。また、固体撮像装置の動作周波数が３０Ｈｚ以外でも、同様の算出を実施することで、フリッカ周期ＬｉｎＦを正確に設定することができる。
【００８２】
（第３実施形態）
図２０は、本発明の第３実施形態に係る固体撮像装置の概略構成を示すブロック図である。
図２０において、この固体撮像装置には、図１のフリッカ検出部１０の代わりにフリッカ検出部３０が設けられている。このフリッカ検出部３０には、フリッカ検出部１０の構成に加え、フリッカ画像取得部３０ａ、未フリッカ画像取得部３０ｂおよび差分算出部３０ｃが設けられている。また、この固体撮像装置には、図１７に示すように、有効エリア外に最低で３ライン分のテストラインＨＴ１〜ＨＴ３が設けられている。
【００８３】
ここで、フリッカ画像取得部３０ａは、フリッカが発生する蓄積時間に設定された１フレーム内のフリッカ画像信号を取得することができる。未フリッカ画像取得部３０ｂは、フリッカが発生しない蓄積時間に設定された１フレーム内の未フリッカ画像信号を取得することができる。差分画像生成部３０ｃは、蓄積時間の差異によるレベル差を補正した後、フリッカ画像信号と未フリッカ画像信号との差分画像を生成することができる。
【００８４】
そして、フリッカを検出する場合、フリッカ画像取得部３０ａにてフリッカが検出できるように１フレーム目の蓄積時間Ｔｉｎｔ１が設定され、出力信号ＯＵＴ１が取得される。次に、未フリッカ画像取得部３０ｂにてフリッカが打ち消されるように２フレーム目の蓄積時間Ｔｉｎｔ２が設定され、出力信号ＯＵＴ１が取得される。そして、差分画像生成部３０ｃにおいて、これらの蓄積時間Ｔｉｎｔ１、Ｔｉｎｔ２の差異によるレベル差が補正された後、フリッカ画像信号と未フリッカ画像信号との差分画像が生成される。この差分信号生成は、各画像の各ラインの水平方向の平均値のデータで算出することもできる。
【００８５】
そして、差分画像生成部３０ｃにて生成された差分画像を参照することで、フリッカ周期検出部１０ａにてフリッカ周期ＬｉｎＦが検出され、フリッカレベル検出部１０ｂにてフリッカレベルＧａｉｎＦｍａｘが検出され、フリッカ位相検出部１０ｃにて信号量が極小または極大となるラインから次のフレームの読み出しラインまでの時間ＴＦｓが検出され、フリッカレベル推定部１１に出力される。
【００８６】
そして、フリッカレベル推定部１１において、フリッカ周期ＬｉｎＦ、フリッカレベルＧａｉｎＦｍａｘおよび次のフレームの読み出しラインまでの時間ＴＦｓに基づいて、次のフレームの各ラインのフリッカ補正ゲインＧａｉｎＦが推定される。
【００８７】
なお、このフリッカ検出は、撮像開始時などに自動的に行うようにしてもよいし、固体撮像装置の動作時に定期的に行うようにしてもよいし、外部からの指示で強制的に行うようにしてもよい。
【００８８】
図２１は、図２０の固体撮像装置のフリッカ検出方法を示す図である。
図２１において、フリッカ周波数が５０Ｈｚであるものとすると、１フレーム目の蓄積時間Ｔｉｎｔ１はｎ／１００（ｎは正の整数）秒となるように設定される。この場合、出力信号ＯＵＴ１に含まれるフリッカ成分がキャンセルされる。
【００８９】
次に、次のフレームの蓄積時間Ｔｉｎｔ２がｎ／１００秒以外に設定される。この場合、フリッカ成分がキャンセルされることなく出力信号ＯＵＴ１が出力される。この時、蓄積時間Ｔｉｎｔ２で得られた出力信号ＯＵＴ１は、蓄積時間Ｔｉｎｔ１で得られた出力信号ＯＵＴ１と同じ信号レベルになるように増幅される。
【００９０】
例えば、蓄積時間Ｔｉｎｔ２が蓄積時間Ｔｉｎｔ１より短い場合、蓄積時間Ｔｉｎｔ２で得られた出力信号ＯＵＴ１はＧＡＩＮ＝Ｔｉｎｔ１／Ｔｉｎｔ２という倍率で増幅される。そして、蓄積時間Ｔｉｎｔ２で得られた出力信号ＯＵＴ１が、蓄積時間Ｔｉｎｔ１で得られた出力信号ＯＵＴ１と同じ信号レベルになるように増幅されると、水平方向に加算平均した信号の差分を算出することで、フリッカ画像信号と未フリッカ画像信号との差分画像信号ＳｉｇＦが生成される。ここで、差分画像信号ＳｉｇＦは、ＳｉｇＦ＝ＳｉｇＴｉｎｔ１−（Ｔｉｎｔ１／Ｔｉｎｔ２）＊ＳｉｎＴｉｎｔ２で与えることができる。ただし、ＳｉｇＴｉｎｔ１は、蓄積時間Ｔｉｎｔ１で得られた出力信号ＯＵＴ１を水平方向に加算平均した信号、ＳｉｇＴｉｎｔ２は、蓄積時間Ｔｉｎｔ２で得られた出力信号ＯＵＴ１を水平方向に加算平均した信号である。
【００９１】
そして、この差分画像信号ＳｉｇＦを参照することにより、フリッカレベルＧａｉｎＦｍａｘは、ＧａｉｎＦｍａｘ＝ＳｉｇＴｉｎｔ１／ＳｉｇＴｉｎｔ２＊（Ｔｉｎｔ１／Ｔｉｎｔ２）として求めることができる。なお、この時の差分画像信号ＳｉｇＦの最大信号レベル位置がＬＩＮＳｍｉｎとなる。差分画像信号ＳｉｇＦの最小信号レベルの位置がＬＩＮＳｍａｘとなる。また、これらの結果から、次のフレームの出力までの時間ＴＦｓを算出することができる。
【００９２】
これにより、被写体に濃淡がある場合においても、最大信号量Ｓｍａｘおよび最小信号量Ｓｍｉｎの算出精度を向上させることができ、信号量を低下させることなくフリッカを抑圧することが可能となる。
【００９３】
なお、図２０の実施形態では、図１６の実施形態と同様に、テストラインＨＴ１〜ＨＴ３の各ラインの信号の平均値を比較することで、蛍光灯フリッカの有無および５０Ｈｚ／６０Ｈｚの周波数を検出するようにしてもよい。また、図２０の実施形態では、有効エリア外にテストラインＨＴ１〜ＨＴ３を設ける方法について説明したが、テストラインＨＴ１〜ＨＴ３はなくてもよい。
【００９４】
（第４実施形態）
図２２は、本発明の第４実施形態に係る固体撮像装置の概略構成を示すブロック図である。
図２２において、この固体撮像装置には、図１のフリッカ検出部１０および電子シャッタ走査回路５の代わりにフリッカ検出部４０および電子シャッタ走査回路５ａ、５ｂが設けられている。このフリッカ検出部４０には、フリッカ検出部１０の構成に加え、フリッカ画像取得部４０ａ、未フリッカ画像取得部４０ｂおよび差分算出部４０ｃが設けられている。また、この固体撮像装置には、図１７に示すように、有効エリア外に最低で３ライン分のテストラインＨＴ１〜ＨＴ３が設けられている。
【００９５】
ここで、フリッカ画像取得部４０ａは、フリッカが発生する蓄積時間に設定された１フレーム内の奇数ラインのフリッカ画像信号を取得することができる。未フリッカ画像取得部４０ｂは、フリッカが発生しない蓄積時間に設定された１フレーム内の偶数ラインの未フリッカ画像信号を取得することができる。差分画像生成部４０ｃは、蓄積時間の差異によるレベル差を補正した後、フリッカ画像信号と未フリッカ画像信号との差分画像を生成することができる。この差分信号生成は、各画像の各ラインの水平方向の平均値のデータで算出することもできる。
【００９６】
また、電子シャッタ走査回路５ａは、電子シャッタ走査を奇数ラインごとに行うことができ、奇数ラインを制御するシフトレジスタにて構成することができる。電子シャッタ走査回路５ｂは、電子シャッタ走査を偶数ラインごとに行うことができ、偶数ラインを制御するシフトレジスタにて構成することができる。
【００９７】
ここで、電子シャッタ走査回路５ａ、５ｂからは、奇数ラインの蓄積開始信号ＥＳＥｎ、ＥＳＥｍおよび偶数ラインの蓄積開始信号ＥＳＯｎ、ＥＳＯｍが交互に切り替えて出力される。また、電子シャッタ走査回路５ａにはタイミング制御信号ＰＥＳＩＥ、ＥＳＣＫＥが入力され、電子シャッタ走査回路５ｂにはタイミング制御信号ＰＥＳＩＯ、ＥＳＣＫＯが入力される。
【００９８】
そして、フリッカを検出する場合、フリッカ画像取得部４０ａにてフリッカが検出できるように１フレーム内の奇数ラインの蓄積時間Ｔｉｎｔ１が設定され、１フレーム内の奇数ラインの出力信号ＯＵＴ１が取得される。次に、未フリッカ画像取得部４０ｂにてフリッカが打ち消されるように１フレーム内の偶数ラインの蓄積時間Ｔｉｎｔ２が設定され、１フレーム内の偶数ラインの出力信号ＯＵＴ１が取得される。そして、差分画像生成部４０ｃにおいて、これらの蓄積時間Ｔｉｎｔ１、Ｔｉｎｔ２の差異によるレベル差が補正された後、フリッカ画像信号と未フリッカ画像信号との差分画像信号が生成される。
【００９９】
そして、差分画像生成部４０ｃにて生成された差分画像信号を参照することで、フリッカ周期検出部１０ａにてフリッカ周期ＬｉｎＦが検出され、フリッカレベル検出部１０ｂにてフリッカレベルＧａｉｎＦｍａｘが検出され、フリッカ位相検出部１０ｃにて信号量が極小または極大となるラインから次のフレームの読み出しラインまでの時間ＴＦｓが検出され、フリッカレベル推定部１１に出力される。
【０１００】
そして、フリッカレベル推定部１１において、フリッカ周期ＬｉｎＦ、フリッカレベルＧａｉｎＦｍａｘおよび次のフレームの読み出しラインまでの時間ＴＦｓに基づいて、次のフレームの各ラインのフリッカ補正ゲインＧａｉｎＦが推定される。
【０１０１】
なお、このフリッカ検出は、撮像開始時などに自動的に行うようにしてもよいし、固体撮像装置の動作時に定期的に行うようにしてもよいし、外部からの指示で強制的に行うようにしてもよい。
【０１０２】
図２３は、図２２の固体撮像装置のフリッカ検出方法を示す図である。
図２３において、１フレーム内の奇数ラインでは、出力信号ＯＵＴ１のフリッカがキャンセルされ、１フレーム内の偶数ラインでは、出力信号ＯＵＴ１のフリッカがキャンセルされないように、蓄積時間Ｔｉｎｔ１、Ｔｉｎｔ２が設定される。この時の出力信号ＯＵＴ１では、カラーセンサでは、Ｂａｙｅｒ配列の場合はＧ信号のみを抽出して、水平方向の加算平均を実施することができる。
【０１０３】
これにより、フリッカ画像信号と未フリッカ画像信号との差分画像を生成するために、１フレーム分の垂直方向の平均値を保存しておく必要がなくなり、回路規模を小さくすることができる。また、処理時間も１フレーム分で済ませることができ、短時間に実行することができる。この方法は、５０Ｈｚでも６０Ｈｚでも対応ができる。すなわち、６０Ｈｚでは横縞のフリッカは固定位置に発生するが、本処理では、このフリッカも抽出することができる。
【０１０４】
実際の撮影では、被写体の環境が変化するため、蓄積時間が変更され、フリッカ量が変化する。このフリッカ量を検出して、フリッカ補正ゲインＧａｉｎＦを変更する必要がある。６０Ｈｚのフリッカは、図１８に示すように固定の位置で横縞が発生する。そこで、図２１もしくは図２３の処理で算出したフリッカ補正ゲインＧａｉｎＦと、テストラインＨＴ２、ＨＴ３のテスト信号Ｓｉｇｈｔ２、Ｓｉｇｈｔ３の信号比を算出する。そして、テストラインＨＴ２、ＨＴ３のテスト信号Ｓｉｇｈｔ２、Ｓｉｇｈｔ３の信号比に応じて、フリッカ補正ゲインＧａｉｎＦを変化させることで、フリッカ補正ゲインＧａｉｎＦをフリッカ量の変化に追従させることができる。
【０１０５】
一方、５０Ｈｚのフリッカの場合は、図１８に示すように、フリッカは３フレーム周期で繰り返し変化する。このため、図２１もしくは図２３の処理で抽出したライン番号ＬＩＮＳｍｉｎの位置の信号を水平方向に加算平均処理し、最小信号となるフリッカの時の信号量と次のフレームの信号量との比を測定し、その１．３３倍をフリッカ補正ゲインＧａｉｎＦとなすることができる。ＳＩＮ信号の振幅が０から１に変化する時、ＳＩＮ信号の位相が１２０度（または２４０度）だけずれると、０の時の振幅に対して０．７５倍となる。最大信号量は、１／０．７５＝１．３３となる。この結果をフリッカ補正ゲインＧａｉｎＦとして用いることで、フリッカ補正ゲインＧａｉｎＦをフリッカ量の変化に追従させることができる。
【０１０６】
なお、図２２の実施形態では、図１６の実施形態と同様に、テストラインＨＴ１〜ＨＴ３の各ラインの信号の平均値を比較することで、蛍光灯フリッカの有無および５０Ｈｚ／６０Ｈｚの周波数を検出するようにしてもよい。また、図２２の実施形態では、有効エリア外にテストラインＨＴ１〜ＨＴ３を設ける方法について説明したが、テストラインＨＴ１〜ＨＴ３はなくてもよい。
【０１０７】
図２４は、図２２の固体撮像装置にて検出されたフリッカレベルを示す図である。
図２４（ｂ）において、固体撮像装置を７．５Ｈｚで動作させ、濃淡のある被写体を撮像すると、出力信号ＯＵＴ１にフリッカがある場合においても、フリッカが存在しているか判別できない。そこで、図２１もしくは図２３の処理で得られた図２４（ａ）のフリッカのない信号との差分を算出することで、図２４（ｃ）に示すように、正弦波のフリッカ成分のみ抽出することができている。この時の最小もしくは最大の出力レベルと、差分算出にて得られたフリッカレベルの差から、ＧａｉｎＦｍａｘ＝５５．７／（５５．７−２．８）＝１．０５と算出できる。また、フリッカ画像信号と未フリッカ画像信号との差分画像から、フリッカの位相も検出することができる。
【０１０８】
なお、上述した実施形態では、１個のフォトダイオードＰＤおよび４個のトランジスタにて１画素１セルが構成される方法について説明したが、２画素１セル構成や４画素１セル構成に適用してもよいし、行選択トランジスタＴａがないようなセルに適用してもよい。また、ＣＭＯＳ型でなく、ＭＯＳ型などのＸＹアドレス走査型の固体撮像装置に適用してもよいし、ＣＣＤイメージャに適用してもよい。
【符号の説明】
【０１０９】
ＰＣｎ、ＰＣｎ  セル、Ｔａ  行選択トランジスタ、Ｔｂ  増幅トランジスタ、Ｔｃ  リセットトランジスタ、Ｔｄ  読出しトランジスタ、ＰＤ  フォトダイオード、ＴＬ  負荷トランジスタ、ＤＮ  検出ノード、ＶＬＩＮ  垂直信号線、１  シリアルインターフェース、２  タイミング発生回路、２ａ  電子シャッタ走査制御回路、３  水平走査回路、４  カラムＡＤＣ回路、５  電子シャッタ走査回路、６  読出し走査回路、７  パルスセレクタ、８  バイアス発生回路、９  レンズシェーディング補正部、１０、２０，３０、４０  フリッカ検出部、１０ａ  フリッカ周期検出部、１０ｂ  フリッカレベル検出部、１０ｃ  フリッカ位相検出部、１１  フリッカレベル推定部、１２  出力平均化回路、１３  蓄積時間算出部、１４  加算器、１５  乗算器、１６  信号処理回路、Ｎ１、Ｎ２  論理和回路、Ｎ３〜Ｎ８  論理積回路、Ｆ１〜Ｆ９  フリップフロップ、２０ａ  テストラインレベル判定部、２０ｂ  フレーム間レベル比較部、３０ａ、４０ａ  フリッカ画像取得部、３０ｂ、４０ｂ  未フリッカ画像取得部、３０ｃ、４０ｃ  差分画像生成部
【図１】
2011091775.tif 000003
【図２】
2011091775.tif 000004
【図３】
2011091775.tif 000005
【図４】
2011091775.tif 000006
【図５】
2011091775.tif 000007
【図６】
2011091775.tif 000008
【図７】
2011091775.tif 000009
【図８】
2011091775.tif 000010
【図９】
2011091775.tif 000011
【図１０】
2011091775.tif 000012
【図１１】
2011091775.tif 000013
【図１２】
2011091775.tif 000014
【図１３】
2011091775.tif 000015
【図１４】
2011091775.tif 000016
【図１５】
2011091775.tif 000017
【図１６】
2011091775.tif 000018
【図１７】
2011091775.tif 000019
【図１８】
2011091775.tif 000020
【図１９】
2011091775.tif 000021
【図２０】
2011091775.tif 000022
【図２１】
2011091775.tif 000023
【図２２】
2011091775.tif 000024
【図２３】
2011091775.tif 000025
【図２４】
2011091775.tif 000026