(57)【要約】      （修正有）【課題】複数の印刷ジョブに対する画像処理の高速化を実現する画像処理装置を提供する。【解決手段】複数の印刷ジョブを個別に処理する第１処理パターンにて複数の印刷ジョブを処理するか、複数の印刷ジョブを結合して処理する第２処理パターンにて複数の印刷ジョブを処理するかを決定する決定手段を有し、決定手段は、第１の印刷ジョブに対して第１および第２の処理が順次実行され、かつ、第１の印刷ジョブに対して第２の処理が実行されている最中に第２の印刷ジョブに対して第１の処理が開始される第１処理パターンにて処理することで必要となる第１処理時間と、第１および第２の印刷ジョブを結合した結合ジョブに対して第１および第２の処理が順次実行される第２処理パターンにて処理することで必要となる第２処理時間のうち、処理するために必要となる時間が短くなる処理パターンにて複数の印刷ジョブを処理すると決定する。【選択図】図９
2016107569.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブに対して第１の処理を実行する第１処理手段と、
前記印刷ジョブに対する前記第１の処理が完了した後に前記印刷ジョブに対して第２の処理を実行する第２処理手段と、
複数の印刷ジョブを個別に処理する第１処理パターンにて複数の印刷ジョブを処理するか、複数の印刷ジョブを結合して処理する第２処理パターンにて複数の印刷ジョブを処理するかを決定する決定手段を有し、
前記決定手段は、第１の印刷ジョブに対して前記第１および第２の処理が順次実行され、かつ、前記第１の印刷ジョブに対して前記第２の処理が実行されている最中に前記第２の印刷ジョブに対して前記第１の処理が開始される第１処理パターンにて処理することで必要となる第１処理時間と、
前記第１および第２の印刷ジョブを結合した結合ジョブに対して前記第１および第２の処理が順次実行される第２処理パターンにて処理することで必要となる第２処理時間のうち、処理するために必要となる時間が短くなる処理パターンにて複数の印刷ジョブを処理すると決定することを特徴とする画像処理装置。
【請求項２】
結合する印刷ジョブの最大数を判定する判定手段を更に有することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記判定手段は、前記画像処理装置におけるＣＰＵの数、メモリサイズの少なくとも１つに基づいて結合する印刷ジョブの最大数を判定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
保持されている複数の印刷ジョブに対して前記決定手段が第１パターンで処理するか第２パターンで処理するかを決定し、前記決定手段による決定処理のための経過時間が所定の時間を超えた後において前記第１パターンで処理するか第２パターンで処理するかが決定されなかった印刷ジョブは前記第１パターンにて処理されることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記第１の処理は、色空間の変換処理、解像度の変換処理、画像解析処理、レンダリング処理の少なくとも１つであることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
印刷ページに対して第１の処理を実行する第１処理手段と、
前記印刷ページに対する前記第１の処理が完了した後に前記印刷ページに対して第２の処理を実行する第２処理手段と、
複数の印刷ページの順序を変えずに処理する第１処理パターンにて複数の印刷ページを処理するか、複数の印刷ページの順序を変えて処理する第２処理パターンにて複数の印刷ページを処理するかを決定する決定手段を有し、
前記決定手段は、第１の印刷ページに対して前記第１および第２の処理が順次実行され、かつ、前記第１の印刷ページに対して前記第２の処理が実行されている最中に前記第２の印刷ページに対して前記第１の処理が開始される第１処理パターンにて処理することで必要となる第１処理時間と、
前記第１および第２の印刷ページの順序を変えて前記第１および第２の処理が順次実行される第２処理パターンにて処理することで必要となる第２処理時間のうち、処理するために必要となる時間が短くなる処理パターンにて複数の印刷ページを処理すると決定することを特徴とする画像処理装置。
【請求項７】
画像処理装置において実行される制御方法であって、
印刷ジョブに対して第１の処理を実行する第１処理ステップと、
前記印刷ジョブに対する前記第１の処理が完了した後に前記印刷ジョブに対して第２の処理を実行する第２処理ステップと、
複数の印刷ジョブを個別に処理する第１処理パターンにて複数の印刷ジョブを処理するか、複数の印刷ジョブを結合して処理する第２処理パターンにて複数の印刷ジョブを処理するかを決定する決定ステップを有し、
前記決定ステップは、第１の印刷ジョブに対して前記第１および第２の処理が順次実行され、かつ、前記第１の印刷ジョブに対して前記第２の処理が実行されている最中に前記第２の印刷ジョブに対して前記第１の処理が開始される第１処理パターンにて処理することで必要となる第１処理時間と、
前記第１および第２の印刷ジョブを結合した結合ジョブに対して前記第１および第２の処理が順次実行される第２処理パターンにて処理することで必要となる第２処理時間のうち、処理するために必要となる時間が短くなる処理パターンにて複数の印刷ジョブを処理すると決定することを特徴とする制御方法。
【請求項８】
画像処理装置において実行される制御方法であって、
印刷ページに対して第１の処理を実行する第１処理ステップと、
前記印刷ページに対する前記第１の処理が完了した後に前記印刷ページに対して第２の処理を実行する第２処理ステップと、
複数の印刷ページの順序を変えずに処理する第１処理パターンにて複数の印刷ページを処理するか、複数の印刷ページの順序を変えて処理する第２処理パターンにて複数の印刷ページを処理するかを決定する決定ステップを有し、
前記決定ステップは、第１の印刷ページに対して前記第１および第２の処理が順次実行され、かつ、前記第１の印刷ページに対して前記第２の処理が実行されている最中に前記第２の印刷ページに対して前記第１の処理が開始される第１処理パターンにて処理することで必要となる第１処理時間と、
前記第１および第２の印刷ページの順序を変えて前記第１および第２の処理が順次実行される第２処理パターンにて処理することで必要となる第２処理時間のうち、処理するために必要となる時間が短くなる処理パターンにて複数の印刷ページを処理すると決定することを特徴とする制御方法。
【請求項９】
画像処理装置に、
印刷ジョブに対して第１の処理を実行する第１処理ステップと、
前記印刷ジョブに対する前記第１の処理が完了した後に前記印刷ジョブに対して第２の処理を実行する第２処理ステップと、
複数の印刷ジョブを個別に処理する第１処理パターンにて複数の印刷ジョブを処理するか、複数の印刷ジョブを結合して処理する第２処理パターンにて複数の印刷ジョブを処理するかを決定する決定ステップを実行させ、
前記決定ステップは、第１の印刷ジョブに対して前記第１および第２の処理が順次実行され、かつ、前記第１の印刷ジョブに対して前記第２の処理が実行されている最中に前記第２の印刷ジョブに対して前記第１の処理が開始される第１処理パターンにて処理することで必要となる第１処理時間と、
前記第１および第２の印刷ジョブを結合した結合ジョブに対して前記第１および第２の処理が順次実行される第２処理パターンにて処理することで必要となる第２処理時間のうち、処理するために必要となる時間が短くなる処理パターンにて複数の印刷ジョブを処理すると決定することを特徴とする制御プログラム。
【請求項１０】
結合する印刷ジョブの最大数を判定する判定ステップを更に有することを特徴とする請求項９に記載の制御プログラム。
【請求項１１】
前記判定ステップは、前記画像処理装置におけるＣＰＵの数、メモリサイズの少なくとも１つに基づいて結合する印刷ジョブの最大数を判定することを特徴とする請求項１０に記載の制御プログラム。
【請求項１２】
保持されている複数の印刷ジョブに対して前記決定ステップが第１パターンで処理するか第２パターンで処理するかを決定し、前記決定ステップによる決定処理のための経過時間が所定の時間を超えた後において前記第１パターンで処理するか第２パターンで処理するかが決定されなかった印刷ジョブは前記第１パターンにて処理されることを特徴とする請求項９乃至１１のいずれか１項に記載の制御プログラム。
【請求項１３】
前記第１の処理は、色空間の変換処理、解像度の変換処理、画像解析処理、レンダリング処理の少なくとも１つであることを特徴とする請求項９乃至１２のいずれか１項に記載の制御プログラム。
【請求項１４】
画像処理装置に、
印刷ページに対して第１の処理を実行する第１処理ステップと、
前記印刷ページに対する前記第１の処理が完了した後に前記印刷ページに対して第２の処理を実行する第２処理ステップと、
複数の印刷ページの順序を変えずに処理する第１処理パターンにて複数の印刷ページを処理するか、複数の印刷ページの順序を変えて処理する第２処理パターンにて複数の印刷ページを処理するかを決定する決定ステップを実行させ、
前記決定ステップは、第１の印刷ページに対して前記第１および第２の処理が順次実行され、かつ、前記第１の印刷ページに対して前記第２の処理が実行されている最中に前記第２の印刷ページに対して前記第１の処理が開始される第１処理パターンにて処理することで必要となる第１処理時間と、
前記第１および第２の印刷ページの順序を変えて前記第１および第２の処理が順次実行される第２処理パターンにて処理することで必要となる第２処理時間のうち、処理するために必要となる時間が短くなる処理パターンにて複数の印刷ページを処理すると決定することを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、制御方法、制御プログラムに関する。
【背景技術】
【０００２】
印刷ジョブは、例えば、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）やＸＰＳ（ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）などのＰＤＬ形式のファイルで構成され、画像処理に時間がかかる。そこで、前もって印刷ジョブに対して画像処理を実行して印刷データを生成し、印刷データをスプーリングする方法が採用されている。事前にスプーリングすることで、印刷データの供給が間にあわない問題に対応することができる。さらに、画像処理そのものを高速化する手法として、印刷ジョブの描画命令をＰＤＬ解析処理やラスタライズ処理等の複数の処理に分割し、分割された該処理をパイプライン化することで、高パフォーマンスを得る方法が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２８０１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の方法では、パイプライン処理の最適化が印刷ジョブの中だけにとどまっており、ジョブ間をまたがった最適化やページの処理順序の変更については検討されていない。そのため、大量のジョブを画像処理する場合には処理時間の軽減を十分に実行できないおそれがあった。本発明は、上記課題に鑑みてなされたものであり、画像処理の高速化を実現することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明に係る画像処理装置は、印刷ジョブに対して第１の処理を実行する第１処理手段と、前記印刷ジョブに対する前記第１の処理が完了した後に前記印刷ジョブに対して第２の処理を実行する第２処理手段と、複数の印刷ジョブを個別に処理する第１処理パターンにて複数の印刷ジョブを処理するか、複数の印刷ジョブを結合して処理する第２処理パターンにて複数の印刷ジョブを処理するかを決定する決定手段を有し、前記決定手段は、第１の印刷ジョブに対して前記第１および第２の処理が順次実行され、かつ、前記第１の印刷ジョブに対して前記第２の処理が実行されている最中に前記第２の印刷ジョブに対して前記第１の処理が開始される第１処理パターンにて処理することで必要となる第１処理時間と、前記第１および第２の印刷ジョブを結合した結合ジョブに対して前記第１および第２の処理が順次実行される第２処理パターンにて処理することで必要となる第２処理時間のうち、処理するために必要となる時間が短くなる処理パターンにて複数の印刷ジョブを処理すると決定することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、ジョブスケジューリングすることで高速な画像処理を実現する。
【図面の簡単な説明】
【０００７】
【図１】本発明の一実施形態に係る印刷装置の構成の一例を示す図である。
【図２】印刷装置の制御ユニットのハードウェア構成の一例を示す図である。
【図３】本発明の一実施形態に係る処理の流れの一例を示すフローチャートである。
【図４】本発明の一実施形態に係る制御ユニットの機能的な構成の一例を示す図である。
【図５】本発明の一実施形態に係る画像処理予測テーブルの一例を示す図である。
【図６】本発明の一実施形態に係る印刷設定ファイルの一例を示す図である。
【図７】本発明の一実施形態に係る予測時間を示したテーブルの一例を示す図である。
【図８】本発明の一実施形態に係るパイプライン処理の流れを示す図である。
【図９】本発明の一実施形態に係るジョブ制御部の処理を示すフローチャートである。
【図１０】本発明の一実施形態に係るパイプライン処理を示す図である。
【図１１】本発明の一実施形態に係るパイプライン処理を示す図である。
【図１２】本発明の一実施形態に係るパイプライン処理を示す図である。
【図１３】本発明の一実施形態に係るジョブ制御部の処理を示すフローチャートである。
【図１４】本発明の一実施形態に係るパイプライン処理を示す図である。
【図１５】本発明の一実施形態に係るパイプライン処理を示す図である。
【発明を実施するための形態】
【０００８】
（実施形態１）
図１は、本発明の一実施の形態に係る印刷装置１００の構成の一例を示す図である。本実施形態では、画像処理装置の一例として印刷装置を例に挙げて説明する。
【０００９】
印刷装置１００は、記録媒体上に印刷を行なう。なお、本実施形態では、記録媒体としてロール紙を例に挙げて説明するが、これに限定されるものではなく、他の連続紙であってもよい。図１は、記録材としてロールシート（搬送方向において印刷単位（１ページ）の長さよりも長い連続した連続シート）を用いた画像形成装置の全体構成の概略を示す断面図である。画像形成装置は、以下の構成要素１０１〜１１５を含み、これらが１つの筐体内に配置される。ただし、これらの構成要素を複数の筐体に分けてもよい。
【００１０】
制御ユニット１０８は、コントローラ（ＣＰＵまたはＭＰＵを含む）やユーザインターフェース情報の出力器（表示情報や音響情報などの発生器）、各種Ｉ／Ｏインターフェースを備えた制御部を内蔵し、画像形成装置全体の各種制御を司る。
【００１１】
ロールシートユニットとして上段シートカセット１０１ａと下段シートカセット１０１ｂの２基が備えられている。上段シートカセット１０１ａから引き出されたロールシート（以下、シート）は図中ａ方向に、下段シートカセット１０１ｂから引き出されたシートは図中ｂ方向にそれぞれ搬送される。いずれのカセットからのシートも図中ｃ方向に進行して搬送ユニット１０２に到達する。搬送ユニット１０２は、複数の回転ローラ１０４を通して印刷処理中にシートを図中ｄ方向（水平方向）に搬送する。給紙元のシートカセットを一方から他方に切り替える際は、既に引き出されているシートをカセット内に巻き戻し、新たに給紙させるシートがセットされているカセットからシートが新たに給紙される。
【００１２】
搬送ユニット１０２の上方にはヘッドユニット１０５が搬送ユニット１０２と対向して配置される。ヘッドユニット１０５では複数色（本実施形態では７色）分の独立した印刷ヘッド１０６がシートの搬送方向に沿って保持されている。本画像形成装置は、搬送ユニット１０２によるシートの搬送に同期させて、印刷ヘッド１０６からインクを吐出させてシート上に画像を形成する。インクはシートに直接吐出させるのに代え、中間転写体にインクを付与した後、そのインクをシートに付与することによって画像を形成させるものとしてもよい。これら搬送ユニット１０２、ヘッドユニット１０５、印刷ヘッド１０６を含んで印刷ユニットが構成されている。インクタンク１０９は各色のインクを独立して貯蔵する。インクタンク１０９からはチューブによって各色に対応して設けられたサブタンクまでインクが供給され、サブタンクから各印刷ヘッド１０６までチューブを介してインクが供給される。印刷ヘッド１０６には、印刷時の搬送方向ｄ方向に沿って各色（本実施形態では７色）のラインヘッドが並んでいる。各色のラインヘッドは、継ぎ目無く単一のノズルチップで形成されたものであってもよいし、分割されたノズルチップが一列又は千鳥配列のように規則的に並べられたものであってもよい。ノズルからインクを吐出するインクジェット方式は、発熱素子を用いた方式、ピエゾ素子を用いた方式、静電素子を用いた方式、ＭＥＭＳ素子を用いた方式等を採用することができる。印刷データに基づいて各ヘッドのノズルからインクが吐出されるが、吐出のタイミングは搬送用エンコーダ１０３の出力信号によって決定される。
【００１３】
なお、本実施形態は、記録剤としてインクを用いたインクジェット方式のプリンタに限定されない。サーマルプリンタ（昇華型、熱転写型など）、ドットインパクトプリンタ、ＬＥＤプリンタ、レーザープリンタなどの電子写真方式など、様々な印刷方式に適用可能である。
【００１４】
シートに画像が形成された後、当該シートは搬送ユニット１０２から、スキャナユニット１０７まで搬送される。スキャナユニット１０７では、シート上の印刷画像や特殊パターンを光学的に読取って印刷画像に問題がないかどうかの確認や、インクの吐出状態を含む本装置の状態確認等を行う。
【００１５】
シートはスキャナユニット１０７近傍からｅ方向に搬送され、カッタユニット１１０に導入される。カッタユニット１１０ではシートを所定の印刷単位の長さ毎に切断する。印刷する画像サイズに応じてこの所定の印刷単位の長さは異なる。カッタユニット１１０は、片面印刷の場合はページ単位でシートを切断するが、印刷ジョブの内容によってはページ単位で切断しない場合もある。また、両面印刷の場合、カッタユニット１１０はシートの第１面（たとえばおもて面）はページ単位で切断せずに所定の長さ分まで画像を連続して印刷し、第２面（たとえば裏面）を印刷した場合にページ単位で切断する。なお、カッタユニット１１０は、片面印刷や両面印刷の裏面印刷に際し、１枚の画像毎に切断するものに限らない。所定の長さ分搬送されるまで切断せず、所定の長さまで搬送された後で切断し、別のカッタ装置が１枚（１頁）の画像毎に手動操作等によって切断するものとしてもよい。またシートの幅方向に関しては、切断が必要な場合、別のカッタ装置を用いて切断することになる。
【００１６】
カッタユニット１１０から搬送されたシートは、ユニット内を図中ｆ方向に搬送され、裏面印字ユニット１１１に搬送される。裏面印字ユニット１１１は、シートの片面のみに画像を印刷する場合に、シートの裏面に所定の情報を印刷させるためのユニットである。なお、裏面印字ユニット１１１は、印刷ヘッド１０６が両面印刷の印刷ジョブのために表面と裏面の画像を印刷する場合、印刷ヘッド１０６が画像を印刷する領域以外に所定の情報を印刷してもよい。裏面印字ユニット１１１は、記録剤の押印、熱転写、インクジェットなどの方式を採用可能である。
【００１７】
裏面印字ユニット１１１を通ったシートは、次に乾燥ユニット１１２に搬送される。乾燥ユニット１１２は、インクが付与されたシートを短時間で乾燥させるために、ユニット内を図中ｇ方向に通過するシートを温風で加熱する。印刷単位長さに切断されたシートは１枚ずつ乾燥ユニット１１２内を通過して、図中ｈ方向に搬送されて仕分けユニット１１４に搬送される。仕分けユニット１１４は、複数のトレー（本実施形態では１８個）を保持しており、印刷単位の長さ等に応じでシートの排紙先のトレーを区別する。仕分けユニット１１４では、ユニット内を図中ｉ方向に通過するシートを、各トレー上に設けられたセンサでトレーの空きやシートが満載か否かなどを確認しながら印刷画像毎に設定されたトレー番号に対応するトレーに排紙していく。切断されたシートの排出先となるトレーは、印刷ジョブの発行元（ホスト装置）で特定のものが指定される場合や、画像形成装置側で空いているトレーが任意に指定される場合がある。１つのトレーには予め決められた枚数まで排紙可能である。この予め決められた枚数を超える印刷ジョブの場合、複数のトレーに跨って排紙される。トレーに対して排紙可能なシートの枚数やサイズ、種類などは、そのトレーの大きさ（タイプ）等によって異なっている。また、複数のトレーのそれぞれには優先順位を付すことができ、画像形成装置２００は、印刷ジョブを実行するにあたり、空いている（シートが存在しない）トレーを、優先順位に従って順にシートの排出先として割り当てていく。この優先順位は、予め設定されていてもよいし、ユーザによる操作等で適宜変更可能としてもよい。
【００１８】
シート巻取りユニット１１３は、ページ毎に切断されずにおもて面が印刷されたシートの巻取りを行う。両面印刷の際にはまずおもて面に画像形成が行われたシートを、カッタユニット１１０でページ単位では切断せず、連続したおもて面の印刷が終了した後に切断する。おもて面に複数ページの画像が印刷され、かつ、切断されたシートは、ユニット内を図中のｊ方向に通過し、シート巻取りユニット１１３が巻取る。そして、一連の複数ページ分のおもて面の画像形成が終了して、巻き取られたシートは、先のおもて面とは反対面を印刷可能な面にするために表面を印刷ヘッド１０６に対向させる面として再度ユニットの図中のｋ方向に搬送される。ｋ方向に搬送されたシートは、ｃ方向に搬送されて搬送ユニット１０２に到達する前に反転される。その結果、搬送ユニット１０２において、先のおもて面とは反対面が印刷ヘッド１０６に対向される面となる。このように搬送させることで、先のおもて面とは反対の裏面の画像の印刷を行わせる。通常の片面印刷の場合は、画像が印刷されたシートは、シート巻取りユニット１１３による巻取りを行わせずに仕分けユニット１１４に搬送される。
【００１９】
次に、図２を用いて、図１に示す制御ユニット１０８におけるハードウェア構成の一例について説明する。
【００２０】
制御ユニット１０８は、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、ＨＤＤ２０４、外部Ｉ／Ｆ２０５、画像処理部２０６、エンジン制御部２０７、スキャナ制御部２０８を有し、それぞれがシステムバス２１０を介して接続される。
【００２１】
ＣＰＵ２０１は、マイクロプロセッサ（マイクロコンピュータ）形態の中央演算処理部である。ＣＰＵ２０１は、プログラムの実行やハードウェアの起動により印刷装置１００全体の動作を制御する。ＲＯＭ２０２は、ＣＰＵ２０１が実行するためのプログラムや印刷装置１００の各種動作に必要な固定データを格納する。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして用いられたり、種々の受信データの一時格納領域として用いられたり、各種設定データを記憶させたり、印刷ジョブのリストや作業用データを格納させる。ＨＤＤ２０４は、印刷ジョブに基づき展開されたイメージデータ等を一時的に格納する。また、ＨＤＤ２０４は、ＣＰＵ２０１が実行するためのプログラム、印刷データ、印刷装置１００の各種動作に必要な設定情報を、内蔵するハードディスクに記憶させたり、読み出したりすることが可能である。なお、ＨＤＤ２０４に代えて、他の大容量記憶装置としてもよい。
【００２２】
外部Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）２０５は、ホスト装置２０から印刷ジョブ等を受信する。例えば、ホスト装置２０から送信された印刷ジョブは、外部Ｉ／Ｆ２０５を介して受信される。また、当該印刷ジョブの情報は、ＲＡＭ２０３上の印刷ジョブリストに格納され、印刷ジョブに基づいて展開されたイメージデータは、ＨＤＤ２０４に格納される。
【００２３】
画像処理部２０６は、印刷ジョブに基づいてレンダリング処理（ＲＩＰ（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ））を実施することで、ページ単位でイメージデータを生成する。具体的には、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）で記述された文字、線画、図形等のベクトル情報、或いは色、パターン、写真等の画像走査線情報を、印刷や表示が可能なビットマップデータに展開する。また、画像処理部２０６においては、例えば、色空間の変換処理（例えば、ＹＣｂＣｒのｓＲＧＢへの変換）、有効な（印刷装置１００が印刷処理可能な）画素数への解像度の変換処理、画像解析処理、画像補正等、様々な画像処理が必要に応じて施される。画像処理部２０６による画像処理によって得られたイメージデータ（ＲＩＰ済みデータ）は、例えば、ＨＤＤ２０４等に格納される。
【００２４】
エンジン制御部２０７は、イメージデータデータに基づいて上述した印刷ユニットを制御して、シート上へ印刷を行なう。エンジン制御部２０７は、例えば、各色の印刷ヘッド１０６へのインク吐出指示や、シート上でのドット位置を調整するための吐出タイミング設定、ヘッド駆動状態取得等を行なう。イメージデータに応じて印刷ヘッド１０６を駆動制御し、印刷ヘッド１０６からインクを吐出させる。これにより、シート上に印刷が行なわれる。その他、エンジン制御部２０７は、各種ローラ（例えば、給紙ローラ、搬送ローラ等）の駆動を制御し、シートを適切な速度で搬送及び停止させる。
【００２５】
スキャナ制御部２０８は、イメージセンサー（例えば、ＣＣＤ、ＣＩＳ等）を制御し、シート上の画像を読み取る。スキャナ制御部２０８は、画像の読み取り値として、赤（Ｒ）、緑（Ｇ）及び青（Ｂ）色のアナログ輝度データを取得する。その他、スキャナ制御部２０８は、イメージセンサーから取得した輝度データを解析し、不吐ノズルやシートの切断位置の検出等も行なう。ホスト装置２０は、印刷装置１００の外部に設けられ、印刷ジョブの供給源として機能する。ホスト装置２０は、印刷に係わる画像等のデータの作成等を行なうコンピュータでもあっても良いし、画像読取用のリーダ等であっても良い。
【００２６】
外部Ｉ／Ｆ２０５は、印刷ジョブやその他のコマンド、ステータス信号等をホスト装置２０等との間で送受信する。
【００２７】
次に、図３を用いて、図１に示す印刷装置１００における処理の流れの一例について簡単に説明する。なお、本願のフローチャートは、ＣＰＵ２０１が、ＲＯＭ２０２またはＨＤＤ２０４に格納されている制御プログラムをＲＡＭ２０３にロードし、それを実行することにより行われる処理の流れを示す。ここでは、両面印刷を行なう際の処理の流れについて説明する。
【００２８】
この処理は、印刷装置１００が外部Ｉ／Ｆ２０５において、ホスト装置２０から印刷ジョブを受信すると開始する（Ｓ３０１）。印刷装置１００は、画像処理部２０６において、当該受信した印刷ジョブをＲＩＰする（Ｓ３０２）。ＲＩＰの順番は、優先度（通常、割込）、ユーザによる指定、用紙の綴じ方、装置に搭載されている用紙サイズ、ソータトレイにまとめる単位などに基づいて決められる。ＲＩＰされたデータは、ＲＩＰ済みデータとしてＲＡＭ２０３またはＨＤＤ２０４に格納される。
【００２９】
印刷装置１００は、エンジン制御部２０７において、表面用のＲＩＰ済みデータに基づいてシート表面の印刷を実行する（Ｓ３０３）。具体的には、ロール紙ユニット１０１からシートを給紙し、搬送ユニット１０２によってシートをヘッドユニット１０５に搬送する。印刷装置１００は、ヘッドユニット１０５まで搬送されたシートの表面に画像を印刷し、当該印刷後のシートをスキャナユニット１０７まで搬送する。印刷装置１００は、スキャナユニット１０７において、印刷された画像を確認した後、当該印刷がなされたシートをカッタユニット１１０まで搬送する。そして、印刷装置１００は、カッタユニット１１０でシートの切断を行なわず、連続シートのまま、乾燥ユニット１１２を通過させ、印刷された画像を乾燥させた後、シート巻取りユニット１１３で当該連続シートを巻き取る。印刷装置１００は、印刷指示のあったＲＩＰ済みデータ全ての表面印刷が終了、または所定の設定（画像数、印刷ライン数、印刷時間等）まで表面印刷が終了すると、表面の最後の画像の後ろで切断を行なう（Ｓ３０４）。
【００３０】
Ｓ３０４の後、印刷装置１００は、エンジン制御部２０７において、裏面用のＲＩＰ済みデータに基づいてシート裏面の印刷を開始する。具体的には、シート巻取りユニット１１３に巻き取られた表面印刷済みシートを反転後、搬送ユニット１０２により、ヘッドユニット１０５に搬送する。印刷装置１００は、ヘッドユニット１０５まで搬送されたシートの裏面に印刷指示のあった裏面のＲＩＰ済みデータに基づいて印刷し、スキャナユニット１０７まで搬送する。
【００３１】
印刷装置１００は、スキャナユニット１０７において、印刷された画像を確認した後、当該印刷がなされたシートをカッタユニット１１０まで搬送する。印刷装置１００は、カッタユニット１１０において、当該シートを所定の印刷単位の長さ毎に切断する（Ｓ３０５）。
【００３２】
所定の印刷単位の長さに切断されたシートは乾燥ユニット１１２において乾燥された後、印刷装置１００は、仕分けユニット１１４に所定の印刷単位の長さに切断されたシートを搬送し、画像毎に指定されたトレーに搬送をする（Ｓ３０６）。以上の処理により、両面印刷処理を終了する。
【００３３】
本実施形態では、表面と裏面を一台の印刷装置１００で印刷する印刷装置を例に挙げて説明するが、表面専用の印刷装置と裏面専用の印刷装置を別々に用意するタンデム構成であってもよい。なお、タンデム構成とする場合、例えば、シート巻取りユニット１１３が存在しない以外は本実施形態と同様の構成とすればよい。この場合、表面専用の印刷装置で表面を印刷されたシートは、例えば、使用者によって裏面専用の印刷装置へ搬送され、裏面専用の印刷装置において裏面用のＲＩＰ済みデータに基づいてシート裏面の印刷が実行される。
【００３４】
なお、図３のフローでは、両面印刷の場合について説明したが、片面印刷の場合は、Ｓ３０３で表面を印刷した後にカッタユニット１１０で所定の印刷単位の長さ毎に切断し、乾燥させ、搬送すればよい。
【００３５】
ここで、図４を用いて、図１に示す制御ユニット１０８により実現されるＲＩＰに関する機能的な構成の一例について説明する。
【００３６】
制御ユニット１０８は、ＣＰＵ２０１がＲＯＭ２０２等に格納されたプログラムを実行することにより、ジョブ制御部４０１、印刷ジョブ受信部４０２、画像処理部４０３、印刷データ格納部４０４、プリンタエンジン送信部４０５、ＵＩ制御部４０６を実現する。
【００３７】
ジョブ制御部４０１は、印刷ジョブに係る処理を統括制御する。具体的には、ジョブ制御部４０１は、画像処理部４０３へＲＩＰ開始の指示をしたり、ＲＩＰによって得られた印刷データ（ＲＩＰ済みデータ）を、印刷データ格納部４０４へ送信する。さらに、ジョブ制御部４０１は、画像処理予測テーブル４０７を生成する。本実施形態では、ＲＩＰや印刷に必要なパラメータを印刷ジョブ受信部４０２から受け取り、画像処理予測テーブル４０７に記録する。また、ＲＩＰに必要な時間を予め画像処理予測テーブル４０７に設定する。
【００３８】
印刷ジョブ受信部４０２は、ホスト装置２０から送られてきた印刷ジョブを受信する。印刷ジョブ受信部４０２により受信された印刷ジョブは、印刷ジョブ格納用に設けられたＨＤＤ２０４などで構成されたスプーラに一旦格納される。このとき、印刷ジョブは、ＰＤＦやＪＰＧなどの画像ファイル４０８と、印刷時に指定される各種パラメータ情報が記載された印刷設定ファイル４０９から構成されるものとする。印刷設定ファイル４０９は、ジョブ制御部４０１や画像処理部４０３において参照され、設定情報に応じて、画像ファイル４０８に対して処理を行う。
【００３９】
画像処理部４０３は、ジョブ制御部４０１からの指示に基づいて、印刷ジョブをＲＩＰし、印刷データを作成する。画像処理部４０３は、画像ファイル４０８に対して、画像補正や前処理を行う画像補正部４１０、ラスタライズ処理を行うラスタライズ部４１１、レイアウトなどの面付け処理や後処理を行う面付け部４１２から構成される。画像ファイル４０８は、画像補正部４１０で処理が終わると、ラスタライズ部４１１で処理され、最後に面付け部４１２での処理とパイプライン的に処理される。また、印刷設定ファイル４０９の内容によって、処理時間は異なる。例えば、画像補正部４１０における処理時間は、印刷設定ファイル４０９において、画像補正ありと指定されていた場合は、画像補正なしと指定されていた場合に比べると一般的に処理時間が長くなる。同様に、ラスタライズ部４１１における処理時間は、印刷設定ファイル４０９において、画像サイズが大である方が処理時間が長くなる。同様に、面付け部４１２における処理時間は、印刷設定ファイル４０９において、複数のページを１つにレイアウトするＮｉｎ１の形式の方が、１つのページを１つにレイアウトする場合に比べると一般的に処理時間が長くなる。
【００４０】
印刷データ格納部４０４は、ジョブ制御部４０１の指示により、ＲＩＰによって得られた印刷データを印刷データ格納用に設けられたＨＤＤ２０４などで構成されたスプーラに一旦格納する。
【００４１】
プリンタエンジン送信部４０５は、ジョブ制御部４０１からの指示に基づいて、ＲＩＰによって得られた印刷データをエンジン制御部２０７へ送信する。
【００４２】
ＵＩ制御部４０６は、操作ユニット１１５を介したユーザからの指示を印刷装置１００内へ入力したり、操作ユニット１１５への各種情報の表示等を制御したりする。ユーザからの指示としては、例えば、通常よりも早く印刷を行ないたい場合に印刷ジョブの優先度を変更する指示、投入した印刷ジョブをキャンセルしたりする指示等が挙げられる。
【００４３】
ここで、図５を用いて、図４に示す画像処理予測テーブル４０７の一例について説明する。
【００４４】
図５に示すように、画像処理予測テーブル４０７は、用紙サイズ５０１、画像補正設定５０２、画像ファイル種別５０３、レイアウト種別５０４、画像補正処理時間５０５、ラスタライズ処理時間５０６、面付け処理時間５０７を含む。
【００４５】
画像補正処理時間５０５は、画像ファイル４０８における１ページ分を画像補正部４１０で処理するためにかかる時間を示しており、様々なデータを計測し、その平均値などを元に予め設定される。例えば、用紙サイズ５０１が「Ａ４」で、画像補正設定５０２が「なし」で、画像ファイル種別５０３が「ＰＤＬ」で、レイアウト種別が「１ｉｎ１」の場合は、画像補正処理にかかる時間が「１０」であることを示す。
【００４６】
ラスタライズ処理時間５０６は、画像ファイル４０８における１ページ分をラスタライズ部４１１で処理するためにかかる時間を示しており、様々なデータを計測し、その平均値などを元に予め設定される。例えば、用紙サイズ５０１が「Ａ４」で、画像補正設定５０２が「なし」で、画像ファイル種別５０３が「ＰＤＬ」で、レイアウト種別が「１ｉｎ１」の場合は、ラスタライズにかかる時間が「８０」であることを示す。
【００４７】
面付け処理時間５０７は、画像ファイル４０８における１ページ分を面付け部４１２で処理するためにかかる時間を示しており、様々なデータを計測し、その平均値などを元に予め設定される。例えば、用紙サイズ５０１が「Ａ４」で、画像補正設定５０２が「なし」で、画像ファイル種別５０３が「ＰＤＬ」で、レイアウト種別が「１ｉｎ１」の場合は、画像補正処理にかかる時間が「３０」であることを示す。同様に、レイアウト種別が「Ｎｉｎ１」の場合は、画像補正処理にかかる時間が「５０」であることを示す。
【００４８】
また、画像補正処理時間５０５、ラスタライズ処理時間５０６、面付け処理時間５０７は、ここでは予め設定されているものとして説明を続けるが、設定画面によってユーザが自由に変更できるようにしてもよいし、画像処理をしていく中で動的に変更してもよい。
【００４９】
次に、図６（ａ）、（ｂ）、（ｃ）、（ｄ）を用いて、図４に示す印刷設定ファイル４０９の一例について説明する。
【００５０】
印刷設定ファイル６０１は、番号が「１００１」で、ページ数が「２」で、用紙サイズ５０１が「Ｂ５」で、画像補正設定５０２が「あり」で、画像ファイル種別５０３が「ＪＰＥＧ」で、レイアウト種別５０４が「１ｉｎ１」である。
【００５１】
以降、印刷設定ファイル６０２−６０４の内容は、図６に記載した通りである。
【００５２】
印刷ジョブは、画像処理対象となる画像ファイル４０８と印刷設定ファイル４０９から構成される。以降、特に説明しない限りは、印刷ジョブは、印刷設定ファイル６０１、６０２、６０３、６０４とそれぞれ関連する画像ファイル４０８で構成されるものとする。
【００５３】
ジョブ制御部４０１は、印刷設定ファイル４０９と画像処理予測テーブル４０７から、印刷ジョブの画像処理にかかる時間を予測できる。例えば、印刷設定ファイル６０１の内容は図６（ａ）の６０１に示した通りである。そのため、印刷設定ファイル６０１を含む印刷ジョブを画像補正部４１０にて処理するための処理時間は「１００」と予測される。同様にして、ジョブ制御部４０１は、印刷設定ファイル６０１を含む印刷ジョブをラスタライズ部４１１にて処理するための処理時間は「３０」、面付け部４１２で必要な処理時間は「３０」と予測される。このようにして、ジョブ制御部４０１は、図５のテーブルと印刷設定ファイル４０９を参照することで、印刷ジョブの画像処理時間を予測する。
【００５４】
図７は、印刷ジョブを画像処理部４０３内の画像補正部４１０、ラスタライズ部４１１、面付け部４１２で順にパイプライン的に処理した場合に、各処理に要する予測時間とそれぞれのページが終了するのにかかる予測時間を示している。ここでは、画像処理部４０３は、図６の印刷設定ファイル６０１、６０２、６０３、６０４で表現される印刷ジョブを順に処理した場合を例に説明する。
【００５５】
印刷設定ファイル６０１の印刷ジョブ７０１は、ページ１及び２ともに画像補正処理に「１００」、ラスタライズ処理に「３０」、面付け処理に「３０」の時間がかかることを示している。従って、印刷ジョブ７０１の１ページ目は、それぞれの処理の合計時間である「１６０」が終了までの時間となる。印刷ジョブ７０１の２ページ目の終了時間は、それぞれの処理の合計時間の「１６０」に加え、ページ１の処理を待っていた時間が加算される。具体的には、印刷ジョブ７０１の２ページ目は、１ページ目の画像補正処理を「１００」待つと予測されており、「１６０」に「１００」を加えた「２６０」が終了までの時間となる。
【００５６】
印刷設定ファイル６０２の印刷ジョブ７０２は、ページ１及び２ともに画像補正処理に「１００」、ラスタライズ処理に「３０」、面付け処理に「３０」の時間がかかることを示している。印刷ジョブ７０２の１ページ目の終了時間は、それぞれの処理の合計時間の「１６０」に加え、印刷ジョブ７０１の１ページ目と２ページ目の処理を待っていた時間が加算される。具体的には、印刷ジョブ７０１の１ページ目と２ページ目の画像補正処理をそれぞれ「１００」待つと予測されており、印刷ジョブ７０２の１ページ目は、「１６０」に「２００」を加えた「３６０」が終了時間となる。同様の考え方で、印刷ジョブ７０２の２ページ目は、「４６０」が終了時間となる。
【００５７】
印刷設定ファイル６０３の印刷ジョブ７０３は、ページ１及び２ともに画像補正処理に「１０」、ラスタライズ処理に「８０」、面付け処理に「３０」の時間がかかることを示している。印刷ジョブ７０３の１ページ目の終了時間は、それぞれの処理の合計時間の「１２０」に加え、印刷ジョブ７０１と印刷ジョブ７０２の処理を待っていた時間が加算される。具体的には、印刷ジョブ７０１及び印刷ジョブ７０２の画像補正処理をそれぞれ「１００」待つと予測されて「４００」が加算される。さらに、印刷ジョブ７０３の画像補正処理は「１０」だが、その処理と同時に開始される印刷ジョブ７０２のラスタライズ処理は「３０」と予測されている。そのため、画像補正処理の「１０」とラスタライズ処理の「３０」の差である「２０」処理を、印刷ジョブ７０３の１ページ目のラスタライズ処理を実行するために待つ必要がある。結果として、印刷ジョブ７０３の１ページ目は、元々の処理時間である「１２０」に加え、「４００」と「２０」が加算された「５４０」が終了時間となる。同様の考え方で、印刷ジョブ７０３の２ページ目は、「６２０」が終了時間となる。
【００５８】
印刷設定ファイル６０４の印刷ジョブ７０４は、ページ１及び２ともに画像補正処理に「１０」、ラスタライズ処理に「８０」、面付け処理に「３０」の時間がかかることを示している。印刷ジョブ７０４の１ページ目の終了時間は、それぞれの処理の合計時間の「１２０」に加え、印刷ジョブ７０１と印刷ジョブ７０２、印刷ジョブ７０３の処理を待っていた時間が加算される。具体的には、画像補正処理の開始において、印刷ジョブ７０１の２ページ及び印刷ジョブ７０２の２ページの合計４ページでそれぞれ「１００」待ち、印刷ジョブ７０３の２ページをそれぞれ「１０」待つと予測され「４２０」が加算される。さらに、画像補正処理の開始において、印刷ジョブ７０３のラスタライズ処理でそれぞれ「８０」の時間を待つと予測され「１６０」が加算される。結果として、印刷ジョブ７０４の１ページ目は、元々の処理時間である「１２０」に加え、「４２０」と「１６０」が加算された「７００」が終了時間となる。同様の考え方で、印刷ジョブ７０４の２ページ目は、「７８０」が終了時間となる。
【００５９】
図８は、図７における予測時間の通りに複数の画像処理が順次実行された場合の処理の流れを示している。
【００６０】
ジョブ制御部４０１から画像処理部４０３に対して、画像処理の開始が指示されると、印刷ジョブ７０１の１ページ目は、画像補正部４１０において、画像補正処理が行われる（Ｓ８０１）。印刷ジョブ７０１の１ページ目に対する画像補正処理が完了した後、印刷ジョブ７０１の２ページ目に対して、画像補正部４１０において、画像補正処理が行われる（Ｓ８０２）。Ｓ８０２の処理が実行されている最中に、印刷ジョブ７０１の１ページ目への、ラスタライズ部４１１によるラスタライズ処理が行われる（Ｓ８０３）。さらに、印刷ジョブ７０１の１ページ目は、ラスタライズ処理が終わると、面付け部４１２において、面付け処理が行われる（Ｓ８０４）。同様に、印刷ジョブ７０１の２ページ目も、画像補正処理が終わると、ラスタライズ処理を行い（Ｓ８０５）、続いて面付け処理（Ｓ８０６）が行われる。このように、印刷ジョブ７０１は、パイプライン的に処理される。また、印刷ジョブ７０１の２ページ目は、１ページ目の画像補正処理（Ｓ８０１）の分だけ、処理の開始が待たされることがわかる。
【００６１】
印刷ジョブ７０２の１ページ目は、画像補正部４１０において、印刷ジョブ７０１の２ページ目の画像補正処理が終わると、画像補正処理が行われる（Ｓ８０７）。次に、印刷ジョブ７０２の２ページ目に対して、画像補正部４１０において、画像補正処理が行われるとともに（Ｓ８０８）、印刷ジョブ７０２の１ページ目は、ラスタライズ部４１１において、ラスタライズ処理が行われる（Ｓ８０９）。さらに、印刷ジョブ７０２の１ページ目は、ラスタライズ処理が終わると、面付け部４１２において、面付け処理が行われる（Ｓ８１０）。同様に、印刷ジョブ７０２の２ページ目も、画像補正処理が終わると、ラスタライズ処理が行われ（Ｓ８１１）、続いて面付け処理（Ｓ８１２）が行われる。このように、印刷ジョブ７０２は、パイプライン的に処理される。また、印刷ジョブ７０２の１ページ目は、印刷ジョブ７０１の１ページ目の画像補正処理（Ｓ８０１）と２ページ目の画像補正処理（Ｓ８０２）の分だけ、処理の開始が待たされることがわかる。同じく、印刷ジョブ７０２の２ページ目は、印刷ジョブ７０１の１ページ目の画像補正処理（Ｓ８０１）と２ページ目の画像補正処理（Ｓ８０２）、印刷ジョブ７０２の１ページ目の画像補正処理（Ｓ８０７）の分だけ、処理の開始が待たされることがわかる。
【００６２】
印刷ジョブ７０３の１ページ目は、画像補正部４１０において、印刷ジョブ７０２の２ページ目の画像補正処理が終わると、画像補正処理が行われる（Ｓ８１３）。次に、印刷ジョブ７０２の２ページ目に対して、画像補正部４１０において、画像補正処理が行われる（Ｓ８１４）。一方、印刷ジョブ７０３の１ページ目は、印刷ジョブ７０２の２ページ目のラスタライズ処理（Ｓ８１１）の終了を待ってから、ラスタライズ部４１１において、ラスタライズ処理が行われる（Ｓ８１５）。これは、印刷ジョブ７０２の２ページ目の画像補正処理（Ｓ８０８）が終わると同時に、印刷ジョブ７０２の２ページ目のラスタライズ処理（Ｓ８１１）が始まるが、その処理にかかる「３０」の時間がかかるためである。さらに、印刷ジョブ７０３の１ページ目の画像補正処理（Ｓ８１３）にかかる時間は「１０」と判断されるので、「３０」と「１０」の差である「２０」の時間だけ印刷ジョブ７０３の１ページ目のラスタライズ処理（Ｓ８１５）の開始が待たされる。印刷ジョブ７０３の１ページ目のラスタライズ処理（Ｓ８１５）が終わると、印刷ジョブ７０３の１ページ目の面付け処理（Ｓ８１６）と印刷ジョブ７０３の２ページ目のラスタライズ処理（Ｓ８１７）が開始される。同様に、印刷ジョブ７０３の２ページ目のラスタライズ処理（Ｓ８１７）が終わると、印刷ジョブ７０３の２ページ目の面付け処理（Ｓ８１８）が開始される。このように、印刷ジョブ７０３は、パイプライン的に処理される。また、印刷ジョブ７０３の１ページ目は、印刷ジョブ７０１と印刷ジョブ７０２の画像補正処理に係る時間だけ開始が待たされる。さらに、印刷ジョブ７０３の１ページ目は、印刷ジョブ７０２のラスタライズ処理（Ｓ８１１）のうち「２０」の時間だけ、ラスタライズ処理（Ｓ８１５）の開始が待たされる。同じく、印刷ジョブ７０３の２ページ目は、印刷ジョブ７０３の１ページ目で待った時間に加え、印刷ジョブ７０３の１ページ目の画像補正処理（Ｓ８１４）の分だけ、処理の開始が待たされる。
【００６３】
印刷ジョブ７０４の１ページ目の終了時間は、それぞれの処理の合計時間の「１２０」に加え、印刷ジョブ７０１と印刷ジョブ７０２、印刷ジョブ７０３の処理を待っていた時間が加算される。具体的には、画像補正処理の開始において、印刷ジョブ７０１の２ページ及び印刷ジョブ７０２の２ページの合計４ページでそれぞれ「１００」待ち、印刷ジョブ７０３の２ページをそれぞれ「１０」待つため「４２０」が加算される。さらに、画像補正処理の開始において、印刷ジョブ７０３のラスタライズ処理（Ｓ８１５、Ｓ８１７）でそれぞれ「８０」の時間を待つため「１６０」が加算される。結果として、印刷ジョブ７０４の１ページ目は、元々の処理時間である「１２０」に加え、「４２０」と「１６０」が加算された「７００」が終了時間となる。
【００６４】
以上のように印刷ジョブ７０１−７０４を順番にパイプライン的に処理することで、複数の印刷ジョブが並列実行される。しかしながら、印刷ジョブの実行順序によっては、待ち時間も発生することが予測されている。
【００６５】
次に、図９を用いて、図１に示す印刷装置１００における処理の流れの一例について説明する。図９は、印刷ジョブを受信して画像処理を開始する前までに行われる印刷ジョブ実行順序を決定するまでのジョブスケジューリングの流れを示すフローチャートである。
【００６６】
ジョブスケジューリング処理は、ＵＩ制御部４０６によって、ユーザから画像処理の開始が指示されると開始する。
【００６７】
ジョブスケジューリング処理が開始されると、ジョブ制御部４０１は、結合して同時に画像処理する印刷ジョブの候補を決定する（Ｓ９０１）。
【００６８】
ここで、結合して同時に画像処理するとは、結合した印刷ジョブは、各ページの処理について、画像補正部４１０、ラスタライズ部４１１、面付け部４１２を、結合した単位で処理するということである。例えば、印刷ジョブ７０１と印刷ジョブ７０２を結合して同時に画像処理する場合、印刷装置は、印刷ジョブ７０１の１ページ目の画像補正処理が終わっても、次のラスタライズ処理に進まない。印刷ジョブ７０２の１ページ目の画像補正処理が終わると、印刷装置は、印刷ジョブ７０１及び印刷ジョブ７０２のラスタライズ処理に進む。ここでの説明では、結合して同時に処理するといっても、各処理の中で連続で処理するものとして説明しているが、同時に処理を行う場合も同様である。
【００６９】
また、候補の決定は、印刷ジョブ受信部４０２に格納されている全ての印刷ジョブとして説明を続けるが、全ての印刷ジョブを対象にする必要はなく、先頭から１０までの印刷ジョブといった方法でもよい。また、印刷設定ファイルの内容を元に候補を決定する方法でもよい。より具体的には、「用紙サイズ」が「Ａ４」の印刷ジョブのみ候補とするというように印刷設定ファイルの特定の内容を条件に候補を決定してもよい。あるいは、「用紙サイズ」が「Ａ４」で「種別」が「ＪＰＥＧ」というように複合条件の元で候補を決定してもよい。
以降の説明では特に説明をしない限りは、印刷ジョブ７０１−７０４が印刷ジョブ受信部４０２に格納されており、その４つの印刷ジョブが候補として決定されたものとする。
【００７０】
次に、ジョブ制御部４０１は、Ｓ９０１で決定した候補に対して、画像処理部４０３における処理毎に必要な処理予測時間を決定する処理を行う（Ｓ９０２）。より具体的には、ジョブ制御部４０１は、画像処理予測テーブル４０７と印刷設定ファイル４０９とから処理予測時間を求める。
【００７１】
次に、ジョブ制御部４０１は、画像処理部４０３の各処理部において、そのままパイプライン実行した場合にかかる終了時間を計算する処理を行う（Ｓ９０３）。図７、図８で説明した通り、そのままパイプライン処理を行うと、印刷ジョブ７０１は、１ページ目の終了時間が「１６０」、２ページ目の終了時間が「２６０」となる。印刷ジョブ７０２は、１ページ目が「３６０」、２ページ目が「４６０」となる。印刷ジョブ７０３は、１ページ目が「５４０」、２ページ目が「６２０」となる。印刷ジョブ７０４は、１ページ目が「７００」、２ページ目が「７８０」となる。
【００７２】
次に、ジョブ制御部４０１は、複数の印刷ジョブを結合して処理する場合の結合対象となる印刷ジョブの最大数を決定する処理を行う（Ｓ９０４）。最大数を判定する方法は、予め用意された設定ファイルに従ってもよいし、ＣＰＵのコア数やメモリサイズなどの情報などから動的に判定してもよい。つまり、ＣＰＵのコア数、メモリサイズの空き容量が多い程、結合可能なファイル数は増加する。逆に、ＣＰＵのコア数、メモリサイズの空き容量が少ない程、結合可能なファイル数は減少する。また、以降の説明では特に説明をしない限りは、最大数が２であるとして説明を続ける。
【００７３】
次に、ジョブ制御部４０１は、最初に結合の候補とする印刷ジョブを１つ選択する処理を行う（Ｓ９０５）。ここでは、印刷ジョブ７０１を選択したものとする。
【００７４】
次に、ジョブ制御部４０１は、まだ結合の候補として選択されていない印刷ジョブの中から、結合後の各処理の差が最小となる印刷ジョブを１つ選択する処理を行う（Ｓ９０６）。結合後の各処理の差が最も小さいとは、結合候補である印刷ジョブの画像補正部４１０の処理予測時間を合計し、結合候補である印刷ジョブのラスタライズ部４１１の処理予測時間を合計し、その差を計算する。次に、結合候補である印刷ジョブのラスタライズ部４１１の処理予測時間の合計と、印刷ジョブの面付け部４１２の処理予測時間の合計について、その差を求める。さらに、差として求められた２つの値について平均を計算し、その平均が最小となる印刷ジョブを決定する。例えば、印刷ジョブ７０２の場合は、画像補正部４１０でかかる時間はともに「１００」であり合計は「２００」となり、ラスタライズ部４１１でかかる時間はともに「３０」であり合計は「６０」となり、その差として「１４０」を得る。同様に、ラスタライズ部４１１でかかる時間はともに「３０」であり合計は「６０」となり、面付け部４１２でかかる時間はともに「３０」であり合計「６０」となり、その差として「０」を得る。さらに差として得られた２つの値「１４０」と「０」から平均として「７０」を得る。次に、印刷ジョブ７０３の場合は、画像補正部４１０でかかる時間は「１００」と「１０」であり合計は「１１０」となり、ラスタライズ部４１１でかかる時間は「３０」「８０」であり合計は「１１０」となり、その差として「０」を得る。同様に、ラスタライズ部４１１でかかる時間はともに「３０」であり合計は「６０」となり、面付け部４１２でかかる時間はともに「３０」であり合計「６０」となり、その差として「０」を得る。さらに差として得られた２つの値「０」と「０」から平均として「０」を得る。印刷ジョブ７０１と印刷ジョブ７０２の結果から「７０」が得られ、印刷ジョブ７０１と印刷ジョブ７０３の結果から「０」が得られたことで、より小さい値である印刷ジョブ７０３が候補となる。ところで、印刷ジョブ７０４の場合は、印刷ジョブ７０３の場合と同様の結果であるため、ここでは説明を省略する。
【００７５】
次に、ジョブ制御部４０１は、印刷ジョブを結合して同時に実行させた場合の終了時間を計算する処理を行う（Ｓ９０７）。
【００７６】
図１０は、印刷ジョブ７０１−７０４の画像処理について、処理予測時間の通りに実施された場合の一例を示している。より具体的には、印刷ジョブ７０１と印刷ジョブ７０３を結合して各処理が実行され、印刷ジョブ７０２と印刷ジョブ７０４は結合されずに各処理が実行された場合における実行状況を示している。
【００７７】
ジョブ制御部４０１から画像処理の開始が指示されると、画像補正部４１０は、印刷ジョブ７０１の１ページ目の画像補正処理（Ｓ１００１）に続き、印刷ジョブ７０３の１ページ目の画像補正処理（Ｓ１００２）を行う。
【００７８】
印刷ジョブ７０１と印刷ジョブ７０３の１ページ目の画像補正処理が終わると、ラスタライズ部４１１は、印刷ジョブ７０１の１ページ目のラスタライズ処理（Ｓ１００３）に続き、印刷ジョブ７０３の１ページ目のラスタライズ処理（Ｓ１００４）を行う。それとは別に、印刷ジョブ７０１と印刷ジョブ７０３の１ページ目の画像補正処理が終わると、画像補正部４１０は、印刷ジョブ７０１の２ページ目の画像補正処理（Ｓ１００５）に続き、印刷ジョブ７０３の２ページ目の画像補正処理（Ｓ１００６）を行う。
【００７９】
印刷ジョブ７０１と印刷ジョブ７０３の１ページ目のラスタライズ処理が終わると、面付け部４１２は、印刷ジョブ７０１の１ページ目の面付け処理（Ｓ１００７）に続き、印刷ジョブ７０３の１ページ目の面付け処理（Ｓ１００８）を行う。それとは別に、印刷ジョブ７０１と印刷ジョブ７０３の１ページ目のラスタライズ処理が終わると、ラスタライズ部４１１は、印刷ジョブ７０１と印刷ジョブ７０３の２ページ目のラスタライズ処理（Ｓ１００９、Ｓ１０１０）を行う。
【００８０】
印刷ジョブ７０１と印刷ジョブ７０３の２ページ目のラスタライズ処理が終わると、面付け部４１２は、印刷ジョブ７０１の２ページ目の面付け処理（Ｓ１０１１）に続き、印刷ジョブ７０３の２ページ目の面付け処理（Ｓ１０１２）を行う。
【００８１】
画像処理予測テーブル４０７、及び印刷設定ファイル４０９より、印刷ジョブ７０１は、画像補正処理に「１００」、ラスタライズ処理に「３０」、面付け処理に「３０」の時間がかかる。同様に、印刷ジョブ７０３は、画像補正処理に「１０」、ラスタライズ処理に「８０」、面付け処理に「３０」の時間がかかる。
【００８２】
印刷ジョブ７０１の１ページ目は、印刷ジョブ７０１と印刷ジョブ７０３の１ページ目の画像補正処理（Ｓ１００１、１００２）とラスタライズ処理（Ｓ１００３、Ｓ１００４）と面付け処理（Ｓ１００７）の和である「２５０」が終了時間となる。印刷ジョブ７０３の１ページ目は、印刷ジョブ７０１の１ページ目の終了時間と、面付け処理（Ｓ１００８）の和である「２８０」が終了時間となる。同様の考え方で、印刷ジョブ７０１と印刷ジョブ７０３の２ページ目は、それぞれ「３６０」と「３９０」が終了時間となる。
【００８３】
印刷ジョブ７０３の２ページ目の画像補正処理（Ｓ１００６）が終わると、画像補正部４１０は、続いて印刷ジョブ７０２の１ページ目の画像補正処理（Ｓ１０１３）を行う。印刷ジョブ７０２の１ページ目の画像補正処理が終わると、画像補正部４１０は、続いて印刷ジョブ７０２の２ページ目の画像補正処理（Ｓ１０１４）を行う。一方、印刷ジョブ７０２の１ページ目は、印刷ジョブ７０３の２ページ目のラスタライズ処理（Ｓ１０１０）が終わるのを待ってから、ラスタライズ部４１１によってラスタライズ処理（Ｓ１０１５）される。このように処理を待つ必要があるのは、印刷ジョブ７０２の画像補正処理よりもその処理と同じタイミングで開始された印刷ジョブ７０１と印刷ジョブ７０３の２ページ目のラスタライズ処理（Ｓ１００９、Ｓ１０１０）に時間がかかるためである。具体的には、印刷ジョブ７０２の画像補正処理にかかる時間は「１００」であるのに対して、印刷ジョブ７０１と印刷ジョブ７０３の２ページ目のラスタライズ処理に合計で「１１０」の処理がかかり、「１０」だけ待つ必要がある。印刷ジョブ７０２の１ページ目のラスタライズ処理（Ｓ１０１５）が終わると、印刷ジョブ７０２の１ページ目は、印刷ジョブ７０３の２ページ目の面付け処理（Ｓ１０１２）が終わるのを待ってから、面付け部４１２によって面付け処理（Ｓ１０１６）される。このように処理を待つ必要があるのは、印刷ジョブ７０２のラスタライズ処理よりもその処理と同じタイミングで開始された印刷ジョブ７０１と印刷ジョブ７０３の２ページ目の面付け処理（Ｓ１０１１、Ｓ１０１２）に時間がかかるためである。具体的には、印刷ジョブ７０２のラスタライズ処理にかかる時間は「３０」であるのに対して、印刷ジョブ７０１と印刷ジョブ７０３の２ページ目の面付け処理に合計で「６０」の処理がかかり、「３０」だけ待つ必要がある。結果として、印刷ジョブ７０２の１ページ目は、印刷ジョブ７０３の２ページ目の終了時間と、面付け処理（Ｓ１０１６）の和である「４２０」が終了時間となる。印刷ジョブ７０２の１ページ目の面付け処理（Ｓ１０１６）が終わるタイミングは、印刷ジョブ７０２の２ページ目の画像補正処理（Ｓ１０１４）が終わるタイミングと同じである。そのため、印刷ジョブ７０２の２ページ目は、印刷ジョブ７０２の１ページ目の終了時間と、ラスタライズ処理と面付け処理（Ｓ１０１７）の和である「４８０」が終了時間となる。さらに、印刷ジョブ７０４の１ページ目と２ページ目の終了時間は、それぞれ「５６０」及び「６４０」となる。終了時間は、印刷ジョブ７０１と印刷ジョブ７０３を結合しない場合「７８０」なのに対し、印刷ジョブ７０１と印刷ジョブ７０３を結合する場合「６４０」となる。
【００８４】
このようにして、処理予測時間の通りに画像処理された場合をもとに、結合した場合の終了時間について計算する。
【００８５】
次に、ジョブ制御部４０１は、印刷ジョブを結合しない場合と結合する場合で終了時間が結合後の方が同じか早くなるかを判断する処理を行う（Ｓ９０８）。
【００８６】
例えば、印刷ジョブ７０１と印刷ジョブ７０３を結合した場合、ジョブ制御部４０１は、図８の結果より結合前が「７８０」であるのに対し、図１０の結果より場合後が「６４０」となり、終了時間が短くなると判断する。
【００８７】
Ｓ９０８において、同じか早くなると判断されると（Ｓ９０８でＹＥＳ）、ジョブ制御部４０１は、Ｓ９０７で候補となった印刷ジョブを確定して、処理対象の印刷ジョブと確定された印刷ジョブを結合して実施するようにスケジュールを確定する（Ｓ９０９）。ここでは、印刷ジョブ７０１と印刷ジョブ７０３を結合して処理するようにスケジュールが確定される。なお、実際に印刷ジョブ７０１と印刷ジョブ７０３を結合して新たな１つの結合ジョブが生成されても良い。または、新たな１つの結合ジョブを生成せずに、単に印刷ジョブ７０１と印刷ジョブ７０３はスケジュール用に結合されるのみでも良い。
【００８８】
Ｓ９０８において、遅くなってしまうと判断されると（Ｓ９０８でＮＯ）、全ての印刷ジョブに対して、結合可能かを判断する処理を行う（Ｓ９１０）。つまり、Ｓ９０８にてＮｏと判定されることにより、ジョブ制御部４０１は、複数の印刷ジョブを個別に処理する第１処理パターンにて複数の印刷ジョブを処理すると決定する。一方、Ｓ９０８にてＹｅｓと判定された場合、ジョブ制御部４０１は、複数の印刷ジョブを結合して処理する第２処理パターンにて複数の印刷ジョブを処理すると決定する。
【００８９】
Ｓ９１０において、全ての印刷ジョブを確認していないと判断されると（Ｓ９１０でＮＯ）、ジョブ制御部４０１は、まだスケジュールが確定されていない印刷ジョブを結合対象の候補として１つ選択する（Ｓ９１１）。
【００９０】
ここで、Ｓ９１１にて、印刷ジョブ７０２が結合対象の候補として選択されて、Ｓ９０６に戻って、結合対象として印刷ジョブ７０４が選択されたものとして、Ｓ９０７の終了時間の計算及びＳ９０８の判断について、図１１を用いて説明する。
【００９１】
図１１は、印刷ジョブ７０１と印刷ジョブ７０３が結合され、かつ、印刷ジョブ７０２と印刷ジョブ７０４が結合された場合の処理予測時間の通りに実施された場合の一例である。印刷ジョブ７０１と印刷ジョブ７０３の処理は、図１０と同じであるため説明を省略する。
【００９２】
印刷ジョブ７０３の２ページ目の画像補正処理が終わると、画像補正部４１０は、印刷ジョブ７０２の１ページ目の画像補正処理（Ｓ１１０１）に続き、印刷ジョブ７０４の１ページの画像補正処理（Ｓ１１０２）を行う。印刷ジョブ７０２と印刷ジョブ７０４の１ページ目の画像補正処理が終わると、ラスタライズ部４１１は、印刷ジョブ７０２の１ページ目のラスタライズ処理（Ｓ１１０３）に続き、印刷ジョブ７０４の１ページ目のラスタライズ処理（Ｓ１１０４）を行う。それとは別に、印刷ジョブ７０２と印刷ジョブ７０４の１ページ目の画像補正処理が終わると、画像補正部４１０は、印刷ジョブ７０２の２ページ目の画像補正処理（Ｓ１１０５）に続き、印刷ジョブ７０４の２ページの画像補正処理（Ｓ１１０６）を行う。印刷ジョブ７０２と印刷ジョブ７０４の１ページ目のラスタライズ処理が終わると、面付け部４１２は、印刷ジョブ７０２の１ページ目の面付け処理（Ｓ１１０７）に続き、印刷ジョブ７０４の１ページ目の面付け処理（Ｓ１１０８）を行う。それとは別に、印刷ジョブ７０２と印刷ジョブ７０４の２ページ目の画像補正処理が終わると、ラスタライズ部４１１は、印刷ジョブ７０２と印刷ジョブ７０４の２ページ目のラスタライズ処理（Ｓ１１０９、Ｓ１１１０）を行う。印刷ジョブ７０２と印刷ジョブ７０４の２ページ目のラスタライズ処理が終わると、面付け部４１２は、印刷ジョブ７０２の２ページ目の面付け処理（Ｓ１１１１）に続き、印刷ジョブ７０４の２ページ目の面付け処理（Ｓ１１１２）を行う。
【００９３】
図１１の結果より、印刷ジョブ７０２の１ページ目の面付け処理（Ｓ１１０４）の開始時間は、印刷ジョブ７０４の画像補正処理（Ｓ１１０６）の終了時間と同じと予測できる。また、印刷ジョブ７０１−７０４の画像補正処理は、待ち時間なく実施されている。そのため、印刷ジョブ７０４の画像補正処理（Ｓ１１０６）の終了時間は、印刷ジョブ７０１、７０２の画像補正処理の予測時間「１００」と、印刷ジョブ７０３、７０４の画像補正処理の予測時間「１０」の和となり、「４４０」となる。つまり、印刷ジョブ７０２の１ページ目の面付け処理（Ｓ１１０４）の開始時間は、「４４０」となる。印刷ジョブ７０２の面付け処理にかかる時間は「３０」であるため、印刷ジョブ７０２の１ページ目の終了時間は、両者の和である「４７０」となる。印刷ジョブ７０４の１ページ目の終了時間は、印刷ジョブ７０２の１ページ目の終了時間に加え、印刷ジョブ７０４の１ページ目の面付け処理にかかる時間となり、「４７０」に「３０」を加えた「５００」となる。印刷ジョブ７０２の２ページ目の面付け処理（Ｓ１１１１）の開始時間は、印刷ジョブ７０４の２ページ目のラスタライズ処理（Ｓ１１１０）の終了時間と同じと予測できる。印刷ジョブ７０４の２ページ目のラスタライズ処理（Ｓ１１１０）は、印刷ジョブ７０４の画像補正処理（Ｓ１１０６）の終了時間「４４０」と、印刷ジョブ７０２及び印刷ジョブ７０４のラスタライズ処理にかかる時間「１１０」の和となり、「５５０」となる。つまり、印刷ジョブ７０２の２ページ目の面付け処理（Ｓ１１１１）の開始時間は、「５５０」となる。印刷ジョブ７０２の面付け処理にかかる時間は「３０」であるため、印刷ジョブ７０２の２ページ目の終了時間は、両者の和である「５８０」となる。印刷ジョブ７０４の２ページ目の終了時間は、印刷ジョブ７０２の２ページ目の終了時間に加え、印刷ジョブ７０４の２ページ目の面付け処理にかかる時間となり、「５８０」に「３０」を加えた「６１０」となる。
【００９４】
印刷ジョブ７０１と印刷ジョブ７０３を結合し、印刷ジョブ７０２と印刷ジョブ７０４を結合した場合、ジョブ制御部４０１は、図１１の結果より場合後が「６１０」となり、結合前の「６４０」と比較し、終了時間が短くなると判断する。
【００９５】
Ｓ９１０において、全ての印刷ジョブを確認したと判断されると（Ｓ９１０でＹＥＳ）、不必要に待っている面付け処理の開始を再スケジュールする処理を行うと（Ｓ９１２）、処理を終了する。
【００９６】
図１２は、図１１に対して面付け処理の開始を再スケジュールした例を示している。図１１では、結合した印刷ジョブにおいて、ラスタライズ処理が終わってから面付け処理をしていたが、１つでもラスタライズ処理が終わっていたら面付け処理の開始は可能である。印刷ジョブ７０１の１ページ目のラスタライズ処理（Ｓ１２０１）が終わるとすぐに面付け処理（Ｓ１２０２）が開始されるように再スケジュールを行う。以降も同様の考え方で再スケジュールすることが可能である。印刷ジョブ７０３の１ページ目のラスタライズ処理（Ｓ１２０３）が終わるとすぐに面付け処理（Ｓ１２０４）が開始されるように再スケジュールする。印刷ジョブ７０１の２ページ目のラスタライズ処理（Ｓ１２０５）が終わるとすぐに面付け処理（Ｓ１２０６）が開始されるように再スケジュールする。印刷ジョブ７０３の２ページ目のラスタライズ処理（Ｓ１２０７）が終わるとすぐに面付け処理（Ｓ１２０８）が開始されるように再スケジュールする。印刷ジョブ７０２の１ページ目のラスタライズ処理（Ｓ１２０９）が終わるとすぐに面付け処理（Ｓ１２１０）が開始されるように再スケジュールする。印刷ジョブ７０４の１ページ目のラスタライズ処理（Ｓ１２１１）が終わるとすぐに面付け処理（Ｓ１２１２）が開始されるように再スケジュールする。印刷ジョブ７０２の２ページ目のラスタライズ処理（Ｓ１２１３）が終わるとすぐに面付け処理（Ｓ１２１４）が開始されるように再スケジュールする。印刷ジョブ７０４の２ページ目のラスタライズ処理（Ｓ１２１５）が終わるとすぐに面付け処理（Ｓ１２１６）が開始されるように再スケジュールする。このように、再スケジュールすることで、全体的に終了時間は短くなる。例えば、印刷ジョブ７０４の２ページ目の終了時間は、再スケジュール前が「６１０」であったのに対して、印刷ジョブ７０２の２ページ目の面付け処理の分だけ早くなり、「５８０」となる。
【００９７】
以上のように、画像処理がパイプライン的に処理される場合、画像処理時間が短縮化されるジョブスケジューリングを行う。ジョブスケジューリングを行った後で、画像処理を行うことで、パイプライン処理で発生する待ち時間を減らし、より高速な画像処理を実現する。
【００９８】
（実施形態２）
本実施形態では、ジョブスケジューリングに要する時間を考慮する。なお、実施形態１と同様の構成については、説明を省略する。
【００９９】
図１３を用いて、図１に示す印刷装置１００における処理の流れの一例について説明する。図１３は、印刷ジョブを受信して画像処理を開始する前までに行われる印刷ジョブ実行順序を決定するまでのジョブスケジューリングの流れを示すフローチャートである。
【０１００】
ジョブスケジューリング処理は、ＵＩ制御部４０６によって、ユーザから画像処理の開始が指示されると開始する。
【０１０１】
なお、Ｓ１３０１−Ｓ１３０４は、Ｓ９０１−Ｓ９０４と同様の処理であるため、詳細な説明は省略する。次に、ジョブ制御部４０１は、Ｓ１３０３より処理開始が待たされている場合、その待ち時間を計算する（Ｓ１３０５）。
【０１０２】
次に、ジョブ制御部４０１は、Ｓ１３０５の待ち時間を元に、印刷ジョブの結合を伴った再スケジュール処理自体に費やすことが可能な最適化可能時間を決定する処理を行う（Ｓ１３０６）。最適化可能時間とは、より具体的には、本処理そのものである。なお、最適化可能時間の元になるＳ１３０５の待ち時間とは、再スケジューリング処理が開始された時点から、再スケジューリング対象の印刷ジョブの処理が開始されるまでの時間である。例えば、印刷ジョブ７０１−７０４が現時点から「１００」後に処理が開始される場合、再スケジューリング処理自体に費やすことが可能な最適化可能時間は「１００」となる。またはＵＩ制御部４０６によって、ユーザから画像処理の開始が指示される際に、最適化可能時間を設定してもよいし、予め用意された設定ファイルに従ってもよい。つまり、設定ファイルに待ち時間が記述されていても良い。
【０１０３】
また、Ｓ１３０７−Ｓ１３１２は、Ｓ９０５−Ｓ９１０と同様の処理であるため詳細な説明は省略する。
【０１０４】
Ｓ１３１２において、全ての印刷ジョブを確認していないと判断されると（Ｓ１３１２でＮＯ）、ジョブ制御部４０１は、今までに再スケジュールのために費やした時間を計算する処理を行う（Ｓ１３１３）。
【０１０５】
次に、ジョブ制御部４０１は、Ｓ１３１３で計算した再スケジュールに費やした時間がＳ１３０５で計算した最適化可能時間の範囲内であるかを判断する処理を行う（Ｓ１３１４）。つまり、Ｓ１３１４の処理により、再スケジュールの決定処理のための経過時間が所定の時間を超えた後において個別に処理するか結合して処理するかが決定されなかった印刷ジョブは個別に処理される。
【０１０６】
Ｓ１３１４において、範囲内であると判断されると（Ｓ１３１４でＹＥＳ）、ジョブ制御部４０１は、まだスケジュールが確定されていない印刷ジョブを結合対象の候補として１つ選択する処理を行う（Ｓ１３１５）。
【０１０７】
Ｓ１３１２において、全ての印刷ジョブを確認したと判断されると（Ｓ１３１２でＹＥＳ）、不必要に待っている面付け処理の開始を再スケジュールする処理を行い（Ｓ１３１６）、処理を終了する。Ｓ１３１４において、範囲外であると判断された場合も（Ｓ１３１４でＹＥＳ）、ジョブ制御部４０１は、Ｓ１３１６の処理を行う。
【０１０８】
印刷ジョブ７０１−７０４において、例えば、印刷ジョブ７０１と印刷ジョブ７０３を結合した後で範囲外となった場合は（Ｓ１３１４でＮＯ）、印刷ジョブ７０２と印刷ジョブ７０４の結合は行わず、スケジューリング処理は終了することになる。
【０１０９】
ここで、図１４を用いて、印刷ジョブ７０１−７０４の画像処理について、ジョブスケジューリングに要する時間を加えた上で、処理予測時間の通りに実施された場合の一例を示している。
【０１１０】
画像処理の開始が指示されると、ジョブ制御部４０１は、ジョブスケジューリングをする処理を行う（Ｓ１４０１）。ここでは、印刷ジョブ７０１と印刷ジョブ７０３を結合した後のＳ１３１４で範囲外と判断されたものとして説明する。また、Ｓ１３１６の面付け処理の再スケジュールも行っている。画像補正部４１０は、印刷ジョブ７０１の１ページ目の画像補正処理（Ｓ１４０２）に続き、印刷ジョブ７０３の１ページ目の画像補正処理（Ｓ１４０３）を行う。
【０１１１】
印刷ジョブ７０１と印刷ジョブ７０３の１ページ目の画像補正処理が終わると、ラスタライズ部４１１は、印刷ジョブ７０１の１ページ目のラスタライズ処理（Ｓ１４０４）に続き、印刷ジョブ７０３の１ページ目のラスタライズ処理（Ｓ１４０５）を行う。それとは別に、印刷ジョブ７０１と印刷ジョブ７０３の１ページ目の画像補正処理が終わると、画像補正部４１０は、印刷ジョブ７０１の２ページ目の画像補正処理（Ｓ１４０６）に続き、印刷ジョブ７０３の２ページの画像補正処理（Ｓ１４０７）を行う。
【０１１２】
印刷ジョブ７０１の１ページ目のラスタライズ処理が終わると、面付け部４１２は、印刷ジョブ７０１の１ページ目の面付け処理（Ｓ１４０８）を行う。印刷ジョブ７０３の１ページ目のラスタライズ処理が終わると、面付け部４１２は、印刷ジョブ７０３の１ページ目の面付け処理（Ｓ１４０９）を行う。それとは別に、印刷ジョブ７０３の１ページ目のラスタライズ処理が終わると、ラスタライズ部４１１は、印刷ジョブ７０１の２ページ目のラスタライズ処理（Ｓ１４１０）に続き、印刷ジョブ７０３の２ページのラスタライズ処理（Ｓ１４１１）を行う。
【０１１３】
印刷ジョブ７０１の２ページ目のラスタライズ処理が終わると、面付け部４１２は、印刷ジョブ７０１の２ページ目の面付け処理（Ｓ１４１２）を行う。印刷ジョブ７０３の２ページ目のラスタライズ処理が終わると、面付け部４１２は、印刷ジョブ７０３の２ページ目の面付け処理（Ｓ１４１３）を行う。
【０１１４】
画像処理予測テーブル４０７、及び印刷設定ファイル４０９より、印刷ジョブ７０１は、画像補正処理に「１００」、ラスタライズ処理に「３０」、面付け処理に「３０」の時間がかかる。同様に、印刷ジョブ７０３は、画像補正処理に「１０」、ラスタライズ処理に「８０」、面付け処理に「３０」の時間がかかる。また、ジョブスケジューリングに「１０」かかったとする。
【０１１５】
印刷ジョブ７０１の１ページ目は、ジョブスケジューリング処理（Ｓ１４０１）、印刷ジョブ７０１と印刷ジョブ７０３の１ページ目の画像補正処理とラスタライズ処理（Ｓ１４０４）と面付け処理（Ｓ１４０８）の和である「１８０」が終了時間となる。印刷ジョブ７０３の１ページ目は、ジョブスケジューリング処理（Ｓ１４０１）、印刷ジョブ７０１と印刷ジョブ７０３の１ページ目の画像補正処理（Ｓ１４０２、１４０３）とラスタライズ処理（Ｓ１４０４、Ｓ１４０５）、面付け処理（Ｓ１４０９）の和となる。結果として、印刷ジョブ７０３の１ページ目は、「２６０」が終了時間となる。
【０１１６】
印刷ジョブ７０３の２ページ目の画像補正処理（Ｓ１４０７）が終わると、画像補正部４１０は、続いて印刷ジョブ７０２の１ページ目の画像補正処理（Ｓ１４１４）を行う。印刷ジョブ７０２の１ページ目の画像補正処理が終わると、画像補正部４１０は、続いて印刷ジョブ７０２の２ページ目の画像補正処理（Ｓ１４１５）を行う。一方、印刷ジョブ７０２の１ページ目は、印刷ジョブ７０３の２ページ目のラスタライズ処理（Ｓ１４１１）が終わるのを待ってから、ラスタライズ部４１１によってラスタライズ処理（Ｓ１４１６）される。このように処理を待つ必要があるのは、印刷ジョブ７０２の画像補正処理よりもその処理と同じタイミングで開始された印刷ジョブ７０１と印刷ジョブ７０３の２ページ目のラスタライズ処理（Ｓ１４１０、Ｓ１４１１）に時間がかかるためである。具体的には、印刷ジョブ７０２の画像補正処理にかかる時間は「１００」であるのに対して、印刷ジョブ７０１と印刷ジョブ７０３の２ページ目のラスタライズ処理に合計で「１１０」の処理がかかり、「１０」だけ待つ必要がある。印刷ジョブ７０２の１ページ目のラスタライズ処理（Ｓ１４１６）が終わると、面付け部４１２は、印刷ジョブ７０２の１ページ目の面付け処理（Ｓ１４１７）を行う。印刷ジョブ７０２の１ページ目は、ジョブスケジューリング処理（Ｓ１４０１）、印刷ジョブ７０１と印刷ジョブ７０３の画像補正処理にかかる時間と、ラスタライズ処理の待ち時間を含めた印刷ジョブ７０２の処理時間の和が終了時間となる。ジョブスケジューリング処理（Ｓ１４０１）と印刷ジョブ７０１と印刷ジョブ７０３の画像補正処理にかかる時間は、「２３０」となる。印刷ジョブ７０２の１ページ目の処理にかかる時間は「１６０」であるが、それにラスタライズ開始にかかる待ち時間「１０」を加え、「１７０」となる。結果として、印刷ジョブ７０２の１ページ目は、「４００」が終了時間となる。
【０１１７】
以上のように、画像処理がパイプライン的に処理される場合、前もって印刷ジョブ同士を結合させるジョブスケジューリングを行う。ジョブスケジューリングを行った後で、画像処理を行うことで、パイプライン処理で発生する待ち時間を減らし、より高速な画像処理を実現する。
【０１１８】
本実施形態では、ジョブスケジューリングに費やす時間を考慮するようにする。これにより、再スケジュールにするにかかる時間を必要以上に費やすことなく、画像処理の高速化を実現することができる。
【０１１９】
なお、本願における結合は、実際に複数の印刷ジョブを結合することで１つの印刷ジョブにすることを指しても良い。その場合、複数の印刷ジョブを結合することで１つの印刷ジョブを生成するため、例えば、処理履歴には１つの印刷ジョブとして表示される。一方、本願における結合は、複数の印刷ジョブをまとめて処理するのみで処理結果としては複数の印刷ジョブのまま取り扱われることを指しても良い。その場合、複数の印刷ジョブはスケジュール上で単にまとめて処理されるのみであるため、例えば、処理履歴には複数の印刷ジョブとして表示される。
【０１２０】
（実施形態３）
図１５は、図８において５番目に処理される予定であった印刷ジョブ７０３を２番目に処理することで処理の効率化を図ることを示す図である。よって、図１５では、単に印刷ページの順序を変更することで処理の効率化を図ることができるともいえる。ここでは、図１５を用いてページの順序を変更することで処理の効率化が図れることを説明する。
【０１２１】
図１５は、印刷ジョブ７０１−７０４の画像処理について、処理予測時間の通りに実施された場合の一例を示している。より具体的には、印刷ジョブ７０３の各ページの処理順序を繰り上げた場合における実行状況を示している。ジョブ制御部４０１から画像処理の開始が指示されると、画像補正部４１０は、印刷ジョブ７０１の１ページ目の画像補正処理（Ｓ１５０１）に続き、印刷ジョブ７０３の１ページ目の画像補正処理（Ｓ１５０２）を行うために処理順序を変更する。なお、本実施例では印刷ジョブをまとめていないので、印刷ジョブ７０１の１ページ目の画像補正処理が終わると、ラスタライズ部４１１は、印刷ジョブ７０１の１ページ目のラスタライズ処理（Ｓ１５０３）、面付け処理（Ｓ１５０７）を実行する。
【０１２２】
一方、印刷ジョブ７０３の１ページ目の画像補正処理が終わると、ラスタライズ部４１１は、印刷ジョブ７０３の１ページ目のラスタライズ処理（Ｓ１５０４）、面付け処理（Ｓ１５０８）を実行する。それとは別に、印刷ジョブ７０３の１ページ目の画像補正処理が終わると、画像補正部４１０は、印刷ジョブ７０１の２ページ目の画像補正処理（Ｓ１５０５）に続き、印刷ジョブ７０３の２ページ目の画像補正処理（Ｓ１５０６）を行う。印刷ジョブ７０１と印刷ジョブ７０３の２ページ目も１ページ目と同様の手順でラスタライズ処理、面付け処理が実行される（Ｓ１５０９〜Ｓ１５１２）。以降、印刷ジョブ７０２、７０４も順次処理が実行される。
【０１２３】
図１５のように単に順番を変えるのみで、結合せずに処理の効率化を図っても良い。
【０１２４】
また、本願では、記録ヘッド等を備えた画像処理装置における処理として説明したが、画像処理装置と通信可能に接続された情報処理装置（ＰＣ等）において本願のスケジューリング処理を実行しても良い。
【０１２５】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１２６】
４０１  ジョブ制御部
【図１】
2016107569.tif 000003
【図２】
2016107569.tif 000004
【図３】
2016107569.tif 000005
【図４】
2016107569.tif 000006
【図５】
2016107569.tif 000007
【図６】
2016107569.tif 000008
【図７】
2016107569.tif 000009
【図８】
2016107569.tif 000010
【図９】
2016107569.tif 000011
【図１０】
2016107569.tif 000012
【図１１】
2016107569.tif 000013
【図１２】
2016107569.tif 000014
【図１３】
2016107569.tif 000015
【図１４】
2016107569.tif 000016
【図１５】
2016107569.tif 000017