Method for generating a security document

Abstract: The described method is used for generating a security document by applying a security pattern to an original image. The security pattern comprises a plurality of points, wherein each of said points represents a pattern value. Local averages are calculated from said pattern values for at least some areas of the security pattern. For at least some of the points of the security pattern the color of the corresponding point of the original image is replaced by a modified color. The modified color is a function of the local average, the original color and the corresponding pattern value. The method provides good security against counterfeit because it is difficult to implement using conventional image processing applications. For a suitable choice of the color transformation function, the resulting image can preserve the local color tones of the original image.

Description: The present invention relates to a method for generating a security document and to a security document obtained by this method according to the preamble of the independent claims. In particular, it relates to the field of security printing, and more particularly it relates to anti-counterfeiting measures for identity documents showing a photograph of their holder. Many identity documents bear a photograph of the document holder, because this photograph offers a convenient way of relating the document to its owner. The development of plastic card printers and the advances in digital imagery have lead to the widespread use of identity documents printed on plastic cards, such as ID cards, driving licenses and access key cards. With the advance of color printers and copiers, it has become easy to forge such documents unless they are provided with security features, such as digital watermarks, microscopic text, etc. Such security features are, however, difficult to apply or to verify and they often impair the overall appearance of the document. A current method for applying a security pattern to a document is described in WO 97/43736, in particular on page 69, line 32 - page 70, line 4 and page 72, line 13 - page 74, line 10. Here, a security pattern is added to a photograph, wherein the security pattern is e.g. chosen to be orthogonal to the photograph. The problem to be solved by the present application lies therefore in providing a method and document of this type that has high security. This problem is solved by the independent claims. Hence, at least some of the points of the original image are modified by changing their color. The change of color is a function of the original color C ij , of the value p ij of a security pattern as well as of a local average α k of the pattern. By using a function that depends on a local average of the pattern, it becomes possible to generate very flexible security markings that take the pattern's features into account. The protected image is difficult to imitate by using commercial image-processing packages because the changes in the protected image do not occur along a fixed direction of the color space, but vary according to the color of the original image pixels and the averages of the security pattern. The embedded pattern can e.g. be textual information already present elsewhere on the document, or it can be a code derived from data specific to the document holder. The protection can be made fully apparent, partly apparent, or completely invisible under normal viewing conditions. In a preferred aspect of the invention, a chromatic shift is given for any color of the original image. This shift is defined by the two colors that are used when the pattern value takes its minimum and maximum values. In this case, the function f can e.g. consist of a linear interpolation between the two colors of the chromatic shift. The chromatic shift can be derived from a reference shift at one specific color K. Preferably, a correcting offset is applied to this reference shift for balancing it according to the local average α k of the pattern. The chromatic shift can be calculated by correcting the luminance, hue and saturation of the reference shift (or the corrected reference shift). A further possible correction adjusts the values of the chromatic shift to make its CIE-Lab luminance difference equal to the one of the reference shift, which results in a uniformly contrasted pattern for any original color value. The protected image is difficult to reproduce through photo-mechanic means such as a photocopying device, because the chromatic shifts it contains can be specified as quasi-metameric pairs of colors. Either the pairs of colors are perceived as identical by the device and the embedded information is completely lost, or the pairs of colors are perceived as being more different than they really are and the embedded information becomes much more visible under normal light than it is in the protected image. Identity documents containing images with embedded text are even more difficult to forge, because the embedded text can contain an encrypted version of the personal information present elsewhere on the document. Without knowledge of the process used for encrypting the text, it is impossible to adapt an existing document to a fake identity by replacing the photograph and the personal information. The invention is especially suited for marking identity documents, such as driver's licenses. Further preferred features and embodiments are described in the dependent claims as well as in the description, which makes reference to the figures. These show: Fig. 1 a single character and its corresponding gray level (top row) as well as the equality of two areas having the same local average, Fig. 2 the LEF color space, Fig. 3 a bitmap pattern for a given string, Fig. 4 the calculation of the average value for a letter bitmap, Fig. 5 the balancing of the reference shift, Fig. 6 the assembly of a text into its pattern, Fig. 7 the repetitive arrangement of the pattern of Fig. 6, Fig. 8 the repetitive arrangement of the pattern of Fig. 7, Fig. 9 the staggering of the pattern on Fig. 8, Fig. 10 the individual balanced reference shifts of differing letters, Fig. 11 the horizontal interpolation of the reference shifts, Fig. 12 the vertical interpolation of the reference shifts, Fig. 13 the luminance correction, Fig. 14 the hue correction, Fig. 15 the saturation correction, and Fig. 16 the overflow correction. A preferred embodiment of a method that protects identity documents by embedding text into photographs is described hereafter. The method consists of the following basic steps: A reference chromatic shift (the "reference shift") is specified in a linear color space. Each character of the text to embed is rasterized into a bitmap. The reference shift is corrected for obtaining a coverage-balanced chromatic shift ("corrected chromatic shift") derived for each rasterized character according to the ratio between the surface occupied by black pixels (foreground) and the surface occupied by white pixels (background), i.e. according to a local average of the security pattern. The rasterized character string is repeated horizontally and vertically to form a security pattern. A pattern-relative chromatic shift is interpolated between the coverage-balanced chromatic shifts of the neighboring bitmap characters for each pixel in the security pattern. A chromatically shifted color is extrapolated from the pattern-relative chromatic shifts for each pixel of the original image. The protected image is generated and output on a continuous-tone printer. Depending on the size and orientation of the reference chromatic shift, the embedded text in the protected image can be visible or invisible under normal viewing conditions. Chromatic shifts: A "chromatic shift" is defined as a set of three colors C, C b and C f such that a surface of unitary area colored with C is visually equivalent to the same surface split in two foreground and background parts of area α, resp. 1 - α, with the foreground having color C f and the background having color C b (Fig. 1). Mathematically, the colors of a chromatic shift must verify the relation C = α C f + (1 - α) C b . C represents the reference color, C b represents the reference background color, and C f represents the reference foreground color. An additive color space is used for specifying the colors of a chromatic shift. Preferably, this color space is obtained by a linear transformation of the cube formed by the RGB space. The transformation and its inverse are defined by the following equations: After transformation, the RGB cube stands on its black corner (Fig. 2). Its black-white axis is vertical and becomes the L-axis in the newly defined LEF color coordinate space. The two other E and F orthogonal axes are lying in the plane perpendicular to the L-axis through point L = 0 (the EF-plane). The E-axis goes through the projection of vertex R of the RGB cube on plane EF. The vertical L component can be assimilated to the achromatic value of a given color, i.e. its luminance level. The E and F components convey the chromatic information pertaining to that color. Choosing the reference shift: The reference shift {K, K b , K f } for an arbitrary color K is specified by an interactive color picking application according to N. Rudaz, R. D. Hersch, V. Ostromoukhov, Specifying color differences in a linear color space (LEF), Proceedings of the IS&T/SID 97, Scottsdale, 1997, pp. 197-202. Creating a partial security pattern: The string of characters forming the text to embed into the image is converted into a bitmap image through the use of a font rendering software component. Suitable types of font renderers are known to a person skilled in the art and are e.g. described in R.D. Hersch, "Font Rasterization, the State of Art", in "Visual and Technical Aspects of Type", Ed. R.D. Hersch, Cambridge University Press, 1993, pp56-63.. An example of a font renderer is the FreeType engine described at the URL http://www.freetype.org/intro.htm. The font rasterizer creates a rectangular bitmap for each character in the string of text (Fig. 3), which will form part of the security pattern. Local averaging: In the case of a binary bitmap, local averages α k , defined as the black coverage percentage, are calculated for each character bitmap. α k lies between 0 and 1; it is defined as the ratio between the number P k of foreground pixels and total number P t of pixels or, in other words, if a pattern value p ij of 1 is assigned to the foreground pixels and a pattern value p ij of 0 to the background pixels, α k corresponds to the average of the pattern values (Fig. 4). Correcting the reference shift: A coverage-balanced chromatic shift {K, K b ', K f '} is derived from the reference shift {K, K b , K f } for each character bitmap. The chromatic distance D = K b - K f is computed. An offset d is derived from D using the relation d = D·(α k - (p max - p min )/2)/(p max - p min ). wherein p min and p max are the largest and smallest possible pattern values (for binary patterns we usually have p max = 1 and p min = 0). This offset d is added to K b and to K f in order to obtain K b ' and K f ' (Fig. 5): K b ' = K b + d, K f ' = K f + d The resulting coverage-balanced chromatic shift {K, K b ', K f '} exhibits the property that, if the white pixels of the associated character bitmap are colored with K b ' and the black pixels with K f ', then the average color of the character bitmap is equal to K. Generating the security pattern: The rasterized characters are horizontally juxtaposed into a rectangular tile (Fig. 6). This tile is horizontally repeated side by side as many times as necessary in order to produce a second bitmap with the same width as the original image (Fig. 7). The second bitmap is vertically replicated side by side as many times as necessary in order to produce a third bitmap image with the same height as the original image (Fig. 8). At each vertical repetition, the second bitmap is shifted horizontally in order to avoid disturbing optical artifacts that appear when characters are vertically aligned in a text. After the horizontal shift, the portion of the second bitmap that goes beyond the horizontal boundaries of the original image is wrapped around (Fig. 9). This third bitmap is referred to as the security pattern and constitutes an image of the text that will be embedded into the original image. Calculating the pattern-relative chromatic shifts: A pattern-relative chromatic shift is computed for every pixel of the security pattern, based on the coverage-balanced chromatic shifts associated with the character bitmaps. In a first step, every pixel of the security pattern that is located at the center of a character bitmap is associated with that bitmap's coverage-balanced chromatic shift (Fig. 10). In a second step, every pixel of the security pattern that is located on a horizontal line segment joining two centers of the character bitmaps is associated with a pattern-relative chromatic shift that is obtained by linear interpolation between the coverage-balanced chromatic shifts associated with these two centers (Fig. 11). In a third step, every pixel of the security pattern that is located on a vertical line segment joining two pixels processed during the second step is associated with a pattern-relative chromatic shift that is linearly interpolated between the pattern-relative chromatic shifts of these two pixels (Fig. 12). In a fourth step, every pixel of the security pattern that has not been processed during the previous steps is associated with the pattern-relative chromatic shift of its nearest neighbor. Calculating the chromatic shift: Each pixel in the security pattern is associated with a pixel having the same coordinates in the original image. The pattern-relative chromatic shift undergoes a geometrical transformation in the LEF color space, with the purpose of adapting its background and foreground colors (K b ' and K f '), so that the color resulting from the average α k of the adapted background and foreground colors is equal to the color C ij = (L C , E C , F C ) of the associated original pixel. In a first step, the luminance of the chromatic shift is corrected according to the luminance difference between the reference color K and the color C ij . For this purpose, the luminance difference ΔL CK between C ij and K = (L K , E K , F K ) is computed using the relation ΔL CK = L C - L K , and this luminance difference is added to K', K b ' and K f ' in order to obtain the colors K", K b '', and K f '' (Fig. 13). In a second step, the hue of the chromatic shift is corrected according to the hue difference between the reference color K and the color C ij . For this purpose, the angular hue difference (ΔH CK ) between C and K'' is computed using the relation ΔH CK = Tan(Arctan(F C /E C ) - Arctan(F K ''/E K '')), and this angular hue difference is added to K'', K b '' and K f '' in order to obtain the colors K''', K b ''' and K f ''' (Fig. 14). In a third step, the saturation of the chromatic shift is corrected according to the saturation difference between the reference color K and the color C ij . For this purpose, the saturation difference (ΔS CK ) between C and K''' is computed using the relation ΔS CK = sqrt((F K ''' - E C ) 2 + (E K ''' - E C ) 2 ), and this saturation difference is added to K B ''' and K F ''' in order to obtain the colors C b and C f (Fig. 15). - In a fourth step, the CIE-Lab luminance difference between C b and C f is adjusted so that it is equal to the CIE-Lab luminance difference between K b and K f while maintaining the balanced average of C b and C f at color C ij In a fifth step, the colors C b and C f are examined to see if they fit in the RGB color space. If this is not the case, the distance between C b and C f is proportionally reduced until both colors fit entirely into the RGB space (Fig. 16). Applying the chromatic shift: In a sixth step, the value p ij of the security pattern pixel associated with the original image pixel is examined. If this pixel is white (e.g. corresponding to p ij = 0), and therefore belongs to the background of the security pattern, then the color C b is assigned to the pixel of the original image. If this pixel is black (p ij = 1), and therefore belongs to the foreground of the security pattern, then the color C f is assigned to the pixel of the original image. In general, for non-binary security patterns, the new color C ij ' is calculated from C ij ' = C b (C ij ) · (p ij - p min ) / (p max - p min ) + C f (C ij ) · (p max - p ij ) / (p max - p min ), where p min and p max are the minimum and maximum possible pattern values p ij . Printing the modified image: The modified image is output on a continuous-tone printer such as a dye-sublimation printer. Dithering devices that apply halftone screens on the images they print, such as laser printers or ink-jet printers, are not suitable for printing the protected images because the dithering process alters the structure of the embedded text. Detection of the embedded text: If the reference shift {K, K b , K f } presents a large enough contrast, the embedded text is readable under normal viewing conditions. Conversely, if the reference shift {K, K b , K f } presents a weak contrast, the embedded text is invisible and a close inspection or image analysis is required in order to read it. Remarks: The order of the various steps described above can be changed. In particular, the average values α k can be calculated after the security pattern of Fig. 9 is generated, and the steps for correcting the luminance, hue and saturation of the color shift are interchangeable. The local averages α k have been calculated as the averages over the individual characters of the security pattern. It is, however, also possible to use other averaging techniques. In particular, the security pattern can be processed by a low pass filter, where each point is e.g. replaced by a weighted average of itself and a number of neighboring points. As already indicated, the security pattern may be non-binary and can e.g. consist of various gray levels, such as they may be used for representing anti-aliased characters. In more general terms, the method described here starts from an original image and a security pattern. It calculates local averages α k of the values p ij of the security pattern, e.g. by averaging over the bitmap of one character or by running the security pattern through a low pass filter or by using interpolation techniques of averaged values such as described by reference to Figs. 11 and 12. In particular, the local average α k of an area k can e.g. be calculated from α k = Σ A k,ij ·p ij wherein A k is a matrix of weights and Σ is the sum over the points with indices i,j in-said area k. In the example above, the area k corresponds to one character bitmap and A k,ij = 1/N k , wherein N k is the number of points in said area. For at least some of the points of the original image, the color C ij of the original image is replaced by a color C' ij using a function f: C' ij = f(C ij , p ij , α k ), wherein the function f depends on at least one local average α k of an area k said point p ij is located in. Preferably, f should have the property that if m and M are real numbers with m < α k < M, and wherein C m = f(C ij , m, α k ) and C M = f(C ij , M, α k ), and if C ij lies within a color space with a Euclidean metric and we define R m as the Euclidean distance between C m and C ij and R M as the Euclidean distance between C M and C ij , then for any value p ij in the interval [m, M], the Euclidean distance between C ij and f(C ij , p ij , α k ) lies within the interval [0, max(R m , R M )]. In addition to this, f should by continuous. In other words, for pattern values that are close to the local average, f should be such that the color of the original image is changed only slightly. In this way, the appearance of the protected image remains globally identical to the appearance of the original image. If an averaging technique according to Eq. (7) is used, f is preferably such that Σ (A k,ij ·f(C, p ij , α k )) ≈ C, wherein Σ is the sum over the points with indices i,j in said area k. This again ensures that the average color of a given local area k of the modified image is equal to the average color of the same area of the original image. Function f can be implemented algorithmically, e.g. by providing a chromatic shift for any given color C ij and any local area k. The chromatic shift is given by two colors C b (C ij ) and C f (C ij ), wherein the function f depends on said coverage-balanced chromatic shift in such a way that f(C, p min , α k ) = C b (C ij ) and f(C, p max , α k ) = C f (C ij ), wherein p min and p max are the minimum and maximum possible pattern values p ij . Between these values, f can e.g. be calculated by linear interpolation. For calculating the chromatic shift for a given color C ij , various methods can be used. As described above, it is e.g. possible to provide a reference shift for one reference color K. The reference shift is given by two colors K b and K f , wherein K, K b and K f lie on a single line in an Euclidean additive color space and K is located in the center of K b and K f . The reference shift corresponds to the chromatic shift for color C ij if C ij = K and α k = (p max + p min )/2. The reference shift can then be balanced e.g. using Eq. (2) above. Then, depending on the position of the colors K and C ij , the values C b (C ij ) and C f (C ij ) can be derived by correcting hue, saturation and luminance, e.g. using Eqs. (3) - (5).

