発明の詳細な説明
この発明は、そのジオメトリがエリアにわたってランダムに規定され得る関心領域に含まれる画素のみを選択的にダウンロードすることを可能にする、CMOS画像センサからの画素の読出しを可能にする。このアプローチは、所望の画素のみをダウンロードし、このため読出手順を加速することによって、より高い効率という利点を有する。これは、関心領域が、画素エリアの複数の全体行である矩形形状を有さなければならなかった先行技術とは対照的である。
これを達成するために、この発明は、ROIプログラミング回路系およびROI読出回路系、ROIプログラミングおよびROI読出しのための対応する方法、ならびに、ROIプログラミングおよびROI読出しを使用する機器を提供する。
特に、センサアレイ内の関心領域ROIを構成するための回路系は、ROI表示を格納するためのROIストレージ手段730と、ROI表示を画素のROIストレージ手段に書込むための制御手段830とを含む。したがって、ROI画素と非ROI画素との区別を構成することが可能である。
ROIという用語は、センサアレイから読出されるべき1個以上の画素を含むエリアを指す。センサアレイによって取り込まれた画像全体のうちの一部のみが関連している、すなわち情報または新情報を含んでいる用途にとって、ROIを規定することは有利である。特に、この発明は、速度を制限する要因が、画像センサから画素データをダウンロードするために必要とされる時間である、レーザ三角測量に基づく3次元(3D)撮像などの用途に特に関連している。先行技術で存在するような矩形の関心領域に対する制限は、それが莫大な量の無用の画素をダウンロードすることを暗示するため、極めて非効率的になる。対照的に、この発明は、任意の形状を有する1つまたは複数の関心領域を規定すること、および、これらの画素のみをダウンロードすることを可能にして、エリア全体および電力消費を最適化しつつ、センサ速度を最大化することを可能にする。
ROI表示は、ある画素がセンサアレイの関心領域に属するか否かを指定する。この表示は、センサアレイの読出手順で使用されてもよい。
したがって、センサアレイから関心領域を読出すための読出回路系は、画素センサによって検出された信号を画素ごとに格納するための信号ストレージと、加えて、ROI表示を格納するための上述のようなROIストレージ手段とを含む。読出回路系はさらに、読出されるべき少なくとも1個の画素を選択するための選択回路(行選択回路)を含み、選択回路は、画素が関心領域に属することを示すROI表示を有する前記画素のみを読出すように構成されている。読出回路系は最後に、選択された画素の信号ストレージを読出すための、すなわち、感知された画素の値を読むための読出回路を含む。
なお、行と列とは交換されてもよい。たとえば、選択は列ベースで行なわれてもよく、読出は行ベースで行なわれてもよい。
この発明に基づくと、各々が1つまたはいくつかの画素を含む1つまたは複数の関心領域を、画素の各列について規定することが可能である。関心領域の位置は、任意のやり方で列により変化してもよい。これを達成するために、この発明の一実施形態によれば、画素設計、関心領域をプログラミングするプロセス、および関心領域を読出すためのプロセスが、以下に説明されるように提供される。しかしながら、この発明のいくつかの実施形態は、関心領域の完全なスケーラビリティを必ずしも使用しない、ということに留意されたい。たとえば、この発明の一実施形態によれば、列ごとのROIのサイズが、画像の全列について等しい。以下に示すように、そのような構成は依然として、三角測量などのいくつかの用途にとって十分なスケーラビリティを提供しており、また、完全なフレキシビリティよりも実現がより簡単である。
先行技術およびこの発明に従った、画素エリアからの画素の読出しの比較を、図4に示す。
図4は、46×46個の画素というサイズを有する画素エリア400Aの一例を示す。画素エリアは、関連情報410(「情報を有する画素」)を含む。先行技術によれば、関連情報410は画素エリア全体にわたって垂直に広がっているため、関心領域420は、センサアレイの画素エリア400A全体によって形成される。ダウンロードされた画素400Bによって示すように、ダウンロードプロセスは1行ずつ行なわれ、46行すべてが順次ダウンロードされることになっている。これは、ダウンロードのための総時間46×Trowに対応する。ここで、Trowは、単一のライン(行)をダウンロードする(読出す)ことにより費やされた時間間隔を表わす。この例からわかるように、先行技術に従って作動すると、関連する画素410の数は3×44であり、それは132個の画素に等しい。しかしながら、先行技術の関心領域のスケーラビリティは画素エリアの行全体に制限されているため、この特定の例では、すべての行をダウンロードしなければならない。具体的には、132個の関連する画素に加えて、さらに46×46−132=1984個の画素を無駄にダウンロードしなければならない。
図4の右側部分は、この発明の一実施形態に従った関心領域の画素のダウンロードを示す。特に、画素エリア400Cは、画素エリア400Aと同じ、46×46個の画素というサイズを有する。関連情報を含む所望の画素も、以前の例における画素410に対応しており、図面では、3本の対角線に対応する3ヶ所に斜線および影をつけることによって区別されている。ダウンロード手順を加速するために、および無用の画素をすべてダウンロードすることを避けるために、各列i=1、2、…、46は、対応するそれぞれの関心領域ROI#i=ROI#1、ROI#2、…ROI#44を規定しており、それらのうちの最初の3つを参照番号431、432および433によって標示する。この例での列ROI431、432、433は各々、3個の画素を含む。したがって、関心領域の個々の部分を規定し、それらを順次ダウンロードすることが可能である。特に、第1の部分は、列内におけるその位置にかかわらず、列の各々における第1の選択された画素によって形成される。このため、第1の部分は、ROIの画素410の3本の対角線のうちの第1の対角線によって、すなわち、列の各々においてROIに属する第1の画素によって形成される。
このように、画素エリア400Cの下に見られるような関心領域を読むための時間、エリアにおけるすべての選択された画素のダウンロードの時間は、3×Trow未満まで減少し、それは、132個の画素をダウンロードするために必要な時間に等しい。これは、先行技術と比較した、センサの最大フレームレートの改善度が、46:3=15.3よりも大きいことを表わす。したがって、この特定の例では、15.3倍加速することが可能である。なお、この「改善度」は、センサの行の数に比例して増大する。たとえば、機械映像用途では、行カウントが約1000であるセンサを使用することが非常に典型的である。3個の画素分の厚さを有する対角線といった同様の関心領域が仮定される場合、1024行を有する画素エリアについての改善度は、先行技術の速度のほぼ1024:3=341.3倍となるであろう。
なお、列内における「第1の」または「第2の」画素といった用語は、センサアレイの上部から1番目または2番目の画素を指しており、典型的には、センサアレイの上部は、ダウンロード(読出し)の開始によって定められる。しかしながら、上述のように、列と行との構造は交換されてもよく、その場合、ある行における第1のROI画素は、典型的には左側である読出しの開始から1番目のROI画素となるであろう。しかしながら、アレイの底部または右側から読出しを開始するセンサ制御も想像できることを述べておく。また、上部、底部、左、右という用語は相対的である。しかしながら、通常それらは、取り込まれるべき像の位置に対するセンサアレイを指す。
この発明の上述の実施形態に従った読出制御が第1の画素行についての読出信号を発すると、第1の画素行は、各列iについての関心領域ROI#iにおける第1の画素を含み、第2の画素行は、各列iについての関心領域ROI#iにおける第2の画素を含む、というようになっている。このプロセスは、すべての列の関心領域ROI#iにおける最後の画素が読出されるまで、同様に続く。読出しの結果を、図4の右側底部に示す。それは、各々44個の画素を有する3本の線からなる。
関心領域のみを読むことによってこの改善を達成するために、この発明の一実施形態によれば、修正された画素構造が提供される。特に、図5は、先行技術で通常採用されるような、5つのトランジスタ(5T)とピンドフォトダイオードとに基づく画素アーキテクチャの簡略化された概略回路図を示す。画素回路500は、ピンドフォトダイオード(pinned photodiode:PPD)と、5つの金属酸化膜半導体(metal oxide semi-conductor:MOS)トランジスタと、浮動拡散(floating diffusion:FD)ノードとを含む。画素は、制御信号AB、TRF、RSTおよびSELによって駆動される。たとえば、信号TRFは転送パルスを、信号RSTはリセットパルスを、パルスSELは選択パルスを画素に供給する。
画素は、この例ではピンドフォトダイオードであるフォトセンサPPDなどのそれぞれの画素受光素子に光が達するのに応答して、センサアレイによって取り込まれた画像の1個の画素を表わす電荷を生成して収集する。露出、すなわち画像取得時間(感知時間)の間、ピンドフォトダイオードに当たる光が吸収されて自由電子を生成し、それらはピンドフォトダイオードで収集される。
露出時間の終了間際に、ピンドフォトダイオードにおける光生成電子は浮動拡散ノードFDに転送され、浮動拡散キャパシタ端で電圧に変換される。適切な画素を選択し、選択された画素に、特に浮動ノードFDに格納された電荷を「ダウンロード」するために、画素に格納された電荷が、信号SELによって供給された(行)選択トランジスタを使用することによって読出されてもよい。
浮動ノードFDを予め充電し、フォトセンサPPDを枯渇させるために、トランジスタは導電状態に置かれる。積分期間中にフォトセンサPPDが電荷を蓄積できるようにするために、信号TRFを用いて、対応するトランジスタが非導電状態に置かれる。積分期間中、或る画素における強い光が隣接する画素に達することにより生じる電荷の過剰を回避するために、信号ABが対応するトランジスタに印加される。積分がいったん終了すると、FDに格納された信号は1行ずつ読出される。1行を読出した後で、そのような行の画素はリセットされ、リセット信号RSTも読出され、元の信号から減じられる。これは、リセットノイズのシステマティック部分の除去を可能にする。上述のプロセスは、画像のすべての行について繰り返される。
したがって、画素信号に対応する電圧は、画素が読出されるまで、浮動拡散ノード(たとえば、キャパシタ)に格納されたままとなる。読出すプロセスでは、浮動拡散ノードにおける電圧が、画素内ソースフォロワを介して、および、データ列ラインと読出チャネル105の一部である電流源ICSとに画素を接続する選択スイッチSELを用いた選択の制御下で、ダウンロードされる。画素を動作させるための上述の制御信号AB、TRF、RSTおよびSELは、行選択回路101によって生成される。
図6は、図5を参照して上に例示されたように画素を使用して行なわれ得る、露出および1行ずつの読出しの一例を示す時間図を示す。特に、図6は、センサエリアのすべての画素において画像取得が同時に行なわれるグローバルシャッターセンサを仮定している。これは、「露出時間」と標示され、並行して行なわれる46行である行#i(i=1、2、…、46)によって示される。しかしながら、画素を読出すプロセスは依然として、それぞれの行におけるすべての画素についてSEL制御信号(選択信号)を起動することにより、1行ごとに行なわれる。このプロセスは、センサにおいてプログラミングされた関心領域に含まれるすべての行について繰り返される。したがって、図6からわかるように、「センサ読出(r/o)時間」は46×Trowである。
読出時間を短くするために、上述のように、ストレージ手段が、画素が関心領域に属するかどうかという情報を格納するために、画素ごとに提供される。そして、ROIストレージをプログラミングするための回路系および方法、ならびに、ROIを読出すための回路系および方法が提供される。
図7は、この発明の一実施形態に従った画素回路の一例を示す。図5を参照して上述された画素500に加えて、図7の回路は、選択信号SELの印加の修正された制御を含む。
図5を参照して説明した例では、行選択回路によって生成された選択信号は、ある行における画素がすべて並行して読まれるように、それらの全画素についての行選択トランジスタに直接印加される。すなわち、拡散ノードを閉じる、そこに格納された電圧は、各列ライン(OUT)の底部の(一方端の)電流源ICSを使用して、読出チャネルが並列にダウンロードされる。図7の例は基本的に同様に作動するが、加えて、行選択トランジスタSWへの選択信号の印加が、追加の論理モジュール710によって制御される。このモジュールは、選択信号が、画素対1ビットメモリレジスタに格納されたフラグによって識別される関心領域に属する画素にのみ印加されるように設計されている。メモリは、各画素について個々に設定される。したがって、あらゆるランダムな形状を有する任意の関心領域を規定し、そのような関心領域に含まれる画素のみをダウンロードすることが可能である。
詳細には、図7の例示的な制御モジュール710は、1ビットメモリ730と、シフトレジスタ720と、ANDゲート740とを含む。
ANDゲート740は、選択信号SELと、シフトレジスタ720からの出力信号とを、入力として有する。シフトレジスタ720からの出力信号は、画素が関心領域に属するか否かを示す。したがって、選択トランジスタTselは、選択信号がアクティブである場合、および画素が関心領域に属する場合にのみ、オンに切替えられる。これは、関心領域に属する画素のみの読出しを可能にする。
シフトレジスタ720は、列における前の画素から信号を受信するための入力(In1)と、1ビットメモリ730からの入力(In2)とを有する。シフトレジスタ720はさらに、クロック信号CLK_S用の入力と、クロック信号CLK_R用の入力とを有する。クロック信号CLK_Sは、次の画素へのROI表示値のシフトを制御する(シフトについてのタイミングを提供する)。クロック信号CLK_Rは、入力In2における1ビットメモリの内容のサンプリングを制御する(サンプリングについてのタイミングを提供する)。これは、アレイのすべての画素についてグローバルに行なわれる。また、シフトレジスタ720は、画素がROIに属する場合には第1の値を出力し、画素がROIに属さない場合には第1の値とは異なる第2の値を出力する、出力(out)を含む。第1の値は論理「1」、第2の値は論理「0」であってもよく、またはその逆であってもよい。出力された信号は、上述のようにANDゲート740に入力されてもよい。加えて、それは、列における次の画素に出力されてもよい。
1ビットメモリ730は、書込データライン840からの信号を1ビットメモリ730に書込むための、書込データラインからの入力を有する。また、1ビットメモリ730は、メモリへの書込みを制御する(書込みについてのタイミングを提供する)ROI_write信号を入力するための入力を有する。1ビットメモリ730はさらに、格納された値をシフトレジスタに出力するための(シフトレジスタによって読出すための)、シフトレジスタに接続された出力を有する。
以下に、図7を参照して説明した画素回路の動作を説明する。
なお、画素アーキテクチャを使用した、またはこの発明に従って規定された画像センサにおける画像取得は、先行技術と同様に作動してもよい。さらに、この発明は、たとえばピンドフォトダイオードもしくはN/PまたはP/Nタイプを有する画素といったトポロジにかかわらず、ならびに、3トランジスタ(3T)、4トランジスタ(4T)、および5トランジスタ(5T)などといったトランジスタの数にかかわらず、あらゆるCMOS画素に適用可能である。画素アーキテクチャに関し、この発明によれば、その残りのアーキテクチャに関係なく、選択制御手段が画素に追加される。
画像センサを読出すための動作は、2つのステップ、すなわち、
・関心領域の構成(プログラミング)と、
・関心領域読出しとを含む。
関心領域の規定の第1のステップは、関心領域のプログラミング、または関心領域の設定(規定)とも呼ばれてもよい。
図7を見てわかるように、この実施形態におけるROIストレージ手段は、画素ごとに提供され、制御手段からROI書込信号(ROI_write)を受信するための入力とROI構成信号を受信するための入力(In)とを有する、1ビットメモリ730である。制御手段710は、ROI書込信号(ROI_write)を生成するための選択回路820と、ROI構成信号を生成するためのROIプログラミング回路830とを含む。ROIストレージ手段730は、ROI書込信号(ROI_write)を受信すると、ROI構成信号値を格納する。このように関心領域は「プログラミングされる」。
この発明の一実施形態に従った関心領域プログラミングの段階的な一例を、図8に示す。この例では、関心領域は、各列について読出されるべき第1の画素の1ビットメモリ730に論理値「1」を書込むことによってプログラミングされる。したがって、画像センサの各列について別々に特定された関心領域における第1の画素の1ビットメモリ730に、論理値「1」が書込まれる。次に、画像センサの各対応列における画素の残りについて、1ビットメモリ730は論理値「0」に設定される。
この説明では、関心領域に含まれる画素は、それらを画像アレイの残りの画素と区別するために、「関心領域画素」または「ROI画素」と表記される。同様に、センサ列について、最初に読出され、通常(ROI内で)最も小さい行インデックスを有するセンサ行に属するROI画素を識別するために、「第1の関心領域画素」または「第1のROI画素」という用語が採用されるであろう。
関心領域のセットアップ(プログラミング)は、初期センサ構成段階で有利に行なわれてもよく、関心領域の規定を更新する必要があるたびに、たとえばモニタリングされる物体またはその場所を変更した後に繰り返されてもよい。
ROIプログラミングは好ましくは1行ずつ順次行なわれ、少なくとも1個のROI画素を含む画像エリアにおける第1の行で始まり、少なくとも1個のROI画素を含む画像エリアの最後の行で終わる。
図8の部分(a)は、センサエリアにおける画素の1ビットメモリが空である(もしくは、もはや有効でない、または再プログラミングされるように指示されたいくつかの値を含む)、ROIプログラミングの前の初期状態を示す。この例では、センサアレイは、関心領域が3個の画素分の幅の対角線である、10×10個の画素アレイである。
画素エリア810は、画像センサの画素を表わす。対角線における影付きの画素は、関連情報を含み、このため関心領域を形成する、画像センサの画素を表わす。行選択回路820は行を選択し、それらの画素にそれが書込まれることになっている。ROIプログラミング回路830は、データラインベクトルを画素エリア列に書込むように構成されている。特に、ROIプログラミング回路830は、論理値をそれぞれの画素の1ビットメモリ730に書込むように構成されている。
図8の部分(b)は、ROIプログラミングの第1のステップを示す。したがって、ROI書込回路830を、ROIの第1の画像センサ行である行#1におけるROI画素を含む列と接続する、センサアレイの列方向のラインである「write_data_line」に、論理値「1」が書込まれる。なお、「行#1」という用語は、関心領域の少なくとも1個の画素を含む第1の行を表わす。行#1に先行する他の行については、すなわち、関心領域に属さない、画像センサの始めの行については、初期書込シーケンスは単に、これらの行におけるすべての画素のメモリ素子に論理値「0」を書込むように機能する。デフォルトにより、すべてのメモリ素子が、グローバル初期化手順といった別の異なる手順を使用することによって論理値「0」に初期化された場合、そのような書込みは必要ないであろう。しかしながら、いかなる場合も、第1の初期化ステップを行なうことが好ましい。次に、「書込データライン」のすべてのビットに「0」を書込み、すべての行についてROI_write信号を同時に起動することにより、初期化が行なわれる。一般に、「行#i」(iは1からNまでの整数、Nは関心領域に含まれる行の数)という用語は、単数または複数の関心領域内のi番目の行を表わす。各列の行#1の画素に書込まれた論理値「1」とは別に、右側にあるデータラインの列ラインの残りは、図8の例における関心領域の第1の行に対応する論理値「0」に設定される。書込み用のシーケンスは、図8の部分(b)における右側にあるデータラインの横に示すデータラインベクトル840によって示される。
図8の部分(c)は、ROIプログラミングの第2のステップを示す。行選択回路820は、行#1における画素のために、信号「ROI_write」841という信号を起動する。この信号は、ROIが書込まれることになっている1ビットメモリの画素へのラインを選択する。したがって、行#1における画素のそれぞれの1ビットメモリ730は、それらの対応する書込データライン840にある論理値を格納する。この場合、行#1のROI画素については「1」、行#1の残りの画素については「0」である、そのような論理値は、行#1の各列について、1ビットメモリ730の1ビットメモリブロック(out)端子の出力で設定され、新しいROI書込(プログラミング)サイクルが行なわれるまで設定されたままとなる。これは、図8の部分(c)において、その行におけるROIの形状に対応する論理値を有する、画像アレイセンサ1ビットメモリフィールドの第1のライン行#1によって示される。
図8の部分(d)は、関心領域プログラミングの第3のステップを示す。したがって、列ラインである「書込データライン」840における論理値は、行#2(ROIに属する第1の画素を含む、画像センサ内の第2の行)における第1のROI画素を含む列が論理値「1」を有し、行#2の残りの列が論理値「0」を有するように更新される。
図8の部分(e)は、行選択回路820が、第2の行である行#2のために信号「ROI_write」842を起動する、ROIプログラミングの第4のステップを示す。したがって、第2の行における画素のすべての1ビットメモリブロックは、書込データライン840からのそれらのそれぞれの値を、それらのそれぞれの1ビットメモリ730にラッチする。
次に、行#1および行#2について説明された上述のステップが、第1のROI画素を含む最後の画素行が書込まれるまで、1行ずつ順次繰り返される。この最終段階を、図8の部分(f)に示す。これは、行選択回路820が、信号「ROI_write」843によって、最後の行である行#10への書込みを起動するステップ20に対応する。したがって、書込データライン840からの値が、第1のROI画素を含む最後の行に、特に、最後の行を形成する画素の1ビットメモリに書込まれる。この時点で、ROIプログラミングプロセスは終了する。図8の部分(f)における、結果として生じるプログラミングされたアレイ810を見てわかるように、この例におけるROIは、各列において、関心領域に属する画素を含む第1の行を特定することによって規定される。この特定は、対応する画素の1ビットメモリを論理値「1」に設定し、残りの列画素を(それらがROIに属していても)「0」に設定することにより、行なわれる。
要約すると、この発明によれば、センサアレイ810の画素内の関心領域ROIを構成するための方法が提供される。上述のように、ROIは、センサアレイから読出されるべき1個以上の画素を含む。この方法は、ROI書込信号を生成し、生成されたROI書込信号を画素に提供するステップと、ROI書込信号を受信すると、ある画素がセンサアレイの関心領域の第1のROI画素であるか否かというROI表示を、画素のROIストレージ手段730に書込むステップとを含む。
なお、この実施形態によれば、図8の部分(f)の、結果として生じるプログラミングされたROIは、それぞれのセンサアレイ画素のROIストレージの内容を示す。特に、各列において、ROIに属する第1の画素は、その画素がROIに属するという表示を格納するROIストレージを有する。この場合、ROIに属するものの、ROIに属する列において1番目ではない画素を含む、他のすべてのセンサアレイ画素は、「0」に設定される。
以下に、画像センサからの関心領域画素の例示的な読出しを説明する。読出プロセスを、図9に段階的に示す。ROIプログラミングが完了すると、すべてのセンサ列の第1のROI画素は、それらのそれぞれの1ビットメモリ素子に格納された論理値「1」を有し、一方、画素の残りのメモリは、論理値「0」を有するはずである。ROIのこの規定で、センサ読出プロセスが始まり、それに従って、関心領域に属する画素のみが読出される。初期状態を、図9の部分(a)に示す。それは、図8の部分(f)に示す状態に対応しているが、画像アレイにおけるいくつかの画素の残りの1ビットメモリ730におけるゼロが示されていない。行選択回路920は、行選択信号SELを含む読出信号(r/o信号)を生成する。読出回路910は、関心領域の位置で、画像センサにおける画素の値を読出す。
図9の部分(b)は、関心領域から画像アレイの画素値を読出す第1のステップを示す。1ビットメモリブロックの出力(730の「out」)でのデータが、シフトレジスタ720の入力「In2」によってサンプリングされる。これは、それぞれの画素のシフトレジスタブロック720のIn2入力を制御するグローバル信号CLK_Rにパルスを印加した後で、アレイにおけるすべての画素について並行して行なわれる。図9の部分(b)からわかるように、すべての行が行選択回路920によって選択される。これに応じて、論理値「1」で印付けられた画素アレイ900の対角線上の画素の値に対応する関心領域の第1の行である行#1が、読出される。
図9の部分(c)に示す第2のステップでは、関心領域の第1のラインである行#1が読まれ、行選択回路920は、画素を読出すために使用される通常の信号を起動するが、読出プロセスが1行ずつ行なわれる先行技術とは異なり、この場合、それらはアレイ全体に印加される。図7に示す画素ごとの論理により、FDノードに格納された画素電圧のダウンロードを起動するSEL制御信号は、図8のステップ20に対応するROIプログラミングプロセスの終わりにそれらの1ビットメモリに論理値「1」を格納した第1の関心領域画素にのみ達する。このプロセスは、第1のROI画素の、それらの行数に関するダウンロードをトリガする。
次のステップとして、CLK_Sパルスが、すべての画素のシフトレジスタ720に並行して印加される。これは、第1の関心領域画素の素子730の1ビットメモリに格納された論理「1」の、第1の行の下の行における画素の1ビット素子へのシフトを生成する。また、これに代えて、シフトは、第1のROI画素の上の行における画素へと行なわれてもよい。これを、図9の部分(c)に示す。これら2つのステップは、第2の行である行#2が読出回路910によって読まれる図9の部分(d)と、シフトレジスタが値を関心領域の次の行にシフトする図9の部分(e)とに示すように繰り返される。図9の部分(f)は、関心領域ROI#1、ROI#2、ROI#3の3つのライン(行)がすべて読まれ、読出プロセスが終了する最終段階を示す。
図10は、先行技術に従った、およびこの発明の上述の実施形態に従った、関心領域を読出すために必要な時間を比較する。特に、図10は、センサ露出およびROI読出しの時間図を比較する。従来技術では、読出しは1行ずつ局所的に行なわれるが、この発明では、読出制御信号も、露出信号と同様にグローバルであってもよい。CLK_S信号の助けにより、画素は選択的にダウンロードされる。図10の下部を見てわかるように、関心領域についての読出時間は、3行のダウンロードに対応する。図10の上部に示す先行技術に対する残り時間は、時間節約1010を表わす。
したがって、この発明の上述の実施形態に従った、センサアレイから関心領域を読出すための読出回路系は、センサによって(上述の例ではPPDによって)検出された信号を画素ごとに格納するための信号ストレージ手段(上述の例ではFDノードに対応)を含む。それはさらに、ある画素がセンサアレイの列の第1の画素かどうかというROI表示を格納するためのROIストレージ手段を含む。さらに、選択回路は、読出されるべき少なくとも1個の画素を選択するように機能し、選択回路は、関心領域に属する画素のみを読出すように構成されており、読出回路は、選択された画素の信号ストレージ手段を読出すように機能する。
なお、上述の例ではROIが各列からの少なくとも1個の画素を含むが、これは必ずしもあてはまるとは限らない。ROIは任意の形状を有していてもよく、いくつかの列は必ずしもROIに属する必要はない。これを達成するために、ROIに属さないと判断された列は、読出しおよび/またはROIプログラミングプロセスについてオフに切替えられ(除外され)てもよい。なお、この例におけるROIストレージ手段は、関心領域に属するセンサアレイのそれぞれの列内で1番目の画素のみについて、論理「1」を格納する。図8および図9の例は、各列で3個の画素と同じ幅を有するROIを示す。特に三角測量などの用途については、すべての列で同じ幅を有するROIが一般的である。これは、各列における第1のROI画素のROIストレージメモリを読出すこと、および次に、像全体にとって共通であり、シフトレジスタが各列における画素の必要数を読出すことを確実にするカウンタを採用することのみを必要とする、ROIプログラミングおよび読出回路の特に有利な実現化例を可能にする。
また、これに代えて、この発明の別の実施形態によれば、カウンタは列ごとに提供されてもよい。これは、ROI形状の任意の構成を可能にする。
さらに、これに代えて、ROIストレージ手段は、ROIに属する画素のうち、第1の画素だけでなくすべての画素について、論理「1」を格納してもよい。そのような場合、図7に示すようなアーキテクチャは、シフトレジスタを必要としないであろう。また、そのアーキテクチャは、選択トランジスタを制御するROIストレージ手段により、図5のアーキテクチャとは基本的に異なるであろう。しかしながら、そのような実現化例は、読出しのかなり高度の複雑性および動作の減速をもたらすであろう、ということに留意されたい。したがって、列における第1のROI画素の格納、および(列ごとまたは画像ごとの)カウンタの提供は、好ましい解決策である。
図15は、(列ごとの画素数での)ROIサイズが列により変化し得る、上述の実施形態に従ったプログラミングされたROIを示す。そのような場合、ROIプログラミングは、図8を参照して上述したようなROIプログラミングに非常に類似したやり方で作動する。なぜなら、それぞれの列ごとの第1のROI画素は同じままであるためである。しかしながら、画素が関心領域における列内の第1の画素かどうかについての情報をROIストレージ手段730、1130、1340、1440に格納することに加えて、列ごとのカウント値も適切な値に設定される。図15の例では、そのような値は、第1、第9および第10の列については値0(または、カウントの開始に依存して1)、第2および第6〜第8の列については値1(または2)、第3〜第5の列については値2(または3)であろう。これは、列ごとにカウンタを1つ含むROIサイズ回路1610に入力された「1233322211」という値によって示される。なお、この例では、ROIサイズ回路は別に描かれているが、実際の実現化例では、それはROIプログラミング回路および/またはROI読出回路の一部であってもよい。
これに応じて、図16は、図15の例に従ってプログラミングされたような可変サイズのROIの読出しを概略的に示す。この読出プロセスも、図9を参照して説明したような読出プロセスと類似している。しかしながら、読出速度は、ROIの列中のROIの最大垂直サイズによって制限される。したがって、最大サイズ列ROIのすべての行において情報画素を含んでいない他の列の部分に、ダミー画素が挿入される(読出しは行なわれないが、時間は費やされる)。図16は、読出しの第5のステップを示す。特に、すべての行が選択され、そして、すべての列が実際に3つのROI行をすべて含むとは限らない場合でさえ、ROIを読出すのに3×Trowかかる。図16を見てわかるように、各列のROIにおける第1の画素はすでに読出され、読出回路の最も幅広い底部ラインに対応している。ROI値は、各列のROIにおける第2の画素にシフトされたが、これは、列のROIに2行以上存在することをカウンタが示す列でのみ行なわれる。次に、第2のROI行が読まれ、読出回路における2番目に幅広い行(下から2番目)に対応している。次に、第2のROI行画素のROI値が、(カウンタに基づいて決定された)3個の画素分の幅を有するROIを有する列についてシフトされ、3個の画素のみを含むROIの最後の行が読まれた。
シフトレジスタは、画素ライン内の前記画素に先行する別の画素のROIストレージ手段から信号を受信するための入力In1と、ROIストレージ手段から信号を受信するための入力In2と、受信された信号を、画素ライン内の前記画素に続く別の画素のROIストレージと、選択回路とに渡すための出力「out」とを有利に含む。選択回路は、シフトレジスタから入力された信号に従って画素を選択するように構成されている。
要約すると、この発明は、任意の形状の関心領域から画素を選択的にダウンロードすることを可能にする、修正された画素アーキテクチャと、関心領域をプログラミングするためのプロセスと、すべての関心領域を読むための手順とを提供する。なお、修正された画素アーキテクチャは、グローバルシャッター画素(5T画素)にとってだけでなく、他のあらゆる画素タイプにとっても好適である。たとえば、露出および読出しが双方とも1行ずつ順次行なわれるローリングシャッターセンサについては、この発明は利点をあまり提供しない。しかしながら、関心領域は通常、グローバルシャッター高速センサでのみ採用されている。この発明は、3次元映像システムで使用されるレーザ三角測量センサにとって特に好適である。しかしながら、それは、他のあらゆる用途にも適用可能である。
この発明は、列ごとに単一の(連続する)関心領域を読出すことに限定されない。列ごとに複数の関心領域が規定されてもよい。
これを達成するために、図11は画素アーキテクチャの一例を示し、図12は、その左上部分に、対応する関心領域プログラミングの結果を示し、その右側部分に、2つの関心領域からの画素の読出しを示す。
図11の画素アーキテクチャは、シフトレジスタ1120が「バイパス」と表記された第2の入力を含む点で、図7に示す画素アーキテクチャとは異なっている。2つの関心領域間に配置され、それらのいずれにも属していない、各列における画素についてのROIプログラミング中、この「バイパス」入力は論理値「1」に設定される。シフトレジスタ1120がバイパスによって構成されている場合、その入力In1で受信されたあらゆる値は、その出力「out」に直ちに転送される。このように、関心領域読出中に、バイパスモードにあるシフトレジスタ1120が論理値「1」を受信すると、それはその値を次のシフトレジスタ(列における次の画素のシフトレジスタ)に自動的に渡し、このプロセスは、それが列におけるバイパスモードではない次のシフトレジスタに達するまで続く。この時点で、関心領域読出しは、通常のやり方で続く。
これを図12に示す。「B」で印付けられた画素は、バイパスされた画素である。このアーキテクチャにおける信号「バイパス」は、バイパスデータライン1110によって運ばれる。この信号は、現在の画素をバイパスすべきか否かを合図するために論理値「1」または「0」を担持するパルスからなっていてもよい。図の右下部分を見てわかるように、このように、単一の列に関心領域がより多く存在する場合でさえ、読出しは、これらの関心領域についてのみ行なわれる。
なお、バイパスをサポートし、ひいては像の列ごとに複数のROIをサポートするために、現在の画素について、その現在の画素がバイパス画素か否かを示すバイパス表示を格納するためのストレージが存在するべきである。そのようなバイパスストレージは、ROIストレージと同様に、画素をバイパスすべきか否かを格納するための1ビットメモリであってもよい。図11に示すアーキテクチャは、そのようなバイパスビットがシフトレジスタ自体の内部のバイパスストレージに格納される、ということを仮定している。
しかしながら、この発明はそのような実施形態に限定されず、別個のストレージ手段が提供されてもよい。
また、これに代えて、ROIストレージ手段は、「0」および「1」とは別に、バイパス画素を示す「B」の値も区別可能であってもよい。これはたとえば、ROIストレージ手段に、画素ごとに1ビットより高い容量、たとえば画素ごとに2ビットの容量を提供することによって実現され得る。
要約すると、バイパス機能を実現するために、回路系のシフトレジスタは、バイパス信号を受信するための入力を含み、シフトレジスタは、予め規定された値を有するバイパス信号を受信すると、前の画素のROIストレージ手段からの信号を出力に転送するように構成されている。
ROI表示に関し、それは好ましくは1ビットの長さであり、関心領域に属するセンサアレイの列における第1の画素については第1の値を取り、前記列における他のすべての画素については第1の値とは異なる値を取る。しかしながら、この発明はこれに限定されず、表示は、たとえばバイパスを合図するためのより多くのビットを含んでいてもよい。
ROIプログラミングおよび読出回路系は、さらなる機器の一部であってもよい。たとえば、複数の画素を含むセンサアレイ行列に接続可能である上述のような読出回路系を含み、さらに、センサアレイ行列内に関心領域ROIを構成するための上述のような回路系を含む、機器が提供されてもよい。そのような機器は、センサアレイ行列の画素をROIを構成するための回路系に接続する書込データラインと、センサアレイ行列の画素を選択回路に接続する選択ラインと、センサアレイ行列の画素を読出回路系に接続する信号データラインとをさらに含む、画像センサであってもよい。
上述のような画像センサは、三角測量用機器の一部であってもよい。次に、そのような三角測量用機器は、加えて、物体320を照射するための光源312と、照射された物体320から反射された光を感知するための画像センサ316とを含む。なお、ここでの「光」という用語は必ずしも可視光ではなく、一般的な電磁感知波であってもよい。
また、読出回路は、別個の集積回路として実現されてもよい。ROIプログラミング回路の一部も、別個の集積回路として実現されてもよい。しかしながら、ROIプログラミング回路系および読出回路系はまた、共通の集積回路で実現されてもよい。さらに、共通のセンサチップが、読出しおよびプログラミング回路系を、ならびに、信号ラインと選択ラインとプログラミングラインとを含むセンサも実現してもよい。
図9を参照して上述したように、センサアレイ100から関心領域を読出すための方法は、読出されるべき少なくとも1個の画素を選択することを有利に含み、選択回路は、画素ごとに格納され、前記画素がセンサアレイ100の関心領域に属するか否かを示すROI表示の予め規定された値を有する画素のみを選択するように構成されており、この方法はさらに、選択された画素から信号を読出すことを有利に含む。
特に、読出方法は、各列から、関心領域に属する第1の画素を第1に読出すことと、読出された画素のROI表示値を、それらのそれぞれの列において読出された画素に続くそれぞれの画素にシフトして、関心領域を再規定することと、読出された各画素について、それらのそれぞれの列において読出された画素に先行するそれぞれの画素のROI表示値を格納することと、各列から、再規定された関心領域に属する第1の画素を第2に読出すこととを含んでいてもよい。言い換えれば、シフト、格納、および読出しは、列における関心領域のさらなる行の各々について繰り返されてもよい。
さらに、有利には、読出方法はさらに、バイパス信号を検出することと、予め規定された値を有するバイパス信号を検出すると、前の画素のROIストレージ手段からの信号を出力に転送することとを含んでいてもよい。
特に、センサアレイを読出すための方法は、予め規定された露出時間の期間、センサアレイのすべての画素で同時に感知することと、センサアレイ列の各々において関心領域に属するi番目の画素をそれぞれ含む関心領域の部分を順次読出すこととを含んでいてもよい。ここで、iは1〜Kまでの整数であり、Kは関心領域に属する列における画素数を表わす整数である(図9のROIについては、K=3)。
なお、図11に示した画素関連回路系も、この発明について限定的ではない例示的な回路系に過ぎない。上述のように、この発明は、例示された5Tアーキテクチャだけでなく、画素のあらゆるアーキテクチャに適用可能である。したがって、ROI構成および読出しを可能にするために、中心的な要素は、ROIに属する列における第1の画素の表示を格納するためのROIストレージ手段と、列ごとまたは像ごとのROIの垂直サイズを示すカウントとを提供することである。しかしながら、アーキテクチャはそれ自体、変わり得る。
たとえば、図11を参照して説明した例示的な回路系は、画素を1行ずつ読出すのに好適である。しかしながら、読出チャネルに接続された行がいくつか存在する実現化例では、それは好適ではない。
図13は、複数のROIについての図11の回路系の修正を含む、別の例示的な画素関連回路系を示す。
一般に、図13の回路系は、図11の回路系と同様に作動する。修正は、以下を含む。シフトレジスタは、バイパス画素の状態を格納するための1ビットを含む。次に、そのようなビットの出力は否定され、画素に存在する論理ANDゲートの第3の入力として接続される。これにより、バイパスされた画素は、あるバイパスされた画素についてSEL信号が設定された場合でさえ、出力ラインに接続されなくなる。これに応じて、図13のシフトレジスタ1320は、図11のシフトレジスタ1120に加えて、「bypass_out」というバイパス出力を含み、それから出力された信号はさらに否定ゲート1350に入力され、その出力はANDゲート1340の入力に提供される。否定ゲート1350は、その入力信号の否定されたバージョンを出力する。ANDゲート1340は3つの入力を有しており、3つの信号の論理「and」動作の結果を出力する。したがって、選択トランジスタTselは、選択信号がアクティブであり、かつ、画素がROIに属し、画素がバイパスされないことをシフトレジスタ出力が示す場合にのみ、開かれる(オンに切替えられる)。
しかしながら、画素関連回路系の他の(より単純でもある)アーキテクチャが可能であることに留意されたい。たとえば、画素のANDゲート740は取除かれてもよく、シフトレジスタ720の出力(out)が選択トランジスタTselに直接接続されてもよい。これを図14に示す。
図14における回路系は、図7を参照して上述した概念と同様に作動する。画素を読出す場合のみANDゲート740が使用されるため、ROIのプログラミングは同じである。しかしながら、1ビットメモリの内容をシフトレジスタ1420に転送するためにCLK_R信号が起動されると、読出プロセスが始まる。なぜなら、シフトレジスタ1420の出力(ROIの第1の画素については、論理「1」)が、各ROIの第1の画素の選択トランジスタを起動するためである。次に、図7、図11および図13に示す他のアーキテクチャと同様に、CLK_S信号をパルス化することにより、各列の第1の画素が下の画素(同じ列における次の画素)に送られて、列ラインからの第1の画素の切り離し、および次の画素の接続をもたらす。当業者には明らかであるように、信号CLK_S(シフトクロック信号)は、各列における現在のROI行の画素のROI値が次の画素にシフトされることになっている場合には、ある値を有し、他の場合には、別の値を有する。CLK_R信号(読出クロック信号)は、同様の態様で作動する。このため、図14のアーキテクチャによれば、シフトレジスタ1420のみが、選択、すなわち選択トランジスタTselの起動を制御する。
図14のアーキテクチャを使用することにより、他の上述のアーキテクチャによって達成されるのと同じそれぞれの結果が得られるが、画素ごとに1つの論理ゲートが省かれて、より単純でより安価な実現を可能にする。
この効果は、各ROIの第1の画素(その1ビットメモリ)のみが論理「1」を含む場合に可能である。なぜなら、他の場合、出力ラインでいくつかの行が短絡されるためである。
関心領域(ROI)をプログラミングする方法を、図17のフロー図に示す。特に第1のステップとして、センサエリアにおける各画素についてのROIストレージ手段が、第2の値(論理「0」など)に初期化される(1710)。第2の値は、ある画素がROIに属することを示す(または、いくつかの実施形態では、ある画素が、列などの画素ライン内のROIに属する第1の画素であることを示す)第1の値(論理「1」など)とは異なっている。次に、センサエリアにおける行の各々について(行がもうなくなるまで)、書込データラインに、行における画素のROIストレージに書込むべき値が充填される(1720)。その後、書込データラインの値は、行における画素のそれぞれのROIストレージに書込まれる(1730)。
同様に、図18は、ROIのみが読まれる読出手順を示す。特に、(センサエリア全体ではなく)関心領域の各行について、ROIの行が読まれる(1810)。これは、各列においてROIに属する第1の画素を読出すことによって行なわれる。次に、カウント値に従って、ROIがシフトされ(1820)、各列内のROIに属する第2の画素が読出され、ROI全体が読出されるまで順次続く。
この発明の一局面によれば、センサアレイの画素内の関心領域ROIを構成するための回路系であって、ROIは、センサアレイから読出されるべき1個以上の画素を含む、回路系が提供される。回路系は、ある画素がセンサアレイの関心領域に属することを示すROI表示を格納するためのROIストレージ手段と、ROI表示を画素のROIストレージ手段に書込むための制御手段とを含む。
この発明の有利な一実施形態によれば、ROIストレージ手段は、画素ごとに提供され、制御手段からROI書込信号を受信するための入力とROI構成信号を受信するための入力とを有する、1ビットメモリである。
制御手段は好ましくは、ROI書込信号を生成するための選択回路と、ROI構成信号を生成するためのROIプログラミング回路とを含み、ROIストレージ手段は、ROI書込信号を受信すると、ROI構成信号値を格納するように構成され、ROIストレージ手段は、画素が画素ライン内のROIに属する第1の画素である場合には、第1の値を格納し、その他の場合には、第1の値とは異なる第2の値を格納するように構成されている。
この発明の別の局面によれば、センサアレイから、1個以上の画素(106)を含む関心領域ROIを読出すための読出回路系が提供される。読出回路系は、センサによって検出された信号を画素ごとに格納するための信号ストレージ手段と、ある画素がセンサアレイの関心領域に属することを示すROI表示を格納するためのROIストレージ手段と、読出されるべき少なくとも1個の画素を選択するための選択回路とを含み、選択回路は、画素が関心領域に属することを示すROI表示を有する前記画素のみを選択するように構成されており、読出回路系はさらに、選択された画素の信号ストレージ手段を読出すための読出回路を含む。
この発明の有利な一実施形態によれば、読出回路系はシフトレジスタを含み、シフトレジスタは、画素ライン内の前記画素に先行する別の画素のROIストレージ手段から信号を受信するための入力と、ROIストレージ手段から信号を受信するための入力と、受信された信号を、画素ライン内の前記画素に続く別の画素のROIストレージと、選択回路とにシフトするための出力とを含み、選択回路は、シフトレジスタから入力された信号に従って画素を選択するように構成されており、ROIストレージ手段は、画素が画素ライン内のROIに属する第1の画素である場合には、第1の値を格納し、その他の場合には、第1の値とは異なる第2の値を格納するように構成されている。シフトレジスタは、予め定められた回数、シフトを行なうように構成されている。
好ましくは、回路系はさらに、読出中にある画素がスキップされるべきであることを、予め規定された値によって示す、前記画素についてのバイパス表示を格納するためのバイパスストレージ手段を含み、シフトレジスタは、バイパス表示に対応するバイパス信号を受信するための入力を含み、シフトレジスタは、予め規定された値を有するバイパス信号を受信すると、前の画素のROIストレージ手段からの信号を出力に転送するように構成されている。
有利には、ROI表示は1ビットの長さであり、ROI表示は、関心領域に属するセンサアレイの列における第1の画素については第1の値を取り、前記列における他のすべての画素については第1の値とは異なる値を取る。回路系は、ROIに属する前記列における画素数のインジケータを格納するためのカウンタストレージを含む。
たとえば、回路系のカウンタストレージは、センサエリアの各列について別々に、またはすべての列について共通して、ROIに属する列における画素数のインジケータを格納するように適合されている。
この発明の一局面によれば、複数の画素を含むセンサアレイ行列に接続可能である上述のような読出回路系と、センサアレイ行列内に関心領域ROIを構成するための上述のような回路系と、センサアレイ行列の画素をROIを構成するための回路系に接続する書込データラインと、センサアレイ行列の画素を選択回路に接続する選択ラインと、センサアレイ行列の画素を読出回路系に接続する信号データラインとを含む、画像感知のための機器が提供される。
また、この発明の一実施形態によれば、レーザビームによって物体を照射するための光源と、照射された物体から反射された光を感知するための、請求項8に記載の機器とを含む、三角測量用機器が提供される。
この発明の有利な一実現化例は、上述の回路系の実施形態のいずれかを実現する集積回路を提供する。
この発明の別の局面によれば、センサアレイの画素内の関心領域ROIを構成するための方法が提供され、ROIは、センサアレイから読出されるべき1個以上の画素を含む。この方法は、1個の画素について行なわれる以下のステップを含み、以下のステップは、ROI書込信号を生成し、生成されたROI書込信号を画素に提供するステップと、ROI書込信号を受信すると、ある画素がセンサアレイの関心領域に属することを示すROI表示を、画素のROIストレージ手段に書込むステップとを含む。
この発明の別の局面によれば、センサアレイから、1個以上の画素を含む関心領域ROIを読出すための方法であって、読出されるべき少なくとも1個の画素を選択するために、選択回路が、画素ごとに格納され、前記画素がセンサアレイの関心領域に属することを示すROI表示の予め規定された値を有する画素のみを選択するように構成されるステップと、選択された画素から信号を読出すステップとを含む、方法が提供される。
好ましくは、この方法は、各列から、関心領域に属する第1の画素を第1に読出すことと、読出された画素のROI表示値を、それらのそれぞれの列において読出された画素に続くそれぞれの画素にシフトして、関心領域を拡張することとを含み、シフトは予め定められた回数行なわれ、この方法はさらに、読出された各画素について、それらのそれぞれの列において読出された画素に先行するそれぞれの画素のROI表示値を格納することと、各列から、再規定された関心領域に属する第1の画素を第2に読出すこととを含む。
有利には、この方法はさらに、ある画素についてバイパス信号を判断して、読出中に前記画素がスキップされるべきであることを、予め規定された値によって特定することと、予め規定された値を有するバイパス信号を検出すると、前の画素のROIストレージ手段からの信号を出力に転送することとを含む。
この発明の一実施形態によれば、この方法は、予め規定された露出時間の期間、センサアレイのすべての画素で同時に感知することと、センサアレイ列の各々において関心領域に属するi番目の画素をそれぞれ含む関心領域の部分を順次読出すこととを含み、iは1〜Nまでの整数であり、Nは関心領域に属する列における画素数を表わす整数である。
上述のように、関心情報が画像全体に分散せず、関心領域に集中している、多くの撮像および映像用途がある。上述の実施形態によれば、カメラは、画像全体でなくROIのみをダウンロードすることから利益を得ることができ、それは、フレームレートの増加を可能にする。したがって、より効率的な画像センサの読出し、ならびにROIの迅速な計算およびダウンロードを可能にする方法は、高速映像および撮像用途にとって特に興味深い。なぜなら、それらは、より高速で、ひいてはより高価な画像センサを使用することなく、フレームレートを増加させることを可能にするためである。ランダムな(任意の)ジオメトリを有するROIを選択し、ダウンロードするためのアプローチを、上に紹介した。
このアプローチは、通常の矩形形状のROIのダウンロードと比較して、或るフレームレートを達成するために必要とされるリソースの点で、いくつかの用途にとってかなりの利益を提供できる。
図面を参照して説明した上述の例では、ROIは、各列からの少なくとも1個の画素を含む。すなわち、ROIは読出される(および、全ROI行ごとにプログラミングされる)。しかしながら、これはこの発明を限定するものではない。したがって、ROIは任意の形状を有し得る。いくつかの列は、必ずしもROIに属する必要はない。ROIをプログラミングする場合、ROIに属さない読出チャネル(列)は非活性化されてもよい。これは、さまざまなやり方で、たとえば、ROIに属する最初の(および/または最後の)列を示す情報を格納することによって実行可能である。ROIを読出す場合、アクティブな列のみが読出される。以下に、この発明の一実施形態として、ROIを決定する(計算する)ためのアプローチを提示する。特に、画像のどの部分が関心情報を含むか判断し、このROIのみが読出されるようにセンサを迅速に再プログラミングするためのアプローチを提示する。したがって、この発明の以下の実施形態は、センサによって取得された画像の処理に基づいて、ROIのサイズおよび座標を待ち時間なしで計算すること、および、ROIを決定する或る特性を得ることを可能にする、CMOS画像センサのためのアーキテクチャを提供する。
画像センサの通常の読出しは、上述されてきた。画像センサは最初、画像を取り込み、それは、読出チャネルによって読出されるまで画素内に格納されたままとなる。画素アレイは、読出回路系により(完全にまたは部分的に)読出される。通常、読出プロセスの一環として、読出チャネルはまた、画像をデジタル化する。画素アレイから画像をダウンロードし、それをデジタル化するために読出チャネルが必要とする時間の量を、Tframeという用語で表わすことにする。読出し後、画像はデジタルメモリに格納され、プロセッサは、予め規定されたアルゴリズムに従って、或る期間Tprocの間、画像を処理する。メモリは、画像センサチップの内部またはその外部に配置可能である。プロセッサも、外部にまたはチップ上に配置可能である。
処理の結果は、画像における関心情報の識別データを提供し、この識別データ(情報)を用いて、ROIのサイズおよび座標が計算される。ROIのサイズおよび座標は、プログラミングされたROIが、読出されるべき次のフレームに適用されるように、行選択回路をプログラミングするために使用される。行選択回路においてROI規定を再プログラミングするために必要とされる時間を、Tre−progと表記する。
現代の高速センサでは、フレームレートFRmaxは、フレームを読出すために必要とされる時間の逆数として求められる。すなわち、以下の式となる。
このため、ROIを再計算し更新するためにシステムが必要とする時間TROI_updateは、以下の式によって与えられる。
新しい各フレームでROIが更新される場合、処理時間によって最大フレームレートを減少させる必要がある。したがって、以下の式となる。
また、これに代えて、時刻tにおいて取り込まれた画像を処理することによって計算されたROIは、時刻t+N×Tframeにおいて取り込まれるべき画像についてのみ更新可能であり、ここで、N≧Tprocessing/Tframeである。
この発明のこの実施形態は、時刻tにおいて取り込まれたフレームの情報を読出すために適用されるROIが、同じフレームにおける情報を処理することによって計算されるように、ROI規定を再計算し更新するために必要とされる時間を減少させることができるアプローチを提供する。これは、待ち時間が全くないことが達成できることを意味する。これは、ROIの特性が画像により大幅に変化し得る、レーザ三角測量に基づく3D撮像といった用途にとって不可欠である。また、ROIの位置は、各列について独立して計算され、通常の矩形のROIとは対照的に、任意の形状を有するROIを提供する。
特に、発明のこの実施形態によれば、センサアレイの画素内の関心領域ROIを決定するための回路系が提供される。ROIは、第2の読出回路系によってセンサアレイから読出されるべき1個以上の画素を含む。また、ROIを決定するための回路系は、第2の読出回路系よりも速く、センサアレイから画素を読出すために適合された第1の読出回路系と、第1の読出回路系によって読出された画素に基づいてROIを決定するための処理部とを含む。
図19は、この発明の実施形態を実現し得るCMOSセンサの単純化されたアーキテクチャを示す。特に、図19は、列の数がNcolで行の数がNrowである、すなわち、Nrow×Ncol個のセンサ画素を有する画素アレイ1910を示す。第1の、高速読出チャネル1920(読出回路)は、画素アレイ1920の画素に接続され、画素の感知された値を読出すよう機能する。また、処理アレイ1930は、読出チャネル1920によってダウンロードされた画素の値を受信するための入力を有し、現在のROIを決定する。処理アレイはさらに、決定されたROIを画素アレイに出力するための出力を有する。第2の、精密読出チャネル1950は、第1の読出チャネル1920よりも高い精度で、画素アレイ1910から計算されたROIに含まれる画素を読出すための入力を有する。
有利には、第1の読出ステップが、高速読出チャネル1920を使用して、高速かつ低精度で画素アレイ1910全体を読出すことによって行なわれる。高速読出しの精度は通常のデータ読出しよりも低いが、それは、画像処理プロセッサの(たとえばオンチップ)アレイ1930を用いて画像データを処理することにより、画像におけるROIの位置を計算するには十分である。次に、ROIの位置は画素アレイ1910にフィードバックされ(1940)、次に精密でより遅い読出チャネル1950を使用して十分な精度で読出されるべき画素に印を付ける。第1の高速読出チャネル1920による初期の高速読出は、非破壊的な態様で行なわれる。
図20は、図3Aの画像330と同様の、3Dレーザ三角測量用途によって取り込まれた画像の一例を示す。上述のように、いくつかのアプローチでは、矩形のROIのみが許容される。したがって、図20に示す画像を読むには、レーザ線に属する画素を得るために、画像のほぼ全体を読出す必要があるであろう。このプロセスにはNrow×Trow秒かかる。ここで、Nrowは、情報を含む行の数、Trowは、画素の1行全体を読出すために必要とされる時間である。しかしながら、関心情報は、列に沿った最大値の前後の数個の画素行Nrow_ROIの間隔で圧縮される。
この発明の実施形態によれば、関連情報を含む画素(すなわち、ROIの画素)の各列についての行の数は、以下の式1で与えられた時間で計算可能である。
(式1)
式中、Tfast_roは、第1の読出回路によってROIを決定するために、画素の高速読出に費やされた期間であり、TprocおよびTre−progは、ROIを決定するために、およびセンサアレイ1910を再プログラミングするためにそれぞれ費やされた、上に規定された期間である。
このため、先行技術と比較した、この発明のこの実施形態によって提供される改善度Kは、以下のように推定され得る。
(式2)
(式3)
3Dレーザ三角測量用途における上述のパラメータについての適正値は、以下のとおりである。
これらの例示的な値は、K≒25というかなり高い改善度をもたらす。なお、これらのパラメータ値は単なる例示であり、また、当業者には明らかであるように、用途の要件、センサアレイのサイズなどに従って、他の値が選択され、適用されてもよい。改善度は、先行技術と比較してこの発明を使用することによって達成可能である(第2の)精密読出チャネルを使用したフレームレートの増加を規定する。
図21は、読出チャネル(回路系)の構造の一例を示す。列ごとに1つのアナログ−デジタル変換器(Analogue-to-Digital Converter:ADC)を有するセンサにおいて、画素データは、2つのアナログメモリ(メモリ行#1およびメモリ行#2)に交互に格納され、それらは各々、キャパシタの行で構成されている。各メモリラインには、画素ごとに2つのキャパシタがあり、一方は、画素リセット値N’を格納するためのものであり、他方は、ノイズNを有する信号Sのためのもので、値S+Nをもたらす。メモリセットがいったん充填されると、そのキャパシタらは相関二重サンプリング(correlated double-sampling:CDS)回路の層に接続され、一方、次の画素行が第2のメモリ行にダウンロードされる。CDSは、S+NとN’との間の相関エラーを取消す。その後、信号はプログラマブル利得増幅器(Programmable Gain Amplifier:PGA)に渡され、そこでそれは増幅されてから、ADCでデジタル信号に変換される。センサから画像フローを送信するために、デジタル化されたデータはシリアル化されてインターフェイスブロックに出力される。この、または同様の読出アーキテクチャは、第1または第2の読出回路系のいずれについても使用されてもよい。しかしながら、読出回路系は、他のあらゆる構造も有していてもよく、CDSによって提供されるノイズ補償なしで作動してもよいということに留意されたい。この発明は、読出回路の特定の構造によって限定されない。
ROIを決定し、ROIをプログラミングするための画素のより高速の読出しと、より遅くより精密なROI読出しとを可能にするために、例示的な5T(図5参照)画素アーキテクチャは、図22に示すように修正可能である。
修正された画素アーキテクチャは、元の5Tアーキテクチャに加え、各列に配置された(第1の)高速読出チャネル1920および処理ブロック2230によって生成(制御)された(SEL_PIXとして表記された)選択信号の修正された制御に基づいている。上述のように、画素選択信号SEL_PIXは典型的には行選択回路によって生成され、ある行におけるすべての画素について選択トランジスタに直接印加され、それによりその行を選択する。なお、センサアレイはまた、行の代わりに列を選択するように構築されてもよい。
選択トランジスタを開くことによる、ある行におけるすべての画素の選択は、その行におけるすべての画素が、この実施形態における(第2の)精密読出チャネル2240を使用して、並行してダウンロードされることを確実にする。この発明のこの実施形態では、選択トランジスタTselの起動は、図22に示す論理モジュール2250によって制御される。前記モジュールは、SEL_PIXが、画素ごとの1ビットシフトレジスタ2210に格納されたインジケータ(フラグなど)によって識別されたROIに属する画素のみに印加されるように設計されている。そのような回路系の例を、上に示してきた。この実施形態では、制御手段の一部である、図14および730における1ビットメモリ1430、730が、シフトレジスタ2210の機能ブロック内に含まれる、ということが仮定される。このメモリ手段は各画素について個々に設定されるため、ランダムな、すなわち任意の形状のROIを規定し、前記予め定められたROIに含まれる画素のみをダウンロードすることが可能である。制御ブロック2250の残りの機能性および入力/出力は、図7、図11、図13および図14を参照して説明した実施形態からの制御手段710およびその要素の機能性および入力/出力に対応可能である。
なお、この実施形態は、前述の実施形態のいずれかに示す制御手段を含む画素アーキテクチャに依存し得る。 しかしながら、これはこの発明を限定するものではない。一般に、この実施形態は、任意の形式でのROIの識別の格納、およびROIからの画素のみの読出しをサポートする、あらゆる種類のアーキテクチャで作動し得る。たとえば、この実施形態は、図2を参照して説明した矩形のROIといった、それほど柔軟でないROI規定アプローチででも作動し得る。
この発明のこの実施形態では、取得された画像全体を処理することにより、関心領域は自動的に規定される。できるだけ最短時間でこの処理を実現するために、この発明は、通常のアプローチよりもはるかに速く画像全体を読出すことを可能にし、非破壊的な読出しを使用する、(第1の)高速読出チャネル2220を提供する。前記より速い読出しは、その低下した精度がROIを決定するには十分であるものの、さらなる処理のために画素値を読出すにはおそらく不十分である、高速読出チャネル2220を使用することによって達成される。
この発明における高速読出チャネルに代えて、より速い読出しは、たとえば、積分時間を短くし、および/または、画素からのアナログ画素データをアナログメモリにダウンロードするために割り当てられた時間を減少させ、ダウンロードプロセスを完了前に停止し、および/または、ADCのカウント時間を減少させ、言い換えれば、A/D変換に割り当てられた時間を、画素データの最上位ビットのみを得るために必要な時間に限定し、および/または、いくつかの画素行を並行してダウンロードする複数の読出チャネルを使用することにより、達成されてもよい。
さらに、列ごとに提供され得る処理ブロック2230は、高速読出チャネル2220によって提供された信号を処理し、どの画素が1つまたはいくつかの条件を満たすか検出するように構成され、ROIの一部になるようにそれらに印を付ける。処理ブロック2230はまた、画素内シフトレジスタブロック2210の内容を更新するように構成されている。
要約すると、ROIを決定するための回路系は有利には、第1の読出回路系によって取得された画素値のうち、ROIに属する画素を、予め規定された条件に基づいて検出することにより、ROIを決定し、決定されたROIを第2の読出回路系に提供するように構成された、処理部を有する。
また、処理部は、値が予め規定されたしきい値を越える画素を、ROIに属する画素として検出するための比較器を含んでいてもよい。
ROIの決定は有利には、センサアレイによって取り込まれた各フレームについて行なわれる。しかしながら、一般には、この発明はそれに限定されず、いくつかの用途については、すべてのフレームのうちの部分集合についてのみ、たとえば予め定められた、または予め規定された期間(フレームの数)で規則的にROIを決定することが、有利であり得る。この代替案は、複雑性を減少させ、ひいては、ROIを決定するために必要な時間も減少させるのに有利であり得る。
また、適応的ROIプログラミングを使用するために、画素内シフトレジスタ2210は、関連情報を含む列ごとに異なるROIを読出すことを可能にする。上述のROIプログラミング実施形態に示すように、プログラマブルROI規定は、異なる列について異なるROIを可能にする柔軟な態様で、または、サイズは等しいものの異なる列内での位置は等しくないROIを提供することによって、提供されてもよい。シフトレジスタブロック2210は2つの入力を有し、第1の入力(In1)は、現在の行の上の(または下の)隣接行における画素のシフトレジスタの出力を受信するためのものである。第2の入力(In2)は、列の底部の図22に示す処理ブロック2230からデータを受信するよう機能する。処理ブロック2230は、以下により詳細に説明されるように、ROI識別を決定(更新)してシフトレジスタブロック2210に提供するように構成されている。
ソース選択信号SEL_REG用の別の信号入力は、シフトレジスタの出力に配置されたデータのソースを選択する。たとえば、ソース選択信号の値であるSEL_REG=0は、現在の画素と同じ列における先行する画素のシフトレジスタからの入力In1を使用するように画素を構成してもよく、一方、SEL_INPUT=1は、処理ブロック2230からの信号を使用するように画素を構成してもよい。クロック信号CLK_Sは、新しいデータの取り込みを制御する。特に、クロック信号CLK_Sの立ち上がりエッジ中、データは、(ソース選択信号の値に従って)選択された入力In1またはIn2から取得される。立ち下がりエッジで、取得されたデータは、シフトレジスタの出力「out」に提供(設定)される。ある行におけるすべての画素について、データの取得および書込みが同時に行なわれるように、ソース選択信号SEL_REGは、その行におけるすべての画素に分布される。シフトレジスタのこのアーキテクチャは、高速読出チャネル(読出回路系)2230によって適応的に決定されたROIに属する画素のみからの読出しを確実にする。
要約すると、センサアレイの画素内の関心領域を構成するための回路系が提供される。ROIは、センサアレイから読出されるべき1個以上の画素を含む。回路系は、ある画素がセンサアレイの関心領域に属することを示すROI表示を格納するためのROIストレージ手段と、上述のような例および実施形態のいずれかに従った回路系の処理部から提供された入力に従って、ROI表示をその画素のROIストレージ手段に書込むための制御手段とを含む。
また、センサアレイから関心領域の画素を読出すための読出回路系が提供される。読出回路系は、センサによって検出された信号を画素ごとに格納するための信号ストレージ手段と、上述の実施形態および例のいずれかに従った回路系から提供された入力に従って、ある画素がセンサアレイの関心領域に属することを示すROI表示を格納するためのROIストレージ手段と、読出されるべき少なくとも1個の画素を選択するための選択回路とを含み、選択回路は、画素が関心領域に属することを示すROI表示を有する前記画素のみを読出すように構成されており、読出回路系はさらに、選択された画素の信号ストレージ手段を読出すための第2の読出回路を含む。
さらに、センサアレイの関心領域を読出すためのセンサアレイ回路系が提供される。センサアレイ回路系は、上述の例および実施形態のいずれかに従った関心領域を決定するための回路系と、上述のような決定されたROIを構成するための回路系と、上述のような構成されたROIから画素を読出すための回路系とを含む。
センサアレイ回路系は有利には、シフトレジスタをさらに含み、シフトレジスタは、画素ライン内の前記画素に先行する別の画素のROIストレージ手段から信号を受信するための第1の入力(In1)と、上述の例および実施形態のいずれかに従った回路系の処理ブロックによって提供された信号を受信するための第2の入力(In2)と、第1の入力または第2の入力がアクティブであるかどうかを制御するソース選択信号(SEL_REG)を受信するための制御入力と、制御入力が第1の入力を選択した場合には、受信された信号を、画素ライン内の前記画素に続く別の画素のROIストレージにシフトするための、および、第2の入力が選択された場合には、第2の入力で受信された信号を格納するための、出力(out)とを含む。
選択回路は好ましくは、シフトレジスタから出力された信号に従って、読出されるべき画素を選択するように構成されている。
選択回路は、シフトレジスタから出力された信号に従って、読出されるべき画素のみを選択するように構成されてもよい。ROI決定回路系を、決定されたROIに属する画素のみを読出すように構成された第2の読出回路系と組合せることは、用途には無関係の情報を廃棄することを可能にし、それにより、読出されるべきデータの量を減少させ、フレームレートの実質的増加をもたらす。時間節約を、図23に概略的に示す。図23の上部は、通常の画像センサ回路系によるセンサアレイの露出および読出し(r/o)に必要とされる時間を、水平方向に示す。図の垂直方向は、センサアレイの特定の行を表わす。図23の上部は、図10の時間図に対応している。図23の下部は、上述のようなROI決定および読出回路系の採用から生じる時間図を示す。特に、センサ読出時間は、ROIを決定するためのセンサアレイからの高速読出し用の第1の部分と、ROI画素のみを読出すための第2の部分という、2つの部分を含む。第1の部分は、行1〜Nrowsにおけるすべての画素の行方向高速読出し(fr/o)を含み、Nrowsは、センサアレイの行の数である。図からわかるように、行ごとの第1の高速読出しは、上部に示すようなある行の通常読出しよりも短い。センサ読出しの第2の部分は、ROIの行を読出すことのみを含み、Nrow_ROI(ROIにおける行の数)行のみを読出すことをもたらす。また、図に示すように、ROI画素の第2の読出し(r/o)は高速読出しよりも遅く、図23の上部にも示すような通常の読出期間に対応している。第1の部分は高速読出しを含み、第2の部分は関連画素(ROI画素)の読出しのみを含むため、読出しおよびROI適応プロセス全体は、センサアレイの完全な読出しよりも短い。これを、図23に、「自動ROI機能による改善」と表記された期間によって示す。
先行技術における読出チャネルの速度は、デジタル読出チャネル2240の内部で、画素FDノードからの画素に格納された情報を、画素列の底部に配置可能な(アナログ)メモリにダウンロードするために必要とされる時間における究極の限界を規定する。前記画素ダウンロード時間は、画素の内部のソースフォロワー・バッファトランジスタ2260の駆動能力、および列出力ラインの同等のキャパシタンス2290によって定められる。画素ダウンロードを固定するために駆動能力を増加させることは、より大きいソースフォロワー・バッファを必要とし、それは画素サイズを増加させ、画素感度を減少させる。双方の欠点を補償するには、画素サイズを増加させるべきであり、それは、所与の画素サイズのための達成可能な最大読出速度との間に明確なトレードオフを設定する。
読出速度と画素サイズとを切り離すために、この発明の一実施形態によれば、浮動拡散ノードFDに格納された、光学的に生成された電荷の読出しは、従来の読出チャネルで典型的に使用される電圧モード読出しとは対照的に、電流モードで動作する高速読出チャネルを使用することによって行なわれる。一方、電圧モード読出回路系は依然として、精密読出チャネル2240のために有利に使用されてもよい。
電流モードでは、電圧モードと同様に、容量性ストレージFDに格納された信号は読出され、列の底部のアナログメモリに格納される。しかしながら、電圧モードでは、FDノードからの信号をアナログメモリにダウンロードする速度は、画素の内部のソースフォロワー・バッファトランジスタの駆動能力に依存する一方、電流モードでは、画素の内部ではなく列の底部にあるブロックの駆動能力に依存する。したがって、それは、画素サイズに影響を与えたり、またはセンサ消費電力全体に顕著に影響を与えたりすることなく、はるかにより強くされ得る。
電流モードで画素を読むことは、伝統的な電圧モードでの読出と比較して、いくつかの利点を有する。まず、上述のように、画素FDノードからのデータをアナログ(容量性)メモリにダウンロードする速度は、画素におけるドライバによってではなく、列の底部にあり、列におけるすべての画素に共通の読出回路によって制御される。これは、画素における駆動能力を増加させることなく、速度を増加させること、ひいては、画素サイズを保持(維持)することを可能にする。
要約すると、有利には、ROIを決定するための回路の第1の読出回路系は、電流モードで作動する。
第2に、1つの列におけるいくつかの画素が(それらをすべて一緒に選択することによって)同時に読出される場合、結果として生じる電流は、選択された全画素からの電流の合計である。対照的に、選択された全画素の読出しから結果として生じる電圧は、通常の精密な電圧モード読出チャネルで起こるように、特定の選択された画素からの出力電圧の平均に対応している。電流モードと電圧モードとのこの違いは、電流モードまたは高速読出チャネルを適用する場合に、いくつかの利点を提供する。
3Dレーザ三角測量のような用途では、各列におけるROIの位置は、列内でのより高い強度を有する画素を含む位置として検出され得る。したがって、画素のグループでの画像の読出しを、それらの出力電流を追加することによって行なうことは、一方では、画素ごとの読出しと比較して、読出されるべき行の総数の減少をもたらし、他方では、信号対雑音比の改善をもたらし、このため、背景に対するROIの認識を単純化する。
また、より多くの電流は、より速い速度を意味する。このため、画素をグループで読出すことは、1行ずつでの読出しと比較して、読出しの速度を増加させること、ひいてはフレームレートを増加させることも可能にする。
電流モード回路系は好ましくは、容量性メモリFDに格納された信号に基づく画素電流Ipixを処理部に提供するためのPMOSタイプのドライバトランジスタを含む。
図24は、この発明のこの実施形態で採用され得る高速読出チャネルのアーキテクチャの一例を示す。電流モード読出しは、飽和領域ではなくオーミック領域でトランジスタ2260にバイアスをかけることによって達成される。
トランジスタがNMOSトランジスタであった図22と比較して、図24では、画素におけるドライバトランジスタ2460は、PMOSタイプトランジスタに変更されている。これは便利である。なぜなら、さもなければ、(3Dレーザ三角測量の画像において大部分を形成する(図20参照))暗い画素が、明るい画素の情報を隠すであろうかなり高い出力電流を生成すると思われるためである。したがって、ROI検出を加速するために複数の行を同時にダウンロードすることを困難にするであろう、より低い電流が生成されるであろう。加えて、多くの画素がかなりの電流を列に注入する場合、電力消費が増加するかもしれず、それは、センサ完全性を損なったり、および/または、理想的でない挙動をいくつかひき起こすかもしれない。しかしながら、PMOSトランジスタが上述の利点を提供する場合でさえ、この発明はこの実現化例によって限定されるものではなく、NMOSトランジスタも採用され得る、ということに留意されたい。
電流モードの高速読出チャネルの画素ドライバにおいてPMOSタイプトランジスタを使用することにより、明るい画素は、より高い電流を出力するようになる。この状態では、画素ドライバトランジスタは、明るい画素と暗い画素とをより良好に区別することによってROIを決定するのに役立つ微小電流を、暗い画素が注入するように、動作可能である。
このモードでは、ドライバトランジスタ2460によって提供される電流Ipixは、以下の式によって与えられる。
(式4)
式中、VSGはソースノードとゲートノードとの間のソース〜ゲート間電圧、VTはトランジスタしきい値電圧、VSDはソース〜ドレイン間電圧、VSはソース電圧、VFDは浮動拡散ノードFDに格納された電圧(信号)、βohmicは印加されたオーミックバイアスである。よって、ドレイン電圧(VD)およびソース電圧(VS)が双方とも一定の場合、ある画素によって送出された電流は、VFDと線形関係を有するゲート電圧(VG)によって求められる。
ドライバトランジスタ2460のソースにおける電圧を一定に保つために、電流コンベヤ2410が提供される。ここでの電流コンベヤは、2つの入力を有する回路構成要素であり、それは、その入力のうちの一方に存在する同じ電流Ipixを送出しつつ、双方の入力間の電圧差を事実上ゼロと等しくなるよう保つ。
次に、図24の回路について、式4は以下のようになる。
式中、ΔVFDは、光生成電荷すなわち取得された信号の結果としての電圧の増分であり、以下のように表わすことができる。
式中、VFD0は、リセット後にFDノードに格納された電圧を表わし、それは、露出前のFDノードにおける初期電圧である。
IOFFは、画素信号から独立した電流のオフセットであり、gは利得である。
式4との比較により、gは以下の式に対応する。
(式5)
式中、Vdd_sfは、ドライバトランジスタ2460のソース電圧であり、Vrefは、電流コンベヤ2410の第2の入力での基準電圧である。
したがって、IOFFは以下のようになる。
(式6)
前述のように、いくつかの行が同時に選択された場合、電流モードの高速読出チャネルは、読出速度をさらに増加させるための態様を提供する。並行して読出されるべき行の量は、用途に依存する。3Dレーザ三角測量という特定の場合、この数は、典型的なレーザ幅である4未満であろう。複数の行を同時に選択して読出すこの手法では、行が対で短絡される場合(常に2行が並行して読出される場合)、改善度Kは50まで上昇するであろう。
処理ブロック2430は、図22の処理部2230に対応する(またはその一部である)。それは、ROI画素を見つけ出すのに役立つ。ROI画素の検出は、たとえば、取り込まれた画像が基本的に、より明るい画素に対応するレーザ線を有する暗い画像であるレーザ三角測量用途の場合、明るい画素を検出することによって行なわれてもよい。しかしながら、他の用途は、別の検出機構を、ひいては他の種類の処理部も必要とする場合がある。このため、処理ブロックの特定のアーキテクチャは、本質的に用途に依存するため、ここでは広範に取扱わない。しかしながら、ROI検出機構は、さまざまなリアルタイム画像およびビデオ処理用途からの先行技術において周知である。
3Dレーザ三角測量用途という特定の場合、関連情報(レーザ線)は非常に明るい画素のピーク(低レベル信号)によって表わされ、一方、背景はほとんど黒(高レベル信号)であることが多い。よって、ROI画素を見つけ出すための処理ブロックとして、多くの場合、単純な電流比較器で十分であり得る。加えて、電流比較器はまた、ノイズ減少および速度改善のためにいくつかの行を短絡させるという利益を有する。また、電流比較器がその入力間の電圧差を固定すると仮定すると、電流コンベヤは必要ない。その結果、図25に示すように、単純な回路が、高速読出チャネル2220および処理ブロック2230双方の役割を担うことが可能である。
有利には、ROIを決定するための回路系は、電流比較器を含む。電流比較器は、処理部内に実現されてもよい。しかしながら、この発明はそのような配置に限定されない。なお、高速読出チャネルおよび処理部の機能的ブロック同士は、読出し自体の最中にROIを検出する1つのブロックへと物理的に併合されてもよい。
第1の読出回路系は好ましくは、センサアレイの画素の2行を並行して読出すように構成されている。
これに代えて、またはこれに加えて、第1の読出回路系は、それぞれの2行の画素からの電流の合計を、その合計をしきい値電流ITHと比較するように適合された比較器2510に提供する、1行ごとのドライバトランジスタにより、各列において実現されてもよい。
図25は、ROIを決定する目的で、単一の列の2行を一度に処理するために、すなわち画素の2行を同時に読み出すために、処理部と組合わされた第1の読出チャネルの一例に関する図を示す。特に、2つの容量性メモリFDが、同じ列の2個の画素のためにそれぞれ提供される。これらのメモリは、それぞれのドライバトランジスタ2570aおよび22570bによって読出され、それぞれの読出電流IpixaおよびIpixbをもたらし、それらは合計されて合計電流2Ipixをもたらし、それは比較器2510に入力され、比較器2510の他方の入力は、2個の画素がROIに属するか否かを判断するしきい値電流ITHである。比較器の出力は次に、上述のように、シフトレジスタの第2の入力In2に直接接続されてもよい。
3Dレーザ三角測量用途という特定の場合、比較器2510によって提供される結果として、行における低精度のレーザ場所を送出することが可能である。この結果の精度は、画素数の観点からみて、おそらく低い。にもかかわらず、比較器2510が画像全体を処理すると仮定すると、相対精度は、適正な画素数について先行技術で得られたものに匹敵する。この低精度の結果は、高速で得ることができる。なぜなら、この場合、ROIの読出しは必要ないためである。
修正された画素および/または読出チャネルアーキテクチャを用いた、センサにおける画像取得は、先行技術と同様に作動する。実際、この発明および特にROI決定は、トポロジ(ピンドフォトダイオードまたは従来のフォトダイオード)およびトランジスタの数にかかわらず、あらゆるCMOS画素に適用可能である。
画像読出段階中、動作は、上述の説明に従って変わる。以下に、上述の画素アーキテクチャの動作の一例を説明する。
フォトダイオードPPDは通常通り動作され、PPDによって集積された電荷は、ここでは浮動拡散ノードFDによって実現されている容量性(アナログ)メモリに転送される。制御回路全体は、図22に見られるような信号F/nRを起動することによって、センサアレイを高速読出モードとなるように構成する。この構成は一方では、オーミックモードでドライバトランジスタ2260にバイアスをかけることによって、センサ制御回路系が高速読出モードで画素動作をプログラミングするようにする。他方では、高速読出チャネル2220はそれにより、列ライン2202に接続される。
ソース選択信号SEL_REGにより、シフトレジスタ全体は論理値1に設定され、画素選択信号SEL_PIXに、センサの列への行の接続を制御させる。センサの全体制御は次に、すべての行が高速読出チャネル2220に順次接続されるように、画素選択信号SEL_PIXを扱う。次に、各列ラインは、選択された画素によって取得された信号に比例して電流を送出する。処理ブロック2230は、各列についてどの行が、ある画素がROIに属するかを区別するために規定された1つまたは複数の条件に整合するかを検出するために、高速読出チャネル2220によって送出された信号を処理する。
処理部2230の出力OUTはデジタル信号であり、それは、画素アレイにフィードバックされる。また、それは、ソース選択信号SEL_REGによって与えられた位置でシフトレジスタ2210の入力In2に論理値1を書込むことにより、電流モーメントで列に接続された画素がROIの一部であることを示す。ソース選択信号SEL_REGは、SEL_PIXと同様にタイミングを取られる。しかしながら、これに代えて、ROIが実際の画素の前または後にいくつかの画素を含むことができるように、ソース選択信号SEL_REGと画素選択信号SEL_PIXとの間のプログラマブルなオフセットが可能である。このプロセスは、画像におけるすべての列について並行して行なわれる。
全体制御は次に、信号F/nRをリセットすることによって、センサをROI読出モードとなるように構成する。加えて、ドライバトランジスタ2260は、先行技術と同様にソースフォロワのように作動するように、飽和領域でバイアスをかけられる。ROI読出し中、シフトレジスタ2210において入力In2ではなく入力In1がアクティブとなるように、ソース選択信号SEL_REG信号は起動されない。
高速読出モードで決定されたROIは次に、精密読出チャネル2240を介したROI読出モードで読出される。
図26および図27は、露出時間が、シフトレジスタ2210の処理および更新を含む(第1の)高速読出しと、(第2の)ROI読出しとの双方と重複し得る、この発明の一実施形態を示す。したがって、全体的な画像センサ速度を増加させるために、シフトレジスタ2210の高速読出し、処理および更新は、パイプライン化された態様で遂行される。
特に、図26は、画素行1〜Nrowsを含む画素の単一の列jに関する動作を示す。現在のステップで、第5の行#5における画素が、高速読出回路系によって読出される。これは、画素選択信号SEL_PIXによって画素行を選択するにより、行なわれる。並行して、第3の行#3の画素のROIストレージが、適切な値(たとえば、画素が列における第1のROI画素である場合には、論理1、または、画素がROIにおける第1の画素ではない場合には、論理0)をそこに書込むことによって更新される。このため、図26は、ROIの決定と、シフトレジスタストレージへのROIのプログラミングとの間の時間シフトを示す。これは、これらの2つの動作をパイプライン化された態様で行なうことを可能にする。また、精密読出回路によるROI読出しも、パイプライン化されてもよい。ROI書込み(プログラミング)動作が終了すると、ROI読出しを行なうことができる。
図27は、パイプライン化された処理を時間図で示す。図27は、水平方向によって示された時間の間、光電素子PPD上にあるアナログ集積電荷を示す。電荷が集積されるとすぐに、それはアナログメモリFDに転送される。PPDからFDへの電荷の転送は、転送信号TRFによって制御される列jのすべての行について行なわれる。転送後、列jにおけるすべての行について、高速読出手順が行なわれてもよい。いくつかの行が依然として高速読出回路系によって読まれる(F_ro)一方、すでに読出された行は、ROIを決定するために処理部によって処理されてもよく(Proc)、すでに処理された行は、センサアレイシフトレジスタにプログラミングされてもよい(ROIwr)。見てわかるように、上述の3つの動作、すなわち高速読出し、処理、およびROI書込みは、パイプライン化されて、すなわち部分的に並行して行なわれてもよい。つまり、これらのステップは並行して同じ列に適用されるが、特定のステップによって処理された行に対してシフトされる。次に、FDをリセットすることなく、精密読出し(ROI_ro)が行なわれる。そのようなパイプライン化は、自動ROI動作をさらに加速し得る。
要約すると、ROIプログラミング回路およびROI読出回路を提供することに加えて、この発明は、自動ROI機能を実現するための修正されたCMOSセンサアーキテクチャを提供し、それによりセンサは、センサから実画像を実際に読出す前に、列ごとまたは画像ごとにROIを自動的に計算する。修正された画素アーキテクチャは、電流モードの高速読出しと、電圧モードの精密なROIストレージ読出しとの双方を実現できる。高速読出チャネルによって送出された電流からROI位置を自動的に得るために処理回路系を列ごとに含めることは、効率的な自動ROI更新を可能にする。これは、レーザ三角測量センサの用途にとって特に好適である。しかしながら、それはそれにより限定されず、本願は一般に、あらゆる種類の感知(撮像)用途に適用可能である。レーザ三角測量用途は、比較器を含む三角測量センサ用のレーザピークの低精度の計算、および複数の行の並行する読出しのための上述のアーキテクチャといった、単純化され効率的ないくつかの実現化例を可能にする。
なお、ROI決定の実現化例は、図22の例示的なアーキテクチャに限定されない。たとえば、図22に示す画素アーキテクチャの最適化を、図28に示す。したがって、画素の内部でいくつかの論理を省くことが可能である。
図28は、図22の画素アーキテクチャと比較すると、画素選択を制御する、すなわち、選択トランジスタTselの起動を制御するANDゲートを省くことを可能にする、修正されたアーキテクチャを示す。この画素の動作の原理は、図14を参照して上述された実施形態に関連する図22の元の概念と同様である。ROIのプログラミングは上述のものと同じであるが、(図28によれば)1ビットメモリの内容をシフトレジスタに転送するためにクロック信号CLKが起動されると、読出プロセスが始まる。なぜなら、シフトレジスタの出力(ROIの第1の画素については、論理1)が、各ROIの第1の画素の選択トランジスタを同時に起動するためである。
次に、元のアーキテクチャと同様に、クロック信号CLK(図14におけるCLK_Rに対応)をパルス化して、各列の第1の画素が次の下の画素に送られ、それにより、列ラインから第1の画素を切り離し、後者を接続する。この方法を使用して、(すべての画素において)1つの論理ゲートを省きながら、同じ結果が達成される。この場合、ANDゲートが画素アーキテクチャから除外されると、各ROIの第1の画素のみが論理1を含み得る。なぜなら、さもなければ、出力ラインでいくつかの行が短絡されるためである。したがって、ANDゲートのない減少したアーキテクチャは、列における第1の画素のROIメモリ手段が論理値1に設定されることにより、および、下の画素もROIに属する限り、値をシフトすることにより、ROI表示が格納されるアーキテクチャにとってのみ好適である。
この発明のこの実施形態は、以下のように作動する。フォトダイオードPPDは通常通り動作され、露出時間が終了すると、その中に集積された電荷がFDノード(アナログメモリ)に転送される。全体制御は、信号F/nRを起動することによって、センサを高速読出しモードに設定する。これにより、センサ制御回路系は、画素動作を高速モードでプログラミングするようになり、オーミックモードで上述の例のようにドライバトランジスタにバイアスをかけ、また、高速読出チャネルを列ラインに接続するようになる。
(すべての画素の)全シフトレジスタ2810は、初期化するために論理0に設定される。次に、センサアレイ全体においてSEL_REG信号を選択しているソースはすべて、論理0に設定され、完全なパルス(立ち上がりおよび立ち下がり)が、シフトレジスタの入力でクロック「CLK」信号に印加される。このプロセス後、すべての選択トランジスタTselはイナクティブになり、どのドライバトランジスタ2860も列出力ライン2802に接続されなくなるであろう。ソース選択信号SEL_REGは次に、In1入力からデータを得るように、シフトレジスタモジュール2810を構成するであろう。これは、すべての画素に、列ごとの完全なシフトレジスタとして、シフトレジスタモジュール2810を構成する。
シフトレジスタ2810に論理1をプログラミングするために、第1の行の入力In1は「1」に固定され、第1の行におけるシフトレジスタのCLK入力にパルスが印加される。これはTselトランジスタを起動し、第1の行のドライバトランジスタ2860を列ライン2802に接続する。第1の論理1がいったんシフトレジスタ2810に注入されると、第1のフレームのフレーム読出し中に他の論理1がシフトレジスタ2810に導入されることを回避するために、第1の行のIn1入力は「0」に変更される。
高速読出チャネル2820は、画素の第1の行に対応するデータを読み、処理ブロック2830は、そのような第1の画素行からのデータを処理する。次に、第1の行のソース選択信号SEL_REGが、シフトレジスタが入力列2804からデータを取り込むことをを可能にするように切替えられる。そのような行についてのCLK信号が立ち上がるまで、これらのデータは取り込まれず、CLK信号が立ち下がるまで、シフトレジスタの出力に設定されない。高速モードで行を読出すことが新たに必要とされるたび(T_row_fast)、プロセスは他の次の行について繰り返される。次に、行は出力に接続され、そのデータが高速読出回路2820によって読出される。この後、すべての行は、入力列2804からデータを読むように再構成され、そのクロック(CLK)は静的なままとなり、シフトレジスタモジュールへの新しいデータの取り込みを回避する。
処理ブロック2830は読出情報を処理し、ある行における1個の画素が、ROIの一部として考えられるべき注目すべきものか否かについて決定する。このブロックがROIの開始を検出した場合、それは、列入力2804において、検出された開始画素のROIストレージを論理1に設定する。同時に、ユーザによって規定されたような上述の多くの行が起動され、そのような行についてのみ、対応するクロック信号CLKを立ち上げる。前述の事項は、ROI開始を印付けるポインタをシフトレジスタブロックに書込みことをもたらすが、このデータは、CLKクロック信号のエッジが立ち下がるまで、これらのそれぞれの画素を出力に接続しない。このプロセスは、最後の行が高速読出モードで読出されるまで、1行ずつ続く。高速読出段階が終了するとすぐに、すべての行におけるすべてCLK信号が立ち下がり、対応する画素が列2402に接続される。これが、高速読出段階の終わりである。
高速読出段階が終了すると、センサアレイの全体制御は、センサをROI読出モード(精密読出モード)となるように構成する。加えて、ドライバトランジスタ2860は、それがソースフォロワのように作動するように、その飽和領域でバイアスをかけられる。ROI読出し段階中、ソース選択信号SEL_REGは起動されない。 上述のように決定(計算)されたROIからの画素は、精密読出チャネル2840を介して読出される。通常動作については、ソース選択信号SEL_REGは、アレイ全体における第1の入力In1を選択するように設定される。この設定は、シフトレジスタモジュール2810を、単一列サイズシフトレジスタとして構成する。同時に、ROIに属するとして選択されたものとは異なる他の画素の起動を回避するために、第1の列についてのシフトレジスタ2810の第1の入力In1は「0」に設定される。
ROIの行の精密な読出しのための時間であるTrowごとに、アレイ全体についてのクロック信号CLKはパルス化され(立ち上がりおよび立ち下がり)、それは、行におけるそれぞれの列に接続されなければならない画素のポインタを、1つ下の行に動かす。このプロセスは、高速読出モードで検出された画素におけるROIの高さと等しい回数、繰り返される。
この発明のこの実施形態の別の延長は、列ごとに複数のROIを規定し、読出すことを可能にする。そのような場合、図22のシフトレジスタ2210は、図29に示すように、「bypass_in」と呼ばれる第2の入力と、「bypass_out」と呼ばれる1つの新しい出力とを有するであろう。(図11および図13を参照してすでに説明したような)ROI間に配置された、各列における画素についてのROIプログラミング中、bypass_in入力は論理「1」に設定されて、シフトレジスタ2910を、その入力「In1」で受信したあらゆる値がその出力「out」に直ちに転送されるように、バイパスで構成する。
このように、バイパスモードにあるシフトレジスタ2910が、ROI読出し中に論理「1」を受信すると、それは次のシフトレジスタに自動的に進み、このプロセスは、バイパスモードにはない、列における次の行のシフトレジスタに、それが達するまで続く。この時点で、ROI読出は通常、上述のように続く。最後に、SEL信号が論理「1」に設定された場合でさえ、バイパスされた画素が出力ラインに決して接続しないように、「bypass_in」という値が「bypass_out」にマッピングされ、否定され、画素に存在する論理ANDゲートの第3の入力として接続される。
要約すると、センサアレイ回路系は有利には、読出中にある画素がスキップされるべきであることを、予め規定された値によって示す、前記画素についてのバイパス表示を格納するためのバイパスストレージ手段と、バイパス表示に対応するバイパス信号を受信するための入力とを含む、シフトレジスタを含み、シフトレジスタは、予め規定された値を有するバイパス信号を受信すると、その選択された入力からその出力に信号を転送するように構成されている。
この発明の別の実施形態によれば、センサアレイの画素内の関心領域ROIを決定するための方法であって、ROIは、第2の読出ステップにおいてセンサアレイから読出されるべき1個以上の画素を含み、前記方法は、1個の画素について行なわれる以下のステップを含み、以下のステップは、第2の読出ステップよりも速い、センサアレイからの画素の第1の読出ステップと、第1の読出ステップによって読出された画素がROIに属するか否かを、読出された画素値に基づいて決定するための処理ステップとを含む、方法が提供される。
図30は、第2のROIの別のサイズについて、図12に示す処理ステップと同様の、列ごとに複数のROIをサポートする実施形態のためのいくつかの処理ステップを示す。特に、図30の左上部分は、ROI決定およびプログラミングの後の状況を示す。特に、2つのROIがある。ROIストレージは、各列における第1の画素と、列ごとまたは画像ごとの第1のROIのカウント(画素でのサイズ)とを格納する。第1および第2のROI間の画素は「B」で印付けられ、つまり、それらは、それぞれの列を読出す際にバイパスされることになっている。第2の関心領域は次に、バイパスされるべきであるとして印付けられていない第1の位置に位置する。
図30の右上部分は、センサアレイのそれぞれの列を読む際にバイパスされるべきであるとして印付けられた画素のバイパスを示す。読出す際、バイパス後の各列における第1のバイパスされない画素は、第2のROIに属する画素として認識され、したがって、3つのROI行を含む第1のROIを読出した後に、シフトレジスタはこの画素に、画素がROIに属することを示す値「1」をコピーする。
図30の底部は、読出された第2の行の第1の行を示す。なお、このROIがより少ない列を有する場合でさえ、それらを読出すことは、1行全体を読出すのと同じ時間がかかる。第2のROIは、読出しの際、単一のROI行からなる。
したがって、センサアレイの画素内の関心領域ROIから画素を読出すための方法であって、ROIは1個以上の画素を含み、前記方法は、画素の第1の読出ステップとそれらの処理ステップとを含む、センサアレイにおけるすべての画素について請求項13に従ってROIを決定するステップと、決定されたROIを識別する情報を格納するステップと、格納された情報に基づいて、格納された情報によって識別されたROIに属する画素のみを読出すための第2の読出ステップとを含む、方法が提供される。
第1の読出ステップと、処理ステップと、格納するステップとは、1つの画素ラインについて少なくとも部分的に並行して行なわれてもよい。図31は、この発明の一実施形態に従ったROI決定のフロー図を示す。したがって各行について、アナログストレージFDに集積された近似画素値を得るために、高速読出し3120が行なわれる。読出された値は、それらがROIに属するか否かを決定するために処理され(3120)、結果が格納される(3130)。上述のように、フローチャートは、すべてのステップ3110〜3130によって各行を完全に処理する必要はない。それは、3つのステップによっていくつかの行を並行して処理してもよい。
なお、ROI決定アプローチは、次のROI書込およびROI読出アプローチに関係なく使用されてもよい。また、ROIプログラミングおよび読出しは、特定のROI決定アプローチとは独立して作動してもよい。ROIはさらに、上述したものとは別のやり方で予め規定され、または決定されてもよい。また、決定は各フレームについて行なわれてもよいが、それは各フレームについて行なわれる必要はなく、これは主として、用途の要件によって与えられる。たとえば、ROI更新は、M個のフレームごとに行なわれてもよく、ここでMは、1から一連のフレームにおけるフレーム数までの整数である。図面を参照して説明した例は、行が選択され、列が1行ずつ読出されるアーキテクチャを指す。しかしながら、これは交換されてもよい。上述の説明の数カ所で使用された画素の「ライン」という用語は、行および列のいずれかを指す。
この発明の別の実施形態は、ハードウェアおよびソフトウェアを使用する上述のさまざまな実施形態の実現に関する。この発明のさまざまな実施形態は、コンピューティング装置(プロセッサ)を使用して実現され、または実行されてもよい、ということが認識される。コンピューティング装置またはプロセッサは、たとえば、汎用プロセッサ、デジタル信号プロセッサ、特定用途向け集積回路、フィールド・プログラマブル・ゲートアレイ、または別のプログラマブル・ロジックデバイスであってもよい。この発明のさまざまな形はまた、これらの装置の組合せによって実行され、または具体化されてもよい。
要約すると、この発明は、センサアレイ画素を読出すことに関する。特に、この発明は、センサアレイから関心領域のみが読出され得るようにするアプローチを提供し、このため、かなりの時間節約をもたらす。
これを達成するために、この発明の一実施形態によれば、センサアレイについての関心領域を構成するための回路系と、関心領域に属する画素を読出すための読出回路系とが提供される。加えて、関心領域をプログラミングするための、および関心領域を読出すための対応する方法が提供される。関心領域をプログラミングし、および/または読出すための回路系は、ある画素が関心領域(ROI)に属するかどうかという表示を格納するための、画素ごとに提供されるストレージ素子を含む。これらは、プログラミング回路系によって、および、読出の際にROIの画素のみを読出すためにROIを使用して、構成される。
この発明の別の実施形態によれば、センサアレイからのROIの自動決定およびROIの読出しのための回路系が提供される。回路系は、センサアレイの画素を読出すための精密読出回路系よりも精度は低いものの高速である、高速読出回路系を含む。高速読出回路系は、低レベルの精度で画素を読出し、高速読出画素の処理によってROIを決定し、ROIは次にROI識別を格納するためのROIプログラミング回路に提供され、それにより精密読出回路に提供され、それは次に、ROIに属すると決定された画素のみを読出す。精密読出回路は、高速読出回路よりも遅い。