説明

撮像装置、および撮像装置制御方法、並びにプログラム

【課題】画像の画素領域ごとに露光時間を制御する構成において、より遅延の少ない露光時間制御処理を実現する装置、方法を提供する。
【解決手段】撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成する制御部と、露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行う撮像素子を有する。制御部は、先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して撮像素子に出力する。撮像素子は、制御部から、領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行する。この領域単位の露光時間制御情報を順次適用した処理を行うことでより遅延の少ない露光時間制御処理が実現される。

【発明の詳細な説明】
【技術分野】
【0001】
本開示は、撮像装置、および撮像装置制御方法、並びにプログラムに関する。さらに詳細には、領域単位の露光制御を行う撮像装置、および撮像装置制御方法、並びにプログラムに関する。
【背景技術】
【0002】
図1を参照して、撮像素子の一例であるCMOSイメージセンサの構成と撮影処理例について説明する。
図1は、撮像素子(CMOSイメージセンサ)101の一部構成を示す図である。撮像素子(CMOSイメージセンサ)101は、垂直走査回路102、水平走査回路103、および、アレイ状に配置された複数の画素104から構成される。
【0003】
画素104の内部では、被写体撮影に伴う露光処理によってフォトダイオードに電荷が蓄積される。
各画素のフォトダイオードに蓄積された電荷は、アンプトランジスタおよび転送トランジスタを介して垂直信号線113に出力される。垂直信号線113に出力された信号電流は、さらに水平走査回路103に供給されて、所定の信号処理が実行された後、信号出力線114を介して外部へ出力される。
【0004】
垂直信号線113には、縦に並んだ各画素が共通に接続されているので、それぞれの画素の信号を独立に読み出すためには、垂直信号線113に対して、1度に1個の画素分の信号のみを出力するようにしなければならない。
【0005】
すなわち、撮像素子(CMOSイメージセンサ)101においては、図2(A)に示されるように、例えば、一番下の行に並んだ画素104dのそれぞれから、最初に信号を読出し、次に、図2(B)に示されるように画素104cの行からの読み出しを行い、その後、順次、読み出しの行を変更して信号の読み出しを行うことで、各画素の信号を独立して読み出すことができるようになされている。これらの画素読み出しの制御信号は、例えば図1に示される垂直走査回路102に接続された水平リセット線111、水平選択線112から出力される。
【0006】
撮像素子(CMOSイメージセンサ)の構成画素104の各々は、蓄積された電荷の読み出し処理直後から、再び露光を開始する。すなわち、次の画像フレーム用の露光処理が開始される。
【0007】
このように読み出し処理を行単位で順次、実行し、その直後から露光処理を開始すると、先頭行のフォトダイオード104aと最終行のフォトダイオード104dとでは、露光の開始時刻および終了時刻が異なる、すなわち露光時間(または露光期間)にずれが発生する。
これが、いわゆるフォーカルプレーンシャッタ動作、あるいはローリングシャッタ動作と呼ばれるシャッタ動作の特徴である。
なお、図には104a〜104dの4行のみ示しているが、これは撮像素子の一部を示しているのみであり、実際の撮像素子には数100〜数1000行等、多数の行が設定され、各行単位で順次読み出しが実行される。
【0008】
従来の撮像素子は、露光時間、すなわち、露光の開始から終了までの時間は、すべての画素について同じ長さとする構成が一般的であった。
しかし、最近では、被写体の明るさに応じて撮像素子の各画素に対する露光時間を制御する構成が提案されている。このような露光制御により、撮影画像のダイナミックレンジを拡大することができる。
【0009】
以下、露光時間制御(シャッタ制御)によるダイナミックレンジ拡大処理について説明する。
明るい被写体領域では露光時間を長くすると画素の蓄積電荷が飽和してしまい、正確な画素値が得られない。
一方、暗い被写体領域では、露光時間を長くした方が被写体輝度に対応する正確な画素値を得やすい。
【0010】
そこで、被写体が明るい領域では露光時間を短く設定した画素の画素値を有効画素値として取得する。一方、被写体が暗い領域では、露光時間を長くした画素の画素値を有効画素値として取得する。ダイナミックレンジを拡大する一つの方法は、これらを組み合わせて出力画像を生成するものである。なお、最終的な画素値の出力に際しては、各露光時間に基づく画素値調整処理が実行される。
【0011】
特許文献1および非特許文献1には、撮像素子の画素行ごとに異なる露光時間を設定して、撮影画像のダイナミックレンジを拡大する技術を開示している。例えば撮像素子の画素行の1行おきに短時間露光行と長時間露光行を設定する構成である。
【0012】
例えば、特許文献1、非特許文献1は、行単位で露光時間制御を実行して、画面の部位の明るさに応じて行単位で設定する方法について開示している。
これらの特許文献1、および非特許文献1の構成は、電子シャッタを用いた構成によって領域単位の露光時間制御を実行するものである。
【0013】
また、被写体の輝度に応じた適応的な露光時間設定を実行するアルゴリズムについては、例えば非特許文献2に開示がある。
このように、被写体の明るさに応じて各行など、領域単位で露光時間を制御する構成については、すでに開示されている。
しかし、この被写体輝度に応じた露光制御を行うためには、撮影開始前に画素単位の露光時間を決定する処理が必要となる。ここで、問題となるのは、
(処理1)画素単位の露光時間を決定する処理を行うための先行画像の取得処理、
(処理2)上記処理1を実行後、その情報を反映した露光制御を行った撮影処理
これらの処理1〜処理2の間で遅延が生じることである。
【0014】
この遅延が大きいほど明るさの変化への追従が遅くなり、その結果、明るさの変化の後、しばらくの間、明るすぎる画像、暗すぎる画像を取得してしまうということが発生する。
特に行単位や画素単位など領域ごとの露光制御を行う場合、従来の画面全体での露光制御に比べ、よりシビアな露光制御が必要となってくる。従来の画面で一つの露光時間を決定する場合、局所的な物体の動きでは明るさの変化はほとんど生じなかった。しかし、領域ごとの露光制御を行う場合、そのような局所的な物体の動きに対する追従も必要になり、従来よりも追従の遅延による影響は大きいといえる。
【0015】
露光制御に反映するまでに生じる遅延について図3、図4を用いて説明する。
図3、図4とも時間軸を横軸、行を縦軸として示している。
例えば図3において、電荷読み出しのタイミングは、図に示す点線ライン151a,a、151bで示すように、行単位で時間ずれが発生する。
【0016】
図3に示す複数の矩形ブロックは、ある1つの撮影画像フレームの露光時間を示しており、行または複数行からなる行ブロック単位の露光時間である。
先行撮影された画像フレームの読み出しライン151aに示すタイミングの直後から露光処理が開始される。読み出しライン151aに示すように、露光開始時間は、行単位で少しずつずれた時間となる。図に示すグラフにおいて、上側の行が先行して露光開始され、下側の行ほど遅れて露光が開始される。
最上行は時間(t1)が露光開始時間であり、最下行は時間(t2)が露光開始時間である。
【0017】
図3に示す複数の矩形ブロックの右端が、露光画像の読み出し処理が実行されるタイミングであり、読み出しライン151bに示すタイミングで各行の画素の蓄積電荷が読み取られる。
この例では、露光終了時間≒読み出し処理時間であり、図3の読み出しライン151bに示すように、先頭行から順次、行ごとに各画素の読み出し処理が行われる。
【0018】
最上行は時間(t2)が露光終了時間であり、最下行は時間(t3)が露光終了時間である。
なお、この例では、各行の露光開始と露光終了は、行単位で同じタイミングのずれが発生しているため、各行の露光時間は全て同じとなる。
【0019】
図4には、動画撮影時の3つの連続撮影フレーム(N〜N+2)の画像に対応する露光処理と読み出しタイミングを示している。
フレームNの最終行の読み出しが終了した後、フレームN+1の先頭行の読み出しが開始される。
フレームNの画像をすべて取得できるのは最終行の読み出しタイミングである。しかしこの時点では、すでにフレームN+1の露光が開始しているため、フレームNで取得した画像に基づく露光制御をフレームN+1に反映させることは不可能であり、フレームN+2から可能となる。(遅延は2フレーム)
【0020】
ただし、フレームNの最終行の読み出しから、フレームN+2の先頭行の露光開始までの間隔は短いため、露光時間の算出や制御データの通信に時間がかかる場合、フレームN+2への反映も不可能になってしまい、遅延がさらに増えることもある。
【0021】
このように、被写体の明るさに応じた露光制御を実行する場合には、
(処理1)画素単位の露光時間を決定する処理を行うための先行画像の取得処理、
(処理2)上記処理1を実行後、その情報を反映した露光制御を行った撮影処理
これらの処理1〜処理2の処理間での遅延が生じ、この遅延の結果、最適な露光制御ができなくなる場合があるという問題がある。
【先行技術文献】
【特許文献】
【0022】
【特許文献1】特開2010−136205
【非特許文献】
【0023】
【非特許文献1】Jenwei Gu et al, Coded Rolling Shutter Photography: Flexible Space−Time Sampling, Computational Photography(ICCP), 2010.
【非特許文献2】Suji Shimizu, et al., A New Algorithm for Exposure Control Based on Fuzzy Logic for Video Cameras, Consumer Electronics, IEEE tran on, Vol38−2, (1992).
【発明の概要】
【発明が解決しようとする課題】
【0024】
本開示は、例えば上記の問題点に鑑みてなされたものであり、遅延の少ない露光時間制御を可能とする撮像装置、および撮像装置制御方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【0025】
本開示の第1の側面は、
撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成する制御部と、
前記露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行う撮像素子を有し、
前記制御部は、
先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、
前記撮像素子は、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行する撮像装置にある。
【0026】
さらに、本開示の撮像装置の一実施態様において、前記制御部は、先行撮影画像の行単位または複数行単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、前記撮像素子は、前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して行単位または複数行単位の露光時間制御に基づく画像取得を実行する。
【0027】
さらに、本開示の撮像装置の一実施態様において、前記制御部は、先行撮影画像の輝度情報取得単位である画素領域としてのブロックを1つのみ参照して算出した露光時間制御データを生成して前記撮像素子に出力し、前記撮像素子は、前記露光時間制御データを適用した露光時間制御に基づく画像取得を実行する。
【0028】
さらに、本開示の撮像装置の一実施態様において、前記制御部は、先行撮影画像の輝度情報取得単位である画素領域としてのブロックを1つのみ参照して算出した第1の露光時間制御データと、複数ブロックを参照して算出した第2の露光時間制御データを生成して前記撮像素子に出力し、前記撮像素子は、前記第1の露光時間制御データ、または前記第2の露光時間制御データのいずれかを選択的に適用した露光時間制御に基づく画像取得を実行する。
【0029】
さらに、本開示の撮像装置の一実施態様において、前記撮像素子は、前記第1の露光時間制御データと第2の露光時間制御データの選択適用による画像取得を行う際に、選択適用する露光時間の設定のための画素蓄積電荷のリセット処理を実行する。
【0030】
さらに、本開示の撮像装置の一実施態様において、前記制御部は、先行撮影画像である画像フレームNの一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、前記撮像素子は、前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して、前記画像フレームNの次の連続撮影画像である画像フレームN+1に対して画素領域単位の露光時間制御を実行する。
【0031】
さらに、本開示の撮像装置の一実施態様において、前記撮像装置は、さらに、長時間露光画素と短時間露光画素の各画素情報に基づく高ダイナミックレンジ画像を生成する高ダイナミックレンジ処理部を有する。
【0032】
さらに、本開示の第2の側面は、
撮像装置において実行する撮像装置制御方法であり、
制御部が、撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成する制御ステップと、
撮像素子が、前記露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行う撮像ステップを実行し、
前記制御ステップは、
先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力するステップであり、
前記撮像ステップは、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行するステップである撮像装置制御方法にある。
【0033】
さらに、本開示の第3の側面は、
撮像装置において撮像制御処理を実行させるプログラムであり、
制御部に、撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成させる制御ステップと、
撮像素子に、前記露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行わせる撮像ステップを実行させ、
前記制御ステップにおいて、
先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力させ、
前記撮像ステップにおいて、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行させるプログラムにある。
【0034】
なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して例えば記憶媒体によって提供されるプログラムである。このようなプログラムを情報処理装置やコンピュータ・システム上のプログラム実行部で実行することでプログラムに応じた処理が実現される。
【0035】
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【0036】
本開示の一実施例によれば、画像の画素領域ごとに露光時間を制御する構成において、より遅延の少ない露光時間制御処理が実現される。
具体的には、撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成する制御部と、露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行う撮像素子を有する。制御部は、先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して撮像素子に出力する。撮像素子は、制御部から、領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行する。
この領域単位の露光時間制御情報を順次適用した処理を行うことでより遅延の少ない露光時間制御処理が実現される。
【図面の簡単な説明】
【0037】
【図1】撮像素子の構成と撮像処理について説明する図である。
【図2】撮像素子の構成と撮像処理について説明する図である。
【図3】撮像処理シーケンスについて説明する図である。
【図4】撮像処理シーケンスについて説明する図である。
【図5】撮像装置の構成と処理について説明する図である。
【図6】撮像素子の構成と撮像処理について説明する図である。
【図7】撮像処理シーケンスについて説明する図である。
【図8】制御部の露光時間演算処理構成について説明する図である。
【図9】制御部の露光時間演算処理構成について説明する図である。
【図10】輝度解析による露光時間設定処理例について説明する図である。
【図11】露光時間制御部の構成と処理について説明する図である。
【図12】露光時間ラッチ部の構成と処理例について説明する図である。
【図13】図12に示す露光時間ラッチ部の動作シーケンスの一例を説明するタイミング図である。
【図14】垂直走査回路の構成例について説明する図である。
【図15】読み出しタイミング生成部の処理について説明する図である。
【図16】ある行の、読み出しタイミングと、リセットタイミング、および、露光時間の関係について説明する図である。
【図17】従来型の露光時間制御シーケンスについて説明する図である。
【図18】本開示の撮像装置における露光時間制御シーケンスの一例について説明する図である。
【図19】露光制御単位となるブロックの設定例について説明する図である。
【図20】露光制御単位となるブロックの設定例について説明する図である。
【図21】露光制御処理例について説明する図である。
【図22】撮像装置における露光時間制御シーケンスの問題点について説明する図である。
【図23】露光時間ラッチ部の構成と処理例について説明する図である。
【図24】本開示の撮像装置における露光時間制御シーケンスの一例について説明する図である。
【図25】本開示の撮像装置における露光時間制御シーケンスの一例について説明する図である。
【発明を実施するための形態】
【0038】
以下、図面を参照しながら本発明の撮像装置、および撮像装置制御方法、並びにプログラムの詳細について説明する。説明は、以下の項目に従って行う。
1.撮像装置の構成と処理について
2.領域単位の露光時間制御処理について
3.領域単位の露光制御による撮像素子の動作例について
4.本開示の露光制御処理と従来の露光制御処理との比較
5.実施例の変形例について
6.複数ブロックの参照処理に基づく露光制御構成
7.本開示の構成のまとめ
【0039】
[1.撮像装置の構成と処理について]
まず、撮像装置の一構成例について、図5を参照して説明する。
図5に示すように、撮像装置は、光学レンズ201、CMOSイメージセンサ等によって構成される撮像素子202、高ダイナミックレンジ(HDR:High Dynamic Range)処理部204、信号処理部206、制御部208を有する。
図5に示す撮像装置は、領域ごとに露光時間を変えて撮像することにより、高ダイナミックレンジ(HDR)撮像を行う構成を有する。
【0040】
撮像装置は、動画や静止画を撮影可能な撮像装置であり、被写体輝度に応じた領域単位の露光時間制御を実現する。
例えば動画撮影時に、先行画像フレームにおいて領域単位の輝度情報を取得し、次の撮影フレームにおいて、この領域単位の計測輝度情報に基づいて領域単位の露光時間制御を行う。
静止画撮影時には、撮影画像の直前の撮影画像を利用して領域単位の輝度情報を取得し、撮影しようとする静止画の撮影時に、領域単位の計測輝度情報に基づく領域単位の露光時間制御を行う。
【0041】
光学レンズ201を介した入射光は、撮像素子202で光電変換され、撮像画像203を得る。高ダイナミックレンジ(HDR)処理部204において、各画素領域単位の露光時間の違いによる感度差を補正し、高ダイナミックレンジ(HDR)画像205を得る。
【0042】
なお、露光時間制御は、具体的には、明るい被写体領域に対して短時間露光を行い、暗い被写体に対しては長時間露光を行うことになる。その結果、撮像画像203の各画素の画素値は、各露光時間に応じた画素値となる。高ダイナミックレンジ(HDR)処理部204では、各画素の露光時間を考慮して、すべての画素を同一の露光時間とした場合の画素値を算出し、この算出画素値を設定した高ダイナミックレンジ(HDR)画像205を生成する。
信号処理部206は高画質化処理などを施し、出力画像207を得る。
【0043】
制御部208は、撮像装置の各処理の制御を実行する。例えば、先行取得画像の輝度情報に基づいて、各画素領域単位の最適な露光時間を算出し、制御データ209として撮像素子202に出力する。撮像素子202は、制御データ209に基づいて、電子シャッタによる各領域単位の露光時間制御による撮影処理(電荷蓄積)を行う。なお、制御部208は、例えば図示しないメモリに格納されたプログラムに従って各構成部の全般的な制御を実行する。
【0044】
撮像素子202は、例えばCMOSイメージセンサによって構成され、所定の画素領域単位ごとに露光制御可能なイメージセンサである。
具体的には、図6に示す構成を持つ。
図6は、撮像素子(CMOSイメージセンサ)202の一部構成を示す図である。撮像素子(CMOSイメージセンサ)202は、図6に示すように制御部208から出力される制御データ209を入力する露光時間制御部202a、垂直走査回路202b、水平走査回路202c、および、アレイ状に配置された複数の画素202dから構成される。
【0045】
画素202dは、被写体撮影に伴う露光処理によってフォトダイオードに電荷を蓄積する。各画素のフォトダイオードに蓄積された電荷は、アンプトランジスタおよび転送トランジスタを介して垂直信号線202gに出力される。垂直信号線202gに出力された信号電流は、さらに水平走査回路202cに供給されて、所定の信号処理が実行された後、信号出力線202hを介して外部へ出力される。
【0046】
この撮像素子202は、例えば図7に示すように、行単位で任意の露光時間を制御可能なCMOSイメージセンサである。なお、この構成については、例えば前述の非特許文献1を参照されたい。
【0047】
高ダイナミックレンジ(HDR)処理部204は、先に説明したように、各画素領域単位の露光時間の違いによる感度差を補正し、高ダイナミックレンジ(HDR)画像205を得る。具体的には、撮像画像203の各画素値に対して領域ごとの露光時間の逆数を乗算することにより、輝度に対して線形特性を有する画像を生成し、これを高ダイナミックレンジ(HDR)画像205とする。
【0048】
図5に示す撮像装置において、制御部208は、先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データ(制御データ209)を、シーケンシャルに順次生成して撮像素子202に出力する。
撮像素子202は、制御部208から、領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行する。
【0049】
[2.領域単位の露光時間制御処理について]
次に、制御部208において実行する被写体輝度に応じた領域単位の露光時間制御処理について図8、図9、図10を参照して説明する。
図8は、制御部208の実行する露光時間制御処理を実行するための構成例を示す図である。
輝度算出部211は、高ダイナミックレンジ(HDR)処理部204が先行撮影画像に基づいて生成した高ダイナミックレンジ(HDR)画像205を入力し、入力画像から、各画素領域単位の輝度を算出する。
【0050】
一例として図9のように、高ダイナミックレンジ(HDR)画像205を構成する2x2画素領域を輝度算出の画素領域単位215として、
R画素の画素値=R、
G画素の画素値=(Gr+Gb)/2、
B画素の画素値=B、
これらR,G,Bの最大値(MAX)を求め、この最大値を、輝度算出の画素領域単位215の輝度Lとする。
【0051】
ブロック輝度統計量算出部212は、図10(A)のように複数の行からなるブロックごとに、図10(B)に示すような輝度統計量を算出する。図10(B)の縦軸が行、横軸の輝度統計量は各行ブロックの明るさを表す統計量である。
【0052】
ブロック露光時間算出部213は、ブロックの輝度統計量に基づいて図10(C)の各行ブロックごとに設定すべき露光時間を算出する(Tex1〜TexM)。
明るい領域については短い露光期間を設定することで、画素値が飽和してしまうことを抑制する。暗い領域については長い露光時間を設定することでS/Nを改善するように制御する。この処理によって、ダイナミックレンジの広くS/Nの良い画像を撮影することが可能になる。
【0053】
本構成では、所定領域ごとに露光制御を行う場合、その領域周辺を参照するだけで、露光時間を決定できるという特徴を有する。
すなわち、例えば、ブロック1の露光時間Tex1を算出するためには、ブロック1の画像情報のみを適用する。
1フレームの画像のすべてを参照する処理や、大部分の画像領域を参照することなく、各ブロック単位の情報のみで、各ブロックの露光時間を設定することができる。
この特徴を利用し、露光時間演算部208は、露光時間の算出が完了したブロックから順次、ただちに、制御データ209を例えばCMOSイメージセンサからなる撮像素子202に対して出力する。
【0054】
すなわち、前述したように、制御部208は、先行撮影画像の一部の画素領域、すなわちブロック単位(例えば行単位や複数行単位など)の輝度情報に基づくブロック単位の露光時間制御データを、シーケンシャルに順次生成して撮像素子202に出力する。撮像素子202は、制御部208から、ブロック単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用してブロック単位の露光時間制御に基づく画像取得を実行する。
【0055】
[3.領域単位の露光制御による撮像素子の動作例について]
次に、上述した制御部208の出力する制御データ202を入力して領域単位の露光制御を行って画像撮影処理を行う撮像素子202の動作例について説明する。

