(57)【要約】【課題】  印刷装置が弁別性の高いグレースケール画像データを生成することができない場合であっても、弁別性の高いグレースケール画像の印刷を可能とすることを目的とする。【解決手段】  本発明に記載の情報処理装置は、入力された第１の画像データから無彩色で表現される第２の画像データを生成し、無彩色の当該画像データを印刷装置に出力する情報処理装置において、前記第１の画像データに含まれる所定の種類のオブジェクトに使われる色の数を取得する取得手段と、前記第１の画像データに含まれる前記所定の種類のオブジェクトに使われる色を前記取得手段により取得された色の数に基づいて求められる無彩色に対応する１チャンネルの信号値で置き換え、前記第２の画像データを生成するグレースケール変換手段と、前記グレースケール変換手段により生成された前記第２の画像データを前記印刷装置に対して出力する出力手段と、を有することを特徴とする。【選択図】  図５
2020101844.tif 000002
【特許請求の範囲】
【請求項１】
入力された第１の画像データから無彩色で表現される第２の画像データを生成し、無彩色の当該画像データを印刷装置に出力する情報処理装置において、
前記第１の画像データに含まれる所定の種類のオブジェクトに使われる色の数を取得する取得手段と、
前記第１の画像データに含まれる前記所定の種類のオブジェクトに使われる色を前記取得手段により取得された色の数に基づいて求められる無彩色に対応する１チャンネルの信号値で置き換え、前記第２の画像データを生成するグレースケール変換手段と、
前記グレースケール変換手段により生成された前記第２の画像データを前記印刷装置に対して出力する出力手段と、を有することを特徴とする画像処理装置。
【請求項２】
前記グレースケール変換手段は、無彩色の信号値が取ることのできる値を前記取得手段により取得された値で等分した信号値を前記グレースケール変換手段が使用する無彩色の信号値として算出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記取得手段は、入力された前記第１の画像データに含まれるイメージデータに含まれる色の数を前記第１の画像データに含まれる色の数として数えないことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記グレースケール変換手段は、前記イメージデータについて、当該イメージデータに含まれる色の信号値を前記取得手段により取得された色数によらない無彩色の信号値に変換することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
入力された前記第１の画像データからそれぞれのオブジェクトの色の信号値を抽出する抽出手段と、
前記抽出手段により抽出された前記信号値を記憶する記憶手段をさらに有し、
前記記憶手段は、前記抽出手段によりすでに記憶されている色が抽出された場合、当該色の信号値を記憶しないことを特徴とする請求項１乃至４のいずれか一項に記載の情報処理装置。
【請求項６】
前記出力手段は、前記第２の画像データとともに前記取得手段により取得された色数に基づくグレースケール変換がなされたか否かを示すフラグを出力することを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
前記グレースケール変換手段は、複数の有彩色のチャンネルで表現される前記第１の画像データを無彩色の１チャンネルで表現される前記第２の画像データに変換することを特徴とする請求項１乃至６のいずれか一項に記載の情報処理装置。
【請求項８】
印刷設定を行う画面を表示する表示手段と、
前記表示手段に表示された前記画面を介した入力に基づいて、前記色の数に基づくグレースケール変換を行うか否かを設定する設定手段と、をさらに有し、
前記グレースケール変換手段は、前記設定手段によるに基づいて、前記取得手段により取得された色数に基づくグレースケール変換を行うことを特徴とする請求項１乃至７のいずれか一項に記載の情報処理装置。
【請求項９】
前記グレースケール変換手段は、前記取得手段により取得された色数に基づくグレースケール変換が設定されていない場合、前記画像データに含まれる複数の色の信号値を、有彩色の複数のチャンネルの信号値に重みづけをして求められる無彩色に対応する１チャンネルの信号値に置き換えてグレースケールの画像データを生成するグレースケール変換を行うことを特徴とする請求項１乃至８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記グレースケール変換手段は、前記第１の画像データに含まれる複数の色の信号値をそれぞれ濃淡の異なる無彩色の信号値に変換することを特徴とする請求項１乃至９のいずれか一項に記載の情報処理装置。
【請求項１１】
各グレースケールの信号値について、あるグレースケールの信号値とその次に大きなグレースケールの信号値の差が一定となることを特徴とする請求項１乃至１０のいずれか一項に記載の情報処理装置。
【請求項１２】
前記所定の種類のオブジェクトとは、グラフィック、または、テキストであることを特徴とする請求項１乃至１１のいずれか一項に記載の情報処理装置。
【請求項１３】
前記出力手段は、前記グレースケール変換手段により生成された無彩色の前記第２の画像データを所定のデータサイズごとに前記印刷装置に出力することを特徴とする請求項１乃至１２のいずれか一項に記載の情報処理装置。
【請求項１４】
前記第２の画像データはページ記述言語データであることを特徴とする請求項１乃至１３のいずれか一項に記載の情報処理装置。
【請求項１５】
入力された第１の画像データから無彩色で表現される第２の画像データを生成し、無彩色の当該画像データを印刷装置に出力する情報処理装置の制御方法において、
前記第１の画像データに含まれる色の数を取得する取得工程と、
無彩色の信号値を用いて、前記第１の画像データから無彩色で表現される前記第２の画像データを生成するグレースケール変換工程と、
前記グレースケール変換工程において生成された前記第２の画像データを前記印刷装置に対して出力する出力工程と、を有し、
前記グレースケール変換工程は、前記取得工程において取得された前記第１の画像データに含まれる色数を用いて算出された無彩色の信号値を用いて、入力された前記第１の画像データに基づく、前記第２の画像データを生成することを特徴とする情報処理装置の制御方法。
【請求項１６】
請求項１５に記載の情報処理装置の制御方法をコンピュータが実行するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、および情報処理装置の制御方法ならびにプログラムにかかるものである。
【背景技術】
【０００２】
ＲＧＢ形式などのカラーで表現されたカラー画像データをグレースケール画像データに変換して出力する場合、入力画像データのＲＧＢ信号値を無彩色の信号値に変換する。グレースケール変換を行う場合には、ＮＴＳＣ変換等、Ｒ、Ｇ、Ｂのそれぞれの信号値に一定の重みづけを行い、変換後の無彩色の信号値を求める。
【０００３】
グレースケール変換をした場合、カラー画像データにおいて異なる色であっても、同じ信号値または、近い信号値に変換されてしまう場合がある。そのためカラー画像データでは異なる色で表現されて区別して識別可能な領域であっても、グレースケール変換後では区別して識別しにくくなってしまう。特に、図１のように信号値の近い無彩色が接している場合、どこが色の境目かが分からなくなってしまう。本明細書では、色の区別しやすさを示す指標を弁別性と呼び、それぞれの色が異なる色であることが分かりやすい状態を弁別性が高い状態と呼ぶ。
【０００４】
グレースケール変換後でも弁別性の高い画像を得るための技術がある。特許文献１に記載の印刷装置は入力されたＰＤＬ（Ｐａｇｅ  Ｄｉｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）データからページ内で使われている色やオブジェクトなどを解析してカラー画像データに含まれる色数を取得する。そして、当該色数の値を使い、入力されたＰＤＬデータをそれぞれの無彩色の信号値の差が均等になるように変換する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１７−３８２４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、印刷装置がＰＤＬデータに含まれる色情報から弁別性の高いグレースケール変換を行うことができない場合、入力されたカラー画像データから弁別性の高いグレースケール画像の印刷を行うことが出来ない。また、複数のプリンタドライバから印刷ジョブが投入される印刷装置はそれぞれの印刷ジョブを解析し、印刷用の画像データを生成して印刷を実行する。印刷装置側で弁別性の高いグレースケール変換を行うと、印刷装置における処理が多くなり、後続のジョブの実行までにかかる時間が長くなってしまうことがある。そのため、プリンタドライバ側で弁別性の高いグレースケール画像データを生成し、当該画像データを印刷装置に送信する構成とすることが望ましい。
【０００７】
本発明は、上記問題に鑑みて成されたものであり、印刷装置でグレースケールへの変換処理を行わなくても、弁別性の高いグレースケール画像を印刷することができるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明に記載の情報処理装置は、入力された第１の画像データから無彩色で表現される第２の画像データを生成し、無彩色の当該画像データを印刷装置に出力する情報処理装置において、前記第１の画像データに含まれる所定の種類のオブジェクトに使われる色の数を取得する取得手段と、前記第１の画像データに含まれる前記所定の種類のオブジェクトに使われる色を前記取得手段により取得された色の数に基づいて求められる無彩色に対応する１チャンネルの信号値で置き換え、前記第２の画像データを生成するグレースケール変換手段と、前記グレースケール変換手段により生成された前記第２の画像データを前記印刷装置に対して出力する出力手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、印刷装置でグレースケールへの変換処理を行わなくても、弁別性の高いグレースケール画像を印刷することができるようにすることができる。
【図面の簡単な説明】
【００１０】
【図１】弁別性の低いグラフの一例を示す図である。
【図２】本実施例における情報処理装置の構成の一例を示す図である。
【図３】本実施例における情報処理装置のソフトウェアモジュールの構成の一例を示す図である。
【図４】本実施例における印刷処理を示すフローチャートである。
【図５】本実施例における本発明にかかるシステム全体を示すフローチャートである。
【図６】本実施例におけるプリンタドライバによる印刷設定画面の一例を示す図である。
【図７】本実施例におけるドライバに入力される描画コマンドの一例を示す図である。
【図８】本実施例における色値テーブルの一例を示す図である。
【図９】本実施例における弁別性の高いグレースケール変換の処理を示すフローチャートである。
【図１０】本実施例における弁別性の高いグレースケール変換のときのグレーの信号値を示す模式図である。
【図１１】本実施例における、印刷データの一例を示す図である。
【発明を実施するための形態】
【００１１】
（実施例）
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１２】
本実施例では、印刷処理システムにおいてプリンタドライバでカラー画像データをＫ単色で描画するグレースケールのＰＤＬデータに変換して印刷装置に対して出力する。
【００１３】
はじめに、図２を用いて、本実施例において、情報処理装置１０、および印刷装置６で構成される印刷システムを説明する。
【００１４】
ＣＰＵ１は、情報処理装置１０の全体を制御する制御手段である。補助記憶装置３はＨＤＤ，ＳＳＤ，ＦＤ，ＣＤ−ＲＯＭ，ＩＣメモリカード等の記憶媒体であり、システムプログラムやアプリケーションプログラムを記憶する記憶媒体である。
【００１５】
ＲＡＭ２はＣＰＵ１が使用する作業メモリであり、補助記憶装置３に記憶されたプログラムやアプリケーションを展開するのに用いられる。
【００１６】
ＣＰＵ１は、補助記憶装置３に記憶されたシステムプログラムやアプリケーションプログラムをＲＡＭ２にロードし、入力された画像データの解析や印刷装置６への印刷データを出力する。
【００１７】
出力装置５はディスプレイなどの表示装置であり、入力装置４はキーボード、ポインティングデバイス等ユーザによる入力のために操作されるデバイスである。
【００１８】
情報処理装置１０で生成された画像データはＮＩＣ８（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）からネットワーク９を介して、印刷装置６に送信される。本実施例において、印刷装置６はプリンタ等のＳＦＰまたは、スキャナ機能、コピー機能の両方の機能を備えるＭＦＰ等である。
【００１９】
図３は本実施例における情報処理装置１０のソフトウェア構成の一例を示す図である。ＣＰＵ１が補助記憶装置３に記憶されたプログラムをＲＡＭ２に展開し実行することにより、各処理部１２〜１９として機能する。
【００２０】
プリンタドライバ１１は、情報処理装置１０のＯＳ上で実行され、かつ、印刷装置を制御するためのプログラムであり、各処理部１２〜１８として機能させるためのモジュールを含んでいる。プリンタドライバは描画に用いられる言語ごとに設けられている。たとえば、ＧＤＩ（Ｇｒａｐｈｉｃｓ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）を解釈してＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）データを生成するＧＤＩプリンタドライバがある。また、ＸＰＳ（ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）を解釈してＰＤＬデータを生成するドライバとして、ＸＰＳプリンタドライバがある。
【００２１】
ユーザインタフェース部１２はユーザからの情報処理装置１０に対する入力の受け付けや、出力装置５への画面の表示の制御を行うソフトウェアモジュールである。ユーザインタフェース部１２はプリンタドライバの設定画面を出力装置５に出力したり、出力装置５に表示された画面に対して入力装置４を用いて行われたユーザからの入力を受け付けたりする。
【００２２】
レイアウト処理部１３は、文書作成等を行うアプリケーションからの印刷指示に従って、画像データを印刷時のレイアウトに変換する処理を行う。たとえば、ユーザがドライバを介してＮ−ｕｐや拡大縮小の指示をした場合、レイアウト処理部１３は設定された値に従って画像データを変換する。
【００２３】
描画コマンド制御部１４は、レイアウト処理部１３から描画コマンドを受け付け、印刷装置において処理できる画像データを作成する。本実施例においては、描画コマンド制御部１４が弁別性の高いグレースケール画像データを生成する。そして、描画コマンド制御部１４で生成された弁別性の高いグレースケールの画像データが印刷装置６に送信される。描画コマンド制御部１４は、グレースケール変換部１５、描画コマンド生成部１６、描画コマンド解析部１７を含む。描画コマンド制御部１４はグレースケールのＰＤＬデータを生成するグレースケール変換手段として動作する。
【００２４】
描画コマンド解析部１７はアプリケーションから受信したカラー画像データに含まれる描画コマンドを解析するモジュールである。アプリケーションから受信したカラー画像データに対して弁別性の高いグレースケール画像への変換を行うことが設定されていると判定された場合、描画コマンド解析部１７はカラー画像データをグレースケール変換部１５に渡す。アプリケーションから受信したカラーデータに対して弁別性の高いグレースケール変換を行う設定がなされていない場合、描画コマンド解析部１７はカラー画像データを描画コマンド生成部１６に渡す。
【００２５】
グレースケール変換部１５はＮＴＳＣ変換等、一定の重みづけで行うグレースケール変換と異なるグレースケール変換を実行し、弁別性の高いグレースケール画像データを生成する。
【００２６】
描画コマンド生成部１６は、グレースケール変換部１５から渡された描画コマンドや、描画コマンド解析部１７が解析した描画コマンドに基づいてＰＤＬデータ等の印刷装置が解析することのできる画像データの生成を行う。
【００２７】
印刷データ制御部１８は、描画コマンド生成部１６で作成された描画コマンドとともに印刷装置６に送信されるＰＪＬ（Ｐｒｉｎｔ  Ｊｏｂ  Ｌａｎｇｕａｇｅ）データを生成する。ＰＪＬデータはたとえば、どの用紙を使って印刷するか、どの排紙トレイに排紙をするか、カラーモノクロの設定値をどのようにするか等印刷ジョブを制御するためのデータである。
【００２８】
印刷データ送受信部１９は、描画コマンド生成部１６の生成したＰＤＬコマンド、印刷データ制御部１８の生成したＰＪＬデータを印刷装置６に送信するためのソフトウェアモジュールである。ＣＰＵ１が印刷データ送受信部１９として動作し、ＮＩＣ８を制御することで、描画コマンド制御部１４や印刷データ制御部１８が生成した印刷データを印刷装置６に出力することができる。
【００２９】
図４を用いて、情報処理装置１０がアプリケーションにより生成されたカラー画像データから印刷装置６に送信する印刷データを生成し、当該データを印刷装置６に送信する処理を説明する。図４のフローチャートで示される処理を実行するためのプログラムは補助記憶装置３に記憶されており、ＣＰＵ１が当該プログラムを実行することで処理が実現される。また、図４に記載されている処理は、ユーザがアプリケーションの画面から印刷開始を指示したり、情報処理装置に接続されたキーボード等の入力装置から印刷開始を指示した場合に開始される。
【００３０】
印刷データ制御部１８は、ユーザにより設定された印刷設定に基づく印刷情報であるＰＪＬデータを生成する（Ｓ５０１）。ユーザにより設定される印刷設定とは、たとえば、印刷時の片面両面設定や、集約印刷（Ｎｉｎ１印刷）の設定である。印刷時のカラー設定も上記の印刷設定に含まれる。
【００３１】
描画コマンド制御部１４は、描画コマンド解析部１７が解析したコマンドに基づく、ＰＤＬデータを生成するＰＤＬ変換処理を実行する（Ｓ５０２）。描画コマンド解析部１７、描画コマンド生成部１６およびグレースケール変換部１５における処理の詳細は図５で後述する。弁別性の高いグレースケール画像の印刷が指示されている場合、Ｓ５０２において情報処理装置は弁別性の高いグレースケールのＰＤＬデータを生成する。
【００３２】
印刷データ送受信部１９は、印刷データ制御部１８により生成されたＰＪＬデータおよび、Ｓ５０２で生成されたＰＤＬデータで構成される印刷データを印刷装置６に出力する（Ｓ５０３）。ＰＪＬデータはジョブの先頭で送信される。その後、印刷データ送受信部１９は、Ｓ５０２で生成されたＰＤＬデータを所定のデータサイズ分溜め、所定のデータサイズごとにＰＤＬデータを送信する。印刷データ送受信部１９は、当該印刷ジョブが完了するまで、Ｓ５０２に示すＰＤＬデータの生成とＳ５０３における生成したＰＤＬデータの送信を繰り返し行う。図１１に本実施例において生成される印刷データの一例を示す。印刷データの先頭には当該印刷ジョブを投入したユーザの名前やジョブの名称等が記載されている。フラグ１１０１は弁別性の高いグレースケール変換がなされたデータかどうかを示すフラグである。当該フラグがＴＲＵＥに設定されている場合、当該印刷データに含まれるＰＤＬデータは弁別性の高いグレースケール変換がなされた後のデータである。当該フラグがＦＡＬＳＥに設定されている場合、当該印刷データに含まれるＰＤＬデータは弁別性の高いグレースケール変換がなされていないデータである。印刷データ制御部１８は、プリンタドライバのＵＩ上でなされた設定を参照し、弁別性の高いグレースケール変換がなされる場合には、フラグ１１０１をＴＲＵＥに設定する。フラグ１１０１を有することで、印刷装置が当該印刷データを受信したときに、再度、弁別性の高いグレースケール変換をしてしまうことを防ぐことができる。
【００３３】
以上が、情報処理装置が印刷装置に送信する印刷データを生成する処理である。印刷装置６は、情報処理装置１０が出力したＰＤＬデータを解析し、レンダリング、ハーフトーン処理等の画像処理を行う。そして、印刷装置６は生成したイメージデータを用紙に印刷する。
【００３４】
次に、図５を用いて図４のＳ５０２で実行されるＰＤＬ変換処理の詳細を説明する。図５に記載の処理を実行するためのプログラムはＲＯＭ７に記憶されており、ＲＡＭ２に展開された当該プログラムをＣＰＵ１が実行することにより処理が実現される。
【００３５】
描画コマンド解析部１７は、印刷設定を参照し、弁別性の高いグレースケール印刷が設定されているか否かを判定する（Ｓ６０１）。描画コマンド解析部１７は、描画コマンドに含まれるカラーモードの設定、および、弁別性の高いグレースケール変換を行うか否かの設定に基づいてグレースケール変換を行う。描画コマンド解析部１７は、カラーモードがグレースケールに設定されており、さらに、弁別性の高いグレースケール変換を行うことが設定されている場合に、弁別性の高いグレースケールが設定されていると判定する。弁別性の高いグレースケールが設定されている場合、グレースケール変換部１５は、Ｓ６０２に処理を進める。弁別性の高いグレースケール以外の設定がなされている場合、グレースケール変換部１５はＳ６０９に処理を進める。
【００３６】
ユーザは図６（ａ）に示すプリンタドライバ１１の印刷設定画面を操作して、印刷設定を行う。入力フィールド１２００〜１２０６はそれぞれの設定項目の設定を入力する領域である。入力フィールド１２０６はカラーモードを設定するためのフィールドである。ユーザがボタン１２０７を選択すると、図６（ｂ）のように選択することのできる設定値が表示される。本実施例において、ユーザは自動（カラー／モノクロ）、カラー、グレースケールのいずれかからカラーモードを選択することができる。“自動（カラー／モノクロ）”１２１１は印刷装置６が入力された画像データに合わせてカラーモードを自動選択する設定である。“カラー”１２１２は入力された画像データをＣＭＹＫ等、複数色のトナーで印刷するモードである。入力フィールド１２０６に入力されている“グレースケール”は、入力された画像データはＫトナーのみの画像データに変換して印刷するモードである。図６（ａ）のチェックボックス１２０８はプリンタドライバ１１が弁別性の高い出力画像を生成するか否かを設定するための入力箇所である。例えばこのチェックボックス１２０８は、カラーモードの入力フィールド１２０６が「グレースケール」に設定されているときのみにおいて、選択できる（マークをつけることができる）。ユーザがカラーモードをグレースケールに設定し、チェックボックス１２０８を選択した場合、プリンタドライバ１１は弁別性の高いグレースケールのＰＤＬデータを生成する。ユーザがカラーモードにグレースケールを設定し、チェックボックス１２０８を選択していない場合、プリンタドライバはＮＴＳＣ方式等公知の方法を用いてグレースケールのＰＤＬデータを生成する。カラーモードにおいてグレースケールが選択されている場合、情報処理装置１０は複数チャンネルの画像データをＫのみの１チャンネルの信号値に変換する。Ｋトナーに対応する無彩色の信号値は当該値により黒の濃淡を示している。信号値が大きいほど黒が薄いことを意味し、信号値が小さいほど黒が濃いことを意味している。
【００３７】
ユーザは印刷設定を終えたら“ＯＫ”１２０９を選択し、印刷設定を完了する。“キャンセル”１２１０は表示部に表示されている設定を破棄し、設定を今回の設定以前の設定に戻すためのボタンである。そして、ユーザはプリンタドライバの表示する画面、またはアプリケーションの表示する画面から印刷実行指示を入力する。
【００３８】
Ｓ６０１では、グレースケール変換部１５が図６に示す印刷設定画面を介して設定されたカラーモードを参照し、弁別性の高いグレースケールが設定されているか否かを判定する。
【００３９】
描画コマンド解析部１７は、入力された描画コマンドがイメージデータの描画コマンドであるか否かを判定する（Ｓ６０２）。イメージデータの描画コマンドであると判定された場合、グレースケール変換部１５はＳ６０６へ処理を進める。イメージデータの描画コマンドでないと判定された場合、グレースケール変換部１５はＳ６０３へ処理を進める。Ｓ６０２において、グレースケール変換部１５は、各描画コマンドに付与されている属性情報を参照し、当該描画コマンドがイメージデータの描画コマンドであるか否かを判定する。属性情報には、イメージのほかに、テキストや図形、線等のグラフィックがある。イメージデータとは写真などの画像データである。イメージデータについてはグレースケール変換をしても元の画像の階調性が失われないようにすることが必要である。そのため、弁別性の高いグレースケールへの変換が指示されている場合でも、公知の方法によるグレースケール変換を実行する。本実施例では、イメージデータでない所定のオブジェクトの色を抽出し、その色数に基づいて設定される無彩色の信号値に置き換え弁別性の高いグレースケール画像データを生成する。このようにすることで、イメージデータでは階調性を損なうことなく、テキストやグラフィック等所定の種類のオブジェクトで弁別性の高いグレースケール画像を生成することができる。
【００４０】
グレースケール変換部１５は、解析中の描画コマンドから色の信号値を抽出する（Ｓ６０３）。具体的な方法については図７を用いて説明する。図７はプリンタドライバ１１に入力される描画データ（ＸＰＳ）の例である。本実施例における描画データは画像データのひとつであり、どのような画像を描画するかの描画コマンドが記述されたデータである。グレースケール変換部１５は、描画コマンド７０１から色値“ｆｆａｂ２５”を抽出する。“ｆｆａｂ２５”はＲ＝２５５、Ｇ＝１７１、Ｂ＝３７を１６進数であらわしたものであり、有彩色の信号値である。
【００４１】
次に、グレースケール変換部１５は、ＲＡＭ２に格納されている色値テーブルに抽出した色が既に登録されているか否かを判定する（Ｓ６０４）。抽出した色が色値テーブルに既に登録されている場合、グレースケール変換部１５は、処理をＳ６０６に進める。抽出した色が色値テーブルに登録されていない場合、グレースケール変換部１５は色値テーブルに抽出した信号値を登録する（Ｓ６０５）。最初の描画コマンドの解析時には、色値テーブルにいずれの色も登録されていないため、図８（ａ）のように、色値テーブルの１行目にＲ＝２５５、Ｇ＝１７１、Ｂ＝３７を登録する。
【００４２】
グレースケール変換部１５は、解析する描画コマンドがあるか否かを判定する（Ｓ６０６）。図７に記載の画像データでは描画コマンド７０１に続き描画コマンド７０２があるため、グレースケール変換部１５が処理をＳ６０２に戻す。そして、グレースケール変換部１５は描画コマンド７０２に対してＳ６０２〜Ｓ６０５の処理を実行する。描画コマンド７０２から抽出される色値“００ｂ０５０”はＲ＝０、Ｇ＝５、Ｂ＝０を１６進数であらわしたものであり、有彩色の信号値である。Ｒ＝０，Ｇ＝５，Ｂ＝０は色値テーブルに登録されていないため、グレースケール変換部１５は当該色値を色値テーブルに登録する。
【００４３】
グレースケール変換部１５は、さらに、描画コマンド７０３についても同様の処理を行う。描画コマンド７０３から抽出される色値“ｆｆａｂ２５”はすでに色値テーブルに登録された色値である。この場合、グレースケール変換部１５は、Ｓ６０４において抽出した信号値が色値テーブルに登録済みの信号値であるとして、Ｓ６０６に処理を進める。
【００４４】
なお、本実施例ではＳ６０６において、アプリケーションから入力された１つの印刷ジョブに含まれる前描画コマンドについてＳ６０６までの処理が完了した場合、グレースケール変換部１５は処理をＳ６０６に進めるとする。ただし、１ページごとにその１ページに含まれる描画コマンドについてＳ６０６までの処理が完了した場合、グレースケール変換部１５が処理をＳ６０７に進めるとしてもよい。
【００４５】
Ｓ６０６において、解析していない描画コマンドがない場合、グレースケール変換部１５はＳ６０７に処理を進める。グレースケール変換部１５は、入力された画像データに含まれる色に対応する無彩色の信号値を算出するための高弁別性グレースケール化処理を実行する（Ｓ６０７）。Ｓ６０７におけるグレースケール変換部１５の処理については、図９を用いて後述する。
【００４６】
描画コマンド生成部１６は、描画コマンドに含まれるそれぞれの色をＳ６０７で求められた無彩色の信号値に変換し、出力用のＰＤＬデータを生成する（Ｓ６０８）。描画コマンド生成部１６は入力された画像データを先頭の描画コマンドから順に解析する。描画コマンド生成部１６は、各描画コマンドに含まれるＲＧＢ値を取得し、色値テーブルを参照して、描画コマンドに含まれるＲＧＢ値を無彩色に対応する１チャンネルの信号値に置き換え、ＰＤＬデータを生成する。本実施例において無彩色に対応する１チャンネルの信号値とはＫ（黒）トナーに対応する１チャンネルの信号値である。
【００４７】
一方で、Ｓ６０１において、弁別性の高いグレースケール印刷が設定されていないと判定された場合、描画コマンド解析部１７が描画コマンドを解析し、描画コマンド生成部１６が設定されたカラーモードに対応したＰＤＬデータを生成する（Ｓ６０９）。カラーモードがカラーの場合、描画コマンド生成部１６はＹＭＣＫ等の複数のトナーで画像を印刷するためのＰＤＬデータを生成する。通常のグレースケール変換を用いる設定がなされている場合には、描画コマンド生成部１６はＮＴＳＣ法等公知の方法を用いてＰＤＬデータを生成する。
【００４８】
図９は、図５のＳ６０７に記載の弁別性の高いグレースケール画像データの生成処理の詳細を示したものである。図９に記載の処理を実行するためのプログラムはＲＯＭ７等に格納されており、ＣＰＵ１がＲＡＭ２に展開された当該プログラムを実行することで処理が実現される。なお、ここでは、図８（ａ）のように色値テーブルに７色の色の信号値が登録されているとする。
【００４９】
グレースケール変換部１５は、色値テーブルに登録されている色の数を取得する（Ｓ８０１）。グレースケール変換部１５は、ＲＡＭ２に格納されている色値テーブルを参照し、色値テーブルに登録されている色の数を取得する。たとえば、図８に示す色値テーブルがＲＡＭ２に格納されている場合、Ｎ＝７が取得される。
【００５０】
グレースケール変換部１５は、Ｓ８０１で取得した色の数に基づいて、グレースケール変換後に用いる無彩色の信号値を算出する（Ｓ８０２）。ここでは、０から２２５の信号値をＳ８０１で取得した色の数Ｎ等分し、変換後の無彩色の信号値とする。Ｎ＝７の場合、無彩色の信号値が小さい方から順に、０、３６、７３、１０９、１４６、１８２、２１９となる。本実施例では、無彩色の信号値は小さいほど濃い無彩色であり、信号値が大きいほど薄い無彩色である。図１０（ａ）は本実施例に記載の方法で設定された無彩色の信号値を示す模式図である。Ｇｍｉｎはグレースケール変換後に用いられる無彩色の信号値の最小値であり、Ｇｍａｘはグレースケール変換後に用いられる無彩色の信号値の最大値である。
【００５１】
グレースケール変換部１５は、描画コマンドから取得した信号値をそれぞれＳ８０２で求めた無彩色の信号値に対応づけて設定する（Ｓ８０３）。グレースケール変換部１５は、色値テーブルに登録されているそれぞれの色の信号値を公知の方法を用いて無彩色の信号値に変換する。本実施例ではＧｒｅｙ＝０．２９８９１２Ｒ＋０．５８６６１１Ｇ＋０．１１４４７８ＢにＲＧＢ値を代入し、無彩色の信号値を求める。それぞれの色の信号値から求められた無彩色の信号値は図８（ｂ）のようになる。そして、グレースケール変換部１５は、無彩色の信号値が小さい順に色値テーブルに登録されている色をソートする。図８（ｃ）は、ソート後の色値テーブルである。最後に、グレースケール変換部１５は、無彩色の信号値が小さい色から順にＳ８０２で設定した無彩色の信号値を小さい方から順に対応づける。図８（ｄ）は弁別性を向上させるためのグレースケール変換で用いられる無彩色の信号値が割り当てられた色値テーブルである。以上で図９に記載の処理を終了する。
【００５２】
図９では０〜２５５を色値テーブルに登録された色数で等分して、弁別性の高いグレースケール変換後の無彩色の信号値を求めた。上記の方法のほかに以下のような方法でも弁別性の高いグレースケール変換を行うことができる。
【００５３】
色値テーブルにＲ＝２５５、Ｇ＝２５５、Ｂ＝２５５の色が登録されている場合、図１０（ｂ）のように、０〜２５５の信号値をＮ−１等分するとしてもよい。このとき、グレースケール変換部１５は、Ｒ＝Ｇ＝Ｂ＝２５５の信号値をＫ＝２５５の信号値に割り当てる。そして、その他の信号値は、公知の方法による変換で求められた無彩色の信号値が小さい方から順に無彩色の信号値を割り当てる。
【００５４】
さらに、グレースケール変換部１５が図１０（ｃ）（ｄ）に示す方法でそれぞれの色が変換される無彩色の信号値を決定するとしてもよい。
【００５５】
図１０（ｃ）はグレースケール変換後にＫ＝０、Ｋ＝２５５の無彩色を用いない場合の例である。グレースケール変換部１５は０〜２５５を色値テーブルに登録されている色数Ｎよりも１大きい数で等分する。そして、Ｋ＝０、Ｋ＝２５５を除く信号値をそれぞれの色に割り当てる。たとえば、Ｎ＝７の場合、変換後に用いられる信号値はＫ＝３２、６４、９６、１２８、１５９、１９１、２２３である。
【００５６】
図１０（ｄ）は図１０（ｃ）と同様にＫ＝０、Ｋ＝２５５の信号値を用いない場合の例である。図１０（ｄ）ではあらかじめＧｍｉｎ≠０とＧｍａｘ≠２５５となるＧｍｉｎとＧｍａｘの値が予め定められている。グレースケール変換部１５は、ＲＯＭ７や補助記憶装置３に格納されているＧｍｉｎ、Ｇｍａｘの値を読み出し、ＧｍｉｎとＧｍａｘの間をＮ等分し、グレースケール変換後に用いる無彩色の信号値を設定する。また、図１０（ｄ）に記載の方法において、ＧｍａｘとＧｍｉｎを可変としてもよい。たとえば、グレースケール変換部１５が色値テーブルに登録されているＲＧＢ値からＮＴＳＣ法等の公知の方法で無彩色の信号値を算出する。グレースケール変換部１５が算出された無彩色の信号値のうち最も小さい値をＧｍｉｎ、最も大きい値をＧｍａｘとしてもよい。
【００５７】
なお、本実施例では、弁別性の高いグレースケール変換を行うときにどのような無彩色の信号値の設定方法を図１０（ａ）〜（ｄ）のうち予め決めておき、決められた方法に則って変換することとした。色値テーブルに登録された色の信号値に基づいて、無彩色の信号値を求める方法を変えるとしてもよい。たとえば、図９に記載の処理を開始する前に、グレースケール変換部１５が色値テーブルを参照しＲ＝Ｇ＝Ｂ＝０の色が登録されているか否かを判定する。色値テーブルにＲ＝Ｇ＝Ｂ＝０の色が登録されていない場合、グレースケール変換部１５は図１０（ｃ）または（ｄ）のいずれかの方法を選択する。図１０（ｃ）、（ｄ）のどちらの方法を用いるかは予め設定しておくこととする。
【００５８】
色値テーブルにＲ＝Ｇ＝Ｂ＝０の色が登録されている場合、グレースケール変換部１５は色値テーブルにＲ＝Ｇ＝Ｂ＝２５５の色が含まれているか否かを判定する。色値テーブルにＲ＝Ｇ＝Ｂ＝２５５の色が含まれていない場合、グレースケール変換部１５は図１０（ａ）に示す方法でグレースケール変換を行う。一方で、色値テーブルにＲ＝Ｇ＝Ｂ＝２５５の色が含まれている場合、グレースケール変換部１５は図１０（ｂ）に示す方法でグレースケール変換を行う。図１０（ａ）（ｂ）の方法を用いることで、元のカラー画像データにＲ＝Ｇ＝Ｂ＝０の黒やＲ＝Ｇ＝Ｂ＝２５５の白が含まれている場合、その箇所はグレースケール変換の信号値をそれぞれＫ＝０、Ｋ＝２５５とすることができる。このようにすることで、元の画像データで黒や白が用いられている箇所は色を変えることなく弁別性の高いグレースケール変換を行うことができる。
【００５９】
以上のように、プリンタドライバに入力された描画の色の数を記憶し、色数に応じたグレースケール化テーブルを作成することで、プリンタドライバにおいて弁別性の高いグレースケール変換がなされたページ記述言語データを生成することができる。これにより、印刷装置において弁別性の高いグレースケール画像データの生成を行わなくても、弁別性の高いグレースケール印刷を実現することができる。
【００６０】
（その他の実施例）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム又は装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのコンピュータプログラム、及び該コンピュータプログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
2020101844.tif 000003
【図２】
2020101844.tif 000004
【図３】
2020101844.tif 000005
【図４】
2020101844.tif 000006
【図５】
2020101844.tif 000007
【図６】
2020101844.tif 000008
【図７】
2020101844.tif 000009
【図８】
2020101844.tif 000010
【図９】
2020101844.tif 000011
【図１０】
2020101844.tif 000012
【図１１】
2020101844.tif 000013