(57)【要約】【課題】  遅延メモリの省容量化を実現しつつも、ある一定のメモリ帯域の中でさまざまな形態の画像処理を実現するため、データの解像度と参照枚数が変化しても柔軟に対処できる画像処理方法及びその装置を提供する。【解決手段】  参照用画像データと補正データの少なくとも一方を参照して画像データを処理するときに、処理対象の画像データを複数バンド領域に分割し、分割したバンド領域毎に画像処理を行う場合、画像データの最小転送単位を設定し、その最小転送単位の画像データの処理のために必要な参照用画像データと補正データの少なくとも一方の最小転送単位を求め、画像処理に利用可能なバッファに収まるように前記画像データの転送量を定めて、この画像データの転送量と画像データ最小転送単位の比から、分割するバンド領域の高さを定める。【選択図】    図６
2010272028.tif 000002
【特許請求の範囲】
【請求項１】
参照用画像データと補正データの少なくとも一方を参照して画像データを処理する場合に、処理の対象の画像データを複数のバンド領域に分割し、分割したバンド領域ごとに画像処理を行う画像処理方法であって、
前記画像データの最小転送単位を設定する工程と、
前記最小転送単位の画像データの処理のために必要な前記参照用画像データと補正データの少なくとも一方の最小転送単位を求める工程と、
画像処理に使用されるバッファの容量に収まるように、前記画像データの最小転送単位と前記参照用画像データと補正データの少なくとも一方の最小転送単位とから、前記画像データの転送量を定める工程と、
前記定められた画像データの転送量と前記画像データの最小転送単位との比から、前記参照用画像データと補正データの少なくとも一方の転送量を求める工程と、
前記画像データの転送量と前記画像データの最小転送単位との比から、分割するバンド領域の高さを定める工程とを有することを特徴とする画像処理方法。
【請求項２】
前記画像データの転送量を定める工程では、前記参照用画像データと補正データの少なくとも一方により前記バンド領域の画像データを処理するときに繰り返しがある場合、繰り返しを考慮して前記参照用画像データと補正データの少なくとも一方の最小転送単位を算出して前記画像データの転送量を定めることを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記画像データの転送量と前記参照用画像データと補正データの少なくとも一方の転送量に従い、前記バッファに前記画像データおよび前記参照用画像データと補正データの少なくとも一方を読み出して格納する工程を更に有することを特徴とする請求項１に記載の画像処理方法。
【請求項４】
前記バッファに格納されたバンド高さに相当する前記画像データおよび前記参照用画像データと補正データの少なくとも一方をから、バンド領域の長さ方向に連続するＮ画素（ここで、Ｎは１以上の整数）からなる各々の画素群を各々の格納されたデータから読み出す工程と、
前記画像データおよび前記参照用画像データと補正データの少なくとも一方を区別するための識別子を付加して、画像処理に必要な順番で前記各々の画素群を画像処理手段に提供する提供工程とを更に有することを特徴とする請求項３に記載の画像処理方法。
【請求項５】
前記読み出す工程では、バンド領域の高さ方向に１画素ずつ走査することを特徴とする請求項４に記載の画像処理方法。
【請求項６】
前記読み出す工程では、左端削除画素数と右端削除画素数の指定に従い、前記画像データおよび前記参照用画像データと補正データの少なくとも一方に対してバンド領域の長さ方向にトリミング処理を行うことを特徴とする請求項４に記載の画像処理方法。
【請求項７】
前記読み出す工程では、バンド領域の長さ方向のトリミング処理後の前記画像データおよび前記参照用画像データと補正データの少なくとも一方に対して、上端糊代画素数、下端糊代画素数、左端糊代画素数、右端糊代画素数の指定に従い、端部の画素を拡張することを特徴とする請求項６に記載の画像処理方法。
【請求項８】
前記Ｎ画素が２以上の整数のときの提供工程では、Ｎ個の処理対象の画素から順次に１画素ずつを前記画像処理手段に提供することを特徴とする請求項４に記載の画像処理方法。
【請求項９】
前記Ｎが２以上の整数のときの前記提供工程では、Ｎ個の処理対象の画素を同時に取得し、Ｎ個の前記画像処理手段へ同時に提供することを特徴とする請求項４に記載の画像処理方法。
【請求項１０】
前記画像処理手段は、画素に付加された前記識別子に従い、処理対象の画像データ、参照用画像データ、補正データのいずれであるかを区別して受け取り、画像処理を行うことを特徴とする請求項４に記載の画像処理方法。
【請求項１１】
参照用画像データと補正データの少なくとも一方を参照して画像データを処理する場合に、処理の対象の画像データを複数のバンド領域に分割し、分割したバンド領域ごとに画像処理を行う画像処理装置であって、
前記画像データの最小転送単位を設定する転送単位の設定手段と、
前記最小転送単位の画像データの処理のために必要な前記参照用画像データと補正データの少なくとも一方の最小転送単位を求める転送単位の算出手段と、
画像処理に使用されるバッファの容量に収まるように、前記画像データの最小転送単位と前記参照用画像データと補正データの少なくとも一方の最小転送単位とから、前記画像データの転送量を定める転送量の設定手段と、
前記定められた画像データの転送量と前記画像データの最小転送単位との比から、前記参照用画像データと補正データの少なくとも一方の転送量を求める転送量の算出手段と、
前記画像データの転送量と前記画像データの最小転送単位との比から、分割するバンド領域の高さを定めるバンド高さ算出手段とを有することを特徴とする画像処理装置。
【請求項１２】
コンピュータを、
画像データの最小転送単位を設定する転送単位の設定手段と、
前記最小転送単位の画像データの処理のために必要な参照用画像データと補正データの少なくとも一方の最小転送単位を求める転送単位の算出手段と、
画像処理に使用されるバッファの容量に収まるように、前記画像データの最小転送単位と前記参照用画像データと補正データの少なくとも一方の最小転送単位とから、前記画像データの転送量を定める転送量の設定手段と、
前記定められた画像データの転送量と前記画像データの最小転送単位との比から、前記参照用画像データと補正データの少なくとも一方の転送量を求める転送量の算出手段と、
前記画像データの転送量と前記画像データの最小転送単位との比から、分割するバンド領域の高さを定めるバンド高さ算出手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法、画像処理装置およびプログラムに関するものである。特に、本発明は、画像処理のためにメインメモリの複数の画像データや補正データなどを分割して取り扱い、必要なデータを逐次的に読み出して画像処理や補正処理を行なう場合に、好適に用いられるものである。
【背景技術】
【０００２】
従来から、画像形成を行うに際し、空間フィルタ処理などの局所（近傍）画像処理が行なわれている。この局所画像処理は、処理対象となる画素を含む空間フィルタ領域に含まれるすべての画素を用いて、何らかの演算を行なう画像処理のことである。なお、以下の説明では、処理対象となる画素を注目画素と略称する。
【０００３】
例えば、図１１のデジタル画像データ３００に対して、エッジ強調処理やぼかし処理といった空間フィルタ処理が施される。このような局所画像処理の従来技術として、デジタル画像データを領域ごとに分割し、分割された別々の領域ごとに局所画像処理を行なうという技術がある（特許文献１〜４を参照）。一般に、かかる技術では、図１１の（ａ）〜（ｄ）に示されるように、１枚のデジタル画像データ３００の全体が帯状（短冊状）に分割され、逐次的に領域毎に各種の画像処理が行なわれる。この分割された細長い領域をバンド領域と呼び、バンド領域が展開される記憶領域をバンドメモリと呼び、画像を分割する行為をバンド分割と呼ぶ。バンドメモリは、メインメモリ内に記憶領域として確保されると決まっているわけではなく、システム上のどの記憶領域に確保してもよいが、ここでは、説明を簡潔にするためにバンドメモリをメインメモリ内に確保する場合を例に挙げて説明する。
【０００４】
なお、デジタル画像データの座標系（主走査方向−副走査方向）は、長さ方向と高さ方向という新たな座標系（バンド領域座標系）を定義し、バンド領域を（長さＢｄｌ×高さＢｄｈ）で表現する。副走査方向に画像をバンド分割する場合は、図１１の（ｅ）に示すように、バンド領域を（長さＢｄｌ×高さＢｄｈ）で表現する。一方、主走査方向に画像をバンド分割する場合は、図１２の（ａ）〜（ｄ）に示すように、バンド領域を（長さＢｄｌ×高さＢｄｈ）で表現する。
【０００５】
すなわち、バンド領域の長さＢｄｌは、必ずデジタル画像データの主走査方向の幅もしくは副走査方向の高さの何れかの値となり、バンドの高さは任意の値となる。
【０００６】
バンド処理について、図１１の例でもう少し詳しく説明する。なお、図１２においても基本的に同様であるので、重複した説明はさける。
【０００７】
まず、図１１の（ａ）に示す第１のバンド領域３０１を、メインメモリ上のバンドメモリに展開して画像処理を行なう。次に、図１１の（ｂ）に示す第２のバンド領域３０２を第１のバンド領域３０１が展開されたバンドメモリに上書き展開して画像処理を行なう。さらに、図１１の（ｃ）に示す第３のバンド領域３０３を第２のバンド領域３０２が展開されたバンドメモリに上書き展開して画像処理を行なう。最後に、図１１の（ｄ）に示す第４のバンド領域３０４を第３のバンド領域３０３が展開されたバンドメモリに上書き展開して画像処理を行なう。  図１１の（ａ）〜（ｄ）で明らかなように、バンド領域３０１〜３０４の長さは同じであるが、高さは同じである必要性は無い。メインメモリに確保される記憶領域であるところのバンドメモリの高さは、高さ方向のサイズが最も大きいバンド領域（図１１の場合、第１〜第３のバンド領域３０１〜３０３）によって決定される。図１２の場合も、バンド分割が３つであるのみで、図１１と同様である。
【０００８】
かかる技術では、各バンド領域間で隙間なく局所画像処理を行なうために、各バンド領域が、夫々隣接する領域との境界で一部分が互いに重なり合うように工夫している。また、特許文献４では、各バンド領域の高さと同一の方向に１画素ずつ余分に画素を走査して、局所画像処理に必要な注目画素を保持する遅延メモリの容量を各バンド領域の高さの大きさで規定することで、この遅延メモリの省メモリ化を実現している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許第６，５８７，１５８号公報
【特許文献２】特開２０００−３１２３２７公報
【特許文献３】特許第３７３３８２６号公報
【特許文献４】特開２００６−１３９６０６公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、画像処理方法および装置の分野を見渡すと、前述の特許文献１〜４で示される空間フィルタ処理などの局所（近傍）画像処理を考慮するだけは、対応できない画像処理が多く存在する。以下に、図１３を参照しながらその例を示す。
【００１１】
まず、図１３の上段に示す、スキャナなどの画像読み取り装置による読み取り画像に対して、センサ・デバイスの読み取り素子の個体差を補正するような補正処理１０１０があげられる。このような補正処理１０１０に必要な情報は、例えばセンサ・デバイスの読み取り素子ごとの読み取り最小値データと読み取り最大値データとである。これらの情報を基に、補正対象である読み取り画像を画素データ（画素値）ごとに、例えば下記（式１）を用いた演算により補正する。
【００１２】
Ｘ＝（Ｐ−ＭＩＮ）／（ＭＡＸ−ＭＩＮ）×１０２３        ...（式１）
ここで、Ｘ：補正画素値（Ｘは１０ｂｉｔのデジタル信号の場合）、Ｐ：読み取り画素値、ＭＩＮ：読み取り最小値、ＭＡＸ：読み取り最大値である。
【００１３】
つまり、補正処理１０１０に必要なデータは、画素ごとに異なる最小値データ、最大値データと読み取り画像の画素データという３種の異なる情報である。スキャナのセンサー・デバイスが、画素ごとの読み取り素子を１ラインにまとめたラインセンサの場合には、このセンサが副走査方向に移動することで２次元画像の読み取りを行う。このような読み取り方式の場合、主走査方向に対しては、画素ごとに異なる最小値データと最大値データが並び、副走査方向に対しては、主走査方向の位置が同一の画素の場合、同一の最小値データと最大値データとなる。
【００１４】
また上記に類似した補正処理として液晶テレビ、プラズマテレビなどの薄型テレビで使用される２次元表示デバイスに対する補正処理がある。２次元表示デバイスの場合、２次元に敷き詰められた表示素子の個体差が異なるため、上記補正処理１０１０のように１次元の補正データではなく、２次元の補正データを用いて補正処理を施すことになる。上記のような補正処理では、デバイス形状(素子の敷き詰められ方)に依存して補正データの繰り返し方が異なるので注意が必要となる。
【００１５】
また、図１３の中段に示す、例えば複数のレンダリング画像を合成データ（α値）に応じて画像合成するような合成処理１０２０がある。合成対象のレンダリング画像が２枚のとき、例えば下記（式２）のような合成式を用いて各画素ごとに合成処理１０２０を施す。
【００１６】
Ｘ＝Ｐ２×Ａ＋Ｐ１×（１０２４−Ａ）                ...（式２）
ここで、Ｘ：合成後の画素値（α値が１０ｂｉｔのデジタル信号の場合）、Ｐ１：第１レンダリング画像の画素値、Ｐ２：第２レンダリング画像の画素値、Ａ：合成データの画素毎のα値である。なお、合成データ（α値）は、レンダリング画像の画素すべてにおいて同一である場合もあれば、レンダリング画像の画素ごとに異なる２次元の合成データ（α値）である場合もある。
【００１７】
後者のような合成データ（α値）の場合、上記のような合成処理１０２０では、合成対象のレンダリング画像の枚数Ｎの場合、処理に必要な画素データと合成データ（α値）の数が上述の例と異なることは言うまでもない。
【００１８】
また、図１３の下段に示すような、例えば、動画像のインタレース／プログレッシブ変換（以下、Ｉ／Ｐ変換１０３０と略称する）のように、時間軸方向に連続した複数のフィールド画像を参照して適応的な空間フィルタ処理を施す場合がある。一般的に、Ｉ／Ｐ変換１０３０のように複数のフィールド画像を参照するような画像処理では、より多くのフィールド画像を用いて適応処理した方が高品位な画像処理を施せる。
【００１９】
しかしながら、複数のフィールド画像は、画像処理回路が実装される半導体チップ（ＡＳＩＣなど）と接続された安価なＤＲＡＭなどの外部メモリに記憶されていることが一般的である。そのため、Ｉ／Ｐ変換のために外部メモリから毎回複数のフィールド画像を読み出し、Ｉ／Ｐ変換回路に入力する必要がある。多くは、製品のコスト制約から外部メモリから複数フィールド画像を読み出すときに許容されるメモリ帯域には当然ながら限りがある。従って、例えば、フルハイビジョン（１９２０×１０８０ｉ）のような高解像度のフィールド画像を際限なく読み出してＩ／Ｐ変換を施すわけにはいかない。
【００２０】
一方、前述フルハイビジョン解像度のフィールド画像を例えば３枚までＩ／Ｐ変換のために読み出せるメモリ帯域の画像処理装置があったと仮定する。この画像処理装置において、ＮＴＳＣ（７２０×４８０ｉ）のような低解像度の動画像をＩ／Ｐ変換するのであれば、前述フルハイビジョン解像度の動画像より多くのフィールド画像を参照して高品位なＩ／Ｐ変換ができることは自明である。
【００２１】
上記のようなＩ／Ｐ変換１０３０では、使用可能なメモリ帯域が一定の場合、できるだけ高品位な画像処理を行うために、解像度や参照フィールド数に応じて柔軟に画像処理方法を切り替えることが重要となる。
【００２２】
前述の図１３に示した画像処理に共通することは、画素データが２次元に配置された画像データを１枚だけ考慮して画像処理を行うだけでは不十分であるということである。あるときは補正データが必要であったり、合成データが必要であったり、また、あるときは使用する画像データの枚数が任意であったりする。また、上記画像処理に必要な画像データや補正データや合成データは、センサ形状に依存して取得方法が異なる。例えば、繰り返し外部メモリなどの記憶装置から読み出すことが必要であったり、ユーザの指定する数によって読み出すレンダリング画像の枚数が異なったり、放送波の入力解像度によって読み出すフィールド画像の枚数が異なったりする。
【００２３】
ところで、近年、機器の差別化を目的とした高画質化を実現するために、デジタル画像データの解像度は増大しており、画像処理におけるデータ処理量もそれに応じて増大している。また、製品の高画質化や機能強化のために必要とされる情報も多岐にわたる。しかし、製品開発においては、限られたコスト制約の中で種々の画像処理の要求に対応することが望まれている。つまり、メモリ帯域や回路規模を一定に保ったままで、前述の種々の画像処理を柔軟に実現する装置や手法が望まれているのである。
【００２４】
しかしながら、上記従来技術は、局所画像処理を行なうに際し、バンド領域毎に外部メモリから１枚の画像データを読み出して空間フィルタ処理のための遅延メモリの省容量化については言及する。しかし、１枚の画像データに対する複数の補正データや複数の画像データや連続した複数フィールド画像に対して、各データの解像度とその数量に応じて柔軟にバンド領域を変更するという観点からの検討は行われていない。ここで、データの数量とは、参照フィールド数、レンダリング画像数、補正データ数である。
【００２５】
本発明は、従来技術と同様に遅延メモリの省容量化を実現しつつも、ある一定のメモリ帯域の中でさまざまな形態の画像処理を実現するため、データの解像度と参照枚数が変化しても柔軟に対処できる画像処理方法及びその装置を提供する。
【課題を解決するための手段】
【００２６】
上記の課題を解決するための本発明の画像処理方法は、参照用画像データと補正データの少なくとも一方を参照して画像データを処理する場合に、処理の対象の画像データを複数のバンド領域に分割し、分割したバンド領域ごとに画像処理を行う画像処理方法であって、前記画像データの最小転送単位を設定する工程と、前記最小転送単位の画像データの処理のために必要な前記参照用画像データと補正データの少なくとも一方の最小転送単位を求める工程と、画像処理に使用されるバッファの容量に収まるように、前記画像データの最小転送単位と前記参照用画像データと補正データの少なくとも一方の最小転送単位とから、前記画像データの転送量を定める工程と、前記定められた画像データの転送量と前記画像データの最小転送単位との比から、前記参照用画像データと補正データの少なくとも一方の転送量を求める工程と、前記画像データの転送量と前記画像データの最小転送単位との比から、分割するバンド領域の高さを定める工程とを有することを特徴とする。
【発明の効果】
【００２７】
本発明によれば、小さい回路規模で処理対象の画像データを複数バンド領域に分割し、分割したバンド領域毎に逐次的に画像処理を行うことができる。また、従来技術では実現していない多種多様な画像処理についてバンド領域の高さを柔軟に変更し、任意の解像度に対応した画像処理を小さい回路規模で実現できる。
【図面の簡単な説明】
【００２８】
【図１】画像処理装置の全体構成の一例を示すブロック図である。
【図２】種々のデータのＲＡＭへの格納例を説明する図である。
【図３】画像データの画素値の格納例を説明する図である。
【図４】画像処理部の回路構成の一例を示すブロック図である。
【図５】画像処理に必要なデータをＲＡＭからバッファに格納し、画像処理入力回路から画素データを出力するまでの動作例を示す図である。
【図６】画像処理工程の一例を示すフローチャートである。
【図７】画像処理装置の画像処理入力回路の構成の一例を示す図である。
【図８Ａ】画像処理装置の画像処理入力回路の動作の一例を示す図である。
【図８Ｂ】画像処理装置の画像処理入力回路の動作の一例を示す図である。
【図９】画素データの出力例を示すフローチャートである。
【図１０】画像データ・フォーマットの一例を説明する図である。
【図１１】バンド処理の動作の一例を説明する図である。
【図１２】バンド処理の動作の一例を説明する図である。
【図１３】従来の画像処理の例を説明する図である。
【発明を実施するための形態】
【００２９】
以下、添付の図面を参照して本発明の好適な実施例を説明する。
【００３０】
［実施例１］
実施例１では、バンド処理に特化した画像処理を行なう。これにより、特許文献１〜４記載の空間フィルタ処理などの局所（近傍）画像処理における遅延メモリの省容量化や特許文献４記載の複数画素を１つの処理単位とすることによる回路規模削減や高速化を実現する。それと共に、１枚の画像データに対する処理ではなく、複数の画像データと補正データの少なくとも一方を参照した画像データの補正処理や画像処理を実現する。このような目的を達成するために、実施例１では、デジタル画像データの座標系（主走査方向−副走査方向）とは異なるバンド領域座標系で画像処理が行なわれる。
【００３１】
＜画像処理装置の全体構成＞
図１は、実施例１による画像処理装置の全体構成の一例を示すブロック図である。
【００３２】
図１において、画像読み取り部１２０は、レンズ１２４、ＣＣＤセンサ１２６、及びアナログ信号処理部１２７等を有する。画像読み取り部１２０において、レンズ１２４を介しＣＣＤセンサ１２６に結像された原稿１１０の画像情報が、ＣＣＤセンサ１２６によりＲ（Ｒｅｄ），Ｇ（Ｇｒｅｅｎ），Ｂ（Ｂｌｕｅ）のアナログ電気信号に変換される。アナログ電気信号に変換された画像情報は、アナログ信号処理部１２７に入力され、Ｒ，Ｇ，Ｂの各色毎に補正等が行われた後にアナログ／デジタル変換（Ａ／Ｄ変換）される。こうして、デジタル化されたフルカラー信号（デジタル画像データという）が生成される。
【００３３】
生成されたデジタル画像データは、ＣＰＵ１０２により予め動作を設定されたＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）１９２により、共有バス１９０を介して、ＣＰＵ回路部１００のＲＡＭ１０６に格納される。次に、ＣＰＵ１０２は、ＤＭＡＣ１９４に設定してＲＡＭ１０６に格納されたデジタル画像データを読み出して、画像処理部１５０に入力する。
【００３４】
画像処理部１５０は、入力されたデジタル画像データに対し、ある時はスキャナなどのセンサ・デバイスの読み取り素子の個体差の補正と入力ガンマ補正などの色補正を行い、読み取り画像を正規化して一定水準の画像データを作成する。そして、これら処理が施されたデジタル画像データを予め書き込み動作の設定が成されたＤＭＡＣ１９６により、ＲＡＭ１０６に再度、格納させる。また、あるとき画像処理部１５０は、入力されたデジタル画像データに対し、入力色補正処理、空間フィルタ処理、色空間変換、濃度補正処理、及び中間調処理などの印刷のための画像処理を施して印刷可能な画像データを作成する。そして、上述同様ＤＭＡＣ１９６によりＲＡＭ１０６に格納させる。
【００３５】
最後にＣＰＵ１０２は、ＤＭＡＣ１９８に設定してＲＡＭ１０６に格納された画像処理済みのデジタル画像データを読み出して、画像印刷部（プリンタ）１７０へ出力する。この画像印刷部（プリンタ）１７０は、たとえば、インクジェットヘッドやサーマルヘッド等を使用したラスタプロッタ等の印刷出力部（図示せず）を備えて構成され、入力されたデジタル画像信号により紙上に画像を記録する。あるいは、後述の実施例２では、ディスプレイなどの映像表示部１６０により表示出力される。
【００３６】
なお、ＣＰＵ回路部１００は、演算制御用のＣＰＵ１０２、固定データやプログラムを格納するＲＯＭ１０４、データの一時保存やプログラムのロードに使用されるＲＡＭ１０６、及び外部記憶装置１０８等を備える。ＣＰＵ回路部１００は、画像読み取り部１２０、画像処理部１５０、及び画像印刷部（プリンタ）１７０等を制御し、本実施例の画像処理装置のシーケンスを統括的に制御する。外部記憶部１０８は、本実施例の画像処理装置が使用するパラメータやプログラムや補正データを記憶するディスク等の記憶媒体であり、ＲＡＭ１０６のデータやプログラム等は、外部記憶部１０８からロードされる構成としても構わない。
【００３７】
＜補正処理＞
まず、図１の画像読み取り部１２０による読み取り画像に対して、センサ・デバイスの読み取り素子の個体差を補正するような補正処理を行う場合について説明する。このような画像処理の場合、前述のようにセンサ・デバイスの読み取り素子ごとの読み取り最小値データと読み取り最大値データが必要になる。これらの種々のデータは一時的に前述ＲＡＭ１０６に格納されているが、一般的にＲＡＭ１０６は安価なＤＲＡＭで構成されることが多い。従って、前述のようにＤＭＡＣを介してこのような種々のデータを読み書きするには、ＤＲＡＭが性能を落とさずに読み書きできるような単位でデータをアクセスすることが望ましい。
【００３８】
（ＲＡＭ１０６のデータ構成例）
図２を用いて、ＲＡＭ１０６へのデータ格納のし方を説明する。
【００３９】
図２のＩＭＧ＿ＡＲＥＡ＿ＳＴＲ＿ＡＤＤＲからＩＭＧ＿ＡＲＥＡ＿ＥＮＤ＿ＡＤＤＲまでが、画像処理に必要な種々のデータを格納する領域である。図２の一例では、この領域にＳ０＿ＩＭＧからＳ５＿ＩＭＧまで６種のデータが格納されている状態である。ＤＲＡＭの性能を落とさずにデータをアクセスできるように、各々格納されるデータの容量の最小単位は、参照番号４０８で示すように３２ｂｉｔ×８ｗｏｒｄの３２Ｂｙｔｅとなっている。当然ながら、Ｓ０＿ＩＭＧからＳ５＿ＩＭＧまでのデータの格納容量は、３２Ｂｙｔｅの整数倍となる。
【００４０】
たとえば、２次元の画像データの場合、最大画像領域（ｗｉｎｄｏｗ'ｓ  ａｒｅａ）４４０に相当する領域がメモリ上に４２０で示される。そして、そこに収まるＳ０＿ＩＭＧ（ｉｍａｇｅ'ｓ  ａｒｅａ）４３０の領域がメモリ上に４１０で示される領域に格納されている。４２２，４２４，４２６は、Ｓ１＿ＩＭＧ〜Ｓ３＿ＩＭＧが収まる最大画像領域に相当するメモリ上の領域を示す。
【００４１】
スキャナのライン・センサ・デバイス４５０が原稿４９０に対して副走査方向（ｖ）に移動しながら原稿を読み取る場合には、ライン・センサ・デバイス４５０の主走査方向（ｈ）に補正データ（ＭＡＸ）４７０と補正データ（ＭＩＮ）４７５が分布している。そのデータは、図２の例では、ＲＡＭ１０６上のＳ４＿ＩＭＧ４６０とＳ５＿ＩＭＧ４６５に格納されている。
【００４２】
さらに、図３を用いてデータ構造を詳しく説明する。
【００４３】
５００は、前述のＳ０＿ＩＭＧ（ｉｍａｇｅ'ｓ  ａｒｅａ）４３０の領域の画像データを示している。５１０の領域は、前述の３２Ｂｙｔｅ単位のデータであり、その中に５２０で示す８画素のデータがパッキングされている。また、１つの画素データには、５３０で示すように、それぞれ１０ｂｉｔのＲ（Ｒｅｄ），Ｇ（Ｇｒｅｅｎ），Ｂ（Ｂｌｕｅ）データがパッキングされている。図３の例では、残りの２ｂｉｔは、ＤＲＡＭのデータアクセスを簡単にするために無効データとして使用しない。図３の太枠５００の範囲は、８Ｍ×Ｎの大きさの画像を意味する。また、前述のＳ４＿ＩＭＧ４６０とＳ５＿ＩＭＧ４６５に格納されているスキャナ・センサ・デバイスの補正データの場合、１ラインのライン・センサであるため座標（０，０）から（８Ｍ，０）の範囲のデータとなる。
【００４４】
前述の画像読み取り部１２０により読み取られた読み取り画像の画像データと補正データは、図２および図３に基づいて説明したように、ＲＡＭ１０６に格納されている。
【００４５】
（画像処理部１５０の構成例）
図４は、実施例１の画像処理部１５０の構成例を示すブロック図である。
【００４６】
ＣＰＵ１０２がＤＭＡＣ１９４を起動し、ＲＡＭ１０６から上記のように格納された読み取り画像データと補正データとを読み出し、本実施例の画像処理装置が有する主要な回路構成の一例である、図４の画像処理部１５０に入力する。
【００４７】
読み取り画像データと補正データとは、ＤＭＡＣ１９４を介しバス２０５を経由して画像処理部１５０に入力される。後述に詳細説明を行うが、画像処理入力回路２２０は、各種データを受け取り、図３で説明したパッキングされた読み取り画像データと補正データ（ＭＡＸ）と補正データ（ＭＩＮ）から、１画素単位の画素データ（画素値）を後述の順番で抜き出す。そして、後段の画像処理回路（１）２３０、画像処理回路（２）２４０、...、画像処理回路（Ｐ）２８０に送り、各種の補正処理（もしくは画像処理）を行う。そして、画像処理出力回路２９０にて、図３の３２Ｂｙｔｅ単位のデータに再度パッキングしたデータを作成し、ＤＭＡＣ１９６を介しバス２９５を経由してＲＡＭ１０６に補正処理（画像処理）済みの画像データを書き戻す。画像処理回路（１）２２０から画像処理回路（Ｐ）２９０のうちのいずれかにて、上記（式１）で示したセンサ・デバイスの読み取り素子の個体差の補正を行う。もちろん、入力色補正処理、空間フィルタ処理、色空間変換、濃度補正処理、及び中間調処理のような画像処理も行っている。
【００４８】
＜ＲＡＭ１０６から画像処理入力回路２２０へのデータ転送＞
図５は、実施例１の画像処理方法を用いた場合に、ＲＡＭ１０６から画像処理入力回路２２０に前述の画像データや補正データを入力する方法についての詳細を説明する図である。
【００４９】
点線６０５で囲まれた画像データが、ＲＡＭ１０６に格納されている。図５の（ａ）の６００は画像データの全体像であり、そのうちバンド領域６１０を抜き出し、実施例１の画像処理方法を行う。処理対象となるバンド領域６１０は、図５の（ｂ）と（ｃ）で示されるようにバンド領域座標系でバンド領域の高さＢｄｈが１６ライン（１６画素）であり、バンド領域の長さＢｄｌが８×Ｍ画素である。まず、図５の（ｄ）記載のＣＰＵ１０２は、ＤＭＡＣ１９４に対して、共有バス１９０を介してＲＡＭ１０６のバンド領域６１０の先頭アドレスと連続読み出し量、インクリメント・アドレスと繰り返し回数を設定する。ここで、連続読み出し量とは、３２Ｂｙｔｅ単位のデータを連続して何回読み出すかを表す。図示の例では、先頭アドレスは図２のＳ０＿ＩＭＧ＿ＳＴＲ＿ＡＤＤＲとなり、連続読み出し量は１回（３２Ｂｙｔｅ）、インクリメント・アドレスは１ラインのデータ量である（３２Ｂｙｔｅ×Ｍ）となり、繰り返し数は１６回である。
【００５０】
また、図５の（ｄ）のように、ＤＭＡＣ１９４と画像処理入力回路２２０の間には、両モジュールからデータ・アクセス可能な共有バッファ６６０が存在する。そこで、ＣＰＵ１０２は共有バス１９０を介してＤＭＡＣ１９４に取得データの書き込み先である共有バッファの書き込み先頭アドレスも指示する。図５の一例では、バッファ６６２にデータを一時保存するため、Ｓ０＿ＢＵＦ＿ＳＴＲ＿ＡＤＤＲが設定されるアドレスとなる。ＤＭＡＣ１９４はＣＰＵ１０２からの指示を受け、ＲＡＭ１０６の画像データの図５の（ｃ）に記載のバンド領域６３０の領域（１）６４０から領域（Ｍ）６４５のいずれかを読み出す（６５０として記載）。そして、バス６９４を介して共有バッファ６６０の領域６６２に取得データを格納後、割り込み信号６９２を介して転送終了を通知する。
【００５１】
次に、ＣＰＵ１０２は、共有バス１９０を介して後述の画像処理用のパラメータを設定する。画像処理用のパラメータとしては、処理データ数、データ識別子（番号）、バンド領域の高さ、画像データ・フォーマット、左端削除画素数と右端削除画素数、上端糊代画素数と下端糊代画素数と左端糊代画素数と右端糊代画素数を含む。更に、バンド領域の長さ方向の連続するＮ画素（画素群：Ｎは１以上の整数）を示す並列度、走査モード、共有バッファの読み出し先頭アドレスＳ０＿ＢＵＦ＿ＳＴＲ＿ＡＤＤＲなどを含む。そして、ＣＰＵ１０２は画像処理入力回路２２０を起動する。画像処理入力回路２２０は、共有バッファ６６０に対して、チップセレクト信号、アドレス信号などの制御信号６７２を介してリード・アクセスしてリード・データ６７４を取得する。そして、後述の動作を行い、１画素単位の画素データ（画素値）を選び出し、画像処理部１５０の内部バス２２５に画素データを出力した後、割り込み信号６７８を介して入力動作の終了を通知する。
【００５２】
なお、共有バッファは、図５の（ｅ）に６６０'で示すように、２つ以上のバッファ６６６と６６７で構成しても良い。前述の図５の（ｄ）の例では、ＤＭＡＣ１９４と画像処理入力回路２２０で１つのバッファを共有しているため、時分割で動作していた。しかし、図５の（ｅ）の共有バッファ６６０'の構成にすると、画像処理入力回路２２０が共有バッファ６６０'から画素データの取得処理をしている間に、ＤＭＡＣ１９４は共有バッファ６６０'にＲＡＭ１０６から次ぎの画像データを転送できる。そのため、ＤＭＡＣ１９４と画像処理入力回路２２０の処理を並列化できる。
【００５３】
画像データのバンド領域を画像処理するためには、図５の（ｄ）に記載の領域（１）６４０から領域（Ｍ）６４５まで、同様の動作をＭ回繰り返せばよい。以上のように、ＲＡＭ１０６から共有バッファへの画像データの取得を行う。そして、その後の２つの補正データに関しても、ＤＭＡＣ１９４に設定する繰り返し回数を１回（つまり、バンド領域の高さが１ライン）として、画像データと同様の動作で順次必要なデータを取得する。
【００５４】
なお、Ｎが２以上の整数のときには、Ｎ個の処理対象画素を同時に取得し、Ｎ個の前記画像処理回路へ同時に提供する。
【００５５】
＜バンド領域の高さの決定手順＞
次に、実施例１のバンド領域の高さの決め方について、図６を用いて説明する。図６は、ＣＰＵ１０２が実行するプログラムの処理手順例を示すフローチャートである。
【００５６】
ＣＰＵ１０２は、処理を開始し（Ｓ７０５）、補正処理に必要となる種々のデータの個数を、処理データ数Ｓとして設定する（Ｓ７１０）。本実施例の場合、処理データ数は"３"となる。第１の処理データに対しては、補正対象の読み取り画像データとしてそのデータを識別するために、データ識別子（番号）をとして０"を付加する。次に、第２の処理データに対しては、センサ・デバイスの補正データ（ＭＡＸ）としてそのデータを識別するために、データ識別子（番号）として"１"を付加する。さらに、第３の処理データに対しては、センサ・デバイスの補正データ（ＭＩＮ）としてそのデータを識別するために、データ識別子（番号）として"２"を付加する。さらに、図３で説明した画像データ・フォーマットの設定により、３２Ｂｙｔｅデータに何画素が含まれるかが規定される。本実施例では、説明を簡潔にするために、処理対象の画像データと補正データ（ＭＡＸおよびＭＩＮ）のデータ・フォーマットは、図３に図示のものと同一フォーマットとする。
【００５７】
次に、処理データ数Ｓの数だけ、後述の処理のために以下のパラメータを設定する（Ｓ７２０）。例えば、入力画像処理回路の動作に必要な左端削除画素数と右端削除画素数、上端糊代画素数と下端糊代画素数と左端糊代画素数と右端糊代画素数、バンド領域の長さ方向の連続するＮ画素（画素群）を示す並列度、走査モードを含む。すなわち、変数lpを初期化し（Ｓ７２１）、変数lpがＳに成るまで（Ｓ７２２）、各種パラメータの設定（Ｓ７２３）と変数lp＋１（Ｓ７２４）を繰り返す。
【００５８】
パラメータの設定が終わると（Ｓ７２２のＹｅｓ）、次に、バンド領域の高さおよび共有バッファの読み出し先頭アドレスを算出する（Ｓ７３０）。まず、処理対象の画像データのフォーマットを設定する（Ｓ７３１）。前述のデータ・フォーマットの例では、３２Ｂｙｔｅ単位のデータが画像データの１ラインを表す。本実施例の補正処理の場合、この１ラインの画像データを処理するために補正データ（ＭＡＸおよびＭＩＮ）が必要となる。ただし、本実施例ではライン・センサであり、１ラインの補正データが読み取り原稿の副走査方向に繰り返されるため、図３の画像データのＡ列（Ａ−ＡからＡ−Ｎ）のすべての画像データに関して同一の補正データとなる。このＡ列の領域の画素データ（８×Ｎライン）を処理するための補正データ（ＭＡＸ）は、１ライン×８画素分の３２Ｂｙｔｅあればよく、補正データ（ＭＩＮ）に関しても同様である。
【００５９】
そこで、共有バッファの容量が｛２５６ｂｉｔ（＝３２Ｂｙｔｅ）×ＢＬワード｝であり、ＢＬラインの種々のデータを保持できると仮定して、以下の算出を説明する。
【００６０】
処理対象の画像データの最小転送単位と、この画像データを補正するための補正データ（ＭＡＸおよびＭＩＮ）の最小転送単位とが算出される（Ｓ７３２，Ｓ７３３）。本例では、画像データの最小転送単位は３２Ｂｙｔｅ（共有バッファの１ワード（１ライン）に相当）であり、この画像データを補正するための補正データ（ＭＡＸおよびＭＩＮ）の最小転送単位も３２Ｂｙｔｅである。本実施例の場合、画像データＡ列については同一の補正データが繰り返される（Ｓ７４０の有）。この場合に、画像データの最小転送単位３２Ｂｙｔｅを処理するために（３２Ｂｙｔｅ×２）の補正データが必要となる（Ｓ７４１）。そして、画像データの処理ライン数が増えても補正データのライン数は増えない。そこで、バッファライン数ＢＬから"２"を減算した値を画像データの転送量として得て（Ｓ７４２）、参照データの最小転送単位を"０"とする（Ｓ７５０）。そして、バッファライン数ＢＬから"２"を減算した値を画像データの最小転送単位である３２Ｂｙｔｅで除算した値がバンド領域の高さとなる（Ｓ７５１）。
【００６１】
最後に共有バッファの先頭アドレスＳ０＿ＢＵＦ＿ＳＴＲ＿ＡＤＤＲ、Ｓ１＿ＢＵＦ＿ＳＴＲ＿ＡＤＤＲ、Ｓ２＿ＢＵＦ＿ＳＴＲ＿ＡＤＤＲを設定する（Ｓ７６０）。上述の例では、
画像データ          ：Ｓ０＿ＢＵＦ＿ＳＴＲ＿ＡＤＤＲ＝０
補正データ（ＭＡＸ）：Ｓ１＿ＢＵＦ＿ＳＴＲ＿ＡＤＤＲ＝ＢＬ−２
補正データ（ＭＩＮ）：Ｓ２＿ＢＵＦ＿ＳＴＲ＿ＡＤＤＲ＝ＢＬ−１
となる。
【００６２】
なお、上記例では、補正データによる補正処理に限定して示したが、参照用画像データによる他の画像処理についても同様に実現される（Ｓ７３３参照）。
【００６３】
＜画像処理入力回路２２０の構成例と処理例＞
（画像処理入力回路２２０の構成例）
本実施例の画像処理入力回路２２０の内部構成を、図７に示す。なお、図７で、図６と同じ機能要素や信号は同じ参照番号で示している。
【００６４】
図７で、ＣＰＵ１０２から動作パラメータ８１０が設定され、この値は内部レジスタに記憶され、シーケンサ８２０が動作する。動作については図８Ａおよび図８Ｂと図９により後述する。シーケンサ８２０により共有バッファ６６０のアドレス６７２が算出され、３２Ｂｙｔｅのデータ６７４を共有バッファ６６０から取得する。そして、画素データ生成回路８３０にて１画素のデータ、もしくはバンド領域の長さ方向に連続するＮ画素のデータを生成し、画像処理部１５０の内部バス２２５へ出力される。
【００６５】
（画像処理入力回路２２０の処理例）
画像データのバンド領域を画像処理するためには、図８Ａの領域（１）６４０から領域（Ｍ）６４５まで３２Ｂｙｔｅ×ライン数分（以下、転送ブロックと呼ぶ）のデータ処理をＭ回繰り返せばよい。また、画像データと参照する複数の画像データと補正データの少なくとも一方についてデータ処理をＭ回繰り返すので、本実施例の補正処理の場合は合計３Ｍ回繰り返すこととなる。また、各々のデータについてバンド領域の長さ方向にトリミング処理（不必要な端部画素を切り捨てる処理）を行うために、各々のデータ毎に左端削除画素数と右端削除画素数を設定する。
【００６６】
この削除画素数は、画像データ・フォーマットの３２Ｂｙｔｅ単位の画素領域を超えては設定することはできない。つまり、本実施例のデータ・フォーマットは８画素／３２Ｂｙｔｅであるため、左端削除画素数と右端削除画素数は７までの値となる。それ以上のトリミング処理を行う場合には、そもそも転送するブロックをＲＡＭ１０６からの読み出し時に転送しなければよい。また、この左端削除画素数と右端削除画素数の設定は、最初の転送ブロック６４０と最後の転送ブロック６４５でしか意味がない。そのため、左端削除画素数の設定は最初の転送ブロック６４０に影響を与え、斜線領域８５６（画素３〜７）が有効となり、画素０〜２は削除される。同様に右端削除画素数の設定は最後の転送ブロック６４５に影響を与え、斜線領域８５８（画素０から1）が有効となり画素２〜７は削除される。そしてトリミング処理後の画像データ領域８６０が生成される。
【００６７】
次に、上記トリミング処理後の画像８６０に対して端部画素を指定画素数分（上端糊代画素数と下端糊代画素数と左端糊代画素数と右端糊代画素数）の画素コピー拡張を行い、糊代領域を生成して画像データの領域８７０にようにする。画像処理回路の中には空間フィルタなどの局所画像処理があり、画像データの上端、下端、左端、右端で局所画像処理を行うためには、上記糊代領域の生成機能があることが望ましい。
【００６８】
本実施例では、スキャナ補正であるため、スキャナの読み取り領域を予め広く設定しておけば、糊代領域の生成機能がなくとも、所望の出力画像を得ることができる。しかし、後述の実施例２の場合では、入力が放送波などの規格化された映像信号であるため、所望の出力画像を得るためには上記糊代領域の生成機能が必要となる。上端糊代画素数と下端糊代画素数と左端糊代画素数と右端糊代画素数の設定により、シーケンサ８２０が糊代領域を考慮して共有バッファ６６０をアクセスする。
【００６９】
具体的には転送ブロック（１）６４０のときには、上端糊代画素数と下端糊代画素数と左端糊代画素数を考慮し、上端糊代画素もしくは下端糊代画素を生成する間、共有バッファのアドレスをインクリメントしない。また、読み出した３２Ｂｙｔｅの画素データを８７２のように左端を拡張して画素があると考える。また、転送フロック（２）から（Ｍ−１）に関しては、前述同様に上端糊代画素もしくは下端糊代画素を生成する間、共有バッファのアドレスをインクリメントしない。左端、右端共に３２Ｂｙｔｅの画素領域を拡張して考える必要はない。また、最後の転送ブロック（Ｍ）６４５では、前述同様に上端糊代画素もしくは下端糊代画素を生成する間、共有バッファのアドレスをインクリメントしない。また、読み出した３２Ｂｙｔｅの画素データを８７４のように右端を拡張して画素があると考える。
【００７０】
図８Ｂは、前述トリミング処理および糊代領域の生成機能による端部拡張処理によって作成された画像データ８７０がどのように内部バス２２５を介して出力されるかを説明している。図８Ｂでは、転送ブロック（１）６４０を例にしている。
【００７１】
出力ライン数Ｌは上端糊代画素と下端糊代画素とバンド高さを示すライン数の合計である。ＣＰＵ１０２から設定されたバンド領域の長さ方向の連続するＮ画素（画素群）を示す並列度および走査モードにより画素データの出力のし方が変わる。前記並列度の設定だけ、バンド領域長さ方向に連続して画素を出力する。走査モードの設定によりＮ画素を１画素／サイクルで出力するか、Ｎ画素／サイクルで同時（並列）に出力するかを定める。Ｎ画素／サイクルでの同時（並列）出力の場合、画像処理１５０の内部バス２２５は同時に出力できるだけの帯域を持っている必要があり、後段の画像処理回路もＮ画素並列で動作する必要がある。また、画像データ・フォーマットの３２Ｂｙｔｅ単位の画素数と左端削除画素数と左端糊代画素数と前述の並列度により定まる画素群の数ＰＮとは整数でなければならないという制限がある。
【００７２】
＜画像処理入力回路の内部バス２２５への画素データの出力手順例＞
図９のフローチャートに、画像処理入力回路２２０の内部バス２２５への画素データの出力の手順例をまとめる。かかる図９のフローチャート
ステップＳ９６０のループ（Ｓ９６１，Ｓ９６２，Ｓ９７０，Ｓ９６３）から分かるように、画像データもしくは種々の参照データ（複数の補正データと画像データの少なくとも一方）の画素群を順番に出力して画像処理回路に提供する。図４の画像処理回路２３０、２４０、...、２８０は、Ｎ画素の画像データ、補正データＭＡＸ、補正データＭＩＮを順次受け取り、データが揃ったところで補正処理を行い、Ｎ画素の補正処理後のデータを出力する。各種データの区別は、前述のデータ識別子（番号）により判定される。これらの処理を、ステップＳ９５０のループ（Ｓ９５１，Ｓ９５２，Ｓ９６０，Ｓ９５３）が示すようにバンド領域の高さ方向に毎ライン繰り返す。ただし、補正データの場合は、バンド高さが１ラインであり、常に同じラインの共有バッファアドレスを繰り返し読むこととなる。出力ライン数（Ｌ×Ｎ）の画素の領域が出力された後、ステップＳ９４０のループ（Ｓ９４１，Ｓ９４２，Ｓ９５０，Ｓ９４３）が示すようにバンド領域の長さ方向に画素群（Ｎ画素）だけ走査し、次に画素分の処理へ移る。これらの処理を繰り返して画素群の数ＰＮだけ処理が移行し、（ＰＮ×Ｎ×Ｌ）の画素数すべてが処理されると、１つの転送ブロック（１）が終了し、次の転送ブロック（２）〜（Ｍ）を繰り返すこととなる。
【００７３】
［実施例２］
実施例１と同一機能を有する構成や工程には同一符号を付すとともに、構成的、機能的にかわらないものについてはその説明を省略する。
【００７４】
次に、本発明を図１３に示した合成処理１０２０やＩ／Ｐ変換１０３０に適用した実施例２ついて考える。
【００７５】
実施例１との違いは、図１の映像入力部１３０を介して種々のデータが入力されること、および映像表示部１６０によりディスプレイなどの表示装置に処理後のデータが出力されることであり、図１のその他の構成部品の動作は実施例１と同じである。また、図４の画像処理部の構成は実施例１と同じである。
【００７６】
本実施例２では、画像データを画像処理する場合に必要となる複数の画像データや合成データは、実施例１と違って２次元のデータとなっている。また実施例１の補正データ（ＭＡＸおよびＭＩＮ）のように副走査方向に同一のデータ値を繰り返すことはない。そのため、図２のＳ１＿ＩＭＧやＳ２＿ＩＭＧやＳ３＿ＩＭＧのように処理対象であるＳ０＿ＩＭＧと同様に、座標系４４０と同じ格納のし方となる。説明を簡潔にするために実施例２でも種々の画像データおよび合成データは、図３のデータ・フォーマットであると仮定する。また、ＲＡＭ１０６から共有バッファ６６０への各種データ取得動作も、実施例１と同様である。
【００７７】
＜バンド領域の高さの決め方＞
実施例２のバンド領域の高さの決め方については、実施例１と異なる。以下、その違いを説明する。
【００７８】
ＣＰＵ１０２は、画像処理に必要となる種々のデータの個数を処理データ数Ｓとして設定する。レンダリング画像２枚の合成処理のときは、必要なデータは、処理対象の画像データ１枚に合成対象の画像データと合成データ２枚の計３種のデータであり、Ｓ＝３である。また、フィールド画像３枚に対するＩ／Ｐ変換の場合は、処理対象の時間のフィールド画像に対し、過去、未来の１フィールドづつの画像データが必要となり、計３種のデータとなり、Ｓ＝３である。また、フィールド画像５枚に対するＩ／Ｐ変換の場合は、処理対象の時間のフィールド画像に対し、過去、未来の２フィールドづつの画像データが必要となり、計５種のデータとなり、Ｓ＝５である。なお、処理データ数Ｓの数だけデータ識別子（番号）、左端削除画素数と右端削除画素数、上端糊代画素数と下端糊代画素数と左端糊代画素数と右端糊代画素数、バンド領域の長さ方向の連続するＮ画素（画素群）を示す並列度、走査モードの設定を行う。しかし、実施例１と同様のため説明を割愛する。
【００７９】
次に、バンド領域の高さおよび共有バッファの読み出し先頭アドレスを算出する。前述フォーマットにより３２Ｂｙｔｅ単位のデータが画像データの１ラインを表す。本実施例の場合、この１ラインの画像データを処理するためにその他の画像データおよび合成データも３２Ｂｙｔｅ（１ライン）となる。そこで、共有バッファ６６０の容量が｛２５６ｂｉｔ（＝３２Ｂｙｔｅ）×ＢＬ｝ワードであり、ＢＬラインの種々のデータを保持できると仮定して、以下の算出を説明する。
【００８０】
画像データの最小転送単位は３２Ｂｙｔｅ（共有バッファの１ワード（１ライン）に相当）であり、この画像データを処理するための種々のデータの最小転送単位も３２Ｂｙｔｅである。つまり、画像データの最小転送単位３２Ｂｙｔｅを処理するために、レンダリング画像２枚の合成処理のときは（３２Ｂｙｔｅ×２）の種々のデータが必要となる。フィールド画像３枚に対するＩ／Ｐ変換の場合も同様である。フィールド画像５枚に対するＩ／Ｐ変換のときは、（３２Ｂｙｔｅ×４）の種々のデータが必要となる。そこで、バンド領域の高さ（ライン数）は以下の結果となる。
・レンダリング画像２枚の合成処理
ＢＬライン／（１ライン＋２ライン）＝ＢＬ／３
・フィールド画像３枚に対するＩ／Ｐ変換
ＢＬライン／（１ライン＋２ライン）＝ＢＬ／３
・フィールド画像５枚に対するＩ／Ｐ変換
ＢＬライン／（１ライン＋４ライン）＝ＢＬ／５
バッファライン数ＢＬを、画像データの最小転送単位３２Ｂｙｔｅとそれを処理するために必要なデータの最小転送単位との合計値で除算した値が、バンド領域の高さとなる。
【００８１】
共有バッファ６６０の先頭アドレスは、上記バンド領域の高さ（ライン数）づつ等間隔に配置されたアドレスとなる。図６の参照データの繰り返しの有無（Ｓ７４０）が"無"の場合の算出フローを参照されたい。
【００８２】
上記バンド高さの設定に従い、所望の画像データおよび種々の参照データを共有バッファに書き込んだ後の画像処理回路への画素データの出力のし方は、実施例１と同様である。
【００８３】
［他の実施例］
図１２に示すように、特許文献１と同様にバンド領域の長さ方向を画像データの副走査方向に合わせて設定する。そして、図３の画像データ・フォーマットの３２Ｂｙｔｅ単位に含まれる画素の領域５２０を主走査方向に１画素、副走査方向に８画素と設定しても、前述の実施例１及び２が成立することは言うまでもない。
【００８４】
また、図１０に示すように、３２Ｂｙｔｅ単位に含まれる画素の領域１２８２が主走査方向に４画素、副走査方向に２画素と設定した場合を考える。この場合には、ＣＰＵ１０２とＤＭＡＣ１９４による共有バッファ６６０への画像データ転送は、最小転送単位が２ラインとなり無駄に転送することになる。しかし、図７の画像処理入力回路２２０のシーケンサ８２０が１ライン単位に共有バッファ６６０へのアクセス処理を行うことができるのであれば、前述の実施例１乃至３が成立することは言うまでもない。
【００８５】
また、前述の各実施例の処理は、複数のハードウェアとソフトウエアの協同によって実現するようにしてもよい。この場合、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（プログラム）をコンピュータ等の処理装置（ＣＰＵ、プロセッサ）にて実行することで実現できる。
【００８６】
また、本発明は前述した実施例の機能をコンピュータに実現させるプログラムを記憶した記憶媒体を、システム或いは装置に供給することによって実現してもよい。
【図１】
2010272028.tif 000003
【図２】
2010272028.tif 000004
【図３】
2010272028.tif 000005
【図４】
2010272028.tif 000006
【図５】
2010272028.tif 000007
【図６】
2010272028.tif 000008
【図７】
2010272028.tif 000009
【図８Ａ】
2010272028.tif 000010
【図８Ｂ】
2010272028.tif 000011
【図９】
2010272028.tif 000012
【図１０】
2010272028.tif 000013
【図１１】
2010272028.tif 000014
【図１２】
2010272028.tif 000015
【図１３】
2010272028.tif 000016