(57)【要約】【課題】  本発明は、印刷解像度に非依存な画像データからビットマップ画像への変換に要する処理時間を予測するに必要な情報を、ネットワーク接続された多種多様のデバイス同士で柔軟に扱える画像処理システムを実現することを目的とする。【解決手段】  ドキュメント生成時に、画像データをビットマップ画像へ変換するために必要な処理量を指数として算出し、算出した処理量指数を画像データの付加情報として関連づけて保持する。ドキュメント印刷時に、自装置の処理能力指数と処理量指数を用いて画像データの変換に要する処理時間を算出する。【選択図】  図１３
2008186253.tif 000002
【特許請求の範囲】
【請求項１】
印刷解像度に非依存な画像データの内容を解析して、前記画像データをビットマップ画像へ変換するために必要な処理量を指数として算出する処理量指数算出手段と、
前記算出した処理量指数を前記画像データの付加情報として関連づけて保持する保持手段と、
前記画像データと前記付加情報とを送信する送信手段と、
を有することを特徴とする画像処理装置。
【請求項２】
さらに、前記印刷解像度に非依存な画像データを生成する画像データ生成手段を有することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記印刷解像度に非依存な画像データはビットマップ画像から生成されることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記印刷解像度に非依存な画像データはページ記述データから生成されることを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記付加情報として印刷ページ数を含むことを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記処理量指数算出手段は、画像データに含まれる描画オブジェクトの種別に応じて前記処理量指数を算出することを特徴とする請求項１に記載の画像処理システム。
【請求項７】
前記処理量指数算出手段は、画像データのページ毎に前記処理量指数を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項８】
印刷解像度に非依存な画像データをビットマップ画像へ変換する画像処理手段と、
前記画像データからビットマップ画像へ変換する自装置の処理能力を指数として保持する処理能力指数保持手段と、
前記画像データに付加情報として関連づけられた処理量指数を読み出す付加情報解析手段と、
前記処理能力指数保持手段に保持される処理能力指数と、前記付加情報解析手段により解析された処理量指数を用いて、前記画像データの変換に要する処理時間を算出する画像処理時間予測手段と
を有することを特徴とする画像処理装置。
【請求項９】
前記画像処理時間予測手段によって算出した予測時間を表示することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
さらに、前記画像処理手段により変換されたビットマップ画像を物理メディア上に画像形成する画像形成手段と、
前記付加情報に含まれる画像データの印刷ページ数と、前記画像形成手段の印刷速度を用いて画像形成に要する時間を予測する画像形成時間予測手段を備えることを特徴とする請求項８に記載の画像処理装置。
【請求項１１】
前記画像形成時間予測手段で算出した予測時間を表示することを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
印刷解像度に非依存な画像データの内容を解析して、前記画像データをビットマップ画像へ変換するために必要な処理量を指数として算出する処理量指数算出手段と、前記算出した処理量指数を前記画像データの付加情報として関連づけて保持する保持手段と、前記画像データと前記付加情報とを送信する送信手段とを有する第１の画像処理装置と、
前記印刷解像度に非依存な画像データをビットマップ画像に変換する画像処理手段と、前記画像データからビットマップ画像へ変換する自装置の処理能力を指数として保持する処理能力指数保持手段と、前記画像データに付加情報として関連づけられた処理量指数を読み出す付加情報解析手段と、前記処理能力指数保持手段に保持される処理能力指数と、前記付加情報解析手段により解析された処理量指数を用いて、前記画像データの変換に要する処理時間を算出する画像処理時間予測手段とを有する第２の画像処理装置と
を含むことを特徴とする画像処理システム。
【請求項１３】
印刷解像度に非依存な画像データの内容を解析して、前記画像データをビットマップ画像へ変換するために必要な処理量を指数として算出する処理量指数算出工程と、
前記算出した処理量指数を前記画像データの付加情報として関連づけて保持する保持工程と、
前記画像データと前記付加情報とを送信する送信工程と、
を有することを特徴とする画像処理方法。
【請求項１４】
印刷解像度に非依存な画像データをビットマップ画像へ変換する画像処理工程と、
前記画像データからビットマップ画像へ変換する自装置の処理能力を指数として保持する処理能力指数保持工程と、
前記画像データに付加情報として関連づけられた処理量指数を読み出す付加情報解析工程と、
前記処理能力指数保持工程にて保持される処理能力指数と、前記付加情報解析工程により解析された処理量指数を用いて、前記画像データの変換に要する処理時間を算出する画像処理時間予測工程と
を有することを特徴とする画像処理方法。
【請求項１５】
印刷解像度に非依存な画像データの内容を解析して、前記画像データをビットマップ画像へ変換するために必要な処理量を指数として算出する処理量指数算出工程と、
前記算出した処理量指数を前記画像データの付加情報として関連づけて保持する保持工程と、
前記画像データと前記付加情報とを送信する送信工程と、
を有することを特徴とする画像処理方法をコンピュータに実行させるためのプログラム。
【請求項１６】
印刷解像度に非依存な画像データをビットマップ画像へ変換する画像処理工程と、
前記画像データからビットマップ画像へ変換する自装置の処理能力を指数として保持する処理能力指数保持工程と、
前記画像データに付加情報として関連づけられた処理量指数を読み出す付加情報解析工程と、
前記処理能力指数保持工程にて保持される処理能力指数と、前記付加情報解析工程により解析された処理量指数を用いて、前記画像データの変換に要する処理時間を算出する画像処理時間予測工程と
を有することを特徴とする画像処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置がプリントデータの印刷処理に要する時間の予測を行なう画像処理システムとその制御方法に関する。
【背景技術】
【０００２】
ネットワーク接続した多数の画像処理装置（プリンタ、スキャナ、デジタル複写機、ＦＡＸ装置など）を接続し、連携させることでより高度な機能、より高い生産性を実現することが望まれている。そのための画像データとして、画像処理装置間で送信する画像を、印刷解像度に依存しない画像データ形式（以後、ベクタデータと称する）とする技術が開発されている。ベクタデータを受信した画像処理装置ではそれをビットマップイメージに変換（ラスタライズ）するため、解像度変換による画像劣化も発生しない。そのため各々の画像処理装置に最適なビットマップイメージを生成することで、高品位な画像を得ることが可能であり、能力が異なる各種のデバイスを相互に連携させる技術として重要である。さらに、ベクタライズされた画像データ部分にくわえて、印刷対象外の各種情報を関連付けして、処理のヒントにしたり画像検索を行なう技術も開発されている。
【０００３】
また、画像入力機器から入力した画像を画像出力機器内の二次記憶装置にファイルとして保存しておけば、ユーザが好きな時間に取り出して繰り返し出力することができる。このように再利用を目的として画像出力装置の二次記憶装置に入力データをファイル形式で保存する機能をボックス機能、ファイルシステムをボックスと呼ぶ。ボックス機能を用いると、格納された画像データを再度印刷したり、能力の異なるほかの画像処理装置に配信するなど、一度生成した画像データを繰り返し再利用することも可能である。
【０００４】
ところで、このような画像処理装置で処理中のジョブの終了時間が正確に予想できるとユーザにとって有用である。そのため、終了予測時間を表示可能なユーザインターフェイスを備えたデジタル複写機や、ホスト上のアプリケーションでジョブ終了予想時間をユーザに通知する技術が考案されている（例えば、特許文献１）。
【０００５】
ここで、デバイスでのプリント出力が完了するまでに要する時間は以下の２つの期間からなる。
（１）ベクタデータをラスタライズしてビットマップイメージ生成
（２）ビットマップイメージの全ページをプリンタエンジンに送信して画像形成
（２）の時間は、プリントページ数とプリンタエンジンの能力（印刷速度）から、正確な予測時間算出が可能である。一方、（１）の時間はデータ内容と、画像処理装置のラスタライズ能力によって大きく異なるため、（２）のように単純に算出することはできない。通常文字データ（テキスト領域）のほうが画像データよりもラスタライズ処理は軽く、また画像データでもそれを構成する描画オブジェクト数などで処理量が大きく異なる。画像処理装置の能力についても、ラスタライズ用の専用ハードウエアを備えている装置と、ソフト処理でラスタライズを行なう装置とでは大きく処理時間が異なる。また、ソフトでラスタライズを行なう場合でも、装置が具備するＣＰＵの処理能力、メモリ容量によって大きく処理時間が異なることになる。
【０００６】
そのため、例えば特許文献１においては、ページ記述データに含まれる描画オブジェクトの種類と、出力先画像処理装置の処理能力を考慮して処理予測時間を算出する技術が開示されている。この処理予測時間は、実際には印刷されない付加情報として、画像データに付加、あるいは画像データ生成側の装置で保持されるものである。よって一度画像データに関連付けて生成された処理予測時間は、同一の画像処理装置に出力する場合においては繰り返し利用可能なものである。また特許文献１では、受信側装置で処理時間を予測する方法だと、ページ記述データの内容を全て解析するまで予測時間を算出できず、予測時間が判るタイミングが遅かった、という従来の問題を解決している。
【特許文献１】特開２００１−２２５４４
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、特許文献１の技術では、（１）の算出のために予め出力先の画像処理装置の処理能力をデータ送信側で保持していることが必要であった。今後の画像処理装置間の連携では、ネットワーク接続された多種多様のデバイス同士でも画像の送受信や蓄積を柔軟に行なえることが望まれている。新たな画像処理装置を追加したり、オプション機能を追加あるいは取り外すと、その装置の能力情報も変化する。そのため多数の画像処理装置に画像を送信したり送信先を切替えたりする場合、毎回送信先デバイスの能力を収集する必要があるという問題があった（課題１）。
また、その能力情報を用いて、送信側が各送信先装置毎に処理予測時間を算出せねばならず、送信先が増えると送信側の処理負荷が増大するという問題があった（課題２）。
【０００８】
さらに、ボックスに保存された画像データを再利用する場合、ここで付加情報として処理予測時間が含まれていた場合にも、使いまわすことが出来ないという問題があった（課題３）。
【０００９】
本発明は従来技術における上記課題を解決するためになされたものであり、従来技術の利点を維持したうえで、予測時間情報の効率的な算出と再利用を実現することを目的とする。
【課題を解決するための手段】
【００１０】
前記課題を解決するために、本発明の画像処理装置は、印刷解像度に非依存な画像データの内容を解析して、前記画像データをビットマップ画像へ変換するために必要な処理量を指数として算出する処理量指数算出手段と、前記算出した処理量指数を前記画像データの付加情報として関連づけて保持する保持手段と、前記画像データと前記付加情報とを送信する送信手段と、を有することを特徴とする。
【００１１】
または、印刷解像度に非依存な画像データをビットマップ画像へ変換する画像処理手段と、前記画像データからビットマップ画像へ変換する自装置の処理能力を指数として保持する処理能力指数保持手段と、前記画像データに付加情報として関連づけられた処理量指数を読み出す付加情報解析手段と、前記処理能力指数保持手段に保持される処理能力指数と、前記付加情報解析手段により解析された処理量指数を用いて、前記画像データの変換に要する処理時間を算出する画像処理時間予測手段とを有することを特徴とする。
【００１２】
また、本発明の画像処理システムは、印刷解像度に非依存な画像データの内容を解析して、前記画像データをビットマップ画像へ変換するために必要な処理量を指数として算出する処理量指数算出手段と、前記算出した処理量指数を前記画像データの付加情報として関連づけて保持する保持手段と、前記画像データと前記付加情報とを送信する送信手段とを有する第１の画像処理装置と、前記印刷解像度に非依存な画像データをビットマップ画像に変換する画像処理手段と、前記画像データからビットマップ画像へ変換する自装置の処理能力を指数として保持する処理能力指数保持手段と、前記画像データに付加情報として関連づけられた処理量指数を読み出す付加情報解析手段と、前記処理能力指数保持手段に保持される処理能力指数と、前記付加情報解析手段により解析された処理量指数を用いて、前記画像データの変換に要する処理時間を算出する画像処理時間予測手段とを有する第２の画像処理装置とを含むことを特徴とする。
【００１３】
また、本発明の画像処理方法は、印刷解像度に非依存な画像データの内容を解析して、前記画像データをビットマップ画像へ変換するために必要な処理量を指数として算出する処理量指数算出工程と、前記算出した処理量指数を前記画像データの付加情報として関連づけて保持する保持工程と、前記画像データと前記付加情報とを送信する送信工程と、を有することを特徴とする。
【００１４】
また、本発明の画像処理方法は、印刷解像度に非依存な画像データをビットマップ画像へ変換する画像処理工程と、前記画像データからビットマップ画像へ変換する自装置の処理能力を指数として保持する処理能力指数保持工程と、前記画像データに付加情報として関連づけられた処理量指数を読み出す付加情報解析工程と、前記処理能力指数保持工程にて保持される処理能力指数と、前記付加情報解析工程により解析された処理量指数を用いて、前記画像データの変換に要する処理時間を算出する画像処理時間予測工程とを有することを特徴とする。
【００１５】
また、本発明のプログラムは、印刷解像度に非依存な画像データの内容を解析して、前記画像データをビットマップ画像へ変換するために必要な処理量を指数として算出する処理量指数算出工程と、前記算出した処理量指数を前記画像データの付加情報として関連づけて保持する保持工程と、前記画像データと前記付加情報とを送信する送信工程と、を有することを特徴とする画像処理方法をコンピュータに実行させる。
【００１６】
また、本発明のプログラムは、印刷解像度に非依存な画像データをビットマップ画像へ変換する画像処理工程と、前記画像データからビットマップ画像へ変換する自装置の処理能力を指数として保持する処理能力指数保持工程と、前記画像データに付加情報として関連づけられた処理量指数を読み出す付加情報解析工程と、前記処理能力指数保持工程にて保持される処理能力指数と、前記付加情報解析工程により解析された処理量指数を用いて、前記画像データの変換に要する処理時間を算出する画像処理時間予測工程とを有することを特徴とする画像処理方法をコンピュータに実行させる。
【発明の効果】
【００１７】
本発明においては、画像データの印刷処理に要する処理時間を、装置非依存の指数化し、さらに付加情報として該画像データに関連付けて保持するものである。よって画像を生成する時点で、送信先装置の能力、及び送信先装置の数と無関係に、一回だけ処理時間の指数を算出して付加すればよい。そのため、画像データとその処理時間指数を生成する装置では、送信先となる装置の能力情報を収集する必要が無く、かつ処理時間指数の生成処理付加を軽減することができる（※課題１、課題２の解決）。
【００１８】
さらに、ボックスに保存された画像データを利用する場合においても、各々の画像データに付加されている処理時間の指数をそのまま再利用することが可能である（※課題３の解決）。
【００１９】
上記のように従来の課題が解決され、早いタイミングでの印刷処理予測時間の算出と同時に、予測時間の効率的な算出と再利用が可能となる。
【発明を実施するための最良の形態】
【００２０】
（実施例１）
以下、本発明を実施するための最良の形態について、図面を参照して説明する。
【００２１】
＜画像処理装置の構成＞
本実施例を適用するに好適な１Ｄカラー系ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ：マルチファンクション周辺機器）の構成について、図１を用いて説明する。
【００２２】
１Ｄカラー系ＭＦＰは、スキャナ部、レーザ露光部、感光ドラム、作像部、定着部、給紙／搬送部及び、これらを制御する不図示のプリンタ制御部から構成され、物理メディアとしてのシート上に画像を形成するものである。
【００２３】
スキャナ部は、原稿台に置かれた原稿に対して、照明を当てて原稿画像を光学的に読み取り、その像を電気信号に変換して画像データを作成する工程である。
【００２４】
レーザ露光部は、前記画像データに応じて変調されたレーザ光などの光線を等角速度で回転する回転多面鏡（ポリゴンミラー）に入射させ、反射走査光として感光ドラムに照射する。
【００２５】
作像部は、感光ドラムを回転駆動し、帯電器によって帯電させ、前記レーザ露光部によって感光ドラム上に形成された潜像をトナーによって現像化し、そのトナー像をシートに転写する。その際に転写されずに感光ドラム上に残った微小トナーを回収するといった一連の電子写真プロセスを実行して作像する。その際、シートが転写ベルトの所定位置に巻きつき、４回転する間に、マゼンタ（Ｍ）、シアン（Ｃ）、イエロー（Ｙ）、ブラック（Ｋ）のトナーを持つそれぞれの現像ユニット（現像ステーション）が入れ替わりで順次前述の電子写真プロセスを繰り返し実行する。４回転の後、４色のフルカラートナー像を転写されたシートは、転写ドラムを離れ、定着部へ搬送される。
【００２６】
定着部は、ローラやベルトの組み合わせによって構成され、ハロゲンヒータなどの熱源を内蔵し、前記作像部によってトナー像が転写されたシート上のトナーを、熱と圧力によって溶解、定着させる。
【００２７】
給紙／搬送部は、シートカセットやペーパーデッキに代表されるシート収納庫を一つ以上持っており、前記プリンタ制御部の指示に応じてシート収納庫に収納された複数のシートの中から一枚分離し、作像部・定着部へ搬送する。シートは作像部の転写ドラムに巻きつけられ、４回転した後に定着部へ搬送される。４回転する間に前述のＹＭＣＫ各色のトナー像がシートに転写される。また、シートの両面に画像形成する場合は、定着部を通過したシートを再度作像部へ搬送する搬送経路を通るように制御する。
【００２８】
プリンタ制御部は、ＭＦＰ全体を制御するＭＦＰ制御部と通信して、その指示に応じて制御を実行すると共に、前述のスキャナ、レーザ露光、作像、定着、給紙／搬送の各部の状態を管理しながら、全体が調和を保って円滑に動作できるよう指示を行う。
【００２９】
＜システム構成＞
図３は、本実施形態に係る画像処理システムの全体構成を示すブロック図である。図３において、画像処理システムは、互いにＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）Ｎ１等を介して接続された、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、ＭＦＰ−ａ、ＭＦＰ−ｂ、ＭＦＰ−ｃで構成されている。
【００３０】
ＰＣは画像データを生成し、さらにその処理時間指数を付加情報として関連づけて、ＭＦＰに送信する機能を備えている。
【００３１】
各ＭＦＰはそれぞれＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ：二次記憶装置）Ｈ１、Ｈ２、Ｈ３を具備している。ＭＦＰに搭載されているプリンタエンジン（以降、エンジン）の印刷解像度、および印刷速度（一分あたりの印刷ページ速度、ｐｐｍ値）はＭＦＰ毎に異なる。ＭＦＰ−ａは６００ｄｐｉで４０ｐｐｍ、ＭＦＰ−ｂは１２００ｄｐｉで１２０ｐｐｍ、ＭＦＰ−ｃは６００ｄｐｉ、ＭＦＰ２は６００ｄｐｉで２０ｐｐｍである。
【００３２】
また、ＭＦＰに搭載されているレンダラ（ラスタライザ）の処理能力と種類もＭＦＰ毎に異なっており、ＭＦＰ−ａとＭＦＰ−ｂのレンダラは同種（図中には「Ｒａ」と図示）、ＭＦＰ−ｃだけ異なる種類（「Ｒｂ」と図示）である。処理能力は指数化して示しており、ＭＦＰ−ａは４００、ＭＦＰ−ｂは２０００、ＭＦＰ−ｃは２００であり、数値が大きいほどの処理速度が速いことを意味する。図３ではＭＦＰ−ａとＭＦＰ−ｂが同種のレンダラを搭載しているが、ＭＦＰ−ａはソフト処理で、ＭＦＰ−ｂは専用ハードで処理する差異によりレンダリング速度が異なっている。
【００３３】
一般に、異なる種類のレンダラは異なる種類の描画命令群を処理することができない。この描画命令群を一般にＤｉｓｐｌａｙＬｉｓｔ（以下、ＤＬと表記）と呼ぶ。ＤＬはハードウェアで処理可能なインストラクションであり、複雑な描画記述を持つベクタデータからソフトウェアで生成され、印刷解像度依存である。
【００３４】
ＭＦＰ−ａ、ＭＦＰ−ｂ、ＭＦＰ−ｃ、ＰＣはネットワークプロトコルを使用して互いに通信することができる。なお、ＬＡＮ＿Ｎ１上に接続されるこれらのＭＦＰは上記のような物理的な配置に限定されなくても良い。また、ＬＡＮ＿Ｎ１上にはＭＦＰ以外の機器（例えば各種サーバ、プリンタなど）がさらに接続されていても良い。
【００３５】
＜コントローラユニットの構成＞
図２は、本実施形態におけるＭＦＰのコントロールユニット（コントローラ）の一構成例を示すブロック図である。図２において、コントロールユニット２００は、画像入力デバイスであるスキャナ２０１や画像出力デバイスであるプリンタエンジン２０２と接続し、画像データの読み取りやプリント出力のための制御を行う。また、コントロールユニット２００は、ＬＡＮ１０や公衆回線２０４と接続することで、画像情報やデバイス情報をＬＡＮ１０経由で入出力するための制御を行う。
【００３６】
ＣＰＵ２０５はＭＦＰ全体を制御するための中央処理装置である。ＲＡＭ２０６は、ＣＰＵ２０５が動作するためのシステムワークメモリであり、入力された画像データを一時記憶するための画像メモリでもある。さらに、ＲＯＭ２０７はブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２０８はハードディスクドライブであり、各種処理のためのシステムソフトウェア及び入力された画像データを等格納する。操作部Ｉ／Ｆ２０９は、画像データ等を表示可能な表示画面を有する操作部２１０に対するインタフェース部であり、操作部２１０に対して操作画面データを出力する。また、操作部Ｉ／Ｆ２０９は、操作部２１０から操作者が入力した情報をＣＰＵ２０５に伝える役割をする。ネットワークインタフェース２１１は、例えばＬＡＮカード等で実現され、ＬＡＮ１０に接続して外部装置との間で情報の入出力を行う。さらにまた、モデム２１２は公衆回線２０４に接続し、外部装置との間で情報の入出力を行う。以上のユニットがシステムバス２１３上に配置されている。
【００３７】
イメージバスＩ／Ｆ２１４は、システムバス２１３と画像データを高速で転送する画像バス２１５とを接続するためのインタフェースであり、データ構造を変換するバスブリッジである。画像バス２１５上には、ラスタイメージプロセッサ２１６、デバイスＩ／Ｆ２１７、スキャナ画像処理部２１８、プリンタ画像処理部２１９、画像編集用画像処理部２２０、カラーマネージメントモジュール２３０が接続される。
【００３８】
ラスタイメージプロセッサ（ＲＩＰ）２１６は、ページ記述言語（ＰＤＬ）コードや後述するベクトルデータをビットマップイメージに展開する。デバイスＩ／Ｆ部２１７は、スキャナ２０１やプリンタエンジン２０２とコントロールユニット２００とを接続し、画像データの同期系／非同期系の変換を行う。
【００３９】
また、スキャナ画像処理部２１８は、スキャナ２０１から入力した画像データに対して、補正、加工、編集等の各種処理を行う。プリンタ画像処理部２１９は、プリント出力する画像データに対して、プリンタエンジンに応じた補正、解像度変換等の処理を行う。画像編集用画像処理２２０は、画像データの回転や、画像データの圧縮伸長処理等の各種画像処理を行う。ＣＭＭ２３０は、画像データに対して、プロファイルやキャリブレーションデータに基づいた、色変換処理（色空間変換処理ともいう）を施す専用ハードウェアモジュールである。プロファイルとは、機器に依存した色空間で表現したカラー画像データを機器に依存しない色空間（例えばＬａｂなど）に変換するための関数のような情報である。キャリブレーションデータとは、カラー複合機３におけるスキャナ部２０１やプリンタエンジン２０２の色再現特性を修正するためのデータである。
【００４０】
＜コントローラソフトウェア構成＞
図４は、ＭＦＰの動作を制御するコントローラソフトウェアの構成を示すブロック図である。なお、下記の各ソフトウェア機能を実現するためのプログラムは図２のＨＤＤ２０８等に記憶され、ＣＰＵ２０５により実行される。
【００４１】
プリンタインターフェイス１２００は、外部との入出力のための手段である。プロトコル制御部１１０１は、ネットワークプロトコルを解析・送信することによって外部との通信を行う手段である。
【００４２】
ベクタデータ生成部１１０２は、ビットマップイメージから印刷解像度に依存しない描画記述であるベクタデータを生成（ベクタライズ）するものである。
【００４３】
メタデータ生成部１１０３はベクタライズの過程で得られる副次情報をメタデータとして生成するものである。メタデータとは描画処理には必要のない検索用の付加的なデータである。ベクタデータのレンダリングに要する処理量の指数も、メタデータとして生成される。
【００４４】
ＰＤＬ解析部１１０４は、ＰＤＬを解析し、より処理しやすい形式の中間コード（ＤｉｓｐｌａｙＬｉｓｔ）に変換する手段である。ＰＤＬ解析部１１０４において生成された中間コードはデータ描画部１１０５に渡されて処理される。データ描画部１１０５は上記中間コードをビットマップデータに展開するものであり、展開されたビットマップデータはページメモリ１１０６に逐次描画されて行く。
【００４５】
ページメモリ１１０６はレンダラが展開するビットマップデータを一次的に保持する揮発性のメモリである。
パネル入出力制御部は操作パネルからの入出力を制御するものである。
【００４６】
ドキュメント記憶部１０３０は入力文書の一塊（ジョブ）単位にベクタデータ、ＤｉｓｐｌａｙＬｉｓｔ、メタデータを包含するデータファイルを記憶する手段であり、ハードディスク等の二次記憶装置によって実現される。なお、このデータファイルを本実施例では「ドキュメント（またはＤｏｃｕｍｅｎｔ）」と呼ぶ。
【００４７】
スキャン制御部１５００はスキャナから入力した画像データに対して、補正、加工、編集などの各種処理を行う。
【００４８】
印刷制御部１３００は、ページメモリ１１０６の内容をビデオ信号に変換処理し、プリンタエンジン部１４００へ画像転送を行なう。プリンタエンジン部１４００は受け取ったビデオ信号を記録紙に永久可視画像形成するための印刷機構部である。
【００４９】
システム制御部１０１０は、上記の各種ソフト制御部を統合し、システムとしてＭＦＰ全体の制御管理を行なう。さらに、システム制御部１０１０は、プリンタエンジンの印刷速度（ｐｐｍ値）、レンダラの処理能力値（指数）をシステム起動時に収集し、動作中ＲＡＭ２０６に保持する（処理能力指数保持）。
【００５０】
さらに、システム制御部１０１０は、プリント動作、スキャン動作など一単位の動作をジョブとして制御し、パネル入出力制御部を制御して、操作部２１０にジョブの処理状況やステータスを表示する。図５、図６、および図７は本発明のＭＦＰの操作部２１０の表示画面を示す。図５はＭＦＰの基本画面であり、ボタン５２０を押下すると、図６のプリントジョブ一覧画面に遷移する。さらにプリントジョブ一覧画面でジョブを選択（表示が反転される）し、ボタン６３１を押下すると、図７に示す各ジョブの詳細情報が表示される。なお、図７については、この後のＰＤＬ印刷時の説明部分でさらに詳細に説明する。
【００５１】
＜コントローラユニットのデータ処理＞
次に、ドキュメントを構成するベクタデータ、ＤＬ、メタデータがどのように生成されるのかを説明する。
【００５２】
図９、図１０、図１１、図１２は本実施形態におけるコントロールユニットのデータフローを示している。
【００５３】
図９はコピー動作時のデータフローである。
まず原稿露光部にセットされた紙原稿はスキャン処理ｄ１によってビットマップデータに変換される。次にベクタライズ処理ｄ２とメタデータ生成処理ｄ４によってビットマップデータからそれぞれ印刷解像度に依存しないベクタデータとそれに付随するメタデータが生成される。ベクタデータ、メタデータの具体な生成方法については後述する。
【００５４】
次にドキュメント生成処理ｄ３によってベクタデータとメタデータが関連付けられたドキュメントが生成される。次にＤＬ生成処理ｄ５によりドキュメント中のベクタデータからＤＬが生成され、生成されたＤＬはドキュメントの中に格納されると共にレンダリング処理ｄ７に送られてビットマップに展開される。
【００５５】
展開されたビットマップは印刷処理ｄ８によって紙媒体に記録されて印刷物となる。なお、出力された印刷物をまた原稿露光部にセットすればスキャンｄ１処理からの処理を行うことができる。
【００５６】
図１１は図９で示したメタデータ生成処理ｄ４、及び図１０で示したメタデータ生成処理ｄ４の具体的なデータフローを示している。
まず領域分割処理ｄ１にてビットマップから領域分割を行う。
【００５７】
領域分割とは、入力されたビットマップ画像データを解析して、画像に含まれるオブジェクトの塊毎に領域に分割し、各領域の属性を判定して分類する処理である。属性としては、文字（ＴＥＸＴ）、画像（ＰＨＯＴＯ）、線（ＬＩＮＥ）、図形（ＰＩＣＴＵＲＥ）、表（ＴＡＢＬＥ）等の種類がある。
【００５８】
ここで図８に、入力画像に対して領域分割を行った場合の一例を示す。入力画像５１に対して領域分割を行った結果が判定結果５２である。判定結果５２で、点線で囲った部分が画像を解析した結果のオブジェクトの１単位を表し、各オブジェクトに対して付されている属性の種類が領域分割の判定結果である。
【００５９】
属性毎に分類された領域の中から文字属性の領域はＯＣＲ処理ｄ２により文字認識処理され、文字列に変換される。つまり、この文字列は紙面に印刷されている文字列である。
【００６０】
一方、属性毎に分類された領域の中から画像属性の領域は画像情報抽出処理ｄ８を通して画像情報に変換される。画像情報とは画像の特徴を現す文字列であり例えば「花」や「顔」といった文字列である。画像情報の抽出には画像特徴量（画像を構成するピクセルの周波数や濃度など）検出や顔認識などの一般的な画像処理技術を用いることができる。さらに、領域分割したオブジェクトの属性に応じて、それぞれのオブジェクトをレンダリングするのに必要な処理量を指数化して算出する（処理量指数算出）。指数の算出は各オブジェクトの属性や含まれる文字数、線数に基づいて行なう。画像（ＰＨＯＴＯ）または図形（ＰＩＣＴＵＲＥ）オブジェクトの場合、それらの色諧調や、塗りつぶし処理方法（グラデーション、半透明）の処理量も指数に加算する。また、ページ内で複数のオブジェクトにまたがる重ね合わせ、半透明処理などに要する処理については該ページ単位でのメタデータとして生成する。
【００６１】
生成された文字列と画像情報、及びそれぞれの処理量指数は、フォーマット変換処理ｄ４によって後述するデータフォーマットに整えられてメタデータが生成される。
【００６２】
図１０、および図１２はＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）プリント時のデータフローである。ＰＤＬプリントとはＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）上のアプリケーションソフトから印刷を指示した場合にＰＣ上のプリンタドライバによって生成されたページ記述言語（ＰＤＬ）を受け取って出力する、プリンタ動作のことである。
【００６３】
まず図１０でＰＣ上のプリンタドライバによるＰＤＬデータ生成を説明する。ｄ１でアプリケーションからドライバに印刷データが渡され、ｄ２、ｄ４でそれぞれベクタライズ、メタデータ生成が行なわれる。ｄ３のドキュメント生成までの処理は図９に示すスキャンビットマップ画像が、アプリケーションからの出力データである点以外は同じである。ｄ５にてＬＩＰＳ（ＬＢＰ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍ）やＰＳ（ＰｏｓｔＳｃｒｉｐｔ）など、ドライバがサポートするＰＤＬ種別に応じたページ記述データを生成する。ｄ６で印刷出力あるいは保存したいＭＦＰなどに対してＰＤＬデータを送信する。
【００６４】
次に、ＰＤＬデータを受信した画像処理装置側のフローを図１２を用いて説明する。まず受信したＰＤＬデータはＰＤＬデータ解析処理ｄ１によって解析され、ベクタデータが生成される。次にＤＬ生成処理ｄ２によりベクタデータからＤＬが生成され、生成されたＤＬはドキュメントの中に格納されると共にレンダリング処理ｄ３に送られてビットマップに展開される。展開されたビットマップは印刷処理ｄ４によって紙媒体に記録されて印刷物となる。
【００６５】
この過程で生成されるベクタデータ、ＤＬはドキュメント生成処理ｄ６によってドキュメントに格納される。
【００６６】
さらに、レンダリング処理ｄ３が生成したビットマップからは図１１で説明したメタデータ生成処理ｄ５により、コピー動作時と同様に文字列や画像情報がメタデータとして生成され、ドキュメントに格納される。
【００６７】
また、ＰＤＬにはＬＩＰＳ（ＬＢＰ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍ）やＰＳ（ＰｏｓｔＳｃｒｉｐｔ）など様々な種類が存在するが、ＰＤＬによっては文字列情報を持っているものもある。この場合はＰＤＬ解析時に文字列からメタデータが生成され、ドキュメントに格納される。
【００６８】
次に、ドキュメント生成処理と印刷処理についてフローチャートを用いて説明する。
図１３はドキュメント生成処理を示している。この処理は入力された画像データを受けてベクタデータ、ＤＬ、メタデータで構成されるドキュメントを生成する処理である。
【００６９】
まずステップＳ１３０１で入力された画像データに対して前述した領域分割処理を行う（以下、分割または区別された領域を“オブジェクト”ということがある）。次に各領域の種別（属性）をステップＳ１３０２においてＴＥＸＴ，ＧＲＡＰＨＩＣ，ＩＭＡＧＥに分類し、それぞれに対して別々の処理を行う。図８では属性をＴＥＸＴ，ＰＨＯＴＯ，ＬＩＮＥ，ＰＩＣＴＵＲＥ，ＴＡＢＬＥに分類した例を示したが、図８の属性はＰＨＯＴＯ，ＰＩＣＴＵＲＥはＩＭＡＧＥに、ＬＩＮＥ，ＴＡＢＬＥはＧＲＡＰＨＩＣに分類される。
【００７０】
領域属性がＴＥＸＴの場合は、ステップＳ１３１０に進んでＯＣＲ処理を行った後、ステップＳ１３１１において文字列の抽出を行い、Ｓ１３１２に進んで認識した文字輪郭をベクタデータに変換する。つづいてＳ１３１３でレンダリングに要する処理量を指数として算出する。Ｓ１３１４ではＳ１３１１で抽出した文字列とＳ１３１３で算出した処理量指数とをメタデータに変換する。
【００７１】
ここで、もう少し説明を加えておく。
文字列から生成されるメタデータは文字コードの羅列であるが、文字コードの羅列はキーワード検索に必要な情報である。しかし、ＯＣＲ処理では文字コードは認識できても「明朝」「ゴシック」といった書体や「１０ｐｔ」「１２ｐｔ」といった文字のサイズ、「イタリック」「ボールド」といった文字修飾までは認識できない。したがって描画用には文字コードを用いるのではなく文字輪郭をベクタデータとして保持する必要がある。
【００７２】
一方、ステップＳ１３０２において領域属性がＩＭＡＧＥである場合は、ステップＳ１３２０に進んで画像情報抽出処理を行う。ステップＳ１３２０では前述したように、画像特徴量検出や顔認識などの一般的な画像処理技術を用いて画像の特徴を検知する。次にステップＳ１３２１に進んで検知した画像の特長を文字列に変換する。この変換は特徴パラメータと文字列のテーブルを保持しておけば容易である。ＩＭＡＧＥの領域属性に対してはベクトル化は行わず、イメージデータをそのままベクタデータに保持するため、レンダリング処理が不用である。そのため、ＩＭＡＧＥの場合には処理量指数の算出処理とメタデータ化は行なわずステップＳ１３２２で特徴文字列のみをメタデータに変換する。もしくは、ほかの領域属性とフォーマットを一致させるために、処理量指数ゼロのメタデータを生成して付加してもよい。
【００７３】
ステップＳ１３０２において領域属性がＧＲＡＰＨＩＣである場合は、ステップＳ１３３０に進んでベクトル化処理を行う。続いてステップＳ１３３１でレンダリングに要する処理量指数を算出する。この際塗りつぶしや半透明化など、特殊効果などの指定がされている場合にはそれらの処理量も考慮して指数を算出する。続いてステップＳ１３３２で処理量指数をメタデータへ変換する。
【００７４】
ここで、オブジェクトに対するベクトル化と処理量指数のメタデータ化が完了し、ステップＳ１３５０で１ページ分の処理が完了したかチェックする。該ページ完了でなければ、ステップＳ１３６０で該ページの処理量指数を加算し、ステップＳ１３０２にもどって次のオブジェクトの処理を行なう（ページ単位の処理量指数）。
【００７５】
Ｓ１３５０で該ページ処理完了の場合、ステップＳ１３６０で算出した該ページの処理量指数を、ドキュメント全体の処理量指数に加算する。続いてステップＳ１３５２で最終ページが完了したかどうか判定し、残りページがあればステップＳ１３０１に戻って次のページの処理を行なう。Ｓ１３５２で最終ページ完了であれば、ステップＳ１３５３で全てのデータのドキュメント化が完了する（全体の処理量指数）。
【００７６】
なお、ＰＣのプリンタドライバからページ記述データ（ＰＤＬ）に含まれるドキュメントを生成する場合においても、入力データがアプリケーションが出力するデータである以外は同一処理である。よってプリンタドライバでのドキュメント生成のフローについては詳細説明を割愛する。
【００７７】
図１４はベクタデータとメタデータから構成されたドキュメントを印刷する装置側における、ドキュメントの処理のフロー図である。
【００７８】
まずステップＳ１４０１でドキュメントデータを受け取り、印刷を行なうためにベクタデータをラスタライズする処理のステップＳ１４０２と、メタデータを解析する処理のステップＳ１４２０が並行して開始される。まずＳ１４０２以下の印刷を行なう処理においては、ステップＳ１４０２においてドキュメント中のベクタデータからＤＬを生成する。次にステップＳ１４０３において生成したＤＬをドキュメントに追加し、ステップＳ１４０４でＤＬをビットマップにレンダリングする。最後にステップＳ１４０５において紙媒体への印刷処理を行うと処理を終了する。
【００７９】
一方、ステップＳ１４２０以下の処理（付加情報解析）では、ドキュメントデータからメタデータを取得解析し、Ｓ１４２１で処理量指数を取り出す。ここで、処理量指数としてはレンダリング処理に要する処理量とともに、物理的な印刷ページ数も含まれていてもよい。次にステップＳ１４２２で自処理装置の処理能力情報を取得する。能力情報にはレンダリング能力とプリンタエンジンの印刷速度（ｐｐｍ値）が含まれている（装置の処理能力取得）。
【００８０】
ステップＳ１４２３で、前記ステップで取得したレンダリング処理に要する処理量指数と自装置のレンダリング能力情報から、レンダリングに必要な実時間を算出する（画像処理時間予測）。さらに、ページ数とエンジン速度から、プリンタエンジンの画像形成動作に必要な実時間を算出する。このように算出した処理予測時間を、ステップＳ１４２４でユーザに通知、あるいはネットワーク接続されたＰＣや他の装置に通知を行なう。さらにレンダリング処理、プリント処理の進行に伴って残り処理時間を更新し必要な通知を処理完了まで繰返す。このステップＳ１４２４の詳細については後でさらに説明する。
【００８１】
図１５はＰＤＬからの印刷処理を示している。この処理はＰＣのプリンタドライバが生成した、ドキュメントを含むＰＤＬデータを受けて印刷出力する処理である。
【００８２】
まずステップＳ１５０１でＰＤＬデータを解析する、解析中に文字列情報などのメタデータがＰＤＬに包含されていたらステップＳ１５１０に進んでＰＤＬの情報をメタデータに追加する。
【００８３】
一方、ステップＳ１５０２において文字列情報などのメタデータ以外のデータについてはステップＳ１５０３に進む。ここで、ステップ１５０３の処理は図１４で説明したドキュメント印刷処理と同一である。よってステップＳ１５０３内にて紙媒体への印刷処理と同時に終了予測時間のユーザ通知等が行なわれたのちにＰＤＬからの印刷処理が終了する。
【００８４】
＜ドキュメントデータ構造＞
次に、ドキュメントの構造を説明する。
図１６、図１７、図１８はドキュメントの構造を示している。
【００８５】
図１６はドキュメントのデータ構造を示している。
ドキュメントは複数ページからなるデータであり、大きく分けるとベクタデータ（ａ）、メタデータ（ｂ）、ＤＬ（ｃ）、で構成されており、ドキュメントヘッダ（ｘ１）を先頭とする階層構造である。ベクタデータ（ａ）はさらに、ページヘッダ（ｘ２）、サマリ情報（ｘ３）、オブジェクト（ｘ５）で構成されており、メタデータ（ｂ）はさらにページ情報（ｘ５）と詳細情報（ｘ６）で構成されている。ＤＬ（ｃ）はさらに、ページヘッダ（ｘ７）と描画展開用のインストラクション（ｘ８）から構成されている。ドキュメントヘッダ（ｘ１）にはベクタデータの格納場所とＤＬの格納場所が記述されているためベクタデータとＤＬはドキュメントヘッダ（ｘ１）によって関連付けられている。
【００８６】
ベクタデータ（ａ）は印刷解像度非依存な描画データであるので、ページヘッダ（ｘ２）はページの大きさや向きなどのレイアウト情報が記述される。オブジェクト（ｘ４）にはライン、多角形、ベジェ曲線などの描画データが一つずつリンクされており、複数のオブジェクトがまとめてサマリ情報（ｘ３）に関連付けられている。サマリ情報（ｘ３）は複数のオブジェクトの特徴をまとめて表現するものであり、図１２で説明した分割領域の属性情報などが記述される。
【００８７】
メタデータ（ｂ）は描画処理には関係しない付加情報であり、処理量指数、ページ数などの、該ドキュメントの処理時間予測に必要な情報や、検索用情報が保持される。ページ情報（ｘ５）領域には、該ページに含まれる描画データのレンダリング処理に必要な処理量指数が格納される。詳細情報（ｘ６）にはＯＣＲ情報や画像情報として生成された文字列（文字コード列）が記述される。
【００８８】
さらにメタデータ（ｂ）には、該ドキュメント全体のレンダリング処理量指数、総ページ数を含む情報を保持する、トータル情報（ｘ２０）が含まれる。これはドキュメントの処理を行なう場合に、該ドキュメント全体の処理量やページ数を早いタイミングで取得可能とする目的で設けたものである。そのため、トータル情報（ｘ２０）はドキュメントヘッダ（ｘ１）から直接参照可能に構成されている。同様に、ページ単位でも素早く該ページの処理量指数を参照可能なように、各ページヘッダ（ｘ２）からオブジェクト（ｘ５）に対して関連付けがされている（全体、ページ単位での処理量付加）。
【００８９】
また、ベクタデータ（ａ）のサマリ情報（ｘ３）からはメタデータが参照されており、サマリ情報（ｘ３）から詳細情報（ｘ６）を見つけることができる。
【００９０】
ＤＬ（ｃ）はレンダラがビットマップ展開するための中間コードである。ページヘッダ（ｘ７）にはページ内の描画情報（インストラクション）の管理テーブルなどが記述され、インストラクション（ｘ８）は印刷解像度依存な描画情報で構成されている。
【００９１】
図１７は図１６で説明したデータ構造がメモリ上、ファイル上にどう配置されるのかを示す図である。
１７−１で示すようにドキュメントはベクタデータ領域、メタデータ領域、ＤＬ領域がメモリ上の任意のアドレスに配置される。
１７−２で示すようにドキュメントはベクタデータ領域、メタデータ領域、ＤＬ領域が、一つのファイルにシリアライズされる。
【００９２】
図１８は１００ページのドキュメントデータの具体例である。
ドキュメント全体の処理量指数、ページ数は、メタデータのトータル情報部（ＭＡ）に保持されている。図１８ではページ数１００、処理量指数値４０００を示している。画像処理装置がドキュメントを受信して処理しようとする場合、画像データ内容を解析することなくドキュメントヘッダから直接メタデータの全体情報を参照可能である。これにより、画像処理装置では処理開始したタイミングで終了時間の予測および通知の処理を行なうことができる。また、各ページ毎の処理量指数もそれぞれ各ページに対応したメタデータ部Ｍ１、Ｍ２、、Ｍ１００に格納されている。１ページ目は処理量指数３０、２ページ目は１５０、１００ページ目は２０、であることを示している。これらの各ページの処理量指数の合計値が、トータル情報部（ＭＡ）に保持されているドキュメント全体の処理量指数値である。
【００９３】
処理量指数をページ毎に保持しているのは、画像処理装置でドキュメント処理中に、処理の進行状況や残り処理時間を通知するために利用するためである。例えば図１８で図示したうち、１ページ目、１００ページ目は比較的軽いページであるが、２ページ目は処理量指数が大きく、時間がかかることを示している。よってページを処理する毎に該ページ分の処理量を、全体処理量から減算することで、残り処理量指数および時間をより正確に算出可能な構成となっている（処理量、ページ数の具体例）。
【００９４】
さらに１ページ目を例に詳細な構成を説明する。１ページ目のサマリ情報に「ＴＥＸＴ」と「ＩＭＡＧＥ」を持っている。「ＴＥＸＴ」のサマリ情報にはＨ，ｅ，ｌ，ｌ，ｏ（オブジェクトｔ１）とＷ，ｏ，ｒ，ｌ，ｄ（オブジェクトｔ２）の文字輪郭がベクタデータとしてリンクされている。さらにサマリ情報からは「Ｈｅｌｌｏ」「Ｗｏｒｌｄ」という文字コード列（メタデータｍｔ）が参照されている。
【００９５】
また、「ＩＭＡＧＥ」のサマリ情報には蝶の写真画像（ＪＰＥＧ）がリンクされている。さらにサマリ情報からは「ｂｕｔｔｅｒｆｌｙ」という画像情報（メタデータｍｉ）が参照されている。したがって、例えば「Ｗｏｒｌｄ」というキーワードでページ中のテキストを検索する場合は以下の手順で検出すればよい。まずドキュメントヘッダからベクタページデータを順次取得し、ページヘッダにリンクされているサマリ情報から「ＴＥＸＴ」にリンクされているメタデータを検索する。
【００９６】
＜ＰＤＬ印刷での処理時間予測＞
本実施形における、ＰＤＬ印刷とジョブ終了時間の予測、表示について図１９、およびフローチャート図２０を用いて説明する。図１９はそのシステム構成であり、ＰＤＬデータを生成しＭＦＰに送信するＰＣ１、ＰＣ２、ＰＣ３と、ネットワークで接続されたＭＦＰ−ａである。各ＰＣはＨＤＤなどの二次記憶装置を備えており、ＰＣ上のプリンタドライバが生成したＰＤＬデータは、一旦ＰＣのＨＤＤに保存されたのち、ＭＦＰ２へ送信される。ここで、ドライバが生成するＰＤＬデータの中身は、すでに説明したベクタデータとメタデータを関連付けて生成されたドキュメントである。ドキュメントデータの生成処理については、すでに図１０のデータフロー、図１３のフローチャートで説明したのでここでは説明を省略する。
【００９７】
図１９では、ＰＣ１、ＰＣ２、ＰＣ３から同時にそれぞれのユーザがＭＦＰ−ａに対してＰＤＬ印刷を実行しており、破線の矢印でＰＤＬデータの送信を示している。ＰＤＬデータはＰＣ１、ＰＣ２、ＰＣ３からそれぞれＰｒｉｎｔＤａｔａ１、ＰｒｉｎｔＤａｔａ２、ＰｒｉｎｔＤａｔａ３が送信されており、それぞれ処理量指数およびページ数がメタデータとして付加されている。ＭＦＰ−ａはこれらのＰＤＬデータを受信し、印刷処理を行なう。
【００９８】
図２０のフローチャートでＭＦＰ−ａの処理について説明する。まずステップＳ２００１でネットワークＩＦ部２１１からＰＤＬデータを受信し、システム制御部１０１０はプリントジョブを生成するとともに、ＰＤＬデータを一旦ＨＤＤ２０８に格納する。ＰＤＬデータはＰＣから印刷プロトコルによって送信されており、印刷プロトコルにはＰＤＬ印刷を行なったユーザ名やファイル名など付加されている。システム制御部１０１０は生成したプリントジョブに対し、それぞれ設定されたユーザ名、ファイル名のジョブ情報を操作部２１０に表示する（ステップＳ２０５０）。
【００９９】
続いてシステム制御部１０１０はジョブ終了予測の処理を行なうため、Ｓ２００３でドキュメントのメタデータのトータル情報部ＭＡから、レンダリング処理量指数値と印刷ページ数を取得する。続いて、指数と印刷ページ数から実時間を算出するため、ＭＦＰ−ａの能力情報を取得し、ステップＳ２００５でレンダリング処理に要する実時間、印刷処理に要する実時間、をそれぞれ算出する。算出した終了予測時間は操作部２１０にステップＳ２０５０で表示する。
【０１００】
ここで、処理量指数およびページ数から処理に要する時間を計算する具体例を図２１で示す。ＰｒｉｎｔＤａｔａ１は処理量（ＰｒｏｃＩｎｄｅｘ）は２４００、ページ数は１２０であり、ＭＦＰ−ａのレンダリング能力指数４００、プリンタエンジン速度４０ｐｐｍである。システム制御部１０１０はこれらの数値からレンダリング時間、印刷時間の実時間を計算する（画像形成時間予測）。ＰｒｉｎｔＤａｔａ１についてはレンダリング時間として約６分、印刷時間約３分となるので、これらの数値が操作部２１０でジョブ情報として表示される。図２１では２１０１にＰｒｉｎｔＤａｔａ１の処理時間を、同様に２１０２、２１０３でＰｒｉｎｔＤａｔａ２、ＰｒｉｎｔＤａｔａ３の処理時間計算結果を示す。ＰｒｉｎｔＤａｔａ２ではレンダリング時間１０分と印刷時間４分、ＰｒｉｎｔＤａｔａ３ではレンダリング時間２分と印刷時間１分未満、である。
【０１０１】
つづいて、ステップＳ２０１０でレンダリング処理、印刷処理を開始する。１ページレンダリングが完了するごとに、メタデータのページ情報部（Ｍ１、Ｍ２、Ｍ３、、）から該ページの処理量を、残り総処理量から差し引き、ジョブ全体の残り処理時間を更新し、操作部２１０の表示も更新する。ステップＳ２０１２でレンダリング終了した場合、プリンタエンジンでの印刷処理を開始視する。なお、最終ページまでレンダリング完了しなくとも、すでにレンダリング済のページは印刷可能であるので、レンダリング処理と並行して印刷動作が開始されても良い。ステップＳ２０１３でプリンタエンジンでの印刷動作を最終ページまで行い、１ページ印刷するたびに操作部２１０の残りページ数も更新する。ステップＳ２０１４で最終ページの印刷が完了すると、システム制御部１０１０はジョブ終了処理、操作部２１０の表示を更新してジョブ処理を終了する。ＰｒｉｎｔＤａｔａ２、ＰｒｉｎｔＤａｔａ３に対しても同様の処理が行なわれ、それぞれのデータ内容に応じた残り処理時間が操作部２１０に表示、更新されながら処理が進行する。
【０１０２】
図６、および図７にＰＤＬ印刷中のジョブ状況表示画面をしめす。図６はプリントジョブ一覧画面であり、３つのジョブが表示されている。６１１はシステム制御部１０１０が各ジョブに割り当てた受付番号部、６１２はジョブ受け付けた時刻、６１３はファイル名をジョブ名として表示している。６１４はＰＤＬ印刷をＰＣ上で行なったユーザ名、６１５はジョブのステータス、６１５は該ジョブの印刷出力が完了するまでの残り予測時間である。６３０はジョブ処理順を変更するためのボタン、６３２はジョブ処理を中止するボタン、６３３は操作部２１０を基本画面図５に戻すボタンである。
【０１０３】
図６ではＰＣ１、ＰＣ２、ＰＣ３からのＰＤＬ印刷処理が、６２０、６２１、６２２のそれぞれのジョブとして表示される。図７の各画面は、ジョブ一覧画面でジョブを選択し、ボタン６３１を押下することで表示される、個々のジョブの詳細表示画面である。
【０１０４】
（７−１）は６２０のジョブの、（７−２）は６２１の、（７−３）は６２３の、それぞれの詳細画面を示す。７２０はジョブを一時停止するためのボタン、７２１はジョブ一覧画面（図６）に戻るためのボタンであり、（７−１）、（７−２）、（７−３）で共通である。
【０１０５】
（７−１）の７０１は６２０の、すなわちＰｒｉｎｔＤａｔａ１のジョブ詳細画面である。７０２はユーザ名、ファイル名などのジョブ情報である。７０３はレンダリング処理の進行状況を示す欄であり、全１２０ページ中１２０ページすべてがレンダリング完了していることを示す。７０４は印刷状況を示す欄であり、全１２０ページ中２８ページが印刷完了していることを示す。７０５は本ジョブの残り処理時間であり、印刷時間が２分残っていることを示す。７０６はＭＦＰ−ａの全ジョブの処理時間も含めた本ジョブの印刷完了までの時間であり、本ジョブは処理中の先頭ジョブであるので、７０５と同じ残り２分を表示している。
【０１０６】
（７−２）の７５１はジョブ６２１の、すなわちＰｒｉｎｔＤａｔａ２のジョブ詳細画面である。７５２はユーザ名、ファイル名などのジョブ情報である。７５３はレンダリング処理の進行状況を示す欄であり、全１５０ページ中７５ページすべてがレンダリング完了していることを示す。７５４は印刷状況を示す欄であり、全１５０ページ中１ページも印刷されていないことを示す。７５５は本ジョブの残り処理時間であり、レンダリング処理が５分、印刷時間が４分残っていることを示す。７５６はＭＦＰ−ａの全ジョブの処理時間も含めた本ジョブの印刷完了までの時間であり、前ジョブの時間を合わせて１１分あることを示す。
【０１０７】
（７−３）の７７１はジョブ６２２の、すなわちＰｒｉｎｔＤａｔａ３のジョブ詳細画面である。７７２はユーザ名、ファイル名などのジョブ情報である。７７３はレンダリング処理の進行状況を、７７４は印刷状況を示す欄であり、全２０ページ中１ページも処理されていないことを示す。７７５は本ジョブの残り処理時間であり、レンダリング処理が２分、印刷時間が１分残っていることを示す。７７６はＭＦＰ−ａの全ジョブの処理時間も含めた本ジョブの印刷完了までの時間であり、前ジョブの時間を合わせて１３分あることを示す。
【０１０８】
これらのレンダリング処理、印刷処理の終了予測時間の表示は、ステップＳ２０１１、ステップＳ２０１３で処理が進行する都度更新され、操作部２１０を通してユーザに通知されるのである。ここで、ステップＳ２０５０では、ＭＦＰ−ａの操作部２１０に処理予想時間を表示するだけでなく、ＰＣ上のアプリに通知してＰＤＬ印刷したユーザに通知することも可能である。
【０１０９】
（実施例２）
実施例１では、ＰＣからＭＦＰに対するＰＤＬ印刷動作を説明したが、本実施例では、一度ＭＦＰに保存されたドキュメントを再利用して複数のＭＦＰに印刷出力する。本実施例にて、一度生成されたドキュメントに含まれる処理量のメタデータが繰り返し利用可能であること、送信先が増えても送信元装置の負荷が増大しないことを説明する。さらに、受信した各装置がドキュメント内の処理量と自装置の能力情報から処理予測時間を生成するため、連携する装置の能力が異なっても正確な処理予測時間を算出可能なことを明らかにする。
【０１１０】
まず、図２３でドキュメントを生成し、ＭＦＰ内に保存する構成を示す。このドキュメントデータはＰＣから送信されたものでも、ＭＦＰのスキャナ２０１で紙原稿をスキャンして生成されたものでもよい。いずれにしても、先に説明したドキュメント生成処理（図１３）によって、メタデータ部にはレンダリングに要する処理量指数、ページ数が記録されている。
【０１１１】
続いて、図２４で能力の異なるＭＦＰに同時に印刷出力する構成をしめす。ここでは図２３でＭＦＰ−Ｓに保存したドキュメントのうち、ＰｒｉｎｔＤａｔａ１を、ＭＦＰ−ａ、ＭＦＰ−ｂ、ＭＦＰ−ｃに同時に分散印刷するものとする。ユーザがＭＦＰ−ｓの操作部から印刷先のＭＦＰを選択し、出力したいＰｒｉｎｔＤａｔａ１を指定すると、ＰｒｉｎｔＤａｔａ１が同時にＭＦＰ−ａ、ＭＦＰ−ｂ、ＭＦＰ−ｃに送信される。ＰｒｉｎｔＤａｔａ１を受信した各装置は印刷処理を開始する。以後各装置で行なわれる印刷処理は、実施例１で説明した動作と同一であるため、詳細な説明は省略する。各装置では印刷処理とともに、レンダリングおよび印刷処理に必要な処理予測時間を、ドキュメントに吹かされているメタデータと自装置の能力情報から算出する。ＰｒｉｎｔＤａｔａ１からＭＦＰ−ａ、ＭＦＰ−ｂ、ＭＦＰ−ｃが算出した処理予測時間を、図２２に示す。ＰｒｉｎｔＤａｔａ１は、レンダリング処理量４０００、ページ数１２０のドキュメントである。ＭＦＰ−ａはレンダリング能力４００、エンジン速度４０ｐｐｍであるので、処理時間はそれぞれ１０分と３分である（予測結果２２０１）。ＭＦＰ−ｂはレンダリング能力２０００、エンジン速度１２０ｐｐｍなので処理時間はレンダリング２分、印刷１分である（予測結果２２０２）。ＭＦＰ−ｃはレンダリング能力２００、エンジン速度２０ｐｐｍなので、処理時間はレンダリング２０分、印刷１０分である（予測結果２２０３）。
【０１１２】
さらに各装置ではレンダリング、印刷の進行にともなって残り処理時間の表示あるいは通知の更新を行ないつつＰｒｉｎｔＤａｔａ１の印刷処理を完了する。
【０１１３】
なお、ＭＦＰ−ａ、ＭＦＰ−ｂ、ＭＦＰ−ｃではＰｒｉｎｔＤａｔａ１を印刷完了後もＨＤＤに保持して再利用することも可能である。以後に再度ＰｒｉｎｔＤａｔａ１を印刷または他装置に送信する場合でも、メタデータに付加されている処理量指数、ページ数の情報は繰り返し再利用することができる。また、ＰｒｉｎｔＤａｔａ１を送信する側の装置、例えば本実施例のＭＦＰ−Ｓは、出力先の装置によって処理量指数を再計算する必要がない。そのため出力先装置が多数になっても、各装置の処理能力が異なっても、ＭＦＰ−Ｓの処理量は増大することなく一定である。
【０１１４】
（実施例３）
本実施例では、生成済みのドキュメント同士を合成した場合にも、ドキュメント生成時にメタデータとして付加された、処理量指数が処理時間予測にそのまま利用可能であることを説明する。
【０１１５】
図２５は、ドキュメント１とドキュメント２を合成して、ドキュメント３を合成する場合の、処理量を示すメタデータを示したものである。前述したとおり、ドキュメントに付加されているレンダリング処理量は特定の装置に依存しない指数である。そのため、処理量を再計算することなく、単純な加算によって合成した新規ドキュメントの処理量指数（およびページ数）を算出することが可能である。
【０１１６】
ドキュメント１はレンダリング処理量（ＰｒｏｃＩｎｄｅｘ）４０００、ページ数１２０のドキュメントであり、ドキュメント２はレンダリング処理量１０００、ページ数１０である。両者を合成する場合、実際に印刷されるデータであるベクタデータ部分とともに、メタデータ部も合成する。新たに生成されるドキュメント３のメタデータのトータル情報部ＭＡに保持するレンダリング処理量、ページ数は、合成元のドキュメントのそれを単純に加算したものである。このように新しく合成されたドキュメントの処理量指数、ページ数は、実施例１および実施例２のケースにおいても同様に利用可能である。また、合成されたドキュメントをさらに別のドキュメントと合成した場合にも、ベクタデータ内容を解析するような複雑な処理を行なうことなく、簡単に処理量を算出できるのである。
【０１１７】
（他の実施形態）
以上、実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、スキャナ、プリンタ、ＰＣ、複写機、複合機及びファクシミリ装置の如くである。
【０１１８】
本発明は、前述した実施形態の各機能を実現するソフトウェアプログラムを、システム若しくは装置に対して直接または遠隔から供給し、そのシステム等に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
【０１１９】
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
【０１２０】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１２１】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ）などもある。
【０１２２】
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネット／イントラネットのウェブサイトからダウンロードしてもよい。すなわち、該ウェブサイトから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよいのである。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるウェブサイトからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明の構成要件となる場合がある。
【０１２３】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネット／イントラネットを介してウェブサイトから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
【０１２４】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
【０１２５】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。
【図面の簡単な説明】
【０１２６】
【図１】本発明の一実施例の印刷装置（ＭＦＰ）の構造を示す側断面図である。
【図２】実施形態における各機器のコントロールユニットの構成例を示すブロック図である。
【図３】実施形態におけるシステム構成の一例を示す図である。
【図４】実施形態におけるコントローラソフトウェアの構成の一例を示すブロック図である。
【図５】実施形態における操作部に表示される画面の一例を示す図である。
【図６】実施形態における操作部に表示される画面の一例を示す図である。
【図７】実施形態における操作部に表示される画面の一例を示す図である。
【図８】実施形態におけるベクトル化処理の領域分離の一例を表す図である。
【図９】実施形態におけるスキャン画像からのドキュメント生成のデータフローを示す図である。
【図１０】実施形態におけるプリンタドライバからのドキュメント生成のデータフローを示す図である。
【図１１】実施形態におけるメタデータ生成のデータフローを示す図である。
【図１２】実施形態におけるＰＤＬプリントのデータフローを示す図である。
【図１３】実施形態における入力データからのドキュメント生成のデータフローを示す図である。
【図１４】実施形態におけるドキュメントの印刷処理のフローを示す図である。
【図１５】実施形態におけるＰＤＬデータの処理フローを示す図である。
【図１６】実施形態におけるドキュメントのデータ構造を示す図である。
【図１７】実施形態におけるドキュメントの格納構造を示す図である。
【図１８】実施形態におけるドキュメントデータの具体例を示す図である。
【図１９】実施形態における処理量が異なるドキュメント印刷が行なわれるシステム構成を示す図である。
【図２０】実施形態におけるＰＤＬデータの印刷処理時の詳細を示すフロー図である。
【図２１】実施形態における処理量が異なるドキュメントから予測される処理時間の計算例である。
【図２２】実施形態における処理能力が異なる装置でそれぞれ予測される処理時間の計算例である。
【図２３】実施形態におけるドキュメント保存を行なうシステム構成の図である。
【図２４】実施形態における処理能力が異なる装置に同時印刷するシステムの構成図である。
【図２５】実施形態におけるドキュメントの合成を示す図である。
【符号の説明】
【０１２７】
２００  コントロールユニット
２０１  スキャナ
２０２  プリンタエンジン
２１０  操作部
１０１０  システム制御部
１１０１  プロトコル制御部
１１０２  ベクタデータ生成部
１１０３  メタデータ生成部
１１０４  ＰＤＬ解析部
１１０５  データ描画部
１１０６  ページメモリ
１０２０  パネル入出力制御部
１０３０  ドキュメント記憶部
１３００  出力制御部
１４００  プリンタエンジン部
１５００  スキャン制御部
ＭＡ  メタデータ（トータル情報）
【図１】
2008186253.tif 000003
【図２】
2008186253.tif 000004
【図３】
2008186253.tif 000005
【図４】
2008186253.tif 000006
【図５】
2008186253.tif 000007
【図６】
2008186253.tif 000008
【図７】
2008186253.tif 000009
【図８】
2008186253.tif 000010
【図９】
2008186253.tif 000011
【図１０】
2008186253.tif 000012
【図１１】
2008186253.tif 000013
【図１２】
2008186253.tif 000014
【図１３】
2008186253.tif 000015
【図１４】
2008186253.tif 000016
【図１５】
2008186253.tif 000017
【図１６】
2008186253.tif 000018
【図１７】
2008186253.tif 000019
【図１８】
2008186253.tif 000020
【図１９】
2008186253.tif 000021
【図２０】
2008186253.tif 000022
【図２１】
2008186253.tif 000023
【図２２】
2008186253.tif 000024
【図２３】
2008186253.tif 000025
【図２４】
2008186253.tif 000026
【図２５】
2008186253.tif 000027