(57)【要約】【課題】  画像データを一時的に格納するために必要なメモリ量を削減するとともに、画像処理時間の遅延を抑止できる画像信号処理装置及び画像信号処理方法を提供すること。【解決手段】  本発明にかかる画像信号処理装置１００は、イメージセンサ１１０から得られる撮像データに対しライン単位で画像処理を行いＹＵＶデータを生成するとともに、ＹＵＶデータをブロック単位まで生成する毎にブロック同期信号を出力するフィルタ１０２と、ＹＵＶデータを生成順に格納するバッファメモリ１０４と、ブロック同期信号に同期して、ＹＵＶデータに対しブロック単位で画像処理を行いＪＰＥＧデータを生成するＪＰＥＧ回路１０３とを備えるものである。【選択図】  図１
2007088806.tif 000002
【特許請求の範囲】
【請求項１】
撮像素子から得られる撮像データに対し第１のデータ単位で画像処理を行い第１の画像データを生成するとともに、前記第１の画像データを第２のデータ単位まで生成する毎に同期信号を出力する第１の画像処理部と、
前記生成された第１の画像データを生成順に格納する画像データ格納部と、
前記出力された同期信号に同期して、前記格納された第１の画像データに対し前記第２のデータ単位で画像処理を行い第２の画像データを生成する第２の画像処理部とを備える、
画像信号処理装置。
【請求項２】
前記第２のデータ単位は、１フレームよりも小さい単位である、
請求項１に記載の画像信号処理装置。
【請求項３】
前記第１のデータ単位は、複数の画素を含む１ラインであり、
前記第２のデータ単位は、複数のラインを含む単位である、
請求項１又は２に記載の画像信号処理装置。
【請求項４】
前記第２のデータ単位は、Ｎ行Ｍ列（但しＮ、Ｍは正の整数）の画素からなる１ブロックである、
請求項１乃至３のいずれか一つに記載の画像信号処理装置。
【請求項５】
前記第１の画像処理部は、前記第２のデータ単位の第１の画像データを前記画像データ格納部に格納した後に、前記同期信号を出力する、
請求項１乃至４のいずれか一つに記載の画像信号処理装置。
【請求項６】
前記第２の画像処理部の画像処理は、前記第１の画像処理部の画像処理よりも処理速度が早い、
請求項１乃至５のいずれか一つに記載の画像信号処理装置。
【請求項７】
前記第１及び第２の画像処理部と前記画像データ格納部は、それぞれバスに共通接続されており、
前記第１の画像処理部は、前記バスを介して前記第１の画像データを前記画像データ格納部に格納し、
前記第２の画像処理部は、前記バスを介して前記第１の画像データを前記画像データから取得する、
請求項１乃至６のいずれか一つに記載の画像信号処理装置。
【請求項８】
前記同期信号は、前記第１の画像処理部から前記第２の画像処理部へ前記バスを介さずに直接出力されている、
請求項７に記載の画像信号処理装置。
【請求項９】
前記第１の画像処理部は、前記第１のデータ単位毎に前記第１の画像データを前記画像データ格納部に格納し、
前記第２の画像処理部は、前記第２のデータ単位毎に前記第１の画像データを前記画像データ格納部から取得する、
請求項１乃至８のいずれか一つに記載の画像信号処理装置。
【請求項１０】
前記第１の画像処理部は、前記第１のデータ単位の第１の画像データを複数に分けて前記画像データ格納部に格納する、
請求項９に記載の画像信号処理装置。
【請求項１１】
前記画像データ格納部は、第１及び第２の格納領域を有し、
前記第１の画像処理部は、前記第１又は第２の格納領域に交互に前記第１の画像データを格納し、
前記第２の画像処理部は、前記格納が完了している第１又は第２の格納領域から前記第１の画像データを取得する、
請求項１乃至１０のいずれか一つに記載の画像信号処理装置。
【請求項１２】
前記第１の画像処理部の画像処理は、前記撮像データの色の形式を変換する処理であり、
前記第２の画像処理部の画像処理は、前記第１の画像データを圧縮する処理である、
請求項１乃至１１のいずれか一つに記載の画像信号処理装置。
【請求項１３】
撮像素子から得られる撮像データに対し第１のデータ単位で画像処理を行い第１の画像データを生成するとともに、前記第１の画像データを第２のデータ単位まで生成する毎に同期信号を出力し、
前記生成された第１の画像データを生成順に格納し、
前記出力された同期信号に同期して、前記格納された第１の画像データに対し前記第２のデータ単位で画像処理を行い第２の画像データを生成する、
画像信号処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像信号処理装置及び画像信号処理方法に関し、特に、撮像素子から得られる画像信号を処理する画像信号処理装置及び画像信号処理方法に関する。
【背景技術】
【０００２】
従来からデジタルカメラなどの撮像装置では、イメージセンサなどの撮像素子によって被写体を撮像して得られた画像信号（撮像データ）を、表示装置に表示したりメモリカードなどの記録媒体に記録するものが広く利用されている。通常、記録媒体に画像信号を記録するとき、１つの記録媒体に対して多くの画像信号が記録できるように画像信号を圧縮してデータ量を減らしている。例えば、デジタルカメラでは、ＪＰＥＧ（Joint Photographic Experts Group）と呼ばれる規格にもとづいて、画像信号の圧縮が行われている。
【０００３】
このような画像信号の圧縮を行う画像信号処理装置が、例えば、特許文献１に記載されている。図７のブロック図は、特許文献１と同様の画像信号処理装置を含む撮像装置の構成を示している。
【０００４】
図に示されるように、この従来の撮像装置は、被写体を撮像して撮像データを生成するイメージセンサ７１０と、撮像データに対し圧縮などの画像処理を行う画像信号処理装置７００を備えている。従来の画像信号処理装置７００は、各部の制御を行うＣＰＵ７０１、撮像データからＹＵＶデータを生成するフィルタ７０２、ＹＵＶデータからＪＰＥＧデータを生成するＪＰＥＧ回路７０３、ＹＵＶデータを一時的に格納するバッファメモリ７０４を備えており、これらはそれぞれバス７０６に共通に接続されている。
【０００５】
フィルタ７０２は、イメージセンサ７１０からライン単位に撮像データが入力され、これをライン単位に処理しＹＵＶデータを生成する。ＪＰＥＧ回路７０３は、ライン単位ではなく、縦×横が８×８画素のブロック単位に処理しＪＰＥＧデータを生成する。フィルタ７０２とＪＰＥＧ回路７０３で処理単位が異なるため、フィルタ７０２が一度バッファメモリに１フレーム分のデータを格納してから、ＪＰＥＧ回路７０３が１フレーム分の処理を行っている。
【０００６】
図８は、従来の画像信号処理装置７００の処理の流れを示しており、撮像データからＪＰＥＧデータを生成する処理を示している。
【０００７】
まず、ＣＰＵ７０１は、フィルタ７０２とＪＰＥＧ回路７０３を動作させるために、フィルタ７０２の設定を行い（Ｓ８０１）、ＪＰＥＧ回路７０３の設定を行う（Ｓ８０２）。次いで、ＣＰＵ７０１は、フィルタ７０２を起動し（Ｓ８０３）、フィルタ７０２の処理の完了を待つ（Ｓ８０４）。
【０００８】
Ｓ８０３でＣＰＵ７０１から起動されると、フィルタ７０２は、イメージセンサ７１０から入力される撮像データを１フレーム処理する（Ｓ８０５）。このとき、フィルタ７０２は、ライン毎に撮像データをＲＧＢデータに変換した後、ＲＧＢデータをＹＵＶデータに変換して、１フレーム分のＹＵＶデータをバッファメモリ７０４に格納する。
【０００９】
次いで、フィルタ７０２は、１フレームの処理完了をＣＰＵ７０１へ通知する（Ｓ８０６）。次いで、ＣＰＵ７０１は、ＪＰＥＧ回路７０３を起動し（Ｓ８０７）、ＪＰＥＧ回路７０３の処理の完了を待つ（Ｓ８０８）。
【００１０】
Ｓ８０７でＣＰＵ７０１から起動されると、ＪＰＥＧ回路７０３は、ＹＵＶデータを１フレーム圧縮処理する（Ｓ８０９）。このとき、ＪＰＥＧ回路７０３は、１フレーム分のＹＵＶデータをバッファメモリ７０４から取得し、ブロック毎に圧縮し、１フレーム分のＪＰＥＧデータを生成する。次いで、ＪＰＥＧ回路７０３は、１フレームの処理完了をＣＰＵ７０１へ通知する（Ｓ８１０）。こうして、１フレームのＪＰＥＧファイルが得られる。
【００１１】
尚、その他の従来の画像信号処理装置として特許文献２，３が知られている。特許文献２は、バッファメモリに所定のサイズまでデータが書き込まれたときに、データの入力を停止するものである。特許文献３は、バッファメモリのメモリコントローラが書き込みアドレスを監視することで、所定の単位毎に処理を行うものである。特許文献２，３では、画像処理回路以外のイメージセンサ制御回路やメモリコントローラなどの回路に対して特殊な機能を作りこむ必要があり回路が複雑になってしまう。また、処理単位が変わった場合、画像処理回路以外の回路に対しても修正を行う必要があるため汎用性に欠ける。
【特許文献１】特開２０００−２３０８３号公報
【特許文献２】特開２００１−２８５７７６号公報
【特許文献３】特開２００５−１８２３８４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上記のように、従来の画像信号処理装置では、ライン単位に処理するフィルタとブロック単位に処理するＪＰＥＧ回路とで処理単位が異なるため、フィルタで１フレームの画像データをバッファメモリに格納してから、ＪＰＥＧ回路で圧縮処理を開始している。したがって、従来の画像信号処理装置では、少なくとも１フレーム分の画像データを格納できる容量のバッファメモリが必要になるとともに、画像処理時間が１フレーム分以上遅延するという問題点があった。
【００１３】
近年、イメージセンサの画素数が増加しており、１フレームの画像信号のデータ量が増大している。このため、１フレーム分のメモリ量増大や処理遅延は、より大きな問題となってきている。例えば、１フレームが２０００×１６００画素の画像データを処理するためには、バッファメモリに１６００ライン分のメモリ量が必要となり、１６００ライン格納する期間の処理遅延が生じる。メモリ量の増大は、小型化や低価格化が進むデジタルカメラにおいて問題となり、画像処理の遅延は、デジタルカメラで連続して撮像するために高速性が必要であり問題となる。
【課題を解決するための手段】
【００１４】
本発明にかかる画像信号処理装置は、撮像素子から得られる撮像データに対し第１のデータ単位で画像処理を行い第１の画像データを生成するとともに、前記第１の画像データを第２のデータ単位まで生成する毎に同期信号を出力する第１の画像処理部と、前記生成された第１の画像データを生成順に格納する画像データ格納部と、前記出力された同期信号に同期して、前記格納された第１の画像データに対し前記第２のデータ単位で画像処理を行い第２の画像データを生成する第２の画像処理部とを備えるものである。
【００１５】
この画像信号処理装置によれば、第２の画像処理部の処理単位に同期して処理を行うことにより、第１の画像処理部と第２の画像処理部で処理単位が異なる場合でも、画像データ格納部に１フレーム分の画像データを格納する必要がなくなる。したがって、画像データ格納部のメモリ量を削減することができるとともに、画像処理時間の遅延を抑止することができる。
【００１６】
本発明にかかる画像信号処理方法は、撮像素子から得られる撮像データに対し第１のデータ単位で画像処理を行い第１の画像データを生成するとともに、前記第１の画像データを第２のデータ単位まで生成する毎に同期信号を出力し、前記生成された第１の画像データを生成順に格納し、前記出力された同期信号に同期して、前記格納された第１の画像データに対し前記第２のデータ単位で画像処理を行い第２の画像データを生成するものである。
【００１７】
この画像信号処理方法によれば、第２の画像データの処理単位に同期して処理を行うことにより、第１の画像データの処理と第２の画像データの処理で処理単位が異なる場合でも、１フレーム分の画像データを格納する必要がなくなる。したがって、画像データを格納するためのメモリ量を削減することができるとともに、画像処理時間の遅延を抑止することができる。
【発明の効果】
【００１８】
本発明によれば、画像データを一時的に格納するために必要なメモリ量を削減するとともに、画像処理時間の遅延を抑止できる画像信号処理装置及び画像信号処理方法を提供することができる。
【発明を実施するための最良の形態】
【００１９】
発明の実施の形態１．
まず、本発明の実施の形態１にかかる画像信号処理装置について説明する。本実施形態にかかる画像信号処理装置は、ライン単位に画像処理するフィルタとブロック単位に画像処理するＪＰＥＧ回路とがバッファメモリを介して処理する場合に、ブロック単位に同期を取りながらデータを処理することを特徴としている。
【００２０】
図１を用いて、本実施形態にかかる撮像装置の構成について説明する。図に示されるように、この撮像装置は、イメージセンサ１１０、画像信号処理装置１００、表示装置１２０、記憶装置１３０を備えている。
【００２１】
イメージセンサ（撮像素子）１１０は、被写体を撮像する半導体素子である。イメージセンサ１１０は、被写体から受光する光を光電変換し撮像データを生成する。実際には、イメージセンサ１１０から出力される信号は、アナログ信号の場合もあるが、不図示のＡ／Ｄ変換器によってデジタルの撮像データに変換されている。イメージセンサ１１０としては、例えば、ＣＣＤ（Charge Coupled Devices）やＣＭＯＳ（Complementary Metal Oxide Semiconductor）などがある。
【００２２】
例えば、イメージセンサ１１０では、図２（ａ）に示すようなベイヤー配列の撮像データが生成される。そして、この撮像データは、１ライン毎に画像信号処理装置１００へ出力される。図の例では、１ライン目は「Ｒ（赤）Ｇ（緑）」を繰り返したデータとなり、２ライン目は「Ｇ（緑）Ｂ（青）」を繰り返したデータとなる。
【００２３】
表示装置１２０は、ＬＣＤ（Liquid Crystal Display）などであり、画像信号処理装置１００で画像処理されたＹＵＶデータを画像として画面に表示する。記憶装置１３０は、メモリカードなどであり、画像信号処理装置１００で画像処理されたＪＰＥＧデータを記憶する。
【００２４】
画像信号処理装置１００は、イメージセンサ１１０から入力される撮像データに対し変換・圧縮などの画像処理を行う。例えば、画像信号処理装置１００は、撮像データをＹＵＶデータに変換して出力したり、ＪＰＥＧデータに圧縮して出力する。画像信号処理装置１００は、１チップの半導体装置で構成されている。特に、本実施形態では、後述するようにバッファメモリ１０４のメモリ量を削減できることから１チップ化が容易である。
【００２５】
図１に示されるように、画像信号処理装置１００は、ＣＰＵ１０１、フィルタ１０２、ＪＰＥＧ回路１０３、バッファメモリ１０４、出力回路１０５を備えており、これらはそれぞれバス１０６に共通に接続されている。
【００２６】
ＣＰＵ１０１は、画像信号処理装置１００の各部の動作を制御する制御部である。例えば、バッファメモリ１０４やその他のメモリに、制御プログラムが格納されており、ＣＰＵ１０１がこの制御プログラムにしたがって処理を行い、ハードウェアと協働することによって各機能が実現されている。ＣＰＵ１０１は、バス１０６を介してフィルタ１０２やＪＰＥＧ回路１０３を起動したり、割り込みなどによりフィルタ１０２やＪＰＥＧ回路１０３からの完了通知を受け取る。
【００２７】
フィルタ１０２は、イメージセンサ１１０から入力される撮像データに画像処理を行いＹＵＶデータを生成し、生成したＹＵＶデータをバス１０６を介してバッファメモリ１０４に格納する。フィルタ１０２は、図２（ｂ）に示すようなライン単位で画像処理を行う。つまり、フィルタ１０２は、１ライン目の先頭から末尾まで処理した後、次の２ライン目の先頭から末尾まで処理し、これを１フレームの最後まで繰り返す。フィルタ１０２は、イメージセンサ１１０から撮像データが入力されると、入力されたライン順にＹＵＶデータに変換し、生成したＹＵＶデータをライン単位でバッファメモリ１０４に格納する。さらにフィルタ１０２は、ＹＵＶデータの生成がＪＰＥＧ回路１０３の処理単位であるブロックに達する毎にブロック同期信号をＪＰＥＧ回路１０３へ出力する。すなわち、フィルタ１０２は、撮像データに対し第１のデータ単位（ライン単位）で画像処理（ＹＵＶ変換処理）を行い第１の画像データ（ＹＵＶデータ）を生成するとともに、第１の画像データを第２のデータ単位（ブロック単位）まで生成する毎に同期信号を出力する第１の画像処理部である。
【００２８】
ＪＰＥＧ回路１０３は、バッファメモリ１０４からバス１０６を介してＹＵＶデータを取得し、取得したＹＵＶデータに対しＪＰＥＧの規格にしたがった圧縮処理を行い、ＪＰＥＧデータを生成する。また、ＪＰＥＧ回路１０３は、バス１０６を介して、生成したＪＰＥＧデータをバッファメモリ１０４に格納したり、出力回路１０５から出力したりする。ＪＰＥＧ回路１０３は、図２（ｃ）に示すようなブロック単位で画像処理を行う。つまり、ＪＰＥＧ回路１０３は、１ブロック目の先頭から末尾まで処理した後、次の２ブロック目の先頭から末尾まで処理し、これを１フレームの最後まで繰り返す。１ブロックは、ＪＰＥＧの最小処理単位（MCU:Minimum Coded Unit）である。１ブロックは、１フレームよりも小さく、複数のラインを含んでいる。特に１ブロックは、Ｎ行Ｍ列（但しＮ、Ｍは正の整数）であり、例えば、８×８の画素から構成されている。ＪＰＥＧ回路１０３は、フィルタ１０２からブロック同期信号を受け取ると、ブロック単位にＹＵＶデータを取得し、取得したブロック毎にＪＰＥＧデータを生成する。すなわち、ＪＰＥＧ回路１０３は、ブロック同期信号に同期して、格納された第１の画像データ（ＹＵＶデータ）に対し第２のデータ単位（ブロック単位）で画像処理（ＪＰＥＧ生成処理）を行い第２の画像データ（ＪＰＥＧデータ）を生成する第２の画像処理部である。
【００２９】
ブロック同期信号で同期して処理するために、ＪＰＥＧ回路１０３の処理が、フィルタ１０２の処理よりも高速であることが好ましい。例えば、フィルタ１０２が８ラインを処理する時間よりも、ＪＰＥＧ回路１０３が複数ブロックを含む８ラインを処理する時間の方が短い。つまり、フィルタ１０２とＪＰＥＧ回路１０３は、処理単位が異なるとともに処理速度も異なっている。ＪＰＥＧ回路１０３の処理速度がフィルタ１０２の処理速度よりも遅い場合には、バッファメモリ１０４の処理待ちのデータが新たなデータで上書きされないようにする必要がある。
【００３０】
バッファメモリ１０４は、フィルタ１０２の生成したＹＵＶデータ（第１の画像データ）を一時的に格納する画像データ格納部である。例えば、バッファメモリ１０４は、データを記憶するメモリと、メモリに対しデータの書き込み／読み出しを制御するメモリコントローラから構成されている。メモリは、ＳＤＲＡＭ（Synchronous DRAM）やＳＲＡＭ（Static Random Access Memory）などである。
【００３１】
バッファメモリ１０４の記憶領域（メモリマップ）は、図３のように構成されている。バッファメモリ１０４は、ＹＵＶデータを格納するための２つのバッファ領域（格納領域）Ａ，Ｂを有している。バッファ領域Ａ，Ｂのバッファサイズは、ＪＰＥＧ回路１０３の処理単位であるブロックのサイズ、つまり、フィルタ１０２がブロック同期信号出力するサイズに対応している。例えば、バッファ領域Ａ，Ｂは、それぞれ８ラインのＹＵＶデータ、合計で１６ラインのＹＵＶデータを格納できるサイズである。
【００３２】
フィルタ１０２は、バッファ領域Ａとバッファ領域Ｂに交互にＹＵＶデータを格納する。つまり、フィルタ１０２は、バッファ領域Ａ→Ｂ→Ａの順に繰り返しライト動作を行う。そして、ＪＰＥＧ回路１０３は、バッファ領域Ａ又はＢのうち、格納が完了している領域からＹＵＶデータを取得する。つまり、ＪＰＥＧ回路１０３は、フィルタ１０２に対し８ライン遅れで、バッファ領域Ａ→Ｂ→Ａの順でアクセスする。これにより、フィルタ１０２がバッファ領域Ｂに転送している間にＪＰＥＧ回路１０３がバッファ領域ＡのＹＵＶデータを全て処理し、フィルタ１０２のバッファ領域Ｂの転送が終わりバッファ領域Ａの転送を開始する頃にはバッファ領域Ａのデータは全て処理済みなので上書きすることができる。フィルタ１０２は、バッファ領域Ｂの転送が完了したタイミングでブロック同期信号を出力するので、ＪＰＥＧ回路１０３は、バッファ領域Ｂに処理可能なＹＵＶデータがそろったことを判断しバッファ領域Ｂのデータ処理を行う。
【００３３】
図１で、出力回路１０５は、画像信号処理装置１００で生成されたＹＵＶデータやＪＰＥＧデータを、表示装置１２０や記憶装置１３０へ出力する。例えば、この撮像装置がデジタルカメラの場合、ユーザによるシャッターボタンの操作などにしたがって、出力回路１０５からＹＵＶデータもしくはＪＰＥＧデータが出力される。ユーザがシャッターボタンを押下する前は、フィルタ１０２の生成するＹＵＶデータが出力回路１０５から表示装置１２０へ出力されてモニタ表示される。そして、ユーザがシャッターボタンを押下すると、ＣＰＵ１０１に制御信号が入力され、ＣＰＵ１０１からの指示によりフィルタ１０２の生成したＹＵＶデータがバッファメモリ１０４に格納され、ＪＰＥＧ回路１０３でＪＰＥＧデータが生成されて、ＪＰＥＧデータがバッファメモリ１０４に格納される。出力回路１０５は、生成されたＪＰＥＧデータを取得し記憶装置１３０へ出力して、ＪＰＥＧファイルがメモリカードなどに格納される。
【００３４】
バス１０６は、ＡＨＢバスやＰＣＩ（Peripheral Components Interconnect）バスなどであり、マルチバスマスタ構成の同期式バスである。バス１０６は、大量なデータを高速にバースト転送可能なバスであり、汎用的なバスである。汎用的なバスであれば、バッファメモリ１０４などを汎用メモリで構成することができ、コスト削減を図ることができる。
【００３５】
図示を省略しているが、バス１０６には、バスアービタ（バス調停部）が設けられており、バスアービタによってバスマスタのバスアクセスが調停されている。ＣＰＵ１０１、フィルタ１０２、ＪＰＥＧ回路１０３、出力回路１０５は、それぞれバスマスタとしてバス１０６にアクセスする。各バスマスタは、バスアービタに対してバスアクセス要求を行い、バスアービタで調停されバスマスタにバスアクセス許可が通知され、バスアクセスが可能となる。バスアクセス要求の際に、すでにバスがアクセス中の場合には、そのアクセスが終了してからバスアクセスが許可される。
【００３６】
次に、図４を用いて、本実施形態にかかる画像信号処理装置の構成について説明する。図では、ＣＰＵ１０１や出力回路１０５の図示を省略しており、ここでは、フィルタ１０２とＪＰＥＧ回路１０３の構成について説明する。
【００３７】
フィルタ１０２は、フィルタ処理部２１０とバスＩＦ（インタフェース）部２２０を備えている。バスＩＦ部２２０は、バスアービタとの間でバスアクセス要求やアクセス許可をやり取りし、バス１０６を介したデータの入出力を制御する。バスＩＦ部２２０は、フィルタ処理部２１０が生成したライン単位のＹＵＶデータをバス１０６を介してバッファメモリ１０４へ出力するとともに、ブロック同期信号をＪＰＥＧ回路１０３へ直接出力する。バスＩＦ部２２０は、ＹＵＶデータをライン毎に転送してその数をカウントし、ＹＵＶデータの転送が８ラインに達すると、ブロック同期信号を出力する。ブロック同期信号は、バス１０６やＣＰＵ１０１などを介さずにＪＰＥＧ回路１０３へ出力するため、転送するための手順も不要であり、転送待ちも生じないので、タイミングの遅延が少ない。
【００３８】
フィルタ処理部２１０は、撮像データに対し変換処理を行い、ＹＵＶデータを生成する。フィルタ処理部２１０は、カラーバランス部２１１、ラインバッファ部２１２、画素補間部２１３、ＹＵＶ変換部２１４を備えている。
【００３９】
カラーバランス部２１１は、イメージセンサ１１０の撮像データがライン単位に入力され、この撮像データのホワイトバランスを調整する。カラーバランス部２１１は、撮像データのＲＧＢの信号レベルを調整し、調整した撮像データをライン単位に出力する。
【００４０】
ラインバッファ部２１２は、カラーバランス部２１１で処理された撮像データを３ラインまとめて出力する。ラインバッファ部２１２は、次段の画素補間部２１３で３ライン処理するために、カラーバランス部２１１から３ライン出力されるまで撮像データを蓄積し、蓄積した撮像データを一度に出力する。
【００４１】
画素補間部２１３は、ラインバッファ部２１２から出力された３ラインの撮像データに対し、３×３画素フィルタによって処理しＲＧＢデータを出力する。画素補間部２１３は、各画素に隣接する画素のデータに基づいて必要な色のデータを生成する。例えば、３×３画素の中心に位置するＢの画素について、Ｂの周辺に位置するＲやＧの画素のデータに基づいて、ＲやＧのデータを生成する。画素補間部２１３によって各画素のデータが補間されてＲＧＢデータとなり、ＲＧＢデータがライン単位に出力される。
【００４２】
ＹＵＶ変換部２１４は、画素補間部２１３から出力されたライン単位のＲＧＢデータをＹＵＶデータに変換する。ＹＵＶ変換部２１４は、ＲＧＢデータをＹ信号（輝度信号）、Ｕ信号（輝度信号と青色成分の差）、Ｖ信号（輝度信号と赤色成分の差）を含むＹＵＶデータに変換する。ＹＵＶデータの形式によって、Ｙ信号とＵ信号とＶ信号のデータ量が異なる。例えば、ＹＵＶ４４４形式では、１つのＹ信号に対し１つのＵ信号とＶ信号が対応しており、ＹＵＶ４２２形式では、２つのＹ信号に対し１つのＵ信号とＶ信号が対応しており、ＹＵＶ４２０形式では、４つのＹ信号に対し１つのＵ信号とＶ信号が対応している。バッファメモリ１０４のバッファサイズをＹＵＶデータの８ライン分とした場合、実際のバッファサイズは、ＹＵＶ形式に応じたＹ信号とＵ信号とＶ信号を含む８ライン分のサイズとなる。
【００４３】
ＪＰＥＧ回路１０３は、ＪＰＥＧ処理部３１０とバスＩＦ部３２０を備えている。バスＩＦ部３２０は、バスＩＦ部２２０と同様に、バス１０６を介したデータの入出力を制御する。バスＩＦ部３２０は、フィルタ１０２からブロック同期信号を受けると、バッファメモリ１０４に格納されているＹＵＶデータをブロック単位にバス１０６を介して取得して、ＪＰＥＧ処理部３１０へ出力する。例えば、バスＩＦ部３２０は、バッファメモリに格納されている８ラインのＹＵＶデータを８×８画素のブロックに区切り、ブロック単位で取得する。
【００４４】
ＪＰＥＧ処理部３１０は、ＹＵＶデータに対し圧縮処理を行いＪＰＥＧデータを生成する。ＪＰＥＧ処理部３１０は、ＤＣＴ部３１１、量子化部３１２、符号化部３１３を備えている。
【００４５】
ＤＣＴ（Discrete Cosine Transform：離散コサイン変換）部３１１は、バスＩＦ部３２０からブロック単位に入力されたＹＵＶデータに対しＤＣＴ変換を行う。ＤＣＴ部３１１は、８×８画素のＹＵＶデータをＤＣＴ変換し８×８＝６４個のＤＣＴ係数を生成して出力する。
【００４６】
量子化部３１２は、ＤＣＴ部３１１が生成したブロック単位のＤＣＴ係数を量子化する。量子化部３１２は、量子化テーブルなどを用いて６４個のＤＣＴ係数を量子化し出力する。
【００４７】
符号化部３１３は、量子化部３１２が生成したブロック単位の量子化されたＤＣＴ係数を符号化する。符号化部３１３は、量子化された６４個のＤＣＴ係数をハフマン符号などにより符号化し１ブロックのＪＰＥＧデータを出力する。
【００４８】
次に、図５を用いて、本実施形態にかかる画像信号処理装置の動作について説明する。図は、画像信号処理装置１００で、イメージセンサ１１０の撮像データからＪＰＥＧデータを生成する処理の流れを示している。
【００４９】
まず、ＣＰＵ１０１は、フィルタ１０２とＪＰＥＧ回路１０３を動作させるために、フィルタ１０２の設定を行い（Ｓ５０１）、ＪＰＥＧ回路１０３の設定を行う（Ｓ５０２）。例えば、ＣＰＵ１０１は、フィルタ１０２とＪＰＥＧ回路１０３に対し、バッファメモリ１０４のバッファ領域Ａ及びＢの開始アドレスとバッファサイズを設定する。フィルタ１０２とＪＰＥＧ回路１０３に同じ開始アドレスとバッファサイズを設定することにより、バッファ領域Ａ及びＢを共有することが可能になる。
【００５０】
次いで、ＣＰＵ１０１は、ＪＰＥＧ回路１０３を起動する（Ｓ５０３）。本実施形態では、フィルタ１０２からのブロック同期信号のタイミングでＪＰＥＧ回路１０３が処理を開始するため、フィルタ１０２よりも先にＪＰＥＧ回路１０３を起動させて、ＪＰＥＧ回路１０３をブロック同期信号待ちとする。
【００５１】
次いで、ＣＰＵ１０１は、フィルタ１０２を起動し（Ｓ５０４）、フィルタ１０２は、イメージセンサ１１０から入力される撮像データを８ライン処理する（Ｓ５０５）。このとき、フィルタ１０２は、ライン単位の撮像データからＲＧＢデータを生成した後、ＲＧＢデータをＹＵＶデータに変換して、バッファメモリ７０４のバッファ領域ＡへＹＵＶデータを１ライン毎に８ラインまで格納する。
【００５２】
次いで、フィルタ１０２は、８ラインの処理が完了すると、ＪＰＥＧ回路１０３へブロック同期信号を出力する。このとき、フィルタ１０２は、８ライン分のＹＵＶデータを生成し、バッファメモリ１０４へ格納が完了すると、ブロック同期信号を出力する（Ｓ５０６）。次いで、フィルタ１０２は、撮像データの次の８ラインを処理する（Ｓ５０７）。フィルタ１０２は、撮像データの次の８ラインについて、ＹＵＶデータを生成し、バッファメモリ７０４のバッファ領域ＢへＹＵＶデータを１ライン毎に８ラインまで格納する。
【００５３】
Ｓ５０６でフィルタ１０２からブロック同期信号を受けると、ＪＰＥＧ回路１０３は、バッファメモリ１０４からＹＵＶデータを取得して８ライン処理する（Ｓ５０７）。このとき、ＪＰＥＧ回路１０３は、バッファメモリ１０４のバッファ領域Ａから８×８のブロック単位でＹＵＶデータを取得してＪＰＥＧデータを生成し、８ラインの最後まで繰り返す。
【００５４】
次いで、フィルタ１０２は、８ラインのＹＵＶデータ生成処理とブロック同期信号の出力を繰り返し、ＪＰＥＧ回路１０３は、ブロック同期信号に応じた８ラインのＪＰＥＧデータ生成処理を繰り返す。
【００５５】
次いで、フィルタ１０２は、フレームの最後の８ライン処理が完了すると（Ｓ５０９）、ＪＰＥＧ回路１０３へブロック同期信号を出力し（Ｓ５１０）、フィルタ処理の完了をＣＰＵ１０１へ通知する（Ｓ５１１）。例えば、フィルタ１０２の処理完了の通知は、バス１０６を介さず、フィルタ１０２からＣＰＵ１０１へ割り込みによって通知される。
【００５６】
Ｓ５１０でフィルタ１０２からフレームの最後のブロック同期信号を受けると、ＪＰＥＧ回路１０３は、バッファメモリ１０４からＹＵＶデータを取得して８ライン処理し（Ｓ５１２）、ＪＰＥＧ回路の処理の完了をＣＰＵ１０１へ通知する（Ｓ５１３）。例えば、ＪＰＥＧ回路１０３の処理完了の通知は、フィルタ１０２と同様に、ＪＰＥＧ回路１０３からＣＰＵ１０１へ割り込みによって通知される。こうして、１フレームのＪＰＥＧファイルが得られ、出力回路１０５から出力される。
【００５７】
図６のタイミングチャートは、図５と同様に、本実施形態にかかる画像信号処理装置の動作を示している。
【００５８】
イメージセンサ１１０から画像信号処理装置１００へ、図６（ａ）のセンサ垂直同期信号、図６（ｂ）のセンサ水平同期信号、図６（ｃ）の撮像データが入力される。センサ垂直同期信号は、撮像データの１フレームの同期を示す信号であり、垂直同期信号から次の垂直同期信号までに入力される撮像データが１フレームのデータとなる。センサ水平同期信号は、撮像データの１ラインの同期を示す信号であり、水平同期信号から次の水平同期信号までに入力される撮像データが、１ラインのデータとなる。撮像データは、水平同期信号に同期して１ライン毎に所定の間隔で入力される。各ラインの撮像データには、ラインの１画素目から順にＲ・Ｇ・Ｂのいずれかを示す信号が連続して並んでいる。
【００５９】
図６（ｄ）に示すように、フィルタ１０２からバッファメモリ１０４へは、撮像データの入力から２ライン遅れてＹＵＶデータが転送される。上記のように、フィルタ１０２では、撮像データを３ラインそろえてから３×３画素で画素補間処理しているため、ＹＵＶデータの出力タイミングが２ライン分遅延する。また、図では、１ラインの先頭から末尾まで連続せずに、８画素毎に複数に分けて転送している。複数に分割することにより、バスを連続して占有する期間が短くなるため、フィルタ１０２が１ライン転送している期間に、ＪＰＥＧ回路１０３などもバスのアクセスが可能となる。
【００６０】
図６（ｅ）に示すように、フィルタ１０２で８ラインのＹＵＶデータ転送が終了した後、ブロック同期信号が出力される。そして、図６（ｆ）と（ｇ）に示すように、ブロック同期信号の後、バッファメモリ１０４からＪＰＥＧ回路１０３へＹＵＶデータが転送される。バッファメモリ１０４からＪＰＥＧ回路１０３へのＹＵＶデータの転送は、ブロック毎に分けて転送される。このとき、フィルタ１０２による９ライン目以降のＹＵＶデータの転送とＪＰＥＧ回路１０３による１ライン目以降のＹＵＶデータの転送が競合するため、バスアービタでバスアクセスが調停されてそれぞれの転送が行われる。
【００６１】
以上のように、本実施形態では、バッファメモリを介して処理するフィルタとＪＰＥＧ回路との間で、後段のＪＰＥＧ回路の処理単位にあわせて同期をとって処理するようにした。これにより、従来のように１フレーム分のバッファメモリを設ける必要がない。例えば、１フレームが２０００×１６００画素の画像データの処理のためには、従来１６００ライン分のメモリ量が必要であったが、本実施形態では、１６ラインのバッファメモリで済むことになる。１フレームのライン数が増えても、バッファサイズを拡張する必要がない。したがって、バッファサイズを効果的に削減することができる。
【００６２】
また、従来はバッファメモリに１フレーム格納していたため、画像処理に常に１フレームの遅延が生じていたが、本実施形態では、バッファメモリに格納するサイズが８ラインとなったため８ライン分の遅延となり、画像処理の遅延時間を短縮することができる。
【００６３】
さらに、小容量のバッファメモリで実現できるため、ＳＤＲＡＭなどの大容量メモリを利用せずにＳＲＡＭなどの小容量メモリで実現することができる。大容量メモリは、アクセスレイテンシーが長いため性能的なボトルネックになる。一方、ＳＲＡＭなどはＬＳＩ内部に取り込むことが可能でアクセスレイテンシーに優れているので高速処理が可能である。
【００６４】
その他の発明の実施の形態．
尚、上述の例では、フィルタとＪＰＥＧ回路がバッファメモリを介して画像処理する例について説明したが、これに限らず、処理単位が異なるその他の回路とバッファメモリで処理するものであってもよい。例えば、ＪＰＥＧ以外の形式で圧縮する回路、圧縮画像を伸張する回路、画像を回転・リサイズする回路であってもよい。
【００６５】
また、上述の例では、２つの画像処理部とバッファメモリによる画像処理について説明したが、これに限らず、３つ以上の画像処理部を有していてもよい。この場合でも、後段の画像処理部の処理単位に合わせて同期をとることにり、バッファメモリのサイズを小さくすることができる。
【００６６】
このほか、本発明の要旨を逸脱しない範囲で種々の変形、実施が可能である。
【図面の簡単な説明】
【００６７】
【図１】本発明にかかる撮像装置の構成図である。
【図２】本発明にかかる画像信号処理装置で用いられるデータを示す図である。
【図３】本発明にかかるバッファメモリの構成図である。
【図４】本発明にかかる画像信号処理装置の構成図である。
【図５】本発明にかかる画像信号処理装置の動作を示すシーケンスである。
【図６】本発明にかかる画像信号処理装置の動作を示すタイミングチャートである。
【図７】従来の撮像装置の構成図である。
【図８】従来の画像信号処理装置の動作を示すシーケンスである。
【符号の説明】
【００６８】
１００  画像信号処理装置
１０１  ＣＰＵ
１０２  フィルタ
１０３  ＪＰＥＧ回路
１０４  バッファメモリ
１０５  出力回路
１０６  バス
１１０  イメージセンサ
１２０  表示装置
１３０  記憶装置
２１０  フィルタ処理部
２１１  カラーバランス部
２１２  ラインバッファ部
２１３  画素補間部
２１４  ＹＵＶ変換部
２２０  バスＩＦ部
３１０  ＪＰＥＧ処理部
３１１  ＤＣＴ部
３１２  量子化部
３１３  符号化部
３２０  バスＩＦ部
【図１】
2007088806.tif 000003
【図２】
2007088806.tif 000004
【図３】
2007088806.tif 000005
【図４】
2007088806.tif 000006
【図５】
2007088806.tif 000007
【図６】
2007088806.tif 000008
【図７】
2007088806.tif 000009
【図８】
2007088806.tif 000010