<第1の実施形態>
以下、本発明の実施形態について、図面を参照して説明する。図1は、本第1の実施形態における撮像装置の概略構成を示したブロック図である。図1に示した撮像装置10は、イメージセンサ100と、撮像処理部200と、画像処理部300と、表示処理部400と、表示デバイス401と、DRAM(Dynamic Random Access Memory)コントローラ500と、DRAM501と、CPU600と、を備えている。
撮像装置10内の撮像処理部200と、画像処理部300と、表示処理部400と、DRAMコントローラ500と、CPU600とは、データバス700を介してそれぞれ接続され、例えば、DMA(Direct Memory Access)によってDRAMコントローラ500に接続されたDRAM501からのデータの読み出し、およびDRAM501へのデータの書き込みを行う。
図1に示した撮像装置10は、図10に示した従来の撮像装置と同様の構成要素を備えている。ただし、撮像装置10では、撮像処理部200の構成が、従来の撮像装置に備えた撮像処理部の構成と異なる。図1には、従来の撮像装置と異なる構成の撮像処理部200に注目し、その撮像処理部200の概略構成も併せて示している。
撮像装置10に備えた撮像処理部200は、撮像IF(インターフェース)部210と、前処理部220と、セレクタ230と、AE評価値生成部231と、セレクタ240と、AWB評価値生成部241と、セレクタ250と、AF評価値生成部251と、セレクタ260と、出力DMA(Direct Memory Access)部261と、入力DMA部270と、を備えている。
イメージセンサ100は、図示しないズームレンズによって結像された被写体の光学像を光電変換するCCD(Charge Copled Device:電荷結合素子)イメージセンサや、CMOS(Complementary Metal−Oxide Semiconductor:相補型金属酸化膜半導体)イメージセンサに代表されるイメージセンサである。
イメージセンサ100には、例えば、ベイヤー配列のカラーフィルタが、撮像面に貼付されている。イメージセンサ100は、被写体光に応じた各色(例えば、R,Gr,Gb,B)の画素信号を、撮像処理部200に出力する。なお、イメージセンサ100の構成や動作は、例えば、図10に示した従来の撮像装置に備えたイメージセンサの構成や動作と同様であるため、詳細な説明は省略する。
撮像処理部200は、イメージセンサ100から入力された画素信号に各種の処理を施し、撮像装置10における撮影に関する制御(AE、AWB、およびAFの制御)を行うための評価値を生成する。また、撮像処理部200は、イメージセンサ100から入力された画素信号に応じた画像データ(以下、「撮像画像」ともいう)を、DRAMコントローラ500を介してDRAM501に格納する(記憶する)。
また、撮像処理部200は、DRAM501に格納されている画像データ(撮像画像)を、DRAMコントローラ500を介して取得し(読み出し)、取得した画像データに基づいて、撮像装置10における撮影に関する制御(AE、AWB、およびAFの制御)を行うための評価値を生成する。
また、撮像処理部200は、イメージセンサ100から入力された画素信号に応じた画像データ(現在のフレームの撮像画像)と、DRAMコントローラ500を介して取得した(読み出した)画像データ(以前のフレームの撮像画像)とを合成し、合成した画像データに基づいて、撮像装置10における撮影に関する制御(AE、AWB、およびAFの制御)を行うための評価値を生成する。また、撮像処理部200は、合成した画像データを、DRAMコントローラ500を介してDRAM501に格納する(記憶する)。
撮像IF部210は、イメージセンサ100から入力された画素信号を取り込み、取り込んだ画素信号を画像データ(現在のフレームの撮像画像)として前処理部220に出力する。撮像IF部210は、画像データを前処理部220に出力する際、イメージセンサ100から入力された各色の画素信号のデータを、以降の処理に使用する画素の色の順番に並べ替える、並べ替え処理などを行う。また、撮像IF部210は、イメージセンサ100が差動インターフェースによって画素信号を出力するイメージセンサである場合には、例えば、LVDS(Low voltage differential signaling)の終端の処理なども行う。なお、撮像IF部210の構成や動作は、例えば、図10に示した従来の撮像装置に備えた撮像IF部の構成や動作と同様であるため、詳細な説明は省略する。
前処理部220は、撮像IF部210から入力された画像データに対して、キズ補正やシェーディング補正などの様々な前処理を施し、処理した結果の画像データ(以下、「前処理画像データ」という)を、セレクタ230と、セレクタ240と、セレクタ250と、セレクタ260とのそれぞれに出力する。
また、前処理部220は、入力DMA部270から入力された画像データを予め定めた時間だけ遅らせた画像データ(以下、「遅延画像データ」という)を、セレクタ230と、セレクタ240と、セレクタ250と、セレクタ260とのそれぞれに出力する。
また、前処理部220は、前処理画像データと遅延画像データとを合成し、合成した画像データ(以下、「合成画像データ」という)を、セレクタ230と、セレクタ240と、セレクタ250と、セレクタ260とのそれぞれに出力する。
図1に示したように、前処理部220は、セレクタ221と、3つの処理部222a〜222cと、3つのディレイ部223a〜223cと、合成部224と、を備えている。図1には、図10に示した従来の撮像装置に備えた前処理部と同様に、それぞれの処理を順次行う3つの処理部222a〜222cを備えた前処理部220の一例を示している。
セレクタ221は、撮像IF部210から入力された画像データ(現在のフレームの撮像画像)、および入力DMA部270から入力された画像データ(以前のフレームの撮像画像)の出力先を選択する。より具体的には、セレクタ221は、撮像IF部210から入力された画像データを、処理部222aまたはディレイ部223aのいずれか一方に出力する。また、セレクタ221は、入力DMA部270から入力された画像データを、処理部222aまたはディレイ部223aのいずれか一方に出力する。
処理部222a〜222cのそれぞれは、入力された画像データに対して、予め定められたそれぞれの処理(補正処理)を行う。例えば、処理部222aは、入力された画像データに対して、キズ補正の処理を行う。また、例えば、処理部222bは、処理部222aから入力されたキズ補正処理後の画像データに対して、シェーディング補正の処理を行う。
このようにして、処理部222a〜222cのそれぞれは、入力された画像データに対して、予め定められた処理(補正処理)を順次行う。そして、処理部222cが処理(補正処理)した後の画像データを、前処理画像データとして、セレクタ230と、セレクタ240と、セレクタ250と、セレクタ260とのそれぞれに出力する。また、前処理画像データは、合成部224にも出力される。なお、処理部222a〜222cのそれぞれの構成や動作は、例えば、図10に示した従来の撮像装置に備えた3つの処理部の構成や動作と同様であるため、詳細な説明は省略する。
ディレイ部223a〜223cのそれぞれは、処理部222a〜222cのそれぞれに対応し、入力された画像データを、処理部222a〜222cのそれぞれの入力から出力までの遅延時間と同じ時間だけ遅らせて出力する。例えば、ディレイ部223aは、入力された画像データを、処理部222aのキズ補正の処理によって遅れる遅延時間(処理時間)と同じ時間だけ遅らせて出力する。また、例えば、ディレイ部223bは、ディレイ部223aによって遅らされた画像データを、処理部222bのシェーディング補正の処理によって遅れる遅延時間(処理時間)と同じ時間だけ遅らせて出力する。
このようにして、ディレイ部223a〜223cのそれぞれは、入力された画像データを、対応する処理部の遅延時間(処理時間)と同じ時間だけ順次遅らせて出力する。そして、ディレイ部223cが遅らせた後の画像データを、遅延画像データとして、セレクタ230と、セレクタ240と、セレクタ250と、セレクタ260とのそれぞれに出力する。また、遅延画像データは、合成部224にも出力される。
合成部224は、入力された前処理画像データと遅延画像データとを合成した合成画像データを生成する。合成部224が合成画像データを生成する際、合成部224は、入力された前処理画像データと遅延画像データとに対して、例えば、加算処理、減算処理、重み付け加算処理、加算平均処理などの合成処理を施して合成画像データを生成する。そして、合成部224は、生成した合成画像データを、セレクタ230と、セレクタ240と、セレクタ250と、セレクタ260とのそれぞれに出力する。
セレクタ230は、前処理部220から入力された前処理画像データ、遅延画像データ、または合成画像データのいずれか1つの画像データを選択し、選択した画像データを、AE評価値を生成するための画像データとしてAE評価値生成部231に出力する。
AE評価値生成部231は、セレクタ230から入力された画像データに基づいて、撮像装置10の露出を制御するためのAE評価値を演算(生成)する。イメージセンサ100がベイヤー配列のイメージセンサである場合には、AE評価値生成部231は、セレクタ230から入力された画像データを色(R,Gr,Gb,B)毎に積算したそれぞれのAE評価値を生成する。そして、AE評価値生成部231は、生成したAE評価値を、DRAMコントローラ500を介してDRAM501に格納する。なお、AE評価値生成部231の構成や動作は、例えば、図10に示した従来の撮像装置に備えたAE評価値生成部の構成や動作と同様であるため、詳細な説明は省略する。
なお、AE評価値生成部231は、生成したAE評価値をDRAM501に格納せず、生成したAE評価値を、AE評価値生成部231内のレジスタに保持する構成であってもよい。この場合には、CPU600は、AE評価値生成部231からAE評価値の生成が完了したことを表す通知を受け取った後に、AE評価値生成部231内のレジスタに保持しているAE評価値を読み出し、読み出したAE評価値を用いて、撮像装置10におけるAEの制御を行う。
セレクタ240は、前処理部220から入力された前処理画像データ、遅延画像データ、または合成画像データのいずれか1つの画像データを選択し、選択した画像データを、AWB評価値を生成するための画像データとしてAWB評価値生成部241に出力する。
AWB評価値生成部241は、セレクタ240から入力された画像データに基づいて、撮像装置10のホワイトバランスを制御するためのAWB評価値を演算(生成)する。イメージセンサ100がベイヤー配列のイメージセンサである場合には、AWB評価値生成部241は、セレクタ240から入力された各色(R,Gr,Gb,B)の画像データから、白(ホワイト)のレベルを調整するためのAWB評価値を生成する。そして、AWB評価値生成部241は、生成したAWB評価値を、DRAMコントローラ500を介してDRAM501に格納する。なお、AWB評価値生成部241の構成や動作は、例えば、図10に示した従来の撮像装置に備えたAWB評価値生成部の構成や動作と同様であるため、詳細な説明は省略する。
なお、AWB評価値生成部241は、生成したAWB評価値をDRAM501に格納せず、生成したAWB評価値を、AWB評価値生成部241内のレジスタに保持する構成であってもよい。この場合には、CPU600は、AWB評価値生成部241からAWB評価値の生成が完了したことを表す通知を受け取った後に、AWB評価値生成部241内のレジスタに保持しているAWB評価値を読み出し、読み出したAWB評価値を用いて、撮像装置10におけるAWBの制御を行う。
セレクタ250は、前処理部220から入力された前処理画像データ、遅延画像データ、または合成画像データのいずれか1つの画像データを選択し、選択した画像データを、AF評価値を生成するための画像データとしてAF評価値生成部251に出力する。
AF評価値生成部251は、セレクタ250から入力された画像データに基づいて、撮像装置10の焦点を制御するためのAF評価値を演算(生成)する。イメージセンサ100がベイヤー配列のイメージセンサである場合には、AF評価値生成部251は、セレクタ250から入力された各色(R,Gr,Gb,B)の画像データから、輝度信号(Y信号)を生成し、生成したY信号に基づいてAF評価値を生成する。そして、AF評価値生成部251は、生成したAF評価値を、DRAMコントローラ500を介してDRAM501に格納する。なお、AF評価値生成部251の構成や動作は、例えば、図10に示した従来の撮像装置に備えたAF評価値生成部の構成や動作と同様であるため、詳細な説明は省略する。
なお、AF評価値生成部251は、生成したAF評価値をDRAM501に格納せず、生成したAF評価値を、AF評価値生成部251内のレジスタに保持する構成であってもよい。この場合には、CPU600は、AF評価値生成部251からAF評価値の生成が完了したことを表す通知を受け取った後に、AF評価値生成部251内のレジスタに保持しているAF評価値を読み出し、読み出したAF評価値を用いて、撮像装置10におけるAFの制御を行う。
セレクタ260は、前処理部220から入力された前処理画像データ、遅延画像データ、または合成画像データのいずれか1つの画像データを選択し、選択した画像データを、画像処理部300または表示処理部400が処理する元の画像データとして出力DMA部261に出力する。
出力DMA部261は、セレクタ260から入力された画像データを、DMAによって、DRAMコントローラ500を介してDRAM501に格納する。イメージセンサ100がベイヤー配列のイメージセンサである場合には、ベイヤー配列の画像データが、画像処理部300または表示処理部400が処理する画像データ(ベイヤーデータ)として、DRAM501に格納される。なお、出力DMA部261の構成や動作は、例えば、図10に示した従来の撮像装置に備えた出力DMA部の構成や動作と同様であるため、詳細な説明は省略する。
入力DMA部270は、DMAによって、DRAM501に格納されている画像データ(以前のフレームの撮像画像)を、DRAMコントローラ500を介して取得し(読み出し)、取得した画像データを前処理部220に出力する。なお、入力DMA部270が取得する画像データは、出力DMA部261によって格納された画像データのみではなく、例えば、画像処理部300によって画像処理された後にDRAM501に格納された画像データでもよい。
画像処理部300は、DRAM501に格納されている画像データを取得し(読み出し)、取得した画像データに、ノイズ除去、YC変換処理、リサイズ処理、JPEG圧縮処理、およびMPEG圧縮処理やH.264圧縮処理等の動画圧縮処理などの各種の画像処理を施して、記録用の画像データを生成する。そして、画像処理部300は、生成した記録用の画像データを、再びDRAM501に格納する(書き込む)。
また、画像処理部300は、DRAM501に格納されている記録用の画像データを取得し(読み出し)、JPEG伸張処理、MPEG伸張処理やH.264伸張処理等の動画伸張処理などの各種の画像処理を施した画像データを生成する。そして、画像処理部300は、生成した画像データを、再びDRAM501に格納する(書き込む)。なお、画像処理部300の構成や動作は、例えば、図10に示した従来の撮像装置に備えた画像処理部の構成や動作と同様であるため、詳細な説明は省略する。
表示処理部400は、DRAM501に格納されている画像データを取得し(読み出し)、取得した画像データに、表示デバイス401が表示することができる画像の大きさへのリサイズ(縮小)する表示用の画像処理や、OSD(On−Screen Display)表示用のデータを重畳する処理などの表示処理を施して、表示用の画像データ(以下、「表示画像」ともいう)を生成する。そして、表示処理部400は、生成した表示用の画像データ(表示画像)を、表示デバイス401や図示しない外部ディスプレイに出力する。なお、表示処理部400の構成や動作は、例えば、図10に示した従来の撮像装置に備えた表示処理部の構成や動作と同様であるため、詳細な説明は省略する。
なお、表示処理部400は、OSD表示用のデータの重畳処理などの表示処理のみを施す構成であってもよい。この場合には、例えば、画像処理部300が、DRAM501から取得(読み出し)した画像データや記録用の画像データに対して表示用の画像処理を施して表示用の画像データを生成し、生成した表示用の画像データを、再びDRAM501に格納する(書き込む)。そして、表示処理部400は、DRAM501に格納されている表示用の画像データを取得し(読み出し)、取得した表示用の画像データにOSD表示用のデータの重畳処理などの表示処理を施すことになる。
表示デバイス401は、TFT(薄膜トランジスター:Thin Film Transistor)液晶ディスプレイ(LCD:Liquid Crystal Display)や、有機EL(Electro Luminescence)ディスプレイなどの表示デバイスである。表示デバイス401は、表示処理部400から出力された表示用の画像データ(表示画像)に応じた画像を表示する。なお、表示デバイス401は、例えば、図10に示した従来の撮像装置に備えた表示デバイスと同様であるため、詳細な説明は省略する。
DRAMコントローラ500は、データバス700に接続されている撮像装置10内の複数の構成要素からのDRAM501へのアクセス要求、例えば、DMAのアクセス要求に応じて、接続されているDRAM501へのデータの格納(書き込み)、およびDRAM501からのデータの取得(読み出し)の制御を行う。なお、DRAMコントローラ500の構成や動作は、例えば、図10に示した従来の撮像装置に備えたDRAMコントローラの構成や動作と同様であるため、詳細な説明は省略する。
DRAM501は、DRAMコントローラ500によってアクセス制御されるメモリである。DRAM501は、撮像装置10内のそれぞれの構成要素の処理過程における様々なデータを記録する。なお、DRAM501は、例えば、図10に示した従来の撮像装置に備えたDRAMと同様であるため、詳細な説明は省略する。
CPU600は、撮像装置10の構成要素、すなわち、撮像装置10全体を制御する。例えば、撮像装置10における撮影動作や再生動作に応じて、撮像装置10内の各構成要素の動作を制御する。例えば、CPU600は、撮像装置10が撮影動作を行う際に、イメージセンサ100からの画素信号の出力の開始、撮像IF部210による画素信号の取り込みの開始を制御する。
また、CPU600は、前処理部220内の処理部222a〜222cの設定や制御、AE評価値生成部231、AWB評価値生成部241、およびAF評価値生成部251の設定や制御や、出力DMA部261および入力DMA部270の設定を行う。また、CPU600は、前処理部220内のセレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とによる画像データの選択を制御する。
次に、本実施形態の撮像装置10の動作の一例について説明する。図2は、本第1の実施形態の撮像装置10による評価値生成および画像表示の動作の一例を模式的に示した図である。撮像装置10は、撮影に関するAE、AWB、およびAFの制御を行うためのAE評価値、AWB評価値、およびAF評価値を生成しながら、イメージセンサ100から出力される画素信号に応じた撮像画像を順次、表示デバイス401に表示する。図2には、図1に示した撮像装置10のブロック図上に、評価値生成動作および画像表示動作におけるデータの経路を示している。
以下に、撮像装置10による評価値生成動作および画像表示動作のそれぞれの処理手順を、順を追って説明する。
(手順1):まず、手順1では、CPU600が、セレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とを制御して、例えば、図2(a)に示した経路C11を、データの経路として選択する。そして、撮像装置10は、イメージセンサ100から出力された画素信号に応じた画像データを前処理し、前処理した前処理画像データ(ベイヤーデータ)に基づいて評価値を生成する。また、撮像装置10は、前処理画像データ(ベイヤーデータ)を、DRAMコントローラ500を介してDRAM501に格納する。
より具体的には、イメージセンサ100から出力された画素信号が、撮像処理部200に入力され、撮像処理部200内の撮像IF部210は、入力された画素信号を画像データとして前処理部220に出力する。そして、前処理部220内のセレクタ221は、撮像IF部210から入力された画像データを処理部222aに転送し、処理部222a〜222cのそれぞれは、入力された画像データに対して順次前処理(補正処理)を施す。前処理部220は、処理部222cが前処理(補正処理)した前処理画像データを、セレクタ230と、セレクタ250と、セレクタ260とのそれぞれに出力する。そして、セレクタ230、セレクタ250、およびセレクタ260のそれぞれは、前処理部220から入力された前処理画像データを、対応するAE評価値生成部231、AF評価値生成部251、および出力DMA部261に、それぞれ出力する。
AE評価値生成部231およびAF評価値生成部251は、前処理部220から入力された前処理画像データに基づいて演算(生成)したAE評価値およびAF評価値を、DRAMコントローラ500を介してDRAM501に格納する。また、出力DMA部261は、前処理部220から入力された前処理画像データ(ベイヤーデータ)を、第1フレームの撮像画像として、DRAMコントローラ500を介してDRAM501に格納する。
(手順2):続いて、手順2では、CPU600が、セレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とを制御して、例えば、図2(b)に示した経路C12、経路C13、および経路C14を、それぞれのデータの経路として選択する。そして、撮像装置10は、手順1と同様に、イメージセンサ100から出力された画素信号に応じた画像データを前処理し、前処理した前処理画像データ(ベイヤーデータ)に基づいて評価値を生成する。
また、同時に、撮像装置10は、DRAM501に格納されている第1フレームの撮像画像を取得し(読み出し)、取得した第1フレームの撮像画像の画像データと、前処理した前処理画像データ(ベイヤーデータ)とを合成し、合成した画像データ(ベイヤーデータ)に基づいて評価値を生成する。また、撮像装置10は、合成した画像データ(ベイヤーデータ)を、DRAMコントローラ500を介してDRAM501に格納する。
より具体的には、イメージセンサ100から出力された画素信号を、撮像処理部200に入力し、撮像処理部200内の撮像IF部210が、入力された画素信号を画像データとして前処理部220に出力する。そして、前処理部220内のセレクタ221は、撮像IF部210から入力された画像データを処理部222aに転送し、処理部222a〜222cのそれぞれは、入力された画像データに対して順次前処理(補正処理)を施し、合成部224に出力する。また、前処理部220は、処理部222cが前処理(補正処理)した前処理画像データを、セレクタ230を介してAE評価値生成部231に、セレクタ250を介してAF評価値生成部251に、それぞれ出力する(経路C12参照)。
また、同時に、撮像処理部200内の入力DMA部270が、DRAM501に格納されている第1フレームの撮像画像を、DRAMコントローラ500を介して取得し(読み出し)、取得した第1フレームの撮像画像の画像データを前処理部220に出力する。そして、前処理部220内のセレクタ221は、入力DMA部270から入力された第1フレームの撮像画像の画像データをディレイ部223aに転送し、ディレイ部223a〜223cのそれぞれは、入力された第1フレームの撮像画像の画像データを、予め定めた時間だけ遅らせ、合成部224に出力する(経路C13参照)。
そして、合成部224は、処理部222cが前処理(補正処理)した前処理画像データ、すなわち、第2フレームの撮像画像と、ディレイ部223cが遅らせた遅延画像データ、すなわち、第1フレームの撮像画像とを合成した合成画像データを生成する。そして、前処理部220は、合成部224が生成した合成画像データを、セレクタ240を介してAWB評価値生成部241に、セレクタ260を介して出力DMA部261に、それぞれ出力する。そして、出力DMA部261は、前処理部220から入力された合成画像データ(ベイヤーデータ)を、DRAMコントローラ500を介してDRAM501に格納する(経路C14参照)。
また、AE評価値生成部231およびAF評価値生成部251は、前処理部220から入力された前処理画像データ(第2フレームの撮像画像)に基づいて演算(生成)したAE評価値およびAF評価値を、DRAMコントローラ500を介してDRAM501に格納する。また、AWB評価値生成部241は、前処理部220から入力された合成画像データに基づいて、AWB評価値を演算(生成)し、生成したAWB評価値を、DRAMコントローラ500を介してDRAM501に格納する。
その後、撮像装置10は、DRAM501に格納されている合成画像データ(ベイヤーデータ)に応じた表示画像を、表示デバイス401に表示する。このとき、例えば、図2(b)に示した経路C15で、表示処理部400にデータが入力される。
より具体的には、表示処理部400が、DRAM501に格納されている合成画像データを、DRAMコントローラ500を介して取得し(読み出し)、取得した合成画像データに対して表示処理を施して、表示用の画像データ(表示画像)を生成する。そして、表示処理部400は、生成した表示画像を、表示デバイス401に出力する。これにより、表示画像(合成画像データ)が、表示デバイス401に表示される。
以降、撮像装置10は、手順1における第1フレームの撮像画像(前処理画像データ)に基づいたAE評価値およびAF評価値の演算(生成)と、第1フレームの撮像画像(ベイヤーデータ)のDRAM501への格納、および手順2における第2フレームの撮像画像(前処理画像データ)に基づいたAE評価値およびAF評価値の演算(生成)と、合成画像データの生成と、合成画像データに基づいたAWB評価値の演算(生成)と、合成画像データ(ベイヤーデータ)のDRAM501への格納とを繰り返す。また、表示処理部400は、手順2における表示画像の生成および表示デバイス401への出力を繰り返す。
このように、撮像装置10では、CPU600が、セレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とによって、それぞれの処理手順で、図2に示したような、画像データを処理する経路を選択する。これにより、撮像装置10では、イメージセンサ100からの画素信号に応じた画像データに基づいて、撮影に関する制御(AE、AWB、およびAFの制御)を行うためのそれぞれの評価値を生成しながら、イメージセンサ100からの画素信号に応じた表示画像を順次、表示デバイス401に表示することができる。
このとき、表示デバイス401に表示する表示画像は、第1フレームの撮像画像と第2フレームの撮像画像とを合成した合成画像データに応じた画像である。このため、イメージセンサ100から画素信号を取り込んで評価値を生成するための画像データのフレームレート(以下、「撮像フレームレート」という)と、表示デバイス401に合成画像データを表示するフレームレート(以下、「表示フレームレート」という)とが異なるフレームレートであっても、撮像フレームレートで、より多くの評価値を得ることができると共に、表示フレームレートで、撮影する被写体を容易に確認することができる滑らかな動画を表示することができる。
なお、図2に示した撮像装置10による評価値生成および画像表示の動作の一例では、手順1においてAWB評価値生成部241が評価値を生成していない場合の例について説明したが、手順1において、AE評価値生成部231、AWB評価値生成部241、およびAF評価値生成部251が、それぞれの評価値を生成する動作にしてもよい。すなわち、AE評価値、AWB評価値、およびAF評価値を、イメージセンサ100からの画素信号に応じた前処理画像データである、現在のフレームの撮像画像から生成し、合成画像データを、表示デバイス401に表示するための画像データとして使用する動作にしてもよい。
ここで、図2に示した撮像装置10による評価値生成および画像表示の動作の一例におけるタイミングの関係について説明する。図3は、本第1の実施形態の撮像装置10に備えたイメージセンサ100と表示デバイス401との概略のタイミングの一例を示したタイミングチャートである。図3は、図11に示した従来の撮像装置におけるタイミングと同様に、イメージセンサ100の撮像フレームレートが120fps(フレーム/秒)であり、表示デバイス401の表示フレームレートが60fpsである場合における、イメージセンサ100から取り込んだ画素信号に応じた画像データである撮像画像と、表示デバイス401に表示する画像データである表示画像とのタイミングの関係を示している。
図3において、「イメージセンサの垂直同期信号」は、イメージセンサ100から各フレームの画素信号の取り込みを開始するタイミングを表す信号であり、「表示デバイスの垂直同期信号」は、表示デバイス401が各フレームの画像の表示を開始するタイミングを表す信号である。表示デバイス401は、「表示デバイスの垂直同期信号」が入力される毎(図3に示した単位期間毎)に、表示する表示画像を更新する。また、図3において、「AF処理」、「AE処理」、および「AWB処理」の期間は、撮像画像に基づいてAE評価値生成部231、AF評価値生成部251、およびAWB評価値生成部241のそれぞれが、AE評価値、AF評価値、およびAWB評価値を生成する期間である。なお、図3では、撮像画像と表示画像とのタイミングの関係の比較を容易にするため、「イメージセンサの垂直同期信号」のタイミングと「表示デバイスの垂直同期信号」のタイミングとが同期している場合を示している。
図3に示したように、撮像装置10に備えた合成部224は、手順2によって、奇数番目のフレームの撮像画像と偶数番目のフレームの撮像画像とを合成した合成画像データを生成する。そして、生成した合成画像データを、表示画像として表示デバイス401に表示する。このように、撮像装置10では、イメージセンサ100から得られた各フレームの撮像画像を間引くことなく、すなわち、画像の情報を減らすことなく、表示フレームレート(60fps)で、表示デバイス401に画像を表示することができる。これにより、撮像装置10は、表示デバイス401に良好な表示画像を表示させることができる。
また、図3に示したように、撮像装置10に備えたAE評価値生成部231およびAF評価値生成部251は、手順1および手順2によって、各フレームの撮像画像(前処理画像データ)に基づいたAE評価値およびAF評価値を生成する。すなわち、撮像フレームレート(120fps)で、それぞれの評価値を生成する。これにより、撮像装置10は、より多くのAE評価値およびAF評価値を得ることができる。このことにより、撮像装置10では、例えば、AF機能の高速化、すなわち、合焦速度の高速化を実現することができる。
また、図3に示したように、撮像装置10に備えたAWB評価値生成部241は、手順2によって、合成画像データに基づいたAWB評価値を生成する。すなわち、AWB評価値生成部241は、表示フレームレート(60fps)で評価値を生成する。これにより、撮像装置10では、従来の撮像装置と同様のAWB評価値を得ることができる。
上記に述べたように、本第1の実施形態における撮像装置10では、イメージセンサ100から出力される画素信号の撮像フレームレートで評価値を生成する。これにより、本第1の実施形態における撮像装置10では、イメージセンサ100の撮像フレームレートを高くすることによって、より多くの評価値を得ることができる。このことにより、本第1の実施形態における撮像装置10では、撮像装置10における撮影に関する制御を高速化することができる。
また、本第1の実施形態における撮像装置10では、イメージセンサ100から出力される画素信号に応じた画像データ(現在のフレームの撮像画像)と、DRAMコントローラ500を介して取得し(読み出し)した画像データ(以前のフレームの撮像画像)とを合成する。すなわち、イメージセンサ100から出力される画素信号に応じた画像データを、フレームの単位で合成する。これにより、本第1の実施形態における撮像装置10では、イメージセンサ100の撮像フレームレートと表示デバイス401の表示フレームレートとが異なる場合でも、イメージセンサ100から取り込んだ撮像画像のフレームを間引くことなく、すなわち、画像の情報を減らすことなく、それぞれのフレームレートの違いを吸収し、良好な表示画像を表示デバイス401に表示することができる。
なお、本第1の実施形態における撮像装置10では、図2に示した評価値生成および画像表示の動作の一例および図3に示したイメージセンサ100と表示デバイス401との概略のタイミングの一例において、撮像フレームレートが120fpsであり、表示フレームレートが60fpsである場合について説明した。しかし、撮像フレームレートおよび表示フレームレートは、本第1の実施形態の状態に限定されるものではない。例えば、撮像フレームレートが240fpsであり、表示フレームレートが60fpsである場合でも、同様に適用することができる。この場合には、合成部224は、4フレーム分の撮像画像の画像データを、合成画像データとして合成することになる。そして、撮像装置10は、手順1に引き続き、手順2における合成画像データ(ベイヤーデータ)のDRAM501への格納を3回繰り返した後、すなわち、4フレーム分の撮像画像の合成処理が終了した後に、表示処理部400が、手順2における表示画像の生成および表示デバイス401への出力を行う動作を繰り返すことになる。
また、本第1の実施形態における撮像装置10では、図2に示した評価値生成および画像表示の動作の一例および図3に示したイメージセンサ100と表示デバイス401との概略のタイミングの一例において、AE処理およびAF処理を撮像フレームレート(120fps)で行い、AWB処理を表示フレームレート(60fps)で行う場合について説明した。しかし、AE処理、AWB処理、およびAF処理を行うタイミングは、本第1の実施形態のタイミングに限定されるものではない。すなわち、本第1の実施形態における撮像装置10では、AE評価値生成部231、AWB評価値生成部241、およびAF評価値生成部251の前段にセレクタ230、セレクタ240、およびセレクタ250を備えているため、それぞれの評価値生成部は、撮像フレームレート(120fps)および表示フレームレート(60fps)のいずれのタイミングでも評価値生成の処理を行うことができる。
なお、本第1の実施形態における撮像装置10では、上述したように、高い撮像フレームレートでイメージセンサ100から出力された各フレームの撮像画像の画像データを、合成部224がフレームの単位で合成する。このため、撮像装置10では、手順2において、入力DMA部270によって取得される(読み出される)DRAM501に一旦格納された以前のフレームの画像データと、出力DMA部261によってDRAM501に格納される合成画像データと、表示デバイス401に表示するために表示処理部400によって取得される(読み出される)DRAM501に格納された合成画像データとが、DRAMコントローラ500を介してDRAM501とやり取りされる。すなわち、それぞれの画像データが同時期にデータバス700上に存在することになる。同時期にデータバス700上に存在する画像データが多くなると、データバス700のバス帯域を圧迫する要因となる。撮像装置10における実際の動作では、データバス700のバス帯域についても考慮する必要がある。
ここで、撮像装置10におけるデータバス700のバス帯域について説明する。図4は、本第1の実施形態の撮像装置10において、画像を表示する際のバス帯域の一例を模式的に示した図である。図4には、図2に示した評価値生成および画像表示の動作の一例に、それぞれのデータの経路でやり取りされる画像データの大きさ(サイズ)を模式的に示した図を追加して示している。そして、以下の説明においては、データバス700上で同時期にやり取りされる画像データの大きさを説明することで、データバス700のバス帯域についての説明を行う。なお、イメージセンサ100の画素信号に対応した画像サイズは、図4に示した画像サイズ100oの大きさであるものとする。
まず、手順1においては、画像サイズ100oの大きさの画素信号が、イメージセンサ100から出力され、撮像処理部200によって処理された図4(a)に示した画像サイズ261o1の大きさ(=画像サイズ100oの大きさ)の撮像画像が、出力DMA部261によって、第1フレームの撮像画像として、DRAM501に格納される。
続いて、手順2においても、画像サイズ100oの大きさの画素信号が、イメージセンサ100から出力され、撮像処理部200に入力される。また、手順2では、DRAM501に格納されている図4(b)に示した画像サイズ270iの大きさ(=画像サイズ261o1の大きさ)の第1フレームの撮像画像が、入力DMA部270によって取得され(読み出され)、合成部224によって合成される。そして、図4(b)に示した画像サイズ261o2の大きさ(=画像サイズ261o1の大きさ)の合成画像データが、出力DMA部261によってDRAM501に格納される。
その後、手順2では、DRAM501に格納されている画像サイズ261o2の大きさ(=画像サイズ261o1の大きさ)の合成画像データが、表示処理部400によって取得される(読み出される)。そして、表示処理部400は、取得した(読み出した)、画像サイズ261o2の大きさ(=画像サイズ261o1の大きさ)の合成画像データに対してリサイズ(縮小)などの表示処理を施して、図4(b)に示した画像サイズ401oの大きさ(<画像サイズ261o2の大きさ)の表示画像を生成する。
このように、イメージセンサ100から入力される画素信号に応じた撮像画像を、表示デバイス401に順次表示するとき、特に、入力DMA部270がDRAM501に格納されている第1フレームの撮像画像を取得し(読み出し)、出力DMA部261が、合成画像データをDRAM501に格納するときが、撮像装置10においてデータバス700のバス帯域を圧迫しているときである。これは、入力DMA部270および出力DMA部261がアクセスする2フレーム分の撮像画像の画像データが、データバス700上に同時期に存在するからである。
しかし、図4を見てわかるように、表示デバイス401が表示することができる表示画像の大きさは、イメージセンサ100から出力される画素信号に応じた撮像画像の大きさに比べて、非常に小さい画像サイズである。従って、表示処理部400が表示画像を生成するための画像データの大きさは、イメージセンサ100から出力される画素信号に応じた撮像画像の大きさよりも小さい画像データで十分である。この撮像画像の大きさと表示画像の大きさの差は、イメージセンサ100の画素数が多くなるほど、より顕著に現れてくる。このため、データバス700上に同時期に存在する画像データの大きさを適切にすることによって、データバス700のバス帯域の圧迫を軽減することができると考えられる。
また、撮像装置10では、イメージセンサ100から入力される画素信号に応じた撮像画像を表示デバイス401に順次表示する以外にも、例えば、画像処理部300が、合成画像データに対して様々な画像処理を行うこともある。このため、画像処理部300による処理の負荷を軽減する必要があるが、データバス700のバス帯域の圧迫を軽減することは、撮像装置10が快適に動作するためにも有用である。
<第2の実施形態>
次に、本発明の第2の実施形態の撮像装置について説明する。図5は、本第2の実施形態における撮像装置の概略構成を示したブロック図である。なお、本第2の実施形態の撮像装置20は、図1に示した第1の実施形態の撮像装置10内の撮像処理部200において、セレクタ260と出力DMA部261との間に、リサイズ処理部800が追加されたのみであり、その他の構成要素は、第1の実施形態の撮像装置10と同様である。従って、本第2の実施形態の撮像装置20の説明においては、図1に示した第1の実施形態の撮像装置10とは異なる構成、および動作のみを説明して、詳細な説明は省略する。なお、以下の説明においては、本第2の実施形態の撮像装置20の構成要素において、図1に示した第1の実施形態の撮像装置10と同様の構成要素には、同一の符号を用いて説明する。
セレクタ260は、前処理部220から入力された前処理画像データ、遅延画像データ、または合成画像データのいずれか1つの画像データを選択し、選択した画像データを、画像処理部300または表示処理部400が処理する元の画像データとしてリサイズ処理部800に出力する。
リサイズ処理部800は、セレクタ260から入力された画像データを、例えば、表示デバイス401が表示することができる、予め定めた画像の大きさにリサイズ(縮小)する。そして、リサイズ処理部800は、リサイズ(縮小)した画像データを、表示デバイス401に表示する元の画像データとして出力DMA部261に出力する。なお、リサイズ処理部800によるリサイズ(縮小)の処理の方法は、例えば、表示処理部400が行うリサイズ(縮小)の処理の方法と同様であるため、詳細な説明は省略する。
なお、リサイズ処理部800は、セレクタ260から入力された画像データに対してリサイズ(縮小)処理を施すか否かを切り換える、すなわち、リサイズ(縮小)処理をONまたはOFFにする機能を備えている。リサイズ処理部800によるリサイズ(縮小)処理のONまたはOFFの切り換えは、撮像装置20における評価値生成および画像表示の動作の手順に毎に、CPU600が制御する。
出力DMA部261は、リサイズ処理部800から入力された画像データを、DMAによって、DRAMコントローラ500を介してDRAM501に格納する。
表示処理部400は、DRAM501に格納されているリサイズ(縮小)処理した後の画像データを取得し(読み出し)、取得した画像データに、リサイズ(縮小)処理以外の表示用の画像処理や、OSD表示用のデータを重畳する処理などの表示処理を施した表示用の画像データ(以下、「表示画像」ともいう)を生成する。そして、表示処理部400は、生成した表示用の画像データ(表示画像)を、表示デバイス401や図示しない外部ディスプレイに出力する。
なお、表示処理部400は、OSD表示用のデータの重畳処理などの表示処理のみを施す構成であってもよい。この場合には、例えば、画像処理部300が、DRAM501から取得(読み出し)した画像データに対して、リサイズ(縮小)処理以外の表示用の画像処理を施した表示用の画像データを生成し、生成した表示用の画像データを、再びDRAM501に格納する(書き込む)。そして、表示処理部400は、DRAM501に格納されている表示用の画像データを取得し(読み出し)、取得した表示用の画像データにOSD表示用のデータの重畳処理などの表示処理を施すことになる。
次に、本実施形態の撮像装置20の動作の一例について説明する。図6は、本第2の実施形態の撮像装置20による評価値生成および画像表示の動作と、バス帯域との一例を模式的に示した図である。撮像装置20は、第1の実施形態の撮像装置10と同様に、撮影に関するAE、AWB、およびAFの制御を行うためのAE評価値、AWB評価値、およびAF評価値を生成しながら、イメージセンサ100から出力される画素信号に応じた撮像画像を順次、表示フレームレートに合わせて表示デバイス401に表示する。
図6には、図5に示した撮像装置20のブロック図上に、評価値生成動作および画像表示動作におけるデータの経路を示している。また、図6には、それぞれのデータの経路でやり取りされる画像データの大きさ(サイズ)を模式的に示した図を追加して示している。そして、以下の説明においては、撮像装置20による評価値生成動作および画像表示動作のそれぞれの処理手順を、順を追って説明すると共に、データバス700上で同時期にやり取りされる画像データの大きさを説明することで、データバス700のバス帯域についての説明を行う。また、以下の説明において、イメージセンサ100の画素信号に対応した画像サイズは、図4に示した第1の実施形態の撮像装置10における画像サイズ100oと同様の大きさであるものとする。
なお、図6に示した撮像装置20による評価値生成および画像表示の動作の一例におけるイメージセンサ100と表示デバイス401とのタイミングの関係は、図3に示した第1の実施形態の撮像装置10におけるイメージセンサ100と表示デバイス401とタイミングの関係と同様であるため、詳細な説明は省略する。
(手順1):まず、手順1では、CPU600が、セレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とを制御して、例えば、図6(a)に示した経路C21を、データの経路として選択する。そして、撮像装置20は、イメージセンサ100から出力された画素信号に応じた画像データを前処理し、前処理した前処理画像データ(ベイヤーデータ)に基づいて評価値を生成する。また、撮像装置20は、前処理画像データ(ベイヤーデータ)を、DRAMコントローラ500を介してDRAM501に格納する。なお、手順1では、CPU600は、リサイズ処理部800のリサイズ(縮小)処理をOFFにし、リサイズ(縮小)処理を行わない。
より具体的には、イメージセンサ100から出力された画像サイズ100oの大きさの画素信号が、撮像処理部200に入力され、撮像処理部200内の撮像IF部210は、入力された画素信号を画像データとして前処理部220に出力する。そして、前処理部220内のセレクタ221は、撮像IF部210から入力された画像データを処理部222aに転送し、処理部222a〜222cのそれぞれは、入力された画像データに対して順次前処理(補正処理)を施す。前処理部220は、処理部222cが前処理(補正処理)した前処理画像データを、セレクタ230と、セレクタ250と、セレクタ260とのそれぞれに出力する。そして、セレクタ230、セレクタ250、およびセレクタ260のそれぞれは、前処理部220から入力された前処理画像データを、対応するAE評価値生成部231、AF評価値生成部251、および出力DMA部261に、それぞれ出力する。
AE評価値生成部231およびAF評価値生成部251は、前処理部220から入力された前処理画像データに基づいて演算(生成)したAE評価値およびAF評価値を、DRAMコントローラ500を介してDRAM501に格納する。また、出力DMA部261は、前処理部220から入力された前処理画像データ(ベイヤーデータ)を、第1フレームの撮像画像として、DRAMコントローラ500を介してDRAM501に格納する。ここでは、出力DMA部261は、図6(a)に示した画像サイズ261o1の大きさ(=画像サイズ100oの大きさ)の撮像画像(前処理画像データ)を、第1フレームの撮像画像として、DRAM501に格納する。
(手順2):続いて、手順2では、CPU600が、セレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とを制御して、例えば、図6(b)に示した経路C22、経路C23、および経路C24を、それぞれのデータの経路として選択する。また、手順2では、CPU600は、リサイズ処理部800のリサイズ(縮小)処理をONにする。そして、撮像装置20は、手順1と同様に、イメージセンサ100から出力された画素信号に応じた画像データを前処理し、前処理した前処理画像データ(ベイヤーデータ)に基づいて評価値を生成する。
また、同時に、撮像装置20は、DRAM501に格納されている第1フレームの撮像画像を取得し(読み出し)、取得した第1フレームの撮像画像の画像データと、前処理した前処理画像データ(ベイヤーデータ)とを合成し、合成した画像データ(ベイヤーデータ)に基づいて評価値を生成する。また、撮像装置20は、合成した画像データ(ベイヤーデータ)をリサイズ(縮小)処理し、DRAMコントローラ500を介してDRAM501に格納する。
より具体的には、イメージセンサ100から出力された画像サイズ100oの大きさの画素信号が、撮像処理部200に入力され、撮像処理部200内の撮像IF部210は、入力された画素信号を画像データとして前処理部220に出力する。そして、前処理部220内のセレクタ221は、撮像IF部210から入力された画像データを処理部222aに転送し、処理部222a〜222cのそれぞれは、入力された画像データに対して順次前処理(補正処理)を施し、合成部224に出力する。また、前処理部220は、処理部222cが前処理(補正処理)した前処理画像データを、セレクタ230を介してAE評価値生成部231に、セレクタ250を介してAF評価値生成部251に、それぞれ出力する(経路C22参照)。
また、同時に、撮像処理部200内の入力DMA部270が、DRAM501に格納されている図6(b)に示した画像サイズ270iの大きさ(=画像サイズ261o1の大きさ)の第1フレームの撮像画像を、DRAMコントローラ500を介して取得し(読み出し)、取得した第1フレームの撮像画像の画像データを前処理部220に出力する。そして、前処理部220内のセレクタ221は、入力DMA部270から入力された第1フレームの撮像画像の画像データをディレイ部223aに転送し、ディレイ部223a〜223cのそれぞれは、入力された第1フレームの撮像画像の画像データを、予め定めた時間だけ遅らせ、合成部224に出力する(経路C23参照)。
そして、合成部224は、処理部222cが前処理(補正処理)した前処理画像データ、すなわち、第2フレームの撮像画像と、ディレイ部223cが遅らせた遅延画像データ、すなわち、第1フレームの撮像画像とを合成した、図6(b)に示した画像サイズ261o2の大きさ(=画像サイズ261o1の大きさ)の合成画像データを生成する。そして、前処理部220は、合成部224が生成した合成画像データを、セレクタ240を介してAWB評価値生成部241に、セレクタ260を介して出力DMA部261に、それぞれ出力する。そして、出力DMA部261は、前処理部220から入力された合成画像データ(ベイヤーデータ)をリサイズ(縮小)処理した、図6(b)に示した画像サイズ261oSの大きさ(<画像サイズ261o2の大きさ)の合成画像データ(ベイヤーデータ)を、DRAMコントローラ500を介してDRAM501に格納する(経路C24参照)。
また、AE評価値生成部231およびAF評価値生成部251は、前処理部220から入力された前処理画像データ(第2フレームの撮像画像)に基づいて演算(生成)したAE評価値およびAF評価値を、DRAMコントローラ500を介してDRAM501に格納する。また、AWB評価値生成部241は、前処理部220から入力された合成画像データに基づいて、AWB評価値を演算(生成)し、生成したAWB評価値を、DRAMコントローラ500を介してDRAM501に格納する。
その後、撮像装置20は、DRAM501に格納されているリサイズ(縮小)処理した合成画像データ(ベイヤーデータ)に応じた表示画像を、表示デバイス401に表示する。このとき、例えば、図6(b)に示した経路C25で、表示処理部400にデータが入力される。
より具体的には、表示処理部400が、DRAM501に格納されている画像サイズ261oSの大きさ(<画像サイズ261o2の大きさ)の合成画像データを、DRAMコントローラ500を介して取得し(読み出し)、取得した合成画像データに対して、リサイズ(縮小)処理以外の表示処理を施した表示用の画像データ(表示画像)を生成する。そして、表示処理部400は、生成した表示画像を、表示デバイス401に出力する。これにより、リサイズ処理部800によってリサイズ(縮小)処理した合成画像データに応じた表示画像が、表示デバイス401に表示される。
以降、撮像装置20は、手順1における第1フレームの撮像画像(前処理画像データ)に基づいたAE評価値およびAF評価値の演算(生成)と、第1フレームの撮像画像(ベイヤーデータ)のDRAM501への格納、および手順2における第2フレームの撮像画像(前処理画像データ)に基づいたAE評価値およびAF評価値の演算(生成)と、合成画像データの生成と、合成画像データに基づいたAWB評価値の演算(生成)と、リサイズ(縮小)処理した合成画像データ(ベイヤーデータ)のDRAM501への格納とを繰り返す。また、表示処理部400は、手順2におけるリサイズ(縮小)処理した合成画像データ(ベイヤーデータ)に応じた表示画像の生成、および表示デバイス401への出力を繰り返す。
このように、撮像装置20では、CPU600が、セレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とによって、それぞれの処理手順で、図6に示したような、画像データを処理する経路を選択する。これにより、撮像装置20では、イメージセンサ100からの画素信号に応じた画像データに基づいて、撮影に関する制御(AE、AWB、およびAFの制御)を行うためのそれぞれの評価値を生成しながら、イメージセンサ100からの画素信号に応じた表示画像を順次、表示フレームレートに合わせて表示デバイス401に表示することができる。
このとき、表示デバイス401に表示する表示画像は、第1フレームの撮像画像と第2フレームの撮像画像とを合成した合成画像データに応じた画像である。このため、イメージセンサ100から画素信号を取り込んで評価値を生成するための撮像フレームレートと、表示デバイス401に合成画像データを表示する表示フレームレートとが異なるフレームレートであっても、撮像フレームレートで、より多くの評価値を得ることができる。また、表示画像を生成するための合成画像データは、リサイズ(縮小)処理した合成画像データである。このため、撮像装置20では、データバス700のバス帯域の圧迫を軽減することができる。また、表示処理部400が表示画像を生成する際の処理の負荷を低減することができる。
なお、図6に示した撮像装置20による評価値生成および画像表示の動作の一例では、合成部224が2フレーム分の撮像画像の画像データを、合成画像データとして合成する場合について説明したが、撮像フレームレートと表示フレームレートとに応じて、さらに多くのフレームの撮像画像の画像データを合成することもできる。
ここで、本実施形態の撮像装置20の動作の別の一例について説明する。図7は、本第2の実施形態の撮像装置20による評価値生成および画像表示の動作と、バス帯域との別の一例を模式的に示した図である。図7には、3フレーム分の撮像画像の画像データを、合成画像データとして合成する場合の評価値生成および画像表示の動作の一例を示している。図7に示した動作の一例においても、撮像装置20は、図6に示した動作の一例と同様に、撮影に関するAE、AWB、およびAFの制御を行うためのAE評価値、AWB評価値、およびAF評価値を生成しながら、イメージセンサ100から出力される画素信号に応じた撮像画像を順次、表示フレームレートに合わせて表示デバイス401に表示する。
図7には、図6に示した動作の一例と同様に、図5に示した撮像装置20のブロック図上に、評価値生成動作および画像表示動作におけるデータの経路と、それぞれのデータの経路でやり取りされる画像データの大きさ(サイズ)を模式的に示した図とを示している。以下の説明においては、撮像装置20による評価値生成動作および画像表示動作のそれぞれの処理手順と、データバス700のバス帯域についての説明を行うが、図6に示した動作と異なる動作に注目して説明を行う。なお、イメージセンサ100の画素信号に対応した画像サイズは、図6に示した動作の一例と同様の大きさ(画像サイズ100o)であるものとする。
なお、図7に示した動作の一例におけるイメージセンサ100と表示デバイス401とのタイミングの関係は、図3に示した第1の実施形態の撮像装置10におけるイメージセンサ100と表示デバイス401とタイミングの関係における合成する撮像画像の数が、2フレーム分から3フレーム分に変わったのみである。従って、図7に示した動作の一例におけるイメージセンサ100と表示デバイス401とのタイミングの関係も、図3に示した第1の実施形態の撮像装置10におけるイメージセンサ100と表示デバイス401とタイミングの関係と同様に考えることができるため、詳細な説明は省略する。
(手順1):まず、手順1では、図6に示した動作における手順1と同様に、CPU600が、それぞれのセレクタ221を制御して、図7(a)に示した経路C21をデータの経路として選択する。そして、撮像装置20は、イメージセンサ100から出力された画像サイズ100oの大きさの画素信号に応じた画像データを前処理し、前処理した前処理画像データ(ベイヤーデータ)に基づいて評価値を生成する。
また、撮像装置20は、図6に示した動作における手順1と同様に、前処理画像データ(ベイヤーデータ)を第1フレームの撮像画像として、DRAMコントローラ500を介してDRAM501に格納する。ここでは、出力DMA部261は、図7(a)に示した画像サイズ261o1の大きさ(=画像サイズ100oの大きさ)の撮像画像(前処理画像データ)を、第1フレームの撮像画像として、DRAM501に格納する。なお、手順1では、CPU600は、リサイズ処理部800のリサイズ(縮小)処理をOFFにし、リサイズ(縮小)処理を行わない。
(手順2):続いて、手順2では、CPU600が、セレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とを制御して、図7(b)に示した経路C22、経路C23、および経路C24を、それぞれのデータの経路として選択する。そして、撮像装置20は、手順1と同様に、イメージセンサ100から出力された画素信号に応じた画像データを前処理し、前処理した前処理画像データ(ベイヤーデータ)に基づいて評価値を生成する。
また、同時に、撮像装置20は、DRAM501に格納されている第1フレームの撮像画像を取得し(読み出し)、取得した第1フレームの撮像画像の画像データと、前処理した前処理画像データ(ベイヤーデータ)とを合成し、合成した画像データ(ベイヤーデータ)に基づいて評価値を生成する。また、撮像装置20は、合成した画像データ(ベイヤーデータ)を、第1+2フレームの撮像画像として、DRAMコントローラ500を介してDRAM501に格納する。なお、手順2でも、CPU600は、リサイズ処理部800のリサイズ(縮小)処理をOFFにし、リサイズ(縮小)処理を行わない。
より具体的には、イメージセンサ100から出力された画像サイズ100oの大きさの画素信号が、撮像処理部200に入力され、撮像処理部200内の撮像IF部210は、入力された画素信号を画像データとして前処理部220に出力する。そして、前処理部220内のセレクタ221は、撮像IF部210から入力された画像データを処理部222aに転送し、処理部222a〜222cのそれぞれは、入力された画像データに対して順次前処理(補正処理)を施し、合成部224に出力する。また、前処理部220は、処理部222cが前処理(補正処理)した前処理画像データを、セレクタ230を介してAE評価値生成部231に、セレクタ250を介してAF評価値生成部251に、それぞれ出力する(経路C22参照)。
また、同時に、撮像処理部200内の入力DMA部270が、DRAM501に格納されている図7(b)に示した画像サイズ270i1の大きさ(=画像サイズ261o1の大きさ)の第1フレームの撮像画像を、DRAMコントローラ500を介して取得し(読み出し)、取得した第1フレームの撮像画像の画像データを前処理部220に出力する。そして、前処理部220内のセレクタ221は、入力DMA部270から入力された第1フレームの撮像画像の画像データをディレイ部223aに転送し、ディレイ部223a〜223cのそれぞれは、入力された第1フレームの撮像画像の画像データを、予め定めた時間だけ遅らせ、合成部224に出力する(経路C23参照)。
そして、合成部224は、処理部222cが前処理(補正処理)した前処理画像データ、すなわち、第2フレームの撮像画像と、ディレイ部223cが遅らせた遅延画像データ、すなわち、第1フレームの撮像画像とを合成した、図7(b)に示した画像サイズ261o2の大きさ(=画像サイズ261o1の大きさ)の合成画像データを生成する。そして、前処理部220は、合成部224が生成した合成画像データを、セレクタ240を介してAWB評価値生成部241に、セレクタ260を介して出力DMA部261に、それぞれ出力する。そして、出力DMA部261は、前処理部220から入力された、図7(b)に示した画像サイズ261o2の大きさ(=画像サイズ100oの大きさ)の合成画像データ(ベイヤーデータ)を、第1+2フレームの撮像画像として、DRAMコントローラ500を介してDRAM501に格納する(経路C24参照)。
また、AE評価値生成部231およびAF評価値生成部251は、前処理部220から入力された前処理画像データ(第2フレームの撮像画像)に基づいて演算(生成)したAE評価値およびAF評価値を、DRAMコントローラ500を介してDRAM501に格納する。また、AWB評価値生成部241は、前処理部220から入力された合成画像データに基づいて、AWB評価値を演算(生成)し、生成したAWB評価値を、DRAMコントローラ500を介してDRAM501に格納する。
(手順3):続いて、手順3では、図6に示した動作における手順2と同様に、リサイズ処理部800のリサイズ(縮小)処理をONにする。なお、手順3におけるデータの経路は、手順2と同様の経路、すなわち、図7(b)および図7(c)に示した経路C22、経路C23、および経路C24を、CPU600が選択する。そして、撮像装置10は、手順1および手順2と同様に、イメージセンサ100から出力された画像サイズ100oの大きさの画素信号に応じた画像データを前処理し、前処理した前処理画像データ(ベイヤーデータ)に基づいて評価値を生成する。
また、同時に、撮像装置20は、図6に示した動作における手順2と同様に、DRAM501に格納されている第1+2フレームの撮像画像を取得し(読み出し)、取得した第1+2フレームの撮像画像の画像データと、前処理した前処理画像データ(ベイヤーデータ)とを合成し、合成した画像データ(ベイヤーデータ)に基づいて評価値を生成する。また、撮像装置20は、合成した画像データ(ベイヤーデータ)をリサイズ(縮小)処理し、DRAMコントローラ500を介してDRAM501に格納する。
より具体的には、イメージセンサ100から出力された画像サイズ100oの大きさの画素信号が、撮像処理部200に入力され、撮像処理部200内の撮像IF部210は、入力された画素信号を画像データとして前処理部220に出力する。そして、前処理部220内のセレクタ221は、撮像IF部210から入力された画像データを処理部222aに転送し、処理部222a〜222cのそれぞれは、入力された画像データに対して順次前処理(補正処理)を施し、合成部224に出力する。また、前処理部220は、処理部222cが前処理(補正処理)した前処理画像データを、セレクタ230を介してAE評価値生成部231に、セレクタ250を介してAF評価値生成部251に、それぞれ出力する(経路C22参照)。
また、同時に、撮像処理部200内の入力DMA部270が、DRAM501に格納されている図7(c)に示した画像サイズ270i2の大きさ(=画像サイズ261o2の大きさ)の第1+2フレームの撮像画像を、DRAMコントローラ500を介して取得し(読み出し)、取得した第1+2フレームの撮像画像の画像データを前処理部220に出力する。そして、前処理部220内のセレクタ221は、入力DMA部270から入力された第1+2フレームの撮像画像の画像データをディレイ部223aに転送し、ディレイ部223a〜223cのそれぞれは、入力された第1+2フレームの撮像画像の画像データを、予め定めた時間だけ遅らせ、合成部224に出力する(経路C23参照)。
そして、合成部224は、処理部222cが前処理(補正処理)した前処理画像データ、すなわち、第3フレームの撮像画像と、ディレイ部223cが遅らせた遅延画像データ、すなわち、第1+2フレームの撮像画像とを合成した、図7(c)に示した画像サイズ261o3の大きさ(=画像サイズ261o2の大きさ)の合成画像データを生成する。そして、前処理部220は、合成部224が生成した合成画像データを、セレクタ240を介してAWB評価値生成部241に、セレクタ260を介して出力DMA部261に、それぞれ出力する。そして、出力DMA部261は、前処理部220から入力された合成画像データ(ベイヤーデータ)をリサイズ(縮小)処理した、図7(c)に示した画像サイズ261oSの大きさ(<画像サイズ261o3の大きさ)の合成画像データ(ベイヤーデータ)を、DRAMコントローラ500を介してDRAM501に格納する(経路C24参照)。
また、AE評価値生成部231およびAF評価値生成部251は、前処理部220から入力された前処理画像データ(第3フレームの撮像画像)に基づいて演算(生成)したAE評価値およびAF評価値を、DRAMコントローラ500を介してDRAM501に格納する。また、AWB評価値生成部241は、前処理部220から入力された合成画像データに基づいて、AWB評価値を演算(生成)し、生成したAWB評価値を、DRAMコントローラ500を介してDRAM501に格納する。
その後、撮像装置20は、DRAM501に格納されているリサイズ(縮小)処理した画像サイズ261oSの大きさ(<画像サイズ261o2の大きさ)の合成画像データ(ベイヤーデータ)に応じた表示画像を、表示デバイス401に表示する。このとき、図7(c)に示した経路C25で、表示処理部400にデータが入力される。
以降、撮像装置20は、手順1〜手順3の動作を繰り返す。また、撮像装置20は、手順3におけるリサイズ(縮小)処理した合成画像データ(ベイヤーデータ)に応じた表示画像の表示デバイス401への表示を繰り返す。
このように、撮像装置20では、CPU600が、セレクタ221と、セレクタ230、セレクタ240、セレクタ250、およびセレクタ260とによって、それぞれの処理手順で、図7に示したような、画像データを処理する経路を選択する。また、CPU600が、リサイズ処理部800によるリサイズ(縮小)処理のONまたはOFFを制御する。これにより、撮像装置20では、イメージセンサ100からの画素信号に応じた画像データに基づいて、撮影に関する制御(AE、AWB、およびAFの制御)を行うためのそれぞれの評価値を生成しながら、イメージセンサ100からの画素信号に応じた表示画像を順次、表示フレームレートに合わせて表示デバイス401に表示することができる。
このとき、表示デバイス401に表示する表示画像は、表示フレームレート内に含まれる、撮像フレームレートで取り込んだ全てのフレーム(図7に示した動作の一例においては、3フレーム)の撮像画像を合成した合成画像データに応じた画像である。このため、イメージセンサ100から画素信号を取り込んで評価値を生成するための撮像フレームレートと、表示デバイス401に合成画像データを表示する表示フレームレートとが異なるフレームレートであっても、撮像フレームレートで、より多くの評価値を得ることができる。また、表示画像を生成するための合成画像データは、リサイズ(縮小)処理した合成画像データである。このため、撮像装置20では、データバス700のバス帯域の圧迫を軽減することができる。また、表示処理部400が表示画像を生成する際の処理の負荷を低減することができる。
なお、図6および図7に示した撮像装置20による評価値生成および画像表示の動作の一例では、手順1においてAWB評価値生成部241が評価値を生成していない場合の例について説明したが、手順1において、AE評価値生成部231、AWB評価値生成部241、およびAF評価値生成部251が、それぞれの評価値を生成する動作にしてもよい。すなわち、AE評価値、AWB評価値、およびAF評価値を、イメージセンサ100からの画素信号に応じた前処理画像データである、現在のフレームの撮像画像から生成し、合成画像データを、表示デバイス401に表示するための画像データとして使用する動作にしてもよい。
上記に述べたように、本第2の実施形態における撮像装置20でも、第1の実施形態における撮像装置10と同様に、イメージセンサ100から出力される画素信号の撮像フレームレートで評価値を生成する。これにより、本第2の実施形態における撮像装置20でも、第1の実施形態における撮像装置10と同様に、イメージセンサ100の撮像フレームレートを高くすることによってより多くの評価値を得ることができ、撮像装置20における撮影に関する制御を高速化することができる。
また、本第2の実施形態における撮像装置20では、第1の実施形態における撮像装置10と同様に、イメージセンサ100から出力される画素信号に応じた画像データを、フレームの単位で合成する。これにより、本第2の実施形態における撮像装置20でも、第1の実施形態における撮像装置10と同様に、イメージセンサ100の撮像フレームレートと表示デバイス401の表示フレームレートとが異なる場合でも、イメージセンサ100から取り込んだ撮像画像のフレームを間引くことなく、良好な表示画像を表示デバイス401に表示することができる。
また、本第2の実施形態における撮像装置20では、表示処理部400が表示画像を生成する際に用いる画像データを事前にリサイズ(縮小)処理し、リサイズ(縮小)処理した後の画像データをDRAM501に格納する。これにより、本第2の実施形態における撮像装置20では、データバス700のバス帯域の圧迫を軽減することができる。また、表示処理部400が表示画像を生成する際の処理の負荷を低減することができる。
なお、本第2の実施形態における撮像装置20では、図5に示したブロック図のように、セレクタ260と出力DMA部261との間に、1つのリサイズ処理部800が追加された構成について説明した。しかし、撮像装置20に備えるリサイズ処理部は、1つに限定されるものではない。例えば、リサイズ(縮小)処理を行う画像データが複数存在する場合には、図8に示したように、複数のリサイズ処理部を備える構成にすることもできる。
<第2の実施形態の第1の変形例>
図8は、本第2の実施形態における撮像装置20の別の概略構成を示したブロック図である。以下の説明においては、図8に示した撮像装置を、撮像装置21という。撮像装置21は、図5に示した撮像装置20内の撮像処理部200において、リサイズ処理部800と並列に、予め定めたリサイズ処理部800と異なる画像の大きさにリサイズ(縮小)処理を行うリサイズ処理部801を追加したのみである。従って、撮像装置21の動作は、同時に2種類のリサイズ(縮小)処理が行われた画像データ出力される以外は、第2の実施形態の撮像装置20と同様であるため、詳細な説明は省略する。
図8に示した撮像装置21では、リサイズ処理部800およびリサイズ処理部801のそれぞれが、後段の処理で用いる画像の大きさに合わせてリサイズ(縮小)処理した画像データを出力する。そして、出力DMA部261は、リサイズ処理部800およびリサイズ処理部801から入力されたそれぞれの画像データを、順次、DMAによってDRAM501に格納する。これにより、後段の処理では、最適な大きさの画像データを用いて処理を行うことができる。
また、本第2の実施形態における撮像装置20では、表示画像を生成する際に用いる画像データを生成するとき以外は、リサイズ処理部800によるリサイズ(縮小)処理をOFFにする。より具体的には、図6に示した動作の一例における手順2および図7に示した動作の一例における手順3以外は、リサイズ(縮小)処理をOFFにする。これにより、本第2の実施形態における撮像装置20では、合成部224によって各フレームの撮像画像を合成処理する際の画像データは、リサイズ(縮小)されていない画像データとなる。このことにより、本第2の実施形態における撮像装置20では、イメージセンサ100から入力される画素信号に応じた撮像画像の画質を保った状態で、各フレームの撮像画像を合成処理することができる。
ただし、本第2の実施形態における撮像装置20では、図6に示した動作の一例における手順2または図7に示した動作の一例における手順3以外の手順では、データバス700のバス帯域の圧迫を軽減することができていない。このため、図6に示した動作の一例における手順2または図7に示した動作の一例における手順3以外の手順でも、データバス700のバス帯域の圧迫を軽減することが構成として、図9に示したように、リサイズ(拡大)処理するリサイズ処理部を備える構成にすることもできる。
<第2の実施形態の第2の変形例>
図9は、本第2の実施形態における撮像装置20のさらに別の概略構成を示したブロック図である。以下の説明においては、図9に示した撮像装置を、撮像装置22という。撮像装置22は、図5に示した撮像装置20内の撮像処理部200において、入力DMA部270と前処理部220内のセレクタ221との間に、リサイズ処理部900が追加されたのみであり、その他の構成要素は、本第2の実施形態の撮像装置20と同様である。従って、撮像装置22の説明においては、本第2の実施形態の撮像装置20とは異なる構成、および動作のみを説明して、詳細な説明は省略する。
入力DMA部270は、DMAによって、DRAM501に格納されている画像データ(以前のフレームの撮像画像)を、DRAMコントローラ500を介して取得し(読み出し)、取得した画像データをリサイズ処理部900に出力する。
リサイズ処理部900は、入力DMA部270から入力された画像データを、撮像IF部210が出力する、イメージセンサ100から入力された画素信号に応じた画像データ(撮像画像)の画像の大きさにリサイズ(拡大)する。そして、リサイズ処理部900は、リサイズ(拡大)した画像データを、前処理部220に出力する。なお、リサイズ処理部900によるリサイズ(拡大)の処理の方法は、例えば、表示処理部400が行うリサイズ(縮小)の処理と逆の方法と同様であるため、詳細な説明は省略する。
なお、リサイズ処理部900は、入力DMA部270から入力された画像データに対してリサイズ(拡大)処理を施すか否かを切り換える、すなわち、リサイズ(拡大)処理をONまたはOFFにする機能を備えている。リサイズ処理部900によるリサイズ(拡大)処理のONまたはOFFの切り換えは、撮像装置20における評価値生成および画像表示の動作の手順に毎に、CPU600が制御する。
セレクタ221は、撮像IF部210から入力された画像データ(現在のフレームの撮像画像)、およびリサイズ処理部900から入力された画像データ(以前のフレームの撮像画像)の出力先を選択する。より具体的には、セレクタ221は、撮像IF部210から入力された画像データを、処理部222aまたはディレイ部223aのいずれか一方に出力する。また、セレクタ221は、リサイズ処理部900から入力された画像データを、処理部222aまたはディレイ部223aのいずれか一方に出力する。
そして、撮像装置22の動作では、撮像装置20による評価値生成および画像表示の動作において、リサイズ処理部800によるリサイズ(縮小)処理をOFFにしていた手順で、リサイズ(縮小)処理をONにし、リサイズ処理部900によるリサイズ(拡大)処理もONにする。
より具体的には、例えば、図7に示した動作の一例において、手順1および手順2の両方ともリサイズ処理部800によるリサイズ(縮小)処理をONにし、リサイズ処理部900によるリサイズ(拡大)処理もONにする。これにより、出力DMA部261がDRAM501に格納する、図7(a)に示した画像サイズ261o1の大きさ(手順1参照)、および図7(b)に示した画像サイズ261o2の大きさ(手順2参照)が、図7(c)に示した画像サイズ261oSの大きさ(手順3参照)と同じ大きさになる。また、入力DMA部270がDRAM501から取得する(読み出す)、図7(b)に示した画像サイズ270i1の大きさ(手順2参照)、および図7(c)に示した画像サイズ270i2の大きさ(手順3参照)が、図7(c)に示した画像サイズ261oSの大きさ(手順3参照)と同じ大きさになる。
これにより、図9に示した撮像装置22では、撮像装置20においてデータバス700のバス帯域の圧迫を軽減することができていなかった動作においても、データバス700上に同時期に存在する画像データの大きさを、リサイズ(縮小)処理した後の画像データの大きさにすることができる。このことにより、図9に示した撮像装置22では、常にデータバス700のバス帯域の圧迫を軽減することができる。より具体的には、図6に示した動作の一例における手順2および図7に示した動作の一例における手順3以外の手順でも、データバス700上に同時期に存在する画像データの大きさを、図6(b)および図7(c)に示した画像サイズ261oSの大きさにすることができ、データバス700のバス帯域の圧迫を軽減することができる。
上記に述べたとおり、本発明を実施するための形態では、撮像装置の撮像処理部内に、DRAMに格納された画像データを取得する(読み出す)入力DMA部(本実施形態においては、入力DMA部270)を設けた。また、撮像処理部に備えた評価値生成部(本実施形態においては、AE評価値生成部231、AWB評価値生成部241、およびAF評価値生成部251)のそれぞれの前段(画像データの入力部)に、対応する評価値生成部に入力する画像データを選択するセレクタ(本実施形態においては、セレクタ230、セレクタ240、およびセレクタ250)を設けた。また、撮像処理部に備えた前処理部(本実施形態においては、前処理部220)内に、現在のフレームの画像データと以前のフレームの画像データとを合成した合成画像データを生成する合成部(本実施形態においては、合成部224)を設けた。
これにより、本発明を実施するための形態によれば、イメージセンサ(本実施形態においては、イメージセンサ100)から画素信号を取り込んで評価値を生成するための画像データのフレームレート(撮像フレームレート)を高くすることによって、より多くの評価値を得ることができる撮像装置を実現することができる。そして、この場合でも、イメージセンサから得られた各フレームの撮像画像を間引くことなく、すなわち、画像データの情報を減らすことなく、撮像装置(本実施形態においては、撮像装置10および撮像装置20)に備えた表示デバイス(本実施形態においては、表示デバイス401)が画像を表示することができるフレームレート(表示フレームレート)で、表示デバイスに画像を表示することができる。
また、本発明を実施するための形態によれば、評価値生成部に入力して評価値を生成する画像データを、リアルタイムに入力される画像データ、DRAMに格納された画像データ、または各フレームの画像データを合成した画像データのいずれか一方に切り換えることができる。これにより、本発明を実施するための形態によれば、同じ評価値生成部を用いて(同じ評価値生成部を流用して)、様々な画像データに基づいたそれぞれの評価値を生成することができる。
より具体的には、例えば、第1の実施形態の撮像装置10では、CPU600がセレクタ221を制御することによって、処理部222a〜222cおよびディレイ部223a〜223cに転送する画像データを選択する。また、CPU600がセレクタ230、セレクタ240、セレクタ250、およびセレクタ260を制御することによって、AE評価値生成部231、AWB評価値生成部241、AF評価値生成部251、および出力DMA部261に入力する画像データを選択する。これにより、第1の実施形態の撮像装置10では、評価値を生成する画像データや、DRAM501に格納する画像データを切り換えることができる。すなわち、第1の実施形態の撮像装置10では、イメージセンサ100から出力される画素信号に応じた現在のフレームの画像データや、DRAMコントローラ500を介して取得し(読み出し)した以前のフレームの画像データや、現在のフレームの画像データと以前のフレームの画像データとを合成した画像データに基づいて、AE評価値、AWB評価値、およびAF評価値を生成することができる。これにより、適切な画像データから、必要なタイミングで、撮影に関するAE、AWB、およびAFの制御を行うための評価値を得ることができる。例えば、高速化の必要がない制御は、合成画像データに基づいて、表示フレームレートで評価値を得ることによって、撮像装置10の消費電力が必要以上に高くなることなく、適切な制御を行うことができる。
また、本発明を実施するための形態によれば、撮像処理部内に、画像データをリサイズ(縮小)するリサイズ処理部(本実施形態においては、リサイズ処理部800)を設けた。これにより、本発明を実施するための形態によれば、イメージセンサから入力される画素信号に応じた撮像画像を表示デバイスに順次表示するときに、データバスのバス帯域の圧迫を軽減することができる。このことにより、表示処理部が表示画像を生成する際の処理の負荷を低減することができる。特に、本実施形態においては、入力DMA部270がDRAM501に格納されている撮像画像を取得し(読み出し)、出力DMA部261が、合成画像データをDRAM501に格納するとき、2フレーム分の撮像画像の画像データが、データバス700上に同時期に存在するが、同時期に存在する2フレーム分の撮像画像の画像データの大きさを小さくすることによって、データバス700のバス帯域の圧迫を軽減することができる。
なお、本実施形態においては、例えば、撮像装置10において、撮像IF部210が現在のフレームの撮像画像と以前のフレームの撮像画像とを、同じタイミングで処理している。これは、前処理部220内に設けたセレクタ221とディレイ部223a〜223cとによるものである。また、撮像IF部210が異なるタイミングで取り込んだ異なる画像データを同時に処理する方法として、例えば、入力DMA部270がDRAM501に格納されている以前のフレームの撮像画像を取得する(読み出す)タイミングを、CPU600が制御する方法も考えられる。しかし、CPU600がリアルタイムに撮像IF部210から入力される現在のフレームの撮像画像と同じタイミングに制御するのは容易ではない。撮像装置10では、前処理部220内にディレイ部223a〜223cを設けているため、容易に、以前のフレームの撮像画像のタイミングを、リアルタイムに取り込まれる現在のフレームの撮像画像のタイミングと同じタイミングにすることができる。
より具体的には、例えば、撮像装置10において、セレクタ221によって、リアルタイムに撮像IF部210から入力されている現在のフレームの撮像画像を処理部222aに転送し、入力DMA部270から入力された、以前に撮像IF部210が取り込んだ以前のフレームの撮像画像をディレイ部223aに転送する。そして、ディレイ部223a〜223cが、以前に撮像IF部210が取り込んだ以前のフレームの撮像画像を、処理部222a〜222cによってリアルタイムに前処理(補正処理)されている現在のフレームの撮像画像と同じタイミングにする。すなわち、合成部224には、同じタイミングで合成処理する2つの画像データが入力される。これにより、合成部224は、撮像IF部210が異なるタイミングで取り込んだ異なる画像データを、合成処理することができる。
また、本実施形態においては、前処理部220内に備えた処理部222a〜222cのそれぞれに対応する3つのディレイ部223a〜223cを設け、それぞれのディレイ部223a〜223cが、入力された画像データを、対応する処理部222a〜222cの入力から出力までの遅延時間と同じ時間だけ遅らせて出力する場合について説明した。しかし、ディレイ部の構成は、本発明を実施するための形態に限定されるものではない。例えば、ディレイ部223a〜223cの代わりに、入力された画像データを、処理部222a〜222cによる前処理(補正処理)の合計の遅延時間と同じ時間だけ遅らせて出力するディレイ部を1つのみ設ける構成にすることもできる。
また、本実施形態においては、前処理部220内にディレイ部223a〜223cを設けた場合について説明した。しかし、前処理部220内の構成は、本発明を実施するための形態に限定されるものではない。例えば、撮像IF部210がリアルタイムに取り込んで出力した画像データと、入力DMA部270がDRAM501に格納されている画像データを取得する(読み出す)タイミングとを、同じタイミングに制御することができる場合には、前処理部220内にディレイ部223a〜223cを設けない構成にすることもできる。この場合には、セレクタ221が、画像データをディレイ部223aに転送する代わりに、入力された画像データを、合成部224およびセレクタ230と、セレクタ240と、セレクタ250と、セレクタ260とのそれぞれに出力する構成になる。これにより、セレクタ221が、画像データをセレクタ230と、セレクタ240と、セレクタ250と、セレクタ260とに出力する場合には、セレクタ221が画像データを出力してから、それぞれの評価値生成部が評価値の生成を終了するまでの時間を短縮することができる。
また、本実施形態においては、前処理部220内に、入力された画像データを、処理部222a〜222cのそれぞれの入力から出力までの遅延時間と同じ時間だけ遅らせて出力するディレイ部223a〜223cを設けた場合について説明した。しかし、前処理部220内の構成は、本発明を実施するための形態に限定されるものではない。例えば、ディレイ部223a〜223cの代わりに、処理部222a〜222cをもう1組設けた構成にすることもできる。この場合には、リアルタイムに入力される画像データと、DRAMに格納された画像データとの両方に、同時に前処理(補正処理)を施すことができる。なお、この場合には、前処理部の回路規模が増大してしまうことになるが、回路規模の増大よりも同時に異なる画像データに対して前処理(補正処理)を行えることが要求される撮像装置において有用であると考えられる。
以上、本発明の実施形態について、図面を参照して説明してきたが、具体的な構成はこの実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲においての種々の変更も含まれる。