Security pattern generation method

10453230 ยท 2019-10-22

Assignee

Inventors

Cpc classification

International classification

Abstract

A security pattern generation method includes generating a plurality of draw instructions to define a plane filling line pattern, wherein the plane filling line pattern includes a repeating sub-pattern that defines a line by a sequence of draw instructions, and searching the sequence of draw instructions in the plurality of draw instructions and, if found, overlaying the searched sequence of draw instructions by a graphic object that is scaled to fit and scaled between the two distinct end points of the line.

Claims

1. A security pattern generation method comprising the steps of: generating a plurality of draw instructions to define a plane filling line pattern in a determined plane, the plane filling line pattern including a repeating sub-pattern that represents a line, bounded by two distinct end points, and the repeating sub-pattern is defined by a draw instruction or a sequence of draw instructions among the plurality of draw instructions; determining a vector graphic as a graphic object; and searching the repeating sub-pattern in the plurality of draw instructions with a determined condition and, if a match is found, overlaying the line of the found repeating sub-pattern by the determined graphic object which is scaled to fit between the two distinct end points of the line and located between the two distinct end points of the line; wherein the overlaying step includes: replacing the found repeating sub-pattern by draw instructions of the scaled and located determined graphic object; or adding draw instructions of the scaled and located determined graphic object to the plurality of draw instructions.

2. The method according to claim 1, wherein the plane filling line pattern is selected from a FASS curve, a space-filling curve, a self-similar fractal curve, a de Rham curve, a space-filing tree, a maze, a fret pattern, a kolam pattern, an interlace pattern, or a labyrinth.

3. The method according to claim 2, wherein the plane filling line pattern includes another repeating sub-pattern which defines another line, bounded by two distinct end points, by another draw instruction or another sequence of draw instructions; and the method further comprises searching the another repeating sub-pattern in the plurality of draw instructions with another determined condition and, if a match is found, overlaying the another line of the found another repeating sub-pattern by the another determined graphic object which is scaled to fit between the two distinct end points of the anther line and located between the two distinct end points of the another line.

4. The method according to claim 3, wherein the step of overlaying the another line of the found another repeating sub-pattern includes the step of replacing the found another repeating sub-pattern by the scaled and located another determined graphic object.

5. The method according to claim 1, further comprising the step of: selecting a Lindenmayer system with an alphabet of vector draw instructions to define the plane filling line pattern; wherein the plurality of draw instructions includes a plurality of step-by-step vector draw instructions generated by the Lindenmayer system; and the draw instruction is a vector draw instruction from the alphabet of vector draw instructions or the sequence of draw instructions is a sequence of vector draw instructions from the alphabet of vector draw instructions.

6. The method according to claim 5, wherein the overlaying step includes avoiding overlap between the graphic object and the plane filling line pattern by: rotating the graphic object according to an arctangent between the two distinct end points of the line from the repeating sub-pattern; and/or scaling the graphic object.

7. The method according to claim 6, wherein the graphic object inherits a line thickness or color and/or dashed line characteristics of the repeating sub-pattern.

8. The method according to claim 5, wherein the overlaying step includes the step of transforming the searched draw instruction or the searched sequence of draw instruction partially or fully to a zero thickness line.

9. The method according to claim 1, wherein the searching step is a conditional searching step in which the determined condition is based on a position of searching in the plurality of draw instructions.

10. The method according to claim 9, further comprising the step of: overlaying the line of the found repeating sub-pattern by searching from a start or a determined start position until an end or a determined end position in the plurality of draw instructions every N.sup.th time the repeating sub-pattern is found by the determined graphic object, wherein N is more than one.

11. The method according to claim 10, further comprising the steps of: determining another vector graphic as another graphic object; and overlaying by searching from a start or another determined start position until an end or another determined end position in the plurality of draw instructions every M.sup.th time the line of the found repeating sub-pattern by the determined other graphic object, wherein M is more than one and not equal to N.

12. The method according to claim 1, wherein the determined graphic object is a vector graphic defined by a set of the draw instructions.

13. The method according to claim 12, wherein the determined graphic object is equal to the repeating sub-pattern but with another line-thickness and/or another color and/or another dashed line characteristic.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIG. 1 represents a flow chart according to a preferred embodiment of the present invention. The present invention includes a security pattern generation method by a security pattern generator by executing the following steps:

