(57)【要約】【課題】画像メモリの容量が少ない場合でも、コピー機能のスループットを最大限に発揮することを可能にする。【解決手段】画像メモリの用途を管理し、画像メモリをスキャン用、プリント用などに分ける。そして、スキャン用の画像メモリ上に格納された画像データをそのままプリント用として使用する場合に(Ｓ１２)、プリント用の画像メモリが空いているならば、このプリント用の画像メモリをスキャン用に転用する(Ｓ１３〜Ｓ１５)。これにより、画像メモリがプリント用で占有されることを防ぐ。【選択図】図１６
2007116458.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つの記憶領域を備え、一方が入力用に割り当てられ、他方が出力用に割り当てられる第１の記憶装置と、該第１の記憶装置よりも処理速度が遅い第２の記憶装置とを有する画像入出力装置において、
入力された画像データを前記第１の記憶装置の第１の記憶領域に格納する第１の格納手段と、
前記第１の記憶領域に格納された画像データが前記第１の記憶装置からそのまま読み出される場合、前記第１の記憶装置の第２の記憶領域が空き領域であるか否かを判別する判別手段と、
前記判別手段によって前記第２の記憶領域が空き領域であると判別されたならば、前記第１の記憶領域を出力用の記憶領域に設定し、前記第２の記憶領域を、次に入力される画像データの入力用に設定する第１の設定手段と
を有することを特徴とする画像入出力装置。
【請求項２】
前記第１の格納手段によって前記第１の記憶装置の前記第１の記憶領域に格納された画像データを読み出して、前記第２の記憶装置に格納する第２の格納手段と、
前記判別手段によって前記第２の記憶領域が空き領域ではないと判別されたならば、前記第２の記憶領域が空き領域になるまで待ち、空き領域になった前記第２の記憶領域に、前記第２の格納手段によって前記第２の記憶装置に格納された画像データを読み出して格納し、該第２の記憶領域を出力用に設定する第２の設定手段と
をさらに有することを特徴とする請求項１記載の画像入出力装置。
【請求項３】
前記判別手段によって前記第２の記憶領域が空き領域ではないと判別されたならば、前記第１の記憶領域を入力用の記憶領域に設定する第３の設定手段をさらに有することを特徴とする請求項２記載の画像入出力装置。
【請求項４】
前記第１の記憶装置はＲＡＭ（Random Access Memory）であることを特徴とする請求項１記載の画像入出力装置。
【請求項５】
前記第２の記憶装置はＨＤＤ（Hard Disc Drive）であることを特徴とする請求項１記載の画像入出力装置。
【請求項６】
少なくとも２つの記憶領域を備え、一方が入力用に割り当てられ、他方が出力用に割り当てられる第１の記憶装置と、該第１の記憶装置よりも処理速度が遅い第２の記憶装置とを有する画像入出力装置に適用される画像データ入出力方法において、
入力された画像データを前記第１の記憶装置の第１の記憶領域に格納する第１の格納ステップと、
前記第１の記憶領域に格納された画像データが前記第１の記憶装置からそのまま読み出される場合、前記第１の記憶装置の第２の記憶領域が空き領域であるか否かを判別する判別ステップと、
前記判別ステップにおいて前記第２の記憶領域が空き領域であると判別されたならば、前記第１の記憶領域を出力用の記憶領域に設定し、前記第２の記憶領域を、次に入力される画像データの入力用に設定する第１の設定ステップと
を有することを特徴とする画像データ入出力方法。
【請求項７】
前記第１の格納ステップにおいて前記第１の記憶装置の前記第１の記憶領域に格納された画像データを読み出して、前記第２の記憶装置に格納する第２の格納ステップと、
前記判別ステップにおいて前記第２の記憶領域が空き領域ではないと判別されたならば、前記第２の記憶領域が空き領域になるまで待ち、空き領域になった前記第２の記憶領域に、前記第２の格納ステップにおいて前記第２の記憶装置に格納された画像データを読み出して格納し、該第２の記憶領域を出力用に設定する第２の設定ステップと
をさらに有することを特徴とする請求項６記載の画像データ入出力方法。
【請求項８】
前記判別ステップにおいて前記第２の記憶領域が空き領域ではないと判別されたならば、前記第１の記憶領域を入力用の記憶領域に設定する第３の設定ステップをさらに有することを特徴とする請求項７記載の画像データ入出力方法。
【請求項９】
少なくとも２つの記憶領域を備え、一方が入力用に割り当てられ、他方が出力用に割り当てられる第１の記憶装置と、該第１の記憶装置よりも処理速度が遅い第２の記憶装置とを有する画像入出力装置に適用される画像データ入出力方法を、コンピュータに実行させるためのプログラムにおいて、
入力された画像データを前記第１の記憶装置の第１の記憶領域に格納する第１の格納ステップと、
前記第１の記憶領域に格納された画像データが前記第１の記憶装置からそのまま読み出される場合、前記第１の記憶装置の第２の記憶領域が空き領域であるか否かを判別する判別ステップと、
前記判別ステップにおいて前記第２の記憶領域が空き領域であると判別されたならば、前記第１の記憶領域を出力用の記憶領域に設定し、前記第２の記憶領域を、次に入力される画像データの入力用に設定する第１の設定ステップと
を有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像入出力装置、画像データ入出力方法、及びプログラムに関し、特に、少なくとも２つの記憶領域を備え、一方が入力用に割り当てられ、他方が出力用に割り当てられる第１の記憶装置と、該第１の記憶装置よりも処理速度が遅い第２の記憶装置とを有する画像入出力装置、該画像入出力装置に適用される画像データ入出力方法、及び該画像データ入出力方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
画像データの蓄積および入出力を行う、複合機能を持った従来の複写機においては、画像データの蓄積をＨＤＤのような大容量低速記憶装置で行い、画像読取（スキャン）時や画像形成（プリント）時のような画像データの入出力を行う際には、ＨＤＤ上の画像データを入出力処理が高速にできるＤＲＡＭに一旦移してから実行している。
【０００３】
このＤＲＡＭへの移動の際、ＤＲＡＭ上のある領域を画像メモリとして割り当てることが行われるが、コピー処理においては、スキャンによって得られた画像データを画像メモリに保持したまま、この画像データを用いてプリントが行われる。プリントが終了すると、この画像データが画像メモリから削除され、これによって空いたエリアに、スキャンによって新たに得られた画像データが格納される。
【特許文献１】特開２００１−２４５１２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来の複写機において、スキャンによって新たに得られた画像データが存在する場合、画像メモリの容量が豊富であるならば、新たに得られた画像データの格納エリアに困ることはない。しかしながら、画像メモリの容量が少ない場合、新たに得られた画像データの格納エリアが不足し、このため、スキャン処理のスループットが低下し、結果的にコピー機能のスループットも低下してしまうという問題点があった。
【０００５】
本発明はこのような問題点に鑑みてなされたものであって、画像メモリの容量が少ない場合でも、コピー機能のスループットを最大限に発揮することを可能にした画像入出力装置、画像データ入出力方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、請求項１記載の発明によれば、少なくとも２つの記憶領域を備え、一方が入力用に割り当てられ、他方が出力用に割り当てられる第１の記憶装置と、該第１の記憶装置よりも処理速度が遅い第２の記憶装置とを有する画像入出力装置において、入力された画像データを前記第１の記憶装置の第１の記憶領域に格納する第１の格納手段と、前記第１の記憶領域に格納された画像データが前記第１の記憶装置からそのまま読み出される場合、前記第１の記憶装置の第２の記憶領域が空き領域であるか否かを判別する判別手段と、前記判別手段によって前記第２の記憶領域が空き領域であると判別されたならば、前記第１の記憶領域を出力用の記憶領域に設定し、前記第２の記憶領域を、次に入力される画像データの入力用に設定する第１の設定手段とを有することを特徴とする画像入出力装置が提供される。
【０００７】
また、請求項６記載の発明によれば、少なくとも２つの記憶領域を備え、一方が入力用に割り当てられ、他方が出力用に割り当てられる第１の記憶装置と、該第１の記憶装置よりも処理速度が遅い第２の記憶装置とを有する画像入出力装置に適用される画像データ入出力方法において、入力された画像データを前記第１の記憶装置の第１の記憶領域に格納する第１の格納ステップと、前記第１の記憶領域に格納された画像データが前記第１の記憶装置からそのまま読み出される場合、前記第１の記憶装置の第２の記憶領域が空き領域であるか否かを判別する判別ステップと、前記判別ステップにおいて前記第２の記憶領域が空き領域であると判別されたならば、前記第１の記憶領域を出力用の記憶領域に設定し、前記第２の記憶領域を、次に入力される画像データの入力用に設定する第１の設定ステップとを有することを特徴とする画像データ入出力方法が提供される。
【０００８】
さらに、上記画像データ入出力方法をコンピュータに実行させるためのプログラムが提供される。
【発明の効果】
【０００９】
本発明によれば、第１の記憶装置を入力用、出力用に割り当てる。そして、入力用の記憶領域上に格納された画像データをそのまま出力用として使用する場合に、出力用の記憶領域が空いているならば、この出力用の記憶領域を入力用に転用する。これにより、入力用の記憶領域が空くのを待たずに次の画像データの入力を行うことができる。
【００１０】
かくして、画像データの入出力ジョブのスループットを最大限に発揮することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明を実施するための最良の形態について、図面を参照して説明する。
【００１２】
図１は、本発明の一実施の形態に係る画像入出力装置を含む画像形成システムの構成を示すブロック図である。この画像入出力装置を、以下、画像形成装置と呼ぶ。
【００１３】
図１において画像形成装置２００は、画像入力デバイスであるスキャナ部２０７０、画像出力デバイスであるプリンタ部２０９５、コントローラユニット２０００、ユーザーインターフェースである操作部２０１２から構成される。スキャナ部２０７０、プリンタ部２０９５、操作部２０１２は、それぞれコントローラユニット２０００に接続され、コントローラユニット２０００は、ＬＡＮ２０１１などのネットワークや公衆回線（ＷＡＮ）２０５１に接続される。公衆回線２０５１に対しては、カラー画像送信を含むＧ３、Ｇ４ファックスによる送信が可能である。また、ＬＡＮ２０１１には、画像形成装置２００と同様の機器構成をもつ他の画像形成装置２２０、２３０やパーソナルコンピュータ（ＰＣ）２４０が接続されている。パーソナルコンピュータ（ＰＣ）２４０は、ＦＴＰ，ＳＭＢプロトコルを使用したファイルの送受信、電子メールの送受信を行うことができる。
【００１４】
画像形成装置２２０、２３０はそれぞれ、スキャナ部２２７０、２３７０、プリンタ部２２９５、２３９５、操作部２２１２、２３１２、コントローラユニット２２００、２３００を備えている。
【００１５】
図２は、画像形成装置２００のコントローラユニット２０００の内部構成を示すブロック図である。画像形成装置２２０，２３０のコントローラユニット２２００，２３００も同様な構成を備える。
【００１６】
コントローラユニット２０００において、ＣＰＵ２００１は、画像形成装置２００全体を制御するコントローラである。ＲＡＭ２００２は、ＣＰＵ２００１が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ＲＯＭ２００３はブートＲＯＭであり、ブートプログラムが格納されている。ＨＤＤ２００４はハードディスクドライブであり、システムソフトウェア、画像データを格納する。操作部Ｉ／Ｆ２００５は、操作部２０１２とのインターフェース部であり、操作部２０１２に表示すべき画像データを操作部２０１２に対して出力する。また、操作部２０１２から本システム使用者が入力した情報を、ＣＰＵ２００１に伝える役割をする。
【００１７】
ネットワーク部（Ｎｅｔｗｏｒｋ）２００７は、ＬＡＮ２０１１に接続し、情報の入出力を行う。モデム（Ｍｏｄｅｍ）２０５０は、公衆回線（ＷＡＮ）２０５１に接続し、画像情報の入出力を行う。２値画像回転部２０５２は、モデム部２０５０による２値画像の送信前に画像の方向を変換する。２値画像圧縮・伸張部２０５３は、所定の解像度あるいは相手能力に合わせた解像度に変換するためのものであり、圧縮、伸張はＪＢＩＧ、ＭＭＲ、ＭＲ、ＭＨをサポートしている。ＤＭＡＣ２００９はＤＭＡコントローラであり、ＲＡＭ２００２に格納されている画像データを、ＣＰＵ２００１を介することなく読み取り、イメージバス（ＩｍａｇｅＢｕｓ）Ｉ／Ｆ２０４９に対して画像転送する。また、画像バス２０１０からの画像データを、ＣＰＵ２００１を介することなくＲＡＭ２００２に書き込む。以上のデバイスが、システムバス２００８に接続される。
【００１８】
つぎに、画像バス２０１０に接続されるデバイスを説明する。２０３０は画像変換部である。
【００１９】
イメージバス（ＩｍａｇｅＢｕｓ）Ｉ／Ｆ２０４０〜２０４３は、画像バス２０１０を介して行われる画像データの高速な入出力処理を制御するためのインターフェースである。圧縮部２０４４，２０４５，２０４７は、画像バス２０１０に画像を送出する前に３２画素×３２画素の単位でＪＰＥＧ圧縮を行う。伸張部２０４５，２０４６，２０４８は、画像バス２０１０を介して送られてきタ圧縮画像データを伸張する。
【００２０】
ラスタイメージプロセッサ（ＲＩＰ）２０１８に関しては、まず、ＣＰＵ２００１が、ホストコンピュータ（ＰＣ）２４０から送信されたＰＤＬコードを、ネットワーク部２００７を介して受け取り、ＲＡＭ２００２に格納する。そしてＣＰＵ２００１は、ＰＤＬコードを中間コードに変換し、システムバス２００８を介してＲＩＰ２０１８に送信する。これを受信したＲＩＰ２０１８は、中間コードをビットマップイメージ（多値）に展開する。
【００２１】
スキャナ画像処理部２０１４は、スキャナ部２０７０から送られたカラー画像、白黒画像の画像データに対して、各種画像処理（例えば補正、加工、編集）を行う（多値）。プリンタ画像処理部２０１６は、伸張部２０４８で２値／多値変換を行われた画像データに対して、プリンタ部２０９５に適合する各種画像処理（例えば補正、加工、編集）を行う。
【００２２】
画像変換部２０３０は、ＲＡＭ２００２に記憶された画像データを読み出して各種の画像変換を行い、再度、ＲＡＭ２００２に書き戻す。画像変換部２０３０において回転部２０１９は、３２画素×３２画素単位の２値および多値の画像データを指定された角度で回転する。変倍部２０２０は、画像の解像度を、例えば６００ｄｐｉから２００ｄｐｉへ変換したり、例えば２５％から４００％までの変倍を行ったりする機能を有する。なお、変倍する前には３２×３２画素の画像を３２ライン単位の画像に並び替える。
【００２３】
色空間変換部２０２１は、多値の画像データに対してマトリクス演算またはＬＵＴ（ルックアップテーブル）により、例えばＲＡＭ２００２上にあるＹＵＶ画像をＬａｂ画像に色空間変換し、ＲＡＭ２００２上に格納したりする。また、この色空間変換では、３×８のマトリクス演算や１次元ＬＵＴを用いて下地とばし処理や裏写り防止処理を行う。変換された画像データは多値で出力される。
【００２４】
２値多値変換部２０２２は、１ビット２値画像データを多値８ビット、２５６階調の画像データに変換する。逆に、多値２値変換部２０２６は、例えばＲＡＭ２００２上にある８ビット、２５６階調の画像データを、誤差拡散処理などの手法により１ビット２階調の画像データに変換し、ＲＡＭ２００２上に格納する。合成部２０２３は、ＲＡＭ２００２に格納された２枚の多値画像を合成し、１枚の多値画像に変換する。例えば、ＲＡＭ２００２上にある会社ロゴの画像と原稿画像とを合成することで、原稿画像に会社ロゴを簡単に付加することができる。
【００２５】
間引き部２０２４は、多値画像の画素を間引くことで解像度変換を行う。１／２，１／４，１／８の多値画像を出力することが可能である。変倍部２０２０と合わせて使うことで、より広範囲な拡大、縮小を行うことができる。移動部２０２５は、入力された２値画像や多値画像に余白部分をつけたり、余白部分を削除したりすることができる。
【００２６】
回転部２０１９、変倍部２０２０、色空間変換部２０２１、２値多値変換部２０２２、合成部２０２３、間引き部２０２４、移動部２０２５、多値２値変換部２０２６は、互いに連動して処理を行うことが可能であり、例えばＲＡＭ２００２上の多値画像を画像回転および解像度変換する場合は、両処理を、ＲＡＭ２００２を介さずに連動して行うことができる。
【００２７】
図３は、画像データを伝送するパケットの構成を示す図である。
【００２８】
本実施の形態では、特開２００１−１０３４７３号公報に開示されている画像パケット構成を利用する。
【００２９】
圧縮部２０４４，２０４５，２０４７では、ラスタ形式の画像データ（図３（Ａ））を、３２×３２画素単位のパケット（図３（Ｃ））として並び替え、パケット単位でＪＰＥＧ圧縮を行う。同時にパケットに、パケットの位置を示すパケットＩＤ、色空間、ＱテーブルＩＤ、パケット長（データ長）などの情報を搭載したヘッダを付加する。文字、写真を示す２値のデータ（像域フラグ）も同様に圧縮して、画像情報ＪＰＥＧの後ろに付随させる。図４は、パケットデータの構成を示す図である。
【００３０】
伸張部２０４６，２０４８では、このヘッダ情報に基づいて画像情報ＪＰＥＧを展開し、ラスタ画像に並び替える。
【００３１】
画像回転のときには、パケット内部の画像のみを回転するとともに、パケットＩＤを変更する。これにより、部分的に回転することができる。こうした画像回転方法は、画像データをパケット形式にすることで可能となるものであり、非常に処理効率が高くなる。画像バス２０１０を流れる画像データはすべてパケット形式となる。
【００３２】
また、画像データをＲＡＭ２００２（画像メモリ）上で扱う場合には、複数の要素からなるパケットテーブル（図３（Ｂ））を用いる。すなわち、パケットテーブルでは各要素が各パケットに対応しており、各要素には対応のパケットの先頭アドレスとサイズとに関する情報が含まれる。各要素を主走査方向および副走査方向に並べることにより一つの画像を表すようになっている。こうしたパケットテーブルを用いることにより、画像を構成する複数のパケットがＲＡＭ２００２上で離散的に配置されている場合でも一つの画像として扱うことが可能になる。
【００３３】
ファクシミリ送信や２値画像回転部２０５２、２値画像圧縮・伸張部２０５３などにおいてラスタ画像が必要な場合は、パケットデータからラスタ画像への変換をソフトウェアによって行う。
【００３４】
図５は、図２に示すスキャナ画像処理部２０１４の内部構成を示すブロック図である。
【００３５】
スキャナ部２０７０から入力されたＲＧＢ各８ビットの輝度信号は、マスキング部２５０１により撮像素子ＣＣＤのフィルタ色に依存しない標準的なＲＧＢ色信号に変換される。フィルタ部２５０２では、例えば９×９のマトリクスを使用し、画像をぼかしたり、メリハリをつけたりする処理が行われる。ヒストグラム部２５０３は、入力画像信号データのサンプリングをする処理部であり、得られたヒストグラムが下地レベル判定に使用される。すなわち、主走査方向および副走査方向においてそれぞれ指定した開始点および終了点に基づき規定される矩形領域内のＲＧＢデータを、主走査方向、副走査方向に一定のピッチでサンプリングし、ヒストグラムを作成する。このヒストグラムは、下地とばし処理や裏写り防止処理の実行が指定されたとき読み出され、原稿の下地の推測に利用され、下地とばしレベルとして、画像データとともにＲＡＭ２００２やＨＤＤ２００４に保存、管理される。これは、印刷時やデータ送信時の画像処理に使用される。
【００３６】
ガンマ部２５０４では、画像全体の濃度を濃くあるいは薄くする処理が行われる。例えば、入力画像の色空間を任意の色空間に変換したり、入力系の色味に関する補正処理を行ったりする部分である。
【００３７】
色空間変換部２５０５では、原稿がカラーか白黒かを判断するために変倍前の画像信号をＬａｂ画像信号に変換する。このうちａ，ｂが色信号成分を表しており、比較部２５０６が、これらの色信号成分を所定のレベルと比較し、所定のレベル以上であれば有彩色、所定のレベルよりも小さければ無彩色と判定して、１ビットの判定信号を比較部２５０６へ出力する。カウンタ２５０７は、比較部２５０６からの判定信号をカウントする。
【００３８】
文字／写真判定部２５０８は、画像データから文字エッジを抽出し、画像が文字と写真とのいずれであるかを判定し、文字／写真判定信号を出力する。この信号も画像データとともにＲＡＭ２００２やＨＤＤ２００４に格納され、印刷時に使用される。
【００３９】
特定原稿判定部２５０９は、入力画像信号と内蔵のパターンとを比較し、一致または不一致という判定結果を特定原稿判定信号として出力する。この特定原稿判定信号は、紙幣や有価証券などの偽造を防止することに利用される。
【００４０】
図６は、図２に示すプリンタ画像処理部２０１６の内部構成を示すブロック図である。
【００４１】
下地とばし部２６０１は、画像データの地色を飛ばし、不要な下地のカブリ除去を行う。例えば、３×８のマトリクス演算や１次元ＬＵＴにより下地飛ばしを行う。なお、この機能は、前述した色空間変換部２０２１にも含まれる機能であり、下地とばし部２６０１は、色空間変換部２０２１とまったく同等の機能を有している。
【００４２】
モノクロ生成部２６０２は、カラー画像データをモノクロデータに変換し、単色としてプリントする際に、カラー画像データ、例えばＲＧＢデータをグレイ単色に変換する。例えば、ＲＧＢデータに任意の定数を掛け合わせてグレイ信号とする１×３のマトリクス演算が行われる。
【００４３】
出力色補正部２６０３は、画像データに対して、出力されるべきプリンタ部２０９５の特性に合わせて色補正を行う。例えば、４×８のマトリクス演算やダイレクトマッピングによる補正処理が行われる。
【００４４】
フィルタ処理部２６０４は、画像データの空間周波数に対して任意のフィルタ処理を行う。例えば、９×９のマトリクス演算が行われる。
【００４５】
ガンマ補正部２６０５は、画像データに対して、出力されるべきプリンタ部２０９５の特性に合わせてガンマ補正を行う。例えば、１次元のＬＵＴを用いて処理を行う。
【００４６】
中間調補正部２６０６は、画像データに対して、出力されるべきプリンタ部２０９５の階調数に合わせて中間調処理を行う。例えば、２値化や３２値化などのスクリーン処理や、誤差拡散処理を行う。各処理の実行を、文字／写真判定信号によって切り替えるようにしてもよい。
【００４７】
ドラム間遅延メモリ２６０７は、ＣＭＹＫの各色の感光体ドラムを備えたカラープリンタにおいて、ＣＭＹＫの印字タイミングを各感光体ドラム間隔に相当する時間分ずらすことで、ＣＭＹＫ画像の正確な重ね合わせを行うようにするために使用するメモリである。
【００４８】
図７は、図１に示す画像形成装置２００の外観を示す斜視図である。画像形成装置２２０，２３０も同様の外観構成を備える。
【００４９】
画像入力デバイスであるスキャナ部２０７０は、原稿の画像を照明し、ＣＣＤラインセンサ（図示せず）を走査することで、ラスタイメージデータとしての電気信号を出力する。原稿用紙を原稿フィーダ２７０１のトレイ２７０２にセットし、装置使用者が操作部２０１２から読み取り起動指示することにより、画像形成装置２００が起動される。すなわち、コントローラユニット２０００のＣＰＵ２００１がスキャナ部２０７０に指示を与え、原稿フィーダ２７０１のトレイ２７０２から原稿用紙が１枚ずつフィードされ、原稿画像の読み取り動作が行われる。
【００５０】
画像出力デバイスであるプリンタ部２０９５は、ラスタイメージデータを用紙上の画像に変換する部分であり、その方式としては、感光体ドラムや感光体ベルトを用いた電子写真方式や、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等がある。本実施の形態では、いずれの方式であってもよい。
【００５１】
プリント動作の起動は、コントローラユニット２０００のＣＰＵ２００１からの指示によって開始する。プリンタ部２０９５は、異なる用紙サイズのいずれかを、また異なる用紙向きのいずれかを選択できるようにした複数の給紙段を持ち、それらに対応して用紙カセット２７０３、２７０４、２７０５がプリンタ部２０９５に装着される。排紙トレイ２７０６は、印字し終わった用紙を受けるトレイである。
【００５２】
図８は、図７に示す操作部２０１２の構成を示す外観図である。
【００５３】
ＬＣＤ表示部２８０１は、液晶表示装置ＬＣＤ上にタッチパネルシート２８０２が貼られた構成であり、画像形成装置２００の操作画面およびソフトキーを表示するとともに、表示されたあるキーが押されるとその位置情報をコントローラユニット２０００のＣＰＵ２００１に伝える。
【００５４】
スタートキー２８０４は、原稿画像の読み取り動作を開始させたいときに使用者によって操作されるキーである。スタートキー２８０３の中央部には、緑と赤の２色発光ダイオードＬＥＤ２８０４が配置されており、その色によってスタートキー２８０３が操作され得る状態にあるか否かを示す。
【００５５】
ストップキー２８０５は、画像形成装置２００の稼働中の動作を止めたいときに操作されるキーである。ＩＤキー２８０６は、使用者がユーザーＩＤを入力したいときに操作されるキーである。リセットキー２８０７は、操作部２０１２からの設定を初期化したいときに操作されるキーである。
【００５６】
図９は、画像形成装置２００の操作部２０１２に表示される初期画面を示す図である。この初期画面は、各画像形成機能設定後に戻る標準画面である。
【００５７】
３１０１は、コピー設定を行うためのタブであり、このタブを操作するとコピー設定画面に切り替わる。３１０２は、スキャンした画像をファクシミリ送信や電子メールにより送信するときに操作されるべきタブであり、このタブを操作すると送信設定画面に切り替わる。３１０３は、内蔵ＨＤＤ２００４にスキャン画像、ＰＤＬ画像を格納したいとき、格納されたスキャン画像、ＰＤＬ画像を印字または送信したいとき、または編集に関する設定を行いたいときに操作されるべきタブであり、このタブを操作すると、それらに対応する設定画面に切り替わる。
【００５８】
なお図９は、送信設定タブ３１０２が操作された場合の画面となっている。
【００５９】
３１０５は、画像読み込み時の解像度、濃度などを設定したいときに操作されるべきボタンであり、このボタンを操作すると読込設定画面（図１０を参照して後述）に切り替わる。３１０４は、読込設定ボタン３１０５の操作などによって設定された画像読み込み時の解像度、濃度などの設定内容を表示するためのウィンドウである。
【００６０】
３１０６は、タイマー送信時のタイマー設定、ＨＤＤ２００４に対する画像データの格納設定、プリンタ部２０９５に対する印字設定などを行いたいときに操作されるべきボタンである。３１０８は、送信宛先を指定したいときに操作されるべきボタンである。３１０７は、宛先指定ボタン３１０８の操作等によって指定された送信宛先を表示するウィンドウである。３１０９は、ウィンドウ３１０７に表示された送信宛先のうちの１つの詳細な情報をウィンドウ３１０７に表示させたいときに操作されるべきボタンである。３１１０は、ウィンドウ３１０７に表示された送信宛先のうちの１つを消去させたいときに操作されるべきボタンである。
【００６１】
図１０は、図９に示す読込設定ボタン３１０５が操作されたときに操作部２０１２に表示される読込設定画面（ポップアップウィンドウ）を示す図である。
【００６２】
３２０１は、読み取り原稿サイズを選択入力するためのボタンであり、このボタンを操作すると複数の原稿サイズがポップアップ表示される。それらの中から読み取り原稿サイズを選択して入力する。設定された読み取り原稿サイズはウィンドウ３２０２に表示される。
【００６３】
３２０３は、原稿の読み取りモードを選択するためのボタンであり、このボタンを操作すると、カラー／ブラック／自動（ＡＣＳ）の３種類のモードがポップアップ表示される。それらの中から１つを選択すると、このボタンの位置に、選択されたモードが表示される。カラーモードに関しては、コピー設定タブ３１０１、ボックス設定タブ３１０３でも同様に選択できる。なお、スキャナ画像処理部２０１４は、カウンタ２５０７（図５）の計測結果が所定値よりも小さければ白黒原稿、大きければカラー原稿と判断する。そして、モード選択ボタン３２０３によって選択されたモードがカラーである場合はカラー画像を、ブラックである場合には白黒画像を、自動（ＡＣＳ）である場合にはカラー画像と原稿がカラーか白黒かを判別した結果とを蓄積する。
【００６４】
３２０４は、読み取りの解像度を選択指定するためのボタンであり、このボタンを操作すると、複数の解像度がポップアップ表示される。それらの中から１つを選択すると、このボタンの位置に、選択された解像度が表示される。
【００６５】
３２０５は、原稿の読み取り濃度を指定するためのスライダであり、９段階の指定を行うことができる。３２０６は、原稿の読み取り濃度を自動的に決定したいときに操作すべきボタンである。新聞のように下地が白色でない画像を読み込む場合に有効であり、こうした設定は、コピー時にも同様の設定が可能である。
【００６６】
図１１は、コピー設定タブ３１０１が操作されたとき操作部２０１２に表示されるコピー設定画面を示す図である。
【００６７】
３３０１は、コピーできる状態であるか否かが表示されるウィンドウであり、同時にここには、設定されたコピー部数も表示される。
【００６８】
３３０２は、ボタン３２０６と同様に、下地除去を自動的に行いたいときに操作すべきボタンである。３３０３は、図１０のスライダ３２０５と同様に、９段階のコピー濃度の指定を行えるスライダである。
【００６９】
３３０４は、原稿のタイプを選択するためのボタンであり、文字・写真・地図、文字、印画紙写真、印刷写真のいずれかを選択することができる。３３０５は、応用モードボタンであり、縮小レイアウト（複数枚の原稿を１枚の用紙に縮小印字する機能）や、カラーバランス（ＣＭＹＫの各色微調整）などを設定することができる。３３０６は、各種フィニッシングに関わる設定を行うためのボタンであり、シフトソート、ステープルソート、グループソートを設定することができる。３３０７は、両面読み込みおよび両面印刷に関わる設定を行うためのボタンである。
【００７０】
図１２は、ボックスタブ３１０３が操作されたとき操作部２０１２に表示される設定画面を示す図である。
【００７１】
３４０１は、ＨＤＤ２００４の記憶エリアを論理的に区分して設定された複数のフォルダを表す。各フォルダにはフォルダ番号０〜５が予め割り振られており、このフォルダ番号が表示されるとともに、各フォルダ番号の右側には、対応のフォルダが占有するディスクにおける記憶容量の割合が表示される。また、各フォルダには任意の名前をつけることができ、その名前も表示される。３４０２は、ＨＤＤ２００４の全記憶容量のうちの使用量を表示する円グラフである。なお、複数のフォルダ３４０１の各フォルダには文書を格納することができ、フォルダを指定してクリックすると、そのフォルダに格納されている文書の一覧表が表示される。
【００７２】
図１３は、図１２に示す複数のフォルダ３４０１のうちの１つ、例えばフォルダ番号０のフォルダをクリックしたときに操作部２０１２に表示される画面を示す図である。
【００７３】
例えば、３５０１および３５０２は、フォルダ番号０のフォルダに格納されている文書データである。文書データ３５０１は、スキャンして得られた文書データであり、こうしたスキャン文書データであることを示すアイコンが表示され、またＨＤＤ２００４における記憶容量使用量や文書名（ユーザーが任意に設定できる）が表示される。文書データ３５０２は、ＰＤＬデータであり、ＰＤＬ文書データであることを示すアイコンが表示される。また、ＨＤＤ２００４における記憶容量使用量や文書名が表示される。アイコンをクリックすると、その対応の文書データが選択され、選択されたことが反転表示によって示される。
【００７４】
３５０３は、選択された文書データを送信するためのボタンである。３５０４は、スキャナ部２０７０から原稿を読み込み、得られた文書データをフォルダ番号０のフォルダに格納するためのボタンである。３５０５は、フォルダ番号０のフォルダ内のすべての文書データを選択するためのボタンである。３５０６は、選択された文書データを削除するためのボタンである。３５０７は、選択された文書データを印刷するためのボタンである。３５０８は、選択された文書データを編集するためのボタンである。この編集では、例えば２つの文書データを選択して、結合し、１つの文書データにして保存したり、特定のページを削除したりすることができる。３５０９は、選択された文書データの詳細情報を表示させるためのボタンである。この詳細情報表示では、文書名以外に解像度、原稿サイズ、カラー／白黒の区別などの情報が表示される。
【００７５】
図１４は、画像メモリ（ＲＡＭ２００２）の管理に使用する各テーブルを例示する図である。
【００７６】
画像メモリ（ＲＡＭ２００２）の物理的メモリ領域を表す実メモリ（Ｃ）を複数の領域（ブロック）に分割し、これらの複数の領域（ブロック）を、面管理テーブル（Ａ）とブロック管理テーブル（Ｂ）とを用いて管理する。
【００７７】
ブロック管理テーブル（Ｂ）の各行は、実メモリ（Ｃ）の各領域に対応し、各行は、実メモリ（Ｃ）上の対応する領域（ブロック）のアドレスとサイズ、次のブロックへのポインタ、使用中フラグから成る。ブロック管理テーブルにおけるアドレスとサイズとが指し示す実メモリ上の領域（ブロック）が画像処理に使用される。また、対応領域（ブロック）が使用されているときには使用中フラグに１を入れ、使用されていないときには０を入れる。また、ブロック管理テーブルの各行には次行のブロックを指し示すポインタを設け、これにより、ブロック管理テーブルをリスト形式にすることができ、複数のブロックをまとめて管理することができる。
【００７８】
このまとめた複数のブロックを１面として管理するのが面管理テーブル（Ａ）である。この１面が１つのブロック管理テーブルと対応する。
【００７９】
面管理テーブルの各行は、複数のブロックをそれぞれまとめた各面に対応し、すなわち各ブロック管理テーブルに対応する。面管理テーブルの各行は、用途、すなわち画像処理の種別と、先頭ブロックへのポインタと、使用中フラグと、実行中フラグとから成る。画像処理の種別はスキャン用、変倍用、回転用、ＨＤＤ読出し用など、画像データを画像メモリ上へ書き込む際の処理の内容である。先頭ブロックへのポインタは、対応のブロック管理テーブルが管理する連続する複数のブロックのうち先頭ブロックの先頭位置を示す。使用中フラグは、画像処理が実行されているかどうかに関わらず、対応の面（ＲＡＭ２００２上の複数のブロック）が使用されているか否かを示すフラグである。実行中フラグは、対応の面において実際に画像処理が実行されているか否かを示すフラグである。
【００８０】
図１５は、図２に示す画像形成装置２００のコントロールユニット２０００において実行される制御プログラムの構成を示す図である。
【００８１】
４０１０は、操作部２０１２を制御するＵＩ制御部である。このＵＩ制御部４０１０からの指示を受け、コピー処理を実行するコピーアプリケーション４０２０、送信処理を実行する送信アプリケーション４０２１、ボックス画面からのスキャン、プリントを実行するボックスアプリケーション４０２２がある。またネットワークアプリケーション４１２０からＰＤＬプリントデータを受け、ＰＤＬプリントジョブを投入するＰＤＬアプリケーション４０２３がある。
【００８２】
４０３０は、機器制御における機器依存部分を吸収するための共通インターフェース、４０４０は、共通インターフェース４０３０から受け取ったジョブ情報を整理し、下位層のドキュメント処理部に伝達するジョブマネージャである。このドキュメント処理部は、ローカルコピーであれば、スキャンマネージャ４０５０とプリントマネージャ４０９０とである。またリモートコピーの送信ジョブであれば、スキャンマネージャ４０５０とファイルストアマネージャ４１００とである。またリモートコピーの受信ジョブであれば、ファイルリードマネージャ４０６０とプリントマネージャ４０９０とである。またＬＩＰＳやＰｏｓｔＳｃｒｉｐｔなどのＰＤＬプリントであれば、ＰＤＬマネージャ４０７０とプリントマネージャ４０９０とである。なお、リモートコピーとは、スキャンを行う画像形成装置とプリントを行う画像形成装置とが異なる場合のコピー処理である。これに対して、同一の画像形成装置内でスキャンとプリントとを行う場合を、リモートコピーと区別してローカルコピーと呼ぶ。
【００８３】
イメージマネージャ４１１０は、各ドキュメントマネージャ間の同期をとり、各種画像処理を行う。イメージマネージャ４１１０への画像処理の依頼はシンクマネージャ４０８０を介して行う。スキャン、プリント時の画像処理や画像ファイルの格納はイメージマネージャ４１１０が行う。
【００８４】
次に、ローカルコピーの場合に、図１５に示す制御プログラムの各部の相互間において行われる処理について、以下に説明する。
【００８５】
使用者から操作部２０１２に対してコピー指示が行われると、ＵＩ制御部４０１０からコピー指示とともにコピー設定情報がコピーアプリケーション４０２０に送られる。コピーアプリケーション４０２０は、ＵＩ制御部４０１０から送られた情報を、共通インターフェース４０３０を介して、機器制御を行うジョブマネージャ４０４０に伝える。ジョブマネージャ４０４０は、スキャンマネージャ４０５０とプリントマネージャ４０９０とにジョブの情報を伝達する。
【００８６】
図１６および図１７は、コピージョブをローカルコピー形態で各ドキュメントマネージャ間において実行した際の一連の処理ステップを示すシーケンス図である。
【００８７】
ここでは、２ページ分のコピージョブを実行する場合を示し、この場合、スキャンマネージャ、プリントマネージャにはそれぞれ、２つのインスタンスが存在する。
【００８８】
スキャンマネージャ（１）４０５０は、図示しないデバイスＩ／Ｆを介してスキャナ部２０７０に原稿１ページ目のスキャン要求を行う。なおデバイスＩ／Ｆは、コントローラユニット２０００とスキャナ部２０７０、およびコントローラユニット２０００とプリンタ部２０９５を結ぶシリアルＩ／Ｆである。また同時に、スキャンマネージャ（１）４０５０は、ステップＳ１で、シンクマネージャ４０８０にスキャン用の画像処理要求を送る。
【００８９】
シンクマネージャ４０８０は、ステップＳ２で、スキャン用の画像メモリの獲得要求をイメージマネージャ４１１０に送る。イメージマネージャ４１１０は、スキャン画像メモリ獲得要求に従って、スキャン用の画像メモリを設定し、該設定に応じて面管理テーブルとブロック管理テーブルとに対応の値を書き込む。そしてステップＳ３で、スキャン用の画像メモリの獲得完了通知をシンクマネージャ４０８０へ送る。
【００９０】
この獲得完了通知を受け取ったシンクマネージャ４０８０は、ステップＳ４で、スキャン画像処理要求をイメージマネージャ４１１０へ送り、これを受けたイメージマネージャ４１１０は、スキャナ画像処理部２０１４の設定を行う。設定が完了したイメージマネージャ４１１０は、ステップＳ５で、シンクマネージャ４０８０にスキャン画像処理設定完了通知を送る。これを受けたシンクマネージャ４０８０は、ステップＳ６で、スキャンマネージャ（１）４０５０へスキャン準備完了通知を送る。この通知を受けたスキャンマネージャ（１）４０５０は、スキャナ部２０７０に対してスキャン開始を指示する。
【００９１】
スキャン画像転送完了通知は、図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に伝わる（Ｓ７）。イメージマネージャ４１１０は、スキャン完了をシンクマネージャ４０８０に通知し（Ｓ８）、シンクマネージャ４０８０は、スキャン完了をスキャンマネージャ（１）４０５０に通知する（Ｓ９）とともに、プリントマネージャ（１）４０９０に通知する（Ｓ１０）。同時にステップＳ１１で、シンクマネージャ４０８０は、スキャン用の画像メモリ（ＲＡＭ２００２）に蓄積された圧縮画像データをＨＤＤ２００４にファイル化するべく、イメージマネージャ４１１０にＨＤＤ格納指示を送る。
【００９２】
このＨＤＤ格納指示を受けたイメージマネージャ４１１０は、スキャン用の画像メモリ上の１ページ目の画像データ（文字／写真判定信号を含めて）をＨＤＤ２００４に格納する。画像データの付随情報として、図示しないＳＲＡＭにカラー判定／白黒判定結果、下地とばしを行うための下地とばしレベル、画像入力元としてスキャン画像、色空間ＲＧＢも格納しておく。なお、ＨＤＤ２００４への格納が終了し、スキャナ部２０７０からスキャン終了通知を受けたら（Ｓ１８）、イメージマネージャ４１１０は、シンクマネージャ４０８０を介してスキャンマネージャ（１）４０５０にファイル化完了を通知する（Ｓ１９）。
【００９３】
ステップＳ９でスキャン完了通知を受けたスキャンマネージャ（１）４０５０は、ジョブマネージャ４０４０に対して終了通知を送り、これを受けたジョブマネージャ４０４０は、共通インターフェース４０３０を介してコピーアプリケーション４０２０へ終了通知を送る。
【００９４】
ステップＳ１０でスキャン完了通知を受けたプリントマネージャ（１）４０９０は、スキャン用の画像メモリに画像データが入った時点でデバイスＩ／Ｆを介して、プリンタ部２０９５に印刷要求をだす。同時にステップＳ１２で、シンクマネージャ４０８０にプリント画像処理要求を送る。これを受けたシンクマネージャ４０８０は、画像データが入力されたスキャン用の画像メモリをプリント用に使用するためのメモリ転用要求をイメージマネージャ４１１０に送る（Ｓ１３）。これを受けたイメージマネージャ４１１０は、この段階ではプリント用の画像メモリが使用中ではない（空いている）ため、面管理テーブルにおいてスキャン用の画像メモリの用途をプリント用に変えるとともに、プリント用の画像メモリの用途をスキャン用に変更する。変更が完了するとイメージマネージャ４１１０は、ステップＳ１４で、シンクマネージャ４０８０に対して画像メモリの転用が成功したことを通知する。これを受けてシンクマネージャ４０８０は、ステップＳ１５で、画像処理設定をイメージマネージャ４１１０に依頼する。イメージマネージャ４１１０は、画像データの付随情報に従ってプリンタ画像処理部２０１６の設定を行い、ステップＳ１６で、シンクマネージャ４０８０に画像処理設定完了を通知し、これを受けたシンクマネージャ４０８０は、プリントマネージャ（１）４０９０にプリント準備完了を通知する（Ｓ１７）。
【００９５】
プリントマネージャ（１）４０９０は、プリンタ部２０９５に対して印刷指示を出す。この結果、印刷が終了すると、プリント画像転送完了通知が、図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に送られる（Ｓ３７）。
【００９６】
ところで、ステップＳ２０では、スキャンマネージャ（２）４０５０から原稿２ページ目のスキャン画像処理要求がシンクマネージャ４０８０へ送られ、シンクマネージャ４０８０はスキャン用の画像メモリの獲得要求をイメージマネージャ４１１０へ送る（Ｓ２１）。
【００９７】
ステップＳ１３で画像メモリの用途変更の要求があって、この変更が成功しており、もともとはプリント用として獲得されていた画像メモリがスキャン用に転用され、しかも空いている。そのためイメージマネージャ４１１０は、面管理テーブルにおいて、このスキャン用の画像メモリにおける使用中フラグを１にする。そしてステップＳ２２で、スキャン用画像メモリの獲得完了をシンクマネージャ４０８０へ通知する。
【００９８】
ステップＳ２３からステップＳ３０までの処理は、１ページ目のスキャンと同様の手順であり、画像処理設定、スキャン開始、スキャン完了通知、ＨＤＤ格納を実行する。
【００９９】
ステップＳ３１で、２ページ目のプリント画像処理要求がプリントマネージャ（２）４０９０からシンクマネージャ４０８０へ通知されると、シンクマネージャ４０８０は、スキャン用の画像メモリに２ページ目の画像データが存在するため、１ページ目と同様にメモリ転用要求をイメージマネージャ４１１０へ通知する（Ｓ３２）。この通知を受けたイメージマネージャ４１１０は、プリント用として割り当てられている画像メモリから、スキャン用に用途を変更できる画像メモリがあるか否かを調べる。ここでは、プリント用の画像メモリが１ページ目のプリント実行中であるため解放できず、したがって、用途を変更できる画像メモリは無い。そのため、イメージマネージャ４１１０は、画像メモリ転用失敗通知をシンクマネージャ４０８０へ送る（Ｓ３３）。
【０１００】
シンクマネージャ４０８０は、ステップＳ３４で、再度、プリント用画像メモリの獲得要求をイメージマネージャ４１１０へ送る。これを受けたイメージマネージャ４１１０は、ここではプリント用の画像メモリに空きが無いため、獲得要求を内部の獲得待ちキューにキューイングする。
【０１０１】
１ページ目のプリント完了の通知を受ける（Ｓ３７）、イメージマネージャ４１１０は、シンクマネージャ４０８０にプリント完了を通知し（Ｓ３８）、これを受けたシンクマネージャ４０８０は、プリント完了をプリントマネージャ（１）４０９０へ通知する（Ｓ３９）。なお、１ページ目のプリントが完了したため、プリント用の画像メモリを２ページ目のプリントに使用できるようになる。そこで、獲得待ちキューにキューイングしていたプリント用画像メモリの獲得要求に応じて、イメージマネージャ４１１０が、ＨＤＤ２００４に保存されたスキャン画像データをプリント用の画像メモリへ読み出し、ステップＳ４０で、シンクマネージャ４０８０へプリント画像メモリ獲得完了を通知する。
【０１０２】
ステップＳ４１からステップＳ４６までの処理は、１ページ目のプリントと同様の手順であり、画像処理設定、プリント、プリント完了通知を実行する。
【０１０３】
イメージマネージャ４１１０からのプリント完了通知を受けてシンクマネージャ４０８０は、プリント完了をプリントマネージャ４０９０に通知する。プリントマネージャ４０９０は、プリンタ部２０９５からの排紙完了通知を受け、ジョブマネージャ４０４０に対して終了通知を送り、これをジョブマネージャ４０４０は、共通インターフェース４０３０を介してコピーアプリケーション４０２０へ送る。コピーアプリケーション４０２０は、スキャンおよびプリントが終了したらジョブ終了をＵＩ制御部４０１０に通知する。
【０１０４】
次に、リモートコピー形態でスキャンジョブ、送信ジョブを実行する場合を、図１５を参照して説明する。
【０１０５】
この場合、プリントマネージャ４０９０に代わってファイルストアマネージャ４１００がジョブマネージャ４０４０からの要求を受ける。
【０１０６】
スキャン画像データをＨＤＤ２００４に格納し終わった時点で、ジョブマネージャ４０４０は、シンクマネージャ４０８０から格納完了通知を受け、それを、共通インターフェース４０３０を介してリモートコピーならばコピーアプリケーション４０２０に、送信ジョブならば送信アプリケーション４０２１に通知する。
【０１０７】
この通知を受けたコピーアプリケーション４０２０または送信アプリケーション４０２１は、ネットワークアプリケーション４１２０に対してＨＤＤ２００４に格納されたファイルの送信を依頼する。この依頼を受けたネットワークアプリケーション４１２０はファイルを送信する。なお、ネットワークアプリケーション４１２０は、ジョブ開始時にコピーアプリケーション４０２０からコピーに関する設定情報を受け取り、これもリモート側の機器に通知する。ネットワークアプリケーション４１２０は、リモートコピーの場合、機器固有の通信プロトコルを使用して送信を行い、送信ジョブの場合は、ＦＴＰ、ＳＭＢのような標準的なファイル転送プロトコルを使用して送信を行う。
【０１０８】
またファクシミリ送信を行う場合は、ファイル格納後、送信アプリケーション４０２１から共通インターフェース４０３０、ジョブマネージャ４０４０を介してＦＡＸマネージャ４０４１に送信が指示される。この送信指示を受けたＦＡＸマネージャ４０４１は、モデム２０５０を介して、相手機器とネゴシエーションし、必要な画像処理（カラーから白黒への画像変換、多値／２値変換、回転、変倍）をイメージマネージャ４１１０に依頼し、画像処理後の画像データを、モデム２０５０を介して送信する。
【０１０９】
また、送信先にプリンタがある場合、送信アプリケーション４０２１は、共通インターフェース４０３０を介してプリントジョブとしてプリントの指示を行う。そのときの動作は、以下で説明するリモートコピーのプリントジョブの場合と同様である。また、送信宛先が機器内のボックスになっている場合は、ファイルストアマネージャ４１００によって機器内のファイルシステムに格納される。
【０１１０】
ファクシミリ受信時には、ＦＡＸマネージャ４０４１がモデム２０５０を使って画像データを受信し、画像ファイルとしてＨＤＤ２００４に格納する。ＨＤＤ２００４への格納後にボックスアプリケーション４０２２に通知すると、ボックスアプリケーション４０２２は、受信プリントの指示を、共通インターフェース４０３０を介してジョブマネージャ４０４０に送る。その後の処理は、通常のボックスプリントジョブと同じ処理になるため説明を省略する。
【０１１１】
次に、リモートコピー形態でプリントジョブを実行する場合を、図１５を参照して説明する。
【０１１２】
この場合には、ネットワークアプリケーション４１２０が、送信側からの画像データをＨＤＤ２００４に保存するとともに、コピーアプリケーション４０２０に対してジョブを発行する。コピーアプリケーション４０２０は、共通インターフェース４０３０を介してジョブマネージャ４０４０にプリントジョブを投入する。ローカルコピーとは異なり、スキャンマネージャ４０５０に代わってファイルリードマネージャ４０６０が、ジョブマネージャ４０４０からの要求を受け取る。ファイルリードマネージャ４０６０は、受信画像データをＨＤＤ２００４から画像メモリに展開するための要求を、シンクマネージャ４０８０を介してイメージマネージャ４１１０に送る。イメージマネージャ４１１０は、画像メモリに画像データを展開する。そしてイメージマネージャ４１１０は、この展開が終了した時点で、展開終了を、シンクマネージャ４０８０を経由してファイルリードマネージャ４０６０とプリントマネージャ４０９０とに伝える。
【０１１３】
プリントマネージャ４０９０は、画像メモリに画像データが入った時点で、ジョブマネージャ４０４０から指示されたプリンタ部２０９５の給紙段または指示された用紙サイズを有する給紙段を選択し、デバイスＩ／Ｆを介してプリンタ部２０９５に印刷要求を送る。なお自動給紙の場合には、画像サイズから給紙段を決定し印刷要求を送る。同時にプリントマネージャ４０９０は、シンクマネージャ４０８０にプリント画像処理要求を行う。
【０１１４】
このプリント画像処理要求を受けたシンクマネージャ４０８０は、プリント画像処理設定をイメージマネージャ４１１０に依頼する。なおこのとき、例えば、最適サイズ用紙がなくなり、画像の回転が必要になれば別途回転指示も依頼する。回転指示があった場合には、イメージマネージャ４１１０が、回転部２０１９を使って画像を回転する。
【０１１５】
イメージマネージャ４１１０は、プリンタ画像処理部２０１６の設定を行い、シンクマネージャ４０８０を介してプリントマネージャ４０９０にプリント準備完了を伝える。これを受けたプリントマネージャ４０９０は、プリンタ部２０９５に対して印刷指示を出す。
【０１１６】
プリント画像転送完了は、図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に送られる。これを受けたイメージマネージャ４１１０は、プリント完了をシンクマネージャ４０８０へ通知し、この通知を受けたシンクマネージャ４０８０は、プリント完了をファイルリードマネージャ４０６０とプリントマネージャ４０９０とに伝える。ファイルリードマネージャ４０６０は、終了通知をジョブマネージャ４０４０に送る。プリントマネージャ４０９０は、プリンタ部２０９５からの排紙完了通知を受け、ジョブマネージャ４０４０に対して終了通知を送る。終了通知を受けたジョブマネージャ４０４０は、共通インターフェース４０３０を介してコピーアプリケーション４０２０へ終了通知を送る。コピーアプリケーション４０２０は、スキャンおよびプリントが終了したらジョブ終了をＵＩ制御部４０１０に通知する。
【０１１７】
次に、ＰＤＬデータ展開格納ジョブを実行する場合を、図１５を参照して説明する。
【０１１８】
この場合は、ホストＰＣ２４０からＰＤＬプリント要求がネットワークアプリケーション４１２０を経由してＰＤＬアプリケーション４０２３に送られる。ＰＤＬアプリケーション４０２３は、ＰＤＬデータ展開格納ジョブの実行を、共通インターフェース４０３０を介してジョブマネージャ４０４０に指示する。このときＰＤＬマネージャ４０７０とファイルストアマネージャ４１００とが、ジョブマネージャ４０４０からジョブ実行要求を受け取る。なお、画像データの中間コードからビットマップイメージへの展開が終了した後の画像データが入力される部分に関しては、前述のスキャンジョブと同様である。
【０１１９】
ＰＤＬマネージャ４０７０とファイルストアマネージャ４１００とは、画像メモリ上の画像データ（文字／写真判定信号を含めて）をＨＤＤ２００４に格納する。画像データの付随情報として、図示しないＳＲＡＭに、カラー／白黒判別情報、画像入力元としてＰＤＬ画像、色空間ＣＭＹＫまたはＲＧＢ情報も格納しておく。ＰＤＬ画像データをＨＤＤ２００４に格納し終わった時点で、ジョブマネージャ４０４０がシンクマネージャ４０８０から格納完了通知を受け、それを、共通インターフェース４０３０を介してＰＤＬアプリケーション４０２３に送る。この格納完了通知を受けたＰＤＬアプリケーション４０２３は、ＨＤＤ格納完了をネットワークアプリケーション４１２０に通知する。ネットワークアプリケーション４１２０は、ＰＤＬプリント要求を行ったホストＰＣへＨＤＤ格納完了を通知する。なお、ＰＤＬプリントジョブの場合には、ＰＤＬマネージャ４０７０とプリントマネージャ４０９０によって、画像メモリ上に展開された画像を印字する。
【０１２０】
ＰＤＬ展開され、ＨＤＤ２００４に格納された画像データのプリントでは、ＵＩ制御部４０１０によって印刷指示された格納文書を、ボックスアプリケーション４０２２に対してプリントジョブとして発行する。これを受けたボックスアプリケーション４０２２は、共通インターフェース４０３０を介してジョブマネージャ４０４０にプリントジョブを投入する。このとき、ローカルコピーとは異なり、スキャンマネージャ４０５０に代わってファイルリードマネージャ４０６０が、ジョブマネージャ４０４０からの要求を受ける。ファイルリードマネージャ４０６０は、印刷指示された画像データをＨＤＤ２００４から読み出して画像メモリに展開する要求を、シンクマネージャ４０８０を介してイメージマネージャ４１１０に対して行う。この後の処理は、リモートコピーのプリントジョブに関して前述した処理と同様であるので、説明を省略する。
【０１２１】
次に、画像メモリの通常のハンドリングについて、以下に詳述する。
【０１２２】
図１８は、プリント時における画像データに対する３つの処理工程（画像パス）の例を示す図である。
【０１２３】
図１８(Ａ)では、原稿の１ページ目の画像データをＨＤＤ２００４から読み出し、その画像を回転してプリントする。図１８(Ｂ)では、２ページ目の画像データをＨＤＤ２００４から読み出し、その画像を回転してプリントする。図１８(Ｃ)では、３ページ目の画像データをＨＤＤ２００４から読み出し、それに対して色空間変換を行ってから回転してプリントする。
【０１２４】
この３つの処理工程の例において、イメージマネージャ４１１０は、５つの内部モジュールに分割される。すなわち、画像処理決定部、１ページ目の画像処理実行部、２ページ目の画像処理実行部、３ページ目の画像処理実行部、画像メモリ管理部の５つの内部モジュールに分割される。
【０１２５】
図１９および図２０は、図１８に示す３つの処理工程の例に対応して、イメージマネージャ４１１０における５つの内部モジュールの相互間において実行される一連の処理を示すシーケンス図である。
【０１２６】
以下に、図１８に示す３つの処理工程の例について、図１９および図２０を参照しながら説明する。
【０１２７】
シンクマネージャ４０８０からイメージマネージャ４１１０に１ページ目の処理開始が通知されると、画像処理決定部が１ページ目の画像パス（図１８（Ａ））を決定し、第１の所定テーブル（図２１に例示）に、決定した内容を書き込む。すなわち、該第１の所定テーブルには各画像処理の処理内容、ここではＨＤＤ読み出し、回転、プリントの各画像処理における入出力色空間、入出力（主走査、副走査）解像度、入出力（主走査、副走査）画素数、回転角度、入出力圧縮形式等を示す値が格納される。
【０１２８】
そして、画像処理決定部は、該第１の所定テーブルを指定して画像メモリ管理部に画像メモリの配分を依頼する（図１９のＳ１０１）。画像メモリ管理部は、該第１の所定テーブルを参照して画像メモリの配分を決定し、ここではＨＤＤ読出し用の画像メモリおよび回転用の画像メモリに対応する面管理テーブルの使用中フラグに１を立てる。さらに画像メモリ管理部は、ＨＤＤ読出し用の画像メモリおよび回転用の画像メモリに対応するブロック管理テーブルの先頭ブロックの先頭アドレスを、面管理テーブルの先頭ブロック欄に記載する（図１９のＳ１０２）。
【０１２９】
続けて、画像処理決定部は、１ページ目の画像処理開始を１ページ目の画像処理実行部に通知する（図１９のＳ１０３）。１ページ目の画像処理実行部は、ＨＤＤ読出し用の画像メモリの獲得を画像メモリ管理部へ要求する（図１９のＳ１０４）。画像メモリ管理部は、この要求に応じて、面管理テーブルにおいてＨＤＤ読出し用の画像メモリの実行中フラグに１を立てるとともに、対応のブロック管理テーブルの先頭ブロックの先頭アドレスを１ページ目の画像処理実行部へ通知する（図１９のＳ１０５）。この通知を受けた１ページ目の画像処理実行部は、ＨＤＤ２００４からの読出しを開始し、これによってＨＤＤ読出し用の画像メモリへ画像データが格納される。
【０１３０】
ＨＤＤ読出しが終了すると、１ページ目の画像処理実行部は、回転用メモリの獲得を画像メモリ管理部へ要求する（図１９のＳ１０６）。画像メモリ管理部は、これに応じて面管理テーブルにおける回転用の画像メモリの実行中フラグに１を立てるとともに、対応のブロック管理テーブルの先頭ブロックの先頭アドレスを１ページ目の画像処理実行部へ通知する（図１９のＳ１０７）。この通知を受けた１ページ目の画像処理実行部は、ＨＤＤ読出し用の画像メモリに格納された画像データに対して回転処理を開始すると共に、回転後の画像データを回転用の画像メモリに格納する。
【０１３１】
続いて、２ページ目の処理開始がシンクマネージャ４０８０からイメージマネージャ４１１０へ通知されると、画像処理決定部が、１ページ目と同様に２ページ目の画像パス（図１８（Ｂ））を決定し、図２１に例示する第１の所定テーブルと同様な第２の所定テーブルを生成する。そして、画像処理決定部は、該第２の所定テーブルを指定して画像メモリ管理部に２ページ目の画像メモリの配分を依頼する（図１９のＳ１０８）。画像メモリ管理部は、該第２の所定テーブルを第１の所定テーブルと比較し、ここではテーブルの内容が同じであるので、画像メモリの配分を変えないことを決定する。
【０１３２】
次に画像処理決定部が、２ページ目の画像処理開始を２ページ目の画像処理実行部へ通知すると（図１９のＳ１０９）、２ページ目の画像処理実行部は、ＨＤＤ読出し用の画像メモリの獲得を画像メモリ管理部へ要求する（図１９のＳ１１０）。画像メモリ管理部は、ＨＤＤ読出し用の画像メモリの面管理テーブルを調べる。ここでは１ページ目の画像処理実行部で行われた回転処理においてＨＤＤ読出し用の画像メモリが使用されたため、面管理テーブルの実行中フラグに１が立っていっている。このため、画像メモリ管理部は、獲得要求に対する通知を行わず、画像メモリ管理部内部の獲得待ちキューに獲得要求をキューイングする。
【０１３３】
ここで、１ページ目の画像処理実行部における回転処理が終了すると、１ページ目の画像処理実行部は、ＨＤＤ読出し用の画像メモリの解放を画像メモリ管理部へ通知するとともに（図１９のＳ１１１）、回転用画像メモリに格納された回転後の画像データを読み出してプリントを開始する。
【０１３４】
ＨＤＤ読出し用の画像メモリの解放通知を受けた画像メモリ管理部は、面管理テーブルにおけるＨＤＤ読出し用の画像メモリの実行中フラグを０にする。ここで、画像メモリ管理部は、獲得待ちキューを調べ、ここでは獲得待ちキューに、２ページ目の画像処理実行部からのＨＤＤ読出し用画像メモリの獲得要求がキューイングされているので、ＨＤＤ読出し用画像メモリのアドレスを２ページ目の画像処理実行部に通知する（図１９のＳ１１２）。この通知を受けた２ページ目の画像処理実行部は、ＨＤＤ読出しを開始する。
【０１３５】
このＨＤＤ読出しが終了すると、２ページ目の画像処理実行部は、回転用の画像メモリの獲得を画像メモリ管理部に要求する（図１９のＳ１１３）。画像メモリ管理部は、前述のＨＤＤ読出し用画像メモリの場合と同様に、回転用画像メモリ上の画像データが１ページ目のプリント処理に使用されているため、この要求を獲得待ちキューにキューイングする。
【０１３６】
１ページ目のプリント処理が終了すると、１ページ目の画像処理実行部は、回転用の画像メモリの解放を画像メモリ管理部に通知する（図１９のＳ１１４）。これを受けた画像メモリ管理部は、回転用画像メモリのアドレスを２ページ目の画像処理実行部に通知し（図１９のＳ１１５）、この通知を受けた２ページ目の画像処理実行部は、回転処理を開始する。
【０１３７】
ここで、シンクマネージャ４０８０から３ページ目の処理開始がイメージマネージャ４１１０へ通知されると、画像処理決定部は１ページ目、２ページ目と同様に３ページ目の画像パス（図１８（Ｃ））を決定する。ここでは、ＨＤＤ２００４上に蓄積されている画像データの色空間が、１ページ目、２ページ目と違うため、決定した画像処理内容を第３の所定テーブル（図２２に例示）に書き込む。
【０１３８】
そして、画像処理決定部は、該第３の所定テーブルを指定して画像メモリ管理部に３ページ目の画像メモリの配分を依頼する（図２０のＳ１１６）。画像メモリ管理部は、該第３の所定テーブルを第２の所定テーブルと比較し、ここではテーブルの内容が異なっているので、画像メモリの配分の変更が必要であると判断する。
【０１３９】
次に、画像処理決定部は３ページ目の画像処理実行部に、３ページ目の画像処理開始を通知する（図２０のＳ１１７）。これを受けた３ページ目の画像処理実行部は、ＨＤＤ読出し用の画像メモリの獲得を画像メモリ管理部に通知する（図２０のＳ１１８）。ここでは画像メモリ管理部が、３ページ目の画像メモリの配分において配分変更が必要であると判断しているので、メモリ獲得要求には応じず、獲得待ちキューへキューイングする。
【０１４０】
ところで、２ページ目の画像処理実行部が、前述の１ページ目の処理と同様に、回転処理を終了すると、ＨＤＤ読出し用の画像メモリの解放を画像メモリ管理部に通知し（図２０のＳ１１９）、またプリント処理を終了すると、回転用の画像メモリの解放を画像メモリ管理部に通知する（図２０のＳ１２０）。画像メモリ管理部は、２ページ目の回転用の画像メモリの解放をもって２ページ目の処理が終了したと判断し、画像メモリの配分を決定し（図２０のＳ１２１）、ＨＤＤ読出し用、色空間変換用、回転用の各画像メモリをそれぞれ確保する。
【０１４１】
そして、画像メモリ管理部は、獲得待ちキューにキューイングされている３ページ目のＨＤＤ読出し用の画像メモリの獲得要求を読み出し、これに応じて、ＨＤＤ読出し用の画像メモリのアドレスを３ページ目の画像処理実行部へ通知する（図２０のＳ１２２）。
【０１４２】
この３ページ目の画像処理実行部へのアドレス通知の後、３ページ目の画像処理実行部と画像メモリ管理部とが、３ページ目の処理を実行するが（図２０のステップＳ１２２〜ステップＳ１２９）、これは、１ページ目および２ページ目と同様な処理であるため、説明を省略する。
【０１４３】
以上のようにして、本実施の形態では、画像メモリの用途を管理し、画像メモリをスキャン用、プリント用などに分ける。そして、スキャン用の画像メモリ上に格納された画像データをそのままプリント用として使用する場合に、プリント用の画像メモリが空いているならば、このプリント用の画像メモリをスキャン用に転用する。これにより、画像メモリがプリント用で占有されることを防ぐ。
【０１４４】
さらに、上記の場合において、プリント用の画像メモリが空いていないならば、スキャン用の画像メモリに格納された画像データをそのままプリント用に使用することはしないで、それを一旦ＨＤＤのような大容量記憶装置に蓄積する。これにより、スキャン用の画像メモリを、新たにスキャンされた画像データの記憶に使用することができる。
【０１４５】
かくして、ＲＡＭで構成される画像メモリの容量が少ない場合でも、コピー機能のスループットを最大限に発揮することが可能となる。
【０１４６】
〔他の実施の形態〕
なお、本発明の目的は、前述した実施の形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。
【０１４７】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１４８】
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ等の光ディスク、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【０１４９】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけではなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
【０１５０】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その拡張機能を拡張ボードや拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【０１５１】
【図１】本発明の一実施の形態に係る画像入出力装置を含む画像形成システムの構成を示すブロック図である。
【図２】画像形成装置のコントローラユニットの内部構成を示すブロック図である。
【図３】画像データを伝送するパケットの構成を示す図である。
【図４】パケットデータの構成を示す図である。
【図５】図２に示すスキャナ画像処理部の内部構成を示すブロック図である。
【図６】図２に示すプリンタ画像処理部の内部構成を示すブロック図である。
【図７】図１に示す画像形成装置の外観を示す斜視図である。
【図８】図７に示す操作部の構成を示す外観図である。
【図９】画像形成装置の操作部に表示される初期画面を示す図である。
【図１０】図９に示す読込設定ボタンが操作されたときに操作部に表示される読込設定画面（ポップアップウィンドウ）を示す図である。
【図１１】コピー設定タブが操作されたとき操作部に表示されるコピー設定画面を示す図である。
【図１２】ボックスタブが操作されたとき操作部に表示される設定画面を示す図である。
【図１３】図１２に示す複数のフォルダのうちの１つ、例えばフォルダ番号０のフォルダをクリックしたときに操作部に表示される画面を示す図である。
【図１４】画像メモリの管理に使用する各テーブルを例示する図である。
【図１５】図２に示す画像形成装置のコントロールユニットにおいて実行される制御プログラムの構成を示す図である。
【図１６】コピージョブをローカルコピー形態で各ドキュメントマネージャ間において実行した際の一連の処理ステップを示すシーケンス図（１／２）である。
【図１７】コピージョブをローカルコピー形態で各ドキュメントマネージャ間において実行した際の一連の処理ステップを示すシーケンス図（２／２）である。
【図１８】プリント時における画像データに対する３つの処理工程（画像パス）の例を示す図である。
【図１９】図１８に示す３つの処理工程の例に対応して、イメージマネージャの５つの内部モジュールの相互間において実行される一連の処理を示すシーケンス図（１／２）である。
【図２０】図１８に示す３つの処理工程の例に対応して、イメージマネージャの５つの内部モジュールの相互間において実行される一連の処理を示すシーケンス図（２／２）である。
【図２１】図１８（Ａ）に示す１ページ目の画像パスに関わる画像処理内容が記載された第１の所定テーブルを示す図である。
【図２２】図１８（Ｃ）に示す３ページ目の画像パスに関わる画像処理内容が記載された第３の所定テーブルを示す図である。
【符号の説明】
【０１５２】
２００  画像形成装置
２２０、２３０  画像形成装置
２４０  パーソナルコンピュータ（ＰＣ）
２０００  コントロールユニット
２０１１  ＬＡＮ
２０１２  操作部
２０５１  公衆回線（ＷＡＮ）
２０７０  スキャナ部
２０９５  プリンタ部
４０１０  ＵＩ制御部
４０２０  コピーアプリケーション
４０２１  送信アプリケーション
４０２２  ボックスアプリケーション
４０２３  ＰＤＬアプリケーション
４０３０  共通インターフェース
４０４０  ジョブマネージャ
４０５０  スキャンマネージャ
４０６０  ファイルリードマネージャ
４０７０  ＰＤＬマネージャ
４０８０  シンクマネージャ
４０９０  プリントマネージャ
４１００  ファイルストアマネージャ
４１１０  イメージマネージャ
４１２０  ネットワークアプリケーション
【図１】
2007116458.tif 000003
【図２】
2007116458.tif 000004
【図３】
2007116458.tif 000005
【図４】
2007116458.tif 000006
【図５】
2007116458.tif 000007
【図６】
2007116458.tif 000008
【図７】
2007116458.tif 000009
【図８】
2007116458.tif 000010
【図９】
2007116458.tif 000011
【図１０】
2007116458.tif 000012
【図１１】
2007116458.tif 000013
【図１２】
2007116458.tif 000014
【図１３】
2007116458.tif 000015
【図１４】
2007116458.tif 000016
【図１５】
2007116458.tif 000017
【図１６】
2007116458.tif 000018
【図１７】
2007116458.tif 000019
【図１８】
2007116458.tif 000020
【図１９】
2007116458.tif 000021
【図２０】
2007116458.tif 000022
【図２１】
2007116458.tif 000023
【図２２】
2007116458.tif 000024