JP2008271103A - Color conversion apparatus and method - Google Patents
Color conversion apparatus and method Download PDFInfo
- Publication number
- JP2008271103A JP2008271103A JP2007110538A JP2007110538A JP2008271103A JP 2008271103 A JP2008271103 A JP 2008271103A JP 2007110538 A JP2007110538 A JP 2007110538A JP 2007110538 A JP2007110538 A JP 2007110538A JP 2008271103 A JP2008271103 A JP 2008271103A
- Authority
- JP
- Japan
- Prior art keywords
- color conversion
- color
- weighting
- interpolation
- data
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、テーブルを用いた色変換に関する。 The present invention relates to color conversion using a table.
今日、コンピュータの発達と共にデジタル画像データがごく一般的に流通している。デバイス間のカラー表現の差異を配慮して、入力画像データを使用デバイスに適切な色信号に変換するカラーマッチングが、知られている。 Today, with the development of computers, digital image data is very popular. In consideration of the difference in color expression between devices, color matching is known in which input image data is converted into a color signal suitable for a device to be used.
図21の概念図を用いて従来のカラーマッチングについて説明する。入力データ(RGBデータ)は、入力プロファイル101によりデバイスに依存しない色空間のXYZデータに変換される。出力デバイスの色再現範囲外の色は出力デバイスにより再現することができない。よって、変換されたXYZデータを出力デバイスの色再現範囲内にマッピングする色空間圧縮を行う。そして、色空間圧縮が施されたデータはデバイスに依存しない色空間から出力デバイスに依存する色空間のCMYKデータへ変換される。
Conventional color matching will be described with reference to the conceptual diagram of FIG. The input data (RGB data) is converted into XYZ data in a color space independent of the device by the
カラーマッチングにおいて基準白色点および環境光は固定されている。例えば、International Color Consortium(ICC)によって規定されるプロファイルでは、Profile ConnectionSpace(PCS)がD50基準のXYZ値およびLab値である。このため、入力原稿やプリント出力はD50の光源下で観察する場合に正しい色再現が保証されるが、その他の光源下では正しい色再現が保証されない。 In color matching, the reference white point and the ambient light are fixed. For example, in the profile defined by the International Color Consortium (ICC), the Profile Connection Space (PCS) is the XYZ value and Lab value of the D50 standard. For this reason, correct color reproduction is assured when the input document or print output is observed under the light source of D50, but correct color reproduction is not guaranteed under other light sources.
このような従来のカラーマッチング処理の問題点を解決するために、環境光などの観察条件に関わらず良好なカラーマッチングを行うことを可能とするものがある(特許文献1)。 In order to solve such a problem of the conventional color matching processing, there is one that can perform good color matching regardless of observation conditions such as ambient light (Patent Document 1).
特許文献1に記載されている方法は、図21を用いて説明した従来のカラーマッチング方法と比して、変換段階が明示的に分離されている。
Compared with the conventional color matching method described with reference to FIG. 21, the conversion stage is explicitly separated in the method described in
このカラーマネージメントシステムによれば、スキャナ−プリンタシステムあるいはモニタ−プリンタシステムなど幅広く柔軟に対応できる。例えばデスクトップ・パブリッシング(DTP)システムでは、ソース側プロファイルにモニタプロファイルを指定し、ディスティネーション側プロファイルにプリンタプロファイルを指定すれば、モニタ上のカラー画像とプリンタ出力画像との知覚的一致がはかられる。 According to this color management system, it is possible to deal with a wide range of flexibility such as a scanner-printer system or a monitor-printer system. For example, in a desktop publishing (DTP) system, if a monitor profile is specified in the source profile and a printer profile is specified in the destination profile, a perceptual match between the color image on the monitor and the printer output image can be achieved. .
ここで、知覚的一致の良否はプロファイルに左右されるため、デバイスディペンデントカラーとPCS空間での色とが正確に対応付けられたプロファイルを作成することが重要である。そのためには、デバイスディペンデントカラーを実際に印字/表示した際の物理刺激値を推定する、色推定を正確に行わねばならない。 Here, since the quality of perceptual matching depends on the profile, it is important to create a profile in which the device dependent color and the color in the PCS space are accurately associated with each other. For this purpose, it is necessary to accurately perform color estimation for estimating a physical stimulus value when a device dependent color is actually printed / displayed.
例えば従来の色推定技術として、パッチ測色値と補間とを用いるテーブル型の色推定技術が存在する。線形補間として、四面体補間や立方体補間、三角柱補間など様々な補間方法が提案されている。また、非線形補間として、スプライン補間など様々な補間方法が提案されている。 For example, as a conventional color estimation technique, there is a table type color estimation technique using patch colorimetric values and interpolation. As linear interpolation, various interpolation methods such as tetrahedral interpolation, cube interpolation, and triangular prism interpolation have been proposed. Various interpolation methods such as spline interpolation have been proposed as nonlinear interpolation.
また、色推定を行う際に、入力色データが特定単位立体に含まれる場合とそうでない場合で、補間方法や格子点の間隔をかえる方法が提案されている(特許文献2)。 In addition, when color estimation is performed, an interpolation method and a method of changing the interval between lattice points are proposed (Patent Document 2) depending on whether input color data is included in a specific unit solid or not.
特許文献2に記載の方法では、例えば肌色や空色等の重要色を含む一つ以上の特定単位立体を設定することができ、重要色の色変換精度を向上することが可能となっている。また、無彩色を含む複数の特定単位立体を設定することで、グレーの色再現性の向上が可能となっている。
In the method described in
また、入力色成分がYMCKで出力色成分がY’M’C’K’であるような色推定を行う際に、色成分Y’を算出する際は非線形補間を行い、その他の成分に対しては線形補間を行う方法も提案されている。(特許文献3)。 In addition, when performing color estimation such that the input color component is YMCK and the output color component is Y'M'C'K ', nonlinear interpolation is performed when calculating the color component Y', and the other components are compared. A method of performing linear interpolation has also been proposed. (Patent Document 3).
しかしながら、特許文献2の方法では、特定単位立体と特定単位立体外の境界面で不連続性が生じ、階調性に悪い影響を与える恐れがある。入力値のRGB値が256段階のデジタル信号(例えば、0〜255の整数値)である場合は、入力値が整数値という離散値をとるため、境界面での不連続性が問題となる可能性は少ない。しかし、入力値が浮動小数点をとる場合は、境界面での不連続性が影響をおよぼし、階調性が悪くなる可能性が高い。
However, in the method of
特定単位立体と特定単位立体外の補間方法が異なる場合、特に線形補間と非線形補間のように大きく性質が異なる場合、2つの補間方法の補間結果は入力値に対して異なる。つまり、入力値が境界面であっても補間結果は異なり、そこで不連続性が生じることは明らかである。同様に格子点間隔を変えた場合、両者の補間方法が同じでも、片方の格子点上の実測値ともう片方の補間結果が異なる場合は当然不連続性が生じる。 When the interpolation method between the specific unit solid and the specific unit solid is different, especially when the properties are greatly different, such as linear interpolation and nonlinear interpolation, the interpolation results of the two interpolation methods differ with respect to the input value. That is, even if the input value is a boundary surface, the interpolation result is different, and it is clear that discontinuity occurs there. Similarly, when the lattice point interval is changed, even if the interpolation methods are the same, discontinuity naturally occurs when the actually measured value on one lattice point is different from the interpolation result on the other.
また、特許文献3に記載された方法は、入力色空間と出力色空間が同じ種類の場合には有効である。しかし、デバイスディペンデントカラーとPCS空間での色推定の場合、例えばRGB空間からLab空間での色推定の場合は、入力色空間と出力色空間が異なる。よって、うまく適用できないという問題がある。
The method described in
これらの問題を解決するための、本出願人は、特願2006−214528号において、図27にあるような構成の色変換装置を提案している。図27にある色変換装置によれば、色推定アルゴリズムとして、デバイスの特性を良く近似できる非線形補間を使用し、かつグレー付近などの線形性が高い部分のみに線形補間を使用する。よって、非線形補間だけを使用した場合における補間結果のグレー軸のゆがみの問題を解消することができる。さらに、非線形補間により色空間全域にわたる色再現性の向上、および線形補間によりグレー軸の色再現性を向上させることを、階調性を保ちながら実現することができる。また、色空間上で部分的に格子点間隔を細かく設定したり、補間方法をかえたりすることで、全体的なパフォーマンスと階調性は保ちつつ、肌色や空色など色空間上で任意に指定する領域の色再現性を向上させることができる。
図29は、あるデバイスのL*a*b*色空間上での等色相ラインをa−b平面にプロットした図であり、ある明度における色相ラインを示す。イエロープライマリーカラー2901は、ある明度におけるイエローのプライマリカラーを表す。マゼンタプライマリーカラー2902は、ある明度におけるマゼンタのプライマリカラーを表す。シアンプライマリーカラー2903は、ある明度におけるシアンのプライマリカラーを表す。無彩色(グレー)2904は、ある明度における無彩色(グレー)を表す。無彩色(グレー)2904から各プライマリーカラーへの実線が等色相ラインである。イエローの等色相ラインは他のラインに比べて線形性が強く、マゼンタの等色相ラインは他と比べて中位の線形性で、シアンの等色相ラインが最も非線形性が強い。また、色相によっては彩度が上がるにつれて非線形性が高くなる特徴がある。また、図示していないが非線形性の度合いや非線形性が強く表れる色域上でのエリアはデバイスにより異なる。
FIG. 29 is a diagram in which equi-hue lines on the L * a * b * color space of a certain device are plotted on the ab plane, and shows hue lines at a certain lightness. A yellow
しかし、特願2006−214528号の方法では、グレー軸付近以外の色空間全域においては、線形性が強いエリアも非線形性が強いエリアも区別していなかった。 However, in the method of Japanese Patent Application No. 2006-214528, areas with strong linearity and areas with strong nonlinearity are not distinguished in the entire color space other than near the gray axis.
非線形性が強いエリアで線形補間を行うとデバイスの性質を忠実に推定できなために色再現性が低下する。また、線形性が強いエリアで非線形補間を行うと補間結果がL*a*b*色空間上でゆがむリスクが高くなりその結果色再現性が低下する。 If linear interpolation is performed in an area where the nonlinearity is strong, the color reproducibility deteriorates because the device characteristics cannot be accurately estimated. In addition, when nonlinear interpolation is performed in an area where the linearity is strong, there is a high risk that the interpolation result is distorted in the L * a * b * color space, and as a result, the color reproducibility is lowered.
よって、特願2006−214528号の方法では、グレー軸付近以外の色空間全域において、単純に非線形補間の割合を強くすると、線形性が強いエリアの色再現性が悪くなってしまう。一方、単純に線形補間の割合を強くすると、非線形性が強いエリアの色再現性が悪くなってしまう。 Therefore, in the method of Japanese Patent Application No. 2006-214528, if the non-linear interpolation ratio is simply increased in the entire color space other than the vicinity of the gray axis, the color reproducibility of an area having high linearity is deteriorated. On the other hand, if the linear interpolation ratio is simply increased, the color reproducibility of an area having a strong nonlinearity is deteriorated.
本発明の目的は、異なる補間アルゴリズムの色変換結果の混合割合を決定する際に、デバイスの性質、特に隣接するまたは近傍の標本点同士の幾何学的な関係に着目することで、線形性が強いエリアでも非線形性が強いエリアでもデバイスによらないで自動的に色再現性を向上させることにある。 The object of the present invention is to determine the mixing ratio of the color conversion results of different interpolation algorithms by focusing on the characteristics of the device, particularly the geometric relationship between adjacent or neighboring sample points. It is to improve the color reproducibility automatically regardless of the device even in a strong area or an area with strong nonlinearity.
上述の目的を達成するために、本発明は、異なる補間アルゴリズムを用いて、変換テーブルを用いた色変換を行う複数の色変換手段と、前記色変換手段の重み付けを設定する重み付け手段と、前記色変換手段の重み付けまたは重み付けの代表値を最適化する重み付け最適化手段と、前記重み付け手段により算出された重み付けを用いて、前記複数の色変換手段によって得られた複数の色変換結果を混合する混合手段とを有することを特徴とする。 To achieve the above object, the present invention provides a plurality of color conversion means for performing color conversion using a conversion table using different interpolation algorithms, a weighting means for setting a weight of the color conversion means, A plurality of color conversion results obtained by the plurality of color conversion means are mixed using a weight optimization means for optimizing the weighting of the color conversion means or a weighting representative value, and the weighting calculated by the weighting means. And mixing means.
本発明によれば、標本点データを元に標本点同士の幾何学的な関係を算出することにより、色空間上のエリア毎に異なるデバイスの性質を判定して該当するエリアに最適な各補間方法の割合を算出することが可能となる。 According to the present invention, by calculating the geometric relationship between the sample points based on the sample point data, it is possible to determine different device properties for each area in the color space, and to perform each interpolation optimal for the corresponding area. It becomes possible to calculate the ratio of the method.
その結果、異なる性質をもつデバイスに対しても、該当するデバイスに最適な各補間方法の割合を算出することが可能となり、デバイスの性質によらず自動的に色域全域にわたり色再現性が向上するという効果がえられる。 As a result, even for devices with different properties, it is possible to calculate the ratio of each interpolation method that is optimal for the corresponding device, and color reproducibility is automatically improved over the entire color gamut regardless of the device properties. The effect of doing.
以下、本発明の実施の形態を図面に基づき説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
<色知覚モデルを用いたカラーマッチングの処理>
図1は、本実施例における、色知覚モデルを用いたカラーマッチングの処理の概念を説明する概念図である。図1において、101は入力デバイスに依存する色信号を、入力側の環境光の白色点基準に基づくデバイスに依存しない色空間データへ変換するための変換マトリクスまたは変換ルックアップテーブル(LUT)である。104および105は入力観察条件(D50光源の白色点、照度レベル、周囲光の状態など)に基づいて人間の知覚信号JCHまたはQMHへ変換を行う色知覚モデル順変換部である。106および107は出力観察条件(D65光源の白色点、照度レベル、周囲光の状態など)に基づいて人間の知覚信号JCHまたはQMHよりデバイスに依存しない色信号であるXYZ信号へ変換する色知覚モデル逆変換部である。108は、出力側の環境光の白色点基準に基づくデバイスに依存しない色空間データより出力デバイスに依存する色信号へ変換するための変換マトリクスまたは変換ルックアップテーブル(LUT)である。102、103は入力色空間値を出力デバイスの色再現範囲に応じて色空間値に変換を行う色空間変換部である。
<Color matching process using color perception model>
FIG. 1 is a conceptual diagram illustrating the concept of color matching processing using a color perception model in the present embodiment. In FIG. 1,
RGBまたはCMYKの入力色信号は、変換LUT101により入力デバイスの色信号から入力観察条件におけるデバイスに依存しない色信号であるXYZ信号へ変換される。次に、XYZ信号は、色知覚モデル順変換部104および105により観察条件1(D50光源の白色点、照度レベル、周囲光の状態など)に基づいて人間の知覚信号JCHまたはQMHへ変換される。相対的カラーマッチングの場合はJCH空間が、絶対的カラーマッチングの場合はQMH空間がそれぞれ選択される。
The RGB or CMYK input color signal is converted by the
色知覚信号JCHおよびQMHは色空間変換部102または103により出力デバイスの色再現範囲内へ圧縮される。色空間圧縮された色知覚信号JCHおよびQMHは、色知覚モデル逆変換部106および107により、出力観察条件(D65光源の白色点、照度レベル、周囲光の状態など)に基づいて出力観察条件におけるデバイスに依存しない色信号であるXYZ信号へ変換される。そして、XYZ信号は変換LUT106により出力デバイスに依存する色信号へ変換される。
The color perception signals JCH and QMH are compressed by the color
以上の処理によって得られたRGBまたはCMYK信号は出力デバイスへ送られて、その色信号によって示される画像が出力される。出力結果であるプリント物あるいは画面表示は出力観察条件下で観察すれば、入力観察条件下で観察されるオリジナル原稿と、同じ色味に見える。 The RGB or CMYK signal obtained by the above processing is sent to an output device, and an image indicated by the color signal is output. When the printed matter or the screen display as an output result is observed under the output observation condition, it looks the same color as the original document observed under the input observation condition.
なお、一般に観察条件における環境光の白色点は、カラーターゲットやカラーパッチなどの色票を測色した際の標準光源の白色点とは異なる。例えば、測色の際に使用される標準光源はD50やD65であるが、実際に画像を観察する場合の環境光はライトブースのD50やD65とは限らず、白熱電球や蛍光灯などの照明光や、照明光と太陽光とが混合した光になる場合が多い。以下の説明では、簡単化のために、観察条件における環境光の光源特性をD50、D65およびD93とするが、実際にはメディア上の白色点のXYZ値を白色点として設定する。 In general, the white point of ambient light under viewing conditions is different from the white point of a standard light source when color charts such as color targets and color patches are measured. For example, standard light sources used for colorimetry are D50 and D65, but ambient light when actually observing an image is not limited to D50 or D65 of a light booth, and illumination such as an incandescent bulb or a fluorescent lamp In many cases, light or a mixture of illumination light and sunlight is used. In the following description, for simplification, the light source characteristics of the ambient light under the observation conditions are set to D50, D65, and D93, but actually, the XYZ value of the white point on the medium is set as the white point.
<機能構成>
図2は本発明の実施形態の一例であるカラーマッチングモジュールの機能構成を示すブロック図である。本図においては、図1と等価な構成は同一符号を用いている。
<Functional configuration>
FIG. 2 is a block diagram showing a functional configuration of a color matching module which is an example of an embodiment of the present invention. In this figure, the same reference numerals are used for components equivalent to those in FIG.
201は、変換LUT101を用いて、入力デバイスに依存する色信号(RGBやCMYK)をデバイスに依存しない色空間データ(XYZ)へ変換を行う入力変換部である。入力変換部201は、デバイス情報より測色値を取得し変換LUTを生成する機能、ならびに前記入力観察条件を色知覚モデル順変換部104(105)へ提供する機能を有する。デバイス情報は、デバイス色信号とデバイスに依存しない色空間データ(XYZ)の対応関係を示す情報である。
An
202は、変換LUT108を用いて、デバイスに依存しない色空間データ(XYZ)を出力デバイスに依存する色信号(RGBやCMYK)へ変換する出力変換部である。出力変換部202は、デバイス情報から変換LUTを生成する機能、出力観察条件を色知覚モデル逆変換部順変換部106(107)へ提供する機能、および出力デバイス色再現領域を色空間変換部102(103)へ提供する機能を有する。
An
なお、本実施例において、デバイスに応じた処理の切り替えや上記説明した機能以外の拡張機能などを提供することが可能となるように、入力変換部201、出力変換部202はプラグイン(デバイスプラグイン)で提供される。
In the present embodiment, the
また、色空間の圧縮方法(ICCのレンダリングインテントに相当)に応じた切り替え等に応ずる事が可能となるように、色空間変換部102(103)も色空間変換プラグインで提供される。 Further, the color space conversion unit 102 (103) is also provided as a color space conversion plug-in so as to be able to respond to switching or the like according to a color space compression method (corresponding to an ICC rendering intent).
デバイス情報203は、前記入力変換部201および出力変換部202に対して事前に測定したデバイス色信号とデバイスに依存しない色空間データ(XYZ)の対応関係ならびに観察条件を示す。
The
デバイス情報管理部204は、デバイス情報の格納場所の管理を行う。
The device
入出力・色空間変換管理部(プラグイン管理部)205は、デバイスプラグイン、色空間変換プラグインのバージョン、格納場所の管理を行う。 An input / output / color space conversion management unit (plug-in management unit) 205 manages device plug-ins, color space conversion plug-in versions, and storage locations.
デバイス・CAMキャッシュ管理部206は、「入力変換部201あるいは出力変換部202において生成された変換LUT101、108」、「色知覚モデル順変換部104(105)あるいは色知覚モデル逆変換部106(107)で生成されたCAMテーブル、CAM−1テーブルを管理する。さらに、デバイス・CAMキャッシュ管理部206は、変換LUT101、108の生成条件ならびCAMテーブル、CAM−1テーブルの生成条件を管理する。デバイス・CAMキャッシュ管理部で管理されているデータを使用することにより、各変換処理の作成処理を省略することができ、カラーマッチングの高速化を行うことが可能となる。
The device / CAM
なお、本実施例においては、CAMテーブル、CAM−1テーブルをデバイスプラグインならびにデバイス情報と関連付けている。CAMテーブル、CAM−1テーブルは、XYZとJCh空間の対応は観察条件(光源の白色点、照度レベル、周囲光の状態など)と対応していれば良いので、CAMテーブル、CAM−1テーブルを観察条件と関連付けて管理することも可能である。 In this embodiment, the CAM table and the CAM-1 table are associated with device plug-ins and device information. The CAM table and CAM-1 table need only correspond to the observation conditions (white point of light source, illuminance level, ambient light state, etc.) between XYZ and JCh space. It is also possible to manage by associating with observation conditions.
また、入力・出力デバイスプラグイン、入力・出力デバイス情報ならびに色空間変換プラグインの組み合わせに対応させてLUT(システムキャッシュ)を生成し格納する。 Further, an LUT (system cache) is generated and stored in association with a combination of input / output device plug-ins, input / output device information, and color space conversion plug-ins.
システムキャッシュ作成部207は、システムキャッシュの作成を行うである。
The system
システムキャッシュ管理部208は、システムキャッシュ作成部において作成されたシステムキャッシュの管理を行う。
The system
サンプル画209はシステムキャッシュの生成やプレビューに用いるために使用される。
The
入力結合処理部210は、システムキャッシュを用いてカラーマッチング処理を行う。
The input
履歴管理部211は、使用した入力デバイスプラグイン、出力デバイスプラグイン、入出力デバイス情報ならびに色空間変換プラグインの組み合わせをカラーマッチング履歴として管理する。
The
制御部212は、上記各構成の管理し、外部からのカラーマッチング指示を受け付け、カラーマッチング処理の実行を制御する。
The
インストール制御部213は、デバイス情報、デバイスプラグイン、色空間変換プラグインのインストールの制御を行う。
The
<装置の構成>
図3は図2に示される機能構成を実現する装置の構成例を示すブロック図である。図3に示すような装置は、例えばパーソナルコンピュータのような汎用のコンピュータ装置に、図2に示す機能を実現するソフトウェアを供給することによって実現することができる。その場合、本実施形態の機能を実現するソフトウェアは、コンピュータ装置のOS(基本システム)に含まれていても構わないし、OSとは別に例えば入出力デバイスのドライバソフトウェアに含まれていても構わない。
<Device configuration>
FIG. 3 is a block diagram illustrating a configuration example of an apparatus that implements the functional configuration illustrated in FIG. The apparatus shown in FIG. 3 can be realized by supplying software that implements the functions shown in FIG. 2 to a general-purpose computer apparatus such as a personal computer. In that case, the software for realizing the functions of the present embodiment may be included in the OS (basic system) of the computer apparatus, or may be included in the driver software of the input / output device, for example, separately from the OS. .
CPU301は、ROM302およびハードディスク(HD)307などに格納されたプログラムに従い、RAM303をワークメモリに利用して、装置全体の動作を制御する。さらにCPU301は、上述したカラーマッチングに関連する処理をはじめとする各種の処理を実行する。入力インタフェイス304は入力デバイス305を接続するためのインターフェースである。ハードディスクインタフェイス306はHD307を接続するためのインターフェースである。ビデオインタフェイス308はモニタ309を接続する。出力インタフェイス310は出力デバイス311を接続するためのインターフェースである。
The
なお、入力デバイスには、ディジタルスチルカメラおよびディジタルビデオカメラなどの撮影機器、並びに、イメージスキャナおよびフィルムスキャナなどイメージリーダをはじめとする各種の画像入力機器が含まれる。また、出力デバイスには、CRTやLCDなどのカラーモニタ、カラープリンタおよびフィルムレコーダなどの画像出力機器が含まれる。 The input device includes various image input devices such as an image reader such as an image reader such as an image scanner and a film scanner, and a photographing device such as a digital still camera and a digital video camera. The output device includes image output devices such as a color monitor such as a CRT or LCD, a color printer, and a film recorder.
また、インターフェースとして汎用のインターフェースが利用できる。その用途に応じて、例えば、RS232C、RS422、USBおよびIEEE1394などのシリアルインターフェース、並びに、SCSIおよびセントロニクスなどのパラレルインターフェースが利用可能である。 A general-purpose interface can be used as the interface. Depending on the application, serial interfaces such as RS232C, RS422, USB and IEEE1394, and parallel interfaces such as SCSI and Centronics can be used.
本実施例では、カラーマッチングを行うためのデバイス情報やプラグイン他のプログラムはHD307に格納されるが、ハードディスクに限らず、他の記憶媒体を用いても構わない。
In this embodiment, device information and plug-in and other programs for performing color matching are stored in the
<データ構成>
次に、図2に示されるカラーマッチング機能に関わる主要なデータ構成を、図4を用いて説明する。
<Data structure>
Next, main data structures related to the color matching function shown in FIG. 2 will be described with reference to FIG.
なお、図4で説明する以外の項目も各データに含まれていても構わない。 Items other than those described in FIG. 4 may be included in each data.
図4は、デバイス情報ならびにデバイスプラグイン、色空間変換プラグインの模式図である。 FIG. 4 is a schematic diagram of device information, device plug-ins, and color space conversion plug-ins.
401は、デバイス情報の模式図である。デバイス情報401は、変換LUT101、108を生成するためのデバイス信号とデバイスに依存しない色空間の対応データ、CAM変換テーブル、CAM−1テーブルを生成するための観察条件、適用可能なデバイスプラグインを特定するためのプラグインを一意に特定するプラグインID、プラグインを制御するためのパラメタなどを格納するプライベートデータ等により構成される。デバイスプラグインIDを構成項目格納とされる理由としては、デバイスプラグインは入出力デバイスに応じてプラグインが提供されるため、測定デバイスに応じたデバイスプラグインを選定する必要があるためである。
401 is a schematic diagram of device information. The
402は、デバイスプラグインの模式図である。デバイスプラグイン402は、本実施例に用いるプラグインを一意に特定するためのプラグインID、プラグイン名称、改定履歴を管理するためのバージョン情報、適用可能なデバイスを特定するための適用可能デバイス情報、変換処理等の入力変換部201、出力変換部202における機能を実行するプログラムから構成される。プラグインIDは例えばUUIDなどを用いる。またデバイス情報は、ディジタルカメラ、プリンタといった一般的なデバイス分類や特定の機種など適用範囲を指定することが可能である。
402 is a schematic diagram of a device plug-in. The device plug-in 402 is a plug-in ID for uniquely identifying a plug-in used in this embodiment, a plug-in name, version information for managing revision history, and an applicable device for identifying an applicable device. It consists of a program that executes functions in the
403は、色空間変換プラグインの模式図である。色空間変換プラグイン403は、本実施例に用いるプラグインを一意に特定するためのプラグインID、プラグイン名称、改定履歴を管理するためのバージョン情報、レンダリングインテントに相当する色空間変換方法ならびに色空間変換部102(103)における機能を実行するプログラムより構成される。プラグインIDは、デバイスプラグインと同様に、例えばUUIDなどを用いる。 403 is a schematic diagram of a color space conversion plug-in. A color space conversion plug-in 403 includes a plug-in ID for uniquely identifying a plug-in used in this embodiment, a plug-in name, version information for managing revision history, and a color space conversion method corresponding to a rendering intent. And a program for executing functions in the color space conversion unit 102 (103). As the plug-in ID, for example, a UUID is used as in the case of the device plug-in.
<デバイス情報>
図8、図9及び図28は、図2に示したデバイス情報204(デバイス情報401)の一例である。デバイス情報には重み付け設定データおよび標本点データが含まれる。
<Device information>
8, FIG. 9 and FIG. 28 are examples of the device information 204 (device information 401) shown in FIG. The device information includes weight setting data and sample point data.
図8における、「RATE=“GRAY”」は、後述する重み付け設定データ1111の一例である。
“RATE =“ GRAY ”” in FIG. 8 is an example of
図9における、「RATE_0_0_0=1」と「RATE_0_0_32=0」は、後述する重み付け設定データ1111の一例である。
“RATE_0_0_0 = 1” and “RATE_0_0_32 = 0” in FIG. 9 are examples of
図28における、「RATE=”DYNAMIC”」と「RATE_OPTION=”INC_JET_PRINTER”」と「RATE=“GRAY”」は、後述する重み付け設定データ1111の一例である。
In FIG. 28, “RATE =“ DYNAMIC ””, “RATE_OPTION =“ INC_JET_PRINTER ””, and “RATE =“ GRAY ”” are examples of
図8、図9及び図28における「DATA_START」と「DATA_END」で挟まれる部分は、デバイス色信号とデバイスに依存しない色空間データ(XYZ値)の対応値を示す標本点データ1110である。図8及び図9では、デバイス色信号としてRGB、デバイス依存しない色空間データとしてXYZを用いている。
The portion sandwiched between “DATA_START” and “DATA_END” in FIGS. 8, 9 and 28 is
なお、重み付け設定データ1111は、図8、9、28に示されるように標本点データと独立に管理されるのではなく、標本点データ列内で管理されても構わない。例えば、標本点データ列の最後に重み付け設定データを記述するようにしても構わない。
The
本実施例では、デバイス情報はテキスト形式で示されるが、XML形式など他の形式で示しても構わない。 In this embodiment, the device information is shown in a text format, but may be shown in other formats such as an XML format.
<入力変換部201の構成>
図5は、図2に示した入力変換部201の構成例を示すブロック図である。図27と図5の違いは、図5には重み付け最適化部1105があり図27にはないことであり、図5における色変換装置の説明を後述しているため、ここでは図27の説明は省略する。
<Configuration of
FIG. 5 is a block diagram illustrating a configuration example of the
本実施例では、変換部として、四面体補間を行う変換部(以下、変換部(四面体補間)と呼ぶ)およびスプライン補間を行う変換部(以下、変換部(スプライン補間))を有する例を用いて説明する。 In this embodiment, an example having a conversion unit that performs tetrahedral interpolation (hereinafter referred to as a conversion unit (tetrahedral interpolation)) and a conversion unit that performs spline interpolation (hereinafter referred to as conversion unit (spline interpolation)) as the conversion unit. It explains using.
まず、変換部で行われる四面体補間およびスプライン補間の処理について説明する。 First, tetrahedral interpolation and spline interpolation processing performed in the conversion unit will be described.
(四面体補間)
変換部(四面体補間)1102で使用する四面体補間は、初期化部1101によって標本点データ1110から作成されたルックアップテーブル(図10)を用いて、入力データ(RGB)を出力データ(L*a*b*)に変換する。
(Tetrahedral interpolation)
The tetrahedral interpolation used in the conversion unit (tetrahedral interpolation) 1102 uses the lookup table (FIG. 10) created from the
ルックアップテーブル(LUT)は、標本点データ(図14、図15)における「DATA_START」と「DATA_END」で挟まれた部分に記述されているデバイス色信号(RGB)とデバイスに依存しない色空間データ(XYZ)の対応値から作成される。具体的には、標本点データのXYZ値を所定式に基づきL*a*b*値に変換する。次に、LUTの格子点のRGB値に対応する標本点データから選択し、選択された標本点データのL*a*b*値を格納することにより、LUTは作成される。 The look-up table (LUT) is a device color signal (RGB) described in a portion between “DATA_START” and “DATA_END” in the sample point data (FIGS. 14 and 15) and color space data independent of the device. It is created from the corresponding value of (XYZ). Specifically, the XYZ values of the sample point data are converted into L * a * b * values based on a predetermined formula. Next, the LUT is created by selecting from the sample point data corresponding to the RGB values of the grid points of the LUT and storing the L * a * b * values of the selected sample point data.
例えば、L*a*b*変換後の標本点データが図7に示されるような場合は、図10に示されるような5*5*5の格子点を有するRGB→L*a*b*_LUTが作成される。 For example, when the sample point data after L * a * b * conversion is as shown in FIG. 7, RGB → L * a * b * having 5 * 5 * 5 grid points as shown in FIG. A _LUT is created.
変換部(四面体補間)1102は、入力データが含まれる四面体領域を構成する四頂点に対応する格子点データを用いて線形補間処理を行う。四面体領域は、図11に示されるように、隣接する八つの色で囲まれる六面体領域を、六つに分割したものである。本実施例では、R=G=Bの軸を基準に六面体領域を六つの四面体領域に分割している。したがって、本実施例の変換部(四面体補間)1102では、グレイを高精度に再現することができる。 A conversion unit (tetrahedral interpolation) 1102 performs linear interpolation processing using grid point data corresponding to the four vertices constituting the tetrahedral region including the input data. As shown in FIG. 11, the tetrahedral region is obtained by dividing a hexahedral region surrounded by eight adjacent colors into six. In this embodiment, the hexahedron region is divided into six tetrahedron regions based on the axis of R = G = B. Therefore, the conversion unit (tetrahedral interpolation) 1102 of this embodiment can reproduce gray with high accuracy.
(スプライン補間)
変換部(スプライン補間)1102で使用するスプライン補間について説明する。
(Spline interpolation)
The spline interpolation used in the conversion unit (spline interpolation) 1102 will be described.
本実施例のB−スプライン体は、次の区分的多項式を基底関数とする多重総和演算式で定義される。
λ=ΣiΣjΣkcλijkNri(rr)Ngj(gg)Nbk(bb)
a=ΣiΣjΣkcaijkNri(rr)Ngj(gg)Nbk(bb)
b=ΣiΣjΣkcbijkNri(rr)Ngj(gg)Nbk(bb)
ここで、rr、gg、bbはRGB値
λ、a、bはL*a*b*値
NrはR軸方向での基底関数
NgはG軸方向での基底関数
NbはB軸方向での基底関数
cλijk、caijk、cbijkは係数
Nr、Ng、Nbに付属するサフィクスi、j、kはそれぞれの軸に対する
基底における基底関数番号
変換部(スプライン補間)は、多重総和演算式を用いて、入力データ(RGB)を出力データ(L*a*b*)に変換する。
The B-spline body of the present embodiment is defined by a multiple sum operation formula having the following piecewise polynomial as a basis function.
λ = ΣiΣjΣkcλijkNri (rr) Ngj (gg) Nbk (bb)
a = ΣiΣjΣkcaijkNri (rr) Ngj (gg) Nbk (bb)
b = ΣiΣjΣkcbijkNri (rr) Ngj (gg) Nbk (bb)
Here, rr, gg and bb are RGB values λ, a and b are L * a * b * values Nr is a basis function in the R-axis direction Ng is a basis function in the G-axis direction Nb is a basis in the B-axis direction The functions cλijk, caijk, cbijk are the suffixes i, j, k attached to the coefficients Nr, Ng, Nb are the basis function numbers in the bases for the respective axes. (RGB) is converted into output data (L * a * b *).
本実施例のスプライン補間によれば、図15の模式図に示すように、RGB値に対するL*a*b*値の変化を滑らかに表現することができる。なお、図15はスプライン補間の算出結果をL*a*b*空間における分布として表現したものである。図15に示す軸以外の線は、RGB値の何れか一つが変化した際のL*a*b*値の変化の軌跡を表す。 According to the spline interpolation of the present embodiment, as shown in the schematic diagram of FIG. 15, changes in L * a * b * values with respect to RGB values can be expressed smoothly. FIG. 15 represents the calculation result of spline interpolation as a distribution in the L * a * b * space. A line other than the axis shown in FIG. 15 represents a locus of change in the L * a * b * value when any one of the RGB values changes.
図13に、初期化部1101で行われるB−スプライン体の係数および基底関数の算出処理を説明するフローチャートを示す。標本データとして図7を用いた場合を説明する。
FIG. 13 is a flowchart for explaining the calculation processing of the coefficient and basis function of the B-spline body performed by the
まず、標本点データからRGB値とL*a*b*値との対応関係を取得する(S1801)。以後、RGB値とL*a*b*値の対応データを、i番目の編集色のRGB値をrri、ggi、bbi、L*a*b*値をλi、ai、biと説明する。 First, the correspondence between RGB values and L * a * b * values is acquired from the sample point data (S1801). Hereinafter, the correspondence data between the RGB value and the L * a * b * value will be described, and the RGB value of the i-th edit color will be described as ri, ggi, bbi, and the L * a * b * value as λi, ai, bi.
標本点データにおいて、R値とG値が0のときのB値の並びをB値のステップと呼ぶ。図7におけるB値のステップは(0、64、128、192、255)であり、B値はステップ値以外はとらない。同様に、R値、G値のステップも同じステップ(0、64、128、192、255)である。 In the sample point data, the arrangement of the B values when the R value and the G value are 0 is called a B value step. The step of the B value in FIG. 7 is (0, 64, 128, 192, 255), and the B value does not take a value other than the step value. Similarly, the R value and G value steps are the same step (0, 64, 128, 192, 255).
次に、図7に示される標本点データから、R/G/B値のステップに基づいて基底関数を算出し、記憶する(S1802)。基底関数の算出には、一般的なDeBoor−Coxのアルゴリズムを用いる。R/G/B値のステップが同一であり、基底関数Nr、Ng、Nbが何れも三位のB−スプライン基底である場合は、何れの基底関数も図14に示すようなξ0〜ξ3の四節点の基底関数になる。なお、図14はR軸の基底関数Nrを示している。以下、基底関数は何れも三位のB−スプライン基底であるとして説明する。 Next, a basis function is calculated from the sample point data shown in FIG. 7 based on the R / G / B value step and stored (S1802). A general DeBoor-Cox algorithm is used to calculate the basis function. When the steps of the R / G / B value are the same and the basis functions Nr, Ng, and Nb are all B-spline bases of the third rank, all the basis functions are expressed by ξ0 to ξ3 as shown in FIG. It becomes a four-node basis function. FIG. 14 shows the R-axis basis function Nr. In the following description, it is assumed that each basis function is a third-order B-spline basis.
次に、算出した基底関数と、RGB値とL*a*b*値との対応関係とを用いて、LU分解によって、行列方程式f=MCをλ*成分、a*成分、b*成分それぞれについて解くことにより、各係数を算出する。 Next, using the calculated basis function and the correspondence relationship between the RGB value and the L * a * b * value, the matrix equation f = MC is converted into the λ * component, the a * component, and the b * component by LU decomposition. Each coefficient is calculated by solving for.
以下、上記方程式による係数算出について詳しく説明する。 Hereinafter, the coefficient calculation by the above equation will be described in detail.
まず、行列Mのs行t列成分mstを次のように算出する。
mst=Nri(rrs)Ngj(ggs)Nbk(bbs)
ここで、t=25(i−1)+5(j−1)+k
i、j、kは1から5までの整数
なお、tとi、j、kの関係は、節点数と基底関数の位数によって変化する。例えば三位B−スプライン基底であり、六節点である場合はt=49(i−1)+7(j−1)+kという関係になる。
First, the s-row t-column component mst of the matrix M is calculated as follows.
mst = Nri (rrs) Ngj (ggs) Nbk (bbs)
Here, t = 25 (i−1) +5 (j−1) + k
i, j, and k are integers from 1 to 5. Note that the relationship between t, i, j, and k varies depending on the number of nodes and the order of basis functions. For example, in the case of a three-position B-spline basis and six nodes, the relationship is t = 49 (i−1) +7 (j−1) + k.
次に、係数cλijk、caijk、cbijkそれぞれの算出について説明する。 Next, calculation of each of the coefficients cλijk, caijk, cbijk will be described.
まず、係数cλijkを算出するために、次の行列方程式をLU分解を用いて解く。
fλ=[λ1,λ2,…,λ125]
cλ=[cλ111,cλ112,…,cλ115,cλ121,…,cλ155,cλ211,…,cλ554,cλ555]
fλ=M・cλ
First, in order to calculate the coefficient cλijk, the following matrix equation is solved using LU decomposition.
fλ = [λ1, λ2,..., λ125]
cλ = [cλ111, cλ112, ..., cλ115, cλ121, ..., cλ155, cλ211, ..., cλ554, cλ555]
fλ = M · cλ
次に、係数caijkを算出するために、次の行列方程式をLU分解を用いて解く。
fa=[a1,a2,…,a125]
ca=[ca111,ca112,…,ca115,ca121,…,ca155,ca211,…,ca554,ca555]
fa=M・ca …(4)
Next, in order to calculate the coefficient caijk, the following matrix equation is solved using LU decomposition.
fa = [a1, a2,..., a125]
ca = [ca111, ca112, ..., ca115, ca121, ..., ca155, ca211, ..., ca554, ca555]
fa = M · ca (4)
次に、係数cbijkを算出するために、次の行列方程式をLU分解を用いて解く。
fb=[b1,b2,…,b125]
cb=[cb111,cb112,…,cb115,cb121,…,cb155,cb211,…,cb554,cb555]
fb=M・cb …(5)
そして、算出した係数を記憶する(S1804)。
Next, in order to calculate the coefficient cbijk, the following matrix equation is solved using LU decomposition.
fb = [b1, b2,..., b125]
cb = [cb111, cb112, ..., cb115, cb121, ..., cb155, cb211, ..., cb554, cb555]
fb = M · cb (5)
Then, the calculated coefficient is stored (S1804).
以上で算出されたB−スプライン体を用いることで、図15に示すように、RGB値に対するL*a*b値の変化を滑らかに表現することができる。なお、図15はB−スプライン体の算出結果をL*a*b*空間における分布として表現したもので、図15に示す軸以外の線は、RGB値の何れか一つが変化した際のL*a*b*値の軌跡を表す。 By using the B-spline body calculated as described above, the change in the L * a * b value with respect to the RGB value can be smoothly expressed as shown in FIG. FIG. 15 represents the calculation result of the B-spline body as a distribution in the L * a * b * space. A line other than the axis shown in FIG. 15 indicates the L when any one of the RGB values changes. * Represents a locus of a * b * values.
上記実施例では、R/G/B値のステップが同一の(0、64、128、192、255)の場合を説明したが、異なっていてもかまわない。例えば、R値とG値のステップの数は5でステップが(0、64、128、192、255)の場合に、B値のステップの数は9でステップが(0、32、64、96、128、144、192、224、255)であってもかまわない。 In the above embodiment, the case where the steps of the R / G / B value are the same (0, 64, 128, 192, 255) has been described, but they may be different. For example, if the number of R and G value steps is 5 and the number of steps is (0, 64, 128, 192, 255), the number of B value steps is 9 and the number of steps is (0, 32, 64, 96). 128, 144, 192, 224, 255).
<Solid表現における、B−Spline基底関数の他の区分多項式での置き換え>
上記実施例では、Solid表現における基底関数としてB−Spline を用いて説明した。しかしながら、基底関数としてはRational B−Spline、Non Uniform Rational B−Spline、Bezier、Rational Bezier等、あらゆる区分的関数を用いることが出来る。
<Replacement of B-Spline basis function with other piecewise polynomials in Solid representation>
In the said Example, it demonstrated using B-Spline as a basis function in Solid expression. However, any piecewise function such as Rational B-Spline, Non Uniform Rational B-Spline, Bezier, or Rational Bezier can be used as the basis function.
<Solid表現における各基底の節点数>
上記実施例では、各基底の節点数が同一であるとして説明した。しかしながら容易に推測できるように、基底毎に節点数を変更することも可能である。
<Number of nodes of each base in Solid representation>
In the embodiment described above, the number of nodes on each base is the same. However, the number of nodes can be changed for each base so that it can be easily guessed.
<推定する色の次元数>
前記実施例では、いずれもRGB三次元よりL*a*b*三次元を算出していた。しかしながら、推定する色の次元数になんら拘束は無い。
<Number of dimensionality to estimate>
In the above-described embodiments, L * a * b * 3D is calculated from RGB 3D. However, there are no restrictions on the estimated number of color dimensions.
<Solid表現の拡張>
前記実施例では、推定元の色空間としてRGB三次元によるSolid表現を用いてきた。しかしながら、この推定元の色空間の次元数になんら拘束は無い。
<Extension of Solid expression>
In the above-described embodiment, Solid representation by RGB three-dimensional has been used as the estimation source color space. However, there is no restriction on the number of dimensions of the color space of the estimation source.
以下、図5および図6を用いて、入力変換部201の構成および処理手順を説明する。
Hereinafter, the configuration and processing procedure of the
ステップS2001では、初期化部1101が変換部初期化データ1116と重み付け部初期化データ1117を作成し、変換部1102および重み付け部1103を初期化する。
In step S2001, the
初期化部1101は、デバイス情報から標本点データ1110および重み付け設定データ1111を取得する。そして、初期化部101は、変換部(四面体補間)のための変換部初期化データ1116と、変換部(スプライン補間)のための変換部初期化データ1116を作成する。
The
変換部(四面体補間)のための変換部初期化データ(四面体補間)は、図10に示されるルックアップテーブルである。変換部(スプライン補間)のための変換部初期化データ(スプライン補間)は、図13の処理によって求められるB−スプライン体の計数値である。 The conversion unit initialization data (tetrahedral interpolation) for the conversion unit (tetrahedral interpolation) is a lookup table shown in FIG. The conversion unit initialization data (spline interpolation) for the conversion unit (spline interpolation) is a count value of the B-spline body obtained by the processing of FIG.
さらに、初期化部1101は、重み付け部初期化データ1117を作成する。
Further, the
重み付け部初期化データ1117の1例を、図12に示す。図12における、RGB_R、RGB_G、RGB_Bは、デバイス色信号であるRGB値のR値、G値、B値のそれぞれに相当する。RATE1は変換部(四面体補間)の重みデータである。RATE2は変換部(スプライン補間)の重みデータである。RATEは0以上、1以下の数が設定され、RATE1とRATE2の合計が1になるように設定されている。
An example of the weighting
ここで、重み付け部初期化データ1117におけるRATEの値は以下のように算出される。
Here, the RATE value in the weighting
デバイス情報において、重み付け設定データ1111が、図8のように「RATE=“GRAY”」として記述されている場合は、以下のように重み付け部初期化データを作成する。R,G,Bの各値が同じ値つまりグレーの標本点に対しては、「RATE1=1、RATE2=0」を設定する。そして、R,G,Bの各値が同じ値でない標本点に対しては、「RATE1=0、RATE2=1」を設定する。図8の例によれば、グレイという特定の条件を満たす標本点に対して、簡単に重み付けデータを設定することができる。
In the device information, when the
一方、重み付け設定データ1111が、デバイス情報において、図9のように指定されたRGB値に対して記述されている場合は、以下のように重み付け部初期化データを作成する。図9のように、指定されたRGBに対して重み付け設定データが記載されている場合は、デバイス情報にて指定されていないRGBに対する重み付けデータとして「RATE1=0.5、RATE2=0.5」を設定する。
On the other hand, when the
デバイス情報に記述されているRATE情報を抽出する。そして、RATE情報にて指定されたRGB値のRATE1の値を、RATE情報にて指定された値に設定する。例えば、「RATE_0_0_0=1」を抽出した場合は、R=0、G=0、B=0の標本点に対して、「RATE1=1、RATE2=0」を設定する。「RATE_0_0_32=0」を抽出した場合、R=0、G=0、B=32の標本点に対して、「RATE1=0、RATE2=1」を設定する。図9の例によれば、各標本点に対して個別に重み付けデータを設定することができる。この場合、特にグレーだけではなくて、任意の標本点に対して四面体補間の割合を設定することが可能となり柔軟性が向上する。例えば、図12に示されるように各標本点における重み付けデータを設定することができる。 RATE information described in the device information is extracted. Then, the RATE1 value of the RGB value designated by the RATE information is set to the value designated by the RATE information. For example, when “RATE — 0 — 0 — 0 = 1” is extracted, “RATE1 = 1, RATE2 = 0” is set for the sample points of R = 0, G = 0, and B = 0. When “RATE_0_0_32 = 0” is extracted, “RATE1 = 0, RATE2 = 1” is set for the sample points of R = 0, G = 0, and B = 32. According to the example of FIG. 9, weighting data can be set individually for each sample point. In this case, the ratio of tetrahedral interpolation can be set not only for gray but also for arbitrary sample points, and flexibility is improved. For example, weighting data at each sample point can be set as shown in FIG.
さらに、重み付け設定データ1111が、デバイス情報において、図28のように「RATE=”DYNAMIC”」として記述されている場合は、次のように設定する。RGB色空間上で隣接しているまたはその近傍にある標本点同士のL*a*b*色空間上での幾何学的な関係を用いて、重み付け部初期化データ1117を作成する。
Further, when the
以下、図22、23、24、25、26を用いて、図28のように「RATE=”DYNAMIC”」として記述されている場合における、重み付け最適化部1105での処理手順を説明する。
Hereinafter, the processing procedure in the
ステップS2201では、重み付け最適化部1105が、標本点データ1110を元に幾何学的な関係(図23、24、25)を算出する。図23、24、25の「○印」は標本点であり、L*a*b*色空間上に標本点をプロットした図である。点線、二重線、実線はRGB色空間上で隣接する標本点を結ぶ線であり、隣接している関係を表す。点線は、RGB色空間上で、R軸方向に隣接する関係であることを表す。二重線は、RGB色空間上で、G軸方向に隣接する関係であることを表す。実線は、RGB色空間上で、B軸方向に隣接する関係であることを表す。標本点同士のL*a*b*色空間上での幾何学的な関係の1つとして、図24の角度θbがあげられる。点線は標本点C、B2を通る直線であり、角度θbはその点線と標本点C、B1を結ぶ直線との角度である。その他の幾何学的な関係としては、例えば、図25の標本点C、R2、B2、BR2、G2、RG2、GB2、RGB2の8点を結ぶ六面体の体積や、六面体を対角線で結ぶ標本点同士の距離や隣接する標本点同士の距離などがある。また、この六面体は、図11と同様に六つの四面体領域に分割できるが、その四面体領域の体積なども幾何学的な関係である。これらの幾何学的な関係はデバイスの性質を表す指標となり、この指標に基づいてデバイスの性質を判断し最適な補間方法の重み設定することで、エリア毎に異なる最適な補間の割合を設定することが可能となる。例えば、図24の角度θbが大きい場合は非線形性が強く、0に近ければ線形性が強い。また、四面体領域や六面体領域の体積が小さい場合や、隣接する標本点の距離が0に近い場合などは、デバイスの性質を高精度に近似する非線形補間の効果は小さいと判断できる。逆に大きいと、非線形補間の効果が大きいと判断することも可能となる。
In step S2201, the
ステップS2202では、重み付け最適化部1105が、ステップS2201において算出した幾何学的な関係を元に重み付け部初期化データ1117を算出する。図24の角度θbはB軸方向の標本点同士のなす角度であり、標本点Cに属する幾何学的な関係の1つである。同様にR軸方向、G軸方向の標本点同士の角度θr、θgも、標本点Cに属する幾何学的な関係である。この時、標本点Cにおける重み付け部初期化データ1117を算出方法の一例を、図26を用いて説明する。ステップS2601では、標本点Cに属する幾何学的な関係である角度θr、θg、θbの最大値θmaxを算出する。ステップS2602では、最大値θmax<10度であるかを判定し、真であるならば、ステップS2603に進み、偽であるならば、ステップS2604に進む。RATE1は変換部(四面体補間)の重みデータであり、RATE2は変換部(スプライン補間)の重みデータである。ステップS2603では、標本点Cにおける重み付け部初期化データ1117の値を「RATE1=0.9、RATE2=0.1」に設定する。ステップS2604では、最大値θmax<50度であるかを判定し、真であるならば、ステップS2605に進み、偽であるならば、ステップS2606に進む。ステップS2605では、標本点Cにおける重み付け部初期化データ1117の値を「RATE1=0.5、RATE2=0.5」に設定する。ステップS2606では、標本点Cにおける重み付け部初期化データ1117の値を「RATE1=0.1、RATE2=0.9」に設定する。
In step S2202, the
つまり、最大値θmaxが大きいときはデバイスの性質として非線形性が強いと判断し、変換部(スプライン補間)の重みRATE2を高くする。逆に、最大値θmaxが小さいときはデバイスの性質として線形性が強いと判断し、変換部(四面体補間)の重みRATE1を高くする。標本点Cが色域境界の場合は、色域の内側に隣接する標本点の重みや近傍の標本点に設定した重みを元に設定してもよいし、その他の方法を用いて設定してもよい。 That is, when the maximum value θmax is large, it is determined that nonlinearity is strong as a property of the device, and the weight RATE2 of the conversion unit (spline interpolation) is increased. On the contrary, when the maximum value θmax is small, it is determined that the linearity is strong as the property of the device, and the weight RATE1 of the conversion unit (tetrahedral interpolation) is increased. When the sample point C is a color gamut boundary, the sample point C may be set based on the weight of the sample point adjacent to the inside of the color gamut or the weight set to a nearby sample point, or may be set using other methods. Also good.
標本点Cに属する幾何学的な関係の1つである、標本点Cの近傍の四面体領域の体積に着目した場合の標本点Cにおける重み付け部初期化データ1117を算出方法の一例を、図30を用いて説明する。ステップS2901では、標本点Cに隣接する最大24個の四面体領域で最も体積が大きい四面体領域の体積である最大値Vmaxを算出する。ステップS2902では、最大値Vmax<100(L*a*b*色空間上での体積)であるかを判定し、真であるならば、ステップS2903に進み、偽であるならば、ステップS2904に進む。ステップS2903では、標本点Cにおける重み付け部初期化データ1117の値を「RATE1=0.9、RATE2=0.1」に設定する。ステップS2604では、最大値Vmax<500であるかを判定し、真であるならば、ステップS2905に進み、偽であるならば、ステップS2906に進む。ステップS2905では、標本点Cにおける重み付け部初期化データ1117の値を「RATE1=0.5、RATE2=0.5」に設定する。ステップS2906では、標本点Cにおける重み付け部初期化データ1117の値を「RATE1=0.1、RATE2=0.9」に設定する。
An example of a method for calculating the weighted
つまり、最大値Vmaxが大きいときはデバイスの性質として非線形性が強い可能性が高いと判断し、変換部(スプライン補間)の重みRATE2を高くする。逆に、最大値Vmaxが小さいときはデバイスの性質として線形性が強い可能性が高いと判断し、変換部(四面体補間)の重みRATE1を高くする。 That is, when the maximum value Vmax is large, it is determined that there is a high possibility that nonlinearity is strong as a device property, and the weight RATE2 of the conversion unit (spline interpolation) is increased. On the contrary, when the maximum value Vmax is small, it is determined that there is a high possibility of strong linearity as a device property, and the weight RATE1 of the conversion unit (tetrahedral interpolation) is increased.
他の実施の形態として、ステップS2602、ステップS2604、またはステップS2902、ステップS2904の条件を他の幾何学的な関係をパラメタに使用してもよい。また、条件分岐もステップS2602、ステップS2604、またはステップS2902、ステップS2904の2つ以外にあってもよいし、1つに減らしてもよい。ステップS2603、ステップS2605、ステップS2606、またはステップS2903、ステップS2905、ステップS2906で設定する割合は別の値でもかまわない。なお、標本点、角度、距離、体積などを引数にとり重み付け初期化データ1117を計算するような計算式になっていてもよい。
As another embodiment, the conditions of step S2602, step S2604, or step S2902, and step S2904 may be used with other geometric relationships as parameters. In addition, the conditional branch may be other than the two steps S2602, S2604, S2902, and S2904, or may be reduced to one. The ratio set in step S2603, step S2605, step S2606, or step S2903, step S2905, or step S2906 may be another value. The calculation formula may be such that the
また、ステップS2601、ステップS2901では、最大値を算出したが、平均値でも合計でも、その他の値でも、それらを組み合わせてもかまわない。 In steps S2601 and S2901, the maximum value is calculated. However, an average value, a sum, other values may be combined.
例えば、図26と図30を組み合わせてもよい。また、標本点Cの近傍にある六面体領域の体積や、標本点Cと隣接する標本点との距離などの他の幾何学的な関係をパラメタしてもよいし、それら複数の幾何学的な関係を組み合わせてもよい。 For example, FIG. 26 and FIG. 30 may be combined. Further, other geometric relationships such as the volume of the hexahedron region in the vicinity of the sample point C, the distance between the sample point C and the adjacent sample point, etc. may be parameterized. You may combine relationships.
また、他の実施の形態では、色域のエリア毎にパラメタを独自に設定することで、エリアに固有の性質を反映することが可能となる。例えば、色相境界近傍のエリアでは、変換部(四面体補間)の重みが高めに算出されるようにパラメタを設定する。 In another embodiment, by setting a parameter for each color gamut area uniquely, it is possible to reflect the characteristics specific to the area. For example, in the area near the hue boundary, the parameter is set so that the weight of the conversion unit (tetrahedral interpolation) is calculated higher.
図28のように、「RATE_OPTION=”INC_JET_PRINTER”」が「RATE=”GRAY”」と同時に記述されて場合には、次のように設定する。図26のフローチャートに沿って求める重み付け部初期化データ1117によらずに、R,G,Bの各値が同じ値つまりグレーの標本点に対しては、「RATE1=1、RATE2=0」を設定する。そして、R,G,Bの各値が同じ値でない標本点に対しては、「RATE1=0、RATE2=1」を設定する。
As shown in FIG. 28, when “RATE_OPTION =“ INC_JET_PRINTER ”” is described simultaneously with “RATE =“ GRAY ””, the following setting is made. Regardless of the weighting
図28のように「RATE_OPTION=”INC_JET_PRINTER”」が記述されている場合には、デバイスの基本特性がインクジェットプリンターであることを示している。よって、インクジェットプリンターの性質にあうような特別に設定するパラメタを使い、重み付け部初期化データ1117を算出する。このとき、図28のように「RATE=”DYNAMIC”」と同時に記述されている場合には、ステップS2602、ステップS2604に記載の10度や50度といった値をインクジェットプリンターのデバイスの性質に適切な値に変えるといったことが可能になる。
When “RATE_OPTION =“ INC_JET_PRINTER ”” is described as shown in FIG. 28, it indicates that the basic characteristic of the device is an ink jet printer. Therefore, the weighting
ここまでは、重み付け最適化部1105が初期化部1101内にある場合を説明してきたが、別の実施の形態では、図5にあるように初期下部1101とは独立に構成される。この場合は、ステップS2202では、重み付け最適化部1105が、ステップS2201において算出した幾何学的な関係を元に重み付け部初期化データ1117を算出するかわりに次のように重み付けデータを作成する。図9のような、指定されたRGBに対して重み付け設定データを記載している重み付け設定データ1111を作成する。
Up to this point, the case where the
ステップS2002では、各変換部1102が入力データを変換するとともに、重み付け部1103が入力データに対応する重み付けデータを計算する。
In step S2002, each
変換部(四面体補間)1102および変換部(スプライン補間)1102のそれぞれが、入力データ1112を変換する。そして、L*a*b*で示される変換データ(四面体補間)1113およびL*a*b*で示される変換データ(スプライン補間)を生成する。
Each of the conversion unit (tetrahedral interpolation) 1102 and the conversion unit (spline interpolation) 1102 converts the
重み付け部1103は、入力データ1112に対応する重み付けデータ1114を算出する。
The
重み付け部1103は、重み付け部初期化データ1117のデータを使用して内部にルックアップテーブル(LUT)を作成する。例えば図12に示す重み付け部初期化データ1117を用いた場合、RGB値に対してRATE_1およびRATE_2を対応付けるLUTを作成する。そして、この作成されたLUTを用いた線形補間(例えば、四面体補間)により、入力データに対する重み付けデータ1114(RATE1およびRATE2)を作成する。
The
ステップS2003では、変換データ(四面体補間)および変換データ(スプライン補間)を混合し、出力データを算出する。 混合部1104は、変換データ(四面体補間)および変換データ(スプライン補間)を、重み付けデータ(RATE1、RATE2)を用いて、以下のように、混合することにより出力データ1115を算出する。
出力データ=RATE1*変換データ(四面体補間)+RATE2*変換データ(スプライン補間)
そして、出力データ(L*a*b*)を所定の演算式を用いてXYZに変換し、出力する。
In step S2003, the conversion data (tetrahedral interpolation) and the conversion data (spline interpolation) are mixed to calculate output data. The
Output data = RATE1 * conversion data (tetrahedral interpolation) + RATE2 * conversion data (spline interpolation)
Then, the output data (L * a * b *) is converted into XYZ using a predetermined arithmetic expression and output.
各変換部は異なる特徴を有している。本実施例によれば、入力データの色領域に適した特徴を有する変換部の重みを大きくすることができる。つまり、特定の色領域に適した色再現を実現することができる。そして、重みデータも重み付け部1103において補間処理されるので、重みデータも隣接の重みデータに基づき徐々に変化する。したがって、色領域全体において色の連続性を保つことができる。
Each conversion unit has different characteristics. According to this embodiment, it is possible to increase the weight of the conversion unit having characteristics suitable for the color area of the input data. That is, color reproduction suitable for a specific color region can be realized. Since the weight data is also interpolated by the
例えば、本実施例では、変換部において四面体補間を用いる変換部と、スプライン補間を用いる変換部とを有している。本実施例の四面体補間は、線形補間を用いるとともにグレー軸を基準として六つの四面体領域に分割しているので、グレーの再現性およびグレーの階調性にすぐれている。これに対して、スプライン補間は非線形補間であり、図15に示されるように入力値に対する出力値の変化を滑らかに表現することができ、デバイスの性質を高精度に近似することができる。しかし、グレー軸に関しては、非線形補間を使用すると、軸をゆがんで補間してしまうことがありグレーの再現を低下させてしまう場合がある。 For example, in this embodiment, the conversion unit includes a conversion unit using tetrahedral interpolation and a conversion unit using spline interpolation. The tetrahedron interpolation of this embodiment uses linear interpolation and is divided into six tetrahedron regions on the basis of the gray axis, which is excellent in gray reproducibility and gray gradation. On the other hand, spline interpolation is non-linear interpolation, and as shown in FIG. 15, the change of the output value with respect to the input value can be expressed smoothly, and the characteristics of the device can be approximated with high accuracy. However, with respect to the gray axis, if nonlinear interpolation is used, the axis may be distorted and interpolation may occur, which may reduce gray reproduction.
よって、重み付け設定データを図8のように設定することにより、グレー軸付近は変換データ(四面体補間)の割合が1になり、グレー軸からはなれると変換データ(スプライン補間)の割合を大きくすることが実現できる。これにより、グレー軸付近での出力データ1115は、変換データ(四面体補間)の値に近くなり、グレー軸から離れるにつれて出力データは変換データ(スプライン補間)の値に近くすることができる。
Therefore, by setting the weighting setting data as shown in FIG. 8, the ratio of the conversion data (tetrahedral interpolation) becomes 1 near the gray axis, and the ratio of the conversion data (spline interpolation) increases when it is separated from the gray axis. Can be realized. Thus, the
スプライン補間は非線形補間であり、一般的なデバイスの性質をよく近似して補間することが可能である。グレー軸に関しては、非線形補間を使用すると、軸をゆがんで補間してしまうことがある。図8によれば、グレー近辺を四面体補間とすることにより、グレーの色再現性を向上することが可能になる。なお、重み付けデータは補間により求めているので、色空間の中で重み付けは連続的に変わるため、出力データも連続的に変化し、階調性を保つことが可能となっている。 Spline interpolation is non-linear interpolation, and can be performed by approximating general device characteristics. For the gray axis, if nonlinear interpolation is used, the axis may be distorted and interpolated. According to FIG. 8, it is possible to improve gray color reproducibility by using tetrahedral interpolation in the vicinity of gray. Since the weighting data is obtained by interpolation, the weighting is continuously changed in the color space, so that the output data is also continuously changed to maintain the gradation.
よって、線形補間によりグレー軸の色再現性を向上させ、非線形補間により色空間全域にわたる色再現性の向上させることを、階調性を保ちながら実現することができる。 Therefore, it is possible to improve the color reproducibility of the gray axis by linear interpolation and improve the color reproducibility over the entire color space by nonlinear interpolation while maintaining the gradation.
また、標本点同士の幾何学的な関係を元にデバイスの性質を判断することにより、次のことを実現することができる。デバイスの非線形性が強いと判断したときには、その性質をよく近似して補間することが可能な非線形補間の重みを高くすることができ。そして、デバイスの線形性が強いときには、非線形補間によりゆがんで補間するリスクを減少させるために線形補間の重みを高くすることができる。 Further, the following can be realized by judging the properties of the device based on the geometric relationship between the sample points. When it is determined that the nonlinearity of the device is strong, the weight of nonlinear interpolation that can be interpolated by approximating the property can be increased. When the linearity of the device is strong, the weight of linear interpolation can be increased in order to reduce the risk of distorted interpolation by nonlinear interpolation.
それにより、デバイス毎に最適な重みデータを算出することが可能となり、線形性が強いエリアでも非線形性が強いエリアでもデバイスによらずに色再現性を向上させることが可能になる。 As a result, it is possible to calculate optimum weight data for each device, and it is possible to improve color reproducibility regardless of the device in an area where the linearity is strong or an area where the nonlinearity is strong.
<出力変換部202の構成>
出力変換部202は、入力変換部201と同様な処理を行う。出力変換部202において、入力変換部201と異なる点は、出力変換部202ではデバイス情報203を用いて、デバイスに依存しない色空間データをデバイス色信号に変換することである。これに基づき、初期化部1101において変換部初期化データを作成する処理が異なる。
<Configuration of
The
本実施例における特徴の1つである、重み付け部初期化データ1117の作成方法、変換部1102、重み付け部1103、混合部1104における処理は、入力変換部202と同様である。
The creation method of the weighting
(変形例)
上記実施例では、デバイスに依存しない色空間データとして、L*a*bを使用したが、L*u*vや、XYZ、Jabなど他の色空間を使用しても構わない。
(Modification)
In the above embodiment, L * a * b is used as the color space data independent of the device, but other color spaces such as L * u * v, XYZ, and Jab may be used.
上記実施例では、重み付け部初期化データとして図12のようなデータを作成した。しかしながら、重み付け部初期化データとして、図16のような他のようなデータ形式を使用してもかまわない。図16の重み付け部初期化データにおけるRATEは変換部(四面体補間)に対するRATEのみを記載している。上記実施例では、RATE1とRATE2の合計を1としているので、RATE1からRATE2を簡単に算出することができる。 In the above embodiment, data as shown in FIG. 12 is created as the weighting unit initialization data. However, other data formats as shown in FIG. 16 may be used as the weighting unit initialization data. RATE in the weighting unit initialization data in FIG. 16 describes only RATE for the conversion unit (tetrahedral interpolation). In the above embodiment, since the sum of RATE1 and RATE2 is 1, RATE2 can be easily calculated from RATE1.
さらに、図16の例では、格子点に対応するRGBに対応するL*a*b*も格納されているので、図16のデータは、変換部初期化データ(四面体補間)と重み付け部初期化データを兼ねることができる。 Further, in the example of FIG. 16, L * a * b * corresponding to RGB corresponding to the grid points is also stored, so that the data of FIG. 16 includes conversion unit initialization data (tetrahedral interpolation) and weighting unit initials. Can also be used as data.
また、上記実施例では、2つの変換部を用いた場合の実施例を説明した。しかしながら、N個(N>2)の変換部を使用しても構わない。この場合の重み付け部初期化データの1例を、図17に示す。RATE_1、RATE_2、RATE_3はRATEと同じ意味であり、以下RATE_*と記す。RATE_*は変換部1102が2種類以上の場合に使用する。図ではRATE_3までであるが、変換部1102の数に応じて増やすことが可能である。また、該当するデバイス色信号における各RATE_*に設定する値の合計を1になるように設定する。例えば、変換部1102が3種類の場合は、該当するデバイス色信号におけるRATE_1からRATE_3の合計が1になるように設定する。このとき、RATE_3の項目を作成せずにRATE_1とRATE_2の項目だけ作成し、RATE_3に相当する値は、1からRATE_1とRATE_2に設定する値を引いた値を使用することも可能である。
In the above-described embodiment, the embodiment in which two conversion units are used has been described. However, N (N> 2) conversion units may be used. An example of the weighting unit initialization data in this case is shown in FIG. RATE_1, RATE_2, and RATE_3 have the same meaning as RATE, and are hereinafter referred to as RATE_ *. RATE_ * is used when there are two or
また、重み付け部初期化データのデバイス色信号であるRGB値の間隔と、変換部初期化データのデバイス色信号であるRGB値の間隔とを異ならせることも可能である。このように重み付け部初期化データの標本点と変換部初期化データの標本点を独立に定義することで、より柔軟な設定が可能である。 It is also possible to make the interval of the RGB values that are the device color signals of the weighting unit initialization data different from the interval of the RGB values that are the device color signals of the conversion unit initialization data. As described above, by defining the sample points of the weighting unit initialization data and the sample points of the conversion unit initialization data independently, a more flexible setting is possible.
また、重み付け部初期化データとして、図18に示すデータを使用しても構わない。図18に示す変換部初期化データは、2種類の変換部を使用する場合の例である。そして、図18に示す変換部初期化データは、RATE_1_L,RATE_1_A,RATE_1_Bを用いて、L,a,b独立に重み付けを設定することができる。これにより、例えば、グレー部分のa値、b値を四面体補間で行い、L値をスプライン補間にすることができる。これによれば、色相をぶれずにかつなめらかにL値を変化させることができ、よりグレーの再現性を向上させることが可能となる。 Further, the data shown in FIG. 18 may be used as the weighting unit initialization data. The conversion unit initialization data shown in FIG. 18 is an example when two types of conversion units are used. The conversion unit initialization data shown in FIG. 18 can set weights independently for L, a, and b using RATE_1_L, RATE_1_A, and RATE_1_B. Thereby, for example, the a value and b value of the gray portion can be performed by tetrahedral interpolation, and the L value can be spline interpolation. According to this, the L value can be changed smoothly and smoothly without changing the hue, and the gray reproducibility can be further improved.
また、変換部(四面体補間)と変換部(スプライン補間)とにおいて、標本点データを異ならせても良い。 In addition, the sample point data may be different between the conversion unit (tetrahedral interpolation) and the conversion unit (spline interpolation).
ステップS2001において、図19に示すような標本点データ1116を使用して、変換部(四面体補間)1102を初期化する。また、図20に示すような標本点データ1116を使用して、変換部(スプライン補間)1102を初期化する。そして、図12に示される重み付け部初期化データを使用して、重み付け部を初期化する。
In step S2001, the conversion unit (tetrahedral interpolation) 1102 is initialized using the
図19に示す標本点データはデバイス色信号であるR値が0から64、G値が0から64、B値が0から255の範囲のみ定義している。図12における重み付け部初期化データ1117のRATE_1は、変換部(スプライン補間)1102の割り合いであり、RATE_2は、変換部(四面体補間)1102の割り合いである。R値が0から64、G値が0から64、B値が0から255の範囲以外および境界部分はRATE_1には0が設定されており、それ以外はRATE_1に0より大きい値が設定されている。つまり上記範囲内では、変換部(スプライン補間)1102の割合が高い。しかも上記範囲外の標本点の間隔はRGB値で32であるが、上記範囲内の標本点の間隔はRGB値で16であり、細かく設定されている。
The sample point data shown in FIG. 19 defines only the device color signal ranges of R values from 0 to 64, G values from 0 to 64, and B values from 0 to 255. RATE_1 of the weighting
例えば、上記範囲内の線形性が特に低い場合に、本実施の形態のように、その部分だけ非線形補間を行い、その他は線形補間で高速に処理することで、変換精度を向上することができる。 For example, when the linearity within the above-mentioned range is particularly low, the conversion accuracy can be improved by performing non-linear interpolation only on that portion and performing other high-speed processing with linear interpolation as in this embodiment. .
また、例えば、上記範囲を四面体補間で行う場合でも、上記範囲内の標本点が細かいため変換精度を向上することが可能である。このとき、全体的に標本点を細かくするより、精度がよくない範囲を限定して標本点を細かくすることにより、色変換精度の向上、および色変換速度の低下を最小限に抑えることが、階調性を保ちつつも可能となっている。 For example, even when the range is performed by tetrahedral interpolation, the conversion accuracy can be improved because the sample points in the range are fine. At this time, rather than making the sample points finer overall, by limiting the range of inaccurate accuracy and making the sample points finer, it is possible to minimize color conversion speed improvement and color conversion speed reduction. This is possible while maintaining gradation.
また、変換部で使用する補間のアルゴリズムは、他の8点補間や体心立方格子を用いた補間、プリズム補間など他の方法を使用しても構わない。 As the interpolation algorithm used in the conversion unit, other methods such as other eight-point interpolation, interpolation using a body-centered cubic lattice, prism interpolation may be used.
カラーマネージメントを実現する技術の一例として、ICC(International Color Consortium)により定められた、ICCカラープロファイルに基づきカラーマネージメントを行うシステム(Color Management System:CMS)が存在する。このシステムでは、カラーマッチングを行う為のデバイスインディペンデントなハブ色空間あるいはPCS(Profile Connection Space)を定義する。そして、デバイス色空間からハブ色空間/PCSへの色変換を規定するソース側プロファイル、ならびにハブ色空間/PCSからデバイス色空間への色変換を規定するディスティネーション側プロファイルを用いてカラーマネージメントを実現する。処理系は、ソース側プロファイルにより入力された画像の入力側デバイスに適合したデバイス色空間での色信号値をハブ色空間/PCSでの色信号値に変換した後、さらにディスティネーション側プロファイルにより、出力側デバイスに適合したデバイス色空間での色信号に変換する、という2つの大きな変換処理より構成される。上記変換処理にも本発明が適用可能なのはいうまでもない。 As an example of a technique for realizing color management, there is a system (Color Management System: CMS) that performs color management based on an ICC color profile defined by ICC (International Color Consortium). In this system, a device-independent hub color space or PCS (Profile Connection Space) for color matching is defined. Color management is realized using the source side profile that defines the color conversion from the device color space to the hub color space / PCS, and the destination side profile that defines the color conversion from the hub color space / PCS to the device color space. To do. The processing system converts the color signal value in the device color space suitable for the input side device of the image input by the source side profile into the color signal value in the hub color space / PCS, and then further by the destination side profile, It consists of two large conversion processes of converting into a color signal in a device color space suitable for the output side device. Needless to say, the present invention can also be applied to the conversion processing.
また、PCSを介さないような、例えば、モニタ−プリンタの色空間での直接の色変換にも本発明は適用可能である。 The present invention is also applicable to direct color conversion in the color space of a monitor-printer without going through the PCS, for example.
以上、説明したように本実施例によれば、標本点データを元に標本点同士の幾何学的な関係を算出することにより、色空間上のエリア毎に異なるデバイスの性質を判定して該当するエリアに最適な各補間方法の割合を算出することが可能となる。その結果、異なる性質をもつデバイスに対しても、該当するデバイスに最適な各補間方法の割合を算出することが可能となり、デバイスの性質によらず自動的に色域全域にわたり色再現性が向上するという効果がえられ、本発明を達することとなる。 As described above, according to this embodiment, by calculating the geometric relationship between sample points based on the sample point data, it is possible to determine different device properties for each area in the color space and It is possible to calculate the ratio of each interpolation method optimal for the area to be performed. As a result, even for devices with different properties, it is possible to calculate the ratio of each interpolation method that is optimal for the corresponding device, and color reproducibility is automatically improved over the entire color gamut regardless of the device properties. Thus, the present invention is achieved.
なお、本発明を適用する計算機は、パーソナルコンピュータ、携帯電話を含む携帯端末、画像形成装置など、その形態を問わないのは言うまでもない。 Needless to say, the computer to which the present invention is applied may be in any form such as a personal computer, a portable terminal including a cellular phone, an image forming apparatus, and the like.
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Furthermore, after the program code read from the storage medium is written to the memory provided in the function expansion board inserted into the computer or the function expansion unit connected to the computer, the function is based on the instruction of the program code. It goes without saying that the CPU of the expansion board or function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
Claims (14)
前記色変換手段の重み付けを設定する重み付け手段と、
前記色変換手段の重み付けを最適化する重み付け最適化手段と、
前記重み付け手段により算出された重み付けを用いて、前記複数の色変換手段によって得られた複数の色変換結果を混合する混合手段とを有することを特徴とする色変換装置。 A plurality of color conversion means for performing color conversion using a conversion table using different interpolation algorithms;
Weighting means for setting weights of the color conversion means;
Weight optimization means for optimizing the weight of the color conversion means;
A color conversion apparatus comprising: a mixing unit that mixes a plurality of color conversion results obtained by the plurality of color conversion units using the weight calculated by the weighting unit.
前記初期化手段は、前記複数の色変換手段を初期化する際に、前記色変換手段毎に同じ初期化データを用いて初期化することを特徴とする請求項1記載の色変換装置。 Furthermore, it has initialization means for initializing a plurality of color conversion means,
2. The color conversion apparatus according to claim 1, wherein the initialization means initializes the plurality of color conversion means using the same initialization data for each of the color conversion means.
前記初期化手段は、前記色変換手段毎に異なる初期化データによって初期化することを特徴とする請求項1記載の色変換装置。 Furthermore, it has initialization means for initializing a plurality of color conversion means,
2. The color conversion apparatus according to claim 1, wherein the initialization unit performs initialization using different initialization data for each color conversion unit.
前記重み付け初期化手段は、前記重み付け手段に対し、任意の格子点間隔の格子点上に重み付けを定義することを特徴とする請求項1記載の色変換装置。 Furthermore, it has weighting initialization means for initializing the weighting means,
The color conversion apparatus according to claim 1, wherein the weighting initialization unit defines weighting on grid points at arbitrary grid point intervals with respect to the weighting unit.
前記重み付け手段は、グレー部分は線形補間を補間アルゴリズムとする前記色変換手段の重み付けを高くし、グレー以外の部分は非線形補間を補間アルゴリズムとする前記色変換手段の重み付けを高くすることを特徴とする請求項1記載の色変換装置。 The interpolation algorithms in the plurality of color conversion means are linear interpolation and nonlinear interpolation,
The weighting means increases the weight of the color conversion means that uses linear interpolation as an interpolation algorithm for the gray part, and increases the weight of the color conversion means that uses nonlinear interpolation as the interpolation algorithm for parts other than gray. The color conversion device according to claim 1.
前記色変換工程の重み付けを設定する重み付け工程と、
前記色変換手段の重み付けを最適化する重み付け最適化工程と、
前記重み付け工程により算出された重み付けを用いて、前記色変換工程によって得られた複数の色変換結果を混合するする混合工程とを有することを特徴とする色変換方法。 A plurality of color conversion steps for performing color conversion using a conversion table using different interpolation algorithms;
A weighting step for setting a weight for the color conversion step;
A weight optimization step of optimizing the weight of the color conversion means;
And a mixing step of mixing a plurality of color conversion results obtained by the color conversion step using the weights calculated in the weighting step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007110538A JP4999527B2 (en) | 2007-04-19 | 2007-04-19 | Color conversion apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007110538A JP4999527B2 (en) | 2007-04-19 | 2007-04-19 | Color conversion apparatus and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008271103A true JP2008271103A (en) | 2008-11-06 |
JP4999527B2 JP4999527B2 (en) | 2012-08-15 |
Family
ID=40050037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007110538A Expired - Fee Related JP4999527B2 (en) | 2007-04-19 | 2007-04-19 | Color conversion apparatus and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4999527B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104660861A (en) * | 2013-11-19 | 2015-05-27 | 柯尼卡美能达株式会社 | Profile Creation Method, Non-Transitory Computer Readable Recording Medium Stored With Profile Creation Program, And Profile Creating Apparatus |
WO2022151320A1 (en) * | 2021-01-15 | 2022-07-21 | 深圳市大疆创新科技有限公司 | Image processing method and apparatus, and computer-readable storage medium |
CN116033133A (en) * | 2021-10-22 | 2023-04-28 | 广州视源电子科技股份有限公司 | Color correction method, storage medium and related device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08307684A (en) * | 1995-04-28 | 1996-11-22 | Ricoh Co Ltd | Color conversion device |
JPH09247486A (en) * | 1996-02-29 | 1997-09-19 | Xerox Corp | Method for generating mixed lookup table |
JPH11112793A (en) * | 1997-09-30 | 1999-04-23 | Fuji Photo Film Co Ltd | Method and system for reproducing image and storage medium to use for its method |
JP2004179819A (en) * | 2002-11-26 | 2004-06-24 | Fuji Xerox Co Ltd | Color conversion processing apparatus, color conversion processing program, and color conversion processing method |
-
2007
- 2007-04-19 JP JP2007110538A patent/JP4999527B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08307684A (en) * | 1995-04-28 | 1996-11-22 | Ricoh Co Ltd | Color conversion device |
JPH09247486A (en) * | 1996-02-29 | 1997-09-19 | Xerox Corp | Method for generating mixed lookup table |
JPH11112793A (en) * | 1997-09-30 | 1999-04-23 | Fuji Photo Film Co Ltd | Method and system for reproducing image and storage medium to use for its method |
JP2004179819A (en) * | 2002-11-26 | 2004-06-24 | Fuji Xerox Co Ltd | Color conversion processing apparatus, color conversion processing program, and color conversion processing method |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104660861A (en) * | 2013-11-19 | 2015-05-27 | 柯尼卡美能达株式会社 | Profile Creation Method, Non-Transitory Computer Readable Recording Medium Stored With Profile Creation Program, And Profile Creating Apparatus |
JP2015100041A (en) * | 2013-11-19 | 2015-05-28 | コニカミノルタ株式会社 | Profile creation method, profile creation program, recording medium, and profile creation device |
CN104660861B (en) * | 2013-11-19 | 2017-11-17 | 柯尼卡美能达株式会社 | Profile preparation method and profile producing device |
WO2022151320A1 (en) * | 2021-01-15 | 2022-07-21 | 深圳市大疆创新科技有限公司 | Image processing method and apparatus, and computer-readable storage medium |
CN116033133A (en) * | 2021-10-22 | 2023-04-28 | 广州视源电子科技股份有限公司 | Color correction method, storage medium and related device |
Also Published As
Publication number | Publication date |
---|---|
JP4999527B2 (en) | 2012-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4645662B2 (en) | Color conversion table creation program, interpolation calculation program, color conversion table creation method, interpolation calculation method, color conversion device, and printing device | |
JP4845127B2 (en) | Image processing device | |
US8379267B2 (en) | Method to retrieve a gamut mapping strategy | |
JP4594185B2 (en) | Color processing method and apparatus | |
US8204304B2 (en) | Color gamut mapping by forming curved cross-sectional surfaces | |
JPH11341296A (en) | Color area conversion method and color area converter | |
JP4565642B2 (en) | Image processing method and image processing apparatus | |
JP4263131B2 (en) | Color conversion method and image processing apparatus | |
JP4081944B2 (en) | Color separation image correction method, chart, ink jet printer, color separation image correction device, and recording medium | |
US8111430B2 (en) | Color conversion apparatus and method | |
JP2003110864A (en) | Method and device for processing color image | |
KR100834766B1 (en) | Color management apparatus and method for the same | |
JP2003219193A (en) | Color image processing method and color image processor | |
JP2006211093A (en) | Color correction apparatus, color correction method, program, and recording medium | |
JP4999527B2 (en) | Color conversion apparatus and method | |
JP2002152530A (en) | Color collection processing method and device thereof | |
JP4298730B2 (en) | Color conversion apparatus and method | |
JP2007312313A (en) | Image processor, image processing method and program | |
JP2007151055A6 (en) | Image processing apparatus, image processing method, and image processing program | |
JP2007151055A (en) | Image processing equipment, image processing method, and image processing program | |
JP6794818B2 (en) | Color conversion profile generation method, color conversion profile generation device, and color conversion profile generation program | |
JP2003143425A (en) | Image processing device | |
JP2007243422A (en) | Color transformation definition data making device and method, and image output apparatus | |
JP4159912B2 (en) | Color conversion method with hue correction using multiple lookup tables and interpolation | |
JP2009296139A (en) | Image processor, image processing method and computer program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100201 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100414 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20100630 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110930 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111011 |
|
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: 20120417 |
|
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: 20120515 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4999527 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150525 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |