An image processing system

Abstract: An image processing system (10,20) comprises a framestore (11) or other source of image data in a first colour format (RGB) and is arranged to convert the data into data representing at least one colour separation. A colour rotator 14, such as a colour transform matrix, is provided for rotating on a pixel-by-pixel basis the first colour format data (RGB) into data in a second colour format (NPQ) selected such that one of the colours thereof corresponds to the colour of the at least one colour separation. A look-up table (15) determines from the most significant parts of the data from the rotator (14) a range of colour values in the second colour format which includes the value of the colour separation pixel. An interpolator (16) receives data defining the range of values from the look-up table and in response to the least significant parts of the data from the colour rotator (14) interpolates the data from the look-up table to determine the value of the colour separation pixel. One described embodiment is concerned with generating separation data representing colour separations for use in printing. Another described embodiment is concerned with generating separation data representing a chroma key signal for use in combining two video signals.

Description: The invention relates to an image processing system and to a method of converting image data representing a colour value in a first plural-colour format into data representing a separation value of one or more respective colour separations. In electronic image processing system images are normally defined by data representing an array of picture elements with each picture element being defined in terms of its red, green and blue content. Any three colour components could in fact be used to represent a picture element but red, green and blue are chosen because in electronic image processing systems a television-type monitor is usually provided for display of an image and the colours red, green and blue correspond to the three colour phosphors used in a TV-type monitor. The screen of a monitor is usually dark (black) and during the display of an image the phosphors are stimulated to emit red, green and blue light components which are summed in the eye of a person viewing the monitor and thereby seen as the appropriate colour by the viewer. Thus, the red, green, blue (RGB) colour format is an additive colour format. Electronic image processing systems are also used to process images prior to printing. Images are usually printed onto white paper and in order to achieve the correct colour when the printed image is viewed inks are used to absorb light which would otherwise reflect from the white paper, thereby leaving only the unabsorbed light to be seen as the appropriate colour by the viewer. In printing, cyan, magenta and yellow inks are used with cyan ink absorbing the colour red, magenta ink absorbing the colour green and yellow ink absorbing the colour blue. The cyan, magenta, yellow (CMY) colour format is a subtractive colour format. In theory any colour can be represented completely in terms of RGB components or CMY components and can be converted between the RGB and CMY formats, without any loss of colour or other information, by way of a matrix transform of the form: (CMY) = (a b c) (R) (d e f) (G) (g h i) (B) where a to i are constants. Electronic integrated circuits designed to perform such a transform at high speed are readily available. In practice there are several limitations in the printing process which will result in true CMY data not producing a printed image containing the correct colour. Firstly, the cyan, magenta and yellow inks that are available for printing are not perfect absorbers of red, green and blue light respectively. As a result darker areas of the image will not tend to be seen as black (all colours absorbed) but will instead tend to be seen as a dark purple or brown colour. Secondly, in dark areas relatively large amounts of all three inks should be used to create the dark colour, but laying large amounts of different coloured inks onto a single area of paper often results in the ink smearing and can result in a greater amount of ink being applied to the paper than the paper has the capability to absorb. Thirdly, thick deposits of ink are hard to dry on high speed presses. Fourthly, the cost of ink is significant and using large quantities of ink to represent a single colour increases the cost of printing. One way in which the problem of printing darker areas in an image can be overcome is to use black as a fourth colour in the printing process. Black text is usually required in conjunction with printed images and therefore a black ink is already available for use in the printing of the image. The image separation for black is combined with the black text on a single printing plate thereby enabling image black to be applied to the paper at the same time as the text during printing. There is, however, a problem with this approach in that simply adding black to the printed image will result in an overall darkening of the image and in order to compensate for this darkening the CMY ink separations must be suitably adjusted. A simplistic approach to this problem would be to allocate on a picture point-by-point basis a value of black equal to the smallest of the C, M and Y values to subtract said smallest value from each of the C, M and Y values. This approach is illustrated graphically in Figures 1(a) and 1(b) of the accompanying drawings. The graph in Figure 1(a) represents the C, M and Y ink values for a pixel in an image. The magenta M ink has the least value (MIN) of the three inks. The graph in Figure 1(b) represents C,M,Y and K (black) ink values for the same pixel in the same image. In the graph of Figure 1(b) the value MIN has been subtracted from each of the C, M and Y ink values, and consequently the magenta M ink value is zero, and a black ink K having a value equal to the value MIN has been added to the set of inks. Whilst fine in theory, this point-by-point black (K) value allocation does not work well in practice. As mentioned hereinabove, when the three CMY colour inks are combined they do not produce the colour black but a black ink does of course produce the colour black and therefore the absorbtion of the black ink must be different to that of the three CMY colour inks in combination. This difference in absorbtion must be compensated for. There is, however, a problem with colour compensation related to the imperfect colour absorbtion characteristics of the ink. Each of the three CMY colour inks absorbs a respective band of frequencies of light, and these bands must overlap otherwise there would be frequencies which were not absorbed at all. In the regions where the bands overlap, both inks absorb light. Any given level of light absorbtion in a region where two inks overlap can be achieved by any one of many different mixes of the two inks or by a single amount of black ink. If the absorbtion is assumed to be caused by one of the two inks the effect of compensating by replacing that ink with black ink will be to move the colour balance of the overall picture away from the colour of that one ink. Similarly, the selection of one mix will result in one perceived colour balance and the selection of another mix will give another perceived colour. Furthermore, the colour frequency at one picture point will most likely not be the same as the colour frequency at another picture point and therefore the absorbtion and the mix of inks by which it is achieved will also differ between the two points. The amount of each ink in the mix at a given point depends on the absorbtion characteristics of the CMY and K inks and since these characteristics are complex it is not possible to solve the problem by way of an algorithmic approach. An empirical solution is therefore used in which a test sheet containing a large number of different mixes or combinations of CMY and K inks is printed and each of the different colours thus created are then measured. This enables a set of transfer functions to be produced which represent the actual effect of changing the combination of inks on the colour. The transfer functions provide for every colour a respective CMYK ink combination which has been found to produce the colour when applied to paper. Four exemplary transfer functions, one for each CMYK colour separation, are shown in Figure 2 of the accompanying drawings. The transfer functions are defined such that for each possible input colour, which may be represented by data in RGB format or any other desired format, there is one output colour separation value. Thus, an input colour of value x for example, will give a cyan separation value of a, a magenta separation value of b, a yellow separation value of c and a black separation value of d. The curves representing the four transfer functions in Figure 2 are of arbitrary form drawn purely for the purpose of explanation and have no special significance. In practice the exact form of the transfer function curves will depend on the characteristics of the inks to be used in printing. The transfer functions can be used to create a look-up table which in response to input data representing any given colour will output data representing a combination of CMYK inks which will produce the colour on paper. The input colour data can be in CMY or RGB format, or indeed any other format which uniquely defines the input colour, for example the YUV luminance and chrominance definition used in broadcast television, because a look-up table can be created with equal ease for any colour data format. The look-up table performs a three dimensional colour look-up operation and for this reason the table is referred to as a colour cube. In principle a colour cube offers a perfect solution to the above mentioned problems because for any desired colour an ink combination which results in a perfect match is provided. However, in practice the large amounts of data required to define the combinations for every colour mean that a full look-up table is prohibitively expensive to produce. In a digital processing system each R, G and B or C, M, Y and K colour component is usually represented by an eight bit binary number and therefore a three component colour representation, e.g. RGB or CMY, is effectively defined by a twenty-four bit binary number. Such a number enables 2 24 , i.e. 16,777,216 or 16M, different colours to be defined. A complete look-up table would therefore contain 16M entries for each colour separation or ink and since printing normally uses four CMYK inks a complete look-up table for full colour printing would require 64M entries to provide for each input colour four eight-bit binary numbers, one for each of the CMYK separations. Even with modern memory devices the cost of building such a large look-up table is high. Looking at the transfer functions in Figure 2 of the accompanying drawings, it will be noted that between relatively close points, for example points P1 and P2 in the cyan transfer function of Figure 2(a), the complex transfer curves change in a continuous smooth and predictable manner. It is possible to take advantage of this fact in order to reduce the size of the look-up table to more cost effective proportions. Turning to Figure 3 of the accompanying drawings there is shown a known system 1 comprising a look-up table 2 and an interpolator 3. As shown in Figure 3 the desired colour is defined in terms of RGB colour components with each component being represented by an eight-bit binary number. The four most significant bits (bits 4-7) of each of the RGB colour components are input to the look-up table 2. Since only the four most significant bits of the RGB colour component data is used the colour definition is relatively coarse. The look-up table is therefore arranged to output two values for each of the CMYK colour components, the two values of each component defining a range of colour within which the desired colour is located. The two values for each of the CMYK colour components are represented by the symbols C + and C - , M + and M - , Y + and Y - and K + and K - in Figure 3 and between them define the corners of a cube in CMYK colour space. Figure 4 of the accompanying drawings shows a cube 4 in CMY colour space having corners at coordinate positions defined by the values C + and C - , M + and M - , Y + and Y - . The black K axis is not shown in Figure 4 but it should be noted that the values K + and K - are used in a similar manner as the other colour component values to delimit the volume in colour space. The actual colour defined by the input RGB colour data is at a point P somewhere within the cube 4 and the exact coordinates of the point can be determined by interpolating between the values C + and C - , M + and M - , Y + and Y - and K + and K - , the values being input to the interpolator 3. The four least significant bits (bits 0-3) of the RGB colour component data are also input to the interpolator 3 and are used therein to calculate interpolation weighting coefficients which are applied to the values C + , C - and M + , M - and Y + , Y - , and K + , K - to find the exact values of C,M,Y and K that represent the colour at the point P. An image reproducing method and apparatus which uses this approach is described in GB-A-1369702. There is, however, a problem with this approach which shows up particularly in the black (K) separation and is caused by errors which are inherent in the interpolation. Consider, by way of example, a look-up table arranged to generate values of K using an approach similar to that described hereinabove with reference to Figure 1. That is to say, the look-up table is arranged such that the output value of K corresponds to the lowest of the values of the C, M and Y components. Assume that the data representing each colour component comprises eight bits (giving a total of 256 different values for each component) and that a four-bit look-up table is used. For a point P whose true position is C = M = Y = 40 the look-up table will provide for each colour component a value above (i.e. 48) and a value below (i.e. 32) the true position. Thus, the look-up table will define a cube in colour space having a diagonal axis between the points (32, 32, 32) and (48, 48, 48). At each corner of the cube the value of K is the smallest of the CMY coordinate values, as is shown in the following table: C M Y K 32 32 32 32 48 32 32 32 32 48 32 32 48 48 32 32 32 32 48 32 48 32 48 32 32 48 48 32 48 48 48 48 It can be seen from the table that with the exception of the corner of the cube at coordinates (48, 48, 48) the value of K at each point identified by the interpolator is 32. At the point (48, 48, 48) the value of K is 48. An interpolation algorithm for locating the value of K at the centre of the cube, i.e. at the point P, will give equal weighting to the value of K at each of the eight corners of the cube. This will give a value of K = (32 x 7 + 48)/8 = 34. The actual value of K at the point P should be 40 and therefore there is an error of 6. In a total of 256 possible levels an error of six levels corresponds to approximately 2.3%, which is not trivial. The same problem manifests itself in another way as will now be explained with reference to Figure 5 of the accompanying drawings. As mentioned hereinabove any given colour in a three colour system can be achieved by any one of many different mixes of two or more colours in a four colour system. The effect that this has on the relationship between any one input colour, say red, and any one output colour, say black, is shown in the exemplary transfer function between red (Rin) and black (Kout) in Figure 5 of the accompanying drawings. Line 5 shows for fixed values of green G and blue B the transfer function between Rin and Kout. If the fixed value of green is increased to G+1 then the transfer function will move to a new position depicted by the line 6 in Figure 5 and, similarly, if instead the fixed value of blue is increased to B+1 the transfer function will occupy the position of the line 7. In the interpolation to find the value K the interpolator is required in effect to interpolate along multiple transfer function lines. This means that several simultaneous equations must be solved in order to arrive at the value K but there are too many unknown variables for this to be achieved in practice. The interpolator 3 is therefore arranged to provide values for C, M, Y and K based on several assumptions about the colours. It will be appreciated that this does not always give an entirely satisfactory solution. One solution to the problem of interpolation errors is proposed in GB-A-2053619. This solution is complex and relies on an approach based on overcoming the errors rather than solving the underlying problems which cause the errors to be generated in the first place. GB-A-2260669 shows a method and apparatus for transforming colour signals using a look-up table and interpolation in which the hexahedron of an object to be interpolated is divided into six tetrahedrons each passing through one of eight lattice points constituting the hexahedron of the interpolated object, and different combinations of interpolation data are assigned to the tetrahedrons in one-to-one correspondence. US-A-4864388 shows a chroma key colour discriminator in which orthogonal colour signals B-Y and R-Y are rotated through an angle  corresponding to a desired chroma keying signal. The rotated signals are processed to enhance the selectivity of the discriminator. According to one aspect of the invention there is provided a digital image processing system for converting image data representing a colour value in a first plural-colour format into data representing a separation value of one or more respective colour separations, the data defining a multiplicity of pixels which together form a colour image, the system comprising: first transforming means for transforming pixel-by-pixel said image data in said first plural-colour format to produce data in a second plural-colour format different than said first plural-colour format and selected such that one or more of the colours of the second plural-colour format respectively corresponds substantially with one or more colours of the one or more colour separations; and second transforming means for determining for each pixel from most significant parts of the data in said second plural-colour format range data defining a range of values, and for calculating from the range data using least significant parts of the data in the second plural-colour format separation data, the second transforming means thereby producing on a pixel-by-pixel basis a separation value for the one or more colour separations. According to another aspect of the invention there is provided a method of converting image data representing a colour value in a first plural-colour format into data representing a separation value of one or more respective colour separations, the data defining a multiplicity of pixels which together form a colour image, the method comprising: transforming pixel-by-pixel said image data in said first plural colour format to produce data in a second plural-colour format different than said first plural-colour format and selected such that one or more of the colours of the second plural colour format respectively corresponds substantially with one or more colours of the one or more colour separations; determining for each pixel from most significant parts of the data in said second plural-colour format range data defining a range of values; and calculating from the range data using least significant parts of the data in the second plural-colour format separation data, thereby producing a separation value for the one or more colour separations on a pixel-by-pixel basis. The above and further features of the invention are set forth in the appended claims and together with advantages thereof will become clearer from consideration of the following detailed description of exemplary embodiments of the invention given with reference to the accompanying drawings. In the drawings: Figure 1 shows two graphs illustrating the representation of a single colour by two different colour mixes, as already discussed hereinabove; Figure 2 shows four graphs representing exemplary transfer functions from a colour to a colour separation, as already discussed herein; Figure 3 is a schematic diagram of a known processing system as described hereinabove; Figure 4 shows a colour cube in CMY colour space, as previously discussed herein; Figure 5 shows a further transfer function which is discussed hereinabove; Figure 6 is a schematic diagram of a system embodying the invention; Figure 7 shows sets of axes representing the manner in which colour data may be rotated by the system of Figure 6; Figure 8 shows the effect on a colour cube of rotating colour data to align with an ink axis; Figure 9 is a schematic diagram of another system embodying the invention, the system being suitable for use in chroma keying; Figure 10 is a graph showing contributions to a blue key by red colour components; Figure 11 is a graph showing how a part of the system of Figure 9 affects the data represented by the graph in Figure 10; and Figure 12 is a graph showing how another part of the system of Figure 9 affects the data represented by the graph in Figure 11. Turning now to Figure 6 of the accompanying drawings there is shown an image processing system 10 which embodies the invention. The system 10 comprises a framestore 11 for storing digital data representing an image in one colour format, for example red, green, blue (RGB) separation data, and a drawing processor 12 controlled by way of a user operable stylus and touch tablet device 13. The digital data stored in the framestore 11 represents a large number of picture elements (pixels) which together form the image. Each pixel is represented by three bytes (8-bits) of data, one for each of the red, green and blue (RGB) colour components. Of course, the data need not represent RGB components and may instead represent luminance (Y) and chrominance (UV) components or cyan, magenta, yellow (CMY) components for example. The framestore 11, drawing process 12 and touch tablet 13 together form a source of image data and may be replaced by any other suitable source of image data such as an off line bulk data store, a television camera or an image scanner for example. RGB image data from the store 11 is input to a colour rotator 14 which converts the RGB data into image data in another colour format of arbitrary colours NPQ with each colour component N, P and Q of each pixel being represented by an 8-bit byte. Any colour can be represented by a line in colour space. Thus, for example, the purple colour on the wrappers of some chocolate bars is printed using a single ink and lies along one line positioned in colour space, the intensity of the colour increasing in one direction along the line and decreasing in the other direction along the line. Similarly, the green colour found on some packets of frozen food is produced with a single ink and can be represented by another line in colour space. The NPQ colour data comprises colour data representing at least three colours, chosen so that the axis of at least one of the colours corresponds to a line in colour space representing the colour of an ink that is to be used in printing the image. The colour rotator 14 effects a matrix transform of the form: (NPQ) = (a b c) (R) (d e f) (G) (g h i) (B) A matrix circuit suitable for performing this transform is described in our European patent application published as EP-A- 245943. Data output from the colour rotator is applied to a look-up table 15 and an interpolator 16. As in the prior art system 1 shown in Figure 3 of the accompanying drawings, the four most significant bits (bits 4-7) of the NPQ date are input to the look-up table 15 and the four least significant bits (bits 0-3) are input to the interpolator 16. The look-up table 15 provides data defining a volume in colour space in terms of N, P and Q coordinates in which the required colour is located. The colour coordinate data from the look-up table 15 is interpolated by the interpolator 16, under the control of the least significant bits of the NPQ date which is used to define interpolation coefficients, to identify the actual position of the required colour. The RGB data from the framestore 11 is rotated into the NPQ format once for each of the NPQ colours such that on each rotation one of the NPQ axes is aligned with the line in colour space corresponding to the colour of an ink to be used in printing the image. The system 10 comprises a library 17 of coefficients sets which supplies coefficient data to the colour rotator 14 and the look-up table 15. The coefficient data controls the manner in which the colour rotator rotates the RGB format data into NPQ format data. For each rotation from RGB to an NPQ colour separation different coefficient data will usually be loaded from the library 17 and the rotations will usually be different. The manner in which the colour data is rotated in the rotator 14 is depicted in Figure 7 of the accompanying drawings. The coordinate system for the RGB data is represented by a set of RGB axes having an origin 18 positioned in colour space at R = G = B = 0, i.e. black. For the purpose of illustration it will be assumed that three inks, ink N , ink P and ink Q are to be used in the printing of the image. The three inks are represented by three lines 19, 20, 21 respectively in colour space. For a given pixel the RGB data is rotated three times, once for each of the three inks so that following each rotation one of the NPQ axes is aligned with one of the lines 19, 20, 21. Thus, for ink N the RGB data is rotated into NPQ data having a coordinate system represented by a set 22 of axes N N , P N , Q N with the axis N N aligned with the line 19 corresponding to the colour of the ink N . Similarly, for ink P the RGB coordinate system is rotated into NPQ coordinate system represented by a set 23 of axes N P , P P , Q P with the axis P P aligned with the line 20 corresponding to the colour of ink P and for ink Q the RGB axes 18 are rotated onto a set 24 of axes N Q , P Q , Q Q such that Q Q is aligned with the line 21, corresponding to the colour of ink Q . The effect of rotating the colour data before it is applied to the look-up table is to change the form of the data from three primary terms R, G and B, each of equal weight, to one primary term, say N, and two correction terms, say P and Q. When the NPQ data is applied to the look-up table the table outputs data which represents a volume in colour space of a form similar to that depicted in Figure 8 of the accompanying drawings. Figure 8 shows a portion 19' of the line representing the colour of ink N . The look-up table outputs a set of coordinates which together define a volume 25 in colour space. The volume 25 has a major axis which lies along the ink N line 19' and two minor axes parallel to the axes P N and Q N . The majority of the data is concerned with the colour N and interpolation of the NPQ data will give a value of ink N to a high degree of accuracy. Errors in N are thus minimal and since P and Q are effectively correction terms any errors introduced thereby have a negligible effect on the accuracy to which the value of ink N is defined. Put another way, the purpose of rotation is to bring the three lines 5, 6, 7 of Figure 5 so close together that they effectively are one line thereby facilitating accurate interpolation between two values provided by the look-up table. The above described approach provides a highly accurate transformation from one colour format to another. As with all digital systems, the digital representation of a colour in one colour coordinate system will not transform exactly into a different representation in another colour coordinate system. After transformation the newly determined colour values are rounded up or down to the nearest available value in the new coordinate system. The thus transformed data may be stored for subsequent use or it may be output directly to a printer for printing of the image. The invention may also be applied to a chroma keying device for use in keying foreground and background television images together in a single image. A chroma keying system 20 embodying the invention is shown in Figure 9 of the accompanying drawings. In the system 20 parts which perform the same function as corresponding parts in the system 10 are designated with the same reference numeral. The system 20 comprises a framestore 11 or other source of picture data in the form of pixels. As shown in Figure 9, the framestore 11 or other source provides pixels in YUV (luminance and chrominance) format to a colour rotator 14 where it is converted into RGB data. In a chroma keying system a chroma key signal is generated by detecting the presence of a particular colour (usually a strongly saturated blue) in an image. The key is then used to combine the image, usually as a foreground image, with another image which usually serves as a background. A chroma key signal is at a maximum for a narrow range of colour values around a selected key colour value. The key signal value drops smoothly and quickly to zero as the distance of the colour from the colour value increases. The smooth change enables intermediate values to be generated so that pixels on the boundary between a keyed area and an unkeyed area comprise a contribution from both the foreground and the background image. This enables a background and foreground image to blend smoothly into one another. The colours red and blue are commonly used in chroma keying because most electronic image systems store colour in RGB format. However, it is sometimes useful to use other colours as the key colour. For example it is useful to be able to select a key colour from a colour formed in an image, such as the colour of the sky. Unlike a key colour which is provided by a backdrop set up intentionally in a studio and arbitrarily selected key colour will not necessarily correspond to one of the RGB primary colour axes and will not necessarily be a strongly saturated colour. Such an arbitrarily selected key colour is therefore similar in nature to the arbitrary colour of inks discussed with respect to the above embodiment. In principle a colour cube look-up table can be used to generate a key signal in exactly the same way as the table 15 is used in the system 10 to generate an ink signal. However, the reduced resolution of the look-up table (only the most significant bits are used) provides a coarse colour definition which effectively results in chroma key data being lost. For example, a blue chroma key in RGB format will be represented by blue intensity values across virtually the whole range of available blue values and by red and green values across a very narrow band of available red and green values. In an 8-bit system the bands of red and of green values might occupy only sixteen of the available 256 values. If the look-up table only takes the four most significant bits of the red and of the green data then all of the key values in red and green would be represented by only two or three look-up table entries. Interpolating between values thus obtained from the look-up table would give an entirely arbitrary and meaningless result. In order to overcome this problem the chroma keying system 20 of Figure 9 comprises means for offsetting and multiplying colour values before they are input to the look-up table 15, thereby providing a useful range of colour values from which the keying signal can be determined. Thus, the system 20 comprises two subtractors 22 in parallel for subtracting a respective offset value S held in a respective register 23 from the red and green components of the RGB data output from the colour rotator 14. The subtractors 22 output a value to a respective multiplier or shift register 24 which multiplies the output value by a predetermined constant. The outputs from the shift registers 24 are applied as the red R and green G components of RGB data to the look-up table 15. It will be appreciated that the system 20 of Figure 9 includes a library similar to that in the system 10 in Figure 6 and that only the four most significant bits of the RGB data output from the colour rotator 14 need be applied to the subtractor 22 and look-up table 15. The system 20 also includes an interpolator which receives data from the look-up table 15 and the four least significant bits of the offset RGB data from the colour rotator 14. These features and details have been omitted from Figure 9 for the same of clarity. The effect of the subtractor 22 and shift register 24 on the colour from the colour rotator 14 is illustrated for the red component in Figures 10, 11 and 12 of the accompanying drawings. As shown in Figure 10 the chroma key signal defined by the red data output from the colour rotator is at a maximum for a selected key colour value R K and rapidly falls to zero for colour values R - K and R + K . By applying the data to the subtractor 22 the graph 21 is caused to shift toward the origin and if the offset value S is chosen to be equal to R - K then the graph will correspond to the plot 25 shown in Figure 11 of the accompanying drawings. The multiplier or shift register 24 serves to stretch or expand the plot to that represented by the line 26 in Figure 12 of the accompanying drawings wherein R - K is at the original and R + K is near to, but less than, the maximum value definable by 8-bit data. Similar considerations of course apply to the processing of the green colour component. By way of example suppose that the range of values of the red component R for which the key is not zero, i.e. the active range of values, is from the value 20 to the value 40 inclusive. That is to say for the values 20 and 40 very small key values are generated and for values below 20 and above 40 key values of zero are generated. In the active range between the values of 20 and 40, the key signal increases so that for a few points each side of the central value, i.e. the value 30 the key is at its maximum value. The register 23 is loaded with a value of S equal to the value 19 thereby causing the value of 19 to be subtracted from all input values of R. The subtractor 22 is arranged not to output values less than zero. In this way the active range is shifted down to the range of values between the value 1 and the value 21 inclusive. The shift register 24 is arranged to shift the data three places to the left, which is equivalent to multiplying the data by a factor of 8. Thus, the shift register 24 alters the active range to cover all values from the value 8 to the value 168 (i.e. from 1x8 to 21x8) inclusive. A range of values from 8 to 168 is suitable for use in the look-up table 15. A similar operation is of course performed for the green component. It will be appreciated that the effect of the shift register 24 is to stretch or multiply the active range of values. Those with the appropriate skills will realise that a multiplier may be used in place of the shift register and that since the precise value of multiplication is not relevant the use of a multiplier in the system would in fact amount to unnecessary expense. In a chroma key system, unlike a print separation generation system such as the above discussed system 10, look-up table values can be generated on the basis of a predetermined algorithm. In some video processing systems, for example the system that we manufacture and sell under the trade mark "HARRY", a facility is provided by which a user can select a central key colour. The selection of a central colour causes a cuboid to be defined around the colour and the system is arranged such that the user can modify the cuboid by changing lengths along each of its three axes independently. The foregoing example assumed that the chroma key is based on the blue content of a picture. Blue is the usual choice of colour but other colours, for example yellow, may instead be used. With a yellow key in an RGB system any modification of the axes will result in an alteration in both red and green dimensions because the colour yellow contains contributions from the colours red and green. In this situation the advantage of shifting and multiplying the colour data prior to applying it to the look-up table is lost. However, the colour rotator can be used to regain the advantage. Where, say, yellow is used to generate a key signal the colour rotator 14 would be arranged to rotate the luminance and chrominance data YUV into a yellow component and two other suitable colour components (i.e. cyan and magenta). With the colour axes thus re-aligned to cyan, magenta and yellow the above discussed advantages in respect of a blue key apply equally to a yellow key. Having thus described the present invention by reference to preferred embodiments it is to be well understood that the embodiments in question are exemplary only and that modifications and variations such as will occur to those possessed of appropriate knowledge and skills may be made without departure from the scope of the invention as set forth in the appended claims.