(2) generating (100, GENERATE) a plurality of draw instructions to define a plane filling line pattern (105); and wherein the plane filling line pattern comprises a repeating sub-pattern, inhere a straight line;

(3) determining (200, DETERMINE) a graphic object (205);

(4) searching the repeating sub-pattern (300, SEARCH);

(5) overlaying the repeating sub-pattern (400, OVERLAY) by the determined graphic object (205) which is scaled to fit between the two distinct end points of the straight line of the repeating sub-pattern and placed between the two distinct end points of the straight line, which results in a new security pattern (405). The generated plane filling line pattern (105) is in this figure a space filling curve.

(6) FIG. 2 is also a flow chart as in FIG. 1 wherein the generated plane filling line pattern (105) (105) is a maze and the repeating sub-pattern is a straight line.

(7) FIG. 3 is also a flow chart as in FIG. 1 with a space filling curve as generated plane filling line pattern (105) (105) and the repeating sub-pattern is a straight line but wherein each 2.sup.nd time the repeating sub-pattern is found, the repeating sub-pattern is overlaid (400) by the graphic object (205) by repeating (402) a conditional search (302).

(8) FIG. 4 is also a flow chart as in FIG. 3 with a larger space filling curve as generated plane filling line pattern (105) (105). The repeating sub-pattern is a straight line but wherein the graphic object (205) but each 9th time the repeating sub-pattern is found by repeating (402) a conditional search (302) which started from 8th found repeating sub-pattern, the repeating sub-pattern is overlaid (400) by the graphic object (205).

(9) FIG. 5 is also a flow chart as in FIG. 3 with a space filling curve as generated plane filling line pattern (105) (105). The repeating sub-pattern is a straight line but wherein the repeating sub-pattern is overlaid by one of the both graphic objects (205, 207). The repeating sub-pattern is replaced by the first graphic object (205) each 4.sup.th time and the other graphic object (207) is replaced 4.sup.th time is found by repeating (402) a conditional search (302) which started from the 1.sup.st found repeating sub-pattern for the first graphic object (205) and which started from the 3.sup.rd found repeating sub-pattern for the other graphic object (207).

(10) FIG. 6 and FIG. 8 each illustrate a generated plane filling line pattern (105) (105), especially a maze as plane filling line pattern.

(11) FIG. 7 illustrates a generated plane filling ling pattern (105), especially a Celtic knot as plane filling line pattern.

(12) FIG. 9 and FIG. 10 each illustrate a generated plane filling line pattern (105) (105). Both figures are generated by an L-system.

(13) FIG. 11 illustrates a result wherein a repeating sub-pattern, an arc, is replaced with 2 graphic object (205, 207). The generated plane filling curve pattern (105) is in here a space filling curve for a circle: a spiral. The graphic objects on the generated plane filling curve pattern (105) forms an identification code which can be read by a digital imaging device wherein the space filling curve is followed and the thickness and length of both graphic objects (205, 207) is interpreted to decoding the embedded identification code.

(14) The generated plane filling curve patterns (105) in all these drawings (FIG. 1, FIG. 2, FIG. 3, FIG. 4, FIG. 5, FIG. 6, FIG. 7, FIG. 8, FIG. 9, FIG. 10, FIG. 11) are ordinary examples, which are only for illustration purposes. The generation of real security patterns have a much higher resolution and larger repeat wherein for example the spaces between the lines of the plane filling curve pattern is too small to be added in a patent description for acceptance by patent receiving offices.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

(15) Plane Filling Line Pattern

(16) To prevent counterfeiting, geometric repeat patterns are filled in a region, mostly filled as background pattern, of the document space from the security document. The complexity of such geometric repeat patterns is hard to reproduce and thus serve as a security feature. Such geometric repeat patterns which are filling a region are called a plane filling line pattern (FIG. 6, FIG. 7, FIG. 8, FIG. 9, FIG. 10, 105).

(17) In a preferred embodiment a plane filling line patterns (105) is rendered, while printing the security document at a minimum print resolution of 4800 dots per inch, more preferable at a minimum print resolution of 9600 dots per inch. The present invention preferably includes a printing method by a content output device, wherein the security document is rendered between 2400 dots per inch and 19200 dots per inch. A content output device is a device which reproduces the content data of a document in its document space such as a display device, projector device or printer device.

