(57)【特許請求の範囲】
【請求項１】
有効画素領域、前記有効画素領域の垂直方向に位置する垂直光学的黒領域、および、前記有効画素領域の水平方向に位置する水平光学的黒領域を有するＣＣＤで構成された撮像素子の前記有効画素領域から得られた画素データから、周期的なビートノイズ成分を除去する画像処理装置であって、
前記垂直光学的黒領域および前記水平光学的黒領域の中から、少なくともいずれかの光学的黒領域を指定する指定手段と、
前記ビートノイズ成分の周期で、前記指定手段にて指定された光学的黒領域から得られる複数の画素データを複数の積分手段に振り分ける振り分け手段と、
前記複数の積分手段における積分結果から、前記周期的なビートノイズ成分を示す複数のノイズデータを求めるノイズ検出手段と、
前記有効画素領域から得られる画素データに含まれるビートノイズ成分の位相と、前記複数のノイズデータにより示されるビートノイズ成分の位相とが一致するように、前記有効画素領域から得られる各画素データの値から、前記ノイズデータの値を減算することで補正する補正手段と、を備え、
前記垂直光学的黒領域は、スミアの発生時には前記スミアの成分を含む光学的黒領域であり、
前記指定手段は、前記撮像素子によって静止画が生成される場合には少なくとも前記垂直光学的黒領域を指定し、前記撮像素子によって動画が生成される場合には前記垂直光学的黒領域を指定せずに前記水平光学的黒領域を指定することを特徴とする画像処理装置。
【請求項２】
前記補正手段は、第１の画像データにおける有効画素領域から得られる各画素データの値から、前記第１の画像データよりも前に得られた第２の画像データの水平光学的黒領域から検出されたノイズデータの値を減算するものであって、
前記第１の画像データにかけられるゲインと、前記第２の画像データにかけられるゲインの違いに応じて、前記ノイズ検出手段によって検出したノイズデータにゲインをかけることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
指定手段、振り分け手段、ノイズ検出手段、及び補正手段を有し、有効画素領域、前記有効画素領域の垂直方向に位置する垂直光学的黒領域、および、前記有効画素領域の水平方向に位置する水平光学的黒領域を有するＣＣＤで構成された撮像素子の前記有効画素領域から得られた画素データから、周期的なビートノイズ成分を除去する画像処理装置のノイズ除去方法であって、
前記指定手段が、前記垂直光学的黒領域および前記水平光学的黒領域の中から、少なくともいずれかの光学的黒領域を指定する指定工程と、
前記振り分け手段が、前記ビートノイズ成分の周期で、前記指定工程にて指定された光学的黒領域から得られる複数の画素データを複数の積分手段に振り分ける振り分け工程と、
前記ノイズ検出手段が、前記複数の積分手段における積分結果から、前記撮像素子から得られる画素データに含まれる周期的なビートノイズ成分を示す複数のノイズデータを求めるノイズ検出工程と、
前記補正手段が、前記撮像素子の有効画素領域から得られる複数の画素データに含まれるビートノイズ成分の位相と、前記複数のノイズデータにより示されるビートノイズ成分の位相とが一致するように、前記撮像素子の有効画素領域から得られる各画素データの値から、前記ノイズデータの値を減算することで補正する補正工程と、を有し、
前記垂直光学的黒領域は、スミアの発生時には前記スミアの成分を含む光学的黒領域であり、
前記指定工程において、前記指定手段が、前記撮像素子によって静止画が生成される場合には少なくとも前記垂直光学的黒領域を指定し、前記撮像素子によって動画が生成される場合には前記垂直光学的黒領域を指定せずに前記水平光学的黒領域を指定することを特徴とする画像処理装置のノイズ除去方法。
【請求項４】
請求項３に記載の画像処理装置のノイズ除去方法をコンピュータにより実行させるためのコンピュータで読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、静止画や動画を撮影する画像処理装置及びそのノイズ除去方法、並びに前記ノイズ除去方法を実現するためのコンピュータで読み取り可能なプログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラ、携帯電話等に用いられるＣＣＤなどの固体撮像素子は、小型化及び高画素化が進み、固体撮像素子を駆動させる撮像回路の駆動周波数が高くなってきている。また、撮像装置には固体撮像素子の駆動回路以外に、ＣＰＵなどの制御システム回路、ＤＲＡＭなどのメモリ回路及びＬＣＤ等の表示回路を有する。これらの回路のそれぞれが異なる高い周波数のクロック信号で動作している。
【０００３】
このような複数の異なる周波数のクロック信号が混在する撮像装置において、装置の小型化により基板面積が小さくなり、各回路間のクロック干渉が無視できない問題となっている。ＣＣＤセンサなどの電荷を水平転送しているときのクロック信号の干渉と電源配線パターンの干渉、アナログ信号の干渉などが挙げられる。これらのクロック信号の干渉が起こると、干渉したクロック信号のノイズ（ビートノイズ）が撮像した映像信号に重畳してしまい、得られる画像データの品位が劣化する問題がある。
【０００４】
このような問題に関連して、特許文献１においては、ビートノイズをキャンセルする技術が提案されている。この技術の装置では、２種類のクロックにより形成されるビートノイズの１周期に相当する画素数分の複数チャンネルを設けている。さらに、キャプチャ中の黒基準画素期間の各画素の信号、つまり光学的黒領域における各画素の信号を順次複数チャンネル毎に積分するマルチチャンネルクランプ回路を開示している。そして、この積分値を入力画像データから減算することでビートノイズを取り除く方法が提案されている。
【特許文献１】特開２００２−１５２６００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術では、光学的黒領域内の水平オプティカルブラック領域においてビートノイズデータを検出する際に、次のような問題点があった。即ち、１ライン単位でビートノイズを検出する場合には、黒基準画素期間が２０〜３０画素程度であるため、ランダムノイズを含んだオプティカルブラック領域の積分回数が少なくなる。そのため、ビートノイズの検出精度を上げることが難しかった。
【０００６】
また、１ライン以上の単位でビートノイズを検出する際は、画像上部の領域が狭い場合、画像上部のビートノイズの検出精度を上げることが難しかった。
【０００７】
本発明は上記従来の問題点に鑑み、ビートノイズの検出精度を向上させて、良好なビートノイズ除去を行うことができる画像処理装置及びそのノイズ除去方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の画像処理装置は、有効画素領域、前記有効画素領域の垂直方向に位置する垂直光学的黒領域、および、前記有効画素領域の水平方向に位置する水平光学的黒領域を有するＣＣＤで構成された撮像素子の前記有効画素領域から得られた画素データから、周期的なビートノイズ成分を除去する画像処理装置であって、前記垂直光学的黒領域および前記水平光学的黒領域の中から、少なくともいずれかの光学的黒領域を指定する指定手段と、前記ビートノイズ成分の周期で、前記指定手段にて指定された光学的黒領域から得られる複数の画素データを複数の積分手段に振り分ける振り分け手段と、前記複数の積分手段における積分結果から、前記周期的なビートノイズ成分を示す複数のノイズデータを求めるノイズ検出手段と、前記有効画素領域から得られる画素データに含まれるビートノイズ成分の位相と、前記複数のノイズデータにより示されるビートノイズ成分の位相とが一致するように、前記有効画素領域から得られる各画素データの値から、前記ノイズデータの値を減算することで補正する補正手段と、を備え、前記垂直光学的黒領域は、スミアの発生時には前記スミアの成分を含む光学的黒領域であり、前記指定手段は、前記撮像素子によって静止画が生成される場合には少なくとも前記垂直光学的黒領域を指定し、前記撮像素子によって動画が生成される場合には前記垂直光学的黒領域を指定せずに前記水平光学的黒領域を指定することを特徴とする。
また、本発明の画像処理装置のノイズ除去方法は、指定手段、振り分け手段、ノイズ検出手段、及び補正手段を有し、有効画素領域、前記有効画素領域の垂直方向に位置する垂直光学的黒領域、および、前記有効画素領域の水平方向に位置する水平光学的黒領域を有するＣＣＤで構成された撮像素子の前記有効画素領域から得られた画素データから、周期的なビートノイズ成分を除去する画像処理装置のノイズ除去方法であって、前記指定手段が、前記垂直光学的黒領域および前記水平光学的黒領域の中から、少なくともいずれかの光学的黒領域を指定する指定工程と、前記振り分け手段が、前記ビートノイズ成分の周期で、前記指定工程にて指定された光学的黒領域から得られる複数の画素データを複数の積分手段に振り分ける振り分け工程と、前記ノイズ検出手段が、前記複数の積分手段における積分結果から、前記撮像素子から得られる画素データに含まれる周期的なビートノイズ成分を示す複数のノイズデータを求めるノイズ検出工程と、前記補正手段が、前記撮像素子の有効画素領域から得られる複数の画素データに含まれるビートノイズ成分の位相と、前記複数のノイズデータにより示されるビートノイズ成分の位相とが一致するように、前記撮像素子の有効画素領域から得られる各画素データの値から、前記ノイズデータの値を減算することで補正する補正工程と、を有し、前記垂直光学的黒領域は、スミアの発生時には前記スミアの成分を含む光学的黒領域であり、前記指定工程において、前記指定手段が、前記撮像素子によって静止画が生成される場合には少なくとも前記垂直光学的黒領域を指定し、前記撮像素子によって動画が生成される場合には前記垂直光学的黒領域を指定せずに前記水平光学的黒領域を指定することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、ビートノイズの検出精度が向上し、良好なビートノイズ除去を行うことが可能になる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００１４】
［第１の実施の形態］
〈撮像装置の機能〉
図１は、本発明の第１の実施の形態に係る撮像装置の機能を示す機能ブロック図である。
【００１５】
この撮像装置は、ビートノイズ信号の周期が画素データの周期の整数倍であり、ビートノイズ信号の除去を行うことが可能になる構成となっている。以下、具体的に説明する。
【００１６】
図１に示すように、この撮像装置は、撮像レンズ１０１、絞り機構１０２、被写体光を受光して光電変換する半導体の撮像素子１０３を有している。撮像素子（撮像部）１０３には、ＣＣＤ撮像素子やＣＭＯＳ撮像素子等の半導体技術による固体撮像素子が使用可能であり、フォトダイオードなどの光電変換素子が二次元的に配設されている。
【００１７】
また、同期信号発生器（ＳＳＧ）１０４及びタイミングジェネレータ（ＴＧ）１０５を備えている。ＳＳＧ１０４は、固定値の周期である水平同期信号ＨＤ（以下、ＨＤ信号という）及び垂直同期信号ＶＤ（以下、ＶＤ信号という）を生成する機能を有する。ＴＧ１０５は、ＨＤ信号及びＶＤ信号に同期した信号であって、撮像素子１０３を駆動させる各種の制御信号を生成する機能を有する。
【００１８】
さらに、撮像素子１０３の出力側には、ＣＤＳ（Ｃｏｒｒｅｌａｔｅｄ  Ｄｏｕｂｌｅ  Ｓａｍｐｌｉｎｇ）回路及びゲイン調整アンプ（ＡＧＣ）から成る回路部１２１と、Ａ／Ｄ変換回路１０６が順次接続されている。ＣＤＳ回路は、撮像素子１０３から出力される撮像信号を相関二重サンプリングして保持する回路であり、ＡＧＣは、その撮像信号を増幅する回路である。Ａ／Ｄ変換回路１０６は、増幅後の撮像信号をデジタル信号に変換する回路である。
【００１９】
そして、Ａ／Ｄ変換回路１０６の出力側には、ビートノイズ検出回路１０７と、ビートノイズ除去回路１０８が接続され、ビートノイズ検出回路１０７の出力側にはゲイン調整回路１２０が接続されている。ビートノイズ検出回路１０７は、Ａ／Ｄ変換回路１０６から出力された画像データに含まれるビートノイズ成分の１周期分のビートノイズデータを光学的黒画素データより算出する回路である。ビートノイズ除去回路１０８は、ビートノイズ検出回路１０７において算出されたビートノイズ１周期分のビートノイズデータを画像データから減算する回路である。また、ゲイン調整回路１２０は、ビートノイズ検出回路１０７で求められたビートノイズデータのゲイン調整を行う回路である。
【００２０】
一方、ＳＳＧ１０４の出力側には、ウィンドウ回路１０９が接続されている。ウィンドウ回路１０９は、ビートノイズ検出回路１０７及びビートノイズ除去回路１０８を駆動する制御信号を生成する回路である。
【００２１】
システムコントローラ１１０は、上記したＴＧ１０５、ウィンドウ回路１０９、ビートノイズ検出回路１０７、ゲイン調整回路１２０、及びビートノイズ除去回路１０８等の各回路のモードやパラメータを決定する。
【００２２】
また、ビートノイズ除去回路１０８の出力側には、信号処理回路１１１を介してメモり制御回路１１２が接続されている。信号処理回路１１１は、画像データに対して補間処理や色変換処理などの画像処理を行う回路であり、メモリ制御回路１１２は、ＤＲＡＭ１１３と各回路１１４、１１５、１１７、１１８のバスアービトレーションを行う回路である。
【００２３】
ＤＲＡＭ１１３は、信号処理された画像データを一時記憶するメモリであり、変倍回路１１４は、画像データの縮小や拡大を行う回路である。また、表示制御回路１１５は、ＬＣＤ１１６で画像データを表示するための回路であり、圧縮伸長回路１１７は、画像データをＪＰＥＧ圧縮方式などの圧縮方式で圧縮及び／又は伸長するための回路である。またＩ／Ｆ回路１１８は、圧縮伸長回路１１７で圧縮された画像データを記録する脱着可能なメモリカード１１９とのインターフェースを行うである。
【００２４】
〈撮像装置の撮像動作〉
次に、図１に示した撮像装置の撮像動作について説明する。
【００２５】
ＴＧ１０５は、ＳＳＧ１０４において生成されるＨＤ信号及びＶＤ信号から撮像素子１０３を駆動する制御信号を生成する。撮像素子１０３は、ＴＧ１０５による制御信号のタイミングに基づき、レンズ１０１及び絞り１０２を通過した光信号を電気信号へと変換する。
【００２６】
撮像素子１０３において読み込まれたアナログの画像信号は、Ａ／Ｄ変換回路１０６によりアナログの画像信号からデジタルの画像データに変換されて、ビートノイズ検出回路１０７及びビートノイズ除去回路１０８及びメモリ制御回路１１２へ出力される。ウィンドウ回路１０９は、ＨＤ信号及びＶＤ信号をデコードし、ビートノイズ検出回路１０７へイネーブル信号ＩＮＴＧ＿ＯＮ、セレクト信号ＩＮＴＧ＿ＳＥＬ、リセット信号ＩＮＴＧ＿ＣＬＲを出力する。さらに、ビートノイズ除去回路１０８へビートノイズデータセレクト信号ＮＺ＿ＳＥＬを出力する。
【００２７】
イネーブル信号ＩＮＴＧ＿ＯＮがハイレベルの期間の総画素数はビートノイズ１周期分の画素数の倍数になるようにＨＤ信号及びＶＤ信号をデコードする。例えば、ビートノイズ１周期分の画素数が４画素、積分回数が１０回の場合では、
イネーブル信号ＩＮＴＧ＿ＯＮがハイレベルの期間の総画素＝
ビートノイズ１周期分の画素数×積分回数＝４×１０＝４０画素  …（式１）
と表される。
【００２８】
また、ビートノイズ検出回路１０７は、ウィンドウ回路１０９から供給された制御信号に従ってビートノイズ１周期当たりの画素数のビートノイズデータを求める。ゲイン調整回路１２０は、ビートノイズ検出回路１０７で求められたビートノイズデータのゲイン調整を行う。そしてビートノイズ除去回路１０８において、撮像された画像データからゲイン調整回路１２０により求められたビートノイズデータを減算して、ビートノイズ成分を除去した画像データを出力する。
【００２９】
ビートノイズ除去回路１０８から出力される画像データは、信号処理回路１１１において信号処理され、メモリ制御回路１１２を介してＤＲＡＭ１１３へ格納される。また、変倍回路１１４は、ＤＲＡＭ１１３に格納されている画像データを読み出し、ＬＣＤ１１６に表示させるため、７２０×４８０画素程度のサイズに変倍処理をして、表示制御回路１１５を介して画像データをＬＣＤ１１６に表示する。また、圧縮伸長回路１１７においては、ＤＲＡＭ１１３から読み出した画像データを圧縮処理し、その圧縮処理された圧縮画像データをＤＲＡＭ１１３に書き込む。さらに、Ｉ／Ｆ回路１１８においては、ＤＲＡＭ１１３から読み出した圧縮画像データをメモリカード１１９へ書き込む。
【００３０】
〈ビートノイズ検出回路の構成及び動作〉
図２は、ビートノイズの周期が４画素周期である場合のビートノイズ検出回路１０７の構成を示すブロック図である。図３は、本実施形態に係る撮像装置の撮像部内の配置構成と信号との関係を示す模式図である。
【００３１】
図３に示すように、撮像素子１０３は、二次元的に配設された光電変換素子に対して被写体像が入射可能な被写体領域である有効画素領域５０１と、前記光電変換素子が遮光された非被写体領域であるオプティカルブラック領域（光学的黒領域）を有している。オプティカルブラック領域は、有効画素領域５０１の垂直方向（画像データの上部領域）の端部に配設された垂直オプティカルブラック領域（以下、垂直ＯＢブラックと記す）５０２を備えている。さらに、有効画素領域５０１の水平方向（画像データの左領域又は右領域）の端部に配設された水平オプティカルブラック領域（以下、水平ＯＢブラックと記す）５０３も備えている。
【００３２】
ビートノイズ検出回路１０７は、積分器２０２〜２０５を備え、ウィンドウ回路１０９からの信号ＩＮＴＧ＿ＣＬＲがハイレベルになると、これら積分器２０２〜２０５の積分値がリセットされる。この信号ＩＮＴＧ＿ＣＬＲは、図３に示す５０４のリセット位置においてハイレベルになり、積分器２０２〜２０５のリセット動作が行われる。
【００３３】
図３におけるリセット位置５０４の次の画素データからは、ウィンドウ回路１０９より出力された信号ＩＮＴＧ＿ＯＮがハイレベルになる。したがって、図２に示すＡＮＤ回路２００で、Ａ／Ｄ変換回路１０６より出力される画像データが信号ＩＮＴＧ＿ＯＮでゲートされて振り分け回路２０１へ送られる。
【００３４】
したがって、信号ＩＮＴＥＧ＿ＯＮを図３のＢ，Ｃに示すようにハイレベル期間を制御することにより、垂直ＯＢ領域５０２又は水平ＯＢ領域５０３に含まれる光学的黒画素データに対して、積分器２０２〜２０５のいずれかにおいて積分が行われる。
【００３５】
この積分を行う期間は、上記の（式１）で記載したように、
ビートノイズ１周期分の画素数×積分回数
になるようにハイレベルの期間を決める。また、複数ラインに渡って積分することができる構成となっている。
【００３６】
なお、複数ラインに亘って積分する場合で、且つＨＤ周期とビートノイズ周期の倍数が異なる場合には、ＨＤ信号の立ち下りから同じ時間後の画素におけるビートノイズの位相がライン毎に変化するため、ライン毎に位相を補正しなければならない。この補正方法については、後述する。
【００３７】
このようにして、ビートノイズデータを得るために、垂直ＯＢ領域５０２又は水平ＯＢ領域５０３に含まれる光学的黒画像データを積分する。この積分領域が広いほどビートノイズデータの精度が良くなるため、より多くの積分領域を選択するようにする。
【００３８】
例えば、「垂直ＯＢ領域の画素数」＜「水平ＯＢ領域の画素数」の場合には、水平ＯＢ領域５０３を積分してビートノイズを検出する。「垂直ＯＢ領域の画素数」＞「水平ＯＢ領域の画素数」の場合には、垂直ＯＢ領域５０２を積分してビートノイズを検出する。
【００３９】
即ち、垂直ＯＢ領域５０２の範囲が狭い場合は水平ＯＢ領域５０３のビートノイズを検出し、検出後の画像データをＤＲＡＭ１１３に一旦記憶し、その記憶した画像データをＤＲＡＭ１１３から読み出す。そして、検出したビートノイズデータを用いて、該画像データのビートノイズを除去する。また、水平ＯＢ領域５０３が小さい場合は垂直ＯＢ領域５０２でビートノイズを検出する。検出した領域が画像上部のため、検出したビートノイズデータを用いて画像データの被写体領域（画像下部）のビートノイズを除去する。以下、具体的なフローを図４及び図５を用いて説明する。
【００４０】
図４は、水平ＯＢ領域５０３を積分する場合の本実施の形態に係る動作を示すフローチャートである。
【００４１】
まず水平ＯＢ領域５０３においてオプティカルブラック領域のデータを積分する（Ｓ８０１）。そして、ビートノイズの検出に使用した画像データを同時にＤＲＡＭ１１３に一旦保持してから（Ｓ８０２）、ＤＲＡＭ１１３に保持した画像データを読み出して（Ｓ８０３）、検出したビートノイズデータを用いてビートノイズを除去する（Ｓ８０５）。
【００４２】
図５は、垂直ＯＢ領域５０２を積分する場合の本実施の形態に係る動作を示すフローチャートである。
【００４３】
まず、画像データの上部にある垂直ＯＢ領域５０２でオプティカルブラック領域の画素データを積分する（Ｓ９０１）。ビートノイズを検出した後（Ｓ９０２）に続く画像データにおいて、画像データの上部で検出したビートノイズデータを用いてビートノイズを除去する（Ｓ９０３）。この場合は、水平ＯＢ領域５０３を積分する場合と異なり、ビートノイズを検出してから画像データをＤＲＡＭ１１３に一旦保持せずにビートノイズを除去することができる。そのため、画像データを一旦保持するための記憶領域の削減やバンド幅の削減に寄与することができる。
【００４４】
また、水平ＯＢ領域５０３の信号ＩＮＴＧ＿ＯＮ（信号Ｃ）と垂直ＯＢ領域５０２の信号ＩＮＴＧ＿ＯＮ（信号Ｂ）の論理和（ＯＲ）をとることで、画像上部や画像下部ではＩＮＴＧ＿ＯＮ（信号Ｄ）となる。それ以外の部分（有効画素５０１を含む領域）ではＩＮＴＧ＿ＯＮ（信号Ｅ）となる。
【００４５】
また、水平ＯＢ領域５０３と垂直ＯＢ領域５０２の両方を用いて、ビートノイズを検出してもよい。これにより、積分する領域の画素数が増加するので検出されたビートノイズデータの精度が良くなる。即ち、システムコントローラ１１０は、ビートノイズ検出を行うオプティカルブラック領域の検出領域を制御できる構成となっている。例えば、静止画撮影時（第１の撮影モード）には、水平ＯＢ領域５０３、垂直ＯＢ領域５０２、又は水平ＯＢ領域５０３と垂直ＯＢ領域５０２の両方を選択する。また、動画撮影時やＥＶＦ表示時、撮影待機状態（ライブビュー）時（第２の撮影モード）には、水平ＯＢ領域５０３を選択する。このように、システムコントローラ１１０は、ビートノイズ検出の検出領域を１箇所または複数箇所指定（選択可能）することができる構成である。
【００４６】
これにより、静止画撮影時には広い範囲でビートノイズを検出することになるので、精度の良いビートノイズデータを生成できる。また、動画撮影時にはスミアを含まない水平ＯＢ領域５０３でビートノイズを検出することができるため、スミアの影響を受けないビートノイズデータを生成できる。スミアとは、画像に高輝度な縞状の帯ができる現象である。
【００４７】
このように、ビートノイズを除去するために用いるビートノイズデータを、垂直ＯＢ領域又は水平ＯＢ領域などの広い領域で検出することで、検出するビートノイズデータの検出精度の向上を図ることができる（Ｓ／Ｎの向上）。これによって良好なビートノイズ除去を行うことができる。
【００４８】
以下、本実施の形態におけるビートノイズデータの生成処理とビートノイズの除去処理について、詳細に説明する。
【００４９】
〈ビートノイズデータの生成〉
図６は、ビートノイズ検出回路１０７の処理を示すフローチャートを説明する。
【００５０】
図２の振り分け回路２０１は、ウィンドウ回路１０９より出力される信号ＩＮＴＧ＿ＳＥＬの値に従い、信号ＩＮＴＧ＿ＯＮでゲートされた（Ｓ７０１）画像データを、積分器２０２、２０３、２０４及び２０５のいずれかへ振り分ける（Ｓ７０３）。信号ＩＮＴＧ＿ＯＮでゲートされない場合は、画像データを０クリアしたデータ（Ｓ７０２）を積分器２０２、積分器２０３、積分器２０４及び積分器２０５のいずれかへ振り分ける。
【００５１】
信号ＩＮＴＧ＿ＳＥＬは、図３に示すように、信号ＩＮＴＧ＿ＯＮがハイレベル、即ち“１”の期間において、ビートノイズ周期の画素数の範囲で、供給される画像データを１画素ずつ順番に選択を周期的に繰り返す信号である。
【００５２】
第１の実施の形態では、ビートノイズ周期が４画素周期であると仮定したので、信号ＩＮＴＧ＿ＳＥＬが０、１、２、３、０・・・と繰り返す。この場合、振り分け回路２０１は光学的黒画素データの振り分け出力先を、それぞれ積分器２０２、積分器２０３、積分器２０４、積分器２０５、積分器２０２・・・と繰り返して切り替える。このような動作によって、積分器２０２〜積分器２０５は、このように供給された光学的黒画素データを積分する。
【００５３】
ビートノイズ検出回路１０７に設けられる積分器の数はビートノイズの周期の画素数によって決まる。第１の実施の形態においてはビートノイズの周期が４画素周期であるため、４個の積分器２０２〜２０５が設けられている。当然にして、ビートノイズの周期が４画素周期以下の場合においても、ビートノイズの周期に応じて信号ＩＮＴＧ＿ＳＥＬの周期を変化させることにより対応できる。例えばビートノイズの周期が３画素周期であれば、信号ＩＮＴＧ＿ＳＥＬを０、１、２、０、１、２、・・・と変化させればよい。また、ビートノイズの周期が４画素周期以上であれば、積分器の数をビートノイズの周期に応じて増やせば対処可能である。
【００５４】
また、信号ＩＮＴＧ＿ＯＮ、信号ＩＮＴＧ＿ＳＥＬ及び信号ＩＮＴＧ＿ＣＬＲは、図７に示すように、ウィンドウ回路１０９に設けたそれぞれ水平カウンタ４０５及び垂直カウンタ４０６の出力をデコーダ４０７〜４１０でデコードすることで生成される。
【００５５】
信号ＩＮＴＧ＿ＣＬＲが０の場合は、振り分けられたデータを積分器２０２〜２０５で積分する（Ｓ７０５）。信号ＩＮＴＧ＿ＣＬＲが１の場合は積分器２０２〜２０５に保持されたデータは０にクリアする（Ｓ７０６）。
【００５６】
また、積分器２０２の積分結果は、除算器２０６においてＮで除算される（Ｓ７０８）。Ｎの値は積分器２０２に積分された値を正規化するように決定し、図１のシステムコントローラ１１０が指定する。同様に、除算器２０７は積分器２０３の積分結果を、除算器２０８は積分器２０４の積分結果を、除算器２０９は積分器２０５の積分結果をそれぞれＮで除算し、１画素当たりの信号レベルに正規化する。
【００５７】
次に、最小値検出回路２１０において、除算器２０６〜２０９で正規化されたデータの中から最小値ＭＩＮを検出する（Ｓ７０９）。減算器２１１〜２１４において、除算器２０６〜２０９からの正規化されたデータからそれぞれ最小値ＭＩＮを減算することで、ビートノイズの直流（ＤＣ）成分が除去される（Ｓ７１０）。そして、ビートノイズの直流（ＤＣ）成分が除去されたデータをデータラッチ２１５〜２１８で保持する（Ｓ７１１）。
【００５８】
以上の方法により、ビートノイズの１周期分の画素値であるビートノイズデータＮＺ１、ＮＺ２、ＮＺ３及びＮＺ４が生成される。
【００５９】
〈ビートノイズの除去〉
次に、ビートノイズ除去回路１０８におけるビートノイズ除去処理について説明する。図８は、図１中のビートノイズ除去回路１０８の構成を示す回路図である。
【００６０】
セレクタ６０１は、ゲイン補正回路１２０において生成されたビートノイズデータＮＺ１、ＮＺ２、ＮＺ３及びＮＺ４を後述する選択制御信号ＮＺ＿ＳＥＬに従って選択する。
選択制御信号ＮＺ＿ＳＥＬはウィンドウ回路１０９で求められる。デコーダ４１０は、１ライン目の初期位相をＮＺ１（この時、ＮＺ＿ＳＥＬは０とする）、ビートノイズ信号の１周期分の画素数を４画素とすると、１ライン目の選択制御信号ＮＺ＿ＳＥＬは０、１、２、３、０、１、…の順番となる。
【００６１】
また、ＨＤ周期とビートノイズ周期の倍数値が異なる場合、
ライン毎の初期位相のズレ＝
（ＨＤ周期＋前のラインの初期位相）％ビートノイズ周期  …（式２）
となる。ここで、例えばＡ％ＢはＡをＢで割ったときの剰余を表す。
【００６２】
例えばＨＤ周期が４２画素とすると、
ライン毎の初期位相のズレ＝（４２＋０）％４＝２  …  （式３）
となるため、２ライン目の初期位相は２と表せる。
【００６３】
したがって、２ライン目の初期位相は、選択制御信号ＮＺ＿ＳＥＬ＝２となる。
【００６４】
このように選択制御信号ＮＺ＿ＳＥＬはウィンドウ回路１０９で生成され、ビートノイズ除去回路１０８で使用可能となる。
【００６５】
そして、セレクタ６０２により、メモリ制御回路１１２からの画素データとＡ／Ｄ変換回路１０６から供給される画素データとを後述する選択制御信号ＰＡＳＳ＿ＳＥＬに従って選択する。減算器６０３では、セレクタ６０２の出力画素データからセレクタ６０１で選択されたビートノイズデータを減算する。
【００６６】
システムコントローラ１１０は、メモリ制御回路１１２からの画素データとＡ／Ｄ変換回路１０６から供給される画素データのどちらを使用するかに応じて選択制御信号ＰＡＳＳ＿ＳＥＬを制御する。例えば、垂直ＯＢ領域５０２でビートノイズを検出した場合には、システムコントローラ１１０は、選択制御信号ＰＡＳＳ＿ＳＥＬ＝１とするように制御する。また、動画撮影時に水平ＯＢ領域５０３でビートノイズ検出し、ゲイン調整回路１２０でビートノイズデータのゲイン調整を行った場合でも同様に、選択制御信号ＰＡＳＳ＿ＳＥＬ＝１とするように制御する。選択制御信号ＰＡＳＳ＿ＳＥＬ＝１の場合は、撮像した画像データをＤＲＡＭ１１３に一旦保持することなしに、ビートノイズを除去することができる。
【００６７】
垂直ＯＢ領域５０２で十分なＯＢ領域が得られない場合（積分回数が少ない場合など）には、水平ＯＢ領域５０３でビートノイズを検出する。この場合、ＤＲＡＭ１１３に画像データを一旦保持して、ＤＲＡＭ１１３から画像データを読み出してビートノイズ除去回路１０８に通すために、システムコントローラ１１０は、選択制御信号ＰＡＳＳ＿ＳＥＬ＝０となるように制御する。
【００６８】
以上の方法により、ビートノイズ除去回路１０８からビートノイズが除去された画像データが出力される。
【００６９】
［第２の実施の形態］
第２の実施の形態では、動画撮影時やＥＶＦ表示時、撮影待機状態（ライブビュー）時において、ビートノイズを検出する検出領域として、スミアが発生しない水平ＯＢ領域５０３を用いる場合について説明する。
【００７０】
水平ＯＢ領域５０３でビートノイズを検出する場合且つ画像データを記憶領域に一旦保持しない場合、ビートノイズを除去するためには前のフレーム（又はフィールド）のビートノイズデータを用いてビートノイズを除去する。前のフレームでビートノイズを検出した場合、そのビートノイズデータを次のフレームで用いるために、図２のデータラッチ２１５〜２１８（遅延手段）に保持しておく。つまり、検出したビートノイズデータを所定のフレーム期間に亘って遅延させることになる。そして、保持しておいたビートノイズデータを次のフレームで減算することによって、ビートノイズを除去する。
【００７１】
以前のフレームのビートノイズデータを用いてビートノイズを除去する場合、且つＶＤ周期（１垂直期間）がビートノイズ周期の倍数と異なる場合には、前のフレームのビートノイズと次のフレームのビートノイズの位相補正する。
【００７２】
次のフレームの初期位相＝
（前のフレームの初期位相＋ＶＤ周期）％ビートノイズ周期  …  （式４）
となる、
例えば、ＶＤ周期を２９９画素、ビートノイズ周期を４画素、前のフレームの初期位相を３とした場合、
次のフレームの初期位相＝（３＋２９９）％４＝３０２％４＝２  …  （式５）
となるため、次のフレームの初期位相は２となる。これにより、ＶＤ周期がビートノイズ周期の倍数と異なる場合でもビートノイズを除去することができる。
【００７３】
また、ＣＤＳ／ＡＧＣ回路１２１でゲインのコントロールがなされ、前のフレームと次のフレームとでゲインが変化した場合、前のフレームで検出したビートノイズデータにゲインをかける。ゲインが変化したときでも、ゲイン補正したビートノイズデータを用いて次のフレームのビートノイズを除去することができる。
【００７４】
次に、ゲイン調整回路１２０について説明をする。
【００７５】
図９は、図１中のゲイン調整回路１２０の構成を示す回路図である。
【００７６】
ゲイン調整回路１２０は、動画撮影時に前のフレームと次のフレームでゲインが変化する場合、ビートノイズ検出回路１０７で求められたビートノイズデータＮＺ１、ＮＺ２、ＮＺ３及びＮＺ４のゲイン調整をする回路である。ビートノイズ周期を４画素とした場合には、図９に示すように、４つの乗算器から構成される。そして、これら乗算器に対して、それぞれビートノイズデータＮＺ（ｎ）１、ＮＺ（ｎ）２、ＮＺ（ｎ）３及びＮＺ（ｎ）４と、システムコントローラ１１０が出力する制御信号ＧＡＩＮ＿ＡＤＪが入力される。そして、ゲイン調整されたビートノイズデータＮＺ（ｎ＋１）１、ＮＺ（ｎ＋１）２、ＮＺ（ｎ＋１）３及びＮＺ（ｎ＋１）４が出力されるようになっている。
【００７７】
水平ＯＢ領域５０３を用いて、撮像しながらビートノイズを除去する場合、ＤＲＡＭ１１３に撮像した画像データ（以下、撮像データと記す）を一旦保持する。そして、メモリ制御回路１１２により、ＤＲＡＭ１１３に保持した該撮像データを読み出し、この撮像データをビートノイズ除去回路１０８を通さなければ画像全体のビートノイズを除去できない。そのため、ＤＲＡＭ１１３に撮像データを一旦保持する場合、バンド幅が大きくなり、ＤＲＡＭ１１３に撮像データの一時記憶用の記憶領域を確保しなければならない。
【００７８】
これを避けるために、ＤＲＡＭ１１３に撮像データの一時記憶用の記憶領域を確保しない場合について、図１０を用いて説明する。
【００７９】
ＤＲＡＭ１１３に撮像データを保持せずに、前のフレームＦ（ｎ）のビートノイズデータＮＺ（ｎ）を用いてビートノイズを除去する場合、前のフレームＦ（ｎ）と次のフレームＦ（ｎ＋１）の画像全体のゲインが変わることがある。そのため、前のフレームＦ（ｎ）で検出したビートノイズデータＮＺ（ｎ）のゲイン調整を次のように行う。
【００８０】
前のフレームＦ（ｎ）のゲインＧ（ｎ）で検出したビートノイズデータをビートノイズデータＮＺ（ｎ）とし、次のフレームＦ（ｎ＋１）のゲインＧ（ｎ＋１）で検出したビートノイズデータをビートノイズデータＮＺ（ｎ＋１）とする。
【００８１】
例えば、ゲインが２倍に上がる場合、
Ｇ（ｎ＋１）＝Ｇ（ｎ）×２  …  （式６）
となる。ＧＡＩＮ＿ＡＤＪ＝２とすると、
前のフレームＦ（ｎ）と次のフレームＦ（ｎ＋１）のビートノイズデータＮＺの関係式は、ＮＺ（ｎ＋１）＝ＮＺ（ｎ）×ＧＡＩＮ＿ＡＤＪ  …  （式７）
と表される。
【００８２】
前記したＶＤ周期とビートノイズ周期の倍数値が異なった場合の初期位相のズレを算出し、前のフレームで検出したビートノイズデータを用いてビートノイズを除去する。
【００８３】
このように、ゲイン調整回路１２０でビートノイズデータのゲインを調整することで、動画撮影時に前のフレームと次のフレームのゲインが変化しても、ビートノイズ除去回路１０８に正しいビートノイズデータを与え、ビートノイズを除去することが可能となる。
［第３の実施の形態］
次に、第３の実施の形態では、撮像素子１０３としてＣＭＯＳセンサを使用した撮像装置において、動画撮影時などＣＭＯＳセンサから画素を間引いて読み出す場合でのビートノイズ除去方法について説明する。
【００８４】
〈実施例１〉
図１１は、第３の実施の形態に係る実施例１のビートノイズ除去処理を示すフローチャートである。図１２及び図１３は、第３の実施の形態に係る実施例１の処理を説明するための模式的説明図である。
【００８５】
図１１において、まず、有効画素領域５０１と垂直ＯＢ領域５０２との画素間引き間隔、つまりＣＭＯＳセンサの画素読み出し間隔が同一の場合（Ｓ１２０１の「垂直同じ」）、Ｓ１２０２へ進む。Ｓ１２０２では、図１２に示すＩＮＴＧ＿ＯＮ信号αがハイレベルのとき垂直ＯＢ領域５０２の積分を行う。そして、積分したデータを正規化しビートノイズデータを得る（Ｓ１２０３）。
【００８６】
次にＳ１２０３で得たビートノイズデータを用いて、有効画素領域５０１のビートノイズの除去を行う（Ｓ１２０４）。このビートノイズの除去は、Ｓ１２０３でビートノイズの検出を行うためのカウンタと同期して行う。
【００８７】
図１２の例では、ビートノイズの周期が４画素の場合であり、且つ垂直ＯＢ領域５０２においてビートノイズデータＡ、Ｂ、Ｃ、Ｄが検出された例を示している。なお、図中の「○」印と「×」印は、画素を示しており、「×」印は間引かれた画素を示している。
【００８８】
有効画素領域５０１におけるビートノイズの除去に用いるためのビートノイズデータＡ、Ｂ、Ｃ、Ｄを選択する順番は、次のようになる。即ち、有効画素領域５０１における画素１００３が用いるビートノイズデータはビートノイズデータＡである。同様に、画素１００４はビートノイズデータＢ、画素１００５はビートノイズデータＣ、画素１００６はビートノイズデータＤである。その結果、図１３に示すように、それぞれのビートノイズデータＡ、Ｂ、Ｃ、Ｄの位相差は＋１画素となる。その結果、ビートノイズ検出を行うためのカウンタ（＋１インクリメント）とビートノイズ除去を行うためのカウンタ（＋１インクリメント）は共通化することができる。そのため、垂直ＯＢ領域５０２と有効画素領域５０１の間引き間隔が同じ場合は垂直ＯＢ領域５０２でビートノイズ検出を行うように、検出領域を選択するのである（Ｓ１２０２）。
【００８９】
これにより、画素間引きがなされた画像データにビートノイズが重畳した場合でも、ビートノイズ検出を行うための水平カウンタと、ビートノイズ除去を行うための水平カウンタとを、例えば図７の水平カウンタ４０５で共通化することができる。
【００９０】
ＣＭＯＳセンサは、画素読み出しがＸＹアドレス方式であるので、太陽光など明るい光を撮像した場合に垂直方向に高輝度な縞は発生しない（原理的にスミアは発生しない）。したがって、垂直ＯＢ領域５０２でビートノイズ検出を行っても、スミアの影響を受けない。
【００９１】
また、有効画素領域５０１と水平ＯＢ領域５０３の画素間引き間隔（センサの画素読み出し間隔）が同じ場合（Ｓ１２０２の「水平同じ」）は、図１２のＩＮＴＧ＿ＯＮ信号βがハイレベルのときに水平ＯＢ領域Ｓ１００７の積分を行う（Ｓ１２０５）。そして、積分したデータを正規化し、ビートノイズデータを得る（Ｓ１２０６）。次に画像データをＤＲＡＭ１１３に一旦保持し、その保持した画像データから、Ｓ１２０６で得たビートノイズデータを用いてビートノイズを除去する（Ｓ１２０７）。
【００９２】
〈実施例２〉
図１４は、第３の実施の形態に係る実施例２のビートノイズ除去処理を示すフローチャートである。図１５及び図１６は、第３の実施の形態に係る実施例１の処理を説明するための模式的説明図である。
【００９３】
図１４において、まず、垂直ＯＢ領域５０２又は水平ＯＢ領域５０３と有効画素領域５０１の画素間引きの間隔が同じ場合（Ｓ１３０１のＹＥＳ）、図１１のＳ１２０１の処理へ移る。垂直ＯＢ領域５０２又は水平ＯＢ領域５０３と有効画素領域５０１の画素間引きの間隔が異なる場合は（Ｓ１３０１でＮＯ）、次のようにオプティカルブラック領域の選択を行う（Ｓ１３０２）。即ち、垂直ＯＢ領域５０２、水平ＯＢ領域５０３、又はその両方を選択し（Ｓ１３０２）、ビートノイズ検出を行う（Ｓ１３０３）。
【００９４】
ビートノイズの検出では、垂直ＯＢ領域５０２の選択時では、図１５のＩＮＴＧ＿ＯＮ信号αがハイレベルのときにオプティカルブラック領域の積分を行う。水平ＯＢ領域５０３の選択時では、図１５のＩＮＴＧ＿ＯＮ信号βがハイレベルのときにオプティカルブラック領域の積分を行う。
【００９５】
次に、Ｓ１３０３で検出したビートノイズデータを用いてビートノイズ除去を行う（Ｓ１３０４）。このビートノイズ除去では、次のような処理を行う。
【００９６】
図１５の例では、ビートノイズの周期が４画素の場合であり、ビートノイズデータＡ、Ｂ、Ｃ、Ｄが検出された例を示している。有効画素領域５０１におけるビートノイズ除去に用いるためのビートノイズデータＡ、Ｂ、Ｃ、Ｄを選択する順番は、画素１１０３、１１０４、１１０５、１１０６それぞれに対して、ビートノイズデータＣ、Ｂ、Ａ、Ｄとなる。その結果、図１６に示すように、それぞれのビートノイズデータＣ、Ｂ、Ａ、Ｄの位相差は＋３となる。
【００９７】
以上から、ビートノイズ検出の水平カウンタは＋１インクリメントし、ビートノイズ除去の水平カウンタは＋３インクリメントすることによって有効画素領域５０１のビートノイズの除去が可能となる。
【００９８】
なお、図１５の例では、水平カウンタのインクリメント値について説明したが、垂直方向の画素間引きが異なる場合でも垂直カウンタについて同様にインクリメント値を変更することでビートノイズ除去を行うことができる。これより、センサからの画素読み出し方法がオプティカルブラック領域と有効画素領域で異なっても、正しくビートノイズデータを選択し、ビートノイズ除去を行うことが可能となる。
【００９９】
なお、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【０１００】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０１】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。又は、プログラムコードをネットワークを介してダウンロードしてもよい。
【０１０２】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１０３】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行う場合である。
【図面の簡単な説明】
【０１０４】
【図１】第１の実施の形態に係る撮像装置の機能を示す機能ブロック図である。
【図２】ビートノイズの周期が４画素周期である場合のビートノイズ検出回路の構成を示すブロック図である。
【図３】撮像部内の配置構成と信号との関係を示す模式図である。
【図４】水平ＯＢ領域５０３を積分する場合の本実施の形態に係る動作を示すフローチャートである。
【図５】垂直ＯＢ領域５０２を積分する場合の本実施の形態に係る動作を示すフローチャートである。
【図６】ビートノイズ検出回路１０７の処理を示すフローチャートである。
【図７】ウィンドウ回路の構成図である。
【図８】図１中のビートノイズ除去回路の構成を示す回路図である。
【図９】図１中のゲイン調整回路の構成を示す回路図である。
【図１０】ゲイン調整を説明するための説明図である。
【図１１】第３の実施の形態に係る実施例１のビートノイズ除去処理を示すフローチャートである。
【図１２】第３の実施の形態に係る実施例１の処理を説明するための模式的説明図である。
【図１３】第３の実施の形態に係る実施例１の処理を説明するための模式的説明図である。
【図１４】第３の実施の形態に係る実施例２のビートノイズ除去処理を示すフローチャートである。
【図１５】第３の実施の形態に係る実施例１の処理を説明するための模式的説明図である。
【図１６】第３の実施の形態に係る実施例１の処理を説明するための模式的説明図である。
【符号の説明】
【０１０５】
１０３  撮像素子
１０７  ビートノイズ検出回路
１０８  ビートノイズ除去回路
１１０  システムコントローラ
１１２  メモリ制御回路
１１３  ＤＲＡＭ
１２０  ゲイン調整回路
【図１】
0005004693.tif 000002
【図２】
0005004693.tif 000003
【図３】
0005004693.tif 000004
【図４】
0005004693.tif 000005
【図５】
0005004693.tif 000006
【図６】
0005004693.tif 000007
【図７】
0005004693.tif 000008
【図８】
0005004693.tif 000009
【図９】
0005004693.tif 000010
【図１０】
0005004693.tif 000011
【図１１】
0005004693.tif 000012
【図１２】
0005004693.tif 000013
【図１３】
0005004693.tif 000014
【図１４】
0005004693.tif 000015
【図１５】
0005004693.tif 000016
【図１６】
0005004693.tif 000017