(57)【要約】【課題】本発明は、水平転送位置に依存したシェーディングと水平転送位置に依存しないシェーディングを有する撮像装置において、間引きやクロップなどのモード数に応じた数だけメモリを用意する必要がなく、シェーディング補正を適切に行うことが可能な撮像装置を提供する。【解決手段】光を電気信号に光電変換する画素が垂直および水平方向に配置され、複数の駆動パルスによって画素からの信号を垂直および水平方向に転送して出力する撮像素子を有し、撮像素子の画像信号のシェーディングを補正する撮像装置において、垂直転送期間の水平転送位置に依存するシェーディングを補正するための第１のシェーディング補正と水平転送位置に依存しないシェーディングを補正するための第２のシェーディング補正を行う。【選択図】図１
2010263553.tif 000002
【特許請求の範囲】
【請求項１】
光を電気信号に光電変換する画素が垂直及び水平方向に配置され、複数の駆動パルスによって画素からの信号を垂直および水平方向に転送して出力する撮像素子を有し、前記撮像素子からの画像データにシェーディング補正を行う撮像装置において、
垂直転送期間における水平転送位置に依存するシェーディングを補正するための第１のシェーディング補正と水平転送位置に依存しないシェーディングを補正するための第２のシェーディング補正を行う補正手段を備え、
前記補正手段は、前記第１のシェーディング補正を行うため第１のシェーディング補正値と前記第２のシェーディング補正を行うための第２のシェーディング補正値をそれぞれ有することを特徴とする撮像装置。
【請求項２】
前記補正手段は、前記撮像素子からの画像データから前記第１のシェーディング補正値および前記第２のシェーディング補正値を加算または減算または乗算または除算することによってシェーディング補正を行うことを特徴とする請求項１記載の撮像装置。
【請求項３】
前記補正手段は、前記第１のシェーディング補正値を水平転送位置に関わる第１のパラメータに応じて第３のシェーディング補正値に変換することを特徴とする請求項１または２記載の撮像装置。
【請求項４】
前記撮像素子から画像信号を読み出す第１の読み出しモードと当該第１の読み出しモードと水平転送画素数の異なる第２の読み出しモードを有し、
前記補正手段は、前記第２の読み出しモードの際に、前記第３のシェーディング補正値および前記第２のシェーディング補正値を加算または減算または乗算または除算することによってシェーディング補正を行うことを特徴とする請求項３記載の撮像装置。
【請求項５】
前記第２の読み出しモードは画素の間引きを行う間引きモードであり、前記第１のパラメータは間引き率に応じて決定することを特徴とする請求項４記載の撮像装置。
【請求項６】
前記第２の読み出しモードは画素の加算を行う加算モードであり、前記第１のパラメータは水平加算でグループ化される画素数に応じて決定することを特徴とする請求項４記載の撮像装置。
【請求項７】
前記第２の読み出しモードは画素の読み飛ばしを行うクロップモードであり、前記第１のパラメータはクロップで読み飛ばされる画素数に応じて決定することを特徴とする請求項４記載の撮像装置。
【請求項８】
前記補正手段は、前記第２のシェーディング補正値を垂直および水平転送期間に関わる第２のパラメータに応じて第４のシェーディング補正値に変換することを特徴とする請求項１または２記載の撮像装置。
【請求項９】
前記第２のパラメータは、垂直転送期間のパルス位置または水平転送周波数によって決定されることを特徴とする請求項８記載の撮像装置。
【請求項１０】
前記第１の読み出しモードと垂直転送期間またはクロック周期が異なる第３の読み出しモードをさらに有し、
前記補正手段は、前記第３の読み出しモードの際に、前記第１のシェーディング補正値および前記第４のシェーディング補正値を加算または減算または乗算または除算することによってシェーディング補正を行うことを特徴とする請求項４記載の撮像装置。
【請求項１１】
前記第２の読み出しモードと垂直転送期間またはクロック周期が異なる第４の読み出しモードをさらに有し、
前記補正手段は、前記第４の読み出しモードの際に、前記第３のシェーディング補正値および前記第４のシェーディング補正値を加算または減算または乗算または除算することによってシェーディング補正を行うことを特徴とする請求項４記載の撮像装置。
【請求項１２】
前記第１の読み出しモードでの駆動時の補正値を生成するデータの中で、特定の周波数成分もしくは特定の振幅のデータに応じて前記第１のシェーディング補正値と前記第２のシェーディング補正値に分離することを特徴とする請求項４記載の撮像装置。
【請求項１３】
前記補正手段は、前記第２の読み出しモードで得られた画像から前記第１のシェーディング補正値を生成し、前記第１の読み出しモードで得られた画像から得たシェーディングデータから前記第１のシェーディング補正値を差分したデータを前記第２のシェーディング補正値とすることを特徴とする請求項１または２記載の撮像装置。
【請求項１４】
前記補正手段は、前記第１のシェーディング補正値、前記第２のシェーディング補正値、前記第３のシェーディング補正値に所定のゲインを掛けたそれぞれの補正データからシェーディングを補正することを特徴とする請求項３記載の撮像装置。
【請求項１５】
前記補正手段は、前記第４のシェーディング補正値に所定のゲインを掛けた補正データから前記シェーディング補正を行うことを特徴とする請求項８記載の撮像装置。
【請求項１６】
前記所定のゲインは、前記水平転送位置における複数の読み出し位置から一次もしくは数次の曲線のデータで求められることを特徴とする請求項１４または１５記載の撮像装置。
【請求項１７】
前記第２のシェーディング補正値および前記第４のシェーディング補正値は、前記所定のゲインを掛けて、前記第１のシェーディング補正値から生成されることを特徴とする請求項１６記載の撮像装置。
【請求項１８】
光を電気信号に光電変換する複数の画素と、前記複数の画素から読み出された電気信号を蓄積する第１のメモリおよび第２のメモリと、前記第２のメモリから電気信号を取り出す出力回路とを有する撮像素子において、
前記複数の画素から読み出された電気信号を前記第１のメモリに蓄積する垂直転送期間と前記第２のメモリから電気信号を取り出す水平転送期間の少なくとも一部が同一の時刻で行う第１の読み出し方法で読み出すことを特徴とする撮像素子。
【請求項１９】
前記第１の読み出し方法と第１のメモリに画素の電気信号を蓄積する垂直転送期間と第２のメモリの信号を出力する水平転送期間の一部が同時刻でない第２の読み出し方法を有することを特徴とする請求項１８記載の撮像素子。
【請求項２０】
光を電気信号に光電変換する画素が垂直及び水平方向に配置され、複数の駆動パルスによって画素からの信号を垂直および水平方向に転送して出力する撮像素子を有し、前記撮像素子からの画像データにシェーディング補正を行う撮像装置の制御方法において、
垂直転送期間における水平転送位置に依存するシェーディングを補正するための第１のシェーディング補正値と水平転送位置に依存しないシェーディングを補正するための第２のシェーディング補正値に基づいてシェーディング補正を行う補正工程を備えることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像素子、撮像装置およびその制御方法に関し、特に、水平転送位置に依存したシェーディングと水平転送位置に依存しないシェーディングを行う撮像素子、撮像装置およびその制御方法に関する。
【背景技術】
【０００２】
従来、ＣＣＤ（Charge Coupled Device）やＣＭＯＳＡＰＳ（CMOS Active Pixel Sensor）を撮像素子として使用し、撮影した画像を記録するデジタルカメラやデジタルビデオカメラなどの撮像装置が発売されている。これらの撮像装置では、撮像素子が有している暗時や明時のシェーディングを補正することで高画質を提供している。従来の撮像装置の構成要素である撮像素子の概略構成を図１１に示す。
【０００３】
図１１において、１１０１は、光を電気信号に光電変換する画素が垂直方向および水平方向に配置された画素部である。１１０２は行選択回路（垂直方向の選択回路）であり、１１０３は画素の信号を読み出す列読み出し回路である。１１０４は列メモリであり、列読み出し回路１１０３により読み出された信号が蓄積される。列メモリ１１０４は、列選択回路１１０５により走査され、順に出力線１１０６に信号が取り出される。
【０００４】
図１２は、図１１の撮像素子から読み出される信号の読み出しタイミングの一例を示す図である。
【０００５】
図１２において、ＨＢＬＫ期間には、行選択回路１１０２で選択されているｎ行の画素の信号が図示しない複数のクロック信号に応じて列読み出し回路１１０３により列メモリ１１０４に蓄積される。その後、水平転送期間において、列メモリ１０４の信号が列選択回路１１０５に走査され、順次出力線１１０６を介して出力される。ｎ行の水平転送期間が終了すると、次はｎ＋１行目が選択され、同様に、ＨＢＬＫ期間および水平転送期間に駆動が行われる。１画面を読み出すまで同様にＨＢＬＫ期間と水平転送期間が繰り返される。
【０００６】
ところで、撮像素子には、画素の不均一性による垂直方向、水平方向のシェーディングが存在する。特に、水平方向は、読み出し回路、メモリの不均一性あるいはメモリから出力線を介して信号が出力されるまでの距離に応じて水平方向のシェーディングが存在する。これらのシェーディングは、撮像素子が出力する信号を撮像装置が有する補正処理によって補正することで均一にし、高画質を提供している。シェーディングのようすとその補正の概略を図１３（ａ）および図１３（ｂ）を参照して説明する。
【０００７】
図１３（ａ）に水平方向のシェーディングの形状を示す。上述したように、撮像素子は、水平転送位置に応じて異なるレベルのゲイン、オフセットを有し、それがシェーディングとなっている。このシェーディングを補正するためにシェーディング補正を行っている。具体的には、図１３（ｂ）は撮影時の画像データにシェーディング補正データが重畳しているようすを示す。図１３（ｂ）から図１３（ａ）の減算もしくは除算を行うことで、シェーディングの影響を低減している。
【０００８】
シェーディングを補正するためのシェーディング補正データは、撮影前に画像を取得し、その画像から求めている。例えば、暗時のシェーディングにおいては、撮影前に遮光状態で画像を撮影し、その画像からシェーディング補正データを求め、撮影画像から減算することでシェーディングを補正する。シェーディング補正データは、撮像装置の電源投入時や撮影開始の指示が出てから取得してもよいが、その場合は電源投入までの時間が長くなったり、撮影開始の指示から撮影までのタイムラグが大きくなってしまう。したがって、撮影装置を出荷する前にシェーディング補正データをメモリに有しておくのが最も好ましい。
【０００９】
ところで、画像を高速に読み出す技術のひとつとして、ＨＢＬＫ期間と水平転送期間を同一時刻に行う撮像装置がある（例えば、特許文献１、２参照）。
【００１０】
また、最近のデジタルカメラなどで機能の一つとして存在する動画モードにおいては、上記ＨＢＬＫ期間における駆動パルスの影響が前述のシェーディング補正では補正不可能である。動画モードとは、撮像素子がフレームレートをあげるため、画素を間引いて読む間引き読み、画素を水平転送の先頭から飛ばして読み出すクロップ読みなどがある。これら動画モードにおけるシェーディングのようすを図１４（ａ）〜図１４（ｅ）に示す。
【００１１】
図１４（ａ）は全画素読み出しの際のシェーディング形状を示す図であり、図１４（ｂ）は間引きを行った際のシェーディング形状を示す図である。
【００１２】
図１４（ａ）のシェーディング形状を間引きに対応して間引いたシェーディング補正データが、図１４（ｃ）である。図１４（ｃ）のシェーディング補正データでは、図１４（ｂ）のシェーディングは補正不可能である。なぜなら、シェーディング形状の中で水平転送位置に依存する成分は間引いたデータで補正可能であるが、ＨＢＬＫ期間中の駆動パルスの影響によるシェーディング形状は水平転送位置には依存しないからである。すなわち、図１４（ａ）を補正するシェーディング補正データを単純に間引いた図１４（ｃ）のシェーディング補正データでの補正を行おうとすると、ＨＢＬＫ期間中の駆動パルスの影響によるシェーディング形状分を誤補正してしまう。
【００１３】
同様に、図１４（ｄ）はクロップ読みを行った際のシェーディング形状を示し、図１４（ｅ）は図１４（ａ）のシェーディングを補正するシェーディング補正データをクロップ読みで飛ばされた画素数分だけ単純になくしたシェーディング補正データである。ここでも、図１４（ｄ）のシェーディング形状と図１４（ｅ）のシェーディング補正データの形状が異なっているため、単純にクロップで飛ばされた画素数だけ図１４（ａ）のシェーディング形状を読み飛ばしたシェーディング補正データでは補正不可能である。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開２００１―４５３７５号公報
【特許文献２】特開２００１―４５３７８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら、上述したように、ＨＢＬＫ期間と水平転送期間を同一時刻に行う方式では、ＨＢＬＫ期間の影響によるシェーディングは水平転送位置に依存しないため、全画面を読み出した際のシェーディング補正データが使用できない。この問題を回避するには、動画モードのクロップ数、間引き率分だけシェーディング補正データも有すれば可能であるが、補正データを格納するメモリが膨大に必要となってしまう。
【００１６】
また、ＨＢＬＫ期間と水平転送期間を同一時刻に行う方式でなくても、ＨＢＬＫ期間の駆動パルスの影響で読み出し回路の電源電圧が変動し、それが水平転送期間においても収束していない場合は同様のことが言える。すなわち、水平転送位置に応じて発生したシェーディングは水平転送位置に依存し、ＨＢＬＫ期間の駆動パルスから受けた電源変動によるシェーディングは水平転送位置に依存しない。この問題も回避するには、同様に動画モードのクロップ数、間引き率分だけシェーディング補正データも有すれば可能であるが、補正データを格納するメモリが膨大に必要となってしまう。
【００１７】
本発明は、上記問題に鑑みて成されたものであり、間引きやクロップなどのモード数に応じた数だけメモリを用意する必要がなく、シェーディング補正を適切に行うことが可能な撮像素子、撮像装置およびその制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１８】
上記目的を達成するために、請求項１記載の撮像装置は、光を電気信号に光電変換する画素が垂直及び水平方向に配置され、複数の駆動パルスによって画素からの信号を垂直および水平方向に転送して出力する撮像素子を有し、前記撮像素子からの画像データにシェーディング補正を行う撮像装置において、垂直転送期間における水平転送位置に依存するシェーディングを補正するための第１のシェーディング補正と水平転送位置に依存しないシェーディングを補正するための第２のシェーディング補正を行う補正手段を備え、前記補正手段は、前記第１のシェーディング補正を行うため第１のシェーディング補正値と前記第２のシェーディング補正を行うための第２のシェーディング補正値をそれぞれ有することを特徴とする。
【００１９】
上記目的を達成するために、請求項１８記載の撮像素子は、光を電気信号に光電変換する複数の画素と、前記複数の画素から読み出された電気信号を蓄積する第１のメモリおよび第２のメモリと、前記第２のメモリから電気信号を取り出す出力回路とを有する撮像素子において、前記複数の画素から読み出された電気信号を前記第１のメモリに蓄積する垂直転送期間と前記第２のメモリから電気信号を取り出す水平転送期間の少なくとも一部が同一の時刻で行う第１の読み出し方法で読み出すことを特徴とする。
【００２０】
上記目的を達成するために、請求項２０記載の撮像装置の制御方法は、光を電気信号に光電変換する画素が垂直及び水平方向に配置され、複数の駆動パルスによって画素からの信号を垂直および水平方向に転送して出力する撮像素子を有し、前記撮像素子からの画像データにシェーディング補正を行う撮像装置の制御方法において、垂直転送期間における水平転送位置に依存するシェーディングを補正するための第１のシェーディング補正値と水平転送位置に依存しないシェーディングを補正するための第２のシェーディング補正値に基づいてシェーディング補正を行う補正工程を備えることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、水平転送位置に依存したシェーディングと水平転送位置に依存しないシェーディングを有する撮像装置において、間引きやクロップなどのモード数に応じた数だけメモリを用意する必要がなく、シェーディング補正を適切に行うことが可能である。
【図面の簡単な説明】
【００２２】
【図１】本発明の第１の実施形態に係る撮像装置の構成要素である撮像素子の概略構成を示す図である。
【図２】図１の撮像素子から読み出される信号の読み出しタイミングの一例を示す図である。
【図３】（ａ）は図２に示す読み出しタイミングで撮像素子を駆動した際のシェーディング形状を示す図であり、（ｂ）はＨＢＬＫ期間中の駆動パルスを示す図である。
【図４】（ａ）は図２に示す読み出しタイミングで撮像素子を駆動した際のシェーディング形状を示す図であり、（ｂ）はＨＢＬＫ期間中の駆動パルスを示す図、（ｃ）は水平転送位置に依存しないシェーディング形状を示す図、（ｄ）は図４（ｂ）に示す水平転送位置に依存するシェーディング形状を間引いたシェーディング形状を有する補正データを示す図、（ｅ）は図４（ｄ）の補正データにより撮影画像から除去されるシェーディング成分を示す図、（ｆ）は図４（ｂ）に示す水平転送位置に依存するシェーディング形状をクロップで読み飛ばされた画素数分だけ先頭を読み飛ばした補正データを示す図、（ｇ）は図４（ｆ）の補正データにより撮影画像から除去されるシェーディング成分を示す図である。
【図５】（ａ）は補正データ１，２に基づくシェーディング補正の流れを示す図、（ｂ）は補正データ１，２，３に基づくシェーディング補正の流れを示す図である。
【図６】（ｃ）は補正データ１，２，４に基づくシェーディング補正の流れを示す図、（ｄ）は補正データ１〜４に基づくシェーディング補正の流れを示す図である。
【図７】クロック端子を含む図１の撮像素子の概略構成を示す図である。
【図８】３つの読み出し位置におけるクロックＡからの振られによるシェーディングの形状を示す図である。
【図９】本発明の第２の実施形態に係る撮像装置の概略構成を示すブロック図である。
【図１０】図９の撮像信号処理回路１００６により実行されるシェーディング補正の流れを示すフローチャートである。
【図１１】従来の撮像装置の構成要素である撮像素子の概略構成を示す図である。
【図１２】図１１の撮像素子から読み出される信号の読み出しタイミングの一例を示す図である。
【図１３】（ａ）は水平方向のシェーディングの形状を示す図、（ｂ）は撮影時の画像データにシェーディング補正データが重畳しているようすを示す図である。
【図１４】（ａ）は全画素読み出しの際のシェーディング形状を示す図、図１４（ｂ）は間引きを行った際のシェーディング形状を示す図である。
【発明を実施するための形態】
【００２３】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００２４】
［第１の実施形態］
図１は、本発明の第１の実施形態に係る撮像装置の構成要素である撮像素子の概略構成を示す図である。
【００２５】
図１において、１０１は、光を電気信号に光電変換する画素が垂直方向および水平方向に配置された画素部である。１０２は行選択回路（垂直方向の選択回路）であり、１０３は画素の信号を読み出す列読み出し回路である。１０４は列メモリ（第１のメモリ）であり、列読み出し回路１０３により読み出された電気信号が蓄積される。１０７は列メモリ２（第２のメモリ）である。行選択回路１０２によって選択された行の画素から読み出された信号が交互に列メモリ１０４と列メモリ２＿１０７に転送される。列メモリ１０４と列メモリ２＿１０７は、列選択回路１０５（出力回路）によって走査され、出力線１０６に信号が取り出される。
【００２６】
図２は、図１の撮像素子から読み出される信号の読み出しタイミングの一例を示す図である。
【００２７】
図２において、ＨＢＬＫ１期間には、行選択回路１０２で選択されているｎ行目の画素の信号が読み出し回路１０３により読み出され列メモリ１０４に蓄積される。ＨＢＬＫ２期間には、行同様に、行選択回路１０２で選択されているｎ＋１行目の画素の信号が読み出し回路１０３により読み出され列メモリ２＿１０７に蓄積される。
【００２８】
水平転送期間には、列メモリ１０４および列メモリ２＿１０７の信号が列選択回路１０５によりそれぞれ走査され、順次出力線１０６を介して出力される。撮像素子が第２のメモリである列メモリ２＿１０７を備えるので、ＨＢＬＫ期間（垂直転送期間）中に列メモリ２＿１０７に信号を蓄積する間に、列メモリ１０４の水平転送を行い、列メモリ２＿１０７の水平転送期間中には列メモリ１０４の上書きが可能になる。同様に、ＨＢＬＫ期間中に列メモリ１０４に信号を蓄積する間に列メモリ２＿１０７の水平転送を行い、列メモリ１０４の水平転送期間中には列メモリ２＿１０７の上書きが可能になる。このように、本実施の形態では、ＨＢＬＫ期間と水平転送期間が同一時刻に行われる（第１の読み出し方法）。
【００２９】
同様に、ｎ＋１行目の水平転送期間にｎ＋２行目のＨＢＬＫ１期間を開始することが可能であり、１画面を読み出すまで、水平転送期間と水平転送期間の同時刻のＨＢＬＫ１期間またはＨＢＬＫ２期間とが繰り返される。このような構成をとることで、画像の読み出しにかかる期間をＨＢＬＫ期間×読み出し行数だけ短縮し、高速の読み出しが可能となる。列毎にＡＤを有する撮像素子もデジタル信号を保持することで、より高速化が可能である。
【００３０】
次に、図２に示す読み出しタイミングで撮像素子を駆動した際のシェーディングのようすと補正データについて説明する。
【００３１】
図３（ａ）は、図２に示す読み出しタイミングで撮像素子を駆動した際のシェーディング形状を示す図であり、図３（ｂ）は、ＨＢＬＫ期間中の駆動パルスを示す図である。
【００３２】
ＨＢＬＫ期間中の駆動パルスの変動による影響がシェーディングとして重畳している。これは、ＨＢＬＫ期間中の駆動パルスにより列読み出し回路１０３の電源電圧や信号線の電圧が変動し、それによって発生するシェーディングが水平転送位置に依存したシェーディングに重畳して発生しているからである。これらのＨＢＬＫ期間における駆動パルスの影響が重畳したシェーディングについても、基本的には後述するシェーディング補正により影響を低減することが可能である。
【００３３】
図４（ａ）は、図３（ａ）と同様に、図２に示す読み出しタイミングで撮像素子を駆動した際のシェーディング形状を示す図である。図４（ｂ）は、水平転送位置に依存するシェーディング形状を示す図、図４（ｃ）は、ＨＢＬＫ期間における駆動パルスの影響による水平転送位置に依存しないシェーディング形状を示す図である。
【００３４】
水平転送位置に依存するシェーディング形状である図４（ｂ）と同じ形状のシェーディング補正データを補正データ１（第１のシェーディング補正値）とする。水平転送位置に依存しないシェーディング形状である図４（ｃ）と同じ形状シェーディング補正データを補正データ２（第２のシェーディング補正値）とする。
【００３５】
図４（ａ）のシェーディング形状から補正データ１と補正データ２を得るためには、まず、図４（ａ）のシェーディング形状を有する撮影画像のシェーディングデータにローパス処理を行い、高周波成分をカットする。これにより、図４（ｂ）のシェーディング形状を有する画像を取得して補正データ１を得る（第１のシェーディング補正）。これは、特定の高周波成分を除いた低周波成分である補正データ１を得たことを意味する。さらに、撮影画像のシェーディングデータから補正データ１のシェーディング形状の差分を求めることで、図４（ｃ）のシェーディング形状を有する画像を取得して補正データ２を得る（第２のシェーディング補正）。これは、特定の周波数成分である補正データ２を得たことを意味する。これにより、全画面モード（第１の読み出しモード）での駆動時の補正値を生成するデータの中で、特定の周波数成分または特定の振幅のデータに応じて補正データ１、補正データ２というそれぞれ特定の振幅のデータを得られる。
【００３６】
別の方法として、図１の撮像素子を、図１２のように水平転送期間とＨＢＬＫ期間を同一の時刻ではない別の時刻に行う（第２の読み出し方法）駆動方法で駆動する。まず、図４（ｂ）の水平転送位置に依存するシェーディング成分を持った画像を取得し、そこから補正データ１を作成する。
【００３７】
次に、図２のように駆動することで図４（ａ）のシェーディング形状を有する画像を取得し、同様に、図４（ａ）のシェーディング形状から図４（ｂ）のシェーディングの差分を求める。これにより、図４（ｃ）のシェーディング形状を有する補正データ２を得る。上記のようにして求めた補正データ１と補正データ２は記憶手段（不図示）に記憶される。
【００３８】
シェーディング補正の方法については、全画面読み出し（全画面モード）の際には、撮像素子で取得した画像データから補正データ１および補正データ２を減算または除算をすることで、図４（ａ）のシェーディング形状を補正可能である。なお、単純な加算・減算、除算だけでなく、補正データ１あるいは補正データ２に係数を掛けた（乗算）後に加算・減算または除算をすることも可能である。係数は、温度、読み出しゲイン、出力レベル、電源電圧、および列回路に流れる電流値などの撮像素子の駆動条件に応じて適宜変更可能とする。
【００３９】
次に、全画面モード時の補正と、全画面モードと水平転送画素数の異なる間引きモード時の補正とクロップ時の補正について説明する。
【００４０】
全画面モード（第１の読み出しモード）時の補正については、図４（ａ）〜図４（ｇ）および図５（ａ）を用いて説明する。
【００４１】
上述のとおり、水平転送位置に依存するシェーディング補正データを補正データ１、水平転送位置に依存しないシェーディング補正データを補正データ２とし、それぞれ図４（ｂ）と図４（ｃ）の形状に相当する。
【００４２】
図５（ａ）において、撮影した画像から補正データ１を減算または除算する。それによって、撮影画像に含まれる図４（ｂ）に示すシェーディング成分を除去する。次に、撮影した画像から補正データ２を減算または除算する。それによって、撮影画像に含まれる図４（ｃ）に示すシェーディング成分を除去し、記録用画像データを取得する。補正データ１あるいは補正データ２に、温度、読み出しゲイン、出力レベル、電源電圧、および列回路に流れる電流値などの条件によって変更する係数を撮像素子の駆動条件に応じて適宜掛けることも可能である。
【００４３】
間引きモード時の補正について、図４（ａ）〜図４（ｇ）および図５（ｂ）を用いて説明する。ここでは、間引きモードを用いて説明するが、加算モードなどで画素数を間引く方法においても有効である。
【００４４】
図４（ｄ）は、図４（ｂ）に示す水平転送位置に依存するシェーディング形状を間引いたシェーディング形状を有する補正データを示す図である。
【００４５】
図５（ｂ）において、モードによって設定された水平転送位置情報であるパラメータＸ（第１のパラメータ）に応じて補正データ１を補正データ３に変換する。図４（ｄ）で説明したシェーディング補正データが補正データ３（第３のシェーディング補正値）となる。パラメータＸは、間引き率によって決定される。撮影した画像データから補正データ３および補正データ２を減算または除算することで、撮影画像に含まれる図４（ｅ）に示すシェーディング成分を除去して記録用画像データを取得する。また、補正データ３あるいは補正データ２に、温度、読み出しゲイン、出力レベル、電源電圧、および列回路に流れる電流値などの条件によって変更する係数を撮像素子の駆動条件に応じて適宜掛けることが変更可能である。また、補正データ２には、後述する位置関係に対応した所定のゲインを掛けることも可能である。なお、画素数を間引く加算モードの場合、パラメータＸは、水平加算でグループ化される画素数に応じて決定される。
【００４６】
次に、クロップモード時の補正について説明する。
【００４７】
図４（ｆ）は、図４（ｂ）に示す水平転送位置に依存するシェーディング形状をクロップで読み飛ばされた画素数分だけ先頭を読み飛ばした補正データを示す図である。
【００４８】
図５（ｂ）において、モードによって設定された水平転送位置情報であるパラメータＸに応じて補正データ１を補正データ３に変換する。図４（ｆ）で説明したシェーディング補正データが補正データ３となる。パラメータＸは、クロップで読み飛ばされた画素数によって決定される。撮影した画像データから補正データ３および補正データ２を減算または除算することで、撮影画像に含まれる図４（ｇ）に示すシェーディング成分を除去して記録用画像データを取得する。また、補正データ３あるいは補正データ２に、温度、読み出しゲイン、出力レベル、電源電圧、および列回路に流れる電流値などの条件によって変更する係数を撮像素子の駆動条件に応じて適宜掛けることが変更可能である。また、補正データ２には、後述する位置関係に対応した所定のゲインを掛けることも可能である。
【００４９】
また、水平転送周波数やＨＢＬＫ期間を変更するなどして、水平転送位置とＨＢＬＫ期間の駆動パルスの位置関係が全画面モード時と異なる読み出しモードがある。その場合の補正においては、図６（ｃ）のように、補正データ２にＨＢＬＫ期間中の時間のパラメータであるパラメータＴ（第２のパラメータ）から水平転送位置に応じて補正データ４（第４のシェーディング補正値）を生成し、差分をとることも可能である。パラメータＴは、水平転送周波数やＨＢＬＫ期間中の駆動パルスのパルス位置から決定される。前述の間引きやクロップなどの動画時に水平転送周波数やＨＢＬＫ期間を合わせて変更するときは、図６（ｄ）のように補正データ１と補正データ２をそれぞれ補正データ３と補正データ４に変換して補正する。これにより、撮影画像に含まれるシェーディングを補正することが可能となる。
【００５０】
ところで、撮像素子によってはＨＢＬＫ起因のシェーディングは、どの水平転送位置でも同じ程度だけ重畳されず場所依存があることが考えられる。
【００５１】
図７は、クロック端子を含む図１の撮像素子の概略構成を示す図である。
【００５２】
図７において、クロックＡが外部からクロックバッファを介して列読み出し回路１０３に供給されている。クロックバッファによる電源等の振られが、水平転送位置によって変化することが考えられる。
【００５３】
図８は、水平転送位置の３つの読み出し位置におけるクロックＡからの振られによるシェーディングの形状を示す図である。
【００５４】
クロックバッファとの距離に比例してシェーディングの程度が変化する場合、２つの水平転送位置の読み出し位置でのシェーディングのデータから、クロックバッファからの読み出し位置によって一次曲線で示されるゲイン（係数）を掛ける。その結果、水平転送位置の読み出し位置毎にデータを有する必要がなくなる。ここでは、２つの水平転送位置の読み出し位置から一次曲線で係数を求める方法を記載したが、この限りではなく、水平転送位置における複数の読み出し位置から一次もしくは数次の曲線のデータで求めてもよい。また、クロックＡが外部からクロックバッファを介して読み出し回路に供給されず、内部で生成されてもよい。
【００５５】
以上説明したように、シェーディング補正データを水平転送位置に依存するシェーディング補正データと水平転送位置に依存しないシェーディング補正データに分離して記憶しておく。これにより、間引きやクロップを行う動画モード時においても、間引き率、クロップ位置数に依らず、２つのシェーディング補正データで補正可能である。
【００５６】
また、水平転送周波数を変更あるいはＨＢＬＫ期間を変更するモードが必要な撮像装置においても、上述のように水平転送位置に依存するシェーディング補正データと水平転送位置に依存しないシェーディング補正データに分離した後に補正する。これにより、シェーディング補正データをモード数分だけ用意する必要がなくなる。具体的には、水平転送位置に依存しないシェーディング補正データをクロック周期もしくはＨＢＬＫ期間が異なる水平転送位置に対応させて、水平転送位置に依存するシェーディング補正データとあわせてシェーディングを補正する。（第３の読み出しモードおよび第４の読み出しモード）これにより、クロック周波数を変更した際に補正可能なシェーディング補正データを生成できる。
【００５７】
上記実施形態では、ＨＢＬＫ期間と水平転送期間とが同一時刻に行うことで、動画モード時のシェーディング補正データを水平転送位置に依存するシェーディング補正データと水平転送位置に依存しないシェーディング補正データに分離して補正する例を述べた。
【００５８】
しかしながら、ＨＢＬＫ期間と水平転送期間が重なっていない撮像素子の読み出し方法についても、ＨＢＬＫ期間の駆動パルスによって読み出し回路の電源電圧が変動し、水平転送期間にまだ収束していないような状態であれば、分離して補正することが有効になる。
【００５９】
［第２の実施形態］
上述した撮像素子の駆動方法を撮像装置であるデジタルカメラに適用した場合の実施形態について図９を参照して説明する。
【００６０】
図９は、本発明の第２の実施形態に係る撮像装置の概略構成を示すブロック図である。
【００６１】
図９において、１００１は被写体の光学像を撮像素子１００５に結像させるレンズ部であり、レンズ駆動装置１００２によってズーム制御、フォーカス制御、絞り制御などが行われる。１００３はメカニカルシャッターでシャッター制御手段１００４によって制御される。
【００６２】
１００５はレンズ部１００１で結像された被写体を画像信号として取り込むための撮像素子である。１００６は撮像素子１００５より出力される画像信号の増幅や、アナログーディジタル変換を行うＡ／Ｄ変換、Ａ／Ｄ変換後の画像データに各種の補正を行ったり、データを圧縮する撮像信号処理回路である。撮像信号処理回路１００６によって上述した補正データの生成を行い、補正処理を行う。
【００６３】
１００７は撮像素子１００５、撮像信号処理回路１００６に、各種タイミング信号を出力する駆動手段であるタイミング発生回路である。１００９は各種演算と撮像装置全体を制御する制御回路である。１００８は画像データを一時的に記憶するためのメモリである。１０１０は記録媒体に記録または読み出しを行うためのインターフェースである。１０１１は画像データの記録または読み出しを行うための半導体メモリ等の着脱可能な記録媒体である。１０１２は外部コンピュータ等と通信するためのインターフェースである。
【００６４】
次に、図９に示す撮像装置における撮影時の動作について説明する。
【００６５】
撮像装置のメイン電源（不図示）がオンされると、制御回路１００９などのコントロール系回路の電源がオンし、更に、撮像信号処理回路１００６などの撮像系回路の電源がオンされる。次に、不図示のレリーズボタンが押されると、測距装置１０１４から出力された信号をもとに、高周波成分を取り出して被写体までの距離の演算を制御回路１００９で行う。その後、レンズ駆動装置１００２によりレンズ部１００１を駆動して合焦か否かを判断し、合焦していないと判断した時は、再びレンズ部を駆動し測距を行う。そして、合焦が確認された後に撮影動作が開始する。
【００６６】
撮影動作が終了すると、撮像素子１００５から出力された画像信号は撮像信号処理回路１００６で増幅、Ａ／Ｄ変換などの処理をされ、制御回路１００９によりメモリに書き込まれる。メモリ１００８に蓄積されたデータは、制御回路１００９の制御により記録媒体制御Ｉ／Ｆ部１０１０を通り半導体メモリ等の着脱可能な記録媒体１０１１に記録される。また、外部Ｉ／Ｆ部１０１２を通り直接コンピュータ等に入力して画像の加工を行ってもよい。
【００６７】
次に、撮像信号処理回路１００６により実行されるシェーディング補正について図１０を用いて説明する。
【００６８】
図１０は、図９の撮像信号処理回路１００６により実行されるシェーディング補正の流れを示すフローチャートである。
【００６９】
撮像信号処理回路１００６のシェーディング補正回路では、全画面モードで撮影された画像か否かを判定する（ステップＳ８０１）。この判定の結果、全画面モードで撮影された画像でないと判定した場合は、ステップＳ８０５へ進む。一方、全画面モードで撮影された画像であると判定した場合、補正データ１に、温度、読み出しゲイン、出力レベル、電源電圧、および列回路に流れる電流値などの条件により、所定の係数（ゲイン）を掛ける必要があるか否かを判定する（ステップＳ８０２）。この判定の結果、係数を掛ける必要がない場合は、補正データ１を画像データから減算することで、水平転送位置に依存するシェーディングの補正を行う（ステップＳ８０３）。一方、係数を掛ける必要がある場合は、補正データ１に係数を掛けたデータを画像から減算することで、水平転送位置に依存するシェーディングの補正を行う（ステップＳ８０４）。
【００７０】
ステップＳ８０５では、クロップで読み飛ばされる画素数や間引き率よって決定されるパラメータＸによって補正データ１を補正データ３に変換する（ステップＳ８０５）。次に、補正データ３に、温度、読み出しゲイン、出力レベル、電源電圧、および列回路に流れる電流値などの条件により、所定の係数（ゲイン）を掛ける必要があるか否かを判定する（ステップＳ８０６）。この判定の結果、係数を掛ける必要がない場合は、補正データ３を画像データから減算することで、水平転送位置に依存するシェーディングの補正を行う（ステップＳ８０７）。一方、係数を掛ける必要がある場合は、補正データ３に係数を掛けたデータを画像から減算することで、水平転送位置に依存するシェーディングの補正を行う（ステップＳ８０８）。
【００７１】
次に、ステップＳ８０９では、水平転送周波数やＨＢＬＫ期間中の駆動パルスの位置をシェーディング補正データ１，２を取得したときに対して変更しているか否かを判定する（ステップＳ８０９）。この判定の結果、変更していないときは、ステップＳ８１４へ進む。一方、変更しているときは、補正データ２をパラメータＴやクロックバッファからの位置に応じて補正データ４に変換する（ステップＳ８１０）。
【００７２】
次に、補正データ４に温度、読み出しゲイン、出力レベル、電源電圧、列回路に流れる電流値などの条件により、所定の係数（ゲイン）を掛ける必要があるか否かを判定する（ステップＳ８１１）。この判定の結果、係数を掛ける必要がない場合は、補正データ４を画像データから減算することで、水平転送位置に依存しないシェーディングの補正を行う（ステップＳ８１２）。一方、係数を掛ける必要がある場合は、補正データ４に係数を掛けたデータを画像から減算することで、水平転送位置に依存しないシェーディングの補正を行う（ステップＳ８１３）。
【００７３】
ステップＳ８１４では、補正データ２に温度、読み出しゲイン、出力レベル、電源電圧、列回路に流れる電流値などの条件により、所定の係数（ゲイン）を掛ける必要があるか否かを判定する。この判定の結果、係数を掛ける必要がない場合は、補正データ２を画像データから減算することで、水平転送位置に依存しないシェーディングの補正を行う（ステップＳ８１５）。一方、係数を掛ける必要がある場合は、補正データ２に係数を掛けたデータを画像から減算することで、水平転送位置に依存しないシェーディングの補正を行う（ステップＳ８１６）。その後、水平転送位置に依存するシェーディングの補正と依存しないシェーディングの補正を行ったところで補正終了となる。
【００７４】
上述のように、シェーディング補正を行うことで、２つのシェーディング補正データから複数のモードに対応したシェーディング補正データを生成し、補正することが可能となる。
【００７５】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７６】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【００７７】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００７８】
更に、前述した実施形態の機能が実現可能な構成としては次の場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【符号の説明】
【００７９】
１０１  画素部
１０２  行選択回路
１０３  列読み出し回路
１０４  列メモリ
１０５  列選択回路
１０６  出力線
１０７  列メモリ２
１００６  撮像信号処理回路
１００９  制御回路
【図１】
2010263553.tif 000003
【図２】
2010263553.tif 000004
【図３】
2010263553.tif 000005
【図４】
2010263553.tif 000006
【図５】
2010263553.tif 000007
【図６】
2010263553.tif 000008
【図７】
2010263553.tif 000009
【図８】
2010263553.tif 000010
【図９】
2010263553.tif 000011
【図１０】
2010263553.tif 000012
【図１１】
2010263553.tif 000013
【図１２】
2010263553.tif 000014
【図１３】
2010263553.tif 000015
【図１４】
2010263553.tif 000016