(18) A plane filling line pattern, which is determined by one or more lines, is a geometric repeat pattern that may fill a region, also called a space, in the document space of a document. This region can be any shape but it is totally filled with the plane filling line pattern. Preferably this region is rectangular shaped. The lines or parts of lines, in a plane filling line patterns (105) may have any colour, thickness or may be defined as a dashed line. Preferably a plane filling line patterns (105) is a single line which fills the region.

(19) In a preferred embodiment of the present invention the plane filling line patterns (105) is a space-filling curve or a FASS curve, a space-filling curve, a self-similar fractal curve, a de Rham curve, a space-filing tree, a maze, a fret pattern, a kolam pattern, interlace pattern, or a labyrinth. In the present invention the plane filling line patterns (105) has the constraint to comprise a repeating sub-pattern that defines a line, bounded by two distinct end points and preferably the plane filling line pattern, itself, is a line, bounded by two distinct end points.

(20) Interlace patterns are a kind of design, historically used as a decorations in many places and by different cultures, such as everlasting knots, Celtic knots or Islamic interlace pattern or Croatian interlace patterns. Interlace patterns are mostly looped, braided and/or knotted.

(21) In the state-of-the-art a plane filling line patterns (105) is generated by a plane filling line pattern generator wherein these geometric repeat pattern, also called a periodic pattern, are generated by software methods which often comprises mathematical methods. In a preferred embodiment the plane filling line pattern generator is a Lindenmayer-system.

(22) In the present invention the plane filling line patterns (105) is generated and determined as a plurality of draw instructions. A draw instruction is an instruction to draw an image in a document space. The image is often a geometrical primitive such as a point, line, arc, polygon. A draw instruction may be a vector draw instruction or a straight line draw instruction. The generated plurality of draw instructions may comprise also other instructions such as jump to absolute or relative positions in the document space, storing positions, direction of drawing, defined as an angle . . . .

