JP4508952B2 - 画像処理方法及び画像処理装置 - Google Patents

画像処理方法及び画像処理装置 Download PDF

Info

Publication number
JP4508952B2
JP4508952B2 JP2005167344A JP2005167344A JP4508952B2 JP 4508952 B2 JP4508952 B2 JP 4508952B2 JP 2005167344 A JP2005167344 A JP 2005167344A JP 2005167344 A JP2005167344 A JP 2005167344A JP 4508952 B2 JP4508952 B2 JP 4508952B2
Authority
JP
Japan
Prior art keywords
color
data
processing
color matching
composite
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005167344A
Other languages
English (en)
Other versions
JP2006345096A5 (ja
JP2006345096A (ja
Inventor
尚之 西川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005167344A priority Critical patent/JP4508952B2/ja
Priority to US11/422,470 priority patent/US8514447B2/en
Publication of JP2006345096A publication Critical patent/JP2006345096A/ja
Publication of JP2006345096A5 publication Critical patent/JP2006345096A5/ja
Application granted granted Critical
Publication of JP4508952B2 publication Critical patent/JP4508952B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、文字や図形のオブジェクトに対して第1の色空間から第2の色空間へ色空間変換を行う際に、異なる色のオブジェクトを合成色処理する技術に関するものである。
従来、図形やイメージデータを印刷するカラープリンタにおいて、扱われる色データは、図形の場合、カラーモードやコマンドにより指定されるRGB値で与えられ、イメージデータの場合、RGB点順次やRGB面順次の形式で与えられる。また、色データを扱う色空間はRGBとは限らず、カラープリンタ特有の(インク特性等による)YMC色空間やCIE等で定義されているXYZ色空間等もある。
何れにしても、カラープリンタ内部で印刷が行われる際に、入力されたデータに対してカラープリンタで定義されている色空間に対応する色再現処理が施され(例えば、RGBからYMCKへの変換)、実際の印刷出力が行われる。
一般に、上述のカラープリンタが扱う色データと、カラースキャナやCRT等のカラーディスプレイが扱う色データとのカラーマッチングを考慮した場合、基準となる色空間を一つ定義し、カラープリンタとカラースキャナやカラーディスプレイとでそれぞれの発光(色)特性にあった色補正を行っている。
この場合、カラープリンタ内部の色処理も、基準となる色空間に対応するものになり、例えばカラーディスプレイに表示されるイメージをカラープリンタで出力しても、忠実に再現することが可能となる。
例えば、カラースキャナ、カラーディスプレイ、カラープリンタ等のデバイスにおいて同一の色データを扱うために、基準となる色空間、即ち、デバイス非依存色空間を定義し、各デバイスに対応する色空間変換処理を用いて各デバイス固有の色空間へ変換することで、各デバイス間でカラーマッチングを実現することができる。
実際には、各デバイスが本質的に持つ物理的な特性により、各デバイスにおける色再現範囲が異なっているため、測色学的な一致を追求するのは難しいが、一般的にはCIE1976 L*a*b*等に代表される色差式で色差を最小にするような色補正が提案されている。
しかしながら、カラーディスプレイではスクリーンに、カラープリンタでは記録紙に、というように異なるメディア上に表現される2色が等しいか否かを評価する方法において多くの色差式が提案されているが、絶対的に確立されたものはなく、それらは多くの場合、利用する目的により使い分けられているのが実情である。
また、これと同時に、色再現にも幾つかの方法が存在し、やはりその目的により使い分けられている。上述のカラーマッチングを考慮した場合、どのような色再現を目的とするかで評価する方法も必然的に異なってくる。特に、カラープリンタにおいて、その内部の色再現方法は出力される印刷物の画質に影響する重要な要素となる。一般には、上述したようにCIE1976 L*a*b*色差式等を用いて、その色差が最小となるような補正を行うことが試みられている。この方法はカラースキャナから読み取った色データをカラープリンタで色再現するような場合には有効である。これは元が反射原稿(紙上に再現されていた色)であり、それを印刷装置のインクで再現するのは比較的容易だからである。基本的に物理的発色の仕組が同一なのでインク特性の違いやその濃度(諧調性)の問題があるにしてもその他のメディアに比べれば色再現は容易である。
ところが、カラーディスプレイのスクリーン上に発光されるような色は、物理的な特性自体も反射原稿と異なっており、一般的な色差式による色再現性の追求には限界がある。このようなメディアにおいて出力される画像が自然画であった場合、一般にプリファードマッチングと呼ばれる色再現が利用されている場合が多い。これは、再現画像が元画像と等色であるかどうかという観点から離れて、画像中で最も重要ないくつかの色(例えば、人の肌色等)についてより好ましい色再現を達成しようとするものである。
しかし、自然画像のようなデータを扱う際には、このような色再現が有効であっても、コンピュータグラフィックス(CG)画像のようなデータを扱う場合は等色を考慮しないような色再現処理では不都合が生じる。
そこで、処理するデータに合わせてその色再現処理が変更可能であれば、上述の問題も解決可能である。従って、扱うデータに対応した色再現処理を選択することで、より好ましい画質で印刷出力できる多色印刷装置を提供することができる。
特開2001-186365号公報
しかしながら、上記従来例では、CGデータとイメージデータとが合成されたデータを処理する際に、扱うデータに対応した異なるレンダリングインテントを適用し、データを合成しようとしても、どちらのレンダリングインテントを選択して適用すべきであるか、明確に定義できないという問題がある。
本発明は上記課題を解決するためになされたもので、異なる色のオブジェクトに対する合成色処理を効率的に行うことを目的とする。
本発明は、第一の色で構成され、第一の透過、合成属性と第一のカラーマッチング方法が指定された第一のオブジェクトと、前記第一のオブジェクトに重なっており、第二の色で構成され、第二の透過、合成属性と第二のカラーマッチング方法が指定された第二のオブジェクトとを処理する方法であって、前記第一の色と前記第二の色とを前記第一の透過、合成属性と前記第二の透過、合成属性に従い、合成することで合成色を求める合成工程と、前記合成工程において得られた合成色に対し、前記第一のカラーマッチング方法と前記第二のカラーマッチング方法でカラーマッチングを行う工程と、前記第一のカラーマッチング方法でカラーマッチングした結果と前記第二のカラーマッチング方法でカラーマッチングした結果に、前記第一の透過、合成属性と前記第二の透過、合成属性に従った演算処理を行う演算処理工程とを有することを特徴とする。
本発明によれば、異なる色のオブジェクトに対する合成色処理を効率的に行うことができる。
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。
[第1の実施形態]
図1は、第1の実施形態における色処理に関する主な処理を示す図である。図1に示すように、入力データは、まず入力部101で一時的に記憶された後、データ解析部102へ送られる。そして、データ解析部102でどのような種類のデータであるか否かが解析される。具体的には、入力データのデータ形式を認識し、ピクセルサイズと各ピクセルのRGB値が点順次形式で並んでいれば、イメージデータと解析する。また、図形の種類を表わすデータとその座標値や色指定値のRGBデータ等がその処理体系に合致する形式で並んでいれば、CGデータと解析する。
次に、データ解析部102で解析した結果に基づいて入力データをそのデータの処理に合う展開系へと分岐させる。即ち、データ解析部102で解析した結果がイメージデータであれば、入力データはデータ解析部102からイメージ展開系103へ送られる。そしてイメージ展開系103で色変換処理部104を参照しながらYMCデータへ変換されて描画データに展開され、ページバッファ107に描画される。
また、データ解析部102で解析した結果がCGデータであれば、入力データはデータ解析部102からCG展開系105へ送られる。そしてCG展開系105で色変換処理部106を参照しながらYMCデータへ変換されて描画データに展開され、ページバッファ10に描画される。
ここで、上述の色処理をプリンタドライバやフロントエンドサーバと協働して実行する場合の合成色処理について説明する。
図2は、プリント処理ブロックの構成の一例を示す図である。ここでは、クライアントPC200から出力された印刷ジョブがプリント処理ブロック220へ渡され、プリント処理ブロック220内の出力処理によって不図示のプリンタへデータ出力が行われるよう構成されている。
図2に示すように、プリント処理ブロック220は、いくつかの内部処理ブロックから構成されている。まず、印刷応答処理ブロック221は、ネットワーク等から入力されるクライアントPC200からの印刷要求に対して応答を行い、クライアントPC200から送信されてくる印刷データの受信処理を行う。次に、スプーリング処理ブロック222は、印刷応答処理ブロック221が受け取った印刷データをサーバ内のスプーリング領域に、一時的に格納する。
印刷処理ブロック223では、印刷データに対して解析処理を行った上で、印刷を行うための画像形成処理を担当する。合成色処理ブロック224は、印刷データ内に含まれる合成色の値を本実施形態の計算処理によって求める。制御ブロック225は、合成色処理ブロック224での計算処理の実行の可否を制御するブロックである。
そして、210は合成色設定をユーザに提供するためのユーザインタフェースであり、不図示のクライアントPCやフロントエンドサーバのディスプレイ上に表示される。図2に示す例では、「合成色処理する」211、「合成色処理しない」212、「デフォルト設定」213、「詳細設定」214、「OK」215、「適用」216、「キャンセル」217の各指示ボタンが表示されている。
次に、上述した合成色処理が指定された場合に、それぞれ異なる色の2つの画像を合成する合成処理について説明する。
図3は、2つの図形データを合成する合成処理を説明するための図である。一般的に、描画する画像の色の重なり部分は、任意の混色演算式に従って演算処理することができる。この例では、画像として2つの図形310、320を入力し、1つの図形310が透過、合成属性値としてα_CG1を持ち、別の図形320が透過、合成属性値としてα_CG2を持つものとする。また、各図形の透過、合成属性値は画像を形成しているピクセル毎に設定されているため、合成の際には、ピクセル毎に合成ピクセルを計算することができるように構成されている。
この重なりの部分342とそれ以外の部分341、343とでは、カラーマッチングの処理が異なるため、図3に示すように、適宜領域331〜333の分解処理が行われる。この分割処理は、第1の実施形態では、データを受けたプリンタ側で適宜行われるように構成されている。
プリンタの中では、分割され、かつ重なり領域に該当するオブジェクトに対して、後段のカラーマッチング処理のために、そのデータのタイプ(TYPE)と、重なりの数(NUMBER OF OBJECT)と、重なり対象となったオブジェクトのオリジナルの色(RGB1,RGB2…)をそれぞれ記録し、例えば以下のようなデータ構造体を生成する。
FILL {
TYPE = COMPOSITING
NUMBER OF OBJECT WAS = 2
RGB1 =0.458824 0.733334 0, INTENT = CM1
RGB2 =0.0 0.458824 0.733334, INTENT = CM2
LINE START FROM(257.616 321.832)
(226.152 321.832),(226.152 292.618)
(257.616 292.618),(257.616 321.832)
END
}
ここで、上述の合成色処理をクライアントPC200のプリンタドライバ440と協働して実行する場合について説明する。
図4は、第1の実施形態におけるデータオブジェクトの処理の流れを示すブロック図である。図4において、ドキュメントはユーザがアプリケーションメニューから新規作成を選択することで生成され、そのドキュメントの内部で文字やグラフィックス等のオブジェクトを選択、配置することで作成される。また、図4に示すように、作成の過程では、各オブジェクトの形状を変化させる作業や配置を変更する等の編集作業又は適時に保存することが可能である。
ここで、ドキュメントを印刷処理するデータ処理の中で、グラフィックス等のオブジェクトが別のオブジェクトと重なっている場合について説明する。アプリケーション410でプリント処理が開始されると、プリンタドライバ440が起動され、アプリケーション410上のデータがプリント処理ブロック441へ渡される。このプリント処理ブロック441では、透過属性のあるオブジェクトを処理する場合、そのデータを分割ブロック420へ渡すように構成されている。
分割ブロック420において、まず、データスキャンブロック421にてデータの分割すべき領域の検索を実行する。そして、分割データ作成ブロック422で、上述した処理に基づいてデータを再構成し、分割したデータを作成する。このとき、重なり部分に関しては、色1とそのレンダリングインテント、色2とそのレンダリングインテント、各情報を保持した状態で、重なり部分のデータを登録する。例えば、以下のようなデータを生成する。
FILL {
TYPE = COMPOSITING
NUMBER OF OBJECT WAS = 2
RGB1 =0.458824 0.733334 0, INTENT = CM1
RGB2 =0.0 0.458824 0.733334, INTENT = CM2
LINE START FROM (257.616 321.832)
(226.152 321.832),(226.152 292.618)
(257.616 292.618),(257.616 321.832)
END
}
次に、データオブジェクトは、プリンタドライバ440のプリント処理ブロック441に戻される。そして、色変換処理ブロック442で、上述した分割ブロック420で分割されたオブジェクト(TYPE = COMPOSITINGの記述があるオブジェクト)を処理する場合、合成色変換処理ブロック430へデータを渡すように構成されている。
ここで、2つオブジェクト431、432には、それぞれ異なる色が指定され、それぞれ異なるカラーマッチング方法(レンダリングインテント)が指定されている場合について説明する。
ある図形オブジェクト(例えば矩形画像)が与えられている場合に、一旦画像のレンダリングがなされ、矩形の領域にRGBピクセルが展開された状態になる。ここでは、矩形領域の全てのピクセルにおける指定色が色1で、RGB値=(Rc、Gc,Bc)が割り当てられ、その領域内の透過、合成属性値は全てα1とする。また、この図形オブジェクトは、CG画像として扱われ、そのマッチング方法として「色相を優先する」方法が指定されているものとする。
そして、図形オブジェクトを印刷ページに配置すると、その位置関係からイメージ画像の領域と重なっているものとする。イメージ画像は、ピクセル値(RGB)で構成され、そのイメージ画像の全ピクセルの透過、合成属性値は全てα2とする。また、そのカラーマッチング方法は「色差最小を優先する」方法が指定されている。
このイメージ画像と図形データを合成するには、それぞれの位置情報を適宜に参照しながら各ピクセルについて、1ピクセル毎に、合成計算を繰返していく必要がある。
ここで、イメージ画像のピクセル値が、色2であった場合、即ち、RGB値が(Ri,Gi,Bi)であった場合を例に、その計算方法について説明する。
まず、合成計算433で、色1(431)のRGB値(Rc,Gc,Bc)と、色2(432)のRGB値(Ri,Gi,Bi)に対して以下の計算を行い、合成色のRGB値(Rn,Gn,Bn)を求める。
Rn=(Rc×α1+Ri×α2)/(α1+α2)
Gn=(Gc×α1+Gi×α2)/(α1+α2)
Bn=(Bc×α1+Bi×α2)/(α1+α2)
次に、カラーマッチング処理434を実行する。上記の計算で得られた、Rn,Gn,Bnに対して、マッチング方法1のカラーマッチング処理を適用すると、(R1,G1,B1)が得られる。
また、これとは別に、先に得られた、Rn,Gn,Bnに対して、マッチング方法2のカラーマッチング処理を適用する。この計算により、同じく(R2,G2,B2)を得ることができる。そして、それぞれ得られた2つのRGB値、即ち、(R1,G1,B)と(R2,G2,B2)とに対して以下の計算を適用する。
Rm=(R1×α1+R2×α2)/(α1+α2)
Gm=(G1×α1+G2×α2)/(α1+α2)
Bm=(B1×α1+B2×α2)/(α1+α2)
以上のように計算された(Rm,Gm,Bm)が重複領域における色の値となるので、この結果をプリンタドライバ440の色変換処理442に戻し、プリントデータを生成するように構成されている。そして、ここで生成されたプリントデータは、トランスミッタ443を介してフロントエンドサーバ450へ適時、送信されるよう構成されている。
[第2の実施形態]
次に、図面を参照しながら本発明に係る第2の実施形態について詳細に説明する。
第1の実施形態では、合成色処理をプリンタドライバと協働して実行する場合について説明したが、第2の実施形態では、アプリケーションのプリント前処理とフロントエンドサーバで実行する場合について説明する。
図5は、第2の実施形態におけるデータオブジェクトの処理の流れを示すブロック図である。図5において、第1の実施形態と同様に、ドキュメントはユーザがアプリケーションメニューから新規作成を選択することで生成され、そのドキュメントの内部で文字やグラフィックス等のオブジェクトを選択、配置することで作成されていく。また、図5に示すように、作成の過程では、各オブジェクトの形状を変化させる作業や配置を変更する等の編集作業又は適時に保存することが可能である。
ここで、ドキュメントを印刷処理するデータ処理の中で、グラフィックス等のオブジェクトが別のオブジェクトと重なっている場合について説明する。
アプリケーション510からプリント指示が出されると、アプリケーション510内部のプリント前処理ブロック511が呼び出される。プリント前処理ブロック511では、透過属性のあるオブジェクト、それに影響されるオブジェクト群、又は透過属性グループで括られたデータの有無を判定し、その判定の結果、合成処理が必要なデータを見つけた場合には、そのデータを分割ブロック520へ渡すように構成されている。
分割ブロック520において、まず、データスキャンブロック521にてデータの分割すべき領域の検索を実行する。そして、分割データ生成ブロック522で、上述した処理に基づいてデータを再構成し、分割したデータを作成する。このとき、重なり部分に関しては、色1とそのレンダリングインテント、色2とそのレンダリングインテント、各情報を保持した状態で、重なり部分のデータを登録する。例えば、以下のようなデータを生成する。
FILL {
TYPE = COMPOSITING
NUMBER OF OBJECT WAS = 2
RGB1 =0.458824 0.733334 0, INTENT = CM1
RGB2 =0.0 0.458824 0.733334, INTENT = CM2
LINE START FROM (257.616 321.832)
(226.152 321.832),(226.152 292.618)
(257.616 292.618),(257.616 321.832)
END
}
次に、データオブジェクトは、アプリケーション510のプリント前処理ブロック511に戻される。そして、プリンタジョブであるデータ群は、プリンタドライバ540内のプリント処理ブロック541へ渡され、プリントデータが生成された後に、トラスミッタ542を経由してフロントエンドサーバ550へ送信される。
フロントエンドサーバ550内では、カラー処理ブロック551にて色変換処理が適宜実行されるように構成されている。しかし、上述の分割ブロック520で分割されたオブジェクト(TYPE = COMPOSITINGの記述があるオブジェクト)を処理する場合、合成色変換処理ブロック530へデータを渡すように構成されている。
ここで、2つオブジェクトには、それぞれ異なる色が指定され、それぞれ異なるカラーマッチング方法(レンダリングインテント)が指定されている場合について説明する。
ある図形オブジェクト(例えば矩形画像)が与えられている場合に、一旦画像のレンダリングがなされ、矩形の領域にRGBピクセルが展開された状態になる。ここでは、矩形領域の全てのピクセルにおける指定色が色1で、RGB値=(Rc、Gc,Bc)が割り当てられ、その領域内の透過、合成属性値は全てα1とする。また、この図形オブジェクトは、CG画像として扱われ、そのマッチング方法として「色相を優先する」方法が指定されているものとする。
そして、図形オブジェクトを印刷ページに配置すると、その位置関係からイメージ画像の領域と重なっているものとする。イメージ画像は、ピクセル値(RGB)で構成され、そのイメージ画像の全ピクセルの透過、合成属性値は全てα2とする。また、そのカラーマッチング方法は「色差最小を優先する」方法が指定されている。
このイメージ画像と図形データを合成するには、それぞれの位置情報を適宜に参照しながら各ピクセルについて、1ピクセル毎に、合成計算を繰返していく必要がある。
ここで、イメージ画像のピクセル値が、色2であった場合、即ち、RGB値=(Ri,Gi,Bi)であった場合を例に、その計算方法について説明する。
まず、合成計算533で、色1(531)のRGB値(Rc,Gc,Bc)と、色2(532)のRGB値(Ri,Gi,Bi)に対して以下の計算を行い、合成色のRGB値(Rn,Gn,Bn)を求める。
Rn=(Rc×α1+Ri×α2)/(α1+α2)
Gn=(Gc×α1+Gi×α2)/(α1+α2)
Bn=(Bc×α1+Bi×α2)/(α1+α2)
次に、カラーマッチング処理534を実行する。上記の計算で得られた、Rn,Gn,Bnに対して、マッチング方法1のカラーマッチング処理を適用すると、(R1,G1,B1)が得られる。
また、これとは別に、先に得られた、Rn,Gn,Bnに対して、マッチング方法2のカラーマッチング処理を適用する。この計算により、同じく(R2,G2,B2)を得ることができる。そして、それぞれ得られた2つのRGB値、即ち、(R1,G1,B)と(R2,G2,B2)とに対して以下の計算を適用する。
Rm=(R1×α1+R2×α2)/(α1+α2)
Gm=(G1×α1+G2×α2)/(α1+α2)
Bm=(B1×α1+B2×α2)/(α1+α2)
以上のように計算された(Rm,Gm,Bm)が重複領域における色の値となるので、この結果に基づいてプリント画像を形成するように構成されている。
このように、複数のオブジェクトにおいて、異なるレンダリングインテントを適用した場合で、かつ、これを合成しようとする場合であっても、正しいレンダリングインテントの処理を行うことができる。
即ち、第1の色空間から第2の色空間に変換を行う色変換であって、複数のインテントに対応している場合に、まず、最初に合成色の計算を行った後、得られた合成色に対して、方法1のカラーマッチング処理と、方法2のカラーマッチング処理、それぞれを提供し、それぞれ得られた2つの異なるカラーマッチング色に基づいて、これと透過属性値より構成される重み係数によって計算される色の値を利用することにより、効果的な色再現を実現することが可能となる。
加えて、上述した処理を実現するに際し、ホスト側で処理の一部を実行するように構成しているため、処理速度の低下等を防ぐことができる。この結果、各色のオブジェクトにおいて、色が変化した場合でも、スムーズな色の変化を保持することができ、自然な印象の画像を形成することができる。
[第3の実施形態]
次に、図面を参照しながら本発明に係る第3の実施形態について詳細に説明する。
尚、第3の実施形態では、第1の実施形態で図1を用いて説明した色処理をアプリケーション側のバックエンドプロセスで実行するように構成したものである。
図6は、アプリケーション処理ブロックの構成の一例を示す図である。図6に示すように、アプリケーション処理ブロック620はいくつかの内部処理ブロックから構成されている。まず、新規作成処理ブロック621はドキュメントの新規作成を処理するブロックであり、ユーザが新規にドキュメント作成を指示した時にメモリ等の領域を確保し、新規ドキュメント用のテンプレート情報に基づいて、各種の設定情報等を設定する等の処理を行う。編集作業処理ブロック622は、現在編集中のドキュメントにアクセスし、ユーザからインタラクティブに指定される指示に従って、既に内在するオブジェクトに対して、変形や配置の変更等を実行する。
プリンタデバイス管理ブロック623では、現在作成しているドキュメントで出力対象として規定しているプリンタデバイスを情報として管理している。ドキュメントを新規作成した段階では、例えば、システム内部で規定されているデフォルトのプリンタ等が指定されているが、ドキュメントの作成過程、また編集の途中でプリンタデバイスを切り換えた場合は、適宜に内部の情報を更新するように構成されている。
合成色処理ブロック624は、プリントデータ内に含まれる合成色の値を本実施形態の計算処理により求める。制御ブロック625は、合成色処理ブロック624での計算処理の実行の可否を制御するブロックである。
そして、610は合成色設定をユーザに提供するためのユーザインタフェースであり、不図示のホストコンピュータのディスプレイ上に表示される。図6に示す例では、「合成色処理する」611、「合成色処理しない」612、「デフォルト設定」613、「詳細設定」614、「OK」615、「適用」616、「キャンセル」617の各指示ボタンが表示されている。
ここで、アプリケーションのバックエンドプロセスとして合成色処理を実行する場合について説明する。
図7は、第3の実施形態におけるデータオブジェクトの処理の流れを示すブロック図である。図7において、ドキュメントはユーザがアプリケーションメニューから新規作成を選択することで生成され、そのドキュメントの内部で文字やグラフィックス等のオブジェクトを選択、配置することで作成される。また、図7に示すように、作成の過程では、各オブジェクトの形状を変化させる作業や配置を変更する等の編集作業又は適時に保存することが可能である。
ここで、ドキュメントを作成する作業の中で、グラフィックス等のオブジェクトを配置する際に、既に配置されているオブジェクトと重なる場合について説明する。オブジェクトに透過属性がある場合には、バックエンドプロセス712を適時に起動し、重なり部分に対して分割処理が実行される。
尚、バックエンドプロセス712(別スレッドの起動)を利用する理由としては、ユーザの操作に対して、アプリケーションソフトはレスポンス良く応答を返さないといけないことと、一方で、ユーザが操作する各作業(例えば、キーの入力や、グラフィックスオブジェクトの移動等)は、システムの処理速度と比較すると十分に遅いため、その時間内で処理を待たせる構造にすると処理効率が悪くなるということに起因する。
よって、第3の実施形態のように、重なり部分の抽出や、その部分に対するカラー画像処理を実行する一連のプロセスは、バックエンドプロセス712によって処理することで、システムの効率を向上させることが可能となる。
バックエンドプロセス712が起動されると、分割ブロック720へ該当するオブジェクトデータが、適宜、渡されるように構成されている。
分割ブロック720において、まず、データスキャンブロック721にてデータの分割すべき領域の検索を実行する。そして、分割データ作成ブロック722で、上述した処理に基づいてデータを再構成し、分割したデータを作成する。このとき、重なり部分に関しては、色1とそのレンダリングインテント、色2とそのレンダリングインテント、各情報を保持した状態で、重なり部分のデータを登録する。例えば、以下のようなデータを生成する。
FILL {
WORK FLOW ID = 1
TYPE = COMPOSITING
NUMBER OF OBJECT WAS = 2
RGB1 =0.458824 0.733334 0, INTENT = CM1
RGB2 =0.0 0.458824 0.733334, INTENT = CM2
LINE START FROM (257.616 321.832)
(226.152 321.832),(226.152 292.618)
(257.616 292.618),(257.616 321.832)
END
}
次に、データオブジェクトは、画像合成処理ブロック730に渡され、カラー合成処理が行われる。ここで、2つのオブジェクトには、それぞれ異なる色が指定され、それぞれ異なるカラーマッチング方法(レンダリングインテント)が指定されている場合について説明する。
ある図形オブジェクト(例えば矩形画像)が与えられている場合に、一旦画像のレンダリングがなされ、矩形の領域にRGBピクセルが展開された状態になる。ここでは、矩形領域の全てのピクセルにおける指定色が色1で、RGB値=(Rc、Gc,Bc)が割り当てられ、その領域内の透過、合成属性値は全てα1とする。また、この図形オブジェクトは、CG画像として扱われ、そのマッチング方法として「色相を優先する」方法が指定されているものとする。
そして、図形オブジェクトを印刷ページに配置すると、その位置関係からイメージ画像の領域と重なっているものとする。イメージ画像は、ピクセル値(RGB)で構成され、そのイメージ画像の全ピクセルの透過、合成属性値は全てα2とする。また、そのカラーマッチング方法は「色差最小を優先する」方法が指定されている。
このイメージ画像と図形データを合成するには、それぞれの位置情報を適宜に参照しながら各ピクセルについて、1ピクセル毎に、合成計算を繰返していく必要がある。
ここで、イメージ画像のピクセル値が、色2であった場合、即ち、RGB値=(Ri,Gi,Bi)であった場合を例に、その計算方法について説明する。
まず、色1のRGB値(Rc,Gc,Bc)と、色2のRGB値(Ri,Gi,Bi)に対して以下の計算を行い、合成色のRGB値(Rn,Gn,Bn)を求める。
Rn=(Rc×α1+Ri×α2)/(α1+α2)
Gn=(Gc×α1+Gi×α2)/(α1+α2)
Bn=(Bc×α1+Bi×α2)/(α1+α2)
次に、カラーマッチング処理743を実行する。上記計算で得られた、Rn,Gn,Bnに対してマッチング方法1のカラーマッチング処理を適用すると、(R1,G1,B1)が得られる。
また、これとは別に、先に得られた、Rn,Gn,Bnに対して、マッチング方法2のカラーマッチング処理を適用する。この計算により、同じく(R2,G2,B2)を得ることができる。そして、それぞれ得られた2つのRGB値、即ち、(R1,G1,B)と(R2,G2,B2)とに対して以下の計算を適用する。
Rm=(R1×(α1・W1)+R2×(α2・W2))
/((W1・α1)+(α2・W2))
Gm=(G1×(α1・W1)+G2×(α2・W2))
/((W1・α1)+(α2・W2))
Bm=(B1×(α1・W1)+B2×(α2・W2))
/((W1・α1)+(α2・W2))
尚、Wiは、各マッチング方法について重み係数であり、これらはワークフローIDと連動している。例えば、ワークフローIDが1の時に、「色相を優先する」方法について重み係数W1=1.0が適用され、また「色相を優先する」方法について重み係数W1=0.5が適用されるようになっている。
以上のように計算された(Rm,Gm,Bm)が重複領域における色の値となるので、この結果をアプリケーション710側のバックエンドプロセス712に戻し、ドキュメントを構成するデータ要素の一つとしてドキュメントデータの内部に格納するよう構成されている。そして、アプリケーション710から、そのドキュメントの印刷を開始した際には、これらのデータがプリンタドライバ740に渡され、プリント処理741でプリントデータが作成され、トランスミッタ742からフロントエンドサーバ750へ渡される。フロントエンドサーバ750で、適宜レンダリング処理が実行され、プリント画像が形成されるよう構成されている。
[第4の実施形態]
次に、図面を参照しながら本発明に係る第4の実施形態について詳細に説明する。
第4の実施形態は、第3の実施形態と同様に、上述した色処理をアプリケーション側のバックエンドプロセスで実行するように構成したものである。
また、アプリケーション処理ブロックの構成も、第3の実施形態で説明した図6に示す構成と同様であり、その説明は省略する。
図8は、第4の実施形態におけるデータオブジェクトの処理の流れを示すブロック図である。第3の実施形態と同様に、ドキュメントはユーザがアプリケーションメニューから新規作成を選択することで生成され、そのドキュメントの内部で文字やグラフィックス等のオブジェクトを選択、配置することで作成される。作成の過程では、各オブジェクトの形状を変化させたり、配置を変更する等の編集作業、或いは適時に保存することが可能である。
ここで、ドキュメントを作成する作業で、グラフィックス等のオブジェクトを配置する際に、既に配置されているオブジェクトと重なる場合について説明する。この条件の中でオブジェクトに透過属性がある場合には、バックエンドプロセス812を適時に起動し、重なり部分に対して分割処理が実行される。ここで、分割処理を行うためには、該当するオブジェクトデータが、適宜、分割ブロック820に渡されるように構成されている。
分割ブロック820において、まず、データスキャンブロック821にてデータの分割すべき領域の検索を実行する。そして、分割データ作成ブロック822で、上述した処理に基づいてデータを再構成し、分割したデータを作成する。このとき、重なり部分に関しては、色1とそのレンダリングインテント、色2とそのレンダリングインテント、各情報を保持した状態で、重なり部分のデータを登録する。例えば、以下のようなデータを生成する。
FILL {
WORK FLOW ID = 2
TYPE = COMPOSITING
NUMBER OF OBJECT WAS = 2
RGB1 =0.458824 0.733334 0.0, INTENT =色相を優先する
RGB2 =0.0 0.458824 0.733334, INTENT =色差最小を優先する
LINE START FROM (257.616 321.832)
(226.152 321.832),(226.152 292.618)
(257.616 292.618),(257.616 321.832)
END
}
次に、データオブジェクトは、画像合成処理ブロック830に渡され、カラー合成処理が行われる。画像合成処理ブロック830では、判定ブロック835にてオブジェクト数を調べる。ここでは、重なり部分を構成するオブジェクトの数が2より大きいか否かを、比較する。第4の実施形態では、オブジェクトの重なり部分に対して正確な色処理を提供しようとするものであるが、それも重なりが3以上の場合は、その効果が薄い場合が多い。これは混色を多く重ねると、色の彩度が急激に落ちることに起因する。
また、これと同時に、それを処理する時間もオブジェクトの数に比例して遅くなっていく。第4の実施形態では、これを回避するために、重なりの数が3以上の部分に関しては、合成色の計算処理を簡略化するという構成で、処理速度の低下を防ぐようにしている。即ち、重なりオブジェクト数が3以上の場合には、通常カラー処理536へ、それ以外の場合には、合成カラー処理537へ分岐するように構成されている。
通常カラー処理536の場合には、各オブジェクトの色(RDi,GDi,BDi)(i=1〜N)及び合成属性(αDi,αDi,αDi)(i=1〜N)に対して、以下の計算を行い、合成色(RF,GF,BF)が求められる。この合成色は、合成計算834で計算されたものである。
RF=Σ(RDi×αDi)/Σ(αDi)
GF=Σ(GDi×αDi)/Σ(αDi)
BF=Σ(BDi×αDi)/Σ(αDi)
この値(RF,GF,BF)に対してカラーマッチング処理836を適用するが、この場合、最初に登録されているオブジェクトのカラーマッチング方法を適用するように構成されている。例えば、先のデータでは、「色相を優先する」という方法が指定されているので、これを重なり部分の合成色用のカラーマッチング処理に適用する。
ここで、上記計算で得られた合成色(RF,GF,BF)に対してマッチング方法1のカラーマッチング処理を適用すると、(Rm,Gm,Bm)が得られた場合、この値が、バックエンドプロセス812へ戻るように構成されている。
一方、重なりオブジェクト数が2以下であった場合は合成カラー処理837へ分岐する。ここで、2つオブジェクトが合成の領域にあり、それぞれ異なる色が指定されており、またそれぞれ指定されているカラーマッチング方法(レンダリングインテント)が異なっている場合について説明する。
ある図形オブジェクト(例えば矩形画像)の指定色が色1で、RGB値=(Rc、Gc,Bc)で割り当てられ、透過、合成属性値はα1とする。また、この図形オブジェクトはCG画像として扱われており、そのマッチング方法として「色相を優先する」方法が指定されているとする。
そして、この図形オブジェクトはイメージ画像の領域と重なっているとする。イメージ画像で該当する透過、合成属性値はα2とする。また、そのカラーマッチング方法は「色差最小を優先する」方法が指定されている。このイメージ画像と図形データとを合成するには、それぞれについて合成計算を実行する必要がある。
ここで、イメージ画像のピクセル値が色2であった場合、即ちRGB値=(Ri,Gi,Bi)であった場合を例に、その計算方法について説明する。
まず、合成計算834で、色1(832)のRGB値(Rc,Gc,Bc)と、色2(833)のRGB値(Ri,Gi,Bi)に対して以下の計算を行い、合成色のRGB値(Rn,Gn,Bn)が求められる。
Rn=(Rc×α1+Ri×α2)/(α1+α2)
Gn=(Gc×α1+Gi×α2)/(α1+α2)
Bn=(Bc×α1+Bi×α2)/(α1+α2)
次に、カラーマッチング処理を実行する。上記の計算で得られた、Rn,Gn,Bnに対して、マッチング方法1のカラーマッチング処理837を適用すると、(R1,G1,B1)が得られる。
また、これとは別に、先に得られた、Rn,Gn,Bnに対して、マッチング方法2のカラーマッチング処理を適用する。この計算により、同じく(R2,G2,B2)を得ることができる。そして、それぞれ得られた2つのRGB値、即ち、(R1,G1,B)と(R2,G2,B2)とに対して以下の計算を適用する。
Rm=(R1×(α1・W1)+R2×(α2・W2))
/((W1・α1)+(α2・W2))
Gm=(G1×(α1・W1)+G2×(α2・W2))
/((W1・α1)+(α2・W2))
Bm=(B1×(α1・W1)+B2×(α2・W2))
/((W1・α1)+(α2・W2))
尚、Wiは、各マッチング方法について重み係数であり、これらは変数THPと連動している。例えば、THPの値が2の時に、「色相を優先する」方法について重み係数W1=1.0が適用され、また「色相を優先する」方法について重み係数W1=0.5が適用されるようになっている。
以上のように計算された(Rm,Gm,Bm)が重複領域における色の値となるので、この結果をアプリケーション側のバックエンドプロセス812に戻し、ドキュメントを構成するデータ要素の一つとしてドキュメントデータの内部に格納するよう構成されている。そして、アプリケーション810から、そのドキュメントの印刷を開始した際には、これらのデータがプリンタドライバ840に渡され、プリント処理841でプリントデータが作成され、トランスミッタ842からフロントエンドサーバ850へ渡される。フロントエンドサーバ850で、適宜レンダリング処理が実行され、プリント画像が形成されるよう構成されている。
複数のオブジェクトにおいて、異なるレンダリングインテントを適用した場合で、かつ、これを合成しようとする場合であっても、正しいレンダリングインテントの処理を行うことができる。即ち、第1の色空間から第2の色空間に変換を行う色変換であって、複数のインテントに対応している場合に、まず、最初に合成色の計算を行った後、得られた合成色に対して、方法1のカラーマッチング処理と、方法2のカラーマッチング処理、それぞれを提供し、それぞれ得られた2つの異なるカラーマッチング色に基づいてこれと透過属性値より構成される重み係数により、計算される色の値を利用することにより、効果的な色再現を実現することを可能とする。
加えて、本発明の処理を実現するにあたり、アプリケーション側で処理の一部を、バックエンドプロセスで実行するように構成しているために、本発明の処理を適用した場合でも、処理速度の低下等を防ぐことが出来る。更には、重なり部分の分割を検査した結果、重なるオブジェクト数が規定の数未満のものに関しては、通常の合成色計算を行い、それ以外の場合は、簡単な合成色計算を実行するよう構成することで、複雑なドキュメントを処理する場合でも処理速度の低下を招くことなく処理ができるように構成されている。
その結果、各オブジェクトにおいて、如何様に色が組み合わされ、それが多様に変化した場合でも、スムーズに色の変化を保証することができ、自然な印象の画像形成を素早く処理することができる。
尚、本発明は複数の機器(例えば、ホストコンピュータ,インターフェース機器,リーダ,プリンタなど)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用しても良い。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
このプログラムコードを供給するための記録媒体としては、例えばフロッピー(登録商標)ディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
第1の実施形態における色処理に関する主な処理を示す図である。 プリント処理ブロックの構成の一例を示す図である。 2つの図形データを合成する合成処理を説明するための図である。 第1の実施形態におけるデータオブジェクトの処理の流れを示すブロック図である。 第2の実施形態におけるデータオブジェクトの処理の流れを示すブロック図である。 アプリケーション処理ブロックの構成の一例を示す図である。 第3の実施形態におけるデータオブジェクトの処理の流れを示すブロック図である。 第4の実施形態におけるデータオブジェクトの処理の流れを示すブロック図である。

Claims (5)

  1. 第一の色で構成され、第一の透過、合成属性と第一のカラーマッチング方法が指定された第一のオブジェクトと、前記第一のオブジェクトに重なっており、第二の色で構成され、第二の透過、合成属性と第二のカラーマッチング方法が指定された第二のオブジェクトとを処理する画像処理方法であって、
    前記第一の色と前記第二の色とを前記第一の透過、合成属性と前記第二の透過、合成属性に従い、合成することで合成色を求める合成工程と、
    前記合成工程において得られた合成色に対し、前記第一のカラーマッチング方法と前記第二のカラーマッチング方法でカラーマッチングを行う工程と、
    前記第一のカラーマッチング方法でカラーマッチングした結果と前記第二のカラーマッチング方法でカラーマッチングした結果に、前記第一の透過、合成属性と前記第二の透過、合成属性に従った演算処理を行う演算処理工程とを有することを特徴とする画像処理方法。
  2. 前記第一のオブジェクト、第二のオブジェクトに加え更に別のオブジェクトが重なっている場合であって、前記重なるオブジェクトの数が所定数以上の場合、前記合成工程、前記カラーマッチングを行う工程、及び前記演算処理工程を行うことなく、前記第一のオブジェクト、第二のオブジェクトに加え更に別のオブジェクトの色の合成色を求め、該合成色に対し前記第一のカラーマッチングを行うことを特徴とする請求項1に記載の画像処理方法。
  3. 第一の色で構成され、第一の透過、合成属性と第一のカラーマッチング方法が指定された第一のオブジェクトと、前記第一のオブジェクトに重なっており、第二の色で構成され、第二の透過、合成属性と第二のカラーマッチング方法が指定された第二のオブジェクトとを処理する画像処理装置であって、
    前記第一の色と前記第二の色とを前記第一の透過、合成属性と前記第二の透過、合成属性に従い、合成することで合成色を求める合成手段と、
    前記合成手段で得られた合成色に対し、前記第一のカラーマッチング方法と前記第二のカラーマッチング方法でカラーマッチングを行う手段と、
    前記第一のカラーマッチング方法でカラーマッチングした結果と前記第二のカラーマッチング方法でカラーマッチングした結果に、前記第一の透過、合成属性と前記第二の透過、合成属性に従った演算処理を行う演算処理手段とを有することを特徴とする画像処理装置。
  4. 前記第一のオブジェクト、第二のオブジェクトに加え更に別のオブジェクトが重なっている場合であって、前記重なるオブジェクトの数が所定数以上の場合、前記合成工程、前記カラーマッチングを行う工程、及び前記演算処理工程を行うことなく、前記第一のオブジェクト、第二のオブジェクトに加え更に別のオブジェクトの色の合成色を求め、該合成色に対し前記第一のカラーマッチングを行うことを特徴とする請求項3に記載の画像処理装置。
  5. 請求項1記載の画像処理方法をコンピュータに実行させるためのプログラム。
JP2005167344A 2005-06-07 2005-06-07 画像処理方法及び画像処理装置 Expired - Fee Related JP4508952B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005167344A JP4508952B2 (ja) 2005-06-07 2005-06-07 画像処理方法及び画像処理装置
US11/422,470 US8514447B2 (en) 2005-06-07 2006-06-06 Image processing using first and second color matching

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005167344A JP4508952B2 (ja) 2005-06-07 2005-06-07 画像処理方法及び画像処理装置

Publications (3)

Publication Number Publication Date
JP2006345096A JP2006345096A (ja) 2006-12-21
JP2006345096A5 JP2006345096A5 (ja) 2008-07-24
JP4508952B2 true JP4508952B2 (ja) 2010-07-21

Family

ID=37641735

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005167344A Expired - Fee Related JP4508952B2 (ja) 2005-06-07 2005-06-07 画像処理方法及び画像処理装置

Country Status (1)

Country Link
JP (1) JP4508952B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001117727A (ja) * 1999-10-14 2001-04-27 Fuji Xerox Co Ltd 印刷処理装置
JP2003196669A (ja) * 2001-12-26 2003-07-11 Tamapakku Kk 貼り絵シミュレーション装置、方法、及びプログラム
JP2005109987A (ja) * 2003-09-30 2005-04-21 Kyocera Mita Corp 画像形成方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001117727A (ja) * 1999-10-14 2001-04-27 Fuji Xerox Co Ltd 印刷処理装置
JP2003196669A (ja) * 2001-12-26 2003-07-11 Tamapakku Kk 貼り絵シミュレーション装置、方法、及びプログラム
JP2005109987A (ja) * 2003-09-30 2005-04-21 Kyocera Mita Corp 画像形成方法

Also Published As

Publication number Publication date
JP2006345096A (ja) 2006-12-21

Similar Documents

Publication Publication Date Title
US7379209B1 (en) Color separation of pattern color spaces and form XObjects
KR100850057B1 (ko) 화상 처리 장치 및 화상 처리 방법
JP2003110868A (ja) 画像処理方法、画像処理装置、記憶媒体及びプログラム
CN101146166B (zh) 图像处理装置和方法、以及图像形成装置
JPH09193477A (ja) カラー印刷装置
JP3077581B2 (ja) カラー印刷装置
JP2007208531A (ja) 多色印刷装置及びその制御方法
US8514447B2 (en) Image processing using first and second color matching
JP4508953B2 (ja) 画像処理方法及び画像処理装置
JP4164225B2 (ja) 画像形成システム、画像形成装置、及び画像形成プログラム
JP2010220075A (ja) 画像形成装置、画像データ処理方法及びプログラム
JP3679253B2 (ja) カラー画像出力方法、装置および記録媒体
JP4508952B2 (ja) 画像処理方法及び画像処理装置
JP2019217695A (ja) 画像形成装置及びその画像形成方法、並びにプログラム
JP4986414B2 (ja) 画像処理方法及び画像処理装置
JP5008391B2 (ja) 画像処理装置及びその処理方法
JPH0730773A (ja) 文書処理装置
JP2010274616A (ja) 画像処理システム、画像処理装置、画像形成装置及びプログラム
JPH07186457A (ja) サーバ装置
JP2009038735A (ja) 多色印刷装置
JP5257264B2 (ja) 画像形成装置、画像データ処理方法及び制御プログラム
JP5138088B2 (ja) 画像処理装置及びその処理方法
JP2005328197A (ja) 画像処理システム並びに画像処理装置及び方法
JPH09200549A (ja) 画像処理装置
JP3960114B2 (ja) 印刷色確認システム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080609

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100201

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100401

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100423

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100427

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130514

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140514

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees