(57)【要約】【課題】  最新のキャリブレーションデータによる処理を可能とする。【解決手段】  キャリブレーションにより作成したキャリブレーションデータを所定の記憶手段に格納するキャリブレーションデータ格納手段と、ネットワークに接続するネットワーク接続手段と、ネートワーク上に存在するサーバのサーバ情報を設定するサーバ情報設定手段と、設定されたサーバ情報を記憶するサーバ情報記憶手段と、記憶したサーバ情報を表示するサーバ情報表示手段と、記憶したサーバ情報が示すサーバとキャリブレーションデータを送受信する手段とを備えることを特徴とする画像処理装置。【選択図】  図１
2006116799.tif 000002
【特許請求の範囲】
【請求項１】
キャリブレーションにより作成したキャリブレーションデータを所定の記憶手段に格納するキャリブレーションデータ格納手段と、ネットワークに接続するネットワーク接続手段と、ネットワーク上に存在するサーバのサーバ情報を設定するサーバ情報設定手段と、設定されたサーバ情報を記憶するサーバ情報記憶手段と、記憶したサーバ情報を表示するサーバ情報表示手段と、記憶したサーバ情報が示すサーバとキャリブレーションデータを送受信する手段とを備えることを特徴とする画像処理装置。
【請求項２】
キャリブレーション終了時に、サーバ記憶手段に記憶されるサーバ情報が示すサーバに、作成したキャリブレーションデータを送信することを特徴とする請求項１の画像処理装置。
【請求項３】
受信する印刷データに、使用するキャリブレーションデータの指定があったときに、その指定に従うことを特徴とする請求項２の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルコンピュータ等の情報処理装置にネットワークを介して接続されるカラープリンタ等の画像処理装置における印刷特性を安定した所望のものに保つために行われるキャリブレーションに関するものである。
【背景技術】
【０００２】
一般に、画像処理装置は、用いられる環境の温度や湿度など、環境条件によってその印刷特性が変化する場合があることが知られている。また、このような環境条件の他、一定期間の使用の結果印刷特性が変化することもある。これは、電子写真方式の画像処理装置の場合、例えば感光ドラムの感光特性が上記環境条件や使用による経年変化によって変化し、その結果として印刷された画像等において観察される。例えば階調性等の印刷特性が所望のものから変化するものである。また、インクジェット方式の画像処理装置では、例えばプリントヘッドの吐出特性の変化によって上述の印刷特性の変化を生ずることが知られている。
【０００３】
このような印刷特性の変化に基づき、γ補正テーブルを変更するキャリブレーションが従来から行われている。
【特許文献１】特開平１−４１３７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
印刷指示を出したプリンタが、その時点で最適なキャリブレーションを行った状態とは限らない。例えば、目的のプリンタは前回のキャリブレーションから時間が経ち、温度や湿度の変化によって、既に最適な印字を保証できない状態になっているかも知れない。しかし、だからといって印刷データを受信するたびに、キャリブレーション処理を実行するのは問題がある。実情キャリブレーション処理にはかなりの時間を必要とするからである。
【０００５】
本発明は、上述の問題を解決する為になされたものであり、その目的とするところは、印刷特性を一定に保つためのキャリブレーション時間をユーザになるべく意識させず、できるだけ高品質のキャリブレーションデータで印刷することにある。
【課題を解決するための手段】
【０００６】
本発明の目的を達成するために、本発明はキャリブレーションにより作成したキャリブレーションデータを所定の記憶手段に格納するキャリブレーションデータ格納手段と、ネットワークに接続するネットワーク接続手段と、ネットワーク上に存在するサーバのサーバ情報を設定するサーバ情報設定手段と、設定されたサーバ情報を記憶するサーバ情報記憶手段と、記憶したサーバ情報を表示するサーバ情報表示手段と、記憶したサーバ情報が示すサーバとキャリブレーションデータを送受信する手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、最新のキャリブレーションデータによる処理が可能となる。
【発明を実施するための最良の形態】
【０００８】
以下、図面を参照して本発明の実施形態を詳細に説明する。
【０００９】
図１は、ネットワーク１０２を介してクライアントＰＣ１０１およびプリンタ１０３、１０４、１０５、そして後述のスプールサーバ１０６が接続された構成をとる情報処理システムを示す。この情報処理システムで、ユーザはクライアントＰＣ１０１において、種々のアプリケーションによって処理された文書、画像等を、ネットワーク１０２に接続された複数のプリンタ１０３、１０４、１０５のいずれかを選択して印刷出力させることができる。
【００１０】
プリンタ１０３、１０４、１０５は、ネットワーク１０２へ接続されており、それぞれクライアントＰＣ１０１の指示によってプリントを実行することができる。
【００１１】
各プリンタにはキャリブレーションデータを格納する格納部１０３ｃ、１０４ｃ、１０５ｃがある。それぞれのプリンタは、印刷特性を適切に保持するキャリブレーション処理によって作成したキャリブレーションテーブルを、キャリブレーションデータとして格納部１０３ｃ、１０４ｃ、１０５ｃに格納する。そして各プリンタは、このキャリブレーションテーブル、具体的にはγ補正テーブルであるキャリブレーションテーブルによって画像データのγ変換を行いプリントデータの生成を行う。
【００１２】
キャリブレーションデータスプールサーバ１０６（以下スプールサーバ１０６）は、ネットワーク上の各プリンタ１０３、１０４、１０５が生成したキャリブレーションデータを受信し、それを保持し、あるいは保持していたキャリブレーションデータを各プリンタに送信することを役割とするサーバである。
【００１３】
各プリンタには、スプールサーバ情報を格納する格納部１０３ｄ、１０４ｄ、１０５ｄがある。各プリンタは、キャリブレーションデータを送受信するスプールサーバ１０６を示すスプールサーバ情報をここに格納し、これを参照することで、ネットワーク上のスプールサーバを認識する。このスプールサーバ情報は、ユーザが設定することになる。
【実施例１】
【００１４】
以上のような構成に基づいて、本実施例における画像処理装置について説明する。
【００１５】
図２は、ネットワーク１０２に接続するプリンタ１０３、１０４、１０５のキャリブレーションデータ格納部１０３ｃ、１０４ｃ、１０５ｃに格納される、本実施例におけるキャリブレーションデータの構成を示したものである。
【００１６】
データ２０１は、このデータがキャリブレーションデータであることを示す識別情報である。データ２０２は、以下のファイル情報の総バイト数を示す情報である。データ２０３は、このキャリブレーションテーブルを生成したプリンタの機種情報である。そして、データ２０４が実際のキャリブレーションテーブルである。
【００１７】
図３は、本実施例のプリンタにおいて、スプールサーバを設定する際の処理を示すフローチャートである。
【００１８】
ステップＳ３０１において、プリンタはスプールサーバ設定の処理に移るかどうか判断する。ユーザからの指示によって、スプールサーバ設定の処理に移ると判断した場合は、ステップＳ３０２へ進む。そうでなければ、ステップＳ３１３へ進む。
【００１９】
ステップＳ３０２において、プリンタはユーザに対し、現在プリンタに設定されているスプールサーバ情報を知らせる。もしスプールサーバ情報が設定されていなければ、その旨をユーザに伝える。このスプールサーバを示すスプールサーバ情報として、実際には、ＩＰアドレスの利用が考えられる。
【００２０】
ステップＳ３０３において、プリンタはユーザに対し、スプールサーバ情報の入力を促す。入力が完了したらステップＳ３０４へ進む。
【００２１】
ステップＳ３０４において、プリンタはユーザに対し、入力したスプールサーバ情報の正否を問う。ユーザからの指示を正しいと判断すれば、ステップＳ３０５へ進む。そうでなければ、誤りとみなしステップＳ３０１へ進む。もう一度最初から処理を再開する。
【００２２】
ステップＳ３０５において、プリンタは、入力されたスプールサーバ情報が利用可能かどうかチェックする。つまり、ネットワーク上にスプールサーバ情報が示すスプールサーバが存在するかどうかを認識する。もし存在すれば、ステップＳ３０６へ進み、存在しなければステップＳ３０７へ進む。
【００２３】
ステップＳ３０６において、プリンタは、スプールサーバ情報を更新する。現在設定されているスプールサーバ情報を破棄し、ユーザが入力したスプールサーバ情報を新しい設定とする。スプールサーバ情報は、プリンタのスプールサーバ情報格納部に格納される。
【００２４】
ステップＳ３０７において、プリンタは、ユーザに対し、入力のあったスプールサーバ情報が示すスプールサーバがネットワークに存在しないことを知らせる。その後ステップＳ３０２へ進む。
【００２５】
ステップＳ３１３において、プリンタは、例えば印刷データの受信をチェックするなどスプールサーバの設定の処理から離れた処理を行う。その処理を終えたらステップＳ３０１へ戻る。
【００２６】
以上が、本実施例におけるスプールサーバ設定の処理である。
【００２７】
次に、本実施例におけるプリンタのキャリブレーション開始から終了までの処理を図４のフローチャートに示す。
【００２８】
ステップＳ４０１において、プリンタはキャリブレーションを開始するかどうかをチェックする。キャリブレーション開始の条件としては、温度や湿度といった環境の変化が考えられるが、ここではそれについての詳細は問わない。キャリブレーション開始ならばステップＳ４０２へ進み、キャリブレーションのための処理を開始する。キャリブレーション開始でないならばステップＳ４０９へ進み、他の処理を実行した後、再びステップＳ４０１においてキャリブレーションの開始をチェックすることになる。
【００２９】
ステップＳ４０２において、プリンタは実際のキャリブレーション処理を実行し、γ補正テーブルであるキャリブレーションテーブルを生成する。
【００３０】
ステップＳ４０３において、プリンタはキャリブレーション処理が終了したかどうかをチェックする。終了した場合は、ステップＳ４０４以降でキャリブレーションデータの更新作業を行い、終了でない場合は、ステップＳ４０２にてキャリブレーション処理を続ける。
【００３１】
ステップＳ４０４において、プリンタはステップＳ４０２で生成されたキャリブレーションテーブルをキャリブレーションデータ格納部へ格納し、ステップＳ４０５へ進む。
【００３２】
ステップＳ４０５において、プリンタは図２に示したキャリブレーションデータの総バイト数部分に値を書込む。
【００３３】
ステップＳ４０６において、プリンタは図２に示したキャリブレーションデータの種類情報部分に自らの機種を示す固有の値を書込む。
【００３４】
ステップＳ４０７において、プリンタのスプールサーバ情報格納部に、ユーザが設定したスプールサーバ情報であれば、ステップＳ４０８へ進む。なければそのままキャリブレーション処理は終了である。
【００３５】
ステップＳ４０８において、プリンタは生成したばかりのキャリブレーションデータを、スプールサーバ情報が示すスプールサーバへ転送する。
【００３６】
以上で本実施例におけるプリンタのキャリブレーション処理が終了する。
【００３７】
図３と図４で、プリンタがスプールサーバへキャリブレーションデータを転送する処理を説明したので、次はスプールサーバの処理を説明する。
【００３８】
図５は、スプールサーバが内部に保持する、ネットワーク上のプリンタから受信したキャリブレーションデータ群の構成を示したものである。
【００３９】
タイムスタンプ情報５０１は、そのキャリブレーションデータをいつ受信したかを示す情報で、スプールサーバがセットする。データ５０２、５０３、５０４は、図２に示したキャリブレーションデータそのままであり、順にデータの総バイト数、キャリブレーションデータを生成したプリンタの機種情報、そしてキャリブレーションテーブルである。
【００４０】
これら１組が、ある１機種のプリンタからのキャリブレーションデータを表し、それが複数連なっている。データ５０５は、そうした連なるデータを検索した場合に利用するデータ終了を示す終端情報である。
【００４１】
図６は、本実施例におけるスプールサーバの処理を示したフローチャートである。
【００４２】
ステップＳ６０１において、スプールサーバはデータの受信をチェックする。何かしらデータの受信があったら、ステップＳ６０２へ進む。
【００４３】
ステップＳ６０２において、スプールサーバは受信したデータの解析を行う。図２に示したとおり、キャリブレーションデータかどうかは、データの先頭を見れば判断可能である。
【００４４】
ステップＳ６０３において、解析の結果、受信データがキャリブレーションデータの場合、ステップＳ６０６へ進む。そうでなければステップＳ６０４へ進む。
【００４５】
ステップＳ６０４において、スプールサーバは受信データがネットワーク上のプリンタからのキャリブレーションデータ要求であるか否かをチェックする。もしキャリブレーションデータ要求ならば、ステップＳ６０５へ進む。そうでないなら、ステップＳ６０１へ戻ることになる。なお、ステップＳ６０５における処理の詳細は、図９を用いて後述する。
【００４６】
ステップＳ６０６において、スプールサーバは受信したキャリブレーションデータの中から機種情報を獲得する。
【００４７】
ステップＳ６０７において、スプールサーバは、獲得した機種情報が、サーバ内で保持しているキャリブレーションデータ群（図５）にあるかどうかをチェックする。
【００４８】
そのチェック方法は、キャリブレーションデータ群先頭アドレス５０６から、各プリンタの機種情報を順々に参照して行く。終端情報を参照するまでに、獲得した機種情報と一致する機種情報がなければ、そのデータは、スプールサーバが初めて受信する機種のキャリブレーションデータということになり、ステップＳ６０８へ進む。しかし、獲得した機種情報と一致する機種情報があったら、以前にも同一機種からキャリブレーションデータを受信していることになり、ステップＳ６１１へ進む。
【００４９】
ステップＳ６０８において、スプールサーバは受信したキャリブレーションデータを保持できるかどうかチェックする。受信したキャリブレーションデータのサイズがスプールサーバのメモリ空き容量を超える場合はステップＳ６９０へ進み、超えない場合はステップＳ６１０へ進む。
【００５０】
ステップＳ６０９において、スプールサーバはサーバ内で保持するキャリブレーションデータのうち、最古のタイムスタンプ情報を持つものを削除する。そしてこの削除によって、新しく受信したキャリブレーションデータを保持できるようになったかをチェックするために、ステップＳ６０８へ進む。
【００５１】
ステップＳ６１０において、スプールサーバは受信した新機種のキャリブレーションデータをサーバ内に新規に保存する。
【００５２】
ステップＳ６１１において、スプールサーバは、獲得した機種情報と同一の機種情報を持つキャリブレーションデータの位置に、新しく受信したキャリブレーションデータを上書き保存する。
【００５３】
ステップＳ６１２において、スプールサーバは受信したキャリブレーションデータのタイムスタンプ情報に現在の時刻を書込む。ここで書込んだタイムスタンプ情報が、ステップＳ６０９におけるキャリブレーションデータ削除の際に利用される。
【００５４】
以上で本実施例におけるスプールサーバの一連の処理が終わる。
【００５５】
図７は本実施例におけるプリンタが、クライアントＰＣ１０１からの印刷データを受信する時の処理を示したフローチャートである。
【００５６】
ステップＳ７０１において、プリンタは印刷データの受信があるかどうかをチェックする。もし受信があればステップＳ７０２へ進む。なければステップＳ７０８へ進み、データ受信のチェック以外の処理をした後、ステップＳ７０１へ進む。
【００５７】
ステップＳ７０３において、プリンタは自分自身にスプールサーバ情報の設定があるかどうかをチェックする。スプールサーバ情報があればステップＳ７０３へ、無ければステップＳ７０７へ進む。
【００５８】
ステップＳ７０３において、プリンタはスプールサーバに対して同一機種のキャリブレーションデータを要求する。その要求データは、図８に示す構成をとる。データ８０１は、このデータがプリンタからスプールサーバへ向けて送られた「キャリブレーションデータ要求」ということを示す識別情報、データ８０２はこのデータを送信したプリンタの機種を示す機種情報である。
【００５９】
ステップＳ７０４において、プリンタはスプールサーバから「キャリブレーションデータあり」のリプライを受けたらステップＳ７０５へ進み、「キャリブレーションデータなし」のリプライを受けたらステップＳ７０７へ進む。
【００６０】
ステップＳ７０５において、プリンタはスプールサーバから同一機種のキャリブレーションデータをダウンロードする。
【００６１】
ステップＳ７０６において、プリンタハダウンロードしたキャリブレーションデータを自分自身のキャリブレーションデータとする。
【００６２】
ステップＳ７０７において、プリンタは印刷データの印字処理を開始する。プリンタ自身にスプールサーバ情報が設定されていない場合（ステップＳ７０２でＮｏ）や、設定があってもスプールサーバに同一機種のキャリブレーションデータがない場合（ステップＳ７０４でＮｏ）は、従来通りにその時プリンタ自身に格納されているキャリブレーションデータにて印字処理を行う。しかし、それ以外の場合、プリンタはスプールサーバからキャリブレーションデータをダウンロードして、それを自分自身のキャリブレーションデータにした後、印字処理を開始する。
【００６３】
最後に図９は、プリンタが送信した「キャリブレーションデータ要求」をスプールサーバが受信した際の処理を示したフローチャートである。このフローチャートが、先に図６のフローチャートに示したステップＳ６０５の詳細な処理になる。
【００６４】
ステップＳ９０１において、スプールサーバは受信した「キャリブレーションデータ要求」（図８）の中からデータ機種情報を獲得する。
【００６５】
ステップＳ９０２において、スプールサーバは、獲得した機種情報が、サーバ内で保持しているキャリブレーションデータ群（図５）にあるかどうかをチェックする。チェック方法は、図６のフローチャートにおけるステップＳ６０７で示した方法と一緒である。もし同一機種情報があったらステップＳ９０５へ、無ければステップＳ９０４へ進む。
【００６６】
ステップＳ９０４において、スプールサーバは「キャリブレーションデータ要求」をして来たプリンタに「キャリブレーションデータなし」のリプライをする。これで一連の処理を終えることになる。
【００６７】
ステップＳ９０５において、スプールサーバは「キャリブレーションデータ要求」をして来たプリンタに「キャリブレーションデータあり」のリプライをする。そしてステップＳ９０６へ進む。
【００６８】
ステップＳ９０６において、スプールサーバは「キャリブレーションデータ要求」をして来たプリンタに対し、獲得した機種情報と同じ機種情報を持つキャリブレーションデータを送信することになる。
【００６９】
以上が、スプールサーバが「キャリブレーションデータ要求」を受信した際の処理になる。また、これらは図７で示したプリンタの処理（ステップＳ７０３からステップＳ７０５）と対になっている。
【００７０】
本実施例によれば、ネットワークに接続されたプリンタは、キャリブレーション処理を実行したとき、生成したキャリブレーションデータを予め登録したスプールサーバへ転送することができる。スプールサーバは、プリンタから受信したキャリブレーションデータを、プリンタの機種別に保持し、プリンタが要求すればそのプリンタと同一機種のキャリブレーションデータを提供できる。
【００７１】
また、本実施例によれば、あるネットワーク上全てのプリンタが、ひとつのスプールサーバを登録したとする。プリンタは、常にスプールサーバのキャリブレーションデータをダウンロードして印字しようとする。そして、キャリブレーション処理後にキャリブレーションデータをスプールサーバに転送するというプリンタの性質上、スプールサーバには、ネットワーク上で最新のキャリブレーションデータが入っていることになる。そのためユーザは常に最新のキャリブレーションデータによる印字が可能になり、印字品質の向上が期待できる。
【実施例２】
【００７２】
本実施例において、ユーザはクライアントＰＣ１０１のプリンタドライバ１０１ｄを使用することで、印刷指示を出すプリンタに対して、印字処理に使用するキャリブレーションデータを指定できる。すなわちプリンタ自身が格納しているキャリブレーションデータで印字するか、あるいはスプールサーバに保持されているキャリブレーションデータをダウンロードしてから印字するか、という指定である。そして、ユーザがプリンタに印刷データを転送した時、この「指定データ」も一緒に転送される。
【００７３】
図１０は、本実施例におけるプリンタが、クライアントＰＣ１０１からの印刷データを受信する際の処理を示すフローチャートである。しかし、このフローチャートは図７に示したフローチャートに、ステップＳ１００２とステップＳ１００３を追加しただけのものである。よってステップＳ１００２、ステップＳ１００３以外は、図７に示す処理と全く同じであり、それらの説明は省く。
【００７４】
ステップＳ１００２において、プリンタは受信した印刷データの解析をする。
【００７５】
ステップＳ１００３において、プリンタは印刷データの中に含まれる。使用するキャリブレーションデータを指定する「指定データ」を参照する。もしスプールサーバの指定があればステップＳ１００４へ、なければステップＳ１００９へ進む。
【００７６】
なおステップＳ１００４以降で、プリンタはスプールサーバからキャリブレーションデータをダウンロードしようとする。このときユーザからの指定があっても、当然キャリブレーションデータをダウンロード出来ない場合はある。
【００７７】
本実施例は、プリンタが使用するキャリブレーションデータをユーザが指定できるというのが特徴である。
【００７８】
実施例２において、ユーザは印刷指示を出すプリンタに対して、使用するキャリブレーションデータの指定を出来るようになる。実施例１では、印刷の度にキャリブレーションデータのダウンロードが行われ、時に非効率である。使用するキャリブレーションデータを指定できることによって、実施例１におけるユーザの利便性を向上するこが出来る。
【図面の簡単な説明】
【００７９】
【図１】実施例１における情報システムの構成を示すブロック図である。
【図２】実施例１におけるキャリブレーションデータの構成を示す図である。
【図３】実施例１のプリンタにおけるスプールサーバ設定の処理手順を示すフローチャートである。
【図４】実施例１におけるプリンタのキャリブレーション開始から終了までの処理を示すフローチャートである。
【図５】実施例１におけるスプールサーバが内部に保持する、ネットワーク上のプリンタから受信したキャリブレーションデータ群の構成を示した図である。
【図６】実施例１におけるスプールサーバの処理を示すフローチャートである。
【図７】実施例１におけるプリンタが、クライアントＰＣ１０１からの印刷データを受信する時の処理を示すフローチャートである。
【図８】実施例１において、プリンタからスプールサーバへ向けて送信される「キャリブレーションデータ要求」の構成を示す図である。
【図９】実施例１において、「キャリブレーションデータ要求」をスプールサーバが受信した際の処理を示すフローチャートである。
【図１０】実施例２におけるプリンタの印刷処理を示すフローチャートである。
【図１】
2006116799.tif 000003
【図２】
2006116799.tif 000004
【図３】
2006116799.tif 000005
【図４】
2006116799.tif 000006
【図５】
2006116799.tif 000007
【図６】
2006116799.tif 000008
【図７】
2006116799.tif 000009
【図８】
2006116799.tif 000010
【図９】
2006116799.tif 000011
【図１０】
2006116799.tif 000012