説明

画像処理装置及びプログラム

【課題】ページ記述言語データを解釈する解釈処理部の機能を拡張しなくても各画像オブジェクトの属性情報に応じた画像処理を実行できるようにする。
【解決手段】PDL書き換え部104は、PDLデータ30内の各画像オブジェクトA32及びB34の記述の前にそれぞれ特色色空間指定コマンド(“DeviceN…”)を追加する。特色色空間指定コマンドは、対応する画像オブジェクトA32又はB34の色空間及びオブジェクト種類の属性を色名パラメータとして含む。RIP106は、書き換え後のPDLデータ40を解釈し、その解釈により得た色名パラメータの情報と各画素値のデータとを色変換部108に渡す。色変換部108は、受け取った色空間データ内の色名パラメータの情報から各画像オブジェクトの属性情報を認識し、各画像オブジェクト内の各画素値に対して、それぞれ当該画像オブジェクトの属性情報に応じた色空間変換等の画像処理を施す。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、印刷画像内の画像オブジェクトの種別(図形、文字、写真など)ごとに、その種類にとって適切な色補正を行うための装置が開示されている。この装置では、PDLインタプリタが、PDL(ページ記述言語:Page Description Languageの略)で記述された印刷データを解釈して、ラスター形式など当該装置自身が取扱可能な形式に変換する。また、PDLインタプリタは、印刷データ内の画像オブジェクトごとの属性情報が失われないようにし、それら属性情報を画像オブジェクト種類判別部に供給する。画像オブジェクト種類判別部は、属性情報を参照することで、各画像オブジェクトの種別を判別する。色補正部は、画像オブジェクト種別ごとの色補正テーブルを備えており、判別された種別に応じたテーブルを用いて色補正を行う。このように、特許文献1の装置では、PDLインタプリタが、画像オブジェクトごとの属性情報を後段の画像オブジェクト種類判別部に供給できるよう機能拡張されている。
【0003】
特許文献2に開示された装置は、PDLファイルが入力されると、画像展開手段にて画像展開処理を行うとともに、PDLファイルを解釈して、それぞれの画像要素の画像オブジェクトリストを作成する。画像データは画像データ変換手段にて各種データに展開もしくは変換処理が行われる。同時に画像データ変換手段は、画像データの各画素の画像オブジェクト種別等の属性を表すタグビットを生成する。画像データ展開処理およびタグビット生成処理が完了すると、画像データとタグビットの情報が画像形成装置に提供される。画像形成装置は、画像データに対してγ補正や色空間変換を行う際、タグビットを参照することで、各画素の画像オブジェクト種別等に応じた補正テーブルや変換テーブルを利用する。このように、特許文献2の装置では、PDLファイルを画像データに変換するための機構が、画像オブジェクトリストを生成する画像展開手段と、その画像オブジェクトリストから画像データ及びタグビットを生成する画像データ変換手段との組合せという、特別な形態で構成されている。
【0004】
特許文献3に開示される装置では、RIP(Raster Image Processor)処理部は、PDLデータから解釈した描画命令が画像の描画命令(例えばimageオペレータ)かそれ以外(例えば文字や線画等)の描画命令かを識別し、その識別結果をCMM(カラーマネジメントモジュール)に通知する。CMMは、RIP部から通知された識別結果に応じて画像オブジェクトの種類(例えば、画像か、それ以外か)を判定し、判定した種類に対応する画素値を有する制御用画像(タグ版)を生成する。後続のモジュールは、タグ版を参照して、画素ごとに、その画素の画像オブジェクト種類に応じた画像処理を実行する。このように、特許文献3の装置では、RIP部は、解釈した描画命令が画像の描画命令かそれ以外かを識別してその識別結果をCMMに通知する等の機能拡張が施されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平9−193477号公報
【特許文献2】特開平6−320802号公報
【特許文献3】特開2009−267927号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、ページ記述言語データを解釈する解釈処理部の機能を拡張しなくても、ページ記述言語データ内の各画像オブジェクトの属性情報に応じた画像処理を実行できるようにすることを目的とする。
【課題を解決するための手段】
【0007】
請求項1に係る発明は、印刷対象の画像を表す第1のページ記述言語データから各画像オブジェクトの属性情報を抽出し、前記第1のページ記述言語データに対して、前記画像オブジェクトごとに、抽出した当該画像オブジェクトの属性情報を表す少なくとも1つの色名パラメータを含んだ特色色空間指定コマンドを追加することにより、前記第1のページ記述言語データを第2のページ記述言語データに書き換え、当該第2のページ記述言語データを、ページ記述言語データを解釈して印刷装置のための印刷画像データの各画素値を求める解釈処理部に対して供給する書き換え手段と、前記解釈処理部から、前記第2のページ記述言語データ内の各画像オブジェクトのデータを当該画像オブジェクトに対応する前記特色色空間指定コマンドに従って解釈した解釈結果の各画素値と、各画像オブジェクトに対応する特色色空間指定コマンドの色名パラメータを表す情報とを受け取り、受け取った各画素値を用いて、受け取った色名パラメータが表す画像オブジェクトの属性情報に応じた画像処理を実行する画像処理手段と、を備える画像処理装置である。
【0008】
請求項2に係る発明は、前記書き換え手段は、前記画像オブジェクトごとに追加する前記特色色空間指定コマンドとして、前記第1のページ記述言語データにおいて指定された当該画像オブジェクトの色空間の色数と同数の色名パラメータを含み、それら色名パラメータのうちの1以上の組合せにより当該画像オブジェクトの属性情報を表すコマンド、を追加する、ことを特徴とする請求項1に記載の画像処理装置である。
【0009】
請求項3に係る発明は、前記追加される特色色空間指定コマンドの少なくとも1つの色名パラメータが表す前記属性情報は、前記第1のページ記述言語データにおいて指定された、当該特色色空間指定コマンドに対応する画像オブジェクトの色空間の情報を含み、前記画像処理手段が実行する前記画像処理には、前記受け取った各画素値についての、前記受け取った色名パラメータが表す色空間から前記印刷装置の色空間への色空間変換、が含まれる、ことを特徴とする請求項1又は2に記載の画像処理装置である。
【0010】
請求項4に係る発明は、前記追加される特色色空間指定コマンドの少なくとも1つの色名パラメータが表す前記属性情報は、前記第1のページ記述言語データにおいて指定された、当該特色色空間指定コマンドに対応する画像オブジェクトの色空間及び当該画像オブジェクトの種類の情報を含み、前記画像処理手段が実行する画像処理には、前記受け取った各画素値に対する、前記受け取った色名パラメータが表す色空間から前記印刷装置の色空間への色空間変換、及び、前記受け取った色名パラメータが表す画像オブジェクトの種類に応じた画像処理が含まれる、ことを特徴とする請求項3に記載の画像処理装置である。
【0011】
請求項5に係る発明は、前記受け取った色名パラメータが表す当該画像オブジェクトの種類に応じた画像処理には、各画素がそれぞれ当該画素の属する画像オブジェクトの属性情報を表す画素値を有する制御用画像を生成する処理が含まれる、ことを特徴とする請求項4に記載の画像処理装置である。
【0012】
請求項6に係る発明は、前記画像処理手段から出力された処理結果の画像のうち前記制御用画像以外の画像の各画素に対して、前記制御用画像が示す当該画素の属する画像オブジェクトの属性情報に応じた画像処理を行う第2の画像処理手段、を更に備える請求項5に記載の画像処理装置である。
【0013】
請求項7に係る発明は、コンピュータを、印刷対象の画像を表す第1のページ記述言語データから各画像オブジェクトの属性情報を抽出し、前記第1のページ記述言語データに対して、前記画像オブジェクトごとに、抽出した当該画像オブジェクトの属性情報を表す少なくとも1つの色名パラメータを含んだ特色色空間指定コマンドを追加することにより、前記第1のページ記述言語データを第2のページ記述言語データに書き換え、当該第2のページ記述言語データを、ページ記述言語データを解釈して印刷装置のための印刷画像データの各画素値を求める解釈処理部に対して供給する書き換え手段、前記解釈処理部から、前記第2のページ記述言語データ内の各画像オブジェクトのデータを当該画像オブジェクトに対応する前記特色色空間指定コマンドに従って解釈した解釈結果の各画素値と、各画像オブジェクトに対応する特色色空間指定コマンドの色名パラメータを表す情報とを受け取り、受け取った各画素値を用いて、受け取った色名パラメータが表す画像オブジェクトの属性情報に応じた画像処理を実行する画像処理手段、として機能させるためのプログラムである。
【0014】
請求項8に係る発明は、印刷対象の1以上のページの画像を表す第1のページ記述言語データから各画像オブジェクトの属性情報を抽出し、前記第1のページ記述言語データに対して、ページごとに当該ページに対してあらかじめ定められた対応関係を満たす位置に、当該ページ内の各画像オブジェクトをそれぞれ当該画像オブジェクトの属性情報に応じた画素値で表す制御用ページ画像を記述するページ記述言語データを追加することにより、前記第1のページ記述言語データを第2のページ記述言語データに書き換え、当該第2のページ記述言語データを、ページ記述言語データを解釈して印刷装置のための印刷画像データの各画素値を求める解釈処理部に対して供給する書き換え手段と、前記解釈処理部から順に入力される各ページの解釈結果の画像を、前記あらかじめ定められた対応関係に従って、前記第1のページ記述言語データに含まれる各ページの画像と、それら各ページに対応する前記各制御用ページ画像とに区別し、前記各ページの画像の各画素の画素値に対し、対応する前記各制御用ページ画像における当該画素の画素値に応じた画像処理を実行する画像処理手段と、を備える画像処理装置である。
【0015】
請求項9に係る発明は、コンピュータを、印刷対象の1以上のページの画像を表す第1のページ記述言語データから各画像オブジェクトの属性情報を抽出し、前記第1のページ記述言語データに対して、ページごとに当該ページに対してあらかじめ定められた対応関係を満たす位置に、当該ページ内の各画像オブジェクトをそれぞれ当該画像オブジェクトの属性情報に応じた画素値で表す制御用ページ画像を記述するページ記述言語データを追加することにより、前記第1のページ記述言語データを第2のページ記述言語データに書き換え、当該第2のページ記述言語データを、ページ記述言語データを解釈して印刷装置のための印刷画像データの各画素値を求める解釈処理部に対して供給する書き換え手段、前記解釈処理部から順に入力される各ページの解釈結果の画像を、前記あらかじめ定められた対応関係に従って、前記第1のページ記述言語データに含まれる各ページの画像と、それら各ページに対応する前記各制御用ページ画像とに区別し、前記各ページの画像の各画素の画素値に対し、対応する前記各制御用ページ画像における当該画素の画素値に応じた画像処理を実行する画像処理手段、として機能させるためのプログラムである。
【発明の効果】
【0016】
請求項1,7,8,又は9に係る発明によれば、ページ記述言語データを解釈する解釈処理部の機能を拡張しなくても、画像処理手段が、ページ記述言語データ内の各画像オブジェクトの属性情報に応じた画像処理を実行できる。
【0017】
請求項2に係る発明によれば、書き換え手段が第1のページ記述言語データ内の個別の色を指定するコマンドの記述を書き換えなくても、解釈処理部が正常に動作するようにすることができる。
【0018】
請求項3に係る発明によれば、画像オブジェクトの色を印刷装置の色空間での色に変換することができる。
【0019】
請求項4に係る発明によれば、画像オブジェクトの種類に応じた画像処理を実行することができる。
【0020】
請求項5に係る発明によれば、画像オブジェクトの属性情報を示す制御用画像を画像処理手段にて生成し、生成した制御用画像を後段の装置における画像処理の制御のために利用することができる。
【0021】
請求項6に係る発明によれば、制御用画像に応じて画像処理を制御することができる。
【図面の簡単な説明】
【0022】
【図1】実施の形態のシステム構成の一例を示す図である。
【図2】実施の形態の1つの例における処理の概要を説明するための図である。
【図3】実施の形態の別の例における処理の概要を説明するための図である。
【図4】実施の形態におけるPDL書き換え部の処理手順の一例を示す図である。
【図5】実施の形態における色変換部の処理手順の一例を示す図である。
【図6】別の例を説明するための図である。
【発明を実施するための形態】
【0023】
以下、図面を参照して、本発明の実施の形態について説明する。
【0024】
まずこの明細書で用いる用語について説明する。
【0025】
「ページ記述言語データ」は、印刷対象の1以上のページの画像を描画するためのコマンド群をページ記述言語(PDL)で記述したデータである。ページ記述言語には、例えば、PostScript(登録商標)、PDF(Portable Document Format)などの様々なものがある。
【0026】
「画像オブジェクト」は、印刷対象のページの画像内に含まれる画像の単位であり、例えばPDLの1つの描画コマンド(例えばPostScript(登録商標)のimage、fill等のペイントオペレータ)によって描画される画像である。RIPは、それら描画コマンドを含んだPDLデータを解釈してそれら画像オブジェクトのラスター画像をページメモリ上に順に描画していくことにより、その解釈結果として印刷対象の各ページのラスター画像を生成する。
【0027】
画像オブジェクトの「属性情報」は、画像オブジェクトが有する様々な属性を表す情報である。例えば、画像オブジェクトの属性には、画像オブジェクトの色を表現する色空間(カラースペース)や、画像オブジェクトの種類等がある。画像オブジェクトの種類には、例えば、線画、図形、文字、画像(写真等の連続調画像)等の種類がある。画像オブジェクトの属性情報は、PDLデータ内に記述されている。
【0028】
「特色」とは、プロセスカラー(シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K))以外の特別な色のインクのことであり、スポットカラーとも呼ばれる。画像オブジェクトを特色で描画する場合、PDLデータでは、当該画像オブジェクトのための色空間として、特色の色空間を指定する。特色の色空間の例としては、PostScriptの“DeviceN”色空間がある。特色の色空間を指定するコマンドには、当該色空間で用いる1以上の色の名前、すなわち色名がパラメータ(オペランド)として含まれる。パラメータとして含まれる個々の色名が、それぞれその特色色空間で用いられる特色を指し示す。RIPは、一般に、その1以上の色名パラメータを後段の画像処理装置(特に、色空間変換又はカラーマッチングを担当する色変換部又はカラーマッチングモジュール)に供給する機能を備えている。
【0029】
次に、図1を参照して、本発明の実施の形態を適用したシステムの概略構成を説明する。このシステムは、LAN(ローカルエリアネットワーク)等のネットワーク300を介して接続された、プリントサーバ100と、1以上のクライアント端末200とを含んでいる。プリントサーバ100は、本発明に係る画像処理装置の一実装例である。以下では、本発明に係る画像処理装置をプリントサーバ100として実現した例を説明するが、本発明に係る画像処理装置は、これに限らずクライアント端末200とネットワーク300を介して接続されたファイルサーバ等の各種の中間サーバとして実現してもよいし、プリンタに内蔵されるコンピュータ上に実装してもよい。
【0030】
プリントサーバ100には、用紙に画像を印刷するプリンタ400が接続されている。プリンタ400の形式は特に限定されず、電子写真方式でもインクジェット方式でも、他の方式でもよい。プリントサーバ100は、クライアント端末200から出力される印刷ジョブを受信すると、この印刷ジョブに応じた印刷出力を実行する。
【0031】
プリントサーバ100は、ネットワークインターフェイス(ネットワークI/F)102を備えており、このネットワークI/F102を介してネットワーク300に接続している。また、プリントサーバ100は、双方向インターフェイス(双方向I/F)112を備えており、この双方向I/F112を介してプリンタ400に接続している。なお、プリントサーバ100に接続するプリンタ400は複数でもよく、使用する双方向I/F112も複数又は複数種類でもよい。
【0032】
このようなプリントサーバ100は、例えば、パーソナルコンピュータ(PC)に所定の機能を備えた制御ボードを追加するなどして構成することができる。また、プリントサーバ100は、キーボード、マウス等の入力デバイスやLCDディスプレイ等の表示デバイスを備えていてもよい。
プリントサーバ100は、これらインターフェイス102及び112の他に、PDLデータ書き換え部104、RIP106、色変換部108、プリントコントローラ110を有する。
【0033】
PDLデータ書き換え部104は、クライアント端末200から送られてきた印刷ジョブのPDL(ページ記述言語)データに対して、この実施の形態の書き換え処理を施す。この実施の形態では、機能拡張されていない通常のRIPを用いる場合でも、PDLデータに含まれる個々の画像オブジェクトの属性情報を、RIPの処理結果である各画素の画素値データを受け取って処理する処理手段に対して伝達する。PDLデータ書き換え部104は、PDLデータに対してそのための書き換えを行う。書き換えの1つの例としては、後で詳しく説明する特色色空間指定コマンドの追加がある。PDL書き換え部104が行う処理については、後で詳しく説明する。
【0034】
RIP106は、クライアント端末200から入力され、PDLデータ書き換え部104で書き換えられたPDLデータに対してRIP処理を実行する。すなわち、PDLデータの記述を解釈し、その解釈結果に従ってページメモリ上へ各画素の画素値を書き込むこと(ラスタライズ)により、それらPDL記述が表すラスター画像を生成する。RIP106は、プリンタ400が使用する各色材(典型的にはプロセスカラーC、M、Y、Kのインク又はトナー)の版のラスター画像データを生成する。ここで、RIP106は、後段の画像処理手段に画像オブジェクトの属性情報を伝達するための機能拡張は受けていなくてよい。
【0035】
RIP106は、RIP処理を実行する際に、色変換部108に色空間変換処理を行わせる。
【0036】
色変換部108は、PDLデータ内で指定された色空間の画素値を、ターゲットであるプリンタ400が用いる色空間の画素値へと「色空間変換」することである。例えば、PDLデータ内のある画像オブジェクトの色がDeviceRGBで表現されている場合、その色の値(R,G,B)を、プリンタ400の色空間であるDeviceCMYKでの値(C,M,Y,K)に変換する。このような色変換部108の基本機能は、CMM(カラーマネジメントモジュール)とも呼ばれる。なお、色空間変換は、RGBからCMYKへの変換のように異なる種類の色空間への変換のみならず、印刷機PのCMYK色空間の色値を別のプリントエンジンQのCMYK色空間の色値へと変換するような場合も含まれる。
【0037】
この実施の形態では、1つの例として、この色変換部108が、各画像オブジェクトの属性情報に応じた画像処理を行う処理手段として機能する。また、別の例として、各画像オブジェクトの属性情報に応じた画像処理を行う処理手段のために、色変換部108が各画像オブジェクトの属性情報を表すタグ情報を作成してもよい。このため、色変換部108は、上述した基本的な色空間変換機能に加え、属性情報に応じた画像処理を行う機能又はタグ情報を生成する機能を備えている。このような追加機能については、後で詳しく説明する。
【0038】
プリントコントローラ110は、プリンタ400を制御する装置である。プリントコントローラ110は、RIP106が生成した各版のラスター画像データと制御信号を双方向I/F112経由でプリンタ400に供給し、プリンタ400にそれらラスター画像データに応じて印刷を実行させる。
【0039】
ここで、プリントコントローラ110が、RIP106により生成されたCMYK各版のラスター画像データに対して画像処理を行う場合がある。このような画像処理の例としては、LUT(ルックアップテーブル)を用いた画像のトーン調整がある。LUTは、プリンタ400が備えるプリントエンジンの、プロセスカラー(C、M、Y、K)ごとのトーン再生特性を表すカーブ(TRC:Tone Reproduction Curveと呼ばれる)を表現したテーブルである。LUTには、例えば、プロセスカラーごとに、入力画像の画素値と、これに対応する出力画素値との対応関係が登録されている。プリントコントローラ110は、RIP106から入力されたCMYK各版のラスター画像の各画素の値をLUTに従って変換する。LUTを用いたトーン調整は、使用による経時的なプリントエンジンの特性変化の補正や、色変換部108の色空間変換では吸収しきれない微妙なトーン調整などの目的で従来行われている。例えば、ユーザは、プリンタ400に出力させた試し刷りを見て、所望のトーン再現が実現されるよう、プリントサーバ100のユーザインターフェイスを介してLUTのトーン再生カーブを修正する。また、プリントコントローラ110が行う画像処理の他の例として、ハーフトーンスクリーン処理がある。また、プリントコントローラ110は、後述するK100処理を実行してもよい。
【0040】
以上、プリントサーバ100の概要を説明した。プリントサーバ100は、入力された印刷ジョブ(PDLデータ)を処理待ちキューに格納すると共に、処理待ちキューに格納している印刷ジョブを順に読み出して、RIP等の画像処理を実行するという処理キュー管理を行ってもよい。また、プリントサーバ100は、RIP等により得られたラスタデータを印刷待ちキューに格納して、この印刷待ちキューからプリンタ400へ順に出力するという印刷キュー管理を行ってもよい。また、プリントサーバ100では、印刷処理が指定されていない印刷ジョブ及び印刷処理の実行ができない印刷ジョブを保持キューに格納して保持する保持キュー管理を行ってもよい。これらのキュー管理は従来公知のものであり、この明細書ではこれ以上の説明は省略する。
【0041】
次に、図2を参照して、一つの実施の形態における処理の概要を説明する。この実施の形態では、PDLデータに含まれる個々の画像オブジェクトの属性情報を、特色の色空間を指定するコマンド(オペレータ)に組み込むことで、機能拡張されていない通常のRIPを用いる場合でも、RIPの処理結果である各画素の画素値データを受け取って処理する処理手段に対し、そのRIPを介して画像オブジェクトの属性情報を伝達する。図2の例では、そのような画像処理手段の一例として、色空間変換処理を実行する色変換部108を例示している。
【0042】
図2の例では、画像オブジェクトの属性情報がRIP106を介して色変換部108に伝達されるようにするために、印刷対象の画像を示すPDLデータ10を、PDL書き換え部104にて書き換えてPDLデータ20を生成する。また、図2では、RIP106を介して色変換部108に伝達する画像オブジェクトの属性情報の一例として、当該画像オブジェクトの色を表現する色空間を示す色空間属性を例示している。
【0043】
図2に示す例では、印刷処理の対象であるPDLデータ10には、1ページ内に2つの画像オブジェクトA12及びB14が含まれており、それら各画像オブジェクトA12及びB14に適用される色空間がそれぞれ異なっている。すなわち、画像オブジェクトA12の色空間は“DeviceRGB"であり、画像オブジェクトB14の色空間は“DeviceCMYK"である。“DeviceRGB"及び“DeviceCMYK"は、PostScriptやPDFで用いられる色空間の名称の一例であり、前者は表示装置で用いられる赤(R)、緑(G)、青(B)の三原色の組合せで表現される色空間を示し、後者は印刷で使用されるC、M、Y、Kの四原色の組合せで表現される色空間を示す。例えば、PDLとしてPostScript(登録商標)を例にとると、PDLデータ10には、画像オブジェクトA12を表すPostScriptの記述の前に、画像オブジェクトA12の色空間の指定のための記述“/DeviceRGB setcolorspace"が配される。この色空間指定の記述と画像オブジェクトA12の記述との間には、他の色空間指定の記述は含まれない。
【0044】
PDL書き換え部104は、PDLデータ10の中から各画像オブジェクトA12及びB14の属性情報を抽出する。そして、画像オブジェクトA12及びB14のそれぞれについて、抽出した当該画像オブジェクトの属性情報を色名パラメータとして含んだ特色色空間指定コマンドを生成し、生成した特色色空間指定コマンドを、対応する画像オブジェクトの色空間を指定するコマンドとしてPDLデータ10に追加する。このようなコマンド追加を含んだ書き換えにより、PDLデータ20が生成される。
【0045】
図2の例では、例えば、PDL書き換え部104は、画像オブジェクトA12の色空間の指定のためのコマンド記述“/DeviceRGB setcolorspace"から、画像オブジェクトA12の色空間属性として“DeviceRGB”を抽出する。次にPDL書き換え部104は、その色空間属性“DeviceRGB”を示す色名パラメータの組合せ、すなわち“(R)”、“(G)”及び“(B)”の組合せ、を含んだ特色色空間指定コマンド“[/DeviceN [(R)(G)(B)] /DeviceRGB {}]setcolorspace”を生成する。
【0046】
この例では、元の色空間“DeviceRGB”を、特色色空間(この例ではDeviceN色空間)の3つの特色“(R)”、“(G)”、“(B)”の組合せで表している。ここで、特色色空間として、3つの特色からなる色空間を用いるのは、元の色空間“DeviceRGB”が3つの原色R,G,Bの組合せで表現されているからである。すなわち、PDLデータ10内の画像オブジェクトA12の(各画素の)色は、元の色空間“DeviceRGB”の3つの原色R,G,Bの成分値の組合せで表現されている。ここで、仮に、画像オブジェクトA12の色を2以下又は4以上の特色の組合せで表現した場合、特色色空間を構成する特色の数(2以下、又は4以上)と、その後に続く画像オブジェクトA12の記述における、3つの原色成分の組合せによる色の指定とが整合しなくなる。このような不整合は、RIP106にて文法エラーなどのエラーと認識されてしまう。このようなエラーを防ぐには、画像オブジェクトA12内の色指定コマンド(例えばPostScriptのsetcolor)を特色の数に応じて書き換えることも考えられないではない。しかし、この実施の形態では、そのようなエラーを回避するためのより簡素な方法として、特色色空間を構成する特色の数を、元の色空間の原色の数に一致させる方法を採用した。この方法では、画像オブジェクトA12内の色指定コマンドを書き換える必要がない。この場合、RIP106は、画像オブジェクトA12の色指定コマンドの各色成分の値を、“R”、“G”、“B”という色名で表される3つの特色それぞれの値と解釈して処理を進める。元の色空間が“DeviceCMYK”のように4つの原色の組合せで表される場合、生成する特色色空間指定コマンドは、4つの色名パラメータを含んだものとすればよい。
【0047】
なお、図2の例では、元の色空間“DeviceRGB”を表す情報を、特色色空間の3つの色名パラメータ“(R)”、“(G)”、“(B)”に分散させたが、これは一例に過ぎない。この代わりに、3つの色名パラメータのうちのあらかじめ定めた1つが元の色空間を表すようにし、残りの2つの色名パラメータをダミーとしてもよい。この場合、画像オブジェクトA12の色空間属性を含んだ特色色空間指定コマンドは、例えば“[/DeviceN [(RGB)(Dummy1)(Dummy2)] /DeviceRGB {}]setcolorspace”となる。この例では、第1の色名パラメータ“(RGB)”が元の色空間DeviceRGBを表し、第2及び第3の色名パラメータ“(Dummy1)”及び“(Dummy2)”は、特色色空間の色数を元の色空間の原色数と一致させるためのダミーである。なお、3つの色名パラメータのうちのあらかじめ定めた2つの組合せにより元の色空間を表し、残りの1つをダミーとしてももちろんよい。一般化すれば、元の色空間がN色(Nは1以上の整数)の原色の組合せで表現される場合、特色色空間指定コマンドとしてN個の色名パラメータをとるコマンドを生成し、それらN個の色名パラメータのうちのあらかじめ定めた1〜N個のパラメータの組合せにより、元の色空間を表現すればよい。
【0048】
補足すると、特色色空間指定コマンド“[/DeviceN [(R)(G)(B)] /DeviceRGB {}]setcolorspace”のうちの3番目及び4番目のオペランド“/DeviceRGB”及び“{}”は、指定された特色色空間“/DeviceN [(R)(G)(B)]”に従った色分解ができない場合に用いられる代替の色空間(alternativeSpace)、及びそれら3つの特色の成分値をその代替色空間の色成分に変換するための方法(tintTransform)を示す。この例では、alternativeSpaceとして、元の色空間と同じDeviceRGBを指定している。また、tintTransformの記述例は省略したが、DeviceN色空間の特色“(R)”、“(G)”、“(B)”の各成分を、そのまま、DeviceRGBの原色R、G、Bの各成分とする変換でよい。
【0049】
ここで、この実施の形態では、PDL書き換え部104は、必ず色変換部108が認識可能な色名パラメータの組合せを含んだ特色色空間指定コマンドを追加する。すなわち、個々の色空間をどのような色名パラメータの組合せで表現するかが、PDL書き換え部104と色変換部108との間で取り決められている。したがって、例えば、PDL書き換え部104と色変換部108は、3つの色名パラメータ“(R)”、“(G)”、“(B)”の組合せが色空間“DeviceRGB”を表すことを、共通の知識としてあらかじめ持っている。例えば、PDL書き換え部104は、色空間毎に、その色空間と、その色空間を表す色名パラメータの組合せと、の対応関係の情報を、色変換部108との共通知識として有している。このようなことから、PDL書き換え部104が3つの色名パラメータの組合せ“[(R)(G)(B)]”を含んだDeviceN色空間を指定した場合、色変換部108はそのDeviceN色空間をDeviceRGB色空間と解釈すればよいことが判る。したがって、この実施の形態のシステムでは、特色色空間“/DeviceN [(R)(G)(B)]”は必ず色分解可能(すなわち色変換部108にて、後段のプリントエンジンにて印刷できるように色変換することが可能)であり、オペランドalternativeSpace及びtintTransformは使用されない。したがって、alternativeSpace及びtintTransformは、例えばあらかじめ定めたダミーデータであってもよい。ただし、図2の例のように、alternativeSpaceとして元の色空間DeviceRGBを指定し、tintTransformとしてDeviceN色空間の特色“(R)”、“(G)”、“(B)”の各成分をそのままDeviceRGBの原色R、G、Bの各成分とする変換を指定するようにしておけば、追加する特色色空間指定コマンドは、この実施の形態のPDL書き換え部104及び色変換部108を持たない印刷システムでも処理可能となる。
【0050】
以上、PDL書き換え部104が生成する特色色空間指定コマンドについて詳しく説明した。次に、PDL書き換え部104は、生成したこの特色色空間指定コマンド“[/DeviceN [(R)(G)(B)] /DeviceRGB {}]setcolorspace”を、当該画像オブジェクトA12の色空間を指定するコマンドとしてPDLデータ10に追加する。
【0051】
この「追加」は、画像オブジェクトA12についての元の色空間指定コマンド“/DeviceRGB setcolorspace"をPDLデータ10から削除し、この代わりにその特色空間指定コマンドをPDLデータ10に追加することにより行ってもよい。これは、言い換えれば、元の色空間指定コマンドを特色色空間指定コマンドに書き換えることである。
【0052】
また、そのような「追加」の別の例として、元の色空間指定コマンド“/DeviceRGB setcolorspace"と画像オブジェクトA12の記述との間に、その特色空間指定コマンドを追加してもよい。この場合、RIP106は、画像オブジェクトA12の記述に対してより近い位置に記述されたその特色色空間指定コマンドを、画像オブジェクトA12の色空間を指定するコマンドと解釈する。
【0053】
なお、画像オブジェクトB14については、PDL書き換え部104は、特色色空間指定コマンドとして、例えば“[/DeviceN [(C)(M)(Y)(K)] /DeviceCMYK {}]setcolorspace”を、PDLデータ10に追加する。
【0054】
このように、PDL書き換え部104が、PDLデータ10に対して、画像オブジェクトA12ごとに、当該オブジェクトの属性情報を色名パラメータとして含んだ特色色空間指定コマンドを追加することで、PDLデータ10がPDLデータ20へと書き換えられる。書き換え後のPDLデータ20に含まれる画像オブジェクトA22及びB24の色空間は、共に特色色空間であるDeviceNとなっている。ただし、画像オブジェクトA22及びB24についてのPDL記述のうち色空間指定以外の部分は、書き換え前の画像オブジェクトA12及びB14のPDL記述と同じでよい。
【0055】
この実施の形態のシステムでは、このようにして生成された書き換え後のPDLデータ20をRIP106に入力する。
【0056】
RIP106は、入力されたPDLデータ20を先頭から順に解釈していき、その解釈結果に基づいて各ページをページメモリ上に描画(ラスタライズ)する。描画処理は、ページ上の各画素の画素値(すなわち各色成分の値の組合せ)を求める処理と捉えてよい。RIP106は、画像オブジェクトA22の色空間を3つの特色“(R)”、“(G)”、“(B)”で表現されるDeviceN色空間と解釈し、画像オブジェクトA22の色を表す3つの色成分をそれら3つの特色成分と解釈する。同様に、RIP106は、画像オブジェクトB24の色空間を4つの特色“(C)”、“(M)”、“(Y)”、“(K)”で表現されるDeviceN色空間と解釈し、画像オブジェクトB24の色を表す4つの色成分をそれら4つの特色成分と解釈する。なお、3つの特色“(R)”、“(G)”、“(B)”が、実際にどの色材(各色のインクやトナーなど)に対応するかは、RIP106の関知するところではない。RIP106は、単にそのような名前の色(特色)があるという前提の下で、画像オブジェクトの各画素の色値(画素値)がそれら各色の成分値の組合せで表されるものとしてラスタライズを進めるだけである。
【0057】
この解釈及びラスタライズ処理の際、RIP106は、色変換部108に対して各画素の画素値の色空間変換を行わせる。
【0058】
この色空間変換の指示のために、RIP106は、解釈したPDLデータ20中から色空間指定コマンドを見つけるごと、又は画素ごとに、色変換部108に対して色空間データを渡す。色空間データは、RIP106がこれから色変換部108に渡そうとする画素群、又は当該色空間データと同時に渡す画素、の色を表す色空間を規定するデータであり、色空間の種類(例えば、DeviceRGB、DeviceCMYK、DeviceN等のいずれであるか)と、もし存在するならばその色空間に関するパラメータ(例えばDeviceN色空間における色名のリスト等)と、を含んでいる。色変換部108は、この色空間データにより、RIP106から送られてくる各画素値が、どの色空間での色を表す値なのかを認識する。例えば色空間データがDeviceRGBを表している場合、色変換部108は、RIP106から送られてくる画素値がDeviceRGBの色を表していると認識し、その画素値を、後段のプリントエンジンが有する色材の組合せで表される画素値(例えばDeviceCMYKの画素値)に変換する。
【0059】
この実施の形態の色変換部108は、そのような通常の色変換機能に加え、以下に説明する追加機能を備える。すなわち、この追加機能は、色空間データが示す色空間の種類が特定の特色色空間(例えばDeviceN)である場合に、その特色色空間のパラメータから画像オブジェクトの属性情報(例えば色空間)を認識し、認識した属性情報に応じた画像処理を実行する機能である。
【0060】
例えば、RIP106から与えられる色空間データが色空間の種類としてDeviceNを含んでいる場合、色変換部108はその色空間データに含まれる色名パラメータを調べる。その結果色名パラメータが“(R)”、“(G)”及び“(B)”の組合せであることが判った場合、色変換部108は、当該色空間データに対応する画像オブジェクトの色空間属性がDeviceRGBであると認識する。そして、RIP106から受け取る各画素の値に対して、DeviceRGBという色空間属性に応じた画像処理を施す。
【0061】
特色色空間指定コマンドの色名パラメータから色空間を認識するために、色変換部108は、色空間毎に、その色空間を表す色名の組合せの情報を有していればよい。
【0062】
認識した画像オブジェクトの属性情報に応じて色変換部108が実行する画像処理には、例えば色空間変換がある。例えば、RIP106からの色空間データが示す画像オブジェクトの色空間属性がDeviceRGBであった場合、色変換部108は、その色空間データに対応してRIP106から入力される画素値をDeviceRGB色空間での値と解し、その画素値を後段のプリントエンジンの色空間であるDeviceCMYKの画素値に変換する。この変換は、ルックアップテーブルなどを用いる周知の変換方式で実行すればよい。
【0063】
なお、RIP106から与えられる色空間データが特色色空間(DeviceN)以外の色空間(例えばDeviceRGB)を示すものである場合は、色変換部108は、通常の色空間変換処理を行えばよい。また、RIP106から与えられる色空間データが特色色空間(DeviceN)を示していても、その色空間データに含まれる色名パラメータが、PDL書き換え部104との共通の取り決めである、色空間に対応する色名の組合せとは異なる場合は、色変換部108は、通常の色空間変換処理を行えばよい。
【0064】
色変換部108が実行した画像処理の結果の画素値は、RIP106に返される。RIP106は、色変換部108から返された画素値を後段の処理部に出力する。
【0065】
図2の例は、色変換部108に伝達する画像オブジェクトの属性情報が色空間属性である場合の例であった。次に、画像オブジェクトの属性情報として画像オブジェクトの種類を色変換部108に伝達する例を、図3を参照して説明する。
【0066】
図3の例では、図2の例と同様、画像オブジェクトの種類を色変換部108に伝達するために、特色色空間指定コマンドを利用する。
【0067】
図3の例では、印刷処理の対象であるPDLデータには、1つのページ30内に2つの画像オブジェクトA32及びB34が含まれている。画像オブジェクトA32は、色空間が“DeviceRGB"であり、オブジェクト種類は「文字」である。また、画像オブジェクトB34は、色空間が“DeviceCMYK"であり、オブジェクト種類が「画像」(写真)である。
【0068】
例えば、PDLとしてPostScript(登録商標)を例にとると、PDLデータ30には、画像オブジェクトA32を表すPostScriptの記述の前に、画像オブジェクトA32の色空間の指定のための記述“/DeviceRGB setcolorspace"が配され、その後に(他の色空間指定のための記述を間に挟まずに)、“(ABCDEF) show”という記述が配される。“show”は文字列をページ上にペイント(描画)することを指示するオペレータであり、その前の“(ABCDEF)”は、そのshowオペレータのオペランドである文字列である。“(ABCDEF) show”という記述を解釈したRIP106は、“ABCDEF”という文字列をページメモリ上に書き込むことになる。なお、要点に絞った説明を行うために、図3の例では、その文字列の色や描画位置を指定するPDL記述は省略している。
【0069】
PDL書き換え部104は、PDLデータ30の中から各画像オブジェクトA32及びB34の属性情報を抽出する。
【0070】
例えば、PDL書き換え部104は、画像オブジェクトA32の色空間の指定のためのコマンド記述“/DeviceRGB setcolorspace"から、画像オブジェクトA32の色空間が“DeviceRGB”であると認識すると共に、当該画像オブジェクトA32の描画を指示するコマンド(オペレータ)が“show”であることから、当該画像オブジェクトA32の種類が「文字」であると認識する。次にPDL書き換え部104は、認識した色空間属性“DeviceRGB”及びオブジェクト種類属性「文字」の組合せを示す色名パラメータ、すなわち“(RCHAR)”、“(GCHAR)”及び“(BCHAR)”という3つの色名の組合せ、を含んだ特色色空間指定コマンド特色色空間指定コマンド“[/DeviceN [(RCHAR)(GCHAR)(BCHAR)] /DeviceRGB {}]setcolorspace”を生成する(図3の書き換え後のPDLデータ40参照)。すなわち、PDL書き換え部104(及び色変換部108)には、色空間属性“DeviceRGB”及びオブジェクト種類属性「文字」という属性の組合せを、“(RCHAR)”、“(GCHAR)”及び“(BCHAR)”という3つの色名の組合せで表すという対応関係の情報が登録されており、PDL書き換え部104はこの対応関係の情報に従って、画像オブジェクトA32の属性情報に対応する上述の色名パラメータを生成する。
【0071】
また、色空間属性及びオブジェクト種類属性の組合せとこれを表す色名の組合せとの対応関係の情報の代わりに、色空間属性とオブジェクト種類属性の組合せから色名の組合せを生成する生成規則をPDL書き換え部104に持たせてもよい。生成規則としては、例えば、色空間属性が示す色空間の各原色成分の数と等しい数の色名を生成し、それら各色名の先頭はそれぞれ対応する原色成分を表す文字(例えば“R”、“G”、“B”)とし、その文字の後にそれぞれオブジェクト種類を示す文字列(例えば“CHAR”)を繋げる、等という規則がある。上述の“(RCHAR)”、“(GCHAR)”及び“(BCHAR)”という3つの色名の組合せは、この規則に従ったものである。
【0072】
なお、図3に示した“(RCHAR)”、“(GCHAR)”及び“(BCHAR)”の組合せは一例に過ぎない。例えばこの代わりに、“(RGB)”、“(CHAR)”及び“(Dummy)”という3つの色名の組合せで、色空間属性“DeviceRGB”及びオブジェクト種類属性「文字」の組合せを表現してもよい。この例では、色名パラメータに含まれる色名の組合せのうち先頭の色名が、画像オブジェクトの色空間属性を示し、その次の色名が画像オブジェクトの種類を示す。残りの色名は、PDL書き換え部104及び色変換部108の双方がダミーとして認識するよう取り決めた色名である。もちろん、このような組合せの仕方も一例に過ぎない。
【0073】
また、PDL書き換え部104は、画像オブジェクトB34の色空間の指定のためのコマンド記述“/DeviceCMYK setcolorspace"から、画像オブジェクトB34の色空間が“DeviceCMYK”であると認識すると共に、当該画像オブジェクトB34の描画を指示するオペレータが“image”であることから、当該画像オブジェクトB34の種類が「画像」であると認識する。次にPDL書き換え部104は、認識した色空間属性“DeviceCMYK”及びオブジェクト種類属性「画像」の組合せを示す色名パラメータ、すなわち“(CIMAGE)”、“(MIMAGE)” 、“(YIMAGE)”及び、“(GIMAGE)”という4つの色名の組合せ、を含んだ特色色空間指定コマンド“[/DeviceN [(CIMAGE)(MIMAGE)(YIMAGE)(KIMAGE)] /DeviceCMYK {}]setcolorspace”を生成する。
【0074】
そして、PDL書き換え部104は、生成した特色色空間指定コマンドを、元のPDLデータ10に「追加」する。ここでの「追加」は、図2の場合と同様、元の色空間指定コマンドを生成した特色色空間指定コマンドに置き換える方式でもよいし、元の色空間指定コマンドと画像オブジェクトのPDL記述との間に、生成した特色色空間指定コマンドを追加する方式でもよい。ただし、1つの色空間指定コマンドの後に複数の画像オブジェクトの記述が続く(すなわち、それら複数の画像オブジェクトはそのコマンドが指定する色空間で表現される)場合もある。この場合、それら複数の画像オブジェクトのうちのPDLデータ10内での出現順が2番目以降の各オブジェクトについては、当該オブジェクトのPDL記述の前に、その色空間指定コマンドが示す色空間属性と当該オブジェクトの種類属性とを表す特色色空間指定コマンドを文字通り追加する。
【0075】
このような特色色空間指定コマンドを追加する書き換え処理により、書き換え後のPDLデータ40が生成される。書き換え後のPDLデータ40に含まれる画像オブジェクトA42及びB44の色空間は、共にDeviceNとなっている。
【0076】
RIP106は、書き換え後のPDLデータ40を解釈し、ラスタライズする。そして、ラスタライズ結果の各画素の色空間変換を色変換部108に依頼する。この依頼において、RIP106は、図2の例と同様、色空間データと画素値データを色変換部108に渡す。PDL書き換え部104が追加した特色色空間指定コマンドに対応する画像オブジェクトの色空間データには、特色色空間(DeviceN)であることを示す情報と、その画像オブジェクトの色空間とオブジェクト種類とを表す色名パラメータが含まれる。
【0077】
色変換部108は、RIP106から受け取った色空間データが特色色空間を指定している場合、色空間データに含まれる色名パラメータから、画像オブジェクトの色空間属性とオブジェクト属性を求める。例えば、画像オブジェクトA42に対応する色空間データには、“(RCHAR)”、“(GCHAR)”及び“(BCHAR)”という3つの色名の組合せを表す情報が含まれるので、その情報から、色空間属性が“DeviceRGB”でオブジェクト種類属性が「文字」であるという属性情報を求める。そして、色変換部108は、RIP106から受け取る画素値データに対して、求めた属性情報に対応する画像処理を実行する。
【0078】
この画像処理には、色空間データから求めた色空間属性が示す色空間から、後段のプリントエンジンの色空間への色空間変換が含まれる。また、色空間データから求めたオブジェクト種類属性に応じた画像処理が含まれていてもよい。
【0079】
オブジェクト種類属性に応じた画像処理の例には、例えば、画像オブジェクトの種類が「画像」(写真)である場合のシャープネス(あるいは輪郭強調)処理がある。すなわち、オブジェクト種類が「画像」である画像オブジェクトの各画素については、色変換部108が、RIP106から入力される各画素の画素値を用いてシャープネス処理を実行する。シャープネス処理は、画像の解像度を変えるものではないので、RIP106から画素単位の色空間変換依頼に応じて色空間変換結果の画素値を返すという、色変換部108が行う画素単位の処理と整合する。したがって、色変換部108にシャープネス処理機能を追加し、RIP106からの色空間データに含まれる属性情報が「画像」の画像オブジェクトを表している場合は、その画像オブジェクトに属する画素群の画素値については色変換部108がシャープネス処理を実行する。シャープネス処理は、色空間変換前の画素値又は色空間変換後の画素値のどちらに施してもよい。
【0080】
また、オブジェクト種類属性に応じた画像処理の別の例として、画像オブジェクトの種類に応じた色補正がある。この例では、画像オブジェクトが特定の1以上の種類に該当する場合に、通常の色空間変換に加え、その種類に特有の色補正(例えばその種類に特有のトーン再生カーブの適用)を色変換部108で行う。
【0081】
また、色変換部108が行う画像オブジェクトの属性情報に応じた画像処理には、色空間属性とオブジェクト種類属性との組合せに応じた画像処理が含まれていてもよい。
【0082】
この組合せに応じた画像処理の例としては、色空間と画像オブジェクトの種類の組合せに応じて異なる色補正を行うという処理がある。
【0083】
また、別の例として、「文字」系の画像オブジェクト内の画素のR,G,Bの値が等しい場合に、その画素の値をK1色の濃度(この場合C=M=Y=0)で表現するという特別な色空間変換がある。この画像処理について説明する。
【0084】
文字系(「文字」や「線画」、「図形」等)の種類に該当する画像オブジェクトを黒又はグレーで表現する場合は多いが、このような画像オブジェクトの色はDeviceRGB等のRGB系の色空間では、RとGとBの成分が等しい値となる。RGBからCMYKへの通常の色空間変換では、黒又はグレーはC、M、Y、Kの組合せで表現され、0でないC、M、Yの成分を持つことになる。しかし、黒又はグレーはK単色(C=M=Y=0)で表現した方がくっきりとした画像となる。黒又はグレーの文字系の画像オブジェクトは、背景の地色とのコントラストが重要なので、このようなオブジェクトについては、K単色の濃度値に変換するのである。
【0085】
この画像処理は、色空間属性がRGB系、オブジェクト種類属性が文字系、且つ画素値がR=G=Bを満たす画素に対して適用される。このような条件を満たす画素については、通常の色空間変換のLUTに代えて、RGB値をK単色の濃度値に変換する特別の変換規則を適用する。
【0086】
また、オブジェクト種類属性に応じた画像処理、及び色空間属性とオブジェクト種類属性との組合せに応じた画像処理の別の例として、タグ版の生成がある。タグ版は、CMYKの各色版とは異なる版のラスター画像データであり、後段の画像処理(例えばプリントコントローラ110での画像処理)の制御のために用いられる。タグ版の解像度は、CMYKの各版と同じである。
【0087】
例えば、後段のプリントコントローラ110におけるハーフトーンスクリーン処理において、画像オブジェクトの種類に応じて、異なるハーフトーンスクリーンを適用することで、印刷結果の画質向上を図る場合がある。例えば、写真等の連続調の「画像」を滑らかな階調で表現するときにはスクリーン周波数を比較的低く(スクリーン線数を少なく)し、文字や線画などの細線の再現性を高くするときにはスクリーン周波数を比較的高く(スクリーン線数を多く)するとよいことが知られている。そこで、1ページの画像中の写真系のオブジェクトには低線数のスクリーンを適用し、文字系のオブジェクトには高線数のスクリーンを適用することも従来行われている。例えばこのようなハーフトーンスクリーン処理の制御のために、個々の画像オブジェクトが「画像」(写真)か、それ以外(文字系)かを示すタグ版のラスター画像データを色変換部108にて生成するのである。この例で色変換部108が生成するタグ版のラスター画像データは、ページ中の「画像」のオブジェクトに属する画素の値が例えば「1」であり、「画像」以外の種類のオブジェクトに属する画素の値が「0」である二値画像である。
【0088】
色変換部108は、このようにして生成したタグ版の画像を、色空間変換の結果であるCMYK各版の画像と共にRIP106に返す。RIP106は、それら各版の画像をプリントコントローラ110に渡す。プリントコントローラ110は、CMYK各版の画像にハーフトーンスクリーン処理を行う際に、タグ版の画素値が「1」である画素には低線数のスクリーンを、「0」である画素には高線数のスクリーンを適用するなどの制御を行う。
【0089】
この例は、タグ版が表現するオブジェクト種類属性の分類が「画像」かそれ以外かの分類であるが、これは一例に過ぎない。タグ版が表現するオブジェクト種類属性の分類は、後段の画像処理の目的に応じたものとすればよい。タグ版の画素のビット幅を2以上として、3以上の分類を表現するようにしてもよい。
【0090】
また、色空間属性とオブジェクト種類属性との組合せに応じたタグ版を生成する処理の例として、いわゆる「K100」処理がある。
【0091】
「K100」とは、いわゆる「黒ベタ」のことであり、CMYK空間においてKの濃度が100%で、且つC,M,Yの濃度が0%となる色のことである。近年のプリントエンジンには、例えば文字や線画を精細に表現するために、K100の色で表現される画像オブジェクトについては、K版における当該オブジェクトの解像度を他のC,M,Y版よりも高解像度で印刷する機能を持つものがある。このような機能を、ここでは「K100処理」と呼ぶことにする。テキストや設計図面の線がなどはK100で表現される場合が多く、それらを高精細に印刷することは、印刷品質の向上に大きく寄与する。
【0092】
K100処理を実現するために、色変換部108は、色空間データが示す色空間属性がCMYK系であり、かつオブジェクト種類属性が文字系である場合、画素の値を調べる。そして、その画素の値がK=100%(かつC=M=Y=0)であれば、タグ版のラスター画像における当該画素の値を、あらかじめ定められた値(例えば「1」)とする。一方、CMYK系、文字系、かつK=100%という条件のうちの1つでも満たされなければ、タグ版のラスター画像における当該画素の値は、あらかじめ定められた異なる値(例えば「0」)とする。
【0093】
このようにして生成されたタグ版を、CMYKの各版と共に、RIP106を介して受け取ったプリントコントローラ110は、タグ版の画素値が「1」である画素、すなわち「K100」の画素については、例えばプリンタ400に対してK版の高解像度の画像(すなわちその画素を更に細かい画素の組で表現したもの)を提供し、プリンタ400にK版の高解像度出力を指示する。一方、タグ版の画素値が「0」である画素、すなわち「K100」でない画素については、CMYK各版の当該画素の値を通常解像度で出力するようにプリンタ400に指示する。
【0094】
なお、特許文献3のシステムでも同様のタグ版を生成しているが、特許文献3のシステムでは、タグ版生成のために、画像オブジェクトの種類を認識してその認識結果をCMM(色変換部)に通知する機能をRIP部に追加した。これに対し、この実施の形態では、画像オブジェクトの種類等の属性情報をパラメータに含んだ特色色空間指定コマンドとしてPDLデータに追加することで、色変換部108に対して色空間データを通知するという、RIP106が通常持っている機能により、色変換部108にその属性情報が伝達されるようにした。このように、この実施の形態では、機能拡張されていない通常のRIP106を用いる場合でも、画像オブジェクトの属性情報が色変換部108に伝達される。
【0095】
次に、図4及び図5を参照して、この実施の形態におけるPDL書き換え部104及び色変換部108の処理手順の一例を説明する。
【0096】
まず、図4を参照して、PDL書き換え部104の処理手順の例を説明する。
【0097】
この手順では、PDL書き換え部104は、クライアント端末200から受け取ったPDLデータ10を先頭から順に読み進め(S102)、その中に示されるコマンド(オペレータとそのパラメータ(オペランド)とを認識する。次に、認識したコマンドが色空間指定コマンド(例えば“setcolorspace”)か否かを判定し(S104)、色空間指定コマンドであると判定した場合には、そのコマンドで指定された色空間をカレント色空間として記憶する(S106)。なお、認識したコマンドが、PostScriptの“setcmykcolor”などのように、色空間と色値を同時に指定するコマンドである場合も、S104の判定結果はYesとなり、そのコマンドで指定される色空間がS106でカレント色空間として記憶される。
【0098】
認識したコマンドが色空間指定コマンドでない場合、更にそのコマンドが画像オブジェクトの描画を指示するコマンド(例えばPostScriptのshow、fill、stroke、image)であるか否かを判定する(S108)。この判定の結果がNoの場合は、S102に戻ってPDLデータを読み進める。
【0099】
認識したコマンドが画像オブジェクトの描画コマンドであるとS108で判定した場合、PDL書き換え部104は、その画像オブジェクトの属性情報を取得する(S110)。1つの例では、取得する属性情報は、カレント色空間を表す色空間属性である。また、当該描画コマンドから当該画像オブジェクトの種類を判定し、この種類をオブジェクト種類属性として取得してもよい。
【0100】
そして、PDL書き換え部104は、取得した属性情報を色名パラメータとして含んだDeviceN色空間指定コマンドを生成し、このコマンドの記述をPDLデータ10に追加する(S112)。DeviceN色空間指定コマンドは、PDLデータ10における当該画像オブジェクトの記述(当該描画コマンドと、その前にあるオペランドの記述とを合わせたもの)の直前に追加すればよい。
【0101】
S112の後、PDL書き換え部104はPDLデータ10の最後まで処理が完了したかを判定し(S114)、完了していなければS102に戻ってPDLデータ10を読み進め、完了していればこの処理手順を終了する。このような処理手順により、書き換え済みのPDLデータ20が生成される。
【0102】
次に、図5を参照して、色変換部108の処理手順の一例を説明する。この例は、RIP106から色変換部108への色空間データの通知が、PDLデータ20から色空間指定コマンドを見つける都度行われる場合の手順である。
【0103】
色変換部108は、RIP106からデータを取得するごとに(S202)、そのデータが印刷ジョブの末尾を表す終了データであるか否かを判定し(S204)、終了データでなければ、そのデータが特色色空間を指定する色空間データであるか否かを判定する(S206)。特色色空間を指定する色空間データである場合、色変換部108は、その色空間データに含まれる色名の組合せの情報から、画像オブジェクトの属性情報を認識する(S208)。そして、認識した属性情報のうちの色空間属性を、カレント色空間を示す情報として記憶し(S210)、その属性情報に応じた画像処理モードをカレントモードに設定する(S212)。画像処理モードには、例えば上述したシャープネス処理を行うモード、R=G=Bの画素値をK単色の濃度値へと色空間変換するモード、K100処理を行うモード、タグ版に画素値「1」を書き込むモード、タグ版に画素値「0」を書き込むモード、などがある。それら様々な画像処理モードのうち、色空間データが表す属性情報に対応した画像処理モードが、現在の処理モードを示すカレントモードとして設定されるわけである。
【0104】
ここで、PDLデータ20では、特色色空間指定コマンドはその後に続く画像オブジェクトの属性情報を表しているので、RIP106が色変換部108に渡す特色色空間データの後に続く各画素値のデータは、その特色色空間指定コマンド餓死牝属性を持つ画像オブジェクトの画素値のデータである。したがって、それら画素値のデータに対しては、カレントモードに応じた画像処理を施せばよい。
【0105】
S202で取得したデータが特色色空間を示す色空間データでないとS206で判定された場合、色変換部108は、そのデータが画素値データか否かを判定する(S214)。画素値データであれば、そのデータが表す画素値に対して、カレント色空間からプリンタ400の色空間への変換と共に、カレントモードに応じた画像処理を実行する(S216)。例えば、カレントモードがシャープネス処理モードであれば、色変換部108は、例えば入力される各画素値データに色空間変換を行ってメモリに記憶した上で、フィルタやマスクを適用することでシャープネス処理を行い、その処理の結果得られた各画素値のデータをRIP106に返す。
【0106】
S202で取得したデータが画素値データでないとS214で判定された場合、そのデータは、画像オブジェクトの属性情報を表す特色色空間データではない、通常の色空間データであるということである。この場合、色変換部108は、その色空間データに従って通常の色空間変換を実行すればよい(S218)。
【0107】
以上の処理を、RIP106からのデータが終了するまで繰り返す(S204)。
【0108】
図5の手順は、RIP106から色変換部108への色空間データの通知が、PDLデータ20から色空間指定コマンドを見つける都度行われる場合についてのものであった。RIP106から色変換部108に対して色空間データが画素毎に通知される場合は、色変換部108がカレント色空間やカレントモードを記憶する必要はなく、画素毎にS206、S208及びS216の処理を実行すればよい。
【0109】
次に、図6を参照して、別の例を説明する。この例のための装置構成は、図1に示したものと同様でよい。ただし、PDL書き換え部104と色変換部108が実行する処理の内容が図2及び3の例とは異なる。
【0110】
この例では、PDL書き換え部104は、入力されたPDLデータのページ30(後述するタグページとの区別のために以下では「実ページ」と呼ぶ)ごとにそのページを解析し、その解析結果に基づいてタグページ50のPDL記述を生成する。
【0111】
ここでタグページ50とは、各画素が、当該画素の属する画像オブジェクトの属性情報に対応する画素値を持つ1ページのラスター画像データのことである。
【0112】
図6の例では、実ページ30は、色空間属性がDeviceRGBであり種類が「文字」である画像オブジェクトA32と、色空間属性がDeviceCMYKであり種類が「画像」である画像オブジェクトB34とを含んでいる。これに対応するタグページ50のうち、画像オブジェクトA32に属する画素群52は、色空間属性“DeviceRGB”とオブジェクト種類属性「文字」の組合せを示す画素値0x01(0xは16進数を示す)を持つ。また、タグページ50のうち、画像オブジェクトB34に属する画素群54には、色空間属性“DeviceCMYK”とオブジェクト種類属性「画像」の組合せを示す画素値0x03(0xは16進数を示す)を持つ。なお0x01等のタグ値はあくまで一例に過ぎない。
【0113】
PDL書き換え部104は、実ページ30内の画像オブジェクトごとに、その画像オブジェクトのPDL記述からその属性情報(色空間属性、オブジェクト種類属性等)と、その画像オブジェクトに属する画素群とを求める。そして、ページ中のそれら画素群がそれぞれその属性情報に対応するタグ値を持つように指示するPDL記述を生成する。ここで、タグページ50のPDL記述は、例えば、タグページ50のラスター画像を「画像」としてペイントするコマンド(例えば“image”オペレータ)を用いたものであってもよいし、ページ内の画像オブジェクト毎に、当該オブジェクトの領域に含まれる画素群を当該オブジェクトの属性情報に対応するタグ値で塗りつぶすコマンド(例えば“fill”オペレータ)を用いたものであってもよい。
【0114】
そして、PDL書き換え部104は、そのようにして生成したタグページ50のPDL記述を、元のPDLデータに対して挿入する。この挿入は、生成したタグページ50のPDL記述が、挿入後のPDLデータ内で、元の実ページ30のPDL記述に対して、あらかじめ定められた対応関係を満たすような仕方で行えばよい。ここでいう対応関係は、例えば、実ページ30のPDL記述の直前(又は直後)にタグページ50のPDL記述が位置するなどといったものでよい。ここで、例えば実ページ30の「直前」とは、実ページ30の1つ前のページのPDL記述の末尾と、実ページ30自身のPDL記述の先頭と、の間の位置である。なお、直前(又は直後)というのはあくまで一例に過ぎず、実ページ30のPDL記述とこれに対応するタグページ50のPDL記述とが、書き換え後のPDLデータ内でその対応関係に従った順序で並んでいればよい。なお、この実ページ30とタグページ50との対応関係は、色変換部108との間の共通知識であり、色変換部108にも登録されている。
【0115】
以上に説明したように、PDL書き換え部104が行う書き換えは、元の実ページ30のPDLデータを、実ページ30自身とタグページ50のPDLデータのペアへと書き替える処理といってもよい。
【0116】
PDL書き換え部104は、以上のようにして、元のPDLデータに含まれるすべてのページについて、タグページのPDL記述を追加する。このようにしてタグページを追加した後の書き換え済みPDLデータが、RIP106に入力される。
【0117】
RIP106は、受け取った書き換え済みPDLデータに対して先頭から順に、通常のRIP処理を実行する。これにより、PDLデータが表す各実ページ30とこれに対応する各タグページ50のラスター画像が、前述の対応関係に従った順序で生成されることになる。このRIP処理の中で、RIP106は、色変換部108に対して、RIP処理により得た各画素の値を渡して色空間変換を依頼する。
【0118】
色変換部108は、登録されている対応関係に従ってタグページ50のラスター画像を識別し、そのラスター画像上の各画素の値(すなわちタグ値)に従って、対応する実ページ30の各画素の属する画像オブジェクトの属性情報を認識する。そして、実ページ30の各画素に対して、認識した属性情報に対応した画像処理を実行する。
【0119】
例えば、PDL書き換え部104が実ページ30のPDL記述の直前にタグページ50のPDL記述を挿入する場合、色変換部108は、RIP106から入力される奇数番目のページがタグページ50であると認識する。そして、奇数番目のページについてのラスター画像をいったんメモリに記憶し、その次の偶数番目のページ(すなわち実ページ)の各画素に対して色空間変換等の画像処理を施す際に、そのメモリ上のラスター画像(タグページ)上の対応する画素の画素値(すなわちタグ値。これが属性情報を示す)に応じた処理内容を選択する。また、PDL書き換え部104が実ページ30のPDL記述の直後にタグページ50のPDL記述を挿入する場合、色変換部108は、RIP106から入力される奇数番目のページが実ページ30であると認識し、その実ページ30の各画素の値をいったんメモリに記憶しておく。そして、次の偶数番目のページ(すなわちタグページ)の各画素の値を受け取ったときに、その値(タグ値)に対応する画像処理(色空間変換を含む)を、メモリに記憶していた実ページ30の画像上の対応画素の値に対して実行する。ここで、タグ値が示す属性情報に応じた画像処理は、図2及び図3の例の場合と同様の処理である。
【0120】
なお、このような処理を実現するために、色変換部108は、タグ値と画像処理モードとの対応関係を記憶していればよい。
【0121】
このように、図6の例は、RIP106の前段に設けたPDL書き換え部104が、ページ内の各画像オブジェクトの属性情報を表すタグページ50のPDL記述を元のPDLデータに挿入することで、機能拡張されていないRIP106を介して、色変換部108にその属性情報を伝達するようにしたものである。この例では、属性情報はタグページにより色変換部108に伝達されるので、色空間データは従来通り単に色空間を表すものとして利用してもよい。この場合、画像オブジェクトの属性情報のうち色空間属性は通常の色空間データとしてRIP106から色変換部108に伝達するようにし、オブジェクト種類属性のみをタグページに持たせて色変換部108に伝達するようにしてもよい。
【0122】
以上に例示したプリントサーバ100は、例えば、汎用のコンピュータに上述の各機能モジュールの処理を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、CPU等のマイクロプロセッサ、ランダムアクセスメモリ(RAM)およびリードオンリメモリ(ROM)等のメモリ(一次記憶)、HDD(ハードディスクドライブ)を制御するHDDコントローラ、各種I/O(入出力)インターフェイス、ローカル・エリア・ネットワークなどのネットワークとの接続のための制御を行うネットワークインターフェイス等が、たとえばバスを介して接続された回路構成を有する。また、そのバスに対し、例えばI/Oインターフェイス経由で、CDやDVDなどの可搬型ディスク記録媒体に対する読み取り及び/又は書き込みのためのディスクドライブ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び/又は書き込みのためのメモリリーダライタ、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがRAMに読み出されCPU等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。なお、それら機能モジュール群のうちの一部又は全部を、専用LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit、特定用途向け集積回路)又はFPGA(Field Programmable Gate Array)等のハードウエア回路として構成してもよい。
【符号の説明】
【0123】
10,30 PDLデータ、20,40 (書き換え後の)PDLデータ、12,14,22,24,32,34,42,44 画像オブジェクト、50 タグページ、100 プリントサーバ、102 ネットワークインターフェイス、104 PDL書き換え部、106 RIP、108 色変換部、110 プリントコントローラ、112 双方向インターフェイス、200 クライアント端末、300 ネットワーク、400 プリンタ。

