以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本実施形態に係る裏面照射型の撮像素子100の断面図である。撮像素子100は、入射光に対応した画素信号を出力する撮像チップ113と、画素信号を処理する信号処理チップ111と、画素信号を記憶するメモリチップ112とを備える。これら撮像チップ113、信号処理チップ111およびメモリチップ112は積層されており、Cu等の導電性を有するバンプ109により互いに電気的に接続される。
なお、図示するように、入射光は主に白抜き矢印で示すZ軸プラス方向へ向かって入射する。本実施形態においては、撮像チップ113において、入射光が入射する側の面を裏面と称する。また、座標軸に示すように、Z軸に直交する紙面左方向をX軸プラス方向、Z軸およびX軸に直交する紙面手前方向をY軸プラス方向とする。以降のいくつかの図においては、図1の座標軸を基準として、それぞれの図の向きがわかるように座標軸を表示する。
撮像チップ113の一例は、裏面照射型のMOSイメージセンサである。PD層106は、配線層108の裏面側に配されている。PD層106は、二次元的に配され、入射光に応じた電荷を蓄積する複数のPD(フォトダイオード)104、および、PD104に対応して設けられたトランジスタ105を有する。
PD層106における入射光の入射側にはパッシベーション膜103を介してカラーフィルタ102が設けられる。カラーフィルタ102は、互いに異なる波長領域を透過する複数の種類を有しており、PD104のそれぞれに対応して特定の配列を有している。カラーフィルタ102の配列については後述する。カラーフィルタ102、PD104およびトランジスタ105の組が一つの画素を形成する。
カラーフィルタ102における入射光の入射側には、それぞれの画素に対応して、マイクロレンズ101が設けられる。マイクロレンズ101は、対応するPD104へ向けて入射光を集光する。
配線層108は、PD層106からの画素信号を信号処理チップ111に伝送する配線107を有する。配線107は多層であってもよく、また、受動素子および能動素子が設けられてもよい。
配線層108の表面には複数のバンプ109が配される。当該複数のバンプ109が信号処理チップ111の対向する面に設けられた複数のバンプ109と位置合わせされて、撮像チップ113と信号処理チップ111とが加圧等されることにより、位置合わせされたバンプ109同士が接合されて、電気的に接続される。
同様に、信号処理チップ111およびメモリチップ112の互いに対向する面には、複数のバンプ109が配される。これらのバンプ109が互いに位置合わせされて、信号処理チップ111とメモリチップ112とが加圧等されることにより、位置合わせされたバンプ109同士が接合されて、電気的に接続される。
なお、バンプ109間の接合には、固相拡散によるCuバンプ接合に限らず、はんだ溶融によるマイクロバンプ結合を採用しても良い。また、バンプ109は、例えば後述する一つの単位グループに対して一つ程度設ければ良い。したがって、バンプ109の大きさは、PD104のピッチよりも大きくても良い。また、画素が配列された画素領域以外の周辺領域において、画素領域に対応するバンプ109よりも大きなバンプを併せて設けても良い。
信号処理チップ111は、表裏面にそれぞれ設けられた回路を互いに接続するTSV(シリコン貫通電極)110を有する。TSV110は、周辺領域に設けられることが好ましい。また、TSV110は、撮像チップ113の周辺領域、メモリチップ112にも設けられて良い。
図2は、撮像チップ113の画素配列と単位グループ131を説明する図である。特に、撮像チップ113を裏面側から観察した様子を示す。画素領域には2000万個以上もの画素がマトリックス状に配列されている。本実施形態においては、隣接する4画素×4画素の16画素が一つの単位グループ131を形成する。図の格子線は、隣接する画素がグループ化されて単位グループ131を形成する概念を示す。単位グループ131を形成する画素の数はこれに限られず1000個程度、例えば32画素×64画素でもよいし、それ以上でもそれ以下でもよい。
画素領域の部分拡大図に示すように、単位グループ131は、緑色画素Gb、Gr、青色画素Bおよび赤色画素Rの4画素から成るいわゆるベイヤー配列を、上下左右に4つ内包する。緑色画素は、カラーフィルタ102として緑色フィルタを有する画素であり、入射光のうち緑色波長帯の光を受光する。同様に、青色画素は、カラーフィルタ102として青色フィルタを有する画素であって青色波長帯の光を受光し、赤色画素は、カラーフィルタ102として赤色フィルタを有する画素であって赤色波長帯の光を受光する。
本実施形態において、複数の単位グループ131のうちの少なくとも一つの単位グループが選択され、他の単位グループとは異なる制御パラメータで、それぞれの単位グループに含まれる画素が制御される。制御パラメータの例は、フレームレート、間引き率、画素信号を加算する加算行数または加算列数、電荷の蓄積時間または蓄積回数、デジタル化のビット数等である。さらに、制御パラメータは、画素からの画像信号取得後の画像処理におけるパラメータであってもよい。
図3は、撮像チップ113の単位グループ131に対応する回路図である。図において、代表的に点線で囲む矩形が、1画素に対応する回路を表す。なお、以下に説明する各トランジスタの少なくとも一部は、図1のトランジスタ105に対応する。
上述のように、単位グループ131は、16画素から形成される。それぞれの画素に対応する16個のPD104は、それぞれ転送トランジスタ302に接続され、各転送トランジスタ302の各ゲートには、転送パルスが供給されるTX配線307に接続される。本実施形態において、TX配線307は、16個の転送トランジスタ302に対して共通接続される。
各転送トランジスタ302のドレインは、対応する各リセットトランジスタ303のソースに接続されると共に、転送トランジスタ302のドレインとリセットトランジスタ303のソース間のいわゆるフローティングディフュージョンFDが増幅トランジスタ304のゲートに接続される。リセットトランジスタ303のドレインは電源電圧が供給されるVdd配線310に接続され、そのゲートはリセットパルスが供給されるリセット配線306に接続される。本実施形態において、リセット配線306は、16個のリセットトランジスタ303に対して共通接続される。
各々の増幅トランジスタ304のドレインは電源電圧が供給されるVdd配線310に接続される。また、各々の増幅トランジスタ304のソースは、対応する各々の選択トランジスタ305のドレインに接続される。選択トランジスタの各ゲートには、選択パルスが供給されるデコーダ配線308に接続される。本実施形態において、デコーダ配線308は、16個の選択トランジスタ305に対してそれぞれ独立に設けられる。そして、各々の選択トランジスタ305のソースは、共通の出力配線309に接続される。負荷電流源311は、出力配線309に電流を供給する。すなわち、選択トランジスタ305に対する出力配線309は、ソースフォロアにより形成される。なお、負荷電流源311は、撮像チップ113側に設けても良いし、信号処理チップ111側に設けても良い。
ここで、電荷の蓄積開始から蓄積終了後の画素出力までの流れを説明する。リセット配線306を通じてリセットパルスがリセットトランジスタ303に印加され、同時にTX配線307を通じて転送パルスが転送トランジスタ302に印加されると、PD104およびフローティングディフュージョンFDの電位はリセットされる。
PD104は、転送パルスの印加が解除されると、受光する入射光を電荷に変換して蓄積する。その後、リセットパルスが印加されていない状態で再び転送パルスが印加されると、蓄積された電荷はフローティングディフュージョンFDへ転送され、フローティングディフュージョンFDの電位は、リセット電位から電荷蓄積後の信号電位になる。そして、デコーダ配線308を通じて選択パルスが選択トランジスタ305に印加されると、フローティングディフュージョンFDの信号電位の変動が、増幅トランジスタ304および選択トランジスタ305を介して出力配線309に伝わる。これにより、リセット電位と信号電位とに対応する画素信号は、単位画素から出力配線309に出力される。
図示するように、本実施形態においては、単位グループ131を形成する16画素に対して、リセット配線306とTX配線307が共通である。すなわち、リセットパルスと転送パルスはそれぞれ、16画素全てに対して同時に印加される。したがって、単位グループ131を形成する全ての画素は、同一のタイミングで電荷蓄積を開始し、同一のタイミングで電荷蓄積を終了する。ただし、蓄積された電荷に対応する画素信号は、それぞれの選択トランジスタ305が選択パルスによって順次印加されて、選択的に出力配線309に出力される。また、リセット配線306、TX配線307、出力配線309は、単位グループ131毎に別個に設けられる。
このように単位グループ131を基準として回路を構成することにより、単位グループ131ごとに電荷蓄積時間を制御することができる。換言すると、隣接する単位グループ131同士で、異なった電荷蓄積時間による画素信号をそれぞれ出力させることができる。更に言えば、一方の単位グループ131に1回の電荷蓄積を行わせている間に、他方の単位グループ131に何回もの電荷蓄積を繰り返させてその都度画素信号を出力させることにより、これらの単位グループ131同士で異なるフレームレートで動画用の各フレームを出力することもできる。
図4は、撮像素子100の機能的構成を示すブロック図である。アナログのマルチプレクサ411は、単位グループ131を形成する16個のPD104を順番に選択して、それぞれの画素信号を当該単位グループ131に対応して設けられた出力配線309へ出力させる。マルチプレクサ411は、PD104と共に、撮像チップ113に形成される。
マルチプレクサ411を介して出力された画素信号は、信号処理チップ111に形成された、相関二重サンプリング(CDS)・アナログ/デジタル(A/D)変換を行う信号処理回路412により、CDSおよびA/D変換が行われる。A/D変換された画素信号は、デマルチプレクサ413に引き渡され、それぞれの画素に対応する画素メモリ414に格納される。画素メモリ414のそれぞれは、後述する最大積算回数に対応する画素信号を格納できる容量を有する。デマルチプレクサ413および画素メモリ414は、メモリチップ112に形成される。
演算回路415は、画素メモリ414に格納された画素信号を処理して後段の画像処理部に引き渡す。演算回路415は、信号処理チップ111に設けられても良いし、メモリチップ112に設けられても良い。なお、図では1つの単位グループ131の分の接続を示すが、実際にはこれらが単位グループ131ごとに存在して、並列で動作する。ただし、演算回路415は単位グループ131ごとに存在しなくても良く、例えば、一つの演算回路415がそれぞれの単位グループ131に対応する画素メモリ414の値を順に参照しながらシーケンシャルに処理しても良い。
上記の通り、単位グループ131のそれぞれに対応して出力配線309が設けられている。撮像素子100は撮像チップ113、信号処理チップ111およびメモリチップ112を積層しているので、これら出力配線309にバンプ109を用いたチップ間の電気的接続を用いることにより、各チップを面方向に大きくすることなく配線を引き回すことができる。
図5は、本実施形態に係る撮像装置の構成を示すブロック図である。撮像装置500は、撮影光学系としての撮影レンズ520を備え、撮影レンズ520は、光軸OAに沿って入射する被写体光束を撮像素子100へ導く。撮影レンズ520は、撮像装置500に対して着脱できる交換式レンズであっても構わない。撮像装置500は、撮像素子100、システム制御部501、駆動部502、測光部503、ワークメモリ504、記録部505、および表示部506を主に備える。
撮影レンズ520は、複数の光学レンズ群から構成され、シーンからの被写体光束をその焦点面近傍に結像させる。なお、図1では瞳近傍に配置された仮想的な1枚のレンズで当該撮影レンズ520を代表して表している。駆動部502は、システム制御部501からの指示に従って撮像素子100のタイミング制御、領域制御等の電荷蓄積制御を実行する制御回路である。この意味において駆動部502は、撮像素子100に対して電荷蓄積を実行させて画素信号を出力させる撮像素子制御部の機能を担うと言える。
撮像素子100は、画素信号をシステム制御部501の画像処理部511へ引き渡す。画像処理部511は、ワークメモリ504をワークスペースとして種々の画像処理を施し、画像データを生成する。例えば、JPEGファイル形式の画像データを生成する場合は、ベイヤー配列で得られた信号からカラー映像信号を生成した後に圧縮処理を実行する。生成された画像データは、記録部505に記録されるとともに、表示信号に変換されて予め設定された時間の間、表示部506に表示される。
測光部503は、画像データを生成する一連の撮影シーケンスに先立ち、シーンの輝度分布を検出する。測光部503は、例えば100万画素程度のAEセンサを含む。システム制御部501の演算部512は、測光部503の出力を受けてシーンの領域ごとの輝度を算出する。演算部512は、算出した輝度分布に従ってシャッタ速度、絞り値、ISO感度を決定する。測光部503は撮像素子100で兼用してもよい。なお、演算部512は、撮像装置500を動作させるための各種演算も実行する。
駆動部502は、一部または全部が撮像チップ113に搭載されてもよいし、一部または全部が信号処理チップ111に搭載されてもよい。システム制御部501の一部が撮像チップ113または信号処理チップ111に搭載されてもよい。
図6は、画像処理部の機能ブロック図である。画像処理部511は、上記の機能に加えて、被写体推定部150、グループ選択部152、動画生成部154および動画合成部156を有する。これらの各機能は、後述する。
図7は、撮像装置が動画を生成して記録する動作を示すフローチャートである。図8および図9は撮像素子により撮像される画像の一例を示す。図10は各フレームレートと画像信号の出力タイミングとの関係を示す。
図7の動作は、ユーザが録画ボタンの押下等により、撮像装置500に対して動画の生成を指示したときに開始する。まず、被写体推定部150は、駆動部502を駆動して撮像素子100からの画像信号に基づく画像データを取得し、当該画像データが示す画像に含まれる主要被写体を推定する(S100)。
この場合に、駆動部502は撮像領域全体に含まれる単位グループ131、例えばすべての単位グループ131から画像信号を出力させることが好ましい。また、駆動部502は各単位グループ131に含まれるすべての画素から画像信号を出力させてもよいし、予め定められた間引き率で間引いた画素から画像信号を出力させてもよい。被写体推定部150は、撮像素子100から時系列的に得られた複数の画像を比較して、移動している被写体を主要被写体として特定する。なお、主要被写体の推定には、他の方法が用いられてもよい。
例えば、被写体推定部150は、撮像素子100から時間的に前後する画像として図8の画像170および図9の画像178を取得した場合に、これらの差分から子供を主要被写体171として特定する。なお、画像170および画像178における格子線は単位グループ131の境界を示すが、単位グループ131の数は例示であってこれらの図に示す数に限られない。
グループ選択部152は、被写体推定部150により推定された主要被写体171の像光が入射している単位グループ131を少なくとも一つ選択する(S102)。例えば、画像170において、主要被写体171を少なくとも一部含んでいる単位グループ131が選択される。さらに、主要被写体171が撮像領域内で移動することを考慮して、グループ選択部152は、主要被写体171を少なくとも一部含んでいる単位グループ131のさらに周囲の単位グループ131も選択することが好ましい。
グループ選択部152は、これら選択した単位グループ131の集合を注目領域172とする。さらにグループ選択部152は、撮像領域全体において注目領域172にふくまれない単位グループ131からなる集合を周辺領域176とする。グループ選択部152は、撮像領域の全体に対する注目領域172の範囲を示す領域情報174を特定する。
図8に示す例において、注目領域172は、横7個、縦4個の計28個の単位グループ131からなる矩形の領域である。これに対し、周辺領域176は、撮像領域である横21個、縦6個の計126個から注目領域172を除いた98個の単位グループ131からなる。また、領域情報174として、撮像領域における注目領域172の図中の左上端の単位グループ131の左からおよび上から数えた位置(9,2)が特定される。さらにサイズ情報として、注目領域172の縦横数7×4が特定される。
グループ選択部152が、注目領域172に含まれる単位グループ131を特定する情報と周辺領域176とを特定する情報とを駆動部502に伝達する。この場合に、注目領域172と周辺領域176とにそれぞれ適用するフレームレートの情報を併せて伝達する。ここで、注目領域172に適用するフレームレートは、周辺領域176に適用するフレームレートより高いことが好ましい。例えば、周辺領域176に適用するフレームレートが60fpsである場合に、注目領域172に適用するフレームレートは180fpsに設定される。これらのフレームレートの値は予め設定されて、グループ選択部152が参照可能に格納されていることが好ましいが、ユーザが後から値を変更できるようになっていてもよい。
駆動部502は、撮像素子100を駆動して各フレームレートで撮像を行う(S104)。すなわち、駆動部502は、注目領域172に含まれる単位グループ131に対しては、高いフレームレートで電荷蓄積および画像信号の出力を実行させ、周辺領域176に含まれる単位グループ131に対しては、低いフレームレートで電荷蓄積および画像信号の出力を実行させる。言い換えれば、駆動部502は、周辺領域176に含まれる単位グループ131に対して1つのフレームに対応する画像信号を得る間に、注目領域172に含まれる単位グループ131に対して時系列的に並んだ複数のフレームに対応する画像信号を得る。
例えば、周辺領域176のフレームレートが60fpsであって、注目領域172のフレームレートが180fpsに設定されている場合に、図10に示すように、駆動部502は、周辺領域176から1つのフレームB1の画像信号を得る時間1/60sまでの間に、注目領域172から3つのフレームA1,A2,A3の画像信号を得る(1/60s=3×1/180s)。この場合に、駆動部502は、周辺領域176に含まれる単位グループ131のリセットトランジスタ303、転送トランジスタ302および選択トランジスタ305の組と、注目領域172に含まれる単位グループ131のリセットトランジスタ303、転送トランジスタ302および選択トランジスタ305の組とを別個に駆動することにより、異なるフレームレートで画像信号を得る。
なお、図10は画像信号の出力のタイミングを示しているが、露光時間の長さまでも示しているものではない。駆動部502は予め演算部512で算出された露光時間となるように、周辺領域176と注目領域172とに対して、上記トランジスタの組を駆動する。
これに加えて、露光時間の長さをフレームレートに応じて変化させてもよい。例えば図10に示す例において、周辺領域176の1フレームの露光時間を1/3倍にしておき、注目領域172と実質的に同じ露光時間としてもよい。また、画像信号の出力後にフレームレートの比で当該画像信号を補正してもよい。また、周辺領域176と注目領域172との間で画像信号の出力のタイミングが図10のように同期していなくても、非同期であってもよい。
画像処理部511は、注目領域172からの画像信号をワークメモリ504の予め定められた記憶領域に、フレームごとに順次、記憶する(S106)。同様に、画像処理部511は、周辺領域176からの画像信号をワークメモリ504の予め定められた記憶領域に、フレームごとに順次、記憶する(同ステップ)。
動画生成部154は、ワークメモリ504に記憶された注目領域172の画像信号を読み出して(S108)、注目領域172の複数のフレームが含まれる注目領域動画のデータを生成する(S110)。同様に、動画生成部154は、ワークメモリ504に記憶された周辺領域176の画像信号を読み出して、周辺領域176の複数のフレームが含まれる周辺領域動画のデータを生成する(同ステップ)。ここで、注目領域動画および周辺領域動画はそれぞれ、MPEGのような汎用のフォーマットで生成されてそれぞれ別個に再生できるようになっていてもよいし、後述する合成処理を経なければ再生できない専用のフォーマットで生成されてもよい。
図11は、動画生成部により生成された注目領域動画および周辺領域動画を模式的に示す。動画生成部154は、駆動部502が注目領域172を駆動したフレームレートに対応したフレームレートで、注目領域動画を生成する。図11に示す例において、駆動部502が注目領域172を駆動したフレームレート1/180fpsと同一のフレームレート1/180fpsで、注目領域動画が生成される。
同様に、動画生成部154は、駆動部502が周辺領域176を駆動したフレームレートに対応したフレームレートで、周辺領域動画を生成する。図11に示す例において、駆動部502が周辺領域176を駆動したフレームレート1/60fpsと同一のフレームレート1/60fpsで、周辺領域動画が生成される。なお、周辺領域動画において注目領域172に対応する領域には有効な値が存在せず、図中は斜線で示した。
さらに動画生成部154は注目領域動画および周辺領域動画にヘッダ情報を付加して、これらのデータを記録部505に記録する(S112)。ヘッダ情報は、撮像領域の全体に対する注目領域172の位置を示す領域情報、注目領域172の大きさを示すサイズ情報および、注目領域172の画像信号の出力タイミングと周辺領域176の画像信号の出力タイミングとの関係を示すタイミング情報を含む。
システム制御部501は次の単位時間の撮像を行うか否かを判断する(S114)。次の単位時間の撮像を行うか否かは、その時点でユーザから動画の記録ボタンが押下されているか否かで判断される。次の単位時間の撮像を行う場合は(S114:Yes)、上記ステップS102に戻り、次の単位時間の撮像を行わない場合は(S114:No)、当該動作を終了する。
ここで「単位時間」は予めシステム制御部501に設定されている時間であって、数秒程度である。この単位時間、注目領域172のフレームレートおよび単位グループ数、並びに、周辺領域176のフレームレートおよび単位グループ数によって、ステップS106において記憶に用いられる記憶容量が決まる。またこれらの情報に基づいて、当該記憶容量において注目領域172のデータを記憶する領域と、周辺領域176のデータを記憶する領域とが定められる。
以上により、主要被写体171が含まれる注目領域172からは高いフレームレートで画像信号を得ることができるとともに、周辺領域176を低いフレームレートで抑えることでデータ量を減らすことができる。よって、全画素からの高速読出しに比べて、駆動および画像処理の負荷を減らし、消費電力および発熱を抑えることができる。
なお、図7に示す例において次の単位時間が開始されるときに、ステップS102で改めて単位グループ131が選択され、領域情報およびサイズ情報が更新される。これにより、主要被写体171に追従して注目領域172を逐次、更新することができる。図11に示す例においては、注目領域動画における単位時間の最初のフレームA7において、以前の単位時間の最後のフレームA6とは異なる単位グループ131からなる注目領域182が選択されるとともに、これに伴って領域情報184および周辺領域186も更新されている。
図12は、動画生成部が付加するヘッダ情報の一例を示す。図12のヘッダ情報は、注目領域動画を特定する注目領域動画ID、注目領域動画のフレームレート、当該注目領域動画に対応する周辺領域動画を特定する周辺領域動画ID、周辺領域動画のフレームレート、タイミング情報、領域情報およびサイズ情報を含む。これらのヘッダ情報は、注目領域動画および周辺領域動画のいずれか一方にヘッダ情報として付加されていてもよいし、両方に付加されていてもよい。
図13は、撮像装置が動画を再生して表示する動作を示すフローチャートである。当該動作は、表示部506にサムネイル表示された注目領域動画のいずれかをユーザが特定して再生ボタンを押下したことにより開始する。
動画合成部156は、ユーザにより特定された注目領域動画のデータを記録部505から読み出す(S150)。動画合成部156は、当該注目領域動画に対応する周辺領域動画のデータを記録部505から読み出す(S152)。
この場合に、動画合成部156は、ステップS150で読み出した注目領域動画のヘッダ情報に示されている周辺領域動画IDにより周辺領域動画を特定する。これに代えて、ヘッダ情報に示されているタイミング情報と同一のタイミング情報をヘッダ情報として含む周辺領域画像が検索されて特定されてもよい。
なお、上記の例では注目領域動画にヘッダ情報が含まれるとしている。一方、注目領域動画にヘッダ情報が含まれずに周辺領域動画にヘッダ情報が含まれている場合には、先にステップS150においてユーザに周辺領域動画を特定させて読出し、そのヘッダ情報からステップS152において注目領域動画を特定して読み出してもよい。
動画合成部156は、注目領域動画のフレームと周辺領域動画のフレームとを用いて、表示動画のフレームを合成する(S154)。この場合にまず、注目領域動画の先頭のフレームA1が、周辺領域動画の先頭のフレームB1における領域情報174が示す位置に嵌め込まれることにより、表示動画の先頭のフレームC1が合成される。動画合成部156は、図11に示すように、表示動画の先頭のフレームC1を表示部506に表示させる(S156)。
動画合成部156は、周辺領域動画における次のフレームB2までの間に注目領域動画の次のフレームがあるか否かを判断する(S158)。動画合成部156は、注目領域動画の次のフレームがある場合に(S158:Yes)、注目領域172を次のフレームA2、A3で更新しかつ周辺領域176を前のフレームB1に保持することにより(S162)、表示動画の次のフレームC2、C3を合成して(S162)、順次、表示する(S156)。
一方、ステップS158において周辺領域動画における次のフレームB2までの間に注目領域動画の次のフレームがない場合に(S158)、動画合成部156は、注目領域172を次のフレームA4で更新しかつ周辺領域176も次のフレームB2で更新することにより(S164)、表示動画の次のフレームC4を合成して(S162)、表示する(S156)。
周辺領域動画において周辺領域176の次フレームがある限り(S160:Yes)、ステップS154からS160が繰り返される。周辺領域動画において周辺領域176の次フレームがない場合に(S160:No)、動画合成部156は、当該注目領域動画と周辺領域動画との組の単位時間の次の単位時間における注目領域動画と周辺領域動画との組があるか否かを検索する(S166)。例えば、動画合成部156は、記録部505の同一フォルダ内において、当該注目領域動画のタイミング情報が示すタイミングの直後を示すタイミング情報がヘッダ情報に含まれた注目領域動画があるか否かを検索する。
次の単位時間における注目領域動画と周辺領域動画との組がある限り(S166:Yes)、ステップS150からS166が繰り返される。次の単位時間における注目領域動画と周辺領域動画との組がない場合に(S166:No)、当該動作を終了する。
以上によれば、全体のデータ量を減らしつつ、主要被写体171が含まれる注目領域172について滑らかな動画を表示することができる。なお、ステップS162においては、注目領域172がそのまま次のフレームで更新されて表示画像のフレームが合成されているが、合成の方法はこれに限られない。他の例として、注目領域172における主要被写体171の境界線が画像処理により特定され、当該境界線で囲まれた主要被写体171については次のフレームに更新するとともに、注目領域172内であっても主要被写体171の境界線外側については前のフレームを維持して、周辺領域176のフレームと合成されてもよい。すなわち、注目領域172における境界線外側については周辺領域176のフレームレートに落としてもよい。これにより表示動画における滑らかさの境界が不自然に見えることを防ぐことができる。また、再生のフレームレートは、撮影時のフレームレート(注目領域は180fps、周辺領域は60fps)と同じである必要はなく、例えば注目領域を60fps、周辺領域を20fpsなどとしてもよい。その場合はスローモーション再生となる。
図14は、撮像装置が動画を生成して記録する他の動作の例を示すフローチャートである。図14において図7と同一の動作については同一の参照番号を付して説明を省略する。
図14の動作において、注目領域172と周辺領域176とで、図7のフレームレートに代えて、または、加えて間引き率を異ならせている。より詳しくは、ステップS120において、駆動部502は、注目領域172に含まれる単位グループ131に対しては、低い間引き率で間引いた画素に対して電荷蓄積および画像信号の出力を実行させ、周辺領域176に含まれる単位グループ131に対しては、高い間引き率で間引いた画素に対して電荷蓄積および画像信号の出力を実行させる。例えば注目領域172に含まれる単位グループ131に対して間引き率0すなわち全画素が読み出され、周辺領域176に含まれる単位グループ131に対して間引き率0.5すなわち半分画素が読み出される。
この場合に、駆動部502は、周辺領域176に含まれる単位グループ131のリセットトランジスタ303、転送トランジスタ302および選択トランジスタ305の組と、注目領域172に含まれる単位グループ131のリセットトランジスタ303、転送トランジスタ302および選択トランジスタ305の組とを別個に駆動することにより、異なる間引き率で画像信号を得る。
ステップS110において、動画生成部154は、低い間引き率で出力された注目領域172の画像信号に基づき、注目領域172に対応する注目領域動画を生成する。動画生成部154は、同様に、高い間引き率で出力された周辺領域176の画像信号に基づき、周辺領域176に対応する周辺領域動画を生成する。またステップS112において、動画生成部154は、それぞれの間引き率の情報を付加して注目領域動画および周辺領域動画を記録部505に記録する。
図15は、一の単位グループに対して間引き率0.5で読み出される画素188の例を示す。図15に示す例において、周辺領域176の単位グループ132がベイヤー配列である場合に垂直方向についてベイヤー配列の単位の一つ置き、すなわち、画素単位でみた場合の二行づつ交互に、読み出される画素188と読み出されない画素が設定される。これにより色バランスを崩すことなく間引き読出しをすることができる。
図16は、図14に対応した、撮像装置が動画を再生して表示する動作を示すフローチャートである。図16において図13と同一の動作については同一の参照番号を付して説明を省略する。
図16のステップS170において、動画合成部156は、周辺領域動画のフレームの画素を補完して解像度を注目領域動画のフレームの解像度と整合させてから、注目領域動画のフレームを周辺領域動画のフレームに嵌め込むことにより、表示画像のフレームを合成する。これにより、主要被写体171が含まれる注目領域172からは高い解像度で画像信号を得ることができるとともに、周辺領域176を低い解像度で抑えることでデータ量を減らすことができる。よって、全画素からの高速読出しに比べて、駆動および画像処理の負荷を減らし、消費電力および発熱を抑えることができる。
なお、図1から図16に示す例において、注目領域172は矩形であるが注目領域172の形状はこれに限られない。注目領域172は単位グループ131の境界線に沿っていれば凸の多角形、凹の多角形、または、中に周辺領域176が入り込んだドーナツ形状等であってもよい。また、注目領域172は互いに離間して複数個設定されてもよい。その場合に、互いの注目領域172で異なるフレームレートが設定されてもよい。
また、注目領域172および周辺領域176のフレームレートは可変であってもよい。例えば、単位時間が経過するごとに主要被写体171の移動量を検出して、主要被写体171の移動量が大きいほど注目領域172により高いフレームレートを設定してもよい。また、単位時間内で随時、主要被写体171に追従して注目領域172に含まれるべき単位グループ131の選択を更新してもよい。
図7および図14の動画の生成はユーザの録画ボタンの押下により開始し、図13および図16の動画の再生はユーザの再生ボタンの押下により開始しているが、開始時点はこれに限られない。他の例として、ユーザからの一つのボタン操作によって、動画の生成の動作と再生の動作とを連続して実行させて、表示部506にスルー画表示(またはライブビュー表示ともいう)してもよい。この場合に、注目領域172をユーザに認識させる表示が重畳されてもよい。例えば、表示部506において注目領域172の境界線に枠を表示したり、周辺領域176の輝度を下げるか注目領域172の輝度を上げるかしてもよい。
図14の動作において、注目領域172と周辺領域176とで間引き率を異ならせている。間引き率を異ならせることに代えて、隣接行の画素の画素信号を加算するときの行数を異ならせてもよい。例えば、注目領域172においては行数が1、すなわち、隣接行で加算せずに画素信号を出力し、周辺領域176においては注目領域172よりも多い行数、例えば行数を2として、隣接する2行の同じ列の画素の画素信号を出力する。これにより、図14と同様に、周辺領域176よりも注目領域172の解像度を高く維持しつつ、全体の信号量を減らすことができる。また、隣接行の画素信号を加算することに代えて、隣接列の画素信号を加算してもよい。この場合は、注目領域172と周辺領域176とで隣接列の画素の画素信号を加算するときの列数を異ならせる。さらに、上記加算においては、加算した行数または列数で当該加算値を割った平均を算出する処理を含めてもよい。
なお、動画合成部156は撮像装置500の画像処理部511に設けられていることに代えて、外部の表示装置、例えばPCに設けられてもよい。また、動画を生成する場合に限られず、静止画を生成する場合に上記実施形態が適用されてもよい。
また、上記実施形態はいずれも複数の単位グループ131を、注目領域172と周辺領域176との2つに分けているが、これに限られず3つ以上の領域に分けてもよい。この場合に、注目領域172と周辺領域176との境界に該当する単位グループ131を境界領域として、当該境界領域には、注目領域172に用いられる制御パラメータの値と周辺領域176に用いられる制御パラメータの値との中間の値が用いられて制御されてもよい。これにより、注目領域172と周辺領域176との境界が不自然に見えることを防ぐことができる。
注目領域172と周辺領域176とで電荷の蓄積時間、蓄積回数等を異ならせてもよい。この場合に注目領域172と周辺領域176とを輝度に基づいて分けてもよく、さらに中間領域を設けてもよい。
図17は、シーンの例と領域分割を説明する図である。図17(a)は、撮像チップ113の画素領域が捉えるシーンを示す。具体的には、屋内環境に含まれるシャドウ被写体601および中間被写体602と、窓枠604の内側に観察される屋外環境のハイライト被写体603とが同時に写り込むシーンである。このような、ハイライト部からシャドウ部までの明暗差が大きなシーンを撮影する場合、従来の撮像素子であれば、ハイライト部を基準として電荷蓄積を実行するとシャドウ部で黒潰れが生じ、シャドウ部を基準として電荷蓄積を実行するとハイライト部で白飛びが生じた。すなわち、ハイライト部もシャドウ部も一律に一度の電荷蓄積により画像信号を出力させるには、明暗差の大きなシーンに対してフォトダイオードのダイナミックレンジが不足していると言える。そこで、本実施形態においては、シーンをハイライト部、シャドウ部といった部分領域に分割して、それぞれの領域に対応するフォトダイオードの電荷蓄積回数を互いに異ならせることにより、ダイナミックレンジの実質的な拡大を図る。
図17(b)は、撮像チップ113の画素領域における領域分割を示す。演算部512は、測光部503が捉えた図17(a)のシーンを解析して、輝度を基準に画素領域を分割する。例えば、システム制御部501は、測光部503に露光時間を変更しつつ複数回のシーン取得を実行させ、演算部512は、その白飛び領域、黒潰れ領域の分布の変化を参照して画素領域の分割ラインを決定する。図17(b)の例においては、演算部512は、シャドウ領域611、中間領域612、およびハイライト領域613の3領域に分割している。
分割ラインは、単位グループ131の境界に沿って定義される。すなわち、分割された各領域は、整数個のグループをそれぞれ含む。そして、同一の領域に包含される各グループの画素は、演算部512によって決定されたシャッタ速度に対応する期間内において、同一回数の電荷蓄積および画素信号出力を行う。属する領域が異なれば、異なる回数の電荷蓄積および画素信号出力を行う。
図18は、図17の例による分割された領域ごとの電荷蓄積制御を説明する図である。演算部512は、ユーザから撮影準備指示を受けると、測光部503の出力からシャッタ速度T0を決定する。さらに、上述のようにシャドウ領域611、中間領域612およびハイライト領域613に分割して、それぞれの輝度情報から電荷蓄積回数を決定する。電荷蓄積回数は、1回あたりの電荷蓄積により画素が飽和しないように決定される。例えば、1回の電荷蓄積動作において蓄積可能な8割から9割の電荷が蓄積されることを基準として、電荷蓄積回数が決定される。
ここでは、シャドウ領域611を1回とする。すなわち、決定されたシャッタ速度T0と電荷蓄積時間を一致させる。また、中間領域612の電荷蓄積回数を2回とする。すなわち、1回の電荷蓄積時間をT0/2として、シャッタ速度T0の間に2回の電荷蓄積を繰り返させる。また、ハイライト領域613の電荷蓄積回数を4回とする。すなわち、1回の電荷蓄積時間をT0/4として、シャッタ速度T0の間に4回の電荷蓄積を繰り返させる。
ユーザから撮影指示を時刻t=0で受けると、駆動部502は、いずれの領域に属するグループの画素に対しても、リセットパルスと転送パルスを印加する。この印加をトリガーとして、いずれの画素も電荷蓄積を開始する。
時刻t=T0/4となったら、駆動部502は、ハイライト領域613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部502は、ハイライト領域613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、2回目の電荷蓄積を開始させる。
なお、画素信号の選択出力には時間を要するので、1回目の電荷蓄積の終了と2回目の電荷蓄積の開始の間には時間差が生じる。この時間差が実質的に無視し得るのであれば、上述のように、シャッタ速度T0に対して電荷蓄積回数で割った時間を1回の電荷蓄積時間とすれば良い。一方、無視し得ないのであれば、その時間を考慮して、シャッタ速度T0を調整したり、1回の電荷蓄積時間をシャッタ速度T0に対して電荷蓄積回数で割った時間よりも短くしたりすれば良い。
時刻t=T0/2となったら、駆動部502は、中間領域612とハイライト領域613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部502は、中間領域612とハイライト領域613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、中間領域612に対しては2回目の、ハイライト領域613に対しては3回目の電荷蓄積を開始させる。
時刻t=3T0/4となったら、駆動部502は、ハイライト領域613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部502は、ハイライト領域613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、4回目の電荷蓄積を開始させる。
時刻t=T0となったら、駆動部502は、全領域の画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線309に出力させる。以上の制御により、シャドウ領域611に対応する画素メモリ414にはそれぞれ1回分の画素信号が格納され、中間領域612に対応する画素メモリ414にはそれぞれ2回分の画素信号が格納され、ハイライト領域613に対応する画素メモリ414にはそれぞれ4回分の画素信号が格納される。
これらの画素信号は、順次、画像処理部511へ転送される。画像処理部511は、この画素信号から高ダイナミックレンジの画像データを生成する。具体的な処理については後述する。
図19は、積算回数とダイナミックレンジの関係を示す図である。繰り返し実行された電荷蓄積に対応する複数回分の画素信号は、画像処理部511により積算処理されて、高ダイナミックレンジの画像データの一部を形成する。
積算回数が1回、すなわち電荷蓄積を1回行った領域のダイナミックレンジを基準とした場合、積算回数が2回、すなわち電荷蓄積を2回行って出力信号を積算した領域のダイナミックレンジの拡大分は1段分となる。同様に、積算回数を4回にすれば2段分となり、128回にすれば7段分となる。すなわち、n段分のダイナミックレンジ拡大を図るには、2n回の出力信号を積算すれば良い。
ここで、画像処理部511がいずれの分割領域が何回の電荷蓄積を行ったかを識別するために、積算回数を示す3bitの指数桁が画像信号に付与されている。図示するように、指数桁は、積算数1回に対して000、2回に対して001、…128回に対して111のように順に割り当てられる。
画像処理部511は、演算回路415から受け取った各画素信号の指数桁を参照して、参照した結果が2回以上の積算数である場合には、画素信号の積算処理を実行する。例えば、積算回数が2回の場合(1段)は、2個の画素信号に対して、電荷蓄積に対応する12bitの画素信号のうち上位11bit同士を加算して、12bitの1つの画素信号を生成する。同様に、積算回数が128回(7段)の場合は、128個の画素信号に対して、電荷蓄積に対応する12bitの画素信号のうち上位5bit同士を加算して、12bitの1つの画素信号を生成する。すなわち、積算回数に対応する段数を12から引いた上位bitを互いに足し合わせて、12bitの1つの画素信号を生成する。なお、加算の対象とならない下位bitは除去される。
このように処理することにより、階調を与える輝度範囲を積算回数に合わせて高輝度側にシフトさせることができる。すなわち、高輝度側の限られた範囲に対して12bitが割り当てられることになる。したがって、従来白飛びしていた画像領域に対して階調を与えることができる。
ただし、他の分割領域については異なる輝度範囲に対して12bitを割り当てているので、単純に領域ごとに繋ぎ合わせる合成により画像データを生成することができない。そこで、画像処理部511は、得られた階調をできる限り維持しつつ全領域を12bitの画像データとするために、最大輝度画素と最低輝度画素を基準として、再量子化処理を行う。具体的には、階調がより滑らかに維持されるように、ガンマ変換を施して量子化を実行する。このように処理することにより、高ダイナミックレンジの画像データを得ることができる。
なお、積算回数は、上記のように3bitの指数桁が画素信号に付与されている場合に限らず、画素信号とは別の付随情報として記述されていても良い。また、画素信号から指数桁を省き、代わりに画素メモリ414に格納されている画素信号の数をカウントすることにより、加算処理時に積算回数を取得しても良い。
また、上記の画像処理においては、全領域を12bitの画像データに収める再量子化処理を実行したが、画素信号のbit数に対し、上限の積算回数に合わせて出力bit数を増やしても良い。例えば、上限の積算回数を16回(4段)と定めれば、12bitの画素信号に対して、全領域を16bitの画像データとすれば良い。このように処理すれば、桁落ちさせずに画像データを生成することができる。
次に、一連の撮影動作処理について説明する。図20は、撮影動作の処理を示すフロー図である。フローは、撮像装置500の電源がONにされて開始される。
システム制御部501は、ステップS201で、撮影準備指示であるスイッチSW1の押し下げがなされるまで待機する。スイッチSW1の押し下げを検知したらステップS202へ進む。
ステップS202では、システム制御部501は、測光処理を実行する。具体的には、測光部503の出力を得て、演算部512がシーンの輝度分布を算出する。そして、ステップS203へ進み、上述のように、シャッタ速度、領域分割、積算回数等を決定する。
撮影準備動作が完了したら、ステップS204へ進み、撮影指示であるスイッチSW2の押し下げがなされるまで待機する。このとき、経過時間が予め定められた時間Twを超えたら(ステップS205のYES)、ステップS201へ戻る。Twを超える前に(ステップS205のNO)スイッチSW2の押し下げを検知したら、ステップS206へ進む。
ステップS206では、システム制御部501の指示を受けた駆動部502が、図18を用いて説明した電荷蓄積処理、信号読み出し処理を実行する。そして、全ての信号読み出しが完了したらステップS207へ進み、図19を用いて説明した画像処理を実行し、生成された画像データを記録部に記録する記録処理を実行する。
記録処理が完了したらステップS208へ進み、撮像装置500の電源がOFFにされたか否かを判断する。電源がOFFにされなければステップS201へ戻り、OFFにされたら一連の撮影動作処理を終了する。
図21は、信号処理チップ111の一例としての具体的構成を示すブロック図である。上述の図4を用いた説明においては、デマルチプレクサ413および画素メモリ414がメモリチップ112に形成された一例を示したが、ここでは、信号処理チップ111に形成された例を説明する。
信号処理チップ111は、駆動部502の機能を担う。信号処理チップ111は、分担化された制御機能としてのセンサ制御部441、ブロック制御部442、同期制御部443、信号制御部444と、これらの各制御部を統括制御する駆動制御部420とを含む。駆動制御部420は、システム制御部501からの指示を、各制御部が実行可能な制御信号に変換してそれぞれに引き渡す。
センサ制御部441は、撮像チップ113へ送出する、各画素の電荷蓄積、電荷読み出しに関わる制御パルスの送出制御を担う。具体的には、センサ制御部441は、対象画素に対してリセットパルスと転送パルスを送出することにより、電荷蓄積の開始と終了を制御し、読み出し画素に対して選択パルスを送出することにより、画素信号を出力配線309へ出力させる。
ブロック制御部442は、撮像チップ113へ送出する、制御対象となる単位グループ131を特定する特定パルスの送出を実行する。図17等を用いて説明したように、分割された領域には、互いに隣接する複数の単位グループ131が包含され得る。これら同一の領域に属する単位グループ131は、ひとつのブロックを形成する。同一のブロックに含まれる画素は、同一のタイミングで電荷蓄積を開始し、同一のタイミングで電荷蓄積を終了する。そこで、ブロック制御部442は、駆動制御部420からの指定に基づいて対象となる単位グループ131に特定パルスを送出することにより、単位グループ131をブロック化する役割を担う。各画素がTX配線307およびリセット配線306を介して受ける転送パルスおよびリセットパルスは、センサ制御部441が送出する各パルスとブロック制御部442が送出する特定パルスの論理積となる。このように、各領域を互いに独立したブロックとして制御することにより、図18を用いて説明した電荷蓄積制御を実現する。駆動制御部からのブロック化指定については、後に詳述する。
同期制御部443は、同期信号を撮像チップ113へ送出する。各パルスは、同期信号に同期して撮像チップ113においてアクティブとなる。例えば、同期信号を調整することにより、同一の単位グループ131に属する画素の特定画素のみを制御対象とするランダム制御、間引き制御等を実現する。
信号制御部444は、主にA/D変換器412bに対するタイミング制御を担う。出力配線309を介して出力された画素信号は、CDS回路412aおよびマルチプレクサ411を経てA/D変換器412bに入力される。A/D変換器412bは、信号制御部444によって制御されて、入力された画素信号をデジタル信号に変換する。デジタル信号に変換された画素信号は、デマルチプレクサ413に引き渡され、そしてそれぞれの画素に対応する画素メモリ414にデジタルデータの画素値として格納される。
信号処理チップ111は、いずれの単位グループ131を組み合わせてブロックを形成するかについてのブロック区分情報と、形成されたそれぞれのブロックが何回の電荷蓄積を繰り返すかについての蓄積回数情報とを格納する、蓄積制御メモリとしてのタイミングメモリ430を有する。タイミングメモリ430は、例えばフラッシュRAMによって構成される。
上述のように、いずれの単位グループを組み合わせてブロックを形成するかについては、一連の撮影シーケンスに先立って実行されるシーンの輝度分布検出の検出結果に基づいて、システム制御部501により決定される。決定されたブロックは、例えば第1ブロック、第2ブロック…のように区分され、それぞれのブロックがいずれの単位グループ131を包含するかにより規定される。駆動制御部420は、このブロック区分情報をシステム制御部501から受け取り、タイミングメモリ430へ格納する。
また、システム制御部501は、輝度分布の検出結果に基づいて、各ブロックが何回の電荷蓄積を繰り返すかを決定する。駆動制御部420は、この蓄積回数情報をシステム制御部501から受け取り、対応するブロック区分情報と対でタイミングメモリ430へ格納する。このようにタイミングメモリ430へブロック区分情報と蓄積回数情報を格納することにより、駆動制御部420は、一連の電荷蓄積制御を、タイミングメモリ430を逐次参照して独立して実行し得る。すなわち、駆動制御部420は、1枚の画像取得制御において撮影指示の信号をシステム制御部501から一旦受け取ると、その後は各画素の制御についてその都度システム制御部501から指示を受けること無く、蓄積制御を完了させることができる。
駆動制御部420は、撮影準備指示に同期して実行される測光結果(輝度分布の検出結果)に基づいて更新されるブロック区分情報と蓄積回数情報をシステム制御部501から受け取って、タイミングメモリ430の記憶内容を適宜更新する。例えば、駆動制御部420は、撮影準備指示または撮影指示に同期して、タイミングメモリ430を更新する。このように構成することにより、より高速な電荷蓄積制御を実現すると共に、駆動制御部420が電荷蓄積制御を実行している間に、システム制御部501は他の処理を並行して実行し得る。
駆動制御部420は、撮像チップ113に対する電荷蓄積制御を実行するに留まらず、読み出し制御の実行においてもタイミングメモリ430を参照する。例えば、駆動制御部420は、各ブロックの蓄積回数情報を参照して、デマルチプレクサ413から出力される画素信号を画素メモリ414の対応アドレスに格納する。
駆動制御部420は、システム制御部501からの引渡要求に従って、対象画素信号を画素メモリ414から読み出し、画像処理部511へ引き渡す。画素メモリ414は、上述の通り、各画素に対して最大積算回数に対応する画素信号を格納できるメモリ空間を有し、実行された蓄積回数に対応するそれぞれの画素信号を画素値として格納する。例えば、あるブロックにおいて4回の電荷蓄積が繰り返された場合には、当該ブロックに含まれる画素は4回分の画素信号を出力するので、画素メモリ414上の各画素のメモリ空間には、4つの画素値が格納される。駆動制御部420は、特定画素の画素信号を要求する引渡要求をシステム制御部501から受けた場合には、画素メモリ414上の当該特定画素のアドレスを指定して、格納されている全ての画素信号を読み出し、画像処理部511へ引き渡す。例えば4つの画素値が格納されている場合には、その4つの画素値全てを順次引き渡し、1つの画素値のみが格納されている場合には、その画素値を引き渡す。
駆動制御部420は、画素メモリ414に格納された画素信号を、演算回路415に読み出して、演算回路415に上述の積算処理を実行させることができる。積算処理された画素信号は、画素メモリ414の対象画素アドレスに格納される。対象画素アドレスは、積算処理前のアドレス空間に隣接して設けても良いし、積算処理前の画素信号に対して上書きするように同一アドレスとしても良い。また、積算処理後の各画素の画素値を纏めて格納する専用空間を設けても良い。駆動制御部420は、特定画素の画素信号を要求する引渡要求をシステム制御部501から受けた場合には、その引渡要求の態様によっては、積算処理後の画素信号を画像処理部511へ引き渡すことができる。もちろん、積算処理前後の画素信号を共に引き渡すこともできる。
画素メモリ414には、引渡要求に従って画素信号を伝送するデータ転送インタフェースが設けられている。データ転送インタフェースは、画像処理部511と繋がるデータ転送ラインと接続されている。データ転送ラインは例えばバスラインのうちのデータバスによって構成される。この場合、システム制御部501から駆動制御部420への引渡要求は、アドレスバスを利用したアドレス指定によって実行される。
データ転送インタフェースによる画素信号の伝送は、アドレス指定方式に限らず、さまざまな方式を採用しうる。例えば、データ転送を行うときに、各回路の同期に用いられるクロック信号の立ち上がり・立ち下がりの両方を利用して処理を行うダブルデータレート方式を採用し得る。また、アドレス指定などの手順を一部省略することによってデータを一気に転送し、高速化を図るバースト転送方式を採用し得る。また、制御部、メモリ部、入出力部を並列に接続している回線を用いたバス方式、直列にデータを1ビットずつ転送するシリアル方式などを組み合わせて採用することもできる。
このように構成することにより、画像処理部511は、必要な画素信号に限って受け取ることができるので、特に低解像度の画像を形成する場合などにおいて、高速に画像処理を完了させることができる。また、演算回路415に積算処理を実行させる場合には、画像処理部511が積算処理を実行しなくて良いので、機能分担と並行処理により、画像処理の高速化を図ることができる。
上記図17から図21の例においては、注目領域172と周辺領域176とで電荷の蓄積回数等を異ならせることにより、注目領域172の画素信号をデジタル化したときのビット数を周辺領域176よりも大きくした。他の方法で、注目領域172と周辺領域176とのデジタル化のビット数を変えてもよい。例えば、信号処理回路412のA/D回路が、駆動部502のからの指示により、同じ一回の蓄積回数に対して注目領域172を周辺領域176よりも高いビット数でデジタル化してもよい。
図21の信号処理チップ111を用いて、注目領域172と周辺領域176とで異なる制御パラメータを用いて画素信号取得後に画像処理してもよい。例えば、図7から図10では、注目領域172と周辺領域176とで異なるフレームレートで取得した画像から動画を生成しているが、これに代えて、高いフレームレートで取得した画像を平均化する画像処理をしてS/N比を向上させてもよい。この場合に、例えば駆動制御部420により周辺領域176から1回の画素信号を得る間に、注目領域142から複数回、例えば4回の画像信号を得て、画素メモリ414に格納する。演算回路415は、画素メモリ414から注目領域142の各画素に対して得られた複数の画素信号を読み出して、画素ごとに平均する。これにより、注目領域172の各画素でのランダムノイズが減って、注目領域172のS/N比を向上させることができる。
また、図7から図10では、注目領域172と周辺領域176とで異なるフレームレートで取得した画像から動画を生成しているが、被写体の動きの速度に基づいて異なるフレームレートにしてもよい。この場合に、被写体推定部150は、フレーム間の被写体の位置の変化で上下左右方向の速度を推定する。また、被写体推定部150は、当該フレーム間の被写体の大きさの変化で、被写体の前後方向の速度が推定される。当該推定に基づいて、グループ選択部152は、低速または静止の被写体を受光する単位グループ131と、中速の被写体を受光する単位グループ131と、高速の被写体を受光する単位グループ131とを特定する。
駆動部502は、撮像素子100を駆動して、低速または静止の被写体を受光する単位グループ131には低いフレームレート、中速の被写体を受光する単位グループ131には中程度のフレームレート、高速の被写体を受光する単位グループ131に対しては高いフレームレートで撮像を行う。それぞれのフレームレートの一例は、60fps、120fps、240fpsである。
図22は、本実施形態に係る他の裏面照射型の撮像素子1100の断面図である。撮像素子1100は、入射光に対応した画素信号を出力する撮像チップ1113と、画素信号を処理する信号処理チップ1111と、画素信号を記憶するメモリチップ1112とを備える。これら撮像チップ1113、信号処理チップ1111およびメモリチップ1112は積層されており、Cu等の導電性を有するバンプ1109により互いに電気的に接続される。
なお、図示するように、入射光は主に白抜き矢印で示すZ軸プラス方向へ向かって入射する。本実施形態においては、撮像チップ1113において、入射光が入射する側の面を裏面と称する。また、座標軸に示すように、Z軸に直交する紙面左方向をX軸プラス方向、Z軸およびX軸に直交する紙面手前方向をY軸プラス方向とする。以降のいくつかの図においては、図22の座標軸を基準として、それぞれの図の向きがわかるように座標軸を表示する。
撮像チップ1113の一例は、裏面照射型のMOSイメージセンサである。PD層1106は、配線層1108の裏面側に配されている。PD層1106は、二次元的に配され、入射光に応じた電荷を蓄積する複数のPD(フォトダイオード)104、および、PD1104に対応して設けられたトランジスタ1105を有する。
PD層1106における入射光の入射側にはパッシベーション膜1103を介してカラーフィルタ1102が設けられる。カラーフィルタ1102は、互いに異なる波長領域を透過する複数の種類を有しており、PD1104のそれぞれに対応して特定の配列を有している。カラーフィルタ1102の配列については後述する。カラーフィルタ1102、PD1104およびトランジスタ1105の組が一つの画素を形成する。
カラーフィルタ1102における入射光の入射側には、それぞれの画素に対応して、マイクロレンズ1101が設けられる。マイクロレンズ1101は、対応するPD1104へ向けて入射光を集光する。
配線層1108は、PD層1106からの画素信号を信号処理チップ1111に伝送する配線1107を有する。配線1107は多層であってもよく、また、受動素子および能動素子が設けられてもよい。
配線層1108の表面には複数のバンプ1109が配される。当該複数のバンプ1109が信号処理チップ1111の対向する面に設けられた複数のバンプ1109と位置合わせされて、撮像チップ1113と信号処理チップ1111とが加圧等されることにより、位置合わせされたバンプ1109同士が接合されて、電気的に接続される。
同様に、信号処理チップ1111およびメモリチップ1112の互いに対向する面には、複数のバンプ1109が配される。これらのバンプ1109が互いに位置合わせされて、信号処理チップ1111とメモリチップ1112とが加圧等されることにより、位置合わせされたバンプ1109同士が接合されて、電気的に接続される。
なお、バンプ1109間の接合には、固相拡散によるCuバンプ接合に限らず、はんだ溶融によるマイクロバンプ結合を採用しても良い。また、バンプ1109は、例えば後述する一つの単位グループに対して一つ程度設ければ良い。したがって、バンプ1109の大きさは、PD1104のピッチよりも大きくても良い。また、画素が配列された画素領域以外の周辺領域において、画素領域に対応するバンプ1109よりも大きなバンプを併せて設けても良い。
信号処理チップ1111は、表裏面にそれぞれ設けられた回路を互いに接続するTSV(シリコン貫通電極)110を有する。TSV1110は、周辺領域に設けられることが好ましい。また、TSV1110は、撮像チップ1113の周辺領域、メモリチップ1112にも設けられて良い。
図23は、撮像チップ1113の画素配列と単位グループ1131を説明する図である。特に、撮像チップ1113を裏面側から観察した様子を示す。画素領域には2000万個以上もの画素がマトリックス状に配列されている。図23の例においては、隣接する4画素×4画素の16画素が一つの単位グループ1131を形成する。図の格子線は、隣接する画素がグループ化されて単位グループ1131を形成する概念を示す。単位グループ1131を形成する画素の数はこれに限られず1000個程度、例えば32画素×64画素でもよいし、それ以上でもそれ以下でもよい。
画素領域の部分拡大図に示すように、単位グループ1131は、緑色画素Gb、Gr、青色画素Bおよび赤色画素Rの4画素から成るいわゆるベイヤー配列を、上下左右に4つ内包する。緑色画素は、カラーフィルタ1102として緑色フィルタを有する画素であり、入射光のうち緑色波長帯の光を受光する。同様に、青色画素は、カラーフィルタ1102として青色フィルタを有する画素であって青色波長帯の光を受光し、赤色画素は、カラーフィルタ1102として赤色フィルタを有する画素であって赤色波長帯の光を受光する。
本実施形態において、複数の単位グループ1131のそれぞれについて評価値が算出され、当該評価値に基づいた制御パラメータで単位グループに含まれる画素の露光または読み出しが制御される。評価値の例は、単位グループ1131内の画素信号の平均、単位グループ1131内外の画素信号の重み付け平均、単位グループ1131内のコントラスト、単位グループ1131内外のコントラストの重み付け平均単位ブロック1131内の輝度、単位グループ1131内外の輝度の重み付け平均等である。また、制御パラメータの例は、フレームレート、間引き率、画素信号を加算する加算行数または加算列数、電荷の蓄積時間または蓄積回数、デジタル化のビット数等である。さらに、制御パラメータは、画素からの画像信号取得後の画像処理におけるパラメータであってもよい。
図24は、撮像チップ1113の単位グループ1131に対応する回路図である。図において、代表的に点線で囲む矩形が、1画素に対応する回路を表す。なお、以下に説明する各トランジスタの少なくとも一部は、図22のトランジスタ1105に対応する。
上述のように、単位グループ1131は、16画素から形成される。それぞれの画素に対応する16個のPD1104は、それぞれ転送トランジスタ1302に接続され、各転送トランジスタ1302の各ゲートには、転送パルスが供給されるTX配線1307に接続される。本実施形態において、TX配線1307は、16個の転送トランジスタ1302に対して共通接続される。
各転送トランジスタ1302のドレインは、対応する各リセットトランジスタ1303のソースに接続されると共に、転送トランジスタ1302のドレインとリセットトランジスタ1303のソース間のいわゆるフローティングディフュージョンFDが増幅トランジスタ1304のゲートに接続される。リセットトランジスタ1303のドレインは電源電圧が供給されるVdd配線1310に接続され、そのゲートはリセットパルスが供給されるリセット配線1306に接続される。本実施形態において、リセット配線1306は、16個のリセットトランジスタ1303に対して共通接続される。
各々の増幅トランジスタ1304のドレインは電源電圧が供給されるVdd配線1310に接続される。また、各々の増幅トランジスタ1304のソースは、対応する各々の選択トランジスタ1305のドレインに接続される。選択トランジスタの各ゲートには、選択パルスが供給されるデコーダ配線1308に接続される。本実施形態において、デコーダ配線1308は、16個の選択トランジスタ1305に対してそれぞれ独立に設けられる。そして、各々の選択トランジスタ1305のソースは、共通の出力配線1309に接続される。負荷電流源1311は、出力配線1309に電流を供給する。すなわち、選択トランジスタ1305に対する出力配線1309は、ソースフォロアにより形成される。なお、負荷電流源1311は、撮像チップ1113側に設けても良いし、信号処理チップ1111側に設けても良い。
ここで、電荷の蓄積開始から蓄積終了後の画素出力までの流れを説明する。リセット配線1306を通じてリセットパルスがリセットトランジスタ1303に印加され、同時にTX配線1307を通じて転送パルスが転送トランジスタ1302に印加されると、PD1104およびフローティングディフュージョンFDの電位はリセットされる。
PD1104は、転送パルスの印加が解除されると、受光する入射光を電荷に変換して蓄積する。その後、リセットパルスが印加されていない状態で再び転送パルスが印加されると、蓄積された電荷はフローティングディフュージョンFDへ転送され、フローティングディフュージョンFDの電位は、リセット電位から電荷蓄積後の信号電位になる。そして、デコーダ配線1308を通じて選択パルスが選択トランジスタ1305に印加されると、フローティングディフュージョンFDの信号電位の変動が、増幅トランジスタ1304および選択トランジスタ1305を介して出力配線1309に伝わる。これにより、リセット電位と信号電位とに対応する画素信号は、単位画素から出力配線1309に出力される。
図示するように、本実施形態においては、単位グループ1131を形成する16画素に対して、リセット配線1306とTX配線1307が共通である。すなわち、リセットパルスと転送パルスはそれぞれ、16画素全てに対して同時に印加される。したがって、単位グループ1131を形成する全ての画素は、同一のタイミングで電荷蓄積を開始し、同一のタイミングで電荷蓄積を終了する。ただし、蓄積された電荷に対応する画素信号は、それぞれの選択トランジスタ1305が選択パルスによって順次印加されて、選択的に出力配線1309に出力される。また、リセット配線1306、TX配線1307、出力配線1309は、単位グループ1131毎に別個に設けられる。
このように単位グループ1131を基準として回路を構成することにより、単位グループ1131ごとに電荷蓄積時間を制御することができる。換言すると、隣接する単位グループ1131同士で、異なった電荷蓄積時間による画素信号をそれぞれ出力させることができる。更に言えば、一方の単位グループ1131に1回の電荷蓄積を行わせている間に、他方の単位グループ1131に何回もの電荷蓄積を繰り返させてその都度画素信号を出力させることにより、これらの単位グループ1131同士で異なるフレームレートで動画用の各フレームを出力することもできる。
図25は、本実施形態に係る撮像装置の構成を示すブロック図である。撮像装置1500は、撮影光学系としての撮影レンズ1520を備え、撮影レンズ1520は、光軸OAに沿って入射する被写体光束を撮像素子1100へ導く。撮影レンズ1520は、撮像装置1500に対して着脱できる交換式レンズであっても構わない。撮像装置1500は、撮像素子1100、システム制御部1501、駆動部1502、測光部1503、ワークメモリ1504、記録部1505、および表示部1506を主に備える。
撮影レンズ1520は、複数の光学レンズ群から構成され、シーンからの被写体光束をその焦点面近傍に結像させる。なお、図25では瞳近傍に配置された仮想的な1枚のレンズで当該撮影レンズ1520を代表して表している。駆動部1502は、システム制御部1501からの指示に従って撮像素子1100のタイミング制御、領域制御等の電荷蓄積制御を実行する制御回路である。
撮像素子1100は、画素信号をシステム制御部1501の画像処理部1511へ引き渡す。画像処理部1511は、ワークメモリ1504をワークスペースとして種々の画像処理を施し、画像データを生成する。例えば、JPEGファイル形式の画像データを生成する場合は、ベイヤー配列で得られた信号からカラー映像信号を生成した後に圧縮処理を実行する。生成された画像データは、記録部1505に記録されるとともに、表示信号に変換されて予め設定された時間の間、表示部1506に表示される。
測光部1503は、画像データを生成する一連の撮影シーケンスに先立ち、シーンの輝度分布を検出する。測光部1503は、例えば100万画素程度のAEセンサを含む。システム制御部1501の演算部1512は、測光部1503の出力を受けてシーンの領域ごとの輝度を算出する。演算部1512は、算出した輝度分布に従ってシャッタ速度、絞り値、ISO感度を決定する。測光部1503は撮像素子1100で兼用してもよい。なお、演算部1512は、撮像装置1500を動作させるための各種演算も実行する。
駆動部1502は、一部または全部が撮像チップ1113に搭載されてもよいし、一部または全部が信号処理チップ1111に搭載されてもよい。システム制御部1501の一部が撮像チップ1113または信号処理チップ1111に搭載されてもよい。
図26は、信号処理チップ1111の一例としての具体的構成を示すブロック図である。信号処理チップ1111は、駆動部1502の機能を担う。
信号処理チップ1111は、分担化された制御機能としてのセンサ制御部1441、ブロック制御部1442、同期制御部1443、信号制御部1444、個別回路部1450A等と、これらの各制御部を統括制御する駆動制御部1420とを含む。信号処理チップ1111は、さらに、駆動制御部1420と撮像装置1500本体のシステム制御部1501と間のI/F回路1418を含む。これらセンサ制御部1441、ブロック制御部1442、同期制御部1443、信号制御部1444および駆動制御部1420は、信号処理チップ1111に対して一つずつ設けられる。
一方、個別回路部1450A、450B、450C、450D、450Eは、単位グループ1131A、131B、131C、131D、131Eごとに設けられる。個別回路部1450A、450B、450C、450D、450Eは、同一の構成を有するので、以下、個別回路部1450Aについて説明する。個別回路部1450Aは、CDS回路1410、マルチプレクサ1411、A/D変換回路1412、デマルチプレクサ1413、画素メモリ1414および演算回路1415を含む。演算回路1415は、I/F回路1418を介してシステム制御部1501との間で信号を送受信する。
個別回路部1450Aは対応する単位グループ1131Aの画素が配された領域に重畳した領域に配されていることが好ましい。これにより、各チップを面方向に大きくすることなく、複数の単位グループ1131Aのそれぞれに個別回路部1450Aを設けることができる。
駆動制御部1420は、タイミングメモリ1430を参照して、システム制御部1501からの指示を、各制御部が実行可能な制御信号に変換してそれぞれに引き渡す。特に、駆動制御部1420は、単位グループ1131A等のそれぞれに対して別個の制御パラメータで制御する場合に、単位グループ1131Aを特定する情報ともに各制御部に当該制御パラメータを引き渡す。駆動制御部1420は、1枚の画像取得制御において撮影指示の信号をシステム制御部1501から一旦受け取ると、その後は各画素の制御についてその都度システム制御部1501から指示を受けること無く、蓄積制御を完了させることができる。
センサ制御部1441は、撮像チップ1113へ送出する、各画素の電荷蓄積、電荷読み出しに関わる制御パルスの送出制御を担う。具体的には、センサ制御部1441は、対象画素に対してリセットパルスと転送パルスを送出することにより、電荷蓄積の開始と終了を制御し、読み出し画素に対して選択パルスを送出することにより、画素信号を出力配線1309へ出力させる。
ブロック制御部1442は、撮像チップ1113へ送出する、制御対象となる単位グループ1131を特定する特定パルスの送出を実行する。各画素がTX配線1307およびリセット配線1306を介して受ける転送パルスおよびリセットパルスは、センサ制御部1441が送出する各パルスとブロック制御部1442が送出する特定パルスの論理積となる。このように、各領域を互いに独立したブロックとして制御することができる。
同期制御部1443は、同期信号を撮像チップ1113へ送出する。各パルスは、同期信号に同期して撮像チップ1113においてアクティブとなる。例えば、同期信号を調整することにより、同一の単位グループ1131A等に属する画素の特定画素のみを制御対象とするランダム制御、間引き制御等を実現する。
信号制御部1444は、主にA/D変換回路1412に対するタイミング制御を担う。出力配線1309を介して出力された画素信号は、CDS回路1410およびマルチプレクサ1411を経てA/D変換回路1412に入力される。CDS回路1410は画素信号からノイズを取り除く。
A/D変換回路1412は、信号制御部1444によって制御されて、入力された画素信号をデジタル信号に変換する。デジタル信号に変換された画素信号は、デマルチプレクサ1413に引き渡され、そしてそれぞれの画素に対応する画素メモリ1414にデジタルデータの画素値として格納される。
画素メモリ1414には、引渡要求に従って画素信号を伝送するデータ転送インタフェースが設けられている。データ転送インタフェースは、画像処理部1511と繋がるデータ転送ラインと接続されている。データ転送ラインは例えばバスラインのうちのデータバスによって構成される。この場合、システム制御部1501から駆動制御部1420への引渡要求は、アドレスバスを利用したアドレス指定によって実行される。
データ転送インタフェースによる画素信号の伝送は、アドレス指定方式に限らず、さまざまな方式を採用しうる。例えば、データ転送を行うときに、各回路の同期に用いられるクロック信号の立ち上がり・立ち下がりの両方を利用して処理を行うダブルデータレート方式を採用し得る。また、アドレス指定などの手順を一部省略することによってデータを一気に転送し、高速化を図るバースト転送方式を採用し得る。また、制御部、メモリ部、入出力部を並列に接続している回線を用いたバス方式、直列にデータを1ビットずつ転送するシリアル方式などを組み合わせて採用することもできる。
このように構成することにより、画像処理部1511は、必要な画素信号に限って受け取ることができるので、特に低解像度の画像を形成する場合などにおいて、高速に画像処理を完了させることができる。また、演算回路1415に積算処理を実行させる場合には、画像処理部1511が積算処理を実行しなくて良いので、機能分担と並行処理により、画像処理の高速化を図ることができる。
信号処理チップ1111は、フラッシュRAM等により形成されるタイミングメモリ1430を有する。タイミングメモリ1430は、いずれの単位グループ1131A等に対して何回の電荷蓄積を繰り返すかについての蓄積回数情報等の制御パラメータを、単位グループ1131A等を特定する情報に対応づけて格納する。制御パラメータのいずれかは、個別回路部1450A等の演算回路1415により算出されて、上記タイミングメモリ1430に格納される。
駆動制御部1420は、撮像チップ1113に対する電荷蓄積制御を実行するに留まらず、読み出し制御の実行においてもタイミングメモリ1430を参照する。例えば、駆動制御部1420は、各単位グループ1131の蓄積回数情報を参照して、デマルチプレクサ1413から出力される画素信号を画素メモリ1414の対応アドレスに格納する。
駆動制御部1420は、システム制御部1501からの引渡要求に従って、対象画素信号を画素メモリ1414から読み出し、画像処理部1511へ引き渡す。画素メモリ1414は、各画素に対して最大積算回数に対応する画素信号を格納できるメモリ空間を有し、実行された蓄積回数に対応するそれぞれの画素信号を画素値として格納する。例えば、あるブロックにおいて4回の電荷蓄積が繰り返された場合には、当該ブロックに含まれる画素は4回分の画素信号を出力するので、画素メモリ1414上の各画素のメモリ空間には、4つの画素値が格納される。駆動制御部1420は、特定画素の画素信号を要求する引渡要求をシステム制御部1501から受けた場合には、画素メモリ1414上の当該特定画素のアドレスを指定して、格納されている全ての画素信号を読み出し、画像処理部1511へ引き渡す。例えば4つの画素値が格納されている場合には、その4つの画素値全てを順次引き渡し、1つの画素値のみが格納されている場合には、その画素値を引き渡す。
駆動制御部1420は、画素メモリ1414に格納された画素信号を、演算回路1415に読み出して、演算回路1415に上述の積算処理を実行させることができる。積算処理された画素信号は、画素メモリ1414の対象画素アドレスに格納される。対象画素アドレスは、積算処理前のアドレス空間に隣接して設けても良いし、積算処理前の画素信号に対して上書きするように同一アドレスとしても良い。また、積算処理後の各画素の画素値を纏めて格納する専用空間を設けても良い。駆動制御部1420は、特定画素の画素信号を要求する引渡要求をシステム制御部1501から受けた場合には、その引渡要求の態様によっては、積算処理後の画素信号を画像処理部1511へ引き渡すことができる。もちろん、積算処理前後の画素信号を共に引き渡すこともできる。
上記の通り、単位グループ1131のそれぞれに対応して出力配線1309が設けられている。撮像素子1100は撮像チップ1113、信号処理チップ1111およびメモリチップ1112を積層しているので、これら出力配線1309にバンプ1109を用いたチップ間の電気的接続を用いることにより、各チップを面方向に大きくすることなく配線を引き回すことができる。同様に、各制御部から単位グループへの信号線についても、バンプ1109を用いたチップ間の電気的接続を用いることにより、各チップを面方向に大きくすることなく配線を引き回すことができる。
図27は、演算回路1415の機能ブロックの一例である。演算回路1415は、個別回路部1450Aの画素メモリ1414に格納された画素信号を用いて評価値を演算し、当該評価値に基づいて、対応する単位グループ1131A露光または読み出しを制御する制御パラメータを出力する。図27に示す例において、演算回路1415は単位グループ1131Aの画素信号の平均の時系列における差分に基づいて、当該画素単位グループ1131Aに適用するフレームレートを算出する。
図27の演算回路1415は、平均算出部1452、平均記憶部1454、差分算出部1456およびフレームレート算出部1458を有する。平均算出部1452は、画素メモリ1414に格納された単位グループ1131Aの各画素のG画素信号を単純平均して、平均値Agを算出する。この場合に、平均算出部1452は、予め定められたフレームレートに対応する時間間隔で、そのときのフレームにおける平均値Agを算出する。
上記の例において平均値Agが単位グループ1131Aごとに一つの値が算出され、平均記憶部1454に記憶される。前後のフレームの平均値Agの差分をとるので、平均記憶部1454に少なくとも二つの値を記憶するメモリ空間が設けられる。
差分算出部1456は、平均記憶部1454に記憶されている最新のフレームにおける平均値Agと、時間的にその一つ前のフレームにおける平均値Agとの差分dを算出する。この差分は絶対値で出力されてよい。
フレームレート算出部1458は、差分算出部1456により算出された差分dを、予め定められた基準値d0等と比較することにより、フレームレートfを算出する。ここで、例えば、フレーム間の差分dが大きいほどフレームレートfが高くなるような対応関係がテーブルとしてフレームレート算出部1458に格納されている。
フレームレート算出部1458は、算出したフレームレートfを駆動制御部1420に出力する。これに代えてまたはこれに加えて、フレームレート算出部1458は、当該フレームレートfをタイミングメモリ1430に直接書き込んでもよい。
図28は、フレーム間の差分dとフレームレートfとの対応関係の一例を示す。図28において、フレーム間の差分は2つの基準値d0、d1を有し、これに対応して、3段階のフレームレートf0、f1、f2が設けられている。
フレーム間の差分dが、低い方の基準値d0以下の場合、フレームレート算出部1458は、最も低いフレームレートf0を、当該単位グループ1131Aに適用するフレームレートfとして出力する。また、フレーム間の差分dが基準値d0と、高い方の基準値d1との間である場合、フレームレート算出部1458は、中間のフレームレートf1を出力する。フレーム間の差分dが基準値d1よりも大きい場合、フレームレート算出部1458は、最も高いフレームレートf2を出力する。
ここで、演算回路1415が上記一連の演算をする時間間隔は、最も低いフレームレートf0のフレーム間に対応する、(1/f0)秒に設定されることが好ましい。これにより、そのときに駆動されているフレームレートに関わらず、複数の単位グループ1131A、131B等の間で同じタイミングで次のフレームレートを算出することができる。また、当該最も低いフレームレートf0で駆動されている場合でも、前回の算出時とは異なるフレームに基づいて新たなフレームレートfを算出することができる。
図29および図30は撮像素子により撮像される画像の一例を示す。画像1170および画像1178における格子線は単位グループ1131の境界を示すが、単位グループ1131の数は例示であってこれらの図に示す数に限られない。また、単位グループ1131A等を単に「A」等で示した。なお主要被写体1171を含む単位グループを太線で示した。
撮像素子1100が、例えば、時間的に前後する画像として図29の画像1170および図30の画像1178を取得したとする。図中の単位グループ1131Aに着目すると、前のフレームの画像1170では当該単位グループ1131Aは、主要被写体1171を含まないが、後のフレームの画像1178では含んでいる。よって、平均算出部1452により算出された画像1170と画像1178における単位グループ1131Aの平均値Agの差分dは、大きく表れる。
これによりフレームレート算出部1458は、図28の対応関係に基づいて、画像1178以降の単位グループ1131Aのフレームレートfを高く算出する。よって、駆動制御部1420は、画像1178以降の単位グループ1131Aの各画素を高いフレームレートf2等で駆動する。従って、駆動制御部1420は、時間的な前後のフレーム間で動きの大きい被写体に対して高いフレームレートf2等で画素信号を取得することができる。
高いフレームレートf2で駆動されている単位グループ1131に対しては、低いフレームレートf0で駆動されている単位グループ1131が一回の電気蓄積をしている間に、複数回の電気蓄積を行うことができる。よって、高いフレームレートf2等で駆動された単位グループ1131の画素信号をデジタル化したときのビット数を、低いフレームレートf0で駆動された単位グループ1131よりも大きくすることができる。これにより、高いフレームレートf2等で駆動された単位グループ1131から高い階調の画像を生成することができる。
デジタル化のビット数を大きくすることに代えて、高いフレームレートf2等で取得した画像を平均化する画像処理をしてS/N比を向上させてもよい。この場合に、低いフレームレートf0で駆動されている単位グループ1131が一回の電気蓄積をしている間に、 高いフレームレートf2で駆動されている単位グループ1131から複数回、例えば4回の画像信号が得られ、画素メモリ1414に格納される。演算回路1415は、画素メモリ1414から高いフレームレートf2で制御された単位グループ1131の各画素に対して得られた複数の画素信号を読み出して、画素ごとに平均する。これにより、当該単位グループ1131の各画素でのランダムノイズを減らして、S/N比を向上させることができる。
以上により、画像1170等の全体の画素信号を後段の画像処理部1511が取得して主要被写体を推定してから各単位グループ1131A等のフレームレートfを算出するのに比べて、迅速かつ省電力でフレームレートfを算出することができる。また、いずれかの単位グループ1131の画素自体、配線、処理回路等に不具合があっても、他の単位グループ1131に対しては、迅速かつ省電力でフレームレートfを算出することができる。
なお、図27の平均算出部1452は、対応する単位グループ1131AのG画素の画素信号を平均している。これに代えて、平均算出部1452は、R画素およびB画素の画素信号を含んだ平均を算出してもよい。また、平均算出部1452は、G画素の平均、R画素の平均およびB画素の平均を算出してもよい。この場合にフレームレート算出部1458は、G画素の平均の差分、R画素の平均の差分およびB画素の差分のいずれかが閾値を越えているか等の条件に基づいて、フレームレートfを算出してもよい。さらには、G画素の平均、R画素の平均、B画素の平均を所定割合で加算した結果で判断してもよい。また、平均値の算出は、単位グループ内に配置される部分領域の平均値でもよい。
また、平均算出部1452は、図29等に示す、当該単位グループ1131Aの周辺の単位グループ1131B、131C、131D、131E等の平均値Agを、他の個別回路部1450等の演算回路1415から取得して、当該単位グループ1131Aの平均値Agに加味してもよい。例えば、それらの平均値が重み付け平均されてもよい。平均算出部1452は、当該単位グループ1131Aの周辺の単位グループ1131B、131C、131D、131E等の平均値Agを、他の演算回路1415等から取得するのに代えて、他の個別回路部1450B等の画素メモリ1414から画素信号を読み出して自らが平均値Agを算出してもよい。
また、図28の例において差分の基準値は2つであってフレームレートは3段階であるが、差分の基準値の個数およびフレームレートの段階数はこれらに限られない。
図31は、他の演算回路1416の機能ブロックの一例である。図31に示す例において、演算回路1416は単位グループ1131Aの画素信号のコントラストに基づいて、当該画素単位グループ1131Aに適用する間引率を算出する。
図31の演算回路1416は、高域成分算出部1460と、総和算出部1462と、間引率算出部1464とを有する。高域成分算出部1460は、画素メモリ1414に格納された単位グループ1131Aの各画素のG画素信号を読み出し、その2次元配列に基づいたハイパスフィルタ処理をすることにより空間的な高周波成分Ghを抽出する。同様に、高域成分算出部1460は、R画素の高周波成分RhおよびB画素の高周波成分Bhを算出する。
総和算出部1462は、上記高周波成分Gh、Rh、Bhの絶対値の総和を算出する。間引率算出部1464は、上記総和に基づいて、当該単位グループ1131Aに含まれる画素を間引き読み出しする間引き率を算出する。この場合に、総和が大きいほど間引き率が低くなる対応関係を示すテーブルが予め間引率算出部1464に記憶されていることが好ましい。例えば、図28の対応関係に変えて、総和の基準値と間引率とが対応づけられている。
例えば、総和の基準値が1つ設定されており、総和が基準値よりも高い場合には間引き無しすなわち全画素読み出しで、総和が基準値よりも低い場合には間引き率0.5が算出される。間引率算出部1464は、算出した間引き率を駆動制御部1420に出力する。これに代えてまたはこれに加えて、間引率算出部1464は、当該間引率をタイミングメモリ1430に直接書き込んでもよい。
駆動制御部1420は、上記間引率算出部1464が算出した間引き率で、対応する単位グループ1131に含まれる画素を間引いて画像信号の出力を実行させる。この場合に、駆動制御部1420は、間引き率0.5の単位グループ1131のリセットトランジスタ1303、転送トランジスタ1302および選択トランジスタ1305の組と、間引き率0の単位グループ1131のリセットトランジスタ1303、転送トランジスタ1302および選択トランジスタ1305の組とを別個に駆動することにより、異なる間引き率で画素信号を得る。
これにより、コントラストの高い領域に対応する単位グループ1131の解像度を高く維持しつつ、コントラストの低い領域に対する単位グループ1131の信号量を減らすことができる。さらに、この場合に後段の画像処理部1511で間引率を算出するのに比べて、迅速かつ省電力で間引率を算出することができる。また、いずれかの単位グループ1131の画素自体、配線、処理回路等に不具合があっても、他の単位グループ1131に対しては、迅速かつ省電力で間引率を算出することができる。
図32は、一の単位グループに対して間引き率0.5で読み出される画素1188の例を示す。図32に示す例において、単位グループ1132がベイヤー配列である場合に垂直方向についてベイヤー配列の単位の一つ置き、すなわち、画素単位でみた場合の二行づつ交互に、読み出される画素1188と読み出されない画素が設定される。これにより色バランスを崩すことなく間引き読出しをすることができる。
図32の例では、行毎に間引き読み出しされているが、これに代えて、列毎に間引き読み出しされてもよい。さらに、高域成分算出部1460が列方向と行方向とのそれぞれに高波長成分を抽出し、間引率算出部1464が列方向の間引き率と行方向の間引き率とをそれぞれ算出してもよい。
図31および図32の構成において、間引率算出部1464は対応する画素グループの間引き率を算出する。これに代えて、同色隣接画素の画素信号を加算するときの画素数が算出されてもよい。例えば、総和算出部1462で算出された総和が基準値以上である場合には行数が1、すなわち、同色隣接行で加算せずに画素信号が出力され、基準値より小さい場合にはよりも多い行数、例えば行数を2として、同色隣接する2行の同じ列の画素で加算した画素信号が出力される。
これにより、図32と同様に、コントラストの高い領域の解像度を高く維持しつつ、全体の信号量を減らすことができる。また、同色隣接行の画素信号を加算することに代えて、同色隣接列の画素信号を加算してもよい。さらに、上記加算においては、加算した行数または列数で当該加算値を割った平均を算出する処理を含めてもよい。また、同色隣接の行および列の画素信号を加算してもよい。
なお、上記高域成分算出部1460等においてR画素、G画素およびB画素ごとの高波長成分Rh,Gh、Bhが用いられた。これに代えて、R画素、G画素およびB画素から算出される輝度成分を用いて高周波成分が求められてもよい。この場合に、R画素、G画素およびB画素の輝度成分間でゲインを調整してから高周波成分が求められてもよい。
また、総和算出部1462において、図29等に示す、当該単位グループ1131Aの周辺の単位グループ1131B、131C、131D、131E等の高周波成分を、他の個別回路部1450B等の演算回路1416から取得して、当該単位グループ1131Aの高周波成分に加味してもよい。例えば、それらの平均値が重み付け平均されてもよい。総和算出部1462は、当該単位グループ1131Aの周辺の単位グループ1131B、131C、131D、131E等の平均値Agを、他の演算回路1416等から取得するのに代えて、他の個別回路部1450B等の画素メモリ1414から画素信号を読み出して自らが高周波成分を算出してもよい。
また、フレームレート算出部1458および間引率算出部1464で閾値を越えた単位グループに対して、閾値以下の単位グループよりも、画素信号のデジタル化のビット数を大きくしてもよい。例えば、A/D変換回路1412が、駆動部1502のからの指示により、同じ一回の蓄積回数に対して高いビット数でデジタル化してもよい。
図33は、さらに他の演算回路1417の機能ブロックの一例を示す。演算回路1417は、自己平均算出部1472と、隣接平均算出部1470と、利得算出部1474と、補正部1476とを有する。
自己平均算出部1472は、画素メモリ1414に格納された単位グループ1131Aの各画素のG画素信号を単純平均して、平均値Agを算出する。同様に、自己平均算出部1472は、画素メモリ1414に格納された単位グループ1131Aの各画素のR画素信号、B画素信号をそれぞれ単純平均して、平均値Ar、Abを算出する。さらに自己平均算出部1472は単位グループ1131Aの平均値Ag,Ar,Abを周辺の単位グループ1131B等の隣接平均算出部1470に出力する。
隣接平均算出部1470は、当該単位グループ1131Aに隣接する他の単位グループ1131B、131C、131D、131Eに対応する自己平均算出部1472から平均値Ag,Ar,Abを取得し、それらの加重平均を算出する。利得算出部1474は、自己平均算出部1472により算出された平均値Ag,Ar,Abと、隣接平均算出部1470により算出された平均値Ag,Ar,AbとをRGBごとに加重平均して、それらの比に基づいてG画素信号に対するR画素信号およびB画素信号の利得を算出する。この場合に例えば、当該単位グループ1131Aの平均値の重み付けを4/8、隣接する単位グループ1131B等の平均値の重み付けを1/8とした加重平均が用いられる。
R画素信号およびB画素信号の利得は、I/F回路1418を介してシステム制御部1501に付加情報として送信される。なお隣接平均算出部1470、当該単位グループ1131Aの周辺の単位グループ1131B、131C、131D、131E等の平均値Ag等を、他の個別回路部1450B等の演算回路1417等から取得するのに代えて、他の個別回路部1450B等の画素メモリ1414から画素信号を読み出して自らが平均値Ag等を算出してもよい。
補正部1476は、利得算出部1474により算出された利得でR画素信号およびB画素信号を補正して、画素メモリ1414に書き込む。この場合に、補正部1476は、R画素信号用の利得を個々のR画素信号に乗じ、B画素信号用の利得を個々のB画素信号に乗じる。なお、補正部1476は、システム制御部1501からフィードバック情報を取得して、当該利得をさらに補正してもよい。
図34は、利得と画素信号との関係を模式的に示す。利得を算出して画素信号を補正する動作は、例えばフレームレートf0の1フレームごと、すなわち(1/f0)秒ごとに行われることが好ましい。図34に示すように、(1/f0)秒ごとにR画素信号の利得とB画素信号の利得とが算出されて、R画素信号の出力値およびB画素信号の出力値が補正される。以上により、後段の画像処理部1511で利得を算出して画素信号を補正するのに比べて、迅速かつ省電力で利得を算出し、画素信号を補正することができる。
上記実施形態において、センサ制御部1441、ブロック制御部1442、同期制御部1443、信号制御部1444および駆動制御部1420は、信号処理チップ1111に対して一つずつ設けられ、個別回路部1450A、450B、450C、450D、450Eは、単位グループ1131A、131B、131C、131D、131Eごとに設けられる。これに代えて、センサ制御部1441、ブロック制御部1442、同期制御部1443、信号制御部1444および駆動制御部1420が、信号処理チップ1111に対して複数個設けられ、それぞれが複数の単位グループ1131を分担して制御してもよい。
また、個別回路部1450A等が、複数の単位グループ1131ごとに一つずつ設けられ、当該複数の単位グループ1131で共用されてもよい。個別回路部1450A等は、画素ごとに設けられてもよい。すなわち、上記実施形態において、単位グループ1131が単一の画素からなるとしてもよい。
図35は、本実施形態に係る他の撮像素子2100の断面図である。撮像素子2100は、入射光に対応した画素信号を出力する撮像チップ2113と、画素信号を処理する信号処理チップ2111と、画素信号を記憶するメモリチップ2112とを備える。これら撮像チップ2113、信号処理チップ2111およびメモリチップ2112は積層されており、Cu等の導電性を有するバンプ2109により互いに電気的に接続される。
なお、図示するように、入射光は主に白抜き矢印で示すZ軸プラス方向へ向かって入射する。本明細書においては、撮像チップ2113において、入射光が入射する側の面を裏面と称する。また、座標軸に示すように、Z軸に直交する紙面左方向をX軸プラス方向、Z軸およびX軸に直交する紙面手前方向をY軸プラス方向とする。以降のいくつかの図においては、図35の座標軸を基準として、それぞれの図の向きがわかるように座標軸を表示する。
撮像チップ2113の一例は、裏面照射型のMOSイメージセンサである。PD層2106は、配線層2108の裏面側に配されている。PD層2106は、二次元的に配され、入射光に応じた電荷を蓄積して、蓄積した電荷に応じた画素信号を生成する複数のPD(フォトダイオード)2104、および、PD2104に対応して設けられたトランジスタ2105を有する。
PD層2106における入射光の入射側にはパッシベーション膜2103を介してカラーフィルタ2102が設けられる。カラーフィルタ2102は、互いに異なる波長領域を透過する複数の種類を有しており、PD2104のそれぞれに対応して特定の配列を有している。カラーフィルタ2102の配列については後述する。カラーフィルタ2102、PD2104およびトランジスタ2105の組が一つの画素を形成する。
カラーフィルタ2102における入射光の入射側には、それぞれの画素に対応して、マイクロレンズ2101が設けられる。マイクロレンズ2101は、対応するPD2104へ向けて入射光を集光する。
配線層2108は、PD層2106からの画素信号を信号処理チップ2111に伝送する配線2107を有する。配線2107は多層であってもよく、また、受動素子および能動素子が設けられてもよい。
配線層2108の表面には複数のバンプ2109が配される。当該複数のバンプ2109が信号処理チップ2111の対向する面に設けられた複数のバンプ2109と位置合わせされて、撮像チップ2113と信号処理チップ2111とが加圧等されることにより、位置合わせされたバンプ2109同士が接合されて、電気的に接続される。
同様に、信号処理チップ2111およびメモリチップ2112の互いに対向する面には、複数のバンプ2109が配される。これらのバンプ2109が互いに位置合わせされて、信号処理チップ2111とメモリチップ2112とが加圧等されることにより、位置合わせされたバンプ2109同士が接合されて、電気的に接続される。
なお、バンプ2109間の接合には、固相拡散によるCuバンプ接合に限らず、はんだ溶融によるマイクロバンプ結合を採用しても良い。また、バンプ2109は、例えば後述する一つの画素ブロックに対して一つ程度設ければ良い。したがって、バンプ2109の大きさは、PD2104のピッチよりも大きくても良い。また、画素が配列された撮像領域以外の周辺領域において、撮像領域に対応するバンプ2109よりも大きなバンプを併せて設けても良い。
信号処理チップ2111は、表裏面にそれぞれ設けられた回路を互いに接続するTSV(シリコン貫通電極)2110を有する。TSV2110は、周辺領域に設けられることが好ましい。また、TSV2110は、撮像チップ2113の周辺領域、および、メモリチップ2112にも設けられて良い。
図36は、撮像チップ2113の画素配列と画素ブロック2131を説明する図である。図36では、撮像チップ2113を裏面側から観察した様子を示す。撮像領域2700には複数の画素がマトリックス状に配列されている。撮像領域2700は、複数の画素を行方向および列方向に分割した複数の画素ブロック2131を有する。各画素ブロック2131は、行方向および列方向にm×n個の画素を有する。ここで、m、nは2以上の整数である。また、行方向および列方向とは、撮像領域2700の面内における異なる2つの方向を指し、必ずしも互いに直交していなくともよい。図36においては、隣接する4画素×4画素の16画素が一つの画素ブロック2131を形成する。図の格子線は、隣接する画素がグループ化されて画素ブロック2131を形成する概念を示す。画素ブロック2131を形成する画素の数はこれに限られず1000個程度、例えば32画素×64画素でもよいし、それ以上でもそれ以下でもよい。
撮像領域2700の部分拡大図に示すように、画素ブロック2131は、緑色画素Gb、Gr、青色画素Bおよび赤色画素Rの4画素から成るいわゆるベイヤー配列を、上下左右に4つ内包する。緑色画素は、カラーフィルタ2102として緑色フィルタを有する画素であり、入射光のうち緑色波長帯の光を受光する。同様に、青色画素は、カラーフィルタ2102として青色フィルタを有する画素であって青色波長帯の光を受光し、赤色画素は、カラーフィルタ2102として赤色フィルタを有する画素であって赤色波長帯の光を受光する。
本実施形態において、複数の画素ブロック2131のうちの少なくとも一つの画素ブロックが選択され、他の画素ブロックとは異なる制御パラメータで、それぞれの画素ブロックに含まれる画素が制御される。制御パラメータの例は、フレームレート、間引き率、画素信号を加算する加算行数、電荷の蓄積時間または蓄積回数、デジタル化のビット数等である。さらに、制御パラメータは、画素からの画像信号取得後の画像処理におけるパラメータであってもよい。フレームレートとは、画素信号を生成する周期を指す。なお本明細書においてフレームレートとは、画素ブロック2131毎のフレームレートを指す場合がある。例えば、基準フレームレートおよび高速フレームレートは、画素ブロック2131毎のフレームレートを指す。
図37は、撮像チップ2113の画素ブロック2131に対応する回路図である。図において、代表的に点線で囲む矩形が、1画素に対応する回路を表す。なお、以下に説明する各トランジスタの少なくとも一部は、図35のトランジスタ2105に対応する。
図37では、16画素から形成される画素ブロック2131を示すが、画素ブロック2131の画素数はこれに限定されない。それぞれの画素に対応する16個のPD104は、それぞれ転送トランジスタ2302に接続され、各転送トランジスタ2302の各ゲートには、転送パルスが供給されるTX配線2307に接続される。図37に示す例において、TX配線2307は、16個の転送トランジスタ2302に対して共通接続される。
各転送トランジスタ2302のドレインは、対応する各リセットトランジスタ2303のソースに接続されると共に、転送トランジスタ2302のドレインとリセットトランジスタ2303のソース間のいわゆるフローティングディフュージョンFDが増幅トランジスタ2304のゲートに接続される。リセットトランジスタ2303のドレインは電源電圧が供給されるVdd配線2310に接続され、そのゲートはリセットパルスが供給されるリセット配線2306に接続される。図37に示す例において、リセット配線2306は、16個のリセットトランジスタ2303に対して共通接続される。
各々の増幅トランジスタ2304のドレインは電源電圧が供給されるVdd配線2310に接続される。また、各々の増幅トランジスタ2304のソースは、対応する各々の選択トランジスタ2305のドレインに接続される。選択トランジスタの各ゲートには、選択パルスが供給されるデコーダ配線2308に接続される。図37に示す例では、デコーダ配線2308は、16個の選択トランジスタ2305に対してそれぞれ独立に設けられる。そして、各々の選択トランジスタ2305のソースは、共通の出力配線2309に接続される。負荷電流源2311は、出力配線2309に電流を供給する。すなわち、選択トランジスタ2305に対する出力配線2309は、ソースフォロアにより形成される。なお、負荷電流源2311は、撮像チップ2113側に設けても良いし、信号処理チップ2111側に設けても良い。
ここで、電荷の蓄積開始から蓄積終了後の画素出力までの流れを説明する。リセット配線2306を通じてリセットパルスがリセットトランジスタ2303に印加され、同時にTX配線2307を通じて転送パルスが転送トランジスタ2302に印加されると、PD2104およびフローティングディフュージョンFDの電位はリセットされる。
PD2104は、転送パルスの印加が解除されると、受光する入射光を電荷に変換して蓄積する。その後、リセットパルスが印加されていない状態で再び転送パルスが印加されると、蓄積された電荷はフローティングディフュージョンFDへ転送され、フローティングディフュージョンFDの電位は、リセット電位から電荷蓄積後の信号電位になる。そして、デコーダ配線2308を通じて選択パルスが選択トランジスタ2305に印加されると、フローティングディフュージョンFDの信号電位の変動が、増幅トランジスタ2304および選択トランジスタ2305を介して出力配線2309に伝わる。これにより、リセット電位と信号電位とに対応する画素信号は、単位画素から出力配線2309に出力される。
図37に示す例では、画素ブロック2131を形成する16画素に対して、リセット配線2306とTX配線2307が共通である。すなわち、リセットパルスと転送パルスはそれぞれ、16画素全てに対して同時に印加される。したがって、画素ブロック2131を形成する全ての画素は、同一のタイミングで電荷蓄積を開始し、同一のタイミングで電荷蓄積を終了する。ただし、蓄積された電荷に対応する画素信号は、それぞれの選択トランジスタ2305が選択パルスによって順次印加されて、選択的に出力配線2309に出力される。また、リセット配線2306、TX配線2307、出力配線2309は、画素ブロック2131毎に別個に設けられる。
このように画素ブロック2131を基準として回路を構成することにより、画素ブロック2131ごとに電荷蓄積時間を制御することができる。換言すると、隣接する画素ブロック2131同士で、異なった電荷蓄積時間による画素信号をそれぞれ出力させることができる。更に言えば、一方の画素ブロック2131に1回の電荷蓄積を行わせている間に、他方の画素ブロック2131に何回もの電荷蓄積を繰り返させてその都度画素信号を出力させることにより、これらの画素ブロック2131同士で異なるフレームレートで動画用の各フレームを出力することもできる。なお、図37に示した各トランジスタおよび各配線の少なくとも一部は、各画素から出力される画素信号を読み出す読出回路として機能する。読出回路は、画素毎に設けられる。画素毎の読出回路は、配線等の一部の構成が、画素間で共有されていてよい。
図38は、撮像素子2100の構成の一部と、その動作例を示す。本例の撮像素子2100は、図35に示した構成に加え、記憶部2114を更に備える。なお、記憶部2114は、信号処理チップ2111に設けられてよい。この場合、撮像素子2100は、メモリチップ2112を有さなくともよい。また、記憶部2114は、メモリチップ2112に設けられてもよい。
撮像チップ2113は、それぞれ入射光に応じた画素信号を生成する複数の画素が配置された撮像領域2700を有する。説明の便宜上、図38においては、画素ブロック2131を、行方向および列方向に3個ずつ示す。それぞれの画素ブロック2131に含まれる画素数は、等しいことが好ましい。また、撮像領域2700内の各画素ブロック2131に含まれる画素数は、固定されていることが好ましい。
本例の信号処理チップ111は、マルチプレクサ2411、A/D変換器2412、デマルチプレクサ2413、制御部2740、および、演算回路2415を画素ブロック2131毎に有する。マルチプレクサ2411は、対応する画素ブロック2131に含まれる画素を順次選択して、選択した画素に対応する画素信号をA/D変換器2412に入力する。A/D変換器2412は、アナログの画素信号をデジタルの画素データに変換し、デマルチプレクサ2413に入力する。デマルチプレクサ2413は、対応する記憶ブロック2730において、当該画素に対応する記憶領域に当該画素データを記憶させる。それぞれの記憶ブロック2730は、記憶した画素データを後段の演算回路2415に引き渡す。
記憶部2114は、複数の画素ブロック2131に対応して設けられ、それぞれ対応する画素ブロック2131の画素データを記憶可能な複数の記憶ブロック2730を有する。記憶ブロック2730は、画素ブロック2131と一対一に対応する。記憶ブロック2730は、バス2720を介して、対応する画素ブロック2131と接続されてよい。記憶ブロック2730は、バッファメモリであってよい。
また、少なくとも一部の記憶ブロック2730は、対応する画素ブロック2131以外の画素ブロックの画素データも記憶することができる。つまり、一つの記憶ブロック2730が複数の画素ブロック2131によって共有されてもよい。換言すれば、制御部2740は、一つの画素ブロック2131の画素データを複数の記憶ブロック2730に記憶させることができる。記憶ブロック2730を共有することで、後述するように複数の記憶ブロック2730を効率よく利用することができるので、記憶部2114全体のメモリ容量を抑制することができる。
なお、全ての画素ブロック2131について、画素データが、対応する記憶ブロック2730以外にも、少なくとも一つの他の記憶ブロック2730に読み書き可能であることが好ましい。当該他の記憶ブロック2730は、画素ブロック2131毎に予め定められていてよく、動的に変更可能であってもよい。また、全ての記憶ブロック2730について、対応する画素ブロック2131以外にも、少なくとも一つの他の画素ブロック2131の画素データが読み書き可能であることが好ましい。当該他の画素ブロック2131は、記憶ブロック2730毎に予め定められていてよく、動的に変更可能であってもよい。
なお、それぞれの記憶ブロック2730は、信号処理チップ2111において、対応する画素ブロック2131と重なる領域に、それぞれの画素ブロック2131毎に設けられたメモリであってよい。つまり、記憶ブロック2730は、信号処理チップ2111において、対応する画素ブロック2131の直下の領域に設けられてよい。この場合、画素ブロック2131および記憶ブロック2730は、TSVにより電気的に接続されてよい。また、信号処理チップ2111において各画素ブロック2131と重なる上記の領域には、対応する記憶ブロック2730、A/D変換器2412、演算回路2415等が設けられる。また、それぞれの記憶ブロック2730は、信号処理チップ2111において、撮像領域2700と重なる領域の外側にそれぞれ設けられたメモリであってもよい。
また、それぞれの記憶ブロック2730、A/D変換器2412および演算回路2415が、対応する画素ブロック2131と重なる領域に設けられた場合において、それぞれの記憶ブロック2730が、対応する画素ブロック2131以外の画素ブロック2131の画素データを記憶する場合、当該記憶ブロック2730が設けられた領域までアナログの画素信号を伝送してよく、デジタルの画素データを伝送してもよい。前者の場合、当該記憶ブロック2730に対応するA/D変換器2412が、画素信号を画素データに変換して、当該記憶ブロック2730に入力する。後者の場合、当該画素ブロック2131と重なる領域におけるA/D変換器2412において画素信号を画素データに変換してから、当該画素データを記憶すべき記憶ブロック2730まで伝送する。信号処理チップ2111には、これらの画素信号または画素データを伝送するための配線が設けられる。
後述する演算回路2415は、記憶ブロック2730に格納された画素データを処理して後段の画像処理部2511に引き渡す。演算回路2415は、信号処理チップ2111に設けられてよい。なお、図では1つの画素ブロック2131の分の接続を示すが、実際にはこれらが画素ブロック2131ごとに存在して、並列で動作する。演算回路2415は画素ブロック2131ごとに設けられるのが好ましい。
上記の通り、画素ブロック2131のそれぞれに対応して出力配線2309が設けられている。撮像素子2100は撮像チップ2113、信号処理チップ2111および記憶部2114を積層しているので、これら出力配線2309にバンプ2109を用いたチップ間の電気的接続を用いることにより、各チップを面方向に大きくすることなく配線を引き回すことができる。
なお、制御部2740には、各画素ブロック2131のフレームレートに関するレート情報が与えられる。制御部2740は、当該レート情報に基づいて、高速フレームレートの画素ブロック2131の画素データを記憶すべき記憶ブロック2730を選択する。例えば制御部2740は、基準フレームレートの画素ブロック2131に対応する記憶ブロック2730を、当該画素データを記憶すべき記憶ブロック2730とする。
なお各図に示す例においては、演算回路2415が複数の画素を含む画素ブロック2131毎に設けられる例を説明している。しかし、演算回路2415は一つの画素毎に設けられてもよい。なお、演算回路2415が全ての画素に対して設けられなくともよい。即ち、撮像領域2700には、少なくとも第1画素および第2画素が配されており、撮像素子2100は、第1画素に対応する第1演算回路2415と、第2画素に対応する第2演算回路2415を少なくとも有する。
第1画素が出力する第1画素信号は、第1読出回路により読み出され、第2画素が出力する第2画素信号は、第2読出回路により読み出される。第1演算回路2415は、第1画素から出力される第1画素信号に基づいて第1評価値を演算し、後段の画像処理部2511に伝送する。第2演算回路2415は、第2画素から出力される第2画素信号に基づいて第2評価値を演算し、後段の画像処理部2511に伝送する。ここで評価値とは、画素信号の値を用いて所定の演算を行って得られる値である。例えば、所定の画素が出力する画素信号の値と、当該画素に隣接する隣接画素が出力する隣接画素信号の値との差分、平均等であってよい。また、所定の画素が異なるフレームにおいて出力する複数の画素信号の値の差分、平均等であってもよい。当該演算には、様々なパラメータを用いてよい。
図39は、本実施形態に係る撮像装置の構成を示すブロック図である。撮像装置2500は、撮影光学系としての撮影レンズ2520を備え、撮影レンズ2520は、光軸OAに沿って入射する被写体光束を撮像素子2100へ導く。撮影レンズ2520は、撮像装置2500に対して着脱できる交換式レンズであっても構わない。撮像装置2500は、撮像素子2100、システム制御部2501、駆動部2502、測光部2503、ワークメモリ2504、記録部2505、および表示部2506を主に備える。
撮影レンズ2520は、複数の光学レンズ群から構成され、シーンからの被写体光束をその焦点面近傍に結像させる。なお、図35では瞳近傍に配置された仮想的な1枚のレンズで当該撮影レンズ2520を代表して表している。駆動部2502は、システム制御部2501からの指示に従って撮像素子100のタイミング制御、領域制御等の電荷蓄積制御を実行する制御回路である。この意味において駆動部2502は、撮像素子2100に対して電荷蓄積を実行させて画素信号を出力させる撮像素子制御部の機能を担うと言える。
撮像素子2100は、画素信号をシステム制御部2501の画像処理部2511へ引き渡す。画像処理部2511は、ワークメモリ2504をワークスペースとして種々の画像処理を施し、画像データを生成する。第1および第2演算回路2415の後段の画像処理部2511は、第1演算回路2415から受け取った第1評価値に基づいて第1画素信号に対応する画像の第1画素データに画像処理を施し、第2演算回路2415から受け取った第2評価値に基づいて第2画素信号に対応する画像の第2画素データに画像処理を施す。例えば、JPEGファイル形式の画像データを生成する場合は、ベイヤー配列で得られた信号からカラー映像信号を生成した後に圧縮処理を実行する。生成された画像データは、記録部2505に記録されるとともに、表示信号に変換されて予め設定された時間の間、表示部2506に表示される。なお、画像処理部2511は、撮像素子2100に設けられてよく、撮像素子2100の外部のシステム制御部2501に設けられてもよい。また、画像処理部2511は、ひとつの画素ごとに設けられてもよいし、複数の画素を含む画素ブロック2131ごとに設けられてもよい。
測光部2503は、画像データを生成する一連の撮影シーケンスに先立ち、シーンの輝度分布を検出する。測光部2503は、例えば100万画素程度のAEセンサを含む。システム制御部2501の演算部2512は、測光部2503の出力を受けてシーンの領域ごとの輝度を算出する。演算部2512は、算出した輝度分布に従ってシャッタ速度、絞り値、ISO感度を決定する。測光部2503は撮像素子2100で兼用してもよい。なお、演算部2512は、撮像装置2500を動作させるための各種演算も実行する。
駆動部2502は、一部または全部が撮像チップ2113に搭載されてもよいし、一部または全部が信号処理チップ2111に搭載されてもよい。システム制御部2501の一部が撮像チップ2113または信号処理チップ2111に搭載されてもよい。なお、本例の撮像装置2500においては、画像処理部2511の少なくとも一部の画像処理機能が、撮像素子2100に設けられる。
図40は、画像処理部の機能ブロック図である。本例の画像処理部2511は、基準フレームレートで動作する画素ブロック2131(後述する周辺領域2176)と、高速フレームレートで動作する画素ブロック2131(後述する注目領域2172)とを抽出する。画像処理部2511は、上記の機能に加えて、被写体推定部2150、グループ選択部2152、動画生成部2154および動画合成部2156を有する。これらの各機能は、後述する。
図41は、撮像装置が動画を生成して記録する動作を示すフローチャートである。図42および図43は撮像素子により撮像される画像の一例を示す。図44は各フレームレートと画像信号の出力タイミングとの関係を示す。
図41の動作は、ユーザが録画ボタンの押下等により、撮像装置2500に対して動画の生成を指示したときに開始する。まず、被写体推定部2150は、駆動部2502を駆動して撮像素子2100からの画像信号に基づく画像データを取得し、当該画像データが示す画像に含まれる主要被写体を推定する(S100)。
この場合に、駆動部2502は撮像領域全体に含まれる画素ブロック2131、例えばすべての画素ブロック2131から画像信号を出力させることが好ましい。また、駆動部2502は各画素ブロック2131に含まれるすべての画素から画像信号を出力させてもよいし、予め定められた間引き率で間引いた画素から画像信号を出力させてもよい。被写体推定部2150は、撮像素子2100から時系列的に得られた複数の画像を比較して、移動している被写体を主要被写体として特定する。なお、主要被写体の推定には、他の方法が用いられてもよい。
例えば、被写体推定部2150は、撮像素子2100から時間的に前後する画像として図42の画像2170および図43の画像2178を取得した場合に、これらの差分から子供を主要被写体2171として特定する。なお、画像2170および画像2178における格子線は画素ブロック2131の境界を示すが、画素ブロック2131の数は例示であってこれらの図に示す数に限られない。
グループ選択部2152は、被写体推定部2150により推定された主要被写体2171の像光が入射している画素ブロック2131を少なくとも一つ選択する(S2102)。例えば、画像2170において、主要被写体2171を少なくとも一部含んでいる画素ブロック2131が選択される。さらに、主要被写体2171が撮像領域内で移動することを考慮して、グループ選択部2152は、主要被写体2171を少なくとも一部含んでいる画素ブロック2131のさらに周囲の画素ブロック2131も選択することが好ましい。
グループ選択部152は、これら選択した画素ブロック2131の集合を注目領域2172とする。さらにグループ選択部2152は、撮像領域全体において注目領域2172にふくまれない画素ブロック2131からなる集合を周辺領域2176とする。グループ選択部2152は、撮像領域の全体に対する注目領域2172の範囲を示す領域情報2174を特定する。
図42に示す例において、注目領域2172は、横7個、縦4個の計28個の画素ブロック2131からなる矩形の領域である。これに対し、周辺領域2176は、撮像領域である横21個、縦6個の計126個から注目領域2172を除いた98個の画素ブロック2131からなる。また、領域情報2174として、撮像領域における注目領域2172の図中の左上端の画素ブロック2131の左からおよび上から数えた位置(9,2)が特定される。さらにサイズ情報として、注目領域2172の縦横数7×4が特定される。
グループ選択部2152が、注目領域2172に含まれる画素ブロック2131を特定する情報と周辺領域2176とを特定する情報とを駆動部2502に伝達する。この場合に、注目領域2172と周辺領域2176とにそれぞれ適用するフレームレートの情報を併せて伝達する。ここで、注目領域2172に適用するフレームレートは、周辺領域2176に適用するフレームレートより高いことが好ましい。例えば、周辺領域2176に適用するフレームレートが60fpsである場合に、注目領域2172に適用するフレームレートは180fpsに設定される。これらのフレームレートの値は予め設定されて、グループ選択部2152が参照可能に格納されていることが好ましいが、ユーザが後から値を変更できるようになっていてもよい。
駆動部2502は、撮像素子2100を駆動して各フレームレートで撮像を行う(S2104)。すなわち、駆動部2502は、注目領域2172に含まれる画素ブロック2131に対しては、高いフレームレートで電荷蓄積および画像信号の出力を実行させ、周辺領域2176に含まれる画素ブロック2131に対しては、低いフレームレートで電荷蓄積および画像信号の出力を実行させる。言い換えれば、駆動部2502は、周辺領域2176に含まれる画素ブロック2131に対して1つのフレームに対応する画像信号を得る間に、注目領域2172に含まれる画素ブロック2131に対して時系列的に並んだ複数のフレームに対応する画像信号を得る。
例えば、周辺領域2176のフレームレートが60fpsであって、注目領域2172のフレームレートが180fpsに設定されている場合に、図44に示すように、駆動部2502は、周辺領域2176から1つのフレームB1の画像信号を得る時間1/60sまでの間に、注目領域2172から3つのフレームA1,A2,A3の画像信号を得る(1/60s=3×1/180s)。この場合に、駆動部2502は、周辺領域2176に含まれる画素ブロック2131のリセットトランジスタ2303、転送トランジスタ2302および選択トランジスタ2305の組と、注目領域2172に含まれる画素ブロック2131のリセットトランジスタ2303、転送トランジスタ2302および選択トランジスタ2305の組とを別個に駆動することにより、異なるフレームレートで画像信号を得る。
なお、図44は画像信号の出力のタイミングを示しているが、露光時間の長さまでも示しているものではない。駆動部2502は予め演算部2512で算出された露光時間となるように、周辺領域2176と注目領域2172とに対して、上記トランジスタの組を駆動する。
これに加えて、露光時間の長さをフレームレートに応じて変化させてもよい。例えば図44に示す例において、周辺領域2176の1フレームの露光時間を1/3倍にしておき、注目領域2172と実質的に同じ露光時間としてもよい。また、画像信号の出力後にフレームレートの比で当該画像信号を補正してもよい。また、周辺領域2176と注目領域2172との間で画像信号の出力のタイミングが図44のように同期していなくても、非同期であってもよい。
画像処理部2511は、注目領域2172からの画像信号をワークメモリ2504の予め定められた記憶領域に、フレームごとに順次、記憶する(S2106)。同様に、画像処理部2511は、周辺領域2176からの画像信号をワークメモリ2504の予め定められた記憶領域に、フレームごとに順次、記憶する(同ステップ)。ワークメモリ2504は、図38において説明したように、複数の記憶ブロック2730を有する。ワークメモリ2504は、それぞれの画素ブロック2131に対応するメモリ群からなるメモリであってよい。
動画生成部2154は、ワークメモリ2504に記憶された注目領域2172の画像信号を読み出して(S2108)、注目領域2172の複数のフレームが含まれる注目領域動画のデータを生成する(S2110)。同様に、動画生成部2154は、ワークメモリ2504に記憶された周辺領域2176の画像信号を読み出して、周辺領域2176の複数のフレームが含まれる周辺領域動画のデータを生成する(同ステップ)。ここで、注目領域動画および周辺領域動画はそれぞれ、MPEGのような汎用のフォーマットで生成されてそれぞれ別個に再生できるようになっていてもよいし、後述する合成処理を経なければ再生できない専用のフォーマットで生成されてもよい。
図45は、動画生成部により生成された注目領域動画および周辺領域動画を模式的に示す。動画生成部2154は、駆動部2502が注目領域2172を駆動したフレームレートに対応したフレームレートで、注目領域動画を生成する。図45に示す例において、駆動部2502が注目領域2172を駆動したフレームレート1/180fpsと同一のフレームレート1/180fpsで、注目領域動画が生成される。
同様に、動画生成部2154は、駆動部2502が周辺領域2176を駆動したフレームレートに対応したフレームレートで、周辺領域動画を生成する。図45に示す例において、駆動部2502が周辺領域2176を駆動したフレームレート1/60fpsと同一のフレームレート1/60fpsで、周辺領域動画が生成される。なお、周辺領域動画において注目領域2172に対応する領域には有効な値が存在せず、図中は斜線で示した。
さらに動画生成部2154は注目領域動画および周辺領域動画にヘッダ情報を付加して、これらのデータを記録部2505に記録する(S2112)。ヘッダ情報は、撮像領域の全体に対する注目領域2172の位置を示す領域情報、注目領域172の大きさを示すサイズ情報および、注目領域2172の画像信号の出力タイミングと周辺領域2176の画像信号の出力タイミングとの関係を示すタイミング情報を含む。
システム制御部2501は次の単位時間の撮像を行うか否かを判断する(S2114)。次の単位時間の撮像を行うか否かは、その時点でユーザから動画の記録ボタンが押下されているか否かで判断される。次の単位時間の撮像を行う場合は(S2114:Yes)、上記ステップS2102に戻り、次の単位時間の撮像を行わない場合は(S2114:No)、当該動作を終了する。
ここで「単位時間」は予めシステム制御部2501に設定されている時間であって、数秒程度である。この単位時間、注目領域2172のフレームレートおよび画素ブロック数、並びに、周辺領域2176のフレームレートおよび画素ブロック数によって、ステップS2106において記憶に用いられる記憶容量が決まる。またこれらの情報に基づいて、当該記憶容量において注目領域2172のデータを記憶する領域と、周辺領域2176のデータを記憶する領域とが定められる。
以上により、主要被写体2171が含まれる注目領域2172からは高いフレームレートで画像信号を得ることができるとともに、周辺領域2176を低いフレームレートで抑えることでデータ量を減らすことができる。よって、全画素からの高速読出しに比べて、駆動および画像処理の負荷を減らし、消費電力および発熱を抑えることができる。
なお、図41に示す例において次の単位時間が開始されるときに、ステップS2102で改めて画素ブロック2131が選択され、領域情報およびサイズ情報が更新される。これにより、主要被写体2171に追従して注目領域2172を逐次、更新することができる。図45に示す例においては、注目領域動画における単位時間の最初のフレームA7において、以前の単位時間の最後のフレームA6とは異なる画素ブロック2131からなる注目領域2182が選択されるとともに、これに伴って領域情報2184および周辺領域2186も更新されている。
図46は、動画生成部が付加するヘッダ情報の一例を示す。図46のヘッダ情報は、注目領域動画を特定する注目領域動画ID、注目領域動画のフレームレート、当該注目領域動画に対応する周辺領域動画を特定する周辺領域動画ID、周辺領域動画のフレームレート、タイミング情報、領域情報およびサイズ情報を含む。これらのヘッダ情報は、注目領域動画および周辺領域動画のいずれか一方にヘッダ情報として付加されていてもよいし、両方に付加されていてもよい。
図47は、撮像装置が動画を再生して表示する動作を示すフローチャートである。当該動作は、表示部2506にサムネイル表示された注目領域動画のいずれかをユーザが特定して再生ボタンを押下したことにより開始する。
動画合成部2156は、ユーザにより特定された注目領域動画のデータを記録部2505から読み出す(S2150)。動画合成部2156は、当該注目領域動画に対応する周辺領域動画のデータを記録部2505から読み出す(S2152)。
この場合に、動画合成部2156は、ステップS2150で読み出した注目領域動画のヘッダ情報に示されている周辺領域動画IDにより周辺領域動画を特定する。これに代えて、ヘッダ情報に示されているタイミング情報と同一のタイミング情報をヘッダ情報として含む周辺領域画像が検索されて特定されてもよい。
なお、上記の例では注目領域動画にヘッダ情報が含まれるとしている。一方、注目領域動画にヘッダ情報が含まれずに周辺領域動画にヘッダ情報が含まれている場合には、先にステップS2150においてユーザに周辺領域動画を特定させて読出し、そのヘッダ情報からステップS2152において注目領域動画を特定して読み出してもよい。
動画合成部2156は、注目領域動画のフレームと周辺領域動画のフレームとを用いて、表示動画のフレームを合成する(S154)。この場合にまず、注目領域動画の先頭のフレームA1が、周辺領域動画の先頭のフレームB1における領域情報2174が示す位置に嵌め込まれることにより、表示動画の先頭のフレームC1が合成される。動画合成部2156は、図45に示すように、表示動画の先頭のフレームC1を表示部2506に表示させる(S2156)。
動画合成部2156は、周辺領域動画における次のフレームB2までの間に注目領域動画の次のフレームがあるか否かを判断する(S2158)。動画合成部2156は、注目領域動画の次のフレームがある場合に(S2158:Yes)、注目領域2172を次のフレームA2、A3で更新しかつ周辺領域2176を前のフレームB1に保持することにより(S2162)、表示動画の次のフレームC2、C3を合成して(S2162)、順次、表示する(S2156)。
一方、ステップS2158において周辺領域動画における次のフレームB2までの間に注目領域動画の次のフレームがない場合に(S2158)、動画合成部2156は、注目領域2172を次のフレームA4で更新しかつ周辺領域2176も次のフレームB2で更新することにより(S2164)、表示動画の次のフレームC4を合成して(S2162)、表示する(S2156)。
周辺領域動画において周辺領域2176の次フレームがある限り(S2160:Yes)、ステップS2154からS2160が繰り返される。周辺領域動画において周辺領域2176の次フレームがない場合に(S2160:No)、動画合成部2156は、当該注目領域動画と周辺領域動画との組の単位時間の次の単位時間における注目領域動画と周辺領域動画との組があるか否かを検索する(S2166)。例えば、動画合成部2156は、記録部2505の同一フォルダ内において、当該注目領域動画のタイミング情報が示すタイミングの直後を示すタイミング情報がヘッダ情報に含まれた注目領域動画があるか否かを検索する。
次の単位時間における注目領域動画と周辺領域動画との組がある限り(S2166:Yes)、ステップS2150からS2166が繰り返される。次の単位時間における注目領域動画と周辺領域動画との組がない場合に(S2166:No)、当該動作を終了する。
以上によれば、全体のデータ量を減らしつつ、主要被写体2171が含まれる注目領域2172について滑らかな動画を表示することができる。なお、ステップS2162においては、注目領域2172がそのまま次のフレームで更新されて表示画像のフレームが合成されているが、合成の方法はこれに限られない。他の例として、注目領域2172における主要被写体2171の境界線が画像処理により特定され、当該境界線で囲まれた主要被写体2171については次のフレームに更新するとともに、注目領域2172内であっても主要被写体2171の境界線外側については前のフレームを維持して、周辺領域2176のフレームと合成されてもよい。すなわち、注目領域2172における境界線外側については周辺領域2176のフレームレートに落としてもよい。これにより表示動画における滑らかさの境界が不自然に見えることを防ぐことができる。また、再生のフレームレートは、撮影時のフレームレート(注目領域は180fps、周辺領域は60fps)と同じである必要はなく、例えば注目領域を60fps、周辺領域を20fpsなどとしてもよい。その場合はスローモーション再生となる。
図48は、撮像装置が動画を生成して記録する他の動作の例を示すフローチャートである。図48において図41と同一の動作については同一の参照番号を付して説明を省略する。
図48の動作において、注目領域2172と周辺領域2176とで、図41のフレームレートに代えて、または、加えて間引き率を異ならせている。より詳しくは、ステップS2120において、駆動部2502は、注目領域2172に含まれる画素ブロック2131に対しては、低い間引き率で間引いた画素に対して電荷蓄積および画像信号の出力を実行させ、周辺領域2176に含まれる画素ブロック2131に対しては、高い間引き率で間引いた画素に対して電荷蓄積および画像信号の出力を実行させる。例えば注目領域2172に含まれる画素ブロック2131に対して間引き率0すなわち全画素が読み出され、周辺領域2176に含まれる画素ブロック2131に対して間引き率0.5すなわち半分画素が読み出される。
この場合に、駆動部2502は、周辺領域2176に含まれる画素ブロック2131のリセットトランジスタ2303、転送トランジスタ2302および選択トランジスタ2305の組と、注目領域2172に含まれる画素ブロック2131のリセットトランジスタ2303、転送トランジスタ2302および選択トランジスタ2305の組とを別個に駆動することにより、異なる間引き率で画像信号を得る。
ステップS2110において、動画生成部2154は、低い間引き率で出力された注目領域2172の画像信号に基づき、注目領域2172に対応する注目領域動画を生成する。動画生成部2154は、同様に、高い間引き率で出力された周辺領域2176の画像信号に基づき、周辺領域2176に対応する周辺領域動画を生成する。またステップS2112において、動画生成部2154は、それぞれの間引き率の情報を付加して注目領域動画および周辺領域動画を記録部2505に記録する。
図49は、一の画素ブロックに対して間引き率0.5で読み出される画素2188の例を示す。図49に示す例において、周辺領域2176の画素ブロック2132がベイヤー配列である場合に垂直方向についてベイヤー配列の単位の一つ置き、すなわち、画素単位でみた場合の二行づつ交互に、読み出される画素2188と読み出されない画素が設定される。これにより色バランスを崩すことなく間引き読出しをすることができる。
図50は、図48に対応した、撮像装置が動画を再生して表示する動作を示すフローチャートである。図50において図47と同一の動作については同一の参照番号を付して説明を省略する。
図50のステップS2170において、動画合成部2156は、周辺領域動画のフレームの画素を補完して解像度を注目領域動画のフレームの解像度と整合させてから、注目領域動画のフレームを周辺領域動画のフレームに嵌め込むことにより、表示画像のフレームを合成する。これにより、主要被写体2171が含まれる注目領域2172からは高い解像度で画像信号を得ることができるとともに、周辺領域2176を低い解像度で抑えることでデータ量を減らすことができる。よって、全画素からの高速読出しに比べて、駆動および画像処理の負荷を減らし、消費電力および発熱を抑えることができる。
なお、図35から図50に示す例において、注目領域2172は矩形であるが注目領域2172の形状はこれに限られない。注目領域2172は画素ブロック2131の境界線に沿っていれば凸の多角形、凹の多角形、または、中に周辺領域2176が入り込んだドーナツ形状等であってもよい。また、注目領域2172は互いに離間して複数個設定されてもよい。その場合に、互いの注目領域2172で異なるフレームレートが設定されてもよい。
また、注目領域2172および周辺領域2176のフレームレートは可変であってもよい。例えば、単位時間が経過するごとに主要被写体2171の移動量を検出して、主要被写体2171の移動量が大きいほど注目領域2172により高いフレームレートを設定してもよい。また、単位時間内で随時、主要被写体2171に追従して注目領域2172に含まれるべき画素ブロック2131の選択を更新してもよい。
図41および図48の動画の生成はユーザの録画ボタンの押下により開始し、図47および図50の動画の再生はユーザの再生ボタンの押下により開始しているが、開始時点はこれに限られない。他の例として、ユーザからの一つのボタン操作によって、動画の生成の動作と再生の動作とを連続して実行させて、表示部2506にスルー画表示(またはライブビュー表示ともいう)してもよい。この場合に、注目領域2172をユーザに認識させる表示が重畳されてもよい。例えば、表示部2506において注目領域2172の境界線に枠を表示したり、周辺領域2176の輝度を下げるか注目領域2172の輝度を上げるかしてもよい。
図48の動作において、注目領域172と周辺領域176とで間引き率を異ならせている。間引き率を異ならせることに代えて、隣接行の画素の画素信号を加算するときの行数を異ならせてもよい。例えば、注目領域172においては行数が1、すなわち、隣接行で加算せずに画素信号を出力し、周辺領域176においては注目領域172よりも多い行数、例えば行数を2として、隣接する2行の同じ列の画素の画素信号を出力する。これにより、図48と同様に、周辺領域176よりも注目領域172の解像度を高く維持しつつ、全体の信号量を減らすことができる。
なお、動画合成部2156は撮像装置2500の画像処理部2511に設けられていることに代えて、外部の表示装置、例えばPCに設けられてもよい。また、動画を生成する場合に限られず、静止画を生成する場合に上記実施形態が適用されてもよい。
また、上記実施形態はいずれも複数の画素ブロック2131を、注目領域2172と周辺領域2176との2つに分けているが、これに限られず3つ以上の領域に分けてもよい。この場合に、注目領域2172と周辺領域2176との境界に該当する画素ブロック2131を境界領域として、当該境界領域には、注目領域2172に用いられる制御パラメータの値と周辺領域2176に用いられる制御パラメータの値との中間の値が用いられて制御されてもよい。これにより、注目領域2172と周辺領域2176との境界が不自然に見えることを防ぐことができる。
注目領域2172と周辺領域2176とで電荷の蓄積時間、蓄積回数等を異ならせてもよい。この場合に注目領域2172と周辺領域2176とを輝度に基づいて分けてもよく、さらに中間領域を設けてもよい。
図51Aおよび図51Bは、シーンの例と領域分割を説明する図である。図51Aは、撮像チップ2113の撮像領域が捉えるシーンを示す。具体的には、屋内環境に含まれるシャドウ被写体2601および中間被写体2602と、窓枠2604の内側に観察される屋外環境のハイライト被写体2603とが同時に写り込むシーンである。このような、ハイライト部からシャドウ部までの明暗差が大きなシーンを撮影する場合、従来の撮像素子であれば、ハイライト部を基準として電荷蓄積を実行するとシャドウ部で黒潰れが生じ、シャドウ部を基準として電荷蓄積を実行するとハイライト部で白飛びが生じた。すなわち、ハイライト部もシャドウ部も一律に一度の電荷蓄積により画像信号を出力させるには、明暗差の大きなシーンに対してフォトダイオードのダイナミックレンジが不足していると言える。そこで、本実施形態においては、シーンをハイライト部、シャドウ部といった部分領域に分割して、それぞれの領域に対応するフォトダイオードの電荷蓄積回数を互いに異ならせることにより、ダイナミックレンジの実質的な拡大を図る。
図51Bは、撮像チップ2113の撮像領域における領域分割を示す。演算部2512は、測光部2503が捉えた図51Aのシーンを解析して、輝度を基準に撮像領域を分割する。例えば、システム制御部2501は、測光部2503に露光時間を変更しつつ複数回のシーン取得を実行させ、演算部2512は、その白飛び領域、黒潰れ領域の分布の変化を参照して撮像領域の分割ラインを決定する。図51Bの例においては、演算部2512は、シャドウ領域2611、中間領域2612、およびハイライト領域2613の3領域に分割している。
分割ラインは、画素ブロック2131の境界に沿って定義される。すなわち、分割された各領域は、整数個のグループをそれぞれ含む。そして、同一の領域に包含される各グループの画素は、演算部2512によって決定されたシャッタ速度に対応する期間内において、同一回数の電荷蓄積および画素信号出力を行う。属する領域が異なれば、異なる回数の電荷蓄積および画素信号出力を行う。
図52は、図51Aおよび図51Bの例による分割された領域ごとの電荷蓄積制御を説明する図である。演算部2512は、ユーザから撮影準備指示を受けると、測光部2503の出力からシャッタ速度T0を決定する。さらに、上述のようにシャドウ領域2611、中間領域2612およびハイライト領域2613に分割して、それぞれの輝度情報から電荷蓄積回数を決定する。電荷蓄積回数は、1回あたりの電荷蓄積により画素が飽和しないように決定される。例えば、1回の電荷蓄積動作において蓄積可能な8割から9割の電荷が蓄積されることを基準として、電荷蓄積回数が決定される。
ここでは、シャドウ領域2611を1回とする。すなわち、決定されたシャッタ速度T0と電荷蓄積時間を一致させる。また、中間領域2612の電荷蓄積回数を2回とする。すなわち、1回の電荷蓄積時間をT0/2として、シャッタ速度T0の間に2回の電荷蓄積を繰り返させる。また、ハイライト領域2613の電荷蓄積回数を4回とする。すなわち、1回の電荷蓄積時間をT0/4として、シャッタ速度T0の間に4回の電荷蓄積を繰り返させる。
ユーザから撮影指示を時刻t=0で受けると、駆動部2502は、いずれの領域に属するグループの画素に対しても、リセットパルスと転送パルスを印加する。この印加をトリガーとして、いずれの画素も電荷蓄積を開始する。
時刻t=T0/4となったら、駆動部2502は、ハイライト領域2613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線2309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部2502は、ハイライト領域2613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、2回目の電荷蓄積を開始させる。
なお、画素信号の選択出力には時間を要するので、1回目の電荷蓄積の終了と2回目の電荷蓄積の開始の間には時間差が生じる。この時間差が実質的に無視し得るのであれば、上述のように、シャッタ速度T0に対して電荷蓄積回数で割った時間を1回の電荷蓄積時間とすれば良い。一方、無視し得ないのであれば、その時間を考慮して、シャッタ速度T0を調整したり、1回の電荷蓄積時間をシャッタ速度T0に対して電荷蓄積回数で割った時間よりも短くしたりすれば良い。
時刻t=T0/2となったら、駆動部2502は、中間領域2612とハイライト領域2613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線2309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部2502は、中間領域2612とハイライト領域2613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、中間領域2612に対しては2回目の、ハイライト領域2613に対しては3回目の電荷蓄積を開始させる。
時刻t=3T0/4となったら、駆動部2502は、ハイライト領域2613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線2309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部2502は、ハイライト領域2613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、4回目の電荷蓄積を開始させる。
時刻t=T0となったら、駆動部2502は、全領域の画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線2309に出力させる。以上の制御により、シャドウ領域2611に対応する画素メモリ2414にはそれぞれ1回分の画素信号が格納され、中間領域2612に対応する画素メモリ2414にはそれぞれ2回分の画素信号が格納され、ハイライト領域2613に対応する画素メモリ2414にはそれぞれ4回分の画素信号が格納される。
なお、駆動部2502は、いずれの領域に属するグループの画素に対して、リセットパルスを順次印加し、それぞれの領域に属するグループの画素を順次リセットしてもよい。また、駆動部2502は、リセットしたグループの画素に転送パルスを順次印加してもよい。この印加をトリガーとして、それぞれのグループの画素が電荷蓄積を順次開始してよい。すべての領域に属するグループの画素に対して電荷蓄積が終了後に、駆動部2502は、全領域の画素に対して転送パルスを印加してよい。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線2309に出力させてよい。
これらの画素信号は、順次、画像処理部2511へ転送される。画像処理部2511は、この画素信号から高ダイナミックレンジの画像データを生成する。具体的な処理については後述する。
図53は、積算回数とダイナミックレンジの関係を示す図である。繰り返し実行された電荷蓄積に対応する複数回分の画素データは、画像処理部2511により積算処理されて、高ダイナミックレンジの画像データの一部を形成する。
積算回数が1回、すなわち電荷蓄積を1回行った領域のダイナミックレンジを基準とした場合、積算回数が2回、すなわち電荷蓄積を2回行って出力信号を積算した領域のダイナミックレンジの拡大分は1段分となる。同様に、積算回数を4回にすれば2段分となり、128回にすれば7段分となる。すなわち、n段分のダイナミックレンジ拡大を図るには、2n回の出力信号を積算すれば良い。
ここで、画像処理部2511がいずれの分割領域が何回の電荷蓄積を行ったかを識別するために、積算回数を示す3bitの指数桁が画像信号に付与されている。図示するように、指数桁は、積算数1回に対して000、2回に対して001、…128回に対して111のように順に割り当てられる。
画像処理部2511は、演算回路2415から受け取った各画素データの指数桁を参照して、参照した結果が2回以上の積算数である場合には、画素データの積算処理を実行する。例えば、積算回数が2回の場合(1段)は、2個の画素データに対して、電荷蓄積に対応する12bitの画素データのうち上位11bit同士を加算して、12bitの1つの画素データを生成する。同様に、積算回数が128回(7段)の場合は、128個の画素データに対して、電荷蓄積に対応する12bitの画素データのうち上位5bit同士を加算して、12bitの1つの画素データを生成する。すなわち、積算回数に対応する段数を12から引いた上位bitを互いに足し合わせて、12bitの1つの画素データを生成する。なお、加算の対象とならない下位bitは除去される。
このように処理することにより、階調を与える輝度範囲を積算回数に合わせて高輝度側にシフトさせることができる。すなわち、高輝度側の限られた範囲に対して12bitが割り当てられることになる。したがって、従来白飛びしていた画像領域に対して階調を与えることができる。
ただし、他の分割領域については異なる輝度範囲に対して12bitを割り当てているので、単純に領域ごとに繋ぎ合わせる合成により画像データを生成することができない。そこで、画像処理部2511は、得られた階調をできる限り維持しつつ全領域を12bitの画像データとするために、最大輝度画素と最低輝度画素を基準として、再量子化処理を行う。具体的には、階調がより滑らかに維持されるように、ガンマ変換を施して量子化を実行する。このように処理することにより、高ダイナミックレンジの画像データを得ることができる。
なお、積算回数は、上記のように3bitの指数桁が画素データに付与されている場合に限らず、画素データとは別の付随情報として記述されていても良い。また、画素データから指数桁を省き、代わりに画素メモリ2414に格納されている画素データの数をカウントすることにより、加算処理時に積算回数を取得しても良い。
また、上記の画像処理においては、全領域を12bitの画像データに収める再量子化処理を実行したが、画素データのbit数に対し、上限の積算回数に合わせて出力bit数を増やしても良い。例えば、上限の積算回数を16回(4段)と定めれば、12bitの画素データに対して、全領域を16bitの画像データとすれば良い。このように処理すれば、桁落ちさせずに画像データを生成することができる。
次に、一連の撮影動作処理について説明する。図54は、撮影動作の処理を示すフロー図である。フローは、撮像装置500の電源がONにされて開始される。
システム制御部2501は、ステップS2201で、撮影準備指示であるスイッチSW1の押し下げがなされるまで待機する。スイッチSW1の押し下げを検知したらステップS2202へ進む。
ステップS2202では、システム制御部2501は、測光処理を実行する。具体的には、測光部2503の出力を得て、演算部2512がシーンの輝度分布を算出する。そして、ステップS2203へ進み、上述のように、シャッタ速度、領域分割、積算回数等を決定する。
撮影準備動作が完了したら、ステップS2204へ進み、撮影指示であるスイッチSW2の押し下げがなされるまで待機する。このとき、経過時間が予め定められた時間Twを超えたら(ステップS2205のYES)、ステップS2201へ戻る。Twを超える前に(ステップS2205のNO)スイッチSW2の押し下げを検知したら、ステップS2206へ進む。
ステップS2206では、システム制御部2501の指示を受けた駆動部2502が、図52を用いて説明した電荷蓄積処理、信号読み出し処理を実行する。そして、全ての信号読み出しが完了したらステップS2207へ進み、図53を用いて説明した画像処理を実行し、生成された画像データを記録部に記録する記録処理を実行する。
記録処理が完了したらステップS2208へ進み、撮像装置2500の電源がOFFにされたか否かを判断する。電源がOFFにされなければステップS2201へ戻り、OFFにされたら一連の撮影動作処理を終了する。
図55は、信号処理チップ2111の一例としての具体的構成を示すブロック図である。図55に示す画素データ処理部2910は、画素ブロック2131ごとに設けられる。ただし、図38に関連して説明した演算回路2415と同様に、画素データ処理部2910は、2以上の画素に対して、画素毎に設けられてもよい。また、画素データ処理部2910の構成のうち、演算回路2415以外の構成は、画素ブロック2131ごとに設けられてよい。
本例の信号処理チップ2111における制御部2740は、駆動部2502の機能の一部または全部を担う。制御部2740は、分担化された制御機能としてのセンサ制御部2441、ブロック制御部2442、同期制御部2443、信号制御部2444と、これらの各制御部を統括制御する駆動制御部2420とを含む。駆動制御部2420は、システム制御部2501からの指示を、各制御部が実行可能な制御信号に変換してそれぞれに引き渡す。
センサ制御部2441は、撮像チップ2113へ送出する、各画素の電荷蓄積、電荷読み出しに関わる制御パルスの送出制御を担う。具体的には、センサ制御部2441は、対象画素に対してリセットパルスと転送パルスを送出することにより、電荷蓄積の開始と終了を制御し、読み出し画素に対して選択パルスを送出することにより、画素信号を出力配線2309へ出力させる。
ブロック制御部2442は、撮像チップ2113へ送出する、制御対象となる画素ブロック2131を特定する特定パルスの送出を実行する。図51B等を用いて説明したように、注目領域2172および周辺領域2176に分割された各領域には、互いに隣接する複数の画素ブロック2131が包含され得る。これら同一の領域に属する画素ブロック2131は、ひとつのブロック群を形成する。同一のブロック群に含まれる画素は、同一のタイミングで電荷蓄積を開始し、同一のタイミングで電荷蓄積を終了する。そこで、ブロック制御部2442は、駆動制御部2420からの指定に基づいて対象となる画素ブロック2131に特定パルスを送出することにより、画素ブロック2131をブロック化する役割を担う。各画素がTX配線2307およびリセット配線2306を介して受ける転送パルスおよびリセットパルスは、センサ制御部2441が送出する各パルスとブロック制御部2442が送出する特定パルスの論理積となる。
このように、各領域を互いに独立したブロック群として制御することにより、図52を用いて説明した電荷蓄積制御を実現する。駆動制御部2420は、同一のブロック群に含まれる画素に対して、異なるタイミングでリセットパルスおよび転送パルスを印加してよい。また、駆動制御部2420は、同一のブロック群に含まれる画素の電荷蓄積を同一タイミングで終了させた後、ブロック群内の画素に対して順次選択パルスを印加して、それぞれの画素信号を順次読み出してもよい。
同期制御部2443は、同期信号を撮像チップ2113へ送出する。各パルスは、同期信号に同期して撮像チップ2113においてアクティブとなる。例えば、同期信号を調整することにより、同一の画素ブロック2131に属する画素の特定画素のみを制御対象とするランダム制御、間引き制御等を実現する。
信号制御部2444は、主にA/D変換器2412に対するタイミング制御を担う。出力配線2309を介して出力された画素信号は、CDS回路2410およびマルチプレクサ2411を経てA/D変換器2412に入力される。A/D変換器2412は、信号制御部2444によって制御されて、入力された画素信号をデジタルの画素データに変換する。デジタル信号に変換された画素データは、デマルチプレクサ2413に引き渡され、そしてそれぞれの画素に対応する画素メモリ2414にデジタルデータの画素値として格納される。画素メモリ2414は、記憶ブロック2730の一例である。
信号処理チップ2111は、いずれの画素ブロック2131を組み合わせて注目領域2172および周辺領域2176のブロック群を形成するかについてのブロック区分情報と、形成されたそれぞれのブロック群が何回の電荷蓄積を繰り返すかについての蓄積回数情報とを格納する、蓄積制御メモリとしてのタイミングメモリ2430を有する。タイミングメモリ2430は、例えばフラッシュRAMによって構成される。
上述のように、いずれの画素ブロック2131を組み合わせてブロック群を形成するかについては、一連の撮影シーケンスに先立って実行されるシーンの輝度分布検出の検出結果に基づいて、システム制御部2501により決定される。決定されたブロック群は、例えば第1ブロック群、第2ブロック群…のように区分され、それぞれのブロック群がいずれの画素ブロック2131を包含するかにより規定される。駆動制御部2420は、このブロック区分情報をシステム制御部2501から受け取り、タイミングメモリ2430へ格納する。
また、システム制御部2501は、輝度分布の検出結果に基づいて、各ブロック群が何回の電荷蓄積を繰り返すかを決定する。駆動制御部2420は、この蓄積回数情報をシステム制御部2501から受け取り、対応するブロック区分情報と対でタイミングメモリ2430へ格納する。このようにタイミングメモリ2430へブロック区分情報と蓄積回数情報を格納することにより、駆動制御部2420は、一連の電荷蓄積制御を、タイミングメモリ2430を逐次参照して独立して実行し得る。すなわち、駆動制御部2420は、1枚の画像取得制御において撮影指示の信号をシステム制御部2501から一旦受け取ると、その後は各画素の制御についてその都度システム制御部2501から指示を受けること無く、蓄積制御を完了させることができる。
駆動制御部2420は、撮影準備指示に同期して実行される測光結果(輝度分布の検出結果)に基づいて更新されるブロック区分情報と蓄積回数情報をシステム制御部2501から受け取って、タイミングメモリ2430の記憶内容を適宜更新する。例えば、駆動制御部2420は、撮影準備指示または撮影指示に同期して、タイミングメモリ2430を更新する。このように構成することにより、より高速な電荷蓄積制御を実現すると共に、駆動制御部2420が電荷蓄積制御を実行している間に、システム制御部2501は他の処理を並行して実行し得る。
駆動制御部2420は、撮像チップ2113に対する電荷蓄積制御を実行するに留まらず、読み出し制御の実行においてもタイミングメモリ2430を参照する。例えば、駆動制御部2420は、各ブロック群の蓄積回数情報を参照して、デマルチプレクサ2413から出力される画素データを画素メモリ2414の対応アドレスに格納する。
駆動制御部2420は、システム制御部2501からの引渡要求に従って、画素ブロックごとの対象画素データを画素メモリ2414から読み出し、画像処理部2511へ引き渡す。このとき、駆動制御部2420は、それぞれの対象画素データに対応する付加データを合わせて画像処理部2511へ引き渡す。
演算回路2415は、対応する画素ブロック2131が生成した画素信号に応じた画素データに対して、予め定められた演算を画素ブロック2131毎に行う。つまり、演算回路415は、画素ブロック2131に対応して設けられ、画素ブロック2131毎に演算処理を行う。なお、演算回路2415は、画素ブロック2131と1対1の関係で設けられる。つまり、演算回路2415は、画素ブロック2131の直下の信号処理チップ2111に設けられた回路である。駆動制御部2420は、画素メモリ2414に格納された画素データを、演算回路2415に読み出して、演算回路2415に予め定められた演算処理を実行させる。
画素メモリ2414には、引渡要求に従って画素データまたは後述する差分データを伝送するデータ転送インタフェースが設けられている。データ転送インタフェースは、画像処理部2511と繋がるデータ転送ライン2920と接続されている。データ転送ライン2920は例えばシリアルバスによって構成される。この場合、システム制御部2501から駆動制御部2420への引渡要求は、アドレスバスを利用したアドレス指定によって実行される。
図55の信号処理チップ2111を用いて、注目領域2172と周辺領域2176とで異なる制御パラメータを用いて画素データ取得後に、所定の演算を実行してもよい。例えば、図41から図44では、注目領域2172と周辺領域2176とで異なるフレームレートで取得した画像から動画を生成しているが、これに代えて、高いフレームレートで取得した画像を平均化する画像処理をしてS/N比を向上させてもよい。この場合に、例えば駆動制御部2420により周辺領域2176から1回の画素信号を得る間に、注目領域2172から複数回、例えば4回の画素信号を得て、画素データを画素メモリ2414に格納する。演算回路2415は、画素メモリ2414から注目領域2172の各画素に対して得られた複数の画素データを読み出して、画素ごとに平均する。これにより、注目領域2172の各画素でのランダムノイズが減って、注目領域2172のS/N比を向上させることができる。
なお、データ転送ライン2920には、メモリ2940が接続される。メモリ2940は、画素メモリ2414から画素データを指定されたアドレスに順次格納する揮発性メモリであってよい。たとえば、メモリ2940は、DRAMである。メモリ2940は、受け取る各画素ブロック2131の画素データを用いた1フレーム分のRGBデータを格納する。
制御部2740は、当該画素ブロック2131に対応する演算回路2415に、周辺の画素ブロック2131に対応する演算回路2415とデータの授受を行わせる。図55の例では、駆動制御部2420が、複数の演算回路2415間でデータを伝送させる。それぞれの演算回路2415は、他の画素ブロック2131に対応する他の演算回路2415における他の演算結果の少なくとも一部を受け取る。それぞれの演算回路2415は、受け取った他の演算結果に更に基づいて、自己の演算結果を生成してよい。
また、演算回路2415は、演算処理した画素ブロック2131ごとの演算結果を、出力回路2922に入力する。出力回路2922は、演算回路2415における演算結果を、画素データに対応付けてシステム制御部2501へ出力する。ここで、画素データに対応付けて出力するとは、当該画素ブロック2131の画素データに対して演算回路2415が行った演算結果と、その演算を施された画素データがいずれの画素ブロックのものであるかの情報を関連づけて出力することを指す。
なお、出力回路2922を介してシステム制御部2501に転送されるデータは画素ブロック2131ごとの演算結果であるが、システム制御部2501は、受け取ったデータが、それぞれの画素ブロック2131においてどのような演算が施された結果、得られたデータであることがわからなければ、当該データを利用することができない。本例では、出力回路2922が、それぞれの演算回路2415における演算内容を示すデータコードを、演算結果に付して出力する。当該データコードは、演算回路2415毎に予め定められてよい。また、演算回路2415が複数種類の演算を行うことができる場合、演算回路2415は、どのような演算を行ったかを示す情報を出力回路2922に通知することが好ましい。つまり、出力回路2922は、画素ブロック2131毎に行われた演算内容、演算結果、および制御情報を、ひとつのデータ配列として生成し出力する。出力回路2922が出力する具体的なデータ配列の例は後述する。
図56は、互いに演算結果を受け渡す複数の演算回路2415を示す。例えば第1演算回路2415は、第2演算回路2415における第2評価値、または、第2演算回路2415が第2評価値を演算する過程における演算結果を受け取る。この場合、第1演算回路2415は、第2評価値または当該演算結果に基づいて第1評価値を演算する。または、それぞれの演算回路2415は、他の演算回路2415に対応する画素信号を、演算回路2415に対応する画素メモリ2414から読み出して、自らが当該画素信号に対する演算を行ってもよい。例えば第1演算回路2415は、第2演算回路2415に対応する第2画素信号を読み出す。この場合、第1演算回路2415は、読み出した第2画素信号に基づいて第1評価値を演算する。
本例では、演算回路2415−1、演算回路2415−2および演算回路2415−4に対応する各画素ブロック2131が列方向に隣接し、演算回路2415−1、演算回路2415−3および演算回路2415−5に対応する各画素ブロック2131が行方向に隣接する。それぞれの演算回路2415は、自己に対応する画素ブロック2131と隣接する画素ブロック2131に対応する他の演算回路2415における他の演算結果の少なくとも一部を受け取る。ここで、隣接するとは、行方向および列方向に隣接する場合に限定されない。画素ブロック2131が対角方向に隣接する場合を含んでもよい。本例では、行方向および列方向に隣接する場合について、説明する。
隣接するそれぞれの演算回路2415は、演算結果を隣接する画素ブロック2131に対応する演算回路2415に出力する出力バス、および、演算結果を隣接する画素ブロック2131に対応する演算回路2415に入力する入力バスを介して接続される。制御部2740は、当該画素ブロック2131に対応する演算回路2415に、隣接する他の画素ブロック2131に対応する演算回路2415からの演算結果に基づいて、当該画素ブロック2131の自己の演算結果を生成させる。
図57は、演算回路2415の構成の一例を示すブロック図である。それぞれの演算回路2415は、当該ブロック算出部2912と、平均算出部2913と、平均−平均算出部2914と、周辺ブロック算出部2911と、画素−平均算出部2915とを備える。当該ブロック算出部2912の入力は、当該画素ブロック2131に対応する画素メモリ2414の出力と接続されおり、当該ブロック算出部2912の出力は、平均算出部2913の入力、平均−平均算出部2914の入力、および、出力回路2922の入力、および、隣接する画素ブロック2131に対応するそれぞれの演算回路2415に接続されている。例えば当該ブロック算出部2912は、対応する画素ブロック2131における各色の画素値の平均を出力する。
周辺ブロック算出部2911は、複数の入力を有し、それぞれの入力は当該画素ブロック2131に隣接する複数の画素ブロック2131に対応する演算回路2415の出力に接続されている。周辺ブロック算出部2911の出力は、平均算出部913の入力に接続されている。例えば周辺ブロック算出部2911は、他の演算回路2415から受け取った各色の画素値の平均に基づいて、これらの平均を算出してよい。また、周辺ブロック算出部2911は、他の演算回路2415から受け取った各色の画素値の平均を、そのまま出力してもよい。
平均算出部2913は2つの入力部を有し、一方の入力は当該ブロック算出部2912の出力に接続され、もう一方の入力は周辺ブロック算出部2911の出力に接続されている。例えば平均算出部2913は、当該ブロック算出部2912が出力する平均値と、周辺ブロック算出部2911が出力する平均値とに基づいて、対応する画素ブロック2131および隣接する画素ブロック2131における各色の画素値の平均を出力する。
平均−平均算出部2914は2つの入力を有し、一方の入力は平均算出部2913の出力に接続され、もう一方の入力は当該ブロック算出部2912の出力に接続されている。平均−平均算出部2914の出力は、出力回路2922の入力に接続されている。例えば平均−平均算出部2914は、平均算出部2913が算出した各色の画素値の平均と、当該ブロック算出部2912が算出した各色の画素値の平均との差分を算出する。
画素−平均算出部2915は、2つの入力を有し、一方の入力は平均算出部2913の出力に接続され、もう一方の入力は当該画素ブロック2131に対応する画素メモリ2414の出力に接続されている。画素−平均算出部2915の出力は当該画素ブロック2131に対応する画素メモリ2414の入力に接続されている。例えば画素−平均算出部2915は、当該画素ブロック2131における各画素値と、平均算出部2913が算出した各色の画素値の平均のうち、対応する色の平均値との差分を出力する。
制御部2740は、当該ブロック算出部2912における演算結果を、他の演算回路2415および出力回路2922に伝送する。また、制御部2740は、平均−平均算出部2914における演算結果を、出力回路2922に伝送する。さらに、制御部2740は、画素−平均算出部2915における演算結果を当該画素ブロック2131の画素メモリ2414にフィードバックする。
なお、演算回路2415の各算出部は、加算回路、減算回路、および除算回路により構成することができる。このように、演算回路2415の回路構成を単純化することで、画素ブロック2131毎に演算回路2415を実装することができる。
図58は、演算回路2415の動作の一例を説明するフローチャートである。演算回路2415が動作を開始した後、ステップS2300において、制御部2740は、当該画素ブロック2131に対応する画素メモリ2414から当該画素ブロック2131のフレームレートで撮像した当該画素ブロック2131のRGB画素データを読み出し、当該ブロック算出部2912に入力する。ステップS2310において、制御部2740は、ステップS2300と同期して、隣接画素ブロック2131における演算結果の少なくとも一部を、隣接する演算回路2415から周辺ブロック算出部2911に入力する。本例では、各演算回路2415は、RGB画素毎の画素値の平均を算出し、周辺ブロック算出部2911は、隣接する演算回路2415が算出したRGB画素毎の画素値の平均を受け取る。
ステップS2320において、制御部2740は、当該ブロック算出部2912に、自己に対応する画素ブロック2131の画素データに対して予め定められた演算を行わせる。たとえば、当該ブロック算出部2912は、当該画素ブロック2131のRGB画素ごとの加算平均値(Ar、Ag、Ab)を計算する。加算平均値は、Ai=Σ(画素ブロック内のi画素)/(画素ブロック内のi画素数) (i=r、g、b)によって計算される。ステップS2322において、制御部2740は、当該ブロック算出部2912に、出力回路2922の入力、および、4つの隣接画素ブロック2131の対応するそれぞれの演算回路2415の入力へ、平均値(Ar、Ag、Ab)を入力させる。
ステップS2340において、制御部2740は、周辺ブロック算出部2911に、隣接する画素ブロック2131のRGB画素ごとの加算平均値に基づいて、隣接する複数の画素ブロック2131における平均(Br、Bg、Bb)を計算させる(隣接画素ブロック平均とする)。たとえば、隣接画素ブロック平均は、Bi=ΣAi/4 (i=r、g、b)により計算される(ただし、隣接する画素ブロック2131の数を4とした)。ステップS2350において、制御部2740は、平均算出部2913に、他の演算回路2415から受け取った他の演算結果と、当該ブロック算出部2912における演算結果とに対して、予め定められた演算を行わせる。たとえば、平均算出部2913は、ステップS2340で算出した4つの隣接画素ブロック平均値(Br、Bg、Bb)と、ステップS2320で算出した当該画素ブロック2131の加算平均値(Ar、Ag、Ab)との全平均(Cr、Cg、Cb)を計算する。全平均は、Ci=(Bi+Ai)/2 (i=r、g、b)によって計算される。
ステップS2360において、制御部2740は、平均−平均算出部2914に、ステップS2320で当該ブロック算出部2912が計算した当該ブロックの加算平均値(Ar、Ag、Ab)と、ステップS2350で平均算出部2913が計算した全平均値(Cr、Cg、Cb)との差分値(ΔAr、ΔAg、ΔAb)を計算させる。差分値は、ΔAi=(Ai−Ci) (i=r、g、b)によって計算される。制御部2740は、ステップS2370において、平均−平均算出部2914に、差分値(ΔAr、ΔAg、ΔAb)を出力回路2922へ入力させる。なお、演算回路2415は平均−平均算出部2914を有さずに、平均−平均算出部2914における演算結果に代えて、平均算出部2913における演算結果を出力回路2922に入力してもよい。
制御部2740は、ステップS2380において、画素−平均算出部2915に、ステップS2310で取得した当該画素ブロックのRGB画素データと、ステップS2350において、平均算出部2913が計算した全平均値(Cr、Cg、Cb)との差分値(ΔCr、ΔCg、ΔCb)を計算させる。差分値は、ΔCi=(Ci−当該画素ブロック内のi画素) (i=r、g、b)により計算される。これにより、値の小さい差分値と、平均値とを用いて、元の画素データの情報を保存することができる。つまり、平均算出部2913における演算結果に基づいて、自己に対応する画素ブロック2131の画素データを圧縮させることができる。
ステップS2390において、制御部2740は、(ΔCr、ΔCg、ΔCb)を当該画素ブロック2131の画素メモリ2414へフィードバックする。ステップS2392において、制御部2740は、演算を続けるか否かを判断し、前者の場合にはステップS2300に戻り、後者の場合には演算処理を終了する。
制御部2740は、演算回路2415の以上の動作を画素ブロック2131ごとに実行する。なお、演算回路2415は、現フレームにおける画素データに対して、以前のフレームにおける画素データを用いて予め定められた演算を行ってもよい。この場合、制御部2740は、演算回路2415に対して、隣接する画素ブロック2131のRGB画素ごとの平均値の代わりに、自己の画素ブロック2131の、例えばひとつ前のフレームにおけるRGB画素ごとの加算平均値(Dr、Dg、Db)を用いればよい。前のフレームの加算平均値は、Di=Σ(前のフレームの画素ブロック内のi画素)/(前のフレームの画素ブロック内のi画素数) (i=r、g、b)により求められる。制御部2740は、メモリ2940から前のフレームのRGB画素データを読み出して、第4演算部に加算平均値(Dr、Dg、Db)を計算させる。それ以外の動作は図58と同様なので説明を省略する。
このように、本例によれば、画素ブロック2131ごとの演算結果および演算内容ならびに制御部2740による画素ブロック2131ごとの制御情報を画素ブロック2131から出力回路2922を介してシステム制御部2501へ送ることができる。結果として、システム制御部2501における画像処理の負荷を大幅に低減することができる。また、演算回路2415は、周辺の画素ブロック2131の画素データとの相関値を当該画素ブロック2131の評価値として出力すればよいので、システム制御部501に送信すべきデータ量を減らすことができる。さらに、本例の演算回路2415は、差分値(ΔCr、ΔCg、ΔCb)を当該画素ブロック2131に対応する画素メモリ2414にフィードバックしているので、その分だけシステム制御部2501に送信するデータ量を減らすことができる。さらに、システム制御部2501に含まれる画像処理部2511は、それぞれの出力回路2922から受け取る演算結果に基づいて、一つの画像データを生成することができるので、すべての画素ブロック2131のRGB画素データをメモリ2940に一度記憶させてから読み出してひとつの画像を再構成する場合に比べ、画像処理の速度を向上させることができる。なお、本例の信号処理チップ2111は、画像処理部2511における画像処理機能の少なくとも一部の機能を有する。例えば演算回路2415が、各評価値に基づいて、対応する画素信号に対応する画像の画像データに画像処理を施す画像処理部として更に機能する。一例として、当該画像処理機能は、差分値(ΔCr、ΔCg、ΔCb)を画素メモリ2414にフィードバックする機能であってよい。なお、評価値の例は、画素ブロック2131内の画素信号の平均、画素ブロック2131内外の画素信号の重み付け平均、画素ブロック2131内のコントラスト、画素ブロック2131内外のコントラストの重み付け平均画素ブロック2131内の輝度、画素ブロック2131内外の輝度の重み付け平均等である。さらには、評価値は、G画素の平均、R画素の平均、B画素の平均を所定割合で加算した値であってよい。また、平均値の算出は、単位グループ内に配置される部分領域の平均値でもよい。
図59は、演算回路2415からの入力に基づいて、出力回路2922が生成するデータ配列2950の一例を示す。データ配列2950は、データコード領域2952およびデータ領域2954を有する。データコード領域2952には、データコード用に4ビットが割り当てられてよい。本例では、D12からD15がデータコードに割り当てられている。データ領域2954には、それぞれのデータコードに対応する付加データ用の12ビットが割り当てられてよい。本例では、D0からD11がデータコード用に割り当てられている。データ配列2950のビット数は16ビットに限定されず、データコードと付加データに割り当てるべきビット数も任意に設定できる。
なお、制御部2740は、演算回路2415からの演算結果データを、画素メモリ2414からの画素データと別のルートで出力してよい。たとえば、制御部2740は、演算回路415の演算結果を出力回路2922を通じてシステム制御部2501に送信してよい。また、制御部2740は、画素メモリ2414の画素データをデータ転送ライン2920を介してメモリ2940に格納してよい。他の例では、制御部2740は、画素ブロック2131の画素データに当該画素ブロック2131の画素データの演算結果を添付して出力回路2922からシステム制御部2501へ一緒に送信してもよい。
なお、以上においては画素値の平均を算出する例を説明したが、演算回路2415における演算内容は、これに限定されない。演算回路2415に用いられるパラメータは、画素値以外の情報が含まれてよい。例えば演算回路2415は、画素のXY平面における位置、被写体までの距離の情報、絞り値、PD2104における電荷蓄積時間、当該画素ブロック2131における電荷電圧変換利得、当該画素ブロック2131における駆動フレーム周波数(フレームレート)等のパラメータを用いて所定の演算を行ってよい。
図60は、図59に示すデータ配列2950の内容の一例を示す。データコード領域2952には16種類のデータコード(0〜9、a〜f)が記憶される。データコード0には、当該画素ブロック2131のR画素加算平均値(Ar)が割り当てられ、12ビットの付加データとして出力される。データコード1には、当該画素ブロック2131のG画素加算平均値(Ag)が割り当てられ、12ビットの付加データとして出力される。データコード2には、当該画素ブロック2131のB画素加算平均値(Ar)が割り当てられ、12ビットの付加データとして出力される。データコード3には、全平均値CrとArとの差分ΔArが割り当てられ、12ビットの付加データとして出力される。データコード4には、全平均値CgとAgとの差分ΔAgが割り当てられ、12ビットの付加データとして出力される。データコード5には、全平均値CbとAbとの差分ΔAbが割り当てられ、12ビットの付加データとして出力される。以上が、演算回路2415が出力する演算内容および演算結果のデータの一例である。
データ配列2950は、他に制御部2740の制御情報を含む。本例では、データコードdには、当該画素ブロック2131の電荷電圧変換利得が割り当てられ、12ビットの付加データとして出力される。データコードeには、当該画素ブロック2131の駆動フレーム周波数が割り当てられ、12ビットの付加データとして出力される。データコードfには、当該画素ブロック2131の蓄積時間が割り当てられ、12ビットの付加データとして出力される。データ配列2950に制御部2740の制御情報(制御ログ)を付加することで、制御部2740が各画素ブロック2131をどのように制御したかを示す制御情報を画素ブロック側からシステム制御部2501に送ることができる。
つまり、システム制御部2501は、図59に例示したデータ配列2950を、画素ブロック2131毎に受け取ることができるので、メモリ2940に格納された当該画素ブロック2131のRGB画素ごとの差分データにアクセスして読み出したデータをデータ配列2950のデータコードに基づいて処理することで、画素ブロック2131毎の画像処理を容易に実行することができる。つまり、システム制御部2501における処理の一部を演算回路2415で行っているので、動画生成におけるシステム制御部2501の画素データ処理の負荷を大幅に低減することができる。なお、システム制御部2501は、出力回路2922が出力したデータ配列2950の内容を、システム制御部2501自身の負荷を減らしつつ有効に利用することができる。たとえば、システム制御部2501は、データ配列2950の内容に基づいて、画素ブロック2131ごとに圧縮レートを変えて動画を生成することができる。
図61は、本実施形態に係る他の撮像素子3100の断面図である。撮像素子3100は、入射光に対応した画素信号を出力する撮像チップ3113と、画素信号を処理する信号処理チップ3111と、画素信号を記憶するメモリチップ3112とを備える。これら撮像チップ3113、信号処理チップ3111およびメモリチップ3112は積層されており、Cu等の導電性を有するバンプ3109により互いに電気的に接続される。
なお、図示するように、入射光は主に白抜き矢印で示すZ軸プラス方向へ向かって入射する。本明細書においては、撮像チップ3113において、入射光が入射する側の面を裏面と称する。また、座標軸に示すように、Z軸に直交する紙面左方向をX軸プラス方向、Z軸およびX軸に直交する紙面手前方向をY軸プラス方向とする。以降のいくつかの図においては、図61の座標軸を基準として、それぞれの図の向きがわかるように座標軸を表示する。
撮像チップ3113の一例は、裏面照射型のMOSイメージセンサである。PD層3106は、配線層3108の裏面側に配されている。PD層3106は、二次元的に配され、入射光に応じた電荷を蓄積して、蓄積した電荷に応じた画素信号を生成する複数のPD(フォトダイオード)104、および、PD3104に対応して設けられたトランジスタ3105を有する。
PD層3106における入射光の入射側にはパッシベーション膜3103を介してカラーフィルタ3102が設けられる。カラーフィルタ3102は、互いに異なる波長領域を透過する複数の種類を有しており、PD3104のそれぞれに対応して特定の配列を有している。カラーフィルタ3102の配列については後述する。カラーフィルタ3102、PD3104およびトランジスタ3105の組が一つの画素を形成する。
カラーフィルタ3102における入射光の入射側には、それぞれの画素に対応して、マイクロレンズ3101が設けられる。マイクロレンズ3101は、対応するPD3104へ向けて入射光を集光する。
配線層3108は、PD層3106からの画素信号を信号処理チップ3111に伝送する配線3107を有する。配線3107は多層であってもよく、また、受動素子および能動素子が設けられてもよい。
配線層3108の表面には複数のバンプ3109が配される。当該複数のバンプ3109が信号処理チップ3111の対向する面に設けられた複数のバンプ3109と位置合わせされて、撮像チップ3113と信号処理チップ3111とが加圧等されることにより、位置合わせされたバンプ3109同士が接合されて、電気的に接続される。
同様に、信号処理チップ3111およびメモリチップ3112の互いに対向する面には、複数のバンプ3109が配される。これらのバンプ3109が互いに位置合わせされて、信号処理チップ3111とメモリチップ3112とが加圧等されることにより、位置合わせされたバンプ3109同士が接合されて、電気的に接続される。
なお、バンプ3109間の接合には、固相拡散によるCuバンプ接合に限らず、はんだ溶融によるマイクロバンプ結合を採用しても良い。また、バンプ3109は、例えば後述する一つの画素ブロックに対して一つ程度設ければ良い。したがって、バンプ3109の大きさは、PD3104のピッチよりも大きくても良い。また、画素が配列された画素領域以外の周辺領域において、画素領域に対応するバンプ3109よりも大きなバンプを併せて設けても良い。
信号処理チップ3111は、表裏面にそれぞれ設けられた回路を互いに接続するTSV(シリコン貫通電極)110を有する。TSV3110は、周辺領域に設けられることが好ましい。また、TSV3110は、撮像チップ3113の周辺領域、および、メモリチップ3112にも設けられて良い。
図62は、撮像チップ3113の画素配列と画素ブロック3131を説明する図である。図62では、撮像チップ3113を裏面側から観察した様子を示す。画素領域3700には複数の画素がマトリックス状に配列されている。図62においては、隣接する4画素×4画素の16画素が一つの画素ブロック3131を形成する。図の格子線は、隣接する画素がグループ化されて画素ブロック3131を形成する概念を示す。画素ブロック3131を形成する画素の数はこれに限られず1000個程度、例えば32画素×64画素でもよいし、それ以上でもそれ以下でもよい。
画素領域3700の部分拡大図に示すように、画素ブロック3131は、緑色画素Gb、Gr、青色画素Bおよび赤色画素Rの4画素から成るいわゆるベイヤー配列を、上下左右に4つ内包する。緑色画素は、カラーフィルタ3102として緑色フィルタを有する画素であり、入射光のうち緑色波長帯の光を受光する。同様に、青色画素は、カラーフィルタ3102として青色フィルタを有する画素であって青色波長帯の光を受光し、赤色画素は、カラーフィルタ3102として赤色フィルタを有する画素であって赤色波長帯の光を受光する。
本実施形態において、複数の画素ブロック3131のうちの少なくとも一つの画素ブロックが選択され、他の画素ブロックとは異なる制御パラメータで、それぞれの画素ブロックに含まれる画素が制御される。制御パラメータの例は、フレームレート、間引き率、画素信号を加算する加算行数、電荷の蓄積時間または蓄積回数、デジタル化のビット数等である。さらに、制御パラメータは、画素からの画像信号取得後の画像処理におけるパラメータであってもよい。フレームレートとは、画素信号を生成する周期を指す。なお本明細書においてフレームレートとは、画素ブロック3131毎のフレームレートを指す場合がある。例えば、基準フレームレートおよび高速フレームレートは、画素ブロック3131毎のフレームレートを指す。
図63は、撮像チップ3113の画素ブロック3131に対応する回路図である。図において、代表的に点線で囲む矩形が、1画素に対応する回路を表す。なお、以下に説明する各トランジスタの少なくとも一部は、図61のトランジスタ3105に対応する。
図63では、16画素から形成される画素ブロック3131を示すが、画素ブロック3131の画素数はこれに限定されない。それぞれの画素に対応する16個のPD3104は、それぞれ転送トランジスタ3302に接続され、各転送トランジスタ3302の各ゲートには、転送パルスが供給されるTX配線3307に接続される。図63に示す例において、TX配線3307は、16個の転送トランジスタ3302に対して共通接続される。
各転送トランジスタ3302のドレインは、対応する各リセットトランジスタ3303のソースに接続されると共に、転送トランジスタ3302のドレインとリセットトランジスタ3303のソース間のいわゆるフローティングディフュージョンFDが増幅トランジスタ3304のゲートに接続される。リセットトランジスタ3303のドレインは電源電圧が供給されるVdd配線3310に接続され、そのゲートはリセットパルスが供給されるリセット配線3306に接続される。図63に示す例において、リセット配線3306は、16個のリセットトランジスタ3303に対して共通接続される。
各々の増幅トランジスタ3304のドレインは電源電圧が供給されるVdd配線3310に接続される。また、各々の増幅トランジスタ3304のソースは、対応する各々の選択トランジスタ3305のドレインに接続される。選択トランジスタの各ゲートには、選択パルスが供給されるデコーダ配線3308に接続される。図63に示す例では、デコーダ配線3308は、16個の選択トランジスタ3305に対してそれぞれ独立に設けられる。そして、各々の選択トランジスタ3305のソースは、共通の出力配線3309に接続される。負荷電流源3311は、出力配線3309に電流を供給する。すなわち、選択トランジスタ3305に対する出力配線3309は、ソースフォロアにより形成される。なお、負荷電流源3311は、撮像チップ3113側に設けても良いし、信号処理チップ3111側に設けても良い。
ここで、電荷の蓄積開始から蓄積終了後の画素出力までの流れを説明する。リセット配線3306を通じてリセットパルスがリセットトランジスタ3303に印加され、同時にTX配線3307を通じて転送パルスが転送トランジスタ3302に印加されると、PD3104およびフローティングディフュージョンFDの電位はリセットされる。
PD3104は、転送パルスの印加が解除されると、受光する入射光を電荷に変換して蓄積する。その後、リセットパルスが印加されていない状態で再び転送パルスが印加されると、蓄積された電荷はフローティングディフュージョンFDへ転送され、フローティングディフュージョンFDの電位は、リセット電位から電荷蓄積後の信号電位になる。そして、デコーダ配線3308を通じて選択パルスが選択トランジスタ3305に印加されると、フローティングディフュージョンFDの信号電位の変動が、増幅トランジスタ3304および選択トランジスタ3305を介して出力配線3309に伝わる。これにより、リセット電位と信号電位とに対応する画素信号は、単位画素から出力配線3309に出力される。
図63に示す例では、画素ブロック3131を形成する16画素に対して、リセット配線3306とTX配線3307が共通である。すなわち、リセットパルスと転送パルスはそれぞれ、16画素全てに対して同時に印加される。したがって、画素ブロック3131を形成する全ての画素は、同一のタイミングで電荷蓄積を開始し、同一のタイミングで電荷蓄積を終了する。ただし、蓄積された電荷に対応する画素信号は、それぞれの選択トランジスタ3305が選択パルスによって順次印加されて、選択的に出力配線3309に出力される。また、リセット配線3306、TX配線3307、出力配線3309は、画素ブロック3131毎に別個に設けられる。
このように画素ブロック3131を基準として回路を構成することにより、画素ブロック3131ごとに電荷蓄積時間を制御することができる。換言すると、隣接する画素ブロック3131同士で、異なった電荷蓄積時間による画素信号をそれぞれ出力させることができる。更に言えば、一方の画素ブロック3131に1回の電荷蓄積を行わせている間に、他方の画素ブロック3131に何回もの電荷蓄積を繰り返させてその都度画素信号を出力させることにより、これらの画素ブロック3131同士で異なるフレームレートで動画用の各フレームを出力することもできる。
図64Aは、撮像素子3100の構成の一部と、その動作例を示す。本例の撮像素子3100は、図61に示した構成に加え、記憶部3114を更に備える。なお、記憶部3114は、信号処理チップ3111に設けられてよい。この場合、撮像素子3100は、メモリチップ3112を有さなくともよい。また、記憶部3114は、メモリチップ3112に設けられてもよい。
撮像チップ3113は、それぞれ入射光に応じた画素信号を生成する複数の画素が配置された画素領域3700を有する。ここで、画素領域3700は、複数の画素を二次元的に複数並べて構成されてよい。各画素ブロック3131は、行方向および列方向にm×n個の画素を有する。ここで、m、nは2以上の整数である。画素領域3700は、行方向および列方向に分割した複数の画素ブロック3131を有する。図62に示したように、画素ブロック3131とは、複数の画素がマトリクス状に配置された画素集合体を指す。また、行方向および列方向とは、画素領域3700の面内における異なる2つの方向を指し、必ずしも互いに直交していなくともよい。
説明の便宜上、図64Aから図64Cにおいては、画素ブロック3131を、行方向および列方向に3個ずつ示すが、画素領域3700に含まれる画素ブロック3131の数は、より多くてよい。それぞれの画素ブロック3131に含まれる画素数は、等しいことが好ましい。また、画素領域3700内の各画素ブロック3131に含まれる画素数は、固定されていることが好ましい。画素ブロック3131は、例えば32×64の画素により構成される。
本例の信号処理チップ3111は、マルチプレクサ3411、A/D変換器3412、デマルチプレクサ3413、および制御部3740を、画素ブロック3131毎に有する。マルチプレクサ3411は、対応する画素ブロック3131に含まれる画素を順次選択して、選択した画素に対応する画素信号をA/D変換器3412に入力する。A/D変換器3412は、アナログの画素信号をデジタルの画素データに変換し、デマルチプレクサ3413に入力する。デマルチプレクサ3413は、対応する記憶ブロック3730において、当該画素に対応する記憶領域に当該画素データを記憶させる。それぞれの記憶ブロック3730は、記憶した画素データを後段の演算回路に引き渡す。
記憶部3114は、複数の画素ブロック3131に対応して設けられ、それぞれ対応する画素ブロック3131の画素データを記憶可能な複数の記憶ブロック3730を有する。記憶ブロック3730は、画素ブロック3131と一対一に対応する。記憶ブロック3730は、バス3720を介して、対応する画素ブロック3131と接続されてよい。記憶ブロック3730は、バッファメモリであってよい。
また、少なくとも一部の記憶ブロック3730は、対応する画素ブロック3131以外の画素ブロックの画素データも記憶することができる。つまり、一つの記憶ブロック3730が複数の画素ブロック3131によって共有されてもよい。換言すれば、制御部3740は、一つの画素ブロック3131の画素データを複数の記憶ブロック3730に記憶させることができる。記憶ブロック3730を共有することで、後述するように複数の記憶ブロック3730を効率よく利用することができるので、記憶部3114全体のメモリ容量を抑制することができる。
なお、全ての画素ブロック3131について、画素データが、対応する記憶ブロック3730以外にも、少なくとも一つの他の記憶ブロック3730に読み書き可能であることが好ましい。当該他の記憶ブロック3730は、画素ブロック3131毎に予め定められていてよく、動的に変更可能であってもよい。また、全ての記憶ブロック3730について、対応する画素ブロック3131以外にも、少なくとも一つの他の画素ブロック3131の画素データが読み書き可能であることが好ましい。当該他の画素ブロック3131は、記憶ブロック3730毎に予め定められていてよく、動的に変更可能であってもよい。
なお、それぞれの記憶ブロック3730は、信号処理チップ3111において、対応する画素ブロック3131と重なる領域に、それぞれの画素ブロック3131毎に設けられたメモリであってよい。つまり、記憶ブロック3730は、信号処理チップ3111において、対応する画素ブロック3131の直下の領域に設けられてよい。この場合、画素ブロック3131および記憶ブロック3730は、TSVにより電気的に接続されてよい。また、信号処理チップ3111において各画素ブロック3131と重なる領域には、対応する記憶ブロック3730およびA/D変換器3412等が設けられる。また、それぞれの記憶ブロック3730は、信号処理チップ3111において、画素領域3700と重なる領域の外側にそれぞれ設けられたメモリであってもよい。
また、それぞれの記憶ブロック3730およびA/D変換器3412が、対応する画素ブロック3131と重なる領域に設けられた場合において、それぞれの記憶ブロック3730が、対応する画素ブロック3131以外の画素ブロック3131の画素データを記憶する場合、当該記憶ブロック3730が設けられた領域までアナログの画素信号を伝送してよく、デジタルの画素データを伝送してもよい。前者の場合、当該記憶ブロック3730に対応するA/D変換器3412が、画素信号を画素データに変換して、当該記憶ブロック3730に入力する。後者の場合、当該画素ブロック3131と重なる領域におけるA/D変換器3412において画素信号を画素データに変換してから、当該画素データを記憶すべき記憶ブロック3730まで伝送する。信号処理チップ3111には、これらの画素信号または画素データを伝送するための配線が設けられる。
図64Bは、撮像素子3100の他の動作例を示す。なお、図64Bでは、図64Aに示した信号処理チップ3111の構成を省略している。本例では、複数の画素ブロック3131のうち、画素ブロック3712の画素データを、対応する記憶ブロック3734以外の他の記憶ブロック3731、732および733のいずれかに記憶する。本例では、画素ブロック3712が生成したアナログの画素信号を、他の記憶ブロック3731〜733に対応するA/D変換器3412で、デジタルの画素データに変換する。このように、いずれかの画素ブロック3712の画素データを、複数の記憶ブロック3731〜734に記憶可能とすることで、メモリの使用効率を向上させることができる。
例えば、複数の画素ブロック3131は、画素ブロック3131毎に異なるフレームレートで撮像した被写体の画素信号を、フレームレートに応じたタイミングで生成してよい。後述するように、制御部3740は、基準フレームレートおよび当該基準フレームレートよりも周期の短い高速フレームレートの少なくとも2つから、画素ブロック3131ごとに、対応する記憶ブロック3730を選択する。高速フレームレートの周期は、基準フレームレートの周期の整数分の1倍であってよい。それぞれの画素ブロック3131は、フレームレートの周期毎に、1ブロック分の画素信号を出力してよい。
本例では、画素ブロック3712のフレームレートが、基準フレームレートの5倍である場合を説明する。また、基準フレームレートの画素ブロック3131が画素信号を出力するのと略同時に、高速フレームレートの画素ブロック3712も画素信号を出力する。この場合、画素ブロック3131が次の画素信号を出力するまでに、画素ブロック3712は画素信号を4回出力する。
制御部3740は、基準フレームレートの画素ブロック3131が画素信号を出力していないときに、高速フレームレートの画素ブロック3712が4回出力する画素信号に応じた画素データを、複数の記憶ブロック3731〜734にそれぞれ記憶させる。なお、それぞれの画素ブロックが基準フレームレートに同期して出力する画素信号に応じた、1フレーム分の画素データは、複数の記憶ブロック3730とは異なるメモリに記憶されてよく、また、複数の記憶ブロック3730に一端記憶された後に、高速フレームレートで動作する画素ブロック3712の次の画素データが複数の記憶ブロック3730に入力される前に、記憶ブロック3730の後段のメモリまたは回路に受け渡されてもよい。これにより、複数の記憶ブロックを効率よく使用することができる。
制御部3740は、高速フレームレートの画素ブロック3712に対応する記憶ブロック3734に既に画素データが記憶されている場合に、当該画素ブロック3712に対応する画素データを、画素データが記憶されていない記憶ブロック3731、732、または733のいずれかに記憶させる。つまり、制御部3740は、高速フレームレートの画素ブロック3712の画素データを、対応する記憶ブロック3734以外の、画素データが記憶されていない記憶ブロック3731、732、および733に振り分けられて記憶させる。このとき、振り分けられる画素データは、自己に対応する画素ブロック3712の画素領域3700における位置データ、および、自己の属するフレームを示すフレームデータを付加データとして有してよい。画素データが振り分けられるべき記憶ブロック3730の位置は、画素ブロック3712毎に固定されていてもよく、動的に変化してもよい。振り分けられるべき記憶ブロック3730の位置が、画素ブロック3131毎に固定されている場合には、付加データから位置データを省略することができる。
図64Cは、撮像素子3100の他の動作例を示す。なお、図64Cでは、図64Aに示した信号処理チップ3111の構成を省略している。本例も図64Bの例と同様に、画素ブロック3712の画素データを、対応する記憶ブロック3734以外の他の記憶ブロック3735〜3737のいずれかに記憶する。ただし本例では、画素ブロック3712と重なる領域におけるA/D変換器3412において画素信号を画素データに変換してから、当該画素データを記憶すべき記憶ブロックに伝送する。本例では、当該画素データは、各記憶ブロック間を移動する。
本例の制御部3740は、高速フレームレートの画素ブロック3712に対応する記憶ブロック3734に既に画素データが記憶されている場合に、記憶ブロック3734の画素データを、画素データが記憶されていない記憶ブロック3735、3736、3737、3738に移動させて、それぞれの記憶ブロックに記憶させる点で、図64Bに示す実施形態と異なる。つまり、本例では、記憶部3114は、記憶ブロック間でデータの送受信が可能となるように、記憶ブロック同士が配線により接続されている。
制御部3740は、記憶ブロック3734の画素データを、画素データが記憶されていない記憶ブロック3735、3736、3737、3738のいずれかに移動させて記憶させる。好ましくは、制御部3740は、画素領域3700の最外周の画素ブロック3131に対応する記憶ブロックに向かうように、記憶ブロック3734の画素データを移動させて記憶させてよい。フレームレートの高い画素ブロック3712から画素領域3700の外周方向に遠ざかるにしたがって画素ブロック3131のフレームレートが低くなる場合が比較的に多いので、制御部3740は、外周方向へ二次元的に画素データを分散させることが好ましい。こうすることにより、バッファメモリの容量を増加させずとも、複数の記憶ブロック3730を満遍なく利用することで、記憶部3114全体のメモリの容量を抑制することができる。なお、制御部3740は、各画素ブロック3131のフレームレート情報に基づいて、最外周以外の画素ブロック3131に対応する記憶ブロック3730を選択して、当該画素データを書き込んでもよい。
本例においても、画素データが分散されるべき記憶ブロックの位置は固定されていても、動的に変化してもよい。分散されるべき記憶ブロックの位置が固定されている場合には、移動する画素データに付加すべき付加データから位置データを省略することができる。この場合、画素データが分散されるべき記憶ブロックが、画素領域3700の最外周の画素ブロック3131に対応する記憶ブロックであることがより好ましい。また、それぞれの記憶ブロック3730が記憶した画素データは、高速フレームレートに同期して、順次移動されてもよい。これにより、画素データを、離間した記憶ブロック3730の間で伝送することができる。当該画素データの移動を繰り返すことで、任意の記憶ブロック3730に画素データを移動させることができる。
後述する演算回路3415は、記憶ブロック3730に格納された画素データを処理して後段の画像処理部に引き渡す。演算回路3415は、信号処理チップ3111に設けられても良いし、記憶部3114に設けられても良い。なお、図では1つの画素ブロック3131の分の接続を示すが、実際にはこれらが画素ブロック3131ごとに存在して、並列で動作する。ただし、演算回路3415は画素ブロック3131ごとに存在しなくても良く、例えば、一つの演算回路がそれぞれの画素ブロック3131に対応する記憶ブロック3730の値を順に参照しながらシーケンシャルに処理しても良い。
上記の通り、画素ブロック3131のそれぞれに対応して出力配線3309が設けられている。撮像素子3100は撮像チップ3113、信号処理チップ3111および記憶部3114を積層しているので、これら出力配線3309にバンプ3109を用いたチップ間の電気的接続を用いることにより、各チップを面方向に大きくすることなく配線を引き回すことができる。
なお、制御部3740には、各画素ブロック3131のフレームレートに関するレート情報が与えられる。制御部3740は、当該レート情報に基づいて、高速フレームレートの画素ブロック3131の画素データを記憶すべき記憶ブロック3730を選択する。例えば制御部3740は、基準フレームレートの画素ブロック3131に対応する記憶ブロック3730を、当該画素データを記憶すべき記憶ブロック3730とする。また、制御部3740は、当該レート情報に基づいて、図64Cに示した形態において、画素データを移動するルートを決定してよい。例えば制御部3740は、各記憶ブロック3730の画素データを移動させる場合に、当該記憶ブロック3730に隣接し、且つ、基準フレームレートに対応する記憶ブロック3730のうち、高速フレームレートに対応する記憶ブロック3730からの距離が増大する記憶ブロック3730を選択する。
図65は、本実施形態に係る撮像装置の構成を示すブロック図である。撮像装置3500は、撮影光学系としての撮影レンズ3520を備え、撮影レンズ3520は、光軸OAに沿って入射する被写体光束を撮像素子3100へ導く。撮影レンズ3520は、撮像装置3500に対して着脱できる交換式レンズであっても構わない。撮像装置3500は、撮像素子3100、システム制御部3501、駆動部3502、測光部3503、ワークメモリ3504、記録部3505、および表示部3506を主に備える。
撮影レンズ3520は、複数の光学レンズ群から構成され、シーンからの被写体光束をその焦点面近傍に結像させる。なお、図61では瞳近傍に配置された仮想的な1枚のレンズで当該撮影レンズ3520を代表して表している。駆動部3502は、システム制御部3501からの指示に従って撮像素子3100のタイミング制御、領域制御等の電荷蓄積制御を実行する制御回路である。この意味において駆動部3502は、撮像素子3100に対して電荷蓄積を実行させて画素信号を出力させる撮像素子制御部の機能を担うと言える。
撮像素子3100は、画素信号をシステム制御部3501の画像処理部3511へ引き渡す。画像処理部3511は、ワークメモリ3504をワークスペースとして種々の画像処理を施し、画像データを生成する。例えば、JPEGファイル形式の画像データを生成する場合は、ベイヤー配列で得られた信号からカラー映像信号を生成した後に圧縮処理を実行する。生成された画像データは、記録部3505に記録されるとともに、表示信号に変換されて予め設定された時間の間、表示部3506に表示される。
測光部3503は、画像データを生成する一連の撮影シーケンスに先立ち、シーンの輝度分布を検出する。測光部3503は、例えば100万画素程度のAEセンサを含む。システム制御部3501の演算部3512は、測光部3503の出力を受けてシーンの領域ごとの輝度を算出する。演算部3512は、算出した輝度分布に従ってシャッタ速度、絞り値、ISO感度を決定する。測光部3503は撮像素子3100で兼用してもよい。なお、演算部3512は、撮像装置3500を動作させるための各種演算も実行する。
駆動部3502は、一部または全部が撮像チップ3113に搭載されてもよいし、一部または全部が信号処理チップ3111に搭載されてもよい。システム制御部3501の一部が撮像チップ3113または信号処理チップ3111に搭載されてもよい。
図66は、画像処理部の機能ブロック図である。本例の画像処理部3511は、基準フレームレートで動作する画素ブロック3131(後述する周辺領域3176)と、高速フレームレートで動作する画素ブロック3131(後述する注目領域3172)とを抽出する。画像処理部3511は、上記の機能に加えて、被写体推定部3150、グループ選択部3152、動画生成部3154および動画合成部3156を有する。これらの各機能は、後述する。
図67は、撮像装置が動画を生成して記録する動作を示すフローチャートである。図68および図69は撮像素子により撮像される画像の一例を示す。図70は各フレームレートと画像信号の出力タイミングとの関係を示す。
図67の動作は、ユーザが録画ボタンの押下等により、撮像装置3500に対して動画の生成を指示したときに開始する。まず、被写体推定部3150は、駆動部3502を駆動して撮像素子3100からの画像信号に基づく画像データを取得し、当該画像データが示す画像に含まれる主要被写体を推定する(S3100)。
この場合に、駆動部3502は撮像領域全体に含まれる画素ブロック3131、例えばすべての画素ブロック3131から画像信号を出力させることが好ましい。また、駆動部3502は各画素ブロック3131に含まれるすべての画素から画像信号を出力させてもよいし、予め定められた間引き率で間引いた画素から画像信号を出力させてもよい。被写体推定部3150は、撮像素子3100から時系列的に得られた複数の画像を比較して、移動している被写体を主要被写体として特定する。なお、主要被写体の推定には、他の方法が用いられてもよい。
例えば、被写体推定部3150は、撮像素子3100から時間的に前後する画像として図68の画像3170および図69の画像3178を取得した場合に、これらの差分から子供を主要被写体3171として特定する。なお、画像3170および画像3178における格子線は画素ブロック3131の境界を示すが、画素ブロック3131の数は例示であってこれらの図に示す数に限られない。
グループ選択部3152は、被写体推定部3150により推定された主要被写体3171の像光が入射している画素ブロック3131を少なくとも一つ選択する(S3102)。例えば、画像3170において、主要被写体3171を少なくとも一部含んでいる画素ブロック3131が選択される。さらに、主要被写体3171が撮像領域内で移動することを考慮して、グループ選択部3152は、主要被写体3171を少なくとも一部含んでいる画素ブロック3131のさらに周囲の画素ブロック3131も選択することが好ましい。
グループ選択部3152は、これら選択した画素ブロック3131の集合を注目領域3172とする。さらにグループ選択部3152は、撮像領域全体において注目領域3172にふくまれない画素ブロック3131からなる集合を周辺領域3176とする。グループ選択部3152は、撮像領域の全体に対する注目領域3172の範囲を示す領域情報3174を特定する。
図68に示す例において、注目領域3172は、横7個、縦4個の計28個の画素ブロック3131からなる矩形の領域である。これに対し、周辺領域3176は、撮像領域である横21個、縦6個の計126個から注目領域3172を除いた98個の画素ブロック3131からなる。また、領域情報3174として、撮像領域における注目領域3172の図中の左上端の画素ブロック3131の左からおよび上から数えた位置(9,2)が特定される。さらにサイズ情報として、注目領域3172の縦横数7×4が特定される。
グループ選択部3152が、注目領域3172に含まれる画素ブロック3131を特定する情報と周辺領域3176とを特定する情報とを駆動部3502に伝達する。この場合に、注目領域3172と周辺領域3176とにそれぞれ適用するフレームレートの情報を併せて伝達する。ここで、注目領域3172に適用するフレームレートは、周辺領域3176に適用するフレームレートより高いことが好ましい。例えば、周辺領域3176に適用するフレームレートが60fpsである場合に、注目領域3172に適用するフレームレートは180fpsに設定される。これらのフレームレートの値は予め設定されて、グループ選択部3152が参照可能に格納されていることが好ましいが、ユーザが後から値を変更できるようになっていてもよい。
駆動部3502は、撮像素子3100を駆動して各フレームレートで撮像を行う(S3104)。すなわち、駆動部3502は、注目領域3172に含まれる画素ブロック3131に対しては、高いフレームレートで電荷蓄積および画像信号の出力を実行させ、周辺領域3176に含まれる画素ブロック3131に対しては、低いフレームレートで電荷蓄積および画像信号の出力を実行させる。言い換えれば、駆動部3502は、周辺領域3176に含まれる画素ブロック3131に対して1つのフレームに対応する画像信号を得る間に、注目領域3172に含まれる画素ブロック3131に対して時系列的に並んだ複数のフレームに対応する画像信号を得る。
例えば、周辺領域3176のフレームレートが60fpsであって、注目領域3172のフレームレートが180fpsに設定されている場合に、図70に示すように、駆動部3502は、周辺領域3176から1つのフレームB1の画像信号を得る時間1/60sまでの間に、注目領域3172から3つのフレームA1,A2,A3の画像信号を得る(1/60s=3×1/180s)。この場合に、駆動部3502は、周辺領域3176に含まれる画素ブロック3131のリセットトランジスタ3303、転送トランジスタ3302および選択トランジスタ3305の組と、注目領域3172に含まれる画素ブロック3131のリセットトランジスタ3303、転送トランジスタ3302および選択トランジスタ3305の組とを別個に駆動することにより、異なるフレームレートで画像信号を得る。
なお、図70は画像信号の出力のタイミングを示しているが、露光時間の長さまでも示しているものではない。駆動部3502は予め演算部3512で算出された露光時間となるように、周辺領域3176と注目領域3172とに対して、上記トランジスタの組を駆動する。
これに加えて、露光時間の長さをフレームレートに応じて変化させてもよい。例えば図70に示す例において、周辺領域3176の1フレームの露光時間を1/3倍にしておき、注目領域3172と実質的に同じ露光時間としてもよい。また、画像信号の出力後にフレームレートの比で当該画像信号を補正してもよい。また、周辺領域3176と注目領域3172との間で画像信号の出力のタイミングが図70のように同期していなくても、非同期であってもよい。
画像処理部3511は、注目領域3172からの画像信号をワークメモリ3504の予め定められた記憶領域に、フレームごとに順次、記憶する(S3106)。同様に、画像処理部3511は、周辺領域3176からの画像信号をワークメモリ3504の予め定められた記憶領域に、フレームごとに順次、記憶する(同ステップ)。ワークメモリ3504は、図64Aから図64Cにおいて説明したように、複数の記憶ブロック3730を有する。ワークメモリ3504は、それぞれの画素ブロック3131に対応するメモリ群からなるメモリであってよい。
動画生成部3154は、ワークメモリ3504に記憶された注目領域3172の画像信号を読み出して(S3108)、注目領域3172の複数のフレームが含まれる注目領域動画のデータを生成する(S3110)。同様に、動画生成部3154は、ワークメモリ3504に記憶された周辺領域3176の画像信号を読み出して、周辺領域3176の複数のフレームが含まれる周辺領域動画のデータを生成する(同ステップ)。ここで、注目領域動画および周辺領域動画はそれぞれ、MPEGのような汎用のフォーマットで生成されてそれぞれ別個に再生できるようになっていてもよいし、後述する合成処理を経なければ再生できない専用のフォーマットで生成されてもよい。
図71は、動画生成部により生成された注目領域動画および周辺領域動画を模式的に示す。動画生成部3154は、駆動部3502が注目領域3172を駆動したフレームレートに対応したフレームレートで、注目領域動画を生成する。図71に示す例において、駆動部3502が注目領域3172を駆動したフレームレート1/180fpsと同一のフレームレート1/180fpsで、注目領域動画が生成される。
同様に、動画生成部3154は、駆動部3502が周辺領域3176を駆動したフレームレートに対応したフレームレートで、周辺領域動画を生成する。図71に示す例において、駆動部3502が周辺領域3176を駆動したフレームレート1/60fpsと同一のフレームレート1/60fpsで、周辺領域動画が生成される。なお、周辺領域動画において注目領域3172に対応する領域には有効な値が存在せず、図中は斜線で示した。
さらに動画生成部3154は注目領域動画および周辺領域動画にヘッダ情報を付加して、これらのデータを記録部3505に記録する(S3112)。ヘッダ情報は、撮像領域の全体に対する注目領域3172の位置を示す領域情報、注目領域3172の大きさを示すサイズ情報および、注目領域3172の画像信号の出力タイミングと周辺領域3176の画像信号の出力タイミングとの関係を示すタイミング情報を含む。
システム制御部3501は次の単位時間の撮像を行うか否かを判断する(S3114)。次の単位時間の撮像を行うか否かは、その時点でユーザから動画の記録ボタンが押下されているか否かで判断される。次の単位時間の撮像を行う場合は(S3114:Yes)、上記ステップS3102に戻り、次の単位時間の撮像を行わない場合は(S3114:No)、当該動作を終了する。
ここで「単位時間」は予めシステム制御部3501に設定されている時間であって、数秒程度である。この単位時間、注目領域3172のフレームレートおよび画素ブロック数、並びに、周辺領域3176のフレームレートおよび画素ブロック数によって、ステップS3106において記憶に用いられる記憶容量が決まる。またこれらの情報に基づいて、当該記憶容量において注目領域3172のデータを記憶する領域と、周辺領域3176のデータを記憶する領域とが定められる。
以上により、主要被写体3171が含まれる注目領域3172からは高いフレームレートで画像信号を得ることができるとともに、周辺領域3176を低いフレームレートで抑えることでデータ量を減らすことができる。よって、全画素からの高速読出しに比べて、駆動および画像処理の負荷を減らし、消費電力および発熱を抑えることができる。
なお、図67に示す例において次の単位時間が開始されるときに、ステップS3102で改めて画素ブロック3131が選択され、領域情報およびサイズ情報が更新される。これにより、主要被写体3171に追従して注目領域3172を逐次、更新することができる。図71に示す例においては、注目領域動画における単位時間の最初のフレームA7において、以前の単位時間の最後のフレームA6とは異なる画素ブロック3131からなる注目領域3182が選択されるとともに、これに伴って領域情報3184および周辺領域3186も更新されている。
図72は、動画生成部が付加するヘッダ情報の一例を示す。図72のヘッダ情報は、注目領域動画を特定する注目領域動画ID、注目領域動画のフレームレート、当該注目領域動画に対応する周辺領域動画を特定する周辺領域動画ID、周辺領域動画のフレームレート、タイミング情報、領域情報およびサイズ情報を含む。これらのヘッダ情報は、注目領域動画および周辺領域動画のいずれか一方にヘッダ情報として付加されていてもよいし、両方に付加されていてもよい。
図73は、撮像装置が動画を再生して表示する動作を示すフローチャートである。当該動作は、表示部3506にサムネイル表示された注目領域動画のいずれかをユーザが特定して再生ボタンを押下したことにより開始する。
動画合成部3156は、ユーザにより特定された注目領域動画のデータを記録部3505から読み出す(S3150)。動画合成部3156は、当該注目領域動画に対応する周辺領域動画のデータを記録部3505から読み出す(S3152)。
この場合に、動画合成部3156は、ステップS150で読み出した注目領域動画のヘッダ情報に示されている周辺領域動画IDにより周辺領域動画を特定する。これに代えて、ヘッダ情報に示されているタイミング情報と同一のタイミング情報をヘッダ情報として含む周辺領域画像が検索されて特定されてもよい。
なお、上記の例では注目領域動画にヘッダ情報が含まれるとしている。一方、注目領域動画にヘッダ情報が含まれずに周辺領域動画にヘッダ情報が含まれている場合には、先にステップS150においてユーザに周辺領域動画を特定させて読出し、そのヘッダ情報からステップS152において注目領域動画を特定して読み出してもよい。
動画合成部3156は、注目領域動画のフレームと周辺領域動画のフレームとを用いて、表示動画のフレームを合成する(S3154)。この場合にまず、注目領域動画の先頭のフレームA1が、周辺領域動画の先頭のフレームB1における領域情報3174が示す位置に嵌め込まれることにより、表示動画の先頭のフレームC1が合成される。動画合成部3156は、図71に示すように、表示動画の先頭のフレームC1を表示部3506に表示させる(S3156)。
動画合成部3156は、周辺領域動画における次のフレームB2までの間に注目領域動画の次のフレームがあるか否かを判断する(S3158)。動画合成部3156は、注目領域動画の次のフレームがある場合に(S3158:Yes)、注目領域3172を次のフレームA2、A3で更新しかつ周辺領域3176を前のフレームB1に保持することにより(S3162)、表示動画の次のフレームC2、C3を合成して(S162)、順次、表示する(S3156)。
一方、ステップS3158において周辺領域動画における次のフレームB2までの間に注目領域動画の次のフレームがない場合に(S3158)、動画合成部3156は、注目領域3172を次のフレームA4で更新しかつ周辺領域3176も次のフレームB2で更新することにより(S3164)、表示動画の次のフレームC4を合成して(S3162)、表示する(S3156)。
周辺領域動画において周辺領域3176の次フレームがある限り(S3160:Yes)、ステップS154からS3160が繰り返される。周辺領域動画において周辺領域3176の次フレームがない場合に(S3160:No)、動画合成部3156は、当該注目領域動画と周辺領域動画との組の単位時間の次の単位時間における注目領域動画と周辺領域動画との組があるか否かを検索する(S3166)。例えば、動画合成部3156は、記録部3505の同一フォルダ内において、当該注目領域動画のタイミング情報が示すタイミングの直後を示すタイミング情報がヘッダ情報に含まれた注目領域動画があるか否かを検索する。
次の単位時間における注目領域動画と周辺領域動画との組がある限り(S3166:Yes)、ステップS150からS3166が繰り返される。次の単位時間における注目領域動画と周辺領域動画との組がない場合に(S3166:No)、当該動作を終了する。
以上によれば、全体のデータ量を減らしつつ、主要被写体3171が含まれる注目領域3172について滑らかな動画を表示することができる。なお、ステップS162においては、注目領域3172がそのまま次のフレームで更新されて表示画像のフレームが合成されているが、合成の方法はこれに限られない。他の例として、注目領域3172における主要被写体3171の境界線が画像処理により特定され、当該境界線で囲まれた主要被写体3171については次のフレームに更新するとともに、注目領域3172内であっても主要被写体3171の境界線外側については前のフレームを維持して、周辺領域3176のフレームと合成されてもよい。すなわち、注目領域3172における境界線外側については周辺領域3176のフレームレートに落としてもよい。これにより表示動画における滑らかさの境界が不自然に見えることを防ぐことができる。また、再生のフレームレートは、撮影時のフレームレート(注目領域は180fps、周辺領域は60fps)と同じである必要はなく、例えば注目領域を60fps、周辺領域を20fpsなどとしてもよい。その場合はスローモーション再生となる。
図74は、撮像素子3100の画素領域3700の構成およびその動作例の平面図を示す。なお、図74から図77においては、画素領域3700における各画素ブロック3131と、記憶部3114における各記憶ブロック3730とを同一平面上に投影した図を示す。それぞれの画素ブロック3131は、画素領域3700の全体に渡って行列方向に一定間隔で離間して配置される。画素ブロック3131は、m×nの画素を有し、n、mは2以上である。画素ブロック3131は、マトリクス状に配置された32×64の画素によって構成されてよい。本例において、それぞれの記憶ブロック3730は、それぞれの画素ブロック3131毎に設けられたメモリである。つまり、それぞれの画素ブロック3131は、1対1で対応する記憶ブロック3730を有している。それぞれの記憶ブロック3730は、信号処理チップ3111において、対応する画素ブロック3131と重なる領域内に設けられる。
それぞれの画素ブロック3131は、画素領域3700内で一定間隔で離間して分布する複数の画素ブロック3131毎にグループ化されている。グループ内の画素ブロック3131に対応する記憶ブロック3730は、グループ内の画素ブロック3131に共有される。共有とは、複数の画素ブロック3131の画素データが、その記憶ブロック3730に直接または間接に読み書き可能であることを指す。1つのグループ内の画素ブロック3131間の距離が最大となるように、画素領域3700に含まれる全ての画素ブロック3131をグループ化することが好ましい。また、画素ブロック3131のグループは、撮像チップ3113における画素領域3700の最外周に位置する複数の画素ブロック3131を含むのがより好ましい。この場合、制御部3740は、当該最外周に位置する複数の画素ブロック3131を、高速フレームレートよりも低いフレームレート(本例では、基準フレームレート)に固定して制御する。
ここで、画素ブロック3131の位置を座標(x、y)で表す。本例のでは、位置(4,4)、(4,1)(1,4)、(1,1)に設けられた4つの画素ブロック3131がグループ化されている。他の画素ブロック3131も同様に、一定間隔で離間した画素ブロック3131毎にグループ化されている。
グループ内の画素ブロック3131に対応するそれぞれの記憶ブロック3730は、グループ内の全ての画素ブロック3131によって共有される。これにより、高速フレームレートの画素ブロック3131の画素データを、グループ内の基準フレームレートの画素ブロック3131に対応する記憶ブロック3730に記憶することができる。本例では、斜線で示す位置(4,4)の高速フレームレートの画素ブロック3131の画素データは、位置(4,4)、(4,1)(1,4)、(1,1)の画素ブロック3131に対応する記憶ブロック3730のうち、基準フレームレートの記憶ブロック3730に順番に記憶される。
つまり、制御部3740は、高速フレームレートの画素ブロック3131に対応する記憶ブロック3730に既に画素データが記憶されている場合に、画素ブロック3131に対応する画素データを、当該画素ブロック3131と同一グループ内のいずれかの記憶ブロック3730に記憶させる。ここで、図68において示したように、注目領域3172は、連続して配置された画素ブロック3131により形成される。したがって、画素領域3700内で一定間隔で離間して分布する複数の画素ブロック3131毎にグループ化することで、グループ内に高速フレームレートの画素ブロック3131と、基準フレームレートの画素ブロック3131とが混在する確率を高めることができる。こうすることで、記憶ブロック3730のメモリ容量を増やすことなく、メモリの使用効率を向上させることができる。また、記憶ブロック3730を共有するグループが固定されているので、各記憶ブロック3730が記憶した画素データが、いずれの画素ブロック3131に対応するかを示す付加データを、低減または省略することができる。
図75は、図74に示す撮像素子3100の他の構成の一例の平面図である。本例の撮像素子3100は、画素領域3700の外側にあって、行方向および列方向のそれぞれの一辺に沿って設けられた記憶部3810を、記憶部3114に代えて備える点で図74に記載の実施形態と異なる。なお、記憶部3810は、その物理的な位置の他は、記憶部3114と同一であってよい。
本例の記憶部3810は、行方向および列方向において、画素領域3700の最外周の画素ブロック3131と重なる領域に対向して設けられる複数の記憶領域3812によって構成される。それぞれの記憶領域3812は、2×2の記憶ブロック3730によって構成されてよい。それぞれの記憶ブロック3730は、グループ毎に設けられたメモリにおける記憶領域3812である。制御部3740は、グループ化した画素ブロック3131のそれぞれの位置、フレームレート、タイミングに関する情報に基づいて、アドレス情報を生成し、記憶ブロック3730に順次画素データを書き込む。
本例では、グループ化された画素ブロック3131に対応する記憶ブロック3730が2×2の記憶領域3812を構成している。つまり、グループ化された画素ブロック3131に対応する記憶ブロック3730が隣接して一カ所にまとめられているので、記憶ブロック3730が画素ブロック3131と重複する領域ごとに設けられる場合のように離れた記憶ブロック3730同士を配線を介して接続する必要がない。したがって、RC遅延による画素データの書き込み/読み出しに要する時間が少なくてすむ。また、次段の演算回路に画素データを入力するとき、記憶領域3812に対して1本のバスを設ければよい。さらに、画素ブロック3131に重複する領域ごとに記憶ブロックを設ける場合に比べ、画素データの書き込み/読み出しに必要な回路構成を単純化することができる。
図76は、図74に示す撮像素子3100の他の動作例を示す平面図である。本例では、隣接する画素ブロック3131に対応する記憶ブロック3730の間で画素データを伝送する伝送路3710をさらに備える点で図74に示す実施形態と異なる。伝送路3710は、各記憶ブロック3730同士を接続する配線であってよい。伝送路3710は、制御部3740と、すべての記憶ブロック3730を接続する。制御部3740は、高速フレームレートの画素ブロック3131に対応する画素データを、高速フレームレートに同期して、隣接する記憶ブロック3730に順次移動させる。ここで、高速フレームレートに同期してとは、フレームレートの高い画素ブロック3131が画素データを取り込むタイミングと同じタイミングで隣接する複数の記憶ブロック3730に画素データを順次記憶させることを指す。
ここで、位置(4,4)の画素ブロック3131のフレームレートが、基準フレームレートの5倍である場合を例にとって説明する。基準フレームレートを60fpsとすると、高速フレームレートは300fpsとなる。高速フレームレートでの撮像タイミングは、時刻t=0のときのタイミングをT0、時刻t=1/300sのときのタイミングをT1、時刻t=2/300sのときのタイミングをT2、時刻t=3/300sのときのタイミングをT3、時刻t=4/300sのときのタイミングをT4、時刻t=5/300sのときのタイミングをT5とする。
制御部3740は、T0のタイミングですべての画素ブロック3131にそれぞれ対応する記憶ブロック3730に撮像した被写体の画素データを記憶させる。つぎに、制御部3740は、T1のタイミングで、フレームレートがより低く、且つ隣接する、位置(3,4)の記憶ブロック3730に記憶されている画素データを外周方向の位置(2,4)の記憶ブロック3730に移動させ、空き状態となった位置(3,4)の記憶ブロック3730に位置(4,4)の画素ブロック3131に対応する記憶ブロック3730に記憶された画素データを移動して記憶させる。同時に、制御部3740は、T1のタイミングで取得した位置(4,4)の画素ブロック3131の画素データを対応する位置(4,4)の記憶ブロック3730に記憶させる。
制御部3740は、T2のタイミングで、位置(4,3)の記憶ブロック3730に記憶された画素データを外周方向の位置(4,2)の記憶ブロック3730に移動して記憶させ、空き状態となった位置(4,3)の記憶ブロック3730に位置(4,4)の画素ブロック3131に対応する記憶ブロック3730の画素データを移動して記憶させる。同時に、制御部3740は、T2のタイミングで取得した位置(4,4)の画素ブロック3131の画素データを対応する位置(4,4)の記憶ブロック3730に記憶させる。
制御部3740は、T3のタイミングで、位置(5,4)の記憶ブロック3730に記憶された画素データを外周方向の位置(6,4)の記憶ブロック3730に移動して記憶させ、空き状態となった位置(5,4)の記憶ブロック3730に位置(4,4)の画素ブロック3131に対応する記憶ブロック3730の画素データを移動して記憶させる。同時に、制御部3740は、T3のタイミングで取得した位置(4,4)の画素ブロック3131の画素データを対応する位置(4,4)の記憶ブロック3730に記憶させる。
制御部3740は、T4のタイミングで、位置(4,5)の記憶ブロック3730に記憶された画素データを外周方向の位置(4,6)の記憶ブロック3730に移動して記憶させ、空き状態となった位置(4,5)の記憶ブロック3730に位置(4,4)の画素ブロック3131に対応する記憶ブロック3730の画素データを移動して記憶させる。同時に、制御部3740は、T4のタイミングで取得した位置(4,4)の画素ブロック3131の画素データを対応する位置(4,4)の記憶ブロック3730に記憶させる。このとき、位置(4,4)の画素ブロック3131に対応する位置(4,4)の記憶ブロック3730、および、当該記憶ブロック3730を二次元的に包囲する位置(3,4)、(4,3)、(5,4)、(4,5)の記憶ブロック3730にT0からT4までのタイミングの画素データが記憶される。
制御部3740は、位置(3,4)、(4,3)、(5,4)、(4,5)の記憶ブロック3730に記憶させたそれぞれの画素データを、隣接する記憶ブロック3730のうち、画素領域3700のエッジに最も近い記憶ブロック3730に移動させてもよい。つまり、制御部3740は、位置(3,4)、(4,3)、(5,4)、(4,5)の記憶ブロック3730に記憶させたそれぞれの画素データを、画素領域3700のエッジにあたる、位置(1,4)、(4,1)、(6,4)、(4,6)の記憶ブロック3730に移動させて記憶させてもよい。
制御部3740は、T5のタイミングで、画素領域3700のすべての記憶ブロック3730に記憶された画素データを、バスラインを通じて後段のメモリまたは演算回路に受け渡す。制御部3740は、フレームのサイクルを更新し、上述したタイミングT0からT4までの動作を繰り返す。
制御部3740は、複数の画素ブロック3131のうち、画素領域3700の最外周に沿った画素ブロック3131のフレームレートを、基準フレームレートに固定する。ところで、高速フレームレートの画素ブロック3131が画素領域3700のエッジにあると、隣接する記憶ブロック3730が限られるので、二次元的に画素データを分散させにくい。したがって、制御部3740は、高速フレームレートの画素ブロック3131が画素領域3700の最外周とならないようにする。たとえば、制御部3740は、画素領域3700の最外周の画素ブロック3131のフレームレートを、基準フレームレートに固定する。
制御部3740は、同時に、すべての画素ブロック3131のそれぞれに対応する記憶ブロック3730に新たな画素データを書き込んで、後段の演算処理回路へ画素ブロック3131ごとの画素データをまとめて送信する。このように、制御部3740は、画素領域3700のエッジに近い方向へ高速フレームレートの画素ブロック3131の画素データを、隣接する画素ブロック3131に対応する記憶ブロック3730に順次移動させることにより、記憶ブロック3730を複数の画素ブロック3131で共有することができるので、メモリ容量を低減することができる。隣接する複数の記憶ブロック3730に振り分けられる画素データは、ヘッダ情報として、自己に対応する画素ブロック3131の画素領域3700における位置データ、および、自己の属するフレームを示すフレームデータを付加データとして有してよい。
本例において、制御部3740は、高速フレームレートの画素ブロック3131の画素データを隣接する画素ブロック3131に対応する記憶ブロック3730へ順次移動して記憶させたが、ひとつ置きの記憶ブロック3730に画素データを移動してもよく、行列方向ではなく対角方向の記憶ブロック3730に画素データを移動して記憶させてもよい。制御部3740は、各画素ブロック3131のフレームレート情報に基づいて、画素データを移動するべき記憶ブロック3730を選択してよい。
図77は、撮像素子3100の他の構成例を示す平面図である。本例では、図76に示した撮像素子3100と同様に、隣接する画素ブロック3131に対応する記憶ブロック3730の間で画素データを伝送する。ただし、本例の撮像素子3100は、図75に示した撮像素子3100と同様に、信号処理チップ3111において画素領域3700に重なる領域の外側に設けられた記憶部3810を備える。記憶部3810は、行方向における画素ブロック3131の数(本例では6個)で分割された記憶領域3820および列方向における画素ブロック3131の数(本例では6個)で分割された記憶領域3822を有する。制御部3740は、高速フレームレートの画素ブロック3131に対応する画素データを、高速フレームレートに同期して、所定の記憶領域3820、3822に記憶させる。
制御部3740は、フレームレートの低い最外周の画素ブロック3131に対応づけられた記憶領域3820、3822に、位置(4,4)の高速フレームレートの画素ブロック3131の画素データを、フレームレートに同期して書き込んでよい。なお、制御部3740は、各画素ブロック3131のフレームレート情報に基づいて、最外周以外の画素ブロック3131に対応づけられた記憶領域3820、3822を選択して、当該画素データを書き込んでもよい。記憶領域3820、3822は、高速フレームレートの画素ブロック3131の画素データおよび低速フレームレートの画素ブロック3131の画素データによって共有される。本例では、記憶領域3820、3822ごとに書き込み/読み出しを行えばよく、画素ブロック3131ごとに設けられた記憶ブロック3730ごとに書き込み/読み出しを行う必要がないので回路構成を単純化できる。また、本例の記憶部3810内の記憶領域3820、3822のそれぞれのメモリ空間の大きさは等しい。さらに、記憶領域3820、3822のメモリ空間の位置は、記憶部3810内で固定されていてもよく、動的に変化してもよい。
図78は、他の実施形態にかかる撮像素子3100の一部の構成および動作を示す。本例では、記憶部3114が多層構造のバッファメモリにより構成される点で上述した実施形態と異なる。本例の記憶部3114は、一時メモリ3850および転送メモリ3860を含む。一時メモリ3850は、各画素ブロック3131に対応する記憶ブロック3830を有し、高速データレートの画素ブロック3712の画素データの制御に使用されるメモリである。転送メモリ3860は、一時メモリ3850から入力される画素データを受け取り、次段のメモリまたは演算回路へ画素データを転送する。転送メモリ3860は、複数の記憶ブロック3730における総記憶領域に対して、少なくとも同一の大きさの記憶領域を有する。ここで、総記憶領域とは、一時メモリ3850が有するメモリ空間の大きさを指す。本例の一時メモリ3850は、図76に示した記憶ブロック3730と同一の機能および構成を有する。
ここで、画素ブロック3712のフレームレートが、基準フレームレートの5倍である場合を例にとって説明する。基準フレームレートを60fpsとすると、高速フレームレートは300fpsとなる。高速フレームレートでの撮像タイミングは、時刻t=0のときのタイミングをT0、時刻t=1/300sのときのタイミングをT1、時刻t=2/300sのときのタイミングをT2、時刻t=3/300sのときのタイミングをT3、時刻t=4/300sのときのタイミングをT4、時刻t=5/300sのときのタイミングをT5とする。
制御部3740は、T0のタイミングで撮像した被写体のすべての画素データを、すべての画素ブロック3131にそれぞれ対応する記憶ブロック3830に記憶させる。制御部3740は、記憶した画素データを、T1より前のタイミングで転送メモリ3860に転送する。つまり、制御部3740は、T0のタイミングで撮像した被写体のすべての画素データを、高速フレームレートで動作する画素ブロック3712から次の画素データが入力される前に、転送メモリ3860の対応する記憶領域3870にコピーして記憶させる。
制御部3740は、高速フレームレートに同期したT1のタイミングで、高速フレームレートの画素ブロック3712からバス3720を介して一時メモリ3850の対応する記憶ブロック3853に画素データを記憶させる。制御部3740は、記憶ブロック3853に記憶された画素データを、隣接する記憶ブロック3854に、T2のタイミング、または、T2より前のタイミングで移動し記憶させる。制御部3740は、T2のタイミングで、高速フレームレートに同期して、画素ブロック3712からバス3720を介して一時メモリ3850の対応する記憶ブロック3853に画素データを記憶させる。
制御部3740は、記憶ブロック3853に記憶された画素データを、隣接する記憶ブロック3855に、T3のタイミング、または、T3より前のタイミングで移動し記憶させる。制御部3740は、T3のタイミングで、高速フレームレートに同期して、画素ブロック3712からバス3720を介して一時メモリ3850の対応する記憶ブロック3853に画素データを記憶させる。制御部3740は、記憶ブロック3853に記憶された画素データを、隣接する記憶ブロック3856に、T4のタイミング、または、T4より前のタイミングで移動し記憶させる。制御部3740は、T4のタイミングで、高速フレームレートに同期して、画素ブロック3712からバス3720を介して一時メモリ3850の対応する記憶ブロック3853に画素データを記憶させる。
制御部3740は、一時メモリ3850の記憶ブロック3854、3855、3856、3857に記憶された画素データを、T5のタイミングまたはT5より前のタイミングで、バス3840を介して、転送メモリ3860の対応する記憶領域3864、3865、3866、3867に記憶させる。つまり、一時メモリ3850は、高速フレームレートのうち、基準タイミングの直前の高速フレームレートにおける画素データを受け取った後、次の基準タイミングにおける画素データが受け取るまでの間に、画素データを転送メモリ3860に転送する。
なお、制御部3740は、記憶ブロック3853に隣接する記憶ブロック3854、3855、3856、3857に記憶させた画素データを、隣接する他の記憶ブロックに、高速フレームレートに同期して更に移動させてよい。制御部3740は、転送メモリ3860に記憶したすべての画素データを、後段のメモリまたは演算回路に転送する。
本実施形態によれば、高速フレームレートの画素ブロック3712に対応する記憶ブロック3853と、当該記憶ブロック3853に隣接するそれぞれの記憶ブロック3854、3855、3856、3857とを伝送路3710により接続すればよいので、すべての記憶ブロックを伝送路3710で接続する必要がない。したがって、画素データの移動を高速に行うことができる。また、一時メモリ3850として、SRAMなどのキャッシュメモリを使用することができるので読み出し/書き込みを高速に行うことができる。さらに、一時メモリ3850においては、記憶ブロック3830は共有されないので、書き込み/読み出しに必要な回路構成を単純化することができる。さらに、転送メモリ3860において、共有される記憶領域は、高速フレームレートの画素ブロック3712に対応する記憶領域3863に隣接する記憶領域のみとなる。よって、転送メモリ3860において、記憶領域3863同士を接続する配線は不要である。また、一時メモリ3850が、図76に示した記憶ブロック3730の構成を有する場合を例として説明したが、一時メモリ3850は、図74から図77のいずれの記憶ブロック3730の構成であってもよい。
図79は、撮像装置が動画を生成して記録する他の動作の例を示すフローチャートである。図79において図67と同一の動作については同一の参照番号を付して説明を省略する。
図79の動作において、注目領域3172と周辺領域3176とで、図67のフレームレートに代えて、または、加えて間引き率を異ならせている。より詳しくは、ステップS3120において、駆動部3502は、注目領域3172に含まれる画素ブロック3131に対しては、低い間引き率で間引いた画素に対して電荷蓄積および画像信号の出力を実行させ、周辺領域3176に含まれる画素ブロック3131に対しては、高い間引き率で間引いた画素に対して電荷蓄積および画像信号の出力を実行させる。例えば注目領域3172に含まれる画素ブロック3131に対して間引き率0すなわち全画素が読み出され、周辺領域3176に含まれる画素ブロック3131に対して間引き率0.5すなわち半分画素が読み出される。
この場合に、駆動部3502は、周辺領域3176に含まれる画素ブロック3131のリセットトランジスタ3303、転送トランジスタ3302および選択トランジスタ3305の組と、注目領域3172に含まれる画素ブロック3131のリセットトランジスタ3303、転送トランジスタ3302および選択トランジスタ3305の組とを別個に駆動することにより、異なる間引き率で画像信号を得る。
ステップS3110において、動画生成部3154は、低い間引き率で出力された注目領域3172の画像信号に基づき、注目領域3172に対応する注目領域動画を生成する。動画生成部3154は、同様に、高い間引き率で出力された周辺領域3176の画像信号に基づき、周辺領域3176に対応する周辺領域動画を生成する。またステップS3112において、動画生成部3154は、それぞれの間引き率の情報を付加して注目領域動画および周辺領域動画を記録部3505に記録する。
図80は、一の画素ブロックに対して間引き率0.5で読み出される画素3188の例を示す。図80に示す例において、周辺領域3176の画素ブロック3132がベイヤー配列である場合に垂直方向についてベイヤー配列の単位の一つ置き、すなわち、画素単位でみた場合の二行づつ交互に、読み出される画素3188と読み出されない画素が設定される。これにより色バランスを崩すことなく間引き読出しをすることができる。
図81は、図79に対応した、撮像装置が動画を再生して表示する動作を示すフローチャートである。図81において図73と同一の動作については同一の参照番号を付して説明を省略する。
図81のステップS3170において、動画合成部3156は、周辺領域動画のフレームの画素を補完して解像度を注目領域動画のフレームの解像度と整合させてから、注目領域動画のフレームを周辺領域動画のフレームに嵌め込むことにより、表示画像のフレームを合成する。これにより、主要被写体3171が含まれる注目領域3172からは高い解像度で画像信号を得ることができるとともに、周辺領域3176を低い解像度で抑えることでデータ量を減らすことができる。よって、全画素からの高速読出しに比べて、駆動および画像処理の負荷を減らし、消費電力および発熱を抑えることができる。
なお、図61から図81に示す例において、注目領域3172は矩形であるが注目領域3172の形状はこれに限られない。注目領域3172は画素ブロック3131の境界線に沿っていれば凸の多角形、凹の多角形、または、中に周辺領域3176が入り込んだドーナツ形状等であってもよい。また、注目領域3172は互いに離間して複数個設定されてもよい。その場合に、互いの注目領域3172で異なるフレームレートが設定されてもよい。
また、注目領域3172および周辺領域3176のフレームレートは可変であってもよい。例えば、単位時間が経過するごとに主要被写体3171の移動量を検出して、主要被写体3171の移動量が大きいほど注目領域3172により高いフレームレートを設定してもよい。また、単位時間内で随時、主要被写体3171に追従して注目領域3172に含まれるべき画素ブロック3131の選択を更新してもよい。
図67および図79の動画の生成はユーザの録画ボタンの押下により開始し、図73および図81の動画の再生はユーザの再生ボタンの押下により開始しているが、開始時点はこれに限られない。他の例として、ユーザからの一つのボタン操作によって、動画の生成の動作と再生の動作とを連続して実行させて、表示部3506にスルー画表示(またはライブビュー表示ともいう)してもよい。この場合に、注目領域3172をユーザに認識させる表示が重畳されてもよい。例えば、表示部3506において注目領域3172の境界線に枠を表示したり、周辺領域3176の輝度を下げるか注目領域3172の輝度を上げるかしてもよい。
図79の動作において、注目領域3172と周辺領域3176とで間引き率を異ならせている。間引き率を異ならせることに代えて、隣接行の画素の画素信号を加算するときの行数を異ならせてもよい。例えば、注目領域3172においては行数が1、すなわち、隣接行で加算せずに画素信号を出力し、周辺領域3176においては注目領域3172よりも多い行数、例えば行数を2として、隣接する2行の同じ列の画素の画素信号を出力する。これにより、図79と同様に、周辺領域3176よりも注目領域3172の解像度を高く維持しつつ、全体の信号量を減らすことができる。
なお、動画合成部3156は撮像装置3500の画像処理部3511に設けられていることに代えて、外部の表示装置、例えばPCに設けられてもよい。また、動画を生成する場合に限られず、静止画を生成する場合に上記実施形態が適用されてもよい。
また、上記実施形態はいずれも複数の画素ブロック3131を、注目領域3172と周辺領域3176との2つに分けているが、これに限られず3つ以上の領域に分けてもよい。この場合に、注目領域3172と周辺領域3176との境界に該当する画素ブロック3131を境界領域として、当該境界領域には、注目領域3172に用いられる制御パラメータの値と周辺領域3176に用いられる制御パラメータの値との中間の値が用いられて制御されてもよい。これにより、注目領域3172と周辺領域3176との境界が不自然に見えることを防ぐことができる。
注目領域3172と周辺領域3176とで電荷の蓄積時間、蓄積回数等を異ならせてもよい。この場合に注目領域3172と周辺領域3176とを輝度に基づいて分けてもよく、さらに中間領域を設けてもよい。
図82Aおよび図82Bは、シーンの例と領域分割を説明する図である。図82Aは、撮像チップ3113の画素領域が捉えるシーンを示す。具体的には、屋内環境に含まれるシャドウ被写体3601および中間被写体3602と、窓枠3604の内側に観察される屋外環境のハイライト被写体3603とが同時に写り込むシーンである。このような、ハイライト部からシャドウ部までの明暗差が大きなシーンを撮影する場合、従来の撮像素子であれば、ハイライト部を基準として電荷蓄積を実行するとシャドウ部で黒潰れが生じ、シャドウ部を基準として電荷蓄積を実行するとハイライト部で白飛びが生じた。すなわち、ハイライト部もシャドウ部も一律に一度の電荷蓄積により画像信号を出力させるには、明暗差の大きなシーンに対してフォトダイオードのダイナミックレンジが不足していると言える。そこで、本実施形態においては、シーンをハイライト部、シャドウ部といった部分領域に分割して、それぞれの領域に対応するフォトダイオードの電荷蓄積回数を互いに異ならせることにより、ダイナミックレンジの実質的な拡大を図る。
図82Bは、撮像チップ3113の画素領域における領域分割を示す。演算部3512は、測光部3503が捉えた図82Aのシーンを解析して、輝度を基準に画素領域を分割する。例えば、システム制御部3501は、測光部3503に露光時間を変更しつつ複数回のシーン取得を実行させ、演算部3512は、その白飛び領域、黒潰れ領域の分布の変化を参照して画素領域の分割ラインを決定する。図82Bの例においては、演算部3512は、シャドウ領域3611、中間領域3612、およびハイライト領域3613の3領域に分割している。
分割ラインは、画素ブロック3131の境界に沿って定義される。すなわち、分割された各領域は、整数個のグループをそれぞれ含む。そして、同一の領域に包含される各グループの画素は、演算部3512によって決定されたシャッタ速度に対応する期間内において、同一回数の電荷蓄積および画素信号出力を行う。属する領域が異なれば、異なる回数の電荷蓄積および画素信号出力を行う。
図83は、図82Aおよび図82Bの例による分割された領域ごとの電荷蓄積制御を説明する図である。演算部3512は、ユーザから撮影準備指示を受けると、測光部3503の出力からシャッタ速度T0を決定する。さらに、上述のようにシャドウ領域3611、中間領域3612およびハイライト領域3613に分割して、それぞれの輝度情報から電荷蓄積回数を決定する。電荷蓄積回数は、1回あたりの電荷蓄積により画素が飽和しないように決定される。例えば、1回の電荷蓄積動作において蓄積可能な8割から9割の電荷が蓄積されることを基準として、電荷蓄積回数が決定される。
ここでは、シャドウ領域3611を1回とする。すなわち、決定されたシャッタ速度T0と電荷蓄積時間を一致させる。また、中間領域3612の電荷蓄積回数を2回とする。すなわち、1回の電荷蓄積時間をT0/2として、シャッタ速度T0の間に2回の電荷蓄積を繰り返させる。また、ハイライト領域3613の電荷蓄積回数を4回とする。すなわち、1回の電荷蓄積時間をT0/4として、シャッタ速度T0の間に4回の電荷蓄積を繰り返させる。
ユーザから撮影指示を時刻t=0で受けると、駆動部3502は、いずれの領域に属するグループの画素に対しても、リセットパルスと転送パルスを印加する。この印加をトリガーとして、いずれの画素も電荷蓄積を開始する。
時刻t=T0/4となったら、駆動部3502は、ハイライト領域3613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線3309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部3502は、ハイライト領域3613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、2回目の電荷蓄積を開始させる。
なお、画素信号の選択出力には時間を要するので、1回目の電荷蓄積の終了と2回目の電荷蓄積の開始の間には時間差が生じる。この時間差が実質的に無視し得るのであれば、上述のように、シャッタ速度T0に対して電荷蓄積回数で割った時間を1回の電荷蓄積時間とすれば良い。一方、無視し得ないのであれば、その時間を考慮して、シャッタ速度T0を調整したり、1回の電荷蓄積時間をシャッタ速度T0に対して電荷蓄積回数で割った時間よりも短くしたりすれば良い。
時刻t=T0/2となったら、駆動部3502は、中間領域3612とハイライト領域3613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線3309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部3502は、中間領域3612とハイライト領域3613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、中間領域3612に対しては2回目の、ハイライト領域3613に対しては3回目の電荷蓄積を開始させる。
時刻t=3T0/4となったら、駆動部3502は、ハイライト領域3613に属するグループの画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線3309に出力させる。グループ内の全ての画素の画素信号を出力させたら、駆動部3502は、ハイライト領域3613に属するグループの画素に対して再びリセットパルスと転送パルスを印加して、4回目の電荷蓄積を開始させる。
時刻t=T0となったら、駆動部3502は、全領域の画素に対して転送パルスを印加する。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線3309に出力させる。以上の制御により、シャドウ領域3611に対応する画素メモリ3414にはそれぞれ1回分の画素信号が格納され、中間領域3612に対応する画素メモリ3414にはそれぞれ2回分の画素信号が格納され、ハイライト領域3613に対応する画素メモリ3414にはそれぞれ4回分の画素信号が格納される。
なお、駆動部3502は、いずれの領域に属するグループの画素に対して、リセットパルスおよび転送パルスを順次印加し、それぞれの領域に属するグループの画素を順次リセットしてもよい。この印加をトリガーとして、それぞれのグループの画素が電荷蓄積を順次開始してよい。すべての領域に属するグループの画素に対して電荷蓄積が終了後に、駆動部3502は、全領域の画素に対して転送パルスを印加してよい。そして、各グループ内の画素に対して順次選択パルスを印加して、それぞれの画素信号を出力配線3309に出力させてよい。
これらの画素信号は、順次、画像処理部3511へ転送される。画像処理部3511は、この画素信号から高ダイナミックレンジの画像データを生成する。具体的な処理については後述する。
図84は、積算回数とダイナミックレンジの関係を示す図である。繰り返し実行された電荷蓄積に対応する複数回分の画素データは、画像処理部3511により積算処理されて、高ダイナミックレンジの画像データの一部を形成する。
積算回数が1回、すなわち電荷蓄積を1回行った領域のダイナミックレンジを基準とした場合、積算回数が2回、すなわち電荷蓄積を2回行って出力信号を積算した領域のダイナミックレンジの拡大分は1段分となる。同様に、積算回数を4回にすれば2段分となり、128回にすれば7段分となる。すなわち、n段分のダイナミックレンジ拡大を図るには、2n回の出力信号を積算すれば良い。
ここで、画像処理部3511がいずれの分割領域が何回の電荷蓄積を行ったかを識別するために、積算回数を示す3bitの指数桁が画像信号に付与されている。図示するように、指数桁は、積算数1回に対して000、2回に対して001、…128回に対して111のように順に割り当てられる。
画像処理部3511は、演算回路3415から受け取った各画素データの指数桁を参照して、参照した結果が2回以上の積算数である場合には、画素データの積算処理を実行する。例えば、積算回数が2回の場合(1段)は、2個の画素データに対して、電荷蓄積に対応する12bitの画素データのうち上位11bit同士を加算して、12bitの1つの画素データを生成する。同様に、積算回数が128回(7段)の場合は、128個の画素データに対して、電荷蓄積に対応する12bitの画素データのうち上位5bit同士を加算して、12bitの1つの画素データを生成する。すなわち、積算回数に対応する段数を12から引いた上位bitを互いに足し合わせて、12bitの1つの画素データを生成する。なお、加算の対象とならない下位bitは除去される。
このように処理することにより、階調を与える輝度範囲を積算回数に合わせて高輝度側にシフトさせることができる。すなわち、高輝度側の限られた範囲に対して12bitが割り当てられることになる。したがって、従来白飛びしていた画像領域に対して階調を与えることができる。
ただし、他の分割領域については異なる輝度範囲に対して12bitを割り当てているので、単純に領域ごとに繋ぎ合わせる合成により画像データを生成することができない。そこで、画像処理部3511は、得られた階調をできる限り維持しつつ全領域を12bitの画像データとするために、最大輝度画素と最低輝度画素を基準として、再量子化処理を行う。具体的には、階調がより滑らかに維持されるように、ガンマ変換を施して量子化を実行する。このように処理することにより、高ダイナミックレンジの画像データを得ることができる。
なお、積算回数は、上記のように3bitの指数桁が画素データに付与されている場合に限らず、画素データとは別の付随情報として記述されていても良い。また、画素データから指数桁を省き、代わりに画素メモリ3414に格納されている画素データの数をカウントすることにより、加算処理時に積算回数を取得しても良い。
また、上記の画像処理においては、全領域を12bitの画像データに収める再量子化処理を実行したが、画素データのbit数に対し、上限の積算回数に合わせて出力bit数を増やしても良い。例えば、上限の積算回数を16回(4段)と定めれば、12bitの画素データに対して、全領域を16bitの画像データとすれば良い。このように処理すれば、桁落ちさせずに画像データを生成することができる。
次に、一連の撮影動作処理について説明する。図85は、撮影動作の処理を示すフロー図である。フローは、撮像装置3500の電源がONにされて開始される。
システム制御部3501は、ステップS3201で、撮影準備指示であるスイッチSW1の押し下げがなされるまで待機する。スイッチSW1の押し下げを検知したらステップS3202へ進む。
ステップS3202では、システム制御部3501は、測光処理を実行する。具体的には、測光部3503の出力を得て、演算部3512がシーンの輝度分布を算出する。そして、ステップS3203へ進み、上述のように、シャッタ速度、領域分割、積算回数等を決定する。
撮影準備動作が完了したら、ステップS3204へ進み、撮影指示であるスイッチSW2の押し下げがなされるまで待機する。このとき、経過時間が予め定められた時間Twを超えたら(ステップS3205のYES)、ステップS3201へ戻る。Twを超える前に(ステップS3205のNO)スイッチSW2の押し下げを検知したら、ステップS3206へ進む。
ステップS3206では、システム制御部3501の指示を受けた駆動部3502が、図83を用いて説明した電荷蓄積処理、信号読み出し処理を実行する。そして、全ての信号読み出しが完了したらステップS3207へ進み、図84を用いて説明した画像処理を実行し、生成された画像データを記録部に記録する記録処理を実行する。
記録処理が完了したらステップS3208へ進み、撮像装置3500の電源がOFFにされたか否かを判断する。電源がOFFにされなければステップS3201へ戻り、OFFにされたら一連の撮影動作処理を終了する。
図86は、信号処理チップ3111の一例としての具体的構成を示すブロック図である。図中、破線により囲まれた領域は、画素ブロック3131ごとに設けられる画素データ処理部3910を示す。
信号処理チップ3111は、駆動部3502の機能を担う。信号処理チップ3111は、分担化された制御機能としてのセンサ制御部3441、ブロック制御部3442、同期制御部3443、信号制御部3444と、これらの各制御部を統括制御する駆動制御部3420とを含む。駆動制御部3420は、システム制御部3501からの指示を、各制御部が実行可能な制御信号に変換してそれぞれに引き渡す。
センサ制御部3441は、撮像チップ3113へ送出する、各画素の電荷蓄積、電荷読み出しに関わる制御パルスの送出制御を担う。具体的には、センサ制御部3441は、対象画素に対してリセットパルスと転送パルスを送出することにより、電荷蓄積の開始と終了を制御し、読み出し画素に対して選択パルスを送出することにより、画素信号を出力配線3309へ出力させる。
ブロック制御部3442は、撮像チップ3113へ送出する、制御対象となる画素ブロック3131を特定する特定パルスの送出を実行する。図82B等を用いて説明したように、分割された領域には、互いに隣接する複数の画素ブロック3131が包含され得る。これら同一の領域に属する画素ブロック3131は、ひとつのブロックを形成する。同一のブロックに含まれる画素は、同一のタイミングで電荷蓄積を開始し、同一のタイミングで電荷蓄積を終了する。そこで、ブロック制御部3442は、駆動制御部3420からの指定に基づいて対象となる画素ブロック3131に特定パルスを送出することにより、画素ブロック3131をブロック化する役割を担う。各画素がTX配線3307およびリセット配線3306を介して受ける転送パルスおよびリセットパルスは、センサ制御部3441が送出する各パルスとブロック制御部3442が送出する特定パルスの論理積となる。
このように、各領域を互いに独立したブロックとして制御することにより、図83を用いて説明した電荷蓄積制御を実現する。駆動制御部からのブロック化指定については、後に詳述する。なお、同一のブロックに含まれる画素は、同一のタイミングで電荷蓄積を開始しなくともよい。つまり駆動制御部3420は、同一のブロックに含まれる画素に対して、異なるタイミングでリセットパルスおよび転送パルスを印加してよい。また、駆動制御部3420は、同一のブロックに含まれる画素の電荷蓄積を同一蓄積時間で終了させた後、ブロック内の画素に対して順次選択パルスを印加して、それぞれの画素信号を順次読み出してもよい。
同期制御部3443は、同期信号を撮像チップ3113へ送出する。各パルスは、同期信号に同期して撮像チップ3113においてアクティブとなる。例えば、同期信号を調整することにより、同一の画素ブロック3131に属する画素の特定画素のみを制御対象とするランダム制御、間引き制御等を実現する。
信号制御部3444は、主にA/D変換器3412に対するタイミング制御を担う。出力配線3309を介して出力された画素信号は、CDS回路3410およびマルチプレクサ3411を経てA/D変換器3412に入力される。A/D変換器3412は、信号制御部3444によって制御されて、入力された画素信号をデジタルの画素データに変換する。デジタル信号に変換された画素データは、デマルチプレクサ3413に引き渡され、そしてそれぞれの画素に対応する画素メモリ3414にデジタルデータの画素値として格納される。画素メモリ3414は、記憶ブロック3730の一例である。
信号処理チップ3111は、いずれの画素ブロック3131を組み合わせてブロックを形成するかについてのブロック区分情報と、形成されたそれぞれのブロックが何回の電荷蓄積を繰り返すかについての蓄積回数情報とを格納する、蓄積制御メモリとしてのタイミングメモリ3430を有する。タイミングメモリ3430は、例えばフラッシュRAMによって構成される。
上述のように、いずれの画素ブロック3131を組み合わせてブロックを形成するかについては、一連の撮影シーケンスに先立って実行されるシーンの輝度分布検出の検出結果に基づいて、システム制御部3501により決定される。決定されたブロックは、例えば第1ブロック、第2ブロック…のように区分され、それぞれのブロックがいずれの画素ブロック3131を包含するかにより規定される。駆動制御部3420は、このブロック区分情報をシステム制御部3501から受け取り、タイミングメモリ3430へ格納する。
また、システム制御部3501は、輝度分布の検出結果に基づいて、各ブロックが何回の電荷蓄積を繰り返すかを決定する。駆動制御部3420は、この蓄積回数情報をシステム制御部3501から受け取り、対応するブロック区分情報と対でタイミングメモリ3430へ格納する。このようにタイミングメモリ3430へブロック区分情報と蓄積回数情報を格納することにより、駆動制御部3420は、一連の電荷蓄積制御を、タイミングメモリ3430を逐次参照して独立して実行し得る。すなわち、駆動制御部3420は、1枚の画像取得制御において撮影指示の信号をシステム制御部3501から一旦受け取ると、その後は各画素の制御についてその都度システム制御部3501から指示を受けること無く、蓄積制御を完了させることができる。
駆動制御部3420は、撮影準備指示に同期して実行される測光結果(輝度分布の検出結果)に基づいて更新されるブロック区分情報と蓄積回数情報をシステム制御部3501から受け取って、タイミングメモリ3430の記憶内容を適宜更新する。例えば、駆動制御部3420は、撮影準備指示または撮影指示に同期して、タイミングメモリ3430を更新する。このように構成することにより、より高速な電荷蓄積制御を実現すると共に、駆動制御部3420が電荷蓄積制御を実行している間に、システム制御部3501は他の処理を並行して実行し得る。
駆動制御部3420は、撮像チップ3113に対する電荷蓄積制御を実行するに留まらず、読み出し制御の実行においてもタイミングメモリ3430を参照する。例えば、駆動制御部3420は、各ブロックの蓄積回数情報を参照して、デマルチプレクサ3413から出力される画素データを画素メモリ3414の対応アドレスに格納する。
駆動制御部3420は、システム制御部3501からの引渡要求に従って、画素ブロックごとの対象画素データを画素メモリ3414から読み出し、画像処理部3511へ引き渡す。このとき、駆動制御部3420は、それぞれの対象画素データに対応する付加データを合わせて画像処理部3511へ引き渡す。画素メモリ3414は、上述の通り、各画素ブロックに対して最大積算回数に対応する画素データを格納できるメモリ空間を有し、実行された蓄積回数に対応するそれぞれの画素データを画素値として格納する。例えば、あるブロックにおいて4回の電荷蓄積が繰り返された場合には、当該ブロックに含まれる画素は4回分の画素信号を出力するので、画素メモリ3414上の各画素のメモリ空間には、4つの画素値が格納される。駆動制御部3420は、特定画素の画素データを要求する引渡要求をシステム制御部3501から受けた場合には、画素メモリ3414上の当該特定画素のアドレスを指定して、格納されている全ての画素データを読み出し、画像処理部3511へ引き渡す。例えば4つの画素値が格納されている場合には、その4つの画素値全てを順次引き渡し、1つの画素値のみが格納されている場合には、その画素値を引き渡す。
駆動制御部3420は、画素メモリ3414に格納された画素データを、演算回路3415に読み出して、演算回路3415に上述の積算処理を実行させることができる。積算処理された画素データは、画素メモリ3414の対象画素アドレスに格納される。対象画素アドレスは、積算処理前のアドレス空間に隣接して設けても良いし、積算処理前の画素データに対して上書きするように同一アドレスとしても良い。また、積算処理後の各画素の画素値を纏めて格納する専用空間を設けても良い。駆動制御部3420は、特定画素の画素データを要求する引渡要求をシステム制御部3501から受けた場合には、その引渡要求の態様によっては、積算処理後の画素データを画像処理部3511へ引き渡すことができる。もちろん、積算処理前後の画素データを共に引き渡すこともできる。
画素メモリ3414には、引渡要求に従って画素データを伝送するデータ転送インタフェースが設けられている。データ転送インタフェースは、画像処理部3511と繋がるデータ転送ラインと接続されている。データ転送ライン3920は例えばシリアルバスによって構成される。この場合、システム制御部3501から駆動制御部3420への引渡要求は、アドレスバスを利用したアドレス指定によって実行される。
データ転送インタフェースによる画素データの伝送は、アドレス指定方式に限らず、さまざまな方式を採用しうる。例えば、データ転送を行うときに、各回路の同期に用いられるクロック信号の立ち上がり・立ち下がりの両方を利用して処理を行うダブルデータレート方式を採用し得る。また、アドレス指定などの手順を一部省略することによってデータを一気に転送し、高速化を図るバースト転送方式を採用し得る。また、制御部、メモリ部、入出力部を並列に接続している回線を用いたバス方式、直列にデータを1ビットずつ転送するシリアル方式などを組み合わせて採用することもできる。
このように構成することにより、画像処理部3511は、必要な画素データに限って受け取ることができるので、特に低解像度の画像を形成する場合などにおいて、高速に画像処理を完了させることができる。また、演算回路3415に積算処理を実行させる場合には、画像処理部3511が積算処理を実行しなくて良いので、機能分担と並行処理により、画像処理の高速化を図ることができる。
図86の信号処理チップ3111を用いて、注目領域3172と周辺領域3176とで異なる制御パラメータを用いて画素データ取得後に画像処理してもよい。例えば、図67から図70では、注目領域3172と周辺領域3176とで異なるフレームレートで取得した画像から動画を生成しているが、これに代えて、高いフレームレートで取得した画像を平均化する画像処理をしてS/N比を向上させてもよい。この場合に、例えば駆動制御部3420により周辺領域3176から1回の画素信号を得る間に、注目領域3172から複数回、例えば4回の画素信号を得て、画素データを画素メモリ3414に格納する。演算回路3415は、画素メモリ3414から注目領域3172の各画素に対して得られた複数の画素データを読み出して、画素ごとに平均する。これにより、注目領域3172の各画素でのランダムノイズが減って、注目領域3172のS/N比を向上させることができる。
なお、データ転送ライン3920には、メモリ930が接続されてよい。メモリ930は、画素メモリ3414から画素データを指定されたアドレスに順次格納する揮発性メモリであってよい。たとえば、メモリ930は、DRAMである。画素メモリ3414から、メモリ930への画素データの転送レートは、基準フレームレートと同じかそれよりも遅くともよい。メモリ930は、画素メモリ3414から、画像処理部3511へのデータ伝送のバッファとして機能する。つまり、メモリ930は、複数の画素メモリ3414からのデータ転送レートが、画像処理部3511におけるデータ処理レートよりも早い場合に、画素メモリ3414が出力する画素データの少なくとも一部をバッファする。例えばメモリ930は、画素メモリ3414から、基準フレームレートごとの画素データと、高速フレームレートで動作する画素ブロック3131の画素データとを格納する。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。