(57)【要約】　　　（修正有）【課題】エラーリカバリ用に保存されるデータをできるだけ小さくしつつ、所定のスループットを維持することができる画像形成装置及び方法を提供する。【解決手段】ホストから送信される描画データが印刷できなった場合に前記印刷できなかった描画データを再度印刷するエラーリカバリ機能を備えた画像処理装置であって、中間形式データと、圧縮フレームデータとを格納するメモリと、保存データ選択処理部と、当該保存データ選択処理部が選択した前記保存データの種類によって、前記保存データ選択処理部によって選択されなかった前記中間形式データと前記圧縮フレームデータのうちの他方である非保存データのメモリ領域を解放するタイミングを制御する制御部を有することを特徴とする画像処理装置を提供する。【選択図】　　　　　図１
2004139414.tif 000002
【特許請求の範囲】
【請求項１】
ホストから送信される描画データが印刷できなった場合に前記印刷できなかった描画データを再度印刷するエラーリカバリ機能を備えた画像処理装置であって、
前記描画データを所定の形式のコードで表現した中間形式データと、当該中間形式データに基づいて生成されると共にビデオデータを生成するための基礎となる圧縮フレームデータとを格納するメモリと、
前記中間形式データの加工を伴わずに、前記中間形式データと前記圧縮フレームデータのうちの一方を、前記メモリに格納されるべきエラーリカバリ用の保存データとして選択する保存データ選択処理部と、
当該保存データ選択処理部が選択した前記保存データの種類によって、前記保存データ選択処理部によって選択されなかった前記中間形式データと前記圧縮フレームデータのうちの他方である非保存データのメモリ領域を解放するタイミングを制御する制御部を有することを特徴とする画像処理装置。
【請求項２】
前記保存データ選択処理部は、保存データのサイズの最大値をしきい値として保持し、前記圧縮フレームデータのサイズが前記しきい値よりも小さい場合は前記圧縮フレームデータを前記保存データとして選択し、前記しきい値よりも大きい場合は前記中間形式データを前記保存データとして選択することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記保存データ選択処理部は、前記中間形式データから前記圧縮フレームデータを生成するまでの処理時間に対するしきい値に対して、各描画データに対して前記圧縮フレームデータを生成までの処理時間が大きい場合には前記圧縮フレームデータを前記保存データとして選択し、小さい場合には前記中間形式データを選択することを特徴とする請求項１記載の画像処理装置。
【請求項４】
ホストから送信される描画データが印刷できなった場合に前記印刷できなかった描画データを再度印刷するエラーリカバリ機能を備えた画像処理方法であって、
前記描画データを所定の形式のコードで表現した中間形式データを生成し、メモリに格納するステップと、
前記メモリに格納された前記中間形式データを描画して圧縮フレームデータを生成し、前記メモリに格納するステップと、
前記メモリに格納された前記中間形式データと前記圧縮フレームデータのうちサイズが小さい方をエラーリカバリ用の保存データとして選択するステップと、前記メモリに格納された前記圧縮フレームデータから印刷用のビデオデータを生成して出力するステップと、
前記保存データの種類によって、前記メモリにおける前記中間形式データ及び前記圧縮フレームデータのそれぞれのメモリ領域を解放するタイミングを制御するステップとを有することを特徴とする画像処理方法。
【請求項５】
請求項４記載の画像処理方法を実行するためのプログラム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、プリンタなどの画像処理装置及び方法に係り、特に、ホストから送信される描画データが印刷できなった場合に前記印刷できなかった描画データを再度印刷するエラーリカバリ機能を備えた画像処理装置及び方法に関する。本発明は、カラー画像データを印刷する画像処理装置及び方法に好適である。
【０００２】
【従来の技術】
最近のプリンタのカラー化と高速化に伴い、プリンタのファームウェアコントローラで処理するデータ量が増大してきた。例えば、カラープリンタでＣＭＹＫ３２ｂｉｔデータの場合、Ａ４サイズで１頁当たり１２８Ｍバイトのメモリ容量が必要であり、かつ、高スループットが要求されている。また、プリンタで紙詰まり（即ち、ジャム）などのエラーが発生した場合、エラーが発生したページから再度印刷する必要がある。かかる処理はエラーリカバリと呼ばれているが、そのためには印刷した紙が完全に排紙完了するまでページデータを保持しておかなければならない。２０ｐｐｍ以上の高速なプリンタでは、プリンタエンジンの性能を確保するためにプリンタ内部に３〜４ページ分のページデータを保持することが必要となる。複数ページをメモリに保持するために、各ページデータのサイズを縮小して（圧縮など）保持する方法も用いられているが、ページデータ縮小のために余分な処理が必要となりかえって処理が遅くなってしまう。以上から、プリンタのファームウェアコントローラでは、処理及びメモリの使用を効率化し、所期のスループットを維持することが必要となる。
【０００３】
かかる要求に対し、ホストから送信される描画データを前段でコンパクトな中間形式データ（Ｄｉｓｐｌａｙ　Ｌｉｓｔなど）に変換して蓄積し、最終ビットマップデータ（通常はメモリ資源節約のため圧縮して圧縮フレームデータにする）は後段の処理で作成する、中間形式データを採用した処理方式が既に提案されている。中間形式データは、印刷コマンド又は印刷コマンドを解釈する際の中間コード、即ち、印刷情報が、グラフィックス又は図形データか文字データなどのデータの種類、データの格納場所、ページの描画位置などを識別するコードを含むインデックスデータである。
【０００４】
以下、図７乃至図９を参照して、かかる処理方式について説明する。
【０００５】
図７は従来方式を実現するための制御系の概略ブロック図である。５０１はデータ解析部であり、ホストから送信された描画データを解析して中間形式データを生成する。データ解析部では、中間形式データを生成するために、文字・図形の描画データは図形プリミティブコマンド（台形及び矩形などのベクターコマンド）に変換し、イメージの描画データはそのままイメージデータとして保持する。このため、描画データ全体をビットマップデータで保持するのに比べて、かなりコンパクトなサイズでページデータを保持することができる。例えば、文字や図形データの場合１頁あたり２００〜３００ｋバイトである。５０２は中間データ描画部であり、データ解析部５０１で生成された中間形式データを描画して圧縮フレームデータ（ビットマップデータ）を生成する。５０３は印刷部であり、中間データ描画部５０２で生成された圧縮フレームデータをビデオデータとしてエンジン５０５に送信する。５０４は印刷制御部であり、中間形式データ及び圧縮フレームデータのメモリ解放を行う。
【０００６】
図８は、従来方式における中間形式データのデータサイズが小さい場合のメモリの状態を示す模式図である。ホストから送信される描画データは、文字及び図形が中心である。図８（ａ）は中間形式データを生成した時点でのメモリ空間の状態である。図８（ｂ）は圧縮フレームデータを生成した時点でのメモリ空間の状態である。図８（ｃ）は圧縮フレームデータがメモリ解放された時点でのメモリ空間の状態である。図８に示すように、従来は、中間形式データをエラーリカバリ用データとして保持し、圧縮フレームデータはビデオ転送終了時にメモリから解放されることで空きメモリ領域が大きくなり以降のページを連続して処理することが可能となる。
【０００７】
【発明が解決しようとする課題】
従来の方式は、このように、中間形式データをエラーリカバリ用の保存データとして常に保持していた。しかし、インターネットやディジタルカメラの普及などに伴い、カラープリンタでは従来の文字や図形に加えてカラー画像としてのイメージデータを印刷する機会が増えてきた。このため、図９に示すように、ホストから送信される描画データがサイズの大きいイメージデータの場合、中間形式データもサイズが、圧縮フレームデータよりも大きくなってしまう場合がでてきた。ここで、図９は、従来方式における中間形式データのデータサイズが大きい場合のメモリの状態を示す模式図である。図９（ａ）は中間形式データを生成した時点でのメモリ空間の状態である。図９（ｂ）は圧縮フレームデータを生成した時点でのメモリ空間の状態である。図９（ｃ）は圧縮フレームデータがメモリ解放された時点でのメモリ空間の状態である。
【０００８】
中間形式データのサイズが圧縮フレームデータよりも大きい場合には空きメモリ容量が少なくなり、次のページを連続して処理できなくなるという問題が発生する。即ち、現在印刷しているページが排紙完了して中間形式データがメモリ解放されるまで待たなければならなくなる。その結果、メモリ容量が不足するか、またはスループットが遅くなるという問題を招く。
【０００９】
一方、中間形式データのサイズが大きい場合は中間形式データ自体を圧縮してサイズを小さくする方式も考えられる。しかし、この場合、描画時に、圧縮された中間形式データを解凍しながらビットマップに描画しなければならないため、メモリ効率は良くなるがスループットが低下してしまう。特開平６年２５３０８８号公報に開示されたイメージデータを保存データとして選択して圧縮及び解凍する技術も同様な問題がある。
【００１０】
更に、特開平６年１７１１６０号公報に開示されているように、ページをバンドに分割し、バンド単位で中間データ及び圧縮バンド（フレーム）を作成し、中間データサイズが大きい場合は圧縮バンドを選択し、中間データ及び圧縮バンド混在でエラーリカバリ用データを保持する方式も提案されている。しかし、この方式では、中間データを一旦描画して圧縮バンドを作成した後、両者を比較し、保存に有利な方のデータを保存データとして選択しているため、保存データを確定するまでに余分は描画処理を必要とし、スループットの低下をもたらす。
【００１１】
そこで、エラーリカバリ用に保存されるデータをできるだけ小さくしつつ、所定のスループットを維持することができる画像形成装置及び方法を提供することを本発明の例示的な目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するために、本発明の画像形成装置は、ホストから送信される描画データが印刷できなった場合に前記印刷できなかった描画データを再度印刷するエラーリカバリ機能を備えた画像処理装置であって、前記描画データを所定の形式のコードで表現した中間形式データと、当該中間形式データに基づいて生成されると共にビデオデータを生成するための基礎となる圧縮フレームデータとを格納するメモリと、前記中間形式データの加工を伴わずに、前記中間形式データと前記圧縮フレームデータのうちの一方を、前記メモリに格納されるべきエラーリカバリ用の保存データとして選択する保存データ選択処理部と、当該保存データ選択処理部が選択した前記保存データの種類によって、前記保存データ選択処理部によって選択されなかった前記中間形式データと前記圧縮フレームデータのうちの他方である非保存データのメモリ領域を解放するタイミングを制御する制御部を有することを特徴とする。かかる画像形成装置は、従来から作成される中間形式データと圧縮フレームデータのうちどちらかをそのまま保存データとして使用し、余分なデータ加工は行わずにエラーリカバリに備えている。また、かかる画像形成装置は、保存データを中間形式データに固定せずに状況によっては圧縮フレームデータを選択可能であること、フレーム作成完了時、ビデオ転送終了時、排紙完了時などメモリ領域を開放するタイミングを制御することにより、メモリ領域の不足を防止してスループットの低下を防止することができる。更に、かかる画像形成装置は、中間形式データの圧縮及び解凍などの余分な作業を行わないことにより、スループットの低下を防止することができる。
【００１３】
例えば、前記保存データ選択処理部は、保存データのサイズの最大値をしきい値として保持し、前記圧縮フレームデータのサイズが前記しきい値よりも小さい場合は前記圧縮フレームデータを前記保存データとして選択し、前記しきい値よりも大きい場合は前記中間形式データを前記保存データとして選択する。このように、保存データ選択処理部は、データ量に応じて保存データを選択することができる。同様に、例えば、前記保存データ選択処理部は、前記中間形式データから前記圧縮フレームデータを生成するまでの処理時間に対するしきい値に対して、各描画データに対して前記圧縮フレームデータを生成までの処理時間が大きい場合には前記圧縮フレームデータを前記保存データとして選択し、小さい場合には前記中間形式データを選択する。このように、保存データ選択処理部は、処理時間に応じて保存データを選択してもよい。
【００１４】
例えば、前記制御部は、保存データ選択処理部が前記中間形式データを前記保存データとして選択した場合には、前記圧縮フレームデータに対応する前記ビデオデータの送信が完了した時に前記圧縮フレームデータを格納している前記メモリの領域を解放する。また、例えば、前記制御部は、保存データ選択処理部による前記圧縮フレームデータを前記保存データとして選択した場合には、前記中間形式データに対応する前記圧縮フレームデータが作成された時に前記中間形式データを格納している前記メモリの領域を解放する。
【００１５】
本発明の別の側面としての画像形成方法は、ホストから送信される描画データが印刷できなった場合に前記印刷できなかった描画データを再度印刷するエラーリカバリ機能を備えた画像処理方法であって、前記描画データを所定の形式のコードで表現した中間形式データを生成し、メモリに格納するステップと、前記メモリに格納された前記中間形式データを描画して圧縮フレームデータを生成し、前記メモリに格納するステップと、前記メモリに格納された前記中間形式データと前記圧縮フレームデータのうちサイズが小さい方をエラーリカバリ用の保存データとして選択するステップと、前記メモリに格納された前記圧縮フレームデータから印刷用のビデオデータを生成して出力するステップと、前記保存データの種類によって、前記メモリにおける前記中間形式データ及び前記圧縮フレームデータのそれぞれのメモリ領域を解放するタイミングを制御するステップとを有することを特徴とする。かかる方法は、保存データを中間形式データと圧縮フレームデータのサイズの小さい方を保存データとして選択するため、保存データに必要なメモリの領域のサイズを小さくすることができる。これにより、スループットの低下を防止することができる。前記エラーリカバリの際に、前記メモリに格納された前記保存データから前記圧縮フレームデータを取得して前記出力ステップを再度行うことを特徴とする。この結果、エラーリカバリ機能を維持することができる。上記画像処理方法を実行するためのプログラムも本発明の一側面を構成する。
【００１６】
本発明の他の目的と更なる特徴は、以下、添付図面を参照して説明される実施例において明らかになるであろう。
【００１７】
【発明の実施の形態】
以下、図１を参照して、カラー画像形成装置１０について説明する。ここで、図１は、カラー画像形成装置１０の概略側面断面図である。カラー画像形成装置１０は、カラープリンタとして具体化され、プリンタコントロールユニット１００と、４つの画像形成ユニット２００ａ乃至２００ｄと、用紙引き込み部３１０と、用紙搬送部３２０と、定着器３３０と、スタッカ３５０と、操作パネル３６０と、電源ユニット３７０とを有する。カラー画像形成装置１０は、ＹＭＣＫの４色を使用しており、黒（Ｋ）が画像形成ユニット２００ａ、青（Ｃ）が画像形成ユニット２００ｂ、赤（Ｍ）が画像形成ユニット２００ｃ、黄（Ｙ）が画像形成ユニット２００ｄにそれぞれ割り当てられている。なお、特に断らない限り、参照番号２００は参照番号２００ａなどを総括するものとする。もちろん、本発明はこれらに更に数色加わっても適用可能である。また、カラー画像形成装置１０は片面印刷と両面印刷の両方に適用できることはいうまでもない。
【００１８】
用紙引き込み部３１０は、複数枚の印刷用紙Ｐを収納する用紙カセット３１２から最上位の用紙Ｐを取り出して装置内部の用紙搬送部３２０へ供給する。用紙引き込み部３１０は、用紙カセット３１２と、給紙ローラ３１４とを有する。用紙カセット３１２は複数枚の用紙Ｐを収納する。給紙ローラ３１４は、用紙カセット３１２にセットされている用紙Ｐの最上位の用紙Ｐに当接してこれを１枚ずつ繰り出す。
【００１９】
用紙搬送部３２０は、用紙引き込み部３１０から用紙Ｐを受け取って、これを用紙搬送路３４５に沿って装置上部のスタッカ３５０まで搬送する。用紙搬送部３２０は、紙送りローラ３２２と、搬送ベルト３２４と、搬送ベルト３２４を回転させるローラ３２６とを有する。用紙Ｐは紙送りローラ３２２によって搬送ベルト３２４に搬送される。その後、用紙Ｐは、ローラ３２６によって図１の左回り（反時計回り）に回転している搬送ベルト３２４に静電吸着し、画像形成ユニット２００の静電ドラム２１０とベルト３２４との間を搬送され、定着器３３０を経て、搬送ローラ３２６によってスタッカ３５０に排出される。
【００２０】
図１に示すように、好ましくは、搬送ベルト３２４の下側のベルト面にはベルト移動方向に直行する方向にセンサ３２９が設置される。センサ３２９は搬送ベルト３２４のレジストマークを光学的に読み取って搬送ベルト３２４の位置ずれを検出する。
【００２１】
画像形成ユニット２００は印刷用紙Ｐに所望のトナー像を形成（転写）する機能を有する。図１に示すように、４つの画像形成ユニット２００ａ乃至２００ｄは直線的に整列している。画像形成ユニット２００は、静電ドラム２１０と、図示しない前帯電器と、露光装置としてのＬＥＤユニット２２５と、現像装置２３０と、転写ローラ２４０と、図示しないクリーニング部とを有する。
【００２２】
なお、ここでは、ＹＭＣＫ４色毎に静電ドラムを持つ構成（タンデム方式）であるが、静電ドラムを１つ搭載する構成（１ドラム方式）に対しても本発明は適用可能である。
【００２３】
静電ドラム２１０は回転が可能なドラム状導体支持体上に感光性誘電体層を有し、像保持部材として使用される。静電ドラム２１０は、例えば、表面に機能分離型有機感光体を厚さ約２０μｍに塗布したアルミニウム製ドラムから構成され、外径３０ｍｍを有して矢印方向に周速度７０ｍｍ／ｓで回転する。
【００２４】
図示しない前帯電器は、例えば、スコロトロン帯電器から構成され、静電ドラム２１０の表面に一定の電荷量（例えば、約−７００Ｖ）を与える。露光装置２２５は静電ドラム２１０を一様に（例えば、−６００Ｖに）帯電し、ビデオ信号に応じてＬＥＤ光を発射し、静電ドラム２１０上に静電潜像を形成する。露光装置２２５は、当業界で周知のいかなる露光方式（例えば、機械走査方式や固定走査方式）も採用することができ、ＬＥＤから構成される。
【００２５】
現像装置２３０は、静電ドラム２１０に形成された潜像をトナー像として可視化する機能を有する。現像装置２３０は、典型的に、図示しない現像ローラ、リセットローラ、及び、トナーカートリッジを有する。本実施形態では、現像剤にＹＭＣＫの４色のトナーを使用する。現像剤は一成分、二成分（即ち、キャリアを含む）とを問わず、磁性、非磁性を問わない。トナーカートリッジはトナーを貯蔵し、リセットローラにトナーを供給する。リセットローラは現像ローラに当接してトナーを現像ローラに供給する。現像ローラは静電ドラム２１０に接触又は非接触に配置され、静電気力を利用して静電ドラム２１０にトナーを供給する。この結果、静電ドラム２１０上にトナー像が形成される。現像ローラ上に残留した未使用トナーは、リセットローラによって回収され、トナーカートリッジ内へと戻される。
【００２６】
転写ローラ２４０は、静電的にトナーを吸着するような電界を発生させ、転写電流を利用して中間転写ベルト３２４上に吸着しているトナー像を用紙Ｐに転写する。図示しないクリーニング部は転写後に静電ドラム２１０上に残っているトナーを回収し廃棄するか、必要があれば、回収したトナーをトナーカートリッジに返却する。また、クリーニング部は静電ドラム２１０上のごみを回収する機能も有する。クリーニング部は静電ドラム２１０のトナーと帯電を除去するために磁気やゴム摩擦を含む各種の方法を利用することができる。
【００２７】
定着器３３０は用紙Ｐにトナー像（トナー重層）を永久的に固着させる機能を有する。転写後のトナーは用紙Ｐに弱い力で付着しているだけであるから簡単に剥がれ落ちる。そこで、定着器３３０が、加圧及び加熱によりトナーを融溶して用紙Ｐに浸透させる。定着器３３０は、一対の定着ローラ３３２を有する。一対の定着ローラ３３２は、互いに平行かつ接触するように配置され、それらの間にはニップが形成される。定着ローラ３３２は、例えば、フッ素系ゴムやシリコンゴム等から構成される。定着ローラ３３２は熱源としてハロゲンランプ等を内蔵し、例えば、１７０℃乃至１９０℃に加熱することができる。定着ローラ３３２の表面温度を検出するために図示されていないサーミスタが設置されている。更に、一対の定着ローラ３３２の間には、例えば、３３ａｔｍの高圧が付加されるようになっている。これにより、用紙Ｐ上に転写したトナーは高温、高圧によって定着される。
【００２８】
スタッカ３５０には印刷終了後の用紙Ｐが排出される。操作パネル３６０には、装置を操作するためのスイッチなどが配置されている。電源ユニット３７０は、装置１０に電源を供給する。
【００２９】
以下、図２を参照して、カラー画像形成装置１０の制御系について説明する。ここで、図２は、カラー画像形成装置１０の制御系のブロック図である。制御系は、プリンタコントローラ１００と、プリンタエンジン（又はメカ制御回路部）１９０とを有する。
【００３０】
プリンタコントローラユニット（以下、単に「コントローラ」という。）１００は、カラー画像形成装置１０の裏面等に設けられたプリンタケーブル１２などを介してコンピュータ、ＬＡＮ等のネットワークその他の外部装置（以下、単に「ホスト」という。）１に接続されている。ホスト１が典型的なパーソナルコンピュータにより構成される場合、ホスト１は、ウィンドウズなどのＯＳによって構築され、各種アプリケーションとプリンタドライバをサポートする。
【００３１】
コントローラ１００は、コントローラボードとして具体化され、ホスト１から送信されるデータをビデオデータに変換し、エンジン１９０に出力する。ビデオデータを生成するに当たり、コントローラ１００は、ホスト１からのデータに対しコマンド解析処理、描画処理、色変換処理、ディザ処理、ＰＷＭ処理、圧縮処理を行う。コマンド解析処理ではコントローラ１００は、処理の分析、割り当て、内部言語への変換を行う。描画処理では、コントローラ１００は、画像の座標変換、図形描画などを行う。色変換処理では、コントローラ１００は、ＲＧＢから印刷に用いる色であるＹＭＣＫへの変換を行う。ディザ処理（スクリーン処理又は面積階調処理と呼ばれる場合もある。）では、コントローラ１００は、ＹＭＣＫ各色毎に多値のデータを濃度に応じた面積のドットパターンに変換する。
【００３２】
コントローラ１００は、図２に示すように、データ解析部１１０、印刷制御部１１２、メモリ制御部１１４、保存データ選択処理部１１６、中間データ描画部１１８、ＣＰＵ１２０、ＲＯＭ１２２、ＲＡＭ１２４、印刷部１２６を有し、各部をバス１２８で接続している。
【００３３】
データ解析部１１０は、ホスト１から送信された描画データを解析して中間形式データを生成する。データ解析部１１０は、中間形式データを生成するために、文字・図形の描画データは図形プリミティブコマンド（台形及び矩形などのベクターコマンド）に変換し、イメージの描画データはそのままイメージデータとして保持する。このため、描画データ全体をビットマップデータで保持するのに比べて、かなりコンパクトなサイズでページデータを保持することができる。データ解析部１１０は、作成された中間形式データを、ＲＡＭ（メモリ）１２４に格納する。
【００３４】
印刷制御部１１２は、中間形式データ及び圧縮フレームデータのメモリ１２４の解放を行う。また、印刷制御部１１２は、印刷部１２６に印刷起動を要求し、印刷起動後、中間データ描画部１１８に対して圧縮フレームデータの作成を要求する。印刷制御部１１２は、ビデオデータの送信も要求する。
【００３５】
メモリ制御部１１４は保存データ選択処理部１１６に対して、エラーリカバリ用保存データの選択要求を行うと共に、保存データ選択処理部１１６が選択したデータの種類によってメモリ１２４の領域の解放のタイミングを制御し、印刷制御部１１２に指示を出す。
【００３６】
保存データ選択処理部１１６は、中間形式データと圧縮フレームデータのいずれをエラーリカバリ用保存データとして選択するか選択処理を行う。本実施形態では、両者のデータサイズを比較し、サイズの小さい方をエラーリカバリ用保存データとして選択する。
【００３７】
中間データ描画部１１８は、データ解析部１１０によって生成された中間形式データを描画して圧縮フレームデータ（ビットマップデータ）を生成する。中間データ描画部１１８は、圧縮フレームデータを作成しＲＡＭ１２４に格納する。
【００３８】
ＣＰＵ１２０は、各部の動作を制御する。ＲＯＭ１２２は、図３や図６を参照して後述される本実施形態のエラーリカバリ処理方法を格納する。メモリ１２４は、中間形式データ及び圧縮フレームデータを一時的に保存する。即ち、メモリ１２４は、エラーリカバリ用の保存データを保存すると共に印刷用のデータも一時的に保存する。
【００３９】
印刷部１２６は、中間データ描画部１１８によって生成された圧縮フレームデータをビデオデータ又はラスタデータとしてエンジン１９０に送信する。また、印刷部１２６は、エンジン１９０に対して印刷起動を行う。
【００４０】
プリンタエンジン１９０は、印刷起動命令に応答して、ウォーミングアップを開始する。プリンタエンジン１９０は図示しないＭＰＵを有する。ＭＰＵは、コントローラ１００に接続され、例えば、描画データとしてビデオデータをコントローラ１００から受信する。プリンタエンジン１９０の動作は操作パネル３６０に表示される。ＭＰＵは、電源ユニット３７０と、ＬＥＤユニット２２５用の露光パワー制御部に接続され、これらを制御する。ＭＰＵは、用紙サイズ（幅）、用紙の種類（厚紙か普通紙か、異なる製造メーカーにより製造された印刷用紙など）、解像度などの情報を含む印字データや図示しない各種センサの出力結果を得て、図示しないＲＯＭに格納されたプログラムに従って各種の制御信号を生成する。
【００４１】
以下、図３乃至図５を参照して、カラー画像形成装置１０の第１の実施形態の動作について説明する。ここで、図３は、カラー画像形成装置１０の第１の実施形態の動作を示すフローチャートである。図４及び図５は、図３の処理のメモリ１２４の状態を示す模式図であり、図４は中間データのサイズが圧縮フレームサイズよりも小さい場合に対応し、図５は中間データのサイズが圧縮フレームのサイズよりも大きい場合に対応する。なお、図３に示すフローチャートはファームウェア又はソフトウェアとしてプログラム化され、本発明の一側面を構成する。これは後述する図６に示すフローチャートも同様である。
【００４２】
まず、ホスト１から描画データを受信すると（ステップ１００２）、データ解析部１１０がこれを解析し、図４（ａ）に示すように、中間形式データを生成する（ステップ１００４）。データ解析部１１０は、作成された中間形式データを、ＲＡＭ（メモリ）１２４に格納し、その後、印刷制御部１１２へ中間形式データの作成完了を通知する。印刷制御部１１２は、これに応答して印刷部１２６に印刷起動を要求する。これに応答して、印刷部１２６は、エンジン１９０に対して印刷起動を行う。プリンタエンジン１９０は、印刷起動命令に応答して、ウォーミングアップを開始する（ステップ１００６）。
【００４３】
一方、印刷起動後に、印刷制御部１１２は、中間データ描画部１１８に対して圧縮フレームデータの作成を要求する。これに応答して、中間データ描画部１１８は、ＲＡＭ１２４から中間形式データを取得及びこれを描画して圧縮フレームデータ（ビットマップデータ）を生成する（ステップ１００８）。中間データ描画部１１８は、図４（ｂ）に示すように、圧縮フレームデータを作成するとＲＡＭ１２４に格納する。圧縮フレームデータ作成が完了すると、中間データ描画部１１８は、印刷制御部１１２及びメモリ制御部１１４に圧縮フレームデータの作成完了を通知する。一方、データ解析部１１０は、ホスト１からの２頁目の描画データを解析して中間形式データの生成を開始する。この時、エンジン１９０はウォーミングアップ中である。
【００４４】
（１頁目の）圧縮フレームデータの作成が完了した時点で、メモリ制御部１１４は、保存データ選択処理部１１６に対してエラーリカバリ用の保存データの選択処理を要求する。これに応答して、保存データ選択処理部１１６は、中間形式データと圧縮フレームデータのデータサイズの比較を行う（ステップ１０１０）。この結果、保存データ選択処理部１１６は、中間形式データと圧縮フレームデータのいずれかのデータを選択し、その結果をメモリ制御部１１４に通知する。
【００４５】
保存データ選択処理部１１６が、例えば、描画データが文字や図形中心である場合、保存データ選択処理部１１６は中間形式データが圧縮フレームデータよりも小さいと判断する。その結果、保存データ選択処理部１１６は、中間形式データをエラーリカバリ用の保存データとして選択する（ステップ１０１２）。
【００４６】
次に、印刷制御部１１２は印刷部１２６に対してビデオデータの送信を要求する。これに応答して、印刷部１２６は、圧縮フレームデータをＲＡＭ１２４から読み出し、ビデオデータ又はラスタデータとしてエンジン１９０に送信する（ステップ１０１４）。ここで、データ解析部１１０は、２頁目の中間データの生成を完了する。
【００４７】
印刷命令により用紙カセット３１２に載置された一又は複数枚の用紙Ｐの最上位の用紙Ｐが給紙ローラ３１４によって繰り出され、用紙ガイド３１６によって搬送路３４５に案内される。その後、用紙Ｐは紙送りローラ３２２、搬送ベルト３２４、ローラ３２６によって画像形成装置２００ｄ、２００ｃ、２００ｂ及び２００ａの順番で、所望の画像に応じたイエロー、マゼンタ、シアン及びブラックの順番で形成されたトナー重層を有する。その後、トナー重層は定着器３３０によって用紙Ｐに定着される。定着された用紙Ｐはスタッカ３５０に排出される。
【００４８】
ビデオデータの送信が終了すると（ステップ１０１６）、エンジン１９０から印刷部１２６にビデオデータの送信終了が通知され、印刷部１２６から印刷制御部１１２にビデオデータの送信終了が通知される。印刷制御部１１２は、メモリ制御部１１４に対してビデオデータの送信終了を通知する。この結果、メモリ制御部１１４は、メモリ１２４のメモリ領域の解放を印刷制御部１１２に命令する。換言すれば、メモリ制御部１１４は、非保存データのメモリ領域を解放可能かどうかを判断し、解放可能であれば解放するように印刷制御部１１２に命令する。これに応答して印刷制御部１１２は、図４（ｃ）に示すように、メモリ１２４内の、エラーリカバリ用保存データとして選択されていない非保存データ（即ち、圧縮フレームデータ）のメモリ領域を解放する（ステップ１０１８）。また、データ解析部１１０は、３頁目のデータを解析し、中間形式データの生成を開始する。
【００４９】
印刷用紙Ｐがスタッカ３５０に排出されたことを図示しないセンサが検出すると（ステップ１０２０）、エンジン１９０から印刷部１２６に対して用紙Ｐの排出完了が通知され、印刷部１２６、印刷制御部１１２を経由してメモリ制御部１１４に用紙排出完了が通知される。印刷が正常に完了したため、メモリ制御部１１４はメモリ１２４のメモリ領域の解放を印刷制御部１１２に命令する。これに応答して印刷制御部１１２は、エラーリカバリ用として保存していた中間形式データのメモリ領域をＲＡＭ１２４から解放する（ステップ１０２２）。ここで、データ解析部１１０は、３頁目の中間データの生成を完了する。
【００５０】
このように、エラーリカバリ用にサイズが小さい中間形式データでページデータを保存することによって、メモリ１２４の空き領域を大きく確保することができ、スループットを低下させずに以降のページを連続して処理することができる。
【００５１】
一方、例えば、描画データが巨大なイメージデータの場合、ステップ１００４において、図５（ａ）に示すように、メモリ１２４は大きなサイズの中間形式データを格納し、ステップ１００８において、図５（ｂ）に示すように、圧縮フレームデータを格納する。ステップ１０１０の結果、保存データ選択処理部１１６は、圧縮フレームデータが中間形式データよりも小さいと判断すると、圧縮フレームデータをエラーリカバリ用の保存データとして選択する（ステップ１０２４）。中間形式データはこの時点で不要となるため、メモリ制御部１１４は、メモリ１２４のメモリ領域の解放を印刷制御部１１２に命令する。これに応答して印刷制御部１１２は、図５（ｃ）に示すように、ＲＡＭ１２４の中間形式データ用のメモリ領域を解放する（ステップ１０２６）。換言すれば、メモリ制御部１１４は、保存データ選択処理部１１６が選択を行った時点で非保存データのメモリ領域を解放可能かどうかを判断し、解放可能であれば解放するように印刷制御部１１２に命令する。
【００５２】
次に、印刷制御部１１２から印刷部１２６に対してビデオデータの送信を要求する。印刷部１２６は、圧縮フレームデータをＲＡＭ１２４から読み出し、エンジン１９０してビデオデータを送信する（ステップ１０２８）。ここで、データ解析部１１０は、２頁目の中間データの生成を完了する。
【００５３】
ビデオデータ送信が終了すると（ステップ１０３０）、エンジン１９０から印刷部１２６にビデオデータの送信終了が通知される。印刷部１２６から印刷制御部１１２に対してビデオデータの送信終了を通知する。印刷制御部１１２は、メモリ制御部１１４にビデオデータの送信終了を通知する。この場合、圧縮フレームデータはエラーリカバリ用保存データとして選択されているため、メモリ制御部１１４は解放処理を行わない。
【００５４】
続いて用紙が排出完了すると（ステップ１０３２）、エンジン１９０から印刷部１２６に対して用紙の排出完了が通知され、印刷部１２６、印刷制御部１１２を経由してメモリ制御部１１４に用紙排出完了が通知される。印刷が正常に完了したため、メモリ制御部１１４は、メモリ１２４のメモリ領域の解放を印刷制御部１１２に命令する。これに応答して印刷制御部１１２は、エラーリカバリ用として保存していた圧縮フレームデータのメモリ領域をＲＡＭ１２４から解放する（ステップ１０３４）。ここで、データ解析部１１０は、３頁目の中間データの生成を完了する。
【００５５】
このように、エラーリカバリ用にサイズが小さい圧縮フレームデータでページデータを保存することによって、メモリ１２４の空き領域を大きく確保することができ、スループットを低下させずに以降のページを連続して処理することができる。
【００５６】
図６に、カラー画像形成装置１の第２の実施形態の動作のフローチャートを示す。図６において、図３と同一のステップは同一の参照番号を付して説明を省略する。図６に示す実施形態においては、ステップ１００６とステップ１００８の間に時間計測を開始するステップ１１０２が挿入されていること、ステップ１００８の後に時間計測を終了するステップ１１０４が挿入されていること、ステップ１０１０の代わりにステップ１１０６が設けられている点が図３に示す実施形態と相違する。また、ＲＯＭ１２２は中間形式データから圧縮フレームデータを生成するまでの処理時間に対するしきい値を予め格納している。
【００５７】
ステップ１１０２及び１１０４により、印刷起動後に開始される、中間形式データから圧縮フレームデータを生成するまでの処理時間を計測することができる。かかる経時処理は、例えば、ホスト１のＰＣが通常内蔵している電子時計を使用したり、画像形成装置１０内に図示しない電子時計を設けて、これを使用したりすることによって実現することができる。
【００５８】
ステップ１１０６において、保存データ選択処理部１１６は、ＲＯＭ１２２を参照しながら圧縮フレームデータの生成時間としきい値とを比較し、しきい値より小さければステップ１０１２に移行し、しきい値よりも大きければステップ１０２４に移行する。即ち、本実施形態においては、圧縮フレームデータの生成に時間がかからなければ、中間形式データのサイズが小さいということであるから中間形式データがエラーリカバリ用の保存データとして選択される（ステップ１０１２）。一方、圧縮フレームデータの生成に時間がかかれれば、中間形式データのサイズが大きいということであるから、圧縮フレームデータがエラーリカバリ用の保存データとして選択される（ステップ１０２４）。
【００５９】
以下、エラーリカバリ処理について説明する。ここでは、中間形式データがエラーリカバリ用の保存データであり、図３に示す処理を行っている場合にジャムが発生した場合について説明する。
【００６０】
まず、ビデオデータ転送処理後にエラー（ジャム）が発生すると、エンジン１９０から印刷部１２６にエラー発生が通知される。印刷部１２６は、印刷制御部１１２にエラー発生を通知する。データ解析部１１０は、エラーリカバリ処理を優先するために、処理を待たされる。
【００６１】
ユーザがジャムになった用紙Ｐを除去すると、エンジン１９０から印刷部１２６にエラー解除が通知される。印刷部１２６は、印刷制御部１１２にエラー解除を通知する。データ解析部１１０はエラーリカバリ処理を優先するために、処理を待たされる。
【００６２】
次いで、印刷制御部１１２は印刷部１２６に対して印刷起動を要求する。これにより、印刷部１２６は、エンジン１９０に対して印刷起動（エンジン起動）を行う。エンジン１９０は印刷起動によりウォーミングアップを開始する。但し、データ解析部１１０は、エラーリカバリ処理を優先するために、処理を待たされる。
【００６３】
次に、印刷制御部１１２から中間データ描画部１１８に対して圧縮フレームデータ（ビットマップ）の作成を要求する。中間データ描画部１１８は、中間データをメモリ１２４から読み出し、圧縮フレームデータを生成する。生成した圧縮フレームデータは、メモリ１２４に格納される。エンジン１９０はウォーミングアップ中である。データ解析部１１０は、エラーリカバリ処理を優先するために、処理を待たされる。
【００６４】
続いて、印刷制御部１１２は印刷部１２６にビデオデータの送信開始を要求する（頁１のエラーリカバリ）。印刷部１２６は、エンジン１９０にビデオデータの送信を通知する。メモリ１２４から圧縮フレームデータを読み出してエンジン１９０にビデオデータを送信する。データ解析部１１０は、メモリ１２４がフルであるため、３頁目の中間データ生成中にメモリ待ち状態に陥り処理が待たされている。
【００６５】
ビデオデータの送信が終了すると、エンジン１９０から印刷部１２６にビデオデータの送信終了が通知され、印刷部１２６から印刷制御部１１２にビデオデータの送信終了が通知される。印刷制御部１１２は、メモリ制御部１１４に対してビデオデータの送信終了を通知する。これに応答して、メモリ制御部１１４は、エラーリカバリ用保存データの種類をチェックし、非保存データのメモリ解放が可能かどうか判定する。この例では、非保存データは圧縮フレームデータであるため、メモリ制御部１１４は、メモリ１２４のメモリ領域の解放を印刷制御部１１２に命令する。これに応答して印刷制御部１１２は、メモリ１２４内の圧縮フレームデータのメモリ領域を解放する。データ解析部１１０は、メモリフルで待たされていたが、圧縮フレームデータのメモリ領域が解放されたことによって処理を続行可能となる。
【００６６】
印刷用紙Ｐがスタッカ３５０に排出されたことを図示しないセンサが検出すると、エンジン１９０から印刷部１２６に対して用紙Ｐの排出完了が通知され、印刷部１２６、印刷制御部１１２を経由してメモリ制御部１１４に用紙排出完了が通知される。印刷が正常に完了したため、メモリ制御部１１４はメモリ１２４のメモリ領域の解放を印刷制御部１１２に命令する。これに応答して印刷制御部１１２は、エラーリカバリ用として保存していた中間形式データのメモリ領域をＲＡＭ１２４から解放する。ここで、データ解析部１１０は、３頁目の中間データの生成を完了する。
【００６７】
以下、圧縮フレームデータがエラーリカバリ用の保存データであり、図３に示す処理を行っている場合にジャムが発生した場合について説明する。
【００６８】
まず、ビデオデータ転送処理後にエラー（ジャム）が発生すると、エンジン１９０から印刷部１２６にエラー発生が通知される。印刷部１２６は、印刷制御部１１２にエラー発生を通知する。データ解析部１１０は、エラーリカバリ処理を優先するために、処理を待たされる。
【００６９】
ユーザがジャムになった用紙Ｐを除去すると、エンジン１９０から印刷部１２６にエラー解除が通知される。印刷部１２６は、印刷制御部１１２にエラー解除を通知する。データ解析部１１０はエラーリカバリ処理を優先するために、処理を待たされる。
【００７０】
次いで、印刷制御部１１２は印刷部１２６に対して印刷起動を要求する。これにより、印刷部１２６は、エンジン１９０に対して印刷起動（エンジン起動）を行う。エンジン１９０は印刷起動によりウォーミングアップを開始する。但し、データ解析部１１０は、エラーリカバリ処理を優先するために、処理を待たされる。
【００７１】
続いて、印刷制御部１１２は印刷部１２６にビデオデータの送信開始を要求する（頁１のエラーリカバリ）。印刷部１２６は、エンジン１９０にビデオデータの送信を通知する。メモリ１２４から圧縮フレームデータを読み出してエンジン１９０にビデオデータを送信する。データ解析部１１０は、エラーが解除されたため、３頁目の中間形式データの生成を再開する。
【００７２】
ビデオデータの送信が終了すると、エンジン１９０から印刷部１２６にビデオデータの送信終了が通知され、印刷部１２６から印刷制御部１１２にビデオデータの送信終了が通知される。印刷制御部１１２は、メモリ制御部１１４に対してビデオデータの送信終了を通知する。これに応答して、メモリ制御部１１４は、エラーリカバリ用保存データの種類をチェックし、非保存データのメモリ解放が可能かどうか判定する。この例では、非保存データは既に解放済みであるので解放処理は行われない。データ解析部１１０は、３頁目の中間形式データの生成を完了する。
【００７３】
印刷用紙Ｐがスタッカ３５０に排出されたことを図示しないセンサが検出すると、エンジン１９０から印刷部１２６に対して用紙Ｐの排出完了が通知され、印刷部１２６、印刷制御部１１２を経由してメモリ制御部１１４に用紙排出完了が通知される。印刷が正常に完了したため、メモリ制御部１１４はメモリ１２４のメモリ領域の解放を印刷制御部１１２に命令する。これに応答して印刷制御部１１２は、エラーリカバリ用として保存していた圧縮フレームデータのメモリ領域をＲＡＭ１２４から解放する。
【００７４】
以上、本発明の好ましい実施例を説明したが、本発明はその要旨の範囲内で様々な変形及び変更が可能である。例えば、カラー画像形成装置１０はカラープリンタに限定されず、印刷機能を有するその他の装置、例えば、コピー機、ファックス機を含む。
【００７５】
本出願は更に以下の事項を開示する。
【００７６】
（付記１）　ホストから送信される描画データが印刷できなった場合に前記印刷できなかった描画データを再度印刷するエラーリカバリ機能を備えた画像処理装置であって、前記描画データを所定の形式のコードで表現した中間形式データと、当該中間形式データに基づいて生成されると共にビデオデータを生成するための基礎となる圧縮フレームデータとを格納するメモリと、前記中間形式データの加工を伴わずに、前記中間形式データと前記圧縮フレームデータのうちの一方を、前記メモリに格納されるべきエラーリカバリ用の保存データとして選択する保存データ選択処理部と、当該保存データ選択処理部が選択した前記保存データの種類によって、前記保存データ選択処理部によって選択されなかった前記中間形式データと前記圧縮フレームデータのうちの他方である非保存データのメモリ領域を解放するタイミングを制御する制御部を有することを特徴とする画像処理装置。（１）
（付記２）　前記保存データ選択処理部は、保存データのサイズの最大値をしきい値として保持し、前記圧縮フレームデータのサイズが前記しきい値よりも小さい場合は前記圧縮フレームデータを前記保存データとして選択し、前記しきい値よりも大きい場合は前記中間形式データを前記保存データとして選択することを特徴とする付記１記載の画像処理装置。（２）
（付記３）　前記保存データ選択処理部は、前記中間形式データから前記圧縮フレームデータを生成するまでの処理時間に対するしきい値に対して、各描画データに対して前記圧縮フレームデータを生成までの処理時間が大きい場合には前記圧縮フレームデータを前記保存データとして選択し、小さい場合には前記中間形式データを選択することを特徴とする付記１記載の画像処理装置。（３）
（付記４）　前記制御部は、保存データ選択処理部が前記中間形式データを前記保存データとして選択した場合には、前記圧縮フレームデータに対応する前記ビデオデータの送信が完了した時に前記圧縮フレームデータを格納している前記メモリの領域を解放することを特徴とする付記１記載の画像処理装置。
【００７７】
（付記５）　前記制御部は、保存データ選択処理部による前記圧縮フレームデータを前記保存データとして選択した場合には、前記中間形式データに対応する前記圧縮フレームデータが作成された時に前記中間形式データを格納している前記メモリの領域を解放することを特徴とする付記１記載の画像処理装置。
【００７８】
（付記６）　ホストから送信される描画データが印刷できなった場合に前記印刷できなかった描画データを再度印刷するエラーリカバリ機能を備えた画像処理方法であって、前記描画データを所定の形式のコードで表現した中間形式データを生成し、メモリに格納するステップと、前記メモリに格納された前記中間形式データを描画して圧縮フレームデータを生成し、前記メモリに格納するステップと、前記メモリに格納された前記中間形式データと前記圧縮フレームデータのサイズに基づいて両者の一方をエラーリカバリ用の保存データとして選択するステップと、前記メモリに格納された前記圧縮フレームデータから印刷用のビデオデータを生成して出力するステップと、前記保存データの種類によって、前記メモリにおける前記中間形式データ及び前記圧縮フレームデータのそれぞれのメモリ領域を解放するタイミングを制御するステップとを有することを特徴とする画像処理方法。（４）
（付記７）　前記エラーリカバリの際に、前記メモリに格納された前記保存データから前記圧縮フレームデータを取得して前記出力ステップを再度行うことを特徴とする付記６記載の画像処理方法。
【００７９】
（付記８）　付記６又は７記載の画像処理方法を実行するためのプログラム。（５）
【００８０】
【発明の効果】
以上説明したように、本発明によれば、通常の印刷処理中に作成されるデータ（中間形式データと圧縮フレームデータ）のうち、最適なデータをそのままエラーリカバリ用保存データとして選択し、かつ保存データとして選択したデータの種類によってメモリ解放を行うタイミングをコントロールすることで、処理効率を落とすことなくメモリ効率を向上させることができる。
【図面の簡単な説明】
【図１】本発明のカラー画像形成装置の概略断面図である。
【図２】カラー画像形成装置の制御系のブロック図である。
【図３】図１に示すカラー画像形成装置の、第１の実施形態の動作を示すフローチャートである。
【図４】図３の処理において中間形式データのサイズが小さい場合の、中間形式データ生成時、圧縮フレームデータ生成時、圧縮フレームデータ解放時の図２に示すメモリの状態を示す模式図である。
【図５】図３の処理において圧縮フレームデータのサイズが小さい場合の、中間形式データ生成時、圧縮フレームデータ生成時、圧縮フレームデータ解放時の図２に示すメモリの状態を示す模式図である。
【図６】図１に示すカラー画像形成装置の、第２の実施形態の動作を示すフローチャートである。
【図７】従来のエラーリカバリ方式を実現するための制御系の概略ブロック図である。
【図８】従来のエラーリカバリ方式における中間形式データのデータサイズが小さい場合のメモリの状態を示す模式図である。
【図９】従来のエラーリカバリ方式における中間形式データのデータサイズが大きい場合のメモリの状態を示す模式図である。
【符号の説明】
１　　　　　　　ホスト
１０　　　　　　カラー画像形成装置
１００　　　　　プリンタコントローラユニット
１１０　　　　　データ解析部
１１２　　　　　印刷制御部
１１４　　　　　メモリ制御部
１１６　　　　　保存データ選択処理部
１１８　　　　　中間データ描画部
１２０　　　　　ＣＰＵ
１２２　　　　　ＲＯＭ
１２４　　　　　ＲＡＭ（メモリ）
１２６　　　　　印刷部
１９０　　　　　エンジン
２００ａ−ｄ　　画像形成ユニット
【図１】
2004139414.tif 000003
【図２】
2004139414.tif 000004
【図３】
2004139414.tif 000005
【図４】
2004139414.tif 000006
【図５】
2004139414.tif 000007
【図６】
2004139414.tif 000008
【図７】
2004139414.tif 000009
【図８】
2004139414.tif 000010
【図９】
2004139414.tif 000011