(57)【要約】      （修正有）【課題】各種の画像処理を行う処理時間を削減する技術を提供する。【解決手段】スキャナまたはホストコンピュータより入力された画像データの属性を解析し、画像処理手段に転送する画像データの順序を制御することで、画像処理装置の回路構成変更時間を削減することで処理時間を最適化する。制御手順は同じ属性をもつ画像を一括して処理できるような順序で転送する。画像データの分布に応じて転送順序を決定する。画像処理手段に回路構成を指示することができる。【選択図】図１１
2010136275.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
入力された画像データの属性を判断する判断手段と、
前記入力された画像データの属性に応じて、該画像データを処理する回路の構成を変更する画像処理手段と、
前記画像処理手段に転送する画像データの順序を制御する制御手段とを有し、
前記制御手段は、前記画像処理手段の回路構成の変更を少なくするべく、転送する画像データの順序を制御することを特徴とする画像処理装置。
【請求項２】
前記制御手段は、前記画像処理手段が同じ属性を有する画像データを一括して処理できるように前記転送する画像データの順序を制御することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御手段は、前記画像処理手段に画像データの属性を示す情報に応じた画像処理を実行できるように前記画像処理手段に対して回路構成を指示することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記制御手段は、属性ごとの画像データの分布に応じて、画像データを転送する画像データの順序を決定することを特徴とする請求項１ないし３のいずれか１項に記載の画像処理装置。
【請求項５】
前記判断手段は、前記入力された画像データの属性を画素単位で判断することを特徴とする請求項１ないし４のいずれか１項に記載の画像処理装置。
【請求項６】
前記判断手段は、前記入力された画像データの属性をページ毎に判断することを特徴とする請求項１ないし５のいずれか１項に記載の画像処理装置。
【請求項７】
回路構成を変更可できる画像処理手段を有する画像処理装置に、
入力された画像データの属性を判断する判断工程と、
前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、
前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程と、
を実行させるためのコンピュータ読み取り可能なプログラム。
【請求項８】
前記制御工程は、前記画像処理手段が同じ属性を有する画像データを一括して処理できるように前記転送する画像データの順序を制御することを特徴とする請求項７に記載のプログラム。
【請求項９】
前記制御工程は、前記画像処理手段に画像データの属性を示す情報に応じた画像処理を実行できるように前記画像処理手段に対して回路構成を指示することを特徴とする請求項７または８に記載のプログラム。
【請求項１０】
前記制御工程は、属性ごとの画像データの分布に応じて、画像データを転送する画像データの順序を決定することを特徴とする請求項７ないし９のいずれか１項に記載のプログラム。
【請求項１１】
前記判断工程は、前記入力された画像データの属性を画素単位で判断することを特徴とする請求項７ないし１０のいずれか１項に記載のプログラム。
【請求項１２】
前記判断工程は、前記入力された画像データの属性をページ毎に判断することを特徴とする請求項７ないし１１のいずれか１項に記載のプログラム。
【請求項１３】
回路構成を変更できる画像処理手段を有する画像処理装置の制御方法であって、
入力された画像データの属性を判断する判断工程と、
前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、
前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程と、
を有することを特徴とする画像処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、プログラム及び画像処理装置の制御方法に関する。
【背景技術】
【０００２】
従来、スキャナにより読み取られた画像データや、ホストコンピュータから送出された画像データ等を取得し、取得したデータに各種の画像処理を施し、印刷データとして展開する画像処理装置では、高画質な印刷を求められている。
【０００３】
このような高画質な印刷を実現するため、画像内のデータが文字、写真といった画素属性、画像データの送信元がスキャナ、ホストコンピュータといったページ毎の面属性に応じて専用の画像処理を施す必要がある。
【０００４】
これらの属性を好適に利用することで、複数ある画像処理装置の処理負荷を最適化する試みがなされている（特許文献１参照）。また、それぞれの画像処理専用のハードウェア全てを備えると、回路規模等が増大してコストアップとなるので、複数種の画像処理のそれぞれを実行可能な処理手段を用意し、前記処理手段を制御する制御手段を備える提案がなされている（特許文献２参照）。
【特許文献１】特開２００７−０８１７９５号公報
【特許文献２】特開２００６−２８５７９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし上述した従来の画像処理装置においては、様々な属性の画像データが逐次入力された場合、処理手段の切り換えによる切り換え時間が多くなり、全体の処理時間がかかってしまう。
【０００６】
本発明はこのような問題に鑑みてなされたものであり、画像データの属性に応じて画像処理手段に転送する画像データの順序を制御することにより、画像処理する時間を短縮するための技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の目的を達成するために、本発明の画像処理装置は、入力された画像データの属性を判断する判断手段と、前記入力された画像データの属性に応じて、該画像データを処理する回路の構成を変更する画像処理手段と、前記画像処理手段に転送する画像データの順序を制御する制御手段とを有し、前記制御手段は、前記画像処理手段の回路構成の変更を少なくするべく、転送する画像データの順序を制御することを特徴とする。
【０００８】
さらに、本発明のプログラムは、回路構成を変更できる画像処理手段を有する画像処理装置を制御するプログラムであって、入力された画像データの属性を判断する判断工程と、前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程を有することを特徴とする。
【０００９】
さらに、本発明の画像処理回路の制御方法は、回路構成を変更できる画像処理手段を有する画像処理装置の制御方法であって、入力された画像データの属性を判断する判断工程と、前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、画像データの属性に応じて画像処理手段に転送する画像データの順序を制御することにより、画像処理する時間を短縮することができる。
【発明を実施するための最良の形態】
【００１１】
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。
【００１２】
図１は、本実施形態に係る画像処理装置を適用したシステムの機能構成を示すブロック図である。同図に示したシステムは大まかには、スキャナ１、ホストコンピュータ２、制御部３、記憶装置４、印字エンジン部５により構成されている。
【００１３】
スキャナ１は周知の通り、紙などの記録媒体上に記録された情報（画像、文字など）を読み取り、読み取った画像データとして出力する。出力した画像のデータは制御部３に入力される。
【００１４】
ホストコンピュータ２は、一般のＰＣ（パーソナルコンピュータ）やＷＳ（ワークステーション）などのコンピュータであって、このコンピュータでもって作成された画像や文書はＰＤＬデータとして制御部３に入力される。
【００１５】
このように制御部３はスキャナ１やホストコンピュータ２から送出されたデータを受け取ることができる。よって当然、制御部３とスキャナ１、制御部３とホストコンピュータ２とはデータ通信が可能なようにネットワークが形成されているのであるが、このネットワークの構成については特に限定するものではない。
【００１６】
制御部３はスキャナ１やホストコンピュータ２から受けたデータに基づいて各種の画像処理をし、画像処理された画像データを出力する。なお、制御部３、および制御部３が行う処理の詳細については後述する。
【００１７】
記憶装置４は、制御部３から出力された画像データを記憶、保持するものである。
【００１８】
印字エンジン部５は、制御部３から出力された画像データに基づいて、紙などの記憶媒体上に印字処理を行う。
【００１９】
なお、本実施形態では制御部３にデータを入力するのはスキャナ１とホストコンピュータ２の２つとしたが、これ以外の装置であっても良く、例えば複合機やファクシミリ装置などから送出されたデータを制御部３に入力するようにしても良い。
【００２０】
次に、制御部３の構成について説明する。制御部３はスキャナ入力色処理ブロック３１、ホストＩ／Ｆ部３２、ＰＤＬ処理部３３、ＣＰＵ３４、ＲＡＭ３５、ＲＯＭ３６、画像処理部３７、スケジューラ３８、ストレージコントローラ部３９、エンジンＩ／Ｆ部４０により構成されている。
【００２１】
スキャナ入力色処理ブロック３１は、スキャナ１から入力されたＲ／Ｇ／Ｂ形式の画像データを受け、入力された画像データにＹ／Ｍ／Ｃ／Ｋ形式の画像データに変換する色処理を行う。ここで、スキャナ入力色処理ブロック３１は、このような色変換処理だけでなく入力された画像データに対して、画素単位で文字画像を示す属性か写真画像を示す属性かを判断するように構成されている。属性を判断する方法は、公知の判断手法を使えばよい。ホストＩ／Ｆ部３２は、ホストコンピュータ２から送出されたＰＤＬデータを受けるためのインターフェースとして機能するものである。なお、ホストＩ／Ｆ部３２は、制御部３とホストコンピュータ２とを繋ぐネットワークに応じたものとなるのであるが、例えば、イーサネット（登録商標）やシリアルインターフェースもしくは、パラレルインターフェースといったもので構成されている。
【００２２】
ＰＤＬ処理部３３は、ホストＩ／Ｆ部３２が受けたＰＤＬデータを展開する処理を行う。ここで、ＰＤＬ処理部３３は、ＰＤＬデータを展開する処理だけでなく入力された画像データに対して、画素単位で文字画像を示す属性か写真画像を示す属性かを判断するように構成されている。属性を判断する方法は、公知の判断手法を使えばよい。
【００２３】
ＣＰＵ３４は、ＲＡＭ３５やＲＯＭ３６に格納されているコンピュータ読み取り可能な制御プログラムやデータを用いて制御部３全体の制御を行うと共に、制御部３が行う後述の各処理を実行する。
【００２４】
ＲＡＭ３５は、スキャナ入力色処理ブロック３１やホストＩ／Ｆ部３２を介してスキャナ１やホストコンピュータ２から受信したデータを一時的に記憶するためのエリアを備えると共に、ＣＰＵ３４が各種の処理を実行する際に用いるワークエリアを備える。
【００２５】
ＲＯＭ３６は、ＣＰＵ３４に制御部３全体を制御すると共に、制御部３が行う後述の各処理をＣＰＵ３４に実行させるためのプログラムやデータ、また、制御部３の設定データなどが格納されている。
【００２６】
画像処理部３７は、スキャナ１やホストコンピュータ２から送出されたデータに基づいた画像に対する画像処理を行う。画像処理部３７が行う処理の詳細については後述する。
【００２７】
スケジューラ３８は、画像処理部３７へ転送する中間データの順序を決定する。スケジューラ３８が行う処理の詳細については後述する。
【００２８】
ストレージコントローラ部３９は、制御部３によって画像処理された画像データを記憶装置４に記録する処理を制御する。
【００２９】
エンジンＩ／Ｆ部４０は、制御部３によって画像処理された画像データを印字エンジン部５に送出するための一連の処理を行う。
【００３０】
４１は上述の各部を繋ぐバスである。
【００３１】
次に、スキャナ１、ホストコンピュータ２から制御部３にデータを送出した場合に、制御部３が行う処理について説明する。
【００３２】
図２は、スキャナ１から制御部３に対して画像データが送出された場合に、制御部３が行う処理のフローチャートである。ここでは、説明をわかりやすくするために、ＣＰＵ３４がＲＯＭ３６プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもＣＰＵやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。
【００３３】
スキャナ入力色処理ブロック３１を介して、スキャナ１から送出された画像データの受信をＣＰＵ３４が検知すると、同図のフローチャートに従った処理が開始される。先ず、ＣＰＵ３４は、スキャナ入力色処理ブロック３１に、この画像データに対して各種の色処理を実行させる（ステップＳ１０１）。ＣＰＵ３４は、色処理／属性の判断を行った画像データを一時的にＲＡＭ３５に格納する。そして色処理後の画像データを構成する各画素の属性情報を生成し、生成した属性情報と色処理後の画像データとをセットにして中間データとして記憶装置４にストレージコントローラ部３６を介して送出する（ステップＳ１０２）。よってこの中間データは記憶装置４に保存されることになる。画素ごとに付与された属性が、１ページにわたって同じ属性であれば、その属性が面属性として付与される。写真画像や文字画像が混在している場合は、混在していることを表す面属性が付与される。さらに、面属性は、画像データの入力源（ここではスキャナ）を識別できる。
【００３４】
図３は、ホストコンピュータ２から制御部３に対してＰＤＬデータを送出した場合に、制御部３が行う処理のフローチャートである。ここでは、説明をわかりやすくするために、ＣＰＵ３４がＲＯＭ３６プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもＣＰＵやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。
【００３５】
ホストＩ／Ｆ部３２を介して、ホストコンピュータ２から送出されたＰＤＬデータの受信をＣＰＵ３４が検知すると、同図のフローチャートに従った処理が開始させる。先ず、ＣＰＵ３４は、受けたＰＤＬデータを一時的にＲＡＭ３５に格納する（ステップＳ２０１）。次に、ＣＰＵ３４がこのＰＤＬデータにに基づいてＰＤＬ処理部３３に上記中間データを生成させる（ステップＳ２０２）。即ち、ＰＤＬ処理部３３は、ホストコンピュータ２から送出されたＰＤＬデータが示す画像を構成する各画素のデータと共に、各画素に対する属性情報をセットにしたものを生成する。画素ごとに付与された属性が、１ページ分にわたって同じ属性であれば、その属性が面属性として付与される。写真画像や文字画像が混在している場合は、混在していることを表す面属性が付与される。さらに、面属性は、画像データの入力源（ここではホストコンピュータ）を識別できる。
【００３６】
そして生成した中間データを記憶装置４にストレージコントローラ部３９を介して送出する（ステップＳ２０３）。よってこの中間データは記憶装置４に保存されることになる。
【００３７】
次に、ＣＰＵ３４は、記憶装置４に保存された中間データを読み出して画像処理部３に指示することで、画像処理装置に中間データの処理を行わせるためにスケジューラ３８が行う処理について、スケジューラ３８のフローチャートを示す図４を用いて以下説明する。ここでは、説明をわかりやすくするために、ＣＰＵ３４がＲＯＭ３６プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもＣＰＵやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。先ず、ＣＰＵ３４は、画像処理部３に記憶装置４に保存されている中間データをＲＡＭ３５に読み出しを指示する。ＣＰＵ３４は、画像処理部３に読み出した中間データに対してページ毎に付与される面属性と画素毎に付与される画素属性を取得させる（ステップＳ３０１）。これを印刷するページ分繰り返し行わせる（ステップＳ３０２）。例えば、Ｎアップ印刷の場合はＮページ分取得させる。次に、ＣＰＵ３４は、取得した属性を元にスケジューラ３８にスケジューリングを行わせる（ステップＳ３０３）。ここでは、各画素の画像データは、その属性が写真画像か文字画像かに応じて、異なる回路構成を持つ画像処理回路で処理される。そこで、回路構成の変更をすくなくするために、ここでは同じ属性の画像データを一括して処理するようにスケジュールするように構成されている。このようにして、画像処理部へ転送される画像データの順序が決定される。
【００３８】
ステップＳ３０３における処理の詳細については後述する。そしてスケジューリングに基づき、中間データをＲＡＭ３５から画像処理部３７へ転送する（ステップＳ３０４）。
【００３９】
次に、記憶装置４に保存された中間データを読み出して印字エンジン部５に送出することで、この中間データに従った印刷をこの印字エンジン部５に行わせる為に制御部３が行う処理について、同処理のフローチャートを示す図５を用いて以下説明する。ここでは、説明をわかりやすくするために、ＣＰＵ３４がＲＯＭ３６プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもＣＰＵやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。先ず、ＣＰＵ３４は、記憶装置４に保存されている中間データをスケジューラ３８の指示によってＲＡＭに読み出し、読み出した中間データに対して画像処理部３７に階調変換処理実行させる（ステップＳ４０１）。ステップＳ４０１おける処理の詳細については後述する。
【００４０】
これらの処理により、中間データを印字データに変換するので、変換した印字データを印字エンジン部５に出力する（ステップＳ４０２）。
【００４１】
以上の各処理により、スキャナ１、ホストコンピュータ２の何れから受けたデータであっても、これを中間データに変換して保持することができる。さらに、これに基づいた印刷を行う場合にはこの中間データに対して階調変換などの画像処理を施し、その結果を印字エンジン部５に出力することができる。なお、以上の説明では中間データは一端記憶装置４に保存するとしたが、生成した中間データを記憶装置４に保存することなく、直接階調変換などの画像処理を施し、その結果を印字エンジン部５に出力するようにしても良い。
【００４２】
図６は、中間データの構成（フォーマット）例を示す図である。中間データは上述の通り、画像を構成する各画素のデータと、各画素の属性情報とから成るものであるが、より具体的には同図に示す如く、画素のＹＭＣＫデータと、この画素の属性情報とから成る。同図では属性情報を４ビットデータ、Ｙ、Ｍ、Ｃ、Ｋそれぞれを８ビットデータとしているが、これに限定するものではない。また、画素のデータとしてはＹＭＣＫ以外の色空間における色データであっても良い。
【００４３】
図７は、図６の属性情報の構成（フォーマット）例を示す図である。同図に示す如く、属性情報は、面属性と画素属性とから成る。面属性とは、画素データ（本実施形態ではＲＧＢデータ）がスキャナ１から取得したものであるのか、ホストコンピュータ２から取得したものであるのかを示すものである。例えば「面属性が１の場合にはスキャナ１から取得した」、「面属性が０の場合にはホストコンピュータ２から取得した」というように、面属性を参照することで、中間データがどの装置から得られたデータに基づくものであるのかをチェックすることができる。
【００４４】
なお、本実施形態では中間データはスキャナ１、ホストコンピュータ２という２つの装置の何れかから得られたデータに基づくものである。よって、面属性は１，０の何れかの値を取れば良く、そのため入力モードは１ビットで表現できるのであるが、制御部３がより多くの装置からデータを受信できる場合には、その数に応じて面属性を表現するビット数を多くする必要がある。
【００４５】
画素属性とは、中間データに含められる画素データ（本実施形態ではＹＭＣＫデータ）が、画像上のどの領域内（例えば、写真領域、文字領域など）のものであるのかを示す情報である。なお、同図では像域情報は３ビットでもって表現されるとしているが、これに限定するものではない。
【００４６】
図８は、上記画像処理部３７の基本構成を示すブロック図である。同図に示す如く、画像処理部３７は、データＩ／Ｆ３０１、データ分離部３０２、階調変換部３０３により構成されている。
【００４７】
信号処理回路（リコンフィギャラブル）３００１は、様々な階調変換処理が実行できるように、自身の回路構成が変更可能なように構成されており、その構成の変更は比較的高速に行うことができる。ここで、データ分離部３０２から入力された画素データは、この信号処理回路３００１によって処理される。そのときの信号処理回路３００１の構成は、コンフィグ制御部３００２がデータ分離部３０２から受けた属性情報に応じてコンフィグ制御部３００２が指示する。また属性情報によっては、データＩ／Ｆ３０１からコンフィグ情報を受信した後、コンフィグ制御部３００２が指示する。属性情報に応じた信号処理回路３００１の回路構成変更処理については後述する。
【００４８】
次に、階調変換部３０３の動作について説明する。階調変換部３０３内のコンフィグ制御部３００２は、データ分離部３０２から受けた属性情報に含められている像域情報に応じて、信号処理回路３００１の回路構成をどの構成に変更するのかを信号処理回路３００１に対して指示する。
【００４９】
具体的にはコンフィグ制御部３００２は、面属性が「０」の場合で画素属性「１０１」の場合には、信号処理回路３００１の回路構成を、面積階調法を用いて文字用の階調変換処理が行えるように変更すべく、信号処理回路３００２に対して指示する。また、次の画素が面属性は変わらず画素情報が「０１１」に変化した場合は、一旦画像処理を停止し、面積階調法を用いて写真用の階調変換処理が行えるように変更すべく、信号処理回路３００１に対して指示する。
【００５０】
以上のように面属性が変化しない場合は、コンフィグ制御部３００２自身が信号処理回路３００１に対して指示する。
【００５１】
次に、次画素の面属性が「０」から「１」に変化し、画素属性が「１０１」の場合について説明する。この場合一旦画像処理を停止し、信号処理回路３００１の回路構成を、誤差拡散法を用いて文字用の階調変換処理が行えるように変更すべく、コンフィグ制御部３００２が、画像処理部外部よりデータＩ／Ｆ３０１を介して、コンフィグ情報を受け取る。そして、そのコンフィグ情報から回路構成の変更を指示する。また、次の画素が面属性は変わらず画素情報が「０１１」に変化した場合は、一旦画像処理を停止し、誤差拡散法を用いて写真用の階調変換処理が行えるように変更すべく、信号処理回路３００１に対して指示する。
【００５２】
以上のように、属性が変化したときは、画像処理部３７は画像処理を一旦画像処理を停止し、属性に応じて回路構成を変更する。また、画素属性が変化する場合より面属性が変化したほうが、コンフィグ情報受け取りの分だけ時間がかかる。画素属性の回路構成変更時間をＴ１、面属性の回路変更時間をＴ２とすると、Ｔ１＜Ｔ２となる。
【００５３】
図４のステップＳ３０２におけるスケジューリングの詳細を図９および図１０および図１１に基づいて説明する。
【００５４】
図９は２ｉｎ１（２アップ）印刷のページレイアウト例である。図２、図３のフローが実行されることによって、図９に示す画像データの分布が判断される。ページａはスキャナ１から送出された画像データであり、ページｂはホストコンピュータ２から送出されたＰＤＬの画像データである。それぞれ文字領域、写真領域が存在する。それぞれの画素については面属性と画素属性が付与されている。即ち、ページａの写真領域画素には面属性「１」画素属性「０１１」、文字領域の画素には面属性「１」画素属性「１０１」が付与されている。また、ページｂの写真領域画素には面属性「０」画素属性「０１１」、文字領域の画素には面属性「０」画素属性「１０１」が付与されている。
【００５５】
図１０はスケジューラ３８が行うスケジューリング処理のフローチャートである。ここでは、説明をわかりやすくするために、スケジューラ３８が不図示のＲＯＭのプログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもＣＰＵやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。また、ＣＰＵ３４がＲＯＭ３６プログラムに従って同様の制御を実行してもよい。
【００５６】
印刷するページ分の属性を取得後、例えば、スキャナ文字領域・ＰＤＬ写真領域といったそれぞれの画素を同一の属性でまとめ、グループ化する（ステップＳ５０１）。
【００５７】
次に、グループ化された画素グループ間で、画像処理部３７へ転送する順序の並び換えを行う（ステップＳ５０２）。画素グループが異なることは即ち属性が異なることである。よって、画像処理部３７は回路構成変更が必要となり、画像処理を一時停止し、それによってＴ１またはＴ２の回路構成変更時間が発生する。画素グループが複数ある場合は、印刷するページに応じて複数のＴ１またはＴ２の組み合わせが発生する。処理時間を削減するには、この組み合わせによる時間が最小となればよい。スケジューラ３８はこの組み合わせが最小となるまで並び換えを行う（ステップＳ５０３）。この並び換えの詳細は図１１を用いて後述する。
【００５８】
図１１はスケジューラ３８が行うスケジューリング処理の展開を表した図である。図９の印刷ページをページ左上から右下に向かって逐次走査し画像処理部へ入力すると、図１１の「スケジューリング無し」のような時間経過となる。即ち、領域やページの変化毎に回路構成変更が発生し、ページ印刷の時間が非常に長くなる。
【００５９】
スケジューラ３８は、図１０で説明した通りページ内で同じ属性の画素同士をグループ化して、画像処理部に画像データの転送を行うようにスケジューリングを決定する。「スケジューリング１」「スケジューリング２」「スケジューリング３」はそのスケジューリングの結果例である。
【００６０】
前記Ｔ１またはＴ２の組み合わせ時間をＴ、Ｔ１が発生する回数をＭ、Ｔ２が発生する回数をＮとするとＴは式（１）で表される。
Ｔ  ＝  Ｔ１×Ｍ  ＋  Ｔ２×Ｎ      …（１）
ここでＴが最小となるようにスケジューリングを行う。同じ属性の画素同士をグループ化した後は、グループの数はそのページが持つ属性の種類に等しい。即ちグループ化後は（Ｍ＋Ｎ）は一定となる。よって、Ｔ１＜Ｔ２である場合、Ｔを最小にするにはＮを最小化させるようにスケジューリングすればよい。
【００６１】
「スケジューリング１」は文字・写真の画素属性でグループ化して、スケジューリングを実施している。「スケジューリング無し」よりも処理時間は短縮されるが、Ｎ＝３で時間Ｔ２が多く発生している。
【００６２】
「スケジューリング２」は文字・写真の画素属性でグループ化して、さらにスキャナの面属性をグループ化したスケジューリングである。「スケジューリング１」と比べるとＮ＝２となり時間Ｔ２が削減されている。
【００６３】
「スケジューリング３」は文字・写真の画素属性でグループ化して、さらにスキャナ・ＰＤＬの面属性をグループ化したスケジューリングである。「スケジューリング２」と比べるとＮ＝１となり時間Ｔ２が削減されている。
【００６４】
この例では、２ｉｎ１印刷でスキャナ入力、ＰＤＬ入力と二種類の面属性があり、Ｎ＝０とすることはできない。よって「スケジューリング３」が最小の時間となり、この結果に沿って画像処理部３７に画像データを転送する。
【００６５】
図１２は、スケジューリングを行った際の信号処理回路３００１の構成が切り替わる様子を示す図である。
【００６６】
このように、入力された画像の入力源や画像の属性に応じて処理を行う画像処理を行う回路の構成が異なる。このため、同じ回路構成で処理できる画像データをできるだけ一括して処理することで、入力順で処理する場合と比べ異なる画像処理を行うための回路を構成する回数を著しく減らすことができる。
【００６７】
以上の説明により、本実施形態によって、処理時間を削減させて各種の画像処理を行うことができる。
【００６８】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給することによって達成される。その際、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、実現できる。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００６９】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるがこれに限らない。
【００７０】
即ち、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７１】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる場合においても、前述した実施形態の機能が実現される。この場合、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行う。その処理によって、前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７２】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００７３】
【図１】本説明の実施形態にかかわる画像処理装置を適用したシステムの機能構成を表すブロック図である。
【図２】スキャナ１から制御部３に対して画像データが送出された場合に、制御部３が行う処理のフローチャートである。
【図３】ホストコンピュータ２から制御部３に対してＰＤＬデータを送出した場合に、制御部３が行う処理のフローチャートである。
【図４】記憶装置４に保存された中間データを読み出して画像処理部３に指示することで、画像処理装置に中間データの処理を行わせるためにスケジューラ３８が行う処理のフローチャートである。
【図５】記憶装置４に保存された中間データを読み出して印字エンジン部５に送出することで、この中間データに従った印刷をこの印字エンジン部５に行わせるために制御部３が行う処理のフローチャートである。
【図６】中間データの構成（フォーマット）例を示す図である。
【図７】属性情報の構成（フォーマット）例を示す図である。
【図８】画像処理部３５の基本構成を示すブロック図である。
【図９】２ｉｎ１（２アップ）印刷のページレイアウト例である。
【図１０】スケジューラ３８が行うスケジューリング処理のフローチャートである。
【図１１】スケジューリング展開を表した図である。
【図１２】スケジューリングを行った際の信号処理回路３００１の構成が切り替わる様子を示す図である。
【図１】
2010136275.tif 000003
【図２】
2010136275.tif 000004
【図３】
2010136275.tif 000005
【図４】
2010136275.tif 000006
【図５】
2010136275.tif 000007
【図６】
2010136275.tif 000008
【図７】
2010136275.tif 000009
【図８】
2010136275.tif 000010
【図９】
2010136275.tif 000011
【図１０】
2010136275.tif 000012
【図１１】
2010136275.tif 000013
【図１２】
2010136275.tif 000014