JP2007060422A - Color processing apparatus and method thereof - Google Patents

Color processing apparatus and method thereof Download PDF

Info

Publication number
JP2007060422A
JP2007060422A JP2005244743A JP2005244743A JP2007060422A JP 2007060422 A JP2007060422 A JP 2007060422A JP 2005244743 A JP2005244743 A JP 2005244743A JP 2005244743 A JP2005244743 A JP 2005244743A JP 2007060422 A JP2007060422 A JP 2007060422A
Authority
JP
Japan
Prior art keywords
color
coefficient
gamut
sample
processing method
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.)
Withdrawn
Application number
JP2005244743A
Other languages
Japanese (ja)
Inventor
Yoshitaka Sasaki
良隆 佐々木
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 JP2005244743A priority Critical patent/JP2007060422A/en
Publication of JP2007060422A publication Critical patent/JP2007060422A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Processing Of Color Television Signals (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To solve a problem that it has been difficult to realize sophisticated color reproduction in response to the visible sense of humans. <P>SOLUTION: A color processing method disclosed herein for calculating a color signal value in a second color gamut by applying a nonlinear arithmetic operation to a color signal value in a first color gamut in a prescribed color system includes a step S602 for establishing a sample color, on the basis of the cross-reference between the first and second color gamuts; steps S605, S606 of establishing a spline coefficient on the basis of the established coefficient; a step S607 for generating an intermediate color gamut by a spline arithmetic operation on the basis of the established coefficient; and a step S602 for determining the coefficient when the intermediate color gamut is sufficiently closer to an output color gamut or reestablishing the sample color when not closer. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は色処理装置およびその方法に関し、特に、第1の表色系で表現される色信号値を所定の表色系を介して第2の表色系の色信号値に変換する色処理装置およびその方法に関する。   The present invention relates to a color processing apparatus and method, and in particular, color processing for converting a color signal value expressed in a first color system to a color signal value in a second color system via a predetermined color system. The present invention relates to an apparatus and a method thereof.

近年、カラー画像を扱うデバイスの普及により、同じカラー画像を異なるデバイスで扱う機会が増加している。例えば、ディジタルカメラで撮影した画像の出力先としてモニタやプリンタが考えられる。しかし、デバイス毎に色再現が可能な範囲(以下、色域という)が異なるため、同じ画像であってもモニタで表示される色とプリンタで出力される色が異なるという問題がある。そこで、異なるデバイス間での色域の差を吸収し、可能な限り同等の色再現を実現するためのCMS(Color Management System)が重要になっている。   In recent years, with the spread of devices that handle color images, opportunities to handle the same color image with different devices are increasing. For example, a monitor or a printer can be considered as an output destination of an image taken with a digital camera. However, since the color reproducible range (hereinafter referred to as a color gamut) is different for each device, there is a problem that the color displayed on the monitor and the color output by the printer are different even for the same image. Therefore, CMS (Color Management System) for absorbing the difference in color gamut between different devices and realizing the same color reproduction as possible is important.

一般的なCMSは、デバイス非依存の色空間(XYZ,CIELAB等)であるPCS(Profile Connection Space)を共通色空間とする変換システムとして構成される。デバイス依存の色空間(RGB,CMYK等)とPCSとの相互変換には、変換式あるいは変換テーブル(LUT:Look Up Table)が記述されたプロファイルが用いられる。   A general CMS is configured as a conversion system using a PCS (Profile Connection Space) which is a device-independent color space (XYZ, CIELAB, etc.) as a common color space. For mutual conversion between a device-dependent color space (RGB, CMYK, etc.) and PCS, a profile in which a conversion formula or a conversion table (LUT: Look Up Table) is described is used.

ここで、CMSにおける変換処理についてより詳細に説明すると、まず、入力デバイスに対応したプロファイル(以下、Srcプロファイルという)を用いて入力デバイス依存の色空間をPCSに変換する。次に、PCS上で入力デバイスの色域を出力デバイスの色域に変換する。そして、出力デバイスに対応したプロファイル(以下、Dstプロファイルという)でPCSから出力デバイス依存の色空間に変換する。以上のような処理を実行することで、入力デバイスの色域と出力デバイスの色域の差が吸収される。   Here, the conversion process in the CMS will be described in more detail. First, an input device-dependent color space is converted into a PCS using a profile corresponding to the input device (hereinafter referred to as an Src profile). Next, the color gamut of the input device is converted to the color gamut of the output device on the PCS. Then, the PCS is converted into an output device-dependent color space with a profile corresponding to the output device (hereinafter referred to as a Dst profile). By executing the above processing, the difference between the color gamut of the input device and the output device is absorbed.

このようなCMSで用いられるプロファイルとしては、例えば、モニタ等の加法混色で表現するデバイスの場合、マトリクス演算とガンマ演算の係数を記述したプロファイルが主に用いられる。一方、印刷機器等の減法混色で表現されるデバイスの場合、一般にデバイス色空間とPCSとの関係が非常に複雑であるので、その関係をより高精度に表現するためにLUTを記述したプロファイルが用いられる。一般的なLUTは、色空間において格子状に値を持つものとして記述されているため、LUTに表現されていない色に関しては補間演算によって色を算出する。   As a profile used in such a CMS, for example, in the case of a device that expresses additive color mixture such as a monitor, a profile that describes coefficients of matrix calculation and gamma calculation is mainly used. On the other hand, in the case of devices expressed by subtractive color mixing such as printing equipment, the relationship between the device color space and the PCS is generally very complex, so a profile describing the LUT to express that relationship with higher accuracy is available. Used. Since a general LUT is described as having a grid-like value in a color space, colors that are not represented in the LUT are calculated by interpolation.

LUTに対する補間演算には、立方体補間や四面体補間といった線形補間が広く用いられている。図13に示すように、立方体補間は算出する色を囲むLUT上の8点(P1,P2,P3,P4,P5,P6,P7,P8)の値から色を算出する方法である。また、四面体補間は立方体補間で用いる8点で構成される立方体を6分割して得られる四面体を用いて、4点の値から色を算出する方法である。例えば四面体補間の場合、(P1,P3,P4,P8)で構成される四面体に属する点Pの値は次式で得られる。ここで、DL,Da,Dbは、点Pを囲む立方体において、点Pの位置を示す正規化した各軸方向の距離である。   Linear interpolation such as cubic interpolation or tetrahedral interpolation is widely used for the interpolation calculation for the LUT. As shown in FIG. 13, cubic interpolation is a method of calculating a color from the values of eight points (P1, P2, P3, P4, P5, P6, P7, P8) on the LUT surrounding the color to be calculated. Tetrahedral interpolation is a method of calculating a color from the values of four points using a tetrahedron obtained by dividing a cube composed of eight points used in cube interpolation into six. For example, in the case of tetrahedral interpolation, the value of the point P belonging to the tetrahedron constituted by (P1, P3, P4, P8) is obtained by the following equation. Here, DL, Da, and Db are normalized distances in the axial directions indicating the position of the point P in the cube surrounding the point P.

P = P1 + DL・(P8-P1) + Da・(P3-P1) + Db・(P4-P1)
しかしながら、LUTの格子間隔が粗い場合に線形補間を用いると、立方体や四面体で囲まれた局所的な領域から値を算出するために、色算出精度が低下する。また、立方体や四面体の表面を境界として線形補間が切り替わることに起因して、値が急峻に変化して滑らかさが失われ、再現画像に擬似輪郭が現れることがある。
P = P1 + DL ・ (P8-P1) + Da ・ (P3-P1) + Db ・ (P4-P1)
However, if linear interpolation is used when the lattice spacing of the LUT is coarse, the color calculation accuracy decreases because the value is calculated from a local region surrounded by a cube or tetrahedron. In addition, due to the fact that the linear interpolation is switched with the surface of the cube or tetrahedron as a boundary, the value changes sharply, the smoothness is lost, and a pseudo contour may appear in the reproduced image.

このような問題を解決する手法として、非線型演算による色算出法が提案されている(例えば、特許文献1参照)。このような非線形演算による手法によれば、複数の代表色から色を算出する際に、色の変化の傾向を自然に反映して滑らかな変化で色を算出するため、少ない代表色でも精度良く色を算出することが可能である。
特開2003-416614公報
As a method for solving such a problem, a color calculation method by nonlinear calculation has been proposed (see, for example, Patent Document 1). According to such a nonlinear calculation method, when calculating a color from a plurality of representative colors, the color is calculated with a smooth change that naturally reflects the tendency of the color change. The color can be calculated.
JP2003-416614

一般に、色を算出する際に、人間の視覚的に良好で好ましい色再現を実現することを考慮すると、実際の色に忠実な色再現よりも人間の記憶に基づいた色再現のほうが好まれる傾向がある。人間の記憶に基づいた色(以下、記憶色という)の例としては、肌色や空の色などがある。このような記憶色の色再現は、忠実な色再現よりも非常に高度な色再現が要求される。例えば、肌色のようなグレイ近辺の色の色相や彩度の変化に対して人間の視覚は非常に鋭敏であるため、高精度な色再現が要求される。他方、空の色のような高彩度の色に対して人間の視覚はやや鈍く、デバイスによって色域が大きく異なるため、色の算出精度よりも元の色の彩度や階調性を保つことが求められる。すなわち、高精度な色再現と、元の色の彩度や階調性を維持した色再現のいずれを優先すべきかを、人間の視覚に応じて制御することが要求される。   In general, when calculating colors, taking into account the realization of color reproduction that is good and good for humans, color reproduction based on human memory tends to be preferred over color reproduction that is faithful to actual colors. There is. Examples of colors based on human memory (hereinafter referred to as memory colors) include skin color and sky color. Such color reproduction of a memory color requires much higher color reproduction than faithful color reproduction. For example, since human vision is very sensitive to changes in hue and saturation of colors near gray such as skin color, highly accurate color reproduction is required. On the other hand, human vision is somewhat dull for high-saturation colors such as the sky color, and the color gamut varies greatly depending on the device, so it is possible to maintain the saturation and gradation of the original color rather than the color calculation accuracy. Desired. That is, it is required to control, according to human vision, which one should prioritize high-precision color reproduction or color reproduction that maintains the saturation and gradation of the original color.

しかしながら、上記従来例で示した非線型演算による色算出方法によれば、ある色空間に対して一度の非線型演算で色を算出するため、上記のように人間の視覚に応じた高度な色再現を実現することは難しいという問題があった。   However, according to the color calculation method based on the non-linear operation shown in the conventional example, the color is calculated with a single non-linear operation for a certain color space. There was a problem that it was difficult to reproduce.

本発明は上述した問題を解決するためになされたものであり、人間の視覚的に好ましい色再現を実現する色処理装置およびその方法を提供することを目的とする。   The present invention has been made to solve the above-described problems, and an object thereof is to provide a color processing apparatus and method for realizing color reproduction that is visually favorable for human beings.

上記目的を達成するための一手段として、本発明は以下の構成を備える。   As a means for achieving the above object, the present invention comprises the following arrangement.

すなわち、第1の表色系で表現される色信号値を所定の表色系を介して第2の表色系の色信号値に変換する際に、該所定の表色系における第1の色域内の色信号値に対して非線形演算を行うことによって第2の色域内の色信号値を算出する色処理方法であって、前記第1の色域と前記第2の色域との対応に基づいて標本色を設定する標本色設定ステップと、該設定された標本色に基づいて、前記非線形演算における係数を設定する係数設定ステップと、該設定された係数に基づき前記非線形演算を行う演算ステップと、該演算結果を評価する評価ステップと、を有し、前記評価ステップにおいて前記非線形演算結果が適切でないと判定された場合に、前記標本色設定ステップを再度実行し、前記評価ステップにおいて前記非線形演算結果が適切であると判定された場合に、前記係数を決定することを特徴とする。   That is, when the color signal value expressed in the first color system is converted into the color signal value of the second color system via the predetermined color system, the first color in the predetermined color system A color processing method for calculating a color signal value in a second color gamut by performing a non-linear operation on the color signal value in the color gamut, the correspondence between the first color gamut and the second color gamut A sample color setting step for setting a sample color based on the sample color, a coefficient setting step for setting a coefficient in the nonlinear calculation based on the set sample color, and an operation for performing the nonlinear calculation based on the set coefficient And an evaluation step for evaluating the calculation result, and when the non-linear calculation result is determined to be inappropriate in the evaluation step, the sample color setting step is executed again, and the evaluation step Non-linear calculation result is appropriate If it is determined, characterized by determining the coefficient.

例えば、前記非線形演算は、区分的多項式を基底関数とする多重総和演算であることを特徴とする。   For example, the non-linear operation is a multiple sum operation using a piecewise polynomial as a basis function.

例えば、前記基底関数は、スプライン関数であることを特徴とする。   For example, the basis function is a spline function.

以上の構成により本発明によれば、非線形演算による色変換結果を所望の色再現に近づけることが可能となり、人間の視覚的に好ましい色再現を実現することができる。   With the above configuration, according to the present invention, it is possible to bring the color conversion result obtained by the non-linear calculation closer to a desired color reproduction, and it is possible to realize a color reproduction that is visually favorable to humans.

以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。   Hereinafter, the present invention will be described in detail based on preferred embodiments with reference to the accompanying drawings.

<第1実施形態>
●装置構成
図1は、本実施形態に係る色処理装置の構成を示すブロック図である。同図において、101はCPU、102はメインメモリ、103はSCSIインタフェース、104はネットワークインタフェース、105はHDDである。また、106はグラフィックアクセラレータ、107はカラーモニタ、108はUSBコントローラ、109はカラープリンタ、110はキーボード/マウスコントローラ、111はキーボード、112はマウスである。そして、113はローカルエリアネットワーク、114はPCIバスである。
<First Embodiment>
Apparatus Configuration FIG. 1 is a block diagram showing the configuration of a color processing apparatus according to this embodiment. In the figure, 101 is a CPU, 102 is a main memory, 103 is a SCSI interface, 104 is a network interface, and 105 is an HDD. Also, 106 is a graphic accelerator, 107 is a color monitor, 108 is a USB controller, 109 is a color printer, 110 is a keyboard / mouse controller, 111 is a keyboard, and 112 is a mouse. Reference numeral 113 denotes a local area network, and 114 denotes a PCI bus.

以下、上記構成において、プロファイルを読み込み、LUTから色を算出して画像の色を変換する処理について、詳細に説明する。なお本実施形態では、色変換アプリケーションを用いて画像の色を変換する。   Hereinafter, in the above configuration, processing for reading a profile, calculating a color from the LUT, and converting the color of the image will be described in detail. In this embodiment, the color of an image is converted using a color conversion application.

本実施形態の色処理装置に対してユーザが色変換アプリケーションの起動を指示すると、ユーザの指示を受けたOSプログラムはHDD105に格納されている色変換アプリケーションを起動し、メインメモリ102に展開する。色変換アプリケーションが起動されると図2に示すウィンドウがカラーモニタ107上に表示される。図2において、201は変換する画像ファイルの入力を指示するためのボタンである。202はSrcプロファイルの入力を指示するためのボタンであり、203はDstプロファイルの入力を指示するためのボタンである。204は色変換後の画像の出力を指示するためのボタンである。また、205は画像の色変換の様子を表示するための表示領域であり、206は画像の色変換を指示するためのボタン、207はアプリケーションの終了を指示するためのボタンである。   When the user instructs the color processing apparatus of this embodiment to start the color conversion application, the OS program that receives the user's instruction starts the color conversion application stored in the HDD 105 and develops it in the main memory 102. When the color conversion application is activated, the window shown in FIG. 2 is displayed on the color monitor 107. In FIG. 2, reference numeral 201 denotes a button for instructing input of an image file to be converted. 202 is a button for instructing input of an Src profile, and 203 is a button for instructing input of a Dst profile. Reference numeral 204 denotes a button for instructing output of an image after color conversion. Reference numeral 205 denotes a display area for displaying the state of image color conversion, 206 denotes a button for instructing image color conversion, and 207 denotes a button for instructing termination of the application.

以下、色変換アプリケーションの動作について、図3のフローチャートを用いて説明する。まずステップS401において、色変換の対象となる画像ファイルを読み込む。色変換アプリケーションにおいて、ユーザが画像ファイル入力ボタン201により画像の読み込みを指示すると、色変換アプリケーションの指示に従って、指定された画像がHDD105もしくはネットワークI/F104経由で読み込まれる。読み込まれた画像は、205aの表示領域に表示される。   Hereinafter, the operation of the color conversion application will be described with reference to the flowchart of FIG. First, in step S401, an image file to be subjected to color conversion is read. In the color conversion application, when the user instructs to read an image using the image file input button 201, the designated image is read via the HDD 105 or the network I / F 104 according to the instruction of the color conversion application. The read image is displayed in the display area 205a.

次にステップS402において、画像を表現するデバイス依存色(RGB)をPCS(ここではL*C*hとする)に変換するLUTを持つSrcプロファイルを読み込む。色変換アプリケーションにおいて、ユーザがSrcプロファイル入力ボタン202よりSrcプロファイルの読み込みを指示すると、指定されたプロファイルがHDD105からもしくはネットワークI/F104経由で外部から読み込まれる。ここで、SrcプロファイルのLUTがR,G,B各5スライス、計125個のRGB値とL*C*h値との組を持つとすると、該LUTは図4Aに示すようなデータ構造として構成される。   In step S402, an Src profile having an LUT for converting a device-dependent color (RGB) representing an image into PCS (here, L * C * h) is read. In the color conversion application, when the user instructs to read the Src profile from the Src profile input button 202, the specified profile is read from the HDD 105 or from the outside via the network I / F 104. Here, if the LUT of the Src profile has R, G, B 5 slices each, a total of 125 RGB values and L * C * h values, the LUT has a data structure as shown in FIG. 4A. Composed.

次にステップS403において、PCSから画像を表現するデバイス依存色(RGB)に変換するLUTを持つDstプロファイルを読み込む。色変換アプリケーションにおいて、ユーザがDstプロファイル入力ボタン203よりDstプロファイルの読み込みを指示すると、指定されたプロファイルがHDD105からもしくはネットワークI/F104経由で外部から読み込まれる。ここで、DstプロファイルのLUTはL*C*h値とRGB値との組を持ち、図4Bに示すようなデータ構造で構成される。   Next, in step S403, a Dst profile having an LUT for conversion to a device-dependent color (RGB) representing an image from the PCS is read. In the color conversion application, when the user instructs reading of the Dst profile from the Dst profile input button 203, the specified profile is read from the HDD 105 or from the outside via the network I / F 104. Here, the DUT profile LUT has a set of L * C * h values and RGB values, and has a data structure as shown in FIG. 4B.

以上の処理に続き、色変換アプリケーションにおいて、ユーザは変換実行ボタン206を押下することによって、読み込んだ画像の色変換を実行する。すると、まずステップS404において、色変換で用いるスプライン係数を算出する。なお、スプライン係数算出の詳細については後述する。そしてステップS405では、ステップS404で求めたスプライン係数を用いて、入力された画像の色をスプイン関数により変換する。なお、この変換方法の詳細については後述する。そしてステップS406において、変換後の画像が205bの表示領域にプレビューされる。   Following the above processing, in the color conversion application, the user presses the conversion execution button 206 to execute color conversion of the read image. In step S404, a spline coefficient used for color conversion is calculated. Details of the spline coefficient calculation will be described later. In step S405, the color of the input image is converted by a spin function using the spline coefficient obtained in step S404. Details of this conversion method will be described later. In step S406, the converted image is previewed in the display area 205b.

その後、色変換アプリケーションにおいて、ユーザが画像ファイル出力ボタン204より変換後の画像を出力する。そして、終了ボタン207によりアプリケーション終了を指示すると全てのデータ、並びにアプリケーションがメインメモリ102から消去され、アプリケーションを終了する。   Thereafter, in the color conversion application, the user outputs the converted image from the image file output button 204. Then, when the application is instructed by the end button 207, all data and applications are deleted from the main memory 102, and the application is ended.

●スプライン係数の算出処理
以下、上記ステップS404におけるスプライン係数の算出処理について、図5のフローチャートを用いて詳細に説明する。
Spline Coefficient Calculation Processing Hereinafter, the spline coefficient calculation processing in step S404 will be described in detail with reference to the flowchart of FIG.

具体的な処理を説明するに先立って、まず、色算出で用いるスプライン関数について説明する。ここで、入力値(lo,co,ho)に対する出力値を(Lo,Co,Ho)とすると、スプライン関数を用いて表される入力値と出力値の関係は次式のようになる。 Prior to describing specific processing, first, a spline function used in color calculation will be described. Here, if the output value for the input value (l o , c o , h o ) is (L o , C o , H o ), the relationship between the input value and the output value expressed using the spline function is become that way.

Figure 2007060422
Figure 2007060422

上式において、BiおよびBjは明度及び彩度に関する非周期的な基底関数、Bk cは色相に関する周期的な基底関数である。従って、入力値(lo,co,ho)は図6に示すような円筒座標で表される。またα,β,γは、明度、彩度、色相それぞれの次元のスプライン係数であり、i,j,kは明度、彩度、色相それぞれの次元における基底関数番号である。本実施形態では、このスプライン係数α,β,γを適切に算出することによって、スプライン関数による最適な色変換を実現することを特徴とする。 In the above equation, B i and B j are aperiodic basis functions related to lightness and saturation, and B k c is a periodic basis function related to hue. Accordingly, the input values (l o , c o , h o ) are represented by cylindrical coordinates as shown in FIG. Further, α, β, and γ are spline coefficients in the respective dimensions of lightness, saturation, and hue, and i, j, and k are basis function numbers in the respective dimensions of lightness, saturation, and hue. The present embodiment is characterized in that optimum color conversion by a spline function is realized by appropriately calculating the spline coefficients α, β, and γ.

以下、図5に示すフローチャートを説明する。まずステップS601において、図4A,図4Bのデータ構造で表されるLUTより、SrcプロファイルのL*C*h値とDstプロファイルのL*C*h値との対応関係を、全ての組について取得する。ここで、以降の説明においてL*C*h値は各次元それぞれ5つ、計125個のデータであるとし、i番目のデータに関して、入力色域のL*C*h値をli,ci,hi、出力色域のL*C*h値をLi,Ci,Hi、と表すこととする。ここで入力色域とは入力デバイスにおいて再現可能な色域に相当し、同様に出力色域とは出力デバイスにおいて再現可能な色域に相当する。 Hereinafter, the flowchart shown in FIG. 5 will be described. First, in step S601, the correspondence between the L * C * h value of the Src profile and the L * C * h value of the Dst profile is acquired for all the pairs from the LUT represented by the data structure of FIGS. 4A and 4B. To do. Here, in the following description, L * C * h values are assumed to be 5 data for each dimension, a total of 125 data, and for the i-th data, the L * C * h values of the input color gamut are expressed as l i , c Let i , h i , and the L * C * h value of the output color gamut be expressed as L i , C i , H i . Here, the input color gamut corresponds to a color gamut reproducible in the input device, and similarly, the output color gamut corresponds to a color gamut reproducible in the output device.

ステップS602では、入力色域を囲むようにして標本点の入力値を設定し、上記LUTから標本点の出力値を得る。ここで、標本点は図7Aおよび図7Bに示すように、入力色域の各次元(本実施形態では明度、彩度、色相成分)に対して、それぞれ任意の数だけ設定することができる。以下の説明では、明度、彩度、色相の各成分に関する標本点数はそれぞれ5点とする。なお、標本点の設定方法の詳細については後述する。   In step S602, the input value of the sample point is set so as to surround the input color gamut, and the output value of the sample point is obtained from the LUT. Here, as shown in FIGS. 7A and 7B, an arbitrary number of sample points can be set for each dimension of the input color gamut (in this embodiment, lightness, saturation, and hue component). In the following description, the number of sample points for each component of lightness, saturation, and hue is assumed to be 5 points. The details of the sample point setting method will be described later.

次にステップS603において、適当となるように節点を決定し、その節点に基づいて基底関数を算出してメインメモリ102に記憶する。ここで節点の決定方法としては、予め節点数並びに座標を決めておいてもよいし、あるいは入力値の変化より節点を決定しても構わない。節点が定まった後の基底関数の算出には、一般的なDe Boor-Coxのアルゴリズムを用いる。例えば、基底関数が3位のB-Spline基底であるとすると、非周期B-Spline基底は4つの節点(q0,q1,q2,q3)に対して図8に示すようになる。また、周期B-Spline基底は5つの節点(q0,q1,q2,q3,q4、但しq0=q4)に対して図9に示すようになる。以下の説明では、非周期的な明度、彩度成分に関する節点数はそれぞれ4点、周期的な色相成分に関する節点数は6点とし、基底関数は3位のB-Spline基底とする。 Next, in step S603, nodes are determined as appropriate, basis functions are calculated based on the nodes, and stored in the main memory 102. Here, as a method for determining a node, the number of nodes and coordinates may be determined in advance, or the node may be determined based on a change in input value. A general De Boor-Cox algorithm is used to calculate the basis function after the node is determined. For example, if the basis function is the B-Spline basis at the third position, the aperiodic B-Spline basis becomes as shown in Fig. 8 for four nodes (q 0 , q 1 , q 2 , q 3 ) . The periodic B-Spline base is as shown in FIG. 9 for five nodes (q 0 , q 1 , q 2 , q 3 , q 4 , where q 0 = q 4 ). In the following description, the number of nodes related to the aperiodic lightness and saturation components is 4 points, the number of nodes related to the periodic hue components is 6 points, and the basis function is the 3rd rank B-Spline basis.

ステップS604では、ループ回数を判定する。1回目の場合はステップS605に移行し、2回目以降の場合はステップS606に移行する。   In step S604, the number of loops is determined. If it is the first time, the process proceeds to step S605, and if it is the second time or later, the process proceeds to step S606.

ステップS605では、ステップS602或いは後述するステップS609で設定した標本点の出力値をスプライン係数とする。すなわち、i番目の標本点に対応するi番目のスプライン係数αiiiは、次式のようになる。 In step S605, the output value of the sample point set in step S602 or step S609 described later is used as a spline coefficient. That is, the i-th spline coefficients α i , β i , and γ i corresponding to the i-th sample point are expressed by the following equations.

αi = Li
βi = Ci
γi = Hi
一方ステップS606では、ステップS603で算出した基底関数と、ステップS602或いは後述するステップS609で設定した標本点を用いて、スプライン係数を求める。すなわち、以下の行列方程式をL*成分、C*成分、h成分についてそれぞれ解く。
α i = L i
β i = C i
γ i = H i
On the other hand, in step S606, the spline coefficient is obtained using the basis function calculated in step S603 and the sample point set in step S602 or step S609 described later. That is, the following matrix equations are solved for the L * component, the C * component, and the h component, respectively.

Y = MC
ここで、Mは基底関数と標本点の入力値から生成される行列、Cはスプライン係数を表すベクトル、Yは標本点の出力値を表すベクトルである。
Y = MC
Here, M is a matrix generated from the input values of the basis function and the sample point, C is a vector representing the spline coefficient, and Y is a vector representing the output value of the sample point.

以下、上記方程式によるスプライン係数α,β,γの算出方法について詳細に説明する。   Hereinafter, the calculation method of the spline coefficients α, β, γ by the above equation will be described in detail.

まず、行列Mは125×125の行列であり、s行t列成分mstを次のように設定する。 First, the matrix M is a 125 × 125 matrix, and the s row t column component m st is set as follows.

st = Bi(lu)Bj(cv)Bk(hw)
s = 25u + 5v + w
t = 25i + 5j + k
0≦i≦4,0≦j≦4,0≦k≦4,0≦u≦4,0≦v≦4,0≦w≦4
従って、s番目の出力Lsを上記スプライン関数を用いて表すと次のようになる。
m st = B i (l u ) B j (c v ) B k (h w )
s = 25u + 5v + w
t = 25i + 5j + k
0≤i≤4, 0≤j≤4, 0≤k≤4, 0≤u≤4, 0≤v≤4, 0≤w≤4
Therefore, the s-th output L s is expressed using the above spline function as follows.

Figure 2007060422
Figure 2007060422

これを行列式に変換すると、次のようになる。   When this is converted into a determinant, it becomes as follows.

L = Mαvector
そして、この行列式をLU分解で解くことによって、スプライン係数のベクトルαvectorが以下のように算出される。
L = Mα vector
Then, by solving this determinant by LU decomposition, a vector α vector of spline coefficients is calculated as follows.

αvector = [α01,・・・,α124]
同様に、s番目の出力Csを上記スプライン関数を用いて表すと次のようになる。
α vector = [α 0 , α 1 , ..., α 124 ]
Similarly, the s-th output C s is expressed using the above spline function as follows.

Figure 2007060422
Figure 2007060422

これを行列式に変換すると、次のようになる。   When this is converted into a determinant, it becomes as follows.

C = Mβvector
そして、この行列式をLU分解で解くことによって、スプライン係数のベクトルβvectorが以下のように算出される。
C = Mβ vector
Then, by solving this determinant by LU decomposition, a vector β vector of spline coefficients is calculated as follows.

βvector = [β01,・・・,β124]
さらに、s番目の出力hsを上記スプライン関数を用いて表すと次のようになる。
β vector = [β 0 , β 1 , ..., β 124 ]
Further, the s-th output h s is expressed using the above spline function as follows.

Figure 2007060422
Figure 2007060422

これを行列式に変換すると、次のようになる。   When this is converted into a determinant, it becomes as follows.

h = Mγvector
そして、この行列式をLU分解で解くことによって、スプライン係数のベクトルγvectorが以下のように算出される。
h = Mγ vector
Then, by solving this determinant by LU decomposition, a vector γ vector of spline coefficients is calculated as follows.

γvector = [γ01,・・・,γ124]
なお本実施形態においては、ステップS604における上記スプライン係数算出方法の選択条件をループ回数として説明したが、他の選択条件やユーザが任意に係数算出方法を選択できるようにしても良い。また、ステップS605およびステップS606の方法でスプライン係数を決定する例を説明したが、色算出において適当なスプライン関数が得られる手法であれば、他の係数決定手法を用いてもかまわない。
γ vector = [γ 0 , γ 1 , ..., γ 124 ]
In the present embodiment, the selection condition for the spline coefficient calculation method in step S604 has been described as the number of loops. However, other selection conditions and the user may arbitrarily select the coefficient calculation method. In addition, although the example in which the spline coefficient is determined by the method of step S605 and step S606 has been described, other coefficient determination methods may be used as long as an appropriate spline function can be obtained in color calculation.

以上のようにステップS605或いはステップS606においてスプライン係数が算出されると、次にステップS607に進む。ステップS607では、決定されたスプライン係数を用いて、該スプライン係数が最終的な色変換用として十分であるか否かを判断するために中間色域を生成する。ここで中間色域は、図4Aで示したSrcプロファイルに対応した入力値125点を上記スプライン関数に代入することによって算出される。すなわち、入力色域におけるL*C*h値を(l,c,h)、それに対応する中間色域におけるL*C*h値を(L',C',H')とすると、入力色域と中間色域の関係は次式に示すようになる。   As described above, when the spline coefficient is calculated in step S605 or step S606, the process proceeds to step S607. In step S607, an intermediate color gamut is generated using the determined spline coefficient to determine whether the spline coefficient is sufficient for final color conversion. Here, the intermediate color gamut is calculated by substituting 125 input values corresponding to the Src profile shown in FIG. 4A into the spline function. That is, if the L * C * h value in the input gamut is (l, c, h) and the corresponding L * C * h value in the intermediate gamut is (L ', C', H '), the input gamut And the intermediate color gamut are as shown in the following equation.

Figure 2007060422
Figure 2007060422

次にステップS608においては、中間色域と出力色域との比較による条件判定を行う。ここでは、代表的な複数の同じ入力値に対するそれぞれの色域の値を求め、その平均色差ΔEabを判定条件とする。すなわち、上記ステップS601において取得した入力色域と出力色域との対応関係から、中間色域を算出したのと同じ入力値(l,c,h)に対応する出力色域のL*C*h値(L,C,H)を中間色域におけるL*C*h値(L',C',H')と比較する。これにより、平均色差ΔEabが以下のように求められる。 Next, in step S608, condition determination is performed by comparing the intermediate color gamut with the output color gamut. Here, each color gamut value for a plurality of representative input values is obtained, and the average color difference ΔE ab is used as a determination condition. That is, L * C * h of the output color gamut corresponding to the same input value (l, c, h) as the intermediate color gamut calculated from the correspondence relationship between the input color gamut acquired in step S601 and the output color gamut. The value (L, C, H) is compared with the L * C * h value (L ′, C ′, H ′) in the intermediate color gamut. Accordingly, the average color difference ΔE ab is obtained as follows.

Figure 2007060422
Figure 2007060422

但し、a=C・cos(πH/180),b=C・sin(πH/180)
そして、ΔEabが所定の閾値Eth以上の場合はステップS609に移行し、ΔEabが閾値Ethよりも小さい場合はステップS610に移行する。なお、ステップS608における判定条件としては他の条件を用いてもかまわない。例えば色差のほか、明度差や彩度差、色相差、階調のいずれか、或いはその2つ以上の組み合わせを適用してもよい。
However, a = C ・ cos (πH / 180), b = C ・ sin (πH / 180)
If ΔE ab is equal to or larger than the predetermined threshold E th, the process proceeds to step S609, and if ΔE ab is smaller than the threshold E th , the process proceeds to step S610. Note that other conditions may be used as the determination conditions in step S608. For example, in addition to the color difference, any one of brightness difference, saturation difference, hue difference, gradation, or a combination of two or more thereof may be applied.

ステップS609では、ステップS607で生成した中間色域を2回目以降のスプライン係数算出時における入力色域として設定した後、ステップS602に戻って上記処理を繰り返す。これによりすなわち、新たな入力色域に対する標本点が設定され、新たなスプライン係数が算出される。   In step S609, the intermediate color gamut generated in step S607 is set as an input color gamut for the second and subsequent spline coefficient calculations, and then the process returns to step S602 and the above process is repeated. As a result, a sample point for a new input color gamut is set, and a new spline coefficient is calculated.

一方、ステップS610では、ステップS605或いはステップS606で算出したスプライン係数をメインメモリ102に記憶する。   On the other hand, in step S610, the spline coefficient calculated in step S605 or step S606 is stored in the main memory 102.

以上説明したように本実施形態では図5に示すように、中間色域と出力色域との平均色差ΔEabが所定の閾値Ethよりも小さくなった時点で、スプライン係数を決定する。すなわち、中間色域が出力色域に対して、所望する程度(所定の閾値Ethとして示される)に近づくようなスプライン係数が設定される。 As described above, in this embodiment, as shown in FIG. 5, the spline coefficient is determined when the average color difference ΔE ab between the intermediate color gamut and the output color gamut becomes smaller than the predetermined threshold value Eth . That is, a spline coefficient is set such that the intermediate color gamut approaches the desired level (shown as a predetermined threshold value Eth ) with respect to the output color gamut.

なお、詳細は後述するが本実施形態のスプライン関数を用いた色変換においては、ステップS605で算出されるスプライン係数を利用することによって、色の階調性が優先される。一方、ステップS606で算出されるスプライン係数を利用することによって、高精度な色再現が優先される。   Although details will be described later, in the color conversion using the spline function of the present embodiment, the tone of the color is prioritized by using the spline coefficient calculated in step S605. On the other hand, high-precision color reproduction is prioritized by using the spline coefficient calculated in step S606.

●標本点設定処理
以下、ステップS602における標本点の設定方法について、図10のフローチャートを用いて詳細に説明する。
Sample Point Setting Process Hereinafter, the sample point setting method in step S602 will be described in detail with reference to the flowchart of FIG.

まずステップS1001において、入力色域の最大彩度の値を求める。次にステップS1002において、ステップS1001で求めた最大彩度を考慮して標本点が設定される。すなわち、図7Aや図7Bに示されるように、入力色域を囲むように任意数の標本点が設定される。   First, in step S1001, the maximum saturation value of the input color gamut is obtained. Next, in step S1002, a sample point is set in consideration of the maximum saturation obtained in step S1001. That is, as shown in FIGS. 7A and 7B, an arbitrary number of sample points are set so as to surround the input color gamut.

ここで標本点数に関しては、数を増やすと色算出の基準となる点が増加するため色算出の精度が向上する。反対に、数を減らすと非線型の関数によって算出される色が相対的に増加して滑らかに変化するため階調性が向上する。図7Aと図7Bは、同一入力色域について標本点数が異なる例を示しており、図7Aの方が標本点数が少ないため階調性を優先した色変換を行う場合に適しており、図7Bの方が標本点数が多いため色精度を優先した色変換を行う場合に適している。なお、設定する標本点数については、予め設定されているものとする。   Here, regarding the number of sample points, increasing the number increases the number of points that serve as a reference for color calculation, thereby improving the accuracy of color calculation. On the contrary, if the number is reduced, the color calculated by the non-linear function relatively increases and changes smoothly so that the gradation is improved. 7A and 7B show examples in which the number of sample points is different for the same input color gamut, and FIG. 7A is suitable for color conversion that prioritizes gradation because the number of sample points is smaller. This method is more suitable for color conversion that prioritizes color accuracy because it has more sample points. Note that the number of sample points to be set is set in advance.

そしてステップS1003において、現在注目する標本点が入力色域の外部にある場合はステップS1004に移行し、入力色域の内部にある場合はステップS1005に移行する。ステップS1004では、標本点を色差最小となる入力色域の表面にクリッピングした後、ステップS1005に移行する。   In step S1003, if the currently focused sample point is outside the input color gamut, the process proceeds to step S1004, and if it is within the input color gamut, the process proceeds to step S1005. In step S1004, the sample point is clipped to the surface of the input color gamut that minimizes the color difference, and then the process proceeds to step S1005.

ステップS1005においては、上記ステップS601で取得したSrcプロファイルとDstプロファイルのLUTにおける対応関係に基づき、四面体補間などの適当な補間法を用いて標本点の出力値を算出する。   In step S1005, based on the correspondence between the Src profile and Dst profile acquired in step S601 in the LUT, the output value of the sample point is calculated using an appropriate interpolation method such as tetrahedral interpolation.

そしてステップS1006において、全ての標本点についての出力値が算出されたか否かを判定する。全ての出力値が算出されている場合は処理を終了し、算出されていない場合はステップS1003へ戻る。   In step S1006, it is determined whether output values for all sample points have been calculated. If all output values have been calculated, the process ends. If not, the process returns to step S1003.

●スプライン関数による色変換
以下、上記ステップS405におけるスプライン関数を用いた色変換、すなわち図5のフローチャートに従って決定されたスプライン係数値を用いた色変換処理について、図11のフローチャートを用いて詳細に説明する。
Color Conversion Using Spline Function Hereinafter, color conversion using the spline function in step S405, that is, color conversion processing using the spline coefficient value determined according to the flowchart of FIG. 5, will be described in detail using the flowchart of FIG. To do.

まずステップS1101において、入力された画像より、あるピクセルのRGB値を読み込む。そしてステップS1102ではSrcプロファイルを用いて、読み込んだRGB値をPCS(L*C*h値)に変換する。そしてステップS1103において、入力されたL*C*h値がステップS602で設定した標本点に囲まれる領域(以下、入力空間とする)内に存在するか否かを判定する。存在する場合はステップS1105へ移行するが、存在しない場合はステップS1104へ移行し、入力されたL*C*h値を色差最小となる入力空間の表面にクリッピングした後、ステップS1105へ移行する。ステップS1105では、入力されたL*C*hをスプライン関数に代入して色を変換する。ここで、入力値を(l,c,h)、出力値を(L,C,H)とすると、スプライン関数は次式のようになる。   First, in step S1101, the RGB value of a certain pixel is read from the input image. In step S1102, the read RGB value is converted into PCS (L * C * h value) using the Src profile. In step S1103, it is determined whether or not the input L * C * h value exists in an area surrounded by the sample points set in step S602 (hereinafter referred to as input space). If it exists, the process proceeds to step S1105. If it does not exist, the process proceeds to step S1104, and the input L * C * h value is clipped to the surface of the input space that minimizes the color difference, and then the process proceeds to step S1105. In step S1105, the input L * C * h is substituted into the spline function to convert the color. Here, assuming that the input value is (l, c, h) and the output value is (L, C, H), the spline function is as follows.

Figure 2007060422
Figure 2007060422

そしてステップS1106ではDstプロファイルを用いて、ステップS1105で算出されたL*C*h値をRGB値に変換する。次にステップS1107において、入力された画像の全ピクセルについて、色変換が施されたか否かを確認する。全ピクセルの色変換が終了していれば処理を終了し、色変換が終了していなければステップS1101に移行する。   In step S1106, the L * C * h value calculated in step S1105 is converted into an RGB value using the Dst profile. In step S1107, it is confirmed whether or not color conversion has been performed for all pixels of the input image. If the color conversion has been completed for all pixels, the process is terminated. If the color conversion has not been completed, the process proceeds to step S1101.

ここで図12A,13Bに、本実施形態のスプライン関数を用いた色変換結果の一例を示す。図12Aは、図5のステップS606で算出されたスプライン係数を利用した場合であり、スプライン関数は設定した標本点を通過するため、精度良く色を算出することが可能である。一方、図12Bは図5のステップS605で算出されたスプライン係数を利用した場合であり、スプライン関数は標本点の変化の傾向を近似する関数となるため、標本点を補間するスプライン関数よりも滑らかな曲線となり、色の階調性が向上する。   Here, FIGS. 12A and 13B show an example of a color conversion result using the spline function of the present embodiment. FIG. 12A shows a case in which the spline coefficient calculated in step S606 in FIG. 5 is used. Since the spline function passes through the set sample points, it is possible to calculate a color with high accuracy. On the other hand, FIG. 12B shows the case where the spline coefficient calculated in step S605 of FIG. 5 is used, and the spline function is a function that approximates the tendency of changes in sample points, and therefore is smoother than the spline function that interpolates sample points. And the tone of the color is improved.

●本実施形態の効果
以上説明したように本実施形態によれば、標本点やスプライン係数などの色変換パラメータを変化させた非線型演算を、所望の色再現を得るための条件を満たすまで繰り返し適用することによって、最終的な色変換パラメータを決定し、色を算出することが可能となる。その繰り返し演算は、一回目に非線型演算から算出された色が、例えば色差ΔE≦10といったの所望の条件を満たすかどうかを判定し、条件を満たさない場合は算出された色に対して二回目の非線型演算を適用する、というように演算を繰り返すことで実現される。このように、非線型演算の繰り返し毎に色変換パラメータを適切に設定することによって、グレイ付近の色再現精度と高彩度の色の階調性を両立する等、複雑な色再現を実現することが可能となり、人間の視覚的に良好な好ましい色再現を得ることができる。
Advantages of the present embodiment As described above, according to the present embodiment, non-linear operations in which color conversion parameters such as sample points and spline coefficients are changed are repeated until a condition for obtaining a desired color reproduction is satisfied. By applying, it is possible to determine the final color conversion parameter and calculate the color. The iterative calculation determines whether the color calculated from the nonlinear calculation for the first time satisfies a desired condition such as a color difference ΔE ≦ 10. If the condition is not satisfied, two colors are calculated for the calculated color. This is realized by repeating the operation such as applying the second non-linear operation. As described above, by appropriately setting the color conversion parameter for each repetition of the non-linear operation, it is possible to realize complicated color reproduction such as compatibility of color reproduction accuracy near gray and gradation of high saturation color. This makes it possible to obtain preferable color reproduction that is visually good for humans.

なお、本実施形態では、基底関数としてB-Spline を用いる例を説明した。しかしながら、基底関数としてはRational B-Spline、Non Uniform Rational B-Spline、Bezier、Rational Bezier等、区分的多項式を用いるあらゆる関数を用いることが可能である。基底関数の局所性が存在するとより望ましいことから、本実施形態では最も代表的なB-Splineを用いる例を示した。   In the present embodiment, an example in which B-Spline is used as a basis function has been described. However, any function using piecewise polynomials such as Rational B-Spline, Non Uniform Rational B-Spline, Bezier, and Rational Bezier can be used as the basis function. Since it is more desirable that the locality of the basis function exists, this embodiment has shown an example using the most representative B-Spline.

また、本実施形態では色を算出する非線型演算を実行する色空間としてL*C*h色空間を用いる例を示した。しかしながら、用いる色空間に何ら制限はなく、CMYK色空間、L*a*b*色空間、JCh色空間、XYZ色空間、xy色空間等を用いることも可能である。さらに、本発明はインク色分解などにも適用可能であり、CMYKに淡シアンならびに淡マゼンタを加えた6次元色空間等も用いることができる。また、色変換の対象となる色空間と、色空間後の色空間は、本実施形態におけるRGB色空間のように同一であっても良いし、異なってもよい。例えば、RGB表色系の画像を入力して色変換した後、CMY表色系の画像を出力してもよい。   In the present embodiment, an example in which the L * C * h color space is used as the color space for executing the nonlinear calculation for calculating the color has been described. However, there is no limitation on the color space to be used, and a CMYK color space, an L * a * b * color space, a JCh color space, an XYZ color space, an xy color space, or the like can be used. Furthermore, the present invention can be applied to ink color separation, and a 6-dimensional color space obtained by adding light cyan and light magenta to CMYK can also be used. Further, the color space to be subjected to color conversion and the color space after the color space may be the same as or different from the RGB color space in the present embodiment. For example, after an RGB color system image is input and color conversion is performed, a CMY color system image may be output.

なお、本発明は変換色の基本的算出方法を実施し、且つ、その算出方法の応用例を示したものである。従って、上記実施形態のような画像の色変換に限らず、上記特許文献1に示されている色修正や色域写像、キャリブレーション等の画像処理に関する様々な用途に応用可能である。   It should be noted that the present invention implements a basic conversion color calculation method and shows an application example of the calculation method. Therefore, the present invention is not limited to image color conversion as in the above-described embodiment, but can be applied to various uses related to image processing such as color correction, color gamut mapping, and calibration described in Patent Document 1.

<他の実施形態>
以上、実施形態例を詳述したが、本発明は例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
<Other embodiments>
Although the embodiment has been described in detail above, the present invention can take an embodiment as a system, apparatus, method, program, storage medium (recording medium), or the like. Specifically, the present invention may be applied to a system composed of a plurality of devices, or may be applied to an apparatus composed of a single device.

尚本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。なお、この場合のプログラムとは、実施形態において図に示したフローチャートに対応したプログラムである。   In the present invention, a software program for realizing the functions of the above-described embodiments is supplied directly or remotely to a system or apparatus, and the computer of the system or apparatus reads and executes the supplied program code. Is also achieved. The program in this case is a program corresponding to the flowchart shown in the drawing in the embodiment.

従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。   Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. In other words, the present invention includes a computer program itself for realizing the functional processing of the present invention.

その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。   In that case, as long as it has the function of a program, it may be in the form of object code, a program executed by an interpreter, script data supplied to the OS, or the like.

プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM,DVD-R)などがある。   As a recording medium for supplying the program, for example, floppy (registered trademark) disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card , ROM, DVD (DVD-ROM, DVD-R).

プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続し、そこから本発明のコンピュータプログラムそのもの(又は圧縮され自動インストール機能を含むファイル)をハードディスク等の記録媒体にダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。   As a program supply method, the following method is also possible. That is, the browser of the client computer is connected to a homepage on the Internet, and the computer program itself (or a compressed file including an automatic installation function) of the present invention is downloaded to a recording medium such as a hard disk. It can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program file for realizing the functional processing of the present invention on a computer is also included in the present invention.

また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせることも可能である。すなわち該ユーザは、その鍵情報を使用することによって暗号化されたプログラムを実行し、コンピュータにインストールさせることができる。   In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to users, and key information for decryption is downloaded from a homepage via the Internet to users who have cleared predetermined conditions. It is also possible to make it. That is, the user can execute the encrypted program by using the key information and install it on the computer.

また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。   Further, the functions of the above-described embodiments are realized by the computer executing the read program. Furthermore, based on the instructions of the program, an OS or the like running on the computer performs part or all of the actual processing, and the functions of the above-described embodiments can also be realized by the processing.

さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、実行されることによっても、前述した実施形態の機能が実現される。すなわち、該プログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことが可能である。   Further, the program read from the recording medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, and then executed, so that the program of the above-described embodiment can be realized. Function is realized. That is, based on the instructions of the program, the CPU provided in the function expansion board or function expansion unit can perform part or all of the actual processing.

本発明に係る一実施形態における色処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the color processing apparatus in one Embodiment which concerns on this invention. 色処理アプリケーションのユーザインタフェース例を示す図である。It is a figure which shows the user interface example of a color processing application. 色算出アプリケーション動作を示すフローチャートである。It is a flowchart which shows color calculation application operation | movement. SrcプロファイルLUTのフォーマット例を示す図である。It is a figure which shows the example of a format of Src profile LUT. DstプロファイルLUTのフォーマット例を示す図である。It is a figure which shows the example of a format of Dst profile LUT. スプライン係数の算出方法を示すフローチャートである。It is a flowchart which shows the calculation method of a spline coefficient. 入力値の円筒座標系を表す図である。It is a figure showing the cylindrical coordinate system of an input value. 標本点の設定例を示す図である。It is a figure which shows the example of a setting of a sample point. 標本点の設定例を示す図である。It is a figure which shows the example of a setting of a sample point. 非周期的なスプライン基底関数を表す図である。It is a figure showing an aperiodic spline basis function. 周期的なスプライン基底関数を表す図である。It is a figure showing a periodic spline basis function. 標本点の設定処理を示すフローチャートである。It is a flowchart which shows the setting process of a sample point. スプライン関数を用いた色算出演算を示すフローチャートである。It is a flowchart which shows the color calculation calculation using a spline function. 色再現性重視のスプライン関数例を示す図である。It is a figure which shows the example of a spline function which emphasizes color reproducibility. 階調重視のスプライン関数例を示す図である。It is a figure which shows the example of a spline function with emphasis on gradation. 一般的な四面体補間における四面体の生成方法を示す図である。It is a figure which shows the production | generation method of the tetrahedron in general tetrahedral interpolation.

Claims (16)

第1の表色系で表現される色信号値を所定の表色系を介して第2の表色系の色信号値に変換する際に、該所定の表色系における第1の色域内の色信号値に対して非線形演算を行うことによって第2の色域内の色信号値を算出する色処理方法であって、
前記第1の色域と前記第2の色域との対応に基づいて標本色を設定する標本色設定ステップと、
該設定された標本色に基づいて、前記非線形演算における係数を設定する係数設定ステップと、
該設定された係数に基づき前記非線形演算を行う演算ステップと、
該演算結果を評価する評価ステップと、を有し、
前記評価ステップにおいて前記非線形演算結果が適切でないと判定された場合に、前記標本色設定ステップを再度実行し、
前記評価ステップにおいて前記非線形演算結果が適切であると判定された場合に、前記係数を決定する
ことを特徴とする色処理方法。
When converting the color signal value expressed in the first color system into the color signal value of the second color system via the predetermined color system, the first color gamut in the predetermined color system A color processing method for calculating a color signal value in a second color gamut by performing a non-linear operation on the color signal value of
A sample color setting step for setting a sample color based on the correspondence between the first color gamut and the second color gamut;
A coefficient setting step for setting a coefficient in the nonlinear calculation based on the set sample color;
A calculation step for performing the nonlinear calculation based on the set coefficient;
An evaluation step for evaluating the calculation result,
When it is determined in the evaluation step that the nonlinear calculation result is not appropriate, the sample color setting step is executed again,
A color processing method comprising: determining the coefficient when it is determined in the evaluation step that the nonlinear calculation result is appropriate.
前記非線形演算は、区分的多項式を基底関数とする多重総和演算であることを特徴とする請求項1記載の色処理方法。   The color processing method according to claim 1, wherein the nonlinear operation is a multiple sum operation using a piecewise polynomial as a basis function. 前記基底関数は、スプライン関数であることを特徴とする請求項2記載の色処理方法。   The color processing method according to claim 2, wherein the basis function is a spline function. 前記基底関数は、B-Spline、Rational B-Spline、Non Uniform Rational B-Spline、Bezier、Rational Bezierのいずれかであることを特徴とする請求項2記載の色処理方法。   The color processing method according to claim 2, wherein the basis function is one of B-Spline, Rational B-Spline, Non Uniform Rational B-Spline, Bezier, and Rational Bezier. 前記標本色設定ステップにおいては前記標本色として、前記第1の色域を包含するように入力値を設定し、該入力値に対して前記第2の色域内の出力値を設定することを特徴とする請求項2乃至4のいずれかに記載の色処理方法。   In the sample color setting step, as the sample color, an input value is set so as to include the first color gamut, and an output value in the second color gamut is set for the input value. The color processing method according to claim 2. 前記係数設定ステップにおいては、
前記標本色設定ステップの実行が初回である場合に、前記標本色の出力値を前記係数として設定する第1の係数設定ステップと、
前記標本色設定ステップの実行が二回め以降である場合に、前記標本色および前記基底関数に基づいて前記係数を算出する第2の係数設定ステップと、
を有することを特徴とする請求項5記載の色処理方法。
In the coefficient setting step,
When the execution of the sample color setting step is the first time, a first coefficient setting step for setting the output value of the sample color as the coefficient;
A second coefficient setting step for calculating the coefficient based on the sample color and the basis function when the sample color setting step is executed after the second time;
The color processing method according to claim 5, further comprising:
前記演算ステップにおいては、前記第1の色域内にある所定色に対して、前記係数設定ステップで設定された係数に基づく前記非線形演算を行うことによって、第3の色域を生成することを特徴とする請求項1乃至6のいずれかに記載の色処理方法。   In the calculating step, a third color gamut is generated by performing the non-linear calculation based on the coefficient set in the coefficient setting step for a predetermined color in the first color gamut. The color processing method according to claim 1. 前記評価ステップにおいては、前記第3の色域を前記第2の色域と比較することによって、前記演算ステップにおける演算結果を評価することを特徴とする請求項7記載の色処理方法。   8. The color processing method according to claim 7, wherein in the evaluation step, the calculation result in the calculation step is evaluated by comparing the third color gamut with the second color gamut. 前記評価ステップにおいては、前記第3の色域と前記第2の色域における明度差、彩度差、色相差、色差、階調のいずれか、或いはその2つ以上の組み合わせを、前記演算結果の評価値として算出することを特徴とする請求項8記載の色処理方法。   In the evaluation step, any one of brightness difference, saturation difference, hue difference, color difference, gradation in the third color gamut and the second color gamut, or a combination of two or more thereof, the calculation result The color processing method according to claim 8, wherein the color processing method is calculated as an evaluation value. 前記係数は、前記第2の表色系の次元に対応した個数であることを特徴とする請求項1乃至9のいずれかに記載の色処理方法。   The color processing method according to claim 1, wherein the coefficient is a number corresponding to a dimension of the second color system. 前記所定の表色系はlch表色系であることを特徴とする請求項1乃至10のいずれかに記載の色処理方法。   The color processing method according to claim 1, wherein the predetermined color system is an lch color system. 第1の表色系で表現される色信号値を所定の表色系を介して第2の表色系の色信号値に変換する際に、該所定の表色系における第1の色域内の色信号値に対して非線形演算を行うことによって第2の色域内の色信号値を算出する色処理装置であって、
前記第1の色域と前記第2の色域との対応に基づいて標本色を設定する標本色設定手段と、
該設定された標本色に基づいて、前記非線形演算における係数を設定する係数設定手段と、
該設定された係数に基づき前記非線形演算を行う演算手段と、
該演算結果を評価する評価手段と、を有し、
前記評価手段で前記非線形演算結果が適切でないと判定された場合に、前記標本色設定手段により再度、標本色を設定し、
前記評価手段で前記非線形演算結果が適切であると判定された場合に、前記係数を決定する
ことを特徴とする色処理装置。
When converting the color signal value expressed in the first color system into the color signal value of the second color system via the predetermined color system, the first color gamut in the predetermined color system A color processing device that calculates a color signal value in the second color gamut by performing a non-linear operation on the color signal value of
A sample color setting means for setting a sample color based on the correspondence between the first color gamut and the second color gamut;
Coefficient setting means for setting a coefficient in the nonlinear calculation based on the set sample color;
A calculation means for performing the nonlinear calculation based on the set coefficient;
Evaluation means for evaluating the calculation result,
When it is determined by the evaluation means that the nonlinear calculation result is not appropriate, the sample color is again set by the sample color setting means,
The color processing apparatus, wherein the coefficient is determined when the evaluation unit determines that the nonlinear calculation result is appropriate.
前記非線形演算は、区分的多項式を基底関数とする多重総和演算であることを特徴とする請求項12記載の色処理装置。   The color processing apparatus according to claim 12, wherein the non-linear operation is a multiple sum operation using a piecewise polynomial as a basis function. 前記基底関数は、スプライン関数であることを特徴とする請求項13記載の色処理装置。   The color processing apparatus according to claim 13, wherein the basis function is a spline function. 情報処理装置上で実行されることによって、該情報処理装置上において請求項1乃至請求項11のいずれかに記載の色処理方法を実現することを特徴とするプログラム。   A program that, when executed on an information processing apparatus, realizes the color processing method according to any one of claims 1 to 11 on the information processing apparatus. 請求項15記載のプログラムが記録されたことを特徴とするコンピュータ可読の記録媒体。   A computer-readable recording medium on which the program according to claim 15 is recorded.
JP2005244743A 2005-08-25 2005-08-25 Color processing apparatus and method thereof Withdrawn JP2007060422A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005244743A JP2007060422A (en) 2005-08-25 2005-08-25 Color processing apparatus and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005244743A JP2007060422A (en) 2005-08-25 2005-08-25 Color processing apparatus and method thereof

Publications (1)

Publication Number Publication Date
JP2007060422A true JP2007060422A (en) 2007-03-08

Family

ID=37923485

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005244743A Withdrawn JP2007060422A (en) 2005-08-25 2005-08-25 Color processing apparatus and method thereof

Country Status (1)

Country Link
JP (1) JP2007060422A (en)

Similar Documents

Publication Publication Date Title
JPH0830772A (en) Apparatus and method for interactive color conversion between color spaces
JP2005295405A (en) Color converting method and image processing apparatus
JP2007181012A (en) Image processor, image processing method, program and recording medium
JP5299232B2 (en) Color conversion table creation program, color conversion table creation device, and color conversion table creation method
JP2009004862A (en) Image processing apparatus
JP2004153554A (en) Method, device and program for mapping color region
JP4044254B2 (en) Color conversion definition creation method, color conversion definition creation device, and color conversion definition creation program storage medium
JP5159565B2 (en) Color processing apparatus and method
JP5074659B2 (en) Color conversion definition creation method, color conversion definition creation device, and color conversion definition creation program
JP2007060422A (en) Color processing apparatus and method thereof
JP2001197323A (en) Method an device for preparing profile
JP2006303785A (en) Image processing apparatus and method
JP4095609B2 (en) Color processing apparatus and method
JP2008072477A (en) Apparatus and method for color processing
JP5084628B2 (en) Image processing method, image processing apparatus, computer program, and storage medium
JP5036495B2 (en) Color processing apparatus and color processing method
JP3934968B2 (en) Color conversion definition creation method, color conversion definition creation device, and color conversion definition creation program
JP2006345101A (en) Color processing method and device therefor
JP2002027270A (en) Color processing method, color processor, and color processing program storing medium
JP2006211579A (en) Color profile producing method and system
JP4943547B2 (en) Color conversion definition creation method, color conversion definition creation device, and color conversion definition creation program
JP2005210740A (en) Manufacturing apparatus and manufacturing method and recording medium of color conversion table
JP4262212B2 (en) Color processing method and apparatus
JP2006128815A (en) Image processor and processing method
JP3866129B2 (en) Color conversion definition creation method, color conversion definition creation device, and color conversion definition creation program

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081104