Local linear regression is used in a variety of data fitting applications. Particular applications within the realm of color imaging include printer and scanner characterization. A typical regression problem involves first gathering a training set of input data points from an input space and corresponding output data points from an output space. For the color characterization application, both input and output spaces are multi-dimensional color spaces. The goal of the regression algorithm is then to derive mappings from every point in the input space to the output space while minimizing error over the training set. An additional consideration is to ensure that the regression does not overfit the data in the sense that it is robust to noise in the training data. Local regression algorithms are often used in situations where a single global fit may be inadequate to approximate complex non-linear transforms, as is typical in printer characterization. Instead, local transforms are derived where the regression parameters vary as a function of the input data point. Locality in regression is achieved by using a weighting in the error minimization function which varies (typically decays) as a function of the distance from the regression data point. Choice of these weight functions is typically intuitively inspired, and not optimized for the training set. This sometimes results in large regression errors especially with sparse training data. A key fundamental question hence remains on how to best use a certain local neighborhood of data points in regression problems.
R. Bala, “Device Characterization”, Digital Color Imaging Handbook, Chapter 5, CRC Press, 2003, is totally incorporated herein by reference in its entirety.
In one embodiment of this disclosure, a regression method for approximating a multidimensional color transformation is disclosed which comprises (a) receiving a set Γ of training samples (xi, yi), 1≦i≦T, where xi represents input color data to the multidimensional color transformation, and yi represents corresponding output color data from the multidimensional color transformation; (b) selecting a parameterized form of a regression function f(x) that approximates the multidimensional color transformation; (c) receiving an input color x; (d) generating a cost function C representing a localized error produced by the regression function f(x) on the training set Γ, where the localized error is a function of both the parameters of f(x) and a shaping function that defines the shape and orientation of a neighborhood of training data localized around the input color x; (e) deriving the parameters of the regression function f(x) and shaping function to jointly minimize the cost function C; and (f) generating an output color y by calculating f(x) using the derived parameters of step (e).
In another aspect of this disclosure, a computer program product, that when executed by a computer, causes the computer to execute a regression method for approximating a multidimensional color transformation is described. The method comprises (a) receiving a set Γ of training samples (xi, yi), 1≦i≦T, where xi represents input color data to the multidimensional color transformation, and yi represents corresponding output color data from the multidimensional color transformation; (b) selecting a parameterized form of a regression function f(x) that approximates the multidimensional color transformation; (c) receiving an input color x; (d) generating a cost function C representing a localized error produced by the regression function f(x) on the training set Γ, where the localized error is a function of both the parameters of f(x) and a shaping function that defines the shape and orientation of a neighborhood of training data localized around the input color x; (e) deriving the parameters of the regression function f(x) and shaping function to jointly minimize the cost function C; and (f) generating an output color y by calculating f(x) using the derived parameters of step (e).
In still another aspect of this embodiment, an image processing method is disclosed for rendering an image on an image output device. The method comprises receiving a device independent color space representation of the image; accessing an inverse characterization transform associated with the image output device to generate a device dependent color space representation of the image, the inverse characterization transform representing the inverse of a multidimensional color transformation associating a plurality of device dependent color space values with a plurality of respective device independent color space values, the multidimensional color transformation generated by performing a method comprising: (a) receiving a set Γ of training samples (xi, yi), 1≦i ≦T, where xi represents input color data to the multidimensional color transformation, and yi represents corresponding output color data from the multidimensional color transformation; (b) selecting a parameterized form of a regression function f(x) that approximates the multidimensional color transformation; (c) receiving an input color x; (d) generating a cost function C representing a localized error produced by the regression function f(x) on the training set Γ, where the localized error is a function of both the parameters of f(x) and a shaping function that defines the shape and orientation of a neighborhood of training data localized around the input color x; (e) deriving the parameters of the regression function f(x) and shaping function to jointly minimize the cost function C; and (f) generating an output color y by calculating f(x) using the derived parameters of step (e).
In yet another aspect of this embodiment, a computer program product is disclosed that when executed by a computer, causes the computer to perform a color transformation for rendering an image on an image output device. The method of deriving the color transformation comprises (a) receiving a set Γ of training samples (xi, yi), 1≦i≦T, where xi represents input color data to the multidimensional color transformation, and yi represents corresponding output color data from the multidimensional color transformation; (b) selecting a parameterized form of a regression function f(x) that approximates the multidimensional color transformation; (c) receiving an input color x; (d) generating a cost function C representing a localized error produced by the regression function f(x) on the training set Γ, where the localized error is a function of both the parameters of f(x) and a shaping function that defines the shape and orientation of a neighborhood of training data localized around the input color x; (e) deriving the parameters of the regression function f(x) and shaping function to jointly minimize the cost function C; and (f) generating an output color y by calculating f(x) using the derived parameters of step (e).
This disclosure provides methods and systems for local regression in deriving color transformations by introducing the notion of “shaping” in the localizing weight function. The disclosed exemplary embodiments include distinct features: 1.) a parameterization of the weight function typically used in local regression problems via a shaping matrix, and 2.) a method to obtain the “optimal” shaping matrix by explicitly introducing the weight function parameters in the regression error measure. Demonstrated experimentally are that significant gains can be made by optimizing “the shaping matrix” in local regression problems. Many color imaging applications including printer and scanner characterization can benefit from the disclosed methods, apparatus and systems. The disclosed exemplary embodiments are particularly advantageous for color devices that employ a large number of color channels, thus inducing a large dimensionality in the characterization data.
Regression is a common technique for estimating a functional relationship between input and output data, and is used frequently to derive color device characterization transformations. The latter typically establish a functional relationship between a device dependent color space and a device independent color space. For printers, examples of device dependent color spaces include CMY, CMYK or CMYKOV, where the symbols stand for Cyan, Magenta, Yellow, Black, Orange, Violet, respectively. For display devices, the prevalent device dependent color space is RGB (or Red, Green, Blue). A common example of a device independent color space is CIELAB. There are two types of color characterization transforms—a forward and an inverse. For output devices, the forward transform maps a device dependent color space to a device independent color space, and conversely, the inverse transform maps a device independent color space to a device dependent color space. In certain applications, the forward transform for one device is concatenated with the inverse transform for another device to produce a “device-to-device” color transformation. The regression techniques and exemplary embodiments described herein can be applied to forward, inverse, or device-to-device characterization transforms.
Linear regression is a specific case where the functional relationship between the input and output spaces is approximated by a linear transform. When the input and output data belong to multidimensional vector spaces, the linear transform is a matrix. Specifically, consider the problem where y in Rm is to be estimated as a function of an input variable x in Rn. Thus we have y≈f(x). Let Γ={(xi, yi), i=1, 2, . . . , T} denote the set of training data over which this response in known. The linear approximation is given by:
y=f(x)=A.x, x ε Rn, y ε Rm, A ε Rm×n (1)
The “best” regression parameter A is determined by minimizing the regression cost function that describes an aggregate error between yi and Axi for the training set.
A variant of this is local linear regression as described in R. Bala, “Device Characterization,” Digital Color Imaging Handbook, Chapter 5. CRC Press, 2003, wherein the matrix A varies as a function of location x in input space. Thus we have
y=f(x)=Ax.x, x ε Rn, y ε Rm, A ε Rm×n (2)
For each input data point x, the “best” regression parameter Ax is determined by minimizing the regression cost function:
In the above cost function, note that it is the presence of weight function w(x, xi) that introduces locality in regression.
The most general requirement is for w(x, xi) to decay as a function of the distance d(x, xi)=∥x−xi∥. A popular instantiation is:
w(x,xi)=e−α(∥x−xi∥2) (4)
The above weight function is plotted in
Limitations of existing local linear regression is now discussed.
The use of such locality inducing weight functions is well-known to significantly help with regression accuracy over using a single “global” regression. The same has also been successfully applied to derive both forward and inverse printer color transforms in R. Bala, “Device Characterization”, Digital Color Imaging Handbook, Chapter 5, CRC Press, 2003.
The notion of locality as in Equation (4) is meaningful from the viewpoint of neighborhood size, i.e. a certain a may be chosen to control the spread of w(x, xi) around x. That said, an important consideration that was previously ignored is shaping of w(x, xi).
To appreciate this, consider, the 2-D function plotted in
It may be seen from
From a visual inspection of the plot in
Detailed next is how this problem may be averted by introducing the notion of “neighborhood shaping.”
In this disclosure, utilized are the use of neighborhood shaping to address the problem discussed above. That is, the crucial observation is made that for a fixed neighborhood size, shaping plays an important role in regression accuracy.
Described now is how to achieve a desired neighborhood shaping. It is observed that for finite-dimensional input spaces, the distance function d(x, xi)=∥x−xi∥ can alternatively be written as
∥x−xi∥2=(x−xi)T(x−xi)
As shown in
Proposed first is a generalization of this distance to:
∥x−xi∥Λ=(x−xi)TΛ(x−xi)
where Λ is a positive definite matrix, which is a requirement to ensure non-negativity of the distance metric for all x, x0.
It is clear now that the contours of this new distance can be generalized to be elliptical. A diagonal Λ with positive unequal diagonal entries results in a hyper-ellipse with different ellipse radii in different dimensions, while non-diagonal choices of Λ allow the control of orientation.
Notably, the local linear transform Ax and the resulting output estimates may vary considerably with different choices of Λ. One possible strategy to optimize Λ is to make it proportional to the sample covariance matrix of the training data.
This disclosure and the exemplary embodiments described herein provide methods to find the best “shape” of the weight function or equivalently Λ for a fixed size/volume. To formally distinguish shape from size, we re-write Λ as follows:
Λ=λSTS; Λ, S ε Rn×n,
where S denotes a “shape matrix” with determinant 1, and λ is a non-negative scalar relating to the size of the local neighborhood.
Given this separation of size and shape the shaping matrix may be solved for optimally by minimizing the regression error:
where w(x, xi)=e−(x−x
subject to det(Λ)=c
c=positive constant
Salient features of the optimization problem in Equation (5) are that (i) in this new setting, Λ or really the shape matrix S as well as the regression parameter matrix Ax are jointly optimized; and (ii) the constraint c placed on the determinant of Λ fixes the size of the neighborhood.
Standard search-based constrained optimization techniques with a suitable choice of a starting point, can be used to determine the optimum S and Ax.
Note finally that although the embodiment and examples have been described for linear regression, in principle the same technique readily extends for nonlinear regression. The elements of the matrix A would be simply replaced by the parameters of the nonlinear approximation function.
Revisiting the regression problem in
With reference to
In the context of a printing system, the image processing regression method illustrated in
To print a particular image, the inverse of the color transformation generated by the method of
To generate the printer characterization transform, computer readable instructions are executed in the following sequence:
Initially, the printer multidimensional color characterization transform generation algorithm starts 2.
Next, receiving a set Γ of training samples (xi, yi), 1≦i≦T, is received where xi represents input color data to the multidimensional color transformation, and yi represents corresponding output color data from the multidimensional color transformation 4.
Next, a parameterized form of a regression function f(x) that approximates the multidimensional color transformation is selected 6.
Next, an input color x is received 8.
Next, a cost function C representing a localized error produced by the regression function f(x) on the training set Γ is generated 10, where the localized error is a function of both the parameters of f(x) and a shaping function that defines the shape and orientation of a neighborhood of training data localized around the input color x.
Next, the parameters of the regression function f(x) and shaping function to jointly minimize the cost function C are derived 12.
Next, an output color y is generated 14 by calculating f(x) using the derived parameters of the regression function f(x) and shaping function to jointly minimize the cost function C.
Finally, the printer multidimensional color characterization transform generation algorithm ends 16.
With reference to
In operation, the printing system receives a digital input 100, represented in device independent color space, and processes 102 the device independent color space representation of the digital input image 100 to generate a pixel representation of the digital input image suitable for printing on printing device 106 to generate a hardcopy output 108 of the digital input image 100.
The image processing path 102 can reside and be executed on a DFE (Digital Front End), and/or the printing device 106. However, as will be understood by those of skill in the art, any computer related device capable of executing instructions can be used to process the image data.
As shown in
After the digital input image is processed by the multidimensional color transformation module to produce device dependent color space representations of the digital input image, the image data is processed according to specific tone reproduction curves 112 and halftoning algorithms 114 to generate pixel data to be rendered on the printing device 106.
It will be appreciated that various of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications. Also that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.
Number | Name | Date | Kind |
---|---|---|---|
5649073 | Knox et al. | Jul 1997 | A |
5781206 | Edge | Jul 1998 | A |
6654143 | Dalal et al. | Nov 2003 | B1 |
7710560 | Holub | May 2010 | B2 |
20020029715 | Ogatsu et al. | Mar 2002 | A1 |
20070139734 | Fan et al. | Jun 2007 | A1 |
Number | Date | Country | |
---|---|---|---|
20100239162 A1 | Sep 2010 | US |