(57)【特許請求の範囲】
【請求項１】
入力された処理対象の対象画像に対し、第１の画像処理を実行し、処理結果の第１の画像を記憶手段に書き込む第１の処理手段と、
前記記憶手段に書き込まれた前記第１の画像を読み出し、該第１の画像に対し、前記第１の画像処理と異なる第２の画像処理を実行し、処理結果である第２の画像を出力する第２の処理手段と、
前記第１の処理手段と前記第２の処理手段とを制御する制御手段と、を有し、
前記第１の画像処理は、前記対象画像を分割することで得られる複数のブロックのそれぞれに含まれる画像信号に対して実行されるものであり、
前記第２の画像処理は、前記第１の画像を分割することで得られる複数のブロックのそれぞれに含まれる画像信号に対して、当該ブロックに含まれる画像信号と当該ブロックの外の参照領域に含まれる画像信号とを読み出して実行されるものであり、
前記制御手段は、前記第２の処理手段による前記第１の画像の読み出しを、前記第１の処理手段による該第１の画像の書き込みと並行して行うよう制御し、
前記対象画像は、前記第１の画像処理を実行するためにサイズの異なる複数のブロックに分割されるものであって、
前記制御手段は、前記対象画像の前記第１の画像処理が最初に実行されるブロックとこれに隣接するブロックを分割する位置を、前記第１の画像処理が最初に実行されるブロックに、前記第１の画像の前記第２の画像処理が最初に実行されるブロックに対して読み出される前記参照領域が含まれるように設定する
ことを特徴とする画像処理装置。
【請求項２】
前記制御手段は、前記第２の処理手段による前記第１の画像の画素の読み出しが、前記第１の処理手段による該画素の書き込みよりも前になされないよう制御することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御手段は、前記第１の画像処理が最初に実行されるブロックの大きさと前記第２の画像処理が最初に実行されるブロックの大きさとを、少なくとも前記第１の画像処理の実行後の前記第２の処理手段による前記第１の画像の画素の読み出しにおいて、前記第１の処理手段による該画素の書き込みを待機する必要がないよう設定することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記制御手段は、前記第１の画像を複数のブロックに分割する際の各ブロックの大きさを、前記第２の処理手段の少なくともいずれかの処理性能に基づいて設定することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記処理性能は、前記第２の処理手段が単位時間あたりに処理可能な画素数であることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記制御手段は、前記第１の画像を分割することで得られるブロック数を、前記記憶手段からの画像の読み出しに係り使用可能な帯域幅に基づいて設定することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項７】
前記制御手段は、前記対象画像を分割することで得られるブロック数と前記第１の画像を分割することで得られるブロック数を同数とすることを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
前記制御手段は、前記第１の画像を分割することで得られるブロック数を、前記対象画像を分割することで得られるブロック数よりも多くすることを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項９】
前記第２の画像処理は、幾何変形を行う処理を含むことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
撮像を行い、対象画像を出力する撮像手段と、
請求項１乃至９のいずれか１項に記載の画像処理装置と、
を有することを特徴とする撮像装置。
【請求項１１】
入力された処理対象の対象画像に対し、第１の画像処理を実行し、処理結果の第１の画像を記憶手段に書き込む第１の処理工程と、
前記記憶手段に書き込まれた前記第１の画像を読み出し、該第１の画像に対し、前記第１の画像処理と異なる第２の画像処理を実行し、処理結果の第２の画像を出力する第２の処理工程と、
前記第１の処理工程と前記第１の処理工程とを制御する制御工程と、を有し、
前記第１の画像処理は、前記対象画像を分割することで得られる複数のブロックのそれぞれに含まれる画像信号に対して実行されるものであり、
前記第２の画像処理は、前記第１の画像を分割することで得られる複数のブロックのそれぞれに含まれる画像信号に対して、当該ブロックに含まれる画像信号と当該ブロックの外の参照領域に含まれる画像信号とを読み出して実行されるものであり、
前記制御工程において、前記第２の処理工程における前記第１の画像の読み出しを、前記第１の処理工程における該第１の画像の書き込みと並行して行うよう制御され、
前記対象画像は、前記第１の画像処理を実行するためにサイズの異なる複数のブロックに分割されるものであって、
前記制御工程において、前記対象画像の前記第１の画像処理が最初に実行されるブロックとこれに隣接するブロックを分割する位置は、前記第１の画像処理が最初に実行されるブロックに、前記第１の画像の前記第２の画像処理が最初に実行されるブロックに対して読み出される前記参照領域が含まれるように設定される
ことを特徴とする画像処理装置の制御方法。
【請求項１２】
コンピュータを、請求項１乃至９のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、撮像装置、制御方法及びプログラムに関し、特にメモリへの書き込みと該メモリからの読み出しの工程を含む画像処理の制御技術に関する。
【背景技術】
【０００２】
近年、デジタルカメラ等で用いられる撮像素子の多画素化に伴い、一般的に流通する画像も多画素化し、データ量が増加傾向にある。このような画像につき画像処理を行う場合、画像をブロック分割して、全体の処理時間を低減する手法が用いられることもある。特許文献１には、複数の工程（撮影、圧縮、転送、伸長、表示等）を有する画像処理を、分割したブロックごとに行う際に、複数のブロックについて同時実行される工程がないよう、各ブロックの処理に時間差を設けるよう制御する技術が開示されている。
【０００３】
また、一連の画像処理が複数の画像処理回路により実現される場合や、中間データが別処理に利用される場合等、一連の画像処理の実行過程において、データのメモリへの書き込み及びメモリからの読み出し動作を含むこともある。このような場合、メモリへの前データ書き込みの完了を待ってからデータ読み出しを行って後続の画像処理を行うのでは、その待機時間分、処理に要する時間が増大する。これに対し特許文献２には、メモリへのデータ書き込みとデータ読み出しとを並行実行可能とし、読み出しアドレスが現在書き込みが行われている書き込みアドレスを追い越さないよう制御する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−７４３７１号公報
【特許文献２】特開２００８−１１７１３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１及び２に記載の技術では、開始前に分割したブロック単位で一連の画像処理を実行するものであるため、好適に処理時間の低減ができない場合がある。例えば１つのブロックにつき、該ブロックの周辺画素を参照する処理が１つの工程として含まれる場合、該周辺画素を有する他のブロックの処理が完了し、少なくとも該画素がメモリに書き込まれるまで、上記１つのブロックに係る処理を待機させる必要がある。
【０００６】
本発明は、上述の問題点に鑑みてなされたものであり、画像の分割を伴う一連の画像処理に要する処理時間を低減する画像処理装置、撮像装置、制御方法及びプログラムを目的とする。
【課題を解決するための手段】
【０００７】
前述の目的を達成するために、本発明の画像処理装置は、入力された処理対象の対象画像に対し、第１の画像処理を実行し、処理結果の第１の画像を記憶手段に書き込む第１の処理手段と、記憶手段に書き込まれた第１の画像を読み出し、該第１の画像に対し、第１の画像処理と異なる第２の画像処理を実行し、処理結果である第２の画像を出力する第２の処理手段と、第１の処理手段と第２の処理手段とを制御する制御手段と、を有し、第１の画像処理は、対象画像を分割することで得られる複数のブロックのそれぞれに含まれる画像信号に対して実行されるものであり、第２の画像処理は、第１の画像を分割することで得られる複数のブロックのそれぞれに含まれる画像信号に対して、当該ブロックに含まれる画像信号と当該ブロックの外の参照領域に含まれる画像信号を読み出して実行されるものであり、制御手段は、第２の処理手段による第１の画像の読み出しを、第１の処理手段による該第１の画像の書き込みと並行して行うよう制御し、対象画像は、第１の画像処理を実行するためにサイズの異なる複数のブロックに分割されるものであって、制御手段は、対象画像の第１の画像処理が最初に実行されるブロックとこれに隣接するブロックを分割する位置を、第１の画像処理が最初に実行されるブロックに、第１の画像の第２の画像処理が最初に実行されるブロックに対して読み出される参照領域が含まれるように設定することを特徴とする。
【発明の効果】
【０００８】
このような構成により本発明によれば、画像の分割を伴う一連の画像処理に要する処理時間を低減することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係るデジタルカメラ１２０の機能構成を例示したブロック図
【図２】本発明の実施形態に係るデータ転送部１０６の内部構成例を示したブロック図
【図３】データ転送部１０６における追い越し制御を説明するための図
【図４】本発明の実施形態に係る第１画像処理部１０３の内部構成例を示したブロック図
【図５】本発明の実施形態に係る第２画像処理部１０４の内部構成例を示したブロック図
【図６】本発明の実施形態に係る幾何変形部５０４の内部構成例を示したブロック図
【図７】周辺画素の参照が必要な画像処理の一例を説明するための図
【図８】周辺画素の参照が必要な画像処理の一例を説明するための別の図
【図９】本発明の実施形態及び変形例１に係るブロック分割態様を例示した図
【図１０】本発明の実施形態に係る第２画像処理部１０４におけるブロックのサイズ及び数の決定方法を例示したフローチャート
【図１１】本発明の実施形態に係る一連の画像処理を例示したタイミングチャート
【図１２】本発明の変形例２に係るブロック分割態様を例示した図
【図１３】本発明の変形例２に係る一連の画像処理を例示したタイミングチャート
【図１４】本発明の実施形態のデジタルカメラ１２０において実行されるブロック設定処理を例示したフローチャート
【発明を実施するための形態】
【００１０】
［実施形態］
以下、本発明の例示的な実施形態について、図面を参照して詳細に説明する。なお、以下に説明する一実施形態は、画像処理装置の一例としての、撮像により得られた画像に対して、処理中に中間データのメモリ書き込み及び該中間データの読み出しを含む画像処理を適用するデジタルカメラに、本発明を適用した例を説明する。しかし、本発明は、少なくとも２段階の画像処理の実行において、前段の画像処理の処理結果である第１の画像をメモリに書き込み、該第１の画像をメモリから読み出して後段の画像処理を実行して第２の画像を出力することが可能な任意の機器に適用可能である。
【００１１】
《デジタルカメラ１２０の構成》
図１は、本発明の実施形態に係るデジタルカメラ１２０の機能構成を示すブロック図である。
【００１２】
撮像素子１００は、例えばＣＣＤやＣＭＯＳセンサ等の光電変換素子である。撮像素子１００は、デジタルカメラ１２０が有する不図示の撮像光学系（レンズを含む）を介して受光した被写体に係る光学像を電気信号に変換し、アナログ画像信号を出力する。
【００１３】
Ａ／Ｄ変換器１０１は、撮像素子１００から出力されたアナログ画像信号に対してＡ／Ｄ変換処理を行い、デジタル画像信号に変換して出力する。
【００１４】
撮像補正部１０２は、Ａ／Ｄ変換器１０１から出力されたデジタル画像信号に対して、例えば画素補正、黒レベル補正、シェーディング補正、傷補正等の、撮像素子や信号レベルに応じた補正を行う。以下、撮像補正部１０２における補正が適用されたデジタル画像信号を、画像データまたは単に画像として言及する。本実施形態では画像データは、本実施形態では後述のデータ転送部１０６、メモリ制御部１０９を介してメモリ１１０に格納されるものとして説明する。しかしながら、第１画像処理部１０３において領域分割を行わずに画像処理が行われる場合には、画像データはメモリ１１０を介さずに第１画像処理部１０３に出力されるものであってもよい。
【００１５】
〈第１画像処理部１０３〉
本発明の第１の処理手段としての第１画像処理部１０３は、メモリ１１０または不揮発性メモリ制御部１１１から読み出された画像（入力画像）に対し、倍率色収差補正、現像処理、面内ＮＲ（ノイズリダクション）処理、拡縮（リサイズ）等の画像処理を行う。第１画像処理部１０３における画像処理は、例えばメモリ制御部１０９によるメモリ１１０からの読み出しを制御することにより、入力画像を複数の領域（ブロック）に分離し、領域ごとに順次実行される。本実施形態のデジタルカメラ１２０では、例えば撮像を行って得られた画像を表示部１０５に表示する際に行われる一連の画像処理のうち、本発明の第１の画像処理としての前段の画像処理を、第１画像処理部１０３が担当するものとして説明する。第１画像処理部１０３は、例えば入力画像に対して前段の画像処理を適用するための画像処理回路として構成されてよく、処理結果として得られた画像（第１の画像）を順次出力する。
【００１６】
ここで、第１画像処理部１０３の具体的な構成例を図４に示す。なお、図４の例では説明を簡単にするため、第１画像処理部１０３が倍率色収差補正及び面内ＮＲに係る画像処理を、後述するＲＤＤＭＡＣ２０１を介してメモリ１１０から読み出された、処理対象である第１の画像の各ブロックに実行するものとして説明する。
【００１７】
倍率色収差補正部４００と面内ＮＲ部４０４の各々は、後述のシステム制御部１１３により決定されたブロックの位置及びサイズの情報（ブロック情報）に基づき、処理対象のブロック画像の読み出し要求の制御を行う制御部４０１または制御部４０５を有する。また倍率色収差補正部４００と面内ＮＲ部４０４の各々は、読み出しにより入力されたブロック画像をフィルタ処理用に保持する、ＳＲＡＭ等の記憶領域を有する。より詳しくは、順次読み出されて入力されるブロック画像のラインデータを蓄積する遅延ライン４０２または遅延ライン４０６を有する。倍率色収差補正部４００が有するデータ処理部４０３、及び面内ＮＲ部４０４が有するデータ処理部４０７は、それぞれ対応する画像処理（倍率色収差補正、面内ＮＲ）を処理対象の入力画像に対して適用する。このとき、各データ処理部は、その処理内容に応じて、対応する遅延ラインに保持された複数ライン（場合によっては単独ライン）の画像データを読み出し、フィルタ処理などを行う。
【００１８】
このように各処理がなされて得られた処理結果のブロック画像は、書き込み要求がＷＲＤＭＡＣ２００になされることで制御されたデータバス１０８に出力され、メモリ制御部１０９を介してメモリ１１０に書き込まれる。なお、図４に示した例では、倍率色収差補正部４００と面内ＮＲ部４０４の各々の処理結果は、書き込み要求をＷＲＤＭＡＣ２００に行うことでメモリ制御部１０９に伝送され、メモリ１１０に書き込まれるものとして示されている。しかしながら、図に破線で示されるように、倍率色収差補正部４００の出力が面内ＮＲ部４０４の入力となるよう、即ち第１画像処理部１０３内の複数の画像処理が完了してから、処理結果の第１の画像の書き込みがなされるよう構成されていてもよい。この場合、第１画像処理部１０３に係る全体の処理においてメモリアクセス頻度が低減するため、メモリ１１０の格納領域やバス帯域の占有を低減できる。
【００１９】
〈第２画像処理部１０４〉
本発明の第２の処理手段としての第２画像処理部１０４は、メモリ１１０から読み出された第１の画像に対し、幾何変形、巡回ＮＲ、拡大縮小等の画像処理を行う。第２画像処理部１０４における画像処理は、第１画像処理部１０３と同様、例えばメモリメモリ制御部１０９によるメモリ１１０からの読み出しを制御することにより、第１の画像を複数の領域に分離し、領域ごとに順次実行される。本実施形態のデジタルカメラ１２０では、上述した撮像により得られた撮像画像を表示部１０５に表示する際に行われる一連の画像処理のうち、本発明の第２の画像処理としての後段の画像処理を、第２画像処理部１０４が担当するものとして説明する。第２画像処理部１０４は、例えば入力された第１の画像に対して後段の画像処理を適用するための画像処理回路として構成されてよく、処理結果として得られた画像（第２の画像）を順次出力する。
【００２０】
ここで、第２画像処理部１０４の具体的な構成例を図５に示す。なお、図５の例では説明を簡単にするため、第２画像処理部１０４が第１画像処理部１０３による画像処理が適用された第１の画像を処理対象として、幾何変形及び巡回ＮＲに係る画像処理を実行するものとして説明する。
【００２１】
まず幾何変形部５０４の詳細につき、図６〜図８を参照して説明する。幾何変形部５０４は、例えばレンズの特性により生じた光学像の歪みを補正する処理を行う。例えば画像中心に向かって光学像が歪む歪曲収差が生じる場合、図７の撮像画像（補正前画像）７００に破線で示したように、本来矩形状に結像される光学像が糸巻き型状に変形する。このような場合、該糸巻き型状の範囲の像が補正後画像７０１において本来の矩形状となるように、幾何変形が行われる。
【００２２】
より詳しくは、図８に示されるように、撮像画像につき、撮像素子１００の出力画素の走査方向に沿って水平軸を、走査方向に直交して垂直軸を規定する直交座標系を定義した例を考える。このとき、画素８０２に本来結像されるべき光学像は、歪曲収差により画像の中心８００と該画素８０２とを結ぶ直線上の画素８０１に結像される。図７の例で言えば画像中心（光学中心）に向かう方向で歪曲収差が生じる場合、補正後画像７０１の座標（ｘ，ｙ）の画素の生成には、補正前画像７００における座標（ｘ’，ｙ’）の画素の情報を参照する必要がある。従って、幾何変形の画像処理においては、補正後画像７０１の座標（ｘ，ｙ）の画素の画素値を生成するために、レンズの特性を示す光学情報に基づき補正前画像７００における座標（ｘ’，ｙ’）を導出し、該座標の画素を含む周辺領域の参照が必要となる。即ち、補正後画像７０１の座標（ｘ，ｙ）に係る幾何変形の処理においては、メモリ１１０の座標（ｘ’，ｙ’）に対応するアドレスからの画像読み出しが必要となる。
【００２３】
なお、補正後座標（ｘ，ｙ）の生成において幾何変形に係り参照する補正前座標（ｘ’，ｙ’）の導出は、図８に示されるように、画像中心から補正後座標までの距離を示す像高Ｒと、レンズの特性及びその撮影時の状態（ズーム倍率）とに基づき行われる。より詳しくは、像高Ｒとレンズの特性等とから補正後座標と補正前座標との距離を示す補正量Ｃが得られ、補正前座標は、像高Ｒから補正量Ｃを減算した値、及び画像中心８００から画素８０１に向かう方向と水平軸とがなす角度θに基づいて算出できる。このとき、得られる補正前座標は必ずしも整数値で得られるものではないため、導出結果が画素単位のものに限られないことは容易に理解されよう。
【００２４】
図６に示されるように、本実施形態の幾何変形部５０４は、例えば単体の画像処理回路であってよく、制御部６００、読み出し要求部６０１、矩形メモリ６０２、参照画素入力部６０３及び補間部６０４で構成される。ここで、制御部６００は、システム制御部１１３により決定されたブロックの位置及びサイズの情報に基づき、該ブロックの幾何変形に用いられる領域の第１の画像の読み出し制御、及び幾何変形後の該ブロックの各画素の生成に用いる画素の特定を行う。即ち、図７及び８を用いて説明した各種の演算は制御部６００により行われる。
【００２５】
より詳しくは、制御部６００は、第１画像処理部１０３による画像処理が適用されてメモリ１１０に格納された第１の画像をブロック分割して処理する際の、処理対象のブロックにつき読み出す領域の特定を行う。撮像光学系に起因する歪曲補正が生じている場合、第１の画像のうちの処理対象のブロックに対応する領域（対応領域）だけでなく、演算により求まる該領域外の画素を含む領域（参照領域）に係る画素が、幾何変形用にメモリ１１０から読み出され得る。図７の例では、補正後画像７０１中の正方領域７０３が処理対象のブロックとして設定される場合、補正前画像７００において同位置に存在する対応領域を包含し、正方領域７０３よりも大きい矩形領域７０２が読み出される領域となる。制御部６００は、特定した処理対象のブロックにつき読み出す領域（対応領域及び参照領域）の情報を読み出し要求部６０１に伝送し、読み出し要求部６０１は該情報に基づき処理対象のブロックの画像（矩形データ）に係る読み出し要求の制御を行う。幾何変形部５０４は、読み出し要求に基づきメモリ１１０から読み出された矩形データを格納する、例えばＳＲＡＭ等の矩形メモリ６０２を有する。
【００２６】
また制御部６００は、幾何変形後の画像の、処理対象のブロックと対応する領域の画素の各々を生成するために、幾何変形に係る補間に用いられる矩形データの画素を特定し、その情報を参照画素入力部６０３に伝送する。参照画素入力部６０３は、幾何変形後の画像の各画素につき、制御部６００により特定された情報に基づき、矩形メモリ６０２から補間に用いられる画素を読み出し、補間部６０４に入力する。補間部６０４は、入力された画素に基づき、例えばバイキュービック補間等を行い、幾何変形後の画素を生成する。
【００２７】
また第２画像処理部１０４は、図５に示されるように表示部１０５への表示に際し、時間方向でのノイズ低減を行う巡回ＮＲ部５００を有する。時間方向でのノイズ低減であるため、巡回ＮＲ部５００の処理対象は幾何変形後の画像であり、幾何変形部５０４による幾何変形が適用された画像と、過去のフレームにつき表示された画像とに基づいて処理が行われる。巡回ＮＲ部５００は、システム制御部１１３により決定されたブロックの位置及びサイズの情報に基づき、過去のフレームにつき表示された画像の該ブロックと対応する領域の画像の読み出し要求の制御を行う制御部５０１を有する。また巡回ＮＲ部５００は、読み出しにより入力された画像、及び幾何変形部５０４から出力された画像のラインデータを蓄積する遅延ライン５０２を有する。データ処理部５０３は、遅延ライン５０２に保持された複数ラインの画像データを読み出し、巡回ＮＲに係るフィルタ処理などを行う。
【００２８】
このようにして第２画像処理部１０４における各処理がなされて得られた処理結果の第２の画像は、書き込み要求がＷＲＤＭＡＣ２００になされることで制御されたデータバス１０８に出力され、メモリ制御部１０９を介してメモリ１１０に書き込まれる。なお、図５に示した例では、幾何変形部５０４の出力が制御部５０１の入力となるよう構成されている。しかしながら、幾何変形部５０４の処理結果は、書き込み要求をＷＲＤＭＡＣ２００に行うことでメモリ制御部１０９に伝送され、メモリ１１０に書き込まれるよう構成されていてもよい。この場合、制御部５０１は過去のフレームにつき表示された画像だけでなく、幾何変形部５０４における処理後の画像の読み出し要求も行う。
【００２９】
このように、本実施形態のデジタルカメラ１２０では、撮像を行って得られた撮像画像を表示部１０５に表示する際に行われる一連の画像処理が、第１画像処理部１０３と第２画像処理部１０４により実行される。該一連の画像処理に要する処理時間を低減するために、画像をブロックに分割し、１つのブロック中の画素に係る後段の画像処理は、該画素の処理に必要となる、前段の画像処理適用後の画素がメモリ１１０に必要数格納され次第実行されることが好ましい。即ち、１つの撮像画像について、前段の画像処理と後段の画像処理は並行実行される。より効率的には、後段の画像処理に係る１つのブロックについて、該ブロックの処理において参照される一部の画素が、該ブロックの処理の開始後に前段の画像処理が完了してメモリ１１０に書き込まれ、所謂追い越し処理が可能に構成されるものであってよい。
【００３０】
表示部１０５は、例えばＬＣＤ等の表示装置を含み、表示出力に係る制御を行う。本実施形態では表示部１０５は、システム制御部１１３の制御の下、一連の画像処理が適用されてメモリ１１０に格納された第２の画像を、表示装置に表示させる制御を行う。
【００３１】
データ転送部１０６は、デジタルカメラ１２０における、メモリ１１０へのデータの書き込み、及びメモリ１１０に格納されたデータの読み出しを制御する。より詳しくはデータ転送部１０６は、撮像補正部１０２、第１画像処理部１０３、第２画像処理部１０４、不図示の圧縮処理や伸長処理を行う圧縮伸長部で処理を行う画像につき、データバス１０８を介してメモリ１１０との間でデータ転送を行う。
【００３２】
ここで、データ転送部１０６の詳細構成を図２に示す。図示されるように、データ転送部１０６は、例えば各々１以上のDirect Memory Accessコントローラであってよい、ＷＲＤＭＡＣ２００及びＲＤＤＭＡＣ２０１を有する。ＷＲＤＭＡＣ２００は、各部から受信した書き込み要求に基づき、データバス１０８の帯域占有を制御し、要求元からメモリ制御部１０９へのデータ転送、及び指定のアドレスへのメモリ制御部１０９による書き込みを実現する。ＲＤＤＭＡＣ２０１は、各部から受信した読み出し要求に基づき、データバス１０８の帯域占有を制御し、メモリ１１０の指定のアドレスからのデータを読み出し、及び該データの要求元へのデータ転送を実現する。
【００３３】
またデータ転送部１０６は、第１画像処理部１０３による画像処理と第２画像処理部１０４による画像処理が並行実行される際に、後者において参照される画素の読み出しが、前者の実行後の書き込み前になされないよう制御する追い越し制御部２０２を有する。ここで、図３（ａ）に示されるように、処理対象の画像３０１を４つのブロックに分離して各々処理を行う場合の、追い越し制御部２０２による追い越し制御の動作概要について説明する。
【００３４】
例えば、図３（ａ）のブロック１、２、３、４の順で画像処理が行われる場合を考える。ここで、画像の書き込み／読み出しアドレスは、各ブロックの左上を原点（０，０）とし、水平及び垂直方向の２次元アドレス（ｘ，ｙ）と、処理対象のブロックを識別する（Ｘｎ，Ｙｎ）に基づき制御される。より詳しくは、データ転送部１０６では、各ブロックのこれらの情報は、所定の演算によりメモリ１１０における絶対アドレスに変換され、ＷＲＤＭＡＣ２００あるいはＲＤＤＭＡＣ２０１に供給される。図示されるように、各ブロックに係るアクセス順序は、ブロックの左上画素から開始し、右方向に同水平ラインの画素にアクセスした後、次（下）の水平ラインの左端画素から同様にアクセスする方式により行われる。
【００３５】
図３（ａ）の例では、ブロック１とブロック３の水平方向の画素数はｘ１、ブロック２とブロック４の水平方向の画素数はｘ２、ブロック１とブロック２の垂直方向の画素数はｙ１、ブロック３とブロック４の垂直方向の画素数はｙ２となっている。以下では説明を簡単にするため、ｘ１＝ｘ２とし、図３（ｃ）に示されるように、垂直方向にブロック１、２、３、４の順で連結された態様で、対象画像の画素がメモリ１１０上に２次元にアドレス配置されるものとして説明する。
【００３６】
追い越し制御が行われる場合、図３（ｂ）に例示されるように、データ読み出しアドレスが、データ書き込みアドレスを追い駆ける態様になる。図３（ｂ）及び（ｃ）では、ハッチングを付して示した領域３０２は、先行する処理が実行されてメモリ１１０への書き込みが完了した画素（領域）を示す。また、クロスハッチングを付して示した領域３０３は、後続する処理においてメモリ１１０からの読み出しが完了した画素（領域）を示す。また、何も付さずに示した残りの領域は、先行する処理後の書き込みが、まだ行われていない画素（領域）を示す。このとき、ＷＲＤＭＡＣ２００は、書き込みを行っているブロックを識別する情報（Ｘｎｗ，Ｙｎｗ）と、書き込みを行っている画素（ｘｗ，ｙｗ）のアドレスとを、例えばアクセスするアドレスの変更の度に追い越し制御部２０２に伝送する。またＲＤＤＡＭＣ２０１は、読み出しを行っているブロックを識別する情報（Ｘｎｒ，Ｙｎｒ）読み出しを行っている画素（ｘｒ，ｙｒ）のアドレスを、例えばアクセスするアドレスの変更の度に追い越し制御部２０２に伝送する。
【００３７】
アクセスするアドレスは、水平アドレスはブロック内の画素の水平位置（ｘｗまたはｘｒ）であるが、垂直アドレスは読み出し、書き込みそれぞれ
ｄｙｗ＝ｙｗ＋ｙｗｏｆｆ
ｄｙｒ＝ｙｒ＋ｙｒｏｆｆ
となる。即ち、図３（ｃ）の例では、読み出しアドレスは（ｘ１、ｄｙｒ）、書き込みアドレスは（ｘ２、ｄｙｗ）となる。ここで、ｙｗｏｆｆとｙｒｏｆｆは、ブロック１では０であり、ブロックが変更となる度に、変更前ブロックの垂直方向の画素数が加算されるオフセット値である。
【００３８】
ライン単位の追い越し制御を行う場合、追い越し制御部２０２は書き込みアドレスと読み出しアドレスの差分をライン数α
α＝ｄｙｗ−ｄｙｒ
として算出し、例えば該ライン数αが閾値を超えるか否かによりＲＤＤＭＡＣ２０１の読み出しを制御してもよい。具体的には追い越し制御部２０２は、αが閾値より小さい場合には、αが閾値以上となるまで、ＲＤＤＭＡＣ２０１に読み出し動作を一時停止させる。なお、追い越し制御はライン単位で行われる必要はなく、同一ラインであっても、その水平アドレスの差分が閾値以上であれば読み出しを可能にする等、画素単位で行われるものであってもよいことは言うまでもない。
【００３９】
メモリ制御部１０９は、システム制御部１１３あるいはデータ転送部１０６からの指示に応じて、メモリ１１０へのデータの書き込み、メモリ１１０からのデータの読み出しを行う。メモリ１１０は、例えばＤＲＡＭ等の揮発性メモリであり、所定枚数の静止画像や所定時間分の動画像（フレーム群）、音声データ等の中間データの格納に十分な容量を備える記憶装置である。
【００４０】
不揮発性メモリ制御部１１１は、システム制御部１１３からの指示に応じて、不揮発性メモリ１１２へのデータの書き込み、不揮発性メモリ１１２からのデータの読み出しを行う。不揮発性メモリ１１２は、電気的に消去・記録可能な記憶装置であり、例えばＥＥＰＲＯＭ等が用いられる。不揮発性メモリ１１２には、デジタルカメラ１２０が有する各ブロックの動作を制御するための動作プログラムや、各ブロックの動作において必要となるパラメータ等が記憶される。
【００４１】
システム制御部１１３は、例えばマイクロコンピュータやＣＰＵであり、デジタルカメラ１２０が有する各ブロックの動作を制御する。より詳しくはシステム制御部１１３は、不揮発性メモリ１１２に格納されている動作プログラムを読み出し、メモリ１１０に展開して実行することにより、各ブロックの動作を制御する。各ブロックの動作制御は、システムバス１０７を介して行われる。
【００４２】
操作部１１４は、電源ボタンやシャッタスイッチ等の、デジタルカメラ１２０が有するユーザインタフェースである。操作部１１４は、各種ユーザインタフェースになされた操作入力を検出し、対応する制御信号をシステム制御部１１３に伝送する。
【００４３】
なお、本実施形態ではハードウェアとしてデジタルカメラ１２０が備える各ブロックに対応した回路やプロセッサにより処理が実現されるものとして説明する。しかしながら、本発明の実施はこれに限られるものではなく、各ブロックの処理が該各ブロックと同様の処理を行うプログラムにより実現されるものであってもよい。
【００４４】
《ブロック設定処理》
以下、本実施形態のデジタルカメラ１２０において、処理対象の撮像画像につき、第１画像処理部１０３と第２画像処理部１０４の各処理に係るブロックのサイズ及び数を決定するプロック設定処理について、図１４のフローチャートを用いて具体的に説明する。該フローチャートに対応する処理は、システム制御部１１３が、例えば不揮発性メモリ１１２に記憶されている対応する処理プログラムを読み出し、メモリ１１０に展開して実行することにより実現することができる。本サイズ決定処理は、例えば動画記録またはスルー画像表示を伴う撮影モードにおいて、撮影モードの開始時またはズーム倍率等の光学系の条件変更がなされた際や、記録画素数などの変更の際に開始されるものとして説明する。
【００４５】
Ｓ１４０１で、システム制御部１１３は、変更された光学系の条件を示す条件情報を取得する。条件情報は、例えば撮像時に装着されているレンズの光学特性及びズーム倍率の設定を含んで構成されるものであってよく、メモリ１１０に格納されているものであってよい。
【００４６】
Ｓ１４０２で、システム制御部１１３は、取得した条件情報に基づき、第２画像処理部１０４における各種画像処理の処理単位とする、ブロックの数及びサイズを決定する。本ステップにおける決定は、特に幾何変形部５０４のような、対象のブロックの外に存在する、条件情報に応じて変化し得る周辺画素の数も含めて画像処理において用いられる画素数を考慮して行われる。即ち、上述したように幾何変形部５０４のような、各ブロックの処理につき該ブロックに加えてその周辺画素の参照も行うため、１つの第１の画像について行う画像処理では、その過程において該画像の全画素数以上の画素を処理する必要がある。
【００４７】
本実施形態の撮像素子１００では、第１画像処理部１０３及び第２画像処理部１０４の処理の適用された画像をスルー画像として表示する。このため、本実施形態では、さらにスルー画像表示に係るフレームレート（表示画像の更新間隔）と第２画像処理部１０４の処理性能とを考慮して、第２画像処理部１０４におけるブロックのサイズ及び数を決定する。以下、第２画像処理部１０４におけるブロックのサイズ及び数の決定方法を、図１０のフローチャートを用いて例示する。
【００４８】
Ｓ１０００で、システム制御部１１３は、第２画像処理部１０４の巡回ＮＲ部５００に基づき、処理対象の第１の画像の水平画素数（対象水平画素数）が遅延ライン５０２で保持可能な最大の水平画素数（保持水平画素数）の整数倍であるか否かを判断する。システム制御部１１３は、対象水平画素数が保持水平画素数の整数倍であると判断した場合、処理をＳ１００１に移す。またシステム制御部１１３は、対象水平画素数が保持水平画素数の整数倍ではない、即ち対象水平画素数が保持水平画素数で割り切れないと判断した場合、処理をＳ１００２に移す。
【００４９】
Ｓ１００１で、システム制御部１１３は、第１の画像の第２画像処理部１０４における水平方向のブロック分割数ＨＮを、
ＨＮ＝対象水平画素数／保持水平画素数
により算出する。また一方、Ｓ１００２でシステム制御部１１３は、水平方向のブロック分割数（水平分割数）ＨＮを
ＨＮ＝Ｉｎｔ（対象水平画素数／保持水平画素数）＋１
により算出する。ここで、Ｉｎｔ（）は小数点以下を切り捨てた整数値を返す関数である。
【００５０】
Ｓ１００３で、システム制御部１１３は、幾何変形部５０４において全てブロックにつき処理される参照画素も含めた画素数の総和Ｔを、まだ決定していない垂直方向のブロック分割数（垂直分割数）ＶＮを用いて定義する。上述したように、第２画像処理部１０４が担う画像処理の一部では、処理を行うブロックについて、該ブロックの画素だけでなく、ブロック外の参照画素を演算対象として考慮する必要がある。従って、本ステップでは、処理対象の第１の画像に基づき、重複の読み出しを含む幾何変形部５０４への入力に基づき、以下の式により総和Ｔを定義する。
Ｔ＝（対象水平画素数＋（ブロックで参照する周辺画素の水平画素数×ＨＮ））
×（対象垂直画素数＋（参照する周辺画素の垂直画素数×ＶＮ））  ・・・（１）
ここで、各ブロックで参照する周辺画素の数は例えばズーム倍率等、条件情報に基づいて決定されるものであってよい。本実施形態では簡単のため、幾何変形部５０４におけるブロックの処理において参照される周辺画素は、ブロックの位置に依らず一定であるものとして説明するが、上述したようにブロックに対応する像高に応じて変化するものであってもよい。なお、対象垂直画素数は第１の画像の垂直方向の画素数であり、ＶＮは第２画像処理部１０４における垂直方向のブロック分割数である。本ステップの時点でＶＮはまだ値が確定していない変数であるものとする。
【００５１】
Ｓ１００４で、システム制御部１１３は、第２画像処理部１０４において第１の画像の処理に要する時間ＴＳを、第２画像処理部１０４の全体に係る処理性能（１秒（単位時間）あたりに第２画像処理部１０４の処理可能な画素数）及び総和Ｔを用いて定義する。即ち、時間ＴＳは
ＴＳ＝Ｔ／処理性能  ・・・（２）
で表すことができる。
【００５２】
Ｓ１００５で、システム制御部１１３は、スルー画像の更新頻度に係るフレームレートに基づき、１フレームのスルー画像を表示するフレーム時間ＭＳを
ＭＳ＝１／フレームレート
により算出する。フレーム時間ＭＳは、１つのフレームのスルー画像の表示を開始してから、次のフレームのスルー画像の表示を開始するまでの時間を指す。
【００５３】
Ｓ１００６で、システム制御部１１３は、フレーム時間ＭＳ内に第２画像処理部１０４における処理対象の画像の処理に要する時間ＴＳが収まる（ＭＳ＞ＴＳ）よう、式（１）（２）及びＭＳに基づいて整数値の垂直分割数ＶＮを決定する。このように、Ｓ１０００〜Ｓ１００６の処理により、第２画像処理部１０４における処理対象の第１の画像について設定するブロック数を決定することができる。
【００５４】
Ｓ１００７で、システム制御部１１３は、Ｓ１００１またはＳ１００２において決定された水平分割数ＨＮのブロックに、水平方向において第１の画像を均等分割できるか否かを判断する。即ち、ブロック分割は画素単位で行うため、本ステップにおいてシステム制御部１１３は、対象水平画素数が水平分割数ＨＮの整数倍であるか否かを判断する。システム制御部１１３は、水平方向において第１の画像を水平分割数ＨＮで均等分割できると判断した場合は処理をＳ１００８に移し、均等分割できないと判断した場合は処理をＳ１００９に移す。
【００５５】
Ｓ１００８で、システム制御部１１３は、各ブロックの水平方向のサイズＨ１を
Ｈ１＝対象水平画素数／ＨＮ
により算出する。また一方、Ｓ１００９でシステム制御部１１３は、１つの列のブロックを除いた各ブロックの水平方向のサイズＨ１と、残り１つの列のブロックの水平方向のサイズＨ２とを、
Ｈ１＝Ｉｎｔ（対象水平画素数／ＨＮ）
Ｈ２＝対象水平画素数−（Ｈ１×ＨＮ）
により算出する。なお、例えば左端、右端等、いずれの位置に存在する列のブロックサイズをＨ２とするかは、予め定められていればよい。
【００５６】
Ｓ１０１０で、システム制御部１１３は、Ｓ１００６において決定された垂直分割数ＶＮのブロックに、垂直方向において処理対象の第１の画像を均等分割できるか否かを同様に判断する。システム制御部１１３は、垂直方向において第１の画像を垂直分割数ＶＮで均等分割できると判断した場合は処理をＳ１０１１に移し、均等分割できないと判断した場合は処理をＳ１０１２に移す。
【００５７】
Ｓ１０１１で、システム制御部１１３は、各ブロックの垂直方向のサイズＶ１を
Ｖ１＝対象垂直画素数／ＶＮ
により算出する。また一方、Ｓ１０１２でシステム制御部１１３は、１つの行のブロックを除いた各ブロックの垂直方向のサイズＶ１と、残り１つの行のブロックの垂直方向のサイズＶ２とを
Ｖ１＝Ｉｎｔ（対象垂直画素数／ＶＮ）
Ｖ２＝対象垂直画素数−（Ｖ１×ＶＮ）
により算出する。なお、例えば上端、下端等、いずれの位置に存在する行のブロックサイズをＶ２とするかは、予め定められていればよい。
【００５８】
このようにすることで、システム制御部１１３は、第２画像処理部１０４における各種画像処理の処理単位とする、ブロックの数（ＨＮ×ＶＮ）及びサイズ（Ｈ１、Ｈ２、Ｖ１、Ｖ２）を決定することができる。なお、図１０を用いて説明した決定方法はあくまでも例示であり、これに限られるものでないことは理解されるべきである。
【００５９】
第２画像処理部１０４におけるブロックの数及びサイズを決定した後、システム制御部１１３はＳ１４０３で、第１画像処理部１０３における各種画像処理の処理単位とするブロックの数及びサイズを決定する。
【００６０】
上述したように、第１画像処理部１０３の処理と第２画像処理部１０４の処理とを並行して実行することが、処理対象の第１の画像に係る一連の画像処理に要する時間の低減を実現する。一方で、本実施形態のように、後段の画像処理の１つのブロックに係る処理においてブロック外の周辺画素の参照も要する場合、少なくとも該ブロックの処理の開始前に、前段の画像処理の適用された周辺画素もメモリ１１０に格納されている必要がある。即ち、１ブロックに係る後段の画像処理が完了するまでの間に、該ブロックにつき参照される全ての周辺画素がメモリ１１０に格納されている必要がある。より詳しくは、これに加え、ブロックに対する後段の画像処理開始時に、処理開始画素を含む所定数の画素（例えばブロックの開始複数行の画素）に加え、これら画素位置について参照される領域の画素につき、前段の画像処理を完了させる必要がある。
【００６１】
従って、例えば前段の画像処理後の第１の画像９１０について図９（ｂ）のようなブロックが設定される場合、前段の画像処理においても同様のブロックを設定すると、特定ブロックの後段の画像処理は開始できない、または途中で停止しなければならない。具体的には、第１の画像９１０のブロック９１１に対する後段の画像処理に係り、水平方向にさらにｎ画素、垂直方向にさらにｍ画素分の周辺領域が参照される場合、該周辺領域はブロック９１２、９１３及び９１４に含まれる。つまり、ブロック９１１の左上から順次行を変えて後段の画像処理を行う場合、最初の行の処理時に少なくともブロック９１２の対応する画素がメモリ１１０に格納されていなければ、第２画像処理部１０４はブロック９１１に係る後段の画像処理を開始できない。また、ブロック９１１の全画素について後段の画像処理を完了させるためには、ブロック９１３に係る前段の画像処理が完了し、さらにブロック９１４の一部の画素（行）に係る前段の画像処理も完了している必要がある。
【００６２】
故に、本実施形態のデジタルカメラ１２０では、後段の画像処理に係る処理時間の長期化を低減するため、システム制御部１１３は、第２画像処理部１０４について決定したブロックのサイズに基づき、第１画像処理部１０３に係るブロックのサイズを決定する。本実施形態では、第１画像処理部１０３及び第２画像処理部１０４の各処理において、処理対象の画像の水平方向及び垂直方向に設定されるブロックの数は同数であり、処理順と画像中のブロックの位置関係が対応付けられているものとする。このため、システム制御部１１３は、第２画像処理部１０４において対応するブロックの処理が実行される際に、該処理において参照される周辺領域の全ての画素がメモリ１１０に格納されるよう、第１画像処理部１０３に係るブロックのサイズを決定する。例えば図９（ｂ）に示されるように、第２画像処理部１０４の処理対象の第１の画像９１０につき均等サイズの４つのブロックが設定される場合、図９（ａ）に一点鎖線で示されるように、異なるサイズのブロックが第１画像処理部１０３に係り設定される。図９（ａ）の例では、第１画像処理部１０３の処理対象の画像（対象画像）９００におけるブロック９０１は、第２画像処理部１０４において対応するブロック（画像９１０におけるブロック９１１）の処理で参照される周辺画素を含むサイズに設定されている。即ち、第１画像処理部１０３において最初に画像処理が適用されるブロック９０１について、システム制御部１１３は、第２画像処理部１０４の処理に係るブロック９１１よりも、水平方向にｎ画素、垂直方向にｍ画素分大きいサイズを設定する。図９（ａ）の例では、ブロック９０１のサイズが決定すれば、ブロック９０２、９０３及び９０４のサイズは決定する。しかしながら、本発明の実施はこれに限られるものでなく、第１の画像９１０における対応するブロックの処理で参照される画素位置の画素を含むよう、対象画像９００における各ブロックのサイズは決定されてよい。
【００６３】
第１画像処理部１０３と第２画像処理部１０４の各々の処理に係るブロックの数及びサイズを決定すると、システム制御部１１３はＳ１４０４で、ブロック情報として決定した情報をそれぞれの画像処理部に供給する。このようにすることで、一連の画像処理のうちの後段の処理における参照を考慮して、前段及び後段の各々の画像処理に係る処理単位である領域のサイズを、これら処理が効率的に実行されるよう決定することができる。
【００６４】
例えば、図９（ａ）及び（ｂ）に示したように第１画像処理部１０３及び第２画像処理部１０４に係るブロックを設定する場合、図１１に示すようなタイミングチャートのように、より遅延の少ないスルー画像の提供が可能となる。より詳しくは、ｔ０で第１画像処理部１０３がブロック９０１に係る処理１１０１を開始した後、ブロック９１１の開始行に係る処理で参照される、例えばｊ行分の画素がメモリ１１０に格納されるまで第２画像処理部１０４は処理を行わない。ｊ行分の画素がメモリ１１０に格納されると、ｔ１で第２画像処理部１０４は、ブロック９１１及び参照領域に係る第１の画像の読み出し要求を開始し、ブロック９１１に係る処理１１１１を行う。また画像９１０について第２画像処理部１０４が後段の画像処理を行って得られる、例えばスルー画像である第２の画像は、画像上端から水平方向の行に含まれる画素の生成が完了すれば、表示部１０５への表示処理を開始することができる。図１１の例では、画像９１０のブロック９１１及び９１２に係る処理１１１１及び１１１２を第２画像処理部１０４が完了した後のｔ４から第２の画像の表示を開始している。このように、本実施形態のデジタルカメラ１２０によれば、撮像画像に係る種々の処理を完了し、入力画像として第１画像処理部１０３に処理を開始させてから、時間ｔ（ｔ４−ｔ０）分の遅延で、該撮像画像に係るスルー画像の表示を実現できる。ここで遅延時間ｔは、ブロック９１１及び９１２に係る処理の完了後とする必要はなく、例えば第２の画像のブロック９１４に対応する領域上端の行の画素を表示する際に、第２画像処理部１０４の該ブロックに係る処理の一部が完了するよう定められてもよい。このように１フレームに係る前段の画像処理（ｔ６まで）が完了した後は、第１画像処理部１０３は、次のフレームに係る前段の画像処理をｔ７から開始することができる。
【００６５】
以上説明したように、本実施形態の画像処理装置によれば、画像の分割を伴う一連の画像処理に要する処理時間を低減することができる。なお、本実施形態では第２画像処理部１０４における第１の画像のブロックサイズを設定した後、各ブロックの処理に用いられる参照領域を考慮して、第１画像処理部１０３における対象画像のブロックサイズを決定する方法について説明した。しかしながら、本発明の実施はこれに限られるものではない。特に、後段の画像処理におけるブロックサイズに基づいて、前段の画像処理における少なくとも一部のブロックサイズを大きくする方式は、第１画像処理部１０３の性能や記憶領域の構成によっては、処理遅延を生じさせる可能性もある。従って、システム制御部１１３は、まず第１画像処理部１０３におけるブロックサイズを均等分割等に設定し、条件情報に基づいて停止や待機時間を低減するよう、第２画像処理部１０４におけるブロックサイズを決定するものであってもよい。あるいは、条件情報に基づいて第２画像処理部１０４におけるブロック分割が均等分割となるよう、第１画像処理部１０３におけるブロック形状やサイズを設定し、第２画像処理部１０４におけるブロックサイズはより小さい均等サイズに決定してもよい。いずれにせよ、このようにすることで、後段の画像処理における処理単位の領域のサイズを、前段の画像処理における処理単位の領域のサイズよりも小さくすることができる。このため、データ格納までの待機や処理の一時停止を低減する、あるいは待機や一時停止が必要のないよう処理単位の設定を行うことで、効率的な一連の画像処理の適用を実現できる。
【００６６】
［変形例１］
第１画像処理部１０３における処理開始から表示部１０５への表示開始までの時間を短縮するとの観点では、スルー画像（第２の画像）の上端からの所定数の行分の画素の全てがメモリ１１０に格納されることを優先するようブロック分割されることが好ましい。上述した実施形態では第２画像処理部１０４における垂直方向のブロック数の決定方法を、図１０に係るＳ１００６の処理において、フレーム時間内に処理が収まるように決定したが、演算性能に余裕がある場合、該ブロック数は複数種類選択可能である。このとき、図９（ｃ）に示す画像９２０のように、図９（ｂ）の画像９１０よりも垂直方向のブロック数を増加させれば、第２画像処理部１０４におけるブロック９２１及び９２２の処理の完了後、スルー画像の表示処理を開始できる。即ち、前段の画像処理、後段の画像処理、及び表示処理を並行して実行させる際、垂直方向のブロック分割数を多くするほど、表示までの遅延時間を低減することが可能である。
【００６７】
一方で、このように垂直方向のブロック分割数を多くした場合、ブロック数に応じて、第２画像処理部１０４における各ブロックの処理において、他のブロックと重複して読み出しされる参照領域の画素数が増大する。即ち、第２画像処理部１０４の処理に係りデータ転送部１０６による読み出しによって占有されるデータバス１０８の帯域が増大する。従って、システム制御部１１３は、垂直方向のブロック数の決定に際しては、ＴＳ時間内に生じるデータバス１０８の帯域占有を概算し、該帯域占有が使用可能な帯域幅に収まるよう、制御を行うものであってよい。
【００６８】
［変形例２］
上述した実施形態では、ブロックの分割数は前段の画像処理と後段の画像処理とで一定であるものとして説明したが、本発明の実施はこれに限られるものではない。例えば図１２に示されるように、第１画像処理部１０３の処理に係り設定されるブロック数よりも多くのブロックが、第２画像処理部１０４の処理に係り設定される態様であってもよい。換言すれば、第１画像処理部１０３及び第２画像処理部１０４の双方で均等分割に基づきブロックが設定されるが、ブロックのサイズは後者の処理に係り設定される方が小さい態様であってもよい。
【００６９】
このようにすることで、第２画像処理部１０４に係る任意のブロックの処理時に、該ブロックにつき参照領域として読み出す画素が先立ってメモリ１１０に格納され、かつ変形例１のように表示処理の開始までの時間を短縮することができる。例えば図１３に示されるように、図１２（ａ）のブロック１２０１及び１２０２に係る第１画像処理部１０３における処理１３０１及び１３０２の開始後ｔ２に、図１２（ｂ）のブロック１２１１に係る第２画像処理部１０４の処理１３１１を開始すればよい。ここで、図１３に示した態様は、追い越し制御を停止させることなく実現する態様を示しているが、本発明の実施はこれに限られない。例えばｔ２をｔ０直後としてもよいが、ブロック１２１６に係る第２画像処理部１０４の処理１３１６は、ブロック１２０４に係る第１画像処理部１０３の処理１３０４が所定数行分進行しなければ完了できない。故に、第２画像処理部１０４における処理は、読み出しに係る追い越し制御に伴い、一時停止し得る。
【００７０】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７１】
１２０：デジタルカメラ、１０３：第１画像処理部、１０４：第２画像処理部、１０６：データ転送部、１０９：メモリ制御部、１１０：メモリ、１１３：システム制御部
【図１】
0006762775.tif 000002
【図２】
0006762775.tif 000003
【図３】
0006762775.tif 000004
【図４】
0006762775.tif 000005
【図５】
0006762775.tif 000006
【図６】
0006762775.tif 000007
【図７】
0006762775.tif 000008
【図８】
0006762775.tif 000009
【図９】
0006762775.tif 000010
【図１０】
0006762775.tif 000011
【図１１】
0006762775.tif 000012
【図１２】
0006762775.tif 000013
【図１３】
0006762775.tif 000014
【図１４】
0006762775.tif 000015