以下、図面を参照して、本発明の実施の形態について説明する。
図1と図2は、本発明が適用された列並列AD方式のCMOSイメージセンサのクランプシステムの構成例を示している。
即ち、図1は、本発明が適用された左右独立OPBクランプ補正部を備えた列並列AD方式のCMOSイメージセンサの全体構成の主要部分の構成例を示している。
CMOSイメージセンサ全体は、光電変換画素部11、列並列AD変換部12、列走査部13、クランプ回路等を含むデータ演算部14、および、I/O変換部15を含むように構成されている。
本発明が適用されるクランプ回路等を含むデータ演算部14は、列並列AD変換部12の後段であって、列走査部13とI/O変換部15との間に配置される。
図2は、信号データの流れの観点から、図1のa1からa2の間に示されるデータ演算部14の構成例を示している。
データ演算部14は、セレクタ部21、制御信号出力部22、データ保持部23、クランプ補正部24、および加算部25を含むように構成されている。
図2の例のデータ演算部14は、例えば、常に1行前の1行分のデータを保持し、必要に応じて呼び出される構成を有している。
ここで、本発明の理解を容易なものとすべく、従来のクランプ手法について説明する。
図3は、従来のクランプ手法のうち、垂直OPB方式による垂直クランプ手法を説明する図である。
図3に示されるイメージセンサは、チップサイズが比較的大きく、左右繋ぎ露光を行った高画素タイプの列並列AD方式のCMOSイメージセンサを想定している。図3のイメージセンサは、有効画素領域31全体の上部または下部(図3の例では上部)に横方向に細長い垂直OPB領域32が配置されている。また、図3のイメージセンサは、左右の電気物理特性が全く同一にならない。よって、有効画素領域31は、仮想的に左右2つの左有効画素領域31L,右有効画素領域31Rに区分されている。
従来の垂直クランプ手法とは、次のようなステップS1の平均化処理とS2の下限値処理とからなる手法をいう。ステップS1の平均化処理とは、垂直OPB領域32内の画素の個々のOPB値を検知して、垂直OPB領域32全体のOPB値の総和をとり、領域中の全画素数で割って平均値化する、という処理をいう。ステップS2の下限値処理とは、ステップS1の平均値化処理により平均値化された値を零補正して、その補正値を、垂直OPB領域32の下に配置されている有効画素領域31全体の黒レベルの下限値にする、という処理をいう。
換言すると、ステップS1の平均化処理とは、垂直OPB領域32の全画素のOPB値を平均化して垂直OPB領域全体のOPB値とする、という処理である。また、ステップS2の下限値処理とは、その値を、有効画素領域31の画面全体の黒レベルの下限値に適用する、という処理である。
このような従来の垂直クランプ手法は、前述したように仮想的な左右の有効画素領域(図3の例では、左有効画素領域31L,右有効画素領域31R)に対して、それぞれ独立にクランプ補正処理が実行できないという欠点を有している。
また、図4は、従来のクランプ手法のうち、水平OPB方式による水平クランプ手法を説明する図である。
図4のセンサも、図3のセンサと基本的に同様のCMOSセンサである。ただし、図4のセンサにおいては、有効画素領域31の左側または右側のどちらか一方(図4の例では左側)に縦方向に細長い水平OPB領域33が設けられている。図4の従来の水平クランプ手法とは、左右の特性アンバランスを無視して有効画素領域31全体について一行ずつクランプ補正を行う手法をいう。よって、図4の従来の水平クランプ手法は、図3の従来の垂直クランプ手法と比較して、より一段と細かなクランプ補正を実行することができる。ただし、図4の従来の水平クランプ手法は、左右の物理的特性に差がある場合には、正確なクランプ補正が行えず、結果として左右画像のオフセットが生じてしまう場合もある。
従来の水平クランプ手法とは、次のようなステップS21の平均化偏差処理とS22の下限値処理との繰り返しからなる手法をいう。
即ち、最初の回のステップS21の平均化偏差処理とは、最初の水平走査時に、水平OPB領域33の最初の1行について画素信号の総和を画素数で割った平均値を算出し、基準値からの差分値△0を求める、といった処理をいう。また、最初の回のステップS22の下限値処理とは、同じ走査期間の有効画素領域の行には反映させず、次の走査時まで値を保持し、この値が零になるようにして、有効画素領域31の次の行の信号レベルの下限値を定めるようにして渡す、といった処理をいう。
以下、同様に、各回のステップS21の平均化偏差処理では、水平OPB領域33の各行について、差分値△1、△2、△3、・・・・、△n−1が求められる。そして、各回のステップS22の下限値処理では、これらの値が常に零になるようにして、有効画素領域31の各行に渡されることになる。
即ち、ステップS21の平均化偏差処理とは、水平OPB領域33の行画素のOPB値を平均化して、それを行のOPB値とし、この行のOPB値の基準値に対する差分値△を求める、という処理である。ステップS22の下限値処理とは、差分値△から自身を減じて零とし、有効画素領域31の次の行のOPB値として適用する、という処理である。
以下、このような従来のクランプ手法に対して、本発明が適用されるクランプ手法の各例(以下、本発明の実施例と称する)について説明していく。
図5は、本発明の実施例1として、左右独立クランプ制御方式の概念を示す図であって、水平OPBによる左右独立クランプ方式による画素部の拡大図を示している。
即ち、図5は、本発明の実施例1(左右独立クランプ方式の実施例1)が適用された場合の光電変換画素部11の構成例を示している。
図5に示されるように、光電変換画素部11においては、n+1行(nは1以上の整数値)からなるように、有効画素領域41は、左有効画素領域41Lと右有効画素領域41Rとに区分されている。さらに、左有効画素領域41Lのクランプ補正に対しては左水平OPB領域51Lが機能し、右有効画素領域41Rのクランプ補正に対しては右水平OPB領域51Rが機能する。左水平OPB領域51Lは行L0B0行乃至L0Bnにより、右水平OPB領域51Rは行R0B0乃至R0Bn行により、左有効画素領域41Lは行L0乃至Lnにより、右有効画素領域41Rは行R0乃至Rnにより、それぞれ構成されている。
図6は、図5の本発明の実施例1、即ち、左右独立クランプ制御方式の実施例1の動作のうち、点欠陥(画素欠陥)がある場合の動作例を説明する図である。
ステップS31において、クランプ補正部24は、左水平OPB領域51Lの行L0B0行乃至L0Bnのそれぞれを順次対象行として、対象行に含まれる画素のOPB値を平均化する(以下、ここまでの処理を平均化処理と称する)。クランプ補正部24は、その平均値を対象行のOPB値とし、対象行のOPB値の基準値(例えば零)に対する差分値△を求める。
ステップS32において、クランプ補正部24は、差分値△を、左有効画素領域41Lの次の行(対象行の次の行)のOPB値とする。
ただし、対象行の一部の画素が欠陥画素である場合、ステップS31の平均化処理としては、次のステップS31−aの処理が実行される。即ち、ステップS31−aにおいて、クランプ補正部24は、対象行に含まれる画素のうち、その欠陥画素を除いた画素のOPB値を平均化する。
また、対象行の全画素が欠陥画素である場合、ステップS31の平均化処理としては、次のステップS31−bの処理が実行される。即ち、ステップS31−bにおいて、クランプ補正部24は、対象行の代わりにその1つ前の行の正常なOPB値を、対象行のOPB値(平均値)として採用する。
また、ステップS41において、クランプ補正部24は、平均化処理を実行する。即ち、クランプ補正部24は、右水平OPB領域51Rの行R0B0行乃至R0Bnのそれぞれを順次対象行として、対象行に含まれる画素のOPB値を平均化する。クランプ補正部24は、その平均値を対象行のOPB値とし、対象行のOPB値の基準値(例えば零)に対する差分値△を求める。
ステップS42において、クランプ補正部24は、差分値△を、右有効画素領域41Rの次の行(対象行の次の行)のOPB値とする。
ただし、対象行の一部の画素が欠陥画素である場合、ステップS41の平均化処理としては、次のステップS41−aの処理が実行される。即ち、ステップS41−aにおいて、クランプ補正部24は、対象行に含まれる画素のうち、その欠陥画素を除いた画素のOPB値を平均化する。
また、対象行の全画素が欠陥画素である場合、ステップS41の平均化処理としては、次のステップS41−bの処理が実行される。即ち、ステップS41−bにおいて、クランプ補正部24は、対象行の代わりにその1つ前の行の正常なOPB値を、対象行のOPB値(平均値)として採用する。
以上のステップS31,S32(必要に応じて、S31−aまたはS31−b)の処理と、ステップS41,S42(必要に応じて、S41−aまたはS41−b)の処理とが、それぞれ最終行まで繰り返し実行されることになる。
この場合、水平走査の順番は特に限定されない。例えば、左水平OPB領域51L→左有効画素領域41L→右有効画素領域41R→右水平OPB領域51Rの順番を採用できる。また例えば、左水平OPB領域51L→右水平OPB領域51R→左有効画素領域41L→右有効画素領域41Rの順番を採用できる。なお、縦方向については全体が上から下に向けて走査される。
以上まとめると、本発明の実施例1に基づく水平クランプの補正手法は、次のような一連の処理よりなる。即ち、ステップS31において、クランプ補正部24は、同じ走査行(対象行)における左水平OPB領域51Lの行画素の差分値△を第1の平均値算出部(例えば図13の平均値算出部76L)により算出する。差分値△は、第1のデータ保持部(例えば図13のデータ保持部78L)内に保持される。次のそれぞれの行走査時に、ステップS32において、クランプ補正部24は、差分値△を第1のデータ保持部から呼び出して、減算部(例えば図2の加算部25)により自分自身から差分値を減じて、その値が零(もしくは零付近)となるようにクランプ補正する。クランプ補正部24は、その補正値を、左有効画素領域41Lの対応する行(対象行の次の行)の黒レベルの下限値とする。
一方、ステップS41において、クランプ補正部24は、同じ走査行(対象行)における右水平OPB領域51Rの行画素の差分値△を第2の平均値算出部(例えば図13の平均値算出部76R)により算出する。差分値△は、第2のデータ保持部(例えば図13のデータ保持部78R)内に保持される。次のそれぞれの行走査時に、ステップS42において、クランプ補正部24は、差分値△を第2のデータ保持部から呼び出して、減算部(例えば図13の減算部80)により自分自身を減じて、その値が零となるようにクランプ補正する。クランプ補正部24は、その補正値を、右有効画素領域41Rの対応する行(対象行の次の行)の黒レベルの下限値とする。
このように、本発明の実施例1(左右独立クランプ方式の実施例1)は、左右の有効画素領域(図6の例では、左有効画素領域41L,右有効画素領域41R)に対して、相互に独立してクランプ補正を実行できる。
また、ステップS31またはS41のうち平均化処理の過程で、左水平OPB領域51Lまたは右水平OPB領域51R中に画素欠陥がある場合には、画素のOPB値が異常値を示す。そこで、欠陥画素の値の影響を除去すべく、ステップS31−a若しくはS41−a、または、ステップS31−b若しくはS41−bが実行される。
例えば、対象行の画素の一部が欠陥画素である場合には、ステップS31−a若しくはS41−aの処理として、次のような処理が実行される。欠陥画素のOPB値を除去して対象行の画素のOPB値の総和をとり、この総和を、対象行中の全画素数から欠陥画素の数を減じた値で除算する処理が実行される。これにより、欠陥画素によるOPB平均値への影響が取り除かれる。
また例えば、対象行の画素全てが欠陥画素である場合には、ステップS31−b若しくはS41−bの処理として、次のような処理が実行される。対象行の平均化OPB値はクランプ処理に使用せず、代わりに、データ保持回路(メモリなど記憶作用を持つ回路であって、例えば図13のデータ保持部78L,78R)に保持されている直近の正常な平均化OPB値が、対象行のOPB値として採用されることになる。換言すると、例えば、データ保持部78Lの更新は行われない。これにより、次のステップS32またはS42の処理では、その値を使用して差分値が零になるように有効画素領域の行クランプ補正を行う、といった処理が実行されることになる。
図7は、本発明の実施例1のうちの、図6とは別の例であって、有効画素領域の水平走査線の数よりもOPB領域の走査線の数が多い場合の動作例を示している。この図7の例の場合には、有効画素領域の最初の1行目からクランプ補正が実行できる。
図7において、左水平OPB領域51Lおよび右水平OPB領域51Rは、有効画素領域41の水平走査線の数より多い走査線数を有している。
ステップS51において、左水平OPB領域51Lの各行のそれぞれを順次対象行として、対象行に含まれる画素のOPB値を平均化する処理、即ち、平均化処理を実行する。クランプ補正部24は、その平均値を対象行のOPB値とし、対象行のOPB値の基準値(例えば零)に対する差分値△を求める。
ステップS52において、クランプ補正部24は、差分値△を、左有効画素領域41Lの次の行(対象行の次の行)のOPB値とする。
ただし、対象行の一部の画素が欠陥画素である場合、ステップS51の平均化処理としては、次のステップS51−aの処理が実行される。即ち、ステップS51−aにおいて、クランプ補正部24は、対象行に含まれる画素のうち、その欠陥画素を除いた画素のOPB値を平均化する。
また、対象行の全画素が欠陥画素である場合、ステップS51の平均化処理としては、次のステップS51−bの処理が実行される。即ち、ステップS51−bにおいて、クランプ補正部24は、対象行の代わりにその1つ前の行の正常なOPB値を、対象行のOPB値(平均値)として採用する。
また、ステップS61において、クランプ補正部24は、平均化処理を実行する。即ち、クランプ補正部24は、右水平OPB領域51Rの各行のそれぞれを順次対象行として、対象行に含まれる画素のOPB値を平均化する。クランプ補正部24は、その平均値を対象行のOPB値とし、対象行のOPB値の基準値(例えば零)に対する差分値△を求める。
ステップS62において、クランプ補正部24は、差分値△を、右有効画素領域41Rの次の行(対象行の次の行)のOPB値とする。
ただし、対象行の一部の画素が欠陥画素である場合、ステップS61の平均化処理としては、次のステップS61−aの処理が実行される。即ち、ステップS61−aにおいて、クランプ補正部24は、対象行に含まれる画素のうち、その欠陥画素を除いた画素のOPB値を平均化する。
また、対象行の全画素が欠陥画素である場合、ステップS61のうちの平均化処理としては、次のステップS61−bの処理が実行される。即ち、ステップS61−bにおいて、クランプ補正部24は、対象行の代わりにその1つ前の行の正常なOPB値を、対象行のOPB値(平均値)として採用する。
以上のステップS51,S52(必要に応じて、S51−aまたはS51−b)の処理と、ステップS61,S62(必要に応じて、S61−aまたはS61−b)の処理とが、それぞれ最終行まで繰り返し実行されることになる。
図8は、本発明に係るデータ処理の一例であって、水平クランプ補正に伴うデータ処理が時間と共にどのように行われるのかを示すタイミングチャートである。
具体的には、図8の例では、水平方向の走査順序は、左水平OPB領域51L→左有効画素領域41L→右有効画素領域41R→右水平OPB領域51Rとされている。即ち、図8において、期間Aは左水平OPB走査期間を、期間Bは左有効画素領域走査期間を、期間Cは右有効画素領域走査期間を、期間Dは右水平OPB走査期間を、それぞれ示している。
図8における「平均化処理」が、図6の例では、ステップS31(必要に応じて、ステップS31−a,S31−b含む)や、ステップS41(必要に応じて、ステップS41−a,S41−b含む)の処理に相当する。また、図7の例では、ステップS51(必要に応じて、ステップS51−a,S51−b含む)や、ステップS61(必要に応じて、ステップS61−a,S61−b含む)の処理が、図8における「平均化処理」に相当する。
また、図8における「読出し」→「減算」→「データ出力」までの一連の処理が、図6の例ではステップS32,S42の処理に相当し、図7の例ではステップS52,S62の処理に相当する。
図8の例の場合、左水平OPB領域51Lの「平均化処理時間+データ保持時間」と右水平OPB領域51Rの「平均化処理時間+データ保持時間」は等しくならないが、垂直走査時間は水平走査時間に比べてゆっくりしているため、上述のクランプ補正が可能になる。
図8の例の場合、期間Aの平均化処理と期間Dの平均化処理は時系列で重なり合うことなく別時間で実行される。このため、それぞれの平均化処理後のデータをすぐにデータ保持回路に保持するようにしておけば、期間Aの平均化処理と期間Dの平均化処理は同じ平均化処理回路が使用できる。よって、後述する図12に示される平均値算出部76のように平均化処理回路は一個で済む。
図9は、本発明に係るデータ処理の図8とは異なる例であって、水平クランプ補正に伴うデータ処理が時間と共にどのように行われるのかを示すタイミングチャートである。
具体的には、図9の例では、水平方向の走査順序は、左水平OPB領域51L→右水平OPB領域51R→左有効画素領域41L→右有効画素領域41Rとされている。即ち、図9において、期間Aは左水平OPB走査期間を、期間Dは右水平OPB走査期間を、期間Bは左有効画素領域走査期間を、期間Cは右有効画素領域走査期間を、それぞれ示している。
図9の例の場合は、左水平OPB領域51Lの「平均化処理時間+データ保持時間」と右水平OPB領域51Rの「平均化処理時間+データ保持時間」は等しくなる。
図9の例の場合も、期間Aの平均化処理と期間Dの平均化処理は時系列で重なり合うことなく別時間で実行される。このため、それぞれの平均化処理後のデータをすぐにデータ保持回路に保持するようにしておけば、期間Aの平均化処理と期間Dの平均化処理は同じ平均化処理回路が使用できる。よって、後述する図12に示される平均値算出部76のように平均化処理回路は一個で済む。
図10は、本発明に係るデータ処理の図8や図9とは異なる例であって、水平クランプ補正に伴うデータ処理が時間と共にどのように行われるのかを示すタイミングチャートである。
具体的には、図10の例では、水平方向の走査順序は、左水平OPB領域51L→左有効画素領域41L→右水平OPB領域51R→右有効画素領域41Rとされている。即ち、図10において、期間Aは左水平OPB走査期間を、期間Bは左有効画素領域走査期間を、期間Dは右水平OPB走査期間を、期間Cは右有効画素領域走査期間を、それぞれ示している。
図10の例の場合、左水平OPB領域51Lの「平均化処理時間+データ保持時間」と右水平OPB領域51Rの「平均化処理時間+データ保持時間」は等しくなる。
上述した図8乃至図10の例からわかるように、左OPB領域51L,右OPB領域51Rの行画素の平均化処理が、次の走査時に対応する左有効画素領域41L,右有効画素領域41Rの行のクランプ補正の前に終了していれば良い。
図11は、本発明のOPBクランプ補正処理手法、即ち、図6,図7に対応する手法であって、点欠陥(画素欠陥)がある場合の手法により実現される処理(以下、クランプ補正処理と称する)の一例を示すフローチャートである。
図11の例では、左水平OPB領域51Lと左有効画素領域41Lとに関する処理のみが図示されている。もっとも、右水平OPB領域51Rと右有効画素領域41Rとに関する処理については、図11に示される「左」という記述を「右」という記述に変更するだけでよい。
ステップS81において、クランプ補正部24は、j=0に設定する。ステップS82において、クランプ補正部24は、i=1に設定する。ここで、iは、左水平OPB領域51Lの対象行における水平方向の画素位置を示し、1乃至m(mは2以上の整数値)の整数値を示している。jは、左水平OPB領域51Lの対象行の行番号を示し、0乃至n-1(nは1以上の整数値)の整数値を示している。
ステップS83において、クランプ補正部24は、基準値(例えば零)を取得する。
ステップS84において、クランプ補正部24は、左水平OPB領域51Lの画素(i,j)のOPB値β(i,j)を取得する。
ステップS85において、クランプ補正部24は、左水平OPB領域51Lの画素OPBの総計値Σβ(i,j)(Σβ(i-1,j)+β(i,j))を算出する。
ステップS86において、クランプ補正部24は、iを1だけインクリメントする(i=i+1)。
ステップS87において、クランプ補正部24は、i>mであるか否かを判定する。
iがm以下である場合、ステップS87の処理でNOであると判定されて、処理はステップS84に戻され、それ以降の処理が繰り返される。
即ち、ステップS84乃至87のループ処理が繰り返されることで、左水平OPB領域51Lの対象行に含まれる各画素(i,j)のOPB値β(i,j)(iは1乃至m)が取得され、その総計値Σβ(i,j)(iは1乃至m)が算出される。なお、ステップS84乃至87のループ処理においても、各画素(i,j)が欠陥画素であるか否かも判断される。
最終的な総計値Σβ(i,j)(iは1乃至m)が算出された後のステップS86の処理でi=m+1にされると、i>mになるので、次のステップS87の処理でYESであると判定されて、処理はステップS88に進む。
ステップS88において、クランプ補正部24は、欠陥画素が存在したか否かを判定する。
左水平OPB領域51Lの対象行(j番目の行)に欠陥画素が存在しなかった場合、ステップS88の処理でNOであると判定されて、処理はステップS89に進む。
ステップS89において、クランプ補正部24は、対象行のOPB値β(i,j)(iは1乃至m)を平均化する。即ち、クランプ補正部24は、Σβ(i,j)/mを演算する。
ステップS90において、クランプ補正部24は、対象行の平均値、即ちいまの場合、欠陥画素が無いので{Σβ(i,j)/m}を対象行のOPB値とする。
ステップS91において、クランプ補正部24は、対象行のOPB値の基準値(例えば零)に対する差分値△iを求める。
ステップS92において、クランプ補正部24は、差分値△iを保持回路に保持する。なお、ステップS92の処理として、欠陥画素が無い場合の差分値△iのみを保持するようにしてもよい。
ステップS93において、クランプ補正部24は、保持回路から最新の差分値△(いまの場合、直前のステップS92の処理で保持された差分値△i)を読み出し、差分値△を、左有効画素領域41Lの次の行(対象行の次の行であるj+1番目の行)のOPB値とする。
ステップS94において、クランプ補正部24は、jを1だけインクリメントする(j=j+1)。
ステップS95において、クランプ補正部24は、j≧nであるか否かを判定する。
処理対象行の番号jがn未満の場合、処理はステップS82に戻され、それ以降の処理が繰り返される。
以上、j番目の対象行の左水平OPB領域51Lに欠陥画素がない場合の一連の処理について説明した。
これに対して、j番目の対象行の左水平OPB領域51Lに欠陥画素が存在する場合の一連の処理は次のようになる。
即ち、左水平OPB領域51Lの対象行(j番目の行)に欠陥画素が存在した場合、ステップS88の処理でYESであると判定されて、処理はステップS96に進む。
ステップS96において、クランプ補正部24は、欠陥画素は、左水平OPB領域51Lの対象行(j番目の行)の全ての画素であるか否かを判定する。
左水平OPB領域51Lの対象行(j番目の行)の一部(全てではない)の画素に欠陥画素が存在した場合、ステップS96においてNOであると判定されて、処理はステップS97に進む。
ステップS97において、クランプ補正部24は、対象行に含まれる画素のうち、その欠陥画素を除いた画素のOPB値を平均化する。即ち、クランプ補正部24は、{Σβ(i,j)−Σβb(p/m)/m−k}を演算する。ここで、kは、欠陥画素の個数(k<m)を示している。また、Σβb(p,j)は、欠陥画素のOPB値βb(p,j)の総計値(pは1乃至k)を示している。その後、処理はステップS90に進む。
ステップS90において、クランプ補正部24は、対象行の平均値、即ち、いまの場合、欠陥画素が一部にあるので{Σβ(i,j)−Σβb(p,j)/m−k}を対象行のOPB値とする。
ステップS91において、クランプ補正部24は、対象行のOPB値の基準値(例えば零)に対する差分値△iを求める。
ステップS92において、クランプ補正部24は、差分値△iを保持回路に保持する。なお、上述の如く、いまの場合、欠陥画素が一部にあるので、ステップS92の処理を省略してもよい。
ステップS93において、クランプ補正部24は、保持回路から最新の差分値△を読み出し、差分値△を、左有効画素領域41Lの次の行(対象行の次の行であるj+1番目の行)のOPB値とする。いまの場合、ステップS92が省略されなければ、直前のステップS92の処理で保持された差分値△iが、最新の差分値△となる。これに対して、ステップS92が省略された場合には、欠陥画素が存在しない直前の番号i−q(qは1以上の整数値)の行が対象行とされたときのステップS92の処理で保持された差分値△i−qが、最新の差分値△となる。
以上、j番目の対象行の左水平OPB領域51Lに欠陥画素が一部存在する場合の一連の処理について説明した。
これに対して、j番目の対象行の左水平OPB領域51Lの画素の全てが欠陥画素である場合の一連の処理は次のようになる。
即ち、左水平OPB領域51Lの対象行(j番目の行)の全ての画素が欠陥画素であった場合、ステップS96においてYESであると判定されて、処理はステップS93に進む。
ステップS93において、クランプ補正部24は、保持回路から最新の差分値△を読み出し、差分値△を、左有効画素領域41Lの次の行(対象行の次の行であるj+1番目の行)のOPB値とする。いまの場合、欠陥画素が存在しない直前の番号i−q(qは1以上の整数値)の行が対象行とされたときのステップS92の処理で保持された差分値△i−qが、最新の差分値△となる。
なお、上述の如く、図11には、クランプ補正処理について、左水平OPB領域51Lと左有効画素領域41Lとに関する処理についてのみ図示されている。よって、j番目の対象行について、左水平OPB領域51Lと左有効画素領域41Lとに関するステップS81乃至S97の処理が実行される前後に、右水平OPB領域51Rと右有効画素領域41Rとに関するステップS81乃至S97に相当する処理(「左」を「右」に変えた処理)が実行される点注意する。
また、ステップ92の処理では、保持回路を2つ設けて、一方の保持回路には、欠陥画素の有無に関わらず、全ての差分値△iを保持させ、他方の保持回路には、欠陥画素がない場合または欠陥画素が一部にある場合にのみ、差分値△iを保持させるようにしてもよい。即ち、この場合、他方の保持回路に、最新の差分値△が保持されることになる。
図12は、図2,図8,図9に関係する水平OPBによるクランプ補正部24の構成例を示している。
図12の例のクランプ補正部24には、1つのデータ入力部71と1つのデータ出力部81が設けられている。また、クランプ補正部24には2つの減算部74,80、スイッチ77,79、フィルタ75、平均値算出部76、制御信号提供部72、基準値提供部73および、左右のデータ保持部78L,78Rが設けられている。
スイッチ77,79は、左OPBデータと右OPBデータの(左右の差分値△)の入出力の切替を行う。フィルタ75は、左水平OPB領域51Lまたは右水平OPB領域51Rの1行(対象行)内の画素信号の異常値を除去する。即ち、欠陥画素のOPB値が除去される。平均値算出部76は、左水平OPB領域51Lまたは右水平OPB領域51Rの対象行について正常な画素のOPB値の平均値(正確には、基準値提供部73からの基準値が減算された差分値△の平均値)を算出する。データ保持部78Lは、左水平OPB領域51LのOPBデータ(左の差分値△)を保持する。データ保持部78Rは、右水平OPB領域51RのOPBデータ(右の差分値△)を保持する。なお、データ保持部78L,78Rの保持量は、対象行分に限定されず、例えば1行前の結果も保持される。減算部74は、入力部71に入力されたデータから、基準値提供部73により提供された基準値を減算して出力する。
図12の例のクランプ補正部24においては、時系列で異なる時刻に入力部71により順次入力された左右のOPB画素信号の値(OPB値)が、減算部74により基準値分だけが減じられ、その結果得られる対象行の各値のうち、フィルタ75により、予め定められた値よりも大きな異常値(欠陥画素のOPB値)が除去される。左水平OPB領域51Lまたは右水平OPB領域51Rの1行(対象行)分の画素データ(異常値を除く)の平均化処理が実行される。平均値算出部76の出力のうち、左水平OPB領域51LのOPBデータ(左の差分値△)は、制御信号提供部72からの制御信号に基づいて、スイッチ77を介してデータ保持部78Lに保持される。平均値算出部76の出力のうち、右水平OPB領域51RのOPBデータ(右の差分値△)は、制御信号提供部72からの制御信号に基づいて、スイッチ77を介してデータ保持部78Rに保持される。
制御信号提供部72からの制御信号に基づいて、左水平OPB領域51LのOPBデータ(左の差分値△)がデータ保持部78Lより呼び出され、スイッチ79を介して減算部80に入力される。その値が再び減算部80に入力され、左の差分値△を相殺(自分自身を減算)して零とし、その減算結果が常に零となるように出力部81から出力される。これにより、左有効画素領域41Lの各行に対する黒レベルの下限値が定められる。
一方、制御信号提供部72からの制御信号に基づいて、右水平OPB領域51RのOPBデータ(右の差分値△)がデータ保持部78Rより呼び出され、スイッチ79を介して減算部80に入力される。その値が再び減算部80に入力され、右の差分値△を相殺(自分自身を減算)して零とし、その減算結果が常に零となるように出力部81から出力される。これにより、右有効画素領域41Rの各行に対する黒レベルの下限値が定められる。
このような一連の処理が左有効画素領域41L,右有効画素領域41Rに対して、j=0乃至nまで順次繰り返し実行されると、クランプ補正処理が終了する。
なお、図12に示されるブロック(信号処理部)は左有効画素領域41L,右有効画素領域41Rに対する補正処理が実行される部分であるが、この処理過程は仮想的に定義される更に多くの有効画素領域に対しても適用されることは云うまでもない。
図13は、図2,図10に関係する水平OPBによるクランプ補正回路の構成例を示している。
図13の例のクランプ補正部24には、1つのデータ入力部71と1つのデータ出力部81が設けられている。また、クランプ補正部24には2つの減算部74,80、スイッチ77,79、左右のフィルタ75L,75R、左右の平均値算出部76L,76R、制御信号提供部72、基準値提供部73および、左右のデータ保持部78L,78Rが設けられている。
スイッチ77,79は、左OPBデータと右OPBデータの(左右の差分値△)の入出力の切替を行う。
フィルタ75Lは、左水平OPB領域51Lの1行(対象行)内の画素信号の異常値を除去する。即ち、欠陥画素のOPB値が除去される。平均値算出部76Lは、左水平OPB領域51Lの対象行について正常な画素のOPB値の平均値(正確には、基準値提供部73からの基準値が減算された差分値△の平均値)を算出する。データ保持部78Lは、左水平OPB領域51LのOPBデータ(左の差分値△)を保持する。なお、データ保持部78Lの保持量は、対象行分に限定されず、例えば1行前の結果も保持される。
フィルタ75Rは、右水平OPB領域51Rの1行(対象行)内の画素信号の異常値を除去する。即ち、欠陥画素のOPB値が除去される。平均値算出部76Rは、右水平OPB領域51Rの対象行について正常な画素のOPB値の平均値(正確には、基準値提供部73からの基準値が減算された差分値△の平均値)を算出する。データ保持部78Rは、右水平OPB領域51RのOPBデータ(右の差分値△)を保持する。なお、データ保持部78Rの保持量は、対象行分に限定されず、例えば1行前の結果も保持される。
減算部74は、入力部71に入力されたデータから、基準値提供部73により提供された基準値を減算して出力する。減算部80は、スイッチ79の出力値自身を減算し、零にして出力する。
図13の例のクランプ補正部24においては、時系列で異なる時刻に入力部71により順次入力された左右のOPB画素信号の値(OPB値)が、減算部74により基準値分だけが減じられ、その結果得られる対象行の各値のうち、左水平OPB領域51Lについての各値は、制御信号提供部72からの制御信号に基づいて、フィルタ75Lに入力される。フィルタ75Lにより、予め定められた値よりも大きな異常値(欠陥画素のOPB値)が除去される。左水平OPB領域51Lの1行(対象行)分の画素データ(異常値を除く)の平均化処理が実行される。平均値算出部76Lの出力のうち、左水平OPB領域51LのOPBデータ(左の差分値△)はデータ保持部78Lに保持される。制御信号提供部72からの制御信号に基づいて、左水平OPB領域51LのOPBデータ(左の差分値△)がデータ保持部78Lより呼び出され、スイッチ79を介して減算部80に入力される。その値が再び減算部80に入力され、左の差分値△を相殺(自分自身を減算)して零とし、その減算結果が常に零となるように出力部81から出力される。これにより、左有効画素領域41Lの各行に対する黒レベルの下限値が定められる。
一方、減算部74の出力のうち、右水平OPB領域51Rについての各値は、制御信号提供部72からの制御信号に基づいて、フィルタ75Rに入力される。フィルタ75Rにより、予め定められた値よりも大きな異常値(欠陥画素のOPB値)が除去される。右水平OPB領域51Rの1行(対象行)分の画素データ(異常値を除く)の平均化処理が実行される。平均値算出部76Rの出力のうち、右水平OPB領域51RのOPBデータ(右の差分値△)はデータ保持部78Rに保持される。制御信号提供部72からの制御信号に基づいて、右水平OPB領域51RのOPBデータ(右の差分値△)がデータ保持部78Rより呼び出され、スイッチ79を介して減算部80に入力される。その値が再び減算部80に入力され、左の差分値△を相殺(自分自身を減算)して零とし、その減算結果が常に零となるように出力部81から出力される。これにより、右有効画素領域41Rの各行に対する黒レベルの下限値が定められる。
即ち、図13の例のクランプ補正部24には、フィルタ75L,平均値算出部76L,データ保持部78Lから構成される左水平OPBデータ処理部91Lと、フィルタ75R,平均値算出部76R,データ保持部78Rから構成される右水平OPBデータ処理部91Rとが設けられている。そして、制御信号提供部72からの制御信号に基づいて、スイッチ77,79が切り替えられ、その結果、左水平OPBデータ処理部91Lからの左の差分値△(左水平OPB領域51LのOPBデータ)と、右水平OPBデータ処理部91Rからの右の差分値△(右水平OPB領域51RのOPBデータ)とが交互に出力され、減算部80に入力される。減算部80の動作は上述したとおりである。
このような一連の処理が左有効画素領域41L,右有効画素領域41Rに対して、j=0乃至nまで順次繰り返し実行されると、クランプ補正処理が終了する。
なお、図12に示されるブロック(信号処理部)は左有効画素領域41L,右有効画素領域41Rに対する補正処理が実行される部分であるが、この処理過程は仮想的に定義される更に多くの有効画素領域に対しても適用されることは云うまでもない。
図14は、本発明の実施例2として、垂直/水平併用左右独立OPBクランプ制御方式の実施例を採用した場合における、その実施例2の動作を説明する図である。
図14の例の光電変換画素部11においては、有効画素領域41は、左有効画素領域41Lと右有効画素領域41Rとに区分されている。さらに、左有効画素領域41Lのクランプ補正のうち、粗い調整時の処理に対しては、左垂直OPB領域101Lが機能し、細かな調整時の処理に対しては、左水平OPB領域51Lが機能する。同様に、右有効画素領域41Rのクランプ補正のうち、粗い調整時の処理に対しては、右垂直OPB領域101Rが機能し、細かな調整時の処理に対しては、右水平OPB領域51Rが機能する。
左有効画素領域41Lのクランプ補正の粗い調整時には、ステップS401,S402の処理が実行される。
ステップS401において、クランプ補正部24は、左垂直OPB領域101Lに含まれる全画素のOPB値を平均化する処理、即ち、平均化処理を実行する。クランプ補正部24は、その平均値を左垂直OPB領域101LのOPB値とし、左垂直OPB領域101LのOPB値の基準値(例えば零)に対する差分値△を求める。
ステップS402において、クランプ補正部24は、差分値△を、左有効画素領域41Lの画素全体のOPB値とする。
左有効画素領域41Lのクランプ補正の細かな調整時には、ステップS201(必要に応じてステップS201−a,S201−b),S202の処理が実行される。ステップS201(必要に応じてステップS201−a,S201−b),S202は、図6のステップS31(必要に応じてステップS31−a,S31−b),S32、または、図7のステップS51(必要に応じてステップS51−a,S51−b),S52の処理と基本的に同様の処理である。
また、右有効画素領域41Rのクランプ補正の粗い調整時には、ステップS501,S502の処理が実行される。
ステップS501において、クランプ補正部24は、右垂直OPB領域101Rに含まれる全画素のOPB値を平均化する処理、即ち、平均化処理を実行する。クランプ補正部24は、その平均値を右垂直OPB領域101RのOPB値とし、右垂直OPB領域101RのOPB値の基準値(例えば零)に対する差分値△を求める。
ステップS402において、クランプ補正部24は、差分値△を、右有効画素領域41Rの画素全体のOPB値とする。
右有効画素領域41Rのクランプ補正の細かな調整時には、ステップS301(必要に応じてステップS301−a,S301−b),S302の処理が実行される。ステップS301(必要に応じてステップS301−a,S301−b),S302は、図6のステップS41(必要に応じてステップS41−a,S41−b),S42、または、図7のステップS61(必要に応じてステップS61−a,S61−b),S62の処理と基本的に同様の処理である。
図15は、本発明の実施例3として、左右上下4領域1/2上下読出し左右独立OPBクランプ制御方式の実施例を採用した場合における、その実施例3の動作を説明する図である。
図15の例の光電変換画素部11においては、上の領域[I]と下の領域 [II]とに区分されており、領域[I],[II]のそれぞれが、図14と同様の構成を有している。
即ち、図15の例の光電変換画素部11においては、有効画素領域41の領域[I]は、左有効画素領域41L−Iと右有効画素領域41R−Iとに区分されている。さらに、左有効画素領域41L−Iのクランプ補正のうち、粗い調整時の処理に対しては、左垂直OPB領域101L−Iが機能し、細かな調整時の処理に対しては、左水平OPB領域51L−Iが機能する。同様に、右有効画素領域41R−Iのクランプ補正のうち、粗い調整時の処理に対しては、右垂直OPB領域101R−Iが機能し、細かな調整時の処理に対しては、右水平OPB領域51R−Iが機能する。
また、有効画素領域41の領域[II]は、左有効画素領域41L−IIと右有効画素領域41R−IIとに区分されている。さらに、左有効画素領域41L−IIのクランプ補正のうち、粗い調整時の処理に対しては、左垂直OPB領域101L−IIが機能し、細かな調整時の処理に対しては、左水平OPB領域51L−IIが機能する。同様に、右有効画素領域41R−IIのクランプ補正のうち、粗い調整時の処理に対しては、右垂直OPB領域101R−IIが機能し、細かな調整時の処理に対しては、右水平OPB領域51R−IIが機能する。
即ち、領域[I],[II]のそれぞれに対して、図14を用いて説明したクランプ補正処理と同様な処理が施される。
このように、図15の実施例3では、実施例1や実施例2よりも更に大きな有効画素領域41を持つCMOSイメージセンサに対して、OPBクランプ補正を行うことを可能にしている。有効画素領域41は上下左右に4領域に区別されている。その各々に対して、独立にOPBクランプ補正(クランプ補正処理)を実行するために有効画素領域41の上下左右に区別されたOPB領域が配置されている。
左垂直OPB領域101L−Iおよび右垂直OPB領域101R−I、並びに、左水平OPB領域51L−Iおよび右水平OPB領域51R−Iは、上部左右の有効画素領域41L−I,41R−Iの各列各行に対して、図14を用いて説明したOPBクランプ補正(クランプ補正処理)と同様の補正を行う。また、左垂直OPB領域101L−IIおよび右垂直OPB領域101R−II、並びに、左水平OPB領域51L−IIおよび右水平OPB領域51R−IIは、上部左右の有効画素領域41L−II,41R−IIの各列各行に対して、図14を用いて説明したOPBクランプ補正(クランプ補正処理)と同様の補正を行う。
以上説明した本発明は、次のような第1乃至第5の効果を奏することが可能になる。
左右独立クランプ補正方式は左右に配置される水平OPB領域の行画素数が有効画素領域の行画素数よりもかなり少ない。このため、画素欠陥画ある場合でも水平OPB領域の行画素のOPB値の平均化処理が次の行走査までに完了できる。よって、行毎のOPB補正処理が可能となる。加えてCCDイメージセンサのように有効画素領域の個々の画素信号に対して演算処理を実行することなくクランプ補正ができるため、短時間で精度良くクランプ補正が実行できる。かかる効果が第1の効果である。
第2の効果とは、粗い調整と細かな調整を併用した左右独立にオフセットの制御が実行できる、という効果である。
第3の効果とは、有効画素領域からの信号出力は多チャネル(出力が2個以上)化する必要がなく、1チャネルで良いため、全体の回路構成が簡単になる、という効果である。
第4の効果とは、走査順序を変えてOPB領域の方が対応する有効画素領域よりも先に走査するようにすれば、OPB値の平均化処理などの信号処理が簡単になる、という効果である。
第5の効果とは、上記の思想をさらに発展させ、更に大きな面積の有効画素領域からなるイメージセンサ(映画用70mm)に対して仮想的4領域を定義することにより、個々の有効画素領域をそれぞれ独立にオフセット補正することが可能になる、という効果である。
ところで、本発明が適用された固体撮像素子(イメージセンサ)は、撮影機能を有する様々な電子機器のカメラ部分に適用可能である。電子機器としては例えば、デジタルスチルカメラやデジタルビデオカメラ、ノート型パーソナルコンピュータ、携帯電話機などがある。このような電子機器に入力された、若しくは、電子機器内で生成した映像信号を画像若しくは映像を撮影するあらゆる分野の電子機器のカメラ部分に、本発明が適用された固体撮像素子に適用することが可能である。以下この様なカメラが適用された電子機器の例を示す。
例えば、本発明は、電子機器の一例であるデジタルスチルカメラに適用できる。このデジタルスチルカメラは、撮像レンズ、表示部、コントロールスイッチ、メニュースイッチ、シャッター等に加えて、本発明が適用された固体撮像素子を含むように作製される。
例えば、本発明は、電子機器の一例であるノート型パーソナルコンピュータに適用できる。このノート型パーソナルコンピュータにおいて、その本体には文字等を入力するとき操作されるキーボードを含み、その本体カバーにはカメラ部分を含む。このノート型パーソナルコンピュータは、本発明が適用された固体撮像素子をカメラ部分に用いることにより作製される。
例えば、本発明は、電子機器の一例である携帯端末装置に適用できる。この携帯端末装置は、上部筺体と下部筺体とを有している。この携帯端末装置の状態としては、それらの2つの筺体が開いた状態と、閉じた状態とが存在する。この携帯端末装置は、上述した上側筐体と下側筐体との他、連結部(ここではヒンジ部)、ディスプレイ、サブディスプレイ、ピクチャーライト、カメラ部分等を含み、本発明が適用された固体撮像素子をカメラ部分に用いることにより作製される。
例えば、本発明は、電子機器の一例であるデジタルビデオカメラに適用可能である。デジタルビデオカメラは、本体部、前方を向いた側面に被写体撮影用のレンズ、撮影時のスタート/ストップスイッチ、モニタに加えて、本発明が適用された固体撮像素子を含むように作製される。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。