JP2015144386A - 撮像装置およびそれを有する撮影装置 - Google Patents

撮像装置およびそれを有する撮影装置 Download PDF

Info

Publication number
JP2015144386A
JP2015144386A JP2014017341A JP2014017341A JP2015144386A JP 2015144386 A JP2015144386 A JP 2015144386A JP 2014017341 A JP2014017341 A JP 2014017341A JP 2014017341 A JP2014017341 A JP 2014017341A JP 2015144386 A JP2015144386 A JP 2015144386A
Authority
JP
Japan
Prior art keywords
read
time
row
accumulation
skip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014017341A
Other languages
English (en)
Other versions
JP2015144386A5 (ja
JP6338385B2 (ja
Inventor
真吾 磯部
Shingo Isobe
真吾 磯部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2014017341A priority Critical patent/JP6338385B2/ja
Priority to US14/608,627 priority patent/US9826175B2/en
Publication of JP2015144386A publication Critical patent/JP2015144386A/ja
Publication of JP2015144386A5 publication Critical patent/JP2015144386A5/ja
Application granted granted Critical
Publication of JP6338385B2 publication Critical patent/JP6338385B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/40Extracting pixel data from image sensors by controlling scanning circuits, e.g. by modifying the number of pixels sampled or to be sampled
    • H04N25/44Extracting pixel data from image sensors by controlling scanning circuits, e.g. by modifying the number of pixels sampled or to be sampled by partially reading an SSIS array
    • H04N25/445Extracting pixel data from image sensors by controlling scanning circuits, e.g. by modifying the number of pixels sampled or to be sampled by partially reading an SSIS array by skipping some contiguous pixels within the read portion of the array
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/50Control of the SSIS exposure
    • H04N25/53Control of the integration time
    • H04N25/531Control of the integration time by controlling rolling shutters in CMOS SSIS

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)
  • Studio Devices (AREA)

Abstract

【課題】 イメージセンサの一部領域の読出しおよびスキップ動作を行っても読出し対象行の各行間の露光時間差を低減する。【解決手段】 撮像装置は、ローリングシャッター方式のイメージセンサの一部の領域の画素データを読出して出力することが可能な撮像装置であり、センサからのデータ読出し制御に関する読出し条件を設定する読出し条件設定手段と、イメージセンサの蓄積時間を設定する蓄積時間設定手段と、読出し条件に基づき蓄積時間に対応するカウント数を設定するカウント数設定手段と、読出し条件に基づき、イメージセンサの撮像領域内で読出し又は蓄積に関する処理をスキップ行を設定するスキップ設定手段と、カウント数とスキップ行とに基づき、読出し条件に関わらず一定の蓄積時間となるように、イメージセンサの蓄積及び読み出しを制御する制御手段と、読出された画素信号を出力するための画像信号出力手段と、を有することを特徴とする。【選択図】 図1

Description

本発明は、撮像装置に関するものであり、特に部分読出し機能やスキップ読出し機能を有する撮像装置およびそれを有する撮影装置に関するものである。
工場の製造ラインで人間の検査者が行う目視検査の代わりに、画像入力用の撮像装置が用いられてきている。これらの撮像装置は、マシンビジョンカメラとも呼ばれ、各種部品や製品をコンピュータやデジタル入出力機器とともに検査するために用いられている。近年では、検査精度を向上させるために、1000万以上の画素を有する撮像装置が使用されるようになってきた。また、民生用のデジタルカメラにおいても同様で、撮影画質を向上させるためにますます多画素化が進んでいる。
多画素化、高画質化のニーズが高まってきたことを受け、近年ではカメラに用いられる撮像素子としてはローリングシャッター方式のCMOSセンサが多く用いられている。ローリングシャッター方式では、撮像素子の行ごとに順次露光させる方式である。このため、センサに露光させるための露光時間の設定も行単位で行われる。
このような撮像装置で動画を撮像し、画素配列の全画素から信号を読み出す場合、画素数が多いと読出し時間が長くなる。これにより、動画撮影の場合、1秒あたりの撮像枚数が減少する。また、撮像した映像を外部に出力するデータ量が多くなるため、フレームレートが低下する。例えば、マシンビジョンカメラでは、撮像する画素数に伴って、読出し時間の合計時間が変化するとともに、撮像装置外部に送出する画素数に伴って、フレームレートが変化することとなる。
マシンビジョンカメラが用いられる検査システムでは、検査時間の短縮化も同時に求められている。そこで、カメラで撮像される領域のうち、関心領域のみの画素信号を読み出すことによって読出し画素数を減らし、これによりフレームレートを高速化することが行われる。フレームレートが高速化することができれば、システム全体の検査時間を短縮することができる。
一方、ローリングシャッター方式では、光電変換のための蓄積処理と光電変換された信号の読出し処理とが密接に連携している。例えば、関心領域の選択によって読出し時間の合計時間が短縮化されると、センサの一部の領域における蓄積時間が変化する場合がある。このとき、センサ全域に一様な露光時間とならないため、輝度ムラが発生する可能性がある。
そこで、特許文献1では、1枚の撮影シーケンスにおいて、行ごとに蓄積時間が異なる場合、その蓄積時間の差による輝度差を補正値により補正している例が開示されている。特許文献1によれば、行をスキップすることにより発生する行間の輝度のギャップを低減させることができるとしている。
また、特許文献2では、スキップ読出し時に、イメージセンサのNULL領域およびOB領域をスキップした際に発生する画質の劣化を課題としている。OB領域の撮像信号に基づいて、撮影画像の黒レベルを決めるため、OB領域をスキップしてしまうと黒レベルの精度が悪化する可能性がある。そこで、特許文献2では撮像信号の読出し時、NULL領域はスキップし、OB領域は読み出すことで、画質の劣化を低減させている。
特許4757013号公報 特開2010−130398号公報
しかしながら、特定の撮影条件においては、特許文献1で示されているような補正値やオフセット手段による補正が有効であるといえるが、様々な撮影シーンに対応するためには膨大な補正値を保持する必要がある。また、このような補正処理を撮影後に後処理した場合は、画質が低下してしまう可能性がある。
特許文献2では、ローリングシャッターの長い露光における撮像では効果が見られるが、高速シャッターを用いた場合は、行間における露光時間の違いが生じ、輝度ムラが発生する可能性がある。
一方で、検査用途で用いられるカメラは、様々な露光時間が設定され、スキップ設定値もニーズに応じて様々である。これに加え、検査用途のカメラでは、高画質で高精細な撮影画像が求められる。画質を最適に保つためには、1枚の撮影シーケンスにおいて、あるいは動画撮影時のフレーム間において、イメージセンサの全領域が同じ蓄積時間で露光されることが望ましい。
本発明の目的は、ローリングシャッター方式のイメージセンサを備える撮像装置において、様々な露光時間およびスキップ読出しに対応し、かつ輝度ムラを低減させることができる撮像装置およびそれを有する撮影装置を提供することである。
本発明の撮像装置は、ローリングシャッター方式のイメージセンサの一部の領域の画素データを読出して出力することが可能な撮像装置であって、イメージセンサからの画素データ読出し制御に関する条件である読出し条件を設定するための読出し条件設定手段と、イメージセンサの蓄積時間を設定するための蓄積時間設定手段と、読出し条件に基づき蓄積時間に対応するカウント数を設定するカウント数設定手段と、読出し条件に基づき、イメージセンサの撮像領域内で読出し又は蓄積に関する処理をスキップする行であるスキップ行を設定するスキップ設定手段と、カウント数とスキップ行とに基づき、読出し条件に関わらず一定の蓄積時間となるように、イメージセンサの蓄積及び読み出しを制御する制御手段と、制御手段によって読出された画素信号を出力するための画像信号出力手段と、を有することを特徴とする。
本発明によれば、関心領域の設定変更があっても露出が維持され、かつ関心領域の設定変更に伴う画質の悪化を低減可能な撮像装置およびそれを有する撮影装置を提供することができる。
本発明の実施例1の撮像装置の構成図 実施例1の撮像装置のイメージセンサの構造図 実施例1の撮像装置の撮像制御の例 実施例1の撮像装置の撮像制御の例 実施例1の撮像素子における読出し対象行の設定例 実施例1の撮像装置の読出し処理のフローチャート 図6の読出し処理のステップS130のサブルーチン 図6の読出し処理のステップS140のサブルーチン 図6の読出し処理のステップS150のサブルーチン 図6の読出し処理のステップS160のサブルーチン 実施例1の撮像装置における蓄積・読出し方式Aのタイミングチャート 実施例1の撮像装置における蓄積・読出し方式Bのタイミングチャート 実施例2の撮像素子における読出し対象行の設定例 実施例2の撮像装置の読出し処理のフローチャート 図14の読出し処理のステップS220のサブルーチン 実施例2の撮像素子における読出し対象行の説明図 図14の読出し処理の実施例2におけるステップS300のサブルーチン 実施例2の撮像装置における蓄積・読出し方式Aのタイミングチャート 実施例2の撮像装置における蓄積・読出し方式Bのタイミングチャート
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。図1は、本発明の実施形態にかかわる構成図である。
図1に本発明の第1の実施例の撮像装置の構成図を示す。
撮像装置100は、イメージセンサ101を含む撮像系を有し、センサ制御部102およびADC(AD変換器)103、アドレスカウンタ104によって撮像処理を行う。レンズ200は、撮像装置100の外部に構成され、撮像装置100とレンズ200で撮影装置を構成する。レンズ200を通った光束は、撮像装置100のイメージセンサ101上に結像する。レンズ200は、不図示の絞り群、変倍レンズ群、フォーカスレンズ群などの要素から構成される。また、レンズ200に構成される変倍レンズ群は、焦点距離が可変でも固定でも良い。センサ制御部102は、イメージセンサ101の蓄積動作や読出し動作の制御を行う。センサ制御部102によってイメージセンサ101の撮像処理を行うと、イメージセンサ101からは撮像信号が出力され、ADC103にてAD変換される。アドレスカウンタ(スキップ設定手段)104は、センサ制御部102が蓄積制御と読出し制御を行うイメージセンサ101の対象行あるいは対象画素となるアドレスを算出する。イメージセンサ101からのスキップ読出しを行う場合は、イメージセンサ101の全画素のうち、読出しを行う画素を対象画素としてアドレス出力し、読出し対象とならないアドレスはスキップする。タイミング信号合成部105は、ADC103からの撮像信号データとアドレスカウンタ104からの信号とを、センサ制御部102を介して入力し、撮像信号データに対し、フレーム同期信号や垂直同期信号、水平同期信号などを合成する。
読出し条件設定手段300は、撮像装置100の外部から、前記イメージセンサからの画素データ読出し制御に関する条件である、関心領域(読出し領域)となる領域の座標データやスキップ単位行数等を設定する。スキップ単位行数についての説明は後述する。たとえば、読出し条件設定手段300としてPCを使用する。読出し条件入力部107は、読出し条件設定手段300で入力された設定データを入力し保持する。
蓄積時間設定手段400は、撮像装置100の外部から撮像装置100のシャッター速度としての蓄積時間を設定する。読出し条件設定手段400として、たとえばPCを使用する。蓄積時間入力部108は、イメージセンサ101の全画素を蓄積及び読出しするための範囲設定値を保持している。なお、前述の読出し条件設定手段300と蓄積時間設定手段400とを同一のPC内に構成しても良い。
蓄積制御部109は、読出し条件入力部107と蓄積時間入力部108からの設定データを入力する。また、蓄積制御部109は、読出し条件入力部107で保持された読出し設定データを、センサ制御部102を介してアドレスカウンタ104へ出力する。
画像信号出力部(画像信号出力手段)106は、タイミング信号合成部105から出力される撮像信号データにおいて、読出し条件入力部107で入力された読出し領域と、撮像信号の各関心領域の座標の対応が取れるように、必要なタイミング信号を加え、出力画像信号を生成する。画像信号出力部106は、タイミング信号合成部105で生成された出力画像信号を撮像装置100の外部へ出力する。
図2にイメージセンサ101の構造図を示す。図2のImgは、撮像素子を示している。図2中の11から33までは、撮像素子Imgに構成される画素配列の一部を示している。撮像素子Imgの撮像領域内の各画素には、V1、V2、V3、・・・およびH1、H2、H3を通じて、垂直回路1011および水平回路1012に接続されている。
図2の垂直回路1011へは、3つの制御線ChargeReset、ReadReset、LineShiftが接続されている。これらの制御線は、図1のセンサ制御部102と接続されている。垂直回路1011内部には、不図示の蓄積対象行選択レジスタと読出し対象行選択レジスタが構成されている。各行選択レジスタは、撮像素子Img中の各ラインの蓄積対象行と読出し対象行をそれぞれ選択することができる。制御線ChargeResetは、各行選択レジスタによって選択されている蓄積対象行を先頭行にリセットし、先頭行の蓄積を開始する。制御線ReadResetは、行選択レジスタによって選択されている読出し対象行を先頭行にリセットする。制御線LineShiftは、行選択レジスタが選択している蓄積対象行と読出しし対象行をインクリメントするための制御線である。制御線LineShiftにHi信号を1回入力すると、各行選択レジスタが選択している対象の次の行が参照される。本実施例では、制御線LineShiftが1本の場合の例について説明するが、蓄積対象行選択レジスタと読出し対象行選択レジスタが参照する行を個別にインクリメントするために別々に構成しても良い。
図2の水平回路1012へは、2つの制御線TransferH、Hpulseが接続されている。これらの制御線は、上述の垂直回路1011と同様に、図1のセンサ制御部102に接続されている。上述の制御線LineShiftへのワンショットパルス入力後、制御線TransferHは、垂直回路1011の行選択レジスタによって選択されている読出し対象行の画素データを水平回路1012に転送する。例えば、行選択レジスタによって選択されている読出し対象行がV2のとき、制御線TransferHによって、21、22,23の撮像信号が水平回路1012に転送される。制御線Hpulseは、水平回路1012に転送された撮像信号を読み出すための制御線である。制御線Hpulseに読出し制御のためのパルスが入力されると、図2のアンプ1013を通じて、outから撮像信号がアナログ出力される。この撮像信号は、図1のADC103に接続されている。ADC103は制御線Hpulseに同期して、ADC103に入力された撮像信号をAD変換する。制御線Hpulseは、読出しを行う画素数分のクロックを発生している。
ここで、イメージセンサ101の撮像制御の例について図3および図4を用いて説明する。イメージセンサ101はローリングシャッター方式のイメージセンサである。ここでは、イメージセンサ101の読出し対象行数をn行として説明する。後述するが、読出し対象となるn行分の読出し時間と1行あたりの蓄積時間を比較し、その大小関係で2種類の撮像制御方式を切り替える。1行あたりの蓄積時間がn行分の読出し時間以上である場合における撮像制御の例を図3に示す。
図3では、前述の垂直回路1011に制御線ChargeResetとReadResetおよびLineShiftが接続された図と、上部にタイミングチャートを示している。図3では横軸が時間方向を示している。また、図3下部の縦軸はイメージセンサ101の行方向の蓄積・読出しイメージを示している。まず、時間p01で制御線ReadResetとLineShiftにパルスを入力することで、イメージセンサ101の第1行目の読出しを開始している。時間p01での制御線LineShiftパルスの入力後、図3では不図示の水平回路1012の制御線TransferH、Hpulseを用いて、第1行目の画素信号の読出しを行っている。画素信号の読出し時には、図1のADC103によって制御線Hpulse に同期したAD変換がなされる。図3で示すTReadlineは、1行分の画素信号の読出しに要する時間である。1行分の読出しが完了した後、時間p02で制御線LineShiftおよびChargeResetにワンショットパルスを入力している。なお、Treadlineは、p01とp02の間隔時間と同等である。また、TReadlineは、時間p01、p02などで入力される制御線LineShiftへのワンショットパルスのHi時間よりも十分長い。ここでは、垂直回路1011の行選択レジスタによって、読出し対象行は第2行が選択され、蓄積対象行として第1行が選択されている。時間p01からp02にかけて第1行の画素信号が読みだされた後、時間p02において第1行の蓄積を開始することとなる。また、時間p02からp03にかけて前述と同様にしてTReadlineの時間で第2行の画素信号が読みだされることとなる。また、図3の「読出し中の領域」「蓄積中の領域」で示されるように、各行間はTReadlineの時間分の時間差で、蓄積および読出しが行われることとなる。以下同様にして、時間p01からp0nまでの時間においてイメージセンサの最終行nまでの蓄積と読出しが行われると、再び時間p11で第一行目からの読出しが行われる。時間p11では、上述の時間p01で行われた水平回路1012への処理と同様の処理が行われる。また、時間p11で読みだされる第一行目の撮像信号は、時間p02からp11までに蓄積されたものである。また、例えば、時間p12で読みだされる第二行目の撮像信号は、時間p03からp12までに蓄積されたものである。時間p01からp0nまでで読みだされる撮像信号は、カメラ起動後の第0フレームであり、ダミーの読出しとしている。図3に示すFrameValid信号は、上記第0フレームにおいて蓄積された撮像信号を読み出す時間p11以降、すなわち第1フレーム以降の毎フレームで有効とし、時間p01からp0nまでに読みだされる第0フレームの撮像信号を無効としている。
このように、図3では、時間p01からp0nまで順次第0フレームの読出しを行いつつ、p02以降は各行で第1フレームとして出力するための蓄積動作を順次開始させている。図3で示すように、第一行から最終行nまでの読出し時間をTread_Aとして図示している。上述のTreadlineに行数nを掛けた時間がTread_Aとなる。Tcharge_Aは、第一行の蓄積時間を示している。図3では第一行から最終行nまでの各行の蓄積時間Tcharge_AはTcharge_A0と等しく、一様である。また、図3に示すTread_AをTread、Tcharge_AをTchargeとすると、図3におけるTchargeとTreadの関係は以下の式(1)の通りである。
Tcharge ≧ Tread ・・・(1)
上述の式(1)の関係とは異なり、以下の式(2)で示す関係の場合、図4に示すような撮像制御を行う。
Tcharge < Tread ・・・(2)
図4では図3と同様に、垂直回路1011に制御線ChargeResetとReadResetおよびLineShiftが接続され、上部にタイミングチャートを示している。まず、時間p01で制御線ChargeResetおよびLineShiftにワンショットパルスを入力することで、イメージセンサ101の第1行目の蓄積を開始する。次に、時間p02で制御線LineShiftにワンショットパルスを入力することで、第2行目の蓄積を開始する。時間p01とp02の間隔時間は、図3と同様にTreadlineである。同様にして、Treadline分の時間間隔で、すなわち時間p01, p02, ・・・ p0k, ・・・ で制御線LineShiftにワンショットパルスを入力していく。このように制御線LineShiftにワンショットパルスを入力していくことによって、イメージセンサ101の第1行、第2行、・・・ 第k行、・・・というようにTreadlineの時間ずれを伴って順次蓄積を開始していく。そして、時間p01+Tcで制御線ReadResetおよびLineShiftにワンショットパルスを入力すると、イメージセンサ101の第1行の蓄積を終了させる。時間p01+Tcでのワンショットパルス入力後、前述の図3と同様に、不図示の水平回路1012の制御線TransferH、Hpulseを用いて、第1行目の画素信号の読出しを行う。ここでは、時間p01からp01+Tcまで、すなわち、Tcharge_Bの蓄積時間で蓄積された撮像信号を読み出す。ここで、Tcとは一行あたりの蓄積時間Tcharge_BをTreadlineで割った値である。また、時間p01+Tcでは、第1行の読出しと同時に第Tc行の蓄積を開始している。以降、図3と同様の読出し方法により、時間p01+Tc以降、Treadlineの時間差を伴って、最終行である第n行目まで順次1行ずつ読出しが行われる。このようにイメージセンサ101の全行を読み出す時間はTread_Bで与えられる。読出しライン数が等しければ、Tread_Bは図3で示したTread_Aと等しい。
このように、式(2)の条件における図4の撮像制御では、読出し時間よりも蓄積時間の方が短い場合に行われる撮像制御の一例であり、第一行の読出しが開始した時刻以降に、第Tc行以降の蓄積が開始されていく。連続的に撮影を行う場合は、読出し対象とする行すべての読出しが終了した後に、次のフレームの蓄積や読出しを行う。
以上の撮像制御の例を踏まえ、本実施例では、撮像信号を4行単位で読出しおよびスキップを行う撮像例について説明する。図5にイメージセンサ101が2000行の撮像素子で構成されている例を示す。本実施例では、斜線部で示すように4k行(kは自然数)を読み出し、かつ4k-1行、4k-2行、4k-3行をスキップする場合において、各行の蓄積時間を同等とする例について説明する。本実施例において撮像装置100が行う処理のフローチャートを図6に示す。撮像装置100に電源が投入されると、図6に示すステップS110から順番に処理を実行していく。
まず、図6のフローチャートのステップS110ではスキップ設定の入力を行う。前述の図1の読出し条件設定手段300によって、読出し条件入力部107を通じて入力される。ここでは、スキップ設定値としてスキップ単位を入力する。本発明において、スキップ単位とは、読出し行とスキップ行の繰り返しの単位パターンの行数を表現するための単位と定義する。上述したように、本実施例では4行を単位として読出しおよびスキップを行うため、スキップ単位としては「4」となる。つまり前述のスキップ単位の定義によれば、1行の読出しと3行のスキップを行うことを意味する。読出設定値は図1の読出設定入力部107で保持され、蓄積制御部109に入力される。図6のステップS110が実行されると、次にステップS120へ進む。
ステップS120では、所謂シャッター速度(蓄積時間の入力を行う。ここでは、図1の蓄積時間設定手段400によって、蓄積時間入力部108を通じて入力される。蓄積時間は図1の蓄積時間入力部108で保持され、蓄積制御部109に入力される。蓄積時間は一般的には1/250、1/500などで示され、単位として「秒」が用いられることが多いが、「ミリ秒」として実施しても良い。本発明で説明する蓄積時間とは、あくまで実時間としての時間である。図6のステップS120が実行されると、次にステップS130へ進む。
ステップS130では、蓄積制御部(カウント数設定手段)109において蓄積行数の変換演算を行う。図6のステップS130のサブルーチンを図7に示す。まず、図7のステップS131では、イメージセンサ101の1行あたりの読出し時間を算出する。図3および図4での説明の通り、TReadlineは1行分の画素信号の読出しに要する時間である。TReadline は、制御線LineShiftへのワンショットパルスから制御線TransferHによる読出し対象行の画素データ転送までの時間と、制御線Hpulseによる読出し時間とを加算した時間である。このうち、制御線TransferHによる読出し対象行の画素データ転送までの時間は、あらかじめ固定値として保持して良い。また、Hpulseによる読出し時間については、1行あたりの読出し画素数に依存するため、読出しパルス周期時間に1行あたりの読出し画素数を乗じた時間に、所定のオーバーヘッド時間を加算した時間を算出する。なお、制御線Hpulse読出しパルス周期は、イメージセンサ101の仕様で定められる固定の時間として良い。これら上述の固定値は、不図示のメモリに保持しておいても良いし、センサ制御部102あるいは蓄積制御部109などで保持しておいても良く、実装手段は限定されない。図7のフローチャートの説明に戻る。ステップS131にて1行あたりの読出し時間が算出されると、ステップS132へと進む。
図7のステップS132では、蓄積行数の算出を行う。ここで、「蓄積行数」とは、ステップS120で入力された蓄積時間を、ステップS131で算出された1行あたりの読出し時間で割ることによって算出される値である。蓄積時間と1行あたりの読出し時間が与えられると、蓄積時間を蓄積行数という単位に変換することができる。蓄積行数という単位を用いることによって、1行あたりの読出し画素数および読出し時間に依存せずに蓄積時間(シャッター速度、露光時間)を扱う(制御する)ことが可能となる。すなわち、読出し開始或いは蓄積開始(蓄積リセット)を指令するとともに、対象行を次の行に移すために使用される制御パルスをカウントすることにより、読出し開始及び蓄積開始と蓄積時間とをシンクロさせて制御することが可能となる。蓄積行数を制御に使用するため、蓄積行数は整数である必要があり、小数点以下の値については切り捨てても良いし、四捨五入するなどしても良い。本発明においては、このようにして丸められた整数の蓄積行数(カウント数)を蓄積時間設定手段400より入力された蓄積時間に対応する値として用いて制御を行う。しかし、蓄積時間(シャッター速度)及び蓄積時間として通常設定可能な間隔に対し、1行あたりの読出し時間が非常に短いことを考慮すると、上記の丸め処理で得られる蓄積行数と設定された蓄積時間は、制御に対して十分に対応している値であると言える。ステップS132が実行されると、図7のサブルーチンを終了し、図6のステップS140に進む。
図6のステップS140では蓄積・読出し方式の設定を行う。ステップS140の蓄積・読出し方式の設定のサブルーチンを図8に示す。図8ではまずステップS141にて、関心領域(読出し対象)の範囲に含まれる行数である読出し行数の算出を行う。本実施例では図5に示した通り、読出し対象は2000行である。そのため、ステップS141において、読出し行数は2000行となる。
図8のステップS141が実行されると、ステップS142へと進む。ステップS142では、ステップS132で算出された蓄積行数と、ステップS141で算出された読出し行数の大小比較を行う。なお、ステップS142の評価式は、前述で説明した式(1)の両辺を1行あたりの読出し時間Treadlineで割った条件式(1a)と等価である。
蓄積行数(=Tcharge/Treadline) ≧ 読出し行数(Tread/Treadline) ・・・(1a)
ステップS141において、蓄積行数が読出し行数以上である場合、すなわち前述の式(1)において、蓄積時間が読出し時間よりも長い場合、ステップS142の判定は真となり、ステップS143へと進む。一方、ステップS142にて、蓄積行数が読出し行数未満である場合は、ステップS144へと進む。ステップS142が偽である条件式は、前述の式(2)の両辺をTreadlineで割った条件式(2a)と等価である。
蓄積行数(=Tcharge/Treadline)<読出し行数(Tread/Treadline) ・・・(2a)
図8のステップS143では、蓄積・読出し方式Aを設定する。蓄積・読出し方式Aとは、図3で説明したような蓄積・読出し方式であり、イメージセンサの読出し対象行からの読出しが終了した後に、該読出し対象行の蓄積を開始するとともに該読出し対象行の次の行の読出しを開始する蓄積読出し方式である。また、ステップS144では、蓄積・読出し方式Bを設定する。蓄積・読出し方式Bとは、図4で説明したような蓄積・読出し方式であり、イメージセンサの読出し対象行の蓄積を開始させた後、該読出し対象行から蓄積行数後の行の蓄積を開始するときから該読出し対象行の読出しを行う蓄積読出し方式である。図8のステップS143あるいはステップS144が実行されると、図8のサブルーチンを終了し、図6のステップS150へと進む。
図6のステップS150では、蓄積行数補正の処理が行われる。ステップS150のサブルーチンを図9に示す。図9では、まずステップS151では、蓄積・読出し方式Aが設定されている場合、ステップS152へと進み、蓄積・読出し方式Bが設定されている場合、ステップS153へと進む。
図9のステップS152では、蓄積行数の補正量として、ステップS141で算出された読出し行数にスキップ率を掛けた値が算出される。単位は「行」である。読出し行数は、図5で示した通り2000行である。また、スキップ率は、図6のステップS110で設定されたスキップ単位行数から求めることができる。スキップ率の算出式を以下の式(3)に示す。
スキップ率 = 1 − 1 / スキップ単位行数 ・・・(3)
前述の通りスキップ単位行数は「4」である。スキップ率は「3/4」となる。よって、ステップS152で設定される補正量は、2000行×(3/4)より、1500行となる。ステップS152が実行された後は、ステップS154へと進む。ステップS154では、蓄積行数に補正量を加算し、蓄積行数を更新する。例えば、図7のステップS132で算出された蓄積行数を2000行とすると、前述の補正量1500行を加算し、得られる補正後の蓄積行数は3500行となる。
図9のステップS153では、ステップS132で算出された蓄積行数を読出し率で割った値が算出され、補正された蓄積行数として更新される。読出し率は、以下に示す式(4)または式(5)から求めることができる。本実施例の説明で用いてきたスキップ単位行数が「4」であるとき、読出し率は「1/4」となる。
読出し率 = 1 / スキップ単位行数 ・・・(4)
読出し率 = 1 − スキップ率 ・・・(5)
図9のステップS153で算出される蓄積行数の単位はステップS152と同様の「行」である。蓄積・読出し方式Bとなる条件は、蓄積行数が2000行未満の場合である。これを満たす例として、蓄積行数が300行である場合、読出し率「1/4」で除算すると、補正後の蓄積行数は1200行が得られる。図9のステップS153あるいはS154が実行されると、ステップS155へと進む。
図9のステップS155では、蓄積行数のマスク処理が行われる。撮影画面で一様な露光時間を得るためには、様々なスキップ設定値に対し、読出し対象行のすべての行において、蓄積時間を同一にする必要がある。すなわち、イメージセンサ101の各行において、蓄積行数が同じでかつ、実時間としての蓄積時間が同じである必要がある。これらを満たすためには、補正後の蓄積行数がスキップ単位行数の整数倍であることが必要となる。補正後の蓄積行数がスキップ単位行数の整数倍ではない場合、イメージセンサ101の特定の行で余計な時間分、蓄積が行われる場合がある。そこで、補正後の蓄積行数をスキップ単位行数の整数倍にマスクする。例えば、図9のステップS153で算出された補正後の蓄積行数1203行の場合、スキップ単位行数「4」の整数倍ではないため、ステップS155でマクス処理を適用すると、補正後の蓄積行数は1200行となる。本実施例ではステップS153で算出された補正後の蓄積行数1200行であるのでもともとスキップ単位行数「4」の整数倍であり、ステップS155の処理を適用した結果は1200行となり変わらない。タイミングチャートを用いた詳細な説明は、図6のステップS160で後述する。
なお、マスクする値は、スキップ単位行数の整数倍が望ましいが、イメージセンサ101を制御するためのオーバーヘッド処理時間を考慮する場合は、例えばマスク値を整数倍+1などとしても良い。本発明を適用する場合に、イメージセンサ101の仕様に合わせて、ステップS155でマスクされる値は任意の値で良い。図9のステップS155が実行されると、図9のサブルーチンを終了し、図6のステップS160へ進む。
図6のステップS160では蓄積・読出し処理が行われる。ステップS160のサブルーチンを図10に示す。図10では、ステップS161から順番に処理が実行される。図10のステップS161では、図9のステップS151と同様に、ステップS143あるいはS144で設定された蓄積・読出し方式を評価する。蓄積・読出し方式Aが設定されている場合、ステップS162へと進む。一方、蓄積・読出し方式Bが設定されている場合、ステップS163へと進む。
図10のステップS162について説明する。ステップS162では、蓄積・読出し方式Aの撮像処理が実行される。蓄積・読出し方式Aの撮像処理について、図11を用いて説明する。
図11では、図3と同様に、垂直回路1011に制御線ChargeResetとReadResetおよびLineShiftが接続され、上部にタイミングチャートを示している。図10のステップS162すなわち図11では2000行で構成された例のイメージセンサ101の撮像制御の例について説明する。ここでは、図6のステップS110で設定されたスキップ単位行数「4」と、図9のステップS155で算出された蓄積行数3500行という設定内容に基づいて説明する。
図11では、まず時間p01で制御線ReadResetとLineShiftにワンショットパルスを入力することで、イメージセンサ101の第1行目の読出しを開始している。そして、時間p01における制御線LineShiftワンショットパルスの入力後ただちに、不図示の時間p02、p03、p04において、制御線LineShiftにワンショットパルスを連続的に入力している。時間p02においては、制御線ChargeResetに対してもワンショットパルスが入力されている。
図3の例では時間p01における制御線LineShiftパルスの入力後、第1行目の画素信号の読出しを行っていることの説明をした。図11の時間p01からp04まででは、第1行目から第3行目の読出しをすることなく、第4行目への読出し選択へ移行していることとなる。すなわち、第1行目から第3行目までのスキップを行っている。p04における制御線LineShiftパルスの入力後、イメージセンサ101の第4行目の読出しを開始している。
ここでは、図3と同様に不図示の水平回路1012の制御線TransferH、Hpulseを用いて、第4行目の画素信号の読出しを行っている。図3での説明と同様に、画素信号の読出し時には、図1のADC103によって制御線Hpulse に同期したAD変換がなされる。第4行目の画素信号の読出しが終了すると、次に時間p05にて時間p01と同様に、制御線LineShiftへのワンショットパルスが入力される。その直後に時間p06からp08までにかけて、時間p02からp04と同様に、制御線LineShiftへのワンショットパルス入力が連続的に行われ、第8行目の読出しが行われる。このようにして、図11では、イメージセンサ101の4行単位でのスキップおよび読出しを行っている。
図11で示すTReadlineは、1行分の画素信号の読出しに要する時間である。図11では、時間p01からp04までの時間は十分短く、上述の4行単位のスキップおよび読出し時間を合わせた時間が図3のTReadlineと等しい。これらを一般化し、n行の読出し行数に対し、時間p0n-3およびp0nまでは、スキップ単位行数-1行(=3行)分のスキップを行い、1行分を読み出している。本実施例の例では、2000行で構成されたイメージセンサ101を用いているため、n = 2000となる。n以降の時間では、図3と同様にTReadlineの間隔で制御線LineShiftにパルスを入力していく。n以降の時間で、一定のTReadlineの間隔で制御線LineShiftにパルスを出力し続けるのは、この間に蓄積を継続している行は制御線LineShiftのパルスのカウント数で時間を管理しているため、一定間隔のパルスを出力し続ける必要があるためである。そして、時間p0endまで制御線LineShiftにパルスを入力すると、時間p11以降で前述と同様に、4行単位でのスキップ処理および読出し処理が行われる。なお、時間p0endのendは蓄積行数であり、例えば、補正後の蓄積行数が3500行である場合、end = 3500 となる。制御線LineShiftへのワンショットパルスをカウントしていき、蓄積行数分カウントすると、イメージセンサ101にその時間分の蓄積がされることとなる。
図11において、2000行分の画素信号の読出し時間Tread_A1は、前述の通り、4行単位のスキップおよび読出し処理が行われるため、図3で示したTread_Aの4分の1の時間、すなわち500行分の読出し時間となっている。読出し行数が4分の1となったことによって、各行への蓄積行数が1500行分短くなってしまう。具体的には、図3では、時間p0nにおいて、蓄積行数2000行分(入力された蓄積時間)が確保されていたが、図11では、p0nの時間において、第1行目は500行分の蓄積行数となっている。言い換えると、時間p0nにおいて、制御線LineShiftパルスは全行数の2000回カウントされているが、実時間としてはスキップ読出ししているため、TReadline×500、が経過していることになる。従って、時間p0nから、実時間でTReadline×500の時間さらに蓄積する必要がある。そこで、図9のステップS154で補正されたように、時間p0endまでの残り蓄積行数1500行分の時間を追加で蓄積させる。すなわち、図3の蓄積時間Tcharge_Aと図11の蓄積時間Tcharge_A1とが実時間で同等となるように撮像制御している。すなわち、読出し対象範囲内のスキップ読出しで読み出されるべき行を一定時間間隔で読出すために、スキップする1500行分に対しては無視できる程度の短時間でLineShiftパルスが入力される。従って、同じ制御線LineShiftパルスのカウントで管理する蓄積時間については、スキップされた1500行分に対応する時間(TReadline×1500)だけ蓄積行数(蓄積時間)を補正する必要があり、この補正された蓄積行数をステップS154で演算している。この補正により、スキップ読出しの条件によって、蓄積・読出し方式Aにおける実質的な蓄積時間が影響を受けて変更されることはなくなる。さらに、図9のステップS155で行われた蓄積行数のマスク処理により、イメージセンサ101の全行数の蓄積時間が同等となっている。これは、イメージセンサ101の蓄積開始タイミングと読出しタイミングがすべてスキップ単位による各開始タイミングで対称性を持たせているためである。
このように図11では、図9で示したような蓄積行数に補正量を加え、さらにスキップ単位行数によるマスク処理を適用することで、イメージセンサ101の各行の蓄積時間を同等としている。そのため、イメージセンサ101の行間における蓄積時間の差異を少なくすることができ、露光ムラなどの発生を抑制することが可能となる。
図10のフローチャートの説明に戻る。ステップS163では、ステップS163では、蓄積・読出し方式Bの撮像処理が実行される。蓄積・読出し方式Bの撮像処理について、図12を用いて説明する。
図12では図11と同様に、垂直回路1011に制御線ChargeResetとReadResetおよびLineShiftが接続され、上部にタイミングチャートを示している。図6のステップS110で設定されたスキップ単位行数「4」と、図9のステップS155で算出された蓄積行数1200行という設定内容に基づいて、2000行で構成されたイメージセンサ101の撮像制御の例について説明する。また、図11での蓄積・読出し方式Aでの説明と同様に、4k行(kは自然数)を読み出し、かつ4k-1行、4k-2行、4k-3行をスキップするものとして説明する。
図12では、まず、時間p01で制御線ChargeResetおよびLineShiftにワンショットパルスを入力することで、イメージセンサ101の第1行目の蓄積を開始している。そして、時間p01における制御線LineShiftにワンショットパルスの入力後、ただちに、不図示の時間p02、p03、p04において、制御線LineShiftに連続的にワンショットパルスを入力している。ここでは、イメージセンサ101の第2行目から第4行目の蓄積を開始している。図11の時間p01からp04までの間隔時間と同様に、Treadlineの時間よりも十分短い。時間p04からTreadlineの時間経過後、すなわち時間p05にて、制御線LineShiftへのワンショットパルス入力が行われる。時間p05の直後は、時間p02からp04と同様に、時間p06からp08までにかけて、制御線LineShiftへのワンショットパルスが連続的に入力される。時間p09以降も同様にして制御線LineShiftへワンショットパルスを入力していく。そして、時間p01+Tcで、制御線ReadResetおよびLineShiftへそれぞれワンショットパルスが入力されると、イメージセンサ101からの画像信号読出しが開始される。Tcは図9のステップS153で算出された蓄積行数を示しており1200行となる。すなわち、イメージセンサの所定の読出し対象行の蓄積を開始させた後、蓄積行数後(カウント数後)の行の蓄積を開始するときから該所定の読出し対象行の読出しを行う。
時間p01+Tcのタイミングでのワンショットパルスの入力後、ただちに不図示の時間p02+Tc、p03+Tc、p04+Tcのタイミングで制御線LineShiftへワンショットパルスが入力される。これにより、第1行目から第3行目の読出しをすることなく、第4行目への選択へ移行していることとなる。この動作は、図11での説明と同様である。すなわち、第1行目から第3行目までのスキップを行い、時間p04+TcにおけるLineShiftパルスの入力後、イメージセンサ101の第4行目の読出しを開始している。ここでは、図3と同様に不図示の水平回路1012の制御線TransferH、Hpulseを用いて、第4行目の画素信号の読出しを行っている。図3での説明と同様に、画素信号の読出し時には、図1のADC103によってHpulse に同期したAD変換がなされる。以下同様にして、画像信号の読出しを行っていく。
図12では、図11と同様に、時間p01+Tcからp04+Tcまでの時間は十分短く、上述の4行単位のスキップおよび読出し時間を合わせた時間が図3のTReadlineと等しい。これらを一般化すると、n行の読出し行数に対し、時間p01からp0n-1+Tcおよびp0n+Tcまでは、3行をスキップし、1行を読み出すというサイクルを繰り返すこととなる。本実施例の例では、図11と同様にイメージセンサ101の行数n=2000となる。
図12において、蓄積時間Tcharge_B1は、蓄積行数に換算するとTcであり1200行である。4行単位のスキップおよび読出し処理により、実時間としての蓄積時間は1/4であるTreadline×300行分の時間となるが、実時間としては、図6のステップS110で入力された蓄積時間と同等となる。すなわち、ユーザが入力した所望の露光レベルと同等の撮影画像が得られることとなる。また、4行単位のスキップおよび読出し処理により、図12のTread_B1は、図3および図4で示したTread_AおよびTread_Bの4分の1の時間、すなわち300行分の読出し時間となっている。蓄積・読出し方式Bにおいては、読出し対象範囲すべての行に対する読出しは蓄積時間内では終わらない。そのため、スキップ読出しが設定されている場合には、蓄積時間を制御するための基準となる制御線LineShiftへのパルスは読出し行を読み出すタイミングでのみTReadlineの間隔で出力され、読出しスキップ行をスキップするタイミングでは、無視できる程度の短い間隔で出力される。従って、スキップ読出しの有無に関わらず一定の蓄積時間を維持するために、読出し率で蓄積行数を補正する必要があり、これをステップS153で演算している。この補正により、スキップ読出しの条件によって、蓄積・読出し方式Bにおける実質的な蓄積時間が影響を受けて変更されることはなくなる。
なお、図12に示す蓄積・読出しモードBにおける撮像制御では、時間p01+Tcにおいて、Tc+1行目の蓄積が開始されている。すなわち、ある行の読み出し処理を行う場合、同じ蓄積行数分加算した行の蓄積が開始されている。図11で説明したように、イメージセンサ101の全行蓄積時間を同等とするためには、前述の4行単位の制御線LineShiftへのパルス処理を、第1行目の蓄積開始から最終行までにかけて、一貫して行う必要がある。本実施例のスキップ単位を「4」とした例では、図11での説明と同様に、図9のステップS155で行われた蓄積行数のマスク処理により、蓄積行数が4の倍数となっている。このようにマスク処理をすることによって、イメージセンサ101の蓄積開始タイミングと読出しタイミングがすべてスキップ単位による各開始タイミングで対称性を持たせることができる。その結果、図12においても図11と同様に、イメージセンサ101の各行の蓄積時間が同等となっている。
このように、本実施例では、イメージセンサ101のおよび1行あたりの読出し時間に基づき、蓄積行数を算出した。そして、図6のステップS110で設定されたスキップ設定に基づき蓄積行数を図6のステップS150で補正した後に、イメージセンサ101 の撮像制御を行う。特に、図9のステップS155で示したマスク処理を加えることで、スキップ処理を行った場合でも、イメージセンサ101の全行において蓄積時間が同等とすることができる。これらは、前述の2種類の撮像制御方式で個別に蓄積行数を補正する必要があり、それぞれにおける撮像制御例について示した。
なお、本実施例で説明したスキップ単位数や蓄積時間、イメージセンサの画素数については限定されず、様々な設定値あるいは画素数に対して、本発明を適用することができる。また、本実施例では、スキップ単位行数に対し、読み出す行数を1行とした例について説明したが、読み出す行数は1行に限定されない。例えば、モノクロカメラあるいは3枚の撮像素子で構成されるカラーカメラの場合は、本実施例での説明を適用するのが望ましい。一方で、撮像素子が単板であるカラーカメラの場合は、ベイヤ配列について考慮する必要がある。すなわち、複数行にまたがって1色が作られるようなベイヤ配列で構成される撮像素子を用いる場合、スキップ単位に対し、読み出す行数を2行以上としても良い。
また、一般的なイメージセンサでは、第1行目から数十行分は、光電変換素子の無い領域や、遮光領域が構成されている。これら2種類の領域における画素信号に基づいて、有効画素領域の黒基準レベルを補正することは一般的に一般的行われる。蓄積・読出し方式Bでスキップ処理を行う場合、蓄積開始と読出し開始タイミングの対称性を保つため、第1行目から最終行までにかけて、スキップ単位行数でのスキップおよび読出し処理を行うことが望ましい。一方で、蓄積・読出し方式Aでスキップ処理を行う場合は、上記2領域の読出し時にはスキップせず、有効画素領域のみスキップ処理を行っても良い。
以上、本実施例によれば、スキップ処理が伴う撮影において、撮影画像の各行間の露光ムラを低減することが可能である。
実施例1では、イメージセンサ101の全画面に対し、所定のスキップ率で撮像制御を行う例について説明してきた。本実施例では、イメージセンサ101のうち、一部の関心領域を読出しの対象領域として抽出し、それ以外の領域を読み飛ばすような撮像制御について説明する。実施例1の図12で説明したように、蓄積・読出し方式Bでは蓄積時間が読出し時間よりも短い条件であり、読出し行に蓄積行数を加算した行が蓄積開始となる行である。関心領域が複数である場合、関心領域以外の領域をスキップすると、関心領域(読出し領域)の蓄積時間が削減される場合がある。そのため、関心領域の行間で蓄積時間が異なり、関心領域内で輝度ムラが発生する場合がある。本実施例ではこのような撮影条件において、関心領域すなわち読出領域が複数存在する場合でも、各行間の輝度ムラを低減する実施例について説明する。
本実施例における撮像装置の構成およびイメージセンサ101の構成は図1と図2に示されている。これらの構成は、実施例1と同様であるため、説明を省略する。
本実施例では、イメージセンサ101のうち、上下方向に2つの関心領域が設定されるような撮像例について説明する。図13にイメージセンサ101が2000行の撮像素子で構成されている例を示す。本実施例では、図13の斜線部の2つの関心領域AreaAおよびAreaBを選択して読み出す場合において、行間における露光時間を同等とする例について説明する。本実施例において撮像装置100が行う処理のフローチャートを図14に示す。撮像装置100に電源が投入されると、図14に示すステップS210から順番に処理を実行していく。
まず、図14のフローチャートのステップS210では読出し領域設定の入力を行う。ここでは、図1の読出し条件設定手段300によって、読出し条件入力部107を通じて入力される。本実施例では、読出し領域として図13の斜線部分の領域を読み出すため、各読出し領域の座標情報となる開始座標(X, Y)と終了座標(X,Y)を以下のように入力する。
・AreaA:開始座標 (501, 201)、終了座標 (2500 400)
・AreaB:開始座標 (501,1501)、終了座標 (2500, 1700)
読出し設定値は図1の読出し条件入力部107で保持され、蓄積制御部109に入力される。図14のステップS210が実行されると、次にステップS120へ進む。
図14のステップS120では、実施例1と同様にシャッター速度に対応する蓄積時間を入力する。ステップS120が実行されると、ステップS220へと進む。
図14のステップS220では、蓄積時間から蓄積行数への変換演算が行われる。ステップS220のサブルーチンを図15に示す。
図15のサブルーチンでは、ステップS221から順番に処理が実行される。まず、ステップS221において、読出し領域の最小・最大座標が算出される。前述のAreaA、AreaBの各座標からXおよびYの最小、最大座標を求める。図16に示すように、AreaA、AreaBを含むAreaCとして1つの領域と見立てると、以下の最小座標および最大座標を得る。本実施例では、AreaAからAreaBにかけて1500行を、スキップを含めた読出し対象領域とする。
・AreaC:最小座標(501,201)、最大座標(2500, 1700)
次に図15のステップS222へと進み、1行あたりの読出し時間が算出される。まず、前述のAreaCの幅を求めると2000画素となる。この幅画素数を読み出すための時間を1行あたりの読出し時間とする。実施例1と同様に、1画素あたりの読出し時間と前述のAreaCの幅画素数に基づき、1行を読出しのためのオーバーヘッド時間などを考慮して算出する。次にステップS223へと進み、ステップS120で入力された蓄積時間を、ステップS222で算出した1行あたりの読出し時間で除算することにより、蓄積行数を算出する。
なお、実施例1で算出された1行あたりの読出し時間TReadlineは、1行の画素データすべてを読み出すことを前提としている。一方で、本実施例では、図13および図16に示す通り、対象としている領域の横画素数は2000画素としており、1行全体3000画素の2/3の画素数となる。前述の通り、制御線Hpulseによる画素信号の読出し時間は、1行あたりの読出し画素数に依存するため、実施例1と比較し、約2/3の読出し時間となる。そのため、図7のステップS132で算出される蓄積行数は、実施例1と比較し、約1.5倍の蓄積行数が算出されることとなる。このように、ステップS210で入力される読出し領域のサイズにより、1行あたりの画素信号の読出し時間が変化することとなる。
図15のフローチャートの説明に戻る。ステップS223が実行されると、図15のサブルーチンを終了し、図14のステップS140へと進む。
図14のステップS140では、実施例1と同様に蓄積方式が設定される。本実施例における読出し行数は、図16に示す通り1500行である。そのため、ステップS140のサブルーチンである図8のステップS142で行われる判定式では、読出し行数1500行との大小比較結果に基づいて、蓄積・読出し方式AもしくはBが選択されることとなる。ステップS140が実行されると、ステップS300に進む。
図14のステップS300では、イメージセンサ101の撮像制御が行われる。ステップS300では、図6のステップS160と同様に蓄積行数と読出し行数の大小比較結果に基づいて、蓄積・読出し方式AもしくはBが実行される。ステップS300のサブルーチンを図17に示す。
図17では、まずステップS310にて蓄積・読出し方式を判定する。図10のステップS161と同様に、図14のステップS140で設定された蓄積方式に従い、蓄積・読出し方式AであればステップS320へ、蓄積・読出し方式BであればステップS330へと進む。
図17のステップS320では、蓄積・読出し方式Aが実行される。ステップS320で実行されるタイミングチャートを図18に示す。
図18では、p01において制御線LineShiftおよびReadResetへのワンショットパルスが入力され、イメージセンサ101 の第1行目の読出しを開始している。そして、p01の直後にp02において、制御線ChargeResetおよびLineShiftへのワンショットパルスを入力することによって、イメージセンサ101 の第2行目の読出しおよび第1行目の蓄積を開始している。ただし、p01からp0201まで連続的に制御線LineShiftにワンショットパルスを入力していくことで、イメージセンサ101の第1行目から第200行目までをスキップしている。p0201以降、p0400までは、Treadlineの間隔で制御線LineShiftへワンショットパルスを入力していくことでAreaAすなわち第201行目から第400行目までの画素信号が読み出される。ここで、本実施例におけるTreadlineは、図14ステップS220にて説明したように、実施例1におけるTreadlineの間隔時間の2/3の時間となる。
図18の時間p0401からp01501までは、時間p01からのスキップ処理と同様に、制御線LineShiftへ連続的にワンショットパルスを入力する。時間p01からp0201までのスキップ処理、および時間p401からp01501までのスキップ処理の時間は、Treadlineよりも十分短い。このように第401行目から第1500行目までの読出しをスキップしている。時間p01501以降、p01700までは、Treadlineの間隔で制御線LineShiftへワンショットパルスを入力していくことでAreaBすなわち第1501行目から第1700行目までの画素信号が読み出される。第1700行目までの画素信号が読み出された後は、図14のステップS220で算出された蓄積行数分すなわち時間p0endまでのタイミング時間まで蓄積する。その後、時間p11で制御線ReadResetへのワンショットパルス入力が行われることで蓄積が終了し、時間p11以降、時間p01からの処理と同様の処理が行われることによって画素信号の読出しが行われていく。
図18のFrameValidがHi状態である期間は、図13および図16のAreaAからAreaBにかけて、すなわちAreaCの画素信号読出し期間である。前述のAreaCの1500行分が読み出される時間を図18のTread_A2で示している。ただし、1500行分の読出し時間がかかるわけではなく、AreaAおよびAreaB以外の領域がスキップされるため、AreaAとAreaBの合計行数400行分の読出し時間となる。
図18で示した蓄積・読出し方式Aによるスキップ処理では、制御線ReadResetとChargeResetの差が1行分の差であるため、蓄積開始から読出し開始までの実時間差Tcharg_A2がイメージセンサ101の各行数で同等となっている。すなわち、AreaAやAreaBのように複数の読出し領域を設定し、対象領域以外の領域をスキップしたとしても、イメージセンサ101の各行の蓄積時間は同等とすることができる。これは、対象領域における行間の蓄積開始の時間差をTreadlineとすることで、同領域の読出し開始の行間時間差と同等としているためである。
図17のフローチャートの説明に戻る。図17のステップS330では、蓄積・読出し方式Bが実行される。蓄積・読出し方式Bによる方式では、制御線ChargeResetによる蓄積開始タイミングと制御線ReadResetによる読出し開始タイミングに蓄積行数分の差がある。また、ローリングシャッターでは、蓄積・読出し方式Bでは読出し中のラインに蓄積行数を加算したラインにおいて蓄積が開始される制約がある。これらを勘案し、蓄積・読出し方式Bでスキップを行う場合、イメージセンサ101の全行数で同等の蓄積時間を保証するために、対象領域に対する蓄積と読出しのスキップ有無を切り替えることが望ましい。
少なくともAreaAとAreaBで各行の蓄積時間を同等するためには、前述の通り、AreaAとAreaBの読出しと蓄積を行うタイミングでは、制御線LineShiftへのワンショットパルス入力間隔をTreadlineとする必要がある。読出し行と、その時に蓄積が開始される蓄積開始行との関係は、蓄積行数を用いて式(6)のように示すことができる。
・読出し行 = 蓄積開始行 − 蓄積行数 ・・・(6)
また、読出し行と蓄積開始行は、以下の条件式(7)及び(8)を満たす場合はスキップ不可である。
・読出し対象領域開始行 ≦ 読出し行 ≦ 読出し対象領域終了行 ・・・(7)
・読出し対象領域開始行 ≦ 蓄積開始行 ≦ 読出し対象領域終了行 ・・・(8)
(6)、(7)、(8)式を同時に満たすように、スキップ有無を決定することにより、関心領域(読出し領域)内の各行の露出(蓄積時間)は一定に維持され、画質の低下を低減することができる。この具体的な例について、蓄積行数が100行である例について図19のタイミングチャートを用いて説明する。この蓄積行数100行については、図14のステップS220で設定された蓄積行数と仮定する。
図19ではp01において制御線LineShiftおよびChargeResetへのワンショットパルスが入力され、イメージセンサ101の第1行目の蓄積を開始している。そして、時間p0201すなわち第201行目まで制御線LineShiftへワンショットパルスを連続的に入力することで、第1行目から第200行目までの蓄積を連続的に開始させている。第1行目から第200行目までは、式(8)の観点から蓄積開始のスキップ動作を行って良い。なお、p0101の時間では制御線ReadResetへのワンショットパルス入力が行われているため、第1行目から第100行目までの読出しがスキップされていることとなる。
図19の時間p0201からp0501までの間にTreadlineの時間間隔で制御線LineShiftへワンショットパルスを入力する。このとき、第201行目から第501行目までは、各行は制御線LineShiftのパルスの時間差で蓄積が開始されている。また同時に、式(6)より、第101行目から第400行目までがスキップされることなく画素信号が読み出されている。この間AreaAの100行分前から画素信号が読み出されていることとなる。
図19の時間p0501からp01501までの間は、制御線LineShiftへワンショットパルスを連続的に入力する。これにより、第501行目から第1500行目までの蓄積開始を連続的に行うとともに、第401行目から第1400行目までの読出しがスキップされている。この間、AreaA、AreaB以外の領域の読出しのため、スキップしても影響しない。
同様にして、図19の時間p1501からp1801までの間にTreadlineの時間間隔で制御線LineShiftへワンショットパルスを入力する。このとき、第1501行目から第1801行目までは、各行は制御線LineShiftのパルスの時間差で蓄積が開始されている。また同時に、式(6)より、第1401行目から第1700行目までがスキップされることなく画素信号が読み出されている。この間AreaBの100行分前から画素信号が読み出されていることとなる。図19の時間p01801では制御線ChargeResetが同時に入力され、次のフレームの蓄積開始としている。
このように、AreaA、AreaBの各行では、蓄積開始から蓄積終了すなわち読出し開始まで、100行分にTreadlineを乗じた長さの蓄積時間となっている。そのため、露光ムラが発生しづらくなっている。
なお、本実施例では、スキップ処理の処理時間は、1行の読出し時間Treadlineよりも十分短い。一方で、読み飛ばす行数が多い場合や、1行あたりの読出し時間Treadlineが短い場合、スキップするための処理時間が無視できない場合がある。その場合は、蓄積行数の算出時に、スキップする処理時間を考慮した上で蓄積行数を算出すると良い。また、本実施例における蓄積・読出し方式Bでは、蓄積行数を100行とする例について説明したが、100行の蓄積行数に限定されない。蓄積・読出し方式Bにおいて、様々な蓄積行数および蓄積時間に対し、式(6)から式(8)を満たす条件でスキップ有無を決定すれば良い。
以上、本発明の好ましい実施例について説明したが、本発明はこれらの実施形態に限定されないことはいうまでもなく、その要旨の範囲内で種々の変形及び変更が可能である。また、本稿で述べた実施例を組み合わせて実施しても良い。
なお、本発明では、スキップ単位の数として「2」および「4」が設定された例について述べたが、スキップ単位数については任意の数が設定可能である。
また、スキップ単位数に対し、読出し行数は「1」として説明したが、前述の通りカラー撮影を行う場合は、所謂ベイヤ配列を考慮した読出し行数を設定して適用しても良い。また、本発明では最大4つの関心領域が設定された例について述べたが、関心領域の数や座標および領域の大きさについては限定されず、様々な形状や大きさの1以上の関心領域に対して本発明を適用することができる。また、撮影画像に関しては、3000×2000の画素数を例に説明したが、画素数はこれに限定されない。
100 撮像装置
101 イメージセンサ
102 センサ制御部(制御手段)
104 アドレスカウンタ(スキップ設定手段)
106 画像信号出力部(画像信号出力手段)
107 読出し条件入力部(読出し条件入力手段)
108 蓄積時間入力部(蓄積時間入力手段)
109 蓄積制御部(制御手段、カウント数設定手段)
300 読出し条件設定手段(読出し条件入力手段)
400 蓄積時間設定手段

Claims (8)

  1. ローリングシャッター方式のイメージセンサの一部の領域の画素データを読出して出力することが可能な撮像装置であって、
    前記イメージセンサからの画素データ読出し制御に関する条件である読出し条件を設定するための読出し条件設定手段と、
    前記イメージセンサの蓄積時間を設定するための蓄積時間設定手段と、
    前記読出し条件に基づき、前記蓄積時間に対応するカウント数を設定するカウント数設定手段と、
    前記読出し条件に基づき、前記イメージセンサの撮像領域内で読出し又は蓄積に関する処理をスキップする行であるスキップ行を設定するスキップ設定手段と、
    前記カウント数と前記スキップ行とに基づき、前記読出し条件に関わらず一定の蓄積時間となるように、前記イメージセンサの蓄積及び読み出しを制御する制御手段と、
    前記制御手段によって読出された画素信号を出力するための画像信号出力手段と、
    を有することを特徴とする撮像装置。
  2. 前記読出し条件設定手段が設定する前記読出し条件は、前記イメージセンサの読出し行及びスキップ行の単位パターンの行数であるスキップ単位であり、
    前記カウント数設定手段は、前記蓄積時間と、前記読出し領域の単位行あたりの読出し時間と、前記読出し領域と、前記スキップ単位と、に基づいて前記蓄積時間に対応するカウント数を設定し、
    前記スキップ設定手段は、前記スキップ単位に基づき、前記スキップ行を設定する、
    ことを特徴とする請求項1に記載の撮像装置。
  3. 前記読出し条件設定手段が設定する前記読出し条件は、前記イメージセンサの読出し対象となる1以上の読出し領域であり、
    前記カウント数設定手段は、前記1以上の読出し領域の単位行あたりの読出し時間に基づいてカウント数を設定し、
    前記スキップ設定手段は、前記1以上の読出し領域と前記カウント数とに基づきスキップ行を設定する、
    ことを特徴とする請求項1又は2に記載の撮像装置。
  4. 前記制御手段は、前記蓄積時間が全ての読出し対象の画素信号を読み出すための読出し時間以上の場合は、前記イメージセンサの読出し対象行からの読出しが終了した後に、該読出し対象行の蓄積を開始するとともに該読出し対象行の次の行の読出しを開始し、前記蓄積時間が全ての読出し対象の画素信号を読み出すための前記読出し時間より短い場合は、前記イメージセンサの読出し対象行の蓄積を開始させた後、該読出し対象行から前記カウント数後の行の蓄積を開始するときから前記読出し対象行の読出しを行う、ことを特徴とする請求項1乃至3のいずれか1項に記載の撮像装置。
  5. 前記スキップ設定手段は、前記蓄積時間が全ての読出し対象の画素信号を読み出すための読出し時間以上の場合は、読出しに関するスキップ行を設定し、前記蓄積時間が前記読出し時間より短い場合は、蓄積開始と読出しに関するスキップ行を設定する、ことを特徴とする請求項1乃至4のいずれか1項に記載の撮像装置。
  6. 前記スキップ設定手段は、前記蓄積時間が全ての読出し対象の画素信号を読み出すための読出し時間より短い場合は、
    読出し対象領域開始行≦読出し行≦読出し対象領域開始行
    読出し対象領域開始行≦蓄積開始行≦読出し対象領域開始行
    但し、
    読出し行=蓄積開始行−カウント数
    を満たす読出し行及び蓄積開始行はスキップ行には設定しない、ことを特徴とする請求項5に記載の撮像装置。
  7. 前記カウント数設定手段は、前記蓄積時間が全ての読出し対象の画素信号を読み出すための読出し時間以上の場合は、前記蓄積時間と前記スキップ単位とに基づいてカウント数を設定し、前記蓄積時間が前記読出し時間より短い場合は、前記蓄積時間と前記読出し領域の読み出し対象の行数とに基づいて前記カウント数を設定する、ことを特徴とする請求項2に記載の撮像装置。
  8. レンズと請求項1乃至7のいずれか1項に記載の撮像装置とを有する撮影装置。
JP2014017341A 2014-01-31 2014-01-31 撮像装置、撮像システム、撮像装置の制御方法および撮像装置を有する撮影装置 Active JP6338385B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014017341A JP6338385B2 (ja) 2014-01-31 2014-01-31 撮像装置、撮像システム、撮像装置の制御方法および撮像装置を有する撮影装置
US14/608,627 US9826175B2 (en) 2014-01-31 2015-01-29 Image pickup apparatus and photographing apparatus including the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014017341A JP6338385B2 (ja) 2014-01-31 2014-01-31 撮像装置、撮像システム、撮像装置の制御方法および撮像装置を有する撮影装置

Publications (3)

Publication Number Publication Date
JP2015144386A true JP2015144386A (ja) 2015-08-06
JP2015144386A5 JP2015144386A5 (ja) 2017-03-02
JP6338385B2 JP6338385B2 (ja) 2018-06-06

Family

ID=53755887

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014017341A Active JP6338385B2 (ja) 2014-01-31 2014-01-31 撮像装置、撮像システム、撮像装置の制御方法および撮像装置を有する撮影装置

Country Status (2)

Country Link
US (1) US9826175B2 (ja)
JP (1) JP6338385B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109142354A (zh) * 2018-07-25 2019-01-04 珠海格力智能装备有限公司 采集流水线上的产品图像的系统、方法和装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6336286B2 (ja) * 2014-01-31 2018-06-06 キヤノン株式会社 撮像装置、撮像システム、撮像装置の制御方法および撮像装置を有する撮影装置
US12034015B2 (en) 2018-05-25 2024-07-09 Meta Platforms Technologies, Llc Programmable pixel array
US11888002B2 (en) * 2018-12-17 2024-01-30 Meta Platforms Technologies, Llc Dynamically programmable image sensor
US11962928B2 (en) 2018-12-17 2024-04-16 Meta Platforms Technologies, Llc Programmable pixel array
US12108141B2 (en) 2019-08-05 2024-10-01 Meta Platforms Technologies, Llc Dynamically programmable image sensor
US11935291B2 (en) 2019-10-30 2024-03-19 Meta Platforms Technologies, Llc Distributed sensor system
US11948089B2 (en) 2019-11-07 2024-04-02 Meta Platforms Technologies, Llc Sparse image sensing and processing
US11825228B2 (en) 2020-05-20 2023-11-21 Meta Platforms Technologies, Llc Programmable pixel array having multiple power domains
US12075175B1 (en) 2020-09-08 2024-08-27 Meta Platforms Technologies, Llc Programmable smart sensor with adaptive readout

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005094142A (ja) * 2003-09-12 2005-04-07 Renesas Technology Corp 撮像装置
JP2008016977A (ja) * 2006-07-03 2008-01-24 Canon Inc 撮像装置及びその制御方法並びに撮像システム
JP2010183558A (ja) * 2009-01-07 2010-08-19 Sony Corp 固体撮像素子および駆動制御方法
JP2010199724A (ja) * 2009-02-23 2010-09-09 Nikon Corp 撮像装置
JP2014017551A (ja) * 2012-07-05 2014-01-30 Canon Inc 撮像装置及びその制御方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4030605B2 (ja) 1995-11-10 2008-01-09 オリンパス株式会社 電子的撮像装置
JP3548465B2 (ja) 1999-09-08 2004-07-28 キヤノン株式会社 撮像装置及び撮像方法
JP2003032453A (ja) 2001-07-12 2003-01-31 Canon Inc 画像処理装置
JP2005277709A (ja) 2004-03-24 2005-10-06 Renesas Technology Corp 固体撮像装置
JP2005283353A (ja) 2004-03-30 2005-10-13 Fuji Photo Film Co Ltd 撮影システム
JP4757013B2 (ja) 2005-12-19 2011-08-24 キヤノン株式会社 撮像装置及びその制御方法、コンピュータプログラム及び記憶媒体
JP4235660B2 (ja) 2006-09-08 2009-03-11 キヤノン株式会社 画像処理装置及びその制御方法
JP5063234B2 (ja) * 2007-07-20 2012-10-31 キヤノン株式会社 撮像装置、撮像システム、及び、撮像装置の動作方法
JP5053869B2 (ja) 2008-01-10 2012-10-24 キヤノン株式会社 固体撮像装置、撮像システム、及び固体撮像装置の駆動方法
JP5282543B2 (ja) 2008-11-28 2013-09-04 ソニー株式会社 固体撮像装置、固体撮像装置の駆動方法および撮像装置
JP5400406B2 (ja) 2009-02-06 2014-01-29 キヤノン株式会社 撮像装置
JP2010271379A (ja) 2009-05-19 2010-12-02 Canon Inc 撮像装置
JP5616105B2 (ja) 2010-04-14 2014-10-29 浜松ホトニクス株式会社 固体撮像装置
JP2011244253A (ja) 2010-05-19 2011-12-01 Nikon Corp 撮像装置
JP5645505B2 (ja) 2010-06-29 2014-12-24 キヤノン株式会社 撮像装置及びその制御方法
GB2492387B (en) 2011-06-30 2017-07-19 Cmosis Nv Pixel array with individual exposure control for a pixel or pixel region
JP5794176B2 (ja) 2012-03-02 2015-10-14 カシオ計算機株式会社 撮像装置、撮像方法及びプログラム
JP2013223043A (ja) 2012-04-13 2013-10-28 Toshiba Corp 受光装置および伝送システム
US9979904B2 (en) 2013-01-25 2018-05-22 Innovaciones Microelectrónicas S.L. (Anafocus) Advanced region of interest function for image sensors
US9531967B2 (en) 2013-12-31 2016-12-27 Faro Technologies, Inc. Dynamic range of a line scanner having a photosensitive array that provides variable exposure

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005094142A (ja) * 2003-09-12 2005-04-07 Renesas Technology Corp 撮像装置
JP2008016977A (ja) * 2006-07-03 2008-01-24 Canon Inc 撮像装置及びその制御方法並びに撮像システム
JP2010183558A (ja) * 2009-01-07 2010-08-19 Sony Corp 固体撮像素子および駆動制御方法
JP2010199724A (ja) * 2009-02-23 2010-09-09 Nikon Corp 撮像装置
JP2014017551A (ja) * 2012-07-05 2014-01-30 Canon Inc 撮像装置及びその制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109142354A (zh) * 2018-07-25 2019-01-04 珠海格力智能装备有限公司 采集流水线上的产品图像的系统、方法和装置
CN109142354B (zh) * 2018-07-25 2020-10-23 珠海格力智能装备有限公司 采集流水线上的产品图像的系统、方法和装置

Also Published As

Publication number Publication date
US20150222827A1 (en) 2015-08-06
US9826175B2 (en) 2017-11-21
JP6338385B2 (ja) 2018-06-06

Similar Documents

Publication Publication Date Title
JP6338385B2 (ja) 撮像装置、撮像システム、撮像装置の制御方法および撮像装置を有する撮影装置
JP6336286B2 (ja) 撮像装置、撮像システム、撮像装置の制御方法および撮像装置を有する撮影装置
KR20120102509A (ko) 화상 처리 장치, 화상 처리 방법 및 프로그램
US20080239110A1 (en) Fixed pattern noise removal circuit, fixed pattern noise removal method, program, and image pickup apparatus
US8922681B2 (en) Image processing device that performs image processing to correct target pixels in a region surrounding a defective pixel
JP2018207413A (ja) 撮像装置
US20110298943A1 (en) Methods, apparatuses and systems for piecewise generation of pixel correction values for image processing
JP2004350103A (ja) 電子カメラのシェーディング補正回路
CN111031256B (zh) 图像处理方法、装置、存储介质及电子设备
US10841522B2 (en) Image capturing apparatus, control method therefor, and recording medium
JP3914216B2 (ja) 画像欠陥補正装置、及び、画像欠陥補正方法
JP4739998B2 (ja) 撮像装置
JP2018113614A (ja) 撮像装置、および撮像方法、電子機器、並びに信号処理装置
JP6887840B2 (ja) 信号処理回路、撮像装置及び信号処理方法
JP2009232146A (ja) ノイズ低減装置およびデジタルカメラ
JP7332376B2 (ja) 撮像装置およびその制御方法ならびにプログラム
JP7271131B2 (ja) 撮像装置および撮像装置の制御方法
JP2017055309A (ja) 撮像装置及びその制御方法
US20150249796A1 (en) Image sensors and digital imaging systems including the same
JP2009105966A (ja) 固定パターンノイズ除去回路、固定パターンノイズ除去方法、プログラムおよび撮像装置
CN110958382A (zh) 图像处理方法、图像处理装置、成像装置和存储介质
JP6516574B2 (ja) 像ブレ補正装置、撮像装置、像ブレ補正方法
JP6223166B2 (ja) 画像合成装置、画像合成方法、撮像装置、プログラム及び記憶媒体
JP2012124800A (ja) 撮像装置
JP2016111615A (ja) 撮像装置及びその制御方法、プログラム、記憶媒体

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170126

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171114

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20171214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180109

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180410

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180508

R151 Written notification of patent or utility model registration

Ref document number: 6338385

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151