Claims: A digital image processing system for converting image data representing a colour value in a first plural-colour format (RGB) into data representing a separation value of one or more respective colour separations, the data defining a multiplicity of pixels which together form a colour image, the system comprising: first transforming means (14) for transforming pixel-by-pixel said image data in said first plural-colour format (RGB) to produce data in a second plural-colour format (NPQ) different than said first plural-colour format and selected such that one or more of the colours of the second plural-colour format respectively corresponds substantially with one or more colours of the one or more colour separations; and second transforming means (15, 16, 22, 24) for determining for each pixel from most significant parts (MSB) of the data in said second plural-colour format range data defining a range of values, and for calculating from the range data using least significant parts of the data in the second plural-colour format separation data, the second transforming means thereby producing on a pixel-by-pixel basis a separation value for the one or more colour separations. An image processing system as claimed in claim 1, further comprising a data library (17) for supplying transformation data to said first transforming means (14) and calculation data to said second transforming means (15, 16), said data library containing transformation and calculation data for a multiplicity of different conversions. An image processing system as claimed in claim 1 or 2, wherein the data in said first plural-colour format comprises plural-colour component values, said first transforming means comprises a transformation matrix (14), and said data in said second plural-colour format is produced by multiplication of said first plural-colour component values by respective constant values in said transformation matrix. An image processing system as claimed in claim 1, 2 or 3, wherein the second transforming means comprises a look-up table (15) containing data arranged to identify for each value of data in said second plural-colour format which can be input thereto a range of values including the output separation value. An image processing system as claimed in any preceding claim, wherein the second transforming means (15, 16, 22, 24) is arranged to produce the range data as two values with one value being greater than and the other value being less than the output separation value, and the second transforming means comprises an interpolator (16) arranged to interpolate between the two values. An image processing system as claimed in any preceding claim, wherein said colours in said first plural-colour format are orthogonal. An image processing system as claimed in any preceding claim, wherein said first plural-colour format comprises three additive colour components. An image processing system as claimed in any preceding claim, wherein said colours in said second plural-colour format are orthogonal. An image processing system as claimed in any preceding claim, wherein said second plural-colour format comprises at least three subtractive colour components. An image processing system as claimed in claim 9, wherein said second plural-colour format further comprises a black component. An image processing system as claimed in any preceding claim, wherein the colour separations correspond to the colours of inks to be used in printing the image. An image processing system as claimed in claim 11, wherein the first and second transforming means are arranged to create respective separation data for each colour of ink to be used in printing the image. An image processing system as claimed in any preceding claim, wherein one of the colour separations corresponds to the colour of a chroma key to be used in combining a portion of another image with the image. An image processing system as claimed in claim 13, wherein the image and the other image are corresponding frames in respective video clips. An image processing system as claimed in any preceding claim, further comprising means (22, 23, 24) for offsetting data in said second plural colour format and for multiplying said offset data such that said data occupies a maximised range. An image processing system as claimed in claim 15, wherein said means comprises a subtractor (22) for subtracting an offset value held in a register (23) from said data and a shift register (24) for multiplying said offset data by a predetermined amount. A method of converting image data representing a colour value in a first plural-colour format into data representing a separation value of one or more respective colour separations, the data defining a multiplicity of pixels which together form a colour image, the method comprising: transforming pixel-by-pixel said image data in said first plural colour format to produce data in a second plural-colour format different than said first plural-colour format and selected such that one or more of the colours of the second plural colour format respectively corresponds substantially with one or more colours of the one or more colour separations; determining for each pixel from most significant parts of the data in said second plural-colour format range data defining a range of values; and calculating from the range data using least significant parts of the data in the second plural-colour format separation data, thereby producing a separation value for the one or more colour separations on a pixel-by-pixel basis. A method as claimed in claim 17, wherein said colours in said first plural-colour format are orthogonal. A method as claimed in claim 17 or 18, wherein said first plural-colour format comprises three additive colour components. A method as claimed in claim 17, 18 or 19, wherein said colours in said second plural-colour format are orthogonal. A method as claimed in any of claims 17 to 20, wherein said second plural-colour format comprises at least three subtractive colour components. A method as claimed in claim 21, wherein said second plural-colour format further comprises a black component. A method as claimed in any of claims 17 to 22, wherein the colour separations correspond to the colours of inks to be used in printing the image. A method as claimed in any of claims 17 to 23, wherein one of the colour separations correspond to the colour of a chroma key to be used in combining a portion of another image with the image. A method as claimed in any of claims 17 to 24, wherein the separation value is calculated from the range data by interpolation.

Inventors: CAWLEY ROBIN ALEXANDER, CAWLEY, ROBIN ALEXANDER
Applicants: QUANTEL LTD, QUANTEL LIMITED
Application year: 1994
Main classification: H04N1
IPC codes: H04N1, H04N7, H04N9