【特許請求の範囲】
【請求項1】
印刷対象の画像を表す第1のページ記述言語データから各画像オブジェクトの属性情報を抽出し、前記第1のページ記述言語データに対して、前記画像オブジェクトごとに、抽出した当該画像オブジェクトの属性情報を表す少なくとも1つの色名パラメータを含んだ特色色空間指定コマンドを追加することにより、前記第1のページ記述言語データを第2のページ記述言語データに書き換え、当該第2のページ記述言語データを、ページ記述言語データを解釈して印刷装置のための印刷画像データの各画素値を求める解釈処理部に対して供給する書き換え手段と、
前記解釈処理部から、前記第2のページ記述言語データ内の各画像オブジェクトのデータを当該画像オブジェクトに対応する前記特色色空間指定コマンドに従って解釈した解釈結果の各画素値と、各画像オブジェクトに対応する特色色空間指定コマンドの色名パラメータを表す情報とを受け取り、受け取った各画素値を用いて、受け取った色名パラメータが表す画像オブジェクトの属性情報に応じた画像処理を実行する画像処理手段と、
を備える画像処理装置。
【請求項2】
前記書き換え手段は、前記画像オブジェクトごとに追加する前記特色色空間指定コマンドとして、前記第1のページ記述言語データにおいて指定された当該画像オブジェクトの色空間の色数と同数の色名パラメータを含み、それら色名パラメータのうちの1以上の組合せにより当該画像オブジェクトの属性情報を表すコマンド、を追加する、
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記追加される特色色空間指定コマンドの少なくとも1つの色名パラメータが表す前記属性情報は、前記第1のページ記述言語データにおいて指定された、当該特色色空間指定コマンドに対応する画像オブジェクトの色空間の情報を含み、
前記画像処理手段が実行する前記画像処理には、前記受け取った各画素値についての、前記受け取った色名パラメータが表す色空間から前記印刷装置の色空間への色空間変換、が含まれる、
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記追加される特色色空間指定コマンドの少なくとも1つの色名パラメータが表す前記属性情報は、前記第1のページ記述言語データにおいて指定された、当該特色色空間指定コマンドに対応する画像オブジェクトの色空間及び当該画像オブジェクトの種類の情報を含み、
前記画像処理手段が実行する画像処理には、前記受け取った各画素値に対する、前記受け取った色名パラメータが表す色空間から前記印刷装置の色空間への色空間変換、及び、前記受け取った色名パラメータが表す画像オブジェクトの種類に応じた画像処理が含まれる、
ことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記受け取った色名パラメータが表す当該画像オブジェクトの種類に応じた画像処理には、各画素がそれぞれ当該画素の属する画像オブジェクトの属性情報を表す画素値を有する制御用画像を生成する処理が含まれる、ことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記画像処理手段から出力された処理結果の画像のうち前記制御用画像以外の画像の各画素に対して、前記制御用画像が示す当該画素の属する画像オブジェクトの属性情報に応じた画像処理を行う第2の画像処理手段、
を更に備える請求項5に記載の画像処理装置。
【請求項7】
コンピュータを、
印刷対象の画像を表す第1のページ記述言語データから各画像オブジェクトの属性情報を抽出し、前記第1のページ記述言語データに対して、前記画像オブジェクトごとに、抽出した当該画像オブジェクトの属性情報を表す少なくとも1つの色名パラメータを含んだ特色色空間指定コマンドを追加することにより、前記第1のページ記述言語データを第2のページ記述言語データに書き換え、当該第2のページ記述言語データを、ページ記述言語データを解釈して印刷装置のための印刷画像データの各画素値を求める解釈処理部に対して供給する書き換え手段、
前記解釈処理部から、前記第2のページ記述言語データ内の各画像オブジェクトのデータを当該画像オブジェクトに対応する前記特色色空間指定コマンドに従って解釈した解釈結果の各画素値と、各画像オブジェクトに対応する特色色空間指定コマンドの色名パラメータを表す情報とを受け取り、受け取った各画素値を用いて、受け取った色名パラメータが表す画像オブジェクトの属性情報に応じた画像処理を実行する画像処理手段、
として機能させるためのプログラム。
【請求項8】
印刷対象の1以上のページの画像を表す第1のページ記述言語データから各画像オブジェクトの属性情報を抽出し、前記第1のページ記述言語データに対して、ページごとに当該ページに対してあらかじめ定められた対応関係を満たす位置に、当該ページ内の各画像オブジェクトをそれぞれ当該画像オブジェクトの属性情報に応じた画素値で表す制御用ページ画像を記述するページ記述言語データを追加することにより、前記第1のページ記述言語データを第2のページ記述言語データに書き換え、当該第2のページ記述言語データを、ページ記述言語データを解釈して印刷装置のための印刷画像データの各画素値を求める解釈処理部に対して供給する書き換え手段と、
前記解釈処理部から順に入力される各ページの解釈結果の画像を、前記あらかじめ定められた対応関係に従って、前記第1のページ記述言語データに含まれる各ページの画像と、それら各ページに対応する前記各制御用ページ画像とに区別し、前記各ページの画像の各画素の画素値に対し、対応する前記各制御用ページ画像における当該画素の画素値に応じた画像処理を実行する画像処理手段と、
を備える画像処理装置。
【請求項9】
コンピュータを、
印刷対象の1以上のページの画像を表す第1のページ記述言語データから各画像オブジェクトの属性情報を抽出し、前記第1のページ記述言語データに対して、ページごとに当該ページに対してあらかじめ定められた対応関係を満たす位置に、当該ページ内の各画像オブジェクトをそれぞれ当該画像オブジェクトの属性情報に応じた画素値で表す制御用ページ画像を記述するページ記述言語データを追加することにより、前記第1のページ記述言語データを第2のページ記述言語データに書き換え、当該第2のページ記述言語データを、ページ記述言語データを解釈して印刷装置のための印刷画像データの各画素値を求める解釈処理部に対して供給する書き換え手段、
前記解釈処理部から順に入力される各ページの解釈結果の画像を、前記あらかじめ定められた対応関係に従って、前記第1のページ記述言語データに含まれる各ページの画像と、それら各ページに対応する前記各制御用ページ画像とに区別し、前記各ページの画像の各画素の画素値に対し、対応する前記各制御用ページ画像における当該画素の画素値に応じた画像処理を実行する画像処理手段、
として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−55614(P2013−55614A)
【公開日】平成25年3月21日(2013.3.21)
【国際特許分類】
【出願番号】特願2011−194292(P2011−194292)
【出願日】平成23年9月6日(2011.9.6)
【特許番号】特許第4973803号(P4973803)
【特許公報発行日】平成24年7月11日(2012.7.11)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】