(57)【要約】【課題】  複数の垂直転送部を共有する垂直転送最終段部を有し、水平分割駆動を行う撮像装置において、隣接する複数本の縦線の発生を解消する。【解決手段】  駆動モード毎に水平分割数が異なる撮像装置において、列データ積分処理部において、各列の基準データを算出し、メディアン処理部において当該列データと周辺列データのメディアン値を算出し、縦線アドレス検出部において、当該列の列データとメディアン値の比較を行い縦線アドレスの検出を行う。その際、メディアン処理部において、メディアン処理する際の周辺列データ数を水平分割数に応じて変更することで、複数隣接縦線の影響を抑え、精度良く複数隣接する縦線を検出できる。【選択図】  図４
2014033304.tif 000002
【特許請求の範囲】
【請求項１】
２次元の行列状に配列され光電変換により電荷を発生する複数の光電変換手段と、前記複数の光電変換手段で発生した電荷を列毎に垂直方向に転送する垂直転送手段と、前記垂直転送手段により列毎に垂直方向に転送された電荷を水平方向に転送する水平転送手段と、前記垂直転送手段により列毎に垂直方向に転送された同一行の電荷を複数回に分割して前記水平転送手段に転送するために前記垂直転送手段の最終段に設けられた分割手段とを備えた撮像素子により撮像される画像データに発生する縦線を検出する縦線検出装置であって、
前記画像データにおける縦線検出対象列周辺の複数列の出力データを用いて基準データを生成する基準データ生成手段と、
前記画像データにおける前記縦線検出対象列の出力データと前記基準データとの差分値を算出する差分値算出手段と、
前記差分値と所定の閾値とを比較する比較手段と、
前記比較手段による比較結果に基づいて、前記撮像素子により撮像される画像データに縦線が発生していると判定する判定手段と、
前記分割手段により同一行の電荷を複数回に分割して前記水平転送手段に転送する際の分割数に応じて、前記基準データ生成手段による前記基準データの生成に用いる前記縦線検出対象列周辺の複数列の出力データ数を切り替えるように制御する制御手段と、
を備えたことを特徴とする縦線検出装置。
【請求項２】
前記撮像素子を異なる複数の駆動モードで駆動可能であり、前記分割数は前記駆動モード毎に異なることを特徴とする請求項１に記載の縦線検出装置。
【請求項３】
前記制御手段は、前記基準データ生成手段による前記基準データの生成に用いる前記縦線検出対象列周辺の複数列の出力データ数が、前記分割数の２倍以上になるように制御することを特徴とする請求項１又は２に記載の縦線検出装置。
【請求項４】
前記基準データ生成手段は、前記画像データにおける前記縦線検出対象列周辺の複数列の出力データを用いたメディアン処理により前記基準データを生成することを特徴とする請求項１乃至３のいずれか１項に記載の縦線検出装置。
【請求項５】
前記基準データ生成手段は、前記画像データにおける前記縦線検出対象列周辺の複数列の出力データを用いた移動平均演算処理により前記基準データを生成することを特徴とする請求項１又は２に記載の縦線検出装置。
【請求項６】
２次元の行列状に配列され光電変換により電荷を発生する複数の光電変換手段と、前記複数の光電変換手段で発生した電荷を列毎に垂直方向に転送する垂直転送手段と、前記垂直転送手段により列毎に垂直方向に転送された電荷を水平方向に転送する水平転送手段と、前記垂直転送手段により列毎に垂直方向に転送された同一行の電荷を複数回に分割して前記水平転送手段に転送するために前記垂直転送手段の最終段に設けられた分割手段とを備えた撮像素子により撮像される画像データに発生する縦線を検出する縦線検出装置であって、
前記画像データにおける縦線検出対象列周辺の複数列の出力データを用いて基準データを生成する基準データ生成手段と、
前記画像データにおける前記縦線検出対象列の出力データと前記基準データとの差分値を算出する差分値算出手段と、
前記差分値と所定の閾値とを比較する比較手段と、
前記比較手段による比較結果に基づいて、前記撮像素子により撮像される画像データに縦線が発生していると判定する判定手段と、
前記分割手段により同一行の電荷を複数回に分割して前記水平転送手段に転送する際の分割数に応じて、前記基準データ生成手段による前記基準データの生成に用いる前記縦線検出対象列周辺の複数列の出力データを切り替えるように制御する制御手段と、
を備えたことを特徴とする縦線検出装置。
【請求項７】
前記撮像素子を異なる複数の駆動モードで駆動可能であり、前記分割数は前記駆動モード毎に異なることを特徴とする請求項６に記載の縦線検出装置。
【請求項８】
前記制御手段は、前記縦線検出対象列から前記分割数だけ離れた複数列の出力データを用いて前記基準データを生成するように前記基準データ生成手段を制御することを特徴とする請求項６又は７に記載の縦線検出装置。
【請求項９】
前記基準データ生成手段は、前記画像データにおける前記縦線検出対象列周辺の複数列の出力データを用いたメディアン処理により前記基準データを生成することを特徴とする請求項６乃至８のいずれか１項に記載の縦線検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像素子により撮像された画像における縦線を検出する縦線検出装置に関するものである。
【背景技術】
【０００２】
近年、デジタルスチルカメラやデジタルビデオカメラなど、撮像素子としてＣＣＤイメージセンサ（以下ＣＣＤ）を用いて撮像し、撮像画像をデジタルデータとして保存することができる撮像装置が広く普及している。また、ＣＣＤを用いた撮像装置において、フレームレートの向上や混色を低減することを目的として、ＣＣＤ内で電荷を転送する際に、水平転送期間を複数回に分割して転送を行う、水平分割駆動という技術が開発されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５‐１６６８２６号公報
【特許文献２】特開２００５‐２１６０５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このようなＣＣＤを用いた撮像装置では、垂直転送路に発生する点欠陥が原因となり、撮像した画像の画面内に縦線が発生することがある。垂直方向の連続的な画素の補正方法としては、様々な方式が提案されている。例えば、各列毎の信号値の加算平均データと周辺列の加算平均データのメディアン値との差分を検出することにより、縦線が発生しているアドレスを検出する方式が提案されている（特許文献２参照）。
【０００５】
しかしながら、特許文献１に記載されたような水平分割駆動を行なう撮像装置では、ＣＣＤ垂直転送最終段の構成に起因して隣接する複数本の縦線が発生することがあり、そのような縦線を、精度良く検出できない場合がある。また、メディアン処理などの演算処理は、処理されるデータ数に応じて処理時間等が変わるため、メディアン処理データが増加すると、撮影時のフレームレートが低下したり、或いは製造時の調整時間が長くなるなどの課題ある。
【０００６】
本発明は、このような点に鑑みてなされたものであり、同一行の電荷を複数回に分割して転送する水平分割駆動を行なう場合に、複数本の隣接する縦線を精度よく検出することを可能にした縦線検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、上記課題を解決するためになされたもので、２次元の行列状に配列され光電変換により電荷を発生する複数の光電変換手段と、前記複数の光電変換手段で発生した電荷を列毎に垂直方向に転送する垂直転送手段と、前記垂直転送手段により列毎に垂直方向に転送された電荷を水平方向に転送する水平転送手段と、前記垂直転送手段により列毎に垂直方向に転送された同一行の電荷を複数回に分割して前記水平転送手段に転送するために前記垂直転送手段の最終段に設けられた分割手段とを備えた撮像素子により撮像される画像データに発生する縦線を検出する縦線検出装置であって、前記画像データにおける縦線検出対象列周辺の複数列の出力データを用いて基準データを生成する基準データ生成手段と、前記画像データにおける前記縦線検出対象列の出力データと前記基準データとの差分値を算出する差分値算出手段と、前記差分値と所定の閾値とを比較する比較手段と、前記比較手段による比較結果に基づいて、前記撮像素子により撮像される画像データに縦線が発生していると判定する判定手段と、前記分割手段により同一行の電荷を複数回に分割して前記水平転送手段に転送する際の分割数に応じて、前記基準データ生成手段による前記基準データの生成に用いる前記縦線検出対象列周辺の複数列の出力データ数を切り替えるように制御する制御手段と、を備えたことを特徴とする。
【０００８】
また、２次元の行列状に配列され光電変換により電荷を発生する複数の光電変換手段と、前記複数の光電変換手段で発生した電荷を列毎に垂直方向に転送する垂直転送手段と、前記垂直転送手段により列毎に垂直方向に転送された電荷を水平方向に転送する水平転送手段と、前記垂直転送手段により列毎に垂直方向に転送された同一行の電荷を複数回に分割して前記水平転送手段に転送するために前記垂直転送手段の最終段に設けられた分割手段とを備えた撮像素子により撮像される画像データに発生する縦線を検出する縦線検出装置であって、前記画像データにおける縦線検出対象列周辺の複数列の出力データを用いて基準データを生成する基準データ生成手段と、前記画像データにおける前記縦線検出対象列の出力データと前記基準データとの差分値を算出する差分値算出手段と、前記差分値と所定の閾値とを比較する比較手段と、前記比較手段による比較結果に基づいて、前記撮像素子により撮像される画像データに縦線が発生していると判定する判定手段と、前記分割手段により同一行の電荷を複数回に分割して前記水平転送手段に転送する際の分割数に応じて、前記基準データ生成手段による前記基準データの生成に用いる前記縦線検出対象列周辺の複数列の出力データを切り替えるように制御する制御手段と、を備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、同一行の電荷を複数回に分割して水平転送部に転送する場合に、複数本の隣接する縦線を精度良く検出できる。そして、フレームレートの低下を抑え、製造時の調整時間を短縮することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施例に係る撮像装置の構成を示す図である。
【図２】本発明の実施例に係る撮像装置に用いられる撮像素子（ＣＣＤ）の構造を示す図である。
【図３】本発明の課題を説明するための画像を示す図である。
【図４】実施例１に係る縦線処理部の構成図である。
【図５】実施例１に係る縦線検出するためのフローチャートである。
【図６】実施例１に係る縦線検出するため画像を示す図である。
【図７】実施例１に係る縦線検出するため説明図である。
【図８】実施例１に係る撮影時のフローチャートである。
【図９】実施例１に係る撮影時に縦線検出するためのフローチャートである。
【図１０】実施例２に係る縦線処理部の構成図である。
【図１１】実施例２に係る縦線検出するためのフローチャートである。
【図１２】実施例２に係る縦線検出するため説明図である。
【図１３】実施例３に係る縦線検出するため説明図である。
【発明を実施するための形態】
【００１１】
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。なお、以下に説明する実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施形態に限定されるものではない。
【００１２】
（実施例１）
図１は、本発明の実施例１における撮像装置の構成図である。図１の撮像装置において、撮像光学系１０１は、入射した被写体の光学像を撮像素子１０２に結像する。撮像素子１０２は、撮像光学系から入射される被写体の光学像を光電変換により電気信号に変換する。本実施例では、撮像素子１０２として、ＣＣＤを用いる。また、撮像光学系１０１には、メカシャッターやレンズなどが含まれる。
【００１３】
アナログ信号処理部（ＣＤＳ）１０３は、撮像素子１０２によって光電変換されたアナログ出力信号に対して相関二重サンプリング処理などを行う。アナログ／デジタル変換部（以後、ＡＤＣ部と称す）１０４は、アナログ信号処理部１０３から順次出力されるアナログ画像信号をデジタル画像信号に変換するＡＤ変換処理を行う。縦線処理部１０５は、ＡＤＣ部１０４から出力されたデジタル画像信号に対して、撮像素子１０２の駆動モードに応じた、縦線の検出や補正処理を行う（詳細な動作は後述する）。
【００１４】
デジタル信号処理部１０６は、縦線処理部１０５から出力されたデジタル画像信号に対して、ホワイトバランス調整、ガンマ補正、画素補間等の画質補正処理を施す。フレームメモリ部１０８は、デジタル画像信号を一時的に格納するメモリであり、例えばＤＲＡＭにより構成されている。画像変換部１０９は、フレームメモリ部１０８に格納されたデジタル画像信号を電子ビューファインダー１１０に表示するためのスルー画像への変換処理を行う。電子ビューファインダー１１０は、スルー画像に変換された画像信号を表示する。これにより、撮像装置スルー画像が電子ビューファインダー１１０に表示され、ユーザーは表示画像を見て画角合わせを行うことが可能となる。
【００１５】
この状態で、操作部１１５のシャッタレリーズボタンが押下されると、メモリ部１１４の情報を基にしたシステム制御部１１３の制御により、撮像素子１０２からの１フレーム分の撮像信号がデジタル信号処理部１０６に取り込まれる。デジタル信号処理部１０６は、取り込んだ１フレーム分の画像信号に画質補正処理を施し、フレームメモリ部１０８を通して信号圧縮部１１１に供給する。信号圧縮部１１１は、フレームメモリ部１０８に格納されたデジタル画像信号に対し、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）等の手法により圧縮符号化処理を行なう。圧縮符号化処理動作は、撮影時のレリーズ動作に伴って開始される。記録メディア部１１２は、圧縮符号化処理されたデジタル画像信号を記憶するものであり、例えばフラッシュメモリにより構成されている。信号圧縮部１１１により圧縮符号化処理を施された画像データを記録メディア部１１２に供給することにより、撮像された静止画像のデータファイルが記録メディア部１１２に記録される。
【００１６】
また、動画像を記録する場合には、信号処理部１０６で順次処理された複数フレームの画像信号に信号圧縮部１１１で圧縮符号化処理を施し、生成された動画像の符号化データを順次記録メディア部１１２に転送して記録する。一方、記録メディア部１１２に記録された静止画像のデータファイルを再生する場合、システム制御部１１３は、操作部１１５からの操作入力に応じて選択されたデータファイルを記録メディア部１１２から読み込む。そして、信号圧縮部１１１に供給して伸張復号化処理を実行させる。復号化された画像信号は画像変換部１０９を介して電子ビューファインダー１１０に供給され、これにより静止画像が再生表示される。
【００１７】
また、記録メディア部１１２から動画像のデータファイルを読み出して信号圧縮部１１１に供給し、伸張復号化処理させて、電子ビューファインダー１１０に供給することで、動画像が表示される。システム制御部１１３は、撮像装置各部の制御を司る。また、システム制御部１１３は、操作者（ユーザー）の指示に基づき撮像装置の動作モードを設定すると共に、設定された動作モードに対応した情報をメモリ部１１４から検索する。タイミング信号生成部１０７は、撮像光学系１０１、撮像素子１０２、アナログ信号処理部１０３、ＡＤＣ部１０４に対して、各部をそれぞれ駆動するためのタイミング信号を出力する。このタイミング信号生成部１０７から出力される各種のタイミング信号は、システム制御部１１３から供給される基準クロック信号に基づくものである。
【００１８】
操作部１１５は、撮像装置を起動させる際や、露出条件、ズーム位置、駆動モード等の撮像装置のシステム設定情報などを変更する際にユーザーにより操作されるものである。そして、操作部１１５は、ユーザーから撮像装置のシステム設定情報の変更に係る変更情報が入力されるたびに、その変更情報をシステム制御部１１３へ入力する。この操作部１１５は、例えば、電源スイッチ、シャッタボタン、モード切り換えスイッチ、操作入力群等を含むものである。
【００１９】
次に、図２を用いて、本実施例に用いられる撮像素子１０２であるＣＣＤの構造について説明する。図２に示すように、撮像素子１０２は、２次元状に複数のカラーフィルタがベイヤー配列されたフォトダイオード等の光電変換手段である受光素子２０１、複数の垂直転送部２０２、４列共有の垂直転送最終段部２０３、水平転送部２０４、出力アンプ２０５を備える。２次元の行列状に配列された複数の受光素子２０１は、それぞれ光電変換により電荷を発生する。複数の垂直転送部２０２は、複数の受光素子２０１で発生した電荷を垂直方向に転送する。垂直転送最終段部２０３は、４列を１つのブロックとして設けられ、各ブロック毎に垂直転送されてきた同一行の異なる４列の電荷を複数回（最大４回）に分割して水平転送部２０４に出力する水平分割駆動を行なうように構成されている。本実施例では、撮像素子１０２内に存在する垂直転送最終段部２０３の最大数をＭとする（１≦ｍ≦Ｍ）。水平転送部２０４は、前記垂直転送部２０２と垂直転送最終部２０３により垂直方向に転送された電荷を水平方向に転送する。出力アンプ２０５は、水平転送部２０４により水平方向に転送された電荷を画像信号として出力する。撮像素子１０２は、異なる複数の駆動モードで駆動可能である。すなわち、通常の静止画撮影時に全画素の画像信号を読み出す全画素読み出しモードで駆動可能である。また、画素加算静止画撮影を行う場合に水平２画素加算を行ってから画像信号を読み出す水平２画素加算モードで駆動可能である。さらに、動画撮影時に水平間引きを行なってからさらに水平２画素加算を行って画像信号を読み出す水平間引き加算読み出しモードで駆動可能である。
【００２０】
図２（ａ）は、ある特定のｍブロックの４列とｍ＋１ブロックの４列の計８列のみを抽出した図を示しており、それぞれのブロックの各列に対して、左から、１ｓｔ列、３ｒｄ列、２ｎｄ列、４ｔｈ列と定義する。このような順序にするのは、水平分割駆動を行って各列の電荷を水平転送部２０４に出力する際に、１ライン分の画像信号を１ｓｔ列、２ｎｄ列、３ｒｄ列、４ｔｈ列の順に読み出すためである。本実施例の撮像素子１０２は、静止画撮影時などのように全画素を出力する際には、垂直転送最終段部２０３により各ブロック毎に垂直転送されてきた４列の電荷を４回に分割して水平転送部２０４に出力する水平４分割駆動を行う。以下、その動作について説明する。
【００２１】
画像信号を出力する際、複数の受光素子２０１において光電変換された電荷をそれぞれ一斉に各垂直転送部２０２に読み出し、垂直転送部２０２全体を駆動して１ライン目の電荷を垂直転送最終段部２０３まで垂直方向に転送する。１ライン目の電荷が各垂直転送最終段部２０３に転送された後、水平同期期間毎に各垂直転送最終段部２０３に転送した電荷を水平転送部２０４に転送する。
【００２２】
例えば、１回目の水平同期期間（１ｓｔ＿ＨＤ）には、各ブロックの垂直転送最終段部２０３において、１ライン目の１ｓｔ列（第１列）の電荷を一斉に水平転送部２０４に垂直転送する。水平転送部２０４に転送された１ｓｔ列目の電荷は、出力アンプ２０５へ順次水平転送され、出力アンプ２０５より画像信号として出力される。続いて、２回目の水平同期期間（２ｎｄ＿ＨＤ）には、各ブロックの垂直転送最終段部２０３において、１ライン目の２ｎｄ列（第２列）の電荷を一斉に水平転送部２０４に垂直転送する。水平転送部２０４に転送された２ｎｄ列目の電荷は、出力アンプ２０５へ順次水平転送され、出力アンプ２０５より画像信号として出力される。
【００２３】
続いて、３回目の水平同期期間（３ｒｄ＿ＨＤ）には、各ブロックの垂直転送最終段部２０３において、１ライン目の３ｒｄ列（第３列）の電荷を一斉に水平転送部２０４に垂直転送する。水平転送部２０４に転送された３ｒｄ列目の電荷は、出力アンプ２０５へ順次水平転送され、出力アンプ２０５より画像信号として出力される。最後に、４回目の水平同期期間（４ｔｈ＿ＨＤ）には、各ブロックの垂直転送最終段部２０３において、１ライン目の４ｔｈ列（第４列）の電荷を一斉に水平転送部２０４に垂直転送する。水平転送部２０４に転送された４ｔｈ列目の電荷は、出力アンプ２０５へ順次水平転送され、出力アンプ２０５より画像信号として出力される。このように１ライン分の画像信号が４回の水平同期信号によって４回に分割され出力される。この動作を１フレーム分繰り返し行うことで、静止画用の全画像信号が出力される。
【００２４】
次に、全画素の信号をそのまま出力するのではなく、静止画撮影時であっても水平２画素加算を行ってから出力する画素加算静止画撮影を行う場合について説明する。本実施例の撮像素子１０２は、水平２画素加算を行う際には、垂直転送最終段部２０３により各ブロック毎に垂直転送されてきた４列の電荷を２回に分割して水平転送部２０４に出力する水平２分割駆動を行う。以下、その動作について説明する。
【００２５】
画像信号を出力する際、複数の受光素子２０１において光電変換された電荷をそれぞれ一斉に各垂直転送部２０２に読み出し、垂直転送部２０２全体を駆動して１ライン目の電荷を垂直転送最終段部２０３まで垂直方向に転送する。１ライン目の電荷が各垂直転送最終段部２０３に転送された後、水平同期期間毎に加算する同色列の電荷を水平転送部２０４に転送する（詳細は後述する）。ここでは、水平転送部２０４において、図２（ａ）に示す、１ｓｔ列（第１列）と２ｎｄ列（第２列）の電荷を加算し、３ｒｄ列（第３列）と４ｔｈ列（第４列）の電荷を加算する。
【００２６】
例えば、１回目の水平同期期間（１ｓｔ＿ＨＤ）には、各ブロックの垂直転送最終段部２０３において、１ライン目の１ｓｔ列と２ｎｄ列の電荷を水平転送部２０４に垂直転送し、水平転送部２０４上で１ライン目の１ｓｔ列の電荷と２ｎｄ列の電荷が加算される。水平転送部２０４において加算された１ライン目の１ｓｔ列と２ｎｄ列の電荷は、出力アンプ２０５へ順次水平転送され、出力アンプ２０５より加算画像信号として出力される。
【００２７】
次に、２回目の水平同期期間（２ｎｄ＿ＨＤ）には、１ライン目の３ｒｄ列と４ｔｈ列の電荷を水平転送部２０４に垂直転送し、水平転送部２０４上で１ライン目の３ｒｄ列と４ｔｈ列の電荷が加算される。水平転送部２０４において加算された１ライン目の３ｒｄ列と４ｔｈ列の電荷は、出力アンプ２０５へ順次水平転送され、出力アンプ２０５より加算画像信号として出力される。このように水平２画素加算された１ライン分の画像信号が２回の水平同期信号によって２回に分割され出力される。この動作を１フレーム分繰り返し行うことで、水平２画素加算された加算静止画用の画像信号が出力される。
【００２８】
次に、動画撮影時に水平２画素加算を行ってから画像信号を読み出す場合について説明する。本実施例の撮像素子１０２は、動画撮影時に水平２画素加算を行う際には、垂直転送最終段部２０３により各ブロック毎に垂直転送されてきた２列の電荷を一斉に水平転送部２０４に出力する水平分割無し駆動を行う。以下、その動作について説明する。
【００２９】
一般的には、動画撮影のように画素数が少なくても良い駆動を行なう際には、垂直方向における間引き動作なども同時に行うことが多いが、ここでは説明を省略する。受光素子２０１において光電変換された電荷を図２（ａ）で示すｍブロックにおいては、１ｓｔ列（第１列）と２ｎｄ列（第２列）の電荷のみを一斉に各列の垂直転送部２０２に読み出す。また、ｍ＋１ブロックに対しては、３ｒｄ列（第３列）と４ｔｈ列（第４列）の電荷のみを一斉に各列の垂直転送部２０２に読み出す。そして、各列の垂直転送部２０２に読み出された電荷を垂直転送して、１ライン目の電荷を各ブロックの垂直転送最終段部２０３まで転送する。１ライン分の電荷が各垂直転送最終段部２０３に転送された後、水平転送部２０４に垂直転送する。そして、水平転送部２０４において、図２（ａ）に示す、ｍブロックの１ｓｔ列と２ｎｄ列の電荷を加算し、ｍ＋１ブロックの３ｒｄ列と４ｔｈ列の電荷を加算する。
【００３０】
水平転送部２０４において加算された１ライン分のｍブロックの１ｓｔ列と２ｎｄ列の電荷と、ｍ＋１ブロックの３ｒｄ列と４ｔｈ列の電荷は、出力アンプ２０５へ順次水平転送され、出力アンプ２０５より加算画像信号として出力される。このように水平２画素加算された１ライン分の画像信号が１回の水平同期信号によって出力される。この動作を１フレーム分行うことで、水平２画素加算された動画用の画像信号が出力される。このように、本実施例では、駆動モードや画素加算数に応じて、１ライン分の画像信号を分割して読み出す場合の水平分割数が異なる。
【００３１】
ここで、水平４分割駆動を行う際に、撮像素子１０２により撮像された画像の画面内に発生する縦線の発生原理について図２、図３を用いて説明する。図３において、縦線は白線で示しており、図３（ｃ）、図３（ｄ）では、４本隣接した縦線を４本の白線を並べて示している。
【００３２】
図３（ａ）は、図２（ａ）のように垂直転送部２０２、垂直転送最終段部２０３に点欠陥が無い場合の出力画像である。ここで、図２（ｂ）に示すように、垂直転送部２０２上に点欠陥２０６が存在する場合、点欠陥２０６より上に存在するラインに対しては、受光素子２０１で発生した電荷を垂直転送し、点欠陥２０６上を通過する際に点欠陥２０６の影響を受ける。そのため、点欠陥２０６が存在する列に対して縦線が発生する。また、点欠陥２０６より下に存在するラインに対しては、受光素子２０１で発生した電荷を垂直転送部２０２に読み出す際、点欠陥２０６上を通過してきた空信号に受光素子２０１の信号電荷が足される。そのため、点欠陥２０６が存在する列に対して縦線が発生する。そして、図３（ｂ）に示すように、出力画像に対して１本の縦線が発生する。
【００３３】
また、図２（ｃ）に示すように、垂直転送最終段部２０３上に点欠陥２０７が存在する場合、垂直転送最終段部２０３を共有している列の信号電荷が点欠陥２０７上を通過する際に、点欠陥２０７の影響を受ける。そのため、垂直転送最終段部２０３を共有している列に対して縦線が発生する。そして、図３（ｃ）に示すように、出力画像に対して４本の隣接する縦線が発生する。さらに、図２（ｄ）に示すように、垂直転送部２０２上に点欠陥２０８が存在し、垂直転送最終段部２０３上にも点欠陥２０９が存在する場合、点欠陥２０８と点欠陥２０９上を共に通過する列には、更に大きな縦線が発生する。そして、図３（ｄ）に示すように、出力画像に対して４本の隣接する縦線が発生するが、その中で、４列目に示すような、点欠陥２０８と点欠陥２０９の影響を受けた他の３本よりも大きな縦線が１本発生する。
【００３４】
水平２分割駆動を行う際に発生する縦線の発生原理についても同様であるが、水平転送部２０４にて２列分の電荷が加算されるため、点欠陥２０７の影響で発生する縦線は２本隣接したものとなる。水平分割駆動を行わない駆動において発生する縦線に関しては、水平転送部２０４にて電荷が加算されるが、もう一方の例えば、ｍブロックの３ｒｄ列と４ｔｈ列の信号は出力されないため、水平転送部２０４における点欠陥２０７の影響で発生する縦線は１本となる。
【００３５】
次に、水平分割数に応じて、縦線を検出する検出動作について、図４、図５を用いて説明する。図４は、図１における縦線処理部１０５の内部処理ブロックの構成図である。縦線処理部１０５は、列データ積分処理部４０１、ラインメモリ４０２、メディアン処理部４０３、縦線アドレス検出部４０４、アドレス記録部４０５、縦線補正値検出部４０６、画像メモリ４０７、縦線補正部４０８で構成されている。
【００３６】
図５は、図１及び図４の構成を用いて出力画像の縦線検出を行う際のフローチャートである。縦線が発生するアドレスの検出は、本実施形態では、説明のため非撮像時に予め行うものとする。非撮像時とは、例えば、工場での出荷検査など製造時の調整工程である。ステップＳ５０１で縦線検出が開始され、ステップＳ５０２では必要な初期設定が行われ、ステップＳ５０３において、図１のシステム制御部１１３により駆動モードが選択される。ステップＳ５０４では、撮像素子１０２の駆動モードに応じた縦線検出画像が取得され、列データ積分処理部４０１に送られる。ここで、縦線検出画像は、遮光画像、もしくはフォトダイオードの電荷を読み出さずに、垂直転送部２０２を空転送させた空転送画像のことである。
【００３７】
ステップＳ５０５において、列データ積分処理部４０１によって、全ライン分の縦線検出用画像データを列毎に積分し、ステップＳ５０６において、列毎の加算平均データＴｘ（列毎の出力データ）を算出する（ｘは列番号を表し、１＜ｘ＜Ｘである）。ステップＳ５０６において算出された列毎の加算平均データＴｘは、ラインメモリ４０２に保存される。ステップＳ５０７において、メディアン処理部４０３は、システム制御部１１３から得られる駆動モードごとに異なる水平分割数情報に基づいて、ラインメモリ４０２に保存された各列の加算平均データＴｘに対してメディアン処理を行う。そして、各列におけるメディアン値Ｍｄｘ（基準データ）を求める（基準データ生成手段）。
【００３８】
ステップＳ５０８において、縦線アドレス検出部４０４は、メディアン処理部４０３で生成された各列のメディアン値Ｍｄｘ（基準データ）と、各列の加算平均データＴｘ（出力データ）との差分値Ｓｘの絶対値｜Ｓｘ｜を算出する（差分値算出手段）。各列の加算平均データＴｘ（出力データ）は、ラインメモリ４０２に保存されている。ステップＳ５０９では、縦線アドレス検出部４０４が、ステップＳ５０８で求めた差分値の絶対値｜Ｓｘ｜を所定の縦線判定閾値Ａと比較する。ここで、所定の縦線判定閾値Ａとは、差分値との比較結果に基づいて、縦線が発生しているか否かを判断するための閾値である。
【００３９】
ステップＳ５０９において、｜Ｓｘ｜＞Ａと判定された場合、ステップＳ５１０に進んで、縦線アドレス検出部４０４が縦線有りと判断する。ステップＳ５１１では、ステップＳ５１０で検出された縦線が発生するアドレスをアドレス記録部４０５に記録し、ステップＳ５１３に進む。ステップＳ５０９において、｜Ｓｘ｜≦Ａと判定された場合、ステップＳ５１２に進んで、縦線アドレス検出部４０４が縦線無しと判断し、ステップＳ５１３に進む。ステップＳ５１３では、列番号ｘが最終列Ｘになるまで全ての列を検出し、全ての列の検出が終了するとステップＳ５１４で動作終了となる。
【００４０】
次に、メディアン処理を用いた縦線検出動作の詳細な説明を行う。図６及び図７は、縦線検出用の遮光画像から縦線を検出する方法を示す図である。まず、図６（ａ）及び図７（ａ）を用いて、水平４分割駆動時の隣接縦線検出動作を説明する。図６（ａ）において、縦線検出用画像６０１は、水平４分割駆動時に縦線を検出する際に取得する遮光画像であり、４本隣接した縦線６０２が発生している。縦線検出用画像６０１において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ１、１≦ｙ≦Ｙ１）の信号値をｔｘｙとする。Ｘ１，Ｙ１は、図６（ａ）に示す縦線検出用画像６０１の最大Ｘアドレス、Ｙアドレスを示している。また、４本隣接した縦線６０２のＸアドレスが、左からそれぞれ、ａ列、ａ＋１列、ａ＋２列、ａ＋３列であるものとする。
【００４１】
図７（ａ）は、ａ列とその周辺の複数列であるａ‐４列〜ａ＋７列の加算平均データＴａ‐４〜Ｔａ＋７（出力データ）を用いて、ａ列、ａ＋１列、ａ＋２列、ａ＋３列のメディアン値Ｍｄａ、Ｍｄａ＋１、Ｍｄａ＋２、Ｍｄａ＋３（基準データ）を求める様子を示す。例えば、縦線検出対象列であるａ列における各行の信号値ｔａ〜ｔａＹ１の加算平均データＴａは、（ｔａ１＋ｔａ２＋・・・ｔａＹ１）／Ｙ１で算出され、周辺の複数列についても同様に求められる。また、各列の基準データであるメディアン値Ｍｄａ、Ｍｄａ＋１、Ｍｄａ＋２、Ｍｄａ＋３を求める際に用いる周辺列の加算平均データＴを斜線枠で示している。例えば、ａ列におけるメディアン値Ｍｄａ（基準データ）は、ａ列とａ列を中心とした縦線検出対象列周辺の左右４列分の計９個の加算平均データ（Ｔａ‐４，Ｔａ‐３，Ｔａ‐２，Ｔａ‐１，Ｔａ，Ｔａ＋１，Ｔａ＋２、Ｔａ＋３，Ｔａ＋４）から求める。
【００４２】
ここで求められたａ列の基準データであるメディアン値Ｍｄａと出力データである加算平均データＴａの差分値の絶対値｜Ｓａ｜を算出し、所定の縦線判定閾値Ａと比較する。その結果、｜Ｓａ｜≧Ａであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。ａ＋１列、ａ＋２列、ａ＋３列についても、それぞれ周辺の複数列の出力データである加算平均データを用いて基準データであるメディアン値を求め、所定の縦線判定閾値Ａと比較することで縦線が発生しているか否かを判定する。
【００４３】
図７（ｄ）は、駆動モードに応じて、水平分割数とメディアン処理に用いるデータ数の関係を示した表である。水平４分割駆動を行う静止画撮影時には、最大４本隣接する縦線が発生するため、メディアン処理を行う際、縦線検出対象列とその周辺複数列である左右４列分の計９個の出力データである加算平均データを用いてメディアン処理を行うことを示している。このように、水平４分割駆動を行なう際に、４本隣接する縦線の影響を受けることなくメディアン処理を行なうことが可能になり、図６（ａ）に示すような４本隣接する縦線を全て検出することができる。
【００４４】
次に、図６（ｂ）及び図７（ｂ）を用いて、水平２分割駆動時の隣接縦線検出動作を説明する。図６（ｂ）において、縦線検出用画像６０３は、水平２分割駆動時に縦線を検出する際に取得する遮光画像であり、２本隣接した縦線６０４が発生している。縦線検出用画像６０３において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ２、１≦ｙ≦Ｙ２）の信号値をｔｘｙとする。Ｘ２，Ｙ２は、図６（ｂ）に示す縦線検出用画像６０３の最大Ｘアドレス、Ｙアドレスを示している。また、２本隣接した縦線６０４のＸアドレスが、左からそれぞれ、ｃ列、ｃ＋１列であるものとする。ここで、ｃ列とｃ＋１列とその周辺の複数列であるｃ‐２列〜ｃ＋３列は、水平転送部２０４において２列分の電荷が加算された後に対応するアドレスである。
【００４５】
図７（ｂ）は、ｃ列とその周辺の複数列であるｃ‐２列〜ｃ＋３列の出力データである加算平均データＴｃ‐２〜Ｔｃ＋３を用いて、ｃ列、ｃ＋１列の基準データであるメディアン値Ｍｄｃ、Ｍｄｃ＋１を求める様子を示している。例えば、縦線検出対象列であるｃ列における各行の信号値ｔｃ１〜ｔｃＹ２の加算平均データＴｃは、（ｔｃ１＋ｔｃ２＋・・・ｔｃＹ２）／Ｙ２で算出され、周辺の複数列についても同様に求められる。また、ｃ列、ｃ＋１列の基準データであるメディアン値Ｍｄｃ、Ｍｄｃ＋１を求める際に用いる周辺列の加算平均データＴを斜線枠で示している。例えば、縦線検出対象列であるｃ列における基準データであるメディアン値Ｍｄｃは、ｃ列とｃ列を中心とした左右２列分の計５個の加算平均データ（Ｔｃ‐２，Ｔｃ‐１，Ｔｃ，Ｔｃ＋１，Ｔｃ＋２）から求める。
【００４６】
ここで求められたｃ列の基準データであるメディアン値Ｍｄｃと出力データである加算平均データＴｃの差分値の絶対値｜Ｓｃ｜を算出し、所定の縦線判定閾値Ａと比較する。その結果、｜Ｓｃ｜≧Ａであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。ｃ＋１列についても、周辺の複数列の出力データである加算平均データを用いて基準データであるメディアン値を求め、所定の縦線判定閾値Ａと比較することで縦線が発生しているか否かを判定する。
【００４７】
水平２分割駆動を行う画素加算静止画撮影時には、最大２本隣接する縦線が発生する。そのため、図７（ｄ）では、メディアン処理を行う際、縦線検出対象列とその周辺複数列である左右２列分の計５個の出力データである加算平均データを用いてメディアン処理を行うことを示している。このように、水平２分割駆動を行なう際に、２本隣接する縦線の影響を受けることなくメディアン処理を行なうことが可能になり、図６（ｂ）に示すような２本隣接する縦線全てを検出することができる。
【００４８】
次に、図６（ｃ）及び図７（ｃ）を用いて、水平分割無し駆動時の縦線検出動作を説明する。図６（ｃ）において、縦線検出用画像６０５は、水平分割なし駆動時に縦線を検出する際に取得する遮光画像であり、１本の縦線６０６が発生している。縦線検出用画像６０５において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ３、１≦ｙ≦Ｙ３）の信号値をｔｘｙとする。Ｘ３，Ｙ３は、図６（ｃ）に示す縦線検出用画像６０５の最大Ｘアドレス、Ｙアドレスを示している。また、１本発生する縦線６０６のＸアドレスが、ｅ列であるものとする。ここで、ｅ列とその周辺の複数列であるｅ‐１列〜ｅ＋１列は、水平転送部２０４において２列分の電荷が加算された後に対応するアドレスである。
【００４９】
図７（ｃ）は、ｅ列の周辺の複数列であるｅ‐１列〜ｅ＋１列の出力データである加算平均データＴｅ‐１〜Ｔｅ＋１を用いて、ｅ列の基準データであるメディアン値Ｍｄｅを求める様子を示している。例えば、縦線検出対象列であるｅ列における各行の信号値ｔｅ１〜ｔｅＹ３の加算平均データＴｅは、（ｔｅ１＋ｔｅ２＋・・・ｔｅＹ３）／Ｙ３で算出され、周辺の複数列についても同様に求められる。また、ｅ列の基準データであるメディアン値Ｍｄｅを求める際に用いる周辺列の加算平均データＴを斜線枠で示している。縦線検出対象列であるｅ列における基準データであるメディアン値Ｍｄｅは、ｅ列とｅ列を中心とした左右１列分の計３個の加算平均データ（Ｔｅ‐１，Ｔｅ，Ｔｅ＋１）から求める。
【００５０】
ここで求められたｅ列の基準データであるメディアン値Ｍｄｅと出力データである加算平均データＴｅの差分値の絶対値｜Ｓｅ｜を算出し、所定の縦線判定閾値Ａと比較する。その結果、｜Ｓｅ｜≧Ａであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。
【００５１】
図７（ｄ）では、水平分割駆動を行わない動画撮影時には、縦線検出対象列とその周辺複数列である左右１列分の計３個の出力データである加算平均データを用いてメディアン処理を行うことが示されている。このように、水平分割駆動を行わない場合に、図６（ｃ）に示すような縦線を検出することができる。なお、図７（ｄ）においてメディアン処理に用いるデータ数については、検出列の左右同数が望ましいが、水平分割数の２倍より多ければ、同数でなくても構わない。
【００５２】
以上のように、水平分割数の２倍以上の出力データ数からメディアン処理を行い、メディアン値と加算平均データの差分値の絶対値を検出することで、隣接する縦線の影響を受けることなく、当該列の縦線を検出することができる。なお、ここでは、縦線判定閾値Ａを各駆動モード共通なものとして説明したが、駆動モードに応じて、縦線判定閾値をそれぞれ異なる値に設定しても構わない。
【００５３】
次に、撮像動作時における縦線の補正動作を、図８のフローチャートを用いて説明する。ステップＳ８０１において電源がＯＮされ、ステップＳ８０２においてユーザーが各種設定を行った後、ステップＳ８０３においてモードが選択されると、ステップＳ８０４において撮影が開始される。撮影が開始されると、ステップＳ８０５において、被写体画像信号を読み出す前に縦線補正用画像が取得され、ステップＳ８０６において、列データ積分処理部４０１により縦線補正用画像データを列ごとに全ライン分を積分し、加算平均データを取得する。ここで、縦線補正用画像は、遮光画像、もしくはフォトオードの電荷を読み出さずに、垂直転送部２０２を空転送させた空転送画像のことである。
【００５４】
ステップＳ８０７では、アドレス記録部４０５に縦線アドレスが記録されている列について、ステップＳ８０６で算出された各列の加算平均データを基に縦線補正値算出部４０６が縦線補正値を算出する。ステップＳ８０８において、撮像素子１０２から被写体画像信号が読み出される。ステップＳ８０９において、縦線補正部４０７は、ステップＳ８０８で読み出された被写体画像信号に対して、ステップＳ８０７で縦線が発生している列について算出された縦線補正値を減算することで縦線を補正する。ステップＳ８１０において、撮影動作を終了するかどうかを判定し、撮影動作を続ける場合には、ステップＳ８０５に戻る。また、ステップＳ８１０において、撮影動作を終了すると判定した場合には、ステップＳ８１１に進んで処理を終了する。
【００５５】
なお、縦線アドレスの検出は、例えば、工場の出荷検査などの非撮影時だけでなく、実際の被写体撮像時に同時に行うことも可能である。図９は、被写体の撮影時に縦線検出を行なう場合のフローチャートである。図９（ａ）は、基本的に図８と同じであるため、図８に示す処理と同一の処理については同一符号を付して説明を省略する。
【００５６】
ステップＳ８０６において、列データ積分処理部４０１により縦線補正用画像データを列ごとに全ライン分を積分し、加算平均データを取得するライン積分処理の後、ステップＳ９０１において図９（ｂ）に示す縦線アドレス検出処理を実行する。なお、図９（ｂ）のステップＳ９０２からステップＳ９１０までの動作は、図５におけるステップＳ５０６からステップＳ５１４までの動作と同様であるため、詳細な説明は省略する。図９（ａ）のステップＳ９０１における縦線アドレス検出処理が終わると、ステップＳ８０７において、縦線補正値算出部４０６が縦線補正値を算出する。このような、ステップＳ９０１（図９（ｂ））の縦線検出処理動作を行うことで、実際の被写体撮像時に縦線の検出を行なうことができる。
【００５７】
以上のように、本実施例１では、撮像素子の駆動モード毎に異なる水平分割数に応じて、メディアン処理に用いる縦線検出対象列周辺の複数画素列の出力データ数を切り替える。そして、水平分割駆動を行うことで発生する複数隣接した縦線を検出することが可能となる。また、メディアン処理に用いる画素列数を水平分割数に応じて変更することで、工場の出荷検査時に縦線アドレス検出を行う場合は、製造時の調整時間の短縮、実撮像時に縦線アドレス検出を行う場合は、フレームレートの最適化が可能となる。
【００５８】
（実施例２）
実施例１において、複数隣接した縦線を検出する際、水平分割数に応じてメディアン処理に用いるデータ数を切り替える動作を説明した。実施例２では、移動平均処理を用いて隣接縦線を検出する方法を説明する。移動平均処理を用いる際、複数隣接した縦線の影響を少なくするために、隣接数が多くなる水平分割駆動を行うモードにおいては、移動平均処理に用いるデータ数を多くする。図１０は、実施例２における縦線処理部１０５の内部処理ブロックの構成図であり、図４と同一の構成については、同一符号を付して説明を省略する。図１０に示す移動平均処理部１００１は、列データ積分処理部４０１によって処理され、ラインメモリ４０２に保存されている各列の積分データから、各列に対する移動平均値を算出する。
【００５９】
次に、実施例２における縦線検出を行なう際の動作を図１１のフローチャートを用いて説明する。図５に示す処理と同一処理については、同一符号を付して説明を省略する。
【００６０】
ステップＳ１１０１において、移動平均処理部９０１は、システム制御部１１３から得られる駆動モードごとに異なる水平分割数情報に基づいて、ラインメモリ４０２に保存された各列の加算平均データＴｘに対して移動平均演算処理を行う。そして、各列における移動平均値Ｉｄｘ（基準データ）を求める（ｘは列番号を表し、１＜ｘ＜Ｘである）。ステップＳ１１０２において、縦線アドレス検出部４０４は、移動平均処理部９０１で処理された各列の移動平均値Ｉｄｘ（基準データ）と、ラインメモリ４０２に保存されている各列の加算平均データＴｘ（出力データ）との差分値Ｌｘの絶対値｜Ｌｘ｜を算出する。ステップＳ１１０３では、縦線アドレス検出部４０４が、ステップＳ１００２で求めた差分値の絶対値｜Ｌｘ｜を所定の縦線判定閾値Ｂと比較する。ここで、所定の縦線判定閾値Ｂとは、縦線と判断するための閾値である。
【００６１】
ステップＳ１１０３において、｜Ｓｘ｜＞Ｂと判定された場合、ステップＳ５１０に進んで、縦線アドレス検出部４０４が縦線有りと判断する。ステップＳ５１１では、ステップＳ５１０で検出された縦線が発生するアドレスをアドレス記録部４０５に記録し、ステップＳ５１３に進む。ステップＳ１１０３において、｜Ｓｘ｜≦Ｂと判定された場合、ステップＳ５１２に進んで、縦線アドレス検出部４０６が縦線無しと判断し、ステップＳ５１３に進む。ステップＳ５１３では、列番号ｘが最終列Ｘになるまで全ての列を検出し、全ての列の検出が終了するとステップＳ５１４で動作終了となる。
【００６２】
次に、移動平均演算処理を用いた縦線検出動作の詳細な説明を行う。ここでは、実施例１を説明する際に用いた図６を用いて説明する。また、移動平均値Ｉｄは、当該列を含む左右複数の加算平均データの平均値であるものとする。まず、水平４分割駆動時に移動平均演算処理を用いた隣接縦線検出動作を説明する。
【００６３】
実施例１と同様に、縦線検出用画像６０１において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ１、１≦ｙ≦Ｙ１）の信号値をｔｘｙとする。また、４本隣接した縦線６０２のＸアドレスが、左からそれぞれ、ａ列、ａ＋１列、ａ＋２列、ａ＋３列であるものとする。
【００６４】
ａ列における各行の信号値ｔａ〜ｔａＹ１の加算平均データＴａは、（ｔａ１＋ｔａ２＋・・・ｔａＹ１）／Ｙ１で算出される。ａ列における基準データである移動平均値Ｉｄａは、ａ列とａ列を中心とした左右１０列分の計２１個の加算平均データから下記の式にて算出される。
Ｉｄａ＝（（Ｔａ‐１０）＋（Ｔａ‐９）＋・・・＋（Ｔａ）＋（Ｔａ＋１）＋・・・
＋（Ｔａ＋９）＋（Ｔａ＋１０））／２１
ここで求められたａ列の基準データである移動平均値Ｉｄａと出力データである加算平均データＴａの差分値の絶対値｜Ｌａ｜を算出し、所定の縦線判定閾値Ｂと比較する。その結果、｜Ｌａ｜≧Ｂであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。
【００６５】
図１２は、駆動モードに応じて、水平分割数と移動平均処理に用いるデータ数の関係を示した表である。水平４分割駆動を行う静止画撮影時には、最大４本隣接する縦線が発生するため、移動平均処理を行う際、縦線検出対象列とその周辺複数列である左右１０列分の計２１個の加算平均データを用いて移動平均処理を行うことを示している。そのため、４本隣接した縦線の影響を受けることなく移動平均処理を行なうことが可能になり、図６（ａ）に示すような４本隣接する縦線を全て検出することができる。
【００６６】
次に、水平２分割駆動時の移動平均処理を用いた隣接縦線検出動作を説明する。縦線検出用画像６０３において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ２、１≦ｙ≦Ｙ２）の信号値をｔｘｙとする。実施例１と同様に、２本隣接した縦線６０４のＸアドレスが、左からそれぞれ、ｃ列、ｃ＋１列であるものとする。縦線検出対象列であるｃ列における各行の信号値ｔｃ１〜ｔｃＹ２の加算平均データＴｃは、（ｔｃ１＋ｔｃ２＋・・・ｔｃＹ２）／Ｙ２で算出される。ｃ列における基準データである移動平均値Ｉｄｃは、ｃ列とｃ列を中心とした左右５列分の計１１個の加算平均データから下記の式にて算出される。
Ｉｄｃ＝（（Ｔｃ‐５）＋（Ｔｃ‐４）＋・・・＋（Ｔｃ）＋（Ｔｃ＋１）＋・・・
＋（Ｔｃ＋４）＋（Ｔｃ＋５））／１１
ここで求められたｃ列の基準データである移動平均値Ｉｄｃと出力データである加算平均データＴｃの差分値の絶対値｜Ｌｃ｜を算出し、所定の縦線判定閾値Ｂと比較する。その結果、｜Ｌｃ｜≧Ｂであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。また、水平２分割駆動を行う画素加算静止画撮影時に最大２本隣接する縦線が発生する。そのため、図１２では、移動平均演算処理を行う際、縦線検出対象列とその周辺複数列である左右５列分の計１１個の出力データである加算平均データを用いて移動平均処理を行うことが示されている。そのため、２本隣接した縦線の影響を受けることなく移動平均処理を行なうことが可能になり、図６（ｂ）に示すような２本隣接する縦線全てを検出することができる。
【００６７】
次に、水平分割無し駆動時に移動平均処理を用いた縦線検出動作を説明する。縦線検出用画像６０５において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ３、１≦ｙ≦Ｙ３）の信号値をｔｘｙとする。実施例１と同様に、１本発生する縦線６０６のＸアドレスが、ｅ列であるものとする。縦線検出対象列であるｅ列における各行の信号値ｔｅ１〜ｔｅＹ３の加算平均データＴｅは、（ｔｅ１＋ｔｅ２＋・・・ｔｅＹ３）／Ｙ３で算出される。検出対象列であるｅ列における基準データである移動平均値Ｉｄｅは、ｅ列とｅ列を中心に左右２列分の計５個の加算平均データから下記の式にて算出される。
Ｉｄｅ＝（（Ｔｅ‐２）＋（Ｔｅ‐１）＋（Ｔｅ）＋（Ｔｅ＋１）＋（Ｔｅ＋２））／５
ここで求められたｅ列の基準データである移動平均値Ｉｄｅと出力データである加算平均データＴｅの差分値の絶対値｜Ｌｅ｜を算出し、所定の縦線判定閾値Ｂと比較する。その結果、｜Ｌｅ｜≧Ｂであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。また、図１２では、動画撮影時には水平分割駆動を行わないため、縦線検出対象列とその周辺複数列である左右３列分の計７個の加算平均データを用いて移動平均処理を行うことが示されている。そして、図６（ｃ）に示すような１本発生する縦線を検出することができる。なお、ここでは、縦線判定閾値Ｂを各駆動モード共通なものとして説明したが、駆動モードに応じて、縦線判定閾値Ｂをそれぞれ異なる値に設定しても構わない。
【００６８】
以上のように、本実施例では、移動平均値を算出する際に縦線の影響を極力少なくするために、例えば、水平４分割駆動を行う駆動モードにおいては、移動平均演算処理に用いる周辺列の加算平均データをその他のモードよりも多くした。移動平均値の算出に用いるデータ数については、縦線の影響を十分に低減でき、かつ、加算平均データＴｘのバラツキを十分に低減できる数であれば、図１２に示したようなデータ数に限られるものではない。本実施例２においては、縦線の影響を１／５にすることで、移動平均値の精度が十分満たせると仮定して、移動平均値の算出に用いるデータ数を水平分割数の５倍以上に設定している。また、移動平均値を算出する際に当該列データを含めて算出しているが、当該列のデータを含めず算出するなど、その他の方式で求めても構わない。
【００６９】
以上のように、本実施例２では、駆動モード毎に異なる水平分割数に応じて、移動平均処理に用いる画素列のデータ数を切り替えることで、水平分割駆動を行なうことで発生する複数隣接した縦線を検出することが可能となる。
【００７０】
（実施例３）
実施例１では、メディアン処理を行なう際に、当該列のデータおよび当該列の左右のデータを用いてメディアン値を算出する例について説明した。しかし、複数隣接した縦線が発生する場合には、メディアン処理に用いる左右のデータに縦線が含まれてしまう。そのため、メディアン処理に用いる当該列に対して左右の列データを水平分割数より多くする必要があった。そこで、実施例３では、水平分割数に応じて、メディアン処理に用いる左右のデータとして水平分割数おきの列データを用いることで、メディアン処理に用いるデータを最小にすることが可能である。なお、撮像装置の構成、検出動作は、図１、図５に示す実施例１と同様である。
【００７１】
次に、実施例３におけるメディアン処理を用いた詳細な縦線検出動作の説明を行う。実施例１と同様に図６を用いて説明する。まず、水平４分割駆動時に隣接縦線検出動作を説明する。図６（ａ）において、縦線検出用画像６０１は、水平４分割駆動時に縦線を検出する際に取得する遮光画像であり、４本隣接した縦線６０２が発生している。縦線検出用画像６０１において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ１、１≦ｙ≦Ｙ１）の信号値をｔｘｙとする。Ｘ１，Ｙ１は、図６（ａ）に示す縦線検出用画像６０１の最大Ｘアドレス、Ｙアドレスを示している。実施例１と同様に、４本隣接した縦線６０２のＸアドレスが、左からそれぞれ、ａ列、ａ＋１列、ａ＋２列、ａ＋３列であるものとする。
【００７２】
図１３（ａ）は、ａ列とその周辺列であるａ‐４列〜ａ＋７列の加算平均データＴａ‐４〜Ｔａ＋７（出力データ）を用いて、ａ列、ａ＋１列、ａ＋２列、ａ＋３列のメディアン値Ｍｄａ、Ｍｄａ＋１、Ｍｄａ＋２、Ｍｄａ＋３（基準データ）を求める様子を示す。例えば、縦線検出対象列であるａ列における各行の信号値ｔａ〜ｔａＹ１の加算平均データＴａは、（ｔａ１＋ｔａ２＋・・・ｔａＹ１）／Ｙ１で算出され、周辺の複数列についても同様に求められる。また、各列の基準データであるメディアン値Ｍｄａ、Ｍｄａ＋１、Ｍｄａ＋２、Ｍｄａ＋３を求める際に用いる周囲列の加算平均データＴを斜線枠で示している。例えば、縦線検出対象列であるａ列における基準データであるメディアン値Ｍｄａは、ａ列とａ列から左右にそれぞれ水平分割数の列だけ離れたブロックにおける計３個の加算平均データ（Ｔａ‐４，Ｔａ，Ｔａ＋４）から求める。
【００７３】
ここで求められたａ列の基準データであるメディアン値Ｍｄａと出力データである加算平均データＴａの差分値の絶対値｜Ｓａ｜を算出し、所定の縦線判定閾値Ａと比較する。その結果、｜Ｓａ｜≧Ａであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。ａ＋１列、ａ＋２列、ａ＋３列についても、それぞれ周辺の複数列の出力データである加算平均データを用いて基準データであるメディアン値を求め、所定の縦線判定閾値Ａと比較することで縦線が発生しているか否かを判定する。
【００７４】
図１３（ｄ）は、駆動モードに応じて、水平分割数とメディアン処理に用いるデータ数、メディアン処理に用いるデータ参照列の関係を示した表である。水平４分割駆動を行う静止画撮影時には、最大４本隣接する縦線が発生する。そのため、メディアン処理を行う際、縦線検出対象列と当該列から左右それぞれにおいて水平分割数である４列だけ離れた列における出力データである加算平均データを用いてメディアン処理を行なうことを示している。このように、水平４分割駆動を行なう際に、４本隣接する縦線の影響を受けることなくメディアン処理を行なうことが可能になり、図６（ａ）に示すような４本隣接する縦線を全て検出することができる。
【００７５】
次に、図６（ｂ）を用いて、水平２分割駆動時の隣接縦線検出動作を説明する。図６（ｂ）において、縦線検出用画像６０３は、水平２分割駆動時に縦線を検出する際に取得する遮光画像であり、２本隣接した縦線６０４が発生している。縦線検出量画像６０３において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ２、１≦ｙ≦Ｙ２）の信号値をｔｘｙとする。Ｘ２，Ｙ２は、図６（ｂ）に示す縦線検出用画像６０３の最大Ｘアドレス、Ｙアドレスを示している。また、実施例１と同様に、２本隣接した縦線６０４のＸアドレスが、左からそれぞれ、ｃ列、ｃ＋１列であるものとする。
【００７６】
図１３（ｂ）は、ｃ列とその周辺の複数列であるｃ‐２列〜ｃ＋３列の出力データである加算平均データＴｃ‐２〜Ｔｃ＋３を用いて、ｃ列、ｃ＋１列の基準データであるメディアン値Ｍｄｃ、Ｍｄｃ＋１を求める様子を示している。例えば、縦線検出対象列であるｃ列における各行の信号値ｔｃ１〜ｔｃＹ２の加算平均データＴｃは、（ｔｃ１＋ｔｃ２＋・・・ｔｃＹ２）／Ｙ２で算出され、周辺の複数列についても同様に求められる。また、ｃ列、ｃ＋１列の基準データであるメディアン値Ｍｄｃ、Ｍｄｃ＋１を求める際に用いる周辺列の加算平均データＴを斜線枠であらわしている。例えば、縦線検出対象列であるｃ列における基準データであるメディアン値Ｍｄｃは、ｃ列とｃ列から水平分割数である２列だけ離れた列における計３個の加算平均データ（Ｔｃ‐２，Ｔｃ，Ｔｃ＋２）から求める。
【００７７】
ここで求められたｃ列の基準データであるメディアン値Ｍｄｃと出力データである加算平均データＴｃの差分値の絶対値｜Ｓｃ｜を算出し、所定の縦線判定閾値Ａと比較する。その結果、｜Ｓｃ｜≧Ａであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。ｃ＋１列についても、周辺の複数列の出力データである加算平均データを用いて基準データであるメディアン値を求め、所定の判定閾値Ａと比較することで縦線が発生しているか否かを判定する。
【００７８】
水平２分割駆動を行う画素加算静止画撮影時には、最大２本隣接する縦線が発生する。そのため、図１３（ｄ）では、メディアン処理を行う際、縦線検出対象列と当該列から水平分割数である２列だけ離れた列における出力データである加算平均データを用いてメディアン処理を行なうことを示している。このように、水平２分割駆動を行なう際に、２本隣接する縦線の影響を受けることなくメディアン処理が可能になり、図６（ｂ）に示すような２本隣接する縦線を全て検出することができる。
【００７９】
次に、図６（ｃ）を用いて、水平分割無し駆動時の縦線検出動作を説明する。図６（ｃ）において、縦線検出用画像６０５は、水平分割なし駆動時に縦線を検出する際に取得する遮光画像であり、１本の縦線６０６が発生している。縦線検出用画像６０５において、Ｘアドレスがｘ、Ｙアドレスがｙである位置（１≦ｘ≦Ｘ３、１≦ｙ≦Ｙ３）の信号値をｔｘｙとする。Ｘ３，Ｙ３は、図６（ｃ）に示す縦線検出用画像６０５の最大Ｘアドレス、Ｙアドレスを示している。また、実施例１と同様に、１本発生する縦線６０６のＸアドレスが、ｅ列であるものとする。
【００８０】
図１３（ｃ）は、ｅ列の周辺の複数列であるｅ‐１列〜ｅ＋１列の出力データである加算平均データＴｅ‐１〜Ｔｅ＋１を用いて、ｅ列の基準データであるメディアン値Ｍｄｅを求める様子を示している。例えば、縦線検出対象列であるｅ列における各行の信号値ｔｅ１〜ｔｅＹ３の加算平均データＴｅは、（ｔｅ１＋ｔｅ２＋・・・ｔｅＹ３）／Ｙ３で算出され、周辺の複数列についても同様に求められる。また、ｅ列のメディアン値Ｍｄｅを求める際に用いる周囲の加算平均データＴを斜線枠であらわしている。縦線検出対象列であるｅ列における基準データであるメディアン値Ｍｄｅは、ｅ列とｅ列から水平分割数である１列だけ離れた両隣の列における計３個の加算平均データ（Ｔｅ‐１，Ｔｅ，Ｔｅ＋１）から求める。
【００８１】
ここで検出されたｅ列の基準データであるメディアン値Ｍｄｅと出力データである加算平均データＴｅの差分値の絶対値｜Ｓｅ｜を算出し、所定の縦線判定閾値Ａと比較する。その結果、｜Ｓｅ｜≧Ａであると判定された場合には、その列に縦線が発生していると判定され、縦線アドレスとしてアドレス記録部４０５に記録される。
【００８２】
図１３（ｄ）では、水平分割駆動を行わない動画撮影時には、複数本隣接する縦線は発生しないため、縦線検出対象列と左右１列分の計３個の出力データである加算平均データを用いてメディアン処理を行なうことが示されている。
【００８３】
以上のように、本実施例３では、駆動モード毎に異なる水平分割数に応じて、メディアン処理に用いるデータの参照列を変えることで、水平分割駆動を行なうことで発生する複数隣接した縦線を検出することが可能となる。また、駆動モードに応じて水平分割数が異なる場合に、縦線を検出する際のメディアン処理に用いるメディアン値を水平分割数だけ離れた列の加算平均データから算出する。そして、メディアン処理の際に用いる加算平均データ数を少なくした場合でも隣接する縦線の影響を排除可能となる。
【００８４】
以上、３つの実施例を用いて説明した通り、複数の駆動モードに応じて水平分割数の異なる駆動を行うことで生じる隣接縦線を検出する際に、当該列の周辺データを水平分割数に応じて変更することにより、隣接縦線を精度よく検出することが可能である。
【００８５】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００８６】
１０２  撮像素子
２０１  画素部
２０２  垂直転送部
２０３  垂直転送最終部
２０４  水平転送部
１０３  アナログ信号処理部（ＣＤＳ）
１０４  ＡＤＣ部
１０５  縦線処理部
１０６  デジタル信号処理部
１０７  タイミング信号生成部
１０８  フレームメモリ部
１１３  システム制御部
４０１  列データ積分処理部
４０２  ラインメモリ
４０３  メディアン処理部
４０４  縦線アドレス検出部
４０５  アドレス記録部
【図１】
2014033304.tif 000003
【図２】
2014033304.tif 000004
【図３】
2014033304.tif 000005
【図４】
2014033304.tif 000006
【図５】
2014033304.tif 000007
【図６】
2014033304.tif 000008
【図７】
2014033304.tif 000009
【図８】
2014033304.tif 000010
【図９】
2014033304.tif 000011
【図１０】
2014033304.tif 000012
【図１１】
2014033304.tif 000013
【図１２】
2014033304.tif 000014
【図１３】
2014033304.tif 000015