1. Technical Field
The present invention relates to color conversion apparatuses, methods, and programs for performing color conversion of input image data.
2. Related Art
Image display apparatuses capable of displaying images using four or more than four primary colors (hereinafter may also be referred to as “multiple primary colors”) have been known. Since input image data is of three primary colors, such image display apparatuses capable of displaying multiple primary colors convert the image data into image data of the multiple primary colors (e.g., four primary colors). For example, Japanese Unexamined Patent Application Publication Nos. 2000-338950 and 2004-362573 describe methods of dividing a color reproduction region into a plurality of pyramidal regions and calculating the primary colors RGBC in each region. In this case, regions to which the primary colors RGBC belong are obtained by determining whether conditions for the calculated primary colors RGBC are satisfied.
However, the techniques described in the above patent documents may sometimes be unable to perform appropriate color conversion of image data positioned outside the color reproduction region. For example, there may be a gradation discontinuity between image data positioned inside the color reproduction region and image data positioned outside the color reproduction region.
An advantage of some aspects of the invention is that it provides a color conversion apparatus, method, and program, an image processing apparatus, and an image display apparatus with a display device, which are capable of performing appropriate color conversion while suppressing a gradation discontinuity at the boundary of a color reproduction region.
According to an aspect of the invention, there is provided a color conversion apparatus for performing color conversion of input image data in which the number of a plurality of colors used in the input image data is changed to the number of a plurality of colors used in a display device for displaying an image. The color conversion apparatus includes the following elements: a predetermined-point color-conversion-value calculator that calculates color conversion values corresponding to each of a plurality of predetermined points at least including a point outside a color reproduction region that can be displayed by the display device in a color space; and an interpolation calculator that performs the color conversion by performing interpolation calculation on the input image data using the color conversion values corresponding to each of the predetermined points.
The color conversion apparatus described above includes the predetermined-point color-conversion-value calculator and the interpolation calculator and is used to perform color conversion of input image data in which the number of a plurality of colors used in the input image data is changed to the number of a plurality of colors (e.g., four or more) used in a display device for displaying an image. The predetermined-point color-conversion-value calculator calculates color conversion values corresponding to each of a plurality of predetermined points at least including a point outside a color reproduction region. The interpolation calculator performs color conversion by performing interpolation calculation on the input image data using the color conversion values corresponding to each of the predetermined points. According to the color conversion apparatus described above, even when there are predetermined points outside and inside the boundary of the color reproduction region, values outside the color reproduction region are substantially the same, while values inside the color reproduction region change smoothly. Thus, a gradation discontinuity at the boundary of the color reproduction region that occurs upon color conversion can be suppressed, while color reproduction values for the plurality of colors can be accurately calculated.
It is preferable that the plurality of predetermined points at least include a point inside the color reproduction region. Thus, a gradation discontinuity that occurs between inside and outside the color reproduction region can be appropriately suppressed.
It is preferable that the interpolation calculator determine, on the basis of the input image data, a cube defined in the color space by the color conversion values corresponding to each of the predetermined points, obtain tetrahedrons by dividing the cube, and perform the interpolation calculation using the color conversion values corresponding to each of points defining each of the tetrahedrons. Thus, color conversion can be performed by simple processing.
It is preferable that the predetermined-point color-conversion-value calculator perform the calculation based on the color reproduction region divided into predetermined regions.
It is preferable that the predetermined-point color-conversion-value calculator calculate the color conversion values corresponding to each of the predetermined points using a conversion matrix for performing the color conversion in the color reproduction region. It thus becomes unnecessary to impose conditions of constraint to perform calculations, thereby suppressing noise generated by these conditions of constraint and performing highly accurate color conversion.
It is preferable that the conversion matrix be set using approximate points in the color reproduction region divided into predetermined regions.
It is preferable that the color reproduction region defined by N number of plural colors be divided into “N(N−1)−m” predetermined regions by obtaining “N(N−1)” outermost faces of the color reproduction region in the color space, extracting “N(N−1)−m” faces that do not contain black by excluding m (3<m<N) faces that contain black, and using quadrangular pyramids defined by k-th (1≦k≦N−2), (k+1)-th, and (k+2)-th degree colors and black.
It is preferable that the color conversion apparatus further include a linearizer that supplies image data obtained by linearizing the input image data to the predetermined-point color-conversion-value calculator and the interpolation calculator. Thus, accurate color reproduction values can be calculated.
It is preferable that the color conversion apparatus further include a non-linearizer that non-linearizes the color-converted image data. Thus, the display device can be allowed to display an image in an appropriate manner.
It is preferable that the predetermined points be 27 points arranged in a grid in the color space defined by the input colors.
It is preferable that the predetermined points be eight points arranged in a grid in the color space defined by the input colors.
It is preferable that the predetermined-point color-conversion-value calculator and the interpolation calculator output image data using four colors including red, green, blue, and cyan.
It is preferable that the predetermined-point color-conversion-value calculator and the interpolation calculator output image data using four colors including red, green, blue, and white.
It is preferable that the predetermined-point color-conversion-value calculator and the interpolation calculator output image data using five colors including red, green, blue, cyan, and white.
It is preferable that colorant regions of the plurality of colors include, within a visible light region where hue changes according to wavelength, a bluish hue coloration region, a reddish hue coloration region, and two hue coloration regions selected from among hues ranging from blue to yellow.
It is preferable that colorant regions of the plurality of colors include a coloration region where the peak of the wavelength of light passing therethrough is within 415-500 nm, a coloration region where the peak of the wavelength of light passing therethrough is greater than or equal to 600 nm, a coloration region where the peak of the wavelength of light passing therethrough is within 485-535 nm, and a coloration region where the peak of the wavelength of light passing therethrough is within 500-590 nm.
It is preferable that the color conversion apparatus further include a storage device that stores the color conversion values calculated by the predetermined-point color-conversion-value calculator. In this case, it is preferable that the interpolation calculator perform the color conversion based on the color conversion values stored in the storage device.
According to another aspect of the invention, there is provided a color conversion method for performing color conversion of input image data in which the number of a plurality of colors used in the input image data is changed to the number of a plurality of colors used in a display device for displaying an image. The method includes calculating color conversion values corresponding to each of a plurality of predetermined points at least including a point outside a color reproduction region that can be displayed by the display device in a color space; and performing the color conversion by performing interpolation calculation on the input image data using the color conversion values corresponding to each of the predetermined points.
According to a further aspect of the invention, there is provided a color conversion program for allowing a computer to perform color conversion of input image data in which the number of a plurality of colors used in the input image data is changed to the number of a plurality of colors used in a display device for displaying an image. The color conversion program allows the computer to function as predetermined-point color-conversion-value calculating means for calculating color conversion values corresponding to each of a plurality of predetermined points at least including a point outside a color reproduction region that can be displayed by the display device in a color space; and interpolation calculation means for performing the color conversion by performing interpolation calculation on the input image data using the color conversion values corresponding to each of the predetermined points.
According to the color conversion method and the color conversion program (including that recorded on a recording medium) described above, a gradation discontinuity at the boundary of the color reproduction region can be suppressed, and appropriate color conversion can be performed.
According to a still further aspect of the invention, there is provide an image processing apparatus including the following elements: a predetermined-point color-conversion-value calculator that calculates color conversion values corresponding to each of a plurality of predetermined points at least including a point outside a color reproduction region that can be displayed by a display device in a color space; and an interpolation calculator that uses the color conversion values corresponding to each of the predetermined points to perform color conversion of input image data in which the number of a plurality of colors used in the input image data is changed to the number of a plurality of colors used in the display device for displaying an image. According to the image processing apparatus described above, a gradation discontinuity at the boundary of the color reproduction region can be suppressed, and appropriate color conversion can be performed.
The image processing apparatus described above is preferably applicable to an image display apparatus including a display device that displays image data.
The invention will be described with reference to the accompanying drawings, wherein like numbers reference like elements, and wherein:
Preferred embodiments of the invention will be described with reference to the drawings. The case of an image display apparatus capable of displaying an image using four or more than four primary colors (multiple primary colors) will be described hereinafter by way of example.
First Embodiment
A first embodiment of the invention will be described.
Entire Configuration
The image processor 10 includes an interface (I/F) control circuit 11, a color conversion circuit 12, a video random-access memory (VRAM) 13, an address control circuit 14, a table storage memory 15, and a gamma (γ) correction circuit 16. The I/F control circuit 11 obtains image data and a control command from an external source, e.g., a camera, and supplies image data d1 to the color conversion circuit 12. Image data supplied from an external source is of three primary colors R, G, and B.
The color conversion circuit 12 performs table conversion for converting gradation characteristics (hereinafter referred to as “1-dimensional look-up-table (1DLUT) conversion”) of the obtained image data d1 and conversion of the image data d1 in which the three primary colors are changed to four primary colors. In this case, the color conversion circuit 12 refers to data stored in the table storage memory 15 or the like and performs such conversion. Image data d2 that has been processed by the color conversion circuit 12 is written to the VRAM 13. The image data d2 written to the VRAM 13 is read on the basis of a control signal d21 from the address control circuit 14 by the γ correction circuit 16 as image data d3 and by a scanning-line drive circuit 22 in the display device 20 as address data d4. The γcorrection circuit 16 refers to the data stored in the table storage memory 15 or the like and performs γcorrection of the obtained image data d3. The γcorrection circuit 16 supplies γ-corrected image data d5 to a data-line drive circuit 21 in the display device 20.
The display device 20 includes the data-line drive circuit 21, the scanning-line drive circuit 22, and a display panel 23. The data-line drive circuit 21 supplies data-line drive signals X1 to X960 to 960 associated data lines. The scanning-line drive circuit 22 supplies scanning-line drive signals Y1 to Y320 to 320 associated scanning lines. In this case, the data-line drive circuit 21 and the scanning-line drive circuit 22 drive the display panel 23 in synchronization with each other. The display panel 23 includes a liquid crystal display (LCD) or the like and displays characters and images to be displayed in response to voltage application to the scanning lines and the data lines.
The input-side 1DLUT converters 121r to 121b perform 1DLUT conversion (hereinafter referred to as “input-side 1DLUT conversion”) of input image data R0, G0, and B0 using 1DLUT stored in the input-side 1DLUT storage portion 151 (hereinafter referred to as “input-side 1DLUT”). Such input-side 1DLUT conversion is performed to linearize the input image data R0, G0, and B0 because the input image data R0, G0, and B0 have generally been γ-converted by a camera or the like. The image data R0, G0, and B0 correspond to the image data d1 described above. The image data R0 is data corresponding to the primary color red; the image data G0 is data corresponding to the primary color green; and the image data B1 is data corresponding to the primary color blue (hereinafter the reference symbols “R”, “G”, “B”, and “C” with subsequent numerals represent data representing the primary colors). In this manner, the input-side 1DLUT converters 121r to 121b function as a linearizer.
Referring back to
The output-side 1DLUT 123r to 123c perform 1DLUT conversion (hereinafter referred to as “output-side 1DLUT conversion”) of the image data R2, G2, B2, and C2 using 1DLUTs stored in the output-side 1DLUT storage portion 153 (hereinafter referred to as “output-side 1DLUTs”). The output-side 1DLUT converters 123r to 123c output -side-1DLUT-converted image data R3, G3, B3, and C3, respectively, to the VRAM 13. The image data R3, G3, B3, and C3 correspond to the image data d2 described above. In this manner, the output-side 1DLUT converters 123r to 123c function as a non-linearizer.
Color Conversion Method
A color conversion method according to the first embodiment will now be described.
The basic concept of color conversion will be described with reference to FIGS. 5 to 7.
In step S103, straight lines are drawn from black to the k-th, (k+1)-th, and (k+2)-th degree colors on the extracted faces that do not contain black. With these lines and the faces that do not contain black, the color reproduction region is divided to form quadrangular pyramids. Accordingly, the color reproduction region is divided into “N(N−1)−m” quadrangular pyramids.
Next, a color conversion method according to the first embodiment will be described. In the first embodiment, a plurality of predetermined points in a three-dimensional color space are set, and color conversion values (values represented by the primary colors RGBC) corresponding to each of the predetermined points are obtained. The predetermined points, the number of which is finite, are arranged in, for example, a grid in the color space and are set in advance. That is, the plurality of predetermined points include those inside the color reproduction region and those outside the color reproduction region. A space among the plurality of predetermined points covers the color reproduction region defined by the primary colors.
In the first embodiment, color conversion is performed on input image data using color conversion values corresponding to each of predetermined points. Specifically, color conversion is performed by performing interpolation calculation using color conversion values corresponding to each of predetermined points.
In step S201, the color converter 122 calculates color conversion values corresponding to each of a plurality of predetermined points determined in advance. Then, the flow proceeds to step S202. In step S202, the color converter 122 performs color conversion by performing interpolation calculation using the color conversion values corresponding to each of the predetermined points. Then, the process exits from this flow.
FIGS. 9 to 14 specifically illustrate the color conversion process for each of the predetermined points (the processing in step S201).
In step S302, the color converter 122 calculates a gain adjustment value based on the color conversion value for white calculated in step S302. The gain adjustment value is for adjusting color conversion values corresponding to each of predetermined points, which will be described subsequently. When the processing in step S302 ends, the flow proceeds to step S303.
In step S303, the color converter 122 performs the color-conversion-value calculating process for calculating color conversion values corresponding to each of the predetermined points set in advance. Then, the flow proceeds to step S304. In step S304, the color converter 122 adjusts the gain of the color conversion values corresponding to each of the predetermined points using the gain adjustment value calculated in step S302. The color converter 122 outputs the gain-adjusted color conversion values. When the processing described above ends, the process exists from this flow.
The above-described color-conversion-value calculating process will be specifically described.
where n is an integer from 0 to 7.
When the calculated pn, qn, and rn satisfy predetermined conditions (hereinafter referred to as “conditions A”), R2, G2, B2, and C2 are calculated from pn, qn, and rn on the basis of the settings for R2, G2, B2, and C2 in the corresponding region. More specifically, the conditions A are:
Using the conditions A, it is possible to determine whether a point corresponding to pn, qn, and rn is positioned inside a divided quadrangular pyramid represented by n.
In step S401, the image data R1, G1, and B1 are input from the input-side 1DLUT converters 121r to 121b to the color converter 122. The image data R1, G1, and B1 are data corresponding to a predetermined point. Then, the flow proceeds to step S402. In step S402, the color converter 122 uses equation (1) to calculate the three stimuli Xi, Yi, and Zi. Then, the flow proceeds to step S403.
In step S403, the color converter 122 sets the variable n to zero, and the flow proceeds to step S404. In step S404, the color converter 122 uses equation (2) to calculate pn, qn, and rn, and the flow proceeds to step S405. In step S405, the color converter 122 determines whether pn, qn, and rn calculated in step S404 satisfy the conditions A expressed by expressions (3). That is, in step S405, it is determined whether a point corresponding to pn, qn, and rn is positioned in a divided region.
If pn, qn, rn satisfy the conditions A (yes in step S405), the flow proceeds to step S406. In this case, the point corresponding to pn, qn, and rn is positioned in the divided region. In step S406, the color converter 122 calculates R2, G2, B2, and C2 from pn, qn, and rn on the basis of the settings for R2, G2, B2, and C2 in the corresponding region, and outputs the calculated R2, G2, B2, and C2. Then, the process exits from this flow.
If pn, qn, and rn do not satisfy the conditions A (no in step S405), the flow proceeds to step S407. In this case, the point corresponding to pn, qn, and rn is not positioned in the divided region. In step S407, the color converter 122 determines whether the processing on all the divided regions has been completed. In other words, it is determined whether the variable n coincides with the number of primary colors N.
If the processing on all the regions has been completed (yes in step S407), the flow proceeds to step S408. In this case, pn, qn, and rn do not satisfy the conditions A in the cases of all the variables n, while the processing on all the regions has been completed. Thus, the point corresponding to pn, qn, and rn is not positioned inside the color reproduction region. In step S408, the color converter 122 performs a color-conversion-value calculating process for the point outside the color reproduction region (hereinafter this process is referred to as an “out-of-color-gamut calculation process”). When the out-of-color-gamut calculation process ends, the process exits from this flow.
If the processing on all the regions has not been completed yet (no in step S407), the flow proceeds to step S409. In this case, the point corresponding to pn, qn, and rn calculated in the case of the current variable n is not positioned within the color reproduction region, but the processing on all the regions has not been completed yet. Thus, the variable n is changed, and the processing is again performed. Specifically, in step S409, the color converter 122 adds one to the variable n. Then, the flow returns to step S404. That is, the processing described above is performed using the new variable n.
The out-of-color-gamut calculation process described above will be described with reference to FIGS. 12 to 14.
Since the processing in steps S501 to S504 is similar to that in steps S401 to S404 described above, a description thereof is omitted.
In step S505, the color converter 122 determines whether pn, qn, and rn calculated in step S504 satisfy the conditions B expressed by expressions (4). When pn, qn, and rn satisfy the conditions B (yes in step S505), the flow proceeds to step S506. In step S506, the color converter 122 saves the calculated pn, qn, and rn. Then, the flow proceeds to step S508. In contrast, if pn, qn, and rn do not satisfy the conditions B (no in step S505), the flow proceeds to step S507. In step S507, the color converter 122 does not save the calculated pn, qn, and rn. Then, the flow proceeds to step S508. Since the conditions B are less stringent, a plurality of sets of pn, qn, and rn are saved for one predetermined point by repeating the processing in steps S504 to S509.
In step S508, the color converter 122 determines whether the processing on all the divided regions has been completed. In other words, it is determined whether the variable n coincides with the number of primary colors N. If the processing on all the regions has been completed (yes in step S508), the flow proceeds to step S510.
In contrast, if the processing on all the regions has not been completed yet (no in step S508), the flow proceeds to step S509. In this case, pn, qn, and rn calculated in the case of the current variable n do not satisfy the conditions B, but the processing on all the regions has not been completed yet. Thus, the variable n is changed to the next value, and the processing is again performed. Specifically, in step S509, the color converter 122 adds one to the variable n. Then, the flow returns to step S504. That is, the processing described above is performed using the new variable n.
In step S510, the color converter 122 performs an output-value calculating process. Specifically, the color converter 122 selects one set of pn, qn, and rn from among the plurality of sets of saved pn, qn, and rn. When the output-value calculating process is completed, the flow proceeds to step S511. In step S511, the color converter 122 calculates R2, G2, B2, and C2 from the selected pn, qn, and rn, and outputs the calculated R2, G2, B2, and C2. Here, R2, G2, B2, and C2 output from the color converter 122 are values that have not been subjected to a limiter or the like, which will be described subsequently, and that accurately reproduce the three stimuli X, Y, and Z. When the processing described above ends, the process exits from this flow.
In step S601, the color converter 122 obtains a plurality of sets of R2, G2, B2, and C2 from the plurality of sets of saved pn, qn, and rn, and applies a limiter to the obtained sets of R2, G2, B2, and C2. Hereinafter, R2, G2, B2, and C2 that have been subjected to a limiter are denoted as “R21, G21, B21, and C21”, respectively. The phrase “subjected to a limiter” means limiting R2, G2, B2, and C2 less than zero or greater than one to be within a range from zero to one. When the processing in step S601 ends, the flow proceeds to step S602.
In step S602, the color converter 122 calculates three stimuli Xk, Yk, and Zk from a plurality of sets of limiter-applied R21, G21, B21, and C21. Then, the flow proceeds to step S603. In step S603, the color converter 122 calculates errors between the limiter-applied three stimuli Xk, Yk, and Zk and the original three stimuli Xk, Yk, and Zk that have not been subjected to a limiter. In this case, since the plurality of sets of pn, qn, and rn have been saved, there is a plurality of sets of limiter-applied three stimuli Xk, Yk, and Zk. As a result, a plurality of errors are calculated. Then, the flow proceeds to step S604.
In step S604, the color converter 122 selects the minimum errors from among the plurality of errors calculated in step S603. Then, the color converter 122 outputs a set of R2, G2, B2, and C2 for which the errors have been selected. The color converter 122 does not output the limiter-applied R21, G21, B21, and C21, but outputs the R2, G2, B2, and C2 that have not been subjected to a limiter. When the processing described above ends, the process exits from this flow.
The interpolation calculation process (in step S202 of
In the first embodiment, a region determination is performed on input image data in a space defined by predetermined points. On the basis of the region determination result, predetermined points for use in the input image data are selected, and a method for using the predetermined points is determined. More specifically, the region determination includes a first region determination performed at first and a second region determination performed subsequently.
The first cube defined by the 27 predetermined points 160 includes solid bodies Ar10 to Ar17 (hereinafter referred to as “second cubes”) defined by eight predetermined points 160. There are eight second cubes Ar10 to Ar17. In the first region determination, the second cube that contains input image data is selected from among the second cubes Ar10 to Ar17.
The first region determination performed by the color converter 122 will now be described. On the basis of R1, G1, and B1 corresponding to input image data, the color converter 122 selects the second cube Ar14 in which a point indicating the image data is positioned. For example, when the input image data is positioned at a point 170, R1, G1, and B1 are such that “0.5<R1<1”, “0<G1<0.5”, and “0<B1<0.5”. Thus, the color converter 122 selects the second cube Ar14.
More specifically, the color converter 122 uses the conditions shown in the table to determine in which of the regions Ar20 to Ar25 the input image data is positioned. At this time, the color converter 122 obtains predetermined points 160 defining a region that contains the image data. That is, the color converter 122 obtains four points from among the predetermined points t0 to t7 and defines these four points as D0, DA, DB, and D7, respectively. Basically, the point D0 corresponds to the predetermined point t0, and the point D7 corresponds to the predetermined point t7. The color converter 122 calculates weight parameters WT0, WTA, WTB, and WT7 corresponding to the selected region using r1, g1, and b1 (weight calculation). Next, the color converter 122 obtains color conversion values for the predetermined points corresponding to the points D0, DA, DB, and D7 and integrates the weight parameters WT0, WTA, WTB, and WT7 with the associated color conversion values. Then, the color converter 122 adds the integrated values (that is, the color converter 122 calculates the sum of the products).
Specifically, the color converter 122 performs interpolation calculation using the following equations (5) to obtain image data R2, G2, B2, and C2. Equations (5) represent the sum-of-products operations. By calculating R2, G2, B2, and C2 using equations (5), color conversion of the input image data is performed. In equations (5), RD0 to RD7, GD0 to GD7, BD0 to BD7, and CD0 to CD7 represent color conversion values for the predetermined points 160 corresponding to the points D0, DA, DB, and D7.
In step S701, the color converter 122 obtains input image data. Specifically, the color converter 122 obtains R1, G1, and B1 of the input image data. Then, the flow proceeds to step S702. In step S702, the color converter 122 performs the first region determination on the input image data. Specifically, the color converter 122 selects one of the second cubes Ar10 to Ar17 that contains the input image data and reads eight predetermined points defining the selected second cube. Then, the flow proceeds to step S703.
In step S703, the color converter 122 performs the second region determination based on r1, g1, and b1 of the input image data. Specifically, the color converter 122 uses the conditions shown in
In step S704, the color converter 122 specifies predetermined points defining the region selected in step S703. Specifically, the color converter 122 obtains four points from among the predetermined points t0 to t7 and defines these four points as the points D0, DA, DB, and D7, respectively. Then, the flow proceeds to step S705. In step S705, the color converter 122 uses the table shown in
In step S706, the color converter 122 obtains color conversion values for the predetermined points corresponding to the points D0, DA, DB, and D7, integrates the weight parameters WT0, WTA, WTB, and WT7 with the associated color conversion values, and adds the integrated values (the sum-of-products operation). Accordingly, color conversion of the input image data is performed. When the processing described above ends, the process exits from this flow.
According to the first embodiment, color conversion is accomplished by performing color conversion for each predetermined point and interpolation calculation. As has been described above, color conversion values obtained by performing color conversion for each predetermined point are values that have not been subjected to a limiter, and these values accurately reproduce the three stimuli Xi, Yi, and Zi. Weight parameters corresponding to input image data are calculated, and sum-of-products operations are performed using the weight parameters and the color conversion values corresponding to each of the predetermined points. With regard to input image data other than that corresponding to the color conversion values for each of the predetermined points, changes from color conversion values corresponding to a predetermined point to color conversion values corresponding to another predetermined point are smoothed by the weighting. In addition, even when there are predetermined points inside and outside the boundary of the color reproduction region, values outside the color reproduction region are substantially the same, while values inside the color reproduction region change smoothly. Thus, a gradation discontinuity can be suppressed (although the outside values saturate and result in so-called clipping, they are smooth in view of the changes from the inside). Thus, according to the first embodiment, color conversion into multiple primary colors can be appropriately performed.
According to the first embodiment, in the interpolation calculation process (see
The invention is not limited to be applied to the display panel 23 (see
Although the case where there are 27 predetermined points has been described by way of example, the invention is not limited thereto. For example, 125 predetermined points may be used, and each edge may include five predetermined points to form a first cube. In addition, the invention is not limited to the case where predetermined points are set to form a cube. Alternatively, predetermined points may be set to form a rectangular parallelepiped instead of a cube.
The invention is not limited to the case where color conversion for each predetermined point is performed every time image data is input. Alternatively, color conversion values obtained by performing color conversion for each predetermined point may be stored in the table storage memory 15 (the color conversion parameter storage portion 152 to be precise), and color conversion (interpolation calculation) can be performed on input image data by referring to the stored color conversion values.
Second Embodiment
A second embodiment of the invention will be described. In the second embodiment, a color-conversion-value calculating process for calculating color conversion values corresponding to each of predetermined points is different from that in the first embodiment. Specifically, the second embodiment is different from the first embodiment in that color conversion values are calculated using a conversion matrix capable of performing color conversion. Since interpolation calculation similar to that in the first embodiment is performed in the second embodiment subsequent to the calculation of color conversion values corresponding to each of the predetermined points, a description thereof is omitted. Since the configuration of the image display apparatus 100 and the like is also similar to that in the first embodiment, a description thereof is omitted.
In step S801, the image data R1, G1, and B1 are input from the input-side 1DLUT converters 121r to 121b to the color converter 122. The image data R1, G1, and B1 are data corresponding to a predetermined point. Then, the flow proceeds to step S802. In step S802, the color converter 122 uses the above-described equation (1) to calculate the three stimuli Xi, Yi, and Zi. Then, the flow proceeds to step S803.
In step S803, the color converter 122 calculates a matrix for performing color conversion (matrix calculation process), and the flow proceeds to step S804. In step S804, the color converter 122 uses the calculated matrix to obtain R2, G2, B2, and C2 from Xi, Yi, and Zi. That is, the color converter 122 obtains color conversion values corresponding to the predetermined point when the processing described above ends, the process exits from this flow.
In step S901, the color converter 122 obtains “J+1” sets of pre-specified R2j, G2j, B2j, and C2j inside the color reproduction region (j=0, . . . , J). Then, the flow proceeds to step S902. In step S902, the color converter 122 sets a matrix MRGBC based on the obtained R2j, G2j, B2j, and C2j. The matrix MRGBC is expressed as:
Then, the flow proceeds to step S903.
In step S903, the color converter 122 calculates Xj, Yj, and Zj corresponding to R2, G2, B2, and C2 inside the color reproduction region, and the flow proceeds to step S904. In step S904, the color converter 122 uses the calculated Xj, Yj, and Zj to set a matrix MXYZ. The matrix MXYZ is expressed as:
Then, the flow proceeds to step S905.
In step S905, the color converter 122 calculates a matrix M1 from the calculated matrix MRGBC and matrix MXYZ, and the process exits from this flow. The matrix M1 is expressed as:
When the number of primary colors is four including R2, G2, B2, and C2 , the matrix M1 has four rows and three columns and is a matrix for converting Xj, Yj, and Zj to R2, G2, B2, and C2. In other words, the matrix M1 is an inverse matrix of a matrix for converting R2, G2, B2, and C2 to Xj, Yj, and Zj (this matrix is referred to as “MO”). Since the matrix M0 is not a square matrix and it is impossible to directly obtain the inverse matrix of the matrix M0, as shown by equation (8), the matrix M1 is calculated as a pseudo-inverse matrix using a diagonal matrix of the matrix MXYZ.
Using the matrix M1 calculated as described above, the color conversion values corresponding to the predetermined point can be obtained as:
where R2j, G2j, B2j, and C2j are color conversion values corresponding to Xj, Yj, and Zj.
It is preferable that the above-described R2j, G2j, B2j, and C2j be set on the basis of the ratio of allocation of R2j, G2j, B2j, and C2j to Xj, Yj, and Zj. Specifically, it is preferable that R2j, G2j, B2j, and C2j be set by taking into consideration the level of each color component R2j, G2j, B2j, and C2j, the arrangement of RGBC in an image on the image display device, or the like.
Advantages of the second embodiment will now be described. In the first embodiment, the condition of constraint is set on R2, G2, B2, and C2 in each of the divided regions, and thereafter, a calculation is performed. Because of the condition of constraint, the number of variables to be calculated coincides with the number of dimensions, and the calculation result is uniquely obtained. However, there are some cases where the calculation result such as “B2=C2” or “G2=0” reflecting the condition of constraint is obtained. In contrast, the matrix M1 used in the second embodiment has four rows and three columns and is calculated as a pseudo-inverse matrix. Thus, even when conversion based on Xi, Yi, and Zi is performed, no conditions of constraint, such as those in the first embodiment, are imposed on R2, G2, B2, and C2. According to the second embodiment, noise generated by these conditions of constraint (e.g., there may be some sort of unevenness because “G2=0” means that G is turned off or black) is suppressed. Therefore, according to the second embodiment, highly accurate color conversion can be performed.
Also in the second embodiment, color conversion of input image data is performed by performing interpolation calculation using the color conversion values. Thus, a gradation discontinuity that may occur at the boundary of the color reproduction region can be suppressed.
The color conversion value calculation may be performed by combining the methods according to the first and second embodiments. Specifically, color conversion values for certain Xi, Yi, and Zi may be obtained by the method according to the first embodiment using the divided regions, while color conversion values for other Xi, Yi, and Zi may be obtained by the method according to the second embodiment using the matrix. In this case, it is preferable that R2, G2, B2, and C2 for use in the matrix calculation according to the second embodiment be set using the divided regions, as in the method according to the first embodiment. This is to ensure continuity of color conversion values obtained by different methods.
The method of calculating the pseudo-inverse matrix M1 by setting R2, G2, B2, and C2 inside the color reproduction region and obtaining Xi, Yi, and Zi corresponding to R2, G2, B2, and C2 is, in other words, a calculation of the matrix M1 for outputting a set of R2, G2, B2, and C2 corresponding to a set of the input Xi, Yi, and Zi using the least-squares method. Thus, it is also possible that different R2, G2, B2, and C2 be set for different Xi, Yi, and Zi, thereby obtaining different matrices M1 that optimally approximate the associated Xi, Yi, and Zi.
Third Embodiment
A third embodiment of the invention will now be described. The third embodiment is different from the first embodiment in the number of predetermined points set in advance and solid bodies defined by the predetermined points. Specifically, in the third embodiment, eight predetermined points are used, and a cube with each edge having two predetermined points (a cube that has a predetermined point only at each vertex) is used. Unlike in the first embodiment, there is no difference between the first and second cubes, and there is only one cube. According to the third embodiment, instead of performing both the first region determination (see step S702 in
Also in the third embodiment, the eight predetermined points 260 are defined as “t0 to t7”. The position (coordinates) of the input point 270 within the cube is defined as “r1, g1, b1”. As in the first embodiment, the cube is divided into tetrahedrons defined by the predetermined points t0 and t7 and two points selected from among the predetermined points ti to t6 (see
In step S1001, the color converter 122 obtains input image data. Specifically, the color converter 122 obtains R1, G1, and B1 of the input image data. Then, the flow proceeds to step S1002. In step S1002, the color converter 122 performs the region determination of the input image data. Specifically, the color converter 122 determines in which of the regions Ar20 to Ar25 (see
In step S1003, the color converter 122 specifies predetermined points defining the region selected in step S1002. Specifically, the color converter 122 obtains four points from among the predetermined points t0 to t7 and defines these four points as the points D0, DA, DB, and D7, respectively. Then, the flow proceeds to step S1004. In step S1004, the color converter 122 uses the table shown in
In step S1005, the color converter 122 obtains color conversion values for the predetermined points corresponding to the points D0, DA, DB, and D7, integrates the weight parameters WT0, WTA, WTB, and WT7 with the associated color conversion values, and adds the integrated values (the sum-of-products operation). Accordingly, color conversion of the input image data is performed. When the processing described above ends, the process exits from this flow.
Also in the third embodiment, color-conversion-value calculation serving as linear interpolation calculation can be accurately performed, and a gradation discontinuity between inside and outside the color reproduction region can be suppressed. In the third embodiment, the first region determination and the reading of the predetermined points (see step S702 in
Fourth Embodiment
A fourth embodiment of the invention will now be described. According to the fourth embodiment, the components of the multiple primary colors are different. That is, the fourth embodiment is different from the first embodiment in that white (hereinafter may also be abbreviated as “wh”) is used in the fourth embodiment instead of cyan. According to the fourth embodiment, methods similar to those according to the first to third embodiments are employed to perform color conversion for each predetermined point and interpolation calculation (see
The color converter 122a uses color conversion parameters stored in the color conversion parameter storage portion 152a to convert the supplied image data R1, G1, and B1 in which the three primary colors are changed to the four primary colors. Specifically, the color converter 122a performs color conversion in which the three primary colors RGB are changed to the four primary colors RGBWh additionally including white. The color converter 122a supplies color-converted image data R2, G2, B2, and Wh2 to the output-side 1DLUT converters 123r to 123wh, respectively. In this manner, the color converter 122a functions as a color-conversion-value calculator and a color converter.
The output-side 1DLUT 123r to 123wh perform output-side 1DLUT conversion of the image data R2, G2, B2, and Wh2 using the output-side 1DLUTs stored in the output-side 1DLUT storage portion 153a. The output-side 1DLUT converters 123r to 123wh output output-side-1DLUT-converted image data R3, G3, B3, and Wh3, respectively, to the VRAM 13. In this manner, the output-side 1DLUT converters 123r to 123wh function as a non-linearizer.
As has been described above, according to the fourth embodiment, the primary color reproduction values can be appropriately calculated by similarly performing color conversion for each predetermined point and interpolation calculation using the primary colors existing inside the RGB chromaticity. Thus, a gradation discontinuity at the boundary of the color reproduction region can be suppressed. Since the surface brightness is enhanced by using white as one of the primary colors, an image display apparatus that can display bright images can be achieved.
Fifth Embodiment
A fifth embodiment of the invention will now be described. According to the fifth embodiment, the components of the multiple primary colors are different. That is, the fifth embodiment is different from the first embodiment in that five primary colors including cyan and white in addition to RGB are used in the fifth embodiment. According to the fifth embodiment, methods similar to those according to the first to third embodiments are employed to perform color conversion for each predetermined point and interpolation calculation (see
The color converter 122b uses color conversion parameters stored in the color conversion parameter storage portion 152b to convert the supplied image data R1, G1, and B1 in which the three primary colors are changed to the five primary colors. Specifically, the color converter 122b performs color conversion from the three primary colors RGB to the five primary colors RGBCWh additionally including cyan and white. The color converter 122b supplies color-converted image data R2, G2, B2, C2 , and Wh2 to the output-side 1DLUT converters 123r to 123wh, respectively. In this manner, the color converter 122b functions as a color-conversion-value calculator and a color converter.
The output-side 1DLUT 123r to 123wh perform output-side 1DLUT conversion of the image data R2, G2, B2, C2 , and Wh2 using the output-side 1DLUTs stored in the output-side 1DLUT storage portion 153b. The output-side 1DLUT converters 123r to 123wh output output-side-1DLUT-converted image data R3, G3, B3, C3, and Wh3, respectively, to the VRAM 13. In this manner, the output-side 1DLUT converters 123r to 123wh function as a non-linearizer.
As has been described above, according to the fifth embodiment, the primary color reproduction values can be appropriately calculated by similarly performing color conversion for each predetermined point and interpolation calculation using the five primary colors RGBCWh. Thus, a gradation discontinuity at the boundary of the color reproduction region can be suppressed. Since cyan is used as one of the primary colors, vivid images can be displayed. Since white is used as one of the primary colors, the surface brightness can be enhanced. As a result, an image display apparatus that can display vivid and bright images can be achieved.
Modifications
The invention is not limited to the case where color conversion is performed by executing the color conversion program stored in the computer 50. Alternatively, the computer may read the color conversion program stored on a recording medium (optical disk or the like) to function as color-conversion-value calculating means and color conversion means, thereby performing color conversion for each predetermined point and interpolation calculation described above.
The invention is also applicable to an image display apparatus using primary colors (e.g., six primary colors), the number of which is greater than four or five. The invention is also applicable to an image display apparatus that does not include a VRAM.
The invention is not limited to the image display apparatus including an LCD. The invention is also applicable to an image display apparatus that performs planar display, such as a cathode-ray tube (CRT), a plasma display panel (PDP), an organic light-emitting diode (OLED), or a field emission display (FED), or to an image display apparatus that performs projection, such as a liquid crystal polymer (LCP) or a projection television (PTV)
Although the case where the plural colors used by the display device for displaying images include the primary colors such as R, G, B, and C has been described by way of specific example, the plural colors include, in addition to RGB, yellow (Y), cyan (C), and magenta (M) which are complementary colors of RGB, and intermediate colors, such as yellow green or dark green, between RGB and YCM.
Other Embodiments
Although the case where the plural colors (coloration regions) include RGBC has been described by way of example, the invention is not limited thereto. The above-described color conversion may be performed when one pixel includes coloration regions of other four colors.
In this case, the four coloration regions include, within a visible light region (380 to 780 nm) where hue changes according to wavelength, a bluish hue coloration region (may also be referred to as a “first coloration region”), a reddish hue coloration region (may also be referred to as a “second coloration region”), and two hue coloration regions selected from among hues ranging from blue to yellow (may also be referred to as a “third coloration region” and a “fourth coloration region”). The word “-ish” is used because, for example, the bluish hue is not limited to pure blue and includes violet, blue green, and the like. The reddish hue is not limited to red and includes orange. Each of the coloration regions may be formed by using a single coloration layer or by stacking a plurality of coloration layers of different hues. Although the coloration regions are described in terms of hue, hue is the color that can be set by appropriately changing the saturation and the value.
The specific range of each hue is as follows:
The coloration regions do not use the same hue. For example, when greenish hues are used in the two coloration regions selected from among hues ranging from blue to yellow, a green hue is used in one region, while a bluish hue or a yellow greenish hue is used in the other region.
Accordingly, a wider range of colors can be reproduced, compared with known RGB coloration regions.
By way of another specific example, the coloration regions may be described in terms of the wavelength of light passing therethrough:
By way of another specific example, the four coloration regions may be described in terms of the x, y chromaticity diagram:
When sub pixels are provided with transmission regions and reflection regions, the four coloration regions are also applicable to the transmission regions and the reflection regions within the above-described ranges.
When the four coloration regions in this example are used, an LED, a fluorescent lamp, or an organic electro-luminescence (organic EL) may be used as a backlight for RGB light sources. Alternatively, a white light source may be used. The white light source may be one generated using a blue illuminator and an yttrium aluminum garnet (YAG) phosphors.
Preferably, the RGB light sources are as follows:
Specifically, the four coloration regions may include:
The entire disclosure of Japanese Patent Application No. 2005-303379, filed Oct. 18, 2005 and 2005-297057, filed Oct. 12, 2005 are expressly incorporated by reference herein.
Number | Date | Country | Kind |
---|---|---|---|
2005-297057 | Oct 2005 | JP | national |
2005-303379 | Oct 2005 | JP | national |