画像処理装置、画像形成装置及び、負荷分散処理方法
【課題】 スキャンライン法のレンダリングモジュールで生成された画像とペインターズ法のレンダリングモジュールで生成された画像を保存しておく必要があり、メモリ効率が悪い。
【解決手段】 スキャンラインレンダラとペインターズレンダラはマルチプロセッサ構成で、別々のCPUコアで並列に処理される構成を備え、ペインターズ法のレンダリングモジュールで生成された画像はスキャンライン法のレンダリングモジュールに供給される構成を備え、スキャンライン法のレンダリングモジュールの最終処理で合成されて出力されるようにする。
【解決手段】 スキャンラインレンダラとペインターズレンダラはマルチプロセッサ構成で、別々のCPUコアで並列に処理される構成を備え、ペインターズ法のレンダリングモジュールで生成された画像はスキャンライン法のレンダリングモジュールに供給される構成を備え、スキャンライン法のレンダリングモジュールの最終処理で合成されて出力されるようにする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パーソナルコンピュータや画像形成装置などの情報処理システムにおける画像処理でのグループ化に関するものである。
【背景技術】
【0002】
パーソナルコンピュータや画像形成装置等の計算機端末では、近年マルチCPU等を用いた分散処理が利用されつつある。
【0003】
しかし、アプリケーションから渡される描画データ(ユーザが手作りしたデータでも良い)は、処理プロセスが考慮されておらず、マルチCPUや複数モジュールでの分散処理等を効率よく行うことが出来なかった。
【0004】
分散処理のためには、描画データのグループ化が必要である。
【0005】
マルチCPUや複数モジュールで効率よく分散処理するための描画データのグループ化方法が特許文献1に開示されている。
【0006】
特許文献1によればページ内に含まれるオブジェクトをグループ化する条件として、スキャンライン法とペインターズ法のどちらのレンダリング方法でレンダリング処理した方が高速に処理可能であるかを基準とする。
【0007】
また、それぞれのグループはスキャンライン法のレンダリングモジュール、ペインターズ法のレンダリングモジュールで並列にレンダリング処理され、
グループごとにレンダリング処理された画像が保存されたのち、合成処理部によって1ページの画像として生成される。
【特許文献1】特開2007−94758号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
上記従来例では図1に示すようにスキャンライン法のレンダリングモジュールで生成された画像とペインターズ法のレンダリングモジュールで生成された画像を保存しておく必要があり、メモリ効率が悪いという問題点がある。
【0009】
具体的には図1に示す、スキャンラインレンダリングモジュールの出力画像101およびペインターズレンダリングモジュールの出力画像102を保存するためのメモリが必要である。
【0010】
また、スキャンライン法あるいはペインターズ法で行うレンダリングはパーソナルコンピュータ上あるいは画像形成装置上のいずれか一方で行われる。
【0011】
そのためマルチCPUや複数モジュールでの分散処理が可能であっても、処理能力が低いためにスキャンライン法あるいはペインターズ法で行うレンダリングを同時に行うと速度が低下してしまうという点について問題がある。
【0012】
本発明では上記問題点の解決を課題とする。
【課題を解決するための手段】
【0013】
スキャンラインレンダラとペインターズレンダラはマルチプロセッサ構成である場合、別々のCPUコアで並列に処理される構成を備え、ペインターズ法のレンダリングモジュールで生成された画像はスキャンライン法のレンダリングモジュールに供給される構成を備え、スキャンライン法のレンダリングモジュールの最終処理で合成されて出力されることを特徴とする。
【0014】
スキャンライン法あるいはペインターズ法でレンダリングされる描画データのグループは同期して動作するためY軸ソートする構成を備える。
【0015】
さらに、メモリ容量を効率化するためにはペインターズ法でレンダリングされる描画データグループは表面(Z軸上の最上位)でかつ、モノクロのオブジェクトに限定する処理を備えても良い。
【0016】
スキャンライン法のレンダリングモジュールに適した描画データのグループはパーソナルコンピュータ上でレンダリングされ、ペインターズ法のレンダリングモジュールに適した描画データのグループは、画像形成装置上でレンダリングする構成を備える。
【0017】
その逆にペインターズ法のレンダリングモジュールに適した描画データのグループはパーソナルコンピュータ上でレンダリングされ、スキャンライン法のレンダリングモジュールに適した描画データのグループは、画像形成装置上でレンダリングする構成を備える。
【0018】
また、従来技術と同様に、どちらか一方の装置上で両方のグループがレンダリングされても良い。
【0019】
さらに、パーソナルコンピュータ上でレンダリングされた画像には圧縮処理を施す処理を備える。
【0020】
その場合、画像形成装置上ではスキャンライン法によるレンダリング処理あるいはペインターズ法によるレンダリング処理のどちらかと、画像の伸張処理が並列に行われる処理を備える。
【0021】
上記切り分けはパーソナルコンピュータと画像形成装置の処理能力によって動的に判断する処理を備える。
【発明の効果】
【0022】
本発明によって、グループ化された描画データをスキャンライン法のレンダリングモジュールと、ペインターズ法のレンダリングモジュールを複数CPUによって並列に処理し高速なレンダリングを行う場合にも、省メモリで実現することが出来るようになる。
【発明を実施するための最良の形態】
【0023】
次に、本発明の詳細を実施例の記述に従って説明する。
【実施例1】
【0024】
図11を用いて本実施例を適応するのに好適なパーソナルコンピュータと画像形成装置のハードウェア構成の一例を説明する。
【0025】
パーソナルコンピュータ1100には複数のCPU1 1101、CPU2 1102が含まれ、メモリバス1106を解してRAM1103、ROM1104に接続される。
【0026】
ROM1104にはスキャンラインレンダリングモジュールとペインターズレンダリングモジュールの複数のレンダリングモジュールが格納されている。
【0027】
パーソナルコンピュータ1100上でレンダリング処理される場合、RAM1103上に格納されたグループ化された描画データは、CPU1 1101とCPU2 1102に並列で読み出され描画され、画像がRAM1103上に形成される。
【0028】
そのときにCPU1 1101またはCPU2 1102上で動作するモジュールはROM1104に格納されているスキャンラインレンダリングモジュールあるいはペインターズレンダリングモジュールである。
【0029】
パーソナルコンピュータ1100上でレンダリングされない場合、グループ化された描画データはI/F1105を通して、画像形成装置1110に転送される。
【0030】
画像形成装置1110には複数のCPU1 1111、CPU2 1112が含まれ、メモリバス1116を解してRAM1113、ROM1114に接続される。
【0031】
画像形成装置1110はI/F1115を通して、グループ化された描画データを受信し、RAM1113に保存する。
【0032】
ROM1113にはスキャンラインレンダリングモジュールとペインターズレンダリングモジュールの複数のレンダリングモジュールが格納されている。
【0033】
画像形成装置1110上でレンダリング処理される場合、RAM1113上に格納されたグループ化された描画データは、CPU1 1111とCPU2 1112に並列で読み出され描画され、画像がRAM1113上に形成される。
【0034】
そのときにCPU1 1111またはCPU2 1112上で動作するモジュールはROM1114に格納されているスキャンラインレンダリングモジュールあるいはペインターズレンダリングモジュールである。
【0035】
RAM1103上に形成された画像は、VIDEO I/F1117を通して実際の紙媒体上に画像形成され印刷される。
【0036】
図2を用いて本発明の適用に好適な描画データのグループ化の一例を説明する。
【0037】
201は複数の罫線や文字で表現される帳票データである。
【0038】
背面に描画される罫線をスキャンライン法でレンダリング処理するグループ202、表面に描画される文字をペインターズ法でレンダリング処理するグループ203にグループ化する。
【0039】
図3のブロック図を用いて、本発明のレンダリング処理の流れを説明する。
【0040】
グループ化された描画データ301は、レンダリングタイミング制御モジュール302によって、スキャンラインレンダリングモジュール303、ペインターズレンダリングモジュール304に供給される。
【0041】
スキャンラインレンダリングモジュール303とペインターズレンダリングモジュール304は並列にかつ同期して動作する。
【0042】
ホストコンピュータ1100上であれば、CPU1 1101でスキャンラインレンダリングモジュール303が動作し、CPU2 1102でペインターズレンダリングモジュールを動作させる。
【0043】
画像形成装置1110上であれば、CPU1 1111でスキャンラインレンダリングモジュール303が動作し、CPU2 1112でペインターズレンダリングモジュールを動作させる。
【0044】
ペインターズレンダリングモジュール304は画像形成結果をバンド画像305として保存する。
【0045】
スキャンラインレンダリングモジュール303はスキャンライン法でレンダリングした結果に、バンド画像305の結果をマージ処理(例えばOR処理)してページ画像306を形成する。
【0046】
ここで、ペインターズレンダリングモジュール304で処理すべき描画データのグループにカラーデータが含まれている場合、バンド画像305のメモリ容量が大きくなってしまうという問題がある。
【0047】
そのため、バンド画像305のメモリ容量を小さくするためには、ペインターズレンダリングモジュール304で処理すべき描画データのグループはモノクロデータのみで構成する方が良い。
【0048】
図4を用いて、スキャンラインレンダリングモジュール303とペインターズレンダリングモジュール304をレンダリングタイミング制御モジュール302が同期して動作させる一例を説明する。
【0049】
レンダリングタイミング制御モジュール302は1ページを4つのバンドに分割して管理する(401)。
【0050】
まず、ペインターズレンダリングモジュール304にバンド1を処理させ(406)、その終了をまってスキャンラインレンダリングモジュール303を起動する(402)。
【0051】
以降、バンド2、バンド3、バンド4についても同様に処理する(403、404、405、407、408、409)。
【0052】
図5を用いてスキャンラインレンダリングモジュール303の詳細を説明する
501はスキャンラインレンダリングモジュール303と同じモジュールを示す。
【0053】
スキャンライン法とは、各描画データをスクリーン上の各スキャンライン(横方向のピクセルの集まり)に分割する(これをセグメントと呼ぶ)。
【0054】
そして、同じスキャンラインを共有するセグメント同士の奥行き(Z軸下位)にあるオブジェクトから順に描画していく方法である。
【0055】
スキャンラインレンダリングモジュール501ではスキャンライン処理502で、描画データ500から1つのセグメントのレンダリング処理を行い、その結果をセグメント描画結果503に格納する。
【0056】
このセグメント描画結果503はCPU内のレジスタやキャッシュ上に保存される。
【0057】
スキャンラインレンダリングモジュール501は格納されたセグメント描画結果503とページ内で同じ位置座標にある画像をバンド画像505から取得する。
【0058】
バンド画像505はペインターズレンダリングモジュールによって出力された結果である。
【0059】
セグメント描画結果503とバンド画像505から取得された画像はマージ処理504によって合成されページ画像506に出力される。
【0060】
この処理によって、従来技術のようなスキャンラインレンダリングモジュール501によって出力した画像を一時保存する必要がなくなり、メモリ容量が効率化し、またメモリアクセスが遅いシステムにおいては大幅な速度向上が見込める。
【0061】
図6を用いてパーソナルコンピュータ1100と画像形成装置1110でレンダリング処理を負荷分散する処理について説明する。
【0062】
以降の処理は全てパーソナルコンピュータ1100上の処理である。
【0063】
描画データ601はグループ化モジュール602によってスキャンライン法でレンダリング処理するグループとペインターズ法でレンダリング処理するグループにグループ化される。
【0064】
画像形成装置1110のレンダリング能力が低い場合、全てのグループがレンダリング処理され(603)、圧縮処理されて(604)からI/F(609)を通して画像形成装置に転送される。
【0065】
この場合圧縮処理604はどのような圧縮処理であっても良い。
【0066】
画像形成装置1110の処理能力によってスキャンライン法でレンダリングするグループのみ(605)、あるいはペインターズ法でレンダリングするグループのみ(606)ホストコンピュータ1100上でレンダリングする。
【0067】
その切り分けは例えば画像演算装置のCPU演算能力が低ければスキャンラインレンダリングは遅くなり、メモリアクセス速度が遅ければペインターズレンダリングが遅くなる等の特徴に基づく。
【0068】
また、スキャンライン法でレンダリングするグループのレンダリング結果の圧縮はライン単位で伸張できるような圧縮(例えばPackBits圧縮)する形式が望ましい(606)。
【0069】
図5を用いた合成処理でセグメント描画結果505がバンド単位になってしまい本発明の構成を活かせないためである。
【0070】
ペインターズ法でレンダリングするグループのレンダリング結果の圧縮は特に制限は無いが、圧縮率が高い面で圧縮(例えばJPEG)する形式が望ましい(608)。
【0071】
レンダリングされ圧縮されたデータは、レンダリングされてないグループの描画データとともにI/F609を通して画像形成装置に転送される。
【0072】
図7を用いてスキャンライン法でレンダリングするグループのみホスト側でレンダリング処理された場合の画像形成装置の処理について説明する。
【0073】
701はパーソナルコンピュータ上でレンダリング処理され、圧縮された画像となっている。
【0074】
ここではPackBits圧縮された画像であるとする。
【0075】
PackBits圧縮法であれば任意のピクセル数だけ伸張することが可能なので、セグメント描画画像703は、CPU内のレジスタやキャッシュ容量に応じて適当なサイズを設定する。
【0076】
スキャンラインレンダリングモジュールはPackBits伸張モジュール702に、上記サイズに応じて任意のピクセルを伸張させ、図5を用いたようにバンド画像との合成を行いページ画像に出力する。
【0077】
図8を用いてペインターズ法でレンダリングするグループのみパーソナルコンピュータ側でレンダリング処理された場合の画像形成装置の処理について説明する。
【0078】
801はホスト上でレンダリング処理され、圧縮された画像となっている。
【0079】
ここではJPEG圧縮された画像であるとする。モノクロ画像であれがJBIG圧縮であっても良い。
【0080】
JPEG伸張モジュール802は、バンド画像を展開するワークメモリの容量に応じて適当なサイズのデータを伸張し、バンド画像803とする。
【0081】
スキャンラインレンダリングモジュールからはペインターズレンダリングされた画像であろうと、JPEG伸張された画像であろうとバンド画像であれば問題ない。
【0082】
図10を用いてパーソナルコンピュータ側で全てのグループがレンダリングされ、圧縮されて画像形成装置に転送されてきた場合の画像形成装置の処理について説明する。
【0083】
描画データ1001は全てレンダリング済みの圧縮画像である。
【0084】
画像形成装置にCPUが複数あるならば、バンド単位やライン単位に並列に伸長処理することに高速に処理できる。
【0085】
例えば描画データ1001がJPEG圧縮されたデータであるとすれば、JPEG伸長モジュールをMCU並列で処理させるような構成が好適である(1002、1003)
図10を用いてグループ化の流れを説明する。
【0086】
パーソナルコンピュータ上でユーザからの印刷支持があると(1001)、アプリケーションから送られてきたデータを画像形成装置で解釈可能な描画データに変換する(1002)。
【0087】
描画データのグループ化を行い(1003)、グループごとにY軸ソート(1004)を実行する。
【0088】
ここで、描画データのグループ化(1003)とY軸ソート(1004)は画像形成装置上で行われても良い。
なお、図9は、実施例1の不可負荷分散処理時の画像形成処理装置の処理フロー例である。
【実施例2】
【0089】
図11を用いてパーソナルコンピュータと画像形成装置のハードウェア構成を説明したが、図12で示すように一方がレンダリングハードウェア回路1201、他方がCPU1202であっても良い。
【0090】
また、両方がレンダリングハードウェア回路であっても良い。
【図面の簡単な説明】
【0091】
【図1】従来技術の課題。
【図2】実施例1のグループ化概念図。
【図3】実施例1の処理フロー図。
【図4】実施例1の並列処理タイムチャート図。
【図5】実施例1のスキャンラインレンダリングモジュール処理詳細図。
【図6】実施例1の負荷分散処理図。
【図7】実施例1の負荷分散処理時の画像形成処理装置の処理フロー例。
【図8】実施例1の負荷分散処理時の画像形成処理装置の処理フロー例。
【図9】実施例1の負荷分散処理時の画像形成処理装置の処理フロー例。
【図10】実施例1のグループ化フロー図。
【図11】実施例1のハード構成図。
【図12】実施例2のハード構成図。
【技術分野】
【0001】
本発明は、パーソナルコンピュータや画像形成装置などの情報処理システムにおける画像処理でのグループ化に関するものである。
【背景技術】
【0002】
パーソナルコンピュータや画像形成装置等の計算機端末では、近年マルチCPU等を用いた分散処理が利用されつつある。
【0003】
しかし、アプリケーションから渡される描画データ(ユーザが手作りしたデータでも良い)は、処理プロセスが考慮されておらず、マルチCPUや複数モジュールでの分散処理等を効率よく行うことが出来なかった。
【0004】
分散処理のためには、描画データのグループ化が必要である。
【0005】
マルチCPUや複数モジュールで効率よく分散処理するための描画データのグループ化方法が特許文献1に開示されている。
【0006】
特許文献1によればページ内に含まれるオブジェクトをグループ化する条件として、スキャンライン法とペインターズ法のどちらのレンダリング方法でレンダリング処理した方が高速に処理可能であるかを基準とする。
【0007】
また、それぞれのグループはスキャンライン法のレンダリングモジュール、ペインターズ法のレンダリングモジュールで並列にレンダリング処理され、
グループごとにレンダリング処理された画像が保存されたのち、合成処理部によって1ページの画像として生成される。
【特許文献1】特開2007−94758号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
上記従来例では図1に示すようにスキャンライン法のレンダリングモジュールで生成された画像とペインターズ法のレンダリングモジュールで生成された画像を保存しておく必要があり、メモリ効率が悪いという問題点がある。
【0009】
具体的には図1に示す、スキャンラインレンダリングモジュールの出力画像101およびペインターズレンダリングモジュールの出力画像102を保存するためのメモリが必要である。
【0010】
また、スキャンライン法あるいはペインターズ法で行うレンダリングはパーソナルコンピュータ上あるいは画像形成装置上のいずれか一方で行われる。
【0011】
そのためマルチCPUや複数モジュールでの分散処理が可能であっても、処理能力が低いためにスキャンライン法あるいはペインターズ法で行うレンダリングを同時に行うと速度が低下してしまうという点について問題がある。
【0012】
本発明では上記問題点の解決を課題とする。
【課題を解決するための手段】
【0013】
スキャンラインレンダラとペインターズレンダラはマルチプロセッサ構成である場合、別々のCPUコアで並列に処理される構成を備え、ペインターズ法のレンダリングモジュールで生成された画像はスキャンライン法のレンダリングモジュールに供給される構成を備え、スキャンライン法のレンダリングモジュールの最終処理で合成されて出力されることを特徴とする。
【0014】
スキャンライン法あるいはペインターズ法でレンダリングされる描画データのグループは同期して動作するためY軸ソートする構成を備える。
【0015】
さらに、メモリ容量を効率化するためにはペインターズ法でレンダリングされる描画データグループは表面(Z軸上の最上位)でかつ、モノクロのオブジェクトに限定する処理を備えても良い。
【0016】
スキャンライン法のレンダリングモジュールに適した描画データのグループはパーソナルコンピュータ上でレンダリングされ、ペインターズ法のレンダリングモジュールに適した描画データのグループは、画像形成装置上でレンダリングする構成を備える。
【0017】
その逆にペインターズ法のレンダリングモジュールに適した描画データのグループはパーソナルコンピュータ上でレンダリングされ、スキャンライン法のレンダリングモジュールに適した描画データのグループは、画像形成装置上でレンダリングする構成を備える。
【0018】
また、従来技術と同様に、どちらか一方の装置上で両方のグループがレンダリングされても良い。
【0019】
さらに、パーソナルコンピュータ上でレンダリングされた画像には圧縮処理を施す処理を備える。
【0020】
その場合、画像形成装置上ではスキャンライン法によるレンダリング処理あるいはペインターズ法によるレンダリング処理のどちらかと、画像の伸張処理が並列に行われる処理を備える。
【0021】
上記切り分けはパーソナルコンピュータと画像形成装置の処理能力によって動的に判断する処理を備える。
【発明の効果】
【0022】
本発明によって、グループ化された描画データをスキャンライン法のレンダリングモジュールと、ペインターズ法のレンダリングモジュールを複数CPUによって並列に処理し高速なレンダリングを行う場合にも、省メモリで実現することが出来るようになる。
【発明を実施するための最良の形態】
【0023】
次に、本発明の詳細を実施例の記述に従って説明する。
【実施例1】
【0024】
図11を用いて本実施例を適応するのに好適なパーソナルコンピュータと画像形成装置のハードウェア構成の一例を説明する。
【0025】
パーソナルコンピュータ1100には複数のCPU1 1101、CPU2 1102が含まれ、メモリバス1106を解してRAM1103、ROM1104に接続される。
【0026】
ROM1104にはスキャンラインレンダリングモジュールとペインターズレンダリングモジュールの複数のレンダリングモジュールが格納されている。
【0027】
パーソナルコンピュータ1100上でレンダリング処理される場合、RAM1103上に格納されたグループ化された描画データは、CPU1 1101とCPU2 1102に並列で読み出され描画され、画像がRAM1103上に形成される。
【0028】
そのときにCPU1 1101またはCPU2 1102上で動作するモジュールはROM1104に格納されているスキャンラインレンダリングモジュールあるいはペインターズレンダリングモジュールである。
【0029】
パーソナルコンピュータ1100上でレンダリングされない場合、グループ化された描画データはI/F1105を通して、画像形成装置1110に転送される。
【0030】
画像形成装置1110には複数のCPU1 1111、CPU2 1112が含まれ、メモリバス1116を解してRAM1113、ROM1114に接続される。
【0031】
画像形成装置1110はI/F1115を通して、グループ化された描画データを受信し、RAM1113に保存する。
【0032】
ROM1113にはスキャンラインレンダリングモジュールとペインターズレンダリングモジュールの複数のレンダリングモジュールが格納されている。
【0033】
画像形成装置1110上でレンダリング処理される場合、RAM1113上に格納されたグループ化された描画データは、CPU1 1111とCPU2 1112に並列で読み出され描画され、画像がRAM1113上に形成される。
【0034】
そのときにCPU1 1111またはCPU2 1112上で動作するモジュールはROM1114に格納されているスキャンラインレンダリングモジュールあるいはペインターズレンダリングモジュールである。
【0035】
RAM1103上に形成された画像は、VIDEO I/F1117を通して実際の紙媒体上に画像形成され印刷される。
【0036】
図2を用いて本発明の適用に好適な描画データのグループ化の一例を説明する。
【0037】
201は複数の罫線や文字で表現される帳票データである。
【0038】
背面に描画される罫線をスキャンライン法でレンダリング処理するグループ202、表面に描画される文字をペインターズ法でレンダリング処理するグループ203にグループ化する。
【0039】
図3のブロック図を用いて、本発明のレンダリング処理の流れを説明する。
【0040】
グループ化された描画データ301は、レンダリングタイミング制御モジュール302によって、スキャンラインレンダリングモジュール303、ペインターズレンダリングモジュール304に供給される。
【0041】
スキャンラインレンダリングモジュール303とペインターズレンダリングモジュール304は並列にかつ同期して動作する。
【0042】
ホストコンピュータ1100上であれば、CPU1 1101でスキャンラインレンダリングモジュール303が動作し、CPU2 1102でペインターズレンダリングモジュールを動作させる。
【0043】
画像形成装置1110上であれば、CPU1 1111でスキャンラインレンダリングモジュール303が動作し、CPU2 1112でペインターズレンダリングモジュールを動作させる。
【0044】
ペインターズレンダリングモジュール304は画像形成結果をバンド画像305として保存する。
【0045】
スキャンラインレンダリングモジュール303はスキャンライン法でレンダリングした結果に、バンド画像305の結果をマージ処理(例えばOR処理)してページ画像306を形成する。
【0046】
ここで、ペインターズレンダリングモジュール304で処理すべき描画データのグループにカラーデータが含まれている場合、バンド画像305のメモリ容量が大きくなってしまうという問題がある。
【0047】
そのため、バンド画像305のメモリ容量を小さくするためには、ペインターズレンダリングモジュール304で処理すべき描画データのグループはモノクロデータのみで構成する方が良い。
【0048】
図4を用いて、スキャンラインレンダリングモジュール303とペインターズレンダリングモジュール304をレンダリングタイミング制御モジュール302が同期して動作させる一例を説明する。
【0049】
レンダリングタイミング制御モジュール302は1ページを4つのバンドに分割して管理する(401)。
【0050】
まず、ペインターズレンダリングモジュール304にバンド1を処理させ(406)、その終了をまってスキャンラインレンダリングモジュール303を起動する(402)。
【0051】
以降、バンド2、バンド3、バンド4についても同様に処理する(403、404、405、407、408、409)。
【0052】
図5を用いてスキャンラインレンダリングモジュール303の詳細を説明する
501はスキャンラインレンダリングモジュール303と同じモジュールを示す。
【0053】
スキャンライン法とは、各描画データをスクリーン上の各スキャンライン(横方向のピクセルの集まり)に分割する(これをセグメントと呼ぶ)。
【0054】
そして、同じスキャンラインを共有するセグメント同士の奥行き(Z軸下位)にあるオブジェクトから順に描画していく方法である。
【0055】
スキャンラインレンダリングモジュール501ではスキャンライン処理502で、描画データ500から1つのセグメントのレンダリング処理を行い、その結果をセグメント描画結果503に格納する。
【0056】
このセグメント描画結果503はCPU内のレジスタやキャッシュ上に保存される。
【0057】
スキャンラインレンダリングモジュール501は格納されたセグメント描画結果503とページ内で同じ位置座標にある画像をバンド画像505から取得する。
【0058】
バンド画像505はペインターズレンダリングモジュールによって出力された結果である。
【0059】
セグメント描画結果503とバンド画像505から取得された画像はマージ処理504によって合成されページ画像506に出力される。
【0060】
この処理によって、従来技術のようなスキャンラインレンダリングモジュール501によって出力した画像を一時保存する必要がなくなり、メモリ容量が効率化し、またメモリアクセスが遅いシステムにおいては大幅な速度向上が見込める。
【0061】
図6を用いてパーソナルコンピュータ1100と画像形成装置1110でレンダリング処理を負荷分散する処理について説明する。
【0062】
以降の処理は全てパーソナルコンピュータ1100上の処理である。
【0063】
描画データ601はグループ化モジュール602によってスキャンライン法でレンダリング処理するグループとペインターズ法でレンダリング処理するグループにグループ化される。
【0064】
画像形成装置1110のレンダリング能力が低い場合、全てのグループがレンダリング処理され(603)、圧縮処理されて(604)からI/F(609)を通して画像形成装置に転送される。
【0065】
この場合圧縮処理604はどのような圧縮処理であっても良い。
【0066】
画像形成装置1110の処理能力によってスキャンライン法でレンダリングするグループのみ(605)、あるいはペインターズ法でレンダリングするグループのみ(606)ホストコンピュータ1100上でレンダリングする。
【0067】
その切り分けは例えば画像演算装置のCPU演算能力が低ければスキャンラインレンダリングは遅くなり、メモリアクセス速度が遅ければペインターズレンダリングが遅くなる等の特徴に基づく。
【0068】
また、スキャンライン法でレンダリングするグループのレンダリング結果の圧縮はライン単位で伸張できるような圧縮(例えばPackBits圧縮)する形式が望ましい(606)。
【0069】
図5を用いた合成処理でセグメント描画結果505がバンド単位になってしまい本発明の構成を活かせないためである。
【0070】
ペインターズ法でレンダリングするグループのレンダリング結果の圧縮は特に制限は無いが、圧縮率が高い面で圧縮(例えばJPEG)する形式が望ましい(608)。
【0071】
レンダリングされ圧縮されたデータは、レンダリングされてないグループの描画データとともにI/F609を通して画像形成装置に転送される。
【0072】
図7を用いてスキャンライン法でレンダリングするグループのみホスト側でレンダリング処理された場合の画像形成装置の処理について説明する。
【0073】
701はパーソナルコンピュータ上でレンダリング処理され、圧縮された画像となっている。
【0074】
ここではPackBits圧縮された画像であるとする。
【0075】
PackBits圧縮法であれば任意のピクセル数だけ伸張することが可能なので、セグメント描画画像703は、CPU内のレジスタやキャッシュ容量に応じて適当なサイズを設定する。
【0076】
スキャンラインレンダリングモジュールはPackBits伸張モジュール702に、上記サイズに応じて任意のピクセルを伸張させ、図5を用いたようにバンド画像との合成を行いページ画像に出力する。
【0077】
図8を用いてペインターズ法でレンダリングするグループのみパーソナルコンピュータ側でレンダリング処理された場合の画像形成装置の処理について説明する。
【0078】
801はホスト上でレンダリング処理され、圧縮された画像となっている。
【0079】
ここではJPEG圧縮された画像であるとする。モノクロ画像であれがJBIG圧縮であっても良い。
【0080】
JPEG伸張モジュール802は、バンド画像を展開するワークメモリの容量に応じて適当なサイズのデータを伸張し、バンド画像803とする。
【0081】
スキャンラインレンダリングモジュールからはペインターズレンダリングされた画像であろうと、JPEG伸張された画像であろうとバンド画像であれば問題ない。
【0082】
図10を用いてパーソナルコンピュータ側で全てのグループがレンダリングされ、圧縮されて画像形成装置に転送されてきた場合の画像形成装置の処理について説明する。
【0083】
描画データ1001は全てレンダリング済みの圧縮画像である。
【0084】
画像形成装置にCPUが複数あるならば、バンド単位やライン単位に並列に伸長処理することに高速に処理できる。
【0085】
例えば描画データ1001がJPEG圧縮されたデータであるとすれば、JPEG伸長モジュールをMCU並列で処理させるような構成が好適である(1002、1003)
図10を用いてグループ化の流れを説明する。
【0086】
パーソナルコンピュータ上でユーザからの印刷支持があると(1001)、アプリケーションから送られてきたデータを画像形成装置で解釈可能な描画データに変換する(1002)。
【0087】
描画データのグループ化を行い(1003)、グループごとにY軸ソート(1004)を実行する。
【0088】
ここで、描画データのグループ化(1003)とY軸ソート(1004)は画像形成装置上で行われても良い。
なお、図9は、実施例1の不可負荷分散処理時の画像形成処理装置の処理フロー例である。
【実施例2】
【0089】
図11を用いてパーソナルコンピュータと画像形成装置のハードウェア構成を説明したが、図12で示すように一方がレンダリングハードウェア回路1201、他方がCPU1202であっても良い。
【0090】
また、両方がレンダリングハードウェア回路であっても良い。
【図面の簡単な説明】
【0091】
【図1】従来技術の課題。
【図2】実施例1のグループ化概念図。
【図3】実施例1の処理フロー図。
【図4】実施例1の並列処理タイムチャート図。
【図5】実施例1のスキャンラインレンダリングモジュール処理詳細図。
【図6】実施例1の負荷分散処理図。
【図7】実施例1の負荷分散処理時の画像形成処理装置の処理フロー例。
【図8】実施例1の負荷分散処理時の画像形成処理装置の処理フロー例。
【図9】実施例1の負荷分散処理時の画像形成処理装置の処理フロー例。
【図10】実施例1のグループ化フロー図。
【図11】実施例1のハード構成図。
【図12】実施例2のハード構成図。
【特許請求の範囲】
【請求項1】
スキャンラインレンダラとペインターズレンダラはマルチプロセッサ構成で、別々のCPUコアで並列に処理される構成を備え、ペインターズ法のレンダリングモジュールで生成された画像はスキャンライン法のレンダリングモジュールに供給される構成を備え、スキャンライン法のレンダリングモジュールの最終処理で合成されて出力されることを特徴とする画像処理装置。
【請求項2】
請求項1に記載の画像処理装置を備えることを特徴とするパーソナルコンピュータ。
【請求項3】
請求項1に記載の画像処理装置を備えることを特徴とする画像形成装置。
【請求項4】
ペインターズ法でレンダリングされる描画データのグループはリアルタイムで供給するためにY軸ソートする構成を備えることを特徴とする請求項1に記載の画像処理装置。
【請求項5】
メモリ容量を効率化するためにはペインターズ法でレンダリングされる描画データグループは表面(Z軸上の最上位)でかつ、モノクロのオブジェクトに限定することを特徴とする請求項1に記載の画像処理装置。
【請求項6】
スキャンライン法のレンダリングモジュールに適した描画データのグループはパーソナルコンピュータ上でレンダリングされ、ペインターズ法のレンダリングモジュールに適した描画データのグループは、画像形成装置上でレンダリングする構成を備える負荷分散処理方法。
【請求項7】
ペインターズ法のレンダリングモジュールに適した描画データのグループはパーソナルコンピュータ上でレンダリングされ、スキャンライン法のレンダリングモジュールに適した描画データのグループは、画像形成装置上でレンダリングする構成を備える負荷分散処理方法。
【請求項1】
スキャンラインレンダラとペインターズレンダラはマルチプロセッサ構成で、別々のCPUコアで並列に処理される構成を備え、ペインターズ法のレンダリングモジュールで生成された画像はスキャンライン法のレンダリングモジュールに供給される構成を備え、スキャンライン法のレンダリングモジュールの最終処理で合成されて出力されることを特徴とする画像処理装置。
【請求項2】
請求項1に記載の画像処理装置を備えることを特徴とするパーソナルコンピュータ。
【請求項3】
請求項1に記載の画像処理装置を備えることを特徴とする画像形成装置。
【請求項4】
ペインターズ法でレンダリングされる描画データのグループはリアルタイムで供給するためにY軸ソートする構成を備えることを特徴とする請求項1に記載の画像処理装置。
【請求項5】
メモリ容量を効率化するためにはペインターズ法でレンダリングされる描画データグループは表面(Z軸上の最上位)でかつ、モノクロのオブジェクトに限定することを特徴とする請求項1に記載の画像処理装置。
【請求項6】
スキャンライン法のレンダリングモジュールに適した描画データのグループはパーソナルコンピュータ上でレンダリングされ、ペインターズ法のレンダリングモジュールに適した描画データのグループは、画像形成装置上でレンダリングする構成を備える負荷分散処理方法。
【請求項7】
ペインターズ法のレンダリングモジュールに適した描画データのグループはパーソナルコンピュータ上でレンダリングされ、スキャンライン法のレンダリングモジュールに適した描画データのグループは、画像形成装置上でレンダリングする構成を備える負荷分散処理方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2009−54010(P2009−54010A)
【公開日】平成21年3月12日(2009.3.12)
【国際特許分類】
【出願番号】特願2007−221177(P2007−221177)
【出願日】平成19年8月28日(2007.8.28)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成21年3月12日(2009.3.12)
【国際特許分類】
【出願日】平成19年8月28日(2007.8.28)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]