(23) Some examples of computer generated geometric repeat patterns are Taprats (http://sourceforge.net/projects/taprats) for Islamic interlacing pattern, Knotter (http://sourceforge.net/projects/knotter) for Celtic Knots, Amaze (http://sourceforge.net/projects/qtamaze) for maze generation. A Kolam pattern generator is disclosed in ROBINSON THAMBURAJ. Extended Pasting Scheme for Kolam Pattern Generation. FORMA. 2007, vol. 22, p. 55-64.

(24) The generated plane filling line pattern (105) after the overlaying (400) may be clipped and/or scaled to a determined region from the document space of the security document. The determined region may be any shape.

(25) The lines in a plane filling line patterns (105) and the lines in the determined graphic object (205, 207) have preferably a thickness between 1 m and 10 mm. Smaller the thickness of these lines more difficult to counterfeit the security document.

(26) The minimum distances between the lines in a plane filling line patterns (105) is preferably between 1 m and 10 mm. Smaller the minimum distances between the lines, more difficult to counterfeit the security document.

(27) The spaces between the lines in a plane filling line patterns (105) and the lines in the determined graphic object in the present invention are preferably between 1 m and 10 mm. Smaller the spaces between the lines, more difficult to counterfeit the security document.

(28) Content Output Devices

(29) More and more content output devices, such as display devices, projector devices and printer devices, are developed for the reproduction of content such as images and text. Examples of content output devices that are used to reproduce a document are CRT's, LCD's, plasma display panels (PDP), electroluminescent displays (ELD), carbon nanotubes, quantum dot displays, laser TV's, Electronic paper, E ink, projection displays, conventional photography, electrophotography, dot matrix printers, thermal transfer printers, dye sublimation printers and inkjet systems to name a few. Also the conventional printing systems such as offset printing, lithography, rotogravure, flexography, letterpress printing, and screen-printing are developed for the reproduction of images and/or text and are thus also content output devices.

(30) An apparent output resolution of a content output device refers to the fact that the human eye perceives an image as having greater detail than it does in physical reality, which is defined by the true output resolution. The apparent and the true output resolutions are defined in dots per inch (dpi), especially for printer devices and defined in pixels per inch (ppi), especially for display devices and also called pixel density. One inch is exactly 25.4 millimeter.

(31) In a preferred embodiment the security document is reproduced a content output device with a true output resolution more than 2400 dots per inch and in a more preferred embodiment the security document is reproduced by a content output device with a true output resolution more than 4800 dots per inch (dpi) and in a most preferred embodiment the security document is reproduced by a content output device with a true output resolution more than 9000 dots per inch (dpi).

(32) Larger the true output resolution and the apparent output resolution of a content output device, finer the plane filling line pattern; which makes the reproduction of the security document and counterfeiting harder to achieve.

(33) Rotogravure (roto or gravure for short) is a type of intaglio printing process, which involves engraving the image onto an image carrier. In gravure printing, the image is engraved onto a cylinder because, like offset printing and flexography, it uses a rotary printing press. Rotogravure process by a gravure printer is still used for commercial printing of magazines, postcards, and corrugated (cardboard) product packaging and the manufacturing of decorative workpieces.

(34) Offset printing, which is an example of a conventional printing system, is a printing technique in which ink is spread on a metal plate with etched images, then transferred (offset) to an intermediary rubber blanket and finally to the printing surface by pressing the paper to the blanket. When printing colour images, four plates are normally used, one for each CMYK component. Additionally, spot colours can be added by adding a new layer with the specific pigment needed.

(35) Nowadays modern offset systems use computer to plate technology, which create plates directly from the computer output, contrary to the older technology where photographic films were created by computers and then used for creating the plate. Offset presses are big, expensive and complex devices which require experienced operators to run them. The process of preparing a document to be printed in an offset press is complicated, since plates have to be created and the operators have to spend some time manually preparing and calibrating the offset press to get the desired result. Even though this process is rather expensive and slow, the actual printing process is cheap, fast and produces high image quality. This makes it a good solution for producing large amounts of copies. For this reason, it has become the most popular way of commercial printing and it is largely used for printing newspapers, magazines, books, etc.

(36) In an inkjet system, which is an example of a digital printing system, the ink is directly deposited, also called jetted, onto a substrate, simplifying the printing mechanism and eliminating all the process of creating plates. Besides, it avoids the extra job that offset operators need to do in order to get the offset press ready for printing. Both things lead to a shorter turnaround time, cheaper starting point for a single copy and copies customization which is not possible in offset since it is unviable to create a different plate for each copy.

(37) In another preferred embodiment the security document is reproduced by a micro-lithography device or by a nano-lithography device. Micro-lithography and nano-lithography refer specifically to lithographic patterning methods capable of structuring material on a fine scale. Typically, features smaller than 10 micrometers are considered micro-lithographic, and features smaller than 100 nanometers are considered nano-lithographic. Photolithography is one of these two methods, micro- and nano-lithography, often applied to semiconductor manufacturing of microchips. Photolithography is also commonly used for fabricating Microelectromechanical systems (MEMS) devices. Photolithography generally uses a pre-fabricated photomask or reticle as a master from which the final pattern is derived. Although photolithographic technology is the most commercially advanced form of nanolithography, other techniques are also used for example electron beam lithography is capable of much true output resolutions (sometimes as small as a few nanometers).

(38) An embodiment of the present invention includes a printing method for printing a security document wherein the security document comprises a plane filing line pattern achieved by the generation method of the present invention. Or an embodiment of the present invention is a rendering method for rendering a security document on a content output device wherein the security document comprises a plane filing line pattern achieved by the generation method of the present invention.

(39) Searching & Overlaying

(40) In a preferred embodiment of the present invention the searching step (300, SEARCH) is a pattern matching method and preferably comprises a string searching algorithm to find a draw instruction or a sequence of draw instructions in the generated plurality of draw instructions such as Boyer-Moore string search algorithm or Rabin-Karp string search algorithm.

(41) The searching method (300) may start not on the first draw instruction of the plurality of draw instructions but also at a determined start position. And/or the searching method may end not on the last draw instruction of the plurality of draw instructions but also end at a determined end position. Normally the searching method is a forward searching method but it may also be backward searching method.

(42) Except for searching a match of the sub-pattern in the present invention, the searching method (300) may comprise a determined condition such as searching the N.sup.th match in the plurality of draw instructions wherein N is determined as a non-zero number, but the condition may also depending on the position of searching in the plurality of draw instructions, such as only searching when the position in the plurality o draw instructions is odd or a plurality of M.

(43) The sub-pattern in the present invention may be overlaid 1 time but preferably all founded sub-patterns, from start until end in the plurality of draw instructions under the determined condition and more preferably all founded sub-patterns from a start position or determined start position until a determined end position or end in the plurality of draw instruction, are overlaid.

(44) The overlaying step (400) may comprise a string replacing method in a string which is disclosed in several in a variety of computer languages.

(45) Line

(46) For the sake of clarity, it should be clear that a line is a two-dimensional continuous line which doesn't have to be straight. A line has a start point and an end point, which are called the two end-points of the line. The start point and the end point are in the present invention not the same. The length of the line is finite and bounded. A line is in preferred embodiment uninterrupted.

(47) The angle of a line is defined by determining arctangent from the two end-points of the line. In a variety of computer languages and vector graphic formats, the arctangent is the function a tan 2 with two arguments to return the appropriate quadrant of the computed angle between the two end-points of the line.

(48) Lindenmayer System

(49) A Lindenmayer system, also called an L-system, is a parallel rewriting system and a type of formal grammar. An L-system consists of an alphabet of symbols that can be used to make strings, a collection of production rules that expand each symbol into some larger string of symbols, an initial axiom string from which to begin construction, and a mechanism for translating the generated strings into geometric structures. The symbols of the alphabet are preferably vector draw instructions, such as Turtle Graphics and the string generated from the Lindenmayer system is than a plurality of step-by-step vector draw instructions.

(50) L-systems are disclosed in an electronic version of a book, especially in Chapter 1, that was published by Springer-Verlag, New York, in 1990 an reprinted in 1996: The Algorithmic Beauty of Plants by Przemyslaw Prusinkiewicz, Aristid Lindenmayer.

(51) A pattern generated by an L-system is an advantage to be used as security enabled graphic object in a security document to prevent for example counterfeiting. Because the security pattern is defined by determined production rules and determined alphabet, which are difficult to re-engineer on the security pattern itself.

(52) The recursive nature of the L-system rules leads to self-similarity and thereby, fractal-like forms are easy to describe with an L-system, such as a Hilbert curve or Sierpinski Triangle.

(53) In a preferred embodiment the L-system generates a space-filling curve. Space filling curves are disclosed in is BADER MICHAEL. Space-Filling Curves: An Introduction With Applications in Scientific Computing. Edited by BARTH T. J., et al. SPRINGER, 2012. p. 278. In a preferred embodiment the L-system generates a space filling curve selected from Hilbert curve, Lvy C curve, Koch curve, Peano curve, Gosper curve, Dragon curve, Moore curve. (FIG. 9, FIG. 10)

(54) Document

(55) A document comprises content, preferably graphically arranged, also called assembled, in a document space. A document is digital stored in a storage unit such as hard disk drive (HDD) connected to a hardware configuration such as a computer, memory in a central processing unit (CPU) comprised in a hardware configuration and the like. The graphically arrangement, also called lay-outing, of the content in the document space is also called the lay-out of the document.

(56) A document may comprise a static layout or preferably a dynamic layout. Static layout design may involve more graphic design and visual art skills; whereas dynamic layout design may involve more interactive design and content management skills to thoroughly anticipate content variation.

(57) The document space of the document may be a two-dimensional space with two fixed dimensions, more preferably the document space is a page or multiple pages and most preferably a web-page.

(58) The document space may be a two-dimensional space with one fixed and one endless dimension such as in the rendering method of multiple print jobs disclosed in EP 1933257 (Agfa Graphics NV).

(59) A raster graphic is also known as a bitmap, contone or a bitmapped graphic and represent a two-dimensional discrete image P(x,y).

(60) A vector graphic, also known as object-oriented graphic, uses geometrical primitives such as points, lines, curves, and shapes or polygon(s), which are all based on mathematical expressions, to represent an image. A vector graphic may be a turtle graphic which uses a relative cursor (the turtle) upon a Cartesian plane. Turtle graphics is a key feature of the Logo programming language. A vector graphic is thus a set of draw instructions. A vector graphic is in the present invention a two-dimensional vector graphic.

(61) A content object is a raster or vector graphic which defines certain content in a bounded shape. The minimum rectangular around the bounded shape is called bounding box of a content object. A document comprises one or more layouted content object. A content object in a document may be defined in a vector graphics format, also called line-work format, such as Logo, Scale Vector Graphics (SVG) or AutoCad Drawing Exchange Format (DXF) and more preferably defined in a page description language (PDL) such as Printer Command Language (PCL): developed by Hewlett Packard, Postscript (PS), Encapsuled Postscript (EPS): developed by Adobe Systems or Portable Document Format (PDF): developed by Adobe Systems. A content object is also called a graphic object. Preferably the graphic object (205, 207) which is placed between the two distinct end points of the line in the present invention is a vector graphic.

(62) Preferably the lay-out of the document is created in a desktop publishing (DTP) software package such as Adobe InDesign, Adobe PageMaker, QuarkXpress or Scribus (http://scribus.net/canvas/Scribus).

(63) The content objects in a document may be defined in a document markup language, also called mark-up language, such as IBM's Generalized Markup Language (GML) or Standard Generalized Markup Language (ISO 8879:1986 SGML), more preferably defined in HyperText Markup Language (HTML) and most preferably defined in HTML5, the fifth revision of the HTML standard (created in 1990 and standardized as HTML 4 as of 1997) and, as of December 2012, is a candidate recommendation of the World Wide Web Consortium (W3C). Such a document is sometimes called a web-document.

(64) The layout of a web-document may be created in a web-design software package by Cascading Style Sheets (CSS), a style sheet language used for describing the content of the document in the document markup language and more preferably the layout of a web-document is created in a web-design software package by Cascading Style Sheets 3 (CSS3), published from the CSS Working Group of the World Wide Web Consortium (W3C).

(65) The content objects in a document may be defined in a Variable Data Printing format (VDP) such as Intelligent Printer Data Streams (IPDS): found in the AS400 and IBM mainframe environments and used with dot matrix printers, Variable data Intelligent PostScript Printware (VIPP): A proprietary VDP language from Xerox, traditionally used in the transactional black-and-white printing market, Variable Print Specification (VPS): a VDP language from Creo, Advanced Function Presentation (AFP) format defined by AFP Consortium (AFPC), more preferably defined in Personalized Print Markup Language (PPML), an XML-based industry standard printer language for variable data printing defined by Printing On Demand Initiative (PODi) and most preferably defined in PDF/VT published in 2010 as ISO 16612-2.

(66) In a preferred embodiment a document is defined in a document format selected from vector graphic formats, document markup language or variable data printing format, more preferably selected from page description formats, variable data printing format or document markup language and most preferably selected from Portable Document Format (PDF) or the fifth revision of HyperText Markup Language (HTML5).

(67) A Security Document

(68) A security document is a document which comprises one or more content objects to prevent copying, forgery, tampering and to battle against counterfeiting and to protect a brand of brand owners.

(69) Examples of security documents are tax labels, lottery tickets, event tickets, design vouchers, identity cards, banknotes, legal documents and official documents, certificates, passports, identity documents, driver's licenses or packages for luxury or pharmaceutical products.

(70) Examples of content objects, as security feature to prevent copying, forgery and/or tampering are guilloches, anti-photocopy patters, latent image designs, security screening, repeat patterns, such as guilloches, and geometric repeat patterns, such as space filling curves. Such content objects are called security enabled content objects.

(71) A security document is preferably layouted in a digital assembly system, such as a desktop publishing (DTP) software package or a web-design software package. Such system comprises than a graphic base editor wherein security enabled content objects can be added in a document. It has preferably a modular approach to add one or more security features in the security document. The digital assembly system replaces the old labour intensive, mechanical pattern generation devices. The digital assembly system goes fare beyond the limitations imposed by these mechanical pattern generation devices. The easy calculation and combination of a lot of parameters makes life of the designer of the security document easy and enables him to implement more security in the same amount of time.

(72) Examples of such digital assembly system for security printing are: Fortuna by Agfa Graphics and high security design software of JURA, a Hungarian company (www.jura.hu).

(73) The hardware configuration (HW) that may perform the present invention as a computer implemented method is a computer, tablet computer and the like, comprising a central processing unit (CPU), a memory, a storage device such as a hard disk drive (HDD), a communication interface (IF) device that sends and receives data to and from other hardware configurations via a network. In a preferred embodiment the present invention is performed by one or more GPU's.

(74) The hardware configuration may comprise a user interface (UI) device that may comprise a display device, which gives a result of the pattern generation method. The rendering of the pattern to the user interface (UI) device is performed by a raster image processing method in a raster image processor (RIP).

(75) Graphic Processing Unit

(76) Graphic Processing Units (GPU's) have been used to render computer graphics for years. Nowadays they are also used for general-purpose tasks due to their highly parallel structure, making them more efficient than Central Processing Units (CPU's).

(77) GPU's can be combined with CPU's to achieve greater performance. In this way, serial parts of the code would run on the CPU and parallel parts would do it on the GPU. While CPU's with multiple cores are available for every new computer and allow the use of parallel computing, these are focused on having a few high performance cores. On the other hand, GPU's have an architecture consisting of thousands of lower performance cores making them especially useful when large amount of data have to be processed.

(78) One of the most popular tools available on the market of GPU computing is CUDA. CUDA is a parallel computing platform and programming model created by Nvidia and available only for their GPU's. The main advantage of CUDA is its ease of use, using the language known as CUDA C which is essentially an extension of C, with similar syntax and very easy to integrate in a C/C++ environment.

(79) The needed data is first copied from the main memory to the GPU memory ({circle around (1)}), the CPU sends an instruction to the GPU ({circle around (2)}), the GPU executes the instruction in all the parallel cores at the same time ({circle around (3)}), and the result is copied back from the GPU memory to the main memory ({circle around (4)}).

(80) CUDA parallel execution units consist of threads grouped into blocks. Combining the use of blocks and threads the maximum number of available parallel units can be launched, which for the latest GPU's can be more than 50 million. Even though this is a great amount of parallel capability, there are some cases where data might exceed the limit. In those cases, the only possibility is to iterate through the grid of millions of parallel units as many times as needed till all the data is processed.

(81) Raster Image Processing Method

(82) A raster image processing method is an image manipulation method that interpret a document to render the interpretation of the document to:

(83) a raster graphic which is suitable for viewing on a display device such as a television, computer monitors or the display device of a tablet computer or mobile phone; or

(84) a raster graphic which is suitable for projecting the raster graphic by a projector device such as a video-projector, LCD projector, DLP projector LED projector or laser diode projector; or

(85) a raster graphic which is suitable for printing on a printer device such as a toner-based printer, an inkjet printer or offset press.

(86) A content output device is a device which reproduces the content data of a document in its document space such as a display device, projector device or printer device.

(87) A raster image method is a computer implemented method that is performed on a hardware (HW) configuration, such as a computer, tablet computer and the like, comprising a central processing unit (CPU), a memory, a storage device such as a hard disk drive (HDD), a communication interface (IF) device that sends and receives data to and from other hardware configurations via a network. The hardware configuration may comprise a user interface (UI) device that may comprise a display device.

(88) The apparatus that performs a raster image processing method is called a raster image processor (RIP). A raster image processor (RIP) may comprise a prepress workflow system such as Prinect Workflow System from Heidelberger Druckmaschinen AG or Apogee Prepress from Agfa Graphics NV or the prepress workflow system disclosed in US20130194598 (FUJI XEROX).

(89) In a preferred embodiment a raster image processor comprises one or more GPU's for faster rendering a document to a content output device.

Other Preferred Embodiments

(90) The placed determined graphic object (205, 207) in the present invention may inherit the line thickness, colour and/or dashed line characteristics of the search draw instruction or searched sequence of draw instructions so the line thickness, colour and/or dashed line characteristics of the plane filling pattern is similar as the generated plane filling line pattern (105).

(91) The placed determined graphic object (205, 207) may be equal to the repeating sub-pattern but the thickness, colour and/or dashed line characteristics may be different as the repeating sub-pattern. Preferably the placed graphic object (205, 207) is not the repeating sub-pattern.

(92) The rotation and/or scaling of the determined graphic object (205, 207) in the present invention is preferably comprising the calculation of the bounding box of the determined graphic object (205, 207) but it can be using other methods such as a shape detection method on the determined graphic object (205, 207).

(93) The determined graphic object (205, 207) may be triangular, quadratic, rectangular, heptagonal, pentagonal, oval, rhombus, octagonal, or elliptical shaped.

(94) The determined graphic object (205, 207) may be a result of a generation from an L-system (a recursive plane filling line pattern), a logo or guilloches to make the counterfeiting more difficult. A logo is a graphic mark or emblem commonly used by commercial enterprises, organizations and even individuals to aid and promote instant public recognition. Logos are either purely graphic (symbols/icons) or are composed of the name of the organization (a logotype or wordmark).

(95) The determined graphic object (205, 207) may be a FASS curve, a space-filling curve, a self-similar fractal curve, a de Rham curve, a space-filing tree, a maze, a fret pattern, a kolam pattern, an interlace pattern or a labyrinth. The geometric repeat is important for the protection of graphic products against counterfeiting. Using a graphic object (205, 207) which itself is a geometric repeat pattern makes the pattern more valuable of forgery prevention.

(96) The method may comprise a method to embed a plurality of N-bit data wherein each possible value of N-bit data has a thickness (T.sub.N,i) and length (L.sub.N,i); and

(97) wherein the plurality of N-bit data comprises a first N-bit data (N.sub.1), subsequent by a different second N-bit data (N.sub.2) on a curve of the plane filling line pattern; and wherein the thickness (T.sub.N,i,1) of the value (v.sub.N,1) of the first N-bit data (N.sub.1) on the curve is different from the thickness (T.sub.N,i,2) of the value (v.sub.N,2) of the second N-bit data (N.sub.2) and/or wherein the length (L.sub.N,i,1) of the value (v.sub.N,1) of the first N-bit data (N.sub.1) on the curve is different from the length (L.sub.N,i,2) of the value (v.sub.N,2) of the second N-bit data (N.sub.2) so the plane filling line pattern is also an identification code, especially an optical machine-readable reproduction which is scanned by special optical scanner or digital imaging devices to decode the plurality of N-bit date, which is embedded in the plane filling line pattern. In a preferred embodiment the thickness in the curve is than formed by the determined graphic object (205, 207). The plane filling line pattern is than a plane filling line pattern with embedded identification code.

(98) The present invention is also an identification decoding method wherein the plane filling line pattern with embedded identification code is decoded by an identification decoding method which comprises the following steps:

(99) capturing a plane filling line pattern with embedded identification code by a digital imaging device; and

(100) determining an image captured curve in the image captured plane filling line pattern with embedded identification code; and

(101) determining a set of two-dimensional points (p.sub.k) on the image captured curve a set of thicknesses (t.sub.k) of the image captured curve; and

(102) determining the plurality of N-bit data from the set of thicknesses (t.sub.k) and the location of the set of two-dimensional points (p.sub.k) on the image captured curve;

(103) wherein the thicknesses is formed by the determined graphic object (205, 207).

(104) The present invention is also an identification encoding method wherein the plane filling line pattern with embedded identification code is encoded by an identification encoding method which comprises the following steps:

(105) determining a document; and

(106) determining a curve in the document; and

(107) determining for an N-bit data of the plurality of N-bit data a thickness (T.sub.N,i) and a length (L.sub.N,i); and

(108) determining a first segment on the determined curve with determined length (L.sub.N,i); and

(109) changing the thickness of a part in the first segment to the determined thickness (T.sub.N,i); and

(110) generating from the document with the generated plane filling line pattern (105) with embedded identification code a new document; wherein the thickness is formed by the determined graphic object (205, 207).

(111) In a preferred embodiment the identification encoding method may comprise the following steps: determining the following N-bit data of the N-bit data a thickness (T.sub.N,i) and a length (L.sub.N,i); and determining a second segment on the determined curve, following the first segment, wherein the second segment has the determined length of the following N-bit data; and changing the thickness of a part in the second segment to the determined thickness of the following N-bit data.

(112) In a more preferred embodiment a third segment is determined between the first and second segment and third segment is determined with a fixed length and/or with a fixed thickness. Preferably the fixed thickness is different from the thicknesses (T.sub.N,i) of all values of N-bit data. This makes the distinctions between following N-bit data while decoding easier.

(113) The plane filling line pattern with embedded identification code is preferably in the identification decoding method, image captured by a digital imaging device comprised in a mobile device; and wherein the mobile device is selected from a mobile computer, such as a computer tablet or mobile phone, such as a smart phone.

(114) In a preferred embodiment the plane filling line pattern with embedded identification code is used to read the content about the item on which the plane filling line pattern with embedded identification code is attached.

REFERENCE SIGNS LIST

(115) TABLE-US-00001 TABLE 0001 100 GENERATE 105 A plane filling line pattern 200 DETERMINE 205 A graphic object 207 A graphic object 300 SEARCH 302 Conditional search 402 Repeat overlay while condition of the conditional search is granted 400 OVERLAY 405 A security pattern