Claims: A method for generating a security document by applying a security pattern to an original image for generating a modified image, wherein said security pattern comprises a plurality of pixels, wherein a pattern value p ij is attributed to each pixel (i,j) of said security pattern, and wherein for at least some of the pixels in said security pattern the color C ij of the corresponding pixel (i,j) of the original image is replaced by a modified color C' ij , characterized in that local averages α k are calculated from said pattern values for at least some areas k of said security pattern and wherein said modified color C' ij is calculated according to C' ij = f(C ij , p ij , α k ), wherein f is a function that depends on at least one local average α k of an area k said pixel (i,j) is located in. The method of claim 1, wherein said function f is such that if m and M are real numbers with m < α k < M, and wherein C m = f(C ij , m, α k ) and C M = f(C ij , M, α k ), and if C ij lies within a color space with a Euclidean metric and we define R m as the Euclidean distance between C m and C ij and R M as the Euclidean distance between C M and C ij , then for any value p ij in the interval [m, M], the Euclidean distance between C ij and f(C ij , p ij , α k ) lies within the interval [0, max(R m , R M )]. The method of one of the preceding claims, wherein said function f(C ij , p ij , α k ) is continuous in p ij . The method of one of the preceding claims, wherein said local averages α k are calculated as a weighted sum α k = Σ A k,ij ·p ij wherein A k is a matrix of weights and Σ is the sum over the pixels with indices i,j in said area k, and wherein said function f has the property that, for any color C of said original image in said area Σ (A k,ij ·f(C, p ij , α k )) ≈ C. The method of claim 4, wherein all elements of said matrix A k are equal to 1/N k , wherein N k is the number of pixels in said area. The method of one of the preceding claims wherein said security pattern is generated by repetitively tiling a pattern element. The method of one of the preceding claims, wherein said security pattern comprises a plurality of characters and wherein said local areas are rectangular areas, each of said rectangular areas enclosing one character. The method of one of the preceding claims further comprising the step of providing a chromatic shift for any given color C ij and any local area k, said chromatic shift being given by two colors C b (C ij ) and C f (C ij ), wherein said function f depends on said coverage-balanced chromatic shift such that f(C, p min , α k ) = C b (C ij ) and f(C, p max , α k ) = C f (C ij ) and for p min and p max being the minimum and maximum possible pattern values p ij . The method of claim 8, wherein f(C ij , p ij , α k ) = C b (C ij )·(p ij - p min )/(p max - p min ) + C f (C ij )·(p max - p ij )/(p max - p min ) The method of claim 9 further comprising the steps of choosing a reference shift for a reference color K, wherein said reference shift is given by two colors K b and K f and corresponds to said chromatic shift for said color C ij if C ij = K and α k = (p max + p min )/2, calculating said chromatic shift for any other color Cij from said reference shift by transforming said two colors K b and K f as a function of color C ij and said local averages α k . The method of claim 10, wherein said reference color K and said two colors K b and K f are arranged on a line in an Euclidean, additive color space, wherein K b - K = K - K f and wherein said step of calculating said chromatic shift comprises the steps of calculating first corrected colors K b ' and K f ' from K b ' = K b + d K f ' = K f + d with d = (K f - K b ) · (α k - (p max - p min )/2)/(p max - p min ), and calculating said two colors C b (C ij ) and C f (C ij ) from said first corrected colors K b ' and K f ', said reference color K and said color C ij . The method of one of the claims 10 or 11 comprising the step of calculating said two colors C b (C ij ) and C f (C ij ) by correcting the luminance of the chromatic shift according to the luminance difference between the reference color K and the color C ij , and/or by correcting the hue of the chromatic shift according to the hue difference between the reference color K and the color C ij , and/or by correcting the saturation of the chromatic shift according to the saturation difference between the reference color K and the color C ij . The method of claim 11 or 12 comprising the step of correcting a CIE-Lab luminance difference between said two colors C b (C ij ) and C f (C ij ) to make it equal to the CIE-Lab luminance difference between said two colors K b and K f . The method of one of the preceding claims wherein said pattern values are binary having values of 0 and 1, wherein for a pattern value of 0 the color C ij of the corresponding pixel of the original image is shifted in a first direction and for a pattern value of 1 the color C ij of the corresponding pixel of the original image is shifted in a second direction, and in particular wherein, in a given Euclidean color space, said first direction is opposite to said second direction. The method of one of the preceding claims wherein said original image is a holder's photograph on an identity document. The method of one of the preceding claims comprising the step of printing the modified image on a continuous-tone printer. A security document obtained by the method of one of the preceding claims. The security document of claim 17, wherein said security document is a driving license. The security document of one of the claims 17 or 18, wherein said pattern is a text representing information that is also elsewhere visible on said document, and in particular wherein said text is at least partially encrypted.

Inventors: HERSCH ROGER D, RUDAZ NICOLAS, HERSCH, ROGER D., RUDAZ, NICOLAS
Applicants: ECOLE POLYTECH, ORELL FUESSLI SECURITY PRINTIN, ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE, ORELL FUESSLI SECURITY PRINTING LTD.
Application year: 1999
Main classification: H04N1
IPC codes: B42D15, H04N1, B41M3