JP2008271103A - Color conversion apparatus and method - Google Patents

Color conversion apparatus and method Download PDF

Info

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
Application number
JP2007110538A
Other languages
Japanese (ja)
Other versions
JP4999527B2 (en
Inventor
Yoichi Kodama
洋一 兒玉
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 JP2007110538A priority Critical patent/JP4999527B2/en
Publication of JP2008271103A publication Critical patent/JP2008271103A/en
Application granted granted Critical
Publication of JP4999527B2 publication Critical patent/JP4999527B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To automatically increase color reproducibility without depending on a device even in an area with strong linearity or an area with strong non-linearity by noting the property of the device, especially the geometrical relation of adjacent or neighboring sample points when determining the mixture rate of color conversion results in different algorithms. <P>SOLUTION: A color conversion apparatus includes a plurality of color conversion means configured to perform color conversion using a conversion table with the use of different algorithms, a weighting means configured to set weighting applied to the plurality of color conversion means, an weighting optimizing means configured to optimize the weighting of the color conversion means, and a mixing means configured to mix the plurality of color conversion results obtained by the plurality of color conversion means using the weighting calculated by the weighting means. <P>COPYRIGHT: (C)2009,JPO&INPIT

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 input profile 101. Colors outside the color reproduction range of the output device cannot be reproduced by the output device. Therefore, color space compression is performed to map the converted XYZ data within the color reproduction range of the output device. The data subjected to color space compression is converted from a device-independent color space to CMYK data in a color space depending on the output device.

カラーマッチングにおいて基準白色点および環境光は固定されている。例えば、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 Patent Document 1.

このカラーマネージメントシステムによれば、スキャナ−プリンタシステムあるいはモニタ−プリンタシステムなど幅広く柔軟に対応できる。例えばデスクトップ・パブリッシング(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 Patent Document 2, for example, one or more specific unit solids including important colors such as skin color and sky blue can be set, and the color conversion accuracy of important colors can be improved. Further, by setting a plurality of specific unit solids including achromatic colors, gray color reproducibility can be improved.

また、入力色成分が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 Patent Document 2, discontinuity occurs at the boundary surface between the specific unit solid and the specific unit solid, which may adversely affect the gradation. When the RGB value of the input value is a 256-level digital signal (for example, an integer value of 0 to 255), the input value takes a discrete value called an integer value, and thus discontinuity at the boundary surface may be a problem. There is little nature. However, when the input value is a floating point, there is a high possibility that the discontinuity at the boundary surface will affect the gradation.

特定単位立体と特定単位立体外の補間方法が異なる場合、特に線形補間と非線形補間のように大きく性質が異なる場合、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 Patent Document 3 is effective when the input color space and the output color space are the same type. However, in the case of color estimation in the device dependent color and the PCS space, for example, in the case of color estimation from the RGB space to the Lab space, the input color space and the output color space are different. Therefore, there is a problem that it cannot be applied well.

これらの問題を解決するための、本出願人は、特願2006−214528号において、図27にあるような構成の色変換装置を提案している。図27にある色変換装置によれば、色推定アルゴリズムとして、デバイスの特性を良く近似できる非線形補間を使用し、かつグレー付近などの線形性が高い部分のみに線形補間を使用する。よって、非線形補間だけを使用した場合における補間結果のグレー軸のゆがみの問題を解消することができる。さらに、非線形補間により色空間全域にわたる色再現性の向上、および線形補間によりグレー軸の色再現性を向上させることを、階調性を保ちながら実現することができる。また、色空間上で部分的に格子点間隔を細かく設定したり、補間方法をかえたりすることで、全体的なパフォーマンスと階調性は保ちつつ、肌色や空色など色空間上で任意に指定する領域の色再現性を向上させることができる。
特開2002−281338号公報 特開平10−136216号公報 特開平10−261684号公報
In order to solve these problems, the present applicant has proposed a color conversion device having a configuration as shown in FIG. 27 in Japanese Patent Application No. 2006-214528. According to the color conversion apparatus shown in FIG. 27, as the color estimation algorithm, non-linear interpolation that can closely approximate the characteristics of the device is used, and linear interpolation is used only for a portion with high linearity such as near gray. Therefore, the problem of distortion of the gray axis of the interpolation result when only nonlinear interpolation is used can be solved. Furthermore, improvement in color reproducibility over the entire color space by non-linear interpolation and improvement in gray axis color reproducibility by linear interpolation can be realized while maintaining gradation. In addition, by setting the grid point interval finely in the color space or changing the interpolation method, the overall performance and gradation can be maintained, and any color space or sky blue can be specified. The color reproducibility of the area to be improved can be improved.
JP 2002-281338 A Japanese Patent Laid-Open No. 10-136216 Japanese Patent Laid-Open No. 10-261684

図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 primary color 2901 represents a yellow primary color at a certain lightness. A magenta primary color 2902 represents the primary color of magenta at a certain lightness. A cyan primary color 2903 represents a cyan primary color at a certain lightness. An achromatic color (gray) 2904 represents an achromatic color (gray) at a certain lightness. A solid line from the achromatic color (gray) 2904 to each primary color is an equi-hue line. The yellow equi-hue line has higher linearity than the other lines, the magenta equi-hue line has medium linearity, and the cyan equi-hue line has the strongest nonlinearity. In addition, there is a characteristic that nonlinearity increases as the saturation increases depending on the hue. Although not shown, the degree of non-linearity and the area on the color gamut where non-linearity appears strongly differ depending on the device.

しかし、特願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, reference numeral 101 denotes a conversion matrix or conversion look-up table (LUT) for converting a color signal depending on an input device into device-independent color space data based on a white point criterion of ambient light on the input side. . Reference numerals 104 and 105 denote color perception model forward conversion units that perform conversion into human perceptual signals JCH or QMH based on input observation conditions (D50 light source white point, illuminance level, ambient light state, etc.). 106 and 107 are color perception models for converting human perception signals JCH or QMH into XYZ signals that are device-independent color signals based on output observation conditions (white point of D65 light source, illumination level, ambient light state, etc.). It is an inverse conversion unit. Reference numeral 108 denotes a conversion matrix or conversion look-up table (LUT) for converting device-independent color space data based on the white point criterion of ambient light on the output side into color signals depending on the output device. Reference numerals 102 and 103 denote color space conversion units that convert input color space values into color space values according to the color reproduction range of the output device.

RGBまたはCMYKの入力色信号は、変換LUT101により入力デバイスの色信号から入力観察条件におけるデバイスに依存しない色信号であるXYZ信号へ変換される。次に、XYZ信号は、色知覚モデル順変換部104および105により観察条件1(D50光源の白色点、照度レベル、周囲光の状態など)に基づいて人間の知覚信号JCHまたはQMHへ変換される。相対的カラーマッチングの場合はJCH空間が、絶対的カラーマッチングの場合はQMH空間がそれぞれ選択される。   The RGB or CMYK input color signal is converted by the conversion LUT 101 from an input device color signal to an XYZ signal that is a device independent color signal under the input observation conditions. Next, the XYZ signal is converted into the human perception signal JCH or QMH by the color perception model forward conversion units 104 and 105 based on the observation condition 1 (white point of D50 light source, illuminance level, ambient light state, etc.). . In the case of relative color matching, the JCH space is selected, and in the case of absolute color matching, the QMH space is selected.

色知覚信号JCHおよびQMHは色空間変換部102または103により出力デバイスの色再現範囲内へ圧縮される。色空間圧縮された色知覚信号JCHおよびQMHは、色知覚モデル逆変換部106および107により、出力観察条件(D65光源の白色点、照度レベル、周囲光の状態など)に基づいて出力観察条件におけるデバイスに依存しない色信号であるXYZ信号へ変換される。そして、XYZ信号は変換LUT106により出力デバイスに依存する色信号へ変換される。   The color perception signals JCH and QMH are compressed by the color space conversion unit 102 or 103 into the color reproduction range of the output device. The color space-compressed color perception signals JCH and QMH are output by the color perception model inverse transform units 106 and 107 based on the output observation conditions (such as the white point of the D65 light source, the illuminance level, and the ambient light state). It is converted into an XYZ signal which is a color signal independent of the device. The XYZ signal is converted into a color signal depending on the output device by the conversion LUT 106.

以上の処理によって得られた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 input conversion unit 201 converts a color signal (RGB or CMYK) depending on an input device into color space data (XYZ) independent of a device using the conversion LUT 101. The input conversion unit 201 has a function of acquiring a colorimetric value from device information and generating a conversion LUT, and a function of providing the input observation condition to the color perception model order conversion unit 104 (105). The device information is information indicating a correspondence relationship between the device color signal and the device-independent color space data (XYZ).

202は、変換LUT108を用いて、デバイスに依存しない色空間データ(XYZ)を出力デバイスに依存する色信号(RGBやCMYK)へ変換する出力変換部である。出力変換部202は、デバイス情報から変換LUTを生成する機能、出力観察条件を色知覚モデル逆変換部順変換部106(107)へ提供する機能、および出力デバイス色再現領域を色空間変換部102(103)へ提供する機能を有する。   An output conversion unit 202 converts the device-independent color space data (XYZ) into color signals (RGB or CMYK) depending on the output device using the conversion LUT 108. The output conversion unit 202 has a function of generating a conversion LUT from device information, a function of providing output observation conditions to the color perception model inverse conversion unit forward conversion unit 106 (107), and an output device color reproduction region as a color space conversion unit 102. (103).

なお、本実施例において、デバイスに応じた処理の切り替えや上記説明した機能以外の拡張機能などを提供することが可能となるように、入力変換部201、出力変換部202はプラグイン(デバイスプラグイン)で提供される。   In the present embodiment, the input conversion unit 201 and the output conversion unit 202 are plug-ins (device plugs) so that it is possible to provide processing switching according to the device and an extended function other than the functions described above. In).

また、色空間の圧縮方法(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 device information 203 indicates the correspondence between the device color signal measured in advance for the input conversion unit 201 and the output conversion unit 202 and the color space data (XYZ) independent of the device, and the observation conditions.

デバイス情報管理部204は、デバイス情報の格納場所の管理を行う。   The device information management unit 204 manages the storage location of device information.

入出力・色空間変換管理部(プラグイン管理部)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 cache management unit 206 includes “the conversion LUTs 101 and 108 generated by the input conversion unit 201 or the output conversion unit 202”, “the color perception model forward conversion unit 104 (105) or the color perception model reverse conversion unit 106 (107). Further, the device / CAM cache management unit 206 manages the generation conditions of the conversion LUTs 101 and 108 and the generation conditions of the CAM table and the CAM-1 table. By using the data managed by the CAM cache management unit, the creation process of each conversion process can be omitted, and the speed of color matching can be increased.

なお、本実施例においては、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 cache creation unit 207 creates a system cache.

システムキャッシュ管理部208は、システムキャッシュ作成部において作成されたシステムキャッシュの管理を行う。   The system cache management unit 208 manages the system cache created by the system cache creation unit.

サンプル画209はシステムキャッシュの生成やプレビューに用いるために使用される。   The sample image 209 is used for generating a system cache and previewing.

入力結合処理部210は、システムキャッシュを用いてカラーマッチング処理を行う。   The input combination processing unit 210 performs color matching processing using the system cache.

履歴管理部211は、使用した入力デバイスプラグイン、出力デバイスプラグイン、入出力デバイス情報ならびに色空間変換プラグインの組み合わせをカラーマッチング履歴として管理する。   The history management unit 211 manages a combination of used input device plug-ins, output device plug-ins, input / output device information, and color space conversion plug-ins as a color matching history.

制御部212は、上記各構成の管理し、外部からのカラーマッチング指示を受け付け、カラーマッチング処理の実行を制御する。   The control unit 212 manages each of the above components, receives an external color matching instruction, and controls the execution of the color matching process.

インストール制御部213は、デバイス情報、デバイスプラグイン、色空間変換プラグインのインストールの制御を行う。   The installation control unit 213 controls installation of device information, device plug-ins, and color space conversion plug-ins.

<装置の構成>
図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 CPU 301 controls the operation of the entire apparatus by using the RAM 303 as a work memory in accordance with programs stored in the ROM 302, the hard disk (HD) 307, and the like. Further, the CPU 301 executes various processes including the process related to the color matching described above. The input interface 304 is an interface for connecting the input device 305. The hard disk interface 306 is an interface for connecting the HD 307. A video interface 308 connects a monitor 309. The output interface 310 is an interface for connecting the output device 311.

なお、入力デバイスには、ディジタルスチルカメラおよびディジタルビデオカメラなどの撮影機器、並びに、イメージスキャナおよびフィルムスキャナなどイメージリーダをはじめとする各種の画像入力機器が含まれる。また、出力デバイスには、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 HD 307. However, the present invention is not limited to a hard disk, and other storage media may be used.

<データ構成>
次に、図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 device information 401 includes device signals for generating the conversion LUTs 101 and 108, data corresponding to the device-independent color space, CAM conversion table, viewing conditions for generating the CAM-1 table, and applicable device plug-ins. It is composed of a plug-in ID that uniquely specifies a plug-in for specifying, private data that stores parameters for controlling the plug-in, and the like. The reason why the device plug-in ID is stored as a configuration item is that the device plug-in is provided according to the input / output device, and therefore, it is necessary to select the device plug-in according to the measurement device. .

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 input conversion unit 201 and the output conversion unit 202 such as information and conversion processing. For example, UUID is used as the plug-in ID. The device information can specify a general device classification such as a digital camera or a printer, or an application range such as a specific model.

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 weight setting data 1111 described later.

図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 weight setting data 1111 described later.

図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 weight setting data 1111 described later.

図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 sample point data 1110 indicating the corresponding values of the device color signal and the color space data (XYZ value) independent of the device. 8 and 9, RGB is used as the device color signal, and XYZ is used as the device-independent color space data.

なお、重み付け設定データ1111は、図8、9、28に示されるように標本点データと独立に管理されるのではなく、標本点データ列内で管理されても構わない。例えば、標本点データ列の最後に重み付け設定データを記述するようにしても構わない。   The weight setting data 1111 is not managed independently of the sample point data as shown in FIGS. 8, 9, and 28, but may be managed in the sample point data string. For example, the weight setting data may be described at the end of the sample point data string.

本実施例では、デバイス情報はテキスト形式で示されるが、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 Input Conversion Unit 201>
FIG. 5 is a block diagram illustrating a configuration example of the input conversion unit 201 illustrated in FIG. The difference between FIG. 27 and FIG. 5 is that FIG. 5 has a weighting optimization unit 1105 and is not shown in FIG. 27. Since the description of the color conversion apparatus in FIG. Is omitted.

本実施例では、変換部として、四面体補間を行う変換部(以下、変換部(四面体補間)と呼ぶ)およびスプライン補間を行う変換部(以下、変換部(スプライン補間))を有する例を用いて説明する。   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 sample point data 1110 by the initialization unit 1101 to convert the input data (RGB) into the output data (L * A * b *).

ルックアップテーブル(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 initialization unit 1101. A case where FIG. 7 is used as sample data will be described.

まず、標本点データから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 input conversion unit 201 will be described with reference to FIGS. 5 and 6.

ステップS2001では、初期化部1101が変換部初期化データ1116と重み付け部初期化データ1117を作成し、変換部1102および重み付け部1103を初期化する。   In step S2001, the initialization unit 1101 creates conversion unit initialization data 1116 and weighting unit initialization data 1117, and initializes the conversion unit 1102 and the weighting unit 1103.

初期化部1101は、デバイス情報から標本点データ1110および重み付け設定データ1111を取得する。そして、初期化部101は、変換部(四面体補間)のための変換部初期化データ1116と、変換部(スプライン補間)のための変換部初期化データ1116を作成する。   The initialization unit 1101 acquires sample point data 1110 and weight setting data 1111 from the device information. Then, the initialization unit 101 creates conversion unit initialization data 1116 for the conversion unit (tetrahedral interpolation) and conversion unit initialization data 1116 for the conversion unit (spline interpolation).

変換部(四面体補間)のための変換部初期化データ(四面体補間)は、図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 initialization unit 1101 creates weighting unit initialization data 1117.

重み付け部初期化データ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 unit initialization data 1117 is shown in FIG. In FIG. 12, RGB_R, RGB_G, and RGB_B correspond to the R value, the G value, and the B value of the RGB values that are device color signals. RATE1 is weight data of the conversion unit (tetrahedral interpolation). RATE2 is weight data of the conversion unit (spline interpolation). RATE is set to a number between 0 and 1, and the sum of RATE1 and RATE2 is set to 1.

ここで、重み付け部初期化データ1117におけるRATEの値は以下のように算出される。   Here, the RATE value in the weighting unit initialization data 1117 is calculated as follows.

デバイス情報において、重み付け設定データ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 weight setting data 1111 is described as “RATE =“ GRAY ”” as shown in FIG. 8, the weighting unit initialization data is created as follows. “RATE1 = 1, RATE2 = 0” is set for the same values of R, G, and B, that is, gray sample points. Then, “RATE1 = 0, RATE2 = 1” is set for sample points whose R, G, and B values are not the same. According to the example of FIG. 8, weighting data can be easily set for a sample point that satisfies a specific condition of gray.

一方、重み付け設定データ1111が、デバイス情報において、図9のように指定されたRGB値に対して記述されている場合は、以下のように重み付け部初期化データを作成する。図9のように、指定されたRGBに対して重み付け設定データが記載されている場合は、デバイス情報にて指定されていないRGBに対する重み付けデータとして「RATE1=0.5、RATE2=0.5」を設定する。   On the other hand, when the weight setting data 1111 is described in the device information with respect to the RGB values designated as shown in FIG. 9, the weighting unit initialization data is created as follows. As shown in FIG. 9, when the weight setting data is described for the designated RGB, “RATE1 = 0.5, RATE2 = 0.5” is given as the weighting data for RGB not designated in the device information. Set.

デバイス情報に記述されている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 weight setting data 1111 is described as “RATE =“ DYNAMIC ”” as shown in FIG. 28 in the device information, the setting is performed as follows. The weighting unit initialization data 1117 is created by using the geometrical relationship on the L * a * b * color space between the sample points that are adjacent in the RGB color space or in the vicinity thereof.

以下、図22、23、24、25、26を用いて、図28のように「RATE=”DYNAMIC”」として記述されている場合における、重み付け最適化部1105での処理手順を説明する。   Hereinafter, the processing procedure in the weight optimization unit 1105 in the case where “RATE =“ DYNAMIC ”” is described as shown in FIG. 28 will be described using FIGS. 22, 23, 24, 25, and 26.

ステップ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 weight optimization unit 1105 calculates a geometric relationship (FIGS. 23, 24, and 25) based on the sample point data 1110. 23, 24 and 25 are sample points, which are plots of sample points on the L * a * b * color space. The dotted line, the double line, and the solid line are lines that connect adjacent sample points in the RGB color space, and indicate the adjacent relationship. A dotted line indicates that the relationship is adjacent in the R-axis direction on the RGB color space. A double line represents a relationship adjacent to each other in the G-axis direction on the RGB color space. A solid line indicates that the relationship is adjacent in the B-axis direction on the RGB color space. One example of the geometric relationship between the sample points in the L * a * b * color space is the angle θb in FIG. The dotted line is a straight line passing through the sample points C and B2, and the angle θb is the angle between the dotted line and the straight line connecting the sample points C and B1. Other geometric relationships include, for example, the volume of a hexahedron connecting eight points of sample points C, R2, B2, BR2, G2, RG2, GB2, and RGB2 in FIG. And the distance between adjacent sample points. Further, this hexahedron can be divided into six tetrahedron regions as in FIG. 11, but the volume of the tetrahedron region also has a geometric relationship. These geometric relationships serve as indices that represent device characteristics. Based on these indices, device characteristics are determined, and the optimal interpolation method weight is set, so that an optimal interpolation ratio that differs for each area is set. It becomes possible. For example, when the angle θb in FIG. 24 is large, the nonlinearity is strong, and when it is close to 0, the linearity is strong. Further, when the volume of the tetrahedron region or the hexahedron region is small, or when the distance between adjacent sample points is close to 0, it can be determined that the effect of nonlinear interpolation that approximates the properties of the device with high accuracy is small. Conversely, if it is large, it can be determined that the effect of nonlinear interpolation is large.

ステップ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 weight optimization unit 1105 calculates weighting unit initialization data 1117 based on the geometric relationship calculated in step S2201. The angle θb in FIG. 24 is an angle formed by the sample points in the B-axis direction, and is one of the geometric relationships belonging to the sample point C. Similarly, the angles θr and θg between the sample points in the R-axis direction and the G-axis direction are also geometric relationships belonging to the sample point C. At this time, an example of a method for calculating the weighting unit initialization data 1117 at the sample point C will be described with reference to FIG. In step S2601, the maximum value θmax of the angles θr, θg, and θb, which is a geometric relationship belonging to the sample point C, is calculated. In step S2602, it is determined whether the maximum value θmax <10 degrees. If true, the process proceeds to step S2603, and if false, the process proceeds to step S2604. RATE1 is weight data for the conversion unit (tetrahedral interpolation), and RATE2 is weight data for the conversion unit (spline interpolation). In step S2603, the value of the weighting unit initialization data 1117 at the sample point C is set to “RATE1 = 0.9, RATE2 = 0.1”. In step S2604, it is determined whether the maximum value θmax <50 degrees. If true, the process proceeds to step S2605, and if false, the process proceeds to step S2606. In step S2605, the value of the weighting unit initialization data 1117 at the sample point C is set to “RATE1 = 0.5, RATE2 = 0.5”. In step S2606, the value of the weighting unit initialization data 1117 at the sample point C is set to “RATE1 = 0.1, RATE2 = 0.9”.

つまり、最大値θ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 portion initialization data 1117 at the sample point C when attention is paid to the volume of the tetrahedron region in the vicinity of the sample point C, which is one of the geometric relationships belonging to the sample point C, 30 will be used for explanation. In step S2901, the maximum value Vmax that is the volume of the tetrahedron region having the largest volume among the maximum 24 tetrahedron regions adjacent to the sample point C is calculated. In step S2902, it is determined whether or not the maximum value Vmax <100 (volume in the L * a * b * color space). If true, the process proceeds to step S2903. If false, the process proceeds to step S2904. move on. In step S2903, the value of the weighting unit initialization data 1117 at the sample point C is set to “RATE1 = 0.9, RATE2 = 0.1”. In step S2604, it is determined whether the maximum value Vmax <500. If true, the process proceeds to step S2905. If false, the process proceeds to step S2906. In step S2905, the value of the weighting unit initialization data 1117 at the sample point C is set to “RATE1 = 0.5, RATE2 = 0.5”. In step S2906, the value of the weighting unit initialization data 1117 at the sample point C is set to “RATE1 = 0.1, RATE2 = 0.9”.

つまり、最大値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 weighted initialization data 1117 is calculated using the sample point, angle, distance, volume, and the like as arguments.

また、ステップ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 unit initialization data 1117 obtained according to the flowchart of FIG. 26, “RATE1 = 1, RATE2 = 0” is set for the R, G, B values having the same value, that is, gray sample points. Set. Then, “RATE1 = 0, RATE2 = 1” is set for sample points whose R, G, and B values are not the same.

図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 unit initialization data 1117 is calculated using parameters that are specially set to match the properties of the inkjet printer. At this time, when “RATE =“ DYNAMIC ”” is described at the same time as shown in FIG. 28, values such as 10 degrees and 50 degrees described in steps S2602 and S2604 are appropriate for the properties of the device of the inkjet printer. It becomes possible to change it to a value.

ここまでは、重み付け最適化部1105が初期化部1101内にある場合を説明してきたが、別の実施の形態では、図5にあるように初期下部1101とは独立に構成される。この場合は、ステップS2202では、重み付け最適化部1105が、ステップS2201において算出した幾何学的な関係を元に重み付け部初期化データ1117を算出するかわりに次のように重み付けデータを作成する。図9のような、指定されたRGBに対して重み付け設定データを記載している重み付け設定データ1111を作成する。   Up to this point, the case where the weight optimization unit 1105 is in the initialization unit 1101 has been described. However, in another embodiment, the weight optimization unit 1105 is configured independently of the initial lower part 1101 as shown in FIG. In this case, in step S2202, the weight optimization unit 1105 creates weighting data as follows instead of calculating the weighting unit initialization data 1117 based on the geometric relationship calculated in step S2201. As shown in FIG. 9, the weight setting data 1111 describing the weight setting data for the designated RGB is created.

ステップS2002では、各変換部1102が入力データを変換するとともに、重み付け部1103が入力データに対応する重み付けデータを計算する。   In step S2002, each conversion unit 1102 converts the input data, and the weighting unit 1103 calculates weighting data corresponding to the input data.

変換部(四面体補間)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 input data 1112. Then, conversion data (tetrahedral interpolation) 1113 indicated by L * a * b * and conversion data (spline interpolation) indicated by L * a * b * are generated.

重み付け部1103は、入力データ1112に対応する重み付けデータ1114を算出する。   The weighting unit 1103 calculates weighting data 1114 corresponding to the input data 1112.

重み付け部1103は、重み付け部初期化データ1117のデータを使用して内部にルックアップテーブル(LUT)を作成する。例えば図12に示す重み付け部初期化データ1117を用いた場合、RGB値に対してRATE_1およびRATE_2を対応付けるLUTを作成する。そして、この作成されたLUTを用いた線形補間(例えば、四面体補間)により、入力データに対する重み付けデータ1114(RATE1およびRATE2)を作成する。   The weighting unit 1103 creates a lookup table (LUT) internally using the data of the weighting unit initialization data 1117. For example, when the weighting unit initialization data 1117 shown in FIG. 12 is used, an LUT that associates RATE_1 and RATE_2 with RGB values is created. Then, weighting data 1114 (RATE1 and RATE2) for the input data is created by linear interpolation (for example, tetrahedral interpolation) using the created LUT.

ステップ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 mixing unit 1104 calculates the output data 1115 by mixing the conversion data (tetrahedral interpolation) and the conversion data (spline interpolation) using the weighting data (RATE1, RATE2) as follows.
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 weighting unit 1103, the weight data also gradually changes based on the adjacent weight data. Therefore, color continuity can be maintained in the entire color region.

例えば、本実施例では、変換部において四面体補間を用いる変換部と、スプライン補間を用いる変換部とを有している。本実施例の四面体補間は、線形補間を用いるとともにグレー軸を基準として六つの四面体領域に分割しているので、グレーの再現性およびグレーの階調性にすぐれている。これに対して、スプライン補間は非線形補間であり、図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 output data 1115 near the gray axis is close to the value of the conversion data (tetrahedral interpolation), and the output data can be close to the value of the conversion data (spline interpolation) as the distance from the gray axis is increased.

スプライン補間は非線形補間であり、一般的なデバイスの性質をよく近似して補間することが可能である。グレー軸に関しては、非線形補間を使用すると、軸をゆがんで補間してしまうことがある。図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 Output Conversion Unit 202>
The output conversion unit 202 performs the same processing as the input conversion unit 201. The output converter 202 differs from the input converter 201 in that the output converter 202 uses device information 203 to convert device-independent color space data into a device color signal. Based on this, the process of creating conversion unit initialization data in the initialization unit 1101 is different.

本実施例における特徴の1つである、重み付け部初期化データ1117の作成方法、変換部1102、重み付け部1103、混合部1104における処理は、入力変換部202と同様である。   The creation method of the weighting unit initialization data 1117 and the processing in the conversion unit 1102, the weighting unit 1103, and the mixing unit 1104, which are one of the features in this embodiment, are the same as those of the input conversion unit 202.

(変形例)
上記実施例では、デバイスに依存しない色空間データとして、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 more conversion units 1102. Although it is up to RATE_3 in the figure, it can be increased according to the number of conversion units 1102. Also, the sum of the values set for each RATE_ * in the corresponding device color signal is set to 1. For example, when there are three types of conversion units 1102, the total of RATE — 1 to RATE — 3 in the corresponding device color signal is set to 1. At this time, only the items RATE_1 and RATE_2 are created without creating the item RATE_3, and the value corresponding to RATE_3 can be a value obtained by subtracting the values set in RATE_1 and RATE_2.

また、重み付け部初期化データのデバイス色信号である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 sample point data 1116 as shown in FIG. Moreover, the conversion part (spline interpolation) 1102 is initialized using the sample point data 1116 as shown in FIG. Then, the weighting unit is initialized using the weighting unit initialization data shown in FIG.

図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 unit initialization data 1117 in FIG. 12 is a ratio of the conversion unit (spline interpolation) 1102, and RATE_2 is a ratio of the conversion unit (tetrahedral interpolation) 1102. The R value is set to 0 except for the range where the R value is 0 to 64, the G value is 0 to 64, and the B value is not within the range of 0 to 255, and the boundary part is set to a value greater than 0 in RATE_1. Yes. That is, the ratio of the conversion unit (spline interpolation) 1102 is high within the above range. Moreover, the interval between the sample points outside the range is 32 in RGB value, but the interval between the sample points within the range is 16 in RGB value, which is set finely.

例えば、上記範囲内の線形性が特に低い場合に、本実施の形態のように、その部分だけ非線形補間を行い、その他は線形補間で高速に処理することで、変換精度を向上することができる。   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.

色知覚モデルを用いたカラーマッチングの処理概念図である。It is a processing conceptual diagram of color matching using a color perception model. 実施例におけるカラーマッチングモジュールの機能構成を示すブロック図である。It is a block diagram which shows the function structure of the color matching module in an Example. 図2に示される機能構成を実現する装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the apparatus which implement | achieves the function structure shown by FIG. デバイス情報ならびにデバイスプラグイン、色空間変換プラグインの模式図である。It is a schematic diagram of device information, a device plug-in, and a color space conversion plug-in. 入力変換部201の構成例を示すブロック図である。3 is a block diagram illustrating a configuration example of an input conversion unit 201. FIG. 入力変換部201における処理の一例を説明するフローチャートである。6 is a flowchart illustrating an example of processing in an input conversion unit 201. 標本点データ1110の一例である。It is an example of sample point data 1110. デバイス情報の一例である。It is an example of device information. デバイス情報の一例である。It is an example of device information. 変換部初期化データ(四面体補間)の一例である。It is an example of conversion part initialization data (tetrahedral interpolation). 四面体補間を説明する図である。It is a figure explaining tetrahedral interpolation. 重み付け部初期化データ1117の一例である。It is an example of the weighting part initialization data 1117. 変換部初期化データ(スプライン補間)を算出する処理を説明するフローチャートである。It is a flowchart explaining the process which calculates conversion part initialization data (spline interpolation). 基底関数の一例である。It is an example of a basis function. 変換部(スプライン補間)の処理結果を説明する図である。It is a figure explaining the process result of a conversion part (spline interpolation). 重み付け部初期化データの一例である。It is an example of weighting part initialization data. 重み付け部初期化データの一例である。It is an example of weighting part initialization data. 重み付けデータ1111の一例である。It is an example of weighting data 1111. 標本点データの一例である。It is an example of sample point data. 標本点データの一例である。It is an example of sample point data. 従来の一般的なカラーマッチングの概念図である。It is a conceptual diagram of conventional general color matching. 重み付け最適化部1105における処理の一例を説明するフローチャートである。10 is a flowchart illustrating an example of processing in a weight optimization unit 1105. 標本点同士の幾何学的な関係を説明する図である。It is a figure explaining the geometric relationship between sample points. 標本点同士の幾何学的な関係を説明する図である。It is a figure explaining the geometric relationship between sample points. 標本点同士の幾何学的な関係を説明する図である。It is a figure explaining the geometric relationship between sample points. ステップS2202の処理の一例を説明するフローチャートである。It is a flowchart explaining an example of the process of step S2202. 入力変換部201の構成例を示すブロック図である。3 is a block diagram illustrating a configuration example of an input conversion unit 201. FIG. デバイス情報の一例である。It is an example of device information. 等色相ラインの一例である。It is an example of an equi-hue line. ステップS2202の処理の一例を説明するフローチャートである。It is a flowchart explaining an example of the process of step S2202.

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記載の色変換装置。   2. The color conversion apparatus according to claim 1, wherein the interpolation algorithms in the plurality of color conversion means are linear interpolation and nonlinear interpolation. さらに、複数の色変換手段を初期化する初期化手段を有し、
前記初期化手段は、前記複数の色変換手段を初期化する際に、前記色変換手段毎に同じ初期化データを用いて初期化することを特徴とする請求項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記載の色変換装置。   The color conversion apparatus according to claim 1, wherein the color conversion unit and the weighting unit are the same algorithm. さらに、前記重み付け手段を初期化する重み付け初期化手段を有し、
前記重み付け初期化手段は、前記重み付け手段に対し、任意の格子点間隔の格子点上に重み付けを定義することを特徴とする請求項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.
前記重み付け最適化手段は、格子点の幾何学的な関係を算出することを特徴とする請求項1から請求項7記載の色変換装置。   8. The color conversion apparatus according to claim 1, wherein the weight optimization unit calculates a geometric relationship between lattice points. 前記重み付け最適化手段は、格子点の幾何学的な関係のうち、角度を算出することを特徴とする請求項8記載の色変換装置。   9. The color conversion apparatus according to claim 8, wherein the weight optimization unit calculates an angle out of a geometric relationship of lattice points. 前記重み付け最適化手段は、格子点の幾何学的な関係のうち、距離を算出することを特徴とする請求項8記載の色変換装置。   9. The color conversion apparatus according to claim 8, wherein the weight optimization unit calculates a distance from a geometric relationship of lattice points. 前記重み付け最適化手段は、格子点の幾何学的な関係のうち、体積を算出することを特徴とする請求項8記載の色変換装置。   9. The color conversion apparatus according to claim 8, wherein the weight optimization unit calculates a volume of the geometric relationship between the lattice points. 前記重み付け最適化手段は、格子点の幾何学的な関係を算出して、算出した結果に基づいて重み付けを最適化することを特徴とする請求項8から請求項11記載の色変換装置。   12. The color conversion apparatus according to claim 8, wherein the weight optimization unit calculates a geometric relationship between lattice points and optimizes the weight based on the calculated result. 異なる補間アルゴリズムを用いて、変換テーブルを用いた色変換を行う複数の色変換工程と、
前記色変換工程の重み付けを設定する重み付け工程と、
前記色変換手段の重み付けを最適化する重み付け最適化工程と、
前記重み付け工程により算出された重み付けを用いて、前記色変換工程によって得られた複数の色変換結果を混合するする混合工程とを有することを特徴とする色変換方法。
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.
請求項13記載の色変換方法をコンピュータを用いて実現するためのプログラム。   A program for realizing the color conversion method according to claim 13 using a computer.
JP2007110538A 2007-04-19 2007-04-19 Color conversion apparatus and method Expired - Fee Related JP4999527B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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