図11は、撮像素子202の露光時間制御部202aの構成例を説明する図である。
撮像素子202の露光時間制御部202aは、制御部206から各領域単位の露光時間設定情報からなる制御データ209を入力し、垂直走査回路202bを制御して画像領域単位(=ブロック単位(例えば行単位))の露光時間の設定を行う。
【0056】
・デコーダ221は、制御部206から各領域単位の露光時間設定情報からなる制御データ209を入力し、ブロックごとの露光制御データ222を生成する。
・行カウンタ226は、タイミング生成部223の生成する垂直同期信号224、水平同期信号225を利用して現在の処理対象となる行番号を生成する。
【0057】
・露光時間ラッチ部227は、行カウンタ226の生成する行番号を入力して、ブロック(画素領域)ごとの露光時間ラッチタイミングを生成し、ブロック(画素領域)ごとに異なるタイミングで露光時間データ222を垂直走査回路202bに出力する。
【0058】
垂直走査回路202bは、露光時間ラッチ部227の出力するブロック(画素領域)単位の露光時間データに従って、ブロック(画素領域)単位で電子シャッタ制御を行う。
具体的には、例えば行単位で、行リセット、および行選択信号を生成し、行単位の露光時間制御を実現する電子シャッタ制御を行う。
【0059】
図12は、1つのブロックの露光時間ラッチ部227の詳細構成例を示す図である。
1つのブロック対応の露光時間ラッチ部227は、1つのブロックについての露光時間制御信号を垂直走査回路202bに出力する。
例えばブロック=行の場合、行単位の露光時間制御処理を行う。
【0060】
図12に示すように、露光時間ラッチ部227は、デコーダ221の生成するブロック単位の露光時間データ(in)222inを記憶部234に取り込むとともに、行カウンタ226の生成する現在の行番号231を入力する。
【0061】
露光時間ラッチ部227は、自己の制御対象となるラッチ行番号232を保持し、一致検出部233において、行カウンタ226から入力する行番号231と、自己の制御対象となるラッチ行番号232が一致するか否かを判定する。一致を検出した場合に、露光時間データ(out)222outを記憶部234から垂直走査回路202bに出力し、露光時間データ222に応じたブロック単位の露光時間制御を実行させる。なお、記憶部234は、論理回路で実装する際には、例えばイネーブル(Enable)ポート付きのD−フリップフロップ回路で実現可能である。
【0062】
図13は、図12に示す露光時間ラッチ部227の動作シーケンスを説明するタイミング図である。
横軸が時間(t)であり、時間軸に沿って以下の各データの遷移を示している。
(a)露光時間ラッチ部227に入力する[露光時間データ(in)222in]
(b)露光時間ラッチ部227に入力する[現在の行番号231]
(c)露光時間ラッチ部227が保持する[ラッチ行番号232]
(d)一致検出部233の[一致検出信号出力]
(e)記憶部234からの出力(=露光時間データ(out)222out)
これらを示している。
【0063】
なお、説明の簡素化のため、各フレームの行数=10の設定としている。
図13では、
フレームNの0〜9の各行、
フレームN+1の0〜9の各行、
これらの各行についての露光時間設定処理が実行されている期間において、第5行を処理対象とする1つの露光時間ラッチ部227の処理シーケンスを示している。
【0064】
(a)露光時間ラッチ部227に入力する[露光時間データ(in)222in]は、(d)一致検出部233の[一致検出信号出力]が、(b)露光時間ラッチ部227に入力する[現在の行番号231]と、(c)露光時間ラッチ部227が保持する[ラッチ行番号232]との一致を検出したタイミングで取り込まれ、記憶部234から垂直走査回路202bに出力されるとともに記憶部234に次のフレームの同じタイミングまで保持される。
【0065】
図14は、垂直走査回路202bの構成例である。
外部から与えられる制御データ209から、デコーダ251を使用して、必要なタイミングデータ252を取り出す。例えば、画像の出力行数などのタイミングに必要な情報をタイミングデータ252としてとりだす。
【0066】
読み出しタイミング生成部253は、タイミングデータ252に基づいて、各行の水平(行)選択線202fに読み出しタイミングを順次、出力する。
具体的には、例えば、図15に示すように、読み出しタイミング生成部253内部で各行対応の読み出しタイミングを生成し、各行の水平(行)選択線202fに読み出しタイミングを順次、出力する。
【0067】
リセットタイミング生成部254は、読み出しタイミング生成部253の生成する各行対応の読み出しタイミングを入力し、さらに、露光時間ラッチ部227から入力する露光時間データ(out)222outに基づいて、この露光時間データの露光時間が設定されるように、露光開始時間を制御すめため、露光開始時間としてのリセット時間を各行単位で計算し、行単位のリセット信号を生成して、水平(行)リセット線202eに出力する。
【0068】
図16は、ある行の、読み出しタイミングと、リセットタイミング、および、露光時間の関係を示している。
図に示すリセットタイミング(Treset)が露光開始時間であり、ここから画素に対する電荷蓄積が始まり、読み出しタイミング(Tread)が露光終了時間であり、蓄積信号を読み出す。すなわち、
露光時間(Texp)=(Tread)−(Treset)
の関係にある。
【0069】
リセットタイミング生成部254は、露光時間データ241と、読み出しタイミングを得ているので、
リセットタイミング(Treset)=Tread−Texp
の関係を利用して、リセットタイミングを生成し、行ごとに水平(行)リセット線202eにリセットタイミングに応じたリセット信号を出力する。
【0070】
[4.本開示の露光制御処理と従来の露光制御処理との比較]
次に、図17と図18を参照して、本開示の露光制御処理と従来の露光制御処理とを比較して説明する。
図17は、従来の露光制御による撮像素子(CMOSイメージセンサ)の動作例を説明する図である。
図18は、本開示の撮像装置における撮像素子(CMOSイメージセンサ)の動作例を説明する図である。
【0071】
まず、図17を参照して、従来の露光制御による撮像素子(CMOSイメージセンサ)の動作例について説明する。
図17には、連続撮影される3つのフレームであるフレームN〜N+2の撮影処理に際して実行される露光制御シーケンスを示している。
(a)露光タイミングとして示すグラフは、縦軸=行、横軸=時間であり、各行についての行単位の露光時間を矩形領域として示したグラフである。
先に、図3、図4を参照して説明したように、露光時間は、上位行から下位行に向けて所定の時間、遅延して設定される。
【0072】
図17に示す(b)フレームNの画像を利用した露光制御には、
フレームNの画像を利用した露光制御処理について、時間軸に沿った露光制御処理シーケンスを示している。
301〜305に示す各処理が時間の経過に従って実行される処理である。
各処理の内容は以下の通りである。
測定取得301:フレームNの画像が出力されるタイミングである。
露光時間計算302:測定取得301において取得した画像に基づいて露光時間を算出するタイミングである。
【0073】
露光時間送信303:露光時間計算302において算出した露光時間を、撮像素子(イメージセンサ)に出力するタイミングである。
露光時間ラッチタイミング304:撮像素子(センサ)内で、露光時間送信303によって入力した露光時間データをラッチするタイミングである。ラッチタイミングは、最初の行の露光が始まる前に発生する。
リセット制御による露光時間制御305:露光時間ラッチタイミング304においてラッチされたのデータに基づいて、リセットタイミングを生成して露光制御を実行中の期間である。
【0074】
処理301〜305の処理は、フレームNの撮影画像に基づいて実行される露光時間制御であるが、
リセット制御による露光時間制御305の開始時間には、すでに、フレームN+1の撮影が開始している。
従って、リセット制御による露光時間制御305は、フレームN+1の撮影処理に適用されることになる。
この結果として、この露光制御による撮影による画像取得306は、フレームN+2の画像となる。
【0075】
このように、図17に示す露光時間制御では、
フレームNの撮影画像に基づいて生成した露光時間制御データを適用した露光時間制御による撮影処理は、直後の撮影フレーム(フレームN+1)に対して実行するこはできず、2フレーム後のフレームN+2に実行する構成となっている。
このように、従来法では最短でも2フレームの遅延が生じていた。
【0076】
図18は、本開示の撮像装置における撮像素子(CMOSイメージセンサ)の動作例を説明する図である。
図18も、図17と同様、連続撮影される3つのフレームであるフレームN〜N+2の撮影処理に際して実行される露光制御シーケンスを示している。
【0077】
(a)露光タイミングとして示すグラフは、縦軸=行、横軸=時間であり、各行についての行単位の露光時間を矩形領域として示したグラフである。
【0078】
図18に示す(b)フレームNの画像を利用した露光制御には、
フレームNの画像を利用した露光制御処理について、領域(ブロック)単位の時間軸に沿った露光制御処理シーケンスを示している。
本開示の処理では、画像の所定の単位領域(本例では行)ごとに、露光時間制御の算出、送信、ラッチを行うことによって遅延時間を短縮している。
【0079】
図18には、先行撮影画像フレームであるフレームNの画像を利用して、次の撮影フレームであるフレームN+1の露光制御を実現している。
この露光制御は、画素領域(ブロック)単位で実行している。本例では行単位の露光制御を行っている。
図18には、代表例として、
フレームNのブロック1(行1)の画像情報に基づいて、フレームN+1のブロック1(行1)の露光制御(露光時間設定)、
フレームNのブロックM(行M)の画像情報に基づいて、フレームN+1のブロックM(行M)の露光制御(露光時間設定)、
これらの処理例を示している。
【0080】
図18においても、図17と同様、フレームNの画像を利用した露光制御処理について、時間軸に沿った露光制御処理シーケンスを示している。
311〜316に示す各処理が時間の経過に従って実行される処理である。
なお、ブロック1、ブロックMとも同じシーケンス(処理311〜316)で処理が進行する。
各処理の内容は以下の通りである。
【0081】
画像取得311:フレームNのブロックの画像が出力されるタイミングである。
露光時間計算312:画像取得311において取得した画像(フレームNの1つのブロック(本例では行単位の画像)に基づいて、そのブロック(行)の露光時間を算出するタイミングである。
【0082】
露光時間送信313:露光時間計算312で算出したブロックの露光時間を送信するタイミングである。
露光時間ラッチタイミング314:撮像素子(センサ)内で、露光時間送信313処理によって送信された1つの処理ブロックの露光時間データをラッチするタイミングである。ラッチタイミングはそのブロックの露光が開始する前に発生する。
【0083】
露光時間制御315:露光時間ラッチタイミング314に基づいて、ブロック(行)単位でリセットタイミングを生成して露光制御(露光開始の制御)を実行するタイミングである
画像取得316:前記の露光制御315によって実行されたブロック(行)単位の露光制御による制御対象ブロック(行)の画像が得られる時刻である。
【0084】
図18に示すブロック1、ブロックM、その他のすべてのブロック(行)において、上記と同様のシーケンスで処理が行われる。
【0085】
この図18に示す本開示の構成では、図17に示す構成と異なり、所定の単位ごと、すなわち画素領域(ブロック、本例では行)単位ごとに、露光時間制御データを算出し、画素領域単位で、順次露光制御を開始する。この処理によって、先行撮影画像に基づく露光制御データを次の撮影フレームに適用して露光制御を実行する構成としている。
【0086】
図18に示す露光時間制御では、
フレームNの撮影画像に基づいて生成した露光時間制御データを適用した露光時間制御による撮影処理を、直後の撮影フレーム(フレームN+1)に対して実行するこはでき、露光制御を遅延なく実行することができる。
【0087】
図18に示す制御を実現するために、撮像素子202は、画像領域(=ブロック(例えば行))ごとに露光制御可能であると同時に、ある特定の単位ごとに異なるタイミングで制御データを取り込み、制御を行う構成を有する。
【0088】
[5.実施例の変形例について]
上述した実施例の変形例について説明する。
上述した実施例では、図5を参照して説明した撮像装置の構成を一例として説明した。
図5に示す構成は位置実施例であり、この他の構成も可能である。例えば、図5に示すすべての処理を撮像素子内で行う構成としてもよい。
【0089】
また、本開示の撮像装置では、領域ごとに異なる露光時間を設定した露光制御を行う構成としており、その一例として、例えば図7を参照して説明したような行単位の露光制御構成例を説明した。
しかし、露光制御単位としての領域(ブロック)は、行単位や複数行単位のみならず、その他の設定としてもよい。
【0090】
例えば、図19に示すような、矩形領域のブロックを単位として露光制御を行う構成としてもよい。
また、図20に示すように、先行撮影画像に基づく露光制御に併せて、短時間露光ブロックと長時間露光ブロックを設定して、周期的に複数の感度の制御を行い、この画像に基づく高ダイナミックレンジ画像を生成する構成としてもよい。
また、先行撮影画像に基づく露光制御に併せて、図21に示すように領域ごとに短時間露光撮影処理と、長時間露光撮影処理を実行してこれらの画像に基づく高ダイナミックレンジ画像を生成する構成としてもよい。
【0091】
また、先の実施例では、撮像素子の露光制御構成例として、図12を参照して露光時間ラッチ部227の構成例を説明した。上述の説明において、各露光時間ラッチ部227は、自己の制御対象ブロックを示すラッチ行番号232を保持する例として説明した。
しかし、このラッチ行番号232は、固定とせず、画像の輝度統計量に応じて変更する設定としてもよい。この変更処理によって、制御対象とするブロックを動的に変化させることが可能となる。
【0092】
[6.複数ブロックの参照処理に基づく露光制御構成]
上述した実施例では、先に図18を参照して説明したようにブロック(例えば行)単位で、先行撮影画像の輝度情報に基づく露光時間の設定を行い、次の撮影画像の対応ブロックの露光時間制御を行う構成としていた。
【0093】
すなわち、制御部208は、先行撮影画像の1つのブロック単位の輝度情報に基づくブロック単位の露光時間制御データを、順次撮像素子202に出力し、撮像素子202は、1つのブロック単位の露光時間制御データを、順次、シーケンシャルに適用してブロック単位の露光時間制御に基づく画像取得を実行する構成として説明した。
【0094】
すなわち図18に示す例では、
画像に設定したブロック1〜Mについて、
フレームNのブロック1の画像領域に基づく露光制御データに基づいて、フレームN+1のブロック1の画像領域の露光制御を実行、
フレームNのブロック2の画像領域に基づく露光制御データに基づいて、フレームN+1のブロック2の画像領域の露光制御を実行、

フレームNのブロックMの画像領域に基づく露光制御データに基づいて、フレームN+1のブロックMの画像領域の露光制御を実行、
このようにブロック対応の露光制御を行う構成としていた。
【0095】
しかし、このように、局所的な情報しか参照せずに露光制御を行う場合、例えば、明るい物体が大きく動いている場合などには、フレームNとフレームN+1における同じブロック領域に、同じ被写体が存在しないといったことが発生する。このような場合には、先行撮影画像に基づいて設定された露光時間が適切でなくなり、例えば、画素値の飽和が生じてしまうなどの問題点が生じる場合がある。
【0096】
このような問題を解決するため、局所情報だけでなく広い範囲、例えば複数ブロックを参照して露光時間の設定を行うことが有効となる場合がある。すなわち、複数ブロックを参照して露光時間の設定を行う構成とすることで、輝度変化を精度よく予測可能とする。しかし、広い範囲を参照した場合、画像を取得に時間がかかるという問題点がある。
【0097】
以下、まず、図22を参照して、上記の問題点について説明し、この問題点を解決する構成と処理シーケンスについて図23、図24、図25を参照して説明する。
【0098】
まず、図22を参照して、上記の問題点、すなわち広い範囲を参照した場合、画像を取得に時間がかかるという問題点について説明する。
図22は、図18において、ブロック1の露光制御データを算出する際に、複数のブロック、すなわち、ブロック1〜3を参照する設定とした場合のタイミング図である。
図22には、連続撮影される2つのフレームであるフレームN〜N+1の撮影処理に際して実行される露光制御シーケンスを示している。
【0099】
(a)露光タイミングとして示すグラフは、縦軸=行、横軸=時間であり、各行についての行単位の露光時間を矩形領域として示したグラフである。
図22に示す(b)フレームNの画像を利用した露光制御には、
フレームNの画像を利用した露光制御処理について、領域(ブロック)単位の時間軸に沿った露光制御処理シーケンスを示している。
なお、番号1〜Mは、撮影画像の画素領域(=ブロック、本例では行)の識別子を示している。
【0100】
図22に示す設定も、図18を参照して説明した例と同様、所定の単位ごと、すなわち画素領域(ブロック、本例では行)単位ごとに、順次露光制御を開始する。この処理によって、先行撮影画像に基づく露光制御データを次の撮影フレームに適用して露光制御を実行する構成としている。
【0101】
ただし、各ブロックに対応する露光時間制御データの算出処理に際しては、複数ブロックを参照する。
すなわち、複数ブロックの画像情報に基づいて1つのブロックの露光時間を決定する。
図22に示す例は、先行撮影画像フレームの3つのブロックを参照して、次の撮影フレームの1つのブロックの露光時間を決定する処理を行う例である。
【0102】
図22には、図18と同様、1つのブロック(行)であるブロック1(行1)に対する露光制御処理例を示している。
図22に示す処理311〜316は、先に説明した図18の処理311〜316と同様の処理である。
ただし、図22に示す例では先行撮影画像フレームの3つのブロックを参照して、次の撮影フレームの1つのブロックの露光時間を決定する。
各処理の内容は以下の通りである。
【0103】
画像取得311:フレームNのブロックの画像が出力されるタイミングである。撮像素子から撮像画像Nの一部の画素領域である連続する3ブロック、すなわち画素領域1(ブロック1)〜画素領域3(ブロック3)の画像を出力するタイミングである。
露光時間計算312:画像取得311において取得した画像(フレームNの3つのブロック(本例では行単位の画像)に基づいて、露光制御対象とする後続フレームの1つのブロック(行)の露光時間を算出するタイミングである。後続撮影画像のブロック1の露光時間を算出する。
【0104】
露光時間送信313:露光時間計算312で算出したブロックの露光時間を送信するタイミングである。
露光時間ラッチタイミング314:撮像素子(センサ)内で、露光時間送信313処理によって送信された1つの処理ブロックの露光時間データをラッチするタイミングである。ラッチタイミングはそのブロックの露光が開始する前に発生する。
【0105】
露光時間制御315:露光時間ラッチタイミング314に基づいて、ブロック(行)単位でリセットタイミングを生成して露光制御(露光開始の制御)を実行するタイミングである。
画像取得316:前記の露光制御315によって実行されたブロック(行)単位の露光制御による制御対象ブロック(行)の画像が得られる時刻である。
【0106】
本例においては、画像取得311は、フレームNのブロック3の出力後にずれ込むことになる。
結果として露光時間計算312、露光時間送信313も図18の設定に比較して遅延することになる。
その結果、露光時間ラッチタイミング314、露光時間制御315を図18と同様の設定とすると、露光時間送信313より前の時間に露光時間ラッチタイミング314、露光時間制御315が設定される。
このような処理は現実的には実行不可能となる。すなわち、図22に示すシーケンスでは、フレームNの画像におけるに基づく露光制御が次のフレームN+1では実行できないことになり、フレームNの複数ブロックの画像に基づいて算出される露光時間は、フレームN+1の撮影時には利用できずフレームN+2移行でのみ利用可能な状態となってしまう。
【0107】
この問題点を解決する露光時間ラッチ部227の構成について図23を参照して説明する。
図23に示す露光時間ラッチ部227は、先に説明した図11に示す露光時間制御部202aの1つの露光時間ラッチ部227の構成を示す図である。
図12を参照して説明した露光時間ラッチ部227のかわりに、図23のような露光時間ラッチ部227を利用することで、図22を参照して説明した問題点を解決する。
【0108】
図23に示す露光時間ラッチ部227は、各ブロックに対応する露光制御時間データを複数回の異なるタイミングで受け取り、これらを記憶部245,246に格納してセレクタ249を介して垂直走査回路202bに出力する。
【0109】
具体的には、
(1)先行撮影画像フレームの単一ブロックの画像データのみから算出した第1の露光制御時間データを図23に示す第一記憶部245から出力する。
(2)先行撮影画像フレームの複数ブロックの画像データから算出した第2の露光制御時間データを図23に示す第二記憶部246から出力する。
これらの露光時間制御データを生成して、選択的に適用する。
(1)のデータは、先の実施例で説明したデータと同じである。
【0110】
例えば、被写体の明るさが変化しない場合、第一記憶部245だけを利用した処理、すなわち先に図12を参照して説明したと同様の処理とする。
一方、被写体の明るさが変化し、次回の露光で飽和の発生が予想される場合、複数ブロックの画像データから算出した第2の露光制御時間データ(露光時間データ222)が送られ、第二記憶部246は第二ラッチ行番号242のタイミングでこのデータをラッチし、複数ブロックに基づいて算出した露光時間による露光制御が行われる。
【0111】
図23に示すブロックXの第一ラッチ行番号241は、例えば、この露光時間ラッチ部227の処理対象ブロックが第一行である場合、行番号=1として設定される。
また、図23に示すブロックXの第二ラッチ行番号242は、例えば、第二記憶部246に記憶される露光時間データが複数ブロック(例えば3ブロック(3行))単位の画像に基づいて算出される露光時間データである場合、行番号=3として設定される。
【0112】
なお、第一記憶部245と第二記憶部246の露光時間データに違いがある場合、垂直走査回路102は、再度リセット制御を行う必要があるため、一致検出部247にて一致の検出を行い、その情報も出力する。
【0113】
図24、図25は、図22と同様のタイミング図であり、図23の構成を持つ露光時間ラッチ部227を利用した処理とした場合のタイミング図である。
図24、図25には、図22と同様、連続撮影される2つのフレームであるフレームN〜N+1の撮影処理に際して実行される露光制御シーケンスを示している。
【0114】
(a)露光タイミングとして示すグラフは、縦軸=行、横軸=時間であり、各行についての行単位の露光時間を矩形領域として示したグラフである。
図24、図25に示す(b)フレームNの画像を利用した露光制御には、
フレームNの画像を利用した露光制御処理について、領域(ブロック)単位の時間軸に沿った露光制御処理シーケンスを示している。
なお、番号1〜Mは、撮影画像の画素領域(=ブロック、本例では行)の識別子を示している。
【0115】
図24、図25に示す設定も、図18を参照して説明した例と同様、所定の単位ごと、すなわち画素領域(ブロック、本例では行)単位ごとに、順次露光制御を開始する。この処理によって、先行撮影画像に基づく露光制御データを次の撮影フレームに適用して露光制御を実行する構成としている。
【0116】
図24、図25に示す処理シーケンスの概要は以下の通りである。初めに、1つのブロックのみを参照して露光時間を決定し、これを第一のデータとして第一記憶部245からセレクタ249を介して垂直走査回路202bに出力する。
その後、より広範なブロック、図24、図25に示す例では3ブロックを参照して露光時間を決定し、例えば飽和が発生しそうな場合には、これを第二のデータとして第二記憶部246からセレクタ249を介して垂直走査回路202bに出力する。
【0117】
図24は、1つのブロックのみを参照して決定した露光時間を破棄し、3つのブロックを参照して決定した露光時間を、次のフレームの撮影において利用する露光制御処理例を示すタイミング図である。
図25は、1つのブロックのみを参照して決定した露光時間を利用し、3つのブロックを参照して決定した露光時間を利用しない設定とした露光制御処理例を示すタイミング図である。
【0118】
図24に示す処理について説明する。
図24は、1つのブロックのみを参照して決定した露光時間を破棄し、3つのブロックを参照して決定した露光時間を、次のフレームの撮影において利用する露光制御処理例を示すタイミング図である。
【0119】
図24に示す(b)フレームNの画像を利用した露光制御には、
[1回目の露光制御]として実行されるフレームNの1つのブロック(行1)のみを参照して決定した露光時間を破棄し、
[2回目の露光制御]として実行される3つのブロック(行1〜3)を参照した露光時間算出結果を次のフレームの露光制御に利用する処理例を示している。
【0120】
[1回目の露光制御]として実行される処理311〜325について説明する。
画像取得311:フレームNのブロック1(行1)の画像が出力されるタイミングである。撮像素子から撮像画像Nの一部の画素領域であるブロック1(行1)の画像を出力するタイミングである。
露光時間計算312:画像取得311において取得した画像(フレームNの1つのブロック(本例では行1)に基づいて、露光制御対象とする後続フレームの1つのブロック(行)の露光時間を算出するタイミングである。後続撮影画像のブロック1の露光時間を算出する。
【0121】
露光時間送信313:露光時間計算312で算出したブロックの露光時間を送信するタイミングである。
露光時間ラッチタイミング314:撮像素子(センサ)内で、露光時間送信313処理によって送信された1つの処理ブロックの露光時間データをラッチするタイミングである。ラッチタイミングはそのブロックの露光が開始する前に発生する。
【0122】
1回目の露光時間制御325:露光時間ラッチタイミング314に基づいて、ブロック(行)単位でリセットタイミングを生成して露光制御(露光開始の制御)を実行するタイミングである。
ここまでが1回目の露光制御である。
【0123】
この処理と並列して、図24の下段に示す[2回目の露光制御]が実行される。この処理は、複数ブロック(本例ではブロック1〜3(行1〜3))を参照して決定した露光時間を、次のフレームN+1のブロック1(行1)に対する露光制御時間として利用する処理である。
【0124】
画像取得321:フレームNのブロックの画像が出力されるタイミングである。撮像素子から撮像画像Nの一部の画素領域である連続する3ブロック、すなわち画素領域1(ブロック1)〜画素領域3(ブロック3)の画像を出力するタイミングである。
露光時間計算322:画像取得311において取得した画像(フレームNの3つのブロック(本例では行単位の画像)に基づいて、露光制御対象とする後続フレームの1つのブロック(行)の露光時間を算出するタイミングである。後続撮影画像のブロック1の露光時間を算出する。
【0125】
露光時間送信323:露光時間計算312で算出したブロックの露光時間を送信するタイミングである。
露光時間ラッチタイミング324:撮像素子(センサ)内で、露光時間送信313処理によって送信された1つの処理ブロックの露光時間データをラッチするタイミングである。ラッチタイミングはそのブロックの露光が開始する前に発生する。
【0126】
2回目の露光時間制御327:露光時間ラッチタイミング324に基づいて、ブロック(行)単位でリセットタイミングを生成して露光制御(露光開始の制御)を実行するタイミングである。
画像取得328:前記の露光制御327によって実行されたブロック(行)単位の露光制御による制御対象ブロック(行)の画像が得られる時刻である。
この処理では、2回目の露光制御、すなわち複数ブロックを参照して決定した露光時間に基づく制御を次の撮影フレームの露光制御として実行している。
【0127】
次に、図25を参照して1つのブロックのみを参照して決定した露光時間を利用し、3つのブロックを参照して決定した露光時間を利用しない設定とした露光制御処理例について説明する。
【0128】
図25に示す(b)フレームNの画像を利用した露光制御には、
[1回目の露光制御]として実行されるフレームNの1つのブロック(行1)のみを参照して決定した露光時間を次の露光時間制御に利用し、
[2回目の露光制御]として実行される3つのブロック(行1〜3)を参照した露光時間算出処理を停止した例を示している。
【0129】
[1回目の露光制御]として実行される処理311〜328について説明する。
画像取得311:フレームNのブロック1(行1)の画像が出力されるタイミングである。撮像素子から撮像画像Nの一部の画素領域であるブロック1(行1)の画像を出力するタイミングである。
露光時間計算312:画像取得311において取得した画像(フレームNの1つのブロック(本例では行1)に基づいて、露光制御対象とする後続フレームの1つのブロック(行)の露光時間を算出するタイミングである。後続撮影画像のブロック1の露光時間を算出する。
【0130】
露光時間送信313:露光時間計算312で算出したブロックの露光時間を送信するタイミングである。
露光時間ラッチタイミング314:撮像素子(センサ)内で、露光時間送信313処理によって送信された1つの処理ブロックの露光時間データをラッチするタイミングである。ラッチタイミングはそのブロックの露光が開始する前に発生する。
【0131】
1回目の露光時間制御325:露光時間ラッチタイミング314に基づいて、ブロック(行)単位でリセットタイミングを生成して露光制御(露光開始の制御)を実行するタイミングである。
画像取得328:ぬ回目の露光制御によって決定した露光時間によって撮影されたフレームN+1のブロック1(行1)の画像取得処理である。
ここまでが1回目の露光制御である。
【0132】
この処理と並列して、図25の下段に示す[2回目の露光制御]が実行される。この処理は、複数ブロック(本例ではブロック1〜3(行1〜3))を参照して決定した露光時間を、次のフレームN+1のブロック1(行1)に対する露光制御時間として利用する処理である。
【0133】
画像取得321:フレームNのブロックの画像が出力されるタイミングである。撮像素子から撮像画像Nの一部の画素領域である連続する3ブロック、すなわち画素領域1(ブロック1)〜画素領域3(ブロック3)の画像を出力するタイミングである。
露光時間計算322:画像取得311において取得した画像(フレームNの3つのブロック(本例では行単位の画像)に基づいて、露光制御対象とする後続フレームの1つのブロック(行)の露光時間を算出するタイミングである。後続撮影画像のブロック1の露光時間を算出する。
この時点で、[1回目の露光制御]に基づくフレームN+1の撮影が開始されているため、この[2回目の露光制御]の処理は中止する。
【0134】
図24、図25を参照して説明した処理において、露光制御信号出力タイミングは、2つの異なるタイミングに設定される。
一方は、単一ブロックの参照に基づく露光制御データの出力であり、
他方は、複数ブロックの参照に基づく露光制御データの出力である。
単一ブロックの参照によって生成される露光時間に対応する第一の制御信号の出力タイミングに対し、複数一ブロックの参照によって生成される露光時間に対応する第二の制御信号の出力タイミングは遅い。
【0135】
例えば、被写体の明るさが変化しない場合、単一ブロックの参照に基づく露光制御データの出力、すなわち、図23に示す第一記憶部245だけを利用した処理、すなわち先に図12を参照して説明したと同様の処理とする。
一方、被写体の明るさが変化し、次回の露光で飽和の発生が予想される場合複数ブロックの参照に基づく露光制御データ、すなわち、図23に示す第二記憶部246から第二ラッチ行番号242のタイミングでデータをラッチし、この複数ブロックに基づいて算出した露光時間によって露光制御を行う。
【0136】
これらの制御により、例えば動被写体の存在等により連続撮影画像フレームの同一画素領域の輝度が変化するような場合でも、複数ブロックの参照情報に基づく輝度算出および露光時間設定が可能となり、適切な露光制御が実現される。
【0137】
[7.本開示の構成のまとめ]
以上、特定の実施例を参照しながら、本開示の構成について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【0138】
なお、本明細書において開示した技術は、以下のような構成をとることができる。
(1)撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成する制御部と、
前記露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行う撮像素子を有し、
前記制御部は、
先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、
前記撮像素子は、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行する撮像装置。
【0139】
(2)前記制御部は、先行撮影画像の行単位または複数行単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、前記撮像素子は、前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して行単位または複数行単位の露光時間制御に基づく画像取得を実行する前記(1)に記載の撮像装置。
(3)前記制御部は、先行撮影画像の輝度情報取得単位である画素領域としてのブロックを1つのみ参照して算出した露光時間制御データを生成して前記撮像素子に出力し、前記撮像素子は、前記露光時間制御データを適用した露光時間制御に基づく画像取得を実行する前記(1)または(2)に記載の撮像装置。
【0140】
(4)前記制御部は、先行撮影画像の輝度情報取得単位である画素領域としてのブロックを1つのみ参照して算出した第1の露光時間制御データと、複数ブロックを参照して算出した第2の露光時間制御データを生成して前記撮像素子に出力し、前記撮像素子は、前記第1の露光時間制御データ、または前記第2の露光時間制御データのいずれかを選択的に適用した露光時間制御に基づく画像取得を実行する前記(1)〜(3)いずれかに記載の撮像装置。
【0141】
(5)前記撮像素子は、前記第1の露光時間制御データと第2の露光時間制御データの選択適用による画像取得を行う際に、選択適用する露光時間の設定のための画素蓄積電荷のリセット処理を実行する前記(4)に記載の撮像装置。
(6)前記制御部は、先行撮影画像である画像フレームNの一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、前記撮像素子は、前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して、前記画像フレームNの次の連続撮影画像である画像フレームN+1に対して画素領域単位の露光時間制御を実行する前記(1)〜(5)いずれかに記載の撮像装置。
(7)前記撮像装置は、さらに、長時間露光画素と短時間露光画素の各画素情報に基づく高ダイナミックレンジ画像を生成する高ダイナミックレンジ処理部を有する前記(1)〜(6)いずれかに記載の撮像装置。
【0142】
さらに、上記した装置等において実行する処理の方法や、処理を実行させるプログラムも本開示の構成に含まれる。
【0143】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0144】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【0145】
以上、説明したように、本開示の一実施例の構成によれば、画像の画素領域ごとに露光時間を制御する構成において、より遅延の少ない露光時間制御処理が実現される。
具体的には、撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成する制御部と、露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行う撮像素子を有する。制御部は、先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して撮像素子に出力する。撮像素子は、制御部から、領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行する。
この領域単位の露光時間制御情報を順次適用した処理を行うことでより遅延の少ない露光時間制御処理が実現される。
【符号の説明】
【0146】
101 撮像素子
102 垂直走査回路
103 水平走査回路
104 画素
111 水平リセット線
112 水平選択線
113 垂直信号線
114 信号出力線
201 光学レンズ
202 撮像素子
202a 露光時間制御部
202b 垂直走査回路
202c 水平走査回路
202d 画素
202e 水平リセット線
202f 水平選択線
202g 垂直信号線
202h 信号出力線
203 撮像画像
204 高ダイナミックレンジ処理部
205 高ダイナミックレンジ画像
206 信号処理部
207 出力画像
208 制御部
209 制御データ
211 輝度算出部
212 ブロック輝度統計量算出部
213 ブロック露光時間算出部
221 デコーダ
222 露光時間データ
223 タイミング生成部
224 垂直同期信号
225 水平同期信号
226 行カウンタ
227 露光時間ラッチ部
232 ラッチ行番号
233 一致検出部
234 記憶部
243 一致検出部
244 一致検出部
245 第一記憶部
246 第二記憶部
247 一致検出部
249 セレクタ

【特許請求の範囲】
【請求項1】
撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成する制御部と、
前記露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行う撮像素子を有し、
前記制御部は、
先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、
前記撮像素子は、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行する撮像装置。
【請求項2】
前記制御部は、
先行撮影画像の行単位または複数行単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、
前記撮像素子は、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して行単位または複数行単位の露光時間制御に基づく画像取得を実行する請求項1に記載の撮像装置。
【請求項3】
前記制御部は、
先行撮影画像の輝度情報取得単位である画素領域としてのブロックを1つのみ参照して算出した露光時間制御データを生成して前記撮像素子に出力し、
前記撮像素子は、
前記露光時間制御データを適用した露光時間制御に基づく画像取得を実行する請求項1に記載の撮像装置。
【請求項4】
前記制御部は、
先行撮影画像の輝度情報取得単位である画素領域としてのブロックを1つのみ参照して算出した第1の露光時間制御データと、
複数ブロックを参照して算出した第2の露光時間制御データを生成して前記撮像素子に出力し、
前記撮像素子は、
前記第1の露光時間制御データ、または前記第2の露光時間制御データのいずれかを選択的に適用した露光時間制御に基づく画像取得を実行する請求項1に記載の撮像装置。
【請求項5】
前記撮像素子は、
前記第1の露光時間制御データと第2の露光時間制御データの選択適用による画像取得を行う際に、選択適用する露光時間の設定のための画素蓄積電荷のリセット処理を実行する請求項4に記載の撮像装置。
【請求項6】
前記制御部は、
先行撮影画像である画像フレームNの一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力し、
前記撮像素子は、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して、前記画像フレームNの次の連続撮影画像である画像フレームN+1に対して画素領域単位の露光時間制御を実行する請求項1に記載の撮像装置。
【請求項7】
前記撮像装置は、さらに、
長時間露光画素と短時間露光画素の各画素情報に基づく高ダイナミックレンジ画像を生成する高ダイナミックレンジ処理部を有する請求項1に記載の撮像装置。
【請求項8】
撮像装置において実行する撮像装置制御方法であり、
制御部が、撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成する制御ステップと、
撮像素子が、前記露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行う撮像ステップを実行し、
前記制御ステップは、
先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力するステップであり、
前記撮像ステップは、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行するステップである撮像装置制御方法。
【請求項9】
撮像装置において撮像制御処理を実行させるプログラムであり、
制御部に、撮像素子の画素領域単位の露光時間を設定した露光時間制御データを生成させる制御ステップと、
撮像素子に、前記露光時間制御データを入力して画素領域単位の露光時間制御に基づく画像取得を行わせる撮像ステップを実行させ、
前記制御ステップにおいて、
先行撮影画像の一部の画素領域単位の輝度情報に基づく領域単位の露光時間制御データを、シーケンシャルに順次生成して前記撮像素子に出力させ、
前記撮像ステップにおいて、
前記制御部から、前記領域単位の露光時間制御データを入力し、入力する露光時間制御データを、順次、シーケンシャルに適用して画素領域単位の露光時間制御に基づく画像取得を実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図5】
image rotate

【図6】
image rotate

【図8】
image rotate

【図9】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図23】
image rotate

【図3】
image rotate

【図4】
image rotate

【図7】
image rotate

【図10】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図24】
image rotate

【図25】
image rotate


【公開番号】特開2013−5017(P2013−5017A)
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願番号】特願2011−131116(P2011−131116)
【出願日】平成23年6月13日(2011.6.13)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】